215
207
185
209
173
170
242
180
161
206
218
153
225
209
142
217
244
176
240
158
152
139
236
209
220
183
222
184
197
168
185
213
229
216
235
230
246
138
194
209
247
179
234
179
225
198
154
234
195
215
172
261
219
206
209
205
215
187
237
239
192
175
201
131
195
208
218
207
147
240
212
275
189
234
164
217
238
165
176
199
187
198
255
180
185
145
187
164
186
225
231
189
188
231
198
157
210
250
209
245
212
218
202
201
196
205
226
153
211
249
234
182
204
219
213
190
251
134
169
192
197
179
189
172
189
287
248
176
174
221
164
218
163
264
201
224
170
205
175
211
220
168
165
177
176
203
206
275
184
255
165
220
216
215
193
220
228
224
192
240
192
241
194
169
180
221
205
205
217
179
250
258
182
262
168
185
198
205
184
179
186
167
253
171
157
207
215
167
191
187
249
218
218
266
144
218
202
193
222
189
208
141
237
245
146
221
264
168
207
222
156
223
200
222
193
238
172
160
206
186
164
180
171
211
208
234
166
207
140
175
200
126
215
238
160
210
194
213
250
117
209
224
243
235
229
267
237
237
226
188
233
165
196
177
195
201
215
208
162
220
229
188
189
215
204
273
212
184
202
204
221
200
184
211
236
162
132
231
245
200
255
253
169
183
147
175
220
194
150
215
236
218
182
219
204
171
262
202
273
215
194
248
205
205
175
140
164
187
133
244
249
235
185
289
165
196
180
168
216
192
109
195
179
242
144
211
173
250
255
191
172
194
289
228
179
172
196
190
164
149
208
157
189
191
204
216
212
201
167
141
214
157
171
218
233
224
189
255
190
231
191
190
193
178
203
213
183
178
224
221
226
153
206
192
129
219
257
191
247
169
300
205
149
162
181
138
214
256
192
270
192
131
196
181
217
179
184
222
177
188
231
183
246
230
191
222
155
225
223
227
172
205
225
221
238
239
211
162
192
171
236
157
203
208
211
180
166
236
181
164
156
136
206
172
195
200
225
198
260
150
210
214
126
246
187
226
224
254
275
214
232
164
195
208
216
192
195
219
168
265
223
204
249
193
157
233
166
148
195
205
169
176
186
241
167
211
183
166
186
148
250
157
176
188
173
216
158
209
225
163
205
230
198
168
214
213
241
200
144
166
210
175
193
189
163
199
202
179
191
195
92
179
178
152
228
152
189
203
210
173
203
195
213
182
177
222
193
157
228
217
240
141
221
157
214
214
217
192
246
168
185
227
192
191
220
204
223
186
218
243
230
224
209
224
252
185
205
178
200
169
222
210
210
240
174
219
198
275
193
188
225
143
204
225
211
213
220
230
143
195
220
231
169
276
183
171
201
229
154
219
189
216
173
211
219
192
243
155
167
222
170
223
217
226
195
193
179
160
211
190
210
297
188
232
218
157
176
183
173
175
234
192
150
259
235
197
207
157
196
149
163
223
198
216
171
237
266
181
259
207
178
195
212
185
183
156
173
163
195
160
244
233
159
211
244
259
165
253
229
194
209
270
192
229
105
188
237
207
209
252
254
144
154
245
229
170
194
252
189
117
163
167
214
162
248
208
191
191
129
178
181
187
176
161
165
196
163
239
251
148
257
214
196
217
133
153
167
186
188
194
234
230
217
201
195
154
257
171
208
174
249
186
234
226
199
200
192
129
140
185
218
261
247
215
244
218
197
177
158
187
215
235
194
217
193
180
175
123
216
182
180
225
265
283
198
194
180
235
175
197
203
189
232
182
211
212
290
184
206
243
197
178
223
228
228
177
175
218
224
223
144
188
246
157
205
228
246
197
234
174
139
222
212
218
187
179
187
212
156
227
223
203
254
175
187
193
154
178
193
180
174
176
199
176
156
205
181
165
235
178
119
213
202
282
244
107
246
223
173
219
185
158
161
183
223
214
162
223
165
205
220
175
201
191
180
235
244
233
198
187
131
213
219
221
232
175
260
170
208
156
190
207
226
228
176
146
170
152
186
151
208
213
207
194
209
231
207
148
233
196
170
235
194
235
232
192
142
237
264
200
246
225
112
236
196
246
235
149
200
213
160
243
162
280
239
168
214
164
219
167
219
215
196
213
244
164
223
199
225
222
193
227
201
204
216
198
141
192
210
167
180
196
247
151
185
144
206
168
198
235
155
181
167
229
267
244
196
243
262
211
202
197
181
170
177
151
195
170
168
257
166
233
198
152
181
199
184
236
175
156
254
225
176
192
162
137
211
186
170
153
168
190
237
191
230
181
207
237
204
156
263
213
214
237
218
226
241
177
214
167
179
185
149
246
147
189
196
143
261
190
151
167
103
213
210
166
175
210
255
167
214
163
173
194
228
241
235
185
204
227
146
172
179
120
203
202
164
246
245
148
154
192
193
195
173
242
168
190
169
168
218
200
255
172
190
172
268
205
155
103
186
187
249
230
173
140
240
239
186
228
188
204
174
205
181
162
250
167
198
207
242
215
295
197
189
174
189
213
213
216
199
160
210
191
201
233
232
209
209
213
225
181
256
151
240
188
145
213
207
208
176
195
218
170
238
171
209
253
206
211
223
236
244
208
248
261
189
183
229
195
183
236
209
183
228
225
241
202
257
186
170
223
216
210
168
217
202
222
210
149
235
221
205
172
187
180
231
268
173
216
165
245
171
154
226
191
194
216
212
174
182
173
213
171
215
215
250
255
225
173
231
161
214
149
239
195
197
190
203
157
195
155
234
184
129
218
147
137
229
240
239
150
229
184
249
226
186
241
152
170
203
192
204
196
214
250
248
203
227
229
234
182
230
180
148
156
187
171
245
205
241
202
223
205
242
191
220
144
248
191
221
211
223
223
166
202
231
245
174
242
216
179
215
205
145
158
176
200
146
215
199
183
178
206
174
246
165
215
204
204
249
143
162
166
220
236
225
214
163
233
218
210
204
242
235
207
201
199
229
223
142
226
235
208
176
209
222
206
160
296
142
126
188
206
254
170
220
212
213
183
156
215
208
192
203
196
187
228
187
233
216
234
234
206
236
201
185
203
176
235
240
213
224
217
240
286
243
191
196
198
121
207
135
207
214
168
206
171
201
224
202
193
204
123
177
206
250
88
248
156
255
259
181
228
179
228
232
232
266
230
230
231
221
213
188
217
241
153
234
233
223
257
225
226
207
173
219
189
159
160
157
168
249
199
251
247
167
161
188
186
251
154
185
146
225
211
181
222
204
204
212
238
218
235
167
179
245
178
226
188
205
166
183
179
197
259
208
175
201
190
199
82
152
152
189
253
167
159
230
225
271
188
230
160
138
208
174
240
227
245
182
135
175
236
142
167
170
176
220
223
190
161
213
164
240
211
214
211
176
216
159
201
236
217
223
157
198
236
163
173
247
200
231
234
219
221
146
140
207
169
218
200
171
211
161
185
268
261
148
285
184
197
205
182
184
248
211
113
221
180
184
227
248
249
205
194
273
171
237
139
189
215
164
123
192
238
154
254
179
194
245
158
234
161
203
199
208
213
164
211
194
157
171
189
201
239
199
194
240
223
235
199
257
204
181
171
242
249
181
195
175
208
267
252
241
214
186
186
153
202
199
164
160
201
173
162
128
159
260
213
150
228
150
205
164
226
189
258
197
125
229
214
253
240
168
174
211
194
253
199
175
229
189
190
183
172
174
233
193
152
190
165
185
176
249
183
203
175
236
213
246
100
209
220
243
198
164
151
264
211
191
254
255
165
183
198
141
205
210
224
239
225
189
160
164
173
178
202
281
153
122
161
247
257
212
187
192
188
154
172
169
283
159
233
206
153
234
165
248
224
213
163
183
192
245
183
178
203
218
205
180
183
217
229
270
197
206
223
194
221
171
175
212
171
178
193
190
136
265
191
212
190
243
160
249
205
153
217
245
256
206
232
233
188
248
132
213
129
211
170
187
201
160
174
112
236
98
191
162
187
199
229
202
238
212
215
226
149
201
201
196
211
184
234
192
189
186
223
238
207
210
232
158
232
203
166
220
224
212
194
204
195
217
198
253
114
195
230
165
207
213
218
198
198
240
180
181
191
184
155
202
248
198
228
205
262
198
207
208
226
238
131
179
203
189
143
205
153
204
192
187
199
199
174
206
233
196
232
224
215
182
227
146
187
255
261
143
192
181
167
190
187
203
126
222
158
201
229
184
226
253
168
213
244
196
233
231
274
229
169
228
200
231
160
144
187
174
252
203
219
218
199
258
185
228
159
252
207
227
174
226
225
217
197
115
190
153
211
257
201
251
183
175
181
238
133
210
149
171
221
180
247
204
199
206
119
241
193
252
263
166
191
176
162
243
168
194
198
207
272
180
225
231
235
168
199
208
232
183
157
157
207
178
172
218
188
246
234
173
203
176
218
195
190
206
223
185
229
204
192
254
213
161
203
180
167
213
243
169
181
132
178
158
213
273
189
244
144
249
209
144
231
206
184
246
199
136
183
157
206
169
215
214
191
228
169
173
262
180
249
186
231
239
219
236
176
204
241
163
156
269
156
130
166
222
263
114
171
187
198
222
203
189
134
238
190
188
176
144
217
233
192
227
262
176
168
221
217
215
149
177
182
238
168
157
186
192
202
161
195
209
238
223
225
238
261
192
219
186
233
243
214
234
251
223
219
219
203
155
173
251
217
177
187
226
107
208
221
158
259
251
207
221
177
213
205
247
232
227
177
253
239
178
224
157
176
192
243
272
156
219
201
159
243
174
224
184
201
239
220
195
177
153
215
202
241
200
232
201
225
213
199
156
170
148
245
168
124
165
181
215
201
204
206
201
199
270
116
231
151
222
174
149
215
218
188
237
195
226
244
146
173
226
242
197
201
179
229
236
208
210
176
209
211
171
198
187
194
145
185
250
228
173
196
245
184
151
193
227
228
154
229
184
231
217
151
220
180
184
262
257
230
169
208
180
145
206
228
169
185
168
203
244
216
172
240
208
181
165
180
216
199
231
190
198
217
206
257
155
216
191
239
219
234
277
185
173
201
219
237
189
172
160
272
173
248
245
223
177
221
198
220
197
259
244
162
210
160
255
173
205
169
149
198
156
244
233
232
130
228
190
111
197
188
194
247
186
200
239
232
171
185
166
238
226
115
170
184
184
238
254
158
216
151
204
245
176
180
214
218
223
190
191
208
170
172
167
151
205
164
278
189
197
180
256
228
165
170
186
210
207
210
225
187
246
225
171
164
238
197
148
246
123
171
174
242
230
205
208
187
251
196
212
160
212
246
234
209
177
236
132
229
138
178
243
206
139
221
241
211
249
224
171
200
224
179
126
219
263
267
188
211
212
189
181
196
211
185
208
198
215
168
231
264
157
193
150
169
246
189
136
223
173
187
197
169
158
237
258
209
167
211
192
236
208
216
186
207
226
168
182
186
183
195
205
202
168
220
236
162
175
211
249
189
243
201
232
142
227
154
212
233
220
199
174
188
235
149
218
202
222
192
199
161
201
235
220
174
220
165
204
211
202
163
188
219
195
243
204
209
261
233
186
121
172
177
181
255
201
191
187
169
247
157
188
188
171
245
270
191
239
154
233
239
177
244
151
177
201
231
224
125
224
160
186
243
216
142
168
227
196
204
210
202
216
176
193
81
172
245
205
242
178
234
269
208
251
198
160
207
221
194
191
156
148
213
181
204
207
171
191
231
213
130
164
162
139
164
225
166
265
222
229
128
202
160
219
197
205
121
238
189
160
124
197
208
248
163
214
190
198
141
174
221
197
228
222
181
217
233
208
204
154
181
197
197
257
173
244
170
182
181
248
215
266
194
184
184
253
199
180
205
203
227
178
136
225
202
211
220
196
166
194
186
227
209
208
185
197
178
184
234
219
172
202
263
187
178
184
153
174
190
213
216
195
269
204
200
204
172
231
218
192
221
184
184
198
207
178
159
158
194
166
197
199
237
183
173
207
178
156
198
221
195
152
255
229
133
210
165
160
211
185
159
219
156
238
165
223
206
171
207
235
191
155
214
185
253
198
211
205
189
152
225
197
175
195
227
221
187
206
163
187
164
243
136
274
214
181
198
193
166
193
137
203
193
245
245
182
187
155
205
191
267
200
178
239
198
177
168
238
110
221
224
185
150
219
234
248
172
250
164
252
195
179
150
188
203
204
275
166
192
207
174
200
251
213
204
195
211
209
225
261
141
201
180
142
204
241
173
211
185
205
212
228
161
188
159
264
166
248
270
184
219
244
189
173
146
224
197
202
218
217
193
169
197
169
155
185
144
148
188
222
193
197
167
192
145
200
161
213
197
248
177
265
187
254
168
251
215
266
216
227
203
179
156
148
263
199
166
208
165
164
175
226
223
204
230
176
207
143
182
168
240
233
185
158
175
200
159
216
173
191
204
155
247
194
177
218
141
236
224
220
239
216
255
156
193
227
74
262
181
147
222
204
201
165
171
206
212
153
245
254
187
194
209
236
238
221
163
215
230
219
201
215
205
201
229
194
181
247
178
187
244
240
209
218
203
182
234
197
243
265
204
166
196
246
229
219
205
209
155
178
173
204
245
173
141
155
177
156
163
150
260
200
179
224
149
190
147
237
203
159
175
210
244
150
190
229
185
158
228
217
251
269
200
154
143
130
195
169
222
198
222
231
239
222
242
188
214
199
195
227
197
232
213
205
250
206
203
256
180
188
211
177
260
192
202
224
203
196
196
265
246
210
253
140
184
218
199
195
195
217
233
245
214
224
198
183
261
145
168
182
213
206
150
143
175
135
147
190
216
213
248
254
156
207
226
196
213
189
170
221
175
253
213
223
152
213
183
192
219
209
202
217
196
219
206
184
176
243
170
238
221
184
216
204
187
208
120
203
220
207
205
142
259
205
199
217
161
119
287
208
208
122
195
262
238
254
250
193
154
213
236
189
199
196
205
177
178
216
166
217
187
165
193
163
185
163
242
217
188
186
270
243
235
164
181
192
170
195
132
184
209
273
213
189
203
220
220
202
249
201
220
221
215
181
236
167
149
200
133
175
212
187
194
176
206
173
152
187
202
221
233
169
202
182
212
205
226
236
259
192
221
235
243
180
169
248
228
195
160
172
210
181
244
209
150
164
205
200
239
220
151
177
226
205
148
185
166
232
206
203
229
271
200
191
178
211
191
212
224
198
232
233
161
225
157
263
149
208
230
208
184
176
211
158
209
244
133
189
166
262
231
182
209
175
217
125
268
209
274
193
145
184
166
160
175
253
189
179
241
184
119
151
228
173
208
190
183
228
228
242
218
166
203
221
202
191
119
193
165
190
191
61
254
249
196
275
151
225
147
148
282
180
194
177
176
168
199
202
201
197
178
133
193
191
223
208
238
218
228
238
193
214
177
244
188
180
223
162
241
209
215
179
188
246
197
234
223
215
181
200
221
165
171
205
233
206
141
257
224
180
135
176
101
203
191
167
113
217
214
122
255
193
194
216
220
207
191
175
183
161
212
251
184
211
202
276
255
179
169
216
197
196
179
121
203
211
218
143
202
247
187
216
283
191
234
209
231
231
182
176
132
150
239
217
157
194
201
167
236
178
232
175
160
190
211
217
238
227
148
195
240
167
184
222
228
200
277
239
193
163
225
218
141
196
277
187
183
217
197
244
189
151
168
246
244
172
220
234
153
160
181
187
80
231
183
224
233
131
225
221
216
224
175
219
190
220
172
218
202
240
136
218
204
258
233
180
192
176
173
210
234
185
224
228
190
232
165
166
175
192
216
161
227
183
166
162
177
104
182
215
243
227
177
163
127
201
160
169
200
201
190
225
197
165
158
176
244
179
211
173
213
187
164
215
200
179
138
188
271
242
203
219
174
161
192
195
191
246
230
180
177
212
179
261
171
241
173
213
221
200
164
234
248
181
217
208
254
257
155
220
128
220
200
210
231
242
181
249
234
194
212
164
164
205
200
251
226
163
244
206
225
169
220
201
240
119
260
235
217
199
189
191
204
236
148
211
251
117
214
157
206
202
158
231
233
297
164
215
292
210
216
236
188
215
177
220
216
183
136
235
206
188
201
203
199
184
207
264
134
163
190
228
168
229
200
124
172
202
207
192
114
223
211
244
154
201
106
178
199
157
126
137
218
235
196
196
158
176
193
261
210
227
198
221
239
205
168
177
223
232
197
210
231
161
265
276
187
194
175
238
182
213
194
243
214
155
187
165
151
206
193
236
210
192
206
246
217
180
180
188
240
217
187
177
235
178
236
243
208
175
213
214
182
228
160
199
217
161
248
167
189
197
227
194
219
220
189
229
196
159
227
152
281
233
138
186
231
175
244
211
261
227
195
197
201
192
205
128
254
225
232
234
167
145
220
194
232
179
202
170
220
177
201
168
154
169
201
227
218
259
268
221
218
185
237
255
162
202
250
194
242
170
207
195
204
174
189
196
137
222
161
203
208
164
234
252
274
227
190
207
191
222
170
248
172
220
178
213
187
203
197
173
134
181
219
197
142
147
260
166
193
142
175
234
181
204
208
217
196
161
158
193
217
139
177
187
225
230
189
237
218
226
206
232
158
216
158
180
123
169
205
196
287
179
147
239
245
198
155
178
222
241
151
191
220
217
178
209
154
221
167
190
263
214
197
180
257
211
226
201
211
247
137
229
160
270
209
202
223
213
226
183
186
141
214
187
237
262
192
183
206
239
231
138
158
237
223
215
166
219
203
168
150
177
164
228
269
150
239
191
220
197
253
144
197
219
227
155
206
252
200
154
192
215
236
193
203
215
232
210
213
211
157
173
161
130
253
227
220
173
162
157
178
236
201
223
205
206
236
206
166
203
228
171
245
268
189
275
158
144
170
207
215
232
174
191
219
199
143
156
205
207
248
210
208
213
200
159
169
185
195
177
134
165
206
209
242
173
206
169
153
215
233
230
179
234
214
178
244
187
205
217
211
270
212
125
197
189
226
136
215
182
193
192
220
187
223
188
242
201
193
256
274
206
194
199
155
186
212
269
166
157
231
118
220
234
256
155
232
161
192
189
215
182
264
171
184
223
185
231
202
166
225
243
219
302
169
253
180
147
236
193
272
198
248
189
227
240
219
209
181
212
192
198
167
189
212
164
219
221
219
205
131
240
169
173
164
221
176
247
258
203
233
189
233
210
230
110
121
179
228
273
193
268
218
241
129
203
183
213
261
163
216
190
239
235
197
218
207
232
187
201
213
238
150
182
127
189
231
148
174
254
181
102
231
249
187
164
186
213
262
139
212
203
232
156
246
190
220
213
224
165
270
176
266
147
245
204
132
239
235
209
159
128
157
232
253
183
208
161
212
176
262
228
226
254
190
242
160
161
219
134
202
172
220
179
119
218
210
147
190
268
170
179
160
212
145
221
232
187
210
211
248
172
203
192
196
169
150
229
162
196
167
184
203
189
202
227
196
130
162
207
202
252
226
195
210
205
243
195
207
154
209
182
167
151
184
219
175
128
138
206
229
192
195
222
269
272
224
231
207
228
188
201
196
191
177
164
167
222
145
223
255
196
119
268
206
159
247
263
218
220
246
195
219
141
203
183
216
228
203
170
235
206
229
231
170
212
199
221
179
147
167
157
252
210
167
231
273
187
136
224
192
247
265
110
157
193
164
238
200
223
192
221
177
211
156
223
223
191
203
98
146
210
191
200
227
177
244
198
228
246
215
104
221
225
230
173
166
236
223
248
174
205
199
244
202
172
216
211
192
141
224
185
224
178
241
202
225
179
199
241
233
209
200
244
209
126
224
186
192
189
236
190
225
159
233
236
161
191
213
236
233
195
201
193
268
227
255
259
162
219
276
239
137
237
258
176
230
171
214
206
222
194
234
187
180
185
217
204
260
235
173
225
186
194
231
186
223
181
213
143
191
187
220
233
213
237
262
202
115
125
209
161
235
168
201
221
222
118
212
153
188
239
204
208
216
171
135
221
106
160
231
252
219
172
218
139
148
191
220
220
230
191
213
216
210
275
174
229
135
152
226
186
171
163
255
187
226
156
114
182
188
212
158
192
187
179
139
212
167
246
201
213
152
225
173
226
232
212
200
204
246
186
193
186
244
180
192
250
148
246
195
206
171
211
178
221
219
219
238
166
226
200
129
185
278
208
168
213
139
159
250
110
180
194
205
157
202
236
193
180
195
239
205
180
249
141
183
227
176
216
148
216
258
179
250
160
193
229
177
187
174
249
241
240
217
246
172
212
166
206
212
172
259
139
216
200
157
212
184
200
209
182
193
202
143
215
213
244
213
242
181
167
201
156
208
224
227
204
201
266
233
181
248
194
196
214
199
209
238
141
218
181
256
174
183
150
272
209
217
250
258
212
249
214
252
220
205
198
210
222
239
241
195
194
255
172
213
263
183
197
169
158
235
202
176
147
209
232
208
251
213
197
149
220
196
204
174
214
244
249
223
180
149
167
197
199
146
173
224
241
208
201
251
133
238
214
156
233
127
237
159
200
191
202
216
173
278
253
200
213
240
212
180
198
193
197
203
177
161
210
235
192
191
184
164
166
147
180
287
260
261
180
174
236
172
184
118
223
211
219
275
238
172
198
181
255
234
249
229
226
193
151
188
222
179
236
183
207
129
231
236
164
177
213
228
133
218
209
253
225
204
216
189
205
208
206
177
163
273
187
178
210
179
155
149
168
192
219
231
119
181
216
223
176
145
162
251
219
222
206
212
174
187
183
192
198
232
171
200
239
179
96
262
197
162
228
177
205
186
224
173
137
245
191
183
176
171
232
199
210
161
196
201
200
235
212
226
149
224
226
215
195
154
207
167
258
201
194
173
275
151
231
158
211
256
185
227
160
234
152
217
230
219
258
219
208
180
182
233
107
188
122
235
263
257
218
211
201
236
191
170
217
228
149
186
220
158
214
181
182
246
196
195
175
193
186
187
248
175
166
238
191
207
204
252
222
191
177
242
223
193
174
111
228
192
276
267
203
226
189
176
170
170
190
175
200
188
179
186
214
132
233
286
206
158
184
212
243
195
208
199
130
175
206
211
203
220
125
185
204
176
134
196
237
224
228
141
231
174
196
166
213
182
191
191
206
251
244
171
225
199
212
205
239
173
190
166
235
196
255
206
204
265
103
196
249
168
130
130
188
217
199
209
237
247
165
193
210
230
220
171
263
119
193
201
157
172
172
223
230
241
221
176
209
259
257
195
165
202
180
203
228
162
200
205
162
139
228
255
147
173
223
188
180
215
202
164
205
164
209
282
191
235
260
205
233
168
139
235
218
144
182
218
155
113
183
191
214
224
221
211
234
133
221
218
190
217
180
206
236
214
166
162
180
170
204
168
201
265
209
203
146
223
204
222
222
163
244
176
181
209
197
179
153
142
231
220
209
194
199
246
212
212
149
223
133
232
229
254
141
179
222
211
221
188
178
191
240
187
251
184
205
209
189
188
192
247
185
240
220
157
211
238
237
222
154
239
188
230
214
194
260
256
192
234
260
198
200
220
180
196
230
192
168
246
242
198
229
174
180
189
187
230
216
145
192
210
200
82
177
208
195
172
185
184
236
212
185
138
176
210
137
156
202
259
149
219
275
184
226
152
253
216
161
170
199
196
150
208
187
175
207
169
193
262
149
168
204
217
222
249
203
227
188
229
197
209
189
191
218
159
198
213
196
209
263
212
197
195
214
204
125
195
189
209
226
100
184
201
193
163
240
234
192
207
191
252
200
212
162
174
160
167
211
235
225
250
148
172
200
182
202
237
173
158
236
138
183
193
222
184
202
212
194
226
202
233
221
226
146
177
181
212
153
218
185
201
197
239
188
158
194
148
182
228
201
171
175
181
202
202
220
245
180
237
196
192
188
227
179
93
152
223
174
234
149
222
177
237
189
173
138
193
215
172
229
212
231
206
208
217
201
213
162
229
228
198
150
221
171
210
150
214
252
220
195
179
186
204
247
230
222
204
186
205
206
154
268
185
197
114
225
207
225
185
160
239
174
189
101
178
164
219
215
193
219
240
225
180
168
234
189
244
231
172
145
128
238
205
229
227
211
173
225
176
226
188
216
168
224
170
176
225
199
149
227
214
255
226
196
144
193
226
232
167
206
222
110
189
173
160
180
147
176
160
196
179
183
238
216
203
239
250
222
163
246
224
250
199
215
219
197
229
210
216
192
218
191
222
235
191
215
169
149
174
237
168
209
150
148
180
186
177
189
174
186
167
198
145
237
210
193
190
229
262
160
208
255
213
209
190
203
206
150
209
237
215
256
259
201
237
252
206
180
157
186
172
243
189
197
221
207
183
238
194
205
212
181
219
261
205
188
245
250
192
170
200
178
216
178
195
190
133
196
184
200
244
176
216
203
192
175
211
190
237
254
240
183
195
183
185
176
199
215
160
256
228
238
230
217
195
145
178
192
220
191
233
181
226
190
168
191
235
233
176
205
232
152
224
203
195
257
228
210
164
181
198
207
197
188
209
162
217
217
165
191
256
207
280
188
234
220
252
204
166
215
240
211
225
236
191
153
212
200
222
158
205
199
158
230
251
217
262
159
224
200
169
206
242
205
206
220
108
184
188
157
222
252
225
227
196
221
175
197
245
206
206
192
226
237
209
178
194
233
231
158
264
203
242
168
231
233
245
221
246
213
226
190
206
165
158
260
185
130
214
168
167
228
100
165
209
251
244
250
212
206
182
185
212
228
180
250
211
222
244
235
235
181
233
161
145
237
230
186
228
196
247
200
164
200
208
187
198
249
161
174
220
257
211
232
134
206
169
238
230
183
235
238
200
193
142
217
217
220
219
174
194
171
200
204
228
171
184
121
195
274
258
184
205
215
191
214
149
195
185
246
232
216
194
203
221
239
178
166
211
190
184
162
264
138
201
171
216
192
232
195
199
207
180
179
195
232
205
183
201
250
216
171
165
229
150
203
152
202
179
199
197
252
168
259
225
194
163
246
170
214
184
224
180
208
260
277
222
197
225
225
179
152
220
163
185
195
238
262
218
235
124
172
182
171
132
200
199
227
109
214
186
164
142
148
181
219
207
201
212
216
185
235
217
214
153
174
135
218
207
259
249
229
152
220
199
235
181
201
172
224
212
157
157
167
212
188
202
266
132
226
214
162
209
216
184
243
184
194
238
139
186
232
222
238
177
203
246
207
187
179
208
129
160
203
218
182
150
183
176
147
246
178
223
241
216
167
183
273
175
238
194
158
207
189
184
173
240
187
229
154
231
217
231
230
235
212
224
251
224
220
222
185
174
208
263
259
179
184
174
172
201
225
255
212
198
140
180
181
215
169
257
183
110
182
179
248
261
169
168
232
271
211
215
288
179
178
217
210
230
177
174
159
270
154
207
223
234
194
242
209
174
252
177
157
266
231
195
217
137
186
186
171
214
182
235
216
164
227
165
188
181
207
187
231
204
190
165
267
200
178
172
192
218
214
198
179
213
156
177
203
134
233
241
215
219
217
243
239
226
220
167
213
225
195
233
230
184
193
217
241
178
143
269
206
222
233
217
173
239
251
243
206
202
179
199
256
190
181
222
169
178
238
186
231
151
221
142
229
144
217
188
135
151
205
227
198
266
254
200
168
170
126
113
133
175
229
146
192
221
221
152
231
245
213
198
186
212
187
216
194
261
154
258
136
233
219
212
175
153
223
200
216
191
181
223
210
251
262
213
194
232
225
133
197
224
225
212
219
190
179
153
217
205
161
135
235
152
212
199
217
246
264
172
289
222
236
134
224
190
166
224
221
189
225
246
219
219
251
198
246
233
219
215
176
197
194
213
164
236
199
201
189
183
238
191
221
245
249
121
255
206
235
192
206
201
181
189
249
252
208
156
226
172
183
244
144
171
164
150
229
190
182
185
216
202
150
193
184
178
137
194
194
241
272
152
215
254
195
149
219
227
191
197
230
190
200
229
166
187
140
235
211
142
166
134
243
202
179
221
147
172
222
183
234
205
204
175
170
216
195
236
202
160
201
208
231
221
207
226
167
170
176
183
230
140
194
200
211
199
240
238
210
260
193
218
211
241
215
148
194
223
230
168
170
188
176
205
190
101
206
185
234
226
188
180
225
222
158
201
168
198
158
180
207
162
252
208
248
171
178
172
210
224
213
153
226
236
207
216
236
187
182
258
157
195
192
206
249
152
228
191
222
237
150
222
188
187
236
123
211
231
186
216
188
210
178
219
228
242
237
187
176
172
174
225
234
149
184
208
184
190
254
184
176
145
218
164
235
237
174
189
190
206
186
175
193
184
215
195
217
228
189
257
146
221
247
171
236
210
250
262
202
227
233
156
181
233
196
178
175
227
195
215
165
186
189
207
256
242
211
244
161
170
198
168
161
191
210
215
231
213
253
270
204
274
225
164
214
219
202
149
162
245
213
199
224
179
211
257
249
211
143
234
219
171
227
218
185
179
265
198
119
161
232
221
181
216
168
258
198
154
198
211
159
205
197
145
200
234
224
263
193
217
192
287
192
175
260
218
188
169
148
223
191
210
159
144
169
266
193
165
191
180
125
114
170
220
170
210
159
159
183
190
219
179
223
212
184
147
151
158
220
249
183
140
209
164
209
102
196
160
247
282
217
160
230
201
251
230
174
189
183
181
204
182
218
203
215
148
164
137
209
141
246
167
171
199
185
189
228
243
210
212
212
212
264
220
251
200
183
232
161
200
202
162
210
227
145
186
163
215
163
215
223
263
170
224
258
149
229
173
238
181
179
160
158
214
152
225
263
174
216
234
194
236
230
181
232
196
158
209
167
199
218
198
245
189
182
210
201
183
226
176
208
241
177
166
215
169
197
246
245
250
197
168
162
238
158
146
183
184
205
134
175
157
238
220
235
197
226
206
200
216
131
251
198
218
188
233
219
222
233
193
205
175
222
192
227
214
172
224
191
190
247
227
197
205
235
203
227
220
158
198
142
206
188
132
170
240
135
161
241
210
180
218
208
166
236
264
211
248
171
227
298
198
213
232
177
225
157
221
224
189
177
223
165
186
226
192
233
179
182
162
229
185
225
250
205
155
217
278
204
168
222
127
198
268
206
213
232
104
252
228
223
274
187
263
199
187
156
180
199
192
180
259
207
139
182
165
193
235
211
216
206
132
206
161
183
182
261
224
175
160
160
178
189
252
176
141
231
195
140
148
191
214
239
220
169
153
151
180
200
212
220
218
211
212
204
174
186
182
192
274
206
203
199
200
203
256
256
194
244
197
245
262
161
230
241
206
195
248
168
178
214
161
233
234
139
233
212
229
113
183
228
213
183
236
280
247
219
208
209
197
256
207
150
232
233
216
193
245
196
149
236
193
202
171
209
122
210
218
170
198
228
187
164
211
213
240
250
177
186
175
198
149
172
208
177
162
208
134
230
173
159
169
141
214
216
256
249
184
238
241
227
224
189
206
220
226
194
201
163
229
169
176
146
238
212
206
239
181
207
188
187
209
182
181
242
163
214
183
271
194
133
276
219
142
234
201
211
134
283
219
162
213
216
181
162
233
228
165
192
221
218
228
260
193
186
231
200
169
220
221
208
154
215
239
193
218
142
179
240
212
204
194
179
199
218
247
163
164
154
201
177
117
211
161
125
207
170
202
195
209
224
171
182
203
134
205
187
228
200
162
233
219
199
246
216
196
190
184
183
153
231
249
242
195
170
206
218
254
211
262
151
241
230
167
227
176
156
220
167
222
188
155
182
154
209
143
239
205
219
217
217
215
203
214
188
155
190
198
251
190
202
228
220
197
197
235
258
193
173
160
205
156
214
212
199
176
252
173
236
200
164
214
196
226
172
254
175
264
148
258
252
248
192
194
138
136
177
228
173
173
128
174
183
205
205
228
217
212
220
193
264
211
128
183
177
217
188
191
220
175
188
235
170
200
201
229
131
129
218
210
245
216
245
217
201
192
196
217
219
197
218
155
245
193
187
208
207
164
220
197
223
171
220
240
159
191
244
250
168
278
203
253
193
231
231
183
193
201
228
238
185
188
201
203
244
149
195
237
198
191
216
171
265
227
151
218
193
177
260
160
262
267
259
186
128
126
211
177
175
128
243
204
118
214
234
190
215
159
122
173
202
166
205
184
227
185
247
205
231
245
145
178
240
194
206
193
165
281
276
234
190
231
213
247
212
202
204
127
180
265
243
183
178
171
215
181
177
253
223
233
213
229
154
203
191
233
243
177
198
190
198
240
210
240
155
193
163
209
136
212
196
183
216
152
215
190
282
179
216
130
215
192
186
204
263
202
192
197
240
240
178
248
203
190
184
215
208
208
170
230
197
194
209
214
155
149
212
175
157
251
144
197
211
203
242
168
208
213
226
211
196
241
222
202
217
214
184
234
184
158
267
186
203
210
139
166
143
195
189
194
207
201
167
212
184
228
166
235
179
189
218
167
185
208
206
194
183
217
255
168
143
155
163
230
174
180
174
230
143
172
273
207
211
237
220
252
226
180
227
189
225
148
144
145
199
233
205
202
183
195
141
231
196
170
188
132
238
166
179
229
202
243
183
209
182
205
216
175
197
180
220
220
243
187
189
210
228
180
264
246
135
184
253
203
206
172
136
163
232
194
223
234
164
190
215
106
263
182
182
196
215
230
177
191
198
203
143
281
158
195
199
200
252
173
197
247
179
230
119
208
200
203
199
180
183
199
231
222
244
275
253
238
246
178
256
229
138
166
176
157
234
192
303
236
180
213
224
134
150
247
198
155
201
184
186
183
213
219
163
202
236
169
163
237
217
179
241
230
161
223
206
218
178
193
213
214
199
158
188
177
198
226
239
195
173
209
243
195
180
132
183
167
232
181
186
261
242
256
181
180
241
179
194
213
205
204
227
216
193
152
176
159
262
251
216
186
238
200
183
248
187
263
223
228
206
232
176
180
173
153
177
234
205
187
198
170
211
217
241
211
196
176
146
198
236
209
225
199
187
232
179
209
214
188
210
206
127
166
246
200
209
142
184
170
228
220
174
222
197
218
226
217
188
215
119
200
212
217
205
190
239
194
159
203
181
243
205
216
237
212
227
216
177
203
195
178
194
253
199
249
152
141
96
228
199
182
227
177
155
197
206
113
217
249
178
232
224
192
162
171
179
198
255
240
202
230
211
180
165
218
204
225
182
230
142
167
224
147
257
166
237
231
266
228
216
190
162
235
243
223
250
165
200
227
256
239
190
237
156
190
258
287
214
199
197
221
202
189
161
204
183
157
180
263
227
196
221
167
148
209
203
235
141
164
134
93
209
192
213
171
202
189
214
200
201
217
204
211
248
253
171
200
225
243
207
187
174
236
227
223
253
235
208
134
186
218
152
157
172
227
199
145
221
159
242
196
226
201
184
227
167
249
204
194
179
184
171
191
221
127
130
206
209
181
223
189
180
193
122
193
160
247
212
204
229
260
231
154
184
172
248
201
201
192
174
206
222
222
190
217
223
150
192
243
231
174
161
157
241
173
213
196
222
197
244
253
187
132
208
212
241
147
276
236
242
204
186
204
204
113
193
228
149
179
161
227
213
205
160
192
129
196
242
189
188
152
226
223
217
138
171
229
214
166
206
201
126
222
165
122
161
189
202
179
168
206
241
228
222
285
241
199
161
187
151
156
248
279
212
184
157
175
261
203
243
188
214
227
187
227
228
126
236
209
235
202
252
182
212
250
209
206
189
179
158
230
213
125
194
200
222
172
195
215
147
196
205
152
240
240
206
220
147
220
189
200
169
197
176
227
229
258
177
243
225
209
180
261
182
180
145
254
257
291
165
222
172
263
165
225
163
225
229
195
187
274
192
208
178
233
191
217
201
220
166
225
205
247
254
151
203
193
206
221
191
246
165
188
209
199
197
150
173
148
258
191
142
226
146
228
261
173
216
243
211
231
191
161
212
185
240
157
229
189
175
184
233
195
184
200
175
256
215
215
248
214
152
231
220
239
139
282
254
133
210
210
177
215
225
185
208
195
94
195
161
183
135
174
201
226
190
224
200
238
184
136
164
194
209
151
168
268
226
172
249
193
267
250
231
197
215
236
217
172
155
238
231
205
232
250
169
197
215
182
269
219
220
166
172
177
184
200
181
173
169
204
138
196
246
214
207
200
222
182
232
273
251
196
203
185
197
180
149
138
170
162
115
189
245
145
198
215
150
174
217
203
120
193
236
148
181
228
203
159
158
250
239
173
211
217
268
290
244
176
143
199
228
173
205
202
164
232
113
171
202
176
232
228
188
225
197
178
154
258
181
149
219
206
255
207
184
164
237
204
177
176
163
198
200
187
175
222
223
197
178
202
206
206
180
223
209
178
175
241
216
133
249
200
182
162
171
188
234
177
222
234
242
176
168
225
219
202
212
193
279
166
175
216
201
236
258
205
166
178
158
183
220
137
205
209
235
251
205
203
241
128
239
224
172
205
219
170
176
170
235
218
246
165
186
139
211
254
220
159
225
138
167
208
178
121
235
179
132
215
227
189
159
152
216
155
171
273
216
216
201
150
213
248
217
196
173
204
205
191
216
186
141
219
191
130
171
165
146
190
221
168
233
175
162
171
184
181
160
220
155
154
187
179
208
176
177
162
205
226
196
146
192
246
171
182
262
266
232
200
208
226
199
157
205
200
242
258
212
213
259
200
165
158
239
147
241
116
152
220
218
174
214
177
247
144
225
172
136
229
221
189
189
238
160
162
193
241
252
148
110
189
245
207
235
195
231
158
195
186
199
198
146
281
207
202
204
179
159
169
171
240
154
130
240
173
173
180
194
186
185
283
209
198
178
108
173
182
174
180
135
204
199
201
175
252
205
189
230
191
243
238
139
202
214
133
269
223
161
207
219
191
261
242
239
211
206
169
195
179
227
164
236
215
157
207
218
258
102
257
239
221
148
185
244
219
232
207
203
153
215
187
129
211
280
200
245
242
197
129
215
183
187
246
191
221
197
223
270
151
238
144
232
190
227
236
184
208
241
228
197
225
223
158
185
90
152
229
189
213
205
206
268
201
216
228
250
189
223
203
198
162
191
250
267
172
201
123
171
239
223
171
173
215
227
212
161
202
183
242
169
269
295
216
204
200
164
179
209
254
115
212
206
104
169
259
184
235
206
143
163
198
167
224
183
216
199
201
151
213
172
196
222
247
200
238
277
231
210
202
166
177
177
210
232
171
120
210
190
166
198
186
245
224
217
191
253
224
260
204
219
234
226
141
240
241
205
166
171
171
246
144
224
193
231
222
200
214
275
230
161
154
223
210
217
202
230
208
151
225
148
275
247
224
213
201
196
179
171
193
218
225
233
133
171
201
209
213
161
148
243
229
192
200
143
125
227
250
226
187
220
237
232
205
228
188
187
237
220
170
205
214
247
187
197
253
225
193
168
172
191
203
207
254
226
216
179
172
155
181
157
143
217
143
212
201
181
206
185
191
175
159
204
180
218
215
207
247
240
199
142
204
225
188
210
171
175
242
215
188
167
270
195
183
199
184
254
137
165
227
170
190
236
153
165
266
171
170
229
181
161
205
243
189
201
202
160
211
243
220
194
207
218
194
209
202
210
180
215
262
221
179
170
156
218
176
200
181
223
136
187
223
212
177
185
193
211
134
178
232
135
217
250
200
242
193
164
156
179
240
178
226
146
169
182
219
183
238
175
140
180
210
262
232
247
169
227
208
258
216
182
217
246
145
273
236
205
260
192
211
238
214
204
165
204
196
239
219
155
196
205
214
254
223
224
248
224
167
159
159
146
225
215
222
229
167
193
158
257
189
220
206
220
221
214
111
189
240
212
174
205
200
157
177
213
209
256
214
176
234
132
152
252
222
231
221
185
190
210
176
249
196
205
198
225
258
133
208
176
195
193
174
235
197
185
236
216
244
180
195
224
237
238
187
192
122
245
193
226
236
155
185
186
156
252
179
253
225
207
268
197
234
167
247
179
215
190
222
149
243
193
158
248
233
215
240
196
172
237
192
171
202
215
167
198
151
220
211
205
179
195
192
202
261
233
237
212
251
216
140
225
115
215
170
242
198
176
218
274
198
176
233
215
274
233
254
161
210
225
178
197
207
260
190
209
244
227
167
234
174
210
172
182
146
233
197
213
203
213
189
233
169
187
147
267
170
187
197
202
238
210
231
190
200
186
176
229
259
219
232
222
196
133
225
158
216
234
254
210
184
144
191
236
179
224
207
254
196
163
171
202
215
177
195
202
218
203
233
163
167
179
215
181
212
211
230
204
221
193
226
243
241
230
184
205
187
235
198
200
161
238
149
190
151
221
195
234
192
223
168
182
154
153
210
215
163
141
147
160
142
212
204
186
159
217
206
175
259
231
271
182
238
208
118
181
259
245
222
225
242
232
182
203
173
171
246
164
203
189
223
220
146
185
177
210
164
209
230
170
218
189
173
183
224
203
249
193
212
207
217
196
283
206
246
178
186
237
218
173
208
148
210
240
226
172
190
184
209
230
172
159
225
180
246
254
212
211
211
254
225
184
200
200
243
198
273
236
167
201
231
261
168
250
170
221
226
200
196
201
204
215
262
208
216
192
196
216
187
173
192
184
248
232
232
176
212
217
193
155
214
201
145
234
162
221
152
260
135
225
197
141
174
174
196
199
212
129
163
207
198
206
225
136
196
212
210
205
199
237
187
148
202
229
215
241
185
216
212
205
200
173
118
201
242
212
134
222
183
159
267
184
227
116
229
227
142
175
246
186
162
260
199
202
194
212
256
225
163
216
199
215
197
232
178
168
199
173
225
231
195
186
120
171
199
239
228
266
232
143
176
199
231
255
257
232
204
224
209
195
201
185
185
236
203
204
222
227
196
204
160
157
185
198
210
211
218
201
190
192
188
191
210
182
207
255
193
227
245
177
237
272
233
175
166
182
162
244
138
228
170
227
214
222
182
151
301
162
247
183
268
250
167
201
227
190
221
176
238
230
205
179
206
128
174
200
186
167
189
253
233
196
168
207
205
205
185
197
183
191
236
149
191
224
235
240
206
196
218
219
159
202
216
160
200
182
193
201
221
240
263
151
217
192
183
203
150
233
163
210
163
153
181
224
197
163
196
255
195
187
156
212
195
169
235
205
183
191
192
160
181
207
227
248
177
243
160
154
204
137
225
260
173
214
226
161
236
177
147
199
197
195
181
199
194
235
197
186
176
250
216
173
148
250
221
197
194
209
182
199
202
133
189
207
181
167
204
215
229
186
230
207
211
171
238
213
137
266
225
187
164
220
224
184
185
197
174
127
196
239
201
251
226
210
235
201
207
146
204
175
169
197
187
188
175
245
182
170
204
169
191
156
219
185
196
112
179
212
244
168
211
206
213
178
208
158
266
206
256
219
215
221
223
200
167
199
224
268
139
157
211
214
263
217
119
194
241
166
179
186
200
222
182
190
189
188
196
216
221
211
247
153
154
191
247
151
169
226
144
223
225
256
143
223
213
248
250
154
219
193
257
181
194
236
141
207
138
221
166
229
172
210
200
155
210
199
230
161
207
176
172
207
238
164
234
254
213
180
235
277
244
188
213
213
168
192
191
184
196
217
198
181
213
181
184
144
184
204
265
142
255
208
199
177
253
231
188
153
285
231
186
180
213
159
129
174
186
204
220
163
194
169
229
219
213
144
228
197
234
208
235
191
252
228
159
162
229
210
149
190
228
189
203
210
243
236
234
175
235
191
209
110
183
165
209
210
191
270
220
150
251
212
231
176
172
224
178
153
246
246
198
185
229
200
212
272
214
152
231
211
186
194
214
217
205
222
225
223
189
290
228
200
200
177
230
235
147
211
140
180
194
130
224
221
215
145
204
179
136
188
230
239
179
246
122
206
164
202
212
169
201
174
188
164
197
215
197
178
239
264
167
186
185
232
214
198
220
208
181
250
200
191
175
125
260
218
259
178
168
162
167
194
196
247
156
180
183
165
180
140
229
221
179
232
231
212
197
176
166
174
176
238
227
177
194
257
216
187
157
224
223
198
252
227
135
183
245
244
253
234
218
175
203
266
211
216
124
174
209
243
241
200
221
182
226
226
216
178
224
184
249
231
150
188
161
232
218
237
244
245
176
262
182
192
209
210
208
207
220
200
235
220
232
178
213
173
221
152
261
215
289
156
203
191
191
231
186
170
167
213
219
155
206
253
113
200
201
220
85
191
181
137
192
162
251
175
192
230
226
208
283
240
192
211
170
198
188
195
231
188
202
143
230
171
260
198
146
202
191
270
199
239
242
177
173
251
200
189
250
205
232
191
180
193
219
227
213
193
187
192
206
172
158
220
128
166
253
243
178
198
188
248
211
224
173
192
249
219
193
193
215
190
217
180
174
199
184
150
203
212
204
175
163
231
168
162
197
166
276
167
180
183
235
169
213
168
171
193
190
202
207
178
215
232
204
253
181
185
189
208
232
189
218
193
193
217
259
243
202
216
189
172
196
194
212
193
204
208
258
197
182
200
207
156
239
187
169
167
224
238
186
215
231
242
267
240
219
239
191
185
186
212
169
181
223
204
196
230
138
207
230
160
174
177
245
164
176
200
234
154
198
226
179
238
226
149
171
291
204
168
162
223
171
218
201
200
209
213
177
172
210
225
146
173
198
221
173
120
133
142
169
210
250
173
146
134
207
235
193
132
235
219
245
189
193
192
223
183
199
263
191
246
224
198
154
186
203
166
187
201
218
199
187
189
196
224
199
232
168
175
256
207
204
217
256
175
217
187
135
229
216
231
197
171
215
153
205
176
191
277
224
227
207
215
265
212
182
233
124
255
224
214
262
183
166
205
202
189
213
165
157
249
254
193
252
209
180
235
193
210
123
193
262
213
221
153
191
192
203
198
191
234
185
201
231
211
229
157
230
190
216
238
186
208
165
230
250
214
227
233
151
263
241
220
253
215
239
164
223
149
201
198
239
252
196
144
191
215
220
206
162
200
222
192
190
169
217
248
203
217
176
207
83
212
224
133
168
189
233
185
196
190
229
224
118
249
163
180
208
158
184
149
239
240
229
223
198
191
206
189
246
252
211
269
208
224
188
196
195
207
220
223
194
126
226
167
254
118
185
192
195
181
227
158
252
193
121
116
220
183
205
186
189
143
234
220
186
240
163
245
204
228
214
212
194
161
212
292
220
232
202
202
163
113
224
222
210
150
261
180
225
161
182
204
201
176
186
225
206
196
176
187
225
225
157
259
235
228
182
249
159
188
125
225
270
159
226
187
187
221
180
171
170
157
139
220
185
165
195
222
194
199
188
212
215
217
277
166
123
199
189
169
214
256
200
167
209
208
238
243
137
197
187
191
159
159
169
175
209
179
218
200
205
221
221
225
233
262
258
213
209
165
196
159
199
140
161
84
172
107
228
140
272
116
240
214
235
241
230
205
191
228
210
180
112
203
184
257
207
160
220
190
218
229
201
202
190
249
231
193
157
157
170
230
209
255
161
236
257
212
228
225
161
235
185
218
227
168
190
204
213
234
189
169
267
209
196
181
225
153
221
220
178
201
186
260
163
262
243
223
189
195
164
194
256
226
202
236
195
234
174
157
211
208
228
224
185
200
210
174
177
233
148
256
205
196
196
204
165
173
260
199
180
184
218
178
206
232
147
186
193
252
140
247
166
260
241
260
215
144
254
192
204
216
192
203
159
141
186
199
165
166
154
178
259
174
159
183
237
242
234
179
207
206
194
178
224
221
200
234
224
154
222
243
202
208
185
166
220
167
152
172
157
252
182
162
179
167
137
211
196
168
264
223
182
230
144
241
182
235
132
261
195
155
186
123
245
216
150
184
149
164
227
175
175
225
170
220
188
161
163
142
193
238
252
183
184
235
224
214
124
241
193
179
175
226
230
156
242
104
232
154
202
204
236
191
220
226
245
193
224
226
148
248
227
155
257
218
181
303
206
171
256
214
257
151
190
157
172
182
202
188
180
174
193
237
221
227
204
246
149
212
167
193
169
151
210
190
226
227
220
167
199
203
183
198
208
211
177
214
192
253
236
206
197
150
162
178
204
179
223
168
273
229
213
170
238
166
161
208
212
172
166
274
193
211
206
207
175
223
195
120
189
226
193
180
222
273
196
230
199
226
237
264
236
246
239
184
204
210
170
206
167
154
191
198
197
219
199
228
208
242
261
199
198
208
193
231
197
171
211
200
190
215
232
236
208
182
235
234
209
243
198
230
204
156
234
164
223
242
214
215
240
174
178
184
202
220
212
249
200
191
270
170
237
192
115
195
159
221
153
191
142
206
159
201
255
217
211
191
162
220
223
160
211
203
224
245
259
146
200
110
146
210
173
193
171
179
202
186
179
148
204
206
214
241
166
209
173
187
222
159
151
179
182
184
197
211
267
196
226
195
203
195
182
157
245
191
194
181
191
225
156
203
162
178
189
220
226
179
192
177
165
191
185
156
182
184
165
239
149
118
172
241
220
226
256
171
230
125
129
181
202
201
131
266
202
260
198
208
228
184
151
194
129
269
155
182
204
184
195
208
191
129
200
190
173
218
225
195
176
210
176
213
218
147
172
209
181
241
159
170
279
254
159
162
228
212
239
184
236
134
212
231
201
238
225
239
173
193
175
150
153
137
207
200
151
207
187
241
237
195
206
240
194
221
263
211
184
210
139
132
188
158
216
158
299
219
146
188
105
240
146
215
233
259
212
205
210
253
142
207
226
155
216
231
229
155
242
235
212
187
238
148
190
164
201
220
257
234
217
182
184
181
210
187
227
219
188
179
223
151
232
179
185
205
188
280
198
184
119
198
205
234
219
221
195
177
177
155
189
213
230
167
203
281
170
182
213
203
116
143
185
163
234
222
267
242
148
197
200
195
193
208
193
170
196
207
185
211
180
187
147
199
211
160
222
226
228
206
223
178
218
208
176
203
197
209
178
176
169
173
187
254
197
241
212
239
230
199
192
200
192
206
201
178
148
224
244
201
231
229
186
201
152
245
198
243
257
186
201
204
196
234
216
235
181
155
151
221
178
173
253
205
237
243
192
239
187
146
194
221
216
161
187
214
168
182
178
202
197
160
222
245
175
199
254
214
149
152
179
239
228
201
154
116
231
184
220
251
215
234
197
183
168
245
225
211
180
210
236
215
160
177
186
267
177
198
237
246
217
184
238
134
266
162
187
282
239
253
195
175
158
136
212
200
185
206
188
240
168
189
178
165
204
185
214
121
220
193
213
141
220
211
198
204
220
222
188
133
214
202
223
142
224
171
219
135
145
208
182
197
269
164
189
130
201
219
225
150
154
234
162
200
240
218
174
220
270
228
227
239
207
221
219
163
239
236
189
208
159
168
162
191
223
218
212
259
223
186
168
232
228
185
196
155
178
131
137
176
178
205
191
178
202
204
189
243
259
200
177
203
241
155
201
181
198
208
226
200
219
210
177
267
205
267
233
214
222
246
140
160
172
209
132
183
228
187
269
200
241
198
157
214
186
193
196
159
177
239
211
177
183
231
220
251
202
216
207
181
199
185
212
267
188
196
198
170
227
187
194
200
219
274
210
190
189
250
196
189
236
154
186
162
261
197
214
221
145
231
172
235
226
192
217
171
206
168
219
238
193
152
214
223
223
170
221
196
166
205
210
229
190
206
162
239
167
241
174
217
214
200
178
218
214
150
189
136
187
213
213
141
192
199
188
196
192
187
227
224
267
199
231
135
223
160
176
171
200
171
202
252
187
220
168
223
168
154
186
135
212
180
223
201
210
164
206
191
261
190
147
166
151
210
208
191
165
201
148
219
242
184
236
261
238
201
190
188
201
183
133
189
242
300
143
253
113
207
213
190
236
205
210
229
231
235
188
195
252
244
228
163
150
184
207
226
226
169
204
195
191
205
213
147
190
173
241
189
205
198
181
238
230
202
225
230
176
275
145
204
162
186
209
183
220
178
143
193
182
219
175
197
238
268
188
180
167
197
133
169
198
218
142
222
119
241
215
250
176
249
208
241
165
130
176
218
206
182
198
210
252
187
130
141
182
155
223
151
253
269
243
260
178
180
187
241
206
184
189
231
202
203
132
227
241
239
178
221
150
154
170
193
191
215
186
200
226
222
155
170
208
118
171
129
159
131
239
222
246
151
251
221
218
222
106
173
199
187
231
225
230
155
172
213
218
233
169
175
216
164
219
208
221
288
158
233
233
219
192
212
192
243
135
193
152
198
147
224
177
181
190
199
217
253
142
199
187
186
236
186
247
202
206
160
220
165
196
218
153
224
175
182
164
235
155
206
262
213
162
192
187
240
256
181
211
206
192
248
186
216
185
156
257
227
110
114
199
223
209
116
238
154
157
203
198
165
223
196
191
219
234
181
190
248
218
223
162
184
139
251
217
189
190
207
199
270
236
209
189
151
192
180
190
255
200
172
149
231
192
227
226
184
241
130
147
204
218
266
199
185
223
168
211
201
209
258
165
164
214
224
146
181
171
216
208
160
209
148
234
160
165
196
158
212
247
190
189
215
249
226
263
190
214
219
212
233
174
176
250
223
170
150
89
185
219
228
185
199
154
168
235
167
193
189
165
216
159
190
227
287
172
233
212
235
168
214
230
232
220
150
156
172
232
237
204
161
222
212
142
244
241
220
164
181
223
187
180
249
216
282
217
208
148
188
193
167
192
181
164
217
213
198
179
161
234
221
203
186
175
173
231
223
241
223
172
268
213
171
235
229
223
180
176
166
239
272
207
163
231
196
175
145
237
124
217
172
249
181
125
222
220
198
174
152
140
197
197
209
228
222
155
203
189
156
187
194
184
200
192
160
240
171
138
211
206
199
184
155
189
234
205
218
186
232
184
162
163
178
112
166
174
232
246
165
232
202
198
209
158
277
271
163
243
170
215
150
168
254
228
172
158
177
190
195
145
166
217
195
172
203
251
219
239
200
198
178
139
197
242
275
166
236
266
206
141
259
155
210
223
149
123
177
181
192
227
228
201
266
245
225
212
308
204
166
211
239
202
219
255
193
199
198
220
221
187
235
140
201
226
183
209
175
230
214
190
235
216
207
184
178
196
218
274
218
237
170
202
213
205
203
182
159
197
233
199
167
162
189
249
184
222
193
250
257
187
162
194
201
168
237
220
188
174
164
194
242
206
237
186
192
90
218
209
204
200
114
210
206
193
257
221
173
129
190
217
209
253
210
212
130
224
215
181
199
235
210
181
170
262
211
169
253
209
181
226
178
199
206
228
247
219
191
152
178
227
209
222
182
234
212
193
217
143
185
215
196
206
161
202
199
192
213
209
235
173
231
188
182
180
229
139
155
183
170
219
229
220
197
120
216
193
221
256
171
219
248
208
137
183
234
159
208
230
149
261
180
223
217
186
225
158
188
159
251
176
160
144
185
197
173
242
213
179
207
195
250
210
221
207
163
220
207
158
162
166
247
194
192
171
202
136
250
190
184
262
225
220
211
165
188
181
240
264
218
145
192
241
242
218
219
243
199
193
214
128
210
175
176
265
209
215
204
192
204
286
209
224
224
229
249
193
145
142
167
231
167
178
259
139
241
183
239
155
172
200
169
198
199
211
192
179
184
209
176
161
243
212
185
186
189
172
210
187
156
209
272
188
162
186
244
188
221
212
174
186
206
146
252
184
241
213
189
230
235
156
160
221
220
195
183
179
109
187
190
59
210
240
219
218
225
175
235
203
175
212
150
147
217
175
193
271
170
237
189
176
228
212
182
171
143
235
147
187
183
177
227
168
236
204
158
208
244
143
209
231
183
256
209
198
206
178
173
157
195
213
179
131
184
176
236
183
178
189
164
246
179
265
226
195
125
226
184
167
215
155
229
173
210
171
189
128
264
156
175
247
193
184
206
196
190
271
160
191
180
174
220
228
251
180
200
152
219
221
270
228
114
181
175
154
249
187
226
186
210
234
185
221
194
162
204
238
237
216
185
187
180
212
218
190
225
210
192
180
238
134
258
136
180
203
232
237
219
261
171
215
222
261
250
223
222
263
196
183
185
231
184
247
165
179
183
148
216
201
225
206
236
252
190
220
229
233
216
223
187
215
217
260
201
268
170
221
196
239
220
218
175
256
244
196
243
208
220
226
201
141
215
161
153
220
272
207
235
201
171
209
188
206
212
225
269
217
194
207
185
216
179
189
228
269
179
221
134
160
157
136
222
168
164
188
188
254
192
220
200
229
186
184
253
245
193
241
208
145
196
250
234
224
232
234
200
201
102
130
228
232
261
221
255
246
198
254
142
165
216
209
168
170
189
229
216
190
153
199
202
203
250
223
276
176
166
227
194
230
136
211
209
228
226
235
236
243
141
235
157
203
183
206
193
174
202
187
236
170
194
244
245
208
182
237
158
214
172
200
171
198
192
199
229
223
182
207
192
226
259
176
236
200
197
193
158
247
190
193
177
191
206
231
203
288
200
171
217
144
199
221
186
187
165
243
171
201
229
195
240
250
188
197
146
170
248
227
220
246
230
168
165
235
227
182
247
174
236
204
155
161
223
169
258
234
151
199
250
242
227
189
187
186
239
216
204
181
172
203
235
206
222
245
182
158
203
191
220
211
205
175
237
166
198
224
160
164
237
184
132
232
203
178
183
218
153
162
151
227
231
199
249
193
237
170
189
178
221
228
226
117
256
197
210
240
137
216
145
93
188
217
243
204
221
197
178
189
186
184
162
197
186
237
195
250
247
228
229
215
166
182
196
231
199
236
195
219
219
176
196
257
203
190
222
176
211
165
229
168
182
172
228
198
198
224
179
191
174
222
222
193
179
176
261
220
189
193
229
192
219
202
210
172
210
160
185
184
251
204
194
200
193
183
153
208
195
230
193
225
209
171
198
219
217
188
212
172
160
202
201
200
186
195
258
209
209
223
246
102
220
171
230
258
217
246
164
246
255
247
200
196
315
135
239
211
174
146
239
210
221
176
192
199
212
178
189
205
216
213
184
185
170
214
214
238
259
195
214
168
254
127
179
226
219
127
189
215
232
170
208
245
217
176
226
188
191
211
239
200
249
218
227
184
213
209
203
140
208
190
185
191
185
185
213
168
176
217
214
115
241
254
111
210
183
210
171
185
231
252
183
260
240
163
281
230
270
197
216
167
205
193
229
205
243
216
153
178
217
149
161
182
243
216
208
200
173
219
202
250
168
138
220
198
169
236
182
195
251
131
219
204
230
235
201
211
224
237
208
209
188
192
187
233
147
231
207
210
173
248
192
208
224
164
142
147
203
225
200
146
244
197
202
215
242
219
189
178
199
177
238
172
139
226
150
250
165
194
184
274
196
266
191
206
219
193
259
210
134
156
209
252
139
191
233
172
166
212
219
141
192
218
188
236
192
213
194
184
193
205
187
193
145
215
234
243
258
211
221
171
195
256
162
205
191
148
180
193
243
254
180
235
224
260
171
239
231
163
177
174
215
184
201
161
209
205
222
193
194
254
101
191
257
173
223
220
203
242
187
218
213
177
249
157
104
199
183
212
211
166
225
209
211
169
213
211
231
205
182
223
218
113
168
241
205
194
267
278
216
248
137
155
166
146
277
223
207
149
192
168
242
226
182
255
221
248
210
206
89
182
168
219
194
209
170
153
242
196
244
207
215
142
244
173
164
220
136
255
255
216
187
234
157
201
135
206
211
208
206
249
160
220
254
201
197
246
235
200
127
184
175
215
196
210
156
182
204
187
170
198
216
194
237
207
216
218
233
198
125
211
202
151
219
212
251
245
202
216
211
252
193
201
224
223
239
205
189
198
215
185
176
217
194
221
167
186
228
208
211
185
223
203
177
247
168
216
242
190
267
209
211
209
173
246
207
158
259
237
174
186
145
213
189
173
195
237
226
262
230
203
187
175
249
103
192
187
224
150
186
154
141
215
235
151
216
171
181
120
183
217
230
222
214
139
206
164
167
170
197
173
182
238
141
250
177
236
151
226
154
189
125
185
165
170
237
195
272
223
191
245
99
263
211
185
182
259
196
168
231
211
191
222
218
191
233
235
170
280
254
171
224
234
187
196
191
186
184
216
222
146
181
224
108
170
189
276
171
195
196
154
222
191
193
150
225
206
214
201
127
156
151
199
205
223
183
207
198
127
170
212
265
143
115
290
205
223
208
195
225
201
207
168
187
263
229
164
189
173
205
215
156
157
238
166
162
188
215
261
169
173
208
156
212
203
179
174
197
182
133
204
206
161
122
240
172
205
210
201
232
195
209
163
223
223
266
233
126
224
173
227
225
219
179
158
216
217
207
214
153
270
151
156
175
201
198
210
213
201
140
173
182
201
237
229
164
253
237
195
227
147
210
188
187
242
211
212
266
206
255
225
169
211
175
154
193
206
229
171
160
175
157
178
189
226
186
232
232
135
180
155
163
179
228
180
208
133
213
226
209
236
169
176
158
267
212
204
182
190
198
184
234
137
133
269
215
162
228
266
207
235
224
220
222
244
229
188
171
249
175
229
158
237
200
216
195
189
221
139
166
188
208
229
195
265
237
168
228
208
154
227
219
224
230
193
144
220
214
213
187
207
201
156
181
180
182
175
238
183
169
165
241
171
258
178
149
220
232
133
246
219
185
196
239
186
253
159
186
127
164
121
216
177
195
188
250
186
148
239
233
239
168
252
253
148
242
203
163
161
154
155
141
238
196
281
202
183
229
211
167
128
224
136
209
207
159
169
118
169
194
226
234
199
249
200
214
259
181
197
230
252
174
196
227
219
201
192
260
135
179
180
233
203
242
161
216
234
247
195
188
189
184
267
232
253
234
157
196
220
228
164
182
234
202
234
221
202
181
103
213
174
214
124
154
188
220
149
192
138
211
271
229
175
170
186
235
189
244
218
140
193
190
199
230
180
259
215
161
189
188
196
255
216
148
217
137
194
227
262
217
192
141
200
231
240
168
135
153
175
181
234
215
167
201
245
263
243
214
217
241
251
221
177
243
208
219
226
219
182
216
254
214
222
235
184
259
165
214
223
166
225
238
143
220
160
215
227
171
227
238
256
162
185
196
250
162
198
187
209
176
228
217
235
200
187
186
204
196
165
119
188
171
186
235
140
223
242
268
167
197
172
203
175
214
207
202
167
194
226
194
182
169
171
215
218
226
174
232
194
189
207
196
201
236
132
253
240
166
209
210
175
156
247
202
168
207
206
155
196
222
164
219
151
228
236
218
206
216
172
216
209
168
244
234
232
238
217
182
144
217
183
261
192
191
230
183
197
144
206
147
168
230
207
186
216
277
228
226
221
224
163
172
257
235
228
231
193
183
222
205
199
222
152
183
150
131
267
140
119
185
213
191
217
179
235
242
208
230
153
154
207
193
189
162
233
231
180
215
228
141
213
174
219
205
214
230
148
212
175
173
248
231
195
217
199
244
176
217
200
271
242
201
206
268
159
159
187
235
212
192
198
189
153
174
156
152
229
234
152
242
241
176
220
170
236
227
255
261
220
196
164
164
161
170
243
188
224
177
196
214
249
192
173
228
257
230
204
215
229
231
235
123
216
181
193
200
215
259
168
236
167
287
186
142
241
187
213
229
202
189
162
209
157
254
192
223
288
253
153
171
231
213
139
188
188
246
253
172
199
222
181
217
175
181
253
182
209
195
219
211
124
141
169
216
167
246
212
206
228
188
153
259
152
190
242
214
232
216
265
212
219
218
178
226
209
210
207
165
190
213
182
206
175
228
197
240
177
232
261
178
195
228
219
210
238
244
170
187
204
233
115
207
188
191
217
145
215
163
232
202
264
156
179
180
266
217
212
255
192
181
116
232
218
139
258
176
269
130
208
156
162
205
200
227
150
182
189
217
201
275
206
151
194
249
181
236
219
237
212
198
230
140
115
155
226
105
184
241
215
211
212
256
179
192
223
162
163
180
221
233
243
234
164
179
184
248
257
197
230
223
243
150
221
168
162
204
265
264
248
166
161
225
195
240
268
185
239
179
225
196
193
202
255
174
142
257
160
216
186
124
189
167
195
233
170
160
158
243
193
211
248
208
244
134
152
196
205
269
206
172
228
220
204
183
223
133
218
200
214
257
232
123
211
156
197
201
224
210
200
159
228
181
215
189
233
192
237
168
243
227
185
192
187
201
171
203
249
171
209
265
226
194
174
117
197
202
201
206
205
158
201
210
204
172
212
183
227
200
223
189
213
163
183
230
220
175
158
231
169
236
143
237
177
270
183
199
235
222
147
244
233
222
229
136
121
159
256
257
224
204
242
203
199
222
181
209
262
170
226
224
181
152
263
282
282
222
171
216
253
214
201
142
201
141
181
252
182
225
222
168
188
276
180
218
209
178
197
186
207
178
186
218
136
211
201
211
206
245
100
187
209
213
205
233
262
192
234
186
178
187
234
166
240
172
235
260
177
256
221
195
141
197
240
220
185
234
185
265
178
261
162
185
106
211
205
246
188
202
175
210
221
219
134
131
145
162
160
217
228
192
192
177
193
211
159
202
218
195
236
199
223
219
171
233
166
212
179
212
208
177
233
199
236
195
182
190
244
263
188
189
178
223
145
268
191
194
225
198
257
172
160
195
212
190
175
199
209
229
189
126
152
234
140
219
206
200
218
232
223
249
218
197
214
219
216
150
156
207
206
195
135
222
172
199
187
259
178
226
222
283
153
240
252
160
203
183
116
189
242
289
242
155
164
180
229
183
194
201
157
88
156
174
199
216
194
203
188
171
175
191
167
204
213
236
166
195
206
172
202
238
218
254
278
242
161
239
224
239
176
274
195
189
218
161
210
173
157
198
210
203
244
169
183
256
253
187
165
220
162
159
225
204
184
208
205
248
252
236
203
229
201
243
226
198
207
192
275
157
222
232
206
179
168
171
229
203
212
166
195
203
217
194
194
227
238
134
236
204
164
238
199
218
200
162
165
155
211
190
149
206
207
211
195
180
184
190
169
230
227
203
245
219
264
196
193
173
169
227
260
195
215
181
197
174
124
208
167
157
154
139
180
190
201
181
217
241
198
215
182
209
180
244
166
202
174
215
221
226
170
254
203
182
238
155
205
209
205
203
180
214
242
191
148
187
184
170
189
206
161
198
117
203
223
268
190
133
241
219
167
164
205
175
215
164
231
212
193
228
209
177
182
202
218
222
173
236
180
197
216
247
237
220
216
187
153
161
200
189
201
206
198
198
175
181
275
94
172
206
219
212
219
250
235
194
224
179
208
201
224
184
218
251
205
185
198
215
158
238
142
156
213
205
223
201
195
209
222
229
139
210
268
153
183
167
234
139
139
259
191
193
245
206
227
217
196
195
247
229
185
236
212
174
202
167
195
196
247
193
148
195
199
212
152
238
218
152
252
188
160
176
154
216
171
183
181
185
218
177
157
190
253
248
252
125
205
208
166
159
193
232
240
188
172
186
151
205
231
191
243
214
180
251
223
135
197
154
249
201
159
213
175
177
209
194
189
213
217
150
186
208
218
201
149
194
170
216
201
225
148
169
252
259
224
209
146
243
227
175
189
262
188
204
243
226
158
183
268
199
236
219
207
237
236
184
241
148
177
268
253
176
159
169
121
195
218
199
183
216
176
236
209
163
182
237
183
233
142
224
191
145
147
219
190
235
204
202
241
178
173
231
213
213
143
217
157
239
245
225
182
201
220
201
154
208
184
205
191
158
193
197
201
245
181
225
172
196
183
191
204
200
206
187
229
179
230
192
182
259
218
212
134
219
152
244
146
249
115
227
229
172
226
199
191
192
204
188
211
168
270
133
171
194
226
179
208
229
262
235
172
153
175
152
238
195
246
186
251
131
197
188
213
153
193
256
187
224
211
201
228
202
218
134
197
219
176
186
237
197
248
203
189
247
196
143
182
143
235
165
183
177
241
211
226
177
156
198
206
229
223
253
157
195
206
199
194
247
208
276
234
226
241
188
201
159
232
182
185
189
241
175
242
180
268
230
279
221
173
135
195
218
134
266
173
252
144
139
177
209
180
223
173
148
215
158
212
262
197
221
196
201
274
235
178
195
168
219
161
227
179
208
162
189
165
185
196
229
161
183
227
201
189
184
203
216
201
250
200
194
196
187
247
250
201
182
186
183
189
253
183
185
168
186
221
179
212
178
218
232
191
257
280
194
164
238
218
197
173
227
197
203
197
213
188
186
200
225
196
203
221
176
181
224
148
151
198
182
201
215
206
203
181
196
187
214
239
247
195
258
192
195
249
206
210
181
207
231
201
214
208
216
202
170
184
165
232
144
210
259
257
166
130
228
155
226
208
157
215
227
246
261
203
197
209
223
216
242
164
166
227
220
177
214
236
282
173
223
213
283
194
172
201
213
167
256
176
223
182
152
181
223
125
236
221
198
178
146
167
151
163
206
209
180
170
200
190
213
180
228
170
187
226
197
217
189
151
248
168
247
171
227
176
231
250
167
207
232
224
189
214
141
158
109
161
137
217
134
201
154
248
225
198
207
162
247
210
173
166
193
241
215
232
233
194
166
250
240
187
283
230
256
141
308
187
198
247
237
248
242
201
196
221
245
226
149
168
206
219
144
201
190
224
104
232
224
239
174
218
233
201
251
232
185
175
199
225
144
179
198
187
209
90
233
195
225
205
182
233
210
200
172
208
177
198
264
199
226
201
220
185
201
129
218
189
200
253
241
243
186
216
230
162
200
182
182
212
136
188
147
256
186
165
244
179
195
140
170
225
155
145
199
250
158
142
174
253
203
218
209
211
134
215
196
257
215
228
206
138
237
186
221
221
138
152
204
229
189
212
236
152
241
192
172
232
195
188
161
203
193
218
199
282
183
204
179
201
207
224
212
221
204
241
164
199
164
190
187
150
228
176
232
143
188
132
185
220
254
209
224
242
210
184
264
194
227
274
187
174
255
172
179
192
160
245
212
238
236
161
186
205
181
181
133
182
222
194
213
196
216
187
148
260
201
257
109
201
180
222
174
162
163
211
168
208
225
180
266
258
143
217
190
189
159
248
187
217
197
209
236
214
172
208
185
268
230
176
194
251
196
121
205
234
177
191
164
214
196
157
257
196
191
142
207
208
225
237
197
182
207
181
203
161
167
192
197
177
204
148
149
185
161
201
182
229
161
199
189
190
248
172
212
246
171
141
146
158
185
196
231
172
170
210
249
193
168
152
122
149
226
220
225
185
217
222
217
221
221
193
190
183
263
241
201
211
214
223
191
275
158
215
173
186
226
233
197
186
184
148
145
222
248
177
180
194
207
231
177
236
146
222
204
210
190
146
180
175
200
204
154
165
184
222
173
160
217
219
209
228
163
249
181
143
207
233
232
163
198
189
195
207
173
185
173
167
230
231
237
273
212
133
157
249
215
124
183
240
254
112
197
179
247
188
169
132
185
171
189
225
178
188
219
247
225
215
226
198
212
230
245
211
208
208
260
215
150
247
234
261
194
136
215
133
184
183
201
170
147
208
185
214
168
268
215
213
185
178
215
214
189
213
174
192
172
187
270
204
173
240
263
244
251
162
223
201
147
203
249
212
228
194
155
255
201
133
200
196
196
190
249
248
232
195
150
189
191
244
161
257
180
196
119
185
258
220
247
226
200
234
201
253
223
191
239
202
271
159
204
155
243
200
157
220
207
177
169
213
181
224
217
211
201
236
230
178
291
225
222
164
204
287
222
240
190
259
219
193
241
198
199
212
160
187
195
204
193
220
141
216
199
180
162
140
259
228
249
168
184
163
210
262
204
199
229
112
186
182
213
203
242
203
230
163
233
281
204
225
211
182
242
233
170
167
183
205
189
193
194
183
144
220
143
272
217
262
138
194
210
269
207
216
257
205
255
203
166
193
244
192
227
193
227
167
194
194
201
241
229
143
217
221
123
180
151
178
218
153
190
181
264
239
180
218
164
221
244
194
201
219
255
181
214
147
214
197
191
239
226
179
196
181
227
214
224
229
173
163
229
194
172
206
126
231
239
206
158
264
195
225
155
197
218
225
191
217
233
185
187
205
209
178
213
223
205
229
196
204
148
253
178
211
212
189
233
180
154
207
173
201
166
133
173
256
225
169
206
249
184
220
191
192
119
171
252
184
183
241
192
182
203
176
173
187
173
247
215
189
229
234
196
246
198
222
267
176
230
233
142
163
151
168
164
176
227
233
208
202
132
182
181
247
198
210
192
190
176
168
247
186
169
229
202
179
138
241
214
136
199
149
233
214
169
157
226
114
178
175
166
188
220
201
146
215
163
213
159
208
231
159
168
218
164
185
245
224
224
154
184
188
164
273
183
145
257
209
174
148
218
208
184
127
233
245
226
236
198
189
229
259
143
225
205
197
226
221
241
203
201
176
242
210
161
222
222
263
166
249
157
248
203
158
210
222
171
167
163
165
231
171
199
116
198
213
225
197
188
207
164
145
193
192
223
172
186
143
232
217
162
171
212
213
164
247
217
197
124
207
180
235
124
233
230
233
173
242
208
271
207
154
207
218
223
249
203
232
184
258
198
217
185
243
182
197
163
155
224
168
213
176
299
165
226
180
207
219
234
222
150
181
184
217
140
172
161
247
196
204
195
224
217
196
113
153
204
212
249
271
223
177
191
261
145
232
206
192
160
143
224
148
150
210
265
154
212
236
250
182
170
176
234
151
211
256
221
209
217
195
183
257
218
172
165
153
257
187
219
153
232
155
228
231
211
152
195
190
145
165
178
206
234
172
148
152
243
208
184
224
195
182
208
224
190
224
223
183
184
204
241
240
189
238
186
241
194
211
254
214
183
197
196
186
164
166
209
165
118
198
235
162
150
141
189
186
184
152
222
226
150
129
178
202
206
220
190
210
229
229
232
188
182
168
251
173
230
197
252
203
223
147
139
245
259
203
192
179
214
202
172
251
144
183
266
171
200
254
235
192
149
153
234
163
199
229
213
232
271
181
243
152
247
194
159
132
195
201
173
143
124
212
253
228
227
240
170
211
172
226
224
184
127
199
230
242
178
206
193
220
204
206
181
262
236
217
180
206
259
183
214
185
236
197
230
174
205
255
193
171
193
148
237
166
120
201
212
262
242
225
185
164
147
205
216
197
204
210
155
235
217
197
186
168
249
221
209
177
144
149
160
207
188
226
221
181
237
215
261
152
148
190
183
227
211
189
233
152
231
152
159
182
176
195
217
159
204
210
193
237
139
192
195
167
125
233
213
201
228
207
215
240
254
135
176
158
239
245
248
151
186
178
154
223
283
145
231
182
207
236
254
233
196
190
196
186
214
228
194
196
180
171
237
255
233
163
173
272
150
169
200
156
217
157
206
202
238
155
242
186
139
207
185
176
109
178
207
228
192
269
184
167
133
224
189
168
183
154
184
155
204
147
226
213
158
219
242
231
221
185
223
213
219
225
191
173
189
163
199
169
262
138
169
177
224
177
265
223
185
238
157
194
210
131
217
228
193
213
234
230
167
237
262
193
224
260
187
232
145
173
206
225
226
225
190
146
224
160
176
163
128
196
288
159
223
203
216
171
250
240
219
219
197
217
194
165
202
215
180
198
136
193
186
224
191
190
155
191
221
163
222
171
206
231
218
189
151
245
204
255
210
240
272
187
237
225
150
242
164
204
178
161
272
261
195
194
236
181
228
227
240
192
207
131
211
195
217
132
171
223
125
164
203
178
180
173
174
204
197
184
183
260
173
189
265
242
240
250
207
198
196
197
249
202
228
207
154
218
209
289
212
146
161
140
245
201
240
200
182
235
170
259
173
194
174
220
216
186
139
209
176
227
199
154
228
185
214
187
195
224
203
236
167
169
220
192
211
194
202
196
252
184
228
144
127
233
213
128
214
227
161
227
200
191
191
167
160
147
164
203
162
110
231
151
229
167
254
155
225
131
214
199
240
209
165
212
220
208
191
222
187
190
188
254
180
258
125
232
174
156
183
153
250
198
284
218
250
202
273
263
222
224
240
270
230
172
244
247
252
259
204
270
242
231
223
223
235
219
261
216
215
242
216
247
188
211
215
193
139
188
188
235
138
185
221
182
145
215
226
234
224
171
183
220
218
144
177
194
217
239
187
229
217
175
118
210
194
184
173
217
145
178
172
193
248
229
239
179
196
180
220
161
256
235
179
205
189
198
139
196
169
247
173
209
226
207
176
189
173
173
198
284
211
202
224
205
191
155
215
163
160
237
170
140
193
165
217
251
211
164
152
191
125
201
209
188
221
200
179
212
207
182
186
148
179
285
146
205
157
187
209
197
161
233
136
162
179
163
222
161
182
159
238
180
188
200
198
175
227
164
179
189
222
209
163
211
218
200
181
194
177
246
202
195
158
213
237
182
198
265
187
177
169
200
208
116
221
250
234
213
226
191
261
205
197
167
147
142
193
254
259
194
126
247
250
256
210
196
181
192
166
205
191
203
238
179
247
274
233
204
181
137
131
228
214
178
128
193
169
155
211
193
189
114
151
233
230
225
211
166
213
218
250
245
268
186
186
202
237
218
176
187
288
285
220
182
250
173
257
228
236
156
173
190
189
250
118
235
213
152
192
212
234
173
214
202
204
226
176
230
200
255
215
232
155
221
145
251
188
170
216
240
136
169
157
221
241
198
206
235
252
187
154
152
259
166
224
150
214
163
207
193
199
165
178
215
195
170
162
201
230
206
200
199
192
259
233
229
253
197
196
186
215
181
162
231
252
166
211
141
155
178
240
228
196
193
285
225
189
186
198
201
167
121
210
192
248
177
194
293
205
149
229
220
175
216
183
157
264
148
183
233
221
200
261
224
252
181
199
210
199
222
160
295
132
152
214
236
227
214
207
196
214
246
158
176
117
175
181
225
190
248
192
209
142
227
223
130
253
202
185
194
224
145
190
121
208
231
218
165
204
172
227
215
188
260
203
199
252
185
191
185
185
123
276
200
158
143
185
225
177
167
137
210
216
235
198
188
214
189
154
222
178
232
168
205
226
166
166
200
196
194
229
219
172
210
196
243
170
240
178
175
213
155
154
146
181
247
193
182
109
209
123
196
206
226
220
256
229
151
249
254
186
179
229
152
201
187
215
223
224
182
266
306
226
178
203
209
194
144
202
193
187
211
179
257
165
240
265
181
221
235
213
256
212
201
149
179
177
167
176
211
253
260
189
192
145
236
225
227
176
204
159
217
170
145
191
206
125
209
206
166
190
203
204
227
201
207
205
192
256
207
148
282
206
172
222
155
181
185
160
208
189
206
183
185
197
178
127
217
197
157
207
197
220
228
217
187
238
166
181
134
212
173
225
229
183
160
157
206
222
259
237
213
181
275
205
228
232
176
225
191
188
229
185
255
236
201
218
183
221
216
221
206
199
177
174
182
167
237
222
183
108
159
223
216
226
156
222
182
202
254
209
129
166
229
195
239
230
213
234
233
236
135
238
149
170
172
212
181
253
182
165
208
174
199
127
140
243
255
238
214
219
121
239
216
189
212
180
160
150
132
147
228
156
195
175
118
137
184
179
208
196
240
210
188
237
226
159
230
248
206
180
216
133
195
198
221
182
161
154
221
226
123
253
197
182
169
207
242
232
242
189
227
185
154
160
142
245
197
159
244
149
226
243
160
221
190
195
207
184
233
219
248
179
242
235
239
227
206
180
178
228
230
233
170
172
166
179
206
175
246
179
190
232
160
135
200
220
162
256
215
180
242
221
245
188
176
157
256
170
166
211
131
191
220
132
241
224
232
235
238
153
216
180
178
165
205
120
195
138
225
205
235
234
196
202
209
215
153
246
156
177
166
164
215
253
223
216
115
193
263
167
247
177
250
186
241
191
189
145
183
236
217
182
223
201
189
238
153
228
192
211
200
220
262
203
254
194
180
208
160
169
151
158
225
233
263
152
234
155
223
243
251
154
207
196
205
160
235
171
175
241
190
210
154
238
197
216
200
201
245
210
214
218
209
178
210
178
178
155
194
203
232
134
205
242
155
158
221
145
127
197
216
228
174
213
187
134
201
173
159
192
238
169
195
208
145
160
214
190
201
223
186
192
282
229
144
167
151
133
178
234
174
264
202
218
173
197
177
263
236
205
223
216
189
163
176
198
250
153
147
178
163
242
205
175
229
239
246
202
157
204
181
206
203
156
147
197
216
159
210
207
211
190
232
176
145
170
275
163
176
181
221
200
182
195
233
175
210
237
217
222
207
219
175
186
208
255
196
157
174
271
176
215
229
163
181
262
164
235
208
216
204
196
201
201
183
245
199
157
251
153
123
190
226
253
171
198
228
200
243
159
215
158
134
197
164
175
214
216
174
112
235
161
188
169
185
248
218
151
191
220
224
144
248
240
230
219
233
107
179
208
155
186
294
251
175
189
176
175
180
241
203
192
251
216
226
228
133
207
198
227
203
198
275
239
238
226
176
210
234
189
244
178
165
148
259
191
199
251
164
197
190
229
211
211
238
228
148
240
213
162
205
163
175
260
208
258
231
201
168
199
243
158
189
183
249
266
155
232
194
205
193
183
209
193
197
214
195
232
237
267
212
151
220
246
228
164
210
166
181
206
202
242
181
208
149
220
197
238
219
162
224
178
223
259
252
169
273
161
182
123
234
213
227
215
177
195
251
225
184
186
176
189
276
177
175
221
206
190
186
188
223
152
171
171
211
186
221
210
218
221
181
224
167
186
237
143
138
199
190
212
274
245
230
200
228
199
247
207
255
222
176
211
205
214
186
267
237
200
186
191
204
231
241
129
258
253
231
215
222
189
153
150
196
179
217
223
216
166
215
185
208
195
222
189
189
183
160
209
169
237
159
205
222
197
229
169
179
140
229
215
202
215
221
195
154
174
216
191
249
190
209
206
253
145
176
209
224
202
121
169
174
155
190
237
213
188
197
208
251
182
217
179
132
186
213
160
276
174
196
201
200
171
241
216
184
201
247
193
223
185
174
210
220
172
172
167
261
181
217
212
217
204
204
205
159
195
234
224
191
175
240
202
163
185
197
185
259
226
259
192
172
227
170
210
270
156
213
241
196
247
146
182
154
259
222
211
191
242
195
148
235
167
251
238
249
235
205
154
170
233
212
256
218
208
146
189
192
163
239
233
185
222
179
212
230
188
183
181
249
178
201
232
166
215
89
155
199
141
222
219
164
178
179
218
237
196
206
168
250
177
158
208
188
211
183
269
254
219
274
213
248
162
137
263
219
175
194
171
184
180
210
198
220
125
208
207
150
204
196
237
189
231
159
213
173
226
196
176
171
241
151
132
195
185
153
244
241
233
195
245
237
231
205
248
168
171
178
204
178
253
215
173
203
219
225
259
163
207
199
215
149
206
191
185
242
197
161
211
184
268
246
201
202
178
179
189
233
187
234
169
163
176
230
163
237
226
196
244
219
175
160
258
208
196
222
217
182
240
197
216
228
185
194
168
201
174
169
211
195
156
153
207
238
193
213
209
207
247
206
234
166
178
173
217
172
114
153
169
124
179
161
194
186
280
152
190
208
164
234
264
209
198
182
258
283
237
213
213
248
242
265
244
179
289
166
227
233
138
154
167
195
223
124
171
239
281
218
223
200
230
214
217
168
256
184
213
196
207
244
206
233
193
209
223
145
151
169
180
198
228
207
181
152
218
201
212
232
223
204
207
178
204
157
178
219
162
197
198
161
223
225
243
246
149
231
166
233
219
194
200
134
142
194
173
172
210
149
201
224
271
205
148
143
247
188
251
174
198
223
272
215
204
166
218
173
208
244
245
218
242
194
164
195
221
224
247
194
223
242
180
182
197
212
246
170
202
261
276
219
197
210
158
235
273
143
221
218
115
210
227
212
176
207
261
157
207
196
226
227
212
150
165
170
180
194
204
222
171
188
219
261
208
178
243
254
211
190
163
181
189
230
159
190
189
195
189
181
210
236
198
190
166
214
205
222
273
170
253
211
229
214
202
189
239
254
130
201
232
179
128
238
196
192
227
252
213
244
260
181
113
214
229
182
210
204
211
218
201
188
192
217
205
251
238
172
225
221
169
179
211
175
255
183
222
249
203
164
155
194
113
233
257
226
211
173
235
214
199
196
164
163
228
232
196
251
251
233
200
187
177
136
228
205
222
153
189
224
230
177
181
218
245
226
189
203
218
193
167
248
195
279
189
194
158
220
203
223
243
203
201
182
220
150
191
222
237
207
216
233
167
184
172
166
210
204
204
173
200
249
206
150
268
131
220
158
222
229
289
171
222
200
191
241
212
192
255
214
246
165
213
235
206
204
196
224
169
240
120
183
188
213
148
169
172
174
254
247
176
241
214
201
200
204
272
205
212
179
120
178
239
226
225
132
158
171
128
227
158
189
152
211
171
188
235
172
109
246
211
210
158
262
153
183
197
145
195
137
134
160
201
246
162
201
233
235
234
150
161
222
190
121
170
174
229
201
161
208
192
206
256
164
261
232
238
228
160
169
235
196
230
140
252
156
186
222
191
226
245
169
196
180
172
130
185
212
181
165
244
232
206
232
162
243
230
193
167
148
204
224
175
204
217
180
257
202
204
214
257
242
231
247
154
204
200
210
219
208
230
187
153
275
197
222
209
209
167
198
185
157
244
210
161
191
222
128
199
181
187
240
213
200
220
220
142
177
233
215
183
176
159
227
158
206
239
162
222
213
229
215
185
198
183
132
214
217
203
219
229
251
160
160
240
184
174
232
172
201
165
166
118
259
196
137
181
231
209
166
221
138
229
176
156
258
116
212
209
193
181
228
215
218
218
214
221
163
206
242
157
254
154
214
225
164
254
160
192
232
194
198
276
221
189
174
241
191
245
201
159
149
196
191
197
247
208
199
199
174
249
229
207
226
215
223
217
243
221
237
217
187
208
151
173
176
234
222
227
247
161
187
157
217
208
206
234
185
128
197
221
166
183
220
210
198
186
216
265
198
205
212
172
191
176
195
112
251
189
186
261
192
238
208
159
212
200
242
283
194
172
259
217
169
194
177
196
252
183
206
191
247
198
243
218
247
195
249
190
178
215
195
197
161
185
233
204
193
186
214
242
139
180
199
174
209
252
195
230
169
208
166
231
182
160
255
148
225
214
197
241
114
127
227
231
206
215
180
217
211
161
186
180
224
119
168
228
178
218
198
150
176
161
219
234
207
238
256
219
213
130
213
144
197
160
196
204
242
208
122
185
224
215
216
176
250
202
118
241
192
172
213
150
247
145
198
164
253
240
250
211
196
179
168
174
163
213
271
218
181
242
226
193
249
213
216
186
172
226
144
204
192
202
214
220
190
174
145
255
225
201
220
242
226
117
201
241
232
163
234
201
211
273
214
164
169
144
164
181
175
185
197
264
202
202
227
187
195
227
194
195
253
239
257
245
187
237
235
206
260
238
189
188
181
178
157
207
250
156
162
209
140
175
243
214
208
167
202
204
173
121
224
204
176
198
252
149
258
154
219
193
232
144
226
248
228
205
200
210
202
236
171
210
201
155
155
163
226
189
161
183
196
246
206
157
198
228
196
169
224
198
133
196
243
225
277
184
243
212
247
233
258
272
135
209
145
202
241
208
199
204
194
147
215
243
250
184
227
197
157
243
212
159
150
168
235
165
228
219
233
202
246
195
187
216
149
158
237
241
208
260
198
231
221
202
217
175
200
125
256
216
168
207
164
231
207
252
213
166
198
176
207
200
195
169
94
187
147
161
213
204
187
202
231
176
206
269
251
194
229
199
197
139
193
177
183
202
239
190
212
203
184
264
186
274
85
219
217
218
186
188
207
229
190
166
177
196
196
169
196
228
214
204
205
256
196
287
275
172
190
187
211
204
199
234
164
234
263
252
206
178
267
185
196
183
239
191
218
235
197
121
215
244
207
200
180
177
159
148
184
213
244
218
239
198
218
199
198
245
241
259
248
206
234
234
215
209
179
199
174
227
214
200
134
250
134
209
150
203
279
189
168
170
161
173
192
221
150
252
226
180
157
195
232
196
181
215
148
185
218
203
287
224
189
254
259
251
216
155
244
197
165
206
170
207
178
219
237
163
224
257
177
199
213
179
180
180
195
233
228
182
180
227
159
222
231
209
149
157
250
145
122
147
182
203
214
243
218
217
165
181
213
165
219
177
215
233
162
230
246
162
182
185
216
155
245
148
209
153
186
208
213
186
199
200
149
183
196
178
177
192
168
202
143
222
234
273
242
262
253
95
208
172
181
168
229
175
206
189
160
189
228
211
174
271
183
189
227
176
255
203
215
213
212
273
199
209
215
257
207
213
220
203
199
178
176
230
133
206
192
181
264
208
244
212
137
200
242
209
209
210
170
194
236
195
190
241
161
193
158
196
254
86
253
176
202
229
241
205
231
169
245
214
162
227
177
174
159
218
192
228
208
223
178
170
173
244
204
222
161
242
216
204
178
251
171
214
181
175
249
207
209
202
161
256
159
169
207
204
217
247
266
195
282
189
238
227
199
210
185
200
241
210
229
145
204
205
189
214
173
158
244
274
131
200
235
223
230
235
150
132
271
175
181
203
208
192
213
202
203
230
149
198
176
154
182
226
218
224
278
232
196
241
266
227
222
171
146
166
264
226
240
204
216
108
188
202
236
210
178
178
186
222
182
205
205
234
186
208
191
168
254
212
219
256
119
182
178
223
137
186
169
223
199
204
262
255
122
232
225
213
181
267
227
183
195
110
161
217
142
164
217
223
190
250
181
219
206
163
216
198
231
190
194
207
212
203
218
216
199
240
193
215
142
209
135
203
250
177
235
175
218
186
214
251
177
139
223
224
214
171
214
225
186
234
229
227
176
225
215
203
208
269
241
109
212
118
218
195
164
150
157
276
261
173
235
146
163
192
281
192
227
124
148
205
168
194
261
179
187
156
136
248
187
191
180
224
148
187
242
150
190
163
251
229
221
178
256
215
227
204
132
137
172
253
171
218
190
219
214
155
197
190
231
228
228
183
236
209
182
228
162
146
182
181
159
193
220
199
228
186
205
241
202
171
236
201
189
206
177
251
230
272
266
183
155
198
213
198
279
190
197
186
213
231
113
245
243
240
220
227
182
162
270
214
182
172
220
171
161
234
148
249
167
219
229
272
142
228
218
219
177
144
208
203
219
214
204
182
218
198
152
184
185
262
248
235
194
242
189
170
217
152
146
215
178
240
148
267
203
193
193
150
166
194
204
174
171
164
181
203
192
222
253
201
131
182
223
192
254
214
180
173
206
213
247
158
237
208
190
246
212
227
195
241
275
180
147
190
227
152
184
204
205
220
183
204
179
215
173
274
221
198
145
161
188
213
206
144
233
252
202
191
179
169
223
176
164
180
93
223
198
133
151
226
184
225
193
201
199
142
188
227
257
184
239
207
195
148
219
230
219
228
140
156
145
154
206
238
174
178
197
200
205
149
174
231
209
138
222
140
196
179
223
264
204
210
135
205
171
192
248
148
176
204
143
192
201
199
165
162
187
144
192
215
187
187
292
171
230
158
185
190
200
208
196
209
205
177
270
189
181
225
213
195
211
232
245
190
171
229
180
174
160
235
194
183
267
229
163
243
232
207
191
227
190
206
213
167
211
203
216
167
171
162
202
191
208
246
173
169
187
255
203
226
192
176
272
237
219
216
228
215
203
208
177
191
171
194
243
258
135
270
213
158
183
169
251
177
221
234
215
176
226
237
179
234
203
176
193
262
250
208
206
182
227
148
233
173
246
215
222
162
237
228
198
182
224
190
154
172
271
201
159
233
198
203
195
156
174
195
214
204
168
224
196
192
188
226
179
191
208
233
188
182
250
197
150
263
217
254
122
206
219
245
195
170
164
211
202
157
196
231
218
180
204
241
270
194
191
189
232
254
142
184
170
202
200
152
209
219
184
249
191
249
205
191
168
241
143
157
200
199
185
245
241
186
158
234
203
192
167
217
223
208
188
132
254
186
220
174
179
222
174
221
252
223
217
180
251
257
190
153
216
223
160
231
166
195
227
214
225
212
226
159
193
169
182
157
252
176
233
216
196
254
264
241
165
227
244
164
239
181
225
201
202
257
180
167
123
187
200
181
191
210
222
177
165
235
202
251
188
205
158
226
214
231
221
169
209
206
216
216
222
204
233
235
166
150
247
252
146
254
174
230
203
196
197
202
229
200
185
89
184
182
175
209
146
157
150
135
168
118
246
208
226
119
203
205
240
231
200
151
181
193
170
133
239
190
182
159
190
232
221
128
195
222
176
183
225
246
167
147
147
168
260
209
216
200
260
181
193
239
210
178
225
135
200
203
169
177
146
159
149
174
258
185
218
202
183
254
188
221
206
173
214
221
263
221
210
163
187
228
251
213
217
168
178
242
198
261
247
179
203
236
161
228
162
216
175
207
155
234
178
202
173
167
211
194
227
221
189
224
166
189
182
168
194
183
183
182
185
130
185
207
145
177
206
174
235
202
170
231
144
208
191
209
213
240
213
203
218
176
210
150
217
180
189
201
236
211
188
172
197
183
222
233
215
230
244
199
185
184
148
199
219
201
131
179
226
191
220
168
195
231
177
185
224
206
225
222
177
188
215
154
151
218
230
256
207
180
203
204
220
223
146
271
202
169
223
241
146
167
192
212
207
104
149
233
185
187
262
213
189
137
209
235
184
192
201
173
142
193
225
192
165
191
206
214
209
165
213
136
198
205
189
147
196
201
128
243
266
214
162
143
201
212
238
201
216
176
224
177
197
191
220
187
224
253
172
205
202
150
199
159
183
221
225
183
207
215
189
169
204
222
173
188
148
189
205
198
151
158
213
155
239
177
200
188
199
239
201
225
116
166
210
189
191
211
235
213
253
184
251
203
169
245
150
215
190
204
228
217
146
207
218
186
210
146
187
174
172
212
197
170
215
162
112
223
166
227
223
184
143
185
257
170
146
164
222
238
204
202
179
185
223
199
227
269
224
154
180
200
139
249
256
189
188
199
261
170
178
231
200
205
185
242
246
201
175
223
198
205
150
228
246
231
181
145
192
225
198
197
192
267
185
248
167
175
196
241
213
150
214
250
181
225
226
197
193
188
206
213
204
211
189
198
193
226
128
202
203
218
219
181
218
190
202
128
241
190
185
225
209
262
223
194
215
171
189
277
137
245
172
269
213
186
162
260
187
179
195
140
153
216
214
182
221
206
201
258
186
239
187
240
134
192
209
242
176
195
215
157
156
260
202
205
195
189
165
214
182
199
197
159
250
155
130
193
220
197
142
199
206
180
169
265
232
182
241
219
149
150
208
178
219
215
236
232
190
213
243
132
143
210
241
188
227
222
195
175
194
202
259
140
215
217
161
174
233
200
146
157
163
220
196
176
212
181
224
193
227
240
197
227
175
204
237
271
160
246
143
225
164
220
224
185
231
191
175
165
156
268
182
160
207
204
207
243
168
210
181
203
225
206
220
194
138
152
159
182
211
242
199
241
177
177
293
174
228
223
192
144
196
191
183
194
177
188
186
189
127
187
204
265
198
203
211
144
225
226
264
195
157
211
173
190
210
162
279
161
228
184
162
234
205
234
207
182
204
223
218
259
208
255
164
206
199
239
197
181
184
256
193
158
188
128
199
195
246
240
238
202
141
193
129
187
120
225
129
222
148
229
206
256
234
232
232
186
197
172
207
149
137
228
163
234
229
210
195
250
185
185
182
191
178
212
189
125
124
115
218
181
208
168
168
257
171
248
179
249
157
158
185
168
223
159
95
168
186
181
222
217
201
244
235
164
246
193
227
183
263
181
168
221
184
187
190
212
144
209
211
184
238
235
167
214
198
238
175
236
215
208
201
233
204
166
176
216
243
206
208
168
196
182
184
184
215
247
150
213
129
224
262
198
203
235
139
193
148
154
206
185
169
159
191
219
193
264
225
149
131
154
179
215
204
207
290
196
190
253
289
235
191
219
265
187
197
212
156
184
215
180
269
205
195
155
215
204
187
188
157
252
224
213
211
184
263
222
239
199
201
246
180
150
234
238
229
140
183
218
173
228
196
204
251
179
141
166
176
192
194
235
220
245
229
187
268
212
149
124
200
193
186
174
235
189
243
197
200
197
223
187
181
203
227
240
188
188
157
218
224
189
210
128
203
154
157
212
255
187
220
219
177
189
117
229
132
241
206
159
181
205
258
191
266
229
245
194
242
256
194
206
200
208
183
168
203
153
238
170
241
208
158
224
202
164
267
235
209
198
240
255
174
193
178
176
204
186
153
200
206
203
213
190
165
218
154
177
196
181
193
233
254
189
224
165
236
230
186
185
166
214
202
217
164
218
249
196
215
237
217
204
195
124
220
171
217
170
217
185
214
219
227
175
249
243
235
168
156
238
209
214
185
249
226
193
172
174
135
148
233
207
199
202
214
231
189
119
161
209
162
168
232
216
181
199
231
173
172
173
179
165
154
248
234
235
154
192
207
199
141
241
186
187
266
193
202
216
199
166
231
182
188
228
172
202
236
150
158
167
161
189
198
181
186
220
262
186
174
167
203
226
186
203
217
213
209
195
218
164
207
216
143
203
211
213
192
200
186
182
207
167
177
261
247
139
189
215
204
207
198
228
178
235
171
180
206
195
160
213
229
232
222
226
208
173
240
196
209
177
193
145
218
197
204
261
209
203
202
181
278
191
200
247
196
199
207
181
197
204
233
225
180
200
136
169
211
181
154
212
193
180
155
162
156
198
189
215
216
177
183
210
222
173
218
177
211
210
247
160
237
241
267
171
125
157
193
250
172
181
252
241
245
174
219
163
251
196
235
225
195
182
202
163
195
188
206
237
248
168
216
175
189
252
212
235
150
155
235
184
228
184
242
149
169
224
219
187
215
223
239
275
146
233
236
203
259
250
223
223
248
181
184
219
117
170
163
171
206
216
202
223
211
179
218
198
211
226
181
198
204
135
205
210
255
257
184
181
199
235
197
174
216
227
218
196
235
189
261
248
194
217
240
161
164
159
215
229
150
213
259
202
182
193
220
202
201
247
201
168
184
231
196
204
231
225
270
121
173
238
228
185
235
218
141
212
210
207
224
213
233
161
208
179
230
214
244
168
239
196
191
232
157
138
192
216
109
190
205
194
217
217
203
195
189
219
244
183
144
218
281
208
214
208
154
182
216
211
205
174
195
211
216
184
199
200
224
298
198
225
181
223
110
161
163
197
210
216
223
222
216
208
208
176
194
237
115
206
175
211
229
144
210
206
167
179
191
226
217
193
201
170
189
236
219
207
218
220
202
180
155
219
199
166
200
167
194
215
230
153
174
221
203
208
191
179
218
132
218
172
225
200
142
102
198
242
199
214
208
189
180
192
279
210
183
219
190
218
216
175
228
149
156
167
150
166
210
189
201
227
247
213
221
211
247
186
178
236
170
222
164
186
118
182
235
198
228
223
225
196
206
250
226
239
194
210
161
140
185
108
169
179
130
210
135
163
187
276
223
173
240
283
200
157
177
188
170
148
235
240
210
159
242
132
201
179
210
195
218
242
199
202
231
228
217
204
201
136
212
210
226
207
214
137
181
159
183
99
182
175
241
180
214
211
185
210
166
149
184
198
211
209
205
199
183
186
200
165
236
236
179
169
176
257
193
200
179
210
212
172
196
203
207
207
206
227
171
236
199
203
252
245
185
173
192
150
181
167
193
226
137
206
133
218
258
267
205
227
268
144
220
159
176
246
197
254
183
167
177
184
224
205
189
235
171
240
196
144
247
190
177
244
129
154
213
199
196
198
244
211
224
199
187
156
107
213
213
199
218
222
134
182
209
178
201
215
204
155
253
138
237
191
233
237
169
123
171
232
238
178
200
208
136
168
167
189
202
243
150
235
163
227
175
190
207
211
222
171
203
221
166
196
178
173
202
204
243
230
158
209
241
180
178
203
189
252
154
182
150
203
222
212
119
192
174
242
225
209
239
248
203
232
228
243
201
185
184
230
152
216
247
213
169
199
232
211
199
226
164
183
176
196
192
201
233
166
183
236
241
243
151
232
178
256
269
224
212
219
216
175
252
214
230
110
150
158
203
225
148
175
200
233
267
150
193
217
222
222
185
176
145
192
185
161
210
197
244
174
281
142
166
183
193
177
138
225
236
181
157
245
218
170
228
178
256
179
199
165
182
202
242
205
207
205
224
223
225
172
156
236
232
190
157
172
220
234
251
164
163
179
220
130
159
178
237
184
167
239
213
241
183
221
143
149
214
210
213
242
133
171
183
173
202
205
153
166
227
184
218
210
265
251
191
211
255
250
235
127
218
169
192
171
164
220
225
191
190
215
233
244
182
227
166
201
184
156
218
148
220
193
168
138
195
210
245
174
144
155
229
152
182
200
239
109
232
133
176
199
193
234
129
197
231
200
209
197
172
113
166
232
201
219
241
190
218
195
216
206
187
241
166
177
185
248
220
232
151
191
255
137
148
198
217
120
136
203
234
190
261
191
184
111
218
168
262
252
216
191
206
185
244
191
173
237
218
176
238
186
101
193
211
169
219
200
212
222
138
187
170
212
235
231
127
209
209
190
194
200
265
222
146
93
183
180
257
211
229
172
209
200
190
219
192
218
203
259
185
190
233
217
187
221
243
201
226
220
226
210
186
193
212
197
143
176
162
214
170
236
151
180
186
241
165
242
222
190
231
151
171
233
194
208
174
162
261
242
168
221
182
269
212
155
223
178
133
217
186
230
201
211
195
206
238
131
256
220
219
199
147
210
221
214
210
206
149
206
159
220
158
222
234
177
214
204
221
157
253
237
165
213
190
183
167
185
260
233
211
182
185
139
222
192
130
198
175
207
148
258
183
253
191
260
246
221
224
224
214
200
206
261
252
206
196
199
178
209
194
228
214
201
225
221
243
160
200
193
246
155
204
145
249
179
161
197
219
158
211
200
155
237
229
178
155
229
272
224
179
187
174
214
207
248
194
205
156
183
230
264
118
147
224
197
151
170
210
178
232
206
171
218
247
219
200
204
189
179
204
226
186
214
187
249
228
220
175
205
196
168
274
267
163
209
192
235
195
252
213
123
209
166
254
251
220
180
187
217
173
185
199
223
259
186
182
219
256
231
193
183
212
240
119
178
171
227
207
171
217
238
144
219
228
260
231
196
186
242
187
193
234
244
259
179
206
257
197
223
241
121
186
217
202
178
186
193
202
162
186
240
228
210
176
206
217
219
228
230
222
212
203
195
196
143
191
221
178
171
209
186
190
183
225
153
160
246
171
218
174
209
254
160
173
201
177
149
160
134
129
157
243
189
235
236
199
239
234
176
162
172
168
263
204
254
167
180
201
242
258
220
242
234
236
230
240
222
212
188
195
235
268
191
201
160
161
228
234
181
194
227
211
251
183
248
234
156
135
150
174
145
225
225
260
231
235
141
203
186
110
195
229
120
220
111
174
153
238
207
193
234
245
201
231
229
193
221
191
178
169
217
162
202
205
204
204
206
163
107
167
219
239
153
174
226
161
230
227
232
231
226
205
237
205
290
196
218
191
177
179
152
186
258
208
224
227
189
218
211
204
170
180
222
194
263
215
212
219
152
201
159
243
170
183
245
153
221
177
206
261
252
132
185
204
187
156
193
200
155
166
241
259
196
200
248
165
140
274
214
241
175
205
184
191
241
247
198
185
208
154
203
184
188
204
225
164
198
224
159
170
247
202
217
210
260
234
226
232
185
234
159
178
209
242
164
165
225
165
209
210
182
160
206
234
184
233
202
134
204
198
219
203
160
225
138
195
198
200
213
217
227
183
240
179
190
168
206
204
194
185
213
234
163
246
186
202
155
212
184
219
176
197
167
208
253
222
181
149
184
253
203
190
209
158
155
233
240
215
157
186
187
147
198
199
180
197
142
204
156
205
224
216
179
209
203
226
185
192
216
232
239
164
145
223
181
195
229
212
255
158
180
259
175
258
242
253
224
202
129
206
237
189
173
234
188
163
174
186
201
194
210
176
170
148
175
190
169
166
121
206
213
218
240
232
218
160
179
231
189
178
231
210
193
207
195
249
234
202
158
157
233
188
261
162
240
244
286
178
125
234
161
149
176
172
166
234
219
211
251
205
237
197
155
177
211
247
181
164
213
139
221
166
204
189
174
151
250
176
218
163
198
200
225
215
217
202
210
162
223
210
237
176
224
193
196
182
192
201
229
213
256
143
202
139
179
236
191
206
210
221
208
227
223
173
234
225
178
178
140
207
150
176
165
249
215
163
246
217
179
155
199
265
230
134
224
258
190
245
192
190
212
161
166
183
237
224
238
218
201
161
167
223
229
179
230
190
211
246
222
184
256
215
257
251
189
236
234
145
253
226
160
196
185
202
213
169
167
197
211
182
153
187
191
141
211
171
197
213
244
199
237
233
178
211
210
239
169
201
188
170
192
206
184
240
159
191
219
146
166
189
261
193
154
162
202
175
153
163
186
146
210
219
218
191
134
196
230
237
209
213
182
171
201
226
207
218
185
176
177
166
237
215
177
212
161
230
155
212
197
202
237
219
201
198
130
227
198
217
254
236
236
197
141
252
199
209
249
151
216
209
200
191
177
203
237
217
156
152
199
213
206
188
190
207
240
222
147
225
183
139
197
174
212
164
175
174
190
214
208
168
188
247
142
199
167
184
185
140
152
184
152
213
231
204
160
175
167
194
159
167
182
277
214
228
192
240
218
249
192
205
222
206
225
208
142
173
162
245
174
212
168
199
215
244
204
243
226
240
244
205
127
200
172
274
175
201
251
209
210
118
225
217
216
232
182
199
147
164
214
207
228
120
219
185
197
222
169
189
181
152
123
237
222
180
190
168
217
230
175
203
226
230
180
224
308
190
245
172
205
166
177
210
158
179
265
166
252
176
229
187
241
188
207
202
155
240
239
203
222
192
186
219
250
217
200
190
233
184
201
220
207
163
235
237
229
186
176
186
207
221
141
181
205
239
238
210
180
178
167
195
185
132
217
222
239
137
206
219
167
212
180
205
187
184
190
168
181
163
228
131
158
233
253
125
133
103
268
240
199
205
164
193
259
132
141
127
216
198
217
214
207
121
190
214
226
230
186
211
185
255
195
128
254
244
225
193
156
253
216
205
231
199
216
182
226
163
217
234
216
250
156
236
197
227
248
218
216
221
194
219
238
226
190
163
206
251
201
240
229
251
195
173
186
232
194
246
195
198
227
229
204
198
201
189
202
198
147
178
221
178
238
209
261
229
174
276
174
165
165
230
230
162
215
231
199
207
241
232
154
184
213
207
211
167
202
214
176
173
188
246
219
188
217
188
201
203
248
207
186
164
217
225
265
219
205
130
206
168
251
249
151
259
122
216
239
182
211
194
234
219
216
218
247
176
215
199
206
228
254
174
168
171
140
211
216
192
230
169
192
170
219
262
192
176
190
202
208
190
215
246
210
240
140
155
226
215
144
158
162
166
131
119
203
206
215
242
199
216
163
198
245
179
201
224
186
220
182
195
199
188
166
256
149
202
185
140
275
171
238
198
203
259
215
211
134
199
232
145
188
179
183
219
202
246
204
195
137
268
177
173
246
247
231
148
190
158
175
207
173
224
234
213
213
187
249
221
182
234
221
223
168
205
200
204
190
171
214
185
150
229
234
192
173
255
207
198
186
181
175
173
188
199
237
245
239
223
193
214
239
194
191
230
177
208
187
225
204
220
196
246
208
183
210
150
176
278
135
202
182
195
207
182
165
216
162
176
207
171
207
269
193
191
176
147
218
141
217
222
260
202
169
164
239
235
205
201
226
169
220
262
200
202
136
203
213
212
123
204
264
237
182
173
193
133
285
133
185
180
173
264
204
202
210
196
146
190
231
188
177
176
176
174
174
201
205
292
186
177
191
172
161
222
198
181
196
205
184
207
183
176
173
124
251
219
200
241
216
165
188
175
256
211
188
163
191
188
204
190
198
184
255
180
201
188
273
109
185
218
191
168
207
152
255
171
266
187
195
250
213
200
201
175
205
168
174
158
161
192
174
209
258
252
235
212
203
197
170
166
172
215
226
141
204
139
188
232
226
129
175
161
149
257
218
216
166
238
188
247
201
216
163
177
212
209
237
210
203
216
269
238
207
249
197
184
218
169
167
244
202
190
217
182
233
174
132
254
193
140
215
200
184
177
219
201
177
236
137
197
234
224
237
194
255
180
238
209
209
169
155
199
228
174
159
158
229
213
209
240
169
215
197
176
209
255
211
197
183
225
212
186
224
218
166
195
235
156
227
183
216
157
239
189
231
196
204
170
156
219
143
197
199
261
210
191
181
223
154
228
250
207
208
240
185
197
159
210
216
225
213
138
270
181
198
182
125
186
172
281
164
199
218
242
194
200
230
233
237
216
168
199
199
239
162
182
269
177
175
192
192
241
215
172
132
156
126
200
140
138
171
181
183
178
216
169
196
202
211
164
171
134
225
209
167
175
173
227
241
168
230
151
195
243
179
195
204
197
201
109
254
213
221
199
194
223
254
159
164
218
153
182
236
203
149
161
163
162
223
178
194
236
153
163
210
127
231
302
215
199
161
205
198
238
198
192
201
206
218
149
155
225
224
247
170
162
213
156
177
233
153
190
215
197
204
193
243
214
236
178
197
106
200
164
204
198
192
168
211
170
212
217
173
127
280
208
195
227
213
161
156
195
230
152
152
161
185
178
239
224
206
240
206
213
201
168
193
219
170
169
203
234
196
216
215
203
188
215
207
228
253
260
217
143
232
193
225
237
159
270
210
233
163
198
212
215
126
208
179
204
195
221
160
229
194
162
177
212
219
243
203
238
181
251
258
202
174
246
202
238
197
244
174
138
171
212
181
247
204
168
211
161
237
258
207
217
216
191
232
174
194
180
174
143
257
161
221
183
169
147
219
169
212
213
207
228
246
206
241
168
175
195
243
183
220
163
235
115
186
251
210
201
203
185
230
243
233
176
222
199
238
223
188
225
199
194
129
160
193
205
193
201
186
199
203
228
203
174
162
195
192
165
205
233
202
138
174
206
214
195
228
158
215
205
232
228
196
201
168
176
236
227
143
190
199
225
245
206
172
234
177
182
184
254
218
243
159
225
159
190
221
208
187
221
251
155
237
207
211
169
164
225
223
182
212
221
184
222
219
214
269
210
254
203
211
210
172
202
221
188
243
215
218
198
198
226
209
98
165
159
266
196
208
176
207
175
233
122
216
271
206
200
252
207
182
221
233
219
211
247
178
227
185
180
204
253
208
199
213
146
246
181
220
251
181
205
273
124
217
222
223
236
138
202
223
229
165
202
111
159
209
258
208
235
216
206
230
174
201
199
210
147
190
238
221
176
164
163
233
197
220
210
243
277
183
234
198
233
128
220
247
260
220
203
229
205
200
223
157
162
254
151
174
186
262
203
147
222
271
198
248
260
262
209
183
234
182
238
143
239
267
166
221
184
231
252
179
194
215
168
228
194
150
211
124
190
243
211
185
248
205
212
243
226
241
180
174
216
184
206
223
173
179
231
217
218
193
218
167
208
238
225
212
187
128
245
143
151
214
220
168
209
220
194
274
248
181
174
154
246
236
196
170
215
193
183
206
264
232
239
269
224
149
158
271
143
263
235
169
245
202
220
228
177
289
177
276
134
180
127
185
259
210
194
219
239
248
197
212
252
191
191
217
195
230
178
191
216
237
201
112
168
205
142
162
228
202
165
214
182
179
170
160
177
269
143
186
206
247
237
201
184
154
243
146
158
220
263
183
185
184
188
260
223
213
213
246
138
217
268
151
206
256
234
198
183
194
245
175
246
262
247
191
205
172
175
164
123
176
229
152
158
193
296
171
206
242
229
158
187
215
198
179
184
171
189
234
189
226
225
181
177
193
237
194
186
239
180
269
224
220
193
143
164
256
198
225
187
128
155
150
176
235
221
180
173
208
158
217
228
194
168
159
218
271
201
254
211
243
196
237
250
210
213
223
257
176
222
241
115
172
163
237
178
188
256
143
198
184
162
129
236
164
181
192
234
239
199
244
180
215
206
174
214
206
194
130
179
235
157
169
163
143
258
247
256
153
167
236
206
213
141
201
211
156
220
233
203
206
196
155
222
213
176
184
218
179
206
203
170
171
193
181
200
208
250
214
215
231
257
197
135
124
148
234
175
209
197
239
266
158
250
272
170
228
212
180
230
149
235
218
209
171
141
168
250
262
220
218
205
133
173
232
191
191
152
163
190
162
222
181
202
169
227
173
191
193
136
240
226
191
226
244
238
225
189
212
265
173
152
181
213
182
149
181
198
240
229
105
263
220
122
166
204
211
233
210
176
200
280
227
253
143
223
172
177
219
170
238
173
250
197
218
188
144
207
152
196
228
211
162
206
196
219
193
214
208
170
213
180
236
235
233
207
162
174
186
205
207
158
170
186
217
209
194
169
185
213
174
148
182
190
197
167
211
221
202
116
203
230
109
207
153
208
181
171
193
240
170
188
240
234
194
163
165
180
163
146
213
177
220
244
223
188
227
239
153
196
166
172
230
253
218
245
204
250
178
190
198
183
215
223
205
209
232
228
183
175
171
216
241
172
158
214
243
206
190
193
163
240
173
231
174
180
236
234
220
181
201
223
145
168
164
207
223
209
248
207
207
230
151
228
177
163
187
211
184
167
177
181
203
202
164
152
176
228
195
156
204
164
190
228
200
221
135
190
162
204
188
139
225
190
220
237
237
201
168
148
249
181
177
168
189
210
166
177
217
213
165
169
207
233
193
213
175
182
233
148
162
219
202
234
214
205
169
203
244
173
151
249
219
204
132
194
212
191
206
163
222
214
164
190
217
202
197
137
179
218
190
154
214
153
161
224
169
186
209
224
175
185
222
185
201
214
162
194
190
224
192
149
210
245
204
131
253
178
221
214
179
239
203
207
242
185
248
214
213
249
197
187
173
251
233
214
208
231
278
181
224
251
240
209
200
184
152
176
200
220
157
189
151
198
127
211
198
241
159
118
210
174
209
273
196
227
221
149
133
170
194
225
228
198
238
128
243
197
178
231
223
197
202
167
227
145
221
239
175
193
174
230
206
247
176
154
228
248
256
181
184
167
144
195
217
253
208
182
223
235
175
222
238
174
209
220
247
233
230
199
217
179
196
240
166
208
236
227
233
208
141
209
248
206
195
200
152
231
249
203
204
193
184
225
270
183
156
241
227
181
154
206
201
208
183
206
162
218
241
160
179
197
218
221
201
180
189
108
159
253
205
204
148
194
163
194
232
162
272
267
247
168
281
184
240
106
151
191
180
148
166
210
199
250
212
170
163
188
207
245
211
154
212
256
143
199
206
195
201
174
248
256
194
181
247
176
177
210
198
190
191
234
204
207
178
164
187
270
166
147
187
199
200
244
187
183
213
161
166
191
209
270
229
200
205
159
231
118
153
205
215
259
222
155
235
205
197
205
212
189
175
150
188
229
193
150
200
147
165
212
186
203
225
177
187
157
200
240
240
156
211
161
174
186
216
237
171
151
252
194
259
177
166
184
220
204
192
178
226
234
173
185
214
226
209
180
186
171
190
135
174
202
205
226
271
227
198
219
209
220
175
127
186
265
224
214
178
263
163
157
194
231
216
117
187
181
209
129
150
184
237
156
186
168
215
155
207
227
176
184
209
173
249
236
198
230
241
190
153
223
249
189
197
158
148
218
277
202
204
202
230
185
132
168
155
247
230
171
239
180
231
169
159
254
207
197
183
224
148
246
182
204
130
183
127
243
230
182
212
232
201
243
219
150
253
254
214
190
171
209
155
272
260
166
216
205
139
194
183
206
223
209
197
249
229
162
235
202
260
161
179
195
217
195
266
226
142
139
260
157
229
246
210
234
161
134
183
234
189
161
241
183
188
196
205
193
209
202
210
167
203
195
209
149
220
206
151
214
211
212
215
254
192
191
187
162
202
187
158
184
194
199
159
202
139
145
156
198
211
211
191
145
155
232
151
238
229
249
245
207
220
139
211
192
131
221
177
179
194
118
245
206
212
166
219
219
224
220
177
230
205
204
147
182
246
245
120
208
168
204
186
217
191
270
225
267
146
221
199
224
242
237
188
200
187
241
149
110
234
205
177
242
190
230
231
160
199
208
136
208
225
148
190
172
196
140
231
192
146
155
214
210
224
224
172
226
235
235
201
155
156
204
207
194
226
167
196
162
194
219
157
172
221
176
168
220
214
155
213
209
231
174
252
190
208
216
212
227
169
204
183
240
189
178
163
207
138
170
215
244
179
227
195
178
243
227
199
156
207
240
136
191
254
214
144
217
119
208
148
206
182
218
217
200
202
262
181
238
273
256
205
200
236
209
235
214
152
202
271
165
183
96
215
209
178
226
283
207
264
152
139
240
192
208
238
183
186
208
200
238
225
164
179
172
201
214
225
214
185
173
188
239
192
227
179
231
202
177
231
191
179
217
270
162
212
199
212
171
196
222
223
179
157
276
251
195
229
161
192
180
159
165
238
137
153
229
126
193
184
210
227
157
182
184
226
164
190
187
217
194
175
175
188
192
212
206
295
167
196
197
187
174
141
259
165
203
184
228
251
183
210
165
228
186
182
184
257
160
225
211
174
142
182
193
204
184
167
172
200
193
254
229
152
208
216
195
178
144
217
179
126
200
174
209
203
182
191
122
175
155
183
186
160
192
242
220
218
221
231
208
161
224
177
203
197
125
246
208
191
188
196
187
259
189
247
175
229
230
181
243
147
183
171
186
157
180
225
193
197
176
200
220
177
165
233
195
215
199
221
191
129
144
175
227
223
193
224
242
258
251
254
227
186
224
220
144
220
190
153
184
206
154
211
159
179
229
197
170
221
262
180
197
195
174
162
221
136
189
213
177
190
207
215
237
238
253
197
173
173
233
201
251
191
234
193
247
189
198
225
237
212
198
274
199
155
238
114
192
209
230
216
257
240
145
226
188
165
193
211
182
162
240
172
151
176
195
187
226
261
213
233
233
214
192
182
193
213
104
232
185
212
284
209
184
191
146
175
146
261
215
188
141
209
247
172
194
164
172
200
227
220
166
231
140
212
242
195
187
201
227
210
209
198
177
178
203
209
261
203
238
197
261
221
210
170
235
225
232
202
198
220
191
126
215
255
178
236
252
227
251
214
237
210
213
248
186
187
221
181
150
243
188
177
195
210
213
140
194
231
204
226
185
193
177
158
248
145
212
180
232
192
218
230
175
250
157
238
234
237
147
204
195
265
210
216
216
182
196
172
130
194
218
202
178
214
207
259
197
201
173
178
167
215
232
205
189
143
170
151
210
256
239
177
196
245
183
242
200
163
179
202
128
209
224
220
185
251
196
199
219
183
288
181
182
208
160
159
209
188
159
197
194
204
209
267
201
194
168
174
179
180
233
254
139
168
125
204
187
219
206
270
208
254
190
213
210
245
233
144
197
201
186
200
192
197
181
220
237
175
197
160
224
202
221
164
244
130
136
225
231
189
183
197
195
278
187
171
179
207
164
222
169
219
151
198
237
233
206
185
212
176
193
211
203
228
225
198
190
198
214
223
216
176
165
173
184
200
201
170
199
153
176
145
240
224
197
187
216
203
190
250
172
179
262
166
159
220
280
206
210
165
192
206
166
152
237
241
152
194
170
200
148
181
227
225
223
220
229
171
215
212
166
231
221
189
138
247
251
219
138
227
218
197
231
236
235
214
234
127
184
178
218
220
223
188
256
183
232
192
224
198
209
210
180
257
169
231
177
179
186
227
233
216
221
186
224
187
226
134
215
186
165
213
216
175
202
249
216
222
214
296
209
258
163
231
189
257
224
244
230
213
113
168
201
206
199
264
208
168
104
206
170
207
210
220
234
259
216
168
210
189
233
172
235
169
181
175
248
165
244
251
134
141
196
228
215
221
202
177
202
211
182
157
159
176
270
179
200
211
262
220
190
253
221
226
229
196
220
180
218
194
197
238
207
181
209
211
195
205
186
169
229
173
148
213
208
149
197
185
195
203
208
182
199
182
206
208
235
244
164
207
175
208
193
208
148
221
119
178
213
250
208
172
253
237
139
211
256
207
260
172
246
152
218
153
231
217
244
199
172
194
196
217
189
186
195
218
183
204
193
198
157
214
201
169
181
177
215
199
146
248
225
248
231
209
177
223
183
250
191
190
230
262
186
263
239
166
162
155
161
208
196
118
273
234
211
164
221
202
177
192
222
208
241
238
201
213
232
208
224
200
108
217
222
182
206
181
177
210
193
169
210
223
186
192
138
148
229
197
266
172
230
220
199
219
238
219
210
195
224
161
223
163
202
223
241
233
194
122
207
165
223
174
221
194
174
210
225
129
205
215
159
231
211
134
211
240
197
218
208
232
221
209
228
202
157
224
200
232
146
206
211
199
232
152
197
212
232
255
182
228
147
189
183
140
210
143
175
227
216
229
261
211
198
146
157
214
138
202
180
222
179
216
247
184
208
279
275
131
201
140
187
187
233
236
193
177
268
202
169
186
168
216
221
152
230
168
238
125
193
178
240
213
206
147
219
241
147
246
189
149
219
211
202
254
233
182
166
201
258
135
271
184
240
215
235
197
156
211
209
170
197
159
173
196
191
192
196
219
217
210
215
202
216
220
234
182
175
157
220
235
189
227
210
246
206
220
219
197
165
137
212
217
140
210
236
241
247
164
233
174
241
201
196
207
197
221
230
115
218
197
243
189
231
178
146
161
207
178
164
274
211
220
220
229
178
219
264
166
241
250
209
178
176
226
179
150
214
181
190
224
159
240
234
241
216
176
193
175
165
249
230
156
192
175
248
243
200
167
212
215
162
187
260
220
207
162
208
237
158
246
236
193
221
224
138
217
159
199
172
142
159
263
188
177
127
206
240
204
218
137
192
250
151
153
224
210
199
211
176
176
159
173
187
181
166
238
164
242
231
203
196
235
193
200
219
223
228
177
242
227
197
175
235
224
207
210
227
197
216
186
163
208
229
187
209
194
236
175
213
196
170
208
198
237
229
195
222
234
161
227
191
153
249
201
171
194
181
235
180
166
283
186
192
181
220
205
253
225
265
232
268
195
261
218
182
224
166
213
238
230
218
185
218
163
225
184
224
242
228
191
136
196
168
157
222
239
210
242
193
225
171
187
215
184
231
134
214
239
186
226
240
263
180
173
203
138
197
257
164
234
210
258
235
195
158
259
132
254
130
220
224
226
172
209
219
225
119
203
183
206
194
215
171
250
163
198
186
166
253
197
226
215
213
182
210
201
259
149
199
193
206
124
252
182
155
167
243
210
206
208
206
238
235
195
164
102
164
232
161
237
219
175
135
192
175
238
197
202
195
227
241
123
216
245
242
162
152
117
186
216
200
188
199
210
202
203
232
157
174
149
221
221
116
155
203
269
154
246
227
184
140
182
192
261
205
151
160
271
245
289
197
201
237
195
234
186
221
245
215
174
217
142
179
252
230
211
205
180
174
198
198
144
191
184
205
262
188
143
155
124
182
274
258
200
90
191
223
222
197
181
218
177
199
230
215
190
208
233
246
250
229
240
171
220
187
215
209
202
187
140
191
199
222
150
252
202
238
270
228
200
170
276
187
204
183
222
289
224
183
242
207
269
224
154
176
156
258
186
190
179
202
205
177
161
239
182
253
264
170
161
241
245
214
188
206
166
237
197
239
204
265
183
235
173
216
119
233
198
172
245
183
232
204
222
156
195
173
212
208
154
228
244
236
204
202
169
193
158
137
188
127
173
209
155
184
164
174
272
244
199
265
170
171
197
182
187
201
221
203
140
182
192
288
197
195
185
186
194
180
206
248
109
179
190
244
252
241
195
214
202
242
225
210
195
186
158
222
206
192
220
202
175
239
206
184
218
147
275
165
162
225
257
179
148
262
205
217
249
200
185
281
216
184
211
201
202
202
188
110
211
202
199
223
207
156
209
218
162
210
197
203
222
222
207
250
212
196
225
202
191
219
228
187
191
241
186
126
243
173
229
180
179
129
125
223
241
209
221
175
218
200
148
188
210
150
233
182
213
201
153
165
236
211
254
189
210
193
157
220
212
222
210
211
149
201
185
220
219
157
216
179
218
168
156
207
194
201
250
176
175
144
220
189
172
194
200
247
122
205
234
199
151
152
257
228
185
208
230
183
185
168
222
132
206
193
223
129
226
176
208
156
180
158
234
163
193
204
174
180
266
169
251
172
200
233
234
207
283
170
204
186
136
204
159
225
235
206
144
146
199
179
228
211
199
229
199
204
169
200
217
205
142
183
201
193
149
269
158
176
259
215
212
232
178
269
234
202
233
237
203
217
206
231
141
227
249
228
181
235
245
213
291
233
138
223
210
164
192
243
283
182
192
217
211
214
185
218
210
170
244
227
234
170
206
156
219
206
183
198
207
144
232
207
199
235
287
147
244
109
173
183
212
184
180
185
223
209
182
181
228
210
195
187
145
260
205
207
219
240
207
241
201
215
214
188
205
252
179
164
154
175
235
201
246
256
161
160
239
232
205
178
188
268
182
147
210
195
272
271
223
180
177
185
260
269
241
193
208
223
199
140
166
199
223
196
243
240
233
227
217
168
167
264
197
252
163
189
226
195
215
218
179
199
198
208
181
166
209
203
257
174
175
153
187
139
181
191
177
223
220
161
183
213
185
193
187
195
191
200
216
260
142
154
218
211
157
202
246
238
206
218
181
190
222
206
177
154
276
207
194
238
225
173
192
211
241
157
253
198
177
193
213
200
160
202
198
180
301
156
192
234
211
223
223
225
218
193
197
173
200
171
174
207
201
179
197
179
263
208
186
178
187
200
205
243
188
238
175
227
188
218
222
235
161
263
202
252
186
196
180
185
163
197
214
192
177
223
143
212
181
223
218
233
157
221
239
227
256
213
192
154
186
141
254
147
162
237
164
173
175
228
168
271
182
199
234
180
235
170
180
226
208
195
209
224
202
180
187
247
262
213
246
233
171
225
215
180
222
117
220
231
218
227
267
240
211
242
208
218
169
243
243
240
182
205
200
222
114
196
237
237
160
222
184
154
163
161
136
245
216
194
150
239
200
193
220
147
179
208
160
186
179
173
194
186
196
170
231
185
202
180
225
241
188
224
186
238
174
193
173
200
172
221
170
240
171
191
228
105
203
178
233
173
202
188
216
202
192
215
196
172
194
235
177
224
229
268
177
190
224
196
203
176
213
189
154
191
163
191
228
179
202
198
199
172
218
206
174
222
200
201
214
196
210
210
244
148
186
219
196
233
153
142
199
232
205
238
206
135
172
218
241
193
214
185
202
116
216
262
180
225
200
203
184
212
212
290
102
169
192
233
168
178
243
169
177
174
213
188
242
177
190
175
211
191
253
159
183
245
164
148
235
175
223
193
195
175
218
219
194
179
196
216
237
168
151
205
206
185
189
185
166
215
184
158
207
175
179
229
199
257
237
192
196
160
238
222
217
262
209
168
202
214
184
149
233
169
201
208
170
152
205
163
257
259
215
239
214
214
235
195
233
223
203
207
180
188
192
219
242
246
154
208
174
133
194
225
196
227
215
208
198
244
202
231
242
208
145
215
192
167
206
216
174
247
265
186
166
215
182
199
191
244
158
183
186
259
209
184
204
233
214
263
206
189
200
242
237
218
278
186
201
210
194
163
215
228
195
158
252
242
207
154
245
209
200
216
270
217
209
199
197
217
204
167
142
221
179
176
252
249
236
163
149
177
245
199
182
215
194
258
177
180
207
172
184
164
172
191
208
260
246
224
195
204
185
229
184
155
179
197
252
193
248
207
197
236
209
207
249
235
191
163
250
181
234
172
187
216
208
195
187
232
220
209
216
205
196
190
171
233
211
137
222
231
224
221
162
229
183
176
161
167
213
210
229
230
149
222
175
184
246
152
182
238
212
197
232
196
108
160
158
183
174
223
240
162
178
203
170
178
166
143
170
249
266
226
137
254
208
264
170
208
222
253
206
130
272
255
180
188
187
168
232
160
214
197
217
200
242
184
191
214
140
198
235
193
214
187
220
176
176
233
217
209
210
139
220
209
139
183
187
117
273
164
209
251
204
191
178
156
165
195
169
236
181
224
233
206
143
211
225
191
221
198
219
166
178
209
259
183
242
243
146
182
182
259
110
230
165
193
182
150
184
221
206
265
174
155
239
208
183
177
152
167
158
255
183
179
216
216
103
184
207
138
256
244
214
221
144
232
230
228
230
173
238
192
207
193
209
173
214
242
201
197
186
239
244
172
194
172
171
164
214
146
173
250
218
219
215
210
208
188
196
196
217
181
162
193
188
277
202
192
194
200
162
181
196
171
195
217
258
220
190
270
154
211
163
125
124
277
214
229
184
249
219
228
219
155
193
147
249
194
142
197
260
175
228
194
175
165
245
201
197
215
227
193
220
192
182
229
184
228
267
199
176
255
214
220
153
193
164
190
235
198
239
249
173
231
239
203
196
155
176
121
224
197
210
213
215
185
231
254
166
124
208
190
190
220
213
171
222
149
190
198
186
183
190
206
139
229
183
169
186
196
187
135
228
183
254
226
193
204
253
169
212
219
153
232
240
237
193
249
184
186
223
201
205
188
245
178
162
213
121
237
263
191
174
256
179
164
230
188
202
208
217
244
253
206
207
168
204
272
152
243
203
164
237
152
221
160
207
203
229
164
153
216
200
176
186
123
168
196
213
223
242
197
166
222
202
151
154
179
187
262
144
218
184
230
197
201
248
201
251
257
230
218
197
188
252
169
187
180
221
158
174
189
191
139
219
204
197
158
230
180
210
235
196
238
218
186
190
240
170
185
260
161
169
181
183
177
215
213
241
216
238
183
254
183
212
144
184
251
220
159
221
143
214
206
233
184
209
198
274
145
203
193
165
166
184
225
180
177
245
183
202
181
217
168
217
197
192
206
172
156
197
134
131
164
191
179
259
267
209
140
230
208
267
235
224
281
191
172
180
164
179
180
183
245
139
176
167
250
257
171
190
197
183
227
206
245
215
201
214
192
222
209
234
208
130
249
226
181
253
166
215
230
179
218
201
198
273
198
197
197
218
210
208
218
180
159
189
148
201
200
212
178
218
224
225
258
234
215
209
212
175
190
226
238
212
229
256
264
211
167
174
271
239
207
201
200
184
191
240
193
214
245
183
209
235
209
207
185
198
232
256
151
196
150
190
235
182
149
219
208
180
136
230
212
165
247
162
258
195
221
180
191
235
175
221
200
268
173
118
149
177
127
244
241
89
199
208
213
205
251
179
138
132
116
162
226
210
233
175
162
184
201
181
230
218
188
214
220
259
229
228
215
194
164
165
201
184
222
272
202
176
202
192
178
205
184
170
232
214
212
197
208
197
212
189
159
169
163
214
232
155
145
242
170
205
213
282
218
199
221
197
222
205
164
200
261
183
167
199
280
215
247
176
235
142
228
275
283
243
279
221
209
262
198
148
206
280
177
227
158
169
200
206
196
190
219
201
233
224
210
145
224
175
197
200
185
186
171
198
200
158
180
243
259
197
228
188
150
226
190
244
203
182
192
173
169
167
234
227
177
266
139
192
193
193
206
169
204
236
201
202
230
199
196
228
213
173
208
222
184
216
175
178
195
224
227
174
215
228
212
199
157
204
193
245
218
233
168
193
247
218
251
224
211
213
186
120
191
204
203
231
171
260
168
170
219
208
185
183
221
262
261
196
224
159
186
205
223
200
228
223
170
192
191
201
185
192
164
201
176
181
213
228
207
157
211
203
244
218
151
211
175
209
160
235
220
238
189
137
165
229
165
205
150
167
180
174
175
160
185
135
169
172
175
170
200
217
123
184
245
224
230
238
206
248
185
227
210
228
169
232
122
183
151
167
200
242
269
186
150
218
172
256
202
179
213
242
220
218
222
215
138
223
174
152
197
257
197
186
100
213
223
215
195
229
220
188
252
110
226
242
218
200
227
164
160
176
174
210
158
213
244
176
232
170
197
190
195
142
230
145
194
211
254
130
237
182
170
171
189
214
218
229
175
191
184
196
227
199
195
200
222
196
228
154
184
138
227
211
177
232
189
189
195
240
181
232
215
217
178
228
218
203
234
232
216
212
201
169
179
234
251
188
120
234
190
191
188
225
229
252
151
169
136
203
135
147
217
198
247
170
238
195
161
222
164
152
188
214
228
175
212
211
220
174
168
245
193
190
148
215
223
185
200
164
152
214
175
171
223
216
243
200
164
243
238
229
174
230
244
198
170
240
251
120
209
204
118
135
148
191
232
211
219
229
184
174
200
221
206
231
164
234
203
205
184
178
185
194
199
207
177
242
214
196
217
165
177
133
262
231
198
226
151
217
226
223
249
149
225
184
260
185
208
177
208
195
181
233
196
232
203
194
202
211
190
168
185
158
237
229
219
245
238
242
181
153
245
127
152
205
171
180
227
158
199
191
229
216
232
146
229
213
179
253
234
158
203
235
249
207
251
228
249
220
164
161
259
203
227
241
167
163
248
235
213
172
183
174
160
261
188
151
192
212
238
187
167
228
191
159
202
157
172
222
236
189
143
230
129
179
171
192
111
185
199
224
248
222
148
181
170
245
120
223
209
209
250
191
228
165
200
184
261
264
220
214
220
215
180
207
208
213
252
191
207
202
170
204
266
218
221
246
196
185
161
244
178
190
208
221
223
230
209
144
217
209
211
219
213
210
223
150
168
244
232
185
208
216
218
205
180
229
198
202
166
226
261
172
210
174
221
241
181
229
205
247
188
165
228
201
222
255
208
264
111
173
178
192
200
137
215
235
239
237
198
231
134
244
156
139
215
175
234
195
182
182
135
195
186
212
158
250
191
204
179
170
175
221
220
232
244
238
198
167
185
155
183
253
244
206
176
210
205
257
218
237
168
214
189
226
232
246
212
244
181
199
193
192
193
178
204
174
208
178
184
208
243
160
170
255
199
144
192
183
223
171
205
277
225
233
205
165
198
136
202
237
222
269
191
199
182
149
202
184
190
221
236
166
216
244
168
191
233
134
162
220
202
236
199
133
204
236
187
231
174
217
205
216
235
163
202
223
195
270
176
210
209
198
206
202
246
186
230
109
211
210
173
188
203
181
129
242
95
198
257
223
198
170
210
204
182
191
203
210
233
263
147
235
250
209
189
193
213
176
221
192
183
251
123
190
170
200
214
183
194
222
218
213
200
225
270
170
211
175
236
269
182
222
185
137
196
182
178
200
188
221
229
235
168
234
160
181
193
233
184
177
217
220
201
179
226
176
153
200
249
202
229
169
239
147
115
159
213
206
223
179
194
126
224
202
207
241
105
193
176
229
220
203
177
144
203
218
238
247
172
203
214
233
148
189
240
179
191
208
195
189
185
217
147
206
153
212
195
252
219
246
294
237
182
139
214
240
218
214
184
196
164
219
195
180
211
142
265
246
162
160
244
242
209
233
194
196
231
202
166
159
245
202
199
203
228
190
225
191
174
157
200
90
145
246
250
196
220
162
141
192
171
202
185
191
167
163
222
206
222
163
118
190
207
234
255
188
199
232
144
194
191
173
220
251
207
188
204
204
160
232
201
197
196
239
187
186
229
213
211
264
232
231
243
159
153
183
193
247
151
237
257
173
247
228
239
243
194
212
196
212
171
203
201
181
122
272
214
165
195
236
173
163
279
240
188
244
187
192
245
229
207
219
216
236
152
193
243
221
145
221
169
220
241
256
159
226
196
131
187
172
187
214
158
198
168
191
220
204
183
152
147
145
247
163
186
217
133
175
194
195
146
220
214
223
191
187
178
166
185
183
228
226
176
153
206
207
155
216
189
155
145
204
213
215
211
168
164
180
137
243
220
205
231
244
226
210
169
181
188
189
239
207
146
196
153
240
208
220
143
212
209
217
202
159
146
180
206
223
153
147
268
103
202
164
189
188
166
221
164
178
224
235
155
184
183
182
216
216
225
207
189
215
158
247
185
151
161
117
207
264
200
174
204
214
178
179
179
189
176
210
224
238
179
245
182
235
231
171
182
190
192
205
177
143
195
196
214
236
204
196
234
129
181
183
183
208
258
212
192
199
154
169
228
206
188
201
125
174
181
252
208
182
205
193
141
234
143
225
190
171
155
236
210
112
205
155
206
206
231
138
213
209
225
190
201
156
214
208
219
150
224
244
186
164
223
200
235
217
180
199
212
191
241
202
230
258
190
165
171
152
172
177
216
210
195
186
192
183
225
273
237
171
199
272
181
201
267
204
249
188
201
229
214
216
165
204
213
211
205
152
251
195
220
202
270
241
239
262
204
154
244
234
186
236
265
193
169
204
202
170
223
213
195
192
150
176
223
189
176
177
186
218
244
159
187
223
207
257
226
171
235
190
221
188
191
176
172
226
145
187
233
186
241
133
153
219
205
119
209
224
153
210
246
192
227
241
167
230
168
219
221
225
225
173
170
182
179
166
156
225
178
246
148
173
193
196
174
191
231
222
193
181
250
189
208
182
204
138
200
207
207
215
203
161
245
117
228
169
160
180
209
233
147
259
187
226
177
253
220
159
196
232
184
153
238
179
168
135
232
140
199
236
214
252
194
236
195
219
211
227
237
163
207
200
220
194
178
216
222
172
216
180
181
199
222
121
183
163
237
197
218
242
190
201
161
202
247
169
231
181
211
198
231
147
194
175
208
199
163
151
244
180
227
241
192
194
208
212
175
148
172
160
196
225
240
208
231
200
197
186
161
226
245
267
152
188
242
228
187
192
158
98
243
166
172
203
163
259
203
188
233
217
181
176
161
238
258
203
203
189
266
240
191
164
244
180
196
226
169
227
147
198
189
213
212
170
204
139
187
207
213
202
223
242
199
175
148
186
192
223
154
148
197
201
172
206
249
214
147
149
246
221
167
213
220
219
210
189
191
213
185
272
204
164
174
254
218
241
174
250
230
125
250
191
233
281
212
206
178
200
213
251
171
207
207
259
237
180
247
166
259
247
235
133
210
221
190
210
147
198
214
221
183
225
161
160
168
224
176
146
209
224
219
203
168
248
173
243
271
231
197
235
264
147
172
236
165
198
229
219
213
154
241
226
156
195
211
213
241
227
211
142
228
175
250
237
228
199
189
242
166
190
212
198
235
180
216
191
154
251
195
203
177
196
257
191
232
237
250
195
162
177
228
184
184
202
243
264
207
193
199
238
153
165
139
167
239
116
166
173
212
221
216
152
200
159
271
247
199
152
178
167
203
195
180
209
260
223
204
216
233
132
138
208
195
117
133
223
222
200
150
186
230
231
187
239
213
206
201
160
236
122
183
241
210
251
215
162
172
148
207
230
233
238
236
199
127
146
218
241
142
222
175
165
221
218
154
210
274
181
191
175
242
199
225
212
286
222
160
210
217
193
158
138
202
191
130
223
229
195
219
280
156
183
223
196
217
216
149
217
191
200
178
215
173
174
174
209
206
157
121
192
239
207
258
102
252
215
214
179
198
151
164
186
231
188
225
208
181
187
188
198
156
204
169
177
179
140
152
199
200
193
194
236
213
159
245
241
230
204
228
191
184
263
146
210
205
243
280
182
188
218
228
164
218
227
213
188
197
211
223
198
242
199
180
188
126
199
214
209
229
196
146
211
234
200
224
137
162
231
270
174
215
228
203
237
235
231
183
214
113
173
282
203
187
216
172
218
168
218
203
189
228
163
175
187
228
186
195
195
154
228
220
206
178
187
229
148
220
154
203
222
225
194
245
190
195
241
177
205
183
245
211
208
243
167
199
193
230
218
211
179
214
199
206
231
245
183
211
185
177
250
183
182
226
166
201
250
194
228
187
204
178
272
139
194
195
185
255
190
183
187
191
196
188
148
149
212
236
207
161
238
201
191
143
196
179
194
216
234
210
252
229
189
171
188
207
226
174
208
196
112
172
167
191
218
153
240
178
168
192
227
206
254
188
188
221
169
176
191
177
209
187
151
221
216
212
208
218
216
220
182
165
213
167
171
212
198
187
189
258
143
202
228
194
198
157
218
109
170
252
220
216
199
185
212
232
248
195
260
238
156
178
195
199
196
234
129
206
245
154
247
200
188
156
212
187
222
194
242
152
223
154
162
234
219
111
233
276
194
193
154
219
227
213
157
236
196
272
204
167
175
192
277
233
210
228
203
191
215
155
196
171
254
176
184
159
201
234
226
152
237
219
184
298
156
238
227
106
224
174
222
277
210
187
249
187
232
201
253
218
160
187
130
168
223
155
191
153
210
178
185
167
250
248
199
221
166
182
242
214
221
215
194
209
121
227
200
201
207
263
158
177
238
184
179
184
202
191
169
266
212
171
192
188
223
210
245
161
154
136
205
196
189
242
224
222
182
126
179
227
137
182
283
180
172
133
223
203
204
211
237
235
216
253
205
193
180
184
236
232
158
184
156
240
138
163
118
172
158
203
195
244
211
206
165
200
142
235
202
243
339
238
201
164
240
188
258
212
202
122
237
194
190
228
201
191
216
237
214
192
241
165
199
199
232
215
250
221
148
224
189
191
189
194
147
138
182
230
159
283
180
205
238
242
150
213
160
224
215
170
187
192
162
194
198
294
207
164
183
265
175
208
129
183
268
191
165
226
166
235
191
224
247
219
176
137
194
244
133
200
240
195
243
208
180
222
191
185
238
215
179
168
252
177
214
191
209
183
201
213
245
131
210
233
209
231
198
127
220
219
189
178
195
212
248
242
237
120
213
217
199
192
233
229
230
188
219
215
135
177
156
227
173
168
138
163
226
190
203
139
226
249
184
229
159
252
243
182
160
144
189
248
254
196
189
236
138
228
161
157
202
240
218
157
249
182
182
160
175
164
165
175
223
223
200
151
202
213
165
230
177
176
225
235
264
213
215
126
226
285
234
184
150
138
232
184
177
128
181
148
245
220
216
226
177
147
264
213
237
207
212
139
201
218
169
160
249
194
189
161
220
209
185
218
159
186
173
125
161
166
205
257
225
118
208
214
172
157
195
177
159
195
189
159
237
228
214
186
243
196
201
170
240
194
225
240
196
250
259
166
210
253
267
208
200
218
196
242
232
205
259
173
216
218
226
267
203
176
110
198
190
196
171
205
264
239
128
172
242
202
195
179
204
204
231
223
202
261
222
222
245
232
178
235
204
148
220
164
218
206
226
209
238
189
216
204
136
152
188
196
162
128
218
195
139
227
171
168
192
188
182
235
193
186
205
223
162
120
201
206
216
149
160
180
200
212
279
247
267
156
193
215
217
185
165
242
239
193
190
182
220
161
168
169
203
218
231
209
204
136
241
233
212
143
179
148
189
213
149
143
272
244
216
197
171
208
235
199
173
176
161
206
164
177
244
192
233
225
165
256
200
167
184
174
216
108
250
241
205
238
200
171
189
203
188
177
231
211
160
164
231
178
215
195
219
198
217
188
212
199
204
174
190
201
156
227
214
179
210
168
183
246
181
229
214
200
166
197
154
176
202
249
205
167
175
220
157
235
168
241
214
221
200
191
219
167
207
174
199
207
215
167
200
236
210
211
247
219
139
217
184
229
175
240
157
177
151
209
192
158
215
206
204
180
145
220
239
168
213
138
208
215
268
251
188
231
290
199
196
169
237
253
193
225
273
181
193
244
253
189
283
266
219
226
138
246
248
221
212
106
237
137
182
208
227
152
175
194
161
237
215
221
201
249
200
201
132
272
181
227
268
167
210
264
230
223
207
236
209
210
260
187
254
236
254
206
260
229
235
253
177
156
229
131
249
146
230
209
211
227
182
233
246
224
229
235
198
178
211
219
206
220
137
177
216
255
292
215
223
192
209
265
210
213
219
160
176
192
233
234
119
167
148
220
226
211
180
196
258
140
154
227
225
239
156
219
206
246
196
293
159
299
233
212
225
253
133
203
219
168
206
181
236
217
246
194
225
186
236
182
201
165
157
247
201
182
160
174
185
181
184
240
183
204
123
166
192
197
229
190
196
103
206
215
196
230
136
216
147
134
273
213
196
238
207
166
164
188
121
245
207
213
181
242
218
235
216
192
221
256
189
226
176
141
152
230
129
152
211
215
206
228
208
243
211
220
163
198
212
153
208
180
253
149
219
233
196
233
204
159
198
233
229
200
212
227
227
193
218
237
205
165
168
244
177
179
172
241
206
212
258
197
159
205
199
193
139
188
169
168
165
216
197
166
198
183
188
219
159
229
109
241
227
162
237
189
137
203
157
184
214
148
232
176
260
196
142
196
182
236
257
218
176
201
161
254
187
192
222
145
184
212
174
201
258
264
158
216
220
233
149
190
168
187
198
200
198
179
230
174
201
252
185
120
152
129
231
105
174
202
221
197
199
210
199
207
160
235
184
236
253
189
206
219
199
244
260
136
164
192
191
229
247
278
168
207
212
217
198
234
158
227
193
217
210
268
201
235
226
221
170
265
235
197
168
197
213
203
190
236
198
186
187
232
211
197
216
186
211
181
294
219
230
189
157
211
217
175
160
206
211
181
256
176
247
168
224
261
267
193
157
197
243
165
110
220
204
214
210
269
214
180
235
178
178
222
233
179
179
161
215
286
201
175
174
207
171
186
166
239
270
218
234
129
189
260
180
186
229
177
176
219
186
202
185
203
202
146
193
221
206
226
194
206
185
166
252
155
238
169
195
210
129
218
200
167
176
209
140
186
183
150
206
195
199
179
200
222
177
199
191
179
215
167
224
179
214
193
227
194
176
227
266
204
196
204
154
158
210
204
221
242
196
201
203
184
210
213
168
219
183
187
195
235
174
159
179
218
238
216
165
252
172
253
155
200
169
195
139
171
165
226
201
193
216
272
214
204
260
245
214
247
188
187
253
225
163
157
190
216
178
206
185
177
220
194
168
247
191
149
205
167
213
171
190
227
159
180
204
196
194
150
245
183
243
174
257
231
206
235
221
203
181
211
202
185
259
220
196
202
170
131
229
232
243
177
187
207
209
220
131
229
216
237
190
188
202
206
194
165
191
116
189
236
175
132
250
164
132
206
226
209
241
223
238
253
174
175
201
238
172
172
137
78
187
163
192
236
250
176
163
215
219
167
237
227
200
216
172
212
228
184
194
145
214
189
154
144
162
218
296
216
201
190
203
252
197
197
231
196
193
228
195
208
133
234
175
192
226
222
164
229
242
125
170
249
261
185
184
153
195
221
170
206
165
253
249
156
228
196
252
216
220
191
199
150
219
182
255
211
174
171
176
225
195
156
231
198
215
170
162
166
159
223
113
237
206
154
213
229
182
163
178
207
164
227
174
239
155
227
209
204
149
215
179
165
218
168
227
234
194
180
207
168
246
214
214
192
213
195
188
258
226
209
199
225
188
168
222
150
150
231
164
144
139
241
178
160
189
169
267
155
209
225
204
174
273
225
219
182
204
251
145
165
160
169
169
199
200
202
225
180
192
191
200
188
254
166
156
238
243
204
205
191
174
231
188
204
248
249
182
227
179
210
177
132
195
173
218
208
211
152
163
233
154
275
176
277
214
188
215
214
176
210
197
242
183
177
179
193
155
176
243
169
192
240
219
216
247
159
232
164
235
171
184
253
197
163
282
231
250
174
217
183
192
210
151
216
211
197
247
198
263
177
186
207
183
239
241
181
245
176
202
208
253
236
208
206
208
218
201
225
207
275
233
159
211
222
149
227
186
195
224
256
208
239
178
165
206
255
213
189
195
231
151
232
169
148
155
219
179
239
194
228
236
229
183
235
193
216
195
197
198
181
173
194
217
161
163
202
226
190
238
215
226
171
101
193
174
233
149
178
211
232
216
178
185
118
226
151
191
220
172
183
237
160
193
267
186
193
201
244
206
224
199
171
228
161
200
250
152
216
149
145
200
241
180
206
194
241
181
224
160
207
224
233
204
169
215
238
187
242
207
177
200
199
163
218
205
233
251
224
211
187
214
215
230
205
160
127
234
195
193
165
180
236
195
255
203
199
220
207
215
163
191
151
198
155
239
178
210
143
204
175
142
150
192
255
204
136
189
200
177
179
219
229
199
168
198
195
199
220
200
163
199
239
165
124
145
172
208
183
190
138
219
231
210
203
197
242
175
220
199
172
212
136
204
174
172
165
186
121
162
208
145
226
181
176
228
204
198
249
203
258
181
223
133
178
204
254
208
223
135
185
158
202
228
112
208
201
284
214
205
180
212
174
176
178
246
186
156
232
225
202
187
205
198
104
249
195
185
270
211
169
249
201
218
224
134
149
220
216
187
222
176
210
212
213
179
263
209
144
127
176
236
159
177
176
206
308
299
181
225
131
192
176
177
207
238
209
246
192
258
158
193
230
204
173
215
175
257
256
221
189
169
192
154
177
153
174
212
255
207
193
186
217
185
179
191
231
170
175
145
194
204
223
214
154
200
172
141
204
226
140
185
196
249
223
192
153
179
228
211
166
174
225
197
211
215
182
252
190
192
204
136
214
249
201
192
191
257
208
184
220
157
194
212
148
147
226
217
290
164
228
246
232
223
215
154
236
211
211
245
144
184
205
173
171
168
180
187
231
173
220
189
132
199
188
227
130
232
199
176
176
167
140
202
187
161
216
258
200
167
222
207
225
236
209
252
201
200
220
197
217
124
218
226
166
177
162
196
249
142
199
230
147
207
159
220
182
278
238
209
213
244
272
235
228
222
167
211
193
192
258
131
153
232
164
216
236
263
183
202
165
164
228
189
166
205
230
178
235
158
222
264
163
192
191
199
215
178
257
166
174
199
203
182
183
217
203
272
196
263
213
221
233
212
261
208
132
203
262
200
237
241
143
156
175
217
207
185
164
166
249
208
224
225
157
157
145
185
145
228
166
205
274
142
229
192
222
202
272
204
242
176
184
190
213
202
202
182
245
172
173
235
169
192
221
167
205
198
195
187
185
217
205
131
222
220
183
247
175
192
192
173
250
253
220
186
183
171
174
209
221
140
177
199
252
254
208
237
230
198
228
184
218
225
148
188
225
155
207
236
217
186
191
232
198
190
148
138
206
222
218
247
229
209
205
218
136
188
175
201
257
148
155
176
186
173
174
209
219
211
206
234
175
286
169
206
196
168
175
195
200
225
245
195
233
215
261
262
217
183
204
221
186
172
189
208
225
179
205
243
215
228
262
225
231
236
172
261
186
241
264
245
218
216
264
225
203
157
190
236
201
182
163
186
206
239
187
234
210
184
218
142
219
191
208
229
164
219
199
239
252
182
227
192
245
145
221
240
234
177
282
219
196
222
166
243
203
165
221
238
156
172
206
256
224
240
165
211
254
165
211
171
208
222
141
232
177
255
208
170
199
183
161
206
251
184
167
215
215
224
214
255
166
212
198
195
228
180
185
161
253
206
162
148
222
234
215
202
227
173
222
175
236
154
186
205
178
135
182
198
203
155
187
254
245
213
198
237
229
214
183
194
223
248
220
191
210
190
206
162
160
177
228
156
178
179
122
237
196
160
198
226
194
201
220
217
198
178
222
209
230
159
181
199
183
197
201
158
227
205
193
131
220
169
186
201
145
174
178
225
257
186
239
248
147
249
170
215
155
226
161
207
242
179
199
200
235
178
143
233
247
289
214
166
238
178
237
187
190
210
181
196
179
185
244
180
230
239
218
185
204
272
182
217
234
238
197
163
159
178
210
193
179
204
217
202
191
162
122
175
171
175
244
199
258
200
217
219
240
224
173
193
174
202
180
177
180
202
217
173
137
229
194
179
182
198
172
231
177
259
200
188
234
188
130
273
242
204
200
206
188
181
200
184
254
202
191
178
163
160
182
235
226
212
185
224
230
158
220
237
214
249
209
154
108
168
212
176
216
176
163
266
194
131
157
180
234
238
215
180
169
240
166
188
158
190
222
250
233
205
241
205
160
283
152
261
205
130
187
176
136
216
194
192
188
137
193
186
267
180
226
171
187
138
216
172
214
230
236
236
212
204
276
191
218
215
231
224
180
143
184
230
226
242
97
302
244
162
214
156
175
186
236
189
246
178
204
213
161
151
192
159
211
268
198
253
211
218
212
258
229
186
153
159
193
215
224
239
238
198
217
180
165
209
162
171
194
215
172
214
256
196
197
204
188
215
230
230
184
223
174
237
228
208
202
216
166
205
209
244
149
160
160
160
220
198
227
201
219
203
173
278
191
239
189
210
180
213
169
165
172
236
182
197
151
197
183
166
208
192
238
168
165
179
217
202
194
199
198
190
178
97
182
191
200
216
151
182
179
195
186
157
170
171
210
182
136
223
175
152
207
180
166
243
190
226
218
280
179
224
236
197
211
227
240
223
206
234
185
182
198
225
160
194
216
229
186
208
220
196
234
159
205
190
223
183
180
164
227
229
254
191
146
238
180
168
177
130
163
211
239
208
180
219
133
248
194
220
209
268
249
191
161
211
237
166
245
251
198
204
210
188
154
206
211
235
179
255
256
238
197
221
230
134
239
233
198
235
175
170
183
183
185
196
216
261
186
248
217
220
172
211
198
206
166
216
240
221
191
162
211
201
191
196
209
242
218
197
230
186
130
212
197
228
176
222
146
211
250
225
245
221
175
238
205
216
223
218
138
252
183
127
173
177
200
172
205
180
267
258
272
175
171
222
259
224
211
178
204
171
197
187
201
235
207
190
236
215
227
211
205
229
173
213
249
206
194
185
204
246
239
161
205
188
155
218
190
103
188
268
216
179
205
192
169
192
232
210
203
184
212
153
170
206
179
226
185
282
170
262
207
153
209
217
194
126
234
211
173
177
279
214
182
170
255
218
185
228
191
190
139
175
217
215
243
197
249
225
233
245
202
185
170
161
223
204
177
220
169
255
157
171
198
195
223
180
157
166
200
206
210
260
113
165
134
215
185
246
143
210
196
168
217
199
219
188
130
185
225
189
153
187
200
239
188
192
214
242
199
189
197
194
156
186
229
173
188
193
190
233
241
182
239
207
177
238
261
167
187
159
189
203
228
218
212
236
207
211
216
158
153
198
125
189
181
229
184
224
182
268
169
209
241
244
115
206
174
258
204
188
232
186
131
146
135
190
239
230
235
208
184
183
178
225
150
257
240
162
237
165
262
199
198
173
196
199
184
200
214
201
205
221
172
247
201
224
230
235
197
233
201
205
226
225
212
269
192
193
191
213
235
216
180
251
210
203
179
226
176
199
189
221
161
161
193
210
244
99
228
113
211
143
175
221
219
190
205
219
227
216
200
108
182
156
198
228
162
180
184
222
200
165
171
193
230
156
296
244
190
235
204
220
175
223
178
94
212
199
210
204
219
147
194
134
200
194
218
225
225
234
204
249
178
182
211
178
124
202
176
195
194
216
207
217
267
234
194
182
193
181
212
179
194
216
240
243
193
222
200
208
157
258
183
192
240
217
151
168
196
204
223
211
240
216
268
205
173
209
236
185
172
192
183
156
192
221
255
172
202
217
240
233
147
139
187
197
203
180
214
149
190
228
202
246
166
245
276
254
200
222
171
171
117
173
152
241
224
206
174
166
249
224
170
192
202
159
166
160
202
186
202
198
172
199
204
176
207
200
155
194
186
242
222
178
179
191
231
219
262
263
239
189
166
225
164
197
205
219
204
214
186
206
245
224
271
233
193
186
193
231
237
160
190
204
150
192
195
200
272
193
223
245
206
180
250
154
187
239
184
196
261
252
204
216
231
246
191
217
190
204
212
228
198
201
125
129
236
205
264
171
235
160
233
214
215
261
236
199
207
171
195
240
159
195
220
177
185
225
179
267
215
202
246
222
228
288
137
162
169
220
187
216
129
184
221
184
199
211
184
185
214
229
235
219
229
226
170
220
268
167
143
231
239
172
176
174
207
199
216
268
216
228
159
202
212
204
203
215
277
158
203
205
178
244
188
175
209
138
187
191
158
237
216
149
224
209
251
184
169
156
193
228
156
208
217
168
189
238
217
184
190
207
286
193
149
264
221
236
232
224
208
174
258
131
184
189
206
200
161
216
202
159
203
178
216
233
244
173
175
188
191
216
186
259
221
197
160
150
135
215
194
190
259
183
161
261
216
167
145
157
145
156
132
214
171
225
214
228
144
206
218
191
201
173
236
199
190
187
177
203
174
163
233
200
168
233
192
171
204
248
240
256
197
230
191
238
199
179
268
215
217
193
234
203
180
220
210
171
157
181
257
157
148
204
124
135
174
171
191
234
208
210
208
212
219
207
220
259
152
192
135
236
154
215
189
219
232
168
129
155
212
216
223
151
207
188
169
212
208
139
166
199
181
249
174
256
214
140
230
206
212
166
221
193
156
238
187
186
231
135
129
233
178
230
235
182
235
182
188
196
166
199
151
220
175
229
135
192
194
179
143
136
201
166
233
239
207
187
226
153
221
195
177
193
189
205
184
217
202
190
235
184
236
231
237
206
198
167
302
203
217
196
201
186
180
203
239
184
210
118
177
149
161
205
213
218
159
227
131
257
197
296
191
301
188
242
107
245
196
223
209
226
160
203
200
176
229
206
178
181
228
186
201
255
249
231
96
179
154
298
176
188
220
127
248
170
226
258
184
235
193
223
232
249
173
149
247
158
186
196
222
223
256
214
212
183
201
190
177
184
235
166
179
233
159
191
166
269
259
186
186
176
240
206
173
159
179
218
73
116
255
169
203
207
228
153
218
150
201
249
170
182
202
223
177
186
211
207
184
259
150
210
210
170
162
230
196
211
217
202
149
172
146
252
217
228
172
194
178
153
154
176
255
249
203
239
160
183
201
207
142
125
191
235
218
139
225
225
178
175
218
203
140
190
166
155
201
217
151
211
217
235
212
192
209
200
219
195
190
215
223
206
188
172
168
131
223
142
162
193
232
110
170
212
240
155
219
176
221
238
201
204
190
206
189
178
175
165
164
164
168
191
250
132
234
167
191
174
226
223
242
202
172
254
189
274
250
184
218
203
216
153
184
178
207
225
188
150
184
224
173
225
168
174
165
239
163
201
192
165
181
250
185
253
167
186
262
116
216
203
152
219
202
192
216
191
165
159
223
229
196
154
159
161
226
172
130
179
163
198
188
222
238
211
196
178
201
205
234
199
171
177
175
247
181
213
160
221
256
138
208
233
198
211
191
175
214
141
166
181
198
180
269
273
203
207
233
221
284
222
207
226
152
249
185
199
185
229
211
194
231
204
212
184
193
239
140
258
209
181
196
146
142
200
171
227
196
156
245
174
224
238
212
216
221
200
185
201
174
162
192
229
183
194
201
181
192
187
149
241
211
238
211
203
191
273
183
243
252
190
225
153
231
179
201
261
207
178
170
233
236
140
116
158
179
155
176
215
209
164
198
199
176
195
196
206
217
229
235
229
105
217
197
206
159
126
234
239
198
236
225
176
226
169
243
277
202
195
174
195
200
180
177
222
187
210
164
154
213
223
209
198
212
218
227
185
140
208
220
200
213
165
167
163
233
180
188
179
241
205
196
162
247
180
229
143
173
223
233
153
188
199
224
197
211
133
215
233
233
219
216
236
147
265
152
203
157
208
214
202
230
245
241
179
207
195
228
161
234
190
161
212
200
103
195
239
219
198
184
204
254
196
276
208
166
147
166
202
214
219
112
191
214
242
220
143
200
240
234
219
257
177
214
123
177
199
179
261
154
169
210
242
210
244
207
168
193
167
176
170
180
172
205
183
240
135
246
245
155
163
245
168
174
200
191
216
200
209
230
174
197
228
189
186
187
252
211
179
206
193
177
196
225
243
139
224
194
159
167
273
222
172
188
222
191
259
212
182
221
266
181
191
237
198
211
200
149
224
170
225
177
186
180
156
209
236
205
220
177
272
194
173
137
148
225
136
175
236
154
218
234
199
218
248
215
217
167
241
173
170
150
184
176
193
203
249
240
208
221
270
203
227
176
189
199
184
220
213
248
258
185
221
219
155
293
273
211
212
190
212
210
173
179
239
196
208
210
206
229
166
244
244
231
186
203
221
134
202
183
222
195
138
243
219
223
176
194
230
202
201
224
182
150
248
258
231
206
172
161
200
218
238
246
221
157
209
208
234
236
186
196
236
203
190
178
202
123
202
245
194
186
202
200
130
251
273
240
149
249
180
169
177
209
176
197
221
260
165
128
176
204
183
226
151
260
184
142
234
251
200
224
250
237
163
167
244
192
166
137
210
186
212
251
245
187
139
213
267
210
213
169
201
221
209
155
213
181
247
143
164
195
208
241
209
170
194
213
202
188
170
208
172
190
209
207
178
151
181
188
210
171
194
192
146
184
233
245
215
246
214
177
222
221
164
205
227
163
245
244
220
192
203
151
179
240
189
223
200
233
236
210
240
257
208
241
208
208
214
243
193
257
136
195
198
183
214
193
167
192
173
228
156
212
178
257
254
145
179
210
193
147
177
197
230
230
173
218
204
110
175
200
174
215
207
166
165
172
144
186
200
185
206
145
223
228
213
273
241
232
207
142
226
246
219
229
210
239
252
206
266
162
184
233
226
174
258
258
194
135
184
220
120
235
238
202
236
192
169
242
178
220
137
176
207
113
217
199
229
148
202
211
176
168
198
225
137
133
240
245
229
211
159
199
173
234
141
181
193
262
240
164
215
197
214
209
225
234
123
214
200
207
185
180
135
159
147
233
191
181
235
227
151
235
180
216
262
196
167
244
245
230
195
224
245
200
158
150
235
189
289
149
199
162
280
200
171
213
213
223
229
166
233
188
209
167
191
194
228
177
141
170
185
202
131
157
210
155
159
201
197
229
165
212
195
174
224
206
202
167
173
220
257
194
185
140
206
208
221
203
210
205
186
205
214
222
188
177
250
150
78
266
209
200
241
189
175
197
249
190
255
219
164
200
179
265
308
210
179
174
201
202
215
175
192
175
199
147
198
159
141
248
258
154
158
147
207
212
234
202
222
243
206
222
187
235
184
199
198
227
154
205
165
205
216
208
147
232
168
216
214
166
211
191
209
213
111
183
224
191
191
242
171
208
211
160
228
210
227
194
161
236
192
185
169
214
218
233
236
214
150
133
226
213
178
146
236
173
238
217
159
284
193
181
145
236
170
211
207
208
197
136
203
207
161
215
224
239
166
213
237
240
150
154
212
217
214
210
189
200
190
192
206
235
168
232
188
176
163
214
200
166
213
207
193
245
256
165
199
175
221
197
200
222
255
162
197
245
257
231
240
195
188
231
207
201
178
196
199
135
229
129
151
189
171
209
206
217
172
173
200
186
202
238
156
197
222
287
217
228
177
249
236
252
163
219
223
156
204
224
210
195
267
227
275
161
145
253
218
205
167
203
150
177
195
209
155
240
211
224
260
147
136
251
167
254
135
185
211
246
164
174
207
225
165
149
213
145
224
166
207
191
179
249
169
202
241
193
201
214
222
181
250
218
140
202
211
141
157
157
217
238
284
258
177
216
187
190
230
222
160
184
173
181
172
141
186
246
200
209
268
199
164
149
203
206
185
132
233
204
258
150
191
219
176
160
213
258
215
224
173
212
190
183
186
263
182
192
201
205
244
230
202
134
169
209
172
262
195
169
202
249
200
224
206
219
224
270
171
150
180
192
206
148
220
231
245
150
265
159
231
222
233
161
189
224
215
225
214
190
229
237
242
200
172
178
158
179
240
249
217
151
150
188
172
168
155
168
168
234
178
229
221
150
230
201
250
192
230
143
239
178
250
181
229
191
259
226
246
217
210
180
211
221
188
191
206
198
177
206
203
159
232
227
187
202
215
241
207
182
222
192
176
173
181
219
181
163
246
181
164
247
199
178
162
176
226
145
207
194
266
224
201
279
147
223
244
155
122
215
176
187
173
237
198
200
178
194
147
194
169
227
186
169
215
203
228
166
179
219
234
227
211
210
235
214
158
242
170
183
240
258
203
192
198
194
162
190
149
221
199
195
256
223
241
159
160
224
185
219
230
257
162
191
220
181
181
214
228
216
162
276
177
239
203
147
211
184
229
219
153
210
193
201
210
178
234
214
239
123
238
156
188
180
242
191
231
136
155
224
278
159
194
234
233
235
152
229
155
213
240
214
202
258
204
258
162
193
174
181
176
171
178
178
248
183
215
270
237
245
214
196
174
182
206
234
234
226
266
237
217
221
177
243
210
229
230
205
195
209
250
258
233
176
220
176
165
215
205
186
241
173
199
222
244
200
174
213
244
222
206
171
279
144
162
175
234
229
209
189
194
166
145
258
211
237
158
208
183
175
208
120
172
241
198
180
225
190
214
147
191
230
159
203
226
168
160
219
209
226
167
245
197
183
209
162
190
213
166
139
239
218
210
260
196
284
178
212
197
165
276
203
209
165
226
241
168
189
218
221
153
237
224
134
248
200
198
209
183
159
183
203
219
250
192
188
172
192
184
157
187
185
179
196
223
196
171
223
158
212
189
213
149
259
246
228
229
189
216
285
207
167
216
239
210
232
187
215
209
202
179
213
178
214
222
196
227
240
193
198
194
223
220
223
209
251
155
179
204
135
182
236
194
195
191
251
203
253
249
230
142
214
205
192
170
208
152
193
202
223
200
234
157
210
265
179
264
211
164
203
219
208
215
188
263
228
204
201
203
184
218
221
156
189
226
183
162
169
187
174
144
245
197
191
169
184
275
202
219
209
190
221
244
182
177
178
234
244
238
193
194
156
175
180
226
151
204
224
243
224
208
230
170
246
262
180
196
201
234
197
208
175
225
189
170
222
178
156
234
224
244
158
221
158
178
125
199
142
155
154
183
148
153
183
256
176
239
174
148
233
219
221
182
198
217
231
200
188
218
147
200
181
209
199
148
240
205
176
233
191
187
181
153
232
208
195
248
195
208
252
152
165
201
152
227
216
242
186
203
250
167
215
200
206
173
209
203
224
194
245
208
195
191
235
217
176
208
177
172
210
201
188
140
226
213
225
145
156
183
179
219
104
156
212
177
287
188
210
213
208
228
228
195
170
215
199
193
196
200
178
203
212
179
208
173
190
245
135
178
203
221
194
199
212
202
115
182
100
200
197
182
209
270
197
215
175
108
241
167
161
178
158
164
200
230
167
211
221
242
211
242
219
221
165
190
292
202
229
239
231
176
115
163
196
270
132
181
206
231
176
225
201
101
190
191
162
193
174
176
230
256
202
223
215
176
187
211
153
248
129
268
127
175
187
216
254
237
176
142
221
144
204
215
179
193
198
170
166
233
192
187
177
179
235
120
211
93
211
221
208
236
227
149
190
151
218
186
212
191
172
204
229
132
173
201
174
228
218
156
209
231
193
132
204
274
227
193
183
239
236
183
221
191
178
275
210
261
164
180
189
179
177
207
189
241
146
175
136
158
230
246
197
193
180
225
201
191
199
228
155
222
239
188
226
206
175
181
200
141
214
214
159
218
130
174
206
206
247
245
180
171
166
208
188
161
218
181
219
226
125
189
162
205
204
161
194
265
203
202
210
192
203
164
194
188
260
226
191
238
213
215
152
205
194
207
157
233
193
224
168
184
121
192
200
148
177
216
254
204
183
204
150
217
208
173
198
149
254
142
192
229
226
209
212
221
233
221
240
239
206
193
264
195
210
160
218
180
248
199
203
208
157
199
178
224
196
224
193
243
218
194
152
278
181
227
202
198
155
207
243
134
214
209
239
202
193
187
235
143
226
246
172
231
206
174
149
171
229
202
240
176
247
235
202
199
184
162
180
168
132
203
198
178
167
208
241
164
197
165
217
200
124
183
201
243
154
223
184
201
238
249
187
205
160
167
262
76
242
194
264
223
233
181
198
174
210
188
242
205
189
180
187
132
194
197
195
184
196
235
220
251
123
220
227
253
159
131
262
236
200
181
140
181
260
183
174
181
140
234
246
213
188
283
183
193
173
175
191
151
231
259
225
231
189
210
289
165
183
258
190
222
237
210
138
220
218
222
197
207
184
176
232
208
222
166
237
252
195
240
186
221
190
212
206
165
214
250
181
200
240
172
281
224
204
182
174
201
172
224
184
159
184
162
171
193
232
209
185
235
207
236
176
182
273
200
204
144
151
205
164
160
144
130
217
211
185
194
216
161
230
112
143
258
178
189
162
210
177
128
160
180
228
141
168
137
244
199
236
220
247
271
135
187
225
187
250
235
194
162
257
191
175
197
192
232
173
189
160
165
189
195
195
193
254
170
178
244
222
226
275
202
182
243
213
155
137
159
227
113
176
204
186
116
209
249
205
192
229
225
248
175
225
188
203
181
187
155
223
246
222
147
209
165
190
162
161
145
166
255
139
200
216
162
229
222
240
155
239
144
267
152
181
216
187
244
207
214
237
242
221
197
197
264
231
201
191
166
262
217
199
205
173
184
180
189
247
123
209
229
255
188
162
232
198
201
187
251
213
186
199
245
247
230
198
170
240
169
172
216
278
168
206
204
213
214
158
208
230
228
203
175
199
163
251
216
167
203
166
186
200
235
197
188
188
167
210
174
185
219
240
209
242
236
181
177
111
200
245
184
238
158
215
166
198
207
218
210
79
245
183
169
205
194
201
220
167
242
168
171
181
226
119
155
177
222
225
229
138
176
178
213
247
245
199
106
171
143
151
206
238
191
204
162
186
220
206
198
180
201
235
260
256
216
205
201
251
221
247
220
215
199
206
286
147
207
245
207
190
199
249
238
217
177
162
242
152
234
189
202
208
196
160
236
216
213
215
215
207
238
164
196
270
188
230
254
169
209
234
229
212
225
198
199
238
223
171
215
178
221
227
188
133
235
120
187
216
167
183
226
203
148
146
228
224
146
235
194
231
233
149
149
184
231
227
136
242
183
210
191
180
258
205
182
155
206
214
239
239
234
263
253
200
181
242
159
172
176
216
205
218
162
231
221
133
256
183
231
204
220
281
302
247
197
182
174
147
187
239
208
205
199
216
182
243
210
191
172
226
167
195
186
234
173
159
194
168
238
235
168
225
210
175
168
163
164
129
182
254
206
196
214
205
185
203
203
159
202
224
207
212
190
195
168
169
198
245
269
197
160
121
160
230
210
212
243
175
234
153
241
204
179
253
260
209
215
198
191
153
195
217
195
249
240
198
233
252
241
217
265
241
194
225
195
260
216
188
241
184
219
183
164
207
210
159
230
196
159
188
196
241
169
263
239
201
210
236
173
215
203
222
206
203
192
204
219
225
259
177
172
140
100
201
241
215
167
178
186
247
211
179
230
210
126
160
246
229
239
220
232
272
205
224
247
268
151
174
211
225
157
217
194
151
239
155
216
187
216
259
177
210
161
153
180
253
192
194
187
244
200
233
165
164
158
249
203
185
178
229
246
151
181
207
220
213
189
206
214
195
198
150
192
194
204
244
238
225
154
224
158
225
174
224
297
160
177
242
226
242
162
244
179
182
213
206
175
256
254
206
179
199
257
151
182
212
202
232
216
178
218
182
224
248
228
219
191
202
174
219
164
153
129
171
223
152
173
211
244
199
214
235
231
220
156
166
228
191
204
203
99
199
236
205
244
109
215
246
222
189
242
175
223
257
209
187
225
183
186
249
168
237
243
187
221
249
221
192
245
236
156
205
180
267
133
213
124
209
226
199
210
234
184
216
202
201
171
192
221
194
220
214
165
192
175
215
214
181
204
250
154
140
159
235
221
237
195
208
209
169
167
204
129
179
293
199
150
153
184
179
206
191
253
178
222
241
230
201
169
249
191
209
207
192
157
236
163
199
186
162
212
199
128
190
191
197
184
220
203
277
245
221
230
166
208
220
259
223
222
198
167
211
196
133
200
167
253
202
178
278
281
261
200
232
241
205
226
224
191
230
210
220
235
236
237
200
258
185
212
216
199
200
170
217
245
187
144
202
127
196
215
210
165
176
219
250
178
207
194
138
197
189
125
246
234
219
258
238
164
218
216
216
270
163
173
240
247
173
175
242
165
213
195
257
207
211
145
199
157
230
211
160
166
182
172
150
202
173
180
144
134
202
168
185
214
202
207
222
197
181
202
231
187
202
153
237
195
202
202
198
220
256
245
186
140
194
256
254
180
179
201
217
205
199
178
198
194
237
165
272
249
232
145
177
227
222
167
238
149
178
188
153
223
218
201
220
223
157
228
167
232
233
162
223
178
233
140
214
243
167
261
203
250
252
231
187
184
212
156
254
208
199
242
239
185
271
221
203
190
209
152
220
168
214
191
189
183
254
253
196
217
202
269
200
192
184
191
141
231
181
127
199
193
142
176
176
207
246
230
200
125
188
195
225
161
213
236
233
197
177
217
235
212
244
221
222
96
137
177
229
222
208
241
225
241
216
152
279
225
172
174
236
208
232
172
206
199
142
229
99
212
162
216
245
160
186
227
183
163
177
258
149
240
188
155
183
209
187
210
226
148
122
185
236
187
195
185
205
177
191
190
156
241
183
227
189
153
244
180
165
171
193
199
132
241
146
211
241
164
137
216
164
174
210
185
237
158
179
153
205
175
172
150
201
207
230
197
203
157
184
141
232
217
186
186
223
164
223
162
218
205
186
145
211
130
201
198
240
239
224
144
225
229
218
242
195
175
263
178
130
199
180
200
155
189
216
191
214
178
201
217
232
166
228
165
230
220
260
155
218
220
157
197
236
225
197
188
252
231
188
135
187
166
229
231
197
228
239
228
246
187
166
193
170
179
185
189
148
183
181
185
218
217
196
218
186
210
89
191
156
179
193
271
262
247
213
215
210
219
174
192
107
194
151
166
152
121
191
150
218
137
216
164
237
237
185
167
200
249
205
169
171
176
191
151
196
247
231
223
249
132
207
237
213
203
186
222
105
226
185
122
182
221
211
181
237
224
231
207
213
162
165
171
229
189
206
262
215
183
168
197
196
212
225
151
149
139
227
221
194
215
186
204
210
158
247
200
186
206
223
223
188
226
185
212
241
120
151
219
220
183
157
178
154
164
231
234
227
193
197
140
240
165
201
239
183
180
148
189
213
185
164
192
211
187
213
237
257
198
243
201
149
199
188
166
156
175
237
188
118
169
161
262
233
214
233
203
208
198
168
220
213
246
129
162
219
220
148
156
203
168
272
115
219
266
191
160
265
195
175
175
210
217
234
154
198
133
209
204
160
218
225
162
228
190
274
185
186
223
176
205
243
164
224
162
273
216
187
202
246
211
178
173
136
190
264
191
210
270
201
210
211
159
174
222
237
132
191
169
232
228
201
204
200
227
238
182
195
226
198
215
199
181
245
160
240
198
137
212
232
212
180
182
214
215
205
194
171
231
208
125
192
193
250
203
223
250
211
224
246
150
179
201
238
248
154
200
173
220
223
240
175
183
201
145
192
157
187
235
217
207
241
188
217
178
185
221
197
249
228
182
130
196
207
172
219
214
216
207
183
243
207
175
156
177
208
209
175
168
149
203
217
162
162
250
266
242
209
132
218
231
134
215
208
206
245
165
194
198
166
247
193
193
219
224
191
145
163
208
152
249
211
152
197
181
256
186
197
168
238
185
234
204
126
188
228
230
174
179
201
205
240
128
236
221
189
179
203
199
282
180
207
182
186
246
179
196
218
202
186
195
174
231
127
176
229
232
271
195
219
102
205
196
177
162
244
208
203
202
163
156
127
224
227
214
296
277
168
136
222
213
178
157
179
153
219
167
218
173
178
196
174
143
220
238
161
216
235
167
222
186
248
158
229
180
175
219
236
247
229
210
194
215
211
175
156
221
196
145
198
184
181
210
245
192
229
254
198
234
135
228
184
174
216
218
218
206
214
233
170
208
208
151
218
176
202
184
144
193
159
147
182
198
199
247
199
230
214
208
151
230
226
168
188
189
167
220
100
194
208
241
190
176
142
218
147
104
197
213
229
263
192
171
186
236
158
164
230
174
180
214
196
170
247
176
214
147
167
174
214
161
192
201
172
197
157
213
231
214
147
239
258
194
151
192
189
174
205
242
212
217
172
194
119
190
181
219
237
232
205
141
160
221
209
232
192
197
206
235
220
206
227
252
186
196
191
215
229
214
188
182
186
200
239
198
202
216
232
137
226
144
208
171
112
139
201
181
207
215
221
184
168
199
218
222
151
175
220
221
198
185
192
168
264
216
257
197
245
171
197
151
224
209
165
159
151
187
211
191
206
198
170
267
153
207
208
140
205
151
188
243
200
167
201
243
189
220
215
175
215
184
148
215
169
166
154
284
241
186
264
170
231
202
192
171
196
184
181
175
233
183
198
185
181
249
193
242
171
192
187
162
212
196
240
229
190
207
209
149
230
206
170
222
215
194
165
113
217
203
179
149
271
194
218
189
175
200
221
197
172
204
216
235
153
259
237
165
149
240
180
237
197
195
187
206
254
212
260
190
201
182
243
245
152
136
170
225
199
214
233
204
177
212
110
199
204
196
227
184
251
224
253
216
216
212
224
196
202
189
213
199
210
165
215
223
151
210
208
202
234
243
145
109
233
197
163
196
206
208
200
174
204
227
230
232
139
206
242
203
126
237
211
147
203
198
220
172
210
211
238
213
201
201
241
196
156
196
200
186
155
180
240
162
197
197
195
165
181
256
201
180
248
230
204
193
184
281
194
117
220
166
196
215
173
230
225
225
266
157
252
140
159
184
221
161
186
232
192
161
254
159
183
198
265
204
213
199
160
262
291
203
210
215
231
119
211
219
197
156
263
235
226
236
193
189
173
223
223
227
148
274
167
188
293
234
215
216
192
146
216
201
179
193
159
233
190
207
203
233
110
173
218
170
177
202
151
196
248
176
229
145
211
217
160
206
215
184
165
259
256
191
256
149
206
223
241
175
184
202
216
190
180
203
190
174
217
194
220
138
229
185
202
238
268
232
202
171
247
123
195
201
210
149
161
224
179
177
95
194
148
241
165
124
275
230
193
235
233
203
224
213
197
220
195
246
158
173
220
205
181
230
173
234
261
206
165
169
136
213
178
219
178
179
184
191
208
158
185
254
216
259
270
152
261
222
210
230
189
141
231
196
195
194
138
169
212
206
248
151
171
162
164
150
222
227
200
214
175
109
216
180
213
240
198
263
174
270
230
161
190
164
200
174
137
243
189
175
228
185
183
213
174
207
154
199
219
204
290
107
198
222
234
187
245
191
139
197
204
179
174
227
151
248
160
226
219
250
191
165
176
180
246
183
178
220
201
206
126
207
232
207
160
244
218
204
173
219
172
169
256
204
154
175
208
233
178
240
204
289
234
250
175
192
223
177
211
154
129
152
160
244
202
151
178
220
176
195
203
253
199
217
162
274
163
235
142
135
227
205
205
189
222
158
172
172
182
290
139
146
193
202
259
239
187
183
208
169
176
159
183
179
172
167
203
184
256
197
260
254
254
255
186
206
249
171
209
182
209
185
151
194
163
258
213
238
218
152
216
218
245
200
201
204
237
165
164
247
202
153
190
197
193
218
223
164
208
221
241
148
200
206
153
268
222
251
171
163
193
215
202
164
218
210
167
220
131
206
156
256
200
191
206
154
219
284
126
181
169
213
226
195
274
189
229
213
210
198
218
147
208
216
208
170
251
245
208
167
136
211
226
149
249
205
198
184
217
154
219
215
244
202
206
218
155
218
211
166
231
185
186
193
204
184
169
237
187
141
175
181
187
234
205
200
167
184
137
180
182
211
210
229
191
206
197
201
251
156
200
211
256
121
217
230
147
147
210
221
185
223
217
245
217
167
199
256
192
209
194
187
232
228
213
221
180
201
242
258
161
156
248
200
170
160
123
192
203
192
209
232
192
214
255
183
223
168
201
178
184
211
216
216
236
231
200
231
179
219
198
172
184
272
202
227
211
258
146
174
235
249
195
152
178
187
192
214
239
198
205
159
192
225
134
247
226
283
178
192
191
189
187
133
215
220
243
197
183
186
213
232
205
195
244
197
177
215
177
233
226
241
208
213
200
205
173
239
217
186
197
230
172
150
161
185
193
169
188
251
171
212
153
144
205
174
111
212
243
148
161
211
227
203
143
170
253
273
159
182
196
182
134
202
112
187
229
221
167
213
148
253
197
235
248
208
160
222
170
200
269
227
228
169
252
260
170
163
171
184
226
125
191
239
223
226
226
159
168
178
234
208
175
196
227
233
240
203
138
241
287
232
239
164
186
229
262
183
181
196
220
226
221
204
217
160
151
103
189
209
194
251
140
181
194
253
195
249
163
162
236
215
210
171
199
199
251
200
204
209
160
121
264
236
151
192
208
236
176
210
180
168
208
229
203
238
251
158
236
207
196
159
199
226
207
207
166
244
219
224
232
137
195
235
190
118
188
206
290
159
226
205
174
194
207
200
262
179
187
211
195
141
212
173
236
253
208
210
229
189
227
198
201
240
249
231
189
182
211
195
212
190
197
272
143
205
207
215
189
247
192
213
212
212
137
177
190
229
153
248
269
232
164
251
185
169
225
192
202
212
165
226
181
149
173
160
238
202
202
212
213
138
247
204
202
232
176
237
238
157
201
202
203
175
169
228
198
174
215
229
219
244
167
147
111
189
191
206
282
214
221
158
201
144
216
143
222
214
219
172
238
205
249
215
257
238
234
210
202
205
153
247
222
258
209
159
159
188
185
137
202
179
211
169
198
141
173
218
138
189
164
206
209
224
239
203
275
134
167
218
239
238
138
284
237
203
201
233
178
168
204
185
196
244
219
230
166
202
196
178
141
243
247
201
204
166
194
209
188
108
211
118
207
172
229
232
162
265
273
201
162
222
221
240
181
252
206
236
184
244
180
197
146
188
190
164
164
186
207
176
227
195
183
176
169
159
239
207
261
218
186
183
154
168
194
112
220
197
229
261
229
160
270
161
261
216
153
159
207
163
219
200
180
199
232
162
183
163
203
203
247
253
197
260
216
194
155
145
187
223
236
147
185
257
204
217
207
159
179
271
189
235
252
177
188
183
185
224
226
133
195
140
195
161
178
239
201
177
166
191
218
186
220
142
257
229
206
164
209
215
227
241
185
269
195
131
174
179
224
188
203
174
116
225
133
217
181
202
202
146
173
134
193
240
245
162
218
195
174
170
186
161
105
266
221
186
204
164
231
254
217
150
207
222
190
220
219
211
250
147
199
199
207
224
251
199
112
204
176
250
181
206
200
225
209
198
206
239
216
223
194
226
196
207
176
242
179
186
202
181
261
220
171
197
247
164
222
181
223
195
209
206
272
233
254
213
167
205
206
235
212
195
224
222
251
248
242
188
228
155
259
200
189
231
126
236
205
212
155
207
201
189
201
205
198
172
160
230
221
199
227
199
176
237
124
268
170
190
159
225
278
200
254
159
258
193
193
162
112
155
168
173
232
198
226
279
233
220
189
213
178
177
176
200
157
175
275
249
197
227
163
195
156
181
145
198
222
155
153
227
253
228
179
192
204
207
203
196
208
196
190
178
174
243
175
240
243
199
213
205
218
166
148
193
188
152
174
256
198
124
202
176
245
245
231
174
162
199
197
158
199
190
90
225
203
174
213
224
189
211
190
230
177
197
201
179
205
189
168
213
128
190
150
272
237
193
246
210
221
201
254
231
201
185
209
178
245
183
161
204
252
182
184
154
250
206
219
158
183
267
151
227
204
294
205
290
190
225
240
257
204
156
201
134
127
195
178
182
192
181
234
199
173
186
181
162
157
225
242
101
200
166
163
176
156
245
152
162
235
166
236
234
244
225
207
179
245
150
191
300
179
170
204
170
177
197
190
198
174
170
212
243
196
135
135
261
196
276
232
199
228
205
216
208
234
246
223
137
248
259
243
263
233
254
210
276
199
192
207
225
168
221
206
151
219
229
151
206
229
179
182
149
198
179
216
216
235
240
198
185
155
142
199
274
151
297
217
241
200
201
260
233
222
225
218
204
202
191
184
190
221
242
171
141
179
117
157
157
227
214
196
149
148
205
200
187
193
178
158
187
158
142
162
159
197
214
205
225
199
202
234
199
190
215
177
252
200
274
192
233
117
223
178
278
179
218
188
192
233
214
233
224
239
165
213
227
150
216
249
190
187
218
208
226
202
237
254
236
240
178
228
182
61
170
242
238
224
125
171
195
236
180
200
186
216
189
135
234
202
147
179
201
189
182
232
215
187
186
225
182
173
254
178
171
258
229
214
160
201
209
237
162
179
173
153
266
248
156
187
208
183
220
208
201
190
194
197
186
208
189
199
182
225
182
174
220
165
244
203
219
195
183
220
205
188
170
155
195
175
225
192
184
212
161
160
200
215
153
231
243
164
178
189
217
234
140
119
217
180
101
191
202
248
130
227
216
131
196
162
205
178
195
197
172
248
252
191
218
188
214
246
188
150
244
233
214
196
156
161
149
201
160
189
218
242
169
223
211
153
236
173
205
188
179
152
142
220
254
188
181
216
212
195
183
208
242
229
218
172
206
210
213
215
199
184
186
140
216
152
199
213
227
214
212
248
158
230
222
176
206
226
176
133
226
246
212
180
149
156
171
226
158
191
190
219
192
226
204
182
211
183
195
149
234
212
228
173
235
224
159
246
151
204
213
223
147
260
191
194
164
130
179
168
192
189
144
183
195
195
167
199
242
160
218
261
170
234
209
136
197
184
246
219
229
269
210
176
162
174
211
199
174
207
257
166
187
158
176
246
190
225
214
221
217
241
247
234
178
186
146
200
227
222
122
204
225
174
153
171
181
195
213
142
266
184
163
254
193
189
175
174
244
159
198
200
149
204
211
157
200
188
268
194
219
243
194
188
186
271
220
206
178
195
176
176
176
188
221
157
237
211
182
214
192
228
218
200
225
271
220
196
169
226
266
245
247
182
153
266
194
222
244
188
222
189
200
176
198
223
203
233
126
158
161
167
193
182
123
199
213
202
161
140
173
233
173
243
205
185
169
152
186
217
221
212
206
200
174
207
219
184
225
118
266
266
193
199
215
229
203
195
220
219
209
177
195
236
278
190
280
190
228
211
171
200
163
237
167
206
149
253
159
165
229
197
214
229
196
142
198
191
222
227
268
185
209
174
200
227
174
179
225
261
259
193
206
241
169
183
209
205
181
146
203
192
146
166
252
201
205
157
174
114
218
194
214
202
149
232
147
206
232
175
195
200
251
223
150
195
208
199
177
158
198
248
234
260
170
201
243
153
213
246
173
186
180
195
234
178
160
202
261
188
163
180
192
205
182
237
150
221
183
212
197
192
191
162
183
230
151
208
238
181
165
245
163
147
175
217
231
160
250
256
226
195
200
226
185
214
127
145
208
140
159
153
173
234
204
210
221
160
232
172
167
186
96
157
162
206
166
169
181
259
154
181
252
208
281
231
207
190
170
176
208
228
200
217
178
162
176
174
209
197
162
203
177
217
199
218
195
153
138
225
207
190
201
144
198
193
180
216
130
161
170
196
228
228
192
197
121
174
228
204
190
135
213
190
223
200
182
161
214
154
197
216
189
219
185
172
242
167
162
182
242
214
205
243
198
177
223
239
178
141
207
175
182
251
132
238
210
240
237
167
199
213
174
157
240
244
193
151
231
230
201
230
247
208
182
186
168
235
184
182
187
257
216
167
227
144
230
207
232
206
180
201
178
186
232
157
266
196
209
187
165
201
215
232
253
205
212
221
147
163
195
227
242
219
213
218
190
214
189
189
224
239
217
191
242
188
218
202
176
165
137
190
190
147
158
113
221
249
257
239
204
118
168
209
202
204
170
167
175
178
213
168
206
215
198
229
161
209
214
200
153
219
195
200
193
198
214
221
194
230
219
168
160
238
206
176
138
219
169
185
204
168
190
257
195
123
203
222
199
193
202
249
199
231
116
226
252
199
186
169
186
219
165
225
190
181
208
216
137
222
248
166
169
235
242
182
263
208
242
153
201
161
259
257
194
208
214
221
242
154
182
206
227
192
161
218
215
195
277
166
258
177
185
258
133
199
156
200
170
195
256
225
161
131
220
212
205
146
213
207
255
227
239
237
195
238
185
231
268
179
248
215
222
185
176
205
133
250
184
166
175
219
223
234
209
216
200
243
162
239
204
192
210
221
193
162
256
187
162
229
196
191
250
272
188
181
248
223
197
225
196
214
194
194
157
162
170
236
181
246
202
171
200
233
154
197
178
184
202
208
189
238
219
215
148
202
247
228
230
189
154
154
222
185
179
232
202
231
173
146
212
224
178
212
165
235
177
192
189
218
163
211
243
210
197
219
183
239
183
220
129
221
203
204
192
183
177
188
206
178
217
171
232
131
161
156
181
157
167
187
241
152
166
239
180
223
206
224
219
133
160
263
172
206
219
191
151
255
193
218
197
250
187
142
236
187
186
231
205
199
213
231
195
195
230
242
229
153
222
205
184
157
183
171
179
213
242
239
183
123
161
123
237
233
194
222
226
147
202
247
123
211
206
229
236
222
156
272
223
199
160
176
178
204
251
187
154
161
175
142
250
218
133
193
164
185
203
167
136
160
218
142
273
145
200
148
108
246
243
208
193
168
244
222
165
271
205
194
217
188
201
135
130
162
217
209
222
200
199
190
168
201
226
159
167
193
191
152
190
145
179
214
173
199
219
211
227
168
234
215
233
152
257
199
207
247
190
223
205
244
199
221
181
227
166
175
199
258
192
230
184
196
113
176
216
132
201
178
225
211
178
192
224
129
205
236
184
196
140
181
184
183
262
215
233
210
213
204
220
222
140
230
226
215
206
150
211
227
251
185
249
194
181
233
228
154
183
205
215
226
182
208
223
189
203
164
210
132
231
153
194
236
222
225
168
219
202
223
169
161
166
160
196
230
196
176
147
234
186
197
230
195
215
177
209
216
247
161
229
212
148
206
214
196
199
181
201
238
232
157
224
159
193
195
152
183
203
148
216
220
138
221
246
166
184
215
198
186
194
221
229
222
194
213
216
201
222
226
228
220
242
249
254
212
220
205
201
224
171
258
236
214
203
151
124
151
235
222
211
211
194
245
202
220
167
189
182
189
193
213
138
235
184
178
216
147
242
236
186
196
223
190
139
153
203
218
261
208
199
268
150
215
211
193
214
180
251
200
181
215
223
229
145
233
219
260
193
199
183
164
215
230
294
153
244
186
220
171
216
165
215
153
230
227
164
174
134
232
131
209
226
181
228
171
192
253
250
172
261
219
257
272
259
198
198
218
212
207
195
180
227
221
170
192
221
223
187
193
131
185
182
243
222
225
188
220
234
234
190
211
197
240
237
230
200
195
166
230
225
225
178
237
248
174
180
201
208
133
262
221
201
167
253
168
230
222
244
173
201
189
236
203
251
198
184
156
176
200
167
181
176
222
216
174
223
177
217
247
216
232
247
165
187
191
146
227
174
241
181
151
194
245
239
197
208
150
168
230
271
214
222
244
150
212
247
240
194
164
233
217
215
187
224
168
173
209
181
170
223
200
190
166
268
170
153
189
233
245
245
165
171
281
165
211
190
169
238
173
137
176
216
224
224
190
182
210
198
250
228
167
191
242
213
205
218
86
207
205
235
135
176
218
211
164
193
147
233
155
186
199
224
159
201
225
212
239
216
192
167
215
189
198
236
219
233
218
243
243
186
242
277
132
264
201
272
180
178
251
225
198
216
220
254
156
239
245
214
234
180
217
175
223
164
156
183
198
169
225
225
176
206
222
203
195
223
188
180
243
167
175
181
177
239
194
224
158
166
212
224
209
249
237
230
99
157
245
151
248
216
192
189
196
136
188
205
202
193
191
229
222
181
179
139
189
175
242
191
176
135
191
131
168
207
179
187
176
189
233
216
144
182
124
132
223
154
170
255
195
221
200
203
243
205
182
147
262
200
197
182
246
146
175
177
200
165
154
221
175
155
208
185
192
227
187
188
242
185
228
232
178
254
184
176
124
227
160
194
218
190
178
253
205
179
220
207
240
163
191
159
197
195
225
250
286
169
159
230
222
192
229
224
247
234
141
251
181
175
195
195
229
249
216
240
223
233
218
243
163
230
222
186
219
224
149
206
219
149
219
130
253
246
182
214
202
164
174
188
196
213
175
215
178
226
193
242
224
189
176
181
242
153
205
173
203
205
245
217
251
223
169
147
190
150
237
195
215
177
91
214
223
220
160
223
187
205
216
257
213
172
243
208
220
247
163
183
205
222
206
185
170
193
204
182
133
250
205
204
209
173
132
215
186
220
226
201
243
253
146
214
192
197
168
219
193
181
254
206
263
219
161
192
202
217
295
174
234
193
237
207
196
202
212
190
218
147
181
152
166
186
239
159
237
197
180
187
217
225
248
176
196
221
249
190
236
258
224
244
204
240
227
273
174
216
124
152
231
185
216
264
207
281
239
190
160
166
187
208
183
213
130
193
200
221
236
233
182
188
181
189
231
165
174
210
239
204
201
152
150
245
241
244
267
144
196
198
192
235
191
208
151
220
203
217
187
173
192
209
154
157
200
222
213
186
177
230
181
196
216
203
198
174
171
110
178
220
203
188
230
209
213
197
189
241
223
194
182
122
185
218
156
159
270
196
172
231
154
261
190
197
167
202
251
159
188
242
182
178
230
170
195
220
208
233
236
190
189
196
258
172
197
240
194
228
168
210
184
178
216
277
204
202
170
251
226
193
188
236
208
204
194
226
153
232
247
158
216
178
238
243
137
156
209
179
169
246
192
164
245
217
305
259
186
218
188
230
93
201
188
228
211
190
148
224
139
221
168
185
269
217
245
271
168
225
187
224
220
189
145
182
258
200
243
177
182
264
191
142
189
173
211
216
217
250
155
186
178
238
222
207
206
167
203
164
145
210
240
218
239
179
154
152
168
172
209
254
131
231
201
220
141
256
203
200
184
162
264
242
226
188
211
171
196
169
161
199
267
205
244
171
187
234
211
200
185
254
190
184
211
187
244
166
228
205
175
263
213
189
205
188
136
178
234
202
212
174
206
187
240
199
221
137
195
168
225
161
228
207
213
204
217
188
119
202
214
208
176
133
230
267
178
161
210
201
233
171
199
210
189
226
188
163
265
192
209
250
244
184
216
234
181
245
161
215
198
160
237
210
210
157
200
253
166
214
190
233
202
200
186
187
222
188
230
237
210
189
179
137
143
190
216
142
136
197
196
180
207
100
193
194
219
125
164
172
231
190
84
214
204
182
241
195
203
188
143
244
167
198
233
183
225
155
250
123
219
181
165
165
203
159
208
221
219
250
214
136
151
242
183
247
223
167
208
273
231
195
199
180
160
235
223
194
249
231
183
159
211
206
167
245
172
245
179
201
183
216
225
174
208
255
170
166
216
215
152
220
234
207
217
208
179
214
161
154
138
168
168
219
137
203
212
155
170
224
202
160
260
254
206
143
220
175
222
215
191
201
163
168
207
176
202
161
198
261
197
175
266
190
199
217
206
184
240
249
216
252
156
162
223
265
201
190
235
182
185
208
220
248
199
181
193
263
233
215
175
229
195
249
139
196
238
150
234
172
186
179
202
231
170
231
241
224
202
159
216
195
196
176
238
195
197
195
202
196
154
186
177
222
234
218
184
209
225
218
223
249
208
190
195
157
271
230
192
212
201
202
180
178
205
225
228
179
237
218
176
183
207
196
175
136
203
210
237
236
186
175
189
193
186
196
166
251
121
253
231
216
168
170
204
219
242
225
189
212
177
241
199
208
259
235
211
254
221
193
221
159
233
179
204
208
110
183
208
169
237
191
164
153
211
141
236
229
184
182
230
146
213
200
200
186
153
163
222
195
247
174
226
241
198
189
215
168
198
204
182
274
119
210
170
211
200
256
240
153
229
188
168
228
219
129
235
139
191
182
176
193
172
179
169
233
224
258
194
154
183
240
202
189
259
151
225
202
182
163
207
164
218
168
209
235
227
135
217
190
191
233
256
199
174
263
240
211
197
182
209
227
215
204
203
195
158
216
140
199
193
200
191
126
196
187
175
220
219
170
175
117
253
189
198
195
210
191
175
167
182
223
223
201
263
202
227
243
235
238
207
197
217
194
200
217
228
217
188
179
200
192
196
157
182
174
239
232
206
217
212
204
165
224
144
198
219
214
165
207
179
204
232
208
147
216
242
216
149
202
158
235
213
202
190
149
226
193
155
187
181
251
153
215
162
221
231
242
202
255
259
232
192
243
261
189
249
223
260
241
158
206
201
180
146
212
199
150
219
205
259
189
186
156
164
187
181
207
216
220
236
187
223
197
211
234
155
228
135
206
214
194
189
174
226
198
231
227
268
175
257
181
175
130
161
175
210
222
167
284
222
236
251
159
231
217
148
276
190
204
182
185
243
175
162
172
177
261
183
189
184
198
180
214
190
165
182
158
198
200
194
220
177
167
212
201
215
178
217
186
254
219
167
179
220
197
220
151
163
180
208
190
219
234
248
203
200
237
166
246
154
243
136
270
206
203
219
258
207
201
194
208
216
230
170
190
178
193
209
224
189
185
196
231
196
176
241
253
198
192
229
170
252
245
282
163
279
163
171
177
213
154
181
209
243
114
201
293
244
214
178
215
246
175
229
239
171
122
162
149
107
251
225
190
173
240
119
228
221
192
250
214
187
203
233
199
218
114
202
105
190
198
167
231
151
223
204
163
195
107
192
126
215
216
230
196
186
206
163
227
225
213
168
172
205
154
238
254
228
188
254
197
191
232
165
163
173
215
189
238
217
226
208
247
225
255
208
141
168
177
184
186
247
174
208
266
239
209
223
219
200
186
156
161
206
194
204
231
174
225
208
139
192
181
182
208
148
286
211
195
207
141
184
255
229
224
172
245
213
254
226
221
210
147
204
211
251
197
214
179
246
220
246
180
257
224
205
178
238
201
167
215
206
204
217
178
205
242
167
213
247
202
188
232
218
233
171
159
220
213
256
200
256
202
184
154
244
179
204
204
155
157
152
222
196
197
122
251
181
227
236
195
223
126
199
206
248
200
232
199
180
176
197
184
166
202
184
224
224
224
224
184
211
163
192
224
225
224
218
245
204
200
242
232
175
151
173
235
230
167
210
224
219
127
158
272
195
227
199
251
236
150
156
163
266
191
150
195
170
233
222
184
176
177
236
177
150
172
240
167
160
147
214
203
234
188
195
213
218
240
231
231
243
216
251
179
211
182
139
181
160
249
206
222
220
197
165
158
234
205
190
199
227
181
264
166
232
179
176
169
186
229
192
198
133
225
161
249
197
173
189
231
194
171
196
171
222
202
190
175
206
176
179
208
185
176
222
199
204
211
217
277
184
178
195
287
170
217
177
218
194
195
188
216
209
184
167
192
226
181
146
221
208
199
183
167
267
201
222
244
190
202
178
178
233
205
237
150
212
147
163
193
123
221
170
225
182
224
262
170
216
178
151
134
176
199
222
194
142
201
182
156
199
162
195
180
244
167
135
173
201
167
260
205
207
150
224
201
247
206
246
162
204
247
199
161
179
187
201
184
160
166
197
158
182
187
106
231
236
153
195
226
223
159
190
195
127
242
153
175
287
193
194
163
185
140
232
216
233
196
168
221
235
216
183
220
99
181
265
204
117
209
217
176
255
159
266
228
218
238
237
202
214
209
233
270
206
213
180
166
185
167
211
204
161
222
224
180
185
255
164
168
218
216
169
204
198
216
160
148
206
218
156
213
200
178
103
150
197
191
175
208
296
198
157
187
199
221
251
173
165
164
231
208
172
200
210
193
175
225
206
161
170
188
211
154
194
238
246
188
158
165
161
222
230
214
253
194
203
251
245
208
205
189
163
164
220
211
165
172
213
190
165
192
181
192
197
227
242
161
235
243
174
218
199
196
171
135
194
261
225
197
206
199
209
174
200
155
169
139
239
218
312
180
198
251
225
174
230
228
187
141
212
176
199
218
185
171
198
174
198
149
138
169
241
189
231
226
232
239
166
199
183
225
128
193
229
224
204
202
221
154
216
186
203
245
226
166
209
183
153
219
172
165
221
193
196
204
266
225
183
187
215
166
157
233
233
205
198
157
185
129
219
190
218
237
180
161
216
212
195
158
201
223
212
240
176
192
242
250
181
219
205
192
177
135
218
222
172
200
211
174
211
206
240
215
283
147
125
150
126
263
166
234
166
213
230
220
246
210
188
164
189
208
188
237
202
186
222
158
199
218
240
246
203
202
247
227
234
223
210
169
197
199
243
182
183
199
207
221
181
156
172
177
192
160
216
164
206
199
140
150
159
230
229
221
165
158
142
170
177
225
94
207
170
180
215
233
251
259
217
244
246
194
175
134
212
148
251
235
216
226
151
155
216
117
155
174
209
180
216
179
189
215
243
215
213
227
209
219
181
222
219
195
224
186
191
194
165
207
212
163
240
152
209
182
206
176
221
214
224
248
229
218
187
175
185
199
196
199
159
199
212
240
144
175
265
169
254
197
200
181
248
190
196
203
204
231
198
223
178
157
249
186
239
186
244
160
182
220
214
228
185
150
230
203
183
157
217
172
232
226
136
167
228
150
139
228
202
212
177
168
200
164
192
158
263
197
173
174
154
236
174
138
130
242
184
250
214
228
179
206
180
186
248
181
166
198
210
190
180
165
236
216
201
181
144
220
163
177
234
155
158
216
130
227
246
148
272
205
224
199
127
202
249
200
198
219
222
209
202
225
223
147
175
180
196
155
232
242
171
198
158
181
176
197
206
181
174
182
202
197
189
173
180
223
207
193
206
194
245
225
138
227
167
241
189
211
191
173
203
237
188
179
189
228
193
194
176
134
215
226
231
204
196
261
163
210
179
213
186
218
171
258
202
212
245
182
219
184
166
182
188
164
209
195
166
176
218
133
191
170
273
183
224
232
203
216
192
224
260
141
204
208
272
236
145
182
230
203
195
241
205
143
146
213
203
173
252
172
279
169
161
235
235
199
208
149
231
199
203
209
198
155
140
136
172
231
163
193
228
197
209
178
220
197
149
207
202
141
221
239
157
174
150
231
225
209
188
191
194
178
204
183
194
163
198
210
190
166
269
163
233
242
192
255
203
184
167
178
220
165
221
180
213
190
129
179
227
239
186
198
232
153
226
200
177
202
199
164
206
239
186
247
234
261
184
180
143
208
173
224
182
233
229
163
195
178
218
188
201
221
218
241
226
167
183
249
209
187
206
208
185
167
270
141
164
259
268
240
209
148
227
239
192
193
182
197
209
240
196
231
236
254
219
125
209
216
195
181
270
159
170
230
224
157
202
216
227
204
260
220
109
203
201
171
183
199
238
189
170
221
223
248
159
187
201
253
192
139
161
246
141
177
239
180
195
259
238
270
198
162
285
229
154
188
190
256
198
214
170
241
242
136
224
152
200
243
210
190
225
134
206
264
147
219
169
177
237
243
161
158
196
197
251
184
191
219
251
189
221
212
197
134
211
236
211
205
163
173
234
135
203
205
171
250
223
131
199
231
191
228
205
209
205
238
218
228
208
213
133
135
215
185
200
210
243
187
200
198
167
209
232
257
164
215
191
142
151
249
234
206
179
206
225
217
201
238
214
239
192
203
249
246
179
145
218
266
133
211
148
261
215
186
219
186
199
193
214
204
168
215
241
123
227
207
191
206
216
186
218
229
201
201
210
216
240
222
210
223
221
159
215
216
217
244
157
196
199
239
217
197
281
259
206
202
209
205
211
185
197
219
198
177
199
284
179
203
171
207
234
232
208
195
193
151
147
261
225
169
205
188
213
187
264
209
203
233
135
203
210
201
211
205
196
187
207
192
247
206
236
210
269
189
199
219
195
253
182
129
145
233
150
200
263
209
196
195
197
178
251
272
233
190
154
207
222
242
220
157
221
146
226
195
187
120
247
239
163
163
173
166
148
216
213
260
173
246
197
171
240
218
170
164
234
130
239
263
197
274
235
201
187
215
127
215
213
194
211
245
253
215
142
235
180
180
192
234
159
172
224
267
209
191
212
229
140
196
203
201
186
256
197
179
241
129
219
224
202
220
183
255
203
189
190
232
171
204
214
212
118
218
220
146
183
244
188
171
224
220
194
194
166
198
158
198
252
211
136
204
201
200
206
212
193
177
188
234
224
198
188
211
210
213
144
169
227
193
284
210
200
209
184
235
202
152
189
180
158
246
203
163
190
276
205
212
216
223
174
178
187
201
173
206
220
192
260
165
189
159
212
146
285
164
185
167
237
134
191
184
210
166
133
195
210
247
211
141
162
248
213
172
172
157
123
217
170
198
187
226
203
230
191
264
187
190
237
146
231
144
200
212
149
229
220
202
204
233
203
233
216
231
197
176
202
144
256
203
142
250
170
165
243
211
222
193
264
180
136
219
214
196
169
251
188
235
172
203
230
171
138
249
255
169
122
184
183
207
154
186
214
193
226
161
147
109
173
180
239
230
176
207
226
146
171
189
152
248
202
254
200
183
112
183
131
220
225
179
200
152
159
163
238
181
171
227
160
205
202
273
220
214
244
210
213
142
239
252
126
198
217
171
275
218
244
226
214
232
208
178
198
232
231
234
190
183
193
252
157
191
164
210
247
189
179
178
148
194
194
198
174
226
204
225
184
209
206
165
201
233
215
227
172
226
148
187
203
229
207
138
193
264
227
150
206
189
242
213
224
183
196
234
203
195
173
179
239
163
218
179
200
191
197
282
166
219
226
204
203
179
214
206
212
205
180
214
181
187
239
255
197
272
223
231
210
197
250
189
207
173
167
220
207
238
237
232
202
191
183
172
178
220
164
139
191
193
200
143
225
244
207
239
198
178
160
196
225
175
157
204
141
199
210
268
164
163
243
269
142
245
181
185
200
248
175
208
203
233
202
219
155
154
188
191
117
210
120
206
159
148
203
217
137
202
203
225
161
158
189
177
229
211
184
192
201
198
243
217
224
171
107
201
200
182
237
196
163
260
200
225
151
169
233
208
251
215
253
215
164
224
187
226
197
218
212
151
133
193
244
230
153
165
181
166
214
190
163
201
228
273
192
173
215
189
284
215
198
223
183
219
197
216
205
143
207
225
146
211
256
177
229
223
236
236
176
244
162
211
230
158
187
224
215
193
206
211
171
187
241
230
245
218
210
135
200
177
210
94
214
219
182
165
184
182
206
148
230
201
192
185
204
244
180
253
196
205
180
160
222
200
165
239
210
224
198
183
209
218
195
193
240
162
205
167
224
183
199
241
287
220
152
191
271
217
200
189
198
198
172
193
210
237
189
218
180
196
177
196
164
229
155
202
263
226
211
161
189
184
222
199
229
136
148
264
242
195
212
255
151
180
269
194
200
170
130
183
261
215
205
260
250
184
251
169
207
237
209
158
216
221
229
217
240
227
172
182
154
219
196
160
174
252
125
216
200
224
199
242
245
180
221
209
209
181
234
189
199
202
235
181
153
205
203
108
240
206
218
210
176
139
168
212
167
190
210
212
209
147
202
183
145
172
234
170
175
182
193
208
175
195
228
230
197
236
207
101
206
190
192
232
190
166
243
161
172
160
192
153
247
100
205
174
204
259
177
150
219
230
191
186
168
189
202
238
160
224
167
220
226
202
177
251
228
162
169
228
176
150
249
181
243
213
164
187
194
211
219
176
203
238
174
118
192
191
235
184
188
183
196
183
232
190
174
163
167
184
191
159
132
188
233
206
193
210
201
198
223
281
245
214
208
238
181
155
173
236
155
205
164
191
234
212
204
158
222
190
236
116
232
226
266
182
200
192
187
159
173
234
198
141
214
158
241
203
178
193
207
184
178
166
233
202
138
217
143
200
224
256
185
217
206
210
202
212
259
188
286
221
177
184
154
235
207
210
250
221
229
243
209
253
176
217
206
177
196
205
165
198
242
192
201
163
187
158
218
169
173
213
184
159
179
113
232
201
231
135
223
199
202
118
206
175
252
228
169
210
215
171
191
190
198
211
236
189
145
203
173
202
144
192
183
198
170
223
243
235
236
225
218
133
197
231
207
216
161
210
257
177
200
185
225
194
153
190
217
142
199
232
221
143
204
164
242
220
259
218
266
206
270
227
171
183
201
190
137
223
188
162
224
234
176
197
132
258
196
265
177
160
165
245
214
204
242
197
245
195
190
200
232
221
228
183
180
202
189
181
194
182
236
237
190
173
210
218
216
96
236
198
196
203
214
195
150
258
205
257
205
239
228
156
241
231
193
197
234
205
213
216
164
245
239
246
243
220
178
232
199
156
174
241
229
242
200
162
173
220
134
200
189
222
160
121
212
212
234
168
285
142
159
172
219
222
206
149
198
182
198
160
233
154
220
211
177
253
210
176
236
161
216
251
221
228
209
198
211
261
230
171
184
248
234
168
180
183
196
154
172
207
184
204
221
186
216
252
217
208
176
175
181
145
197
207
216
198
223
195
153
208
231
216
141
237
174
218
229
231
219
225
153
154
268
176
178
193
182
173
170
141
149
226
116
184
265
219
282
181
231
179
212
217
198
191
238
178
275
224
176
201
192
249
196
149
193
240
156
233
150
231
235
230
109
192
221
176
227
195
194
216
206
245
175
224
211
200
165
202
162
211
245
221
207
175
162
189
193
236
159
202
166
247
190
233
195
280
240
245
164
181
174
185
261
184
289
173
276
214
183
180
184
212
220
201
181
250
309
174
241
172
184
196
226
238
190
274
193
162
228
262
205
209
140
177
170
155
195
197
222
151
166
217
200
253
174
297
244
257
233
230
192
169
222
145
230
226
182
183
186
194
226
211
200
228
199
241
163
182
161
220
218
146
209
239
151
178
187
222
146
196
212
166
192
188
167
142
249
144
225
146
205
221
162
239
253
168
262
194
182
193
184
204
207
110
205
268
151
230
155
203
186
181
198
217
197
186
203
184
189
125
226
162
187
249
199
202
256
194
167
201
162
245
179
211
223
96
185
232
190
225
229
205
187
165
200
196
212
180
214
131
209
186
248
251
204
177
184
175
182
185
201
159
153
209
188
232
173
205
202
199
185
176
213
221
174
208
173
210
254
218
223
243
219
159
181
217
176
182
171
219
207
175
258
197
205
187
177
226
196
219
189
186
179
207
187
141
167
235
216
265
271
213
155
270
212
191
203
172
249
229
164
230
221
255
264
172
223
214
221
216
181
260
192
200
221
185
247
154
191
229
167
205
166
238
203
176
167
193
170
240
190
171
179
193
151
159
203
237
199
191
204
183
200
157
277
242
221
210
187
194
233
170
138
221
137
215
131
266
197
198
206
149
213
176
213
172
148
237
150
163
177
198
226
221
199
218
160
239
205
201
204
225
195
146
188
179
176
182
182
173
194
155
106
139
185
214
164
211
198
170
194
192
214
147
201
221
251
252
172
178
227
189
187
208
227
230
204
144
151
224
240
262
222
241
186
202
255
222
119
186
174
176
166
178
207
202
157
138
181
156
150
290
121
188
195
211
226
192
227
227
250
251
187
182
207
203
193
211
237
201
149
214
177
222
183
140
169
189
178
266
190
246
202
178
216
209
141
185
147
182
205
231
167
145
158
195
227
217
266
180
160
175
217
221
225
184
148
149
212
144
232
184
230
224
207
214
241
212
165
220
202
205
179
243
178
152
200
220
251
166
215
177
246
138
187
227
229
175
139
267
121
198
200
201
170
183
232
145
191
189
248
229
191
165
216
164
249
228
203
204
170
198
168
176
233
180
191
208
234
213
231
211
238
169
200
211
233
121
238
212
158
266
209
225
222
209
196
146
230
224
166
155
222
161
175
147
195
186
147
174
259
170
182
207
209
219
218
197
142
195
210
185
193
208
203
193
254
196
168
214
189
161
168
132
195
266
261
146
134
244
252
255
208
228
207
215
238
189
213
194
182
111
202
156
163
196
221
202
200
204
237
215
210
264
215
183
159
163
143
239
251
268
182
189
175
211
159
254
187
268
157
207
209
224
245
217
216
214
220
224
177
117
266
217
197
210
233
119
178
203
220
195
226
205
250
219
203
192
215
216
157
182
237
235
281
231
221
177
267
199
190
226
201
172
233
177
230
241
223
237
189
165
197
194
198
252
213
208
248
201
179
189
204
160
229
199
144
208
224
159
212
183
176
214
176
202
245
252
172
174
235
233
181
169
175
239
176
207
234
172
194
171
232
195
278
192
210
152
175
185
232
144
229
188
205
222
195
256
213
208
195
179
237
231
255
176
269
200
258
202
209
157
216
227
218
195
221
238
212
220
197
255
230
215
190
192
169
178
104
178
227
221
207
208
120
249
258
178
232
191
190
174
236
251
180
225
210
213
251
221
120
231
196
197
228
183
193
177
235
238
243
193
173
126
173
192
244
181
191
140
209
177
216
148
149
212
250
197
187
133
244
171
130
163
198
196
194
212
234
219
222
254
187
213
229
246
197
264
200
217
174
167
234
239
186
171
207
193
223
157
191
240
155
235
192
147
200
188
199
231
212
221
187
136
237
175
175
274
182
140
174
220
184
223
156
210
210
137
202
151
193
247
196
152
220
239
190
187
160
183
228
212
230
231
221
239
196
147
220
200
199
209
154
217
268
122
216
235
182
169
199
217
218
159
240
200
206
222
220
160
190
203
242
219
206
210
227
235
173
260
281
226
224
220
144
185
194
195
266
226
203
230
194
177
229
199
196
169
187
73
174
212
224
130
164
231
206
176
189
273
168
188
251
202
195
201
189
207
147
218
241
209
203
221
138
209
242
194
212
219
192
157
247
214
139
215
179
224
224
214
213
211
211
233
218
264
199
220
217
173
138
209
273
220
132
151
188
213
198
186
175
181
216
181
228
206
256
200
214
209
252
229
153
211
177
205
191
171
197
244
165
149
206
235
153
164
196
167
181
193
227
131
186
200
234
192
210
224
191
168
186
209
191
125
168
208
182
188
253
236
127
168
304
214
203
196
181
246
197
220
199
263
223
237
186
175
240
259
205
223
211
208
204
177
205
182
112
235
209
205
200
191
264
209
199
249
163
182
155
186
187
183
196
160
234
165
210
177
151
215
228
164
160
244
159
223
232
241
174
201
179
224
182
250
88
190
204
142
203
227
139
206
166
149
206
194
192
146
166
200
182
253
227
164
153
177
221
235
217
180
228
239
202
142
182
187
219
199
145
219
187
189
163
201
218
225
177
175
220
157
223
229
148
220
143
242
211
252
258
219
203
214
162
208
211
194
215
156
168
203
186
163
217
193
225
187
245
236
139
166
191
135
175
181
220
173
178
157
252
185
231
194
227
126
197
179
250
210
145
166
209
185
200
206
158
196
259
149
174
209
203
184
186
211
122
153
225
212
217
216
145
159
269
150
228
218
208
167
207
230
209
260
199
179
193
225
218
238
262
204
246
189
190
234
232
229
159
239
147
215
168
186
186
183
203
191
228
187
183
222
204
243
164
218
241
180
213
238
237
180
161
208
174
224
173
163
200
168
204
220
139
149
165
123
205
185
224
187
185
161
228
178
219
241
168
163
129
209
134
165
214
236
191
257
232
222
231
261
155
177
185
236
238
240
181
206
166
168
229
182
189
116
105
214
153
205
193
211
209
255
222
154
188
176
161
223
177
176
220
207
188
223
209
207
241
242
195
190
179
236
246
115
158
221
301
154
139
241
198
125
191
203
174
219
152
114
251
192
197
166
172
245
190
177
230
233
158
204
254
193
198
187
212
241
196
141
207
180
220
219
244
165
219
256
183
168
175
262
207
173
179
189
270
183
240
204
239
185
134
235
148
164
143
213
226
271
214
189
155
178
223
175
186
226
197
192
155
274
224
198
197
201
230
210
209
176
232
216
154
173
215
231
167
172
191
197
207
233
158
202
268
188
226
134
173
229
210
203
218
164
191
164
228
191
165
145
164
226
231
159
227
162
200
145
207
192
202
169
230
212
260
193
210
223
263
201
165
161
176
180
216
256
210
262
202
217
121
235
255
141
206
184
211
154
206
261
235
192
244
201
123
159
164
233
152
143
203
185
226
195
203
175
241
224
137
222
257
152
197
206
198
116
198
259
231
166
196
160
230
183
227
187
176
223
187
206
164
259
180
194
210
177
166
147
171
150
191
142
255
207
250
180
176
229
242
221
205
245
195
200
207
148
177
159
155
141
184
183
213
211
169
180
227
228
239
210
130
194
212
160
156
144
183
235
169
191
249
194
205
225
178
250
266
239
196
181
187
201
152
156
202
191
186
199
163
213
147
219
253
246
164
280
204
152
241
187
228
223
257
196
226
260
153
212
181
205
195
231
224
198
213
233
228
195
239
132
210
206
230
220
196
230
184
144
174
233
172
251
213
187
230
203
283
239
260
210
191
226
200
198
184
203
218
213
210
208
204
222
169
196
192
113
269
191
203
184
163
198
218
209
229
184
115
181
188
157
247
200
260
201
195
230
174
201
181
176
170
187
166
221
208
220
182
236
172
192
254
182
221
218
195
223
170
193
203
138
210
200
151
177
211
182
245
245
169
223
178
251
229
193
235
254
169
183
169
180
161
229
193
187
208
222
179
222
243
253
211
213
154
191
154
176
228
168
229
209
192
188
165
242
196
194
207
233
226
159
196
218
236
249
201
181
167
202
194
189
212
183
233
254
199
223
256
168
187
192
208
218
195
181
221
221
183
242
199
222
177
193
179
142
196
234
254
212
198
121
210
204
189
156
210
173
264
204
184
130
259
218
220
196
196
203
183
197
191
214
228
250
205
159
209
170
178
169
212
175
204
234
266
196
207
171
254
247
191
238
190
196
112
240
216
213
173
175
148
213
239
197
221
244
238
172
223
179
223
177
233
203
157
219
204
176
196
196
210
188
149
133
147
198
199
234
124
167
213
262
206
209
120
166
235
239
137
223
200
168
186
207
235
183
240
188
220
199
136
175
213
213
244
208
184
242
165
147
223
190
153
216
193
213
183
145
212
198
151
149
137
173
175
196
184
187
272
282
206
212
216
215
163
175
249
250
152
205
233
193
213
203
174
168
207
168
177
230
191
213
163
158
194
226
176
194
197
152
248
219
276
158
216
201
198
218
149
213
175
246
237
151
258
234
214
190
255
219
207
240
186
218
218
189
192
195
139
288
202
252
189
203
217
300
245
171
161
205
130
187
202
195
245
123
188
221
236
171
207
203
188
158
233
231
196
201
90
174
183
242
214
180
224
186
148
142
204
233
250
213
225
226
227
250
133
206
150
215
142
194
224
158
144
230
165
155
201
193
204
206
180
219
187
171
149
149
137
184
142
202
216
164
93
131
175
216
238
241
203
269
219
197
191
178
168
153
262
216
208
111
121
171
243
199
215
168
183
185
178
203
158
195
189
237
160
196
231
173
182
191
222
248
179
178
182
213
176
239
241
176
228
168
153
257
147
179
145
191
174
281
191
260
247
185
205
169
272
194
247
226
220
226
213
217
224
206
214
228
241
170
234
187
152
263
187
199
208
193
180
223
258
166
251
211
238
218
168
218
277
202
179
173
176
202
190
151
247
164
158
131
259
194
168
134
210
219
223
203
184
208
215
198
187
196
246
207
140
182
166
205
239
255
253
203
230
204
211
211
190
239
178
234
228
201
251
241
233
148
187
195
149
201
221
217
216
202
154
219
238
132
141
210
204
161
239
240
210
216
190
280
248
206
187
164
221
220
228
237
198
220
169
176
164
222
201
184
170
252
183
175
224
209
151
245
251
145
215
204
190
239
193
178
230
201
214
182
279
201
195
234
223
156
179
251
219
203
210
240
245
189
196
198
251
269
176
224
231
204
258
198
209
250
174
205
175
174
165
261
213
229
214
223
175
168
234
209
222
213
157
182
135
197
187
167
170
241
139
215
187
185
199
237
259
150
188
274
218
149
190
218
192
208
183
216
195
140
128
130
151
195
244
235
250
190
106
234
151
220
191
210
204
225
170
161
167
212
239
239
208
204
160
226
141
120
205
194
197
239
146
244
209
196
237
211
208
186
175
204
218
182
201
193
212
208
138
209
198
181
216
175
226
178
172
187
227
156
268
229
231
213
172
161
213
214
245
186
187
160
197
187
201
228
190
223
208
251
234
197
184
255
243
211
174
166
215
199
191
209
189
252
246
133
185
237
198
222
168
183
214
210
232
204
159
188
174
203
257
171
148
183
194
177
209
226
213
186
184
154
183
198
199
148
168
168
254
245
234
176
188
205
202
193
255
222
169
211
227
191
191
244
185
135
169
167
189
165
198
211
201
236
188
164
216
195
269
165
122
168
191
180
223
238
206
199
129
183
170
198
204
235
194
196
142
249
233
246
212
232
190
246
164
243
190
195
200
187
188
151
145
208
124
232
160
193
200
152
184
195
203
206
198
190
106
170
210
248
120
209
205
233
183
237
183
162
147
197
250
226
228
238
168
222
190
198
194
182
214
224
144
197
212
249
221
170
204
169
251
164
188
215
220
227
219
206
217
137
148
201
148
200
252
192
208
236
208
205
232
170
192
190
193
181
207
215
210
162
172
175
203
166
200
185
232
168
208
209
208
142
180
219
187
255
233
206
228
219
262
208
135
158
130
221
202
277
211
193
182
283
179
230
214
201
218
230
236
160
254
290
182
219
189
165
250
129
159
113
199
193
202
176
151
181
178
171
137
218
199
153
221
209
220
126
177
160
195
235
149
155
179
169
262
222
261
162
245
134
149
195
239
240
197
164
170
133
209
145
267
191
132
198
248
194
181
166
248
267
219
209
187
221
214
237
181
173
235
221
233
234
151
186
217
164
161
214
219
258
228
210
181
203
198
223
220
234
148
192
239
205
165
173
169
147
182
175
170
205
185
217
230
237
272
219
217
195
173
255
179
151
189
227
211
179
238
224
182
221
154
205
196
150
242
188
171
210
238
220
284
198
158
200
204
196
292
213
163
158
245
176
175
166
185
300
207
166
241
170
221
209
192
189
211
138
211
222
158
140
203
156
182
174
180
179
166
211
187
185
252
160
230
198
177
217
236
238
168
143
244
263
184
175
252
176
256
209
189
212
122
203
149
241
195
199
180
187
231
152
231
247
156
169
184
174
210
162
156
216
270
164
269
238
240
167
220
241
184
253
130
236
162
205
199
212
268
197
189
282
229
212
245
166
198
193
212
208
209
241
177
185
250
199
245
266
156
201
183
137
191
159
190
229
216
229
187
222
126
129
213
191
227
183
145
144
185
192
239
224
174
238
183
235
214
284
231
259
185
168
201
260
210
165
175
192
186
195
201
110
185
220
201
203
220
192
163
211
199
192
170
220
221
233
204
238
193
193
175
179
163
150
176
211
214
159
263
172
204
217
240
182
211
177
149
187
206
237
210
196
146
216
184
192
147
102
220
195
185
224
140
170
244
248
177
204
215
226
142
234
147
154
195
218
183
185
187
202
206
227
183
255
146
206
158
203
221
173
193
217
175
228
288
197
215
181
220
175
296
217
226
192
196
176
215
218
107
222
211
173
246
158
177
205
232
195
271
220
230
217
178
162
200
207
164
215
186
208
243
208
213
213
219
189
162
241
217
220
190
221
181
222
248
219
166
238
183
177
225
186
190
183
236
168
209
276
227
209
219
222
251
243
193
169
186
188
241
250
139
225
207
181
207
178
150
172
216
221
230
189
189
253
195
203
204
201
239
198
184
157
224
220
205
166
253
210
178
200
176
200
216
238
195
188
207
232
201
196
135
165
145
220
136
241
152
175
177
189
220
192
175
226
184
208
165
242
197
176
175
146
154
229
172
157
245
174
139
143
165
157
189
186
184
176
232
187
180
227
206
205
192
230
230
203
217
248
239
96
254
222
217
209
191
167
250
238
197
200
159
183
227
161
226
260
148
142
235
250
99
150
176
197
173
236
213
173
183
207
274
206
176
207
172
214
222
237
194
182
203
202
188
195
239
226
192
197
139
210
206
176
254
179
172
186
140
185
202
182
201
241
241
227
161
231
191
176
191
213
176
189
173
181
163
166
182
162
220
207
199
242
204
156
205
148
210
212
269
216
245
167
230
183
216
168
231
216
226
232
222
205
234
166
176
214
139
196
160
217
219
230
145
207
178
187
184
191
161
240
174
148
176
174
209
232
179
216
248
164
227
219
190
211
209
144
132
206
185
149
188
249
173
151
247
199
227
249
245
161
260
269
193
195
233
219
216
163
218
203
218
204
166
250
177
163
203
206
196
135
158
260
179
191
180
161
142
178
243
229
221
176
166
175
196
238
227
206
137
177
178
176
196
161
184
170
216
146
249
197
208
143
165
220
228
159
208
245
101
217
146
187
201
270
141
219
207
163
196
144
126
222
216
207
174
154
163
167
154
188
195
175
212
265
170
204
124
189
238
216
194
226
153
158
80
212
146
213
208
202
201
176
235
235
132
241
225
249
210
215
312
225
240
265
173
205
160
118
177
235
157
217
175
216
239
249
217
163
190
214
228
235
194
280
235
202
146
144
140
153
216
158
195
156
232
212
179
185
165
173
141
196
230
191
190
196
218
159
220
221
239
183
204
206
215
216
283
112
206
244
233
139
178
224
178
193
198
249
144
176
197
220
218
178
224
132
188
144
170
257
233
139
274
150
195
217
190
216
231
227
136
221
189
212
265
176
217
231
142
228
223
167
227
196
219
249
205
241
179
144
174
199
169
164
196
225
195
188
204
196
216
212
149
217
207
177
222
215
154
242
159
188
178
250
142
183
188
184
202
190
164
179
171
156
226
256
223
233
243
250
220
239
256
146
224
267
219
202
179
197
235
243
227
225
161
205
207
168
178
173
208
209
177
159
206
146
180
192
229
105
221
190
191
222
228
188
241
224
238
255
198
231
186
174
207
216
192
181
157
201
168
182
230
208
172
139
182
155
205
153
209
205
215
197
172
266
183
187
167
138
148
167
177
181
248
222
209
229
178
204
153
181
204
253
272
216
184
233
156
175
171
191
205
231
187
233
161
209
156
183
264
198
219
229
190
155
218
192
159
237
178
159
163
199
206
238
192
191
152
194
182
223
201
169
236
221
220
131
223
161
163
165
207
203
222
221
201
222
196
145
215
182
165
195
169
237
163
187
199
182
222
225
211
177
195
202
191
218
251
195
239
200
189
225
237
169
204
235
249
229
240
174
205
141
250
166
265
233
191
186
172
240
179
208
222
197
243
185
182
212
213
200
217
237
235
185
162
186
205
199
178
196
185
211
159
154
177
193
183
246
196
242
180
165
177
174
232
231
221
221
185
183
200
185
158
141
248
217
179
189
166
149
189
217
175
242
106
225
260
182
222
156
217
152
225
240
226
172
209
194
196
190
239
219
198
157
156
163
207
218
193
181
211
189
183
201
230
219
188
180
251
133
201
208
182
170
145
157
230
224
166
211
177
218
194
195
279
191
231
245
146
215
207
130
229
111
195
166
195
170
187
234
185
196
240
204
171
255
209
237
195
139
189
220
163
226
263
193
167
184
230
244
216
162
243
244
156
211
247
191
167
190
167
226
221
209
233
210
192
138
206
142
207
207
248
186
184
222
227
181
155
253
204
245
200
183
216
240
213
258
175
187
201
225
210
224
254
219
188
214
264
221
154
229
164
215
213
202
199
239
269
230
235
132
191
165
195
144
143
179
196
242
200
177
193
188
182
218
159
253
250
256
192
228
174
131
156
199
193
220
146
228
153
239
233
170
184
147
220
193
168
231
189
174
209
207
168
202
188
234
224
123
180
171
204
158
198
227
186
228
182
263
235
221
239
195
183
188
194
189
170
226
162
207
193
197
150
211
174
206
182
225
269
171
237
203
251
223
189
253
215
158
221
197
211
232
159
235
179
271
259
216
198
169
229
218
167
210
158
164
171
215
208
209
151
159
218
174
155
172
220
199
191
207
201
175
189
172
184
169
190
163
179
201
213
222
261
176
152
238
158
204
206
157
139
223
216
221
172
172
174
165
189
232
212
196
227
192
160
235
263
207
210
240
169
176
207
161
194
196
232
144
245
263
251
256
208
196
188
203
234
141
115
238
158
272
215
189
202
207
194
182
225
179
161
244
166
183
207
215
173
200
174
142
220
188
213
181
270
181
205
210
187
189
209
212
198
218
250
205
198
144
259
173
120
175
183
221
201
172
214
152
175
205
241
224
215
193
223
171
215
214
209
176
222
192
214
174
157
195
224
183
201
211
194
190
232
170
203
168
191
178
170
213
246
238
138
199
234
196
208
211
242
204
194
184
218
271
146
220
220
200
137
169
197
198
190
202
209
215
179
220
204
213
131
165
232
191
180
207
171
238
115
180
154
179
250
176
191
248
152
224
215
178
221
203
245
176
176
189
192
216
253
200
200
189
187
201
185
186
132
179
195
229
151
125
118
233
209
158
154
206
226
252
184
195
209
254
146
168
200
160
203
240
186
200
219
229
193
222
196
287
130
191
244
208
204
165
176
212
178
203
187
133
201
219
198
189
232
239
231
183
165
232
196
189
171
200
222
150
195
264
135
225
242
214
262
211
205
239
203
158
163
193
197
223
244
206
188
192
247
233
167
145
265
224
153
152
223
224
225
153
234
206
219
185
184
124
209
238
226
213
228
229
251
201
187
197
245
217
176
203
148
139
215
257
255
207
176
228
172
226
166
239
170
203
153
210
192
232
167
229
195
221
269
220
175
195
158
239
240
152
197
202
220
182
203
159
202
155
204
187
176
251
205
196
207
178
193
196
207
161
215
161
192
202
195
213
207
227
183
195
217
244
203
257
210
228
163
223
208
163
177
163
174
208
241
225
198
195
201
170
242
202
190
213
181
180
227
173
214
241
278
210
207
203
175
235
161
260
184
182
177
157
234
208
164
237
232
214
137
182
253
196
214
208
155
171
138
210
208
195
196
228
190
226
223
165
171
279
238
162
167
246
193
161
161
195
220
206
140
205
199
229
178
248
202
182
123
228
202
149
204
217
181
172
163
221
244
156
189
189
210
210
229
181
214
195
147
232
266
171
194
211
184
196
240
236
184
187
171
210
210
197
181
229
227
233
243
209
215
225
146
172
173
222
184
126
200
167
238
177
210
181
162
175
214
236
212
163
254
207
232
122
143
172
141
230
230
202
174
180
179
188
197
207
215
222
189
199
195
249
197
148
226
176
252
172
145
184
225
149
189
243
208
214
178
196
215
185
140
169
192
217
151
211
215
219
198
177
220
223
199
159
255
210
177
162
257
170
228
261
198
222
221
236
197
204
283
178
185
205
199
242
272
202
220
190
195
176
231
185
178
203
196
165
195
251
210
222
201
192
257
225
202
237
176
202
168
204
236
203
261
148
192
179
225
226
157
220
125
180
233
259
183
145
204
211
256
269
253
180
144
177
212
202
221
211
178
230
178
196
213
198
183
210
185
209
146
191
226
228
125
147
163
240
192
153
206
201
168
179
132
195
175
177
157
232
211
248
207
213
153
150
209
181
199
220
136
222
236
206
176
170
153
206
168
191
165
206
166
138
190
162
209
246
222
101
207
191
297
246
155
248
227
225
206
192
159
181
211
210
202
193
164
195
220
221
196
162
186
212
200
226
235
225
187
131
97
243
220
114
216
136
258
217
197
203
151
189
222
231
216
209
202
189
143
143
155
198
188
194
218
253
162
205
186
184
179
218
198
255
180
154
190
202
227
112
197
199
183
197
288
214
215
247
162
210
253
118
207
288
218
207
140
251
213
240
231
223
202
223
161
233
200
230
219
149
270
138
117
247
144
168
206
215
158
192
210
181
237
189
242
167
217
311
215
218
205
255
187
215
181
179
233
145
187
138
205
228
252
170
221
189
188
166
199
191
158
204
196
239
261
188
186
202
177
230
200
59
244
215
213
166
140
195
237
167
233
203
151
253
181
177
220
160
229
127
181
223
216
166
211
238
195
198
199
217
221
171
199
207
247
234
223
271
191
174
184
159
166
227
207
197
220
219
234
169
182
164
220
222
212
171
213
232
126
208
176
261
147
238
163
154
204
176
165
226
138
211
191
226
219
258
220
197
182
249
161
163
265
186
209
193
239
229
240
241
168
155
203
204
169
157
233
250
168
192
203
175
145
190
140
156
235
208
249
254
241
221
227
263
176
177
182
182
221
253
208
183
222
139
226
197
195
148
171
266
208
195
233
244
187
196
214
172
241
221
239
217
170
230
154
231
198
203
185
233
136
194
161
206
206
187
183
188
179
162
192
184
248
230
247
210
173
264
183
147
252
197
139
227
173
190
193
169
216
239
192
229
107
202
221
190
176
163
113
186
199
213
215
223
148
232
190
208
190
262
163
183
185
228
174
146
261
235
212
227
232
228
177
202
202
238
199
171
191
243
163
176
247
239
160
168
187
229
260
214
145
192
177
217
151
184
201
187
168
161
231
207
165
236
244
222
197
138
182
161
194
237
209
190
209
202
256
201
181
225
124
245
205
202
220
196
215
215
189
186
233
242
137
246
266
244
216
140
224
257
203
225
195
227
187
247
200
228
258
177
214
121
219
201
183
171
241
217
153
202
224
212
214
216
228
229
217
212
241
161
159
186
216
190
193
281
172
206
159
129
196
260
195
198
205
251
226
274
215
207
175
169
192
219
205
221
254
223
176
172
191
222
179
260
160
109
189
221
189
248
231
189
208
182
188
192
206
201
235
206
150
228
263
179
175
162
234
181
228
189
173
228
212
261
200
205
188
217
153
198
236
221
222
247
222
218
244
193
105
208
199
210
215
167
177
227
186
145
126
234
159
220
169
187
244
216
219
217
212
203
201
191
233
192
240
162
200
204
182
142
182
182
244
272
188
183
218
176
176
197
160
192
225
118
171
175
177
254
177
189
218
202
218
158
220
224
140
190
285
192
212
164
180
156
165
180
149
242
220
196
119
252
188
228
187
231
197
189
199
150
199
219
240
231
229
228
195
148
198
213
199
178
223
258
237
150
191
235
238
183
224
166
217
197
199
237
226
183
162
203
197
195
259
183
258
149
185
227
200
179
235
181
173
191
235
176
156
189
199
176
214
258
172
167
204
287
207
166
173
217
194
214
184
251
251
203
164
167
160
231
266
218
188
175
181
212
230
218
172
223
219
199
178
190
202
241
263
226
224
228
211
259
224
180
204
165
204
202
265
218
157
194
198
182
201
154
166
201
237
245
207
206
276
236
177
212
229
270
157
167
226
218
147
181
175
164
202
217
158
197
145
174
188
196
216
161
220
230
195
209
144
221
255
146
223
231
151
203
134
212
234
236
230
231
148
175
241
257
224
207
117
128
234
198
184
256
167
174
213
213
204
216
219
201
228
189
161
220
197
211
213
157
205
194
205
247
249
219
234
180
212
183
230
147
235
215
203
171
197
172
172
224
156
165
243
206
261
161
167
191
183
199
217
210
236
193
228
151
180
177
172
223
214
199
211
200
233
191
249
201
167
161
152
219
198
214
146
211
120
204
187
217
196
176
243
205
156
192
260
216
215
187
165
169
250
196
224
177
209
176
234
186
237
234
205
267
166
161
173
204
194
135
269
163
194
167
191
209
229
207
200
216
247
209
165
193
196
212
167
214
216
200
215
148
245
193
200
238
267
229
235
136
230
223
216
257
173
216
174
219
174
181
170
160
196
246
141
125
237
175
153
226
206
182
214
227
170
202
225
231
220
185
198
247
167
206
216
243
244
213
280
227
175
158
202
166
160
136
194
151
212
162
170
262
216
240
149
202
155
242
177
180
207
266
178
263
250
179
109
241
226
224
152
249
224
187
140
206
213
189
212
207
191
212
229
177
218
225
160
198
175
176
280
291
139
266
190
234
258
170
190
225
178
200
206
212
260
211
161
246
205
175
221
177
173
193
237
188
249
210
210
207
138
223
168
182
200
280
242
217
207
193
209
220
249
197
236
184
179
212
186
162
198
200
253
239
219
189
183
157
216
244
209
201
264
182
163
180
238
154
251
110
213
249
244
229
194
131
240
188
243
186
102
201
229
218
193
166
286
216
199
153
237
210
150
193
227
161
184
145
185
188
222
140
195
151
177
186
178
260
129
254
180
158
203
219
215
192
199
199
231
207
252
135
190
148
264
170
189
188
244
239
240
174
209
211
175
235
168
211
248
165
192
205
227
157
208
210
228
245
223
190
163
213
150
224
215
205
209
185
158
235
221
227
195
154
181
257
172
254
167
151
220
211
229
240
229
187
130
244
185
182
197
215
232
231
218
148
224
158
219
181
230
199
243
149
235
124
207
172
279
231
161
197
230
193
201
179
228
168
212
139
180
246
251
245
192
244
132
203
281
235
265
185
244
165
204
189
157
137
229
257
168
181
215
153
222
145
190
244
227
240
210
174
174
207
222
208
235
182
199
103
204
167
194
185
178
152
200
163
134
202
172
195
167
217
188
196
186
190
237
186
242
179
234
200
205
226
155
202
152
211
189
139
248
145
189
247
216
228
88
253
201
214
194
185
257
256
191
207
157
253
237
182
206
191
193
154
198
222
145
280
147
203
240
214
214
230
199
193
216
226
196
184
207
206
143
197
251
167
183
223
195
222
232
205
236
217
246
164
160
145
228
192
259
159
228
211
246
230
203
230
250
211
216
181
173
166
243
191
155
229
210
168
231
223
215
251
178
204
152
184
162
233
227
181
221
170
212
157
173
236
194
214
170
191
241
174
192
235
148
207
164
129
193
236
224
218
209
192
250
184
194
296
217
177
255
166
238
182
220
214
193
207
152
216
191
267
215
201
172
222
232
243
208
164
200
223
165
143
159
206
177
220
175
160
226
226
184
189
184
187
202
245
201
208
212
159
218
192
143
137
155
131
192
154
116
235
165
200
144
109
239
194
218
180
232
220
205
211
200
196
221
208
227
274
185
194
186
196
198
179
224
206
247
172
154
231
215
185
199
170
261
236
158
191
191
238
190
163
173
183
229
239
159
251
254
163
124
237
240
165
203
166
208
206
176
235
222
188
212
259
195
217
222
144
187
226
229
192
212
190
207
238
236
176
240
240
242
247
247
228
186
142
216
206
204
193
193
199
174
194
211
192
196
188
177
183
245
204
174
222
206
204
195
194
181
226
174
196
228
240
201
190
214
231
234
244
205
195
208
231
186
204
241
193
220
202
245
225
253
206
226
183
211
262
214
246
132
202
218
194
194
210
106
207
194
248
230
201
254
179
187
152
186
204
179
196
221
181
201
229
210
205
169
218
240
243
210
213
256
238
163
159
215
180
182
252
151
203
164
178
242
188
192
219
219
120
144
204
214
160
190
149
208
202
208
171
197
258
186
250
254
206
216
167
185
241
185
134
236
149
148
240
194
156
216
253
250
207
204
230
189
189
221
240
233
198
151
199
213
168
123
189
196
207
179
201
157
198
156
210
189
212
164
206
159
126
185
159
154
120
238
139
231
195
197
190
215
127
194
217
233
153
206
190
230
134
180
226
210
244
187
225
180
266
236
196
123
177
201
188
194
187
226
258
247
172
196
234
167
196
185
195
286
208
214
179
186
236
194
191
220
135
226
220
150
250
236
145
155
201
196
260
197
208
205
192
213
193
207
113
199
209
174
180
246
112
218
174
218
225
141
184
173
263
162
244
183
217
193
182
188
182
141
223
178
216
180
192
245
254
172
185
181
173
149
251
196
212
188
231
187
210
179
190
234
160
211
213
182
189
180
199
174
194
205
207
165
219
224
172
294
202
203
220
165
196
213
191
201
205
243
188
221
187
210
192
210
221
192
142
229
199
234
271
178
186
140
205
240
213
185
177
213
205
215
217
245
200
223
217
236
162
210
177
239
202
229
158
227
197
174
233
225
209
179
185
158
168
206
214
177
193
180
92
262
197
161
186
150
204
101
205
270
204
193
174
170
245
186
229
257
164
161
242
221
194
165
217
230
223
216
258
221
242
241
195
236
194
151
164
184
253
207
178
176
134
117
147
186
221
204
163
188
255
164
218
229
185
178
166
208
245
237
198
173
200
128
132
202
214
198
269
192
201
251
166
198
228
190
221
252
208
208
199
213
224
200
283
186
180
175
185
222
196
264
225
225
182
196
175
181
182
238
190
215
232
133
257
195
122
195
197
209
184
235
152
212
166
235
194
247
161
204
248
258
236
244
240
192
196
217
267
201
142
204
162
210
201
187
219
253
178
168
241
189
170
133
171
142
227
166
203
170
166
223
175
166
212
198
261
191
128
165
236
200
212
205
155
225
196
256
130
144
213
234
228
186
191
206
188
207
202
194
160
206
174
155
176
222
239
175
204
199
209
216
199
202
214
161
138
243
206
187
221
197
215
218
213
208
194
189
177
203
155
219
208
151
195
100
227
196
217
224
208
157
198
220
259
215
174
161
246
183
214
189
259
172
129
229
203
190
159
250
209
223
230
217
190
188
216
241
231
235
194
217
195
176
226
206
181
240
138
160
191
211
204
205
179
193
182
167
176
219
208
164
205
246
185
217
152
256
170
206
197
223
228
257
195
150
196
196
186
250
214
234
142
181
211
145
242
175
260
208
217
184
168
151
177
198
256
213
232
247
112
237
205
189
174
196
233
246
148
244
227
236
172
200
163
177
242
229
176
162
183
195
209
246
270
226
253
239
220
182
294
190
178
201
184
228
256
228
205
196
210
238
171
201
213
161
185
221
212
150
211
241
223
147
188
199
193
202
251
194
218
248
182
246
195
182
169
185
196
196
274
147
234
213
176
202
226
221
216
225
200
177
218
210
199
191
163
225
199
206
186
235
227
228
155
230
139
209
221
143
225
243
155
234
238
177
227
193
204
207
225
228
260
221
175
165
209
240
147
185
193
202
214
190
206
216
250
259
158
180
173
157
272
136
189
166
188
256
194
195
168
210
205
192
189
210
215
287
219
239
194
181
181
257
196
233
253
179
264
220
165
189
202
230
117
164
234
206
158
178
194
161
175
131
196
195
173
251
220
223
150
192
230
230
245
152
240
186
251
211
202
217
163
256
119
189
215
151
219
190
179
184
235
189
307
264
181
172
207
247
187
221
145
216
189
180
202
182
200
213
201
190
225
204
275
219
215
228
261
171
191
199
263
165
214
198
212
222
163
131
168
230
135
233
180
171
195
249
189
213
239
238
207
162
136
152
179
170
241
203
177
226
276
196
168
180
154
220
213
182
198
243
221
208
207
177
221
169
237
177
249
170
207
184
206
209
235
204
151
192
117
139
233
206
177
180
153
216
155
166
187
185
233
206
170
162
135
176
172
212
131
204
198
156
211
252
161
196
224
229
171
198
257
177
122
285
194
219
194
212
249
204
195
256
250
235
234
187
164
179
176
160
184
153
162
212
221
197
192
216
157
201
225
129
225
243
200
196
203
190
222
162
206
110
180
196
241
185
178
186
167
156
212
257
199
147
229
219
232
176
243
200
223
191
207
266
296
231
236
173
229
198
238
226
162
165
210
213
226
176
207
226
201
167
203
200
209
221
157
171
189
208
208
206
193
219
210
101
125
186
210
212
208
206
241
187
201
209
226
189
170
175
222
285
164
143
163
234
177
159
194
212
152
244
217
191
204
225
211
253
274
280
248
219
171
117
160
160
146
216
228
178
212
203
240
201
150
214
240
190
165
227
218
182
199
222
185
176
158
209
188
168
222
184
256
167
253
182
177
212
146
156
162
148
222
231
177
192
198
251
229
249
146
177
130
219
212
164
177
123
255
247
195
224
204
174
231
200
231
195
202
172
253
233
184
175
204
206
182
160
133
229
183
244
149
166
139
187
179
223
232
222
192
211
239
227
191
240
232
185
174
194
141
206
189
160
207
255
194
255
167
169
130
210
157
226
257
188
169
264
142
160
211
163
150
208
201
203
156
221
204
188
225
208
209
241
207
204
214
219
214
269
174
169
171
170
201
201
192
185
206
156
264
219
202
189
177
226
195
190
204
197
221
206
202
249
182
238
181
152
195
179
216
169
203
204
178
230
184
217
209
109
213
182
215
226
183
175
199
210
172
178
218
192
200
180
190
221
209
122
245
195
189
244
184
222
164
194
242
181
226
220
236
207
214
178
184
249
117
263
193
204
219
204
157
196
221
240
212
224
159
168
235
183
163
187
222
193
216
162
257
167
242
192
221
154
186
167
181
225
207
188
230
186
217
158
254
232
179
195
181
153
144
197
208
174
126
199
210
154
226
149
204
164
201
190
223
228
195
195
204
110
161
224
275
189
176
162
175
197
152
251
242
179
167
212
157
173
223
175
217
211
194
206
232
187
214
167
207
199
248
194
230
225
195
148
170
171
150
205
186
188
177
231
227
241
222
224
231
166
141
180
199
140
174
218
181
127
198
166
186
211
242
192
216
227
204
254
187
228
148
103
169
218
207
194
145
220
188
266
168
232
218
264
237
194
218
193
210
104
198
225
202
198
205
172
200
222
224
227
230
179
208
260
195
297
194
140
149
221
273
206
145
159
234
212
238
217
199
199
147
229
194
202
195
226
198
223
232
222
109
163
192
200
216
191
192
156
255
159
200
192
243
196
223
248
149
250
173
164
171
182
229
171
244
232
195
242
217
210
200
201
113
165
261
191
201
199
179
218
276
234
230
204
165
185
237
181
256
152
196
245
158
190
241
197
250
172
151
194
214
255
168
218
153
166
226
212
229
211
199
195
195
197
192
194
210
187
211
166
218
175
268
182
145
225
270
195
232
224
145
224
199
150
216
234
168
207
229
161
199
146
192
234
145
222
226
222
226
197
255
125
239
233
237
179
156
176
238
229
228
184
212
170
194
233
167
173
216
232
203
183
261
159
201
123
172
236
182
216
181
176
140
237
163
189
128
218
209
229
179
213
229
197
184
247
192
176
190
249
181
192
247
240
181
156
246
143
152
248
228
250
230
179
202
200
168
243
146
163
228
234
191
206
249
203
187
182
171
192
159
227
219
164
186
183
235
213
167
192
224
177
262
205
168
208
180
204
291
183
223
206
195
235
207
207
214
251
212
185
189
181
163
228
228
173
184
154
215
156
205
269
275
235
184
274
262
168
209
172
261
165
222
200
222
152
187
228
208
190
199
216
198
251
234
174
233
184
183
261
178
198
191
261
197
112
239
236
178
196
232
231
205
211
234
161
196
176
137
211
148
241
193
225
158
215
219
169
169
246
191
243
218
197
224
169
207
201
242
235
219
215
130
194
199
244
243
177
247
211
244
261
233
288
230
231
195
160
235
183
190
171
225
250
125
169
210
212
150
165
183
239
229
205
229
214
249
163
234
151
183
181
229
229
202
172
149
160
178
267
204
211
210
227
195
209
199
223
220
273
211
168
152
226
238
178
157
190
145
208
130
231
209
197
172
227
125
245
199
213
207
202
196
220
231
275
217
263
193
178
179
150
205
202
227
209
200
213
157
204
202
237
252
207
167
209
181
156
191
255
182
225
255
224
166
252
222
217
149
206
197
195
197
186
143
242
172
213
187
176
176
192
199
224
239
227
184
230
178
228
242
177
185
178
233
244
220
213
269
151
275
179
233
145
184
220
179
176
191
171
257
217
182
262
176
279
221
211
267
238
179
230
211
139
214
200
205
203
240
236
144
144
152
221
224
165
168
230
236
206
223
146
217
184
151
179
182
202
172
175
201
208
165
184
167
184
239
235
208
221
127
237
129
215
208
146
160
154
243
216
181
150
179
147
206
240
235
225
190
174
217
242
189
175
156
243
254
168
244
151
161
237
168
250
205
222
221
146
208
231
201
170
193
170
215
216
186
134
200
204
272
246
194
266
193
303
211
195
209
208
180
212
244
183
221
204
196
186
245
208
196
183
222
212
288
175
206
222
155
147
176
231
194
202
218
197
171
211
222
205
201
227
141
177
151
166
177
193
238
207
168
231
157
227
183
176
231
159
206
173
199
227
173
173
247
161
287
152
181
155
238
249
220
172
182
188
222
229
230
171
184
203
200
201
174
193
198
220
253
204
268
160
174
197
173
217
236
196
214
218
243
193
231
216
253
111
171
230
212
206
233
142
211
178
282
175
191
196
231
234
208
117
228
184
210
162
219
228
140
250
193
208
184
228
222
171
196
137
279
200
192
178
159
204
218
211
225
229
226
228
252
240
223
229
249
173
190
223
186
213
220
237
230
239
262
216
223
154
167
95
216
253
150
163
186
208
209
206
194
161
199
168
220
190
180
221
204
209
195
112
239
166
214
239
183
209
238
224
265
212
218
147
190
278
255
284
136
183
156
149
191
178
178
187
221
199
244
206
175
217
169
231
193
210
203
206
159
208
207
170
192
201
122
230
252
185
297
222
241
244
154
234
170
254
162
196
171
230
197
117
275
249
261
199
194
212
196
138
177
231
176
199
208
214
219
199
211
269
159
207
111
187
205
192
203
169
204
222
205
206
197
222
218
135
257
202
249
183
203
236
261
190
231
150
206
160
234
227
177
259
160
222
213
215
223
253
201
128
167
203
174
210
178
166
234
191
179
222
146
121
159
184
226
192
210
208
174
215
227
151
259
169
197
192
192
139
202
216
180
213
173
243
200
254
210
198
179
221
174
185
216
226
202
215
135
225
201
177
173
240
207
229
192
161
181
217
173
228
243
217
172
205
193
200
218
194
222
270
231
193
218
245
200
233
161
212
188
191
213
219
225
219
181
197
249
223
236
251
173
213
223
195
168
176
253
222
171
200
236
182
229
261
160
166
198
238
237
181
144
189
177
184
231
134
201
224
190
172
213
260
210
185
245
194
187
167
164
178
180
207
178
164
150
207
191
169
204
214
121
226
123
239
160
234
184
211
159
249
134
171
245
190
180
240
208
202
186
158
178
259
254
192
151
234
193
162
168
209
234
192
191
200
180
219
173
201
172
196
279
221
219
213
274
203
183
193
219
148
233
249
184
218
197
188
196
186
239
238
209
242
177
168
223
218
201
191
199
162
237
203
177
152
222
178
270
150
168
228
145
206
234
167
204
244
206
249
261
197
253
203
221
222
179
201
182
194
178
159
216
201
208
166
201
223
237
217
257
221
163
218
197
212
238
207
218
221
228
206
233
219
221
224
219
131
191
198
218
182
241
194
156
215
197
240
168
215
261
268
218
289
178
229
151
138
195
221
219
255
250
189
208
223
189
194
279
232
166
243
195
168
218
247
154
151
203
244
183
227
236
157
249
200
252
194
222
216
227
262
208
204
245
200
111
185
162
205
198
185
161
257
174
204
185
278
172
180
235
214
206
163
203
186
195
194
182
185
140
176
198
216
192
217
180
200
264
222
206
168
224
216
163
176
208
177
210
166
160
226
242
226
267
209
188
182
191
262
215
233
244
178
171
210
208
228
136
236
186
206
215
159
255
213
232
218
133
158
188
232
213
204
170
164
191
250
209
171
197
179
183
249
174
264
187
231
156
242
203
221
255
205
207
192
287
220
226
223
225
208
135
170
231
221
169
239
256
223
180
184
144
210
210
228
211
195
195
269
202
181
200
273
150
264
192
237
218
252
212
192
175
162
214
165
189
235
180
191
183
222
232
241
216
211
186
168
172
220
228
238
171
203
135
187
215
246
151
210
143
222
220
186
165
196
176
269
255
168
245
201
241
175
223
192
176
215
192
163
209
214
201
201
164
179
216
136
184
256
217
191
187
176
224
220
209
179
198
220
172
231
186
139
204
227
190
234
157
232
176
172
212
132
217
269
248
132
158
199
191
213
160
164
252
218
206
176
214
175
154
199
261
185
240
240
154
175
175
218
213
291
202
195
232
187
195
292
207
149
234
263
178
258
183
192
172
154
196
166
202
247
209
225
222
182
210
258
255
250
163
165
196
219
230
166
274
197
226
153
192
199
210
227
197
237
218
160
178
267
182
214
214
188
223
251
241
173
241
175
217
230
180
191
177
197
163
241
195
210
229
208
244
216
169
190
227
201
252
216
226
242
180
215
153
185
154
208
222
223
168
192
226
156
211
192
243
131
195
231
234
196
176
266
241
197
200
174
166
248
144
210
216
165
147
138
219
189
197
214
178
216
175
144
207
229
236
192
251
210
208
175
228
226
159
235
192
206
176
168
153
188
218
201
180
229
148
180
170
181
227
195
152
221
158
223
185
122
148
197
234
165
156
201
139
209
251
238
208
195
122
235
145
219
159
153
184
202
207
238
233
195
146
198
170
186
180
214
197
131
139
175
258
156
213
174
185
117
220
218
195
225
239
208
154
178
186
142
189
267
187
204
192
211
255
244
164
185
221
225
215
182
184
191
207
177
250
201
246
204
162
223
199
228
172
215
249
231
171
220
188
171
163
195
118
224
233
227
249
210
175
191
188
205
121
219
206
220
191
196
146
237
231
164
208
197
156
174
202
224
185
266
229
250
129
217
186
220
241
207
177
170
196
221
210
227
205
228
213
191
238
193
232
205
231
173
219
215
197
164
210
181
191
243
196
141
194
175
207
212
249
257
194
120
196
173
207
212
198
156
175
179
172
252
261
194
250
102
178
242
234
166
213
207
203
244
195
205
129
278
186
176
188
208
215
225
264
177
155
163
234
231
241
214
191
184
188
207
253
135
167
213
205
228
221
254
188
172
176
230
204
148
232
164
180
243
199
136
231
217
196
238
200
183
206
161
193
243
197
203
189
238
225
144
249
202
160
222
223
217
204
180
203
272
133
203
256
227
209
115
243
202
95
186
213
192
228
215
180
221
200
194
199
224
175
206
161
219
202
183
123
246
215
177
229
202
198
200
237
213
221
211
167
220
225
154
208
155
194
266
238
191
231
196
230
220
222
188
211
196
153
234
187
159
133
167
165
259
207
165
224
232
181
173
214
193
211
222
207
212
212
221
154
213
195
260
165
236
164
218
214
145
210
208
166
217
206
156
203
198
173
190
263
257
186
217
195
246
236
208
205
199
229
200
174
244
203
193
206
196
164
256
179
183
247
197
191
144
180
176
229
215
196
249
238
182
242
171
183
225
162
260
183
227
210
207
190
165
243
260
241
144
178
178
268
233
146
280
228
216
179
225
211
219
153
189
257
178
226
196
202
177
183
188
172
224
155
217
187
205
226
228
160
217
193
138
164
140
170
237
152
195
140
218
174
175
225
188
241
172
223
216
205
238
201
289
184
143
202
148
221
229
174
254
207
210
198
236
159
172
234
221
260
157
218
152
195
205
224
174
174
171
178
229
251
166
180
232
208
198
171
158
185
243
233
231
225
226
151
216
173
184
172
254
163
232
179
148
228
216
163
184
235
196
114
230
210
168
223
196
137
237
215
233
184
152
237
196
158
232
188
171
189
232
184
185
261
249
192
185
195
220
192
178
167
202
220
150
194
222
209
154
190
201
189
187
231
216
204
243
166
159
197
201
219
181
183
203
235
245
193
201
197
241
150
177
221
234
182
178
229
215
192
284
207
233
232
201
254
117
183
157
193
201
155
233
206
222
175
220
213
164
252
248
209
188
231
185
229
182
227
171
156
194
214
204
163
218
170
155
225
184
105
246
199
136
145
183
113
166
219
198
206
216
246
213
211
189
225
234
221
256
165
171
211
210
273
252
217
187
154
202
206
240
199
145
126
169
233
187
147
226
154
220
194
166
184
201
210
164
205
182
191
207
222
175
198
218
178
202
201
194
208
164
241
225
214
189
212
109
238
196
194
189
246
245
219
197
134
206
198
165
189
238
180
170
209
254
230
203
163
225
205
201
194
123
203
203
85
177
205
237
196
201
262
105
245
174
196
128
224
116
193
208
238
143
192
207
201
156
206
175
188
122
198
203
180
202
173
238
152
205
150
162
220
198
207
187
168
234
202
249
162
165
164
169
230
175
210
149
184
216
258
203
181
139
225
210
203
138
190
173
228
124
201
189
206
302
190
230
236
214
200
201
135
187
207
236
161
206
266
162
133
241
134
155
217
234
237
191
210
166
147
196
205
195
174
205
193
163
177
205
148
172
167
231
223
236
182
208
209
216
200
174
246
195
172
226
194
162
158
232
197
205
237
128
276
231
197
216
210
198
149
209
215
177
173
205
226
187
207
198
174
211
183
187
140
160
187
139
227
227
204
204
170
129
213
146
221
208
186
232
214
183
171
230
158
174
195
161
174
225
154
181
257
261
129
254
172
205
120
213
179
161
255
145
160
237
247
219
188
220
199
249
249
323
207
197
178
176
204
205
231
205
247
205
151
197
219
245
157
230
195
252
195
248
184
257
263
155
204
194
242
211
173
181
164
221
240
209
172
188
228
184
222
168
183
165
217
155
200
155
163
238
162
168
153
199
175
234
191
205
161
240
207
155
211
206
260
190
206
235
150
91
240
226
202
195
238
226
149
241
158
235
191
233
166
202
176
209
169
196
210
154
192
252
199
212
157
191
182
174
151
197
184
248
220
235
240
222
133
182
192
166
160
233
147
250
167
229
217
249
142
172
245
210
176
193
226
258
187
199
146
189
210
203
161
182
224
192
236
201
170
201
168
165
210
159
160
197
234
244
244
207
217
183
247
228
151
163
141
172
139
148
206
227
198
185
126
155
178
166
219
241
194
277
208
213
230
168
265
227
261
129
205
110
228
205
179
168
226
223
227
218
188
253
260
152
210
157
205
195
263
238
208
181
228
186
225
261
239
186
157
212
213
144
161
219
189
193
203
197
237
201
141
164
232
221
186
215
268
166
215
261
180
228
232
175
244
251
213
223
259
228
185
254
244
150
180
161
170
149
223
224
96
225
224
205
227
176
166
218
250
244
245
188
177
212
226
231
206
233
224
228
178
131
154
181
178
244
192
182
187
172
151
199
193
202
227
211
199
188
188
188
135
189
208
179
207
240
214
209
182
152
226
238
198
168
209
186
167
180
188
155
244
149
149
169
162
265
151
124
186
233
191
159
176
216
220
173
216
160
214
210
169
177
189
195
180
156
293
186
219
177
176
230
211
235
202
227
217
202
198
175
208
181
214
173
150
158
199
223
218
180
170
185
165
169
231
259
170
226
236
184
203
191
205
192
188
147
201
158
164
212
175
182
146
210
204
232
235
195
205
135
184
207
213
202
227
236
229
186
205
175
197
229
177
179
262
207
232
190
156
217
233
216
149
205
206
187
177
225
249
216
184
220
227
203
165
169
189
190
190
179
128
166
242
224
197
269
203
198
198
220
237
261
231
192
207
214
188
197
162
132
260
212
133
177
231
230
215
220
194
230
288
239
147
145
230
161
203
230
231
156
224
208
227
261
223
204
155
194
196
210
192
185
192
146
201
218
136
222
198
189
244
214
208
208
198
191
177
174
256
190
211
182
241
200
262
223
162
174
221
239
195
169
204
219
158
215
260
159
185
165
198
193
196
140
240
167
248
220
157
199
178
212
231
251
176
199
203
238
229
193
203
219
248
118
194
255
226
188
187
185
204
194
240
213
210
192
214
204
220
244
187
203
208
182
211
201
197
217
260
158
258
227
183
210
173
200
235
242
149
182
241
203
231
188
154
178
233
229
145
177
204
199
185
203
228
244
214
206
201
213
283
184
224
174
233
154
227
192
197
194
173
164
266
166
176
202
225
249
193
240
203
180
239
219
171
214
265
149
193
242
215
162
168
244
161
263
223
238
227
205
180
155
212
202
217
185
170
209
229
131
176
224
169
219
202
175
237
203
166
161
226
156
212
138
159
208
185
139
251
238
194
162
190
259
198
207
167
275
258
212
195
224
164
211
246
166
208
198
248
246
159
224
149
276
274
184
213
169
188
206
196
220
234
240
208
226
201
176
208
215
216
149
149
184
183
202
188
170
223
178
160
219
187
273
261
210
197
241
180
210
155
211
191
153
163
253
203
201
208
190
208
226
151
191
201
209
221
194
190
148
175
158
204
137
167
193
205
151
186
225
171
231
251
196
154
207
196
158
192
135
208
229
240
206
212
230
200
224
143
270
171
149
256
262
199
211
216
160
189
202
186
172
198
197
194
230
199
231
238
192
173
199
229
231
104
200
221
203
232
243
144
110
251
217
227
193
129
189
220
166
230
222
217
228
187
218
150
238
207
234
195
233
188
210
223
171
197
248
217
160
213
184
189
231
109
239
153
206
224
243
211
221
176
195
189
191
150
224
152
237
163
157
177
171
190
229
196
228
210
177
259
204
157
222
167
176
149
225
238
210
157
215
204
189
178
210
206
164
139
214
201
192
214
220
237
252
174
201
260
165
143
181
244
187
210
220
257
94
156
154
167
179
176
204
150
208
149
202
210
238
144
187
167
176
159
185
193
187
203
230
158
197
186
181
230
208
118
129
186
182
180
172
241
237
175
153
198
237
110
211
231
216
208
212
196
173
211
236
215
165
148
222
151
183
206
261
182
244
216
207
230
178
201
135
213
238
216
226
221
137
158
199
242
231
168
224
221
214
204
220
146
161
181
220
206
198
184
135
196
235
195
264
199
207
174
194
258
186
231
225
226
162
195
176
235
261
223
255
232
178
197
244
265
241
192
236
222
139
166
195
177
241
217
236
247
214
212
212
172
94
229
243
214
227
196
239
210
194
197
209
172
160
251
148
201
239
226
193
174
132
216
185
246
235
171
210
175
238
218
211
223
149
168
270
234
204
140
227
245
206
196
250
213
226
234
178
176
150
176
233
254
227
203
168
259
220
257
155
191
165
197
235
206
220
233
159
258
164
221
126
235
188
202
233
235
180
219
192
183
110
183
147
178
220
120
211
188
197
147
193
235
192
286
181
237
208
190
173
217
246
203
217
183
260
148
233
204
228
170
178
219
272
240
218
142
238
172
187
178
183
215
231
250
207
245
181
203
128
240
233
202
189
274
289
184
201
252
231
195
236
188
206
189
173
151
211
251
171
213
203
175
243
253
114
138
227
159
213
227
243
169
117
217
160
188
193
269
166
130
181
114
199
210
218
239
193
214
217
158
254
206
230
162
220
108
213
179
236
275
222
147
137
163
213
214
258
253
228
252
189
129
230
198
180
181
240
219
223
212
205
226
161
202
164
248
225
211
201
235
175
189
190
249
165
176
235
242
219
166
161
181
236
219
206
245
189
209
183
238
219
234
183
226
168
204
181
121
224
260
199
180
250
228
224
226
223
154
218
207
195
148
181
204
205
160
134
183
226
162
199
239
216
242
190
164
166
178
209
163
196
201
225
193
188
154
180
202
200
185
210
244
199
217
211
203
202
175
214
260
178
257
186
179
155
213
189
221
195
186
188
148
209
215
205
194
243
218
221
169
247
199
242
207
181
207
243
206
240
212
193
207
210
174
225
255
213
221
229
167
183
198
171
222
178
158
170
146
229
171
179
170
154
161
154
195
229
209
163
197
181
126
152
237
179
165
199
148
165
230
169
162
166
203
179
221
234
240
222
143
210
110
240
217
239
262
155
245
183
208
165
189
241
184
202
162
196
219
180
208
166
205
173
195
175
208
250
225
240
180
176
222
153
239
169
187
229
151
195
200
167
248
172
234
191
198
171
243
179
185
224
192
218
214
224
166
187
185
157
217
182
177
269
226
153
213
184
196
197
165
254
225
179
191
187
262
156
171
167
173
213
181
246
228
190
174
210
181
206
196
228
195
218
211
267
183
222
215
196
227
143
179
208
268
164
258
213
143
282
195
204
225
163
189
140
192
139
193
166
213
145
267
247
115
247
243
194
133
170
142
177
163
181
197
219
168
215
159
196
141
193
219
165
200
220
255
151
192
242
167
211
187
200
190
218
210
151
217
180
220
238
194
178
183
190
217
121
228
181
226
183
215
173
174
177
245
257
206
196
222
153
246
125
163
291
184
146
199
222
213
188
205
179
163
226
204
192
246
217
161
252
245
231
196
132
217
184
124
231
217
152
204
164
219
211
247
158
200
193
247
250
187
243
282
236
184
141
220
223
183
150
201
184
240
246
212
190
188
221
266
249
231
260
168
243
205
226
224
218
203
199
209
210
251
146
185
261
244
224
223
213
208
200
215
216
249
160
138
264
219
191
261
198
164
175
235
174
170
210
195
186
214
240
108
155
135
188
174
173
195
116
218
182
222
180
175
198
212
177
231
228
233
175
223
151
206
199
151
199
221
221
237
224
131
186
181
176
202
206
153
226
268
140
214
165
258
208
246
193
228
186
179
195
232
256
205
202
190
133
219
200
182
214
215
183
228
257
225
205
240
227
230
232
216
237
186
251
162
158
221
218
168
208
232
188
248
204
201
195
196
187
185
213
220
227
170
270
206
228
248
266
185
141
238
203
211
142
215
202
211
127
171
242
133
228
204
221
235
209
220
168
191
160
192
216
186
199
174
223
177
172
225
182
217
177
216
165
201
214
168
188
162
230
172
203
240
170
200
212
199
227
236
171
221
229
179
174
252
162
250
191
266
183
163
247
180
225
223
234
206
187
206
236
227
214
222
156
195
166
283
259
221
251
248
215
207
220
179
187
259
218
184
218
222
232
172
158
137
206
201
188
212
244
143
192
166
254
134
158
220
197
168
214
225
146
207
240
196
236
208
172
179
162
168
227
176
222
166
202
232
166
207
222
242
200
210
191
222
170
206
190
192
163
182
220
207
172
213
185
188
164
219
178
227
221
220
167
234
222
250
184
178
206
242
237
204
240
238
138
155
170
212
152
165
166
138
181
228
160
230
133
281
217
203
190
173
216
191
142
243
230
232
185
147
223
204
195
209
201
212
214
192
193
196
238
178
187
227
194
229
224
209
226
200
235
200
219
187
200
177
199
167
163
169
154
230
145
185
209
168
167
207
252
178
174
203
216
233
165
205
181
225
173
204
252
193
206
234
202
226
237
185
230
172
231
229
180
181
147
242
238
258
227
156
193
258
222
222
212
131
134
196
216
176
126
166
195
235
233
219
210
202
167
152
180
204
173
203
198
189
133
206
212
199
244
161
190
156
154
196
220
243
174
213
165
188
244
167
265
204
229
236
261
180
242
200
140
161
268
198
226
249
257
209
175
160
243
208
239
207
229
188
214
184
128
220
199
200
164
202
220
223
218
222
183
190
118
203
168
205
167
191
237
209
226
166
167
213
218
154
185
194
162
176
198
244
197
227
162
243
205
246
273
203
188
158
173
197
161
209
233
222
180
172
200
249
209
204
258
229
237
193
209
123
183
207
183
179
219
183
155
243
190
185
152
169
115
234
172
268
178
243
168
171
144
210
201
218
182
204
194
177
227
198
229
194
198
184
169
163
212
189
224
194
248
220
229
176
205
205
152
210
244
158
195
190
183
140
167
214
226
128
254
200
242
231
198
177
220
157
230
195
193
191
257
175
166
221
212
212
234
167
208
202
232
204
225
192
188
162
190
197
182
213
200
172
192
170
232
196
164
198
179
212
244
184
244
212
211
164
161
202
215
204
193
174
190
161
261
201
232
184
228
173
231
223
107
207
196
218
225
257
233
206
256
181
223
179
164
169
216
97
217
168
192
198
196
284
200
269
207
208
251
146
203
230
235
259
183
165
281
146
194
213
202
227
234
136
178
215
187
220
200
150
217
180
209
190
186
238
224
208
194
175
221
216
225
217
214
185
245
174
195
163
188
237
199
219
249
202
184
243
214
204
178
193
271
207
229
201
136
189
287
204
201
183
177
175
197
183
180
160
248
213
171
171
167
198
160
187
226
174
186
199
237
188
213
211
132
226
203
239
177
239
146
195
237
167
219
203
230
177
219
173
225
250
192
194
261
194
216
193
193
228
225
221
228
220
164
199
176
181
176
238
246
231
209
285
199
196
209
222
251
201
147
155
169
234
174
234
156
177
206
187
223
259
198
179
222
186
220
258
209
193
182
194
193
202
213
226
191
199
252
235
191
160
203
264
143
162
224
159
243
158
201
109
204
247
240
262
179
231
187
258
187
186
221
242
228
258
233
185
242
216
223
234
160
204
145
140
204
188
194
204
232
175
169
176
187
252
199
185
233
240
222
220
180
184
171
229
212
209
223
246
263
253
182
241
169
148
142
231
260
133
200
215
190
200
175
133
197
202
177
180
233
218
211
188
187
218
218
158
122
204
155
209
153
148
202
181
209
226
165
187
225
232
149
180
184
254
241
154
224
216
198
218
213
176
203
199
217
173
188
210
191
201
226
214
215
302
192
231
250
222
180
215
164
197
204
222
181
200
199
202
215
208
199
200
191
222
191
197
217
197
217
121
185
236
174
171
161
214
213
165
188
278
252
172
166
155
213
215
195
216
167
227
208
252
152
220
252
198
185
155
206
222
176
211
196
234
198
88
182
138
274
198
145
195
194
150
224
172
165
181
162
195
282
205
185
156
192
235
216
190
185
212
190
167
251
187
194
217
226
213
172
172
218
207
179
154
217
226
232
234
184
203
161
233
187
226
216
204
179
194
233
209
182
205
202
201
236
243
223
252
172
216
255
176
166
196
146
212
235
236
195
183
185
177
159
210
170
249
178
158
221
217
237
166
160
227
235
184
166
238
244
181
204
187
276
256
160
175
161
184
228
177
201
199
217
249
194
205
147
236
132
212
221
244
185
184
283
196
178
198
201
212
163
228
251
217
150
139
206
256
181
252
168
168
206
157
151
193
173
256
218
221
189
221
196
143
168
229
160
122
251
194
205
165
198
189
183
201
199
214
276
183
208
195
176
175
227
189
256
166
138
163
204
149
206
238
157
154
114
147
174
238
215
178
201
190
191
214
225
123
205
253
234
178
155
182
93
168
205
162
178
270
209
214
197
256
235
206
211
211
234
235
190
223
215
212
160
196
163
131
191
205
202
164
194
194
225
228
234
256
203
141
191
193
177
148
172
204
184
166
154
192
163
270
177
192
224
189
173
224
171
267
211
171
172
118
181
188
213
181
135
200
150
212
243
222
236
227
197
243
194
156
232
218
229
261
254
226
208
224
190
197
179
128
246
181
205
159
191
156
198
100
202
195
205
196
109
269
187
205
216
199
224
130
169
248
186
206
276
181
189
189
113
175
151
256
199
192
195
176
168
236
201
211
188
192
177
224
269
218
173
240
161
234
254
210
164
179
200
186
212
211
178
248
177
214
224
232
177
241
223
233
221
207
188
257
139
191
162
203
196
155
200
220
167
223
123
203
222
201
191
184
251
230
231
195
180
187
193
146
234
204
203
230
220
207
220
183
176
236
169
249
194
126
184
118
166
257
203
229
186
115
172
237
185
206
187
216
151
242
232
207
175
226
157
167
197
156
202
213
208
182
192
200
212
166
268
221
194
202
163
217
182
247
220
147
172
210
207
191
251
211
226
204
200
210
175
224
201
265
140
157
198
230
243
207
202
195
221
193
160
205
176
212
212
145
161
252
194
254
208
133
212
195
208
137
193
196
165
214
246
202
218
198
200
212
249
251
163
165
225
168
221
222
175
207
200
218
199
191
210
153
144
184
223
193
179
214
226
240
169
208
182
228
117
175
208
194
176
142
186
166
199
220
219
221
259
186
213
209
175
253
196
187
215
213
204
211
177
208
235
189
204
205
264
154
158
295
194
181
205
242
189
243
240
166
186
185
219
214
197
203
172
227
208
192
190
230
180
225
194
177
216
170
196
234
157
195
200
197
213
198
189
287
236
228
179
205
191
199
179
197
233
203
210
167
172
221
231
202
226
274
226
187
199
174
269
224
174
243
179
143
199
162
238
206
150
233
171
225
145
171
183
244
221
242
169
222
155
175
233
187
171
177
186
230
197
254
259
212
185
211
218
280
192
189
143
140
235
176
239
211
216
233
162
185
212
206
197
233
231
227
222
257
208
180
245
218
251
190
237
183
196
200
227
235
184
168
196
197
226
175
179
187
176
224
207
236
166
238
233
153
150
250
244
133
210
215
201
203
220
197
222
179
198
161
185
213
149
217
207
145
180
233
235
222
259
260
228
202
200
194
229
172
239
205
224
157
206
256
192
174
246
204
194
140
154
179
172
165
97
221
180
229
245
173
177
190
210
168
175
181
166
233
218
213
211
247
134
176
203
262
229
174
212
216
206
242
203
203
225
269
176
198
207
155
194
218
193
181
157
187
262
263
201
226
202
254
190
231
285
225
216
211
244
205
201
228
220
152
194
253
219
179
205
162
242
208
183
148
165
181
175
188
179
200
171
225
145
197
254
176
212
170
176
253
248
243
263
133
246
219
129
205
189
224
207
176
157
198
189
242
214
189
233
186
207
186
166
192
230
269
276
248
171
206
129
217
200
213
168
227
169
207
204
128
206
188
126
210
225
170
214
247
195
187
204
172
204
202
148
143
195
178
208
230
195
194
157
228
199
224
129
149
219
179
226
222
242
204
156
112
220
177
259
219
244
189
162
188
171
205
222
162
261
240
193
242
212
215
216
228
247
215
179
181
202
207
260
228
208
188
189
257
219
152
144
228
198
224
159
222
211
152
230
199
239
117
216
126
216
200
211
189
171
179
211
166
185
197
128
155
139
208
182
241
172
274
189
251
241
159
200
186
191
161
213
238
208
238
178
280
245
210
192
226
214
201
210
187
164
222
190
173
225
154
213
174
195
212
150
202
247
251
260
180
197
229
170
135
206
118
223
172
249
189
142
186
184
202
191
229
229
217
176
207
156
177
206
167
195
231
207
285
160
133
256
218
242
175
223
179
160
185
217
219
240
229
204
211
241
202
223
233
157
201
198
205
168
229
159
182
233
240
220
197
240
217
259
225
226
212
162
248
226
194
228
216
202
200
220
207
170
179
205
199
211
172
200
147
201
191
127
184
207
178
195
226
183
239
198
157
179
185
202
200
189
178
222
259
183
173
152
216
235
168
172
213
167
172
242
181
202
184
206
220
200
175
205
218
132
226
198
266
189
249
163
184
177
199
216
177
153
217
161
196
182
190
189
204
185
165
234
194
205
163
183
233
185
227
203
165
160
235
233
137
159
186
199
209
166
168
199
218
209
129
192
153
157
166
274
207
175
163
139
136
174
193
237
225
190
137
179
211
231
187
198
188
155
152
157
178
218
241
230
232
185
257
244
213
182
161
201
210
153
172
157
127
152
243
196
149
197
241
153
222
191
221
224
194
196
244
249
267
202
164
194
162
192
180
267
210
157
215
156
222
254
214
210
183
157
155
169
224
252
157
192
197
247
228
159
199
187
195
160
227
236
238
209
180
237
194
212
146
143
179
227
141
177
231
240
198
221
181
220
179
191
109
213
136
208
166
245
199
206
200
209
256
218
194
181
151
221
218
176
133
248
154
172
141
245
241
144
253
268
216
152
221
188
233
205
233
204
183
223
165
212
180
147
262
196
199
204
233
232
258
196
174
208
210
178
179
200
200
219
219
132
165
219
250
180
201
201
175
173
163
182
228
235
152
245
224
145
239
190
208
169
240
188
269
198
140
236
134
231
221
214
175
190
211
211
183
155
164
150
222
174
158
219
242
165
109
216
232
222
151
158
179
243
158
199
207
209
182
174
188
99
143
215
187
149
221
167
231
182
218
224
185
219
190
174
247
219
131
211
246
225
196
144
210
220
170
240
166
175
246
161
226
167
137
229
221
154
191
202
192
250
214
251
213
205
249
184
208
184
166
210
174
181
190
191
220
258
218
206
204
220
244
182
174
204
217
216
219
217
285
211
249
157
158
203
198
210
251
200
216
172
236
170
250
204
229
182
174
106
144
198
177
252
156
168
222
202
197
183
232
219
237
192
187
152
180
288
189
144
253
167
239
181
197
171
202
136
216
211
215
227
247
231
216
220
174
123
213
165
223
192
187
202
204
199
230
216
169
218
205
261
228
178
212
211
148
185
184
233
192
143
245
215
171
128
213
208
191
138
162
204
206
180
256
248
181
209
206
183
185
215
174
235
173
241
186
154
145
207
213
190
203
226
271
181
241
221
90
231
193
208
133
149
191
176
228
184
259
264
176
206
240
201
173
208
189
211
197
218
198
228
186
183
240
215
159
227
178
214
204
192
197
175
179
240
188
212
233
235
203
253
174
126
192
274
206
159
197
234
227
129
161
238
78
211
289
260
176
171
135
246
251
199
178
238
108
171
218
187
210
224
199
209
222
216
214
224
231
226
160
150
197
173
204
198
161
198
205
193
228
155
218
164
199
200
177
233
203
124
247
251
197
174
196
239
142
206
186
215
235
169
172
226
172
221
248
207
209
236
196
241
229
188
197
202
223
208
180
214
200
264
224
222
183
135
228
257
172
268
214
166
134
200
207
169
179
206
192
188
179
203
265
274
242
267
175
200
177
129
172
221
218
219
214
237
196
207
156
204
225
221
187
227
244
225
210
182
202
224
236
205
192
171
184
197
269
234
230
241
190
173
142
195
181
236
143
158
194
238
181
188
167
264
141
197
193
240
173
143
239
188
203
211
167
200
209
126
271
138
173
187
175
226
248
188
223
230
208
279
173
292
223
188
147
164
253
182
219
164
202
256
216
236
250
184
174
248
167
147
221
247
206
234
236
231
165
210
173
161
225
169
206
158
162
189
136
248
205
210
237
209
245
200
238
166
208
189
280
224
216
223
259
225
197
160
134
194
149
194
248
257
160
156
198
206
216
123
128
231
155
238
171
171
205
177
183
232
167
213
163
159
219
219
182
198
151
212
235
179
169
220
188
230
164
199
201
194
209
237
228
238
154
214
228
172
185
185
246
219
244
171
201
158
261
229
183
200
202
139
247
262
153
197
189
209
139
153
147
154
234
164
198
167
209
170
200
205
268
157
163
172
217
179
159
246
224
236
223
187
188
203
200
195
162
290
190
188
224
172
208
179
141
197
190
240
201
258
150
160
222
168
226
201
209
187
195
180
195
220
145
211
240
202
112
157
192
199
172
177
186
201
191
209
202
214
238
218
179
240
169
118
204
209
262
274
174
209
238
146
193
260
160
218
138
166
213
218
258
187
149
163
256
194
202
144
179
189
187
211
237
233
183
178
211
263
226
202
209
268
193
193
197
206
231
196
226
186
253
237
151
160
172
157
173
182
254
207
211
226
196
204
196
201
201
138
177
240
184
202
174
228
200
212
202
252
209
188
220
200
235
233
197
171
174
163
175
167
126
173
263
168
224
212
189
177
206
193
175
208
199
242
221
163
198
127
181
134
224
181
191
230
228
244
217
234
173
218
165
204
164
206
213
176
142
239
200
234
241
238
173
161
184
213
191
263
269
292
231
148
249
241
170
190
231
152
229
204
180
182
179
159
172
180
226
255
266
243
193
190
208
249
188
227
223
209
218
160
190
242
199
221
226
232
290
286
197
186
206
217
245
190
139
215
184
163
221
184
155
188
211
150
170
219
132
215
197
165
196
266
242
168
215
203
174
156
183
228
172
261
234
230
167
186
179
154
208
206
242
96
234
243
190
213
211
257
235
207
215
231
217
178
147
123
168
183
192
197
256
249
218
176
219
198
200
168
175
244
196
183
204
201
149
161
256
160
246
212
183
185
137
192
201
219
171
205
238
270
175
189
166
160
175
191
174
190
221
120
193
189
177
214
215
221
269
159
200
204
205
230
167
189
173
228
202
228
222
223
211
177
188
142
193
145
151
248
221
211
209
207
202
228
167
140
206
227
224
166
192
245
237
210
228
208
227
248
166
241
203
209
165
258
246
202
223
168
194
213
176
229
231
220
250
203
234
170
183
152
177
243
216
164
204
244
203
214
140
143
226
183
252
174
187
166
230
177
220
195
206
192
270
216
231
179
205
169
237
206
184
176
219
196
249
175
184
218
165
166
245
232
188
239
162
233
228
178
199
192
230
177
158
198
203
206
137
213
194
113
203
265
211
189
204
208
170
251
128
206
189
254
236
225
175
233
244
266
155
198
145
192
148
174
213
149
209
225
258
219
205
174
218
200
193
211
222
171
242
247
187
159
225
154
127
182
210
177
255
200
163
210
194
139
208
224
156
259
191
168
209
264
200
263
196
141
216
220
224
180
204
146
159
218
224
170
205
154
204
193
188
213
158
207
204
233
232
171
224
239
183
232
210
290
214
177
222
179
199
171
189
208
197
213
268
159
181
149
122
248
176
148
186
146
220
184
151
168
230
183
143
191
168
209
200
245
134
206
190
208
250
232
229
146
157
191
228
145
219
236
202
251
245
210
157
209
222
163
222
162
246
133
208
207
161
191
248
206
229
112
206
189
259
174
211
171
205
155
237
222
189
202
189
230
206
193
222
231
231
192
224
206
252
223
191
255
243
194
208
219
185
157
235
142
155
184
245
152
234
147
166
204
169
210
183
184
181
191
128
213
285
184
178
210
189
237
158
281
186
196
230
214
175
137
145
144
231
217
254
249
223
175
245
181
187
191
192
227
208
170
187
256
247
228
194
246
180
187
177
253
187
160
182
194
211
169
173
210
189
199
196
181
201
234
165
253
195
203
118
202
157
179
169
262
180
174
170
217
182
285
153
191
186
220
189
103
191
202
202
189
228
216
226
174
198
208
241
164
233
236
161
213
206
125
202
215
134
246
166
221
182
177
158
155
217
218
241
229
216
230
156
221
145
187
270
196
205
207
237
174
154
220
239
253
199
119
216
184
219
160
272
193
200
230
232
195
196
186
194
193
156
201
262
210
186
154
177
258
156
212
189
178
240
127
186
187
212
191
213
190
257
175
199
261
180
196
174
217
230
244
181
185
198
225
224
231
214
154
211
179
239
225
211
148
178
218
190
216
208
219
232
210
165
152
229
166
170
186
253
146
226
163
146
140
188
235
150
199
157
202
199
151
199
241
154
231
234
205
191
157
169
155
184
240
153
254
190
142
221
174
225
214
250
214
170
170
148
209
150
263
215
213
188
168
235
200
184
169
165
160
142
178
123
176
187
231
266
138
182
222
257
220
119
245
160
200
264
141
216
213
174
214
175
202
157
209
206
225
221
181
168
209
165
224
250
164
188
194
222
186
227
172
238
174
164
187
189
185
256
152
217
244
185
225
160
217
227
200
168
289
242
211
170
172
186
264
194
230
127
256
259
185
208
236
160
216
155
177
247
226
229
162
229
182
154
206
218
223
176
216
249
196
172
203
200
187
193
190
235
146
266
168
208
226
241
209
178
193
232
228
138
226
195
196
188
210
165
194
229
233
174
208
205
144
232
190
220
177
230
120
176
178
222
139
168
194
257
213
212
139
188
204
219
186
212
235
265
156
185
206
217
161
234
204
187
192
216
181
179
237
225
197
205
233
199
236
196
135
203
210
150
231
240
172
169
202
172
189
221
195
161
220
232
156
221
222
231
272
229
192
207
186
221
170
228
193
176
164
185
178
148
177
155
174
173
157
169
208
284
211
240
213
161
147
275
198
242
228
121
193
147
175
223
229
213
217
216
220
223
231
233
216
252
222
196
147
262
199
176
221
208
138
189
221
221
237
240
164
201
245
225
155
228
235
232
235
287
148
150
158
221
182
209
188
237
249
187
209
188
211
175
241
239
199
195
161
248
212
199
210
196
231
184
236
189
208
187
156
237
200
167
227
133
164
247
205
127
183
125
247
157
234
278
170
182
212
199
233
199
203
217
211
216
208
214
96
238
194
217
208
198
209
186
180
191
228
234
210
208
229
205
211
197
200
217
149
269
207
185
286
166
178
170
170
233
209
226
196
285
218
183
210
275
227
216
177
189
267
213
209
184
121
199
174
192
210
207
235
156
249
208
189
258
228
203
218
169
229
173
224
139
188
196
200
180
172
207
233
193
162
161
198
229
188
232
184
140
265
154
145
224
179
187
163
237
220
187
209
188
100
192
106
220
176
193
215
160
235
218
205
153
222
217
267
230
192
245
131
249
227
200
171
232
243
213
167
199
226
183
173
194
181
242
189
207
237
203
215
233
193
139
240
175
204
265
274
228
192
204
158
184
225
230
253
159
218
253
159
217
210
242
161
244
140
175
168
140
225
228
159
207
187
197
164
214
249
177
132
246
246
173
177
245
171
261
184
177
154
251
160
177
208
148
225
184
146
232
138
186
218
204
165
179
204
195
214
219
230
179
202
204
213
151
217
172
214
76
234
226
193
205
210
205
203
172
248
192
202
223
258
174
243
231
238
239
132
247
183
212
204
212
249
191
162
227
198
248
169
144
209
213
266
149
191
196
218
234
245
237
178
221
181
175
217
243
139
206
191
202
112
179
207
205
230
218
205
208
178
190
180
161
238
202
255
148
208
158
211
178
176
219
194
210
192
198
202
241
286
138
217
253
166
212
230
166
161
260
177
163
173
231
220
246
170
229
233
188
139
150
191
159
139
232
236
266
201
202
213
210
180
162
200
243
178
258
250
279
122
147
211
214
202
192
243
207
198
221
106
196
153
235
199
207
185
194
165
199
219
159
209
157
190
192
191
131
109
277
176
179
170
201
176
139
215
226
205
152
259
239
270
186
197
283
171
189
225
194
226
210
153
232
223
216
168
241
219
152
241
146
204
221
186
239
230
180
128
170
171
164
209
188
162
185
173
204
267
172
220
196
170
161
158
247
242
214
181
225
204
196
185
217
241
197
205
221
166
171
122
224
198
244
219
132
183
233
217
202
196
174
139
173
176
190
215
258
265
126
176
246
256
112
206
154
177
215
198
165
168
214
154
220
223
174
214
165
205
226
173
228
235
201
159
171
151
156
193
237
124
201
212
224
99
207
152
171
173
193
188
258
242
187
197
181
195
173
202
211
215
151
203
206
195
229
181
251
229
217
208
161
194
207
193
193
229
223
171
206
174
218
233
173
243
176
195
243
262
189
151
263
194
218
230
231
252
180
230
256
214
177
229
201
228
236
183
202
166
199
187
216
231
139
247
159
245
259
154
202
172
201
215
192
199
195
180
222
213
237
208
191
178
145
177
227
187
197
229
168
174
186
157
193
179
244
223
217
144
225
183
148
183
205
203
160
186
146
206
163
212
171
174
234
240
217
173
220
216
221
201
275
198
190
191
198
142
207
217
147
144
172
197
264
279
227
212
264
157
118
174
210
207
200
182
198
152
206
195
218
116
184
245
191
178
199
209
249
215
182
154
202
206
220
187
245
243
223
261
206
207
175
185
247
205
231
211
207
188
202
245
156
257
258
222
197
142
204
184
192
240
124
238
208
186
149
245
193
258
175
186
192
204
186
226
248
231
252
172
179
180
257
222
215
164
165
201
204
177
243
161
209
214
208
185
199
109
242
152
164
236
156
242
178
153
224
190
185
251
178
256
249
231
213
184
198
215
240
206
226
234
224
153
200
251
230
179
181
194
227
149
184
242
190
203
163
215
174
202
162
201
237
232
123
119
196
190
215
132
175
212
173
191
259
190
164
186
162
185
223
188
235
251
237
194
218
144
201
155
185
248
168
173
176
204
200
173
205
203
252
166
194
198
158
171
174
195
177
209
226
181
242
213
229
236
220
212
248
201
164
148
242
219
230
145
202
222
220
229
196
219
136
186
231
251
182
247
244
189
168
185
204
244
238
192
133
137
146
199
149
217
215
211
195
259
206
195
182
215
166
194
148
197
197
243
208
188
120
183
203
240
210
209
220
273
186
229
168
184
218
196
234
224
246
151
160
197
200
228
229
179
206
191
149
222
185
216
160
238
174
223
175
161
217
216
191
228
174
209
188
185
202
173
190
163
208
219
175
230
206
249
186
249
188
233
228
132
157
263
179
211
208
187
242
241
126
199
198
227
248
195
256
208
221
194
201
227
208
213
221
248
185
253
150
202
161
155
143
182
164
154
197
233
173
198
171
219
184
201
252
141
198
197
271
163
206
227
220
196
164
161
177
140
167
158
235
254
170
145
219
197
230
176
206
180
141
157
226
171
256
174
175
149
193
160
200
233
167
183
240
138
157
250
210
199
205
198
117
198
239
211
225
204
181
245
199
200
182
206
179
211
231
255
174
193
173
171
176
231
194
181
194
162
209
185
215
198
135
216
146
232
216
250
226
174
200
154
208
245
213
167
229
214
180
206
179
173
203
208
244
233
199
184
180
240
196
192
221
163
141
284
199
162
193
194
175
201
173
207
240
235
214
172
255
185
229
198
208
220
203
197
261
167
244
154
245
193
201
242
203
224
196
178
187
199
204
144
233
164
188
205
172
187
203
167
239
199
251
194
221
191
231
225
207
132
194
176
157
165
156
170
209
180
226
180
206
261
186
137
206
205
192
220
245
204
149
184
246
136
204
221
201
245
155
211
189
174
227
254
170
154
280
180
162
212
257
183
184
106
234
205
192
202
216
167
159
193
209
231
199
154
114
189
187
204
189
200
170
148
238
132
196
202
205
153
229
187
178
202
234
156
176
209
206
145
261
224
219
218
167
146
204
199
257
214
248
157
163
155
156
215
207
200
176
225
191
159
197
175
191
222
176
245
153
202
192
152
169
188
160
157
228
176
204
184
233
213
222
222
207
211
173
183
273
188
207
232
211
205
197
265
242
190
227
211
203
135
271
202
201
242
232
184
197
168
163
200
253
167
184
184
183
212
242
207
211
164
200
195
216
230
192
152
193
241
160
228
198
195
206
240
187
217
131
176
146
173
191
222
231
188
227
203
195
184
205
200
255
218
205
159
253
246
220
148
225
195
193
263
176
138
173
254
225
218
139
193
170
232
238
221
174
176
243
182
223
211
284
239
167
222
184
228
226
234
179
141
165
186
160
282
202
156
249
229
269
202
216
250
149
230
202
180
228
239
215
211
289
216
229
206
173
203
255
196
235
152
202
204
196
211
192
221
224
224
242
229
153
255
218
196
215
215
215
207
156
184
167
225
218
239
206
186
245
170
218
219
261
228
166
235
205
222
239
259
193
151
205
154
246
186
204
197
197
157
229
212
228
178
214
226
263
223
167
163
182
161
188
220
205
201
232
259
245
220
180
239
178
211
191
214
164
190
208
167
220
217
162
196
204
222
204
210
155
195
138
137
196
191
144
201
178
224
213
205
197
170
173
150
231
223
178
206
184
161
162
213
204
209
229
253
241
190
217
205
151
223
157
130
205
184
281
277
230
182
158
238
229
206
208
175
219
186
183
212
249
194
206
112
167
210
204
206
210
161
171
206
232
133
190
220
168
228
225
206
270
190
224
274
120
224
144
257
202
194
218
191
167
217
163
180
234
217
229
159
184
221
212
259
233
144
220
233
213
284
214
183
126
194
219
170
225
245
225
166
182
208
187
239
232
211
188
114
152
177
175
208
187
156
258
221
224
228
178
215
184
203
179
183
221
205
203
240
184
188
210
161
207
251
271
183
161
167
208
224
251
159
240
195
202
203
127
239
212
129
145
203
202
184
206
192
218
191
263
169
176
204
252
187
271
220
195
196
139
126
203
217
144
144
196
234
221
227
148
255
265
126
276
225
202
211
193
185
165
150
193
208
238
198
174
262
210
244
251
227
238
210
184
196
237
194
222
229
230
183
180
247
189
223
221
101
178
202
143
182
213
200
135
263
266
258
247
209
255
176
178
183
172
268
180
221
216
233
248
212
175
209
175
196
177
262
194
135
207
169
167
240
214
223
190
263
188
217
160
202
218
169
220
179
156
180
219
156
208
146
231
216
223
218
169
229
218
226
203
178
180
159
244
149
189
151
137
195
208
234
199
183
211
187
140
165
205
193
279
223
213
219
231
152
169
241
200
214
191
188
221
272
211
267
195
190
206
159
161
104
181
177
210
160
168
202
267
210
234
191
204
202
196
226
229
215
230
159
207
250
241
204
199
209
253
171
241
123
92
190
156
211
134
211
182
205
114
231
178
198
250
156
235
223
236
220
186
202
186
197
177
277
208
181
168
223
217
170
215
187
249
189
186
120
234
198
186
165
171
245
155
166
194
216
182
210
173
193
206
220
165
211
176
251
214
204
228
209
191
238
180
233
198
251
154
190
174
167
127
185
179
209
223
190
196
209
241
192
263
163
141
171
219
227
188
253
195
236
138
214
190
180
194
188
215
223
209
268
197
231
130
159
193
202
206
237
269
190
229
178
183
254
144
197
177
179
182
201
141
203
196
248
244
234
202
271
139
173
243
193
208
181
221
225
181
203
210
160
159
218
298
150
166
118
133
206
182
210
173
177
164
184
133
225
226
221
255
237
205
188
216
195
143
155
224
213
180
228
202
244
223
230
215
154
191
224
212
210
201
202
154
166
222
238
197
224
189
144
240
228
208
243
190
263
226
192
158
203
226
243
156
163
210
219
268
170
156
195
264
258
163
252
250
212
191
179
189
238
193
175
148
227
195
141
230
142
238
226
189
215
191
164
217
179
213
210
181
270
157
234
250
175
131
266
134
221
188
212
207
221
260
229
166
229
169
257
201
186
148
220
211
235
139
235
255
202
164
267
231
203
202
232
223
168
214
184
204
225
200
259
201
208
221
198
150
194
175
220
231
199
201
243
212
229
188
197
205
165
194
230
218
241
219
200
179
247
206
78
173
193
198
208
216
225
166
200
273
204
213
201
203
224
206
201
198
177
134
149
185
181
183
169
204
199
220
102
168
231
178
168
224
254
217
278
178
253
197
220
254
232
206
205
195
232
114
164
196
159
284
224
193
195
224
240
190
180
239
211
236
168
223
205
240
276
189
268
235
235
161
202
199
163
218
196
147
232
167
303
250
211
147
254
240
270
165
149
141
179
208
222
187
193
166
226
216
179
155
207
278
134
188
241
276
204
160
204
172
195
233
155
161
122
164
139
215
209
258
204
182
190
208
162
236
209
244
239
153
215
222
230
177
241
218
166
222
151
206
177
204
267
190
213
179
196
195
218
245
236
220
259
198
175
166
178
136
178
181
216
184
222
213
194
206
198
211
252
245
190
176
229
205
224
157
209
223
164
208
201
207
244
243
209
258
190
262
229
220
146
171
220
207
231
188
219
249
180
205
208
214
140
217
167
188
211
175
218
194
197
254
203
198
170
178
136
240
237
203
226
174
160
173
235
166
204
214
255
153
165
243
248
207
244
190
157
182
244
161
266
246
204
153
171
223
211
210
203
242
205
246
242
147
238
204
267
245
227
213
227
182
213
263
173
259
192
214
225
209
252
248
206
214
229
211
183
176
194
237
133
227
213
220
181
136
195
239
277
186
199
189
146
213
233
233
219
288
202
160
215
228
160
183
224
240
177
228
208
193
223
235
223
240
170
187
227
240
166
192
203
172
234
156
284
186
208
257
211
159
146
241
208
178
215
215
196
227
236
216
245
171
242
167
190
221
245
243
178
233
204
182
216
161
209
241
218
204
149
240
218
196
217
183
175
163
249
186
196
160
260
218
216
208
138
236
196
175
174
142
230
270
259
190
218
184
156
168
194
230
202
222
123
215
231
268
148
220
178
174
249
102
212
166
164
194
177
189
210
202
205
171
185
245
257
237
160
247
230
231
211
252
198
216
204
203
163
186
117
235
210
237
205
160
246
278
226
130
160
222
242
186
181
200
226
138
196
297
183
184
183
152
213
217
222
160
291
236
239
227
242
169
164
128
227
194
210
199
161
206
179
251
263
165
186
234
204
147
227
193
158
172
157
239
187
216
197
232
193
189
192
214
189
130
267
233
214
204
255
161
197
228
198
207
174
276
165
214
181
192
182
216
202
260
200
233
219
240
210
209
187
261
193
222
223
217
181
231
205
186
261
188
228
214
230
186
196
178
211
265
198
207
211
225
259
175
202
201
223
187
224
134
207
252
189
155
175
216
214
101
192
251
257
154
229
209
209
232
158
177
227
255
211
198
215
197
230
211
183
116
209
231
244
212
174
173
234
221
253
162
196
155
162
245
147
202
210
218
269
167
192
152
228
202
162
140
187
230
177
154
181
225
208
235
234
204
166
132
214
187
190
221
240
218
266
182
232
153
234
104
231
188
248
225
173
246
161
129
149
220
146
193
168
207
198
252
268
197
241
213
245
145
158
190
165
150
239
155
199
149
281
229
245
200
194
222
196
201
188
186
253
245
190
175
219
195
194
184
187
155
196
234
179
145
198
195
175
175
225
208
142
185
177
208
238
213
218
153
221
219
185
202
209
216
206
204
203
173
199
172
212
169
190
205
264
217
218
200
214
133
194
231
248
222
201
227
167
198
214
189
223
297
226
180
177
151
204
205
208
206
132
238
194
245
223
158
195
204
154
192
210
168
184
135
173
212
168
259
257
175
152
205
238
214
139
185
234
176
143
209
233
217
169
204
174
203
258
231
182
198
221
147
195
289
204
181
239
209
163
125
222
155
272
150
211
242
249
190
203
228
231
191
163
241
203
130
237
195
168
186
269
206
232
206
218
152
224
209
174
183
222
210
211
188
175
191
199
175
184
196
204
134
233
144
211
154
205
139
250
242
251
154
157
186
161
280
231
223
202
199
255
204
193
207
259
156
224
199
170
244
210
222
210
213
217
238
172
224
202
183
143
188
253
237
213
248
165
164
223
193
130
187
176
203
166
220
209
180
191
159
179
181
168
201
160
218
194
145
236
275
148
143
172
227
141
292
220
215
184
127
139
246
207
238
114
172
179
177
187
228
226
223
217
223
180
187
249
183
207
247
177
201
174
209
217
203
199
184
217
208
183
189
196
179
147
143
198
195
249
221
238
170
241
213
155
195
191
213
257
213
179
265
209
177
213
197
218
250
218
139
222
197
222
187
190
202
213
171
257
149
103
195
191
219
203
167
218
223
198
159
220
169
143
189
172
178
274
207
179
171
243
186
192
236
200
209
225
240
175
198
172
188
197
217
180
204
210
192
252
230
159
193
245
230
190
226
244
203
186
236
197
209
171
116
233
186
232
243
226
168
198
130
188
205
166
214
204
133
215
222
175
231
165
202
168
128
142
215
199
240
221
197
161
210
216
231
195
223
203
153
213
167
190
167
152
140
169
241
231
227
194
179
158
232
154
185
215
179
242
144
225
251
188
255
244
234
234
260
177
143
155
157
206
197
116
180
228
254
244
168
163
213
157
239
219
203
145
218
155
234
171
144
169
232
201
234
177
213
221
176
220
188
184
191
181
195
241
230
226
179
188
168
206
220
206
180
203
132
207
218
171
235
270
170
217
169
200
228
241
238
229
197
211
186
202
194
197
186
197
158
217
220
210
198
210
185
128
205
205
253
227
218
196
204
294
231
146
251
188
209
242
213
161
225
252
226
214
214
132
227
150
239
210
200
177
216
176
152
211
127
128
138
162
221
184
194
190
235
209
134
179
200
164
214
197
153
177
186
205
212
170
169
200
203
278
195
179
170
183
259
235
189
188
166
230
178
243
217
216
147
218
169
193
185
168
197
149
168
184
216
172
165
207
172
224
196
206
230
196
173
194
293
262
260
224
170
187
150
214
234
225
117
172
182
227
194
195
154
242
146
168
155
221
216
218
279
224
242
146
239
228
228
154
205
195
259
237
257
181
127
211
219
205
189
238
188
175
196
193
153
173
267
180
246
231
185
192
206
148
250
192
232
202
218
184
214
209
197
205
184
172
224
174
235
143
169
143
270
219
207
198
192
195
202
218
237
212
166
111
214
131
183
210
243
204
188
168
119
222
217
198
223
241
201
182
231
244
160
228
139
205
232
161
208
125
210
188
207
183
228
250
207
212
166
220
189
200
154
256
210
108
162
181
191
180
151
236
165
172
210
166
126
172
188
153
188
251
213
224
184
229
204
228
219
219
235
193
199
203
202
219
138
169
211
176
169
171
254
266
207
232
211
212
217
172
189
170
190
179
138
204
199
180
220
171
188
172
125
187
273
175
147
177
167
161
135
247
240
219
168
222
195
223
181
168
203
237
229
222
224
247
207
171
196
177
184
167
156
247
204
189
178
204
232
222
156
270
148
210
195
151
203
156
212
192
216
185
214
192
237
140
234
205
255
143
169
267
248
162
225
158
207
178
224
190
178
152
188
237
209
156
161
216
184
213
174
211
142
202
249
185
218
194
241
261
243
179
197
201
174
178
238
184
217
241
212
215
223
145
210
226
148
214
232
198
241
245
158
223
155
183
206
175
232
156
233
151
172
135
204
211
210
201
248
232
148
248
237
234
225
199
212
209
154
208
158
224
195
185
220
189
218
133
237
243
208
247
231
171
147
199
184
235
202
221
250
176
189
155
185
250
204
216
188
177
167
168
172
195
195
223
225
198
145
222
159
193
180
109
154
255
143
210
198
146
201
272
201
145
197
186
243
186
153
259
217
192
179
204
184
206
170
216
228
220
246
259
241
176
191
180
133
186
231
187
279
250
235
179
177
201
167
160
219
238
200
220
178
180
219
207
169
153
205
153
228
205
197
167
189
252
198
184
241
195
159
212
267
147
213
167
226
231
204
202
210
169
230
210
229
233
195
227
196
241
197
207
198
174
237
219
226
249
185
219
164
167
164
184
134
211
215
178
239
202
186
222
200
263
240
170
147
222
201
241
215
211
224
212
186
233
201
204
156
185
197
183
206
136
159
215
175
231
230
248
218
225
212
114
222
115
177
169
207
168
187
204
194
200
132
200
152
175
196
202
135
230
214
238
229
187
211
207
163
171
193
212
185
156
206
194
156
220
175
162
208
196
209
231
187
193
222
250
200
212
189
151
194
171
163
194
229
213
190
221
164
150
254
195
164
188
188
181
186
230
218
174
182
252
209
215
155
174
228
241
174
225
196
143
194
198
198
210
237
165
170
182
121
187
144
166
147
190
200
181
239
203
157
228
200
185
196
227
245
186
198
259
208
181
183
249
159
238
191
255
171
211
137
145
179
239
224
220
160
196
218
196
260
182
243
191
198
187
237
191
247
146
194
223
195
217
214
149
261
198
171
224
254
199
177
191
173
230
199
207
244
209
258
175
133
295
222
170
200
151
219
226
169
223
237
202
252
199
171
180
223
191
228
216
195
206
210
162
156
225
225
116
102
219
157
212
186
174
228
159
258
211
180
160
239
227
169
191
237
245
144
195
118
155
164
215
153
193
163
199
195
245
157
168
264
179
204
219
190
154
251
195
174
156
213
186
185
182
191
200
231
203
226
181
174
211
186
166
212
229
252
264
197
196
199
194
173
239
248
193
163
205
191
230
156
260
213
237
194
210
213
205
116
204
183
182
265
197
239
218
190
202
225
273
153
200
193
175
235
166
112
261
251
175
177
166
235
215
215
247
152
223
238
213
210
235
232
192
208
195
189
232
195
132
186
219
207
201
152
193
286
232
188
227
207
211
214
204
175
163
218
210
150
246
171
197
158
206
103
194
208
224
136
178
184
180
213
123
247
222
228
182
178
196
208
183
182
189
234
189
215
208
148
171
219
215
226
184
203
208
149
206
170
210
169
191
266
195
172
215
142
254
208
157
164
151
190
213
205
216
149
210
238
238
224
216
195
238
137
225
240
194
149
217
114
194
171
174
198
209
207
188
156
182
267
217
155
196
148
228
230
176
190
183
238
211
173
183
231
229
157
185
244
226
187
170
225
245
128
224
151
209
271
151
278
178
277
134
154
219
179
215
173
157
224
202
197
174
224
218
237
234
230
169
188
181
203
182
238
199
198
206
207
216
162
188
208
172
195
182
203
205
275
199
214
175
228
232
211
190
141
201
159
155
166
173
184
174
205
220
221
191
196
211
170
200
247
193
203
206
180
191
201
162
280
147
172
263
146
188
214
234
169
214
236
236
210
211
216
204
167
181
230
201
159
240
214
201
258
238
229
167
193
188
164
189
173
242
183
189
228
157
181
162
186
235
218
199
213
243
201
159
242
178
177
160
221
220
236
180
173
140
198
210
239
205
159
205
166
177
235
104
176
135
205
158
242
258
260
220
132
151
164
180
178
161
242
193
140
234
239
278
184
188
196
198
261
180
239
231
132
245
171
161
186
185
238
190
184
205
166
200
211
256
245
241
231
229
246
188
195
175
174
154
184
179
170
146
179
209
164
161
197
216
153
152
199
228
175
199
175
200
178
283
122
208
203
214
194
243
243
254
172
219
241
184
141
187
195
204
191
197
231
200
190
142
229
178
175
202
154
180
206
194
228
188
167
233
268
253
161
156
187
261
229
223
237
256
185
239
226
166
135
214
216
215
228
131
153
224
208
178
243
243
187
104
210
226
227
206
193
190
151
192
214
136
185
223
225
268
168
179
160
200
121
197
178
184
181
228
226
183
178
198
240
160
252
166
144
259
227
196
182
207
204
235
227
160
211
172
190
211
140
212
159
222
194
165
174
226
238
179
201
190
160
212
116
189
161
200
139
213
202
234
197
215
175
160
215
180
208
133
143
208
224
213
142
255
213
192
256
212
237
225
190
161
126
192
186
182
216
210
248
208
191
146
192
166
177
238
214
235
206
250
207
201
203
203
230
171
230
196
168
230
240
95
165
190
255
252
204
210
177
178
204
151
268
158
159
226
190
201
235
201
155
206
179
189
232
222
224
229
193
260
118
244
264
226
184
229
185
204
226
171
218
225
196
139
206
202
194
199
159
166
197
218
258
132
208
201
199
129
127
264
131
233
200
238
216
206
252
139
206
170
240
153
133
139
187
255
174
160
220
195
169
238
194
233
114
171
228
175
219
221
151
215
200
153
188
183
220
201
218
205
177
226
223
203
232
164
190
165
220
153
204
158
240
213
152
175
187
153
227
165
197
199
176
193
239
272
163
157
165
135
206
255
220
175
216
156
193
259
164
190
182
213
162
189
194
209
217
199
184
123
203
217
144
207
188
188
219
145
243
108
229
172
217
245
185
214
211
278
180
165
178
242
208
226
199
167
206
226
196
229
226
177
206
184
165
207
198
255
230
259
164
195
187
166
237
180
158
208
180
228
163
280
181
212
230
167
227
205
157
164
209
184
198
192
130
218
221
227
149
185
142
137
150
189
220
120
253
171
207
132
202
204
221
211
176
209
231
216
251
113
155
217
211
230
179
225
193
248
140
205
179
95
224
217
230
200
233
165
203
195
227
178
165
173
237
233
197
219
207
249
192
225
234
188
192
199
212
210
178
187
167
201
214
194
217
191
225
177
224
186
220
174
244
262
159
232
201
173
144
165
248
194
183
198
179
203
157
163
132
218
200
170
178
172
204
196
213
124
164
214
183
143
225
165
196
214
159
164
196
277
198
169
264
187
145
164
229
216
202
167
231
199
208
192
199
204
205
180
266
224
194
217
239
201
220
166
199
174
236
216
184
245
235
287
196
206
259
247
136
192
185
222
179
202
212
214
222
232
208
189
245
190
146
238
171
156
179
255
245
203
216
222
212
185
231
246
239
200
176
217
197
167
232
162
198
205
238
235
218
170
227
250
184
161
159
145
143
236
275
209
184
191
173
184
223
262
161
124
191
142
185
203
109
198
244
214
177
190
196
211
207
211
167
268
185
241
151
214
233
194
213
188
219
243
193
125
206
180
188
228
258
185
236
202
191
274
185
249
187
221
215
183
218
150
182
185
233
193
210
186
176
144
191
234
194
184
205
209
160
185
202
242
127
200
196
198
236
152
165
115
223
181
221
241
202
216
229
170
222
222
184
275
214
161
149
188
195
169
207
256
217
197
247
178
256
255
230
147
250
210
158
253
231
174
185
175
211
204
201
172
133
198
235
206
180
180
256
232
220
187
138
203
247
218
217
170
199
197
167
197
114
178
236
194
186
189
237
123
206
179
205
242
186
172
162
231
212
116
157
228
224
215
244
186
231
249
226
208
148
176
253
219
157
224
209
134
218
232
223
184
183
200
210
191
214
205
158
176
176
210
148
189
182
155
171
207
176
261
210
234
170
234
248
156
245
138
239
223
156
233
174
284
227
195
193
214
124
203
249
116
205
246
174
181
230
186
273
233
248
217
204
221
222
269
211
161
179
218
227
168
231
182
196
193
185
206
181
253
209
199
264
254
252
204
229
241
229
196
231
207
250
217
189
207
195
198
199
258
204
239
204
185
147
207
127
167
170
221
138
188
210
196
233
150
226
135
207
199
229
182
191
176
169
226
259
179
188
233
246
206
186
187
179
221
194
158
259
184
183
233
171
172
218
164
217
185
175
241
241
202
176
187
206
179
209
245
125
130
129
242
200
217
184
186
158
216
177
199
222
256
177
259
191
228
215
153
161
242
184
180
187
246
206
199
168
190
168
253
180
232
243
199
231
196
211
143
174
224
199
175
190
214
241
182
264
179
178
127
223
173
209
219
152
162
186
173
236
180
236
210
139
200
247
158
191
209
172
253
230
196
161
241
131
206
186
241
155
170
198
182
190
117
198
241
215
204
258
255
223
212
220
194
201
216
198
192
199
218
241
160
144
210
241
147
258
207
147
274
242
204
123
247
229
175
219
223
179
227
208
187
242
162
142
222
217
188
207
174
174
210
186
204
186
268
194
175
217
231
199
214
238
171
213
225
209
183
171
201
172
258
216
241
190
224
217
198
178
210
194
209
234
184
195
218
233
211
220
215
232
278
149
165
146
195
220
177
219
202
174
198
191
149
174
294
196
240
209
227
210
137
241
167
141
193
177
194
187
188
204
187
192
174
151
218
184
209
228
192
191
192
134
158
214
226
189
233
250
149
273
185
180
199
176
174
145
237
184
187
176
232
176
227
242
253
248
211
288
182
181
167
194
230
222
209
219
190
190
217
141
227
223
180
232
254
230
196
185
133
143
196
131
200
264
169
206
223
277
222
212
183
182
275
214
176
247
208
203
250
156
178
159
176
200
191
231
232
236
239
177
184
231
146
182
175
235
180
230
179
206
225
186
274
163
247
191
219
223
191
250
164
189
228
219
182
217
202
185
258
225
195
195
173
232
184
233
206
223
168
197
206
196
215
159
188
263
165
178
202
208
186
147
174
216
194
217
97
195
206
184
220
254
274
237
185
156
205
204
276
176
171
250
212
190
217
209
257
187
188
197
219
209
226
147
163
188
167
186
247
282
174
211
192
304
172
187
183
205
209
146
211
175
204
176
219
228
161
246
208
206
184
257
226
222
220
205
195
191
232
208
207
179
203
224
203
147
156
233
192
206
119
196
214
174
222
171
190
183
163
245
222
253
154
183
210
215
199
196
167
230
183
216
173
163
243
222
177
199
136
239
200
247
231
241
237
216
208
231
190
213
217
135
187
205
198
144
217
183
196
193
207
215
244
247
257
246
215
182
154
179
131
168
186
164
218
176
239
212
226
226
189
172
180
122
222
180
188
256
190
236
166
179
174
229
153
193
213
197
213
201
192
191
225
238
249
207
203
200
174
188
247
194
242
234
212
183
232
201
235
127
172
216
151
155
138
211
213
238
178
222
209
230
201
184
238
179
225
218
257
234
179
182
227
249
142
239
231
186
176
196
178
144
128
161
243
165
242
249
203
173
221
144
180
232
222
206
161
206
189
234
221
292
179
175
204
148
205
150
259
198
211
234
225
224
193
191
235
248
170
234
189
194
223
178
225
206
152
189
144
224
191
187
176
209
191
238
203
245
191
206
161
243
211
213
231
216
181
200
202
239
189
231
148
236
202
139
138
226
289
179
195
257
210
182
204
154
165
198
191
206
161
204
212
206
186
184
163
202
210
122
180
221
213
153
171
192
205
173
135
149
194
249
257
221
134
177
174
169
213
157
171
237
159
220
158
195
177
180
215
240
210
157
116
169
218
234
199
183
228
227
228
126
275
228
205
234
233
210
193
196
160
246
222
252
175
207
168
189
171
164
201
150
196
204
249
154
232
188
190
152
211
124
211
235
177
143
205
260
189
142
219
213
194
231
193
174
155
183
140
178
194
249
166
174
228
190
176
234
216
148
245
198
146
264
151
243
168
186
203
190
183
173
143
142
183
231
176
167
179
222
232
227
151
209
192
183
163
210
194
187
248
249
240
240
148
214
250
243
186
242
207
233
165
209
178
205
226
189
215
181
216
220
202
227
194
190
147
226
188
143
173
142
194
215
176
246
230
181
178
189
266
179
196
155
155
135
203
242
174
233
140
210
229
248
227
205
216
244
228
212
209
191
217
173
154
207
191
230
133
207
260
223
150
170
178
223
250
238
201
242
243
185
176
180
141
163
172
154
134
228
222
246
179
195
248
181
193
127
232
151
208
213
207
176
198
201
229
174
237
136
230
211
211
175
243
187
262
277
169
161
167
180
187
140
243
194
180
205
199
246
248
180
147
181
145
159
180
226
179
178
200
156
210
171
193
219
183
214
184
204
176
221
242
205
232
198
206
230
137
187
205
165
159
266
183
214
174
228
228
175
145
192
233
239
191
228
226
206
169
183
252
198
203
144
229
195
188
204
214
202
222
224
151
268
119
246
201
164
112
205
234
270
246
209
191
138
211
266
201
201
186
138
194
151
194
184
217
209
196
231
170
151
180
231
220
238
199
234
217
192
220
168
246
242
193
189
201
193
163
212
211
199
239
241
198
191
239
173
160
202
220
193
159
204
257
186
195
188
172
187
184
219
146
190
163
113
186
134
176
220
196
196
176
194
194
240
231
267
190
209
216
204
216
169
121
228
297
176
181
244
218
211
196
147
269
245
192
259
227
269
167
243
222
154
170
166
246
245
195
144
212
198
189
204
193
150
185
133
243
232
235
243
176
197
207
177
205
153
203
225
194
236
128
236
268
188
158
176
239
227
186
236
199
197
181
225
173
171
154
214
167
206
195
139
209
222
198
176
214
197
174
176
164
156
237
171
179
217
231
202
212
226
110
201
152
138
195
122
221
129
235
196
239
242
212
141
160
206
227
170
204
165
182
221
254
178
192
168
244
212
263
206
188
185
216
197
208
180
212
152
183
217
181
212
212
189
187
251
177
216
234
197
155
230
237
198
230
230
154
172
190
183
243
211
227
163
244
150
137
187
274
214
175
155
119
234
158
200
206
227
219
175
196
210
144
137
197
281
170
274
185
161
237
235
185
240
273
192
229
239
195
182
227
276
176
200
193
210
224
176
218
182
201
269
150
194
183
223
187
156
253
329
248
211
215
233
189
163
194
171
250
189
192
193
232
185
118
213
241
218
173
253
196
153
193
236
244
133
160
176
246
265
197
201
256
212
217
188
193
210
181
205
201
177
132
239
177
165
253
218
175
217
156
234
244
151
218
192
260
190
197
220
210
248
167
186
218
216
235
177
214
243
247
247
222
230
161
168
215
280
202
84
230
171
203
164
187
226
187
132
203
214
159
196
219
263
182
208
225
210
201
262
214
216
171
211
161
207
200
231
180
203
198
227
205
238
150
244
208
182
245
211
178
223
153
202
155
196
175
283
205
198
206
205
207
198
184
177
187
223
119
220
135
202
245
215
162
190
181
160
124
275
229
159
255
185
183
212
256
204
170
174
204
235
185
158
242
237
239
215
162
217
255
158
185
227
126
180
127
163
176
217
192
215
219
231
220
179
201
145
217
210
191
248
214
196
182
133
210
178
216
244
218
193
133
162
206
202
166
248
216
172
159
207
214
178
182
203
200
221
162
214
218
218
242
183
235
227
195
166
190
219
201
205
182
176
152
177
180
273
160
200
258
220
200
237
251
203
151
202
251
231
242
207
242
182
240
221
200
188
200
161
168
209
225
216
191
131
216
222
267
239
223
223
189
242
211
210
276
230
207
254
141
228
168
201
222
187
174
168
216
179
181
233
102
143
244
231
211
248
202
213
188
163
138
184
289
201
228
205
225
180
166
163
218
148
273
230
162
147
214
178
245
184
217
227
212
235
182
259
233
184
223
262
113
238
226
206
219
189
179
193
133
154
230
187
184
176
167
183
214
149
180
228
249
220
156
182
227
128
147
200
127
180
206
168
245
227
144
196
135
171
193
193
228
252
186
120
216
268
151
220
189
208
224
277
153
256
248
174
199
232
220
151
151
231
244
237
192
166
196
220
257
226
199
219
205
147
241
185
187
216
182
147
224
220
244
173
233
213
175
193
211
234
220
185
249
203
198
194
256
186
219
212
163
188
170
165
223
235
168
217
144
214
211
239
194
131
207
187
175
231
222
193
213
227
120
174
184
218
198
205
223
203
199
175
243
218
201
223
203
178
156
201
192
195
245
195
235
218
225
158
199
204
220
208
209
259
154
167
181
190
211
186
241
194
233
196
256
194
208
259
231
276
206
202
207
187
120
131
177
125
167
166
185
210
228
199
287
234
203
179
235
206
168
225
184
266
234
196
155
182
210
156
152
188
238
220
197
218
199
230
231
190
199
193
200
193
202
206
227
186
188
173
265
173
196
199
162
186
155
196
239
210
227
208
188
181
121
191
215
233
203
152
284
192
220
202
261
207
122
179
207
160
202
214
133
228
260
134
164
142
142
191
249
251
192
188
175
230
233
192
223
192
173
227
184
207
253
224
251
147
130
168
195
143
185
211
198
167
139
151
161
246
169
169
201
125
243
185
163
201
236
189
167
152
204
205
199
209
248
171
190
157
146
163
185
205
223
235
256
198
173
190
140
170
208
222
221
211
201
229
154
181
199
180
238
213
257
165
238
218
208
184
179
173
204
142
233
161
248
140
189
174
247
163
169
181
212
166
111
219
223
189
234
177
222
186
255
178
192
208
162
203
223
194
243
216
190
193
168
173
268
245
242
152
220
160
220
181
205
164
200
192
199
183
185
237
188
168
229
212
139
190
209
182
191
166
178
195
201
166
233
179
242
228
205
240
172
254
211
250
242
238
126
151
181
202
187
148
193
238
211
138
200
226
202
254
157
224
188
202
161
191
228
197
209
187
202
224
185
184
210
174
250
225
228
168
156
272
168
177
220
199
170
225
222
157
216
158
187
190
207
207
213
188
226
213
225
211
158
207
183
149
236
133
188
202
215
213
168
237
224
173
178
212
195
204
224
206
138
240
158
231
205
190
199
160
247
237
219
267
252
216
232
181
158
183
214
173
246
229
212
257
188
236
204
214
224
254
248
183
203
232
177
202
225
134
206
124
171
162
227
195
225
216
172
192
160
235
184
181
274
229
177
198
181
231
184
167
176
206
223
227
229
154
200
194
230
189
218
193
210
151
181
182
197
191
201
221
182
252
220
248
267
223
206
185
179
235
179
168
209
180
148
183
212
205
224
187
149
170
181
179
201
179
114
243
188
136
200
194
198
177
218
262
184
221
221
246
244
209
129
205
197
234
202
212
191
214
201
153
199
194
250
244
187
248
248
212
196
243
193
154
176
162
202
208
176
153
192
227
190
237
184
191
220
208
180
194
158
177
216
193
215
186
203
170
154
245
204
224
195
269
196
144
145
152
174
202
180
172
171
187
187
247
244
235
174
223
168
207
190
227
197
251
213
199
230
221
214
199
226
197
206
186
147
164
155
163
173
158
196
188
248
181
176
172
215
201
217
201
230
229
197
199
274
167
159
213
134
214
246
228
187
202
230
181
160
271
221
193
212
249
197
206
174
193
214
276
260
203
149
191
171
221
131
194
202
212
215
230
184
193
212
173
141
214
166
237
204
158
187
137
254
177
202
242
183
206
186
147
198
180
176
196
205
182
264
239
210
233
249
151
264
204
236
254
161
161
209
185
186
257
231
179
125
229
118
141
173
150
192
234
176
201
222
237
239
209
239
149
189
154
188
161
222
239
298
221
175
222
157
188
214
205
254
156
221
167
201
227
195
230
225
245
229
221
228
226
252
222
249
137
178
154
186
206
249
276
121
131
234
181
141
278
210
166
166
208
205
226
215
176
211
229
172
240
207
158
156
187
229
180
147
163
223
224
170
177
186
250
183
209
200
164
189
231
191
228
237
273
223
205
159
197
132
206
200
152
237
114
212
247
187
221
235
189
176
193
191
279
197
229
179
157
177
194
247
233
197
184
172
128
108
248
203
187
183
223
169
163
220
248
204
226
216
181
169
206
180
225
255
237
201
171
188
173
234
220
232
133
197
219
235
195
249
224
182
271
206
259
222
183
149
195
252
198
189
229
251
178
216
198
188
197
211
198
262
153
176
220
238
159
245
151
222
225
208
229
224
212
189
174
276
199
166
213
137
167
212
213
186
209
190
189
214
249
186
210
247
198
228
228
149
220
212
154
181
145
248
190
162
206
179
191
184
256
174
206
205
166
218
147
186
218
166
163
245
200
157
155
170
229
189
240
226
190
231
156
185
180
158
196
191
235
298
229
215
219
245
209
178
259
232
197
219
203
182
138
155
216
171
196
182
142
247
137
234
225
237
198
235
105
205
162
147
199
196
190
184
154
242
146
188
195
218
233
173
201
220
177
251
229
227
141
164
197
217
200
205
170
186
173
172
214
189
237
237
198
180
175
246
200
257
152
135
232
196
219
194
164
189
217
256
171
191
182
173
141
237
182
195
176
231
208
198
191
223
242
182
264
198
239
166
221
175
180
212
215
297
216
211
253
173
204
198
214
193
259
221
190
179
195
188
208
217
172
181
210
201
124
235
224
192
190
195
227
226
184
232
189
233
232
252
226
217
175
197
195
177
203
189
197
165
197
217
206
217
219
201
197
184
213
190
201
119
159
191
156
200
174
197
183
195
170
193
206
267
184
230
130
89
164
228
195
172
221
168
245
221
143
220
207
219
178
223
214
163
240
211
145
175
209
185
226
167
251
192
216
180
163
209
237
227
229
140
154
271
229
211
252
159
164
255
206
221
181
136
230
241
248
175
216
203
269
164
182
238
250
236
172
161
233
170
229
187
155
247
168
194
151
223
213
213
168
198
241
241
170
240
208
201
220
172
231
177
186
190
253
256
289
220
216
207
214
138
191
193
174
188
167
246
188
209
178
138
223
195
206
178
199
168
184
216
248
245
270
208
202
243
182
238
194
192
241
164
211
224
253
246
210
221
196
208
175
258
217
147
177
262
273
192
265
189
231
202
170
210
288
218
193
165
191
191
190
202
148
180
197
194
213
241
219
196
244
199
254
188
240
140
219
200
192
221
230
177
248
183
183
152
146
182
238
144
227
135
206
222
191
184
206
177
139
214
199
244
228
294
267
215
187
238
225
184
173
241
222
232
249
200
250
257
186
226
185
156
216
230
205
164
138
221
215
204
243
242
255
173
173
188
196
170
191
221
227
192
195
217
224
196
203
245
213
113
209
197
132
216
218
252
200
209
155
235
179
86
156
211
169
214
242
180
209
179
203
231
218
275
183
256
257
255
157
255
138
184
217
176
195
207
205
215
166
178
173
271
190
185
254
128
255
178
255
179
150
218
201
267
161
182
219
188
210
260
187
207
159
231
193
137
182
194
203
212
214
221
181
215
242
201
226
226
193
257
154
117
255
256
220
162
176
174
205
203
171
183
189
236
184
197
212
221
204
245
228
206
193
193
220
225
165
138
193
246
148
174
186
205
219
151
187
157
203
185
161
178
218
219
169
198
224
194
211
187
161
160
156
216
218
131
191
207
196
135
210
208
153
183
239
206
175
207
255
288
169
252
230
231
202
199
220
151
173
214
206
173
174
161
187
197
176
175
214
225
218
168
266
119
239
224
241
192
236
185
214
178
213
198
209
213
207
172
200
217
226
187
242
226
162
208
230
219
173
247
112
158
201
201
180
203
194
190
180
242
192
172
236
175
224
169
185
150
205
206
225
134
209
206
198
242
165
192
149
250
192
178
209
223
207
168
198
236
170
224
215
228
194
135
222
206
150
231
211
213
177
225
126
224
175
233
156
211
156
175
190
198
246
170
212
257
162
170
183
226
196
244
223
191
184
162
191
218
234
241
207
215
232
215
220
152
236
167
180
186
184
221
187
196
174
170
206
156
212
159
271
252
239
209
176
161
254
167
214
158
252
245
195
194
253
184
248
211
217
191
177
163
146
212
186
258
188
154
118
169
206
211
258
185
235
189
205
159
207
172
175
224
202
99
213
229
210
207
224
241
255
135
228
193
191
163
212
185
156
188
171
164
172
235
221
150
161
137
219
203
165
210
201
240
194
162
203
164
160
168
236
158
243
213
190
219
241
186
157
158
160
189
255
156
167
199
211
185
195
256
146
153
179
200
162
158
199
190
236
178
244
146
209
213
220
241
160
268
240
192
266
208
202
225
222
212
189
242
224
194
197
228
186
174
222
170
270
186
196
214
231
202
187
222
232
193
239
144
188
215
230
223
176
224
167
155
250
129
235
253
200
182
205
178
258
211
164
226
180
239
195
185
191
158
230
231
190
196
217
243
232
202
223
221
174
127
217
201
246
205
175
248
96
137
174
184
138
166
204
222
162
193
223
195
197
234
221
219
213
252
213
154
205
208
214
135
236
218
185
210
221
214
221
198
205
178
195
145
214
192
191
189
193
203
158
212
203
205
140
234
239
195
185
250
244
203
174
128
206
212
127
187
227
197
247
210
196
203
222
228
236
187
206
251
235
217
211
180
170
220
234
174
188
214
174
205
207
240
252
202
252
249
189
198
225
219
222
236
258
209
151
245
181
228
271
145
223
227
213
177
155
221
160
280
265
237
209
193
168
232
196
178
201
265
197
191
184
156
145
134
210
193
179
145
162
180
192
148
263
177
256
204
221
163
157
160
202
152
193
183
117
180
153
147
177
225
191
199
198
205
178
212
248
203
205
211
244
220
224
197
216
201
163
196
180
235
210
159
232
163
255
247
255
234
218
189
229
233
231
148
159
237
213
173
198
104
205
247
211
252
188
183
184
266
158
237
195
189
176
219
197
193
226
243
207
125
178
206
242
183
184
235
274
189
269
258
176
201
200
206
191
227
190
127
204
240
216
255
229
195
219
180
250
189
193
244
139
253
166
230
209
212
272
176
224
229
196
167
190
197
162
197
250
139
176
188
235
178
243
213
177
167
234
162
234
158
246
218
223
213
192
167
207
201
143
101
184
189
224
216
228
218
226
191
207
191
148
226
164
273
229
173
168
241
221
212
225
257
207
183
235
225
210
235
185
201
213
244
221
230
214
245
213
195
170
177
245
155
186
151
144
224
213
210
244
143
241
255
210
168
154
203
209
172
182
128
180
200
205
157
260
209
195
166
161
220
229
210
222
222
175
249
261
173
236
190
162
197
175
207
224
177
193
232
207
267
238
210
250
180
92
229
207
201
135
274
229
245
200
258
221
199
283
186
230
203
223
236
186
197
203
195
218
231
164
226
208
212
212
238
171
270
198
212
263
212
170
196
221
231
143
201
247
196
224
142
234
288
196
208
220
162
197
208
181
166
223
171
224
167
243
246
213
238
119
164
157
192
171
139
260
217
171
235
188
206
219
211
259
224
239
185
217
203
145
136
204
200
185
197
195
197
130
207
257
204
150
186
184
202
229
274
128
213
179
194
171
202
210
212
176
212
169
202
182
189
167
268
202
152
184
230
213
242
228
193
157
174
170
241
185
139
254
161
195
177
183
106
200
190
217
203
268
225
190
181
244
220
219
257
195
163
258
214
130
96
231
237
205
249
184
194
156
245
249
224
237
271
169
244
216
232
184
225
164
176
181
163
203
198
178
172
158
226
262
234
234
197
250
143
228
204
179
230
191
251
259
224
207
212
209
153
189
248
268
262
254
113
150
227
239
178
210
195
221
169
177
172
268
212
199
178
205
151
243
216
238
113
175
186
141
155
237
203
204
171
228
129
202
213
224
218
188
146
228
217
187
241
166
201
272
211
176
173
181
282
214
220
262
168
220
134
168
187
136
242
236
163
214
213
207
261
187
205
245
211
212
238
184
171
226
149
210
239
253
225
214
218
237
264
203
205
217
193
192
185
231
200
211
174
206
109
166
239
206
164
237
192
190
181
187
154
207
175
242
163
230
197
218
225
217
181
144
238
276
152
178
190
237
211
169
192
141
152
262
188
161
222
94
281
238
254
156
159
220
185
267
228
193
214
195
239
226
231
190
229
179
205
222
210
177
196
189
178
180
208
118
146
213
230
216
125
262
241
292
211
209
240
227
204
225
231
174
193
203
233
126
222
205
219
117
112
238
160
184
192
203
214
251
239
188
216
227
201
218
188
156
231
154
168
232
205
210
159
234
182
185
140
208
138
156
224
199
192
146
214
179
190
142
228
240
160
192
157
206
170
187
155
233
199
153
243
242
201
184
122
196
256
185
232
146
202
247
161
186
186
274
232
191
240
199
267
159
181
194
191
202
215
210
135
159
233
102
207
242
177
169
157
179
254
194
272
194
200
175
160
205
203
248
195
230
256
206
248
204
182
152
226
209
223
175
173
165
181
170
180
263
226
280
226
230
227
215
205
200
215
251
209
178
185
183
192
177
229
229
192
202
218
190
244
152
213
192
173
253
216
148
222
171
164
262
249
197
151
202
199
253
189
206
191
131
166
190
213
182
182
178
220
152
147
134
146
190
216
213
193
210
255
172
250
248
253
247
127
260
230
244
238
245
150
174
182
116
189
153
210
210
109
204
229
220
240
215
208
164
193
211
143
220
210
221
137
214
168
169
194
134
193
203
161
218
204
197
191
191
182
204
181
188
111
233
248
223
177
150
206
252
183
258
199
247
180
214
202
183
174
215
243
184
249
238
159
222
208
195
178
154
265
198
172
187
240
155
232
223
177
191
174
194
188
215
198
252
178
236
172
237
276
235
201
195
178
163
194
249
169
190
168
178
203
183
204
173
153
133
159
190
225
223
187
171
152
188
234
227
179
194
173
176
161
166
226
205
208
204
193
247
143
184
228
197
192
166
166
213
225
219
195
179
222
158
184
231
167
226
200
189
150
163
209
206
156
230
222
189
231
223
228
210
150
180
229
247
136
104
292
171
229
169
246
235
230
197
225
144
211
229
145
178
141
230
231
239
166
218
179
136
177
176
171
168
208
206
146
190
277
138
147
242
224
232
199
173
194
221
119
164
233
187
254
110
202
189
152
140
204
186
259
191
233
261
237
219
107
281
231
199
162
255
265
226
237
203
241
258
213
207
202
274
259
210
199
177
202
198
145
226
149
202
131
192
224
204
203
194
187
213
198
199
183
163
187
253
148
188
179
217
242
242
245
141
150
225
190
182
182
164
192
223
173
161
218
212
247
170
220
215
203
264
189
138
154
213
232
230
234
167
129
200
244
183
203
193
284
193
244
195
239
198
136
279
190
185
199
177
186
150
178
207
245
255
195
205
240
172
183
181
225
180
186
185
197
202
186
197
212
161
139
193
171
197
201
222
211
171
156
247
211
166
210
229
235
199
137
233
117
147
250
190
186
146
147
203
176
226
199
250
221
161
214
206
210
164
296
172
117
109
193
226
228
226
181
227
160
158
256
195
222
272
214
204
189
174
155
166
233
233
190
240
199
184
225
190
246
209
209
212
190
150
167
206
170
216
226
184
172
216
188
147
246
221
240
211
220
212
212
162
207
198
130
210
181
261
255
288
236
231
265
188
192
240
208
220
201
187
239
214
137
208
217
181
189
230
166
247
249
171
172
208
231
197
191
249
162
204
213
186
200
251
220
157
216
248
230
204
226
221
182
208
240
228
202
279
224
193
183
211
211
186
207
205
164
179
165
185
134
205
202
224
216
249
162
253
222
230
216
161
228
243
246
141
188
147
203
215
233
194
245
161
254
240
235
238
201
189
190
183
213
193
253
197
178
217
197
232
244
156
140
197
259
198
180
246
229
198
256
198
201
155
221
166
172
238
203
220
133
202
168
201
227
219
142
187
161
223
213
250
217
158
176
246
221
215
117
192
219
217
219
211
240
197
211
179
223
152
188
203
198
130
196
201
264
205
162
267
187
234
206
134
171
238
212
183
194
237
196
172
195
272
213
193
172
261
254
191
236
212
227
176
205
259
152
195
161
229
247
236
163
159
216
215
225
246
156
254
240
234
214
203
148
200
233
185
222
233
216
234
173
198
167
227
207
183
178
183
210
204
175
250
233
229
197
200
183
168
200
233
219
170
296
188
196
226
238
200
195
258
234
202
228
244
251
242
186
229
205
198
207
195
231
177
190
171
220
225
209
160
126
210
173
228
165
129
204
259
217
184
201
125
156
143
217
223
98
245
196
194
159
204
243
227
193
155
208
225
175
167
250
207
131
205
246
156
170
174
181
172
135
206
212
225
213
162
234
119
195
214
199
201
200
194
199
219
174
216
192
231
221
241
250
281
201
270
209
146
180
248
230
201
207
133
234
159
198
223
215
242
218
238
234
173
174
213
222
211
204
234
152
184
235
162
212
192
197
160
169
185
205
180
230
164
165
220
183
189
110
152
246
249
202
200
119
194
192
197
114
195
181
225
199
204
190
195
181
190
240
242
201
154
200
212
201
134
160
176
251
232
242
173
141
199
239
260
100
199
150
182
226
188
225
236
242
214
219
166
219
160
227
189
226
216
202
175
184
228
161
218
223
200
161
216
246
192
234
195
167
170
201
251
209
182
219
169
130
132
251
230
144
219
193
239
227
158
154
227
184
233
228
228
187
274
160
225
178
210
229
191
181
198
264
181
168
155
238
219
194
166
163
227
150
199
212
223
183
248
209
201
215
200
216
210
144
252
227
240
181
216
211
199
152
258
236
151
215
231
145
208
151
192
159
202
214
196
166
199
203
192
170
169
232
184
175
181
149
162
223
156
183
194
178
224
235
153
225
178
190
189
222
250
157
140
145
171
250
147
178
255
224
241
179
238
190
156
193
129
241
211
167
116
262
232
230
201
194
240
142
201
147
206
213
175
180
218
233
209
205
234
221
241
142
203
175
225
197
179
209
211
248
225
221
244
235
214
162
139
223
208
206
202
164
190
211
153
149
192
200
166
180
177
247
203
202
196
157
195
168
192
240
229
207
223
256
211
228
205
186
147
187
170
242
158
276
140
234
222
200
132
215
246
226
189
223
190
207
211
260
266
182
227
204
189
217
274
154
235
173
155
152
191
236
221
197
241
247
199
185
205
182
226
190
201
231
182
183
252
170
165
230
215
164
165
234
175
168
234
197
221
171
227
184
191
178
227
184
184
192
190
245
203
210
177
144
201
201
222
226
190
246
107
203
168
270
179
244
209
260
192
182
176
197
217
129
162
196
217
210
185
188
211
237
203
216
190
212
163
161
256
139
199
182
231
242
239
198
174
222
245
164
186
174
230
191
191
238
131
209
252
208
191
159
233
156
197
160
250
208
214
209
228
167
171
155
189
178
194
218
275
221
164
210
217
177
234
201
239
215
147
147
104
160
187
270
185
191
160
187
201
204
208
177
152
166
214
222
205
166
225
185
180
178
172
137
240
143
241
187
162
198
183
224
260
240
254
258
234
269
206
185
188
197
213
198
182
157
227
220
155
266
171
173
194
248
111
200
225
205
177
221
167
200
206
294
232
159
214
214
203
235
240
175
152
170
175
195
209
214
248
255
268
218
148
212
150
173
197
203
180
299
206
185
253
234
213
194
242
145
215
202
247
198
192
148
212
191
211
195
196
223
134
159
170
189
201
161
139
226
237
177
232
133
239
202
263
201
259
202
201
153
224
232
200
221
228
226
272
141
163
256
131
180
224
157
198
246
227
234
151
182
265
190
167
209
187
180
207
152
200
234
210
205
206
172
238
248
126
199
164
246
233
191
131
214
213
210
205
194
271
241
187
253
203
228
224
179
240
190
192
86
241
185
180
218
145
274
173
196
188
209
197
158
123
167
163
262
249
236
205
201
239
215
175
212
242
193
154
235
198
225
218
246
182
173
167
217
219
173
212
252
243
229
192
179
216
200
158
217
221
235
208
196
199
195
233
199
205
167
192
135
176
179
181
255
140
204
214
265
211
192
212
224
250
175
160
187
200
225
190
242
235
180
179
252
211
227
165
235
208
209
258
189
188
185
216
198
266
189
168
211
237
222
138
224
241
269
175
213
226
219
163
233
164
138
220
220
195
161
225
199
122
177
179
218
179
205
205
158
217
234
190
207
124
177
205
210
179
227
262
170
192
173
236
195
211
252
227
265
226
167
190
170
210
206
156
230
209
187
198
224
195
206
220
178
177
216
246
142
180
183
200
181
180
194
204
190
263
210
241
208
176
159
216
127
165
250
164
280
245
253
204
244
270
199
175
174
225
207
180
207
145
164
149
170
177
202
204
245
175
156
267
161
181
247
256
194
224
209
259
159
280
231
243
169
156
255
238
261
159
260
191
233
258
155
222
208
267
167
197
263
170
154
183
215
225
184
256
196
195
140
187
118
185
223
203
266
154
202
200
237
181
161
293
235
212
200
197
233
203
199
251
139
200
249
231
215
213
221
134
196
220
184
157
172
251
223
228
242
201
185
145
173
216
173
203
142
101
228
167
206
166
233
199
247
264
207
213
174
191
232
241
189
161
161
201
235
188
186
226
187
126
196
201
198
202
281
197
242
200
155
255
184
178
253
157
184
217
172
206
220
254
144
268
228
189
187
224
224
229
207
274
217
187
176
203
207
226
231
162
217
207
200
265
192
213
173
223
191
238
222
228
153
167
226
220
226
238
221
186
254
212
201
225
226
182
222
198
218
215
199
236
186
222
246
191
211
195
247
247
135
217
203
213
163
168
199
219
194
159
238
194
209
247
161
141
160
137
223
208
168
229
174
178
193
165
161
234
286
242
192
239
212
227
191
131
249
214
250
227
204
206
184
210
212
244
255
197
242
165
220
210
180
202
143
253
252
129
188
268
218
149
216
198
230
185
151
240
218
210
199
228
198
185
215
202
164
223
192
182
285
231
172
243
182
190
152
199
199
236
233
184
206
202
169
215
190
238
191
240
196
231
192
157
137
197
172
192
171
211
179
221
206
237
235
260
178
194
170
231
231
184
201
177
193
219
276
200
214
244
215
245
232
216
261
190
101
180
230
185
205
185
189
126
193
140
213
169
183
191
207
207
223
153
178
180
190
154
221
174
255
189
189
176
200
229
171
184
193
160
200
158
261
194
202
244
188
214
208
204
194
258
235
214
230
256
242
196
219
288
151
213
228
207
189
98
216
222
219
206
196
222
198
197
160
190
167
203
200
160
197
234
173
288
221
201
234
164
135
187
236
216
195
213
212
151
115
169
187
177
159
215
222
140
119
160
165
221
189
199
209
197
175
154
219
227
174
194
173
194
226
199
184
199
229
191
173
204
219
177
252
166
207
233
211
214
217
216
149
213
139
244
226
206
186
285
190
189
184
153
200
270
224
201
165
238
192
216
104
231
228
202
139
157
167
208
171
197
223
247
166
147
213
162
194
192
247
181
256
203
213
165
183
236
225
177
163
198
220
202
171
203
166
218
153
192
160
139
208
214
169
201
290
226
202
175
199
212
170
249
193
217
164
160
230
231
224
206
222
209
163
185
221
223
196
162
166
164
208
176
132
191
201
202
179
236
159
234
216
153
271
214
217
235
131
143
216
198
196
229
163
237
210
219
139
159
214
197
245
230
110
245
224
193
248
189
216
250
195
193
222
175
221
244
218
183
179
184
157
171
234
197
226
196
206
123
169
153
181
142
162
137
238
201
152
187
236
152
222
124
156
215
195
203
192
224
183
159
244
160
195
124
235
152
230
268
247
200
131
212
272
212
236
160
163
161
234
137
226
215
186
230
244
188
193
198
164
120
151
221
194
199
211
135
137
209
190
138
232
230
182
182
220
188
171
238
183
213
160
287
242
190
180
201
213
188
184
179
193
187
237
273
206
194
237
245
195
173
267
229
223
197
200
248
186
106
187
196
191
286
238
255
160
210
204
270
202
176
253
175
191
211
196
191
217
178
192
225
173
213
156
159
198
233
148
206
194
175
172
238
181
159
208
223
160
153
198
173
138
217
243
180
231
170
212
233
192
206
192
192
160
215
146
170
181
215
201
145
222
217
230
205
158
204
163
258
222
147
211
239
181
182
201
230
262
201
185
230
252
213
206
210
199
193
188
201
204
201
184
211
229
170
179
212
211
256
156
204
220
193
142
210
137
240
176
167
174
238
237
184
165
218
144
209
148
160
172
185
187
191
213
199
166
260
231
223
153
206
141
237
223
193
196
238
203
121
218
216
148
173
184
175
205
135
238
252
193
204
220
187
203
241
247
172
224
189
144
249
195
228
237
204
155
211
235
207
179
261
232
248
144
177
230
133
220
209
179
182
229
232
171
206
249
201
199
232
223
231
206
138
193
150
180
216
209
191
182
244
166
129
217
210
114
217
202
172
208
222
126
214
197
213
242
179
241
208
185
248
188
157
193
116
184
167
193
181
217
244
210
202
148
127
209
220
171
229
220
164
212
238
187
158
127
231
271
189
137
250
134
203
179
165
176
201
226
237
192
193
206
185
196
208
237
215
204
156
240
200
167
204
201
194
236
193
199
192
220
245
206
126
194
251
213
209
157
151
226
192
252
137
207
192
164
174
195
248
141
190
196
226
184
227
265
226
206
198
154
192
199
197
188
191
208
197
260
169
191
171
258
296
107
176
168
136
190
244
189
202
190
211
227
214
239
175
213
245
221
177
196
170
226
214
140
188
201
242
265
197
195
207
169
215
253
172
200
185
176
230
209
248
187
226
242
203
230
222
235
232
189
168
189
188
210
197
223
186
155
159
155
222
162
189
148
162
244
171
211
159
176
124
193
240
227
171
196
145
218
177
167
189
252
193
280
214
146
265
168
149
185
145
231
165
192
202
196
213
224
214
198
156
221
177
237
200
135
130
201
211
215
125
177
221
194
189
203
211
184
182
214
207
216
208
186
229
192
198
217
193
212
204
223
220
179
197
177
189
201
238
190
174
251
214
189
199
232
244
267
202
173
193
223
215
147
162
263
123
197
261
213
224
183
213
225
232
164
157
215
141
232
214
141
234
200
253
198
160
232
216
196
195
187
234
216
171
210
215
231
224
223
219
131
165
229
211
168
165
215
238
212
221
246
196
226
189
224
211
248
177
288
170
236
215
255
159
186
220
182
185
213
163
201
177
242
249
238
233
229
244
206
127
185
196
228
133
215
211
172
153
202
195
203
199
171
205
231
155
229
164
170
246
214
184
201
199
211
204
191
184
203
174
191
265
235
200
176
293
188
184
199
262
176
189
272
200
145
152
199
255
208
147
143
253
219
217
158
253
268
246
187
216
189
228
185
222
234
193
149
209
247
245
160
278
241
216
171
192
203
218
260
222
193
190
190
266
188
251
226
219
124
168
168
234
190
230
168
216
141
192
241
244
163
186
212
159
203
225
134
253
184
279
203
231
182
180
177
196
232
238
255
162
202
206
110
215
192
152
198
233
224
163
230
271
242
241
197
190
154
240
198
211
209
268
151
136
229
211
205
217
194
116
176
198
249
251
174
256
207
208
141
201
218
183
219
218
175
163
194
236
220
268
184
226
194
139
275
220
225
204
178
228
211
136
232
229
233
232
203
97
195
197
218
240
182
189
177
220
199
233
148
195
171
242
193
222
165
260
197
197
155
185
186
154
204
186
199
228
200
203
190
210
224
219
201
202
179
180
108
154
143
200
164
207
196
195
234
195
145
202
212
222
180
160
229
142
211
223
193
194
198
214
206
132
239
197
134
232
227
239
189
238
245
207
205
242
170
203
246
181
160
149
205
250
203
186
186
184
175
212
191
227
226
161
212
199
126
201
201
142
160
134
216
163
225
188
227
160
163
237
174
160
198
212
216
192
187
119
210
204
183
192
223
206
217
216
239
181
212
235
218
185
202
154
231
228
213
210
187
189
154
232
202
222
191
205
176
206
199
105
199
196
236
205
181
175
169
139
204
156
163
179
151
225
215
242
161
192
129
166
208
183
176
211
209
221
213
176
197
177
195
208
201
142
218
206
186
153
182
186
185
228
215
157
191
175
185
172
228
227
165
248
147
203
237
249
201
179
238
244
174
212
197
239
200
225
183
272
180
189
214
143
128
222
171
211
258
221
196
141
192
194
166
150
219
168
219
211
206
200
263
120
238
245
225
198
133
279
130
192
157
217
206
228
225
151
230
199
275
183
204
212
168
211
199
206
207
189
158
162
251
196
224
229
191
175
163
178
139
234
169
168
233
285
226
229
222
217
181
209
171
180
214
250
254
200
213
191
183
208
216
247
188
178
240
245
244
248
201
162
238
205
225
253
221
203
213
168
220
234
181
173
176
216
228
218
175
258
223
195
266
163
203
222
179
178
223
210
219
219
207
276
150
206
208
171
140
193
190
162
235
187
176
247
187
189
212
180
185
149
149
269
205
242
201
248
215
216
252
234
196
241
261
262
202
221
220
152
221
202
201
239
210
192
155
185
213
151
202
180
132
217
224
97
225
165
184
175
239
176
204
216
206
259
231
210
190
198
173
197
234
231
173
154
208
220
183
198
202
206
233
271
185
215
182
175
206
235
222
238
231
177
126
178
240
249
210
175
155
220
204
204
211
174
222
182
230
215
200
191
201
171
201
247
225
180
226
220
159
177
139
262
217
229
238
210
233
157
168
191
197
219
171
190
212
241
153
152
179
215
205
200
197
207
141
149
211
244
201
221
174
201
185
241
203
222
203
217
214
255
197
172
240
224
241
204
226
176
167
185
176
221
232
185
187
152
168
131
222
210
144
152
192
234
195
205
217
187
206
215
220
143
213
172
212
188
204
169
199
200
190
232
226
211
155
210
203
191
198
180
189
208
245
217
196
166
154
212
210
155
233
188
271
204
243
243
200
184
237
127
130
231
241
180
206
207
185
166
172
220
203
197
207
211
185
172
171
212
151
226
209
196
195
240
192
146
198
180
255
186
215
208
198
208
167
216
149
158
210
178
170
186
188
160
226
181
215
140
148
177
242
178
241
209
228
235
183
236
157
184
252
179
219
176
209
195
226
182
175
179
251
167
226
197
168
321
220
258
216
250
201
215
172
172
205
198
176
198
218
191
200
194
198
230
215
213
257
206
220
228
222
228
188
176
172
176
180
175
176
227
213
177
259
229
204
199
212
187
267
186
173
245
196
87
212
231
154
229
182
209
209
202
180
192
255
259
267
224
178
182
244
208
239
231
207
259
186
187
212
216
155
158
231
183
205
218
260
202
224
180
135
211
215
157
249
192
169
199
187
215
190
188
189
270
200
201
184
230
144
164
208
227
187
204
183
269
196
231
228
231
184
206
184
184
185
199
189
221
214
219
192
217
202
231
242
203
223
228
194
194
189
169
145
223
267
197
206
225
182
207
137
225
227
237
198
239
203
159
181
213
148
161
238
169
209
219
205
179
171
170
242
234
233
187
269
251
163
186
172
207
224
140
180
225
88
122
147
221
238
179
216
213
192
196
178
265
214
207
181
176
175
185
199
184
112
217
218
245
209
160
264
235
166
226
250
199
181
168
210
167
267
207
246
182
237
171
156
237
177
186
167
225
142
218
234
152
183
192
214
213
224
184
222
162
232
220
216
187
230
231
225
150
218
208
153
154
190
175
143
215
158
174
234
185
175
200
183
255
223
169
159
213
214
254
230
213
211
194
184
188
161
217
261
226
198
244
189
195
187
174
255
186
166
171
216
187
163
192
206
169
210
243
172
176
201
248
132
211
173
183
156
291
178
231
214
194
185
189
229
187
142
198
123
239
217
223
195
204
199
190
247
191
163
203
209
202
134
161
224
271
222
181
225
202
231
188
156
199
220
185
199
159
146
209
260
209
125
234
92
179
207
235
211
163
231
228
156
191
198
219
205
229
221
161
150
78
210
242
132
225
186
172
220
155
191
218
179
153
213
155
223
193
236
155
193
155
139
185
222
252
222
184
203
196
256
208
220
204
225
186
211
161
250
212
210
201
118
216
226
209
175
199
231
196
224
216
213
234
216
251
206
214
176
157
187
240
226
140
250
199
183
198
193
206
187
237
190
259
217
215
180
219
195
218
223
214
211
253
216
193
259
165
210
186
136
205
173
168
191
172
152
125
199
198
221
171
205
230
188
183
232
115
125
212
144
203
240
121
172
178
192
277
165
196
175
222
192
267
256
225
204
213
208
246
195
208
173
249
178
256
191
201
190
183
198
177
247
230
232
233
210
209
196
178
224
216
211
207
208
178
208
196
164
246
221
243
212
226
181
242
185
177
112
144
175
163
157
218
198
168
193
252
209
236
125
204
172
162
198
193
156
240
172
200
159
202
212
170
211
188
173
208
211
226
208
251
222
234
218
174
185
206
145
221
119
177
209
229
203
246
211
254
212
219
215
199
184
167
195
267
230
239
162
214
192
213
234
152
206
174
153
216
184
246
173
255
171
217
123
136
165
259
139
193
223
249
244
195
252
212
218
189
194
234
144
260
182
160
141
123
164
279
211
208
241
200
219
206
183
189
211
215
214
186
236
233
194
199
171
166
197
237
275
251
258
225
211
207
189
180
243
201
195
200
209
199
173
185
180
185
194
217
204
169
213
204
229
235
217
245
179
244
251
150
198
181
264
256
137
129
233
157
95
227
190
291
224
194
181
165
183
237
200
171
211
155
201
100
145
196
203
188
200
264
194
195
211
258
152
254
204
211
270
224
169
164
216
172
163
230
197
188
192
199
210
203
242
138
239
276
216
171
166
170
245
243
223
211
262
196
170
193
131
232
173
156
238
201
233
202
166
212
220
187
266
211
230
199
187
252
193
223
196
177
165
200
219
271
246
248
212
253
211
212
218
136
191
208
233
231
173
211
230
276
218
144
215
226
239
182
163
244
176
232
124
229
217
228
158
185
213
174
214
192
115
201
216
225
262
202
240
143
211
165
153
269
175
178
157
209
177
205
204
169
141
215
224
226
256
146
245
179
247
173
147
204
214
127
238
235
154
219
224
153
130
213
168
179
237
228
199
180
258
200
196
115
209
149
184
258
270
184
196
162
241
146
219
160
230
107
228
209
204
216
193
191
213
209
240
203
211
172
125
213
228
261
224
243
149
220
189
152
137
220
187
215
214
165
198
169
207
187
192
206
206
134
232
217
238
221
254
216
191
181
148
174
205
181
242
219
150
228
199
180
163
235
222
152
189
224
168
170
168
230
199
186
180
210
200
246
235
150
152
245
213
210
277
190
137
197
238
129
171
228
184
222
219
152
169
224
181
188
146
253
194
171
206
225
189
172
209
226
182
199
139
245
151
213
223
158
256
196
166
237
203
120
212
172
177
221
188
179
175
187
206
172
258
198
203
161
201
231
238
162
235
195
129
212
163
210
190
202
193
157
220
147
260
174
224
221
206
178
153
178
250
179
225
207
189
248
141
196
207
186
204
236
235
178
144
210
190
220
186
226
214
199
238
169
149
147
260
219
197
253
223
218
151
189
216
222
265
173
155
195
239
173
172
206
229
214
218
207
219
183
171
181
199
257
208
184
250
186
207
220
238
180
125
218
208
221
185
144
157
231
248
196
198
195
254
256
219
151
150
219
173
184
183
136
156
214
223
159
225
189
215
175
181
183
159
202
179
181
184
186
228
193
267
281
279
178
191
197
236
237
260
159
176
214
195
258
249
177
179
155
197
168
204
170
184
220
272
233
228
199
199
160
188
185
207
134
234
170
144
137
195
187
218
205
179
204
285
193
174
172
165
215
203
201
217
185
203
226
170
230
238
227
186
247
199
230
216
156
172
199
188
212
192
167
242
140
242
231
216
165
175
164
231
199
246
180
140
182
200
173
190
201
179
242
179
164
222
139
280
238
211
155
249
212
168
218
159
176
207
170
167
165
207
189
176
149
152
238
266
228
163
187
142
230
195
182
222
159
185
197
196
177
187
223
138
203
186
202
248
197
165
187
159
217
204
213
184
181
172
238
146
220
177
180
198
168
146
186
170
181
233
194
199
171
146
182
256
150
206
145
210
172
225
195
191
210
191
199
231
250
157
177
188
212
182
188
238
217
225
231
202
213
264
220
224
180
196
182
183
158
194
196
219
175
200
141
170
249
173
206
150
199
182
223
231
210
231
246
178
248
197
149
235
201
227
148
191
191
195
275
162
237
235
232
236
216
214
167
163
258
173
171
209
170
230
181
151
224
206
207
150
140
229
212
139
214
142
220
174
193
152
284
186
193
173
212
198
240
118
174
212
198
162
153
212
274
238
167
166
208
222
127
198
193
134
208
169
222
146
227
192
206
199
215
226
176
214
231
211
239
220
235
161
174
219
180
228
212
176
179
223
198
214
206
182
187
196
219
237
218
231
198
174
206
195
224
208
252
190
167
130
154
235
168
157
248
207
240
190
191
170
196
169
156
154
194
233
181
178
218
214
160
188
208
165
218
220
163
216
199
143
187
241
214
188
177
146
153
172
182
180
212
152
196
224
132
177
153
204
187
216
244
249
183
198
185
230
201
248
217
239
167
191
191
203
195
216
177
235
167
171
210
192
178
255
229
233
241
228
236
149
153
260
209
188
207
177
171
241
201
193
231
225
163
177
255
220
194
237
225
189
124
145
207
241
196
201
204
249
191
260
124
195
222
174
257
204
215
181
179
217
182
274
191
206
156
176
145
186
220
201
235
232
210
259
182
185
216
223
210
199
181
223
220
175
210
226
206
196
230
145
212
135
202
256
200
148
183
204
172
245
112
178
238
253
243
195
220
202
186
206
218
189
237
229
208
177
167
190
231
179
150
202
208
182
188
190
207
167
182
226
247
252
192
189
174
204
210
178
170
222
173
185
158
199
262
208
175
186
213
170
172
115
155
174
224
218
254
173
173
209
165
252
183
199
171
274
156
172
219
241
245
244
167
250
177
240
140
236
172
211
228
215
216
208
224
177
205
163
166
192
209
240
192
265
197
214
212
218
189
200
231
185
158
200
190
240
181
204
231
141
214
206
171
171
140
209
250
167
274
161
199
162
230
206
178
221
209
217
199
231
248
289
166
203
234
249
170
207
205
219
260
199
235
212
243
217
205
203
163
251
180
238
208
175
216
246
249
240
252
143
225
211
197
179
203
186
219
205
184
200
175
180
215
224
172
241
196
205
150
170
192
155
209
189
189
237
225
213
197
154
181
228
218
206
220
203
150
160
222
157
215
210
305
202
224
169
168
283
172
210
207
166
185
195
199
207
210
247
217
165
181
264
207
208
172
255
207
262
203
243
134
207
155
241
205
179
163
202
182
205
241
195
168
239
238
183
197
240
175
179
211
217
169
165
207
193
148
226
230
215
226
193
236
207
224
246
168
213
205
176
225
211
208
206
215
223
224
189
169
191
222
195
278
189
198
110
168
197
199
165
195
266
215
183
210
204
164
230
223
229
208
202
171
232
188
206
213
191
189
195
180
242
213
189
249
247
198
242
168
276
216
225
238
194
252
209
234
229
185
213
165
232
244
181
248
213
217
151
233
198
208
244
198
185
167
165
242
202
182
225
231
221
205
226
157
153
212
199
158
203
111
177
152
191
175
195
214
231
208
205
209
152
209
174
195
124
206
186
216
170
214
190
224
213
171
148
240
198
232
167
201
157
274
203
194
171
166
191
188
232
191
158
213
204
149
182
268
217
185
213
202
189
171
270
199
180
221
210
231
193
197
243
205
157
262
192
189
228
240
184
252
168
219
197
200
201
228
248
173
230
235
217
224
161
168
260
201
208
98
206
230
112
216
218
222
213
91
248
194
240
194
181
206
193
155
196
193
164
243
130
174
182
193
170
233
181
169
196
225
189
236
219
228
203
174
227
185
217
208
224
212
171
195
284
186
186
213
205
194
134
143
137
160
133
135
117
226
201
255
237
204
151
255
216
174
166
220
224
144
152
249
165
165
240
165
196
172
207
191
226
123
238
273
174
213
200
214
212
169
199
214
197
182
226
214
189
211
257
170
179
230
225
184
153
178
218
174
207
264
220
189
188
222
246
245
113
166
289
229
191
176
247
213
191
162
230
284
238
223
221
223
223
211
159
206
179
141
236
254
174
177
246
212
164
192
151
188
193
214
158
253
193
221
208
169
181
196
247
195
188
230
244
225
222
233
191
193
185
182
171
179
226
204
195
182
188
249
229
195
185
172
200
194
269
207
257
197
188
141
171
264
205
232
196
136
106
267
192
167
257
232
250
172
250
192
160
192
156
216
187
191
167
210
228
156
191
207
170
220
185
164
239
238
203
207
212
218
270
128
210
192
188
199
213
203
160
215
239
217
107
173
228
158
195
197
186
141
202
221
187
210
196
208
233
138
229
247
236
249
197
175
141
149
220
177
210
199
163
129
209
178
172
203
209
156
184
224
231
162
212
240
209
170
201
206
259
217
192
209
241
158
187
207
186
243
208
127
237
214
187
198
215
223
213
183
197
216
183
182
220
198
246
209
185
188
230
173
192
144
222
198
163
191
237
167
220
212
228
181
190
93
186
224
166
205
203
260
238
162
207
227
210
173
209
233
199
238
175
277
233
188
201
215
134
187
187
120
195
206
223
262
214
215
234
237
222
147
231
219
239
218
230
238
146
99
231
150
188
216
232
223
199
139
167
134
215
269
152
177
207
201
244
196
218
198
137
249
200
240
171
190
254
226
157
216
199
177
197
180
240
221
185
237
210
209
196
240
194
153
186
219
260
185
258
252
194
213
215
203
261
250
145
223
185
154
190
215
175
197
221
209
164
174
249
183
187
207
194
111
236
249
221
222
221
136
190
203
182
129
208
210
200
234
198
208
212
293
222
208
220
141
232
250
189
201
256
178
227
231
179
218
189
253
204
220
200
192
161
211
155
189
212
194
193
162
218
202
256
216
229
214
227
244
232
162
164
205
165
213
241
190
186
245
237
262
211
149
198
226
184
193
224
180
183
233
215
139
268
199
227
241
210
187
247
210
186
173
182
226
154
158
154
215
178
259
219
244
170
193
215
169
210
207
176
199
230
139
208
219
196
209
200
175
210
235
183
165
266
227
248
191
172
196
249
196
165
189
155
167
187
169
242
203
214
185
189
163
182
155
182
232
214
168
144
249
244
234
276
227
174
214
214
169
199
218
171
175
217
284
173
203
200
138
197
181
211
200
149
228
250
146
211
173
184
224
197
245
235
203
195
187
207
175
230
219
150
189
227
254
140
196
151
169
225
217
255
182
192
175
170
125
224
233
168
175
187
233
152
194
192
236
224
235
182
212
217
196
190
187
193
213
185
258
193
235
212
173
179
134
271
216
200
183
197
234
170
149
233
157
209
250
219
167
206
195
190
186
180
232
269
226
197
224
156
158
176
214
241
171
107
271
235
136
180
253
219
175
219
174
251
235
210
213
190
196
242
239
210
222
238
177
168
219
191
170
165
194
231
164
194
183
183
172
242
236
152
169
189
151
229
203
236
187
173
206
163
215
245
246
248
185
217
148
187
209
188
212
237
137
255
196
199
204
175
247
191
192
190
222
252
184
275
185
184
170
247
176
217
250
227
212
178
139
180
187
216
155
140
135
161
229
151
138
210
280
256
272
253
185
164
185
213
185
274
162
170
255
186
198
183
202
200
191
178
239
204
169
236
188
258
236
228
174
194
195
266
205
222
201
210
174
249
248
212
180
185
198
193
246
142
224
195
243
234
237
158
148
229
210
211
170
215
185
219
231
172
161
159
209
162
246
217
143
217
262
207
198
179
156
135
188
220
189
211
186
231
218
137
251
187
155
213
212
219
174
248
226
196
238
212
153
203
187
218
238
219
234
210
181
199
190
160
186
250
218
242
210
218
173
215
183
190
192
195
195
217
214
242
215
204
195
228
218
196
244
225
169
192
195
161
256
237
161
222
129
224
222
131
232
171
153
171
221
248
216
219
228
169
201
189
191
173
193
226
163
196
164
154
222
151
228
198
213
314
196
203
207
183
179
177
205
244
193
219
196
183
207
207
118
230
245
212
168
207
181
156
252
193
154
190
277
195
227
167
235
218
186
226
163
210
187
161
157
209
177
149
253
164
189
238
141
184
198
232
174
188
102
190
222
215
148
164
193
237
209
182
292
162
220
176
222
178
230
191
222
187
224
131
196
217
258
211
190
169
199
223
198
204
226
195
150
255
150
238
229
202
173
194
149
218
196
186
202
195
241
141
227
224
246
171
269
210
245
227
156
239
187
226
224
285
249
226
136
171
167
215
204
192
225
231
226
170
228
217
195
212
231
198
142
223
186
171
196
216
156
210
205
170
214
148
175
230
223
242
177
197
205
186
186
182
216
242
182
226
166
236
155
177
185
199
177
179
173
161
180
199
209
231
166
242
187
192
232
189
237
185
190
145
194
247
212
204
249
104
200
180
190
252
234
174
224
177
122
173
157
168
187
213
250
185
218
154
188
198
97
241
166
197
175
216
169
182
179
186
196
151
223
204
202
186
218
214
229
210
235
195
236
224
132
207
230
200
209
136
197
177
166
246
200
179
286
215
145
168
254
230
206
186
244
202
189
139
136
193
191
237
231
242
232
168
185
245
198
216
192
186
181
176
201
246
241
257
207
198
141
214
138
168
274
148
235
164
223
169
177
221
200
185
181
180
147
202
209
181
252
217
200
167
138
174
198
168
155
202
167
258
241
214
198
179
149
246
161
193
222
190
198
231
153
241
141
222
229
235
196
221
166
144
226
174
163
232
188
226
152
214
154
254
258
195
192
221
201
203
180
157
243
184
250
211
215
195
262
192
173
237
203
184
151
264
195
159
223
237
226
173
171
216
200
152
162
208
174
223
203
232
150
220
214
240
170
176
215
190
189
223
230
191
185
203
135
227
213
233
162
184
218
238
211
171
150
197
194
164
156
227
166
273
227
195
185
199
208
178
172
203
173
158
196
234
220
161
240
163
230
261
165
148
197
214
218
222
184
166
203
220
216
249
224
180
220
178
149
186
174
184
201
190
205
218
261
231
213
205
155
177
207
218
164
179
200
179
135
203
267
212
201
184
150
212
216
242
175
228
231
171
160
178
207
144
191
262
186
210
167
228
217
179
239
178
237
223
186
133
186
154
151
209
232
163
170
179
250
197
192
139
266
176
180
194
211
172
274
238
234
165
246
199
204
195
177
186
209
189
211
235
239
182
207
181
142
221
212
160
223
228
245
236
166
118
227
175
162
244
218
237
197
191
196
221
181
239
231
229
247
194
190
174
226
199
175
150
172
215
177
187
256
211
209
149
195
242
217
173
96
200
198
183
187
230
228
241
158
250
199
201
182
166
116
250
180
152
245
205
207
250
249
196
175
219
216
216
233
190
149
167
199
240
219
259
187
255
245
247
227
261
196
153
205
199
241
227
211
179
264
217
234
206
271
185
203
158
231
149
200
267
169
206
256
192
209
216
202
167
201
222
320
157
266
136
205
203
160
288
257
165
248
232
209
249
199
203
169
222
193
219
169
214
137
212
259
212
308
231
202
266
215
242
217
236
243
226
263
169
164
171
203
211
185
200
227
142
164
238
165
145
163
222
198
271
225
207
197
244
264
196
224
224
155
217
211
193
231
235
94
170
204
248
180
171
180
122
172
134
205
222
207
208
173
237
219
199
200
200
221
132
182
199
192
243
197
203
148
215
248
193
201
179
201
242
193
230
184
217
205
196
200
240
225
225
151
189
186
178
193
180
196
202
199
212
205
208
240
245
135
253
188
196
214
164
198
227
224
173
213
228
181
178
272
160
145
217
238
202
173
182
222
178
241
143
202
175
201
230
168
125
170
219
148
212
215
243
158
184
149
156
182
164
190
210
204
204
211
222
145
201
176
242
180
254
188
188
185
233
171
212
228
252
229
133
126
172
176
112
189
243
189
190
231
194
190
184
119
224
177
265
191
176
221
193
166
174
186
202
186
187
190
231
209
225
196
170
276
235
216
184
135
195
275
207
231
184
269
243
189
147
175
222
169
104
177
252
248
153
173
189
169
229
218
203
180
281
215
148
148
163
274
247
177
179
154
238
172
171
223
177
213
227
213
265
217
219
171
256
241
251
238
212
206
186
227
192
172
228
215
184
212
189
198
204
222
192
163
229
159
247
281
158
145
223
209
172
177
238
226
240
225
193
251
180
167
211
182
220
238
232
186
239
236
207
232
166
208
174
162
264
219
183
215
197
233
220
213
174
227
250
184
235
225
242
231
231
221
201
233
193
151
149
266
264
140
210
154
194
247
153
107
172
243
182
230
217
189
202
143
181
218
155
188
202
234
212
208
220
146
164
185
198
178
139
202
176
188
231
251
236
206
231
183
223
211
142
194
205
145
232
165
212
180
111
237
168
162
206
181
207
176
128
195
219
180
186
210
209
164
184
192
195
187
170
159
184
173
190
193
212
203
178
231
224
191
182
215
243
208
203
264
265
232
204
195
193
229
156
213
212
194
241
145
182
172
173
161
175
195
223
195
181
125
258
201
168
218
222
184
173
189
242
215
165
143
168
177
184
238
162
197
151
230
254
223
166
151
258
174
215
169
261
163
266
204
193
207
233
230
192
210
174
241
215
186
183
217
173
227
176
192
167
252
193
225
228
196
164
210
235
191
189
208
159
209
241
150
250
202
190
189
208
217
279
192
214
209
207
171
198
256
189
191
201
176
217
251
172
191
143
158
157
236
156
126
211
189
160
182
225
196
227
190
271
188
232
207
144
208
194
175
185
225
161
223
205
214
221
203
206
211
209
199
191
243
231
209
208
211
219
221
199
241
224
194
247
196
173
171
204
180
228
177
148
156
154
208
178
233
145
158
204
128
194
139
163
190
216
193
187
218
214
204
159
195
178
133
204
208
202
214
204
175
239
179
197
216
153
185
202
168
194
264
212
232
224
250
206
213
195
248
208
186
189
190
198
246
197
208
193
195
207
185
174
181
225
190
218
184
248
208
254
223
202
126
227
229
206
169
186
235
167
260
218
233
194
210
293
177
202
180
220
195
183
210
240
218
154
168
168
233
220
206
177
169
212
256
179
157
193
212
195
152
201
183
172
191
226
181
180
219
164
186
268
246
188
214
208
208
202
174
225
279
226
199
207
152
211
190
263
179
207
204
207
195
190
193
232
213
190
212
192
122
214
223
229
179
194
194
172
158
166
149
204
116
194
237
171
220
198
225
184
241
250
223
212
190
275
157
229
173
227
160
236
191
227
223
165
196
197
179
249
209
204
188
175
211
208
242
174
159
233
185
165
196
202
184
194
182
120
281
213
208
240
175
183
196
236
193
151
243
254
189
265
176
195
220
223
209
188
200
185
228
198
220
167
240
206
137
245
191
194
252
219
209
243
230
235
240
145
229
178
173
205
208
199
161
205
224
200
254
185
231
199
168
259
143
250
192
180
232
188
183
187
177
181
184
188
231
251
198
204
202
171
207
218
194
169
185
266
193
184
234
160
232
186
181
159
191
237
176
196
190
163
188
183
219
280
242
178
234
213
146
178
175
133
252
203
216
207
174
182
168
165
180
204
204
168
211
224
194
155
161
223
133
205
238
248
140
212
202
261
199
164
191
188
240
229
257
195
195
151
209
186
209
229
172
199
180
238
218
189
166
181
234
166
197
216
247
223
165
204
182
179
205
126
197
184
208
183
212
200
217
165
194
186
153
198
153
186
137
206
187
139
262
236
197
157
215
215
171
245
153
166
248
187
201
166
207
171
200
232
193
254
232
241
130
209
265
258
195
152
223
234
225
154
184
200
229
189
246
221
239
205
144
238
210
168
215
209
182
249
160
230
234
223
229
142
225
176
219
216
222
138
130
134
205
245
216
119
178
224
204
256
196
197
173
221
190
196
210
184
189
190
241
191
203
227
264
221
157
176
216
188
200
275
222
215
170
188
186
221
246
222
202
239
249
234
262
188
228
175
205
173
172
228
216
235
197
202
246
192
235
228
242
217
227
131
201
248
199
161
185
150
185
223
184
198
180
201
202
164
207
144
178
186
223
249
210
208
166
199
154
218
215
190
186
170
238
278
230
231
198
173
155
215
208
221
227
141
206
204
204
187
214
196
274
206
182
173
130
249
162
269
185
221
184
224
237
214
116
240
265
202
213
195
194
218
203
240
180
151
212
208
202
216
256
133
204
172
224
238
205
200
213
206
146
202
210
198
232
225
185
217
259
186
219
182
226
209
217
162
174
248
209
236
283
205
201
240
249
224
203
130
149
118
205
203
218
247
185
102
194
167
217
182
265
140
214
178
177
162
209
216
188
155
153
233
210
166
227
175
137
172
211
200
210
181
161
230
214
222
170
149
231
195
195
260
180
180
132
215
220
137
243
171
134
169
216
231
115
220
203
177
198
228
210
251
161
248
240
264
175
164
209
115
199
81
163
199
224
208
163
221
157
221
189
238
169
175
226
271
217
221
184
158
203
200
209
256
214
273
221
189
196
224
176
214
209
193
194
215
218
163
167
196
213
195
201
128
240
233
226
168
182
197
207
193
246
190
207
245
199
215
216
172
214
218
204
224
230
212
163
226
220
156
180
159
217
122
242
237
233
228
175
234
145
176
200
222
228
166
215
188
211
198
233
159
235
230
235
199
190
171
200
264
153
184
202
208
217
253
225
240
203
247
254
168
224
257
190
193
253
195
190
153
224
112
199
200
157
237
171
204
228
216
156
227
231
236
245
161
194
173
153
187
230
224
164
212
148
229
176
161
212
227
220
199
224
221
191
210
216
201
195
235
227
267
198
188
186
178
210
197
195
276
208
239
206
162
145
206
152
258
208
205
262
188
233
255
197
122
212
211
215
197
216
210
223
229
191
236
193
227
182
194
213
163
192
204
230
174
143
257
209
142
245
231
212
246
255
208
165
190
191
157
188
166
257
195
204
260
208
173
225
224
181
178
107
169
187
224
191
132
158
208
196
193
242
145
208
226
172
193
190
132
228
181
174
156
207
221
217
187
191
226
182
183
227
219
210
155
217
150
146
249
206
170
186
176
199
201
215
201
180
293
188
200
157
212
241
252
184
204
192
228
257
178
176
165
235
151
237
212
224
203
237
274
147
195
200
184
211
191
142
136
190
226
165
230
221
222
165
169
240
146
194
178
236
173
267
188
215
206
206
200
216
223
159
205
167
149
218
197
192
149
187
224
242
200
247
193
190
207
189
172
248
183
147
208
200
218
226
233
186
193
192
155
253
122
209
244
223
203
182
153
199
177
210
215
191
221
200
209
174
177
184
216
247
173
221
184
110
154
195
197
232
160
218
201
207
205
145
217
189
179
216
138
122
235
228
192
162
177
218
164
200
224
236
140
232
149
191
264
293
175
140
189
212
196
156
170
215
174
233
161
215
198
202
210
229
209
165
225
147
245
188
193
225
159
195
232
223
231
172
194
194
179
197
202
217
235
162
172
269
207
196
204
186
113
178
190
164
190
253
173
187
216
222
195
220
165
181
182
233
234
177
257
193
160
227
203
273
232
229
192
203
229
278
175
206
235
218
173
194
211
245
168
246
213
181
170
226
221
247
196
190
161
222
219
188
196
187
214
247
207
197
211
191
210
231
157
183
268
172
195
177
210
246
161
187
192
198
212
195
204
184
175
252
196
154
201
183
219
198
197
159
189
169
111
137
163
179
218
224
156
155
180
225
162
231
154
193
225
219
165
139
165
225
203
149
210
190
189
211
180
232
257
188
214
244
275
267
241
272
231
211
169
279
171
179
211
255
189
184
245
163
205
137
234
191
170
228
225
275
208
148
281
173
197
230
221
178
242
230
160
185
183
205
191
170
198
197
166
196
196
204
262
157
183
252
220
173
105
239
225
167
148
239
193
183
179
241
191
180
244
221
229
152
196
149
270
228
188
252
223
187
170
155
296
111
133
188
227
147
236
192
234
243
188
197
223
190
139
189
165
245
192
151
209
265
184
160
176
199
205
198
224
173
177
192
217
200
144
188
248
176
268
174
198
201
249
186
182
210
172
172
210
231
182
231
231
233
201
188
242
171
210
200
233
161
185
210
249
206
195
212
211
218
251
209
250
240
162
203
199
174
188
249
193
169
145
155
230
216
219
118
269
144
225
171
193
245
143
194
219
245
179
223
225
193
203
237
162
220
200
195
246
188
219
274
210
247
188
169
202
242
195
205
187
120
203
195
242
242
201
147
185
250
167
213
255
206
165
131
220
163
142
214
225
194
180
252
199
210
161
219
222
225
229
90
223
236
180
200
216
91
213
249
218
205
244
213
171
225
208
150
188
208
217
274
171
200
222
172
233
203
211
205
126
231
176
215
219
244
230
210
146
156
149
198
251
245
229
165
153
179
192
182
184
249
232
230
169
224
267
167
186
179
228
163
201
189
243
242
237
209
196
182
144
169
232
202
219
161
140
179
213
204
199
157
214
223
169
146
221
169
161
218
248
158
187
193
216
157
213
185
136
199
168
130
148
169
159
248
178
139
188
186
127
228
214
229
218
142
241
148
206
209
197
184
188
229
169
191
220
199
245
210
164
211
221
183
217
227
204
199
188
264
208
199
270
171
224
184
131
136
132
98
180
145
206
228
258
226
171
142
194
192
190
159
136
224
158
161
164
208
158
195
205
191
182
199
160
211
226
160
214
198
174
216
181
173
217
135
248
209
236
240
161
190
204
175
128
217
221
204
182
140
217
214
265
223
175
189
209
216
170
213
165
160
224
235
241
159
179
217
194
110
136
249
227
209
185
223
244
149
270
135
251
230
209
203
141
195
226
194
243
216
194
266
166
206
258
226
220
229
190
208
175
188
161
248
212
208
205
172
252
233
182
213
170
225
207
118
223
163
209
219
213
179
191
222
222
232
230
255
141
166
173
202
227
227
142
256
198
183
208
165
160
179
168
172
226
205
206
139
195
193
236
204
211
240
198
250
149
212
237
207
166
126
199
227
126
222
232
214
195
208
261
202
163
167
168
243
120
184
196
220
196
217
230
258
176
250
132
220
192
233
246
183
236
226
179
208
209
185
230
186
216
236
208
209
189
199
180
224
202
262
229
250
228
139
144
124
185
245
261
188
225
183
198
253
191
209
207
194
212
227
231
155
136
197
188
189
184
205
200
254
236
232
251
219
213
187
193
214
162
153
233
137
227
196
205
212
210
209
243
219
195
168
146
192
179
201
151
218
146
193
231
200
163
151
129
207
160
175
163
162
143
263
200
251
190
201
267
241
165
146
261
247
231
192
165
218
227
153
174
217
248
158
181
181
205
217
200
214
207
98
211
194
178
118
221
168
150
178
213
190
217
234
186
188
190
228
170
165
179
223
206
165
182
265
226
189
228
230
202
212
199
199
192
198
168
224
199
151
227
184
215
230
139
219
218
157
218
229
218
178
164
222
237
174
157
215
252
233
246
193
215
172
235
190
185
246
208
139
142
189
244
183
196
193
205
180
197
219
231
221
223
237
220
244
163
216
215
163
169
143
210
245
172
229
237
218
174
211
182
203
212
192
165
187
244
202
145
199
198
217
208
196
197
179
199
186
180
223
254
201
229
232
176
223
179
203
232
161
178
188
222
226
170
203
161
177
231
232
150
133
190
230
238
130
231
275
226
216
203
189
207
165
169
228
154
151
188
117
257
156
160
153
209
192
186
167
205
205
183
157
182
153
217
253
190
221
199
194
205
165
195
243
248
189
188
247
203
228
231
217
226
194
205
202
229
205
191
156
205
208
189
225
159
186
168
216
165
187
174
213
205
171
207
202
177
219
240
171
189
215
196
207
200
234
170
207
241
185
211
203
194
210
199
151
154
139
214
159
205
169
200
206
141
209
178
236
233
182
155
239
167
202
176
271
207
154
201
240
193
248
224
178
127
200
204
233
146
211
220
196
195
187
132
250
190
216
198
172
197
201
178
156
150
202
154
146
203
235
272
202
208
151
211
233
166
209
226
168
205
202
235
173
210
221
217
160
163
182
207
231
255
189
208
120
172
119
210
148
213
232
259
119
223
166
235
216
177
215
188
200
250
231
128
158
200
204
122
96
269
243
210
183
238
188
231
239
164
159
211
254
127
234
196
184
221
241
195
220
172
198
198
212
124
160
220
223
229
193
256
264
242
211
215
137
158
178
242
191
150
198
246
156
198
173
229
242
275
235
198
190
167
228
241
225
243
177
200
220
131
178
162
215
137
160
176
229
225
194
198
186
242
266
212
222
188
215
208
132
194
180
219
150
240
195
162
212
205
166
268
209
218
189
261
142
246
211
240
213
220
212
154
201
233
232
204
195
206
192
222
147
231
176
168
203
219
166
227
217
98
223
148
225
220
185
226
167
158
190
204
246
136
172
194
211
196
185
166
240
192
209
197
177
156
286
155
250
171
207
158
216
179
221
213
205
207
177
116
195
225
212
234
215
190
245
245
230
183
234
188
253
212
193
207
207
196
150
222
176
235
150
214
184
210
229
248
177
184
208
196
216
216
217
241
224
143
237
207
191
183
209
208
173
220
192
140
168
236
249
253
187
210
218
213
214
197
137
224
269
194
189
224
170
247
149
186
129
210
204
212
217
241
192
208
225
119
191
190
204
168
204
251
192
263
255
120
238
233
204
196
241
193
206
242
202
224
170
158
251
159
169
177
185
247
248
260
167
274
246
231
204
217
182
189
206
260
224
164
211
201
216
201
196
199
148
214
241
237
179
177
207
214
216
158
185
259
181
214
174
221
209
196
182
243
251
146
208
227
253
171
152
228
253
176
159
237
232
265
252
114
223
257
184
106
212
206
143
197
198
237
141
263
259
226
184
213
194
158
245
216
248
214
174
167
203
143
177
228
170
193
201
220
252
185
199
227
158
205
232
233
193
205
174
244
202
238
183
212
184
214
220
201
186
191
215
217
177
191
190
212
235
144
229
174
147
217
216
198
214
224
169
181
127
204
147
249
230
190
248
212
177
208
155
155
158
198
193
207
179
223
230
218
223
134
139
139
200
187
196
198
247
222
162
140
254
228
223
199
229
224
144
251
240
193
265
172
255
258
248
200
221
154
230
153
121
154
188
152
195
145
189
232
209
213
243
283
238
202
225
178
249
176
225
188
250
202
208
159
179
162
203
220
201
164
201
228
216
222
110
204
201
175
189
240
151
205
256
190
226
207
194
184
206
195
198
183
231
272
215
204
216
212
222
231
235
238
198
206
183
224
251
152
218
141
209
140
213
147
207
205
223
266
187
175
207
192
208
192
165
196
182
209
201
181
189
226
157
211
168
226
221
167
234
281
136
178
160
262
252
161
171
239
185
154
219
197
252
215
212
220
221
169
207
267
111
263
211
185
241
218
241
259
268
168
147
210
246
164
206
260
170
230
176
235
230
189
145
218
239
272
166
212
206
238
162
178
136
245
224
183
179
246
207
191
238
260
192
142
206
197
201
224
223
148
190
124
251
271
221
219
214
191
222
163
235
243
229
223
264
236
160
222
182
209
196
264
160
223
239
193
236
146
216
160
221
219
205
210
140
183
201
226
187
206
232
187
221
204
167
200
192
168
207
191
167
176
200
178
170
190
204
230
162
215
176
182
185
201
182
220
222
184
264
183
199
238
171
200
162
186
171
215
196
154
173
182
263
224
168
172
183
220
202
128
188
188
229
144
198
194
184
243
170
167
232
164
248
203
161
277
188
211
137
207
179
155
185
246
267
138
200
231
212
218
214
148
218
167
229
170
166
208
193
198
162
185
221
168
175
207
192
256
167
217
212
228
197
222
145
240
140
246
262
201
186
189
221
141
140
219
236
234
224
203
229
182
178
230
304
242
241
251
262
175
181
94
195
229
206
218
177
147
272
158
208
242
157
205
165
198
272
265
221
155
181
233
153
224
202
213
207
235
238
187
150
131
165
188
184
256
175
243
243
168
214
268
242
218
180
185
219
205
245
215
174
200
256
217
162
210
140
213
188
208
185
238
190
205
237
182
252
179
182
140
147
194
210
157
227
227
222
226
210
252
142
243
184
240
219
180
262
181
181
178
167
245
182
187
205
125
238
264
211
227
252
196
209
248
161
259
183
179
144
237
226
167
202
226
204
263
207
240
160
150
126
200
198
172
240
282
220
194
201
209
209
185
167
159
135
218
227
188
211
207
201
199
178
235
218
187
160
146
175
221
219
189
123
235
192
207
195
163
202
205
224
156
170
205
207
191
176
251
228
157
181
145
155
175
244
192
203
149
205
242
209
195
195
246
179
234
215
195
267
205
202
213
193
238
189
136
149
201
201
266
167
192
214
217
229
234
160
227
157
192
138
216
188
211
248
220
155
142
173
157
188
199
202
174
229
154
236
198
203
239
252
201
190
232
248
185
216
248
187
195
212
207
162
214
228
157
171
225
225
213
191
200
138
172
218
184
263
246
172
159
186
230
198
153
202
215
208
151
223
153
183
196
124
200
199
186
212
228
265
232
201
204
177
175
165
189
277
239
186
151
236
209
235
149
205
197
167
155
247
184
190
239
219
195
165
159
181
191
187
221
187
227
155
174
200
195
187
257
119
218
215
194
286
112
228
182
239
178
180
169
204
146
174
215
203
218
217
218
179
215
249
168
195
261
147
208
200
202
175
203
234
273
223
142
175
211
243
174
175
221
181
219
243
233
195
215
149
191
233
164
255
145
163
192
215
236
228
224
227
240
195
211
207
220
160
156
143
192
144
266
216
168
180
143
200
232
267
198
247
230
209
205
177
231
209
165
226
151
234
169
156
171
215
239
176
158
207
226
213
161
254
198
191
204
197
250
229
208
201
206
205
236
199
140
225
183
185
129
174
162
206
141
177
184
159
216
239
152
226
218
229
153
232
216
197
175
183
223
192
197
227
183
222
182
229
188
171
239
263
194
177
218
180
184
180
196
232
239
248
226
120
195
225
227
212
159
203
181
202
173
123
173
230
230
187
223
205
133
170
192
170
196
145
201
116
205
194
217
248
167
143
193
212
240
208
227
216
196
212
214
232
209
213
200
191
263
255
142
248
194
241
225
210
233
211
157
145
199
166
180
181
188
172
180
159
236
216
206
264
187
225
207
203
184
211
208
156
190
244
231
153
292
248
196
143
261
218
191
259
234
183
221
182
145
200
236
180
210
196
269
136
219
180
266
187
267
205
198
200
209
137
209
227
174
220
179
197
228
182
233
217
184
232
213
243
216
267
216
166
181
137
129
216
190
199
183
222
179
217
228
235
189
265
222
239
220
192
167
152
257
228
209
240
151
171
163
159
186
246
239
211
228
216
281
225
255
187
235
258
213
162
244
183
157
192
195
230
254
149
246
220
126
171
157
201
162
173
218
185
197
180
171
142
159
185
208
158
232
162
181
201
192
221
224
161
170
149
189
156
193
190
185
211
212
131
167
174
203
167
211
157
215
218
201
193
227
196
246
182
147
237
231
220
132
276
164
158
135
230
218
180
175
171
194
276
230
210
173
126
216
197
244
232
187
172
189
135
226
240
197
197
233
243
199
229
175
191
240
151
187
235
206
150
162
222
220
137
200
199
134
201
255
147
191
137
213
243
213
233
207
168
186
176
217
183
143
152
229
164
194
177
177
218
148
234
191
245
215
258
142
189
179
240
183
222
235
191
206
203
185
182
174
206
232
183
191
233
230
145
222
219
204
208
233
225
231
146
223
196
195
185
181
197
201
241
226
184
145
221
222
208
243
182
212
227
199
160
245
191
255
211
181
260
180
199
179
188
136
166
199
196
241
264
201
192
186
272
190
211
252
209
268
163
116
200
239
222
227
166
218
238
231
247
244
206
209
202
214
164
199
189
196
149
179
158
221
202
246
214
201
147
258
206
208
154
185
197
158
199
189
224
192
249
121
222
163
211
153
172
100
166
209
242
202
160
129
190
194
188
230
143
185
204
188
193
171
188
186
204
189
239
166
177
176
219
226
213
250
215
191
262
232
242
194
141
173
214
203
232
166
231
222
193
178
174
179
147
214
227
241
240
178
146
163
167
254
233
198
241
220
257
185
190
189
124
222
167
166
205
187
152
264
228
248
191
169
123
171
189
171
216
180
231
256
178
204
211
169
198
190
193
233
223
215
164
197
226
249
250
161
229
166
244
142
218
196
285
237
156
136
184
225
177
214
204
220
246
247
158
284
197
155
164
162
174
211
124
213
179
200
209
199
158
227
176
197
161
240
179
190
201
224
198
190
177
129
281
221
194
216
200
144
93
233
244
187
172
168
129
205
218
181
131
182
246
219
197
238
194
201
172
186
166
219
220
275
135
180
195
188
169
264
202
205
212
168
251
212
199
197
166
247
230
186
168
176
187
200
211
197
198
246
225
222
129
194
193
155
168
162
223
265
198
212
207
234
133
209
206
248
181
208
115
212
241
240
226
185
185
193
228
206
200
172
177
192
282
194
231
176
259
232
194
168
156
196
147
227
135
209
206
208
215
226
228
183
217
222
221
155
223
232
153
193
182
135
138
182
194
237
179
230
201
196
178
159
226
189
185
208
224
178
193
234
215
205
133
256
184
204
232
197
189
167
180
178
166
159
179
235
227
198
200
254
213
218
208
233
214
148
182
212
200
213
128
222
174
176
117
198
207
232
120
210
238
172
214
219
196
203
189
156
168
243
226
223
206
204
135
238
197
195
222
111
195
269
201
221
181
209
217
184
254
201
223
188
172
178
181
241
187
183
203
226
193
170
159
208
264
119
225
214
178
205
224
200
167
231
182
218
202
280
234
199
203
148
183
229
192
167
225
203
234
209
212
149
184
185
215
237
160
220
168
249
244
164
166
260
257
182
261
279
187
202
217
179
201
222
245
202
207
163
190
212
226
205
223
196
205
227
209
206
178
197
146
154
207
211
239
174
163
218
211
167
152
149
125
164
202
152
226
209
218
138
130
188
267
227
175
224
183
230
232
201
157
222
165
234
250
210
214
149
217
188
224
139
208
194
209
252
184
218
170
218
167
259
210
223
217
189
149
247
181
255
161
221
230
267
202
220
196
148
245
231
251
208
205
196
248
181
214
240
197
252
248
219
188
264
239
216
187
252
149
210
166
180
190
244
194
118
265
219
235
233
193
236
213
216
261
206
198
185
178
269
188
198
218
192
203
172
200
201
192
122
175
203
219
156
189
235
152
228
174
251
188
211
187
213
203
168
139
169
181
168
273
197
246
147
209
248
171
215
190
225
208
200
215
240
240
146
169
199
210
201
233
236
121
209
187
244
207
242
162
224
173
191
244
114
166
270
140
183
211
154
181
249
220
222
188
257
169
196
197
226
208
221
233
216
175
252
174
211
182
201
223
160
203
211
203
163
180
245
184
204
200
228
217
167
242
295
204
168
152
198
249
184
148
213
201
268
195
204
184
200
158
214
197
216
214
179
234
188
216
221
221
209
230
221
263
165
184
189
189
202
225
226
198
214
260
186
180
233
221
272
222
238
259
193
193
158
214
229
207
175
164
231
219
262
216
222
203
178
235
177
235
157
234
182
206
222
185
203
206
244
182
169
207
229
238
251
150
222
153
161
179
150
125
218
204
216
174
201
184
256
185
221
170
193
217
181
215
264
140
176
185
236
174
189
137
221
190
203
202
192
206
177
221
188
204
217
230
190
257
272
114
191
254
173
161
156
157
123
235
156
181
238
203
132
194
211
193
235
211
206
232
204
219
253
186
214
178
206
195
211
218
242
243
171
165
150
135
163
169
209
214
171
202
220
215
162
167
200
254
136
171
187
205
162
196
225
134
216
213
236
150
176
175
158
203
197
235
159
170
182
288
155
244
194
182
193
197
192
173
211
204
191
193
183
233
242
224
243
237
184
147
215
184
188
182
231
209
223
202
239
149
216
221
164
237
179
179
223
183
217
181
226
204
179
158
217
247
203
206
153
221
112
169
240
178
256
212
183
210
181
238
148
165
235
232
219
236
223
110
209
207
184
197
163
202
225
185
151
130
151
165
178
184
153
201
178
219
219
186
180
196
265
229
96
139
225
185
206
106
227
188
241
142
210
208
112
181
227
167
208
177
197
225
186
255
155
201
203
229
217
213
162
150
203
190
210
212
118
188
205
215
229
244
257
212
165
176
179
238
188
242
207
178
128
270
299
218
165
203
188
147
241
206
241
185
150
232
195
260
164
165
179
197
184
206
204
190
220
222
202
202
133
190
127
157
224
169
228
166
255
216
161
159
181
175
192
173
164
212
209
156
189
216
212
176
201
188
177
218
160
232
218
219
205
208
219
209
178
158
185
256
134
172
217
115
161
170
189
190
197
176
161
176
220
200
199
205
234
197
219
208
241
222
223
219
167
246
199
218
214
227
224
158
247
217
218
211
186
141
249
237
241
217
195
235
191
197
182
193
197
233
186
174
231
165
152
263
202
189
184
209
191
152
192
177
149
192
192
188
150
161
143
212
221
225
215
237
150
187
233
134
174
218
193
205
208
200
185
187
229
254
220
115
243
245
251
202
203
173
207
208
181
168
188
233
204
225
214
281
233
173
167
201
198
226
240
211
207
163
176
216
143
239
209
187
259
202
208
170
245
228
175
162
231
195
151
175
228
209
214
140
243
251
180
211
189
195
156
172
241
191
236
203
282
238
172
221
229
192
212
242
182
180
172
227
152
189
233
231
228
156
190
223
141
275
226
245
204
160
198
188
226
222
181
189
203
170
221
205
159
205
223
188
224
203
236
257
184
225
173
187
163
265
249
275
235
255
178
207
191
176
195
179
239
190
246
261
210
177
216
195
237
188
248
176
208
207
209
222
170
216
233
278
198
182
201
215
146
244
275
248
194
208
208
220
181
169
210
187
228
258
214
211
208
130
168
206
175
227
253
163
226
192
250
219
198
240
173
197
205
134
235
207
192
186
226
186
140
239
185
181
206
139
226
201
200
182
217
208
230
118
208
161
185
159
141
162
192
211
191
220
201
209
241
217
222
209
235
234
218
154
176
204
218
207
154
181
219
147
159
128
169
215
248
182
218
150
189
260
176
223
199
184
174
236
209
247
192
210
214
223
220
179
203
219
174
165
142
218
207
190
187
244
189
178
198
231
162
165
180
182
163
204
245
180
231
192
223
171
149
247
186
188
207
224
210
215
223
221
157
224
204
182
212
235
210
234
222
174
215
193
191
202
226
195
217
184
139
242
214
228
173
179
232
171
259
207
218
246
96
205
207
183
180
177
167
208
171
180
160
182
198
171
201
188
164
220
180
227
202
208
190
231
202
156
242
199
207
248
214
203
187
170
177
242
194
144
235
246
200
162
161
141
275
256
197
162
222
184
203
189
226
217
257
216
217
194
231
184
219
181
180
206
252
173
115
142
156
202
187
177
185
206
205
220
200
194
151
227
268
173
148
247
143
152
212
213
242
226
194
157
167
226
152
170
227
193
252
189
155
175
235
156
219
220
194
169
177
239
196
100
221
168
238
194
177
197
200
195
167
189
143
238
142
194
205
171
225
166
172
188
194
197
160
191
221
183
225
192
146
221
226
191
214
185
252
227
202
150
118
221
215
196
162
163
245
187
235
201
207
183
207
206
261
137
157
168
171
221
164
160
187
179
213
223
239
240
240
229
214
210
173
251
141
149
135
156
203
137
234
220
256
227
244
197
252
125
171
178
206
200
179
160
201
253
219
138
137
137
175
246
244
181
251
213
155
184
255
193
203
156
250
186
176
220
193
176
208
194
198
196
134
228
201
205
208
192
207
133
211
174
181
219
223
232
152
211
161
168
259
119
156
154
250
165
190
140
200
205
170
234
202
216
249
246
236
212
148
232
144
232
205
192
252
178
181
231
211
186
250
239
231
162
219
230
181
175
158
205
209
132
135
205
248
197
244
190
192
217
228
192
202
148
229
180
198
180
194
236
213
194
194
190
169
225
158
186
214
173
197
241
178
157
148
160
222
179
207
200
196
211
244
174
226
185
203
180
219
201
265
213
175
255
183
192
242
244
225
217
196
205
249
235
206
236
208
215
257
205
176
174
202
201
210
198
174
218
194
218
236
173
197
213
173
187
194
201
186
187
210
277
157
187
219
176
255
188
166
183
130
229
238
200
150
185
194
228
187
144
207
115
169
161
253
220
166
152
227
187
208
186
201
204
205
205
215
174
211
181
190
243
179
277
235
156
153
201
154
200
208
164
216
172
189
135
179
110
225
260
188
252
203
280
187
286
213
180
177
254
161
174
201
173
179
225
243
217
177
245
150
203
166
118
162
145
221
163
250
211
175
193
243
225
160
119
230
213
223
239
243
218
241
256
169
124
211
203
243
134
132
203
276
239
192
167
180
234
213
154
201
203
177
169
252
159
182
248
165
207
215
197
238
187
151
229
194
150
189
149
195
173
217
186
154
234
184
206
120
187
205
248
233
111
215
171
238
166
204
167
190
200
181
195
186
226
108
254
241
207
248
227
201
166
145
228
209
177
216
156
208
154
226
188
186
149
141
231
188
213
175
174
177
150
242
197
181
207
175
218
207
220
236
136
179
217
202
173
189
190
200
221
119
233
192
202
183
181
262
148
142
222
214
205
241
164
195
178
213
229
165
156
194
177
178
251
188
220
202
206
110
185
158
198
170
267
250
192
114
215
247
211
223
160
143
145
269
162
200
140
155
265
229
275
215
208
213
226
170
209
191
202
220
222
116
161
159
234
218
194
224
207
177
194
194
214
185
199
196
189
214
178
172
227
217
204
131
145
163
203
189
159
216
189
256
168
191
173
233
190
152
237
214
201
200
225
215
236
174
280
162
192
159
225
178
174
167
149
222
207
157
155
243
171
176
152
244
204
170
189
248
216
240
196
234
155
222
210
215
223
131
204
207
213
196
175
213
214
181
197
212
201
190
205
231
162
227
205
188
225
204
137
145
186
202
224
206
263
156
204
211
196
213
187
203
191
190
183
208
230
182
210
217
180
233
203
146
187
157
205
201
220
232
232
191
160
243
182
217
159
219
226
212
222
191
226
114
236
215
244
218
208
178
212
236
200
216
199
239
236
214
189
177
216
151
155
246
190
205
180
218
143
197
234
245
259
171
135
199
218
111
189
181
201
170
180
252
206
210
241
216
179
185
209
216
266
214
232
199
194
156
167
169
201
243
233
202
195
219
210
212
201
180
125
179
217
214
204
158
215
201
244
162
184
226
169
168
161
232
247
250
266
154
135
203
214
179
127
194
245
204
212
212
247
164
167
219
210
184
198
216
244
218
176
236
207
190
186
189
195
247
184
205
221
216
186
196
168
180
196
183
156
154
204
216
241
202
170
231
238
230
224
267
210
207
209
184
198
169
203
203
195
144
266
207
265
142
206
170
215
191
236
165
195
210
186
186
176
209
153
217
173
168
261
177
228
208
169
190
229
235
150
211
228
235
206
231
196
167
163
241
171
209
223
178
158
176
220
196
239
276
196
221
223
220
166
198
238
171
192
175
195
213
167
160
166
220
207
214
195
205
185
203
226
245
194
187
229
124
262
153
200
238
201
141
194
213
166
196
198
248
221
138
185
244
151
193
171
168
218
243
229
191
179
223
190
251
125
149
213
173
206
205
201
139
182
208
238
220
212
215
262
142
190
155
240
172
213
228
185
221
216
248
219
163
209
236
183
180
196
218
168
193
198
197
224
277
171
256
248
218
165
215
227
178
275
130
261
257
189
237
162
243
185
224
203
161
253
254
99
185
177
159
239
171
198
136
238
208
189
189
207
178
190
248
245
242
183
268
129
197
195
209
195
232
182
173
190
258
190
263
163
233
228
207
234
187
207
165
126
189
155
168
175
144
153
142
184
133
182
197
172
185
168
158
204
222
216
274
179
200
217
230
213
218
198
248
203
222
189
197
227
191
111
160
249
187
143
117
189
218
189
154
155
181
242
176
228
201
197
203
222
194
236
221
172
137
214
204
194
191
195
200
197
181
192
233
256
171
260
195
207
229
229
204
214
136
208
211
235
197
205
246
211
216
190
216
177
254
216
214
190
182
193
200
199
232
196
218
177
167
207
186
188
204
257
210
224
147
232
206
220
128
234
173
268
193
227
207
169
225
201
158
160
157
180
243
232
198
195
192
155
239
116
204
208
202
191
130
186
175
245
213
195
139
190
225
177
105
222
147
204
223
229
185
129
232
176
209
176
257
179
223
236
141
237
195
203
179
197
219
166
213
192
154
225
217
166
207
169
183
254
199
278
235
183
187
190
176
255
170
183
185
219
256
231
174
230
205
157
243
204
196
174
182
225
173
222
240
193
138
192
163
182
226
179
168
167
213
237
177
158
231
214
265
137
233
199
262
160
195
215
172
237
206
197
231
198
203
226
183
161
175
173
200
197
274
246
184
181
191
157
178
155
227
129
258
234
254
188
226
174
213
253
236
205
161
196
206
192
197
209
190
248
220
199
228
257
230
187
177
205
249
127
183
255
189
195
191
93
178
273
194
228
224
215
213
225
175
235
166
140
228
196
237
177
197
173
226
205
212
207
191
198
209
192
180
142
162
193
193
169
210
224
179
131
203
237
146
184
160
197
234
266
132
195
164
139
192
185
241
211
181
162
243
166
253
180
165
261
153
182
241
142
168
214
252
156
231
153
236
152
180
167
166
188
178
183
188
270
221
184
210
222
155
167
127
236
228
159
253
225
251
237
159
193
199
188
180
245
200
203
183
191
168
135
178
180
208
202
151
179
192
201
170
228
206
202
177
183
210
189
235
208
181
218
197
198
216
229
136
235
239
180
190
218
231
197
189
139
200
116
259
166
175
200
135
206
163
138
245
135
203
222
193
207
170
189
219
216
184
252
206
225
167
167
194
183
193
196
240
225
168
197
219
233
212
238
191
140
219
236
211
225
195
172
191
234
191
266
123
188
214
193
211
259
187
174
174
135
207
206
161
218
225
216
186
129
149
202
204
228
197
142
192
170
229
228
245
202
146
200
228
153
181
185
189
226
236
214
184
136
221
288
223
184
248
189
247
223
246
219
205
203
253
228
176
222
219
159
198
209
202
163
189
156
234
224
268
176
171
212
203
253
176
201
193
179
218
156
242
172
149
225
172
278
218
190
243
194
245
192
245
206
235
164
225
200
153
233
236
204
166
213
209
228
254
143
236
209
170
166
220
200
188
206
156
246
203
213
150
208
201
204
192
239
231
189
202
168
177
208
164
192
180
257
225
112
200
201
214
224
232
165
212
214
188
206
211
125
223
177
171
184
198
179
131
172
185
242
257
198
189
269
207
190
223
258
178
196
203
238
255
161
205
248
220
223
201
237
225
174
205
185
201
196
236
205
203
213
224
253
185
223
266
231
153
192
227
149
186
181
227
229
155
164
184
204
160
140
197
175
259
158
164
221
182
205
227
218
232
236
190
220
228
182
222
174
222
179
171
197
144
143
212
220
200
247
215
164
210
198
235
250
233
118
141
190
245
215
167
202
223
173
220
231
281
127
249
193
191
252
239
169
277
230
156
155
195
223
142
244
257
249
154
184
193
248
223
212
234
163
231
142
209
197
135
196
127
229
215
242
192
173
156
222
152
193
247
175
201
225
213
199
204
230
177
174
194
203
219
162
153
206
175
154
160
246
243
222
211
159
179
194
239
199
177
235
234
223
163
178
201
211
180
207
199
195
209
172
207
197
270
162
244
196
176
216
238
251
155
210
188
224
272
224
182
230
205
236
176
255
191
246
223
155
185
211
139
226
160
244
276
154
199
220
95
148
229
170
206
198
163
200
178
234
187
234
174
197
212
105
178
202
183
164
152
196
234
133
216
276
217
182
240
213
208
232
224
192
162
176
212
156
273
203
167
192
181
261
218
185
210
206
182
171
167
225
174
187
162
228
220
208
175
158
211
205
139
188
154
182
149
175
139
212
222
174
192
192
221
237
177
221
190
199
192
260
202
168
129
195
269
201
160
186
197
197
184
194
192
245
234
280
214
191
198
184
214
151
234
164
152
226
252
174
158
262
214
218
202
214
211
192
302
205
129
204
226
203
165
238
229
179
103
194
188
134
200
215
176
218
232
216
236
182
234
237
177
195
201
199
231
193
186
110
183
224
209
147
177
176
190
184
162
211
157
201
217
220
274
290
228
219
205
200
176
214
214
159
185
238
256
134
193
219
220
245
154
165
230
197
107
176
183
165
212
220
209
221
227
206
174
198
251
189
199
221
211
208
174
177
227
183
167
204
197
235
260
223
190
211
171
153
205
149
170
150
230
235
151
165
201
191
201
167
180
157
182
151
249
235
215
208
229
153
206
227
173
230
194
186
186
241
175
163
203
199
238
222
168
245
170
205
165
204
238
176
198
257
145
198
293
177
221
155
193
167
183
186
162
124
177
205
224
208
166
240
216
259
166
211
251
154
210
182
160
191
226
237
148
206
211
186
216
170
191
229
166
224
193
87
210
165
114
175
208
144
233
202
179
203
182
159
223
194
181
217
228
205
214
272
174
228
191
218
247
213
207
267
240
143
182
110
242
218
263
169
194
255
243
192
234
239
223
203
190
192
270
157
126
192
164
245
203
223
213
209
186
200
236
213
203
198
251
178
207
156
222
194
283
136
160
156
170
223
228
186
181
128
244
235
202
207
223
165
206
153
171
143
248
181
221
232
207
179
152
167
191
228
189
219
224
228
231
174
245
144
200
209
212
182
220
190
174
206
199
181
202
265
206
241
184
177
233
202
142
157
150
162
213
230
249
188
181
200
258
208
171
242
186
205
223
236
159
160
239
140
229
224
230
166
216
193
122
131
151
237
234
144
189
218
143
182
244
170
172
225
174
222
196
177
107
198
175
102
203
241
224
222
158
190
206
206
198
215
206
147
138
218
170
204
199
238
239
291
203
261
162
198
190
166
135
162
197
210
219
227
199
190
245
193
226
206
182
196
169
179
259
225
293
219
229
183
208
250
197
144
191
173
222
184
185
202
175
225
185
166
162
201
117
151
147
243
231
237
133
195
209
217
183
237
232
144
170
178
224
106
232
204
176
129
203
167
157
193
176
239
171
164
128
195
234
198
183
185
232
240
236
222
177
218
228
256
171
204
175
244
165
156
182
178
212
180
185
225
149
165
169
205
197
227
204
259
229
187
209
168
200
223
218
173
164
233
201
207
239
170
175
220
249
230
185
211
188
164
173
188
182
220
176
140
204
227
174
239
213
177
169
171
159
222
236
204
166
216
188
249
182
190
178
185
235
255
208
208
148
168
244
176
218
196
185
219
228
191
211
214
200
265
161
192
173
227
193
212
182
249
156
174
231
122
216
226
204
206
175
223
261
235
182
148
158
179
164
200
210
173
165
188
182
220
281
188
228
233
214
220
280
214
249
199
212
174
220
189
187
257
176
181
198
276
202
139
251
248
154
213
184
161
240
250
215
224
169
201
164
168
240
179
220
210
227
213
142
167
165
191
267
203
200
144
147
248
177
249
246
173
161
228
232
233
239
150
226
194
219
235
192
235
197
132
225
257
229
194
211
195
225
209
162
171
168
197
173
248
252
247
196
214
236
194
231
286
137
170
182
166
251
190
215
254
265
162
203
183
255
217
166
164
193
222
138
178
194
205
224
180
233
185
219
236
184
174
151
177
214
225
198
231
198
190
237
216
199
191
190
220
171
229
176
185
180
211
159
192
175
196
145
179
136
210
219
247
157
179
226
196
166
189
167
141
189
173
162
159
203
229
229
192
201
166
169
130
182
218
176
253
121
181
143
177
230
217
137
175
219
197
213
165
179
135
200
207
172
151
193
205
189
215
192
253
244
177
255
149
180
219
170
189
183
244
171
224
205
216
213
203
176
138
195
194
234
162
159
161
223
202
230
227
174
215
157
254
150
207
219
179
183
189
160
185
188
130
243
210
177
132
204
162
134
204
174
157
191
190
192
206
187
175
196
215
106
199
185
208
247
200
214
227
211
241
245
237
189
167
202
209
184
203
233
175
204
229
218
166
205
211
269
173
232
189
207
249
186
189
196
229
185
137
170
112
187
173
244
228
183
229
175
224
204
192
163
236
245
182
237
181
140
280
198
177
164
251
241
217
236
229
224
275
214
170
192
248
234
168
235
187
216
204
209
201
189
249
264
189
219
184
192
258
163
202
122
220
220
223
258
218
170
170
179
233
267
262
222
228
210
138
229
203
206
156
227
230
198
176
243
192
216
229
194
200
189
205
151
185
212
205
273
211
231
165
212
241
201
237
212
222
143
165
192
221
173
154
246
184
199
171
240
155
240
208
148
182
194
198
169
190
204
254
148
182
202
214
239
187
240
178
257
167
169
174
212
243
230
176
209
173
212
223
234
254
170
185
158
191
178
204
225
198
181
195
192
256
180
180
124
219
188
212
214
125
220
163
242
285
237
262
213
219
205
186
134
180
197
236
234
138
210
262
164
194
236
234
199
179
241
198
176
176
155
203
194
182
210
197
203
225
171
174
148
214
199
240
219
141
271
233
206
200
147
175
171
207
229
187
213
237
152
164
178
151
238
178
156
208
207
246
184
181
152
241
212
243
190
222
265
213
205
208
242
218
226
193
237
177
184
235
218
196
212
204
194
190
265
252
134
246
136
203
228
204
196
240
187
218
173
123
187
229
185
166
226
184
223
196
201
187
185
155
204
175
176
172
221
240
200
236
230
123
211
189
197
191
230
185
186
257
165
159
173
244
185
190
236
255
182
194
222
204
160
226
243
218
199
224
213
186
171
241
189
195
174
169
222
178
187
210
221
238
236
170
257
196
187
185
260
162
193
212
241
200
193
184
222
214
242
224
179
211
238
200
227
287
170
193
212
196
244
145
249
181
156
174
174
119
187
157
202
196
229
222
198
142
197
185
180
172
233
197
205
255
192
139
169
223
157
229
201
195
203
269
179
189
191
184
132
146
177
183
217
215
234
216
260
218
161
172
178
213
277
230
282
150
208
245
217
195
159
174
182
191
263
194
178
151
160
232
203
199
237
185
191
226
247
251
215
106
205
114
140
138
243
228
195
191
221
173
203
239
177
192
249
268
195
206
188
279
156
222
195
188
166
178
157
134
257
186
226
193
132
230
237
244
243
190
207
166
215
199
225
256
173
181
206
228
226
187
197
206
149
177
200
228
196
207
213
195
175
234
196
207
216
209
195
151
243
188
195
150
78
214
193
203
221
227
190
231
280
225
212
173
193
156
162
262
231
117
140
157
169
206
175
193
163
211
185
190
223
185
199
155
140
220
175
244
126
216
203
244
240
217
252
226
173
220
209
212
227
253
224
256
206
181
197
202
235
192
210
277
178
231
186
212
185
197
229
188
240
250
185
161
193
153
203
226
216
161
164
219
262
180
152
216
164
189
228
220
216
176
170
204
219
118
171
189
203
198
181
159
191
175
156
257
187
207
161
192
216
225
180
201
179
198
222
142
183
190
270
187
189
187
174
199
196
181
205
243
181
205
243
242
199
233
180
181
230
196
195
246
160
116
223
212
220
171
228
182
126
170
177
181
193
190
131
257
254
224
211
214
202
104
172
191
231
190
241
142
162
211
203
194
214
205
167
227
224
205
194
238
175
215
203
177
204
198
141
241
141
209
189
223
177
211
149
224
211
202
173
207
156
202
200
249
209
197
223
223
220
210
173
188
228
188
201
192
215
225
183
178
248
229
200
95
224
174
111
146
224
252
184
144
217
246
245
244
232
210
255
230
244
215
222
199
230
250
159
180
215
237
244
225
209
237
152
185
172
216
240
272
203
165
206
222
238
224
233
202
191
163
176
242
179
253
210
209
206
198
200
208
239
235
259
164
220
210
144
182
243
261
238
192
201
239
173
215
208
192
107
205
215
224
250
227
185
216
196
237
202
235
241
229
230
205
203
232
244
188
189
210
208
239
243
200
171
146
239
147
246
222
222
222
201
168
145
203
204
186
207
162
177
155
203
220
173
245
165
159
206
166
177
129
179
166
181
172
229
162
272
142
261
217
262
182
180
260
204
218
181
220
234
224
212
205
186
166
198
161
203
196
129
182
201
207
178
198
231
179
218
171
234
221
221
210
194
195
231
164
197
213
217
186
252
168
238
228
192
215
246
203
210
196
156
235
152
221
183
179
170
176
282
224
131
212
192
238
283
211
259
205
154
171
199
259
236
177
198
146
128
271
160
200
208
154
203
212
220
236
198
177
200
172
223
119
263
164
195
174
277
180
158
119
259
267
246
183
255
161
252
113
168
219
172
172
216
189
217
205
217
196
225
185
183
202
210
190
164
255
198
209
231
241
258
233
140
223
197
161
193
163
244
200
204
239
212
151
228
223
240
160
176
134
155
163
189
215
172
228
116
184
170
229
209
193
195
191
160
195
184
216
228
165
249
182
209
203
179
218
206
237
283
250
206
199
229
182
238
181
237
256
218
181
198
148
165
183
208
279
245
231
224
216
189
273
252
244
187
212
189
169
158
231
196
202
207
155
191
179
155
179
251
244
156
178
222
129
198
276
214
176
168
208
179
217
192
228
153
144
238
184
179
195
216
103
190
160
216
171
147
208
279
185
256
201
171
226
143
153
212
204
157
168
172
240
192
153
190
155
139
165
207
215
170
192
197
227
199
229
216
143
174
255
247
157
226
147
186
232
189
238
239
184
165
197
234
198
244
128
160
175
222
232
157
177
259
222
218
237
178
241
217
187
198
183
182
180
237
123
127
159
198
228
203
208
157
192
230
156
168
225
190
228
182
219
198
247
160
182
201
243
189
229
191
230
228
182
184
164
251
225
265
196
213
178
187
187
139
187
192
234
242
215
222
185
222
178
246
244
227
264
196
233
175
184
180
215
213
168
205
112
234
201
158
204
177
152
174
176
138
223
144
221
211
209
216
269
193
228
200
152
133
218
210
221
255
270
223
158
176
237
195
196
174
178
181
157
208
204
147
150
209
188
213
201
191
211
168
237
189
232
150
228
127
266
149
188
233
250
208
157
169
258
164
184
183
221
139
124
212
168
118
167
227
136
193
163
157
226
182
238
174
127
229
152
199
210
218
169
228
181
150
205
224
196
175
262
147
174
254
221
184
160
144
184
196
204
194
177
207
239
198
217
222
222
239
236
193
218
224
242
156
224
255
229
217
225
180
174
222
171
228
261
201
160
191
161
191
138
196
185
204
222
180
232
240
162
208
209
223
245
162
184
206
216
211
175
149
216
206
216
167
237
176
227
200
147
183
161
255
221
227
195
185
166
246
154
202
173
185
197
161
199
204
218
173
171
234
201
243
198
157
216
187
169
179
155
177
181
234
203
285
162
187
137
192
176
214
198
143
185
221
189
212
229
219
179
188
203
181
152
199
154
200
241
220
157
210
215
271
208
224
195
256
254
181
244
224
134
207
177
154
165
174
227
212
199
232
155
166
183
234
190
193
234
175
206
167
225
176
182
216
225
239
182
223
181
246
198
251
273
159
167
176
171
198
185
164
191
192
184
170
196
167
215
208
151
142
155
198
191
165
200
201
172
170
240
175
217
185
248
169
168
169
211
248
146
224
221
161
215
178
127
185
105
144
155
251
213
228
147
188
176
193
212
206
222
178
205
136
147
218
191
186
210
231
244
233
187
198
192
238
198
202
220
189
250
169
207
184
201
199
188
206
164
145
301
196
211
212
269
144
229
262
236
217
216
197
178
169
264
167
222
205
164
221
124
214
248
207
219
247
227
241
223
225
188
187
204
145
220
188
163
230
203
216
194
136
207
198
153
200
216
220
219
218
162
234
154
180
232
164
194
190
234
259
182
221
233
187
248
143
199
150
250
197
226
221
170
180
223
190
258
193
210
273
188
213
251
177
183
228
252
189
217
192
169
161
226
188
246
221
215
187
201
130
220
150
192
210
195
138
174
191
198
233
162
220
233
203
258
182
172
191
191
126
205
89
180
146
253
240
195
168
203
159
205
224
180
201
206
203
141
176
205
222
182
195
189
174
265
219
197
162
143
214
219
181
171
131
193
263
215
205
235
203
203
255
185
164
274
241
225
170
149
216
171
269
232
188
201
231
229
197
243
167
204
209
212
197
222
138
215
145
194
177
242
181
257
183
186
169
161
214
228
247
186
201
186
202
215
198
172
170
219
197
211
172
236
222
249
210
206
188
236
196
232
207
177
165
188
131
226
187
217
173
198
213
136
193
204
211
173
188
192
231
258
209
218
206
177
246
165
221
205
140
249
171
172
254
251
165
205
167
123
187
219
120
201
148
204
263
175
228
244
197
175
205
231
172
199
142
205
200
197
205
160
254
162
220
209
162
150
222
185
164
236
236
230
221
185
154
191
143
189
183
202
172
201
203
226
155
203
242
142
171
174
160
174
209
157
243
209
191
232
176
154
178
215
243
193
203
167
252
216
211
189
218
200
212
142
187
217
220
201
182
197
241
182
176
164
167
185
208
235
182
177
291
156
216
244
203
230
220
155
213
227
250
210
208
178
204
210
194
237
177
226
198
173
219
169
233
213
181
117
263
207
193
255
175
219
232
248
210
189
185
178
245
135
155
176
193
207
186
253
193
255
154
156
226
160
188
175
209
144
190
200
103
229
155
205
156
223
225
236
249
164
137
231
175
202
266
171
204
172
175
219
233
233
226
121
156
219
227
240
211
179
165
178
193
249
184
214
186
206
196
238
216
172
226
255
202
174
201
212
211
176
205
186
204
210
198
189
157
178
270
227
199
238
154
222
134
182
212
256
222
231
240
217
197
180
176
230
251
214
203
199
150
216
178
163
181
200
195
255
169
190
203
198
149
167
196
213
155
199
278
209
154
203
241
250
150
246
213
177
164
232
247
156
181
238
172
181
160
195
186
204
188
173
196
207
214
207
284
229
228
267
190
180
177
181
188
228
131
223
228
207
217
155
170
138
206
156
209
206
200
158
214
194
220
237
217
221
195
173
206
211
182
215
207
175
207
181
194
154
209
210
232
152
261
215
127
217
183
177
220
205
227
171
150
185
235
204
145
237
200
207
203
193
264
230
204
190
192
219
202
193
177
188
207
161
220
229
226
211
240
191
156
237
195
200
205
182
163
239
153
169
247
169
238
210
165
230
160
181
217
179
173
166
205
177
185
163
155
211
154
193
210
215
263
226
179
181
190
163
189
222
241
156
253
164
147
241
217
210
200
175
161
190
142
152
191
224
260
161
177
226
138
270
214
183
190
188
182
275
213
241
245
160
193
183
231
199
226
147
200
177
165
205
149
210
176
195
225
151
192
251
186
196
229
173
153
217
224
217
191
189
219
213
231
233
274
246
230
240
207
219
182
193
150
151
124
186
170
242
150
220
212
133
219
183
209
184
210
259
249
182
194
167
219
211
138
219
169
160
189
220
241
247
170
191
196
177
204
218
160
184
184
185
178
184
207
197
233
191
206
195
184
210
211
145
174
137
174
208
210
237
214
173
194
173
142
217
200
134
259
250
171
178
213
198
191
252
129
209
166
148
241
169
165
246
150
236
246
224
222
160
227
194
221
203
217
184
132
183
233
207
222
228
179
187
168
207
203
213
191
245
122
189
243
161
238
147
188
174
228
226
137
144
200
182
188
165
176
204
215
166
224
163
176
186
217
178
228
227
162
230
209
201
209
217
213
216
214
221
231
181
199
189
200
144
231
245
185
228
216
189
242
234
190
176
230
209
221
172
161
218
203
165
146
169
227
212
159
213
162
262
198
219
163
221
148
260
244
244
168
156
250
271
184
228
181
160
222
258
230
233
202
258
222
180
174
275
212
172
195
227
186
210
252
174
208
243
193
186
213
238
227
171
236
159
157
209
191
244
200
139
180
241
173
193
206
154
206
205
204
164
265
244
130
193
188
210
227
226
230
142
234
190
150
233
218
208
231
240
164
233
187
229
217
225
165
166
189
132
202
229
186
194
226
170
161
223
191
163
102
189
242
216
166
242
252
191
220
183
204
182
233
169
218
207
183
238
190
180
174
194
205
135
243
230
176
244
177
252
212
229
201
202
188
217
269
250
236
216
170
239
240
174
227
159
180
219
232
191
192
218
230
185
222
177
242
208
194
185
205
194
213
227
221
189
197
241
240
143
176
222
220
128
241
226
217
132
186
150
226
231
213
187
208
271
234
202
165
226
211
211
232
215
171
234
177
193
237
243
228
219
189
242
189
175
202
237
240
225
149
189
192
177
124
162
212
161
86
206
215
184
221
197
175
169
234
212
271
206
160
186
157
219
249
206
253
257
224
212
273
232
189
217
150
121
224
195
106
203
224
182
202
217
165
205
188
245
240
249
268
230
208
228
179
159
244
149
205
264
169
145
255
188
207
136
146
200
162
249
212
165
164
201
228
244
180
198
181
258
199
223
199
149
195
217
248
186
130
228
213
192
149
203
171
192
206
229
190
112
169
203
210
197
235
145
172
164
202
237
211
186
275
215
254
274
236
212
173
227
160
225
248
255
249
119
198
170
233
220
199
177
176
171
229
148
208
244
202
241
169
143
186
144
156
211
216
211
195
180
246
209
245
176
210
169
290
226
249
212
215
218
191
242
194
262
220
240
220
160
146
215
241
139
207
152
262
176
174
127
212
283
198
172
186
170
207
254
199
216
192
213
184
221
209
239
185
276
155
207
191
239
239
160
179
156
182
239
185
189
215
251
222
239
148
209
252
189
175
209
245
206
198
219
177
208
199
218
168
207
164
236
245
171
225
224
214
186
153
196
224
209
189
224
282
261
195
185
156
247
245
215
190
229
170
207
200
175
206
254
192
193
217
234
191
252
200
158
145
202
188
286
126
197
154
214
134
160
228
212
222
182
201
179
236
182
169
212
193
218
190
201
206
224
211
178
199
279
208
208
172
191
217
195
255
213
203
195
197
211
220
233
192
172
259
203
163
256
161
118
282
219
192
239
227
199
213
250
133
192
232
198
207
232
207
218
186
200
222
174
181
114
221
193
248
253
242
179
247
240
163
146
158
119
258
270
214
214
201
163
174
159
170
162
202
149
221
188
206
216
206
235
224
189
189
187
226
230
227
259
164
220
189
227
203
181
246
221
169
280
267
227
203
142
179
172
270
144
218
216
189
189
179
202
220
170
188
178
143
205
230
136
202
151
200
173
173
167
137
210
177
116
155
242
178
143
218
155
218
167
149
197
209
198
161
202
172
129
201
239
198
201
167
198
180
190
280
229
172
211
216
221
187
249
186
221
186
211
263
209
212
228
174
266
230
245
169
165
179
197
145
168
224
170
260
224
179
237
186
215
201
182
158
176
230
238
175
276
193
232
175
185
194
164
209
209
261
222
158
201
214
202
230
143
180
214
223
199
210
169
163
182
164
189
189
190
188
222
262
222
263
124
228
249
169
182
246
154
175
224
199
149
232
173
213
245
174
190
258
235
239
205
296
242
175
264
237
191
239
172
197
202
173
202
202
154
241
185
156
260
186
134
212
128
171
183
245
219
178
223
187
208
196
228
233
133
206
233
196
229
193
271
241
160
232
245
206
218
268
197
215
206
163
208
194
150
125
207
220
222
229
193
216
191
154
197
246
167
227
184
189
261
211
226
129
200
244
164
228
188
189
221
185
138
169
208
231
144
224
263
171
243
215
203
205
247
216
188
172
292
255
154
170
236
144
236
231
220
227
136
191
207
219
201
201
265
234
264
206
209
221
144
145
178
224
190
212
228
223
187
216
200
178
197
215
247
240
201
189
205
185
145
198
245
206
237
195
214
185
209
200
179
237
218
237
193
235
217
133
215
146
194
175
226
188
225
242
230
162
221
183
132
192
176
217
194
217
152
223
192
196
182
224
209
210
204
205
182
225
167
215
278
232
235
251
225
180
179
196
191
178
206
233
247
247
289
231
259
255
242
212
215
219
229
222
192
293
221
224
191
207
167
198
154
170
181
188
302
188
219
179
235
158
237
155
245
166
258
227
237
225
227
249
186
219
194
160
209
228
251
187
239
218
227
180
246
216
183
186
190
198
145
229
235
216
174
139
238
186
226
218
220
223
222
145
209
161
250
171
181
230
161
234
238
209
214
253
182
232
218
260
159
208
146
189
207
218
182
185
223
227
194
195
151
196
198
181
212
246
236
182
260
211
178
184
232
206
220
193
204
131
222
246
201
182
185
214
215
215
208
210
185
216
233
202
154
162
226
187
165
214
219
160
167
198
230
169
203
223
203
149
245
205
242
160
162
202
241
164
160
195
242
199
155
181
211
138
230
196
221
167
200
195
211
216
152
144
216
146
226
255
173
214
215
167
197
179
241
178
218
227
249
188
214
153
249
186
194
217
175
245
204
200
240
219
212
210
218
200
215
213
252
254
199
168
219
190
175
160
217
150
217
204
217
206
206
217
187
224
157
244
212
141
151
227
195
206
221
212
282
177
191
169
228
154
159
212
222
222
215
234
172
177
236
162
204
190
247
201
156
214
178
186
178
193
136
208
204
206
161
226
248
211
147
213
219
171
160
219
204
160
185
212
229
226
257
160
177
180
212
156
198
185
202
243
215
240
262
178
181
232
202
219
171
224
242
173
207
218
227
136
139
243
167
236
212
269
178
206
234
158
220
231
214
223
211
224
221
169
214
140
205
219
188
190
169
230
206
236
187
205
219
197
204
182
176
202
196
185
209
234
198
184
173
224
146
200
202
210
234
160
151
156
237
181
236
155
209
258
155
175
230
180
237
262
268
138
202
205
189
224
199
178
189
171
147
213
197
185
222
200
181
196
192
182
194
176
247
223
191
154
122
189
214
247
206
220
172
212
145
141
250
144
207
241
184
150
240
180
203
204
194
177
170
129
169
186
215
188
181
117
234
191
206
227
133
158
243
223
195
190
188
253
205
225
193
165
185
182
174
194
218
227
187
212
201
273
211
245
260
166
166
186
178
134
163
176
194
245
203
203
149
191
146
192
202
127
157
240
217
213
214
232
229
199
182
185
187
181
136
199
217
167
209
181
210
153
269
183
170
168
210
207
161
225
201
206
135
228
179
152
192
193
174
204
230
171
186
209
202
230
248
211
201
166
168
212
185
215
168
209
174
178
271
247
203
195
180
175
216
196
221
183
181
265
196
137
201
127
185
220
203
215
213
166
155
209
174
193
211
178
184
248
196
174
158
164
119
226
230
186
205
145
212
221
135
185
256
278
201
263
197
179
179
185
181
177
114
262
201
211
163
122
239
197
197
164
268
145
192
178
150
221
224
195
196
236
189
213
205
168
223
197
187
200
208
129
138
171
171
190
216
189
201
248
152
230
222
199
273
207
206
234
213
185
208
235
237
156
177
228
165
252
144
133
154
144
184
157
251
215
192
198
115
193
221
203
197
248
172
253
229
201
229
161
243
203
147
184
180
243
169
191
234
134
230
160
236
148
162
249
179
262
164
214
228
233
152
185
204
245
214
156
170
221
197
250
208
162
212
198
163
137
230
233
176
176
196
184
181
133
204
200
193
209
258
198
254
174
213
267
194
210
182
208
101
189
205
238
265
227
197
189
231
168
209
250
145
172
212
204
154
232
193
208
229
231
199
125
262
193
179
264
233
193
209
212
290
194
221
173
174
162
242
193
145
260
201
175
269
218
249
185
203
225
181
168
202
205
281
215
193
270
194
227
213
177
223
173
215
211
180
133
204
230
171
151
225
276
186
145
193
236
180
230
133
238
206
158
254
232
182
212
251
194
222
239
204
243
220
235
160
236
198
184
264
173
238
221
236
250
181
182
157
192
219
228
178
226
217
177
187
229
250
218
186
230
223
153
86
219
195
180
190
205
252
249
233
214
166
199
220
234
202
136
229
287
242
173
230
239
161
196
223
222
161
265
186
251
239
236
219
219
118
222
219
154
231
202
203
218
249
217
186
190
262
192
199
174
194
232
228
203
186
235
197
216
195
184
149
200
219
176
216
237
211
173
213
202
220
171
214
182
203
207
214
201
207
169
247
190
234
174
163
241
151
201
156
190
246
171
215
251
227
213
156
191
197
258
252
216
275
214
215
219
240
193
235
260
173
206
196
204
181
198
207
155
227
231
140
223
160
200
165
180
179
168
151
171
212
197
204
167
170
189
170
194
202
195
153
194
240
145
197
221
247
169
195
200
212
213
208
161
218
248
216
215
186
230
241
238
210
170
194
195
204
154
222
236
206
204
203
217
168
156
197
195
198
215
207
234
213
176
199
206
216
227
201
227
175
237
142
263
179
199
230
208
124
222
221
240
161
205
216
206
174
201
169
175
217
245
208
227
220
266
200
203
181
177
286
121
269
180
230
198
234
191
194
231
165
179
236
211
158
199
253
106
177
189
214
212
261
201
219
221
182
181
205
205
160
241
204
205
145
188
178
226
241
201
123
271
218
275
154
217
227
160
195
231
267
197
217
188
224
196
187
237
155
163
202
226
186
189
186
212
189
244
207
208
212
194
204
190
263
164
188
202
218
193
241
242
249
163
152
160
170
184
195
208
130
180
198
214
249
118
136
187
173
179
245
217
199
225
206
247
158
201
222
219
204
168
204
187
216
171
193
187
185
231
203
225
219
145
205
153
224
209
198
176
215
274
254
223
225
240
216
222
178
152
170
197
215
152
208
169
200
209
159
240
235
219
150
196
180
175
258
229
232
140
192
187
183
159
185
127
194
191
166
254
203
236
236
199
261
232
127
147
188
151
192
216
148
240
175
215
270
171
191
183
167
232
148
183
220
236
188
237
218
217
141
240
217
150
157
129
176
204
215
118
225
165
188
140
213
170
189
162
192
234
175
161
246
215
227
205
237
190
209
158
265
123
221
225
187
217
171
194
166
238
164
172
143
170
162
199
169
187
267
200
210
189
165
249
203
247
198
190
237
144
284
171
174
210
163
179
209
216
159
208
206
199
223
155
232
235
160
184
201
186
190
188
187
225
258
190
191
200
234
229
162
194
229
149
266
232
161
127
191
236
194
181
169
122
218
156
244
124
240
164
173
237
245
172
254
218
175
244
182
283
228
177
230
242
243
177
191
228
199
160
179
249
158
200
237
156
277
147
243
276
203
220
202
207
195
220
255
144
219
195
137
178
222
277
165
184
222
200
180
224
270
206
129
191
200
224
246
226
209
141
200
149
190
173
210
180
221
232
184
252
205
175
180
226
186
257
246
178
220
208
211
192
237
153
230
157
207
205
244
207
193
190
156
203
195
178
229
202
212
193
159
171
219
216
180
209
118
195
188
184
177
250
192
209
203
171
219
208
190
187
176
242
232
157
206
230
203
219
155
195
173
282
172
123
244
230
205
194
207
191
240
129
182
199
241
228
196
274
207
202
195
202
183
244
170
218
187
240
213
228
196
266
177
150
182
181
244
213
171
266
157
158
235
226
206
165
148
187
215
139
219
222
157
200
164
205
233
232
231
216
171
203
134
160
203
190
135
163
241
171
230
200
221
69
193
236
90
146
171
166
162
187
220
261
207
129
245
162
166
201
188
159
236
173
156
180
234
221
249
200
201
216
163
220
162
198
193
169
182
117
183
219
212
213
184
218
192
234
252
246
185
240
254
180
182
184
134
216
167
217
201
278
164
212
190
143
200
251
160
199
202
219
136
203
173
199
173
209
230
204
160
216
163
195
217
209
177
200
130
183
194
200
151
187
212
206
250
154
195
167
212
226
157
238
213
220
162
266
232
117
220
205
226
244
169
187
116
177
182
176
195
222
145
248
216
211
224
110
227
218
160
228
164
211
183
155
217
188
261
206
219
195
204
201
226
131
167
188
209
248
168
229
216
162
210
192
197
222
191
193
150
225
184
184
215
199
205
180
238
216
166
253
201
194
198
255
182
105
228
256
183
254
166
267
220
202
199
265
180
155
146
137
73
197
194
199
136
204
176
246
163
163
181
143
194
194
192
176
160
159
248
159
226
173
214
166
146
261
190
226
199
190
242
234
169
193
167
195
243
184
214
188
224
202
226
216
192
218
174
219
167
243
169
165
171
185
195
213
253
160
169
185
247
196
231
262
191
170
204
156
179
143
218
194
220
136
292
203
223
217
209
220
209
220
217
162
212
171
198
217
172
194
223
222
150
195
177
178
182
221
178
160
250
231
228
263
203
195
201
203
192
145
221
184
213
136
230
200
210
197
234
189
135
205
188
190
115
209
221
190
223
180
255
183
274
212
212
208
229
187
171
234
214
241
176
220
125
232
240
163
171
184
214
241
244
227
205
170
223
212
195
153
199
194
211
239
265
194
174
216
223
149
262
264
241
177
241
253
177
249
216
197
223
187
153
216
204
212
224
162
208
218
222
222
207
220
224
217
239
183
195
229
204
215
259
147
202
128
223
185
204
210
178
175
236
208
215
213
193
211
223
166
170
191
205
229
201
197
242
187
131
210
239
173
216
185
209
152
175
249
219
238
200
160
200
181
213
203
241
245
182
216
173
162
160
157
140
121
129
166
244
204
121
195
202
238
183
247
164
181
166
169
233
226
210
162
172
220
194
225
207
217
192
226
162
152
155
201
198
248
207
212
192
241
221
177
165
200
208
178
202
230
153
164
175
196
241
217
231
138
223
192
227
207
218
205
186
243
208
187
196
183
178
205
112
197
145
229
184
203
213
214
221
162
223
209
243
155
250
151
164
194
194
226
167
212
248
221
151
170
186
150
161
139
183
217
123
209
188
260
225
267
172
199
215
150
187
182
233
219
229
244
214
195
219
226
282
230
222
204
209
154
175
216
232
212
218
162
182
246
208
202
160
186
247
170
212
169
192
176
215
184
192
218
219
218
229
202
151
187
212
191
174
117
203
135
277
174
130
176
157
218
202
143
193
178
213
162
207
208
210
198
223
179
273
226
237
212
166
149
227
195
183
202
205
232
197
223
132
227
229
244
222
249
222
167
167
159
178
146
228
140
201
234
193
137
194
218
227
232
193
177
209
218
206
168
219
226
138
194
223
237
220
245
192
201
200
237
243
190
227
249
226
212
187
172
226
190
178
220
166
239
219
196
270
182
183
213
218
210
250
168
224
209
267
259
154
195
168
90
142
196
242
261
206
249
180
164
205
176
204
247
222
215
176
213
216
190
221
189
207
159
212
232
202
157
178
241
205
126
202
197
194
163
254
230
194
223
165
204
182
228
208
174
250
117
200
190
299
141
213
196
229
187
192
226
180
173
210
139
187
220
208
210
257
248
155
247
230
197
256
237
140
225
202
202
192
222
209
194
196
240
232
204
154
212
192
197
210
247
167
187
183
223
206
247
140
130
248
165
203
220
216
187
135
138
188
201
197
214
185
186
163
197
165
196
229
276
182
228
168
192
219
182
234
260
124
229
228
155
270
228
130
187
257
242
229
224
172
239
202
224
203
215
209
212
160
252
226
198
200
227
177
155
234
211
207
154
160
208
186
224
224
185
202
242
278
162
236
216
174
203
196
220
152
248
201
234
266
170
230
225
209
219
114
122
225
236
139
222
224
239
215
157
243
175
237
202
209
176
220
158
195
214
182
244
196
202
225
199
230
196
215
240
169
200
190
215
152
178
237
165
256
216
217
265
199
195
181
221
236
263
244
185
203
180
224
211
182
149
206
285
203
191
222
210
210
265
169
237
234
225
190
258
201
197
194
224
210
195
129
179
243
159
246
196
261
186
185
201
212
216
190
161
197
166
195
235
110
229
232
129
169
182
186
193
203
208
210
169
211
205
247
230
186
179
196
174
207
206
204
212
254
141
204
180
160
229
206
185
197
189
153
223
222
220
209
190
223
197
216
161
160
194
137
230
170
209
204
283
249
217
192
264
254
147
193
246
154
194
196
198
184
187
167
183
234
156
214
155
200
199
130
211
230
197
170
265
155
142
156
182
123
244
164
214
204
220
212
138
200
184
133
152
198
243
136
254
256
238
166
192
160
196
196
159
225
255
162
238
218
198
247
153
166
187
155
132
143
169
190
176
195
272
215
205
217
243
179
164
223
167
179
229
270
242
192
267
271
216
220
208
154
222
250
227
223
170
234
193
152
176
238
244
250
166
203
250
199
203
242
167
185
195
183
185
194
152
211
207
239
240
229
199
201
197
191
187
224
208
245
241
178
203
256
166
207
206
220
233
144
250
181
143
207
183
143
224
207
199
138
176
240
188
230
209
151
229
193
235
206
215
161
225
90
187
228
185
216
234
219
218
175
219
248
186
213
190
182
214
228
207
263
241
224
205
224
245
214
231
239
227
207
219
261
191
211
278
197
174
187
193
172
168
231
178
206
148
198
237
223
169
167
180
166
192
156
175
229
227
233
191
165
186
169
167
254
219
199
229
215
210
190
220
173
179
253
156
215
244
229
253
158
194
120
261
191
169
203
164
222
188
218
199
193
270
230
138
198
187
138
198
154
205
188
207
153
189
244
168
200
155
134
215
281
204
164
140
242
190
239
219
174
182
248
139
190
185
207
190
196
216
233
152
211
204
152
220
200
182
207
210
235
151
176
266
248
210
205
195
231
210
178
196
224
190
204
245
137
200
227
225
187
217
143
210
202
233
219
188
193
216
181
205
187
179
207
257
216
168
201
165
202
198
188
234
210
153
159
151
248
216
206
225
216
212
243
190
243
197
191
260
298
177
145
263
203
183
182
247
140
136
232
223
175
188
195
207
214
212
197
213
225
158
124
173
226
220
153
206
241
194
231
147
172
221
186
186
197
200
214
257
210
218
272
171
171
186
133
240
166
205
182
139
161
209
205
234
189
188
152
196
212
282
220
192
179
236
212
142
179
247
193
251
179
203
136
198
146
239
191
205
184
168
131
174
194
203
204
156
163
221
165
201
157
270
151
229
156
172
204
210
229
235
214
202
232
233
197
184
167
250
248
176
203
214
175
186
204
168
212
211
247
195
182
197
171
188
242
201
266
210
208
241
182
214
271
129
185
216
173
244
196
140
227
240
183
245
188
235
193
169
226
173
125
192
213
213
216
224
158
205
246
193
218
148
236
184
212
157
257
191
279
160
203
230
227
158
208
206
229
263
220
148
190
218
224
163
209
228
186
243
199
143
221
185
162
223
178
229
188
185
198
221
168
197
156
215
194
213
111
160
171
206
175
180
212
232
224
142
216
199
211
175
147
170
200
233
229
189
168
239
268
165
188
192
259
244
199
180
185
224
199
200
207
147
198
239
301
214
178
182
161
209
190
239
227
174
159
158
193
175
178
214
162
201
178
179
198
222
182
140
126
190
199
239
216
185
214
135
200
147
131
132
218
215
206
200
248
176
212
222
179
271
221
202
197
214
203
209
232
138
186
224
181
162
181
168
183
212
190
211
245
130
225
193
219
242
175
208
208
218
220
208
183
203
214
189
169
223
158
212
190
218
216
194
222
186
233
201
188
194
220
258
158
227
244
183
180
224
253
178
203
261
193
183
245
220
237
150
213
219
178
187
181
160
193
256
205
223
252
153
255
151
178
205
214
190
225
221
235
189
223
180
168
232
178
225
176
230
255
178
131
247
231
222
229
161
215
233
207
150
258
168
214
237
173
183
261
248
208
212
180
217
234
192
188
113
132
247
153
104
250
223
217
220
235
175
219
153
210
201
188
170
199
261
201
234
242
188
197
225
188
215
235
207
226
242
183
171
181
210
239
204
216
250
205
214
171
119
148
155
179
196
205
290
172
178
306
203
184
200
184
157
176
207
190
188
241
260
214
168
183
209
147
254
167
220
101
181
182
175
180
226
218
178
212
254
172
207
224
204
209
170
198
219
190
136
218
185
132
203
182
239
173
227
211
145
142
184
192
187
164
225
215
263
251
237
263
229
193
212
210
171
233
197
176
223
248
162
183
218
272
133
213
266
238
202
234
205
207
165
188
139
262
180
212
227
226
214
220
145
196
169
192
202
165
154
244
225
172
207
233
217
203
175
194
221
198
203
194
270
241
184
165
184
214
171
163
247
193
243
235
182
156
177
163
171
157
202
223
171
190
169
221
162
154
174
201
187
162
184
223
173
233
204
215
229
186
235
186
187
212
222
254
214
198
181
260
248
213
150
185
218
215
168
140
163
179
223
181
167
153
190
154
131
197
188
209
187
171
142
206
194
225
125
246
207
250
179
297
136
222
216
180
199
195
198
230
198
149
238
251
205
219
188
212
223
203
222
186
204
185
163
259
194
296
197
197
225
171
219
214
221
205
191
164
190
213
168
125
184
208
192
214
259
258
187
150
270
202
271
193
161
239
226
209
176
219
267
251
225
183
219
148
200
174
134
212
223
207
196
195
215
208
145
204
152
207
221
180
195
212
210
188
192
197
188
183
200
271
222
213
137
182
160
181
206
255
194
176
237
173
249
232
200
224
230
167
222
94
250
187
200
222
167
178
265
173
232
160
173
207
250
188
193
224
174
210
212
151
181
154
235
138
252
203
230
246
244
182
187
195
193
147
217
138
174
161
162
197
227
208
161
210
182
159
211
197
109
214
198
232
179
181
238
236
231
186
156
262
206
195
240
197
167
186
187
210
243
203
213
169
200
225
157
223
189
151
199
144
175
222
213
197
178
203
240
201
224
206
182
201
195
295
218
199
258
158
208
184
156
233
191
182
259
237
261
232
184
218
149
208
170
216
229
208
170
207
173
180
225
216
176
210
180
174
253
159
215
239
217
246
176
125
227
242
167
208
193
156
196
241
180
233
272
226
257
179
176
213
141
180
97
167
197
192
241
210
201
162
207
209
203
256
248
245
176
167
223
202
179
231
199
188
186
176
208
239
279
221
180
180
199
190
222
201
123
207
209
208
235
191
259
181
241
206
175
202
147
203
174
227
214
199
206
255
191
169
164
159
218
157
210
119
211
179
178
152
239
169
222
220
181
224
147
231
215
291
233
201
181
233
204
200
256
156
215
179
171
243
237
200
168
228
243
205
230
190
132
192
234
171
149
212
173
206
166
216
258
117
258
172
197
181
196
245
214
155
198
250
179
185
165
196
168
259
165
210
240
183
213
162
173
146
156
174
158
193
206
187
242
238
185
162
226
184
234
195
196
215
257
182
166
203
250
173
270
192
214
187
234
127
261
185
239
249
233
187
123
166
231
151
231
163
253
256
236
221
219
203
234
178
200
212
123
165
172
204
192
192
234
176
153
218
230
230
163
214
229
195
169
208
222
184
234
231
176
186
253
240
205
204
221
204
215
185
184
205
188
252
166
149
173
239
157
162
187
183
262
191
171
202
208
175
139
199
169
151
158
121
161
259
199
193
248
156
241
235
189
206
218
194
218
195
249
210
125
228
171
178
176
206
227
229
203
221
89
125
281
215
219
154
188
163
224
208
210
170
192
207
223
201
179
214
177
194
203
149
234
189
154
193
194
170
201
175
184
194
232
206
210
184
166
141
227
214
238
168
187
188
173
208
212
275
214
219
245
257
144
259
197
220
223
177
228
188
192
179
210
202
231
201
171
202
261
225
216
223
133
220
192
126
190
185
141
215
230
111
214
197
129
180
165
217
186
178
168
167
150
201
192
175
165
182
153
159
195
175
174
198
243
178
131
206
236
212
248
224
205
179
230
211
179
206
184
210
227
227
181
203
223
191
241
225
150
218
177
199
206
228
205
184
191
210
200
222
208
233
199
169
129
254
200
210
203
194
223
223
159
157
162
200
165
104
226
211
221
233
184
200
133
173
242
178
212
242
219
175
206
220
191
244
204
170
122
228
242
209
191
224
148
131
209
208
181
228
164
200
187
267
187
204
215
212
250
139
225
263
141
161
205
179
187
145
191
140
198
224
123
210
197
203
190
201
203
230
202
171
221
165
219
174
208
223
179
179
223
193
218
208
154
224
221
238
173
186
198
220
188
244
238
219
167
198
252
175
206
153
231
241
292
206
185
193
264
245
211
172
208
236
233
244
169
165
216
225
219
242
191
226
169
237
249
207
217
158
144
198
194
152
165
234
229
186
189
177
216
183
171
197
228
242
190
282
197
246
186
271
208
258
213
218
162
217
172
268
218
200
154
206
148
221
249
184
240
179
182
155
209
208
232
171
191
202
222
177
245
218
229
183
216
187
222
245
207
128
201
208
240
159
221
180
133
182
168
213
183
125
212
210
238
158
198
238
273
246
187
163
219
185
220
210
246
163
234
191
163
211
131
224
155
182
194
188
271
137
188
223
159
202
189
244
139
217
177
180
148
224
209
151
153
235
186
212
234
204
210
209
188
218
222
193
216
204
225
229
192
240
200
230
206
251
151
266
159
239
219
241
186
147
203
231
200
225
198
229
162
188
209
200
150
231
180
181
171
234
174
170
175
154
210
166
223
263
164
211
155
249
160
179
216
195
233
225
227
251
147
202
228
199
136
199
198
237
202
230
170
207
223
196
207
232
177
186
257
204
153
221
155
200
257
198
180
199
194
223
237
201
185
199
231
271
196
196
196
182
204
164
176
230
182
150
187
191
247
234
238
178
213
163
149
166
208
226
218
195
161
179
210
169
190
207
188
284
167
224
226
216
212
149
162
167
177
242
227
206
222
171
173
138
259
206
165
199
256
237
245
210
272
244
194
154
160
196
178
183
190
231
202
235
232
264
222
204
217
234
201
125
201
176
183
200
168
179
234
213
215
188
217
164
231
185
217
222
213
155
235
189
217
268
231
172
170
203
208
260
211
214
190
168
193
225
162
236
232
186
213
188
233
225
204
161
164
147
227
177
148
167
253
144
227
152
222
226
222
225
171
213
267
210
160
253
206
234
199
153
252
207
180
201
174
218
208
201
165
154
239
272
230
231
152
182
184
190
200
215
177
235
240
189
198
224
241
177
222
276
213
235
239
171
147
234
216
224
172
181
185
209
229
213
154
200
174
156
216
190
195
215
164
158
208
220
191
159
196
221
201
299
213
140
245
202
121
164
199
184
173
199
243
135
205
190
151
224
159
204
213
233
182
188
207
246
158
195
216
227
202
177
243
198
166
183
168
199
165
151
124
187
223
183
103
245
216
232
272
229
207
181
182
276
181
230
264
213
224
155
221
129
171
197
254
182
126
210
229
217
232
144
180
226
269
190
215
223
220
206
243
152
156
193
220
169
195
207
149
199
195
225
229
184
193
200
294
109
167
208
158
178
257
215
251
242
142
239
217
191
177
169
256
210
218
188
200
197
167
158
228
212
188
247
217
250
204
230
244
175
167
224
180
212
157
243
261
184
202
230
251
199
184
170
230
203
226
241
236
247
219
225
244
205
220
241
123
164
222
136
164
233
226
181
163
230
225
129
197
191
205
175
202
223
208
198
200
183
157
209
203
200
169
163
191
245
153
233
224
153
215
252
219
163
214
250
192
226
213
251
278
236
179
159
181
242
186
249
230
192
238
216
125
132
214
258
213
226
172
235
180
164
225
216
180
202
197
240
241
213
161
186
215
214
199
190
184
213
177
180
211
149
192
226
164
253
240
168
161
210
212
210
200
211
239
257
249
166
201
198
187
221
194
212
230
242
194
147
177
201
207
208
205
234
206
214
228
162
183
241
169
235
227
214
114
192
134
235
246
190
195
241
220
192
204
244
169
234
246
247
143
221
225
225
128
234
146
237
208
221
183
218
133
194
200
188
176
130
186
198
228
195
214
199
164
156
126
210
218
151
200
205
233
185
181
221
202
192
171
201
225
208
168
215
183
183
201
252
179
230
256
226
167
216
223
199
181
155
226
216
191
213
299
146
202
207
106
214
174
202
173
144
195
225
157
179
151
114
189
193
191
207
199
119
227
187
237
180
210
150
201
221
148
251
183
186
194
224
211
193
211
183
237
171
167
188
258
224
202
185
171
253
212
186
251
243
197
152
241
158
187
206
178
167
190
140
191
201
165
152
182
210
213
218
229
168
219
251
171
236
173
161
138
186
255
223
264
164
242
222
237
200
206
180
198
202
245
208
175
268
137
200
155
217
199
210
225
210
206
250
188
214
230
166
184
196
212
204
192
192
222
167
171
221
172
229
229
143
197
185
218
189
190
220
177
191
204
204
263
194
236
192
215
239
183
218
203
246
192
249
222
145
242
176
160
236
200
229
164
221
227
160
194
200
181
165
147
214
186
183
258
228
159
170
170
206
237
269
192
235
174
215
182
171
254
170
173
196
249
205
244
188
176
224
204
233
210
217
205
219
184
201
198
177
213
202
222
188
206
208
221
224
186
160
176
181
236
223
226
194
184
221
170
213
180
186
149
157
228
175
234
196
180
210
209
206
222
196
220
245
157
202
164
207
281
224
244
179
134
252
187
199
196
208
230
192
186
190
185
191
227
196
229
264
222
171
242
179
186
170
134
150
202
199
192
239
126
262
192
189
197
226
201
190
157
219
192
283
226
218
219
181
210
185
236
256
170
206
244
244
284
236
189
167
143
195
177
160
171
234
230
247
162
160
240
267
191
143
259
253
208
178
168
226
204
233
178
230
196
114
204
196
222
217
151
179
203
174
224
246
230
272
264
226
184
206
166
225
205
162
215
138
204
122
161
225
225
172
187
168
223
171
116
254
168
162
181
207
160
212
206
275
240
218
209
171
185
203
235
203
181
261
215
244
188
210
244
232
216
167
214
170
182
216
215
231
269
208
183
203
207
162
212
221
185
223
174
214
231
306
229
228
237
211
144
216
231
157
209
191
194
213
212
244
200
178
183
184
172
213
148
169
185
207
207
162
212
205
219
241
227
187
246
170
253
135
187
156
134
178
161
184
250
183
242
124
206
221
209
250
187
223
234
206
217
210
225
235
185
213
234
242
175
165
176
196
130
186
190
229
194
148
170
120
169
207
190
230
189
118
270
180
213
200
208
227
259
205
247
214
226
205
221
261
196
196
221
229
206
149
213
145
202
155
173
235
246
180
183
201
214
199
195
148
209
146
251
155
241
218
196
217
139
153
166
225
247
233
172
188
235
140
201
224
247
219
253
189
173
224
191
171
264
238
233
194
174
149
214
182
204
249
164
227
197
208
155
221
158
245
249
175
226
137
199
185
214
227
187
151
202
222
150
118
169
181
191
194
198
216
210
170
201
200
226
239
248
241
233
177
88
183
211
228
195
256
185
146
153
279
173
138
137
163
161
262
228
211
278
183
171
221
152
248
256
188
189
236
209
210
181
233
196
132
192
187
194
160
191
220
231
187
130
182
212
197
193
231
185
180
210
196
196
268
205
174
187
191
199
205
209
224
179
223
186
220
249
212
241
197
209
155
214
208
202
208
198
209
204
200
170
208
200
172
138
221
174
217
186
145
194
204
214
178
262
185
170
184
113
193
195
184
190
208
219
183
219
210
200
192
230
224
173
255
203
146
170
198
175
110
177
173
155
213
207
202
230
214
165
240
219
241
173
147
182
136
193
197
190
194
172
206
240
155
178
208
163
143
175
197
239
186
174
216
219
208
212
163
208
180
210
125
192
184
181
232
243
183
237
229
211
223
239
224
224
185
198
183
267
174
211
198
144
210
173
179
200
213
164
302
173
245
184
130
227
236
194
227
184
187
212
241
202
239
204
134
199
178
156
195
183
189
196
241
197
165
274
181
151
193
213
183
163
221
228
187
215
197
199
232
179
162
211
214
196
157
242
196
178
167
179
209
194
134
239
163
263
168
227
190
186
286
205
166
180
182
159
154
195
150
190
225
232
241
234
269
185
230
238
144
223
184
189
174
224
177
189
217
210
173
207
157
145
229
213
155
197
171
209
159
165
193
147
150
215
229
178
222
207
198
219
138
115
205
221
238
225
181
169
204
181
139
232
196
225
209
142
198
177
266
197
222
93
228
187
238
195
225
164
224
170
198
242
175
178
192
206
160
174
210
204
136
190
239
211
209
188
251
191
209
169
198
187
172
214
227
211
175
189
186
190
192
261
216
252
213
194
134
103
207
215
232
227
190
135
222
158
203
188
174
247
162
221
143
192
219
152
195
156
212
188
126
184
161
173
258
199
242
205
197
244
216
165
165
224
174
159
226
127
190
188
166
227
208
236
165
268
194
190
183
239
179
235
178
164
169
201
177
191
184
222
147
156
150
213
234
209
150
211
215
200
228
235
146
190
98
184
161
184
144
189
194
226
204
213
213
190
215
280
171
256
211
146
223
233
243
108
176
151
191
186
153
177
194
255
217
303
169
147
217
158
120
195
260
150
164
220
223
171
147
163
212
204
199
194
147
159
223
183
227
204
214
102
191
202
204
232
137
254
231
168
232
107
198
255
173
168
196
166
188
215
226
106
213
203
167
217
223
117
153
228
216
193
176
145
203
211
166
194
258
184
176
221
221
182
206
216
215
212
207
188
168
184
147
251
159
206
183
162
126
246
164
165
264
180
205
240
229
211
186
245
152
175
251
198
178
195
222
206
272
238
213
233
236
185
103
165
219
192
151
152
239
136
179
235
198
218
196
245
232
252
281
152
203
163
173
196
151
144
164
213
157
187
217
182
165
211
225
145
212
224
169
139
192
203
198
234
133
221
269
228
141
204
211
215
251
190
190
187
256
229
239
216
186
171
184
209
234
250
153
189
235
255
206
225
184
193
195
234
282
165
150
211
187
189
202
246
222
154
138
168
249
205
226
236
266
195
236
203
229
179
252
132
115
217
202
244
195
237
250
196
161
225
285
131
184
127
179
170
220
223
191
225
181
209
217
218
215
130
159
232
237
206
203
249
178
172
176
214
194
223
172
207
231
225
160
251
155
148
185
221
211
169
199
225
170
189
216
196
196
175
156
165
263
258
212
187
197
215
162
191
190
194
208
167
205
230
187
182
222
159
215
186
220
201
213
211
202
153
218
227
191
167
195
214
184
210
155
219
198
217
160
168
165
185
215
167
181
192
216
205
200
196
246
206
201
198
220
223
192
169
211
170
221
127
240
251
144
164
186
177
177
215
210
260
241
216
239
213
115
237
178
194
157
174
217
224
195
188
217
226
131
174
184
234
192
213
182
231
240
197
177
210
144
195
160
194
219
219
159
139
204
207
242
242
174
160
196
198
231
130
168
245
162
213
110
151
170
253
206
257
264
206
166
198
195
237
185
159
202
134
218
179
250
198
206
182
256
194
232
183
226
197
196
168
253
162
211
187
166
151
237
207
225
183
267
239
189
164
216
234
228
241
214
206
203
114
228
192
232
199
145
197
176
162
234
227
210
168
214
226
165
166
224
202
181
260
205
204
150
257
180
247
140
206
210
200
219
217
182
244
227
239
208
219
243
230
154
220
229
158
197
137
201
274
123
185
180
248
216
159
135
167
209
186
194
202
243
213
194
210
252
211
184
184
160
205
158
233
155
186
211
234
196
143
258
176
189
165
157
175
243
277
255
201
223
201
219
156
224
210
197
206
196
253
153
168
209
183
159
192
200
209
171
205
230
214
197
259
194
236
177
243
161
214
151
214
169
195
243
109
215
190
172
178
204
232
210
232
237
139
205
218
217
192
158
197
133
194
223
170
229
176
176
181
136
231
189
151
256
216
191
162
218
225
234
180
144
207
225
258
221
189
186
227
226
137
168
222
162
123
139
214
193
209
259
239
210
155
219
154
172
253
189
154
206
193
197
255
211
223
200
209
215
150
113
173
210
186
228
244
228
212
196
217
250
216
217
239
197
215
242
226
226
196
77
222
185
169
242
226
126
214
146
238
245
209
183
220
199
283
224
144
212
181
174
197
168
170
174
254
228
231
210
199
148
163
172
120
227
203
197
207
271
142
193
186
251
130
179
200
204
218
212
114
254
206
247
156
202
256
214
212
208
204
231
198
173
224
211
248
192
233
191
185
226
213
238
186
243
143
252
183
234
157
209
128
121
199
230
267
159
184
138
149
278
223
168
184
249
139
196
193
199
158
203
225
265
216
208
223
225
223
186
175
228
224
280
226
195
209
180
251
249
124
162
219
202
270
184
172
128
195
208
246
189
168
168
175
193
190
229
268
206
219
180
247
235
239
149
113
160
215
223
184
236
155
158
190
211
224
193
148
212
138
191
200
223
181
179
146
180
238
204
155
234
154
184
205
167
191
185
193
262
167
167
140
206
173
203
189
138
190
162
248
241
142
140
159
208
149
168
162
226
167
151
263
190
187
206
198
266
163
219
219
221
246
88
177
163
160
182
273
157
153
193
196
253
152
158
224
195
205
241
203
183
207
233
193
151
161
186
159
244
218
282
201
230
165
158
188
206
235
208
208
270
155
190
205
226
204
233
202
182
228
198
180
261
258
221
192
248
251
179
193
218
197
198
239
193
133
91
237
229
224
232
200
166
191
183
227
236
215
160
185
211
172
189
187
195
169
208
235
176
212
219
141
186
276
162
201
228
187
191
241
246
192
194
190
203
162
170
229
244
192
214
228
217
231
249
158
179
204
138
232
260
204
183
190
249
251
161
259
215
221
219
175
227
236
219
182
197
188
202
98
243
185
197
224
184
211
136
133
211
165
215
161
158
170
176
169
244
200
241
165
201
217
225
187
198
216
209
136
236
223
197
239
208
245
199
188
142
202
274
255
200
188
219
206
216
235
176
176
185
163
180
217
190
182
211
175
216
202
204
227
198
143
241
250
266
216
163
234
237
152
215
188
229
213
210
176
169
113
156
279
192
203
243
222
168
201
200
175
146
199
197
184
177
181
273
233
236
221
138
221
201
176
175
194
203
129
179
189
213
204
185
216
184
203
193
215
212
248
211
231
179
252
233
207
219
226
264
226
199
225
112
265
162
180
184
168
194
179
213
150
196
248
202
224
174
176
127
140
223
204
158
152
216
180
176
242
121
229
206
168
216
163
201
202
220
229
162
161
210
186
199
208
145
153
171
219
274
168
208
171
151
167
170
235
177
214
167
170
223
191
253
174
220
167
175
232
163
198
194
244
204
139
224
185
221
251
209
215
194
133
152
216
261
151
212
235
163
201
263
206
253
170
183
249
144
173
143
189
219
231
162
150
198
266
248
217
163
156
218
226
184
245
251
218
188
217
192
213
177
236
181
208
200
230
220
185
218
296
194
182
158
195
201
132
188
102
195
172
196
204
153
238
118
222
266
264
238
167
190
202
168
238
162
200
235
192
159
211
200
147
199
220
235
251
211
190
258
210
161
199
156
174
221
227
93
240
198
224
231
228
212
192
184
269
195
277
226
191
157
199
256
209
198
189
168
238
206
178
224
237
224
245
203
223
163
195
240
207
201
239
167
248
204
175
208
188
169
155
210
194
233
163
162
178
218
255
251
237
230
213
234
185
243
156
220
204
177
205
231
243
259
118
195
229
232
206
219
189
148
174
251
231
136
230
219
250
182
228
161
185
237
196
268
196
233
252
209
140
205
221
175
226
253
205
153
232
149
115
192
257
211
213
192
188
175
244
227
182
202
254
199
181
169
220
194
153
216
222
148
222
229
185
154
155
209
181
149
188
274
216
170
206
183
168
215
207
152
199
187
149
108
202
182
151
204
157
172
162
200
224
159
242
162
236
194
250
247
219
195
201
213
234
183
199
166
236
226
152
217
178
254
177
219
210
158
200
218
169
254
123
217
215
188
165
213
211
252
269
144
175
252
221
256
174
190
249
278
100
195
163
219
198
178
184
181
188
202
189
229
178
188
248
209
217
210
232
239
165
218
159
270
153
176
204
252
236
206
186
230
210
237
177
244
175
209
234
238
229
212
210
187
177
147
245
229
247
219
247
275
227
204
196
158
209
194
203
224
213
194
203
174
237
283
201
216
175
238
199
211
217
255
159
209
178
207
206
231
192
212
245
264
235
233
228
203
172
177
245
206
261
196
232
216
184
189
191
146
208
188
235
221
171
162
225
219
146
205
199
196
193
222
187
206
203
166
240
134
225
182
224
213
223
179
178
149
222
238
187
185
233
223
185
201
186
173
185
237
229
224
169
187
204
217
178
186
207
246
170
135
186
227
205
162
189
241
228
218
173
182
197
279
183
219
175
275
214
193
219
196
192
148
234
276
266
215
191
245
181
261
225
203
228
202
211
258
260
196
244
220
168
193
193
152
166
157
167
146
235
206
212
188
148
246
245
167
228
225
152
143
259
194
216
228
235
221
193
263
243
215
183
189
214
181
151
249
234
184
216
205
231
218
203
178
225
201
158
167
170
253
186
201
212
243
164
181
177
186
212
194
153
217
220
242
213
261
211
158
230
205
193
277
249
173
195
147
235
213
264
175
139
272
201
228
197
192
178
217
219
200
207
208
180
226
178
226
140
204
269
228
272
194
231
139
143
193
165
210
214
198
200
203
214
189
197
223
190
255
217
239
195
208
269
198
241
201
155
186
194
219
194
167
200
236
207
156
230
193
200
241
205
224
197
192
182
189
219
231
258
177
170
181
193
162
137
221
174
207
155
100
211
191
179
195
193
207
174
210
201
208
189
221
241
160
199
231
165
207
205
160
190
170
173
164
160
130
219
182
212
202
117
215
190
154
190
173
231
199
180
175
163
230
207
150
238
259
224
137
225
246
223
235
223
216
203
247
179
214
218
125
240
154
208
231
196
182
172
201
173
196
240
174
210
222
189
219
231
194
263
198
199
191
205
219
213
170
144
187
190
191
218
221
195
210
186
213
223
167
214
205
231
219
205
195
266
231
158
229
237
218
167
199
185
182
178
260
140
194
205
239
163
238
180
185
153
174
230
163
223
154
205
209
217
240
200
233
169
201
177
172
179
221
144
141
154
216
223
192
197
192
172
167
279
193
239
207
199
269
221
207
259
263
193
243
149
183
203
194
220
250
230
190
129
230
200
201
218
234
165
195
172
250
190
210
190
219
203
221
178
227
194
178
165
206
173
229
231
194
191
241
223
212
147
254
181
197
221
199
208
177
196
209
261
168
170
203
172
153
147
289
163
196
153
233
203
246
164
190
172
211
188
269
122
187
207
257
173
193
225
228
218
127
197
189
150
250
217
248
218
133
220
179
181
166
221
168
215
155
232
192
115
216
258
256
174
181
196
178
184
145
183
174
211
223
229
177
185
236
149
233
178
200
206
206
226
246
250
226
193
207
161
179
165
255
234
145
242
193
211
165
214
173
168
211
222
152
230
233
201
172
171
260
250
233
205
133
247
168
167
191
249
243
161
269
205
233
159
193
133
217
219
261
234
160
177
196
245
136
192
163
218
167
163
220
240
206
189
198
251
211
236
196
186
168
158
207
236
197
255
204
176
111
248
187
180
220
177
206
265
213
158
226
257
238
147
253
188
173
220
164
230
140
186
217
204
237
182
260
237
192
180
214
242
264
202
209
208
244
213
211
216
204
215
238
163
208
243
161
215
211
181
191
166
184
273
161
188
221
185
191
191
105
233
188
215
144
203
181
206
147
190
193
217
115
173
200
277
142
143
195
175
232
276
185
200
167
223
217
214
223
131
179
165
228
223
199
232
240
177
235
156
199
180
242
201
157
193
181
181
191
168
234
215
201
180
198
220
167
192
205
172
222
152
220
213
223
214
226
182
168
216
208
149
187
208
206
193
150
200
195
195
214
210
169
193
221
234
175
220
214
212
208
177
177
222
198
175
217
235
251
231
208
211
132
265
208
171
164
240
137
224
246
193
203
216
184
218
149
251
187
225
187
178
158
243
194
269
171
191
214
235
201
179
214
257
211
179
202
205
202
236
234
257
184
168
204
231
193
257
239
226
244
232
215
209
154
201
139
210
196
193
290
188
232
234
209
235
174
240
163
210
233
199
205
250
215
194
242
195
233
232
173
206
201
244
198
236
175
144
199
194
240
214
213
181
198
222
191
137
146
185
207
129
210
142
229
253
237
200
191
196
192
170
195
254
140
184
149
257
251
171
135
183
177
223
226
197
182
209
165
148
180
174
217
201
190
220
208
253
152
233
245
181
243
284
269
179
208
194
228
160
261
215
97
219
254
203
186
200
169
188
134
175
178
164
218
139
200
190
138
233
198
194
243
161
194
236
211
127
275
192
190
196
193
256
137
202
247
143
219
259
193
246
200
213
202
178
138
235
192
221
215
189
188
209
233
223
201
226
226
178
150
242
240
191
249
190
210
188
218
211
225
145
162
225
170
213
227
165
176
212
274
256
182
202
190
259
197
177
280
177
212
207
156
271
204
212
217
223
222
181
192
176
233
139
219
213
213
244
190
208
241
235
222
207
218
179
195
189
179
246
210
182
177
152
117
226
227
169
188
226
244
248
140
180
155
132
149
169
174
190
227
127
202
237
177
185
148
181
250
241
209
223
195
188
187
179
174
224
215
135
225
284
203
205
244
172
246
235
151
188
153
243
259
133
213
189
230
239
230
170
182
213
261
235
229
159
278
180
166
190
132
209
179
188
184
205
212
234
222
212
212
179
197
232
278
243
250
172
234
169
168
284
163
203
182
169
187
179
203
233
167
155
263
195
167
163
196
154
203
166
143
266
215
174
213
185
148
180
271
218
267
188
170
166
234
199
198
147
225
240
204
229
233
177
190
171
195
190
132
232
202
182
234
198
176
160
154
164
136
229
182
165
246
205
180
245
259
148
204
212
219
185
187
198
168
198
198
216
213
194
190
223
144
185
240
233
226
200
222
140
167
198
178
179
160
199
226
156
239
215
147
200
187
180
259
259
261
170
223
217
181
167
201
129
165
196
164
217
176
239
172
292
199
185
210
247
222
237
197
222
223
160
188
181
229
157
221
216
187
213
191
162
238
248
224
242
158
214
232
203
249
234
168
204
206
233
249
174
209
209
182
240
260
185
198
237
232
196
215
242
252
138
200
215
207
105
183
184
154
177
180
249
170
192
183
167
226
202
178
217
183
243
153
244
189
208
181
187
182
199
181
197
259
244
226
205
248
198
221
203
266
240
233
184
261
226
222
167
215
236
238
219
148
232
230
208
152
175
190
234
205
236
248
213
185
229
217
159
128
182
179
146
209
252
250
176
207
238
247
211
204
173
246
267
118
227
155
239
186
224
179
184
237
218
148
214
257
188
183
220
225
216
236
154
204
199
219
222
181
206
186
241
220
175
242
208
176
188
227
243
206
187
200
177
188
243
204
115
244
231
180
155
194
217
281
181
200
222
169
179
185
223
183
191
142
163
198
188
165
251
171
173
227
200
226
242
166
224
221
245
203
185
175
156
213
243
183
203
254
197
236
214
186
206
230
199
254
264
195
171
234
166
170
225
222
180
189
211
204
248
214
237
135
229
241
183
165
166
185
236
172
183
119
180
194
191
204
255
194
131
198
194
107
202
219
189
230
144
215
232
216
218
186
188
143
163
200
216
210
182
197
131
170
185
240
195
199
180
160
168
169
184
196
180
195
206
229
179
260
199
238
171
156
235
173
200
206
179
255
230
182
179
201
176
246
241
175
175
177
199
153
217
249
113
199
213
164
203
181
220
174
267
185
177
213
186
229
156
158
183
201
219
198
208
177
211
167
209
235
193
214
281
266
128
173
139
216
220
172
167
187
188
154
180
209
181
181
217
139
203
181
181
212
173
162
179
161
234
203
207
116
213
190
145
210
241
211
201
194
223
175
194
265
202
221
225
201
230
170
219
231
221
198
125
210
147
148
244
215
214
210
198
216
207
182
169
208
236
143
255
194
233
187
215
176
207
174
152
141
169
184
260
282
196
141
96
244
200
247
165
114
196
239
226
200
137
205
225
177
194
226
208
236
151
199
199
197
239
132
181
143
206
128
164
201
228
212
179
226
228
232
158
156
235
247
210
259
250
181
166
224
212
179
166
228
176
190
193
146
183
216
189
237
155
230
238
238
208
209
146
167
229
195
182
197
180
185
291
195
156
210
248
168
211
154
213
182
250
226
183
156
227
171
209
206
204
168
196
149
147
209
205
216
186
202
222
240
185
209
246
192
191
249
170
206
188
182
155
198
211
168
183
251
144
164
198
216
216
256
216
174
227
192
215
204
212
233
142
230
192
218
235
176
189
189
232
220
192
219
240
231
178
192
130
202
210
227
239
201
213
230
203
212
254
212
239
217
207
232
130
216
201
163
221
220
216
232
166
180
222
223
170
244
229
192
215
223
216
259
205
173
217
197
170
211
244
215
155
244
199
237
186
200
143
248
215
164
231
192
235
196
238
190
205
258
243
152
191
161
209
208
184
211
224
222
222
227
231
130
186
288
218
249
221
181
195
165
194
255
182
157
154
216
227
221
155
192
195
201
196
243
177
212
183
137
175
262
187
227
241
261
124
171
203
193
172
219
218
258
232
207
184
153
221
205
178
224
172
190
238
175
231
177
149
268
208
253
246
189
181
188
221
240
153
218
207
151
174
214
203
203
224
213
172
226
196
122
211
215
153
144
211
146
211
245
166
166
246
225
224
146
166
165
215
222
163
219
253
185
256
150
208
112
157
211
209
247
207
261
199
216
218
191
191
257
184
222
214
205
239
196
231
230
266
160
184
203
168
184
137
238
208
179
163
133
241
200
192
137
247
197
165
201
273
223
246
150
182
211
212
205
210
224
204
155
201
231
196
253
141
241
259
246
151
184
213
221
159
205
157
203
201
148
219
209
183
185
192
234
195
139
141
183
219
190
199
164
198
237
232
258
213
160
224
209
245
176
164
179
192
209
221
224
187
247
139
204
234
161
174
264
286
190
200
196
287
223
191
173
216
187
215
174
201
243
142
192
254
189
211
217
177
166
162
251
240
200
185
211
182
220
218
199
216
168
220
214
235
163
196
189
161
157
192
188
172
245
195
154
188
205
240
203
245
249
157
171
182
160
218
156
184
202
262
204
146
193
165
189
214
245
201
107
147
265
187
189
236
219
218
216
110
244
133
168
163
233
195
199
202
188
213
199
171
250
229
158
208
157
229
171
244
206
188
208
170
174
230
257
243
197
185
192
161
148
195
171
223
211
135
191
258
169
243
208
238
172
209
140
203
176
244
134
182
199
212
201
203
183
235
206
202
200
199
166
240
174
119
223
233
159
239
158
214
206
198
156
226
192
158
225
233
241
208
243
182
226
174
178
218
207
183
209
234
184
190
185
206
259
170
143
199
278
184
219
179
178
246
209
191
228
187
187
227
267
204
198
175
205
205
200
215
214
172
166
233
156
218
240
207
243
224
194
210
209
197
205
207
180
220
217
214
261
150
138
182
190
226
199
234
212
188
162
191
188
220
197
236
200
201
196
202
124
206
183
177
189
182
224
167
189
166
159
164
211
205
222
195
265
205
218
194
154
193
137
273
239
205
210
195
179
143
242
195
210
206
274
178
227
157
225
197
196
243
183
159
157
196
261
197
191
201
182
232
193
259
250
141
176
135
135
221
208
200
200
205
213
194
212
235
217
235
225
173
212
257
161
166
174
189
142
154
160
190
224
188
248
242
196
184
263
177
155
206
158
228
183
182
190
210
180
161
235
156
242
213
234
169
216
189
230
184
239
187
235
197
248
199
172
189
206
127
149
196
257
154
156
188
167
194
246
218
212
181
194
172
205
235
200
181
196
236
163
189
218
162
262
209
251
187
199
212
195
207
186
129
164
154
225
187
240
193
194
252
218
184
191
209
196
188
295
193
203
229
233
158
223
181
136
270
204
216
141
191
153
188
238
189
201
187
204
211
179
197
149
191
218
166
204
239
249
190
247
191
221
203
177
175
161
206
187
129
223
241
183
230
203
264
215
215
219
211
239
233
228
166
147
163
171
225
197
222
171
190
234
182
231
149
194
214
207
215
245
244
232
209
255
267
224
289
247
241
208
224
164
251
216
180
173
269
213
155
225
193
198
210
236
190
198
222
282
137
198
170
175
186
249
173
166
182
245
218
241
179
210
169
242
161
171
170
151
250
176
198
172
185
245
232
220
222
211
230
231
153
176
204
170
217
138
256
230
232
209
227
229
226
195
123
217
227
226
187
218
217
184
153
256
153
146
232
215
218
226
228
157
162
168
244
170
209
209
193
205
192
156
182
223
164
207
214
218
257
213
121
193
213
223
165
224
182
161
244
208
232
253
235
178
216
199
258
203
250
257
239
148
111
197
236
262
208
191
239
245
181
265
182
183
122
198
199
225
239
187
214
264
171
143
241
186
118
153
191
145
185
145
177
145
191
271
145
248
181
236
189
189
159
192
210
220
180
191
220
249
192
206
229
146
201
199
161
195
240
176
212
169
211
211
196
135
219
206
208
237
178
213
163
212
167
188
141
219
234
182
128
201
237
185
258
135
198
170
217
196
193
235
224
233
194
143
188
170
238
172
195
217
217
214
207
231
148
206
216
183
144
216
215
183
189
119
243
167
236
150
163
155
163
212
234
240
207
274
244
243
185
219
253
240
191
187
175
245
240
193
236
182
207
173
161
215
156
231
228
177
151
206
253
138
255
200
206
204
211
216
271
203
179
214
136
213
230
234
152
173
173
192
135
204
132
173
227
239
207
226
208
215
210
180
207
222
248
107
193
211
199
193
180
118
247
213
149
223
241
188
193
217
224
239
156
200
193
228
145
251
192
212
204
219
259
218
186
214
175
257
238
164
193
201
209
244
210
168
181
242
207
139
197
182
261
215
250
241
160
191
166
197
211
204
184
136
227
202
216
203
204
219
168
171
184
208
164
156
192
166
229
224
176
163
211
198
183
210
226
212
191
205
200
230
148
208
255
202
189
183
239
229
207
158
252
165
214
194
203
279
220
227
213
186
185
176
166
148
255
243
172
230
202
211
215
228
161
187
173
203
259
136
249
261
188
213
226
189
189
209
157
191
217
183
238
190
170
203
156
196
169
203
156
246
189
206
215
231
238
207
210
246
224
215
157
184
227
224
173
205
213
107
187
214
200
252
182
145
247
212
140
199
200
177
186
163
218
182
168
247
102
237
226
183
180
114
195
147
182
151
256
211
239
202
165
167
221
250
233
234
233
167
193
245
185
188
220
221
174
178
247
203
173
201
242
150
225
184
222
204
161
194
193
215
167
201
196
177
224
240
186
201
249
252
171
238
242
207
194
263
281
169
272
205
222
228
139
217
209
200
188
204
185
156
256
209
233
219
228
173
185
164
182
154
142
190
198
196
187
242
195
172
216
157
220
241
264
169
266
137
85
176
185
224
160
224
196
136
210
199
194
223
194
157
183
198
235
261
210
166
196
159
191
212
236
213
164
227
159
185
138
179
219
239
195
196
228
221
180
136
226
202
282
229
155
169
234
183
205
204
181
203
175
158
230
261
200
203
190
243
244
239
203
181
134
239
176
198
215
157
197
188
196
236
165
175
219
187
192
165
194
148
183
252
226
269
236
132
214
253
222
246
219
237
220
109
189
203
186
170
263
115
209
198
220
94
181
196
127
178
217
163
177
213
225
148
231
163
237
202
228
225
182
227
149
156
205
170
217
168
186
161
210
242
220
254
205
216
165
222
243
216
229
174
252
233
176
183
180
204
154
183
192
199
172
217
173
236
166
172
210
250
207
174
209
212
154
256
208
204
200
147
254
153
207
232
177
242
153
262
151
189
235
165
252
211
180
157
151
256
240
210
144
142
235
169
220
180
228
149
190
210
204
233
166
253
238
211
237
223
201
174
229
228
182
175
252
158
197
231
196
169
221
199
142
229
177
215
211
212
207
218
190
194
226
224
267
257
179
214
143
202
154
149
197
204
270
156
156
206
229
214
197
222
245
152
259
221
158
271
235
202
142
188
213
179
181
197
180
197
199
179
203
210
163
246
242
209
251
140
216
223
180
204
215
179
209
156
140
136
214
225
204
173
169
205
157
251
257
200
228
141
212
216
176
205
213
144
191
223
161
217
186
191
204
145
198
255
243
196
187
208
192
197
221
173
181
199
175
148
191
203
194
250
254
240
228
218
171
245
225
141
214
195
177
173
158
220
190
244
145
212
208
142
168
226
166
233
177
227
198
164
221
247
167
182
212
265
233
176
225
219
247
174
239
233
175
241
293
227
236
207
160
184
192
213
194
145
218
136
241
205
200
219
207
257
175
146
163
269
171
98
150
120
170
192
138
148
233
205
201
183
166
217
156
213
183
213
133
226
187
168
207
138
93
164
169
197
151
244
160
249
246
205
234
163
212
217
157
233
201
135
182
215
139
201
145
187
153
210
169
121
196
230
173
241
252
152
191
190
242
165
199
265
172
229
248
180
219
204
162
219
219
224
231
234
221
200
269
265
225
158
126
186
172
254
183
235
174
207
157
196
166
216
196
261
166
248
268
204
196
206
202
176
213
207
204
233
213
106
251
196
207
202
149
148
179
185
268
227
204
184
194
228
216
194
225
221
137
142
178
183
183
177
235
198
194
181
156
209
192
234
208
220
196
217
224
198
155
183
182
227
191
217
208
242
234
162
128
174
191
184
155
223
163
231
215
244
199
138
174
260
187
228
155
262
249
193
213
167
223
209
212
239
191
223
142
232
208
249
261
153
176
230
215
155
178
201
150
176
258
227
213
186
181
105
224
220
253
156
222
150
166
241
197
213
250
182
193
256
215
237
152
163
168
174
201
194
125
263
183
138
252
212
198
120
135
195
188
199
158
173
157
205
206
225
228
227
133
153
158
257
159
178
171
168
241
173
225
227
189
211
220
177
141
157
199
201
226
193
167
252
193
169
189
169
165
246
221
199
199
276
219
270
245
186
219
219
210
180
136
211
165
101
198
190
221
204
263
180
242
225
187
235
244
195
227
198
204
211
237
211
246
210
206
220
178
185
207
162
158
189
158
144
223
184
230
212
151
159
141
233
135
221
160
171
157
210
221
189
181
235
191
203
216
188
231
215
140
183
210
220
238
220
208
258
187
255
228
204
245
262
221
278
113
241
242
286
121
178
127
208
231
144
195
154
229
236
180
222
130
160
194
244
211
240
205
221
200
217
206
225
194
150
241
229
191
185
280
176
157
223
222
195
173
208
187
203
195
241
146
212
174
183
190
237
217
170
174
243
247
171
207
212
218
132
192
210
184
226
137
281
215
222
173
236
194
230
214
179
176
228
210
219
244
208
201
199
222
221
165
193
165
160
262
231
153
221
206
140
179
203
158
248
146
210
165
185
168
199
186
203
184
214
198
212
196
162
154
208
233
198
199
161
207
167
146
248
222
178
273
167
216
213
206
247
244
231
198
161
228
191
190
166
246
176
258
183
199
207
227
173
230
221
200
230
263
228
129
202
193
165
162
69
202
208
185
185
225
215
161
132
223
236
261
162
139
208
214
205
249
224
180
181
156
198
148
152
198
207
192
264
235
204
183
214
203
254
203
199
214
189
139
245
216
215
181
229
209
195
191
196
234
173
158
187
196
200
207
205
210
237
199
175
190
194
199
259
214
180
181
245
239
185
199
197
256
231
174
235
219
207
219
241
179
209
242
216
210
215
220
226
227
204
225
203
144
182
213
241
128
185
132
180
166
153
250
186
228
172
234
173
272
192
149
189
148
227
241
253
224
190
137
204
222
213
193
220
222
183
238
195
235
209
215
231
197
144
225
179
237
251
221
197
176
197
192
186
183
137
232
244
193
125
245
204
206
172
194
268
163
182
210
204
209
194
172
173
135
210
181
214
224
162
135
187
211
159
186
227
184
232
158
134
177
156
152
186
204
243
190
212
199
205
208
248
233
211
109
197
212
233
207
185
191
154
255
259
196
234
175
192
161
189
187
256
204
230
180
235
238
196
207
235
166
168
257
218
153
217
206
198
168
162
179
183
137
196
194
175
192
209
174
209
143
235
175
204
179
141
148
114
196
220
198
208
165
245
186
244
248
233
270
203
258
174
158
223
228
202
191
181
201
234
210
187
184
178
184
201
185
133
189
199
209
176
179
222
231
185
241
179
216
240
190
195
178
170
252
191
175
187
255
248
172
233
188
131
230
243
212
128
231
201
134
172
196
136
239
187
225
238
172
130
215
199
193
248
187
201
235
254
205
204
262
188
252
171
154
182
197
181
235
191
188
243
135
226
200
234
133
208
185
193
142
202
251
159
202
190
205
197
272
137
205
210
211
179
246
167
228
196
194
229
213
155
210
237
176
202
273
207
198
244
157
252
232
178
151
202
185
260
197
204
239
224
210
206
235
174
200
193
215
158
230
179
208
184
159
196
266
239
223
189
200
194
202
166
201
234
200
157
199
119
248
215
142
144
225
245
193
228
183
190
217
220
184
224
246
235
219
228
236
217
217
172
195
247
241
265
160
186
163
261
205
193
189
216
189
197
199
197
209
135
208
221
240
178
200
190
193
142
212
192
195
170
146
233
193
149
223
284
202
224
247
235
167
188
239
171
203
188
151
177
172
228
243
197
214
231
177
236
208
220
176
187
181
189
262
149
202
215
177
152
143
206
210
178
205
197
187
208
219
198
259
94
230
210
232
235
211
218
176
190
230
165
199
178
222
159
164
201
216
227
206
192
208
217
178
209
185
209
212
200
219
218
195
201
224
193
173
171
170
214
195
225
192
243
210
188
134
243
177
230
240
190
154
165
142
161
179
146
263
172
198
149
261
215
171
193
214
139
188
174
214
145
180
204
111
176
259
209
126
191
196
215
177
246
259
177
108
167
254
210
217
215
165
153
132
173
177
244
233
161
243
201
212
212
186
214
162
214
190
198
208
269
182
221
176
188
205
200
205
205
191
260
224
212
172
213
160
205
163
180
172
210
208
180
137
174
215
160
202
147
194
233
200
210
159
149
227
203
215
176
173
205
215
231
181
260
169
238
236
230
233
185
177
228
261
242
192
206
218
199
225
174
150
187
244
190
210
200
222
142
211
227
127
204
239
224
201
204
222
179
220
186
192
241
222
163
149
191
214
258
207
247
184
149
181
241
255
258
244
184
137
226
193
185
186
213
216
193
189
130
241
164
190
222
171
230
192
197
164
123
255
216
231
207
218
168
208
167
176
216
152
228
212
140
244
131
223
213
190
223
262
175
165
306
149
217
202
198
211
195
191
252
233
183
180
195
208
226
198
250
179
207
225
207
205
226
132
146
229
198
191
255
221
173
269
216
258
201
190
181
164
237
207
207
221
196
226
223
151
252
179
156
244
214
179
209
153
203
220
157
179
248
149
168
244
256
232
182
181
211
189
192
177
229
230
217
200
228
231
240
172
202
164
215
221
222
266
166
162
254
201
228
233
242
191
181
220
191
235
205
164
144
237
196
212
208
246
212
237
202
207
160
240
176
202
196
258
229
211
196
199
292
238
219
121
224
206
288
235
245
212
147
121
228
255
240
101
183
228
176
160
128
283
219
206
181
233
229
201
207
210
169
245
205
191
165
210
207
177
132
200
225
136
186
153
214
247
176
165
197
224
212
156
225
243
212
219
235
187
198
182
220
257
242
237
250
155
178
214
200
262
175
177
191
256
181
202
160
178
178
248
206
177
180
169
205
171
209
236
183
230
228
174
129
249
242
187
235
274
170
184
189
255
213
131
261
196
166
183
156
151
189
224
184
181
144
222
241
122
158
222
179
242
158
187
254
184
242
201
172
181
166
270
189
256
225
189
146
224
144
189
225
171
225
272
210
163
252
129
235
187
204
170
110
227
226
186
248
176
221
203
146
228
186
193
230
206
172
193
215
190
166
187
192
174
218
190
145
222
174
182
205
169
211
198
216
156
231
201
193
245
213
205
261
199
238
210
230
198
173
155
225
176
177
214
135
166
185
240
144
238
261
197
169
199
175
192
222
237
212
155
205
200
232
143
192
193
128
150
190
193
242
197
157
143
248
197
166
268
176
190
162
204
197
200
185
181
253
187
236
204
163
205
213
242
230
184
203
211
161
166
193
197
216
203
152
232
209
206
193
166
187
198
193
211
284
222
199
164
160
207
204
199
116
162
228
228
282
183
246
227
209
202
212
156
180
262
290
232
236
223
236
220
227
191
210
240
215
170
173
212
235
178
160
207
206
208
168
209
229
237
231
170
238
228
257
233
187
179
276
255
157
174
232
233
171
184
159
186
138
223
277
265
206
194
201
199
151
221
202
199
197
210
203
203
188
224
185
266
239
239
249
182
157
235
192
277
149
258
177
266
184
170
220
163
261
239
158
204
244
152
190
147
165
195
198
248
189
131
179
191
224
200
251
232
213
222
218
186
200
212
237
162
178
206
204
220
188
173
145
199
183
187
215
209
225
209
191
213
234
219
246
166
209
253
162
196
268
202
218
199
214
197
207
234
194
171
213
156
167
212
262
188
184
193
190
212
241
161
180
249
169
263
190
223
190
213
195
172
219
163
193
160
209
209
195
207
237
198
261
173
279
193
201
218
221
155
230
210
214
223
174
192
173
218
208
200
153
209
222
108
219
209
269
166
220
219
209
231
155
257
208
138
137
178
266
227
197
216
198
235
193
178
265
205
209
237
168
168
221
186
275
142
168
194
165
198
165
275
180
258
189
223
197
230
200
191
219
202
213
204
203
210
216
163
214
230
160
212
220
231
141
194
249
211
177
215
182
200
264
188
263
238
144
212
185
192
265
201
170
175
238
213
200
259
184
158
205
142
200
209
227
185
202
190
226
223
151
261
219
153
175
166
155
152
173
190
257
165
207
162
216
165
226
217
212
214
244
153
195
199
207
229
246
214
136
245
227
159
166
220
254
172
255
215
219
150
253
237
206
195
164
191
213
240
135
227
164
187
162
192
195
243
240
269
178
155
228
200
183
254
169
251
131
209
186
193
207
202
216
245
182
170
191
189
213
212
172
216
213
205
239
190
239
233
195
155
173
226
220
202
185
199
204
119
184
243
158
185
166
200
183
213
224
206
201
159
182
156
161
185
253
260
217
189
170
188
223
198
204
183
170
231
176
219
194
234
112
228
175
201
191
143
210
221
258
201
180
215
238
200
203
196
199
210
224
206
191
178
195
217
271
144
254
227
215
220
218
244
208
234
222
223
216
212
220
238
245
205
190
177
160
238
184
204
174
180
211
191
227
189
186
237
201
229
197
177
190
221
202
248
201
202
221
196
204
231
240
193
215
214
180
190
238
201
196
180
162
238
196
202
155
218
246
189
205
234
261
185
168
197
218
201
165
232
190
184
223
219
248
167
178
192
142
176
248
228
219
222
211
151
142
124
246
232
198
192
205
217
222
222
176
160
227
221
209
211
204
151
167
190
214
231
180
194
180
224
185
255
183
255
173
234
215
170
190
228
222
243
209
161
170
206
185
226
165
211
183
270
201
204
233
212
246
124
194
170
229
234
143
196
233
245
220
193
193
163
224
214
164
196
191
238
161
215
224
172
244
201
190
199
203
167
223
196
172
188
198
190
256
167
206
215
172
134
181
178
234
230
202
190
195
212
151
172
258
204
225
159
169
205
192
212
215
190
207
177
238
188
259
207
227
258
182
192
160
157
259
203
173
140
212
218
186
236
168
181
190
239
234
170
182
186
254
191
183
235
198
212
218
230
142
111
135
151
182
150
171
228
224
202
249
187
249
202
201
166
266
217
239
182
227
191
229
181
169
190
206
212
202
224
232
195
178
220
188
194
205
210
131
217
178
250
151
180
256
272
118
214
231
224
210
188
187
175
184
139
201
198
190
236
134
231
173
209
226
246
180
222
181
279
223
233
210
159
236
132
219
172
237
219
215
202
193
164
247
217
177
193
171
196
221
182
204
220
184
163
183
180
182
181
170
188
173
200
191
193
201
207
170
266
270
225
207
208
210
206
233
240
205
173
250
180
186
195
241
163
281
232
193
189
220
160
216
272
184
204
192
199
233
179
252
178
233
258
178
167
174
244
182
226
183
169
247
175
196
292
177
184
244
254
184
182
192
168
199
223
222
197
199
248
144
244
144
199
215
192
178
104
180
167
184
175
249
213
143
148
188
253
152
235
192
196
226
206
180
149
243
164
146
231
283
178
175
215
145
189
213
223
207
171
179
196
224
171
234
192
147
192
203
193
173
170
175
216
218
232
202
264
177
181
185
138
313
209
189
162
260
189
210
186
193
181
196
157
200
173
219
165
207
248
215
238
204
210
175
236
222
202
223
246
153
231
181
224
170
153
223
171
187
174
219
150
217
207
200
236
210
176
203
182
103
235
220
249
204
229
216
268
212
242
169
249
191
202
233
199
249
149
174
214
171
210
198
231
157
263
238
223
148
270
141
211
195
201
210
190
264
207
230
205
186
184
176
186
189
176
171
198
243
198
222
127
257
227
202
253
193
236
202
204
174
238
186
217
208
199
205
273
225
207
250
206
190
199
241
162
227
219
214
239
216
243
200
234
150
210
247
186
249
195
229
166
205
217
245
213
234
202
244
192
239
161
199
240
131
230
217
187
263
158
212
216
92
191
226
132
188
240
239
196
218
241
220
192
150
261
159
246
245
161
175
178
223
206
205
180
219
135
185
216
184
202
172
260
150
162
216
213
191
225
166
151
162
231
217
242
159
164
224
189
258
243
222
195
184
157
168
202
212
227
169
195
235
227
159
185
175
258
155
211
153
166
203
215
231
186
253
265
212
182
206
211
246
220
241
219
199
242
236
195
175
246
215
175
240
178
158
198
187
210
267
159
144
228
207
215
257
131
155
198
180
169
164
214
254
188
225
211
262
166
182
217
236
167
214
283
263
183
191
165
208
182
194
208
205
187
216
260
193
232
200
172
213
156
199
244
171
153
163
264
182
162
240
162
211
159
185
189
210
156
222
261
184
203
233
210
203
262
151
196
201
230
218
205
200
170
177
246
176
190
225
196
210
269
176
211
180
186
184
227
170
258
170
241
218
145
201
235
189
218
226
276
202
170
225
170
146
162
196
237
228
226
155
180
159
193
258
171
260
214
221
163
192
204
215
193
204
188
126
134
230
231
204
175
234
240
212
175
182
238
139
228
209
186
179
217
141
209
213
161
209
198
203
95
211
198
195
186
172
199
210
239
201
238
136
237
195
243
166
228
232
220
221
201
226
202
266
249
185
236
193
229
204
217
237
174
204
197
206
168
219
208
199
136
245
256
236
196
214
260
241
267
161
183
228
241
207
225
152
256
197
182
188
201
155
214
184
230
179
180
255
215
155
178
252
219
156
209
164
216
221
196
174
171
247
174
150
205
203
204
192
175
167
208
251
181
198
207
215
209
219
206
234
215
175
160
214
220
183
203
201
219
240
223
231
197
208
201
282
198
234
211
247
206
172
186
251
193
189
244
226
155
219
212
169
216
226
159
224
226
174
151
160
251
216
84
193
190
122
170
177
226
222
216
284
250
191
244
199
255
169
191
257
127
255
290
174
186
167
235
164
177
229
216
132
222
174
292
184
177
162
245
210
231
147
139
208
203
208
228
135
211
169
216
212
139
149
241
169
145
158
209
183
226
245
148
161
203
197
207
180
216
211
219
221
218
251
229
182
188
207
192
220
210
177
184
227
188
154
278
158
200
198
245
198
256
191
217
170
210
237
162
173
203
223
258
76
173
246
210
144
255
172
218
219
218
176
241
205
151
150
194
221
194
142
105
142
213
176
188
197
159
233
205
162
183
156
230
192
156
188
160
162
200
229
203
124
196
206
282
197
203
149
235
158
149
209
220
206
224
199
212
163
146
166
182
135
195
224
244
242
154
249
187
187
200
228
235
199
235
196
201
237
179
197
248
252
190
256
177
231
202
159
136
166
210
152
204
165
203
184
227
229
142
186
203
226
161
226
227
216
256
166
161
195
165
214
183
249
183
196
174
229
215
197
147
251
245
228
256
187
165
165
233
121
202
161
218
137
187
197
194
192
163
211
213
203
217
164
189
191
177
171
144
268
197
225
195
184
218
198
151
210
190
204
226
227
198
185
213
162
169
200
251
193
258
216
237
270
180
218
171
229
194
221
190
231
168
176
159
160
116
221
212
208
164
195
203
245
251
161
231
219
260
276
244
239
173
172
172
165
246
213
206
240
173
125
202
222
199
179
217
205
192
278
225
157
174
190
213
218
174
178
195
149
201
183
180
197
183
160
218
186
165
187
245
179
145
226
226
185
190
153
184
192
270
188
254
165
151
201
185
161
223
200
192
228
201
174
190
199
205
209
199
208
183
226
132
197
191
226
248
251
255
202
135
165
162
161
182
223
153
242
211
211
234
198
207
214
245
238
199
154
201
158
198
245
178
231
232
218
244
228
202
270
244
247
217
198
213
203
222
218
190
220
229
211
229
167
201
145
203
151
233
251
234
226
152
246
226
153
208
136
134
200
151
238
134
162
215
201
171
211
251
187
153
246
182
170
239
230
193
177
208
223
249
212
157
214
170
158
217
126
230
214
115
172
200
205
219
250
236
194
209
146
255
133
235
199
183
196
148
226
221
177
206
217
195
188
192
138
200
224
171
183
192
200
215
231
148
153
221
148
168
210
271
244
202
172
221
205
180
252
164
131
186
220
136
170
147
170
293
167
198
181
182
188
180
145
226
175
221
250
127
169
168
152
189
225
225
149
224
200
240
232
218
192
183
260
216
183
251
177
236
191
232
219
251
158
178
262
224
320
180
188
135
211
249
205
225
141
241
202
175
237
243
215
204
215
201
140
260
258
193
242
214
234
240
196
184
212
219
205
242
160
206
224
165
201
242
199
198
221
229
205
253
234
194
181
177
222
156
230
195
217
181
263
203
219
226
194
153
174
157
131
229
209
184
197
212
183
258
262
220
232
193
193
161
256
169
182
149
214
164
210
227
153
191
190
152
242
239
275
182
241
196
188
205
198
180
257
124
185
206
191
232
185
188
185
240
156
249
205
184
146
233
223
158
200
197
270
237
193
178
178
231
195
257
198
199
150
174
220
161
170
233
233
173
226
148
196
155
150
215
192
220
172
168
246
184
200
232
208
246
241
204
196
181
169
168
218
177
235
185
227
221
223
241
187
188
268
234
205
196
181
137
158
143
156
185
147
219
215
225
180
172
183
177
205
151
206
216
261
166
225
205
242
217
169
179
230
212
150
184
178
212
227
219
244
188
263
162
218
158
236
203
200
240
192
177
188
204
225
234
108
201
150
210
162
130
176
261
184
212
176
174
246
189
246
184
200
192
130
191
221
183
207
181
145
203
230
211
137
182
211
181
177
224
175
178
219
193
184
211
119
149
209
202
208
137
209
176
168
217
173
244
263
211
163
224
199
166
199
194
193
186
200
223
197
226
198
191
191
181
245
153
157
169
252
256
193
197
211
209
266
147
184
169
177
179
205
172
166
142
230
193
175
208
227
187
149
210
207
160
269
155
254
219
249
226
184
194
167
208
157
159
152
266
234
243
177
254
240
129
199
217
228
200
234
201
125
147
175
176
208
190
214
211
205
224
221
201
223
236
190
215
236
135
240
168
177
176
276
170
159
215
253
215
200
201
77
206
167
205
226
212
127
222
239
146
168
197
212
166
207
184
175
253
197
258
243
152
234
190
221
191
248
203
199
214
255
231
188
231
207
235
216
227
155
207
233
205
179
190
180
198
199
165
175
185
221
218
243
191
250
288
237
197
229
222
208
186
187
165
206
153
196
199
241
225
183
201
234
214
206
204
237
152
223
217
193
263
202
223
250
189
237
216
224
206
170
244
168
181
142
190
240
176
202
230
151
196
211
250
215
171
213
127
231
194
236
231
230
248
159
193
210
235
239
201
233
186
234
219
218
186
121
206
166
204
241
190
121
240
192
171
200
164
231
262
259
202
150
236
203
201
161
135
172
119
224
211
216
112
213
199
229
202
192
167
236
186
219
222
208
197
169
180
132
214
194
156
160
157
182
212
207
178
189
182
187
177
189
157
166
198
237
199
250
206
222
200
173
199
171
163
218
241
163
182
217
208
189
140
184
147
150
181
161
204
205
240
178
156
191
255
204
137
230
194
217
226
273
222
203
232
198
203
175
206
232
143
192
213
244
200
196
208
209
178
229
153
182
191
270
152
201
202
182
203
211
177
208
244
204
236
222
221
161
219
211
204
154
188
171
290
218
208
167
167
201
180
179
181
145
146
212
200
230
192
252
235
218
207
151
272
192
237
196
236
180
202
235
226
198
214
243
161
186
179
218
166
223
146
211
231
192
210
173
229
205
170
197
199
163
208
263
254
210
183
215
206
144
262
227
199
210
282
203
178
192
214
259
154
223
196
161
111
179
124
177
210
153
245
173
189
229
168
231
210
266
166
188
194
194
213
228
194
223
202
151
195
154
216
198
187
210
190
215
240
184
231
197
223
198
223
167
255
233
147
264
129
206
148
163
169
161
121
230
196
203
161
176
250
194
177
221
204
161
153
217
129
218
215
217
176
235
179
214
186
240
203
224
197
170
204
213
201
198
198
218
183
223
268
194
128
195
218
189
268
174
176
190
143
209
217
212
248
151
212
177
177
171
229
209
194
238
251
224
227
222
245
246
224
245
232
201
154
240
277
211
172
183
169
219
224
157
241
128
187
215
199
271
182
147
230
164
196
206
180
179
189
208
179
151
169
221
239
213
192
188
180
246
266
208
218
270
211
227
201
198
120
130
236
187
163
181
171
184
184
168
207
195
177
196
139
199
154
142
169
235
280
211
268
225
196
231
155
183
204
231
167
195
203
159
200
235
276
129
205
204
213
234
132
244
235
188
134
283
165
205
180
247
186
211
205
173
162
192
176
197
241
230
111
252
168
179
204
214
216
201
225
207
238
205
169
197
216
196
234
127
137
225
177
195
189
261
198
163
225
173
240
194
212
214
190
186
131
186
226
199
234
164
228
223
180
221
262
213
248
184
223
204
172
164
262
177
189
173
137
188
159
149
208
221
210
189
174
190
185
192
163
235
199
266
196
189
214
227
227
196
190
228
201
168
208
182
202
209
289
194
230
202
196
157
146
172
264
200
180
235
211
158
214
213
192
231
99
206
213
160
185
207
240
209
253
169
231
182
242
242
223
223
226
264
244
135
138
144
215
159
238
191
146
239
131
207
202
164
208
184
187
184
226
242
261
255
161
164
155
146
199
198
218
187
201
194
230
194
186
197
210
183
219
216
190
170
212
266
253
182
176
137
180
196
220
162
137
202
222
279
201
226
181
214
218
211
183
197
281
210
169
226
112
190
134
192
138
148
255
236
172
211
251
168
287
174
191
191
191
183
243
164
244
177
183
226
181
158
227
244
197
126
181
200
206
220
135
187
220
198
190
248
220
189
245
264
235
180
202
179
166
225
207
223
227
182
197
205
213
202
187
212
196
226
182
249
169
183
241
160
136
160
136
248
186
194
266
219
237
158
204
194
191
229
236
160
280
163
143
271
212
216
161
128
149
205
212
214
152
145
176
124
222
206
161
177
198
207
171
217
142
148
235
152
222
169
224
216
199
227
266
203
178
200
210
209
148
269
163
113
214
163
200
196
205
148
166
189
168
205
222
239
216
217
226
218
223
168
243
218
195
203
216
207
172
196
195
187
194
198
159
219
197
212
174
179
198
221
200
193
236
100
197
231
182
231
158
163
164
191
208
194
159
202
223
212
195
189
190
230
233
161
207
208
219
200
222
186
188
153
215
168
222
204
223
133
236
200
189
145
260
159
113
215
220
229
211
247
236
134
156
218
201
224
227
229
206
192
204
209
239
198
180
242
186
186
209
120
174
202
217
212
237
124
136
204
178
220
206
213
187
183
212
181
180
213
229
184
234
187
171
216
177
196
201
236
206
233
209
240
209
254
203
208
201
223
156
156
203
210
289
217
207
209
170
273
165
232
175
180
239
144
192
148
218
118
187
250
147
178
290
249
197
215
217
199
176
227
206
127
179
221
217
202
226
196
167
224
210
242
209
188
235
169
225
209
243
195
221
214
181
185
165
154
235
195
181
226
217
241
267
155
215
232
233
155
262
252
225
179
220
205
220
194
188
184
189
174
239
174
183
174
236
255
138
165
170
203
151
166
150
228
209
238
204
193
165
207
183
239
213
229
185
179
162
222
247
148
207
180
186
242
256
220
259
158
188
199
185
130
141
184
221
222
145
176
264
195
158
188
221
183
162
211
169
208
224
219
213
152
126
219
168
227
202
179
178
181
232
220
200
227
227
159
195
177
192
204
261
223
194
188
215
256
238
270
180
166
262
192
215
241
198
187
222
194
240
255
212
253
228
135
161
167
259
235
120
139
125
133
175
257
179
272
214
227
178
275
245
233
192
174
199
226
162
180
214
221
215
240
233
190
169
160
183
187
218
235
228
174
198
262
242
124
189
175
212
209
190
217
175
126
186
117
207
182
184
226
211
203
251
208
245
216
232
160
211
178
198
187
250
212
240
249
170
249
208
215
189
179
163
104
167
214
273
227
158
224
210
210
212
238
152
162
254
97
257
198
175
176
237
217
228
250
210
223
225
200
161
202
223
216
190
216
167
236
185
235
255
179
177
192
246
193
237
230
207
222
173
212
188
209
225
216
228
221
168
166
230
235
170
162
150
201
230
241
131
230
175
213
174
223
193
196
197
235
230
172
161
199
225
189
206
291
141
232
149
248
229
248
276
127
181
183
166
221
163
242
216
193
183
211
149
190
215
141
157
236
189
189
172
197
215
189
155
230
164
266
217
207
191
199
220
138
196
184
231
177
234
158
201
68
208
203
215
209
198
189
172
115
208
191
187
172
253
253
221
233
233
240
249
183
164
237
206
173
255
167
207
223
177
225
154
272
185
235
174
240
173
186
190
187
162
201
157
226
223
230
208
203
111
182
162
172
190
217
236
132
224
149
168
198
147
176
181
199
230
220
277
226
211
269
219
194
247
210
208
230
151
212
232
154
197
185
245
217
199
246
165
175
214
229
200
184
202
212
229
224
207
210
214
195
226
151
153
210
162
240
194
189
171
244
179
271
219
220
211
254
186
156
144
234
227
165
166
142
184
179
189
170
158
212
219
203
183
200
187
173
173
202
209
217
179
213
218
251
171
185
234
186
173
202
238
204
152
139
217
158
144
238
197
199
161
200
231
140
240
184
208
174
230
192
212
135
189
159
160
202
210
141
169
242
197
146
179
121
228
221
232
178
207
187
183
181
243
239
127
225
114
171
232
160
157
206
185
204
250
192
151
202
161
254
162
147
212
186
246
215
171
217
224
133
255
251
232
229
248
201
206
247
208
227
232
189
198
135
215
182
182
153
233
221
164
246
184
208
148
169
169
252
192
243
215
178
169
172
183
162
225
189
201
187
249
200
257
164
169
208
203
193
175
190
204
222
162
146
172
242
230
217
218
156
218
241
183
186
228
212
196
203
283
200
194
259
170
168
171
158
237
179
194
238
261
221
157
197
199
249
235
198
207
185
147
215
147
157
247
223
245
251
228
194
174
218
198
247
225
153
197
205
199
231
186
270
182
200
208
114
203
238
214
225
209
202
142
253
216
190
216
233
168
212
188
233
210
135
227
177
196
204
185
208
177
228
131
213
232
195
170
218
191
211
190
216
177
250
185
165
232
226
189
192
148
206
118
181
221
242
194
163
154
149
192
219
201
189
248
203
170
203
270
274
215
231
222
179
255
184
165
231
164
204
223
154
192
200
208
165
215
204
204
161
157
205
204
245
173
153
163
251
220
233
206
164
240
179
224
275
250
161
204
200
176
174
156
230
250
133
248
160
195
233
167
197
200
169
207
199
143
202
218
183
195
197
175
288
246
139
215
202
225
212
172
189
190
192
219
224
258
227
201
216
240
160
197
129
161
144
185
166
149
210
224
197
217
186
233
147
229
187
257
238
160
275
210
196
257
208
193
238
191
164
218
179
194
167
198
157
157
197
162
206
176
251
190
164
260
194
221
187
248
210
153
202
258
192
185
163
231
209
149
237
218
179
200
168
224
234
195
202
260
161
208
125
195
207
165
168
232
156
142
194
220
235
283
187
228
205
186
225
228
239
208
197
179
165
221
150
204
203
185
213
210
165
229
199
221
152
253
229
185
157
216
134
227
213
143
223
221
172
166
93
179
188
212
207
186
214
153
224
258
248
183
274
205
195
158
223
215
205
134
174
197
175
237
210
180
110
217
215
266
144
205
181
226
213
166
207
167
184
147
177
159
190
158
215
188
177
198
212
265
225
246
222
146
180
217
250
189
237
222
185
249
192
214
264
157
142
191
239
160
230
141
205
167
213
154
199
243
198
209
224
157
214
178
231
221
176
96
219
230
192
156
150
253
222
190
179
255
213
208
102
215
169
210
219
195
200
224
191
223
185
176
170
150
243
181
206
166
199
194
198
136
127
227
166
193
206
180
195
213
195
146
247
191
153
177
197
227
102
153
237
186
227
275
219
241
202
190
207
216
239
227
246
229
236
241
264
214
166
182
204
140
172
210
264
203
211
226
204
181
260
244
199
229
128
204
207
173
173
223
252
243
144
193
199
181
231
177
211
240
215
214
228
200
219
197
183
259
238
240
223
173
213
265
226
191
192
162
268
184
180
146
128
215
213
187
170
160
254
236
190
189
198
272
207
198
222
131
237
204
181
205
202
206
197
202
263
194
201
155
200
173
227
234
195
206
240
171
271
221
220
158
159
209
215
161
188
232
203
210
206
195
211
199
268
183
213
149
223
189
207
189
120
211
246
201
232
227
190
193
228
179
245
196
167
203
193
202
235
124
220
241
198
178
161
153
205
177
243
213
236
296
225
196
272
207
241
194
209
171
232
169
272
150
171
247
248
228
209
177
230
178
192
213
140
174
143
228
184
254
219
231
142
249
251
203
159
134
234
136
222
239
170
212
178
266
210
174
183
244
129
207
209
217
207
230
162
145
171
197
243
201
265
214
234
276
176
187
196
177
193
223
227
225
137
233
231
162
156
200
194
206
214
208
148
216
202
207
176
202
221
167
227
261
193
223
205
214
142
203
199
153
203
190
235
148
178
207
238
182
197
212
156
229
131
178
184
211
192
218
231
241
222
207
200
247
230
189
258
221
150
263
277
146
189
183
296
190
172
220
216
195
242
175
208
193
187
146
204
216
176
222
168
189
213
242
201
204
190
227
273
230
164
222
207
172
130
161
149
170
187
208
246
208
211
202
179
161
175
219
206
137
219
201
157
181
210
256
167
227
287
185
243
223
180
162
119
201
210
253
149
231
233
216
182
183
198
228
147
250
193
218
171
192
253
164
152
204
183
197
235
190
182
270
223
172
147
166
277
161
175
242
199
116
201
181
178
132
207
208
220
155
254
222
199
112
136
162
211
171
218
204
156
185
144
120
224
149
223
129
156
229
190
183
192
252
204
123
176
212
213
272
156
207
162
215
207
193
197
227
280
217
213
190
203
171
191
234
167
226
259
191
190
199
234
200
216
230
225
236
190
230
164
251
205
234
161
189
254
165
199
265
211
194
220
156
243
208
156
222
199
211
243
219
209
188
152
257
180
174
275
181
223
142
198
229
183
247
205
205
208
187
246
214
213
174
239
162
141
200
166
214
194
197
279
180
194
191
188
232
195
257
262
178
212
141
205
148
153
178
214
262
206
242
168
210
222
233
186
234
228
233
192
203
188
148
158
184
222
158
241
177
129
208
181
184
140
104
172
211
200
242
198
210
174
250
163
166
226
227
206
216
184
180
178
113
223
220
214
251
214
242
202
241
207
258
178
223
243
173
177
186
153
231
209
238
178
212
190
228
220
204
207
200
214
215
177
221
239
209
294
165
254
227
251
198
202
245
214
247
124
220
236
246
102
227
186
181
165
208
216
146
188
154
149
223
216
196
197
173
176
202
158
183
144
161
223
195
162
202
146
199
177
216
169
233
264
193
147
199
188
199
218
170
193
200
156
284
138
248
180
143
195
173
216
239
131
171
223
208
186
169
244
202
171
215
234
189
143
205
237
184
176
233
157
215
186
224
117
241
161
254
200
173
262
201
189
230
183
244
243
185
240
99
169
221
168
217
79
189
223
167
103
210
276
142
140
229
199
203
207
231
176
255
208
160
210
249
136
222
231
193
170
154
203
200
229
220
134
190
199
165
202
294
231
211
131
217
173
262
193
205
264
207
277
185
180
211
244
209
237
202
191
257
173
245
232
117
188
222
162
207
170
182
219
254
239
152
183
234
232
250
289
232
157
203
189
171
226
203
230
186
172
202
207
175
172
181
243
175
262
229
181
201
208
251
258
153
234
215
138
165
177
191
170
187
218
177
193
188
263
266
160
228
149
141
168
214
184
226
152
153
239
226
253
174
230
152
200
178
186
220
146
203
202
213
199
159
141
221
194
278
167
223
200
258
195
205
203
218
180
240
251
203
260
182
183
131
213
214
215
202
262
236
177
163
145
213
147
165
210
189
303
224
205
219
221
234
156
167
189
200
211
171
228
143
214
239
191
184
209
213
236
203
270
193
221
216
180
157
232
141
224
196
206
200
230
126
153
215
169
264
245
244
177
192
178
164
211
149
182
198
201
206
201
142
219
128
176
180
214
220
183
202
120
167
200
203
228
196
183
127
170
231
191
180
237
213
208
168
193
205
191
221
230
231
242
261
158
252
158
223
171
250
221
239
213
229
186
226
202
171
240
197
178
182
248
245
214
229
158
240
220
223
207
224
162
175
209
213
212
190
249
215
197
198
158
123
221
179
198
162
223
173
194
118
210
179
177
231
192
195
251
163
229
193
214
178
265
186
165
175
220
213
148
148
192
249
153
261
205
198
241
155
206
241
188
236
227
234
216
203
184
233
190
229
196
182
208
166
168
184
238
162
214
236
188
191
199
183
244
103
207
209
154
189
177
191
228
147
151
199
218
147
253
261
241
215
207
186
205
240
144
158
187
190
204
232
215
229
155
217
217
199
149
185
176
236
248
199
172
208
215
220
232
204
181
244
178
232
237
254
169
201
248
232
220
199
251
251
180
195
171
206
163
174
225
212
197
168
183
256
206
199
173
212
181
169
144
219
253
211
239
183
216
211
209
251
211
211
220
198
234
136
205
208
252
214
195
68
236
173
220
167
222
191
229
164
195
186
176
217
141
209
236
226
172
202
233
179
204
195
277
193
209
214
231
165
255
207
222
167
257
184
182
157
268
202
180
192
169
174
162
131
204
219
216
253
172
264
186
214
176
255
134
203
218
197
196
102
173
170
148
149
199
226
264
174
219
190
205
233
170
209
198
192
129
205
204
217
207
202
257
299
203
172
182
213
209
217
199
145
231
202
149
170
144
209
167
261
180
208
155
245
241
171
115
171
158
205
208
187
201
203
179
155
186
219
189
177
162
178
174
183
182
210
148
237
155
192
194
205
256
153
151
180
259
209
162
253
202
183
163
175
136
222
219
236
169
239
217
242
224
258
158
193
176
216
248
162
206
198
216
221
214
232
209
237
190
210
176
209
153
149
151
152
227
140
191
237
251
210
242
197
168
193
222
203
177
215
162
165
250
185
194
252
190
213
199
189
245
242
179
161
230
200
204
221
197
223
176
231
185
185
231
227
231
236
262
216
253
265
266
173
196
214
170
223
233
189
199
222
125
226
229
207
242
177
187
186
217
214
163
180
173
194
242
247
158
211
228
218
202
274
164
196
257
140
210
205
257
227
220
212
181
172
221
174
224
163
203
190
175
198
227
182
208
217
261
183
171
181
207
218
230
210
203
212
173
175
169
192
105
145
199
198
198
183
253
272
195
161
176
205
187
169
199
172
160
161
170
157
161
269
169
180
182
180
189
194
228
245
203
130
212
130
203
224
215
197
246
166
189
198
214
186
177
203
218
229
193
214
162
185
197
192
257
257
157
178
187
242
210
187
192
188
186
171
151
194
221
260
195
220
172
173
219
202
228
212
220
192
162
170
162
241
219
203
185
188
217
221
241
200
210
261
230
255
195
207
249
152
206
170
213
156
174
195
222
226
185
175
233
182
211
188
205
186
255
150
198
190
229
263
233
161
226
207
242
145
177
197
170
205
192
288
219
195
198
209
227
238
140
178
194
205
159
171
136
138
226
194
252
201
217
195
258
190
210
196
246
180
275
190
193
232
191
126
184
177
214
236
147
216
237
241
207
196
298
227
190
229
180
200
219
212
205
132
162
231
225
227
222
208
229
218
225
205
242
183
179
176
239
229
223
249
217
198
154
219
100
202
167
236
210
145
164
200
209
252
184
190
244
182
113
135
229
181
215
171
195
183
220
224
229
160
219
245
182
193
165
237
157
192
242
222
204
166
180
188
275
230
184
230
134
162
262
147
226
153
241
183
194
215
156
223
211
257
170
129
217
218
252
231
214
172
175
202
218
156
161
258
216
176
152
169
232
141
234
259
200
212
200
212
247
270
203
243
191
188
247
228
229
242
185
231
176
238
216
214
191
179
162
245
206
179
190
265
222
161
176
196
126
204
172
92
251
174
199
238
198
188
182
160
234
163
132
239
172
148
244
245
241
167
192
203
216
224
213
194
223
151
198
221
197
235
177
187
230
189
164
206
165
142
165
206
238
177
227
242
221
208
197
244
139
167
199
163
227
209
200
174
242
229
188
195
202
238
225
212
170
152
201
233
191
195
221
208
182
170
195
185
182
209
212
149
175
182
168
140
238
149
205
154
202
186
188
182
200
250
186
191
176
203
204
190
173
199
144
145
215
208
210
202
258
175
177
130
152
196
189
245
219
209
118
173
196
242
215
201
244
162
174
285
170
232
179
248
181
209
210
232
190
242
175
199
188
185
177
237
194
221
180
222
219
196
256
174
117
189
230
182
181
220
160
200
205
209
114
236
175
189
231
155
213
215
184
209
240
218
183
206
209
174
233
211
190
234
118
228
270
236
233
281
211
229
228
158
232
240
213
170
209
271
196
239
206
273
117
254
247
198
261
223
221
211
158
205
221
176
160
185
157
89
162
181
174
257
244
182
221
226
191
174
229
178
183
175
120
260
117
257
242
179
193
181
192
206
173
198
165
158
230
201
199
179
206
161
184
211
235
204
164
159
179
214
275
151
242
214
224
190
133
214
167
230
124
223
161
237
210
175
202
148
211
220
231
151
235
268
201
203
218
243
250
221
198
166
160
277
230
236
197
182
158
208
197
224
202
260
231
256
209
176
207
185
248
157
193
239
174
155
238
196
228
246
226
175
100
145
260
260
218
173
182
190
210
187
251
226
190
207
198
154
189
241
146
212
201
239
247
201
190
201
193
233
149
212
210
179
193
156
229
209
184
252
251
212
132
232
195
219
139
209
182
174
195
181
206
183
209
232
167
97
231
205
149
244
190
166
187
188
184
141
187
186
167
229
235
194
185
225
180
175
190
201
221
238
166
145
204
135
209
236
196
247
184
161
219
197
241
179
175
196
216
141
220
199
271
129
201
239
187
191
237
171
196
210
186
155
258
229
205
177
245
198
189
195
230
254
212
215
250
185
176
246
221
154
224
162
195
227
233
219
220
166
215
145
216
217
168
187
227
166
195
159
202
266
198
271
191
250
218
210
224
172
233
240
160
217
249
218
244
217
179
247
194
170
217
132
189
209
206
289
204
173
252
211
190
190
247
212
185
223
211
220
220
188
222
209
232
213
164
168
200
153
203
214
177
253
160
231
215
219
141
235
212
195
227
267
199
194
152
203
188
225
230
236
229
169
168
180
233
198
236
156
167
226
190
264
143
226
195
205
241
173
214
206
232
261
219
192
243
212
220
169
227
201
241
184
148
147
212
249
184
152
184
143
178
230
218
193
155
214
130
211
245
218
246
253
239
182
201
165
261
199
180
237
176
273
169
219
233
155
174
218
193
200
257
228
147
199
173
196
230
133
237
205
179
153
189
167
216
236
149
202
153
221
176
219
274
247
127
188
144
145
233
243
216
248
167
196
165
194
205
180
201
212
199
228
216
185
260
177
179
210
229
133
162
151
179
133
154
144
210
252
168
182
195
169
162
130
185
234
221
248
210
216
177
233
214
229
140
203
271
116
228
255
197
237
229
201
176
166
207
244
232
193
187
171
169
188
195
209
211
173
228
247
217
227
133
229
256
210
170
161
192
241
199
167
234
258
159
177
224
150
234
230
235
109
192
244
178
281
156
199
205
182
209
242
223
200
239
211
218
175
208
178
254
214
160
258
161
175
209
161
228
197
226
205
211
219
227
230
248
201
223
202
256
215
241
205
204
286
217
190
263
219
166
170
161
225
219
207
160
150
205
210
168
160
183
153
210
213
195
199
228
190
215
235
119
219
226
222
191
134
176
177
170
224
217
202
214
244
193
253
133
198
216
198
179
96
213
220
168
179
133
213
227
230
222
152
195
204
166
235
128
226
205
223
196
185
246
221
241
186
176
208
178
177
177
203
232
250
263
160
207
197
213
201
294
221
212
165
184
221
206
162
205
190
143
199
237
141
250
213
212
234
208
191
213
224
199
254
204
237
234
98
241
196
228
238
244
196
212
177
157
195
232
219
220
278
202
185
191
96
214
157
188
198
234
236
151
161
286
189
173
183
259
180
208
200
210
248
183
216
174
203
229
199
207
160
223
239
199
178
202
158
227
284
175
283
173
256
201
200
193
214
178
160
203
184
188
189
162
152
138
204
197
159
217
199
213
178
191
170
240
178
193
251
199
192
239
230
185
188
207
219
179
226
132
196
231
220
177
196
176
204
203
171
260
216
221
175
207
241
212
195
185
167
209
237
242
219
256
232
214
215
184
208
200
185
225
167
142
212
149
173
257
153
218
183
279
246
158
194
205
234
238
168
192
103
189
225
205
196
209
208
238
176
212
187
125
190
171
185
201
190
195
243
242
216
237
252
180
156
183
249
212
173
193
170
156
238
204
230
205
188
142
173
199
191
252
150
191
140
180
154
147
218
180
153
219
251
213
221
189
205
203
199
233
179
249
247
187
186
172
183
179
205
196
219
180
181
228
175
232
202
270
226
127
255
230
238
194
195
219
192
195
196
195
202
233
214
233
193
214
199
212
251
248
234
213
255
179
197
212
186
170
212
203
232
198
233
183
213
231
241
220
155
214
206
229
225
244
235
176
211
274
214
194
222
221
192
151
238
182
218
234
212
193
246
200
219
224
225
242
215
150
178
193
235
131
160
225
177
172
232
124
215
267
177
217
216
213
235
183
195
218
191
208
188
162
194
101
173
166
259
224
157
194
114
182
220
143
192
178
174
216
233
201
214
231
232
147
191
115
244
172
209
133
230
211
216
173
229
137
223
226
207
215
168
191
200
204
227
155
216
170
215
234
263
178
220
176
249
209
241
167
174
181
143
134
232
222
255
137
188
185
180
204
228
197
150
227
194
189
181
162
226
152
194
217
235
197
218
238
223
199
194
211
214
222
227
231
287
181
239
205
247
177
241
222
144
204
214
233
250
174
209
151
199
235
221
200
138
223
165
208
196
197
130
266
268
255
157
213
229
177
226
215
201
200
223
174
178
184
194
209
202
172
217
199
195
210
233
198
122
199
164
159
166
209
169
161
192
245
161
197
218
225
220
213
211
160
208
216
212
273
152
197
210
201
205
180
189
153
240
249
193
181
245
175
233
203
193
246
220
197
233
206
220
156
220
156
246
243
225
227
168
190
227
228
179
226
230
200
210
224
231
201
219
158
235
236
159
230
244
198
255
194
254
184
146
201
222
200
203
199
186
231
194
180
211
216
191
107
162
195
159
202
238
245
203
253
133
169
232
176
190
201
241
164
166
211
191
231
130
207
176
204
164
175
200
168
187
227
191
111
191
192
181
124
204
204
168
211
227
151
161
203
223
168
209
215
180
180
203
224
148
173
158
128
227
190
159
184
218
159
161
245
187
176
159
205
203
197
212
180
206
167
193
179
143
214
265
286
194
263
236
190
199
261
151
200
222
203
173
201
228
195
214
207
187
256
168
208
173
234
212
220
182
276
180
195
174
223
164
221
244
202
211
160
188
207
188
157
186
223
260
141
256
204
206
208
221
172
204
201
226
170
138
223
205
176
224
188
143
164
192
169
234
230
167
160
197
180
174
159
177
237
265
259
159
233
230
212
218
178
208
211
208
141
135
185
225
263
213
215
224
242
187
178
180
280
200
177
195
193
186
184
143
221
145
238
221
198
188
195
206
261
214
167
196
176
223
248
155
224
242
200
175
203
208
175
208
203
243
269
225
217
166
164
216
169
192
244
207
259
232
252
190
237
153
209
186
189
130
251
242
240
219
186
152
171
158
162
167
210
208
199
144
182
227
150
164
149
175
231
204
149
212
240
250
176
241
143
262
252
144
209
217
188
179
167
177
197
227
195
182
231
104
255
249
198
215
198
145
164
140
188
210
175
210
168
279
205
189
100
224
191
248
170
204
197
193
243
201
247
193
248
190
220
198
206
214
180
182
177
214
232
205
229
200
220
169
207
203
232
176
187
211
162
243
186
227
202
231
188
151
228
234
146
164
257
196
239
253
232
168
199
224
182
246
228
229
218
229
188
159
168
267
164
250
213
196
160
207
226
183
174
182
276
233
199
149
193
192
259
290
204
158
222
200
196
190
181
168
229
256
196
217
198
198
174
229
224
157
227
188
137
161
206
184
181
204
181
248
147
255
106
192
229
237
178
201
256
203
143
194
218
239
181
223
174
225
180
209
253
173
164
197
220
176
192
245
140
205
223
255
151
138
203
170
206
180
113
123
194
98
177
216
208
169
174
201
204
192
212
232
191
204
208
238
198
187
186
247
203
206
195
239
251
174
173
238
264
213
216
167
227
231
195
207
174
191
171
155
236
197
164
221
247
259
214
229
171
189
178
155
240
157
200
153
163
121
277
187
198
193
248
176
150
162
208
216
189
210
212
241
214
196
159
208
156
221
174
154
243
259
195
159
220
157
226
261
139
209
159
184
204
165
172
226
193
185
245
197
263
216
214
226
230
119
244
240
162
247
266
162
149
197
182
229
210
199
149
274
188
184
200
136
219
189
226
241
199
187
222
158
152
272
174
186
273
197
194
196
218
152
140
204
155
130
179
252
205
242
192
202
186
173
233
167
212
175
189
204
224
193
208
213
165
234
206
144
204
199
201
190
248
233
226
215
228
160
155
197
148
203
227
173
200
207
156
204
230
269
154
217
215
175
205
248
169
168
243
196
167
204
254
181
180
154
149
180
219
184
169
188
205
248
229
185
224
221
226
185
218
188
246
233
145
233
189
229
154
219
231
186
179
208
218
204
241
245
186
211
211
266
195
231
239
196
215
171
236
219
237
178
206
232
229
238
166
161
180
155
188
174
218
261
236
212
219
169
151
200
234
203
254
193
163
238
211
201
201
202
213
167
140
207
267
172
185
195
203
204
224
228
222
234
135
185
193
206
227
257
172
170
237
142
242
159
204
202
165
225
188
189
194
192
215
189
178
217
197
181
238
216
235
236
248
139
159
203
228
152
211
179
141
133
120
180
194
242
149
244
132
163
156
174
184
162
238
209
193
202
168
181
170
239
239
210
177
176
197
188
205
188
195
171
220
204
278
199
155
183
256
214
124
172
154
272
207
189
125
217
200
217
240
174
194
226
261
165
218
172
272
201
190
190
190
249
215
219
163
182
224
235
201
215
238
213
136
175
201
124
154
201
223
157
207
205
276
202
199
156
167
184
170
228
250
208
157
210
201
233
235
185
231
160
255
154
231
256
200
236
237
150
207
204
259
223
225
187
183
215
222
161
179
204
230
256
257
162
214
242
248
209
203
221
189
172
239
208
240
245
187
180
233
166
181
254
177
222
192
157
158
240
164
210
204
187
238
169
241
237
139
174
221
167
158
192
190
236
270
193
185
186
219
229
214
232
225
234
163
224
190
178
217
229
178
159
119
217
201
181
224
257
195
263
184
195
225
171
129
176
201
272
196
174
185
208
220
207
248
168
221
216
216
175
172
234
148
254
183
221
181
164
138
208
197
270
179
177
216
222
207
270
211
168
258
189
195
179
242
198
201
221
195
229
173
153
168
194
174
199
204
215
239
247
233
268
246
213
213
179
167
152
158
203
284
218
254
269
164
230
230
185
221
173
156
149
239
210
183
239
183
245
161
224
230
225
266
187
168
185
189
273
127
205
114
157
195
205
206
143
156
216
192
166
236
237
188
226
216
211
182
179
199
167
197
168
236
209
196
209
188
196
190
211
192
230
191
233
195
147
209
174
148
216
170
205
160
141
239
285
216
119
134
160
190
205
154
232
266
166
201
174
205
231
215
223
229
245
170
227
216
141
174
220
240
191
193
268
235
255
170
216
199
218
180
239
220
225
217
187
249
197
201
201
137
225
225
250
215
161
240
279
211
197
188
257
173
165
158
242
191
206
242
139
249
219
148
221
148
196
198
168
192
191
139
168
245
252
215
196
181
251
162
212
234
232
163
191
197
182
182
194
186
161
230
163
214
225
198
204
175
182
221
237
198
248
201
232
207
249
246
208
158
249
226
204
246
197
190
232
154
163
245
236
201
268
186
165
232
203
218
225
190
197
176
213
194
199
216
254
240
212
269
191
214
232
197
161
223
180
160
219
189
187
213
229
241
132
225
221
155
199
240
215
190
212
191
197
196
181
224
219
175
229
199
214
217
230
225
144
199
174
192
175
173
195
180
172
209
220
214
174
178
223
142
179
230
193
207
242
260
184
186
189
195
221
130
265
186
238
125
230
194
173
195
181
173
168
193
217
146
188
234
234
170
153
204
179
201
221
246
280
215
227
160
178
165
164
155
186
149
210
183
277
176
209
228
230
218
224
204
208
193
212
189
215
256
162
244
200
252
258
197
247
175
210
115
235
127
239
203
181
132
214
259
182
214
247
163
236
246
186
194
211
231
226
107
189
129
261
265
118
233
257
239
145
228
214
203
219
153
213
195
154
170
214
241
241
206
218
190
186
169
141
250
248
193
265
215
187
143
220
216
222
216
220
204
258
223
261
165
253
182
224
265
158
163
223
249
124
196
198
209
204
212
102
133
211
163
242
225
252
150
142
193
163
136
175
154
200
263
174
198
184
204
159
175
196
108
187
220
193
233
199
160
242
160
197
194
178
271
214
220
250
185
202
224
198
216
184
218
255
184
236
144
203
202
265
238
193
188
187
262
218
162
166
224
171
237
240
201
171
210
161
203
192
225
241
233
181
183
181
238
142
177
203
249
209
190
224
173
188
178
216
261
206
135
209
223
224
106
196
218
187
229
265
206
184
220
276
193
197
201
170
170
190
210
195
170
204
224
166
196
172
177
125
176
206
221
194
251
299
163
181
233
274
220
182
226
226
174
176
240
210
203
261
159
154
204
140
267
233
188
195
209
212
212
213
155
178
163
169
170
163
216
229
206
205
232
239
203
207
163
140
211
190
246
222
185
214
202
229
231
207
210
242
219
250
167
274
227
196
278
279
231
187
190
195
190
183
167
188
226
258
217
170
155
164
183
177
191
195
224
207
249
216
145
193
197
134
122
208
246
246
225
224
246
158
122
208
197
212
151
217
210
208
214
170
121
234
189
184
217
174
246
210
128
116
172
216
195
207
189
161
194
199
185
155
181
225
244
194
193
247
212
257
193
240
212
123
208
223
236
211
170
249
143
234
198
167
195
170
175
218
243
152
176
200
195
216
218
164
175
244
256
126
162
245
186
189
184
182
110
162
205
197
221
181
171
184
195
287
169
248
163
214
164
181
160
178
230
214
240
211
206
162
270
234
260
188
201
149
187
251
216
231
240
167
205
206
137
196
189
258
208
223
206
258
198
260
211
228
210
242
244
220
155
198
224
146
238
214
256
271
235
254
252
227
239
190
213
147
205
210
214
249
181
181
185
125
181
214
154
189
236
226
136
216
268
202
213
255
202
218
162
236
201
172
248
234
157
192
189
226
210
203
204
220
259
270
187
252
198
184
268
183
215
158
216
128
223
232
193
244
170
223
230
192
176
199
274
143
232
173
247
269
198
224
177
170
216
177
166
181
241
192
179
156
236
110
233
263
243
255
230
248
162
205
243
199
183
193
137
218
222
222
200
169
217
235
198
160
186
143
175
160
180
127
211
188
218
244
191
213
195
183
188
181
244
213
243
202
197
227
192
258
214
188
214
141
201
248
218
203
188
142
260
218
210
178
214
196
140
220
214
240
179
196
195
228
189
229
148
190
229
206
252
149
239
242
177
246
191
256
194
205
210
162
197
198
151
236
162
240
199
219
208
185
242
209
299
232
169
180
174
197
240
259
130
180
301
188
194
235
191
180
207
199
169
155
218
172
223
225
214
208
191
164
248
244
193
191
195
176
170
200
183
210
209
200
203
253
198
160
138
190
211
247
159
207
220
248
145
226
254
185
213
211
208
222
196
236
183
205
200
152
200
241
195
241
192
239
261
222
212
218
147
212
220
160
248
212
226
203
211
211
206
181
195
157
157
260
149
172
213
184
164
216
219
144
224
198
173
285
241
144
155
223
149
105
203
154
144
263
227
195
269
147
196
211
263
209
213
131
193
129
241
156
225
179
100
226
184
170
216
201
247
220
241
177
196
217
160
250
230
200
181
194
246
214
220
216
142
279
192
208
225
281
215
222
180
173
163
270
227
242
245
239
230
167
220
182
207
186
271
216
226
191
258
171
137
208
232
230
205
137
150
188
238
172
251
182
181
232
153
155
194
176
177
232
240
264
200
212
171
218
218
220
176
207
205
128
170
199
195
227
195
165
190
205
169
186
206
125
215
143
193
241
199
246
162
155
170
169
184
270
201
258
206
205
166
227
179
180
202
102
208
268
258
175
274
215
204
160
189
144
253
238
217
240
185
151
131
140
192
153
178
151
149
157
206
260
207
220
250
197
191
213
207
234
207
214
201
224
131
176
208
186
243
189
229
186
212
187
223
171
250
219
132
219
213
204
227
259
241
186
185
175
224
150
197
150
209
164
198
182
209
139
194
232
159
262
232
212
171
233
221
186
189
201
159
230
169
235
170
230
204
197
250
228
190
218
219
217
125
163
202
211
167
243
218
199
213
258
265
154
157
232
179
267
199
219
230
180
198
186
174
221
224
195
221
170
222
224
197
211
227
184
167
205
254
227
211
202
158
203
230
123
176
268
160
172
234
197
178
239
243
177
202
226
218
214
234
223
169
230
253
236
215
204
198
190
262
213
196
197
195
198
186
263
254
143
195
167
213
193
238
243
170
193
173
165
169
212
158
207
176
163
133
151
245
202
151
195
209
196
171
158
187
129
196
233
170
197
180
227
198
191
260
251
168
173
199
219
159
180
248
215
177
144
181
165
201
199
229
192
181
268
225
270
158
213
206
213
123
169
189
224
226
207
165
217
219
232
256
250
209
238
199
258
230
146
234
193
188
130
160
240
226
231
286
240
203
250
198
196
171
162
198
216
186
223
155
268
233
248
149
216
179
236
187
191
195
169
217
186
200
166
179
231
215
249
171
212
193
187
172
155
168
148
200
149
210
205
205
262
159
242
125
227
242
134
218
206
163
209
208
213
269
203
202
247
202
209
166
170
159
212
236
195
158
172
224
183
171
258
241
198
248
170
215
189
223
182
217
231
234
240
203
230
195
240
211
182
205
183
193
182
261
191
180
187
242
250
198
162
180
139
135
201
221
147
154
186
198
263
197
169
221
250
245
177
192
204
157
205
170
217
249
127
254
183
225
254
162
228
180
149
264
206
218
256
222
236
191
199
210
188
193
170
188
181
230
219
186
216
142
109
156
216
248
190
143
190
211
175
200
188
269
166
209
177
247
215
196
253
165
216
150
241
105
163
195
228
186
236
182
253
205
233
233
189
205
195
124
151
147
199
149
218
181
130
233
195
189
150
185
132
192
219
190
256
253
218
157
194
251
165
230
194
244
210
240
172
139
167
237
181
238
233
235
186
227
188
258
163
163
213
197
205
201
255
228
159
173
178
193
216
188
149
252
230
200
237
262
226
207
205
198
216
188
167
227
142
205
164
179
206
95
168
189
143
276
212
184
166
266
188
185
168
200
209
211
243
229
190
160
247
194
254
216
137
238
252
150
199
269
148
235
206
218
180
152
166
97
209
210
197
189
179
199
186
188
140
265
184
272
236
226
219
172
193
214
251
130
245
237
196
206
242
234
146
178
222
186
174
253
164
176
215
210
165
228
188
182
164
180
206
180
227
217
193
239
217
164
140
269
190
235
172
216
172
225
226
170
222
220
163
182
186
140
180
200
210
196
192
237
259
215
192
211
202
157
188
217
189
252
174
227
236
244
214
160
192
141
313
173
131
259
238
223
236
143
199
124
173
246
174
210
182
188
189
150
286
187
164
200
218
225
180
205
173
220
218
180
180
200
259
153
150
159
204
193
156
188
201
184
164
218
189
185
165
187
190
195
168
225
243
156
228
154
242
196
159
213
194
146
197
263
218
235
206
203
189
194
223
118
213
201
177
201
184
188
177
213
176
140
211
218
187
211
190
243
226
139
206
157
150
190
135
216
206
189
143
224
166
203
240
247
159
229
239
221
188
245
260
206
220
191
244
204
218
233
124
239
232
227
181
183
204
158
154
161
181
239
177
215
227
172
223
196
251
159
204
157
175
201
161
172
190
215
173
237
201
236
221
190
217
140
209
148
149
194
211
227
168
234
204
271
243
212
121
153
202
217
224
224
167
240
230
227
143
214
177
178
150
189
203
164
212
136
194
181
227
155
221
226
177
195
246
191
234
237
145
217
197
170
259
227
193
207
282
232
239
174
233
232
216
237
201
256
184
185
143
186
218
158
230
179
250
176
145
165
176
250
224
193
207
133
158
249
171
171
115
242
216
191
226
197
107
186
169
161
192
194
147
180
181
201
175
250
233
196
232
150
178
221
208
216
267
190
219
187
100
289
223
236
222
209
201
191
200
228
162
264
216
164
125
162
290
206
219
215
188
193
159
206
226
208
170
216
147
250
236
223
169
152
144
255
215
181
227
172
209
202
212
209
210
207
145
217
163
127
170
245
237
150
198
212
198
157
173
265
190
181
186
216
241
246
154
207
193
188
138
221
213
185
202
196
150
157
186
200
173
213
177
217
182
227
235
228
218
145
179
182
211
228
110
211
197
262
184
188
175
200
247
240
260
185
267
157
238
223
179
202
177
228
204
164
165
191
205
192
206
168
221
236
227
217
207
192
204
196
179
144
138
273
187
241
175
261
236
243
224
217
230
222
180
223
168
174
152
200
238
184
171
200
218
183
176
186
138
219
194
122
214
179
229
211
209
290
252
181
213
160
218
171
239
219
187
153
226
242
230
204
200
158
233
215
210
148
187
173
141
198
199
208
252
236
199
243
184
183
175
199
227
144
234
205
230
208
173
241
246
176
213
228
195
234
224
279
204
185
132
172
167
200
214
249
180
247
187
197
195
201
174
136
225
269
234
179
177
192
152
222
218
207
225
180
227
262
199
180
156
232
217
250
197
159
185
194
215
250
251
220
225
231
247
239
186
221
262
152
176
152
206
207
252
225
223
264
218
177
200
177
222
140
176
229
201
219
214
128
201
178
199
169
166
226
236
234
143
194
259
144
296
147
177
254
211
149
200
176
177
213
216
205
188
196
172
196
221
188
184
244
219
292
189
216
206
225
157
170
227
207
135
237
189
210
189
251
185
203
255
215
236
220
165
182
143
226
170
254
243
215
247
199
185
231
217
165
193
184
189
220
207
176
223
205
204
217
225
159
198
239
243
220
199
276
235
200
302
171
209
219
247
245
141
163
186
201
229
218
212
194
207
158
241
195
156
153
197
190
268
214
125
234
195
176
148
211
210
228
191
210
129
149
221
223
203
239
156
132
231
103
159
195
206
190
174
200
277
192
180
207
186
234
225
218
232
239
216
193
232
149
213
140
252
253
223
261
204
230
195
194
250
181
259
136
165
238
141
208
170
190
145
185
158
169
228
201
197
166
218
178
186
188
188
199
234
238
237
186
239
261
166
254
235
215
199
178
237
133
246
244
209
147
250
207
192
243
240
185
147
256
202
155
135
137
228
128
146
167
195
259
206
213
246
225
228
171
188
161
203
169
124
258
181
217
202
139
172
261
263
202
142
244
167
150
179
179
225
217
211
147
219
201
197
172
135
122
178
219
284
160
213
236
144
274
214
181
187
222
185
261
216
244
231
150
200
205
236
212
199
223
274
259
228
195
154
147
227
222
178
218
201
194
208
167
253
171
196
188
156
186
198
200
197
213
185
177
241
209
202
218
190
182
244
237
181
173
215
195
208
214
223
165
236
231
183
143
229
239
234
210
208
147
165
187
177
164
162
210
248
200
244
185
168
231
207
194
241
251
185
207
184
220
175
208
224
172
232
216
175
206
123
172
169
159
211
202
192
162
216
211
279
226
211
146
171
234
241
177
196
197
223
214
191
195
245
239
223
171
141
197
163
181
147
201
225
228
154
194
243
191
206
227
182
153
205
147
205
246
202
149
197
226
184
178
186
199
186
246
144
219
239
197
161
241
189
222
261
242
195
197
137
228
258
226
196
273
243
215
191
208
148
245
223
129
165
149
193
221
130
228
211
237
187
202
124
169
172
182
174
279
201
270
208
140
190
167
235
174
219
206
261
189
189
264
211
188
216
229
188
209
215
136
282
201
196
156
202
170
160
145
214
176
152
166
146
238
158
203
262
200
218
171
195
211
186
205
193
203
166
261
178
205
142
179
250
190
172
196
186
168
268
208
240
211
135
218
238
239
100
162
199
203
204
200
203
219
228
222
240
196
209
194
161
171
211
168
177
139
232
217
161
211
188
248
207
177
223
224
242
168
193
205
157
211
216
149
226
234
192
182
237
219
216
210
209
227
146
145
187
219
120
223
210
194
211
172
193
170
181
244
167
177
151
214
221
208
199
199
210
166
229
136
122
254
289
184
159
219
220
175
216
161
187
167
209
218
168
221
178
194
248
201
258
246
171
241
180
208
118
217
189
231
197
266
255
150
271
186
215
245
213
226
185
226
250
209
216
229
205
235
163
236
186
178
211
195
188
200
274
290
215
202
197
220
240
140
179
194
249
178
223
166
221
167
234
208
156
180
261
248
204
156
207
215
208
243
207
250
174
174
189
225
225
178
164
224
241
204
249
188
142
178
130
165
187
228
162
196
234
205
139
238
249
256
202
252
173
218
252
224
212
224
215
233
212
204
220
212
193
209
159
190
219
243
183
166
231
133
194
167
230
194
235
243
160
263
146
266
205
271
191
192
256
189
181
242
233
170
144
190
247
170
165
237
144
140
223
227
230
193
220
208
259
164
176
237
195
215
145
218
223
187
242
251
194
188
153
178
209
169
194
215
210
174
193
186
156
253
238
200
220
232
213
234
186
240
188
166
176
228
225
211
236
219
159
221
173
215
192
163
210
192
203
224
203
179
197
130
217
246
172
265
261
175
160
192
262
138
183
202
173
175
204
206
179
116
174
169
183
215
214
204
252
208
141
178
158
230
193
192
174
180
209
244
194
254
163
206
189
277
200
201
228
196
179
183
172
241
219
226
191
188
196
223
198
197
132
205
204
202
192
234
211
205
145
171
181
164
197
202
175
231
212
191
197
238
188
213
146
189
249
200
169
173
168
181
281
235
228
111
215
230
267
159
195
256
212
223
166
249
206
191
216
228
261
213
166
203
225
215
235
168
222
186
244
207
199
214
201
230
203
177
218
172
180
254
180
158
195
159
191
213
228
249
214
250
160
225
188
152
211
161
194
212
212
208
155
158
176
222
148
230
229
178
225
208
226
187
169
204
201
232
183
178
260
173
169
129
212
253
192
193
134
214
245
192
160
215
138
262
173
172
211
217
244
249
221
286
200
176
200
175
186
215
255
230
92
206
285
151
148
239
264
205
175
125
201
166
259
145
158
177
195
197
211
128
181
197
216
177
210
190
233
183
195
126
203
210
184
158
194
175
174
221
193
229
225
245
147
275
184
174
192
198
200
221
221
222
174
249
150
149
178
217
262
201
160
180
220
192
153
179
200
208
216
215
216
180
178
197
176
216
214
226
175
196
146
184
181
219
221
226
139
190
215
192
230
262
209
206
178
199
191
146
192
208
187
206
191
199
246
239
203
208
150
216
176
248
202
197
210
218
195
160
149
192
164
231
220
202
173
190
190
222
173
186
97
213
243
191
255
189
215
201
277
250
177
237
145
231
212
222
215
146
242
146
223
195
249
180
192
241
206
178
187
223
137
265
200
221
237
190
236
234
192
207
118
218
237
221
197
191
195
127
187
192
169
193
169
209
213
161
165
186
152
138
165
178
222
165
171
217
169
158
228
174
151
230
291
212
139
213
191
229
166
195
195
226
209
195
207
230
185
116
170
262
227
154
124
221
148
178
259
140
207
209
163
235
201
190
237
256
194
205
156
134
187
153
240
171
181
237
208
173
131
159
154
161
247
168
224
214
147
198
237
241
205
223
227
228
172
174
186
216
183
164
171
191
130
221
179
202
148
202
244
261
202
209
212
190
243
161
227
133
158
204
215
146
202
230
204
191
206
180
197
137
132
204
245
269
173
268
169
224
219
262
238
154
203
277
179
243
190
194
152
182
188
201
218
168
202
208
167
200
196
157
136
138
152
208
171
186
229
187
247
220
196
187
194
246
185
235
185
150
135
181
204
200
220
204
140
238
197
198
156
263
208
230
206
215
186
183
195
146
186
135
217
177
130
238
207
239
195
181
211
199
193
217
195
187
150
170
189
167
192
149
146
206
209
131
253
168
163
211
183
172
222
246
232
172
232
262
243
214
181
201
174
186
238
181
220
160
176
213
245
228
200
137
198
193
168
248
207
229
219
222
186
147
202
244
219
204
190
148
207
224
183
180
176
206
194
205
200
280
223
190
182
153
187
218
141
198
168
256
189
231
202
187
217
241
221
213
152
213
183
191
172
172
161
247
180
208
179
191
243
282
217
150
168
174
190
218
184
189
164
139
155
171
221
187
201
233
212
225
228
119
187
185
219
237
168
156
183
219
196
178
254
241
244
205
219
244
201
159
208
198
221
186
142
165
194
200
167
235
165
204
243
159
192
182
217
270
173
160
176
138
172
157
203
177
168
182
125
168
141
183
193
192
190
163
168
228
270
229
196
249
223
213
149
242
206
226
279
243
184
222
158
228
190
185
238
233
199
234
216
191
218
208
171
263
266
142
158
238
234
275
182
250
224
210
176
208
212
244
222
264
221
229
128
217
200
225
202
187
274
149
186
235
144
231
207
147
148
187
222
213
225
238
208
210
235
208
214
265
235
212
200
191
186
182
206
145
270
198
215
218
201
238
230
183
201
160
203
179
221
147
161
189
191
169
249
209
203
230
221
152
238
140
140
163
152
203
206
238
121
239
222
277
182
213
223
234
227
236
208
103
127
157
252
215
238
223
260
194
175
169
187
170
224
204
217
165
179
213
150
136
212
200
177
183
149
249
254
180
126
212
247
165
180
224
218
244
201
192
192
245
225
167
194
259
214
232
206
268
174
222
165
159
158
202
196
120
141
180
249
164
186
204
159
261
80
239
120
244
155
181
253
199
201
220
245
152
193
211
120
159
208
190
179
171
211
202
168
214
206
168
161
198
194
198
233
182
207
202
234
257
221
238
134
233
251
234
240
220
171
223
208
151
234
209
232
247
213
200
207
218
191
169
222
157
163
202
244
234
215
195
144
150
201
218
231
289
209
216
226
216
240
208
241
190
150
224
192
194
241
184
166
139
208
245
240
151
153
239
215
215
193
201
236
201
224
121
231
202
228
255
166
242
258
195
218
229
189
215
210
196
188
188
247
193
164
175
122
162
235
184
172
227
189
172
170
231
233
223
211
179
216
226
231
195
236
236
141
212
233
176
225
192
147
191
161
172
181
155
268
188
210
139
210
212
215
271
185
204
198
205
169
203
264
174
215
231
206
219
190
169
244
218
232
157
205
202
198
222
213
169
175
194
217
178
264
181
192
201
185
258
173
214
247
242
160
188
220
200
202
157
228
167
184
159
210
198
205
232
201
144
121
161
198
190
206
185
156
232
147
165
245
211
238
179
168
126
193
219
228
140
245
201
210
179
207
150
213
192
239
235
211
191
235
202
292
192
137
222
239
164
246
198
204
258
201
196
186
172
226
203
227
199
262
175
157
189
220
236
223
232
168
206
202
141
244
178
229
113
263
193
233
183
280
197
237
195
191
210
211
218
207
204
120
155
217
206
187
194
151
205
183
179
234
160
133
200
225
138
174
159
209
201
197
210
187
230
219
151
212
207
191
175
171
212
210
157
200
243
193
223
225
215
190
258
160
242
219
213
120
190
157
242
143
160
214
192
159
247
216
150
142
218
217
213
233
163
221
154
289
203
168
172
234
151
214
244
177
136
211
247
186
237
187
247
155
215
169
236
184
171
94
213
179
222
232
213
175
267
194
207
229
239
236
199
192
168
147
211
216
299
230
209
208
207
210
228
212
248
234
205
235
233
166
167
146
219
255
235
201
214
234
224
208
163
154
235
131
196
250
187
274
231
176
167
205
196
187
194
170
185
241
184
206
165
193
192
254
236
138
163
210
235
202
247
201
205
218
245
210
195
205
214
191
230
164
137
201
263
190
158
204
215
240
193
242
205
234
255
223
221
201
189
230
191
230
188
168
252
171
201
217
265
208
190
199
234
211
228
171
210
262
181
169
203
233
239
152
232
192
213
163
237
199
187
180
176
172
171
185
201
233
216
163
167
201
158
230
223
178
183
151
216
176
172
168
262
190
174
101
144
217
146
165
178
267
237
200
206
229
214
280
155
191
209
260
170
268
211
210
211
290
249
219
226
197
167
206
186
227
189
251
152
237
230
240
143
224
170
221
188
211
208
260
184
173
210
213
234
212
212
214
219
161
213
224
243
181
177
190
250
138
181
140
245
234
210
248
219
196
243
232
152
190
233
179
185
217
258
219
177
228
135
196
152
191
225
179
161
243
204
206
220
199
177
246
232
226
241
185
193
161
199
169
170
246
204
219
213
86
194
248
204
160
209
178
229
184
236
246
143
170
189
104
204
234
219
158
178
185
143
201
219
169
184
201
109
215
171
198
192
214
188
234
208
218
286
176
217
193
179
184
200
167
224
211
222
178
211
201
150
212
173
183
233
201
195
172
188
177
182
110
173
130
176
175
234
188
208
229
174
172
169
240
172
199
192
197
250
152
273
162
181
173
207
209
282
123
261
127
172
207
211
229
259
232
197
157
169
146
265
223
253
196
237
210
191
196
191
189
186
195
207
128
172
207
198
171
255
163
166
223
230
165
252
236
180
269
221
184
213
246
150
195
198
205
155
212
151
266
148
194
142
249
243
173
276
206
254
219
207
181
207
197
238
241
175
176
194
203
193
161
169
213
180
195
198
229
206
144
215
125
220
212
237
209
223
247
143
257
232
244
241
226
164
193
176
111
138
148
280
195
178
206
249
200
195
175
238
188
202
141
164
151
209
220
197
183
174
251
209
152
139
260
160
146
198
232
161
235
167
199
206
184
216
197
207
220
236
185
220
203
129
185
250
226
183
223
190
216
188
102
222
192
213
183
155
197
221
206
239
227
151
223
194
216
159
240
172
195
191
196
215
225
132
243
271
180
254
188
201
210
162
205
221
218
203
177
239
201
193
226
158
257
254
176
215
164
105
247
235
223
200
224
193
193
190
180
172
184
215
198
125
210
185
185
234
200
183
214
182
253
205
257
187
217
219
195
107
174
215
187
145
227
240
155
238
188
182
229
265
233
143
219
273
197
193
185
154
175
176
205
183
235
168
182
191
227
212
211
206
234
194
243
227
179
221
221
190
225
178
220
170
219
198
244
197
223
192
147
173
130
203
184
233
255
176
211
147
221
252
201
199
256
190
200
220
199
279
188
253
214
130
127
215
222
181
186
211
164
187
229
190
180
215
225
163
188
222
175
234
274
235
167
203
202
201
229
194
201
231
213
199
238
286
230
123
215
201
205
241
165
197
166
156
233
226
189
205
190
218
243
192
151
218
166
146
166
174
138
189
177
237
206
190
207
199
215
163
200
165
174
197
186
212
213
171
250
217
204
207
258
246
208
197
213
200
207
232
181
164
143
169
198
205
133
236
200
226
182
230
239
180
203
234
195
187
231
156
147
185
200
217
220
222
153
142
194
183
236
186
203
195
199
207
185
223
256
190
220
286
231
151
197
187
122
256
249
172
195
239
176
246
154
206
254
206
207
196
194
211
254
260
198
200
214
218
252
209
230
222
191
183
195
171
229
183
199
226
205
169
217
156
277
186
228
142
168
187
211
218
208
230
217
127
240
224
192
246
186
214
131
128
237
151
243
139
181
152
152
219
211
198
182
240
199
186
218
163
276
187
259
201
217
232
167
170
218
163
201
166
240
190
245
233
216
234
244
159
194
236
199
172
215
174
148
250
179
223
200
205
159
172
170
247
241
184
200
256
236
189
212
244
164
200
200
140
173
177
237
227
197
209
262
189
251
167
243
241
230
268
241
275
209
211
246
233
172
210
200
127
237
189
206
144
204
173
157
165
187
176
206
218
159
188
211
234
184
218
189
179
195
184
203
195
203
224
203
162
248
228
228
223
183
173
170
223
174
203
229
210
181
227
179
241
158
180
214
230
151
154
197
164
198
204
165
238
159
229
193
247
197
170
225
200
222
219
171
172
172
168
182
282
220
179
221
231
187
237
235
175
200
191
150
153
163
199
239
253
192
242
135
189
279
225
230
203
257
265
181
192
253
234
202
192
170
212
208
222
188
210
226
242
208
228
232
203
206
185
215
231
179
205
238
257
155
227
252
235
197
128
188
154
180
236
252
245
231
231
215
209
254
167
250
221
164
208
227
187
249
169
157
180
197
243
188
193
206
243
202
212
205
196
211
253
225
220
245
213
157
169
198
219
164
224
174
181
202
143
235
237
212
225
190
181
164
192
247
138
271
237
213
231
196
168
178
185
197
264
168
202
184
201
262
125
190
254
231
169
209
269
188
197
138
160
164
161
205
164
220
166
164
161
97
200
188
154
191
152
185
208
226
199
174
214
229
234
162
245
201
195
244
188
223
155
230
218
236
207
225
224
184
159
235
199
216
218
219
209
235
162
159
157
120
210
234
192
215
229
197
212
237
225
270
194
213
169
174
171
235
239
214
219
163
230
158
182
191
188
152
177
229
224
182
204
215
215
197
177
186
141
206
128
126
157
191
126
176
234
265
230
187
241
232
250
188
248
235
240
155
176
160
228
175
204
217
202
202
245
161
155
241
191
153
226
209
204
172
201
245
224
148
225
223
192
214
196
246
206
183
266
165
180
208
216
188
187
202
229
177
251
147
199
183
190
242
260
173
143
183
176
215
183
178
173
204
229
171
185
172
237
225
206
186
221
226
225
182
251
196
225
203
184
163
213
231
186
209
220
159
179
193
248
210
194
232
218
203
203
223
262
197
195
197
194
176
202
164
221
187
228
208
180
192
237
248
191
255
258
227
208
241
128
206
204
232
169
181
234
220
210
200
211
185
245
172
200
185
169
225
212
207
235
176
178
250
196
189
183
262
179
135
267
244
190
198
165
192
151
182
169
152
179
231
175
232
203
200
208
201
182
131
184
161
225
244
175
178
200
205
223
147
205
238
164
173
197
229
258
234
214
193
215
164
140
204
208
171
165
210
201
244
238
214
164
226
113
192
219
191
228
228
248
168
220
227
185
211
240
218
212
182
173
179
249
221
117
162
197
168
146
256
196
222
208
249
203
237
143
146
233
239
285
165
245
201
187
158
158
160
244
151
170
214
180
216
231
107
198
212
247
218
150
188
200
207
171
179
249
139
253
187
250
148
194
181
216
248
214
259
199
210
178
243
207
126
273
182
223
134
246
188
218
274
223
192
206
191
194
210
243
139
223
234
196
163
187
218
155
174
195
202
280
216
234
172
253
155
268
201
179
139
179
147
204
198
219
230
200
209
202
229
213
164
210
159
188
212
218
227
225
143
142
235
193
215
253
165
237
223
210
173
208
161
224
227
143
167
218
233
192
221
204
183
154
219
233
221
126
205
125
190
198
205
232
168
183
180
238
180
217
233
227
200
258
231
151
161
238
210
172
198
201
239
188
249
178
183
230
188
140
249
223
163
236
188
188
205
265
177
192
184
163
173
203
202
212
159
220
191
217
206
268
164
180
231
187
228
197
215
201
183
246
188
215
172
185
142
203
211
225
149
221
210
134
261
200
168
211
213
213
125
208
190
231
158
180
239
164
246
232
199
264
222
148
159
208
173
199
203
193
158
253
214
220
174
197
130
215
207
227
175
196
196
144
245
202
227
184
161
161
211
175
215
151
211
227
226
260
187
206
229
215
221
186
246
221
207
160
215
241
196
194
197
250
198
206
206
227
184
143
235
209
182
224
157
131
155
167
192
211
174
252
164
186
228
195
204
226
184
222
167
215
226
235
160
197
249
184
178
192
198
223
170
110
152
147
189
173
241
196
267
187
229
231
185
206
243
205
226
164
207
208
180
231
211
195
246
193
177
157
186
191
181
199
206
227
219
214
168
241
192
219
143
187
196
209
231
152
246
245
176
177
210
171
176
242
162
219
186
264
171
167
191
174
217
179
187
268
210
168
174
192
197
227
243
188
231
219
164
177
223
156
235
233
238
195
188
200
210
233
160
218
191
213
187
173
231
229
233
196
252
172
212
231
241
148
141
220
247
209
219
192
216
178
218
218
159
192
167
218
199
195
178
136
222
212
179
163
270
159
185
170
216
159
149
244
177
169
239
182
222
174
227
273
140
256
231
197
218
263
169
189
271
172
192
190
218
241
219
256
150
170
226
196
105
148
220
165
269
170
269
168
280
218
215
202
204
227
222
209
211
162
234
186
195
217
203
203
182
274
146
176
204
132
142
247
259
223
165
141
154
83
160
180
200
178
223
228
230
238
227
176
223
228
186
159
134
224
266
168
223
158
184
162
218
164
185
192
162
179
226
266
170
189
199
237
181
211
203
214
257
187
169
180
164
175
207
195
197
235
232
185
231
102
215
181
174
160
188
220
154
224
222
190
151
189
154
260
214
177
153
178
232
221
169
183
176
194
207
237
263
181
255
144
198
157
110
134
180
240
216
187
235
245
179
184
211
193
150
209
283
178
270
226
195
214
222
210
226
243
239
199
199
175
188
211
235
224
211
261
190
165
178
208
238
177
257
238
181
236
166
188
210
130
212
162
215
215
144
182
206
201
203
204
135
223
227
168
153
177
172
209
137
240
184
195
139
133
223
191
234
188
226
208
186
244
182
183
230
158
224
135
205
247
252
180
151
183
175
213
232
205
221
241
198
245
207
221
183
177
180
255
158
196
178
174
252
155
188
214
145
108
199
242
206
258
244
169
208
207
196
210
178
152
265
262
165
202
173
187
212
225
172
174
191
264
210
183
173
167
170
204
193
240
176
223
256
166
209
225
170
173
229
208
192
168
218
159
196
165
216
169
269
218
167
192
209
165
192
175
180
226
192
211
157
173
196
205
235
148
220
239
228
215
228
196
175
210
189
149
165
198
218
177
180
219
240
180
190
227
189
209
162
172
219
194
190
185
154
242
239
191
200
187
181
228
129
166
217
175
177
213
237
185
221
202
143
218
257
258
151
204
190
209
162
229
193
195
252
208
164
244
181
139
150
247
201
187
210
220
273
154
197
171
180
214
194
215
209
250
223
243
226
159
161
223
196
213
198
239
171
174
220
212
175
156
230
194
251
165
229
182
260
251
209
188
225
205
188
255
243
204
230
258
203
181
186
250
206
173
214
249
215
198
201
218
249
174
251
200
173
219
160
244
191
182
239
165
197
208
158
184
167
188
251
218
170
194
171
163
208
210
245
259
220
136
198
215
241
204
226
188
164
188
236
217
234
192
263
233
188
211
212
192
184
209
200
217
217
203
211
225
195
197
215
212
184
163
242
232
203
202
233
192
161
252
220
218
178
211
200
226
208
224
207
155
197
197
180
223
221
262
198
185
238
134
235
226
195
217
234
225
230
145
199
167
170
221
233
231
137
192
217
182
172
159
195
190
216
238
209
202
200
219
141
147
178
182
122
232
158
174
202
229
258
219
203
162
160
202
160
197
206
159
168
167
142
222
145
204
279
143
197
220
189
162
117
205
219
186
227
145
163
181
167
195
243
172
244
224
229
201
213
118
192
147
188
177
183
184
161
308
217
184
236
234
276
197
217
214
223
183
155
249
146
257
163
201
213
213
233
245
236
155
232
209
155
233
181
248
189
114
165
201
155
185
218
209
134
177
177
200
168
217
181
281
236
152
178
262
125
230
196
193
157
186
168
226
228
207
226
163
212
202
181
204
153
204
177
205
217
242
201
213
230
202
215
229
136
184
266
166
201
171
191
196
260
247
270
202
165
128
222
256
199
183
186
155
189
170
170
207
214
174
257
160
200
239
199
231
232
231
206
159
217
248
181
160
243
169
220
184
151
183
202
226
205
187
250
241
172
211
172
185
150
187
147
197
179
154
187
209
233
203
192
193
148
223
182
170
147
249
218
126
192
247
192
162
135
240
230
196
248
218
171
198
229
179
169
194
163
159
224
202
159
215
204
201
202
199
184
232
185
161
266
207
131
198
263
254
245
231
251
226
219
223
167
224
226
183
262
226
133
131
112
222
185
255
221
226
152
220
160
240
263
181
86
170
184
185
282
208
258
240
135
170
204
169
174
191
239
175
213
259
201
197
203
189
204
203
184
108
194
205
166
124
151
172
219
250
157
179
254
190
168
231
109
208
228
260
202
168
205
211
228
160
199
211
156
228
224
237
171
249
237
195
205
235
192
188
190
237
187
174
136
176
133
269
214
180
241
200
227
193
196
156
234
197
216
198
166
187
121
284
217
193
206
215
247
222
215
148
232
207
113
146
179
210
198
120
211
188
164
167
193
213
221
247
189
191
210
245
192
173
215
202
137
215
209
237
198
149
195
220
167
283
225
231
223
181
190
136
232
225
191
182
240
208
232
222
169
201
155
150
204
245
218
214
177
199
242
226
185
143
228
212
236
216
196
188
158
208
210
177
127
195
197
249
204
166
175
232
174
214
219
247
268
179
216
218
222
179
273
135
212
149
176
164
169
197
224
176
167
288
198
237
196
268
209
200
226
202
227
302
180
177
291
179
159
213
284
196
180
228
199
216
203
206
174
135
226
253
158
211
223
240
156
228
185
207
222
242
151
256
153
226
211
186
187
215
168
239
197
230
249
216
188
186
229
232
232
135
218
181
171
195
214
242
178
200
234
229
187
208
251
197
204
172
203
164
171
228
183
234
187
173
181
215
194
164
167
214
184
201
216
166
187
229
160
217
252
151
196
182
167
221
177
178
228
215
235
239
182
233
179
223
244
246
212
173
275
204
214
209
191
194
180
186
223
281
178
222
209
198
219
226
173
168
158
206
153
212
178
178
241
246
233
198
145
171
209
231
243
210
247
187
178
232
207
213
207
249
223
213
181
216
213
195
185
190
215
158
164
224
262
186
169
148
194
217
174
190
132
179
187
260
223
125
244
176
228
179
192
201
264
218
203
217
237
197
169
219
191
270
235
196
208
159
176
253
179
220
241
216
154
237
182
211
140
167
266
190
198
187
202
176
217
202
216
236
223
245
164
192
225
230
209
222
206
158
213
196
155
205
199
226
242
177
95
199
139
188
192
182
170
241
244
211
207
194
216
195
222
232
190
232
156
175
259
190
204
182
216
205
218
206
237
205
246
203
231
222
206
266
179
264
181
183
167
225
193
190
192
215
152
184
164
189
162
228
191
166
186
218
240
221
183
151
243
219
231
136
199
142
217
254
160
125
235
165
147
209
144
246
130
183
230
203
197
207
225
205
105
205
161
193
212
215
248
177
258
158
234
219
104
199
225
162
221
179
219
185
117
178
180
202
219
199
198
216
213
261
218
113
187
165
201
248
210
190
236
158
138
249
231
232
161
169
236
169
181
243
174
185
207
152
174
196
234
165
204
144
160
226
238
210
179
213
189
200
182
152
164
192
184
185
240
193
188
179
177
154
231
204
177
219
199
228
151
204
190
200
221
186
164
238
166
188
259
191
225
200
239
241
188
231
191
203
215
223
167
226
195
254
177
230
122
214
162
272
247
208
146
175
194
138
158
208
198
250
172
224
198
182
225
206
210
223
199
217
167
224
170
237
145
163
187
211
197
174
211
173
218
209
222
222
227
239
198
165
205
164
230
228
180
140
249
170
201
250
192
223
242
215
237
168
155
122
193
161
263
200
184
237
193
210
219
186
180
173
190
180
128
222
164
256
142
232
214
196
233
148
226
223
214
234
202
244
200
166
246
214
169
227
157
255
200
248
237
222
226
147
187
215
164
135
216
207
213
253
151
225
190
244
222
189
196
169
178
143
191
180
186
201
182
266
246
227
219
180
255
199
199
201
227
202
236
269
176
225
245
217
130
206
215
230
239
208
227
196
250
185
139
230
234
246
191
254
226
234
197
225
249
235
208
188
189
238
216
206
191
228
214
205
104
181
224
129
246
228
236
124
202
239
199
209
188
216
242
194
186
177
159
214
191
258
177
188
191
204
203
176
159
241
271
224
182
177
208
213
122
231
174
200
226
197
232
173
214
218
150
168
162
222
250
266
126
202
212
129
247
202
239
162
198
218
124
182
187
213
141
210
173
274
240
176
223
178
184
277
188
213
158
188
213
190
218
161
200
170
165
198
235
240
168
186
238
235
163
239
208
206
267
201
194
210
159
246
218
224
234
206
185
219
204
236
193
175
242
215
193
223
141
202
210
171
159
272
187
190
172
233
183
212
243
154
188
214
209
144
251
221
151
194
198
196
160
263
212
260
213
225
213
172
147
223
222
235
214
232
229
201
169
229
219
225
215
132
214
228
240
217
233
215
183
214
249
210
226
170
254
180
192
184
218
143
202
231
181
182
190
207
172
198
233
215
246
172
191
197
254
173
183
162
210
174
190
185
183
210
210
159
184
265
219
196
190
207
198
165
199
224
193
223
242
151
242
226
173
250
151
230
184
204
193
195
164
204
193
191
230
179
151
218
223
206
195
170
159
211
253
182
202
227
207
207
147
209
205
181
258
198
231
194
259
203
256
201
248
211
193
209
228
197
230
232
150
220
109
207
185
188
228
209
264
191
187
195
193
247
196
219
209
243
194
178
161
222
214
210
268
157
231
235
108
162
212
233
171
226
227
142
230
202
161
231
116
184
171
211
282
125
199
187
218
165
251
217
175
185
234
194
194
255
173
192
206
184
218
175
163
170
203
221
204
188
124
200
152
240
208
211
166
218
200
184
155
194
205
266
148
162
216
169
210
188
263
226
198
218
190
238
197
193
211
236
175
160
195
192
188
200
186
208
185
139
183
178
173
190
248
300
194
180
197
184
161
203
173
196
136
178
222
177
176
200
174
228
228
176
189
171
216
243
214
176
185
179
178
210
144
216
191
270
197
209
183
190
224
189
250
202
178
186
149
181
192
157
245
259
157
186
187
183
269
251
159
220
194
197
139
222
161
201
155
265
239
233
206
182
205
160
167
290
207
141
137
237
252
184
169
205
178
209
175
209
186
135
256
157
185
243
118
117
190
127
200
156
198
252
225
194
183
185
145
198
250
251
246
172
236
211
216
236
244
194
144
204
141
200
194
165
185
202
175
184
167
181
264
246
216
198
220
215
174
177
149
165
215
246
231
235
117
205
246
158
179
164
192
154
246
194
195
193
191
182
220
224
162
249
175
212
200
182
245
211
209
223
181
232
193
187
229
173
188
194
209
234
231
176
212
162
212
197
197
156
193
150
177
169
233
220
188
221
271
130
203
218
189
216
140
185
155
174
209
231
196
170
224
238
191
153
219
127
232
256
212
188
208
195
263
291
202
164
147
248
184
216
214
209
241
233
186
252
205
150
199
226
209
207
155
219
188
222
200
221
230
220
259
222
212
229
178
228
186
140
236
250
187
215
225
220
174
114
107
231
204
202
197
216
217
253
212
236
156
172
206
207
94
193
193
214
188
183
199
202
189
217
212
231
185
201
207
168
220
244
213
165
204
247
163
229
179
163
187
226
210
97
202
217
114
185
170
275
181
225
268
223
244
204
221
206
233
229
231
172
143
248
148
178
219
180
186
169
183
207
234
124
189
169
215
189
196
198
216
221
260
220
203
222
178
178
213
232
186
120
149
257
223
216
249
194
196
210
156
188
179
230
244
224
189
207
187
192
193
148
184
184
166
182
187
148
166
156
224
215
133
242
206
223
181
165
236
174
276
201
211
258
215
166
245
187
206
210
149
211
210
131
153
191
229
197
219
177
232
199
135
148
204
237
192
224
171
168
184
171
154
178
194
222
159
227
231
244
166
205
230
243
180
187
168
209
185
211
185
194
227
192
202
222
218
236
284
262
175
225
169
211
166
207
228
144
126
168
195
155
120
205
187
137
191
178
213
205
99
197
208
115
137
213
173
209
212
230
242
210
207
145
240
204
177
147
182
160
226
190
181
199
156
200
242
182
263
240
117
217
237
163
205
159
216
219
221
223
190
219
193
186
283
247
177
180
152
172
169
182
150
159
198
203
120
175
189
213
260
230
147
188
167
235
163
220
204
167
166
150
171
161
257
195
220
279
226
185
185
260
177
229
169
198
169
233
159
153
281
220
147
183
176
217
246
189
164
241
253
174
177
168
213
230
186
213
181
234
104
239
248
168
220
209
211
203
174
222
256
203
155
185
197
204
167
205
155
243
210
208
192
244
233
243
168
219
225
183
211
172
215
232
199
211
239
219
165
151
203
249
216
183
200
275
146
211
207
214
141
175
169
222
222
206
200
175
150
182
116
252
213
187
188
278
229
194
251
236
152
193
251
215
236
250
202
193
194
189
185
207
174
225
191
208
234
199
213
232
209
164
174
192
222
215
211
203
223
252
219
165
176
226
165
180
221
220
188
222
206
177
193
163
113
196
116
251
137
184
146
174
236
222
231
206
154
155
163
217
206
189
247
187
158
237
223
188
169
219
159
249
206
202
223
188
163
175
163
194
144
171
244
240
246
228
153
193
227
187
193
194
243
183
168
170
220
178
224
168
178
176
206
247
249
141
209
228
188
197
202
237
238
199
230
185
170
185
162
198
187
186
182
108
256
215
205
211
150
185
205
168
208
169
222
196
188
174
215
237
277
247
139
189
149
189
241
174
174
113
193
252
226
204
151
166
219
204
172
153
233
184
201
165
273
199
247
205
205
214
259
194
240
215
211
178
240
259
217
215
200
234
173
166
170
187
207
226
190
239
267
173
192
188
172
227
141
203
208
232
221
196
239
159
216
182
202
147
183
171
172
233
237
174
220
204
205
230
223
170
228
217
205
200
199
211
197
269
232
155
165
175
152
216
222
218
217
229
234
148
200
171
125
220
126
241
213
199
178
189
232
210
209
191
235
225
252
223
226
197
210
216
215
205
201
226
205
200
190
237
171
183
222
255
208
227
180
224
247
250
185
229
119
193
198
125
249
226
198
230
255
177
184
202
242
241
236
137
244
192
166
195
225
247
202
176
201
187
249
148
213
256
223
175
166
208
259
193
262
230
233
173
176
193
210
155
194
198
184
233
241
182
236
186
194
207
175
220
149
210
212
226
231
230
195
212
254
159
211
201
202
187
193
211
186
182
188
231
259
169
180
205
186
152
214
210
177
194
215
173
227
219
226
280
208
153
204
183
111
200
199
161
194
165
226
218
200
191
251
174
192
105
214
229
262
217
246
192
174
182
195
179
162
184
217
165
99
208
176
145
153
245
183
146
223
196
184
176
182
177
180
158
267
194
237
145
118
219
183
204
181
148
172
222
170
277
261
196
166
222
215
228
173
153
220
168
217
236
227
208
209
184
194
168
228
164
138
200
218
197
258
222
195
158
218
198
195
175
204
237
211
236
239
166
132
171
198
264
191
207
187
227
164
199
209
181
242
210
227
192
151
159
193
193
241
265
182
164
205
181
245
182
156
193
189
222
202
218
238
145
220
186
174
229
190
213
166
237
215
203
185
167
199
214
227
175
185
165
202
117
151
194
134
182
262
139
220
167
183
206
182
169
220
207
199
185
171
196
176
214
206
259
232
191
164
223
233
264
201
199
197
265
181
164
215
122
188
215
172
193
211
173
156
223
218
209
195
192
238
259
264
134
240
199
224
209
199
231
141
191
175
225
237
155
175
181
271
241
185
192
261
240
247
218
260
232
205
201
243
172
178
131
202
248
205
203
210
184
164
215
192
214
241
194
178
182
197
153
231
228
152
213
216
184
165
212
200
159
197
231
198
192
255
182
167
232
193
153
215
255
225
215
219
152
164
221
223
249
163
205
253
187
190
252
190
254
209
165
182
210
178
209
184
194
222
192
214
259
220
183
189
222
251
199
179
157
204
181
237
157
185
201
230
277
179
157
178
189
223
157
216
290
157
243
245
171
185
206
198
175
205
187
205
233
207
249
235
254
233
233
170
192
168
229
156
237
226
229
204
220
209
269
193
161
188
154
196
234
183
176
152
220
220
222
210
225
194
200
193
253
236
233
159
136
218
266
219
232
181
145
180
180
180
237
183
181
174
187
221
115
212
178
183
257
232
183
221
195
101
204
184
187
229
169
224
193
227
238
160
241
147
228
218
220
210
183
135
176
187
189
218
203
245
234
203
245
233
184
232
223
222
189
227
190
143
213
162
168
235
210
192
153
217
230
142
244
242
212
229
207
246
214
221
143
204
177
199
144
181
180
232
188
197
222
233
203
186
225
195
202
155
230
238
212
201
181
242
219
187
231
203
205
148
171
184
244
261
247
232
233
206
206
203
248
132
222
205
218
268
184
249
161
208
244
252
183
215
163
196
223
195
172
200
215
246
167
201
251
235
135
158
196
199
233
210
200
208
211
178
207
221
199
206
243
186
201
229
253
208
183
207
199
173
225
217
168
194
194
190
196
220
154
146
198
160
180
188
213
216
219
171
165
174
224
172
187
170
207
160
230
198
210
160
117
272
109
209
194
199
191
216
193
165
168
219
176
215
213
281
213
125
219
227
224
240
202
194
192
179
253
256
195
149
191
225
202
178
184
248
186
207
166
202
186
214
187
188
262
220
143
205
183
232
197
226
205
200
223
165
238
221
167
140
254
224
221
204
182
158
197
250
157
234
210
212
230
171
164
184
156
211
205
196
131
241
222
149
195
220
187
185
199
163
204
215
185
198
146
194
159
183
217
181
185
203
237
217
205
204
182
186
236
230
177
240
202
218
192
200
237
165
208
210
192
232
217
245
202
171
162
210
223
200
240
164
171
202
186
224
158
237
168
242
189
169
215
193
238
170
192
210
190
191
201
252
205
200
170
211
274
222
197
204
161
189
211
205
194
187
196
197
200
220
200
200
216
237
193
173
137
194
265
264
191
178
143
150
113
192
176
214
188
149
217
212
154
164
167
154
200
201
175
220
250
222
182
238
159
201
169
176
222
242
168
280
176
210
204
142
169
226
176
239
195
216
189
214
253
212
207
247
194
248
177
214
237
156
147
165
202
236
177
231
206
253
237
204
148
191
185
234
205
247
242
137
167
211
161
218
234
177
240
194
196
187
188
172
229
192
242
268
210
230
151
233
231
189
226
160
198
224
247
197
166
172
175
172
213
204
236
234
148
235
221
106
203
138
203
227
238
200
239
243
204
199
211
150
171
196
145
241
150
193
155
199
193
202
216
134
231
263
171
216
243
187
182
242
250
194
165
229
223
251
199
246
174
68
218
240
256
178
161
189
182
160
208
175
215
203
221
193
189
258
163
167
222
211
253
226
214
181
202
161
201
190
172
226
211
190
187
242
218
233
217
257
138
170
181
188
215
232
200
241
174
171
187
213
217
238
129
192
273
190
162
204
202
250
221
241
178
174
168
157
197
207
191
168
207
266
275
203
154
171
179
202
186
191
210
161
214
223
207
181
203
179
198
201
217
215
204
177
224
141
191
215
222
250
154
190
211
151
194
231
181
257
255
233
193
192
209
194
164
125
263
211
128
203
164
244
205
215
228
211
245
154
148
273
192
194
175
191
186
193
245
215
225
205
222
202
208
201
172
199
222
198
170
172
197
132
200
225
200
193
249
198
212
170
138
239
165
200
221
157
204
183
198
124
137
209
205
148
230
170
218
156
234
158
182
211
202
211
176
176
200
239
151
199
251
195
213
210
236
219
164
173
202
166
264
181
143
190
216
227
217
203
163
269
214
244
190
268
195
190
140
214
261
230
211
149
161
180
184
202
123
117
191
208
189
189
210
192
259
211
211
237
288
170
250
200
214
194
189
238
180
214
217
192
175
186
192
227
196
154
225
219
209
199
219
211
221
233
138
93
187
198
127
230
177
211
195
214
147
212
156
194
183
186
243
240
213
170
197
249
171
223
262
209
232
226
160
190
201
143
224
174
251
209
194
186
235
216
202
218
186
202
243
215
189
198
169
240
188
201
184
168
216
199
171
206
230
191
237
152
247
221
218
272
231
195
219
216
205
213
203
166
194
205
183
225
204
237
203
197
207
188
179
193
189
112
193
263
209
126
216
162
181
226
161
188
162
204
141
129
250
224
270
196
208
187
194
213
152
165
255
179
222
225
239
185
188
215
212
277
185
224
139
212
158
230
211
176
166
231
173
232
181
228
178
163
142
229
201
275
216
170
172
215
195
233
206
155
219
246
184
255
261
195
243
196
196
243
245
208
177
235
173
185
154
190
184
203
204
177
188
245
220
229
225
221
178
224
170
236
228
166
223
287
131
188
220
210
166
255
239
242
167
149
216
200
227
207
192
197
195
209
216
201
224
192
210
198
230
189
140
213
155
186
221
169
172
159
200
218
227
158
198
198
190
208
172
216
192
215
234
198
161
186
214
206
225
233
202
219
126
250
210
232
253
196
214
151
232
212
176
218
192
214
202
171
204
164
225
212
110
201
139
162
216
177
229
213
178
173
235
216
212
196
107
264
186
238
218
245
178
115
198
170
202
158
171
182
153
224
187
194
202
183
204
157
260
196
147
268
192
184
209
219
206
264
249
223
243
262
215
151
165
191
205
211
197
211
210
198
151
218
227
243
223
211
163
263
197
186
137
249
190
211
186
249
147
195
219
215
109
167
185
202
246
187
212
205
155
236
219
194
121
144
231
186
231
188
195
264
199
215
205
187
240
230
211
216
201
187
226
241
180
259
206
207
239
216
190
194
200
208
233
193
162
215
210
234
173
167
144
216
224
222
206
234
170
145
203
138
229
190
261
210
221
203
221
255
209
219
152
216
225
210
191
161
233
222
249
204
156
222
151
259
139
137
191
182
169
173
228
193
193
201
222
133
197
223
218
210
247
240
171
192
156
230
234
180
236
210
212
203
127
213
213
199
222
138
156
261
229
172
216
218
216
219
256
186
164
246
212
198
196
152
215
232
169
213
167
207
228
201
218
171
212
213
147
245
231
181
169
191
234
188
300
234
217
156
203
206
167
260
165
264
228
192
147
144
177
191
210
168
164
231
171
239
221
180
228
258
260
183
151
201
169
148
189
227
198
213
185
190
205
179
193
186
208
283
96
203
222
150
188
228
218
226
236
271
200
224
174
230
191
180
188
150
161
275
184
181
244
136
156
255
181
224
151
222
160
181
225
183
200
179
170
172
222
176
224
219
213
186
204
164
139
169
197
165
196
176
225
154
212
209
224
204
225
228
215
153
165
270
206
212
216
217
214
253
153
200
208
183
178
225
258
190
161
213
230
158
189
231
192
203
197
245
196
172
223
210
243
152
246
152
199
189
177
205
266
212
265
129
253
230
179
226
252
153
195
199
204
188
121
153
252
202
121
213
250
183
136
215
237
245
249
222
209
127
182
212
188
230
253
201
219
150
228
225
225
171
139
159
245
263
195
239
198
190
228
220
179
168
220
163
144
227
262
192
175
226
204
157
222
224
197
189
155
193
169
208
209
221
163
244
168
184
189
194
172
201
223
185
215
197
278
216
176
169
178
215
183
206
201
195
208
206
261
222
207
214
208
257
205
156
169
160
257
197
208
187
179
140
231
210
135
199
182
191
177
179
219
194
179
225
208
173
234
244
235
178
175
127
265
244
225
204
218
203
162
201
172
220
169
225
138
280
158
205
261
192
251
177
188
170
215
132
237
228
226
147
135
206
197
219
158
157
195
244
212
243
268
168
201
228
169
198
183
249
241
233
186
231
223
168
171
194
228
238
168
268
185
159
199
238
221
147
215
247
258
162
219
247
137
191
211
162
226
144
139
246
204
216
163
195
188
198
206
163
238
262
192
185
230
226
178
251
155
193
220
210
199
236
210
190
244
109
164
238
206
198
170
183
238
150
189
170
146
188
197
210
174
152
161
229
260
154
176
193
204
304
152
180
143
148
166
287
171
203
165
246
195
275
170
245
204
247
180
263
173
236
218
198
217
241
216
202
241
189
215
224
183
182
226
145
214
227
169
176
171
148
237
237
158
234
185
195
228
190
199
151
190
192
210
206
204
205
178
190
218
192
208
114
204
220
218
225
176
202
229
188
225
97
216
183
182
160
193
213
224
228
205
147
139
219
228
227
220
181
158
145
213
141
232
199
204
159
198
107
233
247
194
166
143
100
187
145
190
164
186
212
237
254
184
202
222
197
161
274
208
212
206
184
158
217
178
244
178
187
170
200
193
160
229
128
172
188
211
228
198
222
201
240
242
229
207
241
200
211
178
228
225
262
205
242
212
215
253
184
224
223
163
243
198
203
160
266
165
224
241
185
209
254
162
193
159
174
199
164
226
126
190
231
199
199
252
220
219
208
210
181
238
193
160
229
207
114
220
203
172
209
231
155
269
236
232
177
259
183
224
178
255
196
194
207
205
120
206
214
223
205
246
206
182
176
205
153
221
244
226
192
245
255
196
220
214
218
223
220
204
170
210
228
125
129
219
157
188
225
236
205
228
172
235
203
183
221
219
211
205
269
163
191
228
183
198
174
173
184
242
175
182
193
175
184
231
227
204
201
214
166
204
216
229
234
206
216
239
194
160
186
172
203
220
195
209
160
230
177
218
228
209
163
192
198
211
239
226
168
221
194
221
172
219
198
227
199
180
247
177
201
169
133
219
215
192
211
205
174
230
179
212
183
167
144
205
146
266
181
221
191
166
206
138
208
157
202
230
129
196
215
168
240
244
216
188
237
155
229
240
193
196
240
203
175
133
124
174
183
204
192
214
211
129
184
262
192
172
247
242
193
166
176
235
142
142
190
212
224
224
169
216
142
171
173
171
111
226
232
171
201
195
177
174
173
145
148
257
224
191
252
199
197
231
199
234
167
203
276
220
222
248
198
218
234
211
243
212
212
225
211
198
174
181
170
142
189
212
166
242
172
232
218
151
185
210
167
225
197
207
210
217
220
235
125
205
137
187
215
254
211
178
180
222
233
198
200
132
174
184
167
185
213
214
183
211
213
171
223
204
219
226
128
184
247
198
181
163
237
198
207
214
170
171
242
234
213
212
179
231
186
177
184
212
145
202
212
201
212
161
164
266
225
199
177
143
191
236
185
241
234
178
227
203
227
185
170
150
201
137
190
199
186
232
185
161
182
216
187
191
246
223
195
185
184
231
167
163
207
183
214
219
204
198
196
181
221
194
193
254
203
207
161
193
173
219
211
158
216
190
257
185
208
210
147
188
172
148
162
219
228
223
244
138
196
210
138
214
149
204
225
154
166
123
243
228
166
224
252
206
147
227
252
238
195
207
238
232
217
231
205
251
179
226
217
180
87
203
166
202
281
197
182
210
182
171
217
190
188
212
246
187
204
245
202
180
268
200
239
239
163
214
172
174
224
182
202
207
178
210
233
196
205
194
166
218
180
196
141
247
193
222
152
199
259
193
215
195
166
180
211
153
223
218
210
200
246
189
226
253
225
143
210
145
165
209
188
198
232
225
185
265
179
269
213
203
171
178
234
241
213
200
250
216
181
238
216
165
166
231
227
240
201
165
154
188
208
161
175
137
202
161
246
191
239
203
234
190
166
174
232
160
136
172
212
197
167
203
184
142
188
188
193
205
237
178
208
169
181
271
192
269
234
174
221
240
232
218
122
234
215
169
204
224
185
207
232
233
226
219
291
205
194
157
197
137
182
203
186
196
202
230
192
162
196
256
238
174
210
218
202
222
193
201
211
244
217
249
191
204
167
217
224
152
248
164
240
230
188
202
139
184
143
267
209
276
185
147
202
222
235
215
155
217
253
221
184
225
200
187
215
127
191
248
263
214
144
179
175
249
244
234
183
179
231
233
205
221
124
152
171
172
193
266
241
261
171
276
155
163
204
205
122
215
193
154
210
133
213
171
191
205
168
146
215
247
197
162
227
228
226
138
235
163
216
177
188
193
174
226
263
194
238
147
209
209
146
172
270
140
184
168
193
184
172
243
176
204
230
204
205
210
234
215
215
203
119
170
209
266
248
224
223
173
234
218
139
245
169
186
165
172
164
188
174
169
188
237
246
170
234
220
209
149
166
238
215
221
161
237
229
210
188
187
166
225
206
191
164
204
155
205
235
143
200
224
146
203
186
183
195
211
177
200
173
226
216
209
205
217
163
204
207
217
118
105
229
194
201
133
167
216
214
195
201
210
185
159
245
232
227
121
134
199
175
220
173
251
262
226
178
202
147
205
193
237
216
186
176
204
206
206
162
213
163
150
257
237
209
181
144
155
193
187
171
203
173
215
218
238
243
178
137
190
253
241
164
202
202
214
172
196
155
222
236
217
219
147
181
239
193
207
245
230
213
185
204
204
201
210
174
136
193
278
192
185
206
274
220
205
222
164
242
151
157
193
175
174
213
197
208
224
225
220
221
202
214
248
173
175
205
204
205
171
284
175
208
191
241
206
174
174
221
259
168
255
170
172
208
259
213
168
237
289
218
189
217
188
228
205
259
230
236
195
208
263
218
249
184
165
198
211
142
157
202
185
204
264
168
136
244
229
226
216
224
181
179
204
137
190
177
233
144
166
181
252
172
211
206
299
199
209
174
197
188
232
254
130
131
237
160
246
192
227
220
213
232
127
150
168
216
189
203
221
203
122
187
200
242
243
201
246
201
150
160
128
205
197
257
234
189
271
192
242
170
180
122
203
196
141
211
219
139
159
178
220
186
217
179
149
219
217
169
179
206
192
136
231
173
191
110
219
153
257
159
163
197
208
140
187
179
174
202
256
167
234
147
202
236
181
189
212
240
158
213
312
239
176
207
210
146
225
218
222
183
255
202
226
178
180
192
238
231
211
138
183
225
199
187
188
227
192
180
259
249
201
227
202
278
127
189
250
207
233
231
240
257
198
137
200
129
187
218
233
180
178
224
238
263
265
249
205
195
217
201
180
231
172
179
214
201
223
257
208
133
175
234
161
206
210
234
205
217
221
164
196
211
145
224
227
172
137
181
233
184
244
163
183
191
169
172
261
247
205
216
187
203
185
99
216
187
212
176
157
204
172
223
219
204
209
214
237
176
210
199
223
233
202
236
121
240
211
188
206
190
227
169
133
226
167
207
218
205
252
185
214
229
229
172
190
311
239
242
151
167
233
189
155
219
172
255
236
192
214
215
141
184
255
178
212
190
180
198
193
243
164
217
232
196
215
215
254
224
185
199
142
179
150
240
242
217
155
165
246
189
178
195
212
173
160
171
164
159
251
221
189
168
221
163
179
204
189
243
261
183
200
227
239
208
191
244
187
200
151
161
226
254
189
166
234
152
188
151
108
188
221
192
160
220
231
179
233
186
235
200
182
235
214
222
157
243
185
167
203
185
195
180
185
218
209
236
211
214
198
264
186
197
210
255
159
216
178
185
237
223
294
179
182
207
191
221
255
240
210
198
204
130
140
219
238
180
119
236
201
166
228
244
121
233
167
218
168
221
181
134
159
204
213
202
137
165
196
204
214
155
209
143
143
203
185
162
215
197
265
180
240
218
256
231
226
185
170
225
229
246
214
217
232
216
214
207
225
276
209
253
221
174
174
198
178
281
198
243
162
260
208
158
244
198
262
229
237
175
224
228
277
243
265
212
182
208
193
196
198
179
217
192
171
225
162
274
204
169
146
205
228
189
125
197
212
225
207
240
159
142
233
248
234
203
243
119
187
197
229
215
229
183
258
232
195
224
233
215
199
185
193
257
220
196
219
257
224
196
280
187
193
232
209
241
176
141
221
209
197
209
220
173
181
232
242
172
161
147
139
231
231
230
181
209
187
286
203
175
214
275
267
191
198
192
174
237
153
156
218
203
172
206
174
224
262
253
205
273
259
103
219
123
184
196
241
172
229
221
202
218
121
167
138
223
246
195
190
201
197
212
247
289
182
135
238
209
179
255
208
193
227
148
219
223
248
169
200
177
126
175
197
188
221
228
201
171
166
188
152
226
147
212
196
171
151
149
158
186
263
221
157
266
182
239
195
187
242
155
172
204
174
231
166
206
227
143
156
216
191
250
179
210
196
161
146
158
179
215
240
236
201
186
218
169
209
229
217
186
220
161
202
252
220
232
212
199
147
136
114
166
179
186
200
177
161
166
201
252
176
242
197
236
225
163
225
265
189
229
169
280
202
222
132
172
139
192
173
207
220
203
187
236
171
248
179
235
220
177
232
243
241
227
279
259
221
164
198
247
161
223
170
239
164
221
215
130
259
230
241
197
202
242
166
176
227
212
208
197
217
197
191
199
165
183
208
127
237
149
160
220
151
184
226
168
176
131
193
220
150
232
154
219
170
207
207
214
207
195
234
196
192
214
220
146
204
172
208
194
227
234
179
197
234
266
131
165
207
188
220
233
163
186
198
181
180
207
127
183
254
193
189
215
250
241
282
186
160
227
148
171
176
190
162
182
145
211
146
256
204
189
212
140
261
176
196
202
184
185
181
242
272
254
201
225
192
234
180
233
190
231
227
180
234
155
136
170
155
148
248
238
178
210
237
256
179
159
269
174
207
167
229
224
242
235
188
237
178
135
273
255
192
237
139
172
179
209
177
245
156
237
182
209
152
191
222
152
204
210
220
246
209
195
193
163
241
226
172
136
163
182
232
128
199
255
200
197
241
236
227
168
217
197
164
161
223
223
176
167
187
215
219
222
256
160
167
267
193
217
201
141
185
137
181
180
193
249
281
214
119
176
208
163
191
177
180
238
214
170
224
233
202
218
148
184
205
113
173
240
151
171
174
268
184
151
202
228
211
217
214
251
228
166
169
232
166
184
189
162
211
199
231
239
198
224
210
201
182
192
174
230
204
200
199
168
222
160
108
220
222
228
183
179
224
170
253
174
252
245
195
215
178
158
208
199
172
198
236
212
147
260
212
119
200
229
184
224
176
180
183
155
224
147
182
200
218
184
234
190
242
146
217
253
136
166
251
214
191
239
230
202
234
215
201
218
239
180
174
200
178
199
255
182
161
188
234
175
167
139
255
149
240
187
215
233
229
147
233
179
218
197
194
195
190
190
184
196
228
221
171
231
153
142
228
182
178
254
202
214
201
238
269
254
203
195
207
159
162
178
196
211
233
215
177
239
226
186
224
213
146
198
183
167
138
175
204
210
202
209
194
136
161
212
224
223
139
229
204
244
199
143
213
230
229
245
185
225
223
209
215
176
246
215
245
217
191
126
274
228
206
211
182
215
192
233
182
142
213
212
222
189
242
132
209
185
250
177
208
176
177
191
202
264
192
254
178
125
199
183
165
232
195
220
228
184
180
129
184
136
254
161
216
200
205
224
175
147
217
216
206
184
216
246
179
169
203
198
209
194
244
188
187
177
223
163
215
170
224
205
215
153
229
195
218
153
250
217
185
117
87
219
213
222
237
213
211
194
242
233
239
161
184
197
208
192
183
178
243
195
255
198
185
184
205
150
210
199
171
189
192
149
247
188
204
217
214
272
151
224
249
159
202
149
216
188
214
177
178
216
233
187
172
194
191
254
149
168
124
212
244
195
191
131
201
196
158
206
199
146
180
173
192
209
232
254
269
213
203
137
255
201
221
211
261
208
162
166
237
183
197
196
174
189
208
215
178
214
211
214
139
192
231
262
192
174
188
218
221
226
224
213
184
218
193
244
204
219
216
213
163
226
254
210
193
186
236
214
198
164
225
226
195
231
183
169
210
169
237
205
137
160
197
232
146
238
224
228
227
258
156
222
213
242
200
136
173
192
215
189
200
212
252
167
181
224
197
243
162
280
228
197
188
180
178
224
178
157
219
152
244
136
186
203
198
119
196
217
190
226
271
179
232
223
195
186
195
244
241
241
166
218
211
219
228
238
216
179
226
258
217
206
209
226
137
223
122
169
221
219
170
243
169
230
238
216
198
205
199
216
247
169
187
229
232
203
193
214
139
219
163
191
179
179
162
192
174
163
191
238
136
240
211
187
208
172
160
183
172
182
263
229
176
211
247
211
263
180
202
199
167
223
180
214
209
166
155
221
127
171
237
170
141
179
157
188
146
211
243
166
185
179
244
207
186
215
220
235
233
249
222
164
221
191
182
234
260
195
181
247
207
176
229
232
216
219
229
228
204
155
192
200
278
221
217
135
244
200
239
234
189
173
194
242
137
223
257
209
207
244
179
240
166
215
239
160
225
178
265
190
228
273
206
180
203
231
219
191
160
242
253
264
203
202
218
177
171
243
190
207
220
231
228
276
199
220
222
184
205
157
266
246
156
196
191
253
201
186
222
185
278
230
145
193
210
204
215
195
227
196
191
210
151
205
179
297
166
169
171
191
188
199
229
212
213
223
259
190
194
225
216
219
207
170
205
169
193
189
190
213
218
258
178
232
194
229
220
185
236
174
218
210
167
177
211
175
185
217
231
161
206
177
206
156
164
227
219
213
231
254
244
168
228
235
207
205
186
245
188
156
261
154
244
213
178
226
227
213
212
179
242
200
257
213
173
204
192
242
184
198
294
244
214
236
227
206
210
196
161
195
231
179
181
210
263
228
248
182
180
196
140
200
209
150
213
171
251
182
188
137
228
158
167
213
208
171
255
205
218
183
157
221
238
218
173
140
176
165
204
256
183
223
221
240
198
240
203
246
192
199
168
248
215
213
179
175
168
233
211
156
171
160
266
234
192
146
206
226
181
229
185
236
212
222
159
119
207
205
175
168
231
216
198
193
147
182
225
237
191
156
196
103
172
212
187
233
197
192
156
204
186
214
168
194
165
195
151
205
156
233
215
167
173
134
257
213
219
195
164
261
159
164
180
238
185
226
238
215
173
201
173
187
174
273
119
162
237
180
257
215
209
224
231
207
183
179
215
178
151
188
208
215
255
157
187
204
217
252
223
222
172
203
242
229
196
176
223
193
163
229
211
145
225
188
210
204
213
262
186
183
192
212
257
213
230
164
192
177
220
206
234
230
189
223
277
208
209
160
237
206
251
114
197
269
201
204
227
192
223
162
201
226
210
165
204
138
219
187
227
191
201
228
202
216
210
191
175
160
168
171
184
184
173
225
180
227
232
188
181
260
192
238
212
177
217
199
195
212
127
198
218
204
159
191
123
143
210
240
179
220
214
237
222
245
199
148
288
249
200
200
242
224
195
200
173
232
206
167
200
166
261
249
187
244
222
193
185
150
148
207
152
176
161
217
192
199
153
173
194
207
174
189
217
228
221
187
155
176
189
201
232
204
181
201
154
201
179
126
201
194
178
207
257
249
201
256
210
237
209
160
264
230
212
244
250
218
203
196
248
255
198
158
206
241
218
177
186
199
180
194
171
236
181
190
252
117
213
148
191
182
169
227
171
172
223
154
162
221
205
244
234
207
242
191
233
181
186
206
219
148
182
237
197
192
182
132
257
221
235
182
182
212
223
167
245
214
264
158
266
209
208
241
206
188
172
171
216
204
219
219
225
221
205
156
213
290
215
200
291
152
135
250
247
220
222
183
171
168
229
233
232
223
244
219
199
230
165
213
193
187
191
173
179
215
169
210
185
178
185
240
192
206
188
222
224
193
180
186
182
148
169
185
189
202
213
181
165
175
151
216
170
222
185
212
193
150
224
201
147
206
217
217
218
175
217
204
185
212
230
186
205
187
205
183
159
242
164
227
141
183
264
129
155
175
208
185
125
226
202
203
162
208
226
180
288
184
212
191
180
218
169
177
139
212
154
279
213
170
136
208
220
239
177
215
201
181
201
209
197
150
231
179
273
205
233
156
154
232
154
167
164
243
265
217
274
250
174
145
217
231
182
212
170
155
206
204
197
220
253
180
188
203
220
223
184
187
247
257
241
163
224
173
110
247
201
171
243
162
241
199
100
190
245
165
229
151
133
155
216
226
230
159
201
254
243
207
200
200
183
209
206
181
212
182
213
105
184
231
208
159
203
160
169
251
153
197
251
194
153
169
154
110
254
169
199
199
199
148
244
225
243
207
209
216
237
199
133
242
183
155
161
170
215
211
177
168
230
221
130
252
167
200
173
241
189
234
190
135
211
181
245
196
203
211
198
168
191
182
160
189
229
179
214
209
191
182
171
211
286
235
158
197
162
171
178
173
205
228
177
239
258
151
283
243
178
239
229
154
188
230
198
186
182
243
140
148
166
215
210
141
256
208
200
184
180
227
205
183
218
189
151
223
241
206
210
236
223
235
202
191
217
162
234
195
223
189
188
229
228
166
199
177
178
201
233
225
204
212
232
230
228
239
232
203
186
197
171
235
228
221
210
179
276
186
182
164
159
187
195
225
193
181
216
213
144
204
154
222
176
179
223
211
207
129
185
183
193
211
198
203
209
191
144
148
174
227
167
177
188
207
196
170
149
182
270
236
185
128
200
242
215
171
216
147
224
167
218
205
187
231
300
195
238
209
182
185
131
151
190
183
164
165
248
225
211
194
195
196
249
153
214
212
237
190
214
172
208
177
184
196
143
249
196
175
202
139
196
193
251
164
161
151
221
207
207
160
199
169
183
213
216
203
177
223
242
200
201
216
165
203
262
230
208
227
198
156
167
185
106
115
235
181
212
214
170
267
229
264
183
233
178
229
182
156
206
174
222
241
164
204
227
223
256
193
257
226
228
224
164
188
172
210
228
186
224
245
190
246
159
176
224
215
173
231
203
251
202
140
218
147
242
225
208
176
212
169
183
198
269
260
187
201
263
239
176
190
120
258
188
163
156
240
194
181
219
143
180
257
254
201
217
172
211
249
200
180
113
142
176
219
185
277
249
184
203
255
126
158
206
255
184
254
178
176
224
252
129
230
204
198
258
218
162
162
185
204
176
165
185
156
203
255
239
207
194
181
142
172
224
176
245
210
235
218
166
172
178
173
171
169
199
198
174
218
131
217
239
159
214
297
209
178
177
219
249
177
177
240
216
191
232
242
203
240
132
231
222
136
206
209
165
181
188
193
230
214
246
151
175
231
193
192
175
209
163
205
193
252
216
219
190
194
273
165
252
133
191
186
194
222
253
189
232
198
189
209
170
183
147
192
197
248
277
243
184
195
222
234
242
232
214
241
203
222
247
191
175
219
138
121
211
154
201
261
266
186
266
166
178
153
211
246
274
162
223
198
218
145
232
214
264
169
216
203
208
217
180
193
192
166
206
244
175
175
213
199
221
220
282
262
232
225
111
175
195
175
213
206
201
250
205
189
284
189
189
251
206
153
266
255
197
234
200
180
215
259
201
231
204
209
189
215
229
219
231
229
225
251
159
203
239
227
232
214
188
117
208
180
203
220
194
200
239
228
172
219
204
201
256
178
185
197
196
157
240
281
217
181
185
235
254
201
224
223
192
150
228
183
192
207
164
180
152
209
159
209
183
207
233
222
232
190
231
220
199
181
156
253
146
187
214
159
204
231
169
165
133
207
154
222
209
214
178
233
216
274
173
198
176
207
221
141
239
181
231
202
224
220
172
204
226
226
191
147
187
124
158
232
224
242
152
242
223
236
213
237
222
170
139
245
218
185
167
160
156
161
177
232
191
171
213
211
247
236
182
175
168
150
213
193
161
171
175
147
220
148
198
183
249
142
226
199
227
234
161
188
189
216
178
205
211
162
179
213
242
239
243
163
208
148
238
219
180
136
201
215
196
167
204
146
233
223
226
220
181
207
151
181
155
260
218
133
199
229
164
161
226
145
152
172
226
138
161
220
188
225
221
178
182
272
256
214
214
232
229
213
234
257
206
175
183
219
222
222
228
234
210
231
182
213
168
158
227
214
184
177
199
135
137
232
205
192
234
199
209
185
249
184
181
202
228
149
222
242
195
261
166
197
220
216
169
199
214
222
214
178
191
110
123
199
211
179
202
221
212
250
242
212
184
182
231
210
165
218
247
200
203
203
183
231
220
230
207
252
219
214
217
177
189
228
126
158
252
136
176
196
191
233
243
187
127
207
150
166
181
123
172
157
223
152
210
188
176
168
191
185
229
175
198
185
204
208
226
234
207
174
173
218
186
190
208
199
231
181
206
242
218
215
154
172
260
230
159
194
210
238
217
206
178
227
202
75
192
200
245
197
184
199
142
208
187
232
195
202
192
222
168
209
194
269
222
140
215
169
122
262
155
217
142
239
196
162
194
205
218
129
188
191
233
228
214
169
200
163
148
216
195
261
166
195
175
193
134
210
196
175
191
129
189
248
165
201
234
210
215
231
170
151
249
192
187
210
215
164
183
178
274
202
217
189
192
140
190
270
238
228
204
188
179
153
229
236
227
213
201
164
206
198
231
135
175
185
207
217
210
198
189
214
199
236
140
274
243
172
263
201
194
195
209
229
180
251
199
277
157
179
201
242
220
207
215
175
188
104
216
201
220
214
165
195
273
128
204
261
125
218
85
144
221
139
203
230
146
187
243
168
140
208
220
168
204
201
126
234
195
197
223
258
183
196
242
151
209
168
217
141
221
208
182
244
208
225
206
159
186
117
123
239
216
172
239
222
197
245
206
177
181
191
198
177
145
187
221
248
193
231
165
231
238
242
176
126
150
229
208
265
223
182
180
226
173
202
206
124
172
219
138
127
207
159
236
127
193
221
125
211
233
180
145
189
166
191
260
177
229
217
222
167
200
138
209
147
251
173
212
155
229
233
204
210
213
242
212
198
252
196
147
156
186
188
149
221
183
178
240
212
215
213
237
223
164
241
194
233
219
225
125
170
178
210
265
188
197
205
164
170
253
205
142
212
179
232
196
251
185
203
201
205
221
205
175
219
185
170
206
197
210
224
241
196
229
163
234
217
172
196
231
152
246
189
159
200
199
235
202
203
200
240
216
223
198
177
199
192
216
245
143
169
186
238
175
125
262
168
180
192
189
189
177
175
234
158
190
139
189
152
227
167
204
235
153
201
178
218
156
224
176
194
171
214
179
195
243
183
208
161
226
199
256
175
234
180
189
226
189
196
239
162
176
210
189
189
185
210
171
218
181
274
234
194
175
163
191
215
160
141
215
187
186
225
246
188
211
222
159
132
186
171
159
160
124
176
227
223
226
182
185
270
163
196
190
210
174
140
265
200
221
191
242
223
168
217
168
210
168
167
182
171
192
237
206
198
203
182
243
203
206
210
122
111
130
205
243
247
197
266
177
247
207
177
114
161
245
187
231
182
186
207
223
182
202
191
220
187
185
185
216
222
216
204
240
148
259
199
156
223
217
207
203
215
224
231
196
220
261
243
138
164
246
199
253
201
173
181
246
201
245
117
156
217
265
241
206
101
232
200
193
181
156
193
217
267
229
261
244
163
175
225
189
205
220
166
209
233
236
246
175
217
230
195
173
153
213
209
151
160
185
223
186
151
170
139
175
209
165
194
174
180
186
251
223
211
133
178
156
168
202
206
203
183
212
249
182
197
158
177
198
249
206
220
214
228
210
206
204
204
267
232
162
249
176
158
248
179
193
226
229
223
156
150
221
204
221
198
234
179
180
187
191
184
254
235
238
151
179
168
238
260
212
209
218
190
236
176
158
185
166
209
174
202
211
177
206
205
224
223
198
132
228
212
143
238
234
172
244
229
196
231
198
198
139
202
223
166
222
251
232
222
226
183
202
236
223
229
153
221
189
205
121
222
220
224
201
211
209
171
293
264
276
203
222
198
206
150
170
217
234
217
232
231
183
197
207
144
203
220
260
205
174
227
268
205
259
192
163
244
224
190
147
177
162
205
273
221
177
186
174
208
218
189
182
195
206
131
151
194
219
210
187
175
209
236
230
169
181
214
196
201
120
194
130
166
173
227
207
229
179
207
226
229
142
231
211
195
169
224
193
183
196
171
245
180
233
202
207
176
280
269
204
224
210
212
203
181
208
217
165
218
245
239
190
272
164
182
167
193
199
233
190
222
272
215
163
130
178
221
201
175
135
195
189
222
214
224
215
178
205
212
163
236
253
182
181
283
172
197
147
192
229
93
215
213
187
135
204
227
197
215
203
265
198
243
265
205
169
162
132
157
225
200
196
188
226
204
250
169
268
214
233
185
223
204
202
192
208
231
289
213
248
159
208
235
106
203
228
194
183
159
190
274
258
168
212
159
199
192
211
182
164
228
195
127
162
221
195
218
231
222
147
192
214
202
173
200
196
159
228
152
186
188
169
203
254
209
178
168
166
204
219
186
182
241
222
271
172
198
253
205
246
261
212
192
183
210
152
178
259
209
151
163
202
171
209
181
211
170
198
212
254
184
189
220
188
199
189
203
185
208
217
209
206
221
233
195
178
229
214
226
213
183
182
290
219
170
202
202
185
195
239
252
214
201
219
173
184
157
166
235
200
187
184
190
198
147
209
147
230
210
197
268
246
137
170
173
214
171
240
220
183
232
160
256
207
173
255
195
199
180
178
195
209
208
166
218
217
208
208
209
111
169
232
263
233
218
185
207
204
161
219
207
182
258
153
228
135
213
175
213
181
173
218
173
202
192
218
193
173
241
234
188
194
211
196
240
218
174
233
176
229
157
191
208
158
221
186
155
137
207
194
233
156
181
173
187
203
186
169
169
155
184
206
226
168
209
180
223
201
210
214
253
215
233
159
191
150
107
173
185
185
197
210
120
221
204
222
217
244
219
226
248
200
120
247
213
208
236
196
152
167
228
167
204
195
190
165
239
223
193
175
180
208
193
194
191
194
244
220
210
222
229
204
178
175
257
143
202
149
240
242
161
188
170
248
247
196
179
182
227
198
207
206
213
225
163
184
210
220
133
236
175
210
223
168
209
216
183
178
241
168
193
219
155
184
223
146
218
181
239
251
247
227
214
185
136
255
157
240
218
149
169
244
180
201
203
231
209
188
234
215
169
189
219
180
212
193
151
193
183
198
181
266
250
119
207
241
167
162
178
159
182
268
222
194
216
206
203
242
217
200
265
175
181
198
235
105
186
168
174
196
273
191
158
202
195
196
115
126
187
200
232
197
198
249
240
202
186
167
186
196
242
124
201
197
196
212
196
258
209
207
193
165
212
167
210
180
192
182
235
180
156
155
258
138
178
219
234
146
256
271
220
179
182
174
199
180
201
201
169
183
107
248
155
171
241
210
150
183
130
196
146
201
157
121
248
183
198
252
218
276
181
207
165
242
246
199
234
211
152
201
219
195
179
189
191
204
260
218
187
179
162
164
270
214
216
177
159
183
209
221
206
214
167
219
129
181
141
124
227
229
255
164
166
235
183
131
215
194
150
167
201
167
212
183
208
183
225
216
207
239
198
306
234
162
201
187
209
227
197
155
163
157
161
202
228
188
206
264
230
188
175
197
159
217
222
169
186
233
199
220
151
173
210
124
200
194
215
156
213
220
141
152
210
143
200
240
134
209
220
235
225
112
213
205
206
221
258
215
162
181
193
228
202
164
272
258
151
240
160
169
153
105
213
241
206
215
201
241
146
253
225
174
147
233
182
204
224
237
261
138
217
241
181
163
171
168
214
170
141
234
173
203
197
217
196
215
162
207
218
193
186
171
237
239
208
177
224
151
227
240
263
251
196
178
179
173
233
229
168
181
183
242
176
177
236
221
282
256
198
209
234
232
183
177
243
222
242
229
189
180
225
157
232
191
161
167
184
187
246
210
127
170
261
225
212
149
226
254
203
246
216
200
191
205
137
231
231
220
153
217
169
103
148
238
154
255
183
162
270
154
189
244
132
201
213
221
191
210
201
198
214
212
214
232
247
147
175
222
184
207
180
223
239
151
191
187
209
226
229
148
206
199
160
163
183
175
216
213
249
166
244
279
244
207
175
170
165
199
194
171
245
240
180
196
175
187
181
197
268
264
188
183
169
182
218
153
191
212
202
180
148
221
229
202
165
245
198
191
279
173
132
210
213
238
235
205
193
213
204
184
146
134
128
244
208
179
227
190
266
229
185
171
255
234
162
170
212
178
179
231
245
205
259
241
199
175
170
174
192
172
146
191
215
230
193
184
162
170
211
229
223
254
218
126
244
257
235
186
199
180
158
266
220
267
142
280
180
185
235
211
191
178
230
177
181
185
186
183
185
198
225
212
200
186
170
169
247
240
175
233
183
186
143
180
193
194
209
274
184
175
217
244
248
176
210
159
229
139
194
219
213
174
175
127
238
207
176
221
260
175
271
180
203
183
188
167
186
145
186
208
221
206
150
259
181
211
240
153
204
226
115
210
197
150
102
170
193
231
224
233
232
190
165
159
198
166
197
210
202
211
201
220
180
215
189
208
245
193
209
237
268
168
223
224
159
237
218
176
218
191
196
189
155
181
164
271
208
134
219
229
189
245
192
223
211
197
214
193
210
237
149
214
153
148
176
179
112
231
212
218
203
208
302
170
145
185
183
171
187
253
177
194
127
158
250
218
179
219
232
159
215
210
143
195
208
240
253
163
184
197
207
222
218
182
185
170
241
242
214
238
211
216
216
226
139
204
171
198
164
191
189
190
191
220
198
171
216
239
188
185
231
195
199
130
172
183
231
270
211
235
207
199
262
263
198
171
177
245
162
170
185
165
169
211
250
174
186
166
162
225
191
174
117
138
200
131
182
133
247
186
181
228
201
240
236
229
184
259
226
245
190
197
232
263
165
227
179
199
218
182
195
195
176
156
262
209
199
177
169
224
211
245
169
210
164
175
258
202
145
273
147
279
222
189
247
211
229
222
191
151
169
184
205
200
191
179
188
207
247
201
257
212
173
195
172
161
245
181
212
223
144
189
265
213
227
196
249
149
249
158
199
160
166
228
185
211
171
255
180
177
172
220
238
285
181
181
233
240
197
199
257
94
238
218
240
171
208
183
206
176
189
201
153
239
184
167
189
196
202
288
235
181
126
159
206
201
175
195
178
173
210
232
184
229
221
193
207
217
202
182
249
257
225
189
195
203
170
226
199
186
198
224
133
159
170
115
199
202
192
191
212
204
224
228
249
234
207
206
232
192
221
172
162
178
117
221
161
217
145
210
271
205
217
255
253
221
224
252
234
194
143
214
192
220
190
235
244
245
179
219
178
197
162
181
210
208
221
236
195
193
186
172
197
221
85
157
215
204
257
196
159
209
190
195
227
136
104
208
150
189
214
194
216
217
195
159
229
223
178
228
204
179
158
205
176
220
256
153
165
108
217
196
183
229
173
212
241
197
170
169
195
244
215
206
201
203
153
163
173
212
169
219
221
263
169
212
188
128
217
187
205
166
205
198
179
166
207
200
187
213
191
213
200
111
223
122
174
133
260
232
266
256
246
191
206
160
188
199
147
230
178
195
288
233
241
198
264
169
257
183
161
177
219
214
267
186
242
136
156
266
162
168
208
228
245
199
192
183
216
182
211
186
218
203
198
219
194
213
148
234
160
205
229
132
273
212
197
199
193
224
191
200
157
246
188
235
197
220
220
244
224
162
179
226
243
209
258
149
244
216
198
199
216
180
195
185
193
179
253
227
156
210
230
249
178
229
175
204
183
204
190
171
188
191
165
179
253
216
229
105
202
218
267
176
173
185
249
137
187
222
197
231
190
155
161
155
181
189
162
217
207
157
223
150
194
199
179
184
165
235
196
185
174
172
198
228
239
243
185
250
151
222
180
186
223
181
191
217
191
220
196
161
232
203
193
196
163
221
271
217
235
165
182
210
195
165
238
204
194
186
159
176
247
174
239
138
170
193
249
192
160
221
207
269
222
216
280
160
222
214
192
219
202
185
203
238
229
200
266
219
175
153
173
178
208
213
169
181
166
185
191
199
133
244
218
244
270
199
218
250
210
227
270
173
208
191
176
236
190
199
137
251
236
199
192
140
200
171
114
174
249
192
161
194
246
236
258
246
233
219
244
190
138
200
200
183
156
154
167
183
181
128
194
155
217
238
148
219
211
243
195
165
224
159
235
209
182
238
161
203
157
193
219
146
169
226
247
211
187
253
225
189
214
158
216
202
275
173
181
200
210
174
249
228
190
185
164
182
198
237
201
178
192
204
182
166
198
205
174
196
222
146
235
168
171
229
223
131
168
248
211
230
181
155
166
213
207
232
217
222
220
207
167
218
218
195
200
218
228
189
198
217
232
201
256
157
148
250
227
212
157
182
152
148
159
166
187
200
175
186
174
183
212
235
133
247
249
207
252
197
191
189
196
171
204
200
148
241
183
231
239
182
198
155
232
170
179
241
244
141
185
190
236
173
163
249
209
176
240
169
223
185
211
229
254
210
175
238
205
226
126
215
191
188
210
176
181
202
202
186
165
215
207
232
241
222
176
186
232
216
218
207
192
195
182
248
186
191
180
207
217
234
200
207
178
241
248
155
185
214
207
223
152
216
161
234
280
198
141
211
216
142
253
185
198
203
212
209
236
184
175
123
203
198
107
235
210
225
178
174
186
239
232
142
221
148
197
206
198
223
172
200
208
200
217
191
226
228
192
221
200
161
209
210
206
246
175
228
167
228
254
251
197
192
145
212
211
208
198
239
182
127
223
130
245
196
233
255
170
193
217
170
191
181
223
135
226
217
206
105
170
195
242
206
162
266
189
185
204
161
176
172
154
195
237
175
173
185
203
267
179
137
248
193
221
192
143
206
217
167
229
224
245
261
159
199
184
213
190
163
184
192
205
161
171
188
194
177
177
167
181
182
236
261
210
225
206
188
165
181
227
214
159
186
170
94
165
223
295
229
228
213
220
201
244
168
278
257
182
227
257
116
196
154
181
163
204
177
226
232
198
151
126
263
197
188
171
238
227
148
259
207
181
254
181
199
211
194
143
180
239
278
188
173
188
195
146
222
241
247
141
167
192
254
168
179
239
154
147
240
243
210
227
192
154
134
210
214
250
188
236
198
178
142
182
128
169
208
210
205
158
154
203
189
184
261
256
227
162
123
169
217
181
248
192
199
172
208
240
162
220
233
215
226
201
251
191
163
244
226
184
200
254
174
239
180
154
172
216
243
165
193
264
183
245
251
177
156
269
166
201
261
205
237
244
189
179
209
219
202
273
217
110
205
184
250
189
195
142
227
259
213
188
262
242
264
275
235
166
189
221
258
202
223
207
125
198
205
200
217
240
222
211
213
261
145
213
185
181
226
225
158
218
232
222
203
207
253
148
210
257
203
228
150
203
177
240
228
249
121
188
257
181
151
176
200
235
211
226
177
206
197
226
246
224
226
195
195
221
177
230
275
116
274
215
186
187
218
138
239
212
251
221
144
222
205
235
225
187
170
188
187
184
245
172
229
164
227
229
234
253
192
211
190
167
211
236
185
163
165
210
203
274
153
208
198
190
284
235
191
169
227
165
233
142
116
211
181
253
243
161
165
192
195
220
225
159
169
192
164
174
204
212
171
163
213
163
216
150
250
248
220
261
266
227
237
212
174
150
245
188
177
222
205
206
150
229
152
206
192
271
220
194
145
223
132
239
215
270
204
262
182
199
178
200
259
260
165
226
180
206
162
240
163
170
189
219
200
228
262
241
206
235
185
203
192
245
177
235
143
154
252
210
205
172
204
227
191
219
177
222
219
245
199
254
196
136
176
217
228
199
208
160
218
217
202
167
191
247
196
185
224
187
208
195
202
148
153
221
222
202
185
217
236
209
221
223
141
138
205
197
211
212
197
208
236
235
184
178
200
137
197
168
186
185
178
192
243
204
184
240
195
179
192
130
188
184
206
162
204
178
162
182
221
241
237
181
206
159
131
266
176
203
210
241
191
248
184
157
189
199
232
242
232
172
217
222
167
219
282
203
253
237
163
134
255
181
206
160
218
140
241
198
184
201
183
209
254
113
209
187
221
229
184
200
222
233
206
178
238
216
201
162
184
268
132
175
182
184
191
216
213
237
232
196
158
232
219
178
215
234
215
202
209
218
215
233
191
213
202
198
161
228
148
220
194
182
207
203
166
140
195
199
197
260
223
196
186
226
268
204
195
205
131
147
203
169
205
187
171
191
200
280
178
172
186
192
203
249
193
199
206
195
194
178
178
130
139
182
218
146
216
237
171
228
185
162
222
199
217
223
244
151
240
176
174
192
237
211
130
174
190
178
220
195
162
236
243
196
259
216
191
243
240
194
149
216
233
257
206
214
220
203
178
243
210
249
202
180
186
204
188
224
166
208
304
235
261
143
209
222
219
206
236
242
161
230
213
163
201
239
164
243
182
192
221
257
168
198
203
135
205
224
147
210
183
247
227
203
126
236
207
199
236
263
215
167
200
242
192
229
215
217
242
253
237
221
213
237
177
204
198
252
182
200
233
226
128
131
208
197
191
195
215
255
220
227
209
234
228
232
187
198
201
229
244
195
187
198
173
267
184
138
187
209
173
160
172
227
264
220
211
227
246
203
209
203
215
266
220
203
227
175
216
215
239
202
216
204
202
183
215
222
145
139
146
202
222
212
225
189
225
231
208
227
202
163
196
188
143
180
172
238
211
211
186
123
162
222
197
165
200
212
178
215
235
220
201
226
194
205
244
215
232
260
207
226
228
257
189
157
264
159
215
213
222
223
220
249
193
156
176
148
179
200
165
155
225
202
190
215
209
240
229
140
170
121
246
148
129
205
211
197
150
175
203
213
218
166
168
247
193
241
235
190
218
156
152
212
214
182
233
190
194
191
169
181
173
194
154
134
216
253
246
122
239
185
176
172
158
172
144
148
204
229
144
217
200
189
194
248
190
219
229
166
189
219
233
163
170
244
246
173
216
235
217
181
262
208
164
182
190
182
125
240
231
209
155
193
251
250
247
187
163
209
187
180
190
192
195
215
144
199
191
228
170
176
152
223
149
216
207
246
228
216
205
198
247
180
250
169
180
192
162
179
175
202
206
200
182
252
187
212
188
154
145
145
195
190
186
164
210
198
203
169
222
171
154
196
137
187
235
258
183
153
193
194
117
242
196
203
255
236
173
191
131
215
152
233
148
191
196
181
233
172
220
197
170
205
206
227
176
209
242
210
242
174
162
200
158
152
217
230
170
193
215
230
262
184
235
199
230
219
198
252
203
196
214
158
187
203
270
180
190
162
225
147
147
218
215
215
251
216
195
239
218
228
233
183
192
178
250
230
173
253
253
143
200
239
190
134
169
203
250
219
163
154
172
195
215
170
209
187
174
218
186
224
176
234
222
264
240
174
184
204
209
225
228
213
178
212
261
235
191
212
170
166
233
232
180
207
202
243
145
254
218
232
230
183
204
195
154
112
219
209
225
237
139
205
218
237
203
177
196
228
201
170
128
165
260
189
214
129
177
174
154
223
178
253
221
161
165
219
189
233
210
125
221
193
176
228
233
183
153
235
171
191
197
175
232
233
205
277
170
174
222
202
233
198
230
171
279
205
178
192
169
203
166
221
252
247
110
239
155
208
208
237
210
200
233
168
160
187
170
220
168
234
172
194
200
169
186
195
177
153
194
243
165
216
239
206
215
196
148
193
228
175
217
249
201
148
225
188
154
228
243
204
242
199
180
208
173
222
192
162
236
186
217
227
209
229
204
211
239
218
206
222
230
179
167
168
257
125
169
262
228
163
177
146
179
139
143
251
196
238
184
120
214
155
224
229
188
140
200
189
188
175
205
242
220
168
168
208
224
180
143
276
188
207
162
273
205
186
178
202
238
205
205
186
176
223
216
224
184
226
190
165
200
223
202
216
174
167
195
184
270
205
209
207
181
140
183
229
116
221
193
203
218
254
224
176
171
183
204
117
198
235
224
214
251
164
211
229
142
153
251
183
215
177
209
175
204
189
181
196
242
228
219
195
179
200
194
208
191
202
162
214
123
224
178
194
153
177
58
208
219
203
168
203
231
161
167
210
231
235
194
197
153
168
155
202
212
190
215
162
201
167
216
277
152
239
185
233
206
245
260
244
207
184
228
206
276
251
266
160
214
235
213
190
216
157
185
139
216
167
211
198
181
223
197
240
226
224
238
174
218
157
194
140
131
201
153
213
194
193
162
226
154
216
179
220
216
254
165
201
218
249
200
160
247
198
164
208
162
167
216
234
228
245
161
207
158
191
214
276
196
173
183
163
178
189
231
222
236
198
154
241
167
227
194
179
209
145
234
236
253
199
202
189
212
202
244
261
143
206
171
177
237
161
136
236
245
122
199
126
192
206
214
131
175
211
134
169
208
218
221
231
159
211
246
247
260
186
176
194
228
224
206
243
197
231
212
247
245
212
202
181
194
179
233
196
162
193
162
233
144
186
207
205
237
174
165
208
194
259
215
197
200
212
206
174
220
204
164
168
245
187
132
209
186
196
234
260
246
151
176
247
203
212
186
137
186
116
204
120
247
250
188
182
170
160
217
175
184
189
225
199
215
242
204
225
270
211
197
191
200
197
200
224
207
220
186
230
225
261
233
245
239
183
272
220
173
159
216
156
194
161
186
129
211
189
202
180
196
225
181
193
229
160
175
223
191
168
244
220
208
186
127
178
241
186
222
298
156
183
177
207
225
204
213
228
206
178
249
226
258
240
182
174
189
177
193
166
208
216
151
205
260
207
210
216
251
190
243
243
226
245
172
170
184
174
160
140
172
189
258
159
192
175
152
196
196
170
174
176
217
232
195
203
253
157
201
186
184
200
121
229
224
157
256
147
142
193
164
242
177
199
199
200
104
185
163
221
171
197
206
224
183
215
232
199
225
168
191
195
184
172
208
205
197
227
194
230
154
207
247
194
232
243
158
192
207
156
243
172
219
200
187
200
188
207
172
217
226
118
276
174
187
229
216
216
217
189
150
198
189
263
179
160
207
218
144
182
192
208
208
180
162
153
303
165
166
180
210
177
211
181
156
215
191
186
203
165
222
178
216
145
222
212
197
233
184
167
231
185
162
187
205
212
161
198
249
151
193
182
153
135
216
152
215
228
190
147
223
195
228
161
225
165
136
203
234
167
230
194
196
236
176
217
158
193
145
193
228
224
187
214
230
228
188
213
191
230
177
199
192
238
227
196
210
185
228
219
239
223
161
195
217
240
217
159
233
218
233
204
189
195
154
217
199
206
200
203
213
231
242
244
236
189
210
201
168
179
183
185
218
132
170
222
209
256
216
180
217
182
209
237
180
133
185
147
237
143
223
234
185
137
215
210
167
184
189
157
208
126
156
206
179
181
249
219
197
252
279
205
204
219
189
249
211
144
213
167
142
166
165
199
140
243
125
223
242
200
146
177
263
171
205
169
194
179
252
228
207
243
167
246
220
208
210
123
189
218
197
185
198
138
187
278
184
220
141
168
261
161
213
111
213
135
185
205
278
205
181
183
225
158
184
156
142
214
224
147
103
253
184
208
231
182
223
186
205
202
180
172
179
199
190
184
177
205
214
222
200
217
184
231
183
187
240
220
210
202
180
177
210
185
223
199
160
132
201
214
135
124
289
228
208
239
201
197
184
204
174
217
174
267
189
223
220
213
191
152
261
178
227
181
201
250
272
197
158
209
199
166
205
208
213
232
225
185
243
218
270
193
102
243
189
162
145
125
199
232
175
261
270
151
227
170
212
233
197
210
234
144
223
218
172
247
187
216
174
153
122
142
219
186
175
194
197
191
224
191
203
195
176
219
184
171
159
211
205
134
241
240
187
209
224
199
239
163
210
226
172
195
161
186
181
239
159
201
167
167
246
141
256
201
179
152
166
210
230
221
193
250
164
210
197
184
120
225
213
240
127
188
275
232
186
165
239
206
168
248
168
215
212
231
271
148
188
178
195
227
158
245
227
166
145
235
191
210
200
248
193
202
180
144
208
167
242
182
249
192
187
243
199
225
247
178
240
199
183
193
227
220
196
138
234
191
226
166
163
161
166
185
253
236
248
207
230
197
137
133
208
179
181
209
232
185
211
232
172
189
236
262
240
238
221
230
197
278
205
197
112
191
181
160
176
246
174
246
187
136
160
161
204
242
234
231
225
225
248
256
178
245
266
210
251
227
168
237
180
228
198
188
212
179
223
197
183
270
193
198
201
229
226
196
240
251
250
231
144
215
157
177
195
198
224
212
194
196
198
190
244
158
242
177
177
166
149
169
229
229
159
227
269
205
200
250
175
224
230
173
224
177
166
206
192
199
250
245
181
241
188
258
173
221
235
240
199
176
177
189
239
199
233
249
133
171
193
215
108
201
262
215
225
177
294
223
147
163
163
246
225
55
174
151
160
209
201
229
195
156
202
168
159
225
216
223
175
185
192
227
200
271
157
259
210
180
252
139
195
195
204
199
153
167
163
191
198
215
223
196
265
195
139
164
161
114
166
192
189
204
216
205
157
155
111
223
203
200
214
171
142
218
173
204
110
226
197
234
169
152
264
137
176
186
148
191
212
129
226
179
192
202
215
179
132
281
231
209
153
216
213
203
199
130
246
235
237
203
182
179
136
229
208
132
219
151
141
207
176
247
177
220
130
180
164
193
137
181
214
260
191
145
259
223
185
207
209
243
223
188
148
211
126
209
179
197
158
215
177
253
172
217
144
125
163
211
103
209
196
135
167
182
160
200
195
173
201
162
167
174
206
217
208
207
234
175
198
156
167
234
247
202
181
141
180
219
200
214
192
193
189
214
213
205
251
175
197
211
170
254
210
240
159
228
211
178
256
156
125
212
234
205
212
194
147
229
206
188
224
142
177
203
206
221
197
220
150
225
145
195
160
138
194
218
193
176
235
155
150
164
189
192
185
183
188
190
218
213
180
181
220
158
242
162
192
178
194
166
180
217
214
177
207
219
196
212
172
195
251
225
225
193
202
215
174
189
163
230
208
135
141
209
172
160
229
214
214
211
198
173
214
183
153
200
225
221
204
202
231
210
239
184
220
219
185
197
206
195
251
215
181
177
162
219
205
228
207
154
209
233
245
166
198
168
198
235
186
181
168
182
238
220
259
201
202
202
197
217
198
209
240
212
211
199
174
230
228
204
203
201
184
192
162
182
168
194
138
199
219
153
240
240
274
158
195
176
229
239
210
184
184
218
235
200
197
196
174
211
185
208
139
191
227
156
183
181
182
272
204
179
216
261
273
221
164
152
201
181
210
160
243
220
255
180
230
222
162
238
149
197
197
194
187
219
161
231
261
244
202
219
188
245
213
206
214
161
190
164
191
214
133
165
188
198
221
205
234
209
229
243
238
225
159
188
170
167
197
198
279
190
247
160
227
166
206
180
216
134
229
192
235
201
216
203
196
231
192
182
219
195
195
150
212
208
154
210
229
222
230
208
245
186
181
233
245
173
162
212
155
256
204
262
161
201
178
177
138
158
172
220
206
205
278
204
174
184
240
208
220
227
189
227
254
203
167
215
290
187
163
217
159
218
209
148
217
260
219
142
146
234
227
164
157
212
217
220
193
219
105
230
201
227
214
252
144
229
185
232
103
193
189
142
150
197
264
247
190
212
175
166
213
185
191
227
260
228
199
169
181
115
197
190
215
249
188
179
217
216
152
194
183
234
209
178
249
229
222
232
188
195
245
169
210
262
207
258
157
151
170
200
182
204
206
166
254
218
169
220
201
205
203
195
123
189
211
196
186
225
141
165
139
245
180
231
207
202
119
221
247
233
199
207
166
164
233
124
160
205
175
253
213
179
200
202
156
200
249
196
254
210
186
181
209
175
175
159
184
204
222
139
231
181
147
134
195
171
162
122
162
186
150
196
233
218
191
215
222
155
179
226
197
226
257
212
153
212
202
240
218
163
156
219
162
230
235
238
236
210
214
168
215
204
142
158
182
214
155
195
174
168
163
193
140
179
235
211
169
225
213
234
173
195
210
215
207
211
199
128
182
186
206
171
191
178
175
140
226
228
232
200
191
197
242
185
215
210
204
190
189
156
221
246
192
179
162
155
175
174
158
209
216
213
171
215
213
230
200
210
201
193
234
237
204
195
160
192
184
185
168
240
257
186
167
190
241
169
160
206
145
162
218
166
152
240
144
211
174
164
180
205
239
242
213
131
190
230
263
235
218
189
240
174
216
207
179
167
128
213
222
220
228
227
196
158
182
219
191
183
267
169
215
246
208
202
140
196
185
224
204
162
213
196
217
172
186
226
155
195
252
193
184
156
237
259
244
228
188
195
159
208
195
270
236
190
220
242
221
264
216
221
209
166
143
224
158
261
142
229
180
237
194
182
252
152
204
202
226
227
256
156
249
158
204
212
229
141
180
123
235
199
175
198
219
230
182
237
217
173
249
165
194
200
192
126
212
172
241
185
210
218
216
204
177
249
220
228
182
154
99
208
247
229
226
203
234
246
139
228
202
170
181
182
202
197
245
241
166
191
194
227
208
242
161
191
195
163
182
184
219
137
214
216
197
201
176
228
248
226
154
187
252
127
174
220
132
168
216
189
257
168
214
226
232
187
149
215
162
278
156
216
205
254
184
219
177
227
138
203
219
180
194
240
231
211
179
176
180
292
184
190
180
188
156
186
236
234
165
216
197
195
188
205
266
199
203
163
234
180
254
212
183
197
173
212
291
186
170
182
241
115
180
182
207
232
174
182
181
186
186
211
170
181
210
233
241
198
148
174
217
212
125
154
187
191
223
206
249
262
135
164
137
149
199
212
201
185
248
198
209
215
199
204
210
190
219
166
215
212
165
180
208
168
196
137
186
232
154
181
147
203
149
227
148
128
182
168
180
229
211
208
272
189
195
201
152
213
228
165
204
218
212
237
267
139
203
158
169
273
230
205
212
188
203
236
210
166
224
238
202
223
224
167
220
154
190
187
179
174
227
291
258
257
213
191
245
204
216
177
190
238
151
194
192
105
174
171
244
230
199
223
174
237
168
233
237
186
202
217
164
231
187
193
211
146
275
250
168
158
166
262
166
228
158
211
197
172
190
257
152
77
237
198
238
230
246
176
182
209
237
176
185
195
213
193
218
210
240
243
158
239
245
181
245
191
218
224
201
167
202
198
237
192
219
214
213
189
230
182
187
210
174
202
202
264
192
261
142
183
231
164
221
224
190
206
159
225
249
203
158
213
204
155
171
219
214
219
203
223
196
189
210
224
162
181
225
237
252
162
252
160
174
191
165
159
197
133
228
168
220
180
181
146
234
231
155
226
196
227
256
223
188
188
245
220
241
241
275
241
298
168
199
196
190
220
143
239
221
182
174
246
185
225
160
190
166
191
149
228
121
148
185
167
246
188
261
232
190
228
236
176
170
242
205
279
207
158
172
189
194
137
200
275
176
251
228
221
221
237
223
213
186
214
215
214
233
229
202
285
171
161
170
215
103
223
138
166
203
183
237
199
254
213
181
204
166
240
223
254
204
195
210
227
236
227
176
197
179
211
206
192
201
179
238
120
232
223
183
212
248
86
211
208
291
230
192
233
202
270
185
185
195
158
271
200
140
202
185
170
162
276
166
243
176
139
216
211
177
213
202
176
179
197
219
243
198
221
195
252
197
207
174
211
179
238
274
230
206
185
206
203
190
194
182
173
230
226
240
248
265
215
149
152
226
226
208
163
159
217
198
141
189
229
240
224
249
164
209
213
136
151
233
204
188
216
88
209
235
228
175
182
189
249
232
163
239
172
226
143
220
180
181
148
234
197
172
210
176
193
215
257
194
232
241
249
216
259
202
182
170
164
261
218
229
212
168
187
220
165
191
190
207
204
168
178
171
187
181
156
147
200
172
194
128
190
180
186
183
237
218
198
226
270
249
180
229
214
252
179
150
213
196
249
133
202
200
196
193
250
232
211
245
203
212
190
217
204
235
215
205
155
216
257
228
259
178
214
246
212
205
191
183
171
256
198
178
191
175
152
248
166
250
172
215
174
240
216
125
217
187
251
227
180
132
176
182
261
204
153
174
211
227
236
209
228
219
199
237
178
217
212
220
164
174
218
201
172
173
254
170
161
247
219
166
154
161
199
196
201
122
229
225
210
181
245
179
217
226
182
259
215
197
162
181
150
235
188
158
210
164
191
168
209
156
175
203
156
236
249
176
193
229
183
223
225
273
179
219
211
190
200
180
212
141
143
200
199
214
203
198
251
179
221
257
237
210
211
209
202
195
273
179
226
224
167
204
145
190
209
219
207
178
202
173
244
189
215
212
113
226
161
277
219
210
225
200
184
229
219
196
192
188
174
143
182
173
198
204
128
187
176
224
240
239
221
163
157
170
173
183
217
205
236
207
179
115
204
153
231
207
261
251
210
274
202
233
174
217
219
203
169
162
218
222
230
213
228
244
156
162
181
181
189
187
261
192
182
174
217
184
182
195
250
232
212
172
150
200
194
209
188
205
197
202
250
216
166
226
169
186
197
205
200
230
197
192
221
176
227
229
210
250
247
199
211
175
225
262
248
204
203
214
142
243
218
200
199
193
191
197
230
222
141
201
196
148
138
168
231
181
204
206
187
177
174
196
254
171
248
229
211
170
276
220
204
192
227
179
226
196
202
146
178
190
225
238
213
161
185
174
122
247
168
155
204
247
267
193
147
122
217
214
228
216
226
234
249
196
201
135
236
250
277
197
168
183
223
211
177
153
214
187
224
200
140
176
227
195
225
194
221
206
207
230
170
147
228
138
147
181
168
191
230
235
232
263
185
163
199
202
176
232
196
161
263
176
227
201
216
230
197
191
186
193
242
155
132
245
278
194
209
248
224
253
180
234
259
178
232
229
229
201
187
256
153
220
142
171
214
184
187
269
213
275
191
177
165
180
248
164
192
184
190
206
170
180
150
235
252
163
195
189
214
123
218
231
179
194
151
223
173
272
155
176
190
214
220
170
216
231
233
153
171
249
261
254
228
151
245
158
205
231
242
180
182
197
238
186
233
203
168
254
196
261
166
225
238
212
230
192
147
138
253
169
209
230
201
228
188
159
153
275
207
176
191
221
224
227
194
166
217
174
157
88
130
202
261
155
209
195
205
192
178
183
155
204
202
219
214
249
204
267
145
219
212
169
256
208
170
229
143
256
262
179
261
164
185
244
241
152
232
257
171
170
172
190
210
183
206
232
164
179
193
192
233
253
229
210
223
236
214
256
209
198
252
131
253
203
153
185
273
258
193
185
250
226
171
196
155
188
149
261
132
210
162
212
220
166
220
194
206
172
261
173
202
200
204
142
222
144
222
186
192
203
181
206
187
167
177
189
181
178
229
175
198
174
204
207
204
229
211
148
240
221
207
204
210
131
179
185
210
169
205
225
174
214
252
238
268
190
212
233
163
201
222
171
200
167
220
169
248
227
229
225
269
156
184
221
240
222
191
216
151
219
239
235
159
181
130
186
182
156
195
136
193
208
190
151
190
196
187
246
270
228
238
189
177
220
228
164
172
201
291
186
193
212
228
259
213
212
214
204
90
167
219
185
216
154
185
189
239
215
172
180
168
146
202
182
155
171
217
239
181
194
215
238
216
207
218
166
218
220
199
185
162
216
165
283
187
243
216
182
198
212
214
279
177
245
181
183
176
195
205
203
199
247
225
207
169
230
215
172
150
212
188
233
207
257
88
226
264
204
204
227
220
247
209
176
202
132
187
204
197
125
243
209
129
172
189
199
182
183
205
259
145
230
223
181
207
219
140
208
202
186
185
227
107
150
276
150
215
175
184
200
237
209
232
236
221
175
185
164
187
254
239
225
218
200
177
184
179
210
171
203
140
242
229
176
201
270
213
206
218
156
228
225
165
257
216
261
202
241
146
157
194
211
165
231
289
178
216
165
155
149
190
210
209
187
217
193
212
222
219
103
210
230
138
231
188
153
156
175
221
123
245
268
172
274
231
183
150
158
195
191
214
209
221
194
189
270
173
179
243
244
189
188
198
239
236
185
235
250
168
234
198
207
162
272
153
184
192
220
260
231
182
211
176
163
257
208
195
193
139
183
255
192
157
150
274
236
167
206
242
205
243
192
246
156
204
242
201
211
231
145
178
219
155
209
195
214
161
208
196
216
168
209
221
178
173
206
223
202
209
254
215
177
257
176
271
176
140
167
150
152
177
237
120
199
174
206
178
130
215
139
154
219
197
169
231
228
193
175
218
219
186
209
228
224
141
214
176
201
185
184
166
247
204
218
137
207
186
164
261
181
166
188
169
175
142
176
156
209
202
229
180
241
222
169
196
209
190
179
194
256
221
278
189
220
207
217
148
203
247
200
201
188
201
160
179
182
225
241
192
214
158
154
186
149
268
162
199
226
120
236
174
224
265
174
247
176
254
171
122
188
252
257
197
236
200
235
117
271
244
198
217
159
237
234
169
147
166
231
274
219
235
180
237
240
159
192
189
214
154
202
211
223
202
182
216
174
168
212
235
193
158
174
196
188
193
223
225
186
229
175
195
260
189
136
254
248
229
195
203
167
156
221
265
223
247
270
162
213
209
142
149
160
227
252
266
158
206
193
211
157
167
238
218
197
191
189
211
266
167
189
126
150
243
185
151
200
117
166
170
135
252
186
203
128
277
143
137
187
206
213
206
234
135
254
180
180
144
193
200
148
216
235
236
200
146
192
169
130
278
132
259
176
235
212
225
199
179
213
205
198
143
164
211
202
212
196
226
159
212
238
217
259
177
202
121
200
238
173
183
225
247
234
135
205
236
211
178
181
176
181
246
179
145
212
158
141
195
191
190
160
192
148
163
212
186
185
243
190
267
222
183
181
221
186
212
245
197
188
169
132
248
148
214
241
181
230
218
290
201
206
219
194
240
225
165
262
219
205
156
190
177
223
183
166
171
249
186
187
157
160
182
216
144
202
221
163
175
213
227
214
129
249
132
169
207
206
211
177
144
173
239
112
228
203
191
246
142
203
226
244
205
116
150
151
260
154
172
253
214
216
245
178
216
240
180
153
150
195
208
187
205
224
210
194
240
212
227
209
174
186
209
228
191
231
203
145
195
188
251
273
186
165
172
232
183
202
192
208
229
213
257
268
194
190
183
157
251
263
180
163
166
231
219
180
201
190
249
153
87
198
191
221
253
214
266
198
239
89
174
213
219
206
150
195
234
174
218
154
236
161
218
251
185
213
218
204
264
192
220
208
224
183
166
230
198
234
178
183
169
232
120
208
254
191
183
209
192
216
171
177
166
215
208
190
202
218
188
146
195
193
211
151
151
206
161
236
234
189
153
192
214
230
159
183
165
155
150
228
179
197
192
220
198
210
227
155
176
201
191
262
123
239
191
96
205
194
237
166
156
204
203
252
204
239
162
218
222
141
215
141
217
216
196
203
226
206
189
227
239
179
226
227
194
178
258
169
212
184
186
164
210
212
198
123
244
206
263
211
201
218
221
189
189
174
167
233
177
197
170
229
166
229
210
186
237
172
262
235
241
166
182
118
245
217
229
248
163
216
202
193
263
174
175
213
215
224
191
187
198
213
169
277
199
198
229
170
245
235
187
216
192
218
166
191
223
198
213
189
210
238
131
184
216
207
170
161
162
203
254
173
195
214
163
185
168
179
259
156
125
173
173
229
192
236
130
181
191
181
194
145
213
164
175
183
220
185
195
223
251
222
208
212
210
234
171
162
159
239
204
199
143
280
201
200
196
197
205
169
181
230
144
174
219
140
211
283
227
234
255
148
145
180
245
166
185
171
234
231
187
176
142
156
205
182
253
199
187
267
161
183
261
215
266
160
187
231
251
172
197
197
171
189
169
181
170
173
139
199
126
150
211
177
167
205
216
186
116
241
211
211
222
186
248
201
233
160
214
227
190
158
182
224
176
190
172
191
199
199
181
178
192
200
189
237
193
183
216
209
208
175
182
231
224
160
211
185
253
178
253
170
186
269
149
117
255
185
225
201
225
182
243
173
140
152
212
204
186
203
223
173
219
225
218
243
199
161
149
225
240
226
180
225
223
173
266
163
219
248
166
210
204
203
231
156
187
187
215
243
246
219
222
217
214
192
170
245
262
193
184
163
223
139
178
172
226
209
150
210
210
198
109
207
224
255
220
245
196
244
191
242
153
160
152
228
190
176
213
213
205
229
253
173
253
197
267
188
201
163
166
260
235
221
226
238
176
171
254
168
200
157
192
208
182
226
188
157
231
196
149
196
180
232
229
238
210
235
169
260
186
263
187
213
124
180
157
180
184
250
121
185
174
207
206
189
196
234
194
105
184
148
226
130
222
164
222
239
196
221
246
168
208
158
213
199
245
195
164
217
150
239
177
248
205
261
197
188
246
247
204
243
248
233
220
192
188
250
234
147
200
227
121
231
154
203
144
131
194
196
224
201
242
212
193
219
249
208
125
201
209
230
219
215
158
128
170
238
215
251
206
160
225
210
169
248
226
232
204
193
177
175
187
197
134
205
125
247
141
190
157
212
239
200
232
154
170
209
208
128
186
220
202
242
180
169
219
272
213
228
258
171
277
165
204
182
200
166
216
191
255
201
161
177
235
176
219
211
205
197
155
192
242
161
259
242
185
189
225
179
174
211
185
232
198
167
180
206
227
236
205
199
152
220
229
171
159
158
235
184
279
233
157
215
195
206
185
226
193
155
226
189
156
197
251
129
181
206
182
129
175
269
218
207
215
111
135
184
232
191
221
173
187
156
189
210
141
252
188
247
174
219
172
168
230
152
211
245
144
209
255
219
241
212
223
186
233
134
230
185
235
193
164
184
237
201
235
238
127
124
207
152
240
179
156
169
227
242
166
163
208
236
153
182
171
213
212
132
177
190
185
196
150
255
162
226
214
210
247
243
213
207
210
192
161
228
120
135
194
138
255
150
180
201
214
254
204
219
144
189
188
245
201
228
168
226
231
171
237
166
209
185
215
252
156
190
159
223
244
215
195
170
215
149
143
195
197
251
194
225
242
212
232
163
210
182
282
220
196
231
164
228
203
161
179
200
127
203
218
224
211
173
192
175
181
270
190
202
215
150
247
224
168
199
209
243
246
159
124
237
202
164
206
216
223
148
170
221
240
198
210
235
189
241
237
155
186
242
124
180
179
210
220
250
239
219
195
178
232
222
194
127
241
217
248
215
253
219
67
190
151
245
184
201
157
157
213
203
175
215
188
163
180
177
254
205
146
263
281
189
159
184
188
237
171
203
180
209
180
194
207
224
226
214
210
187
190
213
135
165
181
194
246
200
144
221
217
250
195
203
245
191
194
186
216
220
189
244
206
225
243
170
198
224
108
187
211
239
205
191
140
263
168
188
154
138
186
223
251
197
183
173
198
181
216
148
227
184
191
186
216
187
202
185
120
213
214
226
207
162
217
222
212
190
244
190
196
222
214
216
180
231
145
191
247
187
213
237
201
226
150
255
162
222
187
246
229
179
266
158
186
229
174
167
225
213
230
203
177
194
212
136
230
274
187
209
239
216
225
237
183
170
159
222
172
163
199
226
242
201
272
237
124
182
247
239
231
204
254
166
157
194
171
195
141
181
225
181
233
222
170
189
160
191
184
187
204
233
198
189
214
200
165
194
188
152
228
226
202
223
206
199
223
197
217
225
224
194
189
265
254
146
258
234
172
185
201
125
229
212
212
166
130
208
160
208
186
215
202
162
195
158
160
186
238
220
226
115
233
167
195
187
221
231
202
175
202
222
156
90
148
223
164
136
237
247
173
211
193
246
257
193
189
227
189
250
174
204
255
163
248
228
220
223
270
238
110
247
229
226
192
187
182
192
206
173
184
216
185
188
203
200
182
228
179
169
208
195
210
203
212
232
165
253
186
150
240
185
210
151
181
201
204
212
166
166
179
188
181
200
207
118
176
168
222
220
233
277
199
139
215
250
188
177
222
216
186
189
203
230
168
201
186
224
204
186
109
245
235
228
217
195
234
204
235
202
212
201
268
195
176
249
211
194
217
183
145
225
219
206
219
192
187
268
269
156
173
253
259
213
217
172
267
203
212
163
182
156
214
178
210
125
198
166
152
210
160
217
228
190
151
203
208
227
200
235
198
227
219
181
211
221
194
195
203
266
242
220
247
274
211
219
126
252
210
147
220
159
221
199
173
176
194
167
165
225
173
191
205
183
234
117
208
180
188
240
140
180
233
216
181
212
215
204
213
208
207
240
217
235
148
153
146
185
169
170
187
221
227
218
230
200
247
172
165
201
211
202
219
251
168
249
135
221
186
148
180
141
211
170
173
206
164
183
179
209
203
214
214
138
154
191
181
229
198
227
231
250
181
191
220
218
238
247
213
156
227
231
223
219
269
220
229
225
239
186
190
217
202
190
238
258
265
207
233
219
256
211
222
155
213
174
266
221
210
190
195
251
275
213
223
227
213
190
180
207
249
235
259
207
210
186
222
167
222
200
145
179
178
191
213
234
190
215
223
206
157
191
169
181
205
141
297
179
169
250
173
204
268
203
197
212
192
185
187
187
262
203
267
205
241
212
196
137
252
196
231
201
219
185
160
154
201
178
210
241
168
174
174
180
168
223
174
263
161
217
192
234
194
214
235
234
251
174
215
167
202
121
144
238
170
269
119
233
227
181
182
186
204
223
254
228
201
203
219
179
188
214
184
164
235
150
199
199
210
216
178
220
191
268
186
177
191
216
228
218
206
170
234
177
236
197
121
207
187
202
209
194
188
185
235
167
217
211
158
175
237
212
218
245
158
165
177
254
185
211
219
205
198
217
199
289
228
198
210
230
234
163
230
192
158
203
203
228
232
211
214
221
244
126
178
122
148
230
226
165
254
167
243
167
255
194
169
193
259
226
232
187
250
186
228
238
231
180
205
235
238
225
170
183
207
131
191
172
190
206
177
167
211
167
232
161
223
197
237
217
216
258
198
242
236
134
148
219
244
204
162
227
198
200
249
240
204
154
210
159
241
172
259
232
228
210
228
178
182
228
203
146
222
185
160
243
202
234
212
211
231
241
239
211
224
224
234
204
232
172
219
209
213
215
182
151
221
174
184
204
192
258
215
234
202
188
232
204
196
167
224
172
205
233
245
181
176
219
256
189
150
223
209
187
224
248
187
234
197
192
198
151
186
220
199
196
233
208
244
250
195
173
225
193
217
207
189
200
204
192
233
216
217
206
233
238
211
172
174
218
182
199
199
167
265
117
232
176
257
180
137
207
176
222
203
238
221
190
198
226
167
197
206
232
225
224
184
207
181
206
179
158
220
178
232
220
133
227
199
158
188
171
184
157
216
226
148
246
202
217
161
235
190
152
209
214
205
229
170
157
222
216
218
211
232
127
224
221
231
204
224
184
188
209
184
256
262
151
179
232
164
186
228
225
196
219
172
229
187
197
254
173
197
185
146
198
252
141
133
108
197
155
231
234
221
204
210
176
245
220
220
221
161
120
183
237
235
166
183
166
182
172
211
194
211
186
186
187
217
190
207
227
230
189
155
227
176
222
243
242
160
207
173
145
208
154
202
201
172
232
139
173
127
161
202
190
253
252
235
163
226
195
215
159
234
210
189
107
221
192
209
175
221
212
178
260
230
230
183
158
243
218
234
184
214
179
170
170
222
206
231
231
259
163
174
151
208
259
227
217
249
163
200
242
243
146
166
174
243
224
223
229
194
193
202
177
240
206
247
213
178
156
210
163
157
164
229
277
138
268
131
178
204
242
143
177
198
236
168
164
132
215
206
188
213
197
215
201
217
211
244
239
253
126
226
199
230
229
224
210
218
181
252
211
169
218
163
184
217
250
200
255
201
200
200
243
146
234
213
157
180
165
198
247
210
191
238
182
260
245
191
202
267
203
215
166
220
156
266
209
213
156
221
183
199
220
251
232
192
183
179
141
131
177
225
194
241
241
208
164
145
239
282
169
210
209
240
222
239
188
244
153
187
233
231
235
196
235
217
214
271
190
230
228
159
215
190
160
153
223
212
126
250
224
180
210
239
208
160
227
191
185
145
189
161
185
181
141
190
215
196
187
199
200
214
193
272
219
157
222
207
167
193
208
198
207
129
189
233
168
213
311
218
256
209
219
192
180
229
178
166
241
183
166
233
179
228
152
277
210
232
180
185
179
185
197
269
164
180
142
178
138
258
234
252
229
186
164
238
210
217
188
245
219
243
238
167
198
247
194
253
196
182
220
208
213
173
183
224
179
194
168
211
226
194
212
140
178
222
200
182
209
218
137
274
198
191
193
204
217
158
187
229
207
207
185
203
194
166
163
203
158
188
215
208
234
181
210
256
273
245
246
192
219
240
157
236
158
163
188
242
200
231
191
171
218
240
209
201
195
228
167
244
203
139
212
175
147
222
234
176
184
255
166
235
191
181
184
162
224
212
192
172
213
140
246
181
232
259
231
196
225
213
230
290
172
214
195
278
215
213
135
203
201
233
240
155
199
166
187
216
169
233
174
268
198
177
238
175
246
224
225
246
218
205
205
267
215
185
132
200
180
240
187
154
153
184
199
193
219
188
216
241
147
214
231
202
152
201
172
177
200
232
185
224
179
153
157
200
256
186
173
205
166
204
208
143
212
172
241
158
245
237
220
209
184
244
210
157
209
220
208
193
213
207
229
236
197
238
238
229
192
246
214
176
158
163
203
177
199
198
207
218
206
224
251
219
173
190
188
246
173
183
198
229
178
278
167
182
220
188
212
220
199
223
265
210
220
171
179
201
243
249
203
179
157
208
202
131
174
176
247
192
133
157
236
140
216
207
162
161
231
206
193
200
137
172
162
213
219
154
143
212
199
166
187
153
210
168
238
195
187
204
189
163
158
218
220
227
172
180
232
190
177
198
211
134
183
263
175
204
238
187
179
180
203
162
208
186
203
204
235
157
173
270
163
267
168
201
247
166
144
223
166
238
182
161
132
176
165
220
282
164
178
227
241
218
231
135
226
195
212
188
203
204
187
206
182
132
213
246
145
198
229
238
231
180
179
231
258
243
187
149
179
218
196
151
225
176
153
219
168
172
189
219
225
195
216
170
209
207
216
234
174
231
198
191
218
198
221
233
165
175
205
181
229
208
224
217
232
176
195
193
167
179
241
190
177
134
204
172
274
197
185
243
209
242
167
237
126
210
219
233
210
142
215
148
124
186
215
173
172
176
175
256
262
219
153
139
223
225
242
212
201
238
155
172
236
237
137
206
238
143
268
203
205
213
180
237
205
198
216
224
190
200
206
148
204
206
206
231
227
158
199
207
215
159
192
222
223
206
101
265
222
184
183
209
236
259
198
195
195
181
138
222
168
211
186
256
196
191
165
141
256
212
220
230
221
206
205
141
241
201
162
228
251
208
123
200
150
179
230
245
199
282
164
228
181
199
210
222
230
199
172
208
174
258
162
172
255
181
154
158
217
205
198
157
223
176
192
265
262
198
270
216
218
134
188
171
131
226
242
207
179
214
221
205
206
227
162
175
224
232
196
180
262
214
196
254
210
175
219
272
228
153
196
213
206
193
233
162
197
187
228
235
222
178
147
203
182
222
243
165
198
224
207
187
231
225
201
189
149
246
194
174
154
230
198
210
209
214
205
140
165
218
134
190
156
173
211
228
248
202
130
200
217
207
189
206
236
285
189
224
224
170
263
161
212
197
178
225
206
214
235
166
211
190
235
136
169
183
202
196
259
185
182
192
207
154
210
240
182
200
251
169
157
213
222
187
180
185
235
194
146
177
191
164
189
203
143
241
135
244
182
155
156
173
175
212
143
228
204
215
189
203
171
241
248
220
153
159
228
190
142
171
264
194
217
206
181
230
247
199
223
251
183
240
214
180
186
145
196
198
242
193
199
207
125
174
212
263
151
217
199
201
206
210
261
249
254
172
249
162
200
204
167
261
182
206
223
229
178
219
155
216
167
286
262
269
120
207
192
201
181
202
191
214
172
226
175
155
214
216
201
188
214
195
236
222
220
136
213
223
163
121
190
156
181
240
180
200
249
182
218
192
181
195
202
200
220
205
176
165
234
192
213
187
202
201
234
229
223
218
240
212
184
173
199
196
164
172
200
269
213
229
129
203
151
206
168
195
197
205
232
164
274
135
223
216
203
255
170
212
183
207
177
198
220
178
250
246
164
206
265
140
198
206
189
216
238
235
245
222
148
206
193
204
186
217
174
199
207
195
194
243
153
176
248
197
226
205
229
253
216
151
110
203
241
144
212
183
185
177
214
183
140
221
147
226
142
130
234
149
208
196
177
207
251
241
206
181
196
223
137
204
240
264
127
243
171
204
128
161
157
230
187
188
145
163
222
244
206
165
155
209
221
158
221
193
215
194
123
193
168
198
230
193
179
230
216
150
245
206
210
177
235
220
182
223
192
219
195
128
144
248
189
209
193
226
211
181
256
187
203
230
249
235
199
207
154
169
238
119
168
191
205
223
258
181
251
181
178
214
172
209
214
107
238
241
204
180
195
191
222
214
183
181
188
158
233
217
156
183
130
121
240
199
226
245
208
202
150
206
145
190
210
226
187
250
195
146
187
175
193
213
174
193
132
201
205
222
199
180
207
185
184
229
163
204
194
282
213
150
214
189
259
188
260
176
182
183
234
164
199
227
195
153
237
232
197
175
244
215
201
199
223
205
273
239
181
177
253
197
180
233
225
220
180
194
282
256
141
263
228
195
200
193
212
177
193
178
155
181
274
183
220
242
167
240
175
156
183
247
181
210
215
146
229
178
158
182
194
202
252
215
193
182
211
163
163
198
209
220
213
194
224
227
188
187
185
143
129
190
186
178
171
231
176
201
134
234
196
195
282
250
127
198
200
202
148
207
222
199
231
172
179
237
243
226
245
160
207
232
218
175
215
223
188
176
205
187
234
252
243
228
199
149
199
210
130
139
208
221
145
223
220
153
250
180
209
248
197
143
273
183
214
205
179
167
251
209
198
177
189
188
258
182
165
228
224
273
211
173
174
169
243
206
230
157
241
207
205
151
179
222
174
204
248
124
249
210
188
168
210
201
224
179
190
267
156
196
159
235
223
206
108
203
213
216
209
155
188
246
255
198
184
246
129
267
209
212
191
218
164
174
184
160
203
261
187
196
164
206
180
152
224
235
198
168
215
160
213
239
239
230
138
221
255
155
247
220
220
197
248
175
251
257
249
202
238
236
213
151
245
191
164
185
235
195
199
189
217
179
209
184
216
158
218
191
186
156
185
207
181
192
252
238
224
159
182
175
234
150
163
162
213
118
186
191
208
179
205
230
229
198
166
232
200
196
224
104
229
133
218
113
233
153
176
197
174
209
244
209
169
161
180
200
259
197
287
186
199
259
181
163
249
234
148
207
245
222
176
145
203
214
241
144
191
200
218
249
136
219
180
234
215
173
153
169
228
211
190
228
244
185
235
168
218
255
184
178
231
255
221
207
206
179
139
194
220
150
171
199
210
184
216
253
162
160
200
220
194
119
192
196
182
185
187
205
142
161
206
185
198
191
216
274
195
206
216
255
226
213
207
173
186
228
166
185
239
181
202
236
196
182
161
188
214
216
170
211
251
151
175
197
238
194
188
240
139
195
244
215
217
199
102
180
199
197
153
225
231
239
219
147
208
215
240
225
225
225
167
205
217
230
217
222
202
161
167
250
194
146
190
179
198
249
171
152
189
220
222
228
269
174
187
264
165
205
161
113
261
184
202
193
184
196
229
210
251
242
196
254
183
222
180
202
225
152
245
204
275
139
182
169
199
185
216
193
192
171
217
188
173
143
227
216
135
186
196
154
261
153
218
239
265
184
179
189
227
141
239
195
201
227
235
213
186
204
201
176
207
158
184
184
184
221
243
216
189
173
154
184
190
173
218
262
180
178
185
239
179
219
164
206
192
175
128
231
243
149
239
133
256
226
106
217
157
202
241
223
158
174
210
243
168
206
189
186
221
223
212
211
162
192
184
134
283
126
174
114
266
180
231
183
171
134
182
215
192
221
154
172
152
254
118
209
213
182
211
205
269
227
207
197
274
207
224
204
199
202
207
145
199
239
240
99
207
195
174
181
248
231
201
223
178
197
147
182
197
215
186
201
180
146
161
234
176
212
231
193
188
218
193
232
212
159
188
200
189
241
173
151
192
185
256
220
159
258
198
218
215
169
153
174
177
217
193
220
210
246
257
217
224
198
209
192
173
223
213
212
148
259
218
219
227
231
178
176
266
185
216
181
220
206
207
217
181
189
182
195
230
214
206
236
213
203
198
185
237
167
188
202
183
217
245
109
213
229
135
272
162
209
218
174
207
180
212
244
271
156
225
189
254
188
166
215
209
214
239
228
192
188
189
220
181
194
120
217
227
203
168
263
188
270
129
226
188
244
224
226
161
213
180
212
164
223
193
161
237
226
150
185
216
200
236
197
178
214
247
216
215
110
187
201
235
231
196
136
199
191
191
204
151
164
247
186
179
212
174
140
186
180
195
259
183
199
218
238
144
146
226
231
207
193
228
214
185
228
179
205
207
162
192
235
228
241
193
158
234
221
183
232
233
253
221
204
225
185
211
157
206
180
164
225
217
212
230
164
115
226
225
238
250
238
186
139
220
251
225
144
201
217
231
186
219
169
287
193
138
175
237
237
181
177
154
205
204
228
223
165
237
217
225
129
232
276
225
187
194
156
150
189
166
186
188
237
191
229
156
243
266
218
193
157
194
179
221
246
213
154
250
231
245
217
192
185
199
173
242
171
211
215
224
241
136
200
196
245
210
279
253
210
168
187
184
233
201
202
169
189
272
198
255
200
166
189
178
130
174
213
212
193
222
237
191
244
206
217
194
202
252
165
202
189
210
190
265
144
174
112
104
193
263
200
215
156
200
220
192
172
202
107
217
171
204
188
219
171
193
254
184
243
180
253
133
244
133
233
210
188
190
162
141
232
132
178
134
194
142
212
193
227
186
226
283
170
142
231
142
141
213
211
208
204
178
180
238
201
198
255
220
243
211
274
167
173
277
198
192
193
161
153
210
254
176
173
194
185
240
194
210
207
173
159
229
186
247
204
241
200
189
218
174
194
215
230
223
168
182
191
138
271
166
157
205
245
193
187
224
198
210
176
221
218
207
164
241
202
189
213
211
208
203
191
190
206
180
160
210
287
221
235
258
222
175
253
149
194
212
240
240
147
192
210
178
181
157
185
217
248
185
193
192
136
173
162
195
241
211
181
171
204
216
243
244
142
178
228
204
275
178
171
214
171
217
190
264
208
261
242
182
205
118
223
230
250
213
249
152
206
240
236
229
161
241
198
224
184
191
241
210
199
193
212
205
280
181
202
226
193
208
233
193
224
205
198
131
191
104
142
168
193
161
207
226
202
138
184
154
211
144
242
226
211
237
165
196
222
215
235
220
216
199
196
170
215
216
222
141
148
213
143
216
151
215
170
249
142
218
210
243
223
244
250
160
232
227
170
211
186
273
207
278
172
217
178
232
195
182
217
194
174
164
213
208
213
221
239
173
208
195
209
186
196
170
224
212
194
164
203
187
92
204
236
158
166
216
167
206
232
239
213
228
211
195
206
272
230
210
208
215
224
267
215
168
188
221
244
235
205
168
166
216
197
173
214
221
182
202
242
177
240
201
234
175
145
216
209
257
218
203
221
257
204
193
205
179
255
219
159
193
199
205
218
234
211
209
223
167
215
175
140
214
231
151
185
172
185
191
236
173
179
188
207
208
236
114
194
191
128
133
218
275
192
150
244
196
175
194
223
238
222
224
215
198
179
217
192
111
197
186
226
189
195
214
174
200
231
157
203
214
189
247
187
211
229
244
185
218
153
234
205
125
170
119
185
191
174
200
216
158
177
176
201
174
182
195
192
196
144
201
181
224
198
211
215
237
248
181
190
196
188
173
194
192
162
166
229
180
218
214
194
194
184
229
200
198
282
148
200
168
233
166
148
172
143
165
190
218
181
223
236
227
157
228
158
185
268
244
214
233
204
193
216
277
131
228
160
202
249
140
250
195
194
228
224
128
124
133
225
193
200
214
236
191
241
181
181
164
187
191
176
229
139
216
247
250
184
258
214
192
146
193
220
247
212
210
212
226
193
166
139
184
209
211
209
214
176
235
153
235
136
191
281
177
206
152
204
254
210
196
276
193
257
183
182
207
241
226
211
180
215
119
184
155
210
226
142
105
180
223
293
242
143
165
220
86
214
205
213
144
190
186
264
132
216
280
177
196
197
218
163
191
182
208
200
191
259
230
236
227
203
254
257
227
174
174
178
177
213
183
237
248
158
165
190
136
208
187
220
164
194
243
193
207
193
225
233
234
199
188
252
190
195
220
176
255
163
241
241
167
146
209
223
221
152
211
159
201
211
202
145
192
192
175
107
203
188
238
171
228
216
227
203
208
181
161
238
238
203
120
209
154
206
182
256
202
266
205
186
194
193
175
140
193
218
220
204
188
185
164
135
204
195
203
215
193
195
167
225
167
234
147
189
179
262
129
177
173
171
230
209
150
276
207
186
251
187
230
163
254
239
241
179
186
189
160
211
272
211
227
214
213
247
174
161
202
200
222
198
222
170
149
199
171
250
229
231
200
164
244
190
195
261
291
247
174
248
208
200
154
224
133
138
254
157
202
240
187
243
204
188
164
218
141
285
179
240
215
229
237
159
196
196
232
191
236
146
233
184
242
186
184
206
195
184
240
194
245
220
250
203
196
200
240
154
244
157
207
227
202
200
148
177
208
145
240
206
249
193
257
233
166
140
238
135
200
212
265
189
251
146
212
215
179
230
138
258
163
273
211
185
218
244
167
241
209
186
204
217
195
208
185
117
222
193
227
204
137
208
239
170
192
183
230
190
271
222
147
189
206
210
205
218
240
217
156
221
204
202
212
210
236
255
226
164
204
155
231
252
224
196
251
213
206
226
173
185
146
198
215
191
218
175
213
232
265
156
210
199
149
223
227
224
196
121
196
191
210
217
180
187
227
225
203
120
128
184
157
230
233
230
182
215
156
218
247
232
157
237
214
118
192
194
166
153
232
185
208
169
246
210
179
192
221
146
201
163
237
190
233
140
192
215
131
193
193
231
205
135
171
140
176
184
221
203
164
212
193
192
220
192
169
161
159
170
191
180
119
159
201
210
218
179
204
227
242
215
177
167
221
179
207
169
151
178
189
150
189
210
246
159
203
254
256
167
261
204
213
243
216
215
244
139
162
246
184
125
192
146
185
229
197
217
162
211
233
232
181
210
205
252
116
245
188
152
155
241
225
155
188
166
208
167
261
223
192
183
218
160
283
139
208
160
238
209
206
214
194
161
243
250
178
189
234
208
197
200
201
170
242
156
231
161
184
171
147
176
230
255
218
188
236
209
239
164
201
163
155
200
179
198
173
199
208
224
146
179
229
209
207
150
236
186
212
258
161
209
234
189
209
223
214
256
168
188
212
210
174
208
232
153
238
251
224
261
261
185
206
206
138
178
219
239
129
225
229
160
167
207
221
243
193
184
226
192
213
231
176
219
198
185
169
167
198
210
245
222
218
186
224
289
153
184
196
164
204
175
151
202
167
183
201
133
194
182
237
199
181
197
214
210
170
246
167
279
188
184
192
150
207
195
167
256
150
239
139
175
249
243
271
220
275
229
151
199
199
168
184
129
211
224
126
188
168
204
210
169
227
236
209
164
204
170
166
183
207
182
200
212
184
187
237
278
238
207
195
183
261
209
193
253
190
239
210
187
205
230
226
248
196
275
215
201
180
253
132
243
168
164
216
193
127
155
197
219
159
169
217
234
146
124
210
233
231
248
165
199
242
151
293
170
203
206
171
251
213
216
183
221
185
197
244
181
161
209
217
195
180
214
253
204
153
191
140
221
207
229
248
201
188
161
207
207
235
224
217
151
184
235
244
147
236
245
290
208
240
221
150
195
210
173
210
252
149
231
149
174
153
239
162
204
263
165
236
256
202
221
161
245
234
216
210
219
228
194
221
189
132
219
207
168
172
123
235
156
229
211
230
241
187
214
211
270
174
247
172
176
179
152
192
235
203
199
100
214
206
182
157
176
218
180
183
196
255
183
220
128
217
217
259
190
261
225
179
236
171
156
197
219
245
214
219
125
245
208
225
201
208
210
180
169
198
171
183
228
203
199
249
224
185
195
234
163
221
188
184
193
213
174
184
239
209
170
173
175
183
239
189
223
175
207
216
205
186
230
182
246
174
215
182
242
207
224
180
194
184
165
177
216
172
202
253
175
133
208
194
221
182
198
247
242
175
222
152
197
135
177
222
188
205
254
227
204
198
128
202
234
169
101
232
238
176
136
240
213
240
151
221
239
200
193
174
206
193
231
202
201
194
215
237
173
244
191
220
245
151
178
195
160
213
161
212
151
210
132
123
119
227
195
215
180
203
209
269
170
238
247
149
211
130
243
209
201
146
197
197
182
291
220
255
230
252
173
234
201
253
235
199
161
234
159
242
214
213
162
178
175
237
167
168
101
231
198
193
248
127
250
167
182
237
144
238
224
228
211
179
148
221
208
139
229
180
225
206
197
199
215
115
177
169
249
183
179
237
132
189
196
174
182
178
207
177
157
192
143
203
163
260
238
209
154
187
190
217
193
169
212
164
186
234
172
145
140
197
175
195
255
215
235
206
196
131
207
188
241
191
229
190
200
141
197
180
201
177
223
219
229
187
205
141
216
191
202
303
207
180
175
221
152
195
229
234
200
211
157
228
217
196
213
208
187
189
190
199
181
235
229
197
181
215
234
210
175
185
102
165
97
212
221
214
197
183
182
205
188
171
195
203
206
221
174
223
189
147
200
229
223
227
184
204
207
155
191
220
282
222
152
175
253
190
157
160
140
215
123
216
205
176
209
181
240
175
184
199
237
141
202
235
193
140
207
234
233
154
170
183
271
233
197
212
190
198
213
174
226
162
204
227
160
182
199
140
174
250
128
228
196
216
267
152
241
229
132
130
173
181
157
236
219
173
158
205
180
216
221
252
181
174
211
212
202
203
219
151
191
178
178
214
233
173
218
187
166
177
200
257
139
104
156
225
213
228
184
224
200
194
174
245
223
189
272
191
220
231
181
229
216
216
161
197
245
175
170
156
208
193
162
231
189
183
181
202
240
222
206
153
116
217
200
195
283
245
158
178
273
130
274
244
233
247
192
253
189
131
217
203
200
206
162
226
168
248
193
218
223
94
232
194
210
200
191
204
154
149
238
197
187
148
221
158
263
197
241
150
208
202
159
237
231
189
205
215
116
184
170
155
130
157
209
196
240
248
255
243
198
192
198
202
108
218
201
252
234
233
215
183
216
191
188
247
214
245
212
182
188
201
147
249
188
185
180
138
185
217
202
207
207
207
214
199
140
219
221
144
205
159
215
182
133
222
213
205
205
185
193
146
170
191
183
174
115
162
219
203
218
221
215
207
232
193
207
182
174
211
179
194
229
159
229
194
171
163
216
164
221
177
283
176
194
202
195
148
205
206
149
194
168
194
217
161
225
188
210
173
272
234
206
201
205
152
185
210
204
245
196
195
154
267
247
205
195
217
211
186
129
234
190
216
208
162
160
187
166
189
194
208
179
196
153
182
232
137
191
167
138
242
230
259
171
206
178
174
267
173
226
208
166
204
167
175
179
229
198
210
233
261
234
206
239
226
263
180
225
221
215
220
244
186
124
187
267
173
208
173
168
219
163
158
200
176
232
184
207
194
230
264
187
140
239
241
198
223
154
212
188
140
209
223
180
244
179
207
208
163
231
204
195
213
258
199
196
94
188
205
155
179
131
155
176
205
184
165
240
248
180
207
150
153
142
199
241
223
197
191
181
222
223
201
173
194
146
176
184
244
254
196
217
159
175
212
212
221
156
179
234
241
260
193
175
250
216
204
185
204
161
250
213
167
202
212
192
244
218
139
205
195
194
236
166
113
154
216
182
127
225
155
199
196
204
232
193
207
171
178
119
226
208
205
153
128
210
233
210
170
252
207
206
217
159
204
216
168
208
230
241
183
216
140
233
213
184
236
224
213
198
192
169
243
168
198
196
145
267
214
173
168
215
124
207
239
147
189
170
235
146
179
180
174
143
122
157
179
192
209
185
215
193
142
178
188
143
206
224
171
213
202
185
212
182
180
186
212
217
221
149
210
161
191
218
229
124
242
173
248
246
207
181
275
243
163
214
221
253
163
183
159
216
180
152
190
145
227
205
248
221
247
156
151
227
215
132
177
261
167
252
191
222
269
254
255
192
257
209
166
216
236
160
204
122
162
207
202
225
216
183
205
197
271
250
161
235
210
212
228
170
203
216
190
211
206
163
256
203
236
194
195
184
141
142
254
224
175
220
186
210
189
185
183
171
189
233
190
229
145
212
167
240
180
196
190
209
186
186
222
228
208
216
190
234
203
207
166
189
240
159
198
198
235
203
202
218
170
137
183
163
227
215
251
183
195
224
175
198
236
203
198
176
220
171
169
223
208
197
137
213
215
216
213
145
249
241
227
192
159
238
156
258
240
262
238
265
215
176
231
240
216
183
239
247
236
151
189
188
165
224
221
230
237
236
190
215
261
220
195
200
188
162
214
163
151
196
207
255
194
239
177
238
237
201
205
174
197
228
205
174
156
171
222
141
230
232
259
215
251
222
210
228
218
181
235
182
179
198
179
223
196
212
143
160
144
107
163
214
127
213
191
229
154
150
174
297
222
198
150
239
154
185
177
179
162
240
135
221
227
250
192
166
216
147
199
231
227
122
246
204
265
184
221
201
188
263
159
203
222
213
232
219
203
176
152
203
202
166
250
243
205
173
181
143
207
188
246
220
217
182
242
194
136
185
170
215
197
208
213
217
190
163
134
255
168
161
180
211
193
195
204
169
230
196
202
195
185
170
221
146
261
222
222
233
188
154
111
237
249
200
184
192
195
182
186
213
207
196
229
222
186
219
172
192
221
204
183
147
227
233
258
237
179
152
220
205
207
168
191
198
213
230
172
152
244
192
176
239
190
260
196
204
222
219
199
204
129
211
249
220
172
206
184
182
176
204
241
163
223
248
252
199
191
225
236
148
134
207
165
198
199
185
226
228
197
194
239
274
222
202
94
161
221
193
170
211
148
251
179
237
164
184
201
252
200
216
208
212
178
178
245
169
160
209
217
147
163
110
219
219
190
225
142
195
127
184
178
235
180
238
183
170
200
305
172
259
181
222
188
212
174
230
223
183
206
226
191
179
251
233
180
238
200
191
227
230
173
226
186
195
157
190
176
255
192
209
188
155
244
192
219
237
182
233
264
206
215
156
207
282
171
178
174
195
232
221
251
134
238
178
215
179
278
193
224
169
193
200
182
230
172
204
191
213
236
175
196
212
188
154
186
165
207
229
183
227
168
205
181
215
210
234
138
177
277
208
211
227
222
171
245
181
147
205
169
184
192
230
217
215
182
143
237
168
221
145
160
225
218
196
237
196
192
179
206
220
236
180
197
236
229
241
211
180
170
204
210
203
247
209
195
227
203
188
123
184
275
221
185
153
217
210
222
222
194
258
192
234
207
211
198
189
231
236
233
222
171
195
176
173
222
202
242
133
227
134
127
239
185
201
190
210
172
205
198
187
179
200
165
190
171
251
223
232
201
221
254
206
276
187
188
206
242
224
149
218
167
253
196
164
216
182
225
224
243
187
177
192
225
169
186
178
184
204
161
215
181
178
242
192
182
227
263
255
190
207
177
197
272
169
226
181
140
227
239
239
178
158
174
174
219
157
121
208
244
196
174
131
228
202
219
226
216
174
246
209
142
228
223
244
249
118
236
182
132
222
209
200
245
102
222
204
208
210
113
225
191
265
242
253
210
183
207
210
164
166
184
193
230
202
234
303
235
240
157
231
161
171
140
195
144
238
249
224
204
167
214
217
221
213
149
175
210
252
168
249
258
211
186
239
223
169
150
186
211
214
172
279
236
246
246
251
179
223
218
263
192
133
226
231
205
163
157
197
163
134
189
233
245
219
218
232
198
149
240
280
244
231
154
182
232
227
188
193
196
231
230
202
215
233
200
261
212
161
258
257
214
305
236
205
180
208
164
205
207
210
234
248
161
155
200
210
259
209
142
137
192
233
183
267
209
123
234
184
191
139
129
238
227
208
211
236
182
227
185
207
213
201
189
183
149
194
166
217
171
202
209
179
163
165
207
155
197
180
170
141
252
251
238
174
206
138
235
175
266
230
230
203
230
164
177
192
178
220
169
214
230
162
172
231
203
200
166
140
214
166
231
215
226
259
216
240
221
268
167
228
217
146
187
195
190
141
183
255
145
188
243
207
144
193
240
181
225
212
219
207
197
212
268
202
212
217
228
245
271
204
170
168
157
171
167
228
214
257
205
222
209
168
177
252
218
235
177
199
205
138
208
220
234
132
232
206
194
188
214
205
176
231
218
143
254
257
234
202
222
159
191
221
204
198
205
211
235
237
216
194
210
238
183
187
224
228
156
226
258
113
177
180
123
204
264
168
228
216
206
161
142
206
206
228
191
184
173
182
196
198
143
134
226
236
230
211
262
178
143
211
244
210
211
224
169
164
182
189
220
169
166
154
192
176
183
135
150
143
180
225
157
209
153
173
163
241
224
171
198
212
186
215
272
175
223
246
139
275
238
230
151
213
259
248
235
172
151
217
210
211
169
203
209
238
196
238
134
214
228
203
196
182
206
263
144
131
211
206
210
153
209
198
192
170
168
178
148
232
157
253
191
259
244
171
192
218
196
159
191
171
179
201
194
180
132
191
242
200
192
224
292
149
168
232
172
184
196
236
121
159
201
154
182
204
175
218
156
212
184
271
199
139
178
193
240
218
189
225
158
241
212
223
185
246
259
177
183
196
217
217
240
306
199
163
218
232
145
157
270
225
203
192
191
255
209
134
230
247
215
230
193
175
251
242
215
177
153
221
218
208
238
173
191
168
175
143
233
197
275
240
233
207
229
189
218
196
203
225
223
161
221
205
162
189
194
241
229
166
213
192
208
201
154
229
243
251
177
160
213
185
161
164
202
221
270
251
170
246
182
230
197
198
185
252
186
161
225
208
208
225
212
190
206
158
200
145
171
210
184
217
235
225
253
121
266
207
144
206
221
199
239
155
153
185
212
177
229
192
179
244
199
172
183
202
209
186
174
185
176
128
167
189
144
183
157
195
144
231
170
213
158
159
194
267
203
233
137
190
198
158
214
164
240
239
179
232
153
212
159
206
199
211
166
177
211
139
223
245
258
167
140
182
257
246
146
212
149
238
199
170
176
193
180
174
205
213
193
141
222
195
205
236
247
275
211
168
199
218
201
159
221
257
234
183
192
203
212
169
178
219
197
248
263
207
208
234
204
165
235
233
168
138
199
277
197
224
207
107
210
205
190
261
135
219
183
211
167
156
235
169
185
231
170
291
140
213
181
244
153
162
222
219
230
159
204
148
228
186
269
196
210
183
186
242
228
210
252
210
190
236
213
160
224
182
178
208
202
170
130
179
223
218
183
197
162
180
219
215
186
207
167
108
195
178
182
196
139
241
197
239
199
232
192
233
232
239
238
138
224
188
233
178
261
221
225
211
200
245
218
175
219
204
183
219
145
126
250
225
170
251
168
190
230
140
171
252
206
228
147
195
221
196
173
159
260
185
211
205
224
249
257
189
158
218
231
147
156
172
224
210
130
193
273
107
207
161
163
173
170
203
191
197
185
233
141
264
173
206
128
178
280
153
212
132
193
169
209
213
197
158
196
189
192
179
211
227
203
173
193
196
246
223
192
227
181
208
197
233
228
143
171
213
231
216
219
175
225
234
188
240
207
237
170
128
180
188
208
219
202
156
165
198
225
200
176
204
187
175
246
198
220
204
201
154
179
186
187
164
240
226
211
212
198
138
233
228
236
225
194
211
202
182
202
217
271
206
174
220
194
188
209
183
188
170
204
234
226
219
256
249
252
227
220
199
159
141
214
209
177
189
149
186
183
198
201
214
130
133
159
210
261
184
181
129
208
189
197
180
189
206
188
195
196
123
219
146
200
265
217
196
134
223
240
128
197
172
261
155
188
146
161
193
178
169
246
166
260
232
230
273
206
321
179
199
105
132
177
172
154
168
226
215
216
213
291
216
204
194
166
200
288
185
191
202
157
243
217
210
198
229
166
192
170
212
181
193
147
187
156
182
183
186
254
173
187
177
228
196
184
172
186
213
210
187
215
212
216
194
215
192
258
196
256
197
243
233
185
169
191
208
145
205
214
147
191
207
178
243
186
205
189
255
148
237
215
186
176
203
170
151
229
136
195
173
209
218
204
220
219
250
201
150
226
247
211
201
219
220
260
251
204
239
169
183
179
208
186
229
222
186
225
156
189
195
167
193
229
163
170
170
158
178
158
167
237
179
166
261
209
120
155
220
233
177
174
194
251
168
249
183
239
246
164
209
259
252
197
207
232
207
191
195
221
205
192
188
229
160
207
144
199
257
196
139
206
225
144
181
239
235
234
204
187
177
168
143
175
193
171
183
143
214
231
208
180
148
186
220
237
238
184
236
195
242
227
206
216
190
245
207
244
234
161
165
226
239
208
198
214
208
228
120
207
199
261
163
242
230
188
200
209
240
203
215
134
200
210
174
200
148
191
152
223
173
176
157
203
200
186
144
256
218
190
201
215
220
171
146
218
105
199
150
259
188
244
204
98
106
181
223
240
131
214
286
164
172
250
235
197
218
148
119
216
194
182
184
188
165
213
158
190
262
130
201
194
201
183
199
183
232
262
196
217
253
216
212
228
186
234
197
148
140
211
207
164
221
200
158
171
191
206
143
244
200
212
189
218
219
189
202
257
181
272
200
261
218
174
219
229
130
203
161
196
230
192
197
240
277
227
224
105
166
205
215
222
199
152
202
166
217
213
262
225
134
186
218
152
223
187
208
204
233
204
214
193
168
219
145
210
228
189
173
208
199
196
198
216
200
181
224
235
241
263
190
197
179
252
239
198
188
220
165
239
180
225
195
176
229
201
176
186
214
141
181
204
212
154
182
190
192
217
260
128
183
196
213
236
167
221
200
238
115
204
230
216
199
189
237
167
175
160
207
209
203
231
178
171
167
205
142
170
176
162
159
204
244
253
236
206
220
199
210
243
222
186
200
263
181
294
226
227
167
177
226
231
147
192
196
194
210
214
209
225
174
220
226
225
172
174
162
237
228
217
259
190
202
196
244
207
229
172
193
139
283
219
194
231
211
207
225
236
197
189
251
159
220
213
217
120
238
175
217
210
230
187
231
199
160
197
196
188
232
211
219
238
183
196
231
194
82
198
190
198
218
272
248
179
207
218
138
188
187
208
187
161
252
189
163
147
139
197
212
142
118
220
171
221
192
190
154
213
111
237
221
181
163
187
245
238
208
219
203
197
218
160
256
157
213
172
191
238
208
183
209
236
191
165
193
225
129
224
245
223
226
172
201
194
203
202
261
201
174
196
197
183
212
230
206
229
158
216
173
184
188
116
226
201
164
212
174
158
219
177
192
196
231
172
201
226
239
208
197
247
220
236
192
214
111
190
177
164
189
200
168
185
224
238
133
188
227
186
277
223
214
182
184
266
167
202
193
172
253
242
204
197
240
238
197
172
163
167
171
235
205
121
216
208
163
191
197
236
183
168
177
201
189
193
201
191
240
208
199
202
219
101
212
198
216
261
133
188
252
211
293
243
250
181
220
186
149
182
202
199
150
225
207
154
242
165
166
227
173
206
182
187
175
157
234
244
196
186
204
252
214
186
233
206
152
215
201
258
183
265
183
237
192
240
179
200
176
133
222
235
135
215
278
273
192
242
224
175
188
212
173
247
224
188
210
203
199
187
235
196
221
156
193
220
179
131
243
205
225
229
206
237
222
197
176
149
259
197
240
185
235
154
259
165
208
202
156
159
173
182
194
202
108
252
150
212
218
236
181
188
228
167
218
217
197
170
209
177
238
204
240
222
203
229
166
173
188
154
216
236
192
238
154
178
210
262
233
221
244
222
178
235
219
157
198
145
247
241
226
209
152
244
120
230
181
195
208
179
288
223
242
167
168
164
195
163
210
207
195
253
229
199
216
249
209
240
220
221
149
215
187
128
270
155
201
207
233
246
204
248
224
209
153
256
233
168
186
259
167
235
233
201
206
217
134
204
176
136
199
283
184
225
216
175
197
182
198
231
200
281
204
189
194
197
164
153
164
243
72
215
241
188
197
226
203
206
255
191
245
137
248
202
218
216
206
228
223
211
160
213
243
222
218
180
213
129
245
162
226
212
204
159
213
253
180
159
176
206
222
208
192
223
189
171
223
228
236
181
188
236
172
209
224
246
189
215
152
184
240
238
204
171
164
152
283
165
168
228
208
127
180
187
201
192
213
171
188
179
241
168
268
220
187
198
183
222
164
208
255
257
191
222
198
195
247
207
229
184
198
234
230
207
155
194
210
270
126
190
170
214
208
215
142
170
154
208
237
237
157
228
221
248
227
219
218
174
175
223
193
233
202
203
122
183
178
215
180
132
212
190
118
213
190
193
138
244
175
115
257
182
185
144
155
163
194
168
177
195
215
240
109
225
197
203
110
195
204
201
118
217
160
194
237
217
151
129
192
184
234
248
161
173
163
186
209
156
214
228
192
175
176
147
137
178
152
245
202
218
214
123
176
141
228
192
280
203
207
265
134
181
240
202
246
270
184
262
242
165
175
192
190
235
139
210
263
237
184
189
257
124
269
154
147
230
233
229
124
200
143
149
190
240
169
203
177
182
212
173
217
232
186
133
238
205
239
168
261
250
229
158
236
196
166
199
268
174
218
189
223
167
152
220
186
205
231
147
167
186
171
199
203
267
193
174
173
178
285
212
207
184
179
205
228
192
266
248
236
191
194
180
198
153
230
216
213
159
187
193
235
189
189
240
145
161
187
214
184
208
191
205
143
177
207
211
189
199
225
243
181
210
238
222
216
209
180
173
238
198
200
230
232
207
106
216
212
161
243
181
199
185
285
209
113
181
204
142
221
243
218
156
246
180
170
162
166
167
242
159
181
215
219
233
227
238
211
234
106
252
230
147
184
209
177
120
235
208
256
260
173
178
221
197
199
233
242
211
156
165
180
203
191
179
223
208
277
161
189
185
194
178
221
178
194
213
231
205
147
198
223
193
193
139
165
282
186
229
217
165
224
220
157
211
214
202
159
176
189
189
176
222
244
174
187
206
237
181
249
173
221
195
141
174
173
183
263
208
258
195
214
190
153
175
213
204
172
221
182
227
156
176
171
178
174
236
217
137
206
167
199
136
188
195
172
200
168
172
183
149
218
196
200
200
135
144
217
174
182
158
253
195
194
199
185
190
149
178
171
244
225
170
229
252
261
235
194
203
262
177
242
199
177
235
208
160
191
194
232
274
229
181
232
220
228
191
119
178
234
236
207
183
215
209
256
187
245
255
238
192
151
229
220
183
174
204
183
223
190
238
164
220
246
197
177
151
136
176
157
163
218
198
221
186
257
244
157
210
244
147
254
185
211
201
228
151
227
215
225
162
190
198
230
153
247
182
257
246
166
205
173
185
195
196
256
168
222
163
214
251
178
149
236
224
218
190
212
211
252
139
184
221
168
211
223
146
168
209
212
206
182
197
220
224
216
223
192
218
186
182
178
213
223
193
181
218
127
202
183
217
186
137
184
247
198
174
254
229
205
160
260
219
235
128
171
191
171
130
152
264
182
200
209
216
201
183
217
228
228
214
235
225
131
235
209
228
240
157
221
161
264
185
188
233
194
227
168
203
241
198
194
201
138
125
246
219
209
178
204
214
261
202
237
223
248
205
208
174
232
222
184
180
170
193
228
224
166
236
167
197
194
174
229
227
217
172
213
233
221
187
207
131
126
234
227
174
160
211
230
214
201
133
224
195
177
196
176
254
141
186
209
210
245
223
260
179
256
144
218
157
197
221
157
189
218
183
235
148
222
203
216
229
221
204
198
206
224
259
151
230
169
200
252
224
157
194
193
188
207
162
115
154
235
175
215
252
187
251
200
219
205
225
178
221
263
167
230
192
214
193
255
220
204
142
199
194
172
141
190
177
104
206
193
171
218
206
201
153
176
246
189
112
162
252
186
144
207
212
224
193
229
151
204
174
237
236
157
223
212
185
235
208
159
177
138
182
132
200
216
207
109
181
177
235
220
183
162
148
193
169
231
202
219
215
175
88
242
249
231
204
240
151
219
240
209
211
197
118
153
202
233
211
228
241
229
174
161
196
182
220
174
214
276
200
197
200
155
226
201
188
212
220
219
199
214
255
204
197
181
201
138
176
213
229
190
203
168
205
191
177
196
199
160
179
207
211
138
155
204
217
250
241
270
197
181
151
228
194
189
215
142
162
168
205
216
206
212
216
216
214
245
185
221
254
173
187
192
233
176
193
224
207
182
199
156
109
196
213
152
219
199
241
146
200
220
241
219
163
169
224
191
210
223
160
270
182
191
225
234
207
191
239
202
234
203
171
212
190
185
207
201
194
115
190
174
240
176
166
235
218
213
176
212
147
188
174
226
203
212
190
256
195
172
244
177
228
170
265
178
141
234
232
216
170
208
152
187
188
174
200
164
230
233
237
244
208
207
207
225
191
203
171
218
160
230
189
196
209
246
208
202
245
237
193
174
248
182
218
198
241
251
265
239
203
245
164
221
215
135
202
160
209
206
191
212
226
199
241
209
263
235
186
204
258
233
199
155
227
166
126
177
218
167
215
169
216
202
145
159
208
186
259
190
209
217
184
151
210
195
235
203
163
181
202
187
240
184
157
167
207
200
219
242
240
224
213
147
177
179
222
211
176
242
192
185
198
215
213
150
275
195
234
193
207
163
223
196
217
171
186
216
225
183
190
218
228
222
205
187
256
168
231
174
224
204
165
198
159
180
276
250
164
193
177
198
247
193
203
211
224
256
212
154
212
224
231
221
228
212
194
132
211
200
260
195
251
172
177
175
175
202
246
231
167
206
208
216
175
241
194
156
241
255
242
215
183
197
182
262
185
156
182
228
249
275
149
202
219
181
217
261
249
183
217
164
198
209
228
187
213
201
183
232
174
214
224
182
185
179
216
136
179
167
162
192
255
206
223
198
172
212
210
186
222
229
219
207
242
126
150
205
197
163
193
210
121
192
184
198
244
140
211
263
232
204
200
147
234
197
199
230
160
219
221
204
166
172
187
261
162
195
194
208
305
249
177
252
104
219
244
158
150
238
190
182
227
162
163
176
207
207
185
236
196
215
252
184
220
209
211
146
223
241
260
215
193
214
161
231
208
165
238
168
234
170
245
223
190
165
184
178
200
202
197
215
187
295
189
168
199
250
250
170
215
185
193
210
204
186
178
122
235
223
136
189
235
193
199
181
185
185
196
215
167
204
246
275
170
277
231
200
211
174
199
205
249
191
226
192
190
199
209
129
210
209
240
197
172
219
167
210
174
157
184
234
175
228
210
244
180
241
161
205
166
180
264
138
207
164
201
156
170
218
187
171
182
165
126
187
196
206
222
191
237
185
178
198
200
173
132
173
205
265
177
228
172
168
177
205
184
221
173
175
244
219
125
160
159
218
189
195
177
220
161
197
142
135
180
188
174
200
214
168
180
296
135
167
185
223
256
225
212
162
237
198
225
241
139
177
203
224
175
189
211
222
189
191
193
234
219
304
225
213
178
225
203
198
210
198
229
183
203
147
174
150
234
175
235
221
196
257
210
155
168
193
176
231
229
171
232
260
158
219
200
190
196
203
173
183
195
175
241
211
232
200
228
144
179
238
177
207
225
219
154
164
210
214
235
164
205
174
225
137
222
169
182
251
217
215
187
208
208
154
219
192
212
161
212
203
170
207
260
168
177
160
218
215
181
158
226
126
206
182
246
189
192
174
153
258
201
134
235
215
204
226
247
242
176
152
230
183
246
225
167
248
164
178
180
261
252
209
179
209
211
254
195
239
209
168
252
181
212
153
191
193
188
159
192
138
154
197
239
179
216
174
180
164
193
179
226
221
220
233
189
185
220
168
154
258
169
241
221
198
199
214
197
237
184
104
177
225
173
189
185
193
181
214
249
236
224
180
226
164
246
155
190
218
126
281
174
244
233
222
183
126
142
150
186
150
220
220
247
234
145
173
227
205
256
154
196
268
254
161
228
182
167
195
128
167
257
163
156
139
184
197
152
202
216
279
182
223
156
151
185
232
146
247
267
234
240
169
263
186
267
236
204
143
198
162
217
141
144
239
225
271
202
204
255
205
214
263
192
174
200
180
147
243
181
201
227
232
283
177
236
210
174
185
270
150
186
200
233
201
203
150
164
188
199
280
152
228
209
209
238
215
216
197
150
257
224
199
202
193
206
206
274
209
211
232
211
251
223
193
168
172
213
172
206
221
161
234
156
166
205
212
203
252
142
168
197
171
209
233
216
201
170
179
202
197
167
221
207
184
182
217
195
154
258
169
212
137
244
235
181
239
230
246
256
223
189
156
158
190
160
219
190
227
268
238
173
257
233
184
220
184
262
249
238
172
136
223
172
141
123
212
186
184
273
216
220
185
210
195
137
232
212
164
175
215
217
226
224
171
157
187
224
183
213
212
199
180
187
223
199
213
245
170
180
229
170
175
190
156
222
168
182
128
199
212
134
146
219
218
215
247
195
223
249
175
221
196
171
93
186
151
203
216
176
240
225
228
224
201
191
269
233
221
210
210
202
219
248
224
234
228
211
240
175
234
129
184
200
214
151
220
170
216
186
162
235
177
240
200
138
209
259
200
155
203
180
195
195
203
180
157
217
157
216
236
190
138
186
192
164
209
179
216
226
196
212
232
163
205
153
164
158
196
230
210
217
205
142
149
134
202
211
175
166
182
183
183
197
173
123
158
205
263
266
204
239
225
218
221
153
217
238
203
236
287
159
142
133
184
216
206
259
185
209
165
226
268
204
179
234
118
195
185
132
238
180
200
221
240
198
174
185
240
143
186
186
176
180
160
265
154
202
178
213
202
270
190
185
249
208
235
118
158
194
190
246
164
195
231
217
172
153
201
142
200
160
182
191
236
206
166
195
237
168
143
182
251
231
236
168
187
154
251
219
198
239
221
199
240
201
223
186
198
150
204
205
219
246
230
152
191
151
206
235
207
206
225
249
240
139
184
229
243
199
187
181
231
228
184
247
232
228
228
271
198
158
193
180
238
133
237
181
185
148
205
191
200
222
194
203
178
232
240
225
197
198
230
185
160
181
193
186
280
160
223
257
183
162
168
231
217
164
98
227
243
129
125
176
202
201
161
188
203
166
199
171
224
163
225
202
187
137
224
154
230
170
128
181
204
207
218
169
160
222
213
189
167
192
223
189
222
212
198
229
250
168
243
188
228
177
184
200
247
194
256
205
210
206
195
175
189
161
157
176
217
209
217
224
262
213
162
225
201
181
227
189
235
210
197
177
236
234
186
176
212
240
258
158
139
204
199
190
241
208
226
190
169
201
230
209
238
201
272
248
130
264
187
182
244
253
219
216
239
214
201
148
196
143
212
184
194
223
177
206
232
224
238
253
144
174
220
218
186
194
254
192
206
250
182
181
170
153
186
187
228
223
204
198
267
240
280
215
180
249
135
162
203
136
188
177
191
161
158
197
173
179
202
215
189
161
160
213
212
188
189
265
187
195
197
240
196
248
223
225
241
204
200
228
207
153
186
237
203
170
226
223
135
181
255
197
217
173
202
262
213
207
199
204
165
174
230
183
200
188
246
222
209
204
230
215
171
205
233
154
190
222
205
261
220
196
178
252
229
150
223
216
212
179
260
262
224
238
167
209
173
221
219
157
234
220
228
220
173
255
192
215
190
189
215
150
224
163
253
252
157
184
178
187
180
186
128
157
176
195
164
199
200
201
246
198
176
190
206
179
168
110
206
226
199
222
207
211
192
237
221
185
203
265
226
217
197
201
246
194
226
175
176
194
151
230
261
256
132
255
259
218
256
198
254
232
188
175
257
167
191
192
274
216
206
220
170
177
168
205
133
268
250
160
201
247
273
169
209
201
186
187
261
223
200
193
216
193
140
137
201
148
172
243
206
177
239
194
160
253
196
291
214
210
236
166
240
197
154
204
138
123
194
212
186
253
214
208
174
199
201
224
153
160
159
239
144
186
195
179
206
191
180
247
204
224
226
248
155
212
208
184
260
190
266
173
128
191
180
139
137
126
197
195
213
233
140
158
176
191
226
207
249
192
197
196
138
208
191
198
205
195
230
188
250
169
216
182
233
240
170
144
235
151
174
230
186
249
195
194
204
242
224
185
177
189
195
225
285
141
241
152
161
127
200
227
191
180
220
190
182
229
267
243
270
191
223
208
204
248
180
118
218
201
257
239
176
274
189
189
244
208
179
217
104
234
128
253
183
211
162
227
195
180
199
233
228
163
248
178
223
172
137
203
217
165
211
190
209
248
176
218
193
201
204
221
209
204
217
233
250
142
262
208
194
191
221
192
192
170
171
140
168
245
199
189
146
237
209
193
171
186
160
163
192
205
211
228
215
163
190
205
252
213
230
143
245
126
219
273
169
254
208
256
223
177
203
217
192
237
170
213
140
139
199
195
234
263
198
211
219
159
215
142
181
164
216
152
241
222
163
125
194
238
177
218
146
155
180
178
218
248
239
157
217
206
151
175
227
223
193
234
203
167
165
206
119
204
167
264
200
246
181
225
174
199
167
240
188
192
197
191
160
145
194
193
220
226
153
189
164
138
221
215
184
188
179
221
205
223
206
169
268
193
108
213
289
193
207
177
239
213
254
202
186
223
202
145
232
214
171
184
201
224
218
233
207
213
148
217
183
166
208
204
245
165
171
242
171
224
185
186
157
228
152
204
178
186
181
158
167
210
113
179
212
212
241
159
127
127
217
162
182
227
227
198
257
309
267
276
181
205
222
190
225
173
169
190
186
163
255
209
181
218
236
225
242
189
196
227
224
218
182
200
197
222
193
193
132
226
163
276
201
227
173
213
191
159
191
147
212
184
240
174
206
205
199
221
210
197
144
231
203
225
271
177
178
238
185
168
167
186
196
195
188
224
189
195
233
225
185
167
195
187
154
214
205
162
186
244
213
182
226
196
217
208
183
209
228
177
245
211
187
241
160
197
266
174
254
187
202
239
187
139
253
149
179
221
150
201
185
191
214
211
158
181
139
181
217
228
184
214
185
207
191
197
267
186
184
168
227
159
177
126
209
190
231
240
259
221
195
199
187
139
196
185
145
216
161
196
195
199
253
207
118
172
185
202
256
236
134
286
165
174
186
175
214
222
188
230
192
212
206
176
176
157
163
149
198
199
200
207
244
160
206
212
227
203
237
224
236
145
209
200
221
206
227
210
180
260
226
205
201
254
198
170
188
177
250
191
148
212
155
205
249
137
158
235
193
221
145
220
197
177
176
123
203
212
202
150
185
116
226
200
194
211
150
222
292
233
196
173
194
246
169
201
192
201
175
225
172
225
180
234
232
177
209
212
188
212
191
222
219
253
257
203
219
199
171
212
203
157
220
271
242
186
211
232
189
193
204
173
235
264
174
268
206
222
189
199
241
151
256
137
212
197
248
141
193
157
231
130
197
255
200
219
277
167
212
150
180
194
197
137
207
217
157
203
155
211
191
210
264
234
204
220
209
166
229
171
177
239
204
132
217
238
187
174
229
175
173
218
212
258
212
163
240
200
172
229
193
250
265
183
234
228
206
161
158
206
171
155
183
264
198
231
294
164
209
163
212
237
226
199
184
252
229
187
203
221
202
162
215
229
127
165
204
185
209
215
166
187
144
182
192
195
221
197
194
159
217
198
171
209
247
204
208
167
242
239
220
195
251
226
213
191
182
182
210
217
184
213
223
183
193
191
197
198
174
223
208
169
226
225
258
192
201
259
151
227
216
203
216
166
264
172
229
274
202
178
265
224
220
214
245
209
184
205
202
201
196
224
230
172
138
201
180
205
149
184
212
160
235
240
197
202
138
225
235
197
191
234
238
191
182
148
182
181
197
194
233
113
180
161
169
258
266
226
179
178
195
253
240
193
215
198
220
204
187
168
220
171
187
174
149
243
199
166
247
221
214
211
234
206
221
195
168
157
190
181
242
163
193
185
229
270
193
198
207
148
227
192
176
150
143
229
218
165
248
180
127
167
218
172
183
198
197
221
150
233
148
235
139
203
194
222
184
183
191
205
175
161
252
217
183
218
183
224
166
210
173
151
172
246
179
141
158
218
204
138
217
264
196
205
178
217
149
156
169
213
211
206
166
163
276
165
180
162
240
222
237
222
242
195
143
135
206
172
189
216
217
177
190
186
144
239
140
205
233
177
171
156
241
222
198
187
220
216
212
193
150
230
208
175
249
235
230
223
197
215
142
171
188
219
169
158
242
219
182
215
236
169
164
168
181
213
193
122
236
172
247
132
194
193
122
152
275
215
211
249
200
241
180
217
264
249
173
275
234
165
179
179
159
171
197
243
178
182
236
194
202
116
169
209
190
260
211
184
228
273
240
190
249
227
230
202
204
215
212
224
149
226
134
257
206
218
210
164
225
161
181
148
233
145
232
202
238
221
193
214
194
206
214
143
227
221
213
195
203
152
178
226
207
166
190
215
165
263
234
187
171
265
258
260
195
183
225
194
181
207
170
152
193
189
141
154
239
167
143
220
203
201
188
153
159
182
233
199
194
216
161
163
105
184
187
237
249
151
241
228
227
152
227
199
177
144
198
165
210
123
236
269
172
232
213
203
204
223
252
106
261
155
221
204
206
196
191
185
230
259
225
249
175
177
162
167
196
210
214
200
213
209
171
227
168
177
207
174
151
181
204
205
222
186
186
167
231
163
191
230
226
213
236
229
216
216
207
194
205
177
187
154
242
233
187
198
137
201
217
205
206
241
166
207
223
179
180
180
188
168
175
204
191
191
184
174
135
219
205
187
149
227
283
194
243
238
178
184
229
213
203
153
223
198
150
215
240
210
213
219
160
236
172
197
214
189
160
197
209
177
185
176
195
205
170
243
225
171
197
242
182
254
208
196
245
102
191
176
225
226
250
198
197
216
224
193
195
176
197
192
202
116
164
251
264
231
187
159
184
211
181
180
157
232
164
217
179
216
243
180
180
214
208
167
164
192
236
266
185
157
207
162
170
181
203
171
81
193
187
263
151
181
187
197
192
195
223
228
223
199
184
212
194
212
201
176
244
212
225
226
171
183
136
207
195
228
237
108
182
181
175
214
220
162
254
196
235
187
224
231
221
166
179
228
178
232
171
194
173
178
187
99
176
242
237
138
144
130
191
220
185
250
198
172
162
236
135
199
192
184
160
232
146
214
160
180
166
205
214
198
203
221
242
180
168
161
192
200
179
195
202
192
219
153
232
245
138
154
189
167
264
234
203
230
175
218
159
228
245
176
131
196
217
254
170
186
249
201
178
227
192
229
191
221
244
231
253
179
232
200
280
205
182
225
256
203
214
203
248
201
155
141
251
128
226
232
161
204
177
268
229
169
165
188
193
210
165
242
224
166
214
207
220
162
210
246
221
189
174
183
199
211
188
194
240
203
235
196
245
217
148
161
204
223
249
210
129
208
209
204
192
196
211
222
228
227
214
197
165
189
283
235
238
150
147
204
181
182
224
210
246
196
238
210
249
223
162
167
209
207
218
178
180
232
214
223
204
172
182
202
160
216
181
178
212
256
128
193
198
183
153
215
215
220
210
143
207
273
201
149
181
187
200
233
185
171
197
172
236
210
226
192
160
189
164
202
176
225
220
247
179
197
227
209
262
208
165
123
258
245
178
202
233
221
138
276
221
172
233
209
196
171
161
182
184
245
114
283
215
122
252
127
246
222
227
278
206
191
131
216
236
196
225
191
219
171
224
177
174
194
154
257
221
177
215
216
224
170
270
187
179
174
203
137
220
192
144
136
166
208
237
241
244
226
232
277
210
193
173
241
163
216
114
204
164
229
242
218
176
260
217
201
177
226
158
151
186
186
157
188
156
198
249
212
140
183
197
201
203
218
197
194
246
231
179
189
194
161
244
258
180
186
189
243
164
157
146
145
218
177
218
253
182
182
251
188
220
251
150
168
230
197
179
181
191
206
187
233
184
142
143
168
192
191
135
204
155
211
220
197
169
196
246
198
112
219
202
175
246
119
180
163
168
219
166
237
153
202
145
222
122
212
195
226
230
184
148
114
229
217
158
241
173
227
208
225
192
173
226
180
215
211
203
267
266
196
215
249
180
207
189
218
208
237
174
152
186
214
175
216
208
178
230
238
224
138
209
219
276
178
184
222
233
219
141
211
179
223
176
195
226
183
172
216
238
199
157
214
257
212
202
130
196
189
222
208
187
208
235
249
191
207
257
196
249
203
192
196
224
192
188
233
185
218
236
238
204
222
165
229
232
159
183
235
210
278
216
208
139
208
193
233
170
196
159
207
236
222
213
171
164
135
157
219
241
212
227
100
196
206
209
212
135
163
239
215
192
194
230
199
184
163
185
211
222
226
241
224
224
203
200
206
161
220
263
201
229
151
203
219
216
185
203
192
150
205
204
182
207
234
225
167
230
186
170
235
272
196
255
163
267
213
235
91
143
211
197
263
249
161
163
196
152
155
209
247
232
222
201
148
154
176
183
174
154
230
186
196
236
208
222
224
261
161
228
199
191
157
165
129
173
200
208
236
185
260
196
138
217
212
197
246
211
194
268
169
209
197
273
206
212
221
198
235
195
186
200
228
244
220
234
237
209
183
249
228
161
211
184
210
185
220
184
205
202
201
158
132
177
219
218
264
248
174
235
161
250
169
207
190
175
214
203
203
210
205
181
137
185
183
177
253
160
154
214
194
196
219
205
178
222
155
182
210
227
192
247
176
141
226
120
182
226
182
260
244
166
238
178
194
261
230
230
220
222
245
186
207
235
173
226
186
182
200
140
189
161
162
161
174
184
190
215
238
190
235
204
152
205
307
184
246
156
235
254
235
235
232
153
141
173
219
221
231
186
204
183
176
190
199
229
174
223
272
159
210
215
141
214
164
193
175
211
224
188
233
182
209
172
145
145
221
171
165
220
237
178
189
214
234
180
213
151
197
209
177
236
183
185
193
189
126
192
253
222
207
225
114
182
152
218
169
248
195
198
177
195
207
197
183
235
193
206
158
183
191
225
176
204
233
220
176
201
209
262
236
248
197
165
269
168
227
236
175
199
166
155
130
247
164
197
173
217
264
126
268
193
191
94
222
190
192
181
191
194
185
182
134
189
251
247
183
241
232
195
227
189
160
200
222
177
165
190
163
199
130
182
230
191
263
200
196
180
198
219
240
111
251
220
226
180
220
222
230
252
169
184
228
124
173
208
202
208
247
161
235
180
245
202
153
249
272
141
259
213
215
167
207
256
175
172
230
232
206
269
169
235
188
184
245
208
159
237
175
197
212
242
259
160
167
170
223
188
129
169
227
133
169
230
226
180
234
202
200
240
246
165
166
209
209
242
169
225
134
160
218
201
204
205
185
220
214
201
254
242
206
255
235
215
214
208
235
147
215
175
240
236
232
218
237
217
229
172
209
165
182
219
239
198
197
196
204
220
178
230
204
157
154
220
183
228
195
225
145
259
184
163
200
209
245
211
242
187
124
175
246
178
158
233
196
200
157
233
181
243
203
247
214
164
222
182
225
200
229
166
245
201
171
206
214
197
207
188
248
240
205
199
199
150
189
236
211
208
256
219
192
183
208
232
200
161
202
219
248
199
140
200
107
198
230
188
181
215
208
232
221
224
217
192
208
215
248
168
178
254
197
246
206
178
152
176
187
174
221
181
186
226
244
172
145
164
176
246
230
182
139
218
222
165
220
234
252
136
207
140
197
217
234
198
128
216
227
218
272
169
259
238
231
224
187
203
180
175
178
194
213
187
229
213
182
189
199
225
229
165
202
112
192
183
199
162
192
215
185
160
146
255
225
158
235
207
216
168
156
181
210
203
255
154
163
178
192
218
228
271
142
207
172
235
220
250
220
170
228
257
256
242
208
245
144
188
234
149
139
183
234
263
225
135
211
254
212
213
176
196
167
199
181
258
193
232
243
175
179
275
129
168
241
210
215
158
153
190
197
240
167
175
156
196
172
157
204
224
189
219
244
202
227
214
233
168
166
197
223
211
174
195
199
189
274
201
221
185
212
223
283
160
226
167
215
230
256
187
181
165
241
200
226
122
179
232
193
191
221
146
172
178
186
182
208
243
194
186
171
181
193
194
174
186
222
228
205
216
221
208
229
189
266
203
247
196
220
171
217
231
160
158
212
195
243
217
172
184
163
163
197
218
278
226
196
208
211
202
222
159
191
178
246
254
206
199
209
205
167
280
241
183
213
217
164
262
178
125
231
189
208
235
166
180
192
150
204
224
164
204
252
203
157
221
230
181
184
194
206
217
189
168
233
203
170
154
197
138
209
174
246
268
175
200
238
152
266
246
209
250
213
186
204
275
182
216
194
191
206
172
134
204
201
134
205
205
151
210
220
162
264
228
218
212
224
149
213
210
228
210
244
184
217
194
224
181
187
197
213
249
213
195
186
187
226
208
191
195
219
157
238
209
154
210
127
173
197
142
160
138
223
267
194
233
229
145
286
227
224
216
185
164
233
186
253
248
206
215
245
218
231
219
197
221
190
232
230
218
207
186
204
276
206
202
143
202
174
181
203
207
241
240
221
244
189
219
167
200
217
174
175
186
199
217
210
225
171
201
184
263
239
235
186
233
187
214
218
191
237
129
229
241
205
228
200
167
190
216
284
223
249
275
223
249
152
195
231
164
188
219
210
239
194
220
212
226
115
200
176
157
128
177
220
204
163
212
199
187
171
180
186
125
216
154
213
215
163
169
182
259
192
275
211
171
164
187
230
212
227
171
184
237
255
200
192
293
268
194
200
208
145
264
218
204
137
145
203
187
166
139
244
196
161
238
193
199
225
185
199
138
142
265
189
218
252
261
196
166
216
160
220
225
185
173
218
227
191
248
158
192
179
231
196
230
213
243
239
237
196
243
155
207
214
193
136
239
162
170
227
183
209
209
160
175
180
195
235
261
231
194
214
119
184
178
191
142
188
215
247
186
198
262
231
206
215
209
211
229
186
203
210
226
206
196
238
273
243
157
275
222
170
225
173
239
252
228
208
150
188
209
181
207
172
189
211
225
227
196
181
228
205
227
217
194
241
204
216
214
193
207
237
171
230
214
141
209
164
156
222
185
169
216
248
151
162
158
223
175
190
186
201
242
200
153
183
153
221
118
179
214
182
232
255
160
232
235
174
220
195
205
174
180
192
217
159
192
173
165
171
204
210
193
194
149
185
211
202
186
132
217
221
233
221
253
160
245
139
214
229
171
121
243
217
209
211
267
179
242
230
209
152
186
156
186
123
168
271
183
226
195
192
237
205
201
167
188
268
157
241
161
166
159
168
166
237
158
191
177
274
228
231
201
199
268
180
237
242
282
183
239
191
217
201
266
164
154
181
208
137
196
167
207
190
213
177
164
170
255
141
178
122
181
162
163
168
195
199
197
182
203
204
191
209
204
187
166
181
200
195
234
241
118
243
178
148
186
186
229
194
167
187
166
226
231
202
179
228
248
109
147
159
226
233
176
197
221
241
209
143
221
216
180
240
180
184
176
102
231
254
206
189
207
217
226
202
174
186
199
210
194
258
196
186
189
221
179
174
190
175
181
171
135
177
206
189
128
158
167
169
247
187
189
234
163
208
177
199
229
180
178
186
193
172
175
256
247
170
183
144
224
239
186
211
208
188
215
227
236
188
212
165
184
220
173
240
178
232
194
243
198
136
187
219
185
178
203
157
238
170
188
177
186
140
244
191
194
166
191
141
192
162
182
234
191
217
194
173
168
197
204
179
261
217
155
191
148
147
143
172
196
220
225
162
188
194
232
176
204
194
208
169
172
201
243
188
243
180
161
184
136
196
126
162
199
210
212
186
188
243
218
189
232
163
228
187
154
245
224
202
219
238
225
239
145
208
177
206
263
169
262
246
192
218
187
159
228
227
163
212
231
202
178
142
185
215
187
194
189
205
182
163
234
204
167
204
243
158
184
187
248
184
211
232
163
174
191
179
159
215
139
214
125
231
159
163
211
224
202
175
195
130
182
143
192
187
238
239
197
207
211
201
189
187
224
256
185
166
169
228
181
189
241
226
191
188
209
198
167
191
190
177
189
247
162
225
210
228
197
178
137
230
275
145
216
172
176
180
200
223
159
228
152
247
228
247
177
188
192
208
225
221
157
227
149
218
172
214
173
182
212
253
129
234
206
194
129
199
233
196
151
170
197
177
184
179
130
256
279
256
178
210
181
198
258
227
177
241
195
180
250
183
200
182
197
205
238
92
177
201
201
272
188
235
182
171
252
83
189
262
223
212
208
187
237
267
167
211
199
244
201
151
146
201
194
253
247
188
235
239
159
250
101
262
167
247
227
224
190
201
220
164
176
198
226
198
182
199
188
182
245
222
195
161
221
151
219
227
235
175
189
248
186
249
146
214
237
205
183
218
264
235
228
198
180
216
205
216
209
201
231
223
231
212
218
166
219
176
173
215
177
76
209
148
189
175
211
196
221
184
195
238
174
163
226
243
207
220
157
261
133
139
226
169
133
214
171
268
183
134
233
210
230
189
212
237
239
164
225
185
192
187
184
220
200
257
168
153
211
190
225
228
192
166
222
261
188
199
175
170
207
228
160
200
163
220
222
266
179
149
221
240
158
189
188
193
278
218
240
163
205
192
177
128
198
273
235
216
231
208
195
217
232
152
192
202
182
217
208
173
230
173
167
190
151
159
194
265
175
215
206
215
183
169
221
212
205
217
222
206
202
237
243
190
236
185
252
118
216
239
181
220
250
159
148
206
241
256
224
160
198
146
216
227
220
212
193
203
132
222
209
167
222
249
181
161
216
186
221
197
245
219
168
204
90
183
175
180
155
220
186
227
201
223
217
251
153
244
209
185
159
195
174
170
223
173
205
208
201
172
168
231
193
173
199
134
251
194
188
190
195
230
179
195
229
220
266
233
257
147
216
228
205
212
170
234
220
211
163
264
183
218
226
222
211
213
226
182
195
275
178
180
262
175
154
170
224
158
149
198
196
190
260
205
218
102
185
256
184
163
191
199
233
135
172
159
233
132
221
218
206
183
215
195
202
194
211
205
243
201
233
211
193
165
234
210
254
167
202
183
211
195
237
218
187
124
240
268
240
221
131
185
235
158
246
226
186
208
193
242
181
248
242
166
217
205
245
200
176
207
187
242
233
224
174
225
162
222
196
172
255
168
206
190
153
232
249
176
194
162
193
159
196
211
252
199
170
175
223
121
234
220
206
215
211
149
122
184
139
235
240
165
217
191
105
244
140
238
172
231
165
218
233
157
135
222
254
219
219
185
178
207
198
227
159
249
236
204
189
241
228
215
255
216
216
218
164
218
223
203
161
210
197
188
201
200
197
211
135
230
217
241
130
167
239
212
218
139
201
242
217
239
228
177
187
196
172
180
211
205
194
233
238
190
144
208
222
175
156
185
204
212
245
198
198
157
207
161
199
112
137
257
230
194
244
246
206
252
170
138
179
251
214
236
183
176
193
139
240
177
201
210
179
194
199
187
198
185
218
193
277
222
165
208
180
217
212
208
188
238
214
223
227
276
135
148
201
187
184
172
209
212
195
201
118
205
207
161
193
221
206
186
181
256
190
192
203
193
173
117
198
211
172
213
159
199
170
158
176
210
227
207
196
201
216
178
202
195
173
229
231
185
253
198
219
183
230
170
215
221
213
195
154
198
175
258
185
192
187
168
230
207
258
270
197
221
235
267
251
243
255
214
207
182
205
246
198
212
173
109
183
185
213
145
221
189
179
281
171
205
247
179
180
230
232
240
242
238
233
185
209
175
170
218
186
268
215
278
200
212
189
209
157
188
242
206
154
221
221
178
181
187
184
190
231
193
192
236
188
278
199
168
147
255
224
197
218
187
264
217
251
189
215
232
245
241
210
218
182
167
179
206
230
191
199
241
155
240
220
230
203
244
180
219
242
238
192
266
227
259
174
230
167
197
181
195
202
248
169
133
247
154
253
216
203
243
204
197
176
209
162
170
151
184
238
181
191
213
228
209
153
153
143
184
149
214
240
209
130
176
186
219
261
278
186
164
175
84
140
228
178
202
228
221
182
198
234
223
179
206
231
157
155
150
146
169
211
193
126
219
177
165
231
189
174
209
243
199
235
183
228
210
185
131
203
171
198
161
232
174
185
171
244
214
179
221
193
221
198
174
225
135
179
173
189
197
169
250
163
162
164
203
200
168
258
182
190
164
107
176
176
199
227
227
177
175
236
233
205
184
214
207
164
218
143
173
185
167
190
183
206
243
244
225
158
228
243
253
230
202
200
141
205
240
228
201
205
185
272
221
151
182
193
198
210
227
187
247
208
210
187
205
181
195
226
189
159
169
167
250
153
170
171
225
173
215
231
205
243
226
252
224
259
252
230
174
224
243
206
195
170
216
176
209
184
230
130
210
182
237
221
160
179
180
226
195
147
164
177
200
200
197
195
216
210
131
222
227
214
202
177
125
209
193
245
192
256
189
112
246
172
261
195
204
234
224
256
141
219
133
148
187
166
216
199
192
192
201
187
209
180
190
205
184
203
276
220
149
247
225
190
173
236
216
232
123
172
194
199
133
225
207
181
233
247
211
218
211
158
209
124
222
205
206
163
146
239
231
178
227
253
176
207
199
173
245
227
218
178
217
216
228
114
240
155
235
172
227
260
196
207
153
185
196
223
196
158
207
214
186
213
137
209
201
219
203
183
182
213
275
202
217
203
227
204
196
196
128
191
98
195
205
207
180
217
126
215
240
228
173
149
233
180
153
203
230
210
176
199
218
187
218
137
196
218
203
200
113
172
189
155
143
163
219
195
181
250
209
196
195
177
158
211
244
219
212
212
128
233
187
184
286
244
173
150
181
202
249
212
192
152
159
231
135
266
195
155
207
178
191
205
210
242
238
163
147
182
235
219
211
153
165
197
151
94
200
149
161
161
232
155
235
217
194
185
187
180
220
218
200
196
119
259
199
176
204
201
184
221
203
256
198
226
233
230
174
267
196
185
168
156
148
203
199
129
169
137
208
198
227
140
181
193
206
175
238
241
214
187
162
201
262
206
204
223
211
166
217
185
233
172
210
159
212
199
170
173
192
190
210
265
217
221
213
231
247
180
124
236
167
237
201
180
225
292
201
234
194
208
146
150
193
188
200
187
245
215
178
269
198
244
159
189
207
181
221
209
226
173
237
260
238
192
249
217
212
224
238
170
233
215
188
138
198
148
205
157
241
194
213
270
228
193
231
223
217
179
198
207
214
148
227
184
183
174
182
230
222
145
256
180
189
273
204
244
270
138
189
194
197
228
209
205
192
180
205
270
171
185
179
265
183
212
160
192
273
202
196
183
150
176
227
170
197
206
180
194
188
177
202
196
194
203
140
118
193
157
144
229
239
148
212
165
201
257
201
206
215
185
198
255
134
98
231
252
234
211
198
196
202
229
164
215
175
234
205
249
173
248
183
214
227
269
186
190
198
211
201
245
178
216
234
132
219
248
187
176
146
189
140
180
219
204
154
158
201
210
172
222
176
164
214
199
162
193
232
241
201
207
248
241
228
150
223
207
204
211
195
201
174
200
199
172
186
258
253
150
180
248
228
198
210
224
250
216
219
225
203
236
194
151
178
274
163
234
240
169
84
164
231
177
199
212
213
183
178
212
225
186
152
199
249
171
195
282
193
217
223
189
201
153
212
162
139
199
161
193
179
194
195
212
190
246
200
278
211
117
148
251
183
209
151
231
235
184
264
215
237
187
227
161
187
227
217
228
168
224
187
250
208
221
220
213
245
193
198
239
173
157
196
227
199
207
218
218
235
239
237
102
207
171
247
188
202
196
214
168
241
209
182
216
224
124
168
241
187
213
197
227
209
211
244
213
143
182
217
137
141
177
183
181
201
228
144
207
208
205
147
240
210
202
240
215
200
212
203
219
243
236
182
227
179
166
213
185
221
230
170
181
245
192
163
184
166
223
156
212
186
187
218
172
220
228
188
187
209
137
174
233
190
193
246
236
170
238
210
244
237
196
191
204
145
202
137
237
213
185
175
190
230
214
209
229
171
182
197
210
167
276
210
212
168
217
170
221
200
141
201
258
257
224
169
250
191
234
203
165
172
186
153
241
198
282
160
251
208
152
187
173
179
187
248
199
247
205
207
176
138
262
194
175
189
220
241
156
182
179
205
144
145
234
216
244
220
195
160
181
246
170
183
217
134
203
197
191
164
200
251
218
150
180
157
233
207
132
185
229
224
169
281
244
171
176
218
146
221
204
201
213
195
178
156
180
217
123
218
204
168
223
217
161
200
175
212
245
136
154
196
277
247
218
210
190
201
158
171
201
205
210
149
272
222
177
203
200
195
224
172
187
193
235
194
203
250
218
202
270
166
209
178
229
217
255
190
188
154
224
225
190
181
250
203
181
174
260
193
221
216
138
234
212
214
194
194
252
256
135
188
172
140
184
215
231
181
203
187
191
191
148
225
204
192
256
236
189
205
205
259
182
265
246
190
216
196
178
151
196
237
208
183
147
167
218
192
233
224
166
206
205
189
235
203
179
218
193
173
193
209
202
200
180
216
164
208
178
233
192
144
131
231
200
200
248
224
199
214
156
239
217
202
198
219
150
195
235
188
254
305
204
163
167
245
201
206
237
262
160
203
214
191
192
218
200
203
158
215
210
183
236
183
126
227
208
217
159
189
205
202
172
201
243
209
181
255
174
201
201
291
169
210
184
223
246
216
195
220
202
202
206
218
182
181
167
193
229
263
238
162
199
202
161
192
207
183
185
208
164
168
254
182
234
223
193
229
186
200
164
163
227
193
175
181
156
172
197
215
164
227
221
250
189
199
190
178
179
155
205
127
138
187
210
194
178
233
200
287
191
289
245
184
180
241
253
175
184
223
207
247
192
254
230
226
219
182
210
205
205
206
183
178
184
207
179
156
217
231
180
208
189
174
214
183
210
177
224
159
169
206
172
218
204
207
246
180
124
224
250
148
219
182
237
213
249
194
216
224
145
223
157
174
203
172
163
212
130
229
206
162
114
175
246
205
200
188
211
214
218
225
196
176
206
184
165
190
182
200
210
217
261
185
195
211
191
208
176
164
205
196
236
199
207
222
186
238
217
189
172
189
171
202
142
207
240
155
243
200
191
185
206
223
212
252
236
211
205
203
181
229
194
224
248
201
193
263
203
265
188
201
160
174
174
245
157
211
194
246
267
180
197
260
225
229
185
238
172
246
212
289
244
192
150
226
207
254
205
193
192
125
233
145
237
222
154
214
205
252
190
188
206
204
207
201
183
192
233
190
188
218
196
180
201
176
173
172
188
241
167
193
217
244
167
222
152
176
206
154
196
181
254
157
185
172
240
239
158
172
224
205
160
216
181
203
222
208
135
210
193
204
241
237
188
144
187
234
175
163
199
157
183
211
207
236
261
174
234
156
210
186
233
212
176
214
196
191
192
143
193
220
185
221
228
176
202
168
166
227
190
179
164
156
198
289
238
232
237
219
197
214
273
218
193
157
156
184
250
260
142
180
207
135
168
204
195
250
212
213
213
216
245
209
184
197
251
174
162
253
237
180
223
210
195
144
158
183
198
182
184
281
273
204
177
182
240
169
126
232
187
197
186
195
228
228
204
169
154
165
194
229
202
218
133
226
167
226
208
156
215
265
208
171
174
203
215
150
232
153
162
205
166
237
222
256
193
247
249
204
149
203
249
196
179
221
168
165
216
248
170
231
186
218
172
119
181
228
242
154
246
181
222
192
212
211
156
242
235
213
186
145
181
185
176
226
264
174
237
203
175
90
195
194
200
158
177
204
224
235
181
196
226
150
241
174
136
249
179
157
221
157
190
213
221
216
249
180
172
186
157
182
164
239
231
221
238
144
228
199
255
209
190
219
224
222
167
155
221
138
261
189
203
182
178
148
224
184
257
174
211
144
181
186
232
222
212
197
272
195
224
239
252
250
180
193
129
205
171
135
203
212
228
203
136
226
117
214
167
242
189
226
156
201
195
187
198
195
238
187
216
218
248
182
208
169
245
247
115
206
267
211
171
177
256
217
207
182
248
146
240
202
192
238
228
218
188
181
231
183
195
255
222
199
214
218
200
195
238
220
211
220
150
210
231
196
190
175
199
119
212
246
223
218
244
203
186
201
225
191
174
211
184
205
208
193
232
198
189
213
188
200
247
231
165
241
188
176
202
175
152
195
221
190
194
240
226
150
169
202
208
179
188
217
200
222
225
226
202
271
268
180
248
194
241
214
237
235
177
199
198
200
209
181
218
273
188
173
212
216
253
188
153
182
212
251
178
185
209
236
172
191
211
157
174
173
244
194
220
284
255
173
177
162
225
233
222
214
215
150
205
203
185
197
249
171
195
170
215
176
229
217
214
191
207
193
207
173
250
234
199
207
188
253
244
196
161
246
236
199
175
197
239
215
237
199
155
151
245
186
213
280
195
228
210
209
187
222
201
265
193
110
163
201
200
208
193
219
215
156
171
207
162
152
251
258
232
204
160
204
191
199
266
152
242
255
237
172
211
186
201
190
211
216
160
209
164
263
212
143
234
195
205
168
155
240
203
221
198
211
208
227
215
179
230
223
180
195
219
251
131
285
183
156
152
197
149
204
183
163
199
184
152
240
194
228
223
218
173
135
202
270
155
188
236
203
241
206
210
192
223
184
233
223
228
203
195
222
195
302
163
177
197
190
219
223
231
139
147
205
211
203
180
225
241
206
256
167
150
202
156
227
149
234
224
207
220
157
195
195
240
192
198
183
250
214
137
206
153
174
187
193
156
237
214
241
189
163
170
159
217
233
209
223
192
202
185
186
198
210
202
172
179
201
159
236
228
191
251
245
221
216
153
215
203
216
161
185
181
211
280
191
176
191
154
242
135
201
188
224
178
164
222
235
209
167
246
184
153
165
207
255
268
162
183
248
179
159
266
217
184
258
201
197
211
200
144
164
156
209
201
170
185
182
194
198
215
183
170
185
208
126
201
148
173
208
208
233
208
187
262
230
199
263
208
251
224
192
212
143
200
184
198
219
230
178
261
191
199
144
135
133
171
214
119
211
230
229
137
210
166
222
225
148
231
181
172
218
223
284
167
197
227
214
184
244
206
143
202
209
148
223
201
193
165
200
261
217
224
246
219
171
214
202
269
225
229
168
200
240
185
162
286
182
171
240
209
231
193
232
177
227
232
230
170
162
195
178
181
223
250
230
179
171
147
235
159
231
249
177
159
213
207
155
208
237
211
216
183
224
194
270
241
212
172
174
187
238
182
187
189
190
162
151
212
167
197
222
207
187
168
247
185
206
226
184
203
166
209
179
199
188
196
220
136
176
207
160
175
168
225
209
188
253
193
256
233
154
164
186
240
198
210
210
184
211
230
192
178
201
193
243
160
210
225
159
170
208
198
198
228
175
222
116
110
183
199
229
242
171
194
244
211
179
174
228
175
246
189
194
121
219
203
174
227
204
218
206
233
229
234
273
142
207
168
243
195
162
257
278
205
210
217
227
224
187
174
244
158
230
270
206
217
182
243
182
269
209
242
130
219
191
152
199
132
164
197
176
200
233
188
252
255
185
144
218
211
183
210
191
179
219
139
165
241
231
118
176
209
149
182
225
233
207
193
231
256
225
136
204
166
215
324
191
181
226
209
233
211
131
149
234
216
208
240
134
172
245
193
190
188
237
169
246
238
219
164
174
172
164
203
230
204
201
231
232
169
202
252
171
230
198
208
177
161
192
161
183
188
261
211
240
206
218
288
193
196
188
254
202
218
221
206
194
129
161
214
157
233
186
118
144
141
215
194
199
226
230
170
189
251
224
204
175
228
214
200
217
179
203
178
132
179
235
173
177
245
226
179
169
129
201
174
173
254
262
158
262
200
162
225
189
167
222
172
165
94
212
199
158
256
209
166
124
199
180
196
197
146
204
196
220
155
197
215
212
102
223
230
193
183
188
200
211
184
137
181
159
136
204
177
197
178
171
188
239
182
153
160
168
230
235
237
223
172
273
168
195
252
149
254
219
212
243
227
259
227
214
218
250
242
240
184
214
165
234
216
201
178
216
217
201
209
255
167
197
171
282
222
164
156
238
194
199
198
207
176
155
219
184
163
225
180
216
255
165
239
243
225
176
123
204
246
170
159
238
262
247
236
135
221
218
150
156
251
194
179
191
193
226
187
205
188
194
169
264
206
199
150
201
166
239
165
157
179
207
177
198
198
136
209
204
255
134
241
230
175
220
234
182
199
225
248
171
189
163
220
180
176
172
187
189
179
233
166
207
182
159
152
161
213
143
187
208
190
187
168
234
238
233
172
167
202
153
222
240
175
172
171
235
205
228
258
189
202
215
176
172
172
263
200
222
179
171
229
221
216
121
226
218
220
173
183
142
197
221
197
190
252
241
196
182
162
185
143
187
185
192
183
215
203
206
196
238
191
218
175
176
216
210
218
229
200
230
191
151
223
170
109
191
175
159
190
256
193
244
236
216
221
214
213
182
249
170
218
189
176
204
215
153
241
253
154
183
176
217
179
191
162
127
204
257
124
207
175
156
185
178
201
246
223
196
184
232
190
222
255
129
207
204
216
225
137
167
260
187
267
248
170
270
180
207
244
193
187
251
226
173
188
155
172
210
189
179
159
188
262
223
230
209
184
257
198
267
198
162
181
164
174
184
227
222
164
184
172
182
211
253
247
249
217
233
167
200
223
225
255
225
219
207
246
248
162
246
172
192
167
221
227
164
210
170
184
189
270
229
172
198
238
162
218
209
230
219
215
238
219
187
170
230
215
250
175
228
160
207
205
226
205
205
251
172
214
226
213
165
194
259
248
249
218
183
217
156
172
199
144
175
194
211
238
230
262
200
229
223
238
232
178
202
174
213
218
189
233
143
162
232
173
207
212
218
170
212
232
187
231
214
216
206
186
179
190
228
199
239
222
270
199
181
215
193
231
229
234
231
143
194
227
195
265
177
197
222
236
176
238
232
219
198
191
213
228
243
204
214
210
167
200
237
159
224
194
202
130
179
199
211
174
174
213
253
224
224
167
204
216
145
280
187
191
216
183
194
194
243
202
172
234
205
234
230
127
217
145
191
207
206
183
226
192
242
192
166
244
149
164
152
134
214
179
234
237
204
157
211
193
220
183
171
219
202
156
221
230
210
245
176
241
210
267
170
196
185
225
269
208
188
159
195
166
172
194
230
169
199
175
256
175
141
208
201
245
202
182
213
154
189
100
218
196
211
200
230
237
191
222
179
211
193
247
159
175
144
221
181
265
210
237
238
201
167
199
221
224
207
187
208
187
214
208
165
246
126
221
188
214
192
198
144
190
237
227
234
217
201
223
219
142
214
163
226
191
231
205
192
191
242
185
181
232
216
177
157
232
159
203
149
256
139
246
228
146
213
227
206
229
230
186
151
215
189
137
156
248
173
185
232
191
162
235
177
220
214
143
228
187
191
214
195
203
183
208
246
250
162
180
201
197
201
194
174
198
256
246
197
186
210
172
258
194
174
164
193
231
123
175
244
150
166
187
218
207
150
198
228
190
237
182
175
174
185
171
203
194
261
174
205
183
207
216
183
184
226
216
222
163
173
235
215
213
210
206
152
189
205
178
238
142
231
219
220
183
204
245
141
230
178
138
191
155
185
169
254
212
189
203
165
206
135
209
162
229
231
206
243
204
260
254
170
214
164
195
178
193
186
192
162
261
203
209
183
203
256
186
191
265
211
194
171
262
194
228
223
220
215
234
184
189
156
160
189
218
188
250
223
199
239
219
226
173
225
198
239
230
224
198
173
215
151
174
251
215
230
169
159
171
201
165
116
198
226
191
157
173
190
190
187
233
240
210
209
216
153
231
202
208
207
219
172
211
220
182
153
219
225
226
227
206
217
237
217
193
206
209
188
216
218
159
239
224
214
178
155
168
218
183
188
203
165
231
235
258
177
211
187
199
183
169
285
185
182
168
207
199
201
202
250
208
178
139
209
205
152
237
168
217
198
228
184
191
174
237
150
261
207
232
232
166
235
175
226
243
178
208
246
177
198
149
168
209
163
220
186
219
188
241
218
151
210
196
169
179
230
168
154
222
199
190
199
187
187
201
211
219
207
176
158
233
200
207
141
262
116
154
226
172
203
137
238
144
253
203
206
138
218
181
165
135
233
208
229
183
239
208
203
191
218
251
183
209
217
164
228
136
199
202
192
208
216
231
267
224
185
176
230
198
271
178
161
192
206
158
218
235
180
200
147
122
187
155
183
159
206
183
250
120
157
157
154
148
193
245
196
195
245
174
215
221
231
177
195
207
171
193
134
106
129
195
235
166
159
224
182
215
132
203
150
224
226
164
219
222
183
145
216
231
185
218
227
182
150
205
177
219
163
178
159
266
243
225
165
218
203
177
161
265
185
190
217
135
191
160
188
192
200
174
173
163
225
255
218
194
232
180
257
236
252
262
214
221
195
203
229
186
244
219
185
227
243
192
193
224
199
175
182
171
218
169
207
182
166
189
217
236
242
139
229
213
184
210
206
180
140
164
167
205
218
166
234
218
214
185
186
166
185
234
172
116
173
237
294
210
244
210
226
166
203
170
157
241
217
262
222
232
223
218
242
180
226
206
195
199
169
165
184
138
191
186
145
202
226
157
169
216
171
217
175
218
182
178
229
235
209
203
188
176
214
214
248
154
192
177
224
249
179
239
192
241
146
173
202
181
224
159
222
195
166
130
199
148
260
221
153
170
215
211
242
159
183
210
260
206
209
162
207
227
268
246
224
207
215
200
191
203
184
202
196
245
206
186
169
160
169
268
172
205
158
224
150
234
182
199
205
223
187
215
206
211
181
188
222
204
199
187
239
218
179
222
185
214
135
200
196
183
221
246
179
174
164
178
231
162
182
207
233
205
234
267
168
171
165
240
215
211
170
210
216
234
177
172
181
199
202
195
201
198
236
198
238
185
207
228
224
247
226
224
221
186
173
173
162
162
209
204
231
231
195
158
255
216
234
166
229
229
216
167
157
204
233
170
155
224
228
229
220
237
163
188
197
197
213
245
242
214
175
158
234
172
205
176
223
169
173
271
207
209
250
162
202
217
187
204
187
209
228
188
207
194
194
136
226
152
200
142
212
148
191
194
259
196
229
195
170
272
191
151
173
180
221
189
264
151
178
173
214
176
215
258
190
217
211
178
207
208
202
211
202
211
137
187
165
220
191
128
230
208
236
201
246
200
202
169
273
211
197
273
183
213
267
190
250
223
193
222
218
225
185
264
217
212
177
205
186
207
194
214
179
183
196
219
196
219
204
217
177
202
222
163
256
211
181
203
172
183
215
123
174
175
226
187
162
187
154
244
296
157
220
165
202
183
201
182
147
179
227
113
227
208
248
187
170
204
214
160
251
196
169
230
235
183
210
181
235
170
185
150
258
212
149
199
255
147
221
224
215
171
202
199
202
183
140
171
176
238
185
183
254
239
166
217
182
205
195
75
183
226
189
228
267
150
184
217
213
212
168
169
222
180
157
188
188
173
217
168
155
229
133
228
257
269
239
177
162
162
158
262
187
195
189
225
142
212
227
235
263
164
159
217
244
223
248
206
221
177
198
202
258
227
142
188
207
207
134
210
198
222
221
211
167
132
209
195
226
226
200
163
169
249
198
186
254
182
190
213
211
153
286
147
173
125
208
185
150
235
209
149
214
187
200
175
176
161
203
125
139
229
209
172
233
258
147
196
193
246
220
176
228
155
254
143
252
182
176
199
141
184
209
180
199
292
175
136
169
182
138
235
211
144
208
177
219
215
210
236
208
228
220
171
158
191
164
131
212
205
244
196
159
193
229
200
232
225
246
184
219
166
209
170
204
190
214
228
252
211
197
244
205
239
211
256
152
216
222
173
219
151
215
172
208
241
166
180
275
258
152
201
159
173
206
164
205
227
241
217
192
206
194
222
190
245
208
209
168
190
222
172
170
212
174
149
207
152
186
184
194
227
218
183
208
184
180
213
221
184
246
215
192
197
144
172
182
217
217
245
214
219
207
195
179
223
222
248
185
218
221
186
229
251
152
217
251
211
122
180
260
197
171
217
203
212
195
160
231
227
207
155
212
178
216
176
237
262
188
200
177
202
243
206
178
172
199
242
191
240
226
201
203
179
193
179
230
230
196
178
208
241
215
222
212
157
208
217
218
281
159
158
217
157
261
196
227
217
199
198
208
217
143
190
191
184
252
214
247
181
221
253
187
182
206
250
168
198
208
223
254
203
193
145
147
212
222
191
200
206
243
270
178
238
165
251
211
245
181
179
224
190
233
205
189
202
227
187
243
204
171
215
209
194
166
239
179
178
183
186
230
138
183
197
196
262
186
226
116
220
240
230
177
209
205
194
205
190
183
192
229
249
200
154
182
210
193
148
143
187
221
229
197
208
199
213
170
156
274
131
219
226
161
200
200
264
195
211
191
232
145
181
181
166
185
246
235
178
178
248
222
224
253
176
195
194
192
218
177
107
208
209
195
201
210
190
177
182
241
192
177
187
217
216
191
211
263
221
178
237
186
214
175
225
185
132
203
177
190
200
195
211
163
222
244
210
228
152
174
190
214
229
200
172
236
203
143
191
204
169
223
174
277
239
157
220
185
185
232
191
198
206
235
225
248
224
169
171
147
243
275
241
173
213
262
195
202
253
145
197
156
186
240
148
161
177
234
198
243
186
234
239
209
197
174
159
134
216
242
238
250
209
173
180
281
187
233
239
209
165
180
237
235
219
207
233
189
194
140
229
211
161
215
156
141
236
184
201
171
130
221
167
135
222
207
193
193
190
175
181
168
216
196
174
247
184
188
198
245
242
156
169
191
230
257
175
233
182
223
187
147
210
193
163
225
231
224
234
151
189
190
188
193
241
246
157
248
216
100
225
203
157
146
149
195
204
214
197
136
226
195
180
246
189
240
212
215
195
267
195
254
243
173
207
228
135
147
173
215
225
138
237
221
164
204
179
171
210
101
166
222
215
243
217
212
225
142
189
205
236
176
175
157
241
189
231
214
222
206
203
182
232
189
170
173
163
223
156
196
132
250
217
234
220
242
126
166
237
145
257
239
269
241
156
220
230
196
192
208
219
211
168
185
192
199
176
200
222
257
203
210
177
157
211
200
148
263
191
182
136
186
243
243
235
179
276
182
184
247
232
204
213
258
190
192
175
164
213
238
218
188
159
180
254
171
153
150
200
260
187
198
218
249
215
223
121
153
159
164
205
186
263
194
207
186
185
228
149
235
185
242
145
196
176
185
208
150
214
199
206
177
170
214
214
218
253
216
177
213
221
198
195
183
139
208
211
195
180
171
249
214
154
235
222
229
167
200
182
177
191
144
171
211
176
246
198
259
188
220
174
125
165
163
227
196
211
208
190
223
244
202
198
195
159
240
145
166
221
190
228
255
204
179
210
217
217
231
144
232
193
206
203
221
187
198
237
162
240
226
183
175
212
243
192
215
202
232
227
163
213
142
180
179
121
180
200
199
206
258
197
217
202
150
201
211
171
190
209
178
183
147
249
214
268
189
258
211
194
243
220
221
214
149
199
232
232
137
255
159
211
251
234
182
170
246
207
156
190
217
232
206
163
157
192
212
139
168
187
143
189
263
241
224
141
191
200
174
238
176
265
208
202
214
212
217
237
220
182
192
212
249
223
199
219
97
187
223
222
150
173
200
180
185
195
184
161
202
131
149
203
159
242
145
190
173
182
223
216
123
241
199
186
148
238
179
203
220
293
182
216
142
235
169
210
226
235
155
206
216
219
136
200
215
204
254
187
127
226
238
200
149
133
191
192
200
165
214
233
174
272
213
222
118
269
209
158
159
236
111
207
166
243
230
145
211
230
252
168
188
186
125
143
180
191
190
251
227
220
145
208
223
147
167
211
280
223
230
233
202
188
200
198
241
184
198
170
174
136
143
152
198
203
170
151
239
238
207
155
225
148
253
255
192
222
226
213
211
232
222
192
235
216
170
242
142
200
160
206
189
185
221
181
196
172
154
234
172
241
173
143
187
160
192
230
217
157
187
219
255
189
207
173
230
201
154
177
178
185
198
168
174
217
200
153
208
185
164
183
200
209
159
240
151
181
219
168
173
188
226
288
234
194
248
198
225
181
230
161
171
224
167
230
162
190
242
189
256
216
220
194
171
191
234
211
157
251
250
198
181
204
169
232
185
204
229
178
188
192
180
199
214
208
165
213
200
204
209
211
183
187
181
240
216
200
215
245
158
182
243
162
236
226
202
233
178
185
186
213
162
173
188
160
229
194
178
195
223
215
171
179
156
174
194
104
178
205
219
222
198
249
186
165
247
220
182
180
186
155
228
217
257
151
177
188
222
165
202
137
257
137
221
163
263
189
213
189
204
194
151
145
263
194
241
171
112
218
210
232
228
190
221
130
221
134
108
165
226
221
173
203
202
266
217
195
184
255
213
158
232
201
173
187
170
164
236
241
201
219
181
157
179
168
234
191
201
193
199
199
177
185
257
184
255
148
151
199
175
222
141
145
203
194
210
242
230
164
204
201
202
185
194
166
209
251
192
184
174
185
199
142
237
228
174
220
234
193
148
224
132
141
184
199
227
219
193
207
154
239
178
134
184
225
169
193
222
174
205
253
213
223
229
187
231
176
246
168
209
175
204
214
142
226
108
231
220
191
142
166
281
140
257
247
135
191
259
222
214
226
252
209
225
185
249
189
245
211
189
220
249
233
230
207
198
160
218
252
232
162
132
205
153
263
187
212
206
225
216
226
177
188
210
206
183
186
256
223
158
169
182
196
183
132
208
164
161
151
204
183
181
200
205
189
201
169
270
179
211
228
208
209
208
220
210
176
250
205
231
155
238
195
254
218
217
162
220
261
256
200
201
222
166
154
204
183
191
120
179
203
253
216
219
117
161
264
211
186
189
164
197
182
254
228
171
257
200
205
265
236
175
209
212
215
259
230
278
190
254
211
189
184
184
216
237
240
242
200
173
180
220
230
163
236
155
159
246
216
223
229
196
177
219
177
242
193
186
169
183
215
219
189
191
202
178
245
207
183
244
230
124
228
181
219
199
188
188
224
157
211
183
245
234
198
194
178
228
204
183
197
120
196
199
169
187
136
223
215
172
209
182
176
192
220
126
216
205
234
188
183
216
218
206
214
220
264
221
225
214
131
199
192
227
213
191
239
197
247
187
198
152
209
149
232
252
133
180
223
225
244
200
222
196
190
206
263
186
191
198
201
123
216
225
231
208
236
215
165
207
139
195
196
223
202
247
207
158
177
181
204
227
197
211
248
208
176
153
162
121
235
217
172
171
230
163
198
151
262
146
222
225
151
189
188
226
179
186
209
179
193
187
167
232
201
205
207
230
259
189
206
190
181
227
168
191
212
198
227
201
254
208
179
146
130
218
233
185
185
251
234
186
159
170
246
222
231
187
226
254
134
165
195
268
236
212
239
207
195
117
229
218
223
159
174
207
166
197
182
242
241
207
236
165
225
198
162
245
164
241
163
136
183
160
239
208
195
200
255
163
205
213
232
126
216
164
202
179
199
201
144
188
231
176
131
215
236
160
205
196
161
284
191
253
217
222
249
126
222
179
223
230
222
152
187
161
256
237
189
190
182
147
178
160
194
239
181
158
159
190
125
190
148
193
222
199
220
214
184
216
221
192
228
202
186
231
187
231
185
218
178
217
238
110
181
217
186
203
279
179
265
222
192
220
162
219
188
199
179
228
103
230
185
152
232
231
181
179
261
220
192
240
148
210
195
218
256
164
180
160
186
211
197
192
153
218
158
184
222
192
237
195
187
176
269
171
165
180
201
217
175
189
186
221
228
189
258
216
203
246
210
250
245
226
267
201
180
266
183
187
176
189
215
215
232
188
151
189
154
208
138
202
191
208
192
177
197
198
197
156
160
227
214
183
187
175
219
168
215
229
156
169
197
169
195
132
164
218
200
187
170
251
218
224
207
215
148
191
247
258
201
205
244
221
212
170
248
212
237
244
203
188
205
208
240
195
235
217
183
132
213
224
260
214
169
229
210
149
238
161
211
187
186
211
194
189
191
159
187
186
219
179
199
209
180
203
209
186
180
192
232
197
156
256
267
164
180
141
160
168
268
177
186
160
220
171
217
184
244
213
208
109
162
237
216
227
172
182
138
223
196
177
232
213
195
151
173
222
222
235
190
182
182
271
172
210
185
196
134
214
239
213
189
196
207
249
230
197
195
181
185
213
169
128
255
194
202
193
239
188
202
212
233
222
203
193
158
231
200
210
191
122
139
202
152
223
224
201
259
229
153
189
202
199
124
240
213
214
210
209
188
224
224
131
254
241
138
144
207
180
236
239
215
230
177
231
239
189
242
230
156
178
155
178
231
204
251
202
185
148
208
218
225
164
206
178
118
173
240
200
204
191
258
175
177
246
194
212
188
246
219
183
125
169
186
121
238
156
180
119
178
210
180
196
238
163
236
200
216
189
191
221
215
159
180
194
253
162
230
144
164
253
151
197
189
204
169
212
225
172
110
208
152
196
202
206
196
154
206
160
198
213
185
183
220
197
185
217
177
221
172
243
248
242
170
238
232
232
130
215
250
209
181
224
276
217
131
138
239
140
249
172
241
240
224
242
166
217
97
189
224
200
139
247
208
187
229
161
237
168
204
164
150
220
223
196
242
216
194
221
229
128
157
191
214
172
187
203
153
180
176
109
149
164
259
222
228
212
189
191
175
210
245
231
170
192
184
251
148
255
150
155
256
207
198
189
170
191
233
161
187
217
168
231
184
212
226
246
177
214
170
167
194
204
206
208
228
208
209
224
222
227
181
177
270
175
191
192
109
256
210
181
194
249
190
158
239
228
178
161
234
204
170
177
238
181
215
211
214
179
203
203
186
193
208
271
182
224
140
185
164
210
193
191
181
210
207
123
210
239
188
203
198
245
164
194
196
213
181
208
163
225
195
263
222
212
255
156
207
175
207
250
250
230
175
206
147
218
208
197
169
172
193
190
211
206
202
204
167
155
247
181
270
194
244
171
180
198
208
123
245
183
200
150
189
257
236
236
207
246
197
197
196
260
210
234
200
226
234
198
191
175
246
251
247
193
165
220
191
199
215
185
244
154
213
240
191
123
232
206
175
199
193
230
175
232
177
173
230
193
198
143
234
188
169
208
145
228
185
271
198
208
205
185
171
196
233
196
279
167
279
207
149
153
198
170
206
198
215
207
211
182
236
212
208
200
141
232
233
144
214
197
195
195
225
201
189
180
211
213
192
238
163
195
258
157
180
177
240
218
232
211
209
145
253
243
148
172
224
157
201
175
181
200
227
212
182
244
205
188
178
196
270
158
163
155
199
156
191
229
209
231
181
165
138
142
275
194
186
148
219
210
170
239
235
158
215
246
249
221
203
185
222
248
215
144
182
179
184
254
146
237
238
199
229
224
226
178
231
211
279
187
203
224
217
205
247
205
229
240
212
168
206
140
178
208
252
153
173
206
179
241
162
210
237
188
221
174
183
120
229
194
204
228
226
219
252
188
191
232
138
108
151
244
259
175
200
226
181
252
232
221
175
248
260
169
195
186
197
194
169
249
241
236
171
188
207
163
185
152
200
179
171
192
217
225
228
234
221
133
152
226
196
169
194
188
189
258
193
187
227
226
196
135
172
225
262
204
175
213
215
200
162
105
185
178
233
184
172
249
213
173
207
198
243
138
165
181
199
209
274
220
227
148
215
216
219
230
214
226
235
142
203
226
157
214
189
224
246
156
173
190
191
243
243
129
219
225
181
173
199
216
249
229
221
122
143
154
149
170
187
247
260
181
212
236
178
251
185
176
192
253
215
198
207
230
215
167
225
162
186
123
221
286
198
204
161
148
198
158
126
247
239
219
98
220
156
197
188
261
251
139
229
253
208
195
203
167
221
200
218
186
207
187
229
183
198
137
201
156
184
301
210
237
211
194
170
230
197
171
189
211
240
184
212
251
171
207
218
214
201
210
194
236
125
169
156
191
236
211
204
119
225
206
236
204
175
233
217
217
178
175
219
203
166
207
189
203
226
169
150
223
66
188
281
208
226
156
152
127
208
203
235
166
176
225
193
239
169
182
125
157
207
151
150
153
282
252
242
182
171
166
198
219
249
222
201
178
179
217
177
163
134
166
246
174
207
238
218
209
150
161
219
161
160
224
206
189
236
211
218
189
201
173
205
243
208
213
201
225
192
217
191
236
173
245
113
227
134
159
137
149
181
216
250
201
223
161
206
195
209
178
190
158
200
193
259
273
279
251
180
180
203
276
209
197
207
243
217
171
176
193
193
189
152
235
186
238
158
149
133
204
231
169
246
203
148
213
228
204
225
203
235
194
236
213
221
197
219
215
180
245
135
194
231
214
191
147
224
226
239
261
177
159
224
204
177
179
192
253
157
177
213
196
205
180
217
203
235
233
184
277
180
204
182
184
198
206
156
173
196
239
149
164
225
118
249
195
149
204
199
207
158
171
188
217
165
234
199
203
202
224
173
132
186
183
135
145
229
156
259
175
256
240
199
200
169
212
231
215
227
173
244
169
232
246
183
267
185
224
200
199
160
188
207
249
229
157
193
151
186
189
222
177
182
237
190
244
224
234
215
171
234
227
208
249
205
177
226
201
142
240
154
205
218
253
123
134
200
263
161
223
187
195
194
172
226
189
239
215
169
178
195
108
192
224
182
217
166
189
199
206
208
199
219
209
149
192
161
217
186
240
192
222
145
234
187
204
206
173
191
199
237
225
212
219
200
202
222
220
206
238
184
199
185
202
279
157
180
201
169
195
181
212
189
200
203
248
224
206
155
211
199
197
189
153
148
258
166
190
167
172
184
234
183
211
147
166
193
189
187
207
223
216
187
212
230
196
237
216
205
141
186
180
208
232
206
209
236
194
208
191
206
199
243
174
186
228
167
182
220
228
227
219
194
168
200
231
201
158
216
154
194
250
191
208
222
182
213
149
220
203
208
152
132
190
215
246
178
196
166
152
187
170
144
211
233
211
261
188
160
229
179
227
188
249
210
217
155
143
191
131
216
168
246
202
206
211
237
180
216
199
214
220
220
236
191
235
210
135
187
187
147
229
260
193
259
181
233
199
195
221
201
213
206
223
192
187
199
149
178
163
232
238
233
257
176
176
178
209
202
235
248
168
198
211
210
176
136
271
170
182
134
256
145
209
245
236
170
190
193
153
230
174
211
229
247
160
255
174
227
204
227
178
228
195
204
222
154
149
156
163
181
226
234
230
225
198
202
165
195
196
239
143
262
108
140
130
215
247
239
156
179
229
169
250
213
178
186
192
172
207
208
259
236
256
194
236
196
178
215
267
122
229
211
192
211
184
188
180
237
235
198
153
162
205
216
199
267
178
228
201
155
187
199
146
191
180
223
222
193
195
161
252
171
199
209
260
182
197
212
199
193
173
258
185
224
179
213
224
247
226
162
246
115
135
169
211
215
168
150
226
202
249
197
227
244
227
208
171
143
212
177
249
180
246
246
186
192
222
158
231
176
210
192
272
156
219
177
204
164
206
262
230
211
174
224
189
267
169
193
192
206
248
207
228
266
214
95
180
239
240
156
201
184
249
181
229
248
219
202
219
196
185
205
160
247
166
209
219
204
203
245
171
95
210
172
135
202
169
218
203
155
204
237
183
256
245
198
206
229
194
182
197
222
235
182
173
180
171
261
205
218
271
170
277
219
200
129
227
232
169
192
164
203
207
160
221
240
189
226
168
300
241
167
267
177
173
171
225
226
221
163
223
201
222
235
189
188
200
246
203
226
165
152
221
177
230
154
169
213
271
176
175
210
202
188
242
226
251
159
207
192
174
250
212
221
228
135
183
209
222
178
181
188
217
219
167
202
185
210
234
150
241
203
128
207
207
230
145
207
165
190
177
175
209
171
218
195
138
175
167
205
193
186
262
215
174
233
224
180
202
170
157
188
253
166
173
144
104
190
80
239
262
122
145
214
237
184
205
177
175
161
190
156
206
188
191
239
205
203
213
231
240
228
214
133
237
195
193
189
191
167
176
228
195
179
238
270
204
205
232
179
199
276
230
198
165
168
169
187
201
221
189
194
220
209
166
186
205
193
167
98
187
192
171
179
186
207
233
225
192
128
217
247
216
187
180
217
138
215
206
197
187
248
208
156
212
234
235
150
130
180
236
113
228
255
199
205
236
194
138
217
206
188
209
157
252
189
182
157
242
211
212
169
232
158
176
195
170
233
190
242
216
118
237
168
232
189
214
231
110
146
209
253
184
171
249
195
210
170
188
232
164
230
116
184
201
261
241
275
214
199
228
238
157
210
141
142
172
219
270
226
149
242
171
177
181
205
229
202
247
228
226
143
258
217
227
210
240
212
237
252
222
215
186
189
222
145
168
276
239
193
206
159
243
226
208
136
257
200
179
224
159
201
149
235
216
218
159
169
188
259
198
219
159
210
202
210
196
220
229
219
218
203
199
186
165
190
249
211
193
208
132
187
204
215
200
177
154
137
159
204
227
170
231
224
229
190
259
221
234
219
230
214
183
200
289
145
182
216
205
179
251
191
225
180
190
197
200
199
165
195
233
178
209
152
141
193
188
184
222
195
190
149
195
190
176
232
150
230
210
204
166
184
234
195
194
202
224
237
165
181
247
179
202
220
210
226
188
183
152
234
205
197
248
198
224
209
174
211
217
253
192
217
218
211
173
211
237
215
161
224
188
191
195
228
242
177
189
109
211
235
216
212
195
248
156
226
213
239
183
163
175
165
220
220
240
246
155
219
201
177
269
187
129
167
219
235
219
198
202
165
202
165
210
160
200
247
168
198
212
124
205
124
204
180
168
180
196
174
152
188
134
219
226
221
190
215
199
185
248
211
219
160
187
199
137
220
267
211
165
192
198
201
189
202
218
249
175
219
316
266
217
185
224
216
238
161
198
228
204
226
202
194
173
194
182
218
224
226
162
221
195
195
212
225
230
230
139
252
208
223
227
133
193
158
191
190
153
213
186
185
153
215
186
126
185
187
214
193
178
179
249
204
154
163
155
213
187
174
197
218
188
248
257
211
204
222
234
207
157
193
190
219
183
229
202
169
218
205
175
147
188
162
211
155
173
190
216
241
200
192
179
198
216
223
222
172
150
256
187
213
125
207
172
163
244
171
205
192
159
177
172
234
234
176
177
232
216
147
187
166
201
248
212
208
203
236
149
168
237
149
233
214
212
159
216
142
189
209
186
203
206
196
239
128
249
184
225
214
248
134
161
197
202
260
220
211
176
219
244
220
157
165
187
265
241
259
278
206
168
181
225
194
153
204
136
190
215
122
228
208
158
247
271
206
237
159
135
231
198
181
227
214
148
186
168
187
191
191
227
194
184
177
218
186
206
167
192
141
243
196
255
229
228
231
179
230
155
144
201
259
243
201
228
188
229
155
273
159
182
215
174
233
153
143
207
209
179
216
221
169
168
245
221
193
233
209
218
214
215
193
209
210
181
199
162
206
172
248
151
161
159
204
204
202
231
176
190
208
185
194
193
177
190
202
181
210
253
246
151
197
216
216
203
228
263
196
247
223
193
222
198
190
201
161
168
215
243
211
177
276
205
196
223
209
179
235
212
154
172
230
183
170
260
167
209
243
125
242
232
221
162
185
190
127
169
190
209
123
181
179
163
233
117
212
191
197
184
214
142
271
206
223
187
283
115
143
241
161
212
158
174
253
212
208
150
169
209
168
124
184
173
250
140
251
230
188
181
159
179
171
191
203
239
184
180
204
215
217
213
215
241
225
128
233
177
261
164
216
219
170
183
263
197
180
249
109
220
160
146
216
238
149
238
265
136
189
141
183
239
228
227
238
238
186
186
168
202
195
213
150
247
145
171
161
200
202
168
238
233
269
184
209
211
208
217
180
199
231
195
212
187
213
215
209
229
216
201
273
205
203
181
204
214
207
194
177
149
246
241
243
156
196
241
151
130
252
188
184
211
236
178
184
225
162
225
170
236
201
210
249
213
222
231
134
155
191
120
259
244
233
217
159
162
143
208
225
194
245
149
191
223
236
177
227
238
196
242
176
220
240
232
170
201
224
253
222
215
184
238
224
191
180
207
232
194
245
187
226
196
225
195
213
199
216
192
265
244
160
189
213
197
204
137
177
251
199
166
225
243
258
166
201
184
218
150
197
229
166
190
212
221
160
150
184
210
255
209
192
204
258
245
217
173
164
269
225
121
151
162
185
176
153
199
212
132
199
251
215
212
207
181
222
140
205
190
248
178
229
261
250
262
176
154
232
205
242
196
201
164
215
210
186
225
214
203
207
176
223
222
115
193
205
202
161
216
197
180
186
172
163
215
174
161
167
188
201
174
138
196
194
265
276
181
200
250
161
217
172
112
189
246
232
164
226
202
182
180
102
201
221
246
170
213
195
218
257
196
206
263
144
244
208
251
221
168
225
224
152
206
201
173
200
189
200
160
224
214
257
231
159
190
256
174
202
210
167
174
284
263
134
209
183
251
222
286
174
286
287
243
176
235
210
172
182
205
243
190
203
210
268
197
211
245
209
204
154
228
222
207
235
272
207
168
211
208
197
178
228
214
221
172
196
184
256
247
170
195
215
219
220
235
149
183
185
195
229
191
274
138
201
166
157
184
176
191
210
261
208
246
171
213
131
224
149
164
271
207
225
188
199
225
230
142
191
264
212
248
228
166
155
205
244
282
263
205
230
254
214
204
132
253
145
144
174
236
163
254
219
197
240
139
233
180
219
222
239
197
239
177
221
254
179
194
249
198
186
252
231
187
250
225
210
192
204
166
268
203
197
146
134
228
194
184
161
188
152
158
180
149
242
189
233
181
194
186
155
224
160
186
202
228
182
173
143
177
196
200
225
198
198
269
270
209
169
261
226
142
230
173
181
231
242
181
158
187
260
189
165
203
241
195
211
152
176
238
196
119
170
267
230
242
192
212
208
207
185
190
210
188
193
182
187
187
212
226
179
78
224
208
248
214
157
223
212
231
153
236
196
194
203
232
190
256
221
169
238
151
171
208
185
270
217
165
236
234
211
247
137
206
269
160
202
206
212
202
189
209
264
192
183
177
179
156
208
253
185
253
126
223
228
187
187
175
139
213
191
150
227
212
139
221
183
242
190
191
236
225
266
123
107
212
198
215
138
198
180
172
190
221
196
197
243
202
168
250
181
198
231
211
279
154
117
234
177
183
133
210
202
159
192
210
170
210
198
168
158
217
202
224
233
161
176
206
255
229
177
236
203
223
200
215
238
233
203
197
171
144
139
207
201
183
250
193
226
190
281
143
197
205
220
252
180
210
155
204
219
215
143
233
153
228
201
156
166
205
146
247
154
213
170
261
248
193
245
206
207
178
188
168
217
233
142
217
194
227
221
181
237
202
221
203
202
165
190
227
178
214
230
146
174
264
265
219
215
245
235
195
134
179
195
147
171
227
234
174
179
174
201
192
244
157
154
118
159
211
212
218
193
198
194
271
204
163
186
203
222
189
231
230
214
192
181
227
166
195
205
106
218
214
281
178
146
140
184
226
205
227
141
276
209
190
196
186
178
237
244
203
204
219
199
241
245
198
200
233
218
203
217
202
242
207
152
232
172
242
166
219
187
229
200
246
243
114
189
211
141
128
230
228
234
230
137
271
226
163
180
175
220
158
284
233
166
207
218
259
162
219
218
197
195
165
177
161
134
190
192
189
219
180
224
186
170
130
196
142
239
235
256
183
185
252
206
198
206
213
187
209
201
209
199
214
168
168
207
176
246
195
258
238
221
227
156
236
204
171
217
198
214
169
227
217
184
180
221
205
169
214
198
233
179
201
157
167
254
166
170
231
238
165
234
184
149
192
206
240
220
180
170
194
242
203
157
236
232
246
249
270
163
185
213
245
171
189
204
234
205
229
174
176
261
156
179
157
204
127
205
206
248
285
195
268
233
157
187
176
169
198
191
180
143
187
205
164
132
189
202
139
231
190
101
175
238
235
191
171
257
205
206
205
140
181
185
167
253
249
139
229
141
175
176
259
200
243
238
137
222
226
168
228
195
220
167
193
193
237
137
237
239
189
96
234
202
208
260
142
213
272
198
199
184
163
177
211
188
176
204
225
199
192
214
223
190
269
188
182
239
237
174
177
196
237
204
233
202
197
230
189
223
189
205
185
160
207
257
261
247
272
244
220
193
208
230
157
171
212
179
185
151
173
252
206
195
201
205
217
161
249
250
225
226
172
179
250
146
144
238
186
192
231
178
161
216
227
235
158
139
201
163
166
215
233
183
218
135
190
172
240
213
231
163
242
251
252
227
173
164
219
212
195
162
201
186
161
257
185
206
222
212
227
184
272
196
212
234
268
218
133
220
228
237
157
150
161
246
245
174
100
254
252
125
159
261
229
254
188
206
202
254
235
237
194
200
229
244
164
230
227
168
177
182
204
196
278
142
190
188
178
157
219
207
217
185
182
220
196
161
220
135
194
256
187
165
178
154
225
187
187
212
134
192
280
199
188
228
187
209
223
212
166
231
155
164
137
187
156
198
186
197
166
168
221
253
187
161
182
143
158
256
223
212
238
216
166
218
99
219
245
194
143
198
173
191
229
178
187
192
232
111
230
240
127
152
264
204
191
140
201
204
202
212
171
179
193
237
223
136
170
210
201
198
175
179
197
194
223
185
194
239
201
232
212
202
211
199
197
201
238
186
198
226
230
211
144
169
273
201
283
180
203
211
160
153
257
208
190
231
188
170
166
178
239
131
196
190
238
270
182
252
133
229
220
247
222
177
170
240
143
205
195
258
197
214
189
211
224
184
205
206
165
216
269
187
253
202
154
265
223
217
222
213
202
234
217
200
236
164
216
213
133
219
174
220
174
168
180
179
179
242
135
223
174
167
242
238
200
235
257
163
266
225
240
179
169
206
215
193
203
190
182
250
259
183
212
173
186
187
242
189
260
197
245
218
164
174
226
203
251
176
184
163
260
247
120
249
252
274
231
221
182
178
252
187
127
214
241
224
213
163
254
194
216
129
222
234
239
168
171
172
192
252
171
236
214
199
266
159
193
232
210
134
174
232
245
178
164
162
193
189
176
251
263
225
171
216
151
216
237
137
165
177
146
130
207
240
158
121
195
208
186
185
200
157
181
233
130
163
226
186
234
295
181
242
189
185
171
143
214
138
216
188
231
159
209
165
215
211
180
193
154
219
240
220
245
199
178
167
164
225
124
134
217
207
227
249
207
221
180
164
203
174
186
177
258
180
215
200
245
175
180
232
133
159
135
184
198
216
267
171
165
250
240
198
182
234
188
207
195
230
225
185
110
249
219
176
196
186
162
172
231
224
251
266
248
146
179
224
239
175
156
222
217
157
215
253
231
154
203
224
140
157
214
233
223
195
209
254
245
181
244
189
172
217
200
270
219
151
262
212
246
198
171
156
234
189
267
245
217
192
174
212
236
161
183
141
184
208
247
175
164
168
245
263
130
264
186
253
202
237
187
164
182
185
215
197
185
109
167
260
227
231
267
224
251
166
235
187
262
192
164
202
219
221
173
161
193
251
217
236
216
166
206
281
217
179
173
193
218
199
232
195
232
206
199
175
214
214
209
215
266
207
245
181
152
207
145
204
214
181
182
222
223
234
148
139
179
180
284
210
191
208
177
232
237
156
202
213
185
198
244
154
236
201
219
212
194
275
167
118
178
191
216
204
180
208
210
205
226
248
196
262
210
243
153
209
154
164
207
203
189
238
190
214
166
235
177
185
279
170
203
222
191
180
191
161
203
242
191
167
192
200
241
225
224
199
226
187
205
169
211
187
176
229
221
220
202
156
198
206
243
236
185
224
196
232
204
233
208
177
213
206
185
153
156
193
188
158
202
166
252
185
218
192
171
282
190
192
167
252
197
234
230
223
219
221
211
174
164
191
216
150
196
136
225
128
168
253
195
169
180
213
268
214
176
202
226
192
185
201
154
191
217
189
198
230
204
185
134
235
213
208
212
261
220
248
211
172
162
237
182
213
240
227
169
199
194
161
207
204
181
207
153
201
199
146
188
199
164
145
224
184
189
219
128
183
209
255
204
221
255
253
207
209
233
191
176
234
195
227
235
192
224
220
214
208
200
226
212
221
164
182
156
159
180
149
175
168
213
215
170
156
179
193
238
108
180
210
192
165
229
183
178
223
179
247
168
210
247
201
212
195
229
181
179
186
235
232
165
201
123
230
187
231
210
159
228
225
233
224
157
197
205
196
261
190
226
253
232
170
162
177
206
220
139
234
246
192
224
219
231
298
197
197
238
192
250
212
173
237
251
178
213
203
233
225
199
227
234
214
200
225
152
230
178
217
208
161
168
245
227
205
178
213
214
160
245
247
209
177
186
217
189
194
265
197
181
251
194
248
199
159
154
125
236
256
238
183
194
235
246
206
170
195
185
234
174
164
251
181
212
220
203
223
195
215
131
152
213
217
193
239
200
183
269
185
248
220
128
163
200
204
185
157
178
219
147
248
212
156
193
159
240
236
228
186
210
178
183
203
155
236
163
182
179
238
222
220
153
227
186
205
169
227
193
162
189
160
216
201
273
236
185
168
217
210
227
251
167
177
146
217
215
223
249
152
159
134
234
219
234
252
210
233
140
205
191
176
174
216
205
197
245
234
169
202
186
217
207
184
203
175
222
228
181
214
258
236
215
204
215
152
231
184
273
118
144
193
216
257
186
237
203
205
189
249
234
152
246
184
212
195
131
244
205
183
186
162
168
198
177
231
219
201
222
193
183
224
185
234
211
175
183
244
176
188
131
220
170
226
202
225
207
198
255
188
214
158
248
168
171
257
197
201
183
239
179
188
230
211
189
188
160
196
212
238
193
275
201
238
155
266
198
197
243
267
171
158
142
213
155
248
182
207
232
184
218
241
242
238
170
189
179
197
200
183
201
215
201
275
138
140
169
184
249
225
221
200
211
210
218
243
135
247
173
194
214
131
193
185
205
212
183
219
234
194
234
215
198
212
250
164
185
202
210
216
236
252
210
220
211
199
278
200
161
244
179
192
197
209
179
225
172
192
209
232
204
204
145
256
200
239
155
171
254
221
202
244
211
172
170
153
198
268
194
210
168
181
178
260
239
209
147
230
269
233
179
178
176
212
183
212
197
243
242
150
186
201
194
155
158
225
194
175
167
172
187
245
212
222
137
229
221
247
201
166
274
167
216
218
233
153
215
208
193
190
144
213
199
123
176
214
198
176
234
213
274
227
250
209
201
128
239
260
262
184
223
248
184
254
189
218
161
198
136
207
192
243
178
169
237
191
215
229
186
191
184
181
214
224
194
191
214
198
216
184
189
143
191
236
174
222
139
195
261
208
224
233
111
236
99
183
219
234
202
198
182
131
161
161
206
252
238
189
220
194
183
181
155
173
246
208
220
234
154
232
182
217
234
165
274
217
179
210
232
232
218
225
200
252
164
164
168
191
201
177
254
189
217
187
195
242
269
209
203
217
175
222
202
119
232
217
128
223
179
166
213
200
187
166
270
209
249
234
151
154
209
224
170
153
236
275
221
228
170
184
175
213
233
214
179
216
213
203
215
170
210
206
266
215
177
206
254
216
204
212
188
192
196
210
248
211
217
250
231
188
216
144
201
202
184
223
236
225
256
215
188
187
228
207
190
227
176
203
201
211
146
254
156
207
233
224
223
229
175
208
233
233
236
226
138
217
263
237
152
221
248
224
244
157
168
228
231
148
158
217
170
236
231
207
219
217
186
190
211
249
176
228
164
231
166
208
166
192
238
171
183
250
120
147
207
185
198
169
127
218
224
210
217
153
161
227
148
200
238
206
177
201
238
221
179
123
207
232
186
189
222
184
195
223
232
166
214
215
208
247
250
228
225
236
232
238
269
105
178
162
207
161
181
229
214
159
202
173
251
175
158
228
220
207
144
224
196
133
209
262
199
199
223
157
181
239
167
226
180
204
155
187
109
192
198
173
177
185
221
186
236
190
156
171
227
219
222
180
195
235
173
210
210
186
189
242
254
174
221
245
234
241
266
172
221
236
233
185
186
179
231
227
237
143
215
222
217
265
174
241
169
175
239
215
189
199
202
149
217
170
174
172
218
200
173
191
174
223
264
272
193
161
227
216
218
172
187
200
229
216
196
190
280
206
201
254
175
180
252
221
191
206
158
126
188
216
182
237
267
210
181
228
205
193
152
242
224
210
191
177
210
238
209
215
204
171
194
207
208
163
203
225
135
255
194
237
192
192
243
219
213
202
172
162
95
231
196
192
219
198
104
236
144
181
244
172
166
151
266
221
183
179
291
199
207
147
202
187
224
217
142
218
206
218
212
165
159
188
180
219
228
203
245
237
200
206
243
215
180
170
205
221
220
225
243
157
204
226
186
243
243
229
175
229
209
214
170
151
221
154
192
201
231
169
200
202
155
183
173
189
173
149
148
177
216
200
196
161
179
228
136
179
210
209
149
210
202
187
187
285
185
226
205
229
158
220
214
142
199
204
195
138
171
164
168
236
150
150
236
153
206
135
212
197
121
181
232
221
167
194
235
249
141
133
142
173
215
238
187
197
169
166
246
143
185
192
205
271
209
179
207
183
179
199
182
254
174
205
181
224
265
239
220
237
241
260
168
165
219
233
257
181
235
168
200
225
242
161
263
242
231
223
201
172
238
229
207
203
263
208
242
180
158
113
231
177
224
228
202
154
210
190
216
221
194
207
199
193
203
168
159
236
180
251
164
201
220
138
178
210
181
134
174
141
171
240
238
222
180
172
230
195
268
173
211
192
194
243
220
208
205
194
260
194
242
212
210
201
207
213
228
171
180
254
226
246
166
185
138
199
146
233
195
181
166
170
175
246
163
217
171
178
224
182
173
228
209
137
167
267
186
196
226
177
188
160
155
182
187
186
220
175
203
252
243
192
260
173
166
236
178
180
266
203
212
275
185
232
247
229
240
180
187
155
205
205
173
240
188
214
247
203
187
196
167
196
217
204
226
229
257
182
219
258
223
178
165
243
128
177
226
174
167
162
203
159
232
184
188
204
156
199
187
214
230
239
258
200
169
172
182
138
232
246
195
186
164
176
202
270
176
209
194
196
199
237
245
141
225
195
183
160
181
194
169
182
231
195
123
171
263
178
216
180
206
128
241
186
212
210
217
129
273
220
205
132
158
187
159
194
174
224
168
259
187
221
224
132
208
166
208
157
218
253
184
239
172
234
214
111
233
167
150
208
161
210
197
201
243
211
217
201
214
205
213
181
160
147
242
212
231
126
191
246
171
218
217
191
206
197
156
196
206
196
218
235
222
244
218
220
230
212
185
239
203
163
203
130
259
138
235
158
168
195
154
129
176
214
236
144
200
237
179
176
226
199
246
128
177
265
185
219
233
243
195
221
195
186
206
195
131
179
157
244
168
197
204
221
169
217
183
195
214
222
154
236
233
178
226
242
206
241
179
211
200
204
208
203
208
179
205
148
132
210
229
218
240
231
224
198
184
231
186
218
208
248
244
230
204
248
229
263
195
141
214
211
208
179
169
164
199
180
164
192
177
202
234
262
169
201
226
229
168
189
222
191
207
209
182
194
228
217
168
220
171
205
232
224
209
164
263
184
156
235
178
182
197
182
232
204
156
263
180
204
172
184
191
230
205
78
214
221
230
200
237
189
235
183
232
215
208
239
291
265
198
234
226
165
194
204
212
254
198
225
248
179
183
189
250
182
202
187
211
202
154
216
203
223
149
221
237
241
248
220
194
210
225
197
177
145
216
203
135
219
203
125
224
201
204
232
211
145
271
191
222
255
192
195
251
204
149
212
178
191
216
242
158
144
216
131
239
178
170
200
151
209
222
194
137
170
172
215
140
203
159
199
234
182
239
186
161
185
185
203
202
179
238
164
161
258
95
193
213
180
163
192
210
192
154
196
222
213
201
205
167
199
206
170
197
151
217
195
260
225
217
181
195
214
225
170
148
223
197
198
130
144
171
282
192
201
260
258
191
218
199
153
225
201
187
140
154
190
174
277
177
294
179
174
163
147
272
236
236
157
200
236
214
185
133
187
159
179
160
223
201
198
217
211
262
179
228
232
182
213
260
209
165
186
160
270
239
183
156
231
206
173
155
221
222
150
186
206
172
178
219
258
246
240
202
207
247
227
187
202
136
254
228
214
201
190
245
160
123
206
213
214
183
115
242
191
186
202
179
214
249
240
166
247
166
254
190
210
225
187
234
149
205
212
188
227
162
187
202
232
183
142
227
248
221
143
129
211
217
191
236
189
189
185
209
207
173
192
139
192
198
171
168
204
192
172
154
179
252
182
171
165
176
153
189
243
226
224
233
184
273
289
178
122
215
237
228
189
208
174
136
177
210
223
171
146
241
194
221
175
206
176
162
183
189
177
212
223
148
223
144
188
260
208
172
227
182
199
242
194
217
194
151
226
220
179
270
257
212
152
238
208
163
209
212
163
182
206
159
207
175
183
176
244
195
203
135
218
148
222
142
193
190
159
175
211
245
204
231
185
180
183
193
207
181
160
245
204
184
207
197
189
202
218
230
180
194
220
219
139
124
231
197
213
265
188
222
233
155
214
215
196
166
149
207
218
265
160
219
225
235
203
207
218
193
139
197
194
174
206
234
186
221
178
255
170
191
153
223
186
194
224
230
191
214
248
207
193
245
119
158
218
200
250
236
182
163
201
224
207
156
229
237
149
212
182
164
203
175
193
207
157
213
242
212
221
202
206
211
183
251
185
201
219
219
160
161
160
241
174
162
146
243
182
207
224
250
228
223
231
184
267
222
181
179
209
257
198
204
199
185
223
252
190
209
152
192
246
186
168
120
175
255
175
187
201
176
158
222
189
172
180
170
251
184
136
245
187
168
249
204
239
193
153
215
180
185
246
182
184
237
219
223
183
211
194
247
238
234
240
208
195
189
216
217
238
217
267
184
207
256
201
169
137
184
186
198
179
201
258
219
218
235
199
190
185
194
220
196
249
228
117
174
264
168
177
190
208
164
200
187
211
233
211
215
158
174
166
210
217
204
195
207
223
157
197
178
143
265
203
144
171
184
197
262
171
205
213
192
132
200
198
224
143
232
206
222
224
219
215
204
195
226
195
253
204
216
190
182
204
167
227
178
231
220
146
218
194
162
221
263
210
241
143
225
236
158
197
210
194
245
213
198
173
265
218
185
183
219
194
193
197
265
201
210
163
165
210
206
235
222
204
186
187
183
198
214
183
213
168
200
195
167
241
227
194
252
155
186
186
200
211
194
229
153
244
190
177
193
211
212
155
237
236
150
226
137
191
238
193
248
198
227
211
225
184
224
202
229
218
291
253
227
162
163
216
248
205
137
237
186
222
244
184
192
205
220
268
216
182
223
223
230
126
220
180
176
209
206
204
289
236
245
211
173
183
216
275
198
216
261
234
175
245
183
171
204
220
156
177
191
190
199
180
157
202
215
142
205
180
226
231
193
256
180
207
139
203
130
146
254
228
231
213
219
197
198
211
212
221
238
155
174
249
199
190
150
237
149
172
232
183
189
211
138
247
155
218
219
186
208
234
254
227
210
196
193
229
172
163
231
150
184
217
222
200
223
211
232
235
143
195
202
235
220
186
185
167
188
217
154
211
195
183
146
203
147
176
211
245
263
220
254
216
203
172
220
236
161
231
202
190
176
210
278
222
214
149
195
206
202
195
191
241
134
162
181
262
200
162
176
241
200
199
240
187
143
187
136
254
216
240
263
165
192
224
196
182
171
196
209
177
169
210
168
255
161
157
209
215
111
199
211
198
136
228
192
160
196
188
199
172
209
199
191
250
186
209
244
182
207
234
202
148
235
193
157
206
241
221
228
162
230
189
224
233
130
241
243
274
226
201
177
240
208
221
139
251
177
169
148
162
176
216
171
160
222
187
181
168
178
141
165
209
163
194
215
192
209
214
158
155
212
148
184
176
184
191
136
247
176
188
204
219
205
212
195
232
217
152
216
190
197
269
204
137
167
214
172
188
278
162
175
233
176
196
163
206
212
186
208
197
249
198
210
188
240
148
232
170
151
224
210
245
233
212
182
172
286
164
121
273
125
217
216
234
249
231
186
157
227
229
161
182
168
241
136
172
206
154
217
185
210
238
234
166
224
223
149
193
170
156
241
196
239
237
177
188
240
195
221
218
172
218
148
167
231
223
189
212
227
197
210
163
171
210
222
241
202
185
255
218
238
202
201
201
228
202
204
191
216
238
213
264
203
231
147
197
201
186
158
204
167
223
224
212
237
178
236
153
134
174
212
225
171
203
200
170
221
194
179
186
221
247
172
157
191
194
201
250
177
188
193
215
164
260
156
179
206
151
176
184
129
194
196
230
185
187
237
256
222
189
227
248
268
148
213
206
223
172
134
201
216
120
223
232
161
218
163
201
185
209
201
208
212
205
169
127
185
214
191
184
230
193
235
158
177
194
198
159
182
262
212
168
236
218
194
202
162
196
217
175
241
167
190
204
237
213
239
150
186
263
225
248
215
138
179
199
243
209
257
165
245
256
223
189
160
208
152
269
175
223
188
164
180
208
200
240
190
167
216
247
158
203
223
183
202
214
169
241
153
185
227
243
192
222
236
257
125
218
172
158
180
213
174
193
211
211
243
190
205
198
226
202
270
220
204
186
178
232
138
193
203
209
270
170
191
182
212
262
189
164
250
204
230
235
161
232
192
241
181
172
178
223
158
238
188
185
201
218
216
210
247
161
170
208
239
202
205
235
210
157
204
208
158
267
211
184
229
189
208
151
189
199
195
201
258
180
193
211
183
183
186
180
235
183
104
175
226
151
156
245
240
209
206
200
226
258
224
192
190
222
217
151
229
214
233
201
229
213
200
158
195
141
211
213
179
260
116
187
212
230
156
214
163
180
236
223
187
189
181
218
136
174
163
221
166
177
256
204
217
220
205
178
189
151
148
238
230
222
233
161
208
228
216
195
191
196
266
211
239
182
257
262
230
184
207
190
173
178
220
152
199
238
175
170
198
157
194
204
298
152
211
277
184
230
195
149
212
237
198
229
224
201
155
234
257
259
174
205
175
192
146
246
223
193
229
198
181
242
264
229
167
215
229
198
197
161
217
241
225
206
249
160
179
244
171
193
145
245
219
214
143
161
215
212
221
198
266
223
212
150
224
285
204
221
225
201
234
233
162
235
222
146
183
227
168
209
234
188
204
191
229
209
205
182
178
228
230
240
171
223
223
182
215
230
188
147
232
145
188
185
179
210
214
196
156
220
176
237
177
191
117
215
191
150
167
189
177
217
196
243
166
248
124
199
174
113
202
171
207
210
274
206
187
161
133
180
181
178
197
275
234
151
186
194
211
189
228
189
218
162
188
209
210
219
208
199
148
184
214
160
265
268
186
222
210
264
120
169
242
254
231
206
187
235
211
211
179
255
126
187
155
203
204
210
209
211
217
187
182
157
225
207
258
186
258
163
158
203
150
211
221
151
229
159
253
192
253
181
152
143
188
202
195
168
215
233
182
199
228
174
187
171
181
241
155
196
172
189
174
190
178
169
151
227
241
244
170
221
174
165
192
159
224
162
159
228
200
121
83
204
139
149
225
187
230
239
213
163
227
165
234
175
179
228
239
165
271
255
163
213
240
160
228
176
213
225
162
273
236
194
134
197
200
255
229
208
200
164
218
199
187
213
172
210
148
203
171
249
205
232
191
168
292
208
238
233
197
202
154
165
238
216
240
189
204
208
148
209
238
183
99
213
218
183
192
157
175
244
233
192
205
181
240
220
125
179
231
229
219
230
191
186
196
250
261
249
159
222
181
198
142
205
217
179
165
192
203
273
232
152
169
148
157
163
228
195
254
250
200
142
250
201
188
164
209
269
261
161
166
211
243
155
221
237
245
231
155
224
131
185
213
206
152
184
166
226
206
189
244
240
199
236
155
211
235
167
212
251
250
97
213
129
159
146
212
209
195
197
220
217
186
216
146
272
175
223
205
202
246
212
228
110
198
211
188
246
170
209
144
174
214
102
208
196
193
214
219
140
169
162
226
146
216
147
233
207
175
199
194
218
212
187
225
156
180
212
144
158
244
216
224
219
185
213
165
182
242
202
153
167
229
198
188
206
232
209
218
222
210
242
211
194
196
240
140
234
143
209
200
198
220
261
181
224
166
215
251
211
197
168
150
162
214
183
186
154
244
180
154
179
175
152
212
193
252
234
162
154
246
182
259
199
185
149
198
206
193
176
170
238
165
218
177
205
196
129
210
227
173
185
170
215
191
156
173
238
205
183
246
115
219
195
107
193
218
246
158
225
221
186
179
184
209
238
147
236
177
115
209
262
193
198
177
270
233
216
191
200
185
154
247
177
183
249
188
200
186
219
190
143
270
263
192
200
184
221
218
155
195
98
203
162
239
165
260
212
258
196
220
258
170
189
239
204
241
216
211
143
174
238
227
244
208
216
143
170
174
148
214
196
217
176
155
214
136
197
242
193
176
175
165
190
221
234
155
235
152
205
161
173
184
186
132
223
192
145
221
173
188
197
220
155
230
238
242
202
240
168
213
226
214
198
216
190
203
183
263
165
230
215
159
160
146
242
202
238
153
249
157
169
213
138
232
154
239
197
169
193
200
230
194
146
108
267
118
180
196
252
212
124
224
237
185
247
208
172
126
194
217
181
224
202
221
187
228
222
187
188
217
163
245
255
196
179
119
192
183
214
208
267
225
200
214
157
280
199
228
191
235
219
142
173
223
185
141
276
165
249
228
158
246
224
204
99
144
144
192
182
216
189
206
212
189
157
231
232
211
174
217
228
230
217
209
210
106
252
199
209
161
199
177
196
188
223
195
209
163
216
222
186
140
175
247
178
226
231
207
173
143
162
136
202
249
166
214
157
218
142
199
239
211
218
192
175
160
235
128
245
190
192
135
192
121
210
206
205
222
231
240
185
130
186
164
177
229
229
238
161
226
186
191
257
233
240
234
201
200
190
237
159
209
197
241
234
213
242
190
212
227
237
196
258
209
138
233
217
230
229
215
240
184
202
244
259
210
109
243
255
178
211
186
240
151
182
245
238
180
177
257
162
210
235
114
216
114
217
242
197
217
262
210
236
182
208
232
247
170
178
189
156
191
150
204
158
208
162
230
184
159
274
226
231
242
171
115
202
196
218
248
230
229
164
190
132
180
210
248
241
210
163
133
216
174
201
180
244
181
148
174
191
296
202
207
124
194
228
188
188
225
191
196
219
244
235
258
184
217
156
248
161
179
194
195
169
242
180
247
124
189
260
173
205
187
208
245
186
230
207
170
209
184
219
232
207
239
208
136
177
216
207
156
215
210
202
225
210
195
190
238
225
208
198
192
206
172
116
196
171
232
204
164
215
240
206
241
218
225
175
151
136
221
169
222
228
221
240
220
171
164
223
252
184
232
190
204
236
197
234
189
185
193
205
248
213
208
196
190
181
214
193
148
157
192
196
154
135
186
209
258
241
146
200
173
257
194
259
235
217
219
126
266
143
207
222
214
247
187
140
200
183
233
208
137
132
243
198
203
181
192
221
261
217
214
208
164
159
177
179
215
147
233
226
206
194
209
222
194
200
242
217
254
244
107
252
216
198
205
216
266
205
150
237
182
129
236
201
151
231
152
219
232
226
134
219
265
180
132
203
215
145
251
187
177
188
174
228
195
188
185
160
174
255
221
223
184
168
198
182
168
194
162
198
201
219
181
170
202
194
227
186
199
241
131
151
174
170
186
176
225
216
107
219
164
165
233
219
195
196
284
226
197
207
235
178
191
232
203
187
176
190
259
264
204
193
221
219
163
235
226
247
178
199
179
181
135
163
189
192
176
199
186
218
189
188
186
181
200
194
157
169
156
150
240
190
186
194
178
163
159
198
201
195
239
149
160
194
215
146
184
195
211
208
175
176
204
170
187
185
171
202
161
212
168
213
274
219
219
229
208
234
234
183
202
157
229
227
188
192
169
220
242
187
211
167
213
136
143
163
219
208
198
208
181
234
175
175
222
223
179
211
202
239
180
216
231
164
214
200
178
204
186
208
230
223
265
219
205
198
231
236
195
193
229
199
171
146
184
247
247
223
202
135
188
226
189
182
199
170
245
165
210
206
203
204
173
183
214
181
171
207
244
182
241
237
249
179
200
216
215
202
222
194
219
175
185
248
186
198
175
237
225
237
221
120
204
251
228
175
233
174
163
219
181
169
172
175
242
175
231
208
165
187
188
159
246
188
187
239
238
208
174
206
193
254
193
211
210
226
224
195
209
193
219
203
177
272
216
162
201
229
224
212
144
217
189
177
264
174
158
212
248
229
217
186
125
186
180
197
260
147
214
208
244
203
250
169
187
199
227
152
206
224
177
237
204
207
228
220
234
156
248
215
212
155
231
176
213
198
170
212
216
231
216
214
218
178
157
264
254
198
177
207
219
151
246
210
157
228
204
200
212
144
204
208
245
247
280
241
190
259
229
232
205
219
162
211
194
201
208
217
204
198
193
186
221
161
192
242
172
114
184
203
196
219
236
228
227
199
256
185
188
172
226
232
148
209
198
190
156
229
185
195
216
187
147
171
225
226
178
234
225
210
123
202
221
261
174
200
166
148
214
155
155
176
204
181
191
205
191
112
236
220
213
183
125
227
207
215
208
202
208
204
212
238
211
266
227
186
247
198
229
188
120
231
225
207
198
168
183
232
211
195
176
245
122
232
251
123
203
194
182
190
162
176
184
175
266
202
199
206
286
150
146
144
201
217
189
231
244
155
246
182
219
228
211
235
206
190
215
157
210
231
172
213
254
162
283
189
238
189
216
203
190
199
194
236
189
221
137
193
232
208
203
185
216
146
187
204
208
218
277
261
235
271
237
210
218
173
228
175
174
231
258
219
233
181
219
267
131
174
175
195
221
190
248
196
171
222
193
227
215
223
208
196
210
187
158
141
220
232
198
247
182
212
219
185
247
271
193
194
204
216
245
197
230
251
222
216
163
226
238
205
254
279
207
202
170
227
178
171
222
156
210
271
198
203
176
226
245
271
233
206
141
208
219
207
236
251
217
201
162
185
220
204
208
173
239
235
196
158
179
166
178
212
211
119
220
223
248
245
202
176
198
205
191
200
213
191
171
270
192
183
141
228
204
176
247
249
251
156
225
201
153
200
187
210
169
190
161
207
244
165
146
240
236
197
249
174
163
194
225
176
244
163
179
246
173
165
255
173
171
234
229
223
203
177
207
205
211
230
245
217
217
173
209
192
228
190
192
176
183
176
201
169
252
230
172
250
203
146
208
216
203
165
195
211
256
229
233
225
208
209
210
211
211
188
259
250
191
194
261
219
211
249
176
215
146
241
192
161
250
233
174
227
199
201
187
182
280
251
223
206
176
194
131
210
213
255
229
215
186
235
198
228
236
183
225
246
207
305
165
191
173
183
241
222
196
166
174
139
175
200
191
215
250
191
237
202
120
216
205
220
167
244
203
269
179
183
205
220
236
215
180
190
161
164
163
255
112
201
167
226
248
226
259
236
189
179
230
170
211
183
201
201
149
119
207
159
257
175
209
182
182
271
256
184
228
137
180
210
213
230
172
188
204
207
260
259
228
185
187
179
247
230
226
216
255
180
253
119
198
170
182
217
229
216
182
176
151
179
233
169
266
260
193
226
272
234
205
160
191
149
230
231
212
251
224
215
188
199
160
175
258
163
260
205
187
212
237
261
212
169
169
163
192
187
172
213
222
193
216
187
205
210
239
124
244
174
222
271
210
251
257
224
196
179
183
240
226
176
208
162
146
245
178
177
202
206
211
180
181
185
218
116
227
183
219
191
200
196
133
204
233
219
238
236
160
159
231
190
227
237
197
186
230
161
169
178
240
151
163
172
232
226
233
200
265
184
184
210
212
182
191
204
235
248
151
158
219
197
158
235
228
234
138
210
199
215
201
205
217
270
204
188
120
171
238
205
214
233
233
137
212
174
224
215
271
230
253
247
225
188
236
189
187
258
256
205
165
198
213
160
200
279
192
225
210
196
181
219
197
151
169
177
170
192
216
187
210
252
226
220
221
221
202
229
244
178
219
261
205
186
195
162
173
183
180
196
244
168
218
231
251
212
178
161
251
230
217
221
189
142
195
181
194
218
172
166
219
202
180
180
212
247
179
223
259
192
195
222
225
229
232
153
165
243
192
230
198
230
160
234
242
227
167
147
174
142
207
215
221
236
240
200
183
225
204
164
246
150
194
281
174
181
165
199
161
218
176
154
223
195
222
224
219
205
115
202
193
209
229
190
194
226
188
155
228
217
175
223
191
162
198
146
211
170
179
242
232
207
253
235
250
169
216
159
154
173
188
139
224
166
263
193
172
249
182
210
201
186
155
196
213
187
154
194
218
194
215
239
220
162
247
149
201
201
175
157
215
172
214
143
157
183
210
168
187
113
257
174
234
218
225
207
209
242
194
187
241
200
216
198
157
205
166
177
169
200
238
149
253
175
268
192
228
192
203
244
192
167
254
246
207
243
126
194
191
184
189
130
198
175
235
179
195
187
235
216
124
172
208
203
193
131
233
176
104
237
172
274
230
220
149
193
187
228
175
181
147
191
272
175
216
216
181
207
172
146
216
161
203
197
159
222
225
169
223
227
205
208
203
238
215
189
270
153
223
209
185
262
227
214
261
204
158
177
201
161
196
198
173
199
198
218
196
141
242
87
233
222
220
223
221
196
237
144
118
225
199
205
230
204
208
179
189
212
199
140
182
170
190
194
207
235
157
216
212
165
207
221
261
171
189
186
234
217
180
183
252
231
257
156
238
213
203
290
240
274
173
235
180
206
198
205
222
201
248
231
231
183
214
184
177
262
184
197
273
275
199
224
137
161
244
191
202
197
182
171
193
130
219
210
164
239
175
225
182
184
175
221
188
225
189
206
242
184
177
244
176
181
184
221
175
160
153
170
158
154
236
166
221
194
226
251
213
199
234
213
177
231
271
135
218
200
218
234
182
185
190
185
245
261
163
203
194
212
194
167
185
272
143
210
212
184
239
223
173
192
197
240
186
201
148
250
237
199
205
229
202
178
233
221
209
213
237
216
272
213
214
217
229
198
216
167
201
261
169
205
215
207
226
238
186
186
231
212
281
175
175
231
196
241
232
203
217
210
218
142
195
198
137
201
229
153
230
203
162
216
237
201
263
218
252
254
189
131
250
226
205
214
204
245
200
185
243
183
182
158
158
267
125
158
170
210
206
225
227
136
257
212
239
196
197
207
189
221
259
202
221
219
200
256
226
217
255
259
195
212
168
175
238
176
228
172
144
234
190
150
173
192
136
243
201
189
259
231
228
215
219
190
249
210
214
226
210
201
238
184
233
150
187
198
160
289
206
165
255
156
228
264
185
189
232
238
182
209
189
154
184
179
200
215
174
201
181
236
213
176
139
180
227
184
216
234
251
237
179
206
190
164
196
229
179
156
165
168
127
121
232
201
172
191
200
169
185
273
171
198
176
252
210
196
286
149
131
187
209
198
237
200
220
141
147
207
173
167
162
225
187
160
164
138
198
194
216
198
194
200
157
236
169
196
162
172
226
182
176
224
177
177
192
224
170
158
219
255
214
160
139
169
240
205
224
218
181
228
251
140
152
236
152
211
218
130
184
207
151
163
202
160
190
144
172
213
219
167
181
188
197
178
215
183
230
211
209
187
223
163
198
182
269
199
251
225
202
207
236
211
186
164
253
227
195
227
230
255
183
167
173
242
265
219
219
205
138
168
244
137
180
154
182
231
206
216
206
217
197
170
256
154
187
225
228
239
217
198
183
162
170
219
223
252
288
238
235
185
198
226
184
232
203
203
218
228
207
147
225
196
210
218
220
213
191
194
175
161
138
221
255
162
220
185
123
216
205
267
155
188
114
155
252
193
200
159
188
215
140
197
215
172
204
210
258
241
192
239
238
216
239
174
157
193
232
147
162
214
185
195
206
224
252
237
178
247
186
275
173
152
160
184
201
192
133
171
267
159
246
173
163
246
188
237
200
221
230
184
215
197
250
222
207
230
162
243
203
223
174
215
197
203
148
247
155
157
169
163
216
167
129
229
151
143
142
277
190
242
164
211
268
232
166
200
245
183
167
157
217
179
140
142
217
166
193
250
234
152
215
212
186
223
171
173
191
188
206
215
201
174
135
153
188
234
251
236
278
157
209
256
191
181
151
211
202
216
219
132
197
209
185
237
195
227
179
217
210
249
177
197
195
225
168
241
243
218
239
185
193
163
181
255
187
228
240
212
238
198
236
223
217
168
174
226
195
225
253
204
183
165
158
232
173
185
133
142
242
216
209
207
188
202
171
212
186
163
225
172
214
247
154
172
255
160
206
161
239
222
234
213
149
176
95
187
248
180
200
209
235
213
108
209
189
178
217
217
266
204
269
172
211
164
200
272
230
143
161
201
190
184
239
263
213
260
214
171
149
244
140
245
158
206
180
260
189
250
263
196
201
226
228
191
192
168
286
223
198
172
167
244
151
152
198
153
245
222
234
174
213
201
165
194
189
225
233
137
183
223
163
199
202
220
269
127
240
251
168
288
212
163
119
158
235
218
159
249
216
214
135
169
219
276
250
238
225
215
246
175
178
188
234
125
227
214
229
168
181
218
244
224
213
181
250
146
262
123
165
188
221
198
219
187
150
155
166
181
169
196
204
232
202
184
155
184
256
210
196
168
219
162
157
206
166
190
233
220
144
184
241
211
119
220
162
211
139
163
161
207
240
139
130
238
164
215
207
221
214
180
161
159
249
212
136
197
149
188
172
193
241
166
235
223
242
224
134
222
213
205
217
238
228
190
239
208
170
238
189
207
230
216
179
210
176
185
218
229
148
204
241
185
227
133
244
183
232
190
198
227
216
163
189
213
155
248
225
219
207
126
266
165
250
233
227
156
141
200
198
207
225
232
232
271
162
208
129
166
223
203
189
226
193
146
192
210
226
193
148
184
193
200
200
187
174
165
204
207
233
246
156
185
230
242
275
182
200
138
222
184
215
216
161
173
192
167
228
137
207
230
215
134
155
153
171
165
181
244
199
228
178
147
173
175
203
230
225
197
227
205
189
263
206
154
165
229
207
190
178
190
197
190
196
177
264
224
174
221
220
151
191
172
199
203
150
166
191
228
193
234
151
166
129
209
188
178
131
189
165
213
215
144
218
173
287
214
233
158
184
193
187
205
192
247
151
212
201
167
218
189
216
183
205
165
163
231
233
191
133
176
189
224
164
215
208
200
174
211
166
153
247
235
145
184
188
197
223
180
219
245
134
200
155
222
231
216
189
112
143
223
143
226
212
279
167
216
204
221
165
237
239
189
204
222
191
213
198
161
154
216
161
237
237
187
163
191
192
160
195
166
197
220
213
207
216
236
148
228
221
184
186
228
225
199
233
258
193
199
240
179
228
188
208
150
231
220
260
237
203
278
164
219
217
231
197
157
265
253
231
224
245
237
235
248
213
204
211
232
147
198
189
153
250
198
182
199
200
169
186
165
210
188
234
218
186
152
214
242
200
198
200
214
217
150
187
229
234
220
206
218
197
142
194
171
169
206
193
187
229
198
245
197
162
249
210
205
203
238
228
271
190
278
191
177
195
225
245
160
272
228
208
185
174
204
256
251
221
234
245
225
174
181
212
253
174
189
138
179
258
155
204
234
121
160
157
209
193
203
219
197
226
223
255
198
212
228
270
160
182
206
176
221
225
199
222
248
184
190
195
213
179
261
147
223
211
211
237
215
186
179
214
223
212
204
160
163
207
180
179
199
200
151
183
178
212
180
151
255
202
187
257
186
185
209
259
197
222
225
220
238
169
130
225
143
204
210
184
198
123
231
231
212
159
241
193
207
208
201
201
219
166
251
203
124
270
104
221
212
231
101
154
175
212
243
197
245
189
144
210
204
182
287
216
161
220
202
161
202
246
214
226
203
245
223
241
226
161
257
224
143
272
221
237
188
180
211
172
130
222
221
218
217
226
217
157
173
184
162
217
242
265
207
217
126
160
157
188
178
228
167
124
184
203
204
196
122
191
193
113
214
221
184
153
238
195
178
222
233
196
214
175
211
194
215
190
203
121
200
280
198
186
199
203
139
234
230
230
235
275
177
211
267
142
156
158
201
180
213
267
225
261
178
207
151
216
170
231
194
247
229
203
199
246
138
249
185
149
135
221
215
203
203
195
165
257
134
240
206
205
184
260
206
210
193
173
246
166
239
252
159
254
196
219
156
215
203
203
169
209
200
205
232
165
201
221
198
119
162
209
218
273
204
210
137
204
217
189
215
220
274
198
202
218
140
234
189
181
191
242
177
223
184
220
247
183
194
233
188
205
230
153
138
175
236
212
152
197
294
199
192
196
237
175
170
176
206
186
133
200
162
180
193
224
208
215
186
244
174
202
85
224
240
171
229
209
208
216
160
194
237
170
219
228
166
228
196
176
165
175
234
140
213
226
198
250
172
112
189
232
133
197
257
195
218
224
256
227
242
233
210
195
221
210
206
136
199
203
203
167
226
153
176
197
218
195
198
225
226
175
195
192
237
190
176
163
184
186
268
174
226
195
207
172
200
194
179
219
242
220
194
189
142
150
193
157
266
238
163
156
257
175
156
146
223
221
239
182
234
202
194
211
178
174
209
197
208
196
212
178
245
237
261
218
177
239
185
219
190
188
180
228
180
224
233
181
231
208
185
194
201
210
164
180
141
153
228
201
122
188
234
204
187
232
173
174
177
177
210
196
181
227
191
286
164
287
161
283
175
200
162
258
195
215
187
171
226
205
190
206
215
185
233
267
170
201
238
219
213
246
277
227
206
241
179
209
261
215
158
195
217
185
190
178
151
214
223
203
240
216
190
188
178
158
219
200
208
267
127
180
213
207
183
171
179
173
225
224
179
188
191
230
160
209
263
180
217
238
231
222
149
177
198
220
176
170
192
184
197
228
214
210
262
171
159
228
222
192
170
159
198
181
141
160
215
228
252
211
216
184
227
199
206
226
187
188
219
162
210
223
236
200
227
174
134
130
178
220
192
125
210
216
179
269
138
219
232
172
175
199
227
190
224
234
200
238
190
226
221
180
173
174
254
189
259
202
254
172
183
189
173
180
244
206
162
155
192
164
196
209
255
187
207
174
186
226
278
242
167
166
197
228
136
207
233
177
223
224
183
169
248
201
175
215
258
195
171
236
169
181
181
221
239
136
222
209
206
213
122
167
236
186
183
273
169
220
255
209
164
202
180
177
265
207
156
218
166
222
170
162
203
169
182
174
201
173
240
229
158
162
257
172
151
190
182
186
254
177
201
205
212
213
197
171
222
139
152
171
267
184
114
225
176
230
170
226
178
193
208
216
246
194
139
141
187
242
184
170
191
252
202
231
235
260
158
233
188
200
260
222
169
255
215
216
225
239
167
180
229
176
273
167
251
148
248
160
161
176
189
221
208
164
196
199
213
277
215
186
145
211
232
156
194
254
192
232
164
225
187
181
255
161
256
200
234
115
209
193
211
177
219
255
217
199
128
198
158
188
151
228
170
146
253
285
175
221
133
182
228
236
158
224
246
227
232
205
190
190
234
166
238
240
140
178
186
234
187
163
179
216
220
226
234
269
190
207
147
181
164
163
225
200
201
188
287
240
201
148
192
191
207
165
172
229
197
204
204
229
201
179
222
209
233
219
245
219
186
186
244
158
162
212
196
227
169
194
239
197
207
230
151
221
152
185
204
224
169
177
266
199
254
193
215
196
214
196
212
188
258
204
145
187
204
186
149
231
174
154
198
179
213
222
232
225
190
249
221
218
222
216
174
251
178
223
262
153
257
238
238
212
262
214
208
199
194
234
229
293
227
235
211
211
221
177
177
160
184
258
183
229
195
226
182
210
236
143
184
235
167
183
208
151
208
163
210
215
215
233
171
168
179
229
228
150
197
198
210
164
242
149
222
183
192
253
143
189
195
247
224
244
184
202
205
189
200
248
208
155
196
224
140
105
208
241
195
209
195
232
215
211
161
263
162
194
212
162
178
198
190
212
194
229
265
119
222
219
127
222
182
161
243
237
119
258
185
188
163
256
214
179
203
247
225
233
235
184
212
207
194
214
206
176
233
236
204
173
210
187
231
127
181
169
162
170
139
202
196
196
181
189
147
175
119
227
169
204
190
243
245
206
180
226
243
264
164
193
156
147
194
188
255
226
258
213
215
152
193
237
147
210
235
251
148
256
202
206
215
195
229
211
201
208
156
217
246
210
236
187
132
217
129
253
159
256
208
223
221
196
217
230
214
190
231
205
179
223
165
221
267
201
246
211
184
193
168
157
198
218
202
158
154
211
194
199
241
229
174
89
264
213
223
161
214
229
193
186
223
219
208
203
201
225
209
168
232
212
226
195
215
168
212
248
172
188
251
157
205
204
190
218
201
172
219
197
222
235
190
195
176
211
197
154
190
244
188
220
194
210
192
162
195
213
219
248
164
274
204
143
202
240
227
179
204
189
146
215
209
164
205
216
212
270
258
214
145
222
199
177
182
229
181
159
186
182
245
245
126
199
157
176
180
162
224
197
201
223
228
239
170
199
234
231
217
174
181
188
187
182
151
211
195
128
252
167
171
167
247
187
184
238
226
251
200
169
146
209
146
223
142
213
171
176
193
208
164
189
290
153
167
274
216
219
220
195
130
232
114
194
158
215
169
225
217
226
204
219
214
262
187
224
244
169
184
249
177
248
126
146
187
151
199
189
265
181
208
216
238
203
189
238
231
235
201
224
224
245
270
203
173
187
234
187
195
216
188
193
193
174
247
217
234
223
159
243
158
188
252
180
220
165
218
137
249
191
201
167
120
208
169
230
164
199
188
276
251
135
137
226
206
182
232
187
211
245
192
196
192
188
209
219
209
266
159
214
222
174
161
173
197
265
178
189
185
219
223
213
177
169
177
238
163
170
193
222
200
209
162
200
220
238
243
228
148
252
247
217
150
169
239
181
200
243
235
275
151
205
206
245
248
222
173
198
184
152
162
218
250
168
187
180
202
272
228
165
192
257
255
241
193
184
145
121
213
220
284
268
142
199
195
216
193
217
239
196
183
232
245
229
186
190
185
202
166
198
236
201
203
234
184
149
228
167
210
216
168
205
237
165
142
220
158
162
185
229
180
238
227
204
171
186
192
247
251
231
189
211
140
261
245
210
232
220
212
158
190
200
201
227
253
175
182
115
140
211
221
212
103
226
218
234
154
163
176
212
199
221
229
142
245
152
189
224
179
221
203
227
148
205
209
171
190
154
198
170
237
250
183
236
249
194
193
172
211
139
258
232
217
227
184
195
175
184
198
169
206
196
168
156
191
139
180
252
206
214
216
236
215
212
253
181
196
177
217
207
235
205
181
182
175
224
260
220
217
226
170
158
249
216
140
171
192
207
248
287
117
188
187
160
245
207
206
179
230
243
157
193
155
164
248
205
173
240
199
191
204
176
179
176
189
227
261
174
163
211
235
205
219
200
257
218
212
224
256
175
191
272
224
197
245
231
203
214
168
227
183
232
190
239
174
237
161
196
165
214
153
175
249
196
147
225
160
263
182
168
190
173
182
111
188
201
172
137
218
240
153
163
241
215
213
228
261
123
165
194
211
175
159
233
213
235
258
214
150
238
128
246
208
179
210
136
182
194
228
226
240
161
200
193
120
206
226
244
228
183
210
197
225
155
185
120
218
211
160
223
210
241
148
165
211
221
203
198
159
200
207
133
176
180
147
178
194
179
246
131
211
153
203
226
180
231
234
183
228
212
185
193
187
218
205
115
246
156
227
174
173
192
236
138
191
157
151
276
206
200
246
153
248
176
158
197
218
246
209
148
194
262
186
268
229
250
271
213
132
242
232
188
154
183
211
280
234
213
215
244
235
229
224
193
258
124
176
214
250
239
237
169
260
160
195
150
137
177
143
220
167
181
240
159
235
154
103
170
205
204
213
224
151
206
155
189
208
150
233
219
240
151
262
201
216
253
183
218
213
260
164
204
206
213
201
104
187
201
163
183
168
234
189
229
195
228
219
192
227
177
211
149
201
257
201
250
202
164
250
254
165
233
234
217
232
227
188
189
186
157
195
199
213
217
200
188
197
161
261
195
187
188
187
239
231
214
221
195
225
193
240
199
194
168
215
143
266
166
213
212
161
210
216
220
203
209
231
221
218
151
150
241
213
125
217
205
221
242
193
165
223
239
256
202
187
155
238
227
248
175
179
119
200
206
187
183
163
255
269
169
165
207
235
190
213
187
157
196
178
261
192
207
226
153
202
185
171
186
206
191
169
226
184
226
217
212
231
218
239
207
231
200
193
227
216
214
188
189
160
272
188
209
228
251
188
199
170
223
129
180
216
215
202
202
223
190
155
192
159
234
166
151
189
185
221
203
188
199
176
256
212
217
221
224
203
183
150
180
198
170
221
248
166
176
204
159
171
196
249
196
232
131
171
220
223
196
201
160
112
222
185
143
177
198
187
192
148
250
197
239
192
246
176
155
232
171
221
216
230
254
177
193
230
186
149
189
157
225
181
171
168
191
165
192
202
192
186
182
175
166
185
228
183
216
237
194
197
247
207
180
128
210
118
206
164
192
261
260
233
173
179
263
187
193
262
152
142
214
192
190
184
197
179
204
148
185
188
234
148
199
277
205
207
170
248
179
204
234
213
166
193
239
162
169
205
209
175
246
193
197
211
207
205
216
232
253
247
244
202
163
227
199
223
217
238
179
226
204
222
195
279
161
216
220
166
234
177
229
209
261
202
204
206
190
201
148
162
260
235
193
187
198
211
203
148
223
171
203
247
244
243
160
158
249
164
221
217
185
123
194
190
195
225
224
186
230
204
153
198
207
195
143
187
175
172
217
135
223
214
184
144
226
243
152
147
189
195
199
191
222
219
249
194
199
218
199
182
186
207
217
247
211
190
202
129
234
174
261
228
194
205
129
293
223
194
198
163
264
133
211
196
221
227
219
153
216
178
217
191
166
169
226
212
221
144
181
223
263
152
166
184
206
234
153
252
151
207
192
201
220
203
237
229
216
226
210
217
195
176
199
184
237
231
192
228
162
164
189
180
230
202
207
161
215
165
176
218
222
238
221
196
250
157
162
191
239
223
192
106
174
221
204
213
190
163
201
248
208
173
177
233
208
160
214
212
186
145
206
214
217
255
202
209
135
235
191
203
239
172
234
209
169
185
220
201
177
237
248
228
255
170
191
240
171
219
205
259
225
210
200
236
196
137
201
210
208
128
265
233
188
244
210
195
198
216
225
165
255
124
233
231
211
244
182
199
158
238
225
197
179
215
180
191
176
180
235
248
218
175
263
187
201
226
204
113
206
193
210
256
157
226
246
220
179
173
186
150
236
213
186
119
199
204
181
193
228
198
252
139
194
197
244
172
219
213
184
252
210
236
224
96
212
200
169
203
205
257
177
208
221
214
223
232
211
151
258
208
173
210
167
195
184
242
227
143
214
193
205
225
216
205
237
239
187
240
252
220
192
189
186
295
162
189
258
253
240
176
195
187
203
198
179
167
227
231
158
253
168
178
225
245
167
167
182
199
219
212
196
192
130
166
217
153
247
250
227
264
170
208
222
179
246
211
203
232
219
221
192
235
166
222
186
145
193
159
236
275
200
219
182
149
250
212
170
171
157
183
183
218
172
228
235
151
234
160
169
181
167
195
224
175
230
171
147
210
212
190
237
261
218
115
154
198
223
266
208
184
207
167
246
214
185
223
219
257
160
150
181
207
160
202
224
237
161
190
183
167
198
274
199
169
237
215
206
124
226
244
223
143
202
189
207
187
198
212
182
250
196
247
181
217
226
163
192
143
197
172
253
169
177
180
228
203
185
263
177
181
226
197
174
215
218
245
200
241
176
237
183
169
193
157
248
208
183
176
197
231
259
245
208
249
226
165
248
250
256
206
170
180
220
142
172
219
255
227
224
207
213
244
203
217
213
220
218
215
186
166
188
198
141
145
154
205
201
217
238
210
178
196
221
222
137
225
156
151
169
204
194
214
215
234
248
224
194
280
181
226
223
173
220
206
156
221
189
230
230
132
207
205
182
258
198
225
212
194
212
230
246
195
124
225
173
198
190
197
257
228
149
194
199
167
287
193
247
195
121
228
177
157
264
210
156
231
223
210
154
160
150
226
230
201
178
196
241
200
205
150
254
215
185
186
178
186
221
181
147
153
190
227
237
206
231
232
110
201
241
228
241
203
205
190
203
158
189
208
203
214
239
192
217
204
189
169
219
194
196
193
206
202
216
196
231
207
229
183
162
161
191
147
201
174
175
193
138
204
162
178
227
195
198
206
213
177
194
220
193
173
235
164
242
246
237
193
177
240
204
165
181
221
244
202
258
198
271
246
191
234
211
188
149
156
168
227
249
207
198
217
203
172
192
207
202
233
210
205
218
224
247
148
141
192
157
202
236
211
190
204
197
206
135
192
213
171
193
237
146
153
181
195
204
179
233
118
238
252
215
159
208
150
155
258
89
230
223
199
193
190
241
284
144
155
145
214
216
201
166
172
184
148
193
201
225
228
177
217
147
191
211
225
162
195
212
202
125
243
134
129
202
189
188
215
189
235
192
161
232
146
219
151
225
228
198
231
189
215
168
211
216
200
150
145
235
199
153
210
129
222
213
173
192
190
233
193
213
173
180
218
133
220
181
248
199
200
263
225
225
209
220
122
195
257
156
205
193
124
221
247
182
239
229
226
259
198
219
168
176
246
138
194
277
192
186
285
143
233
213
229
225
181
237
176
246
218
211
217
168
220
229
207
257
199
231
235
198
152
174
147
170
199
185
220
186
187
172
204
204
194
224
198
178
187
167
202
243
223
192
247
237
220
187
164
135
250
201
153
195
176
181
175
272
243
143
180
232
147
189
192
236
192
228
210
203
183
221
136
189
144
214
197
144
223
162
167
227
188
258
195
210
221
254
143
260
252
240
277
166
163
150
166
305
178
168
197
146
152
124
145
175
300
153
184
180
191
220
189
139
176
205
163
258
229
184
196
252
194
262
203
167
142
228
173
222
156
198
224
202
161
203
217
213
219
251
151
216
220
217
193
188
250
184
173
189
174
207
212
212
179
238
283
192
175
156
226
150
196
232
219
243
190
222
199
212
192
270
170
147
151
188
186
188
236
173
207
255
222
243
158
223
221
203
243
183
198
197
188
134
248
249
174
260
219
212
223
223
211
157
246
186
124
186
192
158
192
249
213
226
142
245
220
167
152
201
160
227
196
183
231
236
217
214
241
170
243
126
246
177
248
169
194
136
229
189
118
203
221
232
177
194
215
187
143
199
179
240
234
222
181
169
223
169
205
187
205
210
205
224
247
182
216
238
186
121
220
226
201
188
244
200
157
226
177
187
207
206
235
223
234
182
209
214
204
165
226
230
215
193
189
218
209
201
164
204
187
177
220
247
212
225
158
199
145
208
225
155
224
143
237
168
219
168
231
175
203
154
226
261
201
205
242
229
178
204
206
153
231
243
172
176
232
157
211
222
193
161
159
214
216
206
200
197
204
250
218
192
218
223
169
268
186
142
230
209
169
198
238
227
227
201
245
196
170
143
239
237
186
231
207
192
153
233
215
199
215
153
259
220
202
204
209
171
239
231
211
213
100
162
152
230
163
156
221
246
285
208
219
211
160
169
244
206
212
191
228
243
198
178
211
172
146
199
240
234
169
173
237
261
212
196
157
164
249
178
229
197
265
200
230
184
183
195
185
262
219
194
250
188
194
168
227
208
245
144
212
119
229
227
159
193
168
250
196
174
212
201
203
200
230
217
201
186
235
219
192
171
191
167
200
179
163
218
215
179
190
239
225
161
186
214
222
259
189
190
153
179
178
190
147
161
218
172
181
219
233
214
229
238
193
239
184
173
212
182
176
185
207
262
168
164
171
191
158
171
227
201
235
197
202
156
163
169
245
190
261
229
236
230
216
206
191
212
235
188
198
197
233
234
132
183
246
172
201
149
246
198
235
178
221
174
228
187
159
255
196
211
210
133
164
213
212
183
202
206
157
242
185
211
207
242
209
189
218
160
183
196
210
244
228
153
234
218
198
207
189
206
180
210
186
227
236
199
234
248
174
218
186
232
226
86
157
212
141
244
223
144
202
218
235
277
186
213
160
236
100
146
205
222
178
190
183
219
222
206
222
205
215
249
228
224
235
167
214
178
217
163
228
192
174
265
185
212
176
221
130
207
218
253
162
203
153
246
190
249
226
154
200
194
190
189
218
244
202
220
242
235
206
243
212
194
248
163
214
225
259
169
123
177
132
174
214
126
138
243
229
117
226
207
142
248
257
201
235
183
203
223
184
200
152
192
222
226
214
173
140
210
216
197
177
213
255
215
203
142
182
203
180
179
187
173
185
253
188
212
228
240
194
226
271
233
171
187
209
198
244
148
165
249
273
199
191
233
159
224
237
181
220
259
197
224
194
151
206
192
194
205
203
211
178
161
173
119
263
195
210
179
141
138
177
161
203
195
124
228
208
210
213
220
153
205
145
192
173
201
206
170
212
219
151
165
180
174
182
209
196
129
179
204
186
202
180
210
220
166
220
183
249
229
192
235
160
262
214
189
185
173
207
164
251
197
240
202
168
234
212
218
177
200
180
170
214
240
171
200
220
193
174
187
184
162
155
174
208
199
164
197
199
186
170
152
215
212
158
174
119
239
228
216
239
269
219
143
202
198
176
232
211
201
239
186
210
197
203
183
197
201
178
217
209
182
209
197
218
229
205
243
147
199
192
127
148
189
213
188
218
160
181
172
183
216
173
180
249
220
226
196
207
159
153
139
176
220
253
134
268
199
214
176
211
203
232
156
156
222
262
152
244
165
210
179
211
238
171
221
238
209
168
171
211
173
185
242
193
188
234
201
167
236
180
199
226
200
191
226
202
181
184
199
220
200
208
177
182
144
128
218
206
251
182
248
275
197
165
140
226
207
204
220
250
220
200
237
239
210
194
215
202
177
256
203
223
166
264
200
236
231
238
180
254
183
143
158
238
202
220
233
230
241
211
190
146
155
234
216
286
215
168
239
195
150
212
190
216
234
213
207
157
196
200
194
189
217
203
227
182
243
152
253
213
145
175
223
159
165
167
246
232
205
228
203
219
182
142
190
150
132
192
207
174
271
94
191
201
188
209
216
196
266
218
230
187
230
143
195
213
191
222
195
175
163
168
217
197
218
216
211
247
179
185
175
148
180
263
150
265
227
237
266
185
209
188
238
205
262
222
230
231
182
167
212
208
174
186
222
146
265
206
212
182
219
211
215
215
201
165
237
211
202
178
193
179
177
184
269
239
184
215
145
212
173
217
223
178
187
218
260
126
262
199
147
187
229
231
149
254
182
199
173
194
189
205
159
217
171
214
253
266
150
163
215
192
217
240
184
270
228
226
259
186
198
251
228
122
216
280
226
139
195
198
245
231
164
209
159
201
176
220
173
175
226
217
182
178
207
165
171
220
204
196
235
223
176
189
268
225
191
204
197
138
246
142
194
246
125
251
221
154
213
155
191
201
212
167
207
258
210
213
215
155
221
212
184
182
174
172
209
211
162
229
233
207
240
195
178
174
260
207
149
167
221
172
228
195
186
228
223
183
144
175
170
201
242
227
176
248
189
234
198
177
238
167
174
204
271
196
198
247
206
253
132
138
172
169
215
192
164
232
193
204
199
189
203
110
184
191
186
184
213
216
251
170
198
220
211
137
187
168
218
174
217
251
181
213
181
139
177
179
181
222
183
142
235
193
232
176
244
203
187
156
218
182
219
204
233
202
196
212
217
123
160
180
144
151
167
175
185
213
223
231
237
214
235
214
171
179
192
211
246
193
239
146
151
192
179
241
238
163
156
204
144
125
262
191
154
219
202
169
215
189
179
189
232
210
195
161
216
140
233
157
124
160
162
146
236
212
166
145
179
198
183
198
181
242
261
141
256
201
225
193
229
166
213
163
212
181
228
214
202
238
239
193
196
182
209
219
158
246
246
163
188
208
198
207
146
231
209
173
165
231
210
188
131
225
171
235
234
208
167
180
168
225
193
149
168
240
233
169
190
199
222
202
197
203
261
164
213
246
154
187
254
197
249
247
206
212
218
215
210
202
252
172
244
212
223
238
254
136
186
115
201
260
142
222
204
259
257
215
235
185
196
250
177
263
177
202
163
196
238
176
177
162
180
166
248
219
190
143
229
201
175
241
202
173
196
239
252
183
185
246
170
197
228
199
147
214
184
262
256
206
223
153
195
211
228
195
211
185
162
157
195
166
138
208
156
220
266
165
194
204
211
167
201
136
204
218
188
207
265
182
173
179
249
139
156
197
227
192
216
202
225
216
241
170
257
215
248
225
118
210
197
189
193
237
208
211
186
188
199
181
125
209
204
160
199
296
180
173
214
180
187
246
193
182
240
222
186
149
177
260
180
207
233
176
212
201
148
249
193
203
230
155
217
112
185
219
247
219
228
171
195
225
285
148
232
168
220
197
191
206
251
201
193
200
160
179
169
181
209
246
218
254
178
241
182
207
178
208
200
233
159
166
244
179
255
199
214
236
196
216
162
232
242
256
244
230
147
165
232
249
205
177
183
154
214
176
169
170
145
201
166
153
165
216
185
195
131
174
232
230
182
211
183
156
212
214
186
234
183
238
220
224
223
148
193
197
170
204
159
167
175
165
187
157
243
193
200
263
150
272
227
127
213
137
214
190
190
137
170
244
166
203
208
259
169
232
240
192
250
141
246
168
253
231
170
216
142
216
238
223
201
203
137
214
218
168
193
217
195
240
158
196
226
206
189
175
253
207
212
173
161
190
184
262
218
238
232
187
202
201
251
119
202
205
221
171
203
254
253
229
139
211
234
166
243
219
179
196
254
186
179
201
210
233
252
182
238
171
182
220
218
244
180
192
171
213
183
204
182
181
241
225
170
181
159
213
177
240
238
200
161
277
150
216
191
177
216
197
185
160
268
173
147
181
245
171
214
151
192
184
170
232
168
217
180
246
259
227
264
217
154
200
245
246
193
209
206
226
183
195
201
193
192
270
230
244
204
211
194
206
204
162
211
245
193
175
188
167
171
176
236
203
185
226
178
239
197
233
182
225
197
173
265
264
174
150
196
256
163
229
128
191
151
153
182
165
194
185
249
180
217
212
179
115
175
153
151
200
240
133
228
184
191
235
145
199
225
244
214
138
220
259
217
162
214
153
207
228
138
169
247
211
212
162
242
167
182
204
258
249
170
167
165
194
230
221
185
190
234
168
220
218
153
164
254
233
180
198
191
190
215
167
216
207
239
171
225
216
227
134
191
212
211
217
187
213
231
156
273
184
163
251
189
167
214
230
230
142
205
215
193
200
164
184
190
267
165
243
185
177
225
214
201
250
176
192
251
181
204
171
167
205
224
221
219
196
211
191
192
247
195
206
209
132
181
202
181
203
248
228
222
245
171
197
207
231
187
232
180
184
152
205
201
213
206
233
219
233
184
168
215
219
203
224
232
200
181
237
185
173
214
234
194
163
215
152
218
233
205
242
225
153
195
185
187
178
221
193
209
220
153
198
187
190
198
162
196
226
232
170
184
187
239
190
185
169
235
137
201
214
164
175
176
161
260
186
130
154
207
195
211
254
246
123
196
203
239
235
157
243
186
149
129
174
219
168
212
236
220
202
191
175
194
254
252
211
206
176
173
224
219
194
211
200
220
227
151
205
187
198
124
201
152
246
160
156
138
217
217
201
170
247
176
224
177
151
185
224
232
257
205
206
245
258
197
212
233
198
191
223
225
204
185
128
245
231
210
188
165
254
169
162
181
129
254
227
197
196
191
244
233
148
184
245
195
176
165
256
200
225
185
236
237
245
148
200
206
152
207
222
179
212
210
137
186
203
223
266
257
204
200
265
216
183
285
208
212
239
233
208
237
206
194
206
220
183
247
143
209
244
175
171
238
249
198
240
207
217
206
220
222
243
179
146
93
236
191
243
186
174
193
156
177
249
204
131
190
183
222
193
260
116
212
238
181
242
230
194
160
251
164
150
186
220
188
253
216
225
205
233
186
137
153
107
154
226
150
221
176
217
128
257
228
208
241
246
166
225
177
262
196
209
194
167
238
187
271
216
168
237
196
204
195
169
199
270
216
222
182
236
215
237
195
212
200
166
207
165
216
165
181
190
197
195
185
240
230
205
182
220
142
219
190
239
159
114
257
209
210
189
178
206
246
191
192
233
240
175
226
209
91
226
229
249
224
234
135
167
151
196
239
191
188
203
218
230
207
167
206
183
148
225
204
208
251
220
168
202
196
208
230
175
229
227
128
227
240
160
210
192
203
206
175
144
170
270
202
210
220
212
183
212
199
179
119
228
175
233
175
91
216
173
155
203
201
186
131
192
197
187
212
216
144
146
263
148
221
237
166
199
140
180
189
148
226
214
241
243
144
188
161
206
124
150
180
169
140
231
199
213
215
210
152
248
203
169
212
175
165
209
144
240
173
176
262
194
188
199
184
175
259
219
200
175
221
162
258
121
150
232
187
184
192
196
243
193
141
180
225
193
205
172
206
159
240
221
252
191
227
169
208
238
180
176
145
206
164
294
205
211
108
156
194
188
206
226
214
164
172
203
238
207
141
223
246
157
242
136
206
217
224
150
139
203
238
209
161
213
232
239
201
168
179
204
214
255
196
185
213
245
269
229
271
206
232
206
213
199
207
198
273
208
183
205
243
162
182
159
188
119
198
131
230
261
220
230
188
227
219
202
234
163
150
188
221
168
188
259
198
193
276
155
233
245
159
174
222
153
186
216
129
265
207
188
214
203
191
186
175
196
147
178
210
215
208
214
162
116
275
167
188
271
256
209
276
175
198
185
248
193
198
244
194
198
165
231
195
180
251
229
185
172
183
230
199
201
208
185
169
185
187
211
166
277
213
171
228
202
249
184
236
206
159
196
196
217
232
230
221
167
202
224
186
236
152
194
142
195
212
239
227
279
141
240
244
177
177
171
183
179
138
207
218
159
157
202
197
228
249
208
221
117
171
192
196
183
180
203
221
209
269
234
200
178
232
161
120
232
206
231
213
209
168
221
241
203
239
234
200
218
216
177
155
148
193
186
239
174
189
195
208
205
166
215
174
223
208
191
205
184
225
205
222
180
191
268
259
225
212
231
220
191
214
198
247
200
254
171
255
185
256
131
217
134
200
205
237
146
165
180
226
203
224
234
208
174
175
191
200
182
169
170
212
169
219
161
162
145
172
208
207
219
274
247
212
259
209
275
162
217
110
217
184
180
227
193
223
234
208
227
234
208
180
206
238
225
185
85
142
185
197
177
198
238
173
159
171
233
209
184
188
225
237
152
147
198
241
177
177
195
194
221
185
214
226
107
251
207
230
247
181
198
188
157
205
143
200
207
171
224
176
231
248
204
222
165
249
172
195
225
202
173
149
213
132
198
61
273
144
221
156
173
189
260
233
183
229
215
219
225
157
185
175
204
202
184
183
190
198
245
207
186
188
238
180
199
271
210
211
247
215
141
246
146
165
211
196
203
224
195
221
217
250
153
190
182
184
177
187
196
164
239
245
232
235
226
228
224
181
268
207
239
260
185
175
201
190
155
153
225
175
154
143
160
187
236
241
189
230
173
191
254
198
249
205
236
235
151
193
171
132
154
191
256
181
197
193
134
214
229
239
213
196
195
167
256
196
162
214
207
232
217
205
208
158
189
222
248
161
190
193
143
179
202
186
220
184
165
174
259
231
126
245
187
136
189
254
237
156
208
161
233
208
185
195
227
188
196
232
221
232
163
188
168
217
159
233
187
249
227
192
118
203
233
198
183
135
209
199
195
244
202
227
198
253
196
196
206
209
182
203
207
168
221
176
222
239
239
234
222
255
244
195
209
194
212
217
154
187
203
218
201
186
240
192
186
269
217
200
150
229
146
249
168
225
237
216
239
177
168
238
246
229
201
193
159
223
140
234
175
239
158
191
212
240
196
240
139
221
156
181
177
229
191
233
206
236
219
192
142
216
136
203
198
168
192
196
221
235
167
239
188
223
229
245
267
228
234
231
205
167
278
264
252
231
208
253
198
249
189
194
187
190
186
214
201
146
165
217
202
153
232
196
161
223
239
193
219
130
247
224
193
168
203
233
251
290
238
143
198
210
174
233
214
112
194
181
151
150
196
260
241
171
142
193
231
240
166
173
184
236
164
234
207
255
202
188
250
162
233
227
198
204
272
136
208
163
147
252
240
203
253
184
166
172
225
223
198
151
235
223
198
191
189
179
226
226
189
245
233
196
218
208
223
186
184
189
204
223
165
183
194
205
268
214
168
224
151
207
175
231
161
212
239
179
230
256
231
270
190
194
208
175
153
296
210
257
209
172
217
195
222
167
232
230
177
212
169
177
225
235
176
176
196
195
218
204
199
233
171
224
209
267
208
196
214
218
204
204
178
195
165
179
181
176
189
229
224
240
176
246
175
236
168
225
233
180
228
260
192
248
251
183
256
221
117
181
206
245
188
195
230
158
214
194
203
156
188
165
171
242
209
205
222
245
229
186
250
190
176
133
223
185
191
209
181
202
167
209
224
132
185
236
101
130
151
245
220
184
269
158
184
241
272
232
155
237
122
216
151
211
196
174
207
227
165
191
228
160
190
216
185
180
157
214
210
189
211
237
221
185
225
186
240
285
199
196
238
193
160
137
237
222
206
241
185
182
204
167
191
238
239
185
249
244
182
217
192
217
214
180
178
178
147
160
211
201
232
209
238
215
243
211
210
256
243
227
196
169
226
158
178
199
240
213
252
230
117
191
215
229
190
142
251
174
194
168
228
192
215
185
170
206
272
230
188
224
150
263
139
217
201
100
176
139
190
255
139
204
218
185
230
175
222
175
147
210
218
188
168
234
263
250
207
209
190
129
255
213
138
182
199
178
166
198
103
198
203
191
153
178
204
148
173
187
136
211
173
207
172
239
164
187
202
217
197
226
184
241
184
178
198
219
186
234
192
188
196
188
120
208
219
198
206
193
227
144
239
157
174
179
265
191
193
193
244
215
176
234
152
272
177
113
168
208
256
249
229
189
222
163
266
161
132
232
245
165
168
185
200
265
224
158
228
204
246
210
191
207
162
266
193
232
130
203
271
217
192
151
136
194
202
161
207
214
225
166
218
145
188
151
183
179
225
224
254
144
225
228
177
249
175
162
196
163
234
237
173
193
250
159
218
230
162
190
191
230
251
240
207
183
203
137
242
210
224
151
218
187
147
172
235
198
195
239
226
187
266
157
219
222
262
243
183
166
148
192
212
196
165
232
237
199
226
212
113
215
176
244
225
131
183
235
168
207
215
170
206
230
183
228
201
216
218
192
199
181
288
180
208
233
187
222
177
251
229
222
229
187
209
172
220
190
182
161
185
207
203
233
194
203
178
281
210
233
241
142
200
213
144
187
199
167
165
241
197
205
189
195
234
197
199
170
215
212
246
167
104
257
190
206
205
175
185
172
184
212
212
244
218
231
228
181
189
224
160
179
160
208
194
198
170
254
182
250
253
244
231
214
233
209
171
153
198
171
234
134
215
130
183
243
174
224
133
190
198
201
175
205
232
193
134
53
213
200
240
170
231
248
229
186
185
174
257
223
182
183
215
213
196
207
224
218
215
184
191
230
151
172
198
232
187
204
295
209
199
154
178
231
148
148
162
220
183
187
195
218
189
171
226
139
205
225
162
226
215
168
220
180
214
188
215
176
167
168
263
165
143
199
219
213
212
160
182
220
165
213
197
210
210
158
223
194
218
169
222
221
183
215
219
188
268
203
213
226
169
159
178
174
251
174
245
145
174
181
226
112
147
246
197
145
170
111
250
198
174
163
221
235
226
201
197
154
229
211
111
173
177
155
205
158
197
193
249
197
217
110
173
224
201
169
126
245
181
163
257
164
226
123
222
262
147
244
195
179
246
253
234
217
199
167
216
218
160
163
239
294
195
197
200
209
251
166
238
236
204
187
226
189
280
184
192
191
153
162
122
250
215
271
247
185
239
204
216
248
188
248
231
205
141
218
183
222
162
165
189
241
179
229
262
259
224
200
173
204
114
154
193
217
200
225
181
132
161
180
151
166
242
192
279
243
214
180
179
180
207
178
150
229
201
224
246
207
198
235
160
231
229
177
116
135
200
174
260
157
242
204
261
186
214
239
204
214
119
241
170
165
202
176
185
190
162
213
197
141
176
171
264
157
208
203
232
200
158
183
188
202
202
192
211
131
221
186
198
235
213
221
224
209
198
118
181
191
151
212
191
156
136
215
201
208
210
225
191
211
161
151
173
257
169
220
205
227
190
227
157
204
219
143
184
234
104
161
218
242
237
186
185
223
178
187
165
210
211
186
169
201
200
124
167
212
132
202
286
237
236
241
165
160
181
196
173
213
216
157
225
176
204
218
220
184
204
177
215
149
187
174
214
223
223
238
218
160
160
180
139
199
178
195
207
178
229
200
225
242
196
201
219
236
159
150
206
168
191
199
236
164
203
207
177
248
160
219
179
199
264
170
185
205
259
216
181
159
230
253
134
191
181
190
173
204
152
191
226
217
191
204
207
191
290
230
216
175
189
226
210
196
194
247
212
194
261
256
191
222
224
209
202
259
187
156
247
200
219
226
169
175
228
207
190
191
264
191
176
177
186
166
220
205
176
178
198
186
208
209
151
245
253
152
197
257
218
193
198
153
231
203
220
230
175
257
230
201
264
222
179
201
132
125
275
195
194
202
245
271
242
171
163
172
235
167
259
150
238
193
223
140
263
188
251
174
155
222
272
228
159
151
175
188
237
214
204
209
207
213
192
239
217
202
147
158
243
115
195
217
189
211
195
164
204
188
215
197
116
210
155
202
167
217
231
203
164
191
165
231
166
174
155
127
204
145
194
171
186
190
178
180
234
135
217
215
129
172
267
240
223
179
218
167
165
223
137
247
188
165
148
260
138
171
176
194
175
190
163
145
143
206
226
217
207
259
195
229
235
240
187
241
237
187
216
166
264
201
176
248
167
158
229
197
130
246
128
244
230
232
156
202
270
182
237
253
232
240
243
182
200
235
190
179
188
237
187
196
173
224
238
97
176
187
216
252
161
257
227
117
233
196
221
225
178
190
208
195
240
171
171
182
228
305
228
193
257
182
232
150
236
163
228
199
211
254
176
193
213
245
241
198
221
229
195
211
198
239
200
239
208
146
226
173
229
238
136
193
254
201
218
235
156
178
154
233
207
135
253
244
184
210
194
234
180
241
214
169
218
152
147
211
237
131
226
198
164
166
209
154
133
186
153
206
214
211
222
197
169
190
161
220
173
229
218
210
170
227
237
230
211
222
222
200
211
245
233
220
222
206
182
181
240
164
177
205
231
236
237
220
251
224
206
227
197
212
199
201
199
168
226
182
168
138
134
230
201
198
181
171
190
196
222
194
197
210
184
167
169
120
243
189
220
197
167
197
163
161
148
152
204
191
149
224
146
242
185
152
246
159
269
178
140
215
241
144
166
206
246
217
207
168
222
229
267
150
227
156
225
181
195
247
177
248
200
189
202
187
186
177
137
213
252
225
206
239
200
256
210
212
215
193
165
232
208
232
205
172
250
176
181
192
227
169
177
226
229
224
244
193
146
177
267
229
204
150
245
175
205
217
223
223
208
240
201
189
204
197
173
269
191
147
122
197
170
203
145
128
245
148
244
221
184
208
150
209
164
222
217
216
219
222
218
217
178
182
232
217
157
204
202
204
271
202
169
187
189
277
253
180
174
220
257
184
181
158
183
229
200
230
169
209
210
223
171
183
223
190
212
176
215
215
221
248
208
201
167
228
200
280
193
231
229
184
267
180
226
194
176
239
200
218
211
252
179
183
206
173
178
207
168
223
229
203
207
201
212
145
182
185
192
239
172
259
272
268
174
290
230
214
182
204
114
170
158
249
178
217
194
185
193
165
167
251
229
197
195
241
133
167
171
199
177
245
240
157
177
198
171
212
170
221
247
200
234
119
234
222
234
213
179
178
136
188
194
177
194
144
211
181
205
205
196
183
232
151
234
216
197
170
109
222
189
272
184
150
198
192
150
230
149
214
144
227
234
192
175
185
229
238
142
268
220
207
153
204
220
246
174
169
189
229
162
239
152
234
156
230
188
201
164
190
219
202
194
144
191
185
190
244
188
250
246
213
191
148
200
198
193
213
232
113
189
169
256
200
263
231
174
188
144
179
168
248
202
201
211
223
232
215
149
200
199
172
196
179
152
164
192
223
172
218
200
193
184
208
204
127
213
140
214
246
197
216
260
242
218
202
239
174
258
204
149
174
174
203
152
166
206
221
149
193
165
217
160
184
240
202
232
154
107
168
157
207
230
214
201
199
182
175
185
201
238
260
214
247
143
196
221
200
217
190
163
176
253
218
169
217
227
193
257
166
220
197
251
125
127
176
232
210
170
159
192
242
221
196
220
190
216
208
253
182
201
181
224
237
252
214
184
161
232
210
178
170
241
205
224
245
177
173
202
229
258
139
192
239
150
195
189
165
167
175
229
155
198
226
189
182
197
164
191
222
215
172
169
231
214
185
242
168
214
211
169
135
266
212
188
273
169
187
160
101
258
207
216
209
218
250
199
227
256
213
209
221
216
199
237
246
236
224
328
177
185
195
145
189
190
207
125
278
216
167
134
216
178
202
218
236
193
228
219
166
197
189
220
150
201
134
216
186
188
158
202
194
197
186
197
200
138
214
157
226
232
165
209
229
148
151
161
180
238
233
192
211
217
211
189
223
195
215
197
187
201
252
159
217
130
181
213
125
94
247
227
185
260
257
185
230
213
272
273
195
183
205
259
193
186
162
207
151
194
262
147
219
226
204
160
196
166
212
193
173
227
221
135
206
233
166
178
236
185
167
215
232
225
190
137
146
149
157
218
217
195
198
180
228
219
179
217
165
154
157
206
189
212
181
241
129
217
230
180
218
244
182
191
184
151
168
200
220
208
195
274
211
179
200
219
171
147
148
220
224
240
214
198
198
283
218
229
224
191
202
142
185
200
217
181
198
233
239
146
224
208
169
224
164
166
191
278
192
118
190
247
176
225
181
204
136
191
236
235
205
147
179
199
171
171
210
206
223
173
155
179
262
203
281
264
180
175
219
197
177
236
190
197
237
213
214
221
226
235
233
188
243
226
184
150
177
105
234
186
222
242
236
236
152
181
157
195
189
141
228
263
213
215
222
245
274
198
194
203
176
231
253
124
205
153
238
242
240
228
163
245
163
257
214
282
183
233
224
147
184
161
188
195
218
215
237
263
202
235
144
191
182
207
192
196
231
207
210
268
186
184
98
203
198
184
239
202
142
246
161
185
198
265
188
210
219
195
287
226
221
212
212
189
262
231
193
244
182
156
166
146
250
196
238
227
218
184
241
232
171
167
223
226
208
239
176
182
228
138
221
182
217
266
193
225
232
191
117
177
182
217
228
248
249
196
198
191
173
217
156
140
230
247
241
181
200
220
176
204
230
253
159
201
246
185
204
289
179
161
190
194
208
248
155
181
208
233
197
145
91
200
201
148
230
230
212
222
239
255
173
230
198
228
210
154
186
218
250
203
195
194
188
167
215
269
164
219
237
205
213
241
146
194
212
238
245
246
247
223
221
219
177
214
183
207
217
260
156
180
202
189
217
144
137
180
224
200
188
191
227
229
250
173
195
223
194
249
165
224
221
186
196
198
187
144
203
201
184
252
176
188
130
211
249
257
190
219
207
155
171
161
259
226
207
198
175
233
214
249
200
224
246
200
183
220
226
194
214
217
175
228
158
134
212
188
145
234
228
160
202
269
205
187
197
201
214
226
182
237
231
231
188
193
159
245
200
237
209
123
226
230
231
204
234
240
185
180
188
156
212
179
247
187
217
178
123
165
226
223
170
259
124
203
268
214
262
157
246
181
192
238
156
227
226
209
283
225
179
218
222
185
175
277
200
203
249
215
171
198
186
184
213
225
226
211
227
219
258
170
218
239
211
154
150
198
202
224
188
218
190
202
210
251
168
237
180
194
280
184
247
238
175
193
179
219
235
198
227
194
172
216
238
147
216
218
152
253
201
233
181
181
208
170
240
191
266
154
132
216
233
183
207
292
196
157
230
170
248
239
216
237
207
196
190
248
225
156
200
228
188
244
202
251
167
148
176
206
120
231
156
185
187
135
217
197
232
133
203
193
150
174
247
174
149
191
224
213
208
193
184
196
210
186
171
219
221
236
198
162
252
171
205
223
165
246
158
163
205
281
155
127
208
197
223
195
169
176
169
221
138
180
176
241
220
156
214
162
255
199
215
193
176
168
190
200
118
182
202
189
159
225
163
215
229
183
195
117
159
187
189
253
218
224
182
175
236
238
197
193
194
214
183
193
217
218
180
123
247
231
171
240
170
201
154
221
164
209
216
196
169
160
130
255
220
233
195
232
233
254
211
255
159
205
181
229
129
213
203
215
156
230
256
255
228
223
217
247
179
211
205
214
213
182
209
135
194
204
233
215
222
186
223
242
188
156
171
183
193
197
186
225
200
182
208
161
212
189
229
208
153
191
166
141
242
244
223
233
200
193
194
235
163
161
223
177
165
158
147
227
238
144
235
172
204
178
163
178
217
243
219
195
177
229
222
239
218
237
213
195
175
201
208
224
190
117
221
130
207
232
211
202
192
172
152
167
219
145
212
164
163
210
189
226
228
143
166
181
230
243
196
192
195
193
149
167
187
233
187
213
192
280
220
177
229
229
197
166
217
253
209
167
211
121
227
196
233
200
157
253
197
171
210
169
234
150
219
191
162
198
190
229
235
202
166
215
220
195
203
162
252
224
164
208
215
180
250
250
230
217
201
228
182
217
220
225
149
152
229
210
154
210
205
162
227
183
221
287
174
211
208
155
190
87
175
212
172
187
192
197
225
186
118
196
177
152
229
209
236
156
201
224
240
234
226
219
219
250
242
165
215
224
170
155
226
228
144
192
215
177
172
250
213
189
158
229
154
197
240
172
251
194
235
227
211
172
159
215
285
176
154
200
229
269
220
206
214
160
200
215
256
183
241
229
209
229
196
203
194
182
204
202
169
219
240
238
232
165
204
189
211
180
227
186
204
181
187
213
262
191
196
233
169
179
143
275
179
192
199
219
259
227
169
237
185
189
225
184
199
210
202
239
221
185
225
177
149
162
141
233
165
131
118
248
203
133
157
220
193
194
147
204
254
158
133
214
196
236
218
162
239
242
172
213
170
211
263
206
165
210
221
181
181
122
214
244
285
161
150
128
189
128
206
224
215
191
193
211
174
243
182
175
249
247
187
158
186
193
221
142
198
206
147
188
146
203
197
253
186
167
213
222
236
193
173
129
157
211
161
177
211
208
222
141
195
209
157
161
216
169
145
184
182
187
182
148
223
233
223
190
239
234
187
207
194
271
209
211
185
183
215
192
178
121
228
233
207
158
205
146
197
198
228
184
220
244
236
162
144
240
139
208
234
179
267
199
266
224
174
195
241
249
194
214
170
252
153
224
124
216
231
66
215
96
194
261
177
201
243
158
237
138
176
240
203
210
210
205
205
211
207
225
217
187
183
211
174
143
201
224
205
176
157
183
198
141
250
214
241
175
173
196
213
171
215
131
174
269
160
214
176
172
186
226
223
191
200
256
202
200
138
173
205
211
223
196
189
199
200
273
146
221
231
168
217
206
227
212
238
163
213
218
173
252
194
170
220
165
224
178
230
215
168
214
213
202
214
158
129
172
194
225
191
152
171
283
246
166
212
188
199
253
241
219
194
172
226
197
211
206
193
184
215
231
218
182
211
195
179
211
166
186
228
201
238
145
201
237
248
221
188
165
239
218
158
195
226
183
253
204
187
187
218
172
147
171
169
262
181
182
209
229
163
200
180
157
213
255
153
173
211
190
145
218
204
209
234
135
208
188
216
183
198
233
224
209
209
203
201
172
114
242
206
251
206
175
207
269
188
201
211
208
187
165
209
178
239
198
176
184
165
212
259
207
217
254
195
164
189
207
196
148
221
172
225
180
214
186
169
236
238
227
195
204
214
237
208
182
219
234
175
163
153
176
233
157
168
113
247
224
217
189
184
173
186
236
218
195
188
246
189
222
201
234
245
159
219
229
292
211
247
148
194
225
239
246
216
194
163
225
221
219
200
172
230
266
283
240
156
147
212
202
188
210
222
155
218
201
248
228
182
205
217
192
167
171
206
205
199
210
139
225
235
233
200
176
218
165
205
252
204
190
200
225
154
165
219
146
155
231
178
205
183
158
212
233
119
182
253
165
219
197
223
181
196
191
282
276
171
208
131
162
204
172
219
217
225
214
213
247
198
171
232
76
206
184
181
248
224
196
177
271
137
215
253
195
186
210
186
150
230
247
178
177
244
262
264
196
231
266
206
203
216
211
190
212
230
171
236
121
183
250
238
186
204
185
217
225
262
176
199
235
219
219
258
173
217
224
124
242
186
220
193
202
230
220
177
230
181
154
194
149
221
194
199
169
213
216
159
152
165
177
256
165
202
184
205
163
217
187
195
256
129
181
193
237
195
171
193
216
202
174
178
191
235
257
189
212
211
160
210
140
214
234
153
145
194
129
220
174
256
220
198
215
227
156
241
195
260
204
158
171
210
182
143
200
171
177
205
193
200
234
215
216
219
207
211
200
224
230
173
172
178
182
162
195
256
216
200
220
226
203
197
219
174
194
190
162
149
169
211
126
185
121
242
204
170
153
248
260
231
158
210
196
195
168
187
200
223
203
245
167
223
173
141
148
206
226
205
195
182
232
199
193
201
178
167
269
192
256
185
202
238
229
159
274
169
223
172
168
170
201
205
197
158
142
213
150
200
220
216
207
266
266
222
181
161
194
226
164
169
171
194
106
191
201
159
161
217
179
183
212
236
223
259
218
143
166
171
213
194
202
142
191
216
218
199
202
191
127
244
169
199
192
222
177
167
240
205
238
225
191
195
162
173
207
273
238
146
253
170
199
239
230
194
218
253
229
148
187
223
187
231
215
198
183
218
242
202
187
203
212
221
173
196
218
199
150
244
189
233
189
245
217
243
204
233
169
161
242
236
194
200
147
181
229
178
215
148
267
200
172
189
124
177
204
214
239
222
186
241
237
245
198
152
250
147
171
207
211
192
231
193
150
272
180
207
234
204
231
218
213
224
224
139
222
175
213
197
199
242
171
204
193
205
185
217
192
245
193
186
263
229
159
205
192
187
196
145
226
206
212
205
211
195
164
160
247
253
146
140
181
281
194
219
224
201
208
205
169
226
254
145
200
171
172
117
192
235
185
163
182
157
240
185
240
167
213
191
146
272
228
246
188
201
225
205
187
198
188
163
194
197
277
226
199
206
204
214
178
198
187
160
222
197
194
203
238
198
189
206
136
187
237
190
168
186
214
142
129
178
278
189
216
197
185
263
166
216
224
164
189
192
221
180
294
184
183
205
152
224
135
249
206
232
194
184
180
218
309
209
182
193
262
213
181
208
165
223
207
243
258
200
165
275
213
171
210
225
172
193
276
215
198
245
207
227
275
209
240
227
182
218
158
206
179
199
177
156
157
216
152
210
206
206
184
257
218
167
100
156
205
241
186
174
217
178
196
190
189
171
197
250
277
250
205
230
193
170
225
231
169
203
218
160
193
196
251
210
223
182
211
145
140
174
172
142
214
156
184
156
175
248
173
180
187
191
175
171
233
227
164
243
218
214
113
234
171
208
185
266
215
133
239
213
168
161
181
210
134
170
228
220
146
249
233
215
184
196
223
185
247
209
158
222
213
216
193
132
169
177
233
193
237
190
190
189
181
231
186
251
220
247
187
212
198
283
221
174
245
270
246
164
250
217
164
159
203
208
234
186
208
217
168
204
173
146
176
184
165
151
219
257
230
250
209
233
249
232
197
178
189
285
258
194
237
143
201
270
245
219
122
238
247
175
236
211
186
221
205
240
230
174
214
252
202
226
193
232
251
226
174
221
210
163
162
234
248
153
181
234
115
175
182
184
147
210
154
174
239
154
176
153
160
231
217
150
153
210
196
193
153
262
169
214
263
215
245
194
182
191
197
193
231
246
209
208
199
147
142
196
241
245
177
187
227
221
240
193
252
225
220
277
176
256
198
141
213
248
221
206
209
202
209
217
195
183
234
221
163
250
232
255
223
216
168
251
230
147
179
230
217
262
148
200
198
173
164
209
217
187
174
203
218
179
175
222
246
192
197
174
170
235
191
233
213
198
205
134
174
211
198
215
215
204
188
184
161
130
221
244
209
186
209
247
222
186
200
192
200
160
270
147
214
156
214
192
235
223
174
213
154
151
167
127
194
207
244
229
215
196
214
134
250
265
222
159
153
131
167
179
230
265
236
203
224
232
167
219
194
285
169
277
224
209
187
235
220
258
198
224
213
206
281
159
127
228
262
219
226
214
205
180
160
196
154
197
245
149
180
189
150
186
165
229
177
238
211
192
233
208
155
250
179
226
204
221
172
245
213
189
148
168
234
183
151
141
151
228
253
260
225
190
213
218
203
197
184
195
180
177
232
217
245
237
180
170
185
214
226
218
205
227
203
198
206
211
153
209
173
167
172
236
167
203
259
197
183
191
259
201
188
230
157
165
176
202
204
219
241
225
216
222
158
224
202
189
212
207
139
195
272
203
170
215
222
187
201
246
241
264
172
163
202
173
250
172
210
193
190
205
191
215
179
155
211
210
160
135
250
197
262
215
242
151
130
239
216
151
226
240
208
191
231
201
178
227
204
205
220
208
217
182
230
189
219
192
139
182
217
117
194
249
185
225
171
125
218
162
152
138
193
170
169
194
212
189
164
165
135
199
196
152
210
189
122
119
166
158
180
230
209
177
233
250
194
237
185
228
114
217
199
131
237
194
228
232
200
162
226
135
179
203
239
152
151
160
206
179
251
161
253
179
226
94
194
214
215
234
216
197
154
205
194
172
173
144
208
257
162
123
181
183
198
153
161
204
262
141
192
140
208
214
236
137
189
199
154
201
203
184
226
217
180
240
213
242
196
208
207
214
222
276
202
211
152
260
188
234
267
212
253
270
217
175
211
217
189
172
199
174
157
205
136
191
221
177
147
199
164
286
197
205
181
166
210
154
105
154
173
181
168
181
170
151
195
215
239
219
141
217
184
231
182
206
183
198
202
257
227
221
212
210
210
159
179
233
232
149
189
163
189
165
219
225
184
218
196
189
253
239
169
90
125
224
190
159
173
170
166
195
205
163
117
173
202
169
127
210
195
151
190
147
249
213
246
217
220
214
209
226
226
182
164
160
175
237
167
261
215
227
170
234
219
145
173
200
248
202
176
173
192
160
223
127
228
233
186
181
178
241
223
183
193
201
178
211
178
170
192
240
133
168
215
216
251
253
177
192
234
144
203
144
212
226
205
189
138
191
252
188
219
224
217
218
205
132
143
145
235
162
187
193
206
212
211
203
156
179
172
214
210
223
158
250
185
291
202
180
197
178
253
219
200
207
204
192
221
147
227
218
219
219
207
148
264
212
261
238
187
226
182
214
202
216
148
251
188
276
245
182
180
230
230
237
197
197
171
229
220
159
235
189
126
176
269
218
226
193
207
182
150
222
215
144
175
229
220
232
206
219
182
198
222
205
202
168
152
147
217
184
262
181
206
163
144
193
252
170
169
239
224
171
199
211
225
119
203
225
195
255
191
249
215
146
144
183
151
202
210
256
159
221
185
199
264
215
116
150
258
197
173
141
178
242
211
202
185
196
219
230
176
137
174
256
170
188
217
206
208
178
198
211
213
203
159
165
189
152
188
211
225
169
187
185
199
194
243
196
217
171
184
223
209
158
182
243
209
142
252
181
186
186
217
190
204
191
207
178
148
240
255
204
220
206
209
217
126
161
182
204
155
132
222
224
187
166
263
239
146
219
185
202
204
200
140
119
190
236
181
197
215
184
221
229
194
145
216
195
178
223
165
239
144
214
224
215
171
179
212
186
197
235
152
226
223
108
171
184
238
106
196
212
218
141
200
199
210
173
156
215
174
204
201
161
163
230
166
182
171
218
182
210
198
186
192
231
126
175
189
248
240
261
175
209
215
200
210
211
177
203
209
172
205
228
264
198
246
249
108
241
195
214
203
233
175
237
174
226
171
226
188
169
199
179
201
184
232
204
178
250
224
271
233
193
182
230
185
223
173
191
200
211
239
222
156
196
192
243
187
200
196
185
213
176
171
157
212
197
169
226
183
198
242
181
184
234
142
214
212
176
213
214
143
224
211
173
261
247
143
160
187
152
262
174
183
205
142
161
181
175
183
221
197
151
254
166
253
227
191
206
263
189
197
177
242
243
137
252
243
205
206
206
167
136
183
251
149
163
270
181
153
176
171
195
221
255
187
183
141
215
207
199
233
162
185
206
202
213
182
206
190
224
156
168
234
167
217
267
258
219
152
212
195
216
181
178
249
162
207
217
217
180
197
159
219
221
186
222
192
188
182
190
236
234
238
173
200
206
228
232
238
241
258
231
165
240
195
151
165
250
230
206
210
248
203
233
235
214
214
234
211
153
111
182
193
272
204
184
223
217
246
229
172
143
167
174
268
153
226
173
236
225
247
123
232
171
239
168
269
204
271
211
227
193
219
196
236
200
206
203
206
182
145
219
227
181
200
257
176
189
178
276
219
201
193
155
164
128
251
183
164
262
211
147
249
169
206
200
196
222
204
146
208
170
236
250
213
181
218
182
252
253
182
198
217
221
165
293
182
186
207
176
196
204
175
246
250
234
197
233
263
225
211
272
170
161
220
189
224
155
154
256
186
199
185
212
244
193
204
198
174
213
195
205
209
215
217
256
189
207
206
222
203
186
208
220
233
213
221
193
138
197
173
201
210
205
203
147
198
260
161
222
171
198
197
135
176
180
195
191
177
201
208
179
163
218
132
187
243
223
202
215
197
193
214
168
226
263
206
199
202
237
179
212
178
219
234
200
172
214
173
216
184
210
167
180
205
191
128
226
154
189
169
215
202
188
173
188
156
169
228
158
223
143
232
211
164
128
227
149
203
156
206
127
204
232
193
172
97
165
248
188
223
222
198
188
210
188
145
165
233
92
221
192
262
205
176
222
230
171
246
219
206
202
245
200
198
265
187
223
210
218
198
181
222
251
243
225
170
266
214
184
207
206
204
206
177
141
187
248
146
184
185
181
223
240
242
223
127
203
225
184
230
173
185
271
203
247
259
258
131
258
238
147
125
213
173
154
235
244
198
207
169
192
151
212
208
168
214
243
192
160
155
225
93
217
212
207
233
238
183
164
148
127
234
189
189
225
190
186
169
152
197
205
213
198
212
175
196
195
232
181
176
161
167
261
96
270
155
143
194
239
203
192
228
277
185
185
151
208
237
241
208
234
162
171
137
153
237
241
171
176
214
160
213
156
239
250
218
203
213
213
197
168
231
196
180
233
214
170
213
189
221
182
239
278
141
176
172
191
196
215
170
217
184
238
210
222
213
259
150
192
221
163
129
245
210
150
195
250
191
180
229
268
199
183
228
169
179
226
210
213
200
203
280
192
211
225
204
204
226
223
223
219
210
207
227
197
170
147
196
211
177
260
183
205
226
226
191
194
231
205
182
185
221
185
213
199
258
232
161
228
149
195
189
228
176
184
205
197
131
197
188
217
204
124
195
253
246
210
217
159
202
185
152
234
224
212
181
229
226
261
179
222
230
209
183
185
204
275
237
206
238
165
180
212
168
242
204
191
213
169
235
197
204
186
175
230
147
181
153
164
181
285
208
182
139
229
168
154
236
207
244
152
202
203
208
220
244
207
185
150
201
190
163
185
177
186
148
218
152
192
206
181
195
114
153
171
243
209
154
232
178
238
140
132
207
178
225
193
152
124
170
168
209
193
161
238
179
244
198
175
208
175
191
244
225
185
212
179
202
157
186
126
216
239
202
169
252
178
201
246
212
195
197
107
153
146
244
204
164
159
206
222
181
242
230
213
212
196
156
242
220
280
107
258
161
220
235
203
164
158
214
245
251
228
221
229
243
185
268
243
194
213
174
195
202
218
231
201
169
163
211
185
169
217
264
218
164
203
200
219
178
191
211
217
170
218
167
266
131
185
221
216
194
255
226
195
172
205
239
215
171
154
189
257
231
214
181
196
266
254
196
217
198
240
159
252
184
228
243
229
210
266
163
165
206
255
214
221
237
211
263
266
165
256
159
229
183
210
170
219
178
154
176
203
221
234
217
203
182
166
240
175
233
267
211
265
230
230
161
211
193
248
158
216
162
186
196
212
161
235
241
257
200
188
226
251
152
241
227
195
244
242
118
239
200
209
250
162
171
164
229
171
179
254
286
232
146
208
196
191
184
140
276
231
137
210
205
181
219
247
238
208
128
165
214
237
214
173
234
223
186
179
207
152
226
146
231
131
279
215
241
141
133
139
136
187
218
186
206
154
149
274
131
192
216
210
157
166
200
176
178
126
203
191
227
183
141
179
176
245
111
198
144
187
239
226
211
248
115
180
210
136
236
257
225
163
140
157
199
147
218
245
149
260
209
222
197
247
297
256
223
192
172
174
153
184
198
228
158
179
154
182
265
215
249
142
163
195
235
226
167
147
184
225
187
227
146
132
195
179
223
230
199
173
185
190
169
172
194
198
182
257
180
190
231
188
209
215
246
206
182
160
181
254
250
187
184
252
194
174
206
221
194
216
180
188
224
197
195
209
218
152
163
224
193
150
160
232
230
120
160
217
189
213
163
134
177
180
257
162
248
134
222
255
232
171
238
191
270
189
221
217
225
202
195
159
214
234
161
201
224
194
198
145
185
199
240
158
235
172
188
228
149
176
193
220
170
224
167
205
186
237
220
234
243
184
220
214
220
177
266
154
127
236
143
234
269
191
237
182
168
175
157
247
163
250
228
204
227
163
164
205
165
206
134
212
224
175
266
217
223
259
199
195
204
222
255
161
199
177
172
164
187
251
155
235
166
125
232
210
192
190
235
170
196
207
189
236
123
234
205
164
182
199
214
218
228
217
213
210
183
192
205
233
233
132
223
238
198
190
175
211
223
267
152
229
254
202
220
171
144
199
186
165
147
226
216
222
224
197
127
207
218
246
196
201
192
222
227
180
206
173
250
183
158
192
252
181
154
200
213
297
156
184
183
266
199
215
186
206
226
177
160
172
158
125
239
139
198
246
268
177
196
213
176
213
235
210
203
153
133
164
210
129
199
206
164
193
205
199
231
206
194
128
175
247
182
213
203
212
235
200
157
211
268
157
241
228
203
161
227
158
179
189
188
219
195
210
187
268
207
203
180
243
145
222
146
213
194
167
197
173
193
205
165
245
254
184
207
243
188
175
217
178
223
182
184
215
150
203
131
214
171
170
234
221
265
151
253
173
163
199
141
242
220
190
263
239
182
209
257
177
248
215
219
189
167
199
131
252
218
209
242
196
189
235
224
221
167
232
211
227
228
148
197
201
122
236
230
274
188
242
209
199
198
205
189
98
221
179
211
214
248
220
170
226
178
197
193
218
271
207
226
220
202
231
204
159
199
211
275
188
138
221
185
206
166
212
203
212
219
222
223
218
264
198
200
175
238
189
264
179
208
225
175
199
233
202
200
151
219
203
217
160
180
228
207
243
163
197
211
222
217
197
221
218
204
170
194
252
208
190
194
217
216
227
169
227
196
173
175
171
234
174
254
170
220
227
169
200
196
186
103
234
204
201
219
237
158
181
175
199
235
213
212
119
179
210
191
196
172
159
240
229
209
167
247
209
177
210
125
116
164
184
192
212
231
283
196
215
227
145
205
229
208
228
209
229
171
269
174
241
220
125
201
148
177
207
239
187
222
189
236
198
218
215
211
196
214
198
194
180
208
204
178
192
218
206
190
247
138
168
201
226
104
239
242
212
154
201
245
185
225
180
193
218
137
241
173
198
193
200
195
196
214
179
171
183
162
250
161
133
168
216
235
205
205
240
188
173
264
139
184
217
225
171
214
207
205
183
134
199
173
190
182
164
137
160
244
225
171
180
217
165
105
197
178
190
193
168
179
222
183
183
265
193
171
207
169
225
192
207
191
170
198
214
194
198
191
240
195
177
204
161
221
152
235
235
196
227
147
258
185
173
200
167
220
138
209
207
179
194
249
231
227
203
192
244
166
168
161
232
209
173
160
220
232
190
182
197
187
190
186
212
122
198
229
144
211
237
180
273
217
206
141
199
180
183
135
187
175
176
145
184
199
130
219
229
245
209
185
209
217
215
215
189
166
169
168
196
256
217
195
209
231
258
199
227
229
229
188
232
142
240
192
249
178
201
253
191
195
167
187
228
166
185
208
182
154
218
249
159
250
203
189
193
194
156
195
169
132
174
182
110
189
201
217
154
179
177
147
166
230
159
222
189
197
229
211
225
225
215
209
246
158
249
161
262
230
172
176
164
185
252
211
125
173
182
232
208
191
230
207
139
223
215
184
195
263
219
252
172
297
197
152
156
112
207
212
135
220
187
145
154
193
163
235
223
197
241
210
178
230
270
219
155
266
231
160
186
164
274
139
249
147
171
177
219
182
221
197
227
133
174
184
216
151
162
237
176
226
193
210
221
250
254
221
167
141
152
171
246
229
202
262
187
192
218
239
176
172
203
196
159
239
183
218
189
192
187
200
189
197
208
165
185
218
279
201
121
188
194
158
189
190
238
149
203
203
164
196
192
176
201
244
174
220
197
214
150
261
210
205
249
258
193
196
202
165
222
153
266
276
213
186
200
120
247
199
176
186
180
179
178
220
230
172
173
192
166
188
197
215
172
163
250
191
252
169
210
198
143
184
232
190
253
168
163
217
129
179
189
210
231
231
203
184
230
182
194
205
214
167
242
190
129
165
162
220
186
187
190
184
197
201
214
229
153
169
278
211
217
221
183
249
178
122
174
188
230
163
233
151
179
191
212
159
244
222
191
202
197
231
230
211
238
245
206
157
173
217
205
243
186
267
186
187
291
185
155
171
213
169
203
134
202
160
161
209
201
218
221
237
209
155
240
217
147
247
184
220
222
210
228
219
176
221
222
162
184
216
149
241
233
183
184
213
172
197
182
259
215
126
225
204
203
193
247
226
216
97
247
198
201
209
190
201
234
230
206
217
208
157
179
244
237
138
152
213
166
195
179
173
203
188
181
273
207
203
251
171
163
166
169
114
134
234
183
223
159
180
232
171
232
237
165
175
218
215
195
213
201
172
162
212
209
227
199
205
151
159
200
272
229
190
220
204
184
217
200
127
184
205
220
186
185
224
194
195
173
239
105
142
201
248
226
228
187
251
124
174
171
229
239
193
206
132
184
251
157
230
235
189
236
206
241
211
221
133
155
206
234
126
217
167
248
205
222
176
187
223
253
162
238
213
223
201
235
217
165
257
174
170
187
193
159
166
172
198
227
253
160
188
193
271
214
196
142
194
237
215
201
181
271
267
197
140
214
185
249
207
219
226
201
180
211
156
181
256
220
156
209
249
213
230
212
172
192
183
206
188
155
184
198
231
176
240
205
196
221
236
99
150
179
209
250
210
210
206
216
193
190
216
215
191
182
171
184
143
194
176
152
209
215
132
197
211
245
212
186
177
169
170
238
258
245
205
187
236
207
205
197
202
209
220
159
219
228
136
221
223
234
149
220
196
162
239
169
172
204
195
187
160
231
169
220
119
166
187
203
135
145
179
190
178
204
216
216
133
200
161
219
204
194
139
263
132
137
198
233
188
239
220
213
201
244
178
227
193
176
181
169
170
232
164
230
217
213
201
189
167
270
256
206
170
194
208
197
162
210
202
184
236
238
180
161
196
195
131
133
194
237
153
221
179
233
194
229
241
175
195
121
149
219
235
104
146
171
76
156
155
202
135
186
175
208
257
218
239
191
170
182
218
169
184
183
223
206
188
246
188
177
217
218
223
216
171
181
178
227
232
176
177
225
121
202
241
199
206
227
245
208
150
144
161
182
203
230
208
279
222
222
227
225
181
207
148
186
149
188
199
211
220
183
255
221
128
176
198
177
206
208
186
155
202
157
231
196
201
164
154
171
184
227
234
212
175
219
232
184
216
218
243
203
236
263
216
197
157
195
248
121
230
216
155
172
125
207
225
191
219
177
169
198
171
177
228
158
219
169
171
196
210
175
221
147
226
197
138
230
256
185
169
137
265
176
224
141
208
169
239
184
129
136
179
161
122
156
174
191
178
216
193
190
197
175
128
228
207
225
215
211
197
230
238
164
203
216
243
186
202
259
240
223
231
216
160
154
188
186
195
263
208
164
249
213
186
185
198
154
200
191
203
204
223
175
258
202
217
207
181
216
151
228
202
156
218
195
232
243
164
208
212
245
161
207
209
233
174
190
239
216
175
252
229
165
154
190
223
212
169
159
230
198
194
203
155
201
158
188
192
228
251
127
176
211
207
178
201
242
152
212
168
157
196
176
181
156
141
165
207
238
181
156
178
146
123
204
160
272
244
247
243
199
192
142
242
184
191
136
196
190
175
241
151
241
230
229
190
167
225
221
135
166
186
203
226
187
171
291
209
250
234
228
210
205
199
218
261
227
185
216
199
127
213
182
186
250
255
228
197
268
224
162
119
211
166
203
237
209
251
157
262
189
209
248
195
155
169
209
207
202
192
203
238
175
199
192
233
205
223
222
185
197
190
160
246
163
205
194
143
174
215
186
230
229
219
238
206
239
220
226
222
205
175
236
263
209
236
169
248
175
179
160
231
178
194
184
189
208
117
171
276
159
105
238
128
258
197
197
184
146
187
162
131
196
209
253
129
209
176
179
189
192
207
120
224
257
221
198
210
211
260
227
128
178
214
178
161
206
199
195
191
214
170
189
177
192
247
218
239
274
213
193
188
136
205
203
168
170
195
205
150
173
170
181
192
266
200
182
225
227
211
207
139
216
204
266
242
163
229
147
128
181
137
179
131
227
210
145
244
228
182
238
186
215
244
197
194
200
231
156
160
120
188
220
237
199
180
179
218
165
182
200
220
215
188
194
198
167
133
102
165
198
244
216
214
204
279
221
175
210
231
174
167
262
129
141
201
200
214
191
155
208
144
182
212
236
139
245
193
239
222
190
224
191
243
244
207
165
249
196
233
253
192
230
220
195
175
177
229
173
208
194
179
208
204
224
206
289
176
136
162
228
173
212
125
163
176
182
140
180
202
176
201
243
261
211
204
231
214
176
186
240
264
246
161
164
156
209
129
189
240
106
185
201
196
188
191
236
266
208
198
216
263
178
212
184
151
206
119
215
125
197
224
197
210
192
246
227
205
232
191
205
246
230
188
204
247
210
224
235
156
196
231
256
227
268
245
145
231
192
231
175
177
167
222
200
259
180
247
142
228
173
205
165
239
131
245
198
184
252
168
215
242
188
163
151
162
203
215
215
238
184
229
160
185
216
230
169
182
204
209
230
196
139
220
131
226
218
245
226
222
227
247
214
212
242
209
244
165
190
206
241
266
188
205
258
164
248
192
156
169
201
235
180
210
165
193
163
166
213
148
210
198
173
218
208
176
198
252
171
184
157
159
182
263
217
205
251
191
224
221
162
249
143
222
249
164
230
242
221
216
224
258
221
184
241
212
161
258
134
194
211
157
211
190
215
190
250
165
223
263
206
205
218
220
214
241
194
227
215
188
146
170
186
245
210
163
203
184
173
110
249
262
234
185
219
150
181
188
210
223
199
180
235
178
250
129
157
217
219
180
252
151
236
187
204
265
259
177
189
235
226
197
171
182
168
185
218
222
213
131
171
183
182
177
219
220
127
218
228
213
242
224
230
240
177
178
191
204
140
216
218
164
232
173
253
240
211
198
264
212
194
258
185
205
220
165
225
202
215
199
220
247
213
158
220
234
133
159
208
155
180
213
203
200
257
219
224
138
211
227
215
238
167
224
209
194
289
244
189
166
201
221
233
199
246
186
211
217
277
225
187
173
206
188
208
200
136
187
231
265
220
161
245
228
232
168
166
73
169
142
227
203
198
144
226
171
210
216
178
240
152
225
189
209
208
225
231
163
137
206
205
206
162
208
180
186
221
141
107
219
222
192
229
157
269
263
233
269
215
146
230
198
135
233
232
149
202
157
167
218
174
207
217
203
202
165
233
236
228
188
249
217
207
196
174
188
169
155
224
162
185
120
231
218
228
275
150
182
230
230
221
177
240
211
205
172
152
265
222
222
180
291
172
186
166
237
187
165
154
243
218
183
240
198
199
266
206
194
196
188
178
206
221
213
192
153
191
199
240
151
215
186
205
251
202
262
129
185
179
227
196
237
152
237
233
151
121
242
213
166
254
213
260
247
173
216
168
147
195
235
240
235
193
187
244
232
237
158
210
180
118
242
244
279
219
229
210
255
184
194
160
140
201
245
178
243
218
214
211
188
192
189
209
183
167
216
217
206
229
239
183
209
203
218
208
243
246
275
236
233
202
201
208
227
209
125
173
186
207
185
288
231
120
245
169
167
227
198
228
169
88
200
263
199
246
216
139
190
290
160
164
210
211
237
209
224
234
182
222
185
156
217
212
202
228
253
264
189
157
255
166
214
206
177
188
217
173
173
228
169
162
227
211
181
225
171
245
207
234
191
167
225
225
196
217
258
227
204
196
226
176
226
250
260
236
228
188
225
190
199
263
172
150
212
182
234
213
227
179
207
196
183
234
193
188
193
244
141
200
170
264
232
233
159
258
254
215
181
243
212
229
192
237
175
166
226
250
217
165
180
292
224
273
198
211
192
170
185
212
243
250
215
192
231
232
254
169
222
208
224
198
143
182
182
189
277
192
206
201
176
172
211
211
178
175
158
170
182
241
177
200
235
192
194
235
223
200
241
223
272
260
206
207
148
199
185
174
185
178
249
243
150
210
243
225
196
274
191
239
182
158
185
190
167
140
213
192
161
190
225
155
228
259
231
151
142
188
165
167
238
197
164
191
184
242
150
210
193
198
236
187
216
181
204
258
182
213
178
247
225
220
205
191
227
178
243
138
245
187
268
172
219
186
241
243
194
275
175
173
163
230
223
132
211
217
251
174
255
229
207
214
221
246
232
230
223
192
90
246
238
218
234
255
222
214
131
226
184
193
150
175
242
179
239
180
216
178
200
196
133
179
237
198
238
196
203
219
233
178
227
176
166
219
233
179
232
216
196
228
244
220
186
172
208
181
204
172
202
221
195
172
213
251
141
243
267
229
160
192
187
248
184
160
219
161
169
221
152
166
193
164
110
207
193
252
175
206
232
188
190
208
155
170
211
190
175
158
229
195
192
217
194
188
149
214
168
254
207
194
178
255
231
226
207
241
161
219
204
177
165
160
242
217
196
270
240
251
191
204
224
181
139
205
223
152
140
195
216
179
209
223
177
167
164
255
198
170
173
241
226
192
225
187
177
190
137
233
210
231
242
170
203
212
172
203
196
165
200
189
129
157
207
157
233
168
190
212
223
161
224
189
204
151
181
158
264
212
200
176
185
179
305
223
178
189
147
187
240
258
177
241
239
157
227
175
163
185
213
206
212
237
202
188
206
171
227
182
232
153
185
131
186
201
197
252
196
235
224
200
220
175
160
194
215
188
242
162
203
152
224
233
197
149
231
208
178
216
216
180
204
179
274
154
248
202
207
189
225
241
240
220
185
155
157
269
216
226
197
121
188
218
154
256
233
199
184
167
213
262
141
176
203
259
200
206
196
161
210
169
217
209
205
187
217
250
210
232
192
213
189
186
230
146
218
141
229
244
191
233
172
200
233
223
208
186
220
208
174
186
224
201
208
239
227
196
151
213
210
78
176
205
211
205
141
224
216
180
189
173
186
183
189
250
196
246
198
240
221
212
231
226
180
178
175
238
205
146
194
213
156
169
151
238
213
165
233
198
174
247
234
185
230
193
234
156
202
187
210
247
173
226
239
216
168
170
211
200
144
205
142
222
193
200
208
214
245
219
209
191
165
230
211
229
151
211
257
277
135
235
107
195
254
164
208
175
178
229
186
154
220
294
248
219
211
206
107
223
162
227
161
215
253
183
201
184
197
209
221
200
183
220
180
224
217
133
204
298
236
169
196
207
217
211
186
183
246
194
212
257
226
183
237
183
167
141
187
207
175
171
207
272
203
196
155
201
210
222
131
168
220
193
205
227
211
218
198
170
176
196
227
206
145
176
170
176
152
246
187
169
143
185
215
221
146
201
227
221
212
168
162
219
201
270
232
159
205
118
125
199
140
185
157
94
155
213
205
199
224
269
236
189
204
232
241
227
223
165
238
238
177
141
189
162
241
168
167
182
157
208
190
201
197
173
146
198
197
193
163
201
193
246
194
269
204
189
214
232
135
224
227
216
183
263
110
241
250
220
151
190
212
267
251
205
197
172
181
230
186
238
188
169
228
200
212
104
200
195
202
193
187
234
187
246
208
187
217
225
264
207
164
208
164
195
181
155
179
230
210
219
176
251
204
147
200
233
253
191
180
265
180
186
239
173
178
164
226
138
196
169
218
162
187
216
218
204
186
218
225
200
222
139
174
211
226
226
154
258
186
171
182
215
204
211
201
199
234
214
131
159
214
196
196
236
234
181
135
156
188
201
166
196
189
183
206
205
201
204
186
210
187
147
162
228
193
180
164
229
153
148
204
143
241
229
264
219
218
167
237
146
154
179
234
152
205
173
205
158
205
245
233
213
240
234
202
212
214
237
169
263
207
213
132
140
207
208
265
235
191
263
193
218
200
254
219
212
135
220
164
178
230
229
225
165
220
225
206
178
216
217
237
212
216
195
185
196
190
205
171
225
128
242
137
170
185
239
208
232
147
227
206
229
228
207
172
183
165
188
209
206
175
219
172
170
193
176
195
186
186
183
251
229
186
152
248
207
252
169
213
267
276
237
167
188
213
247
165
233
198
214
233
159
165
281
132
188
177
190
160
221
191
202
165
211
186
185
150
212
134
188
195
147
220
241
211
190
175
229
196
217
180
220
169
238
247
209
218
216
227
205
219
199
195
184
211
108
156
206
217
169
151
200
177
257
189
184
140
152
207
145
183
177
180
132
194
126
218
234
190
170
170
191
203
238
200
224
245
230
158
176
152
202
158
224
138
214
231
211
175
232
214
189
230
171
222
151
220
284
200
192
207
202
178
198
200
196
193
210
211
235
208
159
235
172
222
184
258
203
211
216
220
235
212
160
180
202
198
219
174
198
215
241
216
222
253
207
208
148
223
262
153
182
140
173
165
212
274
137
226
200
173
197
178
223
231
205
213
184
211
205
200
229
214
184
182
163
201
200
240
194
235
215
174
138
151
134
174
199
159
220
171
170
176
224
221
222
143
182
163
279
226
182
163
107
203
211
195
184
210
195
171
254
203
208
159
163
254
238
200
130
206
202
192
218
218
169
154
174
244
197
199
231
184
151
208
224
171
239
215
228
175
175
208
208
198
195
198
224
142
149
210
181
210
213
189
108
176
259
215
214
216
215
222
148
215
257
229
195
167
212
153
167
178
178
172
157
191
173
248
186
218
280
197
215
208
182
234
216
174
226
226
169
226
194
191
205
181
211
139
154
255
186
227
230
217
230
250
196
177
167
232
193
114
224
182
227
213
216
159
179
153
163
179
220
214
193
221
214
219
188
187
147
169
163
216
225
245
157
238
179
181
203
181
143
169
222
234
212
222
146
245
245
208
169
204
207
157
218
192
162
222
195
227
227
201
135
259
228
194
192
173
191
198
150
148
188
212
228
134
184
211
182
222
207
143
184
193
212
231
234
172
252
182
179
244
226
207
223
233
222
173
190
140
158
209
241
199
220
210
206
200
225
172
181
224
202
217
263
222
185
245
192
150
160
140
182
200
205
220
177
184
195
179
239
162
187
198
195
243
185
193
166
222
220
177
143
222
223
204
206
236
170
240
151
189
235
138
163
163
202
236
154
222
221
252
238
189
182
180
268
168
243
158
143
224
216
180
248
229
225
151
236
215
196
165
176
227
223
182
212
228
208
177
154
198
176
222
170
209
229
212
177
246
231
160
213
194
249
189
226
172
238
136
203
188
158
201
202
200
256
218
231
210
184
172
262
111
186
188
190
200
257
178
123
203
193
177
176
157
182
244
190
207
199
179
156
183
233
199
186
219
229
194
219
201
187
188
221
232
222
191
208
166
179
140
151
207
248
175
148
240
191
215
179
252
229
147
140
199
249
187
148
224
125
143
227
162
220
219
205
180
192
218
153
133
179
245
209
248
277
237
223
231
188
155
238
209
160
221
179
155
212
185
252
221
198
170
190
223
191
165
225
216
157
164
148
181
210
201
226
163
240
221
150
209
188
193
143
181
142
200
207
228
176
171
161
216
199
215
147
164
201
185
214
181
247
133
174
182
157
224
181
214
117
269
201
239
189
218
176
129
212
195
158
174
207
154
225
195
207
145
227
216
262
150
184
252
226
180
171
198
176
203
251
220
131
232
227
245
154
147
213
186
224
272
136
125
191
213
202
175
221
170
171
209
148
292
273
156
180
153
170
178
192
248
206
182
213
199
232
208
169
237
235
229
219
254
200
239
224
136
225
210
231
221
227
239
229
237
249
178
142
182
194
221
175
217
202
180
197
159
192
276
212
212
223
200
234
213
230
217
218
237
223
246
218
161
236
198
173
142
188
179
214
223
186
215
224
205
189
207
198
201
209
234
152
218
208
208
225
192
197
171
229
191
168
248
287
138
216
157
178
256
189
205
206
219
180
155
210
231
254
216
215
191
237
246
202
206
172
177
244
140
210
215
211
203
188
180
154
224
195
164
169
243
182
165
205
254
221
201
171
176
233
224
161
204
200
167
169
165
151
189
237
198
219
206
200
191
236
241
160
216
156
208
190
177
168
260
215
220
204
191
212
179
225
207
173
246
191
182
154
236
127
197
188
233
132
204
239
253
190
251
201
219
180
236
180
244
260
219
187
245
270
189
217
200
135
186
211
222
273
230
183
217
196
176
264
163
157
249
164
255
206
195
203
230
200
115
143
133
136
194
230
167
124
207
208
235
207
182
177
165
210
158
223
207
179
232
140
287
119
168
232
156
202
92
205
205
206
223
195
168
179
210
191
178
243
210
166
191
139
230
156
203
214
203
156
179
183
178
227
179
249
221
187
175
178
178
194
193
183
200
194
236
150
207
175
190
154
251
190
221
177
257
239
168
210
211
177
157
177
271
152
190
121
212
179
215
231
174
180
146
254
179
251
177
198
184
159
156
190
231
196
179
184
224
254
210
129
136
264
205
241
268
180
194
283
211
163
266
178
230
223
253
154
180
198
229
179
212
238
173
231
137
237
212
236
242
193
161
213
195
217
221
204
203
188
292
149
192
186
228
170
145
269
203
236
205
212
191
159
252
186
211
245
140
168
117
209
246
196
186
202
160
257
218
198
186
209
153
204
198
238
216
218
200
129
224
208
208
170
155
235
187
136
200
165
191
138
182
222
218
191
216
228
220
248
176
210
280
189
191
190
204
118
199
180
200
185
201
171
217
203
222
197
192
226
211
249
188
178
162
165
166
243
246
174
157
235
206
216
189
176
205
179
232
229
226
232
235
188
232
264
220
172
284
207
202
170
223
158
158
243
164
226
246
240
197
244
152
272
190
219
189
193
229
258
285
242
235
259
213
201
202
161
222
175
213
178
167
214
245
196
189
249
221
179
181
207
176
239
206
195
205
148
217
219
245
159
169
189
209
174
267
213
137
188
233
224
237
191
276
245
201
195
168
235
170
205
188
130
202
257
197
169
145
200
225
216
213
234
182
162
178
198
204
228
224
198
182
184
191
210
196
167
202
229
236
114
185
215
150
171
220
206
190
182
199
225
218
218
203
227
197
180
238
228
212
161
200
200
248
156
255
214
189
280
265
178
213
183
174
205
246
179
239
137
174
172
193
227
191
151
193
160
207
239
150
131
173
175
188
199
189
225
169
172
154
214
234
202
213
174
189
165
191
223
237
186
167
212
185
188
213
224
218
204
213
228
159
237
184
217
266
139
196
200
203
183
249
140
184
178
195
204
229
231
178
213
210
188
178
202
178
190
121
244
259
212
193
216
251
237
187
169
260
131
165
233
215
164
158
227
201
211
153
257
152
200
235
242
247
203
161
212
189
225
184
192
224
110
194
223
249
196
160
155
188
234
179
251
89
222
109
151
219
184
225
186
181
193
210
221
226
133
91
229
237
204
204
192
162
187
189
218
220
220
211
177
195
201
219
178
226
156
231
226
206
156
220
212
225
176
151
190
213
137
174
141
241
209
230
180
170
214
167
178
210
180
196
168
193
195
198
118
245
227
169
181
221
240
225
218
175
256
158
174
188
231
251
204
174
185
159
201
213
226
209
226
169
245
236
154
121
236
210
223
126
209
184
161
204
172
243
280
194
184
237
185
205
267
165
157
235
205
163
203
284
196
172
153
215
248
163
193
165
181
232
166
257
272
176
186
228
176
211
187
254
186
155
187
223
185
238
302
204
144
193
212
160
216
184
180
202
222
154
177
239
237
196
253
204
164
167
240
155
169
230
210
196
158
242
269
210
208
188
202
218
210
205
253
157
196
201
221
191
193
198
205
238
195
169
159
166
249
215
119
206
194
222
189
167
150
198
189
239
195
162
190
200
161
216
194
177
224
153
232
246
185
211
187
234
195
230
223
199
223
208
265
161
221
181
233
191
144
163
211
224
145
167
185
254
243
246
202
218
200
258
260
170
130
180
239
224
121
125
202
221
227
178
187
223
249
250
211
210
155
182
216
206
146
201
184
217
190
156
147
179
256
274
197
281
247
177
173
186
153
213
174
196
146
216
186
200
192
216
176
213
211
200
242
198
186
190
206
208
166
221
201
197
265
209
192
200
151
197
154
244
141
191
219
197
217
181
191
209
227
221
165
155
183
186
196
197
200
207
171
168
142
151
164
176
216
292
181
231
211
205
251
137
191
145
227
181
208
187
205
155
169
184
178
170
231
241
152
240
257
157
216
245
187
225
151
151
233
231
166
252
132
254
112
191
216
235
185
247
197
235
204
206
189
162
208
223
202
212
235
268
189
210
220
239
189
174
186
200
209
165
236
238
189
187
183
206
160
190
198
162
208
217
194
216
215
230
246
216
166
144
272
186
229
210
194
198
226
189
215
164
136
184
197
178
211
200
223
195
175
125
214
180
207
153
194
204
244
168
271
209
229
234
168
165
179
162
172
218
172
253
190
223
200
191
251
203
194
256
181
185
140
141
184
191
221
211
164
189
155
187
230
204
184
217
219
235
165
250
178
191
192
216
172
173
208
207
193
168
161
211
190
195
240
196
231
203
167
234
224
170
143
221
228
202
266
268
205
245
231
129
167
220
213
154
164
167
242
182
182
152
159
217
222
250
231
247
225
194
159
229
234
212
208
106
181
167
230
195
232
205
227
224
186
191
211
210
178
250
217
206
216
195
187
206
257
196
208
141
169
188
221
233
139
215
168
196
186
194
119
210
147
226
160
182
212
215
152
271
190
167
204
202
182
185
223
192
170
229
157
167
179
174
216
176
135
213
160
188
170
278
181
218
191
156
170
219
137
163
172
236
190
248
224
178
224
211
160
217
227
242
236
180
172
234
169
173
183
210
191
201
197
234
183
211
183
228
191
148
159
196
203
162
162
182
177
200
191
177
182
150
211
192
164
168
206
196
193
234
136
209
168
229
208
191
209
170
178
153
207
188
208
132
222
176
176
188
205
192
241
173
208
227
188
192
168
143
192
285
194
230
168
232
248
214
202
250
193
218
246
227
210
180
235
199
195
169
164
140
197
239
197
199
299
171
256
195
254
142
190
195
250
218
182
175
194
191
124
168
255
164
204
175
120
192
258
219
167
204
200
208
182
251
170
207
253
145
165
186
214
163
143
218
195
245
200
212
167
223
128
173
165
198
217
224
266
199
96
250
191
176
197
162
186
239
235
149
181
203
198
132
193
224
164
178
214
159
273
207
168
207
175
135
184
164
232
206
234
174
180
249
227
219
206
182
204
225
186
205
215
173
193
214
179
137
167
135
169
242
234
211
207
257
194
190
213
167
149
231
193
224
249
237
210
213
178
105
172
194
208
208
178
167
146
153
116
174
144
218
177
195
163
173
170
188
174
148
189
135
223
143
208
172
238
186
236
167
220
202
244
195
184
179
183
274
237
214
210
201
235
200
196
193
217
159
214
186
256
246
159
166
187
236
232
279
229
200
188
175
164
214
190
234
193
218
167
185
178
231
146
222
197
262
256
209
261
230
197
190
225
192
180
147
206
234
211
142
216
200
261
246
224
209
215
154
131
155
164
235
111
150
211
200
248
194
203
186
171
200
235
218
201
200
206
221
130
155
203
163
224
212
250
183
212
198
203
204
128
238
215
230
186
183
176
234
197
163
196
178
210
223
277
273
250
155
231
223
204
208
122
210
217
219
226
215
248
235
192
192
210
194
97
157
173
276
173
216
160
197
216
189
174
240
194
226
194
219
190
232
168
217
132
196
112
200
154
111
181
200
146
237
215
217
217
213
163
221
220
233
212
201
223
196
196
214
207
267
212
221
199
238
220
201
231
239
182
136
163
190
204
166
224
200
230
254
187
219
236
259
192
238
222
210
176
207
193
173
207
163
168
202
193
204
125
184
170
189
234
242
206
155
226
215
217
176
180
238
188
206
249
179
191
162
177
259
272
175
147
216
167
211
156
191
254
238
183
190
178
197
225
182
231
163
253
210
199
170
211
216
193
220
182
245
208
237
254
154
207
203
238
153
137
231
272
169
206
241
277
288
194
208
190
249
162
157
172
138
190
211
236
182
211
195
208
228
231
171
240
194
189
216
257
206
216
180
188
135
224
171
179
177
159
193
173
258
218
220
192
195
162
188
210
189
174
218
228
170
274
209
189
146
202
150
157
224
135
178
199
240
216
155
171
223
163
268
185
218
180
203
180
199
177
212
211
154
226
204
171
206
218
176
173
216
240
244
204
181
202
108
216
186
295
231
202
206
219
197
255
202
197
251
182
184
202
181
176
172
146
157
232
270
166
208
269
176
227
224
242
196
223
229
158
204
147
194
260
210
239
239
234
184
252
202
179
221
191
261
244
222
250
211
250
149
207
194
201
211
262
171
131
158
203
198
218
201
174
128
215
184
215
247
159
152
201
193
192
182
210
170
158
163
138
216
289
206
256
170
209
233
171
202
147
155
218
150
138
232
230
203
211
207
210
258
190
181
179
210
193
153
173
240
202
209
241
182
203
235
202
223
191
183
182
174
182
195
237
195
189
236
211
162
243
206
164
165
239
209
258
214
183
203
193
220
182
159
213
164
184
228
190
217
157
167
218
243
179
177
147
241
219
206
231
179
215
175
232
182
231
183
228
222
223
192
193
172
211
221
222
220
267
214
222
216
182
274
234
217
176
172
238
189
182
154
250
165
196
244
241
156
138
170
212
240
197
210
216
187
174
229
150
259
201
236
250
159
177
220
222
210
225
259
206
240
203
159
241
173
176
186
166
117
226
178
185
183
204
214
174
260
264
226
213
185
221
169
133
202
229
175
221
196
125
149
152
196
248
144
230
187
202
201
180
180
228
260
166
218
224
200
186
212
189
198
181
147
211
247
165
207
184
202
278
223
181
185
260
219
171
172
190
242
196
184
175
198
209
175
177
171
190
231
254
168
217
227
203
139
179
308
186
181
153
216
162
162
203
242
216
226
220
184
195
206
175
221
204
168
192
235
229
198
192
169
217
238
270
176
171
204
209
225
242
261
227
162
179
141
244
195
158
175
143
185
231
146
185
214
216
246
200
256
217
246
189
209
178
171
262
201
238
225
233
187
216
208
219
186
208
202
233
170
143
153
200
193
204
192
234
169
189
233
146
216
196
224
208
248
206
203
211
210
148
196
199
167
199
247
125
196
193
201
245
213
200
244
207
153
192
143
115
243
226
205
207
222
182
181
212
139
172
196
213
193
213
169
210
195
217
201
260
227
190
146
267
200
187
217
180
231
261
220
228
168
211
267
161
206
222
200
207
239
221
254
190
178
210
231
257
210
194
154
211
206
166
214
164
185
215
184
259
227
249
212
158
219
186
158
223
237
241
192
198
203
234
198
211
199
199
182
161
163
218
171
173
245
225
200
199
153
175
221
159
183
184
219
163
215
209
234
160
144
228
212
185
180
193
191
184
194
254
255
249
161
179
139
141
220
190
178
229
187
164
202
214
224
164
299
192
220
188
217
163
149
181
234
229
274
182
154
143
247
178
190
195
237
168
192
167
161
204
223
203
154
188
230
192
232
190
157
190
167
199
204
251
217
173
205
191
246
170
224
234
181
216
180
233
232
164
186
177
252
184
192
159
125
181
224
179
261
255
198
178
233
222
227
251
233
139
212
221
201
201
160
148
164
174
190
199
203
217
169
222
194
184
226
164
174
149
161
157
126
217
130
221
212
147
210
196
275
217
223
216
180
236
239
196
195
218
279
267
256
136
224
224
181
255
187
203
214
159
206
208
198
172
211
248
224
232
169
198
127
143
228
239
134
219
192
217
130
220
210
213
244
187
221
182
166
186
164
194
195
196
189
227
196
195
133
216
165
215
167
176
207
168
237
115
172
188
146
218
246
125
157
211
219
234
186
209
195
249
230
156
260
158
187
189
171
213
211
238
212
226
240
229
230
226
199
266
197
201
223
172
244
235
210
219
230
192
147
209
132
240
222
207
164
231
174
165
172
221
172
202
204
223
164
154
198
195
206
218
195
122
198
230
231
222
198
182
184
210
221
188
214
182
143
169
175
184
249
204
183
179
248
190
172
203
236
197
238
168
207
214
179
265
176
182
232
234
194
148
220
209
177
198
242
223
247
186
236
183
199
172
228
171
208
222
234
224
239
185
202
149
254
223
238
211
219
227
211
226
187
173
195
301
202
194
203
237
137
216
164
202
253
158
203
247
249
206
205
155
215
179
193
216
218
228
182
200
209
186
241
254
232
184
223
175
179
228
164
212
169
207
174
176
217
138
191
174
178
215
171
219
234
172
211
195
142
203
180
156
215
229
155
239
240
240
155
210
169
201
162
179
207
113
244
187
158
226
206
220
195
235
221
208
259
122
193
264
218
234
201
226
162
210
210
174
242
192
156
226
187
226
147
234
191
145
175
223
243
182
181
140
194
218
242
183
250
227
232
240
195
256
212
183
224
154
180
203
177
228
212
179
189
194
241
240
241
212
205
187
163
184
225
251
147
232
206
244
204
212
250
206
257
191
226
182
211
195
178
179
200
226
178
278
166
233
155
164
207
191
214
194
203
207
214
239
194
140
210
167
190
260
248
152
222
176
211
181
205
225
174
242
181
204
204
201
185
204
189
206
212
113
207
140
240
186
222
178
206
186
200
149
217
167
222
145
254
196
195
202
191
233
232
180
201
155
196
199
241
192
253
199
145
229
190
210
169
227
272
140
161
241
201
218
215
164
213
155
195
226
183
161
227
227
194
172
239
219
200
188
202
197
203
211
219
247
193
210
149
187
228
172
277
195
200
215
125
202
200
236
184
240
181
202
192
211
216
202
214
132
158
212
237
186
189
213
246
227
217
198
210
218
143
194
253
197
210
189
245
196
239
208
241
182
189
244
180
184
164
213
166
207
231
169
223
232
185
189
198
207
184
176
172
174
188
194
232
190
229
202
191
218
224
206
229
226
195
178
232
261
206
255
189
170
184
194
237
152
213
217
183
165
234
210
247
221
239
230
192
214
171
236
233
231
157
206
183
196
197
119
222
197
233
222
197
161
150
136
185
146
165
144
183
203
183
218
132
186
195
117
210
217
192
183
233
256
160
214
228
198
210
108
258
229
188
243
205
240
167
178
215
171
276
165
215
177
181
201
243
178
217
228
225
237
222
239
227
204
155
224
225
272
239
169
189
197
179
216
188
182
146
180
197
142
216
188
242
223
215
179
167
260
216
211
197
218
205
181
121
190
219
186
184
248
168
199
171
188
230
220
236
219
232
226
183
187
223
185
150
126
235
233
256
252
150
166
139
216
210
203
178
243
148
194
250
208
198
268
153
205
172
213
227
234
198
175
196
215
171
254
175
262
252
244
230
225
227
198
217
253
173
212
202
190
213
233
161
218
236
226
236
162
214
192
202
154
162
168
263
162
167
214
220
263
161
260
242
162
183
205
227
211
208
202
202
188
273
240
130
180
182
211
211
149
235
233
192
211
221
179
186
191
187
274
225
240
201
145
156
173
176
194
227
215
159
217
203
210
123
113
195
163
256
200
205
183
163
211
191
196
167
206
212
167
175
268
205
196
169
222
215
176
218
197
216
197
191
122
176
237
167
228
180
273
231
215
214
174
185
163
195
244
157
245
222
186
158
190
237
187
205
189
183
187
226
166
182
179
266
200
217
151
232
225
179
172
224
162
212
150
203
260
150
242
221
204
213
208
178
216
243
184
245
201
182
151
138
146
208
231
162
197
196
195
124
122
186
235
181
198
231
236
145
195
156
208
242
196
160
191
204
187
222
224
214
171
183
208
157
244
219
165
161
261
182
112
166
205
240
290
216
195
211
196
174
187
199
208
229
190
178
215
248
212
171
223
148
219
186
189
251
168
191
202
211
239
250
246
199
189
196
173
158
273
171
200
246
169
205
202
205
180
123
125
229
250
238
226
219
190
203
191
250
182
212
189
166
164
219
287
230
189
196
208
214
189
218
164
192
215
198
156
278
235
204
184
218
181
204
237
193
230
230
191
184
209
224
237
181
231
191
210
151
195
216
232
239
247
169
188
146
185
182
191
213
246
179
267
144
255
130
245
153
195
172
176
203
145
228
203
254
231
182
199
197
169
195
173
197
127
250
214
214
277
204
182
215
236
270
152
161
228
223
209
164
241
215
269
132
225
190
169
283
194
154
138
233
156
211
219
223
212
143
193
212
208
170
174
257
253
211
216
235
243
189
253
224
234
186
216
187
168
278
194
234
237
188
186
130
101
205
189
245
209
237
229
189
199
135
182
225
193
213
168
160
169
191
210
194
199
188
200
191
177
191
176
227
192
166
216
170
248
211
186
223
208
188
198
180
208
269
190
157
150
257
173
175
295
186
219
235
173
239
235
194
193
213
230
175
271
195
177
167
184
196
235
225
241
154
158
228
197
202
206
163
150
238
210
218
212
225
217
209
170
220
221
241
224
190
231
185
180
244
220
228
191
114
208
181
231
219
210
216
196
194
230
207
162
226
212
169
203
209
200
143
161
210
121
280
182
196
115
193
158
218
208
160
226
197
195
196
259
247
206
185
221
169
193
246
207
142
184
144
207
216
199
209
192
240
167
209
221
148
176
215
210
256
150
188
143
154
243
184
207
269
190
211
217
169
228
237
259
230
246
235
237
238
189
228
152
226
130
259
159
219
222
237
214
216
202
233
189
228
192
229
240
252
212
167
213
212
180
223
171
226
203
198
113
213
214
204
205
257
225
176
131
229
174
268
216
243
190
208
142
173
197
200
161
168
180
200
180
235
243
266
202
162
186
186
232
253
185
221
240
184
181
221
175
224
198
238
277
171
174
179
181
205
218
165
233
166
206
179
208
259
187
192
241
189
277
224
206
203
204
232
168
212
235
205
181
193
204
256
150
254
179
234
192
173
174
225
198
240
154
177
150
214
160
184
189
219
229
151
200
145
205
271
183
229
220
173
295
257
235
209
181
242
178
197
184
221
228
187
197
223
237
179
149
191
236
222
217
150
226
234
168
204
204
216
208
226
205
211
188
210
137
253
205
192
166
164
197
251
172
186
230
216
142
142
139
211
189
201
258
145
227
138
237
233
194
231
218
207
173
176
216
172
202
160
206
232
277
158
288
223
185
193
200
214
218
156
247
167
143
198
188
257
205
228
278
185
175
217
205
191
218
167
189
188
215
191
150
243
197
193
178
223
208
237
199
182
185
191
145
213
218
223
237
221
119
227
224
172
134
217
172
208
215
247
200
198
213
195
218
194
205
293
188
212
179
243
213
247
196
163
206
136
154
187
185
130
213
198
235
234
215
223
246
211
201
207
208
207
253
219
184
222
201
190
273
184
194
201
214
279
130
213
226
217
196
207
222
180
217
211
258
231
250
201
183
151
221
224
169
185
193
154
216
182
203
203
219
205
221
236
169
170
251
259
191
186
145
187
161
197
176
196
92
235
252
188
204
187
197
156
158
238
165
187
235
119
224
252
249
242
179
189
197
238
159
144
210
193
236
140
198
162
181
192
148
219
190
230
130
261
183
218
225
115
240
173
200
235
203
125
186
186
193
218
183
197
202
181
141
211
226
241
211
204
175
151
260
259
214
251
200
222
203
148
191
110
238
226
158
197
199
213
144
150
259
223
191
263
175
219
194
208
158
208
208
254
210
291
221
250
193
174
178
197
174
120
238
115
180
217
197
187
277
207
194
183
225
236
216
178
189
188
91
197
199
228
182
182
200
148
193
167
208
237
185
176
193
214
211
192
208
216
207
193
192
225
190
263
201
217
241
164
199
199
210
221
207
201
232
223
210
196
223
182
207
155
210
193
246
220
225
184
195
153
220
178
186
221
135
223
183
161
153
187
187
225
227
144
217
230
228
216
207
204
265
224
205
139
238
155
138
128
246
251
154
226
197
155
185
241
220
203
179
211
147
251
213
198
215
283
238
202
208
226
253
187
257
192
160
233
187
181
203
267
208
191
193
206
205
175
212
195
206
234
174
181
136
254
193
196
217
198
253
182
234
199
199
174
199
195
201
211
229
149
230
152
235
241
236
154
211
202
197
200
168
184
239
164
211
270
172
219
200
216
192
211
234
222
221
224
146
126
168
162
252
234
190
161
222
210
210
240
204
187
152
203
219
223
202
254
200
185
197
217
241
173
255
196
189
206
189
213
146
181
212
197
270
198
185
257
212
186
187
229
185
173
171
227
215
115
173
222
216
246
222
245
211
225
232
177
168
193
176
178
232
230
244
205
120
228
185
159
173
235
133
175
202
160
183
185
180
147
138
173
194
168
214
261
210
216
199
246
190
131
148
156
176
174
184
228
178
241
192
166
262
184
258
171
139
231
165
225
225
209
199
175
215
208
211
185
260
190
140
154
192
216
197
231
207
156
213
108
236
180
178
190
219
194
227
217
222
235
180
228
220
197
219
159
195
105
204
236
262
200
170
157
239
180
189
178
236
159
222
227
183
218
173
146
135
210
246
201
144
191
223
159
208
187
201
240
220
157
192
204
160
198
162
198
245
234
245
198
159
169
248
181
232
213
222
172
167
160
250
197
121
233
199
176
243
210
171
191
183
157
163
219
253
240
202
135
258
188
197
163
218
197
189
214
136
187
210
219
235
228
204
133
162
234
212
209
190
227
226
248
157
143
232
200
161
275
174
207
207
165
173
227
174
146
185
188
123
220
230
193
221
159
148
161
223
187
275
230
221
223
185
185
138
218
199
176
240
178
189
151
105
227
165
146
178
218
169
133
232
187
193
237
224
192
238
205
207
188
222
190
198
204
256
149
142
172
224
202
207
158
268
236
202
216
178
292
158
160
158
180
218
205
142
177
239
168
220
159
235
231
176
197
244
215
209
259
151
159
235
205
148
211
240
217
212
203
197
252
191
202
192
203
190
227
165
188
202
243
173
154
210
199
223
174
219
162
181
170
216
189
253
235
142
252
208
157
182
229
200
232
177
241
132
227
235
185
216
211
266
255
207
124
215
175
160
207
243
211
235
150
205
219
197
146
170
148
193
188
220
214
233
158
217
193
183
228
204
212
254
239
226
222
183
220
213
235
247
155
261
178
134
175
248
210
178
189
257
174
171
221
230
261
224
195
158
176
244
203
215
226
160
204
204
201
247
236
193
232
169
172
168
211
226
166
191
230
162
155
207
210
243
152
227
273
220
170
213
185
177
207
242
206
148
219
209
209
179
238
159
219
228
245
199
116
192
178
153
243
269
208
176
196
192
215
176
244
210
219
297
234
207
240
234
169
244
176
174
138
222
171
191
233
239
250
228
209
217
201
225
179
206
225
186
219
184
206
173
205
267
260
241
154
207
167
204
203
189
186
228
195
133
199
257
218
181
172
157
174
151
207
198
171
178
170
224
179
249
243
235
248
196
170
201
210
176
225
264
227
197
130
190
172
177
205
179
282
242
216
253
234
163
240
266
210
173
237
252
200
201
168
179
178
193
223
175
215
189
182
205
192
219
235
162
241
219
264
180
233
184
174
242
201
225
202
226
213
227
191
192
231
191
147
245
138
216
133
172
210
182
216
233
198
188
189
164
210
233
186
291
200
128
156
187
218
222
122
184
126
248
224
277
261
241
210
195
220
213
227
187
156
157
189
231
189
247
295
174
248
246
241
238
177
260
215
225
181
230
221
162
183
199
170
230
165
195
217
159
193
199
239
240
210
182
238
229
184
224
220
240
231
236
197
248
218
160
180
245
159
217
167
179
154
235
226
202
196
229
159
191
186
235
155
157
192
181
172
185
244
236
196
239
190
154
243
190
172
148
120
179
185
197
149
201
240
164
218
221
257
197
170
155
202
162
161
261
163
204
226
192
204
233
226
191
205
284
250
175
225
193
185
213
200
143
163
138
204
250
184
216
170
232
188
234
154
221
195
194
216
248
212
218
142
210
119
166
206
186
254
199
212
247
236
211
199
165
184
192
211
193
219
189
201
186
260
200
178
252
216
190
251
229
194
195
152
260
244
113
209
238
194
200
215
198
206
203
251
223
192
237
233
201
184
233
166
213
164
216
176
159
179
216
221
151
239
144
180
226
140
184
188
205
174
219
240
208
227
266
238
208
225
215
216
154
180
149
211
243
198
250
196
174
220
136
166
186
187
268
206
177
237
205
196
263
179
195
240
255
135
252
167
220
217
244
197
201
202
210
182
189
237
209
211
217
256
180
258
284
174
183
184
205
215
163
189
217
241
212
180
175
250
229
161
223
169
208
202
240
179
214
156
219
185
285
218
243
249
199
203
296
187
131
229
205
154
199
184
200
213
220
181
160
224
206
210
136
220
236
225
227
228
180
149
188
162
163
193
232
241
185
222
214
217
227
218
196
222
80
228
232
148
239
176
189
136
223
235
231
184
170
244
259
190
228
173
181
220
223
154
169
212
204
189
167
212
267
196
200
241
205
212
189
216
186
178
273
150
170
204
242
222
161
195
161
185
196
195
190
241
236
102
190
200
199
241
237
199
228
227
202
214
182
81
208
237
152
176
233
180
181
162
161
195
192
217
231
158
186
241
216
180
275
243
192
140
220
173
291
186
207
203
207
261
158
248
180
152
165
168
207
173
178
256
266
252
229
223
164
150
158
213
255
176
241
236
225
196
165
218
155
230
177
231
152
208
158
163
181
206
208
240
148
243
231
190
97
161
208
142
184
178
219
218
168
235
162
227
172
133
215
180
229
225
218
135
268
151
246
214
237
213
238
199
192
182
177
203
217
244
261
195
219
229
196
231
158
240
192
152
207
179
190
199
190
241
201
199
163
205
213
193
241
211
230
236
246
188
141
202
228
182
164
224
175
188
188
219
190
146
209
239
218
135
252
201
212
208
195
189
215
212
202
153
218
250
181
140
207
177
170
173
190
136
186
171
278
210
163
170
195
181
206
205
146
255
163
216
158
208
186
227
171
198
182
193
217
162
243
150
167
237
191
173
174
120
212
204
136
204
217
232
167
193
217
258
189
249
136
170
236
184
147
205
145
172
151
245
272
214
166
206
245
202
190
206
240
201
111
149
163
185
157
230
249
156
265
184
208
223
181
212
197
220
127
219
160
145
247
241
234
163
191
227
219
192
184
219
163
119
176
214
169
219
151
125
211
233
248
163
189
175
237
236
223
166
244
226
203
224
204
227
184
207
258
233
221
234
198
206
206
207
240
212
200
269
188
179
193
185
205
194
232
170
196
272
203
259
171
239
199
241
213
165
209
267
225
185
213
150
269
197
180
207
193
136
191
219
193
181
171
169
274
129
250
266
251
231
259
197
192
211
225
222
154
220
194
202
161
222
162
262
216
232
209
192
242
261
216
195
181
228
187
219
192
233
222
178
226
214
178
248
198
172
230
136
178
162
195
218
254
227
227
188
204
213
224
174
247
160
188
154
191
230
163
245
240
242
256
203
240
142
202
236
261
165
120
105
192
200
193
221
214
265
206
147
289
214
186
133
186
170
165
146
212
196
225
225
249
221
149
236
193
216
196
242
206
217
130
178
242
236
147
226
173
262
198
144
182
218
270
183
191
191
210
198
199
150
246
199
137
170
251
209
249
165
216
226
189
200
201
214
231
174
127
199
131
143
180
206
161
231
162
220
260
212
216
151
203
227
238
178
142
212
215
199
196
197
205
196
235
162
237
231
196
239
269
213
248
187
207
226
184
204
143
220
156
191
190
247
155
244
184
192
173
200
205
229
197
189
228
175
186
172
226
203
210
223
173
192
249
166
218
180
138
204
181
149
217
225
229
166
201
192
185
224
125
255
202
170
209
242
221
141
236
184
144
254
254
242
235
179
192
241
172
285
150
180
256
266
262
220
221
150
188
140
250
224
165
158
180
256
219
132
212
189
221
200
235
184
249
147
198
150
184
273
191
194
210
180
151
115
200
130
203
160
194
254
116
141
185
152
168
196
171
179
181
228
237
172
143
171
229
180
210
235
174
228
163
171
186
218
185
225
180
249
201
225
219
237
195
162
171
194
146
196
195
248
188
273
199
264
207
139
253
206
247
213
147
243
174
192
186
189
195
206
189
205
193
202
178
232
299
233
197
153
212
220
222
178
166
212
248
166
213
178
200
145
216
145
245
197
164
247
164
230
232
183
188
217
209
203
158
182
214
180
205
205
252
226
202
236
152
236
210
206
152
231
196
169
217
216
124
239
244
196
162
180
160
171
219
211
167
218
215
162
244
203
165
211
172
191
191
151
227
184
148
219
241
241
162
203
181
169
208
186
257
216
222
122
187
168
188
252
194
130
202
212
222
190
263
194
193
173
211
169
234
172
161
148
232
171
159
206
187
217
178
257
114
161
228
210
184
176
244
213
163
236
205
159
254
205
228
228
214
173
206
191
175
261
196
151
189
199
237
172
180
233
133
196
165
157
195
193
162
224
200
152
264
165
202
202
207
202
131
207
153
147
227
282
188
241
173
167
200
237
229
199
199
171
190
217
155
125
143
170
180
180
186
191
208
213
187
181
148
189
231
240
167
242
162
202
175
228
266
235
232
249
154
219
218
190
157
199
198
196
163
180
237
164
186
220
211
112
204
201
240
209
270
150
265
201
213
211
218
261
212
191
155
235
164
206
248
171
213
218
195
168
245
198
194
202
139
152
203
155
172
176
189
209
196
185
218
235
214
170
183
237
171
217
184
203
232
205
205
153
211
157
234
230
211
230
231
209
145
219
135
228
188
195
185
174
243
210
190
241
137
228
206
151
133
237
224
200
202
177
187
217
149
174
165
224
177
146
156
237
165
217
261
191
237
144
192
220
235
222
137
178
142
231
199
232
166
148
170
216
191
220
184
214
206
147
180
239
187
184
229
156
170
181
179
208
241
164
223
192
156
230
193
136
241
226
221
185
189
211
179
186
202
248
166
237
206
194
198
154
274
174
149
178
193
240
220
217
205
174
177
197
146
244
169
209
246
168
222
165
171
218
200
218
178
209
198
202
156
177
107
179
162
258
196
240
205
225
181
214
225
316
203
234
217
146
216
223
158
214
120
188
206
151
242
259
206
183
205
249
222
225
179
180
162
194
229
201
159
209
164
162
220
248
164
271
223
204
191
210
256
230
239
175
209
240
186
206
272
226
215
188
187
128
197
156
155
217
231
218
221
157
219
251
220
157
188
121
243
211
225
183
205
192
122
206
135
187
221
235
185
227
221
207
154
192
194
252
247
262
189
217
220
260
206
273
150
239
154
177
220
158
253
214
186
184
144
185
259
153
211
234
213
223
242
127
205
214
198
180
170
215
145
210
239
244
144
165
237
225
254
231
174
253
243
181
212
149
205
144
226
226
222
248
186
221
171
182
201
233
244
225
260
191
178
185
239
220
195
138
203
188
192
212
171
176
156
209
191
163
113
207
183
248
237
178
151
226
171
108
216
195
194
228
157
124
225
234
226
202
146
196
194
229
189
226
155
203
188
221
158
225
203
219
198
250
191
213
229
236
219
115
179
237
213
82
208
206
182
214
193
210
257
208
116
237
205
167
207
148
210
212
254
217
181
249
237
253
238
209
173
165
67
194
204
192
215
216
302
231
254
231
228
264
183
165
232
168
214
200
231
191
170
209
225
186
206
159
205
193
221
214
165
255
218
154
116
200
214
150
192
263
181
195
168
170
168
237
226
236
218
211
203
144
175
158
177
167
179
185
199
212
190
167
200
209
242
206
247
171
202
195
217
236
215
203
199
171
159
162
119
242
279
205
170
237
157
191
170
194
200
209
183
147
218
185
217
176
276
148
155
245
216
155
282
188
198
160
169
213
164
167
172
232
233
161
231
179
208
208
278
200
139
161
189
186
204
285
257
213
244
174
184
229
204
248
238
154
163
245
190
202
271
170
202
206
167
188
253
203
171
170
182
120
220
204
228
196
228
210
181
194
233
128
199
234
169
189
232
206
185
155
116
211
237
181
145
193
160
216
174
220
179
261
199
223
206
235
193
186
142
190
218
258
218
224
224
213
151
221
204
194
181
218
254
248
190
247
176
224
197
222
218
210
205
223
157
255
181
256
229
217
166
186
188
270
197
177
142
207
236
238
153
208
130
223
208
185
213
223
174
260
187
217
168
188
250
178
208
206
183
219
215
270
235
251
223
213
191
241
182
225
161
190
182
150
142
249
185
206
192
213
213
209
241
183
179
169
235
219
217
241
228
167
183
233
154
227
202
226
172
218
209
189
182
224
178
210
204
220
193
182
175
181
199
257
223
157
172
256
195
220
242
223
159
279
222
149
252
205
217
218
165
198
274
196
222
196
158
212
193
231
190
237
207
208
201
168
170
234
170
247
153
174
142
210
158
189
192
188
187
239
182
199
180
226
186
193
201
169
189
221
175
124
100
178
149
225
180
253
255
226
223
200
246
213
180
223
164
182
166
202
218
189
165
243
211
158
202
247
223
212
185
209
241
167
180
131
256
200
215
247
250
231
161
215
133
226
157
202
160
190
205
185
196
194
166
139
191
163
167
173
232
237
132
175
201
222
242
206
207
251
228
193
167
139
263
165
210
204
242
188
227
219
197
181
165
228
143
223
172
217
183
229
212
207
192
207
224
170
192
177
183
248
157
214
236
205
187
216
204
207
154
213
182
218
184
179
130
239
144
203
135
194
181
172
225
179
139
199
221
226
149
190
160
213
124
218
191
175
236
246
168
210
205
161
193
258
163
220
209
141
229
238
235
116
256
240
172
180
154
219
236
250
224
259
163
251
208
192
203
116
145
211
146
195
211
164
195
196
148
278
226
218
251
181
199
231
132
210
214
216
190
203
222
194
230
207
184
205
138
221
196
205
194
210
177
190
193
192
208
236
215
154
194
163
191
204
195
220
214
205
155
144
197
239
170
209
237
194
208
211
131
216
177
210
173
182
226
215
190
179
159
233
164
189
197
200
134
182
203
180
200
267
189
232
253
164
182
209
224
180
187
141
178
228
188
210
233
223
180
170
195
172
156
203
244
218
146
224
273
249
192
252
233
179
182
234
227
178
233
195
243
175
161
226
169
217
142
175
151
204
158
231
254
242
179
200
170
192
228
81
165
211
170
193
215
217
220
233
178
140
217
172
229
241
138
173
217
171
175
216
260
143
230
230
190
217
141
171
158
201
133
191
201
159
209
246
212
178
237
217
226
227
254
170
205
247
194
261
233
267
184
200
238
181
241
158
186
208
170
158
177
237
211
246
230
214
143
212
237
197
151
218
138
203
162
223
177
146
162
223
187
226
244
173
185
245
147
231
261
225
201
160
202
167
190
105
204
244
249
193
245
165
132
172
226
184
151
174
186
243
201
198
154
238
225
178
199
217
162
171
168
177
184
172
219
203
175
244
204
154
172
202
163
244
228
256
239
113
217
202
197
195
132
178
180
213
147
114
212
240
210
243
182
165
215
167
187
251
249
172
199
219
185
237
133
191
219
262
109
169
195
225
202
153
225
194
195
178
160
200
267
195
236
154
207
172
204
246
159
170
175
186
232
227
201
180
194
187
175
205
227
204
155
186
133
224
201
196
221
167
191
196
229
215
129
206
178
221
253
206
181
128
178
207
157
256
230
211
167
205
220
229
207
206
137
208
196
182
189
190
194
254
202
266
202
125
251
219
239
240
220
242
216
182
154
204
220
150
190
237
207
181
183
217
168
163
170
206
225
236
169
245
205
219
223
196
171
193
265
210
165
218
175
176
222
184
233
189
232
179
188
193
241
233
147
191
193
197
229
223
197
198
139
138
191
194
202
201
167
269
194
208
190
174
213
250
174
193
185
203
251
268
276
231
219
155
246
218
178
138
179
205
201
215
254
244
201
141
184
199
290
210
211
237
195
144
260
270
226
207
231
168
229
230
225
246
209
148
226
269
148
191
247
207
225
142
231
167
207
193
174
168
143
129
121
228
182
224
133
204
145
141
154
215
209
215
272
204
211
193
216
195
203
214
265
262
200
242
141
151
247
195
169
197
178
234
129
104
223
194
223
205
160
214
215
185
199
228
256
144
185
245
193
222
145
160
197
154
215
179
247
204
147
233
212
227
236
175
205
249
195
195
226
204
211
187
232
235
210
177
152
243
166
214
147
217
233
175
252
221
206
211
189
220
213
188
232
215
158
212
181
202
218
186
229
181
163
198
233
181
175
177
217
231
188
153
224
203
148
236
178
175
164
211
246
219
189
193
235
204
229
213
202
227
206
190
180
128
144
208
193
179
206
169
189
185
217
244
233
192
225
230
214
217
210
236
188
210
191
171
175
210
220
154
186
215
210
232
196
253
187
207
203
162
129
224
238
260
224
251
219
240
191
178
217
190
168
209
148
215
213
159
202
244
193
182
166
175
215
217
186
235
223
174
199
136
145
178
195
187
156
193
226
198
201
165
191
181
160
208
194
185
226
243
239
195
85
218
180
212
287
179
170
219
180
197
239
178
238
145
177
211
199
254
213
215
198
178
223
145
188
181
200
227
144
204
216
235
193
222
226
161
200
197
205
189
272
233
148
138
200
232
218
178
212
239
243
189
199
189
233
172
174
272
187
162
160
175
219
225
193
192
174
173
151
156
184
211
186
248
247
229
228
231
248
200
177
177
163
226
123
164
207
170
211
233
192
204
196
183
281
188
227
214
141
198
151
225
133
160
151
141
215
221
249
159
240
195
220
246
145
169
166
219
176
236
242
185
173
172
203
241
217
185
170
251
149
222
219
233
231
210
234
238
241
227
190
185
203
187
206
152
194
116
174
191
210
176
190
203
247
216
158
232
211
196
251
189
216
199
203
212
223
194
227
232
197
192
243
218
239
258
208
232
191
158
197
164
107
208
175
237
238
186
227
201
216
178
210
135
237
190
204
122
255
221
171
116
195
257
216
152
207
200
180
189
264
288
217
199
197
160
234
147
242
136
191
186
155
238
230
195
211
209
227
200
207
197
238
261
226
218
175
187
197
164
153
212
170
218
222
175
204
253
173
265
214
196
148
230
189
221
173
198
157
199
198
154
184
144
208
235
273
231
197
210
181
176
235
242
196
141
177
150
189
145
252
145
202
155
185
210
205
184
205
210
157
213
207
184
273
222
211
218
178
209
186
172
161
184
224
202
215
208
251
211
215
268
158
196
212
186
148
164
131
134
226
177
184
220
216
226
184
246
223
193
209
196
212
145
213
184
173
195
192
225
233
161
235
170
218
186
209
141
232
225
154
195
176
219
149
259
159
161
156
179
169
239
150
173
240
170
183
222
179
229
241
207
267
238
227
174
252
259
197
217
182
258
181
232
209
183
247
176
200
233
179
163
278
213
173
234
141
214
180
216
153
171
159
234
161
186
182
194
211
178
238
237
221
165
230
229
181
222
195
179
194
204
211
198
191
245
236
244
197
177
150
257
269
168
220
229
235
232
179
200
283
171
221
185
265
157
147
172
144
141
242
192
218
267
175
146
215
191
209
193
223
218
208
229
206
222
177
199
258
235
219
190
166
225
183
202
133
246
207
200
290
228
263
171
215
189
203
152
205
239
184
163
218
201
178
187
210
218
253
211
198
184
235
217
205
220
154
179
212
230
206
168
231
253
166
194
202
209
217
242
238
250
206
269
196
232
259
220
179
214
191
231
118
265
225
206
178
215
181
177
189
171
183
206
130
229
185
219
215
189
147
160
214
192
195
186
210
230
231
259
178
220
230
185
150
164
149
157
179
204
264
221
171
172
221
231
204
146
191
219
182
174
240
233
216
133
159
219
206
216
231
215
237
191
213
170
180
243
141
246
206
209
176
199
176
123
201
221
215
241
286
201
182
243
225
182
227
172
241
153
253
224
178
188
194
174
115
145
207
192
175
234
238
202
225
188
177
221
217
178
214
143
145
259
202
192
178
236
245
222
192
196
198
215
184
252
206
229
229
224
194
181
235
192
153
241
214
223
204
175
208
204
203
192
205
199
178
259
229
253
259
178
200
163
171
147
150
133
214
284
198
154
217
201
221
254
185
237
253
187
217
247
211
155
242
224
175
174
242
165
190
240
251
212
176
177
232
170
209
117
247
175
194
187
156
193
211
210
167
192
238
208
249
213
160
220
194
203
243
232
210
153
164
219
184
167
201
217
208
159
186
251
244
150
209
241
179
198
197
266
219
241
211
246
218
174
148
151
230
196
245
199
257
198
183
199
199
217
194
209
227
154
204
157
171
171
256
209
185
238
172
161
178
240
206
171
211
141
200
203
209
217
203
202
203
184
245
184
210
199
200
243
153
188
207
180
209
247
179
221
186
180
246
205
253
158
178
193
228
202
247
227
157
204
218
177
210
229
190
250
240
248
227
157
243
122
197
241
170
168
202
174
197
234
195
180
141
239
229
188
226
256
189
257
219
255
152
223
239
170
250
186
214
170
193
214
214
127
227
224
246
179
229
193
167
245
231
200
200
122
145
210
228
167
191
226
198
176
196
231
253
204
249
252
215
165
137
214
232
194
245
166
229
208
239
227
222
156
242
184
208
194
201
134
163
181
197
245
209
97
251
262
220
139
237
180
216
226
225
171
126
226
214
195
184
207
223
284
287
218
215
225
169
229
189
168
202
135
191
214
176
193
194
244
144
208
249
193
205
267
227
235
161
269
165
236
176
201
234
167
218
212
164
192
198
159
197
205
237
222
112
164
181
202
168
221
265
263
164
242
189
176
175
183
258
231
218
214
196
232
188
248
208
210
211
216
210
243
240
260
161
233
246
218
201
190
240
191
213
162
158
180
219
235
219
227
226
198
244
266
161
221
238
182
208
231
196
159
152
203
157
176
201
216
244
191
199
221
178
222
256
202
201
207
255
150
218
177
260
177
177
198
133
218
237
209
164
276
216
217
229
243
278
201
194
179
242
153
227
184
233
210
162
203
251
154
245
247
175
154
202
177
215
234
215
239
191
212
198
220
225
218
243
221
197
215
161
205
158
211
169
174
201
244
196
195
150
134
253
218
163
192
195
199
256
243
196
209
184
142
281
180
173
243
206
214
221
210
227
253
204
148
225
176
231
238
172
199
218
201
188
219
183
177
240
205
173
229
150
223
176
250
196
211
301
215
199
217
245
176
286
168
182
175
185
135
218
221
274
190
191
221
222
213
188
157
209
211
184
268
208
199
232
213
180
171
228
211
161
214
163
212
204
257
202
216
195
203
176
222
223
185
193
174
159
122
257
251
149
233
213
191
179
217
197
143
202
199
191
214
169
161
223
167
195
230
215
216
160
213
188
249
164
195
206
247
237
160
217
240
212
207
213
181
168
221
178
234
204
155
186
211
220
171
184
256
206
249
200
179
115
150
238
261
168
196
222
281
168
215
124
183
167
178
216
162
151
202
154
230
218
200
223
153
150
190
219
175
217
157
209
174
196
178
220
268
193
175
142
157
195
212
174
171
232
212
135
184
238
210
178
229
239
200
226
162
234
220
151
141
247
220
248
182
255
168
222
134
163
210
163
228
196
181
218
162
214
184
209
94
131
152
189
154
224
231
198
153
231
213
224
181
206
207
239
245
232
201
230
210
202
198
219
167
182
151
136
180
194
187
137
231
241
257
154
225
260
244
194
196
192
265
154
136
151
211
223
180
192
222
196
241
183
177
219
217
235
171
189
151
135
117
257
218
141
155
178
182
203
214
236
217
215
206
241
199
164
185
237
262
207
208
204
210
223
149
145
165
235
99
237
224
183
121
206
247
194
201
187
122
224
176
181
252
203
209
180
177
213
223
229
210
179
180
174
209
204
136
237
184
191
226
225
183
213
214
151
180
181
203
224
230
176
146
187
195
177
250
226
197
204
223
156
178
228
218
228
205
204
223
155
247
186
248
248
177
140
258
219
144
223
230
210
165
201
195
234
225
253
217
202
187
201
251
160
164
164
214
222
172
156
226
128
160
154
259
186
193
199
183
217
187
280
177
235
203
196
203
126
145
282
182
233
170
173
243
135
215
154
259
217
202
172
206
240
158
214
162
175
193
217
200
243
143
189
214
190
168
176
234
226
125
184
230
231
109
150
155
208
191
212
280
212
170
153
150
161
227
168
187
210
282
198
201
248
230
218
209
183
211
173
218
193
224
205
206
196
206
207
217
190
247
180
198
179
185
238
186
217
191
216
219
211
230
173
233
270
249
180
148
208
209
143
193
248
272
181
220
249
222
200
163
211
208
189
115
186
199
209
184
200
171
216
229
154
213
140
215
206
173
196
231
158
203
223
227
232
145
173
230
173
245
218
202
175
275
241
222
213
189
173
167
159
195
277
175
221
214
234
232
233
192
162
227
252
239
171
155
201
138
183
198
99
182
234
153
233
182
236
213
251
155
154
173
255
151
179
181
248
174
163
193
155
227
158
270
248
221
180
252
172
248
160
210
189
182
155
200
233
210
148
155
222
183
200
273
191
177
235
219
186
167
188
207
185
191
288
269
184
246
164
194
271
126
248
230
78
192
198
158
220
214
248
215
176
122
182
170
214
208
203
184
154
183
227
218
228
201
193
119
232
219
183
227
174
182
180
165
152
192
170
157
175
238
189
140
213
175
150
258
236
203
220
200
158
194
223
172
177
126
195
186
200
213
229
223
188
147
229
190
170
148
173
181
198
165
238
168
212
191
227
215
229
202
195
294
199
142
232
277
186
211
230
217
208
217
208
217
255
163
224
242
222
211
233
202
181
227
244
175
178
232
194
252
217
151
197
218
165
210
231
170
195
216
229
219
223
133
233
200
150
172
215
107
206
213
220
182
159
132
176
177
242
228
130
202
223
176
196
198
187
149
200
223
211
207
152
265
178
197
201
181
216
195
246
190
205
220
224
204
183
189
242
258
186
201
206
225
194
198
158
180
230
173
220
227
188
175
190
183
185
183
213
243
174
184
202
189
256
267
187
137
140
151
177
132
209
181
160
244
214
165
249
244
211
242
200
247
265
196
222
126
153
217
185
180
182
212
175
235
229
153
277
156
191
216
173
203
222
229
212
209
231
184
172
225
201
204
249
230
218
226
184
215
208
122
180
187
224
187
215
151
185
205
192
169
207
217
223
154
216
134
214
202
235
184
252
159
241
196
194
160
228
162
205
198
171
148
144
207
106
195
235
239
211
285
169
182
198
191
227
207
210
202
229
151
200
189
220
185
209
187
238
188
137
208
186
231
224
191
196
245
208
207
234
188
175
138
204
201
133
255
199
180
217
233
165
154
234
202
157
213
204
178
186
225
161
186
233
155
215
149
226
217
217
220
181
216
225
164
126
212
222
195
195
256
210
181
186
195
210
209
219
220
166
155
183
203
211
230
258
224
200
211
243
200
219
208
188
197
274
140
181
209
156
187
155
186
244
208
233
202
210
238
271
202
174
181
193
227
165
253
234
210
202
219
242
194
145
179
259
197
207
217
208
231
228
149
232
186
219
218
213
189
173
133
172
281
185
215
184
117
196
215
207
167
183
215
196
265
108
188
201
211
160
198
208
235
209
207
225
196
216
163
266
212
179
220
198
241
179
253
195
198
119
135
238
199
204
188
223
184
182
207
183
189
163
243
198
216
247
261
158
183
273
203
206
205
243
182
187
186
236
152
187
155
151
202
215
251
188
210
249
162
204
238
201
251
278
214
185
252
213
247
175
203
216
213
204
228
161
183
243
169
234
206
218
197
214
176
236
173
133
202
156
155
157
208
205
248
272
178
207
153
219
213
218
204
188
216
188
294
276
119
147
202
224
216
207
183
194
223
190
192
184
199
184
187
156
239
146
190
226
233
254
234
224
191
164
133
269
240
246
154
205
192
127
220
133
215
190
248
244
179
208
207
185
207
204
183
195
259
230
189
219
152
163
212
255
194
179
185
184
219
250
203
201
185
237
151
171
192
222
227
235
192
201
210
167
202
219
176
180
213
235
228
230
152
231
191
272
209
166
161
211
195
196
186
204
180
224
183
133
197
161
262
170
207
199
198
232
266
194
208
250
254
177
181
166
243
181
244
144
235
243
160
188
180
256
188
202
226
215
110
218
211
252
223
245
116
191
229
248
211
216
211
220
184
195
230
209
237
199
187
186
188
147
287
244
226
155
290
171
122
246
256
229
199
166
210
191
170
183
169
166
187
162
150
171
155
233
186
206
104
209
235
154
178
178
169
253
250
214
154
258
152
217
178
162
203
204
169
194
270
224
162
228
204
255
178
202
174
206
228
212
205
211
213
189
182
213
199
170
123
226
160
186
210
178
162
180
169
219
222
212
212
193
208
181
154
216
246
235
159
192
164
179
225
213
128
209
199
209
172
260
229
220
250
196
162
195
183
218
233
199
146
269
182
190
178
115
189
164
175
221
137
232
213
227
221
179
268
266
237
234
222
245
158
228
180
265
213
223
221
249
198
147
180
178
125
194
225
223
245
209
184
211
170
231
163
224
173
174
169
185
190
126
250
120
186
192
152
175
178
211
176
172
189
229
187
192
149
163
174
213
209
232
197
215
168
160
178
214
199
208
200
264
237
156
132
144
219
184
198
157
220
207
209
200
187
184
227
245
175
173
192
176
151
219
174
188
217
256
191
249
172
189
218
205
172
268
230
225
253
228
247
212
127
200
207
193
236
203
194
130
226
176
161
217
216
121
213
196
267
233
199
189
217
156
231
127
181
168
200
191
160
224
179
160
186
184
161
194
200
192
197
197
180
261
209
228
254
157
245
155
184
232
206
126
273
228
222
260
190
167
270
244
230
221
215
208
135
201
171
182
221
184
170
224
211
204
205
238
233
289
207
214
209
214
164
264
229
195
241
281
247
174
188
246
172
163
209
216
218
173
214
232
188
226
241
252
202
199
241
227
182
202
264
236
214
195
217
275
134
213
253
232
196
205
217
229
108
237
181
290
232
172
237
163
209
206
229
142
284
199
220
169
191
165
206
212
186
275
210
170
194
173
209
146
175
216
179
207
171
226
173
186
169
232
166
209
255
203
175
202
222
174
212
193
220
211
177
214
155
210
185
176
173
218
259
266
184
207
195
214
200
198
142
218
249
194
218
221
202
188
191
181
167
247
170
196
202
174
229
229
189
202
264
182
161
128
211
234
232
231
171
176
263
212
211
171
216
232
172
202
265
174
241
143
193
187
227
174
217
239
213
201
150
207
194
174
248
196
225
254
187
166
168
210
236
173
215
192
207
159
185
212
190
216
185
185
214
171
178
201
224
166
157
234
184
233
252
199
209
135
221
148
259
236
224
185
164
246
196
208
215
175
250
199
174
165
245
163
197
201
234
203
234
146
199
105
138
212
183
265
163
238
227
159
225
208
220
225
214
148
160
163
211
218
229
190
258
134
274
179
230
190
190
211
162
237
189
171
197
144
215
193
157
222
164
210
180
156
178
163
177
141
168
217
153
239
206
181
204
248
266
226
232
196
224
239
173
199
165
219
214
216
203
206
183
208
212
209
189
220
196
147
194
220
187
193
236
266
187
234
241
197
209
242
233
166
271
241
221
261
236
214
173
240
182
176
194
163
219
127
199
195
243
214
183
195
218
248
162
273
145
139
157
193
209
241
208
237
190
190
212
252
198
174
160
166
187
223
180
160
162
184
195
123
201
214
179
139
227
194
167
187
244
184
204
175
254
228
148
231
209
219
212
251
170
202
138
211
186
205
194
206
227
135
235
220
198
271
136
194
192
183
179
186
213
170
151
165
124
209
228
196
199
196
163
258
174
201
235
188
153
141
217
226
191
261
164
175
185
255
177
234
215
169
178
197
218
245
215
226
224
188
216
197
185
232
157
200
194
233
217
205
117
170
234
268
233
200
217
238
214
216
199
196
205
157
153
178
174
221
171
184
149
226
182
184
232
213
196
230
214
244
152
205
173
251
205
200
128
212
183
224
191
210
205
202
216
208
239
184
233
204
181
170
193
167
239
207
127
237
186
219
187
219
136
155
261
174
216
236
214
279
234
190
187
151
232
155
209
202
219
176
237
235
181
156
187
237
168
179
229
167
191
174
230
192
200
242
199
205
172
214
231
208
172
253
238
194
224
122
212
146
201
231
179
223
212
146
185
210
192
142
247
208
208
187
214
267
192
187
232
194
187
229
191
189
242
240
195
196
204
201
171
175
216
178
143
201
177
192
195
197
184
201
116
214
164
235
200
203
233
207
224
144
207
218
235
219
142
168
155
186
212
180
187
244
208
154
124
171
227
251
184
151
233
155
246
204
252
207
155
207
212
208
246
284
262
191
237
204
190
224
148
149
195
124
247
206
155
241
175
182
226
222
233
192
235
180
166
184
186
188
189
182
170
231
230
185
214
198
215
178
237
171
230
208
250
183
276
206
189
164
193
179
248
194
199
232
214
198
220
185
250
143
217
212
171
179
222
206
161
217
206
135
246
179
176
183
188
142
194
188
235
226
175
214
193
256
171
155
215
208
131
216
234
173
247
216
219
166
168
195
178
210
153
173
248
192
202
218
171
122
207
161
174
218
163
200
162
188
180
200
200
267
184
205
232
193
202
138
220
160
258
188
210
133
181
243
153
192
189
258
189
259
227
138
176
188
188
208
170
196
210
187
172
211
171
228
245
265
239
217
237
245
222
240
207
202
225
143
181
239
197
166
232
216
178
178
231
209
227
202
212
236
110
184
259
176
175
208
200
159
198
183
202
226
180
169
205
233
186
127
200
149
143
202
168
240
215
147
229
213
217
235
183
202
258
208
231
146
226
224
199
185
173
241
191
219
252
274
196
191
210
233
175
200
231
201
212
183
163
155
249
212
176
202
191
183
180
235
202
204
239
183
243
235
218
213
167
228
235
216
143
189
212
277
189
266
249
218
165
231
139
188
195
186
136
185
225
197
259
262
203
213
163
245
229
154
217
232
153
226
147
99
209
144
171
238
125
227
197
233
193
183
159
126
236
171
165
236
157
134
238
219
235
217
201
126
186
204
240
179
179
126
255
197
188
235
188
222
230
250
228
213
111
192
201
154
211
219
221
197
192
258
237
172
211
199
244
187
133
244
186
225
153
189
160
264
210
205
151
199
213
181
251
203
246
233
221
181
206
180
213
172
220
169
167
140
202
190
161
219
149
166
187
180
253
182
238
199
222
184
214
120
152
178
211
198
178
185
203
180
221
223
246
220
233
242
146
118
193
169
205
252
192
179
205
198
163
196
146
228
198
227
176
197
230
206
194
189
157
228
166
176
209
159
214
148
140
216
173
221
193
133
178
215
242
193
143
212
230
208
125
163
136
191
256
146
160
139
134
225
165
210
216
201
126
197
213
206
216
234
277
190
157
195
238
237
221
238
215
208
197
220
167
224
215
223
235
218
224
206
194
205
162
163
210
235
229
202
211
210
231
163
222
186
245
232
177
180
180
237
198
204
183
154
270
202
241
173
199
200
147
217
210
235
173
218
200
189
137
136
179
237
195
218
210
176
157
202
250
214
234
213
211
229
180
197
145
215
210
200
184
194
143
235
119
265
208
163
217
224
144
156
175
137
190
231
232
206
210
191
179
181
170
235
195
175
196
232
215
145
205
204
225
183
185
208
203
186
212
158
201
171
191
192
176
194
247
188
182
201
142
212
228
213
233
203
264
148
192
148
208
189
177
252
141
251
200
220
164
241
205
219
198
164
163
230
217
258
237
262
196
163
191
215
208
202
212
184
227
208
207
188
193
177
163
177
191
217
213
149
231
219
237
172
212
167
154
142
192
198
151
154
188
173
184
172
162
188
245
210
214
250
174
173
204
185
169
175
195
190
105
264
157
166
218
174
225
193
186
164
187
206
170
223
215
181
218
188
237
200
199
165
266
174
173
185
158
201
221
256
158
191
229
186
221
195
219
228
195
215
212
212
190
156
170
211
246
227
204
151
213
158
225
156
212
260
186
235
208
212
206
159
198
206
179
202
286
170
208
196
189
212
206
176
176
206
194
194
140
150
100
145
207
181
197
167
218
146
271
150
169
218
180
124
164
206
148
252
137
214
264
152
191
214
188
163
252
196
177
258
192
211
155
207
190
233
228
243
182
206
203
126
214
186
235
213
220
233
148
135
228
203
213
207
227
158
158
190
274
93
199
234
217
243
246
237
245
189
190
216
232
223
192
211
184
231
178
234
187
193
205
230
166
104
186
221
164
224
192
222
220
216
158
254
227
152
217
256
172
159
201
182
218
189
221
190
199
234
185
171
237
166
214
237
221
204
201
165
125
268
197
189
251
219
191
203
241
170
157
196
121
211
210
184
254
211
134
180
190
201
166
163
156
223
187
184
266
214
181
230
216
225
212
169
151
162
133
233
211
215
154
152
162
175
230
190
156
202
189
223
256
183
201
216
195
199
179
200
225
163
237
232
211
187
250
274
261
249
217
224
147
193
241
129
251
225
168
195
223
187
160
233
252
211
209
208
159
220
212
221
212
211
142
229
219
240
240
162
215
186
207
207
234
237
133
215
220
208
217
237
255
195
190
158
219
221
208
161
287
167
191
181
201
231
222
183
196
211
224
175
279
199
137
197
197
173
226
236
196
164
168
174
168
244
207
242
175
210
221
209
228
198
202
224
231
213
160
167
178
161
189
260
191
210
138
203
180
264
195
214
154
213
244
229
232
244
148
193
278
248
253
251
183
156
167
172
161
165
230
203
180
197
230
148
170
223
150
244
209
193
207
225
230
163
181
197
227
229
134
252
246
220
178
220
197
245
139
207
265
190
252
177
213
210
178
143
191
202
181
174
209
218
155
200
138
239
172
203
162
172
174
194
241
148
180
203
229
203
216
243
220
227
217
137
255
189
176
203
180
156
193
233
276
284
214
157
210
269
156
196
241
101
226
237
207
175
260
181
227
155
221
199
233
220
233
194
253
202
162
224
231
208
141
248
262
196
235
240
232
221
165
195
256
202
120
172
185
193
237
229
226
192
160
233
193
149
190
205
248
147
224
145
203
238
223
169
174
201
178
201
160
264
183
272
201
218
162
242
247
209
166
224
220
222
209
217
247
223
208
172
181
247
164
193
213
210
208
215
178
218
252
270
139
209
114
159
143
259
229
171
227
172
190
129
194
140
205
195
199
203
212
144
273
224
215
166
182
233
189
155
171
207
250
233
254
204
122
137
183
207
222
231
245
170
165
212
130
164
229
194
157
176
164
204
144
214
111
219
266
198
178
201
165
237
234
181
200
184
199
212
179
237
180
192
254
208
213
228
208
213
239
180
197
216
198
187
202
267
211
182
234
268
238
149
188
211
238
172
254
145
186
241
190
175
273
206
177
221
227
234
179
154
227
195
194
168
181
197
223
200
215
150
257
154
184
244
192
197
175
191
214
153
201
221
214
209
244
137
235
248
233
160
219
170
174
207
176
188
250
157
199
163
193
231
260
253
223
251
179
212
173
273
225
197
225
218
188
212
239
240
224
185
246
174
152
237
203
199
197
225
208
175
214
162
215
200
244
195
183
245
96
181
223
184
192
245
215
181
181
222
171
163
222
134
173
174
211
216
238
213
199
193
220
261
183
143
138
204
174
143
198
189
177
178
179
151
260
196
193
225
148
230
182
180
220
171
200
222
209
221
212
179
182
191
221
195
201
191
179
282
255
177
255
137
171
220
197
211
216
160
203
178
145
173
119
218
142
154
210
163
162
224
231
178
144
234
123
154
179
170
215
218
206
161
207
146
203
183
221
172
185
219
176
213
195
144
236
184
174
220
218
172
167
232
207
198
167
167
203
162
178
183
187
220
208
208
165
213
220
234
183
189
210
174
214
135
217
215
210
138
209
224
146
136
152
202
248
176
190
201
214
204
235
203
199
184
179
100
181
211
223
238
130
233
222
175
255
152
177
198
212
147
205
201
239
215
191
209
190
228
216
198
173
189
237
151
210
228
236
174
142
174
227
165
232
229
186
245
224
244
214
210
220
200
168
197
239
208
170
224
211
174
250
148
198
187
248
157
179
158
188
234
195
150
184
215
223
262
247
170
172
198
212
108
154
218
204
116
240
174
262
158
176
198
194
173
178
188
178
187
187
156
136
251
189
244
260
178
243
196
237
207
118
131
180
248
199
176
239
189
186
243
202
252
250
222
186
171
207
142
216
197
157
159
204
208
239
161
182
200
252
168
211
204
237
137
221
175
169
185
202
259
211
235
179
189
246
222
238
176
218
263
211
215
201
170
210
142
186
228
231
212
232
264
163
199
177
227
228
224
179
142
217
207
200
292
133
196
249
222
198
198
235
218
222
139
226
205
232
252
218
243
214
239
161
175
228
230
163
244
202
218
179
189
140
193
222
223
219
229
216
221
178
145
176
175
185
219
208
208
259
176
195
252
121
172
214
176
190
192
145
215
222
206
160
181
193
207
191
214
193
229
162
200
170
138
147
197
162
172
195
177
218
197
203
205
219
239
148
242
198
218
168
153
230
215
233
173
190
187
174
112
169
243
233
235
188
188
199
202
139
218
176
183
233
228
224
244
267
136
155
207
177
174
241
190
147
243
144
241
215
205
211
229
201
243
213
223
213
197
185
175
236
208
197
172
222
226
209
177
226
132
193
143
237
166
197
223
193
200
255
156
243
233
221
204
222
198
151
257
183
191
185
184
216
194
136
212
227
228
180
236
171
207
202
159
158
220
287
186
208
204
184
247
213
166
142
205
149
229
209
212
242
141
138
235
238
228
211
228
204
186
179
224
142
171
217
161
220
204
267
306
241
174
212
295
173
192
180
204
248
185
211
217
225
169
196
176
215
176
211
160
187
137
171
216
253
252
160
190
206
281
184
240
243
163
230
177
196
228
176
196
160
138
170
195
182
244
186
219
165
161
164
202
217
236
224
211
188
188
130
177
220
159
225
222
187
152
222
240
206
249
224
170
256
243
260
240
166
185
173
240
148
248
253
149
193
208
186
215
197
159
179
184
184
169
201
184
207
231
226
157
118
153
152
224
191
160
204
210
220
217
261
188
187
190
240
215
293
185
210
221
225
163
178
193
205
178
154
266
207
228
180
179
152
240
219
252
193
159
216
213
145
204
242
242
225
201
227
189
297
153
252
225
223
243
178
177
227
244
251
217
163
160
227
170
280
230
170
218
240
206
233
192
148
189
236
255
179
258
254
140
146
132
192
221
216
193
221
199
207
177
160
185
138
228
132
176
212
180
220
163
101
133
152
169
197
197
178
217
236
184
157
198
182
152
228
221
230
178
243
216
219
215
252
222
251
219
226
217
199
194
219
251
224
187
202
173
193
154
183
244
217
191
220
213
197
192
230
154
280
236
247
172
187
278
224
178
257
219
199
210
169
220
210
251
158
155
160
164
205
205
166
253
186
259
152
193
152
120
200
218
238
190
236
207
208
268
231
201
233
155
210
203
225
236
164
206
163
196
238
218
154
203
208
175
215
188
192
196
218
211
181
155
263
170
169
224
164
215
202
270
204
206
130
188
201
214
182
131
234
175
164
166
223
239
204
230
191
133
189
161
206
144
225
206
238
249
219
176
135
233
229
227
177
120
237
233
190
192
236
193
232
198
191
256
210
206
234
193
230
224
233
220
222
244
234
229
254
207
198
260
233
260
136
221
240
187
189
246
216
203
158
233
198
166
147
198
230
173
197
204
223
213
202
231
181
206
167
164
225
202
181
193
199
131
209
210
223
210
226
243
217
196
239
167
201
200
196
210
187
247
156
227
220
222
253
278
152
221
207
234
254
202
174
187
197
183
249
181
236
242
188
191
217
186
220
211
255
133
141
180
200
273
216
227
246
212
182
252
192
200
187
193
162
158
185
174
214
139
131
194
241
219
172
190
134
213
190
181
229
156
237
226
195
171
268
226
240
240
166
254
195
215
231
232
156
157
232
212
142
131
193
145
147
181
210
242
207
164
201
201
199
146
180
180
156
232
228
183
206
169
227
209
182
235
162
203
210
144
194
142
145
220
138
244
134
232
264
229
237
163
231
189
197
241
240
187
190
215
251
227
204
240
177
187
190
224
197
208
213
174
270
200
186
150
223
209
189
168
176
195
155
216
217
260
248
146
169
234
205
166
160
140
182
239
221
250
212
269
228
187
199
166
199
141
183
176
246
231
261
239
172
231
194
228
226
162
203
213
189
180
200
221
183
184
194
191
150
222
157
159
242
168
190
236
199
166
211
232
229
219
217
201
194
254
239
265
166
185
259
224
203
160
206
178
134
220
183
196
205
205
187
190
224
220
158
182
179
196
237
254
239
177
139
188
237
138
241
188
208
168
164
139
168
220
270
200
189
194
213
176
199
192
218
249
196
236
239
259
153
176
253
200
206
241
221
157
197
163
174
255
212
215
175
184
239
240
187
196
234
206
239
224
137
186
190
190
194
188
171
241
226
234
232
117
198
214
229
189
220
153
212
205
203
202
153
189
195
169
243
168
233
150
213
240
241
174
217
224
179
234
234
191
241
220
208
156
205
197
194
194
191
140
139
195
207
208
254
236
192
206
249
192
208
210
157
222
211
177
207
186
227
233
192
210
211
187
189
195
204
171
216
225
233
185
179
195
227
164
226
226
227
205
214
195
215
217
166
205
174
211
189
188
204
183
229
229
199
216
194
193
266
208
238
140
225
219
148
210
200
185
172
183
207
198
207
177
197
214
243
166
202
203
191
234
172
230
228
247
187
215
164
222
168
208
212
248
149
213
267
203
165
234
149
217
225
139
181
255
241
178
266
151
200
251
189
222
237
145
231
152
227
230
246
222
215
197
205
208
247
190
175
233
225
172
223
205
201
156
199
262
253
198
143
127
218
186
259
241
186
218
161
176
193
217
202
183
225
235
217
243
136
204
210
176
238
216
176
173
167
217
151
230
183
208
238
218
209
268
130
154
186
103
253
182
225
264
200
155
198
172
218
235
192
193
209
190
186
169
222
177
190
256
220
206
147
216
180
216
198
257
179
172
228
136
225
215
207
211
234
256
129
209
198
171
211
234
243
186
179
167
200
161
175
207
232
253
178
223
224
216
215
182
122
183
200
143
177
213
221
218
183
196
180
161
234
211
222
192
175
224
172
255
193
285
201
217
150
172
239
170
224
158
197
235
266
197
240
170
184
168
191
126
178
209
204
213
233
193
193
200
226
249
270
187
241
235
175
202
163
233
148
219
152
223
183
168
251
105
197
182
225
204
225
197
179
213
156
236
269
129
182
184
168
191
182
148
224
213
245
207
173
232
263
203
208
263
183
226
197
212
219
230
160
230
219
149
186
132
190
196
191
201
179
206
187
214
285
202
196
201
186
131
189
177
235
183
177
190
178
173
183
156
208
150
233
224
201
175
162
235
188
163
201
169
144
188
248
177
148
189
200
151
186
256
225
221
203
204
166
99
148
243
200
214
211
231
239
173
196
235
189
242
184
176
201
86
249
156
168
243
231
226
145
215
201
185
194
180
274
192
195
205
145
227
239
223
198
183
179
185
227
186
186
174
198
204
206
208
202
182
209
208
225
192
234
191
163
228
189
175
130
168
155
138
227
254
179
218
190
194
192
234
192
199
233
228
228
192
250
186
203
179
241
206
173
215
221
297
251
212
222
176
246
170
222
186
219
145
180
233
216
156
211
237
209
143
196
192
230
219
164
228
260
189
173
231
263
134
191
185
195
219
187
110
234
234
220
174
184
244
176
233
213
185
160
138
180
186
179
192
201
148
166
222
207
180
262
212
152
219
167
201
231
204
235
252
211
195
128
162
233
138
130
179
262
199
189
180
244
231
231
216
161
232
205
223
160
193
169
160
207
244
238
198
197
179
170
143
195
198
174
212
147
199
224
174
180
230
195
194
217
187
256
226
230
194
187
109
145
177
177
189
206
235
211
211
255
140
274
179
178
220
192
202
226
203
223
245
189
137
203
180
154
167
212
242
206
238
246
209
135
260
183
225
206
245
192
223
218
189
211
173
143
150
241
172
174
210
190
233
243
180
190
140
215
116
114
193
227
182
205
190
154
206
203
214
222
192
234
176
218
190
243
139
224
135
204
199
152
221
158
237
138
232
244
193
238
237
239
162
205
200
186
226
222
210
193
198
199
266
184
214
182
205
244
202
216
174
202
165
189
209
157
183
242
167
247
181
227
225
189
191
193
242
143
182
193
210
149
218
261
167
228
203
182
189
177
219
199
212
185
182
230
227
238
249
137
218
180
243
259
222
199
192
172
221
254
217
188
196
225
164
217
151
222
200
199
193
188
206
144
202
248
239
157
133
161
137
212
260
249
202
231
197
183
228
193
191
183
168
202
163
203
149
193
162
275
188
220
195
178
218
177
209
193
206
196
190
213
236
215
182
197
212
214
160
181
177
164
187
183
138
200
221
222
109
206
224
252
198
158
198
218
144
163
186
197
115
155
199
164
248
235
179
173
187
178
188
150
182
260
210
195
264
198
158
179
151
208
185
225
191
207
213
216
231
260
249
257
216
210
152
213
239
182
255
202
188
225
217
222
284
172
141
261
215
220
187
192
150
178
173
203
271
243
185
220
141
217
195
142
272
250
170
234
157
198
262
256
227
195
145
225
186
205
260
161
151
193
174
155
170
262
245
198
108
205
213
261
234
198
233
185
170
238
213
219
194
190
167
229
253
160
238
145
208
216
153
129
246
191
192
230
197
210
88
206
236
193
235
141
174
222
216
224
171
236
209
239
161
115
242
255
254
176
220
199
154
191
179
202
202
220
172
145
193
198
207
181
134
181
202
254
208
227
223
197
167
210
176
177
181
232
210
188
223
176
194
123
251
221
132
200
232
279
195
210
174
210
188
226
160
169
195
204
166
215
194
161
249
134
217
188
209
201
129
224
218
274
188
167
120
203
277
208
158
129
136
221
277
177
205
160
161
208
213
214
208
197
199
234
228
151
222
150
213
110
164
201
194
201
137
191
223
211
124
212
223
190
182
237
137
295
262
194
187
189
259
219
247
197
233
238
156
209
231
154
197
244
258
215
147
191
218
242
123
162
198
255
221
168
150
207
157
200
146
242
235
201
262
190
242
246
152
256
192
203
226
243
157
175
261
172
229
172
256
171
236
205
213
161
183
216
228
267
206
208
218
211
197
152
189
248
142
233
187
207
200
227
170
169
217
187
141
217
190
239
227
221
221
229
229
150
184
238
210
183
245
282
165
178
160
237
218
163
237
176
176
187
147
198
206
226
226
232
142
155
220
208
180
174
229
152
196
216
216
175
201
205
183
201
205
197
199
191
180
229
149
204
211
204
222
239
227
169
173
176
166
221
164
127
225
151
220
178
175
185
166
216
167
226
206
233
201
258
191
197
232
178
159
210
217
293
231
232
190
236
226
199
172
236
187
208
198
201
181
175
155
241
250
215
221
151
177
161
218
230
183
236
233
219
161
205
234
240
208
190
184
215
255
228
254
181
210
205
189
151
233
207
186
191
212
230
255
222
172
152
231
166
227
147
150
180
198
143
255
198
213
214
194
190
167
145
233
192
235
208
199
155
148
221
221
241
139
208
191
211
153
195
153
209
220
287
214
219
220
137
220
193
210
184
199
233
222
146
163
205
171
241
212
168
255
233
171
225
227
250
222
208
189
146
264
233
164
267
224
229
213
144
229
204
216
204
221
233
166
154
234
269
222
227
211
198
173
183
164
208
210
131
239
255
180
187
211
224
257
205
228
239
233
156
236
189
156
127
222
154
184
194
220
153
163
201
200
224
177
186
257
168
235
170
171
232
165
189
204
184
192
203
203
224
190
236
217
182
165
154
197
182
207
220
210
165
195
196
222
243
156
233
129
130
194
157
226
171
203
226
185
114
216
208
281
200
185
126
204
200
172
237
258
271
236
193
236
199
256
232
147
224
231
229
265
229
223
191
266
156
270
217
198
233
276
245
258
227
144
218
155
194
223
209
166
190
179
190
210
195
222
208
152
185
249
242
241
261
209
208
197
135
196
195
250
200
200
210
218
192
186
225
146
154
212
196
214
180
180
217
153
244
222
218
173
253
228
156
279
206
221
290
215
200
210
193
231
145
211
210
206
212
163
144
222
199
203
221
196
217
208
185
200
181
214
142
226
148
165
215
199
192
187
160
241
233
213
212
207
185
167
179
187
165
181
166
262
160
209
248
232
123
259
230
238
253
139
177
177
221
222
142
179
186
206
254
141
175
197
228
156
198
207
140
199
168
174
175
203
185
181
239
238
188
216
162
154
217
189
164
188
166
121
155
212
174
201
147
197
191
101
170
265
176
201
172
181
142
153
223
163
214
216
174
207
220
259
262
150
228
228
183
200
194
208
235
215
197
246
196
240
189
226
208
257
195
221
175
225
228
167
180
238
186
189
254
229
279
237
207
253
235
169
227
236
184
223
197
201
195
242
218
202
208
205
250
209
225
219
174
194
283
215
210
266
186
205
228
231
179
225
284
218
119
189
231
207
177
284
200
164
171
184
235
212
170
206
156
230
189
214
171
208
166
232
214
136
191
187
163
172
205
172
210
181
183
252
199
219
189
180
207
172
198
216
211
256
212
212
183
241
222
240
192
198
216
155
173
205
196
186
256
129
184
172
245
121
203
171
237
237
204
217
194
221
209
232
126
283
197
184
203
250
126
202
238
234
246
226
213
186
190
133
166
164
146
189
192
178
261
161
196
171
219
227
226
213
239
183
255
189
179
223
217
229
200
240
235
157
270
179
240
178
190
200
203
246
148
193
191
162
313
228
194
151
257
161
221
242
225
198
160
175
193
175
183
155
183
147
232
217
253
194
290
174
235
241
196
238
196
219
194
205
174
214
193
197
212
156
258
231
181
162
165
220
243
212
159
230
201
235
194
205
179
153
247
230
196
181
160
210
160
244
247
191
192
169
178
163
227
250
136
93
143
199
210
151
231
194
213
220
169
243
233
203
237
178
161
207
174
198
198
105
211
191
220
199
174
170
193
172
215
214
169
204
211
215
236
174
141
216
232
206
169
134
195
170
145
203
217
201
177
157
203
165
130
232
192
189
221
224
176
182
165
191
186
233
230
185
226
238
252
237
158
166
173
210
224
233
168
233
223
178
163
181
201
180
252
201
208
184
187
254
246
211
131
163
173
190
184
240
218
212
213
223
227
194
225
222
244
208
205
174
156
175
193
206
213
238
223
192
155
180
231
230
217
199
189
136
220
215
244
180
203
197
188
240
222
201
215
213
225
220
235
172
111
188
175
201
248
138
200
211
227
184
193
205
215
276
182
151
190
174
232
235
185
186
188
211
226
238
237
211
165
150
208
195
181
195
200
168
195
218
180
212
220
251
215
168
238
212
231
152
184
186
237
233
240
233
159
186
162
168
191
182
227
167
214
238
155
204
200
208
151
252
150
181
196
230
249
173
152
197
158
187
236
213
232
229
203
199
222
207
137
209
120
205
242
202
220
256
270
226
220
152
154
163
160
219
196
162
237
173
256
243
232
232
181
225
164
165
192
240
197
159
213
175
172
205
202
266
197
219
229
223
249
166
199
168
196
172
240
233
221
153
226
190
157
170
166
202
171
173
194
159
190
126
171
154
194
153
135
221
153
169
252
129
230
166
271
203
237
185
252
178
233
176
235
306
152
267
177
263
249
217
173
184
166
191
215
236
247
182
205
206
177
210
181
224
259
158
215
209
215
228
206
166
219
212
169
225
202
115
214
199
264
171
180
227
193
191
189
221
243
224
208
211
163
213
191
200
242
211
231
139
173
176
241
247
152
228
123
211
219
243
254
132
135
202
195
175
202
231
180
198
149
174
173
223
239
181
224
156
238
219
202
212
164
237
200
222
230
160
151
173
272
151
168
237
198
168
216
191
188
201
244
112
184
152
212
222
190
171
239
171
244
202
222
198
210
219
242
186
164
154
156
133
113
202
181
161
196
246
158
199
198
231
229
233
184
181
187
190
172
185
213
228
208
217
220
252
252
209
136
258
211
292
149
186
186
190
201
153
204
166
208
206
252
147
129
176
207
181
213
227
161
271
180
159
262
167
212
187
205
146
177
192
242
159
142
168
250
139
149
199
182
190
183
185
187
171
162
228
182
159
236
180
172
173
229
170
210
182
185
169
212
227
228
165
205
269
210
203
193
203
181
120
193
216
223
210
191
144
207
187
153
246
190
208
188
239
216
229
215
161
238
238
255
199
236
171
233
231
238
216
211
87
176
247
232
170
195
195
182
160
156
243
283
239
229
211
227
157
227
250
196
208
145
166
184
237
196
194
242
184
227
212
157
114
207
234
255
188
208
279
214
177
240
228
172
203
184
198
157
178
212
215
201
174
219
200
191
211
222
215
191
172
242
168
197
212
252
205
245
210
193
209
196
253
241
193
217
213
189
125
246
171
192
178
202
136
168
197
209
173
261
162
226
245
220
177
211
211
245
132
236
214
195
213
247
197
156
194
187
235
184
163
194
246
225
164
178
205
198
249
183
237
176
248
236
242
173
163
203
196
206
213
177
131
189
232
230
131
207
216
223
140
177
155
173
185
188
204
218
168
177
241
171
147
197
178
214
171
200
222
214
198
179
193
183
226
233
157
241
148
197
204
158
226
167
160
212
194
218
137
198
217
190
223
239
226
209
161
170
236
225
179
160
190
207
243
164
208
237
177
209
148
167
204
198
240
213
208
183
187
176
159
179
214
198
121
184
149
181
211
176
155
211
208
201
182
220
234
148
193
216
215
227
228
259
207
202
256
201
239
272
214
166
156
230
137
212
206
214
200
210
222
181
197
248
175
251
206
234
213
146
141
134
192
191
189
259
204
185
256
276
238
202
181
192
177
209
193
186
197
180
166
197
180
138
224
214
136
170
172
247
201
206
217
144
197
208
221
230
214
241
237
164
220
239
218
188
164
226
146
208
168
204
198
169
215
203
215
206
216
256
188
220
254
225
216
240
204
206
196
256
221
136
189
181
211
205
199
218
222
230
166
197
228
207
231
196
208
177
251
198
205
198
166
208
196
227
198
228
217
285
198
190
208
209
224
220
228
236
203
202
211
185
212
242
176
219
203
154
190
209
254
219
211
118
157
176
164
232
189
150
215
157
209
142
166
219
213
219
153
201
158
138
206
176
184
171
225
177
193
238
210
161
204
243
189
196
245
210
151
283
208
176
233
193
217
149
228
244
211
219
217
193
283
241
220
145
223
185
157
155
158
218
209
151
152
181
234
251
172
200
240
219
130
184
190
156
110
196
232
272
237
293
218
155
188
195
150
171
196
151
254
202
202
228
193
210
198
213
154
193
184
198
230
133
207
194
146
247
185
213
177
238
211
259
207
230
204
175
242
207
179
164
226
193
240
166
124
205
225
216
174
233
188
167
226
236
196
158
193
208
203
209
180
193
164
209
186
219
212
204
152
238
182
244
188
195
196
186
146
188
221
209
201
180
246
257
223
207
210
201
177
255
254
200
187
207
216
215
194
196
148
254
215
203
215
211
198
132
189
234
184
139
194
175
216
231
202
196
225
166
231
235
268
193
166
135
231
229
200
180
208
191
226
141
138
259
169
212
263
205
175
280
187
151
224
260
141
209
220
206
174
160
194
181
164
217
230
178
238
203
247
258
234
221
170
210
172
212
200
195
265
181
210
189
197
252
211
143
286
200
161
160
187
182
192
136
244
133
250
233
187
210
127
157
192
205
199
175
215
227
230
170
197
206
234
177
154
232
183
200
206
205
278
196
217
192
212
263
229
92
219
223
214
195
158
224
203
207
255
226
216
243
174
177
203
161
191
235
198
227
148
236
211
182
197
175
163
197
201
164
225
174
195
248
243
157
187
222
140
153
230
209
216
217
223
228
198
193
186
215
188
203
194
138
203
214
168
207
230
140
191
198
241
215
193
172
212
215
143
196
230
170
209
218
194
236
207
157
236
191
240
269
205
197
179
164
212
229
160
187
214
244
162
248
168
186
172
208
118
196
195
234
211
189
173
192
202
175
181
222
230
149
253
181
205
181
225
223
202
217
172
188
244
202
187
206
222
209
195
231
144
177
217
198
178
198
216
220
147
241
187
197
288
205
195
185
205
243
152
231
232
215
198
143
200
157
163
174
188
108
130
216
249
239
161
211
250
164
196
219
189
192
200
155
174
197
102
162
219
181
179
197
200
221
195
241
191
191
213
223
202
251
199
173
169
244
181
152
232
190
214
211
214
196
178
211
162
136
207
187
196
201
167
172
124
164
193
241
189
252
268
181
154
189
168
211
112
232
231
146
183
161
155
208
232
160
205
215
189
139
175
225
219
194
237
183
141
206
189
164
241
210
252
225
238
242
228
155
247
217
208
162
207
192
131
227
210
165
203
174
270
220
243
189
168
240
129
145
213
268
209
193
204
252
218
160
166
220
147
220
211
188
212
208
254
199
156
178
157
221
186
187
198
154
233
201
233
207
226
197
173
242
227
167
195
156
226
260
153
207
194
159
170
211
204
245
190
214
196
145
198
221
98
181
251
217
150
181
192
216
190
214
244
199
232
191
191
255
209
153
220
207
153
249
247
162
213
250
218
161
190
239
180
194
194
176
194
234
185
202
240
202
193
249
236
230
254
168
205
205
222
257
185
202
162
188
128
231
275
145
232
243
251
154
155
193
185
191
242
243
222
157
240
205
156
141
274
210
215
140
166
199
257
276
225
205
224
141
197
182
206
185
198
194
185
153
197
205
201
234
214
193
216
191
242
199
176
172
216
229
229
162
195
219
202
216
233
183
106
179
149
196
168
155
250
160
174
265
223
252
234
235
228
260
266
163
243
181
187
253
243
198
192
237
184
206
261
220
182
180
139
212
184
184
268
190
187
185
193
143
229
197
169
215
238
223
270
218
167
138
133
219
210
207
171
169
245
241
224
166
179
222
201
178
267
173
212
135
196
245
220
200
189
182
208
215
232
219
189
177
163
209
172
220
223
182
222
160
178
147
185
265
222
201
224
238
213
209
189
197
220
210
167
211
155
218
163
187
190
247
192
217
222
212
185
189
192
209
208
193
216
179
216
184
199
200
112
235
195
140
185
248
214
213
163
227
171
188
216
173
238
260
180
214
122
231
222
204
240
199
256
239
229
156
186
158
189
163
202
247
164
296
229
222
213
202
218
179
216
206
208
185
225
179
234
238
204
236
236
209
201
173
195
218
132
210
179
174
183
224
154
238
158
232
183
137
206
222
217
184
172
269
135
176
222
157
238
221
150
196
230
142
208
211
181
172
248
197
193
211
269
173
243
230
193
288
183
199
202
239
189
242
170
200
188
181
205
161
230
213
234
204
207
156
271
245
155
226
232
222
196
220
226
167
157
198
191
185
194
175
177
229
216
208
170
181
219
215
138
177
181
189
181
210
237
180
204
185
171
229
176
163
200
192
219
249
169
250
203
198
196
151
257
166
187
185
194
160
215
190
245
157
210
249
182
234
203
202
221
218
182
231
215
155
207
166
178
247
231
184
177
159
131
170
146
250
226
213
179
172
165
123
260
212
220
227
266
250
159
160
185
260
208
176
198
157
176
139
216
242
226
248
175
235
224
163
249
188
271
122
189
194
187
255
228
231
192
193
210
266
144
266
204
240
172
248
227
286
154
165
220
194
180
194
230
204
200
192
194
108
195
176
194
214
225
236
245
180
135
246
253
162
206
262
167
240
241
173
195
195
209
185
209
165
202
209
170
168
170
120
175
204
220
177
145
271
162
197
251
206
178
191
182
202
238
142
210
183
206
194
165
170
240
211
272
217
207
165
221
249
208
242
179
222
221
185
151
116
208
179
179
258
192
136
211
203
185
193
283
213
141
179
241
242
230
235
195
107
200
197
162
125
193
248
173
150
180
192
254
172
127
276
210
219
203
167
184
192
174
164
240
180
204
260
234
155
171
220
241
233
248
253
249
183
263
238
178
221
162
181
186
207
187
209
217
190
196
202
146
192
180
171
173
247
198
210
213
212
204
247
217
205
187
217
227
206
207
200
251
225
200
137
231
172
268
193
198
184
252
237
191
196
167
211
124
207
197
264
181
200
237
188
182
188
162
189
175
219
166
217
161
218
194
216
192
177
175
164
125
200
210
199
164
160
250
197
197
213
196
197
196
198
195
210
239
206
225
157
250
181
223
236
204
205
240
155
234
239
169
138
276
240
213
238
220
189
224
167
241
207
269
237
232
202
244
215
204
227
197
205
184
190
209
225
251
208
248
211
172
189
237
216
241
263
201
163
155
192
215
206
229
215
151
140
213
186
265
174
192
170
239
215
198
232
216
207
241
143
180
211
174
214
156
181
239
98
158
229
208
218
218
175
202
206
197
169
232
170
229
257
202
223
207
191
193
192
211
184
213
204
194
182
208
231
210
218
189
219
229
212
183
205
232
228
207
252
219
197
205
205
193
181
274
197
206
163
237
183
221
183
170
172
200
230
168
200
241
164
152
154
168
205
250
182
201
220
238
216
228
223
211
170
180
244
107
224
217
152
229
196
203
193
159
216
240
252
219
217
220
202
168
229
222
214
220
203
171
142
203
255
180
176
180
218
210
152
203
205
169
265
189
234
237
180
184
185
209
214
198
180
257
208
179
285
177
213
155
189
259
196
228
213
244
137
246
169
141
226
195
203
159
213
203
209
239
173
180
195
163
195
230
252
201
184
153
147
221
233
123
171
226
200
192
190
174
244
195
192
290
163
213
197
204
181
187
289
241
153
217
219
250
218
189
293
258
165
241
202
208
179
170
254
196
154
244
174
188
175
213
204
207
251
202
199
229
235
240
204
202
232
239
218
183
143
187
208
209
227
234
194
201
167
228
214
219
200
222
202
213
194
175
237
164
220
170
227
275
202
232
223
281
144
177
220
233
178
190
202
202
158
227
198
207
235
263
189
233
263
214
141
236
185
186
199
213
178
199
248
188
190
205
211
222
191
214
128
192
164
174
208
232
180
220
249
177
151
175
196
195
185
240
216
169
212
194
190
170
197
209
221
216
198
173
192
181
214
215
153
192
217
216
199
193
168
203
169
176
281
198
128
156
247
211
264
237
174
165
167
256
294
147
156
223
239
207
181
223
171
202
234
172
189
251
193
188
128
215
212
192
208
188
214
207
181
182
232
169
207
240
186
198
236
166
196
183
147
232
204
177
233
196
261
169
199
217
160
263
175
238
168
198
200
203
155
221
216
186
148
206
174
196
248
207
190
221
245
153
162
244
214
144
128
188
198
177
182
192
142
228
180
286
188
206
233
171
229
201
215
224
157
183
270
232
156
155
186
156
289
178
249
201
200
180
187
168
198
229
207
246
189
172
181
224
162
281
212
202
191
214
204
189
204
220
209
162
189
230
198
234
135
195
246
200
208
206
161
152
167
177
205
201
150
190
188
158
204
190
216
234
197
121
223
170
165
138
192
202
279
159
219
203
228
204
223
229
214
208
176
234
184
197
236
136
142
213
156
172
227
238
226
283
237
233
189
128
207
170
207
147
212
194
186
228
180
211
170
216
230
119
284
176
211
175
203
192
180
183
224
213
199
217
213
237
185
238
164
145
242
144
190
211
246
203
187
176
177
199
229
184
172
227
239
185
179
221
191
251
217
219
201
207
234
186
133
215
200
220
244
142
194
140
198
184
156
171
228
209
210
213
220
191
169
142
215
139
223
236
204
210
184
229
222
204
220
180
229
224
158
196
210
126
215
249
216
202
207
164
217
238
214
151
262
167
220
245
129
235
220
173
214
185
187
207
169
232
225
161
186
234
205
200
228
197
243
222
242
213
214
192
215
197
179
245
145
158
197
178
209
231
231
239
218
147
226
169
191
248
214
178
203
266
185
176
218
242
175
173
158
206
216
182
250
154
227
207
232
222
170
230
169
163
180
229
223
179
233
228
188
144
198
187
180
172
245
164
214
210
221
228
176
141
240
199
226
163
179
128
172
210
215
171
196
226
182
169
191
167
176
202
148
142
160
204
209
191
188
157
207
248
189
204
243
218
262
155
271
226
236
190
197
252
247
268
187
200
185
272
222
218
188
202
175
194
227
131
173
230
247
197
232
202
230
209
194
208
178
214
188
218
202
234
176
160
172
214
271
180
269
119
193
237
228
160
176
200
177
235
145
204
167
180
202
157
221
185
220
205
235
200
221
216
181
227
158
208
244
218
141
152
193
221
211
275
224
191
241
209
229
101
242
218
194
216
222
204
261
168
226
204
227
157
213
214
213
181
217
246
188
187
210
215
145
217
206
300
211
226
271
182
199
216
220
216
262
220
242
279
193
117
225
212
213
151
160
182
203
145
267
184
194
173
196
114
216
224
175
253
158
203
193
202
117
215
167
176
168
202
211
142
175
180
230
173
183
157
199
233
216
184
156
172
219
282
147
181
204
155
222
169
196
186
227
162
164
114
217
260
192
224
204
181
180
246
191
221
241
264
225
174
259
158
215
188
198
209
161
237
193
204
221
146
162
237
225
249
226
207
231
210
163
223
212
220
200
178
240
165
199
224
164
127
176
218
178
211
179
211
183
241
196
162
236
256
220
200
174
168
222
107
147
259
191
185
202
226
211
186
181
197
250
212
217
172
196
216
159
232
190
238
230
194
200
192
240
241
140
200
196
225
192
224
221
227
193
166
232
262
200
179
167
186
204
223
149
189
145
125
210
198
135
198
258
127
209
202
133
256
222
150
226
255
213
152
245
192
233
156
131
159
209
174
171
225
181
210
221
153
175
227
212
225
198
200
154
166
189
212
212
208
218
223
172
175
183
196
164
230
211
179
179
171
242
210
210
208
137
220
209
175
221
160
174
191
217
234
196
211
266
242
182
177
157
249
219
216
227
146
152
223
148
176
239
221
202
212
191
190
211
235
168
231
220
196
211
243
184
217
188
227
139
210
262
258
178
231
177
238
180
189
235
161
175
246
204
192
176
165
177
254
223
241
192
179
223
214
204
191
174
246
263
212
218
155
195
239
189
168
153
274
210
227
159
190
227
236
241
197
192
193
229
203
166
203
165
176
170
211
183
170
230
184
198
155
169
215
205
189
214
153
245
181
198
202
187
180
192
117
210
187
255
167
138
234
211
223
222
168
233
223
169
185
215
215
213
201
197
209
236
244
197
130
189
176
195
191
231
222
239
242
204
262
194
217
210
260
250
272
213
208
233
188
210
195
139
239
235
202
277
173
212
208
193
169
194
187
209
216
182
183
201
153
245
191
178
182
192
214
135
172
115
211
162
139
245
210
252
219
205
237
175
176
263
210
245
178
233
266
172
213
218
138
214
225
157
219
198
231
183
183
212
148
194
180
205
177
193
231
219
204
154
264
182
190
168
226
198
215
215
203
185
191
117
186
193
225
209
241
203
206
181
203
200
206
250
199
192
215
186
223
188
237
166
280
236
203
190
169
166
171
166
202
140
172
249
166
169
90
217
218
278
175
169
250
181
254
240
181
152
147
222
204
137
131
180
177
193
197
102
188
237
175
192
187
217
168
227
277
222
196
217
214
121
196
193
166
218
219
280
159
209
260
178
166
266
147
215
202
214
191
185
185
203
258
195
155
272
146
221
225
196
216
267
260
152
235
213
223
195
140
200
244
180
208
170
233
183
154
179
139
202
234
222
238
211
122
200
160
217
213
172
167
232
317
212
193
195
239
169
181
245
169
246
263
216
203
191
240
178
197
217
166
228
193
286
241
216
227
219
153
190
124
122
165
236
214
186
189
193
198
155
200
277
204
133
158
171
253
194
197
224
187
205
250
238
162
222
249
128
156
188
198
190
223
222
182
266
242
241
198
165
191
243
224
113
137
189
203
256
136
243
204
184
205
224
205
223
210
178
234
251
183
152
237
133
183
254
217
183
232
193
228
188
178
174
164
258
233
186
208
168
140
216
224
243
129
210
237
178
209
216
241
210
215
215
162
182
205
200
238
178
238
137
166
214
229
165
199
257
190
88
147
208
207
183
154
156
184
210
172
242
192
178
211
209
164
223
246
274
145
226
188
197
179
179
217
191
193
177
238
255
183
182
176
201
201
206
239
176
174
178
215
178
182
209
147
221
239
152
267
240
231
128
180
237
177
225
205
220
235
211
208
229
251
194
174
239
202
122
225
210
243
281
219
184
148
251
212
165
179
230
255
277
222
207
187
169
251
154
189
234
201
172
247
216
239
237
229
245
168
185
144
207
238
232
145
182
160
246
229
215
223
219
197
159
194
256
124
191
203
219
245
214
109
182
185
214
236
202
222
244
190
239
223
163
234
168
157
234
171
214
243
210
239
181
192
176
207
194
229
218
218
225
157
181
85
221
212
192
252
196
192
219
166
195
207
197
213
150
159
168
190
225
182
179
205
206
226
155
221
142
246
165
232
182
165
224
243
155
220
139
207
218
177
120
229
194
210
191
216
93
259
176
207
228
200
271
165
187
199
190
233
188
210
219
222
202
172
164
181
163
282
181
157
235
246
165
200
209
203
85
214
181
196
164
199
197
166
197
185
247
166
260
247
207
146
178
254
227
167
220
197
201
184
212
227
150
184
239
146
166
198
246
192
213
152
188
252
194
220
179
219
258
180
241
223
207
170
206
133
86
192
189
183
262
223
159
154
240
252
183
207
162
173
204
175
172
216
180
147
209
213
167
249
159
201
218
176
247
233
156
171
187
190
188
141
162
221
180
199
275
215
216
208
185
163
194
240
148
191
173
214
184
223
185
186
211
146
215
189
144
196
192
185
225
217
206
198
226
163
193
212
160
177
133
244
147
175
201
233
239
232
205
193
228
224
252
219
177
223
186
196
236
258
101
236
180
160
207
180
166
227
269
162
222
139
243
209
189
216
219
247
206
243
182
170
226
247
177
219
173
205
226
152
215
215
184
199
253
171
240
247
228
177
237
193
182
199
215
142
217
190
197
236
240
177
166
161
210
236
204
213
201
226
216
224
234
265
158
270
211
169
193
197
197
265
162
168
194
147
214
178
212
273
199
152
241
187
171
211
188
181
133
236
236
228
186
227
170
211
158
197
204
202
255
185
259
162
221
228
258
182
204
186
128
174
157
204
220
201
256
225
209
228
176
240
260
171
212
215
215
229
203
175
220
179
200
194
135
212
230
198
177
202
167
206
162
203
226
216
174
153
165
187
194
223
196
203
168
228
145
207
251
153
226
157
182
185
195
201
133
216
156
174
210
246
206
185
235
182
153
195
213
193
172
179
96
234
222
186
215
220
170
187
151
218
253
185
218
208
201
201
196
231
270
259
208
233
188
187
263
205
221
136
145
247
223
221
246
234
160
210
205
226
191
260
183
264
188
196
186
244
185
207
238
164
184
192
143
186
205
168
220
207
159
213
221
172
194
197
205
166
249
182
198
223
222
167
227
192
158
168
210
190
164
224
192
161
231
182
139
178
209
200
200
185
193
224
238
211
181
205
190
183
187
222
243
213
243
235
199
224
237
226
230
258
198
122
122
139
167
243
225
254
209
234
181
151
241
253
214
249
226
243
96
166
228
190
187
155
239
193
137
236
236
202
228
221
214
167
226
243
172
165
132
223
238
204
255
243
210
248
226
159
190
203
149
240
194
224
197
205
198
209
199
202
209
208
204
207
196
209
203
167
242
165
211
200
196
217
213
189
169
212
134
241
192
214
158
146
241
225
218
236
154
201
159
227
188
112
190
185
158
209
235
218
201
206
202
163
246
239
213
191
195
180
204
178
177
170
194
235
229
243
249
215
179
213
197
196
175
181
232
193
166
193
183
162
181
255
151
208
143
116
208
230
148
226
227
213
195
192
213
191
168
255
157
155
166
241
161
227
235
175
201
198
213
159
228
191
172
198
224
155
165
159
220
183
236
215
217
220
179
247
183
205
187
245
291
79
213
145
220
201
216
173
163
220
141
204
245
220
223
208
254
237
194
192
164
197
150
240
220
187
194
205
147
197
186
228
265
220
187
192
194
192
188
218
182
222
194
200
176
261
203
160
193
214
149
204
209
239
220
138
217
230
179
233
142
176
213
184
228
237
173
266
156
156
168
179
205
173
210
183
266
212
219
171
166
205
244
105
171
168
222
204
216
302
224
183
212
244
230
203
197
184
248
247
234
235
289
231
176
203
170
211
189
142
180
193
119
217
237
281
209
224
178
171
160
167
197
242
225
230
238
124
208
246
223
216
195
231
172
212
253
228
240
146
259
234
216
215
227
206
202
235
176
151
237
202
167
157
225
150
249
216
240
240
173
197
244
181
244
153
242
216
153
208
226
210
230
205
191
186
218
208
223
227
245
209
176
223
170
208
221
228
237
247
203
246
236
225
227
173
178
232
198
229
240
200
223
238
195
265
179
220
162
188
217
184
206
187
154
175
199
193
203
252
180
226
166
252
214
168
201
198
191
196
213
130
150
237
194
218
218
200
246
173
226
212
211
194
191
193
172
228
205
193
191
224
185
177
241
148
221
180
175
189
209
137
237
186
191
188
222
241
235
257
170
162
225
195
251
182
135
225
176
232
170
164
184
198
211
196
251
158
183
174
214
168
247
227
214
187
230
223
173
223
249
160
228
198
236
255
235
198
168
201
195
229
149
190
198
169
220
169
206
208
217
166
194
193
207
256
259
157
200
220
218
181
228
211
206
160
179
233
178
167
234
142
210
230
188
252
191
216
181
183
218
212
194
261
159
217
201
93
204
228
219
215
148
277
158
183
246
208
152
200
217
198
175
217
163
214
162
195
163
134
188
164
206
193
134
212
186
209
201
189
260
211
216
124
228
216
290
150
189
222
180
196
229
181
204
227
179
175
187
216
177
220
196
144
252
216
211
157
200
190
165
219
210
225
186
156
146
235
223
223
215
211
235
245
257
227
233
252
194
144
183
170
178
195
224
235
174
166
250
171
183
217
192
187
206
236
241
209
257
128
209
150
183
185
228
163
158
191
268
225
167
155
222
214
198
170
225
210
187
202
250
249
269
218
160
218
220
139
217
140
200
221
244
217
228
173
256
200
192
266
209
237
132
140
218
266
243
236
158
218
182
165
249
165
163
199
225
219
250
275
211
208
235
211
203
211
219
192
252
220
244
140
187
208
225
237
232
251
127
158
196
194
225
175
234
204
115
232
209
234
193
150
194
148
256
240
256
258
187
176
160
246
164
131
170
282
188
204
179
188
232
142
203
208
158
191
185
145
170
226
227
185
147
189
181
188
223
207
176
242
216
169
202
236
195
242
223
135
233
232
223
145
271
210
136
201
232
167
221
174
216
218
247
224
195
193
232
175
196
184
223
208
183
155
240
126
266
211
221
193
247
185
248
216
224
196
202
221
236
136
210
183
209
186
172
192
212
210
179
167
283
215
221
169
168
199
160
150
189
207
209
187
162
174
136
199
199
212
190
182
202
226
235
169
281
205
214
147
210
216
128
200
204
193
180
225
210
152
204
268
167
206
210
221
261
237
234
210
227
216
202
183
233
255
185
240
246
193
187
216
211
165
215
184
201
219
148
235
210
251
234
236
205
244
175
219
171
209
249
200
230
204
202
138
251
154
203
198
174
229
175
234
183
246
144
221
226
216
230
201
190
250
201
171
212
160
197
198
148
229
200
188
208
251
147
199
268
216
225
244
242
200
153
159
202
176
210
190
253
229
206
179
231
189
218
278
282
187
195
184
234
234
203
166
193
182
221
160
208
221
250
228
149
224
210
250
164
230
182
231
209
242
143
177
186
202
193
189
146
170
179
159
223
233
263
216
209
239
132
160
182
228
149
169
167
194
209
228
225
203
149
215
123
204
219
164
234
217
210
191
219
185
182
186
218
126
226
200
247
215
243
245
220
199
187
185
181
153
190
124
243
208
212
183
148
179
195
187
251
210
227
221
223
244
206
181
245
265
223
170
201
233
174
239
150
227
279
144
246
230
167
134
199
236
214
215
201
203
175
200
204
206
225
152
105
251
153
216
195
202
163
185
211
183
166
245
191
207
230
144
161
214
157
221
210
192
181
211
237
225
229
168
132
245
216
193
204
209
205
146
232
192
177
182
204
217
295
206
192
155
208
182
185
233
200
156
156
206
214
233
136
199
262
139
179
165
217
250
226
260
157
192
242
225
173
214
215
230
223
193
199
198
222
146
202
218
143
167
183
233
199
233
187
220
188
196
215
171
228
185
201
209
178
277
219
253
237
227
192
239
144
218
209
207
204
231
176
219
140
232
197
172
196
213
266
258
202
141
179
178
177
194
166
191
203
248
195
234
237
148
134
178
213
190
169
217
246
203
233
148
187
177
181
184
265
218
197
178
171
247
238
181
215
176
196
177
121
213
221
203
150
212
244
196
210
243
227
186
223
203
243
204
252
208
181
240
170
183
170
237
136
202
161
257
191
236
184
152
247
207
217
174
264
142
221
221
191
197
176
166
202
225
208
178
217
243
161
168
180
218
186
137
217
232
215
207
211
155
211
178
164
216
180
198
237
224
149
175
194
212
243
226
239
203
149
208
183
212
157
163
196
202
180
186
212
200
157
210
237
172
200
216
163
189
211
192
206
187
140
206
210
164
112
248
244
204
229
113
229
277
206
162
211
246
188
237
200
154
193
169
198
186
209
212
207
214
216
178
177
154
263
165
276
198
164
215
171
158
164
258
169
203
165
175
261
202
211
195
215
222
212
191
154
261
153
189
186
232
174
175
192
231
139
189
196
207
174
147
114
181
204
122
231
195
182
206
219
222
192
226
171
262
181
241
192
198
277
217
221
190
157
268
189
85
243
254
243
238
201
210
129
170
203
171
265
159
245
167
192
219
174
207
238
224
199
153
200
229
192
203
263
199
212
215
172
215
185
212
210
238
191
175
241
245
212
251
147
225
252
191
215
215
202
225
173
204
200
220
226
152
211
201
202
175
206
264
139
250
280
194
213
232
167
155
239
203
147
193
133
210
228
197
229
234
235
149
224
216
195
164
201
221
252
244
202
146
228
180
248
175
201
211
223
201
209
203
191
190
148
236
177
190
177
198
276
232
193
201
206
237
255
247
200
194
213
216
175
227
211
236
195
197
226
114
160
203
256
204
222
178
221
213
129
204
233
201
247
213
173
191
244
261
236
188
234
167
252
186
108
212
217
215
145
158
172
219
278
134
193
199
172
213
175
238
182
235
194
235
203
226
170
206
208
228
230
199
180
194
202
202
212
162
204
256
187
244
190
178
246
184
190
159
170
190
156
246
198
178
182
225
251
141
217
188
183
208
189
180
191
231
209
199
150
171
186
215
222
182
150
264
213
240
209
243
197
181
243
192
210
148
151
198
216
158
246
210
170
150
206
199
160
124
202
204
195
156
214
208
206
147
150
177
230
264
206
157
203
213
198
141
153
150
247
154
233
225
205
235
196
237
149
175
154
180
188
211
192
229
224
177
221
247
151
145
228
142
150
258
183
201
216
210
195
181
239
257
108
185
242
215
159
274
150
245
177
179
105
197
134
150
170
151
247
183
194
234
204
195
159
214
178
232
184
233
255
212
153
197
150
199
217
246
171
179
213
203
234
249
133
259
180
194
177
228
247
253
213
211
201
217
207
174
176
270
152
209
188
180
228
170
158
208
189
222
154
191
201
139
177
161
181
188
244
167
230
199
215
192
209
164
203
208
219
192
223
154
249
210
214
174
194
212
176
239
203
219
248
176
185
222
245
259
182
219
172
211
188
184
171
233
201
176
214
215
176
201
240
241
215
201
126
129
141
169
224
194
242
163
229
200
218
173
284
175
162
198
175
156
258
119
169
174
168
169
232
175
160
213
191
200
135
267
215
193
201
246
172
212
245
187
197
171
247
133
213
264
167
238
243
184
217
211
187
267
203
220
245
191
216
181
219
144
179
236
195
141
189
143
189
204
188
203
127
184
144
236
201
177
226
192
208
255
168
114
223
184
168
198
200
213
253
223
206
183
208
194
213
186
170
184
219
152
228
146
211
205
130
170
191
164
226
237
155
219
232
190
182
130
225
201
143
191
230
189
231
177
194
274
203
239
239
262
176
287
210
148
223
210
203
177
179
159
256
247
236
210
260
245
222
213
167
184
246
162
184
189
246
187
182
177
199
180
159
183
203
165
135
213
177
117
192
167
216
206
194
162
196
244
222
191
218
231
229
176
176
232
233
163
148
205
211
182
215
262
146
175
274
269
212
195
192
226
273
202
210
201
233
182
183
201
221
277
222
185
217
235
252
182
248
187
208
186
254
224
166
136
213
220
201
172
198
173
196
270
238
154
210
233
186
228
192
176
182
204
200
177
222
237
207
161
195
117
191
172
211
186
175
222
197
186
198
237
264
176
147
221
195
221
229
139
142
234
227
219
272
287
233
198
202
226
217
197
182
160
232
173
206
176
224
209
198
198
119
247
196
207
196
169
157
131
194
149
161
143
183
148
207
203
173
233
179
224
259
194
138
177
200
236
133
162
167
246
165
246
187
213
274
186
174
188
202
234
168
198
212
234
148
220
190
181
196
237
247
204
172
190
224
229
176
177
188
242
219
195
223
190
196
216
258
165
200
246
178
242
237
218
182
180
205
242
170
201
183
238
166
192
174
173
239
144
205
174
261
224
222
178
233
266
154
196
206
207
219
198
216
179
194
209
189
177
172
252
201
225
215
149
234
172
199
218
151
184
166
256
254
216
125
244
168
125
167
241
231
187
235
238
187
167
180
235
199
129
233
231
184
168
162
255
201
220
278
228
225
187
171
190
177
182
179
208
217
149
204
169
237
140
221
198
198
193
261
144
182
157
183
245
176
247
173
176
215
243
229
193
210
190
205
246
240
193
216
249
191
206
238
182
190
188
145
236
250
204
228
195
224
243
224
191
210
153
306
194
132
207
234
114
175
231
184
222
187
175
135
193
250
204
146
190
252
189
153
221
239
181
208
179
181
204
172
199
189
252
194
232
165
206
202
185
202
209
92
197
202
158
235
222
231
195
244
157
202
210
166
203
182
166
198
191
156
195
267
142
169
166
169
197
230
184
150
195
213
107
198
196
242
226
225
202
210
201
222
220
192
192
205
196
161
227
211
164
182
180
220
168
158
206
226
161
231
178
213
178
230
248
192
279
218
147
220
209
203
204
239
192
233
251
254
206
162
184
148
184
174
225
229
193
165
225
237
160
224
247
204
198
228
225
132
234
168
174
195
235
161
183
132
146
229
195
211
175
152
208
204
248
215
244
197
227
214
204
192
199
230
243
164
198
142
128
242
143
237
180
159
225
177
152
146
211
99
254
169
254
178
146
175
242
231
144
144
233
187
157
202
198
164
254
195
230
174
154
213
261
132
201
223
254
232
162
212
202
236
210
218
177
215
224
205
218
192
188
185
188
241
207
214
167
217
193
219
263
171
222
209
121
183
226
246
206
224
205
267
204
212
227
174
206
245
173
238
164
125
186
169
209
245
203
204
208
206
182
200
185
230
188
214
236
186
245
229
245
194
171
205
258
222
193
181
164
201
201
212
156
180
214
163
150
205
186
178
208
192
232
223
190
180
228
127
150
253
203
195
171
204
133
218
107
201
173
140
212
192
137
180
192
136
148
208
206
232
205
239
168
155
211
216
185
238
217
180
175
270
211
234
202
176
210
203
194
144
173
230
223
231
181
211
186
206
216
187
174
166
194
250
196
248
191
183
202
242
182
150
239
221
207
191
221
181
209
119
227
213
227
221
216
192
193
200
193
232
227
224
211
187
264
245
232
222
278
185
212
196
190
191
240
155
214
209
205
206
215
265
253
182
253
218
170
161
207
181
199
223
234
168
167
184
188
118
212
215
177
148
238
244
184
223
238
138
194
221
195
190
214
235
188
189
168
222
213
169
181
151
224
200
142
191
261
177
125
130
200
228
222
202
219
195
206
218
249
163
216
210
208
220
245
260
200
174
225
203
238
110
181
178
128
188
204
273
227
199
242
191
187
184
205
166
157
217
166
232
198
185
257
206
146
206
195
173
203
185
198
155
231
192
108
194
138
215
162
222
220
237
213
220
239
215
240
256
218
199
246
220
198
207
158
180
156
209
256
174
248
234
219
110
187
249
168
178
221
197
197
199
226
212
138
194
208
209
193
183
190
176
166
248
175
222
183
194
191
181
169
192
173
186
189
261
199
181
230
163
252
178
151
212
223
201
208
272
145
223
191
179
230
175
200
203
250
305
214
163
192
266
181
238
217
168
188
157
226
221
169
240
169
225
167
113
270
249
209
177
190
261
221
204
285
222
273
202
89
219
183
146
211
243
184
187
173
192
198
172
223
217
178
231
218
221
158
246
209
220
184
222
216
221
185
174
140
222
179
182
140
207
193
196
153
157
203
186
209
222
191
214
127
186
168
210
199
243
239
157
176
227
148
188
215
252
233
220
205
169
162
209
244
194
228
201
168
216
176
168
169
214
181
200
202
174
251
179
215
219
128
160
189
190
201
157
203
252
225
230
162
234
229
220
150
252
190
246
184
186
197
163
197
154
189
203
162
175
217
217
145
214
219
183
186
194
253
181
213
184
222
218
207
202
165
145
188
178
145
207
194
209
211
204
183
218
255
140
196
136
181
162
268
204
218
168
155
137
125
215
232
206
155
204
190
185
247
218
208
232
192
238
177
287
200
212
209
199
279
195
240
217
181
256
225
171
244
174
194
187
153
234
158
176
202
217
179
186
110
172
186
196
212
211
186
178
150
169
192
213
187
221
235
180
216
195
209
210
247
223
254
182
136
243
177
220
196
181
221
224
213
173
189
218
194
198
248
211
200
175
131
135
178
197
188
198
189
222
219
239
230
171
122
143
208
227
197
157
217
234
256
178
173
221
204
219
233
181
134
207
231
169
159
156
201
142
185
222
219
179
153
252
181
253
141
115
158
205
198
200
233
192
172
193
201
161
219
197
230
184
199
210
227
199
189
207
208
192
179
156
245
196
197
234
200
153
222
151
181
183
205
181
267
222
265
173
141
244
257
194
206
136
205
187
215
215
225
175
143
246
207
200
128
189
240
162
240
190
232
192
232
112
202
196
242
181
142
170
242
188
104
174
162
214
162
216
222
234
234
97
222
182
182
218
185
177
185
185
199
194
190
198
178
148
184
196
232
219
191
152
212
200
228
212
213
198
193
173
188
177
175
202
236
171
216
205
219
180
211
200
186
204
177
226
176
203
164
231
180
210
206
162
155
164
260
245
179
271
219
271
224
159
130
216
179
186
217
190
187
160
188
243
247
178
234
211
196
212
221
180
159
200
230
268
230
157
199
152
249
245
198
152
184
176
217
159
206
187
185
231
198
197
194
245
158
204
240
240
202
174
183
209
246
197
224
216
212
219
226
200
201
204
170
136
179
215
168
195
219
252
218
190
184
217
252
186
196
173
178
212
256
201
258
161
222
218
144
223
223
252
260
228
216
179
179
172
231
181
198
182
193
178
214
245
193
212
214
170
165
223
195
206
230
222
213
199
180
171
214
192
216
231
201
182
128
194
245
204
257
159
199
173
227
234
210
200
171
198
191
240
271
223
179
248
234
224
189
218
250
187
231
231
181
225
175
225
235
229
215
201
191
188
220
200
172
192
207
252
200
182
219
174
151
218
180
64
180
257
161
221
192
226
179
187
181
222
189
242
256
180
206
189
145
209
215
264
193
195
135
208
221
192
172
192
183
182
160
168
188
204
234
145
217
201
164
210
188
270
202
243
255
233
175
236
200
226
233
204
139
239
202
227
179
229
167
168
244
262
245
228
225
193
175
173
179
157
237
195
247
192
177
226
253
203
206
235
211
196
188
183
248
208
204
192
211
149
155
177
191
140
204
240
225
223
182
204
157
220
226
249
201
253
182
178
225
224
200
239
193
209
199
243
189
152
182
193
170
208
166
220
166
175
228
250
154
254
201
200
153
126
188
214
249
213
144
173
178
198
184
233
148
187
190
119
163
137
168
186
176
228
256
216
238
235
242
147
247
230
194
192
228
239
225
142
186
246
196
185
265
211
230
141
202
188
194
227
188
162
198
154
224
130
250
111
175
217
234
215
202
249
213
231
258
164
185
182
219
166
162
124
183
174
165
230
151
143
189
270
180
170
245
230
175
227
222
224
160
218
165
148
173
178
213
205
212
175
261
202
167
215
204
174
202
241
153
232
188
221
204
179
211
191
152
210
149
133
168
163
161
169
227
261
219
174
176
214
168
177
218
235
274
143
195
171
203
203
175
160
187
220
257
236
205
210
244
214
219
166
151
226
217
261
193
222
221
230
215
188
144
203
189
229
271
225
150
223
190
182
247
202
178
245
182
222
251
224
192
168
265
226
228
224
243
151
185
256
166
147
184
232
175
241
233
215
203
223
215
243
200
206
206
222
209
182
206
194
214
159
166
174
162
215
193
216
241
233
229
155
157
177
171
164
149
280
161
204
174
205
228
184
162
194
219
217
175
253
168
150
117
134
206
172
180
171
192
109
208
252
184
206
213
232
248
190
217
245
216
189
235
243
239
232
215
246
178
125
297
249
170
143
167
176
195
229
147
215
242
210
214
154
251
189
203
214
215
229
138
206
214
159
184
261
187
232
209
192
190
225
245
115
149
204
138
214
178
224
235
202
240
194
171
233
192
188
187
209
168
224
217
115
177
216
206
204
203
223
163
255
248
232
184
236
201
230
193
197
182
172
152
189
225
197
160
206
171
190
202
175
223
175
185
197
223
210
210
175
139
172
251
233
269
223
195
178
243
210
177
136
232
145
212
221
184
256
208
136
223
211
228
201
194
197
223
244
188
158
198
252
140
235
184
209
177
204
167
237
200
175
156
234
173
234
267
222
242
211
198
223
212
219
206
240
165
236
246
92
199
189
199
228
168
163
200
204
162
216
218
225
206
214
141
163
191
264
246
205
181
269
226
231
164
86
200
203
224
174
192
184
187
187
124
227
181
217
243
183
175
231
198
141
205
200
172
191
268
210
232
234
163
198
210
140
164
271
187
265
199
192
219
187
222
223
199
239
226
226
155
228
212
177
244
197
236
182
246
174
183
222
203
213
157
192
191
135
144
170
192
206
198
137
203
206
203
224
195
205
160
145
260
178
224
183
181
185
172
276
200
190
176
207
137
202
249
248
270
172
111
175
207
212
176
182
199
243
169
169
263
209
223
191
176
227
183
178
178
169
167
172
210
162
143
245
191
256
235
219
245
129
245
188
180
274
181
147
256
226
198
204
245
241
185
157
194
175
205
173
125
251
219
233
195
181
238
270
235
158
186
215
219
241
199
131
186
188
172
194
252
204
225
250
172
184
264
167
154
155
184
171
243
227
165
184
232
225
191
213
130
164
220
154
127
187
209
182
209
185
249
200
196
241
195
159
205
186
174
248
216
203
183
204
137
195
168
197
190
269
209
207
184
214
202
152
168
193
167
252
172
234
200
202
251
268
233
200
162
199
218
194
193
193
166
227
175
191
145
231
182
224
222
167
176
117
215
141
201
241
203
186
225
240
131
221
237
179
189
244
216
209
228
175
152
158
139
139
211
221
167
222
216
235
186
156
141
196
215
151
254
212
217
218
173
258
251
202
214
182
173
197
216
252
240
209
258
232
220
162
204
200
200
266
208
225
242
216
147
151
201
273
232
223
177
213
184
189
244
169
208
164
215
202
201
211
227
206
216
221
209
146
247
190
252
205
165
253
224
187
250
169
181
175
117
211
181
192
273
151
196
192
222
220
219
239
224
290
231
146
226
159
143
180
199
207
171
202
153
166
228
200
168
235
140
161
160
197
199
179
178
186
165
175
146
205
186
198
261
122
199
155
262
244
183
182
208
226
157
218
244
232
170
252
241
245
203
213
250
193
175
274
248
196
183
160
172
214
180
138
177
215
230
208
256
188
217
193
242
236
197
124
178
182
184
134
211
215
193
126
208
163
238
193
192
251
190
243
156
241
222
208
134
183
183
180
167
205
196
224
236
176
157
111
172
205
240
197
234
213
213
206
228
168
238
265
210
186
191
207
243
196
158
200
231
241
180
190
206
227
147
231
284
239
201
173
213
213
194
221
178
242
187
203
207
240
221
207
254
222
111
195
178
232
226
171
185
197
232
216
175
189
221
199
172
190
234
156
151
249
171
139
208
228
169
234
200
200
194
201
161
252
217
199
194
202
197
257
194
205
101
209
206
245
210
220
171
180
196
238
240
206
197
250
226
226
209
203
233
182
171
205
223
177
207
211
149
201
236
178
155
192
203
249
191
238
207
247
177
271
225
217
188
160
154
219
172
131
187
180
108
186
188
177
176
217
271
193
189
229
175
223
194
165
144
191
119
138
242
196
229
189
237
165
143
204
244
166
210
218
214
170
252
219
233
203
194
208
224
140
245
252
255
214
207
202
164
229
150
209
203
205
233
230
227
250
208
260
246
206
161
167
173
182
206
195
172
174
210
207
195
170
237
186
259
177
182
220
169
155
166
257
157
185
177
145
172
236
200
160
267
240
242
183
206
203
210
141
200
211
156
161
180
207
197
227
189
216
251
219
252
220
188
206
176
186
167
173
208
225
180
144
161
194
219
217
163
204
185
211
218
219
117
223
173
235
258
220
191
269
224
200
197
231
203
159
213
145
136
240
202
202
225
224
209
241
165
199
217
206
191
259
236
170
193
152
171
175
246
172
219
195
178
175
193
138
231
159
199
258
237
220
209
159
174
208
170
244
150
133
162
236
180
147
174
206
137
291
243
147
236
187
221
189
185
215
217
175
167
214
211
248
238
176
202
152
164
228
266
212
225
265
201
167
199
195
212
224
272
183
248
188
204
219
282
168
128
224
171
191
229
147
203
207
266
172
218
219
229
246
219
214
187
236
152
237
149
206
212
192
196
182
187
234
282
209
196
253
203
246
205
183
202
217
202
162
159
164
238
202
167
203
249
200
176
241
151
224
239
196
152
209
170
229
209
224
207
202
200
216
137
215
195
271
210
154
134
184
228
147
204
162
252
140
239
206
258
215
223
197
196
236
135
190
197
216
190
200
202
259
151
218
139
146
259
200
214
243
125
232
191
172
204
196
197
193
110
233
157
242
218
231
187
220
180
232
258
238
174
139
248
149
155
143
227
169
168
180
159
159
181
229
191
164
211
180
191
217
199
288
239
152
164
190
176
220
196
267
182
182
159
201
236
116
207
169
174
156
211
224
202
290
264
180
185
212
218
223
205
225
199
158
151
195
179
169
155
244
230
219
208
247
225
107
221
218
240
199
201
212
166
215
207
199
223
161
229
152
194
194
201
199
198
155
198
159
214
189
175
269
168
200
204
122
198
202
169
181
220
195
179
191
131
195
223
166
207
109
184
225
247
181
187
223
253
226
198
180
151
245
197
140
242
224
235
207
190
118
147
200
156
198
195
200
239
224
182
204
187
85
221
206
222
165
234
159
211
193
184
195
188
253
214
178
222
182
252
183
254
187
210
225
185
241
174
204
226
175
292
250
238
197
120
175
194
250
219
194
202
214
176
179
153
193
267
210
226
208
206
187
243
219
180
223
181
142
222
249
232
188
137
182
251
225
235
226
185
188
237
181
211
196
225
208
213
182
126
211
158
178
183
198
210
186
153
259
213
192
204
135
255
195
214
221
232
164
133
196
178
156
202
252
215
168
217
206
252
224
234
222
293
152
168
190
169
204
263
236
211
149
192
231
257
163
203
184
204
177
208
211
177
212
155
188
223
150
191
231
236
202
218
198
206
255
140
252
172
237
200
294
200
222
213
182
207
206
228
193
158
231
230
211
179
164
174
163
167
195
209
174
131
183
205
180
231
214
240
202
173
219
181
203
276
253
172
243
189
160
212
208
249
211
166
209
219
206
186
231
160
233
172
179
203
192
260
241
247
184
212
265
194
202
177
187
173
256
265
244
183
177
229
161
191
198
157
194
120
161
186
211
155
198
205
209
197
190
166
162
267
214
167
191
147
191
208
198
224
203
166
210
187
222
192
191
213
203
206
179
120
185
233
101
224
156
218
226
231
154
229
279
208
148
195
200
224
225
199
168
199
232
250
209
132
191
176
207
206
183
184
104
165
186
204
195
202
193
162
189
206
183
193
155
186
168
171
283
202
173
106
189
216
210
186
219
210
253
177
182
177
231
160
221
229
221
194
231
233
200
173
196
185
145
175
218
223
231
183
164
210
208
174
151
141
191
185
201
183
242
182
181
187
222
236
225
192
180
200
187
205
232
192
213
178
197
185
182
163
254
165
272
127
278
210
272
175
161
218
243
175
222
185
167
166
240
164
227
288
182
205
180
245
214
129
229
132
231
206
212
132
222
204
229
150
179
209
141
131
147
192
212
226
192
239
201
215
182
275
165
242
184
243
236
179
225
210
222
191
191
182
209
195
239
157
165
146
218
289
156
216
208
273
190
183
183
245
188
235
205
225
171
242
213
241
185
194
169
169
243
192
151
265
211
226
220
210
187
218
261
149
213
190
99
156
219
233
176
271
196
215
204
173
256
212
169
223
196
217
152
254
231
190
145
187
230
224
264
211
212
210
169
203
227
176
158
156
193
193
179
149
224
184
159
212
169
224
163
251
198
220
186
217
219
189
225
173
208
209
224
166
233
150
249
266
213
151
145
218
212
183
122
251
243
189
194
200
200
226
186
237
245
271
226
188
225
190
224
253
187
210
196
210
204
218
162
201
249
250
192
249
227
281
183
239
184
201
214
233
216
204
152
201
187
171
236
145
200
185
204
238
220
238
182
203
206
160
185
190
137
151
249
195
208
254
235
152
188
179
159
174
197
266
218
148
226
241
186
238
158
227
211
234
212
236
257
212
179
213
240
247
222
224
178
245
223
227
204
142
173
229
196
228
198
155
179
195
184
193
203
198
226
192
231
130
212
201
182
183
145
236
108
274
272
217
221
186
239
177
223
221
190
183
204
197
181
202
259
210
171
255
258
174
181
204
215
155
184
197
178
201
205
210
232
215
213
245
185
179
159
214
208
215
175
211
229
146
202
195
205
146
181
223
164
246
228
205
175
149
189
183
141
159
244
226
212
195
256
175
235
241
165
183
219
190
170
210
239
225
267
214
196
223
171
209
171
248
158
227
225
208
179
190
134
213
221
245
241
176
153
224
240
254
143
217
195
222
174
256
213
131
231
186
264
174
205
148
131
151
232
103
157
188
238
227
214
222
200
178
199
274
238
170
280
165
213
234
195
242
222
220
251
189
263
198
269
225
155
221
234
175
175
220
180
166
173
167
203
169
248
222
185
167
150
172
206
140
209
219
244
215
246
173
215
204
139
195
234
220
234
211
145
194
222
257
175
237
164
175
169
227
162
219
165
209
213
280
220
268
209
214
193
186
205
187
149
201
201
255
195
225
177
183
206
109
159
171
203
198
216
199
192
204
233
225
157
224
172
206
225
178
187
178
254
199
193
182
201
210
214
224
185
239
213
219
158
179
244
177
236
221
216
151
198
245
183
234
175
264
174
181
240
151
213
219
166
192
206
179
190
152
200
200
194
242
209
202
200
163
181
199
248
195
167
216
197
225
231
192
186
229
141
163
168
162
213
149
185
211
210
132
201
195
214
174
164
254
236
212
170
193
205
219
206
255
169
206
211
207
165
207
199
213
230
178
147
240
158
156
189
203
241
191
236
173
235
200
217
231
210
188
195
184
238
163
139
182
234
275
222
196
215
135
229
131
168
157
229
166
227
160
274
232
191
211
188
186
255
176
265
188
211
189
155
155
175
218
137
145
213
221
226
210
214
213
272
257
183
217
246
206
229
171
182
138
188
304
196
167
199
114
160
211
177
248
228
213
186
182
250
162
172
179
197
220
230
146
205
222
193
174
186
201
245
256
234
177
233
204
212
239
187
241
209
229
204
226
200
145
230
192
186
237
191
237
216
184
192
250
169
186
162
193
239
220
217
144
109
167
184
228
187
230
177
244
238
249
196
200
168
187
232
197
188
193
146
191
194
185
263
164
227
199
178
206
175
213
172
198
150
183
217
244
186
179
210
199
130
191
249
156
173
147
171
206
193
157
165
186
252
186
271
202
165
224
199
194
240
231
227
222
223
198
204
169
228
197
231
191
229
211
240
175
245
194
152
160
179
228
160
195
199
206
144
216
204
171
232
254
173
211
187
133
187
215
182
227
212
240
231
120
248
155
186
153
208
111
214
220
217
196
215
234
186
175
237
220
260
192
256
184
246
195
223
176
216
180
144
219
194
146
184
177
212
216
202
266
200
231
245
138
234
132
236
172
216
156
180
148
207
207
241
197
181
207
204
247
215
194
150
222
252
252
248
211
146
201
224
269
180
192
197
222
132
210
252
186
162
182
191
230
208
166
214
184
187
253
121
216
183
188
175
196
223
169
218
206
192
134
194
232
232
221
237
245
179
238
199
178
164
174
155
148
259
200
147
191
159
219
195
248
285
191
207
201
178
229
223
221
199
169
224
137
242
224
220
214
153
271
215
191
140
150
239
214
167
220
225
224
200
219
194
212
214
245
180
168
247
225
171
168
225
170
203
190
217
152
140
230
204
202
233
209
205
156
244
239
243
208
212
173
205
132
244
231
197
247
211
258
222
166
191
169
188
183
121
256
206
216
181
206
159
142
208
255
173
256
220
233
184
249
219
192
200
204
145
228
192
134
242
201
197
260
153
219
211
215
176
241
213
219
241
240
237
243
192
177
171
177
187
152
200
159
234
193
233
204
159
187
184
220
214
193
234
179
195
166
167
198
176
179
165
237
195
171
157
225
232
251
196
220
195
209
187
143
176
249
236
225
160
233
236
150
220
156
148
170
137
239
229
207
162
120
228
185
150
237
188
194
158
254
246
190
163
184
232
246
181
151
239
207
164
214
179
227
217
179
175
259
226
172
116
218
145
147
139
234
237
255
234
187
93
156
194
198
149
177
236
217
191
214
159
244
175
186
141
239
207
168
181
224
254
216
165
170
218
240
237
184
215
111
260
222
168
175
143
193
206
194
234
226
172
186
278
173
221
165
222
198
160
174
228
180
166
214
202
228
234
191
129
199
195
217
224
118
171
201
198
180
170
188
143
201
221
239
223
235
182
162
156
151
208
209
187
192
186
220
264
201
185
191
243
214
233
269
157
139
206
149
240
219
197
178
180
243
150
144
223
179
211
162
177
228
208
181
192
141
174
141
170
202
196
266
204
232
226
210
232
133
192
208
223
223
220
229
239
203
203
191
294
176
208
200
177
190
157
227
175
222
191
220
234
227
154
191
235
192
135
195
236
194
222
138
210
201
246
190
241
191
266
195
207
219
170
140
219
194
182
214
258
261
220
167
221
232
205
244
165
198
199
185
234
238
151
183
172
182
210
180
168
98
271
240
266
167
172
224
167
198
169
211
227
197
168
245
191
225
131
190
203
223
208
196
249
134
222
201
190
189
149
263
175
175
200
241
135
259
170
130
257
222
174
170
189
175
258
156
163
269
182
145
217
193
175
219
189
183
172
243
136
174
187
168
191
244
179
196
193
180
163
223
220
156
245
167
169
217
178
174
245
243
194
234
212
226
233
208
171
206
238
239
144
160
179
224
216
208
195
198
181
188
148
190
135
217
193
176
239
227
162
257
258
129
194
180
181
166
204
246
228
139
179
199
202
196
205
157
173
210
200
201
197
246
207
175
232
207
248
277
219
175
243
249
201
198
202
191
219
187
229
222
233
177
258
245
215
224
219
224
157
251
203
167
228
203
217
179
218
192
176
198
235
188
226
163
186
176
204
189
147
176
149
233
159
176
168
235
224
218
208
183
229
216
242
203
251
212
225
183
241
163
218
183
186
142
142
160
138
202
207
183
196
214
188
234
240
163
218
252
220
193
177
206
181
175
218
209
220
195
226
232
247
201
106
232
185
191
199
196
218
149
238
179
231
173
197
125
179
163
226
221
244
150
160
178
192
192
243
192
190
214
191
211
198
192
216
153
199
182
154
180
259
218
164
174
233
203
163
107
200
220
149
109
265
171
208
207
202
198
274
216
282
187
166
231
183
180
225
185
261
202
168
175
193
146
185
188
147
155
199
237
189
221
242
206
228
177
238
166
258
222
194
206
230
194
139
223
192
201
96
203
155
148
189
178
203
178
206
161
216
167
223
205
223
208
154
161
180
175
230
227
158
219
208
234
206
160
214
171
225
188
137
186
129
222
166
218
198
225
173
202
202
230
260
191
244
179
143
264
214
199
160
170
205
207
222
215
246
191
147
193
230
225
211
159
186
161
222
138
164
254
271
227
188
170
213
171
221
233
183
210
221
250
231
197
189
213
201
203
157
210
216
175
209
151
201
193
232
173
234
187
230
164
191
232
214
244
194
211
189
203
184
226
191
182
238
187
253
217
223
187
229
211
179
150
258
146
177
219
187
161
208
192
157
176
198
208
196
198
198
228
236
221
242
167
197
246
183
233
223
210
164
234
239
224
245
198
254
212
169
234
223
211
186
165
203
149
194
177
270
219
227
135
185
212
251
259
244
182
144
178
263
146
206
205
204
184
202
248
200
191
207
264
256
169
193
203
238
240
200
170
194
247
179
196
186
228
134
253
177
227
188
162
221
192
175
186
209
227
162
141
140
223
217
220
190
164
197
218
239
164
175
154
162
136
239
160
265
163
214
188
210
263
144
278
197
160
201
235
166
211
187
114
223
290
230
163
166
242
234
160
150
194
201
159
171
197
233
172
173
192
235
169
216
222
175
228
193
207
215
189
206
233
228
173
151
224
213
200
141
193
172
192
227
260
194
219
220
189
155
208
161
241
164
155
293
167
238
244
249
181
216
183
217
193
210
235
193
188
177
178
149
251
235
216
211
214
251
257
175
205
232
196
150
211
235
201
205
209
219
148
276
208
200
259
160
192
161
199
225
208
241
225
204
118
179
255
230
157
208
202
193
208
150
171
182
200
177
242
238
223
165
187
186
192
193
279
205
189
232
167
188
220
151
209
215
201
207
244
125
210
207
151
197
164
255
141
217
160
177
183
218
173
216
204
197
199
217
150
110
215
165
193
205
219
221
170
237
244
208
242
192
265
204
176
215
195
210
192
153
177
198
171
218
233
190
224
247
184
204
195
241
166
229
179
130
244
194
204
264
249
201
225
166
208
231
231
137
194
210
208
228
174
218
229
176
241
237
208
193
216
232
210
236
190
223
230
182
128
212
191
202
232
240
135
182
158
179
181
154
194
204
170
229
187
194
206
211
228
243
169
205
224
227
224
189
189
209
138
157
203
151
243
222
211
163
213
196
121
264
150
228
170
210
223
220
212
273
230
200
116
181
213
134
240
214
212
240
171
162
215
182
167
209
281
214
207
259
205
203
235
210
185
243
250
228
103
220
236
219
187
172
202
226
186
211
141
204
131
219
208
188
230
198
152
194
190
223
163
138
263
211
190
251
180
257
176
180
206
169
255
203
176
190
211
229
154
191
251
232
240
186
200
230
219
238
152
157
202
200
178
196
244
219
206
200
131
201
193
240
217
132
272
138
202
235
192
178
239
229
250
240
204
228
243
240
173
173
188
263
207
190
207
208
136
163
194
202
206
161
235
258
242
211
234
131
131
228
222
194
200
220
236
146
198
209
198
216
244
207
133
166
200
176
172
291
207
224
194
221
167
154
188
192
212
221
189
161
229
174
278
266
104
204
154
150
225
216
222
245
249
129
216
159
199
189
224
213
189
216
240
243
184
215
277
174
219
215
245
254
177
221
191
186
189
144
197
238
204
209
194
267
169
137
180
163
248
197
252
222
261
186
190
167
120
96
182
194
250
178
231
223
186
200
197
210
218
247
198
242
210
202
197
160
126
132
164
251
248
210
258
203
193
191
135
207
233
197
244
184
139
253
196
202
184
231
207
227
183
191
195
146
156
182
227
164
211
168
157
195
216
224
146
162
227
215
161
224
189
261
235
231
175
232
229
204
154
195
224
203
202
198
231
173
253
154
182
219
194
190
231
175
247
218
174
115
174
155
192
142
234
260
152
184
244
178
190
152
204
169
283
203
163
244
189
235
185
184
201
154
248
208
154
158
132
165
208
205
187
223
228
173
171
179
159
233
204
193
213
175
240
294
219
188
133
206
150
129
220
196
237
131
224
244
198
202
187
144
214
198
220
258
146
211
270
208
159
209
188
196
187
153
205
275
161
220
153
204
166
157
185
215
134
197
208
230
203
238
162
168
234
174
250
264
166
182
159
163
179
232
188
197
183
131
243
179
223
212
260
179
234
226
171
166
186
147
231
202
214
206
156
201
279
189
214
199
185
212
213
221
165
171
217
224
226
203
262
210
108
196
212
221
200
185
182
154
177
196
195
252
204
197
189
185
211
249
227
158
169
197
251
208
168
257
203
178
154
208
203
246
198
161
199
199
115
228
238
229
168
228
200
234
233
213
252
175
191
165
225
209
241
170
279
178
298
276
142
125
230
223
227
185
200
241
155
214
178
164
208
174
163
178
224
273
222
160
182
196
200
194
222
199
230
245
206
199
199
213
188
191
232
218
238
182
197
138
172
211
233
157
165
244
191
181
244
131
171
260
217
236
203
169
217
176
264
262
177
215
202
230
204
249
207
162
218
224
146
210
240
230
215
247
167
237
171
185
196
243
173
176
219
207
257
189
171
224
231
188
217
257
195
232
200
210
181
227
138
208
185
204
173
206
209
179
161
224
207
200
166
207
198
175
195
213
161
213
243
198
228
193
202
201
168
197
160
209
193
253
203
173
164
278
207
213
209
252
200
192
251
225
208
171
194
191
228
165
242
263
188
155
155
189
192
203
222
251
227
195
178
220
125
117
190
234
140
202
211
265
222
145
184
165
166
187
162
244
226
156
205
184
230
209
139
195
217
213
138
214
161
204
217
163
185
182
183
178
167
188
217
253
265
146
200
201
205
193
205
236
237
195
228
222
228
209
182
262
185
229
179
176
236
195
218
181
178
135
151
164
203
282
162
257
183
223
180
202
141
228
203
194
188
200
244
210
240
239
176
210
205
154
224
199
192
164
230
211
189
166
149
222
192
244
230
164
186
197
255
197
144
153
180
185
204
245
166
251
198
169
184
155
238
189
253
176
179
210
246
126
143
196
158
193
173
244
242
210
183
198
197
134
199
196
227
151
197
251
251
172
266
196
174
205
178
170
207
153
158
197
180
214
222
226
213
173
167
233
181
240
157
209
175
217
191
121
118
181
240
227
171
177
242
236
198
191
182
168
105
144
180
157
178
192
191
283
194
132
193
211
258
200
204
136
179
109
256
148
204
195
164
296
148
161
208
137
216
222
200
212
199
235
185
172
243
215
130
203
222
234
206
132
192
205
197
209
213
206
174
227
209
171
189
185
226
214
214
203
164
238
213
208
235
193
169
235
188
169
140
150
180
113
153
202
174
139
129
189
230
185
184
200
231
222
172
215
203
170
220
209
181
202
161
226
214
200
222
146
240
177
175
248
182
241
181
198
243
149
189
173
270
253
218
257
200
218
209
214
250
196
235
208
202
241
214
179
195
144
243
190
201
254
195
300
236
221
186
276
196
246
173
259
206
184
282
207
158
191
179
172
197
181
119
198
215
131
193
285
212
216
209
154
203
204
271
169
232
181
213
223
198
171
220
197
206
187
240
220
152
195
255
233
187
165
222
167
189
162
166
205
233
205
208
169
188
186
243
150
201
130
176
201
161
126
202
217
224
210
147
219
155
212
180
200
218
205
146
199
198
160
238
189
173
261
122
194
150
230
142
184
211
188
197
213
162
199
231
218
205
155
238
180
221
288
187
236
249
190
180
181
189
230
240
214
202
191
182
208
190
195
146
237
236
193
177
209
189
227
207
222
242
218
226
202
155
136
254
162
217
220
245
225
173
235
235
290
246
169
167
153
275
186
190
185
250
241
171
145
195
213
217
206
174
228
200
212
120
165
187
175
196
199
180
184
214
198
207
215
238
235
225
221
158
189
230
254
165
239
247
259
191
237
218
199
177
180
199
186
185
236
218
169
165
206
152
114
170
180
172
170
222
228
193
172
183
174
215
167
229
261
226
210
140
191
213
185
225
253
255
184
175
195
192
162
177
266
151
215
215
203
213
249
219
139
124
194
235
249
218
216
235
189
221
189
221
213
185
189
192
207
200
222
214
209
168
148
210
176
238
177
237
173
119
205
207
221
230
177
169
211
161
180
230
212
236
216
222
171
194
232
172
175
149
186
203
162
213
243
205
240
231
164
261
173
174
211
207
221
209
181
198
181
211
167
187
180
200
198
175
185
199
212
233
169
233
189
182
197
225
227
193
216
166
182
137
152
227
197
222
198
226
246
199
228
197
203
220
226
171
175
162
220
205
256
212
183
220
182
180
197
193
209
219
239
205
210
200
196
236
171
203
153
261
174
221
141
192
128
237
197
181
168
175
176
199
210
205
198
212
227
205
213
213
203
252
149
246
196
203
263
246
218
192
189
247
229
194
136
188
172
187
239
262
170
165
117
238
185
220
177
177
144
237
193
236
189
232
169
207
224
236
201
216
226
225
248
221
157
230
195
224
206
198
220
168
180
189
185
199
235
210
183
246
234
245
244
218
186
207
262
180
166
214
224
231
220
219
199
134
176
235
192
181
171
228
189
203
270
218
112
162
274
200
154
235
198
196
246
184
202
206
204
170
199
236
188
221
195
221
207
215
154
178
208
188
215
239
157
178
179
225
223
260
203
189
250
177
188
218
146
261
152
214
153
257
128
143
183
186
187
181
187
161
170
225
198
193
251
201
196
188
181
254
152
166
175
186
142
212
172
209
176
158
202
224
167
210
211
180
160
204
126
191
245
157
216
191
174
171
212
166
139
154
245
231
190
233
226
183
234
186
222
194
154
202
207
130
218
147
201
173
104
199
132
245
163
206
155
149
173
150
241
233
152
165
206
212
158
154
146
218
221
213
266
216
219
188
216
191
166
198
193
201
253
209
225
285
217
167
239
200
205
229
197
179
150
192
176
172
240
214
159
221
231
136
222
154
199
191
197
239
190
173
198
157
183
131
264
217
192
215
174
216
146
241
156
200
165
186
230
264
152
186
180
178
218
157
129
228
184
211
217
153
260
205
235
213
231
198
209
181
227
174
254
172
206
212
168
210
198
187
220
176
165
156
155
225
186
213
203
220
225
222
188
181
165
158
215
174
197
190
148
295
202
203
223
187
235
204
198
191
188
161
161
204
142
145
160
191
200
218
254
168
224
189
209
163
98
126
233
244
200
252
178
256
196
210
256
163
241
153
188
191
155
229
174
205
106
176
187
246
167
218
266
178
177
190
179
242
185
175
269
149
191
185
163
148
130
179
248
179
272
212
221
215
198
189
153
218
215
167
180
230
181
219
156
152
209
174
135
175
222
206
191
166
171
209
198
209
169
184
220
185
151
217
258
200
195
160
192
136
199
181
166
164
208
204
172
185
202
182
145
202
255
213
165
205
212
188
203
243
192
148
218
136
241
161
225
217
195
222
226
222
250
213
240
189
175
144
153
253
141
186
245
215
239
159
241
226
253
204
225
184
186
170
217
178
165
268
206
144
138
197
233
156
214
227
184
150
253
195
173
194
245
227
209
251
164
192
260
193
184
185
197
236
267
207
210
223
226
216
171
264
225
153
175
188
183
190
254
133
191
105
173
215
141
166
179
179
139
187
240
231
173
191
187
218
241
172
215
222
222
168
190
206
205
193
193
201
192
129
226
203
227
201
164
151
199
182
249
211
154
195
189
210
185
177
188
193
186
234
209
272
212
235
133
125
200
205
216
174
197
236
238
164
233
202
205
247
168
209
146
221
174
233
181
203
176
213
219
154
200
183
224
203
165
141
214
186
209
207
219
198
151
194
163
160
191
184
160
197
228
172
220
235
227
197
183
151
189
211
264
168
245
205
175
182
196
242
120
172
266
147
168
262
246
209
169
204
202
186
165
179
203
275
160
191
140
186
246
244
216
235
211
258
213
221
237
191
176
142
259
206
170
192
211
171
238
200
229
227
225
196
207
246
177
207
196
237
223
175
196
181
153
210
244
110
193
159
218
198
182
214
203
133
157
185
182
234
226
160
191
190
182
170
191
224
258
168
137
203
219
182
195
150
151
237
261
188
168
113
185
186
182
198
249
158
192
171
209
267
154
211
212
225
201
239
197
216
242
199
126
208
166
162
228
134
211
152
196
216
125
214
237
186
161
224
201
220
204
171
238
217
177
206
254
171
208
193
131
123
209
224
161
188
222
179
211
180
226
101
209
229
158
212
199
238
243
190
220
173
176
188
207
175
224
160
211
274
222
227
153
226
193
213
190
224
186
210
161
167
244
202
230
219
204
121
224
214
204
132
187
204
231
142
201
235
252
176
205
192
226
228
293
166
216
245
213
265
179
183
170
155
222
164
212
158
219
161
186
226
174
160
183
161
182
165
221
267
190
221
255
228
210
250
223
205
139
224
163
147
189
205
199
182
129
214
201
183
186
193
262
163
183
213
183
250
211
189
250
197
196
193
227
203
232
193
203
211
226
251
257
236
202
180
195
177
220
208
161
219
186
235
242
215
222
235
185
185
205
258
211
174
233
230
213
249
242
180
192
256
226
183
204
237
244
251
248
120
181
262
219
207
181
196
227
232
137
168
224
185
191
180
251
137
135
188
218
216
220
219
174
274
193
124
227
165
233
220
224
199
236
165
192
182
197
170
181
254
210
241
254
228
175
204
190
240
153
257
202
163
256
289
196
208
169
199
239
161
220
176
173
238
192
159
192
185
230
149
227
192
253
158
129
235
211
200
164
167
140
249
185
199
196
194
218
232
212
187
230
230
199
188
145
206
166
224
279
222
143
217
217
215
161
202
226
164
188
199
163
204
252
201
166
153
260
184
147
233
196
209
159
262
178
169
202
170
221
189
166
188
198
201
163
242
182
214
252
181
192
145
147
173
164
215
194
177
161
181
209
262
223
187
183
171
206
127
217
232
185
180
232
269
208
204
184
189
171
223
198
227
182
250
231
163
158
190
176
158
190
212
158
182
210
235
174
163
159
241
224
208
196
222
202
216
168
239
226
139
288
206
126
253
167
223
247
175
169
143
180
181
219
277
232
254
149
163
151
194
192
154
190
252
148
250
128
165
253
223
245
260
216
156
224
174
207
239
245
209
216
178
179
236
212
264
223
156
198
196
154
205
212
210
198
200
226
237
202
212
169
230
169
204
250
208
223
172
199
228
134
202
203
192
202
174
204
205
182
156
169
261
216
158
228
167
122
221
202
134
203
180
209
227
205
143
221
199
218
229
217
213
234
206
205
201
227
254
215
200
234
165
192
308
151
220
196
260
191
166
273
235
161
206
243
245
263
191
138
255
222
165
250
193
208
195
183
255
231
183
221
171
124
173
178
163
250
178
212
179
196
193
181
204
242
187
229
247
277
188
261
184
242
243
150
244
135
178
228
218
196
243
231
249
203
217
236
236
165
183
216
240
266
223
189
226
220
182
225
151
230
247
110
168
181
218
204
178
235
211
180
193
222
247
222
224
191
159
182
206
190
179
273
201
167
271
182
183
135
220
227
240
195
190
189
173
247
200
217
189
183
207
203
154
184
190
240
183
181
187
251
228
187
178
206
241
207
180
218
242
189
228
155
235
173
255
191
203
205
181
173
258
180
245
148
254
258
238
245
184
191
240
192
163
225
195
243
186
208
207
196
175
243
114
206
217
191
253
227
210
228
166
177
189
232
221
219
229
217
207
231
244
212
215
221
208
195
209
201
238
202
170
212
210
251
241
214
262
190
236
207
164
207
134
203
240
217
196
203
238
178
198
210
207
189
223
240
179
174
136
208
226
196
180
202
213
186
214
176
229
222
218
222
200
221
203
223
199
245
197
234
152
216
208
263
175
176
140
246
211
163
194
209
167
166
177
236
121
198
216
145
225
260
200
153
161
251
178
243
194
201
167
250
190
241
230
157
172
166
226
202
163
209
217
190
155
191
244
156
170
228
212
164
183
214
191
190
259
184
251
207
182
181
225
195
124
189
154
230
252
144
227
185
226
201
187
207
213
176
226
186
191
220
221
162
196
186
263
204
254
159
202
208
237
194
240
223
262
185
242
182
124
241
205
162
132
172
209
236
188
134
223
181
198
225
189
208
152
231
206
183
219
189
144
201
211
200
214
235
205
212
135
212
157
196
198
174
132
168
135
170
197
218
189
197
190
178
232
162
173
197
212
207
168
200
141
239
220
168
209
231
223
241
199
255
205
230
285
150
225
229
187
173
194
212
182
128
222
153
208
233
229
237
205
207
218
195
209
183
260
247
237
224
232
217
213
253
203
194
212
186
172
201
186
222
235
217
192
207
202
207
223
209
189
218
199
216
182
241
147
289
228
174
172
167
147
214
187
197
219
211
254
170
139
168
120
254
189
233
184
194
196
250
205
283
179
162
222
140
245
143
228
157
196
235
188
191
283
274
265
241
247
213
182
208
168
247
199
188
141
218
174
196
182
221
264
183
231
213
153
202
192
209
124
164
211
210
223
164
269
212
174
209
150
251
179
163
257
204
242
153
228
237
198
209
236
179
230
185
207
138
145
171
146
161
219
150
211
227
188
165
180
176
189
227
197
215
202
142
263
234
169
136
216
213
222
132
195
220
156
202
204
209
185
208
197
189
210
223
189
177
201
201
101
209
230
199
221
162
177
210
148
198
208
250
259
183
188
216
252
155
247
244
184
129
162
152
238
176
196
211
150
179
229
230
185
206
176
169
187
150
203
99
182
173
123
227
257
178
229
162
220
172
190
192
230
207
224
187
212
206
225
207
233
133
200
186
194
237
150
235
222
195
205
191
218
232
215
177
136
208
192
198
232
216
161
199
220
209
182
183
174
186
214
199
237
193
200
97
256
163
227
178
145
224
198
152
198
168
154
229
201
212
122
182
243
245
257
162
214
233
180
259
204
200
180
176
216
216
195
243
193
232
124
163
250
191
228
213
235
165
205
227
167
245
153
189
254
222
170
184
129
176
209
178
217
224
202
217
176
165
218
162
151
172
236
209
133
179
192
248
180
214
158
201
250
227
170
206
235
215
182
214
191
222
226
189
183
217
136
263
224
221
192
215
201
203
181
219
183
235
245
197
187
234
246
222
149
227
184
205
249
202
191
174
242
231
145
214
159
162
172
193
250
192
246
224
182
224
210
220
172
158
154
230
216
178
232
205
184
218
207
186
247
198
210
176
224
206
162
190
195
176
211
255
224
177
164
157
194
215
131
277
206
170
235
225
178
163
161
236
207
188
238
173
216
265
186
252
176
201
164
110
247
186
226
207
235
155
181
210
261
224
134
237
159
230
167
189
205
276
208
206
210
227
207
230
210
187
221
188
251
194
193
151
207
127
201
182
166
214
148
163
134
253
138
170
203
219
157
144
246
177
254
230
240
216
202
204
197
229
237
195
152
139
230
178
173
176
179
216
216
183
167
221
198
214
132
172
179
256
134
240
223
183
171
193
231
232
151
240
238
251
240
201
182
211
261
180
143
174
203
207
221
183
181
231
210
158
178
126
206
168
183
237
209
226
206
141
133
229
186
140
201
221
199
195
193
195
191
205
204
230
194
184
242
191
163
212
171
218
227
237
194
226
176
169
215
164
220
201
228
243
186
210
167
263
183
160
171
98
192
239
195
188
192
201
247
218
225
179
202
204
233
219
209
220
189
183
202
198
174
189
190
55
164
174
182
224
208
175
221
173
241
180
224
209
171
189
202
206
201
181
253
221
180
241
214
192
171
193
195
195
238
183
206
255
255
184
194
212
223
184
197
215
194
213
194
213
191
189
248
229
204
161
215
192
204
136
181
178
197
289
188
190
153
201
176
203
223
188
169
190
156
157
236
163
125
258
187
168
184
249
226
213
246
194
228
197
255
160
206
169
204
222
234
250
244
233
183
143
188
220
198
214
247
206
208
181
154
208
138
151
178
185
240
224
194
201
211
186
187
212
269
244
188
207
214
124
219
184
225
143
164
204
208
137
182
190
177
243
216
213
191
206
179
164
176
216
226
195
234
230
203
249
209
189
203
216
212
211
253
187
244
177
154
256
198
199
174
205
194
197
224
200
210
203
251
197
167
218
94
227
202
195
164
215
195
207
182
224
138
185
233
125
174
182
203
191
163
188
129
210
198
198
178
204
183
233
186
209
222
180
205
148
220
154
251
131
213
232
207
179
190
168
232
222
204
245
164
141
203
231
191
158
199
180
163
184
218
228
116
169
208
204
213
144
174
203
186
252
207
202
198
218
246
179
171
204
214
201
232
197
193
257
249
236
234
221
216
219
193
207
247
217
206
206
217
185
246
227
156
281
237
214
200
186
175
198
218
241
251
177
186
216
201
165
241
262
182
231
175
223
181
166
132
197
216
261
221
177
180
158
139
188
228
169
177
247
140
210
219
206
178
233
161
279
235
203
171
191
233
183
197
191
191
183
209
174
153
229
182
222
208
147
225
195
172
252
181
180
141
159
224
180
233
185
194
188
221
222
197
201
183
129
198
193
216
185
167
201
189
236
210
218
190
225
242
135
184
246
197
206
130
197
182
124
256
239
243
203
143
224
165
127
104
232
161
182
224
204
189
189
189
201
233
159
173
240
232
199
174
209
163
151
221
120
237
205
230
216
171
184
238
187
156
190
223
136
198
233
174
218
238
184
181
154
186
204
195
173
221
192
175
204
194
224
202
207
216
208
186
207
178
187
248
222
176
207
205
207
161
240
216
264
184
223
218
230
200
190
215
191
224
243
197
199
183
227
146
220
245
168
261
188
151
171
164
227
226
174
209
228
252
239
215
232
172
209
180
230
220
251
141
224
209
193
139
160
254
197
216
203
157
148
189
197
180
222
170
211
116
155
264
211
174
166
166
198
190
183
130
194
224
222
199
159
144
214
203
193
186
154
218
128
221
196
210
190
211
157
228
225
285
210
239
242
262
192
204
198
199
214
177
200
241
210
202
176
232
193
209
227
241
162
259
241
220
136
180
211
254
218
234
238
218
164
225
222
125
198
191
211
156
229
196
159
170
198
219
227
183
144
215
172
264
191
211
152
233
201
156
205
246
201
219
181
234
272
154
189
207
212
209
129
209
209
187
257
176
154
214
258
160
168
148
239
248
138
159
203
174
203
175
170
165
210
154
218
177
186
218
176
298
178
197
175
152
297
166
190
226
229
226
191
147
197
199
162
228
228
225
179
189
216
143
273
187
171
161
167
268
173
189
253
203
164
186
211
139
159
211
199
184
181
181
226
189
122
226
154
176
198
154
202
206
142
209
248
227
191
230
253
243
197
199
187
180
199
187
121
205
209
198
168
206
169
170
145
198
238
229
210
263
149
187
294
225
209
231
220
167
218
220
209
166
285
227
152
191
214
164
244
209
189
164
199
278
287
212
136
189
238
200
215
129
240
185
209
168
130
157
197
147
217
188
190
215
300
190
219
211
193
192
177
192
169
225
195
144
198
196
232
190
224
197
248
235
204
254
228
234
185
184
223
154
154
247
194
163
224
197
136
164
189
228
201
216
188
180
134
131
223
208
166
208
195
166
167
189
197
168
228
178
218
218
212
190
232
218
195
225
237
201
191
251
256
220
207
185
238
206
218
198
129
209
150
173
170
246
188
182
236
226
212
243
173
175
211
199
178
190
200
263
165
208
243
211
208
217
202
175
237
210
218
210
215
216
205
241
216
198
157
175
207
188
211
190
222
233
153
151
209
158
209
141
186
179
209
132
246
215
181
187
209
174
148
192
217
169
218
225
210
228
189
181
217
210
186
204
174
205
198
227
175
231
255
269
221
221
218
214
225
147
189
201
242
243
248
256
283
173
199
206
210
243
179
241
191
191
204
143
185
170
167
169
186
177
157
208
248
217
219
164
177
194
202
203
229
203
156
194
218
220
190
199
169
171
203
205
252
220
225
174
216
189
218
249
228
148
164
157
181
170
261
256
168
180
260
241
232
207
247
208
119
216
183
154
160
235
207
205
209
215
175
256
177
241
163
146
226
232
203
187
181
202
248
214
247
113
229
188
261
146
214
182
192
215
154
197
205
227
193
227
188
151
161
165
273
181
199
193
162
158
204
216
101
134
202
216
229
174
165
168
222
241
242
222
216
230
167
125
161
182
114
191
219
246
169
190
204
184
180
161
193
230
170
175
180
272
186
194
222
180
177
174
236
186
209
229
187
247
193
167
207
146
180
182
216
204
228
175
231
182
168
221
221
270
219
213
207
194
193
201
217
157
204
234
212
256
224
201
208
182
160
221
270
201
176
203
156
161
222
182
204
229
228
161
184
147
167
136
213
187
205
192
228
165
228
187
192
196
177
229
154
246
186
188
212
225
217
239
202
178
187
244
212
181
209
222
257
214
154
225
243
188
153
214
246
183
226
205
241
163
175
225
207
207
233
261
173
181
234
218
215
207
165
159
167
219
172
210
233
220
242
177
194
192
219
151
198
223
220
166
222
183
155
151
251
184
224
225
165
221
224
164
181
234
210
250
144
210
188
177
246
208
222
196
171
195
230
192
202
254
199
134
204
240
177
224
215
196
171
201
205
185
274
206
151
179
164
180
166
168
217
227
213
212
218
172
229
196
148
176
251
244
215
236
173
273
204
239
262
121
125
193
170
230
164
231
163
220
183
174
215
200
251
181
208
234
230
216
226
185
212
168
208
224
191
219
164
197
221
213
191
101
210
210
189
175
152
209
229
207
182
209
198
228
225
200
203
220
147
213
174
134
237
176
176
233
208
143
152
178
208
246
158
217
165
194
181
135
189
264
134
130
254
212
190
212
195
187
148
203
200
133
181
167
196
226
229
244
206
147
248
212
196
202
165
188
175
126
200
192
167
190
201
213
224
208
234
229
185
276
192
231
256
165
219
188
151
183
176
232
202
199
206
197
184
168
242
181
154
209
216
232
203
262
161
218
236
242
234
178
151
213
224
185
229
243
180
203
198
201
189
246
173
214
189
177
194
209
161
250
236
183
223
222
177
159
124
190
187
254
262
160
217
244
216
221
163
225
199
226
177
190
152
177
175
233
239
251
216
126
206
167
206
158
200
154
183
194
222
191
247
199
233
194
245
176
178
232
163
243
196
159
269
209
219
170
153
151
188
202
241
115
214
159
218
143
138
173
199
215
238
170
247
222
209
179
247
183
167
213
222
108
217
176
224
216
148
213
203
215
181
198
209
155
181
196
138
243
169
224
155
166
216
202
217
227
233
219
224
202
215
166
189
208
190
154
206
275
221
205
184
221
214
187
176
229
232
225
122
144
197
168
220
167
222
171
159
190
193
157
225
191
206
219
162
255
197
260
199
203
205
217
248
282
159
173
223
218
173
218
185
207
201
216
253
214
201
206
201
211
246
177
194
264
149
206
196
210
141
137
176
234
208
229
173
222
226
172
211
200
176
243
175
190
137
186
224
221
205
220
198
193
208
204
198
240
211
209
201
222
169
198
187
186
228
231
136
220
219
201
196
211
225
208
227
209
229
212
135
110
212
222
150
166
155
198
248
178
220
131
215
163
161
202
254
214
253
208
156
211
214
189
201
179
194
185
177
104
245
155
208
222
179
227
206
221
215
219
166
204
253
217
218
244
235
293
196
217
198
258
238
188
234
183
199
183
182
200
222
230
183
268
219
238
197
242
230
267
137
155
173
150
181
213
161
230
212
178
205
188
209
201
160
217
186
242
233
188
212
226
219
207
190
231
214
184
181
216
212
202
132
185
235
227
232
240
193
144
147
193
186
166
260
215
128
213
227
184
221
108
157
164
265
213
181
201
216
156
173
241
141
167
240
167
223
156
241
211
156
189
158
210
228
133
168
259
117
187
189
219
161
235
201
169
211
193
239
197
197
209
176
163
233
215
256
138
233
171
224
153
178
187
252
166
250
220
168
237
211
210
183
163
227
191
231
138
199
235
154
128
244
189
166
210
271
204
173
243
171
194
175
252
236
220
154
250
253
210
221
226
186
227
209
232
246
149
197
212
190
235
218
181
174
226
173
252
184
247
230
243
264
213
161
237
157
252
250
198
204
270
203
190
254
189
204
202
198
205
215
198
187
203
228
133
211
221
223
188
264
234
189
110
157
173
209
143
246
181
218
248
210
190
168
206
222
253
176
197
198
191
134
176
209
209
192
160
215
143
185
199
173
137
218
270
230
153
223
197
118
163
108
231
224
248
174
219
229
201
181
261
251
161
185
219
151
207
227
202
246
234
189
238
149
176
187
228
150
203
218
248
193
164
238
208
221
198
249
246
146
168
197
170
165
169
171
221
136
196
169
202
224
193
178
162
164
226
144
218
170
251
248
216
225
238
228
214
178
208
161
233
271
206
201
206
217
212
162
229
191
148
233
200
264
209
138
181
212
113
202
156
184
160
227
188
209
189
219
209
149
220
234
175
143
247
140
252
192
197
156
201
235
198
158
148
214
215
208
167
136
222
206
215
253
220
179
184
193
210
148
223
225
211
178
255
191
193
182
214
208
192
112
230
176
212
235
163
206
202
220
206
186
202
248
240
232
212
188
240
257
198
209
159
190
203
173
224
157
204
200
236
245
159
166
176
169
192
205
194
182
192
186
105
203
136
162
204
187
240
211
237
207
179
124
214
227
195
197
235
233
168
228
197
186
248
199
209
212
175
249
216
186
142
203
194
219
128
145
188
209
190
209
191
236
194
214
238
212
189
230
180
150
219
251
195
160
207
204
184
202
191
206
160
262
190
169
216
178
206
217
204
224
156
216
197
177
226
213
200
192
182
162
211
200
200
248
180
123
196
203
217
267
173
153
197
176
138
237
244
141
224
220
214
191
144
190
270
167
229
197
185
220
216
215
208
205
200
207
225
203
185
232
226
203
182
232
189
212
247
170
264
184
179
206
242
217
213
198
162
167
176
165
194
168
243
220
214
159
194
129
190
163
144
205
216
164
234
140
296
177
207
161
155
224
192
222
200
176
226
184
172
205
196
172
189
186
201
214
172
206
191
157
199
149
161
155
139
191
235
172
199
207
149
201
213
205
187
199
153
166
205
169
194
136
164
222
219
161
213
202
191
203
220
223
188
196
169
172
223
200
177
209
192
212
191
207
236
130
202
199
205
185
148
194
201
254
176
170
167
237
147
187
161
176
218
206
231
212
203
188
198
160
142
194
198
150
165
222
235
183
214
185
262
188
223
221
133
199
180
243
260
174
223
229
219
226
201
234
193
172
162
195
214
198
211
211
177
172
242
229
210
187
206
195
225
221
256
204
191
152
197
196
186
200
161
188
174
211
215
257
201
166
185
195
111
215
198
193
133
256
210
217
191
200
234
142
158
189
171
185
206
178
188
187
154
173
261
176
236
182
301
237
215
158
185
215
200
241
222
193
159
180
188
201
194
182
191
241
224
144
141
156
218
163
238
227
223
212
180
140
157
266
164
171
187
137
185
192
204
204
226
155
110
226
145
255
184
203
279
166
260
165
267
254
237
207
204
115
184
241
189
215
184
229
207
183
177
153
163
312
267
227
206
236
204
213
230
199
216
161
169
196
160
198
231
218
197
198
250
192
187
228
152
245
185
155
234
150
141
231
168
179
144
212
182
174
211
145
184
212
160
156
152
219
134
188
207
188
160
240
224
157
222
122
186
181
253
221
155
171
222
188
166
196
136
199
222
244
190
189
153
170
206
172
198
241
174
170
220
160
224
224
283
202
230
207
154
202
213
211
243
155
166
231
191
213
231
230
229
166
187
227
212
221
232
192
179
211
206
113
110
225
176
192
164
208
225
134
222
206
228
183
218
176
142
212
212
250
244
262
242
213
171
143
176
214
187
136
244
157
226
236
162
176
225
236
233
219
230
201
255
182
225
229
193
214
238
201
212
282
139
206
219
169
216
262
179
217
200
140
175
92
192
176
238
152
191
218
213
184
142
273
225
227
251
223
151
139
206
174
201
190
169
192
168
208
199
194
205
168
194
200
180
202
172
165
190
202
199
214
123
258
269
219
211
271
157
275
128
238
248
186
158
238
144
213
178
203
187
217
185
189
186
233
180
230
193
174
188
165
226
176
169
252
239
148
200
211
152
214
245
180
214
159
170
195
226
232
216
184
209
245
193
221
167
155
203
158
198
232
197
220
200
241
199
272
187
252
263
195
218
194
224
197
152
221
199
198
124
169
248
248
202
321
210
217
182
159
199
257
193
226
138
182
191
185
265
140
172
173
216
221
173
197
196
221
162
249
171
150
189
170
222
148
230
210
86
226
278
164
220
159
197
172
191
212
241
182
193
176
144
225
189
246
156
264
232
150
232
212
178
162
237
246
197
186
163
167
144
132
212
192
149
193
198
211
224
212
209
224
198
197
191
199
239
205
172
163
191
218
175
164
187
212
204
148
212
213
207
233
218
204
201
255
179
188
185
249
201
188
192
200
151
158
219
193
229
141
227
245
185
197
211
201
180
162
177
181
205
190
230
166
201
163
236
240
216
169
189
212
187
219
225
222
135
192
169
216
145
191
222
170
194
221
238
207
187
177
206
198
200
273
228
240
200
202
181
201
264
248
185
234
196
219
190
192
204
249
237
181
231
224
239
201
208
190
171
190
239
264
221
195
186
175
163
192
159
201
184
205
171
224
192
176
175
220
246
181
261
236
258
206
237
171
152
185
180
218
198
141
163
260
241
234
176
194
192
213
154
200
259
238
146
174
238
204
85
217
173
148
216
212
113
213
206
158
222
167
231
175
215
197
170
215
182
194
202
271
211
249
178
233
204
188
192
225
242
226
163
149
238
208
208
240
166
171
241
206
233
168
186
163
268
247
250
167
222
236
191
147
176
191
162
203
239
225
195
232
210
205
212
212
218
137
253
234
257
160
148
170
176
201
219
246
198
203
140
228
257
208
213
218
119
153
262
143
263
217
217
138
224
212
232
179
213
228
197
229
199
263
214
165
179
154
174
133
187
187
190
162
176
194
262
237
245
200
172
187
169
238
222
184
243
225
230
133
212
209
156
154
170
257
204
208
179
174
183
219
171
231
159
217
270
202
181
222
280
176
234
171
221
263
212
232
234
200
196
170
195
178
166
207
221
216
255
235
212
160
195
201
130
136
258
201
207
250
222
169
214
188
239
148
163
216
137
181
240
198
168
216
140
244
201
189
187
185
208
241
170
203
189
234
191
117
154
218
153
252
216
223
230
224
223
243
245
195
165
225
165
234
226
197
209
228
202
182
208
222
223
282
235
201
220
161
207
173
205
189
143
197
146
186
191
202
193
163
162
200
215
192
236
210
186
211
200
195
121
243
207
192
196
207
198
213
164
192
220
217
256
220
243
177
220
220
202
210
156
236
220
203
220
192
189
203
183
148
222
214
169
189
192
164
192
211
236
181
258
197
176
227
158
253
219
219
217
225
223
228
231
235
180
175
149
223
190
243
187
117
226
196
186
251
168
182
280
215
193
246
280
121
193
242
229
239
233
153
201
218
236
150
128
168
164
221
131
215
179
204
121
207
203
158
221
207
172
126
195
165
133
236
220
222
220
161
214
220
144
246
186
143
247
154
159
295
172
201
209
169
285
195
172
231
183
232
187
138
238
246
215
219
207
159
230
199
291
167
221
211
243
192
124
204
191
255
176
177
175
155
180
206
197
156
227
226
214
199
257
154
202
209
192
152
219
193
236
193
163
164
207
245
176
175
193
251
153
234
174
241
167
211
246
94
174
225
203
209
260
226
215
162
196
264
197
185
226
209
236
207
179
171
200
258
175
253
186
163
232
222
226
200
139
136
242
197
115
187
217
221
184
243
150
211
216
190
157
193
182
250
210
280
214
217
206
212
189
239
165
254
208
230
179
281
200
161
186
243
180
208
199
189
206
145
203
212
162
211
176
175
173
194
240
188
230
185
229
178
154
217
249
173
173
140
211
254
200
245
216
208
182
214
179
146
191
182
107
195
201
170
103
188
167
242
242
226
191
221
175
122
176
169
248
231
210
217
192
209
191
170
194
194
182
167
217
137
156
238
126
199
245
239
223
241
225
261
264
175
239
160
132
201
138
211
233
224
203
155
276
212
110
201
253
167
228
263
190
135
136
165
203
128
226
171
211
205
197
183
203
198
221
214
174
191
239
196
203
224
201
226
146
205
164
185
166
131
124
195
174
186
255
205
204
172
162
163
220
202
159
261
215
219
121
197
158
245
216
174
207
168
198
216
218
210
152
178
188
196
241
201
212
180
221
240
196
181
214
247
215
254
255
221
218
173
209
226
185
216
252
196
198
147
206
217
220
215
248
129
236
172
191
178
201
239
201
169
168
276
238
192
183
153
128
172
180
180
173
209
226
158
183
181
274
199
271
141
210
243
204
258
181
194
188
152
248
143
230
201
231
208
233
215
212
223
196
192
197
186
172
189
227
224
257
168
187
211
137
193
235
211
199
230
174
216
249
196
199
187
178
163
188
125
235
174
222
205
173
172
170
178
230
228
200
144
209
151
223
188
213
184
152
290
206
144
136
202
185
194
184
210
195
216
213
259
188
224
191
192
172
204
222
215
195
199
193
219
224
208
169
169
141
226
187
197
179
215
197
173
163
246
212
186
247
190
216
183
225
208
192
213
186
182
149
147
144
213
249
155
174
249
252
141
240
206
230
208
201
190
188
197
262
188
247
192
164
139
179
259
201
177
157
201
201
174
206
201
198
195
191
201
260
170
205
168
205
233
233
257
144
205
163
224
246
202
187
242
249
150
188
217
184
192
242
238
178
177
224
85
189
121
197
214
240
221
203
254
233
165
187
272
159
163
180
161
189
214
220
112
162
184
182
185
209
181
177
212
188
187
197
140
185
226
194
186
212
180
228
210
182
237
178
221
190
156
155
165
215
206
181
262
252
138
269
183
251
258
186
183
204
172
225
249
246
197
159
257
219
241
197
242
224
105
276
203
235
204
216
211
173
242
147
232
235
218
235
241
242
88
227
216
233
142
175
217
158
161
204
238
194
181
238
202
171
221
228
122
202
196
211
229
280
217
177
228
184
243
214
126
198
238
163
233
189
209
238
195
174
218
202
216
221
237
236
234
204
227
166
195
151
180
253
141
211
240
190
227
213
183
142
252
233
189
220
205
213
269
203
182
191
211
201
193
233
209
173
218
198
207
159
199
182
220
176
182
191
112
235
268
211
192
263
190
165
231
222
183
243
211
190
98
214
132
208
236
142
236
191
186
135
152
232
240
207
133
207
163
193
214
193
196
158
204
170
213
158
200
127
234
218
221
205
227
188
213
196
169
152
196
209
192
171
217
195
136
185
166
223
168
275
223
206
222
190
231
285
214
195
240
234
222
177
200
254
210
224
213
214
189
121
236
221
272
204
208
246
257
253
116
251
243
175
214
208
161
156
217
195
171
180
147
249
182
193
255
249
206
182
161
216
241
222
181
248
163
193
239
198
227
179
186
217
229
219
207
251
213
218
166
196
227
167
182
191
190
231
245
114
215
180
206
173
181
176
220
200
221
185
187
136
233
246
196
252
196
214
220
236
237
179
168
186
202
222
202
217
190
214
189
210
206
182
191
178
187
159
262
196
177
218
163
271
185
253
195
216
186
188
227
186
209
181
136
218
198
190
229
256
205
176
221
181
154
208
184
223
186
172
176
195
222
179
249
187
215
239
205
239
233
231
197
254
253
213
227
221
213
226
233
150
245
141
254
219
242
244
132
209
179
190
231
205
221
189
221
144
168
159
168
237
235
195
228
186
175
188
237
207
188
207
233
167
235
226
229
193
263
196
200
242
234
252
250
182
182
249
226
183
193
142
195
218
220
206
202
191
181
196
213
205
143
168
141
172
186
168
171
191
192
155
246
207
194
217
228
197
195
227
251
221
164
173
195
185
148
180
169
249
236
97
205
154
173
170
235
183
241
177
213
167
163
199
249
210
269
152
202
198
204
214
157
140
134
196
158
172
226
238
221
268
193
215
204
202
163
220
258
191
251
187
172
224
250
206
242
188
200
145
167
239
176
184
191
163
230
199
240
217
209
149
264
220
188
160
227
180
209
173
166
151
213
213
176
211
202
133
210
213
219
244
195
208
173
207
181
223
184
143
181
157
209
199
233
201
202
249
219
223
170
149
214
229
239
133
156
190
242
236
233
248
241
179
240
170
124
166
160
194
215
182
180
156
191
194
232
240
210
255
134
222
161
239
218
203
189
207
237
203
169
215
155
156
237
205
265
188
225
105
220
219
197
155
218
283
213
193
214
234
206
241
201
231
210
148
196
249
192
169
242
209
194
175
206
143
177
154
143
219
216
174
156
184
209
184
201
237
181
230
217
200
229
231
196
210
199
202
235
231
196
252
260
171
186
214
193
235
228
170
233
227
157
217
226
220
223
189
223
181
190
225
244
241
171
205
176
190
204
189
223
209
215
218
224
161
201
214
263
226
177
219
219
173
210
208
141
174
263
192
158
210
187
211
204
248
236
200
251
146
224
192
223
150
211
202
210
220
193
231
150
169
159
220
134
203
162
169
246
154
248
121
143
169
169
202
221
230
168
192
236
163
175
262
152
170
222
196
174
186
197
165
156
177
135
206
192
172
208
178
198
242
227
206
221
252
263
184
207
269
185
255
175
233
228
271
156
159
193
125
200
254
131
251
222
246
195
160
217
214
192
250
239
193
186
212
181
163
198
194
157
215
212
192
212
253
166
247
169
275
171
219
211
198
212
161
191
225
175
254
135
191
216
178
222
240
172
234
228
150
210
202
191
151
222
190
209
138
218
199
207
188
173
205
237
218
205
239
166
182
186
214
196
170
243
222
234
184
206
193
199
189
270
269
213
231
195
138
195
165
206
261
252
252
226
206
194
240
203
211
206
163
176
194
236
191
246
182
220
217
225
163
206
180
151
253
184
116
152
206
151
249
196
245
207
250
220
259
212
182
209
157
143
232
242
154
244
229
167
238
257
252
135
277
211
222
202
189
169
143
176
213
180
147
187
248
225
194
236
235
202
192
220
182
246
184
177
208
229
246
92
215
222
191
173
212
198
188
188
210
248
202
237
249
196
197
234
202
185
181
277
226
194
232
212
186
253
256
199
155
202
189
207
208
211
165
246
265
181
183
224
212
184
198
207
178
209
185
171
258
241
124
218
247
222
239
193
255
205
187
176
207
251
194
235
179
151
133
195
208
227
273
203
242
180
151
198
214
243
218
190
218
202
261
172
236
235
204
171
156
206
190
196
197
171
216
240
206
139
225
202
206
149
207
173
264
192
193
234
212
213
229
183
225
181
198
205
185
235
190
199
209
194
189
182
200
255
259
171
213
190
185
137
236
208
153
221
179
230
150
200
203
214
217
218
196
201
230
168
135
251
228
228
170
222
197
188
199
235
182
197
180
209
170
210
226
168
147
194
191
194
130
160
165
239
227
194
157
224
166
202
260
186
235
197
173
148
243
198
207
221
227
204
206
185
180
225
210
195
230
194
218
197
219
180
209
231
169
192
182
213
183
176
226
160
183
178
198
174
238
173
220
179
156
231
177
198
232
192
210
185
242
221
183
197
263
204
218
184
217
170
213
239
204
150
219
167
177
158
249
214
230
197
185
235
195
209
192
254
188
204
173
174
226
199
240
179
192
187
201
263
207
158
177
186
221
157
186
200
196
194
194
264
217
167
216
198
179
247
207
148
207
175
223
183
174
145
180
169
237
198
182
168
221
178
189
212
198
180
215
123
189
228
269
260
237
172
219
262
239
159
164
215
217
147
201
195
159
169
183
154
156
195
230
216
214
228
189
174
231
209
188
209
136
219
234
181
187
187
193
221
221
227
233
202
217
212
204
201
262
165
231
276
278
189
199
165
236
146
200
171
170
217
230
263
209
208
232
203
186
222
157
114
238
211
168
216
173
216
210
143
212
179
239
167
195
246
162
202
187
208
222
187
241
218
192
158
219
213
241
184
196
209
159
192
177
181
222
178
226
223
243
245
249
208
133
193
231
159
155
201
242
218
166
197
221
222
237
221
216
226
228
197
203
206
125
171
207
187
262
226
235
256
182
206
166
233
134
185
234
160
216
226
172
223
177
255
189
244
185
205
237
191
244
212
193
178
214
169
194
156
191
238
229
196
194
176
192
176
216
181
265
170
217
184
228
171
174
185
184
178
213
227
234
213
172
265
216
196
184
245
187
201
254
197
184
174
282
223
184
211
167
208
267
221
221
199
208
177
151
142
219
210
173
169
249
123
189
212
197
169
216
160
209
154
177
178
230
172
189
242
207
258
200
210
194
224
182
233
197
158
191
205
226
245
239
201
212
249
216
181
190
233
208
208
193
192
248
155
272
198
237
200
171
180
237
207
223
218
181
150
173
260
209
170
244
257
181
187
188
242
216
164
244
198
175
234
246
198
195
166
230
178
267
198
222
250
258
244
151
266
171
184
187
142
209
220
200
172
153
205
241
159
242
208
186
223
227
203
225
197
213
143
210
184
175
183
153
238
216
194
189
229
200
205
190
192
274
205
228
255
149
153
175
241
178
145
226
244
207
218
163
167
176
207
187
252
188
195
253
232
136
222
170
228
224
191
252
184
256
167
264
236
127
237
214
204
223
201
189
206
219
162
206
231
186
185
248
236
213
233
160
179
194
164
163
169
231
198
190
187
143
174
218
203
186
219
226
210
150
194
205
221
190
197
162
229
235
276
209
134
233
246
188
166
260
159
129
179
268
200
178
193
214
127
218
181
195
213
215
281
171
258
234
203
197
186
250
269
218
231
151
211
250
176
195
220
123
180
229
166
187
197
144
231
203
244
185
151
171
199
198
200
239
246
203
163
161
230
176
223
201
182
219
203
179
135
142
195
254
204
187
207
170
159
211
189
171
209
222
214
189
190
162
157
189
187
233
165
195
131
240
143
153
221
186
184
227
152
179
225
210
232
226
230
204
71
131
152
181
185
185
198
238
226
219
169
164
174
193
184
182
232
202
181
215
180
226
216
206
203
236
223
191
162
196
216
178
216
274
260
244
187
252
155
221
220
154
147
221
242
165
190
267
190
256
185
235
111
230
138
193
228
87
210
172
154
224
161
205
195
187
207
206
234
198
216
177
155
205
189
203
195
175
174
222
169
237
219
154
196
196
242
169
143
173
218
161
213
181
172
236
205
159
248
172
238
233
229
198
211
195
204
171
222
227
132
174
176
214
262
234
208
184
293
236
231
232
153
212
201
206
227
223
235
176
202
177
189
230
213
231
130
217
188
190
209
209
245
159
178
238
166
152
225
181
193
179
190
199
213
156
201
216
222
203
165
199
216
214
198
221
182
184
174
165
201
150
219
210
200
235
201
187
171
199
260
199
195
140
264
267
221
244
226
165
158
232
169
224
223
182
183
149
212
177
209
250
192
205
192
125
141
151
201
122
205
193
170
182
186
238
238
200
176
243
197
197
146
218
143
181
179
198
197
226
209
191
153
184
190
175
214
238
181
210
251
171
234
232
199
190
235
220
264
184
234
197
150
201
218
194
214
221
215
169
172
259
183
208
174
170
185
215
195
207
207
231
142
200
154
228
192
186
231
188
239
182
187
208
173
181
159
207
239
185
227
221
208
155
203
252
179
261
195
153
236
239
194
277
193
245
176
215
152
194
242
148
180
208
151
193
214
196
231
205
179
163
197
173
202
171
228
228
171
162
196
171
168
268
229
149
229
190
259
223
213
232
228
206
188
226
181
182
212
200
195
236
168
167
231
214
141
210
256
221
225
148
204
164
214
219
194
127
152
247
207
230
161
215
90
175
236
209
242
226
227
220
192
194
178
191
254
208
207
241
181
232
246
235
237
182
185
201
248
196
188
183
185
148
193
159
170
191
164
250
117
153
196
156
143
153
221
221
190
199
211
159
214
169
198
175
201
219
219
166
288
254
225
228
209
246
155
175
152
217
183
149
202
219
180
207
208
129
172
174
207
198
212
248
252
250
185
220
201
163
221
176
232
204
223
220
158
254
182
196
235
173
172
183
147
171
151
220
187
207
164
206
153
195
180
198
241
198
159
165
137
213
260
221
192
183
164
174
184
152
214
248
202
214
129
162
210
182
242
234
207
204
199
245
173
212
200
172
245
161
222
202
152
221
238
205
230
154
255
187
238
221
193
200
246
203
172
203
199
203
211
178
147
242
207
220
214
176
114
211
248
184
230
177
250
187
194
234
230
157
228
195
123
196
239
198
213
189
159
214
239
164
209
241
212
218
229
183
199
212
176
216
195
206
251
219
189
213
168
205
237
181
236
193
171
202
225
182
249
173
230
170
254
193
200
220
134
201
187
232
214
239
232
203
195
158
226
187
208
171
243
205
161
206
236
177
228
212
204
203
181
198
242
197
167
187
188
261
231
175
195
225
181
206
175
227
234
208
188
176
169
227
205
217
175
222
238
161
195
229
218
197
212
195
173
132
163
142
192
224
277
192
203
188
214
179
209
244
178
171
244
195
190
170
180
208
158
190
147
170
218
246
213
226
163
218
200
140
178
225
182
236
232
174
227
234
210
209
193
175
193
252
225
232
207
201
212
212
203
220
113
149
176
173
237
183
270
242
206
234
184
173
207
182
141
199
166
173
201
224
217
196
251
207
167
251
246
257
165
205
242
132
216
168
148
195
141
203
227
198
248
219
281
168
239
209
210
233
182
243
157
252
170
215
277
201
199
217
160
167
144
189
237
183
220
242
153
191
191
226
220
178
188
222
182
193
181
175
207
216
243
222
120
228
195
222
191
173
198
220
266
208
147
236
200
192
264
149
123
192
189
175
230
125
194
251
217
178
208
154
254
206
214
219
242
189
170
213
170
220
242
198
229
196
188
169
213
219
192
227
253
264
193
160
205
252
197
161
133
204
253
188
204
172
216
234
170
199
142
214
226
247
252
224
201
236
164
254
225
189
187
252
257
207
210
178
152
193
224
241
230
179
134
232
213
144
202
159
148
153
262
297
237
251
176
175
181
283
281
144
238
169
182
251
248
203
185
228
187
190
217
160
184
214
236
286
243
146
248
201
204
170
228
175
232
215
218
228
227
217
125
221
229
238
205
183
212
224
215
208
191
165
184
155
240
163
216
194
212
214
219
145
230
191
183
216
197
168
227
186
254
218
217
228
161
172
196
160
201
272
259
206
214
227
211
212
186
211
171
198
188
187
158
197
197
185
172
212
176
201
168
250
223
182
208
287
216
226
259
219
223
176
223
202
247
127
182
147
202
254
259
185
181
195
201
204
181
174
209
143
177
155
170
207
166
235
118
168
122
178
160
203
212
210
202
191
205
277
178
181
177
198
220
183
149
119
134
160
211
159
224
215
197
153
174
223
127
132
213
202
154
229
197
207
198
192
266
208
157
190
218
134
230
121
178
240
214
243
178
221
211
220
227
202
149
254
230
206
207
176
206
182
179
214
154
222
258
172
201
114
182
208
220
199
212
175
240
215
175
192
158
167
211
218
247
237
257
254
209
222
246
233
217
219
192
215
193
176
196
191
228
241
249
250
237
151
211
259
209
159
190
236
229
206
153
262
225
193
223
185
146
187
210
225
207
211
211
159
230
136
245
249
170
209
168
152
240
222
150
236
223
249
192
230
178
228
241
201
219
204
181
157
170
222
232
205
125
251
236
235
199
187
204
156
224
226
222
202
248
203
187
154
179
189
219
192
196
189
164
202
176
157
185
195
143
168
255
172
243
200
258
190
218
231
148
218
213
205
196
237
203
140
196
236
199
186
208
234
191
240
268
258
240
258
170
196
212
191
209
186
136
143
151
165
168
161
243
224
128
232
154
193
240
244
163
232
159
228
170
185
210
211
190
226
219
166
243
185
115
202
194
228
181
205
192
241
190
192
202
185
215
214
172
194
177
179
206
191
206
226
165
186
235
139
162
207
241
200
214
206
184
194
203
260
201
179
210
194
216
206
223
222
208
154
201
213
216
228
166
236
166
165
89
238
251
178
211
199
196
226
233
265
251
216
176
182
175
215
207
148
172
170
188
253
237
243
215
120
217
180
142
186
197
216
190
164
215
173
216
214
261
241
245
200
202
167
158
228
221
218
168
238
148
173
173
203
189
223
141
163
215
251
195
235
180
195
198
236
256
225
222
186
164
227
207
182
222
230
223
201
229
274
212
213
201
226
215
184
221
161
173
251
184
171
221
165
181
222
161
253
175
216
210
226
254
262
229
155
211
189
219
218
100
217
163
150
255
127
203
193
206
138
227
270
212
172
192
220
223
187
224
255
184
179
197
233
208
227
168
216
238
199
205
138
168
224
278
242
200
150
209
201
238
196
182
173
277
193
161
159
228
193
232
241
157
231
196
214
170
198
198
201
186
205
226
143
265
196
195
215
238
231
204
263
165
206
201
154
200
245
214
201
219
217
250
214
185
161
177
206
142
254
191
227
207
200
136
235
167
184
261
177
207
244
168
201
213
202
200
260
133
231
173
226
230
205
234
270
207
216
168
222
215
218
187
203
157
204
212
170
203
186
202
201
232
132
215
184
132
128
200
220
261
185
138
186
164
268
213
230
148
215
237
213
238
177
218
222
229
174
242
223
233
209
201
249
222
193
192
231
150
188
168
202
241
216
218
220
189
166
213
177
197
214
232
178
176
203
223
172
153
122
236
176
222
180
215
230
193
227
177
234
288
179
213
232
229
215
273
240
270
284
241
223
139
220
177
173
137
201
219
178
241
176
166
241
145
202
229
186
217
183
133
244
182
167
152
207
154
137
207
215
184
212
134
176
159
133
225
249
262
194
156
240
243
200
205
188
215
206
259
220
200
234
202
153
250
251
182
279
169
117
155
189
195
187
188
223
141
213
253
199
196
250
150
226
216
221
214
199
166
145
174
179
171
206
234
218
218
174
209
192
160
250
196
183
179
204
236
205
220
159
232
232
144
197
229
192
199
238
231
223
210
205
213
211
231
234
221
218
177
246
125
160
177
223
237
208
194
276
236
238
170
160
169
211
204
217
174
245
209
188
147
206
219
188
235
162
212
216
227
177
189
216
188
208
128
118
180
186
202
104
260
158
212
233
209
212
218
178
200
206
147
212
202
170
176
211
165
206
207
221
227
237
116
167
170
211
192
178
243
204
216
132
265
179
161
211
213
245
153
174
221
250
160
156
168
236
233
182
220
178
137
241
184
139
156
232
176
204
206
216
166
182
238
227
263
124
116
206
242
204
151
250
230
220
203
233
225
221
198
264
183
146
227
207
196
238
150
235
152
227
237
219
231
157
163
220
156
183
178
218
199
229
112
223
197
217
136
238
114
181
238
200
256
210
195
161
227
196
198
266
223
216
200
152
253
170
184
243
187
187
221
159
137
214
158
188
178
232
228
184
242
223
177
205
187
192
176
210
183
187
195
171
212
232
273
240
243
216
171
183
251
166
221
187
222
220
197
235
225
122
226
196
170
142
161
245
244
251
237
135
211
256
183
146
219
204
196
243
200
171
176
194
189
253
225
187
201
191
224
197
233
153
234
219
238
164
242
255
184
251
169
198
170
186
189
245
152
231
217
202
207
188
197
155
180
243
193
207
216
204
211
171
208
180
205
113
219
174
182
199
227
208
190
189
226
178
174
245
177
248
175
216
207
150
213
200
181
183
244
199
183
217
174
161
221
183
201
156
245
177
201
221
200
181
187
158
254
175
246
162
177
215
203
215
185
216
181
193
175
231
156
187
200
220
206
179
194
264
211
204
172
167
180
210
213
161
193
230
193
204
176
151
273
177
256
205
208
197
200
265
266
182
222
232
176
151
205
172
173
173
231
226
214
150
174
206
179
173
196
223
225
184
180
165
186
120
235
275
123
279
217
186
201
185
199
278
197
184
153
203
225
135
205
179
192
243
174
201
220
152
235
183
225
232
188
175
139
180
237
211
263
192
142
196
190
221
168
166
224
179
254
227
206
176
218
232
159
226
179
186
190
234
210
177
142
197
233
241
160
212
211
189
166
189
172
149
192
189
215
170
169
288
228
200
141
183
199
187
249
230
189
163
211
235
223
197
201
184
170
249
210
194
186
170
181
171
203
240
205
199
208
179
242
230
236
163
251
263
149
237
168
159
171
190
283
275
155
209
148
207
231
191
158
154
246
244
256
224
228
209
178
194
133
178
248
200
184
209
195
207
215
211
156
176
178
196
175
174
206
201
227
206
201
160
206
134
203
205
228
196
155
209
173
169
178
243
174
183
208
257
168
242
232
156
252
155
215
231
215
260
215
204
182
183
209
158
187
258
241
214
227
220
228
163
179
218
204
224
198
147
186
177
166
208
170
149
226
179
174
131
170
246
252
191
170
219
201
171
164
201
163
188
192
205
211
188
196
178
172
217
159
177
130
213
152
228
200
148
145
209
143
219
145
219
223
186
234
241
179
226
214
197
231
208
195
238
241
172
166
177
187
130
243
210
233
200
228
172
164
284
235
197
151
193
234
246
211
188
236
216
180
214
242
236
229
116
237
189
197
237
195
283
171
151
256
273
194
257
179
190
177
181
164
228
230
200
159
250
257
218
120
211
235
234
247
158
193
180
211
208
243
210
178
153
243
165
202
221
211
235
191
219
212
222
252
215
221
183
145
157
187
206
211
203
196
260
157
179
248
217
246
135
183
220
161
203
216
155
193
190
211
196
219
242
168
178
265
228
232
191
212
187
226
187
263
206
191
134
224
177
177
178
166
174
205
175
190
251
179
243
212
218
173
173
216
223
259
165
221
174
203
174
215
213
195
215
139
196
167
201
197
168
183
204
181
167
211
196
134
198
202
196
217
218
209
215
150
247
146
228
138
210
137
120
196
222
179
166
87
201
178
266
178
255
115
167
226
166
187
170
173
170
152
138
251
254
200
209
230
257
224
203
209
227
157
212
216
200
229
234
257
195
226
210
240
210
201
159
177
208
269
278
220
179
189
171
185
239
177
209
239
223
113
200
159
190
168
181
218
219
231
215
225
197
247
263
239
211
195
208
153
235
169
200
210
204
233
162
197
160
191
191
209
191
244
210
132
201
184
167
174
191
190
192
205
183
211
209
243
220
187
229
198
237
235
208
172
209
218
171
217
224
188
166
164
170
229
233
177
207
129
210
137
208
152
174
228
244
193
190
223
137
204
169
144
185
214
185
223
225
167
223
218
254
197
198
213
202
185
187
252
198
218
195
226
234
205
215
195
267
254
223
178
227
143
199
229
197
270
214
199
203
166
172
208
216
189
218
265
197
200
203
175
265
205
154
232
219
177
220
160
152
190
182
242
202
203
182
230
172
225
217
227
187
145
177
216
138
148
137
198
238
261
162
174
215
231
201
200
208
251
203
167
248
223
220
223
241
168
219
139
189
185
251
140
217
220
221
203
147
256
203
260
188
224
185
197
264
154
159
162
229
197
183
230
184
222
196
239
161
176
193
194
199
193
213
212
192
236
165
168
237
241
230
207
187
174
225
216
151
166
207
190
196
221
207
168
230
137
196
188
200
182
222
153
227
195
145
157
237
156
219
181
162
224
200
169
245
214
199
225
166
200
164
158
196
221
231
225
173
228
262
224
218
227
198
197
260
216
176
175
186
217
183
178
220
203
233
175
230
190
144
147
200
167
164
226
183
182
150
207
220
190
182
188
199
240
225
276
234
146
190
186
237
238
200
253
187
145
171
221
177
190
176
183
182
191
241
194
282
186
157
200
131
177
184
195
174
189
161
270
207
249
183
185
179
247
160
190
238
216
235
193
168
190
209
270
170
184
188
163
212
260
203
229
129
183
181
197
248
215
219
180
225
181
207
185
174
210
235
185
257
196
210
187
168
210
120
175
201
207
247
280
173
191
206
180
173
217
239
198
152
227
251
188
190
160
149
174
172
231
214
185
180
153
215
164
191
274
239
192
229
240
237
165
231
164
249
245
157
140
178
219
185
155
197
254
211
259
187
204
202
225
234
149
213
244
241
218
227
195
272
262
198
215
163
239
198
164
188
118
190
187
254
213
194
226
185
171
227
152
220
157
227
202
192
206
185
183
230
173
208
186
181
199
150
161
164
180
151
232
144
206
247
238
220
190
258
183
176
166
176
254
228
183
180
181
217
191
224
167
177
225
153
167
203
136
210
235
196
120
241
159
171
214
116
145
196
185
236
239
128
142
234
277
207
147
130
196
273
214
229
232
160
220
213
162
193
176
217
248
185
211
205
165
205
180
160
203
205
218
224
181
283
158
183
230
184
196
212
189
244
207
195
214
177
210
172
207
146
234
230
207
162
166
207
212
186
190
194
150
173
208
244
205
204
170
236
187
214
215
242
251
213
191
157
149
272
242
175
156
170
232
184
186
235
196
202
185
189
253
243
206
232
219
238
226
224
186
167
236
131
252
195
214
147
212
223
233
196
239
198
237
166
171
174
264
231
173
215
225
146
201
168
211
231
175
112
221
178
202
162
189
175
137
202
202
197
200
263
228
225
143
162
236
152
228
196
188
225
220
208
219
194
245
236
180
227
209
148
220
255
219
238
216
231
195
173
173
273
232
209
267
187
189
192
182
216
235
234
211
168
247
194
206
227
198
146
203
206
217
173
146
150
178
195
204
240
194
174
132
221
205
249
215
201
220
220
230
201
187
237
186
228
193
157
230
190
108
220
195
219
176
183
202
238
198
219
253
171
155
181
194
192
160
195
221
248
224
184
168
190
181
203
190
226
167
142
203
233
161
211
225
163
178
207
223
219
211
189
228
182
199
170
209
165
233
234
160
246
230
227
236
214
177
160
128
231
215
208
219
213
206
231
231
241
159
209
216
119
204
260
178
258
161
226
208
215
170
188
195
189
228
148
153
201
214
160
214
178
188
249
230
150
146
208
187
179
205
126
250
200
203
165
175
211
282
167
207
192
178
224
237
175
224
243
229
286
179
202
266
250
166
197
208
204
252
180
253
222
181
159
165
208
200
172
229
226
223
142
243
164
220
189
255
193
196
255
220
230
190
193
146
127
175
209
208
183
197
138
202
195
197
156
229
284
222
193
207
168
151
179
249
229
185
213
237
235
183
187
267
234
184
156
176
148
151
227
193
195
196
187
162
239
206
214
214
179
195
263
177
208
180
233
190
235
215
207
214
244
184
210
194
185
242
247
209
250
203
197
166
201
207
238
213
181
171
191
204
207
260
140
195
231
260
198
154
202
248
264
195
237
215
138
191
233
228
245
154
142
192
229
172
235
215
155
209
185
196
148
228
181
234
131
223
205
210
198
153
167
220
222
229
185
208
246
131
211
181
216
207
196
262
191
243
164
227
182
233
170
215
196
246
177
235
210
169
203
230
182
162
241
202
254
226
185
195
260
181
221
127
230
248
210
254
235
207
145
186
281
250
211
135
187
197
239
232
211
157
190
165
191
213
156
257
197
199
235
182
194
234
184
226
208
208
242
209
214
189
129
200
189
222
232
209
160
252
202
160
171
221
228
197
226
244
197
178
187
190
222
194
159
174
152
180
205
239
268
185
181
175
154
221
191
219
248
231
296
238
223
256
146
209
186
246
185
187
256
264
166
211
201
219
186
212
237
188
229
255
205
204
155
214
219
208
181
201
255
207
154
200
148
217
192
163
246
177
179
185
240
183
172
221
210
149
209
167
164
206
203
220
134
162
233
213
233
151
201
186
197
198
194
169
202
185
175
181
269
175
214
163
226
238
247
148
235
213
214
258
230
206
253
197
199
199
231
205
184
204
173
207
170
197
240
191
210
182
152
254
208
174
224
203
185
191
151
236
290
199
200
189
217
121
144
221
206
233
242
218
188
138
200
153
244
189
178
238
122
221
228
239
241
185
140
170
206
203
181
276
220
171
189
204
249
152
260
202
226
224
202
176
258
242
209
150
173
207
133
236
186
223
223
208
189
164
143
146
213
194
170
177
239
217
169
232
140
218
240
213
185
213
160
190
216
178
261
186
194
172
202
228
225
179
168
195
181
204
162
199
202
198
191
219
241
222
165
299
204
192
146
204
214
208
179
150
225
205
172
204
142
180
234
191
229
197
149
179
174
178
206
214
222
187
200
155
235
192
172
196
215
190
170
143
158
223
237
182
239
186
216
200
211
218
200
134
159
208
224
217
180
217
164
180
208
144
192
220
160
214
190
210
215
206
160
186
223
215
222
191
227
180
207
234
227
258
140
211
226
226
217
206
172
252
204
151
215
130
202
181
247
197
157
223
260
152
177
108
263
212
176
199
254
185
201
185
174
166
189
243
265
184
191
203
218
189
207
230
206
191
146
227
240
190
252
209
224
257
163
208
218
222
225
221
172
184
243
162
163
151
246
184
227
249
202
142
249
194
109
186
193
161
240
169
185
199
174
225
221
189
196
224
232
188
152
192
209
200
240
173
214
193
190
209
202
210
194
129
193
184
257
212
237
236
231
235
250
150
208
194
232
199
205
215
239
220
158
244
181
246
171
170
210
177
146
200
195
211
251
211
190
208
214
192
194
201
179
203
207
206
213
212
199
181
171
201
145
239
182
207
226
164
219
194
139
129
202
263
212
231
242
257
207
182
176
187
223
191
248
171
197
224
141
196
147
237
196
208
217
188
232
171
161
149
186
204
216
214
144
240
215
225
160
225
222
158
204
230
202
237
205
212
220
166
183
229
174
230
195
168
232
242
201
211
202
145
158
202
145
224
210
266
210
198
273
228
200
193
200
199
180
184
190
257
184
172
221
207
246
246
118
241
201
208
252
208
210
207
183
233
200
254
268
236
299
133
183
181
249
154
170
210
242
194
173
167
197
202
210
222
244
267
249
213
188
216
151
212
225
139
181
200
228
212
187
208
228
272
259
235
177
160
120
230
231
237
212
214
179
212
265
267
143
217
242
221
231
181
210
153
229
249
246
248
220
203
222
222
195
158
137
197
178
163
168
223
226
262
234
248
293
233
213
210
265
268
177
215
227
224
129
195
199
211
217
177
215
249
188
274
199
238
231
164
200
246
202
209
235
212
213
215
227
168
245
219
201
144
159
181
127
227
252
211
219
179
233
227
230
194
250
171
201
165
235
205
189
231
212
191
202
202
233
193
194
204
231
261
217
221
218
219
135
188
188
206
145
206
217
199
239
174
211
196
241
198
218
229
252
216
203
227
245
181
198
252
269
204
173
201
222
161
180
220
168
177
138
178
198
214
174
272
132
164
270
195
194
188
146
216
153
198
206
229
215
168
256
214
183
168
150
185
178
130
187
232
196
235
170
178
227
242
221
191
150
225
249
212
187
147
250
177
190
203
209
158
149
209
219
232
218
189
177
182
195
193
220
236
241
182
182
179
227
197
217
199
187
246
166
177
194
197
221
292
206
251
209
210
209
224
183
219
223
157
167
224
201
193
131
194
205
223
161
191
205
228
139
217
177
260
195
217
202
249
150
172
241
151
191
210
145
251
180
220
138
177
214
161
270
156
225
194
207
280
172
240
199
197
214
180
113
174
242
214
278
252
164
201
232
161
175
204
155
179
225
205
225
224
184
203
145
169
232
238
206
194
182
217
222
216
164
166
157
152
213
178
177
193
199
232
151
243
194
187
101
183
177
264
168
192
188
215
185
215
242
193
122
167
233
192
233
212
250
141
231
211
197
174
183
204
238
186
205
255
230
223
222
200
228
175
182
240
207
206
141
184
203
194
206
199
246
246
190
225
190
205
207
214
150
180
202
173
203
240
186
196
255
201
219
245
161
212
210
214
209
180
203
145
161
223
183
240
214
209
184
235
208
141
220
182
212
193
235
120
209
178
203
176
236
203
194
166
131
193
271
154
212
249
250
213
228
166
174
198
189
264
179
211
200
235
223
261
194
221
209
211
220
226
195
156
194
231
188
234
221
226
206
239
200
158
201
197
190
176
114
212
196
246
145
219
199
188
199
216
209
185
211
186
208
187
206
171
249
184
200
250
241
243
205
212
160
235
218
190
188
164
266
193
244
186
252
141
149
155
204
209
226
119
233
203
218
174
195
210
231
215
203
182
219
187
191
214
171
147
158
242
229
188
263
179
277
225
202
188
213
225
150
216
166
163
197
218
174
230
174
225
209
194
158
201
197
174
175
122
205
188
258
230
209
126
172
207
217
181
197
196
179
183
245
219
137
238
168
121
220
163
190
198
185
224
139
234
203
207
183
177
231
171
217
169
148
218
190
227
249
151
244
181
159
215
106
237
240
248
167
244
275
243
202
164
233
184
249
262
163
137
253
197
236
176
175
217
152
205
200
229
175
255
231
136
238
184
240
170
187
211
212
228
181
250
254
210
179
189
180
169
206
167
230
213
233
202
188
275
180
201
203
243
189
183
243
201
134
237
190
203
164
197
240
240
231
238
205
203
169
232
230
229
246
175
229
238
164
257
227
198
132
248
256
244
246
235
152
173
192
136
142
161
181
217
193
182
173
198
162
178
226
227
221
210
234
183
167
172
230
141
230
198
185
239
183
180
228
222
167
257
154
205
234
193
218
226
164
154
219
180
189
169
166
236
136
148
217
229
211
245
224
161
252
220
231
183
194
209
184
223
220
193
168
179
185
183
228
199
220
230
160
217
166
210
135
200
195
248
227
160
235
170
191
174
229
142
242
239
222
236
185
202
211
204
209
206
236
223
146
206
215
223
201
249
211
241
172
194
225
151
189
175
181
178
243
147
168
168
171
219
230
228
216
191
207
251
248
220
202
238
249
263
252
193
220
269
140
218
224
222
180
216
283
152
179
137
230
178
200
181
212
206
210
197
198
184
209
266
232
218
160
205
229
224
199
193
192
222
179
215
162
187
179
163
194
205
185
173
178
170
191
195
247
173
207
172
213
234
253
178
206
223
201
128
180
238
177
172
230
215
230
239
189
189
172
247
146
271
259
186
208
269
209
182
279
238
177
188
229
185
168
143
176
241
129
192
219
184
251
186
209
194
251
199
199
208
200
178
186
203
215
217
212
191
189
188
192
258
199
272
148
233
207
188
265
262
158
173
140
164
206
217
159
222
169
175
255
250
202
177
125
174
199
268
229
195
208
178
230
231
195
176
230
188
183
172
209
223
243
257
225
189
182
206
193
200
169
184
284
214
194
236
274
223
153
184
132
238
114
206
179
188
199
191
188
226
183
195
187
191
192
193
161
186
238
244
180
252
211
171
187
210
203
195
195
183
211
232
246
250
151
137
209
226
247
186
226
186
219
241
218
225
211
244
236
181
189
229
199
187
205
237
168
177
202
211
251
181
174
185
213
221
176
198
256
233
243
190
252
259
190
123
204
195
146
223
177
179
162
172
179
164
162
233
234
222
229
226
169
217
183
223
183
184
184
245
189
184
247
219
237
213
216
237
224
233
215
197
204
200
192
232
203
199
195
242
209
198
189
225
212
229
226
202
229
208
199
209
278
239
212
169
231
200
207
251
213
229
206
228
160
178
204
210
197
189
245
224
203
171
232
191
264
188
180
202
258
252
279
212
241
164
234
199
171
174
162
145
180
214
158
205
173
214
273
203
223
204
185
184
219
216
194
204
212
199
125
223
210
233
226
213
190
197
252
217
196
194
203
178
138
189
271
242
229
210
243
235
214
186
197
181
237
176
160
201
204
170
224
197
223
248
231
260
152
209
211
213
245
241
192
252
178
223
193
215
200
138
283
211
226
170
159
232
245
178
202
264
198
156
227
241
182
145
208
191
192
168
175
194
208
201
197
231
235
236
243
259
240
173
158
144
168
185
216
175
186
220
123
201
178
175
157
234
219
214
207
168
222
188
205
194
206
189
224
244
180
185
180
179
216
219
199
201
226
242
178
194
215
210
209
202
216
135
220
154
205
228
268
195
232
148
237
190
169
163
182
155
211
208
202
215
144
223
238
236
261
178
219
149
259
210
156
247
162
203
103
196
184
266
173
144
196
91
186
284
165
166
166
183
137
229
230
142
206
228
139
239
199
182
208
195
218
161
150
200
230
259
216
221
237
263
232
253
190
206
202
180
235
184
218
188
179
135
157
202
145
196
155
254
221
231
202
170
217
188
214
189
184
152
125
198
143
246
216
186
159
227
228
251
169
217
178
181
232
177
211
249
203
248
220
133
184
245
200
214
251
241
223
179
159
207
194
246
191
239
257
259
184
238
130
209
201
192
229
225
227
228
246
220
219
246
211
187
182
232
201
139
155
241
175
214
183
240
243
199
226
214
188
196
216
179
206
191
205
119
231
124
179
166
196
181
177
183
189
236
245
202
260
196
178
235
190
168
222
215
178
182
185
216
206
215
240
226
203
169
194
175
229
222
245
218
222
232
233
236
225
203
195
141
223
197
232
217
238
165
244
179
183
242
253
185
183
176
233
236
247
181
203
196
219
211
204
172
127
225
212
204
179
182
242
233
121
226
160
187
181
249
260
195
237
193
170
154
230
210
207
259
230
171
190
204
191
234
146
169
188
190
256
202
168
194
203
147
249
194
249
220
202
197
187
206
201
209
239
179
260
209
174
204
178
205
230
217
204
175
193
231
213
211
195
239
209
186
176
235
188
208
172
256
208
208
216
208
197
175
191
145
136
160
218
241
228
146
185
150
191
150
168
167
165
186
198
264
160
142
285
235
179
222
253
216
172
206
189
219
215
213
218
193
223
205
174
186
234
220
265
238
189
197
194
202
231
197
214
269
172
222
222
154
234
230
250
212
252
210
193
243
218
189
195
247
200
207
207
244
201
197
214
148
170
131
200
180
173
181
228
235
250
208
214
173
232
254
138
221
184
150
202
191
244
251
231
137
231
139
185
250
211
210
173
284
211
174
187
158
162
219
196
186
171
249
144
237
83
131
234
190
240
248
163
188
225
148
233
267
193
225
220
191
210
187
198
228
154
180
220
209
165
187
149
180
233
196
162
176
148
230
205
201
201
246
207
199
227
217
199
214
206
200
186
218
212
205
180
129
161
219
192
104
167
197
216
247
161
153
174
246
179
176
188
196
195
193
197
238
237
167
256
174
193
143
235
237
175
259
131
239
222
199
206
218
207
149
206
158
231
229
194
181
226
175
170
241
218
226
242
172
155
172
256
185
197
219
247
212
177
182
237
207
203
190
227
210
179
194
181
146
136
165
182
209
194
195
160
185
156
238
126
188
280
207
239
215
198
168
172
221
165
171
206
224
193
194
187
178
215
238
208
205
205
217
185
199
187
193
165
147
166
210
174
267
186
189
175
188
184
227
237
137
204
207
248
240
161
165
174
187
221
190
200
185
200
193
194
206
196
228
224
233
156
240
175
223
228
224
212
222
229
264
213
210
169
213
227
253
242
171
239
228
221
162
191
208
167
171
182
231
250
236
219
203
150
212
273
220
153
209
185
171
194
232
182
240
271
244
195
212
158
175
198
194
154
238
147
258
233
179
220
272
180
206
179
177
269
243
165
219
169
241
149
243
147
221
215
203
208
131
207
160
243
191
212
199
228
177
182
197
181
160
222
229
179
173
223
216
180
199
190
215
241
200
206
191
191
216
207
188
195
209
169
145
192
170
206
256
226
183
200
182
187
135
192
165
260
203
216
178
220
151
176
237
262
232
218
225
233
199
230
191
162
204
208
175
165
207
232
212
188
252
181
182
145
193
154
195
248
222
220
211
234
256
213
187
204
172
203
151
184
236
168
220
162
169
206
174
225
208
159
210
228
192
189
199
185
181
139
172
251
207
152
162
195
172
196
238
235
271
261
119
224
221
180
204
220
177
166
189
194
202
188
201
225
246
233
176
178
202
200
231
206
177
211
192
212
173
214
178
182
235
209
203
197
141
98
186
211
214
199
177
213
251
256
188
274
200
231
209
190
190
215
193
264
178
219
224
191
227
219
144
242
222
220
265
169
188
220
159
198
153
234
217
216
226
266
175
267
192
209
194
209
120
168
116
240
188
162
199
218
253
195
193
164
166
209
187
190
132
193
213
255
186
225
192
187
189
218
203
211
171
160
178
210
223
158
178
169
215
195
246
199
161
229
145
220
197
196
209
176
182
188
217
170
239
159
166
144
174
168
179
172
251
250
207
250
234
259
180
162
200
210
170
233
201
213
142
200
180
157
205
189
214
156
194
201
244
209
225
168
198
233
237
152
202
233
212
251
273
160
191
155
217
172
249
171
164
216
197
249
163
194
250
196
193
230
140
217
152
196
259
174
136
292
204
184
124
221
243
232
197
190
132
197
198
242
199
240
246
201
207
198
258
245
206
218
132
195
185
232
142
188
179
243
248
242
191
186
151
221
215
218
155
166
174
215
179
188
177
200
191
134
165
203
219
227
237
193
192
163
222
164
178
237
203
227
182
183
205
162
182
228
196
190
209
202
227
140
269
222
193
234
221
166
216
220
199
222
231
181
219
181
230
236
207
210
163
190
244
187
200
197
168
197
245
235
267
199
195
213
177
247
222
160
170
182
200
245
248
150
188
230
152
184
252
130
172
156
175
233
203
189
218
168
153
200
195
175
252
277
193
117
203
192
178
169
224
176
186
216
179
179
247
233
205
195
185
219
202
184
142
221
175
157
185
211
223
157
170
169
219
228
236
207
223
160
247
131
184
190
220
233
245
293
189
186
197
218
191
210
136
206
224
167
273
203
239
91
203
198
222
205
150
217
219
161
199
188
189
228
188
191
186
203
166
119
157
200
200
218
174
194
187
188
180
179
262
238
233
249
204
180
205
208
208
231
184
184
217
175
233
204
213
182
191
200
144
226
181
172
228
135
172
191
195
223
208
252
232
208
178
219
174
184
200
155
207
217
181
164
237
224
187
260
206
158
200
224
221
226
197
182
215
222
207
177
218
194
199
200
235
146
238
228
151
196
219
244
207
230
238
234
206
245
200
182
138
214
234
146
180
196
185
187
196
173
189
211
173
196
106
235
209
230
194
201
176
231
192
201
247
193
188
192
213
157
197
248
224
188
198
115
246
195
194
203
208
208
253
221
206
213
232
225
223
185
161
211
163
183
243
195
233
202
230
136
178
188
241
181
187
166
211
146
234
203
218
233
237
197
177
205
247
190
192
246
135
242
197
191
188
171
247
156
193
159
182
235
242
170
187
200
137
217
225
243
191
244
192
177
242
214
223
177
220
227
252
198
253
193
153
228
190
130
171
251
172
162
172
209
216
169
189
248
185
138
255
223
176
169
190
161
204
203
231
218
197
173
196
218
199
250
202
239
161
206
174
247
203
168
177
249
217
191
175
198
157
186
148
206
196
224
240
274
179
203
203
240
174
181
162
219
137
195
255
264
131
213
147
153
176
233
186
162
212
205
195
191
211
224
245
173
201
173
178
196
215
233
208
191
147
253
222
180
221
159
187
163
234
207
159
221
195
136
212
190
208
204
252
256
141
191
198
181
182
164
212
203
224
192
156
200
181
175
188
241
211
248
203
194
147
206
193
179
213
174
248
239
160
157
234
169
207
262
185
89
172
254
153
228
225
199
263
210
192
227
171
230
279
177
215
194
239
253
204
188
149
160
166
226
176
204
198
197
240
205
173
203
233
185
183
246
174
212
253
160
176
217
156
188
224
209
231
185
196
166
216
151
240
205
191
138
255
182
219
208
221
246
205
199
207
202
185
236
213
185
226
211
211
242
205
197
239
172
186
159
221
174
214
208
226
202
198
179
275
145
179
186
117
168
217
276
172
231
171
229
176
205
220
189
206
175
208
157
197
242
271
189
280
199
230
217
209
269
167
145
180
237
185
136
196
194
146
248
188
171
214
284
247
167
179
222
202
264
203
228
186
190
218
234
135
251
110
243
220
237
204
173
224
207
191
232
246
183
196
186
178
195
275
217
124
237
229
179
185
120
138
250
203
184
215
168
167
181
230
189
228
199
188
173
181
164
208
208
167
235
181
117
215
163
219
209
156
165
198
248
133
220
203
227
236
231
186
141
171
156
187
186
186
227
193
181
179
181
232
209
189
177
128
122
253
246
169
218
181
202
184
197
206
253
183
259
271
159
184
184
201
222
178
173
203
205
211
183
192
263
222
185
153
247
186
196
185
178
201
218
178
149
188
188
214
148
194
202
195
215
215
252
246
174
215
245
203
244
166
217
193
247
222
174
242
247
217
222
245
227
228
192
194
231
233
245
239
249
181
196
212
247
183
176
241
217
241
174
247
226
231
213
290
186
193
279
208
223
153
236
181
199
225
153
220
153
199
237
166
189
271
132
225
170
206
166
220
165
249
147
235
220
152
180
240
213
218
200
293
191
226
209
229
278
165
199
251
160
166
107
183
223
190
175
202
149
131
223
210
176
147
215
198
246
187
204
216
218
184
268
186
184
126
173
221
245
197
200
160
202
240
215
187
183
172
169
241
165
174
254
172
213
207
246
195
230
149
264
169
198
213
175
197
147
222
194
178
174
120
234
205
214
251
284
189
192
227
185
182
182
202
201
215
161
231
206
215
192
178
174
198
226
158
238
163
219
212
230
233
190
156
207
181
195
183
181
272
159
176
177
226
199
147
158
172
164
166
163
283
231
141
134
115
135
161
181
148
181
184
214
191
179
216
175
215
207
169
236
132
200
267
252
177
244
239
239
211
174
134
175
186
217
173
175
206
176
205
193
182
242
201
182
238
201
186
122
158
244
197
170
238
166
159
160
188
230
182
232
199
197
181
188
182
175
193
269
213
207
218
194
197
181
178
260
180
159
192
138
230
189
210
213
197
162
197
159
191
220
205
218
190
217
248
195
178
173
218
236
173
254
244
174
174
189
164
189
181
170
163
171
196
230
139
210
152
204
199
168
221
219
159
228
214
216
209
221
261
152
216
220
225
204
176
247
209
158
255
242
220
185
218
173
194
249
138
209
201
214
231
266
214
201
197
190
149
195
233
196
228
160
179
198
188
186
167
243
123
203
218
231
175
205
186
213
187
227
184
180
144
222
142
191
203
220
188
223
216
248
240
179
189
257
171
209
228
230
193
210
174
172
210
169
265
218
177
200
222
220
214
151
214
176
228
212
311
225
181
190
241
220
188
167
199
192
202
228
186
213
184
237
258
212
177
237
235
176
260
183
225
186
179
141
250
204
129
193
230
202
233
154
236
235
202
210
252
262
228
242
230
144
251
140
158
205
145
174
188
190
221
237
159
202
271
216
224
223
239
200
114
212
182
172
230
180
206
169
250
181
220
216
138
218
202
224
207
227
238
229
286
159
215
208
199
216
209
246
244
254
157
246
198
158
165
226
183
219
207
155
204
174
205
195
195
141
178
165
150
205
149
218
207
245
205
218
113
233
155
244
236
226
221
171
235
172
146
203
175
141
190
193
231
163
181
218
158
204
234
255
189
160
169
243
177
185
193
147
200
183
177
199
175
160
254
158
229
246
139
249
252
176
171
247
194
203
206
235
210
158
228
132
182
193
190
219
226
194
234
214
182
179
183
236
166
176
218
194
247
193
167
145
170
151
166
204
219
148
173
139
178
182
214
261
212
209
249
165
223
208
145
237
140
232
204
205
170
236
233
211
173
224
235
175
230
215
185
170
174
162
195
192
208
216
183
184
211
171
205
151
217
179
199
196
196
245
173
146
230
162
204
170
194
201
250
164
194
157
216
213
221
187
224
194
239
223
253
211
175
206
226
248
204
188
201
224
198
213
154
159
232
221
224
168
191
135
193
225
104
225
199
138
185
236
141
221
164
174
191
205
173
244
211
236
178
219
252
184
203
187
175
184
170
194
172
252
238
200
170
277
131
191
189
219
193
243
242
163
189
159
184
218
174
175
230
247
216
233
195
190
261
277
182
154
247
189
191
211
195
199
190
250
214
161
192
206
180
239
193
150
213
164
203
170
143
196
211
202
242
202
169
228
237
220
178
240
208
236
169
131
226
163
156
264
198
217
192
217
188
250
193
176
221
150
244
202
198
195
204
161
211
77
205
193
223
221
203
174
218
194
251
245
200
177
211
244
268
206
163
167
231
146
220
154
161
152
219
211
236
193
137
190
188
202
218
196
171
188
186
153
225
224
191
283
105
184
148
150
206
189
234
226
149
251
205
194
126
264
248
235
205
219
249
139
220
172
150
132
224
141
207
265
231
221
145
192
223
186
218
187
259
123
227
207
199
200
245
143
245
199
199
212
141
210
246
199
190
204
146
230
234
218
223
179
180
196
199
137
199
176
135
202
180
188
227
227
230
170
232
231
172
218
178
237
219
146
143
262
175
151
268
200
188
263
194
263
208
252
177
177
99
193
240
214
244
193
165
229
202
224
199
121
195
233
195
177
234
173
167
207
220
140
193
195
202
190
268
176
160
185
174
166
216
159
231
147
171
151
197
181
207
205
197
285
208
190
199
179
162
211
229
251
215
233
200
187
159
160
221
176
198
210
186
187
241
254
196
194
182
179
210
178
213
221
184
153
239
164
232
227
209
209
260
195
232
205
190
231
205
231
228
209
158
227
228
78
248
170
211
152
205
187
217
197
217
145
215
196
154
163
183
181
197
184
222
241
198
285
201
194
202
242
261
164
195
184
165
162
145
168
145
246
179
216
229
112
237
226
186
224
194
224
152
163
275
184
182
205
226
279
235
194
182
221
212
182
258
202
238
135
193
237
242
192
131
220
226
244
195
214
240
241
259
210
240
131
211
281
192
230
222
196
178
173
218
200
175
220
252
239
178
161
201
188
165
221
214
143
217
113
188
201
237
196
170
188
205
198
255
261
147
233
246
153
205
222
242
138
215
177
232
146
195
178
211
206
220
245
214
223
212
231
158
218
272
216
195
215
174
254
229
213
164
249
152
166
198
156
192
194
200
187
137
233
230
194
151
224
222
184
175
184
222
233
161
234
236
187
160
207
238
181
232
215
204
207
166
167
198
278
203
213
207
162
166
247
175
232
202
206
256
196
249
147
240
208
189
218
184
154
221
218
228
223
215
232
163
224
206
242
207
224
224
162
246
178
155
161
229
262
274
172
197
234
208
133
213
139
142
125
231
187
259
256
200
213
213
156
175
205
256
196
220
144
254
190
129
231
165
180
221
266
262
162
235
201
151
161
199
158
226
189
164
243
84
214
202
181
211
216
235
208
217
157
219
205
152
216
224
183
199
241
218
162
257
259
177
226
174
108
185
226
215
128
203
182
231
145
249
180
167
192
153
188
196
154
209
235
215
200
172
235
162
104
173
193
220
197
236
218
189
199
187
251
222
230
242
151
228
168
174
203
209
222
191
206
201
181
209
222
216
191
201
244
200
199
228
232
227
216
189
214
239
130
174
173
200
217
159
214
183
224
154
235
142
257
208
222
202
215
247
214
204
212
186
108
172
208
160
248
187
183
210
136
182
186
216
218
214
189
210
148
212
241
209
242
239
183
209
277
176
214
213
231
218
159
197
222
182
153
194
188
243
194
207
217
200
240
238
222
112
228
183
192
177
146
231
180
204
178
251
156
173
225
226
268
234
145
230
170
209
222
227
207
252
244
206
234
175
146
192
181
245
182
233
194
195
124
191
175
244
215
239
184
202
223
201
204
240
212
206
137
187
188
144
123
225
191
240
179
183
185
192
156
200
189
194
204
159
250
170
292
136
134
185
178
198
169
216
202
188
160
199
232
229
213
204
250
232
193
149
199
143
177
213
157
180
210
190
145
149
135
228
242
167
195
194
181
236
120
249
200
165
230
249
219
214
272
187
162
225
243
232
236
242
179
180
171
164
175
213
206
190
262
252
148
144
215
165
167
215
188
168
260
195
194
204
205
184
180
233
233
172
218
193
199
245
209
185
236
246
146
193
128
208
161
170
181
160
258
182
243
164
156
246
240
191
225
182
203
124
268
239
170
146
194
188
243
195
183
257
191
197
242
196
220
241
198
143
230
261
125
167
220
229
213
168
215
169
142
198
161
175
202
212
205
177
228
210
223
210
146
274
184
215
209
104
142
216
207
204
168
244
228
187
202
182
197
212
238
220
186
131
218
169
212
212
177
226
184
93
102
183
254
206
222
157
174
266
152
218
221
226
171
182
248
185
154
209
117
233
220
289
181
232
192
157
269
275
205
181
159
190
212
211
236
191
191
143
214
184
211
211
156
221
171
127
158
222
217
190
180
184
129
172
216
184
217
192
208
184
210
150
181
200
161
250
201
261
174
184
209
213
200
179
210
174
182
212
245
212
200
195
187
197
201
218
141
222
243
230
167
244
218
231
148
227
231
200
229
178
189
147
203
219
180
145
148
166
181
180
160
153
143
199
240
209
204
177
141
142
211
222
188
94
253
209
213
190
191
217
212
204
236
217
249
193
226
242
226
181
196
193
183
214
211
235
146
200
248
167
222
181
203
189
235
224
191
211
237
154
167
218
220
257
223
190
212
238
157
178
208
207
205
127
218
235
177
217
223
227
224
203
162
188
254
222
135
194
205
117
188
176
224
210
170
284
150
188
143
119
250
203
206
221
228
232
222
174
160
172
215
180
252
218
176
192
214
213
151
172
252
259
236
190
226
205
190
116
147
218
170
196
137
171
194
227
243
290
167
205
261
152
150
193
198
196
200
233
169
214
235
156
173
199
194
186
216
214
185
229
221
217
233
164
201
147
190
198
184
174
176
221
146
215
196
239
218
143
166
231
218
230
238
125
233
198
176
226
194
233
144
183
214
160
208
151
265
207
158
183
199
235
176
213
223
180
209
190
218
233
194
190
223
183
194
118
220
129
238
230
169
239
240
192
183
196
197
152
192
266
221
221
200
124
242
120
188
204
200
184
205
213
211
226
179
187
174
143
262
194
248
203
251
220
221
221
196
206
236
232
200
181
174
225
251
166
233
248
253
218
186
178
261
180
165
220
169
221
220
150
145
143
229
221
174
94
212
202
204
259
201
224
184
252
195
173
182
210
202
178
213
234
210
240
188
181
245
207
223
150
142
206
230
162
167
192
177
153
239
132
249
254
234
171
209
241
190
141
271
248
211
140
243
231
234
203
171
228
143
150
170
145
155
167
165
156
143
235
197
231
163
227
152
175
203
213
241
229
175
244
163
210
195
170
169
196
191
215
194
219
216
207
152
222
157
248
226
148
114
177
195
188
178
225
246
162
228
179
212
118
200
174
235
171
170
191
187
261
160
216
197
147
194
153
220
201
204
216
210
272
176
196
178
226
218
176
205
240
208
239
220
176
204
234
226
197
228
215
201
209
188
206
198
246
222
167
235
183
164
196
193
235
197
198
155
194
229
162
170
162
176
271
250
187
133
164
189
141
256
198
227
209
170
190
151
247
245
158
180
224
194
184
203
205
175
220
189
261
146
180
237
219
234
222
145
200
216
180
236
207
212
169
202
147
187
189
233
246
195
197
138
173
164
161
180
181
231
221
150
236
233
166
175
138
169
149
224
224
139
244
166
233
191
162
195
166
183
166
203
163
192
218
211
198
223
225
170
165
203
169
193
228
117
180
243
264
214
153
222
220
209
200
168
220
201
219
266
181
211
222
227
195
206
140
222
169
217
180
206
166
188
237
173
191
161
170
216
263
202
181
198
218
203
266
190
169
140
167
204
193
208
235
224
220
271
192
132
228
201
226
220
214
195
185
186
224
166
229
195
219
174
179
188
219
224
230
202
209
161
138
209
220
186
161
220
157
227
198
239
208
178
259
265
189
195
245
180
205
200
231
211
213
151
197
146
156
225
182
214
222
187
206
248
154
236
200
267
129
197
229
155
210
204
195
226
189
165
159
213
232
107
162
184
219
202
188
153
253
158
173
229
204
166
143
243
163
193
217
176
228
193
159
204
214
155
196
178
169
254
206
119
222
231
156
181
184
223
191
228
155
262
216
232
249
193
195
157
249
204
288
214
206
175
185
200
211
186
237
223
191
318
153
199
224
193
215
251
173
175
176
125
152
161
156
172
281
181
157
172
211
180
199
188
247
263
229
181
198
197
227
222
175
164
224
262
191
275
188
223
224
184
174
169
228
194
204
257
115
250
207
223
184
195
210
185
163
190
175
220
212
188
145
188
184
203
213
165
242
209
163
203
201
183
209
245
195
221
218
229
179
168
138
185
180
192
172
192
216
222
192
149
157
222
237
177
240
239
256
180
177
235
246
192
196
264
177
232
189
172
157
199
228
225
234
233
199
217
196
207
177
209
178
219
247
252
271
197
211
268
205
249
227
149
172
232
199
181
196
213
183
206
225
190
213
204
206
226
208
232
227
228
252
228
201
129
278
195
230
185
233
161
251
212
203
180
201
191
177
200
246
188
200
215
179
209
110
196
207
197
185
176
179
162
234
202
255
187
207
211
202
109
236
201
198
163
256
255
130
208
257
190
237
175
198
221
252
170
213
246
233
199
229
216
208
165
118
231
195
241
209
219
218
173
247
187
203
225
239
185
175
222
210
214
154
230
185
182
229
147
149
155
149
257
183
212
214
225
231
204
229
183
140
197
173
186
243
208
242
177
242
202
213
199
231
250
188
195
171
160
224
193
242
218
223
174
197
198
247
178
231
210
200
123
238
166
213
182
247
211
136
186
210
240
180
197
191
167
184
187
247
191
207
191
221
232
186
250
233
196
184
224
203
202
190
211
164
171
214
272
198
170
178
228
208
190
165
190
222
230
225
221
168
197
167
119
212
203
208
171
159
174
160
167
184
199
248
184
230
224
254
198
214
192
230
254
173
225
168
251
188
229
242
217
209
237
210
193
235
179
204
220
228
237
148
224
261
124
256
233
191
228
163
176
261
163
216
155
192
149
228
172
258
206
190
210
217
244
256
186
202
188
167
236
179
232
210
125
256
184
222
237
226
219
208
144
238
211
176
136
220
199
196
219
145
230
137
201
243
202
234
183
215
234
214
241
232
256
215
197
208
218
227
205
208
164
190
220
195
211
195
216
175
232
181
213
227
240
163
218
186
176
197
190
226
274
216
201
159
228
237
167
183
218
201
244
111
175
220
183
221
225
219
211
196
180
196
208
201
171
209
172
147
189
219
196
225
222
266
221
137
165
215
208
212
179
192
251
168
220
204
206
215
182
200
162
240
249
268
141
189
233
178
151
185
228
204
208
209
243
189
127
159
220
227
230
203
228
241
198
241
196
121
209
203
210
206
196
203
203
215
154
179
205
191
185
233
184
231
210
188
181
254
223
221
195
207
161
198
207
180
226
220
227
231
192
191
187
235
188
177
279
232
212
205
211
156
174
200
212
207
198
237
155
208
242
237
205
231
172
187
160
221
237
219
228
129
185
210
236
234
161
229
229
144
149
210
224
173
225
166
210
201
164
245
221
254
249
216
153
238
193
254
160
180
147
250
265
265
181
159
191
180
224
185
231
209
211
187
200
202
145
171
190
170
167
195
173
225
185
204
139
207
206
179
183
240
235
197
205
174
188
168
153
208
250
189
256
206
226
257
196
217
207
246
208
189
186
195
156
216
170
239
234
204
184
199
202
184
188
159
232
213
216
243
176
129
166
228
170
225
163
147
250
175
197
201
168
208
208
166
145
207
231
210
174
205
227
248
234
217
208
187
188
120
232
215
168
231
140
189
229
204
173
186
170
231
196
215
215
249
222
243
222
173
197
193
192
162
258
201
187
219
136
231
205
137
179
201
233
211
197
263
193
207
144
223
183
198
249
161
169
214
201
211
199
177
193
241
169
215
216
229
252
196
145
242
242
227
206
176
271
201
221
153
184
218
197
152
194
234
217
186
187
202
170
214
236
194
209
269
190
212
222
219
167
127
179
248
203
232
258
169
230
200
210
178
226
236
226
162
153
221
175
249
213
192
228
143
147
188
197
186
201
153
210
121
182
209
208
242
219
143
190
183
220
187
201
220
138
237
210
169
186
254
213
214
194
186
167
247
219
239
206
238
209
206
212
262
156
229
228
137
180
172
258
231
170
194
242
189
236
189
219
197
161
222
179
141
178
187
167
136
242
259
191
143
241
218
247
213
176
169
229
198
196
217
240
226
207
195
163
225
211
188
154
182
237
171
201
245
160
223
235
183
227
207
205
209
229
279
221
194
197
242
205
209
247
166
203
183
178
173
225
204
263
201
160
205
186
134
221
184
138
203
196
179
140
211
216
168
201
200
190
182
272
231
237
192
256
215
214
208
219
264
230
244
267
163
138
191
171
156
147
195
213
213
244
178
179
190
211
179
205
206
200
198
164
213
224
114
205
231
224
226
248
176
183
166
220
230
226
154
206
225
184
178
209
203
230
237
220
192
248
199
176
175
206
201
228
234
220
153
279
202
206
205
222
190
211
221
166
240
187
247
185
204
240
184
194
220
205
175
189
214
233
184
184
233
159
157
192
197
187
230
230
217
223
269
237
209
228
179
172
190
236
220
189
173
170
142
240
185
160
218
240
253
245
180
174
208
256
189
254
158
269
177
183
236
211
192
234
108
153
170
183
250
190
198
146
188
187
223
161
242
217
169
207
190
145
177
243
150
245
190
213
150
229
200
167
266
197
178
224
135
228
128
182
266
195
172
177
127
191
192
196
241
128
191
254
215
195
200
165
176
169
172
221
245
204
190
175
189
237
172
223
183
243
235
152
213
156
247
223
199
173
220
201
158
186
175
268
165
167
138
185
209
206
181
260
237
208
202
154
183
168
196
154
200
157
183
235
158
146
235
206
147
250
195
152
225
172
218
235
233
156
190
213
181
233
219
186
210
195
166
229
147
204
239
192
246
274
222
157
180
203
231
185
213
245
155
153
187
189
158
191
212
239
234
242
210
138
160
148
188
199
133
146
176
185
192
199
185
210
210
132
202
185
206
173
236
205
200
213
190
230
174
237
255
179
164
218
224
192
183
177
179
178
225
220
155
216
178
183
161
172
202
179
144
205
178
240
225
224
204
231
164
167
183
138
197
232
231
212
239
196
191
208
167
145
175
262
181
192
230
162
228
232
211
143
179
268
256
192
197
145
225
223
175
252
158
144
223
193
205
197
194
194
227
193
106
213
185
126
150
159
198
180
164
203
186
145
178
189
160
260
176
164
249
65
185
250
127
247
226
194
156
200
229
196
194
253
150
147
208
197
192
157
243
224
162
140
229
230
205
188
281
206
211
221
183
175
260
162
248
228
242
157
204
192
259
208
225
162
199
186
186
203
268
267
165
249
159
209
250
214
174
187
193
217
170
220
187
233
222
160
219
240
163
257
232
200
227
184
223
186
197
213
204
255
195
230
197
217
169
169
229
209
166
229
168
167
259
224
164
196
228
152
216
142
241
210
159
177
228
263
200
178
209
199
228
177
165
216
176
195
225
223
199
173
184
161
176
175
171
226
169
234
235
148
205
129
226
219
215
180
208
159
141
130
177
171
184
208
242
266
134
212
263
175
208
130
218
130
201
162
164
200
209
208
188
234
191
262
213
145
182
213
206
151
209
179
259
246
223
244
258
122
235
196
225
253
164
248
151
194
197
261
154
206
253
232
193
173
248
224
213
190
200
150
201
192
173
193
215
179
245
238
231
147
257
143
139
204
236
185
185
214
227
155
241
179
130
171
191
261
194
242
178
190
228
196
236
183
203
142
202
215
208
226
165
197
263
225
248
185
179
174
236
225
241
182
152
264
250
234
227
198
179
182
205
196
214
219
173
190
164
231
191
197
294
177
238
219
167
149
234
210
168
196
135
201
208
185
195
203
180
154
190
209
300
254
156
242
178
197
235
257
174
230
148
185
205
201
206
247
254
161
187
235
165
227
203
283
220
186
147
112
237
241
110
256
221
211
205
203
206
214
125
195
207
196
136
186
203
209
251
190
221
218
172
189
247
196
177
198
168
223
136
236
242
224
236
144
207
191
234
243
226
153
263
164
123
209
112
152
222
230
252
174
245
201
223
220
247
191
199
220
226
201
212
278
237
125
226
227
223
184
205
164
194
189
220
212
214
186
165
219
271
176
208
152
137
141
184
142
210
243
174
220
161
163
189
163
189
141
142
141
186
224
218
182
210
179
198
200
221
211
171
152
258
198
183
138
188
102
208
210
168
200
253
218
158
224
250
192
182
233
177
205
163
219
169
213
208
169
189
191
201
214
202
185
241
243
162
203
237
167
198
201
194
207
233
218
203
239
226
213
242
232
151
203
211
237
229
221
166
218
165
210
189
204
231
192
170
209
201
206
202
217
209
212
202
255
214
192
145
133
202
221
232
163
158
220
254
239
202
206
148
198
254
209
162
171
169
240
235
175
167
204
260
231
137
264
213
164
240
223
213
210
193
218
227
202
192
137
214
204
241
168
246
239
265
195
179
197
176
183
271
196
207
145
253
171
187
228
189
207
225
199
237
173
244
192
197
250
211
210
167
199
220
210
202
202
161
226
214
248
190
148
248
200
196
258
152
205
203
130
210
171
165
217
212
244
181
164
183
227
300
162
206
230
199
207
176
201
213
243
203
138
186
191
156
138
199
190
232
155
189
242
243
162
178
229
202
178
240
267
239
175
194
174
228
171
124
213
221
208
182
211
221
207
187
220
222
154
235
265
160
172
192
184
249
183
119
203
132
273
169
177
176
244
192
177
256
146
236
239
165
213
139
213
229
160
215
152
232
223
191
222
289
213
197
207
192
236
216
126
173
202
140
284
187
242
202
219
204
164
185
198
194
198
195
223
206
206
222
122
218
221
209
239
208
237
196
263
220
184
186
186
192
205
213
188
254
245
180
227
207
227
239
230
225
212
204
149
179
250
164
185
254
171
201
225
190
167
180
200
211
238
192
176
205
248
192
247
181
231
226
135
167
223
191
159
216
216
167
260
203
202
244
201
241
174
198
185
283
204
177
222
201
137
207
218
260
256
155
237
188
191
210
192
277
124
228
209
205
264
234
182
210
241
206
191
177
122
178
232
203
185
190
215
193
252
235
203
203
234
198
203
174
218
212
172
216
173
146
200
163
243
215
200
248
218
206
178
189
208
246
205
171
176
229
199
213
145
213
197
172
167
198
236
195
196
212
204
166
133
194
152
232
220
246
158
174
211
243
189
230
239
158
166
237
220
224
187
124
182
206
169
208
264
236
149
235
231
188
227
152
200
220
225
241
203
207
237
208
203
174
238
189
242
198
175
192
198
212
214
217
234
198
196
164
221
229
230
134
242
123
140
222
188
201
231
201
202
179
239
250
258
233
229
220
189
167
158
170
254
214
175
177
169
232
239
155
181
199
194
216
169
269
186
168
215
163
141
276
197
214
232
145
204
258
208
200
271
181
181
189
241
169
213
210
245
248
167
226
148
193
229
262
173
172
218
183
185
225
168
205
178
210
145
221
206
212
212
178
136
247
226
226
196
233
206
192
145
143
132
189
194
188
152
215
214
160
220
192
199
214
218
215
235
225
235
160
182
244
140
163
202
122
210
227
216
192
237
192
194
178
256
197
159
205
222
188
156
152
180
249
196
220
185
212
236
188
199
243
140
259
188
199
195
195
183
267
247
167
221
249
240
180
198
220
173
185
174
159
157
274
171
170
183
165
278
155
188
199
187
232
213
250
223
186
263
256
168
162
212
191
224
225
246
165
186
191
226
200
250
190
190
191
205
146
220
247
283
246
232
183
233
204
178
186
194
202
174
194
184
180
190
186
165
195
225
237
219
236
233
190
235
157
272
187
196
232
185
216
222
205
278
161
220
205
201
208
220
244
166
211
233
243
222
165
240
272
223
242
191
186
215
204
235
177
219
190
244
158
199
168
237
174
148
224
199
188
250
224
239
161
186
233
148
228
201
262
168
125
160
211
232
215
239
193
159
264
147
123
200
210
227
234
224
234
189
245
190
214
175
194
183
192
195
171
195
171
254
185
219
231
282
120
169
245
222
175
227
253
204
220
168
205
204
200
196
178
180
224
226
164
149
227
261
208
227
172
160
157
210
201
188
185
206
212
227
199
208
189
171
199
200
265
280
260
177
237
226
235
250
213
166
161
167
218
210
228
209
161
177
173
213
168
244
195
180
155
269
177
180
227
175
149
173
189
259
225
202
207
142
236
198
253
224
171
214
189
171
149
150
152
147
188
144
193
191
222
244
263
199
183
158
167
186
210
244
129
202
149
199
150
240
246
166
261
228
182
206
250
220
225
189
176
168
164
210
202
164
198
164
208
236
266
226
240
227
153
188
206
215
195
185
223
217
218
192
143
185
190
237
213
161
197
183
188
214
183
235
124
229
214
172
183
228
215
203
252
203
197
219
264
200
173
238
228
167
185
170
185
131
191
198
216
214
196
239
226
224
136
213
240
195
179
199
186
164
237
192
209
191
206
220
206
208
149
197
168
232
190
207
190
283
212
250
197
188
262
120
214
250
196
218
188
193
167
235
148
185
176
227
225
200
197
218
220
200
257
247
246
191
151
189
213
236
247
219
263
185
124
213
213
195
192
179
168
230
213
212
245
188
181
191
145
236
193
243
195
202
201
218
170
190
228
186
121
196
268
180
156
258
255
193
250
197
136
167
220
181
218
178
147
256
209
257
211
249
156
197
235
173
189
186
185
158
230
162
203
174
172
262
175
232
228
218
242
156
144
199
190
236
174
226
134
282
149
242
212
205
157
194
270
196
185
160
251
208
213
219
192
167
220
261
123
236
195
245
241
129
240
212
240
203
176
211
213
170
211
225
177
230
182
223
235
183
173
206
164
197
161
179
206
158
231
189
192
214
177
210
257
195
201
219
197
230
221
225
227
217
255
235
163
178
215
187
121
250
196
193
199
172
223
248
106
212
167
197
115
225
199
208
208
237
192
244
239
187
210
183
204
194
276
187
144
236
267
222
172
244
201
146
201
221
230
161
223
182
247
134
182
198
263
191
227
137
240
248
191
223
179
195
183
152
214
182
240
206
184
223
210
211
217
220
172
196
170
186
194
250
289
174
199
183
217
150
194
180
140
192
208
231
214
227
165
196
172
243
191
214
194
288
198
269
177
237
198
230
234
211
214
168
183
235
181
194
207
261
189
232
222
162
198
173
216
212
201
231
184
197
182
208
187
209
231
238
198
212
202
249
223
225
191
176
157
133
193
205
220
251
192
210
180
185
229
219
226
261
188
172
224
202
231
152
148
209
114
204
235
137
207
190
193
194
244
156
224
214
175
219
211
236
218
129
224
234
143
226
162
209
248
197
241
209
227
155
200
249
228
198
228
197
190
226
227
190
237
198
216
202
129
266
185
177
189
148
165
211
191
204
211
200
169
154
216
232
192
165
125
207
176
204
183
209
165
229
178
197
253
189
201
102
210
141
253
197
245
145
194
205
213
222
211
183
176
250
247
202
182
117
210
249
130
169
167
148
162
284
204
244
146
215
118
154
252
176
173
190
156
183
210
190
256
224
218
214
234
196
230
206
199
138
219
188
233
158
169
209
256
149
97
208
217
154
213
156
161
194
206
223
225
161
157
195
186
152
205
210
223
232
243
187
224
191
194
204
199
211
216
160
195
227
220
243
271
215
175
185
227
251
205
229
195
232
200
220
222
225
245
219
178
213
229
213
206
166
191
271
246
185
164
258
164
198
142
182
172
189
208
193
217
154
246
223
238
168
200
205
111
207
159
217
240
227
215
154
155
181
219
198
186
251
182
236
146
189
154
189
216
193
168
256
183
179
148
139
197
177
195
231
238
223
245
181
212
187
212
193
240
181
161
229
191
188
183
200
230
199
212
173
191
238
188
142
193
187
170
176
169
178
257
197
263
230
225
198
177
183
164
275
238
194
130
148
232
195
229
192
186
197
226
226
196
212
235
229
243
217
232
205
230
209
256
238
236
222
242
136
258
179
182
177
213
192
190
190
260
142
203
146
170
127
193
205
174
228
205
227
212
235
215
178
189
177
183
199
223
181
208
199
210
206
138
238
157
204
230
131
210
202
207
206
147
186
231
195
231
233
166
170
208
192
223
163
229
191
185
192
177
234
243
219
203
169
227
166
198
187
233
200
169
230
186
209
170
200
142
166
166
190
214
297
217
185
183
222
188
193
194
192
173
220
218
191
209
226
219
182
231
124
140
223
186
267
232
173
211
149
186
252
210
200
183
209
217
192
122
233
238
296
183
203
232
200
212
239
231
162
152
178
230
244
262
232
177
198
147
183
149
118
148
157
173
154
184
156
200
128
218
172
187
202
98
170
174
252
191
247
154
218
188
240
170
188
203
233
206
217
166
177
259
224
178
191
212
225
205
186
163
191
240
223
216
221
207
190
206
145
157
216
257
233
320
219
181
210
200
199
204
189
147
179
187
232
135
181
175
235
212
216
191
178
232
136
113
224
183
232
242
220
238
174
205
183
188
154
181
175
131
181
185
229
195
189
223
165
225
178
176
212
191
211
123
218
145
207
224
215
245
161
172
163
224
212
194
258
218
206
188
181
121
180
244
188
202
197
225
247
204
197
218
215
202
182
209
225
199
229
172
226
239
237
236
188
178
192
217
143
270
164
233
210
193
196
226
202
191
134
173
206
234
237
177
239
164
206
206
170
278
218
183
181
275
243
197
109
163
234
222
190
219
237
178
163
152
150
159
173
166
228
209
206
187
263
202
200
199
181
230
230
176
178
189
200
148
215
206
262
193
172
277
227
234
207
167
158
198
212
189
185
232
214
172
176
193
228
192
128
181
166
232
277
174
183
257
202
275
219
171
173
171
173
202
238
232
218
246
126
222
188
229
266
257
167
204
231
197
211
173
214
188
207
173
237
159
176
202
227
219
181
257
278
183
168
209
239
180
214
166
250
192
180
205
174
232
266
173
237
220
186
238
193
154
213
195
182
244
239
207
197
218
240
133
166
196
239
199
224
246
195
292
253
199
243
146
161
175
162
184
237
213
186
206
219
259
225
236
236
233
228
140
220
218
182
189
180
228
195
148
180
201
218
141
270
194
237
201
183
226
130
206
163
211
156
190
243
189
231
86
136
188
167
219
229
198
239
197
197
209
200
186
223
165
194
138
187
238
210
160
179
229
179
195
165
220
208
181
216
121
240
224
195
217
199
192
205
191
235
268
164
177
191
233
211
223
160
274
196
218
206
223
202
215
252
204
188
164
176
205
199
219
151
231
195
184
201
232
207
185
166
234
274
249
166
210
213
148
254
110
232
189
209
227
202
247
164
237
200
228
248
197
196
239
190
185
143
209
219
232
209
168
192
177
180
197
230
206
240
240
203
181
189
97
252
168
195
224
224
233
198
217
158
256
260
169
159
273
184
197
189
177
151
254
224
169
222
220
217
238
200
240
241
161
167
106
254
243
204
234
232
173
160
165
256
229
214
222
233
230
191
189
252
190
132
169
237
210
209
188
245
148
218
236
230
122
222
199
205
216
168
197
283
85
147
173
267
219
153
243
188
233
157
212
209
216
281
216
157
229
245
210
173
206
196
179
253
183
169
197
203
147
224
189
200
176
224
219
219
219
230
211
176
218
163
266
248
238
176
178
170
222
202
215
185
240
178
163
189
173
171
198
204
183
228
169
223
194
159
152
186
220
235
263
216
167
183
196
137
209
204
170
238
189
162
258
228
229
286
182
144
182
243
171
161
232
205
198
170
250
193
251
233
174
180
177
237
250
207
111
276
252
190
170
245
217
159
182
215
186
215
179
217
231
210
163
161
201
169
199
213
264
133
222
171
120
180
142
181
210
205
160
184
213
220
190
182
177
264
185
194
206
176
179
222
131
236
199
185
172
217
202
182
201
255
174
213
153
151
210
213
168
221
253
154
262
221
225
190
192
183
199
181
223
132
204
233
208
188
154
157
240
229
234
221
114
165
139
208
164
259
137
164
234
182
240
209
203
201
156
179
154
214
238
184
178
158
191
196
229
245
228
212
214
188
266
168
197
223
199
131
209
232
169
267
229
164
173
203
216
244
187
183
192
210
247
196
211
214
223
228
160
175
220
193
249
186
185
196
186
235
243
249
143
186
221
138
187
199
155
245
185
214
212
187
213
191
257
208
234
232
197
144
214
213
239
249
206
240
225
206
188
211
262
191
237
195
196
180
196
224
148
234
167
178
155
247
244
195
172
257
229
216
188
234
220
228
195
147
213
149
141
178
236
137
234
164
222
233
182
129
146
195
172
215
209
263
216
199
204
243
245
170
207
149
245
280
190
151
241
159
189
232
217
169
177
182
198
236
178
188
252
232
157
204
206
177
204
117
172
188
197
291
218
205
224
255
237
200
200
238
205
181
218
193
129
206
177
197
169
165
189
270
224
113
192
238
219
168
191
229
174
204
259
244
205
223
177
171
262
117
211
158
210
187
242
235
215
196
228
183
232
211
187
199
233
240
194
180
178
195
173
109
177
208
251
196
197
168
228
172
254
190
187
216
217
232
113
197
194
225
220
168
213
207
191
214
163
200
196
132
222
143
171
140
178
235
153
142
184
194
198
232
230
195
139
166
184
204
155
162
199
281
171
240
162
154
202
195
228
235
251
172
178
267
231
177
199
287
191
120
186
238
217
238
163
194
259
227
185
147
161
210
215
190
166
215
154
205
207
185
248
180
208
191
143
169
171
174
195
152
154
266
211
201
206
226
220
108
211
174
197
138
173
111
154
223
193
169
213
182
222
164
193
200
142
195
176
186
225
167
200
251
204
137
158
189
275
204
238
272
214
165
227
168
207
174
211
214
179
174
206
152
248
139
178
213
237
221
181
266
226
226
166
269
156
168
220
170
178
208
215
203
232
237
163
201
197
256
193
273
211
209
199
121
267
229
236
140
241
234
221
216
274
220
247
219
235
250
225
222
177
264
209
170
211
216
174
256
280
243
165
218
191
214
211
208
191
205
166
238
216
226
221
190
233
119
212
184
160
127
206
189
259
255
241
171
208
204
212
233
209
213
248
180
181
187
182
182
152
192
168
152
160
175
198
219
199
229
191
216
179
247
227
193
205
216
208
207
224
228
170
231
205
165
215
189
235
205
223
185
218
205
235
210
212
117
207
226
191
217
209
238
167
300
263
224
170
231
199
205
136
182
244
128
216
219
216
263
210
135
204
239
181
246
192
240
196
272
146
197
196
208
212
182
226
176
229
103
210
270
205
194
197
221
166
132
202
232
182
204
162
219
234
182
201
208
193
197
209
207
155
197
235
232
205
178
171
182
152
118
192
233
190
180
216
245
125
238
186
198
165
235
192
247
202
193
202
231
219
259
202
187
261
208
201
200
261
230
183
233
166
207
185
153
218
228
196
216
228
129
185
153
166
213
169
202
227
162
220
185
235
208
245
157
228
248
188
263
229
277
211
217
141
196
216
197
190
194
162
74
185
166
179
220
214
208
159
210
189
194
219
183
224
188
200
230
175
132
164
243
235
181
230
164
241
207
226
189
198
224
198
223
221
233
230
260
198
216
227
289
245
217
162
162
177
170
211
196
219
214
218
183
233
185
165
206
138
209
179
193
211
184
239
244
212
177
240
175
205
201
165
230
234
185
199
235
156
202
235
192
219
184
232
215
220
221
156
171
265
205
258
213
227
170
260
184
181
210
183
195
221
224
153
217
202
215
168
217
143
170
213
231
187
245
192
203
249
252
208
205
195
282
188
242
212
221
164
185
222
168
187
202
131
188
187
197
205
216
236
217
241
126
210
170
129
217
132
155
200
220
110
205
167
172
237
197
239
219
140
217
212
206
206
161
154
193
257
200
256
223
213
196
232
202
167
191
168
241
190
221
193
211
181
224
214
188
154
169
190
221
229
128
230
124
200
245
248
198
168
209
202
124
216
279
217
224
222
176
230
153
202
211
188
229
233
170
255
193
189
121
162
192
209
144
224
158
192
141
249
257
186
158
175
228
269
172
195
135
166
240
204
178
232
149
193
163
220
227
233
186
197
198
275
214
226
201
206
198
224
189
179
209
210
250
225
222
195
198
209
218
223
234
225
173
215
180
183
184
181
168
192
218
178
179
238
201
207
237
173
199
114
204
218
179
174
251
157
169
213
208
182
154
197
208
195
136
226
141
180
206
196
187
231
239
101
206
136
169
226
162
236
251
151
235
221
178
186
217
286
193
190
232
119
148
197
185
193
207
157
225
160
280
201
152
224
216
167
237
121
231
222
142
168
232
182
205
196
242
258
184
221
190
230
161
226
171
174
213
203
240
202
241
171
222
225
217
234
126
221
179
209
175
197
178
205
207
240
249
186
186
190
223
240
248
176
196
192
248
230
212
151
219
162
176
232
246
202
184
257
178
172
196
207
194
175
140
185
236
183
161
211
153
147
179
221
211
133
213
203
244
214
227
191
202
248
187
182
224
182
240
161
193
244
126
270
231
170
230
202
200
200
151
157
132
195
170
189
145
185
173
211
163
170
184
213
218
189
220
178
201
258
171
280
250
158
227
185
196
201
206
211
164
183
186
183
230
217
196
200
217
191
219
160
158
181
190
197
218
227
193
145
167
256
183
176
228
203
205
219
236
166
274
157
143
217
226
240
187
263
263
210
271
193
190
222
188
196
173
250
215
170
193
201
181
263
225
228
214
143
273
228
203
191
210
255
169
245
252
233
204
162
168
128
160
155
220
197
233
193
220
207
167
170
195
213
226
178
208
177
130
254
182
141
214
238
170
184
252
216
222
150
212
247
203
211
193
212
160
209
199
255
235
261
198
229
194
233
207
160
227
167
235
228
173
207
176
217
129
228
156
228
230
264
208
214
221
184
205
205
216
156
174
193
243
197
172
226
241
130
159
213
170
227
259
194
226
225
171
159
219
171
260
228
177
282
218
233
172
206
223
202
192
188
169
180
218
263
231
102
257
199
80
220
213
194
240
208
117
130
204
212
218
184
182
186
221
148
275
281
179
228
194
165
210
194
148
179
182
161
158
196
157
200
179
220
179
181
225
169
195
151
240
224
266
234
178
238
176
178
221
184
210
214
242
157
201
214
185
228
207
233
197
185
219
186
211
227
197
177
243
168
183
226
216
225
163
205
160
187
222
194
145
222
230
196
190
195
121
221
210
175
208
149
182
160
225
173
229
141
227
254
211
205
127
149
189
237
169
224
180
242
265
216
165
197
204
253
169
176
204
144
198
272
216
225
178
222
211
202
200
210
198
159
223
186
200
203
206
212
173
189
247
195
248
235
188
213
223
178
199
189
208
230
225
196
180
180
91
227
251
181
214
234
186
231
271
231
146
166
220
172
203
191
222
198
190
274
176
215
227
181
148
232
209
257
167
162
186
166
212
189
241
167
206
204
166
135
237
205
221
219
161
136
210
206
219
197
212
181
237
194
147
238
224
194
201
200
257
202
183
199
177
202
168
172
203
221
139
174
143
163
215
213
197
178
180
164
259
212
238
226
236
228
184
225
198
226
196
196
185
180
242
210
205
174
201
211
139
159
150
223
210
203
157
130
225
203
153
126
182
177
212
229
173
135
211
203
238
237
177
232
245
199
225
181
221
240
253
201
266
217
182
131
195
191
216
197
173
244
181
240
249
145
188
213
149
103
202
193
240
174
245
199
175
199
160
231
211
194
194
163
137
181
231
200
188
238
164
187
202
270
228
198
178
249
174
207
189
189
140
137
198
173
146
254
208
205
96
149
269
169
205
157
243
199
193
219
233
226
194
214
213
261
204
222
215
147
159
133
206
207
200
132
228
145
189
240
175
181
225
173
118
218
170
233
194
183
171
173
177
213
199
109
212
191
195
251
163
260
226
227
232
196
239
163
227
126
196
142
149
171
231
185
151
188
165
251
169
180
253
217
169
184
224
190
237
249
241
197
195
202
208
258
228
237
176
254
232
232
161
194
234
187
136
214
239
196
180
204
257
215
176
239
199
232
208
169
190
238
239
223
207
132
170
230
208
191
193
227
209
180
190
206
152
228
248
242
192
239
218
163
233
154
180
216
232
174
174
186
213
190
235
242
203
192
174
220
200
205
163
209
229
196
258
221
174
224
206
208
193
150
234
217
194
265
160
243
212
248
207
284
244
179
236
164
199
230
222
201
213
180
169
202
211
229
257
207
217
242
214
178
173
218
254
225
214
217
150
233
218
219
168
205
234
218
229
257
223
162
234
222
176
169
184
218
273
176
214
172
182
238
224
250
192
185
213
223
162
221
187
197
262
213
175
209
209
277
216
199
212
173
163
213
189
238
214
143
189
220
191
244
253
185
190
279
162
252
155
213
207
165
161
186
247
177
144
205
192
253
248
223
226
165
191
219
195
235
137
178
184
187
238
231
169
149
170
270
150
194
213
179
169
137
226
274
223
193
276
232
233
190
182
255
216
176
181
188
231
179
177
191
241
142
237
218
194
223
250
180
117
211
219
192
220
236
134
123
233
236
213
200
189
199
206
155
209
199
185
201
192
143
146
238
218
200
260
230
203
192
187
209
188
266
206
245
161
192
194
148
243
199
233
211
284
171
176
160
210
171
218
187
216
235
215
213
273
249
204
199
202
209
187
251
193
196
222
208
202
186
187
161
173
194
220
124
127
208
164
251
245
164
167
176
212
216
252
176
197
187
246
230
223
167
207
200
210
147
228
209
213
203
177
202
236
199
199
220
190
220
240
216
199
199
153
220
203
188
128
206
209
157
246
193
228
251
164
191
191
229
198
244
220
187
228
161
192
128
219
162
213
118
260
210
217
189
185
244
191
117
168
132
203
257
173
212
211
208
200
239
133
218
194
206
198
192
180
182
125
190
221
155
214
167
205
203
199
147
202
191
209
199
162
169
198
202
229
205
205
161
223
232
187
217
178
217
170
216
135
244
257
172
178
189
200
184
168
228
189
218
205
227
199
228
166
193
163
176
196
202
200
228
191
190
159
215
253
223
169
237
213
234
191
234
210
209
230
203
203
185
219
208
196
241
225
212
140
214
185
212
208
171
257
193
236
244
160
164
164
120
177
227
165
243
180
249
153
199
174
150
235
211
272
230
138
244
192
122
179
255
246
257
206
182
140
204
239
150
220
237
183
168
221
175
211
181
202
156
145
199
213
222
141
183
186
158
198
227
154
163
152
208
232
209
189
176
201
243
184
202
231
211
149
173
216
218
148
192
164
240
214
192
174
127
193
173
173
261
193
167
155
197
171
219
235
180
127
199
183
239
170
239
258
191
196
245
205
155
246
204
175
180
143
230
287
219
220
230
234
220
132
176
132
252
193
187
240
212
248
166
182
150
190
170
181
200
194
226
114
227
220
239
115
235
154
139
203
265
191
179
199
186
220
162
207
196
137
173
133
184
164
194
215
191
202
161
192
188
173
257
173
161
266
211
170
184
290
189
216
154
210
203
212
197
224
229
229
155
209
236
235
153
164
129
194
170
283
228
185
264
162
177
203
241
231
168
153
227
167
235
234
126
209
258
193
163
216
159
220
209
175
169
232
170
236
234
210
170
145
214
192
165
193
178
209
211
160
185
219
217
184
270
177
220
203
225
222
196
185
191
231
223
176
234
187
126
178
223
214
204
215
217
249
144
242
193
129
271
155
230
213
194
190
225
247
228
161
208
148
207
176
244
249
193
208
181
218
237
212
169
231
238
185
190
125
235
177
119
225
193
192
192
223
144
216
188
227
267
266
234
169
227
231
158
205
221
181
253
213
211
222
180
165
215
231
217
214
185
218
205
147
209
218
138
242
236
192
218
291
194
179
235
263
178
224
194
229
193
219
170
224
201
138
268
201
209
286
204
206
210
214
190
240
198
215
110
185
256
182
166
175
152
193
238
240
176
155
218
163
169
126
148
205
183
179
183
188
291
246
162
169
168
238
185
251
240
227
207
237
231
236
211
231
179
207
216
132
209
274
111
221
142
175
226
216
256
192
206
184
139
216
245
228
280
149
217
226
143
160
176
169
226
207
158
190
213
194
196
197
174
168
216
181
205
214
162
164
132
222
167
256
154
219
183
182
197
221
190
174
127
201
215
205
244
227
177
208
115
168
153
250
211
148
181
192
199
183
193
159
217
164
175
204
265
192
195
228
229
217
153
185
148
232
182
247
177
190
191
149
242
230
172
147
168
105
160
211
171
188
187
212
210
126
239
265
244
221
159
260
256
193
191
160
190
201
281
184
213
195
186
254
191
178
145
230
214
213
223
171
241
189
171
268
220
214
218
203
164
218
145
160
233
196
275
192
190
239
231
221
222
206
207
224
232
199
203
195
240
221
171
165
238
260
212
197
261
141
186
196
150
210
180
180
167
197
255
216
222
199
168
145
201
203
250
217
190
199
208
190
221
219
177
219
205
260
228
189
199
235
156
191
207
207
201
237
182
216
150
195
196
185
196
178
190
148
158
233
176
221
216
179
260
140
201
154
238
226
156
249
136
181
198
182
204
174
180
233
253
164
248
200
175
138
188
201
209
226
224
211
230
207
220
226
202
191
250
211
197
170
234
179
225
232
216
195
158
177
157
213
181
164
180
213
203
238
198
262
196
208
194
216
186
192
193
173
191
231
181
232
207
172
184
215
197
168
191
231
172
208
175
195
196
120
197
222
218
159
182
201
165
232
227
202
171
273
193
157
210
279
161
164
243
247
112
226
215
181
174
201
216
205
229
240
217
199
207
181
236
209
223
184
203
217
188
123
243
274
171
127
208
197
224
197
182
214
155
203
184
171
187
239
216
98
243
158
163
242
190
198
248
183
193
280
227
271
194
198
199
191
200
185
221
228
133
188
169
217
167
166
261
204
219
193
180
227
188
207
184
156
208
210
260
216
166
236
193
198
221
275
215
215
194
227
192
216
251
193
200
179
200
152
205
187
208
203
191
182
164
228
227
243
186
184
187
169
162
208
213
190
166
141
222
197
145
172
205
210
210
160
169
184
246
136
204
188
212
182
246
239
177
227
236
219
232
168
207
118
231
195
220
217
202
206
144
168
183
186
178
180
243
209
224
184
208
234
203
183
236
248
213
144
225
268
182
204
220
227
253
174
182
244
175
184
192
183
210
188
260
239
165
148
202
125
170
167
167
179
217
171
180
199
209
168
237
212
271
206
228
240
221
186
200
143
195
123
182
198
215
276
174
227
222
186
190
157
205
199
237
195
161
208
190
257
198
264
207
216
221
149
237
197
181
222
167
238
267
186
187
192
220
209
227
213
191
195
191
206
168
223
187
199
210
228
170
186
224
181
209
172
243
193
195
207
160
207
199
142
237
231
283
166
229
165
232
136
233
162
192
240
237
198
192
216
210
227
163
237
211
254
216
195
249
209
186
255
195
206
230
193
256
153
193
174
212
250
148
200
179
190
200
225
155
191
203
230
181
169
181
184
154
198
237
185
152
128
218
164
191
244
243
153
292
184
232
210
207
234
220
223
208
212
208
229
183
167
174
161
225
223
252
204
243
143
199
180
232
278
203
224
164
210
188
212
165
195
212
220
248
199
196
238
270
169
142
216
212
228
223
169
193
197
245
176
173
180
256
244
215
163
292
224
164
182
261
248
247
168
167
158
233
229
213
227
224
236
174
170
243
224
223
142
204
175
205
187
216
159
138
231
188
89
260
250
209
206
197
157
172
121
163
240
229
147
240
188
232
238
192
176
198
253
225
198
199
221
221
226
211
240
159
151
195
267
193
161
236
162
201
189
181
222
168
219
228
189
201
223
156
196
216
181
203
176
188
170
232
173
167
202
168
246
206
241
198
250
183
173
215
231
143
231
190
214
237
197
236
207
171
251
197
195
176
193
168
182
179
123
215
169
191
161
165
219
166
155
224
238
192
197
207
208
216
228
251
187
197
167
162
203
205
165
163
251
119
196
234
258
230
184
210
188
206
192
194
180
211
186
196
176
176
131
198
183
162
219
208
216
225
197
219
169
260
193
225
205
208
237
147
241
127
238
226
227
200
267
212
213
202
211
196
205
246
203
215
159
198
226
173
207
202
255
190
219
172
212
172
206
205
237
183
181
216
230
225
186
161
216
157
188
196
210
164
172
194
96
271
186
145
212
174
158
217
206
194
148
209
273
147
133
195
213
230
144
224
205
234
254
244
200
165
219
152
260
221
191
195
254
180
181
214
195
228
191
197
190
212
205
180
264
198
160
133
196
205
222
203
193
214
194
178
188
214
218
185
175
198
248
223
231
234
200
245
195
192
192
122
237
176
211
207
168
177
157
215
225
199
238
232
204
164
167
252
226
244
203
185
151
193
154
225
211
181
134
176
206
203
216
219
173
228
178
185
193
223
219
165
260
221
185
224
210
194
137
201
240
228
205
263
222
236
234
226
216
230
169
199
201
118
161
245
194
138
280
250
230
165
137
163
195
134
222
165
178
223
174
219
220
171
156
160
195
178
216
245
185
208
258
240
200
211
195
134
184
185
206
174
224
189
224
248
218
232
147
192
154
151
220
173
82
200
214
263
154
170
178
193
225
220
259
208
177
182
189
214
215
151
193
203
183
218
140
157
251
189
157
219
270
242
176
139
147
192
171
172
265
209
232
218
139
194
209
272
206
169
197
216
147
94
234
219
227
219
212
183
184
234
131
184
162
230
203
250
159
187
220
173
202
245
226
188
231
197
201
219
216
239
160
141
234
215
225
226
228
160
226
226
173
239
260
240
236
180
244
206
225
136
175
255
146
221
193
253
224
210
205
194
224
196
228
200
157
192
188
187
256
206
202
234
226
221
229
189
185
204
197
187
182
136
147
157
229
250
141
178
221
191
203
208
116
144
216
156
266
200
203
215
200
165
172
148
139
191
222
152
192
226
204
252
198
223
240
215
192
198
222
178
232
147
191
237
161
219
195
191
189
218
133
230
192
204
229
187
196
165
236
252
185
184
196
236
222
217
267
231
181
197
188
240
244
181
227
216
162
191
231
162
242
229
204
190
217
209
165
219
201
211
239
211
189
226
232
188
178
193
190
204
173
203
190
226
149
218
136
210
219
214
217
166
234
159
252
248
198
169
207
202
217
118
191
245
184
188
159
196
193
168
219
203
180
269
237
216
217
161
203
199
187
276
238
160
230
234
206
217
179
178
172
188
187
219
243
148
176
140
197
209
229
195
263
193
182
207
224
164
200
149
189
245
186
163
228
157
199
225
165
197
159
253
124
198
212
204
174
195
160
225
217
229
201
226
205
143
212
193
164
202
231
269
194
229
256
142
188
211
154
202
138
265
215
185
277
231
95
179
243
200
153
165
182
137
198
181
172
144
210
164
247
183
202
148
173
157
233
183
193
157
195
194
226
124
226
231
179
187
240
171
215
210
186
138
183
269
192
205
164
249
194
206
244
199
224
162
270
213
179
117
216
240
199
252
120
242
239
232
218
225
210
266
139
134
204
264
191
146
156
188
225
217
165
192
164
222
149
213
206
185
166
201
214
204
220
222
217
251
153
156
239
177
188
162
171
180
153
186
242
210
200
229
265
198
187
173
179
246
226
250
168
183
175
186
199
195
147
170
172
161
242
228
197
277
166
272
159
180
195
241
135
244
184
220
132
186
201
235
166
161
177
247
212
241
192
110
159
250
163
175
225
181
215
192
189
194
210
176
245
266
203
272
161
196
211
227
259
275
202
175
241
186
131
249
180
229
193
211
252
231
194
156
229
175
193
123
259
176
185
252
220
163
157
186
191
224
164
164
208
176
222
187
159
222
179
256
124
246
170
210
243
178
247
126
255
238
234
226
205
166
183
219
173
258
168
178
248
237
177
210
177
195
154
172
109
220
200
195
132
151
154
165
208
165
139
252
193
206
216
197
218
231
161
138
170
153
221
203
195
167
215
160
205
201
209
167
216
224
191
156
152
256
164
236
181
205
178
114
188
228
150
208
154
234
127
227
145
201
245
194
257
172
175
154
170
181
213
194
280
209
161
255
202
264
216
242
249
211
256
184
209
219
83
169
173
198
212
221
194
177
229
166
202
193
222
157
195
132
186
271
231
205
195
170
107
238
217
150
202
170
113
212
227
201
151
146
203
214
181
230
225
205
226
210
153
207
159
215
230
133
243
290
157
263
227
198
136
195
243
196
182
206
148
226
191
179
152
227
275
280
247
231
275
264
185
226
208
173
238
185
201
216
188
188
195
218
201
151
177
170
216
204
190
197
204
150
226
163
257
198
245
195
164
169
197
222
201
219
202
218
172
190
208
189
240
201
164
142
243
238
212
155
169
151
216
230
213
178
199
202
195
211
203
160
201
150
147
188
172
208
220
214
223
185
201
227
165
203
193
211
208
173
163
200
244
146
239
204
236
209
228
250
236
197
216
148
255
177
243
210
189
219
233
192
216
211
191
229
223
155
153
196
208
211
221
152
191
158
173
175
219
257
244
220
228
204
208
195
144
185
234
193
182
213
146
232
212
269
219
208
184
258
150
194
228
227
206
227
154
248
155
167
180
186
195
218
231
181
167
158
208
196
249
244
213
205
146
253
230
144
222
156
253
216
191
222
207
201
183
204
248
199
253
199
227
88
216
178
220
220
203
167
209
189
217
174
137
268
183
200
176
192
182
210
179
207
174
191
175
223
212
123
199
177
186
183
186
191
192
184
206
244
210
244
256
181
223
175
207
233
162
228
212
201
204
218
180
235
236
225
193
212
224
165
239
193
169
152
173
232
217
199
187
172
204
223
200
240
227
242
261
174
212
288
207
180
202
210
171
200
206
232
182
213
234
178
189
200
110
186
189
223
217
191
208
244
192
151
160
244
190
188
136
160
184
185
233
121
157
176
215
179
194
241
193
151
233
227
197
206
202
204
202
175
205
233
235
217
214
201
263
163
212
239
148
231
245
266
216
241
211
169
254
181
264
176
182
182
232
196
170
216
260
251
214
203
214
164
199
188
238
245
238
183
180
235
199
132
196
163
197
193
180
253
202
203
184
186
142
159
248
233
194
229
195
216
206
186
125
195
171
153
203
226
207
145
192
243
176
168
190
176
235
218
221
181
209
184
180
228
218
195
253
175
229
171
183
201
282
233
222
248
203
171
176
196
132
241
191
185
247
227
186
162
183
154
236
133
212
249
178
155
214
276
145
209
169
215
210
152
127
191
134
181
184
186
163
233
110
167
170
177
225
215
177
201
152
215
169
237
189
231
265
147
209
199
216
239
180
169
207
235
172
184
178
221
233
212
214
248
209
207
238
221
243
222
179
177
281
262
214
229
148
193
211
243
203
146
185
249
242
212
225
199
204
157
231
227
228
122
240
189
216
231
176
231
159
163
196
173
139
256
157
215
228
203
167
172
183
189
210
171
160
180
170
223
179
269
173
204
165
243
124
234
133
217
216
195
225
232
210
210
197
191
203
198
179
206
184
207
212
219
167
181
156
145
277
179
199
145
217
180
213
221
184
113
168
219
109
158
229
235
253
176
201
267
206
230
242
196
195
216
213
176
205
272
197
226
184
189
206
196
245
225
227
231
169
208
226
247
170
208
197
232
205
185
189
191
238
223
168
129
187
190
201
175
215
235
198
143
227
187
185
182
217
222
271
240
152
204
245
198
224
134
159
236
195
178
245
155
169
247
174
234
197
222
233
143
221
202
170
181
166
233
176
236
232
147
202
221
218
232
162
167
211
229
198
241
246
183
174
240
194
147
208
209
201
268
231
187
183
180
220
206
153
182
229
210
210
189
200
228
206
226
150
192
252
231
171
209
223
222
221
177
195
177
140
196
180
226
163
243
220
180
177
166
179
196
174
170
192
194
224
155
123
249
200
217
204
206
158
245
175
221
230
277
218
293
202
189
253
202
214
235
114
182
241
190
197
148
209
163
194
241
170
203
206
240
197
176
194
273
166
170
205
160
222
182
201
185
211
137
265
158
227
206
191
227
174
171
191
238
262
213
164
244
237
228
207
176
139
168
217
216
184
175
200
181
121
258
162
196
256
202
210
142
195
163
232
190
187
208
238
163
218
240
199
224
229
256
197
254
225
191
183
220
212
170
212
179
214
228
170
216
214
193
163
242
219
201
254
205
168
264
257
199
223
215
194
154
184
204
128
201
136
162
213
160
214
202
216
195
154
260
207
180
222
215
186
284
233
205
238
216
210
192
190
207
220
179
284
229
245
152
194
117
173
179
217
162
223
166
219
183
232
237
218
234
225
222
183
227
253
184
191
189
154
187
202
178
229
205
213
169
146
191
216
213
178
214
189
185
194
236
198
255
236
146
217
202
165
169
229
228
196
236
267
186
183
212
179
169
177
245
135
252
182
187
251
237
161
189
187
206
259
188
144
177
180
229
210
158
196
213
191
254
192
213
196
199
219
197
186
189
186
235
227
214
176
186
181
221
167
192
94
235
219
182
256
211
241
192
221
213
237
198
186
216
201
197
237
236
193
205
160
221
181
194
220
219
172
186
203
291
230
140
245
204
283
133
143
181
201
185
177
271
202
252
228
146
228
224
222
278
246
148
208
161
155
189
135
242
147
198
148
198
216
215
189
158
203
164
156
161
192
236
179
188
166
162
145
198
235
149
186
246
203
225
223
224
175
198
216
207
263
210
185
227
167
253
201
212
159
203
219
230
190
185
150
242
217
222
154
177
177
158
214
187
228
177
251
237
200
241
215
237
219
247
218
256
205
147
196
240
211
207
192
259
176
181
179
210
223
208
208
161
198
242
179
170
204
255
172
185
221
197
248
201
182
262
192
189
201
199
192
204
224
214
132
239
156
201
220
211
173
258
176
236
176
219
199
200
175
178
172
165
144
254
168
216
186
280
159
181
206
183
208
184
160
236
206
170
192
230
186
198
269
164
219
183
187
229
206
149
279
190
219
185
176
208
214
191
162
243
159
118
171
235
214
213
139
265
172
194
233
245
255
193
197
216
229
173
188
241
214
162
209
207
192
190
163
269
173
212
212
196
232
229
237
181
151
128
221
225
138
215
195
215
212
194
258
236
261
204
193
191
200
236
266
207
220
149
190
173
208
173
154
222
182
229
187
128
192
198
167
202
181
204
230
191
144
198
247
163
186
246
245
239
176
196
228
163
162
151
144
185
185
198
179
178
219
196
204
229
167
212
235
186
207
136
192
231
176
237
215
192
190
150
188
214
149
153
193
114
218
214
130
145
233
196
203
216
207
182
231
246
194
263
175
191
172
236
138
204
125
201
191
129
222
197
159
178
139
182
187
245
151
185
223
190
159
159
208
224
220
230
136
230
209
119
186
198
179
229
215
223
260
211
232
216
160
203
144
152
163
205
170
226
225
201
199
242
190
218
181
194
219
217
227
193
222
250
200
171
223
190
214
239
149
196
267
190
224
220
227
236
208
193
170
141
252
216
231
184
237
223
219
168
210
219
210
122
229
216
182
217
238
184
186
241
205
247
212
241
237
153
195
211
101
185
179
200
168
266
191
217
158
172
157
185
186
233
210
252
179
259
201
222
193
117
182
235
154
208
202
165
201
169
259
201
182
231
233
186
265
208
229
250
225
248
229
189
170
210
214
141
231
238
170
244
206
197
132
162
202
230
238
197
174
188
179
153
130
218
179
204
231
226
220
196
243
193
158
200
157
233
209
241
206
195
152
216
240
181
206
217
283
152
222
191
256
225
175
237
222
218
234
214
173
245
195
203
270
174
165
198
154
210
224
176
218
186
192
223
165
251
203
186
197
206
122
135
262
208
164
157
218
191
207
180
151
165
213
171
228
276
181
242
168
163
167
215
131
259
234
171
231
188
155
236
212
184
164
214
194
257
173
280
205
206
215
225
218
137
241
127
180
212
185
174
201
147
222
187
157
178
175
239
205
256
182
275
238
218
145
205
206
157
232
216
168
219
261
231
203
244
228
233
212
222
193
224
237
220
178
198
147
189
132
202
235
190
171
185
191
234
216
138
199
168
184
193
226
214
181
283
138
205
177
211
226
236
154
207
235
175
178
151
230
175
178
213
228
238
156
213
243
239
160
123
175
213
180
168
201
108
207
209
173
189
172
179
204
205
128
206
197
312
192
292
206
188
208
212
206
191
195
170
180
246
212
229
229
178
248
168
221
239
179
200
142
190
220
190
219
195
215
148
197
251
192
200
248
210
212
152
225
240
209
223
197
218
209
222
221
204
255
170
224
240
147
186
227
144
175
180
157
228
153
184
183
207
194
183
191
171
143
201
244
210
242
169
204
222
179
256
203
167
179
190
154
204
197
224
269
176
202
247
201
229
167
161
209
191
212
235
144
181
224
209
217
231
177
233
223
224
238
202
205
263
226
192
211
168
208
198
153
237
161
206
188
186
269
194
274
183
130
234
221
202
193
151
198
183
241
177
229
267
152
234
95
233
182
225
200
106
139
249
215
154
147
169
224
204
236
138
151
243
190
226
189
200
238
233
260
231
162
195
240
243
231
181
153
196
251
231
179
234
227
165
201
219
191
199
207
248
183
205
253
175
140
233
186
209
202
172
268
210
202
206
227
195
214
261
221
211
186
167
220
228
240
233
172
216
194
189
251
185
182
193
172
184
199
171
145
188
161
185
107
242
149
212
152
225
167
167
237
143
171
232
252
256
157
145
230
217
191
242
223
231
177
157
228
239
154
202
174
219
152
187
206
155
216
230
206
284
126
220
209
234
257
208
189
191
198
175
176
225
142
209
278
189
182
165
279
205
229
192
224
198
143
170
234
154
205
204
231
184
176
194
232
183
191
234
182
185
165
203
222
197
153
177
215
193
94
210
237
154
203
197
231
173
235
165
176
191
168
230
200
212
234
175
219
202
169
289
186
212
226
277
189
245
192
191
231
215
200
167
150
225
188
260
249
172
243
225
246
173
203
213
202
250
212
184
248
160
142
221
279
179
164
205
212
218
241
210
154
187
198
183
207
226
172
165
232
191
140
226
170
163
188
180
190
200
221
171
213
288
209
188
188
215
209
258
255
236
188
161
212
291
235
147
217
202
266
179
182
213
209
205
211
174
214
222
214
182
256
180
129
175
242
171
210
152
148
140
167
229
225
164
271
193
201
243
210
156
213
170
156
175
156
171
269
216
186
211
237
183
189
177
213
184
236
170
149
233
193
251
159
238
176
240
179
219
205
191
223
199
215
165
148
183
136
177
216
226
167
235
177
148
118
191
218
260
138
158
180
247
211
228
228
173
181
223
195
170
215
255
231
207
264
224
159
173
194
236
205
215
195
182
208
192
185
240
227
242
158
224
184
203
155
180
163
237
267
168
162
224
181
156
189
206
163
232
226
175
253
177
130
233
245
128
217
164
200
156
224
169
216
201
221
245
192
255
186
197
252
206
239
192
214
128
160
193
175
215
266
224
133
172
253
116
200
164
251
171
188
153
223
189
214
186
205
204
284
203
173
159
161
244
220
166
253
223
237
226
223
211
234
221
123
232
259
231
192
188
235
176
252
230
201
198
194
211
196
200
234
211
218
196
189
216
224
189
202
149
216
265
178
172
163
252
213
220
251
216
215
202
264
236
139
158
190
107
168
205
227
217
191
238
197
179
135
176
240
189
209
188
198
176
232
166
216
193
174
227
245
164
229
228
205
253
195
156
119
165
171
185
187
156
201
208
158
205
200
148
172
189
224
202
177
227
128
214
207
226
226
261
262
214
227
179
237
203
180
177
159
251
184
175
175
191
205
159
228
155
263
226
212
211
195
227
169
255
183
235
154
247
214
206
245
235
236
170
106
202
224
177
223
172
240
274
181
194
198
230
202
126
171
253
237
214
204
237
163
191
149
176
224
220
201
222
208
198
212
115
227
263
142
199
172
199
195
194
174
212
146
187
188
223
146
227
201
278
200
232
240
144
155
215
175
154
200
226
135
206
166
284
205
242
242
215
162
188
260
185
222
191
184
202
214
227
222
231
193
184
192
207
174
261
222
182
204
222
178
181
198
243
243
145
181
203
209
177
143
193
212
134
166
171
178
142
178
236
229
131
225
211
133
217
175
190
260
257
260
218
233
268
225
186
181
174
146
154
212
158
286
190
206
131
173
220
192
176
216
120
178
180
188
206
183
169
189
135
210
178
258
243
172
197
266
217
121
228
242
228
151
176
139
209
203
209
210
216
269
230
217
130
212
157
211
210
216
209
244
198
183
189
143
268
259
203
229
146
180
195
197
239
181
237
245
230
241
239
199
169
185
225
192
242
185
196
161
236
230
233
229
193
166
148
198
222
181
271
255
223
194
211
192
254
176
246
155
191
218
210
177
241
192
184
126
200
142
260
148
236
203
144
203
201
182
209
163
229
170
239
168
189
146
201
200
180
200
226
255
173
197
239
213
248
223
236
164
279
178
200
177
255
250
209
194
222
317
150
237
220
153
189
190
194
211
183
161
245
199
159
224
151
208
287
204
206
204
195
212
165
167
234
175
141
231
166
242
141
221
135
172
236
179
186
197
141
266
176
193
234
177
207
183
217
221
172
195
238
211
168
220
207
160
225
205
218
211
219
216
182
228
188
241
162
213
204
212
184
260
233
194
221
227
181
220
172
214
240
224
174
225
115
205
226
229
216
236
133
182
162
218
226
174
219
177
205
216
250
223
237
208
142
184
144
233
200
162
268
258
261
208
179
217
226
218
212
195
208
197
230
178
273
203
189
113
174
250
196
186
199
267
165
176
183
170
203
285
127
206
119
155
243
165
228
244
181
134
234
214
188
170
215
202
161
193
193
272
243
244
230
210
169
203
183
232
219
177
167
164
212
191
133
192
231
160
234
241
268
228
159
171
199
234
191
215
236
162
214
184
203
213
247
176
207
238
176
191
181
182
142
234
212
191
163
170
199
180
234
262
169
214
158
166
200
227
285
259
218
213
185
125
155
200
175
234
212
154
198
205
196
161
156
254
182
230
249
224
209
208
155
165
166
155
209
254
259
195
207
168
200
141
272
210
197
205
213
216
200
201
203
208
276
207
253
163
240
159
167
224
135
208
207
219
280
190
207
201
183
159
135
206
229
180
222
208
230
195
252
195
192
215
161
142
174
220
127
199
238
238
228
244
192
166
135
210
139
187
189
232
209
220
185
193
206
164
262
218
205
196
190
255
241
241
167
231
263
134
214
258
214
173
131
165
222
184
200
249
155
221
139
224
199
187
182
101
239
217
133
178
213
220
183
182
192
217
188
205
245
134
192
146
243
209
190
187
249
174
189
161
260
193
170
189
181
229
223
205
208
227
190
161
238
225
158
154
160
147
189
219
155
98
204
240
178
172
244
179
236
191
200
174
253
193
217
195
158
213
207
209
199
228
214
213
178
245
188
217
169
291
225
188
202
264
198
175
182
216
147
295
197
178
202
221
185
177
195
247
176
181
170
162
193
197
134
196
198
156
206
286
208
203
192
163
171
216
178
228
184
163
152
243
229
199
154
204
201
231
202
234
232
199
163
233
243
157
183
182
152
190
169
246
178
254
264
165
222
164
227
184
209
161
209
248
198
161
185
223
133
197
190
137
174
216
187
201
219
251
249
189
202
184
215
223
186
200
241
240
269
145
190
241
212
166
226
220
210
223
196
129
201
228
174
220
175
229
191
110
269
216
171
200
206
167
221
172
217
214
196
186
190
227
158
219
119
166
197
130
203
195
234
229
184
176
177
164
214
172
196
186
231
162
252
252
200
297
179
179
240
141
168
189
212
200
187
227
190
252
132
236
208
203
159
198
210
193
159
234
197
236
182
216
209
180
202
187
191
177
206
211
248
210
147
180
181
190
203
159
232
236
147
227
198
220
223
251
232
230
174
221
138
196
173
165
197
235
217
243
209
166
199
155
206
151
203
199
222
218
175
221
177
228
175
146
251
187
253
191
145
177
216
252
229
158
170
210
191
160
176
207
205
175
176
202
225
186
195
184
252
209
132
134
194
205
195
234
200
194
157
242
142
216
241
202
186
185
192
173
226
207
177
188
168
232
191
219
145
202
234
209
190
190
207
174
157
237
190
225
227
180
162
207
157
238
238
241
182
229
232
210
202
194
210
231
239
172
215
238
211
215
222
167
192
190
175
167
187
191
244
168
230
134
140
210
179
230
209
181
174
232
220
171
169
187
187
239
179
167
194
163
174
205
191
186
243
168
219
212
265
177
171
233
176
175
226
186
185
202
211
203
214
201
181
221
228
223
236
185
195
154
180
175
169
232
203
222
260
223
218
202
175
154
174
228
235
215
208
182
207
230
215
196
149
222
149
200
199
209
191
210
221
203
188
224
247
255
191
242
158
153
188
240
143
275
213
213
201
160
151
173
238
227
170
233
176
190
200
240
232
185
252
193
122
210
184
182
181
256
191
204
228
216
156
182
155
174
109
250
234
209
164
222
167
184
175
263
142
221
263
176
186
194
169
235
167
204
173
259
177
247
164
233
211
187
168
96
244
184
150
247
208
139
231
177
219
191
200
157
167
226
183
205
172
184
167
116
251
263
175
225
153
242
138
209
208
175
199
224
185
185
140
192
180
238
218
160
174
191
144
223
255
198
156
205
217
187
164
169
220
171
197
193
221
203
209
147
129
216
153
165
175
196
142
188
184
170
177
205
165
242
214
216
205
212
176
200
182
199
207
242
210
130
223
189
207
158
281
133
191
205
174
240
157
202
194
157
207
240
191
168
218
193
174
206
162
216
163
207
197
224
224
227
202
199
161
213
219
225
193
144
163
252
208
200
212
230
187
239
233
192
200
231
254
197
188
174
141
219
200
209
169
196
183
188
126
128
238
201
133
159
200
242
209
221
196
242
146
224
267
190
244
179
205
188
107
225
224
176
229
247
192
233
209
134
227
199
200
195
222
201
208
166
169
192
219
223
221
129
244
176
157
202
179
226
195
192
204
216
174
215
209
249
181
220
170
207
201
230
189
233
216
195
219
204
204
184
235
190
168
161
171
231
239
153
178
156
192
245
154
232
198
154
283
220
191
217
173
164
172
238
170
169
202
180
245
181
218
222
229
180
254
195
223
154
220
167
131
241
256
196
221
251
237
187
198
226
194
179
147
219
179
119
167
266
189
247
210
206
119
235
159
205
241
232
123
222
166
193
179
186
208
141
143
176
194
240
233
186
130
158
219
249
242
281
169
224
176
195
183
241
233
236
195
186
225
218
255
228
167
158
138
202
259
163
204
243
200
239
202
196
245
221
255
234
211
245
267
243
165
203
213
175
139
203
248
229
232
154
240
187
133
199
246
234
164
202
225
182
247
229
154
248
215
208
159
141
251
231
179
225
213
147
183
145
140
163
155
212
218
192
149
208
241
150
175
196
160
198
215
196
158
179
230
176
193
175
255
175
229
195
254
151
170
139
170
213
212
225
175
190
220
205
163
186
184
222
238
213
276
187
189
166
201
213
219
174
235
226
173
249
196
236
175
200
165
233
241
235
231
155
182
162
156
199
241
230
206
207
159
205
228
179
268
194
189
243
180
149
247
178
199
179
206
155
226
187
199
230
177
186
176
203
211
231
236
165
143
220
119
236
171
222
216
214
226
171
200
224
205
230
231
231
168
214
207
185
179
258
195
188
207
213
223
146
220
160
193
254
171
248
194
237
264
196
146
253
242
210
173
185
222
211
183
140
210
205
209
230
205
168
236
215
256
203
160
243
176
182
177
199
231
242
164
190
165
160
213
140
167
196
212
179
146
179
206
165
216
153
180
211
220
188
189
218
229
226
222
215
139
237
204
137
190
186
251
248
202
202
188
201
186
229
216
238
191
170
226
162
208
204
180
162
155
240
159
198
105
164
238
222
181
185
173
224
209
141
204
205
217
210
166
237
198
221
197
141
262
216
224
198
175
134
228
148
166
267
173
220
213
245
215
159
213
164
177
147
180
138
155
129
198
206
191
190
199
193
214
124
206
165
252
159
220
199
236
217
145
244
175
260
175
162
234
184
256
178
211
209
145
213
153
155
89
148
248
230
198
165
213
168
218
216
243
174
237
198
211
223
202
197
218
202
185
133
218
184
213
190
208
206
246
181
146
201
219
163
236
193
193
152
203
223
261
188
169
174
191
195
244
252
223
202
234
186
236
239
186
231
216
176
202
145
256
223
173
217
208
207
115
216
185
214
178
197
234
202
172
226
222
185
149
164
207
242
222
167
199
202
160
263
141
143
183
170
202
218
197
123
205
196
183
188
220
177
197
194
185
179
165
188
247
200
221
188
197
202
163
222
255
231
193
186
206
230
196
259
251
171
190
235
238
215
170
173
165
186
175
232
187
186
167
185
187
262
174
176
210
198
235
223
188
188
210
131
195
178
154
162
173
171
185
274
230
248
175
221
145
189
166
184
193
138
133
178
187
196
168
229
221
162
171
247
221
186
166
219
212
192
162
214
208
250
236
191
206
198
174
246
211
180
208
235
248
192
271
216
240
182
207
177
218
138
187
177
252
180
228
117
206
167
177
177
195
139
113
135
248
229
210
196
240
201
236
197
183
196
210
152
206
170
253
214
206
213
188
218
209
141
216
168
179
202
163
213
205
213
204
235
222
214
253
175
196
168
229
178
181
214
219
191
224
208
245
228
216
199
246
180
187
192
247
163
120
210
221
181
157
198
136
168
189
185
165
254
221
256
137
169
165
287
186
253
152
194
240
173
181
205
182
186
162
175
138
164
202
125
173
175
219
215
263
176
190
193
211
235
275
231
194
163
233
220
124
256
238
293
218
192
215
165
266
264
181
208
255
200
251
245
208
171
244
251
164
221
164
185
174
201
249
138
164
180
240
220
183
221
190
122
207
180
179
229
211
194
208
220
164
250
206
185
169
177
206
239
172
174
175
176
176
176
248
175
198
268
204
200
173
194
192
172
186
186
191
194
160
213
166
196
184
161
193
230
164
149
195
240
216
168
185
231
180
206
202
160
190
138
108
241
206
167
232
172
198
190
122
178
206
181
200
247
218
169
158
191
163
214
175
213
162
183
210
148
161
226
231
171
189
196
230
241
149
207
162
232
240
268
209
162
219
253
244
159
249
183
189
229
163
165
173
217
247
180
188
237
165
181
165
200
268
155
193
219
172
184
234
187
200
168
146
189
236
242
221
179
215
179
166
193
196
208
228
178
149
136
166
176
214
135
236
182
211
245
218
248
244
185
224
201
229
202
261
163
200
208
278
256
180
177
167
187
184
216
174
187
210
178
202
206
274
224
205
174
190
151
232
202
232
189
156
216
234
153
192
228
225
212
196
221
148
193
235
188
205
235
169
174
169
224
251
197
185
173
270
228
208
218
216
227
168
152
146
230
223
195
192
232
212
169
183
184
214
233
146
205
218
155
178
119
168
235
221
205
255
200
231
245
176
230
204
206
207
268
194
169
196
211
232
156
122
185
203
240
224
147
178
229
167
180
179
206
174
218
203
229
246
145
207
180
203
205
200
201
234
223
236
147
134
205
200
213
210
200
185
239
213
151
179
189
235
219
149
245
173
231
161
194
215
137
183
160
235
228
237
231
223
230
187
241
227
216
177
199
155
127
169
245
137
183
154
207
160
201
224
141
217
236
150
236
198
229
227
254
243
203
115
195
185
142
188
217
117
211
249
145
214
137
255
150
204
205
201
162
237
241
215
206
182
152
153
251
234
242
236
165
152
190
183
222
231
228
122
132
187
209
229
185
207
234
113
174
231
195
255
202
202
217
218
242
191
232
270
172
237
169
228
161
191
158
189
246
245
189
239
228
184
185
217
154
175
196
180
229
253
132
230
269
189
150
219
175
217
198
189
205
201
184
191
276
213
167
225
181
195
176
190
212
268
223
241
270
230
160
189
178
176
184
216
152
170
208
205
239
220
201
187
162
235
234
218
245
250
204
126
236
240
176
211
172
148
160
221
193
239
215
249
116
203
172
226
207
179
232
215
233
184
217
148
226
182
204
228
183
229
168
187
221
255
245
218
257
231
248
225
182
215
135
238
249
240
211
258
289
189
153
189
245
191
221
186
206
270
229
265
244
203
250
250
179
210
167
201
202
227
208
236
218
226
181
190
219
111
232
185
272
161
182
162
177
228
266
163
275
201
155
215
163
214
191
216
199
184
270
196
170
179
228
176
194
207
148
183
246
267
164
214
169
212
211
204
199
190
210
201
197
145
155
250
230
270
96
237
227
249
230
239
228
195
227
234
117
172
199
196
237
153
160
164
184
165
202
209
158
213
222
173
200
166
211
166
233
228
199
215
205
173
195
228
170
204
237
193
223
161
233
194
185
199
180
189
209
190
165
203
229
178
203
212
222
219
208
199
243
195
174
221
220
225
179
188
264
235
198
229
193
220
165
165
135
186
135
198
255
177
127
209
167
218
183
168
231
195
205
241
178
185
216
155
185
204
230
181
214
183
170
247
131
183
201
182
250
244
186
183
162
225
196
253
233
156
167
199
196
257
245
200
192
244
212
226
136
230
170
163
258
225
213
213
220
248
98
202
203
240
228
248
213
177
171
218
179
183
168
193
222
185
165
192
180
253
246
229
204
223
201
228
194
207
205
219
170
245
201
159
196
209
179
146
247
230
158
191
181
223
196
204
213
186
126
167
187
244
251
134
183
232
236
179
225
194
207
190
208
203
196
213
231
182
163
219
261
232
193
256
197
206
229
192
271
218
191
220
217
185
185
167
125
168
171
160
176
225
220
214
128
212
179
206
235
278
261
246
164
253
227
180
153
204
208
180
192
187
153
196
188
213
177
213
135
192
152
196
213
166
142
194
178
170
209
195
218
198
243
208
156
210
231
250
139
212
177
234
206
255
175
229
206
266
187
209
197
168
211
240
162
236
161
214
176
165
179
180
194
248
236
223
253
216
211
157
151
217
262
192
191
220
132
177
235
161
147
254
171
160
171
161
190
200
197
175
142
200
235
177
155
132
166
172
212
234
157
183
195
163
168
160
167
174
181
171
180
236
222
270
251
231
221
124
213
179
221
244
188
197
213
170
168
206
171
194
182
131
178
233
220
280
166
228
197
195
141
203
206
212
220
184
209
273
180
223
217
188
156
152
212
179
223
240
189
186
231
229
221
229
240
217
237
164
190
254
157
223
192
258
218
290
138
241
185
235
200
165
177
196
178
183
227
169
217
229
217
177
182
245
177
204
226
179
217
176
201
183
173
210
193
225
196
150
236
214
261
256
141
184
193
166
250
198
218
195
188
231
255
267
243
214
169
202
113
236
192
254
224
160
146
230
260
224
170
244
245
173
173
195
187
251
185
183
144
250
216
196
219
183
142
194
246
170
182
176
140
181
208
154
138
140
199
252
236
165
209
176
144
218
230
253
230
207
254
160
216
179
221
182
238
232
161
211
294
199
234
177
216
206
250
226
199
200
163
231
195
236
197
220
184
168
234
207
249
218
177
184
143
183
225
273
139
197
221
169
236
178
202
206
271
208
192
216
201
183
202
213
273
201
184
190
169
195
158
217
262
243
214
245
167
189
215
217
140
219
246
200
209
247
174
175
200
103
157
130
197
208
234
251
181
215
221
193
257
221
187
162
213
214
146
161
215
170
174
196
172
236
211
166
182
242
183
188
247
225
173
204
183
179
226
234
214
159
225
185
132
223
183
222
195
221
182
199
164
230
233
201
183
225
133
216
213
175
193
181
177
243
180
186
166
194
164
199
212
196
200
166
221
170
177
172
208
176
238
235
216
274
136
163
158
114
208
191
152
176
247
262
197
163
165
215
151
220
149
213
232
269
223
191
166
225
163
191
225
262
198
217
118
173
200
199
182
200
200
244
193
201
259
208
176
156
135
113
188
169
259
205
198
173
205
151
225
199
249
169
233
216
227
260
182
137
183
222
216
199
195
233
163
178
136
217
207
246
270
194
145
211
179
224
226
215
238
198
179
208
241
230
123
183
130
169
225
164
262
262
188
202
163
217
178
117
194
204
181
183
182
257
203
217
178
256
241
197
216
224
228
163
220
160
205
171
219
211
227
139
212
141
183
198
192
236
204
216
192
152
194
166
201
208
171
214
257
179
175
200
232
220
216
249
216
186
238
141
244
110
189
219
220
217
181
209
204
196
237
180
178
234
204
300
190
222
225
194
211
172
173
197
153
149
210
188
216
187
132
230
205
239
204
162
201
181
218
230
232
182
200
206
176
244
205
240
186
170
180
157
165
234
190
248
140
212
246
194
204
185
129
177
160
250
192
196
161
154
119
217
199
224
219
197
262
143
204
150
190
227
181
214
207
212
165
186
190
258
198
180
245
201
200
205
187
225
137
229
185
233
197
185
264
150
225
167
227
166
249
150
199
142
214
195
171
228
189
191
221
209
265
215
212
216
130
172
185
190
122
239
203
207
217
227
250
230
222
176
244
226
235
210
160
142
147
229
179
259
186
206
135
158
219
166
125
231
194
174
226
189
225
230
195
141
157
182
168
283
237
155
249
246
237
166
225
209
198
196
229
224
187
211
179
218
178
176
180
192
194
188
137
176
172
175
207
241
241
183
211
157
234
206
209
187
173
235
229
217
204
193
246
224
114
221
212
203
213
209
237
174
193
161
181
129
284
159
186
239
264
223
326
203
144
206
188
191
202
194
125
164
95
282
146
224
197
173
204
176
253
167
147
202
154
240
260
135
187
202
227
149
189
182
197
214
224
157
223
184
221
212
244
150
199
209
242
192
152
165
194
242
167
207
228
183
212
205
216
179
208
165
176
244
181
233
201
174
180
146
199
217
137
194
226
207
202
193
203
200
237
219
209
223
172
247
183
233
219
271
159
160
197
252
203
193
168
167
222
170
214
220
221
256
237
217
203
179
183
229
194
178
192
173
258
205
191
249
211
243
176
216
186
190
190
245
202
201
191
186
198
192
200
265
224
238
163
196
169
195
193
240
210
234
214
237
244
172
165
195
232
218
242
147
211
133
193
216
226
242
179
260
157
159
194
195
217
202
223
197
141
217
247
235
217
202
200
214
194
180
212
190
250
247
222
255
216
167
176
198
186
181
235
207
271
193
202
204
195
238
224
245
196
195
128
171
217
188
232
142
217
208
191
206
254
135
198
244
196
238
162
126
158
207
146
235
205
198
190
181
150
233
217
200
137
252
188
204
214
159
226
210
184
199
193
217
198
228
244
247
243
233
268
138
165
200
185
206
275
192
179
163
234
221
139
194
255
173
207
201
210
223
206
181
186
204
199
203
212
249
231
189
228
243
186
220
250
226
249
172
179
182
178
164
158
179
153
263
142
184
129
243
222
182
239
174
171
196
199
240
225
202
203
278
220
157
216
186
222
186
222
211
191
142
156
175
243
203
175
208
243
193
192
198
212
222
186
226
231
199
242
194
215
190
216
247
192
243
196
199
156
112
189
214
228
214
162
126
210
181
214
203
173
169
120
224
153
276
170
141
258
141
167
218
217
181
159
243
177
160
166
185
219
218
157
141
195
136
220
263
194
204
198
140
196
190
183
180
194
183
235
164
142
218
185
222
196
213
169
213
209
178
232
171
205
194
215
217
232
184
166
182
246
223
157
187
182
178
180
208
184
202
134
253
290
249
239
183
209
199
169
153
233
215
197
225
266
236
221
238
203
161
229
183
187
221
305
158
185
233
192
182
224
181
181
186
255
171
191
162
249
222
202
180
217
168
233
182
230
101
229
191
259
205
178
230
210
161
212
184
214
217
188
242
205
254
195
238
251
176
179
243
201
216
207
239
239
246
240
130
215
214
166
233
251
251
254
236
226
210
202
242
172
194
230
250
200
273
246
177
216
163
234
258
236
230
199
179
224
199
275
220
163
187
232
211
188
203
144
240
186
184
214
195
227
154
201
219
255
228
181
266
213
211
188
238
162
194
148
268
169
179
217
169
159
216
163
218
239
260
220
193
185
213
166
211
198
204
168
217
210
201
227
177
157
134
211
199
223
224
267
238
186
225
147
160
127
175
223
209
146
151
217
159
211
239
183
205
184
241
236
243
165
186
155
206
207
235
226
230
165
216
185
214
276
226
168
160
231
188
192
163
197
220
208
189
206
183
228
202
201
253
177
185
151
211
217
191
227
216
216
199
263
163
191
143
159
213
192
227
139
241
192
189
182
142
136
218
229
215
202
135
246
229
222
169
182
176
146
219
161
229
235
229
234
252
217
211
206
154
156
172
208
238
196
153
163
199
195
166
212
205
191
243
251
151
239
236
162
188
216
248
227
124
201
168
231
226
122
185
153
187
206
211
204
146
267
187
144
139
131
209
162
245
211
185
189
155
159
115
176
144
185
218
209
237
229
229
177
197
239
186
180
167
183
135
200
158
189
252
204
230
189
216
269
199
187
158
226
149
197
127
229
220
234
202
210
199
217
240
153
159
147
170
204
159
248
188
239
248
212
182
193
177
155
166
186
179
208
200
143
188
222
185
182
230
230
185
148
218
192
234
239
232
184
185
214
270
216
220
237
155
237
259
200
246
193
134
153
145
202
150
198
155
203
194
140
206
218
255
197
208
207
207
159
180
250
237
149
215
190
196
149
179
117
219
196
257
166
192
170
252
199
182
227
209
215
151
163
195
234
184
161
139
205
211
209
254
235
185
226
238
244
208
191
179
190
204
221
277
223
190
201
188
207
194
200
198
204
210
152
199
166
221
175
269
209
210
217
166
171
229
170
200
214
170
241
171
211
199
235
264
163
192
214
206
228
204
163
202
176
201
128
245
220
221
148
240
204
184
141
140
213
230
223
156
185
224
211
241
142
224
205
253
195
203
236
164
142
252
209
171
209
196
213
267
170
127
229
208
216
246
170
221
197
220
200
197
228
213
240
199
187
211
233
146
166
228
184
181
174
217
226
225
144
200
168
163
224
181
223
217
259
213
225
148
261
230
242
163
215
227
178
203
183
164
253
181
216
161
225
254
235
129
186
197
158
242
227
212
206
203
240
210
169
194
191
216
196
215
216
261
219
252
194
241
185
177
225
147
226
112
173
223
177
181
247
158
241
166
121
204
253
203
150
221
245
133
207
164
186
156
264
189
241
201
227
176
174
186
221
178
140
183
186
196
210
227
160
159
244
183
181
214
207
229
174
195
243
212
221
189
201
238
242
191
127
210
239
203
186
173
205
211
263
186
192
192
145
188
272
239
210
207
204
220
190
171
261
170
242
136
145
172
177
211
226
226
257
202
176
242
219
143
179
217
172
208
200
200
189
218
249
203
188
145
269
157
223
128
232
182
170
211
215
214
199
208
196
232
165
189
196
233
191
185
223
171
236
153
207
173
234
174
214
213
239
219
204
197
158
151
216
139
171
137
146
186
228
202
112
220
142
222
206
186
217
223
238
255
268
246
204
171
173
203
182
123
184
152
232
151
231
215
163
237
240
216
176
207
162
195
170
209
148
248
205
232
222
169
211
191
224
205
242
222
221
152
208
171
158
195
248
168
190
205
222
260
225
176
242
231
267
202
202
245
196
170
173
198
154
206
185
175
208
188
211
211
160
229
248
149
202
143
211
192
209
188
163
221
183
259
204
236
237
175
210
184
191
196
219
188
190
224
165
219
232
192
185
182
202
225
217
154
233
197
215
250
211
200
171
187
213
215
211
199
231
188
107
207
209
145
243
154
235
171
144
238
217
174
194
235
241
152
187
203
215
178
225
126
216
197
202
200
154
291
140
240
156
222
193
147
208
161
195
256
125
200
236
238
187
183
154
204
238
254
207
217
232
213
178
227
181
142
199
233
229
248
227
141
185
258
220
201
175
196
214
163
208
249
225
218
244
204
261
218
188
179
211
190
247
206
232
148
183
187
227
259
140
239
222
207
210
156
218
175
154
177
175
270
176
154
226
146
222
179
140
144
180
214
222
257
132
186
207
215
193
151
191
217
224
239
231
224
229
172
222
191
212
191
228
239
173
200
201
222
166
244
195
211
184
242
172
160
196
224
227
146
239
199
203
240
149
178
163
160
189
185
253
116
178
196
226
183
238
180
261
234
230
234
194
184
155
242
266
138
177
190
188
220
238
222
197
196
192
219
185
213
211
209
196
230
146
220
139
205
206
211
178
218
182
209
184
182
122
202
246
201
234
276
200
202
184
177
213
174
173
134
193
239
219
167
122
196
188
182
215
149
236
193
218
212
198
193
230
232
237
187
147
218
207
169
204
210
207
135
212
218
193
256
171
208
196
186
163
186
224
203
229
138
206
183
223
216
209
240
180
176
206
247
229
202
198
204
201
174
210
200
198
235
203
203
211
222
259
205
238
207
191
207
169
221
172
201
202
207
169
181
183
219
242
183
125
208
210
176
186
153
155
146
240
198
181
174
180
180
211
187
165
242
208
171
205
193
228
163
231
211
267
192
204
106
158
185
194
136
244
217
260
188
225
220
211
208
173
176
207
178
232
205
223
152
193
237
200
239
169
202
211
224
247
176
238
228
239
214
187
191
224
135
194
190
193
219
240
245
216
177
146
217
193
158
168
151
197
249
228
186
178
228
215
167
230
177
226
195
221
202
207
231
195
202
218
139
192
251
218
215
178
206
154
195
278
230
250
225
197
188
231
164
197
209
219
201
221
259
185
229
196
229
256
187
154
229
141
183
213
246
185
271
238
185
155
131
251
224
195
185
160
188
237
217
209
240
225
223
266
210
239
176
182
236
174
242
222
206
222
131
196
220
178
213
185
170
209
248
202
214
196
178
213
176
185
222
217
232
186
198
184
158
228
207
234
262
207
174
176
190
198
174
163
163
145
142
176
151
135
168
170
182
238
260
152
229
225
232
224
208
216
192
188
206
191
190
123
161
280
239
158
212
140
212
201
224
166
184
190
188
199
170
168
244
177
184
219
202
165
200
192
202
205
243
206
246
193
246
197
212
195
169
143
158
217
144
185
222
169
286
205
230
202
160
186
234
170
230
191
191
94
251
224
151
264
192
229
177
244
269
200
209
211
181
191
208
175
120
151
223
259
207
234
203
168
261
204
257
186
157
172
233
186
177
182
180
196
222
234
211
195
213
146
245
144
246
244
168
201
155
221
208
251
192
152
232
193
207
157
153
222
226
190
205
193
188
181
227
244
211
254
211
157
178
161
154
231
263
145
199
239
178
229
217
197
250
161
177
277
215
175
189
190
193
152
151
167
243
224
227
197
213
199
220
237
221
216
197
121
186
255
194
166
186
255
200
189
178
218
161
227
164
172
259
275
187
145
172
170
200
162
225
197
213
115
206
227
239
223
181
208
224
178
223
197
239
210
214
172
180
199
207
206
174
218
151
229
216
195
135
121
154
199
174
208
127
198
220
224
266
224
254
181
199
198
182
212
141
241
220
231
264
219
218
192
178
218
187
200
176
182
151
171
225
161
244
244
224
241
173
214
139
213
222
206
187
171
198
250
245
263
196
203
228
134
211
200
277
173
207
214
198
201
272
179
234
195
203
230
185
219
202
252
243
228
212
162
239
168
180
149
199
217
193
165
221
244
239
122
218
251
217
213
145
196
213
224
184
117
228
202
174
222
218
213
214
177
162
247
204
271
209
199
187
196
149
191
195
254
227
163
205
174
149
211
147
169
203
201
229
180
155
204
228
260
205
179
281
206
232
199
193
274
221
221
183
192
219
205
225
161
190
221
189
234
195
136
216
234
251
218
187
211
192
160
272
185
233
212
176
166
208
165
241
278
210
139
234
173
178
219
173
170
208
241
220
225
211
179
245
181
206
181
246
174
235
252
248
240
152
209
196
218
259
221
138
232
216
238
111
153
255
233
185
201
247
184
225
147
218
197
186
169
183
173
227
160
229
217
202
217
206
232
227
221
222
215
189
197
229
201
215
163
260
159
170
169
203
139
217
208
255
194
221
205
194
113
193
242
184
188
271
196
206
263
217
296
238
157
183
224
246
167
183
196
206
245
188
180
212
169
214
241
237
192
233
222
222
216
162
160
245
209
221
207
161
167
185
234
162
174
154
228
246
209
177
182
266
273
129
200
203
231
221
218
197
179
206
208
178
155
226
209
200
171
236
262
164
226
195
227
244
185
196
221
195
174
250
176
205
192
155
263
256
163
213
279
158
217
239
169
191
222
207
165
204
150
129
201
192
250
178
243
230
235
154
201
190
200
160
209
199
190
171
190
232
145
205
219
169
172
207
232
212
148
220
214
218
146
216
238
212
157
223
168
177
267
179
193
204
206
214
205
207
149
184
185
240
182
179
208
185
178
272
189
204
153
211
194
149
261
231
170
197
211
222
220
213
238
218
159
229
207
146
199
176
201
223
218
185
240
194
202
132
190
225
187
189
209
257
260
104
213
143
169
217
210
182
158
207
199
236
188
243
179
216
208
176
224
185
210
216
157
175
230
192
182
251
215
169
183
122
244
207
209
206
217
240
176
202
253
228
158
158
199
225
192
262
231
171
173
160
262
262
237
215
151
159
213
162
202
210
257
235
185
216
232
187
164
187
217
179
216
196
188
225
224
195
226
239
163
205
230
117
193
281
244
205
187
174
147
188
120
143
174
231
240
155
201
268
148
154
192
255
179
233
164
234
185
195
257
251
232
203
206
158
172
231
218
217
210
229
168
229
198
181
251
170
174
240
237
240
140
242
178
134
146
157
203
114
140
278
157
187
228
204
181
152
228
146
147
209
202
216
169
234
233
173
175
211
183
157
259
188
247
194
200
230
216
223
185
284
240
211
177
197
233
213
214
158
177
202
232
228
169
171
231
177
229
237
142
163
223
179
162
172
203
220
188
182
180
251
221
282
252
163
213
115
114
218
213
166
187
220
189
150
237
161
156
195
230
189
207
231
187
197
223
188
236
180
211
210
254
212
220
109
234
226
181
148
257
158
224
249
226
260
133
211
212
151
204
164
215
200
241
211
178
165
151
223
214
169
220
231
221
239
229
205
201
156
144
221
217
250
209
172
200
176
194
206
166
233
225
193
199
219
151
150
208
216
163
168
163
209
217
190
226
170
220
211
191
221
206
190
238
128
234
261
195
192
243
187
131
210
189
223
180
122
178
272
186
202
249
215
271
243
231
268
170
168
187
174
233
204
243
263
232
180
188
201
213
157
191
157
190
183
174
266
247
219
196
192
174
150
197
221
165
183
193
191
197
189
247
207
233
137
218
247
181
196
228
121
214
243
185
207
123
219
166
224
197
190
137
194
188
172
109
168
186
215
242
204
164
150
175
180
256
145
254
171
153
251
162
247
180
196
256
208
204
224
218
229
204
160
233
156
161
197
261
187
201
169
226
259
182
194
252
235
259
135
251
176
177
176
196
251
210
182
214
248
169
210
246
200
166
191
195
198
231
144
239
212
272
218
203
126
184
197
215
187
222
179
172
222
205
167
217
212
254
254
220
226
230
241
142
173
225
187
105
172
184
217
154
188
133
238
191
193
257
257
213
216
186
233
184
260
166
164
192
210
196
183
190
145
202
162
194
170
222
250
225
255
236
239
179
226
179
222
225
243
152
138
216
198
229
208
191
210
247
171
208
203
173
180
154
262
267
218
235
232
239
176
143
210
172
213
223
213
210
202
199
252
186
162
253
189
212
217
192
181
227
265
164
257
197
162
160
230
216
225
146
232
242
271
161
150
145
258
230
158
189
154
215
155
148
171
203
151
197
190
238
255
182
207
249
143
212
165
207
175
195
258
224
205
151
247
261
232
183
264
173
161
224
170
245
215
238
203
217
208
245
181
245
187
205
151
191
226
228
212
199
250
180
230
193
288
253
146
182
162
145
230
203
180
234
194
192
213
218
187
229
248
201
189
198
205
189
142
231
161
219
241
232
185
210
172
204
175
255
260
185
197
242
215
253
231
218
142
228
178
236
184
199
238
179
226
217
165
233
223
229
170
225
250
215
181
184
161
159
213
195
198
189
223
170
220
208
164
199
174
173
153
204
205
192
209
194
205
200
187
166
204
176
180
180
124
218
211
173
212
205
125
175
167
173
220
176
198
257
155
199
192
219
194
202
175
163
181
214
191
170
160
199
135
245
216
241
241
155
184
207
166
208
206
234
238
223
211
271
191
198
167
190
247
258
249
198
196
187
223
259
145
172
241
256
246
283
165
184
155
258
261
203
220
178
211
187
241
210
193
220
215
190
131
185
179
242
189
166
181
167
208
229
279
181
190
170
245
226
206
137
236
217
247
227
161
196
218
173
242
170
221
188
209
177
209
237
230
213
139
172
218
229
264
159
229
206
188
257
240
149
233
225
170
221
199
157
244
195
193
196
256
120
262
179
197
260
255
250
181
211
246
106
217
126
244
197
157
238
176
177
205
222
180
136
180
165
212
147
267
225
161
94
149
236
168
191
169
151
204
180
184
284
172
185
193
186
215
218
191
172
218
198
198
162
142
238
264
183
136
155
226
157
221
193
197
204
159
192
269
219
169
239
201
146
235
268
247
196
177
216
238
187
255
216
269
152
195
240
171
221
188
155
181
220
194
184
173
152
251
190
221
169
175
201
242
160
202
210
182
182
278
223
202
213
220
217
207
142
207
196
156
213
185
225
182
240
209
206
206
173
178
189
220
248
183
252
170
214
216
222
206
245
245
245
140
244
245
199
169
206
186
171
223
236
215
182
174
210
151
207
190
141
175
223
218
195
255
166
193
181
181
156
217
232
181
188
222
208
219
167
200
215
184
201
188
196
160
252
184
178
133
216
229
215
221
214
174
220
161
207
161
242
201
248
183
190
203
197
161
141
197
195
177
157
180
216
205
165
190
187
210
190
203
209
211
227
197
195
176
161
193
232
156
193
201
209
175
247
262
263
166
168
205
192
162
187
174
216
82
201
213
227
179
218
141
188
188
212
184
174
211
227
219
223
228
169
199
178
176
219
184
181
213
164
175
164
188
163
235
141
254
188
196
198
215
192
208
189
179
212
206
216
169
230
213
207
141
157
172
229
203
243
171
137
206
254
242
173
192
204
117
194
193
204
174
207
192
170
219
179
203
185
224
230
195
206
214
244
230
224
201
192
241
129
188
186
144
185
245
226
207
181
169
206
220
242
199
179
223
275
221
182
202
187
234
244
155
173
143
198
105
207
192
251
152
224
241
220
197
195
207
236
162
206
205
245
212
231
225
160
228
159
272
158
177
190
167
217
175
166
188
209
173
206
183
255
231
189
226
218
190
220
187
176
128
235
278
178
214
180
178
102
220
195
124
178
206
146
190
151
191
185
183
214
274
229
150
216
207
193
212
243
195
185
153
226
277
194
221
218
208
245
221
200
222
171
179
176
215
186
164
163
243
202
235
257
193
223
195
206
211
167
173
165
168
227
203
175
228
206
163
155
204
218
221
202
128
164
237
179
214
211
184
130
215
180
186
194
138
179
212
220
215
193
229
261
187
204
224
184
246
164
192
238
170
237
155
191
233
238
203
191
187
207
246
252
191
271
201
184
151
147
188
248
174
224
186
134
243
162
222
172
175
211
276
201
224
181
160
231
206
229
240
191
202
160
204
178
175
186
212
217
210
213
242
168
191
199
229
228
175
134
167
236
135
257
233
173
201
181
160
282
157
232
253
218
249
178
172
176
181
233
202
221
249
222
190
202
259
185
215
200
228
207
218
139
226
223
226
231
165
193
209
154
187
177
174
181
146
245
244
229
212
244
195
252
223
209
197
177
222
236
234
206
202
179
139
203
183
178
196
212
265
151
163
234
198
143
157
206
203
281
183
225
205
149
197
227
174
206
173
207
244
236
208
254
192
247
217
105
203
247
199
182
207
208
248
256
186
213
235
171
132
231
188
194
222
238
197
201
184
258
204
196
227
192
240
207
250
146
196
202
201
197
266
157
145
220
159
189
199
160
171
210
124
294
153
161
229
187
188
213
212
245
184
156
177
197
199
235
164
146
249
163
209
180
213
189
244
240
213
218
174
179
189
195
198
206
181
196
197
200
191
182
204
206
140
177
214
169
176
199
185
180
178
240
197
236
199
228
224
197
187
225
207
225
207
214
162
153
152
158
206
172
249
171
224
210
127
147
173
124
222
187
180
194
171
258
177
182
205
191
222
229
196
193
186
261
193
185
210
190
235
181
197
207
186
212
209
273
178
225
201
233
148
157
180
222
198
184
232
181
210
224
249
231
183
199
167
177
258
200
207
279
166
168
176
137
231
236
214
229
247
196
230
228
209
179
188
178
164
170
165
219
186
191
244
224
117
236
195
211
197
187
239
233
192
207
207
180
197
130
182
183
212
236
239
197
174
178
212
165
193
167
219
193
171
208
200
173
153
201
178
209
198
192
202
232
209
190
211
245
179
157
174
181
193
187
229
207
235
234
143
222
129
236
163
170
237
190
254
200
134
220
205
224
169
238
165
244
182
239
187
150
189
190
243
256
185
220
168
203
155
202
172
184
171
180
215
179
266
200
143
218
147
130
162
219
239
189
229
207
223
224
215
156
197
179
175
192
192
154
214
175
167
169
161
148
216
179
179
233
192
214
197
226
228
197
207
215
183
261
168
159
250
152
197
128
96
204
187
203
270
181
159
184
162
171
185
177
207
217
128
260
232
202
151
212
196
250
162
168
174
204
240
217
200
175
192
209
245
141
145
226
187
190
195
206
187
218
163
145
189
167
220
239
255
121
222
220
178
175
127
179
210
179
216
220
199
204
194
165
202
184
236
249
166
230
229
197
256
253
150
159
221
208
196
186
226
199
192
258
199
177
178
197
248
222
139
189
211
228
258
251
182
191
200
207
212
255
211
234
181
125
250
191
121
148
201
209
227
177
177
214
198
193
167
171
176
169
232
210
165
190
231
229
146
176
205
191
228
181
214
141
168
190
207
169
152
196
198
198
216
223
154
232
198
243
161
187
221
179
141
183
227
159
202
165
238
177
213
206
196
192
191
187
138
208
215
183
206
213
220
256
227
156
232
219
236
178
194
188
177
162
231
148
214
204
234
234
179
163
195
211
235
224
151
142
221
203
278
168
173
183
189
73
159
172
203
213
171
247
179
218
177
216
251
214
184
214
197
192
247
279
213
191
231
159
233
175
212
209
180
173
211
245
241
144
159
267
190
166
136
174
160
164
171
192
227
225
212
164
222
216
225
249
241
234
205
239
289
183
178
216
210
193
238
215
192
207
237
222
182
206
174
174
209
188
253
172
202
179
207
183
183
233
225
200
198
186
179
181
135
168
248
235
206
147
262
218
185
235
196
240
214
198
221
224
220
166
199
212
235
156
237
171
216
232
208
161
185
199
186
170
190
178
211
176
215
227
206
199
232
192
194
231
179
277
172
228
200
156
215
219
231
191
227
218
176
242
146
193
238
191
200
152
211
211
186
158
254
146
171
169
162
168
290
181
248
187
174
185
174
163
143
202
179
162
267
190
124
172
240
196
185
173
217
174
192
169
137
223
166
207
220
117
238
207
217
178
193
187
243
225
222
187
151
164
179
210
228
179
237
247
231
143
259
192
222
248
209
238
180
146
213
216
138
185
229
222
211
210
192
238
253
216
201
126
184
249
165
163
234
194
258
257
177
232
159
192
209
230
179
251
217
198
228
235
180
205
201
176
218
217
155
213
174
212
148
190
220
226
209
178
225
155
231
201
192
214
220
218
174
184
208
157
202
165
239
221
229
235
160
190
194
243
152
160
201
241
214
186
252
176
217
249
233
177
231
225
169
231
203
255
241
175
230
187
179
165
122
229
221
153
227
173
167
216
188
250
217
214
200
199
143
223
184
188
174
154
207
206
210
163
186
215
226
173
161
189
213
164
226
245
143
193
175
170
245
158
167
241
218
176
209
233
189
169
209
197
198
228
126
196
140
269
135
156
181
247
199
222
176
276
216
225
182
171
189
136
154
214
218
219
207
174
135
174
247
183
221
197
208
206
176
170
241
149
227
219
212
175
209
258
209
225
208
237
202
220
222
289
180
226
214
191
219
210
221
225
182
235
176
159
220
145
180
246
182
242
219
198
254
184
199
212
193
232
113
217
134
150
126
192
134
199
193
222
219
218
173
201
135
204
220
257
209
234
195
150
201
235
191
213
219
165
223
205
208
231
253
172
255
217
241
181
181
197
195
224
197
245
170
214
210
220
168
224
256
179
176
153
147
137
202
164
144
237
229
177
209
229
224
183
225
215
171
157
215
195
196
189
191
136
181
225
155
225
169
193
182
191
215
188
220
190
177
176
197
208
188
246
238
202
211
182
173
145
203
167
169
221
181
175
188
212
230
187
205
206
207
172
227
246
225
157
186
238
210
205
186
240
162
219
125
210
175
207
130
235
214
189
234
223
240
120
201
202
186
221
189
202
193
225
201
203
193
154
238
140
225
224
239
268
207
250
242
149
168
210
246
182
204
197
231
140
222
174
243
162
244
220
179
211
187
226
219
206
236
197
166
193
161
276
229
219
168
192
194
179
215
217
172
120
211
199
186
227
205
226
217
218
184
236
194
181
193
200
198
225
215
218
170
131
227
132
237
156
156
176
205
168
185
248
154
185
206
223
175
232
194
239
184
193
136
147
214
219
236
193
188
206
203
201
153
251
183
210
173
188
174
175
151
232
216
175
181
194
197
143
173
160
217
262
183
210
156
209
207
218
200
168
215
189
163
173
214
226
173
164
196
289
184
179
173
189
173
179
206
208
208
164
209
185
258
213
249
166
234
186
199
183
243
130
124
193
220
161
223
229
190
217
256
244
121
207
203
190
208
201
170
211
201
187
168
188
210
239
201
168
184
197
198
193
214
209
220
240
210
244
162
162
184
217
258
170
160
182
226
116
158
153
206
220
216
156
196
166
132
233
239
210
201
174
183
216
225
208
219
230
184
137
240
127
176
194
251
220
158
193
162
194
149
223
153
268
223
226
231
214
185
196
216
195
169
217
189
200
266
218
233
190
158
199
229
165
188
202
195
185
201
213
217
226
246
234
227
218
231
185
181
162
212
223
186
190
222
212
170
252
210
174
208
189
265
189
191
218
258
175
232
160
174
171
170
165
199
180
186
184
244
221
221
173
167
197
168
182
165
158
169
179
238
223
154
217
154
206
228
179
202
199
229
203
211
216
124
249
186
187
212
187
237
235
200
270
234
221
229
193
179
196
157
179
198
260
198
176
215
190
215
158
212
233
227
176
182
226
222
224
202
145
213
262
169
279
178
136
246
131
231
245
198
189
210
225
201
237
198
233
164
256
161
181
214
159
258
232
203
175
178
194
173
178
145
172
195
152
200
169
214
205
210
169
199
183
205
192
282
248
151
261
274
202
189
257
187
168
204
196
237
221
164
216
184
195
229
220
205
238
222
148
234
221
184
166
170
228
211
221
199
245
203
236
129
172
266
163
203
216
192
162
205
144
202
219
132
217
229
211
201
243
171
212
248
199
175
201
229
197
183
220
202
190
191
270
169
237
216
237
189
184
219
193
241
167
191
170
219
189
158
217
200
185
248
204
191
180
254
293
162
211
172
232
188
234
172
252
140
177
166
242
223
214
183
174
167
160
218
198
232
162
179
137
241
141
117
240
156
167
157
187
183
188
250
212
229
194
252
239
222
206
216
169
226
232
193
230
222
151
128
219
230
184
179
240
213
225
243
199
217
256
170
221
206
285
237
190
221
174
200
249
139
124
213
219
188
125
207
240
188
175
174
246
246
179
218
232
199
172
246
179
208
177
277
232
176
163
263
189
182
173
205
266
216
174
203
170
165
227
195
136
200
200
197
245
175
186
222
246
166
180
164
212
160
230
231
222
204
182
166
201
163
207
256
160
178
155
179
198
246
168
166
158
215
269
214
246
157
284
255
110
194
174
105
219
191
227
225
231
216
178
196
125
111
231
222
229
205
252
216
199
227
209
232
135
141
204
265
250
142
203
251
184
182
228
199
215
157
163
216
217
244
204
196
172
211
239
171
109
197
298
218
126
238
150
178
174
189
214
192
194
159
181
234
191
219
239
189
122
186
228
189
234
155
154
185
173
228
199
180
241
183
195
139
222
155
221
195
203
190
227
177
200
194
188
269
164
158
278
173
193
160
228
122
186
162
195
214
209
203
153
197
171
153
156
183
204
166
203
257
220
221
165
238
217
234
215
199
226
149
219
207
192
213
227
181
228
169
162
187
278
182
175
199
193
222
223
223
197
220
191
263
128
155
233
203
145
193
224
235
165
218
169
213
210
190
192
204
202
222
215
222
192
227
209
234
184
165
239
219
187
190
199
278
148
189
156
233
182
201
217
207
144
165
187
187
225
224
222
196
235
205
186
177
213
224
249
201
235
263
209
229
182
223
187
191
204
178
184
244
214
192
166
133
265
177
185
200
163
199
221
237
146
222
173
233
206
202
152
216
258
243
163
184
244
219
194
180
216
231
183
200
168
246
170
230
229
282
220
183
223
170
157
201
170
203
241
181
186
191
218
170
207
194
196
244
205
237
244
267
260
213
191
220
184
229
199
218
164
180
203
193
190
196
214
135
224
140
225
198
255
215
215
175
168
105
184
159
180
152
139
233
187
237
232
246
216
204
214
165
245
214
224
172
186
157
194
144
160
217
249
187
226
128
237
207
251
156
152
147
202
199
187
223
179
154
206
204
209
137
246
216
213
230
178
203
206
173
230
189
228
279
190
225
193
197
173
132
186
164
174
179
173
204
214
200
148
137
185
164
213
199
236
157
223
165
217
188
164
160
115
195
224
207
175
236
202
242
232
210
129
228
152
223
176
167
230
226
190
265
249
241
232
164
205
225
165
205
174
273
223
233
178
175
209
247
196
209
170
219
203
253
231
181
182
188
251
225
160
194
209
201
230
137
233
207
231
224
107
185
230
212
142
176
192
227
206
276
166
207
189
216
175
249
164
223
157
251
202
120
209
127
202
238
196
167
265
231
203
153
162
215
194
146
201
194
177
201
213
183
229
247
157
164
152
136
235
197
207
209
249
209
166
198
209
211
211
259
177
191
247
250
231
271
186
180
163
219
209
254
173
167
268
186
196
196
213
197
212
254
174
154
218
211
201
233
174
210
166
202
127
117
258
175
182
205
176
179
178
207
240
194
212
231
214
158
205
235
187
230
181
151
225
185
238
180
184
249
256
154
165
175
194
158
226
152
222
244
212
163
233
193
192
240
151
243
206
231
215
178
202
206
244
244
241
246
153
200
203
225
178
165
237
175
266
173
180
185
255
200
179
218
194
196
252
137
225
178
128
190
147
171
152
220
130
232
189
192
183
182
171
181
239
228
183
185
192
194
216
191
216
222
191
242
254
194
190
198
181
177
226
155
152
193
199
170
130
254
232
238
227
168
204
172
281
145
225
198
212
210
220
210
222
188
176
240
220
250
180
194
200
145
160
231
170
165
208
234
159
205
210
249
190
227
140
204
219
222
186
224
242
231
289
244
213
150
202
213
127
256
203
194
221
229
152
182
231
206
192
218
221
227
126
125
159
216
206
196
216
128
223
238
129
150
242
232
207
202
241
194
252
222
164
172
249
229
210
198
171
167
216
194
221
181
208
233
133
232
131
158
170
166
193
213
240
245
194
207
222
226
187
187
225
267
174
201
192
246
224
202
155
254
170
201
212
279
228
214
184
251
187
241
170
201
230
219
218
188
285
202
208
174
204
187
198
172
228
217
150
186
169
139
208
167
176
170
194
206
135
204
158
250
177
249
235
217
182
214
170
204
152
221
216
247
189
200
167
227
182
175
209
254
156
186
267
217
198
231
177
229
188
204
233
228
126
213
240
202
181
231
165
179
248
186
232
212
234
229
203
199
217
162
158
188
212
215
208
199
248
148
207
217
200
153
256
256
191
169
252
153
187
168
189
199
184
194
191
211
199
177
261
233
229
234
184
216
185
168
264
203
160
223
229
176
181
218
179
196
230
187
214
211
237
250
175
179
146
226
156
155
276
187
160
198
159
220
219
139
165
182
223
206
134
210
210
225
145
212
219
154
217
208
220
198
228
199
272
205
97
167
224
207
161
133
210
177
128
238
181
236
191
250
249
234
198
226
175
195
207
137
215
177
165
141
229
184
127
201
192
191
225
141
252
204
214
208
215
225
257
201
163
189
224
170
171
155
217
160
184
234
183
203
188
195
223
121
199
241
225
197
236
195
220
235
226
207
209
159
254
220
190
154
188
111
200
149
212
220
243
202
268
201
164
259
160
224
191
198
225
257
174
229
171
162
201
238
248
176
203
266
193
217
209
176
169
194
226
212
268
166
194
206
222
156
196
199
126
239
210
206
159
193
151
203
217
222
211
148
214
170
156
232
159
201
213
194
187
185
212
188
179
188
173
217
166
189
199
193
153
204
177
159
184
191
155
248
193
220
250
175
155
123
220
173
177
150
224
206
202
169
149
192
202
218
128
282
171
208
133
200
183
219
226
229
147
247
211
176
238
197
193
241
217
168
144
160
151
178
236
186
263
190
156
203
156
161
235
156
225
166
222
215
202
139
185
138
164
225
222
186
185
216
149
250
222
197
229
211
143
219
155
236
229
253
216
240
199
223
232
229
178
207
191
184
213
198
146
197
210
175
191
148
166
240
228
262
175
187
188
208
225
226
171
230
247
215
225
161
200
126
210
187
149
236
248
138
226
159
213
198
204
94
218
205
165
234
138
247
142
212
207
203
216
234
213
195
164
209
186
199
227
112
153
229
215
205
167
197
195
254
198
247
240
204
213
228
172
219
248
228
214
260
233
194
165
134
206
214
206
226
184
149
174
222
160
147
230
148
133
212
221
213
232
201
189
231
200
218
191
182
208
209
220
219
185
141
215
146
240
215
169
193
287
139
187
179
177
142
197
270
216
194
227
177
249
268
194
246
190
209
249
189
228
156
187
176
202
222
201
139
159
170
184
215
202
167
203
145
170
225
173
178
153
178
209
179
193
175
153
247
221
197
216
189
201
172
155
236
195
247
205
208
120
167
210
152
146
224
235
171
189
196
163
253
253
256
226
227
185
186
174
245
156
201
181
248
182
199
232
141
188
236
225
227
207
215
195
194
246
187
211
137
228
170
146
210
216
221
198
276
181
189
186
136
181
253
162
245
226
194
189
163
257
184
210
182
176
181
164
207
152
198
221
202
192
263
253
201
214
175
237
208
175
172
173
180
245
152
215
176
206
151
263
226
126
182
243
151
220
187
210
245
177
259
195
254
230
257
203
176
213
242
188
235
179
230
199
184
221
191
208
188
241
300
220
197
176
215
191
159
229
197
247
240
256
224
214
254
232
178
235
152
147
198
251
168
234
255
178
195
150
218
176
199
182
165
234
213
161
207
205
189
181
231
201
234
197
164
195
248
169
210
192
187
239
208
116
160
166
224
140
204
169
190
181
170
184
235
170
130
223
208
254
218
209
165
204
216
200
257
241
232
185
214
271
169
148
230
254
228
190
202
145
229
188
218
201
178
170
217
223
193
182
223
180
219
256
179
181
230
215
180
178
218
218
176
206
196
210
177
238
222
178
211
201
168
244
251
162
241
226
193
195
188
192
217
234
155
144
231
211
205
175
211
219
222
222
226
224
148
182
229
223
201
242
191
186
226
236
211
159
182
155
225
194
183
234
199
177
211
197
192
255
137
189
204
158
233
221
189
138
209
180
251
212
197
247
218
190
173
159
194
158
205
200
213
180
167
204
193
185
213
242
176
195
195
163
240
202
195
130
118
156
140
249
239
117
171
251
200
228
225
190
210
128
221
247
197
183
136
170
209
203
210
210
208
181
184
213
131
109
144
258
175
210
254
189
226
188
175
217
220
199
212
157
210
251
188
198
156
150
235
186
214
143
226
180
118
247
282
215
183
232
204
189
245
224
149
194
170
140
169
186
281
207
156
192
257
169
183
200
167
200
191
187
267
214
216
244
234
195
211
195
247
248
177
230
165
241
129
247
175
168
186
199
239
176
150
164
205
157
155
189
185
234
221
186
267
215
225
211
194
210
213
232
214
236
155
234
246
239
230
234
170
226
188
214
164
183
192
209
270
204
165
115
210
166
210
213
222
183
203
194
146
179
210
176
195
191
213
179
204
232
148
187
219
161
261
196
239
189
199
239
207
253
168
182
216
191
238
214
208
158
224
170
140
195
229
196
218
234
188
161
208
233
210
174
224
233
195
199
199
212
209
186
164
218
188
209
220
198
206
190
183
233
202
255
210
206
246
173
183
195
241
205
215
140
186
257
163
204
141
196
217
189
184
197
134
210
229
147
211
139
214
230
223
175
205
188
197
222
215
204
207
244
219
175
223
147
247
193
218
156
173
216
260
211
210
225
181
194
215
171
267
184
161
151
182
212
201
245
241
135
220
195
175
183
245
247
140
270
186
192
204
198
199
177
225
223
131
133
166
194
195
174
220
145
197
219
220
186
156
189
192
190
189
200
260
198
163
270
185
198
139
288
203
230
202
175
239
210
210
171
188
161
203
221
202
220
183
221
231
224
162
185
220
208
250
192
152
131
180
227
164
188
247
169
230
236
129
205
270
212
180
211
188
188
233
232
258
229
190
125
232
265
154
186
204
242
165
218
201
204
254
171
221
233
164
243
157
158
203
206
227
153
240
173
173
217
131
207
262
152
208
166
211
213
222
164
193
144
190
247
194
268
203
152
227
288
227
229
218
186
163
245
233
197
146
243
190
175
194
148
153
193
210
216
198
187
170
146
204
171
186
256
203
155
222
164
130
126
192
188
205
216
178
215
240
143
230
203
231
187
215
200
223
221
246
170
199
196
235
211
246
202
230
253
198
236
139
182
229
193
216
220
255
179
228
167
239
178
145
181
190
217
235
212
215
126
204
220
211
170
168
190
183
184
196
186
235
219
200
201
165
149
169
236
184
192
200
162
214
240
248
232
114
205
173
175
201
214
222
156
246
221
250
179
166
189
229
155
239
165
169
178
163
234
181
228
187
153
218
229
209
183
196
241
176
207
254
203
206
199
233
210
233
238
173
240
228
202
193
257
239
214
224
201
187
136
248
231
234
176
123
171
222
216
200
152
218
167
243
111
198
209
201
161
173
200
165
187
241
196
209
210
181
196
218
162
188
202
227
216
230
170
208
123
168
204
195
244
187
159
209
248
200
191
254
197
196
184
240
167
194
182
152
170
271
186
204
249
230
219
268
195
208
216
221
217
190
181
227
228
192
182
228
220
213
108
199
271
180
256
171
201
127
193
233
198
247
163
275
146
183
171
150
206
216
234
256
192
142
154
228
283
195
271
204
189
196
200
146
207
171
241
209
176
219
247
221
189
151
131
186
229
170
234
157
209
223
138
156
160
244
180
185
176
196
131
178
273
170
172
197
163
218
213
135
191
233
217
144
276
169
228
207
266
165
206
198
187
198
177
142
197
179
193
222
200
131
169
187
257
235
245
215
243
215
234
211
213
170
186
138
180
283
211
150
249
226
272
153
207
236
250
164
226
225
234
215
213
215
209
218
210
183
177
220
196
207
192
176
234
215
156
197
186
200
197
234
215
159
175
226
257
189
116
168
193
146
173
195
219
220
246
183
251
234
234
198
198
211
189
208
261
140
237
164
196
253
219
224
235
220
182
208
220
196
170
176
216
174
170
225
254
155
164
214
177
200
270
167
193
175
233
249
217
226
197
237
216
230
199
237
173
185
270
154
158
168
144
221
195
149
166
183
158
197
232
198
240
195
186
171
229
194
174
140
202
191
189
239
239
240
194
178
224
159
246
210
213
229
159
214
130
195
165
188
136
216
209
181
258
142
183
139
217
221
207
199
145
180
178
236
254
156
217
225
225
175
236
179
160
120
260
173
174
246
252
165
181
193
196
235
196
232
212
206
164
127
169
217
233
219
248
180
175
206
222
196
192
137
196
201
255
202
248
164
174
229
206
219
240
213
164
159
174
174
202
246
223
135
250
186
219
163
204
193
235
203
198
192
229
159
244
163
183
251
201
239
221
228
194
145
202
231
166
219
207
172
224
122
266
158
231
213
203
208
212
179
218
171
178
218
171
170
234
175
204
257
210
189
227
163
255
194
170
202
214
187
197
260
198
213
156
217
195
163
197
190
228
186
209
144
201
205
227
227
172
202
238
206
190
212
161
98
264
228
207
210
203
198
139
203
199
187
248
166
180
279
201
190
190
190
194
141
195
218
147
171
208
206
198
241
203
121
118
230
212
126
104
214
233
259
171
246
195
137
186
175
207
207
181
215
230
188
208
211
211
261
190
210
143
157
223
235
226
154
126
169
208
193
164
235
210
207
156
212
206
286
172
196
213
213
211
124
250
222
205
157
157
243
168
185
245
178
221
179
184
268
264
190
198
248
223
158
158
220
229
274
165
180
207
200
156
193
191
175
154
148
220
167
161
196
259
200
241
170
227
213
169
200
212
221
147
175
203
162
248
149
172
187
152
133
229
224
124
167
207
240
192
271
155
222
220
221
212
230
158
263
130
200
181
168
176
208
239
143
153
184
216
231
165
195
200
237
196
254
216
205
106
187
155
249
216
187
206
205
211
217
203
177
234
253
119
211
196
191
214
186
220
197
201
171
221
161
235
186
220
249
177
223
212
225
256
223
229
186
194
160
200
234
210
156
221
214
220
239
236
215
221
237
225
193
206
191
171
235
256
202
133
254
221
191
110
163
242
184
182
138
207
234
156
229
175
175
211
188
227
191
204
215
250
194
211
152
173
229
143
243
267
138
237
222
164
163
215
176
174
205
217
168
240
227
177
167
138
165
130
275
217
182
243
225
230
207
200
176
272
140
223
145
217
185
201
194
232
175
174
203
254
217
232
194
226
157
166
248
199
214
168
130
176
191
295
198
169
191
160
196
139
176
251
266
231
220
199
140
215
171
115
184
180
181
227
255
186
196
270
226
190
230
203
217
189
186
178
242
218
252
284
213
223
168
200
224
213
184
264
184
248
213
177
128
242
143
208
205
214
209
210
196
177
235
253
204
223
167
192
203
135
182
225
161
174
213
224
192
300
230
207
227
205
223
202
257
276
206
182
153
160
201
113
130
231
164
190
182
236
256
206
141
181
240
204
255
178
279
192
258
184
251
214
172
203
222
183
259
211
216
139
192
194
196
183
208
141
200
224
166
179
241
145
158
216
200
223
158
208
174
213
201
202
200
232
138
209
242
223
212
223
235
135
179
215
200
248
205
202
138
216
185
154
217
235
242
160
134
243
175
198
197
207
190
175
210
179
228
171
185
220
164
173
208
191
244
200
175
208
258
147
210
146
267
229
184
121
188
265
198
176
201
197
218
183
149
183
150
234
217
184
143
138
225
162
282
229
156
190
211
223
214
205
211
210
221
171
225
184
227
197
189
185
256
265
163
204
225
204
246
136
177
163
203
195
255
222
141
250
209
207
198
197
212
199
217
197
218
201
160
211
199
230
220
186
201
235
208
218
168
182
192
175
228
168
214
122
175
183
160
216
198
127
200
212
243
233
188
183
206
212
152
237
189
249
205
153
127
155
181
163
246
196
208
245
203
169
202
146
184
256
195
222
161
160
181
197
222
252
184
178
191
228
205
235
221
192
214
218
197
262
232
205
172
206
122
216
187
226
164
202
183
212
250
177
238
182
216
271
132
206
193
149
183
226
238
189
183
178
179
228
253
188
239
217
200
150
236
224
206
220
246
225
229
216
147
238
171
162
240
230
262
226
192
176
165
232
186
187
175
214
215
183
200
183
233
187
234
246
223
129
158
176
217
224
187
227
173
134
225
169
253
215
224
250
183
173
202
199
199
173
194
156
233
255
143
226
171
192
203
181
224
216
170
203
229
141
223
259
216
253
203
181
110
209
207
220
204
230
222
151
263
205
241
161
208
218
178
245
209
197
246
160
222
246
234
200
176
147
143
229
170
183
245
230
130
191
273
228
127
201
196
177
178
208
179
217
232
259
212
249
139
157
201
148
175
217
179
185
177
149
165
225
147
191
219
233
191
170
156
168
197
172
175
138
178
163
172
158
152
240
204
232
173
234
194
225
205
247
232
192
250
172
159
216
221
168
145
194
122
209
154
181
222
194
275
202
178
170
225
204
179
212
175
242
263
214
199
193
212
188
143
119
206
195
244
189
177
252
216
185
155
204
163
135
230
208
163
267
167
220
258
220
203
146
228
218
209
197
192
168
220
255
180
184
178
211
202
174
195
166
170
212
203
175
204
211
165
180
177
241
231
195
235
214
214
225
158
171
213
127
191
196
192
158
213
217
255
219
226
131
204
259
192
148
185
184
192
222
238
181
227
192
181
257
214
244
118
226
186
157
159
228
235
147
231
236
233
173
202
207
130
222
134
207
223
238
178
262
265
187
171
225
224
239
170
154
202
153
184
234
237
170
219
233
205
207
230
234
243
241
211
239
211
226
253
248
197
221
215
142
178
191
124
180
227
163
208
161
205
205
235
234
249
231
213
222
236
193
198
135
216
204
238
237
167
176
244
216
134
177
166
257
169
209
228
209
187
171
198
214
172
191
168
178
190
233
263
154
249
194
197
152
219
210
170
201
261
150
243
249
198
176
211
211
225
228
239
159
245
218
171
201
195
200
220
242
165
182
198
218
201
212
174
196
242
139
162
188
215
227
219
181
236
203
124
214
194
170
188
227
187
177
163
195
174
217
198
127
240
223
266
149
193
239
190
181
157
174
241
226
204
188
191
207
197
128
235
222
155
173
247
215
240
194
207
196
178
182
218
117
204
137
188
246
163
203
281
174
271
183
222
183
210
216
199
256
181
250
173
129
214
238
243
227
199
182
149
207
222
155
214
250
234
152
175
123
171
247
209
240
214
239
190
253
194
160
205
255
228
173
217
203
196
178
196
247
198
188
177
265
156
238
129
212
222
198
197
180
151
212
209
150
231
204
223
264
163
238
218
197
184
238
213
204
204
188
229
190
185
176
145
235
202
136
151
214
231
237
209
128
171
169
238
171
197
266
238
178
279
252
168
228
201
183
189
222
181
173
183
186
227
181
226
169
218
234
171
222
275
195
215
199
192
192
160
217
217
211
168
157
241
181
231
186
161
208
204
195
162
180
194
232
214
156
213
257
157
173
176
190
231
247
231
163
211
229
215
203
217
203
176
224
224
195
226
175
246
209
146
230
249
153
223
262
217
250
221
155
218
162
218
247
162
155
198
221
240
217
190
278
199
203
249
189
169
178
195
186
207
245
189
221
210
195
221
195
211
206
162
192
207
192
235
179
190
200
196
211
191
153
217
204
235
259
182
249
162
183
175
230
200
199
176
124
233
225
137
200
200
188
252
196
185
204
199
233
189
250
204
218
168
188
247
167
156
123
214
252
185
160
221
192
121
208
174
181
222
227
206
265
142
165
219
199
178
201
211
248
146
242
171
224
185
230
163
206
171
202
157
186
186
248
263
231
197
226
197
176
149
144
181
178
227
203
156
183
195
210
190
220
160
171
106
160
146
193
177
161
164
218
202
255
187
254
217
217
246
250
194
216
89
232
175
184
177
217
231
181
226
197
240
195
251
165
165
188
247
251
128
250
234
212
166
216
190
230
226
157
175
187
220
259
248
213
159
196
189
200
204
197
199
184
214
164
234
186
196
193
204
248
160
186
252
173
244
146
210
202
211
174
192
190
201
107
221
229
137
260
242
187
247
175
187
239
212
185
207
175
151
215
179
202
174
192
213
152
170
169
215
228
256
198
254
189
213
200
166
198
245
283
171
234
206
234
134
240
239
222
143
235
171
190
232
229
196
196
197
180
222
250
159
155
185
178
225
304
199
230
225
243
167
210
106
212
177
192
163
143
129
128
168
130
157
253
173
239
206
219
254
182
255
230
168
243
122
217
219
221
218
190
232
224
183
148
234
172
186
181
216
148
219
177
207
273
187
176
196
180
253
215
230
219
194
179
195
187
139
194
215
151
192
203
219
267
158
251
190
188
179
197
179
206
222
216
178
223
161
262
168
208
172
197
166
171
221
159
233
179
238
246
160
230
239
210
234
149
194
208
160
215
201
229
268
163
276
134
200
166
226
252
198
187
165
244
231
153
127
130
208
184
187
201
203
257
219
237
212
236
136
207
224
226
221
232
153
184
175
165
206
215
242
260
226
158
168
157
172
207
238
198
205
226
181
204
218
196
234
184
201
198
149
231
206
271
182
276
216
231
218
227
138
183
187
155
225
193
143
165
209
220
162
227
265
179
182
173
248
169
202
194
253
180
183
218
201
265
164
212
210
256
173
188
251
161
207
228
221
193
217
201
187
158
231
189
240
200
230
192
167
228
225
227
196
252
226
154
222
197
195
233
218
215
207
183
196
220
202
168
250
229
152
211
246
191
205
221
207
226
196
254
211
216
185
221
230
219
223
200
207
217
188
182
163
206
225
253
203
252
197
200
217
262
133
174
171
255
157
206
225
286
236
209
198
159
162
212
182
209
222
195
146
177
170
191
170
172
152
225
219
191
209
175
236
199
191
249
154
131
192
185
204
226
157
230
157
197
178
234
236
236
210
207
179
136
218
208
243
161
174
212
141
156
151
193
223
205
208
221
249
207
198
242
203
233
176
171
194
134
251
201
208
152
187
160
232
197
196
231
149
191
233
188
171
240
210
245
226
199
162
173
273
249
193
226
232
208
146
214
215
235
218
200
177
243
276
231
209
185
196
157
217
268
245
248
131
218
268
212
170
162
226
127
223
190
209
230
228
213
173
118
175
131
215
194
277
199
188
210
274
238
249
222
202
194
163
221
138
120
184
253
209
222
165
171
204
203
192
217
181
174
151
240
262
222
194
183
211
214
184
186
209
225
112
164
151
151
137
229
266
246
223
223
208
213
172
244
240
182
194
235
214
252
179
203
215
213
234
200
239
217
178
149
216
189
187
181
260
260
205
191
224
183
188
170
224
194
239
213
212
165
176
206
178
180
209
172
161
183
203
219
233
183
255
236
226
154
235
176
223
196
149
221
238
198
249
222
155
172
232
194
218
232
163
200
191
202
164
211
216
219
155
240
128
151
194
196
210
242
187
195
239
199
190
195
205
219
211
180
246
194
213
245
211
210
185
203
175
165
174
231
149
198
265
206
172
148
175
187
178
149
176
199
198
214
225
209
232
157
205
213
230
193
188
191
200
227
174
231
176
203
224
198
112
225
162
238
153
174
202
181
224
151
169
228
184
170
222
182
171
232
213
237
209
159
148
204
180
272
153
215
243
212
170
197
200
222
203
267
255
240
246
173
248
220
188
191
198
186
155
152
246
206
237
188
198
238
247
202
215
183
235
214
169
211
213
219
199
247
156
205
159
130
156
243
184
135
204
168
181
204
198
247
223
179
248
177
141
137
188
251
158
237
211
190
233
219
167
207
196
200
175
224
232
183
110
210
208
189
165
225
204
211
191
176
220
170
149
273
215
163
262
176
214
248
241
187
175
226
242
216
180
197
144
188
204
159
228
234
211
167
192
223
229
212
167
218
176
241
197
247
206
261
162
187
225
232
176
166
180
196
253
153
217
219
190
224
161
144
222
169
249
222
223
200
181
203
136
119
202
231
216
211
219
191
226
235
189
204
188
178
192
200
222
211
198
223
256
245
271
194
243
165
198
180
142
189
212
151
242
222
183
192
219
105
175
149
192
219
225
263
171
137
165
212
149
157
215
165
135
157
194
213
101
187
223
241
155
198
148
259
227
234
220
219
173
268
232
222
236
191
186
220
207
255
203
194
226
213
246
183
235
207
185
152
145
206
198
166
197
150
175
174
166
184
179
154
202
217
191
206
174
216
150
192
238
184
152
175
214
192
216
264
126
211
171
216
185
242
269
118
233
191
198
175
226
151
171
200
185
181
220
183
157
180
217
215
227
216
185
204
202
198
171
196
166
224
207
224
162
207
257
191
250
197
207
226
198
234
251
186
160
157
202
179
170
173
195
184
220
196
218
168
181
182
227
181
229
273
234
199
223
234
212
249
207
149
193
171
235
170
205
149
184
182
183
170
171
177
189
166
190
180
220
204
216
237
223
181
211
116
178
207
185
226
217
90
224
175
229
235
198
190
199
248
182
194
231
165
249
205
194
200
136
259
250
216
171
229
191
206
227
200
208
233
177
184
215
174
223
149
197
220
222
226
221
232
219
205
202
218
202
220
186
183
185
175
217
232
186
215
239
240
167
214
234
234
262
270
139
231
263
193
192
223
208
182
196
124
223
217
189
176
155
195
174
149
169
232
208
243
192
219
232
210
247
185
245
221
175
164
215
237
204
219
96
218
182
265
163
227
220
145
208
192
259
162
203
194
171
213
181
206
205
155
232
177
180
203
168
170
190
198
192
157
183
225
232
203
201
217
125
218
230
178
232
204
158
197
214
192
166
193
184
151
233
261
224
168
145
183
192
283
241
150
156
185
220
191
232
123
169
200
208
227
176
234
233
271
148
250
215
252
172
239
210
182
205
203
213
181
181
232
186
273
218
215
86
203
198
194
171
202
234
230
185
256
225
218
191
225
190
198
167
208
207
208
223
186
262
111
212
204
209
210
154
234
209
233
225
205
256
211
201
210
193
194
211
263
254
155
216
237
223
196
176
160
214
190
166
192
224
266
246
241
257
190
203
142
196
237
220
220
226
234
187
242
200
184
226
241
224
155
164
236
153
199
208
231
225
136
216
237
208
198
236
165
203
199
138
174
153
246
205
200
243
217
175
272
245
184
192
210
196
259
131
241
272
230
159
210
230
240
151
141
198
220
223
177
203
201
199
140
217
176
174
177
149
206
201
216
178
211
214
199
198
189
205
152
224
172
176
178
145
203
156
210
206
210
185
150
216
175
164
161
261
165
197
151
189
173
152
241
160
258
217
260
187
205
191
212
200
145
150
183
192
246
207
180
198
162
158
197
217
193
152
191
205
186
210
222
181
173
196
187
250
169
195
238
134
223
210
143
196
207
192
133
202
211
257
173
174
210
167
204
205
171
192
229
225
194
147
213
159
207
306
184
209
262
249
175
189
239
207
187
180
181
189
188
253
202
191
189
222
259
210
267
177
211
199
169
165
206
202
224
171
206
213
153
183
255
227
200
188
216
209
265
191
165
245
184
183
216
212
237
161
121
221
219
204
176
161
225
215
219
255
229
147
248
192
178
164
208
164
213
247
234
260
155
192
179
164
205
217
160
147
178
190
158
177
185
200
187
289
222
224
181
159
226
209
215
233
165
138
240
205
188
223
166
192
210
227
184
145
202
194
238
195
163
247
180
229
212
153
226
263
254
218
243
237
209
197
221
138
229
187
178
139
160
235
241
159
229
239
246
227
179
136
142
158
179
251
193
259
190
244
145
230
147
210
144
259
221
181
180
194
215
179
177
197
200
239
173
153
165
136
180
167
164
258
216
203
209
215
222
217
242
196
189
238
236
242
244
205
186
189
147
219
220
170
172
283
159
165
222
164
190
274
210
227
205
193
230
262
217
188
211
185
225
143
216
229
202
191
128
224
211
212
244
174
181
215
245
189
215
225
172
146
252
188
224
161
199
214
170
208
174
218
195
128
96
188
264
244
201
238
174
221
194
227
191
201
226
261
163
222
220
156
179
154
235
178
217
206
179
245
163
236
182
186
133
197
197
189
169
224
169
200
193
216
248
190
199
262
199
193
180
207
179
244
177
223
168
186
266
166
217
194
230
161
218
196
172
196
207
180
197
135
207
255
242
158
216
240
204
173
163
172
212
222
201
234
193
180
128
198
219
214
165
233
215
226
228
211
304
207
269
152
156
163
122
160
182
199
215
219
237
192
208
229
237
219
196
251
237
145
230
231
175
179
215
208
215
171
234
250
144
227
265
163
254
174
228
208
201
218
223
193
161
181
220
142
166
205
202
236
191
204
195
226
187
198
222
194
189
216
121
181
196
165
136
219
218
187
190
208
159
175
223
210
227
223
195
224
155
252
199
217
196
198
203
193
245
185
221
207
227
223
214
139
240
142
167
255
228
170
213
172
214
234
221
126
193
179
214
215
225
191
227
172
181
198
193
161
220
254
261
248
181
141
118
213
178
229
190
201
202
214
173
178
192
164
185
283
187
197
204
236
231
243
185
201
167
201
219
197
212
157
226
212
154
203
194
179
204
171
232
190
205
112
179
203
261
189
207
176
195
165
241
245
187
182
237
180
239
222
176
210
205
269
228
129
205
216
208
177
248
246
149
204
123
189
215
200
193
165
200
249
185
238
281
189
201
184
222
241
212
159
233
188
172
255
173
218
136
177
193
263
175
192
228
148
251
207
184
185
260
187
228
218
263
240
241
197
263
152
225
216
241
166
246
198
142
212
173
228
238
186
261
231
201
179
148
219
165
197
210
173
204
181
231
228
208
237
173
176
241
239
146
186
223
198
213
179
190
183
223
169
192
264
184
195
202
232
161
206
109
215
139
175
163
236
228
174
150
246
160
234
195
182
189
227
185
232
112
196
196
159
220
224
225
205
227
194
232
198
190
211
261
219
196
214
173
195
158
135
177
217
248
185
178
110
208
219
208
194
238
231
190
215
148
275
181
253
212
210
215
165
251
247
142
225
208
211
230
274
215
203
204
166
244
167
162
208
200
195
200
228
194
154
125
172
191
175
225
182
207
180
228
273
148
235
175
176
180
173
154
185
237
198
227
187
135
116
126
227
215
214
214
228
161
162
252
207
178
215
210
226
195
225
193
211
181
209
209
152
93
179
222
194
179
216
219
212
190
201
189
184
179
233
163
157
228
162
140
240
190
155
152
245
196
173
240
136
248
243
243
232
193
197
185
215
208
206
182
204
187
193
231
172
213
181
232
182
194
207
221
197
235
193
120
225
158
185
202
202
217
191
230
186
189
171
216
219
210
167
184
223
230
201
236
160
190
165
189
221
158
248
230
155
168
170
197
162
119
179
283
186
177
169
120
204
162
207
198
149
146
211
233
203
166
177
141
234
191
196
202
219
156
241
254
241
239
183
225
233
223
188
228
193
177
193
211
234
179
238
156
204
180
229
169
180
224
215
235
217
225
291
222
192
185
268
178
171
199
233
165
180
201
126
182
198
240
217
193
158
185
196
202
246
252
174
199
258
197
194
229
161
190
192
224
169
212
198
268
199
170
222
230
187
189
189
213
235
250
270
244
219
232
186
196
155
191
202
161
182
169
215
171
190
163
220
229
182
174
208
138
216
177
192
247
273
206
207
199
158
148
167
180
170
203
195
214
185
218
188
184
253
218
209
222
150
171
197
158
190
220
234
212
180
187
243
203
205
156
117
131
134
191
200
225
209
163
188
147
205
181
201
196
211
172
161
185
144
199
228
214
209
190
241
159
198
192
255
171
105
272
134
224
181
169
121
201
215
154
201
238
223
222
174
218
230
175
196
214
207
202
226
234
168
224
171
202
165
229
171
239
241
174
171
229
186
187
252
273
193
220
221
214
225
130
210
261
190
244
243
187
205
257
204
257
194
256
208
183
120
222
184
225
247
193
211
172
143
163
222
182
225
204
231
189
248
197
169
258
193
156
160
158
125
213
124
222
198
184
204
231
178
200
225
256
194
156
212
207
240
255
232
225
171
151
200
117
150
258
192
229
197
203
167
177
243
180
171
247
185
226
191
217
186
192
151
171
188
137
249
250
177
200
249
153
117
177
166
189
201
171
176
218
243
148
258
215
236
183
229
198
189
249
183
182
202
183
143
213
203
253
172
141
211
195
161
254
226
197
119
218
150
181
171
194
186
219
259
171
219
181
198
262
222
234
176
215
193
233
199
216
224
163
171
214
163
227
234
227
144
177
212
218
203
258
224
212
170
219
153
203
181
234
243
211
255
167
243
237
174
224
199
207
157
199
210
213
221
218
177
153
228
196
186
272
179
203
204
231
204
136
206
216
208
157
137
197
175
157
210
155
172
243
223
238
227
163
161
255
241
194
209
170
162
147
202
202
184
183
226
210
255
195
185
168
215
157
201
189
201
225
177
174
172
165
220
152
222
168
193
204
220
167
198
147
193
244
184
192
181
253
240
220
213
269
118
222
221
238
220
219
174
280
177
197
222
198
225
221
202
234
195
185
147
165
160
218
165
175
206
217
150
210
181
193
208
183
220
216
210
204
145
107
227
194
220
201
190
165
154
216
213
228
220
200
194
208
195
249
206
200
221
168
227
177
248
175
228
215
229
246
195
136
295
201
205
209
160
239
191
180
168
199
219
227
131
238
217
124
206
215
208
240
227
197
201
209
138
237
233
168
213
204
237
203
199
216
257
217
138
151
215
218
151
171
239
230
252
253
163
192
198
191
160
237
150
177
194
239
219
258
145
175
163
239
198
212
152
136
252
200
208
240
217
202
196
240
244
267
219
250
213
235
184
217
131
204
205
201
213
216
246
265
215
262
173
196
181
216
236
194
209
155
158
207
204
195
196
236
212
162
176
183
202
211
221
182
168
163
214
156
201
213
224
176
184
135
232
197
152
177
149
205
195
219
212
224
144
235
174
208
228
185
246
191
187
228
193
166
173
199
128
163
198
200
163
205
152
139
214
227
155
151
235
202
238
205
216
241
232
214
173
195
214
173
253
141
205
237
262
131
145
190
213
177
187
163
223
194
200
237
139
184
206
207
191
232
217
264
241
183
274
252
238
202
241
171
199
181
201
203
231
213
195
253
119
157
142
204
182
175
212
208
184
223
121
208
258
215
190
175
170
162
204
230
216
180
152
223
255
168
226
166
224
201
235
265
161
227
165
196
220
207
170
183
253
195
206
260
183
179
211
195
183
196
197
244
197
226
193
267
202
163
176
233
178
132
154
242
231
217
166
147
212
205
158
142
217
227
255
205
246
267
145
272
218
188
186
177
214
166
209
222
221
213
179
171
226
213
222
220
187
192
226
187
175
195
219
255
174
223
233
250
235
177
249
210
185
209
201
229
213
143
223
182
206
136
189
209
141
167
180
210
174
265
215
192
161
256
198
155
245
184
180
215
206
165
166
205
213
261
184
186
221
192
182
225
241
152
150
128
161
227
150
235
226
221
212
186
225
259
188
204
219
217
207
193
170
160
208
156
160
259
190
191
206
130
174
210
192
158
220
187
265
131
140
179
120
150
186
223
204
233
203
193
177
217
242
222
190
254
181
251
160
228
220
172
178
185
233
246
222
156
205
227
194
207
217
155
223
229
193
207
173
243
262
207
196
213
226
179
178
128
162
172
158
233
197
249
219
220
172
240
188
190
252
229
159
186
194
234
235
203
167
173
169
247
158
214
177
215
181
202
179
204
204
243
240
173
226
166
191
139
223
204
259
257
195
215
193
202
225
274
198
221
202
184
178
238
149
213
254
207
235
203
202
221
186
207
212
226
236
165
204
214
192
197
193
233
233
184
184
142
256
176
179
130
262
224
120
174
242
243
216
189
179
184
201
176
231
208
125
197
223
170
131
185
217
233
164
201
184
186
166
177
173
151
217
211
207
263
201
215
148
181
223
198
164
194
213
227
222
173
167
101
150
203
231
167
173
166
167
185
261
222
238
171
183
278
187
238
248
185
144
210
267
204
201
147
219
251
187
184
235
231
202
222
204
199
180
161
205
223
199
216
222
190
213
291
217
251
256
189
220
147
158
187
207
187
215
226
161
198
184
185
196
196
203
179
201
192
216
247
165
210
156
209
234
206
200
174
234
206
213
196
251
177
198
183
200
204
207
212
276
171
235
228
194
215
222
216
224
175
207
235
196
237
205
172
146
233
161
221
246
197
206
218
224
169
211
201
190
215
229
250
188
199
209
252
225
259
173
191
226
159
200
266
212
194
206
144
140
182
206
197
263
223
224
245
186
200
175
172
257
165
236
195
254
204
229
277
253
197
152
159
216
192
170
163
194
198
173
189
233
230
219
183
195
228
197
209
287
153
224
201
233
206
189
173
159
146
202
198
196
213
192
147
233
235
162
278
232
199
158
227
205
264
215
248
195
221
212
185
150
198
233
225
191
279
223
209
180
191
198
221
197
180
170
226
185
251
219
185
200
143
193
164
224
158
259
172
221
195
242
215
166
179
229
222
167
224
193
234
219
241
200
154
209
248
235
207
171
151
209
213
206
200
214
206
242
183
158
173
192
190
188
170
200
182
205
249
121
131
252
166
247
249
204
203
249
214
139
182
225
166
231
184
169
122
174
242
240
196
193
111
146
175
237
165
197
149
192
190
157
244
163
118
154
115
165
195
91
183
214
123
249
173
160
133
180
206
133
205
198
177
237
142
227
176
210
289
181
239
221
153
208
217
191
212
204
179
192
232
224
185
133
170
169
201
260
203
233
199
201
162
208
241
145
198
216
211
178
182
185
203
186
243
236
211
219
255
165
213
199
191
177
235
148
260
225
238
216
248
287
188
266
166
252
250
229
176
252
209
193
215
248
203
210
207
201
195
205
208
166
216
181
161
163
196
197
242
257
233
212
182
237
160
144
177
186
211
237
215
209
184
197
229
230
208
232
203
237
200
228
292
162
206
232
222
169
236
264
210
266
191
224
211
137
174
196
198
174
190
233
151
139
204
261
231
261
190
148
191
161
179
231
229
212
222
218
188
122
150
186
226
193
187
174
170
223
230
251
190
214
216
190
232
224
230
195
259
187
237
161
216
216
204
205
228
225
231
233
237
244
233
250
189
242
227
166
161
143
179
231
171
287
195
239
193
221
151
205
207
181
187
134
198
206
132
204
222
191
204
234
248
195
220
228
138
167
239
262
214
211
202
169
247
277
227
187
258
186
240
238
223
177
194
141
151
150
188
231
231
207
202
221
252
189
205
257
199
225
215
196
222
153
255
247
207
196
192
182
181
217
218
212
205
225
237
223
207
175
258
213
182
209
197
171
178
98
164
179
137
221
143
111
198
197
230
168
226
208
184
166
212
207
203
212
184
181
180
221
206
236
209
184
135
174
194
224
205
164
125
257
236
191
209
227
231
225
184
197
223
230
175
217
210
152
149
191
232
168
158
184
144
229
129
250
243
208
241
218
191
230
210
217
241
181
254
218
137
226
218
179
189
196
177
231
203
197
195
161
164
200
156
151
255
153
163
228
192
254
226
198
103
241
233
209
250
190
167
217
207
190
259
212
165
203
246
180
202
219
179
209
207
188
167
152
232
190
205
213
213
195
172
244
224
194
244
203
220
176
152
202
192
178
153
187
245
177
239
238
159
214
256
164
231
161
160
246
229
172
230
211
165
270
204
221
163
201
236
175
167
241
216
184
227
202
179
200
263
170
202
172
173
183
220
244
118
214
149
229
192
231
219
228
227
157
262
207
201
183
137
228
180
146
191
174
192
189
240
137
193
197
150
194
173
157
210
220
181
219
242
166
196
176
253
181
190
149
245
230
242
207
204
232
164
219
191
182
170
191
189
221
149
239
152
215
167
263
160
149
248
224
177
200
205
206
187
202
190
218
181
259
208
220
196
187
173
199
186
161
96
199
189
191
246
260
147
231
170
161
237
187
172
246
247
233
159
145
143
221
241
250
162
190
201
174
226
193
171
211
239
211
231
224
212
187
208
213
230
272
214
208
220
240
161
205
231
160
248
149
211
163
213
186
203
220
208
180
142
187
259
224
192
203
180
236
219
180
171
194
206
208
197
244
232
227
212
163
138
175
231
192
194
211
146
211
153
201
121
182
202
212
146
126
163
188
210
176
234
197
234
116
225
211
173
201
187
227
191
161
137
188
217
161
135
182
224
186
210
207
251
237
277
215
136
236
197
178
253
167
188
248
189
157
198
290
216
138
153
224
139
217
223
209
254
202
230
171
166
252
257
226
147
228
189
176
167
259
269
175
239
203
132
218
211
204
240
201
214
225
243
188
254
235
198
181
249
224
141
178
249
224
228
203
185
192
188
190
149
206
248
206
211
189
127
116
198
194
195
155
206
242
246
197
245
166
175
233
236
214
209
245
243
167
204
151
241
198
175
266
225
187
149
248
165
161
237
230
169
224
244
161
207
156
209
184
221
207
195
239
169
178
215
167
176
218
221
186
174
222
252
196
200
151
175
277
189
240
209
157
192
183
148
219
186
184
164
190
123
251
284
223
254
234
171
227
194
283
230
175
156
139
151
196
191
212
236
214
139
197
263
212
189
188
191
210
232
184
234
187
171
225
170
212
240
191
208
161
180
203
193
207
170
211
191
200
184
132
174
191
185
160
212
176
212
242
185
175
170
157
197
161
209
144
191
197
236
175
181
172
218
245
209
207
174
175
228
203
276
153
255
174
207
166
219
232
193
250
193
213
176
201
269
225
200
172
151
190
230
213
181
165
173
218
126
157
209
172
181
164
161
274
209
224
208
194
255
225
170
212
223
211
223
254
166
167
170
196
201
182
251
177
160
132
147
159
237
252
143
236
186
243
231
250
170
154
167
155
247
250
204
207
205
265
224
181
236
194
175
198
173
199
170
216
258
239
243
174
225
240
189
224
186
250
204
255
218
231
196
199
181
237
240
170
178
198
289
217
227
236
193
248
301
193
216
193
193
255
240
180
205
215
269
211
204
214
222
221
142
180
161
285
139
195
156
162
158
243
162
197
169
206
165
236
219
204
206
189
227
235
194
229
224
202
196
167
249
138
271
207
170
169
273
154
167
221
182
210
124
170
199
233
208
220
226
240
224
276
214
140
242
260
172
147
187
191
182
225
191
179
165
247
224
222
239
253
217
172
225
249
225
165
181
224
221
203
238
174
198
234
131
152
187
132
209
153
199
230
232
189
165
210
196
216
201
147
202
176
146
207
202
227
226
213
233
189
211
182
222
187
224
158
228
208
195
199
198
260
183
177
155
173
211
177
260
247
235
163
178
218
199
165
215
203
196
164
200
215
262
208
144
139
145
199
189
202
217
164
200
187
236
185
225
209
236
236
251
231
222
195
203
148
119
167
201
206
249
203
158
178
150
204
190
172
247
229
237
202
185
221
173
222
210
213
235
238
212
201
163
187
204
227
239
265
201
205
207
215
184
156
209
196
255
180
185
161
208
153
166
255
212
270
205
141
236
168
254
254
217
163
223
211
243
168
112
181
202
254
209
214
246
176
130
196
208
153
154
174
213
234
153
230
235
153
227
244
241
173
195
220
196
220
222
210
232
161
245
159
175
199
212
233
196
181
184
177
220
204
198
165
138
249
216
240
182
145
199
232
215
211
214
218
142
140
153
195
213
231
197
197
197
149
141
113
153
231
245
162
196
200
156
262
289
171
194
192
219
177
222
211
200
238
147
264
197
208
186
148
257
177
189
210
198
229
193
182
156
201
255
193
213
162
221
193
141
212
191
225
235
138
193
149
166
228
151
224
181
183
209
107
193
181
216
210
243
219
200
219
159
202
119
179
214
219
139
200
188
228
131
238
195
187
173
246
197
212
221
215
249
203
248
233
145
195
169
259
172
226
218
160
238
152
216
159
240
185
139
239
144
219
108
246
185
165
188
214
174
209
211
216
192
241
167
206
235
266
126
179
204
245
148
235
186
148
202
191
174
145
180
198
150
231
157
173
198
199
229
208
146
200
196
183
182
202
196
170
138
263
253
273
120
170
194
159
185
235
243
204
152
127
182
263
234
172
255
200
198
217
198
237
201
264
160
197
214
165
171
233
182
139
208
218
295
192
142
210
203
186
194
235
248
245
216
231
194
176
262
235
228
171
158
192
204
219
191
262
183
178
233
189
214
226
251
200
215
196
154
227
171
153
209
231
244
182
233
246
220
170
186
216
237
227
194
147
218
260
260
200
116
138
194
204
207
115
243
207
206
214
221
185
226
188
185
159
192
217
162
183
195
236
178
238
124
256
139
136
179
208
118
249
212
172
166
218
236
206
222
236
204
177
207
196
210
106
201
137
180
215
208
142
153
180
202
240
201
210
142
219
179
202
140
180
165
142
204
194
158
211
203
270
258
212
211
238
168
263
128
152
199
171
216
180
167
153
186
169
266
197
224
216
209
212
190
171
176
192
278
195
164
233
160
244
143
248
243
214
209
187
268
203
168
232
192
256
221
263
178
175
189
233
126
233
221
204
198
287
151
147
199
182
183
188
210
185
248
213
215
218
231
224
239
164
188
176
227
163
170
168
216
174
252
166
214
262
250
190
256
248
169
261
203
210
149
184
239
217
225
175
207
233
213
168
178
206
185
256
193
172
159
210
201
209
278
221
184
224
138
214
165
184
215
206
221
196
120
220
201
107
221
195
265
242
250
219
160
258
142
211
191
238
257
200
240
206
125
213
170
153
184
167
188
257
242
141
187
261
167
197
195
165
264
210
255
189
205
254
206
217
192
198
181
241
193
289
263
205
246
277
141
200
174
149
214
214
248
250
157
220
195
150
205
244
183
222
193
242
162
208
218
185
240
172
214
224
187
193
212
197
225
174
202
236
203
220
245
182
208
247
216
217
166
183
183
219
251
230
176
144
188
177
203
169
183
165
163
223
238
271
150
224
221
235
185
199
139
200
257
159
205
205
150
255
185
215
199
167
201
230
207
198
189
266
243
223
124
190
215
238
244
175
197
260
219
184
202
110
203
240
174
201
199
206
175
151
242
131
273
215
221
208
140
235
187
282
240
220
240
223
217
161
234
155
253
195
197
233
200
197
217
217
167
216
245
162
248
176
210
135
247
265
175
194
212
215
283
191
114
158
189
167
211
199
240
218
245
147
225
212
223
228
216
228
174
206
263
245
151
208
207
248
242
208
219
183
215
171
220
166
234
234
168
210
201
204
236
134
205
234
163
89
197
233
231
204
193
157
236
230
167
194
240
232
201
191
212
195
207
174
218
203
215
159
195
163
138
192
139
200
236
171
268
224
217
163
114
223
219
175
189
172
154
178
212
210
155
199
212
227
146
192
220
182
164
188
210
232
248
219
175
177
164
202
203
197
201
212
189
159
126
225
164
214
151
221
191
175
237
210
197
200
234
156
156
182
204
202
209
178
235
255
189
264
231
206
218
100
171
215
271
182
232
219
218
200
264
146
210
181
215
243
174
218
238
236
209
167
216
275
214
214
204
184
208
217
158
199
146
214
223
209
200
241
103
209
191
246
179
178
133
213
207
194
189
197
170
186
163
201
180
185
188
166
206
241
159
188
169
187
150
190
217
176
239
184
245
175
218
158
258
172
161
160
244
216
196
195
185
164
237
268
202
170
196
276
234
192
209
237
181
155
210
257
216
174
199
232
199
160
229
206
136
187
196
253
225
244
198
138
201
237
227
211
215
270
174
204
204
244
206
203
202
146
210
142
177
197
205
145
228
255
223
175
240
250
166
195
210
199
246
222
227
227
239
222
166
197
157
243
239
231
205
205
142
203
222
251
247
231
112
175
258
207
228
236
176
185
221
211
238
239
176
232
256
227
215
244
120
217
236
162
204
171
179
161
214
131
243
191
205
191
176
156
243
205
208
122
186
187
216
153
173
166
170
193
190
213
187
260
270
143
213
196
188
265
240
260
196
245
199
225
207
178
217
219
203
210
230
191
197
228
234
211
194
192
187
169
205
141
145
192
195
140
121
182
218
234
176
223
209
213
188
202
207
211
184
181
202
235
233
274
184
206
231
201
179
230
220
195
219
290
222
243
218
152
190
251
204
187
118
223
209
201
224
202
215
219
142
197
153
181
238
244
165
219
145
224
247
214
182
175
117
205
200
219
212
173
228
236
226
146
210
190
210
276
174
202
170
188
210
204
212
242
195
204
204
181
163
186
223
161
192
197
196
165
246
226
232
178
211
117
226
203
216
150
196
179
195
211
198
198
251
188
167
228
238
195
220
157
140
244
215
228
258
213
195
158
166
183
218
199
151
252
171
189
236
222
151
204
199
268
199
171
218
213
257
212
218
237
221
197
186
185
234
194
202
191
195
217
262
171
267
165
247
225
233
194
196
229
185
185
259
224
160
246
276
163
226
228
229
200
244
191
121
239
215
175
244
216
210
196
231
246
213
154
193
191
152
115
261
199
214
163
208
269
215
121
187
265
174
164
238
201
171
224
192
200
157
176
113
197
225
247
130
135
230
209
220
183
200
192
182
228
205
252
195
216
209
293
196
264
201
205
180
236
190
144
186
243
176
180
214
128
256
216
182
219
220
178
230
165
166
235
264
185
195
197
167
208
246
192
179
254
243
186
166
171
212
241
258
230
232
203
225
250
237
143
228
183
129
174
135
233
208
211
208
167
171
215
144
204
209
202
186
219
161
220
181
177
223
186
222
169
240
168
183
193
213
235
150
170
190
136
170
174
221
195
206
167
167
185
198
214
165
193
224
233
215
154
196
204
233
201
219
219
224
231
280
243
292
222
221
185
197
172
256
209
158
237
228
260
215
216
212
127
225
168
141
222
153
183
243
193
122
184
200
178
179
203
158
235
143
205
224
205
169
222
213
156
225
186
196
203
193
256
248
253
186
207
248
222
192
200
124
165
172
191
207
182
197
201
176
253
214
157
200
202
195
167
180
230
253
197
234
202
192
161
203
197
201
203
177
207
242
212
198
182
223
250
198
221
255
222
247
250
226
230
217
131
158
203
177
190
216
245
154
220
215
216
138
214
191
221
146
228
211
166
223
187
249
239
140
193
168
268
219
237
172
204
193
227
204
177
172
243
228
154
163
224
218
250
241
195
231
127
182
131
147
274
161
211
201
177
201
279
191
198
203
219
205
156
244
111
183
216
245
272
186
197
171
226
243
205
148
155
234
192
216
264
222
211
194
212
251
220
123
127
122
185
191
199
192
235
173
224
149
229
267
204
144
189
152
180
191
217
204
229
132
211
204
202
181
206
167
218
192
191
195
209
220
184
166
232
177
202
210
169
190
264
215
195
197
229
220
223
191
223
221
246
258
225
207
222
197
189
204
190
196
147
201
208
259
199
247
254
180
222
211
244
159
221
259
193
132
248
197
156
227
212
173
176
193
156
223
164
142
216
157
176
235
183
208
172
185
192
183
209
192
214
245
158
213
188
222
154
181
168
231
249
192
159
176
184
204
232
228
222
191
221
170
208
179
211
184
172
224
134
194
186
214
234
196
240
237
211
206
203
246
174
191
198
273
174
147
222
110
178
185
161
209
180
255
261
230
222
168
160
178
179
158
188
180
240
197
217
185
224
189
183
237
236
248
178
233
161
166
217
204
233
216
174
189
152
198
229
198
105
162
240
203
252
165
161
161
197
177
189
230
147
204
203
243
188
135
148
232
177
189
145
112
243
227
202
178
191
225
198
195
228
163
171
220
174
182
177
166
185
187
243
219
160
223
185
218
120
225
179
185
248
210
225
218
204
247
234
148
178
189
259
170
169
153
240
178
243
183
203
181
220
184
167
191
177
275
173
217
134
237
227
247
230
225
248
182
118
143
206
187
204
181
195
225
202
197
194
199
194
263
223
143
209
174
177
196
190
220
175
203
235
210
194
212
202
188
178
233
209
191
225
187
200
126
172
207
173
196
249
204
194
154
223
231
167
229
214
233
181
215
260
275
117
225
237
256
152
179
188
176
196
212
215
215
177
180
206
158
197
154
148
163
227
211
187
181
136
232
194
154
199
180
212
254
128
132
150
130
195
142
238
200
213
194
217
167
191
213
208
190
175
210
175
248
249
207
253
202
181
173
175
193
117
218
245
196
169
222
197
164
160
179
209
187
152
169
191
185
218
237
197
200
205
185
250
228
193
196
172
214
225
216
169
240
185
129
185
160
168
155
238
246
238
189
216
254
196
237
166
147
221
202
241
160
179
241
167
165
214
221
200
184
212
139
248
173
216
237
207
241
222
202
146
239
136
222
197
202
204
108
173
235
208
238
212
208
170
185
266
219
211
211
167
134
216
114
192
213
218
176
215
173
180
225
182
163
263
216
174
251
174
258
178
176
243
205
201
234
179
151
188
208
184
205
202
239
193
184
236
241
215
166
194
191
188
217
182
153
209
218
243
235
203
211
232
204
221
194
186
196
182
188
179
207
209
189
166
180
270
219
221
198
205
247
221
125
172
256
236
229
184
195
235
214
176
217
202
182
217
201
222
186
175
180
248
148
221
157
151
210
215
135
220
168
92
185
157
224
261
173
167
213
152
168
141
219
229
244
151
157
210
195
188
206
193
216
202
233
231
171
203
197
190
225
179
182
245
200
203
207
211
202
196
240
195
251
157
277
259
225
156
220
193
221
225
170
172
159
170
217
222
198
232
184
173
203
232
182
256
244
174
199
190
223
192
175
234
210
224
207
209
219
192
179
173
146
201
207
154
248
164
174
262
145
183
196
186
228
197
229
265
124
275
148
234
161
202
249
202
155
203
147
252
203
228
290
198
152
197
167
223
260
192
237
200
250
221
224
241
175
178
192
195
188
217
237
244
272
191
202
154
187
188
195
193
174
269
164
221
247
252
181
240
228
192
197
161
202
164
159
198
255
187
218
278
205
207
203
217
219
218
207
184
251
168
167
212
238
202
200
207
187
233
201
253
233
233
191
191
232
197
204
170
210
183
186
213
213
264
174
213
179
181
182
170
252
165
176
180
188
195
155
269
160
193
209
221
205
208
158
178
215
270
207
190
235
140
133
224
225
163
152
191
171
243
216
193
176
257
183
165
264
173
191
196
252
189
164
75
165
158
211
263
210
185
225
227
171
169
187
200
243
169
214
149
112
209
226
231
237
166
208
205
168
163
152
209
217
153
198
158
214
222
217
255
210
240
213
217
243
231
241
200
186
205
239
241
191
194
240
257
191
170
232
197
252
197
181
204
119
220
204
248
191
218
191
209
161
190
144
261
172
247
197
229
198
200
174
199
217
200
219
212
192
220
239
249
157
188
214
183
259
176
203
218
171
189
223
199
249
186
258
160
153
164
183
129
222
248
196
253
257
240
196
163
226
237
203
135
213
185
124
228
175
205
213
222
230
249
173
172
175
181
244
189
168
234
267
215
200
200
188
205
162
225
245
205
207
190
167
186
181
203
192
170
197
199
174
206
188
188
228
123
201
182
152
251
219
171
243
238
176
215
216
183
195
180
196
181
246
171
178
239
200
235
213
249
204
194
212
198
178
243
203
226
220
222
224
221
185
229
204
196
238
210
196
206
203
181
211
208
174
212
193
174
214
147
238
212
219
229
181
171
203
146
162
224
191
161
192
177
245
193
180
248
201
189
165
236
248
164
140
190
246
247
156
205
162
143
159
193
179
220
212
139
145
236
174
218
219
214
253
222
203
211
225
209
245
194
220
167
220
200
251
216
213
191
235
255
240
189
224
205
194
175
251
146
177
211
230
174
191
176
247
169
182
229
175
166
203
206
166
201
214
281
156
255
137
190
213
183
167
221
122
191
152
239
205
184
185
257
224
197
241
200
195
171
175
221
187
205
197
120
211
184
148
204
228
211
168
160
214
220
191
221
155
144
248
215
213
204
195
211
253
184
215
184
202
120
204
222
216
231
157
191
186
143
214
179
151
266
175
182
218
145
227
214
197
197
189
209
185
275
177
214
224
188
140
216
146
240
131
171
222
199
141
249
197
186
229
196
174
180
178
228
141
190
211
224
190
226
226
175
167
170
159
211
201
179
166
223
269
198
240
258
209
170
184
260
191
255
168
152
177
212
225
119
184
128
266
187
168
253
206
229
205
198
139
233
242
233
128
237
155
256
223
163
200
233
166
234
181
185
194
210
232
207
190
169
203
196
182
236
177
157
203
169
237
219
211
116
156
189
180
177
214
161
145
150
175
177
165
167
196
201
158
248
221
184
171
204
161
207
204
244
180
208
158
200
171
222
173
203
165
135
174
207
269
253
199
171
225
179
200
185
127
167
208
238
203
116
162
272
250
159
177
170
209
193
179
193
216
194
178
162
264
198
167
174
233
198
198
136
249
223
160
203
162
183
143
235
207
221
203
182
234
201
223
224
200
215
204
237
119
234
199
187
222
187
208
209
214
127
262
189
241
202
236
198
230
198
216
242
180
166
171
201
212
170
170
243
220
246
174
237
209
219
147
216
193
207
211
226
196
130
185
241
172
175
226
218
199
174
228
211
206
159
175
205
205
160
236
171
202
187
203
246
202
217
172
186
227
236
234
217
249
263
155
232
191
197
193
216
211
161
145
241
240
161
213
232
248
210
156
224
256
232
196
195
193
117
196
224
163
172
242
205
251
153
165
213
194
250
263
189
165
146
229
224
274
234
157
189
234
228
215
172
259
174
156
265
229
240
235
171
244
157
244
238
170
247
202
204
175
200
91
184
229
201
194
172
209
277
251
220
199
244
203
181
220
230
170
228
150
167
232
198
190
180
139
254
219
259
233
217
221
179
174
188
211
182
254
156
253
182
237
220
187
233
231
176
199
245
182
213
199
251
233
197
218
135
218
216
176
187
156
188
253
226
199
282
207
255
264
241
232
228
182
205
224
154
179
133
181
195
170
234
228
182
198
174
120
187
227
210
201
155
209
195
221
215
181
182
145
245
247
212
202
217
171
193
224
184
179
183
239
199
209
133
229
228
204
195
183
169
230
199
273
207
217
193
144
162
173
177
205
219
160
207
154
209
214
200
177
142
135
160
184
191
253
178
213
195
186
254
167
176
184
202
159
164
186
224
178
163
195
186
203
197
177
136
186
190
196
198
209
229
209
186
139
166
213
209
257
192
267
175
160
143
174
172
244
245
260
268
213
244
225
257
201
167
211
218
267
196
219
264
207
196
210
160
223
148
234
141
150
174
165
199
178
257
230
146
233
177
169
183
233
173
191
198
197
218
152
210
159
195
175
190
249
214
232
161
201
256
206
193
268
220
180
233
204
222
259
176
204
233
249
242
194
215
230
150
246
197
215
226
158
240
184
175
200
124
170
198
196
138
132
208
218
251
210
160
247
241
175
181
193
205
180
192
160
208
205
275
201
212
142
182
194
193
174
161
169
191
176
219
191
157
230
154
212
164
248
198
218
227
204
180
211
128
172
221
172
177
166
154
208
221
183
188
135
188
181
224
269
254
241
205
153
205
167
243
146
152
204
228
220
242
204
243
203
151
177
234
155
152
218
193
156
237
228
192
222
247
217
242
226
141
184
223
176
218
169
184
218
254
185
158
174
187
226
269
231
191
157
176
222
156
191
254
212
229
223
245
166
150
198
169
244
211
248
200
207
268
148
222
234
148
232
195
227
218
183
256
238
239
214
175
215
230
218
168
178
220
117
152
177
170
210
212
203
211
158
115
146
95
180
163
165
193
211
208
151
274
239
222
217
186
205
201
236
236
195
228
181
202
222
183
255
156
227
283
158
225
192
186
173
228
198
165
225
156
167
181
191
131
190
154
227
203
234
188
205
170
174
137
214
229
198
207
165
205
201
133
197
149
261
208
185
161
116
144
150
193
130
249
155
216
248
146
218
180
105
189
128
143
195
173
201
227
185
149
165
189
211
263
220
174
239
231
216
157
205
206
177
170
178
213
209
218
141
173
203
242
165
202
185
213
200
231
223
275
170
216
164
192
231
236
193
165
234
219
220
240
192
198
143
151
198
147
213
193
205
230
188
161
225
191
221
152
161
233
218
175
206
234
154
191
168
178
192
237
236
220
145
226
176
244
214
155
165
151
229
228
116
209
170
146
236
244
207
222
215
209
264
194
211
190
267
178
205
176
170
198
202
214
234
208
169
228
204
158
163
226
181
234
230
212
212
248
166
198
248
144
230
200
238
212
272
216
184
219
201
221
162
223
257
172
199
185
176
155
242
212
239
233
237
235
146
227
219
153
179
171
206
175
188
139
229
122
205
175
75
172
231
203
164
171
194
185
197
214
209
231
251
224
184
270
182
223
159
244
158
205
176
188
149
131
142
203
218
155
230
169
119
123
221
219
200
218
201
215
162
226
212
230
253
154
293
197
201
209
184
140
200
219
258
183
209
247
178
141
184
167
218
157
169
164
244
242
204
178
194
180
165
210
241
285
258
184
270
200
165
219
203
223
157
193
203
130
205
175
206
146
215
189
206
144
163
217
216
178
189
214
163
121
194
203
228
209
196
134
177
197
201
149
173
179
150
214
234
230
237
191
207
203
171
252
222
183
215
194
252
189
185
159
219
223
161
233
254
200
239
225
247
186
215
238
187
173
170
129
137
204
179
206
219
189
201
250
229
191
174
189
232
190
226
166
141
179
189
127
264
245
255
191
209
209
180
207
187
203
178
219
212
142
201
151
175
248
167
199
212
261
232
212
187
225
241
203
244
235
232
179
170
206
237
241
171
173
143
206
187
179
178
194
216
139
189
205
193
190
190
178
220
182
160
184
290
215
195
205
195
180
186
186
230
189
191
212
272
199
163
166
210
225
206
165
125
280
204
148
165
224
217
209
213
203
204
219
210
204
214
131
215
226
273
99
212
225
222
199
211
221
186
195
168
236
232
186
207
241
196
177
219
214
215
204
146
216
203
265
257
170
140
224
217
199
211
183
218
207
216
187
183
171
199
211
179
215
244
201
210
203
224
212
219
205
215
257
246
253
166
204
134
222
220
235
193
129
209
197
199
202
239
196
273
183
180
144
233
225
185
247
151
181
173
174
231
230
184
271
230
137
205
233
192
217
204
171
217
256
145
227
141
235
257
237
198
184
235
228
230
224
190
183
222
169
204
175
229
192
239
208
205
209
228
207
210
192
251
197
220
146
255
183
226
187
228
119
146
216
260
271
176
268
212
174
177
159
182
235
223
239
199
198
165
174
229
183
223
191
175
197
193
181
120
218
186
172
218
154
141
239
189
187
198
191
179
186
217
250
181
150
195
207
186
187
216
189
233
188
165
195
175
145
219
171
116
189
183
213
192
216
212
195
208
198
203
193
222
214
207
172
236
158
248
205
194
176
185
238
117
161
183
174
210
190
142
212
137
219
217
207
254
192
222
197
247
201
223
197
149
251
184
247
204
200
280
231
224
182
173
214
210
188
115
227
242
232
260
209
224
235
199
264
168
138
231
191
240
176
229
147
178
167
134
189
172
148
205
234
212
180
177
176
197
216
213
202
206
218
207
199
211
191
241
192
223
223
239
201
147
159
260
227
189
190
217
196
162
190
182
155
216
186
134
170
124
213
198
260
254
199
216
173
265
235
213
211
226
113
232
199
246
174
163
198
151
203
252
192
182
221
139
208
184
215
227
131
195
186
200
192
182
223
242
259
231
233
187
232
240
167
216
184
186
204
220
202
208
240
258
230
177
204
259
139
204
178
239
188
208
214
177
225
186
230
165
283
172
236
225
198
196
118
241
196
113
234
168
191
197
245
172
204
195
217
166
174
184
203
212
252
203
140
183
174
144
239
178
255
160
198
251
205
98
184
174
139
195
163
210
259
218
235
202
171
196
163
211
202
153
148
204
218
178
201
232
229
164
157
202
190
244
184
269
261
185
272
210
224
177
241
193
143
251
191
185
232
183
192
113
231
199
207
219
189
185
270
259
233
222
219
220
205
234
219
201
202
195
181
213
210
223
158
225
265
186
210
176
168
152
225
211
186
163
177
183
209
173
254
272
225
219
239
180
163
149
190
242
122
147
131
141
198
225
205
209
207
228
232
218
147
243
188
170
173
123
172
189
224
231
214
145
208
161
182
225
208
214
186
149
119
226
206
189
197
216
200
168
178
195
187
231
209
200
217
200
98
162
144
209
233
253
247
183
191
226
181
191
152
169
151
195
261
173
169
149
172
217
186
168
246
209
169
194
181
244
154
240
251
174
200
154
245
186
210
241
237
177
166
211
190
213
248
169
205
197
230
186
217
162
197
244
261
167
258
243
231
266
188
184
183
222
234
146
171
201
251
275
159
213
211
197
194
244
178
197
190
242
236
107
169
269
283
195
207
241
97
191
197
224
251
132
170
149
181
229
199
175
177
225
225
200
202
227
201
165
198
223
172
156
167
221
184
201
266
239
232
202
223
191
177
159
211
241
241
198
236
169
182
204
208
237
122
245
214
231
133
216
183
201
286
159
245
167
167
144
229
225
232
225
197
204
210
167
238
208
244
222
180
198
217
165
195
210
159
155
177
203
168
198
207
230
172
229
205
297
203
166
183
173
191
183
218
196
239
236
177
192
227
170
178
213
224
219
231
170
142
258
230
166
170
193
224
244
186
189
213
153
235
207
176
185
185
198
218
176
179
204
152
158
244
180
121
204
204
249
239
149
191
210
93
184
232
150
170
210
194
255
168
198
231
267
208
265
258
176
178
282
263
270
255
130
232
165
187
223
241
180
154
191
237
168
183
204
214
184
262
132
223
188
232
174
209
209
227
256
167
227
213
192
223
133
161
186
187
287
187
119
148
156
159
203
204
207
195
139
209
199
148
144
209
132
174
240
190
233
181
169
162
205
145
220
190
252
223
206
218
182
179
214
190
217
233
205
168
174
187
181
124
203
176
250
130
204
220
207
193
132
207
218
130
230
262
163
194
173
151
242
166
245
157
274
195
160
232
163
223
253
171
129
195
207
177
199
222
169
192
171
161
177
182
244
153
194
211
191
197
178
161
232
213
183
249
196
124
146
154
182
226
179
204
195
181
181
189
139
179
185
221
243
216
241
242
121
189
178
268
205
153
209
219
218
204
178
229
145
169
248
180
275
251
188
194
219
185
186
183
172
128
181
215
92
260
214
196
112
170
183
227
137
150
152
196
199
240
173
179
218
172
246
195
200
187
189
185
241
173
183
248
131
254
193
179
179
191
168
148
186
234
211
249
229
265
247
180
257
240
219
190
168
190
269
236
170
193
252
226
198
101
259
216
191
106
122
162
232
190
267
216
129
215
188
149
231
179
229
207
178
200
251
223
206
238
202
234
205
258
222
224
220
186
210
150
243
215
232
243
186
146
218
147
221
196
222
209
166
181
184
234
195
182
221
190
208
264
234
194
195
187
217
207
193
122
213
218
224
199
239
160
204
221
198
215
189
235
253
217
201
214
175
208
186
233
169
207
201
223
193
214
200
184
159
225
135
191
169
204
152
168
217
206
173
163
172
250
213
224
208
191
209
190
203
210
210
157
169
177
258
216
131
243
203
238
244
244
259
134
224
193
213
170
172
254
251
196
207
193
228
86
167
239
181
170
246
194
211
236
230
173
223
148
187
228
228
238
217
193
207
214
202
154
158
219
220
225
229
184
277
200
185
259
196
219
248
194
138
184
211
245
185
208
200
218
184
214
228
179
179
236
151
168
165
150
241
245
208
217
176
190
175
199
257
142
150
158
146
237
194
254
181
219
136
254
214
259
187
193
199
235
180
200
213
189
205
213
231
198
200
133
282
185
212
197
165
235
129
189
158
148
155
199
196
242
197
263
186
165
126
242
227
211
160
146
160
202
204
230
271
165
204
216
229
225
200
228
228
239
244
157
206
201
214
188
208
206
236
214
223
128
214
173
226
134
239
175
136
176
159
176
253
177
196
221
222
202
218
224
168
242
127
235
263
156
198
174
239
232
213
256
168
189
206
122
212
172
220
203
255
226
152
173
251
264
215
222
214
190
186
217
239
228
212
150
213
208
198
203
211
190
199
176
216
205
189
220
264
184
220
217
138
180
161
264
137
152
156
144
238
211
182
174
205
196
200
193
202
180
246
181
180
200
261
195
133
209
198
252
200
197
175
176
184
187
172
119
207
203
202
230
164
220
253
229
221
206
155
222
237
141
230
188
268
130
153
227
157
221
175
150
196
140
211
196
139
256
156
171
208
198
207
189
232
239
276
196
198
212
177
209
280
239
204
144
141
137
225
135
140
241
254
179
212
87
171
149
167
209
176
202
217
180
205
228
176
177
203
156
245
245
214
233
264
185
274
274
215
218
198
230
161
169
140
151
186
163
115
183
181
249
247
190
190
184
212
249
227
226
211
210
207
209
181
193
193
202
199
163
191
187
220
185
177
162
175
204
181
178
156
191
166
201
244
173
235
197
193
223
183
227
191
123
192
206
233
209
183
197
183
222
210
151
207
234
227
180
191
205
184
234
181
175
234
204
166
150
188
195
228
219
205
204
169
254
192
199
213
193
252
145
191
224
217
183
213
108
228
205
160
187
187
165
176
229
254
187
212
243
226
223
208
224
203
201
180
183
204
142
160
159
196
143
201
181
215
188
206
210
244
188
209
98
195
223
240
202
230
224
152
196
176
167
233
188
154
190
213
149
214
199
147
197
206
206
182
195
184
181
165
201
234
116
241
190
184
227
148
217
252
189
223
190
228
207
170
169
214
176
176
231
234
169
174
189
236
195
164
148
166
181
194
164
179
149
243
178
207
185
227
216
165
170
126
217
196
228
126
213
160
238
239
125
153
270
266
187
206
195
231
174
156
208
241
195
219
189
231
179
213
227
240
172
225
183
180
228
260
111
175
238
205
132
227
278
234
184
165
166
161
209
213
154
196
172
186
209
198
195
172
174
241
231
257
186
212
262
215
171
167
169
215
203
212
228
215
193
195
172
192
152
166
138
164
207
204
213
170
269
210
229
214
196
199
209
208
232
224
191
186
183
146
227
155
215
211
248
213
178
151
168
185
216
145
188
190
186
258
139
167
155
180
175
237
192
158
181
180
249
191
202
141
250
168
120
173
167
183
240
206
263
215
230
292
211
157
236
170
228
191
214
227
246
191
224
233
186
194
244
169
207
273
158
192
217
216
216
191
169
215
103
201
214
195
230
218
217
181
173
159
211
187
139
160
125
255
269
214
176
177
178
233
226
218
151
211
262
208
206
171
172
153
100
198
136
166
251
151
181
192
202
210
193
114
227
166
168
163
229
163
231
186
177
139
227
204
237
141
179
155
214
208
195
209
205
131
245
214
233
156
210
190
168
109
186
212
151
164
168
197
228
202
207
232
233
255
187
245
213
183
151
215
195
223
240
210
192
194
227
209
168
227
140
200
170
206
223
212
211
185
175
172
232
230
187
253
143
222
224
207
195
156
241
171
206
187
210
212
183
188
171
127
267
219
182
180
201
250
236
172
192
202
209
201
183
180
242
192
180
207
249
201
191
217
229
263
251
172
177
153
213
216
222
164
185
203
184
174
212
236
176
170
182
210
194
167
223
204
161
239
161
240
213
247
176
214
258
182
269
161
249
213
194
215
93
216
190
260
243
171
255
216
196
185
214
246
172
227
194
226
154
232
169
211
231
228
220
169
193
219
244
211
227
190
186
185
208
219
244
198
178
209
234
223
173
230
192
190
203
273
226
221
154
169
183
194
223
202
196
203
180
141
179
246
188
181
268
172
234
245
202
229
178
148
183
181
206
167
188
202
236
178
154
173
189
219
239
195
209
254
110
152
250
161
202
216
225
195
172
228
201
250
250
199
195
164
255
217
212
111
261
218
170
261
192
209
163
159
134
145
200
138
219
227
220
230
296
201
210
182
179
198
165
179
205
205
156
167
220
153
217
230
249
214
210
199
220
216
147
225
238
212
164
153
241
184
196
121
200
193
151
275
191
260
219
167
138
184
205
222
257
196
182
210
195
214
187
257
226
198
194
188
198
236
228
186
175
208
226
165
216
176
183
197
215
175
207
193
104
230
207
239
208
242
203
226
200
245
148
233
226
229
167
214
221
255
132
196
179
197
215
274
215
161
198
140
203
150
226
218
218
204
233
184
216
130
237
186
161
286
241
227
241
242
188
178
241
214
173
168
212
155
224
185
179
164
162
141
200
180
180
176
290
236
180
219
247
159
149
224
199
264
211
227
190
190
256
175
210
177
160
187
244
219
190
212
192
196
121
176
247
203
241
216
201
199
192
253
144
264
189
208
169
178
224
184
188
223
225
245
236
184
227
199
186
208
182
164
205
235
232
211
182
226
213
233
202
208
252
163
199
174
180
237
157
186
252
201
195
221
220
221
207
227
159
209
185
185
184
139
230
188
198
198
230
180
244
198
277
177
213
217
206
150
187
240
193
217
175
173
212
198
209
198
267
201
224
200
165
133
196
211
240
235
192
224
171
248
166
215
173
168
220
171
211
219
232
136
255
207
215
202
188
180
202
172
206
204
215
215
166
181
202
213
211
232
206
218
222
182
257
184
102
235
197
231
174
200
166
162
201
249
222
205
173
233
227
226
193
184
204
209
222
228
230
253
257
191
115
152
236
151
163
181
102
220
171
254
170
155
255
209
178
200
204
226
236
149
190
152
175
184
151
236
145
192
245
194
181
176
252
211
222
204
185
187
172
184
127
139
196
179
177
171
281
214
212
120
180
180
262
163
208
213
226
183
170
132
197
217
205
178
194
217
187
140
224
205
221
147
151
261
191
205
197
212
184
167
197
175
212
174
152
228
208
192
237
194
156
176
244
143
249
213
200
172
166
214
214
232
211
137
167
211
214
226
181
127
161
231
251
189
169
212
190
218
211
190
173
251
235
229
167
247
163
206
148
215
214
225
181
168
221
169
169
183
266
167
168
213
215
185
132
197
198
228
249
154
218
194
194
189
194
204
153
249
212
229
121
185
211
181
202
203
133
235
209
231
252
232
251
218
154
238
186
216
191
198
221
167
145
209
239
190
232
172
196
199
190
197
223
194
168
168
245
205
174
216
193
210
174
197
196
226
200
156
175
235
203
183
230
174
268
188
185
252
209
173
215
144
224
149
206
224
224
221
150
189
233
233
193
187
176
170
162
219
231
161
187
182
166
177
215
215
134
263
223
219
233
197
265
139
292
196
234
217
116
142
212
182
248
167
250
245
253
169
216
170
171
128
224
168
167
227
211
225
215
214
177
206
158
183
154
258
218
232
197
185
201
238
190
208
144
187
153
181
147
309
212
202
159
160
244
207
155
197
140
156
218
186
214
210
246
168
204
218
152
205
206
187
204
196
245
189
205
172
193
170
233
150
244
238
203
228
185
213
188
165
159
219
185
272
146
191
250
220
191
189
181
184
203
202
173
265
217
123
199
180
255
199
157
283
213
209
227
167
196
200
251
185
203
100
162
172
204
233
252
237
170
228
232
228
174
212
182
216
181
251
267
203
229
158
185
193
270
218
236
199
211
237
180
164
232
231
235
200
210
213
162
257
142
185
227
219
179
197
201
214
165
160
194
171
185
200
246
176
183
246
155
204
205
161
162
187
181
259
137
188
193
216
212
259
168
151
189
191
177
227
228
176
208
171
219
203
277
117
178
193
204
240
179
161
187
153
213
175
225
173
129
221
180
163
204
155
198
197
246
224
221
229
251
134
187
159
252
138
111
161
229
216
223
233
92
254
181
268
236
224
221
159
152
189
202
234
229
223
227
186
188
175
181
192
199
214
191
237
121
223
207
230
216
296
156
220
147
193
211
191
149
214
188
170
180
197
249
200
209
205
215
230
202
203
252
177
232
210
221
228
150
180
233
237
264
211
165
260
160
177
179
215
239
252
218
180
161
165
193
212
249
188
214
209
269
225
281
260
228
270
246
220
201
169
168
208
197
263
209
180
180
190
127
156
205
190
227
184
211
207
181
188
189
225
203
209
212
207
196
214
194
210
200
259
176
195
240
209
135
250
111
205
209
254
207
260
189
203
188
227
184
173
247
235
243
211
203
249
224
183
171
139
176
205
194
154
248
150
282
224
228
221
243
196
167
221
175
132
127
245
172
187
203
207
209
128
203
251
227
192
195
219
228
186
127
212
216
186
243
173
170
180
197
241
207
224
204
203
202
204
189
179
208
185
252
202
173
214
172
223
172
138
135
250
191
209
221
167
243
182
207
228
230
235
188
249
211
222
222
165
147
153
226
244
136
235
257
154
192
173
205
216
180
221
194
243
169
202
224
203
187
179
179
175
191
180
250
168
151
235
232
176
178
224
208
203
143
247
216
214
181
183
245
157
216
166
153
199
219
259
153
190
272
234
205
186
238
141
181
149
205
219
254
241
251
186
183
191
184
205
169
147
209
152
234
189
175
252
200
143
234
277
192
181
191
221
213
224
142
206
196
219
204
239
196
177
177
193
160
233
236
140
264
223
199
167
235
229
205
230
205
264
231
209
159
227
207
210
188
201
223
188
275
174
169
183
216
268
245
231
198
180
170
202
158
194
220
169
153
167
178
182
144
264
246
235
200
235
164
175
221
121
237
245
222
160
240
138
204
228
198
200
263
147
147
246
271
176
193
253
208
197
238
185
248
191
200
185
233
118
161
139
189
196
242
206
289
240
190
184
214
207
225
196
198
238
211
216
176
234
179
200
212
242
213
248
228
196
200
247
198
232
237
216
238
154
221
177
245
257
207
237
196
181
181
175
200
229
223
189
219
227
210
155
207
232
209
158
215
209
218
240
204
195
191
189
200
180
158
160
172
198
224
244
200
253
183
205
135
229
198
224
169
199
174
173
245
205
242
179
234
162
170
242
216
219
159
213
214
210
225
230
213
223
173
201
232
245
213
208
219
243
235
181
204
215
193
217
217
232
243
135
143
214
150
194
160
133
252
229
224
214
195
152
206
186
203
219
208
122
225
245
229
238
153
226
226
206
165
239
115
241
217
199
178
243
201
165
177
223
169
201
203
202
183
191
227
168
146
195
165
169
180
217
139
226
140
104
220
141
227
200
185
186
188
188
154
231
232
163
164
209
221
241
200
193
167
201
163
183
220
208
129
208
169
262
205
159
243
182
235
196
200
247
279
145
220
206
245
217
218
242
200
212
246
242
259
151
190
234
187
212
206
209
217
165
199
217
129
208
180
214
220
244
199
157
224
227
203
158
183
240
168
210
181
218
231
216
189
134
220
189
212
202
248
188
210
205
213
104
217
201
209
216
232
214
212
170
139
164
204
148
236
215
202
166
238
223
205
133
228
198
224
213
121
180
150
183
255
189
266
252
159
219
259
239
187
152
243
205
180
197
233
205
206
181
162
221
236
272
231
215
176
168
212
219
190
166
208
219
200
211
144
163
205
186
245
219
168
204
194
282
240
264
219
148
179
173
225
223
280
184
249
192
157
227
239
208
179
220
193
180
221
158
219
166
222
191
232
241
176
202
253
171
188
179
236
191
204
200
223
233
163
199
236
241
159
222
215
218
158
221
235
220
127
221
249
208
192
182
198
216
183
164
201
190
188
170
200
192
169
203
170
135
240
228
252
225
224
216
178
191
188
188
214
176
219
123
210
195
166
175
220
156
183
192
157
207
215
201
154
261
177
219
231
190
220
210
210
154
255
194
198
219
176
186
205
162
210
200
214
201
229
234
243
223
150
210
127
195
223
227
194
202
152
192
225
185
218
187
157
210
224
168
187
211
177
201
223
229
251
223
202
223
215
222
151
210
202
131
169
282
194
143
160
190
207
197
203
217
201
270
217
136
221
198
244
218
205
177
195
190
249
289
156
190
174
158
220
160
206
191
204
220
177
179
140
233
120
179
228
162
207
174
293
203
230
191
194
204
156
199
177
266
179
174
183
184
151
179
218
215
156
223
270
221
257
153
174
192
147
186
179
191
177
206
224
235
267
201
165
174
192
173
194
214
207
258
270
168
194
181
234
191
271
151
202
198
158
221
177
221
186
133
211
208
199
211
173
201
171
184
194
196
143
194
193
226
213
207
244
220
203
182
210
191
266
211
163
210
166
176
236
181
186
238
199
161
173
119
235
242
181
142
178
219
170
242
244
155
252
179
179
195
269
215
121
203
234
171
190
94
186
208
206
197
160
202
182
217
184
240
207
212
169
221
183
178
188
188
277
200
150
95
169
191
193
231
195
152
173
164
163
204
170
215
238
211
206
212
230
173
211
190
178
191
239
176
162
197
197
158
244
150
175
209
178
211
206
262
184
173
240
225
184
191
214
252
154
201
240
256
214
200
280
202
218
229
205
168
227
208
229
153
223
191
210
184
135
232
177
221
217
231
221
235
175
131
227
250
241
194
235
171
209
201
185
225
188
198
170
166
217
185
154
210
228
244
192
176
229
187
185
254
241
230
185
225
171
229
219
173
260
200
210
191
233
132
134
190
177
216
193
225
237
127
172
200
163
224
143
170
211
161
160
232
202
196
214
136
211
189
195
161
170
202
150
219
201
225
209
224
158
208
216
136
233
239
210
167
239
239
129
206
268
201
167
211
209
179
173
234
199
244
165
147
203
136
181
222
221
171
233
272
226
204
194
177
228
206
219
223
209
208
112
180
241
216
191
252
137
240
145
210
171
257
173
238
203
129
226
185
189
164
142
129
194
225
189
176
180
199
143
240
193
200
224
152
190
153
216
198
213
219
175
254
200
242
172
158
255
195
160
152
229
242
229
211
165
183
219
193
155
215
123
238
175
178
116
215
207
138
172
210
186
179
180
170
211
221
192
155
168
159
208
179
263
249
220
187
107
145
188
209
242
234
194
233
141
196
242
244
175
213
188
210
206
182
228
257
228
153
205
238
212
244
228
171
176
159
152
214
196
232
210
149
118
217
195
201
241
259
227
160
220
151
208
209
226
228
182
181
176
221
184
226
293
161
186
193
205
189
251
226
208
211
201
242
203
189
173
256
195
237
237
193
167
235
181
271
193
236
207
220
194
155
153
160
173
201
185
219
237
162
145
243
205
209
195
217
227
207
230
201
178
244
150
189
231
215
240
191
196
183
211
212
228
245
261
165
208
179
205
199
237
96
123
180
236
123
198
170
216
223
165
181
137
186
120
170
235
207
146
182
220
208
193
165
189
258
192
237
277
208
214
215
157
199
185
226
161
217
225
233
171
214
195
214
197
179
197
190
232
183
217
222
196
172
174
177
232
223
214
180
219
216
225
160
188
207
237
218
189
193
159
136
150
196
233
212
186
198
198
160
229
211
173
136
244
149
225
180
164
223
225
146
235
158
237
199
226
195
182
240
188
203
205
220
230
194
239
208
108
181
241
170
159
236
147
156
193
220
143
248
257
223
197
258
185
141
208
219
151
253
224
207
137
227
199
181
197
178
222
186
217
161
186
197
228
232
159
201
143
172
269
165
231
196
242
221
195
170
183
159
183
191
189
192
168
190
206
233
213
184
208
233
173
196
182
181
216
235
152
123
233
181
200
217
183
196
178
226
191
247
176
232
193
171
204
215
190
229
129
185
208
189
255
187
233
184
210
184
233
198
213
177
214
228
239
180
158
159
140
177
168
199
178
166
235
174
187
176
173
231
237
212
243
140
247
195
229
244
238
198
212
127
212
204
198
187
196
182
158
176
226
236
213
241
222
153
205
200
158
198
184
200
167
235
159
145
232
199
234
176
177
233
227
186
177
241
167
183
201
210
261
245
225
212
247
262
219
204
189
216
194
208
230
158
277
137
201
208
197
222
242
155
175
239
184
237
189
207
232
124
170
202
177
168
196
190
193
192
236
182
129
209
215
153
192
260
192
233
168
215
154
173
184
233
214
240
208
181
156
167
234
219
236
206
220
208
178
159
225
164
180
232
246
194
209
196
160
176
165
234
172
180
218
234
221
209
168
240
237
226
210
194
131
195
243
197
231
207
157
187
128
155
169
212
111
227
211
143
213
251
189
281
210
111
197
201
219
234
255
163
166
188
241
184
146
179
142
149
253
234
273
209
217
198
167
238
217
212
216
221
193
212
171
225
247
135
238
212
165
179
165
237
248
193
148
216
222
184
164
214
238
220
190
216
205
241
175
171
207
157
108
237
162
197
241
216
171
180
200
226
192
239
233
218
199
186
181
210
186
176
250
189
178
186
230
200
270
194
271
198
193
206
218
259
110
181
198
112
182
197
219
182
217
171
136
193
244
243
167
192
173
202
176
141
213
210
208
210
208
197
265
217
163
161
254
240
211
240
183
203
226
176
185
236
231
172
256
218
105
220
207
178
195
199
161
210
210
194
183
202
172
158
203
248
201
192
228
168
235
183
210
194
243
159
184
132
230
253
245
169
214
239
135
215
121
178
138
255
245
219
225
228
233
170
222
200
226
201
248
226
198
202
230
237
236
168
219
173
231
271
230
156
167
164
190
127
202
149
179
212
131
270
213
187
128
184
213
239
130
215
214
213
266
270
228
222
214
227
181
198
117
321
197
225
229
184
202
151
192
236
193
224
230
200
166
240
246
170
142
184
226
197
226
177
240
224
167
202
128
213
250
197
209
201
213
203
178
160
209
127
209
205
161
175
214
221
159
192
150
151
165
182
169
219
216
196
236
168
217
156
229
158
200
169
184
214
186
164
175
180
176
199
118
201
263
200
166
169
151
183
212
178
232
199
203
227
207
208
248
236
153
231
205
252
260
134
144
162
272
254
150
164
219
236
184
236
183
158
246
204
204
237
210
215
214
188
191
229
195
207
222
152
240
185
184
208
192
194
184
116
206
198
161
180
162
201
201
140
251
195
164
177
269
216
138
175
156
175
201
216
174
230
187
202
208
154
157
213
190
223
219
166
210
205
196
272
214
188
177
162
258
193
257
235
138
157
217
217
213
222
194
212
164
193
215
217
216
229
214
262
209
182
241
148
141
229
182
171
208
189
205
197
181
244
140
177
215
191
257
194
158
199
262
165
175
214
198
224
175
189
228
256
239
177
219
170
247
242
143
256
169
195
229
221
230
202
183
223
186
213
233
271
211
198
220
185
225
198
179
211
185
245
186
198
228
179
207
129
193
174
143
167
237
211
249
223
171
172
214
255
209
187
208
257
198
146
223
242
219
194
248
198
247
189
185
206
239
136
186
204
173
251
212
226
220
214
216
140
205
211
190
222
241
210
221
214
211
234
232
137
140
124
171
179
156
207
168
199
170
172
197
227
198
272
171
222
203
161
158
191
158
218
222
262
198
184
199
245
191
237
168
163
229
253
210
215
204
143
249
191
218
189
218
164
243
181
233
212
155
156
158
224
205
193
209
159
203
215
168
169
157
228
259
241
190
254
230
218
180
249
215
201
224
238
239
215
276
215
263
178
240
181
157
203
222
204
219
185
265
188
236
205
190
179
225
213
165
264
125
214
207
131
214
205
175
237
203
230
161
213
207
174
224
216
205
228
286
177
176
171
259
202
190
250
257
159
202
226
248
172
157
228
219
192
176
230
215
237
190
201
143
198
171
184
149
268
142
240
240
253
201
115
183
273
229
110
249
251
153
151
216
181
147
214
201
155
167
215
148
153
212
154
170
242
196
159
173
248
197
254
195
196
230
184
244
260
245
245
241
180
262
233
176
183
176
185
287
183
219
135
269
214
201
211
190
182
225
235
255
160
188
246
165
97
175
128
229
189
151
144
189
166
223
265
202
214
221
229
253
218
243
195
195
213
223
213
200
187
161
246
135
176
230
190
260
201
231
166
192
162
212
189
202
173
206
233
186
187
210
137
227
179
180
228
234
145
232
203
218
227
261
214
176
218
218
225
221
190
174
218
240
201
186
268
268
154
242
183
248
248
217
170
170
154
205
226
215
242
236
279
174
172
130
152
248
219
204
206
242
140
185
175
283
246
219
208
266
211
154
133
187
203
260
187
160
204
165
233
162
213
226
186
172
216
197
211
219
170
189
211
213
207
181
229
120
216
254
187
181
213
194
144
221
146
152
219
216
117
198
243
173
186
185
180
243
224
193
173
186
237
188
237
246
177
172
146
212
215
207
212
233
187
193
193
184
231
196
208
201
223
134
175
249
208
252
250
178
164
216
227
198
201
157
198
185
251
136
174
234
211
216
135
208
165
155
230
164
180
186
127
215
210
205
125
215
235
215
263
214
178
182
179
238
183
196
235
238
234
180
201
173
212
177
209
228
218
213
156
240
260
151
126
214
227
173
234
228
168
236
233
202
222
158
165
216
238
206
202
215
201
133
213
234
156
189
215
187
230
196
214
193
216
194
245
235
190
210
238
203
91
151
216
165
204
176
189
215
210
193
171
177
236
243
162
155
146
245
201
184
165
261
202
120
152
142
237
158
239
206
163
180
288
250
216
155
227
252
189
247
155
140
231
157
221
180
199
194
211
221
193
174
188
175
194
218
184
192
140
230
203
223
235
177
188
177
188
182
113
242
205
214
208
217
215
181
252
202
244
241
202
165
199
247
241
173
207
160
118
247
180
229
244
198
204
128
262
256
151
206
165
156
241
181
254
199
264
174
176
205
181
199
236
140
251
186
176
248
206
241
193
181
247
168
194
188
181
195
196
121
244
197
244
198
203
229
172
205
199
220
185
192
201
196
215
213
150
174
173
171
248
112
231
201
203
198
243
209
229
166
153
235
157
266
232
188
223
196
221
204
188
215
204
287
180
181
248
199
203
242
229
225
175
226
158
202
170
181
199
269
254
257
191
214
135
184
186
286
139
191
175
177
148
155
156
217
164
168
210
202
209
209
221
259
190
226
291
237
154
242
162
204
209
243
193
210
164
194
197
194
223
223
167
167
226
225
198
188
205
173
261
246
234
245
210
201
200
183
205
213
196
222
139
201
161
222
194
247
225
260
200
224
184
213
221
216
195
192
209
202
262
224
230
244
182
144
171
141
213
245
242
186
223
139
180
198
197
201
212
196
224
215
228
231
209
216
189
175
185
170
217
165
231
173
193
180
188
179
189
142
190
194
215
175
191
206
212
187
215
252
246
253
228
208
190
213
132
228
256
208
186
214
199
239
210
250
228
180
224
201
188
232
180
204
199
176
200
247
294
182
222
203
257
229
160
212
183
195
214
156
202
172
209
229
220
241
239
217
246
191
187
253
152
211
231
230
225
227
158
197
220
118
191
216
199
192
211
218
210
249
192
159
266
216
196
219
253
195
178
136
168
227
270
214
220
138
184
202
181
172
251
166
181
228
180
187
210
165
255
236
200
219
189
196
149
251
169
170
218
188
181
235
177
186
201
233
138
223
237
147
193
205
238
213
195
201
224
157
176
139
166
193
219
215
150
200
220
231
167
252
200
198
235
211
152
200
217
179
143
207
223
180
215
203
208
175
204
204
135
213
207
229
177
227
189
219
179
168
203
241
222
196
248
187
189
173
166
190
255
272
212
228
215
250
151
200
220
228
251
201
260
231
194
211
241
212
156
240
197
178
226
200
137
215
195
177
187
170
210
179
177
239
188
196
209
236
219
217
217
189
182
275
237
200
205
258
196
225
203
235
186
235
209
204
232
191
236
221
267
290
177
221
228
187
207
199
242
161
205
170
202
235
228
219
183
190
121
210
139
190
219
202
180
150
176
131
250
169
179
195
203
208
186
164
155
215
149
192
168
155
182
167
209
158
226
189
256
202
144
237
221
218
162
212
171
253
185
192
163
192
245
215
176
181
223
240
199
201
167
179
230
240
210
226
194
200
197
155
189
228
214
188
259
175
256
179
169
194
191
241
225
173
210
186
214
287
259
222
180
195
233
146
191
215
203
174
152
159
180
199
233
207
176
189
246
244
261
192
216
192
172
196
199
217
171
153
213
204
191
157
246
163
185
261
134
258
206
232
209
149
225
188
167
211
234
198
178
211
219
219
123
194
228
182
220
157
221
208
187
254
161
143
214
217
198
225
202
176
228
213
184
179
154
231
216
241
182
190
175
210
231
168
235
193
231
205
131
255
233
122
146
183
155
184
220
240
245
148
195
239
233
251
233
159
248
135
221
202
196
237
163
203
215
183
149
172
100
235
175
131
198
174
242
216
206
201
181
181
187
184
177
227
213
214
191
165
176
161
259
179
164
173
253
218
160
199
178
262
157
182
260
178
194
234
202
193
200
153
233
226
178
215
160
209
115
153
184
189
221
187
234
153
150
198
220
171
221
202
173
224
175
224
220
230
204
123
196
172
161
225
266
181
206
189
209
168
301
180
186
161
200
196
219
204
227
182
205
153
163
236
240
216
211
180
150
264
228
196
172
190
169
130
194
173
196
248
191
201
214
241
180
218
173
254
252
189
159
196
201
143
171
170
145
185
154
218
219
211
181
190
212
146
225
191
205
170
124
187
154
226
180
242
254
209
197
244
209
204
191
213
231
205
168
279
175
121
147
260
157
226
200
238
209
203
191
265
202
198
171
114
200
156
215
168
162
230
167
141
201
202
186
237
142
228
217
182
240
197
193
151
165
229
215
238
208
276
159
176
188
110
186
188
199
150
188
182
196
212
168
168
152
186
165
196
265
184
211
213
208
254
137
225
183
228
178
221
199
196
199
130
253
153
249
154
215
145
141
237
189
223
133
202
210
238
190
260
188
198
220
219
173
206
216
234
232
233
185
212
221
238
183
235
175
203
196
210
204
171
253
231
183
209
232
200
239
182
180
150
203
194
202
123
202
163
208
214
241
208
221
205
213
210
191
215
208
199
179
195
174
148
213
197
218
179
231
168
224
212
209
223
85
190
221
238
203
200
237
164
206
178
212
217
206
218
192
222
227
183
180
217
209
178
156
176
203
203
202
213
243
128
201
186
204
214
198
189
259
203
173
205
171
241
203
202
152
181
246
164
193
201
180
219
156
152
273
227
222
267
219
219
233
220
186
227
216
157
214
135
172
166
225
205
157
181
178
209
224
203
196
196
225
152
245
150
207
194
214
219
209
200
197
197
220
206
194
156
169
181
207
251
224
233
205
198
187
174
184
150
219
185
228
147
147
247
257
224
216
210
182
168
230
229
189
176
186
194
189
196
198
155
194
197
218
200
225
219
213
198
153
256
259
202
218
233
250
188
230
168
275
175
216
219
140
209
175
211
221
169
185
214
196
218
180
205
241
231
195
175
145
176
166
214
211
245
139
243
173
213
199
154
209
197
198
110
166
222
198
264
186
144
261
175
173
236
192
142
188
164
168
185
237
177
280
257
204
237
243
224
177
199
136
213
261
221
157
250
155
173
220
188
226
224
256
186
162
170
204
206
197
209
239
208
247
227
183
212
209
145
162
215
154
163
211
210
161
223
170
193
185
178
145
169
244
195
226
118
286
224
182
124
199
151
178
237
246
158
166
169
224
217
229
181
197
233
207
180
225
149
138
200
167
205
163
193
129
304
272
191
198
238
211
254
159
216
144
227
156
233
228
192
196
215
196
210
176
204
159
277
207
179
192
194
261
238
133
235
171
207
254
153
182
219
132
244
204
139
162
160
252
195
254
216
154
176
206
226
184
186
180
194
234
190
173
221
179
165
185
218
165
197
224
252
198
210
178
251
202
168
208
208
220
216
238
167
218
210
180
133
144
205
259
156
198
211
199
206
149
172
207
179
184
222
228
224
146
251
245
209
129
169
188
242
212
200
168
146
212
167
256
153
194
179
156
244
197
175
222
215
224
212
218
264
209
192
221
190
195
131
254
227
243
237
236
224
226
197
164
248
176
212
157
168
186
178
179
197
222
165
160
225
248
220
215
180
160
246
200
119
157
207
178
217
252
215
215
204
193
227
230
184
153
177
218
237
291
196
220
177
218
241
158
196
168
210
173
113
222
219
184
178
223
218
197
132
201
178
245
221
236
221
202
281
173
212
194
195
145
189
225
221
229
217
158
171
206
159
197
142
205
150
214
171
248
252
226
185
217
181
184
184
161
222
220
171
231
218
227
224
198
202
236
194
244
193
147
263
221
200
146
177
226
240
176
215
189
198
207
161
182
226
174
137
163
188
194
237
175
211
204
220
213
186
186
211
231
153
197
225
173
161
170
188
187
244
234
249
252
238
182
184
240
137
214
179
180
224
189
147
242
158
168
163
173
164
219
203
177
276
217
216
232
150
240
207
226
247
178
233
228
189
215
160
188
234
189
199
210
186
231
161
206
161
191
220
197
207
230
200
242
203
200
225
170
259
187
265
214
195
215
181
191
111
163
205
233
231
238
203
223
197
195
209
242
161
250
205
204
200
184
188
170
198
234
241
186
152
226
199
229
187
138
202
270
241
219
164
241
232
159
149
193
198
263
236
223
246
158
185
178
170
257
158
220
276
236
234
208
186
244
281
194
141
199
167
159
232
219
226
157
244
237
230
225
216
248
235
220
173
179
242
224
195
262
164
261
230
161
164
205
202
211
229
208
215
198
181
223
209
205
215
271
197
250
250
148
156
212
255
208
205
226
199
255
134
162
200
205
208
162
208
183
190
192
217
209
218
219
194
183
188
200
210
176
225
212
188
229
238
239
217
244
216
192
169
193
143
215
255
201
240
197
181
188
169
196
199
226
255
217
191
190
235
206
173
223
187
227
228
162
220
239
130
185
138
225
173
240
229
215
202
175
219
210
174
219
229
165
203
210
236
142
178
163
229
230
214
224
188
213
232
218
211
208
162
203
137
200
167
232
239
238
204
159
201
210
145
162
231
174
183
144
174
185
245
223
154
192
169
198
139
230
127
212
199
240
176
220
182
200
193
212
178
203
140
255
212
228
228
215
172
222
235
215
237
180
208
193
152
221
196
192
194
190
182
257
187
211
213
182
197
182
172
135
195
216
191
186
201
232
229
151
214
248
228
221
209
245
277
254
199
239
209
181
168
194
195
190
204
246
224
201
202
110
222
203
166
222
242
217
156
220
224
259
231
221
178
171
293
191
151
248
238
152
167
240
201
223
208
235
185
169
219
225
220
262
207
161
196
209
190
167
228
216
159
183
185
251
204
163
171
165
178
143
153
147
168
187
155
170
149
260
208
179
193
162
140
155
194
190
202
179
182
191
243
194
207
255
220
233
131
210
200
228
150
204
229
182
170
177
215
196
184
117
183
212
199
143
200
158
208
202
189
211
243
191
134
263
253
215
168
229
205
254
218
195
234
220
215
170
166
268
178
179
296
260
171
250
219
197
168
164
255
235
184
207
258
175
206
132
224
211
214
246
148
234
212
262
195
199
176
219
165
208
151
165
153
124
212
210
281
158
225
204
199
178
176
190
231
177
173
187
179
228
204
195
170
169
250
195
265
219
203
187
169
143
226
228
190
177
206
184
181
222
166
192
204
219
204
218
205
189
235
198
303
205
152
196
199
159
168
165
268
215
183
134
174
176
206
203
215
208
201
186
220
216
230
174
216
168
128
188
192
232
202
235
229
204
179
208
207
156
219
277
199
218
189
155
244
248
229
198
161
141
227
185
187
161
250
184
169
236
174
212
252
226
173
224
217
156
187
259
262
170
262
250
212
219
250
188
171
208
211
133
275
212
204
214
223
254
216
184
206
220
178
197
186
164
223
201
229
261
226
202
159
217
179
221
197
168
196
163
239
194
242
192
174
153
197
201
240
229
114
211
192
214
305
233
198
190
219
248
256
207
182
223
215
223
201
200
158
246
219
163
165
239
218
199
217
263
203
198
219
221
234
143
240
233
117
239
174
248
210
162
197
172
225
143
171
201
225
176
202
190
213
196
265
282
216
210
167
273
222
220
217
179
197
237
143
156
185
159
231
202
193
221
244
228
241
223
228
226
158
154
203
237
218
195
165
186
255
184
193
179
182
193
121
218
178
225
242
202
216
126
211
243
205
144
201
167
240
187
235
267
197
253
178
112
267
238
174
237
236
214
196
193
223
190
152
150
217
204
248
201
139
206
268
198
221
229
222
223
209
139
213
179
174
167
229
137
192
212
178
195
200
190
134
212
246
145
241
147
199
247
220
228
227
187
183
200
173
184
121
152
190
180
207
219
161
261
205
158
220
193
228
248
182
198
189
173
192
169
215
182
167
185
242
218
248
150
220
178
240
209
216
188
242
201
265
187
178
213
218
219
199
178
188
180
217
235
238
188
194
188
228
218
186
171
207
224
167
241
153
153
231
236
209
210
173
195
237
182
214
203
165
230
180
238
239
202
194
223
121
260
232
207
207
244
200
196
169
177
140
210
213
229
172
225
240
196
179
205
187
182
160
198
167
238
146
154
216
144
254
196
213
162
197
186
215
156
203
235
179
161
240
233
145
227
251
144
204
206
188
188
232
229
232
157
204
227
180
192
297
260
104
185
226
236
157
196
230
233
211
165
188
193
222
249
168
204
262
137
231
233
208
181
230
150
206
232
220
183
203
179
136
222
173
250
282
143
226
191
241
197
202
180
151
212
162
177
172
182
217
235
194
189
148
203
189
158
232
192
146
206
204
248
201
219
163
190
223
166
268
209
199
191
201
178
244
228
168
231
221
164
260
186
210
191
154
158
199
190
178
215
128
187
212
125
165
201
182
290
188
210
195
221
250
125
186
239
157
152
261
175
256
203
223
243
135
211
164
137
172
186
193
224
212
216
203
227
144
219
202
198
160
246
198
229
179
156
199
226
211
238
234
235
177
98
198
252
178
147
192
238
198
152
187
136
208
202
222
241
192
171
241
216
159
177
187
189
200
234
147
216
190
168
180
152
194
149
202
172
157
179
229
222
207
191
259
180
266
224
283
201
187
197
229
173
175
172
201
128
220
237
189
223
266
191
217
235
189
214
214
241
194
198
232
179
230
157
210
220
193
145
219
183
155
122
184
255
164
197
184
115
204
177
264
206
168
163
253
197
150
232
230
209
216
170
200
197
222
252
195
197
153
182
119
202
176
239
227
216
194
160
217
213
137
190
213
217
198
224
217
179
218
124
180
169
157
210
160
144
257
186
223
261
177
273
228
173
254
205
233
236
183
181
104
174
247
158
188
191
171
247
230
201
188
204
221
171
159
206
201
187
148
164
201
206
232
245
152
212
156
210
243
275
240
222
195
260
201
158
186
226
117
186
233
205
144
222
165
249
215
193
180
190
197
194
187
159
185
174
144
232
132
175
231
194
239
181
228
259
197
219
183
215
183
146
209
161
195
273
217
141
217
132
186
236
189
254
209
220
160
224
172
243
259
264
157
218
184
207
229
156
210
185
188
212
172
202
212
134
235
217
207
156
226
230
182
230
208
211
186
251
180
243
221
202
157
208
173
225
148
140
169
209
229
168
221
286
230
227
184
174
174
163
164
254
226
235
148
166
215
280
204
216
205
177
141
257
154
208
185
183
217
187
167
224
211
184
225
233
193
188
227
168
224
211
209
193
220
179
179
182
247
144
220
202
164
200
227
142
192
200
191
211
176
210
168
155
242
215
232
266
129
218
182
99
244
178
202
264
211
160
264
157
191
189
175
167
193
263
246
231
185
188
183
259
109
206
232
217
199
225
187
176
198
211
191
207
215
165
195
192
243
231
227
236
218
186
302
262
193
222
213
248
178
204
208
216
243
145
205
241
196
189
200
184
239
165
204
193
201
185
158
215
145
235
206
120
191
191
157
178
115
159
204
139
214
214
241
199
247
227
162
218
307
182
243
239
129
214
149
195
185
236
226
222
226
227
159
219
186
216
168
188
221
179
195
234
249
126
190
110
169
178
195
217
188
218
200
170
212
171
152
177
120
233
119
147
221
168
139
201
214
205
216
198
207
174
159
229
182
173
247
197
198
147
149
202
229
240
263
142
221
192
199
256
220
201
213
274
204
176
223
219
267
220
255
216
142
194
243
171
174
185
215
269
190
172
212
129
201
216
213
196
198
201
232
272
263
199
173
199
265
218
167
175
176
161
217
159
197
148
197
154
237
250
142
255
229
205
200
183
203
159
200
170
169
223
196
247
219
138
222
200
197
216
196
198
203
237
249
183
214
221
177
196
176
213
166
188
162
187
184
187
289
138
239
270
178
232
177
193
167
222
144
192
220
158
213
216
191
212
199
165
222
209
149
249
197
209
201
183
260
164
221
203
242
214
157
183
222
208
154
214
210
178
227
163
115
218
197
171
186
229
224
223
182
202
201
180
173
197
230
235
116
153
188
172
178
213
254
170
196
268
196
201
168
212
213
168
228
220
172
197
225
233
199
195
189
198
193
198
217
232
157
172
168
210
241
187
202
168
197
237
235
184
234
207
222
203
181
164
176
202
239
223
238
220
187
203
200
227
253
159
204
214
169
181
178
238
199
235
190
240
222
211
230
207
194
236
227
208
248
244
157
235
225
216
227
200
206
219
261
206
200
183
110
207
181
159
236
207
212
215
142
205
202
152
155
166
188
241
170
224
233
159
218
224
212
211
194
110
156
255
183
178
172
250
205
151
231
234
143
206
207
258
168
231
189
257
148
193
160
177
234
188
225
158
188
227
243
201
256
244
297
234
222
190
223
155
205
187
130
190
207
238
192
238
207
195
216
150
200
135
223
195
243
227
140
205
270
215
199
259
244
222
232
214
243
222
213
155
209
149
170
187
188
182
231
235
190
190
137
198
159
130
240
244
196
217
180
236
214
185
180
210
188
232
209
162
182
159
233
234
197
205
174
190
146
220
201
195
234
218
208
211
199
241
202
210
176
193
163
195
204
212
258
211
186
209
193
149
174
214
181
226
224
237
129
170
156
194
232
220
215
175
227
194
178
211
155
211
213
190
212
185
214
232
263
182
177
215
210
173
216
232
163
180
177
140
231
160
192
231
213
177
242
277
233
142
170
224
253
179
216
205
148
241
209
175
229
221
174
133
166
186
189
206
207
231
214
194
237
262
141
184
229
226
228
210
224
160
190
216
200
148
206
192
256
237
196
183
185
260
240
182
236
171
240
200
232
217
157
216
167
152
214
221
209
208
187
144
108
183
256
146
181
209
193
162
185
189
208
179
220
213
216
179
142
163
201
167
182
132
219
211
201
241
203
106
215
233
152
172
159
195
126
210
156
232
179
171
224
179
203
133
231
145
198
191
165
202
237
214
203
176
136
263
207
251
218
182
190
199
165
222
149
211
206
261
252
171
221
184
127
191
146
237
179
241
176
249
260
199
171
178
203
209
132
196
186
197
233
243
197
170
212
224
267
233
164
195
164
157
225
249
186
192
220
201
238
250
192
213
243
174
262
179
261
225
243
227
175
155
188
188
217
179
166
178
266
228
233
201
163
177
246
266
169
135
192
213
221
233
226
230
216
192
167
250
189
232
243
179
246
221
231
216
167
141
155
169
195
202
184
178
215
136
203
205
267
195
214
167
219
208
208
221
213
231
206
188
214
234
185
282
154
244
209
217
193
249
185
219
234
250
207
211
172
159
141
193
204
154
195
221
225
171
194
186
140
207
201
158
211
264
170
190
228
172
239
237
187
228
225
202
213
232
201
273
213
174
193
204
211
184
195
228
161
167
179
157
153
177
237
267
170
195
242
151
168
191
161
203
214
183
218
190
163
225
198
152
178
233
238
177
161
311
192
196
184
181
188
211
222
193
233
246
168
171
203
223
220
260
174
216
235
212
169
206
185
201
193
213
175
201
184
229
221
217
222
173
181
184
146
241
126
201
189
177
242
228
150
214
197
242
160
181
225
193
156
158
188
231
245
230
205
247
199
231
189
199
185
248
251
260
201
173
178
223
103
228
173
183
231
208
188
172
210
193
206
256
213
170
229
156
193
204
208
161
183
203
207
170
194
193
219
191
192
196
199
264
172
203
174
189
246
196
141
230
178
183
156
238
181
131
192
236
219
174
181
187
237
205
226
183
191
214
186
163
236
233
183
204
255
200
215
271
242
209
162
267
196
203
163
197
212
203
209
232
197
213
156
182
174
174
123
219
268
175
165
185
206
222
204
214
231
182
220
198
153
232
234
231
219
210
199
272
205
215
182
180
228
209
198
216
233
165
256
258
230
144
230
181
223
183
178
246
226
220
225
230
191
213
240
148
222
191
181
140
216
196
177
273
226
210
188
185
116
206
176
180
197
201
217
211
143
160
256
220
194
202
227
245
258
157
182
206
266
244
178
241
249
242
192
207
152
207
239
152
113
162
212
206
184
222
173
181
195
219
180
221
197
150
241
137
255
241
232
154
216
223
237
223
209
186
214
198
261
255
167
176
184
195
192
173
200
187
182
155
206
165
247
169
224
202
246
186
209
213
217
250
197
220
211
174
246
202
219
168
228
179
209
158
278
219
159
245
228
242
213
212
220
161
196
203
159
166
238
180
142
217
199
229
250
193
177
201
189
197
211
162
159
168
183
160
190
228
222
213
197
200
236
190
168
243
183
228
161
166
212
218
226
185
231
180
274
176
229
155
246
256
160
185
188
145
263
191
170
155
157
228
219
161
217
206
183
247
233
217
241
184
208
190
253
111
223
180
239
243
180
236
191
179
209
196
166
221
205
184
202
223
223
197
168
206
253
116
230
93
206
238
210
183
235
239
209
158
209
169
247
186
150
159
165
209
179
159
223
227
164
168
244
222
248
211
212
225
137
208
124
188
175
237
181
156
271
259
159
213
203
230
190
205
205
228
226
202
176
183
215
209
218
180
156
240
142
241
235
224
135
216
167
185
207
173
176
246
144
261
192
176
218
218
212
222
221
195
213
164
111
199
188
202
171
155
236
149
129
278
216
226
182
217
212
220
163
196
218
176
213
237
226
185
204
270
212
223
198
203
218
180
210
208
169
190
183
173
209
232
217
194
166
183
203
201
206
273
223
215
217
173
245
202
178
237
243
265
239
224
206
216
219
221
229
162
234
176
197
149
220
236
252
122
175
226
184
195
199
196
189
230
220
203
169
222
247
176
215
197
154
223
274
208
224
145
207
224
186
222
221
225
240
216
208
161
238
191
200
236
164
168
220
218
193
192
184
252
196
253
234
165
194
190
226
177
224
227
198
167
270
237
134
110
171
162
166
209
196
181
219
183
203
213
192
214
145
126
186
177
221
202
214
227
215
238
171
160
126
251
179
270
190
258
234
180
258
250
155
210
225
256
216
219
167
226
194
192
229
215
179
251
166
175
185
147
200
172
204
207
171
142
222
109
163
177
206
265
242
226
228
192
152
168
205
230
209
135
263
122
222
180
183
217
183
195
252
209
195
149
224
249
218
144
245
239
190
212
193
192
250
179
235
226
138
209
203
118
255
170
182
217
149
151
208
190
197
205
233
151
165
227
193
180
190
226
261
226
244
196
251
168
182
229
194
198
164
218
177
225
169
230
202
241
226
211
204
137
271
210
239
234
204
225
215
184
158
249
180
202
185
153
205
219
241
215
185
158
204
97
208
138
228
280
213
189
209
157
192
236
256
199
271
237
139
238
227
146
203
202
165
208
207
202
222
186
225
157
227
173
178
199
142
158
190
245
181
153
216
197
228
164
201
176
217
160
195
172
205
136
241
186
174
188
218
173
226
164
202
231
206
213
281
170
222
262
247
251
156
147
235
215
218
209
232
198
240
176
197
207
209
208
230
165
178
188
188
151
133
262
200
163
222
206
199
217
172
199
195
226
237
232
167
193
247
201
141
189
178
208
197
229
220
211
205
171
234
170
221
197
197
223
232
185
280
165
244
158
184
155
151
223
181
165
187
183
141
162
147
249
196
268
238
183
262
253
135
215
169
167
139
209
225
155
231
238
247
181
250
201
232
169
226
183
198
238
218
217
233
210
213
205
168
253
183
229
194
126
245
212
182
178
207
154
267
222
228
245
123
233
152
254
252
175
247
224
171
167
186
182
191
227
184
154
199
219
222
197
183
206
198
214
145
208
209
232
244
160
238
169
152
213
234
236
139
264
190
134
240
199
191
244
194
224
252
177
185
192
241
163
168
165
254
222
228
188
225
251
231
227
214
174
200
180
182
141
166
256
163
198
173
185
229
206
225
219
219
192
162
156
219
230
161
218
200
245
184
255
197
195
236
190
187
135
231
199
186
188
264
204
204
174
176
241
184
192
205
210
228
159
182
204
220
128
204
167
173
200
203
123
174
243
150
166
163
200
205
234
135
217
215
175
205
216
235
276
193
246
185
164
172
227
214
177
248
203
228
168
239
233
189
183
190
204
228
226
255
247
176
227
242
192
207
131
212
115
227
226
198
225
194
257
209
175
177
231
263
230
193
181
188
162
236
135
227
213
226
226
214
194
156
140
251
199
170
145
212
183
209
205
249
213
197
209
184
212
221
155
228
221
152
161
209
246
191
242
200
238
237
180
251
195
191
209
227
179
156
179
190
143
164
245
210
256
183
160
212
167
182
171
177
201
206
173
163
187
259
166
190
201
156
215
156
151
226
223
121
198
185
169
152
231
173
195
227
183
155
146
206
201
207
192
252
207
196
111
210
222
234
122
140
103
257
150
226
185
143
225
200
163
190
221
148
213
200
211
200
222
216
110
182
209
209
177
226
196
138
177
208
255
167
214
242
214
132
118
180
214
232
236
97
175
239
167
204
177
210
168
134
123
249
230
182
197
207
141
244
225
241
221
270
192
216
229
170
167
169
171
263
190
148
228
253
106
178
221
183
176
225
248
253
186
184
239
196
177
183
165
166
211
200
193
240
224
242
239
233
166
112
230
206
203
192
233
215
206
229
188
221
215
251
253
201
181
225
248
201
198
166
178
270
142
168
297
218
256
224
134
204
171
177
198
146
210
200
231
227
238
145
219
194
241
235
208
267
102
204
186
213
138
209
189
240
215
185
163
195
193
228
232
222
170
220
174
240
193
185
100
133
196
186
162
191
199
204
192
142
212
195
184
237
181
193
174
275
238
190
205
169
209
224
120
171
268
196
214
166
222
203
218
197
142
112
200
307
140
246
172
243
199
206
229
252
210
204
162
228
247
210
211
229
224
202
210
209
194
214
202
175
210
211
150
184
244
214
187
225
233
186
149
201
210
192
163
228
186
224
212
175
266
173
191
152
116
173
199
193
260
215
154
167
131
225
215
195
184
225
203
190
190
200
237
245
172
203
180
165
150
203
173
186
207
266
157
217
238
223
192
183
216
180
204
276
183
224
187
173
164
228
137
204
246
220
164
217
209
138
236
204
247
216
220
217
136
182
170
195
206
155
241
194
241
139
207
198
235
198
168
142
170
139
132
200
206
245
219
142
224
184
184
216
170
234
191
225
186
176
198
207
233
175
241
144
203
221
148
236
204
216
241
221
195
242
197
211
225
163
152
182
175
139
232
163
209
209
245
162
161
204
219
213
193
233
162
180
170
194
172
204
223
210
247
254
222
264
193
227
216
192
207
265
137
194
200
182
208
191
243
237
130
165
165
246
150
194
152
230
260
205
219
245
210
238
195
203
155
245
217
178
208
188
179
235
234
184
193
117
279
185
192
169
162
129
198
263
246
209
219
215
161
214
200
183
194
180
186
177
168
195
264
202
241
146
166
236
244
182
176
188
130
219
178
282
223
209
215
230
166
217
177
201
203
169
199
237
214
167
249
221
237
254
199
179
178
188
202
201
196
205
239
199
265
234
179
196
264
195
162
153
242
250
191
201
231
180
211
184
172
172
294
215
172
206
192
220
197
202
214
249
167
181
149
213
266
234
147
152
202
214
193
199
250
187
249
248
272
219
201
251
223
243
120
188
178
191
262
233
222
185
215
170
187
164
245
172
124
196
221
175
234
266
214
181
197
127
155
194
210
157
206
186
223
251
145
189
223
240
127
204
213
270
238
235
191
182
233
247
208
254
187
130
225
215
159
237
125
222
219
218
195
250
176
249
255
271
209
218
169
187
154
187
156
222
236
202
235
207
171
236
199
162
206
182
214
175
206
151
181
213
198
182
185
160
109
172
187
228
225
243
178
178
250
133
221
173
227
207
207
214
216
245
189
168
164
161
186
241
139
197
162
206
157
229
242
164
215
186
203
216
190
153
203
215
129
205
189
208
189
229
204
230
220
211
238
148
187
160
202
256
216
193
193
181
219
216
241
246
211
168
235
206
168
213
172
253
234
171
227
229
171
199
124
197
245
219
244
177
198
195
155
198
198
215
198
225
195
236
171
251
235
184
248
196
226
179
228
190
186
236
194
210
183
205
186
169
201
209
260
181
276
197
166
145
103
212
214
191
204
224
187
124
282
214
176
198
210
187
200
214
125
195
195
214
161
185
178
160
281
191
191
212
235
184
184
185
143
151
203
204
150
210
269
193
270
181
146
216
168
261
220
223
120
248
179
207
228
196
231
244
215
190
180
231
191
230
271
144
132
181
232
212
209
214
196
208
165
196
235
230
156
169
163
202
256
228
208
236
203
183
244
168
170
206
154
181
212
203
229
156
224
225
177
218
237
208
187
197
209
231
208
190
254
233
225
214
181
189
214
211
219
236
171
191
210
165
218
179
327
244
223
244
243
204
242
195
200
245
193
216
195
206
171
178
156
169
192
130
222
176
182
137
254
224
249
119
168
221
218
224
217
199
157
205
242
218
252
192
226
241
220
234
143
221
209
220
210
151
218
257
147
162
213
143
157
208
147
242
176
248
186
235
133
150
150
207
200
177
226
213
160
214
184
188
226
173
197
206
196
171
201
145
166
150
127
244
191
251
205
169
199
191
243
175
241
157
179
203
187
148
197
178
237
222
95
177
186
269
176
180
185
244
222
210
201
254
158
220
238
200
132
120
169
197
292
200
209
172
281
171
163
188
178
238
159
219
226
212
212
240
235
209
244
189
157
230
229
199
254
238
179
249
229
186
141
192
215
196
247
195
172
213
192
279
162
150
94
164
197
235
303
212
162
195
225
220
187
191
245
169
149
193
228
296
190
193
218
241
212
173
190
262
208
177
168
161
200
214
161
156
179
219
213
185
263
220
270
167
224
223
208
227
256
192
191
165
124
179
205
241
210
210
244
175
254
213
203
178
196
241
239
185
230
199
203
217
210
146
112
240
189
154
259
211
231
259
183
184
188
206
176
217
243
200
192
195
211
202
199
211
255
126
289
180
193
228
198
258
181
133
169
243
197
210
207
179
220
184
190
190
193
164
198
117
224
128
242
250
171
242
182
206
239
189
168
201
190
137
227
234
236
166
229
189
183
238
217
166
159
216
152
188
145
187
195
227
242
247
197
279
261
177
215
173
166
295
231
217
226
238
194
194
273
195
227
177
218
194
196
206
156
226
234
204
269
172
241
145
172
164
198
185
206
243
195
205
208
123
192
194
185
185
216
232
153
235
215
180
166
165
191
161
202
199
184
255
224
182
227
162
182
187
212
244
189
164
172
245
243
192
174
184
188
178
175
230
192
171
229
184
249
185
229
167
234
208
203
195
179
157
190
182
197
241
145
204
182
233
145
192
171
169
214
179
169
148
173
168
174
235
141
219
183
224
173
121
178
186
203
213
207
207
174
260
225
216
182
177
222
240
193
200
203
158
185
197
212
167
212
195
241
186
181
129
217
182
181
231
242
186
230
190
225
146
183
172
187
163
213
216
230
202
179
163
179
192
139
222
156
193
209
175
203
178
229
189
217
192
169
189
194
224
199
207
267
178
171
125
229
227
191
243
265
197
203
275
173
211
293
188
169
242
225
259
243
234
188
215
199
220
250
154
186
170
181
136
222
197
198
235
157
206
153
237
202
155
195
239
202
248
181
189
233
188
211
118
193
169
170
190
248
177
220
170
222
131
223
207
282
220
200
186
238
187
220
145
144
285
175
129
238
163
203
200
154
159
238
178
204
162
174
234
169
139
190
243
216
229
222
252
222
209
217
156
222
213
250
181
222
211
146
135
205
249
213
198
168
176
205
173
185
176
212
191
212
209
211
147
189
150
172
152
214
202
253
190
208
160
222
147
166
134
241
189
235
231
219
232
229
144
229
192
209
233
247
240
185
113
160
169
158
250
230
194
192
205
163
195
249
270
128
181
182
247
227
169
174
165
173
192
234
213
188
223
179
191
194
124
157
207
152
248
225
122
146
195
268
235
238
214
240
194
192
243
207
219
150
202
167
180
131
187
171
264
257
219
221
198
177
142
226
185
192
203
201
231
221
144
185
236
217
243
249
198
235
272
217
215
287
138
231
216
262
224
224
200
181
195
149
210
223
167
222
176
179
159
179
245
192
193
234
92
224
215
180
239
215
144
196
219
211
266
168
240
230
154
177
203
128
234
216
202
231
157
173
199
201
235
249
248
153
214
170
260
228
255
205
233
160
179
177
206
209
193
237
228
256
226
231
205
187
213
215
181
204
185
235
238
198
196
194
160
195
196
195
179
212
118
152
187
247
205
255
158
243
267
196
140
188
218
183
205
230
218
270
161
180
180
256
182
186
207
198
193
211
219
209
153
252
191
198
239
200
258
151
153
170
201
224
135
148
189
190
185
180
173
205
213
193
231
168
245
174
184
267
189
204
162
262
209
212
136
184
215
248
207
152
208
220
145
178
210
255
220
195
141
178
193
233
167
253
198
268
216
150
230
162
196
226
213
215
177
218
180
174
223
195
229
205
114
155
171
183
206
230
241
180
222
258
236
187
175
139
174
210
190
156
227
171
205
128
132
263
237
212
202
192
197
202
218
172
227
233
184
133
219
227
152
188
135
124
226
198
181
263
246
195
154
199
211
231
202
122
233
171
176
186
160
209
225
205
193
223
176
198
196
171
163
178
242
212
140
206
173
213
229
181
190
216
91
236
254
162
169
238
227
167
200
237
212
146
217
80
187
121
238
243
232
205
223
225
193
226
260
226
152
198
239
213
186
226
204
162
195
271
223
178
180
216
242
217
206
156
196
192
144
213
196
238
225
212
204
183
190
150
168
130
210
188
223
252
230
175
209
116
192
235
207
248
172
165
217
223
220
181
213
198
242
168
189
247
212
170
209
242
204
236
212
177
216
224
188
210
197
171
242
201
205
151
262
280
173
202
187
194
134
169
217
140
238
221
204
175
255
171
189
173
244
250
147
203
213
169
219
204
193
222
187
227
198
223
189
163
210
167
128
198
217
188
132
224
214
183
234
214
140
280
149
191
167
245
181
133
228
198
195
193
168
189
182
194
149
227
192
161
189
222
191
187
164
219
224
216
212
200
141
201
203
191
207
229
230
234
130
219
212
217
229
204
273
192
227
253
118
214
185
198
211
213
204
240
237
241
174
233
213
207
216
177
243
157
209
218
169
222
225
237
244
159
176
194
205
205
171
204
146
148
232
232
234
190
236
202
160
177
254
249
175
151
193
185
242
179
203
161
193
132
184
210
154
199
189
203
134
223
173
238
242
287
177
130
170
166
173
171
254
253
199
179
203
203
150
212
199
202
131
170
236
190
209
241
173
181
228
200
145
240
226
188
114
208
236
251
177
168
175
193
199
193
248
163
106
242
205
186
206
136
161
216
145
188
197
226
210
226
164
180
177
231
218
253
229
280
218
169
175
125
173
198
138
183
209
203
158
271
204
119
210
233
270
191
257
182
246
234
146
126
159
189
149
246
200
162
242
217
236
175
215
177
239
191
238
222
125
276
157
138
259
150
162
105
195
204
148
213
191
178
101
189
212
193
246
223
257
200
177
210
205
187
253
171
178
213
240
225
152
179
184
187
205
221
188
244
145
169
199
179
196
237
239
211
128
178
160
203
230
159
198
212
205
141
190
229
213
123
147
208
201
193
182
170
189
266
216
176
221
225
234
267
216
180
213
222
239
165
187
235
208
171
201
225
223
236
159
199
140
208
173
173
160
200
214
233
222
216
212
184
180
155
156
223
168
217
223
258
214
208
230
176
157
142
234
164
220
233
131
242
176
267
236
217
192
164
202
237
255
204
225
202
182
195
226
186
193
217
192
180
214
236
151
167
273
175
223
209
233
165
151
160
197
245
186
157
225
210
203
229
228
267
195
218
191
142
233
264
200
233
196
176
231
190
178
224
208
200
176
235
162
218
214
228
193
219
184
189
186
241
213
185
176
244
212
194
250
258
176
232
156
189
216
238
205
262
241
188
218
191
169
183
255
213
189
190
237
186
203
202
154
249
224
203
222
217
208
185
128
156
234
176
242
206
152
210
236
218
234
178
204
259
179
221
179
246
194
196
197
275
216
229
148
246
257
212
223
273
215
272
259
204
222
217
213
140
192
247
163
191
154
188
187
248
228
245
239
231
199
203
219
250
217
213
189
152
189
203
208
234
244
254
161
256
186
184
227
205
198
192
158
186
128
260
171
289
177
193
191
194
240
160
171
231
184
238
202
219
191
238
228
160
207
207
184
194
195
180
212
208
202
163
223
164
202
153
265
224
193
196
271
267
170
219
228
197
188
225
197
253
143
200
100
182
195
138
245
226
212
225
180
201
192
165
196
215
175
228
252
218
95
146
197
238
163
229
221
240
176
176
190
194
216
179
233
167
174
226
196
204
178
149
177
200
225
184
192
203
124
259
220
159
193
204
230
196
210
210
163
269
230
206
157
185
180
125
171
188
169
170
232
154
234
246
234
143
166
138
251
177
211
204
225
250
130
189
177
172
161
231
180
216
194
199
209
178
231
181
245
124
82
135
224
135
196
182
213
234
163
170
225
180
154
168
147
276
231
226
154
202
184
219
232
296
250
225
187
224
256
176
242
238
229
198
211
184
155
225
216
188
231
195
124
177
262
213
247
241
120
208
203
267
255
171
163
228
269
241
264
162
220
216
231
255
188
240
204
166
255
240
181
175
113
196
140
207
170
143
248
168
253
142
173
222
245
205
270
201
218
235
174
250
193
191
199
132
260
214
203
191
203
229
194
207
196
181
204
160
177
231
195
203
151
189
222
229
181
207
144
216
205
170
238
162
198
216
206
182
214
210
260
226
249
194
193
181
230
149
184
173
179
225
183
254
222
263
139
156
169
196
268
204
200
187
205
183
250
229
231
122
174
194
195
216
280
192
241
134
199
169
206
217
152
181
204
225
273
199
238
233
194
177
218
136
276
158
174
186
274
180
220
152
230
150
206
184
117
210
243
181
249
125
245
149
194
249
226
246
271
223
205
238
226
234
202
175
230
193
207
206
72
196
158
143
239
106
229
176
167
239
225
177
244
195
174
189
190
259
175
209
188
218
190
155
156
256
199
202
200
216
232
191
204
210
189
148
174
179
208
230
180
230
259
230
152
257
208
154
171
172
186
226
169
226
186
196
207
231
248
194
169
203
214
249
230
218
271
213
249
242
236
208
219
259
197
252
187
238
174
247
151
216
258
194
205
215
198
245
178
198
161
269
192
165
228
231
216
180
227
173
277
194
195
184
167
166
172
176
183
250
246
184
131
214
216
217
177
256
212
199
166
176
201
174
244
256
92
190
155
202
178
245
200
204
138
167
223
237
172
235
173
212
213
186
254
173
120
217
239
208
225
209
134
246
253
211
196
225
164
205
159
203
163
233
243
173
188
205
162
266
208
246
194
164
198
171
192
202
193
194
227
169
208
201
165
156
216
232
209
166
223
185
194
165
167
202
205
160
219
255
148
196
232
178
203
192
182
252
167
212
229
176
159
256
123
229
189
203
160
197
207
174
196
238
213
214
227
193
194
181
260
198
262
250
173
209
230
182
128
183
241
168
252
207
217
202
142
174
163
156
225
214
180
236
267
203
242
214
201
204
183
231
204
109
223
142
209
240
205
165
220
191
142
274
264
227
193
192
141
233
232
245
184
213
179
258
235
136
113
219
228
172
198
194
166
186
172
213
203
183
206
202
281
173
180
219
177
196
186
252
178
145
201
224
235
119
214
196
183
249
205
242
171
232
239
224
225
217
201
198
206
250
129
202
216
156
248
216
204
181
229
200
230
220
136
194
192
197
220
166
212
147
146
183
229
253
214
217
194
199
163
249
231
171
258
169
231
250
153
196
168
263
223
215
193
245
184
135
182
174
188
165
143
157
230
220
185
128
218
191
229
285
230
209
211
186
227
195
199
228
192
182
236
257
228
193
253
178
167
243
253
164
259
161
243
271
236
231
166
202
143
194
174
230
192
250
211
219
169
192
203
194
189
196
182
194
144
97
233
166
210
249
201
198
148
150
239
156
195
225
207
156
204
198
259
224
176
178
214
136
227
215
99
226
240
206
166
241
154
201
196
142
264
189
200
207
185
182
168
188
171
159
179
173
177
192
161
221
164
202
224
163
185
217
201
214
215
205
224
199
218
208
193
241
243
217
227
179
172
173
157
237
191
232
215
220
243
207
164
239
219
242
218
224
198
207
205
245
198
147
200
162
188
206
234
210
155
203
187
198
191
180
226
195
180
222
154
238
191
177
172
189
269
170
227
178
209
125
196
212
229
217
225
155
158
192
178
240
182
209
205
190
191
203
200
190
192
193
183
218
211
231
200
203
159
193
252
224
183
125
172
199
190
201
224
183
208
228
191
253
180
169
213
180
196
229
186
203
245
200
293
237
189
217
152
176
241
224
231
185
207
180
223
228
170
200
183
164
233
210
188
195
134
194
161
152
157
221
205
150
203
198
247
168
208
154
178
201
249
247
174
232
223
215
227
263
191
217
189
234
259
167
213
181
220
271
193
208
192
215
185
149
96
179
189
220
214
180
158
166
245
192
178
179
118
223
182
220
226
169
241
167
156
177
183
216
167
148
150
228
141
197
205
158
224
199
189
229
200
224
240
177
214
163
184
212
201
201
213
184
198
161
241
253
211
195
172
168
188
185
106
247
127
180
157
177
217
172
201
235
218
248
193
153
182
224
210
271
172
193
251
205
218
192
240
239
275
244
209
138
165
176
189
162
219
211
171
216
236
225
183
254
200
216
197
207
209
150
207
155
146
254
163
127
221
210
232
247
220
260
209
187
237
198
233
229
146
250
189
228
212
185
212
139
174
205
173
284
267
227
225
218
188
225
236
141
242
156
214
181
167
239
215
186
293
209
241
229
154
175
197
242
121
182
175
232
175
183
214
198
145
215
244
167
280
249
214
195
198
128
192
201
185
174
210
208
212
217
245
245
236
146
176
203
196
198
189
200
236
182
219
203
222
203
175
232
238
119
204
219
179
228
156
243
245
160
229
231
247
179
231
157
224
202
182
210
198
182
230
207
223
185
157
189
190
179
198
222
263
190
202
218
161
122
166
208
212
198
216
155
181
223
190
229
165
194
218
252
270
254
213
269
236
156
214
187
252
171
123
236
168
189
197
226
242
246
234
195
202
225
208
172
190
237
191
196
218
224
192
203
225
198
214
196
241
184
198
225
171
172
276
180
269
214
182
208
239
197
208
189
230
183
206
186
135
202
240
127
187
175
141
226
244
267
188
225
192
240
181
195
205
140
131
231
211
244
185
189
231
249
200
223
166
244
201
243
199
169
220
257
194
184
225
252
203
156
171
197
225
204
219
223
237
282
237
183
189
152
245
208
222
200
183
160
266
125
197
242
163
138
224
153
243
208
185
215
184
192
202
193
209
225
207
167
167
249
185
245
180
167
198
254
214
186
186
180
183
167
215
230
211
227
186
213
180
126
165
159
176
189
224
141
225
187
174
221
184
164
161
188
182
119
201
174
238
136
195
241
183
174
200
239
168
171
174
238
198
197
149
217
194
203
219
184
174
179
123
192
216
232
231
206
190
235
220
234
193
147
211
195
230
205
215
159
199
145
197
239
275
208
248
264
244
255
176
147
207
204
150
180
199
220
207
222
181
215
212
212
174
206
188
249
150
202
226
171
242
200
249
141
221
197
196
163
269
148
229
231
250
167
184
157
200
183
220
206
216
216
244
162
252
238
216
167
266
223
244
138
163
185
263
231
224
182
203
253
145
190
210
208
228
219
165
178
240
217
197
234
187
243
221
113
191
243
154
237
253
190
155
176
190
178
190
185
183
225
237
211
214
232
224
215
176
236
194
209
189
181
201
184
205
212
132
251
247
176
234
189
247
223
220
167
222
164
176
231
272
224
193
221
201
192
256
163
250
175
167
244
226
229
184
196
227
211
197
168
203
252
299
186
253
224
216
169
172
207
128
195
175
141
217
162
182
211
189
212
154
185
231
255
165
251
194
206
138
206
235
177
224
251
164
197
248
236
198
155
192
225
272
237
200
175
261
213
186
201
189
221
212
177
189
214
132
190
213
178
185
193
221
208
184
199
246
168
198
201
259
178
213
203
197
190
273
227
195
204
137
141
227
215
183
145
156
143
226
206
212
212
175
212
194
197
208
233
214
189
233
179
240
198
234
180
198
184
272
163
152
222
248
216
248
226
209
234
224
229
183
162
245
194
159
190
207
144
163
212
214
194
263
230
214
190
236
211
213
191
220
176
196
166
195
231
177
204
277
196
180
227
255
210
202
221
168
157
240
150
275
206
239
219
270
220
227
180
213
124
225
171
219
196
195
208
191
163
217
155
204
192
190
196
245
154
221
156
216
214
145
185
172
181
165
180
199
195
168
230
246
254
209
176
155
201
157
233
255
212
224
225
199
213
176
189
239
178
182
236
117
172
188
215
183
149
229
198
133
145
155
168
164
232
183
137
240
220
226
190
176
203
234
265
184
206
177
296
135
126
150
227
182
214
209
186
164
193
241
213
254
225
215
198
233
218
191
242
157
250
171
178
189
238
196
198
185
206
233
197
226
185
205
220
258
222
240
182
194
136
229
180
176
204
220
251
239
270
170
197
182
195
247
198
184
162
163
261
249
241
145
224
225
166
238
112
194
128
171
174
158
196
205
153
192
226
203
191
216
234
197
205
160
212
185
224
202
203
181
188
238
156
216
215
141
265
232
203
176
163
207
116
214
191
209
152
137
185
232
205
173
169
159
229
174
202
197
161
194
178
207
211
188
221
178
270
149
184
167
239
171
173
187
167
202
224
209
219
240
250
225
197
126
194
232
202
182
263
197
200
156
164
121
240
209
169
176
252
198
156
240
193
213
240
167
228
148
230
206
110
206
226
173
189
144
259
209
196
188
255
228
221
182
161
240
163
223
144
244
238
205
162
256
218
169
249
210
266
188
168
234
160
227
249
170
223
242
190
183
220
203
251
216
194
187
188
146
247
186
150
255
210
210
119
197
165
242
240
202
238
161
236
239
226
168
225
172
254
135
162
184
248
233
167
144
187
227
207
229
218
183
158
230
116
231
238
188
202
192
239
170
140
191
244
289
171
227
234
254
155
193
173
154
210
203
213
190
144
131
212
209
198
156
201
256
242
140
124
177
230
141
231
185
186
250
176
169
159
204
248
193
221
231
244
264
192
165
187
261
237
155
218
207
146
160
203
199
221
159
217
212
141
198
182
230
181
187
232
185
158
220
218
217
244
277
181
143
179
169
199
196
157
120
213
181
219
243
195
162
143
233
178
207
208
185
180
199
217
216
190
233
151
172
176
208
201
243
265
276
128
205
206
124
205
199
238
220
216
141
117
189
246
208
244
161
182
251
228
204
187
221
197
235
190
231
224
214
210
202
214
226
221
169
145
219
164
214
251
158
150
189
177
223
151
220
209
245
265
189
191
227
229
195
213
188
159
221
287
229
168
110
238
163
193
176
229
209
118
215
178
155
233
139
194
200
186
166
236
174
215
186
209
239
269
245
245
174
156
275
186
182
248
219
211
183
201
229
154
197
214
254
311
218
230
181
278
240
206
204
179
263
192
146
233
160
211
215
160
238
150
193
261
179
224
244
222
150
245
168
246
156
180
196
182
205
183
245
186
189
233
219
202
207
207
223
213
202
178
164
117
184
164
165
151
167
266
231
223
218
263
209
208
140
217
182
219
204
244
239
189
194
211
160
227
254
181
215
185
176
221
192
226
185
213
199
163
207
145
231
218
230
256
225
224
203
242
157
179
184
227
205
195
235
183
208
234
222
149
178
231
201
201
222
179
191
160
155
190
173
196
228
220
243
188
172
235
274
177
218
200
180
267
220
223
166
172
252
218
184
211
116
205
213
194
239
218
222
214
197
172
150
248
125
180
162
176
202
197
182
256
164
152
213
160
211
202
198
227
183
209
241
200
181
176
219
212
152
165
195
135
231
156
277
194
174
193
189
198
211
228
236
201
228
202
161
146
206
259
131
165
173
275
128
161
212
230
150
229
216
211
234
177
206
206
137
156
238
205
272
207
248
197
194
215
121
184
164
257
256
155
157
236
211
204
221
199
251
257
249
223
207
167
212
222
199
166
169
223
228
203
210
227
241
181
162
220
276
210
150
227
138
207
152
197
187
202
202
220
171
143
278
193
204
246
192
197
179
210
187
181
252
204
246
190
197
190
197
199
149
198
169
177
212
191
194
139
175
208
169
195
154
211
199
247
237
248
245
247
199
219
234
189
192
261
241
208
229
166
249
167
203
264
175
197
247
148
190
261
244
140
266
206
208
243
176
212
211
187
259
202
196
150
198
176
132
200
196
223
171
146
213
206
223
213
204
199
236
236
159
203
172
202
205
171
235
202
213
144
167
234
204
200
198
198
215
245
185
186
188
235
169
194
233
166
123
212
211
187
242
234
293
220
160
248
227
189
193
168
188
185
229
212
215
192
214
165
178
216
215
198
185
202
210
154
205
237
207
257
226
166
228
231
221
211
142
179
141
240
177
156
198
254
231
258
196
174
200
212
215
203
176
215
208
200
198
193
224
250
236
209
195
247
209
223
154
154
241
209
199
210
157
171
151
217
168
239
211
222
205
256
204
167
190
229
191
236
247
244
198
169
118
115
213
200
210
177
250
182
214
192
216
191
221
231
195
229
224
179
209
217
188
165
171
208
173
198
213
195
207
168
204
184
227
183
231
184
264
208
160
186
192
209
146
223
195
269
236
193
154
162
200
225
252
153
251
145
228
200
203
209
190
237
230
200
145
214
188
124
197
239
164
168
259
234
209
106
183
215
201
236
205
198
213
199
271
240
229
186
219
161
210
257
189
203
214
239
153
180
241
142
171
134
149
208
206
221
225
203
200
149
179
170
236
252
133
165
174
195
190
209
220
196
223
249
215
196
177
214
65
177
192
234
227
240
186
153
240
199
199
250
275
158
163
217
231
227
138
272
194
208
229
188
221
235
227
219
165
133
149
182
212
147
207
214
198
223
255
250
215
152
231
193
190
224
234
210
179
168
232
227
193
197
229
269
249
226
227
252
198
206
181
178
195
123
214
144
134
194
138
251
195
203
180
172
222
117
197
194
144
183
237
183
193
222
206
165
206
231
192
222
169
195
200
216
175
282
211
220
181
222
196
158
222
169
222
191
176
134
189
236
186
158
225
223
236
199
174
208
207
159
185
183
175
248
176
245
233
162
166
179
151
235
260
253
178
184
189
223
236
210
153
224
210
202
189
174
174
222
207
174
195
192
291
204
181
213
204
161
161
226
181
182
251
255
205
216
238
174
117
190
222
142
173
178
201
237
203
215
157
209
170
146
245
218
185
222
216
255
265
206
200
143
235
190
222
216
193
255
200
208
233
173
207
197
205
210
194
174
183
194
164
191
238
168
222
246
165
149
213
177
216
238
226
210
230
165
229
253
190
160
199
204
220
233
212
185
165
159
151
197
236
181
167
206
256
217
198
181
214
152
235
236
236
230
248
198
213
169
209
201
170
233
233
251
174
189
215
223
194
184
200
241
193
190
204
180
210
198
209
247
237
173
148
181
226
198
178
174
245
241
226
239
205
217
211
180
165
227
294
280
232
225
174
142
181
173
163
247
219
107
159
207
177
221
199
226
204
188
219
215
208
152
177
181
150
192
240
198
209
124
205
238
205
226
214
214
213
167
231
206
243
240
243
180
191
192
176
175
200
212
248
187
207
187
257
119
137
168
173
189
233
168
217
222
190
163
227
204
140
237
248
206
195
212
292
229
196
167
220
162
257
227
188
209
173
194
202
208
190
155
165
165
191
206
231
258
214
132
203
198
163
209
198
234
196
216
173
149
187
173
152
207
184
211
225
245
211
183
181
219
235
201
180
224
216
238
193
181
208
226
255
223
229
242
259
234
241
251
184
239
184
215
181
215
192
193
222
249
245
234
176
133
216
195
234
237
230
209
165
155
221
190
218
147
197
234
183
175
226
265
204
216
228
199
143
156
212
226
249
240
215
234
200
250
181
161
199
228
164
202
191
210
228
210
106
222
196
167
177
175
202
217
199
182
264
190
252
191
189
232
214
139
195
164
218
200
150
224
212
226
149
170
173
135
167
193
261
174
154
164
142
187
165
209
175
199
223
192
196
202
229
268
165
191
198
145
220
222
242
207
241
198
141
258
221
169
195
197
267
167
245
158
158
262
180
195
189
214
261
215
219
175
139
207
180
175
226
196
216
215
184
220
192
208
230
220
180
163
208
173
149
216
219
217
152
213
221
210
195
207
181
256
205
238
218
189
236
106
226
185
219
250
239
216
195
263
180
171
182
188
223
204
202
196
211
186
162
190
197
264
231
219
162
201
153
192
189
174
173
183
217
165
181
185
246
215
141
222
160
208
168
230
178
164
149
245
232
170
205
256
125
210
157
190
245
197
206
242
187
208
243
126
204
281
166
203
202
170
144
228
112
231
158
161
225
205
242
277
208
215
166
262
231
220
202
182
177
199
200
207
172
213
228
181
143
200
150
194
171
217
214
235
222
205
162
193
225
156
194
169
124
236
226
189
185
200
160
242
185
210
250
247
164
194
160
211
261
116
200
212
217
182
196
137
232
237
249
200
167
222
157
181
166
112
233
230
162
203
207
223
144
253
204
180
194
190
234
114
199
242
163
219
235
208
208
201
201
251
187
226
243
225
265
187
179
218
165
240
205
238
220
203
217
187
191
199
189
161
248
237
194
216
188
246
232
223
182
181
217
211
245
248
208
151
233
224
217
216
130
207
174
243
219
175
202
221
200
170
220
214
176
231
182
213
101
192
197
212
217
182
237
173
221
246
171
206
186
262
173
231
154
156
197
214
262
233
173
211
188
178
188
179
239
271
179
178
184
216
232
143
159
187
177
218
192
210
140
202
220
190
142
172
228
232
178
154
181
227
232
168
178
210
175
192
178
219
168
226
244
173
235
149
191
191
198
172
190
166
170
142
217
241
115
156
197
194
201
209
205
231
202
203
171
169
251
184
198
188
220
169
165
187
189
179
230
213
215
161
171
218
204
164
195
236
183
262
258
187
168
214
175
213
190
274
157
255
215
203
171
178
261
244
230
188
191
195
170
234
151
187
215
130
164
233
236
252
131
227
173
177
185
239
202
253
123
189
133
216
192
186
167
216
238
200
177
247
158
202
263
171
154
257
225
139
184
196
227
173
215
168
218
278
217
162
243
171
210
211
218
178
209
230
148
217
232
209
210
194
232
220
211
234
211
211
228
202
254
197
239
188
241
179
242
207
241
193
160
182
275
221
192
164
227
203
214
201
164
143
220
258
146
145
228
168
172
232
92
197
232
245
180
152
183
214
216
244
223
250
191
197
180
198
196
241
131
196
199
160
181
205
155
274
209
135
173
168
226
268
253
179
204
223
190
162
228
189
187
197
241
167
245
189
220
193
178
177
126
206
230
203
161
151
208
221
189
203
150
118
213
195
183
243
193
138
233
208
205
197
207
177
251
239
235
143
223
199
135
153
230
202
152
215
234
227
162
180
237
175
189
131
166
209
198
211
229
160
154
151
234
224
220
243
218
184
171
215
243
211
183
226
182
161
269
192
214
182
170
145
175
162
221
235
200
200
145
176
238
238
193
193
175
201
191
254
155
219
204
211
184
225
198
173
206
234
194
194
176
183
199
186
190
191
240
158
244
231
156
184
186
206
239
205
177
181
207
154
205
134
200
196
233
181
170
160
176
129
232
134
221
199
221
202
193
210
195
189
187
172
197
260
246
262
211
243
195
254
190
237
228
256
156
158
241
156
187
202
242
166
127
179
173
177
174
257
218
183
200
222
184
164
214
154
155
232
163
180
184
202
191
210
225
224
222
184
212
215
165
229
252
226
250
183
216
178
143
201
220
261
186
184
226
180
197
244
227
194
216
252
220
182
177
214
236
202
165
212
241
191
190
186
221
222
271
173
246
187
240
181
194
156
238
188
148
198
142
209
88
170
220
181
146
224
171
222
172
142
274
210
199
193
153
158
195
210
231
241
213
178
196
264
225
186
224
182
248
71
216
210
243
150
201
219
220
225
157
265
193
191
224
217
173
257
249
212
226
188
206
215
188
200
219
211
213
224
205
242
143
180
214
193
263
199
198
191
139
170
186
231
217
241
221
190
277
169
261
147
152
152
177
174
203
142
195
250
212
164
209
191
204
241
183
195
187
171
244
215
146
234
184
200
197
196
243
260
203
170
118
288
219
229
187
158
153
235
192
211
225
232
204
195
202
231
172
153
131
161
180
151
166
135
159
195
236
174
150
216
263
232
175
178
189
209
176
160
192
188
193
193
207
250
182
213
247
208
168
225
176
215
206
227
245
153
198
234
204
157
174
193
193
180
138
162
155
185
255
227
212
210
145
238
193
226
202
228
268
246
196
178
204
180
177
245
248
248
135
141
169
215
157
152
243
198
237
139
218
216
190
186
209
188
137
218
163
139
219
192
140
105
165
259
230
204
234
144
215
146
214
151
182
287
213
232
253
189
180
184
229
251
236
217
213
188
138
207
150
209
179
210
232
166
192
201
176
150
218
203
231
216
215
130
191
152
161
258
262
184
149
206
194
279
217
235
164
189
122
196
256
216
139
194
184
160
221
191
208
193
277
212
165
208
214
185
239
158
205
274
222
212
194
189
183
158
162
187
214
226
154
142
201
164
225
226
171
237
178
171
173
184
173
217
229
177
203
211
219
165
152
181
196
218
216
154
190
157
184
215
140
221
223
252
251
160
157
232
185
215
144
221
187
191
257
195
245
180
210
207
196
222
209
198
197
165
193
158
183
224
219
240
228
245
188
182
187
197
212
135
219
258
210
184
213
226
210
212
267
152
171
212
200
262
211
167
229
193
213
227
255
210
148
204
182
199
200
190
203
196
171
181
207
156
208
170
142
165
263
180
202
176
206
142
214
228
132
174
179
208
186
201
257
135
206
145
207
194
191
203
251
221
248
170
192
160
241
222
169
194
199
206
231
192
241
176
275
215
149
183
134
194
203
194
175
268
192
266
195
174
188
185
184
185
189
175
163
245
214
187
185
208
254
204
190
240
210
205
199
148
206
217
191
155
221
209
144
203
253
211
213
196
171
211
181
167
187
164
143
241
192
244
174
210
250
142
297
205
155
260
186
231
143
222
230
203
182
234
165
206
249
172
203
187
113
213
263
172
239
214
240
208
194
244
209
212
216
127
201
154
182
211
158
112
146
222
161
228
202
123
119
239
155
221
199
188
132
165
158
208
239
126
250
260
241
236
141
169
148
222
196
219
212
189
207
153
173
166
146
197
171
211
200
194
219
229
154
135
188
211
208
180
188
166
175
237
248
137
222
178
169
161
236
191
138
193
132
213
200
265
191
196
151
262
208
195
249
170
175
216
248
155
265
206
216
146
174
207
164
134
223
167
196
155
271
153
247
153
246
195
207
217
208
217
200
193
191
237
193
138
186
136
137
205
118
218
155
121
189
160
175
180
186
218
155
186
177
210
166
184
195
190
189
223
157
239
179
213
190
230
184
218
176
173
166
166
230
200
244
272
183
195
228
168
273
166
160
182
205
218
208
275
208
168
228
195
175
206
258
137
175
176
182
183
238
225
213
244
235
190
246
261
171
162
264
210
166
193
187
205
168
234
215
231
197
171
222
191
198
200
209
160
156
203
110
175
225
195
265
194
113
192
226
146
206
235
210
223
219
211
190
168
230
155
201
188
182
204
189
187
216
233
235
179
177
140
216
213
156
188
204
238
243
120
206
173
201
158
216
163
132
171
202
226
203
183
246
185
180
138
159
177
228
245
135
172
271
224
211
190
212
170
174
226
226
225
207
279
235
242
223
197
191
285
232
168
214
208
221
168
192
189
275
224
168
196
245
252
262
156
127
173
181
195
203
187
236
181
238
253
178
227
194
174
174
176
211
226
168
195
162
246
213
197
148
184
217
183
190
252
183
221
210
200
211
239
200
168
212
183
197
202
250
199
236
177
195
168
260
196
215
249
246
175
145
244
250
190
255
217
244
189
262
190
225
246
270
205
214
203
140
207
186
256
163
158
159
238
192
157
201
259
176
264
272
178
167
192
274
208
272
147
212
236
158
237
186
165
218
228
187
205
202
253
185
267
147
280
259
237
201
186
156
162
230
161
227
196
209
214
199
224
127
207
183
219
156
244
182
195
223
237
167
192
192
177
197
200
225
203
160
165
178
170
243
214
180
205
107
122
192
198
248
186
217
159
244
243
217
235
178
193
235
234
152
205
219
144
270
194
252
151
182
196
233
203
148
182
162
142
193
157
210
225
204
194
164
255
217
148
201
191
205
175
189
130
221
223
173
192
212
172
174
161
180
155
144
204
237
187
171
192
261
221
163
175
196
190
213
184
215
227
182
166
172
203
176
197
178
149
225
189
201
208
227
259
235
201
192
194
192
177
235
170
188
175
165
114
214
175
269
193
170
209
143
190
232
180
194
221
181
165
148
228
148
167
216
158
182
157
188
150
226
209
208
251
203
234
256
212
313
210
167
180
248
206
203
191
205
214
220
208
206
160
154
164
177
168
191
212
267
189
262
232
195
176
162
216
185
244
230
248
217
163
208
177
221
240
233
275
192
223
180
167
196
214
155
227
135
259
119
173
250
209
186
166
196
219
219
204
233
226
245
178
248
232
173
229
167
201
214
177
245
208
202
249
255
243
206
145
241
217
226
214
146
220
235
178
179
177
262
160
204
187
182
158
174
196
195
245
198
221
204
193
190
202
126
197
217
157
222
144
58
202
229
181
250
216
240
222
146
153
208
229
116
209
173
210
108
201
230
221
233
169
195
180
220
274
178
241
265
243
149
218
245
227
216
171
179
207
186
169
192
256
159
233
193
165
169
198
128
184
192
200
217
199
168
178
209
183
158
169
183
226
221
199
190
188
213
221
201
185
253
199
176
198
187
150
180
216
194
208
175
168
180
150
224
178
219
180
139
280
206
160
186
198
224
264
140
161
153
198
239
240
212
234
272
189
173
215
239
231
141
210
229
198
219
230
149
222
154
185
217
196
224
187
153
195
121
244
196
210
204
207
249
261
201
180
148
227
180
215
220
264
190
180
229
148
194
181
228
152
177
238
209
181
231
208
200
204
241
193
197
241
249
175
196
215
190
222
158
142
244
178
206
185
175
180
194
262
194
153
243
234
172
196
164
184
214
215
188
262
194
208
211
152
242
199
211
233
135
150
256
301
201
163
218
187
221
201
212
214
249
249
222
226
246
223
169
161
218
160
168
161
192
226
246
219
222
201
253
221
157
169
145
176
191
197
206
193
152
216
211
225
172
224
204
216
211
163
166
192
162
157
144
201
202
156
223
203
200
226
197
182
205
246
102
298
237
168
263
209
202
244
94
189
197
217
201
253
171
231
192
132
209
203
242
201
194
208
290
221
166
266
234
171
223
246
184
142
225
239
228
197
219
162
203
190
249
225
242
228
191
187
208
218
196
223
250
196
175
153
126
195
205
197
161
240
217
245
166
208
152
182
207
190
167
183
276
252
276
257
146
205
167
207
177
241
239
198
180
201
236
201
186
249
241
237
205
140
189
174
175
210
216
222
246
191
211
182
213
203
89
152
210
204
222
255
211
218
170
187
225
254
223
255
239
174
245
256
203
170
201
254
185
170
127
211
148
104
100
255
173
259
238
141
177
206
129
182
201
194
121
234
168
179
209
154
197
137
232
155
158
252
210
146
129
208
174
271
180
236
155
157
196
208
233
249
209
232
204
119
181
213
194
126
214
207
196
248
185
206
179
256
193
147
208
140
205
173
218
212
190
237
227
205
221
188
168
157
228
192
211
181
204
243
186
172
172
189
214
170
208
201
167
193
202
269
185
203
179
160
169
175
263
224
206
211
222
248
239
162
250
210
208
188
238
170
195
160
159
219
229
283
154
216
209
173
217
159
259
212
225
218
206
206
204
207
139
204
209
130
155
214
138
214
198
231
220
211
161
179
153
207
191
197
173
256
198
193
233
200
169
221
207
214
194
157
183
219
163
151
197
152
202
268
202
246
185
178
253
306
256
247
175
191
253
219
195
194
185
205
231
183
179
177
186
154
218
216
215
265
221
208
160
127
250
237
218
259
200
201
181
211
216
230
158
163
204
239
186
188
220
181
232
216
237
250
270
175
155
211
204
182
158
229
196
188
202
182
192
202
246
194
148
187
150
254
202
205
196
222
188
177
223
220
174
206
189
236
173
164
223
214
170
130
181
154
187
247
155
205
186
207
224
223
194
158
182
231
222
221
173
250
234
201
247
211
187
236
230
258
218
218
254
180
216
154
188
164
230
230
223
214
217
245
182
198
220
179
182
184
224
192
204
254
182
150
214
214
165
193
217
179
248
214
156
216
175
191
230
210
250
265
232
196
186
199
206
181
221
233
176
213
202
156
219
263
223
257
213
234
209
162
187
206
199
169
208
198
222
211
197
180
186
204
229
204
209
206
208
227
197
168
173
210
213
180
225
188
263
200
196
203
240
228
174
176
186
220
216
241
211
174
263
168
159
231
131
175
210
165
201
186
160
208
166
240
216
248
204
182
217
254
276
234
192
195
191
201
203
205
234
219
215
212
187
120
158
273
180
186
226
204
233
206
215
196
203
193
163
175
280
221
160
181
183
210
161
214
157
201
250
208
200
208
195
169
203
172
199
221
167
187
146
195
185
162
229
257
205
225
200
157
259
180
228
177
194
223
182
195
192
175
160
135
230
216
194
100
239
182
223
264
250
194
237
210
244
218
214
192
142
203
244
231
189
216
200
159
114
211
295
218
187
140
195
215
233
238
174
198
158
180
200
199
190
204
179
266
249
154
153
216
170
241
231
182
230
203
179
218
256
195
188
235
212
236
181
182
188
259
217
251
200
202
225
199
198
140
246
220
166
191
164
214
207
173
191
203
149
201
235
197
185
140
206
207
225
198
264
204
220
161
150
233
207
251
152
209
178
229
174
204
152
180
204
189
227
232
208
166
180
142
223
240
148
179
178
199
262
204
221
217
216
255
271
188
222
192
193
145
219
202
184
253
162
144
218
181
232
263
141
243
151
264
201
185
228
187
209
120
221
207
211
183
199
170
168
161
147
231
177
187
190
182
164
238
190
191
203
259
200
212
263
259
249
214
190
195
186
264
183
187
190
195
192
187
237
128
215
230
186
235
210
200
195
99
233
190
210
180
218
164
186
205
222
144
205
179
203
180
150
173
165
161
212
218
242
104
237
254
250
173
185
219
171
190
262
226
233
197
187
214
214
198
231
187
159
189
195
173
251
197
158
242
141
184
180
202
171
193
226
191
148
207
225
207
201
235
225
252
210
231
249
219
213
192
162
175
195
202
181
173
207
171
156
175
185
196
148
205
212
164
227
267
217
200
221
229
260
221
178
154
209
213
185
214
199
156
182
266
237
225
220
152
222
198
255
228
177
210
222
195
251
229
215
147
214
205
218
235
194
182
218
232
233
232
156
193
231
197
165
222
192
207
176
208
194
174
219
192
248
156
226
209
255
196
174
215
139
176
250
210
266
181
208
154
213
167
194
203
128
160
212
208
148
210
231
181
236
217
225
219
229
238
285
186
103
222
217
253
207
242
174
163
156
214
190
171
229
275
236
169
230
231
210
245
201
211
188
215
171
188
233
190
227
204
220
212
189
230
148
192
180
167
132
144
155
200
233
228
188
126
140
204
173
191
225
197
223
223
203
213
240
211
171
214
155
229
180
174
182
214
210
193
178
151
163
209
237
168
220
168
212
143
176
253
251
207
117
201
174
194
219
212
231
154
227
201
225
264
205
174
160
193
176
221
258
222
284
199
244
155
232
176
215
204
207
172
226
206
171
228
217
233
189
146
199
193
217
192
145
157
243
207
154
177
226
238
235
196
179
190
202
194
216
194
159
226
169
207
156
170
168
158
228
175
176
209
184
206
194
201
191
233
148
267
233
199
179
143
257
110
185
244
221
231
214
191
177
158
200
199
200
223
228
218
238
215
230
185
231
160
213
245
216
195
267
217
190
174
208
205
204
221
185
217
139
156
219
171
153
173
211
184
172
171
207
236
192
203
168
262
221
243
198
125
176
142
234
210
170
181
152
202
240
243
195
173
232
180
198
243
236
208
230
121
172
210
273
193
170
147
253
165
153
224
231
239
161
200
162
212
232
137
225
237
214
154
180
170
215
234
214
201
201
218
196
225
115
250
212
196
205
131
206
214
245
164
203
198
202
231
168
227
188
256
144
198
253
160
208
196
282
197
210
265
224
197
204
230
209
259
260
206
133
201
172
187
205
208
198
211
190
169
240
282
198
195
216
183
184
227
234
266
198
227
168
173
219
207
159
179
154
213
218
239
228
192
268
157
271
240
227
198
261
197
170
230
174
204
204
222
189
166
175
241
162
193
218
207
201
258
226
230
209
199
251
222
179
206
163
155
211
216
142
186
153
134
111
182
221
179
185
224
214
211
146
157
257
178
221
210
215
240
197
214
219
173
188
184
210
168
185
257
196
257
148
165
227
177
231
178
168
206
216
204
156
166
166
218
216
214
240
211
194
133
166
266
251
213
187
217
214
214
184
171
205
189
235
191
194
184
153
219
157
213
221
197
168
206
171
175
194
224
172
233
179
231
220
226
176
207
266
210
187
239
192
209
175
109
208
165
156
166
176
159
223
183
148
197
168
239
169
232
225
209
199
241
254
145
178
182
185
215
154
169
229
225
173
232
222
211
199
159
207
205
207
198
199
206
241
210
206
205
188
136
228
202
268
127
231
209
244
160
179
188
176
259
150
180
166
168
236
215
236
240
196
202
249
189
250
253
194
170
124
193
228
221
157
180
168
147
200
191
192
239
230
170
180
274
244
285
178
213
143
204
235
189
225
232
242
229
235
266
168
190
230
169
183
187
145
156
164
185
228
245
173
176
169
215
235
193
211
175
261
186
150
178
144
187
220
239
233
177
165
174
156
176
173
229
237
191
181
144
241
186
206
227
151
277
225
243
197
182
168
151
245
163
167
243
228
216
158
123
243
253
170
194
187
143
244
194
167
177
232
157
229
227
238
183
224
178
258
209
203
235
247
196
154
196
138
239
216
220
255
205
196
202
208
234
234
250
217
155
214
190
201
193
203
167
202
217
190
241
179
136
194
226
214
246
201
215
247
270
240
165
261
230
142
132
143
159
183
154
266
177
239
229
175
182
201
163
279
241
107
234
186
152
251
200
214
210
214
212
207
238
194
190
210
214
216
196
214
208
221
204
230
163
194
186
238
257
230
275
209
171
216
210
196
227
215
216
220
192
201
152
176
193
214
169
221
183
224
265
212
178
182
205
189
181
164
243
209
230
201
174
222
221
219
182
187
165
194
257
213
188
224
247
224
172
169
216
189
167
197
184
204
185
257
181
233
205
191
177
202
156
196
208
195
212
122
201
133
172
150
226
204
157
210
184
224
261
176
184
260
214
212
234
203
186
263
285
193
225
232
183
261
165
159
250
243
190
218
171
178
216
187
171
199
195
125
240
121
177
195
215
175
217
145
242
227
228
252
194
227
158
168
213
202
131
241
186
221
236
170
233
184
188
247
196
211
236
224
150
194
236
264
237
180
188
173
169
170
173
182
187
174
186
195
201
187
134
201
259
178
238
208
213
252
211
201
185
210
189
181
192
209
244
179
184
173
143
166
160
119
257
164
220
158
163
154
170
221
186
221
219
218
212
200
151
180
203
190
204
152
205
188
211
178
265
204
173
188
189
174
171
220
184
169
200
106
193
201
111
211
250
223
219
227
209
213
163
233
199
212
235
184
235
215
251
162
207
210
186
212
187
210
192
210
218
218
195
168
213
258
142
179
143
173
166
135
213
253
145
189
168
161
176
176
216
171
163
147
157
227
239
190
221
204
191
263
251
170
214
141
235
219
169
215
175
184
209
208
256
264
177
134
191
213
170
210
183
218
187
182
174
226
184
202
205
187
277
164
220
201
153
208
219
177
212
244
185
206
210
277
154
182
226
235
154
194
210
232
179
244
222
144
224
198
230
196
185
189
211
225
199
253
186
214
140
238
218
194
177
165
130
243
205
175
206
202
217
211
226
238
155
265
183
284
253
259
225
233
279
203
206
184
228
233
183
129
255
182
192
175
231
222
200
180
141
200
229
168
179
146
180
250
198
156
156
152
203
194
190
180
182
215
201
206
226
225
226
184
214
158
232
160
207
172
231
218
274
217
156
168
148
191
182
179
180
287
242
243
253
178
193
189
194
169
186
181
205
250
187
193
206
210
177
171
169
215
231
218
159
223
309
228
198
245
220
197
217
183
194
244
222
198
161
168
239
188
248
218
213
206
156
204
217
185
194
228
204
181
204
275
185
226
194
169
157
193
207
228
175
267
160
254
235
229
234
198
200
229
224
141
219
211
208
154
207
155
180
209
134
188
234
156
189
202
215
215
188
254
223
254
234
174
192
198
209
176
206
251
196
247
176
182
233
196
197
159
200
220
163
192
174
168
230
166
199
155
174
206
209
203
201
233
102
227
226
207
172
180
272
201
253
198
158
170
202
223
143
174
194
131
202
200
215
203
201
143
244
181
233
218
206
227
208
262
156
249
236
172
170
153
182
238
228
181
222
177
223
220
237
239
186
181
186
120
189
181
217
144
194
225
242
190
167
188
205
158
203
229
136
173
238
218
221
189
201
159
224
209
183
168
222
240
182
245
203
231
226
169
197
176
136
226
202
254
275
194
232
234
204
200
231
185
166
269
246
194
143
133
156
232
195
227
162
217
158
212
229
253
193
202
238
228
126
215
168
221
235
163
224
192
185
191
191
186
240
213
188
235
148
135
187
219
183
217
227
221
227
223
190
220
144
266
194
136
125
252
214
213
196
221
221
151
192
186
189
181
173
145
218
143
230
210
215
182
202
241
241
141
184
243
146
200
201
150
208
164
235
206
195
163
181
241
248
230
184
144
140
203
209
179
170
209
186
250
186
259
225
172
235
200
271
232
133
218
169
226
204
259
205
205
213
162
209
160
225
175
226
190
189
215
163
232
196
217
194
215
208
234
181
206
236
196
228
175
257
235
215
176
239
218
143
162
242
158
208
224
207
242
186
224
221
244
234
253
164
237
180
174
198
219
189
214
191
180
199
174
229
181
218
266
157
165
93
199
198
217
215
152
274
216
238
190
162
236
153
169
218
142
181
193
199
145
253
263
221
168
234
153
154
221
223
228
195
165
181
223
206
189
187
187
218
211
276
257
195
145
229
196
194
252
214
250
99
221
246
172
177
148
180
246
209
193
209
230
235
158
188
166
135
155
198
205
215
160
238
168
251
208
249
213
274
244
228
266
203
185
144
221
206
256
153
262
237
150
209
222
203
187
221
188
302
260
162
140
212
199
186
154
154
174
259
216
192
201
125
203
187
228
159
175
214
224
213
202
158
202
238
205
236
223
186
109
175
158
230
222
203
208
154
210
230
216
232
227
230
237
206
249
162
177
129
209
151
202
198
206
199
255
240
193
213
163
245
145
220
163
264
174
241
157
188
249
218
206
245
281
207
183
202
244
190
269
216
172
209
240
234
216
146
206
149
213
231
291
222
223
168
207
224
153
233
155
238
216
162
229
172
215
193
256
178
232
160
176
202
224
267
181
254
219
226
141
210
166
217
236
248
209
202
150
162
204
243
199
163
185
157
159
210
209
173
245
252
186
160
195
215
191
175
247
207
206
194
176
199
258
166
198
228
221
108
255
234
213
233
132
185
198
212
185
165
213
234
151
170
174
190
219
228
161
144
246
158
203
209
265
191
179
164
163
236
162
215
257
151
143
242
182
183
208
217
216
236
247
189
277
190
182
228
195
156
263
159
204
191
189
145
227
204
219
205
207
196
216
197
198
269
181
207
231
179
219
217
144
154
226
127
240
153
250
176
221
192
197
152
183
234
240
145
145
226
236
160
173
218
212
233
184
192
245
168
206
244
179
180
159
220
153
165
191
224
132
189
192
173
221
235
169
183
235
224
201
186
182
186
260
152
183
227
236
209
201
191
214
225
244
238
261
245
152
255
240
178
106
176
213
193
180
219
193
222
236
182
220
200
247
243
203
191
210
147
171
196
250
197
193
194
218
149
194
185
183
216
263
263
219
224
203
193
286
195
196
166
192
185
221
218
183
218
262
220
223
263
161
229
223
203
198
189
191
225
168
221
175
190
192
168
251
220
191
227
199
154
203
216
178
199
174
187
200
219
208
173
172
153
249
261
184
146
131
235
176
215
152
184
199
163
243
122
192
190
137
199
212
167
209
194
302
197
227
108
181
167
258
174
177
160
215
224
168
143
178
200
193
162
181
169
184
208
164
190
271
219
232
225
203
228
191
260
155
156
179
239
168
230
174
204
169
201
250
169
248
177
241
248
129
235
171
237
197
224
220
233
192
186
201
189
233
176
183
140
227
176
222
168
200
194
235
212
189
149
205
234
197
170
239
176
189
152
175
221
198
196
178
213
184
183
175
128
193
206
198
263
211
187
175
238
196
229
237
141
149
208
249
180
223
239
232
222
169
201
221
226
181
209
171
188
222
256
241
182
162
235
180
174
245
139
172
230
169
180
221
219
156
227
220
158
210
225
160
152
183
216
210
164
174
193
192
210
204
158
233
223
190
257
159
262
168
241
224
200
209
241
140
263
208
190
230
238
176
182
210
240
213
226
190
217
230
216
196
195
159
194
199
182
242
264
153
203
151
219
146
184
227
219
157
223
253
198
174
237
229
218
209
231
152
219
209
162
201
218
113
261
239
177
262
218
183
200
236
254
224
237
231
188
219
218
222
197
223
238
174
202
191
134
150
164
163
209
250
231
138
256
209
252
227
160
209
227
182
188
159
114
135
242
214
218
131
182
219
249
159
173
223
190
222
168
219
147
202
237
222
226
199
221
232
240
223
216
206
192
146
200
184
202
181
213
198
240
225
135
181
221
243
243
221
202
231
208
275
175
275
228
116
205
258
180
154
274
192
188
191
178
207
212
187
204
151
114
214
216
223
177
190
148
217
211
192
177
233
236
248
228
241
169
163
258
169
210
154
155
198
188
149
206
174
187
151
185
187
171
175
186
176
235
172
239
180
166
237
246
208
198
197
242
128
173
250
189
298
226
195
241
201
202
195
242
162
224
160
177
226
260
209
138
164
195
202
188
199
238
122
180
167
214
211
237
217
186
163
225
217
226
251
150
213
203
163
216
150
229
140
194
175
230
169
248
201
150
212
236
187
238
186
163
193
270
216
196
224
174
215
220
143
165
162
192
84
88
219
189
251
192
126
153
201
254
187
176
183
147
254
242
184
258
201
230
145
205
198
152
227
173
173
171
212
263
182
247
165
265
143
179
191
181
187
141
218
193
186
248
224
184
228
184
166
218
186
169
220
229
180
178
214
173
156
230
235
151
189
233
154
163
157
200
192
195
226
170
100
174
252
188
181
187
217
246
198
196
171
212
219
225
221
173
223
155
249
116
204
239
149
173
197
245
266
170
166
120
205
241
198
128
281
289
182
247
272
194
191
182
262
234
168
111
230
187
198
216
199
141
168
200
149
249
220
195
221
253
224
123
117
181
196
200
187
149
171
177
268
194
192
250
204
222
164
201
243
177
170
199
222
231
192
157
200
142
210
178
241
230
181
205
226
202
172
120
197
171
229
214
258
211
219
187
209
220
192
199
220
227
155
245
221
215
194
234
167
191
217
199
198
196
200
168
217
202
169
224
205
178
210
216
251
169
177
168
224
250
196
197
198
139
189
173
200
155
179
154
236
273
209
155
183
185
222
224
147
153
137
201
206
238
231
195
214
214
173
162
184
159
231
209
180
199
187
183
254
160
172
190
211
174
138
191
214
199
197
215
197
204
200
150
219
247
151
173
177
192
205
260
189
189
175
159
200
256
199
201
202
195
192
229
191
232
244
222
157
171
151
252
238
246
239
183
184
171
164
140
161
224
239
187
168
187
223
117
205
230
174
240
220
248
222
211
222
142
188
129
180
191
171
238
170
155
187
185
185
168
215
184
153
154
188
191
190
240
233
215
246
158
220
200
196
172
144
189
273
244
245
178
217
264
157
218
201
195
141
165
210
180
227
196
199
179
218
199
150
241
241
269
203
258
173
177
138
214
163
223
209
208
239
267
171
200
229
202
234
107
207
168
264
222
209
170
215
262
202
185
187
189
183
223
108
148
197
174
208
211
175
180
204
202
144
199
243
231
172
185
248
237
193
244
203
210
192
158
190
215
216
184
135
249
174
180
153
263
118
281
187
215
214
173
232
210
189
241
134
148
179
142
193
220
266
182
166
186
223
191
198
200
220
160
191
166
203
256
121
186
169
149
160
170
192
177
180
184
235
268
165
229
188
218
167
191
158
231
120
181
176
151
163
258
144
215
218
191
171
168
193
221
141
267
183
236
173
235
214
206
148
162
221
214
251
151
226
224
170
224
219
244
217
191
167
213
171
213
135
217
240
291
270
247
214
231
174
242
146
184
248
222
217
171
191
265
261
200
206
196
161
191
215
218
160
215
195
185
244
176
245
203
165
260
241
190
182
185
163
184
141
231
228
175
171
148
203
207
181
193
205
271
222
216
195
171
195
231
201
234
226
177
246
162
237
200
240
191
183
235
158
174
249
151
197
131
195
204
189
187
161
256
145
173
211
163
269
169
182
220
204
193
155
220
197
243
168
160
201
233
222
201
249
203
210
274
256
155
127
160
226
244
188
158
201
196
152
265
232
257
192
147
196
245
238
193
225
215
244
151
206
165
211
153
250
236
186
195
225
244
215
225
245
261
215
242
216
241
197
222
220
158
130
239
152
146
216
190
140
214
130
227
204
195
203
158
176
217
235
196
162
232
162
221
168
246
117
180
209
161
265
184
201
196
198
253
257
245
192
220
136
182
271
191
219
175
225
220
176
135
220
275
219
179
209
238
230
159
192
202
165
197
231
249
198
211
194
230
182
207
192
239
182
236
191
140
180
252
179
213
187
191
203
177
235
245
168
210
194
229
232
192
212
230
128
215
199
254
225
222
191
218
204
227
232
201
197
221
158
210
151
163
168
187
227
155
205
174
164
187
232
241
162
178
208
148
280
175
183
111
158
272
213
184
146
185
170
185
222
205
178
237
254
183
202
216
204
240
203
250
203
259
218
178
247
183
132
151
165
176
185
182
221
213
210
220
229
256
208
158
155
207
203
166
172
191
194
223
193
209
183
211
208
172
234
143
178
157
224
274
200
198
264
225
176
217
210
161
198
200
195
169
176
210
140
163
165
222
190
229
129
206
203
239
223
153
141
225
187
197
227
151
167
199
229
144
166
241
195
200
160
178
239
180
134
167
190
210
224
123
228
210
201
160
190
162
227
172
150
164
192
196
173
185
215
176
217
245
169
144
208
265
156
231
162
225
185
245
252
247
207
211
186
225
170
141
213
214
232
203
158
218
213
247
161
178
153
203
232
165
218
154
151
208
162
162
220
227
252
196
176
231
188
214
155
181
147
238
225
260
159
210
226
195
213
209
210
231
206
208
195
192
232
149
243
222
211
196
146
208
256
191
245
193
243
243
234
239
189
220
166
157
207
222
197
175
215
214
114
201
267
145
163
177
259
187
170
182
237
259
300
204
244
201
195
242
222
241
247
203
213
185
188
204
229
222
207
246
163
176
167
250
214
205
150
178
146
206
185
199
149
211
247
160
172
212
140
184
175
183
202
252
222
194
196
211
218
176
199
166
208
176
239
248
213
233
177
136
270
202
260
252
174
208
239
205
170
246
200
207
150
224
194
114
194
196
196
175
194
250
166
226
216
234
189
230
225
232
186
252
215
192
219
241
218
180
235
176
208
227
132
205
258
211
188
255
191
219
169
199
165
215
229
226
251
234
242
240
221
202
229
228
199
170
242
184
255
175
274
216
203
179
167
213
196
168
207
221
226
223
151
206
205
230
249
238
203
240
147
224
183
145
246
250
227
234
194
218
210
232
220
184
202
167
243
172
182
171
224
233
204
207
179
183
214
181
198
153
261
221
167
132
175
232
203
173
245
191
167
206
155
187
186
207
220
265
193
204
217
192
179
151
173
248
184
142
235
162
129
183
214
222
146
261
195
209
207
164
213
219
157
208
214
197
209
198
230
186
244
185
121
198
178
233
163
235
223
197
235
129
198
256
265
227
199
260
198
216
242
177
164
213
257
244
131
215
129
219
219
172
190
186
159
181
167
215
228
210
202
208
154
194
172
221
244
180
195
234
240
222
224
169
205
183
290
251
161
197
117
197
161
258
219
143
225
132
158
189
187
230
231
170
205
243
173
221
203
237
166
197
185
145
222
229
206
189
182
238
138
220
180
192
206
212
196
212
154
193
180
247
239
217
215
143
197
173
217
210
220
124
199
176
173
202
169
229
164
275
171
192
169
196
200
144
146
177
166
176
211
186
149
212
212
206
244
185
254
248
194
173
174
115
188
195
193
258
218
190
197
147
188
238
163
194
202
218
215
204
198
200
140
110
208
179
200
207
165
208
235
230
202
145
178
164
217
165
171
141
256
177
214
214
189
181
234
211
212
189
164
141
179
246
124
182
196
221
161
215
235
186
226
213
208
198
227
208
169
157
233
231
204
156
210
256
234
222
200
186
208
234
216
211
180
145
211
198
193
155
210
270
185
186
208
148
271
163
210
177
212
198
240
162
155
195
167
213
186
237
178
260
168
188
249
234
208
183
149
197
210
265
238
184
196
204
225
155
187
175
193
231
248
186
198
148
181
210
239
186
223
164
266
201
227
198
171
265
140
201
225
128
177
260
201
229
207
185
240
198
135
187
242
217
182
113
157
192
179
226
151
212
184
236
264
236
201
206
169
190
213
245
184
208
205
255
260
228
205
214
240
241
220
184
245
176
202
234
203
265
231
184
185
184
161
215
267
162
210
228
204
152
204
224
244
236
158
199
137
200
121
203
175
175
235
173
237
186
213
181
200
199
228
261
190
207
195
143
141
185
239
148
146
187
174
155
156
215
180
239
181
196
161
232
207
244
166
253
226
174
186
171
201
205
207
243
118
192
241
99
227
165
267
257
214
183
259
187
232
197
201
196
134
231
179
191
225
168
131
200
194
226
192
215
209
183
245
210
203
232
178
221
244
245
250
227
169
193
198
187
215
179
219
212
158
236
203
228
175
222
213
169
223
253
191
233
183
197
186
207
191
195
186
193
233
246
248
183
217
207
127
245
204
163
244
262
213
202
212
198
255
197
194
192
207
171
176
173
196
162
194
161
196
125
178
242
170
227
192
189
198
147
210
147
132
240
179
163
223
198
175
161
194
247
214
169
189
187
196
205
217
178
191
237
166
182
161
241
190
157
222
225
163
201
267
253
170
115
217
257
171
185
229
130
194
184
129
170
196
209
176
139
202
176
170
222
213
186
215
196
139
200
197
192
218
215
160
191
131
237
199
215
178
135
178
212
187
258
158
143
119
180
251
157
184
158
146
216
141
259
184
233
173
158
173
197
135
146
263
178
185
179
233
142
196
210
228
166
163
138
228
191
203
175
154
183
221
234
232
148
255
253
206
227
221
229
156
144
195
213
275
244
280
201
212
242
256
222
188
191
208
193
184
254
192
200
183
261
261
208
170
221
207
183
199
170
200
205
209
207
186
232
219
250
219
269
196
246
238
221
168
197
185
245
214
145
192
129
186
224
227
255
226
174
213
225
170
157
156
226
209
209
209
143
226
166
231
153
205
205
215
178
172
191
200
239
178
207
240
171
233
211
198
190
171
197
159
242
203
270
166
151
209
244
197
242
159
244
205
208
212
249
165
168
184
189
139
210
144
209
221
228
195
185
229
231
234
160
143
209
198
258
228
250
200
177
147
246
191
222
216
213
244
234
152
225
247
210
207
252
224
157
225
217
150
238
242
201
204
225
162
125
132
232
166
207
209
191
152
211
233
134
232
217
130
197
192
236
217
181
124
187
196
187
203
195
215
201
179
160
186
191
225
215
244
210
263
178
205
244
169
187
263
229
202
224
150
222
156
209
189
175
191
184
265
211
247
166
184
167
193
240
198
130
200
169
166
183
186
195
191
212
230
169
196
195
214
193
221
222
141
216
232
264
161
187
199
202
151
219
228
173
197
196
226
180
222
141
229
198
211
217
182
222
182
228
240
198
186
212
180
240
139
177
191
207
169
175
213
181
196
256
167
230
214
211
155
205
183
212
165
167
185
244
219
233
194
201
253
226
229
225
236
198
168
168
146
223
235
241
241
120
202
237
203
211
216
206
166
175
224
169
237
186
156
166
244
197
228
249
156
201
232
266
215
245
232
240
230
230
180
234
177
259
208
159
177
223
101
220
175
238
246
152
166
226
244
160
205
234
164
221
130
235
258
236
179
192
206
168
190
178
125
240
185
186
181
275
268
198
156
232
147
166
157
208
190
177
222
182
198
121
162
217
135
191
175
206
168
225
184
228
216
216
220
210
203
233
147
182
125
201
232
192
246
227
227
163
139
147
183
231
163
115
211
147
193
218
232
190
214
161
186
204
170
205
192
183
224
188
248
161
207
234
134
186
212
202
246
191
248
158
187
241
217
167
182
242
202
264
253
178
245
216
217
121
218
168
243
155
227
233
267
212
212
151
163
234
194
192
201
180
215
99
203
190
267
227
198
207
139
160
208
182
162
197
210
200
173
219
125
179
231
241
165
199
195
199
169
237
197
167
256
197
169
214
153
229
189
294
231
153
203
187
181
161
229
184
209
192
188
280
241
253
198
226
202
218
221
198
176
181
187
161
204
147
255
175
245
196
175
223
215
267
205
251
137
151
200
175
206
144
166
169
198
179
249
212
197
201
259
185
195
132
216
180
194
198
246
195
196
247
164
219
242
158
229
204
188
191
181
218
237
220
191
190
171
251
216
193
140
243
170
179
234
218
189
185
216
223
175
179
264
204
162
195
205
223
192
249
233
246
204
188
191
205
191
214
128
153
162
236
234
180
188
190
198
167
185
226
165
218
125
151
234
201
193
221
175
212
219
198
214
117
178
203
224
201
224
221
185
158
150
255
245
201
220
251
265
210
179
181
271
230
218
243
266
197
160
171
282
206
219
248
171
185
216
220
242
140
215
228
217
212
237
167
215
234
169
238
214
227
206
214
226
205
184
190
164
185
157
230
209
235
200
162
233
173
152
187
258
201
228
166
255
189
136
201
187
167
165
273
204
168
173
221
162
224
105
247
244
174
230
200
144
269
228
290
234
201
190
200
199
234
249
232
242
223
233
211
92
190
180
180
206
215
156
204
243
189
196
229
299
191
200
248
178
167
185
149
164
200
208
256
245
224
213
261
127
159
151
228
224
220
212
244
138
212
228
186
140
152
214
191
214
202
245
220
202
156
201
170
211
212
231
169
163
169
224
191
105
241
203
122
241
167
254
201
211
226
181
264
133
177
228
196
227
234
207
171
176
229
251
182
195
189
186
218
174
182
223
244
235
226
178
281
222
242
174
154
262
278
237
220
251
248
284
187
211
219
245
239
225
245
168
242
239
116
210
182
200
192
216
212
215
245
139
205
237
255
192
192
170
197
243
197
226
170
172
204
199
138
186
181
239
203
257
153
128
192
230
199
189
181
177
225
169
223
132
208
180
190
197
171
206
146
228
208
191
143
226
116
206
156
166
148
183
253
182
212
136
160
180
215
212
209
164
172
83
249
198
206
168
127
157
266
219
141
166
223
229
210
215
289
206
190
198
222
204
146
243
200
200
234
169
181
220
165
175
217
235
228
234
205
208
196
202
184
241
176
142
218
201
116
266
174
201
269
265
194
154
187
178
171
175
187
162
185
137
229
142
219
204
246
271
258
184
235
160
217
154
99
141
174
196
216
119
131
254
144
199
202
249
197
179
212
135
220
205
173
265
159
217
160
147
194
274
194
241
205
177
159
191
142
199
197
220
221
154
269
131
191
142
189
238
160
240
207
215
154
226
205
240
198
209
168
198
204
257
208
217
136
216
171
203
214
158
223
187
228
180
187
188
213
222
162
258
180
219
214
252
252
165
197
225
210
189
178
248
157
212
212
245
191
233
175
215
187
232
203
208
229
170
222
184
179
192
236
274
194
218
180
239
162
200
193
209
194
174
215
216
170
151
209
168
201
229
188
213
202
168
147
141
187
195
236
197
191
195
240
190
236
181
152
208
183
212
265
157
194
130
203
174
244
209
170
165
201
206
258
179
151
188
250
219
222
190
285
244
132
189
287
184
231
219
165
173
224
199
255
191
136
172
199
177
194
164
241
159
211
223
184
190
236
210
150
187
180
249
177
212
198
249
169
200
154
175
192
176
189
148
201
162
232
245
223
223
205
160
247
193
205
183
207
210
225
246
222
228
194
186
225
213
199
178
170
205
180
204
229
274
200
229
200
165
280
214
274
174
160
218
144
211
218
224
164
202
248
256
169
243
248
234
215
170
262
208
219
140
188
163
234
192
201
217
199
186
276
239
238
167
246
184
138
214
209
202
137
242
195
249
154
205
220
187
205
177
165
236
189
172
224
174
170
195
228
206
190
187
217
222
199
154
209
177
261
256
223
207
176
184
160
201
212
152
145
156
210
148
152
199
166
219
224
130
216
177
227
238
212
162
220
193
211
219
193
194
162
194
211
178
117
162
200
223
193
194
204
191
217
245
197
228
123
231
148
223
228
166
179
245
202
160
196
196
196
174
198
179
211
231
202
230
257
207
217
154
217
193
207
153
235
225
269
162
210
245
152
267
235
250
236
238
177
190
192
219
202
236
240
221
236
278
202
197
212
216
142
202
165
194
127
188
189
138
157
155
201
154
234
179
217
199
142
217
174
147
268
265
184
173
200
240
238
157
154
197
180
245
205
214
134
253
195
179
210
211
235
181
159
188
232
182
160
239
205
219
209
229
206
260
238
186
179
210
143
277
194
274
231
190
205
218
235
224
224
227
195
196
181
202
198
193
225
242
211
226
193
196
161
215
201
246
193
225
186
168
208
228
209
149
219
241
193
217
205
244
197
203
170
245
168
268
165
230
224
170
232
192
247
163
190
256
203
212
162
139
155
207
236
229
280
203
149
238
212
233
188
143
155
194
215
177
160
236
200
192
196
194
155
172
167
203
223
223
193
213
245
228
221
174
159
188
215
147
221
217
183
100
270
234
247
184
189
161
160
237
204
154
212
206
235
209
202
208
190
239
235
204
204
165
173
180
198
208
209
169
190
214
206
157
241
193
191
206
167
181
300
180
197
130
178
197
158
205
209
235
146
218
223
149
200
175
183
204
235
189
187
203
157
193
231
232
167
225
216
178
225
257
260
206
179
163
207
194
210
213
249
195
181
217
206
217
149
242
223
220
147
221
191
223
180
253
185
185
240
184
217
174
153
224
277
152
176
214
247
179
202
255
201
252
165
180
125
190
205
187
256
192
211
232
165
295
226
179
217
192
205
154
149
193
182
213
222
199
181
165
192
197
219
205
243
230
150
259
171
186
129
237
169
221
216
158
193
202
199
137
264
238
216
170
201
164
207
253
189
272
165
197
186
193
174
160
237
117
153
218
225
213
169
192
177
207
148
192
223
211
206
222
203
147
181
209
175
231
146
199
209
205
188
238
242
195
165
190
190
203
149
182
171
176
180
205
203
262
207
146
216
183
188
141
222
130
231
182
202
233
204
149
193
142
219
239
254
236
213
202
165
165
158
212
245
210
165
182
195
210
229
238
217
184
227
187
221
244
199
192
211
131
213
161
180
198
184
196
179
198
204
233
262
202
195
231
194
200
242
263
186
178
240
235
241
159
206
151
205
201
183
195
219
177
237
203
197
249
228
246
256
200
167
186
216
206
263
255
184
217
251
227
246
213
194
150
163
261
188
164
231
226
188
239
205
246
149
191
223
183
202
209
237
162
203
230
162
239
214
174
213
269
159
190
251
253
120
190
172
205
162
200
233
206
217
227
200
184
207
192
186
251
239
158
163
183
210
209
234
165
211
193
184
217
184
217
183
178
146
248
206
246
245
193
184
185
215
173
225
165
278
190
202
262
224
188
270
232
216
216
225
195
196
214
218
158
183
218
172
132
208
253
176
211
153
190
174
215
231
158
176
196
208
150
232
205
252
206
252
196
188
191
242
148
238
174
222
214
189
109
220
178
199
219
206
212
213
255
187
221
221
227
243
187
172
154
186
184
193
205
245
128
242
166
197
199
197
194
161
223
171
170
263
199
190
194
224
181
184
220
185
246
184
244
205
193
233
197
155
249
162
199
203
237
199
154
241
267
183
190
161
248
237
187
216
179
172
209
226
232
223
229
149
196
200
180
164
151
242
173
206
193
200
239
195
191
201
252
234
163
144
145
194
211
223
173
236
238
223
272
261
190
247
125
261
129
196
225
187
195
201
205
252
202
201
256
186
171
196
197
170
217
200
196
207
228
150
217
246
177
185
196
216
184
237
243
210
210
191
140
172
226
241
238
254
196
197
148
152
236
209
204
230
232
219
146
219
193
212
150
204
222
178
219
185
244
194
216
215
203
154
164
148
188
220
196
209
230
162
242
190
212
132
211
184
223
159
216
238
221
183
198
203
197
201
148
159
220
185
224
182
179
226
139
248
206
207
181
185
157
221
231
190
201
252
190
188
174
235
182
187
150
188
186
210
192
193
193
231
216
195
146
206
224
139
251
153
251
172
253
252
126
204
150
231
211
218
210
221
198
262
211
154
241
182
243
241
146
187
193
229
190
201
217
206
181
224
188
143
182
159
154
236
165
181
169
230
176
219
263
232
186
147
214
200
203
189
232
166
239
124
184
233
199
188
147
221
150
297
134
232
160
226
220
173
208
155
199
183
194
209
161
200
192
221
227
229
249
178
149
154
171
178
276
207
220
217
262
180
204
154
187
179
138
154
204
240
231
156
201
108
157
217
222
210
188
212
227
172
256
237
207
194
254
206
167
185
231
164
178
216
245
215
218
227
239
232
238
206
182
180
183
205
258
182
219
267
248
192
127
263
230
228
196
244
178
215
221
229
213
192
219
179
238
211
185
212
155
222
244
222
249
242
208
214
204
152
180
231
207
191
190
188
227
222
192
211
263
183
192
173
279
128
158
237
217
239
264
220
221
286
166
207
222
185
187
200
145
194
171
218
184
118
169
248
209
194
218
242
177
179
192
241
194
207
178
219
267
168
155
217
163
200
122
215
162
230
150
208
214
241
214
128
156
191
223
210
241
188
238
193
150
198
232
141
209
182
201
250
223
176
136
238
254
192
185
172
206
159
225
182
231
281
204
174
154
207
191
227
174
199
231
215
169
134
237
257
168
171
160
249
193
209
151
289
129
247
233
204
178
177
216
178
231
225
210
255
230
203
187
181
151
193
278
190
186
232
272
200
211
206
205
194
192
183
177
239
139
181
220
228
146
115
239
128
198
198
235
183
243
202
173
162
184
257
168
206
190
205
201
199
94
207
215
197
159
191
165
180
251
262
228
256
283
193
241
207
175
214
225
166
163
214
225
205
225
207
252
141
245
174
254
259
243
155
187
179
171
210
235
178
224
194
209
125
192
174
248
164
165
243
223
236
182
198
215
202
176
235
185
239
179
178
222
117
142
230
194
164
201
176
165
134
218
205
186
174
218
234
216
146
249
208
222
254
227
224
210
171
244
200
217
183
230
142
151
192
209
208
177
167
196
238
150
198
242
164
221
173
230
240
205
212
211
190
194
156
162
230
188
170
168
189
169
206
147
168
204
215
179
237
194
191
229
180
196
138
168
108
143
260
254
188
170
243
202
220
192
255
182
230
177
173
215
172
213
125
195
217
201
138
176
176
225
144
259
302
202
198
177
252
185
202
208
150
267
219
198
111
140
184
125
164
218
187
234
197
223
232
175
209
232
235
162
241
147
197
165
245
197
183
184
167
235
246
140
231
219
152
188
194
228
243
218
179
277
176
209
245
211
199
231
217
205
219
176
179
183
209
173
199
155
259
262
246
237
185
201
139
184
227
212
159
179
174
154
227
188
243
179
256
158
244
210
243
206
183
200
228
188
238
131
227
188
216
165
185
254
202
208
241
254
180
221
157
213
221
219
246
188
176
242
211
98
221
187
226
183
214
199
211
160
207
220
215
151
208
267
213
178
175
203
228
154
158
210
126
209
222
151
240
245
226
183
189
176
166
173
230
200
170
197
191
210
188
206
226
278
230
192
203
191
203
221
263
200
130
169
167
145
198
182
258
249
218
148
198
170
222
212
199
180
147
202
191
231
193
198
170
192
211
230
231
216
140
247
231
161
179
149
193
187
208
194
189
132
200
193
185
242
234
145
242
199
170
245
239
194
133
201
204
205
180
160
198
133
247
185
207
212
258
163
123
241
161
237
152
204
218
200
234
193
245
214
191
178
242
176
191
208
237
132
199
217
153
192
204
153
157
201
237
199
172
213
227
155
167
226
216
183
219
181
212
218
211
270
154
172
176
251
199
175
244
190
196
204
237
206
186
226
200
180
189
224
195
222
192
125
169
174
211
205
155
237
283
204
198
233
246
229
239
259
186
206
187
134
154
215
175
149
162
239
208
258
110
162
161
158
198
203
181
210
252
179
198
180
201
137
202
183
128
268
236
158
254
226
245
158
151
174
282
238
160
268
218
204
186
188
202
222
200
164
202
217
158
268
208
181
264
243
190
139
167
157
171
193
175
255
235
220
263
199
177
194
182
162
160
218
190
196
225
202
227
132
212
189
189
210
217
179
202
209
240
194
210
182
169
222
191
229
176
204
188
263
270
239
273
152
306
224
205
199
164
223
169
159
201
230
269
246
162
203
183
150
254
189
189
233
221
213
227
166
167
155
161
166
110
209
244
165
163
176
178
210
156
172
241
219
159
168
246
188
222
242
226
192
184
174
174
266
233
205
234
204
235
176
178
193
232
215
160
157
229
152
245
203
204
171
226
199
211
278
186
189
218
256
238
217
133
162
196
179
180
197
150
231
170
225
206
204
184
226
215
133
192
161
218
144
145
189
174
196
220
255
248
218
201
176
230
204
271
207
181
195
169
240
200
206
175
181
160
175
221
145
216
171
194
232
220
205
191
243
239
213
272
146
218
181
262
175
195
207
178
155
218
166
239
157
184
254
174
247
132
219
181
228
193
182
174
275
184
204
192
188
197
201
181
207
175
201
187
166
234
175
198
170
254
184
235
174
177
203
198
262
223
234
220
194
177
210
230
169
134
132
171
171
177
168
202
205
167
162
188
197
171
202
262
216
246
205
139
216
194
172
181
208
192
182
234
216
207
201
185
165
140
207
200
194
174
204
179
194
201
197
211
230
232
176
265
207
213
213
245
242
173
218
191
133
265
139
245
178
193
205
243
218
218
197
204
147
224
180
176
265
232
226
211
158
216
231
188
192
212
249
198
204
177
272
250
219
178
263
213
207
187
194
277
170
220
191
180
253
229
188
225
216
200
235
208
156
222
189
231
181
167
207
164
199
200
233
209
151
236
187
191
146
157
213
250
175
244
186
195
259
187
226
151
200
248
196
222
167
208
174
175
237
162
123
214
223
150
155
229
237
149
173
253
199
208
142
164
215
165
172
240
167
179
227
162
230
206
199
186
227
156
192
210
228
171
188
132
196
258
172
139
167
211
219
182
230
170
247
197
204
158
197
195
235
193
117
227
176
199
227
155
165
214
169
226
127
168
189
143
244
225
190
245
150
145
248
159
205
175
215
211
171
166
266
197
177
258
183
239
154
155
118
221
185
192
207
189
187
194
186
251
212
122
214
212
148
178
212
167
209
185
155
201
148
211
205
243
170
190
241
163
194
206
198
243
226
216
203
170
218
250
239
195
171
195
224
238
194
153
179
211
171
180
196
199
168
242
214
189
192
219
216
172
256
191
186
252
127
259
222
225
260
206
256
205
181
202
193
216
226
199
246
202
245
210
172
216
223
248
184
245
216
231
205
178
192
187
217
176
186
223
194
204
234
265
165
208
156
207
194
217
211
178
219
130
194
227
171
217
228
186
197
240
140
204
211
250
195
208
214
298
148
212
193
185
206
295
211
188
186
223
227
212
250
206
185
213
203
226
169
180
238
195
189
217
217
224
182
219
125
160
197
162
104
135
213
211
276
199
213
238
245
183
212
182
255
199
218
236
181
243
214
243
181
171
240
240
195
157
194
241
229
270
216
238
211
210
180
173
194
187
206
200
238
222
149
211
169
176
213
213
201
174
198
214
126
216
132
239
151
191
213
195
180
206
196
170
183
228
195
173
192
168
217
192
163
220
227
269
217
184
172
221
186
199
197
176
222
115
151
168
231
169
141
181
201
221
212
154
232
200
206
178
197
152
187
196
158
207
210
212
237
128
233
156
171
233
155
205
161
164
211
234
170
212
177
211
151
228
203
192
147
163
158
166
201
246
241
156
280
185
179
173
164
221
132
195
190
239
177
136
165
191
211
204
216
139
206
223
181
246
205
190
147
226
249
179
135
194
188
165
269
176
217
229
204
156
212
214
209
165
166
191
224
211
163
295
235
127
288
199
159
205
221
210
254
195
225
216
181
218
166
178
251
233
202
214
207
223
247
269
179
221
160
190
146
166
240
220
167
222
200
174
195
261
212
220
161
204
214
210
256
212
186
213
194
218
190
194
165
218
199
228
204
185
188
199
208
188
194
253
192
219
241
227
261
238
228
192
242
243
201
179
250
209
185
171
262
220
268
203
249
167
248
229
196
186
187
210
259
220
175
185
225
185
214
245
138
223
211
187
229
128
276
167
174
204
156
244
166
185
248
166
230
201
182
166
117
180
157
179
231
207
196
189
258
183
208
181
186
150
166
241
161
201
143
247
244
239
189
227
199
207
166
158
207
230
222
231
268
240
104
155
207
159
176
194
130
185
222
152
217
179
214
146
218
214
204
143
206
196
189
200
234
193
271
176
169
202
228
191
173
176
180
212
165
164
206
199
215
213
260
176
188
169
193
248
199
197
257
208
209
183
211
208
212
152
168
138
146
255
132
222
191
258
206
169
195
165
120
208
241
194
190
228
213
216
223
201
201
207
219
256
193
159
251
171
208
174
212
147
212
188
220
142
166
176
228
311
214
153
185
171
219
207
157
254
194
162
243
206
190
179
169
181
248
157
221
174
166
192
262
205
243
171
215
222
195
202
224
209
204
227
220
138
170
207
213
224
200
199
216
185
170
179
216
178
248
268
130
173
192
178
240
242
275
216
167
247
270
223
175
254
181
233
201
244
214
224
210
198
174
208
174
209
168
178
219
239
263
220
191
195
224
168
185
205
215
228
154
213
193
199
175
205
233
191
160
225
197
240
186
111
203
199
238
225
210
209
136
176
209
199
188
226
105
248
192
188
209
165
195
247
249
216
214
238
166
192
201
186
226
221
139
254
190
233
222
140
202
185
194
198
266
183
211
232
189
173
248
252
165
193
220
231
207
231
185
134
234
209
194
240
178
186
222
185
198
225
226
240
125
209
242
236
145
189
202
167
177
262
211
169
198
215
68
214
220
183
179
223
176
207
120
202
201
242
147
185
226
221
220
190
199
224
201
161
245
161
214
189
189
169
207
253
249
149
171
161
198
192
261
221
169
228
166
174
168
200
228
182
141
174
200
188
264
239
257
118
185
214
150
224
198
201
165
211
226
191
211
180
219
168
203
194
185
243
243
239
212
233
280
191
173
174
181
185
240
228
175
130
190
234
229
220
204
144
247
217
211
136
182
222
166
265
194
164
223
189
215
167
217
211
206
192
190
234
241
206
219
234
160
245
239
217
171
204
207
147
271
172
224
229
261
211
231
229
187
221
199
208
235
213
186
157
242
202
210
173
166
208
194
227
183
244
162
186
241
190
248
242
238
150
183
186
223
199
185
177
150
194
217
193
212
247
264
215
213
205
133
149
199
236
187
129
224
176
203
216
186
122
170
220
224
262
231
205
222
116
174
234
170
192
246
203
209
184
200
212
193
233
223
262
152
173
207
222
181
168
185
225
208
195
234
182
145
167
259
157
193
235
172
170
168
172
183
236
150
147
222
227
198
214
221
175
177
267
185
198
183
175
170
222
199
169
169
189
230
215
199
161
149
237
216
150
231
213
168
196
142
232
231
206
212
193
213
241
194
209
239
173
235
198
195
196
225
167
209
220
163
212
230
189
183
256
262
200
164
241
214
211
199
162
198
216
246
184
221
253
211
143
147
220
167
165
208
164
215
294
189
199
248
220
193
243
196
195
174
209
193
214
193
209
184
192
131
234
223
242
202
221
184
182
161
168
212
212
190
128
205
200
157
149
194
260
228
264
188
255
242
188
199
193
212
177
223
138
169
209
179
249
211
163
147
186
181
280
206
229
243
193
241
221
200
231
245
197
181
187
174
142
202
248
220
224
218
218
205
200
245
170
204
164
181
204
158
171
175
185
218
200
200
206
281
181
190
229
183
218
170
160
182
190
150
190
185
259
195
161
208
183
176
195
186
214
202
248
208
168
178
177
221
171
163
198
204
221
225
258
172
147
159
187
207
206
231
286
192
144
215
236
234
197
215
233
255
234
171
208
165
149
210
194
220
220
140
256
203
211
151
217
214
237
249
233
218
154
205
192
130
236
186
249
206
174
155
144
178
239
100
232
217
260
190
267
128
196
209
170
243
238
186
146
185
161
232
236
167
183
241
201
200
160
189
189
186
224
230
224
197
185
192
181
202
185
213
229
259
230
242
190
142
175
216
205
225
238
241
203
241
196
188
257
190
123
166
241
156
199
153
181
176
203
191
250
242
213
229
155
237
228
248
211
258
265
216
200
241
229
218
240
211
274
212
217
191
159
200
120
146
180
111
164
160
226
164
240
204
199
188
127
199
233
199
101
159
160
226
268
206
205
148
203
228
294
199
273
193
216
160
123
177
169
227
147
171
145
245
199
220
153
157
194
196
168
227
202
194
190
160
223
242
193
141
144
229
196
193
213
195
156
151
243
224
168
203
198
213
134
223
233
203
257
227
156
194
187
85
193
203
183
226
257
219
182
133
220
165
252
209
187
294
161
169
194
254
189
226
202
237
163
222
140
179
162
233
182
183
125
166
160
216
171
250
219
203
168
187
192
215
152
200
167
231
158
243
202
201
263
176
243
182
156
210
174
214
124
175
170
153
200
222
220
246
232
237
207
149
191
200
247
168
190
197
223
166
249
230
248
164
201
180
170
203
217
241
157
187
197
252
199
148
188
176
254
210
169
117
250
192
237
202
260
254
196
232
160
224
192
220
248
165
201
209
220
155
221
259
176
246
234
182
178
199
215
192
162
178
266
286
191
236
201
195
207
248
182
199
191
166
255
202
167
255
142
158
213
149
214
133
161
127
234
210
142
252
199
238
178
195
227
234
230
135
192
229
187
182
216
233
187
280
117
210
232
152
131
192
166
210
238
217
245
242
191
255
188
182
161
191
207
161
205
194
214
273
283
177
186
156
181
236
181
235
228
216
199
277
238
248
169
157
222
149
198
171
236
185
238
204
250
225
264
191
199
253
198
259
218
166
212
239
168
186
275
219
171
152
266
208
228
251
198
203
251
156
244
231
190
181
191
207
175
211
211
185
237
163
183
124
249
104
141
221
138
151
207
194
195
136
254
174
201
225
194
172
159
217
179
231
158
155
172
129
200
188
252
257
189
179
212
141
149
189
230
181
180
175
190
242
279
231
202
243
212
208
190
235
218
240
157
169
168
200
258
157
231
207
213
201
210
159
193
201
160
209
180
160
180
272
224
195
197
248
195
134
169
161
218
195
246
182
245
197
262
204
215
273
222
246
185
201
170
230
219
174
247
139
214
161
263
180
155
243
218
229
208
242
139
192
193
240
177
219
173
154
184
199
187
200
237
211
219
186
181
214
205
161
222
243
222
200
153
229
199
141
206
262
164
184
216
192
230
241
167
253
161
235
219
166
209
184
188
204
224
198
161
187
197
190
255
197
164
178
232
190
219
223
237
218
193
167
181
197
205
194
234
220
186
243
274
188
246
188
224
245
228
205
168
235
129
193
222
228
247
155
180
209
148
246
193
207
172
190
193
231
216
157
190
156
208
222
217
185
177
198
152
203
288
209
228
216
163
237
222
221
179
187
246
193
171
206
232
186
203
204
166
158
158
206
162
207
223
160
145
188
150
234
201
219
234
272
137
150
238
256
164
213
139
208
214
195
184
119
228
203
257
255
179
210
208
222
244
228
183
252
218
216
127
211
210
248
193
277
179
242
245
197
163
109
197
201
248
147
160
237
183
300
211
261
222
202
194
180
231
215
209
161
191
170
153
216
97
230
157
172
134
270
156
135
177
251
228
146
199
219
228
219
231
227
190
198
158
190
187
175
165
195
197
195
162
174
204
276
211
176
166
173
209
216
226
236
257
163
156
208
252
204
195
204
216
213
220
114
241
225
228
178
223
223
190
150
255
200
202
253
229
189
182
230
205
184
209
198
262
216
189
197
185
182
138
187
220
203
253
148
229
139
254
165
179
194
227
228
180
193
187
263
221
222
242
214
222
210
182
215
162
221
291
228
237
216
220
199
236
191
212
197
191
210
205
222
129
234
152
243
232
204
217
198
226
160
249
202
220
210
145
208
252
207
194
180
193
210
209
195
214
253
145
185
211
230
190
154
213
171
226
208
160
198
230
224
124
209
195
207
214
198
187
212
113
189
241
203
201
176
193
204
234
206
256
147
106
206
148
118
207
157
165
222
135
214
171
263
175
190
218
240
230
245
188
129
200
201
191
243
177
229
271
241
253
244
218
198
162
154
213
232
205
225
276
257
135
215
184
181
166
218
197
212
147
222
259
237
269
138
163
206
204
155
96
167
220
194
243
230
248
176
228
182
204
173
259
202
217
193
171
194
208
172
229
147
215
195
180
255
178
216
193
193
199
161
172
201
205
180
138
182
196
198
208
189
239
212
220
181
238
261
213
245
175
246
207
189
228
191
199
215
197
207
173
221
210
222
209
192
212
240
200
206
207
249
247
223
232
194
235
209
153
137
223
110
173
209
189
205
215
188
174
220
198
162
224
147
191
173
219
221
166
170
239
233
242
230
231
181
237
124
193
216
232
214
224
192
127
216
262
204
203
203
215
272
176
168
194
197
223
220
190
189
171
216
219
176
252
229
283
162
228
200
177
209
227
223
228
202
228
150
165
235
200
198
177
230
175
187
186
214
253
209
152
187
232
255
189
212
177
205
236
247
164
198
191
197
167
184
183
201
193
231
156
225
239
168
174
179
169
156
192
147
166
274
233
279
136
171
211
197
196
217
160
200
184
169
243
205
189
237
180
212
195
195
194
237
225
195
234
240
250
197
229
238
228
223
215
214
169
236
179
193
179
215
182
155
188
205
162
179
171
237
188
141
178
180
193
243
162
183
190
166
156
233
238
207
182
229
242
183
138
147
219
216
227
228
207
143
178
167
191
232
217
215
205
209
154
215
262
152
196
271
221
219
178
170
158
177
213
199
196
187
226
189
154
224
223
180
235
182
208
211
194
221
200
147
154
195
211
205
207
230
259
148
154
143
186
229
148
176
191
193
206
223
190
178
231
197
194
143
171
159
164
211
196
176
173
118
155
183
221
218
284
182
198
205
222
173
232
185
247
272
221
222
185
206
218
175
252
205
201
246
188
142
181
198
180
160
173
199
208
270
188
226
190
189
158
191
182
190
187
207
221
213
162
98
210
208
213
186
211
252
200
216
184
201
176
201
206
185
182
128
208
204
163
190
231
190
255
108
179
169
183
219
200
177
267
229
187
177
226
223
174
217
282
151
226
235
227
204
146
206
236
224
212
181
226
200
232
143
124
213
209
180
223
197
280
260
199
159
184
184
211
186
177
188
216
162
213
209
213
169
168
187
184
132
155
211
243
210
195
244
215
145
170
206
164
188
286
83
212
191
250
163
210
169
248
234
218
183
188
230
244
191
224
192
238
219
239
191
216
174
229
161
173
173
165
254
223
195
228
160
198
261
187
144
167
180
164
179
221
220
178
179
175
201
180
172
170
229
197
188
190
179
211
111
175
257
247
199
237
165
180
130
188
221
233
199
221
199
239
152
172
219
196
198
225
212
211
194
184
196
189
253
175
177
187
212
170
148
191
223
216
219
160
138
217
188
155
131
226
235
128
224
204
227
220
225
193
209
146
179
234
226
131
167
232
189
269
202
240
221
145
243
168
201
194
187
162
141
194
202
202
277
195
190
213
159
211
216
189
246
246
93
227
217
192
249
141
200
212
232
191
187
205
267
183
213
225
205
155
239
174
150
182
219
178
154
179
212
222
201
183
226
158
248
197
167
144
238
194
243
225
258
231
165
209
192
167
198
205
294
249
192
260
175
227
236
146
198
226
163
266
174
257
137
195
229
202
289
246
123
167
171
252
159
146
200
291
200
160
181
222
220
232
207
198
231
201
198
205
240
240
240
232
192
190
209
186
199
264
181
209
227
184
185
272
243
250
217
133
188
158
175
244
221
187
172
223
200
220
209
236
234
177
219
214
206
226
198
213
198
171
180
234
223
234
214
198
175
144
155
233
178
254
187
139
222
236
242
207
193
182
205
192
169
224
196
184
208
199
217
189
229
232
254
156
187
218
204
226
224
176
141
260
186
173
161
201
202
217
168
251
250
179
176
201
206
201
225
211
211
168
170
159
187
216
131
188
196
213
203
245
220
114
217
210
223
177
286
167
187
196
235
158
206
257
216
241
212
177
246
159
197
174
293
175
206
169
239
173
211
236
236
217
210
241
244
233
229
222
239
196
150
164
145
231
205
175
201
166
235
237
155
160
167
173
203
200
204
188
156
207
196
198
169
234
239
193
205
191
204
210
179
171
224
171
236
183
149
248
206
189
165
186
201
204
229
175
180
177
211
239
150
254
135
200
239
230
234
221
191
252
243
221
198
270
187
221
196
153
204
216
229
280
253
252
234
228
197
214
257
220
142
191
198
192
197
234
245
199
192
220
151
206
227
194
235
233
219
177
224
179
181
191
133
253
215
156
226
258
194
242
249
190
244
259
204
213
205
269
244
199
123
188
204
150
241
230
189
220
195
166
178
246
147
180
140
203
234
160
220
140
261
212
232
188
164
182
156
166
232
206
220
193
208
220
197
212
199
165
255
155
244
184
206
164
187
230
198
202
256
285
198
236
233
180
252
237
176
205
240
235
181
197
223
179
182
200
195
184
197
206
224
231
210
236
187
166
238
159
210
118
227
166
206
192
209
194
185
222
256
164
231
190
126
168
227
237
148
208
164
238
289
207
222
239
140
186
207
180
188
160
241
156
222
200
149
155
194
247
220
228
229
216
191
172
217
144
172
176
245
220
267
250
211
173
261
214
203
239
187
183
211
167
200
236
216
182
127
223
249
218
192
143
177
211
203
241
221
213
177
226
172
231
232
200
204
125
207
243
196
176
190
190
214
216
202
204
192
238
217
199
157
176
138
275
227
163
247
220
198
184
221
205
178
198
151
243
165
227
188
173
205
224
256
190
218
181
199
159
223
163
181
232
219
196
263
218
209
234
175
189
190
165
245
213
131
182
231
214
200
218
164
156
230
187
223
144
212
195
245
160
226
229
130
169
231
199
156
249
196
184
180
209
171
178
213
162
223
256
299
186
249
159
195
201
154
207
266
232
177
140
216
223
227
242
160
199
191
167
187
241
179
179
180
184
163
232
199
266
228
178
204
139
162
258
194
216
209
146
238
172
213
167
236
186
261
193
157
250
176
223
235
151
188
232
161
177
177
214
146
227
198
194
223
203
207
227
212
138
192
245
265
155
195
164
205
201
241
230
220
240
175
262
210
196
171
228
162
235
211
243
124
230
194
125
208
249
199
222
177
241
203
177
224
226
206
141
214
195
164
211
265
251
229
196
208
276
218
221
231
173
190
245
228
285
156
209
188
189
219
220
251
239
145
171
222
216
214
217
182
202
231
233
164
192
250
176
208
256
268
193
180
187
164
189
222
183
166
201
228
201
116
173
246
215
218
204
204
209
111
146
218
160
181
191
190
250
184
195
199
203
184
201
235
199
244
201
194
216
204
181
232
236
206
151
217
172
162
279
161
150
180
190
117
200
208
181
162
164
207
197
204
118
189
175
170
221
187
288
214
268
218
219
170
171
243
238
211
227
213
228
163
198
238
109
218
239
218
131
225
180
288
215
165
202
206
217
200
194
211
226
157
184
232
236
174
220
193
247
205
202
184
193
196
176
212
184
205
155
193
163
201
215
235
152
148
247
195
191
197
158
249
237
247
128
202
200
154
220
200
106
233
239
198
169
196
203
223
216
180
198
235
204
186
182
194
199
190
203
217
151
275
244
230
229
213
224
239
176
221
230
198
162
170
220
268
182
228
189
204
218
204
225
220
209
167
240
203
190
155
163
206
144
183
276
146
242
185
137
239
214
151
228
175
262
237
228
221
247
198
182
219
176
211
224
264
204
239
194
252
199
214
227
185
208
229
240
208
255
188
245
244
171
178
220
150
174
181
181
197
226
207
178
224
174
153
217
260
217
171
193
182
175
168
243
239
225
262
174
160
222
170
151
157
134
199
174
207
211
169
191
191
250
221
203
219
252
148
173
154
214
163
239
184
242
169
152
215
231
146
174
230
221
236
242
204
214
193
186
216
242
214
250
213
206
132
174
192
200
222
205
227
215
200
163
193
147
183
183
233
209
211
175
278
179
237
183
232
223
242
184
258
166
248
195
157
159
196
232
209
210
245
249
201
179
179
160
220
190
212
224
212
207
161
170
162
219
257
146
216
172
131
213
199
183
121
237
199
148
202
224
211
164
219
206
187
246
238
211
215
191
175
210
183
200
188
175
179
185
181
233
174
186
228
178
144
215
220
205
221
235
217
156
241
189
164
141
228
149
177
176
182
146
217
214
147
252
200
255
241
223
158
185
158
178
194
212
180
193
162
222
226
208
220
248
186
181
185
214
191
179
220
174
178
181
246
197
255
256
163
165
174
194
208
191
158
194
212
172
226
252
194
202
249
198
252
217
167
207
191
182
230
131
222
225
237
224
231
205
178
203
146
171
220
143
200
165
266
174
198
209
197
155
164
244
233
254
246
218
141
219
193
196
235
213
207
164
219
172
210
195
208
275
188
153
171
199
192
210
184
213
230
188
178
238
186
235
196
193
223
126
203
206
205
217
186
252
198
152
128
248
207
188
110
213
191
215
205
226
201
195
205
252
201
211
231
234
166
217
170
194
176
171
225
219
172
264
224
217
185
207
136
178
223
169
261
234
261
195
170
230
203
196
178
258
168
211
205
188
160
238
210
212
192
235
183
236
200
198
214
215
246
163
112
238
237
212
236
217
150
165
227
162
270
135
170
218
179
224
216
205
165
242
203
158
210
221
224
191
144
171
238
235
182
192
240
168
209
230
212
220
236
194
241
220
208
156
136
169
248
223
209
205
236
203
194
186
199
186
223
180
192
277
216
223
228
167
253
232
186
231
210
205
207
221
150
194
167
219
187
220
161
168
179
203
254
196
218
177
167
232
102
218
229
191
240
199
201
242
182
197
147
187
146
174
235
176
217
252
250
178
203
123
177
198
220
206
132
222
192
197
212
103
192
228
226
132
202
197
179
187
216
180
223
171
153
176
169
179
171
215
199
169
227
210
213
240
165
241
201
149
193
213
203
269
183
209
186
201
236
226
190
206
250
180
150
136
153
266
225
185
224
228
254
236
209
246
269
240
195
167
179
198
146
223
239
203
182
179
204
185
174
217
228
182
171
185
227
210
152
179
248
167
204
129
191
179
183
234
221
209
187
211
251
235
211
191
170
207
197
209
264
178
176
219
224
246
175
242
210
244
201
200
244
204
199
225
222
178
235
199
265
153
211
209
220
230
170
249
186
250
235
193
257
206
241
185
73
249
179
185
142
235
235
205
248
230
190
237
193
172
206
199
130
190
244
212
157
235
186
148
236
184
168
191
196
198
208
137
242
160
253
250
213
206
223
145
218
230
127
173
200
145
169
231
270
235
217
173
210
134
227
200
245
209
189
196
249
210
257
244
236
232
220
245
218
193
194
161
205
213
164
225
190
197
206
213
171
216
175
158
235
190
189
136
221
183
187
133
257
176
213
182
248
236
206
179
99
242
219
231
131
194
220
165
157
217
157
190
112
247
245
283
224
179
206
168
154
172
152
120
183
218
199
189
217
222
154
201
152
155
213
176
229
160
235
213
225
190
209
260
153
192
251
200
143
162
212
201
207
255
109
273
172
127
186
191
220
237
248
193
175
208
199
255
193
209
222
210
239
182
196
187
178
209
182
193
258
186
159
244
198
148
251
286
220
174
159
221
169
236
188
159
215
179
202
136
218
191
235
254
253
224
148
244
206
246
203
170
190
181
217
241
224
143
155
147
171
191
207
213
227
175
154
214
195
195
196
216
144
221
214
170
176
257
169
182
242
141
165
221
240
203
211
253
191
240
155
169
193
202
155
164
242
185
143
197
254
184
201
191
215
203
226
163
193
208
210
189
194
191
155
157
217
140
128
266
181
168
223
158
240
192
219
210
168
221
206
264
195
162
194
138
194
228
220
179
191
166
164
244
173
208
203
160
211
177
240
183
193
198
195
219
207
167
200
225
235
175
232
171
188
220
200
194
176
168
138
190
229
181
171
192
153
224
237
223
211
250
205
209
189
231
231
164
251
278
160
211
191
173
177
246
247
134
143
200
178
214
245
214
237
186
202
202
228
150
214
256
216
212
208
118
221
163
229
215
194
192
218
232
176
168
226
253
223
182
188
170
214
261
157
183
219
246
172
184
195
281
186
158
184
239
140
160
176
165
158
126
205
221
146
210
160
236
177
192
228
138
184
243
249
195
239
179
160
191
223
154
179
160
218
210
244
214
237
196
204
212
165
183
236
174
233
206
153
144
233
228
178
156
258
158
119
189
221
185
207
196
216
246
155
138
218
201
240
176
269
152
185
200
231
207
246
137
134
201
138
160
181
259
145
151
194
196
270
184
218
202
147
223
182
222
200
150
175
234
193
223
280
236
238
248
213
242
85
202
250
162
158
245
222
170
249
168
172
245
152
198
159
227
197
220
198
172
209
229
162
166
198
166
169
239
243
211
173
196
171
239
168
226
197
174
229
198
140
181
206
225
229
180
162
252
196
157
180
243
215
195
180
212
196
168
198
165
154
221
246
161
197
220
231
185
168
195
201
234
210
173
140
208
218
133
265
193
241
142
248
245
186
152
183
181
187
189
233
193
244
184
242
238
192
212
226
226
225
176
175
219
213
195
249
188
150
204
175
213
222
196
173
261
176
139
160
217
193
200
169
201
192
192
159
156
223
261
215
171
242
214
235
178
260
151
192
177
140
206
204
174
256
245
229
211
148
157
205
218
243
194
200
201
215
160
203
214
199
176
264
206
241
225
247
219
218
152
205
196
178
172
210
243
226
222
170
218
208
214
168
164
227
233
248
163
189
222
277
172
233
228
215
202
236
162
190
209
243
223
174
237
195
143
198
191
204
238
151
188
198
244
215
217
220
227
229
168
209
157
213
241
179
222
241
116
124
203
211
172
213
182
234
238
218
194
254
226
141
194
214
227
161
220
217
189
178
230
195
195
185
213
234
245
163
198
242
222
234
182
292
200
223
238
202
159
215
174
201
164
182
161
245
214
205
207
186
196
161
119
177
170
161
201
270
227
200
188
183
202
154
239
185
179
201
206
229
226
176
236
161
155
234
244
241
250
207
249
239
192
205
244
138
179
187
222
183
164
242
223
196
127
199
199
202
214
179
220
258
134
188
252
183
199
227
165
232
229
206
210
228
203
159
198
105
250
162
188
216
222
150
203
189
218
172
170
247
220
190
260
230
184
155
184
216
225
265
135
240
169
152
169
237
275
150
197
209
203
237
249
199
179
233
159
208
225
181
218
217
233
226
154
204
217
221
216
198
177
176
185
159
216
213
148
163
231
208
190
213
225
239
197
186
189
230
198
171
195
163
214
216
177
203
148
213
254
201
140
256
249
171
217
206
180
161
260
187
222
180
227
219
196
232
206
226
191
264
260
93
188
254
208
206
227
172
167
200
219
154
192
290
213
218
181
155
251
181
199
187
204
193
192
172
230
212
218
213
217
194
220
203
139
149
195
263
141
187
175
230
201
173
165
243
172
236
198
182
131
193
220
216
201
241
172
164
211
197
178
196
233
193
229
211
246
171
162
187
179
162
208
238
203
139
245
212
240
203
252
210
223
150
142
168
196
154
186
208
130
254
178
195
190
209
206
121
232
165
223
191
180
223
266
203
199
213
254
233
210
253
212
220
222
174
170
167
185
210
146
218
223
214
240
223
220
209
206
196
206
244
205
113
243
236
223
148
222
191
158
192
265
226
164
215
213
169
238
202
234
218
220
233
185
236
196
217
209
181
213
198
155
279
185
283
172
185
167
237
225
174
206
199
188
178
124
242
188
181
218
191
109
175
151
205
186
215
208
229
189
167
161
242
140
191
194
186
187
224
218
176
172
258
215
220
207
192
193
161
177
210
172
194
240
194
203
208
181
163
215
214
243
228
249
213
183
180
128
245
244
241
276
233
157
236
206
135
216
162
270
143
182
195
241
224
201
156
215
234
228
193
228
250
122
154
194
143
151
204
228
195
203
277
176
210
243
182
137
225
185
166
258
226
249
241
161
207
193
139
200
189
213
242
183
191
166
163
165
177
195
187
216
178
128
217
227
192
221
230
202
157
186
195
206
226
182
248
197
210
191
189
210
199
230
238
210
191
208
230
238
187
238
234
175
249
175
171
152
164
230
206
276
190
212
193
211
279
157
215
184
222
156
236
249
185
217
238
232
242
207
231
227
196
256
217
211
252
228
197
193
201
235
158
181
171
223
177
255
164
202
220
177
215
234
198
216
260
166
207
143
180
154
222
212
244
206
238
153
94
231
211
175
192
227
160
178
204
240
191
198
237
237
237
216
187
202
259
177
167
170
270
178
216
212
155
191
185
171
252
202
165
190
207
235
178
256
129
175
223
187
200
200
201
250
212
196
209
184
173
169
218
247
211
195
225
231
214
212
200
211
221
221
212
223
193
171
204
224
273
241
231
178
238
196
158
171
178
207
169
170
235
213
154
195
239
198
135
239
178
193
288
165
228
220
120
151
189
164
233
211
199
233
208
202
236
190
196
183
239
166
188
200
211
226
175
212
201
208
172
218
215
184
229
174
156
253
249
200
256
176
167
204
193
208
211
137
152
235
138
220
200
189
209
202
176
189
220
233
206
218
179
234
220
160
236
173
185
220
281
168
180
226
190
197
223
207
235
230
175
165
165
252
189
182
224
245
216
270
214
237
174
259
221
209
207
125
232
178
217
210
239
191
214
197
90
258
134
209
209
179
185
187
215
209
242
209
149
163
227
152
149
213
221
202
198
186
200
199
206
241
185
183
214
131
206
221
158
166
231
224
194
184
224
212
183
184
162
184
247
205
175
184
187
200
179
181
184
199
183
232
204
216
219
248
239
259
192
233
216
169
223
199
187
209
152
262
175
225
179
155
212
216
206
117
169
150
231
169
215
240
184
198
235
129
171
252
148
219
164
229
215
219
193
240
204
219
219
227
190
225
214
210
264
167
146
214
222
185
200
221
185
159
225
267
188
213
178
151
122
172
164
245
163
212
234
211
195
193
218
222
208
192
207
186
208
162
222
177
168
210
221
195
170
213
237
165
192
218
209
238
173
185
211
158
169
192
249
183
204
156
210
220
194
233
188
226
183
136
214
204
163
255
214
243
272
201
203
189
168
187
190
185
231
244
155
182
207
178
175
179
235
193
225
215
208
178
188
217
226
164
242
238
236
212
204
236
215
185
225
220
265
123
196
228
210
217
255
230
162
189
152
211
240
235
240
195
214
215
199
191
237
197
148
170
139
200
174
251
170
169
218
189
149
184
183
261
234
244
125
178
234
254
193
177
250
222
146
201
188
206
158
183
211
243
213
221
221
137
193
186
206
169
207
204
178
171
242
192
176
234
151
168
149
177
159
240
197
171
211
176
155
149
222
196
151
211
173
239
201
206
163
197
247
138
161
214
181
192
221
192
219
236
147
221
168
244
146
165
236
184
172
150
148
198
200
164
245
226
188
193
160
182
233
120
166
182
208
176
125
248
198
221
215
188
252
243
266
119
199
224
208
205
204
187
175
168
183
222
269
141
162
191
210
206
174
209
210
269
269
200
145
208
154
184
144
168
149
161
201
227
186
216
245
194
205
147
207
211
135
171
179
204
208
235
235
184
230
245
191
158
169
190
213
199
217
202
174
225
227
213
205
162
226
155
222
218
209
262
212
149
141
255
180
215
194
191
198
176
203
157
216
203
210
143
206
217
238
97
190
190
220
260
163
216
186
136
205
204
172
200
184
165
234
202
163
181
214
198
184
235
232
206
162
139
138
143
153
224
259
233
187
183
183
149
245
114
185
193
230
250
197
192
158
186
152
190
213
216
222
221
214
188
189
169
155
220
189
149
240
214
163
207
187
219
162
226
202
257
225
211
178
226
232
207
189
198
189
204
224
222
206
267
202
147
208
213
185
252
211
177
169
212
199
234
163
175
203
211
222
162
241
188
246
197
177
194
131
221
271
176
175
237
217
211
215
273
150
185
232
214
225
193
166
231
184
287
198
165
189
209
174
229
225
191
165
241
240
172
200
235
198
212
227
193
215
200
153
220
247
229
155
261
244
109
178
209
258
257
186
192
191
166
216
199
157
167
229
212
142
208
233
248
233
164
239
138
245
256
189
184
171
234
232
216
197
249
170
203
244
193
180
245
268
151
202
227
233
197
181
214
189
153
235
168
175
128
204
150
251
254
192
251
256
211
173
188
160
180
179
218
177
227
190
217
250
242
228
264
190
217
212
214
208
175
205
176
153
217
178
188
266
205
228
195
253
152
155
195
189
232
253
219
210
219
177
176
248
186
201
198
155
182
164
200
132
246
218
244
161
208
196
187
180
240
182
178
250
221
160
225
176
157
162
180
200
205
171
222
172
242
201
231
172
174
233
245
253
201
182
170
211
213
194
159
213
192
137
156
164
256
223
261
142
151
233
187
248
154
185
194
167
248
149
251
191
222
136
186
210
176
222
211
183
241
173
197
165
276
235
178
219
226
131
168
174
182
230
159
183
185
139
166
192
241
247
238
199
193
218
203
181
230
164
205
201
150
200
225
210
259
225
215
196
228
198
194
256
183
167
263
210
206
186
242
168
145
192
193
180
211
205
166
223
244
219
208
149
202
138
227
216
212
191
131
214
227
176
222
154
209
206
203
258
163
140
229
170
226
209
201
232
116
169
243
172
207
144
174
206
112
157
170
216
196
216
178
232
211
175
180
158
228
227
199
187
149
224
210
163
122
133
225
281
235
226
178
119
205
244
173
238
186
221
213
175
201
227
193
199
208
234
173
184
225
206
212
220
203
212
176
203
230
232
214
240
231
289
205
202
181
230
166
291
177
158
209
174
164
236
237
193
244
188
206
163
241
164
153
191
240
134
204
169
227
188
216
225
218
212
186
181
271
199
277
221
259
238
220
249
186
189
177
214
212
241
220
212
209
177
158
187
191
174
233
206
137
182
231
238
206
201
228
214
238
189
176
195
144
188
203
158
200
210
173
204
262
179
235
229
175
177
201
194
212
217
211
255
220
212
201
179
201
194
264
207
208
210
189
220
205
195
221
150
215
181
240
242
209
219
197
183
239
199
244
194
154
192
180
175
160
149
193
151
226
176
197
255
178
215
191
207
254
215
195
182
155
237
176
215
244
239
242
190
253
216
193
122
218
249
147
168
188
209
181
170
245
235
175
164
190
196
145
229
203
229
212
171
211
226
203
243
222
186
155
251
222
209
217
165
186
209
218
223
216
146
159
230
205
159
189
227
187
211
217
220
252
196
191
185
159
247
241
157
188
141
260
197
242
138
207
190
211
170
214
223
217
262
189
198
202
191
199
164
206
130
202
228
194
170
151
208
128
236
188
215
236
174
191
144
205
110
202
224
194
261
175
222
232
218
212
201
186
188
152
146
179
206
220
232
182
226
230
254
86
150
175
247
211
221
188
207
187
217
165
275
150
149
214
215
177
226
185
260
191
131
202
229
190
157
215
160
219
210
220
186
220
269
241
218
162
222
179
204
185
166
186
217
150
191
115
183
203
199
165
228
207
181
249
176
178
254
232
188
234
231
215
209
184
240
269
199
196
226
186
238
200
215
182
154
247
211
218
192
171
190
178
221
202
215
223
215
227
134
209
261
266
164
197
225
187
258
138
170
229
142
224
147
211
208
217
202
249
186
255
208
193
232
167
171
155
192
201
172
163
220
184
201
170
227
163
226
208
191
269
241
198
200
230
246
207
188
192
163
249
225
180
158
223
157
191
235
225
171
145
230
208
228
166
193
169
210
216
194
141
205
214
204
168
244
166
201
188
219
223
200
219
239
214
186
141
236
227
142
221
177
222
222
206
236
191
222
220
147
200
159
255
217
219
154
209
213
195
164
255
189
198
220
180
187
210
183
247
193
230
268
208
159
292
178
242
229
213
140
212
201
173
250
228
172
137
218
213
177
184
241
179
238
244
241
165
188
214
199
163
227
176
172
170
181
226
154
213
141
218
181
170
228
169
202
197
165
197
196
208
223
175
219
232
180
183
200
155
184
201
164
162
183
115
220
167
202
219
218
176
216
234
141
212
167
163
222
188
186
220
146
259
224
238
246
236
201
196
204
206
186
197
179
214
236
194
162
226
159
212
151
214
234
202
184
188
221
228
160
243
213
185
167
184
183
177
205
188
236
139
175
182
163
198
208
217
201
222
158
253
255
220
205
219
219
242
175
202
228
221
227
199
190
231
252
187
189
266
170
181
243
249
257
226
187
246
220
228
211
258
136
196
208
174
205
165
266
233
153
221
151
212
212
242
242
259
179
239
206
222
170
145
230
185
135
200
261
229
272
246
208
199
211
223
196
142
209
203
255
198
248
142
209
270
196
176
250
127
232
210
167
231
209
168
171
176
192
151
202
173
267
216
241
175
230
193
212
172
178
170
202
218
139
262
238
227
205
176
263
214
254
135
246
227
164
159
252
162
216
179
224
218
231
204
169
179
186
209
221
221
146
185
207
145
204
147
244
240
156
258
250
208
182
101
231
167
139
165
201
217
169
210
186
208
245
152
179
188
261
219
259
309
184
196
187
187
152
243
192
185
159
187
223
229
143
168
164
233
196
182
188
214
217
250
166
154
107
161
183
231
148
235
191
197
237
250
163
215
203
168
213
165
210
194
234
193
197
200
236
210
203
210
274
198
185
141
191
157
186
214
208
175
219
226
211
191
117
141
138
198
222
215
228
150
176
146
211
189
195
216
191
171
179
203
195
230
152
256
166
153
216
177
175
181
235
231
185
199
268
194
230
240
201
150
243
198
224
166
214
173
216
191
196
230
220
255
200
203
231
270
243
164
124
214
216
224
180
199
147
191
176
136
213
262
235
205
221
253
153
193
181
247
163
222
137
174
182
233
187
179
135
160
281
214
279
141
186
227
175
178
137
184
100
199
248
146
195
229
223
213
255
223
205
152
258
187
190
202
202
251
148
158
167
193
177
205
227
161
259
189
160
212
143
264
206
116
189
174
259
189
201
236
252
151
217
121
206
244
232
196
209
196
185
193
209
128
194
180
194
179
217
229
195
162
223
154
194
196
268
193
160
172
205
182
191
191
196
212
205
169
196
193
249
262
177
191
201
158
222
206
216
180
196
180
242
235
231
180
244
189
191
170
167
201
274
205
142
224
164
185
191
251
282
227
241
185
235
217
208
246
230
236
168
254
249
221
182
169
193
147
218
160
204
208
235
231
211
172
192
213
198
224
212
132
212
130
174
202
252
251
264
169
227
252
150
236
249
157
192
172
191
224
240
174
164
226
245
155
228
207
199
154
149
259
175
154
183
223
222
221
185
233
216
231
242
170
213
182
244
136
195
243
139
230
258
263
167
247
202
200
207
178
199
217
199
219
256
108
210
144
263
172
169
197
218
197
238
215
136
221
211
215
222
190
149
211
192
169
157
206
209
206
195
169
206
199
160
249
215
245
194
173
222
239
193
213
242
230
226
251
209
190
229
169
128
138
191
257
234
211
194
237
197
201
227
189
149
148
241
238
126
132
178
159
253
192
223
209
208
206
229
135
219
155
241
145
199
174
225
189
241
181
288
176
230
213
151
262
196
272
196
146
227
115
186
201
128
175
216
215
165
191
232
219
188
218
206
228
157
228
244
223
211
230
235
219
199
199
198
165
175
187
187
236
145
174
207
194
235
214
218
239
240
216
215
207
235
209
168
241
182
150
137
191
202
178
178
142
138
246
178
236
238
175
213
219
229
200
183
165
190
214
245
183
183
222
177
188
227
265
199
200
184
182
155
149
199
193
184
220
140
190
210
212
236
206
243
217
203
185
201
190
257
202
178
133
168
191
169
219
233
216
163
217
262
196
225
183
152
223
222
214
193
201
203
227
176
167
239
206
276
251
254
204
215
177
132
157
205
265
252
135
170
184
181
181
176
182
196
250
204
206
178
166
147
211
249
210
204
189
203
237
148
212
186
214
169
162
256
205
213
111
227
179
162
231
247
182
196
206
197
146
208
144
176
152
212
194
174
218
170
197
196
214
245
172
223
181
139
193
210
148
254
196
207
252
250
244
180
166
218
161
232
180
237
159
221
217
210
179
248
217
193
171
254
206
223
217
172
208
197
250
178
173
205
206
201
261
191
232
210
143
218
210
227
133
241
161
234
197
205
152
177
170
176
184
204
212
149
160
215
227
187
224
235
195
166
220
197
253
251
188
198
184
175
138
173
246
227
131
140
191
160
196
212
216
204
227
188
219
230
203
226
190
220
220
190
115
221
267
156
174
204
187
162
165
216
168
232
228
190
221
226
193
147
178
188
234
195
257
189
149
204
197
204
120
205
198
177
226
209
182
184
188
177
147
196
261
230
206
196
226
195
186
183
197
198
180
173
220
193
240
204
184
237
199
201
212
246
233
181
234
232
226
187
305
162
164
173
157
228
178
233
180
155
123
182
229
211
226
191
164
253
178
169
186
216
194
235
207
210
139
234
271
190
196
167
175
192
168
228
252
227
247
211
135
196
172
178
210
233
195
236
166
110
160
213
151
183
196
230
166
205
167
203
238
177
191
244
209
148
176
211
223
153
222
218
243
261
217
176
198
217
244
193
222
206
219
187
253
186
216
244
209
203
195
185
174
184
254
203
163
143
217
207
187
196
226
200
249
107
200
190
157
207
144
133
215
161
163
223
187
188
169
188
178
234
220
170
80
217
219
141
198
148
173
212
193
255
177
198
226
248
236
91
241
142
254
231
219
228
164
265
249
215
175
175
238
224
149
215
156
230
207
172
211
168
182
231
148
133
152
209
250
249
195
176
222
165
230
181
259
216
178
225
194
198
176
290
204
200
228
203
216
200
198
191
173
211
186
172
192
203
225
172
202
183
203
214
219
277
192
196
200
168
164
183
191
251
178
172
172
255
171
260
186
182
237
216
173
198
230
178
216
104
190
151
194
162
214
193
222
189
157
212
246
170
151
237
218
229
209
224
218
138
162
215
235
218
159
241
248
224
211
151
216
258
231
193
167
157
187
261
210
274
158
180
173
195
210
203
204
153
207
192
248
234
175
195
127
131
260
217
217
225
183
213
187
217
215
184
176
232
156
246
191
219
239
224
167
235
216
214
256
222
139
258
227
186
201
222
195
228
177
219
272
209
212
181
226
202
185
268
225
164
205
170
179
160
228
194
174
150
218
114
216
268
238
212
165
228
210
205
99
190
239
234
230
189
167
163
190
128
192
121
193
223
177
148
236
224
185
218
253
254
194
203
211
225
179
195
210
224
149
153
180
170
217
232
252
265
258
192
154
175
199
220
236
228
192
239
225
208
178
190
179
220
227
200
186
167
243
190
223
189
201
249
194
205
215
152
199
231
209
161
156
234
247
182
118
134
254
174
187
171
230
242
243
137
173
160
217
190
200
247
189
181
174
258
243
186
214
153
149
236
111
214
248
176
175
164
239
197
190
187
220
232
182
191
126
229
204
187
182
225
162
183
243
161
247
194
159
244
213
178
195
196
199
203
180
171
251
242
201
231
238
155
162
204
138
224
231
161
176
154
196
210
206
217
189
234
233
231
229
159
200
224
247
121
178
153
250
239
230
233
191
209
245
225
240
213
269
155
177
214
133
166
186
169
222
192
234
212
205
223
233
210
153
235
144
212
255
218
216
258
173
216
250
194
124
183
228
224
200
208
184
225
209
273
226
219
195
147
173
213
266
161
213
171
243
153
249
231
197
262
173
231
178
133
206
179
219
235
220
282
234
163
201
172
195
172
180
143
204
151
192
233
270
173
231
193
177
209
181
227
183
198
185
167
250
157
181
230
258
195
221
196
215
162
214
266
244
143
218
207
149
183
208
188
166
143
125
148
175
189
242
176
226
230
176
226
217
205
199
229
265
224
188
209
179
180
211
194
195
199
227
196
158
166
204
208
191
148
204
216
187
172
224
217
184
240
225
215
192
208
176
201
205
167
251
183
218
178
222
119
227
151
212
138
211
215
268
147
186
155
169
245
171
233
221
253
167
250
193
134
175
183
228
144
196
169
204
187
233
163
212
257
192
249
185
242
205
151
181
139
169
210
214
168
220
197
179
204
193
167
252
166
256
195
208
168
207
196
256
214
229
185
167
244
191
156
205
245
206
142
246
210
266
255
144
209
177
188
249
207
218
216
230
293
181
233
174
239
170
198
160
161
184
177
251
202
169
225
205
182
207
187
185
154
191
206
227
223
133
231
178
142
188
186
205
174
185
177
196
140
165
202
180
137
182
113
190
208
178
217
153
155
194
190
174
155
235
242
191
152
175
199
172
204
263
197
186
234
192
252
249
185
244
205
213
229
219
250
159
238
153
212
219
250
209
155
212
213
178
183
216
167
226
182
209
210
262
225
223
219
177
176
211
206
105
163
218
216
205
239
233
189
171
209
159
231
180
220
208
173
146
165
234
184
214
215
217
206
235
233
204
204
254
191
151
222
227
160
250
148
168
175
236
140
178
282
237
265
175
259
169
198
231
169
179
161
206
201
200
150
195
216
207
210
183
217
184
152
140
189
221
212
221
211
195
161
237
144
221
218
219
212
204
227
206
264
200
181
216
106
118
221
166
196
226
260
197
176
200
176
173
163
242
213
167
245
204
178
180
79
227
218
216
192
164
161
223
203
202
235
203
143
214
163
229
141
254
167
176
136
199
196
156
240
257
193
185
161
247
217
279
228
217
208
211
110
199
199
236
200
186
221
149
210
160
135
238
222
273
200
219
164
169
244
230
171
202
174
140
170
174
193
185
170
179
202
185
162
199
205
233
233
257
177
177
195
220
170
185
183
134
136
227
247
152
204
230
160
132
247
181
168
171
144
247
229
241
258
192
206
221
195
147
227
154
215
191
237
236
172
195
182
248
184
160
192
141
189
198
211
121
154
197
170
211
191
215
145
207
236
174
175
215
158
168
157
240
217
217
223
243
160
160
129
146
174
137
219
211
168
166
197
207
234
192
203
186
174
211
148
255
166
171
221
148
218
195
154
196
210
189
120
169
219
197
218
192
178
163
226
164
171
150
213
220
194
166
190
181
199
256
216
240
170
180
203
187
185
137
146
189
223
168
200
280
240
230
188
229
229
237
146
209
133
205
227
179
207
168
221
254
219
214
242
214
191
208
250
258
200
204
247
223
161
185
210
151
172
158
237
243
177
224
151
200
222
241
222
145
203
173
194
190
191
176
148
168
179
162
188
156
177
209
241
156
145
216
211
177
103
154
177
247
167
245
175
235
196
215
167
208
175
158
240
254
207
253
232
131
253
186
216
189
199
212
190
193
220
182
185
206
179
208
188
212
257
235
194
246
170
220
203
215
221
218
217
218
206
131
195
219
155
192
193
158
174
196
144
231
238
165
236
181
233
285
197
161
150
192
198
286
185
207
208
167
177
235
235
222
197
178
220
161
151
137
226
201
184
231
259
194
254
138
197
191
229
206
165
205
193
221
215
148
230
238
205
201
248
199
245
219
182
219
203
193
213
198
213
199
243
243
232
147
247
168
221
99
190
150
276
209
214
156
245
185
230
226
223
107
204
200
192
200
139
186
152
144
177
150
197
172
256
233
209
208
251
163
145
194
185
222
213
170
179
151
129
162
240
212
212
157
241
155
171
121
175
158
206
135
148
207
129
181
198
206
217
189
236
248
253
274
209
207
180
205
170
209
172
257
199
236
218
214
162
213
191
187
212
257
174
170
184
183
129
167
212
98
224
248
211
222
219
224
160
182
177
246
115
210
194
261
148
159
164
194
253
229
248
183
192
230
213
199
241
206
199
218
193
199
242
229
221
178
188
145
134
187
197
278
200
207
183
225
226
105
203
267
243
151
214
233
257
246
171
193
208
203
241
199
225
136
170
214
190
228
248
175
140
191
225
202
167
190
203
249
132
145
214
190
245
118
207
141
119
177
163
133
202
187
220
208
195
185
185
194
252
253
196
220
162
198
253
184
193
216
139
182
210
117
197
244
209
266
140
226
229
230
179
231
218
169
203
210
210
205
240
236
187
197
230
205
217
200
215
159
178
204
183
150
190
251
169
186
127
198
197
177
228
226
164
224
173
264
263
218
222
166
181
164
198
235
196
187
189
166
234
198
260
244
231
216
209
163
169
224
261
174
199
188
226
239
237
175
213
181
210
233
204
188
230
155
240
155
176
155
196
196
240
169
214
263
162
221
214
194
242
250
173
195
208
171
157
267
277
168
183
204
157
187
188
242
208
172
204
151
256
185
124
189
168
168
258
265
165
223
200
203
159
220
214
140
227
202
144
218
123
202
117
237
181
203
244
217
184
212
160
204
216
257
170
205
204
197
186
184
165
171
157
226
252
161
221
151
228
247
168
199
231
241
216
198
191
190
207
198
188
219
123
204
99
201
222
171
161
236
116
273
179
224
215
161
170
212
106
166
135
215
277
245
195
260
181
225
229
178
243
216
227
183
291
237
182
232
160
177
207
222
220
193
169
210
231
228
242
195
226
201
261
253
194
269
220
141
174
221
239
176
209
283
214
176
207
187
205
211
217
201
232
176
223
188
197
221
197
126
210
214
214
169
217
158
263
182
186
153
254
178
133
234
216
225
168
199
180
189
206
238
198
208
183
253
133
223
247
205
145
230
209
258
205
229
199
205
235
197
198
162
151
203
232
294
229
167
209
241
175
195
216
206
197
255
236
247
186
235
197
170
183
186
185
230
174
167
124
255
206
220
196
161
209
231
223
251
134
165
157
179
237
220
238
188
171
148
193
195
273
178
159
208
157
248
196
217
195
142
226
133
185
210
183
234
157
222
262
163
227
156
248
163
163
256
202
205
213
108
258
162
229
236
234
203
142
188
183
178
177
210
122
261
292
238
232
254
180
236
202
180
200
193
186
206
216
220
226
225
232
210
246
199
189
220
219
240
172
243
189
174
135
177
141
191
169
248
198
148
194
157
166
191
257
187
204
249
181
209
188
198
171
203
246
220
237
192
169
220
177
132
203
227
182
239
212
164
222
209
225
211
226
270
197
241
193
116
270
205
186
199
165
180
206
181
238
203
280
239
237
215
181
175
248
217
174
223
218
164
187
223
144
91
193
206
217
147
173
167
269
203
199
231
175
173
248
206
217
170
203
220
225
193
237
180
244
197
121
183
235
200
228
208
214
176
223
190
174
264
230
191
207
200
178
194
191
182
147
157
190
166
245
223
134
244
232
224
186
262
210
173
211
210
248
117
224
188
188
176
212
251
241
230
230
217
230
214
165
158
189
153
182
181
177
201
231
181
168
214
156
195
166
240
242
166
215
244
194
237
193
178
206
219
191
196
236
211
231
177
159
187
227
231
212
147
243
218
204
169
204
252
224
152
228
223
219
172
227
155
192
237
233
210
139
204
204
194
205
235
168
153
120
152
160
211
221
167
208
175
209
185
246
169
213
208
146
221
206
159
174
161
214
240
232
155
145
218
178
201
214
198
210
170
238
200
221
205
243
195
191
170
235
268
233
160
238
210
177
215
216
207
212
211
145
187
159
204
199
178
184
242
137
249
176
234
197
255
139
201
182
220
161
176
249
220
193
174
220
254
218
271
175
221
205
162
200
226
156
223
159
262
144
245
204
175
178
136
189
241
169
134
160
238
168
194
224
207
236
222
181
254
206
188
153
164
176
231
199
282
206
226
244
178
228
232
177
259
171
151
191
183
190
181
180
221
261
253
181
206
246
188
240
211
163
212
198
176
183
196
154
171
128
196
204
177
173
222
201
242
221
178
224
117
224
218
221
202
157
205
198
214
217
295
188
212
221
181
183
143
131
244
207
238
265
196
194
206
182
171
209
211
158
207
152
192
225
212
238
292
240
199
231
208
188
156
263
192
191
205
221
168
150
199
231
197
172
223
208
211
219
225
236
215
214
175
240
226
188
235
195
200
151
116
236
183
242
217
214
188
214
163
209
209
228
235
215
217
202
185
232
198
203
256
207
268
199
129
167
173
201
216
135
205
204
197
165
236
198
212
206
132
286
287
183
129
226
206
195
222
153
246
199
158
241
183
187
146
178
168
159
206
178
236
160
215
232
223
214
201
228
212
214
184
188
215
176
208
237
174
181
254
197
226
206
199
189
242
218
182
180
163
196
244
188
197
204
183
143
191
221
185
175
182
173
185
281
190
212
186
199
234
135
192
226
197
172
202
161
132
258
202
206
192
222
213
191
144
236
237
176
210
189
223
224
160
188
146
149
194
238
232
200
141
226
163
223
177
226
218
197
185
213
216
244
174
198
210
234
181
184
203
196
192
113
257
258
205
186
164
225
141
242
238
148
189
197
255
183
267
175
236
193
170
205
151
153
160
163
196
221
167
199
221
258
276
221
149
193
158
207
256
288
202
153
220
192
190
264
240
267
167
224
216
205
159
177
216
169
198
216
198
179
159
198
217
121
156
210
197
212
198
123
165
167
153
183
217
234
197
194
180
157
211
207
249
160
181
185
206
258
167
208
189
262
168
263
205
239
224
221
217
222
188
162
166
140
174
143
207
217
211
178
260
185
172
219
291
212
214
146
173
162
227
172
220
152
211
223
171
221
236
218
223
176
180
175
188
216
204
191
140
142
231
182
159
232
224
214
195
169
198
200
205
194
236
199
132
101
222
216
189
208
254
210
220
166
216
150
191
130
147
231
249
235
212
224
159
198
177
210
223
177
139
240
187
221
188
214
187
217
178
239
187
150
247
197
172
197
228
212
122
237
228
259
205
188
121
177
169
194
181
197
231
170
182
171
243
219
178
160
236
188
187
207
206
229
233
178
189
227
191
145
216
106
138
179
237
226
212
156
176
210
205
117
214
234
251
201
249
154
210
246
193
166
218
192
265
274
218
203
222
235
205
190
202
207
146
189
147
204
196
277
159
253
229
228
226
193
215
250
252
205
239
218
215
223
200
215
224
180
168
203
220
109
182
226
202
218
229
206
186
204
151
241
150
228
276
234
191
157
189
166
220
149
247
193
184
251
216
211
228
210
170
214
216
223
225
194
259
263
236
177
145
201
212
148
159
131
240
232
229
206
215
177
190
248
168
188
196
203
123
233
178
238
187
194
231
197
209
230
182
265
196
194
211
177
206
234
253
174
235
240
171
212
224
189
194
266
228
230
223
225
219
174
205
198
200
159
207
211
242
164
186
231
161
226
208
142
218
126
191
226
193
207
174
167
232
195
225
203
247
176
162
213
231
190
239
202
140
109
232
198
193
233
226
251
217
195
258
155
201
212
197
217
281
208
162
214
239
157
147
175
189
188
144
189
183
187
213
187
186
199
190
181
146
170
151
218
255
227
180
133
220
298
256
202
239
202
186
172
225
186
150
223
179
229
229
224
225
179
201
182
227
203
187
193
174
165
153
192
175
157
259
222
198
213
191
226
199
207
254
146
179
202
195
199
167
181
177
225
235
191
181
192
234
227
184
168
168
239
158
127
202
163
230
201
266
210
225
186
157
216
220
208
208
195
219
222
245
165
205
188
197
252
265
167
205
165
205
234
161
161
154
171
238
191
181
199
197
208
208
192
183
185
212
165
261
237
236
213
242
266
187
205
189
178
193
200
234
236
173
232
231
247
205
119
215
231
176
200
154
197
151
224
249
159
208
193
248
232
238
236
241
218
168
261
232
195
187
218
245
234
186
277
184
202
185
166
194
153
227
200
209
242
190
235
201
176
174
197
216
200
205
199
161
211
235
146
196
210
175
191
198
191
279
266
281
207
173
222
198
171
204
251
181
194
187
164
146
145
116
214
203
216
223
227
214
168
278
207
207
219
238
200
209
204
206
240
198
172
259
274
236
157
276
212
144
257
208
191
145
250
182
181
206
211
220
210
209
164
219
238
207
217
224
225
216
245
140
192
176
190
210
211
203
259
246
215
189
204
209
224
209
177
184
168
177
205
197
200
217
193
196
253
236
236
233
216
250
193
213
195
207
200
221
181
224
241
194
232
219
173
163
143
189
90
168
226
220
176
179
189
187
230
245
225
160
213
203
174
186
181
216
152
237
217
194
168
162
189
261
234
236
221
173
216
140
230
248
219
195
209
223
151
182
242
185
123
242
194
122
240
233
189
185
125
226
185
260
196
242
187
210
185
154
183
212
210
142
173
247
206
194
219
265
90
193
208
258
172
231
242
142
148
164
234
265
106
218
187
227
192
223
272
130
201
225
238
217
215
203
203
172
250
217
185
230
263
218
169
235
259
198
237
203
208
266
186
226
198
207
222
156
210
245
179
194
244
175
211
149
140
216
198
242
119
209
159
226
216
162
214
170
217
165
182
175
123
164
256
206
224
191
135
208
212
149
243
163
168
236
131
186
191
122
242
258
188
181
135
247
169
254
232
147
209
254
199
236
217
209
155
156
235
228
226
224
226
229
152
221
176
165
209
229
208
259
193
193
198
127
253
168
221
168
204
203
139
239
261
188
231
203
246
181
208
148
216
177
175
188
162
235
186
186
179
213
171
228
291
242
156
233
191
236
187
175
198
154
201
152
207
138
167
253
244
202
202
173
228
187
253
186
216
185
199
160
168
199
174
179
176
143
212
200
214
226
217
253
163
195
166
190
172
177
205
271
177
182
193
226
131
207
176
173
186
179
160
148
200
185
198
201
163
214
247
262
204
208
237
205
168
182
188
249
169
209
117
191
215
228
129
221
196
174
217
216
199
257
211
212
194
177
116
223
188
170
222
182
146
223
224
239
219
198
180
133
213
160
125
171
148
229
244
197
231
218
243
157
172
207
208
193
259
204
213
146
145
213
182
199
196
172
202
157
154
171
182
199
223
180
159
219
192
198
218
184
200
194
243
271
187
225
228
212
118
153
228
195
246
200
250
197
153
232
208
218
182
225
234
172
243
177
173
192
188
176
246
203
228
225
235
147
214
184
188
197
245
147
231
189
216
193
226
154
143
236
194
221
208
216
128
152
211
230
197
238
229
174
236
168
235
124
170
233
155
165
253
234
211
271
221
169
151
172
176
268
170
175
237
222
171
199
234
196
193
223
233
115
211
169
183
186
185
204
157
181
167
190
185
210
216
215
172
178
178
184
204
215
269
233
175
127
242
278
230
151
266
242
216
196
129
153
234
162
129
152
238
227
152
223
279
134
210
150
166
200
216
173
143
224
184
151
162
180
170
278
161
177
159
262
234
178
249
176
213
187
250
161
210
244
203
168
274
212
248
183
197
143
217
207
171
259
197
237
230
158
120
176
208
201
227
262
253
265
177
187
194
190
209
211
194
202
212
189
259
189
231
193
251
174
243
169
217
195
230
263
236
196
178
194
204
257
244
183
257
252
193
229
202
231
159
238
190
217
173
183
205
226
231
241
169
216
214
229
204
99
168
189
184
198
236
170
207
159
165
231
168
239
198
182
174
221
171
197
187
196
183
217
204
170
258
169
170
226
214
150
168
171
177
139
246
117
191
170
209
199
184
272
173
246
231
179
145
167
185
184
157
166
178
189
191
164
155
205
151
214
178
148
207
217
211
161
173
166
215
180
254
197
236
210
126
209
241
173
223
164
217
230
228
195
192
210
191
174
228
180
179
207
195
115
175
235
143
269
201
158
170
224
217
144
173
185
184
157
223
243
191
217
198
207
184
218
163
247
192
193
132
176
252
240
197
158
202
229
218
206
272
191
209
159
185
223
223
215
190
182
190
202
226
111
213
202
245
188
197
226
148
238
183
186
157
205
198
265
221
176
147
258
150
179
266
210
207
190
169
201
178
156
203
200
162
136
234
184
167
234
217
213
194
180
228
232
164
238
209
177
139
192
195
247
173
217
183
217
210
151
211
206
216
197
229
222
229
207
212
227
185
193
189
231
173
183
222
173
239
210
210
194
248
153
194
218
240
166
189
201
223
202
119
177
157
200
224
139
214
192
207
172
213
219
182
225
166
157
208
203
158
189
143
224
185
263
161
161
142
182
169
206
207
215
200
185
201
216
236
216
194
123
173
259
176
181
202
197
176
235
187
209
197
202
179
177
124
144
197
155
161
200
194
162
196
199
203
237
151
198
137
167
205
218
279
144
187
110
211
200
162
213
250
204
217
197
255
159
215
225
187
234
218
242
241
171
163
188
214
191
161
184
221
194
276
184
241
203
242
210
140
212
175
235
199
220
207
235
208
133
168
219
231
169
220
219
209
229
172
166
181
203
182
233
196
221
181
243
142
144
160
211
214
158
197
165
227
222
235
241
241
191
214
228
183
218
261
158
176
224
200
190
145
234
185
160
165
194
232
213
148
185
201
193
161
236
147
216
146
148
184
209
271
164
210
215
188
173
182
278
169
204
171
278
183
222
244
166
212
128
205
206
178
137
205
211
192
210
235
237
195
188
138
190
174
197
223
267
196
198
198
186
198
191
125
167
209
150
209
230
188
175
218
186
163
197
234
197
241
213
230
256
178
197
227
136
241
141
233
131
256
191
221
195
169
188
111
171
178
174
149
209
137
254
243
172
175
176
193
187
196
186
219
187
153
184
206
170
199
241
160
194
143
215
185
188
217
163
179
182
190
135
176
215
212
235
124
229
201
156
196
257
190
147
217
167
169
206
241
217
168
268
235
178
232
241
240
220
177
218
219
253
212
158
202
227
162
224
224
255
175
228
183
215
206
235
221
168
204
172
206
240
181
218
246
241
194
131
162
177
181
199
240
103
260
172
187
201
226
226
146
222
190
191
218
192
172
231
231
211
241
198
208
224
245
183
200
250
158
248
170
155
201
205
138
180
219
231
179
209
171
194
170
188
205
217
205
194
225
259
215
186
224
233
206
212
163
211
151
179
175
232
237
232
197
226
272
177
207
181
198
310
269
249
236
242
187
263
196
147
221
158
215
242
201
227
204
189
232
181
213
126
161
216
210
203
180
239
233
157
184
215
245
170
217
173
216
195
192
112
237
169
203
206
187
189
220
210
192
188
163
204
185
187
171
188
197
163
195
205
188
206
233
199
246
245
230
218
200
232
155
198
239
233
159
246
204
177
230
184
202
201
204
192
156
223
189
154
202
231
228
217
183
194
139
166
161
171
211
209
212
232
195
191
158
237
260
191
253
195
255
236
211
211
201
221
201
251
179
201
201
162
148
219
146
187
168
248
190
232
181
209
124
161
252
270
279
204
198
191
165
200
176
156
192
226
283
209
227
197
229
186
156
231
218
224
161
210
211
203
171
244
204
182
167
163
226
189
214
187
238
218
201
181
212
231
220
174
190
183
202
148
241
223
229
181
175
212
170
246
175
184
252
209
183
246
251
220
215
232
201
140
229
201
220
239
214
191
143
118
228
210
212
273
178
255
235
150
229
248
180
164
144
205
185
249
177
195
190
230
210
197
213
199
192
229
263
255
223
213
201
232
252
217
200
227
243
258
186
237
183
190
157
208
215
192
199
161
230
158
204
138
165
233
198
194
196
235
156
198
206
237
180
217
212
220
247
195
146
211
168
233
221
242
250
173
227
229
162
228
170
200
211
221
161
231
164
148
261
208
223
208
194
263
185
158
246
215
192
205
253
210
225
227
179
236
229
262
220
162
101
206
196
179
203
200
235
130
205
256
213
187
233
213
189
183
163
226
243
195
147
246
220
195
214
186
209
176
194
211
225
205
210
187
214
176
234
269
250
177
255
185
207
256
233
272
191
207
185
248
264
212
175
176
235
167
252
179
212
209
185
185
215
229
165
183
251
226
201
196
152
189
192
243
172
189
205
175
151
218
193
220
232
180
216
207
245
191
218
144
192
206
233
181
217
183
214
201
185
180
213
175
181
241
240
212
174
232
182
255
180
210
163
227
221
226
157
173
190
244
214
195
218
196
218
202
218
202
215
203
185
225
159
209
183
234
191
203
221
232
228
253
181
167
226
171
164
232
188
229
194
171
213
204
182
195
185
174
185
249
173
209
248
227
207
235
176
195
214
216
234
199
165
158
184
151
255
175
222
140
224
180
215
140
202
179
204
205
165
193
157
212
140
166
167
199
210
166
144
222
226
164
202
233
199
179
209
204
136
215
221
117
205
218
237
171
175
244
195
233
228
161
187
118
213
229
123
185
217
164
165
210
218
209
156
264
214
178
197
243
231
178
185
209
213
216
170
214
185
203
250
140
243
181
176
182
150
130
206
205
193
303
249
173
191
217
221
135
231
220
200
268
214
203
203
200
123
234
184
206
165
236
185
217
122
160
193
223
264
238
199
216
118
161
189
132
227
187
217
212
199
185
136
279
225
167
205
152
180
174
239
265
246
200
235
222
199
196
168
170
230
219
272
170
152
196
243
237
215
188
273
128
189
249
229
210
133
212
195
206
199
180
235
155
130
214
175
191
194
188
193
196
260
180
145
190
234
229
186
233
248
197
187
163
194
193
235
198
206
203
235
181
220
183
235
235
226
171
143
190
146
191
234
156
178
203
189
192
240
208
149
218
239
170
246
173
157
207
210
183
178
225
198
214
211
242
223
187
235
190
168
174
206
246
235
237
163
227
150
178
177
193
188
266
171
204
233
168
182
201
224
121
209
199
209
277
239
147
184
232
202
244
133
154
217
193
126
229
232
176
165
171
224
219
182
195
200
162
214
222
173
189
199
195
195
149
191
210
244
203
236
159
184
235
239
224
152
217
209
249
221
235
163
193
169
175
170
214
131
226
240
199
130
231
124
249
173
219
168
158
213
223
150
221
194
185
223
242
245
171
183
185
207
222
210
208
240
228
216
254
191
246
170
246
215
224
230
197
200
225
211
183
217
192
194
226
221
229
256
190
159
217
225
250
184
140
224
207
150
173
238
231
204
133
199
144
199
233
141
167
228
201
194
191
254
147
223
216
237
129
205
189
162
202
183
140
173
219
138
207
220
272
200
229
200
238
206
195
226
248
202
275
197
240
168
189
229
225
211
206
248
226
207
191
172
166
193
162
239
248
146
232
234
235
225
205
200
188
163
196
152
219
232
220
210
250
186
224
233
201
237
182
228
183
189
196
183
182
198
147
165
222
232
232
142
190
213
220
210
264
213
251
257
234
215
210
218
182
172
177
206
256
207
206
180
280
239
213
236
212
209
220
141
228
220
170
199
161
234
209
219
188
227
244
209
206
254
203
215
262
215
179
139
198
123
163
204
232
202
172
218
222
187
239
188
240
202
213
246
164
231
248
160
237
205
230
185
172
173
182
217
244
264
234
196
191
205
160
268
176
225
171
176
179
249
189
232
206
207
215
188
184
260
240
207
176
240
153
213
203
191
201
199
189
169
202
215
219
193
243
167
184
203
212
220
219
210
153
164
212
146
194
196
220
228
246
261
195
149
243
199
225
228
164
211
199
258
172
231
166
160
156
210
132
224
223
204
192
186
206
181
196
241
153
169
201
178
189
268
205
209
204
254
207
236
221
179
251
228
181
116
200
192
179
259
182
248
191
172
240
253
177
166
213
158
172
196
184
267
173
202
245
123
171
155
200
182
213
171
202
202
216
172
219
232
185
229
204
159
193
244
164
193
167
203
236
153
183
260
154
215
239
158
257
212
148
265
139
151
211
170
215
177
184
202
185
174
178
213
215
196
143
143
200
188
152
229
222
140
170
226
262
194
214
189
237
218
199
202
234
152
131
219
234
210
221
130
229
185
257
215
233
139
196
250
178
215
236
172
226
175
246
164
212
208
196
229
186
177
183
236
195
220
209
221
210
219
210
170
215
198
135
216
222
253
245
200
166
216
188
238
237
254
246
156
244
221
243
183
160
243
181
241
246
157
220
197
306
219
181
169
255
181
242
195
223
244
206
229
268
236
278
210
155
190
180
176
239
155
201
213
214
176
210
187
205
177
231
176
177
200
194
238
215
214
211
166
229
187
262
211
219
236
187
193
186
268
195
226
202
173
173
234
215
285
244
184
201
222
181
209
249
201
139
176
180
161
165
193
176
226
156
237
154
146
162
182
183
189
177
178
168
217
182
174
200
188
225
201
198
186
210
132
200
235
261
202
156
265
153
197
225
193
170
242
222
164
174
167
210
158
224
240
175
184
168
189
183
232
177
169
224
201
211
231
230
194
137
201
201
150
213
256
169
210
211
283
234
157
171
222
284
186
197
218
212
147
239
226
248
179
221
226
228
239
236
241
194
221
249
182
175
218
187
189
247
176
215
145
182
188
136
233
123
139
231
137
213
233
162
171
223
257
210
139
146
226
107
225
172
208
160
161
163
209
176
272
215
200
128
240
221
148
148
151
207
168
186
179
201
198
220
220
142
174
165
230
231
166
199
144
156
206
194
173
168
200
196
175
249
209
215
110
195
112
178
202
153
235
152
189
177
166
183
267
183
223
133
205
234
231
215
220
212
224
173
157
250
234
172
197
251
154
210
186
284
198
186
185
242
188
217
172
183
183
129
197
152
231
225
185
153
164
139
178
199
163
197
249
176
252
166
158
143
213
212
232
230
209
183
139
183
207
175
216
206
254
233
203
228
221
211
194
159
173
140
139
212
259
220
156
202
194
182
232
179
207
227
210
167
155
231
165
161
101
203
212
197
175
230
154
219
230
243
210
207
222
177
254
213
198
153
195
226
120
193
224
270
179
215
159
236
196
177
234
166
197
223
132
208
216
165
209
161
182
204
151
246
247
210
201
239
168
221
189
275
169
190
194
163
230
176
180
118
153
162
221
218
169
156
176
149
185
199
206
197
212
196
192
205
231
259
131
200
190
173
199
192
155
264
223
138
229
216
210
172
273
242
213
171
226
167
200
176
193
196
131
144
202
209
194
169
169
241
195
167
215
279
210
159
198
218
218
196
208
215
191
229
202
196
156
207
221
222
207
277
95
192
170
231
180
257
228
163
248
210
190
155
179
218
217
166
248
118
168
236
222
223
150
256
270
253
195
147
250
202
172
230
166
266
185
225
203
203
216
204
187
189
212
200
229
156
188
219
159
181
173
266
199
226
212
137
227
243
213
197
180
174
153
218
205
237
194
191
221
175
214
249
176
228
211
206
185
149
164
198
175
229
209
181
237
167
197
148
198
235
202
225
203
146
232
167
227
243
130
162
200
225
175
237
187
140
193
182
214
97
192
195
222
175
213
188
178
190
172
181
199
191
205
232
181
203
199
143
168
239
200
222
187
205
90
252
251
153
185
173
248
158
206
139
166
216
214
176
215
254
209
260
197
187
154
167
201
182
222
203
252
227
236
174
242
154
217
178
218
175
233
190
154
186
180
203
236
272
168
212
246
185
256
212
233
133
165
237
212
175
217
194
183
146
178
237
218
177
193
218
173
148
193
150
175
220
172
191
237
213
232
179
128
169
134
208
190
211
190
204
231
219
227
215
205
236
224
133
183
166
218
185
142
174
111
203
235
154
201
193
189
189
179
231
206
132
270
151
218
193
188
197
169
262
226
242
137
205
171
226
207
221
230
223
239
228
237
238
181
219
173
147
242
225
193
174
252
219
185
186
248
190
211
169
176
214
176
188
138
172
172
179
166
186
263
190
258
140
209
165
175
201
195
154
218
192
223
240
206
135
188
243
196
169
164
193
263
150
212
165
211
179
197
194
196
203
200
171
127
142
218
238
172
132
173
141
215
178
101
154
219
225
250
216
246
193
159
196
179
235
300
197
222
230
237
142
233
221
123
188
153
230
182
229
176
161
150
219
223
160
257
170
246
192
220
208
157
194
172
185
232
207
264
140
221
138
208
187
237
217
217
165
158
158
159
154
197
223
209
204
157
134
185
241
181
137
191
177
159
204
165
232
243
220
142
213
224
214
220
175
170
188
204
227
145
207
189
203
245
199
180
244
250
193
196
184
218
200
196
216
235
183
158
205
214
138
194
161
202
193
182
288
236
201
213
151
209
225
153
216
217
143
205
207
156
256
220
231
208
219
207
276
228
178
228
125
141
235
199
233
124
187
161
203
167
232
250
214
200
159
249
205
198
127
206
207
204
267
223
127
271
149
174
191
190
175
136
207
212
250
154
173
247
241
198
155
287
206
175
125
208
217
215
164
185
180
197
199
203
227
134
220
183
221
186
177
278
157
205
229
227
209
179
211
240
222
245
194
198
138
188
205
212
213
139
209
207
173
180
240
214
248
216
180
228
196
190
205
225
179
170
255
187
163
182
194
190
211
218
191
154
182
165
232
173
217
167
215
162
193
203
283
191
156
181
190
178
152
211
230
216
171
137
228
209
235
240
218
187
190
151
229
220
245
217
205
202
239
216
270
184
268
217
207
215
184
197
206
100
250
196
247
178
234
198
181
166
219
163
142
202
256
159
203
232
143
163
212
242
169
153
194
133
209
154
134
173
180
186
279
154
154
231
175
149
164
258
183
174
159
169
204
247
174
178
155
204
186
254
189
215
176
243
236
242
204
156
257
236
161
184
213
253
161
155
173
236
205
196
211
250
214
195
162
180
179
239
152
204
174
225
144
213
157
153
218
190
172
209
197
200
194
188
179
196
213
193
258
206
193
215
230
192
167
209
172
178
153
206
227
229
168
186
240
167
171
240
187
206
209
217
138
232
184
173
240
217
207
146
221
259
254
209
242
209
196
173
173
206
203
179
150
117
156
205
212
226
209
190
224
123
192
165
177
222
236
193
222
194
199
203
195
156
228
150
190
170
247
198
265
190
183
226
239
204
245
189
174
131
200
249
203
137
186
249
195
249
205
198
184
178
162
245
214
244
145
173
195
176
148
240
196
189
254
166
148
184
191
251
194
249
222
204
218
224
189
153
189
177
215
201
178
153
201
205
205
198
162
261
204
184
137
176
178
258
221
185
219
206
238
169
229
171
167
215
185
230
188
164
124
169
154
231
237
178
176
210
240
189
231
233
175
224
248
206
223
214
227
148
220
159
133
139
197
160
253
236
196
229
198
164
214
200
186
216
163
223
236
181
199
228
275
164
265
246
103
167
175
265
134
211
200
199
186
201
248
219
247
202
234
204
213
194
158
215
172
197
242
169
176
223
159
170
188
218
220
217
237
221
206
223
234
127
233
175
213
213
196
245
223
195
161
222
213
220
207
254
194
211
208
188
256
184
162
196
214
178
156
187
201
105
225
248
158
207
223
161
156
227
275
180
157
205
183
181
231
210
168
180
225
219
215
207
252
213
180
191
182
205
152
184
237
156
149
204
215
226
179
183
213
234
163
245
218
214
165
235
219
215
174
222
238
176
219
249
177
216
173
214
227
201
223
219
248
176
226
209
172
253
208
219
192
245
172
193
256
229
187
189
133
215
178
156
158
180
225
184
196
139
194
240
179
217
220
178
206
149
124
215
186
183
178
201
199
107
208
179
207
160
248
208
215
182
133
221
195
204
268
245
190
192
190
199
139
231
217
219
251
223
216
232
222
194
189
187
200
240
232
217
199
176
158
196
187
164
169
191
164
204
167
132
217
213
220
241
143
158
203
274
228
207
234
140
190
207
218
168
146
222
193
124
191
251
222
251
177
205
182
241
206
169
216
246
186
220
151
171
193
270
193
230
221
252
151
144
170
215
238
148
149
154
238
180
197
296
210
155
182
245
208
207
177
215
193
221
148
253
220
207
134
195
189
192
180
190
196
204
177
226
250
212
239
189
163
143
213
171
187
159
201
169
205
229
224
219
134
200
234
163
157
229
95
208
203
186
230
143
248
236
225
203
280
178
191
156
212
148
171
211
214
122
213
172
193
166
181
265
257
215
273
265
195
226
211
234
217
141
204
189
268
182
220
165
157
258
200
238
232
153
228
215
197
185
244
196
269
217
178
198
204
196
211
186
155
169
189
209
224
199
224
182
179
232
219
156
166
196
197
211
153
240
178
201
218
160
171
221
188
204
178
171
164
213
155
211
173
235
249
176
158
142
178
232
156
170
212
195
200
214
196
203
154
221
188
187
214
165
224
238
212
187
195
200
259
221
231
225
183
187
277
209
198
194
246
209
187
185
160
185
172
214
156
157
261
234
199
213
222
169
167
226
224
222
154
163
194
171
145
156
182
192
177
212
179
144
143
205
204
209
194
196
260
220
207
162
168
145
154
184
193
161
201
123
184
216
189
158
165
196
227
210
225
233
228
231
211
209
238
172
194
215
214
205
243
212
251
148
168
232
213
165
217
167
170
230
226
196
210
222
209
172
241
164
216
189
204
244
259
219
144
180
170
198
236
163
165
206
234
206
92
247
159
192
196
216
218
167
129
251
198
188
214
238
212
214
183
218
220
181
222
167
244
196
190
179
153
162
174
255
186
194
212
178
193
203
180
203
206
124
159
280
228
216
156
250
277
266
178
184
266
197
133
169
117
170
177
245
257
157
151
188
161
249
206
188
195
229
202
199
189
232
159
181
179
195
128
282
200
193
157
283
177
215
199
209
148
170
179
232
257
217
192
237
178
239
220
258
192
223
248
187
164
242
213
203
205
208
209
212
198
230
219
229
247
192
194
282
247
172
193
176
240
197
187
240
189
137
200
195
209
228
220
165
293
210
119
235
181
256
205
180
209
218
214
190
229
229
155
248
170
187
206
191
196
194
208
207
186
182
182
134
195
226
154
165
151
172
191
238
205
177
212
182
186
158
231
243
219
179
186
176
160
140
241
220
176
223
182
220
198
205
230
166
200
174
132
235
242
181
183
173
147
241
238
198
216
260
130
216
177
221
247
239
256
123
181
228
222
179
219
197
225
228
165
173
166
237
234
189
180
196
197
253
217
146
168
221
246
252
190
160
213
210
229
226
195
154
236
248
187
229
226
281
203
269
222
162
167
236
121
181
221
185
199
223
240
237
209
246
223
223
129
165
241
265
199
169
203
200
223
133
167
164
209
225
127
211
183
236
192
216
238
252
175
204
203
157
214
190
173
218
187
224
224
207
240
216
228
152
198
228
181
248
225
268
198
163
145
178
226
195
216
194
187
141
215
210
180
172
200
237
183
226
205
175
243
161
205
248
250
254
202
153
218
157
239
221
249
211
256
183
189
227
213
168
135
212
192
189
154
186
175
211
186
205
234
176
223
201
182
185
224
228
194
191
177
221
187
151
248
205
222
165
110
237
210
139
215
223
202
244
195
258
237
243
209
165
221
205
257
214
269
195
184
145
155
228
182
258
153
214
237
174
119
201
154
244
230
168
175
264
265
153
192
244
192
145
185
228
228
172
168
249
256
181
232
264
216
195
236
232
232
163
223
271
248
229
185
145
232
183
241
239
240
193
236
184
171
221
167
209
197
227
243
255
206
230
250
218
228
159
182
192
175
204
195
206
273
151
215
238
219
154
214
228
209
174
263
181
135
208
239
178
201
220
200
166
234
227
182
191
183
180
236
224
142
136
210
105
257
235
172
220
240
247
239
158
196
159
211
196
191
210
224
129
217
230
208
159
263
210
173
153
154
196
199
223
259
223
232
174
179
203
211
215
159
212
207
220
200
200
231
181
187
227
195
182
195
147
198
269
243
202
216
205
213
163
274
159
216
189
178
121
136
240
173
204
173
215
240
212
226
196
245
194
193
216
184
246
190
236
255
169
208
210
199
221
205
241
187
216
226
166
191
184
224
217
236
267
220
167
141
198
178
185
138
207
197
238
216
213
168
168
219
247
213
242
163
206
158
136
193
159
248
196
188
197
208
235
231
231
176
152
201
164
250
182
216
239
246
211
188
221
203
242
121
223
159
226
160
203
233
255
183
250
148
179
159
198
236
204
217
211
242
158
176
189
219
215
279
174
207
217
194
234
210
273
212
191
210
241
208
211
172
189
165
216
281
183
191
209
230
207
220
140
222
219
168
237
175
241
229
234
144
214
177
228
240
216
181
210
240
235
211
196
135
186
151
163
200
163
229
224
197
203
259
293
193
205
201
176
197
232
194
150
204
223
157
169
181
207
218
204
207
209
233
199
224
218
218
176
165
194
208
139
227
201
164
152
223
208
225
211
207
204
207
164
230
193
177
192
201
242
154
129
269
187
131
173
185
202
207
284
151
174
211
238
193
196
227
171
234
172
266
260
213
189
145
185
213
247
203
193
240
117
187
230
218
216
136
140
192
236
180
219
199
261
112
231
241
204
192
218
217
186
274
190
193
251
220
229
157
229
201
206
194
219
246
183
246
153
184
174
193
216
163
189
190
183
244
156
248
208
223
198
209
173
162
246
212
203
187
255
204
251
196
214
209
241
153
209
173
166
194
180
174
204
201
177
235
176
163
219
217
199
185
140
188
183
180
190
188
227
180
197
213
209
195
196
228
212
162
220
275
179
254
173
182
265
244
171
238
187
195
241
179
220
221
249
182
202
170
245
226
235
249
187
218
243
212
193
277
230
181
221
175
198
254
135
231
238
211
173
151
166
188
218
260
169
209
177
184
215
166
157
243
157
178
209
230
196
195
213
141
232
152
230
209
152
204
163
172
194
269
201
184
210
248
236
230
159
204
213
172
169
214
157
204
237
248
160
214
228
224
148
190
218
232
238
231
201
192
198
198
195
159
247
250
244
225
253
155
230
157
213
253
220
175
194
176
169
139
279
219
184
259
188
174
243
250
232
266
188
193
225
253
207
217
214
201
165
251
225
164
186
193
219
183
249
230
240
181
163
216
132
183
234
245
242
152
185
198
218
219
194
215
240
255
214
216
168
219
190
191
232
187
214
233
231
214
234
243
212
204
234
185
193
205
182
233
199
248
193
216
190
228
165
205
181
201
189
210
216
157
238
242
166
270
180
242
231
243
208
181
136
182
194
232
264
193
247
230
210
240
199
161
175
195
190
203
206
194
239
202
268
209
240
220
218
212
191
224
208
197
212
231
221
222
260
289
209
176
237
201
224
204
158
203
254
185
220
157
182
180
130
184
207
165
224
158
183
189
194
272
188
187
227
193
174
202
126
214
216
174
263
178
189
117
215
156
217
176
216
223
155
195
158
184
259
165
243
172
205
221
234
189
207
182
207
167
203
238
175
151
179
209
176
242
173
171
216
232
144
206
154
157
179
191
186
213
202
155
176
136
187
245
223
259
153
223
224
151
168
212
232
173
235
254
209
219
216
170
203
228
153
218
165
226
210
219
175
179
175
178
233
181
207
204
186
229
215
237
177
226
233
229
177
183
179
230
170
208
209
213
220
191
204
163
168
230
212
206
219
155
261
149
213
159
190
205
222
225
170
164
202
238
206
244
200
197
200
166
206
228
211
189
213
194
219
171
202
153
220
203
193
208
188
145
226
206
213
184
273
249
186
208
171
243
232
217
168
157
223
163
230
191
199
184
188
210
213
173
212
233
181
207
214
208
163
203
206
225
190
239
198
254
183
180
180
238
206
246
220
258
184
226
188
236
176
204
225
149
163
71
210
299
240
232
218
138
252
194
222
169
219
194
176
196
247
151
198
208
163
184
195
203
180
190
187
162
241
238
222
210
221
168
182
218
187
169
207
184
158
197
214
156
248
244
278
170
239
253
180
190
115
190
260
209
233
198
116
204
167
217
213
196
184
240
224
177
180
217
210
150
233
190
203
241
189
190
205
203
185
205
180
227
209
157
209
179
223
250
184
181
195
114
255
200
289
198
227
192
182
235
170
204
217
145
290
187
256
179
156
252
244
183
213
235
179
207
149
261
174
164
153
234
160
208
195
244
186
186
167
254
197
224
229
170
204
209
217
232
184
226
131
196
193
197
211
168
196
181
211
216
131
208
221
203
185
267
165
186
138
134
203
193
216
258
167
159
228
197
198
241
215
170
241
218
218
150
143
217
222
204
216
218
185
181
204
196
201
227
243
218
201
180
167
169
148
206
203
243
218
246
203
221
192
226
171
221
197
156
197
226
215
167
250
197
229
177
154
159
236
162
174
198
228
197
161
212
193
204
197
274
224
213
207
203
205
145
288
221
211
191
223
219
198
196
188
149
213
156
234
158
252
148
145
217
132
204
147
220
135
229
169
143
278
218
226
168
206
203
185
178
139
226
241
200
237
237
178
257
137
246
241
219
176
184
218
143
174
212
187
160
220
199
214
174
197
205
162
230
227
166
219
218
220
243
209
190
187
193
260
198
233
226
182
169
234
189
204
199
244
223
273
194
250
240
188
213
158
207
131
238
188
252
190
170
187
159
196
218
192
153
206
142
290
204
195
160
171
231
267
180
197
162
165
204
225
180
199
185
210
193
257
206
221
134
251
184
195
220
236
152
176
243
237
180
179
210
198
221
196
228
197
184
185
169
209
213
201
199
226
140
172
231
188
205
221
169
157
221
183
202
178
148
215
186
253
254
169
207
224
167
206
225
231
144
164
168
135
218
179
205
195
219
216
231
182
252
171
216
241
127
207
165
236
142
204
221
204
212
221
226
120
209
245
189
184
225
143
190
213
165
194
203
190
205
237
208
182
206
231
203
219
195
197
230
152
198
177
187
218
224
145
197
207
192
191
210
163
237
217
202
196
219
198
243
172
238
170
172
145
184
222
213
145
235
229
212
162
218
242
159
231
177
175
174
215
196
200
187
179
218
193
198
171
208
228
254
261
161
232
218
174
194
183
204
195
141
225
245
231
146
218
117
180
181
200
258
231
187
186
221
189
225
120
206
194
176
164
243
214
165
181
172
234
234
159
239
257
187
260
138
124
183
190
229
179
182
224
179
237
228
168
148
151
199
234
267
234
163
193
172
182
180
151
205
251
172
199
190
218
218
137
253
259
198
223
195
185
225
245
286
153
123
157
209
160
191
241
186
243
204
204
140
205
208
220
189
238
231
216
193
240
156
194
222
180
204
166
160
193
162
176
216
214
220
182
247
184
176
212
225
172
213
218
182
195
248
179
172
158
219
161
190
209
208
179
208
174
174
254
266
206
197
212
242
217
206
200
200
241
219
216
203
231
221
229
178
110
193
239
211
232
193
206
177
144
220
193
205
233
193
178
192
235
203
205
208
206
209
212
163
150
176
230
215
175
238
207
165
297
221
209
214
203
160
263
190
237
191
154
217
123
179
133
168
229
186
237
209
186
229
211
244
242
206
182
140
237
185
154
241
191
196
183
213
218
224
243
212
171
143
240
166
167
223
217
189
208
201
189
136
153
220
168
216
226
194
203
173
185
170
188
169
230
192
174
164
142
215
232
158
145
169
169
237
205
170
172
206
148
127
212
218
191
219
213
177
231
205
231
196
243
160
199
129
251
177
264
149
169
221
225
228
225
226
235
229
171
231
179
172
192
227
188
177
164
242
148
139
193
146
184
238
202
240
219
176
216
184
257
154
205
221
202
137
205
207
164
175
164
176
245
227
138
225
203
182
199
239
260
242
220
191
217
209
201
127
223
196
195
156
230
199
210
222
164
252
164
191
227
161
167
251
212
253
164
186
254
160
198
249
177
254
223
184
187
292
182
231
194
178
166
226
202
224
196
216
121
238
193
205
182
198
165
234
179
204
248
212
158
191
225
236
192
231
241
181
243
231
251
236
236
250
185
170
149
154
176
187
111
202
141
174
242
153
208
162
221
220
118
167
227
173
187
196
138
178
196
225
160
204
189
208
227
200
149
235
200
203
232
214
200
202
184
153
244
224
174
192
215
239
277
197
257
176
256
150
202
216
241
130
136
213
200
203
231
194
176
185
202
189
181
207
176
207
153
200
211
254
194
173
231
224
244
224
142
162
224
191
203
197
168
197
235
205
180
235
230
155
220
222
238
209
209
229
136
239
214
242
223
190
232
208
218
197
207
195
202
197
196
229
193
206
205
205
217
194
175
197
274
203
198
203
161
156
186
204
170
158
219
140
208
180
213
240
225
156
153
274
259
208
195
228
193
213
239
204
202
197
221
225
153
219
190
232
233
205
202
213
214
151
202
216
184
229
136
215
235
192
143
159
215
171
264
191
242
178
177
216
215
132
207
163
138
201
250
219
213
239
208
212
173
206
226
185
150
181
201
189
252
182
141
205
200
176
197
221
152
216
205
242
160
187
285
153
223
140
234
233
195
224
160
230
221
216
162
197
201
205
174
187
203
177
208
187
180
254
237
138
215
220
181
230
171
242
234
226
236
182
152
72
243
212
203
236
182
153
159
193
223
201
197
223
249
240
217
156
172
221
176
218
182
220
218
216
208
236
215
163
215
168
206
204
199
137
153
198
197
192
230
177
243
173
176
169
179
191
220
236
228
177
163
175
274
231
173
210
227
190
218
178
200
196
169
247
176
216
215
153
186
235
178
244
147
168
162
204
254
179
268
256
175
194
202
150
240
228
226
126
165
149
229
218
215
161
197
189
245
174
192
195
181
266
185
209
158
177
275
109
268
184
184
192
156
237
188
204
206
203
194
171
218
198
200
207
190
196
212
208
228
224
137
204
171
222
237
180
235
237
194
290
214
223
255
188
188
187
243
191
197
156
253
209
189
215
229
224
202
185
182
190
191
223
177
250
201
188
258
143
200
174
210
127
226
139
227
217
160
217
195
150
142
177
152
203
233
226
193
251
157
144
189
137
223
235
197
192
219
216
206
183
233
179
213
153
228
206
181
197
248
254
235
157
208
232
167
197
170
203
207
178
218
171
195
232
183
137
233
207
213
187
195
219
195
202
198
193
244
244
223
230
194
196
194
251
289
171
187
162
124
177
189
185
201
220
202
234
234
199
169
129
174
193
172
179
217
217
173
229
185
226
178
217
244
193
179
196
194
252
207
234
218
140
193
223
174
211
213
143
170
217
178
189
174
210
201
159
169
232
261
244
130
170
162
210
197
213
78
212
220
242
264
219
212
232
233
238
215
157
225
197
195
242
193
252
209
212
193
182
144
231
212
170
144
179
179
159
209
203
243
169
175
201
183
165
259
205
121
306
260
212
187
214
197
189
219
196
184
196
158
222
229
208
227
207
168
202
174
208
211
225
171
226
214
221
221
214
174
248
207
196
189
151
204
245
168
148
188
260
196
120
217
96
160
158
231
194
162
218
283
226
239
220
169
227
133
149
133
219
182
222
213
248
211
235
178
232
208
191
177
252
222
87
144
182
180
201
216
215
235
131
179
226
241
249
242
225
261
133
231
211
225
252
190
222
189
312
214
193
170
163
163
224
177
161
179
129
172
130
213
194
176
220
153
198
242
202
129
205
110
228
206
163
126
197
208
175
155
220
274
243
189
216
202
194
160
240
198
229
205
171
212
226
218
199
192
276
250
157
216
253
163
209
193
180
186
217
212
173
101
221
140
200
240
258
178
164
172
198
180
221
255
243
223
232
251
137
199
232
230
184
180
136
203
238
179
205
236
211
154
178
181
205
179
180
202
148
180
216
182
128
216
160
210
238
245
217
217
208
149
224
141
182
166
177
249
200
201
275
204
224
219
226
234
173
252
174
198
146
145
164
127
226
198
238
219
198
216
242
191
256
221
228
252
186
179
255
150
280
180
178
239
172
156
145
231
240
238
231
246
173
218
168
181
192
170
234
194
244
171
161
195
185
240
263
207
248
187
219
209
265
238
202
212
264
246
202
216
191
193
183
222
193
193
218
227
214
232
235
199
160
176
206
172
233
219
111
168
192
189
289
140
242
165
224
198
170
225
188
184
193
175
271
219
172
238
254
250
186
210
219
223
278
166
189
233
227
203
145
185
171
213
167
164
183
234
200
235
181
216
217
167
232
200
205
163
208
203
205
208
207
202
196
284
187
158
182
188
203
195
234
215
208
194
145
228
172
212
213
184
183
217
200
205
206
198
201
203
263
196
202
220
149
188
205
255
232
182
201
163
211
144
200
245
206
217
211
149
230
155
217
236
163
191
196
241
195
245
117
175
183
248
245
197
190
231
233
160
247
212
226
225
221
250
182
241
196
237
218
217
167
201
257
243
157
228
193
222
183
158
239
200
228
186
199
206
128
190
143
181
227
134
251
186
144
222
154
194
186
209
155
260
221
236
205
216
141
165
238
257
201
197
237
162
242
179
255
217
240
169
258
192
133
221
214
171
145
176
255
149
186
210
184
171
232
202
131
200
186
232
181
159
139
158
205
176
207
210
181
187
166
168
203
193
205
191
194
238
191
180
181
244
232
254
187
230
192
205
219
214
191
227
253
212
226
162
172
177
229
166
133
180
188
156
247
125
171
219
203
174
171
199
220
242
207
160
240
170
187
201
208
126
182
242
172
191
182
201
272
227
195
220
207
187
235
254
159
244
178
199
234
229
201
188
253
253
207
223
222
135
160
209
201
211
187
139
175
158
219
191
184
192
230
222
232
208
206
161
172
217
221
244
238
102
225
209
225
233
223
223
163
226
235
147
137
188
144
242
190
201
251
232
169
256
203
146
140
192
218
144
191
235
175
180
198
147
214
219
204
204
219
212
177
214
244
206
222
226
180
192
247
171
152
178
203
188
168
138
184
162
163
241
233
191
236
215
196
227
133
222
222
212
172
242
144
183
167
232
217
154
190
206
208
188
203
132
202
229
139
193
202
199
149
162
202
206
168
180
220
208
184
243
215
213
172
234
210
194
212
268
188
179
247
204
234
150
237
232
205
176
231
203
226
203
166
122
256
171
119
130
215
132
159
219
170
211
211
196
184
216
203
237
243
193
194
238
210
200
196
197
203
148
212
159
227
235
100
212
247
179
198
236
196
204
190
203
235
173
178
190
255
243
167
211
198
226
167
175
233
213
221
214
204
163
142
233
256
190
256
208
241
164
227
241
221
174
200
254
226
231
190
262
206
179
162
128
206
216
192
219
205
183
226
250
267
219
175
142
123
185
236
131
201
153
183
184
207
206
207
184
246
248
169
195
219
236
229
173
262
186
193
238
191
223
173
138
203
189
184
237
162
173
216
253
205
229
192
243
148
179
199
214
193
206
245
244
155
222
165
169
168
218
178
182
213
244
173
155
160
221
204
201
171
231
291
203
184
253
179
185
183
254
209
230
257
223
191
214
220
220
235
248
229
223
184
159
215
164
239
259
127
185
173
246
189
168
236
212
212
173
169
222
230
183
260
259
210
216
221
248
150
177
168
243
221
194
241
239
265
238
204
227
184
192
227
230
234
239
206
190
224
195
173
237
235
209
119
233
214
198
224
224
201
191
245
217
255
152
209
210
149
149
244
222
220
188
268
137
237
212
210
231
157
207
236
213
204
228
178
195
260
258
206
181
227
230
221
232
211
174
210
196
276
217
216
196
208
200
160
215
179
186
238
182
213
215
178
237
250
224
251
190
190
243
227
197
229
154
188
200
181
157
224
164
150
199
205
214
207
148
173
150
282
187
159
180
268
152
189
144
185
213
152
227
137
237
194
165
198
159
163
218
258
245
218
231
249
221
231
171
235
203
224
237
179
206
167
236
258
96
219
240
210
246
146
213
226
203
190
201
253
211
222
204
163
235
206
177
228
174
193
182
184
195
230
150
208
194
193
202
225
123
215
177
235
189
191
190
152
223
195
202
228
229
262
212
170
162
184
163
207
221
197
172
216
162
215
198
211
244
173
209
197
282
183
219
183
219
214
140
198
150
220
165
140
199
224
195
190
181
194
183
167
181
230
176
171
235
211
261
262
238
260
203
191
201
280
231
150
182
173
254
149
254
203
175
198
183
211
258
231
257
194
195
262
133
173
186
152
236
208
164
173
189
207
172
190
245
202
174
242
238
200
183
150
208
246
244
224
225
184
201
251
182
167
229
254
226
183
188
148
213
203
140
231
142
111
213
194
193
146
112
234
254
233
160
199
180
115
135
182
205
196
213
186
232
238
250
180
208
201
201
253
210
221
155
193
181
218
238
204
186
174
257
206
204
151
179
192
229
200
153
214
222
185
205
174
197
232
211
214
203
226
263
146
226
228
224
158
160
169
172
203
205
218
197
257
191
207
209
152
210
170
187
195
248
210
206
237
160
210
230
236
217
183
207
169
196
222
228
227
231
206
195
170
226
246
189
262
234
194
165
199
200
246
213
194
217
231
182
247
200
148
190
218
207
223
166
160
135
264
206
122
202
164
210
143
221
194
204
146
215
173
156
189
165
182
191
234
261
198
162
193
209
216
194
242
220
116
223
147
139
223
166
211
195
251
197
192
179
143
228
235
114
144
213
173
173
216
242
226
143
172
180
145
218
138
195
190
213
164
202
180
220
175
207
231
195
169
158
151
262
226
238
170
161
145
196
215
209
223
204
291
159
235
198
155
235
169
209
223
196
208
97
212
204
275
218
210
179
229
226
254
244
190
190
212
176
190
215
182
212
262
219
269
176
170
228
215
127
223
206
177
179
195
257
213
198
164
187
242
149
198
238
234
159
138
173
219
211
224
254
184
208
145
269
216
148
183
186
210
194
204
228
206
254
235
194
228
163
257
147
241
118
223
218
192
173
187
162
166
134
220
229
194
235
179
228
217
192
204
212
216
257
243
204
148
140
206
198
158
201
187
170
245
241
205
221
247
186
201
222
252
165
222
226
216
217
168
166
178
222
215
208
250
199
152
180
158
234
202
190
190
267
230
203
167
237
219
186
255
259
193
200
240
180
240
203
230
185
208
225
260
245
194
230
200
209
149
216
223
234
203
137
199
234
162
232
207
204
173
225
275
230
167
177
112
234
219
235
253
173
171
154
258
132
183
239
184
252
196
160
185
234
178
195
218
179
170
194
216
174
190
185
197
178
165
168
179
233
211
219
201
208
239
109
239
98
178
223
230
197
169
243
199
183
220
161
217
232
192
172
189
203
225
141
212
179
176
215
218
211
173
228
183
189
186
210
226
217
219
202
177
158
233
226
169
247
231
193
158
169
238
214
204
191
238
165
293
185
179
186
181
204
227
195
253
215
200
212
132
193
197
187
212
200
210
164
148
235
165
260
184
173
265
180
170
246
192
212
207
170
266
155
168
216
168
171
179
238
226
184
204
159
208
191
224
148
180
160
181
157
187
200
171
227
226
108
156
73
219
202
198
211
212
200
170
204
227
217
159
134
259
204
201
158
177
181
130
187
223
217
222
172
216
181
231
202
143
200
199
200
170
218
236
185
196
202
207
199
246
182
214
229
233
164
250
202
211
226
252
210
231
155
210
225
168
245
231
245
174
210
173
192
169
246
255
246
225
189
245
182
222
215
184
203
199
229
128
199
180
202
172
218
183
229
229
245
185
201
166
241
216
184
164
161
154
225
208
226
189
225
198
215
222
255
188
250
214
261
181
210
225
231
257
236
229
139
275
208
165
255
171
133
196
183
182
144
244
227
183
210
198
170
176
161
160
166
188
209
158
147
213
183
112
162
259
195
227
161
250
201
209
134
149
240
124
198
172
234
197
237
117
177
260
169
133
234
164
265
254
211
143
200
223
223
168
273
223
179
246
192
195
189
212
214
171
217
206
219
196
250
184
219
219
294
188
174
118
182
233
192
167
208
192
197
173
177
162
253
167
223
178
221
219
190
227
238
212
223
198
316
260
192
204
175
268
213
235
170
129
142
190
183
186
157
228
205
245
150
192
221
189
152
194
191
172
203
185
221
223
200
171
152
212
190
271
179
164
234
253
219
136
187
200
236
256
193
230
186
230
182
205
211
270
200
167
213
219
192
227
199
222
170
182
176
232
203
178
255
154
157
174
207
154
214
188
252
197
205
157
198
209
213
178
218
225
224
165
244
208
229
205
248
168
167
171
190
282
195
227
200
245
104
193
221
188
233
160
175
183
239
214
174
234
178
228
173
208
161
184
239
175
175
188
189
249
220
196
212
199
218
189
199
223
215
158
199
135
221
191
160
177
245
242
214
211
198
221
218
164
248
252
174
247
224
209
145
194
185
209
238
165
201
208
187
167
248
163
120
205
197
198
198
159
217
206
194
227
209
135
202
169
216
239
256
271
237
209
182
226
218
213
192
142
231
205
190
201
169
164
210
165
207
222
239
219
214
205
181
191
190
220
223
152
209
164
206
200
216
218
191
163
185
234
142
162
172
147
172
141
242
196
195
203
129
136
257
171
240
210
138
185
220
186
175
252
175
141
159
213
225
204
211
171
194
203
226
216
194
152
217
175
265
229
232
176
209
147
217
156
214
203
180
213
212
172
278
220
135
145
263
146
197
226
108
233
208
165
195
217
205
231
219
179
191
104
190
174
201
218
235
180
225
146
155
219
245
197
169
202
223
227
225
149
164
264
261
133
212
216
247
230
189
145
233
249
180
214
165
146
187
201
235
221
234
213
210
182
225
225
197
177
219
170
177
197
217
162
232
231
203
206
198
214
183
187
207
247
166
242
208
207
180
192
205
219
187
177
226
232
223
202
232
169
193
191
250
173
255
194
163
175
112
254
224
182
259
145
204
190
184
238
230
190
183
210
248
257
169
227
206
230
164
212
204
211
199
263
219
238
201
128
240
232
271
194
193
240
241
234
186
170
168
134
172
222
154
169
244
230
163
252
242
205
204
219
257
204
150
196
170
180
207
176
154
158
197
172
239
195
229
204
120
231
233
183
139
158
165
263
276
138
198
242
231
198
212
202
185
185
171
180
170
187
213
198
250
230
160
221
224
167
186
267
263
177
230
291
208
206
179
236
172
167
208
205
119
148
200
230
238
177
189
164
246
180
171
205
202
202
206
209
229
198
222
202
111
209
239
205
181
178
182
194
201
222
209
209
239
169
166
159
227
201
187
204
244
251
201
257
215
243
260
231
221
225
228
187
217
216
251
202
234
166
153
201
205
170
199
208
217
203
202
197
255
213
262
212
189
225
187
227
187
214
202
236
187
135
230
179
175
203
172
234
177
239
121
210
163
276
188
186
209
266
216
255
172
229
196
203
154
272
265
230
179
166
205
177
148
161
170
231
227
180
169
255
227
224
251
209
197
241
242
230
152
247
178
190
108
173
183
190
245
155
171
194
183
190
176
139
155
202
178
207
163
232
187
225
213
240
180
162
178
161
159
204
149
162
176
195
228
148
232
186
196
263
191
199
186
191
238
168
141
115
168
235
193
240
238
206
217
169
205
200
196
140
208
196
242
217
231
196
174
150
201
105
215
158
173
191
170
178
163
216
203
228
235
172
177
160
194
216
159
191
149
227
170
196
255
198
183
238
127
147
185
198
180
153
222
231
244
158
265
189
210
251
208
171
182
176
236
274
197
176
250
187
93
227
240
208
231
234
230
208
221
228
190
186
200
271
180
236
211
213
155
189
285
231
183
206
193
190
157
217
204
194
184
199
195
192
235
199
206
187
198
178
139
263
222
261
236
234
268
154
206
195
140
229
263
247
195
182
179
212
198
206
204
198
248
210
236
233
189
168
183
227
230
172
164
141
250
185
209
232
173
219
223
191
150
186
217
225
174
173
191
204
175
214
184
209
215
213
253
272
223
249
264
186
231
227
215
123
163
237
222
264
186
236
228
207
176
212
226
203
207
143
201
176
203
183
176
211
193
238
209
191
185
268
181
224
198
150
215
198
202
235
203
186
211
254
197
187
166
220
188
274
152
213
252
248
240
191
193
130
142
262
168
218
203
156
229
122
215
249
205
136
247
214
171
166
277
178
232
235
190
199
210
200
210
184
245
134
200
176
212
203
234
159
157
168
249
115
261
212
250
203
242
207
199
211
272
161
153
233
164
200
215
219
175
212
198
212
243
191
196
179
146
225
203
221
242
162
219
260
243
187
150
241
212
229
221
178
239
201
187
218
194
160
227
175
169
209
168
228
180
247
193
225
193
207
235
182
217
257
187
190
209
234
174
196
254
249
212
213
181
175
198
202
230
216
235
194
150
243
139
207
254
147
253
167
159
171
138
212
230
193
249
210
150
205
193
219
187
175
173
200
214
208
240
213
156
162
165
204
189
197
174
185
195
187
203
218
180
203
261
238
198
276
167
200
240
182
289
196
172
163
197
207
155
231
250
210
150
223
234
229
236
235
214
176
229
208
149
191
160
192
139
206
230
198
224
236
150
179
211
138
180
226
209
171
189
209
237
209
217
183
238
231
222
247
236
232
217
145
210
199
217
208
192
221
104
251
170
177
241
228
162
163
227
204
220
189
181
161
142
175
244
155
158
188
200
164
216
194
207
198
196
182
155
195
207
195
141
144
243
171
217
222
163
185
216
203
194
237
191
190
149
213
193
235
230
163
233
195
171
238
147
263
233
158
239
201
224
211
203
274
175
183
244
188
254
247
161
190
163
231
167
206
250
239
217
193
189
188
191
242
178
208
220
172
220
154
257
219
163
184
256
255
227
230
232
133
165
118
215
167
203
184
189
212
243
117
199
197
231
174
125
198
233
208
145
172
211
221
195
197
226
141
231
237
167
146
204
227
180
261
189
192
186
192
126
245
184
220
101
233
215
149
191
186
172
220
225
179
214
235
197
184
208
231
222
204
214
137
224
160
151
204
198
173
272
161
201
251
187
198
157
249
161
141
181
190
183
233
224
220
199
218
215
175
250
158
230
178
190
239
216
123
247
192
219
194
182
275
168
187
187
216
186
182
199
208
204
250
258
185
160
214
219
218
186
190
235
192
178
175
199
181
227
260
226
249
216
224
136
204
189
225
139
201
239
156
151
195
175
201
183
199
242
197
159
198
232
263
146
189
210
198
198
135
243
199
179
243
194
244
180
250
252
162
254
181
216
187
243
231
180
173
258
176
290
192
252
197
213
181
163
191
253
221
246
183
182
222
185
156
174
149
215
160
197
158
121
224
117
195
229
190
163
158
198
241
212
209
212
176
246
229
107
201
226
206
269
160
179
159
234
219
247
214
233
203
219
235
201
209
261
270
117
211
198
191
225
216
163
225
188
206
196
171
203
216
167
166
171
228
238
215
217
223
191
236
239
259
255
193
248
193
179
200
176
214
269
142
218
171
176
215
218
147
164
234
251
227
176
197
255
199
247
256
204
184
191
127
187
180
239
188
145
220
234
230
154
230
214
182
172
182
236
199
197
184
163
157
201
254
197
180
223
205
217
210
137
142
167
227
193
213
205
186
174
229
210
203
233
210
238
188
221
194
188
208
185
179
232
176
191
166
183
201
180
187
151
214
163
197
160
181
122
250
238
224
170
229
183
249
212
266
186
203
204
146
206
227
200
193
219
256
227
228
267
199
172
171
281
168
233
205
196
181
190
206
190
209
209
220
207
143
211
181
170
209
219
212
191
163
145
109
180
195
197
243
237
186
163
187
219
168
208
195
186
185
198
223
233
188
203
135
145
186
115
203
227
208
116
226
165
228
168
197
173
151
188
192
180
266
223
148
166
192
222
185
213
251
204
190
205
155
216
179
177
139
217
223
197
235
151
188
211
121
240
215
171
209
201
221
191
184
191
192
187
193
159
218
213
149
208
218
235
204
248
214
158
217
198
194
233
207
158
205
239
218
235
219
169
280
249
155
269
243
236
163
244
221
128
194
244
123
165
166
183
184
243
209
186
215
192
214
253
211
212
199
219
175
212
129
213
184
259
131
218
193
234
169
204
196
288
190
187
227
217
204
229
189
194
216
169
174
205
209
112
165
166
262
290
215
185
164
246
206
222
174
206
203
183
159
199
181
249
268
232
198
228
229
219
222
141
169
182
153
172
240
187
221
147
136
216
191
219
242
187
251
163
263
156
189
214
204
191
189
221
248
208
210
202
213
229
164
134
224
194
170
139
216
189
197
170
211
224
229
268
223
174
187
178
200
222
177
157
154
222
155
215
193
213
216
274
262
220
180
219
166
185
152
191
236
208
214
193
196
201
223
216
125
245
250
142
148
233
191
234
150
147
162
230
206
206
216
214
170
249
225
218
237
193
197
212
208
203
188
234
177
214
207
217
169
188
251
193
214
193
195
171
192
192
169
248
229
174
151
162
181
173
193
175
207
256
194
147
193
211
191
196
205
189
167
151
174
217
164
175
215
174
235
175
169
207
212
203
222
203
236
261
160
226
169
212
240
236
232
250
138
190
235
186
202
204
174
173
185
144
234
155
189
233
197
202
210
205
268
213
243
218
202
238
217
117
151
206
216
225
246
224
220
146
225
193
228
202
189
187
240
206
216
201
215
213
224
211
198
163
200
177
205
184
205
211
158
214
223
214
182
183
239
220
216
281
145
265
177
213
194
248
180
201
265
254
174
208
168
213
157
165
216
224
219
153
155
188
258
200
175
239
253
195
208
214
131
244
162
260
242
217
197
177
226
235
201
251
218
210
183
210
219
128
249
208
190
208
197
180
158
186
249
209
240
158
221
223
153
213
221
248
181
210
266
125
204
213
214
216
171
242
153
182
184
203
232
195
199
214
238
157
180
125
149
236
234
183
181
210
176
193
189
193
174
157
158
161
176
192
217
224
218
249
207
158
258
179
192
274
196
170
178
229
218
163
239
211
125
179
224
203
162
175
153
264
180
197
150
196
212
143
168
237
146
202
281
196
204
196
171
230
265
182
176
170
178
215
149
249
189
161
161
189
179
172
159
214
221
211
218
299
243
141
188
266
206
217
194
195
301
198
193
228
240
148
220
204
236
215
246
219
166
175
187
190
207
222
215
200
221
225
170
195
214
212
171
206
201
180
212
176
160
227
193
164
207
178
217
190
205
228
162
209
249
240
229
234
198
203
183
212
242
243
200
155
172
189
225
227
183
165
130
198
176
240
200
200
119
200
158
187
211
127
256
240
225
144
264
223
241
182
250
161
136
239
245
203
167
211
177
184
169
210
188
212
224
201
158
246
152
225
214
135
203
238
195
189
174
181
192
206
187
192
187
226
211
179
230
209
223
146
173
188
215
197
235
225
159
185
214
139
188
149
193
200
189
163
165
244
187
263
150
160
196
226
221
174
186
220
224
213
199
197
170
221
158
268
211
236
232
180
178
261
185
209
239
202
235
195
257
238
200
209
211
162
218
257
145
203
222
201
228
244
196
205
201
186
145
244
168
203
203
176
173
223
191
194
157
157
160
120
186
174
186
222
262
213
186
222
206
148
151
236
248
260
150
97
217
254
169
230
161
217
210
275
155
237
215
192
227
209
172
169
259
208
194
191
185
168
198
160
186
213
248
186
175
189
210
218
231
197
204
216
178
178
126
231
144
216
248
190
231
243
213
220
181
236
160
161
190
199
204
209
155
196
169
122
152
187
189
132
160
191
209
184
189
174
200
140
200
227
179
193
202
190
238
191
199
209
176
231
216
202
193
205
206
237
195
208
179
169
148
159
176
243
276
196
216
132
150
221
187
219
173
237
226
171
240
211
185
226
188
241
207
230
232
159
183
218
162
232
193
190
213
179
227
203
175
180
233
238
249
227
214
212
188
240
188
174
173
170
183
193
209
192
244
183
258
235
208
216
127
222
138
173
171
240
255
193
256
220
157
212
226
224
189
202
221
194
211
147
209
237
175
218
184
164
182
167
231
166
164
252
178
180
187
236
183
178
187
221
195
210
209
230
183
150
169
194
206
198
196
221
203
263
176
189
212
263
143
164
120
288
234
202
243
233
224
215
163
183
143
199
222
163
173
172
216
224
101
138
231
182
162
224
264
185
230
219
223
198
213
239
235
153
224
149
184
222
220
216
153
167
150
184
173
177
144
220
189
226
203
246
217
232
253
178
176
239
174
243
140
190
165
169
190
237
156
181
123
272
146
122
171
170
209
139
233
214
293
154
205
252
220
230
181
217
219
218
214
226
211
206
246
264
227
212
200
213
201
268
252
230
160
222
205
247
195
193
224
164
205
247
246
206
154
249
230
185
224
246
225
195
133
172
176
126
227
177
199
136
183
147
250
184
232
192
199
207
240
171
156
226
214
210
194
216
199
220
245
222
222
172
152
182
202
214
159
195
245
175
228
144
187
180
215
211
233
206
215
175
173
178
195
166
202
189
170
240
232
156
209
196
177
248
184
155
261
174
247
163
166
245
264
156
165
217
218
255
171
223
171
260
264
210
190
197
180
223
201
200
168
196
222
215
196
230
196
224
211
165
213
207
266
161
197
151
157
187
229
278
192
216
252
133
147
163
206
173
276
237
197
211
194
218
175
196
234
208
111
184
228
184
200
167
187
207
198
220
167
198
254
151
128
204
172
237
275
198
217
153
183
133
177
239
214
143
195
221
182
236
227
210
171
177
204
141
181
188
185
190
214
190
241
243
206
159
277
158
142
221
216
227
135
191
193
194
185
194
153
224
234
209
220
178
150
212
246
250
235
222
229
187
128
190
182
206
195
199
197
233
211
210
216
225
126
233
163
179
177
196
185
226
222
199
181
200
206
208
112
265
192
181
246
175
176
165
231
178
199
229
201
277
281
154
139
204
182
244
184
186
213
208
179
179
188
214
257
237
242
244
236
196
184
124
218
193
180
245
199
167
170
168
231
252
239
192
210
219
162
209
237
233
204
177
193
216
157
233
167
214
185
240
212
152
167
228
171
214
226
183
208
174
177
152
200
198
236
163
149
90
184
161
184
202
208
157
165
257
213
156
175
150
174
210
219
214
201
156
181
197
169
197
195
226
156
240
218
218
161
193
165
162
172
234
142
223
267
241
135
189
181
199
208
226
237
213
224
159
221
245
191
252
208
266
223
184
225
271
204
216
186
221
225
235
195
255
178
220
201
235
201
191
136
191
190
184
191
214
131
222
203
99
226
187
221
210
91
221
167
242
180
192
210
170
195
131
165
218
209
179
185
224
178
195
181
186
153
194
218
245
166
241
178
220
259
226
229
199
126
250
185
168
232
203
145
194
211
156
211
239
196
136
233
229
169
240
190
238
157
186
216
202
193
213
180
152
209
228
170
207
180
215
173
198
238
179
206
167
232
175
167
251
188
234
246
202
153
215
208
212
242
241
228
244
204
237
149
165
146
197
183
157
285
160
151
181
228
205
198
140
169
184
174
253
202
226
267
222
232
219
198
244
145
245
111
197
213
193
171
198
168
204
203
223
173
211
177
217
232
208
247
187
226
223
174
128
247
144
176
204
259
196
184
183
202
186
179
200
208
222
226
236
210
249
211
182
181
214
224
245
242
222
219
227
199
248
200
174
204
210
176
175
261
215
185
126
177
220
229
207
183
180
115
180
192
175
239
193
194
203
236
243
114
120
194
239
176
194
194
275
200
195
191
194
203
217
174
148
146
228
166
223
181
165
162
165
124
238
185
142
195
175
169
182
217
254
209
177
162
237
208
225
153
163
184
199
197
199
212
206
142
173
191
170
179
187
245
227
226
223
235
175
242
213
212
240
257
197
197
246
259
180
209
194
202
216
202
210
208
177
159
214
208
200
238
187
206
185
207
250
157
209
204
218
224
140
242
190
197
218
201
137
174
209
161
237
165
177
238
187
249
171
252
230
209
214
236
217
213
202
214
221
183
208
243
228
161
203
205
219
192
264
155
287
218
226
166
262
183
207
199
316
164
175
168
189
215
208
218
158
169
204
211
167
161
162
202
208
251
137
178
220
220
168
201
265
163
203
156
250
186
224
194
252
220
162
179
195
159
218
221
179
212
159
177
215
254
236
175
208
194
249
242
216
207
225
174
233
259
194
184
279
190
169
242
222
194
253
210
222
199
202
233
237
152
163
196
185
174
185
213
200
208
258
189
203
197
159
209
146
220
268
174
150
207
140
192
176
152
120
176
264
241
236
248
173
254
225
185
201
211
177
130
198
192
199
174
225
195
228
156
260
219
175
204
170
236
236
231
195
227
201
205
197
205
176
260
210
175
176
143
243
131
154
182
195
214
235
170
175
171
127
150
198
194
228
160
166
158
197
169
232
241
245
202
185
202
195
271
224
202
270
196
182
179
221
120
192
206
210
236
234
186
207
175
165
228
236
163
176
182
194
198
214
179
204
173
168
183
224
202
172
252
211
236
180
95
180
153
245
197
190
241
225
194
232
195
185
197
113
203
217
180
190
188
255
187
220
190
185
219
153
237
216
227
195
135
220
243
211
162
223
181
228
173
191
202
197
178
242
187
198
194
198
192
214
141
166
178
176
220
232
128
205
217
138
229
280
134
193
192
168
158
211
179
207
169
171
185
228
170
261
245
230
222
225
165
121
159
189
201
178
221
179
160
225
200
159
195
230
172
208
175
161
154
185
200
208
239
164
206
201
215
176
223
162
152
252
268
210
232
233
228
183
205
158
215
180
120
253
265
237
217
211
236
144
177
241
216
234
210
177
233
262
217
169
174
219
259
211
192
216
206
153
211
202
226
186
163
168
198
236
190
219
248
201
287
221
178
194
141
178
219
259
212
214
81
208
243
136
217
233
206
226
240
240
212
202
195
205
234
250
235
225
233
171
234
230
165
199
189
202
190
210
226
208
206
139
123
180
183
254
149
252
183
180
175
203
218
160
230
233
152
251
208
211
197
205
150
219
150
212
256
185
158
195
232
169
200
223
251
171
246
162
197
220
224
208
186
250
188
184
160
274
196
171
202
216
235
171
210
208
223
151
237
178
174
201
234
212
214
177
164
193
215
223
234
187
195
204
192
216
242
184
147
232
162
192
213
227
274
167
208
182
177
162
170
166
226
164
242
216
225
167
186
167
214
158
212
183
158
252
162
222
107
163
157
170
216
270
210
178
202
128
166
201
208
174
164
227
121
235
184
199
199
188
257
186
156
191
200
171
191
149
203
204
188
172
239
160
240
177
155
216
224
200
204
179
204
232
211
219
250
165
247
208
172
248
180
178
207
187
239
188
118
216
237
204
229
163
218
233
268
239
201
130
178
160
188
157
126
201
167
188
240
200
159
205
175
166
210
244
202
187
206
190
171
202
248
132
180
189
244
207
200
196
102
173
191
223
215
178
262
205
130
220
209
169
115
179
180
227
166
235
191
217
153
196
167
251
206
189
204
248
181
189
185
194
220
224
175
192
180
216
203
231
261
199
169
223
197
207
214
129
249
226
196
184
212
214
154
178
221
178
221
199
207
231
171
157
153
233
179
183
200
186
220
218
205
141
217
208
203
206
199
165
160
259
159
189
313
163
216
176
207
211
175
227
121
233
258
270
181
241
273
220
220
174
218
228
182
184
244
206
219
283
202
144
191
215
233
239
153
188
207
179
183
199
137
187
233
188
159
220
231
252
210
251
188
223
182
247
207
186
159
252
193
265
175
236
234
177
298
158
233
217
151
126
242
198
188
187
182
193
188
208
138
171
196
210
225
190
181
145
231
179
162
203
155
230
239
205
187
174
185
286
193
197
212
163
158
162
234
224
187
234
148
214
234
223
207
225
177
187
262
143
201
221
193
184
224
240
177
189
156
242
175
181
133
183
192
172
163
227
229
228
130
186
249
250
232
181
177
184
213
166
181
139
189
147
185
176
184
177
141
186
248
116
231
205
188
230
184
151
175
164
246
233
193
203
172
216
214
238
207
201
144
168
256
228
198
221
254
191
143
235
242
130
205
156
225
225
177
186
275
111
225
231
226
229
174
224
215
171
94
184
237
154
191
171
170
143
194
167
262
166
211
162
253
241
225
193
243
225
165
224
174
195
247
226
170
233
183
166
176
232
217
184
217
236
187
221
184
204
236
207
171
172
239
208
175
180
221
171
175
190
235
152
189
151
240
186
253
237
185
186
287
166
243
144
240
212
183
240
151
136
205
243
195
218
191
217
250
241
267
182
207
263
155
211
168
227
184
138
228
139
189
278
211
161
252
204
147
239
230
220
181
186
192
223
236
229
236
182
237
232
206
218
203
191
207
178
199
152
210
150
242
168
174
188
288
209
213
161
159
193
191
239
211
168
159
176
209
229
221
198
150
166
230
145
157
236
250
189
214
228
175
177
116
145
176
182
255
199
187
230
230
201
177
222
240
222
198
205
237
174
154
188
238
145
228
166
224
169
138
188
247
217
129
240
186
234
198
178
218
191
242
202
272
221
162
248
244
162
195
204
179
270
213
203
225
162
204
177
201
176
169
200
200
234
203
192
198
218
297
204
213
175
230
222
210
176
181
196
193
214
134
193
233
178
191
162
225
163
227
262
208
151
229
199
200
180
180
229
254
258
180
220
255
191
232
194
225
212
166
218
225
200
309
242
230
185
205
167
212
233
198
126
140
154
244
177
223
176
177
241
220
211
178
204
205
143
178
227
199
206
180
240
199
220
229
239
171
212
214
262
205
214
233
161
226
149
194
222
200
209
203
234
231
186
250
182
204
204
241
182
223
226
178
247
222
232
187
191
225
184
198
225
223
165
222
222
205
210
178
145
151
180
195
180
239
266
125
151
205
144
224
249
245
187
228
212
258
172
213
175
256
179
219
146
224
190
220
218
213
220
194
204
233
164
186
229
229
237
240
202
138
165
191
229
225
235
231
188
240
222
225
179
178
199
204
193
136
217
186
140
197
213
197
210
210
208
231
217
231
206
232
178
223
206
156
229
232
237
205
255
187
265
227
241
174
217
244
201
194
221
220
186
188
240
191
215
257
204
218
250
236
234
243
190
271
236
237
240
251
196
213
165
278
111
165
228
253
188
217
196
198
206
208
271
207
179
191
183
178
254
169
177
150
162
133
200
168
173
148
253
247
132
208
195
187
243
209
216
271
279
252
205
259
180
173
200
200
203
115
221
199
176
203
208
185
228
211
227
209
152
208
174
240
152
205
197
159
272
205
198
213
201
208
200
254
232
226
236
191
215
199
263
175
197
238
180
242
239
160
195
179
177
164
226
147
188
212
219
187
211
171
215
193
206
226
217
216
135
218
199
262
210
178
170
173
207
157
197
222
145
205
218
228
184
231
166
192
235
174
159
173
158
176
168
141
232
214
157
201
198
211
204
217
225
218
203
234
214
180
216
210
202
153
199
238
172
206
192
164
203
253
203
206
224
207
196
195
271
197
205
174
203
201
168
202
128
216
183
204
169
185
200
234
194
180
262
211
173
168
183
167
178
235
170
216
180
116
204
233
153
191
200
197
181
152
245
169
152
217
238
183
170
202
248
185
189
185
178
145
252
198
163
209
201
251
260
204
200
197
179
166
198
223
176
192
150
175
237
286
236
208
140
204
244
226
169
220
245
162
166
220
181
142
173
185
208
252
244
168
228
226
228
221
155
219
187
188
179
209
149
193
236
207
201
151
238
217
175
191
235
196
229
178
232
207
232
189
221
229
217
191
162
202
176
241
208
242
139
193
233
197
195
218
197
168
119
185
172
200
262
194
177
235
169
202
143
242
201
154
174
245
201
147
187
198
242
173
170
216
182
215
160
207
189
234
272
261
173
178
255
186
211
141
238
199
217
172
172
228
198
241
242
230
220
174
112
188
151
190
187
189
232
201
154
237
261
212
223
110
266
210
194
138
178
226
217
225
226
234
276
206
174
227
167
235
213
196
175
187
135
151
156
209
193
172
185
281
214
183
228
182
207
184
255
212
194
208
185
211
180
284
190
165
191
204
247
178
191
153
260
161
192
200
203
201
183
209
189
211
225
215
170
155
196
214
207
182
208
196
240
163
266
217
233
208
184
174
172
204
239
135
184
192
214
242
162
185
161
163
181
234
189
175
174
213
204
184
218
178
180
181
260
231
192
236
118
157
171
188
264
156
240
217
180
163
211
216
201
190
187
253
218
157
186
252
147
176
214
131
199
230
158
151
209
202
176
162
245
199
158
161
166
229
184
202
177
208
192
192
172
276
235
197
158
162
254
180
230
273
169
203
232
212
200
191
156
219
186
170
197
242
228
227
194
175
167
197
185
235
198
172
235
209
221
196
147
172
225
219
272
215
158
151
210
189
160
199
224
194
241
156
198
230
185
159
227
203
200
173
195
218
212
251
177
242
204
210
195
208
214
263
181
208
239
177
197
237
235
219
214
213
157
206
139
167
199
281
210
224
216
236
198
209
182
212
158
248
192
197
234
249
200
211
144
232
229
233
155
188
228
217
212
257
222
203
172
119
171
194
225
136
224
196
173
156
184
189
205
187
215
218
185
180
181
135
194
223
207
159
229
226
239
265
163
207
228
222
163
203
249
205
229
235
178
199
251
241
250
173
135
133
266
120
230
222
246
206
226
190
211
233
155
216
240
196
193
238
122
206
185
185
212
178
236
217
221
196
252
273
215
201
135
188
161
150
207
184
208
188
166
252
209
198
267
235
235
161
204
246
212
233
248
262
164
147
239
165
277
208
225
209
199
199
146
229
184
192
255
177
159
106
238
241
263
254
137
168
244
215
195
217
273
215
187
192
195
211
205
147
171
261
144
157
222
206
127
237
202
178
209
178
207
223
233
213
223
230
229
171
210
155
255
198
189
228
193
242
114
215
180
178
220
169
156
160
195
131
178
207
236
161
196
206
156
189
224
174
131
243
154
183
231
213
231
239
190
145
220
210
241
233
213
255
269
228
205
191
243
237
201
235
191
169
190
210
275
128
168
183
158
162
187
182
210
176
175
205
230
206
185
176
172
176
215
189
199
149
176
208
216
215
151
182
142
237
218
198
204
160
194
197
260
226
205
152
207
204
158
142
219
233
210
172
152
230
157
230
259
198
237
207
216
211
139
205
216
145
232
182
181
187
203
175
207
220
231
219
167
242
161
163
221
168
166
211
177
181
253
211
135
223
260
217
171
237
118
208
226
190
167
235
239
250
241
171
181
183
220
212
238
195
164
141
190
182
190
199
176
210
230
155
213
208
244
209
235
200
185
165
186
218
185
148
158
190
212
184
200
232
165
210
189
145
210
249
206
215
139
221
218
203
191
182
251
235
205
196
163
162
181
162
205
170
126
183
171
186
186
225
261
222
192
196
157
239
182
188
233
184
162
221
225
234
223
216
182
189
195
244
209
229
167
209
198
233
176
203
197
264
232
173
177
226
229
151
164
193
195
184
255
180
222
228
158
244
260
182
229
172
171
209
205
152
200
123
197
227
222
256
181
197
155
230
143
194
195
185
232
232
159
215
186
160
199
225
263
191
222
165
180
163
234
205
232
206
166
207
219
214
172
183
155
226
184
216
162
212
206
172
202
124
202
212
245
233
151
151
193
239
171
241
184
150
124
155
157
204
236
216
178
173
224
190
181
242
220
163
205
228
160
184
264
257
141
173
186
197
274
164
249
174
153
203
236
181
214
198
255
165
173
240
263
209
218
219
247
213
238
141
233
198
184
214
218
229
189
221
193
183
236
223
198
162
184
214
177
239
246
169
193
195
171
177
210
209
209
212
162
184
236
238
94
221
177
199
168
181
208
196
168
237
257
227
142
249
158
263
187
233
213
159
213
223
152
258
215
248
245
145
195
164
218
241
249
192
185
210
160
154
198
253
283
235
173
238
188
243
119
207
223
216
233
195
221
127
202
167
191
197
252
160
213
180
210
194
233
223
145
206
221
167
155
216
212
183
191
182
198
208
198
163
136
210
205
191
181
194
158
198
193
203
180
175
214
175
240
236
227
236
142
190
217
201
161
182
194
237
218
220
255
187
184
177
236
216
169
186
137
180
154
233
181
153
252
157
204
137
232
134
182
189
225
146
211
192
170
191
173
182
216
212
207
198
158
172
222
211
175
146
200
164
180
232
199
220
236
206
204
214
182
135
185
99
212
255
219
179
192
224
244
147
241
187
236
242
170
192
201
239
245
164
213
225
164
201
181
180
232
186
203
195
192
247
209
184
187
197
229
177
214
237
249
219
227
210
205
206
167
208
138
235
200
254
264
187
197
253
245
253
160
152
230
200
179
244
189
208
188
162
177
191
180
248
224
204
259
184
201
211
223
206
244
132
169
210
286
202
239
220
161
217
158
267
215
223
282
219
178
248
239
219
237
197
211
195
195
180
271
193
181
159
126
196
268
231
190
239
180
219
153
177
157
175
198
190
195
184
151
173
168
234
239
198
214
251
162
186
218
196
136
187
128
195
172
219
236
173
174
220
233
224
182
170
220
150
199
235
155
225
161
195
229
147
144
152
195
246
201
279
205
234
258
215
215
230
217
252
248
166
219
223
235
165
155
161
236
217
250
138
223
233
200
193
146
204
177
125
195
211
196
208
192
214
208
197
194
138
184
167
214
220
177
209
224
132
213
140
218
195
184
230
156
206
234
196
234
202
165
266
183
252
186
194
213
199
208
250
169
203
167
197
145
260
206
186
234
210
235
197
162
200
187
143
214
137
241
196
220
267
177
196
168
195
221
202
203
221
209
150
215
197
205
222
179
146
222
234
231
206
180
240
191
223
139
163
189
174
196
165
196
175
160
178
183
241
203
145
204
212
136
235
186
257
209
177
233
166
197
232
226
159
177
124
158
159
209
206
210
151
233
181
172
147
234
245
168
249
179
168
214
244
247
156
170
162
211
213
242
192
233
168
242
237
175
208
211
225
226
208
159
198
249
195
197
230
202
225
151
236
190
194
206
153
139
190
176
176
216
177
186
203
155
160
224
189
125
229
222
283
197
238
225
163
239
202
247
232
211
188
239
202
187
190
208
224
248
204
163
231
227
210
195
168
167
247
155
206
219
178
205
165
198
217
183
205
168
252
199
289
197
142
208
224
206
202
209
207
169
202
227
188
143
209
172
231
188
233
236
179
203
185
233
157
205
225
191
162
241
144
183
149
241
168
196
169
177
223
213
227
209
208
220
241
181
173
198
134
193
195
202
145
194
218
177
213
155
194
170
239
192
213
228
175
208
184
197
182
249
200
235
193
199
242
198
249
187
264
195
203
199
224
210
203
205
184
214
241
173
227
161
196
219
205
213
151
211
237
187
261
218
216
180
242
206
206
236
207
239
168
156
232
176
148
196
166
204
229
222
186
180
227
212
147
228
219
190
178
172
156
261
187
184
188
236
163
206
258
186
170
233
184
228
142
191
257
157
182
194
160
242
182
196
207
177
166
179
184
231
239
217
197
227
131
194
207
262
211
141
202
205
193
130
191
274
158
151
220
193
158
200
223
197
167
197
185
222
187
206
185
198
159
163
142
208
256
174
230
212
228
209
201
194
250
265
196
188
201
257
216
160
159
149
214
177
177
231
96
242
214
224
213
174
190
250
217
202
190
227
202
213
236
222
165
141
213
206
252
204
178
169
236
171
180
160
160
112
266
225
177
255
240
212
152
189
200
182
196
173
236
201
224
221
188
260
257
137
249
171
191
241
190
212
181
198
225
202
248
173
235
174
176
224
208
249
214
152
202
158
202
267
213
161
285
218
200
194
145
198
183
169
223
158
227
242
229
231
221
244
197
175
246
232
184
216
179
238
266
222
280
204
201
210
210
143
213
247
222
194
251
187
251
191
196
215
208
204
141
290
252
175
137
147
227
174
185
263
173
167
144
205
173
192
248
105
179
233
178
233
214
188
188
205
178
220
223
132
188
253
218
263
229
196
198
197
207
230
237
255
230
221
175
251
254
163
225
196
155
183
196
204
126
215
188
203
165
213
214
207
250
189
180
187
217
181
243
243
166
198
228
221
184
219
189
146
191
206
239
219
196
217
233
247
203
286
238
159
153
246
226
277
244
163
186
157
178
273
212
218
260
228
161
230
187
209
218
181
216
201
216
204
196
220
243
195
218
188
212
201
234
171
204
182
249
163
215
254
215
150
279
158
150
188
194
212
193
236
214
211
212
204
158
164
197
150
204
247
122
225
239
219
217
182
270
223
139
226
164
197
195
195
176
210
241
206
182
221
200
158
234
189
194
226
158
188
178
227
184
215
151
205
176
198
218
155
235
188
170
183
261
155
129
181
206
207
161
158
169
273
203
233
189
167
235
216
169
241
189
221
181
289
255
146
210
205
239
176
231
167
199
232
170
193
239
201
162
219
212
163
192
191
200
188
194
248
169
223
169
235
236
225
190
193
171
198
146
212
143
193
240
197
216
136
306
140
138
160
177
190
164
202
248
216
239
195
233
143
252
200
201
162
261
182
239
205
127
186
211
184
191
215
223
138
206
204
164
207
214
223
203
247
178
161
181
172
219
189
198
242
283
216
205
216
203
270
187
215
187
188
239
236
204
199
234
211
254
228
198
143
199
178
193
257
140
203
230
157
206
206
151
178
173
210
188
176
204
156
190
187
218
143
167
217
274
209
261
219
142
287
169
178
248
120
173
199
204
236
183
182
173
184
205
217
169
212
162
229
180
247
163
202
197
180
188
207
284
225
175
236
209
195
205
211
198
175
168
160
202
209
152
227
175
242
179
182
193
163
156
203
202
162
193
196
175
257
206
239
165
251
225
219
170
181
164
167
189
200
208
205
232
227
216
181
232
220
241
223
218
225
171
188
199
145
125
209
225
244
162
200
215
166
234
196
191
179
185
170
197
239
258
179
158
205
210
144
157
224
185
176
221
177
248
215
217
194
184
204
250
235
211
191
227
206
217
255
208
210
208
252
164
142
227
158
272
243
227
281
200
234
188
241
171
147
185
184
231
127
236
189
243
220
134
219
160
200
213
224
177
208
170
145
147
223
232
166
147
230
179
182
191
221
174
202
214
216
205
193
229
201
147
220
168
252
158
157
195
168
214
213
219
160
230
206
178
150
253
241
186
184
229
217
196
222
250
185
198
257
165
201
149
186
196
245
267
183
206
228
202
177
206
198
147
214
153
117
189
148
175
157
187
225
233
251
227
204
167
143
189
188
204
110
217
219
264
218
265
218
215
189
199
178
236
190
201
203
232
181
273
210
233
163
220
269
173
153
190
194
151
237
182
230
223
219
177
202
237
216
179
211
217
234
185
203
240
214
206
88
217
213
208
182
179
270
195
175
206
246
201
195
177
156
222
248
202
241
204
213
116
181
229
215
214
137
183
178
175
186
181
178
237
208
211
223
198
214
162
276
131
178
179
270
230
156
250
167
220
165
219
210
171
166
188
196
238
123
191
209
128
153
209
178
217
190
204
221
160
130
166
195
209
210
176
178
181
220
166
195
217
207
202
182
158
222
158
225
186
232
236
201
225
260
165
194
223
142
202
189
192
159
183
180
264
276
163
260
172
155
222
215
202
229
248
231
134
182
218
227
148
222
262
245
231
222
240
197
200
193
172
175
265
191
172
207
277
176
157
205
190
200
228
246
255
201
225
155
198
145
179
226
225
178
203
241
209
123
195
156
273
193
255
197
210
216
201
178
218
169
197
185
207
179
141
200
173
222
188
225
228
163
225
171
181
222
150
197
241
169
190
222
225
244
179
201
171
228
238
226
204
230
201
205
213
142
266
193
227
243
251
198
170
253
199
207
188
178
172
164
206
230
173
208
187
182
231
203
170
184
188
214
184
230
212
243
188
180
223
175
205
205
209
249
237
225
175
262
180
258
223
213
207
148
183
237
229
185
157
224
212
218
203
189
164
206
241
200
221
202
165
197
235
186
177
184
184
209
219
233
174
159
191
273
246
243
180
208
151
179
177
156
246
214
209
169
174
218
196
208
231
184
187
185
202
142
210
190
173
221
209
215
196
223
238
213
222
178
199
245
258
245
196
143
220
171
194
224
233
218
175
255
225
262
264
164
224
208
254
246
137
179
183
231
207
240
99
210
218
208
205
245
159
211
243
166
207
251
203
196
208
200
227
249
183
240
217
137
175
210
207
210
177
276
170
163
178
202
262
225
267
167
206
232
195
191
201
178
236
153
160
130
165
182
190
247
172
205
174
199
236
216
209
162
161
215
180
177
169
247
133
176
266
200
160
215
194
174
166
261
207
146
190
269
198
183
201
126
179
217
188
255
138
189
201
160
181
193
217
199
264
179
173
238
248
252
232
140
176
187
226
212
165
180
221
207
265
214
265
212
269
186
179
139
227
188
208
216
184
244
182
134
249
164
170
158
161
192
180
160
195
243
213
212
180
183
190
225
236
163
230
210
185
271
199
194
182
238
197
148
237
241
190
253
185
204
200
220
185
170
202
218
240
252
173
170
201
214
179
162
198
137
216
176
254
223
246
237
223
216
177
176
182
237
261
165
220
177
214
219
172
169
205
224
211
185
193
204
139
119
187
215
181
176
197
208
221
256
203
207
246
251
201
176
199
183
218
255
204
216
136
187
258
178
225
184
205
144
240
221
126
142
186
196
217
233
243
217
177
223
184
143
210
211
183
200
224
223
214
167
222
176
194
211
205
167
150
222
181
209
277
198
184
157
233
216
161
244
216
238
220
167
214
145
196
216
201
223
235
208
211
194
213
226
192
269
135
226
221
216
214
230
182
240
190
181
246
256
246
123
213
213
186
223
254
132
182
237
217
245
182
168
225
176
186
154
205
204
245
226
172
147
179
167
194
188
171
208
231
213
140
138
134
182
205
265
153
182
166
241
241
139
196
201
253
147
163
240
168
192
223
165
197
167
228
171
236
226
216
209
230
252
193
291
211
257
153
230
145
175
201
188
221
191
263
200
226
238
226
189
220
241
215
221
169
247
138
178
263
230
153
140
250
193
177
166
143
179
192
236
242
224
177
189
208
234
199
212
195
177
208
198
190
169
250
200
223
214
178
242
233
220
205
240
191
222
202
250
188
161
150
216
176
209
152
132
201
163
161
213
158
170
279
147
189
281
206
280
212
234
175
164
131
250
207
244
161
180
231
190
202
252
207
168
235
164
210
156
223
233
208
248
207
212
156
209
212
195
233
214
184
222
212
224
221
209
204
213
175
198
239
206
180
211
254
225
173
203
190
264
173
197
232
169
246
147
192
239
135
201
142
177
202
249
237
210
270
237
193
236
135
172
220
187
146
221
206
208
238
125
198
225
179
168
119
217
126
216
172
179
175
196
172
202
177
200
202
204
233
183
184
196
190
184
206
178
219
180
218
214
179
226
222
194
258
231
219
214
212
194
183
186
195
131
228
223
179
180
166
168
210
149
113
260
192
248
245
224
189
231
213
241
187
173
145
176
198
196
192
178
194
224
223
220
209
199
190
236
199
223
204
159
156
162
155
164
205
225
180
161
169
291
223
184
193
220
239
208
251
141
218
188
166
258
161
160
205
210
225
160
191
226
244
212
203
182
116
236
207
204
168
156
201
176
241
203
155
207
232
215
200
190
192
166
171
224
129
225
192
210
176
193
233
243
181
258
190
184
267
159
212
178
238
211
161
161
282
224
221
157
168
235
197
231
132
196
180
231
224
299
209
180
219
249
196
176
128
208
176
173
177
207
155
210
181
182
242
249
215
213
222
199
230
192
175
160
123
158
229
165
159
169
176
225
165
220
202
127
213
186
223
204
242
188
191
188
207
163
197
201
180
232
212
253
170
236
195
161
215
204
190
160
206
192
185
175
217
172
208
212
164
267
184
165
206
194
189
233
233
170
214
212
214
151
272
153
196
226
272
261
198
132
221
139
124
212
193
254
153
207
258
209
149
217
161
214
154
230
205
94
209
183
277
204
213
175
203
196
230
220
185
232
214
215
196
177
242
202
159
208
249
181
193
229
220
186
278
236
204
170
199
214
207
191
243
198
194
174
195
202
257
174
248
245
185
223
135
199
176
222
264
218
156
242
211
185
179
221
226
216
178
137
187
207
183
232
214
201
203
195
169
185
151
178
111
201
184
254
140
173
207
181
171
105
251
190
228
208
138
212
190
250
201
207
136
172
179
226
176
167
227
205
150
135
179
201
175
174
271
231
220
256
190
126
218
219
228
233
186
196
172
214
218
181
256
209
270
200
234
211
280
258
163
234
164
219
222
176
150
145
229
237
196
128
265
150
199
202
113
166
215
269
204
168
211
193
215
220
236
219
186
242
244
182
196
166
212
191
254
210
176
248
183
217
205
187
195
201
225
234
197
198
267
161
199
178
208
206
228
234
293
178
226
205
200
223
180
238
173
192
200
213
201
215
206
166
204
151
97
235
189
231
252
247
201
162
217
185
185
152
203
249
216
185
161
182
197
238
187
205
165
176
207
149
246
220
209
227
171
178
266
226
180
235
219
176
185
206
161
216
218
249
171
157
215
237
183
138
153
235
215
231
210
133
157
144
205
191
206
202
201
171
177
123
170
177
124
100
181
212
168
219
190
198
162
236
166
197
188
156
255
122
211
140
239
224
193
218
225
209
191
239
233
168
166
162
236
142
222
220
220
106
221
194
202
225
234
221
228
144
152
230
205
229
183
198
207
213
172
185
179
201
239
230
141
223
176
233
222
217
207
254
174
213
238
199
232
213
218
210
221
227
193
233
216
165
186
211
151
203
212
191
267
157
166
266
200
235
279
244
197
184
178
212
142
199
279
183
215
206
198
258
214
133
292
201
121
244
157
231
254
223
219
225
195
218
147
149
162
167
167
234
218
206
209
246
201
211
171
190
230
162
169
201
197
160
175
274
131
219
162
259
232
186
192
235
120
208
178
216
166
152
224
193
213
251
205
198
168
260
246
214
146
170
221
193
220
224
133
232
270
204
134
194
115
177
192
188
293
158
250
223
172
186
203
147
181
137
200
256
228
196
217
232
164
198
206
248
219
158
181
201
189
209
232
246
199
177
155
193
250
181
191
197
146
234
137
209
170
100
220
225
140
232
211
186
182
207
234
155
124
189
264
185
239
212
245
156
198
202
149
154
259
199
163
177
186
191
280
185
212
210
240
199
157
228
151
245
199
195
248
190
130
177
166
220
170
155
244
177
280
173
189
119
239
192
151
258
233
132
212
210
230
260
179
143
173
216
205
147
237
124
205
223
198
216
249
177
233
190
214
142
266
215
245
225
194
274
200
194
242
198
231
225
138
226
235
144
222
213
275
244
263
232
232
158
190
151
157
201
181
207
185
225
149
244
170
170
257
158
234
184
186
206
238
244
165
169
208
159
228
199
196
174
194
241
220
134
199
226
235
113
177
176
215
226
218
234
163
233
135
185
183
191
189
189
204
166
239
180
165
237
214
234
207
224
152
231
218
174
180
208
169
159
187
189
250
277
204
183
138
220
212
228
210
162
237
203
198
272
158
235
224
237
200
231
210
221
247
197
150
174
193
126
186
171
210
252
199
207
200
233
145
160
199
198
205
176
198
232
198
207
191
190
255
205
211
178
208
151
203
173
207
253
211
179
183
168
150
206
179
201
205
200
128
190
198
260
224
218
241
175
140
207
210
242
233
236
196
173
213
173
180
200
154
300
236
188
126
186
213
222
200
203
150
240
212
198
216
175
232
161
181
208
151
223
162
184
209
165
224
187
219
182
194
208
188
201
146
237
178
149
199
206
205
204
144
234
186
204
241
180
205
195
175
170
218
222
251
188
229
159
175
167
172
263
187
192
208
210
141
193
125
186
198
172
193
179
125
183
142
261
235
238
189
185
209
263
219
164
178
153
255
234
149
196
240
264
241
192
167
195
211
273
196
197
229
169
198
168
214
252
172
202
187
214
198
203
201
230
206
211
243
197
245
236
212
225
154
206
183
239
139
236
251
259
222
203
155
216
170
233
149
249
218
177
206
152
178
158
215
239
196
156
202
213
193
187
212
208
218
166
231
182
212
232
162
215
209
222
176
181
171
139
195
125
169
145
176
205
255
166
178
190
234
147
211
203
208
182
223
241
192
144
141
171
159
149
219
200
243
224
180
211
216
196
157
213
201
236
223
222
214
243
218
192
208
166
224
212
154
180
190
200
146
221
246
184
238
219
243
237
166
251
198
115
222
229
195
167
233
239
201
235
253
173
141
178
205
245
165
210
201
148
257
220
218
167
221
233
193
178
149
245
286
240
116
225
203
215
183
175
194
268
123
164
205
185
253
252
178
216
186
236
211
222
259
246
187
126
177
242
215
168
249
208
181
201
172
130
257
169
216
198
250
177
250
246
184
216
161
211
144
239
174
198
238
262
210
253
239
180
255
167
194
216
230
261
90
223
151
194
227
198
212
181
202
163
212
191
215
225
184
202
139
203
216
196
197
188
238
191
194
249
253
175
189
160
203
166
191
193
151
179
142
222
157
209
182
208
229
203
207
220
177
182
249
208
243
226
251
213
210
242
183
239
196
232
167
185
184
133
226
238
213
186
195
154
216
140
192
191
191
206
162
168
147
160
185
185
200
188
234
161
224
177
162
211
210
148
202
251
231
294
232
224
181
198
194
222
175
192
216
235
201
179
204
206
205
161
205
192
246
175
224
225
139
271
218
162
212
183
224
238
229
107
281
201
176
200
207
208
166
215
241
258
196
137
226
203
214
233
253
195
162
165
160
273
252
224
143
170
229
226
211
201
230
208
235
198
137
169
159
194
161
232
182
218
181
164
162
246
228
197
127
228
238
235
198
229
238
197
214
176
259
204
183
206
218
159
151
162
162
212
244
235
243
227
164
270
200
199
199
223
244
199
238
152
194
201
150
243
194
162
214
223
218
223
240
109
210
150
179
201
241
183
283
196
128
164
214
192
181
199
220
222
201
224
219
150
197
246
190
217
233
179
241
223
183
186
142
245
185
175
222
150
212
255
164
156
197
179
238
213
213
262
188
260
162
225
188
181
122
243
256
223
185
241
251
161
217
176
212
154
220
169
164
123
225
163
233
242
237
185
247
199
171
234
221
261
167
247
155
184
204
211
262
163
209
211
149
201
213
191
183
146
231
190
155
198
179
266
235
254
197
168
165
192
148
189
162
237
208
159
240
206
196
210
194
164
206
182
218
233
260
176
132
247
215
211
152
195
195
161
152
200
259
263
226
220
226
199
217
149
211
227
203
196
205
127
203
208
220
176
250
220
148
187
187
232
222
218
242
221
157
205
203
199
150
275
134
188
263
229
226
159
267
227
182
195
175
226
151
136
252
162
236
265
176
189
163
195
235
117
183
283
218
272
258
197
237
199
243
268
196
260
160
232
174
195
129
252
194
237
188
151
192
231
227
173
119
149
180
215
209
202
219
162
210
124
193
235
217
141
191
172
211
206
199
198
296
196
237
195
213
244
256
191
174
201
200
203
161
171
185
205
251
127
162
150
141
220
179
242
172
124
186
225
172
185
180
209
111
259
223
176
192
181
204
249
167
133
226
142
188
237
234
214
177
218
254
181
193
186
191
169
234
200
268
258
240
181
209
201
218
157
211
217
203
246
177
213
164
171
187
233
229
171
167
154
215
217
186
206
204
166
192
190
153
251
214
157
220
215
168
174
249
176
203
217
190
174
206
190
177
196
270
209
237
179
196
287
202
210
238
193
144
237
160
242
217
226
281
155
239
219
192
178
179
258
188
234
174
184
258
218
200
185
263
192
232
178
229
194
239
199
225
222
139
231
261
199
242
198
201
227
213
222
198
216
259
230
231
270
121
219
153
174
185
197
245
179
165
196
161
230
167
219
127
193
184
198
209
223
228
186
211
202
242
262
245
213
178
232
163
181
239
226
217
244
194
180
166
222
194
203
246
192
204
218
208
186
168
234
179
157
174
188
268
213
209
196
233
243
245
223
186
245
216
160
244
214
179
215
150
237
255
206
218
260
207
184
183
174
149
230
235
253
234
193
242
233
190
226
205
249
127
207
165
218
189
220
189
211
200
189
229
207
256
189
243
95
196
201
180
245
249
195
239
112
218
213
185
146
242
190
201
221
210
231
218
129
153
195
191
252
185
179
231
237
218
213
164
195
239
186
213
233
215
239
164
206
170
207
152
137
151
217
266
174
225
234
236
218
179
168
254
198
178
288
240
247
168
182
152
173
207
174
215
205
235
137
220
180
184
137
189
188
208
229
124
180
234
140
166
212
256
224
201
205
246
168
247
138
219
234
252
145
189
168
192
270
237
197
179
221
205
193
198
212
193
246
208
253
226
167
216
229
197
175
242
158
222
244
241
242
249
153
137
195
195
207
257
178
203
176
210
231
178
140
232
239
171
191
213
161
251
235
236
131
206
177
256
185
211
234
240
233
178
208
195
197
255
163
208
188
274
220
211
144
240
160
207
180
193
212
213
215
248
215
188
202
114
169
247
199
260
224
234
147
185
190
176
133
261
174
188
256
179
249
243
202
232
134
284
213
226
199
217
175
224
244
177
183
149
254
166
206
170
212
202
110
214
196
160
184
237
134
238
204
223
217
218
232
210
233
205
239
264
188
139
206
169
267
143
155
184
229
283
196
205
194
184
198
243
229
220
116
177
216
209
270
227
178
162
197
188
252
167
174
136
210
204
217
212
194
183
281
202
195
174
229
163
187
146
182
222
138
255
192
263
221
193
168
250
179
166
232
244
223
211
188
228
137
237
185
205
242
129
200
231
189
154
154
193
148
228
231
233
243
176
189
188
180
171
210
166
227
236
239
149
218
228
179
187
199
258
234
200
162
177
188
205
144
267
226
188
228
241
215
261
263
177
206
197
207
182
287
232
182
208
191
272
196
196
242
193
183
202
165
170
182
226
224
179
221
189
253
192
198
218
165
241
191
179
258
200
215
145
224
194
205
205
242
186
212
147
188
198
216
233
243
246
229
226
185
211
101
205
234
244
179
211
164
161
190
177
193
214
207
173
208
255
163
191
154
232
255
176
224
217
188
221
221
167
194
208
163
200
225
185
163
143
216
216
136
260
219
204
152
224
176
150
267
225
235
165
213
180
200
157
196
255
203
115
213
96
205
259
208
210
245
206
253
200
180
186
241
109
218
223
172
234
198
188
212
154
295
208
197
170
252
176
180
207
167
201
187
177
223
171
195
197
189
213
209
178
222
199
221
263
207
228
213
188
233
184
183
241
161
226
184
199
176
197
219
230
199
158
226
196
228
154
204
182
200
193
182
192
168
193
235
227
252
184
240
201
179
209
278
164
178
257
221
166
155
185
189
262
192
216
154
243
247
241
248
223
244
274
205
198
194
243
227
229
187
197
175
131
209
242
222
185
172
140
168
207
169
131
226
138
203
133
173
274
215
182
200
217
148
163
231
255
210
182
210
188
232
230
188
218
198
219
192
209
206
174
161
169
184
211
190
202
183
201
210
227
209
192
169
208
191
197
194
178
197
157
177
210
199
233
211
198
261
216
202
188
209
205
169
193
175
194
228
211
194
225
143
150
159
219
239
225
237
223
215
228
184
247
267
213
248
187
190
156
184
205
187
256
216
210
192
135
178
165
129
212
231
143
195
186
198
267
187
199
222
183
197
202
199
150
226
225
199
178
212
201
180
217
224
251
170
197
136
242
160
259
125
206
193
136
220
97
245
195
258
261
177
240
199
232
214
226
195
240
225
171
209
133
210
143
249
181
254
223
199
124
216
154
198
239
223
181
185
195
192
211
220
194
214
228
189
210
182
229
167
181
163
225
181
215
178
229
195
240
215
219
205
218
211
143
217
205
221
155
190
206
146
186
189
133
219
188
193
182
205
221
161
197
214
210
272
182
152
203
246
248
196
161
231
166
241
144
266
188
235
191
127
207
185
204
187
197
190
229
155
193
180
186
235
117
212
179
295
201
247
206
242
226
175
202
175
222
216
249
288
208
177
120
181
141
164
223
182
247
179
226
245
204
190
210
138
219
192
205
256
194
241
223
174
239
225
204
159
215
162
250
253
234
245
217
234
263
230
200
188
179
153
192
200
154
213
119
182
206
281
229
231
191
198
192
228
192
198
161
214
190
252
271
203
174
178
211
198
253
169
206
251
215
209
177
221
180
206
203
185
240
176
241
178
165
195
185
156
202
183
212
210
211
237
210
185
233
225
246
197
217
127
207
180
185
223
153
222
134
184
196
219
221
179
249
214
223
189
182
197
141
221
197
209
152
168
196
230
230
249
251
170
220
191
215
200
215
203
147
162
136
182
217
154
172
168
231
146
229
197
178
253
150
197
224
186
259
235
214
219
171
236
206
190
203
162
160
211
176
227
204
157
170
238
147
251
194
243
186
135
186
183
205
178
186
251
213
230
158
211
225
229
200
243
162
185
182
197
226
208
198
259
200
216
249
161
224
195
245
212
221
149
197
194
164
221
183
280
199
162
171
208
180
143
201
192
200
218
231
182
241
195
229
183
207
182
144
205
183
212
270
176
159
162
159
222
248
212
176
158
221
202
151
198
247
161
177
163
225
187
208
171
233
200
126
190
193
225
215
180
217
161
216
219
223
200
275
161
195
196
239
193
235
248
227
216
254
184
183
253
187
218
156
186
210
205
205
182
179
136
140
185
152
145
228
195
192
175
191
256
165
217
179
212
167
212
154
177
199
231
200
221
208
280
125
216
234
153
181
214
224
227
117
217
204
261
149
237
224
240
191
212
211
235
247
195
195
237
196
138
166
192
181
168
258
185
117
193
164
180
214
179
101
163
236
184
121
249
195
181
202
257
177
147
190
185
181
163
149
168
267
193
270
211
160
147
159
223
198
226
146
176
280
250
264
182
254
156
194
216
201
164
237
211
224
133
179
236
154
155
212
122
250
207
205
179
258
241
190
225
199
224
248
212
208
220
183
205
222
151
206
228
203
221
256
164
260
249
176
198
245
152
185
195
198
171
258
227
270
133
155
242
195
212
171
203
226
237
233
189
183
228
234
197
137
199
273
206
173
202
158
204
218
152
225
217
197
239
158
238
263
162
165
191
249
146
247
192
192
200
222
223
240
166
197
245
202
183
219
157
147
209
230
204
205
235
169
192
140
220
237
221
205
211
215
191
167
196
201
197
174
170
210
193
233
160
245
225
136
210
223
181
253
184
224
164
142
270
207
192
176
180
244
222
214
193
189
158
151
159
153
194
229
192
188
209
215
152
232
216
170
209
172
191
214
251
153
207
179
232
168
241
119
157
145
138
165
213
191
193
175
97
221
221
163
220
198
144
214
171
174
240
247
202
199
255
174
181
207
179
240
223
179
226
218
248
209
121
160
209
187
151
221
190
165
215
260
205
182
223
258
223
182
193
184
237
226
176
258
207
226
115
179
187
213
245
200
125
208
182
257
208
217
229
203
218
175
195
246
193
292
218
172
169
229
187
198
202
274
228
165
228
174
159
177
214
220
127
210
234
195
193
151
189
197
229
152
233
228
185
169
127
206
269
204
224
226
275
122
133
188
186
138
176
206
242
205
244
174
188
260
217
220
203
169
208
260
225
164
147
184
271
156
197
192
241
199
190
236
214
234
292
182
206
183
162
204
202
201
193
191
226
197
158
132
210
170
162
158
253
218
190
166
163
229
220
253
236
164
187
242
243
220
179
171
194
237
178
154
215
222
225
156
206
197
196
138
176
171
180
213
213
237
195
193
208
255
216
187
235
219
191
189
156
155
130
152
200
232
207
161
240
222
150
217
215
194
251
229
223
185
205
188
148
162
219
237
198
173
224
199
227
198
159
226
213
147
169
137
214
200
140
228
190
147
228
122
195
210
226
128
211
145
186
189
171
218
220
241
245
234
172
181
134
171
215
227
183
195
194
209
213
188
210
231
180
209
210
248
194
201
238
234
221
177
201
201
180
252
209
243
189
212
180
181
182
194
240
235
226
189
231
180
274
180
194
204
202
206
205
185
199
227
214
219
241
165
208
216
154
201
238
236
205
203
232
247
187
230
233
174
155
191
116
247
252
252
185
199
219
129
178
203
217
175
193
168
213
219
251
167
180
260
162
177
231
152
237
179
217
186
160
152
205
166
143
205
201
256
166
209
191
201
268
214
226
146
142
216
207
182
213
229
133
176
226
209
253
124
190
210
210
288
226
221
215
248
210
234
112
142
182
162
150
196
209
141
156
214
167
157
205
215
190
224
275
124
216
214
203
262
147
190
156
204
231
223
194
176
191
151
181
176
147
170
218
162
204
248
202
179
171
187
158
213
281
206
196
173
205
204
199
213
214
201
134
194
196
215
245
154
200
194
203
237
186
272
210
195
182
215
176
158
244
212
166
270
191
226
239
230
232
247
214
191
179
202
162
207
160
164
202
238
191
176
246
176
174
268
183
182
170
186
169
225
243
161
256
167
210
177
199
242
174
170
198
170
193
247
207
241
265
184
213
160
189
216
195
167
170
226
206
183
204
208
195
203
240
166
187
192
191
212
216
211
195
183
172
164
190
167
204
231
205
173
149
177
244
213
188
214
239
214
169
258
191
195
251
210
142
202
231
165
186
186
228
185
203
194
208
173
229
217
213
174
213
241
207
192
179
225
182
161
164
192
213
251
272
163
218
212
239
264
231
259
196
201
196
212
208
197
247
187
243
186
218
221
128
172
201
249
192
186
234
141
153
281
193
212
205
224
198
240
169
224
177
184
220
171
190
169
202
163
256
228
189
195
166
159
247
208
209
223
136
135
187
203
164
225
134
221
180
215
159
174
264
218
181
174
251
218
226
218
112
268
205
214
202
221
191
232
178
159
181
177
167
255
240
168
176
169
208
211
227
184
199
170
183
122
184
150
238
162
223
242
165
201
222
205
161
150
231
202
172
217
199
235
196
155
182
285
173
209
198
249
175
192
152
195
216
268
179
184
198
238
282
163
203
206
256
183
151
201
115
197
204
250
167
210
265
250
222
152
160
191
243
191
139
204
152
166
205
229
192
176
180
208
224
121
236
201
218
261
101
180
184
185
162
166
204
215
249
150
192
208
165
213
183
217
238
191
108
226
141
227
215
194
226
198
222
214
232
226
231
222
242
160
166
196
237
198
252
173
202
192
167
171
206
206
210
223
232
261
180
224
210
201
154
208
159
163
167
134
273
212
217
141
172
187
225
185
156
231
187
232
189
220
221
184
196
242
230
234
193
205
221
213
173
206
212
172
186
186
184
157
245
197
217
235
247
214
213
225
163
119
179
213
182
140
203
197
171
248
202
173
187
151
201
217
186
205
199
158
214
205
189
206
184
187
235
209
207
220
233
195
168
225
235
214
156
248
172
277
230
223
168
194
136
188
173
228
143
211
183
244
210
235
178
170
222
201
219
205
123
230
163
173
183
179
165
151
175
208
153
215
177
210
228
218
231
159
200
256
195
266
207
241
207
141
222
268
238
124
218
180
164
187
207
163
216
145
151
194
155
139
171
156
145
216
236
165
224
212
179
241
222
219
164
212
213
170
231
202
188
200
135
202
122
190
195
201
177
270
285
247
216
225
208
242
189
177
216
210
198
169
204
159
210
211
166
225
223
207
253
192
248
205
196
162
186
224
259
243
191
229
189
143
232
227
199
197
207
226
255
176
210
210
263
229
198
214
236
161
204
197
223
232
130
221
173
269
222
241
221
203
120
136
167
213
153
205
156
222
177
186
224
159
172
177
183
259
198
196
205
235
250
245
188
167
171
199
139
207
177
235
232
207
209
172
223
219
203
242
196
233
217
219
176
150
235
144
213
220
190
190
221
198
223
231
126
224
203
152
168
168
191
204
159
213
226
184
225
237
213
228
243
151
172
179
140
183
260
185
146
189
179
193
249
154
183
178
200
238
175
213
207
199
213
187
196
186
231
151
198
194
177
188
261
219
205
179
203
202
246
201
217
185
201
232
179
218
198
240
228
233
217
265
255
243
223
282
219
151
117
142
202
232
199
221
206
167
194
153
188
224
249
223
227
207
161
186
206
241
178
220
223
156
153
150
185
287
194
163
202
232
125
214
188
202
173
207
146
214
205
191
190
159
196
132
234
185
213
199
193
242
194
232
219
197
184
203
162
171
165
164
192
132
183
221
172
155
194
208
219
209
87
215
208
217
245
182
242
185
189
143
239
170
208
250
193
165
191
184
198
199
138
241
172
221
250
183
266
234
182
133
189
121
248
168
214
129
258
243
205
160
167
208
219
220
179
190
225
209
214
187
119
161
246
143
153
273
244
210
225
173
185
208
233
209
189
211
212
133
215
262
230
191
115
139
237
194
235
195
197
208
193
206
221
245
170
152
249
198
264
193
171
220
258
202
170
202
166
222
113
233
157
275
227
236
170
176
173
169
202
219
162
202
132
256
239
259
151
184
204
223
218
149
200
173
219
251
186
224
262
186
141
193
235
173
194
170
167
201
241
164
184
229
231
218
243
206
141
232
180
170
196
179
121
190
166
218
243
220
206
218
183
201
160
216
204
279
206
199
164
195
191
183
244
156
162
210
223
183
168
201
209
179
214
225
239
233
158
209
153
179
108
200
209
197
256
244
137
185
231
188
197
166
218
235
220
222
147
204
132
224
173
178
197
196
211
239
204
220
116
252
194
174
164
236
171
183
179
253
193
192
177
200
157
172
212
236
216
202
187
217
197
156
171
154
147
145
197
239
216
175
217
218
208
216
226
171
241
172
225
253
205
146
227
123
218
150
239
188
239
150
140
174
151
138
176
181
144
246
233
264
243
225
186
216
212
167
221
227
204
195
261
194
164
97
191
250
245
217
211
197
181
136
214
185
207
258
168
194
197
202
201
198
214
193
226
206
181
186
179
230
253
231
219
197
178
215
152
227
208
242
219
156
231
199
232
158
275
224
244
223
220
203
173
155
210
223
225
208
204
235
209
190
180
230
255
179
228
234
271
188
167
236
202
191
219
181
208
163
223
213
168
168
162
238
170
213
267
198
110
230
227
158
174
186
188
183
236
205
237
238
162
151
194
209
171
194
209
133
256
213
209
161
258
215
239
229
184
126
220
133
168
224
230
219
261
190
155
222
210
215
200
219
247
220
167
202
222
159
226
199
222
151
218
202
136
234
199
185
142
162
186
177
181
275
238
171
198
169
218
242
155
221
173
242
184
199
246
245
177
154
212
190
214
136
179
223
187
191
244
228
167
172
224
197
195
192
108
179
172
230
221
194
213
207
248
231
240
181
182
187
203
149
176
246
240
200
206
155
196
206
219
211
204
190
191
249
239
198
154
200
263
168
246
239
201
204
163
194
185
182
199
270
174
186
173
175
219
193
203
126
171
180
148
158
221
221
195
208
187
179
186
161
250
228
218
249
223
215
211
195
212
168
246
212
190
179
154
192
164
189
209
230
171
283
151
227
221
203
147
185
172
162
212
163
200
200
235
187
242
206
195
123
223
225
222
189
209
219
190
226
181
262
185
216
195
194
224
188
139
197
194
150
222
197
263
177
220
148
170
183
274
160
195
154
198
166
207
225
137
178
176
182
181
131
193
203
214
142
188
158
256
222
183
159
201
194
179
209
194
214
257
191
236
208
246
223
236
176
211
211
221
100
184
206
252
257
165
180
195
174
215
194
204
235
279
150
197
188
174
280
144
224
193
230
231
114
195
231
201
190
192
243
238
235
210
220
179
194
180
241
120
192
173
193
209
214
221
228
168
216
211
206
174
236
188
233
247
156
164
231
209
218
218
158
185
158
172
193
131
211
238
197
212
240
201
169
193
218
200
206
179
240
256
223
222
228
247
261
238
203
170
198
169
250
209
197
234
202
247
261
241
202
227
214
275
233
243
230
190
277
190
172
162
103
240
173
176
133
233
178
230
164
252
208
219
208
219
196
216
200
126
158
156
212
214
208
157
213
244
239
204
198
204
199
212
156
234
229
187
248
179
197
210
173
254
214
190
149
253
151
229
193
197
184
207
153
129
179
231
175
253
247
213
220
220
206
205
183
162
157
199
240
172
235
152
169
217
215
222
244
215
218
210
165
255
263
269
217
182
192
187
208
235
241
194
127
230
181
254
190
185
219
200
192
219
255
214
188
238
234
215
157
153
285
187
285
201
178
198
168
161
188
245
201
247
209
253
205
132
256
215
229
177
234
192
191
213
208
196
201
242
205
246
142
223
180
250
201
233
208
162
235
212
231
123
203
165
142
201
234
204
226
201
217
209
217
167
192
188
172
217
220
200
182
193
189
182
188
240
232
212
183
244
223
198
245
140
226
242
207
183
241
215
204
195
191
217
190
175
284
159
227
165
238
202
187
173
253
197
210
260
172
232
204
194
144
206
192
154
236
188
213
172
197
168
191
243
189
176
210
174
156
234
218
193
257
178
197
252
184
227
135
221
164
211
206
216
180
207
164
220
197
212
245
209
210
139
219
192
230
170
207
211
312
196
198
167
175
239
180
208
180
186
228
203
182
162
145
216
186
194
202
227
197
251
170
236
69
205
233
219
177
183
231
189
205
151
202
151
233
229
197
189
190
176
107
218
212
249
178
243
237
230
175
194
200
140
204
184
230
195
241
237
231
209
222
169
177
198
206
134
209
238
222
197
185
178
216
215
230
212
187
143
215
229
197
202
172
228
225
173
152
212
163
215
186
224
148
245
194
239
170
225
165
208
169
175
163
197
204
227
264
204
190
243
240
215
212
212
140
176
183
193
182
262
160
193
205
177
205
195
227
162
201
200
172
155
229
211
230
136
267
171
216
244
201
188
220
234
294
217
198
256
223
221
211
238
242
173
149
150
178
279
180
167
214
225
250
211
96
241
219
119
127
255
223
231
133
249
163
180
195
216
200
170
207
233
205
269
236
153
243
238
218
276
167
177
231
213
222
250
199
154
126
166
114
212
255
195
244
241
214
140
231
204
226
260
248
256
152
175
200
203
183
168
216
177
273
177
178
239
167
226
224
203
204
192
207
194
153
204
257
257
234
202
246
194
210
213
253
145
228
227
145
157
182
236
212
211
193
218
226
173
161
135
231
250
182
225
211
229
203
218
214
162
126
151
194
234
227
193
152
197
231
236
232
187
203
170
232
228
201
160
246
212
149
133
237
201
150
239
192
188
146
245
211
230
269
208
201
231
226
119
231
105
184
187
187
176
183
185
239
228
176
163
198
217
225
219
239
137
177
261
221
218
180
213
165
205
160
142
253
152
219
154
143
122
251
217
222
198
216
298
204
255
201
168
183
191
156
183
214
220
253
206
194
155
207
237
156
185
181
196
230
225
189
290
223
232
120
238
236
153
215
209
200
201
226
183
207
169
246
119
102
211
273
225
213
196
198
210
223
196
186
197
134
195
204
214
190
190
205
226
221
195
208
149
189
197
231
219
201
147
217
212
181
136
210
196
189
245
173
233
168
263
139
185
128
188
223
199
156
250
198
159
171
218
231
175
191
306
176
236
187
224
242
179
191
203
226
222
206
170
222
152
168
160
213
213
207
221
171
224
220
216
251
141
226
153
184
149
173
207
191
165
225
192
198
277
217
151
164
190
205
184
212
234
227
170
211
221
236
244
162
221
147
158
212
233
172
204
247
220
164
192
178
191
211
234
223
202
206
185
207
218
258
149
219
165
199
184
175
210
216
148
207
129
147
229
227
202
258
146
150
200
192
231
256
186
186
181
188
204
185
206
161
216
133
167
242
161
217
211
224
148
239
200
194
247
208
177
119
233
206
171
174
175
198
204
176
209
221
195
236
183
170
231
229
197
223
159
209
204
175
156
157
211
217
204
165
227
120
203
226
181
89
205
195
195
183
221
208
260
194
195
114
197
145
250
169
145
208
227
167
271
219
227
221
209
220
197
174
158
225
222
136
138
158
196
199
236
235
205
104
193
212
243
265
197
192
173
129
229
230
157
189
227
174
203
180
250
264
224
220
189
181
218
227
199
182
238
177
207
178
232
193
186
191
173
185
224
178
163
161
249
248
234
224
105
255
178
161
155
190
196
261
230
147
227
176
223
230
230
246
182
206
210
206
212
182
197
181
272
176
206
139
188
217
176
217
225
214
255
238
156
242
254
176
213
157
184
276
210
185
189
174
194
208
213
214
204
213
98
211
225
222
252
257
192
213
201
202
223
208
192
209
186
160
229
209
224
209
187
199
230
199
235
197
175
176
220
257
168
264
186
213
197
191
241
193
157
187
152
254
202
185
190
187
216
167
105
146
207
180
177
193
208
203
191
177
162
159
178
145
240
142
191
182
209
225
202
198
209
208
241
214
187
186
195
239
217
236
182
206
237
200
234
188
234
204
264
267
235
165
179
238
178
224
133
198
159
174
194
139
191
189
194
179
193
169
201
209
230
133
204
225
204
174
195
187
172
191
195
202
152
173
212
169
164
181
200
158
182
215
158
74
165
190
230
187
212
191
154
266
267
265
189
178
215
155
219
137
170
247
216
204
229
152
253
244
159
228
157
206
223
244
175
243
245
218
232
217
211
200
173
263
226
216
192
210
199
157
241
187
192
167
255
219
185
205
147
119
160
176
224
174
178
187
211
182
238
235
225
227
242
190
242
206
231
164
171
173
227
224
208
161
178
149
231
252
188
163
197
221
164
108
162
195
210
282
228
221
222
136
213
216
212
247
207
189
226
222
114
219
229
226
164
219
181
139
211
215
187
120
166
176
251
233
218
212
184
268
173
176
160
183
165
215
187
194
227
222
242
245
199
148
212
218
211
191
185
151
265
225
218
186
210
198
185
176
196
213
168
196
126
146
197
215
193
168
226
208
162
219
228
172
176
217
193
173
242
232
186
204
235
196
197
151
200
188
210
203
221
232
218
162
201
148
196
231
222
228
181
221
201
247
206
222
193
236
234
169
149
157
206
199
251
209
165
186
184
200
171
207
164
188
190
189
167
206
241
291
135
171
226
240
220
169
211
228
246
212
246
213
169
139
204
190
144
160
181
178
157
210
150
143
216
224
142
181
149
213
221
244
254
198
231
179
211
251
307
233
197
166
159
163
196
239
210
215
222
203
192
79
185
210
268
177
252
185
166
199
203
172
178
213
224
192
236
205
188
188
154
225
214
221
183
182
168
176
205
187
241
184
197
177
229
238
200
225
219
188
205
228
202
225
215
162
208
200
198
201
171
204
162
163
207
223
207
220
252
192
159
156
208
112
161
156
236
174
209
235
224
241
141
225
160
216
184
207
151
183
174
135
178
170
176
164
234
166
184
194
242
196
172
120
178
193
155
226
218
293
143
217
220
230
246
183
161
172
212
160
210
153
243
193
207
199
187
191
231
255
216
173
129
183
186
264
207
254
199
256
188
149
187
216
252
237
258
172
208
230
227
251
216
165
135
177
193
244
219
130
164
139
260
178
216
164
223
173
232
193
198
189
150
209
141
180
237
212
256
161
235
219
215
217
223
230
199
207
219
153
88
164
245
184
162
130
173
203
185
271
167
191
176
193
250
197
231
203
216
149
256
199
214
210
222
236
210
136
150
128
253
164
223
219
174
193
221
198
205
227
238
208
170
202
193
206
190
189
281
238
112
232
206
205
175
193
113
239
147
184
188
199
166
233
163
242
147
206
222
234
150
264
253
250
169
135
163
207
206
185
219
232
165
176
220
186
219
237
146
170
122
180
208
227
225
134
240
186
146
146
223
206
176
246
163
205
163
188
184
157
180
196
204
244
165
212
198
170
170
240
158
225
178
209
166
196
228
202
192
136
209
205
168
226
215
118
156
214
196
172
146
189
190
220
232
229
200
173
232
136
176
248
172
177
200
193
171
238
221
220
192
214
197
215
170
232
227
237
216
161
191
235
196
189
201
186
210
240
156
175
211
223
215
215
193
219
187
195
178
227
181
180
198
171
128
213
198
171
252
180
201
160
242
167
256
212
225
148
192
219
236
164
143
265
214
133
176
171
205
196
231
238
213
137
244
219
189
224
176
177
217
154
232
189
161
196
185
197
150
212
206
192
212
149
169
202
149
205
236
210
214
225
221
261
172
122
195
198
270
212
157
160
153
159
228
184
202
201
222
227
226
199
203
258
209
201
151
226
163
202
225
207
213
160
249
182
203
194
219
197
190
226
211
137
226
169
188
278
249
223
208
190
165
220
185
200
170
203
204
247
156
227
256
225
151
225
224
172
165
136
210
181
237
221
234
180
146
212
205
229
227
236
153
149
161
181
231
237
185
160
148
178
201
170
159
131
192
180
167
226
230
185
205
175
150
134
175
189
219
152
203
282
186
228
221
249
244
253
139
185
213
160
208
121
217
225
215
195
279
222
183
170
240
199
214
160
189
233
166
159
222
240
135
192
204
199
170
225
266
240
197
247
205
190
210
172
215
188
249
157
219
140
230
150
241
244
197
193
206
199
253
212
225
225
240
137
171
236
246
203
205
197
207
171
238
197
194
198
223
243
160
209
210
260
175
207
170
221
152
209
249
233
258
150
118
198
102
219
168
223
172
162
216
156
157
282
164
200
277
186
201
235
158
242
211
177
277
199
180
197
220
159
209
207
156
219
205
173
149
171
204
237
171
239
166
222
139
241
201
193
212
186
153
180
187
215
207
204
214
192
200
219
197
135
152
198
224
142
136
196
168
102
216
210
188
212
194
173
180
130
180
235
191
212
162
264
187
184
223
177
166
209
166
239
233
174
156
196
239
202
189
231
194
226
195
224
220
200
199
158
173
217
207
198
196
189
184
223
170
180
213
240
190
225
165
260
215
186
229
174
217
229
191
205
174
184
212
167
254
143
226
221
228
162
209
166
203
170
221
200
257
139
232
159
128
251
217
227
244
203
226
159
204
213
207
222
115
145
197
202
222
216
148
185
243
238
177
226
227
193
221
204
239
209
189
188
273
193
140
182
194
199
157
193
189
188
233
254
170
220
176
186
230
174
174
243
226
168
177
166
230
163
210
170
196
205
193
186
225
227
180
221
165
198
231
232
184
227
244
216
293
218
177
210
257
146
257
241
219
234
210
179
252
149
239
222
189
237
220
247
185
213
205
219
224
245
259
244
203
228
195
196
204
212
215
222
214
207
164
209
200
214
182
153
171
233
191
270
224
209
194
197
243
136
192
197
251
184
207
215
156
235
174
201
172
209
198
244
225
142
207
133
198
179
248
219
195
178
233
138
208
219
222
187
163
195
249
224
227
172
243
221
221
235
194
184
190
221
199
163
177
175
139
158
172
176
248
235
205
159
138
249
186
201
234
179
257
166
165
168
110
202
192
187
240
198
194
185
173
155
206
214
130
167
202
227
212
210
206
254
180
226
201
229
240
220
228
135
169
204
175
235
250
148
212
233
225
150
162
164
276
250
171
212
236
209
137
236
177
220
212
250
197
185
253
162
165
272
228
217
135
215
223
197
203
191
168
200
224
206
155
233
186
200
155
230
235
243
256
180
180
184
235
202
246
245
192
266
191
206
218
188
197
245
193
205
265
217
223
276
207
217
178
164
210
190
213
175
175
207
192
220
221
199
215
206
237
149
204
196
233
199
205
172
213
195
215
204
286
157
218
206
229
129
225
231
191
258
161
223
211
241
228
225
189
202
225
208
184
251
191
191
211
208
225
196
177
195
121
189
199
207
186
140
290
184
192
179
281
191
194
199
254
211
183
156
162
174
241
173
204
215
140
181
238
152
164
147
159
212
187
195
144
135
243
151
163
154
176
171
226
173
218
232
191
226
206
232
130
189
181
165
194
157
168
215
219
170
200
230
221
182
226
254
191
205
215
280
200
208
219
194
194
217
206
216
235
196
206
207
223
187
164
231
205
222
97
202
186
162
174
183
254
187
198
198
252
221
216
135
219
186
167
241
194
149
217
234
243
138
154
213
188
174
148
172
237
250
144
171
168
223
230
138
187
122
211
187
178
218
235
222
156
151
240
184
192
171
197
174
212
240
198
226
256
202
219
223
189
183
166
243
187
170
186
244
202
205
187
187
169
153
214
248
202
181
221
224
201
233
192
222
232
184
199
238
183
202
274
182
209
160
231
152
226
236
131
205
216
219
223
210
160
125
237
219
164
225
238
231
158
211
203
178
146
193
206
202
218
152
188
208
231
201
217
281
197
201
180
238
231
155
202
163
211
228
209
232
226
232
183
156
172
254
216
208
227
247
173
237
129
217
211
180
282
153
209
261
220
162
201
188
192
162
198
241
220
169
212
223
219
236
156
232
260
171
183
198
215
214
210
190
207
201
185
203
223
207
262
241
142
239
192
230
205
225
181
183
197
161
221
238
255
154
204
178
194
171
204
189
211
168
189
198
202
254
230
234
226
179
162
195
203
172
227
237
207
248
240
172
190
241
241
191
113
217
175
215
219
206
209
220
192
238
218
209
224
236
177
199
258
211
177
217
226
155
177
211
199
202
158
167
149
221
218
231
202
194
178
152
222
253
224
192
160
219
141
213
206
222
250
231
192
180
158
222
218
185
211
236
184
232
221
161
260
227
244
149
132
244
200
219
202
141
211
220
252
194
134
271
257
149
188
183
221
199
205
218
188
136
241
212
183
187
225
188
177
214
160
152
225
191
207
174
219
158
172
220
172
157
257
180
192
160
271
186
156
229
203
242
206
221
215
175
214
245
232
203
211
184
212
173
158
222
271
234
203
212
208
207
195
247
125
136
216
178
180
182
263
269
193
180
181
200
222
186
172
224
238
214
164
233
224
150
190
144
139
174
179
195
186
191
224
199
202
187
212
236
193
156
179
163
179
244
201
222
193
195
266
189
170
230
204
209
161
172
207
173
237
229
219
250
143
176
143
213
218
212
223
192
160
244
145
176
234
221
163
179
189
233
212
235
206
216
226
140
209
195
188
215
212
150
234
144
182
129
216
188
179
212
171
199
182
159
180
114
230
126
189
232
167
193
172
170
193
214
217
181
270
214
212
262
198
241
176
174
228
174
198
174
278
198
136
232
257
177
212
233
175
203
236
215
221
204
216
223
130
239
161
202
143
250
196
197
171
149
152
217
191
212
194
204
215
239
222
213
149
141
192
195
203
170
174
158
249
196
236
216
148
211
179
219
253
150
225
209
177
209
170
208
206
199
166
185
186
146
228
145
202
248
248
204
198
243
205
254
250
210
158
216
211
192
230
222
221
211
190
222
241
276
175
239
161
189
243
275
230
202
213
179
178
193
121
187
207
144
187
218
237
276
178
226
190
181
201
217
162
214
226
175
256
226
145
159
218
172
274
229
231
176
205
206
202
211
202
193
235
273
216
238
245
191
203
230
213
205
229
190
210
179
127
174
139
252
211
214
185
142
162
282
210
154
156
233
201
184
241
220
211
192
197
216
195
154
218
206
220
234
259
197
240
178
206
192
250
256
244
232
173
142
207
179
145
217
177
242
249
211
200
241
185
205
235
171
193
236
194
209
127
188
196
237
179
188
202
156
191
179
248
171
171
165
186
234
226
163
199
217
205
232
207
233
167
148
157
175
230
194
177
155
233
165
224
214
184
155
189
193
238
170
242
200
215
217
229
273
247
199
204
240
165
240
253
230
191
210
180
181
176
189
206
207
185
174
209
168
236
225
193
212
244
183
250
155
184
223
250
214
243
207
162
230
184
191
177
199
148
219
178
208
245
241
147
219
182
185
147
147
211
236
192
188
171
194
191
204
233
179
198
189
197
171
218
169
210
176
234
185
164
153
233
191
157
202
201
230
205
159
263
175
247
231
206
213
244
246
203
219
223
260
190
165
144
207
155
188
168
200
246
212
211
174
222
170
221
215
213
187
238
168
231
166
232
189
231
239
225
140
243
193
255
183
138
173
235
193
148
184
228
164
158
222
229
232
171
188
224
204
167
227
186
189
237
192
233
180
244
185
141
180
220
147
154
195
216
220
208
194
228
186
138
237
219
260
177
201
211
177
138
184
225
187
156
244
182
201
117
221
129
214
172
227
221
157
160
215
259
144
214
190
129
230
182
193
214
245
124
203
236
167
214
168
186
187
191
239
199
230
188
202
193
222
214
183
205
161
229
192
242
214
243
241
136
185
225
194
202
190
181
196
217
163
151
130
144
160
222
247
252
228
205
179
167
178
150
153
178
119
178
238
180
175
201
193
212
249
220
187
220
202
228
149
232
169
178
255
196
209
189
150
222
165
224
222
187
207
234
219
210
253
155
229
204
145
166
251
237
248
161
187
157
175
208
206
158
191
204
84
155
182
203
107
229
187
186
221
173
225
181
123
147
183
234
211
135
191
259
256
188
186
206
192
123
200
228
230
234
272
192
167
194
228
196
240
227
283
159
231
125
176
199
171
195
157
199
226
292
191
193
241
184
221
221
249
214
205
229
185
185
210
242
190
220
173
164
222
212
270
163
209
194
190
167
186
220
224
253
231
269
181
251
239
202
177
189
222
174
203
180
251
238
210
200
233
189
217
163
168
192
165
190
161
170
242
173
145
240
212
163
226
166
211
175
213
237
224
262
244
177
180
269
184
248
174
249
225
187
185
177
242
168
235
232
109
153
180
155
203
134
211
159
221
177
206
198
161
187
241
190
186
243
210
185
203
187
256
163
221
206
201
233
212
199
211
182
194
186
252
210
207
169
199
210
147
163
235
245
230
203
174
228
212
184
179
261
213
242
184
221
178
222
180
216
159
228
165
178
235
181
231
142
240
210
260
184
139
161
226
266
233
232
228
214
216
167
182
252
169
166
180
203
180
160
159
215
170
128
175
201
227
182
219
256
198
195
201
257
216
121
192
138
166
218
224
219
212
209
172
212
170
150
221
183
181
194
238
104
169
187
201
223
199
226
273
189
207
197
225
157
231
255
120
208
193
243
243
194
239
186
193
228
256
204
148
221
222
166
215
261
223
219
220
180
209
149
226
245
224
178
158
199
190
196
223
175
198
177
199
244
241
169
221
141
227
192
213
255
214
197
160
219
173
178
198
196
243
235
187
148
224
213
208
255
199
145
254
188
156
209
248
209
204
184
246
211
190
201
264
136
230
207
160
257
184
257
235
234
163
215
201
127
163
202
156
198
184
227
232
125
196
157
205
213
236
182
185
182
217
117
204
209
220
174
202
205
202
207
209
171
203
207
242
210
215
146
184
188
255
185
189
267
216
214
186
243
176
195
213
159
177
150
213
281
209
193
230
193
224
165
190
127
286
242
235
180
228
229
198
187
173
124
169
206
204
175
185
201
223
252
210
225
225
200
198
201
245
145
190
177
184
187
172
222
154
200
216
191
201
147
216
186
205
161
216
194
195
201
178
137
161
226
195
151
212
186
202
262
212
269
217
149
190
223
167
207
254
204
231
163
200
225
196
237
248
183
185
202
249
201
237
168
248
161
155
221
205
224
200
194
185
207
219
261
228
181
201
232
174
137
193
124
171
235
166
201
167
210
207
218
162
199
209
221
164
242
242
234
200
206
209
157
193
169
181
232
230
252
145
230
176
249
224
247
224
176
146
124
162
237
181
179
169
203
215
202
215
203
165
231
193
145
174
226
133
247
153
201
216
155
161
208
248
177
201
232
232
193
224
241
192
177
169
222
190
200
173
221
250
178
164
207
227
85
253
240
183
185
213
217
177
170
155
227
126
189
209
202
170
205
194
180
167
195
193
202
160
133
186
208
176
196
237
149
214
163
260
197
204
199
169
228
244
195
157
225
177
171
252
162
226
172
230
197
242
175
221
238
223
222
220
174
142
130
195
189
248
215
203
189
214
277
183
173
199
262
227
249
184
170
190
190
184
168
190
263
216
104
149
141
224
185
195
199
160
154
184
201
132
214
166
157
207
160
228
211
235
202
214
191
221
209
194
223
150
163
146
171
209
199
205
189
193
247
219
147
149
222
175
241
167
208
179
174
238
210
175
235
167
137
217
208
287
197
256
193
192
166
227
186
193
243
208
151
115
250
161
194
184
192
161
237
191
191
247
182
147
251
157
215
208
246
240
139
251
175
191
219
240
233
185
168
181
206
249
146
268
140
185
228
170
225
228
177
166
206
209
190
215
206
195
205
216
222
182
260
216
227
198
217
161
182
191
159
203
226
153
176
209
255
241
252
191
206
229
189
197
120
237
179
220
233
184
204
211
189
190
156
178
104
252
156
211
191
254
251
159
186
207
218
211
232
276
216
169
199
191
232
193
190
214
235
187
180
180
213
192
206
231
160
129
218
221
208
242
195
162
184
229
248
168
152
209
215
231
204
190
199
241
125
190
206
247
217
156
176
177
215
256
178
237
243
195
223
216
275
214
149
210
190
243
152
244
166
178
164
148
160
196
211
189
159
149
224
193
217
239
206
229
213
163
242
153
224
205
203
166
188
172
245
197
180
238
243
228
227
169
264
230
209
249
258
195
165
205
258
132
219
175
154
213
190
146
210
166
208
168
190
189
202
261
197
185
174
101
249
157
188
244
197
222
211
243
178
213
286
227
207
149
195
218
175
155
178
171
252
220
176
260
219
251
211
221
172
183
188
209
218
201
164
199
216
215
238
194
269
258
186
193
198
180
153
181
203
230
253
263
207
203
254
192
210
239
184
289
253
225
224
210
151
173
211
182
264
217
175
246
162
213
232
222
184
225
192
202
210
155
205
261
124
193
250
158
236
113
173
167
220
160
238
238
230
193
184
163
190
210
241
228
214
167
233
201
200
213
161
173
185
214
233
236
249
168
149
268
192
214
187
219
260
156
190
252
199
163
202
182
158
224
210
250
238
286
150
215
217
140
144
126
160
197
191
183
285
211
228
297
126
211
209
172
158
209
246
173
221
185
190
195
189
203
205
212
201
228
230
226
178
230
246
203
155
258
215
162
223
188
126
189
140
216
225
240
235
202
204
238
198
244
251
249
197
197
254
205
186
236
183
247
238
241
207
265
216
177
193
227
230
191
177
164
198
214
181
171
217
162
239
230
260
216
144
156
207
204
227
163
217
165
126
222
145
194
216
245
220
260
201
230
227
220
210
223
218
247
214
191
193
167
237
245
229
154
218
242
176
207
226
225
189
214
217
202
254
226
230
249
235
220
203
177
178
175
244
212
135
221
220
169
149
174
247
220
160
236
235
244
193
249
278
125
274
196
290
232
207
186
174
197
154
176
171
190
295
227
247
201
197
146
168
209
167
202
260
157
199
151
214
194
174
202
219
175
240
187
154
129
202
171
232
204
151
213
192
179
263
223
202
227
189
260
207
178
199
198
245
174
199
196
229
215
168
192
200
203
253
215
208
211
167
188
225
191
218
218
178
238
245
211
228
152
261
249
231
211
245
164
182
270
219
131
189
171
184
248
223
244
283
223
214
257
195
205
187
208
181
161
172
205
190
111
226
157
188
212
197
189
162
203
251
242
195
231
206
199
152
129
232
180
249
196
250
208
155
165
215
183
248
238
198
252
157
164
137
229
222
195
164
240
175
154
200
230
163
199
234
112
183
239
224
234
212
128
199
161
195
259
239
193
199
142
167
248
188
235
229
137
210
171
265
266
245
224
219
166
160
108
227
226
242
171
223
224
229
200
240
213
186
218
228
229
144
169
206
186
219
157
228
264
140
152
155
245
133
143
206
195
257
172
205
234
208
250
226
238
194
192
251
199
137
133
170
216
205
181
196
224
225
202
201
162
198
234
207
148
218
259
223
199
145
183
167
158
224
215
250
151
149
222
201
203
166
177
204
178
158
225
184
158
208
235
224
202
256
276
184
208
203
165
203
162
149
216
187
167
188
178
241
221
190
200
249
220
201
193
216
220
199
181
246
225
239
156
151
235
194
170
183
179
152
192
159
170
221
225
243
202
211
246
223
215
221
156
161
195
150
196
222
236
180
203
209
146
199
204
160
190
250
188
175
210
227
173
219
228
228
216
229
170
164
260
206
174
216
220
225
170
160
178
217
178
192
192
243
219
157
194
240
213
175
181
211
266
180
221
202
250
251
200
197
214
180
217
192
190
244
206
204
222
247
224
165
210
168
205
251
186
184
215
218
208
180
211
214
199
198
176
200
201
204
254
198
183
183
209
182
176
180
166
201
255
208
196
151
142
265
196
164
210
193
233
224
163
142
227
126
181
160
244
207
199
244
186
202
213
260
150
187
151
195
255
160
144
220
233
240
196
159
254
171
191
190
198
251
162
201
237
224
195
217
165
135
179
181
220
215
233
155
167
179
215
144
198
238
173
109
157
255
196
208
129
205
219
217
167
179
208
242
217
190
189
158
185
198
243
153
220
193
267
222
231
202
230
197
199
188
212
222
193
169
120
196
212
160
217
176
240
176
187
149
138
179
208
249
180
274
168
218
142
241
225
228
237
169
180
216
195
150
217
172
208
139
119
233
186
243
180
192
220
165
222
215
211
182
246
223
267
193
221
187
205
184
240
209
231
263
195
190
232
186
236
108
181
229
195
271
207
165
146
174
196
89
213
186
269
257
242
186
244
170
197
198
125
240
179
174
233
228
215
197
249
199
212
209
175
231
207
251
202
212
184
251
202
183
191
233
226
146
215
155
144
252
207
156
244
234
217
234
151
199
227
222
214
225
200
184
158
169
232
189
242
228
158
185
247
205
210
220
231
217
199
149
173
204
234
245
194
183
199
182
227
207
235
252
158
114
239
270
154
129
201
250
230
170
265
196
230
220
170
136
205
205
181
166
145
240
209
247
198
164
219
179
173
186
256
135
170
225
273
231
163
214
229
153
243
164
186
201
233
240
248
194
204
220
194
202
169
181
225
169
199
184
199
210
228
160
231
203
248
230
202
193
209
214
209
204
207
123
190
239
169
189
194
192
172
161
176
196
229
135
171
224
239
215
248
220
201
203
202
232
140
249
251
236
160
197
255
203
136
174
179
233
180
135
216
175
191
176
202
233
231
190
249
195
190
154
224
194
246
218
207
263
172
160
206
188
175
221
192
207
177
251
232
153
211
205
214
148
275
231
176
175
225
209
144
250
212
227
256
175
225
195
171
248
204
286
255
179
176
162
173
186
199
183
133
200
246
179
192
232
189
214
212
140
146
170
223
183
179
210
208
233
226
179
269
218
265
186
216
185
189
163
224
201
165
198
221
195
196
248
196
245
220
231
178
240
219
196
242
193
209
222
158
218
155
241
245
220
227
196
230
200
218
229
228
206
240
201
181
193
187
227
224
150
165
264
233
181
220
186
187
232
195
181
232
165
161
209
227
114
195
264
126
163
240
235
218
201
199
223
261
180
205
236
183
171
217
144
130
119
163
145
207
244
99
188
217
160
233
236
264
192
198
245
235
176
223
185
168
218
174
178
178
165
182
199
206
204
189
219
188
238
155
166
210
180
162
168
192
191
209
180
215
181
201
140
202
215
278
152
177
247
209
226
193
232
191
227
208
243
175
193
250
214
211
196
173
210
260
216
142
246
196
170
230
214
220
249
191
167
249
179
192
238
156
229
145
175
141
136
191
169
173
191
211
156
189
166
207
265
244
150
215
268
191
190
229
219
173
198
242
282
265
223
141
198
269
168
197
220
252
202
227
114
197
140
240
225
226
231
193
165
218
166
265
241
204
211
168
203
243
154
180
190
196
182
216
196
241
194
171
125
166
178
173
237
212
224
183
201
150
234
172
190
257
182
161
187
168
265
181
207
204
235
159
215
242
178
197
168
241
181
177
212
146
193
161
183
192
178
173
146
209
184
198
271
216
172
158
220
186
203
181
154
167
236
179
205
249
247
183
190
187
180
204
159
150
196
225
256
191
232
229
216
218
212
182
197
244
253
201
211
214
194
181
206
181
186
199
193
217
250
177
218
203
226
145
221
235
236
174
172
255
146
243
240
161
191
195
212
204
181
224
217
195
239
178
234
174
139
199
209
214
201
194
167
180
200
227
170
221
167
150
177
208
244
126
222
227
152
249
207
163
199
167
142
135
174
144
220
181
152
209
262
152
263
157
158
225
180
220
180
219
147
243
162
190
205
215
222
210
228
170
201
230
179
209
257
239
239
195
219
187
209
162
179
155
188
142
252
231
236
235
216
159
167
176
199
221
275
236
195
205
202
208
157
183
190
250
222
243
203
209
155
202
248
178
165
188
177
137
230
236
161
164
187
185
182
193
220
188
197
136
162
206
169
245
234
247
192
225
160
173
149
214
220
195
181
212
193
217
190
140
199
189
178
239
210
187
209
167
106
223
231
255
196
203
169
213
212
169
239
135
187
200
161
216
221
184
201
224
187
197
206
256
131
175
208
203
191
209
185
234
156
238
226
197
226
206
194
234
187
105
150
205
227
205
208
185
189
234
195
262
180
199
252
191
254
243
205
207
191
191
200
231
188
175
218
168
183
202
178
248
220
208
208
182
231
219
144
188
165
207
190
202
231
133
204
195
190
201
248
193
219
205
173
211
175
167
179
204
178
225
214
156
288
148
221
211
239
199
194
188
226
219
217
219
218
156
181
216
207
200
196
242
176
229
182
212
218
181
193
196
193
229
203
168
220
173
182
217
176
222
186
212
195
211
158
160
157
247
160
153
193
169
240
190
209
206
165
205
204
153
221
179
191
235
187
198
190
177
199
251
275
207
210
225
203
244
180
167
191
190
188
170
205
208
179
171
158
118
196
172
252
231
178
195
208
245
276
166
218
222
200
221
173
180
171
192
170
210
201
199
127
162
136
175
201
270
236
249
203
237
152
163
220
194
159
182
221
139
205
165
245
141
187
249
182
170
239
215
204
230
129
199
213
221
216
188
243
197
207
182
204
171
145
222
192
177
140
202
238
199
230
243
186
204
219
246
215
177
212
176
162
230
203
149
189
178
150
206
209
158
267
201
181
229
220
187
157
240
269
208
225
227
194
183
176
205
213
187
214
261
184
141
213
181
172
162
217
179
133
254
255
213
194
171
159
236
203
141
110
195
231
195
221
201
265
232
159
220
211
208
233
194
207
133
242
187
168
249
217
186
176
148
206
226
218
155
186
128
215
181
245
220
222
234
181
168
174
260
194
184
148
217
220
227
186
219
206
204
248
207
166
152
218
210
199
192
245
210
264
213
218
241
147
228
182
227
166
142
231
184
187
161
204
171
245
189
187
183
227
151
190
229
159
165
154
243
150
223
259
224
187
216
163
210
256
190
260
192
217
179
149
233
207
178
225
188
233
191
192
191
211
184
167
205
210
227
184
144
199
293
189
215
180
181
222
221
203
187
238
238
203
153
142
256
203
245
227
201
261
194
212
181
210
239
124
196
158
213
196
234
264
258
115
126
263
177
136
196
235
215
212
208
253
138
232
230
189
254
237
191
140
185
217
222
132
211
227
150
182
200
121
243
182
259
198
189
208
226
219
235
238
119
205
127
205
244
210
208
207
179
151
197
207
198
238
185
242
151
192
190
156
176
220
167
180
189
206
227
206
181
172
148
187
255
193
249
246
196
224
221
268
195
146
144
158
181
226
210
185
174
162
251
160
201
193
149
185
236
189
145
228
227
238
205
150
156
163
204
99
177
134
235
163
227
203
171
213
179
274
254
227
176
223
215
190
207
195
226
159
164
193
219
171
144
178
229
188
248
190
223
173
156
226
222
256
262
187
262
172
227
249
214
172
184
178
133
246
151
233
180
157
217
230
185
234
211
179
240
193
206
209
160
172
199
216
159
267
149
257
195
223
211
210
207
175
232
146
215
161
179
201
255
204
150
169
250
167
207
250
195
260
238
234
212
167
186
154
218
174
294
186
196
167
195
178
167
236
225
205
151
209
218
205
212
177
166
180
161
155
170
154
180
226
148
182
198
188
164
199
195
189
190
226
227
226
163
146
232
250
222
147
168
202
238
230
201
178
161
163
203
187
190
202
205
172
217
208
228
197
119
206
226
164
238
208
182
232
200
147
221
217
224
165
170
252
181
193
223
214
200
193
147
203
195
237
184
236
230
230
238
244
177
154
208
236
191
247
160
243
264
202
240
213
230
204
157
234
172
234
282
210
193
98
209
115
192
191
216
213
181
180
262
211
234
174
215
213
176
173
191
141
232
208
196
176
214
173
176
252
193
204
163
143
173
197
294
151
172
164
153
154
191
216
154
210
247
199
205
169
230
222
168
159
200
121
187
202
181
126
153
226
210
222
160
200
194
141
188
152
180
225
136
216
203
178
211
204
272
154
195
263
135
179
179
192
252
215
153
126
226
193
108
183
187
160
194
251
208
204
263
207
172
206
244
207
210
204
182
235
202
214
231
177
241
160
191
196
153
229
239
243
151
114
247
242
198
233
170
225
200
202
183
269
180
179
202
198
221
219
174
213
228
239
193
184
207
177
177
234
194
165
190
185
271
238
234
174
222
218
202
192
146
126
258
223
236
203
193
169
180
189
227
138
191
209
206
223
144
215
199
263
191
209
229
203
221
218
242
271
229
244
213
209
189
192
198
186
164
231
254
184
231
169
195
223
204
178
157
197
151
202
176
232
210
189
190
196
207
215
217
231
231
175
239
238
197
217
235
208
201
229
221
200
201
200
197
206
229
191
233
199
256
177
254
179
264
233
234
237
191
168
195
173
202
230
183
220
196
231
140
175
171
159
221
230
198
135
197
186
209
205
170
251
195
168
165
145
143
225
214
164
147
202
195
171
217
233
168
196
170
223
155
154
254
193
233
238
191
206
235
148
180
209
223
193
164
144
179
214
114
187
207
211
192
247
186
140
188
243
222
192
145
216
189
235
223
187
199
234
210
255
196
241
158
215
121
156
203
198
223
141
227
245
130
173
187
195
180
269
228
219
223
246
189
190
225
174
180
201
232
193
189
228
220
199
192
208
243
186
261
192
269
204
190
204
150
156
191
183
194
188
124
260
155
217
168
162
188
155
247
142
225
196
245
199
200
202
161
225
173
194
167
216
185
183
146
250
239
184
226
205
233
208
204
243
142
201
227
184
207
179
148
218
198
206
183
199
150
249
187
239
216
164
181
190
159
191
237
127
185
240
183
200
224
208
109
213
184
192
191
177
189
185
213
198
232
173
185
206
201
213
147
200
151
171
187
216
187
171
215
228
138
175
199
159
201
237
163
153
158
241
211
217
231
223
250
187
189
195
220
222
100
162
215
190
177
234
210
172
252
158
197
241
191
180
236
219
192
148
92
181
149
186
179
208
175
195
195
236
217
69
186
181
187
220
133
186
252
151
175
135
224
212
217
244
207
224
178
240
226
160
227
210
199
210
147
215
198
182
192
199
157
286
200
243
210
211
147
206
210
232
218
198
207
152
275
132
248
198
158
206
217
143
216
196
212
219
279
263
187
248
193
201
204
181
175
243
180
240
177
245
173
228
193
176
250
167
173
151
294
112
252
165
210
196
236
209
185
183
200
191
105
196
229
202
217
142
236
232
270
207
161
179
264
166
174
199
202
166
206
189
288
165
227
186
187
202
202
105
258
253
199
186
196
197
171
166
165
173
176
187
144
224
215
183
251
171
231
179
203
171
162
191
171
213
249
145
142
199
224
148
160
187
203
216
143
256
238
223
200
128
270
223
187
107
212
227
221
186
147
216
171
170
162
179
232
213
188
225
185
197
219
161
186
220
187
135
209
237
189
168
195
126
221
160
175
240
156
221
215
152
167
202
237
203
202
176
194
183
237
185
211
235
181
197
204
211
188
204
200
199
213
166
171
239
193
205
165
223
167
210
231
159
211
224
193
205
183
183
214
200
185
242
211
173
189
131
162
198
211
215
189
244
202
173
140
205
249
180
209
193
169
227
231
147
146
195
178
226
242
225
173
217
205
193
183
204
188
198
190
196
197
219
169
204
229
181
165
256
264
175
243
226
168
210
153
203
191
187
191
216
198
213
213
162
150
237
166
167
156
183
180
135
203
131
162
154
161
252
186
256
189
216
180
177
267
197
210
178
232
172
216
217
220
220
116
230
204
251
191
274
210
226
179
188
183
224
194
178
204
166
224
159
197
236
198
200
258
211
169
219
204
264
132
194
205
187
243
176
244
197
240
210
183
192
258
217
192
159
233
209
173
226
179
237
230
197
186
159
229
137
183
235
201
214
185
164
255
181
219
197
170
243
218
192
211
245
241
216
262
169
235
174
206
209
186
258
210
190
242
221
198
221
263
183
155
216
208
206
246
271
222
156
164
179
279
165
238
159
130
178
222
213
152
166
218
179
168
180
199
239
171
200
195
193
171
189
135
216
222
126
160
190
218
225
161
241
238
197
241
178
205
263
231
241
194
197
205
186
213
208
182
127
244
208
234
225
181
268
231
216
185
230
238
221
170
158
195
145
208
185
184
222
171
233
176
156
223
151
188
226
147
220
198
146
210
152
193
230
252
222
200
169
192
245
186
197
169
209
148
236
240
218
215
229
246
229
237
244
193
225
218
249
224
143
194
203
162
146
163
223
217
174
211
180
216
184
186
151
221
166
130
281
225
173
256
179
211
230
203
219
237
163
222
185
246
182
199
167
168
241
220
193
200
212
175
200
253
170
201
229
184
248
209
236
229
175
228
170
171
196
265
218
242
144
197
171
237
202
189
244
187
178
248
247
131
169
202
278
188
189
189
237
224
187
223
235
150
198
212
204
195
176
117
140
190
159
214
209
162
212
208
176
183
213
196
235
214
203
230
169
249
137
221
184
222
244
183
277
244
198
214
167
180
199
149
225
164
205
197
254
210
224
210
198
223
207
202
236
217
198
208
156
224
204
256
245
179
230
173
205
198
230
138
208
269
179
238
219
149
200
214
224
221
171
196
216
175
208
254
207
208
182
139
207
182
252
209
231
186
164
239
185
218
290
230
228
207
191
159
211
210
159
150
204
177
181
211
156
183
231
181
232
188
219
196
214
219
227
181
182
248
195
182
238
147
151
176
195
155
219
219
193
187
225
217
176
225
234
210
153
195
235
236
188
296
201
205
226
219
205
205
244
242
174
137
216
222
202
215
178
189
176
198
214
178
275
149
165
224
229
211
147
163
258
204
182
178
163
236
221
198
192
220
173
168
167
164
204
240
210
221
177
215
223
154
213
226
195
202
244
130
233
257
220
117
257
234
260
200
184
172
237
227
215
238
229
217
207
279
166
172
132
225
222
228
170
209
216
220
197
144
192
210
128
194
180
222
236
203
221
228
237
169
200
221
244
150
210
188
175
234
203
244
207
188
195
223
268
199
185
202
203
203
206
221
194
213
176
178
188
217
184
211
202
194
159
157
232
180
242
202
181
137
213
178
267
135
170
211
203
236
233
170
230
208
200
177
228
228
229
228
255
206
193
246
189
195
185
222
224
219
152
197
177
183
143
220
235
261
176
208
243
235
191
187
186
182
185
155
201
276
215
235
218
229
106
183
179
184
215
135
203
241
197
204
150
241
178
209
224
230
211
196
178
217
246
203
216
191
237
174
210
221
207
191
191
255
227
215
163
213
203
206
181
152
182
213
203
190
212
223
158
185
157
200
239
153
179
115
146
234
179
233
237
180
238
163
219
213
186
217
209
241
233
204
177
247
195
237
167
161
111
176
244
195
157
206
224
186
221
234
154
216
205
225
204
228
199
228
192
248
163
211
245
200
190
182
147
164
204
210
220
251
202
200
234
232
228
231
167
227
216
190
177
168
244
208
197
257
213
243
125
269
183
191
186
246
178
236
173
208
211
219
172
204
247
176
212
236
250
221
172
155
181
205
214
242
212
152
243
202
206
227
249
194
166
167
162
173
200
231
250
240
152
256
200
186
206
201
193
189
221
220
255
205
232
165
223
221
258
165
284
242
170
143
209
186
201
177
224
229
228
220
147
232
206
209
160
219
202
182
225
250
103
191
138
203
234
163
214
153
231
213
184
178
169
191
162
226
295
238
229
215
188
166
228
167
206
128
208
209
226
219
175
216
154
249
212
176
148
173
236
161
190
190
249
194
217
146
218
188
207
244
223
204
274
178
184
213
237
177
178
172
235
156
228
228
194
185
201
197
133
168
176
230
225
173
202
165
193
166
209
251
198
258
158
177
191
149
194
169
174
163
159
188
160
180
210
276
176
206
187
155
214
230
240
238
160
242
200
255
182
196
153
196
206
192
151
158
205
179
208
172
230
167
195
207
164
299
227
181
212
199
122
201
183
206
202
156
199
213
222
259
210
168
174
129
226
209
248
271
115
220
191
188
147
191
173
208
232
191
204
207
223
239
227
211
178
244
238
218
194
199
194
188
213
198
245
185
200
224
188
111
166
233
126
135
258
176
201
228
174
205
195
171
230
138
210
120
223
198
150
166
167
126
162
222
145
192
207
229
196
193
194
151
224
213
198
222
222
243
197
207
162
195
133
204
166
261
192
198
176
184
203
302
156
231
197
177
179
180
228
253
159
174
129
146
218
195
209
191
175
152
241
209
155
198
185
205
247
241
176
233
80
192
242
156
169
251
224
226
255
265
170
207
171
113
229
236
242
188
206
205
209
111
163
253
244
166
156
218
259
221
180
128
186
228
233
229
205
234
220
198
217
206
216
166
170
227
278
197
247
209
178
220
230
180
228
171
170
198
238
181
206
166
212
199
232
207
147
230
236
133
213
143
213
180
200
226
248
181
218
192
149
195
235
231
249
170
192
265
212
161
158
239
197
209
208
262
196
181
179
196
94
120
180
197
201
212
154
155
232
148
185
206
190
213
162
178
182
237
219
193
211
221
228
174
199
199
191
198
182
255
222
143
225
171
237
170
120
234
186
176
173
207
196
199
211
240
208
151
226
166
272
171
147
268
202
232
199
118
227
208
188
210
195
164
255
183
169
191
223
141
200
191
205
188
175
186
158
236
154
221
225
257
201
192
146
221
210
156
258
197
214
207
197
231
235
125
225
226
180
185
150
195
211
155
226
249
237
224
210
182
203
193
230
199
214
190
170
186
209
232
200
254
201
205
209
204
208
223
230
189
158
195
229
185
151
237
179
151
233
219
215
205
254
173
186
220
175
232
189
193
216
203
224
159
167
151
176
239
194
170
162
147
184
224
258
134
242
148
160
243
263
269
126
262
243
233
199
197
236
234
196
164
210
173
222
239
199
153
214
202
223
200
154
171
198
217
184
237
166
184
165
228
146
143
214
190
218
178
215
196
158
211
176
163
256
179
242
249
212
119
155
187
163
215
234
248
189
224
209
211
150
194
180
218
207
220
179
168
260
178
207
227
222
174
167
229
185
241
191
255
176
206
213
273
223
186
148
170
162
163
281
226
203
213
213
221
158
196
197
187
189
172
169
234
223
205
181
191
185
247
248
254
128
237
192
159
184
184
213
184
181
198
138
183
192
123
216
191
147
177
272
158
243
231
166
183
182
253
203
143
175
215
206
202
231
200
177
187
184
227
213
144
198
235
243
99
180
183
229
135
219
185
219
184
183
194
196
185
182
210
217
183
144
169
195
227
181
182
139
196
174
153
231
191
164
188
211
208
143
162
198
220
181
223
228
131
221
166
170
194
206
182
220
249
153
249
190
180
243
205
220
219
230
162
252
138
218
218
206
163
209
157
207
169
153
219
143
237
214
215
216
170
196
186
187
188
225
151
178
178
240
174
228
249
149
141
228
173
184
182
136
214
131
246
196
183
220
196
227
228
202
183
243
240
244
219
245
238
235
132
220
210
238
180
261
201
155
119
190
189
216
164
189
225
123
223
177
244
189
209
197
201
254
220
227
226
233
229
152
162
213
179
183
183
186
140
216
211
200
199
238
201
195
262
187
184
219
250
209
239
268
162
218
157
236
175
220
231
220
172
227
100
193
224
125
201
216
236
237
181
211
186
147
200
219
216
259
224
227
223
233
266
191
266
209
196
149
240
216
226
197
183
208
214
213
179
206
191
204
227
201
174
193
179
189
161
244
220
207
228
223
186
163
187
189
178
174
238
190
212
231
203
205
224
232
254
214
205
181
233
185
260
230
219
150
189
241
132
217
154
201
169
275
226
200
204
228
205
113
178
182
171
216
197
192
221
212
204
236
247
178
207
239
181
187
136
211
200
176
224
182
241
201
224
215
194
155
161
221
243
248
210
189
164
170
183
227
168
236
164
234
186
249
218
151
204
196
157
199
202
194
158
178
214
241
185
213
210
193
208
169
206
208
216
176
262
231
211
220
205
239
242
145
255
155
184
293
140
201
240
191
220
255
186
117
217
151
209
238
188
204
179
192
215
190
156
164
173
185
162
205
172
194
211
242
231
186
227
153
119
166
213
219
188
179
122
259
265
157
238
208
178
171
188
175
178
183
195
195
208
280
146
222
235
154
178
228
236
210
283
228
244
168
174
147
202
118
207
171
232
190
210
142
174
204
245
215
164
139
148
250
254
191
277
149
193
154
167
237
192
167
226
225
203
212
188
181
221
255
181
170
245
207
243
227
220
220
208
182
190
182
154
209
167
191
193
280
220
283
176
189
162
236
193
132
184
213
192
270
178
214
165
142
183
220
237
235
130
167
209
246
189
201
199
188
171
202
185
191
226
238
148
198
155
162
185
215
216
184
199
186
175
128
214
206
174
215
223
226
199
215
205
210
264
174
219
243
202
168
259
244
148
263
237
210
237
226
182
230
205
251
179
231
219
235
228
183
150
189
205
191
208
231
211
189
217
140
211
158
222
188
214
265
283
205
244
240
263
232
184
189
195
191
219
188
219
159
212
205
260
232
214
211
153
198
213
255
236
171
202
270
179
202
153
220
144
246
199
197
197
214
158
232
238
207
175
237
172
156
203
187
219
234
210
174
148
176
120
204
257
173
254
200
247
207
182
170
169
146
267
218
169
277
212
239
201
132
198
223
153
190
219
194
195
182
197
182
210
234
202
180
207
181
207
151
209
221
210
172
211
156
152
241
230
205
248
137
324
210
122
185
209
170
238
239
196
226
254
225
193
255
229
200
195
220
210
163
211
211
173
168
117
205
187
176
188
145
204
245
248
197
208
216
205
127
168
230
185
191
182
208
195
210
195
215
194
149
184
199
181
189
196
213
195
227
208
196
227
228
135
231
186
191
257
281
167
173
213
206
225
152
175
149
246
168
186
176
215
252
151
176
182
202
168
224
211
162
167
204
223
225
108
257
171
202
185
224
205
178
174
175
194
235
167
157
198
237
207
217
207
239
210
141
212
173
209
162
185
203
169
179
219
219
191
219
156
154
166
164
247
223
196
112
216
177
191
166
171
151
213
246
189
207
171
187
147
232
178
213
226
158
219
183
156
211
184
228
238
214
261
191
192
247
237
183
228
196
212
226
198
194
177
181
204
254
110
208
209
174
130
196
154
167
218
274
211
186
163
235
240
209
185
252
209
192
182
195
168
141
167
182
199
179
142
200
220
147
240
232
166
223
140
158
217
177
111
177
200
175
146
204
185
186
216
233
179
236
181
222
243
181
205
213
193
201
181
194
212
229
179
206
177
259
216
205
207
212
228
197
213
199
165
190
269
146
117
195
162
241
181
187
169
194
172
191
203
135
156
178
202
150
231
174
182
172
164
209
145
211
230
233
189
166
218
277
183
199
164
189
157
185
223
218
216
219
248
166
123
189
200
202
206
216
175
203
166
175
280
257
157
173
187
197
172
215
207
225
258
136
167
227
161
183
133
187
124
193
169
214
195
202
206
230
220
261
223
207
241
209
235
150
280
185
155
201
191
235
212
229
220
159
244
231
150
227
154
221
185
215
190
211
216
205
210
221
206
200
254
241
177
230
249
174
196
148
195
206
195
146
235
156
192
213
117
152
188
176
250
183
128
205
256
146
147
171
226
228
143
185
209
232
198
264
167
176
196
140
164
213
158
212
174
156
226
281
154
194
207
239
189
199
145
185
223
207
173
228
177
203
192
238
212
220
195
199
199
212
194
177
227
222
184
211
211
190
185
220
150
204
210
216
243
198
227
132
167
280
243
205
204
223
207
180
207
107
249
194
196
144
201
189
232
260
167
178
216
192
158
196
190
209
198
146
184
181
209
208
215
209
215
246
141
99
207
190
228
186
190
152
153
201
253
182
228
226
148
162
159
169
250
220
219
189
219
209
257
196
165
227
202
236
188
184
189
220
164
165
170
134
251
161
173
230
227
145
205
173
202
164
200
154
135
159
141
202
238
216
177
193
202
230
202
197
226
172
200
212
214
175
246
207
230
200
161
226
205
236
184
213
201
222
165
152
240
195
196
179
147
198
143
188
163
204
191
181
192
253
227
173
201
218
260
193
118
216
175
231
179
223
205
187
228
187
209
138
192
184
213
224
242
179
148
203
280
156
234
181
211
258
179
246
123
236
235
191
215
207
171
227
222
183
213
239
238
208
167
242
220
156
159
164
175
87
239
150
231
139
217
197
145
156
129
209
211
197
153
156
278
252
201
177
227
234
237
174
229
242
192
214
177
239
226
175
195
189
243
188
187
229
223
196
192
167
226
172
214
203
114
117
174
188
171
171
170
247
213
243
203
194
155
224
191
166
211
249
230
240
183
135
193
275
202
241
265
139
222
229
160
251
116
218
176
168
201
175
188
174
204
246
168
199
132
209
240
241
167
173
128
161
206
231
192
193
190
261
237
186
202
184
175
221
154
228
220
225
209
126
190
201
154
186
187
221
178
135
194
228
204
208
163
207
181
180
238
228
200
145
264
173
179
205
237
211
223
169
249
200
241
190
177
223
222
210
191
211
201
241
154
242
217
159
259
159
178
222
211
220
163
171
245
191
184
143
107
215
244
232
228
228
171
204
241
264
218
129
160
157
241
217
210
248
137
245
195
201
109
171
213
203
182
182
196
192
181
230
182
231
235
155
154
227
191
210
147
226
250
212
193
233
135
166
134
221
158
164
206
167
235
215
188
242
169
228
191
187
190
233
160
204
192
247
215
160
229
156
184
144
184
257
222
188
168
194
165
196
230
202
206
245
147
223
230
198
245
196
203
169
232
238
161
236
180
232
230
224
258
205
242
168
204
223
219
190
161
221
239
202
180
233
156
169
249
241
209
221
132
240
147
280
252
242
132
234
172
237
207
244
160
237
173
262
224
179
223
169
259
229
211
234
195
237
205
204
178
172
228
272
215
220
234
178
203
185
176
168
179
190
242
213
127
177
208
213
194
181
214
289
199
202
163
193
207
162
198
200
200
281
144
187
249
160
205
240
241
192
176
153
162
269
143
152
240
156
266
227
156
219
186
215
150
173
139
132
244
215
169
218
214
193
199
171
209
159
235
248
179
180
222
177
253
192
184
207
236
186
186
168
213
204
214
220
181
221
217
188
163
190
178
190
210
175
203
202
206
185
207
218
239
154
184
142
244
208
187
192
187
253
142
209
183
225
218
223
238
184
226
244
205
179
246
212
236
258
170
172
206
259
173
172
229
208
170
176
162
287
196
200
234
220
159
233
185
181
204
175
184
215
157
181
254
258
190
155
271
153
205
236
158
225
193
166
238
238
185
219
226
181
199
111
217
241
231
178
239
240
157
214
149
229
184
224
225
148
176
225
152
173
189
169
148
179
182
208
182
207
107
134
246
260
181
168
237
193
209
203
181
188
181
179
234
208
224
180
130
176
173
190
169
149
155
242
194
200
182
177
173
179
190
201
223
278
238
237
206
223
197
126
183
202
180
190
194
153
219
233
247
176
145
217
168
164
219
187
247
186
194
205
216
191
228
207
208
240
209
246
204
223
170
196
202
195
150
231
155
171
142
254
253
214
229
229
238
236
161
125
203
206
222
144
233
209
199
234
158
158
187
227
230
225
142
193
209
186
171
210
214
177
153
264
202
169
193
196
182
276
220
197
235
195
256
261
225
168
213
257
223
159
168
268
197
195
258
133
224
253
182
243
253
215
255
144
257
206
170
181
192
184
196
278
222
192
113
230
171
218
149
233
177
192
262
181
189
234
166
210
162
222
228
260
264
174
219
176
222
187
212
194
144
160
192
155
239
161
169
219
158
135
172
189
200
171
178
227
244
238
175
225
214
225
147
211
148
162
196
199
228
179
197
176
244
186
213
128
233
154
166
219
176
285
211
225
197
185
219
165
196
208
274
146
173
205
192
134
209
223
203
270
253
234
248
245
207
214
247
145
228
195
166
156
201
234
167
175
201
261
116
247
189
226
232
149
186
247
247
197
242
239
222
164
222
160
257
194
231
215
201
227
253
231
206
139
213
199
229
198
182
168
252
218
224
156
211
184
204
246
191
188
201
224
188
138
203
203
224
152
214
232
263
198
254
219
207
169
200
181
226
207
144
176
193
232
225
200
192
197
225
173
180
223
205
201
211
197
255
209
160
212
189
168
184
209
242
214
226
182
199
253
151
248
226
206
250
204
192
234
200
251
201
192
187
207
260
214
200
214
189
195
171
198
200
260
163
252
140
192
240
187
191
212
253
202
159
179
214
238
177
200
198
229
269
200
234
202
123
208
190
199
203
263
180
227
169
200
204
208
199
280
199
266
185
183
207
210
172
162
214
243
193
176
159
174
177
229
220
215
223
223
216
264
219
193
102
194
226
227
227
181
166
162
217
240
183
213
293
215
190
163
193
232
229
200
168
219
193
197
202
234
270
184
205
271
239
187
207
264
136
181
188
229
160
237
200
209
161
224
183
166
207
191
207
238
175
196
164
240
180
231
150
226
191
215
214
259
182
193
154
144
179
175
240
204
273
251
225
172
237
171
241
174
224
164
183
194
215
234
185
203
211
182
189
198
159
161
244
224
181
266
217
196
250
209
135
158
175
201
181
176
120
189
258
148
195
183
111
246
173
180
250
229
269
191
199
200
231
182
233
172
227
229
224
272
147
245
198
191
195
226
197
116
221
242
178
244
217
220
169
194
236
203
152
194
214
145
211
248
193
262
179
172
143
196
213
176
203
200
172
243
191
166
207
186
202
216
227
269
244
192
128
231
258
200
211
219
198
195
139
239
192
225
237
228
179
200
190
139
224
169
174
152
145
214
131
188
262
236
257
142
211
217
208
210
199
242
211
170
217
212
203
125
202
195
179
217
167
252
193
255
166
167
212
248
200
232
203
229
200
209
115
220
199
214
179
223
185
214
225
241
187
175
197
181
183
243
223
212
188
201
220
199
216
239
195
240
156
212
190
188
184
193
121
192
229
229
109
218
221
192
191
239
153
161
178
161
190
272
193
180
185
222
250
226
157
195
234
256
173
148
211
238
163
172
219
215
235
213
157
180
208
218
215
258
254
148
157
203
237
231
169
207
201
222
160
209
167
180
251
230
181
144
135
137
209
203
198
187
272
184
166
240
207
166
221
184
177
187
164
137
177
160
169
224
192
175
227
200
159
203
222
256
200
198
243
229
194
240
203
187
162
164
175
175
219
234
161
284
131
157
171
185
256
155
266
175
167
179
178
158
217
216
279
197
240
212
179
227
241
189
178
272
192
199
230
224
237
181
162
162
128
286
217
252
177
182
236
186
177
218
237
195
154
199
212
158
229
159
151
231
179
194
132
243
229
236
259
205
222
183
200
190
128
222
198
209
183
236
200
200
256
187
216
192
244
184
138
225
188
215
256
164
208
243
162
287
189
158
192
222
172
249
212
219
188
233
165
242
189
183
232
267
210
193
164
202
195
232
153
184
239
149
178
234
170
179
234
163
206
206
114
184
203
206
187
228
221
151
218
193
149
158
194
226
216
193
226
185
215
194
175
162
176
184
210
151
157
222
183
195
223
193
135
186
208
198
131
246
205
208
190
202
260
225
205
121
194
219
201
209
193
172
184
247
205
183
166
152
125
160
260
167
181
249
173
257
251
232
209
227
235
256
175
169
237
228
180
255
220
161
218
179
225
252
273
134
212
212
218
200
170
190
198
207
247
258
197
198
203
194
210
212
221
218
182
169
179
191
167
157
221
193
154
250
189
214
160
218
151
185
229
168
144
212
200
236
151
208
246
235
267
195
233
216
134
214
184
190
186
184
251
156
227
195
227
204
219
204
187
166
208
159
213
214
202
169
218
216
163
227
172
150
243
168
223
186
209
197
172
193
144
202
234
168
181
190
242
218
159
170
183
163
194
224
191
177
189
250
190
226
191
230
217
207
226
179
198
207
184
176
266
179
144
250
162
147
140
221
192
261
196
225
220
206
187
128
207
170
181
147
198
224
203
118
215
192
262
199
196
227
183
237
192
183
181
157
280
221
279
202
158
212
149
122
220
268
253
182
213
212
198
196
126
191
201
190
243
222
195
237
207
166
265
196
195
197
157
188
234
202
220
271
230
216
171
142
193
240
199
204
245
207
195
156
185
248
204
199
220
141
210
235
163
186
151
209
249
242
249
213
196
193
196
175
167
199
134
194
192
267
201
150
252
199
272
188
228
239
229
213
243
226
174
173
199
169
151
166
134
204
237
153
196
219
174
151
204
213
173
175
227
201
283
194
216
182
255
225
206
163
247
251
151
242
215
203
195
220
252
194
205
222
181
153
249
204
197
202
221
160
132
202
176
182
198
185
218
160
223
229
213
249
171
176
209
238
183
204
248
241
269
218
204
203
207
107
247
232
190
237
206
224
208
221
243
283
134
239
235
210
187
203
182
203
206
231
204
206
210
216
222
185
188
240
143
186
216
180
248
241
199
164
206
193
227
191
177
196
174
185
229
190
206
268
189
259
110
284
185
174
186
217
162
234
205
216
222
140
198
197
204
216
253
222
187
130
134
149
207
218
189
198
157
189
171
208
204
202
162
210
221
201
190
182
207
216
138
217
192
214
183
188
218
190
162
249
204
211
167
168
147
231
220
236
161
186
238
265
268
210
259
154
190
179
210
206
222
207
185
161
156
213
200
212
292
214
216
224
172
221
246
159
240
200
216
212
178
234
246
212
195
202
216
116
194
175
215
206
140
197
172
227
213
207
282
218
266
193
213
182
258
107
189
187
180
253
210
210
216
216
241
243
227
278
287
223
172
181
187
248
217
125
175
180
239
229
204
233
232
175
184
158
208
227
213
169
244
189
207
166
214
180
254
210
233
194
225
243
216
170
154
176
146
221
216
211
228
237
216
243
224
249
169
230
211
146
245
224
190
188
220
209
156
201
210
194
210
224
237
170
172
238
146
174
232
146
227
197
219
112
244
248
177
182
221
195
213
230
226
237
164
179
140
170
212
218
161
178
208
218
187
167
249
216
237
209
183
169
241
201
206
164
175
231
235
192
246
212
209
259
245
161
146
222
236
193
186
238
170
238
244
246
215
176
229
237
162
260
202
202
227
178
245
192
207
219
236
227
225
157
188
255
184
196
195
250
217
217
111
225
228
155
256
237
208
225
224
194
200
199
216
194
223
175
177
200
255
224
207
209
199
156
162
147
179
275
194
242
177
245
202
242
200
213
227
160
172
184
194
220
190
123
167
161
246
208
240
234
218
177
200
237
202
230
227
204
161
199
145
187
152
246
260
190
166
197
184
225
226
231
233
184
254
231
206
169
225
234
177
123
197
174
203
165
246
214
157
158
233
204
198
232
214
181
195
220
116
183
154
231
224
260
159
165
246
165
214
184
189
203
202
194
195
187
276
246
128
246
186
223
238
228
178
250
202
187
203
138
194
266
207
169
178
197
210
152
245
232
176
250
113
220
196
230
194
245
152
186
209
183
245
230
159
273
194
194
265
199
155
140
211
194
164
281
206
202
236
204
161
174
206
202
194
271
208
288
168
187
193
211
175
256
220
179
199
252
242
137
218
238
277
154
234
242
171
178
166
216
237
162
201
141
145
207
236
201
230
238
202
199
214
185
208
184
202
207
201
235
137
164
196
187
225
210
199
197
149
140
208
200
207
205
164
211
184
206
243
247
168
197
171
189
203
180
232
241
214
210
147
170
229
227
210
146
208
124
226
184
216
152
217
160
173
209
173
223
214
206
180
221
284
169
249
226
249
210
232
251
179
233
192
217
197
193
203
235
153
265
199
169
242
220
236
155
201
230
207
262
194
176
183
228
193
215
217
149
244
165
220
152
145
188
189
184
247
241
253
199
219
141
227
127
184
241
223
201
261
221
192
182
228
212
173
195
136
186
196
203
202
188
172
184
183
185
239
233
240
185
200
216
207
245
203
186
186
229
189
165
175
155
203
218
189
149
158
167
226
241
198
184
236
272
214
235
223
171
126
220
214
175
191
216
211
231
265
181
161
144
234
147
241
254
157
212
191
200
208
151
169
176
262
261
175
192
183
228
247
215
189
123
206
235
174
186
219
186
224
218
233
250
203
216
192
194
203
146
233
200
134
197
172
166
162
202
186
134
217
230
210
238
160
227
264
243
238
198
222
202
245
233
225
214
149
254
205
245
219
239
163
242
179
179
196
130
216
179
189
227
180
221
225
183
264
208
171
219
167
148
165
241
197
169
156
128
167
257
262
167
211
212
214
186
232
210
166
233
196
199
205
184
146
228
146
209
235
130
214
191
211
170
221
191
247
131
181
211
213
254
193
211
195
197
217
237
190
250
269
229
175
156
207
194
136
191
198
247
195
181
221
238
212
239
200
162
241
164
194
166
215
201
173
250
249
219
192
185
146
223
148
274
210
183
247
147
189
146
181
198
157
209
217
215
221
233
232
189
134
225
162
223
175
205
200
162
235
226
190
194
185
190
228
206
208
200
171
223
211
144
205
142
215
180
245
177
182
237
170
225
210
176
233
204
236
205
138
192
226
190
234
195
117
129
216
188
203
257
284
178
219
259
215
194
222
176
199
174
204
235
205
233
171
224
188
200
183
170
225
181
232
178
234
221
148
203
172
110
229
234
205
213
201
258
207
185
185
220
263
197
223
199
274
239
197
180
250
236
238
183
174
220
244
169
184
209
210
203
181
188
174
193
267
219
243
204
171
198
189
234
178
187
199
162
190
151
167
146
178
198
195
203
251
251
233
254
176
204
221
246
241
171
225
193
213
120
237
144
254
202
210
166
210
213
175
184
216
156
190
129
146
93
146
217
229
218
242
206
248
169
168
161
180
205
217
178
198
209
145
196
217
199
225
226
247
153
148
230
133
120
230
196
175
173
229
185
195
162
190
154
157
189
174
184
153
162
244
192
204
231
202
206
161
191
184
179
212
208
206
243
192
211
180
175
216
184
213
200
195
243
150
153
190
178
230
207
197
227
147
250
174
252
213
246
233
186
207
230
216
177
216
281
221
209
136
176
174
149
171
211
191
214
188
257
207
189
198
212
180
257
145
181
210
242
230
203
255
221
152
216
271
190
133
196
199
214
175
203
206
189
202
206
157
173
180
170
197
154
214
186
257
127
128
210
201
152
170
191
240
182
200
232
235
151
142
231
203
157
171
155
186
173
247
179
208
220
224
222
175
252
163
231
169
137
197
177
169
194
206
211
193
153
211
192
184
242
182
237
230
182
144
185
210
236
221
215
201
200
224
203
191
163
186
239
159
234
206
158
190
156
209
227
143
257
215
257
180
185
138
186
172
208
212
257
208
193
191
178
250
150
207
220
235
142
221
172
198
227
115
148
196
222
252
178
273
190
229
182
235
190
161
144
241
168
239
188
251
168
171
160
166
182
219
217
217
182
206
191
178
224
219
235
198
174
177
159
232
236
205
165
224
184
215
227
172
192
225
253
170
156
238
212
230
234
226
216
194
186
209
186
187
188
242
180
182
232
231
180
167
232
234
243
207
211
202
179
256
194
247
212
214
215
168
162
237
208
186
165
238
235
190
192
220
143
163
233
211
213
137
221
202
155
252
191
246
176
199
170
220
193
204
182
238
192
145
185
181
202
210
196
179
185
168
192
180
197
153
187
209
183
212
214
176
227
195
188
151
180
218
228
185
209
250
152
202
189
232
178
231
170
222
193
215
199
212
180
144
218
206
174
230
260
157
224
215
186
211
196
248
251
189
243
209
250
201
196
230
218
138
175
216
254
138
178
152
228
177
186
148
228
126
162
202
221
150
224
202
214
222
203
170
217
236
213
207
202
199
170
186
224
270
218
183
228
205
256
205
249
168
231
108
257
262
164
214
143
223
245
168
204
241
241
255
183
217
218
160
181
188
171
253
202
225
145
216
242
178
208
202
175
211
223
188
185
149
149
157
247
245
198
193
178
202
212
226
242
181
244
200
226
186
191
205
182
222
164
202
153
189
239
186
219
202
216
206
225
148
138
181
216
260
137
248
185
231
243
230
248
155
110
164
202
211
196
178
218
171
185
211
136
210
173
206
158
218
244
165
169
154
148
230
165
280
223
220
210
184
208
248
256
229
232
242
180
258
239
224
176
218
155
255
138
234
279
251
229
112
280
194
199
192
135
237
207
193
209
205
200
150
246
179
145
185
201
170
215
194
220
168
185
207
220
172
207
134
159
198
201
186
237
188
222
182
272
268
207
196
186
140
173
188
222
218
235
136
176
231
205
243
185
201
145
214
206
154
170
203
178
231
131
166
213
218
241
177
245
176
180
252
237
187
244
199
193
190
129
200
215
194
182
183
224
184
184
181
259
256
212
187
117
232
186
168
192
205
157
195
270
205
219
218
224
212
167
277
201
203
222
204
224
152
214
204
196
244
212
255
191
224
182
155
174
222
190
206
143
153
220
210
200
198
157
212
168
220
242
212
165
126
152
256
154
214
212
169
178
161
180
239
225
197
256
161
209
147
165
150
214
178
202
211
177
231
245
207
227
160
141
221
257
205
235
245
148
223
141
262
146
212
192
250
222
232
177
210
266
188
216
178
238
153
175
187
205
206
172
206
165
244
164
182
169
252
157
215
187
243
239
220
137
174
212
142
170
213
240
209
227
258
197
253
207
183
242
191
160
253
252
168
182
200
188
236
174
223
205
253
225
206
221
176
183
228
195
179
215
174
254
195
213
236
241
232
245
192
229
220
249
214
225
197
183
152
280
230
229
203
197
212
208
150
174
180
165
154
179
187
201
244
254
162
140
136
178
174
177
237
157
209
198
162
265
209
269
220
210
275
171
205
228
233
255
170
211
157
185
246
228
160
170
142
206
243
193
212
238
240
180
199
179
180
136
235
192
233
121
189
179
217
237
191
175
189
212
172
210
146
194
254
208
280
217
165
143
222
247
223
179
219
155
205
187
174
127
211
176
208
243
205
168
170
207
204
248
142
161
154
137
192
200
227
215
202
226
209
196
238
199
178
169
260
135
213
208
224
190
177
159
198
185
203
179
203
163
250
160
223
208
155
178
220
200
224
153
271
214
205
189
184
204
233
221
239
204
209
214
202
155
212
220
229
198
227
220
217
199
186
209
200
217
256
265
142
178
169
171
256
203
216
213
166
167
211
244
240
195
263
196
242
231
162
148
165
198
184
142
147
224
214
165
153
205
222
228
236
252
167
202
111
212
257
232
208
160
163
161
146
244
215
164
210
206
198
145
209
206
273
212
231
243
204
165
199
165
206
259
212
213
237
162
202
242
209
205
197
203
179
216
181
191
190
193
242
249
199
233
205
143
157
166
218
229
186
158
149
198
217
223
177
198
224
148
229
140
230
179
202
166
218
216
224
165
222
153
235
205
228
168
204
193
203
173
191
241
231
216
207
196
208
115
140
235
224
207
215
191
183
223
167
220
234
217
247
237
178
228
181
227
107
195
254
135
188
236
240
148
214
266
198
152
182
228
173
242
191
203
193
200
176
186
227
227
250
278
202
153
173
229
233
226
197
142
175
234
182
220
189
217
219
176
142
207
217
209
265
129
218
224
202
220
205
246
159
213
211
198
235
255
283
205
145
176
199
198
249
213
162
191
168
245
229
211
244
220
173
195
230
196
221
198
226
193
176
178
192
215
182
198
173
165
276
189
198
82
185
247
258
213
223
228
195
164
163
176
253
208
122
171
231
161
153
219
161
228
192
162
199
243
156
194
158
160
128
202
177
160
216
193
189
211
149
144
177
221
193
165
212
212
127
235
244
177
171
198
201
192
212
168
184
172
210
179
167
174
199
211
242
217
220
152
183
189
212
201
244
226
199
240
227
186
210
206
250
255
135
213
194
199
217
210
161
199
189
150
207
219
161
167
218
116
239
188
205
218
213
213
222
220
139
218
174
191
198
190
181
225
171
226
101
174
224
166
158
233
172
202
206
161
222
175
135
234
196
142
205
161
244
178
140
228
236
242
161
141
151
209
191
184
221
165
199
148
197
209
230
187
192
198
227
186
173
165
214
236
213
226
174
195
251
164
251
229
188
232
206
209
205
177
218
144
173
222
260
197
221
179
184
157
212
219
207
139
195
230
193
167
175
213
169
163
173
174
210
211
209
168
180
238
211
241
199
185
189
206
218
207
157
261
194
178
199
139
246
220
179
141
207
180
155
123
189
173
236
209
186
147
226
169
239
233
194
240
129
170
181
195
193
195
200
178
183
217
149
221
219
146
226
240
214
197
203
163
235
239
183
241
220
205
228
218
202
217
180
248
184
160
165
144
230
194
219
245
215
223
111
211
201
225
187
242
198
172
267
271
140
223
214
233
203
210
180
198
194
287
204
157
230
180
234
173
227
175
215
184
224
209
202
167
196
199
172
176
150
197
180
202
225
226
300
237
158
160
202
166
205
190
220
140
201
169
147
219
226
246
217
164
200
221
187
159
153
249
226
166
213
241
188
170
229
188
249
218
193
197
187
159
196
209
189
242
264
228
220
133
168
200
173
215
147
208
228
230
161
172
219
214
225
164
181
193
187
203
218
190
154
181
227
228
169
187
196
198
166
254
192
176
205
259
185
177
184
158
264
159
187
252
197
188
185
176
213
183
223
156
142
128
217
197
198
235
230
123
195
185
147
140
179
195
159
211
219
194
167
234
154
164
177
226
158
259
184
208
211
237
163
258
193
182
192
201
189
190
237
141
198
192
169
184
228
219
226
207
170
219
242
194
207
182
213
179
192
267
242
240
184
214
240
177
157
109
199
118
162
197
172
153
165
233
214
164
172
209
234
190
232
199
248
195
176
259
212
183
189
226
227
204
162
177
215
129
172
205
187
196
147
215
238
153
246
193
229
153
186
200
200
220
235
231
241
190
199
159
213
185
156
252
240
161
210
178
196
200
190
195
201
196
185
231
143
203
185
220
216
231
195
269
208
245
219
155
216
171
165
166
216
170
200
182
167
207
145
209
251
241
146
170
238
201
187
160
245
256
211
277
167
227
247
248
146
223
157
155
179
190
145
244
237
228
194
173
213
206
223
214
222
190
176
216
196
239
239
176
206
203
264
161
224
141
257
186
169
192
180
163
224
251
174
192
223
214
201
204
197
207
201
212
231
237
163
256
187
158
204
235
192
184
211
181
197
190
179
289
191
211
164
171
240
212
241
219
258
231
230
197
161
194
212
214
246
206
188
145
193
156
110
223
207
242
200
160
173
257
197
148
165
228
139
248
218
177
240
248
205
226
225
213
213
197
147
188
201
224
221
232
229
235
223
179
176
232
241
194
166
257
206
233
167
153
192
161
202
165
160
192
264
92
247
160
221
243
151
119
161
191
208
197
181
178
201
130
196
232
226
138
189
134
171
215
207
170
191
211
161
221
188
158
194
138
154
267
237
188
151
212
176
240
236
164
181
190
239
231
181
230
205
225
226
188
180
234
251
191
259
169
188
300
207
195
157
147
218
257
181
244
194
188
251
186
155
256
179
182
210
200
172
219
174
178
214
181
207
175
223
180
205
166
245
213
253
243
182
241
172
249
166
194
152
201
164
166
166
180
213
214
146
134
281
227
190
200
174
113
203
183
133
168
158
90
228
193
137
199
154
244
157
172
228
224
107
221
205
189
213
212
264
246
202
174
194
236
163
167
216
201
173
227
182
219
200
164
238
259
217
213
172
196
201
198
194
247
225
171
209
179
219
181
201
234
169
173
187
217
192
200
206
186
214
242
153
175
184
165
157
187
222
195
191
236
264
177
153
243
202
242
244
196
218
129
221
182
212
161
182
175
168
281
191
161
200
233
212
148
206
210
229
211
231
188
161
218
222
190
218
173
199
180
207
145
223
201
197
192
237
180
261
208
131
220
179
190
187
162
169
200
226
173
207
184
230
122
211
166
140
258
209
216
239
226
188
192
194
158
183
202
199
220
267
205
195
156
189
167
195
188
165
174
181
238
218
192
175
208
202
232
180
245
205
176
164
219
215
197
218
186
131
192
166
217
197
149
212
194
228
248
174
182
204
193
235
204
161
162
202
240
159
235
219
264
184
233
183
159
246
172
192
196
199
264
224
221
233
161
182
211
205
214
185
196
205
194
252
193
195
196
263
242
147
231
192
208
186
225
216
169
210
167
223
183
121
211
218
242
204
171
176
203
207
243
140
228
174
223
166
160
220
142
238
196
134
205
253
189
263
184
141
204
206
210
255
262
111
241
157
176
225
237
220
271
236
236
196
243
191
235
227
214
121
218
173
171
203
219
217
145
185
208
191
212
259
138
154
181
164
269
212
151
179
239
202
172
250
170
214
217
199
208
254
262
174
219
203
148
178
168
167
171
269
168
249
234
175
188
228
268
140
197
247
208
253
228
203
142
158
180
198
240
119
223
206
209
250
157
131
143
236
221
230
180
241
139
161
197
244
259
137
130
242
244
197
233
246
220
263
212
214
234
173
216
170
216
197
95
148
219
163
224
158
197
186
171
184
249
207
157
177
229
278
172
171
218
209
151
199
245
212
184
241
201
200
165
228
239
191
187
237
136
156
115
203
207
224
165
209
175
198
173
219
169
173
184
161
254
167
189
240
271
114
219
236
183
216
213
205
197
188
243
222
240
187
173
221
210
131
242
211
170
196
256
241
227
235
129
192
178
180
207
232
214
170
217
210
189
205
237
187
210
216
122
139
171
183
267
169
229
179
209
187
186
125
189
263
163
227
125
212
172
200
151
182
203
255
179
191
225
241
251
209
149
186
248
188
256
191
227
182
255
216
228
200
158
177
154
241
221
205
180
217
151
280
217
241
180
200
232
208
211
239
218
249
178
203
186
244
236
184
184
198
193
186
196
238
234
220
207
212
220
142
221
230
208
222
174
240
181
199
203
176
176
250
224
122
166
208
223
208
195
238
191
185
197
193
223
203
246
273
166
194
157
243
137
209
180
230
187
179
176
163
212
260
165
158
115
232
220
171
254
272
163
177
252
153
144
197
189
222
238
206
224
174
171
218
204
215
197
236
171
183
161
230
218
147
285
163
249
247
202
235
219
224
190
201
221
144
213
173
243
189
221
246
173
210
160
222
187
188
170
212
215
182
197
212
198
170
259
232
200
183
234
193
161
145
203
211
164
228
188
226
181
221
133
216
198
174
190
157
225
199
217
192
237
209
196
214
169
196
193
252
258
183
210
206
258
156
191
181
190
198
132
241
200
152
243
207
187
128
218
233
205
194
240
248
169
205
245
216
179
179
140
162
237
214
234
219
221
173
192
129
217
210
214
206
178
194
116
205
184
192
157
246
199
190
213
209
248
129
259
220
253
173
222
167
125
222
229
214
190
216
222
261
266
130
166
195
149
228
188
195
186
196
220
194
193
177
203
212
200
204
246
199
167
235
216
214
221
249
220
218
138
170
158
232
181
229
233
231
148
185
223
221
171
210
227
186
194
207
250
183
219
214
218
237
175
260
180
164
214
247
117
126
184
140
188
193
200
239
110
202
172
237
186
257
180
223
216
239
200
206
214
168
173
209
230
209
220
170
182
129
161
228
209
241
151
216
228
125
210
200
242
249
234
197
152
199
246
203
195
191
179
202
175
241
195
141
264
238
235
182
157
155
186
203
159
209
142
153
165
227
224
140
207
138
223
202
217
208
191
165
230
224
138
197
182
255
193
230
210
240
162
134
177
190
184
249
229
197
243
189
157
179
252
198
200
219
190
153
236
127
195
211
114
233
214
179
169
189
216
212
247
193
175
189
192
161
246
176
251
266
226
195
194
176
185
215
191
146
254
182
159
168
173
207
179
229
171
151
179
180
202
220
188
201
196
165
152
169
215
273
260
174
201
234
169
145
204
206
164
214
201
201
232
186
200
179
219
192
143
249
174
201
244
240
253
195
191
172
217
221
230
177
236
203
187
197
226
220
253
195
202
261
204
182
169
229
229
239
208
201
210
217
209
176
173
227
204
185
180
214
181
191
143
176
143
196
156
175
211
191
226
230
205
199
182
211
212
151
136
212
207
185
204
217
184
190
153
240
160
245
180
231
201
178
187
211
164
138
265
153
195
235
190
158
286
129
264
232
237
252
250
230
194
116
192
171
140
209
181
166
209
150
232
190
191
213
102
171
170
225
259
227
223
193
213
194
229
181
149
195
239
240
166
163
237
180
210
268
153
214
195
111
204
186
212
213
246
179
206
209
219
201
213
229
209
220
278
194
202
219
190
266
211
196
193
200
152
217
241
163
206
227
205
171
201
202
281
230
173
222
219
211
180
223
232
147
136
175
152
165
203
234
120
245
229
192
205
241
149
192
229
159
199
192
163
192
145
178
175
160
162
228
192
255
212
219
273
211
234
231
244
255
241
235
142
165
222
153
168
183
258
193
196
154
162
209
183
285
244
206
151
146
249
216
195
185
206
169
258
184
165
190
154
180
251
187
205
148
259
188
150
189
237
131
198
224
178
207
172
223
219
193
228
190
157
186
164
184
255
230
199
234
189
201
218
218
220
163
253
172
206
252
195
232
194
190
185
167
157
168
194
229
185
176
184
176
185
135
190
173
215
219
217
214
174
155
210
183
164
220
119
196
221
227
169
254
225
255
163
183
226
198
218
152
181
235
181
86
221
200
148
247
199
206
201
219
218
244
241
163
214
240
219
174
158
227
192
176
214
200
182
214
223
204
216
235
184
222
199
126
163
191
205
192
159
170
189
166
205
214
223
213
267
187
213
252
258
166
181
184
182
169
207
184
203
201
228
167
187
177
191
186
140
199
203
215
204
172
216
202
253
206
242
160
153
203
189
209
185
210
183
127
149
151
182
162
170
233
209
229
250
201
227
246
159
168
211
237
212
178
218
198
114
244
202
186
259
256
147
245
233
180
223
190
201
176
201
197
175
246
182
168
208
167
119
160
182
121
177
172
168
235
219
179
242
196
146
210
233
248
211
148
197
229
179
162
184
175
167
169
244
221
246
174
207
175
230
169
140
222
122
196
243
158
232
142
192
182
238
204
186
188
169
182
197
197
182
208
212
216
251
171
216
212
225
226
224
254
218
219
206
242
242
263
154
240
160
182
249
194
205
196
180
144
219
246
254
171
151
194
150
226
234
181
217
186
180
206
172
132
231
247
177
181
170
110
219
234
114
138
183
227
151
179
148
224
250
189
177
120
193
210
179
169
181
200
204
185
201
205
240
165
181
154
135
202
196
176
183
214
197
184
181
220
229
225
129
214
215
214
247
193
214
203
206
220
233
162
195
192
147
247
189
203
206
217
155
175
197
138
143
255
152
223
206
220
265
227
236
207
169
195
178
212
219
131
195
133
186
208
219
231
142
234
166
166
127
236
224
253
226
219
248
195
224
191
176
145
198
185
245
107
184
172
247
224
172
147
200
216
150
219
234
173
215
245
263
194
226
243
160
241
228
189
168
193
210
241
217
199
217
174
225
201
250
241
176
157
242
256
229
231
198
180
205
237
202
216
149
214
224
178
257
210
223
167
197
187
214
199
211
260
136
232
229
209
232
197
163
215
168
204
258
187
172
184
155
207
223
179
219
232
257
133
153
191
188
227
228
200
241
168
215
211
229
211
174
242
237
244
176
191
215
218
302
204
205
213
196
181
188
201
228
196
216
187
186
206
188
228
195
263
132
164
248
187
235
193
194
259
183
216
217
247
208
235
250
192
256
165
224
210
201
193
245
212
221
220
219
260
252
216
228
223
127
218
216
187
230
147
176
202
240
209
225
189
211
216
208
257
261
194
198
231
144
209
158
181
213
167
232
231
257
100
169
191
114
164
235
179
205
223
189
188
185
159
233
150
197
224
248
211
193
219
210
207
234
235
147
167
225
243
137
157
231
210
204
173
221
189
163
197
181
189
176
223
228
239
151
228
179
197
226
208
177
237
218
202
182
206
223
184
230
193
228
259
187
210
198
181
234
209
249
176
226
214
215
227
162
200
193
180
187
228
225
198
155
261
140
147
163
155
168
169
228
183
233
157
150
173
248
183
195
164
232
201
207
206
171
217
196
211
217
207
155
221
168
219
146
194
129
183
244
211
161
221
199
231
216
253
196
209
162
195
204
212
217
225
161
204
185
213
163
203
194
225
171
165
196
163
193
258
239
215
217
191
167
232
147
237
212
205
238
186
215
175
209
251
185
190
206
233
221
252
187
104
190
170
212
182
248
206
127
197
182
179
158
227
118
190
211
166
199
123
219
195
193
210
158
212
214
192
144
213
206
169
220
227
180
187
166
193
244
198
167
185
129
163
215
139
265
249
189
176
211
162
123
206
206
236
213
169
235
178
126
277
161
197
241
176
228
249
253
223
250
152
202
214
226
184
244
181
181
157
187
121
146
154
227
196
228
202
230
169
195
192
241
216
181
203
256
194
223
125
213
228
237
163
252
173
236
228
218
192
230
210
231
156
156
192
206
202
194
212
214
211
168
197
245
180
202
194
218
233
161
225
209
248
189
261
209
191
215
204
223
91
209
200
215
216
145
227
231
253
200
206
207
203
233
181
265
248
193
221
213
192
171
225
195
208
150
177
209
199
182
232
213
233
221
222
228
225
221
241
177
167
261
197
178
188
211
191
190
261
199
220
192
175
228
193
186
238
157
178
191
191
178
146
232
175
266
236
160
192
229
185
194
198
220
252
237
197
203
211
210
152
236
182
201
172
172
200
175
204
162
221
245
223
151
167
231
221
213
180
205
169
220
107
255
205
216
250
234
237
180
234
185
178
188
209
171
219
236
169
205
165
157
182
201
195
223
143
141
151
183
183
230
174
232
142
219
201
192
132
140
200
236
201
182
201
207
262
181
155
170
215
200
198
176
204
225
150
212
229
217
273
244
144
210
151
208
183
213
172
167
162
165
214
177
196
146
208
168
166
238
142
212
156
149
151
173
187
168
233
166
263
153
212
176
163
184
167
195
178
194
208
148
205
204
204
169
205
206
169
141
209
164
150
181
218
137
174
205
168
206
233
213
213
188
250
211
198
165
236
199
183
208
215
138
174
189
213
182
205
226
160
228
225
175
201
219
159
191
220
185
230
171
167
140
204
196
189
195
230
204
135
178
199
224
211
211
201
206
148
210
166
218
190
177
178
249
204
226
241
221
266
204
212
144
188
135
178
251
227
270
227
150
161
206
190
271
189
229
200
215
203
212
167
229
194
177
178
118
239
166
211
210
180
226
177
208
212
194
156
241
254
286
189
197
208
203
175
236
155
212
176
207
198
199
169
209
178
255
177
154
191
174
195
136
266
217
215
205
167
112
201
234
184
204
198
175
208
221
214
201
171
194
183
187
169
257
275
217
190
223
202
205
162
251
173
198
172
256
174
203
201
228
205
190
203
219
194
198
194
159
201
240
152
224
248
179
222
217
164
260
192
170
260
160
211
198
186
235
209
233
252
227
153
129
267
214
245
164
238
237
253
229
152
155
197
177
181
240
209
183
159
237
235
239
208
220
222
239
249
247
212
258
177
230
198
181
213
230
175
207
213
160
232
169
165
191
251
183
201
230
161
211
200
207
183
252
234
222
204
171
220
249
154
244
199
194
170
218
199
259
228
224
182
174
194
199
235
208
202
184
259
159
202
174
203
212
207
174
168
229
161
116
181
161
233
153
222
234
210
242
138
131
146
189
174
144
253
185
162
202
232
290
236
239
208
153
227
139
172
186
169
135
234
206
194
235
220
189
145
238
215
210
222
158
151
230
179
227
167
194
212
172
211
180
262
269
223
136
219
208
150
127
113
113
185
208
173
141
137
218
234
180
203
234
195
245
203
128
251
167
212
211
197
193
237
230
187
187
227
180
157
175
143
211
203
190
129
236
155
240
172
231
120
218
223
214
220
183
246
283
244
186
172
180
242
235
204
154
229
198
228
247
175
211
233
174
141
170
191
215
189
241
248
196
197
147
166
240
211
216
189
152
196
284
214
204
175
162
165
201
217
267
157
186
190
208
197
199
216
218
134
221
128
203
199
205
154
180
171
177
189
254
220
201
220
212
183
180
112
237
148
181
246
229
179
185
171
183
230
183
204
200
207
207
211
182
226
148
222
210
200
173
216
236
145
160
187
196
216
222
230
233
142
205
185
226
230
246
251
257
223
207
210
204
232
221
200
208
192
192
180
162
213
215
98
199
168
231
162
219
246
245
227
238
218
157
203
209
207
180
217
181
161
179
167
223
204
184
229
214
123
262
186
143
206
144
160
211
156
178
136
191
195
123
144
218
189
238
166
200
173
179
220
217
222
180
181
236
242
201
231
202
172
207
273
216
226
176
135
192
290
213
228
262
219
176
205
207
171
188
222
182
145
126
225
211
189
184
147
180
148
179
158
232
150
193
213
233
237
204
190
231
189
232
187
234
189
170
211
237
235
216
198
150
202
189
173
181
195
148
198
199
154
211
216
153
170
166
210
158
187
209
199
169
126
218
224
167
136
246
212
172
193
199
200
183
201
218
226
182
208
264
174
233
185
161
202
188
242
250
189
171
200
182
183
174
206
189
167
188
212
258
179
178
193
238
189
183
195
219
222
181
226
203
219
187
183
219
232
224
194
164
180
182
209
219
224
218
254
219
137
223
174
209
256
168
137
249
207
220
224
256
200
191
179
231
202
184
173
152
235
185
207
225
224
235
209
199
226
260
225
170
231
194
239
216
203
229
156
198
157
197
213
141
213
220
135
210
178
213
212
203
183
216
175
178
249
229
252
140
241
247
250
179
205
202
207
203
188
183
201
225
182
242
151
183
187
168
130
237
174
148
166
226
190
196
190
226
182
202
153
171
173
156
188
161
149
188
150
169
230
197
181
184
179
233
171
241
205
195
243
194
222
229
199
190
245
194
192
215
203
222
201
211
212
211
219
197
234
162
206
217
185
220
200
214
174
234
230
141
166
226
224
188
181
125
183
189
262
154
189
147
240
206
197
206
187
211
170
183
196
218
191
149
143
204
110
225
177
222
173
174
190
214
168
235
202
159
256
245
229
244
189
203
219
153
169
192
189
214
180
171
132
144
234
199
195
198
203
192
183
212
188
197
239
240
237
237
149
191
220
256
233
144
203
165
232
234
206
154
224
245
211
146
205
193
196
175
194
244
273
217
216
187
215
207
217
206
201
176
170
147
212
180
194
228
192
178
170
260
227
205
148
269
181
212
188
239
235
216
133
211
175
180
213
137
238
238
227
238
226
196
138
133
228
280
184
138
197
178
206
130
211
244
243
191
190
133
193
231
234
224
187
200
172
206
186
152
243
232
147
202
237
210
211
173
186
208
136
227
157
184
226
179
249
219
231
240
201
239
124
171
225
206
199
171
202
177
187
203
237
201
222
219
192
237
177
155
195
200
223
201
197
225
211
224
207
212
222
175
239
269
212
160
176
260
182
223
197
178
209
217
228
230
205
188
202
193
126
133
164
188
230
156
262
183
233
184
215
209
256
241
183
219
181
207
212
238
217
157
163
233
228
230
138
206
221
159
178
192
179
190
201
207
185
192
212
189
202
209
196
187
210
211
205
178
200
179
163
259
183
205
202
147
184
211
193
229
216
256
233
132
179
214
118
176
233
240
207
224
198
189
214
182
172
187
199
206
159
198
154
189
217
212
213
206
211
183
165
225
139
202
226
189
180
186
180
225
209
157
173
190
194
170
186
198
206
154
240
236
199
201
246
143
188
115
259
93
222
200
138
170
192
224
223
223
201
166
201
227
247
176
190
206
244
202
215
165
238
192
182
223
178
232
253
202
253
223
156
192
241
141
227
195
234
181
160
234
163
207
210
211
171
226
198
188
189
221
195
260
192
156
223
251
167
153
181
237
237
229
207
232
143
219
173
168
197
191
168
186
182
210
225
199
198
204
170
182
219
227
228
159
166
210
202
269
174
156
229
230
215
182
180
215
254
200
256
212
180
195
219
169
214
166
202
200
210
195
192
202
192
175
208
252
249
179
227
162
205
178
154
228
180
206
185
231
243
218
227
216
232
260
186
217
159
290
227
149
181
227
235
117
198
220
161
156
266
152
189
242
190
212
256
245
170
204
233
216
261
252
178
210
156
190
196
197
224
198
170
161
222
201
207
210
217
189
184
191
195
216
200
198
199
279
201
163
229
183
240
169
246
250
124
188
179
195
204
143
213
171
227
162
153
144
148
247
197
255
180
248
202
128
200
262
173
218
192
216
234
237
166
219
215
202
164
151
189
208
129
245
172
232
224
218
151
174
184
181
215
189
193
214
158
241
198
247
228
188
126
132
214
232
161
288
162
174
140
196
172
289
219
273
145
157
203
266
221
219
201
232
226
223
222
265
230
183
196
146
220
165
155
244
199
216
176
138
233
187
134
220
188
261
184
214
220
191
221
150
214
201
175
179
238
153
209
216
205
225
258
279
235
143
182
227
219
148
198
211
214
201
205
193
201
197
180
185
224
196
176
217
192
219
183
187
253
200
99
238
176
215
216
230
233
230
218
188
176
209
254
223
142
191
236
201
197
160
202
227
148
176
179
186
236
252
214
171
166
206
223
242
237
220
215
194
203
242
211
222
232
245
266
198
203
246
232
202
166
211
134
180
251
219
226
251
174
217
227
301
195
207
213
199
197
173
235
218
159
204
228
203
226
224
196
195
175
163
206
208
210
200
189
178
139
169
173
220
217
281
212
209
167
276
173
237
222
231
255
171
219
180
195
219
201
161
204
200
179
179
180
216
186
199
167
202
197
245
210
203
187
250
208
179
209
224
236
249
206
228
178
231
162
206
221
208
206
234
264
203
244
248
205
177
211
203
228
292
179
177
225
196
232
149
250
186
190
153
149
213
232
191
196
237
247
154
164
195
172
223
233
180
238
227
168
203
201
225
223
161
241
124
221
258
214
187
240
253
181
227
224
242
189
218
180
196
249
192
230
187
223
198
169
184
178
175
241
176
190
162
177
216
263
199
153
213
213
182
238
243
190
205
238
187
165
268
190
148
211
222
220
237
232
217
232
217
191
124
186
203
211
210
188
187
240
187
185
231
167
236
239
148
144
232
226
219
197
163
215
175
218
238
162
174
212
231
221
253
176
201
136
228
151
169
236
246
221
183
161
240
220
157
206
211
164
216
247
198
224
184
184
214
174
166
236
226
121
251
193
249
210
217
192
199
201
222
251
287
191
202
263
177
208
230
160
216
145
221
157
202
194
214
243
168
188
219
140
208
203
268
204
260
182
223
202
219
209
209
204
175
257
151
200
203
210
175
206
230
229
231
218
192
166
141
261
196
234
276
225
187
195
191
169
172
172
224
183
241
188
234
153
201
206
258
207
182
190
181
159
227
202
181
191
192
243
200
222
172
234
219
167
163
239
222
243
194
235
188
207
181
157
161
224
169
228
230
201
177
249
165
215
153
190
234
179
181
188
184
205
188
194
233
229
140
226
206
193
222
153
160
164
195
223
215
183
168
194
192
201
162
181
275
184
138
151
188
260
174
195
185
164
239
195
257
182
223
198
187
179
175
130
167
209
164
194
167
163
235
205
208
212
155
244
265
230
191
196
252
203
184
216
218
234
192
144
238
173
195
151
190
224
161
172
250
255
233
218
177
147
154
244
151
231
191
218
142
245
236
166
182
179
179
235
157
228
234
192
161
216
169
229
216
132
131
173
206
274
187
208
177
146
224
200
153
227
216
215
266
242
162
264
201
168
246
233
135
186
190
245
212
222
207
252
157
205
181
167
212
151
199
205
212
159
184
228
226
214
153
212
220
181
243
179
199
191
186
202
232
166
185
260
237
197
188
168
167
197
225
201
218
184
214
188
176
208
215
184
219
195
208
146
227
174
210
224
178
269
197
212
112
191
258
223
257
207
154
190
241
154
214
150
221
214
235
208
229
226
133
217
189
248
159
81
176
205
219
226
211
209
179
180
252
239
215
286
181
234
168
171
221
216
217
244
185
271
169
188
194
172
166
206
186
205
156
197
228
146
197
164
233
155
129
239
205
227
160
146
169
216
228
161
209
204
218
274
203
224
230
232
179
184
145
187
214
162
232
138
227
217
151
213
148
210
262
204
155
214
219
234
236
266
157
260
163
165
188
135
146
194
188
220
188
166
116
207
187
201
187
188
243
202
178
217
236
177
169
195
173
199
218
241
199
146
226
231
199
222
228
214
196
147
185
211
242
205
228
145
206
192
200
188
158
185
132
150
196
197
253
135
183
210
254
121
152
238
202
228
247
183
230
193
205
219
243
179
157
186
183
241
253
224
224
181
186
194
196
178
176
229
181
188
248
183
151
241
223
173
202
166
223
199
237
164
197
176
208
182
272
151
200
206
175
213
246
179
170
187
246
231
267
166
215
162
211
227
228
209
290
156
174
143
186
189
213
139
247
214
242
281
169
187
195
177
199
236
191
235
224
217
191
213
235
207
206
261
198
193
187
187
115
189
187
217
186
150
140
212
193
160
218
116
175
233
211
254
199
157
167
170
233
216
220
191
215
214
241
199
162
210
266
210
201
134
222
210
192
173
197
191
229
183
202
194
188
153
196
144
169
221
178
215
179
223
174
168
203
160
189
186
227
224
197
126
179
210
221
229
163
271
186
233
217
195
182
179
183
203
171
175
147
247
213
229
131
204
207
124
178
192
226
193
180
201
243
191
228
157
112
237
190
248
201
230
225
223
228
184
237
215
205
237
190
232
220
241
114
169
222
215
220
145
203
190
139
179
201
174
176
206
211
219
183
189
194
192
163
192
210
179
196
234
220
253
213
212
148
151
226
252
240
171
146
158
157
235
207
237
207
209
223
169
212
222
161
238
190
212
158
217
216
189
222
201
216
193
166
210
160
188
147
186
182
172
202
285
134
151
226
191
266
210
199
228
152
245
261
275
209
179
102
229
200
229
153
236
220
187
166
132
154
189
175
170
151
215
203
201
139
170
216
193
222
242
191
268
149
199
175
269
176
213
175
144
197
233
225
198
216
187
213
222
175
188
176
224
243
168
196
240
146
170
228
170
206
189
202
165
246
180
155
119
182
196
179
162
214
193
264
200
172
119
203
194
205
163
226
256
156
235
203
216
197
174
200
181
187
203
219
223
228
206
214
197
244
252
166
245
229
163
151
206
213
234
145
193
184
172
175
249
177
140
213
211
156
214
259
228
179
241
199
249
175
201
212
166
183
192
223
142
151
169
176
235
250
171
234
230
144
151
235
210
156
222
212
156
210
170
206
171
157
152
176
224
200
128
237
255
176
165
160
190
201
200
202
216
217
236
167
180
216
217
147
145
161
214
208
219
182
219
213
229
203
176
169
235
119
185
180
287
194
221
195
243
157
238
200
229
223
211
201
256
189
169
196
255
139
124
139
231
207
234
219
226
161
149
124
183
204
175
201
163
245
198
198
176
225
175
241
209
175
242
249
171
221
154
147
226
234
194
178
230
170
207
275
191
181
173
206
238
264
224
222
179
244
207
164
208
233
189
176
187
260
219
252
207
225
248
189
169
236
232
199
172
149
188
164
125
210
223
210
192
225
251
196
181
235
207
201
205
136
218
217
210
181
206
205
183
188
194
151
192
179
192
162
235
154
193
190
195
148
209
212
139
202
256
225
218
134
164
203
197
167
224
266
127
208
156
155
150
246
223
218
274
246
254
244
229
160
169
176
255
215
170
149
233
172
245
239
176
151
211
222
185
262
140
201
226
198
124
219
216
190
205
209
202
165
170
194
156
231
181
227
264
226
257
225
217
153
241
197
169
185
202
193
226
233
209
183
164
195
175
207
252
236
217
219
116
186
179
184
223
233
248
169
232
220
175
175
222
218
201
149
216
212
177
215
260
159
204
192
252
241
207
151
209
190
260
90
218
253
139
238
195
176
175
190
226
225
202
196
202
177
232
206
186
229
217
171
165
237
225
235
191
233
237
222
184
188
232
171
246
184
202
152
240
168
202
166
264
230
221
183
144
230
240
257
205
240
168
179
221
227
113
215
177
241
261
167
183
251
176
242
249
185
191
233
193
174
166
237
237
142
214
206
158
172
268
214
141
241
168
179
249
216
151
214
147
139
170
137
206
243
147
182
163
224
166
238
253
232
195
200
224
218
212
246
200
203
209
265
184
206
214
253
161
205
241
244
212
161
227
236
254
168
161
191
276
167
213
240
223
241
184
256
235
137
163
247
215
204
243
224
197
252
160
183
248
255
206
208
169
232
221
162
193
239
163
203
234
152
182
225
225
164
180
195
166
189
114
210
192
237
180
110
198
191
234
187
200
164
193
198
232
225
224
212
157
254
172
195
203
201
178
215
236
202
152
183
209
208
137
149
241
197
210
235
202
253
181
198
216
225
203
216
154
170
214
167
190
223
228
170
232
168
196
216
218
175
214
187
184
178
204
226
212
175
259
169
211
201
177
241
167
195
191
194
186
159
177
215
195
254
223
234
255
234
180
192
219
140
217
231
242
210
209
261
255
224
228
232
245
229
189
195
208
186
186
129
241
214
168
243
199
230
209
169
161
229
171
138
184
223
200
221
163
221
170
227
164
180
174
166
195
206
208
251
169
186
237
229
218
203
229
199
223
244
146
205
204
190
207
217
251
241
180
182
181
225
246
226
239
192
217
189
216
227
213
184
249
232
196
215
224
159
182
207
158
221
219
262
186
198
198
230
230
191
231
212
235
206
149
101
185
189
210
258
132
200
191
173
221
190
217
218
208
246
213
187
231
213
193
235
214
159
274
247
232
221
172
201
192
201
173
219
215
220
152
187
246
223
217
198
240
166
127
176
149
180
212
209
212
267
226
200
176
150
182
205
243
184
192
141
202
220
204
170
215
189
149
291
194
173
166
215
174
244
218
178
174
226
119
129
158
188
189
174
202
191
157
210
223
179
167
186
226
152
216
216
191
212
172
223
188
248
250
242
187
213
246
190
188
194
187
173
112
136
245
209
150
145
229
163
223
175
204
218
217
219
187
207
234
217
200
139
167
238
169
227
178
198
253
215
162
217
225
217
157
185
208
200
245
185
174
282
230
217
195
225
183
176
173
157
134
213
209
257
152
222
191
223
260
234
204
161
151
157
242
201
185
157
170
187
168
201
152
214
246
134
243
178
229
185
158
107
234
252
233
230
203
223
169
224
190
172
282
172
164
260
198
183
245
219
242
220
226
143
200
195
161
204
181
199
208
184
227
193
260
184
178
198
236
247
238
158
222
213
189
225
185
226
239
219
194
234
230
237
116
256
159
239
249
196
179
233
177
217
227
153
207
190
165
173
198
186
228
213
191
189
209
170
231
201
250
213
191
226
149
228
224
183
180
176
278
198
268
229
218
221
183
196
199
215
216
200
227
154
202
230
186
193
208
174
212
189
219
202
185
215
183
210
229
251
247
205
228
249
206
230
231
178
208
221
200
223
131
112
176
161
191
207
231
213
176
203
180
229
249
179
195
201
245
146
195
214
201
169
180
190
163
195
201
221
146
253
193
201
162
200
232
274
249
282
239
192
191
169
196
217
191
175
153
209
161
205
195
201
243
271
190
223
208
238
252
229
146
243
163
227
182
192
175
127
117
211
184
198
203
229
211
223
195
272
181
195
195
184
219
142
185
159
212
207
166
219
127
165
224
168
212
225
225
166
209
230
237
237
216
153
177
235
219
225
263
171
185
180
126
217
189
201
184
247
166
189
181
195
194
233
225
222
187
239
185
173
155
258
269
221
180
199
235
169
213
192
214
152
184
227
150
171
214
175
192
154
259
180
161
154
251
184
193
273
219
188
203
180
212
180
199
173
198
184
203
266
229
195
209
154
211
215
190
229
188
230
247
193
211
154
241
146
190
217
86
224
256
213
233
113
200
233
235
229
211
162
188
190
251
153
157
226
258
172
150
180
226
218
174
237
234
149
247
237
203
247
197
183
225
209
192
211
249
250
207
203
186
230
267
154
232
166
260
179
148
235
226
222
214
167
249
216
160
238
203
193
195
183
267
188
214
189
222
186
246
173
215
197
176
204
165
248
233
218
145
172
211
226
166
169
152
182
226
260
257
170
190
195
113
224
226
112
152
271
211
218
171
216
228
259
250
191
234
151
168
223
163
132
189
169
234
204
166
214
220
259
242
148
170
245
227
230
202
239
220
256
162
180
213
192
193
243
157
202
170
153
181
202
241
144
193
174
207
197
212
204
196
172
175
278
242
222
248
245
190
225
211
143
152
167
194
218
196
231
229
189
195
211
187
170
121
168
186
173
199
185
170
213
262
247
176
178
187
179
235
235
153
196
200
279
202
227
233
257
259
219
225
186
222
212
218
164
200
213
165
197
254
224
188
214
177
161
220
217
236
196
191
170
133
241
235
195
185
179
307
186
243
200
158
208
212
123
229
229
218
131
159
171
189
248
291
269
208
227
225
197
227
213
204
239
148
198
96
231
184
279
220
161
177
176
120
183
196
219
180
214
210
211
191
231
259
234
148
220
268
173
192
92
185
188
220
223
224
230
238
238
239
238
206
163
167
110
258
253
186
224
195
253
200
209
110
147
154
231
213
167
201
193
244
193
244
199
225
245
199
203
244
171
199
219
209
172
238
256
202
216
133
151
142
211
200
175
213
268
166
212
143
258
172
199
192
220
227
220
201
175
180
153
241
249
219
143
205
268
215
146
148
268
166
193
188
215
220
231
212
189
198
182
194
165
203
221
193
191
226
272
227
183
222
245
204
231
173
192
205
211
190
261
178
191
211
232
232
195
211
224
225
199
193
128
250
242
209
175
188
217
199
208
197
224
203
238
172
129
143
233
224
145
198
194
178
197
235
254
163
201
138
141
199
229
149
194
247
230
116
211
261
194
257
178
209
158
229
111
152
208
240
207
178
215
216
210
197
200
225
218
230
201
239
192
170
177
224
253
218
212
209
162
232
147
196
179
213
185
214
234
246
177
108
141
213
184
214
262
261
242
243
131
194
203
165
202
218
173
201
227
257
166
218
187
164
177
205
232
169
235
150
184
142
177
204
183
180
175
163
180
239
206
181
173
284
218
210
231
244
194
212
180
177
209
167
172
166
242
191
196
169
231
298
194
185
241
212
179
258
194
161
220
188
190
178
224
184
177
201
159
191
212
255
212
197
201
114
247
211
225
183
218
187
190
217
201
176
189
127
231
211
208
244
232
167
283
179
254
157
188
208
205
192
215
186
131
184
177
192
257
237
126
236
240
116
207
167
172
229
188
154
189
117
222
258
221
226
197
200
220
235
169
180
194
151
203
234
220
195
147
191
246
148
197
302
215
119
235
215
205
167
197
201
202
197
156
178
144
230
255
174
152
153
239
172
243
146
185
192
184
95
291
212
252
199
222
172
172
180
203
174
244
199
160
138
244
196
144
146
225
180
171
221
137
238
221
177
220
177
220
192
226
202
183
250
236
194
194
149
192
264
181
254
271
220
117
203
176
235
229
199
218
144
177
161
235
136
240
224
148
198
237
157
156
258
210
174
158
129
231
203
257
134
223
169
127
240
233
173
207
256
151
187
231
161
162
172
186
219
206
150
198
229
211
212
157
229
141
207
219
228
259
198
172
221
208
194
170
223
144
212
184
231
178
200
255
232
161
187
164
193
157
155
177
207
223
195
276
177
187
200
150
212
218
182
194
234
230
172
218
249
197
161
240
167
246
228
158
203
260
240
154
104
179
239
190
247
169
218
217
155
178
232
140
202
213
252
192
223
175
212
205
223
222
212
137
224
209
186
162
155
158
186
188
178
214
193
265
160
232
232
266
164
255
198
227
157
169
265
230
193
171
219
187
195
217
176
191
148
204
271
180
240
150
254
215
186
221
198
243
123
179
228
220
196
215
213
226
252
226
189
118
187
163
256
148
190
154
189
212
205
223
183
215
215
112
207
187
136
186
266
211
215
162
202
185
174
193
155
193
173
182
197
187
183
207
182
195
237
192
240
198
215
177
241
232
215
190
203
176
275
169
212
149
214
233
200
222
173
153
234
224
193
222
219
212
183
178
262
177
181
192
215
223
229
246
231
105
103
204
213
227
255
189
239
208
232
220
138
186
239
233
218
214
184
175
224
188
225
237
129
228
240
211
151
160
205
215
216
177
169
245
202
162
117
177
186
214
194
163
182
206
251
239
212
144
188
211
185
164
240
236
216
179
210
216
210
212
242
225
231
156
218
212
211
206
200
159
182
186
205
185
227
230
168
235
240
179
187
184
239
99
177
209
166
252
177
193
241
164
240
198
203
237
160
174
205
204
191
213
224
210
185
186
225
202
227
167
198
249
230
131
206
216
220
243
231
234
233
152
157
158
198
240
187
184
270
166
189
218
156
187
244
220
214
156
161
201
200
209
195
163
236
191
168
196
192
166
173
202
235
186
216
208
215
261
194
230
167
170
242
139
146
209
150
205
224
154
174
234
198
186
204
167
213
250
209
195
199
204
301
159
169
137
195
223
253
234
161
257
249
174
230
220
210
181
206
193
204
206
163
215
211
176
219
223
181
256
229
126
209
224
210
214
149
213
138
210
178
207
220
218
203
233
231
165
172
155
194
212
184
258
188
209
185
120
218
199
128
157
257
194
213
176
192
185
162
180
182
213
236
215
216
204
215
250
181
244
197
210
177
174
194
182
211
199
153
165
248
192
199
171
251
197
134
278
237
232
192
190
224
209
243
147
139
114
150
200
164
214
193
165
236
161
173
154
207
217
206
226
151
175
151
198
189
132
193
195
179
169
204
194
143
241
206
260
227
242
218
207
154
207
162
147
254
172
238
174
130
236
164
216
214
214
143
216
207
224
164
205
212
205
235
191
211
145
181
193
200
201
153
221
211
192
184
227
194
162
163
198
220
171
179
188
183
238
270
160
207
173
244
249
198
209
244
175
158
207
115
189
233
257
226
226
252
195
195
133
176
131
230
176
222
220
223
181
205
237
170
240
186
180
223
153
222
112
219
170
176
231
150
174
229
233
256
207
177
214
139
218
180
229
199
162
259
204
244
166
190
138
167
177
194
237
144
204
238
187
234
166
134
219
190
169
131
162
241
166
249
206
182
200
198
190
241
161
202
249
193
169
175
168
226
165
198
203
125
144
148
228
205
190
197
230
223
198
241
188
198
175
211
152
181
234
283
242
198
169
194
195
192
233
157
171
295
190
261
244
197
173
142
269
136
231
194
235
229
190
211
170
208
167
201
196
193
214
196
138
176
184
188
255
228
176
166
155
189
204
196
213
129
220
198
153
205
183
164
188
204
176
214
158
202
179
192
170
249
177
154
213
175
155
190
147
222
213
194
137
158
163
188
205
224
200
225
176
99
246
271
164
242
194
223
182
102
177
213
125
228
179
206
196
231
231
223
212
182
185
224
172
143
166
195
178
244
225
198
152
205
206
207
206
202
271
212
217
248
174
258
180
232
174
176
176
153
191
214
155
118
197
224
242
120
206
166
275
182
258
229
204
200
186
211
196
246
213
198
207
213
221
225
136
177
192
164
247
203
231
228
244
257
200
207
227
236
244
211
248
156
207
233
185
214
176
180
210
237
212
218
197
261
215
188
156
212
242
237
175
154
243
241
202
173
227
200
187
249
163
227
202
194
134
239
226
174
238
132
184
220
171
197
190
204
251
173
249
166
172
194
165
230
197
178
221
173
238
243
228
175
216
208
165
206
212
211
177
204
202
190
155
306
232
180
239
215
179
271
203
226
250
217
173
198
198
195
222
122
189
173
193
127
152
253
218
202
160
198
164
222
187
211
156
246
200
193
177
245
229
227
225
192
179
256
212
167
237
221
168
253
225
219
165
231
263
227
206
227
158
177
162
223
174
180
222
171
257
195
222
233
179
158
262
211
250
215
144
125
200
234
226
244
216
277
217
204
215
202
213
208
247
241
195
127
237
194
200
205
170
196
233
260
203
188
179
203
169
200
150
221
207
197
259
203
113
155
153
204
172
214
169
190
198
193
254
178
141
213
216
197
217
221
162
158
194
218
278
189
198
211
228
171
258
208
169
257
213
208
167
215
244
186
160
125
191
256
204
226
249
174
120
224
228
154
175
210
209
198
193
224
218
182
211
252
175
178
225
180
203
150
174
204
229
203
234
241
200
174
163
200
140
217
201
172
212
153
223
182
209
243
185
148
175
213
183
202
240
154
152
189
230
215
160
130
220
214
207
205
167
166
160
268
251
123
242
169
189
200
266
238
159
186
162
184
262
151
166
138
192
244
177
146
178
198
209
213
190
137
139
180
231
193
100
173
214
208
203
201
204
171
188
154
193
245
140
191
196
240
212
220
178
161
216
203
197
193
183
196
133
213
220
227
161
217
255
210
176
218
216
180
231
219
167
244
237
235
201
198
189
171
216
183
158
208
193
171
285
197
108
177
178
178
212
198
159
190
202
142
227
153
257
196
233
214
225
227
193
217
170
202
166
251
221
121
199
231
194
245
244
184
225
127
236
187
149
192
216
219
146
215
218
253
255
186
226
195
181
206
168
220
225
214
213
203
218
223
235
245
181
222
194
259
255
190
170
204
267
216
231
276
185
197
245
207
238
269
197
227
186
146
218
236
212
203
200
158
172
186
183
157
214
235
220
192
164
221
159
216
178
218
224
209
219
158
175
202
247
159
243
249
159
216
201
270
166
250
145
152
229
254
184
220
187
206
267
159
214
211
161
220
192
183
149
179
196
200
180
248
200
186
200
219
269
200
169
250
183
209
227
171
194
202
180
184
167
174
185
164
184
212
216
195
185
226
156
218
199
175
156
197
215
150
266
193
234
229
244
253
171
180
143
186
212
155
196
232
181
138
202
218
218
168
211
166
252
226
198
221
184
189
207
233
177
214
200
151
212
167
154
135
168
209
192
152
194
224
223
227
149
214
176
232
226
299
253
197
189
173
223
229
255
213
234
196
221
186
167
183
239
190
193
200
216
142
250
204
255
202
221
212
261
173
227
231
208
229
249
213
183
245
165
241
199
206
206
193
204
202
204
227
239
179
180
219
219
190
176
223
161
212
225
220
200
174
270
197
174
158
245
230
175
164
221
234
245
255
189
248
201
194
164
253
217
167
203
199
235
195
242
201
228
260
224
190
250
216
202
186
227
217
188
192
224
211
201
136
207
223
220
165
166
255
217
214
246
184
200
211
258
174
210
143
183
173
129
266
215
219
212
228
255
126
157
170
248
131
165
215
208
196
220
136
241
167
130
225
209
150
144
207
202
234
233
254
226
239
159
210
213
192
271
154
111
251
251
113
245
195
215
207
159
203
199
177
264
182
239
209
189
283
212
248
204
263
207
217
185
170
224
225
210
176
163
233
221
191
269
284
237
247
247
133
227
192
127
192
168
195
175
179
181
167
195
220
124
174
225
168
259
184
169
139
194
170
199
141
139
246
189
154
146
232
247
230
202
197
157
169
260
246
215
254
249
230
219
183
187
157
144
236
187
196
197
192
165
217
222
188
279
198
221
168
218
235
208
245
242
200
218
188
213
190
231
190
163
232
216
221
264
204
152
225
169
191
231
176
192
203
195
215
124
213
153
208
196
245
223
216
180
192
181
213
214
207
214
186
187
192
217
190
174
278
214
249
192
165
208
177
134
220
206
213
206
231
241
241
173
218
227
184
115
208
188
180
249
223
139
169
216
211
239
154
209
164
170
242
274
208
263
246
170
204
206
210
244
223
200
230
215
243
124
228
195
194
166
206
266
191
197
138
187
186
154
186
211
139
240
146
196
173
233
167
250
222
183
196
189
161
223
188
182
193
208
162
121
208
241
249
190
222
200
255
200
167
239
228
218
215
143
190
173
160
201
182
213
149
166
214
213
224
208
194
203
273
173
256
204
219
229
157
212
203
263
201
187
160
251
205
194
202
236
255
168
165
231
245
218
214
163
195
186
187
191
182
192
245
161
189
210
226
197
160
183
164
201
212
196
181
160
204
243
215
169
176
228
163
221
225
250
207
195
162
150
191
171
207
218
155
156
226
209
237
151
195
184
150
248
176
194
205
173
184
185
185
162
239
154
211
165
168
147
138
246
224
157
197
165
150
171
194
210
260
230
237
208
188
198
184
190
178
219
194
169
188
163
190
193
187
207
187
206
181
215
182
169
234
206
208
234
149
255
203
177
191
185
216
236
217
237
193
206
208
233
188
210
186
228
281
184
153
234
215
178
231
186
229
231
155
195
194
195
169
180
165
179
194
200
174
159
203
160
238
183
171
225
251
232
187
252
168
153
234
171
229
212
223
195
206
213
164
169
154
137
196
215
227
146
164
161
165
190
253
243
174
177
160
237
179
174
201
188
174
220
265
138
177
183
220
215
175
151
188
252
176
253
148
237
236
199
137
136
216
200
269
215
147
240
204
225
191
161
215
225
193
206
210
167
212
216
178
237
207
202
224
203
179
205
175
168
172
169
163
182
150
245
232
171
125
183
208
226
226
216
174
205
225
209
173
191
201
192
229
197
169
230
221
161
224
270
213
204
205
217
180
143
170
170
142
199
256
188
218
210
211
236
179
191
222
227
175
202
216
193
172
252
200
177
145
160
224
227
177
223
167
212
166
191
229
152
232
187
233
197
174
190
203
169
205
202
158
226
172
243
123
235
206
288
197
181
203
232
211
185
218
204
229
172
224
226
300
171
193
178
236
231
229
191
227
228
186
193
228
191
206
202
250
209
205
170
169
126
178
225
194
181
219
165
203
235
220
212
151
200
215
201
139
141
195
207
188
163
254
222
179
251
184
211
186
233
164
254
192
201
180
203
141
225
201
203
185
193
232
179
68
219
188
185
132
224
184
161
199
269
170
197
196
159
181
266
202
194
249
238
235
160
171
269
166
221
282
230
254
193
204
231
176
164
220
214
169
205
215
179
167
216
186
198
222
250
165
201
188
227
239
250
193
178
246
236
173
250
227
219
173
235
171
178
196
198
204
226
246
141
204
187
212
203
207
281
217
200
190
193
177
266
163
175
253
185
107
178
225
155
213
173
163
195
191
202
197
155
150
167
226
221
130
204
203
191
191
246
163
207
141
230
161
183
154
217
129
195
204
172
205
121
204
264
244
240
198
237
175
218
184
244
236
213
245
246
195
188
152
238
218
253
190
201
190
169
196
224
181
154
218
134
172
216
241
183
243
229
178
180
123
225
259
179
252
228
218
238
267
184
178
218
166
185
197
252
164
181
252
200
258
202
186
238
200
239
211
194
193
176
196
247
145
208
236
145
209
246
189
250
200
207
217
198
257
139
190
132
158
260
248
209
200
180
207
230
184
194
234
230
215
216
238
191
194
177
199
196
172
157
159
193
261
166
206
222
121
222
173
179
216
237
266
144
239
193
166
219
252
251
251
182
222
174
165
182
197
200
140
269
214
153
216
197
195
199
247
217
236
245
189
204
193
191
226
259
218
175
175
186
203
184
175
208
208
188
250
231
196
148
227
138
196
186
178
137
167
256
231
164
189
212
231
184
164
219
203
251
197
206
220
143
184
188
143
153
213
195
204
193
192
195
211
166
180
154
170
250
151
180
189
186
198
258
206
222
224
216
214
204
208
213
166
217
199
260
150
158
230
173
246
208
194
181
201
89
183
206
244
217
142
190
223
156
212
169
202
203
198
247
196
169
224
185
165
207
164
217
208
188
234
166
170
177
184
262
247
194
251
277
226
255
202
208
188
173
232
216
245
152
218
199
232
181
185
197
219
191
236
205
158
158
196
210
170
266
159
191
229
126
199
245
214
242
198
209
210
227
181
178
208
231
244
195
188
224
245
225
145
211
235
143
194
214
215
225
184
191
276
201
254
152
144
188
217
187
209
223
222
181
220
160
218
185
199
208
216
222
227
157
228
240
186
223
158
216
199
167
170
218
223
235
186
159
259
206
200
192
211
195
187
214
197
171
232
188
232
233
186
215
163
148
171
181
251
243
163
153
260
139
243
166
253
213
182
212
177
193
180
202
161
175
236
242
171
218
156
235
240
212
247
178
222
180
218
213
193
157
200
209
216
223
225
219
178
197
134
178
272
202
234
168
148
183
225
247
188
174
252
167
200
198
189
258
197
188
164
193
147
118
198
207
145
255
138
190
167
218
242
235
209
134
225
171
219
189
181
196
236
245
140
259
248
231
186
198
217
153
177
238
208
165
184
181
153
213
223
207
154
214
224
257
202
172
226
157
194
210
182
233
172
258
199
204
253
177
224
200
248
152
246
247
227
195
245
142
191
221
270
222
268
162
244
190
172
189
234
236
226
197
132
246
175
195
206
180
200
170
189
193
176
180
209
207
181
204
249
171
193
207
260
172
214
234
163
200
248
194
230
219
190
214
239
250
180
220
202
172
185
197
200
205
183
203
222
239
237
186
225
236
229
179
268
182
167
226
179
282
180
210
218
206
214
225
173
227
204
207
186
218
218
204
238
197
223
187
220
214
250
268
183
268
275
213
139
192
164
203
191
165
227
215
216
185
220
223
208
201
173
180
210
215
211
150
190
270
175
165
197
252
228
149
162
238
177
172
206
176
163
183
126
261
200
217
201
162
158
236
218
226
137
196
161
117
232
214
171
166
153
193
130
204
150
203
254
199
207
233
173
223
182
174
187
164
154
209
227
243
202
242
225
177
208
195
209
215
188
173
134
287
183
236
204
144
152
217
202
213
182
196
243
208
202
258
251
212
148
178
234
173
185
252
183
248
258
148
173
197
222
186
174
184
167
223
269
243
211
208
255
236
211
179
188
230
202
246
182
279
172
221
215
209
178
244
208
215
167
130
194
235
211
170
230
192
241
215
175
189
184
215
238
200
222
221
189
231
206
242
195
202
224
168
224
205
107
174
132
227
296
180
157
199
164
165
182
212
146
196
129
179
190
212
219
262
205
179
251
161
184
248
194
175
199
244
184
188
213
206
203
193
136
224
143
181
198
169
183
224
184
257
170
164
243
230
212
234
151
235
246
221
230
174
181
206
138
178
218
202
223
194
180
221
204
170
188
212
226
132
132
248
213
157
214
163
222
102
227
207
170
233
225
171
142
239
180
276
235
181
210
203
181
189
205
209
130
117
244
208
207
238
146
183
234
209
184
219
240
160
247
182
178
216
181
178
216
237
192
250
249
179
247
118
206
239
192
172
211
237
246
242
209
179
153
187
215
241
237
173
184
204
247
249
212
172
197
142
198
216
156
200
160
196
262
229
253
237
250
190
233
207
187
149
238
198
256
227
219
193
212
255
241
243
250
225
252
154
205
258
198
220
201
213
218
262
207
196
173
199
118
171
184
202
271
219
179
204
180
217
219
181
231
183
166
226
148
192
148
211
235
223
246
201
203
157
197
252
267
198
243
175
249
274
241
169
237
202
238
234
200
237
214
144
236
204
216
225
158
193
128
173
172
225
299
218
163
204
201
139
183
205
203
216
224
236
236
186
177
196
187
202
203
190
232
225
226
268
237
229
243
150
193
164
250
219
169
205
235
197
293
221
196
177
203
211
234
210
147
202
232
158
151
160
170
232
195
253
181
169
146
219
252
182
174
192
283
255
216
140
189
187
254
210
182
152
200
221
213
172
225
219
238
199
212
166
156
200
240
211
223
196
218
217
226
165
187
263
215
158
216
169
269
226
160
225
227
246
225
208
213
221
139
148
172
226
234
195
121
186
224
208
243
178
166
229
226
257
204
226
204
222
152
266
199
180
149
176
271
165
152
180
202
178
102
205
194
220
216
221
203
226
210
169
240
221
178
196
221
169
165
209
154
227
192
206
120
176
177
194
193
186
191
237
228
231
229
200
266
237
217
158
214
180
210
225
226
242
134
183
258
176
185
198
227
188
269
182
232
176
211
158
253
202
168
275
204
220
269
134
215
215
146
196
191
236
185
224
263
174
150
255
260
227
237
261
200
186
213
150
108
197
262
209
205
188
229
154
130
225
195
171
171
186
229
236
221
217
172
195
248
212
181
228
175
195
211
228
143
208
147
150
243
188
211
140
187
211
186
169
166
183
155
191
193
165
228
180
236
245
172
232
221
190
202
174
142
201
138
253
178
210
235
191
158
235
173
241
242
198
171
178
196
199
190
164
226
161
145
206
190
142
235
258
185
164
190
150
208
221
220
208
195
198
270
208
171
221
240
230
272
236
211
181
219
181
218
259
212
225
161
155
207
217
203
241
191
189
218
213
184
221
234
135
190
165
241
181
207
214
232
201
194
204
207
223
202
212
204
224
206
245
195
211
184
257
198
210
143
216
126
268
236
253
269
161
177
183
151
230
223
199
240
219
165
207
210
221
218
207
223
142
194
169
224
150
224
215
209
222
217
97
235
184
201
216
188
125
143
236
166
212
214
162
249
177
235
194
198
224
165
224
198
243
230
231
258
170
195
169
171
196
203
214
168
222
169
177
246
202
214
219
254
205
254
201
231
169
159
192
192
176
192
174
220
149
268
171
221
272
144
234
209
207
149
181
219
235
164
166
170
187
192
184
152
242
246
255
233
209
212
195
235
199
229
184
189
191
209
206
255
210
214
218
248
108
217
210
193
167
191
180
179
166
195
200
166
158
127
224
186
222
231
246
193
213
190
173
261
132
186
142
166
224
171
250
194
180
194
270
158
218
231
222
238
288
132
220
134
175
220
203
193
186
229
238
214
163
235
182
187
213
217
202
224
238
253
178
151
233
205
178
196
256
259
210
233
225
236
212
193
213
222
203
165
191
178
203
176
181
179
183
225
217
180
200
143
187
162
185
168
213
188
170
170
223
132
165
230
157
196
222
209
207
213
229
264
217
251
213
150
207
165
184
228
208
150
188
272
201
169
181
179
221
144
186
255
257
234
191
254
216
190
237
176
223
225
184
198
214
146
221
214
147
231
244
189
203
240
216
198
220
211
201
206
211
198
146
223
188
198
192
248
188
153
233
146
212
208
177
221
250
231
221
217
189
235
166
194
163
188
173
215
168
167
174
223
229
204
267
226
209
220
205
219
161
185
262
257
186
185
165
168
185
199
183
187
230
210
168
189
116
268
229
149
226
217
203
194
179
218
211
219
137
188
247
279
200
192
151
187
205
190
167
199
226
165
219
184
171
217
203
176
194
238
252
179
239
192
220
214
192
190
183
170
132
201
154
216
182
165
157
179
200
212
206
172
181
238
228
222
185
225
193
178
223
189
218
218
224
205
199
206
192
233
196
169
244
237
187
220
151
159
204
159
232
179
181
161
167
202
213
208
216
196
263
131
254
246
96
208
227
231
129
228
204
223
190
289
216
199
162
198
240
228
240
202
182
171
186
251
229
254
267
194
254
178
181
173
257
170
215
215
209
143
259
249
193
200
132
237
220
216
174
242
237
216
246
167
209
214
152
160
174
178
189
249
224
164
247
178
184
197
203
216
159
263
237
224
204
254
195
195
145
182
201
142
234
147
199
148
161
208
217
222
204
170
246
193
163
257
201
191
244
226
185
222
162
132
214
206
190
156
195
227
170
219
159
205
232
222
179
228
205
220
175
173
188
185
204
147
239
149
185
177
200
203
209
185
259
171
234
257
167
181
214
199
189
194
186
226
148
194
230
194
186
198
199
207
167
305
185
218
231
230
203
189
241
194
181
191
216
255
228
177
231
159
150
206
162
149
151
136
159
198
217
192
267
209
249
229
201
159
239
224
227
220
176
187
201
232
193
202
142
183
230
259
174
205
184
226
165
281
249
164
131
182
230
169
219
205
220
215
203
169
217
229
256
181
245
144
215
232
238
255
258
224
185
231
136
166
181
160
136
223
169
220
245
182
146
168
177
226
146
238
243
151
218
190
271
276
155
210
208
208
219
239
207
208
216
231
178
217
177
205
217
244
253
193
206
190
188
158
191
235
206
261
160
192
250
230
163
187
228
200
202
175
163
198
224
242
192
172
206
186
229
184
223
174
260
150
207
184
165
204
189
167
173
261
244
209
203
175
182
222
252
142
176
212
171
208
212
230
215
218
226
251
241
186
203
194
200
235
178
193
238
195
200
144
231
183
182
197
176
253
256
199
207
265
185
188
235
206
190
194
167
179
216
134
169
233
175
213
154
162
142
248
211
135
150
248
204
170
273
226
208
133
185
211
222
192
232
175
171
193
204
208
164
185
108
158
175
201
188
187
211
247
198
226
193
251
195
171
257
184
248
205
206
242
265
207
190
186
242
196
200
176
254
183
137
167
161
240
207
129
196
145
210
234
220
230
173
174
188
221
195
226
206
212
222
222
221
246
189
234
201
165
199
216
221
237
201
161
228
156
224
244
190
241
168
211
195
196
205
163
174
193
218
211
206
227
213
178
254
204
177
208
153
265
185
235
211
187
213
190
185
187
221
212
164
266
128
248
169
163
230
218
231
182
180
222
204
147
160
171
273
176
232
226
213
233
179
148
153
236
173
210
181
170
208
208
150
201
189
219
190
214
146
207
161
235
231
166
227
176
201
277
221
241
158
166
200
184
137
175
187
215
198
196
213
155
189
184
174
212
184
243
274
212
209
171
157
163
181
221
169
168
238
245
185
244
172
241
233
191
168
230
214
205
193
109
209
151
124
228
221
200
269
136
196
162
208
149
162
161
231
186
216
145
143
202
248
194
193
186
196
187
223
163
238
182
204
210
241
251
221
250
165
186
149
196
178
254
204
190
130
172
198
129
228
284
176
127
227
194
190
191
208
165
224
151
236
161
265
221
151
225
152
233
190
255
160
181
156
231
216
238
171
179
158
221
228
217
262
197
212
240
209
150
187
206
152
255
209
240
203
239
188
207
248
194
200
167
216
203
188
180
208
226
160
213
233
153
216
244
221
204
198
193
205
200
172
176
161
190
252
233
168
107
205
196
266
208
234
233
167
260
188
222
233
173
246
115
255
228
169
223
191
230
217
207
235
171
173
147
180
216
224
160
188
220
184
205
145
209
233
245
223
203
217
149
215
150
188
91
190
207
132
165
212
167
223
210
204
168
147
155
225
165
233
200
227
181
214
233
207
202
207
203
200
126
251
202
208
159
170
270
207
251
154
156
242
235
206
174
190
210
163
228
233
223
191
207
183
183
181
175
141
165
194
200
246
187
161
200
146
182
152
173
237
213
162
206
174
247
181
179
234
142
187
192
214
181
241
150
116
170
179
175
259
250
184
163
243
192
192
201
248
237
226
200
205
216
186
208
236
233
193
177
191
133
218
188
190
236
218
163
167
211
205
196
232
128
202
264
192
213
156
219
177
227
156
143
196
191
145
237
132
199
222
181
216
197
191
191
209
263
180
141
177
223
193
196
151
183
206
205
191
188
200
149
207
252
182
147
198
166
177
224
162
202
253
225
154
206
177
178
177
155
228
195
244
202
196
140
249
209
216
162
198
194
195
214
239
175
199
204
174
251
232
225
259
185
259
208
260
189
226
213
147
208
183
204
222
261
245
205
191
231
162
189
164
225
229
242
221
200
143
190
127
219
169
236
182
198
223
184
149
205
194
169
183
199
204
244
244
173
179
169
203
224
221
139
241
122
228
232
228
228
140
233
241
187
179
188
248
224
189
190
201
186
188
161
240
177
224
201
223
181
212
202
213
182
164
196
208
258
172
167
142
222
178
215
258
169
189
163
256
234
172
190
140
172
163
192
175
188
227
187
160
174
198
206
136
236
157
209
220
151
186
205
201
187
192
236
209
232
215
202
185
241
197
183
171
224
183
206
216
164
203
240
181
221
226
150
152
144
175
190
252
223
186
234
186
194
201
197
178
207
251
186
185
217
231
166
219
223
195
212
116
196
246
165
174
181
189
213
182
178
177
205
214
199
220
251
206
253
225
185
161
164
232
243
149
120
156
229
209
199
274
148
149
219
234
209
237
268
204
166
165
133
232
226
170
214
170
143
177
180
164
229
186
151
189
201
232
173
223
235
141
231
202
201
181
257
192
215
189
171
189
183
162
259
216
143
162
165
214
197
176
184
136
260
210
150
204
211
219
206
182
130
249
145
224
235
139
189
141
195
215
176
228
191
274
178
139
150
239
187
146
244
208
242
235
216
167
214
209
250
248
163
221
220
182
287
198
205
200
200
202
233
186
240
215
204
267
216
215
204
188
223
198
212
219
186
145
242
180
145
211
169
237
257
156
245
187
218
167
249
235
247
218
142
226
173
157
193
154
179
194
225
227
215
175
183
232
201
214
233
189
224
250
193
157
239
191
230
138
212
164
133
197
173
242
236
225
179
209
191
179
193
159
204
165
146
301
196
173
178
242
262
258
145
116
222
222
212
230
195
192
166
112
200
199
149
162
213
185
207
206
203
197
245
165
252
181
226
204
191
176
154
230
180
205
239
167
237
220
212
148
191
224
168
184
176
208
178
211
204
203
231
251
213
212
241
248
117
258
156
167
195
188
150
213
148
189
219
182
206
271
180
215
202
191
212
153
250
167
182
219
210
201
160
170
236
178
164
239
196
156
237
202
199
221
174
204
242
208
174
280
261
182
201
133
198
163
150
170
237
231
192
157
205
216
231
214
197
196
151
227
222
236
237
169
187
208
231
218
172
212
194
217
194
167
207
223
189
255
190
172
248
194
212
232
196
255
243
204
137
170
153
189
210
150
209
175
177
203
164
267
179
228
171
191
179
156
192
232
230
159
191
209
284
213
182
215
141
235
202
199
217
231
194
240
219
234
209
189
217
185
197
193
192
109
202
206
175
112
177
254
247
214
175
145
230
191
167
159
180
149
180
167
224
158
231
206
230
189
123
268
224
202
199
235
208
189
124
171
192
156
237
222
257
172
221
152
236
152
179
192
204
122
258
175
192
197
159
256
170
263
221
177
202
212
218
205
184
204
235
240
192
175
183
259
153
208
251
149
229
245
223
130
168
212
197
197
181
204
146
199
142
172
246
185
200
108
184
245
248
270
210
224
237
239
218
245
183
145
170
222
184
196
195
147
239
160
205
198
177
216
168
154
225
157
161
181
152
237
174
178
138
165
202
147
244
205
191
233
239
199
229
193
182
242
232
204
249
198
249
173
234
103
240
215
206
273
159
151
216
186
219
204
201
239
197
132
243
163
195
148
209
149
237
233
271
236
228
207
132
177
195
188
207
182
230
222
237
237
207
204
154
216
166
157
220
249
194
173
210
223
180
229
162
194
223
237
178
161
251
171
158
219
185
224
267
237
216
181
164
226
264
233
247
223
233
160
235
234
140
186
187
144
159
227
192
248
152
207
191
227
198
198
185
157
190
202
207
221
168
211
155
188
222
177
197
176
179
205
208
203
131
176
207
202
172
228
179
186
222
196
189
204
194
192
257
228
157
171
192
137
241
226
162
182
195
238
175
202
215
234
191
234
236
174
240
193
153
239
245
246
181
258
216
194
195
207
196
218
156
186
161
183
216
179
222
220
178
263
224
207
198
218
174
262
212
218
233
255
195
159
183
192
238
231
176
239
172
265
222
156
248
139
163
200
207
232
139
193
178
153
255
224
203
122
173
186
211
205
197
238
215
187
189
257
218
141
141
178
197
196
173
188
192
213
191
157
248
191
187
220
242
198
221
118
188
190
156
287
244
159
219
198
188
190
223
200
124
258
209
185
238
190
197
246
143
181
254
202
154
234
180
164
192
201
136
223
234
188
171
194
204
171
271
197
217
219
229
251
148
182
224
204
225
178
213
210
272
197
196
176
159
192
267
174
258
265
237
182
206
239
218
143
187
149
207
187
203
172
136
285
210
171
213
159
183
212
246
223
200
179
172
251
179
181
224
250
145
211
232
230
205
130
227
250
176
138
234
188
188
225
191
185
190
225
170
189
201
249
201
208
227
149
249
240
180
195
187
199
195
223
193
151
165
211
154
152
250
165
181
190
235
220
183
220
171
228
165
201
173
200
178
223
168
152
197
193
164
243
184
226
164
168
170
200
209
196
226
220
186
148
201
143
194
206
138
195
174
183
218
175
280
206
181
208
205
165
189
155
208
255
202
156
213
195
252
151
180
185
231
212
147
209
184
201
213
224
206
214
250
157
229
175
223
169
208
262
215
210
212
228
156
169
193
235
230
190
237
207
191
139
223
109
169
161
192
188
260
238
194
159
175
234
234
145
204
175
257
235
158
258
165
242
186
208
171
204
160
194
224
202
129
203
198
199
185
175
227
200
199
170
173
227
173
193
197
248
228
184
179
255
199
169
198
174
227
207
147
172
182
162
218
218
223
174
165
212
223
201
211
180
177
244
160
217
229
166
194
162
198
247
159
201
217
201
179
192
230
174
116
224
190
221
224
162
173
197
206
183
207
151
130
183
199
254
231
240
212
219
193
190
249
120
229
226
244
254
239
221
94
191
211
224
207
237
149
168
180
239
234
161
183
210
215
194
225
166
214
197
216
263
259
210
264
204
178
189
206
203
158
213
230
176
181
201
247
208
156
154
115
186
211
178
198
208
160
184
151
169
183
207
199
283
198
203
189
158
220
136
239
138
188
158
146
215
132
183
189
202
294
243
187
247
214
211
195
223
238
256
122
214
180
220
192
251
158
263
224
201
163
168
174
212
255
212
252
219
152
206
215
217
266
181
193
168
215
206
151
229
183
177
218
179
214
140
213
215
205
231
141
197
222
87
193
204
190
264
285
220
206
155
153
209
253
196
196
218
262
198
165
180
152
258
247
186
167
189
177
278
226
185
252
213
229
164
209
223
236
232
201
225
206
224
253
198
230
244
255
207
213
163
181
212
205
215
204
224
263
227
288
113
179
185
194
172
187
202
292
139
236
222
175
227
181
187
135
203
253
209
223
209
203
170
173
241
193
186
210
206
194
135
204
257
190
236
258
163
220
181
219
229
215
170
191
206
255
227
223
180
243
189
204
224
240
166
201
207
228
193
278
170
156
235
167
211
197
225
239
262
164
106
223
145
228
186
188
181
192
197
247
178
229
214
205
224
215
152
170
178
185
220
210
166
242
197
240
124
229
211
233
168
228
164
121
187
185
142
198
221
265
195
263
197
207
168
225
184
215
278
229
199
212
203
163
210
191
208
236
161
207
202
181
230
186
270
193
173
225
212
188
204
220
210
140
195
214
147
209
181
162
238
200
176
255
221
203
193
222
189
260
151
223
205
215
155
205
183
220
223
203
150
188
234
171
240
144
202
186
213
206
171
108
235
191
209
201
230
163
183
207
207
194
207
177
213
221
232
191
162
229
255
201
157
193
212
207
170
238
200
203
253
227
228
268
218
190
192
155
239
254
205
211
224
188
181
198
244
197
207
168
162
215
248
189
177
227
193
182
171
213
183
242
198
228
211
187
217
178
170
214
202
198
146
221
242
227
165
228
195
209
223
259
238
254
197
253
191
178
183
187
180
147
226
130
212
179
207
203
274
213
253
242
184
201
132
192
182
217
254
230
178
259
217
154
194
177
211
240
247
214
191
177
196
210
167
276
259
200
237
226
167
215
147
225
210
212
162
211
207
154
164
138
207
242
250
155
100
193
203
121
203
208
185
210
232
221
183
233
125
205
152
235
175
204
225
232
176
157
196
167
211
161
191
261
253
246
180
246
209
212
235
176
197
142
229
145
192
220
211
237
215
188
248
197
209
223
174
238
170
155
251
188
159
144
168
192
212
163
239
156
212
246
263
251
156
220
205
171
217
184
164
258
184
191
213
188
228
203
182
190
211
173
184
190
176
153
121
192
175
198
214
206
222
265
220
166
272
187
182
237
164
200
176
201
212
226
162
108
209
245
192
228
193
222
221
160
234
277
126
200
252
219
211
225
193
176
205
192
232
209
233
164
229
201
175
243
170
137
244
234
216
162
192
129
206
252
235
187
240
131
212
239
188
231
129
201
231
180
182
185
242
194
147
220
235
205
195
191
163
226
224
181
228
210
216
165
224
227
185
223
203
158
186
176
251
192
138
193
236
189
258
244
181
217
149
228
201
250
183
226
149
192
238
209
206
185
248
159
215
194
192
155
206
206
210
228
243
205
192
159
187
207
248
260
191
125
159
263
194
189
257
236
227
268
183
152
192
162
154
190
209
240
179
195
211
197
186
145
145
262
216
205
169
175
96
209
207
215
197
169
199
249
182
202
197
208
183
214
225
214
179
210
180
172
191
215
127
219
236
233
144
244
214
226
203
232
245
244
210
205
247
219
196
240
165
165
209
190
230
170
144
199
234
206
201
220
204
188
160
184
263
221
203
207
201
181
207
164
207
229
202
223
224
220
195
257
246
204
254
154
200
214
204
160
202
241
189
201
190
196
216
174
244
153
187
168
249
201
243
188
204
148
177
192
197
150
221
211
214
163
204
218
215
203
170
210
198
177
211
216
260
146
207
189
263
186
204
168
243
193
195
247
183
217
147
213
162
186
163
214
201
185
197
187
219
163
193
279
208
208
127
220
187
193
230
215
183
194
223
179
184
190
202
229
205
260
157
224
154
234
182
143
237
173
196
208
166
166
216
177
154
156
234
183
172
203
179
139
209
142
138
198
289
239
247
222
191
198
233
192
119
189
220
171
190
237
200
127
164
181
141
206
180
208
229
193
277
207
191
278
128
246
269
198
180
234
179
233
223
201
180
226
179
203
265
149
177
230
223
176
130
229
224
214
185
244
193
168
155
209
190
167
172
183
184
236
219
177
242
254
217
189
147
265
196
230
157
253
227
262
234
207
200
234
181
265
168
227
185
214
180
226
162
213
186
193
240
193
197
244
192
228
248
126
258
156
101
154
237
195
181
149
166
217
161
222
242
157
198
164
225
193
234
158
158
246
240
222
177
147
191
171
194
258
207
177
165
210
189
143
168
254
223
175
254
198
139
250
180
220
216
216
198
140
193
157
201
172
205
232
242
182
174
218
224
188
185
176
203
209
206
187
229
251
159
209
225
185
128
221
231
169
156
181
196
161
191
168
236
232
118
256
130
176
205
266
228
141
182
199
135
141
241
185
194
146
231
182
263
219
190
125
172
200
219
201
213
241
193
226
228
125
212
213
210
129
221
217
159
190
213
214
219
162
216
176
249
168
234
174
210
187
190
197
188
114
197
190
215
228
203
104
261
253
186
246
252
199
258
209
161
236
199
214
175
206
243
212
195
222
262
200
257
248
204
167
100
254
184
264
199
216
183
256
204
172
195
172
225
236
177
170
159
221
155
246
161
215
206
198
205
216
238
204
227
251
197
237
180
166
156
207
199
179
186
192
198
143
147
195
196
221
173
197
220
201
223
242
220
251
186
195
180
187
218
220
208
262
218
177
178
160
198
234
234
220
150
197
154
217
178
193
178
265
172
175
220
274
223
206
142
214
246
239
201
217
205
154
218
181
179
210
222
211
175
163
169
240
120
194
197
224
207
183
242
178
241
222
199
212
154
227
145
193
220
229
253
219
200
224
127
219
146
179
234
179
228
161
221
175
206
216
201
218
249
202
169
219
270
161
216
230
153
201
278
184
163
191
146
232
234
189
226
249
189
225
151
174
161
157
171
222
180
106
144
232
252
183
156
248
203
177
177
225
209
239
145
125
217
220
172
231
192
183
175
217
195
186
151
216
212
170
150
237
202
218
170
171
251
158
159
234
199
228
240
176
161
179
198
142
172
242
134
168
220
209
214
144
209
193
170
182
198
185
215
196
230
251
158
228
192
252
217
230
204
192
221
204
158
207
133
192
219
236
244
208
164
208
240
181
170
189
183
183
155
194
189
217
184
212
201
198
239
230
202
193
261
228
221
195
211
202
155
171
171
206
193
235
171
220
185
206
237
176
191
152
262
214
191
179
162
193
231
207
198
194
251
166
209
153
226
212
224
193
195
235
153
207
193
224
240
203
242
164
224
167
200
180
210
218
262
255
202
229
204
250
197
273
232
183
236
193
263
164
210
185
221
241
203
176
184
198
205
213
151
171
208
196
150
193
197
185
232
189
193
181
188
184
199
202
231
189
241
191
244
185
213
214
228
214
199
219
155
275
218
177
176
239
147
102
147
223
181
242
150
242
205
220
230
188
153
177
193
181
249
272
187
220
175
270
192
155
209
222
159
250
201
199
223
157
219
199
217
174
105
216
154
254
223
166
133
214
161
193
225
243
228
198
225
210
205
226
201
194
137
151
206
195
238
181
251
156
171
197
256
196
145
178
136
179
184
210
150
157
225
223
160
169
167
174
182
258
166
184
181
103
174
139
162
194
194
187
233
228
249
221
264
158
219
163
229
171
196
243
182
203
242
159
120
165
194
184
242
177
232
214
215
160
171
234
206
219
197
212
200
210
193
229
246
214
184
161
152
152
192
171
195
182
188
211
217
170
198
192
180
179
208
217
194
220
192
182
256
173
266
205
205
229
167
272
238
246
132
188
207
154
220
224
207
147
201
196
247
214
241
245
151
193
167
199
211
177
231
153
228
271
227
211
203
175
176
192
225
204
168
194
202
204
188
161
178
214
157
198
228
199
216
243
160
178
219
281
235
194
158
261
222
198
238
209
221
242
205
275
222
205
183
219
208
228
254
187
190
185
221
196
204
208
271
183
178
177
135
165
170
282
176
164
200
161
212
165
205
213
237
228
182
184
240
172
150
205
271
208
202
212
196
209
217
210
205
238
263
206
185
200
256
261
219
153
185
257
161
222
232
205
200
182
185
176
152
237
188
195
206
142
210
245
219
233
151
199
203
134
209
124
204
207
187
199
208
231
196
264
217
191
214
218
205
211
177
184
218
230
194
225
224
220
189
148
240
167
202
255
200
193
232
211
248
226
228
192
206
182
203
199
179
192
225
201
227
187
159
214
261
198
181
236
186
188
189
235
199
190
176
203
210
217
214
238
179
194
228
199
212
212
201
191
227
214
230
180
175
155
203
108
229
165
188
221
201
164
233
190
215
202
200
204
270
260
153
245
222
194
147
219
217
238
194
143
179
179
171
205
164
213
155
171
172
211
173
230
204
222
235
183
196
179
191
175
222
194
286
205
173
244
174
196
230
254
189
156
197
222
145
126
200
176
154
186
242
240
212
227
236
181
171
228
214
233
260
180
183
204
188
171
189
187
281
111
179
216
196
142
204
164
226
185
245
162
155
252
223
194
213
185
205
184
237
162
98
212
192
239
196
193
210
147
202
168
221
207
167
185
192
190
150
250
227
201
183
203
215
165
224
194
213
162
193
187
208
207
198
228
244
225
149
197
211
191
231
226
217
193
169
226
215
157
224
210
231
194
168
169
151
136
251
173
144
237
182
196
222
232
154
208
211
189
247
230
202
222
227
242
172
184
169
186
197
213
209
151
179
254
165
192
222
204
230
201
172
180
233
150
190
172
184
210
209
167
164
177
164
186
165
215
156
192
185
192
232
202
212
134
279
236
251
185
270
142
258
225
289
200
199
236
186
138
156
238
163
202
194
231
254
256
234
149
206
225
241
219
243
139
161
247
158
209
229
216
172
214
235
212
217
219
187
232
232
207
238
197
224
219
172
219
211
241
247
233
200
193
220
185
182
187
192
199
199
211
103
238
228
166
155
217
211
196
189
252
204
254
261
180
212
202
187
190
226
265
164
204
117
198
210
222
205
198
243
166
225
217
193
214
156
174
188
165
177
203
217
223
183
168
186
183
177
236
206
202
217
192
185
240
157
235
206
219
163
181
210
214
242
182
239
155
216
213
179
176
252
239
220
223
222
200
218
155
194
152
208
184
280
214
211
163
181
215
181
205
224
243
123
196
186
214
180
255
195
192
260
210
197
251
201
173
137
192
205
212
207
148
228
208
143
175
178
164
220
271
203
209
290
139
158
205
213
226
225
179
126
231
197
207
202
210
197
195
288
205
273
205
230
229
222
221
204
203
219
201
126
197
168
182
208
274
183
211
209
189
226
213
230
182
229
152
150
150
212
141
208
222
248
186
240
143
214
237
244
189
213
150
231
204
165
225
189
255
174
239
185
150
250
202
214
211
128
186
244
197
195
305
175
195
156
196
131
194
169
214
128
239
210
249
209
203
249
222
169
142
262
200
205
223
252
237
219
145
170
182
225
150
263
219
212
225
205
168
277
186
220
234
216
151
225
221
198
168
193
167
237
179
171
249
160
225
210
237
140
244
184
228
183
161
208
149
188
227
157
222
168
186
212
248
243
164
199
245
226
210
193
202
166
184
285
197
216
220
182
182
259
177
157
209
213
203
229
263
247
202
196
220
197
135
234
157
207
169
206
230
133
157
185
241
172
147
200
187
184
174
202
192
190
233
193
181
121
159
229
226
213
245
227
151
241
202
246
237
194
256
261
185
162
238
161
208
178
187
203
191
191
205
185
159
198
169
202
185
161
172
173
176
214
247
224
228
189
199
218
203
149
191
195
181
228
171
165
263
193
234
206
213
237
230
154
218
217
198
226
259
200
193
218
233
148
208
192
228
102
188
156
215
146
163
159
131
217
257
201
194
195
250
189
184
250
183
183
247
137
233
223
242
191
194
205
225
186
196
213
261
155
176
250
208
158
189
187
177
231
246
194
162
216
182
261
232
212
176
227
238
149
184
132
138
172
189
209
214
205
189
183
207
205
242
202
182
250
129
255
240
234
193
189
217
206
217
279
266
182
251
182
160
192
208
242
205
184
194
255
143
196
221
230
132
181
205
204
134
144
226
129
131
193
197
243
167
224
205
219
206
178
179
158
227
229
234
219
207
128
165
175
204
241
147
131
172
184
243
185
185
187
168
193
147
208
211
254
253
203
254
169
207
173
244
225
222
224
216
183
136
188
226
186
189
202
171
155
182
204
256
191
187
246
184
249
171
185
228
182
241
196
221
185
232
169
132
156
176
220
210
235
168
198
221
222
167
215
283
202
185
212
170
257
203
176
149
178
195
187
186
206
199
226
216
261
203
132
181
199
212
167
217
194
147
202
196
171
149
243
187
192
227
201
214
220
199
214
210
198
180
169
182
225
192
167
148
208
138
188
230
159
182
199
150
210
213
235
225
217
199
210
197
209
170
247
175
222
203
221
201
216
172
243
270
197
256
181
236
207
222
205
205
246
214
176
155
167
205
155
150
201
188
170
211
222
223
188
213
262
183
202
240
207
198
156
154
221
219
224
161
204
208
221
150
203
185
161
248
273
163
174
223
251
224
250
199
229
187
232
164
238
165
99
208
211
171
158
176
189
169
182
185
224
148
179
206
162
290
181
175
185
218
259
221
189
215
185
197
157
241
206
256
242
156
224
250
170
224
185
192
206
137
188
163
194
144
135
151
169
237
223
202
249
239
256
240
212
204
203
240
211
176
174
262
177
228
188
134
170
230
233
189
227
147
197
239
265
178
192
152
205
212
240
115
212
147
173
200
168
234
227
229
215
189
236
169
249
145
230
165
165
211
237
179
194
177
171
192
182
186
165
214
177
207
231
213
201
166
195
215
179
248
228
163
156
182
227
232
176
183
227
222
199
145
174
170
219
154
175
194
199
229
227
175
266
166
175
193
149
275
218
211
209
183
132
236
163
216
191
164
207
250
161
155
193
197
224
216
174
166
170
226
253
194
179
146
174
259
236
200
230
176
188
259
124
179
201
202
191
254
219
229
154
217
199
171
178
164
169
183
165
169
154
160
213
151
214
230
158
206
235
212
250
182
194
240
167
154
125
221
280
220
229
188
204
201
277
217
218
157
180
167
241
216
232
213
201
228
256
225
273
222
200
229
201
181
198
205
201
129
183
186
221
212
197
173
185
154
205
233
228
197
218
147
188
209
217
152
170
275
216
171
217
146
232
219
246
212
210
247
220
188
145
234
158
170
223
177
148
189
233
197
215
204
163
209
253
139
201
186
196
280
204
260
209
204
228
231
173
211
178
221
219
111
148
142
221
245
154
188
210
221
180
167
167
253
189
206
234
165
167
174
284
176
133
223
235
224
230
216
151
200
222
162
226
210
207
182
261
128
227
208
223
201
262
219
188
230
201
154
215
146
259
243
253
208
169
213
154
210
188
228
219
223
240
238
166
207
186
203
220
277
189
227
225
221
241
204
165
147
213
211
174
206
194
163
246
168
236
213
244
177
138
177
255
189
199
180
187
189
228
138
207
174
190
162
223
199
253
200
192
220
184
252
190
257
227
212
222
204
258
206
219
171
173
202
180
187
180
196
250
129
225
179
191
153
220
169
156
148
202
226
181
242
258
181
223
212
240
148
179
218
266
182
223
166
220
214
152
210
215
214
227
176
204
185
209
238
188
238
237
249
216
175
186
219
257
239
162
116
208
136
143
238
205
162
142
177
172
228
202
202
186
214
237
165
179
215
224
183
146
205
169
157
177
190
280
237
214
199
243
185
189
188
204
223
152
158
189
196
194
270
218
192
127
213
222
191
198
256
191
208
199
232
174
224
255
188
164
222
179
183
183
164
208
251
215
230
185
179
229
175
185
225
230
198
260
231
220
201
188
121
203
157
215
198
223
214
129
168
174
191
281
209
217
227
203
164
206
195
226
195
197
203
238
185
210
221
211
231
178
208
273
211
218
200
213
192
159
196
210
206
170
233
205
216
252
195
186
216
213
251
187
203
242
217
192
192
204
198
211
273
134
188
171
190
172
152
199
243
229
213
235
230
160
214
227
205
232
179
202
235
182
201
168
182
170
158
216
172
191
145
183
173
192
165
197
151
205
236
152
243
163
176
200
174
156
222
229
190
182
181
196
175
196
172
168
235
227
213
222
103
217
204
227
230
212
174
224
153
188
180
134
202
241
155
218
233
217
178
156
229
223
195
193
196
173
248
241
228
183
192
150
236
153
204
190
202
193
204
218
199
238
254
179
219
213
192
172
191
216
252
210
174
191
170
194
205
178
232
236
178
213
191
247
168
237
213
192
182
182
194
144
184
186
192
199
196
177
216
127
210
221
176
194
194
209
230
201
217
152
181
146
213
224
196
207
212
255
226
209
252
167
154
211
244
225
192
169
225
224
136
167
206
198
218
258
182
181
276
176
143
184
209
197
184
268
175
197
182
208
142
193
213
162
153
178
176
219
153
162
197
187
164
166
196
188
205
152
198
154
171
171
267
239
168
218
182
167
177
182
193
144
241
203
233
204
184
226
196
192
238
218
199
219
218
191
135
138
201
183
209
245
197
147
257
241
156
171
251
158
244
232
233
207
238
178
234
187
159
229
209
198
176
240
155
245
159
197
173
166
201
189
163
175
191
234
164
196
183
198
245
150
226
184
200
232
243
142
195
209
186
191
151
229
183
138
252
203
223
151
168
187
162
248
194
214
231
212
136
220
250
221
111
219
258
137
145
170
230
237
226
252
234
195
202
239
291
153
192
188
211
150
238
149
237
231
185
199
195
249
197
208
193
179
165
157
213
179
162
216
252
196
137
222
211
202
216
228
164
229
206
281
211
174
249
208
199
218
201
239
194
243
224
205
186
130
229
221
219
207
151
222
227
189
131
249
268
156
256
193
187
208
188
163
146
180
230
221
182
173
228
212
213
256
239
175
171
233
110
195
215
206
222
216
249
247
285
190
212
234
206
187
215
245
186
240
219
130
242
143
196
224
177
222
200
197
176
175
166
192
228
165
247
184
214
192
192
266
230
241
218
203
167
228
235
190
170
248
252
216
172
172
177
212
200
211
191
214
233
224
146
190
246
218
199
190
253
246
203
187
192
171
242
237
205
221
177
203
160
189
180
261
261
119
168
155
237
240
178
170
195
155
158
170
100
201
217
209
237
183
134
219
260
189
175
181
141
166
238
235
239
224
272
280
131
203
124
183
218
150
204
203
193
182
181
211
126
140
227
235
210
199
151
235
179
225
239
215
154
174
205
180
212
105
196
239
200
218
213
168
153
175
215
236
266
200
138
180
236
172
198
137
215
210
170
178
169
206
212
146
206
199
189
224
240
175
170
183
174
176
161
182
147
159
237
192
150
210
206
189
239
210
180
179
221
226
193
238
246
184
210
242
190
166
204
199
193
217
134
215
188
161
213
205
174
236
247
264
231
177
172
150
146
210
184
275
263
226
221
213
202
247
175
201
186
177
191
196
241
210
122
157
175
175
193
175
212
168
249
213
201
196
218
168
181
227
230
236
182
152
191
138
179
192
208
177
186
264
189
227
253
184
143
203
184
244
152
212
165
234
137
229
191
159
211
174
258
247
201
243
186
178
203
179
205
249
198
233
178
184
142
166
202
237
157
198
225
192
188
207
202
117
149
209
191
252
214
192
204
187
159
195
202
184
227
244
217
185
240
142
198
180
179
201
167
182
172
142
148
284
212
188
179
243
225
244
200
221
183
187
183
238
203
243
225
216
156
221
193
229
184
214
167
222
178
196
222
119
215
159
267
218
206
249
215
243
185
177
217
273
206
215
256
123
211
159
210
165
252
154
230
178
212
147
187
209
142
217
218
245
212
170
226
222
212
265
209
205
219
197
173
203
237
173
250
186
214
228
223
180
173
210
236
203
235
239
226
198
206
189
135
218
224
193
177
176
183
227
243
186
180
153
155
145
184
215
213
157
168
188
213
224
231
207
176
179
223
204
176
199
168
246
228
212
195
194
262
133
252
226
189
217
177
208
163
208
170
175
230
199
191
164
216
186
223
236
255
199
236
210
197
136
193
166
184
172
230
160
221
227
178
233
211
212
179
182
258
231
222
103
225
200
211
190
164
216
195
185
204
157
246
166
152
238
255
122
209
248
127
173
219
190
225
198
182
128
191
218
137
196
197
200
170
271
165
265
219
219
198
183
265
181
204
236
205
208
259
221
242
195
180
186
199
167
229
203
206
183
232
217
224
169
200
220
170
178
149
206
171
171
179
225
178
153
181
149
191
199
175
181
230
215
169
141
225
196
187
232
176
209
212
195
207
223
175
207
159
206
148
215
177
182
260
139
239
165
203
143
240
269
178
190
240
247
223
194
184
186
183
154
206
136
208
204
158
196
257
176
243
243
176
202
162
247
183
184
185
196
197
226
217
194
198
181
166
193
190
188
172
206
217
127
171
218
163
194
243
197
212
170
212
160
232
159
213
218
282
182
160
198
153
186
246
257
187
244
187
166
139
236
226
163
122
182
191
191
195
193
185
230
206
147
148
156
218
192
236
225
228
234
236
165
232
202
170
178
194
149
163
220
196
157
240
217
139
197
154
230
217
176
233
171
211
186
202
172
206
174
226
211
195
205
252
235
223
165
204
176
160
218
175
173
226
220
252
124
199
157
161
220
200
208
221
141
240
227
166
189
245
193
138
172
249
169
175
146
217
192
207
235
122
210
228
202
161
195
226
213
249
194
174
182
182
211
196
181
222
224
264
169
170
235
169
160
176
152
177
144
151
219
164
203
252
223
218
199
210
214
249
189
142
170
236
177
223
201
207
163
243
220
166
282
265
267
151
211
231
219
174
216
171
160
260
238
270
210
219
171
197
218
222
209
275
214
217
222
155
182
172
199
236
176
278
215
233
226
191
146
139
172
126
177
151
218
198
196
221
243
199
105
253
147
245
177
173
229
212
169
213
241
160
204
212
158
220
228
192
188
262
176
180
211
132
235
201
215
192
211
166
122
205
226
204
177
203
173
177
248
182
191
185
212
188
211
248
190
180
144
151
139
200
176
203
261
232
206
249
203
209
254
188
160
229
214
164
198
194
251
173
170
214
213
233
151
160
121
223
173
203
212
171
205
241
157
262
187
176
210
245
160
195
167
156
156
170
218
149
203
207
125
195
177
194
243
209
271
193
241
160
165
204
223
151
295
156
231
263
199
202
183
233
230
223
220
172
192
215
192
197
229
105
221
215
167
198
200
231
163
182
229
191
183
213
157
187
267
263
173
158
191
235
190
234
205
230
195
202
223
176
204
212
252
236
265
216
169
239
222
255
206
188
191
190
216
188
151
232
149
175
253
230
212
242
200
225
254
181
198
173
163
186
207
175
246
194
176
218
178
238
204
217
157
169
218
263
256
255
129
233
170
205
174
211
173
241
135
185
204
187
223
226
186
191
201
274
147
213
245
219
231
206
188
221
211
206
245
168
254
148
220
164
152
263
199
217
199
195
209
205
248
195
182
177
149
197
214
173
199
206
114
154
202
219
145
262
156
246
171
226
218
257
195
249
173
185
166
234
198
234
133
222
196
210
239
215
226
185
222
205
190
192
218
251
272
246
164
210
189
264
128
174
174
191
195
213
163
204
228
161
201
161
228
196
226
223
216
167
178
165
232
130
214
212
238
205
180
206
240
237
138
181
182
217
185
171
188
189
188
205
121
219
223
252
169
208
185
157
237
138
183
131
222
221
200
217
243
195
233
213
198
148
222
176
215
178
217
207
211
183
228
218
216
222
213
148
214
206
218
231
112
180
172
146
166
181
160
187
214
250
240
227
218
195
181
201
238
163
211
150
188
177
190
194
199
184
164
171
244
237
221
210
215
200
177
212
175
237
174
197
209
169
241
209
159
149
252
203
211
229
218
223
172
221
173
194
248
159
192
223
186
206
225
216
230
220
214
175
214
174
156
207
190
189
131
148
110
222
136
245
219
204
182
257
209
214
161
197
175
238
221
172
167
222
201
207
202
156
229
277
239
199
259
195
192
246
212
205
170
180
217
240
220
241
236
241
207
197
180
241
241
171
245
194
190
192
162
202
179
213
190
206
183
183
215
175
177
217
161
234
200
101
252
220
264
261
164
214
212
186
182
226
249
184
193
251
152
182
186
229
192
182
205
172
181
204
139
159
210
172
250
200
203
182
240
224
218
140
219
106
284
185
215
215
244
144
146
248
127
224
213
171
190
220
181
187
199
213
268
224
216
252
243
198
232
167
207
214
154
121
260
265
162
225
222
239
196
166
199
131
131
213
143
224
216
226
212
158
193
276
201
161
222
145
215
142
226
227
217
222
190
235
192
180
208
234
236
192
222
184
187
163
210
198
172
157
177
180
201
191
234
175
163
163
193
240
153
231
158
233
222
215
145
160
206
251
244
196
169
211
211
199
240
235
168
192
177
223
222
186
147
208
253
170
218
218
155
250
121
233
227
202
158
233
245
204
172
203
133
176
214
191
220
218
227
215
179
257
207
225
160
224
157
248
161
156
205
253
177
222
168
208
245
175
252
181
187
255
200
182
244
176
206
168
166
187
203
207
178
209
157
165
176
179
176
265
203
203
158
217
214
213
224
167
178
228
187
150
228
168
242
202
202
234
205
224
187
226
278
241
256
190
233
175
139
179
277
185
173
143
224
214
243
193
224
256
189
225
257
219
142
146
181
107
130
187
158
201
179
229
243
186
237
262
221
221
156
168
197
210
216
202
174
175
227
119
164
218
206
227
164
198
208
192
125
172
226
133
143
197
222
188
173
242
162
214
191
199
143
173
252
224
163
147
180
140
234
181
214
239
254
200
195
241
157
173
193
172
182
223
172
203
218
199
209
197
228
173
190
199
196
196
196
245
233
235
218
221
199
143
196
142
188
162
231
215
226
224
181
262
231
163
221
232
252
245
183
113
225
151
148
221
182
182
215
145
221
204
203
163
189
225
176
162
262
205
207
182
181
265
201
194
154
200
204
179
249
159
272
195
169
208
166
201
236
177
221
209
168
246
220
194
162
224
214
227
186
114
216
214
190
216
140
129
125
111
236
204
207
182
172
164
169
171
179
194
175
234
225
212
212
176
161
191
146
250
178
240
190
186
233
214
164
221
168
178
211
186
193
212
249
162
197
200
176
157
255
188
202
218
199
191
213
245
153
274
163
236
211
232
204
140
230
189
218
240
184
236
166
123
214
199
228
244
230
163
122
193
200
242
151
215
229
181
213
206
227
186
198
189
237
197
110
237
212
138
193
180
232
165
203
216
133
167
258
88
236
178
231
155
178
243
200
194
209
166
199
167
263
168
194
209
148
209
216
263
165
228
199
127
220
180
206
207
230
207
257
193
199
190
180
239
195
219
173
213
141
168
222
205
244
223
198
213
212
205
232
231
177
211
180
171
228
184
173
208
241
175
216
168
246
224
186
178
204
168
219
188
181
173
220
239
248
236
184
154
256
182
185
173
208
170
244
232
181
241
195
190
190
216
188
224
215
182
160
204
174
172
185
217
231
147
213
189
214
230
220
195
208
214
195
162
231
207
138
259
213
166
228
234
186
171
224
198
123
83
168
203
190
245
175
144
203
200
133
205
177
212
209
181
218
209
166
207
191
200
242
210
165
214
189
208
176
229
253
200
196
191
147
214
200
156
185
237
232
171
221
216
199
191
202
254
165
168
194
198
222
231
179
227
249
256
207
177
261
224
227
220
192
218
209
149
213
190
223
192
182
227
144
210
152
138
187
254
236
146
226
190
227
236
166
169
265
259
181
218
173
252
220
251
222
198
179
201
192
192
232
201
195
221
120
213
218
258
191
232
188
159
206
160
208
251
137
178
160
155
178
215
221
243
177
226
234
224
162
159
259
129
137
234
180
180
182
165
163
170
206
121
238
206
227
201
233
173
152
236
124
191
140
221
173
234
154
122
111
205
221
206
173
242
183
215
214
197
175
172
217
243
220
163
228
241
169
159
193
153
214
258
143
192
126
175
231
199
192
223
202
231
242
196
211
202
256
159
175
135
232
194
242
269
164
159
222
179
234
171
165
196
211
180
241
185
164
224
193
202
149
214
201
207
261
243
193
198
183
230
248
149
205
252
203
210
176
196
196
206
264
201
195
202
237
224
159
177
230
190
211
186
264
227
211
188
198
202
213
178
243
192
194
231
139
189
209
225
123
204
204
167
220
206
244
173
181
180
169
215
227
214
235
192
191
185
198
182
152
170
180
240
213
159
237
224
194
207
231
176
255
207
155
247
159
181
161
196
156
149
203
285
213
159
230
168
175
97
194
256
100
168
193
182
209
217
203
197
214
164
173
245
202
183
190
152
203
197
160
190
198
206
258
237
161
229
185
161
198
253
177
218
180
224
212
156
246
229
230
143
212
159
215
239
247
208
229
214
204
208
173
198
150
236
234
127
169
164
158
141
210
218
182
150
188
193
187
201
237
235
219
235
203
171
189
217
224
218
267
207
218
190
271
203
161
199
212
160
179
198
223
187
197
203
233
177
165
122
239
193
252
178
244
157
171
188
219
179
203
191
109
140
204
201
199
149
180
173
215
245
196
188
267
205
179
164
173
202
162
217
175
236
133
184
208
224
197
262
217
232
231
185
215
183
191
214
136
151
157
239
239
283
183
220
208
165
280
209
230
218
155
215
202
121
241
181
238
212
168
159
211
210
193
261
245
220
221
197
226
181
202
219
224
189
114
159
192
199
255
208
223
169
248
183
232
219
168
207
223
220
171
184
284
160
214
189
222
241
265
198
226
167
215
147
264
199
216
211
194
153
189
208
224
144
184
257
223
207
214
217
188
201
244
185
156
195
167
212
225
221
221
216
191
207
183
202
222
215
166
222
188
227
118
151
211
198
221
130
264
213
188
232
199
190
290
210
174
205
201
255
223
173
136
211
211
251
225
190
239
180
161
206
206
235
257
171
163
153
228
206
220
229
167
176
105
229
242
222
160
176
210
236
235
188
181
194
185
211
163
214
241
210
173
226
141
206
169
212
190
176
204
231
200
248
181
174
176
204
189
152
209
217
152
239
245
170
214
177
241
177
251
150
131
173
169
218
186
217
198
219
155
264
124
178
168
136
174
150
238
162
223
172
180
244
181
214
193
223
221
202
227
106
133
213
173
222
201
180
268
205
220
115
217
230
256
184
214
165
149
234
162
225
267
226
249
198
219
218
180
219
237
244
180
213
167
200
163
166
189
168
202
220
218
203
230
201
250
239
197
233
223
172
224
192
165
228
228
202
201
178
199
222
212
232
177
225
181
134
150
204
249
220
197
241
219
210
132
225
132
230
164
209
180
133
169
197
198
190
210
136
118
215
192
188
177
247
180
189
207
261
206
231
221
137
230
152
211
216
249
215
227
182
235
161
102
216
193
188
220
217
229
253
188
201
175
205
208
230
187
201
184
254
188
224
149
220
243
172
187
205
238
172
225
259
186
146
261
178
163
208
215
175
212
218
107
232
175
228
159
211
218
228
192
174
162
205
156
208
191
170
194
221
177
209
207
173
221
179
157
197
247
176
221
228
250
174
236
232
171
151
162
249
237
222
259
201
191
165
264
231
166
242
164
213
202
162
207
236
239
245
167
207
198
222
245
223
129
200
233
163
184
228
195
208
258
235
224
193
140
216
208
211
202
165
228
200
172
188
239
222
173
180
173
184
161
186
232
172
196
212
205
206
180
219
136
218
263
186
161
156
214
201
164
190
194
232
219
194
178
192
175
201
177
218
216
256
208
156
135
183
217
174
180
216
188
186
208
231
216
189
165
194
217
247
212
186
225
162
173
168
184
177
213
196
222
250
221
214
232
192
156
169
185
141
172
256
153
136
188
186
182
162
189
164
207
197
205
239
171
220
216
197
244
229
190
155
183
129
210
194
219
230
168
200
170
174
205
167
168
176
166
221
245
161
234
127
131
181
205
153
200
146
248
259
147
229
198
164
201
192
180
176
162
179
195
156
205
163
99
146
229
203
209
161
192
233
205
188
203
217
226
173
250
194
192
231
189
218
184
195
167
220
227
215
183
200
165
178
186
198
192
157
145
221
216
219
248
180
160
171
195
240
231
236
222
201
251
195
187
197
183
219
165
208
280
210
196
244
208
168
247
205
164
255
158
189
186
202
218
214
220
202
182
231
175
235
199
189
152
171
172
221
213
192
236
182
211
153
164
235
227
251
210
208
205
223
189
218
197
95
253
170
266
253
215
206
179
121
229
146
181
203
206
189
167
178
199
191
202
180
201
160
191
234
159
215
200
277
187
220
226
162
190
241
250
151
147
206
178
214
222
169
181
177
216
199
201
179
259
201
160
268
231
186
237
181
222
169
204
212
255
236
216
180
167
165
211
230
165
219
206
207
185
210
205
166
139
184
220
190
198
219
234
229
204
88
187
190
197
153
202
182
180
137
104
217
189
223
179
169
219
231
238
213
147
209
204
215
202
171
175
239
256
207
210
120
190
232
195
246
225
161
243
193
251
195
248
248
205
209
221
150
179
226
220
222
190
221
171
192
220
270
187
150
111
146
193
172
161
220
237
279
129
245
168
191
227
299
177
211
191
210
167
251
164
237
166
185
201
172
169
229
214
216
202
238
284
249
212
178
194
207
204
179
234
181
218
148
171
194
267
187
209
216
263
241
252
211
234
220
291
151
204
246
187
225
217
184
185
220
188
204
232
275
243
228
229
220
182
239
206
194
164
208
191
187
185
155
142
219
232
241
192
221
223
231
186
246
210
154
207
222
155
169
186
181
251
232
201
218
180
199
217
199
146
165
169
209
187
211
224
196
252
201
213
222
212
189
256
188
141
213
227
219
215
189
255
259
232
229
142
208
229
187
190
208
231
245
232
195
222
186
249
207
219
219
169
228
188
160
175
163
196
249
213
157
213
203
204
251
213
253
247
183
193
176
223
193
221
238
138
234
201
154
191
167
213
216
201
206
198
171
182
270
209
187
164
191
222
179
179
225
187
158
227
220
227
204
249
223
237
248
189
130
217
164
222
224
221
174
178
243
245
233
198
208
266
172
209
208
175
226
180
256
228
213
139
212
135
245
233
240
211
222
163
180
212
204
262
126
150
284
209
133
185
192
187
176
171
209
259
148
200
202
228
235
169
201
205
181
224
187
206
245
228
244
250
237
210
185
141
165
175
213
186
244
141
243
193
159
215
202
183
263
249
199
206
180
234
198
228
207
173
184
233
140
233
134
194
209
172
215
249
247
215
194
227
196
187
192
169
170
129
148
217
237
204
216
217
225
216
170
240
186
149
190
217
123
188
219
243
213
165
185
217
258
186
234
260
124
262
190
228
221
140
161
205
228
212
187
164
259
192
194
165
206
182
218
226
228
207
270
228
194
183
216
225
201
211
200
223
197
197
219
206
138
197
213
153
188
151
217
201
225
159
183
201
174
234
171
207
236
217
158
217
185
192
197
174
176
209
215
179
196
167
193
225
206
175
223
183
264
183
144
140
204
180
237
204
159
218
163
201
162
149
247
223
250
175
186
206
177
235
243
212
123
267
200
187
128
198
219
207
238
216
194
230
204
95
207
216
222
187
228
174
174
242
168
205
233
224
112
215
167
147
195
171
132
200
146
169
215
218
258
200
257
157
196
256
162
213
245
160
234
195
215
134
197
213
186
237
213
231
180
121
153
229
181
228
224
213
158
206
169
163
237
247
209
218
241
252
160
139
223
180
168
165
233
130
202
164
271
245
248
185
122
175
218
213
233
198
162
172
169
165
185
249
258
166
220
235
207
229
210
220
177
149
194
167
225
219
148
163
189
151
186
162
224
212
218
248
172
253
207
206
254
198
172
145
211
150
132
206
197
281
171
208
202
163
223
285
230
179
196
155
210
204
212
232
193
209
228
221
243
278
192
157
185
176
138
247
204
210
288
171
195
129
203
236
224
159
213
159
195
171
145
250
211
198
152
159
197
204
224
249
215
204
238
142
213
192
194
165
229
233
200
229
197
188
190
186
239
194
269
262
132
233
224
193
222
229
203
220
118
188
210
221
214
153
179
153
206
206
234
209
226
257
129
263
174
233
227
178
191
173
189
263
261
222
225
187
170
266
205
147
151
173
196
150
207
179
166
123
174
226
198
228
250
197
259
167
232
221
273
226
192
223
206
185
195
181
181
189
201
178
216
228
176
181
222
219
191
240
234
216
204
230
288
264
183
205
201
238
238
206
231
221
210
267
220
229
190
202
169
206
215
202
223
188
79
202
192
179
182
140
162
216
169
211
174
187
201
148
263
232
220
260
171
211
197
175
261
200
232
221
213
189
211
225
219
231
199
193
131
179
160
147
226
230
223
205
190
154
193
203
194
163
193
190
139
282
254
248
132
198
154
161
236
177
180
240
203
226
123
204
227
179
208
116
135
195
155
248
165
135
213
181
137
209
123
209
226
162
182
242
217
206
161
241
234
235
202
180
161
249
181
221
237
213
291
123
246
194
252
265
203
230
162
189
251
184
209
184
156
163
188
173
196
269
166
205
164
222
169
107
154
189
135
197
153
272
211
147
183
192
231
160
202
133
175
214
204
245
197
156
186
229
182
145
185
194
221
214
201
193
171
160
167
202
161
202
164
215
230
135
197
200
224
260
206
177
252
135
222
147
212
159
235
204
205
187
130
260
243
181
175
186
149
220
224
218
221
247
184
148
199
228
125
233
196
268
162
236
182
165
217
200
99
201
214
195
198
184
198
170
138
248
200
222
248
124
151
250
198
200
213
197
278
224
169
137
207
162
222
159
225
256
197
197
223
180
236
166
248
215
184
189
177
170
177
143
210
224
217
277
223
150
209
172
234
190
180
192
163
155
238
178
161
158
218
188
184
230
149
185
193
220
179
232
144
171
226
216
169
184
146
228
158
176
220
130
165
212
206
255
252
208
212
197
259
153
264
175
198
248
140
195
150
177
207
187
273
174
198
240
184
197
140
216
215
193
138
195
179
219
152
202
188
192
238
176
208
226
205
184
166
215
185
215
289
228
183
171
236
159
158
236
170
234
181
243
207
114
258
195
198
188
191
242
259
175
239
245
185
163
244
186
191
153
200
204
200
163
266
180
198
171
254
221
208
213
249
253
237
203
219
181
180
246
200
205
243
229
187
222
134
212
205
239
189
231
207
188
195
230
236
205
199
153
166
201
227
148
142
210
216
171
203
207
238
199
198
254
169
203
229
222
177
259
237
169
221
230
189
208
191
154
251
172
217
241
159
170
241
209
155
200
152
283
169
229
207
186
187
184
216
188
148
237
183
246
298
178
194
161
202
222
169
182
227
253
169
208
165
274
238
187
226
213
223
252
228
146
239
198
203
154
211
202
217
200
182
198
228
197
215
140
260
191
235
180
260
180
162
205
197
184
225
206
265
160
212
178
229
195
236
165
165
193
185
207
238
252
240
123
222
239
247
174
201
210
191
156
210
214
204
221
193
174
229
197
238
233
203
123
212
267
163
202
182
214
216
179
239
266
160
241
212
253
183
194
219
191
185
204
144
256
196
211
192
227
243
206
164
195
153
197
230
262
256
160
119
216
234
110
227
162
239
183
220
251
162
205
235
182
220
207
244
168
165
140
189
192
195
229
204
163
246
216
200
179
185
153
165
204
225
208
214
145
223
135
175
246
219
189
214
181
218
177
201
272
232
198
194
240
227
234
175
156
195
186
221
230
170
177
187
198
226
203
249
171
140
203
226
179
199
189
200
148
192
262
160
197
228
175
169
217
194
161
182
185
235
176
186
237
127
269
164
222
233
189
196
189
202
243
204
175
171
198
204
155
214
214
183
206
243
188
208
222
242
210
163
188
217
211
228
248
186
213
132
185
134
179
198
160
215
204
190
193
204
248
152
225
227
235
181
223
137
192
209
194
168
207
254
188
196
161
121
166
177
239
222
194
162
230
215
158
118
163
247
211
191
209
243
188
202
164
240
213
209
118
222
176
153
207
208
176
195
255
211
221
158
149
122
151
209
224
229
224
205
196
194
235
208
241
184
263
168
151
176
166
210
227
195
188
209
194
206
238
166
230
196
165
183
217
173
188
202
178
187
188
199
208
223
201
245
202
174
227
180
179
214
198
171
236
133
202
170
165
215
142
160
197
194
207
200
171
210
201
202
195
168
221
162
184
225
185
218
235
221
167
185
218
162
202
200
186
235
186
223
154
188
139
200
188
205
205
210
198
182
194
192
234
255
272
178
203
233
186
209
236
229
169
182
173
190
236
237
220
221
222
264
205
140
208
258
240
240
205
160
169
217
118
181
195
196
191
172
192
189
250
153
197
183
139
194
224
251
261
129
148
172
181
166
220
169
229
178
154
275
212
237
154
212
191
181
169
196
237
159
166
224
200
203
248
185
171
199
190
177
194
166
216
181
164
219
184
191
115
214
135
202
121
198
168
294
159
192
170
207
194
196
176
199
216
179
180
170
151
237
245
243
278
162
215
129
217
279
170
224
155
180
228
192
195
189
183
153
215
144
162
165
189
128
151
214
203
198
206
208
183
211
193
177
169
219
183
219
240
180
238
197
215
187
194
210
224
147
180
251
171
249
239
244
182
170
221
166
148
149
243
240
176
234
220
260
151
231
213
169
199
228
188
160
216
203
162
185
261
179
205
129
256
180
159
145
190
186
226
196
192
217
164
184
242
237
190
225
196
223
230
196
254
213
137
175
209
235
201
187
143
201
215
182
193
209
192
192
190
165
206
219
213
214
208
190
145
180
180
181
184
174
224
148
197
225
187
150
150
213
247
175
176
174
243
217
221
205
146
192
242
131
212
186
205
162
172
237
237
173
175
154
155
214
132
224
225
232
207
258
203
150
231
241
159
243
220
233
160
221
217
180
262
203
235
173
178
187
186
172
221
232
175
170
195
181
292
161
129
191
255
234
226
159
185
211
224
199
233
233
223
212
184
156
199
166
264
163
174
234
191
195
134
147
254
188
222
210
205
138
191
204
185
243
212
183
169
157
220
155
168
224
184
207
136
255
184
126
184
181
168
215
208
214
199
241
234
211
175
192
149
179
187
223
169
218
211
137
166
172
204
208
125
190
178
198
186
173
210
230
155
214
228
236
158
240
189
153
235
222
173
192
236
239
188
214
194
167
241
177
173
189
204
188
183
211
152
217
204
229
248
176
232
117
231
167
201
220
182
226
139
155
216
194
150
247
150
238
224
159
182
209
208
190
232
239
218
201
242
151
275
211
168
196
247
228
188
207
214
191
158
245
172
201
208
226
196
230
193
149
199
210
228
190
239
205
259
184
180
165
188
147
145
281
165
200
234
162
210
195
220
223
190
207
262
191
207
249
120
239
240
199
258
168
177
240
208
248
158
215
137
129
162
203
227
257
159
173
173
186
237
155
176
224
222
253
232
165
232
183
182
206
194
206
255
194
254
198
146
177
198
156
216
131
218
216
213
216
212
266
153
157
162
261
189
118
247
145
157
237
245
153
212
196
189
190
225
133
103
143
148
144
210
177
235
175
174
225
238
227
261
198
135
197
249
217
203
209
214
203
196
214
178
208
288
195
133
230
224
239
213
154
217
185
164
142
222
215
209
136
185
223
181
218
186
142
222
206
214
158
210
216
250
224
173
228
256
192
176
192
189
237
230
222
187
220
182
159
208
215
112
181
258
220
189
258
221
265
196
173
180
146
216
207
201
204
225
233
238
209
177
170
189
176
210
207
202
195
237
143
167
197
223
185
147
193
191
211
225
228
214
152
215
132
234
180
218
223
224
207
219
169
218
216
180
210
205
142
134
223
173
218
245
224
196
200
162
248
145
215
203
138
210
201
217
134
227
211
181
160
228
193
193
164
221
228
170
161
226
209
225
210
190
190
190
219
225
262
164
243
186
239
175
247
168
181
190
161
160
120
126
219
211
212
206
207
150
203
204
215
187
177
233
185
140
213
195
201
259
185
225
229
202
182
130
199
245
209
194
220
213
187
232
192
163
196
266
207
177
195
224
222
205
215
228
143
204
244
201
272
170
226
223
223
222
194
175
193
220
213
205
241
211
185
212
192
212
222
164
149
197
234
171
217
191
241
178
207
118
166
221
186
174
189
218
207
219
180
242
199
225
264
192
202
156
185
187
128
203
164
218
175
179
163
201
185
273
167
234
173
239
133
242
144
216
178
189
161
193
214
171
179
200
202
155
218
199
237
157
163
230
179
161
197
217
231
203
143
267
262
190
212
186
243
237
223
181
242
211
247
212
153
253
116
209
186
179
267
180
210
189
233
177
181
117
252
155
264
194
204
111
209
244
203
171
182
267
179
188
197
201
203
223
192
188
194
170
270
220
231
217
236
190
220
208
192
226
200
223
224
237
189
146
162
148
194
168
219
207
222
245
131
226
250
230
147
206
201
201
254
236
266
189
215
168
213
171
129
225
258
180
225
214
227
164
219
235
145
213
216
141
211
235
175
243
215
93
190
207
190
181
223
217
225
155
258
188
239
212
233
254
242
207
206
213
200
198
221
204
202
200
220
253
164
211
196
190
210
232
202
222
217
224
222
199
215
221
231
229
235
121
217
215
238
268
136
203
189
207
173
214
206
258
165
193
176
182
186
215
233
242
297
230
172
236
179
214
216
233
246
261
182
228
223
175
181
201
181
205
129
128
187
153
188
217
151
297
221
181
233
221
206
184
218
130
163
162
199
210
229
225
151
241
237
163
241
206
179
226
188
230
204
191
172
218
188
233
216
216
225
269
126
243
179
163
206
199
213
189
169
193
139
150
213
198
246
185
219
197
193
199
171
210
195
186
199
223
158
188
173
194
180
155
215
222
275
218
170
258
241
222
182
214
224
167
245
187
219
208
191
188
225
235
177
207
222
235
181
181
246
195
250
187
149
212
210
247
241
217
223
210
255
229
230
212
162
220
212
191
187
266
263
161
232
205
221
210
257
158
157
175
154
200
219
152
127
194
205
233
195
161
210
261
226
167
184
186
215
120
233
206
198
203
213
206
237
138
227
224
153
179
176
145
145
186
259
182
209
215
205
235
233
181
256
189
196
188
245
215
237
186
246
214
158
182
162
221
253
248
192
279
165
180
220
200
179
195
236
159
260
231
182
192
230
193
232
170
177
176
176
236
199
156
178
237
194
166
153
228
198
203
233
233
213
208
197
196
185
111
188
176
231
211
211
153
135
191
242
222
217
163
152
203
185
165
182
192
164
259
195
218
216
164
199
200
187
100
192
226
226
261
206
225
190
179
201
172
170
151
214
173
208
257
210
184
190
218
211
215
250
198
168
231
186
221
182
183
217
251
224
203
164
212
207
211
104
121
172
254
156
213
193
160
189
195
216
208
178
129
181
195
292
204
210
209
229
216
164
185
186
180
213
217
192
181
181
145
250
151
195
172
277
190
191
219
162
197
177
190
152
191
227
225
216
238
219
174
247
132
169
255
252
224
205
167
167
192
220
136
204
197
167
184
177
213
206
175
230
191
184
202
186
192
208
237
195
184
168
214
183
230
160
229
204
182
170
208
206
194
255
175
199
145
170
174
131
231
234
228
154
230
150
120
199
223
222
179
228
171
229
214
155
177
169
181
135
170
186
211
240
171
189
157
208
210
164
237
231
192
217
216
164
198
207
188
206
206
232
237
171
197
195
139
190
217
145
188
181
153
204
194
173
237
251
234
211
277
185
180
165
167
236
193
226
110
229
181
184
227
223
285
187
211
229
186
234
176
236
156
202
218
175
239
191
141
191
208
245
272
193
209
213
195
178
193
220
238
207
161
192
174
166
164
174
136
207
249
192
170
182
193
196
183
158
189
200
204
192
234
195
199
205
208
249
219
158
211
155
248
190
252
206
192
212
191
158
222
175
178
223
207
166
213
208
230
141
228
212
232
125
241
215
202
185
209
102
164
146
197
192
198
220
209
188
177
158
240
171
260
209
241
180
141
213
181
205
228
254
212
202
234
190
213
160
187
188
209
179
236
224
205
174
202
143
213
245
185
221
179
145
205
223
174
108
189
226
215
245
217
277
257
238
151
187
241
206
180
244
83
162
205
196
249
222
188
216
166
222
200
208
165
192
140
191
220
207
165
194
220
186
194
201
183
223
231
190
147
226
225
137
213
184
238
210
222
234
195
268
230
221
183
224
203
190
206
144
217
183
220
224
211
218
209
180
216
193
208
232
194
205
249
166
219
242
219
120
213
181
221
248
204
195
273
201
237
231
145
127
154
173
205
250
213
178
226
197
187
120
207
165
204
212
156
226
218
179
174
211
188
185
183
242
224
204
225
189
204
224
186
154
247
219
222
206
218
157
207
201
211
162
201
191
135
124
143
229
187
192
180
255
201
173
171
169
210
255
235
191
199
206
257
184
176
200
160
279
171
169
240
221
239
194
164
195
204
216
213
147
265
198
181
231
179
166
149
233
253
207
228
188
223
155
183
153
168
184
217
171
186
188
236
176
249
213
134
253
196
224
197
230
265
180
196
248
162
215
159
229
179
170
193
199
208
168
220
276
218
156
216
178
243
219
251
222
238
192
190
193
128
249
219
198
191
124
212
185
193
236
196
270
248
215
211
254
161
208
164
267
182
150
226
273
226
176
207
229
158
212
239
144
184
220
224
232
194
227
225
169
229
160
213
123
207
248
162
158
229
227
211
198
264
157
224
171
162
210
209
135
168
193
262
206
235
213
192
247
180
241
207
235
230
140
162
195
228
237
183
265
216
141
134
220
142
156
187
248
177
226
185
221
176
181
257
204
215
184
153
235
141
147
229
216
242
185
155
224
221
179
288
182
223
279
192
250
198
124
167
155
225
224
178
175
207
224
200
152
187
226
214
227
178
201
141
179
125
162
222
205
226
190
182
266
198
181
159
205
172
233
179
227
177
183
197
181
228
249
134
196
167
219
187
123
167
176
213
206
241
135
199
172
188
157
164
212
113
162
140
185
272
172
117
185
219
184
225
209
247
215
185
170
108
198
227
229
256
241
197
216
152
224
260
189
194
213
232
171
188
253
205
266
128
184
147
194
166
165
165
146
253
182
220
220
199
180
198
186
218
162
231
201
196
232
117
173
225
218
162
188
204
218
164
265
191
196
209
221
266
233
91
212
216
205
229
166
177
188
219
184
149
191
183
214
227
193
147
179
197
196
199
192
187
194
168
213
181
175
209
147
200
196
191
246
190
226
237
254
201
242
190
185
233
189
176
225
206
167
184
211
275
209
152
177
238
174
198
216
197
181
194
269
144
219
187
243
200
187
154
169
212
169
193
201
228
221
223
184
202
254
191
241
241
203
183
213
227
212
160
145
176
199
201
251
211
161
217
234
150
157
197
221
205
198
192
196
198
237
250
186
233
186
151
219
236
230
163
148
226
229
229
261
173
210
218
227
209
211
175
180
266
128
242
186
229
221
252
107
196
251
171
225
227
272
190
171
225
194
189
209
213
187
167
189
223
189
154
223
190
175
202
244
198
195
204
208
225
246
157
190
205
162
241
188
249
187
202
217
198
227
196
147
168
198
176
197
237
233
172
204
183
223
215
226
82
235
183
195
180
254
232
195
155
181
119
235
281
209
153
187
195
257
232
241
139
235
223
213
166
167
192
207
208
238
268
200
205
258
213
258
189
208
186
183
255
214
224
241
201
192
216
188
202
154
185
253
207
248
217
198
222
177
228
251
208
222
222
258
240
164
206
196
207
182
205
219
235
199
131
236
212
235
198
197
177
214
151
206
208
177
175
188
205
167
163
256
203
215
216
173
173
161
217
224
227
239
164
185
92
259
203
156
143
193
255
184
230
169
140
200
200
205
201
183
131
220
203
242
227
137
226
176
260
138
165
188
227
154
171
182
202
236
239
188
226
175
228
142
127
193
214
206
154
228
195
189
154
146
173
202
215
209
183
171
156
243
254
206
176
287
184
205
183
208
133
241
212
188
164
178
257
216
235
238
195
171
255
192
127
204
204
187
135
245
164
182
215
240
213
203
213
157
169
185
207
150
211
150
176
153
196
201
261
141
224
236
181
235
261
188
192
259
167
225
184
219
243
209
205
188
182
123
224
149
189
196
178
225
217
206
237
174
205
221
174
220
155
207
218
172
219
208
219
242
142
198
216
204
225
225
184
223
238
223
189
178
178
255
197
209
172
190
185
150
174
123
201
170
141
204
208
255
212
196
233
199
255
203
188
210
247
175
136
239
177
135
262
205
121
245
183
132
227
184
169
228
152
237
235
209
125
206
173
178
226
189
160
182
187
231
238
239
156
182
191
269
215
210
249
277
197
263
217
143
230
210
206
165
184
215
186
226
231
239
196
208
199
212
238
219
211
175
208
150
182
176
177
186
175
174
152
239
211
167
164
185
172
268
232
214
255
237
173
225
172
180
234
157
212
193
246
175
198
214
250
177
211
214
184
247
214
198
200
218
251
160
198
189
171
152
153
244
194
141
220
121
151
210
180
243
248
191
257
207
200
209
228
203
219
187
212
187
218
236
182
185
199
178
216
150
236
189
196
248
191
262
209
206
167
230
235
196
192
158
227
220
136
183
205
173
208
227
218
141
190
158
188
148
196
230
209
157
277
214
200
226
236
238
186
262
129
242
187
142
221
164
157
160
157
136
196
200
178
204
190
215
188
163
201
179
156
175
281
254
161
163
211
234
272
190
155
167
197
222
155
180
205
201
219
210
178
148
239
230
178
178
257
234
243
186
185
194
291
152
178
132
209
228
266
190
232
212
187
170
126
150
291
175
212
250
217
214
244
178
187
155
194
156
261
119
205
184
172
238
188
210
255
238
212
241
226
219
268
163
207
206
186
210
230
188
228
175
223
181
197
161
248
181
180
200
225
229
166
203
221
240
226
258
210
217
191
200
197
232
273
232
209
144
236
146
155
249
134
211
133
140
232
226
153
243
224
214
238
241
185
235
163
211
201
186
259
195
253
204
213
226
220
181
246
255
128
235
164
208
147
171
255
211
200
220
136
229
269
178
240
231
156
220
207
228
211
202
200
212
221
196
199
185
216
194
202
193
212
233
205
119
177
227
207
199
158
154
171
179
187
207
150
234
222
203
188
224
208
195
225
281
190
244
183
154
239
212
240
240
179
192
204
211
226
194
199
195
161
192
209
207
244
225
193
173
180
207
227
184
219
240
181
203
179
184
100
171
210
162
195
187
198
221
158
175
183
221
253
219
235
247
279
213
246
132
183
173
189
176
138
186
226
208
191
206
237
163
182
227
160
186
194
165
183
191
159
207
250
195
175
172
183
182
270
256
207
150
190
130
212
192
181
185
162
176
256
196
263
159
186
228
277
206
223
183
197
192
234
183
183
234
164
167
247
199
220
204
141
220
179
276
192
175
243
140
228
226
147
223
173
217
157
222
164
213
221
218
249
247
178
209
257
201
226
146
207
172
248
201
207
214
163
161
199
216
207
131
175
265
214
256
195
230
262
213
175
249
149
228
228
209
179
225
224
240
155
181
205
214
235
156
210
164
237
247
171
109
247
266
224
172
217
210
192
207
123
131
197
180
253
178
170
214
178
196
219
252
204
173
229
174
174
216
267
219
222
216
119
182
160
162
217
171
250
185
138
301
214
168
180
163
152
219
227
185
241
195
217
193
138
207
166
172
207
215
167
226
249
163
193
176
214
165
231
245
178
180
212
214
273
190
193
213
247
187
243
235
199
215
175
211
210
194
211
217
180
190
196
221
192
196
176
255
190
110
230
205
176
202
230
178
168
221
245
194
164
228
141
240
254
237
198
208
167
227
172
237
221
213
218
197
177
224
220
173
234
207
242
232
191
198
158
245
228
185
248
150
248
173
259
165
212
163
135
194
117
160
221
163
217
180
184
193
187
250
212
154
239
172
218
181
163
240
190
160
158
134
231
274
214
194
256
145
167
175
159
191
190
193
144
195
204
246
225
144
232
221
216
157
227
216
168
75
132
168
261
226
247
166
204
205
181
228
200
226
180
235
200
176
186
231
222
185
195
201
226
193
179
202
165
257
260
179
113
195
234
163
244
169
195
234
233
179
191
215
233
223
253
179
216
198
186
233
213
262
216
211
172
192
208
186
177
118
172
265
189
198
207
211
268
263
216
147
225
224
251
173
141
163
257
208
213
236
229
205
174
251
164
167
224
148
206
213
222
163
257
231
229
245
225
229
190
216
143
189
148
216
250
247
146
169
236
241
190
210
196
240
201
244
158
251
193
214
208
194
166
216
243
200
193
232
220
134
117
180
182
200
179
253
166
214
216
174
169
152
169
184
187
170
270
245
201
202
200
146
172
191
253
267
226
208
121
190
227
224
214
228
217
183
184
131
128
171
87
204
195
241
186
246
226
205
221
132
257
235
188
248
122
178
198
170
128
229
180
231
240
178
191
249
253
205
137
236
180
234
224
199
137
209
210
232
229
201
187
166
211
184
226
215
192
201
244
143
169
137
253
140
224
195
238
160
236
159
209
158
203
143
166
174
206
208
204
253
251
162
157
243
242
244
228
164
143
239
217
240
179
284
199
203
190
205
201
213
165
129
163
202
247
273
217
268
215
166
228
198
216
215
182
140
129
185
235
252
218
215
187
198
245
218
217
169
230
197
193
154
225
184
166
100
188
169
198
219
229
216
270
223
170
202
212
162
225
176
210
177
193
216
185
189
221
208
169
196
198
225
185
196
150
235
284
189
168
215
183
200
248
217
226
208
193
243
210
244
195
251
193
195
209
152
222
180
253
231
194
201
217
174
176
169
201
201
203
186
201
232
232
210
226
153
239
277
190
217
179
148
183
192
230
175
189
203
169
184
197
198
243
145
214
202
150
214
237
251
196
217
223
198
199
222
268
207
200
277
165
218
165
187
222
257
149
273
263
117
209
191
186
147
184
183
134
165
161
222
180
254
218
187
209
210
206
152
217
182
194
228
215
142
163
182
208
201
192
209
224
186
232
202
240
162
220
262
202
145
241
127
171
175
177
257
271
216
185
217
218
208
164
166
219
223
226
176
209
186
224
194
192
185
220
161
223
197
219
188
301
198
219
190
197
152
229
227
188
197
237
174
261
143
268
165
197
201
241
270
245
180
176
235
200
142
254
136
159
242
187
213
206
206
208
233
241
186
228
165
179
199
198
210
192
162
128
230
233
181
239
213
138
212
195
186
130
206
200
201
217
161
220
214
183
182
217
158
173
266
196
207
243
248
176
190
201
234
134
212
155
212
217
182
209
157
212
167
184
216
177
244
231
150
237
225
195
193
127
155
228
226
192
218
238
182
176
215
204
246
249
201
229
175
190
237
255
149
211
226
178
200
162
115
187
132
206
167
184
187
150
163
204
214
188
148
154
224
173
236
145
183
231
215
183
205
199
192
199
179
242
181
201
224
172
186
189
179
171
168
192
131
204
163
259
179
224
235
172
193
204
170
178
175
260
222
166
227
214
149
159
196
251
214
162
259
195
237
189
193
201
201
136
181
148
184
207
213
198
204
261
173
223
223
167
172
201
153
253
122
236
242
181
230
216
194
228
184
210
158
183
251
180
226
175
187
213
173
196
209
138
164
219
175
221
193
252
161
189
231
186
177
196
238
220
182
181
166
196
221
187
186
256
209
209
134
270
190
206
169
123
174
225
238
175
155
272
202
230
157
162
216
192
255
155
207
219
243
151
184
188
118
225
238
202
215
187
243
245
251
252
228
210
248
229
163
164
230
166
275
216
197
238
196
188
248
257
225
275
162
178
190
179
183
156
137
305
184
226
201
176
218
231
222
130
237
212
171
193
212
172
152
200
185
211
176
174
250
188
228
225
202
217
184
242
222
211
224
139
199
203
155
227
238
151
153
207
145
145
191
150
248
234
168
244
137
246
186
160
198
217
206
235
149
170
244
207
233
143
171
161
162
247
182
143
175
192
179
222
186
196
181
150
173
178
220
232
251
188
213
244
201
235
160
197
203
205
153
174
197
187
259
147
180
225
166
128
187
174
177
180
189
162
232
214
148
209
179
122
212
192
224
164
246
223
147
201
194
188
211
243
207
234
169
239
169
214
159
149
240
109
235
158
203
209
205
172
223
169
203
183
176
172
195
153
189
225
198
199
238
236
207
268
207
214
224
178
121
227
218
217
228
229
194
209
247
160
216
227
212
208
189
209
159
215
202
191
257
216
213
185
245
186
191
234
184
183
227
192
190
255
201
200
205
264
186
203
188
226
159
227
212
185
221
207
197
231
197
213
147
288
250
157
251
187
129
168
226
213
233
262
165
212
247
243
240
211
153
182
252
153
256
195
226
178
134
194
206
192
244
209
202
230
177
150
196
138
261
235
202
211
203
220
188
215
230
197
163
155
216
159
235
187
255
195
168
152
211
203
156
207
159
184
206
200
182
198
177
247
200
251
227
219
236
211
210
127
193
214
260
180
124
157
183
217
251
167
202
235
219
241
221
170
156
182
224
134
181
212
187
267
230
210
223
196
269
190
214
257
222
193
219
274
174
206
225
167
204
208
177
235
229
195
199
173
221
184
212
238
183
227
225
187
185
161
255
160
139
179
218
200
179
199
172
213
203
140
210
219
178
224
150
131
167
157
154
236
167
193
222
186
272
220
145
240
146
161
205
197
197
166
263
229
240
233
166
194
219
231
203
178
186
246
159
240
122
188
168
217
252
214
202
220
184
262
211
250
138
222
224
222
186
170
322
168
175
224
186
239
147
211
182
253
197
156
197
176
131
201
186
166
190
222
199
253
201
158
174
181
230
105
135
189
187
205
181
190
197
177
189
172
200
207
143
233
187
193
233
155
199
193
167
141
196
273
205
206
221
214
161
208
187
133
174
207
186
264
200
175
236
240
148
180
227
252
193
159
243
200
139
186
224
225
232
193
216
213
276
294
197
250
189
118
168
172
214
212
227
181
211
261
174
157
135
207
199
214
211
190
162
224
224
124
126
232
273
217
225
193
166
227
172
158
207
213
193
212
215
184
184
234
210
247
261
239
179
196
164
230
206
227
222
225
188
233
223
227
261
183
191
223
188
245
171
182
278
236
230
192
185
211
175
262
207
112
161
224
197
220
173
257
196
189
234
169
243
188
217
144
202
195
157
182
210
184
225
146
175
159
188
191
177
219
199
157
215
240
210
198
196
198
219
177
267
171
178
221
214
255
208
260
170
190
148
201
208
234
253
150
214
177
162
169
194
272
233
196
221
216
201
147
211
188
254
210
196
241
131
226
211
197
196
213
278
207
225
107
148
176
205
122
174
117
215
169
193
275
239
149
180
306
185
191
258
257
187
198
178
271
201
258
227
133
193
192
273
196
165
206
248
278
150
217
220
203
202
185
169
171
211
223
207
177
268
213
197
177
196
230
186
180
212
162
216
168
244
204
158
237
278
179
180
170
222
226
251
107
191
183
216
196
264
209
178
249
200
245
196
218
166
227
209
161
198
143
156
212
189
277
196
200
228
198
202
189
122
201
141
244
206
217
180
163
235
183
234
181
187
146
127
212
193
150
234
187
244
152
181
252
184
185
255
210
148
228
113
236
193
244
181
237
197
185
149
235
199
175
245
116
157
247
260
168
179
196
170
238
197
227
186
206
141
150
242
211
213
199
176
204
231
194
234
255
211
144
192
234
198
157
248
213
225
156
240
174
133
138
182
160
220
197
200
214
185
187
207
243
223
169
163
156
170
170
173
219
205
223
215
170
191
209
157
189
193
207
256
291
151
153
286
216
180
192
155
143
144
210
278
164
200
122
255
283
191
162
134
229
210
230
200
180
177
266
171
184
217
230
225
196
187
193
188
180
134
234
176
198
156
212
221
134
228
203
192
195
201
175
153
212
192
203
177
194
180
182
190
215
251
223
206
179
192
200
234
210
243
170
212
238
222
269
199
203
196
188
199
150
182
159
207
189
185
223
294
183
203
206
181
217
232
214
290
210
232
150
184
130
216
142
160
207
212
202
125
174
157
197
205
193
148
190
210
193
222
253
208
246
181
242
202
207
261
208
298
174
197
164
274
198
275
226
232
166
224
210
229
245
146
142
241
247
207
231
191
188
196
218
200
204
149
239
233
185
229
169
129
158
174
166
294
262
209
228
232
277
154
132
209
177
190
218
198
206
192
200
193
284
179
231
251
262
202
182
208
206
200
190
143
231
191
194
173
198
172
202
260
111
189
207
178
145
211
179
237
154
217
199
188
172
161
227
184
188
233
255
231
195
225
204
224
224
243
186
190
260
186
235
164
208
175
208
222
182
151
208
229
207
226
196
197
132
203
217
198
226
187
183
236
200
185
245
168
227
232
201
192
220
182
156
209
226
186
197
200
214
189
207
202
242
177
175
192
220
138
214
234
276
216
198
249
144
274
252
180
172
243
232
226
168
185
158
111
229
171
231
152
191
250
219
209
191
184
184
208
209
176
174
213
256
271
224
170
172
264
268
239
176
208
183
159
191
213
181
247
183
201
210
176
229
175
201
245
143
162
187
173
189
210
141
228
242
194
181
215
137
161
175
242
165
198
141
184
200
161
258
222
165
240
203
216
202
212
226
160
228
208
253
218
253
175
184
216
221
184
160
214
169
234
170
211
195
213
200
216
170
133
244
224
212
212
183
218
151
214
222
161
155
203
210
180
170
149
254
227
133
163
200
150
155
204
197
147
254
187
233
205
202
185
245
211
229
179
142
227
163
256
192
196
181
214
248
243
287
231
145
169
217
238
135
204
185
244
167
260
230
248
205
134
223
174
215
225
200
226
208
211
222
231
231
195
145
215
205
197
176
228
262
214
222
167
122
156
177
219
181
155
204
209
229
183
246
209
190
212
244
194
233
176
198
203
204
240
192
229
204
172
190
201
165
168
221
212
208
229
155
255
209
208
159
200
254
181
167
266
231
158
185
181
187
233
227
210
210
197
170
237
180
172
216
133
185
247
144
211
181
211
237
217
210
169
195
195
171
225
161
240
220
186
173
235
243
225
130
244
213
219
221
260
175
189
226
186
166
154
173
183
208
238
177
178
226
277
183
235
156
256
182
151
154
252
225
199
180
177
179
190
213
261
186
152
185
210
163
159
223
191
172
251
250
216
253
251
260
190
204
219
226
160
219
204
218
238
224
159
170
172
183
159
195
212
176
241
147
152
220
191
220
188
232
264
227
207
201
114
156
212
242
162
183
183
236
149
201
219
216
242
254
221
200
221
156
203
213
205
232
197
220
240
111
177
203
206
203
172
186
235
164
189
240
134
206
187
177
210
204
165
200
213
195
267
187
220
247
184
213
179
237
154
194
182
197
239
133
182
138
187
200
148
247
197
227
142
212
237
151
185
216
216
240
164
258
166
189
199
237
221
169
255
185
165
180
191
202
220
228
171
231
171
190
164
225
224
208
228
182
251
172
194
133
231
215
245
180
160
184
241
264
246
183
257
240
212
177
255
179
216
214
191
197
158
166
224
224
235
179
228
242
213
299
228
175
247
202
186
283
210
232
192
204
227
233
198
253
157
178
213
236
189
208
189
212
149
185
256
186
220
193
174
232
222
241
162
188
174
186
208
227
164
208
209
208
241
206
199
145
164
174
306
224
155
248
204
234
176
195
192
192
261
239
216
245
115
226
183
181
138
211
214
168
181
192
173
218
160
159
138
184
244
175
113
217
167
153
148
225
237
199
188
164
180
230
202
204
134
238
223
232
218
189
245
215
181
159
256
210
205
190
258
229
205
192
167
216
233
206
203
248
253
181
174
214
221
189
178
233
218
245
167
170
180
202
232
219
258
228
164
250
144
136
185
248
212
161
235
163
192
255
259
282
203
251
204
182
161
227
199
158
206
188
255
208
220
214
212
258
211
209
169
157
201
224
232
170
265
224
192
227
218
198
224
218
167
201
208
227
219
201
196
229
232
215
179
201
176
117
154
190
230
155
182
209
201
225
200
197
195
209
193
235
213
179
167
190
204
137
212
225
193
204
235
198
240
213
180
214
201
246
162
231
195
122
159
232
231
212
175
217
228
245
187
164
166
193
201
263
194
155
246
204
218
165
170
126
136
211
164
200
173
240
166
166
122
188
179
193
133
236
245
301
153
207
176
195
180
259
245
209
140
170
229
169
218
207
181
196
233
172
151
139
182
166
179
172
177
207
174
174
161
154
176
196
224
164
185
201
189
189
211
226
236
167
146
182
223
226
187
150
254
181
126
264
202
211
283
179
198
134
175
235
210
166
175
177
158
242
151
236
219
218
231
177
235
176
244
205
261
173
209
139
184
222
218
173
241
244
248
199
253
238
212
215
217
204
177
118
191
230
198
226
223
233
219
234
160
209
201
191
202
186
232
207
109
189
122
212
219
213
199
188
177
242
226
225
174
220
180
229
168
214
155
207
234
217
204
191
199
181
237
224
247
210
209
131
189
158
285
184
204
238
201
174
265
144
155
214
180
199
177
164
230
197
175
201
187
233
175
174
168
221
223
161
187
173
216
219
140
188
252
222
218
209
245
175
124
191
175
244
283
162
196
245
149
205
212
174
208
219
252
217
204
176
200
259
173
240
280
217
207
203
200
187
194
201
180
187
259
233
170
220
236
226
159
246
211
232
268
244
195
217
212
191
241
213
185
135
252
159
202
246
211
206
200
173
235
170
129
180
192
130
144
145
220
167
277
205
197
200
179
261
194
220
165
261
192
184
229
208
193
227
225
159
212
196
229
176
203
182
223
216
166
218
156
269
211
229
229
238
177
218
189
216
186
266
270
155
236
233
182
216
197
170
226
173
243
234
189
227
206
212
219
220
160
212
242
186
165
233
288
160
215
251
245
208
225
196
214
215
177
180
185
228
240
221
266
194
159
254
229
228
175
176
147
198
189
191
193
211
230
220
178
191
214
148
175
269
197
290
160
198
224
183
181
185
124
192
151
225
202
195
191
259
182
246
230
180
216
174
240
180
133
183
169
275
237
261
223
158
184
238
223
185
176
155
187
210
181
173
251
152
242
270
254
176
175
165
227
248
184
206
231
191
201
171
222
237
213
121
142
249
214
167
228
183
208
183
237
171
130
213
230
174
214
254
163
222
235
225
219
250
204
183
193
176
237
222
193
220
180
201
227
212
231
224
213
178
173
199
163
132
233
194
176
189
200
177
184
171
207
241
209
258
159
265
177
183
166
212
176
228
188
202
218
211
231
268
137
198
181
198
216
263
278
218
161
205
156
215
254
191
171
175
192
230
198
173
225
154
229
232
190
160
194
212
206
185
247
186
122
203
201
188
243
172
195
168
153
237
237
129
211
131
244
242
210
134
201
189
170
205
228
197
205
208
194
191
193
188
219
244
150
154
157
158
221
276
239
238
197
217
185
163
117
178
205
185
215
231
210
252
225
174
166
181
260
203
226
255
242
159
180
244
182
184
179
218
185
121
165
232
238
241
194
205
197
216
188
232
194
215
246
202
194
229
237
213
144
236
184
200
222
191
170
166
180
216
165
201
214
183
251
148
231
187
207
203
233
207
194
191
177
179
228
246
197
220
196
224
219
279
268
212
182
233
226
279
241
181
174
200
235
226
236
221
198
240
203
244
191
217
205
248
220
186
230
242
204
192
186
180
166
226
207
240
201
221
247
254
186
183
226
148
211
216
231
254
210
181
161
187
212
188
225
193
198
218
189
198
243
173
215
141
144
184
200
176
191
195
232
188
210
220
234
143
164
190
230
181
173
253
235
174
145
228
179
215
229
159
161
232
183
204
234
233
196
185
188
252
240
223
249
151
243
266
213
226
248
170
221
272
171
182
255
234
229
149
246
165
190
186
237
178
218
180
199
234
180
249
152
203
181
180
154
208
179
246
234
188
236
257
145
171
178
173
213
194
188
179
166
218
205
234
154
227
181
129
182
222
145
179
169
169
193
175
213
224
209
245
192
229
173
239
193
196
220
192
147
159
247
228
156
231
146
206
105
201
132
220
234
150
215
191
156
243
177
244
171
196
241
247
236
199
176
193
249
239
188
229
262
212
157
202
204
164
243
187
195
254
209
210
188
152
242
216
204
203
182
258
168
225
173
209
229
255
198
213
159
136
207
195
171
197
210
228
135
146
185
226
182
222
210
199
207
267
186
254
256
113
192
236
202
236
258
205
189
233
261
213
211
183
184
216
211
207
202
229
223
188
216
186
173
144
211
258
221
243
215
204
160
244
210
168
234
160
188
240
226
178
171
210
218
230
227
200
227
209
177
179
227
211
192
213
187
212
267
241
226
182
214
186
196
157
260
202
184
237
210
200
242
208
192
188
101
185
179
193
236
201
191
156
173
177
200
213
226
172
226
130
179
228
224
132
152
231
221
175
221
209
164
194
275
177
149
175
228
222
174
240
234
160
184
198
254
174
166
217
256
214
235
233
205
207
215
247
185
175
208
152
182
215
181
283
135
222
195
230
247
202
218
162
170
245
219
231
151
211
268
158
165
186
243
145
154
127
195
245
219
160
243
163
223
207
184
196
188
237
173
178
282
215
169
207
234
113
167
261
288
123
181
152
171
169
227
149
196
225
195
140
229
215
196
186
185
165
248
198
145
149
142
193
189
196
192
151
216
209
227
242
191
198
179
233
214
221
238
128
201
195
122
201
255
199
217
203
188
221
267
203
220
181
195
205
190
199
214
199
252
199
251
230
156
210
201
228
164
225
232
228
234
254
248
189
126
196
231
198
208
230
137
206
228
259
209
242
161
166
219
242
187
226
237
197
205
193
218
126
201
147
233
193
138
232
213
204
184
238
203
194
224
261
227
224
222
256
217
188
107
229
235
129
172
226
226
225
216
162
237
137
181
152
253
184
258
175
212
168
162
182
250
143
173
235
145
256
178
226
157
236
189
221
208
119
173
267
250
174
219
212
220
153
179
210
212
214
257
236
240
261
212
202
144
215
257
183
146
173
236
268
168
174
226
243
255
225
262
150
186
224
224
185
244
195
253
158
244
171
205
200
115
159
238
200
199
213
194
215
216
179
134
180
181
226
182
146
200
200
222
141
154
226
233
190
171
195
191
236
214
170
146
246
156
238
226
149
210
262
187
129
147
239
207
165
212
211
172
145
211
237
289
175
212
218
191
167
168
175
172
243
227
204
185
220
188
171
216
211
151
211
219
215
276
215
157
117
206
193
157
152
176
222
165
184
211
99
224
232
204
162
230
222
213
246
191
211
195
170
193
201
230
177
237
206
177
210
175
119
150
119
224
205
236
192
240
248
261
229
225
200
180
227
172
244
159
209
230
189
180
211
215
192
212
226
202
204
180
223
196
157
231
209
197
215
192
206
251
168
297
252
196
181
212
264
221
194
182
197
233
157
224
262
145
152
153
182
225
207
197
209
246
145
246
172
200
186
197
263
226
215
174
239
235
196
228
215
216
236
160
190
159
192
209
212
206
199
172
214
199
182
206
256
246
196
213
196
155
235
215
183
163
172
257
151
218
197
150
222
197
253
218
188
175
217
245
260
158
225
185
207
243
195
212
201
204
210
205
212
210
232
219
269
181
270
197
158
235
196
266
251
230
204
187
196
202
253
124
203
245
213
252
221
167
248
215
159
234
274
225
188
215
182
239
247
204
194
240
250
162
207
241
206
208
241
261
194
225
187
236
214
216
244
241
176
263
218
158
186
203
174
206
203
176
198
201
227
201
190
118
217
140
157
91
203
206
152
177
236
215
199
204
170
242
269
231
187
227
206
149
195
112
173
193
268
188
147
202
205
175
195
157
183
205
195
215
135
199
151
215
207
226
249
199
185
196
262
231
114
163
294
242
163
98
162
195
165
221
166
215
102
276
178
194
238
141
230
194
205
228
250
132
163
145
155
244
226
166
220
169
226
267
194
219
255
218
204
130
212
164
170
238
191
133
149
197
204
171
152
232
207
205
220
209
208
191
235
206
225
150
166
169
205
203
160
220
125
173
206
200
172
186
201
238
112
215
109
159
219
224
156
195
205
181
270
187
203
190
228
205
232
237
239
209
269
178
273
261
233
226
177
139
167
178
220
155
212
165
268
187
245
204
124
149
151
203
160
201
204
231
209
189
198
159
179
200
155
181
190
220
158
206
211
164
158
170
196
209
170
176
268
141
174
203
232
169
192
197
201
192
243
169
193
172
216
263
191
190
172
201
150
252
253
222
169
217
207
226
222
158
213
236
255
196
246
209
165
220
208
223
190
142
184
218
243
231
260
217
209
201
156
242
216
224
204
167
188
173
230
171
170
135
206
235
233
268
205
189
165
194
255
218
250
217
211
192
228
221
200
260
207
233
179
187
200
229
263
225
179
176
222
203
187
228
229
187
208
265
143
242
188
196
178
246
138
186
151
101
196
177
214
207
130
218
178
216
204
231
184
172
184
172
130
212
208
273
152
214
156
208
190
232
248
171
199
196
226
213
210
222
213
149
229
201
183
210
211
211
265
177
225
173
167
221
184
184
185
168
215
186
176
192
163
200
187
191
202
210
228
173
172
140
172
180
185
207
214
221
197
193
211
270
155
204
265
211
240
179
207
211
139
235
190
181
199
258
230
227
218
153
271
220
217
237
260
162
227
143
190
231
174
233
199
242
200
215
143
200
221
249
194
242
193
185
245
240
205
216
208
238
246
227
268
222
195
206
188
186
119
210
192
245
162
211
222
184
231
206
211
229
213
196
236
219
186
155
154
204
226
148
233
228
132
211
172
189
181
257
173
230
235
150
200
227
231
226
226
172
183
227
237
210
142
157
245
226
185
218
209
208
150
186
167
199
202
213
189
217
162
152
223
212
260
225
203
214
168
135
221
191
218
223
124
228
189
257
217
179
211
218
192
240
215
215
155
222
211
245
191
230
160
255
212
191
139
123
183
209
176
210
214
157
210
234
187
194
255
105
189
153
254
203
201
227
169
196
227
193
203
188
188
215
223
251
138
242
217
180
212
231
272
149
161
215
216
189
200
150
199
248
190
212
245
279
183
232
211
158
220
241
177
160
152
209
263
162
142
171
169
131
175
186
178
276
201
220
199
182
204
173
201
200
168
217
183
209
204
178
236
259
258
205
251
242
196
213
235
263
197
174
203
222
195
183
255
177
192
211
216
250
217
116
198
137
190
178
169
187
235
143
151
181
194
250
233
288
237
193
198
202
195
207
219
146
147
220
213
202
173
237
225
158
204
247
156
108
262
168
212
198
245
206
165
214
226
194
229
149
248
242
150
177
237
201
193
246
161
144
199
192
259
187
196
231
179
222
194
127
196
203
219
175
165
234
126
241
128
172
228
185
241
206
196
251
201
202
261
230
206
174
197
176
185
264
207
185
226
218
132
181
137
184
144
208
161
188
131
210
207
219
211
221
190
196
244
217
218
245
245
150
141
141
212
202
180
246
219
143
209
175
197
219
174
190
193
185
171
167
148
205
222
239
221
185
240
225
152
222
194
207
215
189
209
252
217
171
203
174
189
141
232
226
227
201
193
238
255
167
188
208
204
178
205
188
269
203
204
243
207
215
177
216
228
187
191
210
112
248
256
177
229
200
192
209
203
166
170
223
172
219
248
224
185
140
265
171
214
177
285
184
224
172
142
168
180
178
209
221
203
212
138
203
207
185
207
227
198
255
156
200
161
242
254
150
179
219
186
182
198
170
158
223
194
211
218
184
187
132
235
248
192
163
159
194
200
199
155
102
172
150
209
198
222
249
158
188
166
216
250
183
211
160
162
145
139
185
171
177
273
153
245
156
180
188
187
168
178
243
179
210
183
178
196
176
222
161
203
226
262
236
222
194
214
227
216
214
224
185
199
194
214
150
217
213
143
112
210
223
131
208
220
132
197
252
258
177
195
162
235
135
226
160
154
162
227
232
206
215
224
243
214
258
190
311
194
247
235
256
196
181
181
183
202
124
237
179
170
179
206
145
222
227
180
231
193
160
165
216
184
203
209
233
224
162
249
218
225
220
230
178
185
159
263
201
188
229
257
174
182
222
186
156
214
234
253
232
167
191
239
189
207
219
267
164
223
256
212
173
271
217
206
183
202
188
205
177
156
198
153
254
183
193
179
196
234
196
243
171
183
163
213
149
189
241
226
266
215
174
199
182
182
153
209
214
242
203
206
211
196
200
196
235
142
116
117
189
266
196
163
199
237
178
203
115
131
189
259
262
211
224
241
191
184
180
225
294
151
208
238
207
252
236
188
156
178
194
211
191
206
242
182
203
204
195
237
231
245
202
211
215
191
128
117
167
227
165
223
154
177
181
204
209
189
231
224
231
149
229
273
261
221
186
190
133
197
204
186
192
197
206
186
206
213
149
219
188
179
155
145
202
229
150
239
183
217
212
215
178
239
224
220
225
248
244
225
167
183
226
229
149
184
226
231
221
223
245
219
191
203
157
204
249
144
180
240
199
196
238
230
149
184
154
169
216
148
170
195
165
208
176
191
257
238
194
196
262
164
276
207
170
225
242
216
174
217
215
263
201
177
189
259
221
196
117
183
178
145
186
147
160
247
235
208
267
243
195
200
230
211
272
211
185
240
225
157
291
187
149
253
212
211
186
208
171
182
191
178
184
147
176
158
250
174
210
183
168
189
184
212
202
162
205
273
156
195
177
198
176
258
185
146
225
261
162
195
175
152
202
168
167
194
220
149
231
137
228
193
144
232
246
264
204
165
244
128
178
188
195
242
144
215
216
215
233
202
225
170
239
234
227
157
157
225
191
241
197
152
162
221
123
202
233
207
169
182
135
145
238
226
193
225
152
187
257
243
127
221
200
170
199
161
208
225
168
242
212
175
190
216
178
148
225
211
180
221
157
175
263
217
250
186
222
192
214
270
176
170
161
184
190
179
212
228
191
200
223
205
232
155
229
198
162
192
242
213
301
191
228
228
159
207
230
158
178
173
216
186
179
255
207
257
152
172
199
130
201
173
189
144
227
207
156
246
210
233
252
224
227
211
218
164
257
177
136
195
194
220
237
270
186
207
266
244
178
157
198
234
166
159
231
175
224
271
219
201
210
273
237
196
185
210
193
152
236
160
217
166
150
195
162
242
184
189
229
160
176
105
225
212
198
244
237
222
258
225
267
221
177
245
146
227
250
207
214
203
167
206
262
244
168
203
204
244
236
190
107
178
153
190
234
164
201
214
164
180
156
197
217
177
194
205
213
159
225
192
146
192
166
225
241
198
229
167
137
213
201
212
219
251
211
219
185
235
249
251
200
242
229
265
167
232
171
171
216
222
192
267
174
167
211
173
225
152
219
192
270
155
236
241
222
199
164
208
279
196
167
228
109
260
179
226
137
212
193
253
211
200
183
228
182
172
266
164
207
194
284
188
164
207
192
245
194
240
220
234
174
229
236
198
155
274
106
166
165
250
178
137
205
223
204
240
142
175
230
145
222
239
194
227
165
229
245
137
177
182
200
213
190
200
195
230
191
188
190
154
150
230
208
214
194
183
191
230
164
153
146
258
174
270
191
169
184
182
154
191
160
197
177
229
213
164
197
167
185
223
202
120
173
191
170
231
209
230
185
170
172
201
192
218
149
258
216
237
222
169
192
212
225
197
220
154
153
243
185
161
160
209
182
191
240
184
167
208
202
213
208
163
264
197
183
195
166
179
232
226
173
164
193
172
216
221
209
212
172
178
224
209
260
236
217
245
210
203
203
115
201
224
192
230
252
218
212
185
230
170
218
172
228
239
222
186
114
193
194
213
216
137
236
189
213
215
229
181
189
273
195
169
197
151
255
194
198
239
196
176
218
211
201
200
180
185
201
203
176
202
232
176
183
151
215
161
193
229
95
165
206
128
215
201
224
223
209
249
209
220
226
237
204
190
234
239
200
252
238
254
170
196
151
184
205
177
233
178
227
261
177
213
190
168
192
172
155
145
149
199
148
232
191
162
224
219
213
177
228
234
231
255
176
194
169
232
137
182
216
198
198
176
213
207
235
225
236
223
213
235
163
208
234
257
160
232
217
211
122
160
153
211
215
191
214
186
166
210
164
241
240
188
204
248
207
242
127
186
276
206
219
246
178
166
177
201
180
182
168
208
251
215
232
206
182
215
240
154
206
196
194
163
191
247
247
196
169
249
225
157
171
207
226
164
173
227
140
196
182
244
264
244
214
249
212
232
160
149
159
189
176
299
200
185
178
174
245
199
196
240
181
147
183
203
177
132
205
159
202
230
218
226
231
212
225
206
231
170
198
252
190
179
240
207
173
182
186
236
199
206
246
192
222
160
215
197
219
140
186
179
258
157
176
220
111
209
183
196
191
216
251
165
196
153
212
192
211
170
147
178
227
143
216
204
194
205
180
191
221
227
180
185
241
241
204
191
152
202
190
207
183
198
181
241
181
213
173
210
254
223
188
184
220
201
178
239
195
217
203
182
221
193
159
108
209
166
241
162
201
143
169
227
246
178
220
213
124
198
183
190
199
191
227
159
170
159
233
153
216
175
167
143
240
214
218
197
234
210
187
181
159
268
199
214
168
158
160
218
146
145
206
188
233
158
204
188
233
171
219
159
176
120
249
189
174
245
170
200
210
238
110
205
268
155
204
203
192
216
202
71
118
228
185
190
200
236
160
162
200
191
197
206
261
217
189
163
248
204
244
224
167
215
221
175
159
265
243
205
190
230
202
123
201
218
193
209
174
181
186
232
194
180
213
276
209
215
199
219
200
205
184
213
162
216
219
145
243
189
218
218
262
203
277
205
228
160
241
258
201
238
195
183
215
146
198
216
267
199
165
222
181
163
183
228
203
268
206
140
233
186
212
185
212
179
227
198
206
145
171
153
229
196
249
211
264
171
246
190
143
250
180
231
151
235
193
204
186
190
204
171
214
191
217
169
270
237
163
245
195
228
224
244
127
208
199
239
133
149
212
196
180
237
233
188
219
194
233
247
185
181
181
153
164
176
200
210
165
221
160
204
213
173
231
179
209
161
178
248
136
135
183
192
203
208
143
236
192
191
241
176
238
171
179
215
253
184
176
205
219
219
170
236
170
222
127
255
207
162
214
187
232
225
178
221
264
249
169
187
207
237
208
184
188
185
181
145
220
200
109
212
204
213
113
235
212
164
174
215
188
204
168
203
154
162
139
213
201
213
202
144
241
206
188
147
183
201
247
208
190
209
214
178
191
237
210
225
205
195
240
233
200
226
189
257
206
161
190
129
291
138
248
165
171
230
199
242
202
178
175
261
140
220
169
202
132
182
192
251
243
247
208
210
222
241
196
194
201
192
155
202
211
234
149
182
214
204
168
243
248
141
258
221
168
169
133
241
197
164
244
163
219
220
180
237
197
238
229
135
196
208
221
174
181
191
196
212
182
243
255
168
155
203
241
205
213
200
189
216
190
221
152
269
249
169
190
252
232
209
214
186
209
181
242
241
165
190
246
183
188
177
198
204
139
151
152
146
117
196
204
190
199
126
198
185
249
200
217
179
208
242
200
193
208
236
135
240
161
204
226
274
232
163
241
109
236
190
232
220
200
187
240
145
165
287
201
249
200
176
184
158
192
157
217
164
187
203
148
212
152
215
188
264
106
194
190
174
225
199
242
194
213
259
203
235
163
205
183
165
250
166
229
202
237
214
222
197
218
216
196
167
183
122
174
162
238
212
206
133
235
195
224
175
103
219
206
217
276
198
208
209
234
234
200
214
264
224
188
191
198
208
248
257
165
218
235
225
217
190
187
200
189
208
249
176
128
182
223
206
192
227
179
166
195
209
256
194
176
232
189
182
207
253
196
134
163
235
213
177
154
188
234
238
225
205
216
243
212
220
164
166
172
212
229
175
233
230
181
183
113
169
213
222
190
242
196
226
240
224
198
183
185
239
164
158
243
214
201
177
199
224
189
244
197
195
193
187
223
224
213
249
201
200
253
245
144
189
132
217
187
253
152
155
155
242
189
219
287
210
164
232
200
169
204
214
172
175
243
219
221
218
157
246
215
208
181
258
225
196
197
193
201
225
237
218
160
216
193
177
223
217
200
231
197
182
223
124
236
221
240
177
180
207
185
217
185
250
180
209
210
189
171
233
196
163
200
211
245
250
145
253
188
151
214
214
232
229
181
197
201
252
203
189
211
208
277
209
240
227
253
218
221
222
193
149
158
246
233
171
161
147
207
182
191
207
211
209
139
214
187
195
189
193
246
189
149
244
204
157
186
172
235
248
180
190
209
207
198
250
161
240
239
213
253
145
195
206
232
183
229
188
245
206
276
152
209
204
183
208
163
165
241
232
141
193
215
165
161
247
204
186
216
167
233
168
214
178
236
220
230
181
144
241
178
258
156
166
208
235
212
149
209
240
167
234
152
186
195
186
178
191
250
226
198
189
169
198
206
248
183
185
200
225
197
247
218
169
158
240
176
227
203
216
177
233
203
257
213
206
159
204
135
217
226
217
188
195
240
144
206
178
251
147
154
234
156
227
190
259
207
164
238
175
212
164
150
192
137
250
200
213
139
223
174
209
219
233
181
240
173
166
166
158
201
238
152
248
159
198
213
187
263
210
152
204
220
214
216
217
166
196
274
181
205
241
225
195
221
154
201
176
214
196
228
211
234
162
132
211
169
197
191
158
204
159
237
215
194
168
243
278
188
181
219
221
200
152
189
227
213
177
196
236
271
256
197
127
201
179
176
163
228
237
217
219
202
195
241
181
154
237
225
206
169
127
171
204
177
258
202
192
162
226
174
205
154
163
185
220
178
202
224
187
235
222
223
173
158
195
174
172
177
183
202
212
150
182
256
238
163
244
221
122
116
210
214
216
228
184
235
236
139
161
174
149
181
189
175
169
184
172
217
165
219
176
215
234
199
197
141
185
196
151
171
216
213
197
211
243
180
214
153
165
186
241
176
178
197
134
157
182
236
183
218
190
186
233
146
200
225
220
260
192
238
183
195
122
243
188
171
188
193
184
197
184
201
209
192
241
167
175
196
170
169
183
167
226
231
239
259
267
210
189
216
268
239
229
240
203
216
183
214
183
212
258
257
252
228
155
248
220
180
217
238
248
104
175
156
207
194
169
164
231
237
138
213
197
221
237
172
165
222
180
156
155
159
151
230
196
193
214
181
233
209
185
250
184
168
216
224
284
146
187
227
240
212
233
162
181
215
158
238
239
169
266
210
250
191
148
190
160
206
196
173
204
245
166
207
142
165
211
234
199
257
232
185
176
258
224
194
220
192
163
194
162
193
201
170
97
221
204
244
162
159
171
215
195
199
154
189
235
162
225
257
182
234
236
242
208
278
179
186
187
138
173
220
143
176
275
131
255
196
233
192
183
177
171
223
206
238
175
170
215
244
159
132
184
260
176
244
248
203
206
218
235
208
157
193
150
205
242
212
218
202
217
241
196
240
180
186
141
209
125
231
180
207
221
211
272
197
191
190
216
150
197
223
235
271
197
195
221
204
249
129
195
233
227
173
191
238
219
181
205
178
226
181
214
264
230
190
169
215
206
186
212
253
217
190
226
217
181
219
203
226
193
239
206
225
145
224
219
156
188
198
134
181
178
217
223
196
171
168
198
172
231
228
141
229
281
182
118
203
166
225
183
200
152
185
261
165
181
217
196
231
258
260
231
230
197
194
196
170
156
188
172
202
212
190
239
227
253
179
220
227
208
248
182
210
249
239
164
195
168
225
122
172
213
183
175
196
198
225
195
156
130
211
235
212
240
221
206
221
217
199
229
244
135
171
233
241
204
225
233
227
188
216
184
221
246
268
214
151
240
282
217
164
261
148
211
197
244
173
206
154
163
217
194
239
222
259
198
238
182
154
220
129
277
213
201
257
185
185
242
250
195
167
216
140
249
275
256
197
190
199
200
161
189
173
199
220
169
185
158
198
216
265
233
202
166
223
224
230
208
215
199
212
235
189
141
201
174
149
246
185
230
269
233
210
218
212
269
253
187
203
184
240
190
200
189
198
156
127
218
162
237
158
205
184
178
193
258
180
179
264
215
238
202
182
181
195
214
192
197
218
225
187
272
173
219
196
239
196
155
237
224
143
150
194
215
217
248
188
183
190
260
187
215
195
185
243
180
243
175
235
182
148
192
176
208
167
243
165
138
252
173
248
191
220
159
191
213
152
192
266
230
183
177
245
227
210
157
229
215
240
156
194
193
214
184
196
244
208
149
195
213
215
177
216
175
253
216
233
119
246
197
157
217
201
187
175
179
144
162
170
173
200
199
203
177
226
217
207
218
216
233
181
138
211
214
237
191
249
183
159
113
167
183
193
173
121
108
159
219
245
172
173
230
165
154
197
175
204
237
202
165
196
220
217
215
199
145
185
162
209
209
214
187
198
221
189
185
204
223
244
241
176
195
156
155
137
202
252
202
233
206
213
212
151
225
165
181
227
178
120
199
176
263
174
253
209
206
225
219
178
203
201
216
202
224
152
238
166
222
226
221
154
192
228
207
208
188
197
201
245
222
253
237
156
219
202
224
202
222
186
200
230
203
174
187
172
220
245
162
192
232
255
130
234
226
147
223
179
252
231
176
116
155
213
188
205
201
247
141
142
197
230
228
210
257
252
199
192
191
240
180
208
218
237
193
218
228
210
209
245
177
230
215
156
237
247
152
207
154
247
196
264
167
192
133
207
127
188
170
156
130
169
198
161
180
171
214
206
168
201
171
210
199
233
215
208
173
220
203
243
222
244
202
180
144
159
219
167
230
194
219
210
168
189
219
203
190
236
195
248
219
201
179
202
280
188
245
182
194
217
190
191
231
138
236
230
196
235
207
225
156
254
176
213
168
176
219
251
203
202
175
209
141
242
219
234
193
165
226
225
261
150
127
194
152
194
192
209
195
182
261
184
197
284
225
206
209
169
126
182
224
203
114
202
200
174
218
188
219
229
154
227
202
257
137
204
164
211
165
243
156
158
200
195
156
220
188
146
139
250
204
242
207
226
207
248
244
170
179
258
201
255
171
187
207
197
192
210
187
294
192
259
196
199
235
189
173
211
146
202
159
200
159
166
171
212
200
182
186
187
214
217
239
243
189
216
154
220
216
210
183
198
223
197
205
233
179
169
124
229
227
206
200
181
162
179
204
207
167
233
221
161
198
121
251
213
237
183
150
181
227
169
188
173
155
182
172
165
226
241
214
249
228
221
211
123
156
206
179
235
252
258
223
192
201
236
225
242
133
168
149
196
223
187
250
198
233
218
170
230
173
235
182
183
214
222
176
186
173
160
186
241
170
217
166
237
163
220
192
252
195
143
230
233
183
185
180
238
213
231
246
258
225
278
197
229
188
239
177
140
177
205
165
207
246
138
264
188
208
214
239
224
156
210
188
164
197
224
238
129
181
154
209
177
154
235
179
128
189
229
203
185
227
170
258
191
182
232
125
198
221
231
90
165
229
175
124
132
189
200
230
159
222
229
212
224
237
227
180
235
205
202
171
180
214
227
197
194
215
209
191
189
167
159
214
182
225
167
194
219
177
194
169
190
170
198
251
190
242
177
204
152
148
174
166
215
171
215
173
184
232
130
223
251
221
220
164
202
201
192
221
202
169
219
163
215
177
178
225
231
200
209
196
192
166
226
187
248
194
162
190
190
164
174
180
240
223
149
187
193
172
169
204
242
207
162
233
187
142
239
221
193
245
213
241
245
208
228
147
191
161
239
128
119
185
222
164
205
269
159
243
152
144
221
217
125
171
191
184
176
170
190
173
224
203
228
231
224
255
205
234
199
222
212
260
224
269
191
204
177
163
243
232
182
204
193
149
167
195
186
171
199
194
218
228
140
215
198
264
189
164
218
142
195
172
224
160
216
152
194
255
194
215
250
159
225
148
169
157
279
165
176
180
193
241
226
174
152
222
275
237
153
174
149
122
259
198
168
153
234
195
242
183
197
182
205
197
225
231
201
237
228
288
207
209
125
219
226
153
201
186
218
204
206
228
179
197
201
239
211
148
207
220
210
171
238
174
214
186
269
188
213
171
197
211
253
204
227
223
179
240
210
229
224
195
197
188
188
238
213
179
149
182
207
176
195
240
200
162
287
176
176
182
234
161
188
191
195
225
198
209
206
196
245
222
249
206
196
212
194
178
242
207
242
152
189
168
141
203
190
211
161
128
195
178
204
221
150
197
241
126
221
226
184
215
198
221
161
228
165
185
235
173
150
177
201
229
191
212
197
240
227
245
107
216
262
214
295
231
223
261
153
219
159
172
135
193
178
226
194
200
233
182
187
249
188
189
241
220
121
248
230
192
228
165
181
128
151
227
256
218
205
180
162
244
160
230
229
223
225
284
216
164
218
225
238
198
267
156
219
141
183
161
253
213
159
225
262
164
215
179
151
178
163
215
189
248
131
201
212
163
159
223
234
128
186
184
203
182
187
149
134
187
275
160
179
211
209
213
250
168
181
169
154
256
177
208
152
202
129
155
264
201
142
191
233
181
217
247
252
173
218
206
239
214
201
152
172
255
219
220
230
244
189
194
273
141
210
210
151
184
248
165
160
219
258
146
232
231
209
172
162
253
163
213
197
187
174
137
201
231
196
176
201
213
239
207
216
290
182
152
228
185
211
178
225
159
94
234
231
199
237
248
229
177
183
184
172
178
224
256
215
232
225
216
228
216
242
170
228
232
160
161
253
227
134
196
124
209
207
184
224
186
271
204
203
244
192
185
235
156
173
155
249
128
260
174
210
211
168
213
204
168
224
216
231
194
164
224
214
241
242
238
271
217
225
269
194
153
128
199
212
208
190
222
254
228
211
203
192
173
191
151
213
192
166
241
222
178
186
170
169
214
149
223
218
194
229
189
163
192
234
243
173
246
222
173
224
208
246
200
200
201
209
214
167
258
156
215
169
184
161
136
180
181
185
201
198
248
217
203
140
203
192
212
220
214
160
163
181
167
186
200
237
181
179
204
171
213
223
132
245
195
139
193
212
186
194
206
212
218
152
230
215
192
200
158
199
107
242
203
211
219
195
246
170
213
139
200
175
191
176
255
173
237
231
222
287
205
211
246
180
189
221
182
187
232
213
175
195
205
212
203
230
174
163
163
203
200
190
199
207
225
252
168
208
178
254
171
241
105
179
196
228
205
253
145
203
190
218
200
115
191
260
154
240
188
210
197
213
198
165
195
154
158
197
222
163
245
159
158
198
236
160
185
241
220
171
182
168
221
194
172
208
216
110
200
216
208
194
149
189
218
194
170
245
173
157
112
158
226
258
257
227
168
216
200
250
198
168
174
253
201
182
140
208
170
261
244
204
257
235
165
113
160
229
218
175
260
206
273
168
249
172
247
175
188
171
201
267
182
208
177
207
280
215
199
216
193
224
214
160
224
192
244
177
226
211
172
209
114
232
239
221
164
220
221
114
258
174
178
179
188
150
223
193
217
147
153
242
193
138
134
171
227
213
205
244
227
214
209
205
241
198
240
204
253
138
223
169
207
208
182
221
174
167
242
192
160
172
240
189
241
241
246
174
225
184
237
205
188
203
173
200
112
177
230
213
230
166
202
231
184
233
169
191
223
169
184
206
213
235
182
239
187
201
216
162
207
223
207
200
253
205
225
251
224
160
223
227
256
152
204
181
242
248
245
221
181
204
204
213
181
202
269
214
255
119
166
151
229
209
225
182
144
210
171
159
232
230
225
188
227
229
214
181
184
192
206
176
158
151
230
216
188
152
217
275
122
169
194
151
198
256
189
234
221
214
167
163
213
134
177
253
164
164
241
197
185
179
165
245
181
157
188
191
258
163
164
182
215
181
211
230
262
168
191
178
263
177
173
188
257
148
158
178
233
166
148
203
219
162
213
184
221
206
208
186
234
191
232
171
215
131
235
230
199
199
188
289
218
247
207
208
209
223
155
216
255
199
275
180
190
210
232
184
205
145
225
211
175
249
208
185
278
188
162
202
189
155
210
229
140
145
195
225
182
250
223
189
235
197
185
235
175
210
145
232
227
199
205
217
196
231
249
205
179
203
190
202
205
210
193
226
198
200
227
136
180
237
204
205
177
136
172
218
147
217
203
178
197
177
212
205
232
168
209
229
212
218
160
194
160
165
162
254
147
192
201
212
177
244
160
256
192
193
231
237
209
134
214
208
181
266
252
234
166
243
220
151
161
195
145
231
174
204
202
234
144
188
245
243
214
201
180
237
138
229
217
214
233
198
192
235
192
183
220
149
253
142
209
273
230
214
242
247
211
186
202
217
161
128
269
212
222
207
198
193
202
220
194
182
208
190
192
219
169
183
171
270
214
183
258
198
176
225
141
170
163
162
225
245
126
193
242
149
250
272
186
204
156
101
203
168
192
167
185
170
215
233
230
199
213
221
224
188
227
251
210
203
198
167
213
137
208
263
215
166
157
255
134
167
219
253
223
191
183
201
231
255
215
200
142
180
144
186
177
264
224
202
173
243
264
197
175
128
214
210
175
196
209
228
246
205
195
220
218
195
231
202
191
140
229
173
191
257
205
206
202
160
205
197
197
161
141
203
221
205
219
208
236
219
184
170
207
156
245
196
196
238
166
218
218
260
201
199
78
186
216
173
205
194
182
234
179
248
207
159
207
145
150
248
146
193
249
143
186
198
241
162
239
156
187
170
259
227
217
186
197
191
203
213
157
171
239
253
244
295
195
223
239
161
266
191
191
156
197
217
149
198
205
259
238
211
192
218
202
172
234
245
186
190
224
161
235
223
170
182
226
239
183
160
158
227
156
220
216
265
152
186
150
219
201
217
205
227
189
162
186
159
172
222
245
149
264
214
270
260
139
210
173
171
222
132
201
197
212
239
240
199
245
183
206
297
248
197
209
156
200
167
216
169
179
156
199
217
221
236
174
223
204
219
232
238
179
238
168
183
213
233
230
166
203
236
214
223
170
238
219
229
247
155
189
175
131
210
242
166
194
169
209
188
197
216
225
192
130
185
211
233
230
235
183
212
162
234
245
176
206
221
221
252
156
228
215
217
204
247
183
211
246
279
199
250
207
211
180
163
241
229
188
239
210
207
186
203
201
121
189
135
220
269
236
163
211
218
236
174
126
248
257
280
189
229
220
207
223
147
255
238
212
193
245
150
213
209
241
172
243
219
229
181
274
93
218
162
209
175
216
211
182
170
247
237
208
215
194
220
226
195
224
223
186
164
157
164
199
201
189
178
180
200
211
170
182
223
192
231
179
234
185
154
205
192
227
204
221
205
181
206
264
223
143
254
242
155
274
141
183
152
179
205
126
220
216
196
188
195
238
181
178
235
206
165
218
232
265
167
208
231
226
179
174
210
167
205
207
134
175
236
216
210
213
179
190
289
189
207
212
193
184
219
220
146
212
165
188
147
216
200
231
260
158
229
176
193
237
194
204
196
155
184
192
203
154
218
172
202
227
144
231
249
157
185
155
158
203
240
189
235
176
195
211
163
162
225
168
159
148
202
181
164
196
231
165
191
203
177
226
231
211
191
215
156
224
204
195
213
195
225
228
254
265
295
163
209
219
237
193
229
186
186
216
213
133
166
167
203
193
197
180
204
198
179
213
231
204
223
233
198
166
261
146
189
171
213
248
243
193
217
198
174
164
202
235
207
280
199
173
266
193
264
240
214
230
193
179
134
164
173
118
173
246
175
200
229
208
226
246
222
119
149
218
157
211
256
159
232
170
214
188
182
215
188
159
211
173
194
259
236
124
181
264
231
204
201
207
142
252
161
253
215
205
186
225
223
217
250
189
201
232
279
179
233
191
217
165
172
161
239
157
199
229
169
175
180
225
219
176
189
169
155
214
182
191
237
204
229
208
176
219
194
209
222
222
210
156
175
250
115
185
202
264
242
190
142
222
225
198
237
142
266
188
181
203
186
218
179
213
204
187
200
140
176
176
210
172
195
144
206
190
241
178
175
181
134
224
216
167
191
215
144
88
221
190
168
199
167
185
167
158
171
228
211
217
190
238
142
231
218
169
233
187
171
219
191
230
221
178
213
208
155
210
205
239
233
242
136
167
185
194
176
256
208
253
219
196
193
158
196
260
160
201
147
208
170
197
213
174
161
233
279
161
170
227
217
158
255
261
184
151
151
147
161
162
243
182
177
248
176
196
193
182
141
230
180
202
274
132
173
258
202
214
220
156
240
159
184
258
164
160
227
195
229
198
192
159
202
179
233
201
187
202
175
216
169
232
167
227
181
207
200
185
201
162
161
157
146
216
215
192
241
216
195
163
229
176
185
147
178
147
221
227
211
179
211
212
176
209
249
199
210
252
184
139
170
201
209
172
193
129
226
264
176
253
163
142
266
202
207
237
176
138
168
254
240
252
251
166
168
220
253
215
232
126
243
203
204
196
181
186
235
162
220
120
206
192
178
153
165
218
211
219
202
205
168
187
165
228
189
212
181
219
239
215
243
236
199
213
172
263
228
268
162
165
169
157
217
152
186
169
212
185
236
304
205
227
145
218
132
263
159
222
240
189
156
227
237
235
128
242
167
164
219
174
217
218
166
254
185
270
180
215
232
230
172
195
251
175
165
222
197
172
242
211
161
256
196
203
179
240
242
154
206
217
123
190
155
244
200
209
191
130
218
198
158
214
249
174
177
188
201
180
214
179
207
237
201
214
214
229
254
169
229
156
186
202
214
205
185
268
192
200
196
203
251
212
234
254
211
238
153
129
282
251
273
164
196
231
132
192
173
203
186
229
201
188
239
144
244
181
213
241
257
183
135
170
243
238
198
208
256
202
116
199
183
226
163
238
226
133
203
187
267
259
202
173
232
235
196
215
180
217
189
184
238
158
266
153
186
191
195
169
292
194
177
225
190
156
239
161
207
234
202
151
218
236
212
217
201
132
171
164
233
178
148
220
176
220
242
187
225
258
188
201
250
226
155
244
210
228
229
192
237
212
222
163
208
156
225
181
263
221
138
146
176
215
182
181
205
146
165
243
186
110
172
199
206
200
189
224
200
203
149
197
153
188
175
173
209
206
253
201
169
271
192
185
201
274
217
187
189
227
219
174
253
221
246
223
210
235
281
117
248
182
200
139
196
163
175
194
186
204
204
183
198
137
211
160
254
153
223
233
180
203
240
228
162
245
81
164
169
250
157
223
198
217
174
218
189
198
188
231
205
213
184
199
219
196
214
243
207
207
167
261
194
200
200
242
210
193
183
236
180
212
181
137
229
196
198
188
154
247
209
169
231
166
183
195
210
229
118
231
162
170
201
227
209
178
212
150
246
188
182
199
133
248
206
248
234
197
250
169
207
219
181
228
189
173
173
188
188
238
185
203
209
241
193
236
170
159
148
237
185
253
238
213
194
240
230
149
173
239
211
188
204
260
213
238
225
240
159
170
255
227
164
222
233
202
168
150
134
197
229
251
181
187
244
215
234
207
182
175
207
251
208
187
121
203
205
157
195
157
193
145
205
154
207
238
191
228
184
221
163
188
173
217
242
258
222
155
194
207
204
273
238
175
215
249
213
196
266
239
200
104
201
212
191
171
170
163
265
261
193
235
218
229
212
244
136
188
253
180
217
249
247
188
173
217
261
169
224
259
158
207
142
230
141
176
208
218
189
226
284
137
175
185
189
237
183
252
192
222
216
257
205
188
225
173
162
175
261
196
192
83
225
222
151
211
224
197
219
199
191
231
181
173
206
200
194
245
213
217
188
221
201
130
221
193
215
184
255
230
173
230
230
269
161
315
218
159
202
214
213
210
228
170
175
215
142
171
179
256
227
156
251
262
189
204
213
208
178
172
168
113
160
240
136
258
162
260
230
175
176
162
225
240
203
123
114
220
165
199
215
210
214
172
222
207
180
190
189
171
236
148
166
191
183
216
213
224
191
181
240
188
204
107
197
182
218
261
220
155
213
220
154
209
229
185
194
208
236
182
235
215
238
164
184
144
201
189
151
288
190
200
203
162
163
222
127
229
200
232
236
195
242
215
188
212
218
189
213
188
217
125
215
194
192
207
245
177
139
196
220
216
215
184
153
105
201
223
227
249
218
159
268
184
251
223
143
249
243
159
188
233
156
161
198
246
143
172
226
246
157
195
199
168
211
112
170
169
201
118
163
182
231
187
170
148
254
148
257
211
157
178
220
251
184
232
219
216
250
199
160
230
209
198
192
250
115
260
204
222
247
155
112
220
181
190
237
212
204
193
265
206
193
169
191
200
210
218
172
237
245
249
205
265
141
129
202
214
161
142
219
233
183
176
216
260
226
172
212
195
241
142
221
184
187
159
239
186
207
176
275
228
231
165
174
177
207
196
192
211
223
236
232
240
197
155
235
208
217
192
143
184
130
188
240
142
214
245
195
196
165
235
212
140
240
199
230
194
230
254
161
199
199
186
243
232
174
183
216
177
184
117
190
155
233
199
230
185
199
159
208
188
203
199
223
161
174
207
189
119
196
107
169
208
172
249
144
258
179
225
233
140
201
230
174
207
209
143
255
204
209
181
191
252
164
171
174
195
239
148
202
162
187
197
219
186
258
162
171
215
191
183
215
227
169
242
177
164
259
156
187
245
230
177
187
190
219
210
101
173
160
168
197
118
196
204
160
165
207
195
248
221
175
180
169
259
146
189
137
176
230
203
241
193
222
195
252
189
211
183
153
224
151
236
172
170
186
228
197
173
169
244
152
238
277
180
143
162
169
148
197
204
149
181
225
215
240
212
227
199
209
207
141
142
257
273
206
232
177
145
170
198
141
224
171
144
200
186
215
188
117
210
170
240
146
198
164
138
219
225
177
230
195
178
235
200
224
152
244
194
203
227
163
239
264
263
216
182
206
188
175
194
196
212
264
243
210
201
227
180
225
232
148
233
185
218
190
186
196
211
237
158
187
218
182
191
212
157
152
189
110
178
186
241
198
193
227
212
198
255
176
139
216
186
225
246
193
163
184
208
207
154
127
190
203
192
234
126
194
217
213
197
222
231
209
230
219
114
227
194
202
163
152
172
263
186
197
188
157
136
157
235
223
262
195
241
217
214
209
168
251
181
204
208
222
229
172
214
228
198
183
227
248
187
194
191
207
196
233
233
243
182
205
247
230
224
193
200
191
228
131
192
240
186
186
211
168
196
186
175
236
132
274
205
257
198
227
226
197
199
183
220
205
245
268
228
263
201
158
248
183
205
226
241
161
247
176
168
199
200
157
186
231
172
234
257
212
243
213
143
222
253
231
208
201
195
250
232
242
252
185
208
210
195
192
184
184
205
204
174
189
259
208
179
188
238
151
226
218
173
236
212
148
165
200
173
152
162
177
211
159
193
182
229
198
197
165
195
156
144
198
190
214
183
210
214
155
253
234
191
147
218
169
254
162
260
274
165
229
208
203
182
200
226
153
169
200
238
210
175
208
200
247
252
217
224
169
199
289
190
205
187
184
236
193
237
243
125
211
256
218
186
193
138
213
258
219
193
208
209
214
184
210
217
170
249
202
218
203
200
171
175
162
234
225
122
208
188
177
196
214
184
227
243
210
203
218
234
205
251
208
233
199
203
223
175
148
223
209
224
192
205
178
175
222
231
181
193
230
245
252
196
206
156
173
238
239
193
182
199
164
276
163
204
264
160
172
185
185
232
152
208
221
242
142
204
244
121
204
183
223
172
231
166
174
178
160
159
207
149
149
206
171
144
161
181
216
131
221
234
215
218
185
176
192
148
269
190
220
267
247
240
189
163
197
251
200
197
224
260
198
228
182
257
178
139
148
179
223
262
226
149
192
221
159
168
196
168
226
176
206
182
149
178
245
209
213
183
158
207
221
261
197
198
212
214
248
188
266
180
153
155
246
197
148
124
148
231
203
244
196
201
252
245
194
160
196
201
202
210
168
168
203
163
205
218
230
231
108
208
187
135
281
265
171
203
247
164
191
213
233
245
143
149
210
226
270
208
266
165
209
171
166
191
182
162
241
221
228
212
193
215
160
172
176
229
230
189
246
227
188
153
192
204
238
225
186
136
183
200
199
154
212
204
195
223
192
192
196
146
224
187
227
193
228
224
194
220
207
175
206
229
200
172
212
135
199
186
196
180
220
243
166
138
142
219
187
229
245
235
149
246
186
168
233
187
220
260
201
196
177
183
165
209
217
231
219
204
218
172
174
174
173
220
155
144
201
206
137
209
252
154
184
146
232
279
219
158
235
173
160
200
176
143
250
225
142
259
225
181
196
199
228
203
217
182
137
173
234
176
283
269
167
198
230
215
150
232
190
153
188
179
196
214
223
212
161
193
195
219
195
112
174
260
223
188
182
174
253
172
255
228
175
184
180
210
208
260
225
177
150
162
214
181
249
226
266
154
189
234
173
170
158
182
210
203
201
178
209
200
217
234
199
188
239
194
251
263
213
187
195
253
141
204
189
135
208
158
178
173
194
228
233
149
274
244
162
219
205
230
233
226
187
170
211
171
213
281
172
233
143
198
261
221
164
216
276
191
142
229
204
218
204
198
194
194
201
260
209
228
175
166
237
191
198
205
180
192
189
241
264
172
199
234
214
163
169
208
215
234
224
223
206
216
236
164
212
185
258
203
240
178
179
194
181
183
239
206
248
160
149
194
230
208
159
253
159
233
114
267
215
152
186
190
171
216
218
215
204
190
167
162
220
197
199
230
165
173
215
171
213
252
234
195
171
254
134
156
232
194
252
160
205
182
161
174
231
163
215
186
268
172
253
156
158
223
160
193
234
213
228
194
181
212
232
179
160
151
200
217
199
127
215
98
238
223
164
194
215
220
196
294
221
235
212
214
225
186
251
218
215
203
159
156
172
219
216
163
213
230
153
165
194
224
188
215
192
196
202
227
165
212
216
242
114
224
241
247
171
196
175
239
214
217
175
181
168
202
200
175
201
234
258
234
229
211
183
201
193
227
180
176
205
232
219
153
212
174
199
173
141
251
205
233
154
172
142
253
177
249
202
181
227
210
192
109
217
249
228
239
196
137
219
164
179
236
92
180
251
189
181
260
248
200
242
207
192
110
196
228
203
236
177
191
217
204
208
234
237
208
250
213
250
227
227
193
234
189
229
177
171
232
211
193
231
190
189
190
268
200
178
175
223
180
199
254
176
187
178
188
207
216
189
209
196
181
234
238
217
236
250
221
175
196
232
187
256
217
192
227
217
194
162
85
230
187
195
203
162
175
210
180
166
155
193
167
185
231
165
215
219
132
246
244
234
213
207
235
171
151
185
149
153
285
213
161
231
186
198
216
173
203
193
174
104
207
217
194
193
216
207
215
181
201
204
186
149
156
168
233
230
188
188
239
201
198
158
222
174
171
141
194
212
139
115
220
262
176
148
189
114
216
220
280
198
205
217
243
167
199
148
180
238
157
235
162
196
270
228
166
188
207
245
212
302
188
261
180
180
159
229
223
154
233
178
197
201
213
149
239
150
214
172
279
217
203
258
232
196
181
122
225
227
188
192
211
203
233
237
188
196
181
234
130
199
209
213
186
193
195
217
174
132
210
212
187
184
155
185
223
210
214
188
167
210
162
189
206
210
190
184
192
168
236
212
180
184
216
176
139
223
167
182
231
126
186
181
254
137
226
228
125
204
237
201
209
212
256
217
225
216
275
191
181
220
211
181
234
153
155
257
122
160
185
198
210
237
216
206
175
192
193
196
246
221
154
170
216
216
216
203
229
216
165
177
215
223
164
223
216
185
230
186
191
152
174
165
201
198
175
227
229
233
212
206
214
229
228
257
179
185
264
205
269
177
192
211
186
235
147
251
208
223
233
244
207
202
206
156
167
244
207
255
201
196
128
251
238
186
218
193
189
205
195
234
188
222
220
238
214
219
161
229
226
185
119
193
237
152
122
177
204
208
201
170
146
184
224
229
230
155
246
195
273
218
195
166
192
246
245
151
210
199
173
230
198
230
157
168
191
223
200
229
250
225
193
228
222
146
164
199
155
173
171
161
230
236
235
176
175
194
169
203
153
205
237
244
260
196
207
237
260
214
179
202
208
177
149
179
191
229
149
245
216
168
176
146
206
256
191
184
153
206
183
229
227
173
256
229
259
209
162
165
231
230
218
212
203
188
186
195
202
207
205
195
224
218
174
172
159
209
127
186
151
187
214
136
217
206
276
182
238
169
249
170
192
107
216
254
186
180
174
251
227
210
155
110
160
185
241
206
206
221
179
197
226
257
217
176
192
188
150
201
197
226
223
136
179
270
188
209
183
169
199
217
228
203
163
215
174
180
205
214
203
212
176
209
164
189
235
242
180
208
241
174
192
222
170
216
145
174
181
191
182
210
175
225
185
268
142
256
200
244
219
233
198
160
161
189
211
213
190
203
223
180
241
159
242
180
223
233
234
191
234
176
221
239
210
142
229
187
241
167
220
146
229
189
161
230
243
213
201
214
215
210
216
235
221
229
186
182
249
162
239
181
226
227
220
252
128
173
194
131
219
253
198
152
188
224
190
213
182
231
170
224
186
137
171
194
276
132
187
193
197
208
139
212
127
184
232
198
187
174
277
219
191
234
194
219
164
173
229
143
239
236
220
234
184
231
171
214
180
175
218
212
180
173
209
219
243
182
201
140
147
221
207
193
272
202
173
173
192
190
211
127
202
204
270
176
227
215
218
219
163
200
196
180
252
219
153
151
216
206
175
200
177
191
203
246
244
180
221
169
206
190
211
177
164
192
160
191
230
169
182
175
228
213
178
195
236
239
161
183
210
244
104
170
204
188
206
212
193
238
157
177
178
172
227
169
195
185
135
216
148
178
210
187
168
205
170
204
228
185
91
227
171
135
203
213
188
232
194
182
128
193
167
233
186
167
173
170
165
183
208
250
212
165
205
202
131
182
216
173
239
164
199
169
214
227
232
231
216
226
180
178
190
243
197
208
210
249
230
180
193
85
208
215
182
176
231
143
239
226
225
183
213
225
208
186
241
202
187
220
261
192
268
193
192
221
217
157
216
205
176
136
157
214
192
255
250
176
241
163
234
210
208
195
141
192
181
216
188
129
184
138
122
230
182
166
182
254
188
220
195
170
243
140
206
125
179
253
225
163
207
196
199
233
178
218
215
195
189
263
201
158
222
213
212
171
168
204
194
208
236
168
222
139
165
243
235
178
185
242
180
180
253
171
184
195
193
200
173
176
172
207
265
219
207
219
156
231
211
157
179
217
237
225
216
230
141
249
242
214
160
208
211
223
218
176
204
174
208
195
217
133
191
161
130
272
246
189
195
245
168
210
191
244
185
178
204
181
163
188
234
165
226
123
209
238
217
210
197
252
232
215
205
181
262
194
152
212
215
184
181
186
270
222
175
238
243
159
206
229
198
161
205
239
193
227
169
197
171
187
246
210
214
125
165
207
200
200
228
183
151
196
194
199
176
173
185
233
219
148
127
185
175
286
181
261
154
261
232
209
226
231
152
239
176
199
230
210
181
212
150
205
226
241
211
235
194
212
280
161
189
172
174
268
175
189
217
189
206
128
212
165
219
236
243
231
179
213
259
253
206
212
109
208
148
181
205
282
206
165
245
179
183
210
171
219
193
225
249
206
174
172
194
195
194
217
216
192
236
246
190
251
192
197
155
209
206
220
228
207
253
210
165
135
215
177
191
137
232
172
223
164
161
270
164
211
218
220
103
229
143
143
215
241
205
264
164
233
275
185
122
244
180
205
159
144
245
256
127
232
198
237
215
189
155
207
156
171
117
174
150
233
244
191
176
203
186
238
232
174
174
208
220
222
192
182
178
241
197
201
242
168
170
182
183
237
219
177
170
183
205
212
179
250
161
208
235
258
209
239
205
241
251
204
196
223
193
210
148
224
225
239
168
241
165
175
222
231
208
236
182
132
224
224
136
155
222
223
172
169
192
145
181
218
211
162
248
239
191
199
159
272
155
239
121
166
226
229
150
238
184
214
215
215
192
196
233
222
193
199
255
218
224
153
231
178
212
232
203
216
180
264
218
203
224
218
235
186
176
167
227
224
217
252
156
221
136
180
149
183
174
208
192
242
246
153
274
178
238
188
206
180
200
216
160
228
199
192
173
167
181
182
185
207
221
165
171
177
191
190
192
198
227
189
184
270
195
158
248
225
194
231
153
253
161
236
210
172
210
187
180
226
215
253
162
212
170
226
277
183
192
205
269
227
224
211
174
228
268
196
257
202
157
214
155
216
212
222
200
157
237
237
190
167
177
134
218
168
162
221
267
191
175
204
224
168
161
201
184
199
202
220
207
148
150
229
256
222
206
232
184
124
200
231
151
229
206
213
237
246
226
171
148
229
195
220
216
221
110
221
172
270
198
214
169
159
186
215
162
168
210
256
223
226
203
219
225
204
264
229
191
139
213
205
192
202
226
168
170
176
210
235
215
155
196
212
148
98
250
176
228
255
237
193
179
238
222
114
189
148
236
232
219
181
171
184
230
174
204
216
161
216
246
177
225
230
265
213
186
146
197
242
210
247
178
203
215
207
185
174
157
184
197
187
196
182
181
169
212
229
183
269
208
206
248
188
210
193
218
144
154
219
184
161
204
202
196
108
159
172
197
224
170
190
168
194
130
205
231
154
212
193
177
210
228
159
170
188
176
218
228
296
153
171
152
146
204
224
183
205
189
216
231
191
174
226
179
179
201
224
252
195
200
235
217
195
203
223
185
192
169
189
196
216
266
219
216
196
202
230
231
206
189
219
237
183
202
158
185
155
204
189
169
202
191
267
219
205
174
236
185
252
228
201
230
207
251
149
240
180
242
187
222
237
197
208
263
248
188
196
194
178
230
218
201
268
205
189
158
273
195
208
199
185
179
202
180
232
206
146
213
204
187
195
187
181
203
216
237
203
253
201
148
163
213
206
244
179
198
217
199
227
176
248
244
246
222
236
192
212
205
234
218
197
185
212
197
242
221
174
230
184
155
224
200
193
219
235
201
184
205
152
220
201
259
185
227
150
226
186
215
177
194
215
137
223
226
182
192
220
196
186
195
203
268
257
182
199
242
169
215
227
174
223
205
163
191
178
189
196
208
251
170
190
247
165
235
218
191
183
185
202
223
198
213
185
159
111
152
183
235
221
302
195
195
209
200
148
248
250
201
248
161
213
176
214
201
226
172
244
182
192
150
205
143
173
147
180
145
126
222
261
164
187
144
172
201
184
207
196
169
252
179
187
200
257
148
179
256
212
167
190
185
191
169
143
210
177
179
238
190
185
183
230
217
224
226
195
193
230
162
256
169
246
215
167
227
171
188
231
225
182
181
182
200
187
243
213
200
202
186
194
131
203
269
191
180
177
149
192
218
194
196
137
173
222
194
198
224
166
215
147
160
188
252
235
185
171
223
191
173
168
196
156
200
165
239
116
150
229
270
157
221
237
259
221
196
200
198
176
181
220
206
247
221
168
211
215
233
211
214
190
257
151
247
177
197
234
260
194
162
170
234
143
204
166
176
175
215
200
198
218
120
233
194
197
141
169
186
179
157
250
179
190
234
176
191
171
218
233
200
193
207
261
195
228
233
190
191
202
219
191
188
132
209
257
257
229
155
184
151
188
226
188
190
147
216
229
196
170
216
238
198
237
225
233
217
222
206
196
223
185
160
248
242
246
180
257
299
238
242
200
169
207
180
234
220
172
188
145
157
175
236
191
161
237
192
165
199
222
234
200
200
156
200
174
175
248
213
241
190
181
191
175
156
199
160
222
170
224
180
149
204
192
237
223
202
201
213
181
174
129
217
152
241
188
160
248
266
168
218
198
185
200
169
175
221
189
207
191
132
199
221
174
183
168
201
207
225
157
172
230
186
219
243
211
258
265
220
245
235
194
190
221
186
164
163
223
174
196
154
234
162
153
223
241
255
231
160
247
209
167
168
230
192
207
202
126
226
222
190
193
202
197
220
230
220
216
242
167
257
204
202
235
170
177
220
165
295
216
201
153
250
218
196
176
168
201
198
202
208
222
226
250
180
257
189
225
136
252
218
142
241
216
189
146
231
154
133
180
196
245
216
168
223
215
234
195
194
222
195
136
218
244
183
241
153
240
200
136
155
183
204
150
191
185
181
209
201
153
159
193
246
222
189
216
262
186
168
99
213
213
188
164
243
218
219
185
200
219
187
212
192
189
188
244
190
185
213
262
195
208
243
243
232
201
226
184
218
175
209
194
203
223
152
199
162
187
154
158
216
224
193
201
190
204
218
157
169
220
199
199
204
227
216
231
196
217
198
176
188
169
222
182
151
208
193
164
232
217
219
266
191
201
170
113
201
215
199
234
197
255
188
166
201
253
226
233
182
204
200
137
205
196
207
93
216
174
155
190
258
220
184
239
193
244
222
197
180
236
167
181
149
198
210
218
149
203
182
206
223
216
207
234
211
211
175
179
255
219
140
181
210
227
149
213
160
213
232
159
196
221
234
181
182
213
193
154
202
198
212
250
207
187
240
212
209
205
186
201
246
208
212
175
224
161
180
248
186
171
202
251
184
231
188
237
244
154
204
152
185
235
170
205
218
199
218
221
176
183
136
224
221
127
190
161
265
166
171
202
230
181
184
243
206
166
169
113
222
234
207
82
214
239
178
149
236
220
211
221
238
177
206
136
241
184
158
196
225
258
187
205
164
139
235
207
239
180
192
208
188
160
214
192
207
179
213
164
169
217
165
204
181
256
193
223
193
203
219
155
187
219
192
267
188
216
119
160
216
206
173
214
182
172
206
145
257
188
200
121
201
213
193
165
194
176
218
144
116
182
200
230
179
176
208
203
245
228
235
168
209
241
243
226
202
192
174
154
169
196
202
209
193
208
213
195
215
194
206
271
163
237
212
165
172
245
203
193
242
219
225
218
166
198
175
235
158
231
226
229
242
194
181
216
189
203
219
208
190
242
170
168
253
226
178
193
232
237
266
166
241
192
109
176
168
200
219
249
199
220
239
212
217
219
185
287
169
203
207
223
221
196
188
216
247
207
194
147
255
186
136
185
137
212
249
175
180
192
209
159
185
156
231
196
181
228
216
135
194
202
211
217
217
191
175
206
150
248
192
246
153
200
266
199
224
127
210
224
235
190
204
156
150
178
228
203
257
139
224
202
219
236
214
172
225
201
190
263
207
233
170
158
175
188
236
267
164
195
213
200
191
191
255
182
193
193
181
180
215
200
245
185
219
129
186
149
224
177
158
222
205
201
165
213
207
185
261
189
258
169
188
230
193
154
176
138
167
176
174
170
253
206
161
156
150
195
206
206
196
196
224
165
261
156
205
184
154
230
184
176
218
227
182
172
247
167
184
190
248
275
234
208
229
149
192
185
210
196
190
189
209
167
234
203
173
266
167
219
205
189
217
216
221
200
207
245
191
211
210
226
187
226
180
173
268
238
208
177
225
213
207
141
253
190
186
218
212
299
160
212
268
204
192
228
216
219
178
134
174
209
236
107
213
254
297
193
204
232
256
228
203
184
198
179
164
231
192
217
166
167
146
173
195
226
176
212
213
253
181
179
217
270
191
179
190
176
194
188
216
213
190
192
147
218
181
164
231
175
196
219
212
199
178
188
189
203
223
216
229
198
224
212
214
184
266
166
162
148
236
172
202
210
180
164
123
219
148
129
224
208
147
195
155
145
212
236
193
220
206
183
149
212
197
182
237
190
205
243
199
212
167
160
226
164
218
169
183
218
192
270
201
168
164
179
249
247
179
201
214
207
193
188
241
212
206
232
182
247
176
183
170
229
214
201
233
159
131
164
228
162
205
251
186
215
198
193
224
189
208
236
223
256
159
230
178
169
188
201
194
126
129
193
177
221
170
218
237
227
199
160
194
254
254
219
166
216
132
213
226
243
189
249
236
201
159
242
225
193
139
228
197
215
236
223
219
228
219
188
182
200
199
228
174
175
191
178
179
195
248
216
270
175
179
250
233
261
192
176
254
244
193
137
204
166
154
187
151
202
218
224
203
186
194
221
186
217
179
160
214
178
166
217
177
205
186
133
176
184
198
219
226
179
222
210
248
273
188
231
190
143
253
220
208
181
214
207
189
221
179
186
210
141
226
237
162
138
265
144
178
174
227
189
191
243
214
203
142
204
215
237
101
141
210
201
219
166
125
216
198
142
227
274
168
188
274
170
175
208
282
208
156
229
219
220
175
118
245
211
239
185
138
192
212
212
175
138
179
186
113
217
222
272
265
237
169
185
219
221
273
149
258
249
173
175
179
206
189
291
239
199
190
151
233
188
235
151
187
186
172
235
197
134
170
162
209
229
146
181
178
120
204
198
189
177
161
183
167
198
215
152
178
184
194
159
178
223
282
158
231
112
185
240
138
199
209
214
179
252
134
195
180
180
241
207
221
163
220
184
219
229
237
187
225
230
219
167
265
243
237
196
224
170
261
189
173
146
212
196
208
191
173
161
207
183
232
233
159
246
181
244
198
183
211
212
254
200
243
143
213
210
222
146
188
219
161
223
229
255
172
204
164
216
201
162
202
274
273
257
156
257
244
167
224
200
174
261
237
204
128
211
171
240
177
152
196
177
149
185
210
208
236
222
149
269
169
157
213
228
175
179
216
159
203
237
101
214
198
210
203
217
170
141
195
245
223
155
210
183
199
199
243
217
209
139
201
184
228
156
252
186
209
150
189
153
248
197
197
175
147
175
238
204
138
206
164
202
221
173
180
189
126
209
166
217
153
246
184
184
204
224
186
220
221
250
158
176
223
177
223
245
240
235
188
237
194
164
201
130
207
158
178
187
168
191
241
238
232
196
172
200
199
264
242
155
198
228
274
118
242
175
160
189
180
181
133
159
226
147
211
172
158
167
138
146
186
189
215
167
201
214
244
210
179
207
189
158
182
183
159
165
225
201
226
166
204
229
243
220
169
222
254
247
178
202
218
177
220
173
184
192
207
154
148
155
208
199
197
233
171
212
299
202
163
219
206
204
225
232
195
210
204
191
224
108
170
198
166
261
177
160
178
226
184
245
176
223
216
222
208
193
213
216
160
147
269
208
210
197
168
182
195
154
202
241
178
139
214
224
181
249
147
155
223
162
229
203
236
170
156
241
214
186
195
229
225
209
169
160
176
217
147
206
175
175
228
196
191
176
148
164
204
207
226
251
197
265
229
240
179
141
248
228
230
197
210
150
229
196
184
195
137
211
183
189
191
226
205
189
219
186
219
212
206
240
222
232
249
178
235
172
180
223
226
205
183
215
140
182
180
226
185
209
269
233
146
203
214
185
200
190
214
218
238
258
189
189
260
192
274
235
151
182
224
182
206
190
234
180
211
183
255
178
176
175
168
230
207
194
202
180
147
225
238
193
213
230
160
150
254
232
121
145
212
203
186
236
230
156
193
179
153
171
228
239
172
235
240
233
224
155
254
154
198
188
238
150
208
166
257
269
242
135
193
179
239
260
229
253
165
238
221
171
143
178
201
210
246
207
228
205
236
137
176
277
185
222
203
128
220
156
237
228
199
243
239
227
194
165
219
152
146
177
125
265
235
196
217
174
171
189
192
273
157
166
220
222
206
229
167
202
138
237
181
172
153
195
193
179
270
214
213
189
225
216
273
197
216
212
198
212
166
169
220
169
214
172
154
204
165
216
241
199
203
184
201
129
186
195
157
200
158
174
243
198
194
221
182
176
210
222
218
199
156
202
184
183
149
233
248
216
186
184
234
195
163
187
191
184
215
211
209
157
248
226
238
165
261
225
223
197
191
218
203
192
220
228
172
210
187
209
198
252
208
230
225
120
252
236
226
127
163
280
219
157
261
237
186
179
185
160
154
210
197
246
199
201
211
189
198
205
147
190
172
205
167
186
246
245
220
231
147
187
186
237
208
177
150
185
123
207
134
218
203
277
172
216
159
184
187
213
200
203
162
201
272
160
160
214
227
208
209
154
185
138
134
137
171
196
187
240
238
176
209
216
261
220
170
216
198
203
213
184
244
216
294
208
197
231
218
214
209
194
231
233
202
253
236
153
235
218
244
218
206
193
179
193
220
172
219
169
176
168
206
219
152
172
263
210
212
248
226
233
180
202
188
205
182
237
228
208
238
182
231
248
203
174
207
205
127
157
164
259
245
260
210
238
168
221
190
208
213
214
131
245
228
172
222
182
148
186
173
224
173
225
228
146
222
196
165
230
227
232
167
119
166
196
204
160
163
224
215
190
242
226
241
185
192
185
211
220
217
229
149
197
211
171
246
217
166
237
202
188
115
243
263
163
137
131
156
269
222
283
222
185
231
213
171
184
194
235
248
191
244
210
209
169
205
210
182
159
176
189
166
191
227
220
188
200
199
219
211
195
225
213
150
161
222
204
178
138
259
209
130
209
258
167
201
156
192
248
224
157
182
195
212
240
207
223
134
220
244
226
208
229
228
239
207
156
112
182
228
203
175
197
253
207
282
155
195
219
217
155
152
177
200
183
184
200
187
221
189
199
198
223
178
161
184
187
229
194
234
217
162
280
229
156
239
211
187
211
145
237
226
156
215
154
201
175
170
231
222
174
223
227
201
205
176
248
209
146
155
233
231
245
181
224
165
193
199
203
190
243
166
198
238
252
126
230
202
253
164
199
194
193
254
160
222
202
180
206
173
151
212
171
234
193
143
207
243
207
198
223
218
204
197
197
190
201
191
167
193
174
235
235
215
191
230
147
219
188
164
178
186
228
203
187
268
252
193
201
248
230
243
235
234
182
225
249
191
170
160
224
178
231
166
174
171
184
160
166
199
191
295
238
178
223
199
249
210
175
256
190
239
167
240
234
155
207
174
273
159
158
166
226
166
154
139
218
175
236
256
165
140
206
251
186
194
225
227
256
198
243
217
198
154
180
240
245
198
217
191
145
167
240
205
185
189
217
164
204
198
154
173
164
176
167
207
172
203
262
212
189
156
234
178
244
199
210
233
201
217
211
235
266
218
94
192
182
142
182
155
198
141
245
216
221
216
251
222
194
184
151
213
244
200
204
217
269
196
236
241
177
211
163
222
170
233
176
158
210
219
152
204
239
141
176
213
236
123
206
246
229
162
170
220
180
163
186
149
166
166
187
183
163
197
168
282
192
196
226
178
192
235
201
120
236
168
193
186
184
191
219
243
218
135
240
274
205
149
161
201
194
216
210
235
241
199
213
210
192
237
136
234
193
206
174
233
215
170
201
198
160
166
161
188
162
212
218
231
234
183
205
178
249
176
227
211
136
219
245
234
218
182
207
232
207
228
132
175
265
200
190
202
184
253
273
232
162
131
197
202
202
257
224
217
246
203
182
184
216
205
227
200
230
141
210
174
179
218
177
216
242
183
178
259
202
187
176
274
203
162
148
218
205
277
208
239
121
173
158
235
245
199
199
216
153
213
146
181
175
186
179
166
201
190
247
219
160
211
199
208
175
171
247
193
183
248
204
186
226
243
171
197
214
172
206
168
184
182
168
222
141
208
218
121
221
219
213
204
183
240
228
232
157
163
190
199
205
203
127
207
203
203
206
206
163
218
183
215
188
203
212
204
257
240
162
161
246
149
176
228
209
218
215
217
216
167
237
202
224
170
175
154
157
156
162
176
192
193
269
188
175
212
247
260
199
230
194
167
266
184
200
147
252
149
162
192
223
210
212
224
218
177
170
156
180
292
230
169
123
207
234
229
195
171
221
169
160
260
190
207
194
179
165
174
183
184
247
256
176
210
245
142
207
236
251
215
198
227
206
202
196
260
199
139
214
271
184
206
187
209
207
230
196
220
238
248
172
164
148
241
150
199
182
151
233
168
229
199
161
201
198
204
167
145
182
196
217
119
206
168
175
149
177
182
214
188
153
236
182
230
211
172
193
238
136
177
193
187
231
229
234
251
115
213
148
226
149
219
126
187
264
208
186
193
175
205
228
159
215
251
213
199
204
213
205
218
226
220
193
150
215
173
267
175
219
179
190
221
183
167
199
156
263
225
178
189
223
238
274
157
169
162
221
145
241
238
165
221
208
207
163
215
223
229
231
160
256
201
186
235
214
202
222
240
216
177
233
205
235
186
207
167
218
265
264
192
150
183
160
218
195
173
265
171
239
220
166
174
207
200
183
226
233
211
214
196
231
230
186
162
168
210
196
172
210
218
165
217
211
245
243
147
177
147
183
256
162
198
238
240
180
203
215
227
202
165
233
195
196
169
243
219
264
226
182
240
223
148
170
164
232
223
166
218
237
177
272
229
178
189
181
267
107
187
219
207
209
230
177
182
233
296
190
251
230
158
223
226
198
229
188
275
146
149
256
196
175
159
218
198
222
200
238
231
189
222
215
236
231
234
192
240
170
158
249
143
228
135
133
181
193
210
217
234
152
251
188
214
198
264
232
219
202
214
227
187
212
204
218
231
257
222
226
167
227
138
183
161
196
163
174
234
201
211
204
145
183
244
208
238
206
237
182
219
186
248
184
256
207
191
204
193
236
181
196
187
176
249
187
164
201
194
182
233
189
212
219
173
238
212
165
238
152
241
159
223
198
195
169
265
208
227
235
173
123
208
216
124
172
199
237
123
191
214
225
243
137
219
208
237
244
212
206
221
198
190
187
156
221
186
142
229
201
209
222
202
229
215
211
218
182
171
178
148
178
206
209
205
231
265
235
196
257
234
155
281
269
167
241
244
189
203
170
180
220
199
231
210
153
174
205
171
234
232
141
249
174
229
201
181
248
232
195
236
206
183
188
201
199
177
149
188
222
161
218
156
165
179
191
138
197
208
184
163
209
269
177
205
165
157
182
196
203
206
182
240
234
287
249
196
200
194
245
155
191
184
148
165
231
187
139
221
154
181
181
190
167
150
246
178
215
201
258
240
239
219
129
209
251
190
203
250
152
230
181
218
182
227
134
158
200
182
226
197
230
164
220
176
153
227
177
154
255
167
180
231
225
248
184
177
211
207
225
141
243
155
196
223
232
249
184
237
234
223
164
240
248
199
163
226
143
154
212
164
162
184
146
204
192
222
212
220
182
201
203
183
171
232
203
208
200
168
213
261
207
218
198
233
219
195
162
211
235
263
249
186
180
169
238
220
155
213
238
211
212
234
238
192
247
233
183
215
249
229
164
219
160
203
179
223
178
205
203
231
181
211
176
276
180
223
181
199
196
160
208
226
214
193
156
147
191
277
239
173
185
233
179
195
211
153
186
228
219
215
175
246
244
252
252
121
158
198
275
190
180
185
263
255
188
192
152
187
258
138
260
109
239
216
197
142
189
219
222
175
254
231
229
198
203
235
178
228
205
197
235
155
195
228
225
173
251
210
185
189
143
190
187
197
227
198
202
213
171
182
226
187
195
188
248
215
160
188
251
185
179
205
158
219
165
244
164
209
125
280
248
157
250
226
189
166
260
274
194
222
230
163
176
101
236
255
147
225
231
185
209
242
205
217
244
276
197
173
122
212
219
232
190
174
223
230
218
253
209
198
183
199
233
223
213
227
196
199
134
258
222
243
223
190
138
209
193
180
190
185
174
228
202
180
169
204
178
220
229
178
206
217
226
217
215
229
186
253
238
266
177
225
159
170
150
170
149
224
170
230
276
230
237
249
229
208
163
242
182
211
139
154
201
201
144
165
272
194
230
202
133
248
213
123
187
236
223
186
232
193
179
213
261
227
160
201
188
199
213
186
202
110
220
200
186
201
238
251
250
208
208
173
220
199
174
146
161
202
140
238
197
246
189
239
235
291
249
121
155
179
205
178
183
155
215
242
172
152
185
184
166
238
186
109
132
238
242
270
190
178
200
175
166
212
183
226
263
204
180
194
231
280
264
220
165
214
169
203
258
202
247
223
163
189
206
182
195
260
241
189
215
211
194
221
197
242
157
213
219
225
201
234
149
155
178
180
203
130
254
197
152
173
169
190
244
99
229
197
206
194
239
204
221
175
209
173
228
193
203
157
183
185
197
210
154
216
181
213
184
256
235
216
200
155
237
253
197
141
215
170
241
198
232
181
139
171
195
222
168
159
152
254
245
198
206
176
168
182
221
133
176
123
213
239
220
196
180
146
211
251
228
165
250
230
222
228
216
214
151
201
145
228
218
162
248
200
203
179
208
162
200
189
243
230
178
248
186
223
214
246
177
173
148
210
217
205
155
177
160
194
228
159
216
256
199
203
195
224
183
199
220
158
234
208
200
165
179
268
224
186
167
236
252
144
212
175
212
194
263
221
132
205
143
254
90
134
226
153
233
231
248
269
194
234
174
223
212
198
165
153
205
209
213
206
112
236
218
222
180
203
240
266
210
159
228
225
174
155
164
183
197
252
206
131
119
236
287
141
113
170
220
188
155
207
211
229
170
175
269
226
180
200
208
151
142
172
186
216
219
232
207
249
214
174
208
183
223
268
264
102
174
143
205
172
166
209
149
176
209
212
184
221
219
180
259
192
156
231
144
250
219
233
219
233
175
229
256
140
184
213
224
238
242
176
205
214
212
217
209
161
185
263
184
199
142
196
164
122
233
204
203
234
204
187
286
183
201
171
170
169
234
183
124
234
169
205
171
195
213
197
202
183
215
157
160
213
187
195
181
169
243
167
149
197
184
232
220
207
256
181
173
238
213
231
173
224
179
204
191
214
222
235
242
220
211
186
238
209
204
198
177
218
194
204
166
206
209
174
224
149
210
193
228
207
141
294
225
211
212
217
227
165
205
216
227
205
149
205
224
192
195
166
253
188
235
189
241
209
195
220
250
207
193
177
213
205
206
244
215
195
218
224
225
177
242
205
188
194
210
240
209
193
235
213
184
169
208
176
223
154
198
196
200
117
203
194
246
212
180
182
218
224
198
146
221
205
134
197
143
210
167
159
224
247
188
210
186
157
236
164
231
259
164
250
219
218
249
262
249
185
145
184
182
215
128
198
178
285
202
218
190
187
225
240
165
150
220
163
219
195
206
232
167
149
205
185
199
222
214
196
180
207
163
220
232
143
165
218
256
137
215
168
149
122
164
225
171
166
232
227
165
181
224
233
219
196
202
256
209
181
177
202
208
234
183
174
204
276
200
199
213
195
201
213
126
177
194
265
164
308
179
205
184
192
278
210
169
218
142
217
213
169
215
172
221
168
76
228
205
237
189
181
208
226
233
224
197
225
223
206
153
198
252
196
211
218
248
180
210
180
215
247
218
188
158
203
248
148
170
235
226
165
244
222
204
224
122
211
205
224
213
206
241
192
230
207
247
214
203
145
221
193
201
188
225
202
179
206
201
219
263
193
221
229
193
195
197
159
217
144
197
177
214
195
182
152
149
161
201
174
240
166
197
245
217
195
150
181
213
141
252
201
167
210
178
192
153
166
164
185
197
249
221
135
217
164
183
241
219
199
230
185
152
224
217
163
218
210
177
181
178
235
245
165
140
132
216
179
199
200
161
170
178
176
213
156
156
209
141
213
161
160
178
183
161
230
144
197
203
139
237
214
173
219
183
173
176
143
197
195
139
198
151
209
197
253
171
232
182
195
194
229
262
192
149
211
239
238
215
170
144
220
177
169
240
171
212
168
248
189
217
191
175
207
199
206
201
189
218
227
168
166
240
222
194
206
196
204
193
226
248
200
207
250
175
152
186
213
217
197
208
166
251
206
209
243
199
172
230
161
238
219
196
167
173
199
197
191
211
213
232
244
183
185
118
212
174
112
193
192
182
256
152
177
286
228
179
229
193
124
170
112
210
212
221
224
196
193
176
189
225
221
199
188
181
164
254
162
184
217
246
207
198
231
182
198
259
180
245
203
192
176
208
211
182
224
212
207
184
241
234
230
218
245
233
154
237
250
230
185
209
221
191
115
184
159
267
257
175
236
101
125
243
123
233
249
214
210
154
221
217
183
165
225
188
217
171
186
223
108
224
227
189
220
145
238
120
213
200
196
184
184
245
157
231
141
146
184
201
236
191
206
160
149
183
166
212
152
200
181
221
182
209
210
171
220
221
218
225
241
284
145
184
186
179
196
163
186
115
179
242
246
227
194
152
197
231
229
225
197
210
226
104
177
149
202
200
220
232
235
260
210
254
192
221
195
188
254
271
183
202
177
200
208
239
253
202
241
156
147
267
210
157
238
149
176
184
204
252
206
221
230
184
237
210
230
202
144
147
236
240
239
152
226
205
215
179
176
171
167
208
206
186
176
226
223
192
150
217
155
242
176
158
214
183
207
203
232
188
231
231
203
189
247
152
246
179
205
200
188
189
217
203
198
210
302
196
197
175
183
202
223
194
197
162
206
183
176
232
243
274
194
232
172
208
156
192
227
205
190
243
182
170
171
237
162
239
199
260
223
169
238
173
152
296
204
127
231
231
153
202
221
259
230
200
205
223
208
208
195
178
200
204
245
233
237
207
200
150
172
218
150
231
170
156
205
202
169
206
133
230
121
179
173
191
224
147
213
228
229
156
236
195
150
172
229
181
237
165
186
187
246
166
198
219
225
212
229
244
249
186
214
204
165
190
231
198
242
259
216
198
171
183
252
193
222
191
223
232
234
156
226
217
168
168
108
155
135
187
246
216
244
227
173
174
167
188
212
171
235
228
179
185
167
194
168
218
214
169
221
184
208
198
263
190
159
157
267
272
169
190
153
198
149
192
217
205
209
206
220
163
173
164
209
199
235
190
214
176
189
152
178
205
174
174
208
189
178
247
109
183
161
164
276
188
272
200
182
160
219
176
165
237
197
185
240
149
216
142
190
228
168
185
176
223
206
241
212
189
213
154
199
185
215
226
255
215
198
186
237
219
237
247
158
204
183
194
213
194
219
244
157
164
131
209
237
233
184
163
194
184
199
159
198
267
246
154
244
212
206
186
204
164
179
176
185
241
262
262
219
212
227
188
231
253
199
164
96
195
177
194
207
231
191
213
183
185
220
234
163
156
173
195
168
238
142
185
188
254
149
257
250
207
211
203
225
200
109
196
216
227
236
223
231
201
242
233
160
236
179
237
166
184
163
217
242
209
214
124
207
142
251
170
144
257
262
177
162
242
251
178
156
232
214
217
187
186
187
227
184
245
224
145
155
210
202
240
235
220
155
232
206
200
206
128
199
268
161
230
151
77
218
217
200
184
224
209
202
205
191
189
236
224
177
196
226
196
198
215
222
171
128
168
177
212
177
203
183
152
215
192
202
190
158
159
181
247
204
208
198
233
204
201
219
218
211
195
238
157
193
138
205
159
187
185
145
212
201
173
176
204
145
151
198
231
252
218
215
174
263
153
155
233
161
255
177
183
205
149
244
233
172
205
196
191
226
189
171
234
208
217
146
220
153
257
176
191
162
215
183
205
151
155
201
202
235
207
188
188
203
252
205
193
213
207
213
192
173
194
173
154
210
212
202
187
160
248
201
163
213
217
229
226
168
194
207
206
202
278
214
177
171
205
262
191
232
192
221
192
233
228
224
215
190
176
244
205
262
191
224
212
238
251
185
237
250
203
173
255
217
235
229
211
140
189
144
225
151
145
230
184
251
191
261
220
187
164
200
166
247
209
223
274
204
180
196
182
244
175
203
145
250
191
225
286
179
199
239
171
210
140
210
174
177
177
242
213
133
237
211
212
183
224
163
188
255
188
149
207
230
186
207
161
241
139
203
198
192
231
201
195
182
210
172
236
174
148
173
219
220
116
217
207
217
234
148
159
153
203
192
200
186
131
205
233
233
200
245
180
214
272
205
156
215
161
166
220
184
220
175
162
180
101
182
188
200
159
203
259
211
257
213
170
89
237
210
198
187
162
208
160
225
240
208
180
170
124
160
205
163
197
201
131
201
192
158
187
233
248
222
209
214
156
228
192
207
191
186
235
222
218
231
212
170
199
256
186
242
177
239
236
179
190
176
213
206
254
140
181
242
211
153
235
183
133
235
196
227
182
233
206
153
212
212
218
180
224
212
139
216
197
245
204
163
148
210
155
188
174
164
200
232
243
180
248
234
236
275
189
178
248
199
240
165
248
234
200
243
157
213
133
213
229
225
218
234
168
215
263
189
216
216
197
249
200
225
168
214
150
215
194
238
244
252
171
221
158
214
190
214
202
173
174
132
203
166
227
173
170
186
180
215
196
285
190
208
247
195
202
225
172
192
186
187
203
206
170
203
162
206
230
216
214
194
244
187
227
237
207
214
210
228
183
190
202
193
187
149
246
195
181
160
232
230
216
234
217
200
207
224
159
197
198
150
233
206
139
198
229
251
250
218
240
249
178
199
247
159
263
221
182
165
221
122
241
195
234
213
217
239
209
151
167
111
162
175
229
162
189
180
189
242
254
202
195
205
211
209
161
231
204
190
157
100
225
212
223
199
155
200
207
140
227
208
167
216
162
166
238
224
203
219
191
215
204
170
208
199
184
222
157
187
189
220
202
232
192
255
151
272
229
190
176
213
234
215
187
212
188
223
255
214
208
189
209
226
223
237
210
201
165
225
242
216
256
215
199
179
203
234
222
230
219
176
188
169
207
190
189
211
210
231
164
158
180
120
229
213
196
206
231
203
263
167
228
192
226
208
270
267
202
232
122
182
235
216
166
177
193
189
129
176
205
195
220
239
209
230
244
202
198
259
156
135
220
198
165
138
171
223
162
162
234
181
151
236
159
231
218
229
180
209
184
178
166
224
169
260
135
217
173
185
213
171
220
207
236
212
192
208
204
278
190
215
178
227
188
216
182
200
224
191
264
173
258
197
258
197
133
186
141
173
209
155
223
208
219
236
227
217
160
208
162
177
234
218
174
216
195
192
216
184
208
165
207
233
247
230
168
107
138
136
209
202
145
229
217
212
163
189
217
224
205
216
216
211
201
201
211
214
221
197
224
213
190
201
200
210
187
197
204
194
209
238
167
156
166
199
219
155
215
235
144
216
235
203
212
217
194
196
176
148
218
206
159
157
237
253
184
186
184
196
219
147
166
241
162
244
209
205
232
201
241
96
192
262
267
227
181
236
184
240
143
176
213
248
189
177
168
171
250
251
170
239
226
178
193
208
236
196
185
234
213
228
173
213
238
173
171
231
214
220
233
225
242
233
273
181
227
249
172
228
206
192
204
192
268
210
221
231
181
136
135
212
219
207
178
211
173
273
230
176
184
187
236
224
191
210
201
229
252
199
200
184
167
222
212
170
239
210
215
191
180
149
262
207
250
150
224
162
167
201
208
270
168
189
166
194
223
209
189
208
210
166
220
200
157
193
202
164
198
238
230
150
143
201
214
180
168
157
163
189
175
180
270
210
199
187
188
210
175
195
191
134
147
150
182
233
174
217
233
233
170
229
213
165
160
209
236
149
189
184
225
209
168
188
195
177
225
213
199
222
165
224
194
205
209
227
223
265
120
151
203
201
233
197
156
206
217
282
245
165
187
215
112
193
178
190
182
251
231
208
181
185
201
199
164
251
167
198
202
190
145
263
205
219
153
214
179
223
136
221
220
190
182
224
156
215
170
215
194
198
181
204
188
251
195
195
180
185
176
210
239
221
194
197
203
213
198
271
208
249
234
145
169
243
196
176
148
228
245
168
193
242
192
160
161
222
189
156
201
170
154
198
197
138
186
174
196
250
154
217
185
148
178
206
202
212
167
142
207
247
197
197
180
217
162
193
151
172
167
195
207
187
206
140
247
230
223
255
167
173
224
203
200
266
203
199
201
156
244
199
141
213
159
168
208
244
273
118
154
179
176
227
204
205
156
172
200
131
168
127
239
206
186
174
220
195
220
194
124
181
252
142
241
198
185
263
219
208
166
173
194
258
251
239
218
220
202
216
241
182
203
190
170
242
212
144
241
227
216
186
136
257
206
190
257
197
222
205
214
200
201
199
180
170
147
220
214
265
146
159
183
144
243
164
263
160
170
168
218
186
274
205
204
234
292
186
199
187
196
204
253
192
261
192
171
223
221
202
171
222
187
252
192
241
164
230
191
242
219
221
231
152
277
172
246
178
175
233
213
216
156
173
228
287
230
248
210
201
232
137
210
168
228
228
161
202
203
200
220
172
207
202
220
151
122
206
146
237
213
190
215
245
214
231
182
229
194
188
212
203
114
231
186
213
211
189
211
198
217
219
213
219
234
223
214
202
153
211
185
228
245
218
230
216
258
187
247
259
241
108
186
179
146
244
160
202
251
254
178
201
202
145
220
197
154
264
212
208
184
174
157
230
174
197
233
251
263
156
165
206
155
246
189
194
195
256
129
190
244
185
279
246
170
192
214
196
166
168
205
156
210
235
237
175
221
236
235
125
188
224
217
252
164
184
162
203
218
217
220
209
144
252
249
260
193
157
211
198
226
210
201
213
200
224
111
245
224
171
163
190
166
182
188
223
245
197
196
211
225
186
199
146
186
131
123
226
251
219
190
154
161
155
239
227
229
226
231
218
246
194
232
160
177
193
201
190
203
228
218
182
249
227
216
215
152
136
278
170
200
213
199
205
228
217
196
159
214
220
235
166
251
226
190
133
210
182
147
226
240
187
139
135
180
162
173
239
172
161
158
151
239
200
197
215
236
116
223
174
190
144
175
172
203
188
224
183
211
160
168
190
210
198
247
171
224
192
251
139
226
216
217
197
248
210
160
200
128
238
219
199
231
144
216
218
175
143
236
230
191
161
215
166
257
162
216
236
210
217
169
166
240
259
172
213
178
183
204
213
208
231
200
187
186
177
243
193
207
171
186
212
146
214
154
165
183
210
208
151
222
192
242
181
214
199
203
221
165
165
240
186
189
195
259
183
200
176
202
226
203
160
187
200
229
172
166
259
258
190
186
207
263
207
223
199
162
240
202
121
210
181
177
191
161
170
214
217
225
209
197
235
177
159
174
207
183
234
160
155
195
178
216
179
190
182
225
226
252
205
207
213
226
143
209
209
216
204
205
192
187
198
148
159
215
226
171
197
170
167
174
150
249
214
243
278
202
197
225
203
167
222
162
154
238
232
219
194
248
140
171
279
198
294
172
258
227
198
274
247
168
217
225
241
239
214
194
259
171
214
184
183
149
211
167
145
210
190
202
187
227
181
238
220
220
237
213
159
189
172
212
215
203
177
224
223
223
239
231
208
201
221
168
191
206
200
232
168
255
240
207
209
199
213
275
237
221
126
163
190
244
178
167
247
264
213
188
215
130
199
182
151
202
196
214
190
189
154
187
148
165
188
195
176
205
225
130
254
197
211
237
186
205
206
157
184
111
174
204
175
200
241
140
205
156
202
176
152
130
219
198
236
217
179
218
181
210
199
211
171
259
173
179
209
180
223
162
178
202
271
191
188
274
171
227
204
212
207
157
215
187
182
233
204
134
222
220
212
249
229
150
231
230
163
126
237
194
167
195
167
162
137
174
209
212
164
161
201
233
204
225
233
208
263
187
222
187
206
241
245
181
216
183
237
177
217
182
161
254
249
239
262
200
257
214
249
164
165
197
171
259
199
196
229
240
194
214
195
177
225
164
167
213
253
248
213
179
207
148
212
169
216
177
178
158
217
215
222
213
230
179
196
203
182
208
214
222
244
266
199
176
172
160
229
176
213
226
235
167
200
185
187
198
197
242
200
191
211
197
193
250
177
215
169
132
144
211
153
224
196
139
250
214
96
179
191
190
194
171
142
133
201
207
262
261
205
177
158
141
220
200
199
216
201
200
171
179
217
196
190
155
241
176
206
163
273
219
165
221
246
253
178
147
176
266
223
225
181
244
181
198
150
193
234
225
239
101
160
171
171
195
209
192
207
279
221
243
181
181
207
266
232
246
244
254
215
248
217
245
198
225
207
243
161
199
189
221
163
208
203
285
245
144
191
137
213
217
237
222
230
175
222
225
206
180
217
215
222
182
266
209
218
221
128
186
260
192
242
95
168
188
212
171
259
226
222
212
237
189
250
180
191
176
229
156
170
187
172
214
234
186
243
263
185
192
235
177
208
190
209
220
200
197
195
206
237
191
135
186
254
217
195
230
205
163
240
134
207
143
165
213
186
251
200
188
236
209
124
226
237
194
159
187
249
156
182
142
155
193
232
158
235
221
154
254
131
185
271
119
190
142
225
236
148
232
206
233
224
267
163
256
178
199
211
233
198
122
174
230
216
191
267
222
233
180
207
211
205
198
218
191
189
179
193
241
157
177
261
131
183
190
182
208
198
226
184
233
190
151
207
219
159
203
136
199
212
167
227
223
253
178
190
189
236
244
222
211
278
237
195
156
206
201
162
230
155
192
251
239
182
237
197
176
208
242
178
125
198
206
226
257
146
242
205
176
168
204
174
138
162
256
204
212
201
227
244
221
231
206
270
219
246
196
205
120
201
171
223
222
213
135
119
235
221
199
172
251
232
217
233
180
246
211
195
162
200
220
249
199
132
128
181
246
204
137
235
153
223
192
249
217
180
164
216
181
99
162
189
250
220
167
213
218
172
153
197
248
237
208
163
217
178
208
214
207
182
164
171
169
219
157
273
200
176
192
228
186
125
238
161
219
146
191
166
210
230
213
193
158
206
199
207
269
231
194
207
181
175
235
159
254
169
166
148
195
130
178
264
196
169
213
254
151
216
208
233
192
213
190
261
280
174
197
172
217
234
174
223
238
107
199
181
253
218
193
211
215
160
238
181
226
249
252
178
202
235
128
129
150
246
198
189
261
235
205
188
160
207
233
235
201
172
191
243
210
146
185
222
122
203
246
161
209
129
238
217
223
228
232
176
274
242
207
267
190
202
162
208
189
210
144
180
179
208
149
199
192
238
240
188
197
175
191
198
232
217
236
182
220
181
208
230
163
201
179
272
247
169
182
193
194
160
201
231
221
175
181
168
181
181
164
224
143
133
224
146
150
226
199
176
233
271
212
167
198
160
224
191
160
150
141
176
210
187
168
219
195
183
177
189
152
187
187
177
167
264
172
261
218
170
208
214
203
176
208
152
270
235
216
209
209
150
161
211
130
219
272
185
198
193
210
230
232
119
169
194
183
109
236
141
170
207
201
240
208
218
189
199
222
234
196
224
209
210
128
181
213
199
196
216
186
229
173
204
231
134
172
241
195
195
229
157
147
279
201
215
225
214
297
238
200
160
207
204
189
197
180
228
160
222
135
169
191
280
210
218
145
149
133
203
237
153
207
148
206
239
184
202
242
187
151
212
246
238
159
196
151
108
276
196
213
220
156
240
205
177
235
151
218
210
178
219
200
153
234
196
215
159
223
222
205
163
242
274
231
196
182
205
166
124
176
240
242
190
218
161
251
173
195
200
213
193
175
177
211
201
203
114
150
147
205
197
264
191
168
217
231
232
228
178
238
187
241
262
252
226
149
268
273
182
156
215
209
167
210
222
197
213
208
187
212
198
164
176
144
221
171
169
218
218
241
192
181
235
213
218
181
175
265
221
232
214
207
187
236
187
249
217
255
189
172
162
224
240
156
244
140
187
213
199
255
186
178
184
140
138
197
214
221
129
253
259
192
278
222
201
249
198
204
227
195
189
207
252
203
185
199
195
162
199
245
196
206
290
167
226
217
216
192
201
184
143
186
204
199
150
211
209
137
180
187
198
202
234
162
205
189
196
223
222
255
254
157
232
219
188
186
160
175
245
166
221
196
189
191
196
174
202
179
166
228
218
191
169
230
155
202
191
194
200
178
213
220
197
197
225
193
199
163
238
235
153
216
220
151
236
220
244
184
207
229
184
232
216
103
228
232
184
179
182
223
285
239
227
164
185
171
183
184
250
158
192
201
212
234
271
186
255
258
191
214
200
214
216
99
164
248
175
214
260
146
177
158
207
175
138
218
134
232
248
210
135
213
214
139
154
196
191
161
180
148
227
241
180
199
179
213
181
213
205
184
211
188
201
196
196
182
191
233
209
171
191
183
144
198
215
189
169
262
210
190
177
270
193
163
206
234
195
225
145
162
197
191
191
173
234
240
171
175
186
177
192
241
185
166
207
227
167
212
143
152
203
169
232
252
192
129
249
258
251
188
211
232
184
231
244
214
225
236
187
219
189
151
227
208
177
245
208
214
250
245
190
196
158
190
199
164
228
191
276
183
167
253
216
202
226
221
214
141
245
193
251
186
254
239
208
223
175
236
206
201
231
214
250
162
182
205
187
248
187
198
176
111
221
218
222
222
164
203
196
124
180
199
217
236
208
214
234
195
223
177
186
207
236
212
234
142
205
225
189
203
235
174
211
251
204
216
127
222
130
218
196
236
209
143
175
126
180
193
214
198
145
194
124
168
156
178
254
239
219
184
212
202
161
176
197
201
192
176
238
190
198
188
156
122
164
207
249
135
108
229
251
179
136
211
256
228
258
161
224
183
165
217
179
222
159
169
195
206
118
236
192
113
220
203
177
228
192
221
178
223
223
209
157
224
212
204
210
206
218
188
198
183
178
219
241
211
169
228
286
255
174
185
188
164
191
187
243
181
137
199
208
186
216
155
196
209
202
219
151
200
168
211
207
279
208
264
197
186
181
183
253
224
172
215
176
170
203
243
129
170
179
203
242
151
200
215
215
211
216
219
145
181
218
175
204
160
181
181
191
178
186
177
221
143
152
225
173
188
225
229
214
193
180
243
205
252
125
216
201
226
223
216
283
159
220
218
171
166
163
184
288
185
126
191
201
168
205
152
146
198
229
228
203
221
248
201
198
268
195
193
171
248
187
178
206
207
202
220
277
218
215
189
180
234
165
190
241
189
194
226
226
239
139
217
180
228
207
129
205
192
196
262
208
278
271
212
219
224
198
237
302
142
244
193
214
230
125
208
206
201
206
203
174
232
236
260
199
184
264
170
208
226
261
202
229
237
204
247
203
233
178
117
182
250
233
220
177
177
230
175
174
241
183
228
162
200
142
211
173
208
235
189
164
209
216
273
259
188
166
207
215
218
199
275
201
221
224
160
151
162
205
217
195
196
237
214
169
165
181
185
208
253
201
234
233
200
213
205
191
175
228
231
176
210
157
229
178
217
229
230
171
217
245
205
154
147
196
224
217
213
157
225
185
116
192
200
208
203
255
220
202
166
141
223
164
181
195
235
155
235
196
176
203
246
245
164
183
175
215
178
161
155
213
230
201
181
237
156
213
227
117
225
203
251
250
191
242
169
194
178
197
184
194
202
150
145
215
147
181
210
214
180
227
202
229
168
203
158
221
237
222
214
271
158
238
154
228
142
208
237
234
231
268
256
209
194
183
170
178
199
177
167
250
206
251
229
201
247
187
155
189
163
238
266
196
222
177
183
237
221
249
172
206
231
248
217
255
202
231
213
169
188
152
192
237
198
162
305
239
240
236
267
151
211
181
195
259
241
241
198
204
190
221
204
209
212
215
153
204
170
192
232
219
257
220
245
197
200
218
258
127
156
174
227
271
212
164
149
199
103
245
167
211
182
215
240
162
229
205
259
138
190
186
187
201
243
171
132
217
222
136
209
216
275
143
204
180
191
226
207
178
221
182
181
179
218
209
214
245
218
193
139
151
216
189
219
200
187
135
175
204
169
206
215
212
206
229
198
204
244
223
120
165
230
184
165
197
267
229
186
184
201
195
212
257
193
205
251
217
241
156
163
238
246
187
228
183
271
189
190
209
264
161
195
159
195
190
292
221
225
152
218
221
147
204
244
166
206
153
213
249
190
190
191
202
211
236
198
224
255
250
222
221
128
262
215
222
151
220
227
226
188
215
173
192
245
191
241
253
206
207
164
189
176
186
234
143
206
166
221
220
201
128
208
213
202
157
220
257
215
237
278
181
157
259
187
220
161
220
221
114
183
216
259
200
267
231
207
257
230
218
207
246
238
167
229
228
171
262
177
188
168
221
231
213
232
128
166
225
220
175
113
209
191
122
207
233
209
256
272
188
177
243
192
176
237
213
247
189
235
163
188
211
141
224
187
264
191
265
184
206
214
241
193
196
146
134
213
230
163
237
221
231
151
202
187
210
164
209
219
251
273
168
240
203
172
226
227
177
248
174
193
210
209
210
232
203
250
208
182
197
204
245
206
120
172
179
240
202
213
207
200
204
186
152
188
201
114
181
173
212
210
194
223
200
231
151
251
249
137
222
172
154
201
270
146
187
188
245
177
207
209
205
182
246
229
190
224
208
174
145
234
206
166
206
198
203
219
182
160
224
242
278
182
194
212
102
220
242
254
255
229
193
164
182
215
146
154
166
150
234
225
265
195
225
226
143
210
175
237
228
198
105
163
160
232
188
202
144
180
162
221
225
171
216
178
213
218
204
207
165
252
193
226
189
216
225
236
253
199
204
200
238
197
220
179
191
154
217
229
207
182
196
239
192
154
184
254
224
199
255
176
231
190
216
211
210
164
259
189
152
186
192
191
144
229
199
216
170
175
206
223
206
186
155
220
249
228
203
203
239
188
147
227
245
184
169
223
211
276
181
262
137
213
258
211
172
216
162
182
226
145
204
186
174
204
249
187
216
233
206
187
113
181
202
137
214
174
216
242
219
175
193
166
211
165
177
178
160
216
177
178
227
195
204
180
215
163
185
192
177
160
186
273
165
188
230
215
131
227
231
251
188
214
178
236
215
125
152
221
242
214
205
158
228
221
231
192
150
242
238
216
205
188
175
174
183
220
218
223
119
187
187
211
252
204
158
221
251
188
248
236
204
248
217
132
204
227
234
180
159
297
176
218
193
276
195
250
261
195
190
246
239
182
173
221
165
236
194
229
280
199
177
233
229
136
215
121
271
177
166
228
156
199
155
190
144
191
157
282
206
193
220
191
224
223
220
244
212
222
221
225
170
101
199
246
140
240
211
131
237
226
276
164
119
236
262
191
191
232
166
277
204
234
211
200
161
222
207
235
166
163
263
127
140
152
202
79
185
166
200
204
161
196
157
171
190
193
251
237
229
210
255
186
181
132
237
203
207
216
178
185
238
209
135
194
208
165
135
206
206
136
217
169
228
194
206
207
157
245
155
231
150
210
237
188
212
113
169
225
218
201
239
248
155
199
197
243
170
234
234
199
224
214
197
211
178
183
171
130
182
223
173
191
122
183
159
206
198
227
173
201
200
269
285
245
230
222
220
120
198
227
176
164
235
234
212
239
196
220
225
244
166
230
144
212
223
263
278
184
235
204
177
183
164
228
123
198
190
184
202
199
213
148
117
188
135
174
209
205
187
144
200
248
223
187
212
116
244
233
255
170
251
207
201
255
225
211
177
203
232
231
194
213
163
253
242
209
169
203
189
271
194
270
194
192
241
223
188
191
216
234
232
161
228
232
158
176
183
147
164
199
242
218
175
219
272
207
183
169
252
184
142
215
186
186
173
168
171
194
151
202
159
206
170
232
213
148
200
162
267
200
174
218
174
156
175
220
209
213
176
170
212
211
211
222
237
179
152
252
211
254
259
175
158
171
147
260
197
207
135
278
217
204
167
152
261
236
124
171
210
227
200
215
187
222
228
201
233
218
199
215
183
156
223
222
180
241
152
234
221
258
213
232
192
125
246
200
237
204
226
201
181
205
224
224
178
190
187
157
200
246
259
163
124
149
197
179
215
205
254
223
199
137
185
182
205
198
161
232
157
233
171
204
203
157
151
148
240
189
216
232
217
234
242
257
204
214
211
175
193
200
226
234
174
227
151
175
236
228
203
234
167
135
214
159
193
241
270
204
139
132
264
248
204
216
132
198
203
212
188
225
201
221
182
200
162
254
241
253
158
197
181
197
197
219
190
211
207
198
185
241
247
231
191
226
180
241
209
232
160
247
162
106
195
169
188
214
213
220
213
224
162
222
272
174
174
150
194
186
161
198
198
163
234
213
167
225
195
175
178
197
261
179
212
264
183
212
156
204
170
128
245
167
227
207
137
179
220
212
215
175
271
225
226
157
172
165
234
253
238
208
259
211
251
163
198
213
182
228
246
200
233
141
123
163
250
209
237
210
215
198
204
194
150
182
249
221
240
203
228
244
132
202
235
144
131
183
175
214
181
229
147
157
191
220
194
219
143
196
162
239
141
204
197
153
184
231
223
219
239
201
171
259
186
194
186
234
172
228
231
179
184
235
232
203
189
191
203
269
231
183
164
185
219
174
199
188
230
207
250
206
220
248
188
249
183
216
189
161
230
192
179
291
153
210
113
174
200
215
205
179
152
221
193
258
230
230
167
186
173
265
200
117
195
182
213
161
211
190
176
232
242
146
232
153
233
246
183
176
165
157
217
158
217
180
131
188
181
148
163
144
182
233
173
196
163
204
175
180
202
193
207
114
214
189
194
243
203
169
249
231
221
155
153
240
229
252
169
190
207
225
163
194
218
217
248
262
219
127
194
192
185
199
215
168
203
198
173
251
186
225
168
193
214
171
229
200
160
207
192
207
231
242
177
249
151
222
231
256
197
187
234
184
278
181
222
187
256
172
185
115
151
196
238
229
231
187
161
209
200
238
168
175
222
180
204
231
205
189
209
144
240
168
217
140
205
181
243
208
256
201
190
191
179
139
198
163
201
218
235
161
164
194
242
140
139
213
163
165
226
233
218
237
177
176
253
246
170
278
130
198
212
218
239
230
194
216
197
251
174
174
202
212
198
200
172
223
231
241
227
212
212
199
176
268
143
201
220
220
226
209
218
192
143
245
219
216
168
146
176
159
183
219
153
196
277
118
137
178
227
209
179
205
195
248
266
126
197
205
274
176
170
195
182
177
205
218
129
225
208
213
235
172
188
222
199
170
167
227
143
220
193
195
165
229
217
206
180
171
190
136
192
236
250
184
276
190
234
207
250
166
182
237
232
224
220
183
222
245
187
182
231
182
189
172
201
87
228
191
219
193
172
164
172
195
150
179
207
211
132
176
136
149
188
268
182
165
207
212
210
189
188
215
229
221
158
199
200
246
201
222
184
196
249
240
231
185
236
225
172
230
173
218
257
170
224
206
206
171
225
182
227
168
287
298
221
170
201
208
140
223
191
173
212
165
205
179
224
126
193
233
205
144
158
187
198
150
209
208
200
200
256
225
155
235
190
221
194
211
239
245
184
251
159
191
198
237
191
154
216
207
251
229
224
260
202
176
219
214
195
207
145
188
204
185
209
212
181
202
221
160
194
186
214
187
205
206
193
185
194
175
200
222
233
201
247
224
144
195
148
166
180
175
210
180
181
237
153
206
171
196
205
168
160
224
190
172
190
251
176
206
160
140
195
176
160
223
256
199
151
228
234
193
257
201
181
206
215
167
226
213
170
207
196
224
229
253
147
227
200
189
166
193
285
163
211
154
205
196
180
235
203
222
197
181
176
170
212
193
134
232
221
219
156
194
237
263
142
181
163
190
189
165
177
223
195
159
111
251
244
154
228
158
226
220
261
199
165
187
156
171
218
202
247
199
192
197
199
188
165
236
169
162
128
190
233
209
159
225
269
248
213
214
216
204
238
240
175
171
177
190
191
180
237
221
204
226
209
192
136
173
153
232
150
272
238
201
229
196
209
233
204
227
162
234
239
193
254
246
211
162
224
172
251
208
181
184
206
218
201
165
157
235
199
203
194
226
186
148
220
273
243
183
143
173
176
205
161
227
234
127
223
124
181
204
167
166
212
205
149
156
153
256
247
216
208
215
163
218
166
247
203
166
164
211
175
195
217
190
228
220
223
101
218
202
232
175
190
242
198
170
214
176
198
213
163
259
202
206
245
213
204
242
172
217
205
206
284
189
173
213
173
227
219
189
220
231
228
183
256
191
213
178
197
187
221
138
136
182
141
280
138
181
218
215
192
242
225
177
226
168
215
210
160
196
171
167
189
184
184
211
188
190
211
178
238
234
221
248
168
273
225
211
153
234
215
185
195
192
213
230
208
229
196
132
211
212
183
155
238
240
170
156
161
148
177
236
209
205
155
183
216
237
250
247
210
198
229
193
188
200
183
221
194
228
204
244
250
197
185
264
198
221
162
186
203
182
189
209
206
273
148
190
185
190
234
194
210
224
193
214
217
119
205
200
236
157
180
237
186
192
224
285
198
226
176
212
186
217
139
195
237
203
229
218
204
231
228
208
180
267
222
214
143
201
195
193
191
220
211
146
168
125
154
213
204
208
272
194
266
219
228
225
196
254
293
161
181
201
180
221
140
239
183
171
247
251
183
218
191
205
210
202
218
202
231
236
235
235
220
209
141
224
174
183
174
249
230
244
206
212
228
218
110
197
237
173
226
227
149
180
154
130
263
151
190
205
196
221
197
153
229
230
210
223
204
229
178
193
244
244
246
169
115
238
153
203
164
144
177
205
169
246
213
129
212
189
222
235
231
284
233
231
277
179
122
202
149
201
192
236
206
202
224
162
191
232
149
145
231
206
177
234
210
201
266
192
222
193
195
203
169
200
238
154
201
181
246
245
185
196
187
152
123
239
189
211
139
161
120
250
193
208
232
236
210
95
191
202
179
196
200
222
212
221
141
239
189
200
149
188
182
200
249
162
184
209
157
225
260
240
172
227
208
225
106
200
217
139
234
208
179
237
184
168
204
229
226
222
153
187
200
228
203
181
178
180
177
163
167
178
196
185
124
203
157
251
206
244
245
253
242
245
175
151
221
220
214
180
218
247
173
238
210
239
216
205
165
190
274
222
214
172
188
144
243
212
225
189
226
208
187
149
249
242
206
228
158
149
168
211
202
240
186
241
230
218
147
199
209
229
224
229
132
200
120
213
272
223
126
235
215
197
237
229
202
133
191
166
220
206
137
217
224
255
199
213
204
204
144
203
172
235
246
174
162
186
196
221
215
184
252
233
206
221
217
254
232
127
234
180
260
215
193
204
159
212
220
248
162
187
146
247
231
227
213
236
158
226
144
211
245
212
242
167
221
207
204
218
232
125
222
257
213
219
172
143
219
175
138
207
218
228
209
180
261
220
166
139
176
208
198
226
202
239
150
186
222
176
134
184
245
220
100
176
134
172
285
211
105
185
218
221
188
214
137
243
233
214
216
273
214
192
194
201
218
118
206
168
218
226
207
196
191
260
181
241
225
182
238
193
231
143
201
211
277
197
182
230
185
187
223
155
190
142
220
226
180
251
190
198
239
174
231
213
292
244
192
242
197
219
207
225
264
227
228
165
167
193
150
257
242
210
156
245
121
150
176
202
176
221
178
203
220
172
242
219
260
166
240
183
190
173
175
260
156
258
159
180
236
188
235
201
235
220
162
242
182
238
188
157
161
176
231
180
182
195
202
214
182
152
254
223
187
236
226
219
248
242
185
144
212
216
135
193
226
195
190
204
168
216
177
192
238
211
227
261
168
159
187
156
166
225
170
183
227
117
244
214
178
245
139
211
243
140
183
241
195
215
202
215
210
161
179
220
194
154
143
264
230
228
181
182
239
231
223
179
177
264
181
182
187
134
134
190
249
247
211
175
196
168
213
175
202
101
262
217
187
201
182
243
195
206
195
212
236
221
230
176
198
132
252
197
133
188
165
247
160
239
142
257
193
208
170
165
206
198
208
146
212
235
236
189
250
118
176
160
121
224
210
197
185
147
178
200
224
165
186
168
195
247
213
228
237
178
218
170
174
212
223
208
235
216
167
191
189
159
166
162
246
192
219
169
195
177
214
146
220
249
184
168
201
182
217
234
179
149
187
234
197
237
137
213
181
189
172
204
156
180
141
137
272
230
245
249
237
216
208
205
216
129
178
247
263
197
213
231
227
291
195
262
207
209
195
240
200
249
212
178
182
184
169
240
183
199
232
163
177
224
176
188
90
141
153
195
234
277
242
222
216
240
183
195
156
237
166
189
202
161
175
211
248
178
199
174
148
189
144
216
264
251
177
241
212
222
194
157
153
223
211
206
210
152
157
185
234
246
170
151
208
221
153
308
147
144
225
184
165
253
170
169
144
235
209
210
229
123
149
166
207
201
169
212
137
203
218
186
229
227
145
203
212
213
210
203
233
178
158
266
154
169
229
223
231
139
171
228
159
199
215
176
211
209
192
181
216
228
162
151
183
254
239
215
234
217
235
162
216
207
201
139
127
175
219
193
195
218
175
113
219
163
176
209
251
192
208
132
124
215
236
236
264
192
222
239
214
198
212
164
193
245
210
190
205
224
172
189
219
251
207
200
224
229
215
200
136
220
193
230
233
191
183
173
197
167
196
254
186
218
167
195
179
142
273
202
182
152
215
199
167
153
227
192
235
184
210
204
168
136
233
183
223
187
225
195
247
235
191
224
240
188
200
220
254
218
280
226
174
192
249
167
165
176
257
159
213
220
224
156
215
176
206
209
241
209
213
161
202
165
204
241
246
204
134
225
179
227
196
223
154
243
190
167
241
185
223
208
194
256
247
128
180
199
222
189
145
208
231
199
174
237
192
154
207
150
131
209
145
219
239
228
233
207
177
225
167
205
194
235
252
145
172
184
255
240
168
198
160
208
174
273
168
217
211
233
271
201
239
164
219
188
219
210
215
184
238
173
118
216
116
162
207
203
188
212
231
224
161
202
165
210
180
235
176
189
125
206
148
198
265
225
231
213
186
133
206
242
225
214
204
206
201
141
187
158
142
186
213
236
214
148
213
202
202
226
242
212
184
241
229
210
177
154
207
214
228
198
194
263
234
195
274
164
218
196
186
195
260
218
186
222
199
190
231
207
210
176
230
177
171
111
210
192
237
194
184
259
233
229
140
166
200
193
163
156
190
251
251
161
168
206
232
147
162
177
144
165
248
208
174
228
209
242
185
179
226
203
186
140
174
207
157
243
216
128
272
233
159
238
258
171
163
173
273
194
186
248
191
203
207
232
211
207
166
179
234
165
262
181
160
204
279
201
174
240
212
212
218
198
155
241
215
239
177
229
193
189
221
176
163
235
217
243
174
180
181
167
172
210
168
187
254
195
201
187
114
181
139
198
209
195
241
186
215
156
173
193
203
227
149
190
165
184
301
284
191
192
190
230
189
155
290
230
183
190
233
167
166
230
217
198
206
226
199
202
215
205
118
164
163
197
225
205
195
132
231
181
205
222
196
303
181
167
245
213
236
173
214
212
223
176
198
251
195
237
174
144
178
208
140
176
205
206
162
108
230
253
185
284
225
210
213
206
183
171
219
242
212
198
184
221
163
270
190
168
196
220
183
227
153
209
244
255
183
224
231
217
217
154
266
209
209
202
248
179
236
193
242
199
263
283
216
215
199
304
240
168
180
204
210
220
157
211
238
196
207
172
243
253
190
193
236
168
248
224
201
190
197
186
121
190
160
230
217
239
203
195
189
208
167
122
213
115
190
251
147
190
194
253
188
223
252
204
223
228
212
158
173
199
282
220
231
217
201
176
180
283
176
225
112
236
192
218
207
232
186
274
214
228
245
170
216
141
180
221
198
158
189
166
189
162
141
178
215
225
238
214
178
164
184
227
250
186
130
180
205
179
246
244
259
96
186
237
124
249
218
216
162
182
195
198
176
195
228
187
184
151
170
219
183
155
216
151
223
203
206
201
172
202
180
222
182
208
243
198
162
222
271
144
200
224
222
260
246
176
172
151
254
258
263
174
175
219
126
142
166
185
255
120
199
212
190
213
197
269
195
212
247
194
266
177
184
219
184
131
213
238
199
199
197
187
180
252
190
190
212
193
221
195
222
201
181
213
183
168
103
261
197
235
226
158
220
166
157
159
200
159
203
244
293
280
242
150
239
160
197
133
218
283
160
163
236
211
184
205
173
174
186
188
228
162
204
210
180
182
231
135
131
154
218
145
196
253
237
230
193
216
214
241
184
201
266
193
201
189
134
203
182
218
171
205
194
218
232
157
222
171
222
144
227
191
192
199
203
213
155
197
177
220
181
232
148
140
242
157
212
193
211
245
194
204
226
165
253
195
203
211
173
201
212
248
159
251
181
173
188
250
200
178
204
222
235
237
153
139
187
184
195
228
230
168
169
263
219
233
237
189
219
174
219
198
137
199
157
241
253
204
165
247
136
178
210
193
252
275
197
162
235
239
185
197
244
213
202
156
255
193
230
227
155
226
210
109
174
143
208
218
203
201
219
193
179
196
206
218
187
164
187
222
241
185
117
215
158
216
216
199
216
201
195
227
199
278
195
236
161
228
144
160
169
199
180
103
180
201
225
223
243
191
168
246
243
195
214
216
172
172
232
190
240
242
208
165
262
184
172
144
249
158
215
227
233
128
189
219
229
245
265
163
214
156
197
207
229
212
180
254
182
223
225
224
222
224
182
201
165
223
201
191
228
239
167
183
187
179
231
192
182
94
208
142
208
164
169
181
149
188
187
241
154
149
236
188
199
165
226
227
259
227
207
143
154
184
191
188
237
171
213
213
211
173
241
199
178
189
197
182
180
176
195
226
243
160
258
171
194
183
175
247
215
194
232
197
238
160
177
173
203
128
157
161
163
163
252
210
180
251
222
238
199
218
226
221
178
185
153
209
261
153
219
240
203
208
176
227
281
189
186
105
271
207
202
206
181
248
218
167
219
193
178
239
207
180
213
151
184
163
272
218
258
224
206
197
187
210
142
116
206
277
197
177
173
207
179
270
233
189
223
208
188
181
139
144
201
200
182
216
176
223
252
217
207
280
223
235
181
171
213
198
232
224
256
240
227
255
252
181
162
156
165
243
179
211
248
263
215
207
233
120
234
180
165
197
216
261
227
250
192
204
162
157
217
275
230
204
225
228
140
187
205
185
157
250
207
250
168
229
150
208
192
165
224
163
206
185
210
133
245
138
238
197
201
129
139
219
221
163
186
207
226
277
224
168
206
211
227
239
204
163
229
194
148
141
200
198
195
202
100
187
226
162
177
198
196
267
222
231
186
179
169
256
203
223
217
116
186
178
232
182
213
230
219
193
146
188
244
177
182
163
225
216
238
175
151
168
221
205
215
222
157
170
184
220
192
169
187
193
271
153
237
214
118
214
219
129
191
219
193
197
233
189
224
108
151
217
203
211
198
204
176
205
234
256
170
212
251
173
223
212
204
239
209
189
243
225
118
182
149
180
253
116
175
184
235
138
199
162
245
219
228
184
205
157
167
233
251
233
105
173
238
256
161
169
189
179
190
219
196
233
185
199
135
158
192
275
187
206
106
141
252
144
186
208
154
240
183
181
261
142
230
227
180
198
181
190
125
181
173
174
204
144
221
208
177
204
193
209
212
196
202
187
154
198
166
243
206
238
207
202
225
173
198
178
205
234
198
222
223
210
191
238
214
202
230
196
198
171
170
180
185
220
151
204
172
198
202
256
227
229
194
161
204
163
151
180
228
204
250
238
170
211
225
242
232
263
235
260
238
184
184
273
223
174
212
212
198
162
186
214
245
204
247
167
207
199
263
214
151
227
210
208
173
209
211
285
178
188
198
239
139
196
247
131
223
204
211
189
154
158
238
234
165
223
202
121
208
181
220
247
94
198
204
182
178
192
214
274
179
172
230
197
189
249
143
246
181
145
238
257
210
207
220
197
132
180
118
252
179
238
174
199
227
180
163
204
183
225
171
178
200
248
206
204
200
157
209
258
264
238
259
203
247
214
258
190
200
250
187
164
169
231
214
213
201
276
126
244
199
190
189
181
219
170
174
127
257
179
175
210
193
204
217
158
192
209
225
219
195
173
265
183
237
217
178
260
210
223
158
214
188
222
234
177
191
198
169
209
224
186
211
211
190
175
185
175
200
174
212
226
204
206
216
223
186
210
167
220
266
169
195
214
155
190
224
260
222
219
191
168
196
183
232
206
178
198
226
219
201
186
248
194
248
203
174
157
195
283
194
134
194
210
143
196
190
189
182
162
174
190
184
111
209
179
216
164
209
226
229
194
208
180
237
240
246
171
170
177
148
187
205
185
165
177
144
200
253
226
247
208
200
157
210
247
175
208
155
259
182
177
224
260
228
198
215
207
245
227
200
200
172
258
190
223
125
161
229
177
197
223
239
142
168
219
203
199
178
193
218
187
243
184
179
209
207
195
218
203
170
269
209
238
186
155
164
249
226
188
194
234
208
222
253
178
206
245
146
185
173
198
238
229
226
203
163
178
207
234
203
207
210
219
187
218
164
201
249
204
251
191
178
237
227
204
193
234
199
117
188
223
141
129
157
197
187
164
225
229
185
186
209
229
242
226
168
202
239
215
133
244
225
236
207
195
241
156
221
230
206
217
224
173
200
200
239
258
195
182
147
182
233
149
203
151
232
152
202
201
173
208
201
167
222
173
180
206
182
193
273
201
235
240
192
270
236
200
195
173
156
187
265
212
188
226
172
240
226
190
209
210
178
207
190
205
159
157
158
240
201
234
197
204
182
247
157
284
214
218
164
233
267
171
230
174
272
246
205
225
256
235
205
216
182
153
213
268
238
250
153
163
195
214
171
189
204
198
232
136
200
198
187
153
233
208
223
219
186
214
186
195
236
170
258
190
179
218
214
265
189
195
195
195
288
171
185
208
214
159
169
155
186
225
236
139
260
162
182
198
167
190
188
202
204
211
159
196
226
205
251
280
226
185
178
248
198
201
189
163
159
178
145
209
239
165
191
189
217
233
205
246
149
262
166
240
157
264
185
211
252
188
202
153
157
151
202
181
240
215
187
223
175
123
185
235
206
169
198
214
239
233
220
167
210
204
209
185
239
156
239
187
143
129
241
187
144
182
253
206
190
213
214
199
222
231
211
177
102
138
190
237
178
192
210
185
251
234
201
220
175
137
194
218
224
253
200
174
212
185
78
207
179
193
208
266
185
189
225
150
210
173
212
244
210
198
241
129
161
166
243
188
136
211
216
209
143
200
227
286
189
247
210
177
138
130
161
206
197
218
185
243
199
227
216
174
228
152
163
246
208
143
171
210
201
147
217
204
135
239
138
183
229
251
223
139
213
224
198
225
235
240
224
190
151
213
234
195
287
150
162
252
216
209
136
215
219
192
206
222
203
226
180
191
208
149
113
172
202
222
188
224
196
225
196
242
193
242
184
147
189
166
175
209
215
217
240
171
224
267
166
169
199
155
200
232
158
206
205
233
203
209
222
190
209
185
189
211
227
201
166
173
227
210
216
218
160
120
219
194
209
122
173
211
250
157
160
178
124
225
204
197
233
242
187
236
205
222
249
225
278
166
186
230
294
234
223
181
205
229
163
203
221
255
218
157
228
218
207
180
231
169
233
232
218
191
185
247
251
201
215
186
160
199
140
206
196
200
164
170
136
229
197
233
169
172
176
204
201
185
206
201
238
237
199
229
178
222
260
190
159
187
229
230
198
216
252
202
193
167
228
255
244
190
239
202
161
172
194
149
158
173
191
174
168
203
206
203
178
242
165
229
239
176
158
204
233
196
227
190
244
206
184
187
207
196
171
214
192
199
211
221
160
241
221
278
220
167
244
260
221
182
235
248
250
103
237
222
281
177
251
185
193
232
253
129
204
218
190
230
227
219
233
201
208
198
230
183
175
220
186
175
199
228
179
177
168
181
183
103
217
161
226
250
182
212
158
167
242
146
148
179
203
171
164
190
228
217
236
182
185
118
229
200
188
175
238
186
183
210
191
206
233
165
236
94
242
237
261
179
127
185
198
165
190
229
176
235
154
191
213
210
246
205
213
177
223
169
169
176
169
171
224
259
194
205
132
125
199
153
233
123
184
235
194
252
156
150
172
154
235
159
210
177
200
208
205
178
172
215
177
208
170
230
165
178
149
189
186
229
171
194
214
235
204
168
168
140
137
216
221
248
166
186
231
175
187
194
189
206
179
225
198
271
168
221
224
182
210
197
205
222
234
241
237
191
217
243
222
225
213
282
200
174
233
245
216
172
173
156
186
207
207
239
225
231
213
229
171
170
164
186
161
204
222
209
205
149
190
226
170
152
191
213
237
278
181
258
206
190
175
231
187
194
226
206
223
173
218
241
206
221
235
231
200
210
222
176
228
248
241
181
211
149
161
201
197
202
236
207
206
159
211
211
204
212
187
261
206
147
158
214
195
193
227
119
173
209
231
163
206
190
124
136
133
184
245
259
169
231
178
199
225
173
219
197
232
250
250
212
244
231
225
216
188
153
130
234
247
258
234
133
260
217
220
164
228
172
189
217
139
163
192
195
182
217
206
172
195
167
207
147
206
179
189
193
157
205
200
190
200
226
235
190
189
225
230
237
220
201
158
248
256
183
179
262
237
136
201
168
218
240
215
199
179
233
220
140
191
198
220
223
228
199
216
184
198
174
231
186
210
249
233
174
219
204
207
160
239
201
208
116
224
284
172
162
143
211
148
162
202
193
172
182
205
239
227
166
194
210
175
216
163
228
182
233
210
166
196
201
240
197
248
204
202
195
150
183
120
167
206
247
168
189
149
184
106
256
192
180
202
247
196
223
193
176
141
138
194
160
158
220
257
222
178
194
200
195
247
198
247
252
248
182
231
173
203
238
193
229
216
200
138
207
192
158
235
244
196
197
191
200
152
226
187
193
140
212
196
253
236
221
188
197
212
199
169
163
200
197
240
214
181
256
170
175
191
190
225
267
225
151
99
163
229
250
203
218
183
199
196
235
180
214
188
182
215
188
220
203
227
174
148
205
250
218
190
141
218
180
150
186
139
228
161
218
195
196
232
124
103
175
175
196
222
256
208
157
213
174
205
209
162
230
226
200
193
215
201
213
230
155
269
199
165
198
190
252
185
248
137
231
199
259
248
201
170
229
182
146
229
149
186
257
197
209
252
216
249
217
264
242
200
200
182
247
200
205
235
211
134
203
170
175
197
224
215
240
229
151
186
165
197
171
189
225
225
143
195
184
186
205
223
183
223
181
234
216
210
181
200
170
186
183
173
257
193
215
143
174
152
197
199
208
247
171
228
195
248
187
216
210
213
218
160
198
218
173
205
225
250
175
193
203
196
265
245
139
232
229
247
189
165
212
197
197
164
153
179
245
181
213
213
217
228
175
185
196
153
183
215
228
225
229
234
199
167
236
171
196
190
263
246
137
230
166
180
144
161
212
228
200
221
280
232
189
224
232
181
191
173
208
235
237
221
132
181
227
174
184
168
187
192
230
223
219
157
156
231
179
210
113
259
186
233
243
183
255
270
222
234
225
237
261
253
143
171
145
162
250
213
153
210
190
208
205
231
261
205
178
201
187
172
212
247
195
177
200
173
200
207
177
272
128
234
211
201
158
207
273
188
232
157
234
177
189
246
162
234
203
174
210
237
234
229
199
207
193
251
208
230
249
166
162
158
187
205
211
187
241
157
216
182
243
220
224
225
233
183
189
210
265
191
249
228
171
147
194
235
211
212
253
232
209
167
142
230
233
177
163
275
143
163
187
170
205
155
255
224
221
224
230
245
202
168
238
150
206
214
148
167
181
168
207
219
125
220
142
125
228
177
191
171
189
186
185
223
259
214
223
193
207
204
206
234
267
191
200
248
214
235
202
194
167
225
243
201
153
259
210
233
197
209
173
166
199
181
168
213
166
214
229
168
226
218
167
162
142
137
145
171
180
169
226
203
182
177
216
150
125
164
181
241
202
286
217
154
214
210
192
206
214
223
265
186
246
198
163
203
164
288
199
208
222
209
226
249
195
176
257
216
207
200
201
179
238
238
224
230
222
236
187
160
203
189
151
146
147
203
145
172
162
221
161
230
164
167
185
165
205
217
204
186
158
250
206
183
236
170
197
173
219
168
239
186
226
276
205
160
196
204
212
321
221
242
191
176
197
190
198
155
151
185
136
228
237
224
206
208
278
194
215
218
209
171
231
186
191
170
236
153
220
266
142
240
210
193
220
236
258
156
153
216
151
198
147
244
171
224
192
223
175
211
239
184
201
251
183
230
238
149
209
213
146
193
183
151
220
171
201
164
205
214
220
197
195
220
167
207
188
174
219
217
165
215
223
211
247
146
291
140
225
204
202
184
186
174
195
167
194
215
229
231
205
239
253
212
224
183
172
154
213
170
155
226
216
160
205
249
202
240
163
223
202
102
175
181
202
232
139
194
218
177
212
193
175
243
198
220
156
195
149
218
186
218
187
230
274
186
245
183
204
216
227
215
223
177
178
224
164
181
185
239
273
208
266
249
168
161
228
146
254
201
228
244
162
229
219
218
221
166
155
220
243
211
161
191
173
257
204
136
183
174
226
235
172
259
248
199
140
207
182
248
201
230
226
147
183
213
180
170
175
157
167
164
236
249
263
210
261
159
169
179
285
145
197
159
173
256
242
138
208
217
223
249
207
248
233
191
137
208
228
228
168
148
194
226
171
273
171
142
169
128
198
238
188
222
214
209
191
208
193
193
168
145
167
235
256
234
162
171
221
167
232
147
160
196
261
242
230
180
153
213
185
194
244
135
202
225
199
219
215
189
204
203
240
208
250
209
223
154
109
217
232
204
230
209
220
196
235
163
155
199
246
230
173
173
181
155
181
144
238
146
221
163
232
189
205
211
170
218
209
194
191
238
256
230
206
205
225
206
262
224
251
184
229
235
236
201
200
101
248
196
279
247
197
170
252
198
196
177
209
196
166
212
227
233
185
202
177
199
161
214
264
246
199
235
169
279
130
166
235
201
221
261
215
177
175
226
155
111
237
183
176
171
231
206
196
168
196
199
220
174
179
231
185
180
215
188
287
175
259
262
172
175
150
286
202
265
210
266
206
211
278
225
133
206
136
249
218
232
223
200
171
188
174
186
151
220
195
224
160
208
222
225
151
231
216
175
176
165
162
154
230
187
216
194
196
187
184
267
170
199
218
249
202
238
162
252
155
188
229
116
218
195
154
218
192
188
151
183
202
196
172
208
151
178
140
196
140
186
183
235
214
159
210
233
229
198
113
201
148
165
180
255
167
192
245
242
142
261
185
219
195
190
230
225
199
155
241
217
181
239
208
149
231
197
198
220
176
148
222
192
140
155
208
238
206
122
245
200
185
207
163
91
209
218
218
158
243
262
181
213
228
153
236
195
175
224
165
221
168
210
239
257
187
192
150
144
211
168
213
207
125
195
224
195
253
237
180
195
185
179
151
196
218
159
271
231
226
233
175
187
197
179
185
225
237
219
244
199
138
165
153
262
229
287
257
153
196
148
190
199
213
210
181
155
214
233
189
223
187
224
155
211
158
215
194
192
237
227
229
210
209
197
261
195
201
177
190
254
164
150
271
177
243
245
208
167
236
176
206
199
195
202
188
217
246
189
191
162
266
184
206
192
186
267
234
208
191
188
149
230
196
131
220
226
167
241
235
171
209
197
251
240
183
207
148
171
197
136
162
195
146
223
235
241
193
210
205
221
222
147
296
177
204
197
204
209
161
147
215
240
185
176
214
144
165
219
194
216
214
193
189
154
168
212
180
251
190
234
200
126
178
202
169
225
176
218
168
209
176
212
197
200
199
217
248
208
139
240
167
242
245
232
266
225
170
229
213
206
166
171
210
153
242
167
216
188
250
230
209
212
234
132
197
194
214
193
160
212
171
184
200
226
189
156
268
192
229
174
180
221
245
204
255
180
191
187
223
226
198
244
237
196
228
227
127
257
145
216
166
233
226
151
183
208
150
178
228
196
203
243
189
203
186
151
207
233
220
194
225
166
217
196
191
181
192
235
171
182
221
206
205
182
246
165
257
230
178
174
241
197
201
203
197
213
194
156
179
225
163
125
235
204
206
163
190
191
182
169
196
169
138
222
166
211
134
235
151
203
228
151
232
209
212
220
184
166
240
128
217
219
177
201
193
226
171
236
167
181
275
125
204
181
216
178
216
210
177
185
226
195
198
249
172
199
202
228
203
147
244
278
217
222
176
157
213
256
161
218
202
283
200
193
198
138
138
225
178
190
210
154
201
189
161
188
172
142
113
221
259
186
179
218
232
163
206
170
141
233
155
223
184
176
258
155
258
207
223
210
174
176
154
160
147
255
220
176
197
217
219
234
212
200
215
213
187
210
192
189
233
214
191
161
198
256
195
216
182
191
210
157
150
240
258
220
131
240
181
222
202
216
160
212
112
192
187
179
219
259
196
210
216
190
161
200
245
214
196
249
193
138
217
246
204
188
197
176
198
198
193
214
223
280
182
191
243
226
226
188
188
172
241
229
177
255
218
239
111
261
243
245
195
224
201
135
197
215
207
187
166
238
205
281
246
147
168
173
190
232
269
197
229
144
213
176
176
168
252
204
224
217
251
167
165
238
156
163
245
151
238
201
264
172
152
186
195
162
199
208
196
221
172
224
194
208
257
175
176
231
225
251
184
214
162
211
181
229
212
228
233
218
243
246
219
193
193
203
180
132
204
165
171
184
229
217
211
210
190
136
184
168
226
114
192
166
223
213
93
210
156
179
190
204
232
201
222
149
193
248
212
230
191
189
177
258
149
203
206
178
184
201
131
224
223
190
180
232
238
241
192
241
185
182
213
201
140
207
240
181
229
212
171
214
197
176
243
245
247
233
146
191
201
171
177
227
156
211
184
254
209
178
230
206
210
218
260
202
201
207
186
205
212
247
222
197
234
170
146
146
178
201
206
219
248
235
239
197
205
221
222
179
214
245
136
191
224
164
135
221
160
212
178
213
204
181
174
237
181
195
140
160
152
157
238
244
259
186
196
217
161
186
210
189
248
270
223
197
191
252
239
204
265
255
184
212
213
181
243
165
243
225
166
179
218
186
167
204
167
230
171
186
207
188
208
186
267
203
139
195
197
245
133
176
168
246
148
201
204
157
212
202
147
187
217
222
134
158
138
196
176
208
241
207
214
212
182
137
187
184
180
184
246
190
226
170
250
227
206
144
235
166
205
152
233
214
178
161
174
220
127
179
220
274
225
213
228
201
200
174
132
200
208
201
206
247
181
256
222
154
165
191
205
202
173
194
170
227
179
272
150
222
199
216
123
219
186
211
208
157
155
175
190
161
179
175
228
193
219
179
157
190
225
192
184
181
185
235
228
182
215
215
191
193
198
179
223
195
156
149
156
150
121
210
241
201
227
181
203
184
161
208
186
215
199
198
138
223
214
253
91
229
168
186
193
169
163
172
267
260
205
213
138
156
183
252
249
178
177
198
244
224
223
181
189
202
233
169
201
187
251
184
304
257
247
152
137
252
211
178
173
209
212
190
222
248
198
155
207
167
164
263
224
194
118
208
179
152
189
155
207
167
167
260
187
193
203
198
224
162
215
209
127
237
233
237
196
222
198
204
159
196
202
176
202
202
203
252
204
216
234
179
190
249
174
167
149
199
180
240
180
221
202
203
288
232
207
156
148
146
245
199
200
162
226
230
100
138
227
201
164
182
189
222
223
215
186
160
192
243
219
225
152
234
184
243
172
189
203
207
204
197
232
209
193
161
206
169
218
223
201
217
216
223
197
220
246
202
189
158
201
190
245
202
176
181
173
185
221
180
201
225
170
177
218
153
173
172
238
202
232
179
196
180
197
194
200
231
208
221
157
175
202
270
156
205
208
235
145
239
169
233
222
144
202
201
211
265
196
234
219
189
207
196
190
154
162
198
228
187
191
191
189
226
200
217
191
140
186
222
234
200
272
211
220
178
229
146
224
182
260
229
165
208
179
216
204
201
251
177
142
160
169
170
173
215
150
166
209
253
193
231
213
100
211
191
222
180
128
225
206
233
184
199
267
210
210
221
165
185
166
224
242
191
229
172
251
184
210
199
192
199
121
223
152
258
169
180
224
189
183
192
266
198
196
162
240
223
160
180
209
223
207
176
163
133
204
253
239
201
189
208
254
242
163
183
204
163
238
140
202
212
231
200
215
148
215
203
275
215
225
196
221
219
139
217
251
223
111
89
228
242
180
191
165
199
132
220
202
159
211
232
227
196
198
255
198
225
167
187
201
197
218
254
186
154
204
158
151
138
217
242
255
221
152
163
159
219
179
160
180
194
175
236
238
195
197
229
152
223
150
206
217
238
171
199
250
201
234
205
248
168
240
194
184
255
242
158
164
136
146
201
280
176
171
242
222
208
205
141
193
247
177
223
180
190
243
256
183
193
224
230
241
201
190
239
170
231
230
212
219
198
171
215
222
175
180
186
153
190
187
183
137
200
179
200
233
230
222
213
189
202
243
235
250
219
191
179
200
219
210
213
249
244
152
223
180
177
209
190
171
165
221
169
244
190
229
169
199
176
204
208
156
238
171
170
176
154
180
126
163
261
244
178
156
148
213
232
165
189
260
187
158
234
202
150
141
197
140
149
235
211
257
166
181
214
225
240
191
230
219
203
180
263
222
174
209
196
196
225
241
196
232
186
179
229
188
182
203
262
198
242
135
193
225
185
207
199
217
176
184
190
171
158
215
215
206
206
223
196
266
199
120
231
244
185
227
215
259
210
189
196
197
212
211
145
193
193
149
237
176
189
207
198
155
171
170
192
209
257
283
220
205
204
145
217
216
160
212
244
199
163
179
214
262
249
209
235
215
199
162
208
185
194
155
207
248
200
202
191
163
211
195
145
93
215
247
166
142
166
219
142
114
215
176
218
199
209
257
205
228
204
252
221
224
192
228
175
150
227
218
222
216
265
160
239
212
191
230
211
190
187
246
267
196
204
249
193
221
215
204
166
177
216
222
202
206
182
233
214
208
237
141
215
281
179
188
239
216
209
202
203
185
183
210
128
167
180
223
138
211
215
228
174
203
130
285
240
232
257
220
241
176
184
227
203
163
189
227
200
179
211
205
160
165
186
207
216
197
140
198
201
186
173
212
194
224
199
171
244
240
159
206
189
257
215
276
208
213
211
169
226
239
280
242
230
162
243
249
180
219
222
247
225
175
163
178
167
230
204
177
240
174
230
206
212
183
214
188
194
159
262
144
250
164
145
180
218
210
198
204
168
184
171
207
186
204
255
196
189
207
216
117
237
218
236
239
200
211
205
141
225
234
148
279
182
197
151
171
205
228
226
176
165
280
166
180
208
177
149
238
176
222
186
229
227
198
230
178
185
258
193
184
239
181
179
154
196
206
183
261
211
241
205
215
181
236
170
263
178
160
158
219
248
235
186
218
252
120
185
196
184
190
207
186
229
204
189
195
174
204
197
248
206
206
213
192
174
259
242
206
194
226
221
163
269
157
298
234
137
154
179
181
157
212
206
254
164
241
258
259
190
252
181
226
249
176
170
182
205
201
203
231
245
189
219
234
182
147
240
236
195
136
99
254
207
176
208
222
153
232
168
181
227
262
242
242
216
261
212
201
227
205
232
191
155
230
230
257
143
210
161
205
190
196
138
192
225
251
143
247
228
196
181
162
191
265
160
195
206
213
241
167
258
188
151
195
151
196
213
182
159
214
155
240
228
151
208
217
227
155
183
206
200
142
186
151
251
208
230
131
170
191
218
194
210
276
242
234
205
225
264
197
139
218
137
216
182
181
235
177
245
216
160
203
264
209
160
231
221
171
197
227
245
225
225
177
204
166
194
177
187
260
234
203
191
160
209
251
208
177
133
192
280
214
244
209
121
205
230
182
256
213
240
199
258
212
146
190
171
199
144
185
242
204
168
112
241
203
172
200
219
263
186
205
263
226
236
173
232
209
212
172
249
263
212
224
239
215
236
206
217
188
124
237
212
168
218
193
189
186
213
194
188
185
187
207
204
202
240
207
193
153
183
202
230
224
235
249
142
225
145
231
218
111
191
151
209
160
170
282
213
235
172
229
148
190
217
224
147
197
162
169
199
199
197
196
188
203
238
196
225
192
133
244
289
197
224
239
170
190
220
214
189
125
265
202
234
169
208
208
192
198
133
200
195
184
179
210
177
213
205
257
236
165
263
135
193
198
237
147
197
168
173
212
156
230
199
194
249
165
202
172
182
171
195
214
202
219
220
230
204
173
266
249
186
254
216
117
220
138
163
156
206
203
199
143
210
224
238
126
240
189
201
184
147
265
194
220
179
193
232
216
197
215
218
208
176
152
194
239
233
204
195
155
222
194
206
179
296
166
209
141
210
137
189
171
183
285
242
221
182
178
218
210
206
245
197
250
209
234
205
174
142
212
219
281
195
160
218
261
223
220
166
219
238
117
222
175
248
234
222
139
239
210
172
199
234
194
175
257
199
233
223
205
196
185
203
141
215
205
236
241
212
153
178
181
215
216
280
260
174
233
218
201
192
205
222
186
185
125
130
215
217
198
192
187
187
188
133
211
205
193
199
171
229
196
187
191
163
213
231
200
193
184
213
213
182
206
179
190
139
149
259
181
221
210
183
197
216
238
222
208
192
203
166
234
174
161
223
253
187
177
162
166
240
178
201
152
169
219
218
230
246
189
180
245
159
189
201
200
190
183
212
189
179
146
236
246
192
146
233
183
177
228
228
206
221
161
196
223
150
173
228
159
168
201
260
215
213
186
212
195
198
163
239
269
171
200
238
190
219
167
218
234
171
195
268
224
194
168
207
211
215
211
242
159
211
232
245
169
228
144
196
178
248
106
146
170
200
211
165
193
131
158
221
190
174
255
197
222
185
230
197
167
123
231
211
244
194
284
169
201
179
203
198
234
237
184
260
157
211
155
195
227
175
236
233
141
198
210
208
207
228
238
224
218
242
112
280
210
187
182
175
183
168
157
193
225
196
154
153
192
240
167
198
214
175
156
205
148
215
156
177
221
174
148
196
184
154
192
221
230
174
176
226
223
251
184
193
181
194
197
279
245
234
230
214
171
195
244
209
167
167
218
195
207
149
143
229
223
245
247
209
192
188
157
237
135
216
254
193
201
201
139
192
238
204
193
184
150
208
257
218
204
239
290
182
185
140
166
227
219
142
189
220
185
136
182
216
222
216
181
263
234
252
157
172
219
219
258
178
245
206
235
201
234
213
257
122
179
190
227
222
208
159
192
214
251
182
224
219
209
250
204
207
261
213
211
136
181
205
211
201
203
266
202
200
180
206
232
168
210
159
173
248
230
276
133
233
182
212
231
168
166
233
185
128
260
185
174
175
211
136
224
128
237
229
139
215
180
228
215
125
188
200
220
232
179
164
245
193
227
227
146
234
230
212
228
186
161
163
191
228
161
226
272
194
192
226
219
203
188
148
184
229
222
215
169
195
203
252
156
238
243
175
177
148
170
217
189
212
159
137
177
246
161
237
178
197
231
195
191
224
196
196
157
177
175
170
129
163
220
184
248
254
217
151
232
203
239
182
187
205
198
168
225
261
228
227
174
240
230
157
183
173
231
224
203
228
167
215
139
160
276
189
244
218
230
220
209
244
241
174
205
186
165
254
180
262
203
223
211
263
182
232
170
194
164
233
235
245
226
247
166
193
188
278
224
179
189
193
231
240
176
196
161
155
227
214
229
160
226
152
201
227
249
131
179
190
224
167
190
197
183
196
208
150
194
231
240
185
202
203
195
222
221
245
248
231
236
173
230
172
152
177
187
159
206
219
162
217
230
210
173
185
145
188
194
166
200
256
145
162
191
187
212
193
188
261
216
168
227
173
198
201
275
240
128
241
206
185
214
200
135
138
211
274
147
205
163
193
231
186
227
201
237
200
186
236
209
187
149
206
181
240
251
179
162
236
186
211
111
249
222
213
199
198
265
179
148
229
218
220
205
213
184
259
143
202
211
185
205
163
230
218
224
198
191
190
224
206
234
186
186
145
178
256
288
203
189
132
242
263
164
182
179
247
253
199
242
213
222
146
198
241
230
229
163
192
208
121
177
179
217
211
165
224
171
206
212
231
200
219
154
203
185
147
190
198
169
174
238
205
161
234
153
214
190
213
211
165
213
218
189
194
175
213
138
185
210
246
196
190
217
177
192
191
227
203
205
220
167
218
158
214
233
196
213
216
261
81
211
223
232
182
193
181
165
236
174
196
148
121
246
229
167
249
214
235
146
154
184
244
159
223
224
113
153
163
101
206
126
185
204
162
187
198
252
181
167
200
239
168
237
234
199
253
242
158
163
178
211
188
222
165
182
145
217
193
281
191
209
210
221
183
213
181
192
169
205
152
205
220
210
239
187
223
187
237
157
162
165
212
268
216
179
163
260
189
194
195
174
209
220
181
220
198
187
244
209
183
233
185
209
268
202
123
146
189
250
253
218
222
213
220
212
232
248
187
226
183
146
191
191
181
221
161
214
238
232
184
153
199
227
179
140
179
200
223
167
168
178
210
224
191
195
195
148
199
226
189
242
173
197
175
203
143
167
141
227
189
179
186
259
197
251
253
232
232
198
280
183
175
267
158
125
208
249
127
186
159
166
202
252
222
165
196
148
252
252
143
204
208
189
256
200
174
153
127
205
218
199
198
200
176
182
231
176
139
203
211
207
190
195
243
241
242
197
207
217
139
217
190
132
127
172
209
226
161
198
192
228
132
233
205
190
146
203
181
212
212
219
188
223
177
151
178
183
157
220
226
173
169
234
206
161
135
161
216
240
208
185
224
171
217
264
172
209
221
135
203
174
182
165
204
196
212
193
179
261
181
192
228
157
226
182
198
208
219
235
189
205
245
163
142
180
130
267
251
161
211
191
180
209
185
234
210
243
220
224
179
240
160
152
119
237
218
192
207
227
180
258
217
160
212
246
169
212
182
208
220
243
220
179
201
228
219
178
187
180
258
194
152
196
226
224
196
170
226
245
213
185
217
188
263
149
168
196
185
219
215
171
185
222
140
196
225
228
217
194
243
199
201
146
199
217
227
212
221
264
222
203
228
205
206
205
181
284
248
207
188
241
266
171
236
185
177
246
237
212
171
236
194
183
179
164
178
191
172
211
188
226
213
158
171
226
153
210
151
274
188
222
181
295
207
231
165
221
197
166
251
231
209
271
282
183
232
180
215
215
261
177
201
225
269
186
149
246
207
220
174
224
247
227
224
155
138
191
218
260
147
209
193
151
262
209
247
188
176
163
217
170
246
202
170
208
234
154
198
208
190
176
223
192
269
146
254
173
219
241
227
190
241
307
245
191
200
230
227
247
248
215
145
225
229
206
212
210
273
171
173
217
193
240
204
179
205
235
197
221
223
253
278
222
267
254
171
225
197
257
182
213
213
186
182
224
183
210
199
202
191
244
222
227
218
212
207
219
172
185
241
169
163
190
174
159
241
229
181
188
205
191
151
224
205
216
229
235
137
235
214
207
212
235
170
220
219
206
161
200
221
211
213
207
157
164
245
209
180
303
249
197
147
138
212
174
161
192
241
229
250
256
183
191
191
208
166
214
182
223
175
187
162
198
169
233
188
174
244
197
212
250
234
224
216
184
200
184
231
178
157
194
200
221
202
156
202
218
206
207
239
193
163
199
152
195
231
227
259
193
260
163
176
194
249
184
149
225
212
218
192
162
212
241
198
149
182
241
200
251
154
157
198
216
171
199
245
173
275
214
245
136
213
162
227
200
223
199
201
160
247
219
222
209
264
206
163
174
173
220
211
174
177
197
180
171
209
191
197
205
191
209
195
175
185
235
190
208
195
250
226
222
206
207
226
217
243
220
198
208
139
245
185
224
162
285
217
148
145
189
198
214
200
212
183
212
192
232
201
196
174
207
191
188
253
262
154
230
201
206
230
234
148
133
192
181
183
172
172
207
261
151
224
290
201
165
238
194
211
132
183
236
190
173
175
202
222
175
169
239
225
201
215
217
192
198
224
245
181
252
237
215
210
139
194
185
239
184
185
232
190
211
200
118
223
174
189
219
222
177
231
240
214
201
202
166
203
214
241
215
253
206
209
258
202
199
205
196
202
174
163
205
182
116
179
237
271
228
181
253
167
237
226
170
208
190
159
245
233
212
272
186
207
217
187
172
213
226
169
232
203
237
142
192
187
261
113
185
140
203
175
144
203
190
244
198
241
204
179
227
151
211
237
175
211
196
154
238
212
164
240
212
179
211
192
192
178
209
186
113
226
182
162
209
185
151
187
190
231
157
238
196
228
173
211
173
228
194
192
233
209
237
176
176
119
202
243
261
220
150
112
257
202
191
238
168
202
206
201
203
237
229
218
220
162
163
237
215
220
214
261
171
242
168
231
191
203
220
175
186
172
192
185
164
223
210
197
113
236
207
244
222
219
213
247
191
180
222
199
170
214
188
234
266
206
189
223
133
178
204
176
150
221
190
182
225
216
249
205
197
176
248
228
240
194
194
189
205
144
143
191
187
228
207
212
260
220
181
237
209
237
194
189
283
209
215
206
171
202
147
177
213
146
214
192
168
200
212
207
178
235
234
229
184
150
252
176
220
224
177
243
202
197
158
171
218
245
121
189
248
146
173
163
258
245
187
158
182
239
243
190
195
242
146
244
154
200
243
202
159
236
266
205
243
207
179
149
177
226
152
222
211
178
290
188
220
130
233
227
223
220
188
158
196
219
183
183
185
193
244
192
213
197
186
140
228
162
227
198
214
140
219
214
203
251
215
169
248
138
217
180
175
148
171
200
246
169
212
203
233
243
236
151
218
207
219
194
211
260
179
220
163
211
183
139
233
199
156
267
133
203
243
101
247
231
246
270
244
195
241
177
251
226
226
231
195
196
234
211
140
207
210
218
159
185
194
181
190
245
148
219
204
151
235
154
215
197
237
137
210
236
221
289
165
266
208
153
227
176
258
198
149
249
219
212
212
188
181
188
241
153
192
153
177
213
135
187
155
180
199
182
239
190
183
201
212
206
225
204
224
159
165
174
179
163
198
230
246
207
224
227
192
263
169
173
257
215
148
211
139
188
186
191
234
234
227
182
192
181
136
158
237
183
153
180
169
192
199
167
182
143
194
209
152
183
168
144
162
183
240
185
245
150
194
174
202
147
182
176
210
247
216
192
201
237
204
222
210
215
177
232
128
177
192
187
126
204
219
134
216
271
193
120
249
133
169
209
220
176
226
239
233
203
182
215
183
217
185
266
235
206
137
215
183
181
287
195
223
163
214
200
193
202
228
164
171
173
223
187
185
163
162
180
209
185
195
169
125
236
247
200
209
211
239
204
168
142
219
169
242
187
208
203
182
154
249
178
203
184
216
202
191
276
222
219
205
219
199
247
167
209
208
180
174
192
224
180
221
181
252
239
233
199
171
198
186
219
246
257
131
236
205
253
188
224
217
201
252
228
242
144
204
191
196
235
246
157
205
238
193
235
218
200
202
171
166
162
226
165
232
142
177
170
236
231
179
211
174
231
233
190
196
207
237
165
156
197
193
260
205
170
168
237
134
181
221
216
217
170
147
199
206
166
262
202
195
245
198
206
230
154
159
205
195
254
196
231
217
215
145
205
178
172
202
209
233
251
183
247
279
199
243
269
200
225
227
180
217
274
218
208
161
166
202
212
155
171
230
169
259
217
170
185
172
202
146
178
254
196
234
244
197
185
152
207
173
235
262
178
213
228
201
140
143
134
157
242
182
166
204
166
164
168
213
189
170
158
204
226
250
209
197
229
199
210
162
177
199
232
156
157
229
214
199
172
185
183
233
213
218
185
202
195
217
168
234
218
238
233
238
224
195
241
183
247
206
242
227
245
153
188
236
156
217
169
145
200
183
261
224
232
120
197
188
166
219
301
214
213
239
175
189
217
182
219
221
193
256
185
203
116
137
166
216
225
186
194
150
200
208
159
184
177
232
124
218
182
169
210
144
228
223
236
255
208
216
235
230
233
187
236
187
180
251
239
213
157
153
235
154
180
235
151
160
165
156
228
251
263
211
252
201
146
209
249
212
159
219
160
129
237
228
247
201
215
142
189
232
231
245
219
98
218
202
185
239
157
240
211
159
254
197
234
197
195
150
147
194
178
233
199
228
203
137
253
190
249
176
177
138
189
146
185
178
224
220
220
169
209
182
194
206
198
199
160
144
113
220
196
172
191
110
224
211
226
184
219
196
162
197
150
203
184
184
164
201
208
236
187
228
179
222
162
235
215
215
220
192
156
254
217
165
212
207
196
172
188
211
217
210
228
186
203
227
238
206
222
163
184
221
198
187
193
178
214
191
135
162
224
218
209
181
221
191
193
208
190
208
257
216
176
234
221
230
212
196
239
225
251
161
198
206
175
166
147
184
174
167
200
253
191
208
212
228
198
243
246
194
191
228
219
217
186
196
216
161
158
142
210
239
229
238
198
168
160
230
236
169
167
187
242
198
172
188
253
239
228
220
239
132
186
134
163
218
193
232
216
216
202
233
210
166
166
140
174
183
219
133
178
198
197
164
174
158
236
221
247
211
184
231
234
155
173
226
193
186
210
159
224
194
211
191
210
178
239
194
206
157
224
228
182
187
212
250
202
198
222
184
268
151
149
247
207
135
215
214
183
210
187
171
220
222
179
258
191
209
145
206
177
146
171
247
174
225
163
230
177
168
194
151
171
211
270
221
224
146
233
230
151
141
176
224
147
114
203
211
176
162
175
203
249
170
236
186
176
178
239
218
227
155
202
202
277
131
192
211
207
206
171
135
151
222
215
205
185
217
233
232
178
197
140
172
198
180
224
218
222
199
238
186
193
182
218
210
234
189
229
249
215
187
196
208
205
155
173
259
220
223
191
158
182
174
191
215
135
182
190
131
242
212
196
200
215
251
192
224
122
207
168
189
171
172
179
209
166
165
154
225
263
146
145
221
225
141
147
238
223
208
132
153
181
170
170
169
171
211
183
215
250
199
221
231
227
218
183
217
237
243
175
186
162
186
211
200
174
186
243
248
141
195
185
270
234
188
218
134
279
234
140
223
229
202
220
241
237
202
178
123
157
173
177
162
216
121
166
178
210
205
186
202
242
222
231
205
209
245
183
184
237
197
215
143
178
181
170
272
266
254
239
255
224
185
135
215
208
172
240
208
203
190
225
226
198
219
174
167
151
209
190
214
199
182
191
155
170
195
232
187
221
212
177
180
189
266
224
157
196
152
208
165
235
191
202
245
185
222
251
187
229
179
173
223
187
271
197
210
202
189
176
140
169
192
209
198
210
234
191
202
184
253
218
250
167
182
217
257
249
207
239
225
266
208
128
201
204
197
198
116
179
226
227
187
194
181
191
216
155
187
214
260
226
219
213
159
187
201
214
151
130
229
213
162
213
177
143
253
151
250
179
161
198
219
211
252
229
255
224
252
243
229
231
265
228
193
170
211
161
182
199
181
195
133
192
175
208
197
217
179
175
253
163
220
200
196
190
202
229
252
189
196
243
230
225
193
243
186
250
164
171
154
218
127
195
206
201
193
204
167
174
172
231
186
229
252
193
152
210
224
217
139
143
222
201
157
216
144
197
165
250
231
210
182
183
243
179
176
251
167
180
207
182
239
196
215
161
153
183
214
206
219
229
237
224
149
188
266
240
212
212
173
287
226
225
199
203
236
234
208
211
260
239
176
181
144
213
229
174
146
214
220
243
229
247
205
169
164
140
189
232
229
176
206
211
226
218
188
212
220
214
164
178
184
160
201
152
216
129
152
188
193
155
168
189
160
191
150
184
273
155
189
177
204
140
196
189
197
152
208
163
166
201
225
178
230
273
170
167
235
195
228
197
225
184
156
228
170
206
213
187
181
199
175
171
129
199
222
206
229
233
174
224
210
198
202
197
184
180
226
220
238
202
217
202
187
253
215
228
223
189
202
278
210
230
187
191
178
225
216
183
143
159
196
212
177
193
193
231
149
208
194
229
238
246
148
204
225
250
247
240
142
155
258
190
179
223
236
113
183
212
210
186
218
208
208
258
157
154
151
214
224
143
215
267
213
126
195
191
122
275
199
202
198
227
224
136
224
174
232
229
227
176
206
247
233
185
153
179
247
128
224
210
220
234
233
189
207
193
194
176
225
248
146
241
160
162
218
99
191
156
240
213
166
157
186
206
165
178
175
219
229
214
190
160
218
225
220
192
221
192
172
193
208
212
155
224
219
157
211
200
236
236
253
205
202
154
208
201
167
203
233
206
227
197
147
194
185
272
197
177
260
144
204
222
163
215
140
233
192
158
181
188
202
239
237
195
176
127
205
180
213
235
239
216
253
189
175
164
208
180
194
200
230
179
204
136
172
222
203
219
126
255
246
221
210
186
258
236
248
145
170
195
223
223
155
246
225
165
229
209
235
250
210
250
174
185
202
199
183
189
148
211
204
217
200
160
145
189
212
220
241
250
230
145
167
212
168
254
200
184
245
169
177
177
212
193
262
192
202
157
218
196
222
180
204
197
159
159
215
181
202
214
186
192
196
233
269
170
226
183
173
172
229
173
228
149
163
230
206
169
197
198
235
190
201
187
215
121
224
197
228
194
187
179
220
203
217
252
229
149
182
184
214
122
242
251
157
207
180
248
208
171
159
167
168
183
206
186
234
202
202
169
208
139
217
115
224
200
220
231
190
210
219
216
239
178
174
239
201
142
170
174
181
196
222
218
192
191
217
279
178
207
255
220
223
180
192
216
173
189
193
163
192
231
181
170
250
207
150
245
268
232
166
260
228
189
220
217
228
195
216
218
158
139
129
262
156
217
162
221
226
157
242
239
223
130
134
206
229
171
178
192
123
263
267
236
211
199
210
154
197
206
225
255
202
195
167
223
229
235
188
161
194
211
164
279
207
201
222
181
198
197
202
196
255
199
160
231
239
176
215
287
166
221
196
188
204
220
202
211
246
191
193
200
223
177
211
198
162
190
247
128
191
224
161
192
182
270
231
197
196
171
193
190
239
166
176
211
181
194
208
173
178
239
180
227
220
152
207
228
176
204
202
207
244
222
175
102
219
194
232
214
223
159
189
144
206
243
193
195
172
189
271
158
167
246
205
196
211
160
208
217
182
217
191
180
180
216
210
221
182
135
225
156
161
257
226
204
162
210
239
201
212
237
154
209
144
202
205
158
224
168
211
161
166
203
251
224
171
187
265
164
155
207
219
146
216
198
177
235
139
224
205
190
175
196
123
193
300
216
199
196
177
185
232
178
190
179
199
173
272
209
204
188
194
198
203
251
262
200
239
159
268
246
178
223
231
185
102
239
180
200
186
198
197
194
226
209
203
164
215
224
228
133
112
220
125
146
201
200
177
232
225
271
198
203
227
256
193
170
273
204
186
208
202
236
186
136
174
264
224
164
166
234
216
228
148
176
181
234
223
212
165
151
248
237
225
233
240
185
178
171
213
239
222
229
205
236
245
164
160
258
191
122
267
230
241
155
188
223
179
204
223
184
163
197
175
239
244
183
192
205
195
186
198
141
190
248
231
152
175
209
220
211
75
151
178
181
152
213
211
207
263
156
223
219
265
173
179
249
189
189
182
171
223
194
213
248
201
152
131
227
214
139
126
220
209
286
185
123
199
247
245
226
213
177
202
223
219
271
184
199
184
166
192
222
208
243
191
158
183
137
172
221
137
225
194
147
243
189
196
182
149
174
205
209
130
203
201
220
234
200
95
238
120
162
145
228
199
181
213
165
170
236
215
192
187
195
185
158
121
178
138
153
225
187
215
191
237
264
221
181
192
195
182
178
235
151
216
153
180
196
216
160
182
158
165
189
183
176
207
160
242
187
196
237
229
186
253
216
158
190
165
198
156
214
224
203
248
183
190
199
242
231
141
220
165
202
187
244
219
263
212
182
179
240
235
196
125
220
221
145
133
191
213
169
192
187
228
161
225
171
164
251
178
202
215
261
247
213
220
228
150
185
199
223
241
156
202
208
172
172
203
231
227
164
183
212
251
178
231
234
238
244
242
203
166
184
140
188
149
205
280
167
246
212
176
177
160
240
197
176
219
135
168
219
170
181
240
147
232
209
175
102
237
186
157
220
193
221
195
224
162
149
225
179
161
204
240
171
208
208
237
177
190
182
163
204
288
191
159
203
165
167
223
225
188
244
257
234
246
204
149
241
145
244
187
222
177
218
168
208
241
253
215
226
207
113
187
167
232
216
210
201
244
206
150
191
199
154
201
206
139
162
132
250
193
239
191
167
173
192
174
204
257
177
243
232
232
226
191
215
226
269
243
238
256
194
270
166
206
214
230
235
177
211
179
197
175
222
261
206
203
247
201
141
189
187
265
169
229
229
238
207
223
205
256
182
213
190
226
190
196
231
195
213
185
219
195
184
216
245
187
290
166
246
172
218
237
196
236
223
220
159
184
246
180
151
194
236
202
198
249
168
199
184
214
182
242
206
177
188
221
175
197
128
205
165
213
179
154
149
218
148
225
232
175
184
240
207
208
137
212
196
179
194
189
156
226
235
224
202
182
171
133
225
141
177
163
141
138
244
220
235
160
215
233
233
247
203
220
186
209
170
150
193
157
184
250
163
144
213
236
186
113
234
257
243
133
238
196
282
197
165
224
215
221
210
200
253
172
169
165
203
218
234
181
221
236
181
226
193
164
177
219
259
245
203
225
213
196
167
220
160
241
220
235
203
149
201
151
202
207
173
225
168
145
223
210
241
279
165
200
255
233
214
184
215
216
132
220
158
215
164
144
182
137
213
175
203
185
187
260
225
208
246
206
151
172
175
189
224
205
208
232
173
188
220
241
151
194
182
198
169
146
213
220
199
212
184
212
229
205
213
210
172
168
274
173
186
181
224
214
176
154
188
166
208
193
180
136
253
222
243
197
222
224
199
209
155
206
156
212
191
198
187
177
195
199
143
202
197
227
229
222
215
168
209
215
285
201
202
189
165
114
196
245
199
169
253
210
224
163
186
247
193
154
219
223
205
194
193
196
195
260
219
206
204
222
186
172
209
176
237
176
184
206
167
156
165
201
213
229
231
176
177
248
154
211
197
232
180
176
208
215
187
158
174
141
164
210
261
190
143
185
220
278
226
124
186
197
187
202
206
204
193
177
139
264
269
219
136
172
211
190
205
170
170
195
234
205
228
195
139
229
180
208
182
201
121
218
166
206
212
189
187
200
154
178
256
156
241
229
242
216
244
212
212
219
128
143
164
200
172
210
204
209
159
209
221
212
214
157
140
251
157
222
195
134
200
215
130
172
166
260
232
154
106
129
192
140
187
180
245
231
194
181
156
276
207
234
145
191
220
197
174
189
180
248
219
256
202
240
195
143
189
202
154
210
228
222
257
196
168
204
202
253
221
232
102
209
191
211
205
212
166
209
158
146
206
243
199
210
280
188
145
188
213
235
210
239
235
189
268
212
235
215
164
216
166
167
235
204
152
241
198
211
235
260
245
231
211
213
140
198
156
191
196
165
197
216
223
195
209
193
213
195
178
223
220
227
217
200
250
246
191
125
201
188
195
188
219
125
263
213
246
233
211
219
195
214
207
183
181
213
164
168
240
231
193
216
208
257
255
219
153
164
218
296
193
230
194
225
189
192
167
165
168
235
178
194
220
187
197
219
133
189
165
178
195
218
188
260
250
207
197
174
203
234
205
165
253
204
192
206
178
209
155
182
190
142
211
165
148
103
239
179
183
195
138
192
176
198
141
190
210
249
191
143
132
245
178
190
253
243
150
238
213
158
178
196
194
194
191
212
238
205
241
198
126
204
218
183
205
179
211
267
164
196
179
245
155
219
184
256
198
238
219
187
160
248
182
217
219
182
194
200
192
201
179
170
267
234
224
231
285
143
205
156
179
287
202
223
222
241
220
214
197
139
239
256
172
173
183
229
230
176
174
166
178
195
202
172
221
188
178
250
226
172
244
246
205
141
231
239
234
195
180
167
181
203
188
190
200
186
196
202
231
198
230
159
155
252
208
169
200
209
196
253
210
211
171
234
264
217
169
213
213
227
251
218
194
163
180
142
198
214
176
217
205
183
258
156
163
182
205
210
227
214
192
208
176
241
240
153
203
239
196
207
153
203
146
242
234
188
131
187
208
208
230
186
143
236
199
220
221
184
213
247
236
191
169
228
228
187
221
120
264
139
253
202
209
222
178
194
236
155
219
239
186
244
182
211
168
218
234
221
253
215
202
212
172
214
220
271
191
208
152
157
206
217
141
194
252
161
205
103
159
144
206
139
225
227
193
225
153
269
214
225
162
237
227
243
206
292
235
180
153
158
179
233
156
225
221
184
209
170
218
250
267
189
243
164
174
167
193
209
218
166
239
243
197
214
216
231
208
211
212
213
186
199
196
232
189
199
210
183
180
158
189
204
220
160
245
191
181
223
219
166
141
190
175
233
183
189
235
200
223
202
186
148
240
235
159
162
162
262
226
192
188
202
193
200
271
187
203
145
212
233
166
190
252
218
188
183
238
223
181
163
149
187
139
158
218
208
194
219
252
186
195
203
168
198
234
176
219
180
226
266
221
217
215
149
255
144
172
194
133
168
229
170
152
187
166
231
157
124
158
225
148
254
246
210
203
196
225
159
202
181
161
161
258
150
215
204
129
186
141
205
159
160
201
225
260
217
194
190
242
185
175
259
218
214
224
233
181
177
202
207
188
200
247
158
193
199
251
193
158
159
187
236
204
235
185
204
238
187
218
210
168
190
199
161
199
205
228
174
158
226
169
119
227
199
207
211
240
165
186
205
212
192
228
264
227
253
175
187
161
221
243
213
263
184
265
240
181
243
113
178
160
178
197
191
231
195
249
162
182
178
116
160
203
207
269
148
173
177
211
247
212
156
207
191
196
164
199
180
200
173
162
213
191
229
177
177
186
144
215
222
217
218
210
163
193
200
250
253
212
205
217
262
236
156
195
178
206
206
215
184
238
176
233
250
241
216
115
201
124
238
227
222
222
136
144
185
160
171
223
188
196
197
204
174
231
235
207
158
204
293
123
191
246
141
147
170
195
255
251
217
221
206
209
224
216
193
193
225
189
233
220
222
161
190
158
142
190
207
160
207
171
229
193
164
102
190
218
212
115
232
223
238
193
109
164
188
207
137
124
222
213
174
203
213
205
223
220
215
282
202
211
236
243
249
224
211
190
153
165
257
149
231
230
175
171
217
167
224
214
160
213
186
243
182
224
240
261
220
178
224
194
291
252
178
179
177
173
170
171
226
177
173
184
157
147
164
208
270
183
196
223
190
218
128
251
194
196
192
201
229
191
251
192
87
242
209
168
204
209
185
243
234
258
244
167
208
275
185
205
193
238
204
168
207
180
220
253
207
261
242
232
218
204
174
198
137
220
210
229
185
163
134
109
207
230
224
210
228
253
172
167
190
197
187
154
206
235
195
214
188
214
204
156
161
224
247
202
238
243
240
251
229
145
243
181
228
132
147
229
214
209
234
206
194
265
183
204
171
157
207
168
231
132
194
217
176
158
221
175
212
205
218
249
203
216
222
224
239
179
246
252
180
157
232
204
114
245
214
230
210
236
188
165
237
242
232
217
280
232
160
234
245
175
162
195
194
256
188
219
195
228
212
208
146
152
194
173
200
220
223
222
171
225
214
218
185
207
161
223
205
187
177
170
200
146
192
237
192
186
187
192
187
149
135
192
211
191
199
179
184
222
175
141
180
219
208
137
164
201
219
236
167
308
190
208
207
246
198
184
188
205
214
242
244
194
185
194
199
258
207
173
169
204
204
222
223
225
201
169
216
217
141
197
229
219
254
163
212
195
165
229
163
174
221
241
119
199
214
186
179
227
221
194
212
176
180
234
230
230
220
217
201
215
241
197
189
198
169
237
218
187
169
187
239
232
170
202
182
208
210
139
218
205
215
145
165
136
188
239
172
168
221
205
231
159
211
275
193
223
191
224
190
148
176
165
217
236
181
206
245
201
193
238
199
192
155
139
238
201
207
240
210
188
140
234
191
187
262
176
190
203
188
267
178
222
187
185
233
226
85
213
182
208
206
207
124
200
182
173
219
114
197
239
212
247
219
207
219
159
183
139
221
197
188
196
194
214
207
149
110
212
203
173
171
210
198
198
222
211
212
221
198
154
220
199
213
201
163
235
219
206
200
177
173
203
195
182
248
216
199
208
118
208
166
221
146
190
141
200
242
201
230
108
201
131
241
128
223
179
211
192
189
232
239
233
201
193
161
185
197
225
208
242
163
244
192
200
189
229
159
226
173
167
252
154
162
202
168
255
178
274
194
230
155
186
261
203
195
209
226
163
148
198
215
198
133
225
190
169
155
184
235
194
194
248
207
178
201
190
211
182
220
209
202
203
193
205
199
187
168
140
156
188
147
209
227
192
144
219
240
204
223
168
162
246
226
211
171
208
222
207
204
156
201
183
238
192
171
162
210
194
180
237
163
194
235
151
214
142
175
162
152
229
186
261
151
124
225
130
221
216
237
180
186
219
197
190
192
185
116
248
202
161
162
210
161
170
181
176
214
218
140
127
205
229
223
130
217
213
211
129
169
227
195
191
217
238
234
157
208
217
263
163
200
175
179
195
147
149
188
190
232
208
184
177
199
167
162
223
197
219
229
207
186
193
141
190
163
174
192
219
249
176
203
209
193
210
202
197
174
163
204
259
158
205
202
222
157
213
145
214
204
205
196
188
201
161
230
209
191
223
230
223
195
191
195
226
227
235
209
216
202
186
231
188
203
190
236
244
246
157
211
201
215
172
174
273
174
184
198
195
143
149
176
273
202
208
167
248
171
211
191
182
244
214
193
220
169
207
203
196
246
169
193
176
194
208
212
242
198
199
186
243
210
188
243
226
198
232
153
225
172
229
188
211
234
149
200
188
232
221
218
223
196
171
177
172
184
223
166
238
202
179
176
230
210
177
196
188
170
143
258
184
174
175
228
174
172
144
205
251
167
175
209
185
177
228
238
237
238
210
192
186
203
168
202
244
194
268
184
177
239
230
147
253
188
193
198
162
230
205
183
129
179
191
158
197
247
214
210
178
194
203
182
234
197
221
212
227
219
243
193
154
205
225
181
216
214
186
214
224
217
204
176
195
130
177
232
230
211
197
144
190
149
195
220
174
174
256
145
178
282
206
225
174
206
205
212
203
174
189
207
237
194
201
222
210
221
216
267
185
232
179
250
129
135
198
228
135
232
195
186
170
246
250
164
219
117
232
168
246
225
233
189
209
200
217
209
183
209
189
200
245
188
211
236
212
178
244
199
268
246
188
152
204
198
195
208
208
176
145
208
183
152
171
201
225
195
235
252
209
219
243
158
196
178
195
148
154
239
156
176
222
234
175
136
191
207
132
197
225
148
228
230
243
194
184
156
172
206
265
198
252
185
216
195
205
246
215
249
225
180
181
229
261
232
177
231
198
196
203
200
189
245
267
187
245
232
230
197
222
214
176
200
202
185
200
193
186
214
253
192
174
180
208
162
200
160
188
199
227
198
225
177
271
165
246
166
254
214
283
187
212
198
155
172
204
202
150
220
181
226
194
162
215
154
158
266
172
237
222
212
186
122
231
178
233
226
220
204
224
243
235
138
221
236
230
256
157
200
149
235
176
192
171
209
164
208
168
292
248
157
125
156
194
170
184
186
175
243
201
178
188
248
237
224
210
228
172
202
226
210
212
236
198
207
230
227
177
251
180
220
210
243
274
162
211
224
235
204
236
195
211
248
235
229
244
237
199
172
236
230
202
165
196
158
160
257
180
170
194
133
252
250
192
188
211
159
176
164
198
151
192
218
183
215
106
231
212
192
241
204
132
165
226
218
227
229
157
194
206
209
172
200
228
214
301
174
218
195
196
153
220
202
215
164
240
214
226
205
207
265
173
142
158
208
186
212
160
181
154
197
165
237
176
187
259
183
206
211
120
174
189
141
230
181
174
201
235
209
134
260
160
212
182
196
171
191
201
193
151
179
156
255
191
140
188
209
216
222
225
204
173
180
197
180
220
237
260
248
174
233
192
211
155
186
169
161
199
214
207
189
136
211
229
196
182
254
123
184
199
154
217
198
221
216
253
174
192
240
233
174
179
242
197
173
212
192
255
120
243
150
165
201
237
205
145
204
214
118
179
189
207
232
218
229
214
143
211
186
185
194
207
200
194
165
213
193
233
231
168
202
197
103
202
249
154
176
214
167
213
245
243
210
221
225
228
259
230
165
245
245
192
183
255
239
127
136
209
190
187
204
245
235
230
210
212
219
162
160
203
181
170
154
238
138
189
152
200
259
238
196
159
193
153
251
157
154
260
187
235
253
197
130
261
199
265
224
132
238
191
188
190
207
232
239
162
234
233
199
225
204
259
173
213
201
178
227
158
228
203
236
178
195
145
250
218
190
263
185
207
183
166
209
202
193
207
184
145
213
224
180
225
154
186
254
201
160
188
175
233
225
120
248
230
215
238
269
235
192
147
201
221
198
197
212
254
234
161
249
186
209
157
191
248
170
225
156
197
184
219
235
213
222
214
157
190
141
145
194
178
150
253
179
206
170
234
211
266
220
184
148
236
240
210
216
213
210
204
227
153
240
235
205
252
173
213
124
158
255
195
224
214
212
255
204
235
214
204
208
178
192
225
215
217
235
266
183
231
224
221
226
179
174
191
206
104
211
174
257
259
219
163
147
260
248
176
234
190
131
258
200
201
101
183
206
138
178
230
247
192
200
137
198
218
237
249
88
207
237
199
133
214
221
167
265
163
204
234
209
268
194
203
194
200
186
122
187
211
183
168
251
219
257
122
184
264
242
183
283
162
139
254
166
178
139
228
202
209
158
228
186
211
186
216
162
231
244
173
200
233
212
209
216
182
155
143
163
235
194
211
253
216
216
215
198
222
180
178
199
155
166
159
164
150
252
205
142
264
261
210
270
159
210
194
160
217
174
129
190
232
215
220
233
104
241
216
248
240
183
183
204
187
192
219
193
193
145
267
182
236
142
168
172
215
199
208
254
248
208
220
237
201
168
242
214
197
162
205
216
209
227
210
173
258
200
249
206
196
186
203
204
193
212
204
216
218
243
182
217
200
225
217
204
127
210
129
202
246
261
211
184
195
245
166
225
206
168
190
232
179
160
141
228
220
247
274
212
205
168
204
273
199
241
282
114
193
138
173
245
188
231
232
212
223
176
187
191
177
238
181
209
194
202
157
190
192
165
160
220
216
118
220
274
203
219
198
235
188
253
178
238
175
235
188
218
204
195
196
254
213
199
204
180
168
179
191
240
231
174
178
217
207
184
234
234
110
189
240
173
213
201
135
182
221
106
214
148
181
188
161
203
180
156
194
155
184
185
204
213
118
213
211
204
194
192
170
196
179
175
201
223
197
203
200
214
226
205
207
188
210
181
205
285
257
138
163
254
112
248
187
252
242
192
184
216
241
201
210
130
140
178
203
234
232
155
269
194
225
152
224
238
178
276
224
206
219
154
210
152
275
200
199
249
193
236
237
248
209
174
185
172
187
204
136
159
227
201
226
196
178
240
237
252
194
197
192
235
188
241
197
204
216
239
197
240
201
115
209
216
197
188
213
185
207
186
222
225
186
138
166
197
225
226
274
223
231
154
228
212
176
203
219
193
128
221
131
197
196
196
253
298
210
239
181
214
135
186
181
192
241
215
201
159
203
217
180
239
202
214
200
242
194
209
170
205
193
193
210
246
194
178
202
165
103
217
194
198
226
159
183
212
228
195
197
229
190
158
123
221
169
249
191
212
242
186
243
213
154
229
173
158
220
220
207
212
220
220
188
156
266
226
205
240
165
203
193
208
129
265
179
175
169
179
177
184
188
229
237
174
203
204
256
256
214
263
200
169
200
182
232
236
218
228
234
173
237
174
208
167
246
237
158
214
151
138
185
168
255
236
144
189
103
243
226
129
237
202
154
220
242
161
206
258
205
218
151
238
174
177
173
200
170
182
205
222
186
237
158
223
194
279
250
224
211
166
206
140
216
234
203
236
220
252
165
249
228
209
262
111
176
182
208
242
229
234
192
256
171
186
226
200
217
180
215
150
217
191
195
252
147
201
199
246
200
182
182
226
161
233
278
219
174
200
142
237
259
218
225
208
198
235
198
228
186
179
177
223
176
222
179
212
176
157
205
208
123
174
132
147
171
231
199
252
161
219
134
223
149
227
222
190
241
166
192
178
169
170
136
209
184
195
184
241
107
182
222
194
178
238
199
223
127
182
157
246
207
184
253
236
153
141
213
249
118
162
200
225
223
178
214
237
193
252
210
191
223
208
191
253
205
206
165
166
155
149
217
149
241
179
184
246
179
197
206
233
143
203
132
167
216
191
192
202
232
203
208
210
244
270
196
209
200
146
166
208
205
234
220
207
222
257
224
202
205
213
234
214
254
208
202
154
191
203
205
117
216
167
195
157
244
202
218
158
236
198
206
208
155
178
224
230
219
246
150
208
282
118
103
204
216
219
214
146
150
217
223
258
190
259
224
236
227
144
177
244
215
259
180
207
254
162
191
245
192
211
129
183
197
195
139
205
223
166
229
209
180
217
191
224
149
170
168
219
198
133
191
232
164
181
242
144
172
140
224
263
182
164
220
223
231
182
191
189
225
207
248
233
157
247
232
196
164
186
255
161
240
197
181
194
209
158
247
159
197
202
210
225
179
242
182
241
186
244
205
176
223
230
165
163
252
166
170
263
164
210
166
224
201
228
195
218
171
146
223
182
206
236
204
219
213
165
208
217
174
172
213
227
223
140
222
217
192
178
213
162
223
167
136
211
176
219
195
192
218
157
270
236
214
168
174
211
138
209
167
222
159
175
158
193
188
147
219
115
206
158
175
162
190
227
153
159
210
143
195
222
186
233
233
144
222
199
235
181
171
194
182
271
130
251
259
168
248
153
243
201
233
184
234
167
220
182
212
197
234
236
184
190
150
178
154
233
182
220
180
200
194
187
174
202
141
165
183
178
195
252
202
213
218
240
211
205
213
164
271
214
165
221
193
237
196
187
181
231
234
179
133
166
220
148
164
193
194
235
141
248
180
237
185
183
197
241
222
227
206
229
219
197
268
199
161
232
217
182
235
219
182
187
200
172
233
206
289
261
161
168
246
212
208
194
187
278
179
175
202
255
163
252
164
194
185
160
205
230
224
222
202
215
198
155
201
238
211
268
175
212
183
245
216
198
235
238
260
197
225
227
236
222
203
179
172
215
224
236
206
182
143
187
127
284
212
161
248
235
249
254
173
228
177
209
154
213
235
208
220
210
246
218
186
231
201
216
228
174
192
165
201
241
219
213
230
157
199
190
238
149
164
179
135
164
189
214
248
172
175
177
184
194
238
218
198
221
202
155
129
207
158
177
199
218
172
196
221
213
179
184
207
149
182
222
252
199
124
222
183
200
197
254
210
249
225
239
193
196
222
199
131
179
261
291
150
259
160
177
263
208
245
222
189
182
190
191
167
144
149
253
168
181
172
166
196
238
150
186
219
197
228
229
196
191
238
223
202
213
211
255
220
159
213
186
164
217
208
190
177
145
152
201
176
215
113
180
248
232
238
205
256
261
225
213
153
186
203
246
233
182
165
250
261
169
190
267
230
161
183
235
238
196
183
195
220
191
244
202
222
197
174
185
113
172
212
228
191
185
213
191
229
135
192
174
211
177
89
264
250
226
213
165
168
183
131
179
178
220
178
219
189
181
206
190
222
236
127
246
235
180
241
241
122
193
131
189
187
178
195
212
167
199
215
190
227
196
183
221
221
177
234
205
180
145
253
175
207
250
244
153
215
171
249
228
268
175
192
175
157
175
167
131
220
185
259
248
144
237
190
186
186
145
188
245
194
209
155
232
174
184
181
157
178
202
150
162
245
213
192
162
248
223
249
218
237
174
197
272
257
221
204
240
139
237
232
136
184
202
164
251
251
239
197
179
196
136
214
226
189
125
174
192
142
240
148
240
221
256
229
185
232
136
180
156
234
196
229
199
211
214
231
133
166
198
151
203
249
97
201
225
181
201
243
242
201
186
193
213
162
257
156
201
242
281
148
225
209
172
173
240
190
197
113
252
218
164
215
227
201
257
154
257
260
175
207
213
258
201
171
195
202
246
175
162
189
209
185
239
164
229
214
206
234
218
210
228
225
211
204
195
145
184
233
177
193
198
128
200
191
153
163
174
177
240
223
267
221
216
207
130
257
270
199
188
217
194
172
215
188
217
197
242
246
191
187
193
170
112
238
209
247
198
276
197
195
204
177
259
227
150
164
258
241
204
253
217
180
229
214
150
222
217
163
204
153
240
187
189
179
255
163
166
241
228
201
221
150
268
232
137
210
194
227
250
178
244
233
241
183
168
197
202
214
202
199
93
228
183
196
181
193
178
222
168
183
276
274
227
177
235
260
164
179
172
210
209
217
244
134
225
170
257
206
175
246
124
176
234
261
224
181
208
151
261
217
166
225
227
181
237
218
172
206
242
232
206
203
219
195
206
189
262
254
230
194
190
149
176
196
134
231
180
262
218
196
92
161
234
222
254
186
224
165
217
180
188
155
246
180
185
203
175
190
260
241
213
185
160
200
214
232
232
243
174
226
202
227
188
165
200
195
184
210
192
170
233
242
252
238
151
175
244
247
254
213
207
178
184
140
172
197
181
153
230
204
270
244
186
232
217
222
231
226
174
206
224
171
221
202
206
163
232
224
219
140
194
227
151
232
186
192
165
183
211
228
177
159
188
199
197
195
201
155
183
167
214
173
240
160
163
220
172
208
179
233
252
164
159
219
243
223
180
211
225
255
223
175
218
211
165
249
174
181
202
199
189
169
216
273
201
154
199
236
229
220
219
207
214
227
191
159
176
183
194
190
158
215
250
232
231
229
202
246
272
205
168
152
220
194
262
196
284
243
146
143
156
220
185
266
140
191
223
150
189
307
230
166
208
156
210
183
137
174
203
224
220
269
203
192
179
216
203
207
214
208
229
245
220
230
243
226
192
201
180
190
229
173
245
231
197
214
215
210
158
161
277
176
218
123
288
202
228
252
185
213
150
180
164
183
197
177
309
200
163
179
210
233
263
169
200
162
219
213
228
191
240
151
199
223
235
215
190
237
247
132
141
192
192
212
232
201
147
202
238
144
183
219
275
142
209
158
164
182
207
219
198
162
176
193
178
197
178
223
246
226
194
138
202
168
235
248
245
193
173
188
201
217
232
152
241
229
172
165
180
201
229
213
204
233
241
260
207
185
195
247
199
188
233
139
255
206
168
187
162
215
196
196
156
246
206
232
275
189
140
221
151
195
207
225
244
218
212
145
204
200
212
149
252
198
129
231
185
166
180
261
213
189
201
228
205
231
163
207
141
220
163
176
258
175
194
222
171
167
205
166
133
181
180
228
171
269
218
232
192
227
220
265
226
208
200
138
232
183
188
231
205
196
163
151
184
185
180
191
193
218
166
174
161
270
175
184
160
183
246
180
242
211
198
193
211
215
220
210
201
201
250
200
175
178
194
196
239
197
215
221
207
231
170
226
141
251
154
173
257
256
200
173
217
218
172
179
227
211
254
229
246
206
187
229
154
178
248
219
192
212
193
178
185
267
221
115
177
224
213
215
183
215
180
197
192
222
244
188
159
202
194
183
219
196
185
201
180
207
255
188
196
174
209
219
195
201
212
177
180
203
181
247
208
256
160
201
206
220
214
218
210
216
234
171
246
192
206
174
191
198
139
174
225
222
190
207
217
230
184
229
208
205
215
162
223
233
224
192
266
205
228
175
190
174
161
286
170
166
242
241
179
135
247
183
182
276
167
231
206
261
122
182
167
190
210
230
225
160
213
257
225
212
136
224
203
210
204
179
234
218
119
149
235
245
246
176
212
171
110
179
172
198
233
151
163
189
255
239
175
125
152
215
234
151
153
202
214
180
294
226
159
179
219
212
228
216
216
213
232
212
177
166
188
186
232
191
207
191
174
218
194
210
202
213
186
187
173
231
242
207
188
237
180
163
206
156
159
187
171
110
200
185
260
202
175
175
205
144
177
228
191
185
145
198
182
207
206
226
153
176
208
189
194
216
188
214
180
207
147
205
200
195
210
214
188
211
177
226
233
202
180
199
210
190
221
164
203
247
217
188
164
220
198
235
234
171
197
264
176
170
153
217
157
206
217
178
202
244
252
219
188
219
216
190
228
211
202
197
237
198
214
192
230
201
255
171
179
193
157
150
202
205
204
206
225
212
188
214
200
212
185
209
216
206
186
185
239
194
236
180
165
200
251
261
208
187
240
244
247
180
201
195
158
130
212
228
120
147
198
170
150
181
159
249
189
207
210
252
235
207
195
198
218
138
185
222
217
272
262
195
141
155
260
229
163
210
195
154
195
207
208
232
211
206
174
197
164
206
195
211
159
183
196
205
191
200
184
193
142
154
186
203
172
214
249
228
219
184
250
254
208
99
221
139
128
153
191
194
202
176
222
220
167
215
200
239
173
183
246
166
226
172
203
191
229
169
231
207
208
229
240
223
223
206
175
270
121
206
220
210
215
245
208
220
213
181
194
236
207
175
186
174
168
143
253
250
198
220
177
271
177
214
218
224
154
181
214
195
187
231
171
245
212
182
187
198
194
183
198
176
192
214
184
226
196
188
218
184
189
205
156
149
210
186
200
214
202
195
190
173
194
183
196
194
213
248
171
194
222
179
197
165
213
189
196
224
193
177
158
253
256
166
170
232
185
227
192
155
200
156
207
199
177
251
260
139
191
190
183
252
218
163
172
168
238
159
205
133
109
194
226
199
242
237
238
238
188
181
180
200
178
173
204
137
204
218
195
237
242
230
164
192
208
197
243
166
252
239
157
187
171
238
222
174
229
187
186
172
249
154
175
160
230
152
190
207
193
209
174
146
163
235
183
139
152
214
231
206
197
193
207
190
142
200
237
243
227
242
183
216
170
207
137
143
235
283
242
209
162
214
159
239
205
199
194
152
218
183
268
202
234
165
194
202
205
238
225
211
263
227
146
139
217
196
205
118
253
225
193
197
256
147
129
198
177
164
219
201
135
217
196
261
191
215
175
133
198
185
212
237
201
188
192
228
216
234
205
231
229
209
263
203
200
205
192
187
190
178
191
136
219
200
176
205
217
168
213
226
241
180
212
255
147
216
190
222
179
172
193
206
216
146
196
208
218
171
207
216
274
196
217
247
209
189
229
224
204
227
153
227
226
177
221
227
265
206
163
234
247
209
209
188
194
256
273
241
238
152
228
205
222
250
162
210
126
153
187
165
195
159
213
197
162
216
243
161
263
220
178
183
158
262
206
209
205
219
198
195
177
271
208
229
119
215
189
128
232
199
266
159
157
167
198
224
285
211
186
154
257
259
208
136
238
172
193
226
148
127
194
226
208
211
223
242
221
193
231
196
137
215
175
225
186
249
155
207
255
246
203
157
220
165
138
210
161
182
194
151
230
226
193
265
237
228
185
206
165
217
186
220
227
176
205
216
205
241
219
229
150
159
156
179
194
198
210
214
128
210
247
263
162
120
198
229
170
259
198
164
188
208
194
252
228
267
193
160
264
202
94
251
230
188
188
172
205
210
201
193
239
212
250
131
186
222
202
207
227
221
234
135
249
161
202
183
201
244
195
191
202
185
185
171
193
201
216
241
220
140
253
174
145
210
201
245
211
237
251
199
201
176
195
190
195
246
152
224
201
244
231
221
172
156
145
231
157
193
262
191
142
229
199
218
193
186
193
236
163
250
229
190
172
195
222
196
227
227
259
175
137
142
189
197
181
196
194
194
131
232
247
170
181
268
255
226
191
232
184
142
177
242
225
239
216
111
215
155
160
213
209
242
215
213
191
268
222
202
189
217
224
222
176
158
158
198
209
144
227
244
209
169
260
193
158
195
184
219
214
184
238
186
222
150
157
232
224
174
176
197
141
166
218
114
214
174
182
241
169
229
127
207
165
221
163
176
199
152
211
241
162
173
248
204
205
221
168
212
243
146
222
230
208
260
141
209
216
140
220
168
210
186
183
206
236
248
174
213
231
235
186
248
234
146
198
216
204
211
177
213
171
213
221
137
249
208
229
200
259
200
205
251
145
166
169
186
226
150
202
174
213
211
273
212
236
168
182
205
198
202
228
207
192
173
163
231
241
204
209
231
129
201
147
223
226
111
187
189
129
252
240
232
152
200
254
201
212
108
142
240
168
176
232
200
151
223
215
137
166
194
207
201
171
235
206
155
199
214
215
176
189
205
238
225
193
216
187
168
153
174
270
182
241
201
212
171
178
214
198
175
186
185
137
194
152
149
126
150
185
240
183
246
224
176
199
216
268
147
184
191
210
187
188
211
245
177
173
214
241
164
187
208
183
191
187
174
188
144
220
187
194
215
114
204
222
164
171
215
211
217
215
173
142
183
244
205
206
119
224
283
272
193
201
176
206
174
141
203
193
203
170
219
179
205
226
180
241
213
239
230
221
218
214
204
206
189
219
211
201
148
134
183
218
235
164
148
181
171
164
271
208
274
187
201
195
167
222
194
202
169
217
169
257
196
196
193
205
187
221
206
194
186
115
156
223
228
266
193
246
210
197
177
282
214
241
196
225
167
149
231
168
198
212
192
200
169
202
248
171
211
154
249
222
217
162
156
199
197
153
203
162
248
181
222
203
221
197
219
193
205
190
203
133
179
162
207
200
219
233
206
191
179
243
232
211
207
229
189
215
185
238
169
225
244
169
195
230
188
141
232
224
208
164
221
182
146
242
141
118
229
250
238
199
214
189
200
182
132
149
203
207
202
184
211
187
204
233
147
158
233
166
192
249
220
196
122
224
162
173
184
209
228
259
244
210
201
223
165
223
264
227
192
204
225
178
239
159
204
229
213
234
185
172
242
177
209
190
208
139
190
160
238
207
237
200
239
149
187
177
177
147
246
94
186
185
239
202
161
207
203
172
189
222
225
195
194
228
202
167
233
154
216
166
206
142
235
226
123
222
201
154
187
219
194
228
240
200
203
196
228
203
223
234
160
203
225
180
148
196
186
197
211
195
128
200
255
212
230
160
146
230
228
187
201
184
258
161
236
221
189
182
246
172
233
185
169
173
203
224
181
193
149
199
224
143
186
222
172
186
199
220
223
139
187
186
191
249
172
174
210
134
233
215
206
223
247
242
241
162
207
193
190
207
225
207
271
197
204
208
223
172
124
205
216
188
144
189
226
174
207
208
201
244
237
245
290
245
181
186
239
215
180
135
257
222
178
246
256
195
172
163
181
215
193
156
181
196
193
193
169
201
224
229
219
205
203
194
236
203
200
234
134
159
195
233
213
196
210
153
194
183
210
210
260
213
187
243
184
153
163
144
251
177
131
236
214
183
235
197
149
181
183
164
226
229
222
185
198
280
205
250
257
213
169
207
252
156
228
220
249
220
213
191
209
222
207
207
196
161
197
195
173
215
164
206
183
198
185
203
224
200
182
180
195
192
182
236
264
207
161
173
250
232
201
185
187
158
216
245
180
178
205
159
215
185
223
217
181
171
208
194
195
241
230
159
244
233
170
215
228
189
181
238
255
166
188
193
237
191
145
210
208
204
243
201
164
268
221
180
232
211
219
259
229
215
138
162
212
217
210
227
183
193
235
226
223
190
219
199
226
252
245
185
169
203
107
223
205
203
165
185
189
193
189
173
242
180
172
229
188
184
155
191
206
206
207
210
198
160
224
157
194
221
219
207
186
175
177
244
189
269
228
221
172
174
215
174
204
175
200
198
156
215
211
253
230
227
175
209
177
175
189
195
208
217
190
219
220
134
230
201
244
152
146
159
166
197
185
183
210
293
181
189
204
216
179
141
243
237
230
239
126
193
245
197
236
183
215
241
196
183
152
172
271
191
226
201
180
179
188
233
144
253
167
241
160
159
152
238
201
166
203
189
208
219
214
194
204
208
198
238
257
248
237
258
208
242
239
257
160
195
175
183
223
251
186
191
189
219
183
244
216
221
163
174
195
228
175
258
221
196
211
149
164
226
218
167
192
217
205
196
202
211
221
191
180
157
183
188
240
231
205
119
150
132
211
171
233
192
278
185
180
107
234
169
196
265
176
167
289
114
251
243
183
181
149
220
243
181
90
164
186
172
225
271
154
157
228
193
147
221
206
206
167
217
213
203
240
186
189
209
226
233
184
157
225
187
203
177
165
218
174
257
222
191
155
185
255
187
206
230
172
139
233
190
190
182
234
204
242
219
226
212
187
175
148
164
242
270
162
161
178
229
208
160
209
230
157
165
270
210
220
142
183
163
164
172
238
201
156
241
174
169
212
211
165
142
144
132
175
235
183
256
195
234
241
198
257
252
140
137
213
205
143
212
233
176
207
199
170
227
211
155
114
250
168
173
150
184
184
165
264
230
226
192
184
219
211
151
242
206
201
187
221
201
194
258
151
194
173
202
199
189
210
193
176
185
179
245
220
154
190
190
244
256
201
191
188
207
112
182
154
209
180
219
212
180
186
207
236
212
234
184
185
197
99
99
158
161
208
164
163
158
228
152
216
214
123
158
180
202
221
200
199
221
211
244
189
219
177
216
184
200
155
115
158
162
199
219
223
185
212
178
223
252
184
189
170
238
213
221
183
167
208
255
159
155
241
181
214
161
170
197
178
222
216
211
198
200
196
212
216
216
254
211
220
269
191
243
222
153
161
185
210
188
151
179
214
138
214
204
243
253
224
190
190
158
198
119
176
248
210
214
178
235
238
203
217
198
220
217
193
145
181
199
203
233
249
209
217
231
253
184
177
188
241
208
236
179
190
168
167
190
177
167
189
214
192
256
218
182
192
170
135
197
205
223
239
280
185
210
167
196
202
182
203
180
172
209
135
218
213
248
200
196
172
261
174
207
216
172
213
224
219
203
186
146
217
230
221
187
215
182
180
214
221
195
294
152
196
183
228
203
208
228
209
213
218
212
173
230
225
213
137
228
164
132
191
180
218
164
184
179
220
190
184
191
221
201
232
237
223
225
206
231
270
212
196
140
189
197
179
233
130
201
254
194
125
267
159
243
211
198
141
205
208
143
228
211
151
180
157
212
171
271
216
110
210
212
236
208
236
224
247
204
192
143
237
180
194
168
184
223
197
233
159
178
244
215
206
216
153
226
192
217
192
187
155
258
283
183
191
175
184
215
173
141
184
224
157
184
190
157
193
163
186
221
181
230
212
229
210
180
217
205
208
217
180
237
148
202
214
228
186
232
221
218
244
227
211
226
208
217
207
176
184
170
178
250
206
159
130
176
175
233
188
212
188
207
226
179
186
166
229
197
212
252
190
158
239
221
156
172
176
232
194
218
250
196
225
209
177
174
111
231
154
168
212
184
197
186
150
201
180
204
204
202
185
139
217
232
208
206
218
222
205
142
226
227
158
107
253
225
207
225
188
204
271
240
228
156
150
222
152
177
225
181
173
174
237
210
207
252
143
204
202
196
197
230
218
165
191
257
143
254
168
187
185
233
222
174
224
178
210
164
222
194
215
248
238
219
181
209
214
183
168
223
140
178
198
172
192
229
222
231
176
270
244
170
203
202
200
166
153
108
181
199
169
191
197
131
249
203
172
192
203
230
235
188
242
120
242
156
244
179
150
204
228
207
171
182
222
242
219
240
191
221
209
189
226
199
196
159
179
275
171
215
258
265
146
187
242
164
194
187
256
181
252
137
276
147
200
185
182
214
191
163
217
194
187
217
140
230
164
152
257
207
179
189
173
215
244
128
151
237
194
243
190
232
214
218
169
247
186
195
202
157
223
174
254
165
167
152
115
228
245
229
197
240
203
206
226
212
259
221
177
304
169
194
210
253
236
258
245
200
178
271
227
180
296
263
209
238
224
258
222
204
222
218
204
163
170
260
181
184
183
181
221
214
151
256
157
222
197
207
200
196
203
183
221
236
180
188
184
220
169
185
187
194
241
247
201
176
169
220
208
163
195
179
216
228
244
208
225
126
241
147
199
202
210
249
224
162
215
198
227
186
194
249
191
254
225
169
207
161
238
157
203
208
135
223
134
190
157
196
220
177
194
237
280
209
249
208
227
230
184
160
228
200
211
136
220
182
211
206
227
217
205
198
218
202
186
204
218
120
207
229
188
189
160
215
204
157
184
184
218
218
152
213
166
161
235
167
234
167
189
246
188
132
125
179
204
235
140
145
229
197
186
167
235
195
221
234
200
212
192
172
224
232
237
196
159
201
185
137
187
207
165
259
213
193
210
221
245
195
190
210
219
175
222
201
229
183
196
210
196
213
187
181
175
150
228
203
197
211
240
175
182
196
229
220
216
226
219
187
202
209
234
171
208
235
210
200
151
219
194
210
191
205
119
196
226
176
174
155
231
191
174
154
166
260
207
165
218
153
155
212
193
203
174
186
186
196
189
245
190
254
180
188
191
230
258
243
180
226
242
207
219
193
179
181
209
210
150
181
203
155
158
151
180
182
195
208
189
212
191
177
202
187
183
228
207
229
222
229
199
249
213
231
168
215
208
141
228
180
180
238
206
182
196
177
234
150
168
211
132
154
177
183
232
192
272
219
175
225
188
163
197
214
176
140
249
159
183
203
175
230
170
228
163
235
166
179
221
191
160
196
192
199
161
231
180
242
230
224
149
177
169
184
222
243
233
174
176
184
213
216
230
222
171
176
152
257
244
194
202
180
190
252
206
204
269
266
159
144
210
205
131
146
243
199
233
164
214
234
220
226
253
245
220
195
139
224
203
173
202
166
231
210
230
259
209
134
246
195
231
135
254
155
217
129
176
213
156
209
197
192
186
187
178
188
244
201
160
195
249
212
184
239
227
224
214
248
250
223
178
139
227
190
198
202
157
190
181
208
196
178
245
188
211
223
132
204
230
204
221
216
209
219
250
185
210
191
254
185
160
238
163
196
258
188
204
205
223
190
204
196
200
249
234
231
181
138
184
248
167
204
167
166
210
196
200
136
210
247
110
171
144
233
177
261
159
187
201
180
171
213
209
206
237
183
181
212
221
186
240
231
240
239
247
171
232
147
232
235
171
218
207
235
161
191
195
201
232
191
246
177
217
235
234
138
179
256
162
239
210
226
260
160
219
170
220
271
181
163
214
211
262
170
235
181
196
236
162
171
263
219
175
252
195
193
230
136
214
191
202
160
176
212
148
182
189
227
187
243
270
241
264
203
199
178
227
196
218
252
183
225
146
188
157
195
240
255
226
177
193
148
213
206
229
203
191
225
204
160
230
194
206
212
179
163
172
202
253
196
173
181
230
200
243
222
176
149
189
166
179
174
170
207
172
173
193
153
218
203
220
231
153
215
159
229
190
216
185
199
223
220
163
156
203
247
187
188
228
129
190
164
220
212
239
208
252
205
234
192
210
157
226
174
213
227
185
241
196
248
228
237
262
181
203
204
246
180
250
192
178
209
141
159
265
208
229
128
226
248
228
225
202
220
258
200
203
190
184
189
185
224
202
174
183
148
241
221
247
168
184
234
250
200
250
206
186
222
244
222
249
232
152
237
179
250
163
201
171
167
248
268
214
197
211
284
204
135
176
193
152
246
234
174
165
171
201
142
213
219
209
210
207
210
173
248
163
263
268
208
204
242
198
258
235
154
186
156
247
193
200
180
218
224
188
162
139
172
196
162
208
230
145
141
114
250
230
154
173
173
216
250
150
189
182
197
186
208
188
173
221
241
196
245
172
254
225
264
185
219
160
197
208
186
181
228
181
242
194
201
169
230
167
211
180
229
124
208
272
146
244
204
182
214
154
217
204
228
201
221
181
183
152
200
220
212
203
210
235
176
126
184
201
224
213
189
189
212
144
241
205
186
179
169
230
234
185
154
135
208
238
241
122
207
167
191
210
219
184
171
190
248
172
243
170
179
135
203
190
190
186
198
180
197
230
160
153
208
160
215
196
166
194
225
265
145
231
209
163
258
266
246
190
146
214
221
220
151
144
216
165
258
220
217
159
199
180
160
244
218
203
191
151
227
142
193
208
195
210
207
209
260
208
194
225
274
137
150
176
198
178
177
230
205
132
210
228
219
197
234
260
249
152
199
221
205
212
200
249
176
175
176
224
150
215
157
192
186
187
241
226
174
114
165
191
227
179
217
173
171
216
177
203
165
172
158
102
273
229
235
191
182
174
170
215
193
228
252
239
176
196
238
265
196
192
170
201
214
227
166
131
206
196
230
203
207
227
155
189
198
252
220
210
221
219
212
245
231
201
233
141
139
209
204
221
193
230
184
211
248
275
155
221
169
223
246
186
188
209
207
219
201
263
206
177
235
249
192
160
264
154
232
196
192
214
214
155
253
182
211
183
182
258
228
201
188
150
213
179
198
201
176
164
153
197
230
169
200
154
135
122
212
193
180
211
265
212
287
273
225
150
175
135
194
161
138
243
130
139
215
185
248
178
250
189
121
169
189
216
220
165
218
179
205
229
124
215
127
260
168
184
164
181
216
181
208
198
187
181
160
190
179
251
223
160
241
183
130
174
157
192
201
193
158
216
231
202
127
184
158
203
214
125
210
183
237
270
237
244
244
151
154
201
224
136
230
182
166
156
169
163
244
197
194
212
241
221
150
207
229
240
181
146
198
239
186
195
239
201
183
259
194
198
180
177
232
245
242
114
221
137
266
222
193
234
174
243
176
158
215
151
188
118
197
159
222
173
169
213
191
181
175
195
256
149
252
195
205
240
215
195
266
183
264
265
178
190
196
183
239
258
117
127
194
197
107
157
242
208
253
174
233
164
208
140
174
179
157
192
164
188
200
194
173
249
181
234
232
188
199
188
190
199
173
172
240
197
154
218
238
177
173
247
198
212
191
240
267
277
261
196
221
273
151
239
180
197
205
196
214
228
247
249
192
216
196
204
222
152
216
178
192
204
192
233
242
207
190
218
196
174
261
215
150
184
212
162
187
237
213
158
139
239
173
196
234
251
260
162
216
193
234
208
191
155
141
150
154
184
182
211
174
205
183
261
190
174
254
228
197
246
234
174
208
213
168
226
228
163
133
200
200
264
108
203
202
228
243
185
188
214
127
182
228
218
238
220
204
182
261
245
231
161
205
198
282
195
143
205
189
149
206
177
228
151
230
247
208
224
174
192
224
236
207
219
248
166
220
173
153
210
204
214
117
130
215
216
206
199
158
214
194
178
211
248
222
200
237
214
213
199
220
191
239
110
234
208
257
172
210
206
274
123
176
213
198
187
168
211
203
177
233
208
222
245
197
195
210
213
190
215
229
197
199
193
191
226
203
187
163
230
216
198
210
184
156
228
172
160
145
249
184
213
160
260
236
219
181
190
158
211
212
213
136
190
206
235
251
198
188
193
198
228
233
183
159
179
159
210
197
160
149
201
189
249
250
187
171
215
217
217
217
189
154
194
224
155
139
196
247
256
177
142
179
185
133
239
190
280
208
174
136
195
197
230
253
211
219
163
174
208
198
261
173
162
211
219
209
228
206
200
183
185
255
237
250
151
197
210
186
181
254
208
198
157
234
202
169
214
208
112
154
201
213
305
223
246
174
109
139
179
195
223
238
160
184
237
231
163
230
234
160
216
228
159
111
194
201
190
171
238
212
240
177
229
236
156
221
219
196
208
271
149
196
235
251
144
149
186
230
220
208
207
212
217
187
218
230
237
159
204
181
131
233
187
252
189
213
226
222
207
212
196
216
199
226
230
193
209
203
218
210
261
194
188
189
211
270
185
128
184
209
183
137
205
216
200
160
235
210
135
182
289
137
226
237
232
182
208
216
166
203
183
158
231
170
198
221
200
158
185
188
186
236
207
187
158
211
189
155
196
188
254
270
176
209
186
221
210
180
221
187
240
251
217
188
174
255
237
184
231
212
260
162
230
163
161
181
214
217
127
182
196
225
187
220
195
181
194
198
119
211
215
214
265
205
180
245
196
196
272
162
175
175
270
238
138
219
196
224
229
179
222
219
212
216
195
211
170
207
217
240
199
208
221
246
183
186
165
192
170
165
190
228
239
185
224
249
232
235
222
172
236
241
155
178
151
147
237
207
186
228
241
195
217
218
155
181
188
141
253
177
253
166
252
232
144
220
167
135
208
166
174
173
197
217
214
210
234
246
148
201
199
241
214
163
200
199
225
177
248
230
204
215
200
217
182
199
240
164
215
127
248
199
189
189
186
201
166
172
170
207
221
221
220
188
176
148
187
275
202
160
152
185
143
183
221
198
248
216
217
200
229
256
197
235
222
209
206
215
197
226
276
209
200
203
175
219
168
188
232
197
165
206
184
176
104
192
141
208
168
215
194
237
167
182
173
231
208
190
238
150
195
157
229
153
190
219
193
259
166
222
172
230
212
215
216
181
214
247
145
183
236
200
236
173
234
181
230
215
176
225
224
207
238
189
227
233
183
204
197
171
182
128
205
194
236
229
233
220
144
226
207
155
229
232
230
224
148
200
254
155
237
171
239
206
176
161
156
227
198
206
147
233
221
185
143
248
178
226
203
169
252
214
179
176
193
233
203
227
203
214
241
212
201
205
212
241
220
240
246
201
212
252
177
256
196
175
216
213
220
162
169
157
197
228
207
202
198
188
259
237
141
199
186
188
173
165
145
196
213
200
161
184
180
190
145
220
153
193
185
144
169
172
182
160
214
244
245
189
172
202
196
209
190
230
174
218
227
219
115
214
164
198
168
248
220
160
196
176
206
228
150
259
229
203
250
192
177
132
240
156
231
210
184
195
199
227
217
205
222
194
203
135
257
220
224
271
208
225
199
220
232
203
205
156
198
257
184
185
188
213
207
211
205
226
147
232
159
230
158
185
207
166
198
209
177
190
174
247
139
168
186
216
229
144
176
171
215
211
185
312
169
190
186
191
182
194
214
149
248
174
178
132
220
132
161
207
181
196
209
206
229
192
154
153
253
259
266
209
225
125
245
190
209
223
188
206
172
155
187
158
233
201
178
207
170
239
152
214
213
157
198
188
118
204
198
186
213
128
177
216
190
185
179
188
207
193
218
185
215
204
200
145
235
160
145
176
191
199
237
201
185
183
157
182
209
267
244
215
151
177
259
238
211
177
237
211
228
191
266
215
203
143
156
245
229
220
226
140
211
200
184
207
272
229
213
240
214
218
177
229
168
239
208
243
202
262
235
219
202
92
226
192
255
177
242
175
214
251
165
166
243
216
234
220
176
144
234
207
219
226
206
226
196
154
152
207
217
252
226
212
213
215
202
192
234
131
181
216
203
210
173
160
229
251
130
231
267
203
255
197
177
123
228
235
205
209
200
182
203
222
240
206
223
171
159
168
241
169
174
221
252
211
157
167
168
177
239
190
208
233
177
189
204
240
187
262
183
194
144
217
149
187
160
201
163
235
192
225
186
199
261
196
212
222
212
189
249
121
200
192
114
210
156
188
170
133
245
183
162
173
193
178
155
254
229
204
219
180
247
225
213
117
237
221
205
287
187
188
278
207
230
188
260
205
190
213
259
166
199
203
214
244
179
250
184
211
190
155
178
176
233
214
174
206
202
173
255
255
196
201
282
242
193
236
213
140
183
208
219
230
292
188
231
162
167
224
182
168
209
221
167
191
185
184
228
211
229
175
180
244
207
217
245
282
177
187
179
225
164
243
215
166
182
250
192
193
212
172
229
268
194
223
160
169
176
164
195
227
240
236
200
219
191
190
214
196
261
174
205
226
187
178
225
157
157
164
206
200
176
170
202
176
149
217
188
142
180
161
220
241
210
175
208
158
286
184
190
194
177
207
190
233
197
182
235
231
183
230
191
246
171
120
163
172
168
241
269
204
237
212
209
186
231
201
160
258
177
209
179
266
217
160
188
287
199
149
187
193
254
173
262
233
214
196
152
195
205
213
153
195
196
209
304
201
164
199
225
226
231
208
183
202
186
214
242
186
166
197
240
209
158
191
213
223
254
188
195
229
165
196
152
199
173
237
199
214
180
169
242
228
176
174
216
181
178
194
242
173
139
205
198
202
217
212
220
188
190
255
140
176
211
211
206
241
218
214
194
238
218
192
193
204
180
201
205
216
229
200
189
209
189
217
152
228
174
180
234
147
189
161
195
240
175
185
213
182
159
159
224
199
160
253
191
219
196
254
235
182
239
207
170
161
216
171
173
216
205
252
238
199
222
161
125
196
198
194
184
204
199
168
161
230
167
206
195
202
200
264
211
266
238
259
199
185
220
155
208
207
257
200
231
226
179
207
246
135
245
177
163
173
270
177
218
224
196
197
191
134
184
120
151
205
229
187
215
199
183
200
189
222
183
173
176
170
226
175
161
210
184
153
210
146
229
208
245
195
245
181
179
137
145
269
182
199
122
207
186
171
237
245
196
226
202
237
199
166
260
277
205
219
190
235
217
191
213
249
211
213
216
152
194
230
196
213
241
229
146
212
225
161
164
179
256
191
163
258
193
209
120
196
240
195
149
211
205
180
171
213
176
220
240
154
163
223
162
157
186
224
228
199
191
181
190
190
226
216
213
197
263
170
163
214
170
178
165
144
209
231
243
187
185
165
235
244
271
170
242
179
172
226
131
162
193
174
174
117
179
193
240
206
188
176
156
240
195
242
164
279
159
202
194
177
185
192
184
207
170
203
218
221
248
261
157
181
176
209
204
244
169
262
193
235
247
224
222
214
231
230
238
213
192
206
216
237
229
207
198
142
155
152
178
254
235
123
170
185
221
166
242
178
218
185
129
217
238
178
229
202
225
249
247
180
182
161
211
221
221
207
245
232
164
190
206
224
167
184
143
166
188
190
187
119
133
208
233
204
165
276
203
229
219
238
162
187
209
225
250
204
241
190
286
218
231
164
237
205
190
197
226
266
198
236
248
209
236
170
228
203
252
209
169
251
173
142
204
166
252
244
185
181
149
262
246
208
164
225
148
200
219
227
193
220
200
250
205
162
150
196
131
205
224
275
201
234
171
176
213
230
129
238
213
251
219
239
227
182
188
198
215
151
194
191
232
200
240
207
143
214
267
160
179
191
184
174
220
190
197
165
223
206
211
222
207
169
131
204
215
269
174
212
187
134
152
171
205
145
222
211
240
217
270
159
126
242
158
240
228
195
260
202
244
157
191
250
217
248
185
153
214
243
194
269
239
172
135
174
207
242
214
191
188
165
180
194
171
167
195
209
199
236
200
169
203
225
142
220
221
219
186
186
224
191
234
235
225
152
195
189
175
187
234
179
182
186
194
223
145
162
207
239
154
225
149
167
179
280
227
228
225
176
213
227
257
267
162
207
187
205
226
160
180
260
205
222
190
179
240
206
231
196
198
214
187
240
202
201
178
133
204
199
190
248
191
206
240
199
278
183
226
228
160
228
170
168
200
201
203
197
198
222
172
260
114
199
207
180
153
187
204
139
272
239
200
207
208
188
189
192
194
183
173
204
232
215
194
176
238
230
206
176
191
215
211
204
224
183
213
204
294
166
218
211
212
231
173
186
203
172
194
200
184
185
217
211
217
219
165
228
186
202
238
168
192
247
187
159
205
216
199
243
197
247
160
178
158
168
219
176
211
206
193
189
165
175
163
221
214
210
222
235
163
154
228
214
149
178
152
196
134
278
213
180
241
211
181
209
242
237
200
167
213
183
208
210
166
197
173
209
191
175
198
190
225
148
218
212
213
162
216
223
210
195
178
175
237
232
216
194
176
190
212
214
200
177
201
229
199
167
231
193
222
215
187
128
206
243
208
178
194
125
157
214
218
161
168
189
210
198
213
222
236
156
202
244
208
221
167
216
208
205
225
207
255
154
219
158
216
248
135
211
188
293
226
138
228
167
202
198
234
227
177
199
154
169
184
258
164
144
215
170
199
213
247
190
157
197
215
157
133
211
194
183
267
260
245
141
160
196
173
236
157
158
233
190
143
211
182
200
196
247
187
242
200
243
265
194
246
166
187
288
183
180
215
221
217
196
258
162
222
115
194
203
124
186
221
228
247
245
255
243
206
216
161
179
193
156
218
210
165
203
186
207
156
190
262
235
251
175
139
151
161
221
141
229
210
219
246
178
160
270
159
205
200
236
170
248
241
250
174
243
301
233
234
236
199
238
186
259
244
207
210
243
227
247
189
203
239
193
190
178
207
294
244
136
204
230
212
179
218
180
269
217
231
219
198
226
216
188
199
223
260
168
252
140
216
184
241
209
227
187
162
195
194
196
222
228
243
186
217
188
144
169
276
205
229
195
213
187
276
156
194
186
237
234
156
171
203
191
207
212
181
181
237
226
226
87
204
239
208
220
174
218
156
194
214
213
227
161
236
180
185
179
217
210
226
210
246
249
154
209
127
185
154
193
140
197
257
223
227
146
218
146
145
185
239
204
171
165
209
211
192
194
251
231
223
212
241
204
230
227
185
235
155
183
221
225
193
169
203
251
132
168
174
224
212
148
190
154
222
224
224
164
214
175
163
189
186
186
178
179
259
180
217
203
256
170
179
238
185
199
221
226
208
251
198
213
241
211
140
183
197
252
187
206
194
231
202
183
179
158
253
204
281
229
124
263
223
220
159
176
242
214
213
235
253
213
214
162
215
190
198
248
169
164
170
141
253
140
210
215
215
195
232
178
178
210
235
216
184
183
209
142
177
207
196
250
196
174
163
161
175
166
157
192
185
176
117
206
205
212
262
246
197
235
209
232
204
199
182
165
181
201
238
168
195
241
224
245
131
267
212
210
186
260
156
267
236
200
127
220
235
176
217
190
223
236
228
199
128
192
175
156
218
135
225
259
168
217
164
194
194
173
162
104
235
184
212
167
190
174
179
230
206
214
208
169
265
191
277
219
172
211
159
210
162
208
234
226
147
220
210
252
212
204
245
248
200
206
254
90
187
220
193
191
203
246
166
167
242
137
233
182
212
193
188
147
244
219
197
249
231
283
236
248
237
163
185
181
205
203
175
127
221
111
258
222
240
246
194
226
192
181
243
210
209
180
194
200
204
200
196
203
214
199
206
213
176
206
215
116
172
212
232
253
187
233
152
221
203
153
214
176
230
183
172
213
222
204
200
237
200
237
206
243
215
240
149
178
221
154
190
143
190
151
218
190
233
166
252
157
294
280
211
227
186
192
118
228
200
274
189
234
208
205
199
228
212
250
200
149
165
198
165
134
267
157
191
174
153
177
192
151
164
240
193
134
203
168
194
190
199
143
210
228
120
224
245
209
200
194
194
165
186
196
188
120
210
188
183
200
161
227
198
129
151
217
226
232
159
183
208
233
232
174
251
214
167
146
214
187
214
126
227
260
185
167
191
192
234
246
219
195
213
183
193
201
188
160
229
160
208
171
206
142
235
130
179
147
203
178
269
213
178
160
240
154
226
184
159
149
200
171
236
227
224
170
153
166
166
205
224
224
201
166
245
231
187
202
192
257
254
236
201
214
113
222
132
209
191
161
243
243
230
178
269
169
238
141
183
218
146
217
218
172
210
225
236
220
164
257
166
163
225
213
139
197
160
174
138
177
248
165
165
208
225
222
179
176
161
171
230
240
201
190
222
225
239
204
173
188
168
249
193
135
212
190
169
168
228
184
201
199
158
224
211
186
224
189
277
156
223
193
213
216
197
175
172
241
140
241
198
226
193
224
176
189
158
230
179
183
181
164
231
172
199
192
155
213
263
169
258
147
217
167
174
243
158
212
245
193
224
250
247
191
203
227
239
141
171
177
167
233
224
190
179
211
135
186
227
181
182
264
203
163
149
207
220
245
177
241
185
250
271
234
193
176
248
222
210
147
187
173
175
229
226
169
180
221
202
142
125
233
248
224
161
198
210
190
214
210
170
215
207
217
173
188
298
201
148
237
229
226
185
228
182
207
166
190
179
220
192
172
151
218
223
169
91
211
224
186
209
220
153
258
177
184
239
188
180
179
258
228
252
234
209
208
261
242
179
195
213
197
183
219
163
138
214
166
217
225
189
173
190
237
231
238
216
226
172
189
209
186
157
185
251
262
221
139
189
159
206
203
229
197
198
192
143
189
258
180
223
149
208
156
189
223
206
232
195
204
234
124
262
158
180
224
246
223
280
190
221
206
207
228
147
184
161
215
176
165
232
209
246
169
195
140
151
194
153
186
221
196
173
224
208
130
231
172
236
203
196
215
237
172
209
235
191
178
230
166
219
203
176
206
259
186
123
201
154
157
180
202
121
174
188
190
149
135
186
183
274
229
177
259
228
158
218
217
181
143
170
233
161
160
208
206
127
164
172
173
211
185
189
228
156
191
193
192
158
184
123
192
206
224
192
196
122
154
236
189
157
181
232
234
212
198
171
216
227
163
224
209
166
226
180
185
216
183
240
139
204
182
259
207
202
178
173
147
235
150
237
216
202
152
209
157
237
256
212
256
220
195
151
178
203
260
235
143
167
220
252
244
195
202
234
141
205
203
135
174
235
205
257
187
249
174
174
163
176
178
200
183
201
273
199
193
267
238
224
178
241
230
196
179
200
210
202
240
181
226
217
198
168
181
149
193
196
211
191
212
210
218
223
212
189
193
207
232
218
163
160
185
208
196
237
172
248
140
201
165
142
197
253
137
206
253
219
151
157
187
230
204
231
197
165
175
136
211
227
183
180
178
240
252
133
206
221
192
210
228
181
206
182
229
241
207
161
173
291
169
223
189
263
132
204
166
239
247
204
216
281
212
254
202
162
145
182
218
177
206
204
206
195
168
264
144
132
218
164
210
195
196
176
216
206
224
244
188
180
217
245
207
215
192
236
217
202
213
203
179
223
206
192
232
212
230
222
177
164
227
185
217
225
206
228
200
219
201
272
151
190
201
174
263
212
220
183
218
202
205
263
222
149
181
198
238
157
169
206
116
208
182
175
219
205
170
197
223
183
203
202
230
183
237
230
194
185
272
222
225
149
165
190
207
161
200
197
210
208
226
163
163
207
183
222
233
260
232
207
205
238
133
194
217
232
262
177
225
159
238
194
189
213
196
191
207
169
181
213
208
210
233
190
222
224
178
206
125
211
200
190
178
186
205
224
277
222
244
254
144
156
219
278
172
226
243
225
191
229
202
274
242
267
202
200
203
239
207
179
129
170
224
128
184
164
171
222
148
241
172
147
155
166
217
193
217
182
181
242
260
202
178
200
207
206
175
190
109
199
219
238
165
197
163
171
222
206
273
193
140
226
198
179
201
196
195
236
195
175
213
222
186
247
192
258
196
191
170
202
193
269
176
194
207
255
174
176
212
198
169
207
210
154
147
199
207
207
194
211
183
224
169
224
259
229
231
188
212
252
233
188
204
143
203
165
198
220
186
231
150
207
152
179
217
207
229
210
184
159
169
226
219
228
212
214
200
181
232
238
237
212
141
213
157
239
197
172
178
182
163
182
250
182
230
180
170
232
209
201
156
196
163
202
202
216
227
223
242
189
200
214
171
231
181
205
163
205
145
222
199
231
198
218
133
178
208
252
140
230
204
196
210
212
252
219
188
241
208
199
196
236
192
218
213
197
232
218
203
192
222
159
194
222
249
221
237
226
202
224
239
246
241
179
207
213
205
156
155
177
226
233
194
195
239
200
226
210
216
237
207
170
187
252
235
179
188
169
141
194
192
122
202
187
246
244
172
252
259
162
256
227
196
237
178
174
233
160
182
141
195
188
219
188
169
202
125
193
275
223
173
204
197
186
234
195
271
198
229
181
187
133
249
176
223
162
181
191
183
209
230
217
183
212
219
216
238
152
187
218
125
214
191
142
174
230
194
220
168
229
167
214
267
203
262
200
205
207
174
246
226
169
216
167
152
197
187
193
220
214
166
288
170
123
206
232
173
182
190
160
261
239
162
123
194
199
142
236
179
222
173
236
269
151
215
232
222
206
259
209
168
223
171
189
205
182
251
223
227
233
182
232
205
186
237
163
184
254
204
190
180
169
166
280
223
114
215
116
137
189
126
190
219
239
195
161
231
165
236
235
209
181
214
242
206
250
231
244
205
161
204
184
236
157
208
220
234
254
209
191
186
205
202
224
172
216
210
213
275
155
209
170
172
207
195
213
254
181
175
210
154
195
184
188
162
186
215
174
242
222
236
192
222
228
177
165
202
224
190
141
198
195
228
241
254
170
182
194
255
93
156
258
214
163
201
238
205
253
166
260
169
234
110
141
169
172
211
272
139
221
241
234
218
209
203
222
226
164
178
188
239
179
216
202
202
174
203
198
135
138
216
199
233
150
153
170
217
227
203
195
254
206
203
186
177
136
227
199
207
258
206
233
194
218
242
223
208
186
197
144
255
172
201
168
232
177
163
211
151
184
172
213
160
234
198
233
193
211
182
195
252
247
192
179
200
145
192
172
144
308
121
213
222
154
211
142
285
205
201
188
209
204
219
185
201
210
220
178
214
211
192
281
195
195
226
238
219
196
244
225
231
242
162
213
194
213
178
219
256
221
258
197
189
192
230
188
158
165
231
254
204
188
197
173
170
240
170
212
179
216
183
241
209
194
162
141
252
144
219
160
160
162
192
194
190
193
204
168
233
192
183
143
204
227
169
170
230
145
148
182
222
214
201
137
150
237
229
212
177
238
178
200
220
174
194
222
193
184
153
215
179
156
195
213
265
231
165
190
249
241
187
183
157
189
184
197
203
230
162
234
218
232
178
217
164
245
187
189
208
224
211
177
108
200
240
141
184
172
197
217
205
183
231
196
219
211
208
181
237
258
142
232
178
162
201
128
232
155
238
230
86
185
183
271
229
221
184
242
174
227
191
162
212
189
210
225
224
189
158
194
195
178
185
147
197
238
225
197
175
247
252
227
234
231
154
260
196
255
150
169
175
160
188
209
216
244
137
206
200
240
241
214
250
222
163
194
189
225
184
227
216
228
230
238
194
186
161
254
244
257
140
223
254
165
138
205
210
150
212
284
202
211
247
194
205
174
122
197
222
152
222
138
269
197
215
207
202
231
189
166
218
180
186
139
237
208
198
183
252
208
209
175
175
205
194
196
219
185
213
241
243
218
201
185
174
225
196
133
251
239
190
241
221
187
135
170
192
255
235
188
221
256
189
200
194
235
171
215
231
275
151
191
240
215
175
183
154
203
249
184
180
211
187
169
214
181
161
215
201
136
268
225
201
151
170
147
210
221
276
192
275
280
180
215
191
225
192
163
161
216
108
207
212
227
262
210
152
164
181
239
191
224
179
257
168
243
137
194
163
210
243
141
142
185
204
181
161
231
221
166
209
234
134
130
212
164
184
134
191
197
200
174
177
196
186
216
190
248
223
229
205
213
204
176
131
239
239
177
260
195
200
203
213
146
224
241
261
232
197
213
175
194
148
269
201
203
172
205
142
222
260
233
211
207
213
219
250
204
182
216
166
163
168
226
198
191
202
231
228
201
185
164
268
205
172
134
249
136
193
172
150
193
254
187
174
217
231
206
136
180
266
219
232
185
209
235
223
212
222
234
197
256
196
197
215
197
155
206
219
150
164
192
232
197
212
197
204
185
241
220
223
270
177
223
176
179
176
226
168
192
251
237
229
238
244
196
214
175
192
242
288
264
198
139
226
184
159
216
222
238
251
207
214
154
226
222
142
209
178
175
203
187
191
147
256
200
152
124
164
197
236
195
272
245
199
237
207
225
224
201
182
235
220
207
188
191
186
145
148
264
204
187
220
190
225
207
155
213
159
200
144
145
246
159
194
200
201
244
237
150
249
214
151
188
138
213
133
177
233
226
244
244
226
165
199
134
253
202
194
202
185
119
228
219
241
131
194
185
151
187
250
234
223
178
176
179
184
253
138
177
228
177
163
201
171
168
185
210
226
171
168
216
194
225
203
250
199
261
195
216
261
204
147
167
237
208
196
221
239
223
159
194
228
166
218
206
281
234
247
263
240
236
107
231
184
211
143
177
167
170
196
171
172
177
233
181
249
183
192
239
265
184
237
193
169
245
205
163
172
160
214
215
192
228
188
172
186
196
229
215
224
244
234
182
194
220
205
237
292
206
179
197
213
182
125
176
216
227
191
177
208
235
211
195
180
219
226
207
176
159
221
221
211
219
183
168
135
191
163
277
212
213
219
201
222
229
144
210
194
232
169
207
253
168
199
179
171
170
197
190
175
200
270
140
167
170
178
212
209
191
209
153
240
213
202
168
176
188
180
176
188
133
230
160
206
253
206
213
206
172
212
224
187
175
176
212
190
234
173
216
133
218
223
175
186
193
218
155
147
231
197
213
203
178
146
285
123
154
172
193
227
241
177
223
231
243
195
201
227
210
189
233
258
249
158
190
176
163
129
205
165
205
157
165
190
227
174
229
245
213
153
185
179
182
171
218
255
194
205
161
217
251
201
197
159
233
228
193
211
227
170
195
248
250
252
241
185
232
181
209
122
198
244
160
161
195
174
252
229
197
174
160
186
256
194
194
206
121
188
256
182
147
215
189
143
201
212
206
232
164
241
203
186
161
136
258
204
189
203
183
219
221
226
182
189
187
188
189
228
195
241
198
232
236
212
214
185
226
208
202
189
199
216
231
232
174
205
179
203
225
203
185
182
197
219
241
194
174
240
202
180
129
245
186
207
201
191
241
211
170
146
152
174
213
259
174
194
225
175
152
172
177
194
249
169
260
199
235
196
139
213
111
232
186
271
253
186
219
234
208
219
206
180
250
239
216
173
194
196
239
286
115
238
251
202
206
225
257
223
160
182
233
221
200
231
229
206
186
183
228
188
145
192
193
209
172
165
129
190
118
175
166
150
217
269
208
206
154
159
202
149
265
176
184
229
153
196
162
174
190
213
204
187
145
218
153
205
143
228
174
152
211
211
170
192
196
231
227
168
244
202
245
131
209
171
126
175
230
163
235
210
187
206
227
198
169
184
267
175
167
229
254
190
170
206
229
236
219
191
186
214
242
153
154
208
191
217
190
211
219
183
196
225
198
161
222
182
216
214
235
244
253
233
197
238
239
178
117
198
166
248
167
191
219
178
249
158
186
284
192
227
176
171
265
203
178
204
148
233
197
188
228
170
210
209
221
184
166
254
165
183
201
175
243
215
237
184
204
186
235
209
199
155
194
251
233
176
171
169
189
245
235
206
215
176
191
113
232
252
199
229
199
179
180
159
168
253
184
255
161
211
244
223
178
148
140
201
152
136
262
158
219
245
176
243
228
196
238
162
195
214
165
180
196
217
254
185
186
200
199
234
180
240
234
216
218
209
231
194
201
213
271
177
181
168
219
215
161
217
182
198
211
219
174
171
227
208
125
199
194
187
212
193
156
190
209
245
216
231
204
175
233
170
259
218
208
216
144
214
149
243
183
156
134
206
215
215
214
180
187
243
189
227
261
152
261
230
242
169
100
225
165
184
155
176
234
153
183
232
164
220
226
205
203
191
194
206
142
229
218
200
200
170
173
106
194
226
162
92
189
160
239
178
183
209
202
224
246
190
222
166
203
160
245
236
202
227
141
200
206
138
198
198
228
228
202
196
201
290
227
110
207
216
117
190
164
138
170
160
214
229
178
224
194
198
215
208
238
224
226
194
187
180
174
160
203
225
232
261
216
212
174
123
169
227
153
146
154
129
204
218
246
215
173
161
176
153
208
177
212
133
179
205
145
185
252
246
129
214
183
226
193
218
285
214
152
187
185
201
205
243
177
236
165
182
177
210
165
212
202
200
192
198
200
190
196
216
179
157
147
143
147
168
222
197
218
148
238
278
213
239
205
139
224
205
251
220
185
95
171
241
199
187
120
193
209
204
143
220
160
187
193
154
151
190
118
245
260
216
186
246
225
201
233
222
167
213
216
194
167
170
145
242
186
186
226
192
227
191
243
161
292
193
129
231
239
186
192
173
248
190
223
214
180
206
193
208
169
171
248
230
227
203
218
256
205
171
170
233
200
216
314
198
254
182
255
166
226
231
207
215
157
195
196
180
187
189
206
204
194
211
210
186
230
169
201
180
189
212
285
237
149
247
169
250
182
196
192
196
170
185
183
217
157
237
229
218
189
164
148
165
175
230
231
197
174
232
235
143
244
209
164
261
203
198
172
221
190
251
208
171
181
220
193
125
209
164
207
255
305
149
201
170
256
168
161
184
193
223
168
218
152
134
231
200
215
173
167
166
169
227
189
272
220
225
235
234
204
160
239
222
230
199
225
220
180
129
201
206
164
198
165
184
120
166
173
214
212
188
169
152
171
169
165
222
153
215
193
251
209
135
265
163
181
220
184
185
169
180
184
176
218
161
194
146
232
211
161
242
242
194
220
239
154
241
205
197
112
151
154
186
202
139
214
205
183
231
174
187
209
219
199
254
224
191
232
290
186
178
151
164
145
168
180
272
232
199
196
199
187
237
215
219
221
212
191
193
177
178
251
168
142
198
218
229
170
170
209
186
222
213
208
257
208
170
177
217
193
129
227
163
178
225
176
225
151
164
215
210
243
227
185
181
202
216
203
169
222
218
195
175
286
150
210
169
240
209
223
200
180
176
201
231
212
224
111
186
271
157
224
143
201
144
222
193
228
167
189
189
224
159
217
222
204
224
217
231
197
231
224
257
195
226
209
265
234
196
168
203
230
210
169
161
208
228
161
170
243
213
182
174
140
222
185
241
222
175
171
243
247
161
206
271
188
217
189
273
199
234
206
167
242
232
258
285
171
184
158
224
211
276
227
203
196
206
201
240
196
208
176
225
202
256
179
254
260
212
149
168
152
233
198
214
220
249
204
252
152
185
179
253
189
220
184
168
214
210
205
263
172
159
222
190
210
191
228
228
263
212
173
259
227
199
189
289
216
192
221
154
197
154
214
228
120
198
124
229
244
269
185
227
222
194
221
162
243
129
199
227
197
230
214
198
208
140
154
151
206
198
189
182
216
177
169
210
231
197
195
211
193
213
229
195
247
224
213
219
215
179
180
271
234
207
204
161
167
198
218
192
187
237
181
239
208
244
201
187
146
203
145
212
219
204
222
139
186
212
196
183
179
206
212
186
164
208
194
178
169
245
163
114
218
228
136
251
195
234
185
160
208
164
227
226
86
185
198
199
168
198
234
266
190
159
191
204
215
175
156
208
241
234
198
228
148
214
143
199
172
216
191
177
212
174
273
208
176
207
201
182
136
188
240
214
194
180
188
198
157
186
216
233
221
196
196
177
188
225
223
162
172
114
164
228
217
185
276
222
197
184
211
215
123
161
197
138
236
246
198
145
187
186
246
197
197
179
163
223
199
222
153
242
173
185
168
210
183
249
182
200
252
153
200
173
246
198
175
162
182
233
218
160
222
198
183
189
155
215
253
201
259
191
185
158
186
203
243
181
200
169
197
166
185
191
139
187
193
239
150
228
185
230
206
246
197
165
162
165
177
235
228
260
235
161
247
236
178
163
206
194
227
180
215
156
164
173
231
187
181
213
176
151
204
219
202
227
208
193
203
195
188
243
227
181
205
198
254
254
217
185
167
155
199
125
199
172
196
224
126
224
210
148
200
170
177
208
177
216
215
236
176
186
217
251
161
218
179
148
199
204
213
238
222
208
213
189
180
151
153
272
191
205
177
224
187
175
186
246
167
240
233
221
198
209
112
202
228
277
173
262
229
178
284
193
145
206
205
192
241
206
191
245
160
124
140
205
192
230
186
202
201
217
196
183
194
146
143
162
224
196
167
173
199
236
175
224
252
154
216
245
203
136
230
149
240
238
222
182
237
209
192
194
226
166
223
184
219
210
255
180
171
148
200
199
168
209
169
185
223
240
266
215
202
193
196
222
175
240
235
155
155
218
227
244
229
156
227
187
190
244
194
168
198
200
257
152
190
249
204
191
227
157
145
244
132
219
164
239
187
198
232
272
183
201
186
224
229
240
226
186
138
205
175
142
232
137
202
158
139
200
214
215
183
189
171
124
185
125
224
219
172
263
107
190
154
196
207
120
226
259
175
238
184
224
216
190
206
206
280
171
208
196
192
209
260
276
195
211
153
169
223
199
296
176
139
157
202
226
183
165
185
125
152
194
236
146
250
202
238
264
228
162
178
213
180
228
210
232
183
122
171
205
172
241
181
232
282
197
166
207
215
232
169
179
190
220
131
223
199
178
212
235
185
203
211
239
177
219
214
212
238
200
138
218
237
147
259
172
247
180
210
125
199
186
226
158
185
216
233
199
209
175
243
254
121
235
191
147
179
200
204
192
260
196
176
224
115
194
227
188
205
256
211
212
259
164
264
211
201
225
147
174
177
176
194
150
164
186
140
209
183
170
234
153
240
190
170
201
136
205
230
222
195
232
156
188
175
158
261
192
201
203
181
154
210
213
258
229
230
141
190
144
148
272
221
199
164
222
246
206
227
212
213
257
184
202
206
224
241
191
197
177
165
152
179
207
227
168
158
209
175
175
199
214
217
184
161
205
196
181
212
219
209
182
198
235
193
268
232
159
172
163
214
215
229
242
196
123
251
170
158
191
162
216
226
190
181
216
239
137
178
213
190
232
211
161
206
231
189
179
195
194
194
216
209
189
186
173
200
149
186
157
171
151
197
178
213
236
173
192
171
197
151
208
224
171
212
229
216
234
207
239
171
180
222
223
205
195
204
218
215
173
172
248
184
184
174
283
247
193
205
222
124
168
265
186
137
231
206
215
203
148
202
170
197
208
192
214
166
181
159
174
223
192
235
220
167
180
175
230
164
253
235
243
234
238
188
224
205
220
170
156
184
218
246
278
241
171
226
218
191
111
243
153
222
224
138
186
242
198
215
187
191
258
232
259
215
220
259
185
201
223
149
191
189
233
154
204
186
210
263
249
167
223
206
169
217
179
163
226
165
164
148
258
216
164
229
186
194
183
192
249
207
156
180
217
242
208
202
226
205
260
202
192
180
197
185
166
227
134
265
179
215
145
146
237
192
142
247
220
183
207
222
168
232
172
206
193
193
174
256
152
192
214
186
202
160
252
164
230
224
239
170
192
189
206
256
238
200
133
195
172
267
204
212
196
208
201
227
226
235
158
231
202
228
184
185
154
179
211
211
205
225
249
211
232
214
273
198
174
177
196
202
186
138
238
227
170
192
203
228
196
203
193
204
217
175
172
203
205
186
184
142
210
199
236
207
201
218
194
243
223
241
195
249
244
149
192
154
239
235
211
190
155
239
192
238
253
205
211
207
222
225
237
242
256
228
233
220
216
179
214
229
130
191
148
191
210
245
126
175
145
249
182
255
179
196
263
196
223
127
226
267
192
246
265
204
217
210
203
155
208
227
211
243
219
163
203
175
252
218
250
235
198
162
188
231
242
200
156
188
206
249
201
216
245
221
270
223
202
175
213
226
183
249
241
247
202
161
161
245
231
154
217
211
224
155
151
123
241
148
179
213
201
216
271
224
204
168
257
245
218
150
206
154
232
150
254
213
234
215
231
202
206
193
165
259
174
163
194
153
265
246
193
207
200
252
210
147
222
230
194
199
248
218
178
249
242
266
242
129
140
170
182
168
200
165
226
199
216
213
220
236
227
150
224
181
184
190
174
162
226
174
248
134
171
183
177
160
195
191
257
125
236
180
178
194
181
223
262
233
159
175
181
158
198
224
172
139
236
245
182
196
164
204
281
184
221
259
161
198
188
211
170
126
166
225
152
158
176
135
172
238
211
211
170
177
206
178
154
213
237
207
198
245
208
176
201
193
202
168
203
177
175
172
231
210
186
197
209
192
175
196
166
205
198
235
187
144
167
245
222
176
180
180
144
212
144
207
232
133
165
231
182
184
254
140
175
224
223
234
177
168
223
209
186
106
191
204
170
159
191
201
204
184
247
179
215
177
274
249
214
195
191
206
257
231
194
202
215
186
195
184
207
204
212
154
150
192
214
142
261
211
220
206
228
251
207
181
196
211
232
233
224
153
248
203
152
178
177
229
199
191
157
190
289
178
236
182
182
204
190
219
216
248
117
171
271
163
205
240
230
168
104
170
181
167
224
227
226
245
130
270
213
195
187
221
191
198
183
166
251
230
162
187
143
214
234
166
254
186
215
218
168
202
221
205
232
226
214
216
183
208
187
244
237
177
200
127
196
199
251
184
149
306
246
166
240
205
169
201
190
226
200
199
196
181
157
205
187
143
264
177
193
244
252
172
229
213
167
228
188
235
186
192
232
242
250
221
191
193
175
189
239
243
183
190
157
198
181
170
266
229
193
194
195
183
213
199
208
201
178
158
224
218
194
157
152
196
216
233
240
239
214
212
183
239
184
221
227
165
201
187
225
199
165
203
208
175
214
165
187
207
255
216
182
147
150
207
263
171
157
156
167
151
127
215
269
231
139
154
227
227
258
163
216
193
238
252
164
234
183
190
176
196
200
197
218
231
190
182
212
126
224
228
217
111
225
124
162
150
222
137
209
200
187
222
222
179
208
199
236
166
224
199
208
236
254
218
139
243
226
199
187
169
189
195
202
206
175
194
197
249
252
226
207
250
193
235
204
219
246
199
193
248
172
205
277
147
198
153
239
174
231
206
230
192
176
197
202
191
187
256
266
225
211
214
186
257
204
237
197
254
264
174
172
170
239
201
193
193
219
223
219
221
142
184
267
241
216
173
159
207
229
196
192
152
230
214
223
212
232
213
237
233
199
166
190
143
181
236
223
259
191
192
164
147
145
170
142
189
223
174
210
132
154
198
234
230
253
184
223
200
168
216
201
198
250
190
254
205
202
204
155
253
162
187
198
177
225
179
196
138
246
156
245
265
232
182
150
199
198
194
226
214
196
186
189
175
213
134
202
231
227
201
178
240
196
149
176
182
200
222
225
161
177
159
201
208
248
183
255
200
167
221
209
248
220
207
128
247
173
153
204
240
229
255
155
187
172
197
196
235
162
174
188
217
224
197
194
238
173
228
210
259
210
104
254
188
184
229
222
178
231
231
181
141
120
197
228
208
214
197
234
162
209
203
135
266
179
149
184
224
221
175
225
208
149
242
180
165
146
223
180
163
235
218
195
181
132
192
193
141
184
246
163
181
207
151
235
180
227
193
207
224
233
203
214
199
230
262
183
240
148
170
172
191
230
175
175
188
243
184
230
202
201
158
181
173
266
223
252
157
196
144
233
204
197
221
241
142
117
240
216
240
172
164
251
149
200
201
181
208
215
226
190
204
179
238
203
248
210
230
226
184
187
168
120
251
217
229
214
254
215
240
202
148
204
222
243
175
159
244
289
215
258
191
192
219
213
218
194
205
243
200
166
246
254
230
209
159
218
213
224
247
167
211
223
182
140
209
160
177
185
195
246
183
252
195
230
187
226
248
192
180
208
176
228
233
280
201
193
151
179
185
193
191
201
240
300
248
204
252
156
189
185
207
172
181
170
222
233
225
222
246
210
205
146
171
239
167
192
200
219
199
201
219
156
228
224
181
241
151
179
211
152
181
256
181
191
239
221
145
191
114
178
223
203
213
236
223
247
245
190
241
187
233
198
193
173
159
187
207
165
155
264
170
132
224
266
176
178
174
133
163
218
231
245
205
228
193
251
199
212
217
196
189
202
240
150
241
173
178
180
172
201
239
201
212
155
177
220
257
207
232
197
171
232
255
217
231
189
224
153
205
144
147
123
181
187
207
201
172
200
220
236
220
152
152
168
209
246
213
248
269
163
128
209
221
174
168
220
214
215
199
233
177
223
154
270
222
239
172
140
170
179
189
196
184
271
245
184
227
183
214
242
181
179
240
147
170
214
235
169
230
157
211
256
161
224
170
191
236
204
264
222
149
263
201
196
220
177
223
160
227
202
177
202
187
183
137
214
185
211
147
224
215
234
222
220
204
181
197
199
164
135
249
162
196
204
201
205
162
129
224
191
93
175
224
174
201
195
189
183
191
194
197
157
174
222
206
213
131
196
238
168
244
223
213
186
240
204
198
191
152
159
194
173
240
183
202
213
175
213
231
198
160
175
204
148
187
213
141
146
198
215
138
247
185
207
212
212
197
259
196
176
214
155
240
238
189
206
264
125
175
242
225
189
236
245
216
210
195
166
215
183
229
200
178
166
224
225
223
227
164
171
243
178
117
228
182
175
157
161
172
146
221
208
227
205
158
212
247
172
146
154
167
164
259
222
217
203
209
161
166
173
239
197
167
190
283
224
183
240
168
159
212
226
209
199
223
191
190
127
206
261
168
203
223
216
192
189
217
228
181
206
217
189
247
155
174
255
201
153
199
223
237
144
151
164
172
156
236
219
210
222
193
185
189
187
218
191
250
190
217
228
219
256
168
192
191
245
174
238
249
179
190
120
156
82
241
184
240
233
178
165
222
198
207
249
161
175
247
137
194
196
200
199
154
165
175
191
256
230
196
177
154
186
193
143
195
208
222
182
181
139
249
216
224
238
183
238
251
225
182
218
159
204
279
221
195
178
203
198
247
252
244
176
193
221
216
208
221
142
247
193
183
206
242
151
213
166
180
183
150
268
199
257
208
220
204
199
224
136
191
202
169
164
169
147
209
154
204
196
170
225
131
251
175
251
184
197
214
199
181
230
173
170
217
212
188
169
243
225
257
182
238
167
243
223
168
152
201
236
189
254
211
226
169
217
228
192
144
223
217
240
164
158
206
177
181
169
184
220
199
188
227
168
235
202
219
199
238
198
137
206
154
181
199
241
249
216
265
179
160
255
222
152
225
196
93
233
196
214
148
163
172
245
197
257
222
185
175
111
231
184
203
214
201
185
210
167
240
248
176
188
198
171
222
224
224
149
204
207
211
266
240
179
178
164
224
240
211
232
181
178
238
170
129
262
230
201
213
159
147
185
200
192
169
223
198
189
148
156
132
195
218
207
176
212
194
181
155
216
191
241
204
162
221
192
255
237
210
239
157
139
135
223
213
170
187
168
182
173
226
176
158
155
165
187
156
245
216
238
195
192
186
258
156
152
192
231
215
197
161
234
156
203
175
149
189
255
229
187
151
244
178
259
244
191
261
224
123
189
198
237
201
222
170
165
258
229
168
197
202
187
262
201
183
196
254
224
250
169
178
172
274
150
174
197
174
186
239
144
197
209
164
223
185
203
196
232
134
199
195
183
134
195
242
174
209
192
216
210
206
198
203
147
232
208
210
192
164
150
221
228
164
232
178
158
228
201
184
275
176
209
138
243
213
266
202
228
244
166
243
129
177
177
210
236
214
207
197
240
213
169
247
220
195
193
171
174
248
173
192
149
148
112
193
162
235
200
143
197
161
197
160
162
164
183
158
189
147
183
149
237
219
170
179
245
204
205
196
214
181
218
177
201
186
205
169
235
182
179
182
262
207
186
172
143
206
216
277
223
242
176
227
267
182
193
127
202
208
215
209
229
146
196
226
231
149
188
216
278
233
132
183
286
209
197
170
215
224
196
236
217
164
231
213
183
203
176
161
212
222
185
200
157
189
201
116
134
180
207
226
182
240
107
215
214
228
214
198
228
224
161
167
221
167
203
234
187
211
151
192
233
100
217
248
161
270
238
191
165
239
268
170
215
104
191
209
195
196
254
196
199
204
251
229
193
214
173
210
136
208
205
192
203
225
163
222
227
215
239
191
224
209
263
199
157
145
172
209
181
172
190
229
198
203
212
191
234
191
200
158
190
217
227
198
154
194
200
285
210
265
200
130
175
139
131
269
223
157
200
244
208
156
232
193
238
205
236
184
132
222
241
202
285
216
145
191
227
169
213
196
204
180
233
229
193
220
216
195
171
178
239
207
233
132
232
224
188
154
191
204
182
158
228
211
154
203
222
202
205
216
219
197
193
162
217
226
192
152
222
234
211
224
239
194
255
207
231
237
241
163
225
124
179
156
214
188
193
130
217
194
253
231
224
142
202
227
235
178
208
203
217
175
244
199
199
203
243
242
221
144
178
221
144
233
268
150
264
248
173
252
248
200
241
205
276
186
265
195
199
180
181
224
193
183
152
199
151
169
180
221
159
231
225
215
191
177
192
255
136
159
206
221
193
250
170
153
177
194
245
207
248
195
236
221
163
203
229
283
233
261
233
265
204
158
200
249
201
165
159
118
175
185
190
248
218
249
219
259
213
171
210
197
217
164
172
177
197
197
239
208
184
190
139
184
212
184
228
130
182
210
159
178
189
240
254
148
253
210
169
188
182
230
137
126
199
259
215
196
258
208
150
255
178
241
204
234
228
206
195
200
205
157
301
205
203
248
212
187
232
227
208
120
159
211
237
214
237
176
200
138
209
223
231
198
264
191
212
242
201
222
119
196
224
142
187
216
254
203
195
160
238
188
207
208
214
221
259
239
178
159
183
229
107
161
172
197
228
183
117
265
238
159
151
125
214
187
194
135
197
191
203
190
195
191
187
163
212
209
219
223
150
219
172
193
145
143
179
211
215
239
213
184
229
167
182
236
183
204
212
219
215
183
234
218
210
251
219
182
217
142
158
201
164
207
218
178
232
207
223
160
115
228
215
189
212
191
172
220
198
160
196
283
161
217
190
214
174
215
160
217
244
232
214
129
191
202
187
181
91
166
288
240
267
208
159
224
235
163
187
169
219
200
156
143
224
209
215
159
186
125
197
166
207
185
240
223
251
194
163
171
217
183
196
170
185
207
234
185
249
196
215
210
199
210
248
165
194
172
181
207
216
201
200
195
182
220
173
222
197
210
167
276
193
229
216
164
170
207
188
266
176
176
154
198
201
231
183
190
228
269
259
244
129
232
175
202
210
199
243
245
204
190
186
182
175
188
195
208
155
160
216
175
232
266
228
202
202
164
153
181
253
244
209
226
139
197
217
275
242
190
212
202
202
127
229
225
205
229
215
207
186
202
188
169
189
237
133
185
227
216
104
199
234
192
174
173
189
191
125
129
266
173
197
199
244
207
215
147
200
202
199
194
195
213
216
170
204
194
168
181
193
208
208
306
219
146
229
154
217
218
170
184
143
132
203
201
183
207
223
179
230
225
190
170
125
203
232
143
173
183
191
252
248
221
181
188
184
184
178
255
196
235
217
225
215
245
238
129
200
233
259
179
217
202
209
204
181
158
206
167
193
204
180
170
250
126
201
138
205
221
197
167
169
174
216
196
167
160
192
148
228
205
148
162
189
227
240
172
182
157
211
195
153
214
174
155
229
222
190
205
254
249
191
218
240
202
258
201
178
191
238
190
206
201
233
154
226
212
229
164
197
157
198
233
213
181
172
150
233
196
206
146
198
175
188
199
206
182
223
152
218
219
122
214
149
212
184
185
171
126
157
148
208
162
211
256
228
203
164
266
244
234
156
154
264
175
94
212
211
203
227
214
237
198
163
187
162
247
206
203
221
200
206
253
185
191
202
201
156
247
230
209
234
174
255
240
183
229
183
271
168
207
157
112
240
182
162
265
217
145
265
210
153
242
221
218
218
162
183
193
212
186
206
169
225
188
230
201
228
215
144
225
239
189
170
205
190
195
183
242
162
195
216
169
201
212
208
224
223
200
264
186
206
199
264
234
170
158
218
152
207
214
153
168
214
227
186
180
218
238
183
219
231
229
217
169
190
192
119
184
187
174
194
219
205
235
197
177
219
193
226
200
237
184
286
190
206
136
199
211
243
226
180
243
243
186
138
193
215
247
248
159
214
234
205
231
142
217
210
211
184
201
98
178
232
203
192
131
217
177
217
187
237
224
145
186
162
137
167
207
116
253
191
202
169
224
222
212
199
205
187
182
202
228
164
176
172
177
193
188
182
221
215
211
168
200
224
181
266
223
165
114
229
220
208
157
227
161
226
132
159
264
229
196
212
162
99
231
184
192
239
232
195
202
213
199
243
201
160
219
165
225
180
206
190
246
209
256
212
244
211
240
202
164
240
220
239
157
231
147
172
198
217
255
199
217
214
219
209
198
209
248
193
211
175
161
189
164
186
205
262
194
243
201
201
240
186
193
152
128
172
159
249
226
236
176
168
218
201
190
232
234
235
185
194
222
210
141
182
173
149
249
197
191
188
237
176
211
213
156
224
217
260
193
197
224
188
236
258
168
171
240
217
229
175
178
148
208
195
228
209
188
200
201
180
212
199
177
201
232
198
211
215
244
182
155
184
213
177
182
201
190
127
227
182
183
229
246
211
228
193
230
198
157
167
206
227
258
219
229
243
185
154
178
238
253
214
155
260
248
142
258
222
204
256
214
165
121
128
168
202
217
247
201
189
223
222
111
214
228
224
133
186
201
237
255
160
155
216
212
149
219
224
245
172
205
218
156
191
254
205
179
223
237
180
166
182
178
216
196
216
242
219
169
220
239
190
201
175
192
195
240
209
104
217
201
217
185
237
156
214
176
254
123
232
233
217
158
200
149
191
149
214
228
245
212
258
190
187
205
253
170
205
174
153
238
228
162
209
182
237
177
210
231
183
211
234
226
186
191
153
184
146
234
147
233
247
208
264
194
200
237
237
208
240
191
194
186
213
249
228
258
170
250
189
200
209
207
180
165
221
157
186
166
236
187
175
218
195
226
200
229
170
166
197
141
157
227
217
215
209
167
182
153
199
251
148
226
211
167
195
205
163
179
243
215
129
201
209
152
178
195
162
258
167
184
243
220
211
202
240
166
169
148
143
208
213
197
199
163
185
224
215
233
224
204
251
195
253
251
221
234
215
210
190
277
212
209
195
206
256
184
243
169
210
210
254
188
163
217
157
188
188
181
167
196
218
160
192
162
190
246
190
167
175
202
271
220
198
206
219
165
185
184
175
228
198
156
210
240
198
97
243
189
269
207
261
206
180
241
158
202
198
203
208
183
210
178
183
209
192
210
223
252
205
173
155
214
182
212
281
171
195
160
220
229
204
168
239
204
276
261
196
194
185
198
190
157
164
201
175
202
247
231
181
251
155
264
202
227
252
152
201
246
210
223
186
192
189
274
191
232
139
240
213
128
183
209
207
248
234
284
244
181
224
185
236
146
179
237
251
241
234
187
180
154
177
235
214
246
241
176
215
199
150
194
239
206
200
222
187
201
183
189
172
207
191
225
228
182
164
178
206
207
221
195
145
170
157
127
204
217
233
215
211
245
234
158
187
174
209
212
166
139
233
128
158
159
242
163
236
198
246
220
284
196
223
246
222
241
221
178
160
173
176
208
195
165
212
119
189
187
239
120
139
196
212
209
146
203
267
178
207
190
212
225
228
242
209
179
165
220
187
182
221
176
174
212
239
242
203
169
161
173
227
210
107
242
206
178
156
124
188
250
165
179
186
180
198
252
218
139
190
203
85
174
174
143
171
207
109
227
154
245
92
239
261
210
122
186
203
213
167
159
138
182
264
221
207
243
209
169
192
245
205
238
181
208
195
140
165
155
204
206
151
229
129
214
172
222
174
195
226
195
194
206
233
250
188
165
222
135
208
252
221
179
163
208
196
162
239
182
170
225
189
193
192
226
157
178
222
257
194
241
232
226
237
201
183
180
211
248
201
163
166
193
231
209
153
213
192
169
287
217
254
180
163
159
229
254
193
247
245
209
245
199
262
203
211
173
162
198
168
210
219
217
190
246
213
249
226
225
237
201
227
214
245
203
207
125
215
198
240
147
238
219
230
203
172
241
211
198
206
151
159
196
124
178
275
201
214
183
256
225
208
238
238
185
197
139
204
204
231
171
95
206
233
204
219
194
183
193
226
193
181
200
186
162
236
183
229
243
206
166
203
229
202
182
241
198
202
169
215
192
243
173
182
215
198
231
229
193
217
136
166
239
167
246
137
135
185
204
241
186
255
212
177
221
203
243
200
281
194
241
153
218
150
225
223
233
219
225
141
196
187
200
185
166
226
158
212
189
211
202
250
244
154
199
231
242
176
164
249
184
198
190
170
236
167
233
230
235
155
197
149
240
215
210
192
184
176
179
215
257
219
164
202
214
175
165
235
241
171
219
243
161
136
188
139
189
187
199
165
216
183
200
191
215
136
264
233
160
186
224
164
172
216
222
153
227
156
238
255
215
169
166
169
176
243
183
171
123
253
213
213
205
248
212
191
163
181
199
247
214
187
223
232
217
201
209
153
221
157
156
223
193
206
184
152
166
186
173
264
231
240
145
200
223
182
248
116
246
184
216
164
249
198
189
202
185
169
219
229
244
184
177
234
211
172
162
201
162
201
178
171
135
155
194
222
154
236
199
158
187
209
186
163
206
224
200
250
174
107
227
240
274
178
225
238
200
210
249
237
185
133
177
157
197
178
177
196
182
209
191
145
168
199
190
208
212
169
239
207
215
165
246
225
169
190
240
204
210
238
231
179
212
198
138
217
118
227
210
225
184
188
236
180
201
196
209
211
141
173
214
172
166
148
214
195
192
219
211
216
137
216
230
251
189
253
178
223
153
203
213
217
255
216
216
256
249
151
171
203
209
190
244
215
196
156
168
247
190
211
236
216
211
191
248
220
202
191
188
213
193
192
200
165
171
186
132
198
181
198
228
215
202
238
221
225
199
232
135
193
206
250
225
239
255
198
219
169
246
202
113
241
223
173
185
243
172
200
297
270
167
159
199
185
212
131
189
224
185
212
202
157
220
242
207
212
151
211
243
239
218
212
212
207
221
169
209
181
178
178
172
169
165
172
209
219
196
191
197
195
201
220
237
188
249
157
198
187
247
216
205
210
161
185
238
204
139
214
232
168
144
204
263
232
187
210
200
169
159
189
152
154
212
226
171
165
166
232
244
193
209
256
252
180
179
244
204
256
204
165
184
162
219
127
226
200
198
218
233
226
176
176
150
162
156
216
191
207
223
223
166
192
216
152
152
153
112
203
192
195
218
185
214
196
197
179
166
167
194
191
243
235
206
193
161
237
161
238
157
145
214
210
221
194
184
203
203
255
136
249
159
195
217
225
151
242
221
170
191
235
216
186
222
182
225
194
222
196
191
245
200
142
185
171
186
159
228
229
209
207
170
210
230
242
180
157
230
201
140
239
270
199
187
172
236
147
188
169
223
175
213
176
197
204
184
169
177
210
122
174
227
233
249
141
227
180
193
233
165
151
217
180
270
226
212
184
148
181
206
210
190
212
202
245
223
168
215
183
184
184
222
241
232
244
218
213
171
256
181
188
192
190
175
209
178
173
195
200
248
215
241
200
189
190
228
278
227
208
221
122
200
226
237
210
239
261
199
220
192
155
188
246
226
164
173
153
145
231
193
177
212
109
213
271
233
214
232
255
199
229
154
163
203
131
218
207
221
233
230
175
207
187
229
212
219
187
207
228
207
160
197
205
198
254
230
198
239
200
168
151
230
147
219
221
241
165
185
220
231
240
233
231
97
152
173
176
147
200
199
180
191
216
222
228
234
252
194
178
178
233
210
208
211
210
235
239
199
175
215
204
210
232
174
178
222
206
141
101
218
209
259
150
201
143
230
205
107
187
236
226
157
222
172
198
171
193
185
169
184
164
224
178
271
225
188
141
133
227
213
284
218
219
201
197
213
208
176
167
177
145
169
206
183
207
197
215
187
218
263
217
173
266
221
268
196
221
244
179
176
205
186
228
160
199
224
207
204
184
224
208
209
202
198
180
204
239
233
183
207
147
196
187
199
190
119
223
225
183
223
236
224
152
224
212
267
233
224
196
237
260
232
178
265
176
230
214
200
251
235
198
253
104
159
284
155
209
182
210
198
266
170
208
216
203
200
215
178
192
221
246
177
224
139
217
150
236
243
264
183
210
268
246
177
271
229
230
249
145
242
194
186
234
204
234
221
227
204
237
248
200
166
159
202
178
272
206
246
248
200
192
147
276
224
201
228
158
213
179
218
251
227
267
145
185
233
240
228
153
241
148
171
235
162
223
221
247
176
231
189
159
161
229
201
185
165
214
233
223
258
208
214
135
164
225
234
186
213
195
212
142
224
180
241
260
203
213
173
186
233
205
244
193
219
205
178
155
162
174
153
243
191
253
219
203
211
267
266
200
207
191
221
208
165
203
267
241
193
250
218
209
174
153
210
182
245
259
195
174
205
200
229
160
186
217
165
166
238
202
195
239
183
207
126
252
186
158
227
170
160
150
201
209
200
193
214
185
210
170
232
174
209
163
179
164
224
247
266
170
201
207
190
184
184
153
214
120
157
246
203
154
181
255
217
183
158
219
207
183
181
273
193
202
193
232
167
245
200
242
227
216
154
208
138
165
225
178
248
240
166
236
204
217
225
190
198
235
182
213
258
247
218
236
226
195
173
170
178
209
105
235
164
171
247
206
247
185
190
214
211
171
221
286
243
155
180
245
165
175
212
41
207
205
174
125
196
214
191
174
195
244
268
205
207
201
180
153
180
254
219
139
241
156
169
234
201
177
217
179
152
198
222
163
188
208
196
201
181
246
180
177
228
251
229
109
247
160
207
186
275
228
190
232
216
230
147
264
182
196
200
222
227
143
184
142
157
217
249
213
253
140
184
155
195
154
270
244
177
207
135
255
143
201
161
261
180
196
219
206
204
175
228
239
171
155
240
167
112
162
144
222
208
276
217
174
206
269
175
154
178
209
258
222
212
210
179
196
161
197
242
142
223
255
171
256
238
261
176
234
154
235
167
270
223
236
197
221
158
245
131
185
242
193
202
207
208
202
205
185
208
156
138
165
232
144
216
177
200
161
150
210
213
180
265
183
316
241
224
223
197
183
250
145
195
225
165
207
178
220
213
199
236
213
163
265
148
144
192
170
226
224
201
141
238
198
204
153
221
240
245
161
203
210
181
247
195
252
224
183
159
219
207
207
257
205
228
178
188
207
220
247
167
219
206
185
213
221
194
199
195
223
182
230
216
216
175
191
199
193
233
223
237
207
248
223
160
232
189
203
256
241
171
216
87
247
217
204
251
205
193
257
203
182
176
166
232
203
248
214
211
219
237
156
219
207
239
193
224
156
182
206
191
209
207
199
205
260
156
164
202
198
209
248
223
171
207
157
222
252
195
179
209
194
191
194
197
206
237
162
198
232
276
196
162
183
204
231
246
114
226
262
146
185
214
247
119
206
219
153
136
281
204
216
195
210
190
246
203
197
168
217
232
244
158
207
230
242
146
185
207
181
176
200
274
121
191
232
209
215
154
140
210
228
163
178
176
158
216
197
188
247
239
251
220
242
203
171
275
233
167
233
197
232
245
211
177
219
157
232
235
163
208
221
231
197
196
212
170
240
238
150
159
193
187
236
221
179
223
216
237
207
264
207
183
176
157
219
214
237
165
185
173
188
246
172
171
153
221
212
208
205
192
136
188
204
203
187
156
193
203
214
198
161
259
229
200
205
165
216
236
195
190
252
180
139
140
198
192
207
183
179
186
258
201
221
206
228
208
214
213
213
218
225
224
175
221
159
199
229
170
138
135
229
220
175
116
220
227
234
213
214
182
238
244
213
195
169
229
203
230
215
128
238
191
176
155
209
230
189
175
230
180
162
221
178
182
204
159
158
206
215
261
198
255
154
213
128
223
169
227
213
232
196
234
171
272
189
212
150
194
153
241
224
214
230
230
186
197
192
161
225
194
157
165
236
166
224
186
169
211
172
165
217
170
240
224
224
190
195
166
216
144
216
187
177
233
162
193
230
245
211
153
199
179
225
238
154
256
178
181
220
218
172
178
166
246
212
118
245
252
230
201
144
215
224
215
186
189
215
214
259
212
194
198
248
206
185
201
220
239
219
144
229
203
252
259
206
202
190
178
181
185
181
158
202
147
189
203
228
225
237
183
233
235
269
224
260
136
188
194
138
185
225
189
219
230
167
221
198
200
202
228
222
191
181
215
241
140
204
169
201
250
227
142
199
209
203
260
231
256
201
235
190
175
123
191
124
180
239
183
171
207
192
207
239
203
210
155
218
240
207
242
218
220
205
213
219
211
218
172
202
204
140
219
152
189
191
176
189
218
207
216
230
148
134
192
189
186
207
212
266
205
242
236
203
183
192
223
243
208
223
137
173
189
163
210
187
215
212
172
280
217
202
272
183
148
190
143
200
167
140
191
210
175
148
207
197
229
219
201
203
143
191
176
201
222
193
207
229
135
153
221
172
244
229
222
131
244
208
209
212
238
156
220
209
181
202
171
237
249
234
219
109
151
227
197
186
105
216
211
204
290
215
176
249
157
130
232
253
198
212
205
216
207
248
266
176
209
217
187
260
152
172
263
228
123
212
127
144
213
212
152
199
124
190
247
197
228
235
216
226
226
177
171
181
230
221
182
167
189
202
196
152
183
227
185
207
246
138
253
184
230
205
170
187
188
242
174
190
148
222
185
177
170
221
178
247
190
220
186
244
265
211
277
237
169
183
173
216
202
188
160
193
185
257
191
228
176
218
149
204
245
202
162
232
265
177
163
208
170
174
245
170
146
102
255
186
218
180
212
172
232
173
199
178
243
213
213
265
169
188
175
226
243
219
205
268
187
233
179
218
215
154
146
253
212
205
193
245
190
189
162
241
235
198
178
193
206
144
136
180
169
259
196
249
140
110
224
196
208
224
192
146
161
198
224
202
243
222
221
156
268
243
252
192
190
209
223
240
186
196
154
232
235
159
226
235
190
220
189
222
256
246
259
216
133
198
209
190
165
197
274
219
263
173
178
206
226
189
174
239
121
182
133
176
197
187
194
252
230
151
189
139
223
272
186
231
193
166
227
234
184
221
143
168
162
231
210
241
209
170
233
198
203
144
224
177
234
202
194
133
175
240
223
203
235
203
177
194
148
176
203
185
225
266
147
196
214
235
247
142
265
177
222
161
188
186
223
171
246
214
263
161
225
256
208
179
82
213
199
224
208
141
202
234
140
219
192
210
221
220
211
195
156
177
200
204
182
142
195
211
236
215
177
201
174
192
241
271
238
177
197
172
155
186
172
195
195
148
191
177
169
202
207
213
133
230
189
273
248
120
191
209
211
244
214
202
209
246
255
252
226
258
210
165
209
194
208
206
166
179
200
188
182
237
216
136
242
236
222
155
164
247
189
211
190
192
195
238
150
226
244
143
232
167
199
171
195
205
181
218
180
191
242
233
204
132
262
250
216
192
238
211
198
163
221
211
201
212
218
205
216
222
169
182
229
163
242
177
137
193
199
198
193
229
253
185
192
240
215
180
199
171
223
198
219
264
176
166
229
130
202
277
223
203
117
123
220
222
256
239
212
151
242
221
196
183
185
218
139
130
142
291
187
258
226
181
206
142
189
158
180
167
183
150
190
215
213
243
244
230
223
195
234
156
249
146
230
198
167
209
172
240
202
155
193
180
232
188
229
201
189
162
202
216
202
204
272
199
219
204
220
153
232
236
137
226
213
183
229
192
206
193
201
216
246
212
153
239
146
205
216
201
248
232
226
178
188
252
211
155
228
149
117
184
195
143
213
184
228
203
188
202
208
199
221
217
161
266
220
223
178
213
166
146
195
188
165
205
165
197
215
154
150
205
238
239
202
138
222
186
225
194
187
161
231
205
268
202
238
173
263
151
223
227
221
170
211
202
215
205
100
219
210
212
126
162
172
228
221
178
237
226
225
173
191
194
181
210
215
216
179
234
224
262
205
245
184
239
246
160
155
242
119
234
154
181
180
135
228
146
222
247
251
191
220
184
268
199
194
200
225
212
195
215
190
238
159
209
189
207
182
174
151
195
162
150
202
140
206
212
223
272
167
221
201
225
226
188
182
238
239
224
211
168
189
174
156
162
164
228
191
239
200
207
183
202
196
244
214
159
158
184
176
187
182
199
165
174
237
157
212
197
249
209
226
199
244
162
266
193
214
207
215
238
194
195
260
255
210
223
173
153
186
228
192
183
199
147
177
244
196
182
249
206
203
249
200
205
237
129
228
291
146
171
263
243
231
144
226
189
192
222
215
205
178
205
223
128
221
183
187
220
195
204
178
200
251
134
212
166
242
232
167
271
193
197
218
234
133
202
244
183
194
236
187
239
231
111
178
194
220
198
226
201
191
161
182
187
154
224
236
209
229
205
256
222
173
168
197
237
185
189
163
202
277
257
226
160
239
234
186
250
244
180
220
143
182
172
177
156
233
213
230
188
225
247
234
259
207
225
183
156
225
152
159
184
192
288
233
201
212
203
238
217
234
166
154
193
212
192
198
178
212
191
208
168
163
204
181
204
134
205
234
128
227
150
225
223
196
176
215
210
221
184
189
224
116
222
241
191
233
186
224
196
187
220
222
230
246
204
205
238
227
235
210
221
184
138
193
242
188
191
244
221
195
148
189
202
163
238
193
201
260
218
214
240
171
181
181
184
224
223
241
198
216
255
207
215
236
148
188
125
180
253
190
152
182
135
240
137
159
238
176
191
210
215
159
173
196
149
142
147
228
190
196
181
148
216
154
219
132
157
210
189
184
200
214
194
226
125
176
245
222
186
131
204
223
171
231
187
172
153
204
247
214
210
141
158
133
173
236
258
185
164
228
237
221
224
81
154
192
160
152
236
194
173
253
191
237
218
188
203
167
193
196
163
229
207
210
139
185
212
227
225
203
252
154
215
171
206
192
235
158
205
152
208
141
196
206
192
235
183
210
166
263
157
187
191
249
220
211
197
242
167
210
205
168
143
188
226
244
216
193
190
168
196
153
259
207
198
205
209
206
185
152
166
208
197
202
210
176
191
153
195
187
220
230
242
164
200
157
239
210
204
258
196
156
254
168
194
230
164
188
181
197
174
192
228
270
221
199
237
162
223
192
212
223
203
166
253
220
210
165
179
205
244
196
193
192
215
230
143
168
194
222
255
226
192
204
205
194
234
172
223
201
192
201
207
150
246
185
163
225
208
197
251
196
147
195
141
205
191
234
231
258
226
269
218
214
227
244
227
198
183
233
233
134
198
153
226
168
243
165
123
227
117
265
222
204
243
180
219
219
221
213
222
216
162
209
125
215
199
183
205
191
200
196
236
158
201
167
149
185
228
253
156
249
207
189
229
193
237
229
206
184
237
184
268
274
195
230
205
232
253
163
207
178
129
187
229
177
210
228
201
187
200
206
183
191
200
228
181
229
215
123
192
185
176
135
240
220
90
219
226
223
175
230
286
187
201
233
247
202
151
231
177
204
212
174
200
220
192
155
231
228
216
144
189
181
127
216
158
271
312
235
154
250
215
223
171
232
204
195
211
203
169
262
187
202
155
214
147
165
142
198
184
233
195
218
129
214
237
252
218
186
209
170
194
282
219
205
224
161
156
239
141
220
244
250
150
191
150
198
255
234
199
198
252
182
122
196
230
207
202
233
191
222
218
221
223
126
196
162
174
236
226
190
125
177
187
250
195
184
249
235
240
216
179
226
175
237
193
249
232
213
233
201
165
179
194
192
188
125
217
174
229
260
248
153
212
179
209
178
141
246
207
138
159
222
131
190
195
199
197
169
145
220
252
122
231
191
151
162
200
149
186
207
178
224
230
186
140
195
258
239
237
207
170
237
133
178
258
235
268
166
247
198
156
224
218
238
216
194
210
258
226
257
206
171
211
164
176
187
147
195
228
220
200
209
182
232
227
165
210
224
217
183
251
199
244
198
203
171
192
152
212
156
159
210
191
238
142
188
197
171
170
252
231
241
176
153
206
166
241
132
174
205
185
227
162
270
193
190
210
180
274
173
182
164
185
219
216
197
189
196
209
172
205
204
138
247
186
246
147
195
260
213
203
258
276
187
219
225
163
225
240
220
208
198
129
187
214
157
219
182
202
256
172
274
219
215
229
214
196
163
226
199
145
109
171
246
123
259
169
103
214
192
173
229
154
226
164
250
161
204
209
82
172
209
176
200
201
235
216
203
170
200
207
183
165
250
220
164
194
223
304
172
236
157
221
159
218
210
171
233
157
232
244
187
243
207
231
247
120
164
194
219
186
215
269
237
237
208
187
207
204
212
211
218
215
190
214
210
202
200
247
164
175
191
249
201
204
199
184
244
295
201
165
189
179
220
228
144
199
233
166
183
187
246
208
186
173
265
251
196
181
155
170
211
175
213
187
236
232
159
235
172
156
199
200
208
177
269
188
166
247
205
192
192
203
204
202
208
209
204
231
239
191
223
183
262
106
229
215
178
267
213
156
241
262
223
197
170
130
244
148
155
224
177
218
198
189
235
195
255
200
195
152
271
149
165
220
207
141
181
208
169
210
228
181
185
266
140
226
205
198
166
241
232
207
186
151
259
166
221
171
186
248
209
241
228
213
246
190
213
195
166
191
209
158
191
154
146
207
233
185
221
141
176
205
227
241
166
192
167
167
256
201
179
250
206
201
194
150
215
218
174
191
204
225
159
189
252
187
187
192
151
197
225
206
114
201
255
210
189
221
192
198
142
220
231
176
177
214
188
199
152
205
212
204
202
218
163
193
195
166
247
230
177
198
196
174
212
190
151
197
210
157
250
186
177
188
188
190
218
219
233
229
210
136
155
117
262
166
242
224
187
182
234
247
143
176
211
230
174
167
186
242
235
166
199
209
180
195
167
197
200
142
206
136
147
193
234
183
228
192
234
212
152
196
231
188
230
218
212
187
227
192
129
156
187
224
212
208
219
118
186
215
224
173
210
217
175
135
249
171
246
218
192
149
181
268
244
158
192
269
195
185
187
195
215
186
206
240
227
265
157
200
145
250
229
184
240
160
241
228
180
192
220
180
203
115
225
265
167
225
233
253
183
169
207
196
205
245
147
225
169
166
201
189
202
281
201
205
216
216
283
165
184
166
201
244
198
200
182
242
212
207
157
249
175
209
247
227
185
282
210
208
200
189
197
166
196
194
237
217
179
176
152
190
185
185
217
208
252
179
234
236
253
200
224
249
173
179
183
211
151
185
146
191
212
209
222
201
288
183
246
219
215
203
197
177
217
153
193
223
188
256
213
261
146
181
210
206
203
214
231
189
192
206
203
243
225
189
199
115
235
127
204
269
163
247
185
225
207
150
202
174
227
185
238
156
194
136
194
156
241
194
143
224
215
120
227
206
164
176
189
193
213
224
189
205
218
248
238
190
187
225
230
230
237
255
243
177
174
236
170
148
217
210
164
203
157
183
230
220
199
252
215
226
184
227
168
246
253
220
196
203
254
177
193
205
225
215
196
162
259
216
188
163
187
229
226
265
182
163
184
208
136
230
203
186
186
182
178
250
205
181
226
243
207
244
148
210
249
226
250
170
261
153
243
195
214
200
160
238
227
205
216
223
183
161
267
217
152
218
181
154
165
142
272
234
171
179
220
261
213
188
188
229
174
190
192
190
172
194
213
236
175
257
209
209
156
250
171
165
264
229
191
216
157
194
209
162
209
235
227
208
237
209
222
185
229
222
196
255
167
204
190
135
185
193
200
194
169
172
205
199
189
204
190
159
163
138
213
158
148
232
198
174
191
184
208
241
234
202
189
188
255
203
224
209
189
213
189
218
263
123
216
213
171
191
181
208
220
257
153
209
242
170
235
181
231
224
185
235
214
160
205
243
121
199
147
149
173
184
146
200
221
221
210
188
191
172
176
187
186
238
206
186
166
182
201
213
161
256
246
232
190
241
180
181
153
153
158
175
226
109
148
223
211
214
211
171
245
220
223
175
163
193
237
195
167
224
232
221
200
205
207
159
194
229
185
238
165
205
240
182
225
127
136
160
197
175
178
255
169
173
213
183
226
205
224
184
217
218
237
213
238
276
161
223
189
233
211
207
152
219
163
199
228
151
153
216
216
175
222
173
215
152
204
212
223
183
245
204
175
196
178
157
141
200
225
209
183
271
234
180
188
158
195
224
213
155
227
233
140
159
253
234
192
199
211
230
218
152
191
210
174
178
239
262
192
177
191
212
179
194
239
232
204
237
221
185
168
236
208
195
177
224
267
132
161
213
153
207
228
168
190
221
173
228
222
146
184
203
196
218
184
214
154
181
226
183
231
230
218
218
150
177
182
170
199
215
232
169
158
198
172
242
206
152
185
210
191
214
184
236
150
169
204
185
187
227
186
228
217
200
186
179
216
207
175
222
260
232
165
195
196
204
225
241
160
196
219
203
226
206
134
183
254
218
167
195
203
229
225
217
193
149
271
266
198
213
192
192
149
216
170
247
163
243
176
262
125
178
229
269
239
187
178
132
241
173
240
196
201
152
226
250
217
130
236
205
199
224
209
206
219
231
280
166
157
217
198
182
197
225
216
238
191
218
203
183
239
248
260
194
188
176
251
203
213
255
214
208
236
200
199
195
161
201
203
251
219
195
234
220
175
182
277
197
222
216
212
218
223
201
220
112
174
227
247
205
184
224
209
226
183
240
237
228
217
152
188
229
228
234
131
252
195
211
135
203
236
165
192
235
201
240
233
219
244
263
240
212
206
248
205
220
238
190
143
239
172
150
218
255
179
220
216
163
256
252
272
155
184
164
238
226
206
235
178
167
186
176
185
222
219
276
183
130
223
248
219
132
203
251
207
173
265
177
249
187
212
163
238
207
209
258
83
224
229
212
198
195
169
186
163
187
182
197
205
184
231
197
252
192
207
164
179
234
184
174
187
194
151
199
199
180
121
198
211
230
170
180
212
211
217
192
221
213
196
222
173
157
249
179
218
182
192
223
172
184
163
187
146
229
183
147
224
168
209
274
205
207
199
199
233
216
148
181
183
243
164
206
183
208
228
174
189
187
174
180
232
238
200
164
159
183
236
195
139
255
198
205
191
230
140
157
219
196
194
232
164
235
166
169
207
211
239
221
167
217
203
199
203
184
172
170
182
230
178
236
217
251
188
164
205
177
185
258
258
194
209
187
224
150
142
138
197
197
207
172
192
191
198
168
156
182
175
200
117
145
176
248
173
234
240
179
177
215
169
259
247
229
226
242
173
183
177
166
233
206
196
121
195
170
231
192
218
195
186
200
211
223
200
115
221
208
209
226
157
179
209
167
197
197
223
166
224
206
141
192
202
205
199
183
204
233
192
167
107
199
195
205
195
258
179
182
151
183
224
211
180
170
195
280
200
184
254
246
238
271
181
196
213
184
157
242
186
234
245
186
204
253
211
186
229
181
133
170
206
203
197
236
181
153
223
208
194
219
224
224
206
213
207
230
215
206
277
143
187
280
213
261
236
234
212
234
181
210
157
254
236
197
165
216
249
187
248
224
141
177
224
235
171
138
217
223
153
192
206
178
217
199
288
199
183
241
178
210
142
175
223
222
172
233
171
207
177
198
235
183
266
226
249
172
170
201
148
240
206
226
254
242
211
179
206
205
162
204
176
162
162
218
179
205
245
211
231
250
229
213
183
167
191
231
185
188
151
210
206
248
242
152
267
158
185
207
281
209
176
203
193
190
215
221
150
230
153
166
163
248
222
180
271
196
227
215
175
247
166
162
216
154
224
200
227
226
191
159
212
167
215
219
245
162
170
210
255
187
160
219
187
210
186
189
171
191
232
241
217
215
202
249
247
220
172
214
151
189
222
213
172
203
242
207
219
132
239
179
240
191
188
220
193
121
202
139
169
239
202
225
188
234
196
177
184
185
179
177
168
231
203
177
212
251
186
197
238
204
188
188
197
186
237
213
193
175
164
215
186
166
217
231
218
212
187
202
174
209
202
179
159
180
151
202
249
143
163
241
174
216
214
190
172
128
158
176
203
224
250
221
257
251
221
203
182
128
169
189
167
232
167
196
185
230
260
218
205
245
189
191
194
211
192
191
253
212
188
195
223
235
149
213
151
190
193
225
215
228
144
209
276
225
194
227
233
235
235
212
213
222
204
180
257
193
217
174
191
204
190
250
201
197
210
197
221
213
184
180
132
223
161
152
184
215
221
183
191
215
176
158
207
158
271
226
228
200
132
202
271
209
251
181
208
181
174
113
236
158
237
196
193
196
177
136
161
178
235
235
159
240
238
144
201
152
228
187
241
226
175
233
160
262
204
207
179
216
175
269
177
187
210
130
224
172
212
158
228
148
220
219
240
210
257
216
227
181
240
259
213
263
191
260
260
190
212
147
246
189
198
203
208
233
170
207
203
197
240
148
198
224
174
125
128
187
252
138
273
215
231
231
184
175
201
210
217
226
245
243
140
182
155
88
194
167
166
232
258
179
237
203
225
171
227
221
175
138
216
217
197
173
197
261
208
144
216
202
213
211
210
187
170
233
248
233
214
107
199
231
226
231
235
218
177
201
217
150
211
227
186
190
218
240
220
132
206
159
161
210
256
213
213
221
209
209
256
163
147
115
191
175
227
171
130
146
217
158
219
202
214
183
126
177
169
198
269
259
215
238
250
164
186
242
184
238
238
227
178
210
177
191
172
211
196
238
122
217
187
197
175
253
197
248
215
221
222
209
150
171
163
197
190
164
171
212
224
104
164
192
240
184
259
246
176
225
193
209
147
196
203
207
150
135
199
189
268
132
148
180
185
170
167
145
164
174
219
140
239
217
257
241
221
270
205
165
278
217
214
230
192
171
219
173
214
211
198
267
172
188
207
257
208
188
203
183
176
129
194
192
219
210
220
235
275
179
205
185
178
190
209
193
143
177
217
242
248
164
191
237
236
230
258
180
210
186
206
223
171
215
248
199
177
140
203
250
183
141
143
183
216
207
215
217
179
223
226
181
191
151
168
185
212
173
206
207
189
191
198
211
195
211
252
165
127
194
177
181
192
181
233
253
174
187
157
210
172
193
141
126
206
241
173
196
265
167
168
272
202
195
270
202
222
242
136
183
225
209
184
197
176
194
170
176
194
211
239
152
182
176
214
215
224
174
169
212
174
267
152
195
177
218
208
230
246
228
190
210
163
181
208
177
164
204
187
221
229
216
285
221
224
207
242
234
166
203
193
190
187
152
266
248
196
139
151
190
130
206
172
201
178
196
245
256
203
187
187
201
206
212
185
165
223
223
236
200
196
156
243
168
148
207
166
238
174
290
225
195
162
209
224
229
207
222
221
192
218
147
237
219
229
218
138
249
185
243
252
202
228
219
152
215
218
131
213
120
219
197
225
217
192
144
218
190
139
169
251
225
204
196
201
146
267
203
143
250
174
169
205
144
170
151
198
184
160
154
226
182
99
174
189
269
217
229
198
187
150
201
207
240
145
122
178
241
201
220
272
169
166
180
214
217
193
173
215
225
223
128
157
213
236
164
196
204
242
167
204
172
207
165
152
256
206
244
221
213
179
177
212
188
219
225
172
224
194
217
238
147
197
143
212
245
226
221
167
135
164
208
241
225
232
216
234
234
229
156
170
249
166
199
212
228
237
200
255
230
193
217
214
209
166
215
198
163
139
221
188
239
159
246
167
275
205
138
299
185
193
218
232
136
261
161
176
214
193
238
260
223
191
200
215
234
144
171
120
182
227
167
187
201
190
229
193
184
156
169
203
206
259
151
202
210
245
211
230
192
152
190
244
223
197
211
213
212
126
228
189
193
231
151
159
179
191
220
204
174
155
155
223
222
181
168
148
121
220
214
241
191
244
210
232
175
156
158
210
159
227
154
152
189
220
237
237
249
166
215
168
231
230
293
249
199
208
235
226
191
178
175
247
200
183
167
221
200
248
240
128
217
211
148
171
180
151
223
139
193
212
139
170
230
112
209
197
217
218
150
158
181
256
157
154
196
165
195
210
198
252
207
161
137
212
232
228
207
179
219
242
222
184
177
163
185
196
185
176
185
215
203
244
196
202
192
248
179
225
166
177
161
180
142
233
239
253
162
219
244
199
187
142
235
198
196
126
174
161
116
141
216
189
239
157
188
185
239
179
210
211
188
184
147
213
154
189
215
205
221
191
274
196
209
227
232
176
234
190
147
246
164
150
130
248
186
168
284
171
201
219
146
213
233
181
215
179
140
211
223
192
217
212
181
263
158
223
194
187
214
262
168
203
241
207
213
153
182
149
197
236
250
205
168
271
212
116
207
162
211
145
264
253
215
208
236
195
170
150
208
146
261
186
156
232
179
209
233
209
219
138
172
164
204
190
186
224
203
198
176
225
215
182
245
175
200
168
166
176
200
208
134
221
216
167
229
208
171
199
223
214
212
192
195
179
206
166
234
229
232
211
185
233
156
215
191
230
199
240
149
202
164
230
243
172
196
219
187
188
183
194
209
190
140
180
230
216
252
172
218
179
273
199
213
210
203
242
180
180
194
202
170
191
152
208
199
242
275
217
193
255
137
203
193
248
159
181
206
207
136
168
191
154
243
239
196
216
202
203
218
258
206
232
199
202
230
184
188
228
261
194
210
205
223
203
244
204
216
208
299
222
171
215
202
208
204
191
209
208
197
172
180
240
241
216
257
205
218
219
188
205
244
186
237
203
158
248
222
205
188
214
199
204
180
242
236
253
184
262
230
232
190
234
211
209
193
148
199
240
168
248
223
235
269
244
203
210
218
178
218
230
150
188
221
220
218
209
185
155
166
243
190
209
220
156
214
253
212
219
205
213
91
149
209
227
240
202
240
195
224
185
197
217
186
210
152
176
264
222
200
202
200
181
233
208
181
282
185
243
180
181
190
214
220
142
248
265
202
130
174
248
178
224
217
149
204
160
224
135
242
221
205
136
234
175
197
229
242
173
197
179
249
207
246
210
238
194
219
201
150
175
174
168
226
243
193
201
227
179
187
188
195
197
144
213
203
192
242
237
139
190
248
210
238
127
219
196
265
244
202
153
231
213
168
251
190
220
217
228
248
194
204
258
194
104
199
211
226
202
259
195
256
264
210
138
212
224
197
166
157
190
126
187
182
152
209
221
245
267
214
189
230
228
177
240
226
179
181
203
155
230
164
188
225
207
208
164
165
198
173
208
250
185
204
193
272
248
157
241
144
235
188
202
179
191
207
245
131
166
208
225
190
243
210
215
207
170
253
194
169
146
188
223
193
263
265
185
160
155
210
224
209
143
183
185
182
184
169
192
216
215
238
229
180
201
214
242
142
240
194
193
227
175
210
215
188
202
218
195
190
174
210
204
225
194
188
206
173
134
212
186
218
263
227
224
229
129
249
186
176
249
299
214
137
225
227
257
187
169
192
190
214
223
168
183
230
233
221
204
212
229
173
187
154
177
174
200
192
271
188
188
237
207
231
152
230
212
151
234
158
196
224
237
243
157
235
239
153
161
192
152
212
172
228
171
239
153
142
223
184
221
163
216
227
221
175
258
157
171
177
205
224
200
238
229
163
235
207
236
218
243
239
224
234
179
211
214
160
199
214
192
219
148
222
222
184
171
204
156
186
199
159
166
164
209
177
209
166
204
229
214
198
174
250
252
202
174
190
213
210
225
201
184
159
193
175
168
229
165
254
185
177
209
223
210
155
254
238
199
208
200
201
181
179
232
170
155
188
205
183
207
266
226
146
234
238
208
145
244
264
176
143
219
231
225
213
214
153
221
195
156
184
176
214
192
231
146
183
214
179
209
270
203
196
214
166
174
233
181
203
188
234
210
172
188
139
207
247
220
239
230
219
204
193
250
138
237
212
268
185
173
161
236
213
246
201
214
187
235
179
194
256
233
180
149
225
151
176
181
190
166
202
162
148
192
150
201
216
200
228
245
260
199
228
242
144
197
200
200
164
200
206
219
235
238
249
171
140
191
210
178
165
220
214
169
176
220
229
180
215
182
214
193
173
194
109
165
237
152
244
154
183
158
190
219
269
139
159
181
232
116
187
205
206
240
196
169
213
205
239
184
187
217
224
183
215
252
140
165
227
205
201
180
170
202
216
186
176
222
200
207
165
190
173
221
196
200
191
205
197
241
227
182
200
150
160
176
131
223
273
170
178
231
162
211
205
221
241
221
183
233
173
171
110
185
220
258
264
161
179
259
204
206
213
227
218
239
187
227
192
268
172
237
186
187
253
194
157
230
192
244
159
234
187
178
242
230
261
197
179
211
192
253
119
245
227
132
188
206
188
120
185
214
174
177
231
251
164
235
200
200
209
232
202
148
209
247
187
215
190
205
178
187
118
204
249
167
190
264
246
239
216
140
229
220
198
242
189
194
213
207
211
173
204
200
198
161
207
140
197
242
196
157
208
234
213
245
208
183
139
229
186
227
151
188
172
194
236
229
99
203
197
209
199
190
132
157
191
168
208
218
126
254
205
202
157
185
168
174
261
191
187
203
215
249
225
210
216
200
226
165
159
221
218
215
198
224
261
221
245
184
170
200
225
205
192
208
220
201
216
219
176
134
229
225
200
236
226
227
227
138
156
195
186
236
204
216
185
214
177
140
226
178
194
156
172
202
162
268
222
203
179
178
268
162
212
158
220
166
167
206
218
159
187
203
132
253
215
183
253
198
196
195
226
248
199
216
215
248
226
126
209
202
220
223
138
230
202
161
174
202
243
211
244
220
226
148
252
237
233
189
237
196
165
169
248
110
179
207
241
255
209
204
210
232
189
193
194
96
190
181
190
225
188
172
202
258
195
162
230
226
228
177
254
179
235
245
284
192
238
158
179
95
175
238
148
193
225
247
235
208
210
193
149
237
209
137
215
223
193
182
229
185
231
195
203
210
220
216
220
181
181
182
179
223
176
212
222
270
204
205
223
184
182
167
192
231
188
246
171
216
216
186
209
164
172
161
184
148
151
225
172
176
204
180
186
192
207
206
212
217
210
209
228
244
201
217
172
231
184
217
215
193
196
246
205
258
227
214
217
301
134
130
215
224
219
218
199
188
216
156
214
205
251
217
215
232
208
227
220
157
180
223
166
211
225
215
191
194
207
224
217
224
247
233
169
214
190
220
245
248
164
176
229
147
239
161
137
215
204
219
195
196
191
188
182
169
176
161
189
244
250
161
188
184
163
179
238
253
208
181
217
194
171
189
135
229
164
240
240
218
227
219
206
231
212
239
198
186
225
202
241
196
217
111
193
206
199
207
227
235
196
190
219
175
182
240
231
194
196
255
228
187
188
171
245
155
138
185
221
245
176
239
168
211
167
265
246
234
221
243
193
222
146
148
252
212
196
157
174
159
179
211
200
164
205
167
249
170
256
235
149
249
233
213
190
210
217
164
195
196
113
236
198
190
208
181
278
205
202
184
196
232
238
229
233
194
180
203
241
230
187
198
240
176
174
210
218
235
167
163
237
198
235
205
210
180
204
224
124
151
241
159
145
249
192
137
245
199
134
257
212
252
154
240
206
187
153
209
177
201
185
184
219
173
149
197
262
163
193
217
230
251
233
183
172
236
209
180
187
187
176
131
209
175
180
192
180
170
195
199
207
182
178
211
252
194
148
220
250
183
185
186
190
214
152
179
215
224
138
174
240
205
187
184
244
178
231
139
193
221
218
191
202
178
230
132
215
127
205
214
221
161
114
164
257
166
202
158
218
224
215
219
224
180
202
186
210
170
176
206
200
221
172
160
211
232
249
163
238
216
215
200
191
258
190
241
207
200
254
185
264
265
229
242
171
215
212
226
198
165
209
255
211
166
233
157
167
203
173
216
240
153
159
247
210
162
179
207
231
223
137
191
255
221
232
238
197
190
171
211
211
201
195
153
167
237
180
210
232
134
167
196
166
166
208
260
247
164
198
171
172
216
165
225
167
149
180
214
209
218
226
247
209
137
200
142
226
216
260
259
222
257
188
213
196
278
167
219
205
162
271
207
183
216
242
230
196
181
245
177
160
161
245
241
198
199
253
187
216
192
158
205
209
186
200
172
239
140
200
233
213
161
252
222
214
190
234
197
264
177
191
180
157
172
179
202
220
225
229
142
213
158
211
145
229
189
234
162
176
250
153
153
191
196
205
220
152
201
165
228
123
202
147
165
175
192
180
284
185
206
183
220
220
236
187
219
193
184
225
189
189
192
219
194
189
171
153
167
252
216
200
192
172
270
232
177
205
173
184
232
195
263
211
216
162
185
202
232
123
289
192
271
132
204
253
192
151
284
177
229
169
239
235
231
152
170
236
175
131
244
183
236
184
139
228
121
229
212
238
221
216
182
217
216
241
150
191
223
221
241
177
224
203
248
233
168
145
289
250
179
196
195
188
206
177
181
199
181
219
219
221
170
179
197
157
183
212
246
215
165
142
213
275
175
225
197
275
198
199
246
220
202
181
197
212
261
174
212
203
184
202
198
187
239
200
196
173
244
205
212
121
213
174
231
213
149
245
175
190
188
159
143
226
183
159
176
177
158
231
227
230
206
180
190
182
166
260
208
178
223
156
200
250
137
181
170
200
198
175
200
147
188
180
152
173
168
166
226
198
133
102
228
210
212
140
216
231
196
183
170
214
122
209
238
148
167
201
140
201
169
176
166
245
225
214
197
207
240
166
213
249
166
189
229
234
214
187
223
174
151
227
148
198
207
201
192
183
187
153
165
204
241
216
188
295
175
247
207
165
205
230
276
224
104
196
172
223
182
197
201
186
233
180
221
178
155
167
268
200
200
208
214
189
214
260
241
215
202
173
155
185
188
197
195
208
167
198
190
224
239
188
220
192
259
231
205
165
160
192
272
210
205
185
228
164
205
191
290
208
195
188
138
218
110
222
220
202
187
193
168
158
210
217
229
225
163
179
308
163
162
219
220
183
180
206
197
238
269
249
226
248
263
205
201
219
266
159
211
187
262
205
226
233
222
218
189
237
239
203
230
198
177
269
202
185
203
212
239
211
221
225
227
251
216
155
229
190
207
183
240
146
249
169
206
209
201
196
239
249
224
218
210
212
183
232
150
221
145
218
198
202
229
252
170
128
196
214
204
228
136
239
213
183
222
167
173
163
166
164
211
172
197
174
226
204
185
231
156
176
175
213
240
195
198
236
173
208
221
218
193
156
152
236
141
223
146
194
205
201
188
227
198
218
185
200
166
207
146
169
220
265
256
198
145
260
235
168
177
204
216
208
126
185
169
219
215
184
171
168
190
155
210
218
172
171
230
215
241
211
210
240
223
199
163
148
119
179
210
170
211
186
235
143
187
128
184
228
226
206
172
254
172
244
196
145
210
127
179
159
255
220
181
202
209
247
196
192
230
201
238
115
161
160
195
169
220
123
167
219
177
151
225
207
164
232
170
141
196
158
184
139
179
219
230
185
129
218
146
216
165
218
218
197
184
203
155
216
154
237
221
208
202
192
192
205
208
186
229
259
193
248
225
230
152
217
127
202
185
103
211
194
204
214
235
212
192
218
131
158
173
188
234
242
172
161
173
203
231
222
201
185
195
118
193
170
146
243
206
228
204
201
227
193
191
204
223
160
160
268
197
254
174
193
151
224
216
146
267
252
232
191
243
153
216
228
197
228
148
254
170
240
236
171
214
183
210
185
214
136
198
185
223
178
193
187
201
183
179
202
218
187
173
193
191
211
184
210
207
148
161
203
164
196
188
273
191
223
202
155
208
196
176
235
257
266
235
186
162
216
219
226
237
215
133
142
184
191
163
197
193
236
201
154
206
200
225
121
201
227
207
177
162
263
213
169
123
225
141
206
156
216
216
237
198
247
229
219
241
168
226
237
223
201
222
162
232
149
203
144
257
222
176
214
221
193
151
211
210
226
276
230
181
182
204
214
225
206
196
205
242
228
190
248
214
172
281
209
163
218
209
187
208
241
226
254
292
224
215
187
217
211
217
160
244
179
220
246
197
194
230
202
190
279
190
212
194
242
193
194
157
214
211
150
206
187
176
188
143
233
136
118
211
204
212
168
191
206
164
260
238
209
192
172
180
164
214
188
162
219
171
247
223
244
186
204
210
167
218
211
189
227
191
197
217
224
188
150
176
143
225
201
192
198
204
200
182
222
152
210
186
240
139
173
241
233
188
185
157
235
180
169
244
146
204
223
195
229
173
183
216
218
229
182
126
204
272
189
134
205
231
238
197
138
231
189
204
239
207
219
188
231
274
168
247
223
204
241
218
218
166
174
229
215
223
206
170
185
202
164
211
248
180
177
188
244
177
160
205
252
135
218
138
220
203
194
231
147
250
200
229
235
176
142
231
195
204
164
224
217
233
158
208
228
217
163
207
201
178
252
220
160
174
263
182
235
265
203
232
238
150
271
178
190
239
202
223
219
201
259
198
195
192
191
229
230
181
223
199
187
154
182
134
207
191
178
159
134
125
174
203
148
208
163
200
203
210
204
220
206
233
181
209
164
197
188
200
289
193
172
116
249
236
167
268
240
181
216
210
225
157
203
192
207
175
277
221
265
177
203
153
235
170
165
229
174
179
213
228
237
217
208
186
235
211
137
176
194
122
183
197
157
124
211
204
178
208
200
228
195
268
245
219
286
228
217
211
205
179
253
221
233
240
191
139
204
171
198
228
269
217
131
182
213
204
217
177
229
177
168
188
152
219
204
215
223
249
194
181
172
201
132
153
180
258
232
139
156
235
203
194
143
177
125
209
220
211
194
162
227
205
272
174
223
292
241
173
260
248
195
160
199
180
206
153
185
216
240
234
169
218
261
184
290
229
204
232
215
188
218
186
193
277
168
206
197
235
181
170
218
188
181
179
219
255
152
239
219
136
173
211
153
252
163
201
265
189
228
167
155
227
226
189
231
268
233
233
235
220
173
215
177
235
184
225
206
132
165
157
183
141
235
234
203
217
181
173
228
198
244
212
217
238
238
188
248
181
264
227
231
236
149
182
186
236
216
167
229
170
217
151
200
188
209
137
197
236
173
162
253
209
194
169
157
223
220
215
210
170
222
255
153
201
162
211
263
161
189
79
219
207
144
192
203
204
234
219
246
145
214
274
211
230
207
237
203
222
176
180
169
150
164
161
141
204
150
214
248
195
277
243
176
189
220
255
141
228
214
165
126
214
242
157
212
180
190
152
180
177
237
252
206
195
238
224
216
154
220
190
200
205
186
291
168
233
107
137
193
153
194
178
203
180
208
223
204
191
172
192
210
189
173
164
208
181
216
210
189
175
274
235
233
202
167
199
215
211
208
258
204
203
162
211
143
203
258
180
183
239
210
184
230
136
203
178
204
194
192
225
167
192
223
251
218
174
183
187
175
239
172
229
172
208
184
243
206
191
178
231
177
184
224
179
219
188
197
198
178
227
211
206
201
256
220
229
188
223
204
175
202
209
237
127
188
286
195
197
208
200
182
181
263
207
249
224
170
252
261
219
230
196
226
226
179
136
230
253
162
228
229
204
212
215
225
211
223
195
210
137
182
176
200
193
204
190
200
201
226
226
233
233
219
185
211
203
183
120
243
171
264
230
149
201
224
166
174
142
184
179
225
220
237
187
126
213
169
185
183
202
197
202
191
156
184
122
193
239
201
177
199
192
173
217
178
218
215
224
144
229
139
189
206
127
234
241
191
216
132
205
248
181
205
179
238
137
157
172
148
187
225
185
182
202
198
137
269
205
200
126
272
216
190
149
202
166
195
257
236
170
231
227
211
205
206
212
202
193
173
191
191
249
179
167
180
211
204
240
247
148
179
191
202
220
204
208
144
203
213
239
222
201
215
253
241
160
213
187
160
246
239
209
247
184
175
196
229
214
231
228
234
172
224
140
159
218
195
206
149
239
177
221
181
245
107
188
190
118
194
114
227
159
217
185
254
234
223
213
167
178
133
173
187
218
203
133
109
194
236
255
186
215
209
215
197
196
169
148
238
193
143
211
162
178
217
214
207
232
205
197
192
224
231
168
193
214
223
180
239
213
201
183
188
190
254
222
147
226
174
238
229
202
238
272
198
223
200
211
156
202
212
261
200
212
242
214
220
208
207
248
229
208
165
151
216
192
144
216
228
179
264
175
201
130
158
227
193
195
237
171
176
212
226
228
201
208
219
174
170
210
233
232
218
168
217
170
244
193
207
248
243
229
181
241
148
205
180
178
266
251
210
255
162
237
214
219
214
238
129
190
183
186
216
196
186
187
238
188
180
163
219
236
208
181
236
175
260
206
231
217
154
221
159
148
125
183
230
132
181
203
182
223
184
187
202
225
183
219
247
265
199
243
198
201
207
215
226
138
229
231
133
185
205
193
259
210
126
219
167
217
202
208
212
232
189
190
221
206
173
254
155
243
175
166
158
253
187
236
207
153
242
236
226
181
218
155
236
183
230
218
171
192
213
229
212
190
246
172
137
242
234
149
239
177
256
217
180
209
153
210
205
173
150
189
181
205
222
178
226
196
227
186
149
201
170
226
189
198
234
196
135
211
222
219
257
157
230
210
261
197
207
156
179
239
203
181
228
203
225
174
192
196
130
138
176
222
153
198
199
187
192
188
185
209
225
240
223
240
206
229
171
239
168
166
143
143
236
240
155
225
200
183
226
169
214
239
151
238
193
183
225
266
245
221
194
266
173
207
200
144
170
225
218
211
185
181
230
203
185
205
159
193
130
156
143
239
213
177
163
198
154
222
221
215
156
212
237
236
238
222
222
209
213
253
242
161
164
228
209
207
198
171
225
211
155
199
226
207
190
207
227
123
195
160
169
237
253
181
181
156
224
132
180
210
170
194
238
222
196
216
164
157
148
226
131
222
211
155
151
241
232
188
180
201
209
215
217
195
197
192
236
173
177
209
266
210
207
198
248
232
165
208
232
174
189
192
186
228
184
139
219
192
260
183
232
182
223
186
198
195
166
198
143
192
208
137
188
218
184
182
214
185
144
246
170
241
176
193
190
172
150
151
203
187
190
209
199
225
207
210
195
237
191
264
204
238
176
229
214
205
228
224
173
168
236
185
184
200
181
149
166
172
120
215
195
226
189
173
206
238
203
186
211
180
238
225
242
232
246
242
189
211
261
207
214
180
142
148
241
170
180
181
251
140
187
221
147
154
175
179
198
228
191
154
256
199
156
255
180
173
211
260
258
166
197
179
236
175
165
189
136
250
197
149
239
182
226
208
189
207
135
197
196
242
185
171
195
124
243
172
194
182
204
171
169
196
207
199
198
223
203
145
227
177
183
210
181
176
212
222
214
196
135
236
192
140
216
230
226
157
224
172
240
198
170
201
178
231
137
187
217
205
166
165
184
219
240
207
206
197
257
224
201
247
226
159
149
223
215
203
228
178
186
161
141
147
176
218
216
200
157
222
178
216
232
249
188
194
175
201
160
189
211
181
178
190
231
136
241
166
161
180
200
282
228
215
194
198
195
184
243
228
246
235
193
222
158
152
201
210
195
162
154
185
273
220
228
205
209
176
198
244
211
270
204
175
143
143
201
229
208
167
211
254
231
220
179
192
238
167
135
222
207
197
135
240
188
213
171
183
272
200
177
203
206
192
204
129
195
187
169
252
213
263
199
227
202
194
246
183
212
235
206
183
167
216
251
239
229
170
174
170
198
211
202
185
198
234
230
234
203
148
212
198
201
240
186
238
230
267
233
231
238
218
159
204
176
171
164
193
218
174
164
241
257
210
187
238
213
225
243
186
255
186
181
197
168
174
228
125
215
153
198
245
245
217
206
210
194
250
207
233
194
191
178
157
205
174
196
182
207
190
239
269
179
198
230
261
243
175
226
229
176
228
164
263
220
194
195
191
184
171
225
207
138
142
194
164
242
277
165
198
220
172
196
198
215
225
193
238
213
124
228
211
211
250
216
186
236
254
139
131
278
194
198
213
176
190
224
218
250
240
188
186
219
221
106
217
199
226
231
168
180
159
204
200
198
234
214
173
192
225
168
172
172
191
204
249
136
203
237
215
212
141
109
231
188
210
217
172
247
195
192
181
187
254
240
249
242
235
183
203
138
196
222
264
161
227
229
127
225
178
215
208
225
123
162
252
213
172
160
212
199
155
244
186
216
159
197
183
229
182
212
266
252
209
146
181
207
115
229
192
148
188
172
175
182
173
247
187
257
223
147
193
196
201
173
207
160
225
118
213
203
213
137
100
203
212
138
176
202
165
244
213
220
197
218
164
162
177
263
187
221
201
202
186
211
179
157
199
224
202
254
241
190
179
177
200
199
194
171
212
217
216
194
187
155
218
163
233
256
195
217
203
197
206
221
145
248
249
261
229
231
194
187
204
179
204
225
186
176
233
191
194
240
198
229
161
179
167
182
219
196
185
218
225
141
190
107
216
229
205
259
223
179
199
185
270
230
200
198
198
224
182
228
194
187
193
195
183
103
264
222
209
202
231
181
256
171
216
183
159
205
214
200
195
211
217
194
212
156
144
142
178
186
219
232
133
202
270
149
174
139
177
215
157
182
209
195
218
174
221
230
276
201
139
220
192
155
131
219
234
198
179
215
272
217
253
131
248
153
184
184
179
173
243
199
207
264
163
243
211
200
195
170
174
164
192
239
186
195
158
203
246
239
109
167
222
168
189
214
234
189
166
148
214
194
208
179
174
171
171
210
199
219
227
242
279
196
236
230
203
257
165
141
238
150
222
230
203
144
242
168
178
178
244
211
214
284
220
161
211
191
125
231
199
169
174
221
205
187
184
197
211
195
229
266
200
170
185
224
224
243
184
187
215
150
230
143
268
226
213
239
210
153
260
198
213
202
195
249
142
211
152
207
222
240
186
240
157
256
143
244
235
197
163
191
182
170
189
220
194
201
192
183
147
197
268
249
252
184
159
192
209
187
198
175
161
220
144
269
218
206
149
180
212
203
232
239
184
129
164
246
200
202
192
174
169
241
191
242
132
231
213
217
233
184
211
225
181
258
197
141
201
216
238
196
190
158
162
190
249
206
248
168
214
186
189
182
139
197
184
172
188
179
159
178
168
193
245
172
188
179
167
258
252
196
236
188
185
177
176
203
201
259
204
238
164
157
195
173
220
165
228
220
192
255
168
137
216
185
198
186
190
170
215
182
192
207
273
190
225
237
257
206
236
203
185
199
232
201
167
234
195
175
241
184
241
192
228
182
158
174
133
239
116
233
205
210
224
265
193
187
256
174
143
205
194
253
235
189
279
196
228
180
152
182
201
168
201
124
216
192
200
236
224
196
240
247
240
169
213
179
196
224
185
190
214
184
131
194
228
188
214
143
207
178
193
223
233
201
232
216
242
233
248
178
215
219
191
275
150
214
176
216
175
222
178
179
217
229
170
186
217
191
208
225
232
212
211
182
224
218
210
237
210
204
188
239
166
196
217
179
230
200
175
182
152
174
221
223
217
202
225
199
239
149
198
194
227
216
173
188
245
142
153
264
148
174
207
175
218
228
273
158
216
218
235
264
167
213
239
214
267
223
209
234
225
205
231
203
233
204
192
215
224
182
213
193
192
180
230
223
236
236
138
183
163
131
235
183
258
196
174
193
231
197
162
215
208
207
226
200
241
214
185
202
229
144
224
203
191
240
223
156
215
249
210
209
171
196
221
241
193
219
257
186
218
194
231
262
246
239
226
167
173
244
242
214
196
174
198
158
235
245
187
184
245
235
191
187
154
223
217
136
208
212
135
203
213
232
198
163
209
208
203
206
241
252
202
200
197
238
195
184
237
255
148
260
176
203
157
189
187
136
216
198
220
201
170
151
248
209
258
199
228
195
189
194
205
132
230
280
214
242
223
176
189
219
221
231
220
163
265
239
208
128
186
241
186
136
246
250
174
234
196
193
207
196
184
236
193
168
236
232
237
258
232
182
180
85
196
148
227
198
177
160
170
224
233
199
169
180
178
180
229
245
215
203
198
182
173
186
205
180
198
174
151
208
180
208
165
206
218
209
225
221
236
213
181
206
214
238
196
176
238
135
193
226
213
208
187
168
164
232
173
231
223
238
199
195
161
164
164
212
213
170
235
203
187
201
181
268
181
215
189
212
255
180
261
185
209
183
220
165
210
213
153
171
161
235
204
210
178
186
192
222
175
236
178
229
171
201
163
119
256
166
256
175
212
203
228
183
220
229
207
245
152
146
206
178
211
169
168
278
256
247
184
212
228
215
221
194
224
191
203
201
238
210
171
166
185
250
241
201
213
234
237
199
208
214
241
236
215
161
181
188
225
196
227
200
184
179
183
133
218
242
209
208
223
188
154
228
218
158
236
187
193
178
225
174
228
225
194
188
180
200
252
150
244
222
180
204
178
250
199
259
180
166
242
151
200
246
263
259
228
274
256
194
177
186
238
177
229
165
192
228
136
236
194
187
162
250
161
140
159
214
229
234
223
167
220
207
196
249
218
145
217
219
177
220
198
221
222
206
171
219
240
205
169
226
214
218
188
174
221
202
196
260
176
195
213
227
193
209
157
207
255
196
221
240
150
219
187
163
198
219
213
179
242
116
141
168
250
193
200
176
236
197
185
201
138
185
208
199
177
170
142
245
164
221
172
158
226
190
225
218
151
203
170
167
188
239
187
238
218
269
203
195
200
185
154
184
122
268
212
149
161
170
183
204
237
222
262
230
163
200
213
244
257
124
242
189
154
189
234
228
192
262
201
231
174
258
186
165
183
209
180
197
186
220
240
187
263
190
248
194
191
182
212
180
191
279
186
235
174
162
177
141
185
219
145
190
186
245
230
146
203
221
224
259
129
253
200
222
257
177
180
156
231
245
160
210
139
207
234
181
211
232
213
165
200
166
253
226
173
182
218
212
202
242
224
240
184
203
196
181
196
191
204
186
208
199
145
171
187
180
197
198
218
223
254
184
241
104
194
148
208
157
173
228
185
218
202
163
199
195
193
218
77
166
258
143
199
206
247
189
156
147
152
175
181
251
214
218
249
145
229
264
160
191
221
175
190
201
241
215
181
246
229
211
212
196
148
216
169
189
225
197
184
213
224
208
243
202
227
206
148
194
218
192
200
193
175
162
202
208
208
195
193
136
183
178
225
187
218
201
160
224
193
173
214
251
222
226
208
185
175
219
203
179
218
142
260
139
177
200
152
181
164
199
223
215
156
207
236
241
248
220
197
158
229
225
184
169
257
214
135
149
213
246
257
182
225
250
201
143
238
237
226
217
192
203
222
213
193
192
196
184
199
226
199
194
213
217
230
183
218
211
191
218
206
253
208
195
213
186
216
174
227
192
188
173
132
228
192
220
217
208
224
182
204
205
166
235
139
245
124
214
201
201
228
169
238
199
214
143
206
246
242
158
205
182
201
198
214
154
239
240
191
224
142
199
204
148
232
231
191
212
211
207
163
224
206
222
172
205
172
192
204
152
211
170
244
176
152
190
174
212
227
237
158
211
209
238
212
198
181
212
157
231
241
191
128
251
212
191
251
265
233
239
234
213
248
169
204
199
224
168
284
233
190
229
169
164
166
182
183
116
141
175
216
206
221
275
158
230
214
176
209
180
228
173
242
151
192
194
191
185
237
179
226
254
230
201
245
162
186
217
157
172
195
174
206
204
127
168
168
149
184
226
159
196
141
210
218
164
148
172
165
254
147
201
261
226
210
179
184
152
194
221
195
225
192
210
183
187
174
199
122
277
230
223
165
201
202
180
217
185
143
239
191
210
195
239
244
196
145
223
242
177
156
184
199
215
209
153
181
220
144
245
199
220
218
195
175
247
145
260
213
219
230
185
218
178
231
218
246
132
207
222
246
166
217
193
228
209
216
175
214
236
244
197
206
174
185
185
207
169
194
247
168
186
183
137
224
188
202
241
163
268
201
155
169
266
244
198
125
173
195
161
177
217
180
197
245
175
230
168
184
266
197
269
169
206
234
252
173
246
170
153
208
216
251
228
218
206
178
190
228
176
169
214
180
157
228
201
258
269
255
186
145
235
148
234
157
161
177
264
216
195
202
159
204
188
219
208
182
282
157
181
304
238
218
203
190
170
200
193
192
184
187
210
211
205
199
197
233
209
202
225
192
191
217
216
206
180
195
226
198
141
205
253
200
194
214
172
211
162
209
212
238
240
247
251
160
159
176
207
205
177
227
197
192
257
161
166
206
211
243
209
169
217
195
186
226
177
193
232
181
181
194
215
267
216
202
207
233
279
174
186
207
225
221
252
194
190
214
202
184
184
160
216
198
201
243
191
209
218
158
142
263
224
223
226
144
153
234
211
182
219
232
186
148
222
192
179
129
216
252
254
244
228
278
210
144
204
222
218
171
225
170
226
155
211
231
166
245
212
163
215
186
181
214
214
213
244
213
189
142
210
207
189
180
173
189
256
250
205
207
168
177
189
234
161
180
194
261
211
182
233
252
227
202
168
147
170
221
228
213
235
207
178
180
175
209
246
149
165
206
185
249
201
257
134
175
246
232
234
199
231
196
213
201
226
172
208
209
190
235
192
163
198
185
150
165
93
171
207
182
238
215
235
199
224
162
192
163
252
140
243
248
180
176
197
261
123
187
227
243
145
227
186
180
183
209
223
233
222
194
248
136
171
212
192
211
131
174
173
241
223
174
173
259
228
180
221
147
239
215
268
220
260
158
204
239
210
226
254
153
225
220
175
170
233
186
246
197
224
266
157
224
253
206
235
199
218
158
217
165
214
190
167
188
210
224
139
147
168
164
117
222
237
180
214
224
159
157
169
242
170
231
180
244
145
191
224
217
178
229
178
158
203
193
196
242
191
164
196
230
250
239
234
261
254
237
186
247
216
168
231
228
164
148
175
259
150
220
228
216
155
180
169
213
181
201
161
262
173
238
190
181
222
245
231
178
187
232
185
137
187
230
191
196
165
210
83
182
150
184
257
217
273
204
169
284
154
199
183
166
177
225
238
214
221
190
142
165
193
183
199
196
141
207
159
201
169
190
221
234
183
178
191
210
260
175
174
229
230
171
186
110
206
156
232
237
189
176
242
205
194
218
165
188
157
257
179
214
195
247
199
258
168
193
186
209
192
130
115
241
235
219
166
168
199
240
215
261
221
253
228
194
189
210
234
240
213
226
234
208
230
162
198
172
220
165
143
190
220
226
204
177
193
226
196
200
144
183
242
181
157
227
130
179
113
222
136
152
203
146
188
193
194
217
153
199
195
199
260
221
77
183
129
190
149
188
190
157
220
173
212
169
160
210
191
202
217
227
202
137
209
263
199
162
242
265
215
202
198
207
228
182
154
197
230
170
210
196
199
173
205
244
261
154
241
183
178
179
208
208
231
203
276
191
205
240
165
179
182
157
220
248
155
272
203
217
230
260
198
230
242
211
184
174
164
155
247
226
182
208
208
242
217
194
240
232
142
205
205
210
220
141
259
138
244
204
200
202
180
248
192
269
213
197
247
170
125
204
161
186
215
227
157
166
236
175
241
261
156
198
177
204
215
196
219
241
175
218
241
256
243
192
191
207
152
218
202
137
237
215
156
222
184
210
247
149
189
146
243
242
194
212
243
195
219
246
214
214
214
243
209
193
190
204
219
114
199
189
175
143
247
218
230
230
210
234
236
217
194
177
213
210
147
135
211
251
112
188
249
180
171
181
212
247
201
162
176
207
122
242
240
183
253
190
267
173
239
186
226
206
279
162
204
162
224
219
187
213
201
229
175
156
198
142
227
149
254
218
170
211
148
206
235
205
169
221
166
233
239
227
220
125
224
244
221
227
256
183
174
177
205
185
236
226
216
200
224
211
229
181
233
200
233
214
156
158
277
242
192
209
244
223
129
180
215
174
202
213
184
172
194
124
191
207
229
176
196
194
260
196
207
232
243
187
193
161
247
239
237
208
214
116
227
214
196
216
195
192
211
199
215
243
200
176
206
191
189
161
258
211
264
253
193
184
163
227
154
180
266
186
207
244
167
213
216
214
185
207
232
182
142
200
242
198
191
217
181
184
218
261
219
223
130
169
217
157
193
234
205
147
219
216
271
201
125
200
238
210
166
195
120
218
214
210
223
218
210
178
151
128
215
233
176
191
188
165
246
211
263
192
147
185
202
223
170
279
208
220
219
152
170
213
216
176
184
176
224
225
209
173
227
250
149
247
163
218
126
233
175
226
189
164
201
237
233
131
148
239
166
175
209
210
213
186
181
214
139
207
183
212
200
206
184
216
239
220
237
115
219
204
240
169
143
235
166
188
176
173
150
232
188
189
233
152
241
278
206
192
232
225
197
223
185
250
241
247
228
220
162
209
206
223
181
268
244
261
221
257
187
299
249
235
202
156
191
166
168
210
195
241
232
139
181
129
175
110
224
192
223
158
201
188
172
170
194
219
212
224
230
130
244
176
127
178
183
198
153
188
148
226
167
194
216
214
222
145
168
236
189
231
218
228
247
211
181
159
216
201
135
225
203
165
194
186
187
211
198
202
153
208
240
113
152
200
188
168
201
215
257
187
210
150
149
164
149
228
166
243
228
192
180
135
134
177
231
236
229
219
164
196
228
174
164
204
224
126
216
240
200
198
185
225
189
221
187
189
229
201
232
196
191
211
146
152
201
191
203
206
147
156
211
163
206
180
187
222
194
227
188
140
219
175
237
200
211
199
191
217
173
199
200
238
218
174
168
132
258
248
183
227
170
187
220
212
263
176
182
167
220
183
140
157
193
176
249
182
166
180
213
198
209
210
219
220
203
229
165
195
209
174
195
264
178
209
234
210
226
240
146
181
191
223
240
202
251
200
160
199
204
177
259
282
236
215
249
199
104
202
181
158
232
246
215
210
186
136
214
211
245
175
222
176
230
182
235
244
138
198
212
187
216
247
207
233
173
163
254
180
167
193
209
205
213
153
222
142
246
191
148
212
167
216
213
249
203
222
223
197
173
169
240
226
162
185
245
158
199
173
264
257
152
213
225
224
252
201
216
175
189
207
196
223
222
184
180
238
202
186
196
260
258
239
176
205
219
235
198
225
211
187
180
204
266
228
202
163
240
237
173
129
190
185
179
247
224
191
162
232
188
251
146
215
150
178
230
203
216
235
193
179
141
243
212
264
153
215
217
175
237
261
204
201
192
229
223
237
196
175
142
134
284
270
160
187
199
169
185
276
215
196
167
177
212
201
215
151
226
242
218
164
177
191
181
214
201
215
242
140
227
149
150
227
195
238
187
221
211
274
244
152
209
155
145
204
230
235
191
199
226
230
176
217
181
193
197
246
210
137
173
194
272
162
203
208
248
198
83
213
234
177
217
199
176
213
224
229
215
234
192
218
174
206
202
195
211
248
180
247
145
217
236
222
239
170
238
215
190
219
87
188
204
181
229
231
130
186
223
225
186
202
184
162
201
206
225
144
188
250
239
179
234
211
218
192
196
202
269
257
168
192
185
185
182
160
131
212
217
218
242
198
234
174
217
155
154
155
198
196
154
200
218
230
193
200
229
242
202
181
217
172
215
219
256
203
188
229
232
219
228
271
211
197
207
231
160
176
206
227
156
189
186
157
156
226
232
224
166
224
130
198
207
225
232
231
222
237
177
199
179
240
257
207
221
181
244
203
188
159
156
254
187
168
247
245
198
148
233
205
222
184
160
244
180
201
200
191
250
188
166
118
225
177
197
187
213
225
184
153
223
209
141
194
181
235
213
197
152
223
229
257
197
222
184
219
175
136
182
232
177
197
210
253
165
185
189
198
174
179
199
200
256
224
191
217
222
208
238
147
287
221
226
204
171
250
207
225
234
257
166
149
184
160
175
173
184
165
212
149
177
174
212
206
144
148
183
216
199
285
178
223
196
238
162
281
218
171
206
157
158
186
284
193
172
175
210
220
236
145
176
172
212
254
146
186
216
149
248
185
264
227
166
207
238
200
231
203
265
189
157
159
223
144
211
157
218
161
274
152
189
186
235
217
163
188
186
218
183
208
196
217
177
181
178
209
252
144
211
177
221
232
204
223
230
209
154
189
150
166
111
207
179
171
206
164
229
211
188
231
245
245
185
236
238
226
210
188
207
145
204
172
249
196
228
163
186
237
152
191
213
205
209
256
192
208
189
196
228
209
164
187
209
127
263
225
189
247
199
190
237
194
259
255
278
206
236
202
191
139
221
216
199
234
231
210
196
237
178
178
238
183
207
193
188
177
196
213
226
196
211
222
189
256
182
201
208
237
224
113
201
190
160
160
206
166
216
200
211
189
129
204
229
161
194
186
209
218
179
198
159
241
88
214
205
184
185
223
206
202
263
216
160
208
265
153
226
241
236
227
194
239
167
196
227
216
161
196
158
195
249
243
208
234
164
203
201
196
235
149
197
167
158
209
202
172
201
200
184
192
209
251
168
193
183
271
240
221
152
222
158
183
198
221
238
150
248
263
240
140
200
161
195
168
174
137
180
130
208
192
189
203
211
171
184
244
280
219
216
170
158
200
220
197
241
230
234
209
248
187
217
234
136
155
247
209
204
210
231
241
169
244
213
167
200
130
169
159
204
229
196
204
223
210
208
186
156
154
190
181
240
194
211
191
181
160
160
123
150
196
211
227
221
140
242
182
227
182
262
220
204
217
136
246
211
183
207
202
173
210
186
247
163
250
227
241
212
236
154
224
186
150
220
229
227
168
197
172
187
233
226
263
182
213
223
251
210
189
219
205
194
213
222
224
206
201
193
219
161
130
233
247
242
172
228
228
190
203
189
204
202
225
217
175
244
272
228
179
172
214
170
185
146
241
206
195
203
131
271
251
182
202
243
220
206
126
212
232
215
193
221
196
171
206
172
220
191
271
189
139
217
270
187
227
216
159
181
183
207
165
210
269
148
214
232
191
210
199
180
245
131
225
153
207
155
196
251
201
239
204
211
196
143
149
146
215
178
245
185
211
252
193
192
243
138
207
144
192
171
229
238
130
184
204
245
222
238
225
211
177
203
142
181
215
161
221
177
173
185
246
171
213
241
213
224
171
265
195
206
137
187
228
214
235
130
209
147
155
164
269
235
154
228
258
226
158
263
132
168
231
170
158
207
237
184
177
239
175
230
211
232
185
213
159
149
210
180
249
270
215
173
158
222
256
184
200
211
192
183
178
212
200
172
225
235
188
223
148
185
216
178
211
174
239
201
190
245
190
182
203
198
197
205
143
200
200
216
270
128
192
191
212
165
275
196
192
160
229
219
164
217
213
223
267
244
235
164
213
214
183
198
210
171
233
148
181
226
152
226
176
75
202
235
169
226
213
210
210
222
215
190
256
192
223
131
197
209
192
224
183
219
225
146
227
219
193
179
195
240
215
214
200
210
183
158
169
196
163
234
197
160
218
217
211
204
172
235
220
227
196
200
189
251
158
201
235
170
252
139
216
200
214
217
142
224
236
189
183
184
231
194
226
131
166
214
213
240
170
181
154
163
187
147
218
188
141
177
251
236
253
205
217
158
186
226
263
259
158
195
105
233
171
226
101
192
179
239
249
170
179
214
140
193
140
143
184
243
156
182
205
142
167
214
195
230
162
212
154
228
195
223
208
226
159
255
188
189
186
246
217
204
115
172
252
206
182
171
223
193
163
191
214
211
237
208
147
219
330
205
141
193
177
202
183
222
172
247
196
181
154
202
186
203
222
212
162
195
236
201
186
210
179
196
220
198
189
122
199
264
211
235
196
203
188
216
116
223
267
259
180
153
165
164
260
198
196
174
191
215
177
195
244
227
187
140
206
188
177
166
160
197
220
169
197
183
197
203
198
167
141
174
165
168
229
271
239
157
253
235
181
153
243
247
171
188
245
220
263
141
153
160
185
190
241
238
250
216
210
235
234
121
246
198
185
218
173
212
199
183
187
209
160
169
224
221
183
212
209
196
256
202
201
230
237
161
197
129
229
247
204
230
227
168
191
212
222
165
212
257
217
215
218
207
157
206
219
158
169
160
203
142
251
168
254
204
186
218
248
201
230
214
179
177
156
223
267
204
189
204
127
214
157
209
183
212
193
218
239
212
124
233
220
141
275
224
179
207
208
201
112
197
187
200
176
164
205
252
197
179
179
188
166
197
194
125
239
181
208
203
201
212
242
174
181
147
188
182
215
147
181
243
174
134
226
175
213
162
221
235
217
176
162
243
207
229
176
257
183
136
165
187
191
186
239
241
260
212
156
174
263
177
179
191
176
149
203
198
217
198
232
210
226
183
171
156
147
224
236
192
235
228
183
196
251
205
140
187
201
185
200
222
239
239
210
177
212
215
125
202
202
264
247
246
225
198
177
245
193
253
272
196
143
154
176
163
236
264
163
220
192
187
223
208
166
225
188
218
214
183
212
213
228
241
225
170
190
209
215
165
180
162
194
183
201
213
204
218
207
191
253
255
148
230
235
198
200
239
155
172
202
203
157
180
192
233
260
121
233
270
177
185
190
205
207
165
226
214
196
197
233
163
179
216
232
200
202
257
216
224
237
179
142
199
159
182
228
198
186
215
263
221
240
147
195
136
147
223
202
208
146
183
235
233
192
186
135
211
205
218
226
167
188
192
244
214
189
216
165
206
155
237
109
163
206
219
169
149
248
203
235
234
170
189
231
196
149
211
234
218
210
214
155
158
205
226
247
182
209
203
214
275
233
188
173
181
131
248
172
210
216
152
182
105
204
201
201
170
210
182
179
183
195
216
234
195
192
212
168
224
172
204
199
202
207
245
188
235
240
170
166
188
185
285
126
184
193
200
119
240
192
185
154
165
161
191
213
148
187
224
171
152
205
219
185
216
230
241
209
244
178
229
148
214
210
201
150
151
220
233
201
205
136
243
196
149
169
208
198
238
203
148
155
192
186
257
215
111
175
173
174
163
218
213
179
183
145
219
197
202
216
182
234
233
189
180
170
200
239
196
186
163
181
135
191
195
204
116
260
207
140
148
203
225
218
186
202
217
183
204
197
211
204
206
252
211
191
238
255
223
205
200
183
165
142
183
213
212
211
203
230
198
156
231
245
198
151
198
179
192
245
140
202
212
209
164
172
183
193
195
246
226
217
183
227
192
199
194
169
215
208
162
183
197
100
138
155
207
218
191
181
192
173
156
226
247
227
186
245
206
251
180
216
247
127
206
197
143
152
202
224
169
255
197
188
220
209
215
171
204
181
238
237
266
187
271
190
218
255
195
261
210
201
188
211
239
241
176
223
198
191
169
202
175
198
222
244
229
194
208
183
199
119
142
200
246
201
209
211
231
258
206
235
170
193
224
208
238
193
158
202
182
222
206
164
254
219
241
245
234
158
223
219
207
171
218
176
261
205
238
227
202
222
227
238
220
258
223
181
229
223
124
177
186
196
203
173
243
142
177
193
223
165
203
190
178
204
230
185
218
207
163
180
169
196
196
185
125
178
221
212
154
231
227
186
148
243
247
200
213
237
152
251
163
179
182
233
177
167
202
203
250
177
260
221
196
170
185
235
222
172
237
238
225
143
270
241
190
257
156
176
247
256
178
169
222
161
196
206
179
176
210
207
217
210
182
182
168
168
206
204
239
185
287
218
220
271
145
160
195
204
161
172
178
153
224
237
171
215
198
214
162
172
175
219
190
223
200
164
284
221
171
166
219
250
188
228
212
144
225
243
184
219
192
197
209
214
210
206
238
218
239
203
217
269
219
200
246
133
219
229
210
132
221
161
190
163
164
246
194
246
188
230
256
255
213
190
174
262
175
219
243
200
179
244
201
168
229
147
208
262
216
159
239
216
139
171
201
180
225
234
203
188
220
152
160
211
172
252
213
166
90
173
236
185
239
210
163
220
245
194
210
206
164
182
180
236
251
151
196
232
296
191
222
190
247
229
174
196
197
173
131
213
198
208
199
189
247
186
210
157
220
201
203
143
205
292
264
198
208
261
186
219
218
175
265
160
170
242
190
186
154
173
204
218
193
135
206
231
194
196
207
226
229
225
172
208
142
188
151
257
119
192
133
154
207
146
195
199
156
173
214
202
191
250
214
200
209
219
154
183
203
241
187
221
239
239
251
213
188
232
182
178
190
184
150
168
167
230
196
191
237
213
153
273
192
214
204
184
236
216
202
151
228
214
224
190
198
230
176
222
226
231
238
215
199
204
232
162
212
214
283
250
229
196
199
209
181
222
179
210
234
182
143
159
221
130
222
233
177
204
135
183
173
132
134
203
197
232
206
232
202
195
229
168
222
186
239
225
144
193
185
207
226
191
164
180
215
260
191
199
193
206
263
189
190
168
237
181
213
211
197
197
210
203
158
245
181
240
246
134
199
176
243
196
225
247
137
223
162
171
253
174
185
152
194
173
226
184
161
228
236
203
229
238
214
226
197
222
180
172
205
252
186
224
204
217
214
181
180
203
194
190
234
197
166
228
256
83
180
179
242
241
181
206
193
206
190
164
209
207
141
190
181
156
248
194
245
248
169
175
263
259
214
228
204
225
235
248
149
193
194
174
199
262
168
175
240
199
170
230
203
140
180
215
246
261
193
126
212
210
226
250
189
266
143
190
202
248
257
194
167
253
168
239
201
184
191
250
154
241
270
231
251
193
215
205
181
232
199
232
200
142
203
190
173
143
241
191
241
188
191
183
159
219
214
144
158
211
190
229
221
283
165
193
197
245
175
247
131
292
226
236
160
141
203
236
197
174
162
208
203
228
261
226
192
218
176
128
153
248
191
179
148
179
232
226
187
188
172
251
156
212
201
155
238
179
170
198
246
206
202
203
225
261
192
241
158
250
170
213
159
254
200
227
247
242
225
196
218
164
76
224
219
218
211
184
199
221
208
158
234
229
195
213
232
262
188
203
191
128
164
160
252
208
204
187
161
198
167
240
180
166
219
222
222
212
207
161
210
243
195
209
247
268
163
246
234
237
188
180
212
234
129
223
217
184
219
253
195
227
219
199
196
223
124
193
236
229
215
181
221
217
249
161
177
211
183
223
174
177
220
161
186
249
128
189
242
195
215
249
189
217
225
162
183
187
244
220
185
218
223
227
243
209
223
283
178
257
162
151
212
213
276
185
207
200
210
217
230
217
185
130
219
196
160
166
191
159
256
211
166
173
187
216
151
232
167
192
205
191
171
207
222
181
194
191
206
261
186
183
171
178
199
260
193
224
216
216
176
231
164
200
213
198
198
155
221
234
213
217
209
285
274
191
181
301
173
229
163
220
199
232
168
202
157
226
159
213
174
199
210
194
232
220
162
206
183
149
201
201
209
203
174
181
250
193
250
211
212
172
181
191
229
271
186
118
234
206
218
158
225
258
203
251
207
185
232
277
195
160
178
187
210
242
161
167
268
134
215
209
195
213
136
169
175
159
189
168
189
189
177
254
183
234
199
177
197
171
128
193
174
247
152
183
156
213
206
204
231
216
129
251
232
137
146
202
189
260
214
237
210
189
229
247
208
134
195
169
179
220
247
268
202
256
203
198
203
240
245
219
201
205
214
184
170
228
245
209
176
190
239
249
170
213
200
171
180
104
220
165
185
220
170
192
219
170
157
136
181
194
206
180
233
226
223
211
216
191
238
224
182
232
234
190
187
226
180
202
196
204
182
225
254
204
230
233
197
137
237
218
162
227
181
233
157
216
194
211
240
196
220
164
201
201
220
202
150
213
169
239
182
168
182
159
211
164
205
244
202
189
164
207
197
218
221
214
200
251
214
198
222
212
186
169
198
170
198
171
192
184
184
210
247
215
193
249
215
270
196
199
200
135
195
132
194
208
246
225
193
193
244
164
206
225
228
219
163
204
161
196
248
227
191
172
184
193
236
193
248
178
167
214
199
181
221
151
219
197
165
222
185
186
215
226
241
198
188
118
233
185
194
176
232
211
215
221
221
194
138
158
214
195
187
203
228
224
254
205
233
194
231
265
184
242
201
170
173
222
201
224
181
163
169
160
142
158
189
186
231
214
177
215
219
220
242
198
225
174
198
241
222
254
196
202
213
194
156
285
228
230
215
215
175
204
204
207
170
181
208
205
128
189
211
203
215
208
169
237
229
170
170
169
195
221
162
107
156
210
229
219
192
215
241
183
200
261
168
187
186
178
163
235
247
240
175
198
216
170
190
142
252
214
187
228
131
213
199
251
191
131
191
228
180
164
183
178
205
257
249
214
181
209
218
163
213
218
166
135
216
140
143
245
124
274
219
188
229
162
243
216
226
158
156
214
230
208
162
179
224
167
168
198
117
212
194
242
201
229
238
265
121
224
184
207
156
214
175
182
148
196
192
205
201
181
216
264
229
176
193
181
195
229
269
217
134
148
257
167
179
274
258
228
239
196
234
213
186
254
233
190
202
175
214
157
212
159
266
216
205
230
221
178
227
177
227
148
241
213
161
232
207
178
174
218
206
116
195
229
181
256
241
137
199
218
157
215
134
153
181
218
250
144
127
145
185
229
170
217
149
144
245
235
184
218
201
225
220
224
220
185
222
197
171
233
201
233
180
248
145
179
160
189
184
118
230
227
228
238
208
193
155
197
228
153
182
151
142
154
174
260
236
169
165
205
150
191
191
175
211
191
199
184
238
238
236
183
226
208
174
251
215
204
109
234
227
186
168
141
235
179
233
242
226
208
155
203
213
204
205
214
228
165
233
174
232
228
213
205
162
199
210
182
160
222
191
162
220
170
250
231
216
242
196
242
191
165
214
182
198
164
235
223
213
102
205
233
227
201
147
207
244
187
233
177
210
186
233
189
216
173
208
208
186
234
225
255
228
194
237
196
179
207
196
241
236
181
211
190
246
186
188
264
211
159
268
208
185
233
201
183
215
240
201
197
134
205
246
206
161
210
140
228
231
213
191
209
160
144
232
195
239
238
225
227
195
187
205
205
184
249
191
273
209
147
208
182
275
217
187
188
226
192
227
189
185
154
218
252
166
147
223
221
186
210
215
266
226
176
234
255
198
208
234
186
192
212
177
224
186
219
173
198
197
225
216
223
152
168
183
187
215
187
236
177
146
270
213
192
206
200
163
225
147
226
216
216
233
184
238
182
202
245
178
248
253
146
264
218
230
210
170
209
190
183
216
193
152
179
230
210
196
133
152
241
202
216
210
183
263
226
201
131
219
193
243
221
172
198
214
219
196
209
167
162
176
192
165
177
218
249
132
216
200
195
190
176
182
272
145
188
152
192
209
227
246
214
162
158
211
153
195
185
186
199
189
239
188
178
236
182
254
190
223
208
166
199
209
230
132
190
179
217
203
230
191
183
234
223
276
196
215
182
154
215
210
157
213
183
189
170
158
202
274
213
206
182
188
174
217
205
238
221
247
217
157
214
198
182
255
194
180
165
172
253
214
170
230
187
188
237
161
225
163
160
169
212
257
125
188
188
216
230
249
169
259
193
242
245
241
199
212
205
168
210
237
205
189
173
249
194
219
161
118
165
210
199
157
280
177
211
173
134
209
195
198
152
173
167
219
188
213
152
108
151
227
221
242
224
232
230
165
192
228
92
218
240
182
202
189
223
208
221
197
131
212
177
178
200
180
178
165
208
189
191
239
233
208
196
221
189
237
222
214
266
197
193
228
231
240
228
209
228
223
181
202
174
216
265
214
206
205
160
193
193
181
222
181
258
203
181
252
209
217
216
176
157
102
216
255
198
246
171
222
178
254
198
159
135
223
174
226
167
236
216
226
204
201
240
221
229
214
231
267
175
198
154
176
184
205
217
160
200
191
212
256
198
195
173
190
200
193
188
114
200
174
230
244
230
175
212
129
207
245
239
152
200
210
187
171
224
246
153
212
206
232
200
203
140
176
196
241
140
212
208
150
149
229
129
225
231
179
239
242
179
220
169
167
216
227
200
169
182
230
197
208
196
223
180
277
157
174
243
181
211
219
181
182
186
177
242
202
137
193
222
250
188
157
191
248
177
190
215
205
141
237
216
136
194
113
192
269
214
220
218
220
175
189
195
158
180
231
273
174
184
173
196
227
181
158
252
113
224
182
187
189
213
206
205
233
146
196
193
207
185
202
265
179
187
197
279
216
153
213
180
161
169
218
163
232
206
205
168
163
217
131
177
163
235
152
229
218
152
168
201
199
203
182
195
217
246
175
202
170
196
142
223
199
212
216
128
175
243
212
249
213
259
207
177
243
240
145
282
182
217
225
184
188
156
188
172
173
197
220
206
220
225
161
203
142
241
224
213
238
252
207
258
195
161
193
210
131
203
164
187
122
206
164
190
230
233
218
192
236
183
206
212
196
193
154
227
203
218
187
224
191
209
164
154
215
202
236
223
203
195
174
160
226
245
166
146
222
255
173
115
174
206
159
148
240
125
238
161
170
186
175
186
264
211
221
187
214
213
189
193
108
251
233
208
235
214
145
225
159
169
142
182
234
199
200
163
235
228
249
198
189
180
191
231
221
192
194
232
122
193
249
217
249
186
206
225
177
213
180
135
231
223
157
211
224
209
232
260
190
148
243
164
154
206
147
136
249
141
170
188
116
209
190
206
199
231
137
130
249
249
219
192
249
235
200
225
177
234
216
231
170
145
168
262
223
277
216
247
201
189
247
200
219
208
286
230
246
225
208
178
161
191
184
237
214
175
236
175
197
161
233
165
174
157
205
177
201
225
213
134
179
187
254
190
219
182
160
160
180
212
187
175
203
167
185
257
198
217
220
206
195
141
191
128
223
187
179
187
194
186
213
258
190
190
179
179
196
164
245
162
162
224
168
250
170
204
220
186
199
192
170
170
206
256
182
247
175
196
202
235
196
230
165
258
267
239
264
159
186
192
151
188
216
167
157
246
216
231
172
227
231
269
241
279
239
216
170
207
180
181
244
242
144
155
188
195
221
197
211
223
201
220
214
234
201
226
283
196
167
217
196
218
199
191
206
238
235
200
202
205
221
188
233
199
176
183
169
194
224
163
228
206
95
196
190
237
194
207
186
140
213
220
199
191
185
192
217
143
235
204
232
206
200
216
232
170
211
188
182
227
147
271
179
223
184
197
173
172
187
184
191
220
198
200
186
206
197
185
143
160
267
245
224
163
197
191
250
190
195
151
246
263
254
157
209
182
176
199
191
200
180
148
175
214
186
197
184
247
175
155
208
215
255
237
223
240
149
220
213
169
187
228
228
213
189
156
206
204
209
143
213
210
232
213
189
215
219
138
188
153
244
197
181
140
179
182
258
123
146
130
208
224
201
185
218
137
170
258
234
145
257
214
190
186
125
193
176
219
256
226
159
234
175
199
227
230
225
215
187
180
204
226
179
195
157
141
151
222
250
184
150
221
170
201
231
225
239
220
210
186
197
176
225
155
181
160
261
194
198
190
188
159
227
222
194
143
249
224
228
151
184
200
189
165
166
200
165
183
179
231
185
206
175
265
179
167
151
194
217
256
207
244
163
198
164
230
206
215
162
161
180
228
192
177
187
167
161
217
195
176
163
192
249
234
194
236
213
211
198
193
232
169
216
164
135
252
222
251
238
181
183
149
217
213
188
243
224
217
180
201
197
194
255
235
177
193
216
186
181
188
255
208
214
192
169
238
207
209
193
281
145
199
146
175
221
212
182
184
174
199
166
180
226
245
200
205
186
226
225
182
167
209
244
183
201
198
216
195
243
213
185
179
224
210
152
199
257
163
197
183
210
151
178
150
195
219
171
235
192
206
125
232
155
133
173
180
207
212
231
190
152
186
235
196
222
186
184
228
204
153
222
230
186
160
150
183
214
112
143
162
125
126
210
193
200
265
237
167
181
195
215
178
267
214
178
184
243
143
217
216
216
203
183
198
165
209
197
189
191
190
169
203
173
196
237
261
136
183
169
222
201
190
225
224
191
171
203
250
180
204
190
250
214
246
237
226
158
235
205
206
162
241
151
168
176
195
132
193
194
224
212
252
245
217
208
219
243
207
116
227
245
162
206
238
214
186
218
205
175
159
208
248
194
217
200
169
241
238
203
228
180
180
179
166
234
303
222
169
136
234
204
187
143
212
185
216
226
125
196
165
236
220
211
161
194
196
222
111
198
255
228
215
183
216
213
222
236
104
175
208
142
232
183
204
230
198
146
201
143
212
237
202
175
227
214
189
231
201
169
202
256
155
201
104
190
157
238
172
213
221
133
177
223
231
208
221
205
171
202
222
234
166
247
175
192
259
214
211
201
223
207
189
137
203
212
160
168
223
262
241
253
185
241
220
223
197
205
203
268
227
174
167
207
175
220
182
200
262
162
190
213
210
169
166
148
209
207
196
244
183
145
248
223
158
156
267
205
166
258
149
190
173
219
216
220
183
223
177
217
239
156
243
197
222
211
221
206
171
137
172
249
235
191
181
206
212
204
162
193
192
183
242
189
240
281
213
227
216
230
218
182
209
162
232
229
209
163
200
215
222
198
201
187
154
220
224
213
212
199
232
152
206
245
236
236
153
180
240
156
172
167
218
200
212
193
286
219
193
224
120
151
225
191
223
199
254
177
275
182
220
154
255
206
283
167
182
284
170
182
171
188
206
177
214
253
141
180
218
175
207
226
236
206
222
241
105
193
235
262
196
256
243
212
212
202
227
182
280
264
190
211
210
216
200
191
154
166
251
219
208
217
194
239
150
230
145
185
162
193
155
196
234
219
207
186
174
188
231
275
247
240
179
269
249
159
171
162
170
173
190
248
216
215
165
235
208
209
161
214
201
210
226
226
223
159
184
274
204
200
143
199
218
218
211
195
247
164
227
167
215
160
176
221
162
205
170
163
194
190
164
142
264
219
220
245
201
207
179
178
190
226
187
197
217
223
211
221
211
220
244
203
148
189
212
223
199
185
158
150
171
245
158
212
219
201
192
224
205
246
180
179
231
172
217
177
159
201
158
118
228
209
186
187
240
225
213
178
179
240
153
213
194
221
233
189
226
164
284
134
215
198
187
263
222
249
184
197
223
181
187
139
157
182
195
254
238
167
211
178
177
225
200
267
238
188
179
127
138
176
214
269
231
180
220
175
255
188
204
185
180
171
264
198
185
182
158
177
220
217
219
213
206
118
291
233
187
220
153
218
205
193
137
170
192
171
193
206
207
200
207
150
195
183
194
257
175
173
211
139
126
269
241
162
208
204
217
196
159
191
149
245
194
220
211
183
235
219
264
116
222
230
200
202
197
158
138
175
161
214
258
181
220
190
223
179
223
214
245
175
209
170
193
211
215
205
212
216
257
173
191
266
173
191
224
184
246
211
230
116
183
176
221
134
231
209
210
229
166
208
155
286
195
168
234
175
218
215
261
129
200
238
183
219
185
195
184
201
197
179
183
141
191
224
228
145
176
227
222
172
196
186
229
235
221
207
265
173
182
205
186
194
198
186
177
259
231
172
154
208
180
234
180
166
148
228
177
205
156
204
258
97
242
208
166
142
171
199
177
159
163
212
178
221
169
198
165
163
208
204
163
181
144
220
205
188
276
248
178
214
234
261
165
167
228
227
229
224
176
186
195
184
215
175
187
174
188
234
216
210
215
152
132
176
145
259
259
176
192
237
210
192
258
217
176
208
195
240
152
144
259
210
203
246
204
169
249
166
242
193
235
198
216
160
212
211
236
222
184
186
179
250
257
236
230
112
217
232
207
187
169
186
173
239
196
264
198
214
203
222
201
177
207
141
190
204
204
205
190
159
266
206
243
187
181
154
199
245
252
201
215
204
234
227
249
269
193
196
253
240
175
187
167
237
226
183
197
183
194
216
196
196
215
206
269
210
222
230
216
171
246
195
211
270
176
220
215
153
220
203
186
214
214
197
234
237
193
225
167
182
164
158
206
237
186
199
191
174
180
170
171
161
253
177
234
222
256
155
170
180
196
168
198
154
243
211
226
179
221
210
189
171
222
234
226
151
208
246
186
165
187
166
215
205
199
161
252
196
174
196
231
214
189
248
253
169
215
173
216
191
154
214
218
245
160
209
203
152
203
168
166
223
178
223
197
247
186
202
235
177
179
228
224
214
175
179
189
198
234
174
168
143
233
197
194
218
176
233
199
236
237
224
218
239
201
113
243
190
234
194
174
217
193
183
267
276
221
247
146
189
162
191
238
238
117
199
160
160
218
182
217
223
164
206
250
264
205
150
121
234
199
248
164
266
194
149
215
183
190
152
171
194
205
247
201
140
162
219
236
201
178
217
193
268
190
195
200
116
197
186
227
244
219
250
205
178
212
225
210
166
204
196
183
271
166
174
230
232
177
175
195
190
239
218
222
203
203
167
202
178
185
157
233
136
175
215
261
206
227
260
203
186
148
192
219
200
164
193
175
187
221
184
178
110
146
216
209
217
181
284
177
194
158
161
234
242
130
211
303
235
192
143
235
185
218
220
184
218
208
257
223
113
194
225
183
197
236
238
197
194
145
209
211
198
160
225
267
197
195
137
193
173
231
228
247
185
166
190
244
123
199
122
156
215
207
158
161
236
123
203
194
174
218
184
136
222
208
205
205
206
201
218
239
256
194
240
171
214
217
252
193
213
201
177
200
203
218
204
205
249
190
156
226
233
162
175
247
189
221
201
242
201
192
176
217
154
218
241
200
215
239
248
129
150
208
201
244
237
151
242
163
177
220
186
172
229
176
176
164
185
151
163
249
168
249
171
202
175
208
228
174
217
215
183
164
234
177
220
235
177
176
184
168
181
219
242
196
193
190
218
227
184
211
209
191
171
207
185
184
238
208
255
251
214
214
169
204
258
218
208
254
204
228
237
167
216
180
188
164
164
188
169
220
228
158
258
204
227
206
205
129
193
162
243
201
261
216
201
200
233
198
169
251
203
241
183
202
151
198
121
250
131
215
243
215
198
231
183
164
171
239
193
155
209
197
197
180
237
168
229
249
244
219
212
164
147
205
229
121
187
232
190
183
216
198
219
213
205
191
162
237
208
175
227
175
181
181
235
197
253
129
201
218
203
198
239
184
199
217
174
218
150
202
142
189
204
246
220
189
258
226
179
181
166
175
166
209
213
162
229
284
199
137
176
198
200
196
185
264
199
145
160
206
212
198
210
205
185
200
230
141
197
191
217
210
198
142
168
183
268
237
245
232
182
172
250
278
147
180
186
152
143
185
246
129
226
159
199
210
182
184
150
169
159
258
158
211
179
140
197
190
248
218
256
265
214
197
177
265
166
189
219
167
221
235
154
231
220
183
224
199
234
226
205
201
184
246
139
172
189
180
244
247
191
201
238
216
164
252
190
202
152
212
215
186
196
213
181
226
208
201
265
217
173
179
203
251
207
213
254
200
168
189
211
187
185
218
245
212
206
224
230
215
152
221
245
250
190
207
151
171
173
156
209
207
140
180
177
155
231
203
196
194
221
189
197
210
184
208
133
202
204
232
202
169
245
211
206
240
203
236
213
178
142
206
208
245
175
189
175
209
160
183
189
229
216
205
192
244
203
207
186
175
155
239
245
120
164
231
183
239
245
169
193
248
241
224
197
190
215
219
156
157
163
246
182
222
121
216
198
172
182
211
235
215
194
192
207
130
136
198
199
222
214
198
190
125
192
197
192
223
195
191
164
186
174
138
142
249
190
241
224
177
198
248
196
146
191
220
153
233
129
180
209
229
172
226
210
184
171
206
197
221
219
194
162
161
216
262
212
213
211
216
178
179
176
206
192
255
173
152
206
211
148
111
185
218
156
190
187
212
189
172
247
224
173
278
213
242
260
164
174
177
190
209
258
204
191
233
205
178
150
191
185
185
188
193
230
166
228
184
215
193
231
232
237
189
156
223
138
187
206
251
130
281
129
223
177
227
221
256
220
162
155
159
157
188
219
206
169
159
205
190
243
186
215
177
197
244
264
182
203
187
238
184
193
214
161
199
226
196
236
204
262
220
229
263
122
216
156
192
209
238
211
178
150
199
180
200
119
166
212
229
180
243
228
205
224
258
166
169
193
196
214
249
193
262
185
259
240
186
172
173
237
180
184
197
204
164
184
211
206
216
233
150
168
195
205
178
195
156
248
197
206
162
220
134
203
190
223
201
200
171
229
190
122
213
159
259
168
194
138
152
203
204
241
209
183
171
245
208
194
153
167
272
233
172
144
241
206
210
200
166
195
185
211
214
242
246
153
179
226
240
182
246
206
210
237
220
206
227
205
186
220
227
214
207
177
178
230
194
229
233
217
194
238
194
194
188
239
209
176
183
177
205
213
208
230
215
217
238
207
206
202
207
185
188
179
128
215
200
180
186
212
178
224
224
238
236
235
202
197
185
213
197
232
211
171
184
230
153
103
211
233
228
211
199
226
207
243
132
175
183
167
272
190
196
178
227
177
223
209
232
179
179
272
205
199
196
233
221
273
150
210
154
213
162
251
180
174
270
172
215
139
202
205
257
240
219
183
189
144
156
184
175
196
199
180
213
198
206
259
213
236
170
172
216
150
164
149
220
216
188
212
146
234
174
166
222
190
246
198
221
141
164
237
174
203
128
196
222
165
258
132
250
135
259
176
221
252
182
79
163
196
245
167
182
184
202
170
244
212
155
227
159
195
197
185
204
177
196
237
135
243
251
226
219
229
265
234
193
241
223
271
200
250
162
204
183
234
195
197
162
206
152
183
206
275
165
229
248
235
244
221
150
247
237
239
184
192
196
227
218
225
123
180
229
215
224
183
187
263
189
170
192
227
250
177
212
207
231
171
228
215
154
210
199
136
174
193
202
155
156
173
193
233
178
226
252
159
207
216
148
218
179
284
216
198
154
273
226
177
216
172
234
176
214
181
227
205
190
211
193
191
156
165
151
160
187
191
265
190
135
170
234
202
225
190
165
242
217
143
145
199
193
241
137
162
231
207
201
187
196
205
105
186
248
209
203
126
205
206
144
180
200
212
212
182
251
159
188
220
211
194
190
211
168
244
166
184
172
229
137
162
246
136
219
176
172
224
213
188
194
229
222
202
215
143
117
247
221
154
207
181
182
218
196
148
175
158
161
124
193
219
171
234
169
263
217
198
213
155
218
224
174
228
158
196
182
236
185
234
143
215
252
183
192
184
218
215
191
185
171
181
191
241
161
188
227
224
194
216
210
212
235
188
160
204
211
182
207
213
258
140
233
195
177
129
187
263
210
240
234
136
241
213
218
152
206
224
182
235
168
186
211
210
191
227
191
130
231
223
201
230
159
185
208
236
162
202
164
207
236
217
191
167
171
144
212
197
192
214
214
181
198
240
219
201
183
189
253
223
220
196
156
146
203
265
222
203
265
217
158
139
181
254
140
249
234
199
190
196
213
154
177
169
213
215
225
130
229
223
192
169
247
214
199
269
187
206
204
206
233
184
232
203
248
144
213
224
249
168
157
204
195
201
192
225
225
206
215
212
214
196
217
207
236
198
243
213
215
217
101
226
188
183
189
163
187
238
253
250
204
184
277
240
206
194
172
185
177
241
198
215
137
227
237
128
121
195
215
206
213
196
166
174
157
151
181
226
193
241
229
209
133
256
154
192
208
205
172
215
223
233
178
182
132
255
211
168
201
193
189
170
244
144
247
230
238
228
189
230
192
221
189
182
185
202
177
181
165
241
204
175
225
191
243
225
190
197
220
220
202
182
240
229
187
216
157
199
135
203
208
232
183
235
238
223
172
165
278
257
197
213
198
223
221
217
209
181
206
254
230
158
186
198
150
190
179
220
243
162
162
213
160
223
197
176
202
168
216
184
184
205
178
253
183
197
247
160
232
205
204
189
242
227
191
251
188
218
199
173
175
166
229
247
260
196
174
259
170
211
249
155
230
213
202
240
196
155
153
197
229
193
190
201
227
219
192
194
236
228
151
198
126
206
145
200
215
194
166
172
178
151
222
261
212
235
179
225
213
184
295
161
264
237
197
198
212
222
245
212
173
254
169
179
229
231
192
219
220
192
177
208
242
209
219
163
170
165
258
131
247
160
168
214
221
167
204
270
227
212
229
222
192
194
228
221
198
199
176
235
192
187
214
221
214
204
179
223
265
234
218
218
228
198
250
210
129
150
203
214
254
149
210
141
209
162
205
201
128
121
204
247
195
221
246
189
207
142
239
254
207
201
207
164
213
162
214
112
189
224
175
233
156
184
174
197
241
203
242
211
205
194
220
229
222
246
134
175
223
239
155
121
200
200
232
215
139
196
177
151
208
235
173
235
257
124
148
200
240
229
163
146
191
214
260
157
146
239
199
224
192
179
280
211
197
211
187
199
165
179
196
218
198
235
205
207
158
209
186
221
218
232
166
157
178
201
185
156
249
218
157
157
185
202
216
257
217
124
230
183
220
164
181
169
211
209
159
249
251
184
254
262
154
210
189
141
219
186
198
206
256
200
262
162
174
174
130
269
193
240
212
261
226
200
271
229
180
143
169
266
213
249
228
180
158
221
220
199
171
256
154
148
222
208
236
189
221
185
198
160
246
235
236
229
194
125
201
175
203
210
215
260
193
249
241
233
161
225
179
163
212
232
224
230
217
140
176
197
224
230
153
165
251
200
229
138
216
251
199
237
219
269
267
212
221
209
206
212
228
137
223
242
191
168
193
249
184
224
204
231
193
218
213
222
205
141
94
239
140
197
230
158
226
215
211
247
217
168
178
215
214
180
255
161
160
209
214
267
234
223
122
212
192
167
207
198
213
208
224
184
234
231
232
210
165
132
211
238
218
222
147
211
190
218
220
145
268
141
151
191
164
207
208
210
237
242
236
171
210
194
242
159
192
201
201
213
180
214
224
181
144
236
207
208
162
209
207
151
242
167
217
239
165
112
230
177
215
188
157
198
200
155
183
158
245
252
194
152
181
235
187
240
223
216
257
151
177
180
188
227
172
192
226
160
199
185
189
223
248
210
203
158
210
142
133
217
179
237
202
257
176
174
203
227
176
222
227
221
254
197
215
152
166
211
208
196
195
199
204
282
231
130
209
198
259
234
132
132
197
180
126
250
195
216
242
214
182
211
205
248
241
274
213
204
179
234
292
255
210
121
117
179
231
214
195
229
237
180
233
253
185
207
102
242
202
174
221
229
261
192
192
197
130
122
146
201
171
209
219
226
195
148
121
209
215
214
143
207
214
308
191
241
186
235
238
180
221
159
183
199
175
157
153
259
249
163
174
217
184
180
223
204
206
180
196
184
195
139
231
216
195
224
127
166
207
184
224
216
244
215
209
277
208
191
187
258
225
185
219
202
228
218
258
214
166
282
217
251
191
192
269
158
167
250
147
161
159
163
186
267
234
149
244
177
225
190
214
225
169
195
154
196
231
236
214
178
173
226
221
189
263
180
188
138
170
148
190
174
197
169
201
177
242
207
223
224
180
199
212
208
156
186
189
164
152
160
136
254
245
182
200
228
204
132
206
228
226
227
200
161
214
205
192
228
175
252
196
196
142
249
237
182
194
239
174
143
163
132
167
247
170
264
195
291
121
235
185
198
200
209
196
202
137
214
200
227
238
197
245
210
236
197
189
181
200
158
203
277
208
145
153
154
222
180
190
180
208
239
206
178
234
199
210
271
271
213
193
239
227
210
166
200
214
214
218
252
233
178
250
212
200
180
179
188
225
226
210
183
184
164
165
184
174
203
183
188
227
184
267
184
169
275
204
221
232
212
199
247
173
219
161
213
207
195
241
199
203
219
174
197
165
208
232
167
219
222
199
224
204
191
257
216
141
207
241
179
134
220
186
182
159
210
186
257
196
212
213
217
193
265
185
178
218
194
147
206
158
269
134
251
177
163
213
164
235
196
155
208
212
204
268
211
128
231
178
178
145
198
215
219
172
234
164
199
240
216
226
161
220
190
245
195
171
228
194
271
165
278
212
146
245
281
257
187
177
253
173
160
179
174
166
213
218
167
209
206
211
184
199
180
265
253
277
189
186
253
262
204
192
229
192
235
274
191
228
177
236
144
232
253
187
280
196
137
179
159
173
177
183
198
140
217
197
217
248
233
200
144
268
165
253
145
206
196
163
251
153
240
196
245
204
171
134
170
256
210
168
170
182
202
185
256
157
230
222
197
196
145
142
223
142
200
208
245
215
168
178
168
275
170
226
212
164
247
174
277
154
237
191
219
153
179
211
150
237
210
183
179
122
207
183
206
192
156
215
139
193
215
180
177
182
184
205
200
207
198
192
224
163
186
210
185
260
223
176
249
203
200
263
199
200
181
145
161
219
215
151
258
152
171
159
219
226
210
200
159
158
255
222
184
228
220
242
165
192
209
220
209
185
181
252
202
230
160
214
231
150
217
193
196
219
200
153
183
221
234
169
188
174
210
278
213
224
187
205
212
223
190
150
148
204
167
220
249
196
203
214
274
214
188
216
249
196
108
176
207
205
214
156
182
183
133
211
173
168
217
138
203
250
228
186
186
164
211
218
197
196
214
191
221
191
202
115
259
213
190
220
190
155
200
204
210
214
141
175
171
227
232
270
174
231
236
195
164
201
225
164
213
189
194
229
108
181
207
145
236
254
222
217
244
224
100
223
267
192
174
229
199
145
197
133
179
178
241
209
148
193
115
199
166
209
232
213
207
204
209
160
250
184
236
190
150
229
193
208
178
221
194
166
178
165
168
244
204
146
221
161
247
250
202
244
226
179
177
216
178
213
198
212
208
156
190
191
167
152
194
214
228
225
146
196
231
185
176
211
224
218
155
165
159
210
176
237
107
181
205
232
187
230
231
227
180
232
215
164
228
227
187
188
143
199
172
161
237
144
201
211
200
174
187
163
225
240
188
201
201
221
223
171
205
206
161
153
159
222
231
201
228
211
181
196
168
215
134
231
235
206
254
243
241
240
186
190
206
209
217
236
187
173
257
180
239
205
228
192
220
192
208
193
159
222
122
212
243
198
142
132
232
185
236
220
204
220
195
224
191
218
241
175
243
246
222
252
194
222
228
194
181
180
206
208
225
206
165
239
174
212
216
256
223
260
217
225
136
164
186
132
210
177
247
185
159
157
197
263
219
185
171
206
203
253
217
132
225
217
222
184
208
142
258
223
151
178
239
210
210
215
199
255
194
204
211
197
189
206
193
180
199
162
203
262
199
214
237
172
248
229
149
229
248
200
192
183
178
174
212
208
198
262
221
177
183
194
230
277
226
213
244
175
226
193
144
165
236
242
189
204
239
249
169
192
197
199
198
200
227
272
174
198
170
236
158
218
195
230
175
198
184
198
206
146
216
188
195
168
186
199
214
174
196
240
205
223
157
216
128
273
191
169
169
217
211
167
122
234
229
248
230
227
217
202
230
245
157
219
153
219
208
159
196
177
207
147
225
194
193
169
157
163
211
193
195
221
153
203
193
181
141
223
189
210
162
177
194
185
234
215
226
281
213
247
182
269
215
218
206
198
193
197
233
192
155
217
245
152
195
255
234
240
206
214
224
172
199
268
203
197
210
175
220
206
197
195
248
205
223
179
146
233
176
162
186
147
244
213
214
199
244
206
121
244
185
193
231
200
203
199
213
202
143
230
235
172
176
238
244
169
202
221
237
208
227
207
249
185
202
161
223
193
252
221
208
163
213
195
221
190
263
210
206
165
237
238
138
208
192
223
166
176
131
184
137
204
270
210
194
167
240
203
187
137
181
200
223
147
271
166
204
139
194
196
216
196
224
166
183
191
168
176
125
211
174
186
199
187
251
267
168
263
195
197
212
183
165
168
179
174
166
143
209
191
195
189
222
263
197
173
191
248
193
237
236
219
247
190
250
162
214
208
240
221
199
203
217
184
132
181
192
244
129
231
195
154
145
170
232
164
206
175
184
181
188
198
212
246
191
185
201
216
180
184
205
200
117
214
225
211
215
185
219
220
236
200
150
237
188
159
217
220
221
188
158
202
216
246
160
203
218
221
228
210
193
267
110
199
152
188
189
187
190
159
211
228
210
187
251
192
182
215
172
177
221
222
172
176
238
233
229
182
256
222
169
265
216
229
167
171
252
231
198
305
104
265
268
204
240
213
284
226
211
120
196
125
145
258
233
224
159
214
225
225
132
166
248
151
215
193
235
237
205
230
187
196
158
204
216
241
178
198
213
201
144
184
200
153
183
254
188
235
175
191
219
216
207
185
212
196
174
189
226
208
240
179
136
161
176
171
232
209
219
213
233
190
147
245
191
164
167
254
192
209
173
201
231
152
244
168
209
222
195
173
203
208
154
176
191
176
274
183
206
242
156
189
244
172
212
218
173
268
135
152
209
172
234
191
162
179
166
183
192
211
184
200
179
215
206
139
186
155
208
269
246
184
161
203
197
179
137
182
185
179
228
123
220
210
250
187
99
223
211
166
221
254
165
169
233
222
156
231
149
251
247
241
195
142
197
188
204
192
143
181
268
156
220
230
226
164
200
260
139
165
240
237
149
184
198
174
165
182
203
208
245
173
221
224
172
222
220
188
164
177
190
222
224
186
187
258
222
170
246
212
148
258
199
174
213
166
209
155
197
177
118
207
186
164
261
162
227
212
176
150
205
195
178
156
158
238
202
142
192
230
216
181
156
213
214
142
183
191
219
165
154
242
250
127
240
151
169
221
209
293
200
236
255
224
191
171
183
237
191
227
176
200
222
156
228
221
175
209
166
183
205
218
201
265
223
241
158
222
248
169
211
169
249
202
141
214
196
180
218
165
259
191
119
113
244
201
132
172
240
211
197
252
212
218
233
188
179
169
144
218
237
226
194
178
244
183
160
140
180
211
136
257
200
194
162
232
201
222
191
159
237
235
163
180
211
180
290
158
225
229
157
193
180
230
187
192
173
232
119
176
246
216
207
274
226
221
222
264
173
131
210
225
156
150
193
175
237
235
267
182
168
254
205
209
226
182
237
183
200
195
190
169
164
181
222
155
250
229
162
234
194
209
240
249
182
201
149
183
222
250
269
167
214
211
159
134
251
222
142
189
208
222
274
189
172
199
203
218
162
230
188
194
239
225
202
249
108
174
177
187
134
192
191
208
225
126
178
169
198
179
205
238
186
187
109
145
193
184
163
191
252
260
193
150
187
198
211
217
161
192
170
224
244
181
171
172
230
219
230
130
159
160
199
153
218
189
220
179
228
194
140
215
198
161
247
192
247
236
219
162
196
177
227
239
149
150
197
188
198
229
199
194
205
192
148
236
143
201
221
143
209
228
193
205
168
227
247
174
125
186
192
210
195
195
216
191
242
172
180
209
240
183
205
188
195
252
219
209
162
225
232
227
199
269
179
212
242
165
227
206
229
182
181
239
171
231
183
208
143
180
223
177
222
202
232
141
241
227
202
205
211
217
189
217
180
167
209
206
189
245
187
248
175
209
129
171
103
244
171
201
270
209
287
215
196
260
233
186
136
256
138
224
178
166
251
189
183
200
186
201
219
204
230
220
250
158
149
216
245
195
214
215
229
182
194
193
137
147
174
184
198
195
203
189
215
192
216
199
210
136
254
204
213
229
183
280
202
186
235
225
159
204
208
178
150
166
186
169
183
201
173
173
118
221
212
235
200
147
206
207
194
205
170
137
235
127
193
187
275
218
244
227
215
196
242
180
215
192
242
178
252
171
182
139
148
163
163
200
193
175
186
219
200
156
190
147
230
202
236
221
176
164
226
214
139
217
187
213
163
190
203
213
151
186
199
221
183
220
273
216
178
224
200
246
205
233
215
177
207
162
217
180
152
227
189
234
254
184
205
209
199
199
176
210
198
164
198
224
213
189
230
245
229
224
194
272
210
226
149
220
165
179
192
284
224
196
191
216
194
165
233
230
224
204
168
172
206
167
198
212
179
241
204
211
265
201
250
212
270
244
180
180
198
251
174
147
238
232
161
246
282
210
155
206
199
214
232
150
221
182
202
194
248
202
158
212
181
197
223
194
109
187
147
232
214
181
187
183
171
201
210
166
220
236
193
148
216
198
215
130
211
245
119
180
197
184
265
186
165
214
221
182
246
206
200
124
222
213
194
185
221
180
302
186
171
154
171
233
226
141
214
209
210
198
212
180
227
230
166
180
188
149
220
222
148
205
173
227
200
163
206
257
201
189
183
190
120
220
170
210
171
162
199
194
197
222
213
148
212
252
167
238
157
186
198
149
224
181
203
223
187
240
168
181
268
225
169
200
147
159
149
214
208
250
232
222
187
164
182
149
211
192
231
251
242
175
167
215
188
225
167
215
257
208
254
237
207
195
145
176
225
136
209
151
261
190
218
212
110
261
241
180
223
149
163
207
157
157
246
253
246
222
239
209
221
155
207
238
194
246
233
237
148
163
242
200
209
156
185
153
248
185
198
201
181
171
238
222
187
216
216
161
237
224
198
226
137
204
251
208
208
163
187
183
254
205
199
201
215
172
190
259
210
206
188
249
252
209
185
186
172
221
221
132
196
164
164
153
249
197
221
138
239
210
215
208
259
219
175
250
223
202
159
230
226
270
217
223
244
201
168
197
221
230
181
203
229
186
198
240
201
205
247
164
213
202
148
180
213
134
261
169
232
217
152
249
187
194
201
194
188
247
188
193
151
210
196
214
199
179
191
208
226
186
165
257
188
207
259
249
152
232
174
218
167
161
219
226
262
228
201
191
128
145
136
190
222
243
190
197
227
227
229
153
187
248
199
167
222
171
265
175
164
173
229
173
197
185
185
213
132
199
236
204
255
141
192
196
159
131
230
240
194
172
208
185
184
260
167
201
237
182
150
160
226
205
208
194
226
219
156
190
207
141
199
193
216
217
195
127
181
199
193
217
193
220
221
224
196
195
155
216
220
204
178
224
164
147
204
225
232
260
217
229
206
167
234
224
216
247
198
178
222
191
278
180
123
250
154
228
204
172
227
229
235
213
247
209
163
223
211
202
233
227
163
155
187
197
233
129
212
180
206
140
238
251
158
206
160
156
205
188
279
222
221
180
200
184
246
183
213
170
138
188
169
133
178
176
207
201
224
198
230
256
161
224
193
251
206
202
254
226
164
182
230
215
215
213
194
153
156
198
166
235
213
248
188
200
231
179
194
219
202
125
215
227
185
180
200
173
201
176
163
186
156
225
211
167
164
203
240
183
182
181
211
181
163
184
211
184
223
213
236
193
217
217
224
198
198
182
221
237
196
196
174
219
210
239
147
225
234
195
201
152
212
168
224
168
181
215
194
201
157
214
219
239
173
206
178
233
143
209
192
218
210
168
148
192
170
209
198
222
230
213
178
166
203
225
124
223
260
212
222
258
201
139
234
227
217
164
167
154
207
164
182
133
218
183
222
178
185
202
173
215
242
211
173
194
215
158
241
156
215
192
189
225
178
265
226
200
115
248
234
147
161
158
192
165
172
192
181
168
232
222
210
308
216
212
185
224
174
199
209
217
180
212
172
202
245
180
141
155
205
282
182
160
210
252
194
209
191
192
211
168
246
213
258
225
200
182
214
178
242
193
189
167
164
184
158
227
179
202
181
195
245
245
273
203
196
218
214
180
224
218
150
156
160
235
170
186
159
218
214
185
223
194
165
163
172
198
180
221
182
140
200
189
210
231
200
199
236
195
173
193
189
207
82
237
209
217
214
194
181
230
195
209
226
176
131
143
208
152
215
186
220
203
203
233
161
200
217
199
199
204
246
214
245
166
245
170
174
179
241
259
154
183
182
157
188
200
160
191
163
187
219
228
193
228
195
187
129
205
237
218
213
191
208
191
220
222
182
186
217
131
181
241
215
176
214
200
195
233
162
170
161
178
230
177
235
177
157
173
234
223
225
248
172
211
217
195
109
251
227
276
150
206
155
229
235
204
163
193
250
209
188
196
159
205
213
193
192
250
115
243
226
215
152
194
169
225
165
245
222
186
151
191
180
214
128
223
238
221
253
214
196
190
211
166
209
201
230
181
185
186
198
199
179
208
251
191
254
221
205
190
234
163
183
166
228
245
186
185
214
146
201
165
199
182
230
227
250
235
252
176
178
171
217
202
198
149
234
141
214
229
256
173
206
204
149
209
225
276
176
213
195
258
227
187
191
108
245
183
193
184
175
212
220
193
203
146
195
184
162
217
167
237
253
178
228
187
155
158
238
251
220
167
225
185
167
195
157
173
203
153
240
253
217
253
218
181
236
88
183
172
132
184
153
181
169
246
201
142
184
220
180
262
188
174
234
257
270
236
115
123
151
172
170
178
151
146
174
201
206
193
227
171
165
206
209
133
221
262
213
218
145
170
200
191
200
236
241
174
202
195
217
151
177
195
246
174
240
210
259
172
124
198
197
177
245
239
201
201
156
168
211
155
176
155
204
278
231
112
212
199
188
211
150
156
201
226
208
157
269
222
137
123
222
209
201
201
184
200
183
234
195
173
177
177
209
230
133
257
222
193
236
209
185
198
168
180
267
229
199
227
164
198
188
146
160
286
172
179
232
215
191
185
192
213
245
192
223
153
176
209
223
176
225
133
212
204
190
195
214
246
135
168
191
220
219
157
220
215
199
212
156
222
213
226
213
179
214
201
186
160
238
192
213
220
162
186
159
190
171
172
177
253
172
250
168
232
156
193
210
228
226
243
227
260
142
183
216
141
211
180
160
149
240
213
255
252
212
240
244
228
222
245
221
204
204
198
216
193
181
195
245
164
246
157
227
140
110
201
186
152
219
189
220
220
248
216
167
183
147
229
212
222
141
172
81
185
171
193
161
213
233
222
231
172
216
192
237
164
179
224
209
236
185
177
222
188
284
248
183
260
265
103
213
141
149
197
171
170
220
253
190
235
173
288
199
208
269
264
252
228
171
201
184
197
260
257
231
214
242
191
217
181
119
178
255
206
188
173
165
210
193
241
218
164
215
184
205
223
191
177
180
110
188
245
175
181
152
216
163
242
148
180
156
246
213
146
194
167
229
177
182
176
198
192
181
198
160
205
219
116
148
206
240
243
261
241
227
173
204
159
167
219
152
253
229
253
132
218
186
200
183
253
243
161
266
216
169
164
173
189
226
185
200
163
194
191
156
222
255
142
246
270
192
190
180
150
237
214
204
182
206
217
197
178
182
175
227
163
230
220
250
209
236
219
210
244
204
250
237
186
258
269
208
242
182
200
197
219
227
149
258
221
176
212
237
191
157
217
114
184
217
205
191
225
204
210
197
227
159
208
238
230
212
141
156
165
101
187
136
157
184
222
190
160
126
151
207
196
176
196
252
147
266
177
213
253
242
195
175
177
260
194
142
188
231
211
215
204
209
206
163
235
186
188
144
218
216
187
178
202
186
237
226
179
173
187
213
240
246
190
200
173
180
252
145
167
193
224
203
115
247
254
216
252
177
233
186
174
264
241
224
172
222
186
150
151
203
205
150
191
212
168
211
225
203
244
159
175
159
232
247
142
189
182
100
188
231
208
202
208
160
198
185
283
159
226
241
138
162
227
189
189
223
189
250
160
188
181
245
190
234
168
215
144
227
246
211
196
200
175
166
167
138
228
140
178
225
195
216
195
268
207
210
236
278
161
170
186
236
175
197
204
229
258
254
157
220
202
204
198
245
202
219
245
267
162
200
171
177
195
142
188
212
154
188
217
154
226
242
211
208
217
198
194
146
215
205
175
143
264
198
188
158
226
245
252
182
212
188
122
165
218
266
224
209
210
224
206
237
215
171
173
228
228
165
197
175
197
178
180
245
189
185
200
179
208
187
248
169
201
235
213
176
227
221
202
160
148
229
187
225
206
206
174
229
155
243
226
237
173
211
204
231
180
242
197
144
189
252
206
153
200
197
198
279
181
211
215
219
228
173
197
222
159
140
167
204
159
186
231
164
185
209
151
187
200
237
276
185
144
112
201
204
185
186
166
231
201
220
208
224
171
268
143
258
242
215
235
192
203
174
136
200
243
239
182
235
216
207
215
169
172
162
186
255
208
213
202
173
236
178
211
183
150
147
261
237
229
176
140
268
221
190
239
206
198
153
227
232
230
235
202
167
236
151
173
226
208
222
232
167
222
196
182
163
168
211
218
166
254
158
149
156
206
242
159
183
234
199
174
189
220
162
146
233
186
247
258
176
204
234
229
227
127
228
196
172
149
182
214
197
257
223
220
173
243
181
178
231
254
160
269
180
179
125
221
187
198
234
231
126
225
238
161
244
179
228
194
246
229
218
208
163
196
185
181
181
227
175
225
196
236
221
215
191
171
174
229
164
182
188
205
236
208
179
244
267
178
199
224
222
190
214
231
171
233
259
186
211
258
181
204
170
205
182
208
216
215
208
197
203
202
211
204
199
188
194
120
198
190
193
172
226
198
164
210
168
196
183
219
200
214
169
207
194
249
172
224
251
123
142
236
231
184
273
198
123
253
194
213
181
169
122
200
233
249
186
197
223
217
262
207
202
205
184
190
166
185
193
240
131
216
213
226
220
183
195
229
194
198
206
205
182
177
174
223
186
195
190
207
205
200
191
160
93
198
199
187
139
142
220
228
245
219
157
215
203
210
219
244
197
237
145
220
165
142
159
191
183
242
241
138
211
243
197
221
181
196
133
138
111
266
234
194
196
157
93
186
154
189
157
211
212
166
248
156
228
252
211
224
202
229
179
237
168
167
259
239
218
169
202
199
232
239
177
233
231
196
166
196
199
211
166
194
140
275
195
148
204
195
233
154
232
178
185
187
249
200
177
153
165
206
191
181
227
243
172
138
171
159
222
168
164
135
237
137
250
231
172
268
178
122
211
228
228
145
198
162
256
229
197
225
229
186
201
222
189
173
194
195
201
191
175
221
205
255
237
218
199
203
225
151
184
203
205
212
213
256
166
209
234
171
239
248
214
223
223
182
226
225
220
204
223
136
203
171
258
170
217
240
256
211
167
215
163
238
214
178
215
217
220
238
223
185
164
225
176
207
213
165
232
140
107
195
202
225
172
241
219
202
167
267
226
193
238
271
242
131
166
185
210
209
196
157
224
191
153
198
196
228
183
136
181
206
194
179
207
237
153
140
186
183
188
130
176
156
190
237
179
213
242
181
218
230
206
188
239
186
229
257
172
197
235
193
209
166
267
150
180
187
243
178
155
234
226
192
188
278
148
228
161
202
199
177
208
180
255
196
196
231
175
249
179
213
201
252
235
169
237
161
175
208
251
241
224
227
248
129
278
249
174
196
216
234
233
161
138
172
246
200
117
217
215
231
191
219
257
265
175
224
238
178
232
232
250
220
255
149
239
191
177
136
212
208
189
183
193
193
188
210
198
209
207
257
162
243
132
233
176
210
207
192
171
204
187
178
185
239
200
238
203
180
171
233
195
140
223
157
246
168
175
194
199
182
184
209
233
235
217
190
173
199
198
271
211
211
198
252
194
196
218
184
162
193
251
232
178
213
212
160
177
270
231
227
167
199
236
136
248
241
156
235
173
199
204
217
246
251
209
182
211
307
218
167
225
134
197
213
187
194
251
216
239
185
197
241
219
153
225
202
212
234
206
179
195
219
210
200
235
179
248
231
192
172
243
163
221
190
172
198
174
188
112
163
243
203
180
217
163
229
157
186
228
234
164
254
220
229
219
191
259
271
211
205
168
175
168
202
183
220
224
164
197
208
226
170
151
212
199
152
224
137
231
199
127
202
275
212
192
178
201
182
226
265
167
213
283
194
122
178
192
186
223
215
252
186
189
191
222
222
216
208
196
232
205
218
217
236
185
126
228
213
180
199
174
192
245
201
157
236
201
205
214
234
229
252
232
180
187
203
231
212
236
203
168
159
194
198
226
212
246
206
226
191
181
229
257
235
194
154
232
203
227
154
231
220
184
182
215
96
189
161
179
257
189
215
227
223
187
220
192
151
145
144
141
150
181
188
212
178
182
198
186
273
152
239
238
213
181
235
196
231
157
183
217
198
160
201
221
158
205
167
194
210
231
134
221
185
160
212
183
200
222
150
173
159
247
201
172
263
179
179
168
241
188
182
175
210
232
256
240
157
217
174
120
180
166
189
188
224
257
176
194
211
222
193
166
204
157
221
258
194
182
205
222
195
188
194
188
160
247
235
232
218
233
239
209
143
205
205
232
230
189
239
207
209
190
188
216
198
196
189
207
185
168
200
189
200
159
281
169
210
233
151
204
233
216
206
162
146
175
227
263
148
249
150
219
212
224
173
198
210
215
246
195
246
132
187
226
171
195
218
201
175
194
182
170
141
242
231
226
180
222
174
157
196
164
259
201
169
228
190
283
237
239
262
204
232
175
239
206
208
174
254
244
158
207
153
157
161
163
164
221
242
251
259
257
204
198
279
223
206
188
216
188
169
158
251
175
196
277
222
182
201
162
72
195
235
169
211
250
214
209
221
173
213
221
154
167
216
206
246
247
182
233
216
173
153
207
158
177
187
207
267
193
170
177
198
233
174
216
260
236
241
252
129
269
204
206
208
202
163
159
223
186
221
184
193
176
189
183
217
199
198
189
246
216
228
249
212
197
192
221
214
244
114
206
172
226
162
208
174
241
246
180
192
190
157
155
196
243
219
147
169
210
221
245
249
192
216
214
133
233
170
254
189
256
202
160
226
210
231
197
197
231
196
199
229
154
201
191
151
200
215
189
194
185
245
213
233
247
214
150
176
190
210
257
207
215
236
196
230
252
152
171
244
192
196
197
218
226
196
216
239
158
196
222
173
189
214
133
231
235
233
199
204
210
173
180
210
175
147
270
256
166
203
238
163
265
239
169
265
220
221
191
171
221
201
279
149
257
207
152
208
176
204
164
220
235
157
205
148
207
177
230
207
246
184
235
189
156
186
157
188
162
207
245
185
219
219
186
203
180
170
191
218
217
203
234
171
186
210
216
208
154
155
223
202
206
160
196
185
160
208
211
223
234
246
157
231
191
219
161
185
240
161
219
168
193
208
260
154
172
217
262
145
202
207
233
246
203
212
257
160
239
157
196
212
224
195
218
180
198
181
209
162
227
227
177
219
243
194
178
217
182
247
158
254
207
247
204
188
234
210
220
193
243
212
209
177
277
129
182
223
206
224
238
223
218
227
195
176
195
217
211
239
170
196
212
249
225
189
218
207
183
163
201
248
217
185
268
223
207
186
168
207
178
188
183
182
217
223
185
183
241
190
175
215
203
196
214
121
140
166
210
215
231
212
142
166
219
175
227
202
213
180
241
224
178
196
229
205
246
201
221
222
198
149
234
202
206
210
174
215
158
198
194
176
237
149
175
191
244
218
225
219
225
217
215
154
212
230
215
171
189
198
165
193
218
142
183
180
241
224
244
207
273
253
239
258
206
221
213
218
220
202
147
185
222
201
221
182
245
125
237
206
206
217
185
214
217
250
200
248
201
179
152
168
236
203
205
211
248
229
274
211
244
197
211
234
229
267
178
267
186
236
195
179
212
257
187
176
176
232
219
195
195
240
187
209
199
184
240
132
211
209
200
210
194
203
167
174
154
151
258
196
195
263
242
224
205
147
203
218
213
277
269
194
181
217
245
235
226
202
171
169
188
240
167
189
162
131
197
221
194
182
252
187
229
193
206
202
230
255
168
211
226
195
161
134
195
203
256
175
129
210
244
189
243
191
186
184
197
131
195
158
179
244
204
174
187
238
172
262
214
193
213
245
174
222
237
213
218
233
163
207
151
203
246
179
202
218
194
258
199
153
185
229
240
175
180
199
132
211
232
194
203
191
198
173
276
233
193
259
206
151
151
251
201
182
210
236
259
172
98
205
186
232
181
231
183
208
216
180
219
230
173
236
208
205
194
217
211
201
180
209
231
277
133
208
271
194
164
170
159
234
182
148
196
227
227
196
244
180
208
181
174
236
204
225
194
189
127
238
219
166
219
221
213
220
218
176
227
224
186
213
213
174
167
226
263
132
170
216
196
204
209
209
173
208
229
194
186
170
260
237
221
228
178
165
136
216
218
178
296
175
180
178
225
218
249
229
194
200
190
242
246
187
227
209
252
174
176
224
202
194
173
202
222
232
199
158
255
161
208
244
232
181
222
243
207
208
125
180
221
215
208
223
221
181
198
198
234
185
229
208
180
204
211
192
193
214
253
162
215
164
198
152
262
200
229
183
197
221
181
201
196
209
168
198
192
239
163
208
175
142
175
205
213
191
219
221
182
177
137
239
203
206
133
153
144
191
210
182
247
176
238
155
201
162
179
244
250
249
200
175
189
178
141
227
176
172
211
193
242
195
195
199
143
243
191
215
227
200
161
246
173
233
237
179
253
104
245
217
153
190
228
239
220
237
267
236
180
225
213
129
237
238
249
234
141
198
184
206
233
233
199
145
218
264
204
193
217
152
234
216
199
231
209
212
217
230
122
256
190
250
211
170
201
187
204
194
206
188
241
207
205
178
213
207
159
202
205
248
216
181
220
189
195
170
165
173
265
204
253
199
244
253
246
198
180
173
246
185
148
143
165
267
216
159
225
130
194
160
189
215
227
189
173
184
175
181
216
146
204
214
220
235
175
200
221
241
164
194
217
180
228
184
233
239
229
217
225
201
180
191
213
240
221
143
227
181
222
200
208
174
221
192
145
216
210
158
242
187
258
243
207
146
211
137
227
187
259
301
170
183
187
149
272
154
178
201
226
137
182
152
210
187
192
181
233
220
230
185
179
178
243
248
183
203
224
190
180
149
179
181
208
156
215
240
197
181
218
217
161
210
139
223
252
227
224
175
197
200
222
203
162
237
204
232
191
149
181
207
160
204
169
174
214
191
205
240
204
179
241
242
198
191
206
198
219
228
266
222
194
201
209
169
187
210
193
204
206
259
203
241
242
260
211
247
174
149
209
174
184
180
193
203
230
225
215
211
275
192
200
242
146
204
187
224
200
171
141
223
191
110
190
238
188
229
196
248
152
201
269
186
220
223
182
215
186
227
111
194
208
160
217
223
230
165
185
255
201
173
187
261
173
199
210
248
242
171
155
201
173
152
211
190
190
260
200
241
199
225
212
208
78
208
134
223
245
217
266
218
198
197
193
220
186
236
194
201
218
222
233
242
189
131
229
211
135
164
178
219
205
200
226
185
224
187
190
190
179
167
148
167
217
250
200
203
231
238
180
186
213
251
205
295
212
204
193
266
204
190
157
238
199
236
238
135
214
195
214
248
164
206
253
202
135
187
283
212
210
249
229
157
224
175
254
182
213
194
228
186
207
205
207
221
229
218
250
211
153
221
198
148
172
222
220
207
248
178
105
204
240
217
200
144
201
224
159
188
219
116
204
182
185
153
203
180
193
162
216
188
214
200
263
201
200
128
166
228
192
162
212
251
253
214
228
175
189
167
200
220
184
209
209
167
234
160
228
212
142
190
276
200
163
206
158
185
178
197
222
264
223
218
213
139
200
161
153
164
251
247
259
208
285
215
135
190
182
190
197
160
239
187
229
141
162
188
216
204
144
225
175
208
168
233
244
226
176
168
160
165
190
234
245
198
210
204
204
242
138
188
128
188
222
218
164
168
127
185
242
216
258
198
215
250
196
243
226
144
212
224
212
243
156
172
234
198
171
186
164
221
248
177
176
206
182
196
192
221
220
144
224
186
146
227
196
189
201
239
208
208
174
218
204
187
173
204
235
172
237
130
212
193
200
149
188
230
190
185
232
200
240
204
224
227
202
157
227
206
222
266
241
161
207
242
145
174
214
205
199
215
251
208
227
214
250
195
205
225
193
212
204
210
191
142
187
183
187
213
190
229
174
187
223
208
269
183
286
246
223
165
128
226
187
160
276
190
231
211
214
195
213
244
234
221
266
245
161
173
205
209
177
159
181
199
177
192
199
215
199
215
246
188
157
220
103
178
184
254
253
237
204
207
152
249
252
240
156
139
191
196
227
218
174
210
158
189
172
232
225
241
233
169
236
233
232
219
263
156
220
157
88
232
211
263
231
204
190
253
229
151
248
245
141
196
191
177
184
222
233
267
200
187
186
212
249
173
204
194
192
217
186
230
184
143
138
211
251
237
215
199
208
197
244
190
199
190
190
235
155
227
156
150
242
240
244
224
200
209
249
169
216
164
216
259
202
208
234
162
172
195
278
167
105
205
201
147
223
164
171
187
176
232
192
215
212
171
176
255
140
180
168
199
172
218
151
135
243
231
155
232
228
204
237
148
243
201
242
172
156
218
219
238
221
192
203
208
211
194
198
197
195
195
205
164
218
203
211
248
200
205
168
166
132
187
136
208
203
159
199
198
163
187
153
209
250
232
236
147
185
151
186
204
241
177
268
263
142
202
236
163
205
210
214
192
183
201
195
195
160
193
172
187
174
209
234
181
221
192
173
250
196
235
251
183
209
203
249
190
261
215
188
215
163
192
209
164
223
234
221
188
241
228
160
168
152
182
121
216
178
167
207
205
216
131
189
153
218
170
126
209
194
158
230
132
181
259
184
212
305
241
206
158
183
172
154
227
126
193
191
181
182
208
276
218
205
201
209
177
194
241
217
236
158
240
185
193
180
220
182
234
241
155
213
244
224
209
192
249
129
184
137
238
184
200
213
179
197
170
224
256
216
175
264
212
269
220
189
188
108
215
245
145
201
187
183
158
135
103
178
272
154
218
219
252
149
254
195
205
152
151
145
224
136
206
189
246
242
203
220
227
157
198
260
172
186
235
229
189
248
209
183
206
190
227
219
205
137
195
184
188
178
181
224
199
133
188
183
153
152
187
242
141
192
160
176
194
248
173
191
187
211
276
251
211
189
258
250
232
247
220
211
244
215
177
162
179
171
225
182
211
183
257
234
205
209
190
228
186
194
211
185
184
179
201
218
174
222
201
216
205
191
231
165
255
241
154
179
238
174
194
195
158
197
221
208
209
180
170
174
213
128
235
233
188
157
179
210
158
146
168
219
156
231
162
135
225
224
140
178
242
203
275
204
236
183
139
192
159
190
199
236
171
182
244
261
220
251
224
208
203
186
187
197
208
191
203
221
228
211
169
171
228
211
207
218
154
180
188
209
233
220
223
216
226
230
227
210
191
157
223
183
161
175
210
168
176
159
187
207
212
246
204
162
167
184
230
203
222
181
195
184
214
185
209
247
182
226
179
236
136
221
198
239
170
191
216
189
228
175
209
218
218
220
224
243
164
187
240
258
151
243
262
199
217
179
225
123
160
159
167
237
237
219
217
174
148
225
215
202
184
172
192
123
205
216
160
229
220
215
180
226
253
220
227
238
202
193
180
195
228
204
227
192
219
187
172
202
173
209
179
175
198
217
250
220
159
264
184
197
235
185
198
195
214
234
223
167
175
185
248
197
200
204
177
195
162
153
191
237
167
186
211
208
226
243
176
222
233
207
218
221
178
154
156
181
170
178
244
218
207
256
249
207
291
197
209
214
241
174
217
200
170
209
198
156
158
203
206
228
169
224
223
185
213
194
228
258
100
203
220
226
150
150
231
239
171
243
209
215
162
221
240
188
168
171
177
200
236
225
227
144
193
195
156
177
184
184
250
209
167
211
212
176
183
217
236
206
221
236
147
222
223
223
268
118
262
211
202
199
241
190
189
148
194
192
187
175
215
200
159
173
160
203
125
190
190
154
211
193
168
110
117
141
259
174
245
192
182
161
195
167
154
195
160
224
167
225
161
150
261
174
181
141
241
236
226
186
200
238
218
245
178
175
161
218
199
117
251
207
174
210
187
139
208
176
146
199
156
136
203
196
175
208
231
237
222
252
125
237
214
244
192
226
194
238
240
213
201
227
220
149
232
179
206
161
228
198
238
125
219
157
222
169
239
260
190
197
247
222
143
138
172
246
224
188
242
222
150
201
165
215
193
207
235
146
223
136
187
193
227
161
207
213
180
178
208
153
240
238
205
214
206
176
229
223
235
220
152
217
247
143
246
217
195
179
244
170
178
151
197
265
235
209
190
238
189
186
192
228
220
190
234
156
167
224
198
201
229
167
221
212
200
187
233
170
182
210
209
153
191
218
234
218
182
217
150
220
220
204
210
233
150
154
279
214
253
227
234
216
217
167
141
180
194
192
184
176
200
159
186
131
193
199
205
197
204
203
153
184
239
193
128
226
198
221
154
197
216
241
120
180
231
180
190
201
224
223
239
167
267
222
230
220
175
200
209
250
191
174
196
213
185
249
260
221
212
202
149
172
191
182
205
194
208
167
234
152
220
163
242
212
210
219
213
184
148
242
216
213
237
241
124
196
213
199
202
193
229
284
242
207
162
227
229
173
238
205
171
190
222
190
151
194
197
259
164
215
241
193
225
270
160
214
221
226
205
253
223
252
232
127
167
182
167
159
184
166
147
247
209
214
122
189
163
182
175
147
171
211
158
157
180
156
250
157
215
226
229
230
241
156
135
197
205
154
178
230
178
145
237
215
214
169
149
197
127
137
231
221
141
227
241
160
182
183
227
170
236
182
221
202
200
265
188
210
166
203
242
249
257
184
221
261
213
241
191
221
124
245
177
126
165
222
245
263
188
176
166
154
148
172
200
214
187
180
212
153
250
160
135
211
211
178
181
168
208
248
157
152
143
218
137
211
170
239
219
226
203
263
184
197
192
197
244
210
159
207
251
250
187
171
233
144
253
162
195
163
189
228
227
151
222
158
189
236
252
147
269
256
181
229
185
219
200
178
218
193
227
201
202
167
200
222
193
222
235
235
233
241
219
143
185
223
218
151
198
233
197
184
216
100
232
205
223
173
234
169
175
176
267
226
182
226
228
180
195
238
230
199
232
165
162
198
159
199
172
209
157
153
218
245
221
141
172
155
202
219
196
203
217
231
161
198
240
196
197
113
247
174
202
241
174
138
184
208
243
212
118
187
214
220
233
186
229
166
130
153
194
156
189
195
271
254
226
194
161
180
182
174
211
218
216
209
247
178
191
153
190
169
208
233
230
174
201
158
180
215
216
190
231
177
176
203
242
230
196
166
184
169
270
235
167
239
150
196
230
128
209
115
212
231
234
258
208
176
168
160
202
197
159
185
207
199
194
192
187
244
232
204
208
210
242
157
242
190
200
213
198
196
188
206
159
266
220
186
195
197
204
235
208
174
224
154
170
201
165
187
258
197
103
214
170
249
228
236
212
121
246
192
156
199
178
130
152
151
180
199
197
239
153
151
221
202
154
190
209
219
171
210
271
215
184
178
183
164
164
162
260
204
163
174
223
272
180
181
203
227
225
212
284
153
208
211
234
204
197
247
115
155
204
225
209
196
214
186
187
196
177
101
243
199
189
170
203
234
187
168
193
210
170
154
203
215
178
164
156
275
199
206
198
232
265
238
191
209
258
220
211
249
201
244
252
129
243
147
168
228
178
176
209
157
183
221
192
242
220
243
204
175
205
180
187
208
208
205
223
182
199
224
209
186
183
257
192
175
218
188
179
217
166
213
196
205
248
133
195
205
180
181
187
233
211
202
163
192
197
191
201
195
286
191
162
136
210
216
218
225
231
210
128
203
183
160
236
183
198
252
200
214
143
221
245
269
172
237
228
210
202
198
247
134
261
216
194
258
208
211
146
223
169
194
188
212
164
193
190
182
215
159
221
195
206
205
208
205
176
206
210
149
249
210
239
227
212
151
183
224
246
250
167
172
226
176
221
161
232
155
155
147
197
228
207
198
233
195
219
210
180
217
192
224
205
173
265
222
206
199
130
218
229
169
181
187
207
145
212
251
198
270
249
175
225
223
172
197
183
231
192
214
194
252
239
120
251
150
261
211
158
257
169
206
210
147
194
212
230
266
236
201
222
156
138
242
212
203
219
238
178
186
249
243
179
211
128
188
225
151
156
169
170
212
197
151
185
171
166
173
190
201
200
258
186
129
217
175
258
185
277
202
231
193
218
205
203
233
245
228
190
220
180
215
175
129
195
186
234
167
231
210
136
157
218
189
217
243
226
219
181
172
176
232
174
224
247
201
225
175
138
226
234
233
220
175
229
237
247
220
170
211
246
210
182
218
145
185
188
179
257
242
205
193
256
231
229
205
261
180
147
217
149
218
177
218
170
181
160
154
220
218
236
226
176
213
196
142
162
202
273
195
260
195
179
189
205
251
202
201
206
260
221
169
183
209
264
213
168
175
202
202
212
212
142
174
189
182
162
212
290
228
202
206
133
198
253
226
145
207
167
220
235
215
183
206
199
251
144
247
171
225
243
175
209
181
252
125
215
218
183
189
230
225
177
234
236
223
187
227
244
213
234
248
195
174
209
135
199
163
176
206
184
229
210
198
165
289
205
227
204
183
206
196
218
164
186
250
152
205
234
201
139
198
163
201
203
243
235
210
165
196
192
219
237
198
237
181
237
239
172
161
203
191
225
206
165
245
172
258
188
184
176
199
204
168
115
256
213
223
204
213
196
221
218
194
218
170
177
168
213
178
169
192
204
206
180
216
223
172
253
181
162
254
212
195
255
197
212
198
145
154
209
160
282
226
195
197
210
217
190
248
222
272
248
185
230
173
140
222
219
226
155
177
271
188
231
250
130
183
159
190
221
160
176
214
161
161
204
189
233
167
241
174
216
157
215
172
220
229
218
160
133
169
207
220
272
196
217
213
185
249
196
170
216
202
118
206
228
245
179
182
152
182
247
254
236
135
207
237
185
171
214
238
266
161
168
174
201
134
247
168
161
211
241
164
246
237
185
180
179
197
208
163
210
225
161
221
146
156
217
137
197
268
152
217
152
183
226
206
206
191
227
183
208
150
230
186
203
239
180
172
192
244
218
203
239
191
182
179
204
154
188
223
222
192
137
163
240
162
213
200
140
177
137
176
174
215
163
216
202
226
176
229
224
231
179
240
179
208
232
160
127
199
194
218
195
134
241
207
246
177
199
170
252
178
151
215
203
197
199
209
215
243
221
160
201
196
201
241
218
225
202
245
164
202
253
200
249
165
169
203
249
228
180
159
265
124
187
209
159
269
168
168
235
188
190
179
184
240
154
206
216
187
226
208
169
138
266
234
215
262
237
178
200
185
185
209
155
150
253
241
201
206
198
200
199
237
165
206
182
147
205
168
238
179
227
163
244
195
223
205
222
174
220
233
189
232
251
206
175
199
171
226
146
222
184
195
174
204
168
213
200
210
198
232
175
183
267
166
213
254
184
223
193
150
212
188
132
213
178
188
262
214
245
144
267
254
189
199
198
189
179
244
210
180
167
161
226
138
209
188
221
167
223
243
233
196
183
192
187
202
289
195
228
240
218
181
172
210
182
205
272
188
215
192
207
218
128
211
206
240
219
224
230
200
233
186
209
156
150
217
249
184
217
198
209
163
197
248
230
161
138
188
209
220
187
216
200
236
220
210
270
201
240
221
146
149
238
218
158
151
183
251
198
185
248
186
158
259
175
249
251
221
211
210
196
193
178
150
282
223
236
185
233
167
225
243
239
196
227
206
235
215
194
224
213
227
214
138
145
168
217
202
184
146
219
206
220
224
225
195
228
198
187
220
221
149
188
240
187
182
200
159
227
210
192
217
211
221
205
213
209
198
161
224
191
146
136
158
174
214
227
273
256
184
168
195
230
174
192
185
164
224
199
234
149
130
159
233
151
228
205
153
157
251
195
186
185
235
149
194
232
230
255
210
208
199
143
192
129
226
256
196
175
257
197
172
171
194
187
138
208
198
107
273
203
240
208
196
248
219
207
213
235
237
154
241
201
150
180
196
187
152
260
170
190
170
202
210
189
174
122
195
203
228
231
192
167
261
227
206
260
187
168
170
203
156
237
258
198
141
186
226
237
135
210
188
197
198
228
242
183
128
215
265
196
130
215
209
212
185
206
123
186
238
207
142
117
259
272
229
197
149
224
173
202
292
202
205
135
166
222
211
201
204
260
140
218
224
210
138
195
186
202
187
193
289
200
139
129
207
206
82
193
214
171
216
154
212
218
161
198
200
209
268
199
155
245
197
249
225
214
151
165
202
212
153
176
217
201
173
220
168
233
231
233
169
241
189
158
181
157
199
170
120
170
172
177
221
163
133
191
201
201
204
258
169
224
212
173
159
196
151
172
175
208
172
155
155
226
123
197
208
172
210
183
211
218
190
156
296
154
228
277
197
203
229
225
214
190
184
224
199
211
200
215
199
191
204
215
218
209
179
262
255
279
190
211
185
179
176
211
145
194
212
249
200
233
157
164
165
184
201
172
168
226
184
156
183
125
194
209
237
178
253
193
205
216
170
152
202
273
153
213
259
215
244
244
152
192
187
215
197
184
170
233
213
162
218
218
202
117
219
251
244
181
229
203
152
198
175
191
203
149
233
231
205
210
121
147
196
232
229
199
137
112
160
170
139
154
204
194
251
209
264
190
170
269
176
223
221
242
241
207
201
253
151
226
151
196
169
148
195
140
155
205
254
185
149
209
253
167
172
199
201
250
176
228
231
171
213
216
207
230
170
248
215
252
204
279
257
172
239
173
200
219
148
247
196
203
219
231
230
211
190
214
211
174
177
162
217
206
188
131
140
117
158
142
218
229
218
196
175
220
245
147
225
188
199
200
209
191
176
185
233
274
137
175
217
237
203
158
166
227
254
147
194
184
167
207
240
195
207
264
229
206
196
266
178
205
157
223
248
141
279
233
133
233
254
154
185
195
232
188
217
195
231
195
202
206
222
153
179
201
182
230
219
192
181
170
136
209
198
167
236
203
90
224
233
202
143
181
207
183
224
193
176
183
156
201
202
244
215
189
132
264
217
195
193
234
198
171
246
240
228
176
158
211
211
183
270
241
184
148
218
281
242
182
201
184
211
225
181
241
244
172
191
183
146
142
164
227
172
221
183
194
184
144
200
172
184
161
138
196
202
197
202
182
229
245
151
214
176
246
200
211
153
220
193
215
127
184
253
215
123
181
207
185
203
223
243
195
240
200
223
228
253
231
220
211
207
236
165
144
195
191
273
115
193
131
198
200
176
183
206
247
236
250
179
227
239
235
236
199
236
188
256
241
239
247
193
200
194
192
270
207
191
135
228
215
202
218
259
258
168
246
210
173
190
182
169
174
134
183
193
171
203
217
218
154
183
182
250
215
142
187
218
270
171
214
201
213
159
212
182
221
185
216
192
146
202
254
266
187
190
187
207
195
209
169
181
240
202
209
174
212
268
243
198
237
178
186
257
218
191
166
201
151
212
161
192
136
154
181
210
266
250
230
190
226
187
172
178
197
172
176
273
212
222
192
179
201
167
172
149
197
88
223
233
154
237
228
174
180
221
227
246
220
209
212
248
180
219
276
166
223
211
161
209
197
222
194
183
227
180
213
192
226
164
243
137
223
187
186
185
152
158
204
208
207
261
190
270
253
184
189
234
210
189
206
229
152
202
210
177
196
181
175
172
195
295
153
191
209
240
242
207
189
168
202
180
179
190
218
236
179
204
230
173
221
195
205
210
175
193
167
225
180
253
214
234
172
189
213
171
143
165
179
199
193
222
217
210
141
210
198
241
207
192
184
165
179
265
198
210
230
242
189
252
156
290
186
172
219
212
205
177
208
196
123
192
214
238
165
179
246
228
188
176
215
238
172
220
167
223
199
218
173
175
173
161
226
251
227
227
139
193
254
237
223
188
210
158
184
171
192
221
224
184
212
209
235
175
200
245
200
215
120
253
174
175
203
192
247
191
201
223
147
211
180
166
245
180
188
210
180
202
215
160
131
227
238
233
241
206
187
201
197
292
161
250
205
212
232
180
174
218
270
186
206
214
213
180
162
215
188
134
204
195
224
182
172
194
204
233
196
223
193
185
206
175
160
208
229
159
213
189
166
221
179
173
187
170
219
105
214
251
167
149
190
203
166
234
223
215
221
196
217
172
260
185
180
240
197
232
230
205
237
228
240
145
217
132
207
216
200
101
248
236
213
212
177
227
182
142
184
170
247
196
227
200
235
165
227
183
179
256
170
173
136
154
243
198
219
197
216
140
199
143
138
178
207
198
162
217
165
179
204
222
179
164
243
203
241
172
211
259
198
204
208
214
247
193
198
180
168
225
252
228
190
183
235
199
236
220
200
167
182
170
175
149
191
170
220
232
204
187
230
230
217
271
176
147
177
181
229
254
187
196
195
179
203
217
172
241
148
235
183
200
211
250
196
217
196
210
186
192
217
260
168
205
226
182
237
182
249
290
160
255
214
169
207
149
247
216
190
121
223
210
152
222
167
236
206
176
175
236
244
202
226
240
175
199
213
228
166
190
189
249
194
244
161
154
154
222
185
224
196
219
200
165
245
235
203
200
230
195
193
171
223
138
150
162
238
178
229
154
221
195
202
221
184
134
197
219
117
188
219
181
152
194
217
159
186
199
256
228
193
259
192
196
162
241
124
150
187
181
209
238
193
193
251
182
196
219
237
217
131
215
197
197
237
224
177
210
186
182
206
227
180
211
149
190
229
180
184
188
155
156
241
226
210
229
242
220
146
225
195
203
200
235
270
230
219
173
220
233
142
200
235
214
147
271
136
202
212
213
214
279
202
153
237
251
201
218
146
172
224
196
226
128
208
226
245
193
174
195
167
258
175
201
193
198
214
101
193
106
287
196
177
171
179
194
200
221
231
154
190
188
171
191
224
209
219
226
152
163
212
229
181
200
197
135
152
163
245
196
189
143
213
219
168
202
242
174
212
213
224
214
245
199
259
173
210
183
229
196
166
189
200
202
218
179
164
226
139
149
217
241
199
270
191
203
212
174
219
197
200
280
184
193
159
156
208
165
184
217
197
206
154
109
224
198
194
272
289
255
147
184
211
224
221
170
194
244
120
194
216
245
218
115
193
179
214
224
178
172
221
230
175
137
146
209
238
125
227
259
275
182
186
203
216
192
168
223
156
239
187
237
200
242
166
206
212
248
240
159
201
224
194
191
159
208
226
247
170
104
207
250
235
165
192
225
213
245
229
184
164
198
205
165
158
206
192
206
142
252
199
234
227
217
191
276
145
225
207
163
192
215
158
131
181
198
255
234
242
243
222
234
209
188
208
186
187
221
204
239
265
151
215
256
228
232
213
176
169
170
214
176
222
204
174
184
179
217
177
229
158
264
207
208
220
168
251
164
155
202
185
205
174
183
202
180
217
212
170
228
200
164
193
201
199
193
170
198
198
199
189
179
194
242
182
125
165
220
185
144
148
242
186
222
177
184
187
192
197
195
143
178
225
235
171
159
222
212
234
130
187
187
183
158
226
225
163
205
181
177
225
168
207
192
148
187
236
105
163
208
196
240
169
267
194
184
181
184
244
191
194
196
214
185
240
187
150
226
187
242
183
222
130
196
170
199
224
157
222
193
194
143
201
185
197
238
215
216
212
177
167
228
155
161
221
239
203
167
164
191
204
191
146
189
204
171
225
172
194
223
214
204
217
182
225
182
262
167
193
144
212
233
224
262
256
223
186
256
260
190
203
214
128
204
147
230
215
175
251
171
171
193
167
200
179
212
158
236
198
204
161
174
258
289
128
156
249
204
181
210
225
198
196
227
207
225
208
182
197
199
179
186
197
213
214
178
114
162
168
171
223
162
190
211
142
133
243
220
224
150
201
227
167
205
171
139
238
188
138
186
230
199
146
204
191
198
209
227
203
204
196
132
210
209
226
235
213
228
154
197
199
181
197
175
199
180
183
256
230
208
169
181
147
200
151
226
203
164
210
198
182
223
174
214
207
222
212
185
202
172
214
171
215
228
174
195
213
142
199
137
245
199
208
205
222
187
202
148
222
182
188
238
145
257
107
169
193
207
188
202
215
229
201
199
221
252
221
235
156
144
186
216
192
193
234
152
182
249
209
171
207
263
250
263
249
237
200
217
214
181
207
198
231
175
138
235
160
196
200
192
256
162
176
250
214
214
196
201
172
262
177
172
216
123
195
204
197
227
207
217
174
216
185
237
195
238
189
181
214
247
188
181
165
179
180
218
248
219
243
197
263
253
147
227
243
238
266
205
201
203
227
145
176
242
212
156
248
150
216
209
200
244
195
207
207
241
205
177
224
214
235
188
207
217
126
187
233
240
198
240
226
182
191
204
213
177
161
195
273
178
182
156
260
180
150
184
219
92
165
253
148
217
192
168
204
126
220
213
201
243
247
272
249
160
229
207
187
191
120
217
181
245
229
288
181
191
194
164
197
223
184
166
146
184
187
195
167
226
252
171
214
127
244
129
313
137
209
219
201
217
172
224
267
199
207
231
266
239
174
173
177
199
236
251
242
209
229
181
263
214
235
205
227
210
170
250
214
245
172
205
159
204
209
213
170
199
220
235
207
217
237
194
194
222
164
199
223
213
162
208
191
162
280
216
209
215
215
198
225
253
188
207
158
197
165
139
147
221
196
109
211
203
169
209
174
203
189
222
203
189
249
163
181
244
215
164
257
192
183
284
105
222
180
178
210
169
166
219
208
168
208
196
232
206
181
165
191
228
209
185
220
238
201
266
192
161
188
145
131
184
249
170
203
150
174
227
150
216
219
211
230
154
171
230
246
201
161
203
207
205
170
151
181
159
157
172
234
247
179
239
267
193
198
193
232
225
208
202
198
151
259
232
206
153
235
243
204
217
193
251
177
215
184
214
190
175
228
272
225
178
191
187
212
186
254
176
191
206
232
159
206
208
146
165
210
204
227
218
207
186
212
222
180
219
163
219
164
214
251
208
261
194
228
234
150
188
265
237
180
163
204
166
228
229
197
195
184
142
193
201
186
205
178
205
175
241
227
197
181
174
227
243
145
230
197
206
227
240
240
205
175
181
228
221
160
169
210
247
180
195
187
191
210
225
239
202
234
187
223
223
116
226
153
257
199
184
189
196
205
197
177
223
270
200
231
183
212
200
208
199
226
145
193
136
165
186
285
194
215
213
161
180
199
155
227
195
187
184
137
206
234
221
170
184
208
143
151
185
274
244
182
188
143
242
206
171
181
249
231
176
145
230
196
197
194
215
122
226
187
202
157
249
189
170
209
219
246
225
214
190
197
244
199
230
211
169
122
188
179
218
194
126
243
205
189
172
151
179
208
192
216
176
211
189
195
210
165
231
248
209
208
187
206
229
161
185
187
203
194
198
136
171
241
203
183
180
205
245
236
236
202
213
264
108
117
178
188
268
240
196
290
162
157
240
218
119
271
190
236
204
226
198
190
223
189
165
214
207
245
192
182
200
220
162
213
198
213
190
193
255
222
204
212
208
213
183
150
220
182
266
150
185
163
206
137
217
142
208
127
111
258
244
258
251
167
204
174
178
228
244
181
213
210
192
178
192
206
194
166
240
212
226
174
218
165
224
171
171
194
182
211
218
211
197
225
225
169
171
236
143
179
222
176
235
216
149
210
221
221
184
161
118
196
166
185
221
170
198
201
211
177
222
145
178
250
156
219
190
176
220
209
157
196
230
239
229
152
159
181
221
202
206
190
186
229
211
187
214
184
206
228
224
185
251
190
243
185
192
264
199
185
161
230
270
161
174
176
236
221
199
166
175
193
169
186
209
178
228
148
219
178
181
199
242
157
172
274
156
229
233
224
246
197
182
188
233
196
218
180
184
160
245
237
218
148
202
198
221
152
192
209
205
230
168
163
205
195
209
208
225
238
159
167
223
217
208
256
209
221
203
249
179
235
186
283
168
147
250
228
174
162
192
288
225
197
114
265
216
253
217
163
247
176
245
201
201
169
237
182
226
230
200
111
203
182
211
203
180
188
266
190
219
161
202
164
162
241
129
212
201
196
145
261
187
227
179
136
209
141
129
244
213
180
133
232
215
218
238
152
172
266
229
195
186
254
185
195
194
133
219
216
207
230
266
160
186
166
206
167
201
209
190
201
208
236
212
126
196
186
174
167
226
237
156
199
262
204
187
263
259
217
197
150
138
228
209
163
115
219
162
204
165
221
246
253
198
152
170
214
241
234
219
142
225
131
209
214
222
224
228
166
194
231
191
193
176
253
182
204
170
236
207
182
188
248
146
208
213
172
233
204
227
220
212
188
228
231
242
164
116
219
259
159
214
194
234
218
168
287
226
246
186
255
158
215
244
236
217
174
154
168
249
143
198
140
166
234
167
251
175
235
200
195
195
218
202
226
262
137
169
232
195
195
286
154
251
202
223
195
224
189
180
242
266
155
235
220
224
178
194
298
149
200
244
239
219
244
226
254
256
248
207
221
211
170
215
166
198
257
181
200
211
226
245
167
165
266
200
165
237
241
178
236
189
203
242
177
219
219
150
204
171
220
162
191
234
205
169
183
206
153
122
192
145
206
203
162
202
218
200
187
147
201
168
182
204
209
215
178
226
138
230
196
245
211
201
212
220
263
189
227
213
244
153
170
213
236
153
149
189
180
218
160
163
214
131
197
245
222
208
203
192
187
235
227
183
237
239
195
230
203
209
234
204
156
211
170
205
156
173
185
265
204
173
172
225
261
208
215
238
175
196
171
170
221
220
174
129
206
123
178
183
201
174
164
193
219
203
159
207
176
243
128
211
187
216
188
208
165
177
140
179
190
208
219
224
219
185
164
187
241
207
230
191
229
227
159
160
253
181
168
137
163
247
224
207
136
193
230
231
232
209
256
227
197
202
207
245
142
228
151
230
291
224
247
218
184
203
228
214
124
266
192
205
204
263
195
148
205
215
251
216
208
249
189
251
218
245
222
214
192
174
220
234
239
204
243
214
222
187
137
251
158
222
193
221
206
136
191
221
206
166
199
221
211
255
217
188
181
249
204
197
228
256
220
186
212
224
178
174
235
184
156
188
202
222
180
168
178
209
158
212
132
239
220
228
176
174
196
199
223
236
172
156
201
212
143
210
185
137
241
186
220
183
154
179
206
234
187
217
188
214
206
227
193
206
238
243
236
225
209
220
205
214
232
126
237
157
184
204
202
197
219
134
235
213
179
164
176
179
228
260
136
190
215
234
234
153
211
183
238
144
202
163
197
232
189
174
199
181
216
214
190
147
170
251
189
181
171
257
192
139
172
229
238
200
208
148
228
231
216
183
144
223
235
236
200
197
222
228
192
226
226
250
186
212
224
174
181
123
241
237
166
206
262
129
228
219
193
136
243
164
198
194
219
232
196
190
251
265
113
230
182
187
188
162
215
251
245
249
138
183
195
201
205
168
178
176
172
202
172
201
212
196
255
191
185
229
236
213
174
138
199
216
195
174
226
240
253
149
230
206
193
166
124
193
211
203
287
274
219
200
231
162
187
162
184
209
161
190
164
160
198
229
167
186
194
172
226
224
202
202
144
233
160
223
203
248
184
182
153
136
202
183
227
189
196
202
181
249
151
205
212
222
175
194
132
193
214
191
186
174
231
173
187
188
199
239
183
193
181
204
216
205
154
150
142
164
124
151
214
209
201
194
231
223
162
204
209
228
223
215
205
223
224
230
193
203
165
213
162
158
198
216
239
143
140
242
187
197
189
214
199
184
209
181
194
157
148
263
244
206
228
265
207
201
186
200
251
213
212
209
183
178
184
194
193
192
224
181
158
193
217
168
195
208
203
188
195
188
174
186
208
167
209
244
190
149
199
200
212
190
169
173
189
220
184
161
220
211
220
240
188
158
262
207
233
162
236
197
198
199
181
205
256
255
175
221
212
192
151
235
222
213
219
257
276
261
260
169
172
207
156
237
181
215
240
199
204
209
260
241
138
172
213
215
76
170
230
185
167
255
186
185
151
164
193
139
230
206
177
254
169
210
251
200
147
228
193
210
188
222
185
198
241
181
184
248
202
138
239
189
185
210
193
236
161
198
184
215
198
98
196
194
157
219
174
234
195
195
226
229
175
144
198
175
163
169
263
222
165
172
195
222
168
191
243
225
165
254
229
201
130
248
191
215
204
146
235
232
254
243
246
260
168
231
210
185
151
246
174
220
186
212
230
198
172
186
134
152
167
203
193
207
179
139
257
203
238
254
238
214
188
134
170
150
204
185
214
232
237
249
178
209
166
192
197
199
244
216
238
193
179
191
236
197
198
243
211
176
157
173
153
215
174
196
158
206
222
197
154
219
207
192
211
228
217
229
199
203
215
178
195
217
155
183
220
217
194
196
120
200
203
237
110
204
241
237
173
215
170
213
207
143
248
252
136
161
147
246
232
229
214
238
189
177
154
172
147
229
182
184
246
212
213
224
222
145
254
209
243
205
228
234
227
152
225
236
117
248
234
139
217
217
206
175
207
240
179
202
149
172
179
231
162
254
152
228
201
161
190
186
230
162
186
158
145
217
199
179
209
217
179
194
214
220
153
240
243
262
217
165
192
183
211
179
195
176
211
226
232
174
206
195
181
159
164
235
199
190
263
248
203
162
225
273
172
205
236
191
171
215
262
220
217
113
137
166
231
230
230
179
133
254
214
255
195
133
203
160
193
252
146
229
210
209
183
191
210
184
252
206
204
180
221
244
181
206
190
216
202
247
222
235
155
270
180
238
183
171
188
188
176
171
189
191
244
161
208
219
173
206
178
174
267
258
186
116
197
221
199
218
189
174
155
214
250
196
158
184
244
215
201
213
221
221
223
233
130
185
192
230
217
219
249
203
192
215
187
173
225
193
199
163
134
207
199
189
226
152
273
196
225
240
191
178
213
191
183
189
184
165
228
208
239
190
267
211
156
166
168
202
199
177
194
264
191
184
171
169
196
217
161
267
179
209
179
184
222
228
126
200
132
139
258
222
190
255
193
223
196
118
183
231
183
177
267
210
174
148
223
170
224
203
137
163
208
185
187
212
243
234
201
214
226
231
201
253
197
179
203
201
243
201
219
146
218
207
133
221
113
198
227
188
244
257
194
242
224
214
247
223
202
202
197
217
187
181
274
259
222
191
211
219
211
205
221
242
211
164
167
175
263
213
202
188
205
226
142
131
221
193
171
220
182
212
237
191
180
207
176
252
191
202
145
145
246
197
171
215
208
265
236
145
193
212
166
229
172
128
162
167
227
167
259
221
243
225
227
227
200
231
183
117
213
207
223
261
213
152
152
188
218
167
104
167
166
234
229
199
155
198
250
256
182
156
195
195
220
183
209
214
195
194
200
221
152
203
138
224
208
150
200
249
226
233
248
209
217
202
188
220
160
195
181
164
204
173
185
161
174
228
192
208
216
174
159
232
231
163
200
194
260
231
191
145
243
173
239
231
165
221
227
237
175
217
207
206
219
218
227
207
228
230
139
226
221
154
167
140
166
209
148
246
220
219
225
182
181
193
248
178
186
216
175
234
214
157
202
216
259
213
246
200
180
158
224
181
187
233
272
218
168
153
218
279
266
167
210
205
274
229
204
180
214
165
207
218
172
205
217
152
229
265
230
190
191
216
202
192
268
225
173
185
216
237
188
201
216
266
147
175
241
135
222
183
228
165
191
249
131
239
141
246
255
208
214
209
214
131
143
206
227
171
169
177
295
147
175
211
243
198
199
210
223
222
216
169
205
227
170
210
204
199
212
178
215
204
199
164
197
172
242
145
193
249
232
203
170
176
211
248
279
264
217
234
178
206
155
177
213
143
201
235
214
210
231
198
225
243
218
193
193
247
155
185
213
214
256
177
179
158
224
193
188
198
197
236
155
241
220
222
210
215
204
170
235
173
173
185
193
167
226
188
187
164
202
214
223
192
205
218
180
229
214
184
195
237
243
174
244
194
265
212
180
197
165
212
241
212
213
152
192
218
226
224
218
215
221
163
196
234
222
176
196
231
202
241
236
188
175
188
123
225
250
180
234
219
257
210
194
159
158
192
221
230
187
216
175
151
253
213
184
212
172
195
197
219
218
200
187
190
144
179
226
193
207
196
233
241
245
206
158
169
226
215
161
222
203
183
201
275
190
243
177
237
185
199
208
240
210
197
205
204
263
228
205
138
163
197
229
199
240
223
215
195
254
249
182
163
186
200
171
161
229
211
260
137
186
188
237
189
214
229
187
132
172
234
201
269
149
250
256
193
178
141
198
215
222
241
181
180
228
204
177
183
257
156
153
203
209
202
210
166
212
196
184
224
203
271
102
221
166
175
172
192
241
205
201
160
210
208
222
192
219
234
215
298
213
207
204
189
195
155
172
196
192
240
227
257
218
208
205
241
123
243
225
240
170
176
201
223
165
136
191
225
149
218
136
273
193
242
243
146
210
291
168
219
161
187
228
170
166
223
235
238
247
140
205
209
164
219
147
160
180
202
192
208
211
218
176
186
180
228
114
248
172
181
191
215
226
212
228
184
168
151
174
203
173
236
212
233
140
220
274
206
207
184
213
174
206
227
175
180
209
179
265
138
167
208
199
173
180
146
221
197
210
178
233
207
205
191
275
171
221
192
197
120
174
143
158
167
248
203
246
203
256
177
239
194
164
212
193
149
129
193
209
267
250
197
231
196
154
246
152
215
191
231
247
137
224
227
173
217
210
194
178
180
151
204
182
243
180
162
169
185
212
248
178
171
268
105
191
235
234
233
247
176
207
200
197
216
165
200
260
246
180
207
162
186
172
255
181
179
206
141
250
214
202
205
232
212
225
184
176
121
205
197
267
222
230
223
183
182
257
201
174
150
192
200
219
184
211
209
222
221
204
230
195
219
269
211
145
205
184
205
172
160
155
206
157
216
253
188
200
210
213
225
211
262
201
188
222
245
188
138
229
178
229
209
188
206
180
185
166
220
244
178
204
199
205
218
240
210
191
223
213
190
186
183
158
117
178
178
219
200
213
202
192
185
154
180
131
150
218
154
220
139
134
235
225
219
155
195
160
192
240
262
226
238
250
237
233
177
191
141
218
246
207
120
178
171
212
235
200
217
253
253
157
178
245
229
209
176
180
127
155
252
181
214
214
128
160
212
192
165
205
201
203
188
198
220
170
217
220
180
169
209
249
167
215
202
225
221
176
174
153
209
172
198
162
181
154
215
189
132
195
181
197
185
201
207
158
190
198
233
106
236
171
229
202
266
146
134
211
147
194
209
242
180
214
206
196
205
146
194
262
174
176
262
209
173
209
222
253
229
290
197
245
189
206
234
236
211
181
215
161
166
144
196
155
228
180
187
162
223
162
236
222
273
191
245
119
211
117
216
213
207
196
259
263
194
208
160
114
176
205
221
220
159
135
200
183
216
200
171
162
201
217
188
223
213
189
148
195
193
203
189
231
175
212
132
204
197
171
227
229
242
182
217
178
210
198
163
205
271
191
161
204
229
170
191
184
184
232
182
160
196
197
227
198
186
193
143
223
171
175
199
172
148
188
192
238
234
206
202
207
160
179
173
184
235
165
178
236
168
210
162
146
167
132
200
191
227
170
195
235
156
191
238
216
230
243
194
201
189
193
221
236
186
222
215
235
238
208
206
178
196
271
225
237
188
210
180
198
185
142
213
227
205
217
261
190
178
257
163
216
180
254
235
233
190
193
154
207
199
243
257
221
106
185
207
294
238
226
201
153
209
249
179
176
184
170
181
177
270
202
202
217
233
208
228
208
231
152
194
120
149
113
156
187
165
164
220
227
93
212
165
181
267
205
216
145
151
173
178
257
171
179
218
205
252
189
172
231
239
241
180
230
197
225
213
195
209
243
227
275
149
176
188
242
177
199
173
222
251
232
177
201
236
203
164
234
150
199
227
221
234
196
182
225
226
135
146
197
216
200
144
234
218
171
208
181
189
204
195
197
182
147
188
165
269
208
202
190
218
212
159
214
199
164
192
213
213
233
230
229
188
173
164
209
268
223
221
217
221
199
197
238
140
209
238
201
218
223
205
170
175
247
178
209
164
211
164
216
219
211
199
247
189
169
150
273
178
188
149
178
262
170
192
231
163
184
176
143
195
205
217
207
226
184
165
183
223
224
211
168
193
228
243
191
205
201
165
228
211
161
225
177
182
193
219
236
209
188
199
245
221
203
216
206
174
203
199
247
213
168
137
216
191
205
199
180
235
191
231
181
214
173
230
115
154
203
199
163
118
214
190
255
228
215
268
200
229
215
238
191
205
189
179
191
245
223
226
228
195
197
209
211
206
202
223
203
222
171
210
247
214
170
230
204
184
198
147
221
137
206
215
183
215
211
255
221
211
216
211
192
258
198
241
137
172
167
159
175
189
268
236
211
190
213
150
180
212
200
207
139
182
206
191
241
193
221
209
203
208
145
209
166
217
177
191
224
151
162
188
214
198
167
293
178
153
155
152
266
187
202
169
189
220
172
212
169
146
215
168
202
216
211
180
218
248
218
206
200
209
198
181
174
203
191
202
184
189
242
208
223
170
195
226
295
219
177
234
193
223
164
253
208
212
220
200
187
225
183
143
192
263
136
143
211
205
215
222
179
149
178
142
263
154
231
213
167
230
199
152
271
209
232
245
214
192
165
189
182
180
181
197
182
222
237
222
240
148
226
222
137
162
167
161
161
196
198
186
139
157
224
204
255
235
211
209
180
227
179
217
192
170
190
201
197
221
203
264
201
160
155
150
201
178
219
256
174
278
166
261
185
230
254
182
93
234
190
157
257
185
192
247
229
228
232
206
160
127
209
185
221
187
213
202
203
200
217
234
177
220
167
203
238
229
200
220
190
192
154
169
190
177
165
190
163
183
246
205
233
183
226
216
149
170
158
204
191
271
189
182
221
178
241
183
169
187
196
211
211
165
211
249
231
181
193
177
182
227
163
213
206
203
194
200
231
225
164
205
208
139
199
139
144
235
213
234
193
203
205
213
223
182
149
189
187
254
241
179
167
175
218
158
156
218
227
210
206
283
231
231
191
178
169
221
184
200
246
165
210
255
266
280
136
217
225
197
195
218
227
200
184
156
215
194
136
217
152
246
214
230
206
178
216
167
253
175
202
220
214
163
200
179
169
152
228
237
220
142
224
162
192
173
196
186
227
195
182
252
223
220
145
214
168
189
187
223
137
194
288
222
232
174
204
192
235
231
178
237
217
187
174
144
220
201
109
184
181
182
173
205
210
130
170
198
153
244
139
163
209
189
185
207
207
271
234
210
213
251
176
233
195
188
207
206
177
210
183
192
212
219
136
241
145
155
197
130
207
104
205
157
193
230
245
207
219
192
201
270
122
174
221
237
222
211
219
184
209
154
203
236
194
217
235
146
122
212
162
233
217
191
176
198
225
212
219
180
250
190
191
266
252
193
198
200
188
177
220
233
190
189
190
208
195
178
288
181
240
132
181
201
214
236
228
221
165
224
142
242
252
168
124
183
147
210
212
279
166
228
203
197
191
192
135
222
146
243
194
189
228
247
190
229
203
233
198
204
238
195
194
191
218
178
188
167
246
187
178
218
190
226
237
252
191
199
197
217
166
207
141
159
139
162
252
220
254
267
121
265
169
185
173
158
254
166
187
232
243
197
102
202
190
219
174
220
170
221
168
215
277
211
245
166
233
254
175
231
179
243
147
219
195
195
228
213
178
202
218
282
181
218
187
166
174
261
166
250
215
195
189
250
185
206
215
158
262
181
200
200
119
231
167
185
196
213
201
173
174
156
232
235
145
167
246
219
189
164
240
230
202
216
242
178
209
211
191
200
262
213
128
215
217
204
254
202
185
205
123
206
175
182
244
192
139
217
211
131
180
94
138
267
163
239
211
227
192
185
188
222
191
131
185
214
230
205
176
233
149
203
249
193
271
201
207
194
177
189
255
121
185
191
292
180
176
260
185
191
234
229
180
244
146
230
219
212
237
205
136
188
175
260
205
219
201
176
175
257
197
192
197
226
210
168
151
139
161
193
233
171
217
222
170
199
154
197
221
196
213
167
236
252
192
181
149
216
249
203
204
194
168
183
119
205
235
207
214
173
232
150
164
163
241
210
173
243
208
165
181
197
162
194
209
207
202
170
242
228
267
178
206
164
222
134
196
157
178
193
256
149
251
193
151
140
139
190
235
144
186
174
236
224
129
261
182
181
250
225
214
171
183
200
215
179
219
186
130
207
288
184
205
216
226
204
115
222
230
165
210
207
178
187
223
172
240
199
240
226
231
226
161
197
220
216
266
178
225
186
197
253
209
211
252
162
218
162
194
209
222
205
169
213
210
191
187
221
164
169
247
207
247
134
192
226
133
219
183
188
243
205
208
215
184
156
209
183
171
216
106
237
178
205
193
171
275
177
191
178
202
240
176
161
221
297
149
209
197
248
195
198
131
216
167
225
228
183
253
190
219
225
160
197
178
200
173
229
198
206
219
220
211
237
254
255
178
222
228
225
178
274
238
181
222
173
238
237
198
170
176
213
125
196
148
141
258
149
238
159
205
185
154
267
197
231
207
122
174
204
225
140
245
225
220
251
149
193
217
148
218
231
251
243
204
199
180
279
196
185
85
245
227
208
166
132
153
117
203
269
259
195
273
185
174
157
162
239
274
199
147
250
191
172
177
254
179
216
196
229
241
217
201
206
158
171
157
202
141
227
195
181
163
191
163
126
209
249
200
169
128
202
253
212
228
209
195
160
272
158
219
202
205
161
224
223
207
209
251
241
202
272
159
216
210
140
176
133
170
185
156
229
221
218
226
178
161
189
215
271
204
195
232
269
227
156
234
227
238
203
139
202
216
248
213
198
225
246
190
147
223
207
199
156
174
232
153
254
212
223
201
193
172
197
226
274
222
223
218
200
195
161
224
205
237
193
208
196
239
195
224
152
174
207
216
219
179
257
221
214
244
198
240
232
188
171
241
277
242
253
200
179
224
203
220
203
141
149
240
171
230
180
196
180
214
179
232
256
252
134
138
171
232
210
213
221
195
153
195
253
173
184
171
203
156
139
221
203
155
211
247
180
196
189
179
219
261
179
256
183
251
231
170
209
255
263
195
246
232
228
202
209
251
172
192
236
207
252
171
205
147
236
224
222
202
221
214
159
187
161
192
239
128
197
195
263
203
221
148
255
182
216
160
183
219
196
212
171
179
247
160
247
211
197
197
209
184
160
223
179
225
229
185
279
230
116
311
178
223
164
179
186
232
201
145
233
169
170
234
211
236
211
238
224
172
222
170
228
210
232
159
198
168
212
187
176
160
279
234
155
217
236
220
214
234
240
197
265
181
155
151
178
188
200
244
242
224
196
184
162
186
204
200
220
198
184
245
130
163
219
240
205
235
233
188
184
151
232
258
178
234
225
198
237
211
164
181
220
224
205
184
210
227
200
163
168
243
232
141
197
259
147
189
205
172
219
192
252
205
199
200
244
240
193
198
196
195
245
207
217
174
220
165
152
231
147
176
213
183
203
215
210
178
184
207
196
209
205
245
251
233
152
206
199
249
237
204
200
137
160
238
255
200
207
208
171
183
203
215
251
192
210
257
121
198
202
204
215
184
239
174
181
179
189
219
192
176
162
208
228
178
230
232
216
171
221
116
168
89
182
262
161
172
163
274
229
171
201
170
161
233
223
190
161
204
201
223
252
176
163
232
231
225
149
186
190
229
233
245
199
220
185
195
222
197
228
210
136
184
210
210
178
187
214
250
250
166
192
173
194
188
179
174
241
216
162
200
228
187
191
250
181
169
199
250
138
259
195
207
178
237
250
213
214
233
187
183
198
139
207
157
184
126
184
189
212
147
174
195
224
214
214
180
162
150
233
188
183
203
194
146
169
254
213
217
207
200
132
167
230
200
171
215
176
233
175
214
256
145
165
196
221
214
246
144
210
187
152
228
178
220
242
182
202
169
252
189
226
233
172
189
260
260
199
254
228
194
197
247
132
180
194
179
168
214
273
263
178
250
186
207
218
185
261
150
175
204
160
240
210
190
252
245
186
224
176
235
174
115
170
239
241
187
172
176
177
177
290
185
211
217
194
202
231
152
219
234
204
241
206
234
214
217
260
183
258
235
184
158
228
168
193
190
188
248
171
144
178
156
207
158
225
101
208
184
237
146
219
158
268
244
227
196
220
304
228
183
196
151
222
226
154
192
227
248
225
252
197
235
180
148
186
155
188
195
178
182
193
187
144
164
173
215
165
203
250
234
186
155
233
169
255
239
198
237
202
189
198
235
186
154
214
154
212
163
259
218
227
162
177
224
185
175
203
183
190
173
214
214
232
220
240
174
231
194
184
202
230
196
182
220
158
153
204
182
208
251
232
207
215
189
164
137
125
257
185
226
230
165
236
207
163
260
234
180
188
174
222
209
157
123
177
260
222
168
157
198
184
255
201
231
167
219
215
238
243
258
141
224
219
213
200
274
202
259
225
188
204
234
174
217
229
222
175
164
177
186
204
211
184
149
173
225
167
207
216
154
227
201
167
234
222
182
175
140
219
232
203
200
214
160
146
211
192
161
160
228
237
176
199
201
242
243
234
133
184
205
196
200
158
154
216
130
221
163
202
165
281
196
175
192
214
222
207
203
180
245
249
158
192
213
239
238
198
190
144
128
123
238
194
232
188
152
178
188
230
185
192
229
178
176
197
189
175
248
198
175
172
181
133
171
199
155
194
192
210
185
255
165
225
179
162
149
215
267
221
242
238
214
184
242
207
169
226
183
203
238
165
157
135
177
247
154
238
193
172
199
141
225
198
243
221
216
188
184
217
210
209
219
223
220
211
208
224
216
241
163
222
229
218
131
137
191
157
193
157
193
216
217
213
157
185
210
202
264
199
227
195
179
176
195
188
186
219
218
208
156
152
231
225
212
203
206
182
164
202
235
222
263
213
130
169
209
125
198
197
193
173
132
215
225
155
205
172
221
202
142
246
217
219
222
218
223
206
232
157
200
236
186
191
217
253
229
199
170
158
182
236
272
224
204
230
159
211
151
252
171
193
190
245
174
202
184
185
194
166
262
166
250
221
173
173
222
252
248
181
223
216
169
181
224
246
241
199
152
217
208
178
183
214
245
218
179
151
209
146
207
169
222
210
202
208
271
180
207
201
194
207
185
218
249
199
203
233
176
105
225
169
231
180
172
141
228
131
184
170
224
207
139
225
206
162
215
242
184
210
229
260
172
188
230
221
265
206
155
219
204
193
215
197
196
181
192
211
249
211
203
225
188
209
158
205
172
201
217
214
155
175
195
211
180
205
141
159
182
201
224
193
171
188
193
198
192
169
245
180
225
188
166
224
203
194
254
243
226
219
209
119
168
188
254
224
198
194
201
227
192
207
206
202
231
211
172
126
176
258
178
196
211
204
187
217
221
146
149
225
217
190
203
240
169
277
182
206
195
178
156
224
203
188
241
184
207
153
205
235
194
191
200
229
235
210
179
242
165
171
211
213
203
209
129
172
236
209
245
236
212
192
224
162
174
185
137
167
168
218
167
191
221
216
183
288
133
172
242
214
165
216
232
191
123
249
288
192
192
197
166
227
214
214
188
149
225
161
205
204
205
212
194
290
127
285
200
138
181
209
169
203
207
189
139
114
252
208
250
234
189
186
204
141
174
189
181
186
220
216
212
212
153
185
176
143
217
224
267
221
200
191
155
220
203
235
226
180
239
189
191
227
243
219
205
236
227
210
144
212
182
152
172
206
241
196
218
208
219
251
201
181
225
182
184
193
209
241
156
174
198
174
196
206
183
184
210
263
222
155
216
158
169
260
186
207
142
224
243
192
165
201
156
221
210
199
213
187
247
186
198
213
159
264
142
229
184
243
226
199
227
125
224
168
167
257
142
187
222
168
147
146
146
231
136
194
170
268
168
246
207
254
210
186
206
195
183
165
204
224
131
187
211
223
227
218
133
234
164
193
258
227
171
247
200
240
213
213
218
139
206
226
246
134
223
216
219
207
218
175
222
250
217
180
215
239
227
171
223
223
205
227
180
227
195
182
208
184
174
229
225
191
183
241
193
209
221
176
211
242
159
233
210
200
185
273
185
182
189
216
191
256
226
187
217
249
258
198
181
183
158
192
159
150
159
242
171
166
244
132
245
168
224
211
202
136
232
220
226
228
206
209
126
184
271
137
163
184
175
232
236
218
173
217
200
156
240
191
190
214
207
210
247
208
230
193
168
251
196
198
228
158
163
190
169
194
265
226
212
227
212
147
196
206
250
172
187
232
230
182
178
213
193
195
228
207
173
201
129
234
211
191
138
234
199
249
254
214
234
194
209
170
201
217
225
226
232
183
225
216
223
196
162
268
235
183
177
202
173
160
224
209
173
105
176
248
183
223
147
195
223
210
227
200
180
192
242
198
206
230
180
171
216
195
235
192
182
222
224
162
233
163
225
162
234
198
217
168
232
162
228
214
209
154
178
204
158
210
227
211
303
173
156
248
243
213
181
204
218
187
152
171
227
248
171
181
178
189
161
183
234
184
199
196
254
204
191
214
225
246
146
208
180
195
155
251
176
233
212
212
189
215
247
170
204
218
256
197
236
175
223
202
212
229
202
179
161
247
182
253
189
254
154
157
217
210
184
230
200
177
174
186
166
181
196
216
216
204
139
181
204
142
203
162
237
232
194
215
178
195
195
234
153
161
163
190
176
190
165
255
180
167
187
182
224
229
177
266
161
119
217
208
248
127
194
193
221
174
163
198
250
217
177
206
119
240
218
157
225
233
243
265
142
178
166
138
181
205
216
195
157
184
167
227
199
194
200
200
260
255
197
242
145
192
173
179
232
165
206
206
219
182
266
217
247
234
176
156
212
166
169
166
208
212
182
195
139
208
253
153
254
227
187
226
225
170
237
165
212
238
172
188
204
222
170
208
261
176
246
214
254
175
188
189
167
183
221
200
215
187
231
206
162
118
169
161
144
137
183
157
155
217
167
256
174
193
257
239
212
229
183
191
203
163
238
190
210
205
160
170
189
201
173
161
209
175
181
198
174
176
240
202
171
206
203
151
220
210
192
201
102
184
193
196
182
184
217
221
205
176
194
159
164
238
189
215
245
196
245
157
210
173
203
209
232
193
226
216
225
226
251
223
268
160
198
195
159
175
217
175
185
176
192
189
227
190
233
208
217
230
214
185
172
224
173
191
221
205
246
214
259
192
223
251
194
135
212
156
262
227
153
187
224
236
176
174
191
125
171
212
226
201
188
170
226
280
223
198
217
166
189
218
197
178
185
126
168
139
160
205
154
192
226
244
198
245
154
197
176
237
148
195
216
190
205
203
200
118
178
200
210
193
218
211
135
221
241
179
244
156
201
219
204
206
151
170
156
151
198
129
214
180
196
209
143
227
237
213
179
209
246
157
200
152
169
190
208
173
151
188
164
190
139
181
245
215
176
172
185
213
233
210
222
193
169
191
216
181
207
209
258
227
220
235
194
129
120
162
231
184
168
220
192
211
223
261
159
214
190
168
189
195
127
193
173
222
196
199
207
201
228
174
217
191
169
173
231
240
211
206
258
139
214
249
163
177
195
149
154
186
132
187
245
195
188
174
238
218
192
172
198
226
189
182
189
209
256
227
206
240
201
195
215
242
191
198
175
235
209
199
192
247
202
180
222
231
214
166
200
148
231
139
169
179
183
148
233
258
163
234
146
213
120
150
220
215
175
250
175
181
178
253
196
235
234
197
171
157
151
177
238
180
151
193
205
217
200
218
205
163
136
182
209
117
213
143
194
221
240
254
185
184
194
192
229
178
263
214
198
236
232
225
195
267
226
145
250
195
229
196
222
153
173
208
193
160
182
186
135
180
170
140
231
244
220
171
191
198
178
229
234
209
190
134
217
185
193
189
202
196
181
166
175
230
189
192
263
242
215
165
154
194
200
166
164
238
199
168
197
171
218
209
227
209
209
209
220
130
168
230
205
102
243
106
198
191
203
213
154
121
254
202
244
221
198
162
266
194
208
207
235
168
179
249
220
211
196
193
162
152
157
223
151
215
227
182
219
166
241
235
205
189
237
160
209
174
200
212
178
190
192
175
209
201
175
199
250
194
121
251
208
135
255
129
221
208
211
142
220
202
209
193
227
249
230
108
225
197
163
187
192
199
144
204
220
183
151
220
179
148
173
210
214
179
220
197
232
181
227
145
177
269
184
234
199
188
181
195
168
162
190
239
178
189
76
175
171
186
188
223
182
235
233
184
233
208
170
162
168
257
189
260
112
184
213
125
219
249
127
232
166
160
156
215
250
177
197
258
238
208
210
164
216
249
177
106
220
223
194
181
219
189
188
228
214
227
145
202
163
221
210
157
244
197
205
183
170
220
214
225
240
185
181
137
187
120
171
158
207
168
168
217
180
206
257
185
194
154
266
182
194
224
208
261
187
195
244
159
202
132
215
190
201
155
199
183
200
171
220
162
208
264
169
187
169
236
186
129
214
195
182
202
200
221
214
202
177
179
158
190
182
166
182
203
242
225
221
231
163
189
236
224
198
227
175
178
162
158
192
256
192
128
238
203
183
158
199
244
215
179
185
233
186
181
194
221
253
213
214
215
128
210
217
230
193
195
181
240
197
196
212
137
159
220
207
234
188
191
187
143
147
234
170
170
191
168
209
176
153
201
183
121
221
208
253
297
171
140
167
170
215
216
221
273
230
231
176
198
226
202
164
204
179
228
191
200
169
198
202
189
202
254
190
192
218
172
241
207
207
186
262
222
205
231
181
198
173
202
230
194
202
149
243
224
203
168
270
239
157
194
174
207
164
247
156
193
154
213
165
232
213
205
234
232
198
230
241
210
216
196
226
142
173
229
190
123
222
228
145
226
245
208
180
234
200
201
213
204
201
213
209
195
156
208
186
121
271
233
167
186
203
220
186
187
187
154
251
110
178
167
203
207
255
252
220
155
156
128
216
139
219
213
208
168
185
202
186
248
196
197
183
216
207
191
186
243
230
189
235
181
197
175
192
218
162
168
121
177
239
220
157
218
189
187
215
194
196
125
164
197
218
217
202
166
282
164
218
211
181
184
170
133
177
163
220
147
192
141
229
198
223
209
219
224
191
219
210
195
188
235
222
243
206
181
248
163
180
157
202
185
242
259
196
170
195
192
188
201
223
172
172
198
238
283
222
187
221
226
221
201
130
226
181
193
186
179
189
156
227
195
219
160
204
188
189
165
162
263
211
159
227
204
181
229
181
273
188
226
175
175
261
134
200
189
173
253
198
206
153
190
186
210
191
211
207
261
254
227
153
219
261
179
187
182
214
175
165
230
173
220
199
210
229
203
195
269
176
245
219
223
250
216
197
206
158
148
184
195
178
206
259
178
242
150
183
247
207
190
211
120
168
261
252
146
180
238
199
233
247
165
260
259
167
237
218
242
201
138
229
162
175
170
225
192
256
236
162
183
189
190
250
207
204
180
222
160
222
250
214
161
196
171
250
153
256
224
228
229
154
173
165
161
191
180
194
215
222
241
225
196
217
178
197
209
200
159
215
188
217
177
202
214
203
101
179
187
201
160
184
189
171
218
219
209
183
187
189
134
205
220
218
239
213
222
244
163
178
181
188
214
235
187
261
213
234
266
169
137
270
214
207
267
173
200
240
177
180
193
227
231
255
194
190
186
186
146
132
207
178
202
221
215
150
175
173
239
238
200
226
133
201
212
180
266
183
168
226
240
174
181
265
251
152
203
223
191
201
177
225
189
160
208
176
162
142
151
208
183
193
222
168
217
151
261
210
218
136
164
181
244
220
159
185
192
167
186
188
203
250
173
117
198
150
203
173
191
218
231
170
181
178
193
219
148
132
259
168
246
202
227
184
200
173
195
197
189
222
233
150
242
203
231
198
154
167
221
172
204
199
212
204
221
146
189
250
192
180
182
177
191
211
207
229
207
271
221
207
106
193
158
200
211
217
205
171
197
153
207
246
193
227
244
202
192
154
202
171
201
207
200
187
248
201
163
190
215
179
153
181
147
191
186
181
222
194
196
197
177
171
217
237
169
224
181
274
200
268
235
292
148
201
214
185
178
255
148
241
212
238
119
196
186
174
196
246
237
234
228
202
156
142
258
226
211
269
190
172
194
223
161
184
231
243
199
196
195
233
153
215
257
177
177
267
142
275
214
234
217
179
170
120
209
177
202
179
155
165
246
150
239
203
192
230
169
170
199
187
177
244
183
294
239
134
247
251
243
266
209
166
138
238
214
176
220
246
270
208
193
194
207
206
201
249
257
213
102
205
208
193
211
269
212
183
203
199
229
229
182
185
202
155
249
208
142
267
221
204
137
201
147
148
137
179
192
182
191
217
221
193
240
172
169
179
239
224
239
171
236
178
151
185
184
174
179
202
190
159
287
227
215
246
188
236
240
166
230
224
198
253
102
227
188
196
210
227
159
233
222
203
184
220
164
174
171
264
191
187
198
192
193
150
224
191
195
225
204
195
207
150
178
194
214
158
248
225
183
200
248
289
192
175
225
140
249
165
140
202
232
209
268
246
194
225
151
173
198
171
193
147
212
213
173
182
247
200
256
191
212
222
235
169
202
178
219
236
141
232
189
206
214
221
206
230
255
225
180
172
256
246
173
165
185
221
243
189
148
279
236
141
202
192
158
238
280
150
149
151
273
179
206
203
203
202
169
209
199
234
211
132
217
247
186
226
231
252
234
197
130
219
190
224
192
123
176
192
187
180
144
237
161
173
212
183
226
186
183
193
169
201
170
230
188
191
166
227
190
146
264
203
195
262
225
197
229
227
165
188
208
225
195
178
232
198
139
236
244
148
200
186
173
218
184
254
215
187
199
199
162
199
182
158
226
193
148
195
248
201
226
217
184
145
146
179
143
243
205
239
244
270
207
168
190
283
238
109
179
143
213
227
191
171
220
207
183
164
215
252
242
221
199
221
223
204
139
243
228
211
196
209
223
214
266
134
205
198
217
194
166
200
153
230
212
171
198
207
242
163
223
216
209
207
223
181
168
229
209
143
198
202
162
121
173
250
233
182
208
213
196
229
204
107
215
238
192
226
195
241
211
194
253
219
212
202
204
176
199
223
163
236
203
245
216
147
218
242
210
252
189
177
146
245
160
190
197
216
220
134
239
199
201
196
210
265
274
146
172
148
223
225
204
230
154
196
174
215
197
225
249
157
168
172
178
245
234
207
215
225
199
177
171
216
135
224
190
170
213
225
212
204
212
210
250
209
172
172
205
229
179
127
186
212
161
186
249
196
240
188
228
176
149
192
227
208
246
230
195
271
206
215
219
164
197
179
115
192
220
224
228
217
193
175
204
184
262
183
183
168
250
257
187
189
166
181
253
212
210
186
188
189
268
238
208
153
202
159
207
210
210
160
193
191
237
216
258
245
230
188
212
138
172
157
198
237
215
202
239
129
238
154
248
187
185
200
219
215
223
211
197
223
167
253
153
129
245
225
146
182
179
260
194
210
237
233
157
231
180
125
186
225
235
181
174
191
154
170
130
176
253
213
153
204
192
195
265
211
203
233
173
138
189
134
193
236
271
167
143
160
176
193
198
191
263
229
184
145
165
226
160
202
188
184
205
215
180
157
185
187
178
198
189
235
177
156
176
158
256
175
203
221
202
109
217
209
187
239
186
183
200
192
213
211
199
222
180
156
181
202
200
189
178
158
200
112
256
148
238
221
212
181
265
202
152
152
171
246
227
209
199
202
170
226
202
182
183
237
207
178
148
217
179
205
256
238
191
168
241
173
201
175
180
190
209
227
234
243
145
202
188
211
145
207
181
165
268
212
193
168
196
230
251
199
203
172
184
226
144
204
171
187
260
242
217
223
199
208
253
143
197
212
194
153
212
216
139
249
191
198
211
191
199
204
152
211
165
238
188
229
179
213
222
209
188
192
245
213
180
207
157
215
218
161
258
187
182
201
200
189
165
172
231
167
253
162
181
146
184
231
146
247
190
185
200
162
217
198
247
193
230
161
225
195
171
258
223
194
238
209
233
187
260
226
196
170
244
234
220
220
190
154
244
225
139
208
174
211
220
212
208
205
184
226
227
245
243
193
205
184
157
231
230
197
268
203
176
197
199
188
231
238
138
203
223
191
230
220
155
223
256
165
148
139
246
235
168
205
277
129
276
169
278
184
224
186
173
196
129
169
204
262
182
146
187
241
242
204
207
142
277
209
241
237
198
214
206
264
202
234
260
216
107
142
200
214
183
206
111
200
188
223
190
212
219
151
150
178
209
157
113
268
220
232
223
210
207
175
186
201
193
222
222
203
170
82
191
200
246
198
171
195
212
191
170
141
159
241
196
278
150
214
206
275
223
132
244
275
220
187
168
270
178
161
195
180
146
181
143
220
189
216
221
195
207
183
213
198
204
152
178
163
237
180
160
248
232
223
230
218
234
131
179
161
191
189
201
190
204
237
232
135
149
134
208
110
212
179
188
179
183
204
200
194
238
147
140
239
199
263
168
155
176
201
235
215
236
243
195
223
208
182
175
243
198
187
181
191
222
225
215
238
280
229
178
152
220
232
206
207
244
159
192
179
210
213
152
212
205
171
198
234
217
271
206
177
226
157
209
133
196
149
231
207
190
233
211
198
213
162
194
169
161
189
225
220
203
227
191
124
140
129
209
176
265
145
188
232
166
185
202
244
123
221
191
189
154
165
237
245
166
159
177
178
222
203
173
235
191
220
159
189
266
189
253
257
242
219
253
213
187
185
183
140
213
164
212
207
186
209
189
212
266
218
143
205
200
190
166
220
162
177
191
239
168
216
247
181
179
194
223
223
245
232
239
279
197
200
298
243
172
208
156
139
155
245
168
141
233
209
127
207
254
213
188
174
206
229
183
184
217
164
182
156
180
177
242
220
233
203
184
124
152
158
249
189
228
213
211
238
116
181
278
174
113
227
232
232
119
216
185
254
225
213
155
213
221
173
233
188
186
228
257
204
215
223
175
202
146
254
203
197
171
182
203
240
163
227
173
215
188
103
206
192
216
188
214
230
193
209
183
199
201
200
215
207
191
218
183
126
209
149
255
245
204
203
156
202
234
255
257
181
224
258
220
171
201
240
188
195
191
149
183
188
211
167
202
240
233
189
187
195
230
222
184
195
269
172
209
227
231
183
254
280
218
240
221
224
201
214
183
232
183
209
224
229
173
208
202
207
112
224
221
208
181
243
246
219
229
178
233
168
240
219
214
217
296
131
201
147
208
241
193
234
145
210
186
177
180
222
234
208
232
229
166
225
195
162
228
186
193
199
155
185
220
218
200
192
191
161
251
251
177
184
191
203
195
195
168
252
172
212
158
180
188
201
253
191
195
213
171
168
192
170
177
141
203
166
235
177
209
216
217
216
191
181
216
164
184
78
201
206
147
181
240
183
235
152
246
238
191
223
199
217
237
169
280
206
201
177
200
209
186
206
193
197
192
162
213
248
166
219
258
228
236
227
249
256
237
161
212
192
238
198
242
160
244
223
212
179
268
243
207
219
182
178
222
256
256
190
195
252
229
192
159
191
191
184
192
249
110
249
212
210
219
189
222
229
217
149
202
186
162
190
237
179
228
231
115
218
228
225
249
166
205
189
158
184
206
272
187
178
161
233
136
215
180
156
228
128
237
237
159
162
246
210
156
200
247
194
192
195
241
191
210
183
272
164
201
259
195
266
207
172
207
231
260
200
276
225
227
181
247
149
201
189
221
236
215
230
264
218
190
225
227
171
164
175
122
191
220
210
206
176
214
188
162
188
224
206
202
162
174
235
215
204
218
169
234
108
164
219
137
274
183
169
183
169
149
234
135
181
141
159
140
270
232
192
250
241
258
198
222
179
164
233
198
165
146
198
208
217
168
238
241
271
266
203
196
213
202
216
207
197
198
204
149
167
202
175
178
269
204
249
231
208
177
233
137
167
218
197
253
229
225
165
217
220
232
213
174
214
173
190
200
191
140
194
160
178
187
100
167
200
199
157
221
152
194
194
158
194
202
203
220
174
188
146
216
224
259
186
212
239
170
227
285
253
208
217
237
227
201
178
192
187
199
263
182
186
231
250
194
215
178
135
214
206
217
182
141
199
249
191
183
222
252
186
273
181
137
223
227
280
156
190
289
248
125
128
199
178
191
135
224
266
287
234
244
156
227
246
143
232
166
201
141
221
184
218
201
229
186
200
211
190
252
188
178
210
195
263
240
222
205
190
209
230
199
204
205
204
253
143
167
209
152
190
177
238
189
173
241
225
208
238
215
194
206
199
154
192
250
169
192
135
223
218
194
204
201
210
205
252
194
159
171
213
144
212
197
156
195
151
150
181
158
153
184
192
139
145
163
166
230
152
134
230
161
149
159
196
235
231
164
192
221
252
236
180
197
165
114
173
161
132
151
229
203
229
183
175
224
230
261
210
172
265
159
232
260
216
184
190
239
212
207
211
254
212
243
243
204
200
188
208
176
199
201
249
200
143
203
209
141
188
190
204
224
173
245
208
239
210
220
121
193
192
214
206
162
238
226
188
165
183
215
200
143
223
171
256
207
254
183
223
237
219
156
244
175
236
216
222
210
248
216
225
253
217
230
236
207
133
201
212
222
197
154
201
230
233
258
192
285
198
193
223
164
272
274
213
239
208
192
240
216
191
261
238
214
162
227
244
258
142
176
121
179
183
177
162
125
238
155
220
217
152
246
160
117
218
226
187
261
198
253
223
153
172
250
270
124
228
224
151
139
206
181
178
159
218
171
140
218
223
207
209
171
246
140
222
87
193
187
168
227
187
177
213
225
244
218
239
191
220
213
217
160
207
229
242
151
142
192
194
170
168
197
190
249
188
237
189
154
172
246
261
192
161
226
249
224
156
279
210
217
182
148
176
232
204
254
232
154
197
192
153
201
276
207
171
242
175
179
138
199
184
205
211
195
238
236
200
154
192
162
211
199
251
232
195
190
222
185
268
191
225
192
215
196
232
213
197
163
207
165
214
229
242
216
206
275
173
218
154
246
191
178
194
124
155
172
147
194
242
150
205
202
206
217
214
219
227
171
205
242
208
196
215
174
179
226
213
248
208
174
207
200
201
216
146
153
193
184
194
248
187
246
104
154
230
179
163
186
217
181
199
252
176
261
192
235
207
195
134
172
174
203
206
227
164
174
157
230
155
203
234
209
194
218
199
181
143
188
173
173
169
238
231
179
189
209
230
266
199
227
174
139
182
190
246
162
180
186
242
176
227
234
189
194
218
180
218
194
208
182
218
199
208
184
182
231
225
165
231
181
251
216
213
196
211
245
220
201
169
213
177
223
216
125
218
217
209
185
149
195
202
207
250
188
243
175
194
153
213
177
195
231
271
175
212
185
227
165
190
215
222
185
168
147
178
207
201
181
185
224
171
207
180
199
201
140
239
194
196
227
239
230
158
202
128
252
271
181
244
151
204
265
232
218
165
172
258
206
180
179
200
188
267
179
246
177
203
201
118
263
222
160
245
215
217
180
187
208
232
192
183
175
222
216
216
185
230
210
194
212
225
261
198
199
280
191
222
203
208
172
223
192
209
188
256
208
158
243
211
180
218
153
208
237
228
184
249
232
199
174
171
192
244
178
156
222
289
151
208
149
216
143
225
236
133
210
224
201
235
186
215
179
219
235
174
162
182
198
257
145
200
207
166
217
240
217
198
196
195
222
212
160
140
155
189
179
273
167
167
179
141
163
194
177
241
235
194
178
200
222
219
206
242
168
223
262
183
172
190
226
215
174
235
215
191
187
167
187
196
154
166
204
205
249
215
168
178
185
223
200
223
225
186
212
185
172
187
204
206
259
180
179
164
263
192
176
186
201
250
190
216
235
255
175
176
235
199
197
178
242
187
162
204
227
215
159
221
184
176
193
200
220
190
203
228
174
230
202
198
133
227
204
247
219
276
226
179
217
215
212
149
306
229
216
232
179
174
203
231
231
279
207
190
218
150
222
204
209
213
183
230
211
222
146
217
153
221
184
198
207
137
222
249
228
226
206
194
185
199
151
219
144
163
235
200
189
211
253
143
207
213
207
187
214
202
162
211
280
202
187
192
195
182
206
243
209
123
208
233
149
177
208
168
208
238
194
153
212
192
153
175
195
178
225
201
162
206
213
178
185
205
206
175
199
175
167
202
178
195
204
223
186
226
222
239
159
144
240
226
234
217
152
190
243
211
147
144
212
218
232
229
128
198
212
168
188
197
192
200
185
179
213
242
228
161
180
222
200
151
274
223
210
186
225
224
187
237
161
182
217
236
202
236
267
170
180
176
142
225
163
166
278
223
191
178
141
227
225
229
128
203
187
128
165
141
223
188
191
174
220
230
270
172
222
218
242
190
138
188
129
104
185
221
266
215
177
196
225
222
189
224
176
221
189
150
243
230
171
213
157
223
203
175
217
157
250
205
217
270
226
179
199
159
196
137
242
238
147
226
238
227
225
143
172
151
194
202
247
176
204
227
178
187
163
137
170
192
257
232
158
214
230
217
248
222
218
203
227
257
185
208
190
190
261
187
182
212
263
238
191
187
208
120
248
144
249
142
200
220
208
174
210
189
239
180
233
169
202
208
250
113
235
175
197
245
200
180
175
174
195
156
219
172
123
156
213
171
162
255
199
164
233
214
222
195
215
166
174
212
181
222
250
222
208
193
178
185
188
192
196
248
197
218
191
182
248
211
167
106
225
219
187
210
212
229
202
119
208
187
197
152
240
153
194
118
209
155
205
200
256
169
171
216
237
235
211
139
186
202
174
223
195
192
210
149
193
265
227
195
170
235
220
160
186
202
175
228
226
183
167
209
227
198
199
146
163
214
202
234
236
230
229
244
231
216
262
216
256
182
186
206
176
214
167
173
246
277
116
202
160
200
211
134
125
168
155
225
162
229
158
206
217
171
238
151
186
202
231
181
192
230
202
164
166
233
188
199
229
115
185
223
194
153
186
241
159
211
202
221
193
247
205
134
236
175
222
230
184
155
123
213
185
184
256
217
226
239
128
222
204
242
198
214
189
206
162
181
197
175
231
198
189
262
210
213
127
269
242
157
255
193
204
221
234
149
192
188
269
211
186
248
203
237
248
257
200
213
221
204
200
185
177
209
207
206
134
185
257
179
206
165
208
222
212
233
137
128
179
213
248
164
285
201
242
206
200
163
173
206
238
196
178
188
238
191
168
211
213
209
187
145
284
219
192
239
182
232
195
154
224
190
202
208
190
161
186
137
167
150
162
240
234
206
231
192
169
226
255
88
237
186
230
225
200
202
270
182
118
211
158
212
195
236
162
193
274
160
196
205
227
159
208
235
195
200
220
174
212
214
238
191
195
253
209
198
212
162
236
232
155
174
275
204
194
190
164
215
132
215
206
203
120
241
213
131
204
171
220
207
256
214
178
215
227
183
199
229
207
218
151
151
142
195
244
212
201
189
193
222
185
220
201
242
175
169
203
207
197
217
164
210
193
267
227
200
189
255
159
195
190
240
185
204
190
226
208
193
261
250
192
161
230
234
157
174
201
166
196
240
219
178
204
214
225
128
179
157
213
249
217
193
261
223
208
212
210
160
288
190
185
218
179
160
252
186
174
162
229
237
229
167
180
273
220
239
191
222
214
152
185
227
147
190
166
219
160
225
224
174
220
237
180
189
185
154
232
187
251
226
146
189
192
213
177
202
197
189
182
226
236
211
197
211
244
212
184
160
229
223
256
209
219
159
203
226
209
229
199
199
169
221
195
252
264
178
217
246
183
213
257
197
228
170
254
194
156
265
197
173
168
243
161
216
234
202
127
217
193
225
171
244
129
210
144
212
223
167
197
249
215
205
227
285
184
199
270
164
199
223
204
200
128
175
148
236
177
186
277
160
195
246
308
187
224
146
222
205
165
236
204
174
196
219
212
240
163
244
194
206
219
159
138
225
201
203
226
241
248
168
163
146
247
176
168
227
138
199
222
261
192
215
197
189
203
183
166
217
215
187
177
198
172
192
110
226
167
258
162
293
218
242
172
233
180
157
231
189
239
179
203
166
192
197
162
202
165
165
253
221
199
189
224
189
229
206
239
249
188
191
173
169
150
181
194
175
190
223
180
211
211
241
251
220
250
164
237
165
252
206
193
199
258
227
200
223
243
182
123
253
203
227
191
220
237
243
186
249
233
225
259
195
153
139
198
194
240
156
186
224
245
209
238
183
185
159
204
183
172
148
198
198
209
159
208
219
201
202
167
173
149
186
184
188
174
218
195
225
244
178
218
195
226
106
211
173
249
167
215
209
252
253
216
199
202
193
217
235
174
226
131
227
178
189
139
223
188
222
266
226
210
208
205
205
151
123
224
167
188
203
139
243
172
188
166
264
249
156
228
228
208
186
202
229
222
185
198
176
205
207
154
226
179
160
159
194
167
148
197
177
244
237
187
184
208
167
225
176
183
139
161
170
193
236
166
225
248
233
245
131
195
209
167
236
229
201
194
183
233
231
188
173
243
249
266
216
154
208
215
157
229
207
174
277
191
200
220
191
230
303
184
164
225
179
184
119
198
223
169
196
248
220
153
105
159
225
177
181
162
219
129
159
205
233
212
189
220
254
199
185
204
189
153
255
188
225
216
181
130
216
176
158
184
186
184
176
199
176
178
237
209
193
257
138
181
247
119
181
223
154
214
200
224
194
183
150
212
174
188
123
194
214
175
192
196
184
205
174
182
241
243
231
203
212
233
182
202
203
212
219
197
190
256
178
187
234
155
267
74
166
139
191
216
240
218
237
273
153
227
223
200
217
213
184
234
230
201
201
233
173
228
233
174
223
195
146
182
224
210
198
219
160
201
242
233
173
226
218
228
227
254
216
235
190
202
186
208
179
164
188
210
231
237
194
188
183
136
204
178
248
177
180
214
219
201
214
229
254
207
215
170
206
206
119
185
202
208
226
244
240
204
212
215
178
238
247
214
154
245
202
248
172
222
196
147
225
223
184
216
198
172
167
152
223
220
193
216
179
179
201
230
204
190
171
189
239
199
184
159
209
213
231
201
149
232
230
174
209
197
142
241
176
233
212
239
237
243
161
199
151
180
160
209
242
239
297
193
224
195
179
174
190
219
226
204
149
163
229
191
182
194
144
191
238
202
180
226
247
197
198
182
220
157
250
242
239
202
177
190
244
232
244
255
166
226
178
214
186
232
225
122
170
185
165
145
241
140
229
166
158
155
167
158
207
224
244
186
239
182
217
156
173
176
198
203
237
172
149
201
155
159
211
224
210
151
183
172
183
157
140
221
240
207
270
194
235
197
193
198
223
186
197
159
238
201
139
236
204
269
160
188
244
238
154
236
239
128
230
142
224
226
164
171
219
145
209
202
185
235
188
164
243
213
213
213
241
175
227
154
224
175
179
179
233
181
192
209
159
195
226
202
249
183
216
239
209
223
181
180
97
232
182
178
259
159
200
216
203
237
230
221
232
218
231
179
211
142
205
206
227
199
191
192
171
258
238
207
221
220
194
173
222
195
236
219
141
242
217
204
164
211
204
168
196
222
205
198
206
214
215
165
219
263
219
233
184
164
206
147
167
158
189
173
219
182
190
229
195
164
229
251
231
212
145
194
211
129
226
151
229
176
254
253
253
176
258
266
159
255
239
202
151
105
190
275
229
181
176
144
263
227
173
190
209
212
229
227
210
286
234
196
175
230
179
269
204
152
215
207
200
231
172
154
225
290
218
218
204
217
216
166
208
265
221
161
232
169
214
240
182
159
146
211
163
169
257
166
130
205
184
136
191
211
214
177
174
244
177
230
199
207
154
194
177
216
198
193
170
242
215
210
200
172
208
236
239
165
221
192
215
173
197
191
202
190
151
212
233
176
206
151
126
235
164
191
237
180
245
153
215
251
207
165
271
201
260
247
241
246
256
180
222
174
182
252
200
208
206
219
203
221
212
263
193
174
152
135
241
219
207
199
261
154
208
173
196
224
211
181
247
214
217
181
183
226
224
253
160
287
184
189
226
148
212
225
203
216
178
212
186
246
218
227
221
204
198
194
221
194
177
215
209
141
129
249
215
160
223
237
164
206
184
197
197
189
197
217
244
178
225
212
244
225
234
210
180
175
163
222
215
171
166
261
173
190
194
175
222
232
194
239
224
200
214
212
240
207
228
204
189
183
191
188
214
197
165
192
201
231
197
161
163
186
233
285
225
179
172
203
233
231
147
137
184
211
209
214
247
182
240
185
205
164
198
185
184
248
221
228
233
212
197
141
145
226
231
223
191
195
191
156
221
275
263
183
183
224
179
264
198
212
209
195
234
162
178
198
204
195
198
230
171
223
168
175
207
203
212
245
249
215
179
160
136
227
218
240
191
236
219
282
248
215
210
176
203
196
189
153
210
171
193
199
224
252
221
254
255
124
186
159
224
251
202
184
248
186
178
202
180
177
241
170
208
186
208
156
173
240
212
277
205
179
139
152
199
216
214
223
207
215
249
229
210
211
171
173
171
201
192
218
214
271
229
184
237
248
259
175
195
159
202
228
207
157
140
251
201
227
189
160
248
175
180
164
187
190
218
202
175
234
192
248
220
187
195
172
198
212
255
228
126
177
249
230
170
243
146
202
195
212
148
219
234
179
176
197
202
206
249
222
212
165
216
237
186
233
177
206
218
190
184
210
200
199
204
246
179
181
192
194
254
178
154
204
220
158
203
213
202
140
236
177
220
213
266
205
200
171
217
274
229
206
249
215
213
292
209
234
136
191
247
189
196
210
225
157
216
172
242
152
149
185
197
181
145
159
240
222
223
232
211
200
197
189
255
158
183
226
183
224
199
168
193
211
191
203
167
243
248
177
159
210
221
159
160
201
218
162
212
178
177
179
237
209
240
224
216
197
186
223
182
243
187
182
197
193
217
199
252
249
164
167
234
129
227
202
231
193
165
207
192
173
224
183
158
200
179
222
203
172
238
183
164
155
239
203
205
220
192
197
210
251
183
165
244
237
143
225
169
236
182
199
191
233
201
218
242
194
239
162
242
190
147
187
161
180
192
197
242
177
226
221
223
202
253
263
210
243
167
175
170
124
227
188
220
226
213
172
248
144
223
172
194
187
151
231
227
189
190
206
155
214
185
214
253
226
179
159
202
176
135
196
187
153
198
238
238
180
233
183
205
183
208
183
252
173
221
235
211
206
261
201
180
224
240
183
234
173
234
172
191
236
176
142
166
200
187
162
275
127
221
243
251
236
202
194
157
181
212
174
173
229
223
217
154
231
154
263
216
208
193
181
170
203
157
174
222
178
155
207
129
189
207
98
169
233
192
135
245
189
251
194
255
256
77
278
185
217
186
212
211
184
167
192
197
153
122
145
130
193
232
208
153
238
188
231
151
163
127
185
168
202
262
211
266
202
217
185
194
184
165
215
243
240
248
175
237
208
185
221
242
202
188
264
232
198
231
210
190
205
198
178
169
212
232
169
185
276
241
185
248
208
262
183
291
180
212
177
194
191
225
190
256
206
217
215
156
159
207
155
241
245
218
205
201
256
221
264
151
155
208
218
234
212
169
245
194
207
131
185
198
200
270
221
198
187
233
188
243
205
171
228
224
203
210
116
192
139
210
233
184
220
213
246
233
237
168
221
255
248
245
210
231
178
232
185
220
144
218
167
173
255
206
195
182
174
193
179
226
183
187
208
192
197
193
198
175
236
197
135
228
181
213
250
135
147
204
228
210
214
170
191
173
225
192
179
243
191
225
115
200
214
186
174
155
214
179
127
168
236
199
137
183
201
207
190
203
189
140
184
220
241
240
201
246
188
212
154
219
204
167
241
154
184
257
192
220
222
170
240
202
239
189
187
232
208
186
166
237
194
177
221
247
133
226
217
153
213
197
157
260
158
188
179
177
233
170
230
179
143
213
230
159
176
160
190
129
246
170
166
201
258
229
125
189
215
244
266
215
171
94
200
220
203
194
165
183
212
199
208
161
223
240
183
144
205
170
186
210
177
203
170
171
193
226
228
227
195
162
197
213
195
201
196
193
196
161
184
205
159
232
185
185
253
207
183
124
204
169
201
251
185
223
216
212
195
172
193
165
181
266
154
136
194
202
247
222
286
232
205
236
182
217
166
175
200
259
255
183
205
233
159
239
218
219
235
179
169
179
202
202
160
216
204
187
160
170
167
164
199
183
162
158
187
228
198
174
214
208
236
236
193
184
203
154
237
204
205
184
241
157
215
189
183
207
94
186
238
209
219
215
278
185
239
239
235
193
130
187
259
223
186
174
154
170
237
202
201
248
167
174
240
170
193
212
215
211
172
220
226
262
161
166
179
174
115
200
236
188
172
178
190
205
193
200
197
250
259
175
190
141
217
196
216
196
181
213
253
173
215
170
174
179
203
205
167
197
183
225
226
217
236
226
201
194
260
247
206
180
166
214
216
233
160
211
147
202
226
194
187
178
185
197
175
219
108
212
218
233
203
183
179
192
179
177
203
220
220
150
169
202
194
153
209
199
171
211
230
168
188
196
171
196
258
121
218
201
268
250
173
251
200
187
212
153
193
216
224
195
180
210
190
284
204
196
218
230
198
209
194
256
203
192
187
187
183
223
237
148
190
131
215
161
219
232
245
228
249
152
164
213
241
236
192
163
174
168
202
157
209
148
186
196
210
224
198
189
258
204
200
188
209
193
185
214
167
283
206
195
228
235
155
268
177
219
252
151
217
181
250
195
233
143
169
171
186
182
212
234
212
218
209
193
161
253
228
218
202
218
176
236
215
218
180
173
210
188
209
170
229
215
261
230
195
177
223
220
236
194
214
175
213
240
188
216
220
181
175
219
227
172
260
166
230
219
185
156
194
154
220
228
169
247
222
214
246
228
190
192
165
183
237
195
194
176
166
234
206
223
241
198
254
263
188
187
200
114
209
188
182
171
221
251
148
191
219
141
229
175
193
203
255
176
241
199
159
223
228
166
223
201
159
177
190
192
176
165
151
194
166
231
264
171
166
181
229
183
205
153
209
230
205
217
200
201
165
169
215
216
217
186
190
174
217
224
192
172
196
210
169
212
206
235
157
174
247
232
233
165
161
181
167
231
136
188
258
243
274
197
265
170
205
254
177
166
214
231
138
172
227
210
169
189
160
211
162
203
229
243
225
182
207
185
228
203
224
192
234
162
208
172
217
177
177
190
178
275
211
224
171
209
159
172
242
245
156
139
172
229
165
200
173
214
218
201
237
201
199
200
203
145
199
181
220
231
201
254
247
149
211
207
250
190
254
139
171
112
194
257
176
211
235
228
236
198
244
194
185
237
222
221
244
160
198
242
235
217
192
200
166
193
207
209
222
197
202
229
149
223
237
249
173
241
205
162
219
237
149
181
217
229
193
187
175
223
191
245
237
246
204
197
178
202
172
177
207
157
161
164
221
207
215
156
172
230
226
245
160
215
245
221
221
250
249
235
172
183
174
207
211
232
191
228
200
218
206
145
147
209
113
245
216
233
214
195
165
210
196
162
185
168
266
152
235
197
217
183
260
236
170
233
195
191
179
236
185
191
216
181
151
191
214
194
179
152
152
221
174
159
200
233
207
219
277
182
187
177
236
177
212
184
161
146
227
191
208
227
183
223
183
244
213
185
251
236
188
210
179
169
229
170
279
215
173
241
155
169
172
144
220
238
199
238
215
258
160
200
202
171
200
185
142
179
210
192
229
129
224
166
216
200
190
237
220
149
209
233
190
226
247
274
159
227
265
191
205
200
211
151
243
230
167
200
181
226
158
217
178
216
187
176
206
174
244
214
159
221
234
205
219
221
199
190
239
233
219
109
159
263
162
202
218
167
215
158
212
229
205
174
181
176
140
227
201
182
232
203
167
200
142
108
191
158
159
219
241
220
175
199
141
163
167
253
177
224
258
243
207
179
203
209
134
215
225
90
187
172
155
198
214
236
208
200
222
173
182
220
149
205
205
180
190
201
189
133
215
217
181
187
226
158
215
224
201
216
249
217
205
200
278
209
230
190
207
163
191
182
157
171
234
192
197
163
255
227
172
176
177
242
219
204
211
179
174
213
238
190
173
251
188
182
216
217
230
196
208
211
207
233
239
253
196
166
188
216
197
200
260
181
213
202
267
164
227
134
245
173
190
224
170
210
218
192
199
245
206
271
153
203
177
212
238
232
148
183
204
170
161
208
201
224
203
246
163
220
227
202
236
196
164
183
233
263
203
191
148
192
205
205
225
261
181
169
220
238
190
174
185
176
213
139
245
205
165
191
185
192
187
222
199
216
193
184
237
204
192
184
99
196
201
161
219
231
215
219
247
132
184
241
188
228
206
209
160
210
197
195
195
185
201
147
202
224
169
144
225
198
212
248
181
229
220
174
186
242
219
207
231
239
249
229
132
168
242
164
208
159
240
266
177
224
229
216
229
242
218
159
176
172
146
149
187
260
202
220
213
186
252
216
229
215
156
145
200
209
229
127
225
196
208
226
170
127
185
177
192
226
201
227
165
240
224
248
160
181
253
183
225
196
216
191
234
239
198
225
111
199
225
226
224
169
200
243
231
227
212
207
219
188
185
201
194
216
206
242
247
193
93
191
229
231
192
243
222
170
195
142
183
185
187
262
183
195
148
258
163
205
201
266
247
138
173
119
202
205
223
154
171
175
209
219
210
223
276
182
216
214
231
233
248
245
191
144
184
208
248
188
201
184
190
156
190
202
210
180
183
211
172
150
226
231
223
210
145
240
142
205
184
215
242
213
223
208
163
279
157
186
254
163
196
213
213
225
193
197
222
232
176
167
159
244
147
160
220
209
207
237
210
211
244
223
238
209
260
179
265
182
208
202
155
241
152
139
178
211
207
240
183
216
220
265
195
209
237
255
182
204
192
211
148
191
204
242
210
179
231
158
172
177
220
161
201
215
222
177
258
122
172
222
171
189
194
156
216
178
173
231
165
201
221
214
210
222
191
169
219
138
239
199
176
153
175
204
185
183
174
149
212
157
196
200
281
181
214
189
170
241
191
242
180
185
180
159
232
113
155
220
184
218
202
185
162
232
166
195
187
238
232
220
150
213
105
173
254
229
223
201
199
201
214
209
222
225
227
198
233
265
206
233
172
208
208
223
180
244
158
176
164
210
257
217
201
246
219
164
159
183
282
203
205
212
193
227
192
208
252
229
244
223
214
228
180
225
214
161
185
241
202
239
205
170
202
197
189
206
204
226
235
198
223
201
169
211
195
147
223
170
232
177
223
205
168
85
193
181
154
186
233
160
212
179
144
244
175
209
259
170
165
192
252
227
230
226
199
213
246
235
204
180
202
191
111
140
169
194
236
208
222
180
178
184
235
179
215
200
195
193
205
244
141
223
227
272
152
245
210
150
190
245
229
114
204
185
205
171
235
195
208
213
193
200
184
224
207
192
198
143
199
148
180
178
116
250
215
168
223
250
203
207
199
167
188
208
219
197
214
184
163
214
227
204
216
186
175
230
196
182
246
215
182
171
174
207
188
255
169
217
241
159
222
230
165
199
227
164
194
173
216
185
203
236
155
276
188
255
191
231
118
245
179
170
197
223
140
192
162
136
220
135
189
182
186
238
200
161
243
170
227
127
177
183
220
175
199
217
248
156
214
247
214
165
200
155
198
184
208
178
144
258
230
207
173
212
141
190
226
173
233
195
210
216
219
210
192
242
217
199
211
203
73
155
182
230
190
201
208
195
107
223
229
192
249
209
210
176
193
178
210
257
213
211
210
205
197
210
226
161
232
193
251
170
139
145
207
145
183
253
270
139
193
187
237
232
169
248
190
149
161
197
190
145
232
214
149
238
160
205
179
136
249
214
169
212
165
165
188
117
214
241
185
171
240
141
225
187
208
253
216
225
245
224
241
141
224
215
135
203
188
246
228
224
251
216
149
240
230
242
230
181
155
240
189
215
152
197
186
223
171
164
229
216
216
183
182
183
208
264
239
199
134
221
193
183
201
229
213
211
240
199
229
198
262
191
197
176
179
189
220
126
169
209
166
224
205
198
138
202
153
174
191
238
239
186
221
181
174
217
178
243
174
182
199
199
161
212
147
241
153
227
255
219
212
198
239
237
171
245
191
224
231
219
159
239
248
166
178
198
272
196
155
194
230
201
207
235
179
176
282
184
135
184
221
179
256
196
192
201
213
199
180
202
240
235
189
190
238
185
174
204
232
159
198
214
203
184
222
143
193
201
158
118
198
204
246
175
189
194
231
272
216
170
201
200
184
220
222
223
202
217
156
209
206
164
274
222
234
279
195
212
157
249
165
230
186
178
164
167
230
250
222
158
279
168
161
213
171
222
230
261
165
184
182
184
230
210
237
170
190
198
228
199
170
131
236
190
237
173
182
232
251
179
242
208
202
217
195
164
219
173
197
158
218
167
227
187
208
196
226
238
230
236
155
245
194
193
179
218
226
149
178
196
175
206
171
237
162
110
257
181
257
142
154
179
187
190
191
164
199
172
228
172
204
179
141
186
213
249
214
149
134
238
206
163
220
211
232
202
254
250
173
204
216
197
192
202
143
228
158
206
186
219
191
234
177
176
206
198
191
216
215
231
159
183
210
184
268
208
168
203
196
219
181
179
247
183
170
163
192
196
173
138
195
242
201
214
139
193
216
242
196
202
226
205
209
197
186
155
195
222
179
211
251
196
193
190
197
151
236
233
176
196
237
216
214
166
211
180
213
240
269
209
221
247
273
198
217
205
210
179
198
182
193
224
169
206
220
195
142
171
206
227
185
199
245
200
146
210
190
185
135
219
226
197
171
169
193
229
195
176
230
187
179
205
222
162
227
279
236
185
248
202
213
216
127
181
217
171
215
226
176
177
190
187
253
131
273
202
162
193
170
247
225
121
253
137
157
206
174
223
203
179
188
221
170
132
198
159
197
240
212
202
150
210
176
188
196
234
222
198
234
195
215
169
173
236
204
227
275
187
253
220
269
193
174
161
237
200
163
243
201
233
245
248
189
160
192
160
223
242
170
264
228
195
196
201
145
172
143
230
182
205
194
235
235
195
189
240
203
278
266
182
237
252
224
257
182
178
151
217
184
224
228
162
160
185
181
182
209
176
248
198
185
142
219
169
179
241
230
168
232
232
223
187
151
261
194
202
150
268
225
200
217
134
233
206
197
261
241
156
184
171
220
242
288
220
203
249
183
153
213
217
220
157
122
200
231
250
123
256
219
211
247
230
207
229
206
216
208
249
224
215
202
188
181
153
139
208
191
223
178
201
211
230
202
176
240
140
180
172
224
117
229
215
255
212
213
231
274
193
170
188
163
133
227
192
244
238
251
221
258
205
204
187
226
173
188
220
184
257
220
240
187
215
196
221
202
203
248
174
203
228
237
166
207
209
224
248
189
208
170
217
131
194
229
157
205
166
183
220
277
247
196
178
215
220
168
230
258
201
226
234
203
221
220
272
194
140
153
186
220
192
190
203
215
220
161
199
230
236
261
243
131
182
217
208
149
193
144
206
249
210
210
188
188
182
176
159
220
223
209
180
217
225
152
200
232
203
170
243
216
148
212
184
140
187
221
158
262
190
220
172
233
216
245
204
173
193
218
166
232
259
211
160
209
231
233
228
142
190
160
218
193
164
170
157
257
193
186
132
230
253
254
201
165
202
207
192
165
241
209
241
206
159
213
239
162
201
211
239
164
188
247
221
251
207
250
176
214
206
203
184
118
227
217
157
172
208
171
184
199
158
219
181
251
161
220
167
153
216
255
242
254
132
235
177
170
200
166
212
228
148
223
249
164
231
175
205
210
194
169
212
158
213
217
166
179
233
210
183
122
209
233
172
228
194
242
243
158
201
198
195
239
281
214
243
220
217
99
181
179
193
220
233
212
150
221
198
207
215
223
123
155
170
114
228
170
188
132
263
210
201
213
192
236
232
198
178
225
253
188
170
139
184
221
118
199
197
210
245
185
193
169
229
212
233
214
218
162
208
197
188
178
219
115
191
221
144
122
171
192
237
203
178
255
186
252
182
196
233
270
166
203
165
165
213
230
115
205
182
201
177
242
121
200
248
172
222
215
200
245
188
231
139
182
219
205
177
225
285
157
218
276
174
178
222
244
231
191
138
140
171
136
127
167
203
212
168
195
150
195
238
182
131
250
220
241
170
259
168
155
229
212
206
227
195
191
169
190
217
163
209
151
219
228
241
171
203
213
206
215
194
221
233
184
234
182
231
187
156
205
232
262
185
175
189
240
217
225
183
232
221
203
204
210
90
250
244
198
204
208
144
206
216
158
239
192
168
236
199
209
235
219
220
219
158
156
231
167
248
136
183
175
220
182
244
206
298
212
191
185
176
193
185
167
237
287
173
243
219
199
203
273
184
143
210
152
224
198
205
163
171
224
177
120
161
143
240
188
235
228
131
194
228
147
139
226
184
174
193
192
240
184
185
211
233
202
244
168
208
272
144
170
232
197
222
132
232
221
244
182
259
223
204
200
231
130
171
190
106
214
197
260
192
218
232
158
177
216
199
203
234
219
219
218
184
221
214
231
136
222
171
238
235
213
223
171
206
200
207
208
245
234
224
177
171
218
181
152
222
222
213
199
256
192
240
191
164
235
94
223
208
183
192
199
201
173
281
197
208
219
188
220
220
170
220
136
225
199
212
205
210
112
208
244
240
165
238
191
189
178
187
256
176
234
235
205
156
229
273
203
253
222
180
200
124
210
179
254
214
183
209
251
168
178
214
180
213
153
179
233
179
214
175
208
201
220
193
258
191
246
214
192
225
201
211
120
197
212
135
148
180
184
196
208
212
172
212
264
216
196
237
206
215
209
201
190
165
199
189
213
209
238
253
244
157
187
261
222
243
234
181
228
173
152
156
195
237
194
248
130
225
183
245
178
196
189
215
178
252
173
257
225
154
140
131
199
247
201
192
190
179
217
169
156
221
247
168
187
188
224
238
242
245
141
193
155
202
190
174
84
271
207
268
215
214
149
189
216
180
209
157
185
188
262
207
234
244
151
185
221
218
240
172
155
194
235
170
214
187
165
210
222
192
174
205
197
209
187
108
196
169
245
175
170
154
254
214
204
191
233
133
181
175
178
249
133
229
168
184
174
177
186
191
217
176
205
249
223
122
290
198
207
178
198
184
213
196
217
189
261
224
194
193
196
240
230
185
146
195
192
196
209
173
190
207
272
223
147
196
175
212
178
191
181
215
203
150
225
191
181
161
215
172
184
192
188
230
182
187
218
147
138
208
278
179
248
211
161
196
139
253
215
153
232
139
220
202
233
217
226
154
151
137
208
196
225
161
162
243
196
264
187
205
239
205
224
193
224
176
168
215
218
165
126
146
238
175
209
181
196
214
156
210
220
148
240
197
275
195
130
231
191
180
201
180
185
205
207
177
180
170
218
247
279
157
186
186
257
262
218
207
200
209
204
172
191
217
203
182
175
162
235
221
169
204
191
243
187
209
239
208
223
171
239
227
226
162
188
209
231
202
176
206
208
180
240
194
179
219
246
147
241
208
135
124
220
249
159
201
227
220
205
236
197
169
163
226
221
215
250
172
283
168
174
135
174
194
251
214
200
180
202
178
234
179
193
222
192
245
235
260
200
245
249
217
237
124
199
231
115
212
217
250
233
124
165
197
229
175
252
173
193
162
154
196
253
234
173
212
133
219
156
236
174
173
214
230
178
166
199
163
203
220
224
191
151
231
172
243
254
208
178
230
211
243
209
198
245
235
259
136
207
166
218
204
202
191
129
219
233
214
185
166
225
207
277
244
209
208
183
126
227
209
179
217
218
228
191
217
250
152
256
227
181
186
150
237
231
155
233
197
196
200
191
216
254
194
228
243
231
232
241
219
207
207
199
204
167
225
185
217
221
169
207
182
215
183
206
204
152
149
185
168
269
175
252
179
234
117
165
226
174
194
218
195
148
249
220
165
182
144
222
159
227
186
146
240
175
223
218
253
218
231
266
217
166
226
130
223
181
151
214
222
174
216
122
268
148
139
210
196
191
224
174
186
238
168
239
251
220
206
186
251
215
153
153
183
193
169
175
142
158
194
173
189
253
218
198
246
210
203
243
188
218
204
186
154
201
215
187
160
196
175
198
221
150
221
130
262
183
198
159
211
182
152
241
236
241
200
224
225
231
150
174
240
176
220
175
206
222
166
157
205
195
162
213
211
205
194
212
188
245
189
164
132
217
179
194
202
144
174
229
135
199
170
224
224
161
201
253
179
238
228
140
218
184
224
212
205
181
234
199
197
237
196
200
219
197
178
247
182
213
161
172
188
161
123
255
227
232
203
239
229
192
192
204
196
208
189
196
143
174
182
210
189
213
118
205
244
238
202
188
238
192
238
218
253
169
116
182
175
198
172
255
238
120
146
170
219
113
217
205
197
239
216
203
195
204
236
258
229
231
200
177
188
204
180
180
203
219
159
166
172
268
230
191
220
150
174
201
238
182
193
196
178
228
238
248
164
192
170
254
232
198
232
163
196
192
205
218
224
235
244
246
138
207
223
274
138
207
214
149
153
185
248
186
127
199
214
158
207
218
179
190
213
194
201
200
194
143
184
154
225
142
186
186
174
222
171
236
207
235
209
199
212
163
131
287
205
227
189
253
238
227
249
148
187
184
234
193
212
164
207
211
258
223
186
175
224
188
178
177
221
227
230
139
249
231
144
189
185
170
225
188
231
174
159
215
229
167
273
168
206
227
187
231
225
176
236
205
158
215
182
204
142
227
217
215
250
207
239
165
177
264
269
155
211
223
204
251
167
257
151
181
245
213
231
253
203
209
183
246
250
192
210
242
249
255
171
160
232
180
189
180
221
218
156
229
260
176
232
205
204
178
223
224
223
155
260
126
192
234
171
193
208
192
126
224
199
214
179
224
231
150
192
174
203
220
230
184
198
209
212
189
142
245
177
240
206
138
192
268
176
188
244
201
224
199
187
212
276
204
245
238
210
160
189
204
215
169
200
272
207
213
282
219
219
244
247
191
187
221
244
206
166
218
185
164
171
238
261
152
195
170
197
219
214
139
205
123
237
153
129
180
200
223
215
243
168
194
234
221
264
222
231
247
145
207
221
192
161
175
175
128
264
178
236
151
236
228
225
244
176
233
199
208
195
264
185
209
176
223
221
160
204
181
224
149
247
214
224
230
221
233
120
195
184
213
261
197
184
250
208
157
206
291
224
237
187
188
197
186
194
209
233
246
226
220
193
242
129
143
260
221
280
192
216
249
233
153
137
197
182
167
201
153
158
204
195
137
161
218
190
201
184
217
264
215
192
174
190
199
219
175
210
216
206
248
201
175
203
194
240
223
213
234
203
163
203
156
150
210
132
128
164
184
184
205
226
162
267
198
225
113
180
216
222
206
172
215
186
232
277
195
168
199
230
177
165
173
196
177
177
204
210
141
222
206
228
178
184
222
262
202
133
235
269
199
252
143
202
168
202
194
157
214
216
161
180
206
218
186
198
196
141
216
179
145
274
169
213
197
242
154
164
198
197
162
228
133
220
193
208
180
246
190
118
238
213
181
260
241
192
209
220
238
214
246
156
207
228
169
197
209
262
174
203
191
194
225
200
271
186
247
196
190
197
221
225
137
199
165
232
232
180
202
205
236
165
212
231
196
232
161
241
190
243
215
185
228
148
213
197
266
190
287
215
209
234
156
178
239
248
209
225
219
117
154
252
149
223
181
252
181
143
210
201
173
207
207
171
134
212
146
231
202
186
258
201
237
184
225
241
244
192
171
181
224
160
181
190
119
206
132
191
186
158
215
196
142
223
228
150
291
204
235
179
182
185
214
215
198
186
235
186
241
225
165
172
144
192
135
159
158
229
234
213
207
204
187
190
162
229
206
259
217
221
199
164
199
212
240
208
181
214
198
224
225
191
192
219
251
152
256
147
191
223
138
199
257
211
246
179
224
150
164
206
166
230
247
233
188
243
176
174
260
213
280
245
196
262
228
236
266
199
213
175
233
244
210
182
230
250
201
204
169
291
189
228
156
200
199
212
148
201
183
170
219
224
173
239
195
175
200
156
177
206
199
224
185
164
178
200
163
170
207
200
205
246
255
300
284
162
229
234
230
171
158
188
211
159
164
223
197
191
161
198
177
229
281
244
156
222
147
255
215
162
192
221
152
231
182
223
166
229
210
225
221
251
199
129
220
256
190
67
183
203
239
194
185
204
181
242
219
202
177
256
276
163
216
219
207
216
209
162
197
190
203
181
200
179
207
171
163
249
160
151
179
258
197
208
192
214
222
158
142
232
202
188
244
218
185
163
196
230
178
193
156
150
196
239
229
124
158
216
246
207
204
159
233
155
160
250
134
223
164
162
202
157
192
218
235
250
185
215
177
254
242
149
200
221
217
236
243
177
188
236
155
213
145
174
179
171
182
162
192
205
179
223
154
160
219
214
194
109
210
196
206
203
129
170
164
225
186
211
185
187
202
197
188
258
185
184
185
239
193
187
242
254
231
167
191
219
206
196
235
179
215
233
218
177
206
186
181
244
242
184
242
136
114
216
211
196
195
208
186
170
157
259
226
197
223
172
170
197
161
169
229
142
151
186
170
211
210
257
225
251
225
170
242
267
197
218
248
183
236
179
162
227
190
189
211
159
205
191
216
191
156
205
186
177
203
194
117
268
174
240
117
137
262
185
171
196
220
159
241
185
182
184
232
200
218
201
225
201
228
160
244
189
201
206
168
224
214
199
131
167
216
199
170
175
220
211
150
212
238
221
218
150
271
188
188
168
243
171
214
189
262
184
172
190
223
131
202
186
222
235
159
211
143
158
201
200
170
235
257
152
191
211
235
219
170
189
210
196
164
232
179
227
173
191
182
149
117
212
228
188
191
183
162
178
265
223
222
195
189
199
235
217
202
175
126
205
192
152
160
166
210
176
186
226
169
209
180
251
165
207
172
157
226
151
190
241
177
156
186
162
229
210
197
203
166
190
138
198
260
217
296
240
210
233
198
89
195
232
253
194
265
240
207
173
230
198
221
232
245
210
176
257
154
228
213
205
228
147
187
188
191
195
181
177
177
188
195
139
206
127
202
197
154
200
240
192
229
157
257
186
225
160
190
232
212
203
233
249
215
99
217
162
237
193
207
140
225
222
198
242
167
220
162
213
181
210
189
187
265
166
167
203
213
177
227
162
178
180
182
242
236
194
200
209
185
182
202
179
190
208
178
169
215
231
156
276
225
243
208
207
142
141
203
172
157
135
220
184
250
197
154
152
189
196
220
187
207
246
186
190
216
192
242
215
172
181
221
230
125
219
166
171
170
151
171
154
245
190
189
190
157
175
225
187
191
249
222
215
235
189
174
114
222
236
169
238
219
284
202
249
183
197
208
209
172
251
223
205
221
174
223
198
166
201
179
207
233
232
267
195
218
247
251
203
175
250
140
225
295
224
185
158
172
240
173
176
235
214
170
164
201
163
230
238
243
170
177
237
275
190
247
242
197
123
228
214
233
166
173
176
202
221
139
200
178
259
157
176
205
180
211
201
235
230
216
240
232
217
189
161
185
226
225
217
179
209
198
255
174
214
241
238
228
169
234
208
178
154
219
130
180
222
191
189
220
206
243
188
176
190
226
193
230
160
196
194
205
230
175
211
239
204
207
233
243
247
219
173
190
207
163
210
153
196
217
147
207
188
223
196
202
185
215
209
185
149
206
133
247
285
183
193
183
198
221
210
194
178
228
192
171
211
209
229
171
197
144
138
185
196
145
281
167
237
235
202
213
201
263
194
213
194
226
207
227
244
214
199
124
154
235
153
255
241
175
228
189
237
178
154
146
228
173
197
222
207
202
186
208
178
207
227
197
156
187
180
225
240
204
222
185
210
238
134
118
198
206
175
159
207
185
174
175
166
258
245
231
190
192
219
180
193
264
148
191
255
246
226
260
188
196
196
199
220
136
179
239
217
221
183
187
170
201
192
241
147
238
226
160
264
209
208
203
227
146
217
176
185
232
216
224
191
220
178
189
243
270
209
212
243
232
189
246
210
161
228
164
210
176
198
163
220
183
158
144
205
248
252
184
185
198
144
236
180
228
233
220
252
153
206
204
192
138
247
101
210
111
231
209
183
184
174
140
195
209
209
223
227
178
188
222
163
226
227
220
253
164
202
195
209
242
213
173
184
175
207
225
218
207
231
238
213
148
207
247
174
187
219
181
216
234
183
166
185
176
211
247
199
223
209
179
197
202
191
235
221
250
191
185
166
189
225
198
180
165
198
179
248
218
153
106
244
238
193
213
240
224
173
177
200
220
182
214
194
129
215
238
253
240
229
133
161
239
171
132
137
242
242
176
192
245
200
234
216
197
224
200
151
224
233
198
227
216
160
219
219
227
219
259
223
209
219
161
207
176
187
218
232
188
199
199
156
133
182
135
172
229
179
147
168
191
108
208
210
245
145
190
215
212
192
183
262
179
166
181
258
159
191
219
158
233
198
216
216
166
268
234
156
155
236
157
226
226
146
233
212
212
181
138
231
181
175
203
169
191
267
215
217
219
175
222
231
208
201
125
230
187
221
241
213
243
213
218
248
104
238
217
217
209
171
252
191
182
211
210
181
211
214
245
234
244
105
212
217
274
218
197
176
197
176
191
182
160
234
220
193
168
127
259
180
181
242
203
138
206
170
218
302
194
148
193
133
231
168
157
182
170
196
203
186
179
180
226
222
150
197
186
195
202
233
248
226
199
229
224
153
168
210
175
201
171
216
227
183
223
157
210
199
193
187
189
219
203
179
197
235
190
213
219
173
131
203
206
216
183
208
163
239
196
189
218
260
225
203
236
195
200
217
229
171
255
217
219
188
191
259
160
216
223
225
238
143
173
202
197
223
181
173
222
256
126
169
192
283
145
195
204
205
144
246
229
189
141
174
228
191
180
242
169
206
225
236
173
191
179
169
211
285
223
248
264
194
209
222
256
197
188
196
114
236
166
263
253
152
206
210
165
210
193
199
173
231
218
191
125
162
190
214
181
222
175
203
182
219
162
205
192
196
249
181
166
227
195
205
177
205
186
217
203
164
186
174
232
250
147
135
203
200
249
198
181
136
265
165
194
174
211
215
191
169
213
227
203
185
208
243
247
173
225
120
225
159
145
191
185
150
239
175
178
205
168
171
227
171
143
200
164
199
155
185
199
226
174
267
214
185
217
189
183
212
210
220
235
203
235
216
177
170
204
187
220
196
213
190
234
174
162
196
196
176
126
203
200
239
221
210
191
173
267
241
196
205
224
239
236
165
200
209
175
203
200
233
158
180
175
190
223
237
157
234
177
207
190
185
195
136
237
189
168
159
219
279
234
246
214
191
248
210
147
172
248
189
188
230
219
194
131
175
190
167
210
222
209
244
184
168
236
204
222
188
199
208
224
214
180
213
229
184
192
224
225
251
201
196
166
205
216
163
175
178
161
149
185
234
195
179
237
249
184
179
166
164
212
201
184
196
137
226
144
133
214
243
204
251
189
221
218
190
168
193
174
214
204
234
167
191
210
248
205
167
164
258
204
209
205
191
244
210
132
166
159
211
275
141
192
167
195
150
246
218
235
209
236
213
188
196
226
176
214
202
151
201
129
199
129
203
186
248
235
193
241
198
241
191
214
186
170
205
190
273
162
250
109
195
142
155
188
158
259
235
207
221
137
170
160
210
196
190
189
201
207
169
224
224
233
188
204
266
248
205
215
170
225
245
198
216
217
186
136
217
177
186
185
222
211
212
202
197
227
143
145
189
264
191
216
178
234
244
176
182
180
181
213
215
169
218
219
198
247
172
270
257
190
149
128
200
166
160
223
169
219
139
233
201
199
210
233
166
195
161
210
139
232
187
226
189
213
188
214
176
203
241
248
174
159
214
175
182
286
226
182
227
234
223
209
217
209
241
280
252
167
179
175
209
189
238
193
181
224
181
179
205
176
234
143
206
240
198
240
259
266
201
227
227
213
206
215
176
193
166
224
177
205
152
148
177
148
236
222
219
154
201
183
218
212
155
192
207
206
172
267
243
212
219
259
171
183
217
154
208
207
197
196
149
187
243
181
219
168
228
219
199
220
157
217
161
201
144
173
227
251
221
250
171
182
188
236
153
174
146
192
210
141
164
168
215
242
172
183
248
177
215
238
228
235
260
249
231
180
189
169
159
147
182
197
224
195
184
216
191
156
230
160
154
163
181
249
147
224
221
217
198
217
209
225
205
227
248
244
192
265
205
189
192
261
172
143
185
242
219
162
245
214
247
195
202
221
231
176
226
244
206
181
157
257
243
223
142
184
233
247
216
213
212
151
202
204
163
194
255
181
122
110
162
177
175
185
182
126
139
185
160
199
185
182
234
177
260
235
202
192
173
154
152
174
214
242
201
168
131
222
222
172
259
212
193
212
219
234
212
222
187
233
204
102
230
224
157
161
209
232
211
190
182
192
193
280
186
224
222
186
209
216
223
179
184
223
221
149
154
295
153
246
180
190
205
197
197
173
320
257
194
219
157
245
225
183
170
216
151
144
241
254
195
171
230
223
239
216
203
276
159
242
242
200
153
235
171
184
230
212
253
177
208
188
240
208
193
202
127
240
264
224
189
178
182
212
218
168
268
163
191
193
229
212
230
231
222
146
237
197
186
209
213
218
142
219
180
194
134
214
205
167
172
190
222
164
126
224
217
249
212
210
215
216
198
169
190
190
157
115
163
239
229
154
207
223
220
231
163
179
202
184
205
157
237
144
211
189
280
155
223
213
183
185
245
166
167
230
234
233
211
195
218
183
185
185
182
206
204
153
230
159
227
203
222
219
219
212
191
224
180
209
198
229
274
126
200
177
224
185
247
200
173
222
271
167
229
152
135
170
157
214
191
210
241
111
183
252
209
235
164
254
179
233
249
188
220
180
164
151
182
129
213
216
222
219
167
231
241
165
215
175
240
240
206
183
122
236
212
193
214
184
231
129
235
177
132
197
251
169
154
170
198
216
228
144
232
216
242
181
246
170
179
214
238
198
236
179
180
215
243
205
148
163
168
211
229
187
194
262
225
223
162
231
221
268
162
208
215
155
162
194
261
209
214
214
210
177
185
236
180
193
116
188
188
194
199
148
227
223
144
144
178
174
205
230
245
181
239
209
195
208
195
207
224
250
214
181
230
157
163
222
190
209
175
187
229
211
138
180
253
168
251
187
207
251
111
193
171
175
175
177
225
207
235
199
131
239
225
230
173
147
206
159
257
209
203
260
205
239
202
189
215
184
231
201
199
226
260
180
187
200
194
166
171
265
213
229
174
121
166
167
181
227
244
193
177
207
245
238
186
163
205
199
261
169
126
132
235
197
216
250
213
220
181
186
200
184
203
199
137
168
216
118
176
216
215
220
196
253
246
218
203
240
202
203
241
148
205
194
117
192
198
223
123
179
148
233
223
222
158
236
240
191
165
180
228
169
171
193
203
207
176
230
160
207
225
206
174
236
247
173
199
167
221
173
175
209
247
198
119
242
149
278
217
236
206
221
216
165
235
165
176
202
208
181
185
174
221
202
186
278
202
206
161
195
192
160
226
213
251
199
186
193
181
190
208
214
199
207
190
214
245
250
217
185
230
230
142
222
171
213
194
177
181
215
192
212
188
234
195
219
166
211
176
211
150
171
198
190
216
237
221
187
209
199
209
192
181
171
226
153
231
190
230
188
223
183
214
264
210
153
177
182
121
254
195
150
233
164
179
192
158
198
212
219
162
158
196
194
209
211
191
193
196
181
248
216
183
205
165
228
216
197
236
155
120
214
172
211
195
253
257
173
214
220
285
163
166
253
231
218
209
164
211
185
145
144
246
179
212
187
218
169
137
232
197
197
200
199
214
198
186
221
215
136
176
210
270
223
149
224
239
184
241
191
266
207
197
172
166
219
239
182
237
249
186
265
217
182
170
151
169
187
165
265
209
222
235
202
185
195
140
259
246
195
241
223
202
242
181
206
160
188
187
221
175
190
192
277
161
196
215
186
236
210
153
123
215
172
153
204
209
238
173
202
228
190
198
238
217
221
243
230
160
199
216
174
164
229
247
238
254
180
211
260
206
241
201
172
194
192
131
210
171
184
185
243
167
208
133
191
238
199
192
178
158
244
145
214
228
217
204
146
166
211
221
167
221
197
196
109
198
261
173
253
236
248
188
186
243
247
211
196
222
149
232
151
208
212
199
199
189
219
217
128
206
191
158
194
258
196
214
208
159
238
237
219
163
196
247
202
168
156
215
242
216
191
227
154
231
219
235
228
252
212
224
218
195
236
160
228
197
227
226
191
171
230
213
188
207
199
255
257
267
219
238
211
177
144
216
145
220
272
239
167
195
221
205
182
206
223
219
225
190
214
240
216
182
267
169
209
204
207
198
258
178
219
170
227
217
198
148
151
262
176
243
210
194
157
154
250
201
196
235
168
174
138
217
191
167
190
158
167
148
234
185
210
179
173
179
135
211
190
217
227
193
141
166
239
220
220
143
166
223
196
197
222
241
181
223
223
204
169
168
161
160
240
158
174
190
209
167
206
226
242
198
200
178
187
222
203
245
163
149
185
170
214
208
214
181
221
182
196
246
178
180
232
141
123
225
191
206
167
243
200
188
192
182
232
218
190
250
173
216
155
184
164
150
208
181
106
229
222
243
241
150
175
159
249
237
164
221
166
201
238
219
229
148
198
159
221
264
195
175
236
186
230
220
212
270
218
156
189
197
189
211
194
170
248
152
221
117
230
177
198
196
212
249
190
247
158
168
175
213
175
205
215
189
161
251
168
233
251
238
233
255
174
198
183
184
223
195
214
190
232
256
147
200
272
295
200
289
222
208
248
214
183
197
187
224
199
208
174
198
199
200
182
185
223
246
212
165
225
202
169
278
193
147
214
221
208
134
189
207
142
269
170
152
187
255
208
222
244
177
173
180
162
172
201
155
250
239
204
144
169
159
196
273
236
225
154
165
239
221
245
194
197
256
186
200
166
176
233
170
178
233
229
257
225
202
181
203
205
221
215
170
244
171
223
172
192
241
169
156
182
207
240
192
207
152
240
153
205
181
194
210
243
201
218
197
184
150
237
221
214
240
212
202
269
228
240
206
150
165
190
209
227
250
170
213
240
232
154
215
128
176
208
230
219
243
165
234
193
256
214
211
207
189
224
190
192
209
193
245
173
212
215
201
231
183
203
145
182
181
249
215
143
234
236
225
178
217
231
165
178
194
196
170
236
204
209
148
145
283
208
225
167
213
184
201
192
159
148
247
188
233
146
247
254
247
224
191
197
171
209
229
202
197
212
200
195
201
171
173
75
283
208
232
189
177
209
185
205
215
199
232
178
188
171
217
166
235
109
173
163
219
224
204
129
249
178
218
205
197
218
151
140
187
207
210
212
123
200
160
181
195
199
203
198
135
210
236
185
122
114
194
207
210
220
246
195
111
178
147
214
202
251
174
232
203
188
260
148
179
223
209
193
184
212
207
208
185
192
181
190
209
202
189
136
164
246
218
234
254
225
241
239
230
205
233
223
161
212
219
199
161
174
159
169
169
204
168
205
238
212
225
168
191
207
169
129
203
172
202
174
138
191
200
216
215
230
219
204
205
177
243
135
232
179
179
261
165
220
181
244
179
211
199
185
189
173
190
118
196
175
144
200
219
246
191
222
192
203
179
183
214
199
149
220
226
226
207
191
188
191
166
170
205
212
207
237
132
234
189
148
255
259
210
249
160
131
180
224
218
146
193
215
154
243
255
193
203
244
154
217
192
175
185
178
165
131
238
222
150
208
180
148
226
191
206
135
173
195
200
206
217
155
136
262
169
268
183
241
215
141
243
202
129
190
249
151
180
216
230
139
196
275
224
274
238
195
229
179
203
229
198
193
148
210
196
188
175
209
198
201
190
214
194
253
168
216
201
203
216
197
203
241
154
180
247
195
242
170
206
155
137
190
211
208
224
138
202
196
154
219
221
210
156
141
172
203
190
236
184
231
212
180
184
166
151
204
165
176
202
209
213
208
273
201
150
255
252
236
191
195
154
221
212
227
113
216
201
208
252
184
169
215
186
244
98
231
204
193
213
156
264
226
198
207
212
179
246
228
144
240
238
142
197
228
167
211
221
214
202
248
218
218
227
234
184
221
207
209
182
156
215
195
234
165
257
214
219
153
240
192
184
217
212
141
204
217
178
173
199
215
166
231
208
213
227
247
198
242
228
235
240
168
186
229
246
158
176
179
215
187
204
172
203
211
133
212
161
218
281
216
215
203
201
204
129
218
239
183
183
161
170
237
186
249
200
199
199
228
238
198
203
195
159
208
133
224
165
236
277
249
192
218
149
218
157
218
168
201
175
209
166
209
208
188
180
218
238
209
211
186
210
175
157
179
186
268
199
154
262
283
180
210
228
179
114
150
204
237
209
215
190
213
208
184
214
225
214
180
181
191
209
195
223
257
201
160
235
156
207
176
230
109
218
179
212
212
182
160
198
165
180
257
186
182
236
163
153
186
168
264
109
198
234
207
167
203
213
231
244
168
180
185
159
147
218
194
177
220
181
173
223
265
176
169
171
205
241
197
244
183
143
241
222
192
192
187
151
217
163
168
235
196
266
177
184
245
193
145
188
184
219
245
201
226
228
217
249
215
190
257
239
226
216
242
208
148
182
228
190
248
222
208
211
165
221
154
195
276
216
152
179
189
217
161
219
235
223
213
197
193
196
189
219
216
135
187
233
213
172
254
241
150
237
234
205
208
234
220
238
199
197
127
203
174
171
217
234
141
232
237
231
185
263
196
234
172
249
160
207
266
179
192
154
223
207
268
180
221
240
169
168
183
185
183
269
186
174
190
247
152
197
221
215
204
228
209
230
240
175
204
232
176
198
237
190
160
227
204
195
185
237
237
194
196
184
208
212
211
178
201
191
209
250
266
230
257
210
253
176
215
143
151
204
138
193
203
202
138
233
163
153
194
167
191
250
193
245
157
215
255
223
195
236
234
129
187
145
202
264
172
189
204
193
245
231
163
238
165
185
173
244
224
181
160
260
179
215
203
241
176
237
226
164
226
190
161
159
232
260
151
186
202
130
227
159
139
176
154
233
135
150
164
213
159
158
186
155
204
244
229
227
217
219
188
278
193
231
245
157
226
238
244
159
228
187
246
253
176
157
146
206
175
193
198
192
234
161
152
161
199
222
193
193
126
226
203
168
199
156
219
164
186
159
227
128
183
238
212
212
217
237
198
238
228
211
208
214
210
221
233
210
241
214
193
233
215
228
205
201
229
207
218
155
261
252
192
218
186
275
159
249
259
209
190
155
168
195
208
239
197
163
165
179
235
160
155
221
233
186
199
282
194
195
229
202
181
261
221
181
202
146
239
190
154
195
215
232
202
228
172
173
223
243
176
173
176
199
232
224
201
201
184
279
120
137
225
144
175
169
231
234
214
194
199
211
221
247
180
186
262
246
175
213
240
225
202
197
122
239
188
178
235
166
154
193
170
207
207
270
164
208
137
229
183
208
195
174
201
192
176
218
195
122
249
179
212
183
209
228
206
220
176
206
195
183
287
223
207
242
205
236
176
137
171
196
187
248
218
193
187
246
172
94
223
214
185
204
184
177
201
208
223
162
201
208
210
231
225
224
203
187
221
199
188
236
145
227
218
168
218
145
150
219
203
175
213
139
248
224
184
188
235
208
194
180
193
193
236
163
277
226
177
216
222
182
144
184
240
193
128
265
132
245
216
211
218
199
232
240
177
225
184
214
84
252
179
216
186
168
162
146
153
195
157
209
247
128
204
186
210
258
231
253
250
245
193
221
171
244
251
176
177
174
188
223
187
168
241
142
181
246
204
170
211
173
209
182
248
227
182
230
196
203
216
211
124
200
189
147
191
213
234
222
194
123
230
201
169
292
235
227
162
249
190
240
180
236
209
201
207
170
176
267
179
175
235
192
159
232
246
189
167
210
169
206
175
204
198
172
175
209
156
280
210
202
228
194
220
186
234
195
192
242
187
150
241
189
185
162
218
205
209
148
229
192
210
222
176
246
197
220
153
169
176
205
243
211
190
251
169
202
220
193
233
129
208
220
231
213
218
189
123
199
259
202
192
193
144
218
255
202
198
193
206
235
306
175
244
180
134
261
194
162
174
187
206
184
217
239
230
188
171
185
250
209
172
247
219
194
167
198
229
179
253
159
188
172
208
211
139
217
234
266
210
225
209
187
177
193
227
232
215
242
236
145
238
196
159
190
246
237
218
222
194
222
202
246
172
217
230
170
149
200
226
214
223
275
180
129
184
182
254
182
158
225
183
247
176
241
262
206
152
241
213
216
198
143
228
187
181
147
224
201
164
206
212
239
230
221
138
210
229
221
211
168
154
243
144
169
200
189
153
241
266
191
287
201
208
183
200
167
183
213
201
165
171
150
145
162
198
235
182
247
183
240
124
223
232
182
197
171
181
212
195
257
211
207
210
187
276
198
230
197
191
216
194
237
164
208
227
225
191
259
262
165
233
252
221
209
205
138
245
183
210
201
183
175
173
195
197
153
226
188
202
203
235
226
185
194
251
100
229
151
224
202
188
180
201
172
180
206
220
152
178
168
218
220
175
190
167
213
209
184
225
194
239
183
210
203
212
251
187
209
163
204
172
224
207
167
206
206
231
141
202
251
226
221
160
184
171
210
180
214
222
146
202
209
227
192
167
218
144
209
201
209
205
231
237
207
209
216
219
194
231
222
222
198
192
251
183
214
224
226
247
162
236
164
180
115
225
232
191
152
215
172
233
228
164
261
236
210
185
170
146
211
203
229
224
168
232
205
185
242
206
167
145
275
197
281
254
232
165
180
175
283
193
181
261
197
212
252
240
214
220
193
223
178
273
153
242
211
201
212
163
222
220
221
157
229
219
120
213
197
224
209
235
228
204
145
235
239
264
217
195
238
213
182
206
167
213
222
176
120
253
247
192
187
220
245
191
170
269
192
160
249
247
252
249
133
199
180
179
188
163
244
193
172
196
233
219
112
229
211
203
241
222
168
132
145
223
208
201
182
140
161
189
189
168
229
170
233
187
245
236
170
233
227
219
174
227
211
159
206
157
257
171
219
155
190
192
275
136
200
218
210
236
244
275
221
203
230
192
176
242
199
160
274
158
238
170
228
224
215
213
161
200
217
152
161
194
218
241
186
245
136
137
206
223
185
131
183
180
165
195
240
183
115
210
153
164
220
247
156
242
182
228
175
262
193
192
200
180
210
173
181
189
177
170
246
227
238
166
213
222
223
174
215
147
218
162
139
180
208
207
249
247
200
229
290
219
213
161
220
244
211
234
195
258
144
224
263
196
193
243
174
160
204
178
190
161
196
159
168
144
250
184
166
146
234
180
229
171
215
200
226
197
206
251
197
230
188
119
228
145
202
235
122
246
170
155
236
256
139
225
230
276
163
195
119
164
250
226
148
255
208
229
228
200
211
193
190
191
222
176
146
189
196
208
269
224
249
199
154
208
179
229
159
207
209
164
224
210
161
87
122
204
208
199
226
172
182
155
192
185
194
215
157
199
228
204
236
169
172
158
181
199
198
179
193
183
186
166
140
201
233
239
196
202
205
186
216
222
217
208
177
189
233
179
272
148
190
154
250
198
192
232
232
232
153
222
157
250
173
213
244
210
227
219
101
172
201
184
214
177
218
236
196
223
184
227
186
160
255
214
257
194
177
254
224
185
275
244
168
147
148
217
189
217
183
263
150
207
166
195
203
213
190
208
151
135
229
215
203
205
168
191
240
186
208
255
165
202
204
210
205
181
171
180
220
180
205
119
182
160
116
215
221
140
171
149
180
221
218
170
195
229
208
208
249
201
250
137
186
209
188
181
209
203
233
186
249
197
160
180
197
206
209
180
157
201
138
198
221
203
172
190
175
228
217
149
249
208
158
210
178
215
196
144
199
253
164
232
231
209
211
228
170
197
154
232
200
182
218
222
210
124
255
147
247
172
237
229
198
161
154
189
190
174
199
161
174
221
288
205
210
252
204
170
236
208
197
234
224
171
202
223
211
197
242
200
181
219
156
175
168
194
198
174
197
255
171
238
205
165
206
222
195
246
172
243
174
242
135
258
177
251
226
230
234
145
144
214
234
197
191
180
157
218
191
220
190
220
179
195
241
190
160
173
236
174
138
191
199
188
221
239
246
241
179
219
166
185
186
202
230
232
224
198
231
229
198
181
229
207
180
193
201
188
191
186
145
194
230
177
223
231
246
255
208
203
165
245
171
214
189
225
243
281
212
212
201
213
160
194
218
168
187
162
196
251
227
225
188
211
200
242
204
206
157
163
166
165
187
213
239
217
165
229
213
177
194
217
205
143
241
183
129
205
252
191
165
184
192
149
263
189
125
240
211
175
195
250
164
189
199
155
201
216
225
176
139
207
227
191
164
264
179
224
177
142
234
255
192
163
162
166
161
231
215
217
224
228
207
257
161
199
166
231
198
229
239
210
221
262
196
181
226
242
158
183
184
211
273
216
182
174
179
192
178
214
201
184
230
166
255
207
231
173
200
178
199
223
156
243
222
229
286
181
218
163
225
193
123
173
264
192
284
235
280
177
232
198
241
234
224
177
231
232
171
190
194
214
201
253
226
236
203
193
181
234
218
189
190
231
192
172
214
146
211
177
216
185
228
264
228
219
210
211
147
130
241
246
154
198
146
168
183
210
228
196
203
198
241
273
206
156
229
187
209
230
185
220
235
217
229
257
232
268
184
194
233
200
238
248
224
202
229
235
262
157
256
197
143
194
216
188
161
191
198
240
187
242
226
172
211
193
245
201
202
187
214
206
195
254
172
217
185
163
192
177
165
163
230
197
133
141
206
167
219
218
222
163
209
208
261
142
216
184
183
182
174
195
220
162
223
194
253
139
205
155
201
170
249
181
189
234
223
142
203
256
252
244
236
202
259
172
190
196
159
240
215
174
186
161
156
227
210
175
150
180
236
230
237
215
173
240
167
212
168
162
181
224
182
130
166
217
204
160
196
166
224
220
197
228
221
241
199
167
172
206
248
95
228
181
163
131
178
165
214
187
186
185
211
183
220
168
185
196
208
250
212
157
190
262
189
206
213
138
158
242
156
178
221
159
161
247
181
233
205
129
248
222
164
141
184
167
212
237
201
259
205
241
132
183
184
188
141
205
237
201
216
192
142
130
266
220
217
151
207
221
253
189
153
181
203
189
240
131
244
259
196
188
208
209
154
203
204
191
204
262
183
171
221
203
186
187
196
239
226
182
152
200
211
234
187
197
190
172
174
250
245
128
229
190
225
222
198
195
204
286
239
186
160
221
169
140
221
162
170
141
127
235
292
118
185
210
240
216
206
167
256
181
185
166
180
187
208
179
205
188
273
214
251
264
187
161
249
133
214
117
197
110
181
239
215
153
263
202
244
189
182
229
179
159
191
201
186
237
216
183
198
177
255
218
202
180
237
186
171
183
193
195
201
207
198
232
196
207
151
200
211
188
174
141
190
254
210
191
214
187
194
221
157
219
246
250
163
244
222
194
158
177
208
235
192
167
213
172
304
226
182
242
232
213
237
139
211
233
122
239
248
228
162
221
238
173
182
181
224
155
162
212
195
300
168
142
197
228
190
184
210
196
184
138
231
164
92
258
213
140
215
178
233
158
287
260
267
161
272
149
217
177
229
169
259
185
208
189
237
211
151
202
95
191
213
123
233
210
188
202
242
200
181
170
222
152
209
213
182
203
227
187
228
161
216
193
213
233
236
202
244
153
189
187
177
195
179
208
161
172
192
210
273
196
206
188
207
165
161
198
260
259
215
203
168
139
175
201
170
167
186
168
197
191
252
241
187
193
199
213
254
258
213
244
162
156
182
153
206
117
193
177
217
265
231
225
274
213
248
221
198
217
255
208
211
235
183
176
213
188
161
206
138
243
168
222
195
240
273
221
204
235
184
180
206
202
175
183
200
170
242
189
204
160
177
246
199
200
197
215
228
232
143
258
173
137
193
237
155
212
183
192
140
230
215
199
253
183
211
206
199
231
145
195
179
220
144
233
242
236
240
156
192
209
187
221
221
247
195
216
185
286
212
173
131
226
224
241
117
201
181
196
219
192
185
243
201
213
273
188
190
187
256
177
195
120
269
214
166
216
152
206
178
219
223
210
199
201
201
211
230
197
191
231
190
172
228
217
207
168
153
242
230
178
167
237
125
171
150
218
227
221
166
182
189
163
239
175
134
186
218
244
226
191
205
218
161
158
226
194
193
229
213
194
252
172
176
161
135
227
208
135
248
217
277
193
245
156
173
252
236
190
176
170
217
212
229
204
191
166
187
261
237
167
226
160
264
251
233
211
264
219
267
144
206
196
166
200
188
165
150
234
215
188
173
153
219
168
154
190
224
238
203
170
180
143
213
239
140
231
219
245
203
211
160
266
205
157
208
193
225
170
243
204
249
220
177
228
167
147
160
176
189
151
139
246
182
223
193
226
203
192
133
232
161
216
269
163
232
209
202
309
204
236
176
193
245
186
259
220
153
253
185
204
202
258
163
256
194
185
235
237
182
158
205
165
154
272
136
216
264
175
257
189
219
201
170
184
159
199
155
192
213
201
238
144
222
153
217
212
113
128
221
209
183
193
194
232
235
182
223
186
192
202
174
204
213
226
190
202
239
252
200
206
168
164
176
182
176
175
217
264
254
204
222
207
180
259
184
214
201
180
186
249
182
251
186
198
135
239
140
184
181
233
196
230
228
217
180
157
122
202
225
176
212
242
261
164
179
200
180
187
211
195
247
141
229
196
170
146
212
187
163
185
210
236
194
236
203
166
190
239
253
228
188
215
226
156
246
240
220
180
187
170
169
173
170
186
179
161
182
203
220
193
232
170
245
199
168
172
170
241
182
212
197
164
220
229
229
235
207
151
207
216
187
235
217
248
188
257
258
215
166
172
205
189
229
205
172
207
220
251
226
198
211
196
166
209
192
243
215
195
193
184
277
185
195
254
232
235
191
162
241
159
218
208
187
176
169
242
171
239
186
208
220
155
155
243
235
239
161
191
187
37
176
195
197
242
209
170
204
223
189
187
201
216
208
207
226
191
207
252
229
216
228
254
259
237
202
157
217
182
180
202
184
125
174
233
234
188
183
167
207
243
245
186
156
183
214
219
130
188
193
204
166
192
210
177
237
134
232
145
217
247
155
264
210
242
203
188
214
221
262
197
240
239
171
178
233
194
223
191
240
214
240
199
178
203
174
222
205
214
206
183
196
181
230
187
163
214
176
151
286
163
167
162
239
201
231
179
166
154
177
223
229
164
202
188
158
244
203
191
203
234
243
216
183
183
220
152
188
132
181
188
190
170
194
195
180
230
162
203
235
208
199
186
202
188
196
227
141
197
171
144
161
127
219
185
206
180
177
193
219
251
173
228
192
239
167
251
222
181
233
186
242
206
263
185
254
237
171
205
197
227
235
252
186
247
201
155
247
189
179
204
246
212
238
162
169
193
193
182
145
171
243
206
192
263
256
140
249
205
259
225
150
218
207
238
210
192
196
219
253
199
233
189
147
181
154
189
212
234
187
228
169
210
182
245
232
201
202
181
195
227
169
133
248
174
154
223
192
180
232
215
192
210
196
201
214
169
239
144
262
223
230
167
181
169
226
179
169
222
177
198
257
132
168
177
221
254
179
282
221
221
201
191
184
217
185
137
151
185
238
156
185
206
232
232
215
158
177
191
226
223
246
219
230
192
165
102
201
254
236
145
171
250
192
241
222
128
217
180
185
239
173
221
204
257
201
243
197
148
186
185
173
150
181
199
200
257
189
228
220
147
179
187
189
283
226
229
213
183
231
181
207
188
214
219
168
162
142
228
193
216
271
232
227
233
144
243
196
229
204
209
189
242
183
200
236
211
107
236
193
216
222
219
152
216
186
226
221
222
169
204
162
255
217
154
218
191
171
192
242
154
168
175
229
191
196
123
246
185
199
214
211
143
172
183
216
206
153
209
235
238
242
188
210
208
229
160
212
210
176
161
213
208
169
153
214
189
197
196
177
229
179
223
115
161
248
174
272
196
185
242
182
250
191
260
235
179
183
265
146
171
235
203
154
214
243
213
214
233
251
232
233
267
168
220
158
195
215
205
242
182
162
171
242
201
223
229
172
191
288
208
179
180
226
87
162
206
214
237
231
178
252
236
202
145
182
186
189
226
179
167
249
200
175
202
214
126
197
159
222
228
263
191
211
239
207
201
211
220
175
238
180
217
158
191
191
135
202
192
107
181
225
223
183
212
208
224
234
230
123
241
213
232
239
231
185
238
157
229
192
215
244
239
219
205
239
202
234
235
166
189
202
204
211
203
155
230
143
171
237
186
239
224
195
197
149
167
217
219
169
185
164
234
233
200
248
144
260
206
200
179
209
201
182
237
229
250
231
213
180
196
156
167
208
198
225
169
208
138
212
204
224
208
238
151
218
190
148
161
110
258
223
183
225
169
170
159
139
222
244
204
201
216
181
206
197
220
201
232
229
198
250
152
183
187
265
184
266
174
113
219
193
185
232
230
189
127
197
225
216
208
202
227
223
223
208
257
188
199
241
171
221
225
217
144
124
222
217
261
164
246
193
192
210
204
211
194
238
211
246
203
139
235
239
178
179
211
266
209
116
173
208
181
185
225
211
214
233
170
202
200
225
173
205
249
186
199
253
216
204
146
236
199
184
188
201
188
240
150
210
207
236
218
136
240
229
188
198
215
227
178
208
186
184
184
197
241
261
209
233
173
150
231
233
187
164
240
210
229
207
248
172
224
221
201
195
216
213
206
199
143
179
158
208
249
192
194
205
250
198
160
236
216
194
241
165
177
228
251
149
137
101
152
159
203
226
150
176
153
180
192
190
191
214
177
142
206
171
256
205
169
215
244
273
207
169
186
204
163
173
196
279
227
136
231
273
216
239
223
235
250
140
175
160
156
183
199
227
201
252
228
200
183
188
191
182
179
271
151
208
225
175
187
229
193
138
157
251
179
187
168
175
214
243
198
178
215
178
183
200
140
163
178
145
210
168
226
247
238
231
243
206
193
206
157
206
228
252
159
210
196
210
214
215
198
274
175
221
223
121
257
219
203
168
155
173
195
153
184
213
190
155
210
194
241
164
176
193
158
205
208
202
193
195
178
193
225
159
214
207
246
178
213
126
253
224
206
179
221
222
166
168
236
170
177
235
206
223
213
184
231
183
224
187
252
215
187
188
187
230
186
214
174
211
184
185
153
227
144
219
157
184
194
174
195
176
159
218
133
236
212
199
223
224
219
205
250
206
220
177
129
233
176
204
259
196
139
223
242
229
260
179
193
228
147
184
159
206
244
155
211
241
231
183
212
250
181
184
203
201
212
212
173
234
211
222
222
227
205
229
200
147
164
231
219
179
219
192
120
185
160
155
190
200
201
211
201
132
276
191
180
236
204
154
211
181
164
188
203
233
185
224
246
209
164
172
188
230
196
176
244
246
163
215
172
192
263
163
234
151
206
185
169
159
211
232
256
184
244
248
208
172
257
216
228
151
221
265
189
183
231
197
241
240
222
248
243
178
241
222
171
210
180
197
211
208
163
248
197
216
183
182
184
197
204
180
202
206
190
220
222
204
206
177
247
208
239
172
219
162
193
176
189
184
208
197
174
229
202
128
205
252
204
168
213
186
185
238
171
125
196
219
250
203
213
204
208
203
207
172
241
165
202
207
169
219
206
166
223
236
232
236
230
139
166
196
198
145
213
208
174
182
200
246
205
148
201
187
232
156
116
246
204
141
202
227
184
222
185
204
130
229
177
181
168
271
233
175
147
153
213
157
208
191
229
182
142
259
192
242
206
156
196
135
167
182
278
186
235
198
191
196
249
183
222
168
211
203
215
285
220
180
131
162
165
172
194
247
210
198
228
149
246
245
246
202
226
258
234
213
222
212
189
177
217
247
209
215
129
201
171
209
182
204
167
167
184
192
212
258
216
235
187
146
141
202
215
199
236
229
201
163
187
236
259
232
183
206
162
177
135
230
246
182
197
249
152
187
203
135
229
143
146
171
226
189
186
283
219
200
267
202
165
206
193
168
187
248
209
233
203
167
199
242
228
222
225
195
199
229
252
165
188
209
148
130
204
202
200
206
206
199
173
236
158
195
221
195
213
204
155
150
253
212
188
250
203
170
234
177
217
221
173
239
152
211
214
215
238
273
183
186
156
172
241
177
181
236
202
168
197
158
186
207
222
122
244
211
162
146
171
215
204
216
207
151
181
110
197
184
145
168
226
199
227
162
221
211
210
206
199
223
211
196
184
183
184
160
151
198
197
201
196
204
201
189
139
195
262
234
269
211
211
224
201
180
221
192
244
204
193
240
248
227
175
195
161
234
202
184
202
172
180
180
221
187
220
195
239
214
193
218
219
126
251
177
189
183
160
260
215
214
171
162
176
196
221
207
211
192
149
238
217
229
191
234
282
157
239
234
198
195
178
171
239
164
234
252
253
204
224
265
201
190
231
272
251
203
178
208
220
157
188
212
180
152
135
206
182
199
179
163
187
232
204
245
274
264
183
197
184
196
266
222
200
235
148
172
211
234
229
238
160
244
172
198
205
180
175
170
227
183
169
236
233
186
194
198
161
240
189
213
211
233
177
205
237
193
210
239
229
111
227
243
227
151
198
217
228
174
145
115
195
173
199
211
185
195
219
248
236
268
111
155
227
211
183
157
162
254
152
259
216
220
278
198
166
157
177
242
190
257
169
152
156
214
210
197
239
252
158
237
173
216
228
193
194
206
213
185
243
162
222
148
190
207
144
231
243
174
236
209
202
192
221
186
192
188
188
193
199
198
172
206
212
159
179
157
218
165
188
213
215
189
213
182
207
262
160
184
117
202
159
194
251
201
259
182
195
242
189
179
171
191
208
216
203
249
155
195
146
205
169
150
230
179
206
217
206
203
220
183
186
211
216
253
186
249
236
179
228
258
206
278
198
162
176
160
221
207
150
176
190
250
170
233
224
213
242
187
163
144
124
239
212
162
232
161
198
194
266
210
158
208
208
200
175
220
204
167
194
213
168
181
142
246
235
223
201
231
249
246
175
178
205
229
222
220
249
164
218
168
165
207
226
208
203
241
193
263
161
146
184
221
201
213
202
200
172
170
222
243
172
175
171
185
233
182
221
187
240
245
209
174
204
169
145
231
194
249
256
154
216
209
200
186
139
175
226
180
162
233
217
219
212
233
156
192
110
179
195
210
252
195
195
209
242
167
205
236
265
205
206
184
209
204
179
164
221
181
183
210
249
279
189
225
250
212
240
212
184
220
225
195
237
212
193
237
195
189
199
221
297
211
168
213
190
185
199
199
184
203
173
222
203
230
232
197
172
219
208
160
205
207
175
168
170
260
186
211
227
246
156
186
252
220
282
254
190
180
207
233
198
183
234
175
176
186
218
177
180
231
199
160
201
252
179
229
207
210
178
178
206
176
246
150
175
192
166
240
166
177
197
280
177
209
186
202
206
222
209
265
204
227
191
167
235
239
199
176
187
233
252
225
231
217
158
176
254
225
167
210
206
191
227
209
258
219
169
162
215
209
173
198
208
234
209
214
166
178
205
232
237
232
218
196
201
204
244
114
166
239
173
229
159
215
158
171
211
158
164
191
265
223
231
191
211
166
222
231
191
186
194
160
210
196
210
214
187
176
205
174
190
167
175
241
172
203
151
190
194
197
205
214
228
236
225
219
248
169
186
251
208
181
142
244
274
189
173
167
251
192
223
186
199
162
192
220
181
211
154
242
194
138
259
169
206
144
172
220
161
203
209
246
234
237
230
140
191
186
198
172
228
283
217
212
236
115
169
208
203
248
145
187
175
143
174
190
202
220
200
185
217
179
236
184
191
197
183
248
155
190
191
282
217
218
215
133
197
226
179
205
198
213
179
222
195
196
229
214
164
180
224
256
201
243
233
238
160
236
219
182
174
261
181
190
181
249
201
212
187
169
161
230
204
192
268
118
209
222
216
171
181
227
216
203
163
207
166
219
186
193
78
174
205
230
212
169
215
251
272
199
217
278
214
211
219
134
211
120
248
159
227
155
205
209
191
186
257
235
239
226
236
209
219
218
217
151
213
220
223
273
235
175
179
218
202
150
239
133
212
272
198
225
154
243
175
232
109
175
205
210
157
213
202
205
174
157
207
253
198
215
179
163
212
261
210
126
178
162
229
143
250
138
194
114
212
161
252
245
275
234
211
214
190
212
238
213
236
182
194
180
185
156
152
198
194
215
191
189
190
235
211
227
195
141
195
136
200
184
191
218
149
170
252
192
234
209
239
171
136
120
239
159
170
233
190
253
178
204
155
232
250
171
260
283
183
170
160
183
202
180
160
158
260
241
238
228
226
271
207
224
164
258
203
155
155
197
235
191
218
233
198
205
186
188
191
191
139
163
175
202
189
169
186
175
126
212
241
225
234
167
236
234
170
198
235
191
126
222
136
153
207
189
131
202
197
133
207
207
174
190
234
132
169
269
241
156
245
180
211
212
207
201
195
160
201
87
197
207
191
202
130
137
236
235
260
183
177
180
207
175
140
198
192
175
175
151
250
235
142
226
215
195
245
190
215
200
212
200
205
218
193
262
188
171
147
199
229
236
160
176
238
206
212
241
202
230
175
279
237
257
227
257
220
226
187
202
195
196
197
241
167
191
193
232
150
167
208
185
137
165
215
131
193
209
192
191
204
163
203
200
197
182
205
155
292
185
249
161
184
157
211
108
177
198
210
160
180
220
202
225
211
238
215
273
156
180
199
220
203
214
220
130
156
209
196
189
201
213
231
189
161
219
191
178
236
212
162
244
225
148
204
217
182
220
177
209
212
210
258
187
229
260
214
256
223
165
189
193
215
176
226
178
186
138
174
169
162
210
228
242
194
176
203
197
223
187
169
194
195
200
255
203
170
231
207
174
201
206
200
232
231
210
215
209
219
172
185
232
218
182
208
276
223
238
208
249
192
128
122
276
175
248
258
211
158
177
204
170
198
163
172
191
177
202
246
201
159
203
229
201
138
194
150
159
243
219
200
212
228
231
211
139
171
210
164
189
130
185
186
182
185
147
208
235
185
215
159
182
196
250
181
167
233
184
198
185
195
153
168
214
242
189
199
193
220
227
255
200
236
233
258
240
224
207
129
234
172
248
212
189
243
196
215
220
187
170
151
225
193
185
220
209
229
241
192
194
222
204
193
193
240
158
218
215
243
207
229
194
296
209
153
277
227
217
144
168
164
203
222
196
255
157
220
143
196
232
199
205
172
246
200
161
197
248
216
194
185
209
177
234
206
173
148
210
160
221
206
198
206
251
195
212
182
215
195
180
245
209
243
256
219
211
215
192
197
190
196
179
202
214
173
150
204
208
214
193
193
153
213
223
197
220
216
189
171
190
207
219
157
187
180
178
223
179
264
249
249
144
149
183
160
141
179
180
212
129
190
181
230
146
187
179
213
223
258
259
223
220
217
193
220
117
117
139
252
149
181
159
244
165
216
160
249
205
260
210
174
251
274
199
203
241
213
235
255
188
246
210
237
213
236
219
187
200
192
219
218
164
179
218
256
150
194
230
211
172
206
186
197
193
157
245
230
196
167
219
237
218
220
169
221
73
162
214
189
209
232
243
201
245
159
167
228
136
134
282
178
177
201
193
173
213
138
233
178
180
173
123
170
204
168
173
146
172
200
179
189
210
183
120
243
225
169
199
196
213
190
222
169
199
248
194
187
172
152
157
201
206
190
207
201
119
209
229
240
188
208
254
238
194
193
206
189
217
169
192
230
185
199
200
203
271
243
196
175
165
147
156
188
211
181
260
186
184
222
143
175
166
217
225
224
182
220
240
181
229
235
233
237
181
213
192
225
155
198
195
219
282
163
195
219
185
197
206
200
224
186
173
182
135
208
197
186
99
195
247
215
177
231
158
203
211
133
237
199
169
179
166
255
267
138
185
196
197
231
213
209
154
244
212
166
194
205
222
169
177
199
171
223
241
182
217
197
241
149
220
213
218
228
222
221
236
215
196
171
198
224
188
185
158
232
204
156
184
195
172
243
246
204
173
193
233
160
224
266
267
173
176
214
180
166
220
223
207
175
153
166
210
237
210
173
192
176
214
230
221
182
180
176
201
222
150
213
176
241
165
251
196
237
158
194
171
184
217
192
169
200
170
216
198
206
227
203
202
229
214
193
207
199
222
214
161
237
199
152
172
161
183
221
160
216
225
176
184
186
188
188
179
239
189
200
186
227
218
169
183
157
179
141
221
193
211
247
238
225
231
237
211
195
226
210
221
186
203
207
170
206
255
214
220
120
175
175
188
231
192
208
138
237
195
171
204
224
224
209
213
195
232
182
165
196
152
182
178
215
213
230
147
220
192
155
220
207
253
204
252
226
189
202
148
196
208
227
166
170
213
183
170
181
196
156
245
194
214
209
188
158
204
232
200
148
235
166
233
192
197
168
195
225
223
203
211
155
206
218
164
263
148
164
189
212
185
203
196
209
209
230
200
162
262
181
198
161
171
264
218
254
212
275
208
245
225
190
165
240
224
265
266
196
161
194
252
159
224
232
214
203
176
241
199
213
238
167
160
187
216
232
209
191
165
266
154
231
210
167
195
243
204
205
287
183
189
230
181
210
216
203
214
196
187
157
139
205
163
223
180
195
211
189
197
210
252
149
246
220
180
142
153
223
192
182
242
174
155
215
219
208
235
191
194
98
171
213
181
206
279
177
149
218
199
254
221
198
185
141
239
206
233
192
173
246
183
198
168
171
154
244
209
207
251
259
205
257
247
201
225
83
161
206
187
129
183
213
112
196
221
222
189
234
137
225
195
165
201
256
213
280
178
213
257
121
182
200
260
223
214
194
208
263
196
197
218
194
153
182
160
185
233
230
167
231
207
189
207
214
162
209
209
183
150
200
177
152
228
202
194
167
189
201
164
148
204
206
234
207
201
227
186
228
185
214
212
238
188
201
231
217
219
238
149
149
189
221
267
235
176
181
192
199
198
226
184
206
189
168
238
232
206
186
183
164
216
225
199
210
162
221
153
158
250
232
175
141
191
217
268
178
208
218
144
248
198
241
182
203
247
252
213
127
185
212
189
217
211
256
204
217
255
289
167
214
241
228
222
143
204
192
189
221
236
193
188
200
240
266
126
196
178
230
227
227
256
188
171
178
179
189
226
149
226
134
231
188
228
203
168
197
221
214
152
119
151
169
200
215
213
160
188
213
204
185
198
118
238
186
205
234
159
176
219
177
180
170
160
208
191
215
198
235
251
113
163
216
156
234
140
192
215
222
198
231
190
192
213
194
148
187
147
242
214
204
192
182
206
239
161
203
201
186
190
224
228
234
223
194
156
157
222
173
226
242
195
249
182
203
262
183
149
152
196
215
201
210
215
190
175
220
205
164
229
211
147
146
166
205
191
182
271
150
157
215
210
196
206
155
179
200
245
175
243
222
220
218
150
174
202
216
176
141
203
244
218
182
170
130
171
195
232
206
217
194
249
181
192
173
159
203
176
212
277
192
162
221
164
178
186
117
175
149
151
220
152
226
202
183
189
189
191
171
217
213
231
175
205
191
186
202
200
214
156
157
195
173
207
180
133
177
193
235
235
223
170
199
233
262
208
220
215
255
207
139
245
134
172
209
209
184
145
176
223
240
154
229
205
214
209
171
221
264
263
236
143
277
160
199
139
231
239
172
132
152
241
232
213
186
218
238
238
165
227
159
225
218
169
224
213
209
171
180
212
260
248
213
225
189
218
211
220
244
254
214
214
138
192
231
193
205
263
198
169
177
236
144
204
179
160
211
223
234
127
214
197
217
249
196
181
258
257
128
176
208
145
245
129
216
190
200
160
239
220
183
167
274
247
151
226
133
221
202
182
175
180
173
95
234
241
171
237
215
184
207
192
163
236
236
276
192
225
189
195
252
222
243
216
200
165
242
179
182
208
179
176
186
251
236
188
180
239
184
193
213
195
161
239
216
230
178
148
172
167
208
166
217
184
168
233
261
190
205
184
202
172
140
175
129
183
267
228
264
205
217
201
199
136
132
145
160
228
163
139
207
214
213
253
173
192
267
251
186
212
146
168
175
195
166
183
234
225
224
223
200
234
203
192
191
167
206
194
205
246
204
268
150
204
184
201
231
190
245
224
203
213
178
170
220
203
187
260
152
244
217
217
211
185
197
191
184
198
236
178
203
170
220
255
177
227
184
149
213
172
224
230
197
252
242
184
222
207
223
171
213
230
178
227
249
231
209
223
251
169
202
173
241
187
202
223
211
224
202
176
199
186
171
226
279
223
178
242
183
207
236
210
159
226
193
174
232
190
212
156
187
205
200
204
224
188
186
229
187
221
182
149
231
203
202
224
235
176
245
225
204
186
203
171
225
188
199
267
205
194
220
161
189
234
199
187
184
170
204
196
219
226
206
255
148
155
196
206
193
223
188
229
142
237
204
150
174
197
157
197
195
211
200
172
156
231
213
231
204
164
195
238
199
165
205
154
187
183
232
214
221
237
200
161
211
238
164
175
202
229
197
208
177
181
239
209
224
186
175
171
199
222
132
149
270
172
179
202
184
204
207
235
169
202
134
237
191
203
140
160
206
282
204
235
154
204
275
190
148
211
188
228
158
225
162
222
202
232
153
208
178
286
272
173
219
235
166
228
164
183
245
252
239
228
165
247
237
271
160
192
261
180
274
177
232
210
208
143
208
262
200
215
175
182
163
159
220
191
227
200
232
163
166
185
175
227
246
238
142
164
205
196
174
177
252
180
159
235
181
217
226
155
175
186
195
164
216
232
210
242
192
260
151
250
136
211
254
224
245
234
197
253
228
269
168
203
211
222
209
241
188
197
237
187
177
165
212
252
226
136
140
206
218
156
193
182
201
176
170
212
222
198
185
161
178
199
190
232
152
195
200
197
219
195
200
205
130
170
225
220
219
169
179
202
188
240
181
244
180
184
261
139
169
246
258
184
180
155
204
210
172
133
182
184
146
209
201
233
235
221
190
226
212
147
238
226
225
235
205
223
240
179
201
188
216
244
163
211
196
184
250
187
208
155
168
224
187
197
155
214
196
177
205
236
201
249
184
221
186
211
204
261
231
217
201
188
246
214
214
219
246
250
202
272
150
266
205
224
191
113
179
178
176
179
185
194
190
261
206
230
197
130
196
196
254
186
149
168
219
146
166
232
174
181
241
197
230
131
191
223
224
179
215
132
208
186
265
252
152
155
217
229
216
208
198
214
95
187
163
181
209
142
188
132
174
219
128
154
186
178
198
182
257
157
131
210
149
180
224
210
281
184
186
145
213
196
257
240
187
248
168
158
230
180
290
234
220
210
228
208
163
208
237
152
164
199
188
186
186
238
183
183
210
252
173
233
230
213
263
187
267
181
224
270
223
266
194
154
213
188
155
222
133
219
201
208
182
244
186
234
283
151
178
226
225
185
169
179
233
209
245
163
257
205
180
217
214
194
266
210
274
160
286
194
224
201
129
173
219
273
210
189
194
197
157
149
181
229
143
219
166
178
190
228
206
266
215
198
173
151
137
260
143
216
221
205
204
160
194
209
168
211
223
190
240
149
234
232
148
206
185
229
251
196
236
208
167
218
207
197
169
174
249
231
238
177
205
294
121
189
159
126
195
251
146
206
186
284
244
193
155
199
178
158
226
204
210
155
218
206
197
143
178
173
155
157
241
134
166
155
277
270
259
238
224
212
139
250
161
171
173
223
162
237
148
194
250
241
218
193
181
224
181
192
232
265
272
184
263
126
207
185
208
235
195
168
209
169
158
180
225
183
215
169
237
221
203
202
268
187
251
194
179
227
181
231
129
226
221
162
167
249
182
192
176
206
198
164
279
244
292
206
201
231
230
206
189
143
161
269
159
231
199
220
172
205
207
204
172
229
153
219
180
267
204
229
222
194
231
168
170
205
222
227
188
195
174
191
214
151
260
184
223
210
234
267
127
126
201
171
232
83
200
155
230
216
229
158
175
217
183
170
233
214
212
204
196
143
233
155
238
185
240
137
225
208
239
222
224
219
170
150
196
182
147
256
238
138
233
237
153
165
199
221
133
220
214
262
149
238
209
177
215
168
153
256
228
235
220
191
267
195
201
223
183
203
207
220
216
246
225
161
217
172
228
163
229
174
229
215
194
210
246
250
172
157
241
212
237
158
182
194
198
276
207
188
111
253
223
164
220
149
209
232
141
229
157
178
210
171
162
159
187
216
235
208
236
173
254
191
188
198
208
209
258
171
173
143
182
212
182
238
250
154
186
232
232
196
162
208
183
207
180
233
176
192
188
143
178
264
162
223
170
134
278
221
213
180
219
207
183
188
208
207
232
230
272
220
243
142
272
216
225
246
140
221
248
245
188
221
207
198
220
185
190
207
136
148
190
209
190
255
223
133
241
176
132
173
153
178
154
197
210
228
174
177
205
210
194
220
199
248
211
168
196
230
245
155
230
148
191
174
237
233
198
212
197
233
222
174
215
219
158
173
244
166
235
273
188
224
263
215
225
145
203
241
214
148
246
121
273
180
182
230
179
241
192
207
178
226
152
87
184
193
215
154
221
225
259
196
148
175
193
187
209
184
248
164
208
191
228
200
173
244
197
154
195
163
218
225
198
183
197
192
230
251
205
225
207
256
184
207
196
245
179
182
245
216
196
171
177
185
144
210
194
175
232
192
217
180
125
204
207
202
181
163
221
236
297
187
228
203
202
173
213
204
179
239
173
209
246
205
219
202
262
170
236
201
194
193
235
247
261
205
246
242
249
275
256
192
175
253
203
199
202
175
215
180
172
219
148
240
227
172
220
125
239
177
168
220
256
136
190
211
250
204
225
260
199
225
217
182
207
158
158
210
197
171
224
217
190
202
210
214
202
200
234
205
182
163
237
160
214
170
211
210
203
256
239
240
215
206
169
241
229
197
203
164
184
177
247
228
193
231
236
197
222
225
242
198
139
202
183
200
194
216
192
213
236
209
208
172
182
208
214
214
221
260
183
210
180
184
161
174
189
170
196
179
227
156
197
241
261
183
243
125
157
178
206
150
183
195
179
162
256
201
180
197
202
191
207
225
199
238
230
183
219
227
233
186
182
217
160
237
170
129
172
177
186
216
242
212
174
182
180
185
178
155
281
179
212
244
198
161
169
202
228
202
242
204
181
177
243
147
199
243
165
189
248
176
245
194
195
189
173
170
207
213
128
195
222
141
187
235
238
175
204
203
129
216
233
204
140
208
202
260
174
142
192
200
178
235
187
185
258
177
193
149
135
162
159
215
223
192
180
176
264
206
259
248
165
237
199
178
205
166
164
260
229
242
144
196
252
189
218
230
235
184
168
216
214
185
185
137
197
225
225
247
185
179
181
199
212
215
188
236
194
198
215
173
165
185
298
252
206
217
179
158
172
213
173
244
244
147
154
196
204
272
208
219
261
237
243
209
204
248
258
202
206
136
226
174
190
190
216
174
132
133
181
166
187
235
185
202
211
263
239
165
254
247
238
245
223
205
179
126
233
250
217
189
174
217
204
247
253
143
182
213
185
184
221
162
204
222
193
245
190
117
247
214
229
214
164
201
182
192
190
136
202
176
192
202
191
184
203
211
155
163
267
264
203
213
232
144
182
208
202
238
238
221
228
236
180
142
240
153
142
198
220
206
142
219
184
161
278
190
225
163
244
203
234
185
229
258
155
168
211
183
167
170
229
200
174
226
158
169
164
127
176
140
221
193
193
198
260
200
171
200
156
150
235
247
183
189
192
254
207
203
253
194
208
226
218
184
177
230
285
249
289
191
195
252
229
233
116
195
237
156
233
199
204
266
246
185
201
165
206
249
194
215
210
172
162
194
199
183
197
256
261
220
233
153
184
256
223
182
247
210
204
238
233
253
236
218
202
202
203
169
155
192
253
185
143
167
191
148
213
238
212
153
209
208
253
181
134
204
222
217
254
193
201
167
194
247
240
180
189
156
169
208
174
200
187
172
227
200
167
187
224
203
176
202
227
249
201
265
209
171
167
151
244
236
189
209
254
179
222
216
235
194
173
199
174
168
158
227
235
206
173
175
248
216
173
284
213
181
160
192
150
262
207
240
230
252
175
228
251
154
177
181
237
233
158
231
200
186
174
196
148
270
228
182
224
206
228
208
176
195
236
232
157
190
197
190
190
222
201
225
213
160
198
217
163
224
142
228
222
179
139
209
213
212
237
224
175
201
200
178
192
197
268
194
244
160
123
201
179
185
193
208
185
209
224
216
224
174
234
242
168
205
158
153
186
247
173
165
261
222
219
270
177
202
202
190
216
251
181
157
272
193
188
179
200
199
196
210
185
215
153
226
132
208
176
153
224
212
191
190
166
207
238
239
179
204
254
221
130
203
139
182
232
203
214
239
184
237
243
227
136
222
234
191
152
143
179
204
184
218
207
175
215
161
186
149
237
220
232
280
208
164
247
243
288
190
228
220
248
163
170
191
163
225
126
194
246
175
230
208
211
160
188
225
225
221
174
169
211
190
228
269
194
194
266
218
220
254
153
216
161
165
232
158
195
165
137
203
222
137
159
153
209
201
253
221
189
215
201
234
221
184
208
174
226
98
219
189
231
156
208
246
197
171
192
210
173
208
215
210
247
201
215
169
183
165
210
194
203
210
218
204
165
105
252
149
177
220
198
172
211
220
163
198
199
207
154
218
225
208
146
256
228
234
212
194
200
230
214
198
240
161
230
221
184
191
177
150
223
177
287
199
172
197
200
209
184
202
125
198
207
138
231
150
185
203
205
158
148
106
232
209
205
252
178
193
156
201
244
246
176
192
201
211
203
211
194
218
187
180
221
225
219
140
145
155
227
236
215
274
146
206
229
172
210
161
159
138
196
147
165
183
175
197
194
230
199
214
216
225
226
190
118
122
197
226
167
222
231
229
181
182
218
135
184
188
219
196
176
224
179
202
167
251
166
226
121
206
175
219
157
172
235
201
215
173
125
220
264
213
242
202
171
206
190
151
211
231
221
178
232
194
200
241
203
231
219
151
233
205
217
279
227
168
215
221
214
187
122
176
200
161
245
191
276
231
199
204
195
166
163
205
189
169
173
231
182
209
230
210
183
176
120
205
201
286
170
221
203
219
198
146
170
176
215
160
181
149
204
264
151
221
161
181
129
221
238
156
238
237
202
161
195
236
209
235
230
146
197
241
196
212
185
203
191
231
171
127
185
161
175
207
198
165
268
247
222
182
259
159
212
283
174
176
195
235
148
184
223
160
189
225
150
172
208
211
147
187
185
217
135
195
209
188
230
182
149
190
209
174
219
203
206
196
125
188
200
173
176
280
243
195
200
165
171
175
161
237
165
196
180
222
210
205
272
204
143
206
231
269
206
201
198
236
162
171
152
204
170
195
241
197
185
190
168
180
227
196
185
215
219
225
183
245
230
284
148
172
235
181
139
233
198
207
245
157
245
150
160
190
234
172
232
243
253
164
240
260
229
200
224
203
218
172
212
187
228
192
271
248
150
254
167
217
200
175
213
160
149
237
250
157
208
186
228
171
209
176
210
248
214
147
241
212
202
225
183
206
236
207
179
184
259
175
187
182
193
242
188
199
239
197
205
175
205
169
204
174
200
168
249
187
221
231
212
204
179
175
174
183
199
178
162
224
203
204
215
193
199
167
205
196
224
132
193
159
221
186
163
215
233
212
190
156
220
171
180
163
165
182
186
146
155
243
185
176
213
211
231
256
153
166
167
152
165
223
248
193
149
123
223
191
189
226
225
189
223
208
167
186
260
244
243
190
289
201
202
169
199
211
176
162
195
185
190
234
240
158
208
250
267
219
225
227
147
208
200
166
155
234
216
202
208
178
210
218
181
220
227
222
210
184
215
221
244
197
177
196
133
162
229
126
214
166
211
231
181
193
204
232
223
221
214
175
189
212
187
195
165
249
202
204
223
218
230
239
233
174
250
169
209
191
166
188
216
227
182
262
228
212
266
174
177
248
253
135
206
278
157
236
202
230
212
213
169
237
174
234
223
193
231
250
166
175
197
184
168
230
216
208
151
228
150
201
262
195
130
201
153
238
198
193
177
198
193
282
186
211
210
226
222
176
178
176
220
214
200
130
214
249
207
227
223
190
222
212
217
233
262
227
178
171
172
232
150
223
235
150
244
214
182
189
203
236
181
156
180
184
182
203
178
200
183
188
209
233
233
185
225
224
268
190
170
238
241
192
144
216
169
156
195
186
148
155
192
233
204
209
155
226
218
220
183
203
229
255
198
182
181
238
182
252
222
155
189
199
208
177
208
204
147
216
165
209
265
179
231
226
191
212
262
218
205
105
137
242
248
208
194
188
237
196
149
224
200
221
147
189
174
178
194
181
147
173
147
251
237
153
205
219
166
227
234
210
242
222
218
205
222
235
180
248
185
155
136
186
185
239
247
152
252
191
176
190
209
253
208
213
178
202
170
180
204
210
190
250
182
210
178
210
136
224
214
232
188
234
147
162
215
264
187
176
201
173
178
147
157
152
181
158
247
242
232
156
124
130
125
175
130
212
222
166
237
220
268
245
222
233
212
149
204
224
203
213
223
196
180
165
218
234
256
150
243
242
215
169
173
234
123
188
193
163
187
159
194
280
222
224
272
226
218
175
180
232
209
268
228
228
172
198
222
174
187
180
263
212
234
185
193
194
238
144
233
208
172
223
235
184
235
202
209
189
191
139
182
165
242
205
236
186
194
250
199
182
250
221
200
207
221
217
174
220
215
186
193
191
200
175
248
196
183
197
184
229
227
192
146
221
243
216
205
260
185
187
202
216
251
185
132
210
194
227
190
282
239
266
164
163
214
223
129
176
185
174
142
207
147
163
188
245
197
183
228
208
188
206
221
233
246
221
143
221
154
221
210
153
212
229
229
153
232
216
214
173
223
220
237
207
219
171
167
184
173
224
206
127
154
259
195
201
152
174
170
183
185
202
152
223
162
209
232
184
260
190
199
221
214
159
240
224
231
245
231
192
217
248
240
191
202
220
213
235
215
198
195
141
245
190
179
227
174
175
207
175
168
237
221
252
195
257
236
193
179
150
177
171
172
111
207
211
168
130
204
166
166
192
231
174
154
180
222
238
196
190
165
281
213
173
154
201
251
134
202
188
160
169
231
158
235
259
206
184
197
214
110
159
175
265
240
164
218
183
186
178
191
236
189
215
194
197
207
121
199
139
198
263
233
212
190
156
214
175
191
233
158
170
169
180
274
180
194
242
216
194
117
247
210
235
241
229
202
189
231
192
249
230
182
174
196
207
211
194
166
166
177
210
167
188
191
193
230
161
283
237
221
157
180
206
231
227
208
225
220
162
228
177
178
219
223
179
169
248
235
226
190
151
218
183
187
228
202
199
151
160
176
144
251
128
181
162
165
154
179
190
200
180
163
225
237
237
181
194
205
189
176
177
182
135
180
220
143
169
170
185
231
216
238
230
181
143
220
204
228
140
147
183
257
198
192
274
156
172
191
240
179
253
223
197
173
218
191
157
242
197
183
253
242
234
191
117
118
145
195
195
235
184
203
174
206
181
162
138
208
267
174
128
240
285
213
225
200
201
244
181
155
163
169
198
217
243
243
245
183
242
207
202
169
175
222
207
218
206
200
247
195
189
213
240
248
236
204
214
191
218
157
189
191
181
194
216
176
216
124
186
196
254
188
216
212
256
209
241
169
185
230
248
202
249
226
197
231
157
192
233
235
192
220
223
199
222
212
223
234
223
163
177
191
250
278
162
229
223
185
175
190
172
160
178
206
196
236
246
194
198
172
237
232
191
219
188
245
217
155
179
241
215
246
193
135
185
186
202
159
198
265
200
241
186
241
226
241
217
258
175
180
232
204
162
204
191
214
158
183
224
178
223
203
209
220
206
199
170
287
226
153
188
253
191
184
224
176
223
207
179
185
212
155
198
225
189
170
186
243
189
223
238
200
211
178
240
181
204
212
178
154
164
205
188
198
183
161
175
206
207
229
191
243
128
215
173
203
183
199
181
187
172
193
233
213
223
144
214
199
106
222
185
152
203
219
246
236
211
163
270
181
177
232
170
201
176
238
238
203
218
192
193
230
188
175
200
191
149
102
207
273
171
201
144
191
186
216
217
157
190
135
178
178
180
119
144
215
164
181
146
157
123
177
194
166
189
222
225
216
229
153
222
228
125
202
230
203
196
201
261
185
217
196
155
227
190
171
194
198
192
240
148
168
151
188
188
173
156
227
224
218
194
225
159
197
189
204
229
193
194
129
207
257
206
172
160
175
213
174
209
209
203
201
225
156
236
172
222
245
272
176
142
186
225
172
227
193
271
264
216
245
183
169
208
174
252
163
209
203
132
231
209
189
167
195
123
181
192
189
239
186
237
235
212
222
196
189
242
194
208
165
212
197
161
235
199
186
186
180
174
165
160
133
233
202
164
181
227
221
185
97
213
247
159
199
182
195
156
195
225
163
171
189
166
150
233
228
226
192
229
236
192
141
120
204
209
187
113
225
225
166
235
213
168
208
217
245
249
214
168
220
221
236
201
170
232
216
193
129
178
249
198
202
214
198
191
196
179
154
221
198
206
179
229
212
199
220
239
144
224
202
190
180
192
188
217
228
160
215
214
258
193
134
145
240
175
229
177
175
264
200
233
194
206
237
230
188
196
141
285
206
198
218
273
234
233
239
221
215
243
185
212
214
200
230
183
232
155
231
147
259
259
239
258
232
177
185
222
230
246
171
189
226
213
181
222
147
214
249
227
222
205
173
222
212
137
221
185
184
141
229
164
175
134
195
153
135
234
203
232
180
254
167
180
228
150
220
183
233
198
185
215
224
178
216
182
195
222
261
193
197
175
218
284
141
158
199
233
211
192
216
189
219
149
204
211
155
243
190
218
194
251
211
200
269
187
195
161
260
293
164
198
182
194
173
170
210
232
190
184
212
197
197
159
202
211
188
228
225
235
214
216
217
231
225
221
161
189
191
229
212
210
189
198
147
197
224
219
181
162
173
195
235
171
182
213
211
213
229
125
132
212
238
261
188
161
200
192
175
167
191
252
122
174
263
198
211
208
177
173
171
222
209
186
195
226
188
225
203
278
227
161
169
210
188
175
267
214
183
147
207
265
202
242
191
208
192
201
208
215
230
167
243
170
213
204
243
172
260
195
217
191
173
117
233
204
210
208
199
198
269
214
244
230
173
220
178
276
188
158
215
168
120
187
139
204
138
161
164
184
251
191
132
236
154
151
185
204
194
212
224
242
204
219
154
158
238
228
136
155
221
172
189
195
156
186
212
207
256
212
222
144
230
237
161
162
281
187
249
183
190
261
189
207
192
153
198
192
209
211
190
190
216
174
179
217
179
238
197
217
174
199
206
180
179
198
139
153
172
188
211
195
218
131
147
198
195
179
248
156
207
126
212
203
250
222
210
102
218
196
194
217
232
220
214
183
137
206
225
244
194
178
214
254
186
219
200
199
216
208
246
176
191
201
220
205
152
213
247
196
241
162
161
205
188
230
167
232
253
231
247
235
185
131
222
124
248
270
155
186
141
190
142
198
186
197
144
226
213
168
153
183
200
189
194
247
178
250
232
212
208
204
200
227
225
236
185
196
215
188
183
229
246
260
210
247
236
245
283
171
210
223
188
207
191
171
171
258
231
225
190
257
186
181
148
237
206
181
268
222
211
229
193
216
239
240
240
161
239
179
224
171
235
249
210
159
266
148
228
189
142
212
243
180
199
240
253
270
140
220
186
232
254
230
180
227
171
241
258
261
213
135
171
114
172
195
166
205
183
202
189
186
183
217
162
200
199
224
158
209
228
240
192
240
131
162
115
207
233
199
179
231
201
173
181
207
165
178
158
221
168
119
135
205
187
148
252
158
209
194
224
189
123
189
227
184
183
185
194
214
156
218
240
169
253
157
140
224
216
170
134
169
194
209
147
203
217
185
186
117
199
224
160
215
165
240
191
182
206
240
187
155
182
238
211
186
241
217
254
160
204
170
211
227
176
167
201
202
181
202
200
156
230
229
244
152
212
268
170
235
201
251
89
189
145
190
120
158
195
170
186
179
165
179
242
200
195
220
235
199
197
209
177
218
213
181
194
190
145
218
157
231
219
243
235
210
231
196
216
159
211
163
173
227
205
170
167
218
209
270
221
191
215
191
200
144
171
130
258
213
203
173
144
220
144
255
202
198
201
233
172
221
253
161
217
146
219
235
206
209
142
202
129
180
204
203
202
200
225
253
167
223
138
172
181
220
141
169
222
239
204
213
204
243
196
162
155
195
228
170
149
147
205
119
194
285
219
213
153
251
228
169
211
282
181
189
214
158
220
217
219
194
262
208
268
160
212
200
217
203
242
140
204
143
183
215
186
209
211
164
204
237
193
180
192
182
180
194
168
190
137
187
131
242
250
219
174
179
222
166
219
183
218
230
227
197
207
228
205
191
223
210
196
193
230
246
195
169
191
221
247
172
179
242
220
179
217
193
261
205
181
221
123
194
220
207
154
262
185
200
253
213
219
192
251
213
184
233
224
206
236
228
153
189
185
161
187
215
181
179
265
190
206
261
224
248
202
242
112
170
172
180
157
171
216
196
189
191
130
215
216
189
247
192
140
181
198
176
199
163
202
252
175
219
211
227
174
255
131
172
239
152
201
222
257
166
160
193
218
156
248
188
158
181
255
130
186
129
177
188
229
201
247
167
210
186
162
256
198
206
275
196
219
243
165
217
151
219
197
181
190
209
245
204
221
220
196
169
176
215
203
211
202
181
149
146
196
227
214
205
232
183
196
217
260
222
204
145
195
207
175
227
209
190
176
214
175
203
184
273
210
235
204
230
242
159
230
206
214
273
193
225
190
216
226
245
233
245
232
239
223
230
167
240
221
181
203
184
181
200
198
215
165
194
180
163
196
191
210
179
206
163
172
185
232
233
188
218
223
206
196
224
183
215
208
216
219
193
206
152
235
202
137
171
179
183
189
221
179
221
209
189
203
169
186
228
231
228
203
220
149
217
179
279
203
133
164
180
163
221
170
228
211
193
258
183
158
94
198
243
207
208
220
170
176
244
189
225
238
169
161
217
227
165
212
150
212
179
273
254
248
151
209
185
252
183
210
188
208
146
216
170
262
176
180
179
244
182
176
158
113
225
234
215
139
213
197
133
172
182
177
250
220
160
220
201
159
180
236
205
175
189
150
196
211
181
216
184
107
185
213
206
152
226
208
255
235
117
223
213
119
249
203
153
178
234
238
232
175
185
203
189
237
197
204
142
206
220
198
219
235
248
194
185
191
225
210
199
194
233
211
105
202
232
221
200
194
149
219
219
162
245
198
162
195
202
145
203
168
238
190
178
246
245
206
207
215
158
226
127
257
175
206
193
127
175
236
199
199
242
241
210
188
197
189
272
239
205
164
190
173
174
179
234
223
220
205
244
226
243
243
186
204
182
231
215
179
199
169
217
236
154
271
236
199
202
255
159
213
197
202
183
188
239
215
170
223
199
160
209
184
177
152
160
202
171
194
134
224
218
193
174
254
226
194
170
274
133
246
242
188
204
235
201
155
216
226
198
153
192
230
245
154
198
189
198
142
213
283
217
193
177
173
164
205
209
247
226
182
180
231
164
195
182
150
252
178
206
218
256
201
219
202
237
191
161
171
162
190
251
160
217
172
201
215
195
195
250
138
205
130
146
180
229
171
217
189
130
203
205
173
232
190
238
169
199
210
199
205
164
205
213
207
253
160
159
218
239
212
167
157
255
190
155
224
194
184
204
204
264
250
150
180
156
215
109
250
198
210
177
169
266
198
242
223
252
174
182
207
185
252
188
169
195
209
199
175
239
205
215
152
262
212
171
169
171
228
183
220
177
236
241
190
241
186
275
240
221
193
198
188
236
166
204
229
173
185
222
208
171
205
174
211
255
147
208
236
236
199
195
212
201
227
190
145
257
205
206
199
211
200
179
207
237
196
217
162
180
157
230
164
216
172
194
216
184
216
238
206
203
229
229
205
194
218
226
169
185
184
260
238
141
209
166
220
183
239
222
132
125
211
191
178
176
205
223
228
165
274
201
192
202
239
212
166
262
240
215
172
214
218
218
201
217
163
223
192
133
248
191
203
212
201
202
264
226
189
187
185
185
186
188
180
142
181
236
180
244
132
147
249
168
198
127
186
190
247
153
210
190
237
213
179
171
183
201
215
183
210
222
181
256
234
240
236
200
191
127
197
199
160
181
219
200
220
180
188
195
185
268
222
233
211
193
235
250
210
250
216
210
208
217
158
198
242
169
262
256
193
204
262
225
214
212
180
215
227
181
181
234
185
160
161
204
239
239
174
194
149
172
201
226
218
209
223
171
209
143
228
191
180
254
157
164
206
196
199
250
163
120
207
156
211
184
191
246
189
251
227
199
181
147
191
179
209
169
211
168
148
258
232
220
193
189
243
233
221
223
157
176
203
175
263
155
179
106
205
170
212
148
214
261
264
191
165
268
181
201
110
213
221
251
216
251
130
202
206
215
133
205
224
194
256
199
207
215
155
226
194
173
241
200
177
226
216
186
223
247
227
185
204
166
211
136
177
133
186
227
129
241
191
185
180
239
218
260
215
221
228
159
222
209
194
148
189
204
245
240
142
188
205
257
221
227
173
140
202
166
217
224
224
222
211
168
182
219
252
174
223
203
170
238
195
218
164
178
259
199
117
191
156
239
231
211
161
214
245
170
192
207
220
219
168
157
247
187
163
168
212
218
127
241
245
217
178
224
236
185
175
271
208
249
239
203
193
217
170
236
167
197
208
158
203
215
191
203
177
136
242
208
191
250
230
188
209
196
214
160
175
258
207
166
192
216
187
236
224
171
272
206
169
136
247
190
157
234
183
229
120
187
150
210
216
189
204
191
120
198
166
172
214
176
162
245
197
146
185
130
238
147
141
181
171
189
256
169
173
234
249
216
131
226
181
231
189
233
198
178
214
226
202
201
244
196
142
190
167
177
173
177
198
142
181
211
208
247
220
234
166
163
146
101
222
237
227
205
188
177
191
144
181
162
219
181
170
174
221
209
170
210
215
139
240
168
245
226
239
220
200
136
166
206
203
206
214
163
189
123
246
239
190
213
235
205
196
234
145
165
197
215
252
207
155
170
211
237
180
182
206
249
205
188
217
158
162
225
221
148
252
163
154
218
153
253
150
164
238
191
183
219
170
182
138
118
224
207
197
233
181
128
198
188
210
201
221
238
277
208
164
187
208
225
194
178
188
202
195
203
222
279
199
132
212
141
203
242
227
187
252
166
242
243
182
254
198
191
197
142
220
236
226
220
178
251
139
229
204
222
185
155
198
172
201
174
167
125
174
193
188
252
171
218
255
213
167
199
203
168
226
205
164
205
190
210
241
199
171
171
201
211
182
183
207
169
229
187
179
231
183
137
203
183
171
145
275
158
207
181
196
182
248
264
191
161
227
214
203
198
220
228
173
130
173
203
194
182
205
139
237
215
220
190
211
160
258
220
176
220
172
190
210
159
264
227
248
187
228
204
220
132
208
199
216
253
215
235
221
211
179
228
159
227
181
183
178
182
220
225
154
224
205
172
167
262
220
234
278
170
270
198
175
218
211
241
256
194
133
244
179
241
210
194
204
261
188
194
189
244
189
172
241
219
191
196
198
189
206
201
129
203
129
231
188
177
142
187
165
214
208
244
163
159
236
219
261
174
166
212
179
212
203
195
209
142
220
213
173
221
192
194
215
193
269
191
119
168
222
248
207
197
163
232
99
272
265
176
181
218
191
223
169
162
194
187
206
196
165
174
216
199
214
139
190
239
216
164
187
207
219
208
224
235
164
168
172
173
208
161
236
181
254
182
231
213
128
210
193
190
200
283
239
239
195
142
149
201
177
186
252
200
180
222
160
225
224
126
156
198
168
220
234
209
203
186
219
152
201
200
209
200
254
296
232
207
204
252
194
200
191
209
221
228
219
192
170
179
216
122
182
179
190
237
242
150
246
274
208
177
211
225
239
259
186
166
216
171
217
230
153
204
206
170
197
204
210
168
163
219
199
224
224
150
246
221
235
180
237
142
229
177
192
206
180
174
175
242
242
208
256
217
118
214
198
227
121
190
238
202
201
255
224
250
214
194
180
203
153
228
191
199
244
216
243
181
157
222
275
250
177
190
199
156
185
227
154
162
179
191
230
268
133
225
220
219
208
161
188
185
218
204
175
188
204
203
197
191
149
167
163
181
228
206
229
168
136
184
276
219
164
211
156
267
192
218
208
157
136
203
254
202
253
208
206
204
198
237
192
175
171
236
173
146
220
184
274
176
196
231
175
178
206
236
193
249
224
169
192
215
206
146
157
209
222
180
221
221
207
182
258
181
208
168
152
238
214
235
148
193
155
223
251
260
254
202
233
190
249
172
209
205
211
214
163
182
260
208
170
131
235
176
188
243
227
155
199
177
145
182
170
220
186
235
229
181
242
217
178
266
228
199
209
163
199
230
178
184
200
128
268
177
191
143
221
147
181
262
212
170
195
199
228
180
174
208
187
209
212
245
150
177
196
247
179
227
164
184
161
243
213
222
188
194
163
206
217
183
222
204
201
210
199
149
174
162
223
240
177
224
207
204
236
267
213
181
207
184
232
258
195
251
152
233
225
173
194
168
202
183
252
142
224
255
223
237
225
283
226
205
172
202
191
243
207
246
181
151
137
224
141
170
227
182
161
203
230
241
160
180
181
168
150
209
187
253
163
172
178
139
275
233
244
174
200
182
217
213
157
213
272
223
183
216
161
272
204
226
187
145
205
193
231
197
192
235
173
192
138
233
201
162
242
139
151
215
168
198
226
106
232
191
159
225
192
191
169
244
200
169
148
229
230
211
215
207
186
183
177
215
226
189
211
273
177
213
179
161
174
121
175
219
154
161
177
127
135
241
213
226
192
183
261
222
236
205
187
225
182
231
225
194
211
223
275
179
146
171
212
208
201
207
200
180
198
214
194
190
226
191
187
182
162
109
186
204
174
156
239
211
180
211
174
145
184
200
202
207
180
213
220
199
137
201
169
220
247
259
156
222
211
162
177
196
237
174
217
239
189
243
167
234
246
144
238
195
197
247
140
239
167
190
191
195
166
173
213
136
162
184
199
168
226
204
184
194
188
203
245
137
215
187
193
171
235
244
213
200
206
235
150
138
205
253
222
114
165
213
147
137
153
200
168
234
190
162
193
250
228
140
197
266
216
158
213
224
94
182
181
161
224
227
141
134
186
170
211
195
174
148
168
230
219
174
203
213
202
180
170
209
174
178
174
178
168
163
205
179
210
164
204
155
237
189
135
128
236
178
224
224
218
161
190
219
174
252
143
166
217
175
227
236
226
200
137
201
151
201
242
242
197
184
217
270
126
288
160
175
215
193
196
224
136
208
217
240
128
159
202
203
164
225
205
179
277
224
202
228
158
122
210
268
178
220
243
215
197
182
185
164
195
240
208
247
199
187
187
164
225
147
118
143
181
228
202
220
171
185
201
155
168
218
162
152
188
213
232
205
179
249
201
205
200
169
233
149
257
219
167
196
212
218
255
236
252
160
145
167
198
183
216
266
190
166
196
188
127
212
282
243
217
163
206
196
211
247
280
197
239
245
206
160
247
224
183
224
216
202
175
208
233
200
176
252
278
219
200
167
229
239
257
223
235
126
242
263
238
183
271
145
165
223
173
232
181
191
216
167
243
227
214
194
170
149
199
251
194
214
258
171
194
165
210
222
215
226
217
215
188
202
177
209
160
198
216
209
157
171
250
237
206
133
175
239
199
228
189
158
206
252
211
237
239
196
211
221
224
178
178
182
266
139
282
194
224
209
200
207
219
230
245
207
197
147
180
161
193
179
173
222
262
190
180
217
163
170
234
202
249
163
217
163
220
235
177
191
240
160
149
219
239
243
197
213
192
196
249
222
238
167
125
156
170
254
202
197
171
236
242
256
252
233
252
227
286
221
215
261
177
165
201
244
209
217
139
137
212
213
154
153
183
156
250
206
204
168
166
224
238
219
169
229
180
217
222
170
139
222
213
178
173
187
201
171
208
220
195
167
210
244
157
219
195
250
143
243
174
190
211
190
196
209
179
256
221
185
222
177
219
187
125
251
181
146
232
149
244
233
214
209
207
243
149
125
204
169
206
220
204
196
154
178
225
249
223
190
196
231
215
243
214
199
236
116
143
272
243
178
223
235
172
190
212
217
253
182
202
176
217
207
227
145
257
151
213
218
186
213
231
207
160
274
243
169
134
228
163
221
211
218
204
172
211
245
157
154
184
192
193
206
158
215
200
228
225
270
243
172
192
182
172
176
273
248
133
184
242
237
205
200
155
208
136
238
222
176
194
252
201
179
189
228
185
219
223
181
236
212
226
205
206
232
263
239
190
156
174
214
131
161
164
164
169
272
233
186
203
196
202
273
224
198
233
203
182
146
216
228
228
219
163
199
183
201
149
186
198
176
169
204
284
205
241
153
216
167
168
209
241
197
216
199
188
226
141
234
189
209
239
217
162
215
182
201
187
185
197
197
256
166
191
244
260
200
154
189
190
159
186
222
190
203
191
173
225
186
202
199
189
209
254
212
191
158
153
206
175
209
178
143
247
172
196
183
193
121
209
199
227
234
132
249
207
213
207
182
177
226
224
227
198
220
229
214
234
264
137
243
170
206
292
200
204
227
201
185
176
227
215
264
179
195
219
207
240
168
180
210
166
182
237
197
216
216
196
261
158
222
218
260
203
246
205
204
183
216
245
182
196
212
175
259
225
208
222
151
194
256
170
128
186
139
172
197
181
249
257
245
174
202
129
202
179
219
195
219
222
196
223
212
216
172
261
189
183
222
180
242
231
219
188
198
173
235
165
267
192
255
172
191
271
251
201
217
203
163
172
168
219
261
185
227
235
187
137
179
231
166
159
233
220
175
203
259
197
138
169
207
209
243
178
229
191
253
203
234
238
216
250
195
198
176
245
213
215
237
184
192
272
168
218
141
207
197
206
200
176
186
196
251
221
164
237
205
216
240
149
184
163
178
184
238
181
191
206
152
200
173
216
204
183
204
161
242
179
192
153
176
218
170
194
195
228
121
156
219
244
177
179
152
193
182
158
168
161
167
170
186
204
271
220
211
157
167
178
230
205
184
197
183
181
187
220
186
165
213
172
156
180
226
140
200
136
175
117
207
179
192
217
176
196
200
204
193
140
185
156
195
175
155
207
178
226
203
225
220
197
268
210
95
220
173
154
250
233
194
214
221
214
209
209
267
204
146
168
168
193
185
255
180
271
202
233
177
162
191
264
185
188
190
125
249
196
218
192
166
227
204
218
230
244
282
190
215
171
193
234
203
220
189
184
184
167
258
207
191
161
217
254
155
235
178
231
228
201
208
204
219
179
228
187
217
221
252
160
219
212
177
197
205
207
206
179
240
151
195
209
252
225
191
228
181
178
201
184
193
224
215
188
204
172
219
201
190
209
205
171
226
227
198
175
169
268
265
187
259
196
149
231
217
213
212
218
177
195
217
175
213
159
200
246
206
172
125
190
189
154
173
210
188
222
254
155
187
249
216
181
156
164
231
190
198
226
232
171
216
234
148
166
241
225
199
207
201
189
225
274
171
188
190
220
204
254
209
244
220
251
235
165
201
151
235
133
225
203
157
240
260
196
167
213
181
211
246
224
144
186
169
198
182
208
184
253
184
209
232
168
195
129
245
140
184
199
213
195
201
138
183
165
184
185
164
210
183
146
171
172
103
273
130
241
206
218
226
162
221
193
204
218
236
282
197
140
179
228
168
226
171
219
194
159
222
212
285
257
243
215
164
168
193
191
194
196
213
128
225
197
186
220
208
223
216
231
209
164
172
231
224
215
204
189
221
226
188
210
193
215
186
143
150
205
245
200
237
203
194
189
143
206
225
227
156
203
248
170
213
205
181
263
168
156
161
250
247
199
162
217
218
186
216
166
204
198
187
166
184
222
212
201
191
156
146
221
189
157
262
244
122
168
134
146
175
216
210
218
210
224
218
220
220
174
140
192
237
220
211
141
149
175
204
180
193
142
221
215
280
210
164
152
202
219
224
172
168
181
202
172
208
243
116
209
221
150
253
170
201
155
226
244
243
229
168
148
280
219
217
178
179
193
182
210
227
211
203
244
148
240
212
137
158
180
232
221
214
227
197
204
176
264
266
201
161
121
204
212
170
230
215
170
237
228
233
186
206
204
183
187
209
169
241
204
226
252
267
210
247
199
130
207
150
157
201
197
163
217
202
198
216
178
228
232
245
258
199
192
230
175
235
177
233
191
218
196
175
161
274
179
180
159
205
182
112
250
204
217
223
196
144
192
230
184
246
239
255
186
188
240
231
219
230
173
221
211
192
246
202
253
212
232
157
143
214
211
249
174
205
257
186
250
157
242
181
137
189
131
164
235
196
238
183
148
200
227
164
247
224
218
196
203
201
215
181
250
163
202
199
252
180
205
107
233
244
150
154
179
247
197
171
218
139
222
190
271
178
212
182
241
248
151
165
176
195
109
158
213
239
233
194
195
238
190
260
211
259
195
147
247
264
216
117
200
245
159
248
200
259
271
158
175
186
173
168
157
198
233
208
184
175
150
196
198
240
291
210
221
230
210
171
191
233
184
196
160
175
206
189
206
186
168
231
210
213
198
235
205
102
253
182
197
141
222
219
227
206
171
189
183
237
218
183
158
180
193
154
179
142
230
225
234
235
199
215
197
177
195
238
216
209
235
181
213
167
180
200
169
209
220
263
207
158
243
229
225
247
231
266
168
232
167
134
200
251
222
230
216
192
186
182
189
219
231
182
230
225
167
167
234
155
189
285
163
234
158
199
168
245
265
255
161
217
209
189
234
219
230
217
198
147
228
223
190
198
217
183
257
170
189
194
202
277
192
209
191
176
158
218
220
162
167
218
219
203
203
164
187
184
188
171
308
256
258
277
248
175
208
202
218
154
178
159
243
236
179
200
257
199
192
160
162
224
186
237
252
174
222
243
239
271
205
176
227
214
227
273
234
195
214
245
205
207
175
186
167
138
218
201
214
219
214
203
221
110
130
160
218
235
178
226
200
226
222
164
228
217
200
248
196
193
150
196
167
118
185
213
203
204
255
245
210
176
179
186
214
231
227
179
233
191
193
205
219
205
175
287
210
213
218
215
186
146
215
241
182
213
226
193
153
230
231
235
207
246
225
193
157
229
185
204
208
187
189
214
168
173
246
193
190
232
199
173
255
224
220
179
221
264
150
214
196
252
217
159
215
210
235
164
141
295
200
220
229
199
175
217
207
178
172
197
133
261
212
174
182
208
199
151
204
128
189
190
222
202
180
206
140
251
210
261
227
191
251
123
178
222
172
185
231
167
247
252
173
140
233
163
187
170
237
170
227
242
204
184
197
141
214
210
156
199
267
195
216
183
214
150
201
185
122
220
238
207
225
225
198
219
285
190
170
211
170
241
210
192
204
184
204
195
160
217
153
234
153
216
277
223
183
180
176
184
203
191
228
183
229
193
190
206
245
227
188
164
207
205
165
206
181
198
197
163
190
204
204
210
136
215
189
234
190
224
207
208
202
225
218
216
170
214
244
192
227
174
202
254
256
179
184
264
157
172
160
209
229
223
232
165
149
236
291
215
273
247
178
156
197
106
212
259
150
201
206
146
243
153
176
200
129
214
210
265
226
186
217
199
156
181
180
211
198
192
225
176
193
188
248
217
196
182
197
154
227
198
207
178
192
208
198
240
259
190
185
169
130
235
263
280
208
206
192
171
193
232
246
141
183
236
181
246
172
231
159
220
158
200
204
192
158
229
182
179
217
155
229
221
223
229
249
201
189
241
200
172
183
165
186
208
171
164
175
227
149
193
132
226
185
215
269
220
249
203
234
282
209
201
198
228
205
200
145
185
233
199
269
186
218
239
161
231
206
241
222
184
210
208
227
183
204
191
171
197
215
223
119
259
210
184
205
223
215
260
209
213
155
189
172
196
185
194
205
189
218
197
254
177
242
203
229
196
197
178
206
210
183
156
190
225
148
160
233
192
166
230
193
215
178
239
214
270
235
254
193
205
193
223
201
191
245
202
194
161
180
187
255
271
132
187
168
213
212
232
240
211
220
180
223
244
245
198
198
213
209
192
240
145
165
167
208
169
209
160
223
185
183
215
182
182
146
185
198
160
202
198
227
150
227
189
178
203
259
172
196
183
231
216
219
199
213
124
202
265
199
219
193
249
236
211
194
206
236
209
236
185
115
206
198
140
277
204
143
208
199
167
242
190
195
281
244
228
168
222
176
227
223
230
151
213
166
162
258
238
189
193
151
202
152
223
188
199
134
192
251
232
209
215
195
145
279
159
184
245
240
226
177
236
217
126
212
222
243
255
187
214
222
205
205
174
168
185
174
206
247
160
228
232
208
292
193
246
206
148
237
239
208
244
244
187
201
149
176
222
177
252
250
178
176
228
159
241
199
202
207
171
243
168
199
211
207
226
254
184
195
236
244
244
178
208
167
148
151
194
175
203
167
169
150
178
212
156
192
193
205
220
196
154
218
229
177
256
213
195
228
199
226
196
182
167
254
222
193
213
206
217
237
235
162
206
159
201
237
182
157
212
134
177
167
203
215
222
261
207
152
165
194
217
200
174
248
200
236
259
196
174
211
142
210
200
231
266
222
251
161
199
229
235
232
208
218
187
188
189
181
163
178
190
176
197
223
140
169
195
181
242
223
243
256
209
209
204
205
200
175
141
223
223
242
235
179
220
208
124
159
163
175
222
160
227
156
256
230
218
264
185
144
187
206
187
162
222
234
134
247
166
271
177
176
206
197
169
201
238
210
173
232
232
218
230
241
210
209
243
188
221
181
165
155
156
266
216
132
152
242
185
161
234
133
203
228
169
181
179
201
205
185
179
183
189
216
221
200
217
191
239
160
230
163
202
122
240
179
192
207
217
194
198
191
173
275
202
230
227
193
244
240
219
247
235
214
199
232
229
225
256
167
198
262
155
238
193
204
255
222
250
182
214
218
292
190
151
134
188
235
163
225
279
208
190
188
208
182
230
209
180
228
257
190
249
153
179
179
182
225
216
240
220
195
254
220
181
195
211
193
210
189
141
220
242
176
252
233
178
189
229
190
163
158
193
202
227
182
236
193
164
153
237
175
246
255
208
180
228
210
182
119
218
209
221
149
250
191
195
205
192
184
182
236
269
175
230
198
174
201
182
213
159
135
191
202
196
125
226
185
148
239
179
181
218
158
217
187
207
198
256
216
174
231
186
157
185
171
220
207
212
182
200
230
171
200
274
242
213
207
152
211
164
208
156
165
186
209
157
240
133
175
125
212
167
247
218
245
233
171
210
229
210
171
167
240
222
218
183
185
183
203
239
168
201
289
204
256
226
225
159
263
181
151
167
185
205
180
212
213
173
123
213
218
240
207
228
200
188
157
199
184
217
195
218
172
206
205
215
189
215
176
204
218
187
172
185
222
212
250
197
176
242
93
219
200
197
208
197
200
237
144
189
225
244
173
195
179
172
187
233
249
204
192
165
135
181
236
158
223
236
276
206
171
164
175
184
255
182
213
168
241
122
276
241
190
227
181
156
198
240
228
228
208
182
199
253
255
169
193
158
229
102
237
183
196
157
192
202
168
242
244
224
207
229
195
224
116
212
222
178
178
189
220
290
224
277
166
204
205
191
268
222
237
188
173
253
211
200
236
171
211
172
237
164
185
120
269
265
215
211
207
219
207
204
161
135
226
185
191
175
184
253
261
232
219
230
208
220
212
151
220
215
212
182
175
178
184
189
283
184
217
173
162
168
160
246
166
230
147
218
253
168
198
174
211
204
154
151
161
207
235
217
146
205
235
149
221
201
220
205
218
186
243
251
279
268
189
206
199
213
198
188
160
225
222
135
173
248
186
217
119
136
174
185
249
185
213
232
223
169
187
191
173
171
183
269
220
205
224
232
182
149
196
178
165
216
183
249
258
121
175
229
211
164
233
211
217
178
193
189
169
189
198
197
139
261
131
212
199
222
172
176
157
219
221
212
228
212
188
183
169
204
212
236
172
213
136
203
166
185
196
157
195
233
261
154
218
169
184
207
188
187
215
166
238
132
246
253
217
229
213
159
159
276
240
162
189
237
203
184
138
228
186
176
190
167
224
246
171
200
256
231
201
219
159
253
142
197
242
200
268
139
229
156
242
254
232
258
174
184
175
192
215
185
185
230
213
223
243
266
187
234
188
256
184
201
162
189
261
222
209
160
183
173
151
225
217
174
207
193
150
182
197
253
189
183
203
193
190
234
187
188
153
163
218
186
226
185
168
210
209
212
197
204
246
239
219
199
225
128
232
139
239
230
218
255
206
129
176
169
182
190
130
228
188
190
183
190
202
195
193
238
195
241
156
191
206
249
156
173
199
191
159
230
144
246
213
188
199
206
178
187
195
179
196
169
209
205
179
148
226
214
170
180
208
164
120
147
161
177
210
192
230
184
210
231
199
244
205
193
207
240
216
214
194
231
205
222
220
209
129
213
207
175
168
288
219
187
202
198
179
215
203
183
243
165
203
183
173
176
200
199
159
198
217
179
229
214
226
156
221
213
176
214
199
184
219
172
134
217
253
189
149
212
147
141
213
216
176
194
221
242
202
217
220
218
166
154
192
149
210
169
226
223
202
203
213
239
241
252
189
199
207
229
232
204
221
250
184
130
241
225
244
176
183
140
170
190
209
238
198
144
198
242
248
180
225
241
219
246
181
198
225
196
231
173
164
193
186
194
143
240
221
281
240
221
267
133
206
206
159
123
202
199
217
223
212
175
200
174
227
191
255
182
175
176
270
223
217
241
192
232
190
228
145
202
217
208
179
218
161
175
137
203
225
158
196
200
214
251
120
140
190
110
216
199
250
207
155
174
190
166
149
186
167
204
229
166
225
229
241
210
217
131
160
174
214
190
169
168
192
206
156
166
188
206
241
175
160
255
183
206
242
203
213
183
205
131
192
197
238
177
193
218
243
209
159
170
187
191
232
265
212
243
188
228
189
226
183
220
211
209
171
204
148
170
183
175
203
113
232
204
173
176
232
235
150
191
166
216
207
184
158
182
166
245
216
223
226
184
145
260
160
192
232
216
213
194
170
212
213
222
184
153
237
211
161
199
240
202
181
210
165
213
179
159
212
191
185
210
180
134
229
187
268
169
241
251
222
253
258
179
254
195
233
200
230
226
173
152
171
186
228
292
253
212
213
234
206
200
210
151
200
167
225
205
151
164
208
265
248
182
213
236
209
210
197
189
149
243
224
132
202
180
251
234
191
249
148
191
211
222
185
260
205
219
219
196
222
193
186
238
187
192
247
265
188
220
206
218
205
220
259
157
183
207
172
193
185
194
228
215
225
232
199
162
213
211
175
245
274
234
163
168
193
162
222
161
251
157
206
171
132
177
219
253
242
229
216
257
133
253
206
224
172
208
212
210
253
179
225
175
202
158
217
179
195
159
253
258
213
148
204
233
242
213
206
286
162
186
199
243
244
229
159
136
217
148
171
219
214
208
163
226
264
231
210
202
215
143
150
219
165
129
237
144
220
145
208
124
193
227
197
224
205
184
185
150
183
215
233
154
136
154
163
195
182
175
227
185
167
243
200
222
201
187
219
222
266
220
205
169
209
199
165
238
199
127
240
217
204
198
215
208
243
207
184
232
230
169
116
263
187
247
185
186
198
184
189
233
195
172
232
201
196
195
217
169
220
143
210
214
260
210
205
181
232
215
210
171
210
161
230
192
224
181
190
272
270
156
224
151
199
235
283
259
211
196
157
188
154
147
234
218
123
225
165
121
218
196
247
151
267
234
195
223
221
222
189
155
215
194
170
128
264
171
152
210
206
218
159
137
213
197
230
265
145
277
164
234
135
213
199
240
250
198
244
170
193
161
231
186
218
208
152
249
223
220
182
234
196
178
182
204
193
135
169
185
132
221
250
188
169
189
155
178
227
210
221
256
155
184
199
232
116
158
218
188
176
241
206
188
185
208
167
192
184
256
203
212
279
221
216
181
140
238
196
191
227
142
178
185
232
196
266
252
161
199
252
181
232
157
189
176
192
245
269
182
177
151
202
164
187
187
157
221
230
195
251
145
234
172
237
180
211
210
225
120
212
230
214
200
161
193
269
257
204
250
189
225
200
179
222
213
177
158
268
142
240
188
205
191
190
183
214
168
246
168
250
175
173
142
217
166
173
235
225
155
234
191
206
228
160
236
226
194
171
161
243
179
196
232
178
191
157
176
158
228
203
221
171
215
227
189
233
179
228
226
205
183
250
247
118
236
262
153
152
156
194
159
187
180
222
220
172
129
207
153
220
214
169
218
254
202
201
193
167
194
228
215
215
197
241
213
208
203
273
236
205
216
197
154
188
226
148
226
234
181
250
227
188
223
137
228
189
215
194
211
244
245
216
268
215
206
226
141
236
211
218
228
164
208
259
189
203
196
233
227
190
147
165
231
238
197
253
195
190
195
225
251
232
182
228
165
203
88
200
189
136
258
201
246
154
194
219
168
263
222
186
231
189
199
175
197
199
204
251
177
175
175
210
209
183
198
170
212
193
206
117
224
233
208
167
214
255
134
228
178
198
194
214
252
214
269
202
179
229
200
200
243
242
235
186
201
159
191
175
253
186
203
141
165
156
132
174
189
186
180
188
230
173
208
227
215
150
254
224
210
194
279
208
203
202
245
215
227
152
249
187
132
155
179
245
190
149
205
175
218
201
185
205
224
227
252
194
164
220
198
181
223
234
233
148
166
213
232
199
194
185
182
200
175
223
219
261
260
210
204
205
221
222
180
168
222
209
213
229
202
275
178
188
196
164
202
198
202
230
147
238
158
241
179
167
179
236
205
171
277
189
202
193
226
191
174
244
237
238
194
148
159
201
202
224
182
139
250
220
246
190
236
230
197
178
187
175
168
191
240
201
237
147
216
222
155
249
178
148
210
231
183
209
226
180
200
224
171
203
252
127
203
155
167
244
265
113
214
208
231
187
199
173
245
245
241
188
175
234
233
220
180
268
213
210
187
245
224
147
144
225
217
214
185
166
160
190
229
247
193
195
257
201
175
243
199
144
248
166
178
239
189
197
195
155
180
156
158
115
189
214
157
193
163
154
144
181
214
227
135
221
198
145
198
135
231
171
242
143
226
209
149
152
210
288
216
242
121
153
232
248
211
208
166
185
184
211
197
178
173
221
229
168
172
239
190
239
210
249
218
160
215
213
243
170
208
193
221
199
191
237
163
196
215
249
230
186
252
197
227
264
217
252
242
158
268
207
193
233
253
209
194
191
241
250
195
159
180
217
112
166
226
246
247
174
214
179
166
238
206
280
119
269
240
169
212
250
225
152
223
248
206
240
175
202
212
139
165
183
153
191
218
152
212
193
164
140
186
229
189
212
225
178
226
212
232
179
240
192
186
217
180
192
170
251
209
238
179
265
180
246
206
194
202
174
257
208
173
197
271
173
223
220
188
183
202
191
220
186
198
180
200
185
135
214
220
261
175
219
235
187
194
227
237
274
218
226
238
281
263
232
193
216
194
200
117
213
221
170
201
172
196
165
170
253
146
233
204
190
212
235
175
204
198
192
184
232
198
210
173
210
232
203
213
148
195
190
222
188
246
206
263
229
213
209
119
227
215
155
178
233
165
227
176
207
190
203
232
186
244
167
152
175
169
154
238
194
215
94
111
200
216
200
202
196
205
208
242
203
164
197
266
217
165
184
203
204
224
217
221
197
179
226
239
214
217
252
215
235
240
218
208
148
250
137
208
232
191
270
254
157
230
127
170
205
206
170
178
251
251
253
187
184
226
242
212
227
217
147
163
143
146
171
194
238
165
164
244
259
190
172
260
196
210
230
258
243
177
207
237
207
249
226
191
216
182
245
234
116
209
189
216
214
171
157
217
249
197
215
206
185
169
166
214
191
275
226
216
239
190
196
194
124
188
175
193
179
241
211
169
190
144
197
226
226
239
266
241
189
175
226
190
150
194
188
190
239
223
177
176
231
155
161
211
230
227
198
225
242
215
210
251
222
211
180
229
243
230
146
243
241
255
186
221
220
221
127
252
198
212
193
204
196
269
158
213
208
212
195
168
230
194
221
210
187
270
231
171
193
225
152
211
176
199
190
213
191
187
198
179
245
226
174
158
232
238
222
220
167
217
178
266
197
205
208
262
209
217
178
198
214
171
233
199
217
172
141
243
224
168
182
185
180
224
201
176
248
204
166
215
272
178
218
222
209
250
155
191
217
189
237
152
253
199
224
197
172
160
157
197
182
207
207
201
203
203
233
186
163
197
225
195
226
213
113
202
230
249
223
179
203
300
177
194
131
197
202
256
222
199
225
179
171
228
155
221
215
160
244
194
190
158
219
231
240
217
264
192
185
202
221
210
198
196
235
204
180
182
256
177
222
180
203
178
238
205
244
209
183
168
230
203
173
215
227
223
201
221
131
229
240
203
230
229
225
194
197
195
174
221
143
250
259
259
219
189
195
259
172
210
199
219
159
204
241
222
197
230
192
190
234
242
226
149
217
178
214
214
196
182
173
170
272
127
169
205
179
224
191
286
142
197
182
133
207
181
245
179
144
178
188
142
185
159
200
203
187
182
226
255
195
191
238
233
151
174
163
211
193
201
182
258
220
235
219
249
252
203
250
217
252
98
224
239
250
208
191
190
178
232
191
220
216
195
177
167
206
208
177
153
225
148
211
220
214
190
253
195
202
170
156
189
237
144
198
238
182
182
160
171
151
140
227
197
270
242
217
170
227
215
161
218
174
166
229
232
219
183
179
122
241
252
180
181
192
205
203
228
215
215
191
207
194
202
224
185
221
134
222
205
201
204
183
229
208
229
221
268
206
219
223
138
176
145
239
172
239
222
188
170
189
217
190
223
233
208
178
179
226
178
136
162
219
229
176
202
165
211
197
185
193
137
192
195
204
226
194
161
180
149
254
173
156
203
263
142
165
196
187
160
172
235
189
204
187
197
192
263
189
198
252
211
170
162
167
243
136
242
268
180
210
204
192
188
127
246
206
211
229
195
117
238
240
247
194
195
206
195
259
131
192
248
172
190
250
258
206
236
211
199
242
230
157
214
181
255
247
130
261
197
246
119
151
178
205
197
170
214
142
212
209
241
155
201
189
129
161
210
202
219
242
138
263
213
154
242
178
191
223
188
202
213
212
217
176
231
248
234
169
192
179
200
146
156
166
175
192
245
199
130
233
160
252
171
249
170
201
216
229
223
136
174
173
212
162
202
277
209
234
204
174
187
211
204
179
217
215
179
192
193
193
208
275
223
213
263
208
174
219
198
170
217
181
171
281
191
169
202
242
221
217
236
179
144
249
201
231
153
168
218
165
211
220
214
220
236
210
195
199
250
206
222
179
140
263
202
207
219
221
201
254
197
184
183
193
185
209
136
199
187
159
176
223
179
163
201
232
259
162
186
222
227
177
259
183
200
179
252
203
199
121
145
289
170
194
246
180
189
212
181
177
181
207
187
135
185
266
199
228
168
147
178
169
252
230
121
183
208
173
228
118
196
205
180
184
168
198
181
201
133
175
208
172
170
201
165
201
176
237
260
175
193
207
186
126
137
172
217
186
209
223
231
231
249
98
194
142
200
195
232
182
248
181
213
221
205
182
169
216
232
168
202
215
155
229
177
222
224
223
155
231
175
218
240
186
136
144
189
198
252
178
228
209
181
176
223
212
163
183
116
245
243
198
219
182
149
204
266
139
212
170
233
127
242
219
207
163
178
248
178
204
204
199
171
173
207
176
204
139
190
172
218
165
139
213
205
204
197
219
187
173
234
219
280
179
235
211
226
247
203
233
158
199
198
255
240
173
236
118
221
192
148
210
200
187
194
257
242
213
240
203
232
204
172
146
167
210
162
216
185
152
155
219
194
194
255
162
215
142
228
234
197
197
228
228
223
207
251
245
224
155
190
270
164
148
203
174
245
171
191
226
224
168
163
216
256
194
204
162
151
231
174
179
162
197
250
201
194
245
164
189
126
140
212
180
204
203
213
205
229
246
167
206
196
219
195
182
215
226
146
114
206
242
245
251
232
214
160
209
219
199
214
233
202
143
216
173
261
198
198
158
201
187
221
262
192
202
210
213
277
141
241
259
189
251
211
200
256
227
209
231
240
194
182
233
215
158
181
234
221
221
173
199
251
189
244
202
216
194
181
215
220
202
172
177
266
170
192
188
187
266
211
230
239
252
242
163
180
158
164
265
225
214
219
225
210
249
284
209
202
190
202
188
205
226
177
252
172
189
170
231
206
221
172
196
202
243
214
201
234
174
247
229
139
202
194
132
194
221
217
203
190
234
249
240
198
177
193
172
184
224
194
172
175
192
179
205
225
206
272
194
147
225
286
152
234
253
150
212
212
218
229
233
215
219
191
215
231
240
264
193
166
178
211
184
202
243
264
179
229
179
179
183
227
244
190
191
221
158
221
221
213
216
232
192
213
237
190
185
177
190
203
238
197
264
159
228
213
207
162
145
226
100
210
201
207
258
183
204
229
251
166
198
201
221
242
219
257
187
177
198
263
130
181
188
234
121
229
204
174
174
184
182
191
258
206
216
245
226
177
249
225
160
192
173
201
209
236
202
172
113
218
163
151
188
186
218
149
189
216
163
194
218
207
163
231
185
229
227
164
227
221
216
181
185
308
183
226
173
185
220
204
213
177
186
239
202
236
259
179
184
186
213
185
209
147
237
142
301
150
166
230
212
236
208
186
216
224
212
222
193
179
221
204
244
177
255
206
218
234
163
234
229
168
166
262
180
206
202
196
196
228
199
248
222
229
236
189
195
140
174
245
170
185
236
167
165
230
177
204
254
210
268
180
253
228
165
186
260
193
256
214
191
212
223
191
199
213
245
261
241
210
138
181
217
261
230
210
188
218
140
167
195
281
215
184
244
216
149
165
158
149
239
150
216
126
218
271
214
242
223
174
174
228
215
210
256
211
150
160
175
144
157
196
228
266
219
157
225
209
231
192
203
205
175
184
198
274
245
203
203
175
252
183
178
218
201
167
182
233
159
248
228
140
268
218
159
196
168
241
200
161
215
203
170
262
223
202
182
118
209
238
166
212
151
186
94
232
233
192
249
211
155
163
212
154
217
161
192
285
173
239
251
168
190
179
175
237
222
216
202
184
158
187
199
207
248
187
206
146
209
194
173
170
137
253
208
212
215
249
183
247
242
170
203
177
221
173
116
230
172
197
168
148
203
224
201
162
203
217
238
186
127
181
155
201
227
159
198
171
170
182
220
181
205
194
219
168
201
186
188
243
240
147
172
157
192
199
223
185
213
227
240
208
147
242
176
228
252
266
211
218
222
206
276
181
179
210
159
170
165
164
192
203
213
251
215
217
193
169
224
180
230
266
226
224
226
187
160
224
201
156
179
153
210
158
179
211
174
268
228
170
199
218
175
190
225
222
109
204
182
260
216
205
202
155
266
240
191
164
228
133
217
226
151
213
161
205
174
164
230
203
186
180
207
243
212
238
137
190
242
246
200
150
195
267
229
262
152
225
142
187
188
182
202
200
187
236
207
241
257
234
189
250
167
187
199
197
216
211
180
187
143
192
149
180
216
228
185
259
221
201
159
231
125
178
205
243
240
168
220
186
151
168
199
199
222
191
209
198
155
256
260
248
145
159
242
176
152
205
266
271
229
212
266
196
201
224
172
202
277
164
187
222
215
226
238
208
265
165
248
128
208
146
210
208
238
213
232
188
225
215
259
216
200
202
125
157
188
196
217
238
196
241
203
211
260
214
217
145
243
216
159
212
228
202
264
205
208
164
209
210
212
136
216
150
157
276
130
198
212
212
216
193
234
223
199
175
248
192
179
160
235
228
210
186
207
167
163
147
239
221
245
255
181
180
162
214
144
184
229
173
163
207
210
222
216
269
226
182
204
205
170
205
200
201
208
159
178
170
217
221
132
200
172
156
202
239
197
216
140
188
233
144
99
291
242
177
206
239
243
143
240
180
191
234
235
244
180
151
138
160
213
159
172
213
239
249
272
172
129
156
195
234
191
238
226
202
188
213
199
203
163
205
161
185
183
217
201
175
159
127
234
251
202
180
168
184
224
227
199
185
175
212
205
187
176
191
187
235
199
259
202
250
219
218
214
170
229
149
206
179
201
267
177
246
163
255
211
204
154
146
158
245
207
201
177
186
215
240
217
197
190
278
219
196
222
199
258
171
202
209
250
139
165
196
144
177
251
250
208
170
122
209
173
126
206
179
208
222
155
188
223
245
214
243
213
200
210
134
199
186
249
197
187
179
178
172
151
208
224
181
202
202
216
192
175
145
193
269
255
226
173
180
234
251
243
176
201
210
189
244
211
188
167
224
192
132
227
115
243
238
200
169
172
200
221
213
175
158
236
221
200
205
178
213
206
194
230
154
246
196
217
208
153
225
258
137
221
169
186
190
168
202
239
193
216
162
233
229
204
208
248
235
157
184
121
190
148
229
176
180
204
168
152
201
169
195
198
208
230
213
182
148
217
174
168
157
186
107
220
172
175
187
205
217
210
171
198
191
165
256
204
141
197
187
142
260
162
255
200
276
188
213
165
189
190
218
219
226
199
211
211
228
184
286
177
192
221
202
178
153
190
175
215
208
196
232
207
228
185
187
211
171
187
205
223
209
182
211
144
197
214
183
209
154
229
165
146
193
238
226
172
189
170
234
188
212
206
239
189
275
168
139
158
157
198
178
199
250
259
196
182
195
229
183
192
165
136
271
220
214
222
147
227
205
218
146
229
207
209
164
232
155
233
184
127
169
206
205
190
221
162
192
156
176
182
169
194
187
180
204
195
232
200
168
215
218
220
185
207
262
239
216
197
175
190
208
182
185
216
153
207
219
240
214
154
230
233
248
156
226
201
207
262
218
188
141
226
160
194
180
239
168
141
167
156
269
219
174
173
179
187
187
215
210
138
243
224
234
191
242
224
203
187
183
172
243
140
209
163
226
186
215
174
222
187
206
220
199
234
192
210
210
180
120
176
186
199
211
173
232
171
202
172
201
211
206
257
214
211
197
232
205
199
214
184
180
210
269
143
196
225
228
244
221
200
196
192
153
205
192
218
232
192
196
125
170
234
191
221
179
214
235
158
168
182
194
208
225
197
220
231
203
244
201
217
159
160
182
212
224
174
206
218
193
217
153
213
187
199
258
209
177
132
186
144
201
229
150
198
158
216
260
169
171
180
206
249
208
176
190
160
240
133
125
218
219
183
251
235
243
190
245
169
193
192
211
196
215
166
173
137
224
186
242
217
213
212
203
150
226
194
198
199
248
144
176
168
184
203
107
250
210
245
212
179
223
195
177
175
187
247
228
255
224
188
229
208
168
207
199
146
182
156
214
243
182
181
216
213
220
202
239
216
185
152
163
195
239
253
208
244
150
235
240
256
229
232
231
178
222
186
223
186
224
185
235
189
120
162
194
162
208
227
217
223
139
220
194
159
186
211
149
186
217
209
149
216
153
215
213
210
144
204
252
271
165
220
241
209
198
144
221
145
209
241
140
194
201
132
236
170
129
177
180
245
294
226
252
236
201
223
216
236
157
214
218
194
235
179
237
178
174
164
241
171
190
117
166
236
189
209
223
267
181
211
184
142
219
232
232
191
189
239
253
203
148
207
228
170
242
225
185
212
221
191
210
227
180
175
212
226
235
171
275
206
208
208
165
162
207
205
262
117
169
196
228
206
159
250
165
185
173
203
204
223
238
147
216
169
147
192
163
189
295
276
197
232
125
152
223
234
161
177
224
224
223
178
216
115
169
261
180
257
155
197
210
137
140
243
227
186
220
240
230
177
234
225
143
191
213
237
207
227
226
234
207
175
240
159
228
170
178
181
209
212
189
205
147
127
196
164
211
174
158
175
273
206
198
101
157
264
207
208
158
206
161
270
177
161
261
194
204
222
231
166
199
230
224
206
193
198
177
230
213
173
258
221
185
260
265
206
172
184
159
190
184
191
224
176
237
184
214
195
223
252
174
225
206
171
177
204
169
211
188
221
142
129
153
220
216
203
245
197
138
182
227
238
268
170
139
206
175
165
134
242
206
188
170
241
254
271
191
210
228
219
249
193
175
224
199
230
207
244
189
161
216
178
209
207
238
243
225
233
161
190
227
230
223
196
163
211
179
202
159
164
182
276
160
213
133
218
201
197
143
211
206
186
178
216
196
137
290
176
258
203
198
195
198
192
139
172
123
160
213
123
188
208
203
202
146
253
221
197
231
147
168
148
217
262
240
174
208
217
186
184
186
212
221
208
231
223
203
239
182
233
244
220
221
176
188
204
106
215
212
199
182
166
198
224
229
226
181
205
186
231
232
143
187
193
201
207
193
182
230
230
156
159
171
252
203
172
185
223
232
217
166
183
206
216
175
183
193
225
217
202
218
198
227
144
186
175
218
160
245
158
235
247
230
227
212
211
203
213
267
208
142
225
219
195
142
204
198
220
210
256
204
270
159
186
194
172
248
219
248
184
164
220
238
242
229
185
221
197
171
235
211
211
170
139
191
192
151
156
152
230
127
168
180
152
196
230
206
168
231
248
185
235
260
250
216
215
189
218
232
189
235
226
178
200
173
156
251
168
229
190
182
170
210
142
220
141
151
202
201
106
159
161
207
213
192
215
151
193
198
257
193
238
249
164
233
205
233
261
188
208
211
226
246
178
188
228
187
246
191
164
256
195
199
177
148
215
224
172
195
213
245
197
232
193
164
197
201
212
265
265
187
198
179
192
205
180
175
240
204
161
135
216
208
153
190
269
174
223
215
278
124
179
236
224
175
199
234
135
118
191
211
143
240
228
222
158
177
152
206
240
192
221
148
224
202
252
182
253
234
183
176
203
204
202
180
139
208
234
211
192
236
177
171
260
200
177
156
148
133
194
209
170
164
151
164
145
192
182
203
218
217
185
199
210
194
273
226
198
130
252
209
234
200
182
226
222
186
151
148
177
243
197
219
190
204
152
223
246
223
240
184
199
182
174
204
174
130
188
204
181
200
172
145
157
220
196
208
232
220
224
200
218
203
185
214
205
163
237
177
260
187
177
234
194
215
211
208
199
225
253
206
155
145
208
213
192
176
196
209
172
201
192
198
172
202
203
268
158
150
205
220
204
142
174
224
205
245
219
155
195
243
223
217
239
220
244
196
250
180
248
156
219
204
235
212
218
178
221
173
156
214
210
203
160
262
211
218
239
216
183
188
205
220
239
267
188
154
182
200
179
143
163
205
175
145
259
155
203
211
202
166
246
193
186
188
165
220
195
188
219
184
206
181
243
155
190
169
177
140
198
223
161
189
216
178
134
203
200
211
196
187
189
191
224
208
196
202
238
232
193
199
199
191
266
196
150
222
173
173
221
248
148
201
166
196
240
208
241
230
205
210
164
134
165
218
230
193
237
182
144
157
197
232
187
234
192
179
248
183
194
199
210
166
238
282
229
163
213
257
237
227
199
194
238
219
267
200
119
199
235
246
194
194
223
238
227
225
252
185
210
201
229
169
214
236
237
160
176
166
222
208
168
202
180
227
219
223
240
201
176
181
200
182
197
208
229
172
172
175
189
126
241
166
192
192
251
177
203
217
237
221
194
157
249
213
133
186
234
169
160
188
146
223
215
213
154
286
226
238
161
205
254
186
267
232
187
127
192
242
256
197
170
203
194
173
209
119
208
222
167
155
116
184
194
146
196
236
234
199
189
152
166
239
132
204
214
211
183
235
174
193
192
172
214
171
203
142
183
244
279
171
195
174
222
175
198
215
194
186
220
153
171
280
240
228
243
239
195
203
177
149
183
248
206
181
213
170
143
193
179
234
241
161
225
214
195
253
210
193
264
233
262
182
172
216
232
156
209
212
201
195
121
183
155
219
232
184
221
205
208
174
185
227
224
159
219
197
221
219
220
204
148
148
135
193
218
242
211
195
202
146
221
167
181
222
232
227
137
251
172
234
189
222
205
217
200
234
255
162
219
197
208
207
179
164
196
178
243
176
160
151
262
210
208
222
189
239
246
109
172
238
166
198
189
216
226
170
208
246
193
173
225
154
206
233
163
184
204
204
215
180
161
180
229
202
165
239
247
277
244
209
244
215
224
211
184
168
175
170
240
225
233
211
226
224
226
142
240
234
161
217
139
168
187
161
220
220
177
219
211
228
211
198
213
277
193
238
245
235
237
213
238
200
247
231
225
214
208
177
202
170
161
221
230
177
251
168
123
261
243
202
186
211
198
204
184
226
163
157
164
181
183
221
258
194
232
141
188
255
252
274
172
214
214
164
168
204
152
237
164
182
220
255
247
183
201
247
192
200
253
229
165
213
213
224
197
197
197
152
168
228
178
252
194
194
136
199
226
198
240
260
205
198
198
269
239
228
230
167
216
177
145
205
273
279
186
235
219
247
151
219
192
288
217
215
191
272
200
207
246
217
182
191
185
210
153
240
174
176
167
218
168
169
202
232
203
215
216
240
174
155
193
230
196
207
118
148
144
248
212
262
167
208
178
192
157
213
228
169
193
207
198
266
223
263
284
196
247
195
220
214
159
163
207
201
217
146
223
249
196
180
226
187
219
148
190
176
209
224
251
248
172
205
203
226
201
151
207
219
248
280
227
224
194
262
171
205
260
239
228
243
200
211
118
183
190
185
179
223
130
196
162
138
212
202
206
247
157
202
108
233
235
271
188
174
143
223
129
225
196
157
188
211
244
208
231
219
237
165
208
176
200
223
163
234
244
137
149
176
126
225
196
208
202
216
213
190
204
160
150
161
245
232
214
182
226
169
213
255
220
182
238
274
235
197
165
148
198
235
192
185
199
191
160
208
122
193
246
161
157
170
192
172
144
171
215
168
136
152
213
236
140
194
161
196
255
238
240
236
286
262
176
217
237
243
252
272
172
109
220
207
225
229
236
187
222
196
169
274
210
195
186
217
138
234
244
258
218
184
212
231
201
187
201
210
185
214
162
191
174
249
184
189
189
188
216
151
170
258
133
152
176
148
184
209
183
222
88
235
198
242
144
146
223
193
231
204
244
148
257
253
174
162
144
158
230
196
212
187
267
175
253
205
214
208
173
188
165
213
267
194
222
204
204
212
229
183
222
204
215
179
207
253
250
254
166
209
211
216
213
193
223
200
195
190
173
235
150
166
224
240
137
177
185
230
180
255
194
227
177
200
197
213
269
186
202
278
109
215
203
126
166
186
175
239
92
210
190
186
255
217
229
174
171
230
287
212
215
191
246
205
194
148
185
247
221
189
209
160
242
213
180
255
239
183
231
238
181
180
186
232
229
177
166
190
209
207
176
190
177
209
215
141
145
231
190
151
182
217
187
210
225
188
265
171
174
201
206
248
170
233
200
223
166
181
281
201
254
168
244
192
250
157
177
210
158
139
191
199
218
191
214
272
177
134
178
173
157
197
142
262
146
213
173
182
229
206
149
257
211
236
193
242
201
208
161
116
234
215
200
234
189
191
189
227
187
203
149
192
171
266
119
192
207
200
182
222
165
215
224
205
136
234
192
160
196
178
154
235
134
190
177
161
236
191
165
157
179
228
206
152
226
228
223
214
237
273
174
157
231
238
213
213
188
144
199
190
234
139
195
221
190
191
216
230
279
215
171
120
237
185
231
206
209
250
204
251
259
182
138
246
215
153
230
190
236
161
180
187
193
232
187
239
154
212
195
199
206
188
223
178
148
170
143
242
232
209
145
143
206
224
264
167
191
196
187
213
235
191
249
221
181
240
220
215
197
173
253
223
171
200
186
219
232
225
256
195
189
187
267
214
196
261
253
178
195
181
163
205
252
167
230
253
283
171
163
217
178
175
178
224
157
202
169
172
137
193
227
186
259
199
194
172
245
242
219
240
203
269
226
146
253
200
184
285
184
201
237
248
157
202
207
168
218
201
172
186
178
173
175
173
206
142
231
209
227
224
247
230
235
187
204
176
190
167
185
231
155
215
188
160
223
202
243
159
240
195
174
183
216
241
208
176
214
210
236
242
219
179
182
263
226
269
184
221
218
296
191
260
214
234
183
215
241
198
165
139
209
240
220
198
218
212
226
162
174
200
184
168
247
238
248
222
231
254
173
252
107
210
142
204
197
195
197
218
103
242
247
222
176
250
167
269
206
195
235
264
140
203
200
187
188
210
229
212
184
131
209
155
162
203
155
184
185
178
218
182
127
118
234
196
234
172
157
246
179
189
192
206
208
206
165
238
226
131
215
221
211
212
227
177
157
194
170
212
196
192
215
197
195
234
228
202
224
220
223
231
189
137
151
209
240
233
231
206
217
208
251
166
228
191
210
195
221
240
196
192
176
245
227
223
151
241
233
224
227
130
223
153
198
238
189
120
232
233
191
154
185
217
186
217
161
205
186
160
179
142
241
221
232
143
198
226
205
217
226
236
136
181
146
223
179
173
208
198
198
236
221
193
163
134
202
240
170
173
275
195
173
173
221
133
185
201
129
170
187
169
190
259
143
287
172
233
222
222
180
241
184
206
245
248
153
165
257
240
265
264
176
151
149
246
228
138
134
179
220
179
169
192
171
217
188
250
148
251
241
232
198
224
222
142
208
203
127
270
210
163
218
181
240
236
181
213
184
215
208
183
218
243
227
203
186
178
177
236
158
217
174
253
222
214
127
136
224
192
174
210
166
214
190
223
233
207
238
233
224
203
211
179
194
205
206
185
203
221
205
138
221
152
204
206
157
237
190
186
152
246
285
191
167
178
161
238
184
182
181
228
239
257
204
194
250
233
223
162
200
174
199
156
227
181
211
247
206
238
193
193
304
204
262
181
190
227
194
226
213
151
174
167
166
192
134
218
232
246
258
188
223
195
241
139
201
233
226
197
187
183
191
219
208
192
216
174
214
181
219
241
202
213
249
228
194
227
186
124
193
270
188
223
162
171
253
270
217
149
186
209
213
200
235
204
209
214
240
235
232
193
195
202
195
183
196
210
237
225
122
168
207
212
192
208
235
241
166
147
289
268
195
158
180
188
247
267
199
164
230
199
252
128
256
190
197
214
195
246
194
232
167
177
216
228
203
165
232
232
256
230
271
179
182
218
209
206
192
239
220
188
233
170
255
147
211
186
232
180
230
230
181
248
225
236
132
252
181
192
182
217
216
209
209
141
153
206
229
230
175
215
162
206
191
176
172
196
155
142
239
237
292
175
229
269
180
188
187
132
194
205
201
227
208
210
196
223
184
186
182
242
180
207
137
189
196
221
160
163
182
164
209
153
197
188
200
226
209
208
220
249
210
175
213
183
212
217
148
150
151
193
232
197
204
179
265
191
219
240
170
231
211
184
214
233
223
234
190
210
221
184
169
155
260
236
240
168
221
206
197
197
247
242
180
220
187
204
204
218
233
209
225
123
204
124
185
218
248
193
189
264
198
212
222
122
212
189
215
217
200
183
166
232
165
184
159
169
218
172
231
217
143
210
194
270
201
157
212
195
233
209
153
187
181
130
254
252
189
225
235
254
234
248
149
237
255
234
175
195
187
160
186
164
189
221
138
199
176
213
212
178
144
119
250
215
232
136
262
150
207
183
203
148
200
249
240
170
232
222
279
195
219
181
107
161
243
190
253
240
171
230
187
233
217
256
242
206
171
183
254
212
157
195
180
238
163
210
188
180
153
195
208
166
195
198
209
237
207
221
190
185
161
205
200
159
212
239
208
225
187
201
144
196
138
226
229
209
140
208
173
182
236
213
200
225
218
202
209
141
191
190
255
219
213
224
236
182
189
187
221
123
175
214
206
145
203
251
185
208
224
195
171
172
240
246
185
200
182
213
236
214
171
174
236
191
185
212
207
184
182
214
235
215
261
201
194
176
267
222
179
156
209
162
167
134
180
250
173
191
151
223
239
222
226
187
178
196
228
224
200
192
261
214
248
163
266
183
226
241
166
216
211
187
238
172
219
247
235
219
229
230
196
194
175
156
149
223
242
195
260
134
230
201
213
236
226
198
187
203
221
228
263
168
181
226
188
217
176
184
168
201
175
121
229
221
176
238
202
197
182
213
237
215
88
214
246
181
160
193
229
161
243
213
246
209
177
209
190
220
158
138
188
192
156
239
202
255
176
231
176
201
185
191
183
229
200
214
204
168
234
228
179
202
204
200
137
224
181
245
197
163
192
186
224
207
154
136
193
217
252
196
132
120
197
211
216
223
230
211
201
228
171
171
246
247
212
239
172
173
138
183
105
245
157
179
205
215
186
223
211
189
195
202
222
246
193
189
206
213
216
134
195
165
250
159
189
161
255
139
198
250
175
192
181
126
226
186
229
183
196
224
197
162
179
193
248
171
181
144
162
206
146
190
228
196
165
194
184
207
209
231
208
256
125
166
225
190
213
137
209
207
224
220
154
175
190
193
185
169
242
208
264
142
130
204
157
237
193
211
218
231
209
205
196
232
180
215
133
203
174
171
176
171
235
231
172
217
240
164
247
192
184
148
216
213
207
163
252
221
190
174
183
206
98
209
221
252
172
213
137
161
176
103
173
203
178
134
221
196
174
197
173
161
311
168
167
240
194
241
217
240
183
185
207
240
191
155
246
217
193
167
191
204
197
181
197
163
183
206
245
201
195
173
179
228
187
233
236
185
209
163
147
241
209
153
212
160
188
253
177
207
220
172
185
203
135
206
195
212
193
153
211
190
201
184
192
142
230
199
148
222
143
200
159
214
225
261
157
160
185
186
237
180
159
252
146
258
218
225
199
187
200
223
243
249
216
186
215
206
226
247
224
202
219
251
242
258
209
179
180
178
172
188
196
185
203
220
170
247
158
197
257
172
204
184
204
205
207
234
198
211
247
230
202
203
212
177
222
193
171
181
237
163
190
260
178
217
253
216
263
244
200
209
222
214
245
197
214
239
142
259
188
226
174
219
196
194
212
183
146
222
153
167
246
215
164
187
186
220
138
229
203
192
214
245
205
217
195
185
185
210
218
233
181
262
215
172
171
181
110
209
172
232
210
201
226
187
201
174
196
200
182
236
195
221
221
140
175
240
202
188
180
190
185
178
289
159
238
173
188
185
153
238
131
155
164
217
261
158
165
157
207
188
186
174
221
190
227
252
171
156
163
203
245
212
170
166
236
180
210
204
189
218
245
157
256
234
227
198
233
218
167
242
229
234
203
250
121
196
200
240
259
199
217
158
182
224
173
212
189
207
220
238
229
200
251
226
193
142
200
223
223
190
215
240
255
194
206
217
155
125
168
182
264
245
164
225
204
147
278
187
210
217
206
165
211
168
159
230
229
249
184
241
189
211
175
136
204
242
207
189
200
149
172
152
210
255
216
144
176
170
209
157
167
192
244
257
268
172
218
175
186
176
245
206
276
160
134
226
214
170
187
157
119
190
219
161
212
202
257
247
243
233
209
287
186
212
185
149
188
216
238
200
207
164
168
257
198
195
213
228
240
118
183
228
220
131
191
152
239
213
309
177
278
169
215
197
209
174
233
225
227
223
251
159
212
191
226
166
194
251
212
173
170
193
211
219
197
156
184
233
208
186
198
204
189
154
220
200
202
163
217
230
177
192
173
235
187
163
196
206
201
239
215
181
193
180
239
213
237
153
224
236
234
138
152
227
213
176
168
193
224
194
185
223
212
242
190
156
237
227
233
224
162
216
224
219
153
172
192
202
163
239
229
184
209
173
263
178
127
177
170
264
245
219
209
184
228
242
187
207
207
181
224
229
237
211
205
196
227
245
236
231
146
213
198
170
227
211
198
238
241
240
234
157
252
237
187
202
199
154
159
247
208
247
209
193
187
240
226
167
241
199
261
174
200
198
168
180
202
221
212
203
164
141
220
180
195
207
240
169
215
193
127
255
272
230
220
192
229
201
199
156
229
208
191
191
184
155
196
234
109
175
175
202
195
244
244
230
219
265
223
229
182
199
176
265
180
165
204
146
181
198
244
221
242
193
180
263
175
228
231
210
166
259
234
183
262
227
226
240
192
152
148
261
196
196
237
202
149
263
262
230
238
143
193
220
208
180
164
221
271
171
262
261
180
200
156
287
210
159
161
244
144
220
151
182
264
185
146
164
223
146
160
142
220
239
182
140
120
208
186
181
177
182
203
224
242
133
220
154
150
211
230
197
171
225
235
221
257
127
215
214
242
146
107
148
186
215
207
191
163
262
171
173
191
172
236
225
164
268
238
183
145
226
243
202
193
156
205
231
168
223
182
176
162
244
176
260
226
244
263
177
140
166
237
190
141
218
247
207
193
260
196
161
133
224
243
237
224
216
149
215
234
209
100
156
200
218
133
141
193
228
198
192
212
204
166
239
180
197
188
125
153
218
220
183
197
239
199
225
135
146
228
173
265
218
191
167
233
162
169
248
248
170
166
187
167
226
173
204
158
226
169
209
183
167
187
189
234
194
210
166
167
228
205
195
244
218
187
153
211
163
260
157
185
201
193
203
159
218
184
196
222
173
222
274
183
200
217
239
167
115
180
217
240
188
201
180
155
165
217
192
186
203
223
148
237
177
165
171
254
223
184
202
209
231
182
175
105
228
247
154
194
149
147
217
225
151
179
173
164
238
231
142
185
247
190
193
255
208
216
215
237
234
207
170
170
182
163
146
252
129
181
144
222
239
158
204
189
167
182
125
196
209
213
144
230
160
219
199
227
207
229
176
139
141
205
171
202
225
254
208
178
175
216
244
188
130
216
178
226
268
228
222
108
213
180
262
241
204
235
196
204
189
219
209
203
216
230
252
205
161
265
194
183
138
197
234
176
234
218
198
214
248
159
266
208
223
212
240
193
223
142
206
223
183
195
200
186
270
188
200
163
275
196
182
206
215
152
202
173
171
180
218
174
217
121
156
175
152
230
190
233
158
211
182
159
179
246
206
198
184
144
142
218
202
219
200
218
187
177
168
207
220
154
228
199
224
206
241
107
185
224
165
170
130
233
181
212
148
255
204
221
205
198
148
200
213
257
135
245
179
219
175
262
193
202
174
192
242
175
195
228
172
196
255
236
184
175
170
175
136
284
140
173
189
167
185
206
172
236
138
284
115
215
166
211
185
211
254
206
212
202
184
235
219
201
260
218
179
203
161
260
205
174
165
193
191
177
182
208
243
168
213
185
130
178
185
211
194
187
168
240
171
203
217
171
213
253
190
158
237
201
189
224
213
208
166
225
218
217
167
229
184
273
133
208
144
181
258
168
129
198
145
167
248
154
220
225
235
231
195
211
188
233
138
235
148
268
223
134
213
197
145
183
216
193
190
209
199
146
187
185
228
162
243
170
155
210
262
210
173
153
261
171
162
207
183
204
218
207
226
182
210
208
189
199
201
240
194
209
193
172
241
224
184
195
216
151
197
119
207
136
175
169
201
181
257
156
188
270
227
211
172
204
204
221
195
196
247
197
161
244
231
224
244
244
236
222
190
207
201
182
198
229
210
162
212
220
221
192
192
223
121
195
137
226
196
238
238
232
201
145
194
193
198
220
184
262
170
222
185
239
205
193
232
205
201
243
250
114
280
204
211
241
242
207
189
190
130
173
205
187
233
205
222
207
179
120
184
238
197
209
183
207
209
234
216
194
190
172
248
183
269
157
222
175
203
211
204
125
198
176
237
177
225
200
149
236
171
256
187
202
168
226
154
258
219
246
191
208
240
200
174
194
225
214
216
238
203
132
176
268
184
240
146
245
198
180
222
226
199
227
240
280
190
171
195
163
132
179
133
236
261
145
208
172
149
240
162
193
195
247
155
156
206
183
269
166
175
174
264
250
190
199
190
244
284
190
169
182
195
212
141
200
184
166
197
232
174
149
215
246
228
189
188
241
171
222
239
204
150
165
195
238
140
200
260
216
228
244
216
205
209
210
156
224
223
208
200
201
135
165
165
123
207
265
210
232
224
169
228
225
104
230
186
174
199
158
234
136
178
256
220
206
156
120
161
246
201
155
206
184
256
222
211
215
152
161
168
233
223
184
175
164
172
126
167
194
150
167
135
160
188
120
215
206
181
187
243
197
199
248
199
218
171
152
234
158
217
191
205
204
231
186
277
210
203
172
212
249
243
206
203
175
172
237
225
192
191
296
203
195
164
174
221
196
158
218
169
222
183
215
252
150
233
227
209
238
170
198
239
197
186
267
264
173
208
160
169
213
197
215
239
206
169
240
171
190
207
255
173
197
133
180
208
153
216
200
191
186
179
216
189
221
242
200
184
158
210
185
165
213
169
194
196
193
195
220
228
227
192
227
215
136
200
139
164
159
175
221
246
176
240
196
234
161
139
158
191
225
188
178
197
173
167
251
181
265
159
216
152
168
213
194
178
185
174
211
202
183
265
198
179
196
226
225
228
249
216
219
260
195
173
106
233
208
191
203
230
198
228
214
187
139
209
207
232
254
234
175
206
273
196
240
251
209
186
218
160
238
170
287
233
208
220
260
173
208
149
183
241
221
212
234
213
216
212
196
241
173
209
157
202
243
124
273
221
163
241
203
176
194
188
195
233
221
232
209
232
194
191
180
192
182
189
211
207
189
200
212
206
162
180
190
233
221
117
222
193
207
218
226
221
192
194
166
242
260
156
190
245
171
184
207
238
175
196
193
219
192
193
173
168
225
236
217
193
164
191
224
190
220
220
217
168
119
169
182
260
201
227
209
264
172
196
214
179
107
184
199
216
222
160
174
233
201
223
231
189
194
260
189
98
239
176
205
225
221
141
233
214
122
168
138
181
194
151
231
197
202
161
239
183
289
156
197
248
173
214
228
182
182
272
199
159
158
224
214
212
151
178
147
157
142
196
199
175
178
163
219
239
168
230
156
184
245
248
225
159
223
218
237
201
184
208
181
161
263
146
181
168
195
176
238
184
137
173
197
208
166
202
172
189
112
206
221
163
236
139
193
166
203
188
216
228
202
207
208
201
219
171
226
208
187
211
187
225
210
188
235
205
181
225
196
212
205
176
163
229
155
203
219
158
187
184
173
153
218
210
178
215
213
196
217
156
207
197
190
125
226
186
228
267
267
176
180
227
201
191
205
199
232
246
175
184
253
255
201
206
214
222
227
220
243
214
211
231
185
201
256
202
207
247
229
87
184
211
146
145
213
161
206
108
223
206
190
264
212
211
262
195
256
215
130
247
136
211
186
208
185
157
242
196
185
211
151
191
205
204
187
171
202
244
165
197
195
218
209
243
130
197
161
207
173
157
196
150
177
241
188
213
208
153
234
173
203
182
164
185
191
200
214
196
172
182
140
218
249
190
194
257
187
167
240
236
184
216
207
250
221
171
225
222
177
222
202
192
143
234
237
194
144
239
181
184
191
180
179
241
194
186
211
206
190
188
203
179
208
188
294
237
200
176
161
217
202
186
207
217
253
203
208
253
151
147
231
196
196
176
154
263
207
133
247
201
231
128
215
266
166
223
187
186
265
187
168
195
205
161
256
213
198
222
220
234
201
141
165
203
211
221
195
228
168
254
177
195
163
281
271
222
187
235
209
187
203
256
198
189
265
208
244
154
180
245
212
210
274
158
221
246
256
254
212
204
252
241
208
240
189
190
177
135
178
210
216
156
197
203
153
209
210
227
204
287
143
182
219
182
152
179
152
209
165
152
202
212
215
247
236
133
237
157
221
203
161
251
201
198
229
185
188
222
206
207
128
213
226
196
189
183
139
182
174
178
110
229
259
263
240
224
180
249
227
142
189
202
151
226
189
258
127
191
247
164
149
137
192
239
224
235
221
209
157
217
227
180
186
214
213
200
202
199
250
185
255
215
184
204
212
221
188
206
133
244
183
242
232
189
193
179
186
250
228
191
236
185
167
204
177
183
157
184
162
174
183
247
246
215
200
163
234
228
222
232
241
199
156
185
264
214
154
176
243
206
226
206
119
207
276
222
232
153
220
215
204
153
175
215
216
193
190
207
118
210
180
157
243
252
209
245
217
218
189
170
197
220
230
186
217
231
126
225
203
139
227
264
217
205
229
115
212
196
169
231
175
201
283
155
232
273
165
213
282
158
170
187
229
203
204
193
201
184
255
248
196
262
209
222
229
209
154
222
169
129
226
219
189
192
188
185
164
206
171
191
213
214
252
217
213
143
213
214
205
222
213
204
194
236
168
249
183
183
205
168
214
235
137
209
217
162
250
273
256
204
217
213
187
142
226
238
191
210
208
176
197
192
256
238
164
229
177
118
169
183
195
227
126
211
287
206
162
234
239
203
213
187
191
239
152
235
204
179
251
223
227
209
188
175
197
187
180
211
153
149
210
202
227
194
152
203
206
172
188
220
224
268
185
195
166
130
226
198
163
178
221
200
174
251
203
184
201
257
186
234
174
250
117
217
163
177
211
197
223
241
215
188
186
146
211
183
158
194
203
222
246
189
222
197
233
214
240
150
200
155
218
215
214
272
223
208
152
190
233
226
244
245
230
166
195
215
182
176
245
268
189
206
201
212
242
173
173
193
207
179
211
208
258
235
218
251
159
222
225
182
131
184
233
208
186
187
198
228
213
180
162
191
221
222
153
248
188
196
198
214
185
250
270
177
241
173
197
161
242
208
158
245
209
254
201
220
192
199
171
188
175
157
164
269
137
161
152
206
224
233
148
187
212
240
176
153
139
177
190
186
156
154
147
204
202
154
233
220
247
132
210
240
231
165
230
178
135
253
224
191
174
210
202
207
232
216
235
205
203
203
215
140
243
149
134
202
180
229
212
223
154
169
167
252
157
129
170
204
207
223
210
107
209
169
215
116
189
228
188
228
179
143
207
246
194
214
236
209
180
152
210
202
196
210
204
195
246
233
204
213
143
200
149
204
152
164
194
145
136
230
162
210
220
197
154
165
225
167
204
186
169
230
209
247
198
267
180
153
219
252
188
206
227
201
233
124
143
217
189
204
153
179
189
201
214
215
207
174
115
204
188
230
215
210
188
164
196
212
236
172
228
200
230
289
149
177
235
168
165
222
199
200
151
246
206
203
190
239
149
214
209
264
178
179
188
190
181
225
205
237
216
176
242
174
163
220
270
243
182
157
149
127
188
244
227
207
226
182
139
196
205
220
208
250
240
207
145
205
182
215
170
201
217
154
270
198
204
136
239
204
222
176
239
228
260
210
207
244
222
202
195
227
148
183
210
200
172
255
164
188
184
233
244
184
193
149
239
168
182
170
269
193
220
149
220
157
194
224
221
150
161
177
191
228
201
183
133
164
171
243
216
225
179
218
187
176
211
198
145
172
206
183
237
240
192
240
235
211
235
194
188
182
218
224
205
253
203
245
244
198
214
188
158
156
213
178
231
158
254
172
200
241
176
220
282
204
227
243
155
235
102
136
200
150
171
201
213
125
239
236
247
188
251
173
171
215
151
219
174
241
150
153
254
223
154
187
239
223
196
199
241
184
211
190
183
146
219
191
173
195
107
202
248
237
175
207
259
162
164
206
191
184
202
190
276
181
178
193
226
157
241
275
263
187
192
203
178
270
214
203
163
135
206
189
181
243
183
244
204
170
276
230
217
233
204
214
196
224
166
221
219
258
206
144
252
177
183
250
203
156
185
185
183
198
192
190
206
222
228
273
186
248
184
162
212
221
180
230
239
146
181
171
194
183
149
184
181
167
213
248
196
207
194
202
195
247
164
191
236
193
142
166
206
224
205
192
214
190
173
220
222
174
220
166
177
192
144
227
197
198
273
204
245
187
278
244
224
186
134
232
200
198
159
166
159
228
151
179
241
186
229
230
131
211
236
211
197
241
175
227
203
224
226
152
217
154
136
231
217
246
237
232
162
237
179
190
221
224
161
171
178
191
227
172
255
221
227
101
196
241
254
219
176
232
183
239
199
143
160
246
180
196
210
170
206
140
183
243
201
208
191
201
194
283
215
166
151
238
203
186
272
245
201
165
222
127
208
175
258
217
193
220
161
205
210
199
255
241
169
143
156
220
238
161
253
200
175
176
234
148
143
142
181
165
212
178
211
228
207
171
227
271
180
245
197
214
206
191
211
144
250
210
227
163
190
258
246
180
221
206
212
133
180
240
186
173
167
185
127
100
197
242
182
216
176
199
263
215
197
230
211
156
238
210
191
245
198
198
198
226
246
131
193
205
154
197
257
176
186
193
217
217
229
225
206
132
150
174
188
196
145
223
185
180
189
219
219
235
155
185
210
205
232
221
205
177
235
257
192
254
145
218
224
249
225
217
182
187
230
234
179
213
175
136
223
195
155
158
187
226
224
162
227
214
220
208
208
147
209
239
241
172
162
229
205
181
159
239
207
242
187
162
214
231
212
255
193
220
226
221
215
148
162
168
200
159
175
203
223
201
130
212
253
176
185
130
228
148
237
231
156
151
217
200
139
179
214
186
184
179
234
179
198
263
215
213
186
257
184
192
168
167
228
194
229
220
181
194
162
195
246
236
223
241
151
147
207
188
247
263
168
155
196
186
215
170
206
147
213
225
233
267
207
175
227
222
166
218
190
192
145
174
209
214
243
193
178
152
203
230
189
208
171
210
229
121
206
208
177
209
171
204
179
240
240
239
224
260
174
213
203
209
138
198
175
251
243
176
230
217
238
231
234
195
211
178
282
230
195
141
167
163
175
232
189
211
193
169
178
243
197
204
124
209
216
178
147
255
198
262
188
222
211
206
237
211
210
127
169
169
182
207
221
245
191
227
247
196
221
188
190
237
196
163
146
136
185
252
207
171
199
236
172
207
195
159
172
269
165
146
216
184
182
168
242
155
257
231
264
192
213
203
220
147
185
255
200
176
212
122
174
194
149
145
235
203
230
168
240
249
246
258
220
128
249
196
136
174
159
159
221
195
169
134
218
163
216
208
194
232
170
257
193
186
250
240
276
169
206
223
236
198
193
244
265
236
232
269
209
198
200
199
196
221
199
232
218
209
217
245
179
170
249
228
188
189
176
217
229
188
146
191
213
190
225
236
189
185
226
255
223
231
200
230
205
220
232
206
196
185
173
168
247
246
214
165
191
236
203
236
200
193
172
213
233
177
197
183
128
170
157
185
170
148
170
269
218
299
237
187
191
197
231
140
185
202
215
220
168
155
191
201
215
216
192
211
226
239
232
225
226
165
187
117
204
141
155
216
231
141
276
193
240
142
269
222
179
227
176
224
194
185
207
211
200
170
149
175
170
215
286
195
151
226
107
125
246
267
210
198
222
201
183
192
243
171
216
213
179
191
169
154
238
191
215
222
182
213
180
221
225
193
162
247
275
220
221
230
211
218
184
173
207
217
238
279
247
140
198
252
217
176
200
200
227
243
217
179
197
211
224
182
210
180
200
234
163
203
166
264
159
208
247
195
174
197
230
217
181
88
211
193
189
155
287
213
163
192
159
161
233
211
166
201
199
222
185
186
256
167
188
235
217
220
220
208
184
183
224
218
221
218
246
195
215
192
192
230
204
229
191
181
227
210
192
185
195
189
250
234
218
189
235
182
184
215
178
150
197
134
168
224
210
190
243
221
247
174
162
236
243
191
242
182
218
130
203
244
192
212
259
229
158
215
185
204
181
216
188
234
207
207
176
172
172
223
182
218
197
262
250
262
267
197
216
229
176
222
237
155
206
234
222
223
194
232
261
205
245
149
258
187
213
229
194
177
214
198
171
231
188
183
178
213
166
178
187
156
163
240
170
186
238
230
193
213
231
177
231
233
175
206
194
206
183
201
234
214
222
212
151
188
167
223
211
190
99
215
174
187
166
259
196
183
176
141
145
195
193
204
189
237
194
207
133
203
231
217
225
209
165
196
164
246
218
219
164
213
280
227
228
178
219
223
212
217
204
203
263
196
151
182
265
226
189
168
209
172
205
226
175
194
173
214
225
186
170
189
220
219
178
131
199
211
206
204
231
217
207
231
215
236
225
171
232
180
157
136
207
246
140
212
179
188
186
269
201
126
151
208
253
208
180
194
235
108
223
185
182
192
213
212
231
206
176
201
220
158
177
203
211
156
251
195
206
220
152
185
189
240
239
236
230
149
189
176
243
219
168
138
157
210
150
231
186
184
180
181
236
206
113
157
193
273
230
174
267
129
246
207
225
174
142
222
253
172
230
159
202
182
166
255
231
191
191
120
205
214
177
243
212
150
188
157
229
189
175
202
227
185
217
190
192
177
192
226
139
202
196
187
235
190
138
141
260
169
171
132
237
242
227
257
235
156
277
231
232
187
182
161
237
185
152
169
131
223
183
176
243
176
225
223
249
200
220
218
207
187
205
209
185
208
238
217
224
198
195
200
222
211
176
277
239
219
215
223
148
183
195
218
211
225
178
273
229
151
232
191
195
156
145
214
215
262
226
196
222
174
251
192
251
154
184
145
202
232
256
240
215
255
186
166
185
185
237
168
235
245
112
194
205
184
195
111
176
151
181
241
197
213
233
233
254
164
206
186
186
240
189
187
175
195
176
204
200
257
184
244
221
256
196
178
222
151
211
217
221
190
225
210
197
201
184
204
183
199
184
159
256
147
222
169
156
176
202
160
246
225
209
131
183
172
238
254
146
208
171
218
196
245
198
198
181
185
255
168
236
193
160
202
192
194
204
223
194
203
205
148
221
216
190
200
178
201
225
237
248
184
166
226
208
231
186
229
174
207
208
197
171
192
229
169
205
212
193
131
212
199
199
176
186
223
168
243
255
232
254
210
213
224
195
203
260
194
206
163
239
200
155
190
225
269
229
180
184
187
222
230
175
192
250
189
221
215
141
222
160
268
214
178
194
252
175
206
197
126
131
210
213
218
241
163
166
168
209
235
161
214
178
202
192
166
176
181
167
189
254
203
176
168
209
178
204
221
176
226
203
241
250
199
196
158
191
236
274
248
207
180
238
184
236
210
238
221
222
228
202
187
217
210
175
220
180
214
195
230
144
202
231
226
147
195
222
150
167
172
147
193
170
175
215
207
218
223
184
197
181
224
195
150
189
191
221
187
196
177
208
170
221
244
195
219
195
212
166
179
257
236
183
228
169
213
195
189
164
216
204
234
202
214
193
206
241
222
232
201
189
218
156
156
147
246
147
170
237
221
155
143
184
236
238
188
209
228
147
230
214
187
149
201
164
197
181
217
214
258
234
216
221
139
152
247
218
153
242
211
219
231
163
227
194
219
170
178
212
163
201
182
235
193
242
237
182
232
181
268
225
127
141
222
191
146
244
222
217
245
206
198
175
168
207
264
217
211
225
249
263
209
159
188
190
225
144
204
219
154
209
192
231
219
227
177
175
205
211
172
210
125
172
202
155
236
216
201
180
215
187
150
185
131
226
166
243
249
157
232
291
219
234
207
246
225
195
199
200
185
214
231
187
225
259
165
157
179
167
162
217
252
212
235
193
197
218
173
198
223
203
185
214
203
193
168
149
242
220
219
270
245
185
220
227
203
230
216
230
158
203
195
173
194
214
222
206
150
229
175
231
167
164
214
182
176
210
147
219
230
201
243
199
176
165
210
185
249
231
253
172
219
215
200
165
221
220
246
231
240
231
154
163
285
146
170
209
201
253
191
135
178
247
232
218
198
223
203
147
198
174
202
208
225
212
156
246
224
220
229
265
144
178
186
197
210
188
230
171
237
183
240
237
224
228
226
187
242
257
182
254
172
144
193
198
253
161
156
208
171
222
181
167
176
166
166
214
226
204
181
149
214
165
220
180
208
198
168
208
198
146
169
214
201
160
145
144
204
208
178
251
220
206
169
176
225
219
195
181
201
188
176
206
165
208
222
190
229
164
236
171
158
224
201
204
194
206
247
105
242
254
191
229
234
191
167
254
207
183
249
166
177
271
238
240
185
191
185
200
217
238
175
163
200
202
191
212
183
233
182
249
226
241
212
225
156
190
212
256
185
142
201
151
187
261
256
183
191
199
201
229
122
219
246
190
204
216
274
193
162
171
248
207
218
235
154
216
167
206
184
183
218
165
177
227
217
207
185
214
196
222
241
173
203
176
251
222
170
205
231
190
146
224
191
124
198
231
168
182
224
189
181
200
151
150
161
216
142
178
168
239
237
123
164
215
207
251
175
200
242
215
158
178
243
193
225
141
163
164
178
202
160
143
170
156
180
159
156
225
212
220
209
197
168
217
202
226
240
150
173
238
198
139
146
223
229
202
209
205
167
210
225
236
209
180
170
258
202
249
200
252
192
247
250
149
143
176
197
202
228
141
169
182
211
131
230
165
177
278
248
198
226
225
183
263
206
201
170
144
162
136
202
201
214
275
154
188
249
179
154
201
179
237
179
141
261
188
192
268
202
192
123
161
184
143
203
196
211
123
242
208
254
243
210
123
185
185
215
191
257
232
247
225
192
203
238
205
216
210
224
165
181
224
216
242
249
209
177
215
212
234
162
208
178
219
189
197
195
179
134
145
171
195
184
221
215
214
193
177
172
191
242
218
291
182
177
171
214
192
167
220
236
172
195
174
194
157
145
233
170
148
189
205
239
220
266
202
198
125
167
191
220
211
208
198
171
176
180
313
181
231
217
199
169
204
193
182
198
246
172
161
175
189
175
242
195
207
196
201
200
190
162
248
258
232
162
181
217
214
224
201
201
167
205
191
202
218
234
182
182
173
202
248
170
199
215
238
218
182
220
173
203
214
242
211
209
194
220
173
229
211
198
189
257
259
233
231
233
177
190
215
177
213
254
226
209
260
272
203
175
182
175
218
232
305
233
245
137
224
186
217
186
230
202
188
144
154
164
211
134
281
187
187
238
171
213
248
230
227
163
252
192
248
191
220
191
236
150
201
155
236
153
226
169
242
231
212
129
201
172
86
137
212
177
243
248
242
215
186
240
152
230
206
166
202
235
189
240
153
197
207
128
193
145
177
188
173
232
214
187
188
161
269
192
191
230
218
187
213
227
212
260
152
198
228
201
198
233
136
235
175
150
192
179
167
215
140
123
210
194
189
129
229
245
192
222
222
286
177
157
184
151
209
166
178
159
243
158
227
245
181
219
237
224
160
182
223
179
216
237
202
240
207
191
213
202
188
220
207
205
234
191
225
183
242
253
178
203
176
171
173
238
260
213
220
239
171
263
252
148
159
216
180
238
182
195
212
157
248
201
157
245
234
219
187
277
219
224
203
186
198
179
140
161
184
247
258
166
226
201
206
214
249
202
200
200
227
175
161
173
216
192
217
194
187
191
163
215
192
213
218
235
234
259
202
209
216
248
213
183
207
197
140
184
220
183
218
239
170
256
182
269
193
225
177
162
251
209
140
227
231
231
227
197
257
195
215
203
225
214
120
223
192
156
203
238
151
205
208
137
184
266
230
203
168
216
233
232
218
247
177
209
183
249
200
154
201
236
164
194
199
136
194
204
225
213
213
261
194
195
232
210
221
232
203
174
219
263
229
206
197
201
121
214
185
191
176
236
274
253
118
243
172
202
260
159
149
195
239
238
212
154
201
202
154
246
174
230
225
215
186
152
212
193
183
223
208
187
187
194
187
219
144
161
152
180
124
217
240
195
180
206
212
227
235
211
164
220
240
209
184
212
190
281
185
229
243
242
235
154
221
162
207
214
189
170
240
239
224
215
242
182
232
195
273
184
162
170
207
191
226
171
223
156
224
226
238
244
221
205
246
196
211
255
226
169
187
206
192
228
224
176
200
155
198
169
239
151
216
200
148
192
190
199
185
216
142
232
216
245
132
226
251
198
191
186
207
214
157
215
242
170
178
203
221
216
159
204
195
209
223
211
198
153
230
201
187
139
165
147
191
242
205
199
193
208
190
185
226
191
206
153
229
168
217
161
252
163
155
190
147
208
239
200
208
163
223
262
190
138
149
176
188
179
187
187
152
221
149
165
231
197
249
219
236
193
191
212
135
186
152
159
131
234
210
159
259
219
161
174
157
184
234
148
147
196
214
153
214
206
188
146
186
171
178
228
228
197
197
162
221
180
169
174
155
165
210
239
189
168
241
221
185
193
224
168
202
157
153
255
214
231
154
202
223
157
177
232
193
160
204
149
191
231
179
220
216
237
161
181
200
226
145
197
222
227
148
224
203
174
169
184
202
270
194
133
167
151
264
233
182
221
176
140
177
218
119
202
202
219
163
184
173
234
205
227
151
267
185
237
205
242
194
170
165
244
184
203
201
186
170
216
197
204
181
229
260
205
178
182
227
179
222
173
160
221
123
209
207
216
170
171
192
232
203
196
187
153
198
217
168
206
215
164
210
219
213
251
196
178
186
247
131
198
239
180
219
265
171
213
197
234
184
183
259
218
241
204
215
221
187
182
217
198
230
184
224
183
166
201
227
162
195
228
193
178
237
158
170
273
182
256
266
193
163
220
191
142
179
117
175
154
194
198
265
269
232
176
226
236
173
152
192
164
182
209
237
185
281
229
177
224
276
241
188
188
298
230
205
235
178
155
180
167
245
151
291
182
216
169
240
190
175
197
180
194
175
116
191
254
212
222
166
214
158
194
210
191
261
187
262
227
201
225
159
182
232
246
172
231
185
186
190
160
171
230
262
188
178
238
179
154
212
177
132
182
193
216
197
179
168
215
127
177
218
116
213
201
211
174
229
168
237
193
155
252
232
205
202
232
200
183
218
164
141
287
235
215
191
207
217
231
260
224
156
161
165
236
181
234
263
220
228
194
214
119
198
241
235
135
224
166
204
202
161
258
166
214
232
166
238
158
192
276
205
163
192
201
202
263
175
182
232
159
181
209
150
158
229
218
225
213
204
184
234
199
176
231
114
266
209
175
187
131
270
223
269
206
203
191
208
180
172
219
191
196
154
229
195
201
199
219
201
202
230
172
149
242
208
181
189
152
255
185
217
214
207
197
194
104
176
166
227
244
153
215
209
268
206
198
121
192
230
171
195
200
167
244
199
241
199
159
168
220
212
184
218
156
230
203
177
179
203
253
217
252
267
248
236
198
205
182
204
224
140
228
231
189
228
188
203
205
212
154
180
192
231
190
182
223
167
197
221
143
236
250
182
132
173
212
187
203
236
236
233
175
198
164
185
185
136
143
184
201
219
182
220
263
240
225
237
151
177
238
136
220
178
161
236
192
161
235
225
253
148
234
253
187
178
132
218
223
224
175
158
163
150
171
164
232
215
192
217
215
244
167
199
212
229
213
185
193
216
171
150
180
220
168
200
164
204
239
205
190
227
180
151
208
152
157
215
239
178
171
160
184
232
182
129
177
207
181
280
246
150
203
217
174
231
211
175
216
250
223
194
229
184
197
202
191
166
198
237
264
192
176
215
186
198
218
213
236
194
178
229
165
187
228
217
160
153
228
202
212
222
223
217
180
163
222
164
232
190
177
251
200
226
132
206
120
176
211
166
205
200
202
208
192
241
149
185
193
246
216
171
161
198
196
247
207
227
172
224
242
174
233
193
183
149
234
199
187
261
117
253
194
188
198
169
198
163
211
215
195
186
175
217
173
290
204
226
164
220
210
229
200
216
222
226
205
160
235
230
260
178
213
254
195
184
153
214
198
154
209
229
211
186
177
201
218
152
178
257
188
229
184
194
193
160
228
214
169
130
202
207
191
226
173
173
174
193
210
249
223
132
172
234
168
165
166
216
166
186
245
230
207
278
157
228
192
208
189
268
147
225
273
195
124
231
169
168
190
229
238
230
192
226
228
199
281
183
244
213
229
238
213
121
185
168
191
118
163
210
236
236
118
169
168
221
233
307
249
152
174
204
172
199
191
159
189
204
188
195
194
214
232
193
178
225
204
191
210
225
164
206
212
189
177
240
255
204
226
188
179
222
220
218
253
156
149
232
212
193
215
200
256
184
237
188
217
221
189
179
191
208
196
150
182
196
204
175
252
198
208
210
202
168
161
215
215
202
176
203
196
211
183
255
157
186
152
240
191
209
171
235
216
201
166
198
184
259
228
191
191
208
157
133
131
289
176
145
188
225
273
228
199
254
197
295
202
212
245
190
173
147
241
204
222
196
208
164
215
185
166
220
298
259
161
213
184
197
276
161
169
182
237
241
263
190
195
232
181
149
190
200
178
138
256
140
199
187
195
226
239
149
186
125
212
249
223
159
304
149
179
197
204
211
199
203
209
270
223
199
207
210
180
190
192
179
237
170
161
218
178
193
198
181
211
136
246
198
244
191
233
168
227
149
128
201
120
233
221
225
125
234
275
219
169
178
175
201
270
263
222
178
229
188
191
252
240
217
87
202
206
133
138
271
208
274
232
156
248
175
130
186
205
213
179
233
219
199
216
197
263
194
232
128
181
211
197
114
251
220
233
187
189
187
258
257
226
169
194
206
186
219
222
241
209
214
225
229
224
194
168
203
207
155
214
164
198
221
226
211
176
157
244
189
166
201
190
115
191
180
190
203
233
173
139
204
203
234
183
210
250
182
190
216
211
218
192
205
210
172
148
224
177
261
168
196
161
181
200
164
168
167
185
226
202
183
214
150
231
206
144
207
243
228
219
182
187
168
168
181
217
240
226
127
265
168
207
216
223
238
234
168
201
225
244
214
229
196
101
200
174
201
219
212
175
227
244
214
218
240
205
217
204
227
197
174
190
226
245
239
195
170
180
236
223
230
210
228
223
197
193
228
249
141
163
211
120
265
215
247
238
209
212
123
194
220
162
174
229
242
178
162
266
112
108
234
197
224
217
159
230
238
149
172
225
204
224
164
200
171
279
227
210
175
196
202
171
241
184
149
162
203
142
151
134
197
150
212
205
236
205
165
178
219
196
225
193
205
177
272
141
225
237
209
168
192
234
264
213
258
189
186
174
233
223
247
211
186
201
230
245
179
169
252
204
236
224
147
143
236
156
173
172
250
169
184
252
238
204
220
230
169
216
182
244
232
216
187
190
183
212
235
205
136
199
193
201
200
253
201
168
238
184
184
243
243
233
149
242
244
218
269
161
193
175
171
172
256
212
226
180
143
178
137
200
156
116
137
200
246
174
228
174
267
224
235
251
203
176
245
238
202
178
257
208
163
213
248
236
246
186
192
253
151
258
205
200
185
186
137
222
182
235
142
171
171
256
205
177
195
157
183
204
236
234
229
147
254
204
167
243
147
231
240
168
250
194
222
157
246
211
167
209
245
183
231
233
239
172
192
208
238
158
194
179
211
139
229
165
219
205
281
233
215
182
196
201
198
189
202
171
185
179
237
245
185
270
213
265
283
237
211
164
192
179
265
165
220
178
201
200
241
212
201
160
204
210
185
221
194
176
218
223
211
131
244
166
177
228
179
220
156
250
132
179
204
174
216
225
197
215
227
219
238
168
207
155
204
214
227
281
196
250
225
214
222
176
213
180
216
173
236
235
156
151
168
196
158
173
206
242
191
161
233
196
199
194
141
241
143
210
228
218
193
200
164
247
250
149
171
205
273
204
196
151
214
217
173
211
174
232
179
242
174
243
153
262
217
138
106
195
174
217
214
260
208
192
167
217
231
227
169
137
244
198
197
261
243
202
201
146
175
134
146
254
152
232
139
206
257
212
244
170
172
152
183
180
194
240
148
209
178
175
239
209
223
208
207
207
178
205
191
190
221
223
143
187
242
216
179
257
273
155
249
216
123
195
241
245
190
243
158
216
218
202
220
229
182
163
152
193
222
234
241
159
235
166
224
156
139
235
211
165
204
166
216
227
171
185
161
202
188
219
230
251
132
161
261
208
174
194
194
240
244
151
219
228
222
206
154
237
202
208
198
198
200
193
165
206
244
191
150
195
185
168
191
206
230
199
264
207
186
173
246
151
267
276
181
215
228
218
261
166
217
199
201
186
184
209
238
211
174
197
210
165
132
224
236
253
207
202
168
206
246
178
231
199
244
153
159
226
188
222
159
227
202
219
163
165
215
204
180
240
224
265
167
257
204
222
174
179
129
157
258
192
165
225
181
221
234
229
206
166
196
247
182
174
215
229
194
228
251
207
214
220
154
231
228
214
196
269
188
203
191
172
251
175
222
144
210
229
190
209
205
265
145
136
202
211
217
166
177
169
213
210
179
232
249
213
144
239
261
169
166
208
222
228
185
166
238
185
166
204
225
247
244
240
223
166
187
238
157
200
211
221
179
216
202
158
224
148
205
139
181
204
122
161
187
158
286
253
175
223
200
154
204
227
204
188
233
149
189
225
196
195
198
198
222
211
184
177
228
191
123
184
182
168
228
184
199
165
216
150
219
237
219
164
183
188
197
116
183
180
181
166
204
196
209
171
195
183
221
172
155
229
163
223
232
237
213
201
149
182
172
247
245
249
217
242
203
198
245
193
244
192
165
192
207
139
222
203
178
166
170
224
221
284
197
196
182
178
245
175
167
242
258
216
173
146
263
193
208
237
210
278
176
180
216
234
229
229
203
259
189
185
204
147
256
184
241
234
199
167
202
191
166
170
210
196
192
186
291
166
141
206
189
184
214
229
201
217
254
213
176
172
154
181
210
242
114
211
279
210
209
220
284
178
136
145
125
231
146
262
213
186
109
199
208
188
227
196
257
237
210
190
246
194
237
254
212
143
260
179
217
185
225
162
253
175
214
203
265
155
228
181
221
253
225
209
243
160
221
255
198
217
168
182
173
181
201
225
244
187
185
199
261
200
191
191
221
182
186
212
146
219
226
148
252
198
228
204
168
209
160
188
152
175
194
184
187
182
204
196
224
180
144
208
200
153
172
227
147
116
214
173
154
161
195
251
230
249
171
221
210
189
170
236
220
191
113
135
198
205
208
183
212
249
198
157
207
248
215
168
222
191
157
171
126
205
259
176
210
211
261
221
164
228
250
164
191
148
182
258
190
228
167
196
206
164
211
284
130
134
182
218
217
223
164
215
200
277
209
227
238
170
181
243
231
162
235
147
217
231
257
203
194
191
221
190
230
182
169
209
164
223
180
194
189
184
229
231
152
207
224
96
185
188
159
202
157
233
207
229
182
211
198
159
179
214
179
215
195
233
231
188
236
185
182
241
175
118
206
191
165
194
224
196
167
144
199
178
266
187
235
233
227
199
188
233
195
203
141
175
223
185
160
220
193
159
147
225
221
218
237
200
236
241
207
214
190
179
223
157
240
190
225
206
170
216
231
195
236
182
198
162
208
274
133
189
178
201
247
251
168
189
174
177
162
192
245
177
219
214
169
189
273
176
165
158
192
209
239
204
177
183
172
204
206
218
196
173
193
226
201
113
187
223
183
187
216
203
258
189
220
269
269
172
180
213
178
231
267
220
214
194
229
222
160
191
247
198
171
134
177
213
179
198
217
234
253
148
166
182
191
197
170
182
214
157
226
235
170
150
181
174
168
212
147
198
184
256
169
201
240
194
221
211
218
214
221
166
244
208
192
262
169
203
231
169
240
193
221
212
194
166
230
211
257
271
218
153
230
243
216
231
164
204
135
152
172
202
206
209
228
234
230
216
208
242
225
219
258
227
239
168
233
193
212
222
260
171
183
218
252
211
212
211
190
230
189
186
201
192
199
283
225
187
212
229
268
254
166
119
245
222
200
220
141
141
237
163
215
193
195
153
261
194
125
190
227
224
217
207
212
187
207
182
195
177
227
180
184
217
148
128
242
207
159
213
223
215
216
136
134
149
108
163
232
186
198
180
280
293
244
267
147
238
252
198
211
273
181
206
229
225
184
155
194
256
199
187
212
139
236
242
184
195
223
246
163
234
114
175
203
237
260
169
214
191
212
213
181
184
216
240
187
221
237
186
189
244
206
152
174
247
230
174
223
197
152
208
178
188
170
200
221
181
175
235
212
158
256
212
226
210
195
216
220
158
187
97
223
229
255
215
253
246
200
231
157
99
188
209
184
205
203
229
201
195
188
205
173
263
226
234
206
262
233
213
171
204
190
198
148
255
189
178
219
207
206
241
274
200
217
118
228
228
240
250
186
171
254
197
175
204
260
201
250
158
229
188
152
272
210
216
196
238
248
206
211
195
166
261
144
249
222
238
173
221
283
177
169
203
209
186
162
214
226
190
193
156
140
216
174
250
286
175
137
254
209
266
213
205
205
165
199
203
231
249
181
164
208
211
180
170
176
189
228
254
192
206
156
144
240
251
192
116
203
184
219
209
242
230
295
237
149
213
261
243
176
204
163
182
235
232
129
186
215
195
230
214
281
209
146
233
161
195
210
228
203
172
195
233
205
207
174
159
163
253
181
218
157
209
223
211
240
190
162
207
232
219
237
204
184
170
166
265
122
191
246
273
181
274
230
194
218
216
171
167
178
180
187
193
210
249
215
230
236
153
199
209
198
198
210
229
218
231
192
166
209
196
266
219
184
130
193
236
236
185
228
93
165
210
184
194
211
153
153
164
196
166
178
201
193
163
201
228
232
193
183
188
208
210
188
224
186
212
212
192
127
194
226
276
159
215
207
172
235
192
222
215
238
213
276
236
136
201
155
188
189
185
169
169
160
252
234
212
192
199
175
240
179
215
184
195
234
243
153
222
196
139
180
155
160
205
200
219
229
144
241
188
166
184
231
162
228
196
225
209
219
149
170
142
221
168
249
196
205
166
202
279
203
183
177
234
253
232
241
177
232
166
188
223
187
156
167
222
234
164
125
188
159
203
201
233
141
228
240
206
136
166
199
160
259
184
178
198
196
180
172
161
216
183
220
188
184
244
231
174
194
175
199
159
170
195
194
209
233
218
208
222
257
249
226
249
198
217
211
193
207
160
173
227
220
201
223
218
243
205
179
101
231
231
174
208
204
183
237
214
212
166
175
216
283
213
190
211
210
198
188
254
263
225
220
197
163
154
167
189
235
230
125
126
195
183
222
181
234
150
166
237
216
186
249
184
157
198
190
191
198
191
263
175
178
216
131
192
215
195
237
179
226
244
221
216
176
158
184
182
170
187
203
169
201
213
214
242
212
164
214
189
207
143
207
239
197
188
183
209
178
165
207
154
217
229
176
222
173
227
173
254
170
152
181
172
183
186
205
220
197
141
246
166
227
215
95
203
209
222
192
198
214
221
133
211
172
190
228
228
209
231
220
168
187
218
245
178
189
202
181
217
203
235
243
174
202
174
177
134
154
120
177
222
178
179
140
152
256
194
185
202
193
216
211
163
214
250
162
179
199
216
171
232
237
188
174
211
116
211
255
213
288
258
232
226
180
226
195
247
189
176
193
200
185
170
203
169
196
237
175
232
173
235
177
210
238
218
179
165
196
178
176
138
259
227
210
225
239
154
264
174
183
178
185
237
213
192
209
202
214
252
207
206
246
209
146
157
239
176
265
211
218
191
209
210
248
165
231
253
233
203
176
182
242
225
114
220
202
255
204
190
190
207
207
188
204
194
221
181
239
186
103
233
191
225
187
170
167
234
194
257
224
194
236
233
215
231
212
183
206
143
192
180
193
152
168
192
208
181
232
197
184
220
188
240
192
249
138
148
188
137
176
149
208
137
225
178
271
144
181
243
237
137
214
217
243
180
283
154
142
209
197
160
217
224
162
215
253
200
210
160
210
179
226
227
123
246
246
150
199
147
170
216
193
243
207
165
204
236
234
187
257
218
187
205
242
173
206
223
186
145
187
218
203
172
237
225
186
203
222
255
242
251
194
193
217
203
180
164
173
186
229
163
191
174
132
222
250
215
222
183
228
191
143
216
211
202
202
195
197
187
183
244
152
181
182
196
202
237
206
114
183
170
187
251
189
175
237
237
217
215
199
220
132
220
234
154
184
244
193
184
193
143
183
214
219
174
211
183
215
208
198
215
185
217
194
144
220
240
256
215
160
202
185
200
208
194
211
185
226
216
210
172
177
201
210
212
236
135
236
235
274
192
198
219
259
177
214
150
196
126
204
199
208
228
214
225
182
163
209
221
231
183
155
211
176
139
116
191
130
121
188
170
223
271
187
241
213
230
160
230
183
224
161
213
220
162
246
216
204
143
199
145
280
258
149
221
148
184
174
182
202
234
269
176
177
221
189
166
204
107
233
138
226
222
218
242
261
212
219
226
208
233
156
206
247
200
231
188
172
194
180
207
139
206
190
172
212
198
240
235
182
199
181
117
173
137
122
210
211
213
220
228
240
218
208
175
167
153
189
223
233
232
238
242
173
162
167
216
215
204
173
238
168
229
209
148
201
214
224
196
192
186
166
242
180
186
247
170
206
215
195
237
200
176
224
204
183
222
237
221
245
183
207
157
214
115
238
201
197
208
162
167
234
176
202
176
230
168
202
145
133
180
167
218
163
184
147
196
238
189
174
142
158
208
162
219
233
198
223
213
186
206
180
206
231
213
151
196
178
183
217
174
163
237
148
186
198
140
229
211
215
235
242
231
157
159
211
224
183
163
176
258
179
204
103
161
196
170
169
163
174
156
233
189
264
164
165
208
167
180
190
228
173
194
233
145
204
255
221
222
171
209
258
206
225
173
160
180
241
157
183
137
147
151
192
163
252
208
246
194
216
201
217
265
188
234
215
215
194
239
247
182
198
137
134
198
187
232
262
220
183
131
274
193
204
161
187
198
240
224
196
223
226
178
190
206
173
186
247
164
177
175
233
185
210
219
236
204
177
183
204
202
204
264
210
243
156
229
183
193
222
280
178
170
149
227
199
217
175
190
205
247
218
193
162
239
184
159
175
235
186
143
194
232
200
217
206
241
160
197
224
185
195
151
242
254
210
183
185
229
177
223
169
159
168
129
156
231
183
243
207
201
208
205
234
245
216
134
160
246
209
196
196
213
208
187
163
130
191
165
164
208
244
242
225
221
236
173
262
216
195
217
206
155
224
155
201
144
169
220
205
176
175
190
200
247
188
177
213
213
243
184
211
220
179
248
206
211
220
228
163
216
198
232
239
224
197
190
114
219
168
232
214
165
187
179
246
184
167
139
171
213
199
158
125
229
188
216
119
205
189
215
204
215
200
168
247
215
210
202
149
175
244
192
255
237
169
225
203
317
226
143
192
245
175
222
169
216
187
206
214
93
198
173
228
170
185
180
168
203
140
248
206
217
162
211
256
214
169
207
160
216
181
238
132
199
255
216
192
216
171
260
174
207
177
243
202
197
193
212
226
176
155
151
226
211
211
208
233
202
240
213
174
241
223
262
146
236
143
204
179
203
198
200
193
189
126
172
178
168
178
176
222
164
240
190
159
195
244
253
136
191
163
220
218
245
197
248
202
173
168
155
206
237
221
178
198
141
198
160
248
163
155
218
200
226
119
198
140
190
185
199
214
252
231
253
226
163
211
178
254
193
197
186
176
181
251
175
218
199
216
202
221
195
233
134
186
203
229
216
238
204
182
169
153
223
217
229
274
222
192
258
195
193
218
219
231
179
238
205
212
199
192
223
151
87
182
229
231
230
203
254
227
169
237
173
207
185
211
234
167
198
236
221
275
167
206
147
198
184
187
231
148
187
216
191
184
204
250
191
223
130
189
219
225
229
196
141
179
237
183
187
165
148
242
152
195
237
194
252
228
220
222
180
199
197
173
217
216
149
238
212
228
171
203
148
141
177
198
214
212
221
181
141
210
207
186
217
227
242
209
198
234
199
221
170
200
230
228
157
222
163
193
236
227
231
260
194
174
193
234
193
217
252
196
171
200
169
222
165
219
206
205
184
234
190
164
210
229
232
167
186
192
224
276
198
154
179
188
212
162
203
228
223
202
212
125
205
209
208
292
219
154
183
207
181
265
193
186
165
170
212
176
146
142
196
177
204
188
189
149
212
221
203
119
169
242
213
221
211
217
152
158
142
162
224
227
148
186
198
230
220
180
266
171
194
191
164
197
233
221
181
233
188
192
217
133
231
193
222
253
118
139
184
237
211
234
148
219
197
204
116
200
205
150
186
184
242
144
218
164
233
191
211
144
241
201
106
184
244
198
133
220
180
216
168
167
189
140
201
215
197
269
194
197
194
250
209
152
213
203
187
208
173
163
251
230
241
163
174
188
218
150
199
153
151
201
136
230
155
198
201
174
189
201
225
194
183
193
223
189
188
184
185
230
209
181
185
167
218
233
293
222
185
148
215
268
188
158
211
166
155
246
228
184
236
171
249
153
198
244
216
224
146
196
209
236
206
239
150
180
202
202
186
111
190
215
206
187
236
217
191
124
248
263
200
247
217
223
220
167
186
232
137
202
196
202
148
233
187
203
227
218
123
194
183
157
209
226
258
183
142
185
190
224
171
281
222
156
207
166
196
169
225
236
179
225
177
226
233
181
174
237
189
133
184
213
178
137
223
202
279
208
173
193
259
176
233
187
192
185
209
186
217
193
199
191
261
194
183
233
167
225
228
211
167
215
270
136
178
193
254
152
228
208
215
198
147
196
259
231
218
169
205
182
232
198
227
189
208
244
235
148
163
189
202
203
217
255
166
226
247
220
214
207
188
156
179
197
197
222
210
208
238
205
158
214
170
157
185
207
232
229
166
156
196
194
203
178
214
240
215
158
216
147
174
207
238
188
232
186
256
222
169
184
212
207
243
218
209
197
214
167
242
230
205
172
192
204
174
195
191
220
184
138
208
186
184
230
227
211
207
228
263
171
185
190
221
216
208
210
179
232
246
209
234
176
150
146
212
176
203
187
162
213
243
189
155
244
212
214
257
161
138
156
212
177
187
183
200
216
168
206
195
188
202
234
215
220
189
202
243
163
201
213
201
183
224
194
198
178
163
218
245
226
223
210
202
192
165
181
123
195
142
216
243
140
207
150
241
173
234
237
185
207
237
127
167
217
244
178
175
217
247
184
178
170
147
208
210
215
166
203
157
182
145
239
215
237
171
206
229
244
219
182
243
202
218
196
189
140
175
195
175
200
151
177
162
179
215
176
180
277
198
221
201
228
172
176
213
219
222
179
176
258
161
186
166
176
237
137
214
238
206
259
231
184
185
136
317
191
227
182
178
221
204
184
241
233
157
201
174
217
248
186
170
189
198
219
241
228
226
205
182
224
245
210
131
188
149
250
174
191
159
224
221
170
209
183
213
187
268
191
234
211
155
274
165
186
194
208
195
255
228
227
258
195
212
254
224
169
223
200
194
150
255
214
219
239
187
212
189
184
213
175
206
210
262
215
183
177
199
217
170
214
175
184
208
153
187
240
210
161
273
165
130
228
224
201
157
183
197
184
177
248
219
221
232
194
208
147
224
167
251
129
217
189
167
203
250
243
203
169
199
210
202
181
169
179
182
222
191
219
248
207
203
155
187
257
249
214
155
232
226
233
167
236
193
188
120
245
196
222
215
246
167
155
196
220
204
157
241
220
240
167
155
240
208
162
204
200
197
172
248
231
230
222
235
229
167
147
184
194
177
166
242
189
227
221
192
178
229
259
170
181
220
227
171
217
195
214
175
221
158
202
159
265
269
200
222
250
203
231
266
216
208
205
170
249
223
209
238
154
213
204
170
156
225
190
115
142
213
178
199
158
177
164
119
177
221
143
158
183
207
91
211
193
266
200
215
201
150
232
210
258
159
209
237
218
222
256
227
220
158
239
221
197
214
187
189
252
143
174
176
238
223
231
214
212
225
204
210
215
181
221
171
198
261
203
199
245
189
214
184
218
193
200
202
259
191
228
194
254
221
191
176
161
127
179
197
235
206
192
130
183
169
194
233
228
165
231
147
184
186
136
246
208
161
194
181
192
197
158
227
170
167
252
242
201
170
158
248
204
203
133
204
230
208
199
197
228
170
216
243
160
220
254
199
188
207
205
183
215
150
200
173
145
207
267
184
202
190
248
185
159
194
239
203
215
237
220
224
189
167
157
228
283
231
198
195
221
235
173
151
182
180
188
225
245
210
218
221
228
187
194
226
189
211
164
221
209
173
131
235
159
215
166
195
278
225
217
146
193
200
261
176
195
212
169
218
138
238
217
178
191
147
221
150
221
198
228
223
189
217
250
168
218
166
239
258
218
152
201
163
259
108
164
126
232
249
220
141
218
166
234
205
178
261
205
200
246
180
189
231
168
148
209
236
239
205
206
230
182
219
217
191
143
193
221
196
160
193
202
143
177
261
236
177
237
186
275
145
253
213
226
207
208
259
248
235
192
211
177
191
206
174
240
178
123
208
138
272
195
260
217
196
158
185
202
225
240
122
201
236
182
195
234
180
196
174
156
169
193
132
195
204
163
132
246
261
234
196
195
127
221
213
165
207
236
232
165
259
192
194
210
196
169
181
190
218
172
227
219
217
227
127
211
234
192
148
211
204
195
160
229
193
199
221
168
246
233
208
202
217
151
148
185
230
181
200
255
214
234
203
165
149
222
243
184
169
134
180
198
165
162
226
197
190
205
269
181
185
222
181
204
211
204
158
253
192
201
195
167
169
205
167
171
231
220
223
190
292
177
169
186
214
193
238
198
166
231
270
179
200
207
223
160
220
193
235
198
220
234
168
252
167
113
135
180
168
205
224
154
162
199
179
167
188
207
233
147
196
221
264
215
178
254
212
206
267
139
205
183
224
219
226
204
177
256
156
190
140
177
217
196
175
177
184
223
218
168
196
123
214
192
181
256
207
174
199
252
194
166
167
184
210
224
193
180
229
200
144
142
127
196
253
225
238
195
191
141
222
202
220
189
148
198
293
222
226
209
200
218
165
235
197
226
236
177
151
164
215
239
189
155
230
169
203
226
175
228
184
144
207
226
253
234
244
151
184
226
205
167
177
171
206
160
164
208
206
177
222
184
177
209
198
210
202
175
151
227
223
190
150
197
199
204
194
204
259
204
207
223
177
187
187
163
190
217
188
195
142
203
161
234
159
236
196
231
178
155
215
175
207
185
189
186
209
179
171
163
237
203
249
208
231
193
181
190
197
218
180
186
237
168
215
180
235
199
234
178
215
195
215
272
224
194
175
256
216
238
129
199
185
239
243
215
269
181
223
237
178
209
226
154
149
211
226
170
170
224
184
148
214
231
138
147
227
152
209
232
201
163
182
184
269
173
229
206
237
152
132
218
250
226
164
189
146
213
204
148
193
168
270
157
265
182
180
213
200
181
219
189
244
197
205
237
191
246
173
194
167
212
141
252
224
196
206
193
213
246
195
192
175
191
244
241
216
167
195
193
229
200
174
198
191
267
190
173
227
235
181
195
148
206
194
212
264
206
207
184
158
241
130
234
209
213
236
219
175
239
143
206
227
257
195
190
162
232
193
157
179
210
189
272
283
176
236
218
227
191
191
273
167
183
195
190
211
219
187
211
247
174
187
159
167
202
156
210
181
178
181
202
172
189
177
174
186
208
213
211
173
176
153
186
188
169
191
218
231
236
213
232
196
194
172
256
239
157
237
224
205
244
246
217
206
176
202
232
218
218
222
193
207
159
211
136
197
197
253
200
279
235
234
161
175
180
211
253
219
241
240
169
189
170
154
203
211
205
128
144
232
260
237
239
222
168
149
196
200
169
227
150
262
210
195
202
208
226
236
189
207
208
181
248
237
227
206
125
149
133
203
231
169
179
228
224
197
222
175
234
199
218
224
196
163
213
140
240
239
143
200
150
181
170
245
199
213
198
217
194
171
177
164
164
200
182
161
207
184
198
180
182
157
196
127
235
221
174
203
200
90
205
232
223
145
193
207
239
185
267
196
198
204
257
216
211
231
235
127
219
191
191
235
183
219
210
205
207
205
153
211
158
243
219
216
227
227
156
267
204
198
245
83
167
178
202
237
177
174
203
238
261
154
198
207
174
195
202
206
207
208
241
152
226
207
186
175
228
185
205
196
215
191
167
204
241
255
183
166
224
211
198
206
186
231
183
183
165
192
194
235
195
185
232
208
214
237
235
167
209
241
226
253
217
224
219
215
218
221
170
201
176
216
266
199
198
165
253
205
210
234
185
255
171
214
193
240
147
205
222
147
212
236
213
166
223
235
102
183
229
222
196
200
172
260
194
267
185
165
141
221
114
188
144
219
283
240
152
220
189
207
187
265
180
195
164
166
223
221
187
164
214
232
220
214
248
246
164
193
199
200
220
186
201
208
220
263
130
177
155
181
213
200
229
156
164
204
245
161
253
181
204
178
231
206
261
141
186
230
149
154
158
196
175
223
227
270
195
167
163
250
172
171
179
193
178
173
233
153
194
219
231
219
171
184
131
183
199
195
254
202
218
123
210
194
226
224
168
197
240
188
261
207
224
198
261
138
172
222
203
154
155
154
217
212
175
193
200
184
194
229
147
206
186
187
154
141
163
188
232
176
200
191
216
221
186
202
169
233
199
240
205
171
175
201
250
190
202
242
199
179
249
229
156
234
210
212
201
235
175
153
187
250
217
250
146
185
183
175
229
229
193
249
187
235
191
193
183
222
196
166
193
186
220
236
182
237
145
221
222
167
230
197
105
226
178
219
175
168
134
202
198
189
129
140
155
212
191
227
193
213
212
243
172
210
174
267
233
178
235
207
248
212
207
206
133
130
187
143
240
215
272
157
246
164
157
192
207
230
156
164
173
190
188
200
164
212
226
181
188
233
128
219
216
179
186
219
184
162
217
166
196
220
204
175
259
231
227
136
230
225
152
169
253
250
177
262
251
228
194
176
240
198
91
203
210
207
176
189
153
236
237
203
204
212
225
172
211
229
182
176
214
187
213
156
239
201
201
232
155
205
229
175
195
191
224
172
196
123
237
196
237
191
170
239
187
161
220
210
209
175
231
229
238
155
212
203
192
147
258
239
158
126
201
179
206
129
200
211
192
205
245
217
152
216
146
237
134
159
194
219
168
261
230
228
198
159
182
166
211
106
218
239
201
197
161
212
217
159
173
155
237
199
232
146
110
201
246
129
196
212
200
199
182
195
204
154
165
275
171
222
235
173
223
169
159
239
222
210
152
191
217
190
235
204
175
203
237
221
124
134
209
181
257
149
142
227
197
188
189
207
281
158
247
164
178
142
153
180
241
155
233
220
129
193
137
209
214
192
250
196
189
140
207
211
182
247
190
224
183
192
211
173
225
166
180
199
230
195
215
219
131
233
233
188
254
200
186
194
217
196
160
200
245
140
175
132
203
204
211
220
213
212
208
188
227
203
215
194
191
250
241
226
216
213
219
205
182
221
192
205
178
169
181
173
206
136
208
173
223
218
216
175
215
214
238
237
225
208
158
241
188
207
242
238
204
192
182
216
173
240
165
254
268
160
147
174
241
158
207
220
196
210
216
193
221
205
206
196
258
205
194
163
202
194
184
191
224
226
130
176
192
205
158
202
197
150
191
197
209
209
204
190
214
164
191
190
183
239
119
197
195
227
161
229
197
238
152
135
229
185
208
164
179
188
225
241
185
242
218
228
217
222
198
249
258
193
150
210
228
194
182
257
234
194
173
226
189
207
167
155
152
194
211
166
227
223
242
201
238
227
214
213
244
165
208
214
233
181
236
226
137
221
215
255
212
230
183
200
230
186
228
204
249
231
193
200
219
194
207
200
179
221
217
221
161
149
156
199
135
181
208
218
166
230
181
255
185
258
206
171
177
139
229
239
236
206
274
151
235
198
198
200
210
248
238
193
219
182
186
167
130
200
218
226
238
157
198
230
216
213
229
244
188
154
221
214
123
182
179
230
252
143
262
241
205
155
188
181
195
214
230
172
203
215
176
144
194
241
256
186
280
236
215
217
211
181
250
146
95
212
144
197
265
175
193
210
204
209
215
258
224
225
229
194
210
200
240
181
204
199
228
214
204
238
171
227
172
215
196
182
163
201
180
221
140
250
284
214
189
156
191
213
159
209
138
210
203
201
179
178
228
218
219
203
232
231
209
181
209
227
122
197
228
240
231
263
234
184
199
229
242
193
238
183
181
231
194
180
172
180
175
205
271
198
202
209
266
172
199
227
220
180
204
250
206
172
195
206
206
240
249
179
166
266
210
203
159
140
259
138
236
141
144
158
195
193
198
212
166
196
197
259
205
175
186
201
236
202
176
240
139
190
193
110
198
158
211
222
195
264
215
184
174
163
206
211
231
225
196
163
214
225
226
259
140
220
210
241
192
153
247
247
234
210
212
250
212
144
149
154
182
194
192
176
203
120
242
252
202
165
144
203
249
185
231
119
219
230
137
214
199
202
178
230
135
164
225
197
136
169
227
246
210
190
161
221
220
216
222
159
241
202
229
189
210
249
218
214
192
234
201
195
211
204
129
220
182
151
213
222
276
185
170
237
174
175
152
205
203
179
272
240
187
241
167
224
221
186
173
181
173
239
121
171
261
237
201
197
190
179
150
168
170
121
197
212
220
212
161
169
166
204
139
158
193
186
138
208
216
240
159
163
167
202
194
216
270
178
240
165
261
246
168
170
207
208
216
229
236
204
205
254
211
169
223
235
209
228
242
159
196
204
224
248
197
207
184
225
255
209
224
223
261
165
184
266
146
168
244
331
270
199
236
207
210
142
183
201
232
156
166
245
222
203
168
137
182
226
263
216
125
171
233
236
200
216
230
191
150
237
236
213
205
213
200
237
241
205
197
181
205
249
186
201
193
223
237
201
206
160
207
137
179
220
265
147
207
212
195
190
218
211
277
150
201
223
218
267
239
237
164
224
190
226
208
185
198
287
217
174
171
207
206
187
210
153
150
178
235
237
208
226
208
207
191
205
201
161
266
216
229
251
242
212
225
202
244
160
193
222
241
209
196
236
212
175
213
200
145
198
189
259
250
191
210
196
241
200
271
174
191
152
141
225
161
152
243
192
248
198
212
221
222
221
189
253
216
170
224
223
244
222
233
229
232
202
205
191
225
190
221
178
225
161
180
213
166
215
219
261
141
149
245
252
174
204
199
226
213
226
174
157
217
245
156
164
145
142
204
205
236
236
193
221
197
188
255
214
254
245
211
232
201
240
150
230
225
243
237
253
143
189
156
135
246
204
190
205
214
162
134
147
203
176
143
152
184
196
230
196
234
176
207
205
181
214
211
225
219
237
219
192
265
204
183
243
218
226
221
203
181
240
181
232
170
204
221
223
210
221
231
115
220
155
264
224
147
223
131
221
197
142
128
196
231
234
251
216
196
226
140
213
162
233
229
169
193
211
218
239
200
190
198
259
243
161
191
222
229
172
179
253
225
205
158
232
194
271
186
182
243
162
219
219
210
210
242
158
193
197
141
255
225
218
229
208
134
203
151
202
95
116
220
207
196
230
244
208
185
217
144
143
121
176
225
221
196
178
212
221
221
199
229
184
191
173
197
128
217
293
146
193
253
140
178
239
122
184
183
238
208
253
196
214
140
206
216
186
184
196
171
176
189
178
201
191
222
201
251
244
155
137
232
202
250
194
134
197
240
197
192
151
199
159
237
222
150
227
218
126
199
202
187
227
242
202
209
160
157
186
167
233
186
159
204
207
247
219
192
234
221
132
225
180
252
278
225
216
256
194
181
189
195
247
170
199
227
237
218
226
204
245
190
190
198
225
163
182
225
151
233
202
134
198
219
231
258
216
184
185
233
160
118
219
224
171
203
196
194
218
215
143
181
156
210
193
199
195
260
203
207
247
215
168
112
183
179
169
204
235
167
163
177
220
144
240
185
173
238
143
197
172
219
246
151
225
218
182
193
241
213
141
179
190
179
136
193
224
165
223
200
220
222
207
225
225
207
214
213
121
171
169
268
285
211
190
217
241
173
180
113
192
146
175
211
204
163
221
194
182
191
154
199
181
195
203
213
156
221
231
220
173
153
107
163
172
116
207
205
217
181
170
206
226
122
225
275
179
221
195
156
125
275
258
122
191
208
232
149
254
201
162
211
152
220
175
197
183
154
149
180
195
223
212
205
229
212
202
195
243
221
199
218
170
178
164
215
171
205
197
174
207
186
191
164
187
186
226
206
169
184
185
188
219
241
176
271
231
247
191
235
236
192
276
235
164
209
189
140
205
219
147
114
211
166
179
188
242
227
174
221
163
187
215
237
215
192
228
179
129
243
206
165
190
225
149
190
129
171
146
227
162
228
220
172
167
183
189
189
228
184
154
136
242
198
242
189
175
222
251
198
181
218
191
184
179
187
207
234
199
195
272
150
184
223
253
235
222
157
192
200
155
219
193
200
189
187
212
225
222
170
250
202
171
214
169
215
234
171
222
248
174
153
243
152
129
202
167
217
174
212
220
202
226
170
199
172
216
241
165
146
140
184
199
203
226
149
217
182
230
217
187
274
222
192
163
251
155
192
172
203
156
157
223
250
210
187
207
186
187
239
233
216
232
204
216
191
178
152
185
258
251
166
204
180
240
183
150
216
134
107
177
239
188
182
195
187
212
208
223
210
201
167
249
170
191
167
225
214
182
261
279
239
211
217
173
237
205
201
152
210
220
239
176
258
153
212
237
167
228
179
220
188
175
237
225
189
233
204
215
206
178
180
156
154
151
200
159
240
226
238
211
198
254
186
191
190
202
240
189
136
195
183
210
158
198
132
242
198
233
250
249
190
203
196
172
179
184
192
241
275
207
181
184
231
188
200
235
215
173
160
170
190
248
112
227
242
220
153
190
236
145
128
214
189
193
188
170
257
199
247
154
212
126
239
208
203
199
244
226
210
234
218
213
241
208
200
185
226
230
247
245
229
226
219
181
200
222
241
235
146
213
192
222
180
221
164
206
248
216
183
168
119
220
210
196
226
203
193
228
218
215
189
184
228
152
201
169
280
224
179
216
217
186
245
175
175
234
202
189
222
177
255
199
145
216
217
180
158
184
158
217
230
159
225
227
266
216
231
212
241
177
236
161
219
137
163
191
122
167
188
204
156
182
237
230
140
176
195
189
221
180
128
212
193
192
195
183
233
206
209
203
210
212
191
246
203
188
154
170
180
171
264
234
225
234
241
181
220
167
188
156
183
241
218
159
206
258
190
159
229
125
180
211
188
162
267
139
184
184
185
238
188
208
196
217
200
195
228
192
218
176
233
149
256
184
201
200
182
150
190
139
148
228
217
167
177
196
204
226
242
232
204
175
197
211
204
124
177
178
220
259
220
189
204
319
274
220
244
194
205
144
150
251
198
236
243
189
197
191
195
193
181
180
145
190
141
164
164
222
214
178
219
178
192
127
188
220
162
220
173
200
235
199
236
247
239
202
189
200
223
196
249
192
149
190
196
219
231
224
183
204
196
200
165
183
247
196
122
156
198
224
230
229
154
221
127
197
229
215
203
236
244
203
178
173
262
221
209
208
194
199
205
132
200
162
231
214
166
162
162
182
218
91
157
212
151
225
158
210
277
163
161
240
151
208
148
198
214
229
229
202
179
188
265
240
229
206
191
222
172
150
179
123
216
198
213
225
209
218
158
251
240
207
178
269
252
246
188
240
229
230
225
168
212
176
209
189
206
191
252
130
179
222
189
221
154
162
130
255
195
223
213
273
186
183
205
191
179
219
233
146
192
199
186
182
223
160
185
225
186
216
196
186
196
173
227
185
239
166
182
229
217
148
270
234
204
250
198
201
139
189
150
230
212
228
146
162
256
252
244
200
191
225
207
177
160
207
228
192
228
110
150
189
251
270
201
226
134
209
191
198
206
161
209
174
241
181
145
205
163
227
134
158
199
189
226
164
191
183
196
167
264
233
242
175
219
185
242
179
168
205
218
112
220
232
189
215
222
190
234
257
173
209
224
187
234
134
187
233
212
213
251
175
179
203
154
196
199
159
242
171
197
174
221
234
179
223
255
198
145
216
195
236
175
263
195
197
165
130
226
192
218
209
203
213
208
220
228
201
238
179
198
206
167
194
140
221
121
162
219
199
166
211
153
210
223
243
199
187
122
189
230
204
232
207
195
160
227
231
165
252
221
195
208
235
154
211
213
241
198
169
224
189
193
153
184
209
193
194
199
227
150
204
190
158
278
193
148
278
179
220
161
207
227
162
237
172
91
198
167
251
204
219
195
188
193
198
196
216
216
190
216
259
227
215
156
192
223
259
177
193
196
241
199
199
213
184
171
207
243
233
203
247
192
174
176
182
201
172
183
221
225
127
224
208
189
237
212
211
207
216
218
218
220
192
192
236
218
242
228
189
197
210
148
186
185
174
219
227
186
231
164
193
203
204
206
120
167
201
190
253
164
206
212
184
132
142
162
216
216
214
215
226
182
163
248
192
231
174
198
242
199
206
147
209
196
147
196
218
224
171
228
178
217
201
162
183
232
195
246
262
124
193
164
216
168
223
239
177
305
177
206
173
213
167
260
263
167
218
160
199
152
216
190
219
190
239
184
224
228
174
243
170
214
178
181
177
265
221
246
148
192
178
217
206
218
218
157
205
222
188
206
150
224
171
249
206
300
203
232
186
196
178
132
167
192
200
193
256
216
212
223
223
166
194
218
182
220
197
186
226
193
224
247
239
171
196
151
300
185
180
184
163
170
216
216
191
143
148
204
207
237
160
219
171
140
209
175
154
134
215
245
233
206
225
186
182
149
262
213
196
235
223
191
187
248
179
149
235
171
205
199
212
215
186
204
151
198
157
198
178
210
163
198
181
230
249
164
221
258
254
206
168
274
228
165
248
158
282
207
203
191
212
191
215
265
263
260
204
244
224
212
297
195
172
233
260
225
195
243
228
143
220
159
204
184
193
137
210
200
145
183
188
168
205
215
153
221
157
162
194
171
175
132
181
177
180
201
206
146
161
165
225
214
213
178
206
221
236
214
195
165
228
204
207
239
191
192
173
168
229
228
269
175
179
191
257
221
208
201
148
116
208
184
128
163
189
238
181
197
174
207
172
168
159
178
234
170
193
220
172
182
191
169
212
198
224
115
223
190
211
218
239
172
185
219
130
217
228
175
234
151
259
235
196
192
252
228
171
234
199
222
203
231
199
143
224
240
169
152
169
193
170
206
232
189
215
210
230
220
198
190
164
201
258
194
156
197
217
167
166
262
204
208
115
157
216
161
249
149
115
261
210
173
210
167
174
245
194
105
163
186
229
193
209
252
207
235
194
183
175
198
200
197
182
191
200
201
198
227
162
153
195
235
175
214
195
232
168
168
158
224
197
157
227
228
212
196
117
198
181
206
285
127
167
192
195
200
190
173
223
208
158
208
173
186
198
164
193
274
198
203
211
257
180
245
214
200
215
214
213
217
203
215
211
160
215
219
154
206
193
240
176
186
225
203
193
243
166
222
191
252
126
220
186
243
113
194
231
209
228
220
259
182
200
134
261
179
238
226
189
231
168
155
152
200
174
219
190
225
189
160
225
108
165
193
205
207
157
217
220
214
143
197
216
245
168
265
260
194
240
186
247
201
194
247
141
229
162
179
197
198
204
188
175
233
280
240
198
194
169
189
164
204
139
135
223
210
206
213
253
213
211
189
208
204
158
182
209
137
198
188
206
204
161
204
178
215
204
255
136
183
193
118
229
194
212
226
185
194
181
150
216
250
225
209
240
212
162
179
229
186
186
209
165
246
200
206
216
235
172
193
213
176
135
141
255
154
209
187
177
187
170
264
241
237
215
226
208
212
185
219
284
138
143
152
215
205
139
220
153
248
226
210
235
207
216
155
239
204
207
220
235
186
151
176
173
246
216
266
194
204
232
194
200
220
227
178
196
226
166
193
177
145
206
191
277
186
234
201
161
195
212
168
146
187
205
245
241
186
248
207
116
176
192
175
198
164
245
226
177
189
211
220
213
246
177
223
174
253
186
235
206
175
152
175
233
176
212
232
232
181
210
192
214
203
185
215
150
172
155
203
203
155
229
199
191
172
192
150
121
193
213
173
151
203
236
207
230
210
220
205
195
175
200
142
157
263
208
215
146
148
209
242
244
204
144
153
191
194
257
226
271
160
190
193
254
185
163
192
204
153
294
104
211
183
163
178
176
199
258
195
228
224
232
222
211
233
164
151
254
177
211
171
203
149
230
197
163
213
169
202
167
186
188
239
188
262
220
189
187
160
229
166
186
279
237
234
196
245
176
164
168
186
234
172
247
204
228
226
71
177
192
127
181
183
211
193
188
231
202
205
228
219
217
235
196
172
242
188
188
216
196
210
195
198
237
208
221
230
162
211
192
216
204
230
192
229
232
189
230
250
214
216
187
225
232
191
164
172
191
224
214
184
204
174
108
248
172
288
276
159
160
244
186
236
187
240
172
198
195
121
215
229
197
217
218
196
229
209
151
220
224
192
196
151
195
218
232
213
248
240
220
181
181
153
218
159
223
236
262
171
198
212
195
197
224
216
243
177
243
208
158
223
187
234
203
229
191
232
98
219
214
190
214
175
255
251
143
151
197
189
136
223
198
204
168
175
212
221
184
235
186
204
174
160
192
260
169
163
178
219
199
204
145
143
259
200
195
194
181
169
186
180
163
124
203
143
212
158
276
188
174
235
186
210
233
214
225
165
199
220
245
168
184
216
180
236
231
180
232
254
155
183
189
216
229
252
248
244
215
183
158
196
190
224
291
256
160
210
145
139
227
175
215
209
210
210
241
263
209
207
250
199
185
187
165
200
191
222
247
209
217
213
184
133
192
206
183
172
201
244
236
250
194
182
156
143
223
197
180
225
232
190
192
156
167
191
188
146
198
216
211
264
116
169
198
212
183
178
155
207
220
215
185
253
225
196
198
207
203
170
235
200
162
253
267
220
230
200
151
227
232
148
136
212
224
216
180
171
194
177
203
255
145
236
193
205
200
212
189
270
138
168
189
195
212
234
226
157
224
224
215
232
181
185
241
205
245
218
210
257
246
177
222
266
146
284
193
198
183
204
192
208
219
170
177
179
209
211
166
206
250
198
199
241
222
152
140
191
209
204
239
228
230
217
223
223
169
168
218
238
215
229
202
202
204
170
150
190
205
190
165
186
178
189
165
200
225
203
182
241
165
125
117
105
122
241
201
213
183
223
200
165
230
158
191
171
220
191
248
251
196
151
190
197
217
144
138
216
176
221
140
187
265
151
161
184
183
200
165
243
181
230
145
204
224
205
156
185
222
170
144
193
223
245
253
246
164
198
196
233
221
200
157
188
188
174
188
211
112
259
213
225
150
233
205
217
220
166
231
191
163
194
150
233
229
243
172
117
158
218
167
240
177
222
171
176
184
248
199
246
224
195
209
218
232
203
165
242
186
242
246
165
74
203
215
194
246
187
194
237
216
173
167
207
240
191
214
188
168
231
204
243
165
142
173
204
212
222
231
222
192
246
208
163
175
145
162
198
216
157
263
242
183
131
220
223
197
209
190
203
178
180
144
193
221
199
163
191
132
158
181
233
141
218
203
113
237
202
163
173
187
237
159
214
244
214
247
204
167
182
187
188
204
235
222
205
192
205
177
225
185
223
248
197
180
240
184
253
244
190
171
212
182
237
190
223
213
217
181
208
196
158
196
206
236
227
182
234
175
217
204
199
129
264
200
211
196
244
199
191
257
198
155
244
205
177
225
128
203
200
193
290
207
204
207
217
244
230
170
214
263
159
155
211
216
207
198
120
115
209
281
162
148
211
302
211
161
253
163
253
211
130
219
224
220
139
195
154
259
230
235
186
168
197
168
201
172
228
166
156
208
166
202
191
209
131
220
238
206
225
161
214
151
160
273
183
217
203
212
295
189
261
227
192
211
212
195
206
193
162
188
260
229
192
197
224
177
244
282
220
200
181
203
190
173
203
188
194
195
230
143
134
176
177
211
203
234
144
259
193
247
237
286
224
200
163
215
201
175
157
225
228
191
260
187
193
183
199
164
221
187
256
171
217
228
166
211
195
173
244
172
261
201
120
199
176
237
208
182
184
229
157
255
222
159
176
218
224
239
170
202
118
219
156
184
249
193
226
167
242
255
241
177
200
170
238
192
235
199
233
168
221
209
237
274
210
207
251
188
275
250
199
240
246
195
182
183
186
133
215
197
197
256
196
220
232
186
269
197
249
240
207
206
162
184
228
198
227
195
216
149
148
206
218
290
170
210
245
238
244
221
194
243
139
230
180
222
199
208
176
154
119
177
179
203
202
173
232
220
158
275
246
231
164
221
209
203
235
208
231
174
224
147
255
259
238
206
169
200
135
162
135
143
194
233
217
120
147
205
187
142
169
246
235
218
219
196
204
202
192
189
286
200
223
190
228
205
182
193
223
267
231
231
181
215
198
254
187
221
222
255
210
199
246
245
178
227
217
224
217
148
184
173
195
232
219
205
251
200
226
258
203
192
121
154
188
230
141
220
232
230
191
225
265
154
266
161
176
209
133
217
149
180
154
250
138
198
239
151
198
168
214
192
227
145
174
242
204
184
180
220
157
279
252
239
203
173
233
191
140
192
228
189
189
251
197
250
167
203
181
240
258
246
171
204
200
225
194
229
179
213
209
200
182
250
232
124
188
204
163
242
181
164
190
148
213
195
226
165
224
276
188
185
173
237
217
233
151
214
211
210
227
132
189
168
237
117
157
156
189
153
213
236
214
169
181
217
217
204
223
236
186
234
224
174
218
199
188
144
224
141
189
183
225
246
181
184
183
208
236
189
203
101
138
202
203
124
175
213
250
212
151
246
185
188
199
213
197
182
196
159
193
223
267
166
187
81
226
164
188
133
233
207
276
131
189
187
215
226
183
187
206
240
226
175
220
166
216
263
157
201
169
171
209
239
187
178
182
179
171
150
206
241
229
220
233
165
109
204
148
163
242
228
202
249
176
229
186
201
241
172
165
171
208
169
187
196
165
174
206
184
197
175
227
224
181
207
225
214
146
220
264
214
217
166
198
194
235
224
180
187
218
258
146
243
209
216
173
208
163
257
208
184
158
206
212
164
189
183
196
160
180
166
195
207
244
136
206
173
180
215
191
191
168
212
243
223
237
161
176
207
231
173
219
216
236
202
213
195
246
189
239
191
215
188
191
139
193
141
270
192
211
188
222
172
165
231
116
190
187
156
160
266
188
219
202
181
182
139
198
135
182
240
196
173
254
122
215
285
163
188
221
204
144
268
164
190
158
216
199
242
230
172
193
197
189
200
215
211
255
153
193
222
165
201
184
269
142
202
217
180
238
143
283
221
144
244
204
237
255
248
175
160
164
184
152
204
182
218
208
203
184
207
207
155
210
119
174
292
246
155
200
216
158
200
174
176
225
200
191
186
186
229
167
233
186
221
220
224
259
167
167
202
224
180
245
199
210
171
211
179
253
259
189
159
236
141
223
145
189
237
174
210
233
200
219
140
253
180
173
199
159
232
197
170
170
190
230
203
168
169
264
147
231
196
214
171
262
199
222
224
200
193
125
135
180
115
183
143
217
258
211
180
163
195
193
236
111
185
170
197
143
235
246
151
205
203
157
200
218
234
145
263
225
248
202
226
191
184
219
180
233
241
166
229
237
167
261
188
222
265
252
223
226
187
207
214
256
209
211
213
225
166
208
223
188
184
261
220
213
218
233
215
114
189
224
216
234
230
182
244
139
237
178
230
196
163
208
243
233
156
216
207
220
193
206
222
177
142
206
177
207
204
155
157
143
199
200
196
208
192
208
255
218
158
160
238
173
236
183
182
201
162
208
210
202
202
142
156
211
221
185
205
187
198
215
203
145
209
197
159
195
195
237
235
149
241
237
148
143
185
180
189
220
191
209
212
184
251
205
200
219
147
211
202
204
172
170
163
187
174
190
176
206
229
152
188
150
222
157
198
229
194
170
214
128
243
166
162
279
216
251
237
197
142
222
161
213
133
138
157
148
184
242
223
169
176
203
246
181
261
191
223
189
181
184
201
176
200
236
219
266
150
202
164
220
226
220
232
232
165
154
218
204
216
177
228
185
194
236
165
219
214
187
197
185
178
151
226
212
152
235
145
164
187
186
174
170
217
176
279
172
148
255
225
253
230
213
195
190
269
228
179
172
187
169
238
211
180
212
243
223
271
249
232
207
177
219
284
249
151
229
206
226
207
198
148
221
183
201
221
229
273
215
197
146
243
278
184
259
256
169
190
270
235
230
171
244
233
203
180
187
178
239
145
186
164
160
200
151
231
219
229
206
180
217
159
143
202
220
172
189
247
182
115
202
201
170
225
222
156
225
203
185
178
192
246
146
125
258
212
203
246
207
157
192
181
130
212
213
190
231
203
272
182
184
267
187
220
218
165
223
246
168
126
262
211
225
153
199
213
203
184
222
236
213
170
170
213
219
214
198
168
250
166
205
131
244
226
244
188
110
178
214
272
226
204
212
169
174
218
179
218
191
180
239
182
237
223
278
224
188
213
220
195
266
190
210
209
208
165
290
217
148
152
257
197
195
223
227
142
168
140
143
160
255
125
157
208
216
202
234
186
189
193
178
252
212
129
192
224
123
213
196
202
214
211
184
238
177
209
172
148
223
246
209
185
211
201
176
177
220
247
226
176
209
168
191
216
183
180
222
197
172
186
178
208
236
232
201
250
209
177
207
184
250
217
191
197
193
226
210
203
149
228
233
140
217
206
238
197
231
179
244
175
224
145
186
231
228
216
222
176
198
239
170
164
222
162
239
226
224
193
202
234
175
223
180
146
138
146
210
186
188
225
162
157
223
213
221
173
191
207
222
217
202
164
253
254
242
180
192
192
215
232
198
171
151
167
229
213
217
230
238
204
237
222
179
193
136
190
266
204
196
175
182
155
201
160
211
161
195
199
166
217
193
188
229
180
190
167
203
225
255
143
234
230
190
245
205
205
244
244
150
168
260
198
157
231
195
223
178
220
166
191
230
200
226
222
255
148
163
180
147
246
207
226
203
209
200
134
227
213
137
192
206
175
217
180
216
193
212
225
211
198
163
209
162
104
208
203
183
226
201
212
232
154
202
202
136
183
172
143
184
224
153
206
221
133
191
186
218
178
199
171
159
220
233
148
195
224
245
199
267
226
136
227
181
215
233
207
113
259
141
219
238
184
207
234
210
177
200
180
129
277
175
159
197
209
210
194
190
150
171
228
192
148
203
185
235
173
230
226
217
211
201
217
211
222
234
207
169
192
182
210
185
174
161
186
226
204
203
197
204
257
173
188
204
307
174
200
230
226
186
233
164
219
151
281
228
251
215
195
218
211
219
262
139
169
196
210
179
221
225
160
181
160
174
205
216
214
177
210
237
216
201
224
202
150
165
211
215
162
198
175
194
238
149
193
197
163
222
172
187
177
204
164
168
209
183
219
196
247
179
205
211
196
161
241
141
193
167
190
235
220
203
149
182
264
197
161
172
193
222
179
235
248
173
202
220
201
178
147
208
208
202
213
169
205
154
229
163
231
172
260
188
210
231
244
252
179
184
230
243
236
186
216
215
195
223
174
192
203
213
213
214
239
122
207
182
233
142
212
206
214
265
242
204
177
221
212
202
244
200
203
173
186
216
195
249
147
173
214
215
274
217
166
244
205
188
176
213
154
139
197
219
212
211
228
171
211
169
238
210
187
240
205
222
224
275
185
257
164
162
198
216
186
194
264
142
177
240
145
220
215
185
227
188
194
240
210
207
154
189
237
197
155
230
135
197
196
220
142
301
117
164
192
179
220
219
213
208
213
171
204
183
167
161
158
225
259
242
216
224
219
178
190
189
189
184
198
228
259
232
188
204
115
230
179
184
138
167
222
258
213
151
192
225
194
225
203
213
177
183
188
147
195
182
164
222
258
196
177
165
241
236
257
191
185
209
121
173
207
219
133
220
194
190
114
171
189
247
171
229
192
184
216
237
143
213
200
190
188
138
231
230
208
185
264
213
223
238
220
145
249
172
168
234
161
213
210
224
200
226
197
130
165
158
238
205
140
208
181
230
247
138
216
188
224
153
225
143
220
196
206
254
209
233
180
182
125
255
192
228
166
173
241
212
210
220
227
214
225
190
211
257
166
197
157
180
220
181
268
198
258
255
185
250
225
150
208
204
204
204
122
187
138
223
173
195
212
179
223
263
194
178
204
247
223
158
213
134
232
208
237
221
161
197
222
178
237
178
208
159
152
207
202
174
157
190
221
222
295
125
191
191
180
227
166
149
174
175
157
169
213
218
246
165
259
225
178
191
242
204
203
161
214
214
242
162
213
143
194
250
213
229
201
230
161
201
170
133
177
183
130
200
198
186
232
269
198
235
226
188
210
231
250
196
150
177
217
197
222
192
161
178
206
152
159
193
209
223
175
198
186
207
175
192
149
198
228
168
216
163
204
232
213
224
234
199
219
185
224
108
186
182
206
145
179
230
202
210
217
223
236
217
242
173
174
172
242
249
202
200
223
194
197
189
145
221
192
174
233
170
181
230
241
213
201
237
220
207
192
170
154
221
183
200
228
146
176
125
176
183
173
257
173
154
190
182
188
204
252
245
168
202
187
174
171
260
226
169
182
204
185
176
231
145
229
204
224
231
214
186
201
249
187
184
185
254
179
152
216
194
148
198
244
221
192
221
229
236
194
180
158
219
235
218
216
191
185
205
253
211
184
207
221
202
219
171
119
236
208
183
228
203
223
215
188
150
193
240
196
155
202
178
185
211
205
219
239
207
143
238
222
157
176
214
230
219
213
236
203
235
187
136
206
213
175
191
163
224
246
246
207
176
201
176
239
190
204
222
194
219
234
202
180
133
183
192
221
175
180
242
134
195
229
193
214
192
209
221
157
192
224
253
148
201
178
201
252
245
210
186
209
160
218
162
184
209
237
171
154
185
173
227
215
177
210
229
168
166
243
184
230
151
243
166
190
205
235
192
238
203
178
200
240
195
176
173
193
253
183
210
219
111
211
215
204
185
239
192
210
184
124
190
212
219
197
179
298
212
184
273
155
234
244
140
220
244
186
207
222
180
199
204
156
142
210
213
231
248
144
230
155
164
211
281
168
198
256
202
154
182
270
198
217
201
169
195
162
206
177
179
155
225
224
222
251
241
170
177
189
161
229
230
182
136
184
242
166
228
272
202
226
196
252
191
244
234
234
155
187
183
177
251
184
197
156
167
132
139
176
229
219
189
165
204
185
204
181
258
221
141
279
236
176
216
236
224
203
246
229
199
153
177
231
129
234
166
217
176
206
205
214
232
195
192
231
163
190
175
207
197
208
192
150
191
254
236
220
186
129
200
158
182
187
204
284
161
178
211
229
219
117
183
187
176
209
239
155
243
234
170
241
218
246
203
196
223
250
247
183
183
222
161
120
192
216
155
183
144
158
139
194
163
232
159
273
148
182
182
215
167
242
164
196
223
240
148
201
172
180
239
214
133
145
224
196
229
116
207
196
175
225
227
163
222
262
247
211
289
146
227
229
196
209
174
174
193
171
243
183
155
175
173
204
179
233
233
204
240
226
232
220
205
164
263
245
258
157
219
203
188
192
211
216
172
221
209
216
266
171
215
201
173
259
236
198
166
261
269
151
159
227
168
225
187
160
197
207
261
220
201
233
222
174
252
217
242
189
190
220
182
211
211
259
225
252
263
235
194
266
198
249
211
164
201
214
263
263
174
198
178
207
204
191
230
156
214
181
146
149
239
249
166
175
143
207
168
121
221
233
214
179
232
221
216
223
207
237
180
181
192
165
231
173
195
229
155
173
255
175
123
278
110
167
249
151
167
195
263
182
130
174
181
218
141
223
157
235
240
171
265
209
219
186
201
209
236
177
180
187
164
200
241
206
213
243
290
200
251
245
222
175
196
257
216
176
235
176
246
208
228
133
231
220
173
208
218
225
192
196
208
270
212
137
207
190
200
95
181
249
219
192
189
193
228
214
156
220
237
223
199
123
212
192
190
247
193
190
188
257
243
175
219
262
213
147
207
140
192
223
222
158
193
222
237
199
153
226
204
177
188
225
161
154
216
221
206
155
209
215
211
115
221
232
249
222
239
216
181
212
188
185
177
165
210
198
194
225
194
180
211
134
195
246
155
198
130
195
162
154
190
210
196
238
174
164
197
205
197
154
230
164
185
237
219
240
131
152
249
198
172
202
235
259
174
212
279
151
203
265
186
145
232
238
212
216
215
259
201
189
180
195
165
176
243
189
250
186
196
189
188
218
242
133
121
138
230
216
259
218
198
194
209
213
242
180
193
170
250
253
227
248
187
115
237
200
217
208
165
273
226
186
256
165
240
161
221
162
174
210
191
236
149
218
171
186
206
201
211
208
158
272
214
205
208
180
263
216
126
171
241
186
193
202
191
227
184
204
196
134
232
206
134
250
232
199
222
211
173
195
218
157
274
203
190
187
204
139
144
245
160
196
199
205
224
173
244
159
258
164
227
235
285
245
206
235
136
206
170
157
224
137
177
164
196
199
199
206
201
178
210
212
215
217
180
225
227
242
229
209
205
200
231
152
163
178
222
185
180
225
183
151
238
198
229
166
218
188
184
182
248
164
213
191
229
231
185
147
232
252
221
169
199
186
219
195
208
222
230
196
202
224
161
244
223
200
199
190
153
260
235
221
139
151
213
197
165
175
228
260
214
255
225
167
154
170
135
201
200
242
237
206
180
148
261
198
181
189
168
201
189
233
209
208
181
154
225
264
237
198
217
207
230
225
227
130
172
219
206
183
200
177
190
203
249
205
210
230
272
192
211
216
136
235
125
217
212
225
223
232
194
171
213
202
204
241
148
147
208
253
284
152
231
179
226
199
215
217
224
266
226
225
204
139
174
223
224
206
243
225
161
173
181
193
169
242
129
242
166
194
199
213
215
174
188
170
206
198
192
141
201
200
211
161
164
172
184
223
210
188
184
220
157
177
189
199
231
204
234
146
188
150
152
188
176
189
220
246
225
211
165
214
219
201
211
195
268
166
195
257
228
242
190
231
219
252
128
228
241
234
188
224
221
112
225
276
220
246
171
152
179
199
206
163
194
219
206
218
170
228
188
220
202
280
174
183
199
196
195
229
172
266
236
192
196
161
166
242
223
235
121
127
202
180
185
220
210
216
218
199
256
194
217
150
141
255
237
216
204
173
238
219
190
148
191
246
233
142
162
215
215
167
226
218
185
195
119
225
162
199
186
185
235
138
222
161
212
265
178
177
174
170
184
183
157
201
224
189
208
178
259
261
214
258
161
180
171
193
117
170
238
216
134
244
161
154
166
219
187
230
150
188
139
245
215
224
198
135
218
129
142
232
162
200
183
224
221
205
235
172
213
183
174
221
265
184
181
192
234
204
209
129
194
203
233
181
236
211
198
198
225
173
224
179
232
287
137
151
218
188
139
156
132
186
211
228
145
241
238
200
246
251
169
192
195
192
241
184
236
187
208
182
166
213
200
144
200
216
167
198
233
194
235
206
153
244
212
212
164
241
250
241
160
208
201
194
257
171
188
225
216
216
199
190
216
203
211
226
216
164
227
178
192
182
190
163
242
214
218
185
220
220
248
201
205
248
141
191
229
212
248
202
162
162
179
195
188
184
175
232
247
157
247
243
248
240
128
203
157
242
195
216
222
179
221
254
144
203
177
191
215
206
243
203
268
106
186
211
214
223
234
259
163
198
176
225
233
202
190
203
185
190
209
225
152
265
176
179
193
182
150
210
197
221
192
241
260
227
207
189
185
223
147
166
150
154
236
180
166
246
169
161
255
143
229
150
217
175
204
159
226
224
255
260
190
211
199
191
118
192
245
117
254
232
183
185
178
158
133
217
121
225
204
162
176
144
170
194
204
213
238
187
206
146
156
142
169
214
219
210
236
272
192
223
252
163
156
255
238
178
182
209
197
218
247
222
147
241
177
251
222
179
195
268
244
217
166
227
191
202
222
197
174
217
174
207
163
156
255
196
170
212
187
237
134
163
207
174
187
211
237
161
239
161
257
190
256
202
205
131
243
199
171
182
243
139
228
240
239
221
256
202
216
222
190
228
200
219
232
209
157
171
204
206
162
264
225
198
189
225
170
190
190
168
168
231
208
209
155
256
197
209
222
160
203
229
222
208
201
202
295
206
186
259
227
190
236
164
224
225
244
216
141
202
216
128
167
172
196
168
236
214
217
149
182
208
177
186
244
166
200
227
244
183
181
177
153
213
224
191
141
146
212
197
196
199
237
195
198
231
226
210
207
163
168
232
204
206
228
190
232
197
163
184
175
204
199
191
214
172
204
200
169
185
237
230
140
217
178
226
144
273
214
184
175
232
187
228
236
226
140
142
174
146
225
240
241
160
190
154
256
194
215
191
205
212
201
235
218
160
179
197
245
208
139
255
199
130
204
179
182
126
237
266
252
210
187
187
205
267
198
171
250
189
220
236
156
215
163
199
169
168
227
130
222
177
225
214
198
224
174
202
154
180
168
240
203
219
150
232
238
177
197
184
231
198
167
159
230
164
142
212
197
217
207
229
168
176
242
251
200
208
122
222
258
205
241
233
182
249
181
211
105
205
193
159
171
141
147
225
240
216
136
240
198
195
179
228
178
225
200
239
286
181
192
217
202
160
222
179
279
171
224
221
232
177
184
191
245
250
214
235
174
226
187
134
216
189
254
170
209
234
159
219
200
248
276
238
185
240
251
228
201
209
240
183
245
227
198
210
229
136
235
188
204
248
183
246
188
230
162
158
171
243
213
221
105
230
186
241
230
224
199
199
188
146
128
162
180
205
182
176
171
192
157
192
181
203
202
131
169
223
221
253
172
243
239
205
245
252
178
238
178
231
190
204
190
183
208
220
187
214
186
209
169
223
173
244
199
180
187
189
232
221
194
139
212
237
154
243
162
176
221
192
218
127
250
226
203
248
226
183
216
179
204
168
198
235
235
198
178
170
210
162
209
196
141
274
201
220
171
153
137
176
159
208
196
223
163
179
176
170
190
173
225
208
178
190
197
230
178
176
203
153
225
205
193
163
161
230
182
222
217
167
178
186
251
282
225
161
240
160
141
173
183
152
184
180
251
188
229
204
203
223
222
257
239
266
260
209
257
212
165
242
228
191
183
158
251
229
214
259
151
203
177
252
199
170
160
242
111
221
199
197
235
151
204
205
160
192
248
230
213
142
235
221
156
195
160
230
217
268
247
270
135
137
184
202
191
203
169
187
144
201
144
130
178
204
224
192
247
181
255
146
184
206
166
180
245
194
197
173
246
225
276
195
163
190
189
245
174
247
193
243
277
212
191
201
196
270
252
187
224
224
161
228
223
215
193
149
229
180
215
145
217
231
254
226
190
245
166
182
195
241
201
256
195
190
253
171
214
215
190
147
165
169
211
251
222
204
192
174
199
226
154
188
228
272
204
194
169
131
183
183
207
194
191
202
179
217
217
168
204
237
126
206
223
223
270
217
207
149
267
222
155
282
238
199
232
196
211
169
140
238
161
156
304
252
268
179
227
194
248
263
214
233
181
187
187
145
210
219
223
244
156
167
224
200
267
215
127
113
181
214
193
169
220
191
196
189
195
184
245
201
220
155
234
181
177
231
228
160
179
199
207
169
170
221
181
203
169
212
227
195
250
213
181
204
151
251
170
202
232
197
210
236
129
292
221
164
184
230
221
159
216
204
231
211
172
192
220
213
198
209
220
228
163
217
186
201
191
214
182
199
257
251
175
168
127
169
201
201
182
209
217
257
205
170
193
157
211
109
187
118
188
225
248
231
182
223
175
210
214
250
133
160
246
207
220
212
184
115
169
215
213
161
266
218
148
170
144
217
190
193
200
192
184
224
174
222
189
190
203
223
179
248
207
210
106
147
139
241
179
200
182
139
199
214
146
190
244
200
152
222
179
188
188
194
211
227
156
220
171
139
180
188
156
215
191
189
202
205
121
128
210
207
194
151
194
178
207
175
198
210
180
202
170
169
191
271
263
210
143
190
192
179
232
178
185
243
188
119
224
194
220
224
209
265
199
206
266
208
242
196
138
245
163
261
171
214
212
178
135
187
244
194
179
163
153
205
201
252
188
245
136
232
160
226
199
237
186
204
202
209
168
227
165
198
168
264
183
166
110
252
212
202
204
186
198
203
187
204
171
212
226
239
181
161
228
175
186
193
226
138
210
240
109
244
197
230
167
208
197
208
176
176
256
239
192
208
161
191
191
235
162
209
195
147
218
238
117
250
209
196
238
246
171
229
240
174
239
210
164
145
264
222
231
236
196
183
187
205
213
133
179
176
215
158
184
184
213
122
212
223
223
159
214
194
119
240
222
255
175
235
181
202
183
223
88
243
249
203
224
225
134
172
237
165
226
195
165
191
237
198
210
162
207
225
176
165
251
236
256
205
249
209
261
202
146
191
209
199
191
282
227
185
133
219
233
212
213
192
174
128
170
226
206
131
217
217
196
188
188
204
177
236
205
213
233
199
202
203
193
249
203
226
253
164
187
131
199
183
194
195
189
159
174
221
158
180
214
205
217
192
199
209
258
233
152
222
173
133
191
160
201
164
201
224
205
144
265
152
227
197
215
252
173
201
206
132
194
183
152
182
258
194
188
183
179
215
210
271
224
236
178
164
220
206
205
193
259
205
150
218
144
232
234
189
179
215
212
122
240
196
198
245
255
174
189
211
163
176
181
155
223
219
178
161
194
203
182
159
227
149
200
207
191
213
225
228
209
219
177
169
223
207
239
204
191
121
208
254
221
182
139
236
208
225
198
219
216
224
214
181
230
254
193
245
187
192
241
166
216
137
230
180
136
229
254
255
181
199
154
261
263
233
157
218
179
273
170
183
221
195
161
225
245
257
222
185
197
184
252
226
168
218
232
216
199
202
261
228
204
141
166
174
192
206
182
207
186
235
203
226
196
261
219
215
230
260
178
160
243
237
195
224
213
223
224
238
144
274
250
178
235
201
221
200
158
186
207
190
214
179
166
196
147
196
149
228
175
263
116
138
205
284
232
226
184
180
197
179
212
204
177
175
212
171
198
169
246
163
229
249
103
189
204
195
163
224
195
202
181
220
190
196
243
216
126
125
226
237
228
177
171
182
154
158
154
226
135
248
240
192
216
254
177
210
242
231
195
141
237
265
145
233
139
204
114
232
265
167
183
257
205
273
219
199
218
168
205
211
236
183
235
144
183
124
170
182
215
266
210
173
218
143
218
214
204
177
260
176
234
146
149
183
200
203
206
186
248
231
254
225
216
173
238
214
174
133
226
208
142
207
233
141
216
179
210
227
158
183
199
169
243
182
225
280
210
217
245
195
262
203
187
231
219
223
212
137
224
200
221
200
234
212
229
163
174
128
175
214
205
213
201
172
197
220
184
224
134
196
235
188
235
241
213
183
210
192
187
216
217
159
137
180
256
142
209
211
219
224
198
223
220
222
206
220
185
220
133
146
189
205
168
210
244
193
188
234
223
232
229
188
172
224
219
183
176
180
224
212
227
249
230
190
190
236
212
200
238
187
207
242
213
159
233
231
153
105
188
210
175
206
175
229
183
213
244
223
216
144
186
191
224
243
197
227
165
166
149
222
185
196
182
133
133
203
233
142
220
193
159
200
190
173
236
177
204
215
179
212
200
200
156
192
222
168
148
252
214
225
132
219
141
162
180
174
199
230
155
253
200
160
156
168
280
225
264
198
206
215
204
211
237
206
242
163
189
238
233
158
136
183
248
225
199
203
250
267
81
218
191
219
188
216
206
213
250
171
233
148
171
216
184
197
245
150
158
171
145
260
194
195
207
147
233
192
226
198
231
188
190
197
225
231
205
232
238
187
160
201
236
219
198
198
199
169
279
249
200
217
168
167
193
241
169
209
183
143
209
165
170
219
218
188
176
237
125
164
214
195
229
191
273
209
167
183
281
234
191
205
195
201
188
245
209
218
117
229
206
195
270
199
167
191
110
209
235
226
213
197
182
217
177
253
240
178
200
129
158
183
191
202
193
170
250
158
264
228
179
229
207
201
221
145
228
227
170
261
215
218
177
211
205
194
175
194
136
238
135
169
166
213
205
203
185
249
222
198
246
203
196
137
152
166
122
220
211
227
161
203
147
165
187
195
238
220
238
220
265
217
179
258
243
216
231
206
205
218
244
170
131
154
205
124
246
256
256
125
234
147
238
138
204
127
173
205
230
176
232
165
192
231
162
226
175
205
204
174
201
177
200
210
233
148
243
173
192
200
192
194
204
246
188
172
170
187
153
203
200
287
206
106
217
182
227
216
208
153
193
195
222
217
178
221
213
212
225
188
218
190
196
200
186
200
195
203
184
229
162
189
225
231
169
240
173
159
264
192
159
220
135
202
237
232
222
178
191
186
210
166
200
232
183
211
278
229
185
198
163
227
249
182
215
194
155
114
156
182
248
185
194
198
200
159
186
167
215
259
204
187
150
181
145
222
155
176
146
191
216
190
189
152
238
191
254
202
135
225
222
280
181
187
235
181
201
193
189
208
140
188
156
232
206
189
270
126
141
250
189
202
167
237
168
173
142
146
197
191
146
187
220
192
149
181
204
164
158
207
176
155
206
173
172
218
254
225
211
209
189
174
200
234
239
179
215
204
246
210
207
224
258
190
187
193
152
186
180
239
210
214
210
192
210
192
233
144
169
194
191
222
201
261
172
270
189
233
187
175
163
130
232
153
272
232
156
269
201
160
218
199
199
184
207
262
213
194
224
216
150
183
205
243
234
227
153
150
178
253
205
232
210
202
224
164
188
183
271
196
171
225
222
222
202
185
177
230
144
166
195
211
203
228
198
208
191
249
163
127
178
221
260
169
236
182
191
144
185
184
232
222
198
175
210
160
170
179
219
196
203
169
254
205
152
260
179
249
183
194
155
187
204
175
196
140
181
149
176
152
236
205
183
144
234
148
217
256
219
159
216
250
199
270
249
175
195
208
237
200
234
228
184
251
183
159
148
209
169
118
219
163
230
186
156
215
222
232
227
220
140
140
171
212
253
153
254
173
235
214
200
195
218
214
208
180
201
268
138
226
168
275
229
252
233
172
216
170
207
198
156
255
193
157
168
224
282
216
174
172
245
246
203
241
279
225
167
163
252
171
191
221
229
236
187
221
227
202
182
223
166
215
155
211
184
197
216
213
217
281
217
209
178
206
215
184
193
228
157
197
145
166
150
246
193
198
170
136
154
204
178
170
212
247
200
228
219
187
268
209
233
187
234
149
179
228
237
259
221
218
248
197
186
191
170
170
247
186
144
183
246
181
229
145
189
206
245
242
189
241
177
274
158
195
184
206
170
194
219
268
256
156
176
181
142
159
189
216
228
194
204
178
184
181
235
237
202
209
225
260
189
252
199
251
185
272
181
198
178
131
227
235
182
189
201
246
213
251
144
182
180
219
222
133
208
234
218
222
188
167
247
193
188
154
181
212
193
176
217
207
169
193
198
240
156
265
272
212
198
191
231
174
199
231
181
215
202
191
204
163
236
169
164
138
148
249
210
203
157
177
197
188
212
187
250
263
150
161
238
221
212
212
222
194
221
194
169
229
157
222
191
196
253
175
172
179
218
225
204
264
190
244
194
160
175
235
208
225
246
205
141
187
201
159
161
239
162
181
200
173
220
191
182
263
188
252
142
242
138
69
177
181
221
163
215
270
212
184
194
203
144
185
193
207
199
215
213
220
208
248
128
149
193
189
176
267
192
245
229
189
233
206
228
183
191
190
167
238
175
233
174
217
177
210
247
116
206
189
185
148
247
196
245
177
229
233
200
233
187
258
192
182
194
222
187
190
226
229
265
250
258
209
139
251
209
167
209
152
170
155
225
205
188
182
163
160
189
229
222
215
205
154
200
253
217
158
192
236
216
180
218
191
157
221
230
135
195
205
234
213
196
215
203
214
211
163
215
216
206
189
139
252
168
233
160
221
206
189
195
164
174
186
195
234
240
179
219
233
143
176
166
178
227
206
174
257
228
219
246
214
143
199
142
208
164
207
124
233
205
194
265
130
211
206
228
214
206
218
173
166
178
196
165
243
151
256
211
272
110
206
177
233
178
228
175
233
182
146
216
216
192
218
218
258
217
181
166
196
136
203
190
189
242
210
242
185
186
212
180
170
203
209
183
182
214
175
140
214
195
199
234
179
203
199
240
234
168
256
240
175
196
260
252
182
183
125
257
175
199
192
168
205
197
218
214
154
180
204
250
193
181
184
189
248
162
140
210
181
137
157
180
188
247
126
176
107
189
143
157
128
244
213
200
195
308
136
230
191
252
222
227
216
156
245
252
171
228
222
213
217
198
202
191
195
176
183
281
164
199
150
273
163
229
170
180
135
174
265
153
222
201
210
150
234
188
224
132
168
219
209
169
214
232
183
206
205
114
183
165
179
219
231
207
252
226
199
203
173
220
173
223
212
192
148
261
237
169
178
250
211
188
197
191
201
208
236
177
197
177
225
236
234
202
265
187
130
139
211
235
229
237
220
205
171
154
210
170
250
190
176
177
202
179
198
192
272
203
233
226
182
162
228
209
163
164
177
236
205
164
175
216
271
217
211
206
137
166
223
155
205
160
166
228
201
206
163
174
251
190
267
226
235
149
144
176
139
241
171
228
229
210
204
184
192
251
219
228
203
193
179
268
196
164
137
186
217
226
197
243
278
251
144
210
205
204
198
269
187
196
169
228
199
166
174
233
169
215
166
182
240
221
225
177
196
208
202
201
198
245
191
209
176
206
163
195
210
248
159
189
175
213
155
209
198
241
140
298
207
204
197
180
207
251
240
153
228
193
185
175
223
178
132
174
151
184
250
212
213
138
222
205
214
191
217
193
221
217
211
186
182
189
201
199
209
177
226
201
272
179
267
187
195
203
158
174
139
205
173
190
186
245
148
166
214
231
177
214
226
186
231
249
265
196
207
231
252
167
243
179
194
152
236
221
214
130
187
196
220
203
197
229
198
224
160
150
174
201
223
209
245
228
265
264
234
220
212
224
209
201
165
199
176
165
176
191
181
158
203
242
157
185
199
186
148
203
198
200
230
217
170
227
153
204
216
228
203
164
207
128
208
249
139
218
188
210
127
204
185
130
187
265
231
242
196
205
154
172
184
232
202
197
204
267
191
197
212
239
179
123
235
183
184
258
155
177
207
256
182
227
226
149
142
181
192
221
249
267
182
166
220
219
231
91
194
173
181
146
234
195
168
198
187
158
210
172
188
203
172
155
239
239
169
237
213
191
199
124
221
165
165
230
148
272
243
185
250
223
183
149
179
276
187
220
211
123
181
261
239
152
192
182
215
186
239
232
140
215
220
192
171
244
221
233
273
258
243
140
199
238
186
183
253
189
215
231
135
243
218
229
178
222
277
228
216
190
193
180
146
225
180
148
213
185
216
152
234
225
174
150
174
209
189
186
205
132
171
206
232
198
146
192
207
201
153
248
242
179
240
188
218
218
156
149
267
229
170
227
230
196
218
211
167
228
198
167
151
224
227
159
169
156
197
167
167
230
197
247
240
235
175
216
246
243
220
190
232
175
160
230
198
216
179
210
161
205
200
206
181
165
233
179
236
170
225
229
200
185
193
140
107
246
196
195
228
205
232
227
156
188
205
224
211
210
158
195
229
162
147
192
283
150
232
219
250
192
216
203
178
203
212
191
182
182
243
166
187
172
225
210
214
234
252
189
188
273
268
236
276
208
147
205
204
179
214
112
187
265
194
185
205
215
207
163
270
269
205
195
157
224
207
180
273
196
189
141
167
174
172
204
175
88
136
196
252
176
172
226
206
188
209
251
158
200
239
223
207
216
276
234
220
177
177
213
141
194
229
195
240
215
220
208
174
187
231
190
144
148
181
266
167
214
212
263
130
186
210
252
214
195
223
248
205
198
199
162
210
246
188
161
187
228
176
237
227
191
202
241
213
179
202
189
224
207
187
155
161
217
182
144
210
188
219
227
207
213
193
203
212
188
231
138
188
237
227
186
166
200
189
180
216
170
182
203
249
175
174
203
217
199
158
203
196
187
191
212
214
175
160
206
204
214
231
203
184
194
152
166
161
189
195
242
179
119
151
195
229
211
212
225
173
197
171
196
192
229
235
236
212
227
233
206
167
143
133
237
247
195
230
223
201
165
187
209
220
228
216
243
172
223
215
191
164
176
212
169
221
176
165
187
187
242
229
216
250
189
159
221
213
202
134
210
188
219
169
234
192
219
175
192
233
199
229
188
120
186
246
219
294
245
252
183
191
153
153
266
168
161
204
173
195
210
153
220
205
228
125
197
221
267
209
179
263
159
161
169
214
198
149
170
219
228
187
254
222
190
205
217
175
154
232
183
211
214
283
268
213
158
181
231
154
237
205
167
216
183
231
178
196
138
179
209
163
173
249
198
218
225
247
184
201
189
219
214
210
257
276
173
205
219
215
198
242
197
200
197
192
173
171
232
150
151
179
230
243
195
212
153
237
201
233
213
208
114
132
188
189
209
209
159
152
164
165
108
202
177
177
230
267
238
185
239
156
203
168
188
231
240
235
196
216
177
225
187
235
205
210
208
177
232
194
212
198
185
184
158
200
226
185
171
237
175
180
259
173
188
191
203
213
202
229
134
195
228
167
197
217
196
200
250
193
176
197
249
184
168
212
231
152
155
184
238
194
204
203
170
233
223
208
167
214
155
262
189
217
188
171
195
230
261
198
197
161
200
182
194
113
246
169
221
248
201
207
195
221
167
196
190
185
191
163
238
218
195
151
170
149
230
161
215
190
201
177
194
234
146
197
204
169
156
194
217
199
150
207
233
169
143
203
188
173
188
193
175
192
188
178
211
189
211
167
185
162
234
215
196
264
255
226
216
207
189
232
238
176
274
220
269
198
244
187
193
170
168
200
244
220
202
201
211
160
220
197
206
200
228
222
208
154
260
203
223
205
182
191
182
174
230
162
261
249
210
226
186
231
219
192
241
196
183
272
199
205
182
192
186
225
187
149
245
208
173
183
180
217
212
198
241
224
223
214
224
157
201
253
226
204
155
232
177
233
131
196
248
141
196
160
214
205
174
204
158
250
195
184
200
237
224
207
164
201
214
230
222
196
241
170
182
138
253
222
246
252
179
198
239
239
173
176
222
254
279
172
246
192
208
165
191
180
276
251
216
170
185
223
211
192
121
164
224
204
188
204
113
232
209
204
211
182
183
187
162
220
213
196
231
176
265
177
185
205
198
214
180
133
178
262
268
132
214
270
246
181
175
142
168
259
213
143
204
255
184
271
181
242
182
155
239
229
174
206
198
210
150
162
254
249
232
193
153
239
186
233
213
182
227
230
242
176
160
202
213
205
207
282
238
118
257
230
176
203
194
216
205
189
139
200
286
149
155
150
208
226
163
193
198
200
206
213
223
204
220
199
245
191
207
198
190
181
224
221
197
148
195
188
165
235
216
263
216
162
251
218
205
140
161
210
202
217
213
174
205
188
217
177
167
166
208
214
177
191
266
256
204
208
203
199
219
166
192
247
208
225
178
183
215
182
207
189
230
199
219
181
245
256
155
220
243
208
213
230
177
163
259
222
229
183
235
165
242
237
208
135
139
205
164
203
167
200
193
153
201
166
201
244
197
236
185
169
242
152
105
134
220
178
225
191
196
242
203
191
199
173
216
196
231
161
203
200
238
215
218
248
164
174
195
186
186
250
198
176
241
180
195
212
210
226
196
224
171
205
208
227
167
265
126
191
186
191
211
195
237
226
245
260
214
229
201
182
233
260
246
183
232
254
258
157
231
263
180
211
156
259
165
212
222
249
133
216
215
123
227
203
230
175
143
204
169
228
169
171
210
199
189
148
201
225
235
177
215
189
191
204
243
199
212
185
202
217
281
220
232
214
134
209
185
209
182
199
220
163
238
202
255
250
180
254
193
207
191
217
231
105
174
146
258
220
197
197
220
136
213
226
228
166
238
222
147
225
245
257
220
205
197
205
143
196
211
172
175
188
235
226
212
233
241
271
217
126
192
135
249
227
220
276
171
238
207
214
172
177
97
232
228
182
218
229
229
175
275
239
275
255
284
202
205
241
190
269
201
186
161
207
238
225
166
257
210
200
184
234
211
177
220
146
235
236
163
240
235
215
193
113
164
222
154
228
203
193
212
235
196
238
244
166
159
148
185
254
210
237
171
184
231
189
232
262
207
158
220
179
251
151
200
153
258
199
197
161
240
187
230
258
204
231
212
212
195
228
179
167
243
194
230
180
195
205
213
194
167
233
218
220
194
212
176
196
225
162
197
215
234
198
228
157
210
215
183
259
193
217
160
189
92
266
181
206
186
259
241
271
140
178
175
258
179
167
249
175
202
235
265
210
171
233
185
202
177
174
243
215
224
199
210
164
145
187
183
227
217
202
229
210
245
218
187
183
148
214
209
251
121
224
148
199
200
244
194
223
196
163
225
136
241
199
220
240
201
167
214
196
232
221
182
202
212
151
214
183
137
205
231
261
184
173
245
222
210
227
193
155
185
250
215
206
260
228
243
161
179
193
180
192
199
207
223
207
252
214
175
174
241
202
215
165
125
159
213
215
224
157
174
149
210
205
230
225
202
219
232
172
276
209
174
182
207
189
181
199
227
197
162
196
218
165
218
255
204
233
227
231
243
144
154
238
175
175
203
230
220
164
169
252
222
222
165
199
208
238
226
185
194
224
190
216
251
232
174
212
200
167
207
169
162
235
257
155
243
252
250
182
215
162
206
174
236
235
265
178
218
210
242
170
156
195
175
201
215
191
245
189
199
171
230
210
232
190
215
168
253
293
206
220
225
145
131
181
198
198
217
273
241
226
170
185
241
183
209
182
166
208
161
188
222
193
191
156
216
214
220
186
197
195
204
174
231
242
163
242
204
170
219
187
229
214
145
199
180
156
149
270
234
167
251
170
206
241
181
188
211
212
193
207
227
235
203
203
229
202
244
178
177
144
193
204
200
212
170
233
191
206
164
168
212
240
235
270
158
193
241
164
135
172
151
169
221
213
223
193
237
201
212
167
208
217
174
211
253
267
200
203
177
183
213
184
261
184
253
190
264
156
217
164
258
211
179
196
164
196
173
185
153
189
203
191
166
167
224
179
248
216
193
202
252
153
217
207
210
209
235
186
134
229
202
181
219
180
223
177
242
224
169
178
251
213
174
189
180
189
247
195
174
240
243
192
211
220
158
233
218
163
203
231
202
179
196
218
223
275
180
186
178
230
245
226
195
193
184
170
221
193
217
121
160
182
229
159
198
243
164
192
134
180
213
242
192
264
178
181
223
204
202
166
195
241
187
230
181
171
186
113
268
214
221
187
220
189
235
90
181
172
177
132
176
202
233
263
222
227
206
182
187
195
193
215
230
242
197
217
224
190
171
191
204
178
241
173
172
164
190
241
245
144
198
163
194
180
255
215
262
191
163
254
180
213
159
142
207
218
163
256
176
203
240
165
215
186
155
229
240
151
262
171
187
221
210
212
213
190
199
152
213
183
182
219
234
227
227
173
220
197
130
196
191
251
157
213
215
233
221
210
210
142
173
172
207
271
221
206
243
214
190
239
195
190
164
216
192
199
201
258
233
189
265
230
142
224
259
207
201
172
239
177
166
226
228
186
182
184
212
189
137
183
226
188
171
186
297
202
237
169
198
219
165
170
198
202
219
241
236
183
223
220
175
149
199
213
183
243
185
262
202
176
147
244
226
171
202
202
184
211
198
201
264
194
179
161
197
175
195
176
185
204
187
201
199
171
231
210
222
233
260
175
267
214
226
235
195
246
155
207
158
243
219
225
242
153
228
204
207
162
226
207
220
245
198
180
255
169
245
174
208
151
186
183
195
216
200
257
263
172
162
210
152
187
251
133
225
200
190
255
221
225
225
219
223
214
184
147
213
215
186
246
151
165
180
192
171
219
244
217
190
246
202
201
161
182
192
256
179
236
202
215
221
137
185
211
229
195
130
170
160
229
169
205
192
229
204
221
185
219
232
211
206
271
247
194
223
136
215
194
177
171
131
157
230
208
247
177
212
236
222
182
191
191
175
190
234
106
164
183
118
299
206
164
206
198
202
170
202
260
199
150
285
139
117
171
151
162
162
157
115
215
195
211
177
140
217
205
170
199
204
215
220
224
228
242
250
233
135
198
213
249
237
230
242
156
227
189
186
197
197
200
253
203
224
237
192
237
214
156
188
189
137
248
169
162
209
194
248
221
191
225
210
256
172
184
209
148
206
228
209
201
217
260
123
192
223
155
211
231
185
154
210
217
148
180
205
197
182
208
279
224
192
189
191
190
259
219
174
186
234
184
239
196
249
219
195
106
239
222
194
204
218
204
182
238
216
203
194
273
249
238
194
219
269
259
161
193
124
226
223
216
230
206
185
194
189
209
236
201
249
163
193
120
154
199
174
254
208
202
178
217
210
245
222
200
206
238
251
160
182
193
162
207
169
204
137
252
235
221
151
242
147
195
226
197
148
190
232
186
174
206
181
234
178
124
195
162
261
160
208
222
183
226
196
197
221
185
206
219
221
182
187
149
215
173
213
170
215
196
140
169
215
197
168
219
227
267
195
192
211
146
213
193
202
192
204
249
151
211
202
221
180
224
167
217
209
239
202
206
217
133
224
243
219
182
194
240
137
226
237
201
198
160
179
171
198
224
153
239
228
223
138
201
179
230
219
145
161
175
220
259
180
252
254
179
206
196
180
172
189
187
224
189
163
197
173
205
254
254
167
182
219
217
191
152
144
203
169
222
251
205
206
189
253
204
162
217
178
177
208
218
168
213
192
194
228
261
242
210
163
206
227
202
213
192
219
231
137
174
224
257
231
262
237
309
187
206
193
141
172
205
193
174
125
164
204
153
233
137
264
235
252
238
180
195
265
194
204
263
238
179
234
191
97
127
187
146
233
174
206
169
226
236
201
192
118
208
188
164
193
185
164
220
99
167
160
225
258
262
236
169
234
182
183
239
151
239
219
143
219
196
227
182
167
131
183
157
238
142
201
168
117
200
217
204
241
224
171
186
223
185
203
126
198
226
231
229
211
217
190
205
184
174
237
218
172
223
191
161
146
248
148
226
248
207
185
198
175
230
213
181
154
185
223
234
194
248
235
200
228
283
202
201
134
168
193
180
239
223
209
193
230
166
186
127
223
227
224
142
231
148
162
204
205
190
124
191
213
215
178
196
205
185
193
148
281
170
181
198
162
215
261
185
141
197
203
185
208
207
175
213
190
270
251
226
246
200
220
168
141
238
227
205
208
154
197
187
183
176
168
135
180
283
193
161
241
224
233
187
147
206
166
183
196
221
166
208
219
203
197
194
240
161
158
236
191
207
233
142
175
187
190
213
158
238
224
222
200
151
232
163
208
231
157
209
162
179
124
154
177
198
183
194
183
175
126
137
170
220
226
194
227
198
184
105
218
228
202
172
252
211
230
199
178
136
132
204
221
182
202
271
229
226
172
164
219
258
188
171
213
136
185
224
146
170
214
258
219
179
223
169
238
218
128
277
222
176
146
239
184
209
167
188
181
193
201
170
217
168
207
163
177
208
207
198
147
205
146
173
193
180
216
189
207
199
244
140
206
192
200
220
148
190
217
177
154
164
240
177
228
183
204
185
218
168
147
241
242
209
165
230
185
237
233
220
211
220
263
215
138
133
149
126
258
152
161
150
154
201
210
190
239
136
173
152
245
201
219
186
227
200
218
271
212
254
140
210
139
153
222
216
194
191
210
239
191
246
240
267
200
235
202
240
221
226
216
216
183
169
207
209
216
225
144
245
231
210
214
207
198
240
201
186
204
188
211
172
185
210
213
153
228
132
215
198
235
204
244
181
162
183
179
61
230
212
127
133
169
207
172
195
142
213
163
219
287
235
229
202
233
215
225
143
227
246
206
184
224
245
136
136
197
192
240
144
215
234
184
171
180
113
203
203
215
230
196
281
253
216
209
219
182
245
206
205
240
229
194
187
238
143
222
169
248
197
263
201
175
186
210
186
210
237
189
253
206
145
173
198
198
197
179
177
193
157
190
217
147
127
162
275
212
166
184
191
208
207
211
200
219
176
230
238
254
263
202
201
196
240
233
219
131
226
174
217
201
222
199
216
166
229
221
219
203
242
206
135
206
187
175
277
234
262
204
241
183
203
240
184
204
140
215
251
126
174
210
243
207
186
110
224
183
187
173
217
198
191
228
257
144
253
182
191
217
174
198
224
128
194
169
217
196
217
216
230
197
203
217
209
244
221
184
114
229
240
159
232
171
168
196
204
239
193
205
217
231
158
203
220
198
223
213
201
257
212
201
140
208
206
262
219
125
242
138
195
264
191
148
139
172
237
256
242
203
158
221
189
232
201
184
231
193
137
255
160
233
217
238
190
181
196
205
212
132
157
128
204
232
131
212
139
239
232
218
214
230
221
173
183
204
255
247
220
134
251
130
195
142
214
158
233
157
174
201
187
194
204
208
180
187
210
176
229
200
198
198
235
221
238
170
133
155
174
149
195
192
244
213
145
188
274
209
251
184
207
211
165
256
229
227
177
151
213
193
197
195
238
280
190
144
190
212
177
213
217
170
211
257
148
142
195
219
170
184
157
222
232
191
208
236
221
187
204
275
207
172
205
244
205
244
195
190
166
208
198
167
175
179
194
163
167
233
220
181
187
261
216
159
153
209
211
177
255
193
180
228
155
271
170
190
191
233
195
216
211
154
168
183
208
185
239
203
193
197
111
182
189
207
168
222
190
222
194
185
218
197
169
274
231
144
195
214
241
179
157
207
156
235
187
215
177
224
197
175
206
173
172
189
198
227
164
181
181
227
232
195
195
169
166
184
151
221
198
181
231
197
198
246
174
187
196
210
176
103
168
205
221
215
267
244
203
221
205
174
243
195
133
250
203
191
191
219
209
169
168
213
250
228
162
201
229
204
186
169
219
262
222
202
231
152
149
204
242
196
222
150
196
197
228
146
230
180
232
182
229
238
197
275
178
171
245
174
196
285
193
222
183
159
197
113
174
193
183
191
223
162
203
175
171
198
180
231
190
162
254
182
165
184
166
195
190
188
204
254
176
209
237
150
161
224
202
210
212
216
200
171
219
186
213
230
203
162
189
185
175
222
150
180
228
164
251
244
260
213
227
196
186
181
204
210
194
185
183
199
208
187
245
157
238
169
241
157
195
164
164
173
186
267
262
184
125
224
214
199
159
221
214
144
164
149
247
215
217
231
232
167
173
243
251
152
193
228
234
192
178
153
240
254
232
136
233
205
198
188
180
183
131
193
234
157
211
206
191
172
179
204
152
240
191
236
245
176
223
188
219
206
205
165
245
242
197
230
224
206
171
167
223
246
157
231
202
172
135
201
211
207
184
184
166
190
138
150
256
229
193
214
165
207
217
158
210
202
156
181
212
165
140
191
240
158
209
161
188
200
161
151
240
116
204
252
129
147
187
164
184
138
148
193
260
173
206
148
145
200
183
207
169
250
200
181
192
171
240
261
194
262
144
150
221
189
187
237
197
205
183
197
212
207
183
242
262
240
193
204
199
165
123
209
241
164
236
210
211
245
211
214
159
240
213
198
209
246
186
204
196
230
207
242
247
122
207
168
198
152
228
201
201
204
211
192
226
165
205
231
193
219
247
215
247
201
255
151
217
178
225
237
178
199
216
182
236
130
189
162
195
199
173
160
216
206
189
175
199
239
192
176
177
169
198
230
107
276
231
235
255
127
222
155
240
124
189
239
219
244
217
235
147
235
205
189
187
232
215
213
117
167
170
189
181
244
219
222
232
249
177
186
228
173
166
202
226
206
167
175
219
223
210
185
185
248
166
227
199
174
135
162
213
156
131
260
253
196
148
184
236
238
199
217
226
248
162
201
183
230
222
243
208
183
203
209
191
184
198
245
171
157
183
254
176
222
197
167
168
239
207
196
204
151
183
177
221
233
207
160
186
239
228
214
155
167
149
189
151
159
188
171
197
275
204
233
199
179
217
238
180
127
245
254
160
204
191
220
185
206
177
132
222
217
225
169
163
224
179
218
200
126
140
143
177
163
99
221
141
211
195
226
217
158
176
171
188
258
193
214
239
236
231
150
179
171
194
187
179
185
162
206
230
164
228
220
253
227
197
212
159
201
161
222
185
148
230
201
222
225
154
205
175
207
235
210
144
215
194
212
235
228
194
201
231
179
265
204
138
156
148
206
250
185
220
250
199
210
226
180
231
261
200
207
142
254
174
224
220
218
163
175
216
206
219
172
216
232
185
178
198
224
170
190
163
193
204
159
214
247
241
174
222
174
148
230
201
199
245
226
211
155
233
286
207
159
249
216
242
233
176
171
153
225
182
198
201
149
223
199
109
198
247
205
247
202
230
239
187
200
193
188
201
184
239
257
212
210
232
173
191
170
224
206
239
247
191
186
261
198
134
225
205
216
222
198
253
201
238
198
233
182
154
177
224
232
200
222
154
213
145
138
135
252
189
227
211
243
193
164
205
198
173
201
160
167
260
205
216
192
160
160
143
235
210
202
273
251
168
224
183
198
139
211
171
174
158
193
242
142
231
250
223
205
218
220
228
222
195
270
221
162
169
223
194
161
214
236
183
226
223
170
167
197
269
214
245
281
156
251
190
228
145
171
180
223
236
178
160
264
189
232
199
152
200
157
139
168
166
163
159
185
239
156
199
135
188
222
155
219
193
235
150
166
218
228
193
186
139
191
198
226
199
190
222
247
143
153
158
211
181
247
190
208
143
229
170
227
192
203
219
173
232
157
162
189
214
163
165
187
143
172
228
119
227
93
142
170
228
283
172
231
233
192
150
187
259
228
253
219
168
209
200
154
185
202
130
197
221
220
204
272
153
199
167
147
210
168
235
145
167
159
173
194
195
229
192
171
235
167
272
174
169
241
202
174
231
207
179
296
168
158
166
214
234
207
222
172
212
196
232
146
218
167
190
216
171
178
252
210
217
198
205
173
222
163
196
246
162
234
226
151
212
140
160
190
178
224
169
251
202
222
207
168
261
210
136
192
180
253
168
219
210
275
249
228
153
182
204
240
148
240
219
225
240
236
201
227
150
200
259
215
196
142
197
191
210
168
206
180
211
205
167
224
169
225
147
195
259
196
196
241
191
196
156
224
213
207
169
149
222
167
210
200
253
229
214
208
238
251
205
208
169
274
188
203
188
170
200
164
183
194
203
185
222
242
232
226
175
153
232
160
144
174
231
242
205
196
228
192
172
232
242
201
237
212
193
204
211
191
184
233
196
221
125
187
185
230
216
186
147
186
237
218
203
239
159
182
187
200
168
190
184
237
195
244
207
237
213
169
215
198
177
162
223
266
160
176
175
265
210
187
144
247
246
221
204
220
227
173
187
166
231
163
200
181
169
142
173
229
185
232
186
233
289
173
235
205
182
175
221
222
171
248
181
183
205
147
226
175
171
235
172
210
223
266
227
232
206
193
173
133
240
204
200
162
167
189
239
202
241
229
186
211
189
237
258
141
190
288
185
189
229
194
165
175
155
197
134
220
170
225
191
195
188
181
183
191
160
232
179
214
210
192
270
179
229
229
276
149
188
206
204
172
206
194
254
236
190
260
146
167
122
235
244
189
211
236
160
162
191
169
174
166
196
204
195
262
232
170
206
171
192
141
231
164
140
195
200
195
173
171
223
210
213
235
219
177
210
179
149
163
178
223
203
212
191
218
233
223
206
126
218
184
209
221
204
165
176
179
158
193
186
169
264
225
161
116
196
199
213
190
202
153
147
242
232
151
211
212
177
235
155
213
170
172
152
207
200
180
234
213
188
168
196
195
209
220
202
207
244
183
243
194
189
193
197
181
230
223
270
224
201
218
124
245
197
209
178
262
211
216
170
197
185
178
168
252
257
215
199
174
235
191
209
196
232
253
213
195
243
198
199
153
184
167
199
218
196
199
214
179
189
109
160
265
228
158
155
157
212
246
197
185
153
183
164
193
183
146
137
185
183
209
189
247
169
191
194
190
229
216
201
161
168
226
155
235
187
176
226
248
107
135
195
251
247
229
211
208
214
211
208
246
192
230
189
220
198
226
164
225
176
158
193
214
176
216
249
224
154
178
198
197
155
230
175
175
195
206
205
195
207
216
202
221
210
236
176
228
188
215
206
192
154
147
278
203
243
186
205
151
180
143
177
207
175
224
150
198
228
164
220
225
210
240
174
239
176
226
213
278
167
210
221
137
236
210
202
177
230
212
150
237
227
224
109
273
178
187
246
154
233
191
164
196
229
248
168
244
180
183
238
148
240
154
307
156
281
278
247
262
201
298
230
200
197
232
180
225
119
162
149
170
208
198
227
206
239
251
226
235
215
163
210
150
160
198
170
200
198
262
201
186
200
221
180
188
204
214
187
198
237
229
205
170
208
177
255
195
147
268
222
210
154
169
172
247
214
169
200
252
204
185
190
186
214
238
183
181
175
168
160
203
188
203
217
204
126
185
209
168
262
298
171
215
275
137
180
164
260
228
223
130
195
143
183
187
220
174
220
251
168
216
202
264
220
255
208
240
245
184
96
222
168
237
143
207
195
182
228
229
215
188
215
188
240
227
188
201
274
163
186
250
123
187
187
211
172
196
216
232
212
209
262
126
241
254
198
220
209
254
160
170
213
173
229
206
216
244
292
237
236
209
186
163
167
211
231
195
278
207
215
129
183
228
176
207
161
178
235
169
204
244
174
140
175
195
192
217
156
240
197
212
172
193
244
233
255
202
236
241
242
229
235
200
185
193
218
209
181
192
191
207
177
219
204
185
284
217
209
196
257
204
167
262
209
120
203
242
244
195
234
198
158
243
153
237
202
207
204
202
137
210
137
205
197
239
167
230
217
232
132
153
226
227
220
244
199
189
203
242
226
190
167
177
226
187
176
231
197
156
204
160
233
200
246
217
174
175
178
208
199
190
224
252
242
212
200
186
180
145
161
160
170
162
247
124
225
209
153
183
185
157
244
145
210
218
243
194
193
258
138
178
220
197
164
263
205
204
209
154
164
194
128
145
266
131
113
116
185
231
183
300
165
234
212
210
168
181
218
219
156
170
239
224
186
181
187
160
206
177
182
282
247
231
179
220
229
208
189
165
200
181
207
224
244
181
265
222
170
197
196
166
214
219
198
218
177
188
229
198
199
174
146
178
160
220
139
205
196
204
212
259
281
222
107
268
237
176
212
141
207
188
228
251
226
181
175
204
225
196
200
172
254
248
232
194
225
163
239
199
173
227
227
273
177
172
250
175
185
221
151
257
165
172
196
221
210
158
156
240
231
220
185
228
147
168
203
152
166
222
165
193
205
162
143
183
186
209
271
220
217
189
233
148
213
182
192
194
178
186
216
222
217
186
138
195
187
193
241
219
217
216
177
241
168
217
206
176
202
209
246
239
175
227
232
198
261
124
202
233
207
182
239
176
203
152
217
211
194
242
172
230
175
239
179
141
261
197
196
200
198
171
245
187
222
240
166
120
141
187
242
180
214
209
171
174
135
196
193
229
200
219
191
135
225
201
169
175
179
207
171
190
249
176
185
230
161
199
231
181
172
275
170
222
187
210
245
199
194
215
263
222
188
189
261
195
168
162
211
185
234
179
176
125
200
228
182
189
202
174
193
176
183
250
179
197
227
167
229
227
203
255
188
109
183
242
157
213
199
198
163
186
237
264
198
220
197
222
207
195
204
184
206
128
183
245
262
194
246
207
256
144
170
170
200
224
214
208
218
191
172
128
180
106
151
182
201
224
209
214
243
207
168
184
134
128
140
138
194
195
182
248
210
187
127
302
148
227
169
180
259
222
174
231
203
193
155
257
200
220
140
168
221
202
202
244
289
193
190
168
160
210
252
240
223
162
238
235
228
207
122
207
205
176
155
220
248
231
251
234
161
265
228
180
205
172
205
196
231
164
169
179
227
220
193
182
190
166
191
190
95
168
248
189
186
176
220
215
230
262
178
168
214
183
180
241
204
208
251
186
204
192
220
197
223
174
172
178
218
163
216
229
171
177
200
191
202
208
211
241
161
200
262
239
155
239
223
219
244
214
243
186
234
120
163
167
175
203
186
166
230
169
223
233
234
153
192
215
233
199
148
265
152
248
184
170
218
234
252
162
236
219
217
226
226
228
208
195
136
189
159
197
157
165
213
158
217
204
201
238
237
185
194
152
258
261
169
207
243
221
257
220
161
205
210
226
233
187
152
246
127
173
165
142
192
159
189
272
196
216
185
214
215
209
176
188
190
228
163
225
130
206
259
185
135
187
157
222
158
200
127
228
257
231
270
233
158
200
175
220
181
179
191
241
231
169
246
199
154
248
180
164
142
201
208
211
197
204
221
132
199
181
215
228
248
240
260
211
233
202
240
179
205
210
203
185
184
220
174
194
224
184
186
243
210
130
245
205
135
177
145
198
170
200
184
191
214
214
185
234
204
167
170
204
222
208
193
177
220
242
184
172
197
206
204
192
137
223
174
271
238
225
191
127
193
189
161
198
208
218
161
258
189
241
190
175
225
198
167
161
249
199
223
190
225
190
238
234
213
229
202
205
177
224
185
218
273
219
196
197
147
211
202
202
195
195
215
236
257
180
156
185
178
172
159
172
235
183
254
189
244
212
199
218
163
124
215
237
144
180
177
179
246
184
198
195
245
178
160
223
187
203
213
250
201
202
191
141
177
131
171
212
250
194
148
242
169
179
235
173
187
195
180
175
247
137
214
257
247
196
222
178
208
171
210
279
172
243
194
242
136
202
178
229
208
203
225
211
176
244
186
247
220
219
278
220
228
250
153
212
205
157
142
176
218
204
230
186
227
183
203
192
187
231
207
204
201
215
139
194
144
260
225
212
181
202
161
217
215
142
198
191
196
178
223
208
192
218
114
226
151
220
240
203
249
148
202
197
212
188
197
228
182
157
184
241
217
246
239
178
115
175
193
211
180
175
222
200
172
186
234
235
237
188
175
236
239
230
258
186
161
197
155
222
192
241
231
182
193
203
187
179
192
222
125
250
206
205
153
186
191
142
173
240
271
164
264
200
230
199
200
177
242
169
185
198
126
215
155
197
206
128
232
221
205
214
246
254
233
191
161
187
203
237
239
188
205
180
143
155
232
165
286
170
194
221
225
196
209
170
183
192
251
189
108
243
216
121
232
243
265
203
183
220
147
187
161
233
153
213
195
188
169
186
210
209
237
240
212
228
174
223
201
221
181
166
152
196
190
165
201
215
199
215
160
194
220
214
258
237
199
195
211
222
209
218
206
191
231
203
256
139
255
135
249
191
224
197
197
96
180
194
202
237
129
194
217
181
127
169
208
122
152
172
186
186
229
100
189
166
224
167
217
126
185
189
159
249
189
227
177
198
214
218
132
251
211
225
244
176
232
243
257
241
189
245
146
266
231
212
174
148
229
197
199
168
223
264
212
186
188
183
234
177
229
188
171
166
163
212
273
186
168
239
179
182
195
173
218
214
131
260
187
196
239
202
236
215
238
240
198
138
201
153
175
165
187
183
181
209
231
202
156
194
195
188
184
164
227
193
170
196
191
259
196
217
205
246
149
150
187
177
220
121
124
177
180
199
219
186
206
187
193
247
240
201
226
203
287
243
197
211
257
201
161
176
163
262
227
265
228
165
221
237
178
177
188
183
241
289
143
175
168
172
182
242
184
203
205
147
165
198
213
210
185
186
202
236
193
205
206
212
152
195
233
204
222
163
188
184
194
172
219
236
211
227
176
205
168
197
196
258
214
168
236
150
184
178
239
239
162
221
269
229
209
197
204
180
144
208
112
229
158
166
261
200
192
205
243
181
193
111
162
110
237
232
249
209
178
219
244
209
251
220
172
184
174
231
161
208
201
226
170
174
185
267
217
194
222
188
192
173
146
198
210
229
208
189
270
229
232
196
195
200
238
103
166
163
234
227
180
230
148
232
166
140
216
212
195
185
240
159
216
250
206
232
189
238
226
228
127
184
163
185
212
230
154
138
207
156
174
204
200
170
236
189
236
228
214
220
202
179
122
228
202
165
195
232
162
225
189
190
237
219
197
194
236
233
143
206
225
245
201
168
163
173
190
220
202
164
181
128
152
179
246
253
250
225
165
125
167
217
220
220
185
238
221
236
191
151
204
236
164
218
176
136
226
246
187
195
227
193
198
147
218
209
188
216
154
200
216
158
223
168
257
158
184
179
211
205
262
169
240
231
142
137
219
138
193
186
110
166
107
177
201
212
168
174
190
227
213
218
182
186
206
248
239
208
184
216
186
252
150
132
208
223
169
146
222
260
200
208
192
187
216
179
200
200
194
252
187
164
184
245
191
197
207
176
214
208
214
234
201
186
215
149
228
143
239
224
264
171
187
168
220
102
208
249
225
123
235
222
159
170
191
190
211
154
236
189
176
206
251
232
183
247
183
169
150
148
221
174
160
245
122
249
170
179
174
197
216
235
233
153
231
209
152
246
159
137
197
214
193
240
177
189
162
232
187
187
168
161
270
216
194
148
186
184
133
244
203
181
176
191
218
256
197
168
198
152
198
282
201
218
185
138
226
197
186
263
241
202
211
207
212
292
141
156
245
172
199
156
173
153
215
175
202
166
196
140
256
156
152
213
200
135
192
236
125
232
263
205
193
180
194
199
204
243
203
216
171
152
176
203
201
225
201
165
143
249
206
198
173
196
235
194
172
116
222
177
221
224
177
200
97
163
164
149
251
178
174
163
188
180
207
183
232
128
167
204
211
173
239
178
247
207
249
187
191
206
214
199
238
206
155
211
229
174
143
165
218
204
211
158
251
237
138
278
211
148
221
178
185
176
253
231
173
201
206
101
205
200
218
219
216
211
202
201
228
198
233
191
150
179
177
224
198
129
264
214
165
160
186
259
212
251
168
220
180
202
218
238
134
241
240
183
299
207
229
215
224
189
237
170
235
270
152
196
224
241
189
254
191
186
183
211
168
239
205
211
247
220
276
223
187
183
183
239
169
208
205
238
206
228
191
187
159
183
200
198
169
153
236
150
179
147
243
221
205
179
212
130
186
188
146
261
186
231
173
195
226
205
256
170
256
171
139
193
185
238
239
212
191
211
170
202
204
208
238
213
276
195
162
211
211
211
95
172
113
155
243
151
215
214
252
162
231
230
184
279
206
165
211
237
169
194
195
168
167
202
257
212
229
194
213
182
175
173
200
220
197
178
148
249
182
106
215
185
194
155
224
132
225
180
270
172
165
239
140
183
188
225
208
168
267
221
191
194
232
204
213
253
216
190
125
228
235
188
193
194
216
155
204
230
191
189
248
182
100
211
231
175
158
200
243
165
215
210
243
189
207
171
195
227
180
259
160
217
167
191
182
244
205
243
176
175
195
196
203
256
207
197
152
199
197
260
181
158
181
177
179
181
212
200
200
159
229
204
214
222
249
140
219
211
191
188
254
210
248
240
193
215
193
245
241
206
205
228
253
220
234
192
190
172
204
193
197
215
255
205
248
222
211
189
188
168
186
163
243
179
173
233
177
189
254
211
174
193
216
181
118
192
212
184
214
224
224
180
155
180
202
228
206
279
268
198
211
234
211
162
224
173
98
190
184
219
151
143
175
207
212
230
198
179
261
235
290
238
180
208
239
190
192
146
192
190
160
188
243
213
217
217
220
166
167
208
181
184
202
232
180
129
188
126
160
213
204
270
194
230
187
216
187
189
213
152
257
160
234
199
259
221
180
201
181
241
182
212
255
231
205
153
195
229
230
175
200
223
246
220
209
250
195
221
204
201
189
153
244
185
157
245
209
224
219
186
214
180
205
224
214
148
204
167
194
176
138
180
158
250
203
232
174
185
209
211
124
158
181
265
160
178
179
171
204
184
167
253
218
228
190
237
239
181
180
183
203
216
219
206
201
194
243
215
188
198
250
198
210
189
174
196
190
211
138
195
234
256
220
190
216
233
267
209
174
207
187
214
176
183
219
198
244
206
226
237
202
240
230
237
231
169
167
202
208
198
267
183
189
105
222
210
174
244
204
249
155
154
212
211
171
171
236
190
237
182
248
218
196
219
202
142
246
206
241
241
195
128
136
198
162
186
201
198
218
133
255
243
242
203
214
230
194
236
197
188
168
224
234
199
234
177
176
209
250
237
199
227
184
219
229
219
215
170
231
193
188
184
194
216
201
214
183
250
167
218
233
156
213
187
113
159
209
189
166
174
180
211
232
197
226
157
241
180
198
162
222
250
231
265
202
259
219
192
193
220
226
218
226
202
200
210
231
212
270
199
163
193
208
169
249
172
129
155
223
180
164
142
197
206
155
182
228
203
184
185
228
218
152
198
181
170
183
198
213
199
252
210
161
186
206
190
224
238
192
195
209
146
252
185
193
221
193
206
229
200
158
145
182
209
170
162
208
189
174
215
212
158
172
254
208
163
197
233
234
223
221
222
235
199
165
144
209
196
119
186
203
227
220
186
277
136
200
200
235
222
228
142
168
202
189
204
154
220
235
173
197
136
190
250
193
165
166
238
156
210
277
228
203
235
169
216
243
255
188
192
161
167
163
130
232
195
242
205
177
252
243
200
176
256
233
220
180
143
148
191
186
284
199
221
183
177
119
113
236
163
202
193
183
184
185
154
184
208
154
263
199
241
149
192
250
160
252
216
128
201
157
209
156
199
196
135
189
170
148
238
192
172
173
209
176
237
208
197
187
240
272
136
213
206
245
198
183
226
225
269
231
237
214
192
171
216
182
262
178
167
177
245
207
200
236
214
233
186
180
139
230
150
252
258
155
228
268
270
288
230
248
228
195
195
184
172
188
179
236
191
191
189
154
171
129
163
208
166
222
162
196
256
253
187
183
203
199
204
189
190
187
269
151
211
131
236
188
249
246
178
151
168
147
144
194
167
265
199
228
175
255
202
211
236
189
186
234
176
258
243
223
133
231
141
207
121
206
189
237
219
188
197
228
157
191
158
231
146
180
210
215
231
196
173
219
230
203
205
223
179
224
114
165
211
199
173
144
159
202
241
162
192
238
159
224
150
154
186
224
164
213
206
257
242
242
217
246
215
139
139
125
200
215
177
160
254
114
172
184
230
186
119
236
193
186
207
209
223
200
211
181
227
168
176
167
207
161
179
245
222
260
210
207
126
141
208
176
187
177
155
188
152
195
207
195
277
155
218
164
143
226
156
241
248
243
198
221
209
232
174
230
249
220
192
206
223
234
188
260
214
251
214
231
234
218
227
211
195
200
242
238
166
215
256
165
215
151
196
288
175
199
237
166
189
185
195
247
218
264
267
212
245
192
181
163
226
174
141
197
217
205
236
198
229
174
219
186
205
183
164
167
210
171
281
229
141
201
223
170
168
198
204
131
197
178
194
162
242
214
211
155
142
153
189
206
156
176
170
211
134
206
145
228
214
158
201
212
162
210
189
236
238
200
215
215
260
275
218
182
191
212
219
186
179
184
241
177
203
155
223
213
291
196
232
197
207
229
211
230
232
206
164
219
160
226
216
178
165
197
202
160
227
174
233
213
276
232
173
157
174
169
233
223
228
209
201
201
225
219
237
251
209
262
199
204
277
205
211
200
183
186
229
250
162
230
216
207
248
223
206
257
202
211
225
245
211
214
159
247
269
216
188
197
209
197
203
185
251
209
227
226
206
205
188
195
190
203
211
156
204
151
185
221
156
188
281
231
247
197
204
188
166
223
189
161
244
191
198
197
163
234
216
201
157
214
211
203
215
201
219
206
225
188
225
255
209
215
214
208
209
191
137
194
228
205
153
167
171
200
194
141
228
171
192
176
228
252
271
177
184
240
150
135
182
151
221
224
253
146
194
184
176
196
238
215
213
215
162
171
260
209
162
190
226
223
247
205
165
169
182
154
215
209
202
219
220
207
205
228
201
182
194
250
229
172
186
218
225
203
223
161
179
174
196
214
239
200
206
186
149
196
243
210
217
244
151
213
239
225
138
160
187
159
183
194
234
196
208
181
190
182
259
122
137
204
199
224
245
178
218
139
180
188
206
150
232
219
214
184
218
206
208
200
223
179
194
180
154
226
190
247
164
235
189
216
129
205
224
243
250
239
210
262
146
192
237
233
197
137
234
215
230
158
166
177
166
147
210
151
158
179
194
171
253
195
125
166
233
203
204
216
153
242
190
127
259
182
205
191
175
184
187
276
252
230
170
265
201
199
207
168
257
173
240
218
162
169
197
187
196
135
233
265
213
144
166
174
209
183
200
213
161
278
183
202
211
213
189
180
251
166
202
258
205
227
188
156
154
241
196
200
192
186
210
222
238
153
196
217
170
143
161
244
196
246
185
218
221
215
160
226
182
190
225
247
184
251
222
203
228
201
233
202
207
239
188
175
202
160
245
200
220
192
209
220
225
177
167
243
164
138
123
194
220
174
172
246
220
198
203
240
172
149
259
209
179
194
198
162
201
199
241
177
146
155
160
194
148
173
251
217
149
195
176
218
191
155
184
202
220
252
234
194
212
178
170
226
134
195
114
233
213
207
177
191
156
249
230
247
227
204
225
188
147
182
255
202
188
203
177
189
242
103
230
177
216
201
186
232
131
277
156
219
157
222
150
246
202
178
176
183
171
110
255
235
241
187
186
184
238
158
174
212
188
198
192
195
146
202
221
218
188
221
219
219
205
174
224
179
212
208
172
210
172
250
225
252
197
200
169
169
210
169
176
207
192
197
251
211
222
170
169
200
210
185
231
113
204
137
198
231
182
210
124
216
213
229
196
191
176
190
95
203
213
224
199
253
231
204
214
218
226
180
213
191
223
207
159
192
154
211
223
188
164
239
171
215
177
224
190
209
231
208
245
191
188
193
212
177
199
149
191
207
181
136
166
193
158
224
219
171
183
189
208
247
156
203
153
111
255
216
256
224
190
244
179
156
182
152
215
216
197
237
195
193
247
251
254
172
233
139
136
181
182
246
133
201
246
157
216
186
218
211
255
174
187
223
193
247
187
156
156
195
240
210
208
143
183
172
228
174
193
234
219
194
236
181
248
203
198
219
212
205
181
193
218
245
218
250
186
196
244
247
239
261
144
141
199
175
226
195
188
202
227
220
132
253
158
151
154
192
171
239
228
176
220
247
236
210
140
183
216
192
253
206
220
196
202
220
189
134
251
174
215
201
163
184
186
230
203
210
214
184
159
140
233
244
198
204
196
159
216
172
156
178
187
148
213
191
210
144
207
213
156
143
199
161
197
203
213
153
203
178
222
95
175
235
124
165
169
209
210
249
193
140
160
190
259
218
148
203
195
204
153
149
181
178
188
258
220
185
193
167
199
207
229
108
245
239
179
178
222
194
166
280
221
248
187
203
168
195
199
167
226
143
204
184
204
206
219
211
142
229
215
271
263
171
168
225
152
182
192
144
174
195
142
204
200
181
201
176
169
131
161
237
228
247
159
280
215
212
204
181
232
224
214
236
202
198
212
166
166
198
221
201
210
215
165
235
211
203
203
182
220
210
174
222
180
219
257
135
182
235
229
229
207
238
225
214
230
169
188
205
172
173
233
208
248
209
221
184
232
232
209
189
211
268
175
200
266
294
186
181
184
224
247
218
166
198
254
215
204
194
221
141
179
179
188
188
221
210
246
207
238
218
242
204
251
213
232
138
156
232
192
206
184
203
208
165
194
182
184
280
136
212
220
186
167
201
195
185
159
173
179
197
241
121
195
198
154
232
213
288
217
114
244
190
105
208
226
254
179
247
174
227
248
229
187
187
195
176
182
183
197
180
227
246
181
205
216
156
232
197
223
250
230
227
220
219
196
233
205
139
232
159
230
186
228
186
192
207
212
263
271
201
211
221
213
204
207
260
108
210
206
186
256
232
147
232
161
240
212
198
246
154
145
231
253
206
215
161
214
204
189
173
250
211
151
166
164
223
199
196
219
186
224
184
173
101
253
230
185
174
220
210
207
237
190
184
259
239
144
244
187
251
241
220
174
145
190
155
193
170
185
199
209
234
230
216
168
195
216
200
144
156
221
261
231
238
217
159
120
212
216
195
196
203
213
223
166
169
207
217
192
240
172
183
208
241
167
160
155
199
186
150
186
187
222
217
218
212
144
213
202
148
254
188
188
233
229
173
185
172
214
171
222
260
196
217
195
192
192
192
117
166
219
183
226
189
168
214
212
208
194
192
154
228
208
138
205
192
277
228
216
186
265
193
224
168
221
232
230
220
180
154
222
249
166
178
185
260
147
220
180
202
166
176
235
150
160
172
210
239
162
167
231
277
172
174
155
173
174
117
218
223
223
226
222
203
204
173
261
261
220
207
236
188
197
139
228
193
229
111
264
229
178
189
183
241
178
161
197
137
164
201
240
234
192
168
232
232
206
211
159
212
220
112
249
208
214
198
237
191
141
109
232
173
213
103
190
211
184
164
232
189
240
145
201
220
225
106
193
224
170
210
177
222
180
233
186
210
199
234
164
173
293
272
242
192
175
170
199
177
169
186
170
195
210
220
201
183
144
218
213
221
216
173
211
157
177
199
219
197
214
175
211
218
193
162
151
169
176
210
259
220
171
198
181
196
206
233
247
204
212
211
218
178
266
171
165
202
200
180
162
246
224
205
229
247
221
193
161
274
159
224
149
221
174
192
187
279
200
214
214
178
221
205
204
223
266
209
230
230
181
183
162
228
153
217
155
225
218
185
157
239
234
198
260
208
258
272
207
194
221
177
183
223
164
199
143
186
156
146
230
194
235
204
152
232
186
188
184
225
166
198
184
221
206
181
242
212
262
190
208
217
200
209
227
127
192
188
195
143
222
250
236
195
226
203
183
223
192
210
208
169
180
258
197
193
173
265
211
206
151
158
207
147
192
185
129
193
198
228
230
165
147
232
216
203
267
193
196
192
227
217
229
166
222
200
142
200
201
174
222
163
150
158
219
200
260
255
243
146
168
99
219
211
257
165
175
219
161
243
206
211
215
210
208
187
175
229
234
243
195
248
222
199
220
288
256
204
198
248
148
189
193
166
210
228
203
189
174
210
217
169
195
179
185
227
192
146
232
235
208
139
190
195
207
99
244
199
190
201
204
185
118
202
165
217
170
180
225
206
231
228
237
209
184
164
229
165
205
173
145
210
217
251
149
236
281
189
202
226
245
183
220
202
186
192
226
200
210
135
230
210
185
184
137
208
227
177
221
167
194
208
202
247
215
264
126
257
153
142
180
155
183
194
220
217
199
222
225
203
159
203
201
192
246
196
226
168
250
205
183
155
239
179
211
193
114
157
166
170
230
163
203
204
217
228
199
217
218
186
109
161
202
217
118
260
250
267
266
201
153
194
186
207
166
225
170
170
191
241
206
194
265
156
221
150
220
220
184
183
191
244
178
163
231
235
216
227
262
178
219
170
261
163
180
231
239
272
208
159
138
156
209
208
184
165
210
199
214
230
192
177
240
193
180
134
186
183
166
202
210
207
234
153
177
187
201
221
211
192
198
249
149
151
229
216
174
160
219
239
218
193
150
197
183
236
199
139
210
204
179
179
234
189
213
279
176
137
174
159
163
229
170
144
186
232
251
169
197
270
212
248
211
224
231
210
200
248
183
235
172
167
203
233
158
224
220
161
210
214
177
221
170
212
117
176
95
293
164
178
226
224
181
232
213
156
221
154
218
235
208
203
230
170
188
253
232
238
263
192
183
240
228
193
192
149
172
236
177
164
175
192
140
194
209
210
249
225
204
176
239
130
198
151
142
207
178
215
225
218
165
229
226
172
165
177
285
247
231
195
230
205
200
197
216
215
197
200
123
180
187
190
197
233
205
177
165
223
162
108
181
173
196
211
246
294
163
239
270
207
214
202
240
189
205
181
214
214
150
282
184
218
222
216
179
189
155
222
194
256
217
211
252
206
176
154
166
216
203
155
218
193
222
180
278
238
179
125
223
231
189
270
177
244
229
276
228
181
170
217
187
181
187
168
207
270
177
250
171
181
175
179
212
175
190
229
156
138
279
240
215
224
235
214
147
166
203
207
259
271
148
160
199
230
123
176
219
212
188
148
195
183
171
219
172
199
160
227
173
162
200
224
148
239
182
202
274
255
191
174
204
231
196
214
202
161
202
212
143
179
244
170
248
195
215
212
156
223
198
172
158
258
269
186
177
241
223
222
232
222
234
208
144
199
149
177
182
130
188
163
204
180
204
256
190
183
246
243
204
175
169
93
210
167
180
247
214
166
142
136
203
156
208
228
218
182
217
150
206
229
188
194
203
206
147
204
223
223
211
149
246
263
217
181
201
177
252
224
220
229
220
145
225
237
171
195
177
187
221
245
186
215
226
224
215
263
239
206
242
143
181
225
202
208
274
228
170
222
174
229
164
236
282
176
205
163
285
242
130
147
188
182
176
180
256
197
143
197
196
142
230
140
162
204
203
200
224
181
229
205
176
192
187
221
173
196
147
151
161
254
230
153
204
198
242
219
216
116
224
226
209
221
198
194
209
187
177
212
195
197
180
218
181
164
218
222
211
253
224
174
232
163
239
220
224
201
165
250
207
184
161
181
223
198
176
248
195
147
231
221
138
185
146
228
195
169
179
164
149
210
217
216
196
203
194
195
196
175
196
192
228
248
197
224
202
246
197
173
200
201
178
196
179
228
175
163
109
209
195
198
250
225
192
198
191
175
181
264
188
177
183
122
176
218
171
189
216
225
225
201
219
216
249
151
235
228
139
136
161
135
255
152
200
226
130
197
260
235
202
248
191
148
211
156
208
170
203
241
192
250
166
176
267
175
188
226
132
173
170
168
182
217
209
169
238
248
225
179
191
183
209
169
190
241
179
178
179
199
220
137
235
236
170
245
166
189
219
179
174
245
143
224
167
212
207
183
245
200
167
202
224
219
198
134
214
255
196
221
226
178
165
208
169
220
225
200
210
215
166
201
168
258
232
218
184
169
240
166
248
179
202
257
149
169
215
217
251
142
178
198
238
145
189
200
257
193
182
176
254
256
177
235
169
193
190
182
184
188
195
206
205
186
231
194
210
202
182
234
206
201
193
211
226
207
210
212
175
240
217
245
268
183
185
141
224
228
189
194
201
212
191
223
235
191
207
200
259
161
142
238
177
206
157
211
168
216
251
146
165
190
200
189
195
231
158
220
221
207
192
232
199
209
188
154
175
219
230
197
214
163
223
195
204
268
238
225
180
167
214
149
221
199
225
158
217
211
234
181
202
129
206
257
230
121
189
202
226
198
153
227
183
201
188
192
237
216
170
228
179
221
198
188
206
148
136
196
168
149
243
190
131
231
188
207
217
224
131
256
100
215
194
177
230
253
203
197
244
215
239
246
176
190
261
165
211
162
177
209
214
229
185
173
218
214
150
173
223
207
207
202
230
202
142
211
184
219
147
249
261
201
236
211
180
149
171
199
227
220
212
214
214
158
131
208
158
220
178
239
189
225
223
203
163
213
240
236
150
253
165
228
267
187
161
203
228
185
200
262
251
220
144
208
243
142
126
201
267
172
193
173
206
186
237
200
141
221
193
160
193
214
204
144
192
217
254
221
224
236
185
224
236
207
241
218
171
227
200
175
216
197
227
191
226
236
197
221
193
191
175
187
154
178
195
199
230
184
169
178
256
162
211
225
204
153
250
203
197
147
232
250
196
213
214
232
247
218
286
208
198
192
227
170
230
191
215
180
200
164
265
169
182
226
174
183
111
258
208
229
164
226
218
226
240
261
196
192
220
226
217
226
205
181
197
209
198
218
200
216
186
235
180
176
153
198
230
220
140
169
198
197
264
200
205
208
204
160
145
242
191
195
259
115
235
192
216
206
276
245
170
188
218
200
195
178
218
174
197
202
183
123
213
136
106
131
172
161
177
196
167
131
153
197
196
248
227
238
137
155
125
195
222
207
234
153
197
203
210
158
178
152
208
204
169
156
185
213
190
195
200
196
257
256
219
171
211
217
157
194
186
199
205
217
240
161
174
185
179
229
136
203
229
184
148
173
155
247
251
144
203
201
200
166
198
219
200
238
226
209
161
194
177
167
215
221
120
186
164
190
152
200
241
212
195
171
241
233
166
220
210
172
227
274
205
172
205
270
175
159
153
250
200
128
228
147
176
221
175
158
214
172
199
146
226
174
156
177
204
177
168
168
180
185
156
220
179
237
193
272
212
243
205
137
186
230
184
198
236
197
146
161
154
191
212
200
206
193
235
156
181
194
215
191
226
193
188
210
172
202
159
126
192
234
230
159
166
197
186
157
183
164
196
223
221
211
243
203
188
184
194
200
180
174
165
213
199
182
218
189
146
186
208
251
180
214
134
220
200
219
200
191
214
222
198
199
222
182
239
184
207
248
162
199
253
245
209
226
213
160
207
180
177
269
202
190
180
222
158
199
213
215
214
172
260
270
194
230
239
184
164
210
194
231
173
134
162
210
215
192
150
184
216
131
233
246
178
222
211
191
246
163
168
241
192
140
134
195
234
149
225
253
207
107
199
231
214
217
237
195
183
168
236
206
166
172
146
250
228
195
185
224
165
261
215
182
247
245
185
202
233
247
212
240
208
174
180
208
236
213
215
173
207
193
189
152
270
190
200
172
206
219
260
238
227
152
220
203
159
153
225
225
219
158
234
172
187
224
201
201
203
182
135
230
191
188
138
177
168
195
216
224
165
202
227
169
158
253
164
184
247
247
201
169
199
183
246
205
171
243
179
212
220
193
259
194
276
202
218
224
170
234
199
252
226
193
192
192
144
210
149
223
236
208
177
212
213
173
163
202
153
252
227
214
204
197
145
263
163
233
215
147
217
187
240
223
219
180
216
238
186
216
198
194
276
196
187
159
148
192
171
172
216
223
218
221
132
217
272
206
218
201
212
178
201
179
222
166
196
148
255
185
207
222
184
216
166
169
155
234
127
219
224
201
221
214
259
155
188
236
199
120
197
158
247
204
215
190
142
180
223
213
248
221
220
207
164
190
242
175
194
264
103
194
226
174
218
154
257
200
184
227
188
244
165
237
183
241
249
126
206
249
239
180
283
203
186
201
241
134
198
236
244
192
209
222
171
209
165
171
209
211
170
222
190
158
216
185
198
236
195
199
203
190
194
196
202
160
167
241
199
179
237
176
206
156
196
190
170
243
150
192
123
244
256
201
168
217
183
175
223
237
187
154
102
208
161
203
224
161
264
204
190
212
156
240
250
255
157
172
232
223
179
219
164
210
122
162
209
204
186
253
256
212
208
224
206
250
194
181
186
142
209
137
208
230
237
189
218
167
206
146
197
190
200
166
238
231
198
241
190
251
210
218
170
182
185
162
157
223
151
215
136
243
192
259
179
183
229
132
232
218
214
173
243
243
190
179
198
223
181
229
184
225
203
239
220
262
188
192
233
236
205
252
176
215
203
224
263
272
174
243
244
255
275
165
162
257
248
186
202
183
221
210
222
235
171
249
202
190
233
178
173
155
222
213
215
189
249
193
214
188
212
194
122
147
142
246
186
164
225
224
164
218
150
202
203
236
150
225
215
230
172
209
230
245
180
196
212
199
186
233
232
193
108
259
144
166
215
229
235
219
250
198
165
150
184
108
224
202
188
229
187
189
228
229
170
195
208
199
197
184
145
189
190
200
224
240
251
190
207
206
193
256
143
188
222
215
237
182
197
195
157
157
212
174
174
183
221
220
244
168
251
195
180
197
209
123
229
168
232
224
251
205
188
158
186
175
249
194
161
238
176
194
202
230
258
261
165
179
243
238
190
174
219
208
242
158
195
175
187
188
183
203
151
208
215
239
227
177
219
228
176
229
178
162
206
190
214
236
231
298
192
243
204
215
284
230
215
161
198
105
168
185
194
184
198
171
206
190
189
211
262
124
186
166
191
188
164
174
175
172
192
196
211
185
240
265
195
162
232
195
154
185
199
98
188
192
269
252
220
254
148
200
234
216
173
187
196
219
255
202
177
271
230
219
237
184
179
138
150
201
222
198
179
180
213
262
289
227
227
198
215
157
164
159
198
241
136
212
183
194
192
205
151
195
176
172
232
204
210
202
273
199
204
218
229
126
175
191
129
229
189
227
187
145
245
117
225
191
232
255
160
209
190
210
204
210
178
155
246
216
168
185
173
193
212
211
199
253
176
198
208
137
223
213
223
182
217
169
213
132
192
207
268
206
191
199
193
130
216
237
204
163
218
230
178
253
259
237
210
154
211
209
162
218
173
195
181
204
177
277
205
184
154
192
149
177
259
196
157
241
220
228
179
216
239
259
228
244
254
222
214
132
206
229
211
226
209
224
168
227
206
187
241
185
188
235
160
235
190
236
244
162
245
260
211
242
250
229
214
221
141
214
182
202
195
118
257
203
197
251
252
175
135
170
145
219
221
232
165
207
208
211
240
210
248
212
211
171
181
147
240
225
164
157
183
198
161
211
206
236
197
226
219
209
222
131
162
210
119
167
155
162
176
251
193
192
187
179
266
219
197
224
228
181
178
190
205
185
226
204
204
249
187
216
250
234
132
274
228
200
218
169
165
231
158
298
181
178
169
226
118
205
209
218
181
210
212
257
212
215
213
167
234
197
192
231
200
214
223
233
198
208
188
216
186
191
216
168
165
165
229
154
226
226
186
238
231
202
171
246
195
223
237
255
198
176
225
271
201
185
184
213
239
227
205
220
159
161
201
260
242
159
205
283
192
148
227
203
189
139
199
201
221
180
133
227
208
191
195
202
178
238
208
193
222
217
217
217
150
181
201
172
199
241
203
198
211
130
193
202
177
218
158
253
208
173
114
205
186
220
165
214
171
155
225
185
233
166
198
223
199
217
149
117
164
193
221
179
177
220
237
137
200
230
199
192
210
195
195
148
199
226
219
241
229
234
185
204
167
140
163
226
214
218
224
194
216
192
180
221
234
231
200
154
138
180
189
250
233
199
241
178
162
190
222
204
217
220
198
156
127
223
194
189
171
170
235
241
207
165
218
221
196
185
160
192
223
154
203
206
222
181
220
237
198
210
170
220
135
219
144
248
155
227
165
177
233
218
216
189
178
219
191
144
181
195
243
194
253
220
238
174
265
207
183
201
240
221
130
165
160
219
225
219
170
221
152
199
179
188
219
227
194
143
214
240
194
180
183
159
227
161
203
188
212
218
150
215
197
200
201
218
227
187
210
225
223
152
233
239
190
235
236
142
167
193
219
126
127
185
207
205
180
202
166
221
206
196
164
234
202
154
188
109
173
238
194
189
233
201
223
203
176
175
273
171
199
174
143
177
209
210
262
174
199
233
206
224
135
186
191
229
219
141
188
210
249
208
223
163
205
175
211
153
193
199
194
214
235
229
215
204
219
201
203
228
197
205
182
237
199
185
205
160
260
183
189
182
192
227
227
181
155
177
210
226
145
232
187
156
194
168
201
180
210
234
173
154
214
203
170
212
262
182
151
202
190
208
183
172
215
237
205
208
183
231
165
202
211
197
208
257
213
222
218
237
172
180
186
185
212
252
263
119
237
158
176
167
183
243
174
212
179
234
189
220
213
183
215
189
191
240
206
139
207
180
201
206
226
194
268
180
238
190
247
176
214
158
208
184
209
159
194
170
201
273
214
242
245
201
228
196
170
202
167
201
204
202
216
232
205
267
213
221
203
189
182
214
204
201
182
228
200
237
212
245
182
193
242
249
213
228
204
204
150
189
187
230
207
193
239
265
258
208
199
185
193
176
173
214
246
205
176
210
178
190
213
162
155
195
190
195
172
230
174
196
173
197
212
151
177
147
204
258
152
189
203
236
175
149
269
196
159
249
196
151
232
196
160
230
174
171
209
244
210
138
169
203
189
132
176
224
276
156
217
200
214
207
205
105
236
159
241
203
177
241
202
246
262
152
215
162
227
240
213
195
253
177
191
217
165
187
206
101
186
133
263
171
214
219
205
179
189
267
220
231
209
209
180
190
234
145
147
166
195
270
204
202
204
166
219
206
231
228
215
168
142
227
201
233
241
213
248
194
216
180
223
166
238
183
173
244
200
203
184
208
199
185
175
207
178
245
240
180
177
237
194
151
199
220
259
206
212
197
210
157
211
244
242
203
194
215
214
181
251
197
215
199
228
259
193
172
221
219
215
254
206
145
236
255
171
237
201
175
199
233
190
162
204
169
191
151
270
211
231
274
237
253
210
192
191
181
172
221
183
150
224
123
125
176
272
171
197
219
192
137
187
201
226
203
214
216
154
249
231
180
198
177
230
230
231
263
194
240
158
144
205
223
208
137
168
191
214
292
219
176
148
181
201
203
251
174
249
190
196
158
177
217
199
173
204
191
237
161
219
256
204
215
156
207
163
174
164
174
200
204
237
186
183
228
239
125
160
137
261
243
191
191
149
153
195
148
194
177
185
237
194
225
166
231
183
253
187
160
162
197
192
239
284
276
195
170
247
260
266
140
218
161
182
263
224
220
133
169
207
263
134
207
241
237
211
167
227
184
157
272
154
177
189
168
226
182
184
195
205
158
133
210
254
196
169
217
199
153
215
215
207
257
252
170
231
225
194
202
224
231
189
191
205
254
142
204
192
177
217
204
247
215
199
207
187
236
197
217
160
173
239
139
156
224
169
254
238
216
175
132
222
196
224
138
177
230
156
256
197
249
216
147
203
177
141
237
214
250
196
253
210
259
228
130
216
234
186
191
197
243
214
136
238
194
206
166
234
236
215
176
176
257
196
207
172
178
214
166
190
226
209
196
184
155
225
283
147
181
171
197
211
218
232
243
220
249
238
171
128
169
180
136
195
191
204
189
213
158
181
264
245
209
182
178
173
244
204
215
208
185
215
184
212
193
145
197
219
242
219
238
169
154
173
222
221
204
148
139
158
285
242
263
166
126
200
241
203
283
191
219
176
202
168
149
236
227
175
202
212
238
172
202
138
176
257
178
214
197
229
222
188
203
196
212
197
187
148
182
242
199
206
240
250
225
161
210
132
190
124
200
230
223
220
205
135
210
217
158
172
225
218
237
94
173
197
158
221
196
233
223
172
162
211
211
195
212
249
146
224
217
206
206
187
244
212
215
255
214
172
254
153
222
199
158
204
237
193
127
226
217
197
218
235
229
222
230
207
222
188
209
239
152
231
172
260
227
184
147
194
198
186
216
154
281
166
139
190
218
193
146
151
225
165
240
278
168
161
173
198
210
154
159
143
220
208
191
252
215
156
178
195
191
223
173
200
229
272
156
179
209
258
134
230
239
235
180
236
157
164
192
209
214
190
196
239
181
157
180
213
225
248
199
212
135
170
184
200
227
188
197
152
305
168
224
178
222
189
224
239
219
234
174
164
186
208
254
197
259
171
204
172
176
238
225
225
216
257
233
162
223
233
184
194
172
196
185
209
284
230
193
160
178
117
178
210
141
172
207
156
180
207
226
258
176
172
170
159
166
230
173
193
212
249
231
186
240
176
258
161
244
195
201
177
197
192
181
265
171
160
184
215
223
166
175
243
199
181
179
238
182
183
232
231
171
183
178
223
177
139
198
253
183
159
227
157
165
185
196
251
224
203
256
141
205
156
203
89
158
197
246
176
162
205
179
236
208
251
219
169
194
193
187
258
193
259
219
192
149
186
194
212
206
183
211
157
167
139
211
225
160
156
185
202
246
205
185
262
184
190
179
212
190
175
155
186
199
197
194
220
236
149
132
205
154
175
237
227
216
165
219
234
258
230
213
284
126
202
241
174
219
235
188
137
205
171
212
216
257
247
223
236
163
224
240
176
185
194
199
190
150
184
204
208
242
218
198
165
191
161
164
200
216
234
210
194
231
158
257
236
243
248
221
224
175
234
194
182
201
234
176
151
215
191
212
205
161
167
274
225
254
233
221
245
147
125
226
187
179
212
234
247
213
192
223
214
198
188
180
165
188
148
195
230
179
231
207
114
208
175
201
222
199
218
197
143
236
170
235
205
164
148
200
229
182
220
150
166
212
169
181
173
180
146
219
171
205
198
191
234
232
139
189
181
223
232
174
225
187
216
191
237
198
227
172
151
219
190
142
190
196
186
167
222
209
166
198
206
240
153
244
216
216
187
183
200
144
162
221
186
205
146
216
224
116
171
186
263
209
198
226
189
188
196
178
262
235
151
239
209
243
193
186
199
183
226
189
245
187
189
222
174
129
222
228
177
145
176
222
183
221
195
134
231
269
234
227
195
188
146
148
227
193
232
171
246
173
203
222
211
147
197
196
234
204
180
245
215
167
137
161
159
185
278
224
130
205
208
230
143
153
194
233
260
196
217
233
130
184
170
208
175
203
207
280
180
196
233
209
195
246
209
206
193
179
202
237
200
244
263
219
149
211
217
229
228
262
172
111
192
147
204
231
184
204
190
236
148
198
208
255
92
212
194
165
175
184
176
239
196
212
145
170
157
173
237
208
191
223
141
123
176
172
178
111
197
186
235
164
200
202
242
273
137
198
178
283
222
129
238
221
226
153
179
194
199
227
253
172
247
207
244
228
136
233
191
150
199
210
243
180
255
239
220
212
191
215
173
137
231
207
129
201
169
209
271
185
138
239
215
192
248
199
227
178
200
163
169
178
190
166
213
260
241
197
232
203
218
236
200
236
228
223
252
200
219
204
172
198
192
210
153
134
212
221
189
161
178
206
162
211
201
257
211
227
170
166
207
280
230
237
196
232
253
241
230
236
137
148
219
254
195
236
191
163
168
203
177
258
251
167
220
189
217
146
245
220
179
211
140
198
187
226
216
251
294
189
156
186
175
222
204
173
246
233
200
227
213
217
219
132
95
196
209
191
202
201
192
203
201
243
234
162
183
144
222
169
191
159
198
224
211
197
247
240
274
189
239
146
196
123
141
190
287
200
207
154
160
174
175
244
191
249
206
200
262
225
200
213
137
211
177
156
192
140
232
212
242
219
152
190
205
158
212
228
184
229
158
219
205
190
220
249
187
149
221
180
201
172
208
235
160
262
139
172
185
209
142
254
244
174
166
166
205
204
207
239
168
152
261
185
209
161
216
115
136
201
166
223
230
181
174
197
205
227
155
195
144
206
206
213
190
207
272
189
256
247
275
220
215
225
202
186
212
248
208
189
223
102
153
187
230
236
187
217
226
134
207
164
189
256
225
220
171
205
185
202
147
207
216
215
176
178
167
228
181
219
204
146
179
226
181
241
176
231
205
215
186
184
242
206
220
255
159
173
233
249
211
246
242
277
152
181
251
254
172
182
206
256
183
183
155
139
249
161
234
201
201
200
208
250
232
182
247
151
170
230
215
236
236
197
227
233
197
212
213
193
224
172
228
184
180
192
213
188
203
182
150
202
230
256
211
218
243
235
189
175
245
259
184
204
196
183
181
233
174
143
184
177
260
209
158
217
179
191
232
126
189
182
179
203
143
269
232
194
189
125
201
238
238
188
182
203
137
220
248
130
176
212
129
217
178
147
194
219
192
193
213
184
220
160
221
160
211
242
225
166
154
177
116
233
208
168
179
203
208
165
209
223
204
210
228
282
223
226
221
222
212
139
222
268
153
166
177
176
202
191
272
151
177
155
252
160
241
132
172
222
247
249
183
155
185
229
188
193
208
208
219
183
189
225
146
225
213
248
175
208
235
212
294
174
229
217
201
227
214
199
191
221
229
163
251
175
234
155
228
245
194
194
231
160
182
206
190
158
196
177
228
155
181
230
235
167
204
168
234
217
168
204
194
170
255
182
224
162
181
223
196
196
190
169
190
177
174
215
143
208
212
184
192
177
178
205
223
167
189
242
172
223
182
227
98
196
240
168
219
170
182
228
219
188
195
176
164
224
166
215
165
205
225
213
210
154
166
222
169
208
154
172
152
190
219
228
222
203
234
213
251
197
224
201
214
255
200
204
211
228
223
266
222
178
252
204
251
190
210
220
217
197
167
235
210
202
173
217
219
234
200
244
224
144
230
217
197
168
142
172
206
182
220
254
209
173
225
186
196
237
210
176
203
174
182
195
222
165
262
126
264
188
169
207
141
153
217
222
180
268
134
178
207
160
190
178
243
183
257
229
140
260
232
235
191
224
204
166
165
187
246
231
263
214
252
230
154
163
199
201
213
153
264
192
186
179
226
158
205
190
175
215
195
217
183
112
193
198
250
178
208
227
137
181
126
223
260
217
213
237
171
206
192
201
207
250
172
215
225
214
224
190
162
218
233
207
103
167
219
189
193
190
186
173
152
222
251
147
202
169
201
234
210
232
242
178
223
206
177
241
183
251
193
181
180
213
227
217
213
278
214
199
166
115
217
151
218
240
156
237
206
198
174
190
210
203
175
168
193
220
182
136
244
125
219
228
221
190
219
234
165
223
145
174
216
154
181
245
248
267
184
202
251
252
166
170
243
278
179
171
168
203
169
219
205
211
221
194
262
207
197
223
264
197
130
147
221
232
158
219
206
268
139
203
245
219
231
229
192
209
206
156
149
217
152
215
181
222
208
215
233
220
122
231
171
189
179
217
214
216
209
157
234
211
252
237
245
176
186
250
249
215
228
156
263
205
178
209
164
236
197
238
222
242
217
184
165
216
138
223
254
168
186
236
149
123
219
186
169
191
173
185
170
171
217
188
175
182
196
236
156
244
177
136
227
267
127
203
213
193
183
204
222
153
250
210
191
166
150
254
277
230
242
217
219
211
145
242
170
247
202
185
126
148
176
145
250
204
191
186
158
166
218
194
188
177
224
230
241
191
241
218
211
130
155
238
160
157
195
221
142
203
185
284
201
225
254
237
136
170
232
230
174
176
239
242
198
181
206
232
165
214
188
137
208
230
174
191
146
147
186
122
232
255
219
153
204
209
180
236
216
203
169
170
255
231
196
164
203
136
138
147
272
219
227
252
191
231
203
199
230
223
185
200
193
234
195
204
197
243
205
185
133
153
215
129
178
175
144
218
211
210
157
243
174
184
235
188
237
177
212
173
228
226
161
222
189
177
197
206
233
206
192
158
246
180
208
231
194
217
109
177
189
194
209
219
191
246
204
185
145
180
255
187
219
203
147
169
170
187
260
175
243
163
218
171
213
234
201
242
227
166
162
148
186
231
212
231
214
199
169
215
250
142
207
237
167
259
147
196
208
193
224
171
144
262
201
171
249
211
206
203
216
167
159
160
210
219
158
133
202
185
256
201
197
252
176
215
224
200
188
195
221
278
188
174
220
196
198
173
234
197
202
191
204
221
183
272
144
212
209
237
192
216
174
210
209
166
227
184
117
210
181
151
233
197
206
237
195
180
190
232
230
242
225
252
228
195
173
208
220
142
229
183
193
208
180
195
191
202
158
168
162
179
264
220
232
204
209
232
210
199
194
204
149
203
182
152
152
138
217
243
137
208
214
268
195
235
158
213
192
195
207
250
220
175
234
228
140
222
153
156
176
182
161
206
145
175
200
180
229
218
207
204
153
237
210
235
172
217
180
202
208
220
224
171
196
174
126
148
199
141
242
255
164
188
206
217
229
140
203
246
188
159
190
185
242
178
211
162
208
155
171
225
190
168
156
239
260
216
176
218
180
168
219
192
242
170
267
218
237
160
222
191
161
198
234
222
241
152
191
205
207
156
205
233
267
207
146
198
156
231
223
147
161
167
239
160
257
207
197
199
241
162
200
218
185
212
224
198
142
200
203
111
209
254
178
202
225
250
177
175
239
193
190
159
204
243
201
224
166
190
162
137
151
159
220
223
263
217
217
189
204
234
214
246
234
188
202
137
190
217
176
212
156
157
178
255
141
286
193
255
156
132
239
147
252
220
196
220
202
162
220
215
211
206
190
232
169
207
187
200
194
279
220
234
171
229
217
226
172
189
255
146
179
173
208
186
197
191
128
174
247
173
184
196
257
218
196
167
211
285
258
217
188
206
131
236
196
281
217
167
237
197
245
180
239
182
257
223
163
248
186
226
225
278
188
227
230
250
219
213
152
202
201
222
223
216
192
234
208
220
200
213
173
202
172
245
215
152
218
216
153
208
207
236
233
151
149
193
188
149
156
220
173
202
197
214
256
174
217
236
147
219
228
200
225
230
204
250
201
161
229
222
174
164
242
193
208
208
220
215
195
153
203
205
165
198
184
191
243
188
168
186
225
188
246
198
212
233
201
235
244
170
231
192
160
136
213
163
168
171
174
167
176
243
216
181
107
221
248
271
165
165
200
268
205
258
198
148
192
175
190
209
267
172
202
238
199
197
194
180
177
233
215
178
225
163
208
146
197
186
258
197
168
219
193
221
221
147
113
234
211
134
204
193
215
166
229
222
224
178
190
193
199
161
199
249
215
224
198
197
222
180
182
191
165
197
225
211
200
192
179
196
154
204
132
257
256
179
153
201
173
189
210
186
104
195
211
171
227
177
191
183
217
197
199
202
222
233
218
256
133
246
212
199
207
218
225
246
238
256
228
217
236
183
213
166
147
141
203
247
217
227
172
209
215
250
197
192
231
151
106
235
228
227
189
227
244
197
225
114
165
220
193
158
216
228
180
194
189
200
172
232
212
185
231
275
213
233
172
152
190
230
164
148
209
162
210
176
211
176
207
184
230
151
212
231
243
197
207
204
188
216
198
238
266
217
209
170
238
256
146
113
198
227
173
177
216
208
239
236
238
241
202
199
175
245
220
214
182
245
166
189
183
227
205
254
235
124
171
171
219
244
234
147
196
171
181
211
150
247
238
230
168
195
236
213
226
268
242
205
195
180
229
194
179
155
228
216
147
202
195
197
165
221
143
163
275
164
251
246
201
186
233
233
264
222
200
190
185
182
229
256
143
250
168
184
146
220
226
246
208
243
228
178
214
195
118
229
241
202
138
210
182
192
216
136
151
146
158
259
190
184
161
152
197
166
182
177
131
215
183
246
201
205
160
182
239
222
208
201
259
207
167
209
197
234
222
194
161
243
228
176
200
163
226
183
174
137
211
139
246
270
128
229
241
171
190
230
236
166
205
163
239
263
153
234
220
185
184
240
181
232
229
219
153
214
236
249
249
204
193
197
214
102
267
196
138
170
206
239
161
212
165
258
271
281
239
192
267
142
132
256
165
176
172
218
118
225
101
196
154
189
196
185
163
203
188
155
219
235
134
221
179
235
167
188
167
169
204
242
216
293
155
154
167
150
203
138
193
185
148
229
233
194
168
162
215
107
139
195
195
194
209
153
205
212
185
176
239
206
182
197
164
263
157
200
160
218
216
143
270
239
178
214
216
235
198
165
145
167
203
198
168
197
206
188
137
236
193
195
233
217
121
166
188
212
262
177
163
223
168
161
138
243
152
261
233
234
253
221
190
107
248
193
250
172
187
221
181
187
168
202
228
182
210
210
233
198
214
187
148
195
181
199
178
229
224
185
203
153
237
214
216
230
268
94
203
222
170
249
215
215
254
231
242
145
247
117
207
246
198
189
221
239
250
172
199
217
158
176
136
178
188
213
150
185
199
203
195
188
199
219
210
179
223
175
190
194
178
185
266
226
193
277
240
194
179
210
206
232
172
236
196
200
231
176
222
197
234
237
202
252
144
135
237
240
212
214
112
206
170
208
220
231
224
186
214
194
255
232
188
175
163
159
244
250
176
271
171
178
234
220
197
207
186
230
207
208
189
236
232
148
199
217
256
247
241
227
167
264
268
223
229
240
174
196
243
238
202
148
191
245
235
149
193
211
204
156
220
242
224
226
161
196
148
202
214
168
202
240
119
219
268
162
184
213
166
233
198
240
206
184
176
236
221
194
207
210
215
212
193
231
192
214
231
202
210
238
196
168
169
170
280
208
242
171
210
181
248
213
157
185
164
178
180
247
209
169
231
172
173
227
187
192
189
191
148
265
249
210
220
243
215
240
177
210
159
195
191
244
198
236
222
182
177
149
188
103
191
171
196
200
234
179
151
201
200
223
169
187
181
145
254
214
195
233
170
163
178
229
218
168
198
231
261
176
202
180
178
152
145
196
243
232
218
227
159
206
158
209
212
221
216
155
251
219
187
202
179
222
239
223
131
164
236
200
240
236
159
175
195
194
166
190
189
261
203
242
222
251
170
161
149
152
195
250
185
198
279
163
189
245
200
191
173
209
142
221
210
204
252
190
194
209
138
232
259
214
200
167
269
237
235
203
220
256
203
200
265
159
202
171
139
196
179
206
208
208
202
217
212
140
239
162
177
178
203
207
121
251
260
133
205
264
138
212
230
203
273
219
180
181
223
135
220
218
204
237
185
184
161
243
168
240
251
184
251
213
218
247
246
209
258
254
200
124
169
203
240
204
200
195
181
133
216
158
152
185
189
182
167
219
208
224
167
223
205
193
167
199
192
201
222
229
148
183
238
185
206
201
231
228
133
135
177
216
234
207
192
197
208
183
165
196
183
133
157
160
198
174
234
234
203
149
206
223
184
185
194
204
227
235
146
118
236
222
178
223
188
235
272
186
202
176
172
226
153
185
192
229
213
279
192
227
94
179
194
171
162
209
277
163
226
218
137
215
191
172
201
198
127
220
195
182
173
197
246
242
195
206
241
159
215
172
243
182
215
188
185
190
185
247
161
173
188
250
224
146
236
260
228
189
207
201
174
193
253
235
229
236
220
213
211
222
168
278
205
186
157
271
131
160
226
214
226
234
192
219
228
189
196
208
247
161
188
222
226
181
189
217
203
178
216
221
196
184
237
220
181
185
159
219
231
214
200
175
221
213
142
204
216
250
206
195
138
192
243
244
192
207
153
226
200
256
194
210
192
162
192
227
215
168
118
177
183
166
246
220
163
200
195
215
205
198
227
232
194
140
201
135
203
184
219
230
220
196
159
196
214
151
185
201
227
190
159
228
109
175
254
209
243
193
161
218
220
223
210
260
193
166
197
183
189
244
185
184
121
183
142
163
202
163
187
209
192
159
232
238
259
203
207
235
204
222
177
233
205
263
188
143
221
227
232
182
234
182
205
142
203
186
227
129
257
192
195
254
188
224
183
242
181
250
181
215
228
148
205
268
160
123
235
205
163
210
284
225
186
167
236
209
244
215
196
228
213
233
229
196
248
199
121
197
181
150
167
234
171
263
146
241
208
186
182
262
195
220
230
260
224
200
154
237
198
201
182
255
214
219
188
196
211
195
224
198
203
171
226
175
156
194
176
174
158
247
231
151
185
220
184
216
212
199
162
193
197
164
242
191
205
195
162
202
209
180
172
192
240
221
206
287
174
171
210
157
245
182
262
175
223
198
212
219
209
193
232
180
161
225
201
150
156
245
219
138
163
224
181
182
195
194
194
240
180
204
151
241
136
162
178
232
155
250
188
210
218
192
234
207
221
193
170
210
186
233
280
164
191
198
155
157
199
166
206
219
226
225
241
242
130
173
172
114
209
116
221
227
196
186
254
217
192
241
206
238
185
202
184
181
181
171
139
228
153
264
224
234
166
227
165
215
164
170
186
129
226
229
222
185
179
231
147
223
152
121
220
182
170
200
197
194
217
193
187
206
220
258
183
176
164
246
163
204
248
205
203
222
211
232
191
235
213
209
218
237
184
300
202
274
255
204
165
227
239
198
318
202
228
253
214
156
196
251
204
176
230
221
206
163
183
216
229
288
124
248
111
237
147
216
227
171
103
234
159
213
198
149
144
181
200
175
117
243
216
173
212
172
186
207
179
249
191
206
175
181
173
212
115
236
188
221
174
178
142
151
196
227
173
182
210
145
219
227
242
269
216
204
213
275
156
188
170
186
196
138
198
203
274
195
181
200
164
240
166
205
215
175
246
135
259
144
225
162
206
199
159
112
192
239
215
191
186
230
162
216
223
245
206
221
177
235
182
229
216
224
228
199
215
221
192
170
201
208
186
148
216
183
176
176
160
180
146
140
208
217
195
167
235
256
187
158
216
203
185
237
283
176
167
203
147
182
217
206
252
238
244
250
235
204
213
245
296
190
210
193
146
267
269
204
188
210
203
219
197
229
190
157
213
196
240
202
159
204
197
210
164
231
149
165
208
222
213
228
284
113
163
227
210
198
149
247
202
241
137
238
161
223
241
166
114
268
193
214
246
213
262
226
201
179
196
221
213
232
244
121
205
143
233
259
164
176
227
203
213
166
203
213
171
191
221
205
148
136
236
164
157
240
195
180
249
217
181
178
195
259
164
248
224
203
239
143
190
202
223
215
237
206
268
208
265
206
212
190
195
193
163
182
225
198
144
191
178
149
182
98
189
195
206
145
176
156
158
174
126
204
196
234
234
227
213
225
161
204
191
201
202
218
105
234
204
193
219
218
223
227
222
243
206
180
155
190
224
186
178
105
198
194
193
240
203
192
148
206
204
164
201
181
243
153
121
201
229
178
264
204
224
169
170
219
176
152
179
190
208
210
248
200
252
231
197
259
267
231
193
204
145
255
175
136
190
252
209
189
179
249
229
143
228
244
236
255
236
187
233
198
225
229
136
219
202
202
206
218
249
183
215
171
220
245
231
173
209
215
185
220
227
208
192
217
259
197
194
87
138
188
248
229
197
229
228
217
144
181
185
172
269
227
163
159
235
178
186
212
228
218
171
236
211
182
231
157
192
215
159
245
222
222
225
163
189
229
149
116
164
146
193
109
190
184
216
191
170
196
169
262
188
190
199
242
223
124
125
201
212
190
230
158
172
198
190
255
169
270
170
213
233
195
224
250
208
202
228
219
197
172
233
190
120
164
204
220
155
175
122
225
237
234
266
176
236
179
166
144
242
218
169
228
142
176
171
237
169
208
145
233
198
205
234
251
170
207
181
229
108
162
170
230
238
220
249
171
242
172
219
157
180
215
234
211
260
230
169
189
205
159
197
223
254
139
204
236
225
186
172
223
169
209
218
178
180
214
247
211
227
200
258
199
149
242
245
188
258
160
188
178
161
143
234
206
201
260
150
252
135
168
161
187
184
214
212
233
180
211
167
211
189
171
225
163
231
138
179
147
194
189
211
133
153
189
234
194
149
198
207
253
252
186
233
152
256
229
190
221
269
248
182
202
143
117
204
103
172
143
209
191
191
173
208
208
165
236
219
188
183
183
222
288
237
245
224
260
188
255
152
253
177
248
211
174
188
172
144
179
206
225
207
190
175
109
184
227
211
220
268
228
238
201
198
123
218
184
220
184
198
213
243
271
151
161
214
211
214
221
194
215
249
229
191
223
228
161
204
162
197
160
220
202
146
134
147
174
170
213
270
250
141
158
166
211
179
151
235
187
237
141
162
308
236
204
174
185
249
193
196
230
209
239
224
244
147
218
208
157
202
209
217
174
165
209
234
252
213
220
185
154
194
178
238
177
230
187
164
178
148
243
195
245
184
202
207
192
236
239
155
171
222
220
194
218
179
242
217
198
185
249
181
196
226
218
256
138
161
239
167
202
250
202
252
191
197
207
199
207
241
196
242
144
251
186
231
163
255
160
158
246
216
259
188
192
189
173
163
147
178
178
248
132
215
167
135
223
200
203
209
215
214
216
234
210
157
133
121
194
135
221
243
273
209
237
206
182
147
193
167
201
195
144
184
183
162
209
191
194
256
233
187
202
224
191
181
152
268
162
175
201
123
262
224
212
182
217
186
184
183
234
255
243
179
190
161
234
203
189
215
238
160
203
192
224
246
232
184
267
203
193
157
271
207
241
280
241
231
183
178
201
194
145
177
228
193
199
152
245
203
195
128
260
228
175
203
190
118
217
167
164
191
246
213
135
143
210
243
200
195
231
192
214
180
223
159
208
230
191
159
202
150
230
210
190
176
176
167
257
223
155
214
195
215
162
238
210
173
219
231
170
204
203
183
250
158
228
233
251
224
186
175
253
221
197
272
171
200
155
228
189
211
199
170
192
253
220
178
145
199
181
210
210
248
161
237
188
200
189
188
197
219
226
185
234
237
249
205
221
298
208
170
200
215
177
247
206
132
147
178
145
206
200
141
260
215
194
182
181
226
232
195
165
166
205
256
221
229
198
196
221
129
163
209
174
230
201
188
261
166
166
184
152
216
279
217
187
221
204
215
254
205
182
206
239
185
271
179
206
203
240
192
166
185
231
190
197
203
174
199
209
191
256
228
196
179
203
254
213
198
159
222
219
277
223
212
250
155
112
181
172
189
202
155
161
225
177
241
158
270
219
200
193
120
192
212
161
193
182
226
231
236
179
184
177
168
221
225
221
253
178
210
176
205
213
206
225
213
207
251
252
174
200
176
189
181
210
194
240
192
183
214
137
219
209
182
180
178
227
138
212
243
230
208
111
244
166
210
179
132
245
192
224
172
237
206
205
247
262
170
235
165
250
196
173
144
198
205
239
235
224
242
210
224
173
210
186
172
215
203
177
205
210
139
223
240
236
191
169
155
161
128
210
249
203
173
235
217
258
217
219
182
235
159
208
182
196
210
221
122
243
206
195
249
212
239
271
180
181
189
195
167
216
163
231
217
241
181
171
227
217
207
227
258
260
161
156
179
158
180
268
157
187
210
150
197
200
219
203
207
195
211
134
205
234
155
254
187
241
242
160
192
220
151
187
163
145
231
211
229
199
176
170
121
191
293
218
190
256
169
250
223
196
244
260
247
183
212
243
197
145
183
248
166
223
173
178
200
196
210
193
207
243
196
192
186
262
197
225
232
213
276
166
137
197
179
241
164
145
140
196
192
153
196
215
184
185
146
199
218
211
198
182
204
166
211
159
202
161
190
225
236
181
190
231
147
230
180
226
149
218
234
223
223
199
199
230
216
209
164
230
237
223
208
194
189
202
215
220
219
248
170
240
196
198
203
174
211
173
168
168
189
216
208
216
197
223
234
291
207
282
227
146
201
187
227
176
248
241
195
239
251
153
270
215
185
230
189
138
216
216
212
245
214
218
181
147
214
190
223
227
182
184
227
186
237
210
229
251
242
229
158
211
114
181
187
171
238
225
149
189
231
197
199
197
163
217
143
200
227
275
172
210
172
219
200
164
139
163
169
193
110
220
152
218
218
160
205
209
163
170
209
204
228
214
201
159
184
209
178
245
238
183
192
211
178
254
221
190
195
162
214
224
223
219
221
194
229
179
230
218
193
148
216
231
185
224
149
151
213
170
156
220
221
189
213
186
186
185
158
132
207
214
222
221
241
226
181
193
206
207
153
168
242
219
198
182
219
186
220
227
182
179
268
227
236
193
284
256
149
181
165
127
230
203
143
253
220
161
219
174
240
262
201
229
194
174
191
203
242
211
212
238
135
217
227
130
170
183
182
220
184
223
212
182
175
147
231
231
221
220
206
231
125
193
192
108
244
138
224
202
173
200
133
207
270
196
210
184
144
195
209
201
262
206
199
225
229
246
215
169
274
160
143
189
138
188
251
230
229
186
266
252
160
154
215
169
223
202
202
180
279
146
228
212
180
112
142
134
208
248
166
191
139
142
198
181
202
187
256
212
227
255
205
170
212
193
204
249
235
150
225
239
205
187
190
192
141
165
258
213
171
147
248
205
240
232
225
179
217
194
156
205
181
234
185
223
177
129
235
218
213
192
235
209
211
237
184
198
146
224
208
236
139
180
192
181
213
191
207
203
150
229
252
240
185
257
174
171
179
170
223
169
255
198
110
196
134
256
255
146
228
193
176
221
252
202
192
132
180
143
161
206
188
214
261
238
225
156
250
174
171
176
200
131
169
210
277
194
163
157
167
170
166
217
196
234
244
187
192
180
146
154
197
256
171
251
177
214
170
154
115
242
180
250
188
231
168
185
201
200
194
156
208
200
230
176
186
176
187
241
256
215
148
207
177
180
188
165
213
196
207
206
208
194
233
187
125
196
239
217
188
222
236
201
194
180
182
224
196
197
176
152
225
213
224
198
248
209
178
243
186
180
134
239
283
242
208
224
232
150
241
190
211
256
169
199
291
170
255
214
178
216
147
158
223
200
204
174
203
182
260
185
178
175
219
224
171
209
86
193
199
229
238
224
233
166
181
164
226
155
216
176
176
135
190
181
221
143
170
190
219
168
240
223
194
259
164
226
185
249
175
179
221
214
215
239
197
221
201
151
214
152
275
105
252
251
215
137
165
166
229
170
245
206
222
245
204
178
196
125
193
208
228
201
187
259
208
192
221
195
255
182
126
239
244
223
238
138
208
277
258
146
246
155
204
194
217
189
229
213
221
166
262
203
195
167
214
220
246
217
172
193
158
203
194
181
165
210
193
147
150
224
246
192
225
253
126
209
187
176
221
187
181
219
238
142
224
179
210
211
154
142
193
160
194
220
211
182
132
191
218
245
185
222
188
205
227
198
205
129
212
182
207
321
194
217
210
156
225
248
217
134
222
209
205
159
199
222
205
278
162
170
169
212
232
238
245
137
225
207
291
226
280
235
222
185
159
216
159
182
173
188
175
193
155
137
246
209
190
193
212
233
101
185
238
203
240
130
170
162
276
205
196
202
205
135
183
235
219
148
251
214
220
205
244
106
255
185
246
155
269
146
241
160
153
256
208
272
137
204
231
197
154
161
219
150
189
212
205
213
199
213
199
249
202
269
183
160
234
234
189
150
259
249
205
180
156
243
186
249
198
211
269
216
210
212
222
188
165
185
186
189
163
163
137
200
170
179
219
246
229
170
219
166
183
197
173
223
206
223
181
196
224
224
234
218
198
183
226
199
191
185
173
178
164
215
234
230
187
213
227
215
228
147
188
218
227
234
187
181
207
189
222
185
214
205
163
220
198
188
178
197
145
261
211
158
205
144
233
249
222
223
253
225
220
223
178
180
282
227
269
200
191
117
188
215
197
184
116
236
262
194
151
218
215
149
218
222
143
248
234
219
221
190
179
177
175
159
216
168
239
168
208
216
210
142
237
180
217
222
204
245
209
239
196
200
227
156
184
223
167
192
188
179
193
207
94
200
146
228
167
203
142
219
212
239
218
202
181
211
158
227
236
199
218
197
254
260
181
195
154
220
179
220
187
272
221
201
137
192
236
177
231
195
146
171
189
185
224
170
237
184
92
226
217
238
244
234
206
188
127
212
183
172
168
190
205
208
238
264
156
179
250
190
225
200
198
219
156
180
191
250
243
120
164
154
209
162
215
189
152
209
208
113
240
153
216
187
201
135
222
198
182
197
164
183
150
198
203
265
247
208
192
180
173
182
161
237
211
185
153
170
226
206
293
201
213
238
168
158
163
206
241
172
266
167
186
210
264
245
170
109
234
205
171
195
107
197
201
202
174
187
215
197
198
203
191
216
213
167
143
216
199
226
193
208
179
251
153
179
160
204
175
200
162
160
178
225
186
232
209
138
171
201
180
195
189
241
206
204
224
156
229
244
165
202
172
213
240
227
152
179
246
189
243
164
239
205
162
193
239
229
187
256
181
170
150
212
243
132
191
145
188
194
87
184
184
183
241
164
260
232
217
194
245
174
175
162
225
231
150
185
243
150
201
235
212
147
205
269
130
179
250
191
180
169
214
162
232
254
165
163
203
182
202
209
196
208
151
146
214
143
160
189
247
265
165
176
269
203
226
158
246
228
193
206
191
212
279
245
206
237
257
212
238
191
244
244
250
201
175
184
152
201
191
147
171
167
170
242
234
177
188
230
223
191
174
272
153
179
147
230
192
199
187
202
282
219
197
194
237
111
175
114
213
140
230
175
183
217
228
200
218
267
201
173
258
254
156
163
224
159
140
242
203
174
202
193
206
277
218
195
141
221
191
148
191
198
162
157
184
235
219
218
165
139
131
250
147
164
281
150
234
159
204
189
187
242
194
220
178
143
244
206
144
243
203
228
130
223
210
240
175
182
218
203
183
224
198
221
142
224
227
130
200
197
242
193
159
248
167
183
195
176
213
171
208
231
185
214
173
234
239
214
119
184
235
175
230
151
221
211
236
204
204
170
171
148
244
214
210
236
259
212
208
287
236
273
233
217
221
159
156
203
232
217
193
241
171
228
186
212
196
199
198
268
212
233
170
257
169
177
203
232
253
160
200
230
221
221
195
193
191
275
220
152
133
199
192
227
192
174
229
164
254
254
148
216
191
241
146
208
218
177
204
262
173
218
242
208
236
187
173
189
133
246
147
209
192
194
160
212
243
254
199
202
164
199
191
219
190
165
146
127
225
178
185
172
192
192
233
189
197
230
243
208
195
212
167
205
224
225
174
186
143
112
149
195
226
230
219
197
196
196
213
202
236
209
238
262
197
211
223
162
217
235
202
211
266
126
202
188
210
140
218
173
276
124
142
232
247
221
157
223
211
238
215
200
198
204
213
194
213
257
218
199
139
223
206
184
185
196
186
156
221
212
159
208
182
160
235
186
299
225
242
187
205
179
239
228
185
251
269
253
177
115
170
227
228
205
202
211
185
220
123
169
234
218
123
164
102
196
215
158
208
144
172
187
199
239
181
196
199
230
223
200
133
185
196
264
229
180
161
158
224
118
280
190
216
190
219
212
223
213
237
157
196
187
185
202
173
188
249
167
243
194
158
98
168
181
204
225
184
214
186
271
270
205
258
176
227
246
210
240
250
159
249
164
156
171
235
231
158
162
158
173
235
246
279
181
176
207
146
192
183
167
218
197
205
177
188
150
208
173
171
220
217
174
238
200
205
248
200
193
257
210
201
145
195
189
178
237
242
217
176
175
146
206
137
154
211
238
206
223
136
176
137
205
116
229
171
204
157
237
222
183
254
239
195
128
159
195
168
245
153
148
220
206
202
240
186
171
105
190
205
250
210
249
235
197
233
152
215
161
217
259
188
214
226
229
174
227
182
201
177
193
168
243
190
233
212
131
181
192
200
197
265
209
165
216
189
225
211
174
130
164
212
253
197
222
220
233
166
233
267
193
212
230
129
233
242
209
230
197
204
255
179
262
183
207
236
209
173
189
221
193
141
157
227
199
243
159
211
167
151
152
196
144
239
206
194
224
169
182
231
156
223
158
224
234
202
204
197
272
168
145
234
227
161
225
181
183
257
141
211
233
201
216
176
157
218
158
177
253
248
193
184
192
260
183
221
177
207
111
216
164
230
254
186
216
218
219
204
161
217
253
240
183
133
174
249
188
248
240
204
210
235
246
164
217
235
189
201
187
162
195
200
246
186
222
265
256
178
183
225
262
238
180
181
192
110
219
198
169
132
222
167
174
179
220
203
205
157
133
219
197
177
214
226
188
237
225
249
231
156
126
271
170
230
183
221
155
217
253
196
187
168
188
198
214
221
216
210
150
253
215
209
156
199
126
205
215
185
196
160
168
224
259
240
193
175
190
192
184
185
163
212
208
101
216
176
251
232
201
183
153
150
180
163
245
208
230
155
242
250
227
189
219
173
132
182
205
232
198
187
237
182
213
176
175
243
167
162
162
181
242
141
182
199
233
264
219
232
164
226
233
233
160
229
202
227
178
186
218
217
224
149
206
235
183
212
182
217
166
233
166
183
181
185
183
244
169
247
199
260
132
153
200
216
187
141
133
211
155
228
179
220
202
205
174
172
164
241
155
250
154
164
233
151
151
131
216
196
190
201
186
229
227
254
243
207
184
228
225
179
234
210
172
153
161
197
258
170
206
213
234
161
237
209
213
186
99
151
267
201
242
130
190
210
174
241
195
185
228
144
205
185
172
178
160
154
241
219
222
235
162
248
189
187
209
201
127
218
239
183
190
241
231
213
187
207
183
234
192
213
212
161
263
156
169
167
191
274
185
197
232
115
158
207
130
199
189
204
203
204
226
239
223
226
198
206
199
210
203
187
208
259
197
146
233
258
167
224
186
235
248
219
203
164
180
144
176
221
189
297
181
203
196
170
161
171
270
149
170
191
247
220
147
239
213
132
204
216
192
164
137
159
154
209
234
199
222
198
201
184
200
223
229
194
123
132
194
212
212
171
200
212
234
192
153
216
183
193
188
252
180
178
107
268
200
185
220
190
150
177
172
237
217
197
197
200
240
227
221
176
198
192
281
160
169
211
219
251
188
161
189
208
273
199
242
203
204
134
200
155
245
143
227
166
243
169
206
259
210
234
200
217
226
223
205
198
206
232
253
178
236
182
175
203
112
141
159
185
173
226
203
226
160
207
148
174
231
210
178
121
121
287
235
220
189
240
233
220
176
203
177
154
229
240
191
245
143
174
241
257
189
237
191
186
168
231
242
185
219
197
180
225
123
194
240
181
133
200
180
219
189
238
217
193
160
157
242
230
243
220
146
217
186
172
224
195
203
215
166
228
234
219
156
203
180
175
214
244
211
197
248
204
192
207
226
196
218
182
219
224
236
254
196
183
205
204
153
174
188
200
225
175
187
212
145
198
191
231
237
191
254
156
213
130
178
192
230
260
233
278
171
247
132
201
225
188
145
207
173
165
180
216
228
232
194
159
237
167
206
131
237
215
184
234
268
207
166
230
146
190
213
121
208
166
231
249
225
241
236
199
199
196
230
215
237
229
241
227
220
229
199
217
229
253
198
212
216
179
186
152
180
216
184
205
240
170
221
169
185
105
184
132
229
202
102
212
273
189
168
190
222
204
226
225
213
196
238
197
211
187
257
211
202
212
192
181
219
183
190
163
249
217
192
169
215
215
222
156
210
231
205
138
224
186
184
219
135
172
239
234
181
161
264
210
188
172
204
237
241
236
199
239
207
186
176
229
199
200
217
201
138
218
192
148
180
270
207
246
233
195
251
122
168
211
232
189
204
224
178
208
212
142
145
191
205
198
234
224
213
216
227
208
170
222
226
118
181
244
202
198
230
237
224
175
171
184
167
231
172
187
188
258
226
223
140
236
232
163
198
206
210
236
132
190
199
185
179
157
198
181
189
196
245
182
206
190
104
233
190
183
196
157
177
190
227
180
216
145
230
177
243
190
215
218
175
199
214
237
165
238
173
214
180
215
209
231
223
239
207
211
194
230
120
188
196
173
191
172
203
181
184
250
184
250
182
145
207
171
216
137
193
265
164
241
219
269
203
157
221
152
196
262
220
186
253
246
211
170
238
236
168
241
191
169
200
172
172
289
175
216
228
175
129
151
231
148
235
192
193
140
160
182
188
209
145
237
204
196
138
249
198
201
209
210
169
215
268
170
262
181
247
170
215
182
170
133
180
217
181
176
129
194
163
165
237
141
212
195
237
219
239
224
177
183
228
239
130
182
180
207
182
203
209
212
163
228
229
224
201
221
204
182
179
154
237
246
246
281
156
202
240
201
121
226
195
170
245
185
162
240
155
172
253
196
243
189
234
199
220
199
171
217
119
160
157
150
209
163
197
228
224
249
178
188
182
159
209
193
166
203
171
239
199
156
199
144
205
202
223
192
180
210
223
153
165
196
230
207
126
172
212
145
172
211
210
241
178
203
193
236
242
152
175
237
179
233
249
226
197
242
186
187
180
211
224
238
191
235
230
266
222
194
192
130
222
216
204
262
178
191
217
168
164
155
213
196
214
166
142
172
203
177
159
172
177
226
248
170
208
201
238
191
168
179
154
185
246
289
164
176
224
210
185
154
178
180
153
191
246
222
247
158
170
165
225
219
197
213
109
174
196
205
192
235
186
168
266
141
129
263
127
219
252
173
246
196
185
173
175
186
167
106
203
148
200
154
175
176
123
216
174
152
225
217
223
214
138
202
198
230
181
217
245
220
170
207
216
205
244
188
166
238
221
236
181
220
261
246
180
197
256
179
262
189
236
234
224
136
199
216
272
244
187
230
168
207
199
194
260
199
219
224
225
180
198
216
253
219
213
208
224
225
170
160
191
201
170
216
233
177
232
225
199
155
171
231
234
193
196
219
196
148
286
209
251
288
208
168
211
223
157
258
192
247
184
179
186
192
155
230
203
178
208
115
237
272
211
228
133
223
143
188
169
148
247
197
206
215
215
227
251
162
243
214
230
166
223
155
212
182
255
146
202
180
185
170
236
265
228
150
210
222
202
219
159
231
241
185
212
186
253
216
187
233
198
177
199
183
168
166
192
248
196
179
125
225
149
202
200
190
263
200
152
204
234
201
242
167
214
217
192
236
188
253
207
211
209
162
194
143
240
254
98
186
181
246
210
203
222
231
241
235
234
178
202
208
188
219
244
112
210
149
208
170
197
155
169
145
161
225
199
196
218
198
225
210
209
171
190
210
189
190
159
219
256
213
164
244
103
239
177
178
213
193
208
203
116
234
188
238
231
206
132
220
168
214
240
197
213
183
135
189
213
189
200
167
178
255
201
226
236
174
209
179
213
235
256
160
175
194
212
214
220
152
162
188
203
157
224
167
217
243
172
116
189
246
201
178
217
152
139
215
206
262
220
216
168
211
198
154
197
203
203
194
230
162
211
210
227
251
213
210
217
226
176
208
268
155
190
218
154
232
196
195
222
196
204
236
252
162
210
156
215
219
238
142
220
209
216
218
200
183
159
150
152
202
246
148
190
217
176
217
131
214
212
231
151
230
228
153
205
115
143
179
218
183
226
131
219
155
223
227
116
213
164
169
219
222
220
228
259
246
230
227
237
154
234
231
171
184
227
201
208
184
206
201
150
192
225
217
206
200
173
163
211
241
144
165
141
251
242
133
195
214
211
170
229
175
210
184
188
132
170
253
202
220
154
191
145
191
187
178
225
227
254
178
261
237
243
129
280
197
284
173
243
182
233
193
157
245
255
181
208
244
196
154
173
205
209
206
153
160
206
164
187
151
214
167
171
170
168
179
164
214
165
199
172
157
216
210
244
164
188
183
126
238
230
152
139
218
198
191
216
145
205
202
243
187
246
194
221
240
193
245
259
176
213
145
220
188
177
205
153
134
194
192
134
200
211
169
253
211
163
208
216
228
144
230
229
205
180
189
258
220
245
203
167
180
199
223
170
217
212
203
130
195
168
212
136
173
216
198
220
170
194
178
123
194
205
193
163
163
212
193
228
207
158
219
204
184
232
172
254
225
216
199
191
202
250
127
141
222
206
152
150
247
185
158
240
214
220
234
193
214
194
252
209
198
207
168
226
200
229
197
166
168
190
141
194
218
213
251
218
166
241
202
229
208
227
153
233
248
239
276
162
265
195
228
221
131
147
181
171
213
126
152
217
251
231
149
189
191
201
117
243
163
268
186
174
204
166
242
201
247
165
168
204
209
189
249
170
183
177
259
180
218
208
217
137
157
186
231
191
182
186
156
219
179
222
159
170
187
238
224
238
215
198
212
216
164
249
211
198
159
205
204
221
144
241
193
179
136
222
251
180
166
163
220
177
164
145
209
185
217
208
248
196
208
173
199
192
267
235
255
205
178
161
268
190
186
179
246
214
215
161
201
152
208
145
139
205
196
239
206
243
234
130
234
233
239
229
188
218
195
192
178
169
235
248
275
185
233
165
192
199
213
201
176
205
199
191
181
193
208
150
256
192
236
185
240
215
207
205
240
147
127
168
218
246
211
215
192
185
226
224
181
212
210
212
250
194
201
201
235
143
200
207
169
206
231
166
201
178
226
218
183
204
252
207
168
114
213
225
204
163
215
241
200
211
166
156
172
177
198
205
142
176
251
197
280
247
202
176
181
220
211
219
184
134
263
212
257
230
215
226
164
180
183
207
206
129
166
236
225
203
206
187
149
224
185
234
202
186
167
154
140
167
251
167
213
185
257
219
188
220
261
179
161
183
184
201
233
160
200
179
200
205
309
173
216
230
137
171
248
270
186
196
196
222
190
176
258
215
178
218
228
216
209
238
212
223
127
191
186
229
238
181
181
193
203
182
264
154
214
187
168
152
237
239
247
187
260
224
155
199
258
192
260
247
202
210
240
185
241
209
194
144
251
246
169
162
124
168
211
150
170
252
225
221
220
259
193
221
230
187
184
214
228
219
208
236
195
194
191
203
162
180
174
150
212
171
221
149
252
217
213
191
153
204
192
139
198
210
179
200
252
157
218
177
211
231
217
143
186
199
149
202
165
240
268
180
151
218
201
179
182
201
223
164
174
151
204
169
182
145
184
212
211
270
206
136
193
240
232
212
161
156
197
173
253
203
158
104
173
225
265
210
182
220
210
241
214
241
224
191
210
169
161
257
183
194
198
216
160
211
203
250
228
224
149
232
184
143
206
232
168
181
183
180
263
161
202
243
239
173
196
247
177
215
140
242
190
173
236
162
186
225
173
192
195
161
167
209
233
161
252
234
151
235
174
189
145
215
170
193
180
157
228
209
203
230
204
193
191
227
211
212
192
237
203
227
208
153
216
137
193
213
221
182
154
172
209
206
229
236
236
172
215
177
116
174
213
156
223
179
144
208
241
220
177
178
240
151
157
200
204
181
196
192
177
244
195
177
238
226
290
184
240
183
182
221
132
178
178
182
222
194
196
157
165
193
196
162
223
262
257
159
208
148
201
227
199
127
140
213
150
242
176
189
223
240
230
205
195
186
175
202
228
188
247
151
210
250
184
236
206
210
247
188
241
241
188
142
232
261
209
211
164
238
172
214
121
235
174
201
232
147
159
211
211
185
187
220
244
183
189
192
206
202
228
236
229
175
166
226
185
219
257
212
185
163
214
228
186
198
197
209
155
195
237
168
200
160
200
190
192
221
164
142
203
172
154
218
205
254
178
250
177
147
205
245
184
233
210
179
177
218
169
235
200
150
138
165
208
196
205
202
251
223
201
228
185
209
200
211
170
223
193
264
236
213
175
141
256
159
172
163
211
245
225
193
77
200
233
162
220
211
219
178
235
136
194
158
222
172
199
195
169
209
213
195
148
172
176
137
182
216
155
223
148
220
133
268
246
147
188
160
149
223
184
192
214
205
191
211
195
171
208
177
230
213
176
188
200
195
229
220
255
206
217
161
188
226
156
222
164
131
195
212
241
159
205
171
206
233
195
186
226
228
251
189
208
243
193
177
201
165
191
178
222
172
181
228
223
185
279
226
217
228
209
141
243
146
249
158
229
183
193
212
156
247
237
176
199
214
260
145
169
200
170
261
141
158
171
138
226
209
165
164
180
155
199
148
234
241
200
240
138
190
247
228
230
216
230
159
215
167
142
250
154
177
208
191
227
185
218
188
259
229
248
260
197
224
207
211
219
173
204
240
178
223
139
146
199
201
152
239
223
157
165
227
208
169
229
217
189
172
235
170
225
189
203
158
227
213
213
199
123
261
232
212
204
216
193
124
199
240
209
246
124
242
154
203
220
163
189
178
182
234
170
239
209
139
197
193
219
158
211
211
223
207
203
183
230
206
225
208
221
120
179
206
212
261
217
178
217
193
198
230
240
162
181
198
181
152
177
169
161
200
167
227
203
178
192
186
178
215
206
168
159
204
180
215
209
247
117
227
227
191
255
206
235
166
89
250
217
207
216
202
154
202
232
180
226
182
193
147
209
171
197
208
161
217
187
186
202
168
233
205
232
234
192
173
228
194
211
139
214
246
226
199
182
205
148
206
235
239
137
191
196
168
131
196
221
219
177
229
231
226
128
151
223
164
194
184
186
172
147
237
200
179
122
197
179
167
198
223
212
175
261
184
208
257
128
250
176
212
210
211
208
149
254
190
183
160
213
207
157
225
180
130
203
175
209
228
217
240
198
236
214
246
179
173
212
211
178
216
167
213
249
257
225
241
170
211
180
210
173
219
219
222
174
210
176
145
142
208
229
222
227
180
271
241
186
206
199
196
210
149
145
208
219
179
196
137
214
257
163
195
227
207
127
193
236
157
220
203
208
261
165
191
184
235
194
206
184
186
230
172
213
190
256
168
159
221
230
295
116
235
185
183
168
197
195
148
190
163
229
214
136
258
131
192
247
197
200
159
190
191
133
159
235
249
189
177
216
168
214
227
190
178
161
260
224
243
191
200
224
225
179
210
131
271
254
163
182
136
143
162
170
224
275
212
191
168
254
193
223
215
264
237
219
242
234
107
239
162
231
211
197
199
228
218
242
211
233
204
180
212
194
224
272
254
199
169
266
125
229
218
182
143
203
252
236
213
198
236
170
195
216
204
147
201
241
166
251
209
197
176
260
230
180
213
201
210
193
197
225
217
221
157
207
176
131
220
193
163
165
210
164
153
218
228
163
193
198
183
236
130
216
212
220
193
210
201
183
199
180
202
206
207
216
204
210
185
127
181
231
222
132
249
205
195
205
230
206
159
192
217
207
176
137
158
182
177
159
233
190
169
224
198
281
210
198
203
128
211
213
231
217
199
250
179
195
247
221
189
168
128
189
227
171
191
248
222
185
210
259
179
188
207
189
215
241
193
235
174
198
229
200
208
201
181
182
162
189
242
218
204
200
218
199
215
232
178
211
185
193
278
209
144
179
195
186
170
228
219
166
172
252
174
194
245
230
185
162
222
192
198
220
268
218
204
235
232
176
280
213
212
176
228
208
246
214
241
202
213
170
186
250
241
186
204
214
213
186
240
269
278
226
182
205
246
203
233
257
236
201
148
227
194
182
192
243
179
200
174
171
220
188
214
253
255
215
142
174
213
197
244
255
172
260
216
253
190
197
201
189
237
188
187
257
224
216
167
197
189
181
211
159
210
252
195
255
190
203
195
221
169
207
134
178
248
228
190
192
238
181
185
198
222
167
220
235
234
175
208
171
184
207
197
252
235
202
199
160
178
178
202
198
219
236
174
201
219
198
220
231
194
227
202
166
223
203
252
225
220
187
214
159
170
200
75
180
191
193
195
232
184
120
226
201
201
216
197
180
205
220
169
226
186
206
257
190
202
241
245
163
219
208
250
220
177
211
166
264
196
159
227
239
184
149
222
150
213
241
186
256
192
219
186
229
199
248
227
179
212
189
204
156
151
210
225
258
204
225
175
153
191
214
182
205
155
257
201
221
250
249
184
235
190
187
227
186
134
203
230
193
162
210
223
192
166
184
232
181
205
227
205
221
203
200
228
239
147
233
224
190
187
198
222
197
208
241
219
207
241
222
217
207
194
115
233
252
226
201
228
195
134
232
176
149
190
225
192
141
188
176
198
150
123
196
164
192
215
205
260
204
190
186
236
188
196
206
184
235
206
201
214
217
170
212
228
171
185
161
174
203
136
239
193
226
194
220
247
187
170
167
260
215
185
159
152
251
134
231
235
235
166
245
234
215
228
220
209
216
205
225
267
254
263
198
172
201
194
221
247
202
222
174
217
225
236
211
200
240
267
224
216
180
121
205
200
171
147
206
215
195
181
237
230
260
161
196
142
239
173
197
225
227
199
172
203
180
247
226
192
260
194
187
188
174
211
209
184
156
218
182
277
116
199
205
182
246
212
146
164
165
215
216
211
211
213
239
176
231
164
236
268
168
233
201
196
208
170
231
220
213
223
112
226
172
144
238
149
227
137
244
214
237
178
198
252
167
228
238
222
250
152
209
148
212
206
146
193
260
239
184
213
212
215
234
214
173
203
230
203
216
217
180
223
214
175
223
225
204
181
159
214
191
201
221
205
153
181
245
210
222
231
213
142
215
235
191
170
194
224
168
206
238
206
184
179
175
198
166
225
132
255
160
269
150
214
149
205
191
139
231
220
223
222
234
215
236
202
223
114
223
222
215
185
199
160
182
159
201
171
190
198
190
199
186
150
192
203
165
159
254
162
193
167
269
214
233
218
181
239
168
200
190
173
250
242
202
240
235
248
201
194
209
211
177
218
185
216
153
200
194
209
206
186
198
200
196
236
95
189
211
171
226
176
206
195
220
240
222
237
200
183
208
149
196
207
219
211
200
175
201
195
173
248
239
194
194
225
232
218
216
213
141
209
150
161
182
165
240
182
243
179
222
193
188
151
196
182
242
220
204
207
175
219
210
232
217
198
143
204
172
213
188
235
247
259
184
189
225
136
187
222
214
169
161
198
179
183
180
105
177
197
180
193
210
157
200
226
240
193
216
216
246
188
167
207
279
222
220
172
230
270
214
265
179
235
214
159
155
195
219
210
192
254
115
235
170
183
187
192
182
110
182
185
184
200
110
211
204
262
185
223
175
251
196
242
185
199
192
212
238
211
272
195
173
250
221
170
243
226
215
177
189
164
258
215
221
241
262
188
159
177
212
220
184
237
196
249
262
211
249
157
175
233
197
199
170
179
179
205
202
218
211
134
184
216
196
256
200
200
251
183
221
222
191
191
248
157
158
234
241
174
204
278
224
167
203
237
243
230
160
187
217
193
180
161
161
147
213
150
187
189
215
237
202
241
219
226
209
209
187
147
229
237
225
126
223
194
197
219
142
197
231
197
253
274
209
182
196
226
154
259
199
193
189
221
172
221
219
177
243
228
166
161
196
245
230
182
179
231
153
244
233
240
170
191
191
277
196
201
199
239
215
185
206
202
196
205
186
241
192
156
203
166
166
210
180
197
169
177
191
212
254
169
174
218
211
206
177
214
204
239
271
224
226
189
181
157
144
133
107
150
251
199
234
154
208
226
133
145
204
194
163
255
160
238
239
242
171
215
252
195
225
213
213
197
212
191
164
185
215
221
219
209
141
212
216
184
219
218
295
220
277
215
170
229
189
154
236
193
238
195
238
218
154
235
158
233
173
211
206
214
163
189
205
221
255
205
207
208
191
218
226
246
213
154
174
264
209
209
203
189
191
159
186
220
231
248
217
256
173
202
266
176
243
238
207
146
182
146
194
198
246
173
188
224
234
174
213
188
201
155
216
172
202
258
200
244
242
182
233
187
172
206
180
211
165
197
229
262
187
132
171
155
221
236
205
146
199
153
217
232
219
202
190
173
132
192
171
218
191
247
211
157
218
165
182
161
217
228
245
252
209
188
270
235
190
173
198
183
160
175
239
127
203
238
264
222
152
237
162
252
190
227
226
231
195
171
219
242
218
176
174
224
144
193
201
188
215
211
210
216
185
200
220
185
244
230
199
217
200
153
205
207
210
222
197
192
206
248
229
227
212
201
240
166
192
134
217
232
157
230
165
203
226
184
183
168
182
192
161
208
207
162
206
231
269
203
199
187
230
206
209
190
233
208
184
270
192
209
240
217
145
150
192
220
200
177
202
173
199
223
179
164
237
232
238
179
223
220
205
229
215
174
187
228
190
162
187
214
171
165
212
228
146
197
245
158
183
209
170
233
235
282
148
230
203
236
176
204
176
174
284
247
218
148
240
158
163
131
232
217
201
222
148
242
152
176
183
235
155
190
193
147
250
216
205
194
224
189
179
275
191
196
224
191
183
143
167
152
211
222
224
193
206
199
198
131
222
197
180
240
171
199
209
139
188
230
140
233
188
189
210
200
216
146
248
148
209
182
158
252
207
204
206
208
187
177
238
190
202
189
173
218
197
121
229
192
135
179
252
104
218
231
144
166
215
211
210
225
208
206
199
263
201
213
153
143
215
216
216
168
232
229
277
143
185
239
270
246
187
155
157
215
233
205
211
227
192
187
196
192
215
155
133
256
212
257
199
111
196
193
217
166
204
196
215
215
209
179
215
195
207
210
246
204
258
272
193
195
278
171
152
180
161
213
201
213
210
233
231
151
165
170
198
219
181
181
181
212
168
175
202
145
185
209
121
231
237
182
189
196
234
203
241
160
224
205
217
215
142
189
145
176
157
216
184
199
216
164
271
236
204
180
215
179
192
170
206
186
190
272
158
207
215
153
249
193
182
200
144
221
216
231
214
143
174
207
221
176
213
213
264
217
139
199
257
222
196
209
190
172
245
183
206
143
188
241
294
201
163
172
224
268
150
206
201
255
158
117
166
173
155
234
237
160
167
179
190
208
187
213
192
199
172
166
206
242
231
171
185
200
204
258
187
233
176
190
226
189
147
215
187
214
137
224
244
224
189
259
207
178
244
230
212
189
203
179
231
228
235
176
256
181
184
245
264
190
181
188
210
246
201
212
188
205
201
221
217
131
140
205
186
243
179
151
200
217
193
170
209
201
213
151
167
231
206
204
198
253
242
187
177
109
199
151
206
223
134
174
224
212
173
186
211
239
199
157
209
168
219
165
266
205
212
214
236
181
222
161
225
217
174
204
194
200
244
172
239
188
246
172
226
182
210
162
255
253
179
168
149
252
240
194
217
226
173
193
235
137
232
223
178
215
216
213
173
233
112
227
214
222
206
261
194
243
178
236
196
191
187
223
206
181
230
204
187
230
168
183
226
240
247
156
189
244
181
230
187
209
212
189
179
210
241
197
144
208
115
248
214
165
119
199
183
208
210
197
125
168
160
164
215
195
214
204
189
271
234
219
187
215
238
166
228
223
182
214
152
170
177
238
171
222
126
196
274
254
253
247
162
207
212
250
158
189
226
230
147
206
282
177
204
167
207
250
179
171
193
215
154
169
195
232
203
180
226
253
225
238
211
226
165
174
135
197
177
260
214
183
202
209
159
235
173
203
207
241
221
174
240
178
213
238
187
210
258
279
210
265
176
198
204
233
178
229
233
137
146
220
195
187
185
244
195
177
206
220
234
221
211
229
212
243
165
214
182
246
233
203
261
246
219
172
270
196
221
156
242
206
202
199
213
149
227
221
205
192
178
182
144
246
199
160
149
198
238
166
215
272
237
214
204
163
201
183
219
178
265
239
213
237
176
203
193
180
157
134
188
265
216
207
179
195
270
207
187
217
156
216
195
153
239
217
227
207
185
220
233
173
133
233
205
208
180
221
266
246
173
169
146
193
206
200
185
167
161
138
243
171
213
127
202
221
224
230
219
239
241
201
117
205
164
161
186
206
190
243
193
210
207
156
185
204
197
175
137
221
230
156
236
211
179
229
163
243
135
203
237
198
196
191
157
226
209
201
158
196
238
197
215
236
177
190
192
152
198
182
218
193
149
229
237
153
242
227
236
133
204
263
191
192
266
209
191
150
200
227
157
198
250
206
225
247
221
252
213
206
264
239
213
193
137
205
168
204
166
204
223
201
198
190
217
201
198
197
142
193
215
145
176
191
231
236
235
167
197
192
197
223
133
227
217
178
185
199
205
227
173
210
188
175
174
200
179
129
181
183
254
237
163
142
213
241
199
143
178
209
162
247
183
181
235
216
150
124
242
189
231
183
189
214
178
241
204
160
223
250
205
211
217
191
203
175
165
199
169
246
201
209
239
204
204
147
164
245
196
198
197
232
188
263
139
154
131
153
256
264
141
183
196
248
205
160
230
181
206
175
115
200
214
143
174
197
236
194
255
192
212
187
233
182
224
179
174
241
208
188
178
225
204
276
166
171
224
124
220
230
140
253
179
141
171
206
136
196
243
191
184
242
210
213
235
189
216
179
122
180
171
174
198
162
234
191
217
218
179
215
235
186
149
187
159
245
219
238
200
149
242
202
228
246
178
157
257
167
239
153
193
260
228
235
178
177
166
227
236
202
283
142
188
186
211
225
174
192
198
256
263
218
174
196
184
203
208
232
185
203
226
217
251
242
156
150
258
230
200
205
181
239
178
202
227
209
240
227
234
212
174
192
181
215
211
185
237
193
174
186
216
187
225
182
253
272
222
223
280
188
166
191
126
199
235
219
197
244
207
199
195
197
221
161
239
209
185
261
261
178
182
179
270
223
154
234
165
225
127
142
130
211
177
211
250
238
200
212
178
189
212
184
190
161
236
177
189
164
240
241
219
239
206
203
193
241
172
207
188
173
241
157
215
169
195
241
221
168
220
165
180
178
243
234
180
203
167
148
185
160
166
215
139
227
210
114
298
160
203
183
233
223
204
192
216
226
169
241
172
266
157
227
137
203
254
220
165
260
238
186
153
201
172
131
157
205
195
150
172
212
205
195
245
178
130
154
225
188
268
204
260
181
184
197
245
188
237
220
228
176
201
229
183
211
197
179
177
218
190
268
195
211
236
177
191
267
213
207
225
236
231
154
175
206
156
197
167
156
176
192
180
205
251
210
219
203
190
209
211
143
177
173
201
181
127
285
196
180
218
165
196
200
216
167
158
219
242
206
223
197
292
186
216
209
201
185
201
164
159
213
196
220
217
170
177
215
195
242
221
227
267
261
165
220
185
207
162
189
239
194
190
132
160
192
153
174
185
177
220
200
170
143
96
200
187
156
196
229
261
225
232
113
152
205
176
260
220
245
232
162
255
202
200
247
197
186
237
194
270
242
206
254
166
184
160
170
254
238
139
158
142
173
185
208
178
188
126
213
156
178
250
189
162
183
186
227
216
249
203
204
158
233
268
149
204
187
215
236
206
240
197
218
264
190
210
138
168
162
204
180
239
165
158
194
186
224
162
189
207
213
202
171
271
152
235
227
192
139
206
165
213
197
209
227
211
259
243
267
202
177
229
175
200
181
197
234
208
190
242
230
218
190
163
204
222
190
212
242
231
205
254
155
231
161
154
230
212
174
176
211
231
181
168
206
249
204
162
209
168
162
170
159
175
213
221
217
246
177
198
181
149
236
210
226
143
186
220
192
183
195
190
222
216
197
205
182
156
259
183
183
255
233
175
168
241
175
231
197
249
160
179
265
231
220
224
235
180
221
199
219
232
198
203
255
261
205
186
227
195
180
174
249
229
161
246
169
132
195
197
178
208
152
164
204
271
166
160
273
228
166
181
260
216
197
197
283
174
230
194
233
228
214
199
194
137
215
190
190
209
198
246
167
185
207
199
192
184
284
172
209
176
187
224
213
196
197
240
200
252
203
253
219
207
190
222
206
150
203
231
198
181
172
168
178
194
176
224
187
243
200
222
132
254
178
161
187
217
176
166
190
204
195
169
212
206
123
224
220
219
190
198
152
228
224
190
171
186
163
192
147
180
185
265
165
234
197
232
204
240
212
203
245
237
224
212
179
198
250
215
223
199
174
213
251
209
214
226
261
272
123
211
206
179
276
220
250
220
228
227
230
184
209
253
246
224
225
203
156
149
184
172
173
154
151
163
227
143
243
117
201
174
209
141
172
258
251
182
241
211
186
229
233
146
246
225
175
253
256
145
170
202
197
278
185
139
257
205
221
278
215
200
208
141
301
228
181
176
226
214
169
230
222
177
140
191
150
183
190
217
242
261
246
173
138
211
221
210
174
160
201
172
216
223
209
151
118
165
163
163
239
105
196
246
177
209
192
181
218
233
111
203
191
134
170
169
206
209
208
182
217
207
145
199
160
221
206
191
235
196
211
212
196
140
120
207
204
184
216
212
188
188
203
178
240
213
204
187
200
214
206
190
224
239
233
211
241
170
208
163
226
206
254
188
228
273
180
190
241
208
235
240
206
164
194
194
202
193
165
186
159
185
174
252
142
155
259
185
164
201
216
244
229
177
125
209
157
235
172
209
166
235
240
238
220
222
170
174
177
223
228
202
239
225
172
227
162
135
224
204
244
170
179
212
177
105
167
255
188
181
203
192
155
187
170
216
203
194
196
164
201
193
257
235
211
175
224
171
239
184
236
179
209
235
179
191
199
273
233
186
188
242
238
162
194
158
161
181
159
187
219
235
216
210
232
200
276
208
168
178
221
219
266
245
219
169
223
148
230
209
176
247
251
179
210
166
204
190
207
267
220
173
219
195
208
168
140
196
196
185
195
206
232
200
183
172
270
194
231
195
230
193
191
181
202
250
253
213
109
185
213
211
229
213
164
208
223
241
209
259
131
230
240
143
151
141
202
196
195
217
209
193
200
164
179
216
232
183
180
191
168
131
183
226
215
204
147
228
135
206
196
244
138
182
206
151
195
211
177
209
218
168
266
232
198
140
231
181
280
199
221
176
223
193
204
210
175
211
236
220
204
223
135
158
225
220
168
201
205
257
213
204
168
237
222
170
193
165
230
216
203
206
167
157
235
203
171
258
170
188
215
225
168
221
178
195
176
224
178
188
206
219
230
283
178
135
251
181
191
190
174
144
247
179
240
173
217
202
238
186
228
171
240
162
200
227
197
170
219
265
143
162
224
252
215
221
192
171
140
176
165
217
200
249
181
192
193
223
188
208
180
173
215
181
190
219
182
117
218
161
211
145
230
242
234
190
171
208
215
196
195
227
162
203
153
247
192
175
119
177
225
186
193
139
180
176
168
147
182
229
133
238
237
167
183
232
244
259
259
245
186
166
239
236
194
185
257
120
194
142
265
203
197
214
227
227
199
245
217
187
262
182
190
168
195
203
178
178
155
202
145
235
227
165
123
220
197
194
155
156
219
220
119
228
220
239
135
240
187
227
161
204
210
180
201
241
227
161
158
236
175
174
249
192
142
249
225
269
246
196
230
211
222
200
187
169
226
254
189
191
184
262
222
199
231
169
220
173
115
156
200
139
118
183
190
179
145
192
211
148
186
146
235
230
213
237
164
172
110
228
183
235
199
190
200
270
203
167
177
180
175
169
240
206
233
178
238
241
198
253
166
223
195
226
174
201
189
163
192
212
239
187
162
141
168
160
192
184
228
222
134
227
197
140
213
193
150
151
231
190
199
198
138
177
154
138
263
136
131
262
212
187
191
150
178
170
202
152
229
180
213
204
226
190
180
177
171
255
229
205
203
140
202
200
165
161
215
127
280
255
167
142
239
206
242
185
182
211
211
251
149
126
188
258
159
136
208
272
137
204
167
155
140
216
274
245
186
238
219
205
196
231
171
230
202
206
134
253
175
226
194
159
205
231
183
165
182
215
207
209
215
228
203
226
219
199
205
98
233
242
183
233
220
228
155
254
204
211
170
264
132
261
183
208
182
223
195
219
231
185
144
135
275
159
232
190
196
181
184
138
282
233
224
210
185
200
229
133
195
217
220
188
245
155
182
179
187
280
207
144
227
204
185
235
180
221
260
172
210
115
122
245
209
199
235
206
213
234
255
159
229
189
178
107
180
155
168
244
194
157
176
190
224
185
216
212
181
197
186
160
197
174
177
223
229
224
203
169
214
218
149
222
167
248
248
243
229
233
198
190
230
239
206
270
175
202
239
194
202
226
225
171
229
237
182
223
236
225
222
209
239
201
156
219
225
213
197
174
196
207
169
196
137
175
185
151
200
243
160
198
188
175
182
241
205
216
201
234
165
213
193
209
169
242
282
226
121
226
239
200
225
167
302
258
173
207
183
243
177
157
212
180
172
210
173
206
269
197
199
267
217
245
236
251
236
173
206
175
249
212
170
181
203
213
201
238
217
230
230
180
168
194
208
203
195
196
147
223
228
240
227
219
194
146
191
231
196
254
222
161
203
208
182
180
214
172
183
194
211
265
146
230
206
128
144
228
257
200
173
220
216
203
268
205
210
179
118
211
212
239
211
138
202
165
181
196
190
135
160
216
254
223
202
203
162
165
217
216
187
172
223
222
231
210
202
265
238
247
227
221
203
174
197
180
186
117
219
196
171
206
193
227
227
228
205
167
194
215
143
212
162
161
133
165
233
265
189
219
189
243
180
161
273
271
238
242
210
196
181
232
188
215
156
223
140
231
219
225
275
217
250
191
229
236
197
195
204
202
212
227
158
174
205
215
171
197
143
220
226
215
188
131
242
210
224
219
188
143
224
182
196
277
241
166
169
158
160
166
185
181
278
174
167
184
223
212
202
186
186
210
199
212
226
211
185
230
236
161
220
189
98
194
230
154
143
181
199
186
183
200
169
167
136
209
187
205
120
245
116
152
197
141
205
170
176
213
168
213
207
230
209
197
209
230
206
269
186
179
180
200
239
155
208
209
167
186
189
157
181
241
237
218
168
238
169
147
210
193
168
258
250
217
209
245
241
244
204
215
233
218
205
207
212
191
160
164
211
232
170
225
186
197
204
192
157
202
146
134
230
202
226
191
204
116
206
236
106
183
167
167
170
253
176
209
147
201
200
259
219
199
202
186
187
181
228
183
216
243
201
217
195
189
200
167
152
173
208
241
203
207
168
224
178
256
229
205
203
176
224
185
232
172
208
212
219
98
145
237
191
208
274
173
217
179
108
165
122
204
193
158
246
200
231
223
216
213
194
217
220
262
196
202
220
133
246
246
194
188
181
190
196
230
191
231
225
187
197
133
165
248
193
170
200
197
244
263
240
214
210
151
198
251
184
163
215
231
156
227
207
161
194
190
184
155
171
134
239
215
217
207
225
236
202
180
119
203
212
223
211
184
209
163
162
200
213
187
241
194
185
218
189
240
115
175
234
151
148
225
229
203
241
188
179
212
182
219
172
141
236
179
199
208
237
225
228
213
168
205
251
229
226
144
196
208
201
222
208
208
179
203
160
212
159
162
185
192
187
174
235
220
151
189
208
195
174
190
176
211
219
192
197
183
218
214
222
240
194
163
180
198
189
200
171
176
173
150
172
240
197
174
172
117
143
236
230
181
219
197
241
183
139
180
257
163
149
161
133
187
198
269
181
197
165
268
175
183
258
207
188
190
165
206
220
252
154
216
243
168
213
257
275
166
217
229
184
190
217
136
159
207
189
168
250
194
231
138
164
198
230
213
230
188
183
225
208
227
145
157
231
181
248
177
220
199
205
219
204
218
236
145
218
230
235
212
224
176
208
231
243
187
177
219
210
269
243
237
219
198
156
164
219
154
184
230
222
197
201
232
241
116
170
249
222
164
157
235
195
252
155
169
225
245
125
212
236
230
185
210
159
188
203
219
162
205
186
163
174
152
216
136
224
227
208
219
199
201
195
202
181
193
235
179
233
196
172
165
210
254
231
175
191
167
202
201
187
236
202
241
176
186
255
137
244
188
180
93
199
218
221
183
251
229
155
256
235
217
238
226
145
154
214
228
218
187
199
164
213
194
205
163
239
292
245
158
173
162
190
215
247
207
208
208
178
195
205
160
198
204
191
216
165
221
232
138
205
194
173
153
238
178
212
207
239
218
228
145
197
209
151
250
245
226
169
175
194
176
200
202
190
174
209
287
193
233
219
212
170
179
220
179
220
255
239
166
164
245
162
151
215
226
218
159
168
181
207
210
253
208
192
216
158
215
181
177
209
198
157
226
152
270
210
175
183
256
218
182
246
151
175
252
205
247
185
177
199
223
214
205
194
214
196
274
270
234
244
172
205
181
248
178
216
160
265
230
137
138
170
210
157
198
268
222
166
223
259
211
182
161
214
220
205
217
211
176
244
192
264
257
213
196
217
223
220
241
224
152
219
193
226
218
198
209
161
210
174
211
239
155
161
257
177
213
230
250
219
99
144
153
160
252
150
187
180
221
204
145
211
204
185
186
203
200
204
170
220
241
223
182
206
223
179
215
217
232
139
235
159
243
212
254
193
181
222
191
231
195
175
218
174
231
184
230
187
160
233
148
160
232
182
226
175
180
201
245
207
234
171
181
204
211
198
229
239
226
232
175
176
225
187
284
158
235
212
218
261
218
164
231
217
252
257
249
135
163
198
232
174
212
171
119
230
138
209
150
197
224
251
212
153
166
203
191
149
199
178
232
201
251
214
176
128
186
205
166
220
210
163
188
176
264
188
207
229
197
190
176
175
158
199
218
209
174
235
197
211
184
191
226
215
206
224
229
213
211
256
167
179
193
218
233
212
189
214
120
179
155
215
213
221
155
206
147
188
206
228
228
215
250
172
188
172
242
232
217
189
169
174
188
150
152
224
235
145
200
256
233
199
204
250
215
145
216
143
220
162
145
201
206
225
214
229
239
191
189
184
201
222
213
233
154
180
220
157
198
211
263
211
247
217
198
173
203
240
228
170
229
155
196
186
160
207
220
204
252
191
193
224
239
173
169
148
202
214
169
274
290
198
149
227
169
180
216
227
188
227
219
219
212
234
178
142
205
225
211
189
232
254
164
189
162
239
248
197
176
285
220
180
188
242
253
220
167
219
207
218
171
208
188
180
241
248
95
245
223
243
245
224
200
175
213
128
109
171
176
221
233
167
148
212
230
191
222
237
191
208
185
253
187
177
241
192
167
215
139
168
195
229
177
183
222
160
160
199
233
204
151
260
231
112
167
211
253
221
229
234
252
131
176
184
201
215
203
201
162
189
203
136
237
179
137
226
190
225
173
221
190
154
158
128
154
225
216
183
171
183
223
218
207
206
134
218
157
215
215
216
121
223
304
243
174
202
243
204
251
201
227
176
216
175
211
235
253
180
190
259
195
292
228
214
174
199
254
276
252
201
140
273
190
214
171
230
219
149
221
252
220
101
195
225
203
235
200
248
212
220
186
203
226
203
266
161
168
157
183
233
226
137
201
217
177
200
162
249
107
238
141
167
214
224
242
236
210
211
191
130
202
204
173
177
188
179
246
230
171
211
185
190
172
235
231
237
158
179
214
180
232
151
208
191
189
221
240
154
210
156
150
197
232
200
182
186
290
172
230
214
217
206
187
208
224
141
168
148
142
170
189
184
181
259
217
210
194
186
232
237
272
184
185
180
205
194
190
142
238
236
209
150
215
193
194
249
223
161
215
223
216
185
143
165
250
207
214
216
163
163
222
228
225
142
184
134
175
179
210
186
249
249
216
155
212
202
166
203
174
164
222
220
188
217
257
205
192
213
175
200
258
181
205
195
180
209
214
190
234
203
205
229
263
168
209
198
221
202
192
200
213
169
230
231
159
204
239
165
232
231
218
174
162
170
129
201
240
202
151
128
189
130
192
184
258
248
179
239
248
166
194
222
214
231
149
239
208
199
158
252
175
190
175
151
228
154
208
213
216
159
198
229
184
226
187
213
198
218
140
202
159
267
160
139
184
185
277
137
201
180
162
215
223
242
216
208
199
193
160
180
170
210
216
173
226
203
235
209
175
167
269
212
250
196
223
180
257
223
260
190
200
149
161
190
211
170
161
206
233
155
225
156
208
191
239
223
180
171
206
228
205
183
186
217
184
163
211
226
190
172
204
202
237
189
214
217
218
276
213
163
232
151
137
197
215
177
175
213
204
148
178
214
212
182
147
149
214
202
206
196
151
138
166
242
207
197
147
229
170
140
217
146
199
220
165
205
269
193
185
207
239
168
226
263
191
238
210
143
236
227
244
173
133
171
236
278
199
195
182
168
249
245
208
165
163
207
202
228
180
207
220
231
282
239
173
251
239
183
196
190
205
237
156
265
214
195
195
230
215
284
217
242
182
165
164
232
215
116
221
284
182
203
252
200
194
142
166
160
215
145
223
213
198
178
208
242
227
205
231
223
173
196
186
188
256
226
234
205
193
148
193
214
214
230
228
147
203
230
246
152
234
188
185
229
223
199
211
181
202
195
166
221
228
247
228
168
230
215
184
162
158
170
220
158
162
207
232
193
189
226
204
194
188
213
180
242
197
235
239
191
206
199
168
182
178
171
242
274
204
78
223
237
196
155
220
238
216
249
210
250
187
240
151
185
263
239
284
180
243
220
219
218
170
174
252
171
197
192
201
245
206
235
220
244
197
240
230
185
215
231
220
197
199
233
180
202
171
131
254
190
236
189
208
190
235
218
153
224
210
261
236
229
157
244
242
217
250
253
186
206
194
203
148
213
122
268
211
174
168
220
250
195
165
157
168
230
228
238
246
196
167
215
165
181
194
149
252
198
208
186
210
265
148
169
156
163
213
208
218
222
258
151
195
212
156
209
246
171
172
157
253
219
249
218
185
161
252
113
151
201
155
205
231
201
156
224
197
225
216
247
253
205
218
184
161
136
201
153
209
138
186
243
202
182
158
211
255
250
210
267
163
189
147
252
201
185
186
221
221
204
153
245
194
186
190
219
221
192
118
203
197
163
197
178
133
142
197
218
169
238
199
174
242
207
193
233
165
230
188
125
136
166
195
163
192
162
198
211
212
161
240
278
175
217
183
190
228
224
261
214
200
210
272
187
204
217
143
211
216
229
142
193
183
197
207
155
230
263
113
250
172
145
234
258
162
140
279
272
252
201
212
195
237
211
197
184
201
129
169
229
229
195
249
247
218
176
153
209
230
211
248
204
186
196
186
225
127
155
269
203
220
158
169
194
195
181
133
174
165
179
191
201
221
201
219
138
175
202
157
174
165
177
222
207
184
189
224
162
166
171
260
254
199
208
191
247
183
211
144
213
153
181
230
185
256
253
169
226
123
141
186
181
197
251
183
197
186
215
207
257
140
200
224
169
187
175
210
190
181
204
210
163
245
200
153
215
171
224
201
200
194
124
128
257
220
253
152
241
206
182
237
232
223
214
139
199
231
160
244
169
270
207
230
236
206
208
208
234
189
210
186
245
186
211
227
216
145
215
185
192
160
229
219
171
252
222
199
193
123
155
207
175
203
279
182
215
217
178
95
211
214
168
204
203
225
212
179
206
173
186
222
214
161
199
229
209
234
211
234
192
193
201
207
173
190
194
207
211
208
162
195
242
201
227
255
169
125
169
254
215
160
216
272
208
160
192
162
186
250
172
135
191
188
176
235
216
220
231
186
152
208
185
169
163
178
191
201
279
215
204
201
228
221
186
161
207
213
220
163
227
225
180
188
226
235
205
187
238
204
182
256
248
167
215
165
269
255
183
147
219
150
233
214
174
209
130
189
205
162
153
205
213
191
286
162
196
204
213
147
158
294
203
255
205
173
220
208
278
168
246
206
206
189
213
271
205
160
210
194
257
184
187
253
199
203
159
204
206
211
147
227
213
229
229
233
198
201
195
219
216
195
140
144
146
234
218
188
200
209
214
153
199
219
218
182
213
218
222
152
129
225
229
270
219
178
207
240
157
181
219
171
185
169
217
236
191
270
167
258
158
172
215
189
189
233
184
189
196
159
239
189
213
143
197
213
203
272
262
195
183
205
184
182
284
167
121
141
232
203
126
214
201
243
167
139
250
234
165
205
241
237
150
259
237
238
180
224
160
210
199
209
208
247
230
179
228
246
139
170
241
164
249
135
134
209
231
188
178
220
173
166
212
171
184
196
137
204
258
226
130
154
300
178
224
193
216
209
236
239
176
270
245
148
209
212
179
174
254
213
255
182
165
165
197
234
175
224
249
186
199
264
228
169
221
187
191
200
220
200
162
237
199
240
201
188
167
183
229
227
217
231
194
192
204
217
211
232
207
235
219
216
243
207
203
189
173
168
223
255
136
225
190
135
221
153
209
193
185
165
152
165
269
294
160
151
151
241
230
190
133
215
166
180
199
267
228
205
200
231
213
180
155
159
146
145
213
218
232
166
239
181
157
216
232
225
243
201
179
154
187
203
253
233
160
152
186
216
189
189
244
187
200
195
171
219
208
230
295
233
147
192
250
197
158
180
165
243
191
172
174
171
199
132
244
224
204
239
169
234
187
146
201
192
216
230
230
180
146
217
202
141
247
206
193
214
223
192
180
208
158
209
155
256
213
192
250
169
212
250
207
190
187
135
188
181
185
199
119
204
254
214
211
178
124
225
188
210
194
169
169
177
187
183
167
249
205
151
221
234
226
197
221
201
196
177
201
259
264
249
220
181
233
267
214
212
272
232
245
252
193
209
188
169
158
228
202
241
215
248
181
170
205
162
198
196
135
222
185
212
209
230
222
171
210
163
188
206
258
218
207
225
236
226
247
267
163
217
239
223
140
190
168
246
133
236
210
158
213
223
243
167
210
226
187
215
209
154
193
188
187
181
213
166
226
155
172
163
237
118
208
256
197
183
203
220
180
164
179
207
244
131
198
170
282
182
227
204
168
204
240
175
242
254
250
161
160
202
231
178
196
217
256
208
210
273
167
218
156
229
163
169
230
176
215
225
183
185
263
256
172
239
174
247
206
210
194
213
229
166
235
210
244
217
175
181
199
178
178
201
241
196
213
76
162
182
222
200
174
242
169
148
220
175
201
206
183
201
228
208
148
143
250
157
100
131
116
187
192
131
186
199
180
180
228
209
200
226
256
251
180
177
190
210
237
230
211
142
211
215
211
226
179
174
187
201
190
150
115
230
217
209
180
227
252
248
208
195
196
198
248
175
251
205
171
107
254
196
150
127
206
223
185
224
167
212
204
233
216
141
230
229
215
217
219
157
216
230
215
209
187
161
205
195
226
167
217
233
89
164
221
184
235
227
218
206
255
223
155
225
196
177
185
211
209
264
210
239
253
228
191
129
191
192
208
167
194
228
178
181
250
154
180
181
246
225
242
173
174
209
221
190
180
242
184
218
164
195
180
241
134
189
206
207
232
212
177
194
198
190
153
249
155
181
207
179
186
202
198
154
206
204
253
205
187
208
207
178
226
251
206
168
210
124
215
268
208
216
261
202
158
213
227
171
221
234
242
200
232
195
178
260
217
234
205
259
231
202
138
204
235
171
205
168
253
163
146
232
221
205
151
187
164
251
245
142
270
172
220
216
206
198
212
192
229
182
160
186
161
187
238
190
234
246
190
218
242
198
208
210
177
194
200
143
191
199
269
207
232
167
213
227
176
272
239
159
244
226
204
141
188
205
185
132
176
139
213
180
182
154
243
216
221
229
175
232
248
179
187
164
185
218
214
150
249
201
207
217
139
220
215
195
231
202
220
176
244
238
132
183
217
142
164
227
238
164
225
174
165
105
224
200
201
234
157
182
188
177
218
179
266
204
176
175
175
244
186
151
199
249
189
158
232
166
208
199
225
207
140
238
192
185
246
182
111
265
209
152
199
197
284
190
184
154
195
127
194
212
208
235
166
203
197
225
202
184
205
163
196
176
200
153
226
181
198
176
213
216
224
217
165
182
215
209
207
197
175
173
162
218
144
178
257
208
203
214
241
207
217
209
229
223
138
231
195
224
251
175
199
217
208
219
268
203
213
181
223
242
187
208
108
243
232
242
207
174
223
235
195
123
196
208
193
249
210
179
201
211
178
209
273
201
143
216
177
221
231
259
169
233
270
226
168
177
193
142
150
227
151
180
176
199
160
245
248
193
151
158
218
203
185
201
206
249
185
210
222
149
231
167
195
128
199
201
164
204
166
244
181
235
223
180
178
231
161
160
189
214
244
219
198
194
152
210
167
192
180
201
210
159
178
192
134
236
242
182
177
185
141
158
211
236
215
172
179
235
187
242
220
193
216
230
233
247
207
261
181
190
188
178
194
217
157
275
220
255
156
226
167
176
231
205
216
151
217
235
213
193
242
191
219
120
181
189
220
181
238
261
195
225
250
182
192
187
162
210
134
240
256
164
176
184
213
210
179
198
272
239
177
201
217
159
156
194
215
214
177
179
240
281
172
158
156
177
128
167
227
204
226
242
177
219
243
180
154
179
218
213
210
258
147
176
260
191
197
202
183
209
213
237
227
268
184
163
204
187
174
226
198
146
167
179
222
256
191
152
203
257
151
214
173
239
203
185
164
155
189
205
264
153
186
186
196
192
215
159
194
193
219
174
244
193
192
178
253
151
181
185
178
216
203
173
207
247
261
191
216
263
154
246
175
185
140
206
130
242
187
187
204
224
233
195
210
133
186
172
204
181
197
156
227
180
228
222
226
219
184
158
168
161
228
220
224
218
242
207
135
164
183
197
234
199
214
246
226
177
180
167
224
237
244
175
259
238
206
220
147
209
177
179
205
162
228
223
156
154
210
210
240
254
232
197
205
214
218
195
209
220
169
224
271
212
199
135
220
217
223
168
191
209
192
137
259
183
234
193
239
202
255
204
175
201
211
209
187
206
177
185
220
236
167
204
165
202
179
186
189
229
150
233
221
219
175
201
261
262
308
170
130
200
255
218
184
245
211
246
159
216
189
178
229
234
163
192
151
204
250
157
231
179
193
217
218
142
169
192
185
223
178
264
137
211
205
220
242
221
165
235
254
237
234
240
228
220
172
179
184
154
181
247
175
213
217
253
244
226
218
168
172
192
188
189
272
210
175
190
213
186
162
193
180
179
147
188
256
187
153
185
185
175
214
233
181
231
200
170
211
182
245
241
175
138
173
223
165
183
161
219
246
183
225
143
178
155
174
183
256
180
260
183
250
247
196
194
179
224
265
233
142
202
193
203
276
165
223
167
153
234
249
252
220
110
159
248
138
121
178
188
172
222
216
201
169
189
175
239
272
187
190
214
213
116
168
220
207
166
213
225
223
222
189
144
223
219
191
190
116
133
182
214
184
181
185
207
181
229
200
204
167
185
220
244
227
161
183
218
239
168
273
200
221
174
186
211
274
231
246
225
240
222
198
154
230
229
155
158
128
195
195
241
204
220
217
204
151
204
193
194
227
215
244
195
236
209
186
180
192
218
190
221
168
198
183
210
243
181
152
232
158
143
189
226
226
174
156
218
224
246
163
149
233
257
188
244
181
197
249
228
181
236
134
199
160
155
257
220
189
170
231
234
166
177
188
176
235
188
196
235
139
185
176
157
254
203
187
223
196
176
190
262
222
217
193
203
259
217
167
233
192
228
201
257
227
155
252
185
199
200
148
153
177
179
208
258
171
219
187
151
212
164
238
205
168
212
200
256
172
259
198
241
175
168
181
150
193
229
161
141
237
199
198
223
231
149
154
214
187
210
235
204
181
191
187
218
204
183
213
249
161
245
218
187
179
171
211
204
171
160
129
199
191
198
193
216
194
242
208
194
178
224
175
248
171
164
122
195
210
183
199
209
174
189
255
199
168
216
161
211
239
123
211
179
186
203
219
164
225
165
137
242
217
152
218
208
172
263
229
248
203
241
190
160
201
193
242
238
229
177
226
214
181
159
254
195
226
192
171
177
260
258
203
194
261
195
245
224
198
228
204
203
247
219
170
147
176
187
219
200
223
199
237
179
217
180
203
225
139
219
155
191
237
214
176
204
241
233
173
95
190
164
244
200
148
255
118
221
226
195
267
215
224
247
218
162
150
195
230
168
211
227
266
159
227
198
264
236
206
230
207
150
229
267
170
204
198
214
195
241
214
204
130
226
209
251
230
170
239
197
216
224
161
241
210
160
163
230
212
187
216
188
201
100
129
210
263
240
159
248
231
169
260
198
158
199
227
268
191
221
207
205
167
252
158
236
216
202
142
252
233
229
179
148
226
163
256
227
182
184
219
224
225
184
136
209
171
198
185
233
186
214
196
179
123
232
184
205
140
225
284
154
236
196
228
248
223
169
187
204
204
162
167
149
158
282
164
221
176
191
143
233
204
211
162
178
198
216
166
131
219
147
169
230
247
181
219
178
218
216
194
226
163
232
196
222
200
136
112
207
165
233
145
186
170
235
181
228
202
171
246
210
235
253
273
198
265
238
258
264
202
127
143
227
174
193
207
215
237
193
221
185
243
162
193
145
150
203
187
142
209
207
203
144
144
241
213
150
215
264
169
189
251
171
155
116
211
200
217
221
193
189
189
181
191
238
193
182
224
224
158
161
224
290
175
192
215
183
253
209
189
162
171
206
230
169
150
163
237
255
199
210
195
190
223
228
177
206
159
272
196
200
144
219
215
153
143
220
199
218
215
200
204
240
213
205
239
178
206
219
182
125
203
184
203
136
201
188
222
207
183
246
194
225
202
227
225
209
220
222
220
143
161
221
212
186
178
206
229
133
111
253
203
184
238
176
225
217
177
204
246
205
188
147
236
252
220
178
193
192
169
216
232
184
181
200
174
234
192
238
198
226
233
161
158
196
151
254
223
130
198
228
164
163
254
211
237
221
165
182
205
193
183
165
164
168
169
225
204
275
196
142
210
213
210
169
170
170
219
287
164
210
230
218
123
213
242
219
136
209
243
240
149
207
207
224
215
169
165
151
156
192
189
218
234
234
213
170
199
158
179
222
201
163
238
218
201
194
179
200
212
161
167
199
205
210
195
219
184
193
207
175
181
194
214
232
209
238
191
180
116
168
216
163
217
193
217
223
180
135
201
193
77
238
225
176
207
227
225
171
169
205
156
145
243
221
170
178
180
136
244
104
224
230
218
203
172
202
201
189
240
185
248
175
210
220
198
205
173
167
249
233
193
182
211
189
224
252
157
195
170
214
202
174
189
144
240
209
234
201
193
215
236
168
189
164
168
110
180
180
232
183
242
224
251
212
256
182
238
204
223
192
196
156
251
231
219
169
129
158
234
172
165
221
174
188
183
186
227
142
239
178
207
156
191
208
172
218
189
240
237
191
166
202
217
195
263
204
237
180
261
167
182
179
188
179
244
222
216
216
221
205
164
225
200
151
279
224
134
162
259
218
219
147
200
207
170
152
240
209
198
225
136
208
133
122
191
177
176
196
224
183
207
163
227
234
176
124
197
130
181
147
211
262
198
212
173
214
220
229
134
240
217
209
232
123
210
215
247
198
241
251
170
204
224
162
215
176
177
171
183
216
208
199
144
225
228
174
234
172
159
205
180
128
144
60
169
142
216
152
226
154
160
216
208
135
156
203
185
235
188
200
219
200
232
188
182
198
221
189
244
193
191
137
124
189
224
177
201
238
228
222
174
190
221
207
202
166
229
216
236
244
180
197
167
169
231
195
204
185
231
210
219
182
267
212
199
254
185
219
203
261
132
173
204
156
168
211
185
229
185
187
198
223
161
196
180
234
167
173
194
198
210
174
168
256
253
208
198
120
196
200
203
205
243
194
227
197
173
229
234
213
158
255
226
211
223
217
174
234
192
199
232
176
207
99
249
217
165
192
212
200
259
177
153
190
203
229
213
169
165
218
130
219
146
212
239
207
131
230
186
179
130
229
249
220
236
247
206
208
227
181
233
189
252
163
192
281
212
183
148
154
237
200
148
216
186
175
234
275
166
230
184
135
235
192
218
222
231
208
220
233
221
90
164
214
169
250
175
183
189
252
161
186
197
154
224
197
254
258
194
168
193
232
191
182
255
198
188
207
177
187
215
182
154
233
212
238
190
211
183
186
175
231
258
215
195
203
234
201
221
238
198
205
220
144
235
220
239
179
212
165
217
230
229
204
183
251
162
185
259
256
223
232
239
169
256
255
227
220
201
204
221
183
154
172
161
205
189
202
151
188
185
182
172
240
224
228
210
213
235
256
197
209
151
196
219
195
150
191
201
211
263
180
215
168
226
202
245
202
170
191
188
261
146
210
206
206
159
188
169
177
153
165
189
260
171
219
152
212
164
221
260
217
225
250
248
217
191
215
203
200
205
272
202
204
148
220
158
233
224
103
190
221
139
150
196
188
217
214
155
246
230
205
131
232
240
179
232
223
203
170
246
255
214
221
228
192
206
134
193
170
166
174
204
204
201
140
249
163
189
217
222
160
211
255
162
230
212
235
203
193
189
232
248
145
263
240
251
195
214
227
193
219
218
118
152
188
196
232
147
220
202
179
158
260
254
155
198
209
214
217
190
216
212
165
209
188
174
205
155
226
249
195
224
211
256
217
157
174
185
216
132
245
170
251
156
173
124
208
191
243
168
262
193
223
181
205
211
210
164
233
222
200
164
233
259
237
197
203
187
196
201
176
223
175
217
190
215
137
168
243
211
215
188
220
187
262
184
204
262
135
162
177
192
149
245
187
140
230
231
170
196
220
213
228
185
166
226
145
255
233
179
208
234
217
176
182
226
183
200
199
209
180
167
254
185
190
119
161
195
220
190
245
267
205
214
245
123
212
239
179
201
175
205
227
186
189
232
112
216
213
229
202
216
221
175
216
246
199
195
145
220
267
232
172
186
230
166
254
153
197
194
198
249
229
190
228
190
162
273
214
252
183
173
192
211
235
182
258
260
227
228
220
195
195
183
218
203
143
191
213
192
223
263
191
207
165
232
92
176
211
216
252
150
174
217
209
217
197
273
230
185
175
221
258
214
174
226
179
264
193
172
189
190
229
176
215
226
161
225
145
182
231
162
191
212
169
163
185
255
196
209
190
144
181
226
216
171
237
221
203
136
195
192
194
164
133
206
207
273
229
174
294
213
240
199
152
203
204
197
137
266
205
261
240
188
203
213
150
249
210
263
179
207
175
233
210
212
173
136
235
173
204
157
163
203
152
190
213
211
198
201
181
272
191
216
193
209
204
188
158
204
221
199
169
182
262
223
142
238
149
189
146
184
228
266
251
236
163
204
194
215
199
244
190
157
203
236
256
162
175
146
223
211
246
227
236
180
177
228
159
224
188
191
195
219
217
170
184
214
230
235
206
264
176
205
199
173
117
231
127
216
232
197
153
164
239
217
211
250
242
234
201
227
209
248
244
126
144
201
210
198
202
189
276
199
212
222
254
207
251
211
172
172
229
193
217
196
219
187
215
195
214
200
232
198
149
231
216
197
153
233
228
165
257
219
230
176
134
207
207
142
184
202
222
204
234
244
184
182
178
190
187
156
200
216
195
176
209
214
214
248
200
168
167
227
196
220
190
222
133
230
145
205
230
219
178
183
196
227
224
259
215
136
212
119
183
184
173
189
203
163
170
248
193
214
139
126
108
189
140
154
132
122
209
194
184
168
141
258
215
225
164
245
204
190
206
238
214
184
212
171
233
170
186
221
212
197
221
220
173
257
226
195
204
208
181
209
142
210
193
199
188
226
186
278
174
242
246
259
252
256
241
252
205
240
195
193
258
186
213
167
163
188
194
219
194
221
191
206
204
207
190
141
190
215
155
190
177
178
175
201
236
171
242
138
121
193
179
219
171
179
205
220
190
176
252
168
225
169
234
203
166
203
184
208
159
247
241
206
240
185
167
202
189
230
248
205
202
208
240
179
194
214
200
214
274
203
223
209
161
235
222
167
171
171
200
246
211
242
210
190
212
217
185
200
179
208
243
167
200
204
189
171
248
175
197
253
199
195
257
191
257
168
198
214
225
222
224
220
222
127
242
197
179
237
209
243
247
178
213
183
196
197
172
149
218
194
214
188
205
182
160
235
256
194
238
178
217
166
196
198
200
206
242
173
173
222
190
174
199
181
173
178
138
196
190
197
193
203
197
176
205
253
234
204
203
168
256
212
145
244
231
167
188
183
116
172
180
180
226
227
213
136
169
218
242
229
221
146
279
246
185
153
262
243
203
221
176
136
163
222
225
200
161
184
186
242
175
201
231
233
204
234
226
206
188
155
155
216
131
205
120
205
174
239
222
155
195
167
197
231
143
217
145
172
222
244
176
247
185
157
231
202
209
246
173
212
196
178
191
171
231
100
193
199
187
191
228
157
222
205
111
188
203
179
185
197
234
186
172
276
212
109
143
145
180
163
175
215
176
227
189
181
199
230
173
198
131
209
150
208
219
176
228
144
140
220
237
141
247
147
198
199
151
227
203
191
219
194
197
192
164
185
224
246
139
174
188
242
224
154
232
212
220
157
211
163
212
150
181
190
169
199
218
209
187
162
214
204
216
217
193
166
171
236
198
253
178
194
181
205
250
232
238
194
146
231
217
209
200
158
160
240
153
202
204
110
215
169
208
186
223
224
197
185
235
205
159
186
221
178
228
219
169
193
222
189
165
172
141
289
147
213
199
210
173
272
236
207
200
137
120
164
209
254
220
222
227
255
156
144
199
226
149
189
160
186
199
177
211
175
173
205
181
211
126
215
192
190
248
194
191
208
243
197
225
218
204
173
125
262
145
182
199
220
193
275
146
210
211
215
263
206
187
208
219
237
194
184
229
177
178
201
195
228
199
240
232
171
181
179
222
101
189
113
248
189
132
209
198
191
162
243
242
207
219
240
240
179
155
205
183
226
178
223
204
177
238
233
190
182
147
145
155
300
139
140
184
208
195
241
219
180
237
213
156
169
255
184
208
209
233
157
162
220
250
214
165
196
208
176
251
95
198
187
203
163
212
270
228
163
213
198
211
211
93
261
232
207
153
203
178
139
222
230
234
153
193
219
135
163
197
191
218
202
180
210
184
203
184
199
127
229
206
176
190
208
217
194
189
208
166
239
174
244
235
220
207
227
168
191
203
104
288
220
199
151
182
126
216
269
216
199
168
219
209
253
189
177
184
202
228
235
213
260
184
214
245
252
210
225
254
213
222
189
192
229
186
202
223
217
191
213
198
140
224
186
200
160
163
201
197
195
183
165
203
180
148
164
240
231
233
184
175
193
194
247
227
156
166
218
209
252
185
172
249
180
146
151
212
225
245
200
232
194
223
198
214
228
191
177
199
107
202
207
209
219
214
135
192
209
173
213
236
226
220
167
217
193
196
234
198
229
249
233
247
148
172
187
252
229
203
218
187
178
169
184
206
252
191
149
242
161
200
129
196
229
283
194
197
220
197
114
212
181
214
216
238
220
174
186
248
151
209
257
178
224
190
168
189
210
209
200
128
237
253
218
186
176
184
241
206
222
247
250
227
200
183
160
208
193
152
213
224
167
218
202
121
249
218
230
219
167
263
239
212
207
211
224
232
146
220
202
157
163
164
187
186
217
160
207
192
184
222
177
143
231
187
148
162
188
148
248
224
143
218
222
146
187
155
238
179
205
214
226
213
202
233
226
217
141
225
196
187
222
148
204
242
176
229
158
227
255
281
213
119
189
204
177
155
221
199
235
207
199
241
181
247
200
192
143
200
193
186
174
181
161
201
230
214
245
193
194
185
244
206
164
232
204
225
231
267
194
182
244
229
217
184
181
185
192
209
149
153
253
180
154
121
198
198
174
235
192
205
106
221
149
206
234
117
220
200
246
150
234
225
237
158
196
204
214
219
268
173
227
213
215
207
121
187
182
263
196
219
184
214
213
175
192
146
254
199
191
172
167
260
164
211
196
219
182
196
203
228
197
138
255
185
195
201
219
174
184
224
267
163
242
262
175
211
164
206
156
253
173
200
214
214
194
198
193
247
125
230
217
180
184
201
185
215
211
174
196
169
179
152
237
228
173
172
134
205
212
212
188
148
244
216
235
199
189
174
179
195
222
216
248
179
243
246
187
175
187
193
267
160
189
226
249
232
213
176
246
230
148
209
235
209
247
192
183
168
124
187
213
156
176
204
216
175
177
214
200
233
190
251
178
225
169
215
166
212
210
174
193
172
182
221
237
283
221
205
196
178
193
226
210
245
238
226
172
241
227
184
120
249
226
262
301
196
208
192
197
216
169
191
215
186
217
183
194
122
232
200
163
169
151
170
234
207
205
201
196
173
141
225
144
168
196
176
220
214
126
160
226
239
198
218
246
173
145
233
235
118
259
203
163
218
206
270
190
195
169
260
233
181
173
232
168
168
214
207
180
230
210
182
197
197
193
219
195
209
168
150
186
241
232
198
173
205
277
195
227
241
270
220
193
185
230
203
219
183
198
178
244
106
175
212
208
232
200
228
248
154
196
127
189
144
131
157
131
237
150
229
214
207
189
136
183
197
219
276
206
185
216
224
223
176
190
192
166
222
169
244
205
178
203
129
144
231
212
172
161
190
268
160
202
218
100
187
160
204
257
239
151
189
241
197
170
169
230
245
237
235
225
202
133
181
175
195
217
229
232
202
247
210
205
211
170
168
227
246
210
175
162
226
247
213
185
166
159
208
204
257
185
210
163
248
196
219
186
233
155
256
237
196
149
145
197
223
183
200
196
200
217
161
180
205
180
207
244
164
177
242
228
231
173
166
209
214
147
191
228
197
176
205
179
221
227
232
191
250
236
264
191
216
195
206
267
138
193
209
148
254
214
220
161
267
212
142
149
219
153
193
215
232
213
232
206
185
155
200
171
195
176
203
248
285
170
198
174
185
204
278
228
273
198
235
187
127
271
272
167
243
221
198
161
111
223
203
188
207
267
228
176
165
157
188
184
160
252
179
214
165
230
209
184
212
253
127
222
188
266
224
141
176
226
206
188
188
233
205
195
216
179
185
226
171
196
119
186
232
216
185
162
216
210
213
187
218
183
202
220
180
179
256
195
224
259
213
148
223
245
182
220
157
207
138
193
159
194
209
241
176
236
186
186
167
204
198
240
221
119
223
201
214
170
192
159
224
202
226
124
196
232
199
197
228
193
181
218
198
172
193
215
221
194
203
238
189
209
198
167
236
229
196
232
216
113
248
189
225
234
186
198
153
201
172
184
215
185
191
176
216
229
249
167
196
183
228
168
208
239
204
188
193
152
182
179
199
217
220
219
219
157
213
183
256
199
211
216
188
155
221
237
174
182
217
265
230
187
174
189
250
195
238
192
208
172
194
182
161
143
182
165
185
196
146
202
204
129
195
233
190
186
141
184
237
224
127
172
262
177
236
278
194
182
205
196
193
263
158
197
232
202
208
175
205
168
227
187
212
261
219
196
160
197
223
230
167
203
203
185
193
177
225
200
226
226
161
231
202
186
211
250
151
155
196
167
198
166
281
192
184
263
218
258
180
230
224
236
230
162
214
223
194
195
266
216
220
211
228
168
205
197
186
192
156
244
163
185
224
189
204
191
198
223
208
180
226
159
239
163
188
222
223
248
232
193
165
200
282
183
221
209
266
188
188
137
223
216
212
194
159
175
214
221
143
185
176
188
178
232
218
216
180
200
173
237
242
231
200
229
210
195
214
246
233
214
188
145
200
229
229
119
243
168
270
233
172
195
206
214
191
166
198
183
233
226
206
220
253
157
260
195
190
282
296
159
222
215
244
182
234
187
180
152
244
185
227
166
229
210
231
232
188
160
138
235
207
227
194
213
198
214
125
156
182
207
218
210
241
188
241
182
226
182
263
170
233
264
236
149
193
210
203
165
257
195
218
231
184
162
185
244
205
215
195
214
125
268
186
229
163
208
205
187
228
278
204
176
249
222
215
226
178
261
129
220
229
198
173
210
184
223
196
205
187
112
204
165
206
198
208
193
236
241
168
144
163
188
183
177
211
215
181
208
201
281
203
213
234
194
116
182
185
145
210
170
207
179
216
265
170
175
198
220
246
187
182
126
139
207
217
253
223
249
231
202
159
209
173
251
193
228
231
234
231
172
183
239
208
198
245
190
216
242
286
268
190
201
147
180
205
206
164
240
246
220
221
255
202
279
175
191
141
198
234
215
145
190
227
202
210
225
212
239
184
243
248
227
216
208
212
200
220
204
239
241
211
206
263
167
255
200
214
220
113
235
233
149
200
202
174
253
151
215
202
239
209
183
244
239
172
207
230
205
180
245
221
215
145
198
216
205
231
234
263
237
182
137
180
167
256
147
205
225
206
206
195
196
232
265
214
150
148
137
229
218
205
236
190
178
174
176
202
207
237
207
207
231
218
188
225
233
191
136
146
172
168
180
290
207
139
145
256
281
163
191
166
224
189
200
168
119
205
180
172
189
224
177
144
191
183
170
126
225
210
138
187
222
221
206
188
230
116
245
226
132
169
237
255
184
157
250
196
161
235
257
230
163
177
206
147
199
197
167
217
118
241
246
232
228
236
194
171
210
166
264
200
210
201
229
177
143
237
240
223
199
161
191
162
254
169
180
160
190
146
181
212
250
257
209
186
239
157
236
228
248
213
210
230
209
173
179
212
202
221
177
209
196
166
214
199
161
166
266
196
228
210
228
140
234
193
175
207
254
180
108
215
209
128
114
197
160
179
192
196
192
127
136
180
217
277
233
137
221
170
212
154
251
202
214
177
222
194
174
210
161
205
187
180
238
236
212
208
178
234
226
236
197
260
185
236
258
141
216
240
156
246
213
143
145
207
170
202
157
153
155
212
177
237
272
204
219
200
223
253
237
202
224
252
172
206
180
167
218
197
179
202
203
186
125
186
191
201
259
206
148
213
259
180
204
224
160
196
145
173
218
243
166
216
171
180
205
209
212
254
214
213
215
196
273
192
229
218
208
180
202
209
200
176
155
231
206
225
151
240
130
227
150
213
193
159
184
159
234
237
218
152
235
176
208
140
199
211
258
233
155
202
216
213
228
171
230
224
202
126
168
212
215
159
206
213
144
230
184
245
213
204
261
227
201
241
240
234
182
261
201
152
262
166
186
230
149
176
189
174
233
185
146
159
233
201
160
184
152
193
222
215
231
184
193
255
181
206
225
247
231
223
147
200
219
229
155
201
216
228
225
204
251
127
210
234
233
191
259
183
149
176
231
233
171
223
154
222
195
188
266
214
212
259
235
211
121
273
215
195
228
205
180
120
182
267
212
226
208
157
215
215
175
197
197
211
249
232
196
143
209
177
199
187
236
153
259
196
232
190
172
194
190
200
171
200
239
222
182
250
179
188
209
206
220
235
202
163
215
171
177
267
245
212
102
198
171
204
190
248
209
202
173
151
207
242
146
221
194
187
198
172
221
219
119
195
205
236
160
230
248
211
199
264
170
189
234
215
173
203
180
199
107
203
181
224
198
212
186
196
188
220
248
217
225
255
124
156
147
171
154
198
261
172
210
185
203
228
165
239
216
222
157
213
189
202
216
217
152
222
145
239
183
217
208
227
214
247
203
206
233
210
153
223
236
194
152
279
215
239
194
128
240
290
228
189
131
209
177
191
241
165
225
243
219
163
171
137
179
174
200
169
166
179
156
261
212
244
165
147
246
157
213
198
226
240
186
197
185
165
184
218
200
216
255
242
206
214
209
231
173
201
149
174
176
181
192
148
191
125
180
202
227
222
239
192
183
185
176
197
204
270
203
185
185
171
216
248
176
230
186
176
200
227
212
196
206
143
229
255
230
214
153
211
239
251
201
198
218
191
209
159
257
213
141
219
118
207
224
174
208
209
237
174
216
234
189
200
203
240
173
222
198
163
257
146
168
222
238
207
204
168
195
191
158
200
220
200
214
196
173
204
161
178
215
218
165
204
239
163
246
144
188
249
177
154
219
165
252
219
198
250
161
216
210
180
143
190
178
179
142
239
228
229
209
250
263
246
167
183
247
170
154
226
206
198
200
198
237
211
228
145
189
181
233
206
186
238
240
203
162
160
189
151
183
211
173
199
235
234
217
165
183
160
199
162
189
250
203
223
233
230
149
182
202
176
273
178
185
207
207
200
176
166
221
175
219
198
155
185
209
140
180
150
204
156
226
198
170
150
231
197
208
148
218
248
222
209
215
230
259
162
202
258
208
252
257
206
158
179
193
211
203
203
180
211
218
134
238
218
190
214
154
215
190
282
188
225
207
207
251
233
161
223
204
206
133
185
168
162
153
134
160
227
232
150
216
182
197
207
245
165
184
232
217
190
245
228
163
210
182
201
197
149
219
155
240
164
181
178
216
231
232
206
213
212
190
213
160
172
220
218
237
268
272
197
146
154
208
213
171
206
234
206
217
213
182
261
191
182
233
194
162
184
193
223
233
229
202
242
180
237
154
144
250
224
190
144
232
168
186
188
177
234
160
170
218
179
150
190
258
213
155
239
216
196
220
228
217
151
257
198
234
145
179
236
183
210
217
206
214
168
209
198
211
188
249
184
133
274
237
221
185
200
223
207
212
224
241
245
230
176
229
225
201
128
217
150
163
140
181
199
208
164
182
198
228
187
197
188
216
185
202
205
188
118
229
206
191
202
186
135
118
222
189
231
160
191
219
125
207
203
156
191
238
230
175
134
273
206
203
248
206
226
211
148
220
185
196
210
171
211
213
190
171
236
184
123
173
227
166
191
206
220
186
257
173
196
215
275
179
211
205
223
205
205
126
206
227
192
213
188
231
183
198
193
166
161
249
200
235
220
260
177
257
215
155
193
226
177
184
236
187
203
154
212
215
242
232
175
191
292
198
231
215
216
170
207
175
200
219
198
201
219
262
217
226
205
153
204
138
264
196
214
254
200
211
196
144
207
199
207
199
195
174
215
190
223
225
175
160
216
155
178
214
247
192
172
179
208
191
192
254
147
178
174
219
178
189
153
271
184
197
217
172
214
201
195
154
154
156
285
221
203
242
219
238
144
225
183
167
192
199
159
194
213
174
298
219
196
210
184
148
206
222
191
244
244
238
199
229
214
128
177
156
163
163
166
144
212
180
234
214
200
189
248
217
176
188
224
201
128
238
220
233
229
228
173
202
211
178
213
238
166
211
203
194
167
239
260
115
217
240
211
204
163
179
253
210
205
160
212
190
205
247
219
227
168
135
213
198
180
199
212
141
159
260
180
189
159
149
178
275
165
112
199
156
122
226
213
184
231
124
160
221
167
236
204
203
193
183
175
270
173
199
242
210
187
224
168
171
229
202
222
159
184
213
243
247
150
184
187
150
196
218
229
200
242
211
199
171
181
199
184
262
241
172
168
163
180
235
191
166
235
256
172
199
172
214
232
170
182
228
180
200
121
220
141
184
215
218
207
142
185
242
205
193
185
229
233
226
182
210
169
233
237
220
146
187
254
185
201
205
199
154
216
162
190
194
224
226
262
257
185
238
197
160
242
165
174
185
209
223
190
236
164
186
146
210
203
219
143
132
189
245
147
174
190
142
117
128
191
202
185
180
176
187
186
229
165
184
157
236
192
215
168
196
182
229
185
137
253
190
185
217
201
231
163
173
277
168
217
226
171
203
208
198
143
229
185
195
201
150
234
195
248
217
213
209
244
185
258
195
183
196
173
226
176
236
175
216
221
206
153
208
217
159
201
201
218
258
201
138
191
186
229
150
242
238
236
192
150
245
146
210
188
209
205
210
220
142
232
233
159
127
188
218
217
255
238
132
198
147
192
193
211
193
187
216
206
215
148
235
248
196
216
144
206
190
224
205
159
223
203
232
219
209
187
167
210
188
230
190
232
134
224
247
282
178
206
233
135
202
171
168
174
193
247
291
214
227
236
148
230
196
229
167
183
225
196
226
243
213
198
236
170
167
210
184
229
187
163
196
155
166
181
221
186
221
170
129
190
182
201
221
187
223
157
184
141
148
227
176
158
166
185
167
219
176
195
159
204
209
166
171
205
159
210
146
150
206
180
173
185
185
171
256
215
153
141
156
193
173
207
154
196
161
202
166
227
201
188
219
209
225
170
223
153
241
188
235
180
232
228
211
176
236
213
175
141
154
208
182
222
213
270
175
190
183
141
250
179
211
220
214
216
215
179
194
255
253
193
172
198
219
216
151
175
169
165
214
180
134
259
187
170
163
175
217
195
186
196
161
179
251
175
209
172
183
160
222
199
242
201
183
232
165
196
269
171
118
184
252
250
190
221
195
156
193
195
209
200
238
238
190
207
184
188
226
190
202
217
203
209
179
156
184
228
165
235
192
160
186
210
204
150
184
185
262
202
209
248
196
207
207
216
118
232
212
286
188
174
225
139
201
246
217
232
215
148
145
176
205
209
239
212
187
208
202
226
217
228
192
223
201
157
146
265
178
164
212
171
131
197
164
247
201
176
201
202
169
193
199
260
172
173
227
252
217
187
180
174
204
241
181
164
209
191
209
221
199
245
275
195
217
211
189
143
196
195
178
236
195
174
228
151
202
226
149
159
236
220
256
211
193
152
206
220
146
181
255
214
198
144
203
228
170
138
163
183
224
203
201
269
228
223
205
139
149
232
264
163
263
189
142
189
200
234
232
226
150
141
130
192
161
147
224
145
221
158
142
218
216
173
183
219
228
220
246
186
245
179
172
158
189
224
209
225
177
169
194
218
200
171
154
202
241
201
252
244
242
172
211
234
216
190
184
150
216
261
159
171
159
273
181
218
159
169
212
206
199
199
172
187
172
231
215
220
219
205
208
163
149
205
188
201
197
162
189
197
264
196
146
197
213
192
267
233
223
170
210
189
260
182
215
239
198
242
220
187
187
184
233
182
195
231
99
214
194
165
175
196
187
146
210
196
247
225
211
200
211
198
196
181
182
227
251
175
184
167
188
163
215
107
209
185
177
165
215
146
186
171
157
187
226
220
226
222
257
207
208
233
212
157
183
208
248
193
201
211
140
189
177
236
217
153
207
207
237
191
197
185
230
227
154
238
188
179
229
195
245
229
226
199
159
203
185
168
173
195
212
186
192
141
133
220
227
162
215
203
217
231
155
202
224
215
203
175
241
187
223
235
210
164
163
176
180
185
202
134
268
166
174
231
176
239
268
185
159
223
170
160
211
196
208
234
206
232
220
175
209
176
136
206
189
185
236
141
239
170
188
188
216
154
207
154
169
214
161
164
217
169
200
212
200
211
197
196
193
212
210
239
250
211
238
176
178
162
204
225
203
206
199
268
233
180
189
257
197
139
231
211
253
164
184
229
215
204
149
150
153
230
201
184
171
135
218
180
218
238
169
161
151
258
167
245
217
207
137
205
164
193
228
173
176
197
204
222
197
183
192
230
224
218
196
196
152
164
203
203
177
209
212
218
168
197
224
166
293
184
205
247
218
225
212
273
200
181
223
234
202
190
199
194
248
181
173
143
210
225
164
170
193
196
169
183
277
242
198
199
206
176
253
170
177
199
192
235
175
200
173
173
225
209
196
212
168
231
247
236
141
209
189
186
246
150
252
223
130
242
225
190
200
240
238
242
222
210
199
204
217
178
201
208
201
187
228
184
221
165
244
224
198
202
208
194
252
246
100
230
164
218
163
171
190
212
227
227
245
194
281
232
234
151
131
224
173
234
211
213
248
207
158
222
177
120
175
195
201
164
158
208
230
213
257
215
185
166
248
182
281
192
234
198
213
168
216
216
181
183
251
176
239
206
193
191
220
213
173
200
208
238
238
238
182
138
139
259
229
172
216
172
226
232
221
235
198
193
167
165
223
271
212
147
208
242
213
219
180
199
207
169
164
189
265
210
137
136
202
142
243
156
233
212
163
171
158
221
152
177
180
186
212
285
219
233
172
197
200
135
156
220
188
178
187
213
176
189
254
159
165
170
169
157
193
217
243
175
189
245
185
178
163
191
288
219
246
227
214
213
180
213
186
230
216
194
188
184
257
189
183
202
199
199
223
218
202
208
188
165
142
172
208
168
175
185
240
214
184
192
222
200
199
238
188
180
186
234
256
198
157
202
314
177
201
215
231
201
180
200
167
272
164
247
226
193
181
163
243
216
223
213
185
182
195
197
182
224
143
184
174
209
169
166
249
102
142
196
185
176
198
165
211
195
128
204
158
178
120
139
202
188
186
229
181
186
203
234
242
213
152
216
217
150
284
199
217
201
215
215
215
138
257
241
194
228
210
164
179
166
126
193
232
225
152
171
233
230
263
216
197
170
173
220
212
154
177
221
161
235
123
245
219
207
225
217
153
184
142
197
164
195
213
211
215
197
227
210
205
184
207
148
243
233
216
166
167
144
161
185
200
210
176
224
169
270
192
107
224
236
157
232
172
201
264
195
200
218
171
127
194
196
246
180
196
268
237
134
220
205
171
224
178
156
214
239
206
149
237
198
218
223
128
212
186
155
180
188
235
167
190
209
205
178
191
180
198
226
204
218
141
173
209
192
178
186
205
201
190
264
233
190
197
215
161
163
192
179
200
183
227
201
226
230
228
185
208
190
133
185
216
268
196
273
238
186
221
219
196
117
236
173
200
224
165
255
202
193
172
265
189
174
229
197
195
244
237
223
218
170
205
226
170
210
229
153
216
191
170
211
207
189
193
169
222
142
192
206
170
224
218
170
219
139
165
181
205
187
222
177
183
205
204
185
173
193
125
204
196
199
213
169
212
175
250
203
168
193
156
214
127
243
210
254
208
215
249
201
209
160
142
236
227
256
84
239
193
174
188
179
207
248
242
250
194
193
155
273
235
214
153
236
183
176
183
184
180
201
162
227
248
199
171
187
149
221
233
156
222
185
168
218
165
241
183
244
186
210
150
166
179
157
154
178
157
249
187
186
221
233
137
185
162
217
229
170
227
243
187
155
210
172
187
183
174
217
151
197
152
188
176
241
211
208
238
192
165
166
255
178
208
177
208
193
221
232
115
223
209
213
237
209
197
171
206
189
183
163
238
209
144
229
214
177
162
211
226
172
224
217
181
178
234
172
181
182
239
234
199
241
226
156
237
219
168
185
195
240
111
267
235
182
204
225
264
215
186
221
199
229
265
142
183
156
232
279
115
176
221
216
149
155
206
218
171
249
189
222
205
190
193
204
190
214
184
244
150
200
210
224
258
188
185
188
176
210
232
173
217
184
164
220
184
231
189
201
175
195
213
163
188
209
236
189
206
197
175
202
202
264
258
171
178
179
166
207
174
181
177
227
223
227
203
195
167
200
161
227
202
175
191
224
204
196
157
227
125
258
185
141
228
183
225
194
259
181
183
219
167
226
250
230
248
208
249
206
172
221
199
204
201
173
248
208
222
216
261
154
191
192
133
212
201
185
202
191
163
216
183
137
224
183
229
179
197
138
203
244
230
184
205
228
193
193
236
188
258
196
207
136
323
122
207
138
229
254
209
163
186
226
279
169
221
237
240
194
234
220
199
137
172
172
241
186
247
142
155
248
132
243
249
190
177
251
189
175
211
245
189
269
218
217
226
163
190
156
186
148
184
181
202
212
281
192
163
202
258
235
204
210
257
185
186
128
199
136
178
229
202
217
151
263
233
173
164
238
205
162
175
111
185
173
207
242
242
184
216
244
240
206
238
190
195
203
206
195
180
167
193
176
200
204
236
164
215
186
236
253
196
193
169
203
162
196
228
223
177
208
186
146
229
203
191
141
196
190
178
237
202
185
234
267
206
160
154
195
155
203
115
164
187
155
187
210
193
224
179
188
228
220
194
155
133
211
201
237
173
180
231
201
177
198
185
205
201
205
205
259
172
195
198
271
117
186
196
201
188
244
207
217
219
168
205
173
126
206
210
235
211
229
174
197
237
176
198
226
248
258
171
218
211
208
205
195
176
164
193
140
217
224
205
183
186
238
156
226
234
173
152
221
149
201
187
148
118
160
205
176
229
197
150
184
203
191
203
236
179
267
196
215
170
255
188
255
178
193
245
244
161
155
181
218
224
157
234
205
215
219
221
227
236
171
228
220
179
205
202
224
171
192
194
238
211
229
245
137
186
193
184
226
252
231
201
189
180
229
210
260
222
189
158
162
205
160
175
199
195
184
235
183
201
154
222
230
185
251
209
257
216
279
146
206
224
161
197
247
247
151
221
222
209
188
230
206
190
212
168
215
194
183
217
261
147
230
165
200
214
289
229
227
191
184
169
174
219
138
219
206
215
176
240
258
190
227
150
142
181
196
254
155
161
184
167
145
194
165
148
230
201
213
188
147
190
227
225
220
161
202
212
186
220
257
210
221
210
202
214
223
214
205
190
219
187
202
251
202
224
147
208
227
206
188
255
222
194
205
216
172
183
203
194
214
256
180
185
216
221
230
172
230
159
201
213
213
254
172
162
165
219
215
182
204
226
198
251
226
191
232
179
148
113
177
193
234
182
182
186
179
194
194
159
156
257
219
240
197
149
178
215
186
161
163
193
241
227
125
143
228
205
134
166
217
157
221
216
222
150
219
175
218
180
152
226
252
172
215
223
215
223
156
199
186
230
210
206
229
249
193
192
241
233
180
133
175
197
153
238
159
194
200
170
184
204
229
172
192
248
221
204
241
225
255
203
203
211
177
201
221
185
140
227
222
218
180
215
182
201
149
223
188
223
179
208
227
130
237
239
253
178
196
150
203
157
154
196
230
242
217
144
204
153
212
218
192
237
182
139
215
168
170
215
216
183
200
190
181
200
175
260
204
210
232
201
183
222
252
215
248
185
184
192
134
228
220
206
184
188
189
226
146
203
176
191
200
176
168
198
170
219
180
157
151
173
217
184
225
236
186
215
248
233
110
254
228
210
190
221
214
218
233
187
203
134
195
229
217
167
281
219
231
223
141
187
276
184
227
174
261
147
166
213
164
258
192
239
224
182
211
213
207
267
187
223
193
217
243
224
152
197
221
231
231
216
152
200
186
151
183
210
195
200
244
192
202
180
182
166
251
213
236
201
159
198
266
223
199
208
235
192
182
196
233
175
197
175
187
128
212
225
250
196
209
195
115
197
221
216
146
251
151
226
219
224
202
215
240
218
206
250
237
226
237
227
189
181
165
207
197
189
184
214
198
205
181
203
171
208
212
147
208
173
209
243
210
210
252
146
225
166
199
185
235
225
132
210
245
227
167
212
189
197
222
233
178
269
188
141
216
202
197
210
230
252
256
204
210
225
192
200
206
249
232
215
199
247
228
208
161
145
148
216
242
123
192
157
185
230
166
163
162
195
187
190
218
163
233
163
254
222
252
241
198
173
292
125
232
211
199
251
232
156
153
198
227
185
196
226
160
239
220
202
93
192
185
209
191
212
240
133
226
173
234
251
189
128
158
190
192
172
209
216
166
174
261
229
163
204
214
196
188
186
184
140
201
237
233
214
197
184
213
189
242
205
183
168
220
165
144
192
211
229
234
242
186
222
231
160
196
258
166
222
171
194
200
181
182
246
100
177
172
182
227
253
226
232
234
201
186
184
173
208
201
189
235
202
191
141
235
191
218
201
213
211
232
160
245
199
172
157
237
230
203
268
216
150
210
182
225
208
227
253
197
201
214
218
244
206
206
114
166
223
198
221
224
259
176
236
198
216
187
217
220
220
215
235
198
188
216
228
190
198
222
176
202
180
165
288
147
185
221
233
184
156
211
188
216
169
187
238
245
195
209
153
199
204
264
175
198
150
224
209
200
199
178
224
147
232
222
147
205
219
253
246
265
194
185
244
234
209
207
253
177
182
208
202
255
145
112
199
235
246
240
193
210
189
189
231
145
133
193
219
244
190
168
186
231
219
229
204
167
274
172
203
246
233
188
146
242
170
266
242
211
227
189
248
209
192
246
206
182
144
215
201
252
201
210
247
251
253
169
232
215
226
164
261
212
217
229
142
152
174
209
207
187
105
227
262
235
168
186
178
180
191
150
137
190
101
191
231
180
224
205
180
173
207
237
196
196
232
260
228
194
213
227
252
192
238
178
178
180
218
234
243
202
194
157
143
176
199
229
170
211
138
298
222
208
242
205
192
217
242
213
259
146
217
231
256
209
170
227
244
195
162
193
179
143
193
210
173
183
229
251
222
201
284
196
235
211
206
202
238
211
183
184
150
184
176
161
243
162
224
170
205
189
155
204
222
199
148
239
263
180
148
179
193
182
221
156
241
237
204
228
149
252
248
148
207
160
116
234
141
197
171
176
234
257
254
180
198
150
204
130
228
160
190
200
217
236
214
231
176
154
99
215
238
214
177
185
207
242
229
156
202
233
132
126
205
190
177
148
234
180
189
135
190
126
192
231
229
233
194
235
187
188
162
197
229
249
175
196
186
202
200
211
264
209
211
152
200
201
131
189
243
231
206
153
244
196
170
200
149
165
181
216
200
220
171
223
187
217
178
153
160
173
256
161
170
184
198
175
206
227
210
189
319
236
190
213
119
244
225
223
221
177
160
181
217
245
180
177
259
190
180
201
220
217
201
167
218
186
211
238
160
201
211
163
222
262
198
200
182
296
145
208
196
158
167
194
247
192
244
181
203
228
206
215
217
278
196
188
187
207
181
208
192
123
249
183
253
235
199
237
130
182
149
229
216
130
229
186
228
248
179
166
156
190
219
200
210
186
250
191
187
240
210
203
195
174
171
254
247
181
197
145
168
246
158
247
208
236
299
214
252
194
176
192
152
143
292
229
215
153
176
218
206
243
177
237
254
155
187
192
237
170
143
119
203
204
200
217
258
174
195
189
149
83
185
196
197
172
228
151
197
152
260
214
145
124
201
204
187
234
179
150
159
188
178
218
252
224
219
212
179
168
177
197
132
216
238
233
226
216
115
216
192
142
198
178
178
187
124
239
179
169
127
187
150
258
205
214
241
163
234
219
211
137
216
133
198
238
220
233
299
211
204
213
195
189
201
188
187
139
201
211
161
169
122
158
236
191
205
172
264
206
217
199
185
192
187
226
264
178
254
229
186
218
200
135
194
160
185
228
148
198
200
161
265
206
243
219
119
192
180
146
216
214
204
202
238
228
204
178
204
214
200
298
203
208
252
269
234
185
198
224
218
235
221
232
168
189
201
207
247
178
219
197
181
209
193
221
221
247
211
116
166
242
153
198
264
157
185
157
136
155
218
248
203
202
187
243
157
215
237
245
137
209
183
219
196
191
186
220
167
167
214
253
200
195
259
248
230
189
198
124
192
221
202
225
179
158
232
225
229
179
176
172
160
224
174
242
256
203
219
150
255
184
219
181
215
145
148
204
226
210
188
231
243
197
209
177
195
150
209
154
156
195
178
232
205
234
199
189
148
233
202
244
227
115
197
233
156
145
184
158
199
181
248
185
226
152
184
223
221
217
156
194
201
259
203
172
158
184
207
181
233
186
229
237
200
237
196
192
198
182
170
248
184
180
219
166
199
223
252
192
208
234
230
187
270
202
148
239
205
184
141
128
266
151
246
219
127
236
213
203
217
178
182
181
156
269
167
171
217
201
231
200
187
227
156
193
193
155
171
202
134
184
263
210
189
196
201
168
246
137
216
176
221
169
211
158
148
161
197
155
235
202
190
190
240
181
215
248
186
192
180
193
244
230
202
235
173
222
227
156
210
220
231
204
150
250
206
176
207
186
217
217
141
217
246
215
241
188
199
218
211
189
219
195
260
159
164
236
226
146
148
176
158
241
251
157
276
178
171
190
228
211
231
169
201
223
243
197
150
214
230
185
226
181
209
204
241
171
211
180
198
173
170
156
181
190
178
205
221
198
199
173
292
182
271
254
199
202
208
193
244
191
202
220
239
197
215
229
199
238
224
233
182
138
175
171
198
217
200
128
192
171
211
171
247
223
174
206
138
251
228
267
221
167
198
229
149
193
200
201
200
232
226
255
206
176
169
197
180
216
174
191
232
202
203
224
172
258
268
192
177
179
203
242
212
210
120
219
169
216
244
237
137
174
224
128
122
170
215
189
237
239
216
170
198
167
182
203
195
172
191
248
144
153
141
203
212
140
182
259
227
154
222
181
134
176
131
166
194
254
208
238
230
149
188
207
228
217
242
244
195
171
219
278
197
204
221
222
205
271
173
196
161
242
242
245
191
241
201
219
235
247
172
229
173
222
189
199
224
230
214
219
188
199
231
184
216
183
187
206
228
222
192
216
197
199
176
170
168
261
225
227
165
227
140
153
204
228
116
207
210
177
149
215
171
156
216
174
239
231
174
198
189
199
206
224
219
198
185
193
124
223
174
171
236
203
220
193
166
212
200
210
204
217
199
269
253
213
267
194
165
215
208
227
162
150
216
165
233
179
236
186
280
209
229
200
176
194
215
241
236
216
212
221
282
175
205
191
200
187
191
198
244
179
218
214
239
251
166
204
127
226
170
212
195
273
189
200
162
181
197
183
223
255
201
260
127
233
158
209
206
206
197
254
205
184
143
148
238
228
256
132
246
204
167
219
222
260
224
229
168
270
237
235
187
178
201
227
189
282
229
204
174
207
254
172
256
211
177
225
209
207
113
144
272
210
183
215
117
219
177
173
208
168
240
225
180
96
141
195
208
106
219
173
180
112
179
193
179
165
217
196
211
169
164
201
157
230
196
195
229
214
222
192
203
162
200
259
185
222
158
260
265
133
132
218
178
177
177
212
231
237
172
242
191
202
117
203
265
267
198
187
182
204
196
239
226
171
255
157
182
232
230
136
214
147
192
187
196
290
212
148
201
201
185
206
217
218
146
152
175
126
273
141
142
214
182
218
183
244
198
214
159
247
251
203
188
241
165
263
156
201
206
182
220
167
179
219
236
182
204
259
175
231
187
147
235
183
245
169
218
183
165
115
179
205
205
228
158
228
188
174
266
221
187
187
200
184
213
241
164
188
167
170
148
201
217
222
211
157
185
167
179
227
185
153
120
198
214
204
142
213
244
154
257
205
196
109
228
206
243
234
176
216
114
184
229
170
151
204
162
231
202
250
241
155
210
188
230
207
155
151
189
277
176
186
160
190
191
194
168
221
229
205
220
190
183
188
139
197
208
197
249
220
200
192
251
172
206
213
232
236
178
231
154
153
225
191
206
222
142
229
232
237
126
132
242
222
229
256
241
206
174
211
170
173
234
238
180
225
203
246
235
191
255
151
234
179
224
163
195
226
214
228
237
173
230
193
231
206
214
225
241
220
213
220
176
254
174
249
226
225
207
195
217
248
182
227
248
233
149
200
184
212
235
216
245
205
227
239
215
135
152
175
162
216
203
196
141
244
264
195
181
141
231
226
233
207
144
223
238
235
224
206
197
229
134
282
245
200
181
202
206
172
177
223
175
162
228
177
234
206
243
188
143
194
190
274
133
221
223
158
231
180
237
239
260
64
224
245
211
204
234
242
187
230
232
248
183
196
245
177
231
222
227
197
192
157
225
246
164
211
158
244
205
169
179
190
195
166
214
202
171
175
164
231
147
207
232
273
216
219
279
166
192
207
198
243
246
219
184
211
240
232
248
239
214
165
161
168
174
173
186
157
146
242
112
192
200
223
247
204
159
200
274
121
185
168
238
186
175
224
230
242
233
185
272
194
207
246
159
225
159
195
242
132
175
253
184
175
235
190
303
225
213
199
271
117
197
205
206
190
160
249
148
213
273
211
163
172
187
167
196
176
215
185
186
203
144
226
171
187
195
194
219
204
281
247
197
212
225
196
215
242
142
254
207
206
224
231
212
183
228
166
226
142
278
192
234
222
199
233
190
221
149
255
206
139
200
235
183
206
237
258
227
204
230
203
195
135
173
208
197
232
194
192
232
208
198
149
260
205
260
196
149
137
164
210
173
203
172
179
177
227
196
225
187
262
200
186
169
219
156
201
150
174
225
152
202
209
176
175
183
192
175
218
179
235
232
159
231
184
248
259
232
189
205
216
199
204
215
189
188
143
249
182
184
203
196
207
226
189
188
183
260
142
184
185
257
188
209
272
254
137
208
171
218
180
207
213
176
120
210
178
214
178
266
172
208
266
249
190
207
279
196
182
218
233
190
251
179
189
183
250
219
241
184
185
163
185
208
220
217
265
169
161
203
245
204
249
243
191
183
189
164
162
264
193
197
244
177
163
215
234
246
186
190
227
150
204
207
187
155
255
212
211
180
201
234
214
201
224
201
136
230
221
208
185
173
240
167
178
162
201
134
163
228
220
209
256
188
239
181
207
132
219
202
167
269
170
229
261
183
218
173
204
177
191
221
160
184
194
194
187
177
205
206
235
215
229
191
217
202
170
176
271
205
185
234
237
246
154
177
187
227
200
194
155
187
149
226
186
190
214
217
170
269
223
198
231
188
222
229
246
233
161
150
212
195
214
159
259
178
276
251
198
176
213
175
237
188
167
193
182
167
227
252
210
168
153
211
143
184
167
213
170
199
198
172
143
215
167
221
166
194
139
234
175
151
214
168
208
227
236
161
210
192
165
180
138
197
162
194
208
230
153
206
200
181
154
232
231
204
191
193
206
223
218
152
243
175
244
260
179
224
246
262
175
216
199
166
169
163
174
215
195
222
189
196
211
164
128
217
186
151
201
218
172
141
203
212
259
249
242
162
156
226
231
257
240
127
221
257
240
180
281
225
178
206
189
219
249
205
174
178
210
172
243
209
192
254
166
245
216
176
227
172
250
186
221
205
211
200
175
244
208
226
192
199
214
220
154
234
173
108
177
245
264
143
148
166
221
148
164
183
181
202
172
210
160
192
142
202
194
238
220
231
184
218
158
204
169
229
245
217
224
114
226
210
139
220
246
242
147
227
225
232
279
219
182
160
187
220
189
184
199
175
211
243
212
247
191
189
204
195
265
214
160
245
122
250
212
181
293
204
230
220
191
217
207
177
175
217
143
209
225
198
168
226
238
188
222
190
174
151
197
172
246
190
194
255
217
173
207
233
246
222
177
187
221
215
212
145
212
171
268
274
171
253
185
157
169
209
275
218
214
162
180
166
216
229
231
225
252
199
191
192
245
245
174
244
213
183
223
214
206
175
215
231
107
221
196
156
236
254
254
178
159
232
212
275
215
236
123
256
164
222
213
197
235
163
193
148
240
225
160
230
154
209
163
192
277
232
226
180
179
198
201
157
209
207
228
202
224
179
197
164
207
200
218
227
201
184
197
201
163
232
211
246
234
147
221
229
296
240
200
219
204
220
184
168
225
251
238
232
215
241
206
186
207
175
206
215
101
156
106
180
188
194
207
224
258
198
219
157
240
149
266
230
175
261
192
186
188
216
264
189
231
193
215
202
218
233
146
172
208
189
225
202
167
172
294
148
224
166
178
222
178
201
180
168
254
208
284
235
191
210
232
237
246
276
177
225
218
249
236
197
222
209
147
148
189
236
106
186
153
180
232
209
186
205
260
193
279
160
183
242
199
174
242
211
192
267
188
226
218
207
199
231
182
248
264
184
243
184
231
218
249
170
234
174
199
180
206
122
194
223
259
221
196
230
224
248
215
221
206
218
160
198
170
218
210
234
228
203
195
227
271
207
190
236
215
248
95
164
218
237
218
192
241
157
241
224
237
209
168
243
201
183
266
219
232
231
218
258
162
121
217
240
247
176
202
243
187
236
217
204
194
168
143
123
163
164
178
214
177
175
214
209
153
254
198
174
202
221
221
187
214
200
228
172
149
213
202
271
186
219
186
212
215
150
174
168
210
228
219
220
194
184
173
217
184
238
231
160
222
192
186
136
174
153
196
243
221
192
213
292
215
223
170
189
177
196
194
180
208
183
205
163
209
265
176
188
190
181
196
196
237
263
182
142
244
228
219
166
235
169
217
218
209
220
202
199
246
167
172
222
219
228
164
238
242
133
245
177
209
119
207
236
157
227
136
197
233
198
239
145
146
229
175
220
162
225
181
188
226
243
194
170
207
229
249
246
200
204
181
210
199
220
137
155
232
169
219
199
227
198
264
133
190
216
216
207
150
210
240
145
232
190
215
168
216
203
215
211
233
154
226
164
204
222
251
203
148
202
272
209
169
180
223
236
203
252
203
228
162
134
208
162
233
261
242
209
157
152
157
174
234
253
122
210
176
207
210
220
236
231
143
191
158
210
198
242
203
224
170
284
232
162
212
142
179
235
215
258
181
238
218
270
235
200
168
242
217
186
251
217
225
221
183
178
157
166
253
146
232
180
233
148
178
214
183
187
206
270
245
215
190
195
241
233
223
269
176
213
237
121
225
185
165
177
179
170
153
205
249
218
146
174
229
214
184
186
234
231
258
187
216
183
214
219
210
179
201
219
128
188
228
224
205
193
220
184
223
195
223
165
259
148
190
189
190
174
192
112
161
244
209
243
168
244
168
184
242
170
230
199
179
216
197
206
206
207
223
159
161
149
187
228
205
224
257
224
180
202
222
286
259
234
269
254
170
175
193
164
237
181
172
172
218
225
192
238
126
231
221
181
156
171
193
218
200
265
257
187
245
215
178
197
243
196
157
203
246
184
147
121
223
200
191
168
234
227
234
249
206
128
208
170
172
256
153
220
254
210
171
163
237
215
182
188
172
196
226
161
156
145
168
240
183
196
226
181
185
212
221
175
226
199
218
201
248
170
221
185
215
154
153
215
214
250
209
180
181
246
191
178
199
188
179
165
115
204
232
186
203
168
240
170
224
180
215
225
204
166
235
211
204
174
245
194
163
159
149
102
186
214
152
228
132
227
156
250
174
212
217
224
198
165
213
235
206
181
177
209
247
182
135
154
154
223
241
188
200
184
189
161
227
156
246
228
215
199
164
216
192
123
200
189
183
185
216
137
183
231
207
252
183
275
157
144
172
167
196
254
176
258
247
162
189
182
166
133
163
233
202
126
204
155
214
232
249
195
167
250
179
216
176
170
135
111
259
189
191
218
163
147
133
245
193
190
237
195
200
172
82
173
242
194
195
202
198
169
206
199
245
175
230
259
142
204
234
211
275
180
215
233
190
166
242
241
235
194
230
212
232
164
243
208
198
230
166
233
213
201
170
213
182
239
235
183
235
215
205
243
185
215
237
225
207
201
197
181
196
205
223
254
138
214
185
194
206
123
154
247
254
177
189
194
227
179
216
171
152
239
209
263
225
194
165
222
166
195
162
163
244
220
184
234
155
170
246
182
196
234
240
233
163
200
193
259
215
239
166
154
202
165
249
165
214
182
216
158
202
212
219
237
163
229
183
252
190
230
205
198
194
222
217
150
180
233
230
139
171
126
155
229
151
191
157
250
207
206
168
177
196
225
224
196
134
163
269
167
238
207
175
198
161
236
262
167
168
136
170
133
169
221
210
192
220
211
196
187
241
140
126
238
216
233
221
225
228
190
207
252
163
188
243
122
217
185
91
264
253
171
227
159
164
259
155
175
239
242
209
199
198
200
141
200
213
233
232
203
195
227
108
166
153
201
247
177
240
248
221
220
195
191
190
178
208
183
255
160
213
152
163
209
144
211
214
262
195
205
247
153
230
265
203
210
203
202
211
207
168
199
165
186
200
184
160
186
172
233
169
154
194
187
199
237
210
256
217
222
229
187
223
222
248
186
233
233
193
236
260
247
163
179
209
265
259
179
201
255
270
195
283
197
176
209
227
192
196
137
158
207
139
236
213
201
260
240
165
216
158
258
198
177
189
216
212
232
172
244
187
228
163
236
202
179
184
190
236
168
186
169
212
242
174
214
178
210
221
193
259
175
137
260
244
175
207
223
214
186
258
190
214
227
174
268
171
234
199
221
203
230
197
210
222
163
145
191
259
231
161
203
197
182
194
222
182
236
202
172
162
187
225
204
182
160
215
240
139
228
119
188
170
185
165
192
152
206
198
206
217
175
223
223
226
154
257
191
228
205
199
176
202
215
245
139
259
197
112
228
221
209
252
181
186
211
233
185
164
178
205
151
203
201
201
256
205
140
217
183
235
194
167
130
197
231
197
206
202
237
222
218
223
216
179
192
183
222
261
221
173
179
227
227
197
214
173
213
207
170
219
247
184
206
187
172
214
225
145
176
220
234
201
199
204
222
192
246
199
197
208
256
218
253
194
205
218
218
245
240
199
184
217
234
204
174
200
201
198
142
214
175
276
229
222
190
235
157
136
219
240
157
146
119
206
199
220
215
154
210
173
122
142
218
247
211
211
241
210
220
163
278
215
211
233
227
250
182
242
169
171
192
178
157
176
177
243
221
187
203
147
208
220
278
215
232
225
234
186
242
238
227
177
173
197
160
268
271
245
189
291
222
193
262
192
266
212
150
256
230
234
160
209
178
243
185
190
185
224
187
177
177
172
180
182
212
193
155
180
219
231
185
211
243
239
201
210
266
228
230
197
194
214
221
257
141
158
111
181
184
243
245
122
205
230
155
119
204
221
206
163
191
253
199
246
196
147
180
192
191
233
208
228
276
179
212
105
223
143
255
165
182
231
179
287
204
206
218
271
233
184
187
226
255
216
230
250
220
187
170
203
186
249
204
192
204
185
216
187
146
174
157
166
254
223
248
193
157
146
130
248
199
174
231
194
150
157
256
193
173
148
190
221
206
230
155
274
211
107
187
226
232
239
241
173
242
186
167
187
195
169
149
219
248
177
254
208
194
197
226
235
245
238
160
155
237
201
208
182
224
269
230
169
202
182
212
152
238
196
213
248
191
201
202
202
194
216
148
177
246
241
203
202
173
243
215
172
255
210
206
229
231
203
179
231
259
177
194
228
150
264
180
189
241
185
210
197
203
234
197
197
171
190
200
219
201
237
234
202
206
185
219
236
216
211
218
247
181
204
181
176
222
262
140
272
210
168
168
221
158
158
151
189
189
259
269
228
269
203
222
213
166
195
125
190
193
149
232
232
203
231
178
159
207
198
92
168
160
181
234
221
264
241
183
151
217
175
296
213
211
253
191
239
193
186
214
205
252
137
228
196
178
192
194
219
231
243
159
169
208
244
242
161
191
185
177
189
229
264
174
195
172
217
194
187
215
147
216
118
133
267
174
195
152
229
202
212
189
166
196
183
186
195
220
194
186
168
158
198
206
234
250
244
180
228
200
176
150
198
187
267
169
222
221
190
219
155
226
182
188
148
214
174
251
249
212
223
193
203
178
137
186
209
193
256
262
227
149
217
212
144
209
154
241
164
167
228
205
195
196
146
200
171
199
202
215
199
180
165
194
244
205
170
243
249
197
187
231
252
223
142
184
148
259
217
231
220
199
221
184
229
190
240
183
173
179
192
249
226
188
216
189
194
198
227
195
210
195
189
198
250
213
206
212
210
158
191
189
171
217
245
155
164
233
225
249
201
216
241
158
210
190
211
198
164
138
202
156
240
200
235
201
185
182
227
156
177
191
265
226
225
214
205
208
232
268
180
210
277
182
188
187
206
247
189
196
188
211
196
209
196
234
139
262
246
179
204
236
187
179
167
233
146
236
224
163
219
173
195
216
176
243
266
264
263
171
257
213
185
230
190
214
213
224
207
191
198
196
211
171
208
200
180
208
188
206
238
213
210
212
203
184
116
185
197
160
181
210
188
218
195
196
167
189
84
220
203
170
167
205
258
183
200
138
246
270
208
212
240
180
254
221
199
192
232
150
131
228
160
215
187
246
219
246
206
232
190
248
184
230
113
180
256
223
150
195
192
186
192
213
200
222
169
154
222
185
187
224
200
200
180
174
246
190
166
188
186
214
219
175
223
227
180
223
231
132
187
200
153
222
179
208
229
187
189
172
161
113
159
186
209
227
231
175
127
155
194
106
181
209
224
158
206
167
196
232
199
152
213
144
159
176
217
208
141
133
189
187
299
249
210
177
216
205
184
205
150
116
179
143
183
187
183
204
215
205
167
194
156
138
231
181
150
174
242
166
180
243
217
201
219
208
268
185
192
220
203
207
157
77
227
224
274
175
259
190
178
155
159
263
242
176
247
221
183
197
186
184
200
184
216
237
146
203
201
172
210
201
219
162
222
272
204
268
169
165
155
144
209
256
184
225
87
245
242
227
240
211
202
193
218
252
244
184
153
185
170
204
241
193
191
200
210
186
225
174
173
167
175
162
197
185
161
214
225
155
231
207
254
183
183
193
188
152
210
203
151
249
214
197
247
231
151
183
251
180
205
230
119
214
243
209
265
198
248
222
122
195
240
141
170
222
244
227
217
216
163
185
111
227
163
200
184
158
253
178
144
241
143
203
243
217
237
204
147
165
186
198
195
197
197
231
158
213
191
201
182
217
179
227
234
208
238
269
243
192
240
170
221
218
218
254
218
176
179
198
240
240
138
192
200
202
261
215
203
209
205
204
181
132
240
206
244
181
174
191
234
179
206
193
197
176
235
226
181
173
225
187
220
214
207
198
221
191
202
171
218
166
199
181
198
247
256
183
236
250
229
172
223
202
181
205
201
218
205
152
216
219
177
217
188
166
234
225
155
200
250
176
147
153
252
125
195
186
181
230
244
166
202
181
250
232
169
264
264
193
176
156
197
276
206
240
198
220
225
215
219
237
238
168
207
243
212
114
215
195
182
209
217
194
216
179
243
148
172
172
219
187
178
136
169
197
245
231
193
179
183
138
140
273
204
155
217
241
174
156
214
196
251
261
147
173
196
209
148
221
212
192
191
128
157
273
248
160
202
155
172
184
151
236
164
239
183
184
251
222
102
151
219
149
177
176
184
250
211
218
220
272
196
189
221
200
219
211
195
205
239
248
202
207
233
187
192
228
161
175
195
175
196
231
185
196
180
135
231
189
228
244
225
257
194
164
168
158
236
200
254
216
170
222
232
159
232
217
213
245
210
208
231
226
184
202
237
274
257
188
196
213
203
200
234
181
218
192
211
216
111
188
223
176
194
182
208
229
246
175
180
244
261
154
164
215
175
192
197
170
106
228
202
161
160
195
196
186
151
231
184
198
229
197
240
219
176
281
136
222
160
197
176
192
232
247
197
202
268
206
234
159
214
142
198
138
250
262
232
203
169
215
208
190
253
207
223
222
266
265
177
195
234
182
190
236
219
180
224
158
234
203
202
207
226
186
158
154
213
163
266
236
220
159
211
135
222
233
237
217
190
236
178
173
198
214
238
223
186
256
253
187
176
167
172
193
229
200
253
187
140
234
190
262
161
179
195
207
195
173
210
228
166
209
222
168
210
193
214
227
160
185
205
243
212
223
210
199
132
179
162
158
237
168
159
217
154
162
210
208
201
219
131
180
177
207
268
182
187
181
167
218
233
227
210
225
140
203
211
197
201
191
217
243
158
251
175
189
220
143
135
145
198
159
160
194
169
196
203
223
174
241
136
156
170
225
225
235
127
189
197
163
176
235
156
186
220
176
201
193
194
192
214
110
179
218
174
205
272
199
148
116
195
180
270
185
181
249
280
236
222
155
210
188
235
210
211
248
196
213
219
178
220
210
225
206
217
193
245
129
161
158
202
224
165
184
219
185
202
234
278
173
187
226
172
165
203
207
200
151
255
171
189
195
179
250
211
182
212
225
172
139
221
217
178
240
245
242
236
189
223
197
213
183
180
216
209
229
175
210
230
171
157
210
196
198
227
228
204
240
227
136
205
212
180
131
218
163
229
187
212
179
262
180
224
179
268
185
234
209
209
196
182
255
228
218
167
178
181
179
196
210
137
205
156
249
238
159
220
78
188
218
223
186
188
145
201
180
212
231
246
196
213
241
233
210
176
161
204
168
235
271
189
166
195
176
160
193
195
171
201
216
191
203
183
180
259
158
220
182
188
174
241
217
185
221
155
178
173
145
182
186
184
207
209
259
170
187
250
172
196
241
204
188
240
149
265
238
196
147
216
222
205
221
177
225
145
182
213
261
237
174
128
190
247
187
181
174
226
275
296
232
242
204
177
253
178
207
269
169
219
144
181
175
249
184
202
204
219
175
196
229
221
198
195
106
196
279
238
275
236
208
213
194
184
208
242
227
188
170
245
221
221
188
197
163
189
216
169
153
199
182
157
200
226
169
180
165
214
204
166
182
265
246
164
215
206
200
220
190
179
233
235
207
212
145
199
150
214
178
164
194
271
198
148
186
198
199
127
207
158
192
159
176
200
188
185
182
236
198
165
173
210
190
217
259
224
234
208
210
193
258
259
199
243
226
163
237
249
211
228
217
170
201
162
183
222
254
197
197
194
226
186
152
199
187
144
229
230
191
176
206
181
229
201
236
237
189
263
150
205
184
179
175
201
205
224
230
220
131
214
219
153
157
135
142
165
161
190
222
162
172
206
170
118
285
244
151
255
208
226
176
212
241
219
167
231
193
167
176
154
179
235
150
164
176
160
242
214
220
147
140
199
222
177
226
224
188
150
185
168
182
175
152
206
218
217
161
250
147
211
256
255
261
249
239
202
185
294
207
222
210
241
118
192
222
191
241
109
174
110
198
152
182
229
214
212
198
250
208
255
167
243
205
205
218
201
162
170
175
202
164
178
163
279
166
182
191
184
207
162
222
151
145
192
150
236
221
225
144
200
208
232
199
198
191
241
203
223
201
204
262
175
189
235
239
210
167
149
209
149
197
207
239
216
207
227
191
159
163
206
237
247
173
180
141
214
242
188
230
187
210
187
191
221
165
240
182
233
220
183
209
188
233
213
203
165
213
177
250
203
133
195
209
143
166
233
193
215
182
189
167
224
301
237
184
221
162
262
222
198
224
216
143
254
212
186
221
218
200
196
238
233
193
226
215
184
179
289
153
195
187
259
200
159
209
209
222
208
209
208
246
224
181
188
234
140
211
201
103
242
217
227
308
224
181
192
148
170
220
232
184
252
219
228
208
246
202
205
237
209
205
175
218
149
177
186
264
221
182
171
218
180
177
151
149
175
193
196
208
214
197
190
236
212
159
198
215
225
212
225
186
228
180
173
237
162
192
202
175
250
200
211
223
209
240
209
217
187
208
186
138
213
217
137
232
152
133
116
237
134
249
230
147
284
195
182
145
173
151
167
169
165
213
223
149
137
232
180
208
233
164
211
201
226
201
235
144
258
236
213
223
218
206
215
212
182
186
260
194
200
164
197
217
191
234
224
216
243
141
228
163
215
195
231
269
189
172
185
172
193
206
201
212
183
225
210
200
314
221
246
221
204
203
180
145
178
212
228
261
229
149
178
228
180
216
204
212
226
145
194
207
257
235
190
240
177
224
237
232
248
175
191
143
192
223
176
174
235
235
256
221
209
173
107
233
239
150
224
263
236
243
206
256
225
207
138
229
183
252
169
232
189
201
201
193
223
244
231
281
180
228
211
288
251
223
236
216
203
227
177
176
230
199
135
212
213
221
171
134
228
220
228
231
210
234
209
199
132
248
119
193
198
171
225
258
160
185
224
174
182
200
202
196
163
247
137
197
144
221
142
205
207
242
167
197
131
158
237
178
237
261
218
244
227
195
180
154
160
259
178
139
226
228
246
181
166
222
167
170
247
209
202
207
239
187
211
214
183
130
259
138
182
164
278
230
185
226
126
305
203
198
132
244
239
182
182
214
150
203
252
168
244
247
211
246
199
202
220
191
122
189
181
203
188
218
204
180
129
183
221
194
212
216
198
189
245
190
236
198
248
286
217
191
149
165
203
138
194
213
170
238
172
244
175
196
171
183
219
184
220
235
186
213
243
176
194
191
157
217
196
176
202
112
184
217
188
193
254
218
196
220
224
184
196
277
222
169
199
173
194
255
150
213
180
224
214
153
168
151
190
217
183
190
255
225
241
187
169
203
202
203
244
136
174
167
207
161
184
190
235
253
234
213
226
159
172
188
173
177
122
236
195
213
177
222
216
206
179
256
185
200
173
201
235
242
160
222
203
179
236
212
179
161
203
245
222
187
220
232
219
220
234
260
244
200
196
161
155
240
181
235
169
165
134
259
194
249
243
161
191
234
211
184
241
176
203
234
147
212
185
272
237
193
188
209
203
173
168
188
261
188
184
191
224
219
180
229
177
184
181
170
190
179
140
203
192
179
247
137
190
193
213
228
198
210
207
165
163
217
149
158
206
146
193
122
189
191
167
197
260
185
225
150
220
168
237
217
185
228
228
195
234
182
107
233
215
254
214
103
180
225
195
180
167
129
194
197
171
156
181
238
252
184
140
223
202
235
153
197
250
192
191
144
187
203
155
169
161
229
234
224
163
252
229
236
132
172
186
177
217
207
244
180
228
192
254
188
267
161
196
273
153
195
195
143
190
159
205
165
243
190
171
152
203
172
216
231
189
200
231
281
187
221
226
170
213
224
256
169
234
193
189
204
176
175
249
201
256
192
166
209
215
182
299
186
190
169
202
123
196
212
169
287
149
205
195
222
201
274
221
200
199
168
177
157
210
243
170
201
159
247
239
174
249
224
265
167
175
179
223
186
220
169
215
248
210
138
215
234
213
185
239
185
189
243
146
229
167
238
203
227
223
199
149
212
203
180
177
157
220
130
97
206
199
237
167
162
169
230
193
209
165
176
178
160
215
219
216
166
127
199
242
172
279
161
251
221
186
185
195
155
167
207
118
202
168
267
204
266
166
245
202
220
182
208
185
201
203
204
201
232
222
190
135
201
177
207
207
205
201
202
205
169
138
230
213
254
149
129
264
218
243
229
164
241
225
260
265
180
268
226
244
227
187
221
175
217
217
227
237
170
171
169
238
158
199
216
171
158
171
256
168
214
184
164
222
172
226
152
175
164
191
191
221
144
185
204
225
185
251
252
223
176
213
200
212
193
195
241
203
246
189
216
179
215
204
174
201
231
264
204
130
174
248
180
196
202
148
259
226
207
225
230
202
167
177
158
208
221
254
184
228
233
230
160
170
139
227
182
210
249
160
170
234
231
182
188
185
173
203
187
159
204
191
170
225
162
225
184
195
169
212
212
260
235
180
192
160
192
186
203
194
184
250
191
159
167
232
195
231
173
269
203
244
214
156
205
162
142
204
198
239
265
210
205
193
120
152
185
233
140
199
230
170
143
170
163
283
215
194
177
224
209
259
154
153
197
228
188
175
209
215
209
208
193
249
197
231
222
198
242
198
157
174
178
176
220
217
155
238
224
193
187
174
253
174
211
240
247
231
233
185
167
235
104
206
223
236
152
194
207
146
237
132
226
215
176
167
227
135
206
131
187
256
208
215
184
176
203
204
173
185
193
215
198
190
228
197
215
173
132
176
173
165
242
202
239
206
212
274
183
232
182
205
248
227
203
201
262
221
219
171
178
219
185
174
179
184
244
202
196
168
199
221
162
201
236
195
180
223
185
194
217
187
193
167
215
163
226
191
231
261
206
212
209
231
192
141
189
195
217
210
188
224
192
204
242
214
247
180
265
204
177
202
202
227
235
152
165
173
245
234
195
195
203
231
158
215
257
196
136
183
244
229
201
165
223
208
264
259
181
205
234
192
191
256
190
189
181
269
161
183
184
221
237
248
199
173
225
186
205
193
215
197
234
174
163
165
155
224
202
192
227
155
217
131
228
204
233
258
189
208
267
231
210
216
240
194
231
185
170
165
233
232
152
192
161
127
191
208
218
249
189
203
210
144
223
226
219
229
224
180
177
197
155
156
204
185
221
216
175
162
186
173
231
197
266
222
238
191
205
196
171
188
249
247
259
138
255
187
132
266
265
163
241
245
220
133
239
256
181
245
200
230
134
174
154
206
178
251
219
188
204
219
240
136
159
180
198
230
160
253
144
205
237
226
268
223
203
216
179
197
232
215
149
219
159
164
140
193
237
204
168
180
194
185
181
240
276
127
218
182
201
175
200
218
185
209
184
209
155
116
157
165
145
163
236
167
188
142
229
164
217
201
227
248
171
175
222
184
215
248
203
277
188
198
282
231
190
219
209
153
233
238
232
219
201
201
188
251
162
148
189
253
213
156
204
141
144
204
165
207
151
225
151
183
224
284
196
160
214
150
248
212
234
223
174
215
206
184
196
223
183
233
227
194
194
222
211
259
188
187
279
244
258
199
207
177
248
147
179
167
157
210
239
257
243
165
156
180
211
247
188
190
197
231
208
148
196
182
231
151
161
198
193
128
218
192
178
170
190
141
284
220
174
193
223
180
312
208
165
262
227
174
166
166
222
191
203
180
210
264
166
149
129
175
199
181
168
200
154
149
234
169
186
255
192
197
217
185
223
117
205
196
201
195
199
161
214
193
229
218
187
211
180
229
130
156
235
214
227
201
214
212
137
220
233
224
230
188
219
236
197
214
144
207
160
140
152
178
168
168
151
152
174
223
241
237
204
184
202
168
227
201
267
212
196
219
142
214
265
208
153
201
169
202
134
215
185
188
195
169
189
253
205
166
170
203
163
181
215
169
160
149
256
245
142
214
132
196
217
260
213
240
168
226
196
200
233
184
218
232
239
221
171
245
248
217
173
215
183
218
245
179
169
198
143
259
209
165
170
175
227
181
268
215
235
177
137
224
194
217
165
227
208
183
199
240
206
197
205
257
183
151
227
154
235
142
160
214
185
154
165
261
208
218
170
170
194
267
174
222
229
190
213
233
189
214
195
238
248
251
225
213
192
185
232
220
203
178
173
187
206
203
158
238
154
156
210
218
203
232
195
187
223
255
216
168
217
181
203
152
208
117
165
221
248
218
245
174
163
222
171
160
204
230
195
226
171
165
206
204
181
290
233
239
186
236
193
244
209
173
214
126
135
218
213
196
279
227
220
171
193
193
221
193
167
192
113
202
162
228
240
200
176
199
224
188
182
270
199
224
228
215
185
192
144
223
206
204
225
229
147
142
217
213
161
192
199
147
188
176
199
158
160
176
200
204
197
233
194
224
209
219
200
163
242
212
226
206
202
225
127
229
202
194
200
218
258
244
292
215
193
250
161
152
211
160
178
169
197
131
128
261
191
185
219
183
240
211
197
179
178
162
223
240
143
138
210
205
203
185
196
240
177
127
269
231
232
190
205
236
191
272
208
201
204
180
164
133
185
185
153
226
223
147
185
240
198
233
239
239
221
243
168
238
201
205
226
177
118
221
152
200
210
227
180
218
230
218
197
235
197
159
169
216
201
188
205
255
218
200
218
226
216
181
193
201
206
162
193
196
192
214
157
242
155
144
166
157
234
195
241
218
154
154
179
228
197
218
215
227
202
180
197
221
152
170
265
152
177
258
225
139
209
206
162
186
184
196
195
197
225
210
258
169
244
292
209
224
149
164
204
202
190
153
226
184
187
234
278
178
169
125
241
154
179
172
140
218
195
176
152
218
231
185
195
236
190
152
194
199
152
237
157
233
181
246
187
186
227
199
241
166
239
215
202
180
240
188
221
172
210
233
249
206
163
206
235
263
206
228
92
159
200
225
173
202
197
189
211
204
234
167
209
210
209
214
217
137
186
165
175
184
191
207
145
216
229
212
179
192
180
208
251
202
220
211
238
181
203
207
284
231
230
198
223
160
228
175
182
197
159
134
237
172
181
208
185
243
183
160
166
240
119
244
182
264
164
134
199
184
219
132
257
144
216
192
171
236
157
235
217
211
186
188
243
181
202
197
178
199
208
225
158
213
207
207
180
195
192
247
209
231
235
228
186
201
160
122
248
176
196
185
251
217
216
224
124
217
187
147
235
149
172
245
230
159
216
253
200
186
156
206
144
195
167
179
200
187
183
219
171
282
224
166
217
212
237
191
207
207
193
217
156
177
204
256
235
230
129
166
181
220
144
169
244
201
202
222
248
192
157
237
201
177
194
182
191
236
242
157
199
191
148
198
224
185
219
253
200
241
195
211
188
244
158
198
185
186
246
188
218
234
211
282
211
160
204
250
238
175
240
141
184
188
183
240
139
145
204
187
177
224
244
204
182
125
141
261
193
227
194
219
208
241
213
223
203
128
209
215
243
159
218
229
109
234
156
166
178
249
214
242
131
208
232
164
190
189
230
148
268
221
134
194
200
182
156
246
184
207
257
133
213
205
183
191
156
194
151
235
216
238
210
186
220
165
229
185
203
228
204
245
176
147
227
217
212
211
162
216
204
222
220
239
199
220
163
222
270
225
215
148
266
157
199
137
240
179
193
235
192
190
213
217
195
264
176
228
196
229
193
242
271
201
239
205
176
252
250
193
188
164
199
218
212
185
201
228
188
175
167
239
228
190
161
188
227
210
161
210
184
168
147
217
225
168
156
150
215
265
151
134
248
175
232
189
217
250
238
216
219
230
205
251
223
156
260
212
209
225
249
139
212
135
181
197
228
163
203
194
206
270
146
141
166
165
137
186
202
183
276
224
137
194
222
198
99
170
166
239
261
257
137
134
185
211
233
138
282
223
171
248
212
226
174
184
177
148
255
234
184
178
175
219
179
256
211
177
230
183
204
228
149
277
228
200
174
236
238
161
210
240
252
237
251
253
257
260
166
212
211
222
188
227
207
189
170
167
171
224
175
142
167
214
233
179
232
186
235
113
158
180
164
227
224
250
238
241
142
125
187
199
184
234
234
243
200
121
196
212
250
212
233
153
244
153
219
124
232
159
284
139
181
223
240
145
105
199
180
215
213
243
212
201
201
264
125
155
217
192
241
219
173
220
161
137
202
187
243
231
178
237
237
166
237
198
234
174
125
157
224
233
212
248
174
208
120
236
210
223
251
210
192
157
203
171
144
219
221
186
266
178
256
266
187
248
154
141
159
198
247
221
224
142
237
179
225
181
242
240
140
193
109
211
209
237
258
265
212
215
120
220
177
184
181
206
200
176
185
247
182
212
172
198
218
198
182
214
207
199
168
223
276
196
191
175
165
214
178
239
237
148
190
139
245
231
155
163
193
220
163
166
235
200
216
151
187
198
217
187
200
212
171
196
217
193
237
177
191
200
207
214
211
137
174
224
275
207
223
189
240
183
168
198
175
211
132
189
180
171
180
185
197
201
174
179
229
256
178
212
259
163
213
163
154
219
232
221
169
208
174
211
192
235
168
192
159
227
153
222
181
210
114
233
135
174
170
236
187
210
178
169
180
234
143
199
212
200
228
216
214
186
228
185
239
157
158
225
245
175
239
178
272
195
141
215
226
191
103
235
212
169
161
139
272
216
134
220
166
220
217
148
226
202
159
147
222
155
200
205
178
207
200
156
202
200
243
253
138
206
156
170
226
214
237
251
159
249
225
204
213
181
197
136
187
167
236
174
192
177
161
234
191
184
172
148
252
196
231
172
202
256
228
189
181
169
215
151
199
183
218
230
234
187
257
219
194
254
142
241
222
216
191
209
214
233
216
202
213
220
173
215
238
167
155
171
187
211
266
239
205
223
200
252
237
186
249
290
209
230
179
231
196
259
249
215
209
257
194
197
169
226
188
267
217
178
219
170
260
165
273
155
151
255
241
117
234
225
153
236
217
266
184
226
221
229
171
225
248
192
186
241
228
186
211
193
105
226
180
184
200
221
235
235
270
164
189
180
232
209
221
167
240
202
263
190
177
196
223
139
227
145
231
217
180
188
230
211
199
186
169
261
200
211
178
182
246
212
176
180
191
202
223
189
236
230
262
228
122
216
175
171
186
206
222
192
195
245
192
187
193
184
218
203
194
187
183
195
210
237
118
208
257
153
195
193
162
151
154
187
191
169
209
246
165
205
226
219
171
198
242
202
137
134
210
191
246
104
168
221
240
172
222
201
197
182
201
195
187
249
131
203
169
198
169
234
260
243
212
158
208
161
192
226
207
264
216
213
203
270
172
208
215
227
177
230
129
206
223
187
141
255
160
210
236
189
138
213
135
207
223
187
198
192
233
172
155
186
185
156
167
229
200
195
239
177
234
169
258
243
185
175
234
225
205
236
208
172
196
209
172
213
180
228
151
172
211
204
194
193
190
170
172
194
182
195
206
200
171
202
205
169
258
209
209
178
244
167
244
222
247
240
226
206
210
268
252
208
237
210
227
206
198
192
225
228
219
142
172
217
219
225
146
207
154
195
233
275
218
190
195
183
172
164
160
193
209
196
146
212
187
216
196
209
216
204
211
170
225
245
219
247
258
184
170
250
238
244
144
210
184
232
246
197
150
256
146
177
195
225
156
157
243
197
265
203
111
217
119
224
197
242
220
148
237
194
218
188
240
177
187
193
229
157
186
151
179
205
169
185
159
264
214
215
160
167
190
205
271
186
251
207
190
142
231
232
237
225
208
218
200
241
186
200
165
204
215
208
214
244
219
231
235
249
194
184
199
180
192
207
184
210
217
215
186
178
212
176
184
214
245
220
219
211
186
193
241
250
96
156
149
223
218
154
268
174
238
227
177
206
170
223
267
235
202
182
153
235
172
178
184
273
169
232
231
134
222
144
241
200
193
170
246
179
242
150
238
154
214
143
227
132
205
172
255
245
244
199
179
234
143
244
215
213
185
178
163
227
233
187
147
227
223
127
202
218
210
184
157
119
182
213
211
213
204
225
269
223
244
233
135
222
209
260
249
215
231
236
194
191
213
217
204
205
134
191
196
178
194
191
162
203
277
224
155
228
230
175
233
211
201
153
167
208
236
164
185
155
197
198
239
191
180
201
142
207
252
189
186
137
193
184
175
208
186
221
209
233
225
203
165
229
145
181
280
213
212
178
218
203
194
170
262
244
201
227
213
227
223
194
255
245
216
164
188
217
226
170
251
186
159
254
227
211
206
159
174
184
243
188
150
192
148
220
183
169
204
195
243
232
193
209
188
134
168
252
224
230
141
230
208
174
196
195
218
187
212
160
155
228
214
251
193
186
133
135
215
198
168
198
138
221
205
176
216
194
196
231
207
204
201
202
163
128
204
228
220
250
256
185
195
213
136
149
187
158
238
191
150
140
252
193
171
164
180
173
207
205
255
236
167
203
198
191
206
145
162
154
183
191
225
197
165
159
196
151
172
251
165
185
271
155
169
153
258
147
246
166
172
200
204
176
175
147
189
209
168
155
245
213
213
238
253
169
122
267
181
177
231
204
159
246
156
245
179
224
215
277
285
221
203
198
123
223
178
226
208
237
163
203
230
221
205
175
213
172
223
237
213
139
229
245
189
211
176
162
216
156
146
238
249
191
242
237
226
187
177
230
257
226
234
276
184
193
253
205
173
270
192
214
213
167
185
258
215
157
276
264
214
170
203
175
167
152
160
199
205
223
139
232
184
116
210
199
233
236
169
169
167
203
225
202
243
190
165
177
145
195
166
252
232
205
235
188
249
214
180
270
164
236
205
208
225
211
200
223
172
213
192
188
196
145
140
231
167
222
178
264
203
131
199
237
230
273
190
167
191
248
148
166
249
245
194
202
227
192
208
178
160
205
247
221
201
137
215
172
203
199
176
160
194
223
152
173
225
195
222
213
199
211
194
216
160
162
150
212
253
181
150
226
232
200
211
223
244
189
220
201
168
241
194
167
226
195
159
176
231
169
182
159
230
214
198
209
150
249
179
224
280
137
227
159
225
192
204
255
194
255
193
237
192
202
158
231
129
230
240
181
237
201
226
194
185
193
128
273
237
160
219
213
157
224
186
189
243
211
217
192
225
192
204
185
251
184
259
208
202
187
228
186
220
188
176
256
228
211
190
202
210
171
132
264
185
127
191
172
187
201
175
132
143
157
219
186
177
165
210
155
222
220
203
259
154
146
228
248
213
245
149
168
210
201
183
187
215
225
207
245
226
175
147
140
167
146
239
187
195
139
208
207
117
146
267
182
231
212
196
184
218
231
146
243
246
231
239
227
208
215
166
199
221
178
201
175
205
252
181
227
249
214
223
185
197
188
118
204
186
202
208
198
233
209
183
210
245
159
226
182
163
223
190
239
217
199
193
199
215
205
197
260
218
221
166
230
228
241
192
182
182
181
242
193
178
221
230
152
117
230
242
179
191
175
226
194
229
185
196
175
202
211
210
185
227
183
209
203
190
206
215
263
158
179
300
222
182
203
180
162
207
220
225
197
207
150
146
216
93
197
219
224
175
168
240
185
225
163
170
215
193
153
248
211
204
194
205
235
177
184
233
153
166
158
199
205
184
233
202
232
198
195
214
195
222
196
217
211
163
154
203
150
191
136
165
216
218
191
208
240
234
246
181
219
201
134
242
193
196
233
193
240
198
202
232
186
179
160
175
199
246
181
162
206
245
262
257
201
192
162
217
156
196
153
242
247
194
128
163
201
270
145
239
217
260
151
240
223
203
185
216
241
181
223
221
197
109
192
195
189
197
271
169
158
199
180
194
162
220
230
197
211
242
201
185
196
169
200
231
219
199
192
129
166
186
196
165
220
219
214
181
260
193
187
240
173
210
111
174
219
228
198
189
155
220
208
162
207
204
135
223
186
262
166
166
143
260
221
250
225
206
219
226
201
200
163
212
239
228
224
145
205
154
237
146
208
155
189
198
196
213
215
267
167
230
224
194
189
156
174
234
167
232
167
224
234
204
186
211
226
162
217
135
147
234
234
156
177
201
181
199
192
191
208
181
189
208
201
191
266
203
203
199
249
207
247
236
241
148
177
128
167
256
232
210
238
131
173
228
178
221
129
193
179
155
189
194
202
187
188
177
185
233
223
206
190
184
182
215
188
168
181
220
217
143
139
137
208
247
214
204
256
183
256
133
218
166
254
216
272
243
194
208
164
174
204
200
196
257
221
182
175
226
201
192
195
173
143
234
168
181
204
180
205
159
169
197
191
219
234
193
179
222
197
157
267
190
222
171
231
139
194
196
186
161
243
202
212
148
244
192
255
201
243
171
195
176
216
217
220
205
220
182
226
225
153
236
251
207
187
194
271
230
225
287
213
212
197
206
253
205
193
171
181
152
192
188
206
215
200
268
170
211
253
188
175
259
237
215
210
205
226
242
247
236
241
243
130
267
186
184
207
167
186
218
188
188
210
175
217
209
232
188
207
139
117
177
192
254
206
140
141
152
175
200
241
199
218
229
202
192
229
186
175
167
197
189
189
169
210
194
166
225
271
257
137
105
253
218
237
243
248
236
213
240
206
191
274
187
234
271
261
155
193
207
186
168
204
183
217
155
164
227
174
243
190
212
190
176
177
157
264
179
223
188
239
157
212
163
158
222
276
175
173
222
186
133
198
189
202
190
223
183
197
172
218
249
223
200
249
148
124
181
153
213
241
235
183
214
171
165
262
170
237
292
224
200
184
226
198
135
185
207
176
205
208
187
227
233
203
240
227
244
202
206
212
244
264
184
239
194
176
197
266
188
234
227
234
201
195
192
201
165
193
189
185
227
196
203
196
218
244
230
221
211
203
243
223
242
233
175
159
226
214
193
194
139
205
172
213
197
215
208
234
207
224
181
177
174
207
156
161
181
202
193
239
171
126
162
166
171
188
190
167
236
194
210
241
213
211
144
193
116
179
215
204
216
226
233
244
217
210
212
220
220
213
202
219
196
206
237
131
165
224
209
222
225
151
160
275
219
203
199
227
246
230
210
231
177
216
176
252
240
220
255
224
210
252
203
209
190
161
254
258
209
193
234
172
184
174
164
205
182
186
193
234
180
178
210
155
176
209
202
207
186
179
140
208
154
201
187
220
137
214
216
189
217
188
233
207
258
189
156
224
212
159
196
245
228
207
207
195
213
201
250
220
193
192
203
208
176
175
189
265
201
203
219
240
164
203
200
225
216
168
262
184
223
214
281
218
219
205
200
191
203
232
198
228
203
192
243
210
193
105
191
139
224
185
207
201
171
253
224
198
236
219
224
224
279
207
180
282
153
124
149
182
217
174
199
133
174
204
207
266
209
238
206
223
160
181
212
192
230
205
209
212
182
231
189
220
196
236
196
212
194
226
236
213
203
212
172
195
179
196
248
191
157
220
203
250
229
176
186
165
214
202
205
141
138
240
192
211
187
187
189
177
159
198
185
186
165
197
223
202
236
172
164
242
184
158
177
191
204
172
174
177
188
166
146
162
209
169
154
204
178
211
234
183
235
179
217
158
261
145
193
194
142
183
207
299
198
216
162
171
165
182
137
164
212
176
207
256
214
116
218
231
213
142
210
226
271
216
223
265
167
217
204
172
205
196
143
272
185
168
248
154
241
219
295
206
169
189
166
182
186
77
155
220
192
193
194
164
205
196
245
153
222
190
110
240
116
242
126
141
178
151
158
201
178
280
186
142
164
143
199
232
154
196
138
197
173
158
233
209
260
162
187
168
189
162
251
233
184
225
119
245
154
248
162
201
251
148
212
221
230
181
197
221
224
169
185
187
146
208
189
223
217
186
139
220
179
175
214
210
216
204
180
199
190
203
127
185
227
196
247
154
217
147
275
198
273
205
237
228
200
236
211
250
234
220
227
207
211
152
224
223
218
213
181
168
196
187
175
210
156
232
197
174
184
199
172
187
209
208
232
161
186
202
203
168
202
194
223
210
197
204
171
180
230
160
168
223
202
222
203
164
177
189
193
205
126
190
181
219
204
211
200
131
213
250
179
192
199
251
169
166
160
163
229
187
144
186
176
198
202
168
184
202
172
213
189
253
223
207
201
175
225
242
162
217
237
211
233
191
182
227
235
214
208
258
196
205
163
174
212
253
250
143
153
208
219
238
153
174
211
222
171
271
226
224
229
164
234
161
204
196
168
222
175
170
194
205
201
226
259
202
155
187
153
200
181
206
196
257
168
205
161
185
204
150
242
173
154
231
223
236
210
116
243
171
217
160
217
230
230
264
144
163
185
186
214
202
265
194
209
243
178
229
224
192
213
141
182
163
189
161
145
229
200
170
194
139
197
232
162
214
178
198
165
224
211
237
150
160
156
158
180
158
234
168
223
145
156
212
208
218
195
197
156
137
221
157
186
199
191
204
189
125
222
264
186
278
176
266
212
207
203
190
141
132
230
237
238
205
182
230
121
148
199
259
222
161
215
209
192
244
179
208
194
210
152
149
236
243
216
183
173
236
200
192
262
168
237
224
181
248
215
197
187
251
167
203
177
170
137
222
167
237
194
185
217
135
221
176
217
207
161
195
141
208
232
145
201
194
188
241
209
213
234
236
184
199
220
192
160
171
233
188
190
185
227
220
180
217
136
172
164
114
226
269
201
198
196
205
185
187
190
148
163
221
242
179
210
208
227
173
224
203
163
193
212
174
231
225
179
233
178
206
204
206
226
259
204
212
243
183
175
210
193
184
232
216
174
213
262
149
222
219
234
179
219
195
206
253
245
192
171
198
220
195
179
291
174
206
176
245
219
225
160
154
157
263
228
274
260
213
247
151
225
103
200
138
195
228
160
173
191
206
197
184
229
166
229
232
181
239
245
176
156
188
155
252
201
204
183
186
273
198
195
207
227
190
239
156
161
167
144
156
216
198
229
250
226
142
168
203
231
247
203
154
217
242
272
255
188
137
224
214
221
199
203
212
150
196
169
288
227
203
218
192
155
233
221
179
223
205
228
171
208
153
160
218
215
200
153
180
213
211
186
288
198
187
179
231
153
193
201
228
207
260
148
124
210
217
233
169
233
184
201
211
261
231
273
169
205
205
242
182
209
224
195
142
174
132
217
219
200
277
177
222
202
176
213
242
241
199
209
214
254
159
180
163
180
231
258
205
246
159
183
245
206
246
148
234
135
198
186
186
127
219
199
176
188
238
272
194
233
232
167
206
241
198
250
207
214
166
195
177
208
210
218
206
196
157
151
241
153
126
138
181
228
238
199
225
199
161
198
175
215
190
218
273
213
238
240
210
137
212
201
190
220
214
214
194
191
242
193
178
201
182
247
203
211
184
197
194
235
203
194
193
146
281
169
168
232
236
202
183
180
192
229
162
259
172
163
199
141
163
214
219
237
205
215
155
215
198
189
206
144
233
177
156
209
196
212
219
199
217
248
189
230
173
138
233
266
203
129
230
183
211
190
255
188
187
197
206
132
159
230
184
234
180
144
256
201
205
207
198
185
198
179
183
169
212
164
250
223
198
199
175
185
242
182
122
197
188
222
128
227
202
221
208
182
220
231
219
244
117
221
220
258
257
244
226
137
162
178
261
189
223
209
244
200
185
137
242
181
204
239
206
159
183
206
189
146
196
213
238
230
142
187
204
184
219
200
206
146
202
144
154
179
230
230
170
244
224
239
176
228
218
210
212
223
242
210
154
233
147
217
132
163
200
220
232
103
160
146
238
187
192
217
238
216
218
215
163
194
198
194
228
225
200
218
251
262
220
171
148
180
201
199
171
224
162
146
146
161
233
194
209
192
144
200
198
193
205
238
288
221
172
271
221
158
118
253
156
233
139
183
254
238
188
221
174
219
221
166
192
142
164
128
135
257
207
195
190
194
210
198
181
159
192
239
184
222
199
239
263
216
167
200
195
204
236
166
217
214
227
235
196
165
194
145
239
110
193
104
278
234
244
193
225
216
212
175
202
198
226
217
184
220
166
166
192
204
276
220
160
187
222
153
162
225
254
194
178
270
225
247
223
151
170
200
200
205
228
186
225
190
167
193
225
199
288
216
137
220
196
173
212
187
209
162
187
188
222
216
222
232
155
205
227
205
256
227
251
157
195
156
216
189
171
127
208
200
206
212
152
157
207
192
209
218
226
216
210
166
146
259
210
185
161
235
248
175
242
176
204
195
248
217
208
162
195
195
231
228
202
269
192
201
237
189
238
212
220
185
220
112
271
208
244
144
211
203
226
227
223
221
166
170
181
194
225
209
185
162
158
152
204
190
203
126
191
201
184
200
209
262
187
234
152
154
190
170
191
176
165
226
222
137
212
154
136
154
178
167
234
148
230
118
214
243
172
254
204
159
172
186
259
203
248
224
187
195
192
176
151
207
103
198
181
220
226
214
216
250
208
233
296
207
184
95
201
195
236
185
228
192
168
197
216
214
232
122
187
220
177
179
200
172
238
217
160
268
147
207
206
165
187
237
236
154
236
179
218
190
119
234
263
216
221
218
240
194
227
247
149
183
190
192
203
163
220
236
171
212
177
221
214
185
215
196
227
162
216
243
253
242
245
184
165
196
207
205
202
245
208
220
204
179
235
200
212
162
222
221
208
197
200
159
182
132
222
217
172
218
174
230
266
174
266
176
256
197
181
231
173
202
159
197
237
145
207
134
158
220
180
116
87
206
132
246
159
195
226
222
205
164
196
201
162
203
195
218
177
205
185
206
199
232
220
249
189
123
272
191
260
194
149
205
179
181
148
174
151
216
212
224
205
168
196
269
159
163
213
242
268
246
223
241
266
230
159
263
155
179
207
162
189
249
195
206
213
219
225
233
179
180
169
125
162
181
200
148
210
205
203
174
211
185
208
198
121
170
195
207
168
213
240
257
212
230
168
124
180
208
168
233
169
230
218
207
213
213
194
193
216
227
115
180
229
244
196
218
213
173
198
236
242
186
252
199
152
185
203
251
243
177
138
244
99
240
265
210
95
225
180
176
204
209
262
257
249
160
249
155
147
187
178
237
178
188
151
229
150
183
133
156
206
200
131
197
225
170
228
221
161
195
235
266
165
212
222
150
127
217
168
162
171
163
243
168
202
143
205
158
161
220
227
183
158
236
172
189
233
227
169
208
149
159
222
230
230
173
205
183
192
230
204
189
112
156
197
175
185
186
201
208
157
238
228
202
269
182
242
228
173
205
196
135
274
187
140
236
188
225
169
212
126
204
211
183
212
240
151
233
245
227
187
219
235
173
183
209
213
168
161
138
202
188
163
199
265
142
163
229
185
199
225
159
234
179
205
279
148
223
206
146
238
199
164
174
202
147
190
252
240
218
186
200
207
171
239
231
232
115
171
155
180
232
198
222
177
179
125
229
204
204
214
193
203
195
241
177
182
185
236
153
146
174
178
234
205
211
146
204
216
227
160
206
226
208
259
208
215
228
243
266
151
229
232
132
241
220
213
129
223
118
160
255
140
191
219
128
164
256
215
292
192
232
180
251
161
207
233
227
232
221
258
190
226
177
222
219
170
192
246
207
148
256
242
178
244
252
149
241
223
235
194
216
209
162
170
185
196
198
246
205
160
212
233
225
171
192
205
171
179
217
202
176
217
207
224
158
222
234
219
190
176
204
168
214
219
156
277
208
214
240
202
165
135
188
204
189
137
181
227
183
254
209
210
237
197
168
207
251
250
254
177
189
195
196
190
210
168
166
197
211
201
241
222
217
198
225
282
193
235
206
188
219
210
239
229
182
211
194
114
183
178
243
228
229
240
213
189
141
155
210
165
174
240
157
275
87
212
226
168
181
215
179
231
190
110
180
235
157
245
201
264
227
201
183
233
236
231
211
176
182
260
240
235
271
205
201
181
166
202
168
161
186
176
159
206
189
237
210
128
170
182
206
151
215
181
230
190
177
229
253
234
212
189
187
242
205
240
169
199
215
185
145
212
206
247
149
224
190
213
234
230
215
185
185
199
216
211
236
228
238
154
185
217
287
208
277
251
101
118
191
226
222
173
203
207
226
276
165
244
226
164
178
167
212
249
211
238
121
179
219
230
200
169
160
214
220
205
190
182
195
188
233
193
148
168
232
209
154
225
195
198
200
169
182
209
189
178
260
203
213
224
211
212
233
200
175
168
213
185
158
238
226
160
246
207
202
166
216
164
211
181
177
156
199
233
209
231
197
244
233
171
201
192
134
173
209
151
188
184
231
220
163
270
260
167
162
249
203
150
190
127
212
224
205
192
221
230
220
224
204
236
139
209
226
237
159
231
151
185
199
231
207
207
215
201
208
165
212
181
184
252
250
154
188
251
201
247
281
224
200
250
255
188
215
179
232
231
198
209
206
219
250
151
214
216
164
187
195
199
182
233
192
202
193
170
249
149
142
244
215
161
198
168
194
224
231
240
210
138
115
242
192
203
199
229
212
249
194
230
179
196
252
192
169
224
216
186
196
176
235
170
177
249
178
158
192
188
148
207
223
160
170
258
213
190
185
159
206
203
167
233
275
195
169
183
147
200
225
214
217
203
193
209
201
146
249
190
201
170
211
180
215
154
201
179
192
184
162
209
210
118
189
165
161
170
221
202
231
189
208
161
259
233
205
173
152
222
190
194
243
138
194
187
198
207
246
235
204
245
236
213
143
216
247
228
223
199
231
189
183
163
177
227
217
196
251
211
236
175
227
215
188
202
213
173
193
202
259
190
191
161
165
261
215
153
199
241
120
193
146
227
239
230
171
210
244
212
217
265
128
186
197
177
245
205
187
203
220
247
199
177
185
206
163
241
164
170
211
246
228
265
149
196
248
218
207
178
191
213
141
205
205
154
190
183
181
194
238
219
201
227
213
177
211
228
193
245
189
210
237
201
186
219
185
211
256
132
247
154
251
199
219
224
205
156
194
215
199
224
137
170
197
215
238
194
215
157
194
230
190
146
221
217
181
186
224
140
258
237
200
200
170
211
157
171
208
196
189
190
159
216
205
158
195
195
180
144
139
198
247
219
136
207
173
111
209
255
147
121
224
211
157
202
185
168
216
140
131
187
238
153
176
248
180
242
158
209
151
211
168
255
150
251
200
247
211
199
209
168
264
215
170
176
217
192
229
188
212
196
198
172
213
232
183
240
232
236
199
226
190
228
192
179
150
175
192
152
171
129
212
219
228
181
161
216
137
227
152
166
228
279
206
196
216
264
162
196
260
191
222
172
189
196
205
201
147
181
159
205
221
242
212
173
182
234
231
231
176
181
170
211
196
187
213
172
187
235
254
202
193
242
275
171
206
152
253
194
236
215
220
190
115
183
148
198
161
216
177
183
102
181
186
203
151
185
210
203
203
119
266
186
201
187
197
176
254
219
207
214
192
209
236
129
162
159
181
143
247
238
182
152
205
188
171
205
177
188
217
238
165
186
182
254
219
189
192
201
186
157
234
262
172
233
189
167
189
235
224
208
212
184
208
245
141
230
194
194
175
191
184
183
129
250
173
191
194
160
242
210
167
201
222
222
173
261
182
167
196
211
207
232
149
218
219
173
171
214
194
165
244
202
222
195
164
203
129
186
217
191
207
147
190
168
158
192
165
215
211
223
196
171
208
248
290
172
179
229
209
136
221
210
152
181
195
165
222
221
182
211
272
183
147
187
272
227
226
218
186
183
146
179
282
178
219
147
235
216
183
162
106
181
205
217
229
221
242
219
171
199
226
217
201
210
215
285
225
189
203
182
201
219
194
202
222
200
240
177
121
219
217
250
193
158
170
189
207
185
218
227
216
231
170
226
205
144
145
226
156
200
209
183
218
220
190
157
205
139
184
207
185
243
194
181
167
242
227
165
188
283
156
238
212
160
137
183
214
179
220
184
190
189
222
194
204
198
164
252
196
160
226
190
162
257
193
195
181
194
233
186
162
218
161
227
165
239
174
161
241
211
154
190
205
161
171
243
183
158
198
205
266
202
191
238
205
215
189
157
247
242
259
175
190
218
212
219
219
162
192
182
206
204
197
188
179
139
188
233
204
146
183
153
217
211
209
157
190
159
135
120
155
210
222
211
197
124
256
229
164
194
201
210
232
201
207
180
189
138
193
182
209
216
253
211
243
238
178
174
171
246
207
236
172
191
210
167
214
207
223
216
150
157
142
157
186
207
241
173
232
231
217
199
197
203
264
208
180
212
239
197
178
194
234
201
225
199
227
227
213
173
194
189
168
182
232
161
215
231
181
251
206
262
169
194
180
147
189
212
208
168
177
177
173
149
214
201
165
213
148
207
226
183
265
145
203
195
239
198
262
208
146
195
164
190
219
200
219
252
208
178
215
189
168
209
164
229
246
116
150
197
176
189
218
161
215
152
241
227
247
192
201
220
250
185
221
239
206
188
207
162
213
229
168
230
219
158
182
162
147
200
223
223
142
189
176
230
91
182
185
145
198
192
272
202
174
129
174
229
211
234
246
232
245
208
199
212
152
209
204
175
251
170
194
202
241
211
259
269
259
215
203
253
190
217
178
136
263
220
241
214
232
132
147
228
256
154
137
225
187
171
148
190
147
172
201
238
180
171
143
201
195
221
231
231
173
232
165
223
233
156
182
198
169
230
211
215
217
191
222
250
228
178
163
270
165
222
278
253
160
251
209
220
190
227
177
207
253
228
199
274
185
180
215
265
193
228
189
144
204
221
221
212
157
213
252
169
188
210
175
245
184
169
201
162
157
184
285
227
209
244
257
223
197
168
221
223
218
225
165
164
147
253
179
186
133
156
203
184
243
233
221
166
153
153
240
159
208
223
205
145
182
138
155
168
193
142
270
218
226
175
178
207
217
164
203
223
216
202
179
145
172
196
215
195
208
165
171
197
189
239
152
186
195
227
226
224
207
232
260
180
163
165
211
180
171
235
179
120
183
195
180
186
253
231
186
212
256
115
205
177
204
213
153
207
202
247
182
145
197
195
234
213
215
219
228
224
167
179
226
173
249
169
153
276
180
233
161
215
171
180
179
260
236
262
249
273
169
154
233
176
146
219
170
206
204
251
216
265
232
222
259
232
157
221
182
213
249
183
198
175
169
193
209
193
231
157
264
184
175
189
204
203
130
212
204
230
202
193
242
130
221
279
276
208
171
196
201
203
185
170
227
239
252
179
226
189
179
198
233
155
250
176
209
171
160
119
160
200
216
182
222
226
245
227
169
256
138
205
255
222
224
211
126
208
165
181
216
210
229
168
240
185
170
193
183
192
213
212
194
180
197
222
213
242
214
219
178
183
213
211
219
186
140
195
230
187
189
171
227
114
202
187
209
260
249
157
177
180
230
204
246
211
212
180
216
204
187
235
132
173
89
200
185
150
127
199
163
195
204
170
251
211
150
221
143
253
208
172
194
157
217
194
147
170
173
210
198
262
184
210
177
158
196
203
231
156
226
204
205
226
145
193
180
224
214
187
197
188
188
218
230
188
227
192
224
218
211
199
243
166
196
254
179
196
209
183
238
242
175
172
217
184
200
203
160
148
186
201
141
202
212
194
198
239
171
170
201
234
246
235
223
197
230
177
277
195
185
225
179
195
220
207
193
233
190
231
178
194
186
213
171
215
226
159
203
216
217
236
179
146
220
200
209
179
164
192
220
143
195
287
245
223
222
213
185
154
253
167
190
199
182
254
136
210
234
241
174
142
158
252
198
185
204
209
198
183
244
225
167
165
265
197
156
256
199
227
176
151
223
221
226
207
183
212
229
218
210
195
225
156
168
222
217
251
206
198
151
200
179
206
189
192
216
260
272
162
216
236
177
242
193
261
225
199
182
223
137
237
239
199
218
182
177
165
182
187
174
245
217
185
203
185
190
209
180
167
164
169
197
220
227
238
221
192
192
144
203
172
202
222
226
161
168
230
178
194
203
187
207
218
198
205
199
186
160
177
225
213
208
176
224
241
174
134
161
179
207
240
197
226
155
208
150
217
194
141
185
225
193
126
197
172
196
178
235
230
155
250
173
243
171
243
186
211
179
226
144
182
219
167
195
161
245
196
223
232
160
178
169
211
190
224
204
241
185
141
265
233
222
190
207
166
165
156
227
200
253
155
203
207
146
100
194
181
193
203
196
176
258
182
188
204
151
183
189
190
158
137
171
214
229
177
215
176
221
214
173
209
206
175
178
144
190
227
146
168
188
161
150
171
184
212
166
198
147
226
229
183
214
186
225
183
179
168
153
259
204
202
245
210
228
203
218
157
206
250
213
201
210
166
192
193
232
181
228
177
194
213
206
161
177
145
252
184
190
164
184
202
239
245
237
218
204
191
198
165
130
257
239
163
182
267
202
261
208
248
227
178
173
168
220
237
194
211
189
213
176
150
155
200
213
209
107
182
164
214
153
188
235
247
218
230
172
221
221
168
231
189
196
216
155
225
194
176
151
217
221
199
147
179
226
228
232
104
234
200
179
170
130
232
199
246
204
171
157
185
114
242
175
165
183
131
208
233
205
202
172
254
213
197
212
220
236
167
172
189
146
209
238
220
242
216
252
208
237
179
200
193
233
195
222
174
194
188
201
161
207
223
151
161
139
195
174
181
250
177
205
216
148
233
201
264
218
208
165
143
165
230
196
210
169
250
276
225
200
185
219
224
231
227
243
163
166
243
151
222
204
222
166
206
158
187
132
209
145
170
187
180
211
197
229
236
168
206
235
208
193
207
219
248
223
212
188
180
210
185
225
152
163
196
201
165
183
214
199
194
286
242
208
203
191
179
166
135
203
221
251
202
220
233
264
185
204
228
178
227
169
163
150
137
203
206
128
251
263
192
150
250
182
209
268
166
220
167
211
235
231
210
203
204
232
238
217
249
216
227
234
166
117
153
157
230
182
192
173
227
216
189
203
177
218
200
171
210
209
186
239
225
229
153
217
146
261
121
222
153
210
235
149
182
202
246
238
224
177
221
228
183
248
166
194
221
225
202
158
188
186
190
218
236
186
229
236
210
213
207
242
227
190
234
230
147
144
180
229
175
243
277
220
238
239
188
235
259
176
181
211
213
227
192
202
164
219
209
235
223
185
213
158
195
212
145
203
140
161
208
194
150
221
172
224
217
212
202
204
182
153
198
161
235
235
224
239
272
179
226
225
197
204
215
210
224
237
230
239
206
238
227
199
224
194
231
262
210
193
125
197
245
213
151
144
249
196
237
210
136
200
202
213
275
193
241
234
225
206
207
227
197
214
204
262
230
224
186
212
216
195
230
192
167
152
213
235
179
220
175
190
207
237
211
183
165
269
232
165
204
177
188
249
227
184
152
175
260
185
220
199
183
181
162
215
247
200
220
184
207
225
163
206
195
203
176
187
191
155
259
210
169
264
224
207
189
211
198
200
191
137
209
124
219
172
164
144
181
194
167
254
169
189
271
223
203
179
231
230
254
156
187
234
221
245
211
193
178
217
208
167
186
228
226
136
237
219
252
176
202
215
237
181
252
218
157
219
182
280
204
123
173
206
200
195
174
256
258
242
223
166
224
212
207
201
209
168
183
247
170
245
179
235
238
232
219
181
185
176
201
160
228
218
162
193
215
153
211
199
162
179
241
201
191
214
202
297
144
170
222
150
239
193
174
177
203
240
245
229
229
231
182
196
223
165
230
231
263
192
149
126
245
221
222
196
182
235
136
177
130
153
191
220
181
182
229
188
209
247
199
205
177
185
140
196
174
210
183
176
231
134
187
230
140
203
150
229
193
159
201
137
232
186
159
148
243
202
174
234
206
175
264
141
231
226
184
190
225
194
243
135
173
238
216
191
194
226
183
202
176
154
246
248
217
213
169
215
132
267
198
223
245
163
286
223
202
153
126
229
208
183
205
195
175
183
197
204
191
244
164
206
206
218
212
194
184
242
252
202
220
193
235
172
182
160
199
149
235
250
156
205
223
210
201
192
208
218
215
246
202
159
142
233
163
236
196
162
181
203
193
187
179
260
244
181
206
227
262
183
214
204
227
178
207
166
152
167
161
176
271
129
168
217
233
147
186
237
179
207
184
127
201
194
179
195
142
170
210
228
207
228
174
191
215
200
256
238
213
151
209
207
208
284
208
190
205
180
136
265
204
217
164
245
187
164
188
233
122
169
205
183
195
205
224
233
240
228
266
230
159
303
170
191
207
222
211
173
167
237
237
156
150
193
223
224
218
187
221
214
229
135
254
191
191
212
182
245
243
140
164
238
249
234
251
189
185
254
209
184
217
255
152
213
223
161
234
207
201
229
192
185
180
239
163
205
237
242
183
261
192
247
206
166
214
117
155
221
217
170
166
206
119
236
234
268
223
215
235
218
222
196
102
213
276
161
163
218
131
141
190
203
215
174
186
178
219
130
117
192
196
148
251
183
155
176
155
185
259
227
213
208
225
227
155
203
256
248
212
217
211
196
206
247
196
228
180
248
184
197
199
163
181
210
165
144
242
227
125
209
208
225
184
242
214
204
213
143
228
243
186
256
161
232
158
228
282
202
197
202
233
212
202
208
250
191
162
196
178
264
170
170
218
190
199
177
154
195
214
130
209
223
179
250
269
164
187
186
186
282
175
162
246
214
196
154
178
163
166
191
207
186
183
288
157
139
197
184
265
228
178
200
179
182
189
169
216
181
199
223
229
223
238
232
194
169
239
245
207
184
190
263
205
183
196
218
172
204
218
222
222
160
133
207
236
206
167
140
201
208
242
244
268
233
258
217
150
181
207
225
126
173
249
291
157
257
188
174
158
249
174
189
158
222
168
196
231
228
198
244
175
177
200
181
140
206
188
220
237
142
216
187
131
171
171
172
254
209
238
176
179
203
209
247
199
211
180
168
161
222
261
160
221
156
235
197
158
242
132
215
197
168
221
194
193
221
281
243
178
141
223
160
253
133
242
158
255
196
222
209
243
195
230
244
233
255
220
216
237
200
163
199
247
142
164
183
200
144
139
243
234
178
189
196
200
180
188
184
180
209
174
146
226
265
204
188
199
253
200
152
143
184
214
225
263
182
205
205
164
214
225
170
208
241
214
200
158
138
206
278
214
160
250
197
187
177
197
151
184
236
203
269
218
162
233
240
195
153
211
223
220
137
254
127
228
244
154
204
244
138
199
158
220
222
184
279
142
187
165
207
144
229
253
214
248
180
249
198
247
245
230
186
210
198
228
214
221
178
216
170
189
188
210
248
197
194
193
224
223
177
103
234
198
222
152
153
230
124
195
177
183
212
210
199
217
242
169
203
180
213
177
249
226
190
168
206
200
150
223
196
184
237
170
215
228
204
164
211
166
225
204
183
250
161
234
187
260
232
180
219
216
175
202
239
190
236
223
180
189
207
167
213
185
181
145
127
195
174
200
198
199
248
213
191
223
167
213
242
228
246
130
189
219
144
219
215
257
224
232
220
240
225
200
177
211
151
208
126
191
193
197
195
192
199
210
220
241
194
189
207
202
151
151
250
163
170
201
216
225
240
245
169
220
175
214
212
232
232
183
216
181
217
170
211
200
222
196
206
196
179
232
201
201
224
236
187
217
193
212
151
225
244
148
180
234
193
239
223
182
175
209
198
185
181
104
176
193
228
250
223
225
176
173
184
156
262
208
259
213
205
203
179
184
196
186
244
155
264
248
121
195
188
189
247
174
164
203
197
223
188
208
152
212
184
229
245
167
147
211
267
188
171
263
208
159
226
176
152
243
158
190
232
144
225
209
219
220
218
166
278
181
124
153
164
128
254
233
223
170
147
249
198
203
173
180
200
195
203
131
220
185
207
191
225
150
177
196
263
135
227
221
153
173
204
177
220
204
169
200
189
169
214
187
249
162
173
173
208
215
271
148
190
151
129
184
177
230
226
206
233
212
192
153
225
192
178
278
151
208
227
209
169
220
186
223
215
218
243
127
239
209
230
169
201
179
200
208
162
171
215
196
209
221
152
190
147
212
205
185
201
271
172
181
260
156
179
156
209
199
224
213
183
183
220
229
211
232
175
207
222
203
220
223
211
151
184
179
181
156
200
194
226
234
212
180
207
254
199
212
210
181
190
202
149
251
226
217
116
178
152
163
171
175
262
234
227
205
238
212
112
209
204
199
169
180
185
170
152
198
187
211
173
183
175
267
253
223
240
173
202
220
220
153
219
230
268
166
159
228
240
255
216
161
193
194
193
146
219
219
245
181
176
180
237
158
180
203
177
209
181
192
214
154
187
248
204
214
238
211
225
236
199
226
187
157
211
227
149
242
172
108
193
200
179
192
186
225
129
207
226
240
176
168
204
173
166
197
162
198
220
212
173
230
163
203
229
198
196
213
210
217
212
232
214
146
211
231
214
153
184
162
203
203
268
232
115
188
216
222
186
166
213
211
256
202
161
188
173
208
216
222
198
211
258
156
223
194
188
216
180
180
222
149
199
242
177
218
165
218
232
204
138
190
206
131
192
162
233
203
190
166
235
258
218
260
207
213
237
160
194
197
183
213
225
185
219
180
210
240
138
144
141
191
212
123
166
211
217
220
207
207
254
177
221
194
144
234
184
229
171
185
180
241
188
226
270
227
243
141
220
201
205
222
189
178
226
281
238
272
213
199
128
247
176
222
271
197
211
268
230
141
177
209
209
191
218
193
238
198
216
213
234
205
219
177
252
211
183
189
191
176
233
167
181
188
196
171
225
201
192
232
212
191
215
158
222
238
204
206
258
121
262
187
166
200
164
266
187
210
203
172
197
252
158
163
183
182
159
247
179
119
164
147
194
179
113
135
207
226
202
173
213
237
209
199
157
212
158
206
135
196
207
242
252
217
192
242
191
187
267
188
220
176
205
221
252
128
207
240
176
193
186
268
181
146
193
210
175
224
221
280
179
172
248
200
189
239
209
281
207
193
179
184
194
100
219
143
192
183
226
207
193
177
222
204
159
195
193
217
195
215
239
249
245
149
224
211
197
182
154
252
201
224
256
194
232
213
235
209
194
230
178
164
205
164
240
175
185
227
158
200
263
269
198
195
235
244
196
129
153
232
205
283
182
235
208
202
217
211
218
156
246
243
225
184
203
251
177
133
119
152
214
144
189
189
161
174
197
171
243
169
206
260
212
243
205
174
232
206
184
230
196
194
190
184
190
185
163
237
216
203
172
260
217
201
169
181
215
152
206
225
180
218
220
196
210
204
199
192
224
187
169
241
225
212
176
183
198
211
225
187
206
231
222
243
161
216
218
181
168
165
236
186
229
229
224
254
179
169
148
191
222
244
279
228
246
201
202
180
191
184
193
207
222
184
219
171
247
184
234
236
242
137
199
212
237
243
213
211
219
240
164
177
212
189
190
238
215
198
191
213
200
207
192
236
183
227
195
178
195
223
217
181
209
119
153
205
199
135
183
195
178
186
250
174
194
232
175
206
136
230
214
223
254
226
230
204
214
186
176
177
254
195
184
171
165
212
202
203
179
208
231
223
186
219
247
267
150
206
232
171
185
273
185
209
232
228
165
190
219
189
208
164
162
219
231
174
196
200
222
196
195
177
249
236
183
190
198
210
212
191
187
222
202
200
226
220
191
173
226
210
207
221
154
207
197
232
252
198
197
224
200
136
159
229
146
178
238
255
133
235
251
192
116
219
149
187
209
167
163
226
256
132
198
116
212
177
219
237
228
171
233
178
197
281
229
178
235
117
232
209
152
244
179
178
185
179
200
184
231
230
149
229
204
215
219
173
195
192
136
167
228
234
232
163
197
128
204
189
199
222
172
251
195
302
221
213
175
143
189
157
193
198
176
241
182
241
262
224
213
226
180
219
244
115
123
202
236
265
239
208
255
213
179
196
211
204
173
191
253
175
200
263
233
295
248
212
181
239
224
129
220
260
122
185
174
156
231
149
189
237
154
228
202
179
204
191
248
202
223
171
225
182
209
260
145
162
200
211
162
232
182
151
197
237
188
129
226
201
254
164
246
189
201
185
118
211
285
187
217
195
201
229
248
249
160
157
160
221
213
148
220
218
200
180
222
247
175
193
153
223
219
135
218
183
178
248
191
215
234
167
197
189
197
245
162
231
161
202
213
244
204
149
170
121
165
209
181
225
179
237
187
235
161
177
194
221
155
219
206
225
115
178
195
228
196
188
174
228
194
136
251
143
194
161
171
179
242
203
231
173
157
202
158
223
186
138
143
204
219
167
219
192
242
229
196
163
222
144
141
154
226
154
191
188
194
268
213
200
144
185
183
165
257
197
224
199
144
183
194
255
219
179
268
209
260
202
232
198
181
182
160
174
180
187
176
132
200
206
237
193
118
188
167
137
172
241
190
157
202
209
240
150
218
237
179
236
175
189
200
155
210
221
233
198
227
165
221
222
178
175
222
205
182
200
191
155
228
211
200
172
203
166
221
175
142
194
179
215
198
165
285
215
230
174
229
203
185
207
154
196
280
181
217
142
235
131
199
207
172
178
168
183
217
158
162
209
213
228
218
163
128
166
231
221
202
190
207
237
165
161
171
169
233
180
190
263
231
191
197
169
199
206
158
108
247
155
288
179
124
176
204
173
172
212
187
269
197
222
200
224
193
213
222
154
265
205
211
228
271
207
230
213
238
246
244
145
192
173
232
142
142
156
215
221
197
216
191
237
225
220
153
149
267
190
149
180
174
159
211
196
145
237
251
112
201
227
184
161
197
219
157
213
203
200
157
221
161
215
203
204
209
211
211
220
140
133
158
193
188
249
164
202
194
232
205
199
219
195
232
173
213
276
205
204
159
235
209
219
188
220
225
214
176
212
169
228
186
184
168
193
210
191
153
193
155
205
174
278
226
211
192
234
168
255
168
205
206
172
229
140
251
135
210
209
228
131
192
263
167
215
216
160
188
201
181
178
169
201
237
175
218
172
199
232
189
185
192
190
198
184
226
204
212
269
217
223
268
105
224
199
206
210
222
222
186
179
226
170
163
220
167
131
207
226
215
152
155
180
158
200
179
146
207
234
229
198
204
235
154
198
243
196
227
236
177
133
232
177
220
193
187
191
181
188
167
227
215
189
255
224
151
173
195
175
256
211
278
219
181
199
224
155
132
243
239
176
165
206
212
221
153
198
223
188
193
150
190
181
170
224
247
205
169
182
158
219
167
231
188
118
204
189
187
181
218
159
158
267
170
183
174
222
178
195
229
227
162
196
184
231
177
184
158
210
160
192
265
204
164
212
167
202
229
179
173
231
133
273
216
177
234
191
148
230
233
161
203
227
236
151
160
214
159
172
190
209
216
223
169
206
262
204
173
168
263
191
177
237
238
143
268
274
138
217
217
229
162
156
186
128
153
222
195
162
170
247
172
210
162
240
223
152
191
213
135
222
161
179
190
208
198
217
212
182
149
242
263
213
188
169
137
203
193
202
163
234
180
216
196
201
222
252
219
186
149
239
219
196
175
185
174
169
184
239
223
257
201
204
220
227
236
137
221
175
189
148
240
176
162
201
198
220
241
207
172
201
182
197
212
205
212
164
168
203
209
230
157
211
210
166
124
220
192
193
165
214
182
234
208
210
217
160
252
122
232
209
189
231
181
225
179
175
178
206
231
190
182
224
148
172
263
214
228
227
171
203
234
248
196
259
143
189
254
159
212
220
192
239
183
199
182
165
189
193
192
255
252
220
232
106
242
213
220
192
237
231
219
137
233
152
196
205
196
200
184
175
185
223
204
210
216
145
208
218
221
189
256
159
208
190
193
188
184
163
236
246
125
206
193
208
249
238
180
177
207
138
258
195
184
235
199
220
136
200
147
207
190
206
208
259
206
169
191
194
178
197
212
198
213
276
184
216
166
228
203
220
182
142
175
248
270
127
238
192
143
255
201
249
186
208
230
218
165
211
158
208
209
177
200
201
269
198
200
142
209
196
198
206
232
166
229
209
164
164
154
180
254
220
214
182
194
131
191
178
215
164
212
147
244
203
211
207
151
216
216
143
234
245
200
242
270
247
182
202
200
244
170
192
261
240
207
237
203
226
233
270
230
159
216
134
210
177
215
189
125
155
177
193
179
225
215
200
225
255
231
240
206
208
221
191
149
163
222
240
229
211
197
168
239
254
154
160
162
231
225
179
133
168
143
221
227
206
148
149
133
117
221
222
158
225
206
241
170
154
271
207
134
186
166
195
211
222
209
212
251
214
245
239
225
243
255
150
177
219
219
163
246
272
231
202
189
222
216
209
171
216
144
131
252
225
204
209
211
247
188
256
188
197
225
142
194
176
205
217
185
171
129
221
190
201
133
228
178
241
260
154
201
201
267
260
209
212
209
227
196
195
208
187
155
219
260
153
226
230
161
256
108
255
213
295
178
210
212
181
186
217
193
225
168
185
255
199
159
197
210
213
207
183
202
226
194
210
100
212
220
202
213
262
203
233
227
113
201
219
209
229
145
159
196
202
234
185
165
197
202
173
164
159
252
265
220
226
128
204
213
226
218
188
271
188
171
205
201
155
186
169
224
142
204
152
271
180
152
194
191
241
179
166
171
180
171
168
149
178
221
203
176
195
214
263
200
232
216
180
152
186
160
198
210
173
207
196
210
203
155
191
250
189
237
187
210
115
177
159
158
208
162
213
211
210
275
214
197
192
141
201
157
216
210
220
241
169
149
184
177
201
125
171
219
226
192
197
136
171
107
169
181
174
255
200
202
204
187
211
269
200
168
227
190
211
146
210
210
213
249
224
190
230
238
140
227
165
195
238
209
233
199
277
214
229
222
218
195
221
204
189
238
195
170
254
183
206
203
238
173
232
205
183
123
208
219
247
203
224
193
184
250
163
194
236
229
248
220
198
174
154
252
162
236
184
163
271
217
105
211
149
242
229
196
240
186
140
191
223
262
281
147
214
216
202
263
159
231
235
203
217
165
190
156
219
197
207
236
259
170
117
159
178
210
155
158
205
190
145
154
270
180
138
271
156
178
160
206
221
239
211
149
156
159
190
232
157
152
168
191
209
166
214
236
219
174
201
244
244
199
206
201
244
242
184
238
176
162
223
122
210
186
222
199
123
208
196
134
209
216
129
221
178
258
243
171
197
172
250
305
210
201
195
233
213
207
201
188
201
205
187
246
204
245
179
212
206
141
246
197
173
183
237
169
188
292
158
195
234
234
153
176
221
219
188
213
221
199
143
250
211
169
197
237
195
223
257
190
198
149
194
208
207
194
185
215
231
232
253
216
72
232
223
242
223
164
218
216
208
191
234
248
142
175
226
200
284
218
146
223
205
176
215
231
161
201
221
218
238
193
244
250
191
147
199
224
244
214
238
201
206
167
199
226
176
242
169
191
272
131
204
166
170
189
219
153
237
190
207
216
175
216
218
231
198
172
159
166
239
176
236
285
139
192
168
226
161
230
160
182
194
94
193
216
229
214
221
218
152
176
208
191
122
200
142
166
172
188
227
165
256
237
202
193
199
180
235
230
225
229
150
233
212
180
170
239
221
187
235
182
172
195
202
192
211
158
221
173
138
164
154
183
212
214
165
237
191
210
256
160
169
219
188
249
203
198
257
193
190
157
191
221
225
186
269
237
208
277
233
296
186
109
220
216
156
188
201
229
128
201
182
214
246
178
191
216
230
213
243
266
212
203
235
167
118
195
264
215
218
248
177
224
261
219
228
190
166
218
176
185
189
221
160
158
209
200
169
188
216
191
176
176
191
179
267
159
188
169
192
245
144
269
206
157
265
211
251
202
201
193
224
179
183
165
208
163
181
248
195
276
183
181
207
198
192
180
230
167
239
242
225
224
230
210
160
215
180
202
269
177
264
158
183
230
161
201
217
245
199
246
175
219
235
179
162
183
214
221
199
165
191
154
170
222
225
229
223
275
227
199
248
261
218
153
199
178
195
212
194
147
163
235
207
184
144
164
198
190
223
194
185
168
174
207
217
221
199
239
259
134
225
219
263
180
238
209
224
206
201
205
204
172
229
160
151
245
208
173
240
223
201
138
178
202
200
249
199
209
228
184
168
164
252
177
216
188
125
178
202
200
181
239
166
222
181
223
201
195
197
146
274
191
160
191
271
215
197
207
188
278
163
197
218
225
150
165
247
192
237
198
150
224
227
218
205
223
214
207
211
176
236
223
176
247
203
194
220
127
153
226
188
227
217
189
185
174
196
150
199
203
219
222
198
227
225
273
243
207
217
215
232
205
195
221
192
245
277
186
208
221
213
227
217
185
200
210
180
198
184
232
196
258
203
190
213
193
280
187
227
237
265
155
153
188
215
200
218
200
151
250
214
232
188
117
216
236
173
142
174
162
272
183
196
161
118
188
215
160
225
165
218
143
257
239
210
191
164
213
142
99
150
205
231
178
220
232
251
171
239
201
187
183
145
189
174
143
158
175
205
221
124
181
160
218
194
145
195
226
247
209
176
253
166
223
180
180
177
193
180
177
197
242
183
185
223
234
195
222
198
150
271
200
204
180
190
209
204
196
193
239
185
241
154
157
161
180
171
194
198
175
191
170
270
175
190
229
217
215
166
221
166
138
176
201
262
175
200
213
91
164
254
222
174
221
211
200
209
203
194
279
136
191
163
220
160
210
239
212
235
226
163
182
256
186
193
176
224
170
173
206
205
135
238
202
197
248
187
157
249
191
239
207
198
193
210
199
264
200
153
214
179
195
272
130
195
171
225
220
190
220
184
211
88
189
229
216
188
163
179
251
226
158
153
210
187
172
234
170
156
246
158
230
202
171
189
134
188
251
121
152
220
212
149
164
140
179
114
187
204
201
158
186
205
156
212
156
199
258
233
186
202
176
147
157
222
230
246
213
185
132
173
212
226
205
192
178
203
135
182
165
183
174
211
162
209
146
227
185
241
211
183
240
118
203
226
175
205
210
213
192
201
224
179
163
218
190
219
182
229
247
242
216
202
215
201
211
192
216
259
201
256
250
216
209
169
200
133
200
205
234
175
204
161
205
234
171
194
241
178
256
178
179
156
204
143
178
212
225
190
189
184
217
264
120
189
198
259
169
224
193
254
232
199
161
207
216
171
154
174
150
212
213
205
230
161
206
221
238
234
158
171
225
211
181
182
205
245
263
181
171
226
165
195
209
206
186
224
218
234
175
224
205
165
219
207
203
168
216
161
189
172
183
242
163
196
212
223
189
198
205
258
179
217
177
222
201
217
182
225
212
204
212
186
175
246
219
181
183
217
225
213
200
153
170
174
180
226
198
222
142
192
203
167
185
236
175
200
201
185
199
263
236
205
247
203
171
188
172
123
145
187
109
205
200
229
190
241
211
163
180
250
207
202
210
198
189
202
156
175
203
204
264
156
202
194
188
161
189
124
181
217
140
204
208
253
230
221
214
225
212
212
172
216
202
196
239
234
251
214
229
236
188
216
215
210
217
258
148
223
158
132
232
208
153
201
241
195
217
154
190
220
224
225
243
230
176
158
172
252
211
225
196
119
191
197
170
168
199
189
181
209
255
194
192
250
200
118
199
174
248
214
103
240
218
228
215
214
167
158
233
182
207
214
229
159
124
194
195
208
199
117
230
191
247
236
169
245
212
255
191
212
220
252
229
220
168
234
202
190
242
221
254
115
184
175
233
129
228
194
238
213
229
133
189
200
197
222
215
184
129
190
176
240
131
244
227
178
163
197
203
229
207
155
207
241
226
205
254
204
217
178
210
182
197
223
256
118
129
149
202
175
165
99
233
162
234
181
194
210
214
181
287
162
215
175
201
184
214
143
160
157
232
175
261
245
210
174
177
221
235
186
241
185
225
211
152
207
219
231
178
213
148
213
153
171
218
241
198
243
138
198
228
220
251
201
190
184
189
205
185
175
200
176
233
207
154
196
266
146
212
215
195
235
190
256
192
147
211
286
250
200
195
204
204
227
165
243
212
191
236
210
243
201
247
211
209
196
213
173
138
162
208
193
195
197
133
231
222
215
254
196
144
197
214
241
190
153
149
174
195
216
200
215
218
193
249
239
239
214
208
219
172
218
172
203
244
217
201
218
204
170
180
118
256
210
181
179
206
168
158
177
162
202
193
208
185
166
243
242
248
228
159
243
187
203
116
145
198
212
169
195
204
215
223
223
215
158
252
206
224
218
202
237
199
248
185
198
165
248
182
236
199
182
195
213
122
243
242
235
176
236
164
234
206
147
182
261
186
186
194
220
223
199
160
239
180
178
219
213
236
197
194
215
211
214
188
159
237
266
180
177
259
212
227
198
166
205
213
187
141
173
194
219
179
228
230
182
227
199
175
209
162
226
193
181
188
205
196
253
201
246
228
136
182
186
202
185
258
130
190
181
138
248
209
220
161
254
177
131
168
228
217
219
227
208
191
249
201
218
190
231
233
222
190
132
221
196
237
185
184
174
265
207
187
199
248
249
104
260
214
182
150
168
143
243
177
224
200
181
116
230
248
173
157
148
195
234
205
159
161
215
220
158
131
213
213
212
210
201
246
127
173
241
194
202
244
240
160
217
210
125
231
184
214
203
175
192
181
180
171
85
246
284
221
137
134
200
187
113
133
227
106
225
227
181
168
206
166
195
170
187
252
206
256
202
152
190
147
209
109
250
239
262
146
163
146
154
155
122
208
247
239
169
240
129
135
182
179
249
211
242
189
244
283
255
165
232
119
256
153
248
161
273
244
204
209
187
174
144
183
174
143
217
155
191
194
186
192
209
138
167
188
175
154
182
221
222
223
158
167
186
200
190
262
162
166
141
280
167
223
245
244
168
225
241
224
167
199
182
186
219
137
202
161
201
178
204
198
225
135
257
196
171
194
218
199
255
206
120
215
175
203
144
244
252
188
174
166
207
183
180
234
166
179
185
166
281
189
265
238
159
178
224
237
212
230
192
216
251
170
207
207
274
205
229
239
153
181
195
165
254
155
175
174
268
214
208
213
176
211
152
205
215
219
240
176
207
171
162
179
230
229
196
274
177
235
160
216
197
205
256
191
157
202
152
214
236
265
130
216
179
208
248
161
199
208
152
174
229
198
216
192
234
221
167
107
163
170
153
213
232
209
240
159
214
249
199
194
182
227
157
190
194
213
133
207
209
214
179
162
155
150
197
231
194
183
200
220
235
182
149
229
168
183
168
214
238
213
195
217
146
194
205
205
200
166
198
171
210
181
145
234
245
201
214
190
220
243
252
189
186
181
273
195
269
176
147
201
167
182
241
182
258
149
230
173
215
158
211
223
189
216
234
150
176
252
200
199
192
216
180
141
240
231
141
149
188
154
223
177
141
247
195
185
229
174
227
164
228
216
229
189
207
226
187
197
213
178
186
225
194
242
226
205
213
178
201
224
188
204
242
177
246
248
257
197
215
177
105
209
185
203
174
192
133
219
235
195
204
221
141
216
203
186
179
183
172
219
185
185
212
260
267
194
195
150
180
220
228
184
168
238
164
257
197
200
232
187
229
209
243
227
207
280
252
192
208
184
141
197
205
180
127
195
165
155
202
220
177
185
208
173
166
228
227
128
222
141
230
214
257
174
125
216
173
241
153
193
216
232
233
195
148
239
160
186
200
214
239
227
199
181
254
198
192
204
206
199
228
224
232
231
225
164
166
153
196
150
209
216
227
171
162
161
236
209
222
142
250
268
173
214
184
186
218
180
205
179
240
213
156
240
198
193
218
209
229
276
181
198
226
243
183
127
199
194
202
171
230
116
183
185
222
186
248
197
248
236
193
280
158
190
156
227
105
207
200
220
106
184
195
217
224
250
201
193
199
217
200
183
228
192
200
215
203
226
161
144
227
206
212
212
191
151
247
198
207
268
184
193
152
170
167
224
252
193
240
213
252
226
216
141
175
215
161
217
188
151
198
194
179
226
219
177
231
218
144
221
221
210
165
220
210
199
218
173
196
252
187
241
194
211
236
217
167
246
176
188
258
158
123
178
168
233
151
260
215
208
224
192
121
181
222
207
168
223
157
196
170
200
163
126
234
179
185
202
236
195
178
214
182
195
144
241
185
198
219
224
159
226
224
156
257
206
226
204
155
191
160
265
196
198
208
210
177
237
219
238
215
195
229
193
215
242
216
230
195
240
170
150
223
193
189
198
202
230
220
103
190
233
226
209
249
162
199
218
227
173
196
185
156
174
217
268
208
242
193
229
243
240
230
194
195
129
231
210
180
187
192
239
180
182
199
216
239
183
214
216
217
180
209
166
216
215
217
219
257
246
253
115
185
253
156
218
139
237
243
200
148
222
177
251
208
187
145
149
115
214
242
189
202
249
199
168
212
196
225
204
200
182
186
164
185
209
207
213
167
242
194
239
188
198
180
199
242
188
172
186
196
178
186
96
168
239
189
192
210
249
208
238
239
224
182
222
194
171
171
167
192
216
228
228
265
271
232
224
234
159
185
184
226
201
214
176
174
226
164
174
128
173
224
188
225
225
230
158
174
199
211
276
242
245
147
180
167
222
181
215
220
206
197
149
161
207
182
186
202
174
259
236
175
146
169
183
205
221
160
231
169
210
202
211
206
240
206
211
257
191
199
229
232
217
221
189
202
193
191
110
164
231
254
208
144
203
235
223
217
202
223
183
206
191
188
226
190
214
199
263
168
197
141
206
209
168
196
230
171
228
221
207
228
231
247
232
242
138
222
198
226
186
183
201
187
144
230
166
233
261
226
219
196
167
217
178
189
167
210
194
184
164
281
224
183
172
216
220
196
171
185
282
140
197
181
210
167
259
238
188
223
171
198
260
192
128
194
161
178
189
227
192
176
227
161
140
205
187
149
241
191
177
241
187
182
178
163
194
217
204
210
224
206
235
234
218
201
177
220
184
221
228
180
220
188
192
210
266
261
183
170
198
180
151
180
157
273
219
236
229
124
225
143
235
164
255
197
174
161
148
229
157
209
188
180
179
200
187
168
211
233
162
210
175
220
126
213
155
217
224
195
215
180
254
227
172
187
176
179
113
175
233
238
223
234
225
229
206
186
127
191
240
229
192
229
179
188
209
238
168
225
181
203
176
286
189
207
218
203
242
192
231
187
189
221
163
227
201
222
157
209
187
232
230
179
186
127
206
226
236
234
262
182
220
144
269
225
239
263
236
205
198
173
205
221
242
207
218
154
155
212
188
270
239
139
204
171
212
291
165
205
238
161
186
221
203
205
231
204
161
157
232
277
232
184
172
141
201
150
206
237
184
163
187
218
191
176
259
192
164
192
196
229
166
155
145
168
204
196
160
166
202
204
230
184
227
228
224
186
140
136
231
197
189
173
208
193
247
170
178
189
213
186
185
242
176
217
178
152
206
227
142
258
195
202
157
197
216
236
157
197
172
178
184
191
204
171
269
184
215
217
178
133
170
191
202
197
202
203
227
167
167
220
235
203
224
206
177
199
208
194
233
128
171
194
176
238
210
207
180
218
172
196
147
210
150
192
200
189
179
267
203
183
186
210
237
183
173
239
179
205
161
202
176
134
216
195
233
169
231
213
218
186
205
204
145
182
210
225
225
181
235
178
179
239
203
140
221
183
173
163
215
187
177
246
221
164
138
131
172
188
192
131
203
217
236
201
200
198
161
231
199
198
198
138
172
236
215
174
228
233
220
205
180
234
218
257
245
255
176
238
219
180
227
176
184
227
175
141
212
179
234
186
155
197
221
122
244
182
236
201
205
203
228
184
237
167
208
151
183
204
201
209
227
228
194
149
266
148
183
157
218
236
166
142
212
288
266
224
171
208
179
207
218
217
191
197
166
244
232
200
194
201
133
185
238
233
203
221
235
211
173
216
160
194
173
169
214
196
235
213
167
195
248
206
198
223
155
230
137
172
134
189
180
194
166
156
161
139
172
239
183
172
157
181
202
206
211
193
253
166
184
186
246
186
197
279
219
262
210
231
193
200
228
150
206
242
168
213
222
169
226
143
223
191
241
212
212
225
223
215
241
229
196
210
215
124
210
191
158
134
214
177
201
178
215
213
208
245
233
199
204
187
167
175
163
167
267
223
220
192
193
161
208
215
167
274
253
239
224
203
169
207
212
217
206
226
219
173
218
207
177
213
201
254
231
231
193
231
202
200
219
175
164
190
220
217
184
192
267
219
192
254
238
225
234
271
208
157
178
165
189
203
200
181
165
223
214
191
213
232
176
197
206
213
168
154
218
183
194
168
244
158
178
176
170
215
167
243
207
248
196
238
139
186
184
223
132
172
210
214
200
226
199
272
125
168
220
241
193
205
206
193
219
179
174
162
134
167
230
278
189
151
185
235
244
184
193
164
218
147
198
217
149
185
211
211
190
185
184
230
219
174
209
196
159
174
227
243
175
216
287
118
232
207
173
179
167
210
184
165
208
187
227
180
223
284
156
218
201
201
193
235
135
200
222
208
242
222
226
142
185
223
237
197
245
221
226
179
162
192
210
180
214
216
213
187
132
207
182
201
211
200
227
265
208
136
174
176
207
231
146
179
167
240
153
202
263
197
172
188
240
228
257
234
218
199
147
262
206
209
147
156
145
121
215
186
197
253
152
224
198
190
255
188
235
195
211
238
192
238
151
220
226
188
210
215
152
208
231
221
199
229
247
209
219
152
204
220
193
212
191
179
225
231
188
158
174
192
162
218
174
212
210
251
204
197
177
172
156
219
253
198
126
162
165
194
155
249
196
182
242
213
151
210
180
189
200
249
190
176
173
234
173
187
221
217
196
163
182
239
197
196
232
235
212
225
196
233
185
247
188
154
162
197
154
174
200
229
252
227
206
200
133
196
198
172
208
213
225
267
238
229
192
181
228
156
213
165
145
183
182
211
137
236
232
258
134
196
123
230
227
139
148
253
193
193
197
211
214
226
208
229
166
185
186
258
151
200
235
162
244
236
189
235
205
218
210
188
171
174
202
191
214
153
190
155
208
186
157
136
233
214
189
228
167
218
175
208
225
213
173
211
152
186
238
227
189
206
148
196
129
150
224
196
235
206
209
204
125
132
286
225
193
189
215
207
271
202
152
226
228
136
228
170
195
184
246
167
141
201
124
228
202
257
185
151
193
190
207
198
263
186
190
173
203
158
215
182
150
221
205
208
202
222
182
146
172
236
155
252
162
176
183
169
246
276
151
193
172
248
145
176
240
260
184
205
220
155
242
210
196
154
212
237
204
253
235
206
134
200
139
191
229
126
232
201
133
255
213
200
198
178
191
300
179
201
206
220
147
236
146
184
203
195
228
167
177
165
182
119
169
175
187
206
156
244
166
191
214
196
216
181
196
201
214
196
202
171
250
179
260
171
237
225
188
228
264
146
223
179
227
173
215
186
237
208
168
269
219
229
275
267
202
162
177
194
153
216
177
204
263
251
173
238
249
103
215
158
217
248
231
204
207
201
196
207
185
233
200
113
178
239
237
255
176
233
175
139
217
191
172
197
240
223
198
180
214
180
205
212
181
243
148
216
233
176
195
217
196
151
205
231
245
255
225
195
189
210
171
254
211
241
256
214
179
205
198
143
200
222
200
189
203
174
221
247
179
157
243
262
150
204
172
178
239
257
222
250
239
221
230
175
186
209
176
235
216
213
189
177
238
236
181
233
224
204
195
180
224
125
169
215
234
289
227
180
207
189
187
201
232
221
199
197
230
186
201
161
156
172
224
205
246
188
204
177
211
195
220
197
154
210
251
121
159
209
163
189
170
225
236
230
153
173
211
241
204
151
214
162
211
205
221
201
224
226
227
197
230
208
174
218
170
218
197
201
263
220
200
188
176
187
238
179
245
133
184
162
239
202
245
273
200
261
137
164
200
189
212
217
197
228
187
194
179
233
181
163
177
243
201
194
188
119
197
178
168
210
125
192
186
218
229
223
198
238
250
286
224
257
182
210
210
203
189
245
199
273
230
131
222
168
164
179
199
234
136
249
184
197
188
196
212
207
255
188
195
203
248
166
180
196
212
171
144
189
176
224
145
220
155
243
198
190
178
226
238
209
228
172
155
187
190
179
156
172
250
242
179
187
228
228
181
204
171
159
204
213
156
187
215
208
199
202
195
172
205
256
231
214
192
231
205
159
230
183
197
191
168
145
133
213
185
183
178
154
222
232
150
220
135
104
215
176
265
232
229
238
224
189
158
192
252
223
206
217
246
164
203
171
241
243
213
158
235
172
202
200
164
220
190
192
168
205
230
202
238
191
202
263
211
221
179
206
169
179
232
196
181
225
232
228
187
197
182
166
226
184
230
254
227
208
224
234
154
171
179
216
229
188
184
158
213
144
232
158
180
243
102
203
209
191
165
173
186
178
195
147
160
150
222
225
171
151
211
229
125
217
129
254
242
235
185
200
170
205
268
143
168
197
192
183
231
231
226
240
221
128
228
252
179
222
158
173
179
188
199
203
205
206
264
185
216
193
129
216
235
207
217
282
182
219
175
214
213
183
224
230
193
184
166
167
255
214
197
119
198
218
211
237
199
227
193
265
243
246
231
208
201
216
170
184
168
201
238
165
202
245
276
131
206
211
196
256
139
260
187
225
244
224
203
198
217
215
230
196
161
236
193
204
143
241
202
187
239
185
221
208
225
200
221
194
229
216
193
210
206
236
221
144
222
210
220
143
198
215
213
153
193
189
232
259
235
140
189
227
242
230
185
177
219
196
254
167
203
200
174
204
165
202
192
167
201
220
214
205
287
207
167
195
156
151
188
158
200
181
221
221
218
219
200
164
227
199
257
179
192
248
217
196
205
206
215
215
224
177
226
226
166
210
183
268
191
203
220
251
267
170
217
181
224
166
171
189
164
185
240
226
194
187
174
217
215
182
236
209
225
234
156
194
202
227
153
190
194
153
169
222
199
216
177
223
195
243
177
215
220
230
209
219
177
165
205
180
151
169
164
200
225
213
180
236
183
252
217
242
263
174
194
161
227
194
223
155
234
189
193
204
146
206
122
170
233
248
166
238
128
170
162
206
157
228
188
202
220
260
280
218
246
201
179
237
223
186
122
218
239
181
141
221
191
224
244
214
206
239
226
204
215
213
210
194
260
236
248
176
232
193
171
181
195
222
188
248
208
223
196
166
212
170
233
168
176
161
178
227
212
251
173
219
202
208
195
219
188
179
144
158
242
223
223
280
183
224
157
179
227
211
216
196
229
157
200
141
153
201
256
145
166
205
208
155
220
170
168
185
185
214
159
176
201
261
210
162
148
203
164
206
221
164
179
235
195
215
218
230
181
195
147
222
142
253
168
154
202
226
185
215
246
161
184
198
177
185
198
195
218
171
183
175
224
203
224
205
198
203
192
139
207
170
186
229
228
174
189
190
209
230
245
164
200
223
178
170
196
242
182
209
171
199
154
145
202
179
196
170
233
167
166
192
169
191
239
117
148
211
199
171
199
223
191
215
153
226
238
227
247
213
224
159
223
211
187
182
175
182
259
243
221
189
171
216
216
252
216
98
201
226
131
190
228
230
213
188
229
247
155
210
259
159
166
155
202
171
198
203
231
171
228
214
196
223
225
191
120
233
205
194
209
181
187
181
257
195
238
175
235
188
161
184
228
195
234
224
247
200
132
198
194
201
152
144
241
222
217
197
179
179
211
226
139
170
190
250
187
233
132
185
202
205
133
212
238
221
229
183
177
232
228
225
247
222
162
216
208
148
183
178
143
214
196
204
154
203
217
152
218
206
236
131
185
193
226
215
180
201
279
201
128
249
239
216
209
224
215
189
195
250
183
206
144
125
198
233
249
158
208
150
204
162
225
244
265
208
208
216
158
154
190
164
178
156
223
209
172
183
240
231
173
181
209
165
188
172
255
195
201
241
224
126
165
164
178
290
300
213
204
216
159
198
219
267
228
218
145
152
239
155
147
202
140
212
202
204
110
191
209
146
207
173
208
168
169
216
191
226
137
166
221
203
191
202
214
230
194
180
186
139
151
184
246
143
217
116
174
215
257
191
242
201
187
130
200
164
218
189
224
150
152
218
249
166
198
189
165
192
177
235
262
295
181
220
180
212
172
214
226
192
174
223
223
196
273
181
213
195
190
199
255
159
228
199
107
234
228
227
136
130
255
185
211
156
124
216
209
231
183
231
220
134
213
235
236
181
165
213
203
168
227
137
170
198
252
230
229
215
146
183
153
142
204
275
160
147
194
206
194
194
188
232
177
176
173
230
191
171
190
185
174
232
191
147
155
163
147
237
211
187
228
235
182
201
152
220
229
219
107
168
208
243
205
159
222
194
179
171
222
254
194
198
235
205
231
216
254
227
158
205
208
206
140
224
256
173
223
137
190
256
195
215
216
206
173
210
182
185
221
167
139
226
164
266
146
162
199
215
251
211
229
192
236
243
230
206
196
244
200
215
182
213
202
211
117
231
183
233
200
175
172
259
140
206
213
188
225
241
175
154
131
228
158
211
200
233
248
248
168
207
222
217
177
278
215
247
220
219
250
184
198
230
178
209
258
142
178
215
198
241
122
127
246
156
195
155
202
206
149
142
241
176
183
248
256
190
204
200
157
229
176
231
188
191
182
159
177
187
211
186
213
194
185
196
253
245
90
214
176
175
172
216
173
146
176
155
181
119
144
150
239
244
177
254
178
217
186
217
214
179
220
233
213
276
189
269
254
219
210
186
233
246
223
170
205
209
163
211
217
234
148
205
213
194
204
212
182
171
204
228
188
163
171
218
167
194
182
237
159
238
200
214
200
195
182
172
216
167
230
176
207
239
198
186
222
211
212
223
225
199
158
248
215
232
204
221
206
234
234
180
208
208
208
221
138
234
196
266
218
206
187
235
152
200
286
185
151
218
238
213
176
195
176
176
152
174
189
163
203
168
193
198
199
165
218
192
257
169
214
168
201
209
218
244
253
233
226
202
246
218
181
181
200
191
234
134
180
192
201
234
197
212
234
146
179
204
215
227
238
134
135
224
185
168
177
172
82
194
191
227
194
260
212
156
207
205
164
154
207
232
142
202
259
212
205
166
193
162
189
187
201
160
212
216
211
226
153
196
224
219
172
223
238
241
163
211
210
233
181
139
168
176
217
152
188
242
233
266
230
170
267
205
168
166
246
214
192
266
182
204
205
138
185
172
199
127
207
198
174
197
193
178
177
204
143
175
193
217
188
219
224
204
203
168
180
197
210
151
191
207
235
185
172
214
236
221
229
259
270
174
209
193
232
185
160
169
223
177
207
255
193
230
226
161
216
211
235
210
212
179
209
165
137
168
185
210
165
275
259
209
196
212
240
214
209
188
189
227
246
173
185
189
172
230
197
208
248
187
239
144
230
183
231
205
167
221
238
141
139
212
196
232
207
195
208
202
166
273
251
236
214
181
198
162
241
166
162
223
224
174
221
224
211
206
226
123
184
206
257
194
226
245
206
203
259
237
189
186
120
224
172
223
170
173
209
177
240
247
153
181
272
217
157
240
175
266
146
189
165
200
160
189
195
226
229
201
199
180
137
212
255
227
252
176
186
172
243
211
182
191
165
245
209
256
242
195
206
187
226
189
207
172
220
219
165
236
200
146
161
238
184
217
173
195
216
134
156
271
157
227
226
159
187
224
184
209
191
160
102
213
210
161
242
190
192
193
204
193
211
214
239
259
258
207
133
220
187
230
258
196
143
158
167
155
184
230
196
170
204
180
265
159
123
214
222
192
170
233
214
169
207
178
152
239
211
194
173
162
214
251
180
211
175
260
273
163
189
210
184
218
121
173
198
170
224
238
194
233
225
230
178
176
238
221
188
240
191
234
217
208
192
189
196
176
172
257
183
191
157
232
208
214
197
181
227
187
181
267
216
175
163
181
208
220
191
98
221
258
213
204
162
136
197
161
232
188
214
203
225
179
208
207
201
180
185
187
208
214
169
207
265
228
157
216
231
147
197
275
213
237
153
218
146
213
134
219
218
231
188
242
185
198
131
250
250
180
192
167
215
247
239
149
144
240
100
218
157
205
177
195
195
242
174
167
196
200
224
133
211
217
246
216
149
219
265
160
143
227
226
211
181
161
228
182
201
183
212
223
212
191
177
212
155
218
200
178
184
236
214
150
218
217
111
181
206
218
158
235
139
249
146
197
178
230
238
217
203
235
166
207
186
229
222
150
148
223
217
215
205
182
216
124
205
168
189
132
109
198
220
185
179
215
159
234
195
240
227
239
208
196
166
201
121
165
258
218
207
206
182
189
216
193
224
208
215
196
152
181
227
171
205
239
186
168
190
189
188
169
231
211
222
173
259
167
198
148
252
213
214
180
239
207
196
200
257
177
220
179
193
203
187
124
188
238
204
211
247
155
170
217
119
251
221
259
237
160
142
235
183
170
265
219
200
224
177
220
131
241
220
214
172
223
224
176
139
240
232
186
101
180
236
208
172
165
212
204
234
207
215
197
199
254
148
186
128
275
180
231
183
159
197
202
182
224
197
154
230
207
222
238
206
193
222
188
186
132
205
211
214
219
158
236
166
224
264
173
205
133
202
204
175
182
212
217
134
283
196
207
191
162
221
243
176
200
172
182
194
218
209
232
193
235
213
174
222
245
261
180
159
199
219
207
161
188
197
159
118
226
187
193
283
180
177
137
217
174
227
251
267
226
184
209
209
207
212
199
262
187
203
187
181
244
239
188
194
200
196
238
200
187
148
163
217
192
187
253
200
196
194
131
187
176
203
219
186
199
174
197
222
191
196
227
227
246
195
240
236
164
208
207
153
233
227
224
225
232
130
196
187
254
217
165
258
148
223
193
221
265
145
238
249
157
214
224
187
246
210
168
168
206
131
210
196
163
192
178
238
241
176
129
197
172
251
188
259
206
184
210
214
167
171
179
124
146
176
257
202
238
239
240
175
230
206
198
187
206
253
157
206
158
197
251
227
201
189
204
193
219
159
168
207
250
167
206
198
149
199
194
143
203
211
146
239
175
199
230
97
281
201
199
217
148
250
260
94
144
175
174
199
182
187
241
176
161
152
126
185
252
156
238
213
232
228
182
231
142
231
215
158
168
220
180
179
237
212
154
128
256
204
193
244
225
197
252
205
152
244
223
238
183
215
236
173
208
211
182
163
117
236
264
201
241
168
180
157
248
200
175
244
146
152
219
199
156
226
264
231
252
196
150
217
191
220
256
186
185
167
185
244
208
184
230
146
228
195
199
162
220
164
202
159
197
235
169
265
224
253
209
197
197
182
230
273
254
163
132
197
234
161
190
174
216
163
236
213
211
201
248
191
156
228
161
168
166
215
193
154
157
129
139
154
169
205
178
185
176
221
205
138
179
203
236
221
203
182
154
218
219
207
206
219
204
242
215
169
172
197
134
197
138
188
158
178
196
228
197
250
226
194
230
240
217
196
190
202
103
211
210
216
222
143
179
166
271
230
185
207
177
175
168
238
214
258
131
179
237
208
249
233
175
236
189
280
235
175
224
174
188
217
209
231
238
200
201
150
177
208
182
190
181
156
208
190
125
222
229
185
165
118
214
248
248
217
181
152
219
78
243
235
221
165
165
168
226
190
155
202
207
149
225
175
220
198
221
206
234
211
182
207
166
267
153
174
181
213
227
221
125
151
229
237
206
228
155
155
200
182
226
266
191
172
214
208
198
254
159
189
130
212
203
256
169
180
218
157
143
249
235
262
198
171
155
187
220
195
245
245
153
192
204
172
209
184
153
155
138
219
201
200
240
220
251
189
194
204
177
211
202
169
196
232
252
255
215
235
205
209
226
224
144
178
180
127
212
166
221
203
193
215
233
166
214
195
191
222
171
238
212
203
189
232
203
165
206
219
172
235
231
192
224
235
136
247
189
225
166
210
222
173
229
185
183
176
234
166
181
239
237
233
231
172
246
217
216
136
170
179
142
248
218
191
178
246
199
166
237
174
158
264
227
213
235
195
153
198
238
167
162
241
231
270
177
242
240
229
221
195
181
181
131
219
221
182
233
205
223
173
206
250
222
232
231
200
239
186
161
243
217
210
160
267
158
252
196
190
187
203
156
236
200
184
198
206
168
133
140
168
204
147
227
155
149
132
267
265
222
248
228
236
207
247
160
203
198
225
124
194
191
203
202
237
200
225
159
184
169
199
241
184
187
208
243
198
178
212
215
202
249
216
155
145
159
164
188
185
241
196
225
229
243
232
201
190
194
214
229
139
207
170
160
179
177
191
216
185
197
265
182
150
181
229
181
213
155
219
194
215
148
228
186
180
225
181
156
179
195
198
199
216
201
197
213
223
177
253
153
145
216
155
206
203
195
213
190
179
177
193
169
210
255
207
217
266
219
213
151
178
225
200
160
222
249
227
182
207
149
214
197
193
233
170
194
253
180
157
219
209
172
236
229
203
220
190
191
183
235
208
210
181
162
198
256
234
157
239
185
180
200
206
230
201
112
175
226
263
225
209
195
214
192
200
219
191
178
212
152
214
181
240
208
204
259
214
183
151
248
241
214
220
173
162
183
214
249
212
253
213
137
215
203
178
205
146
181
220
225
230
179
237
226
200
143
227
193
253
228
187
227
186
185
221
227
233
201
198
203
224
233
188
188
243
200
225
137
155
147
265
174
230
231
183
201
222
235
117
198
245
167
221
224
222
194
209
134
151
160
204
213
240
227
175
165
232
216
158
203
205
207
197
214
203
246
141
185
188
213
196
220
231
199
202
245
201
216
178
156
170
201
261
158
135
194
253
250
227
225
195
186
134
216
173
183
140
198
180
229
236
126
205
209
229
271
171
144
191
219
253
180
219
132
244
173
184
256
186
204
208
171
170
219
153
264
164
157
181
164
240
207
231
221
192
215
172
212
146
161
194
165
195
176
286
193
178
162
236
229
229
198
189
247
173
191
203
156
236
222
233
228
188
235
178
211
224
230
259
216
171
218
137
182
110
211
192
217
199
268
158
192
200
263
210
137
262
184
186
176
247
207
152
208
190
172
208
202
174
202
246
263
217
209
194
212
162
245
185
227
159
210
219
222
191
178
184
198
208
178
157
167
199
258
199
190
219
190
237
254
225
258
251
194
204
165
199
176
178
159
211
288
205
251
251
169
199
116
190
217
223
235
179
148
224
218
186
156
206
215
237
189
183
189
150
232
246
220
217
185
206
154
191
207
272
184
173
179
230
179
170
139
122
213
239
186
217
212
198
178
195
186
156
246
229
186
145
192
209
244
157
223
172
237
200
191
247
149
175
164
165
237
202
237
210
143
197
210
242
222
230
157
207
249
245
212
181
156
222
222
197
225
125
247
167
231
193
179
190
226
156
206
160
196
240
191
159
149
187
187
174
223
233
206
158
242
217
216
213
191
193
219
228
198
270
251
219
197
136
204
246
223
198
187
261
212
188
169
178
234
241
199
220
161
227
255
182
224
209
170
248
194
188
200
211
192
244
250
100
215
179
213
213
269
201
201
237
180
169
191
200
189
178
162
206
149
177
192
187
215
173
228
258
180
209
205
174
186
217
180
238
167
165
249
161
185
164
204
187
213
263
154
210
195
240
230
177
238
241
214
259
159
245
255
198
211
259
224
190
196
185
204
247
161
166
187
174
180
199
173
146
174
183
229
219
233
112
232
173
239
177
263
187
184
229
257
204
228
272
190
188
159
188
242
211
160
176
196
244
195
192
204
191
196
256
244
189
230
186
196
177
157
234
216
194
184
172
166
174
259
212
207
235
202
228
153
179
259
235
181
202
180
225
238
219
193
170
201
184
240
139
184
145
179
211
200
230
210
253
227
238
158
160
238
234
208
198
208
228
168
239
164
218
204
193
186
175
150
217
174
185
236
158
188
220
177
243
228
228
238
195
150
179
147
198
198
261
226
205
214
217
165
216
236
188
189
160
233
198
184
158
219
171
231
229
178
221
287
241
216
206
155
194
200
153
205
192
200
263
159
203
200
220
223
205
203
192
173
183
180
244
201
168
176
168
206
245
161
183
259
194
168
220
239
240
246
206
181
130
222
140
175
174
159
231
212
237
255
229
236
274
202
215
267
236
210
233
205
189
244
226
275
207
237
260
197
215
212
254
230
139
228
183
88
261
198
209
226
139
200
170
243
208
196
261
215
280
189
249
168
166
202
152
225
247
212
196
187
172
239
225
165
204
228
230
207
194
280
169
211
206
218
175
202
196
234
129
167
230
209
207
179
162
184
167
198
205
164
219
144
185
173
154
250
165
175
212
202
234
243
144
262
189
214
226
215
222
182
237
161
230
195
175
206
222
188
243
237
211
229
188
169
174
162
191
202
316
197
238
217
214
172
201
245
214
163
216
211
221
256
167
191
200
199
214
236
180
255
157
138
200
183
233
196
182
208
205
254
212
186
201
190
217
194
239
212
262
205
199
222
199
163
225
218
216
195
145
189
209
211
164
205
145
192
166
224
218
242
201
247
162
211
167
171
210
199
185
204
173
228
167
222
218
192
179
178
129
186
142
163
157
198
263
204
219
228
180
247
272
209
233
219
192
235
247
161
168
159
254
214
252
152
241
231
219
212
186
178
153
174
202
173
205
182
176
196
218
216
211
202
221
190
165
226
243
218
160
159
199
180
191
219
190
197
196
201
185
282
190
176
169
128
206
250
216
232
188
217
219
196
208
227
178
220
240
207
223
212
217
177
189
198
212
164
198
198
223
224
273
240
228
212
220
169
126
196
174
243
229
203
184
250
242
203
177
203
153
206
247
180
129
120
206
159
225
205
210
243
231
221
191
192
230
198
147
218
259
183
198
177
173
203
230
204
182
197
267
194
168
191
189
166
198
185
278
197
150
202
225
205
174
210
185
170
197
228
211
187
234
214
223
242
221
227
209
214
141
249
170
186
130
186
161
229
221
246
239
178
184
178
231
226
169
210
208
210
181
193
249
187
210
207
252
179
199
160
250
232
206
190
137
241
159
187
163
176
224
151
121
164
215
238
162
205
193
151
256
264
182
254
233
203
183
157
189
267
182
167
172
182
176
208
194
175
174
226
155
228
176
144
196
194
187
229
221
221
177
225
237
149
135
234
194
206
212
198
257
197
185
190
189
170
173
201
147
179
202
240
148
187
159
235
221
176
175
227
178
167
175
244
148
188
142
227
222
157
241
149
194
168
204
167
222
184
253
206
176
209
154
118
192
257
171
187
197
209
225
189
204
163
225
217
138
203
210
228
217
189
229
209
190
207
212
126
222
201
191
212
148
199
157
145
203
173
214
182
205
254
211
250
173
250
156
196
183
171
177
165
219
179
146
190
166
209
252
145
139
193
174
181
221
195
171
198
191
178
242
222
220
240
187
133
159
158
153
139
174
149
217
275
218
173
134
256
190
247
123
194
191
215
175
195
207
242
187
260
213
168
197
188
194
225
224
235
234
133
221
202
147
280
172
230
223
196
217
201
177
237
149
216
144
233
219
114
177
169
201
147
233
245
180
194
242
170
213
209
156
236
225
218
199
242
210
189
215
152
233
185
215
174
250
257
196
195
176
211
172
204
190
129
230
163
245
275
216
252
190
133
144
142
154
161
146
188
257
236
210
117
232
188
186
239
187
183
254
248
188
196
216
211
189
247
184
207
214
233
204
229
228
219
198
175
161
241
144
233
118
159
172
124
152
253
238
220
197
234
215
194
267
265
222
200
258
209
259
170
211
221
216
232
215
239
230
214
210
243
223
240
238
244
240
217
237
163
228
183
296
157
216
186
213
191
206
185
163
185
160
218
227
190
194
196
270
157
247
230
146
127
214
203
264
136
203
167
202
254
189
192
231
126
196
169
212
249
237
233
181
220
247
235
209
168
221
187
207
144
196
228
196
156
169
214
267
168
196
169
164
210
243
153
192
170
265
226
197
216
211
194
209
198
199
279
171
204
244
244
209
229
183
187
179
228
208
169
201
286
164
194
221
211
223
140
267
221
263
189
193
171
131
217
210
216
206
225
187
208
193
223
216
251
209
162
247
170
251
240
222
253
181
200
239
163
169
249
217
256
187
169
164
226
182
173
191
165
194
184
212
189
218
207
222
223
150
234
188
201
164
207
207
117
180
185
197
224
203
210
203
254
160
195
222
179
208
189
201
236
177
187
236
233
160
218
173
213
192
197
126
200
136
229
238
232
191
218
145
182
248
194
257
213
191
200
221
192
179
222
155
201
152
149
228
203
212
237
257
236
228
179
202
194
235
176
236
259
234
234
216
246
235
229
195
224
207
222
194
164
214
257
178
266
125
213
193
194
195
212
226
197
246
210
227
201
209
239
231
185
222
193
202
185
150
164
188
240
173
193
220
232
236
198
207
176
200
188
210
193
203
181
189
209
256
207
211
146
190
245
178
205
179
176
202
169
162
295
139
239
152
198
199
234
179
119
163
204
172
160
176
247
270
185
208
201
209
171
181
260
196
202
121
231
194
204
257
231
196
217
167
215
125
217
217
168
228
198
196
152
257
154
181
187
201
204
257
201
175
208
156
213
184
231
171
206
170
239
186
226
170
152
217
178
192
199
162
196
182
172
267
204
194
125
162
164
195
133
190
173
251
188
149
202
214
212
241
222
201
191
219
208
231
208
232
214
207
164
202
176
225
173
177
248
246
226
181
163
168
221
184
159
216
221
251
228
239
202
189
235
204
228
230
235
229
249
122
205
196
184
259
213
219
225
190
216
203
181
236
204
210
209
202
118
126
169
173
205
175
232
157
161
229
242
204
134
209
207
174
215
245
181
156
253
232
204
236
210
173
221
183
216
229
187
200
218
223
211
187
254
159
174
226
205
194
189
230
119
204
179
235
220
217
214
186
252
178
181
207
191
193
192
163
214
175
213
216
223
258
162
146
160
179
229
181
270
148
269
210
219
259
235
194
188
200
196
211
166
194
266
181
226
232
212
202
116
178
219
194
224
260
166
206
251
217
183
203
196
254
196
191
214
220
172
181
196
184
207
203
199
239
197
229
267
190
177
242
224
232
188
189
125
181
184
150
230
161
220
228
106
197
169
170
221
259
212
131
156
196
234
197
197
208
148
241
187
169
240
145
224
260
122
206
171
198
180
141
180
177
153
219
170
216
225
180
189
279
198
253
136
179
201
208
190
234
260
202
207
165
206
196
107
175
183
191
210
257
219
241
243
199
182
186
191
183
192
160
222
258
197
241
205
206
177
179
119
216
229
203
177
178
284
205
193
191
163
164
190
180
245
208
191
165
147
211
184
185
236
224
209
185
165
228
196
201
285
182
210
286
211
294
184
165
151
182
253
165
221
166
238
257
224
188
141
222
210
147
155
237
158
208
235
210
188
181
168
212
191
145
230
186
187
226
246
211
213
150
227
165
170
205
200
159
201
186
183
97
214
170
161
210
173
196
206
219
186
257
187
213
212
192
275
240
237
179
166
145
218
169
191
227
160
253
262
277
153
184
195
253
243
196
207
232
182
259
245
232
186
196
232
182
215
198
255
165
207
176
195
188
156
237
215
176
190
171
191
202
163
228
223
167
234
274
264
175
198
209
183
201
179
206
209
188
225
212
211
242
168
221
240
193
188
156
217
205
254
214
178
221
203
198
201
237
289
219
133
208
183
160
232
191
198
218
208
223
202
195
207
193
202
158
174
176
178
204
209
228
206
192
199
243
190
237
204
237
195
182
265
242
254
252
175
178
179
167
211
253
204
224
247
241
229
264
173
228
191
196
190
214
193
219
211
215
160
174
217
196
247
155
236
225
211
212
205
234
172
130
206
254
170
211
196
200
135
183
177
195
225
213
185
230
132
193
192
257
227
222
152
211
201
233
167
204
183
153
241
217
199
157
196
132
172
263
192
239
178
164
176
178
213
232
202
203
154
193
220
133
172
226
229
254
167
223
250
212
159
197
221
196
236
189
198
244
195
171
218
250
225
242
202
146
190
229
201
223
232
179
203
103
174
226
154
177
211
199
191
162
192
216
269
191
192
216
212
197
182
168
172
248
225
194
171
153
171
222
185
258
169
160
218
159
164
180
218
183
216
176
167
268
192
228
213
192
203
235
124
183
243
171
205
233
166
174
203
198
228
173
201
162
251
185
216
239
203
221
149
254
210
156
202
200
222
173
210
196
188
224
180
212
182
195
249
198
234
271
168
236
255
171
207
166
234
195
245
210
212
196
209
147
165
173
256
213
204
136
140
201
140
184
194
187
128
209
184
176
254
198
247
177
252
217
246
125
137
204
167
145
195
161
201
258
191
196
243
133
210
167
224
184
266
143
168
218
252
152
224
191
215
171
196
155
177
220
203
160
165
166
239
236
245
233
240
156
218
138
193
234
251
229
196
198
149
173
239
209
178
255
217
231
259
206
263
181
222
156
163
271
208
238
198
238
206
218
218
192
236
262
166
285
196
221
219
183
212
182
201
157
222
208
158
217
132
188
199
187
192
182
205
113
171
188
173
216
207
217
242
234
214
225
274
202
249
167
177
156
199
202
159
216
189
144
254
183
265
229
224
209
131
178
154
161
200
184
258
165
224
198
196
161
253
193
176
201
245
167
215
184
133
211
197
159
173
213
254
172
194
191
174
167
209
175
165
215
195
167
247
271
189
200
210
179
176
194
200
190
216
232
212
192
201
195
236
265
221
207
208
163
267
173
205
139
189
177
183
206
211
210
202
187
221
178
152
200
185
151
205
219
253
240
201
246
175
249
236
204
213
225
249
179
222
174
220
179
164
157
223
164
183
162
228
233
224
197
289
170
189
230
147
191
214
163
228
253
214
168
211
207
194
208
247
225
249
182
192
188
161
230
226
207
206
135
301
191
222
223
169
256
197
201
201
226
191
190
119
205
126
261
181
295
192
243
155
189
256
240
197
205
191
158
241
209
187
220
211
211
221
197
229
219
231
228
181
233
186
209
190
207
217
155
171
138
166
182
166
164
210
222
196
216
246
213
235
161
226
262
157
273
189
159
207
197
178
164
292
163
208
229
216
160
213
199
200
207
248
195
148
194
243
231
235
222
220
222
208
198
204
176
219
150
200
169
180
137
179
173
215
226
176
245
199
242
221
207
209
207
215
192
186
155
182
178
227
197
205
171
231
211
165
175
134
224
243
189
184
200
262
248
179
159
187
184
126
277
173
189
200
213
175
218
269
174
193
272
214
140
201
201
107
206
198
205
173
221
170
236
225
192
194
194
201
191
221
177
206
139
189
186
228
194
199
174
221
209
194
247
186
212
249
231
209
205
194
138
168
144
223
172
185
172
221
238
187
157
304
174
186
221
203
186
190
192
230
224
169
248
231
233
239
185
186
175
246
187
215
175
177
193
218
216
222
220
177
151
227
191
196
193
191
238
197
239
169
211
190
173
222
220
186
219
172
224
202
185
226
159
128
166
226
207
196
180
212
214
143
241
200
263
205
239
225
243
185
200
167
240
234
177
258
241
202
208
222
192
174
172
162
214
163
225
186
211
230
150
176
224
191
187
278
139
212
184
231
194
189
224
197
219
186
216
191
139
205
213
272
250
244
221
205
167
219
172
248
237
191
229
171
201
206
231
95
144
150
152
214
202
192
216
244
207
231
218
168
142
168
194
187
261
212
189
222
162
253
138
166
172
216
257
210
189
181
195
197
222
232
196
208
193
235
176
139
206
146
229
177
208
216
265
130
199
205
166
232
253
217
211
180
192
190
165
189
250
216
191
229
202
207
187
187
148
219
163
274
215
195
210
289
173
174
209
238
233
192
222
174
160
159
210
218
203
176
217
200
218
164
263
210
199
163
235
262
256
239
167
177
188
168
186
215
211
169
193
189
183
197
167
211
216
229
168
160
214
172
188
192
184
187
260
232
187
176
249
210
233
209
199
286
257
233
161
139
163
235
165
191
188
232
260
192
178
173
173
214
248
275
161
175
189
235
153
239
211
236
199
140
231
194
198
163
230
177
181
184
130
193
222
202
229
245
172
202
182
163
209
263
194
215
180
188
179
176
188
168
216
139
160
211
184
217
194
224
187
216
223
187
247
204
133
221
190
136
172
202
239
197
150
166
168
165
219
257
173
207
195
209
182
148
177
212
250
181
262
237
212
225
201
202
204
246
171
156
180
195
228
244
215
163
190
269
245
197
196
250
242
152
230
244
200
195
187
222
217
231
208
224
148
229
239
193
228
189
229
209
189
232
206
233
208
230
144
140
214
244
186
182
218
208
229
177
163
175
263
221
206
219
212
190
255
177
156
222
234
200
177
225
222
207
173
158
227
200
209
248
140
204
198
192
222
263
199
198
185
180
175
210
200
212
183
155
216
182
177
218
228
191
203
187
125
221
221
217
205
201
156
157
217
192
206
184
186
133
212
279
254
133
255
258
199
272
179
241
211
167
156
173
174
206
171
210
238
168
267
200
161
243
210
257
192
221
166
229
185
225
182
190
233
247
108
157
239
209
198
182
192
146
239
178
167
203
216
208
138
166
217
208
188
230
188
220
259
207
169
241
267
198
208
207
189
224
225
192
211
204
149
236
196
228
218
198
248
220
234
220
208
186
190
198
208
225
175
221
188
213
203
162
232
230
112
226
168
154
196
159
215
230
259
149
195
187
232
205
185
197
218
248
233
208
252
208
258
148
222
186
262
224
225
230
175
201
212
158
183
154
253
218
233
171
188
136
246
238
219
173
208
261
229
241
186
123
192
226
217
186
144
214
179
147
229
159
127
196
225
168
241
238
198
232
160
202
191
222
175
185
191
165
175
234
224
223
188
175
196
193
164
168
191
177
189
241
125
247
213
183
228
206
217
239
196
216
210
228
250
242
158
225
229
213
168
208
187
162
214
123
192
177
212
167
123
173
218
227
147
161
243
212
241
275
227
188
201
204
128
198
229
254
246
218
175
215
216
232
210
126
189
179
189
207
232
172
264
285
180
140
167
218
221
181
217
145
257
233
226
226
185
177
184
241
239
254
210
122
233
276
158
141
188
216
252
192
210
213
149
207
275
218
156
185
149
225
174
158
180
183
189
188
183
230
184
209
241
201
227
253
120
233
257
187
193
176
184
216
189
191
229
169
185
192
233
140
186
202
218
195
215
189
217
142
238
192
210
243
234
163
240
223
227
197
161
194
215
217
211
193
154
233
186
177
194
189
152
240
238
209
190
157
204
202
169
208
152
186
206
189
247
181
154
259
172
250
200
159
182
225
242
245
198
164
215
126
185
225
165
212
207
214
222
217
166
244
280
236
208
168
198
124
223
151
208
206
255
175
188
224
193
174
201
247
232
238
178
194
156
204
174
105
211
152
226
253
174
187
140
197
119
221
172
143
152
168
201
179
149
245
146
213
177
162
225
156
174
198
253
259
209
204
200
183
229
185
181
184
190
197
191
191
159
173
198
218
179
234
246
209
180
160
237
162
167
199
200
186
196
238
175
198
157
231
179
215
216
136
212
179
232
148
222
166
201
163
159
285
205
182
217
190
174
176
165
206
225
195
249
145
171
187
110
138
158
153
207
190
172
166
189
197
226
196
214
190
125
176
215
162
200
210
233
201
211
254
175
193
196
207
196
248
227
200
185
159
203
172
203
190
266
187
227
281
128
205
199
204
159
182
182
246
190
180
227
210
142
226
210
161
220
159
183
251
261
249
166
209
166
226
239
187
202
201
210
140
201
168
199
228
236
206
276
192
168
232
224
217
152
158
187
202
179
230
220
212
200
212
225
190
179
203
193
234
244
207
145
184
194
141
203
241
287
186
177
175
164
259
253
216
242
240
228
177
224
244
237
251
210
217
226
170
232
237
151
220
216
166
125
229
191
215
176
169
189
218
167
183
217
188
239
177
192
131
157
252
216
186
182
225
249
233
153
231
197
237
208
164
231
247
202
240
153
95
231
160
233
134
237
246
222
172
215
247
209
234
249
262
218
173
199
299
164
222
147
188
208
170
183
239
190
217
123
227
118
220
178
175
104
248
151
209
232
205
209
181
237
99
150
143
191
206
182
223
182
195
163
173
173
184
262
143
174
174
107
234
206
234
183
162
224
223
218
127
215
140
167
180
226
144
227
178
219
258
179
197
202
139
230
220
188
224
191
223
167
168
117
207
156
206
251
227
147
215
221
209
170
155
201
194
111
216
221
221
173
194
233
216
218
192
150
185
154
183
210
249
244
185
163
210
251
242
201
196
233
251
163
218
200
195
239
208
209
215
231
184
229
202
239
218
192
239
256
266
148
227
230
236
219
239
179
224
200
182
189
224
159
212
180
188
161
249
199
224
233
249
237
225
221
169
154
243
230
181
205
175
187
156
219
170
209
207
178
224
225
229
143
210
243
235
185
163
189
179
183
206
196
182
175
203
212
148
166
200
116
107
177
204
201
198
217
209
196
251
231
224
185
231
190
147
231
196
221
189
209
210
217
240
162
142
236
170
232
221
231
189
225
228
233
150
220
234
218
201
207
145
201
213
254
246
175
208
195
208
180
187
192
158
235
171
226
209
193
226
200
182
257
245
171
186
174
167
178
250
205
145
210
142
216
131
231
164
196
196
206
169
255
267
191
245
148
183
238
158
236
194
179
214
217
269
183
193
206
224
206
213
211
198
211
183
204
201
226
206
163
216
168
193
194
193
182
225
142
144
171
192
185
213
165
236
212
224
201
186
197
227
188
209
171
259
214
176
211
214
178
199
210
167
155
173
214
184
204
223
160
161
246
264
160
206
213
229
186
193
205
206
205
165
213
239
229
235
195
176
177
251
171
157
206
225
163
204
171
230
175
222
258
141
212
169
207
173
220
213
165
178
178
265
154
186
234
149
216
161
132
206
223
206
230
194
195
226
194
240
208
223
176
93
131
189
152
215
271
223
210
175
223
214
198
144
248
172
190
251
178
185
211
138
204
232
208
158
141
186
219
259
194
170
207
211
244
198
218
183
168
205
207
211
212
271
250
195
145
172
194
160
163
203
164
170
179
182
202
230
175
212
254
151
195
194
171
168
175
183
241
219
181
190
194
202
226
226
197
243
202
237
205
189
212
238
205
254
226
250
179
247
190
210
156
165
184
188
233
81
199
206
190
225
226
169
215
192
211
186
209
216
186
231
164
201
207
194
168
166
200
212
238
220
140
244
261
191
215
165
214
185
107
195
226
239
227
195
151
245
190
194
151
201
164
235
158
212
264
198
216
192
226
239
241
183
187
166
214
247
189
116
199
181
164
223
191
176
165
130
231
179
163
191
231
134
241
152
190
193
217
167
263
171
202
192
251
189
221
182
199
207
182
184
167
246
179
246
245
217
201
233
184
235
221
160
226
244
268
225
173
204
213
189
121
239
170
198
208
236
228
185
194
187
208
200
167
129
237
189
187
175
216
195
198
201
256
134
259
215
220
141
210
142
144
247
265
205
119
188
211
210
191
169
233
250
192
218
148
199
256
231
134
229
188
202
201
178
242
231
252
183
195
259
235
212
217
163
208
245
180
221
251
225
191
252
241
215
150
194
208
187
217
224
195
214
218
163
179
235
218
209
239
188
132
121
250
194
204
247
250
176
247
228
199
197
165
184
199
237
195
194
229
186
223
203
211
265
272
223
189
204
252
240
184
232
227
228
240
219
225
224
191
217
153
252
177
146
125
252
201
191
225
188
204
180
129
189
173
170
245
199
189
121
155
164
218
206
193
266
212
206
217
154
187
165
174
178
191
254
227
203
184
224
204
204
216
218
171
224
148
255
194
211
208
219
164
223
255
192
189
218
238
203
220
204
242
170
186
245
220
109
228
174
119
209
154
172
240
235
228
227
218
212
187
211
205
271
191
167
164
211
189
144
239
199
148
241
131
242
237
209
166
208
165
235
187
233
243
220
224
222
185
164
228
186
173
237
213
125
230
238
160
213
174
201
244
187
225
242
213
190
161
220
179
174
153
199
230
134
227
218
186
213
177
163
204
165
184
224
158
247
187
151
226
220
228
208
209
206
229
207
130
247
190
258
203
204
210
158
170
231
127
203
179
226
202
189
178
229
196
176
195
241
156
238
211
160
186
238
222
177
198
177
166
275
187
247
154
216
179
150
280
174
269
227
209
158
221
153
178
233
185
187
207
248
238
159
213
244
235
187
204
230
134
218
153
151
183
161
178
206
192
240
129
238
233
195
256
121
216
153
204
213
129
163
234
194
201
152
167
189
154
206
186
157
152
205
166
195
154
175
163
266
137
229
205
212
200
217
160
214
239
244
261
196
201
268
193
223
247
247
288
186
244
146
187
235
186
162
184
224
202
248
194
195
259
174
218
180
167
166
140
175
189
156
218
175
246
160
194
267
232
195
253
184
204
257
184
163
168
217
267
228
123
203
185
215
143
256
160
181
147
166
176
247
189
131
224
147
214
243
173
196
269
192
137
210
196
191
119
182
154
207
190
217
233
210
199
232
198
251
159
196
184
171
193
148
241
226
190
183
272
179
200
142
211
245
130
220
197
216
186
232
188
215
252
194
194
143
209
203
246
189
199
217
227
230
248
175
214
182
170
189
195
165
215
225
231
216
225
162
211
195
204
231
255
252
215
138
219
218
220
233
219
223
209
286
232
214
144
234
169
210
173
193
186
195
268
212
202
242
213
213
150
160
194
171
248
203
152
216
153
246
167
238
151
237
215
156
209
149
230
201
219
158
236
190
186
229
182
166
180
135
213
219
195
225
243
226
211
194
237
187
241
279
196
230
172
227
186
263
109
204
234
185
168
192
165
232
238
163
254
219
178
176
214
216
184
215
234
200
247
189
205
178
261
292
175
191
160
211
258
215
199
197
224
255
209
201
255
228
227
202
215
228
214
247
234
201
162
133
118
211
188
185
176
177
212
209
233
204
190
270
219
236
185
218
222
203
224
232
232
177
272
240
199
190
228
194
196
162
164
228
258
201
217
250
177
188
212
248
199
256
197
245
148
185
186
224
218
215
171
167
227
226
233
203
216
194
201
166
220
210
212
216
197
206
213
209
194
201
179
178
170
170
194
217
186
184
146
229
239
144
169
205
161
173
126
191
202
138
196
239
174
177
159
149
181
193
135
232
201
155
225
169
210
180
209
180
233
198
175
142
214
161
187
191
203
242
236
228
190
229
191
180
207
208
164
162
153
219
209
203
166
211
215
292
136
185
227
240
190
207
130
219
238
184
170
255
224
218
205
226
197
139
244
209
170
189
277
204
175
183
201
154
193
228
195
166
203
194
198
198
246
176
238
192
243
157
146
213
205
166
206
169
189
229
143
258
185
206
236
169
221
266
113
204
241
196
164
181
212
179
267
179
199
230
190
201
225
222
198
172
240
190
168
189
231
183
209
209
162
171
220
209
197
194
208
182
200
193
269
250
206
244
197
171
235
223
180
208
221
207
252
190
204
199
202
245
155
184
152
235
205
152
167
199
189
191
187
212
202
187
210
279
173
216
177
214
240
212
214
200
216
247
215
179
180
260
232
227
223
203
183
253
217
187
252
182
87
239
180
179
157
174
192
203
167
238
190
223
178
135
219
197
206
181
181
153
123
192
196
176
152
184
132
150
186
165
168
205
174
211
178
214
218
175
180
198
180
246
182
143
265
208
208
215
205
227
204
212
189
222
205
250
180
198
250
145
196
201
214
258
177
180
202
143
183
224
200
191
185
252
185
174
139
176
186
227
242
207
174
195
185
206
214
243
239
227
219
230
205
150
173
191
147
215
151
164
174
192
137
239
237
254
275
228
183
274
232
237
188
116
148
150
140
206
220
243
204
178
217
129
163
191
157
214
221
261
137
177
197
191
223
240
198
203
164
202
241
230
195
252
164
192
205
219
141
155
229
217
196
264
209
166
219
170
213
215
133
216
178
237
251
220
216
155
193
205
325
231
221
179
274
187
254
194
179
244
195
173
228
130
176
235
150
163
139
243
131
197
223
187
170
245
174
206
177
161
195
99
213
171
227
218
141
184
204
168
216
195
195
207
176
288
179
176
246
199
207
226
215
218
272
202
229
198
180
215
198
234
209
233
141
222
227
197
161
202
180
227
177
197
236
275
164
231
220
217
198
173
185
228
177
215
242
227
177
130
218
151
201
173
246
242
157
218
177
210
153
172
193
178
171
203
163
268
224
253
180
192
227
249
204
127
199
164
219
211
238
174
155
194
191
165
215
184
197
195
214
230
252
193
209
182
218
153
196
153
168
221
210
187
177
203
225
195
224
221
166
205
233
214
208
163
223
214
228
246
171
183
181
273
169
222
175
228
213
292
234
203
245
202
166
210
232
249
213
175
203
198
210
205
245
190
256
210
212
235
245
238
206
231
150
191
173
160
157
176
253
177
150
199
201
207
194
169
165
216
219
236
209
167
153
207
176
205
156
228
204
204
252
224
180
218
220
207
181
247
199
168
209
243
187
202
205
205
226
240
249
168
194
204
187
226
183
182
168
180
270
158
246
253
174
176
194
189
197
185
221
179
197
280
221
243
154
255
211
215
251
193
251
181
194
169
194
178
221
180
216
175
208
127
184
249
264
252
184
227
187
193
238
197
161
284
205
168
230
218
193
174
260
182
191
195
207
180
219
141
215
210
132
165
205
228
227
239
201
202
159
157
163
127
244
159
215
218
170
210
239
252
239
223
224
145
206
151
233
210
209
202
176
159
208
202
178
242
204
160
155
174
192
216
198
210
159
208
217
201
164
116
186
188
224
174
164
234
185
168
159
229
184
223
180
120
189
258
238
150
240
239
216
247
222
233
192
186
241
214
241
215
140
197
157
132
170
210
208
211
230
220
204
177
138
137
211
210
200
250
168
210
161
197
160
198
213
219
190
256
236
191
182
224
189
220
181
234
169
218
157
250
212
167
182
220
146
262
258
195
185
233
242
172
223
200
224
180
227
170
243
232
220
156
257
179
215
245
244
174
194
171
169
208
179
168
148
190
221
225
194
144
219
199
192
226
207
252
151
209
162
253
137
211
236
262
239
208
195
254
202
227
215
176
201
198
171
199
201
166
172
196
197
159
198
182
230
202
218
177
198
248
216
167
245
205
233
199
177
231
207
175
207
184
200
174
202
230
172
257
172
240
217
166
190
213
264
247
173
216
176
219
210
146
201
222
232
185
238
221
139
206
205
184
164
150
233
252
153
215
159
197
173
180
236
215
165
228
184
225
157
132
210
280
205
204
217
189
205
213
168
125
153
131
228
207
130
219
133
246
229
210
202
218
202
235
194
201
244
195
226
218
178
260
144
204
204
217
213
160
218
209
243
179
200
241
199
204
214
197
159
186
194
139
199
123
224
178
126
154
253
204
223
188
184
230
185
213
209
205
185
174
190
139
217
198
128
258
221
168
173
226
207
124
168
279
121
232
273
170
183
172
181
169
202
204
263
241
250
215
129
275
247
249
263
180
178
236
146
197
253
206
180
201
159
226
160
192
156
189
211
265
221
203
197
211
180
159
245
248
226
227
188
243
200
206
208
220
213
161
182
227
197
176
240
237
144
174
206
208
157
189
201
212
222
220
218
228
157
124
213
162
207
217
254
241
203
290
191
163
178
201
166
143
236
225
234
227
215
191
178
148
187
233
199
262
149
219
236
200
235
242
191
113
162
203
221
239
166
203
170
191
171
156
165
202
179
202
203
202
180
227
147
233
254
172
202
157
180
180
147
224
235
201
144
230
194
164
246
157
186
191
219
227
194
258
210
171
239
264
235
205
141
224
184
241
177
186
232
203
225
249
208
186
231
248
184
252
189
156
166
145
216
221
199
258
192
113
246
222
243
254
153
148
173
195
203
243
201
206
238
185
226
174
188
218
207
203
185
184
191
195
232
247
228
233
239
165
170
245
221
186
230
219
204
187
222
228
182
157
191
236
152
262
214
155
241
176
230
197
212
172
101
214
196
223
228
184
190
191
232
197
182
168
145
237
232
198
219
178
179
184
164
183
221
207
183
246
243
218
232
203
210
183
210
206
209
248
175
187
243
150
262
156
202
152
181
221
188
162
224
175
182
250
236
205
203
172
185
197
172
184
213
227
195
197
227
202
225
226
202
251
235
179
154
168
172
284
183
171
228
239
231
194
149
239
246
126
225
172
232
247
141
218
212
150
183
260
190
125
239
184
186
118
238
239
222
202
142
176
219
244
194
189
192
223
216
167
177
197
150
232
243
213
205
207
264
162
151
200
160
245
149
209
214
222
166
131
210
217
214
177
239
221
219
203
145
243
248
212
175
226
266
241
172
187
197
234
265
169
145
189
224
242
188
251
206
192
184
148
190
224
217
235
233
159
242
204
192
222
224
258
257
241
201
218
226
223
179
181
162
239
163
170
229
223
242
212
193
168
256
164
220
196
206
231
201
209
161
207
286
219
195
189
268
218
182
226
198
178
146
251
146
221
194
191
217
197
224
179
154
237
181
187
243
206
213
268
230
222
205
192
172
221
244
201
223
183
196
219
133
232
175
164
91
145
211
213
259
233
215
207
185
191
231
191
256
199
214
200
208
251
220
164
227
223
225
171
181
226
190
233
208
188
200
196
196
222
179
155
169
250
177
173
239
160
185
173
209
204
166
193
197
178
180
204
263
203
214
192
189
233
199
208
182
150
252
203
223
183
207
218
173
181
214
184
216
217
194
223
199
217
170
198
209
247
169
153
250
201
238
188
206
194
189
188
211
189
213
234
178
193
210
232
230
218
187
120
200
254
188
190
241
297
174
187
136
189
234
217
145
183
170
154
172
244
180
186
187
244
186
148
181
159
193
197
220
219
223
221
168
235
188
207
187
211
157
270
229
156
256
169
227
216
239
188
221
177
198
215
203
219
209
197
194
275
210
194
136
221
230
147
228
195
193
200
216
201
214
224
254
205
174
201
243
214
217
179
127
263
183
156
185
176
222
264
202
230
204
198
242
164
150
189
210
209
130
265
222
188
199
181
124
220
123
223
225
239
255
232
166
193
168
202
192
254
259
172
167
220
196
191
208
246
171
209
153
151
192
260
208
265
269
172
169
163
168
198
176
193
249
198
257
231
161
198
181
236
158
99
213
233
192
238
198
208
270
201
233
242
234
169
145
260
151
222
202
282
195
248
207
118
232
168
204
251
178
222
198
257
175
125
206
188
238
190
201
170
226
223
201
218
217
214
235
184
230
175
168
260
190
206
194
200
154
209
176
133
258
209
247
212
190
141
265
222
221
172
191
222
233
203
168
178
161
174
183
185
171
205
166
212
192
139
162
142
255
174
196
227
249
121
204
204
163
248
164
177
221
186
141
197
199
212
202
208
241
183
175
275
197
206
213
219
215
274
217
145
222
254
177
202
224
168
244
181
198
212
224
212
188
228
194
245
206
181
178
268
178
201
193
192
243
181
163
196
215
143
200
185
198
182
216
227
138
222
211
154
243
210
235
197
175
185
199
251
185
250
183
243
185
172
216
238
202
177
211
232
189
162
239
207
241
223
202
274
259
203
161
121
221
136
227
210
157
206
214
161
221
150
225
163
228
235
268
272
223
226
248
171
243
206
197
152
232
180
218
150
191
191
171
177
228
278
193
230
192
185
203
169
216
168
260
173
169
209
235
184
212
180
201
212
239
156
160
226
171
213
180
243
210
170
203
222
134
216
205
211
199
151
187
223
211
220
156
194
219
152
171
263
233
206
154
204
152
207
160
222
170
256
201
259
187
211
243
212
226
193
222
188
255
191
214
161
219
135
182
205
215
204
161
209
235
226
232
228
195
194
162
202
213
202
263
185
212
156
210
167
224
220
179
183
222
169
151
212
198
172
219
203
215
206
193
140
148
185
200
236
189
186
188
194
236
125
236
198
188
212
220
186
165
221
156
243
224
235
173
165
269
224
218
217
238
133
223
220
233
166
227
231
213
151
232
204
195
189
173
196
179
251
171
208
209
198
223
227
181
154
176
234
271
229
211
173
185
156
199
161
184
181
258
224
206
103
187
259
129
136
229
161
233
172
238
186
210
191
187
224
218
197
209
201
231
208
239
233
220
101
197
203
148
176
246
242
234
222
144
203
186
171
139
204
197
218
170
250
186
168
154
200
204
260
199
192
173
190
147
244
169
203
167
192
176
210
232
195
213
232
193
170
204
214
222
172
170
233
228
239
163
226
171
226
149
223
255
161
202
196
140
187
242
181
157
183
251
181
177
153
248
225
220
169
203
213
265
185
182
198
203
218
226
283
173
145
237
220
235
153
184
206
194
207
192
192
205
235
160
182
213
168
188
178
206
223
187
197
176
186
236
211
193
242
224
178
247
234
149
200
209
211
179
230
247
230
191
156
256
219
108
212
228
157
175
201
233
204
217
144
126
166
208
208
201
197
147
225
150
187
202
196
194
153
167
133
224
186
163
178
256
249
191
210
165
195
160
189
195
206
208
143
182
179
205
196
255
222
199
217
136
197
206
178
196
201
169
152
204
236
226
219
197
148
282
205
187
173
143
213
174
193
211
221
180
231
175
226
188
169
234
139
174
186
192
215
174
222
164
201
210
208
276
236
110
176
209
238
171
192
195
188
228
260
247
179
198
186
245
192
190
194
196
169
219
197
216
154
211
227
185
240
178
207
178
209
193
230
208
186
200
201
187
213
200
177
165
170
186
179
195
175
137
197
220
206
191
190
149
232
216
172
222
176
147
214
205
175
153
221
158
243
196
192
157
164
132
207
211
179
189
210
148
181
173
168
226
182
203
224
218
219
161
259
189
221
171
219
203
184
262
203
221
220
152
184
240
169
244
237
261
185
160
218
154
221
176
232
221
198
120
202
231
249
171
184
163
213
242
167
222
185
188
185
225
216
221
195
163
155
252
219
215
210
205
168
189
165
220
259
216
227
218
188
178
241
155
220
207
225
208
199
192
196
280
172
199
250
187
228
194
241
212
204
207
216
222
223
240
265
176
227
210
175
187
164
189
212
164
159
184
168
190
213
250
238
197
224
174
193
195
195
233
210
122
215
187
225
198
153
211
173
191
205
190
221
198
201
175
179
173
204
182
230
270
171
208
189
228
185
182
213
240
201
230
172
159
190
228
187
203
167
220
204
230
257
215
277
228
181
260
206
245
180
202
168
263
210
246
177
201
144
190
131
214
212
198
213
175
231
182
207
202
222
184
180
128
130
161
194
206
177
197
175
171
221
229
187
242
223
176
216
123
144
220
190
159
145
206
178
183
220
143
241
197
174
180
155
223
245
257
166
225
225
191
196
226
182
206
143
222
215
183
168
250
214
184
198
218
195
159
201
210
148
205
161
138
176
205
236
207
144
176
192
202
205
202
182
215
217
161
178
215
186
241
163
185
178
190
217
151
199
205
233
161
213
232
244
221
250
226
154
190
247
262
210
192
239
201
155
230
190
204
156
187
182
185
197
200
229
166
180
224
276
216
188
196
221
225
203
147
195
203
209
141
219
196
158
222
213
188
178
192
170
222
202
243
225
166
182
239
207
235
173
153
150
157
232
195
197
213
231
217
177
198
188
178
202
231
273
198
235
266
236
148
216
241
219
213
184
241
179
212
244
219
218
150
234
154
184
218
224
235
219
243
193
226
206
185
198
213
236
211
184
178
199
156
248
166
187
206
192
190
207
214
203
220
141
265
222
187
145
164
210
167
230
196
142
115
179
195
158
248
160
238
190
144
168
193
135
205
208
194
178
230
191
209
178
159
184
209
178
185
218
178
259
204
184
263
184
166
195
223
177
112
189
195
229
142
201
194
167
283
262
229
208
257
174
225
222
178
217
271
195
199
181
145
192
174
203
209
189
209
187
104
251
204
177
189
204
227
188
224
134
216
209
210
213
135
190
195
181
182
209
211
215
237
202
194
221
191
226
134
195
230
206
213
215
288
204
251
223
263
191
267
218
236
183
216
166
224
194
225
197
150
179
161
213
144
166
218
184
206
255
207
246
148
159
163
138
221
218
183
253
191
222
175
166
198
167
204
207
146
255
181
188
176
220
207
225
163
201
206
172
205
139
199
228
176
172
212
202
164
163
181
196
118
206
225
172
274
197
178
227
216
221
195
224
232
205
221
249
142
189
240
247
128
258
203
247
217
196
269
159
261
157
120
206
199
186
287
161
188
174
217
252
221
204
206
210
201
244
215
161
179
213
240
212
186
206
219
188
179
245
261
192
150
214
194
239
180
179
251
199
236
228
212
169
229
255
195
183
242
209
220
212
198
231
236
245
212
221
282
199
207
199
210
205
228
176
231
211
207
148
211
234
237
212
190
168
227
152
162
146
202
198
221
187
186
226
239
176
228
157
178
188
187
222
219
237
118
220
172
269
230
243
191
181
176
192
166
166
235
247
188
225
211
161
182
175
86
191
176
216
165
192
169
168
176
231
227
212
183
210
233
196
229
244
161
213
216
155
124
191
167
237
188
201
258
210
211
171
212
201
205
250
239
196
139
235
199
241
227
177
252
255
243
235
225
222
219
155
152
182
165
196
188
232
172
166
207
245
193
230
234
179
231
184
221
186
179
214
227
180
182
129
225
219
248
178
225
198
224
202
235
245
243
222
182
205
207
230
215
179
197
202
170
202
207
217
218
211
196
228
207
179
276
238
218
202
203
217
211
236
203
228
226
254
193
216
204
181
180
165
164
229
222
203
218
194
233
228
223
232
181
195
189
174
220
199
211
183
179
141
237
194
204
167
191
215
142
223
194
187
186
175
216
196
232
196
203
238
194
195
212
191
231
173
236
177
171
179
148
259
212
233
193
185
134
218
250
190
145
177
251
166
222
170
141
232
139
208
238
188
233
150
140
205
230
194
186
171
235
243
178
114
176
143
194
162
177
189
167
228
211
176
180
157
181
238
250
265
188
173
178
225
224
152
224
200
214
193
189
235
143
207
242
208
191
181
199
217
209
239
152
177
210
198
202
177
224
112
173
167
203
247
272
207
217
148
216
176
188
215
179
143
213
153
194
238
231
230
217
234
198
234
208
112
187
224
214
173
190
161
232
206
204
188
298
200
220
156
145
191
179
213
185
179
218
193
205
245
242
265
247
211
136
230
190
202
198
176
146
206
193
252
199
216
199
188
228
213
218
156
198
205
184
206
289
247
183
263
219
185
195
198
189
209
192
179
255
172
197
120
179
181
219
125
203
247
153
216
210
224
199
233
146
228
194
168
226
239
231
248
189
258
208
258
176
200
188
196
163
229
258
232
146
249
164
197
213
234
189
269
191
179
203
205
197
175
220
216
177
136
192
210
277
209
240
235
182
214
176
209
195
232
227
232
159
208
225
265
178
206
233
184
224
177
202
173
124
209
195
199
156
182
179
212
171
222
199
199
246
231
215
236
230
192
243
198
256
179
152
165
82
187
135
182
190
172
240
208
216
244
224
225
186
248
241
162
240
226
154
155
208
206
227
198
229
218
173
181
232
169
187
258
141
112
191
217
255
193
196
233
136
251
187
229
251
240
203
172
170
178
196
186
148
203
165
191
182
228
245
209
260
234
231
245
271
215
244
257
240
185
212
191
228
194
210
155
164
158
136
122
229
243
193
194
193
185
116
181
129
215
187
259
188
203
160
188
251
194
216
234
187
258
176
212
214
246
211
174
158
183
153
194
213
154
211
241
141
212
144
190
215
196
194
184
145
156
176
136
211
190
142
183
189
190
199
244
166
227
234
195
174
191
201
219
158
209
213
220
227
234
195
231
186
204
178
235
273
162
257
210
155
194
217
161
170
188
236
163
213
232
187
144
239
219
226
155
221
215
224
225
200
230
165
255
226
174
196
182
225
234
241
172
184
163
213
172
169
208
164
216
202
224
198
205
210
205
201
224
258
198
152
265
199
174
151
176
201
151
178
163
199
196
235
105
244
172
228
150
277
176
222
212
214
165
201
202
190
193
206
161
249
185
166
172
234
206
200
237
122
223
158
236
260
192
164
121
180
235
213
193
239
226
167
192
170
210
233
209
180
185
200
245
170
209
181
205
166
210
153
232
176
204
224
208
178
236
189
174
181
183
233
192
294
199
144
204
259
287
223
191
225
239
193
193
153
206
134
256
222
227
173
219
203
242
217
242
200
127
256
225
246
226
164
229
217
174
191
162
210
202
209
128
232
226
220
189
223
214
187
259
250
257
192
184
179
145
216
206
237
191
182
249
164
189
145
204
151
214
219
227
264
184
183
167
203
206
165
184
258
206
173
220
127
163
158
210
116
195
187
169
251
198
231
222
183
201
171
201
229
184
194
213
244
233
201
186
236
172
269
191
237
168
137
238
211
164
179
233
166
194
161
182
204
173
188
128
170
222
225
184
183
179
215
180
269
187
145
152
226
268
218
157
216
177
144
233
182
144
194
228
205
155
204
248
221
231
196
196
206
200
156
206
173
166
207
168
244
226
149
202
153
219
175
249
219
223
250
218
179
158
232
162
121
233
185
241
195
174
201
177
125
211
190
225
185
256
225
196
217
212
167
222
237
206
269
216
244
234
249
163
164
185
206
192
246
247
177
166
195
196
211
187
212
214
184
214
199
226
215
176
205
225
187
174
201
181
198
208
258
193
206
203
184
190
211
147
239
260
175
227
190
227
143
161
251
187
237
152
198
193
244
133
227
213
194
197
289
161
187
251
257
160
157
214
164
249
203
156
188
246
196
166
177
170
151
237
243
168
227
177
172
202
219
177
156
180
172
262
222
198
223
206
223
185
201
211
189
203
232
191
229
226
190
152
177
209
183
268
207
141
208
198
202
225
212
234
169
223
186
182
238
190
172
202
240
169
217
216
191
148
199
181
216
212
165
167
168
189
253
262
152
219
248
211
179
214
152
211
209
203
159
187
208
147
240
230
179
206
196
157
213
207
232
209
205
228
227
228
179
138
206
124
204
253
169
177
250
209
163
206
134
165
192
178
201
191
211
130
219
219
155
211
165
200
198
225
156
216
215
195
182
258
230
150
224
146
176
195
196
202
178
169
155
224
234
222
237
194
233
210
244
120
201
220
244
198
194
199
164
200
152
189
203
212
145
280
219
231
205
254
208
242
215
227
206
206
174
214
190
208
201
155
189
151
182
150
147
280
193
147
271
198
203
183
230
180
195
124
220
144
163
196
208
216
198
208
161
125
212
204
230
206
144
235
199
234
191
196
206
271
261
182
229
201
180
201
220
196
220
233
213
184
202
172
201
238
187
218
163
214
177
220
193
179
192
205
254
160
126
194
243
216
136
185
172
208
193
174
200
196
175
161
182
261
232
215
210
228
205
178
168
223
235
210
207
207
231
239
278
183
234
256
181
221
153
219
233
215
122
159
229
217
254
239
171
172
177
223
260
255
254
113
259
134
229
219
247
242
255
232
130
214
220
210
213
170
168
175
179
208
238
156
150
192
208
229
147
196
208
193
190
219
223
128
214
177
254
242
241
246
221
220
187
194
216
165
221
211
234
206
236
202
243
196
178
195
204
189
169
222
141
146
221
105
205
145
249
202
217
247
180
218
241
214
132
211
237
188
207
173
226
240
188
218
182
160
221
221
180
254
192
176
179
142
277
170
187
203
218
198
198
182
216
238
259
267
216
163
199
235
171
134
181
221
195
266
231
170
199
228
202
184
190
164
115
203
229
264
147
231
182
192
164
223
248
137
215
248
219
238
184
209
133
230
156
231
230
233
242
220
182
216
206
151
242
220
211
188
208
134
188
182
218
202
251
234
225
208
114
236
226
206
228
198
175
179
210
134
206
201
183
163
195
180
137
245
224
233
201
265
224
198
238
176
147
230
196
250
220
230
163
201
213
231
201
238
201
158
172
170
154
189
155
259
172
286
201
214
196
211
198
184
194
170
162
156
211
162
197
191
246
275
217
212
150
203
211
206
148
204
241
233
134
187
261
224
206
146
257
275
218
251
233
164
158
192
173
316
159
177
199
227
203
187
233
244
244
148
211
205
183
177
241
261
188
267
246
206
185
146
161
225
198
209
193
198
168
189
134
215
267
157
225
181
223
251
243
231
221
221
237
233
254
312
209
205
153
129
190
193
192
187
141
136
248
196
275
191
161
164
237
185
230
184
226
210
241
184
225
234
225
137
162
162
154
185
182
205
174
210
224
190
138
213
200
180
239
245
185
239
223
213
205
140
152
199
204
206
234
137
221
208
235
138
209
164
218
236
162
173
207
211
210
89
166
259
240
225
224
205
147
231
75
222
185
163
232
222
238
228
228
192
262
170
207
221
249
159
179
173
146
177
189
246
249
134
177
220
220
190
165
239
229
218
251
164
232
130
200
254
213
217
229
239
183
145
192
166
222
195
200
221
182
277
188
186
233
220
133
216
195
251
227
199
197
206
226
204
171
205
163
227
170
178
137
200
213
174
194
205
199
215
174
167
143
179
212
218
246
248
201
240
252
240
202
172
150
131
142
187
189
164
214
232
228
204
173
230
201
159
181
209
169
218
193
234
206
201
176
208
197
224
154
210
239
189
218
169
176
227
234
226
177
233
189
170
205
176
208
200
166
224
145
148
198
190
180
185
256
169
255
199
148
232
181
136
153
200
261
181
150
219
162
242
195
252
180
257
173
237
215
236
219
246
214
211
185
197
188
206
160
235
179
169
181
192
247
182
143
242
265
186
147
223
205
194
221
182
229
252
205
155
154
136
239
195
202
204
236
211
113
256
226
147
168
246
167
214
243
236
182
194
209
192
193
219
230
167
253
213
166
179
261
207
252
172
198
155
234
144
145
170
198
200
238
191
189
162
187
168
188
205
274
128
208
129
177
182
217
183
171
200
187
271
200
178
215
166
169
240
262
192
183
191
191
215
174
234
196
219
255
228
216
208
204
211
205
238
181
173
184
238
201
212
245
208
184
221
218
215
184
282
231
282
188
233
211
240
203
243
218
192
189
162
227
174
167
212
230
226
190
166
228
192
251
214
240
226
267
139
125
168
225
179
184
227
212
222
205
173
190
195
166
252
272
220
226
141
205
198
181
251
202
184
169
209
213
223
199
190
170
223
242
210
169
172
218
202
200
260
210
201
203
137
219
244
187
235
186
236
214
205
234
189
221
205
221
189
168
226
188
182
143
183
142
149
195
160
241
218
216
224
222
206
157
175
229
244
244
219
193
232
186
174
227
205
222
212
161
224
190
143
181
195
201
321
178
153
190
162
227
228
195
237
212
160
261
213
216
154
228
229
242
166
224
262
283
198
151
168
234
238
224
180
198
189
192
248
210
192
210
244
144
165
176
165
223
193
158
183
251
219
211
189
184
148
249
195
223
154
156
224
145
224
133
148
133
160
166
197
211
242
277
185
128
158
223
204
171
184
217
184
214
202
280
215
178
150
230
198
214
237
134
240
206
212
158
172
151
153
133
253
220
122
226
233
219
241
165
198
173
165
259
205
273
242
197
147
215
165
138
245
190
170
256
237
199
201
200
189
188
209
119
191
200
197
161
225
156
226
156
163
158
210
179
203
230
176
231
217
231
193
151
169
198
228
160
180
222
237
194
216
188
258
152
197
167
233
225
205
221
265
222
132
128
209
263
195
232
254
236
190
254
274
284
263
232
172
203
231
235
161
206
215
204
204
200
196
177
191
253
148
211
193
226
209
198
187
236
206
220
186
196
195
175
234
193
205
138
171
246
232
174
221
152
212
263
223
212
226
236
174
207
220
263
229
202
197
224
173
177
242
230
236
205
232
229
258
192
145
171
229
214
293
178
234
190
237
246
221
208
194
227
151
151
179
204
184
200
239
274
168
235
138
188
212
192
164
281
109
149
183
202
217
196
178
192
152
192
152
225
140
233
204
131
214
123
192
180
195
277
182
281
203
194
208
148
148
162
180
228
183
243
228
204
218
178
205
203
254
179
222
226
203
232
211
240
231
177
190
218
132
199
161
206
193
227
207
243
213
174
179
175
156
242
235
203
191
179
263
204
213
166
199
182
235
222
262
162
164
182
208
175
222
237
236
186
265
184
234
199
108
169
244
166
211
202
171
211
233
214
159
171
163
200
182
228
196
234
222
217
224
217
224
161
224
221
173
218
211
195
186
174
220
142
165
205
229
232
208
215
175
218
140
177
262
225
194
205
202
193
202
186
179
147
233
203
165
251
181
180
151
218
264
134
225
242
158
180
216
194
191
244
218
218
213
231
201
196
239
193
219
207
248
168
194
194
232
149
251
203
182
195
125
192
237
183
121
186
178
207
194
212
159
229
196
184
132
163
228
187
201
224
180
232
204
255
175
157
190
257
214
172
147
193
210
124
197
173
221
145
211
185
205
203
177
229
175
198
220
252
176
146
235
191
202
203
190
114
233
215
155
195
224
171
260
265
157
196
221
210
241
234
195
208
119
265
169
231
258
211
230
182
288
137
198
188
170
193
211
150
129
191
174
192
138
285
235
193
199
219
187
256
183
226
187
187
212
188
194
263
200
234
222
178
211
233
175
255
205
198
220
258
173
203
271
235
229
181
146
139
251
241
163
237
210
219
204
265
231
197
177
253
225
174
206
221
175
121
221
168
226
144
184
233
217
177
177
181
173
219
228
225
190
216
173
188
160
255
183
138
179
181
197
217
261
180
190
192
178
177
246
177
208
202
187
209
229
153
207
251
164
217
199
178
227
162
215
228
184
187
171
289
236
245
148
243
213
196
198
251
203
227
168
220
245
168
190
203
203
196
161
241
228
190
208
194
210
224
169
263
222
212
169
158
187
153
209
187
178
203
173
171
212
213
131
191
197
228
192
244
126
220
205
199
208
258
208
127
243
214
248
171
182
235
224
232
215
215
267
156
192
220
237
144
227
237
219
244
161
259
227
184
214
229
248
196
165
220
217
171
224
207
198
185
157
263
204
192
221
242
181
193
203
251
172
228
155
214
248
139
232
259
189
234
194
238
185
206
175
225
201
205
239
241
252
213
224
178
201
176
242
241
217
120
222
265
262
206
204
173
201
133
184
163
223
159
168
199
171
123
201
216
207
213
245
155
239
210
185
209
143
207
244
89
172
174
183
156
233
138
188
219
220
216
176
167
149
156
151
260
159
197
195
217
222
171
203
224
227
227
175
200
154
234
154
160
220
165
181
258
196
246
198
178
227
221
188
190
188
162
228
166
173
135
179
178
198
122
165
165
204
219
168
178
224
200
175
221
227
170
142
179
170
227
185
258
243
198
200
204
174
204
220
161
140
203
209
197
189
247
177
203
122
274
241
243
200
238
217
200
186
218
206
227
175
228
180
231
166
223
170
137
216
193
160
212
163
218
213
196
177
207
207
206
217
227
163
138
154
142
162
206
259
228
211
176
163
195
225
242
221
195
198
267
138
199
190
135
224
207
226
216
175
251
154
189
147
210
216
153
173
195
202
221
261
199
201
193
218
114
166
155
121
265
162
225
162
150
236
262
276
250
181
204
240
173
255
144
195
290
153
252
186
201
205
163
179
243
171
166
174
176
135
146
218
177
191
222
198
172
215
108
211
215
224
179
195
292
181
161
176
208
207
157
212
224
142
212
276
154
226
222
246
180
229
133
191
168
156
161
256
189
151
232
197
235
229
253
193
148
220
216
172
204
200
196
165
189
210
235
193
218
175
154
233
223
204
174
142
228
176
180
246
193
204
176
212
201
186
209
213
219
165
199
192
185
171
197
253
135
242
228
218
187
205
223
172
185
218
177
210
223
148
132
247
182
179
216
224
178
188
144
196
201
194
179
243
215
160
201
199
239
188
269
239
221
248
169
177
254
212
239
250
208
203
133
268
172
207
222
204
145
179
213
223
75
188
199
222
150
167
144
237
138
185
236
191
242
214
230
197
226
170
252
225
192
247
254
141
189
170
139
258
190
178
188
176
224
216
190
210
209
248
247
199
203
163
178
232
185
148
213
197
174
145
164
190
145
174
217
147
160
270
212
181
172
253
165
190
216
229
188
151
198
171
180
203
199
168
170
191
165
181
215
200
217
153
223
210
197
181
181
190
197
197
167
196
217
157
209
226
148
159
130
196
231
254
268
173
144
221
196
241
236
221
172
127
211
204
193
257
262
156
180
148
238
243
219
215
252
124
214
222
176
202
150
168
237
196
170
228
176
145
198
180
159
249
213
159
181
221
175
216
227
182
218
195
180
232
194
212
226
131
183
155
164
274
220
156
240
220
235
222
200
198
219
187
236
156
185
202
217
159
248
179
153
173
188
199
251
159
185
148
201
152
212
223
234
143
148
169
204
198
255
230
239
243
278
234
194
168
172
217
188
276
216
203
268
235
152
226
173
102
176
250
190
159
215
210
240
194
118
218
247
192
209
271
196
155
219
212
190
190
286
216
185
203
157
162
229
213
182
231
190
176
213
197
171
133
258
225
240
198
181
222
185
197
187
143
144
161
191
178
147
199
207
213
209
150
203
191
183
233
229
189
219
182
169
226
192
257
239
230
199
206
198
218
240
160
196
230
193
163
168
243
212
191
163
188
160
193
222
199
197
235
146
186
226
230
245
170
194
195
176
179
104
219
157
221
199
215
189
204
193
236
178
202
155
165
206
181
198
204
131
201
182
171
206
242
171
214
165
217
203
203
150
201
170
216
187
154
255
242
200
181
185
209
184
185
202
225
150
214
167
186
141
240
207
195
290
237
154
228
185
194
239
263
235
210
190
248
177
210
223
154
235
162
190
200
230
235
196
209
228
160
231
119
114
182
227
275
209
175
204
153
217
218
228
172
192
216
229
161
158
159
195
242
252
120
165
242
219
174
223
215
188
188
226
194
258
168
223
221
156
246
192
162
188
189
190
242
151
245
149
183
189
216
177
213
213
183
171
239
158
183
188
198
221
171
206
240
236
171
247
179
192
229
158
162
222
201
194
189
269
187
247
195
145
167
251
188
182
191
270
203
206
222
171
226
220
204
174
253
168
209
236
210
182
149
215
225
207
236
243
198
151
214
190
230
166
240
211
238
223
160
141
212
253
151
199
258
183
192
192
174
172
241
167
248
196
234
179
223
198
170
224
239
208
208
237
181
216
222
242
193
255
220
181
143
222
191
246
194
183
177
159
184
208
210
260
206
216
154
218
224
189
200
181
236
174
250
181
190
195
161
145
200
170
239
250
211
158
198
213
236
226
194
193
162
223
189
244
206
259
131
222
184
195
164
175
247
160
176
227
182
233
181
180
176
137
199
159
224
254
171
134
202
186
230
247
167
172
241
137
259
168
176
215
156
183
218
213
227
164
118
197
195
236
157
203
152
132
178
180
190
231
185
203
239
194
216
197
163
210
187
218
173
242
240
192
232
207
228
184
210
270
166
172
222
194
220
224
228
198
233
264
150
184
153
170
208
209
215
216
119
220
196
205
233
206
182
246
250
262
208
213
147
192
232
236
208
168
257
205
204
216
179
195
146
169
242
200
226
247
183
202
227
116
213
163
262
173
182
236
168
228
235
169
259
237
202
145
213
96
188
126
203
157
193
216
207
227
163
191
174
194
175
171
180
224
228
149
209
232
147
204
226
206
169
233
175
127
180
259
235
251
137
248
180
215
193
224
137
204
219
187
238
186
182
225
140
212
215
177
213
238
195
190
209
250
149
160
139
195
225
226
228
174
213
268
151
216
169
177
209
193
207
208
162
177
191
226
287
195
198
285
193
176
133
223
225
191
253
236
173
149
215
208
201
204
214
162
228
217
268
219
204
192
162
173
141
115
183
134
129
238
258
228
188
166
214
201
211
254
195
204
172
199
206
214
181
192
171
175
219
165
201
164
204
148
159
217
207
164
246
210
197
135
184
175
155
186
163
223
177
205
176
195
254
178
147
167
187
218
162
226
185
231
254
145
221
209
186
201
207
208
223
210
207
197
196
189
227
182
183
270
218
201
195
217
252
175
186
164
192
158
270
205
214
194
155
195
239
219
197
155
239
235
181
156
244
210
225
128
211
205
224
203
210
100
172
145
186
188
216
182
136
190
150
175
226
167
240
178
211
178
218
230
151
194
231
158
227
201
222
153
174
214
244
164
206
165
238
207
236
153
165
135
203
135
202
277
246
232
176
260
207
239
239
169
140
242
206
225
214
241
244
181
218
169
176
218
161
144
230
137
228
241
159
182
173
135
218
180
202
148
235
202
269
250
167
275
175
182
212
144
204
168
216
204
217
125
154
199
207
192
219
195
180
164
216
215
205
209
181
191
215
171
79
271
235
208
274
198
115
235
128
126
216
172
203
179
162
104
150
169
251
189
226
226
185
223
251
255
256
202
170
207
207
198
220
178
262
218
207
150
187
194
154
210
167
204
143
158
228
188
184
177
202
189
218
197
221
281
246
206
221
120
234
235
199
208
215
175
216
175
197
182
200
193
206
220
214
249
157
178
212
234
189
231
250
246
211
198
228
226
221
216
219
233
166
185
195
143
253
155
185
104
180
128
146
244
216
166
192
247
145
191
188
181
184
174
207
213
155
216
202
233
177
256
162
176
257
224
165
179
170
189
138
209
160
207
151
278
159
197
210
196
178
211
228
160
215
209
178
166
188
193
205
213
247
261
237
210
208
250
198
121
176
180
187
173
164
184
169
156
136
233
261
234
146
181
156
200
235
199
188
204
180
203
156
173
189
212
218
204
181
119
229
219
221
264
186
242
222
197
193
215
189
208
240
158
225
144
157
164
133
249
192
228
182
182
199
227
168
184
209
143
216
236
217
210
243
209
219
187
170
190
219
152
218
195
111
244
238
145
208
214
215
237
187
155
226
228
231
170
178
259
180
306
243
205
197
145
206
191
183
259
148
235
197
240
167
207
223
230
200
214
180
244
171
157
276
191
209
120
193
207
198
173
147
207
188
254
217
183
239
211
160
200
148
166
190
159
227
200
198
222
179
161
229
244
167
262
205
201
215
222
189
182
222
191
238
229
231
244
263
246
167
195
167
194
188
285
202
205
198
208
220
169
226
212
184
210
197
175
230
171
207
213
244
143
174
184
265
205
257
190
213
171
212
189
230
177
180
220
252
175
271
170
202
226
200
207
213
185
200
232
171
148
188
191
231
193
151
162
160
189
217
243
218
176
152
157
208
234
193
211
228
168
203
225
250
202
206
204
250
206
210
187
193
219
182
242
239
168
100
195
222
254
191
201
166
218
213
210
211
217
239
229
241
201
161
177
203
147
270
180
202
202
193
190
234
184
158
119
158
190
259
193
214
239
190
197
167
199
202
182
198
151
215
246
256
259
190
173
178
241
217
134
198
172
239
186
171
192
227
174
192
226
224
248
181
181
167
210
126
263
187
276
234
211
223
228
182
202
189
181
187
212
250
211
209
167
112
207
237
209
196
192
176
181
183
183
235
281
128
166
177
219
168
235
166
255
157
183
210
196
207
143
248
191
179
189
244
238
129
185
199
209
235
136
178
223
218
237
254
211
217
177
225
142
215
251
156
267
175
218
240
232
211
147
213
209
179
244
253
271
204
242
177
149
168
223
173
196
252
226
140
208
168
172
250
160
189
177
172
195
191
194
252
253
169
212
221
223
226
137
220
174
159
257
140
226
181
221
240
167
189
247
198
191
216
254
203
141
93
130
172
170
213
213
257
192
226
219
167
150
131
148
173
229
180
225
216
200
211
109
165
181
173
182
247
174
173
189
217
190
201
204
203
215
320
236
226
169
218
216
175
173
230
257
214
184
197
150
203
222
195
209
266
228
152
226
170
199
222
142
182
185
249
218
232
175
186
234
184
204
250
226
148
228
231
226
155
200
179
223
282
148
181
225
267
219
179
172
144
179
202
166
163
170
223
209
267
160
232
242
219
249
187
196
226
225
206
191
212
209
220
221
175
192
166
194
122
185
160
193
254
202
228
233
168
180
175
235
156
195
228
158
176
262
219
165
224
197
210
208
199
158
190
181
250
223
239
218
246
183
178
167
164
222
172
261
148
160
182
231
207
227
201
194
192
189
247
196
212
188
232
176
203
144
221
198
194
207
222
186
189
148
219
222
240
258
197
232
220
176
209
225
223
246
155
252
187
224
183
189
183
222
190
193
162
213
174
232
207
223
253
239
252
305
163
198
168
168
206
164
187
156
203
207
210
123
155
235
206
156
204
214
229
132
194
220
165
214
188
184
184
154
187
236
204
196
149
186
256
214
191
217
189
189
243
184
159
171
267
195
241
205
154
260
236
166
179
168
224
179
156
128
229
219
172
202
156
155
191
205
234
191
194
219
227
218
204
131
210
228
193
180
198
225
223
214
200
203
180
182
239
209
236
185
187
202
168
196
205
113
177
201
211
119
218
152
155
195
158
201
224
186
122
244
94
166
236
198
166
154
207
168
153
186
211
198
205
282
174
174
173
196
183
269
179
208
225
157
220
200
234
179
193
204
251
199
159
205
155
228
159
190
209
208
211
192
202
167
227
232
169
169
232
147
205
175
241
187
262
152
171
222
195
177
153
213
214
147
239
234
259
176
148
224
167
220
234
157
200
147
163
216
220
196
186
175
165
232
219
194
145
215
169
219
235
213
202
244
179
160
191
255
205
200
175
164
168
180
230
236
153
157
101
227
181
177
138
199
224
238
206
203
175
178
266
163
236
126
194
136
203
178
221
179
168
216
212
216
201
233
146
241
252
213
235
160
268
171
178
193
213
175
243
197
179
187
157
196
251
215
236
248
222
216
194
180
235
117
243
167
124
215
198
203
226
161
166
227
235
96
250
154
173
198
191
160
193
163
179
169
147
192
196
187
121
131
236
225
231
185
165
235
200
228
199
181
248
222
191
232
199
137
210
220
260
167
194
171
221
128
187
177
195
234
259
168
222
186
239
221
176
200
213
244
237
177
228
191
151
204
219
193
248
176
190
218
187
252
207
96
185
246
196
139
142
199
270
225
194
223
168
230
187
197
217
212
196
251
215
179
256
234
236
152
136
204
180
190
178
234
229
250
223
220
186
206
187
169
159
136
134
208
186
216
154
199
246
216
217
233
133
84
229
266
240
236
197
247
193
204
182
148
231
198
263
185
177
216
202
244
217
173
241
245
196
196
233
171
177
258
203
201
196
181
247
228
162
241
198
181
221
184
251
206
177
123
209
186
146
186
202
221
223
253
264
201
176
201
220
229
158
218
227
214
201
200
246
169
287
201
214
180
247
190
197
270
247
189
208
229
204
114
196
227
178
256
203
177
241
195
231
237
191
207
197
181
221
198
233
236
261
190
179
216
253
187
160
203
217
201
191
214
239
202
127
215
188
214
171
183
189
198
182
174
195
223
264
235
193
203
157
189
161
194
181
221
208
244
236
169
224
196
216
117
181
233
176
154
165
222
244
184
188
270
237
120
219
221
226
152
193
234
149
210
284
193
244
253
146
225
190
216
247
132
173
244
219
177
174
157
197
171
159
201
182
178
199
163
221
219
252
178
159
198
174
214
223
224
241
208
159
164
171
229
159
222
225
184
197
162
165
190
190
128
197
194
236
183
248
183
181
159
155
216
196
254
203
210
257
143
218
152
200
216
239
219
215
147
181
211
243
178
216
204
201
142
163
199
227
156
224
204
202
183
161
270
159
151
120
228
259
180
179
242
183
234
224
196
214
208
103
115
134
87
167
159
180
204
188
244
148
210
193
226
260
281
228
230
229
124
214
184
256
187
159
165
216
163
339
252
265
196
216
165
211
157
237
200
147
195
163
202
221
197
239
167
206
163
178
205
163
200
235
227
204
175
196
264
199
191
214
198
217
233
235
156
284
187
209
176
238
162
269
169
208
197
248
168
202
158
205
183
224
160
214
153
222
180
196
223
212
177
201
261
221
182
169
218
173
219
167
242
211
202
203
206
157
171
210
246
244
197
194
230
242
244
219
221
196
137
213
184
220
193
258
226
284
187
191
223
222
200
155
219
183
231
149
230
175
219
164
211
211
206
220
175
175
227
207
144
191
196
199
274
234
152
208
218
158
218
232
114
161
171
190
191
223
218
182
234
175
206
219
199
238
185
157
181
213
173
242
216
137
142
213
105
193
211
171
231
169
210
205
157
158
231
202
199
218
182
205
155
200
174
207
168
183
216
159
226
171
193
170
243
185
193
182
177
217
241
170
155
151
192
209
218
211
189
182
194
191
170
219
235
197
166
224
219
217
166
193
188
187
190
167
210
218
181
173
152
244
128
237
222
262
134
221
235
253
254
234
155
174
178
215
195
182
165
160
232
233
190
231
215
216
231
110
260
233
157
287
231
224
206
224
170
220
207
235
198
196
210
245
247
185
196
179
214
180
194
217
242
249
216
195
205
168
181
208
225
186
174
223
138
179
200
136
195
219
171
213
216
206
218
191
190
169
179
233
267
223
171
170
180
199
210
199
188
125
244
121
166
191
197
191
224
169
172
184
215
193
210
230
130
243
245
210
145
219
180
128
227
241
154
156
155
232
203
156
253
218
195
191
212
182
220
156
156
205
202
258
296
185
211
244
247
186
177
203
190
165
148
184
230
190
273
217
225
200
178
190
288
204
178
222
170
163
183
220
202
229
261
207
222
187
245
174
209
273
256
243
225
150
205
223
188
211
170
208
218
199
188
151
200
147
186
178
158
162
191
202
165
202
224
141
225
214
197
219
190
246
211
267
190
198
248
140
126
272
236
177
184
210
199
137
202
216
193
190
218
224
259
211
252
253
163
195
229
272
189
146
152
196
186
182
219
276
142
228
220
169
203
202
211
205
171
229
226
241
232
228
204
175
226
190
180
262
214
210
184
197
243
228
160
224
269
210
198
119
253
243
165
236
191
246
173
260
205
211
121
205
200
229
195
205
193
249
222
157
259
178
248
217
203
188
148
218
209
165
210
207
194
129
192
175
207
246
234
194
243
229
200
194
228
213
240
152
249
179
181
184
240
226
202
257
180
222
228
218
220
137
177
190
209
148
204
216
176
213
221
173
210
189
168
215
188
154
200
194
172
182
183
182
174
142
221
159
184
236
170
208
171
256
151
204
176
150
148
182
229
222
251
184
194
188
95
191
136
238
199
212
188
250
270
205
186
194
208
220
192
212
238
219
186
148
150
223
253
217
197
217
161
160
223
129
226
207
182
164
228
230
264
198
186
195
187
199
231
207
197
189
202
147
223
207
211
189
194
171
239
207
207
248
240
222
219
142
135
215
216
216
176
200
186
234
245
246
211
183
196
175
187
202
222
219
201
233
187
225
205
119
171
189
244
184
225
223
222
207
178
184
231
248
208
226
201
254
161
173
195
212
165
175
162
209
201
174
185
189
170
212
163
180
197
216
180
224
235
161
179
177
231
227
241
160
225
215
170
188
195
246
194
186
261
212
225
144
207
191
279
233
204
278
237
238
237
164
108
250
214
212
159
206
211
206
174
202
150
157
190
198
161
246
261
154
127
248
254
248
209
195
219
218
160
198
197
205
196
213
233
179
211
233
222
170
199
223
173
181
189
193
212
146
189
240
235
208
198
208
220
176
214
116
138
152
252
244
187
222
236
215
270
153
181
129
208
193
206
198
224
236
182
201
167
226
174
217
269
194
184
158
221
175
231
260
189
219
197
181
244
220
193
229
179
153
239
189
210
200
198
216
224
199
185
233
187
192
245
246
187
192
233
248
130
190
153
187
153
222
236
217
210
176
177
244
233
164
188
220
175
257
210
203
137
228
225
172
266
232
232
224
168
200
235
178
206
180
229
300
184
227
216
236
220
189
168
231
221
261
220
163
189
260
186
231
176
158
178
223
169
184
203
208
228
221
181
302
138
204
211
198
215
139
158
177
220
112
271
177
187
181
178
178
192
166
212
204
175
177
178
194
201
153
180
187
179
173
188
113
204
188
258
224
226
229
174
222
249
269
139
240
232
190
121
201
186
220
172
200
200
188
226
261
241
205
157
190
234
201
229
128
182
220
198
217
234
238
201
157
225
146
217
225
200
126
206
180
224
162
190
197
181
189
127
259
134
255
119
225
157
170
199
257
206
149
152
178
199
162
196
214
263
225
197
231
203
219
244
167
160
240
190
207
197
163
190
153
248
187
226
186
200
205
169
232
155
160
185
223
238
180
179
178
216
195
141
208
158
179
181
176
241
246
189
212
232
165
203
232
198
173
214
244
212
282
257
219
168
169
222
168
159
188
211
195
227
161
241
258
230
192
222
228
213
176
139
219
159
199
206
235
204
206
222
191
194
141
184
225
191
198
215
220
197
238
116
287
171
210
245
191
189
172
154
192
230
231
253
155
211
263
240
218
167
198
177
209
191
198
273
273
208
151
189
218
129
176
192
240
169
180
190
188
176
189
220
148
232
221
155
268
118
201
178
214
226
222
176
178
132
123
192
207
135
285
214
241
177
233
224
255
186
185
197
230
148
209
199
228
184
167
165
193
246
225
213
159
121
183
221
170
233
211
186
243
159
155
163
181
130
231
219
143
231
209
175
221
172
205
226
261
208
209
148
263
231
206
250
171
166
184
242
209
140
213
224
213
174
202
135
211
207
233
190
190
163
216
180
216
127
183
246
223
245
202
232
214
248
170
215
144
264
200
218
165
198
172
165
190
226
258
170
114
223
169
212
158
226
195
157
209
221
228
252
174
208
252
167
136
243
173
187
237
224
166
143
209
193
165
184
217
268
142
220
245
187
215
230
206
144
168
181
146
167
272
244
202
181
240
154
164
205
124
189
194
227
194
242
210
220
232
191
164
229
156
195
222
185
213
201
156
228
236
197
243
207
215
240
255
201
160
244
163
227
194
148
226
208
218
213
127
196
246
146
135
198
199
218
177
216
175
197
186
175
179
179
280
234
177
202
157
174
199
241
234
192
171
191
242
207
209
188
253
207
212
285
220
183
195
131
211
240
144
188
206
189
202
247
220
187
169
182
157
224
188
217
231
216
261
211
186
220
89
201
196
245
299
230
220
254
152
184
135
161
162
177
184
198
180
144
121
190
204
214
184
176
207
213
213
242
169
261
107
188
259
244
240
119
202
176
272
245
236
214
158
161
239
150
181
120
229
206
201
201
181
213
216
229
201
141
219
155
244
174
216
163
220
203
177
226
197
166
184
158
232
164
166
155
188
235
201
170
163
223
222
201
220
202
145
191
221
187
203
188
210
172
230
171
178
257
174
247
203
206
178
164
221
85
217
184
168
237
241
218
211
216
191
249
186
215
193
140
232
208
229
261
241
200
242
184
214
225
161
192
220
189
223
183
200
153
206
203
228
244
213
192
170
178
188
176
238
189
252
180
274
202
198
178
208
144
204
188
197
190
278
176
136
132
227
249
234
230
210
151
197
150
224
211
223
210
170
215
230
200
225
262
127
199
198
178
247
281
206
170
209
199
211
232
169
225
202
183
221
184
167
138
222
154
194
208
154
199
186
127
183
237
191
189
218
248
178
140
163
285
167
186
235
202
165
156
197
246
238
181
143
236
198
241
196
207
198
195
189
272
216
148
175
248
202
231
216
247
188
181
202
219
236
157
221
203
160
213
177
169
172
205
213
223
135
219
199
162
171
245
186
179
203
226
150
211
218
182
226
236
207
202
164
209
156
229
173
231
155
246
234
145
149
251
258
202
256
189
153
191
217
203
149
196
198
141
261
192
163
190
216
235
230
232
233
156
189
223
212
201
220
194
181
249
185
223
178
199
228
229
236
194
174
183
192
172
157
233
201
209
214
175
159
191
202
188
235
177
236
209
185
174
185
245
232
134
200
239
222
256
206
178
249
212
209
223
185
216
217
206
209
173
257
182
271
255
230
208
180
212
177
247
217
220
223
202
180
199
188
271
154
228
142
205
228
181
159
215
156
196
185
244
184
179
194
192
211
205
223
214
156
233
282
276
242
225
193
237
172
231
143
205
149
196
213
176
167
208
212
200
229
178
156
135
192
234
177
161
187
240
230
171
161
138
158
164
178
186
149
222
219
166
167
246
239
195
204
203
187
229
229
151
132
209
159
195
177
187
172
261
222
240
250
217
174
239
189
228
129
215
126
174
141
176
146
233
190
236
212
121
207
238
220
234
234
219
271
203
172
275
196
177
241
230
220
191
192
252
148
172
227
236
242
177
156
182
203
216
227
175
215
250
213
226
187
204
230
238
176
202
206
183
215
150
220
266
249
196
182
217
197
199
167
146
194
149
164
167
210
228
241
205
204
146
162
174
167
201
212
205
216
273
144
184
216
227
181
174
181
189
182
165
155
233
263
150
160
183
243
134
135
130
195
172
215
156
161
212
179
204
196
218
206
216
189
260
236
203
180
220
189
202
209
190
256
146
223
149
138
213
227
220
138
171
178
194
222
191
158
205
193
197
229
241
228
165
219
142
172
210
158
207
163
148
174
188
218
182
225
182
208
236
176
232
251
269
197
212
231
166
168
246
234
166
162
234
237
179
269
197
213
209
231
191
207
225
241
212
190
211
148
193
162
200
204
237
234
205
165
183
212
224
196
177
179
301
237
242
209
196
203
156
210
214
195
216
193
225
168
214
219
177
226
212
184
226
181
248
145
167
134
146
259
171
156
223
188
216
198
205
184
210
186
170
183
220
183
217
192
260
154
188
240
174
224
144
250
219
197
230
175
213
242
147
119
196
213
156
196
209
160
187
205
221
96
221
243
171
128
179
214
194
199
211
250
258
158
193
221
219
245
232
176
252
183
249
240
175
177
238
134
256
228
214
190
165
157
175
179
173
197
221
239
189
283
248
222
168
194
240
237
216
207
212
183
171
234
200
218
183
176
224
128
251
189
241
240
186
185
219
194
175
204
185
175
180
233
235
191
232
170
169
187
178
220
159
161
204
125
212
235
209
239
215
193
166
211
214
194
206
200
199
180
189
200
237
173
201
233
173
214
211
195
197
214
207
223
242
188
166
205
190
215
232
236
206
256
227
184
215
233
213
184
137
228
213
195
153
206
210
258
234
225
166
119
228
229
209
172
184
204
230
207
206
234
256
194
228
246
203
170
230
165
191
193
165
219
196
233
228
151
182
232
122
239
201
129
165
201
204
164
210
215
197
136
217
216
196
207
181
111
200
229
144
161
206
202
287
191
199
165
193
196
233
215
144
176
250
218
181
178
203
220
198
193
255
176
171
211
233
199
190
184
218
215
170
276
164
175
179
186
286
196
186
205
156
196
253
112
171
189
190
201
171
222
241
169
202
166
154
183
241
199
194
107
216
226
231
211
213
247
198
182
271
220
123
225
221
202
212
214
154
208
247
216
186
251
221
182
218
241
196
193
228
212
230
219
217
203
220
256
237
160
163
188
240
217
244
204
199
240
172
139
224
173
218
201
172
255
135
202
165
205
243
210
200
230
223
215
225
232
247
203
190
206
198
171
222
245
240
170
181
196
175
195
218
168
269
154
179
247
132
166
178
219
177
127
233
210
259
207
218
228
166
200
211
236
233
249
237
180
223
169
143
154
213
176
212
158
140
199
167
106
155
165
185
236
191
158
188
234
195
244
174
258
180
145
173
190
207
185
156
173
241
223
214
175
156
227
211
225
240
187
210
215
181
197
199
205
213
158
226
155
151
221
169
206
215
115
174
194
186
219
202
238
180
184
164
163
171
147
133
193
190
189
266
158
204
180
123
201
152
177
195
205
142
201
232
193
186
215
227
176
250
175
184
248
147
177
203
195
155
251
220
197
168
197
217
199
179
238
191
162
189
143
222
257
230
153
174
240
241
185
154
187
171
244
240
178
149
206
213
220
189
251
200
207
222
226
197
213
225
265
178
221
207
150
212
172
175
234
157
170
249
206
173
169
123
233
203
182
236
124
163
184
214
211
240
202
209
250
155
233
233
163
301
234
176
222
144
197
203
244
204
130
155
178
167
204
205
160
238
234
217
199
226
255
154
182
199
190
86
246
221
227
269
205
187
199
161
209
202
179
167
230
208
213
265
216
141
161
197
235
260
190
179
194
165
188
242
209
184
209
196
149
137
208
183
222
204
209
224
202
212
244
216
208
188
186
193
155
214
225
275
250
216
224
262
150
201
227
222
189
190
208
265
191
228
164
263
251
216
251
151
199
221
151
225
154
184
137
218
171
206
147
224
241
224
166
191
145
195
191
226
229
267
187
150
218
177
167
231
235
222
234
184
217
207
246
160
191
185
179
271
119
229
163
177
167
179
167
162
170
232
173
212
278
175
196
173
213
140
169
226
213
211
215
179
249
203
237
213
215
126
212
190
142
166
251
194
179
220
130
194
211
197
135
210
226
192
154
230
181
204
187
145
214
195
168
139
161
217
138
275
186
194
183
243
253
217
165
200
157
205
190
167
157
194
201
239
224
171
218
208
229
214
197
144
114
219
184
187
198
179
195
198
248
229
190
175
192
223
228
195
232
151
219
178
222
78
160
267
139
175
184
221
202
219
225
176
181
229
203
212
155
242
195
218
128
150
228
177
238
194
198
205
208
184
212
146
154
224
228
190
177
179
201
270
129
160
228
253
249
204
194
213
211
214
243
165
183
208
148
202
237
191
205
226
229
230
190
253
195
179
250
245
175
189
211
205
186
202
215
257
250
159
268
212
166
167
212
219
251
263
250
209
175
212
280
146
209
190
233
155
206
100
232
277
212
225
184
182
174
178
198
175
241
112
282
217
155
204
221
181
243
198
178
214
217
110
172
198
143
254
225
165
201
222
179
200
199
185
209
153
191
195
192
250
225
198
149
232
212
166
172
204
224
202
236
172
165
258
209
148
237
211
166
190
273
211
225
91
245
242
237
264
216
237
226
182
170
160
143
216
217
228
232
219
143
245
206
245
238
219
213
151
241
266
196
169
197
235
204
189
224
201
170
194
173
257
181
208
263
195
206
254
222
252
252
200
225
198
252
200
151
193
163
188
224
234
258
193
158
203
147
213
207
234
175
198
151
202
185
147
186
235
289
209
205
265
178
153
267
189
152
197
188
240
213
228
213
177
219
205
190
242
194
179
228
119
201
142
222
208
121
264
236
190
218
122
180
222
250
173
209
170
178
185
172
193
221
207
164
244
207
185
180
248
194
248
163
252
201
147
166
165
157
213
107
213
209
236
191
240
243
200
231
158
130
232
202
198
162
186
173
209
284
182
227
150
230
172
241
179
167
222
227
179
178
170
232
222
195
175
194
157
207
227
200
212
195
188
212
233
136
235
210
267
203
236
186
210
225
161
183
253
215
216
253
202
145
206
209
215
155
196
178
171
224
209
183
215
209
216
165
171
188
186
210
190
193
245
232
165
236
286
214
169
190
208
210
214
228
199
252
224
164
204
236
197
192
188
221
210
166
192
197
233
190
134
185
253
215
172
197
176
255
224
207
198
254
236
253
212
131
252
243
244
189
145
280
187
268
203
179
207
198
225
251
179
161
205
231
209
245
232
136
210
180
181
165
182
283
277
204
220
195
211
231
197
252
261
208
202
241
255
226
196
149
184
177
169
190
204
202
223
156
211
155
211
147
203
98
220
203
215
267
251
203
204
240
176
217
255
211
256
215
161
184
166
184
149
238
179
181
190
179
162
241
222
195
188
169
163
179
191
224
172
171
201
231
242
199
214
178
212
238
179
246
192
225
191
267
194
162
191
241
177
162
187
289
210
164
205
208
206
170
207
203
171
250
119
158
190
235
191
182
207
238
182
182
194
234
194
236
164
196
201
165
123
240
111
179
143
227
206
205
210
175
176
238
167
199
148
219
211
196
217
212
182
239
138
179
184
239
162
211
196
182
192
216
222
211
160
205
176
219
166
119
209
160
245
235
188
233
218
174
177
222
146
244
227
160
182
172
190
166
255
214
252
168
153
244
217
167
159
165
168
225
156
221
168
240
171
157
183
231
239
203
108
179
176
175
210
214
239
198
216
246
187
187
200
248
164
238
176
195
180
101
168
222
188
175
231
242
147
216
230
137
228
180
266
157
204
221
230
205
198
194
185
211
197
174
124
247
160
177
226
174
208
177
225
283
179
207
203
163
148
199
256
221
201
175
187
192
238
194
199
184
217
111
311
177
171
179
239
216
113
260
207
161
195
227
232
247
166
207
205
224
207
249
183
273
181
195
161
233
158
243
172
218
152
145
166
195
213
200
123
170
182
210
177
169
266
267
182
235
254
196
197
200
158
175
162
190
186
260
225
216
211
198
161
224
146
205
160
234
178
192
201
183
184
226
201
206
163
223
161
187
247
178
170
277
128
207
155
177
236
222
256
201
234
238
136
182
273
200
143
219
202
156
244
198
196
225
205
253
207
196
197
181
210
142
210
255
215
283
163
163
168
158
171
210
247
179
263
152
207
209
228
140
208
185
236
226
228
208
220
221
209
216
181
244
243
156
219
253
169
199
140
207
159
156
197
230
228
176
212
225
212
149
201
236
186
245
235
195
245
289
167
246
152
194
178
213
151
179
226
282
188
220
182
211
199
198
143
255
215
229
251
213
157
206
237
209
239
252
256
192
221
142
139
172
269
219
202
226
206
179
211
193
184
173
226
245
216
222
220
272
236
234
189
169
187
143
227
170
159
193
180
153
173
173
144
259
233
230
192
177
211
237
227
222
229
213
191
191
206
225
149
182
189
272
173
227
274
149
177
228
238
121
187
184
206
247
220
216
128
190
199
218
195
150
168
157
190
194
169
218
189
185
208
169
229
139
170
159
196
203
174
127
183
168
174
207
139
194
182
175
194
130
193
201
143
162
183
186
236
202
136
152
162
200
150
206
182
144
150
145
178
205
170
207
237
204
180
239
157
250
188
197
227
152
172
187
124
209
223
235
183
167
218
177
261
247
207
199
223
178
156
231
217
198
221
201
95
185
213
208
191
239
209
213
225
157
158
194
235
280
204
164
174
187
198
194
158
229
227
172
224
202
237
177
182
146
203
169
218
236
173
227
139
182
235
172
221
135
189
165
250
215
137
234
264
192
206
206
188
251
151
242
233
214
156
251
179
226
214
193
251
181
243
209
218
150
210
107
160
184
172
208
142
226
181
248
213
268
103
187
196
201
240
188
205
192
198
204
162
187
196
208
188
181
181
164
174
207
196
245
203
271
230
270
174
176
183
208
147
222
206
241
216
166
157
240
218
184
249
216
183
249
164
226
203
159
237
192
218
200
209
137
230
223
193
238
178
214
227
198
143
211
224
243
172
211
194
194
199
175
220
188
225
207
185
160
192
219
181
147
211
184
202
212
198
199
235
93
191
217
207
225
210
191
228
155
185
232
220
152
244
231
252
152
283
139
232
162
257
187
223
151
201
194
155
256
183
140
189
169
196
245
197
216
167
129
151
195
233
224
186
231
213
225
169
245
142
201
163
205
196
196
200
189
205
243
202
245
183
180
176
221
167
214
189
184
175
194
200
229
197
207
229
220
231
208
221
268
214
174
249
201
218
227
206
204
156
199
141
148
202
271
186
229
221
190
145
193
177
250
180
181
204
206
186
223
163
197
216
210
212
173
172
222
194
195
165
201
239
154
205
114
226
234
182
203
182
210
201
217
186
194
207
158
230
222
187
206
185
182
206
229
232
186
227
210
231
197
231
247
129
207
212
267
185
201
223
215
255
219
187
185
224
242
165
194
169
222
209
208
155
181
215
192
211
239
189
141
213
213
169
245
158
201
168
205
245
184
247
214
201
233
161
191
180
248
185
190
186
218
201
234
235
148
220
174
257
242
257
166
202
245
180
209
222
128
204
228
209
214
231
222
167
169
251
195
209
215
216
236
217
254
163
128
261
187
219
212
241
173
187
135
188
201
172
206
270
175
198
201
167
221
256
179
173
194
179
240
159
165
184
236
178
185
140
193
240
131
142
171
248
258
240
212
202
244
221
190
183
233
150
230
185
204
200
217
185
164
247
128
200
223
219
228
223
201
230
211
215
260
186
177
239
183
206
196
196
186
119
186
202
167
205
203
236
184
204
185
247
171
219
198
199
240
221
198
118
214
213
232
256
130
169
174
214
234
147
265
190
227
169
208
159
249
237
201
183
209
182
235
247
173
203
248
182
157
198
182
232
166
268
214
196
231
181
201
170
251
198
202
168
201
189
168
206
187
240
197
268
221
274
253
204
191
231
182
218
176
179
162
216
188
207
143
264
193
195
207
199
203
255
166
159
228
191
229
192
162
221
221
236
240
203
154
201
232
220
171
194
188
142
203
196
198
184
201
198
175
183
190
237
213
224
207
162
221
231
219
159
145
214
243
199
185
214
221
176
167
189
208
187
191
201
160
192
216
207
152
235
183
179
216
195
240
221
194
232
229
272
122
128
250
184
180
259
176
133
192
192
227
232
182
237
267
191
226
233
209
250
163
154
167
189
195
179
185
147
223
215
223
227
257
227
196
251
129
193
178
202
181
218
228
215
148
219
183
211
175
203
181
199
169
217
226
164
207
159
180
243
236
193
191
181
226
220
200
151
175
130
196
153
200
256
154
237
162
170
248
159
184
206
185
221
223
238
192
218
160
192
207
197
170
165
227
233
166
227
222
233
237
227
259
199
200
130
215
200
214
137
238
197
131
220
200
143
257
226
213
196
194
161
139
199
177
138
146
192
245
226
224
174
217
199
272
204
199
279
209
194
210
192
143
229
222
198
212
136
217
208
208
219
204
187
222
218
235
160
203
236
185
269
193
188
253
169
169
202
203
277
265
225
166
198
251
212
248
245
198
182
259
197
198
268
206
214
167
210
208
193
239
183
168
194
232
193
186
150
231
250
231
181
169
159
280
183
150
186
192
206
200
206
156
164
241
212
240
210
196
191
192
127
234
172
197
214
176
142
214
159
215
224
179
235
155
200
224
205
193
196
139
187
186
151
225
157
148
271
229
209
143
211
227
243
224
221
136
170
161
224
271
183
252
212
214
194
250
261
242
234
156
210
190
188
197
195
161
195
230
181
223
245
163
228
254
214
212
167
173
225
223
217
237
183
229
182
188
174
158
217
234
188
186
201
151
179
223
202
165
239
232
168
234
221
225
217
206
188
224
176
197
193
222
200
131
221
226
234
212
233
266
266
91
213
148
186
249
204
143
168
227
163
232
168
181
211
198
199
197
272
181
197
263
269
185
205
218
186
130
183
206
210
152
159
211
212
161
228
247
208
125
199
131
156
160
128
246
207
216
180
181
216
137
197
117
184
195
257
190
245
179
154
137
197
187
236
227
128
195
209
240
278
182
172
160
201
190
235
190
187
195
236
235
196
184
204
194
155
202
209
205
202
173
176
163
208
186
178
171
215
207
225
225
148
207
163
184
232
261
222
207
243
201
195
201
242
240
180
188
271
218
205
230
211
215
128
182
180
222
200
195
202
164
226
193
184
185
191
178
217
175
211
207
204
216
235
161
203
216
187
157
188
170
178
149
156
209
220
190
181
207
182
206
161
198
204
145
230
217
225
253
211
214
233
200
232
173
195
234
224
234
246
223
180
201
250
217
262
265
233
189
207
223
221
141
152
227
132
199
160
128
197
191
201
228
242
186
195
152
233
154
157
247
238
168
177
205
178
160
199
269
210
173
190
228
194
226
153
217
162
213
214
233
188
201
204
201
258
202
199
212
138
160
183
192
169
199
244
121
179
237
258
202
193
174
190
183
217
154
169
174
196
209
199
193
196
225
243
168
169
222
166
260
173
204
212
237
151
158
211
214
232
251
243
204
177
134
284
205
133
177
228
173
247
261
177
249
229
155
189
187
224
216
194
166
251
197
208
249
187
200
130
179
199
197
222
222
247
204
211
156
217
288
155
185
225
212
204
162
195
217
201
187
106
165
136
161
210
188
198
213
143
222
209
201
255
115
189
245
255
188
179
175
242
192
191
170
196
190
190
251
213
178
141
181
166
211
214
197
238
134
225
162
224
228
229
190
202
194
196
215
251
168
229
197
201
213
164
177
165
206
144
209
206
183
258
157
154
178
136
245
218
266
199
248
115
183
212
206
145
186
167
264
221
188
252
228
240
247
130
230
172
117
205
213
229
152
158
165
114
191
199
163
200
213
180
224
154
188
222
192
180
199
210
235
158
201
166
180
219
242
230
181
163
196
221
221
197
187
181
194
194
188
268
209
256
162
163
229
163
205
187
198
231
239
269
234
263
225
199
173
215
208
250
207
183
200
185
247
228
163
210
206
221
192
251
202
264
244
226
222
202
250
217
223
167
230
194
138
184
215
236
278
186
199
212
211
190
131
165
271
252
200
221
135
123
226
264
223
129
224
105
144
183
134
217
165
242
184
192
128
209
212
208
208
210
169
230
159
153
193
232
197
188
222
201
211
181
168
152
240
218
238
94
203
168
201
208
234
220
233
207
245
227
179
153
213
205
236
248
144
153
255
169
176
191
205
163
179
240
134
210
160
167
262
245
227
196
197
164
201
201
220
206
182
274
154
155
204
228
142
169
197
194
218
216
232
228
226
288
227
167
184
197
230
168
231
169
171
124
179
211
236
221
190
192
177
235
180
164
163
179
193
205
231
171
230
223
126
188
257
179
207
162
165
189
170
231
223
158
161
175
165
218
202
122
195
185
159
166
205
199
202
243
220
237
209
183
198
228
149
188
157
237
198
210
203
167
211
287
200
207
173
149
188
198
212
215
204
154
186
188
206
228
235
192
249
153
181
219
195
202
231
154
186
175
162
261
125
200
220
167
253
240
172
183
215
212
220
239
184
166
217
193
164
242
214
204
209
199
225
199
189
221
193
125
182
177
190
228
207
182
231
207
181
207
230
168
201
193
189
183
210
163
216
195
150
177
213
208
243
200
199
187
210
190
187
180
249
262
202
242
168
225
224
204
255
213
242
236
216
186
191
205
177
241
206
140
171
204
194
172
238
233
201
152
194
226
225
153
214
230
173
203
280
169
230
201
204
221
163
189
182
169
229
251
227
185
181
201
191
214
241
221
203
270
205
150
196
183
185
200
163
212
220
243
184
171
159
193
206
188
228
230
228
168
218
169
210
216
194
237
202
178
137
226
166
247
119
155
248
194
184
242
186
210
119
170
185
197
194
168
183
106
203
186
228
200
202
175
217
160
198
257
159
215
203
232
200
148
153
232
249
175
176
156
220
180
194
218
203
233
158
142
169
139
168
207
147
178
165
206
140
287
223
209
160
201
195
225
188
183
184
192
208
163
231
180
193
145
135
263
165
215
231
207
165
196
167
173
203
182
221
117
228
202
176
200
211
216
182
213
250
192
257
163
203
194
136
221
245
212
251
160
173
232
162
227
179
223
228
239
161
190
214
178
194
217
225
208
190
187
190
221
241
220
140
202
263
202
156
184
174
214
207
196
183
242
192
152
212
183
214
185
180
254
215
238
231
210
182
235
159
150
203
193
198
222
254
161
159
266
275
204
166
244
212
203
219
177
195
195
184
250
203
211
220
212
180
179
185
198
171
187
170
231
231
190
155
197
196
239
190
160
165
234
180
243
207
190
201
178
234
200
195
182
206
203
121
194
183
211
222
236
190
194
270
245
145
230
255
213
142
195
216
258
176
150
155
265
227
134
193
256
237
182
154
215
199
107
266
197
163
210
155
222
202
173
199
168
232
254
164
224
228
231
211
232
223
153
208
207
247
202
178
162
206
153
165
253
219
187
168
202
188
191
184
171
232
172
183
234
207
231
217
186
190
205
252
167
264
160
234
155
151
170
147
225
200
175
242
189
160
212
256
265
172
203
217
268
263
175
186
180
162
152
189
195
188
169
213
273
202
176
204
189
150
228
175
185
227
170
212
204
216
119
176
167
155
151
202
255
203
129
176
178
223
159
270
201
186
226
206
156
192
215
185
166
227
231
283
171
187
198
183
187
171
171
146
203
193
163
205
193
169
224
239
163
186
202
189
234
138
158
208
211
213
238
179
213
237
227
155
129
221
200
176
220
152
226
226
230
210
195
251
205
227
228
214
142
194
237
198
160
218
190
155
252
236
244
230
176
242
164
250
196
214
179
168
207
195
255
171
212
209
227
188
181
129
146
131
270
193
219
204
179
206
211
210
218
182
195
141
151
178
238
204
176
214
162
152
232
198
146
179
175
232
271
216
188
238
173
204
233
179
126
226
235
215
233
182
199
205
100
199
217
220
210
224
172
229
264
154
223
161
163
266
148
223
238
240
199
226
196
218
243
204
199
243
221
215
271
193
210
190
199
167
252
253
233
243
203
179
118
178
205
223
200
219
218
200
160
214
220
218
234
162
149
255
261
212
198
153
216
223
237
136
232
177
171
190
210
216
232
196
148
215
228
232
224
234
234
197
203
216
253
181
196
185
201
156
180
180
197
207
211
199
192
228
217
252
221
237
132
164
242
144
205
205
228
147
189
186
204
194
233
217
234
184
177
283
189
272
206
162
250
194
191
217
243
224
209
193
164
166
191
239
196
184
217
170
258
204
186
126
227
201
190
219
190
205
199
197
168
198
179
142
220
191
196
115
226
205
293
185
176
202
189
202
207
156
198
194
144
205
90
135
251
247
262
259
230
178
149
161
218
227
223
205
202
207
79
245
209
211
183
181
191
195
238
213
224
268
216
195
229
246
194
201
152
215
198
196
259
200
189
198
204
251
247
237
216
204
209
186
270
225
231
143
149
212
210
140
245
204
185
141
158
187
213
142
173
199
220
197
220
214
245
182
161
219
176
168
201
181
190
200
205
160
231
172
191
151
168
234
209
159
202
274
193
255
188
262
207
178
189
228
174
224
185
241
180
210
148
218
207
230
215
209
204
200
268
189
149
218
231
137
198
173
197
214
223
176
223
237
256
191
206
229
207
167
246
146
190
176
216
189
216
184
184
193
196
207
164
221
179
229
208
152
218
198
225
113
241
164
171
184
189
155
215
216
181
196
177
151
264
134
196
146
196
174
220
165
212
219
194
152
230
202
198
192
202
240
142
238
200
174
186
152
171
223
199
161
197
201
139
175
168
122
180
185
149
207
218
220
224
221
216
168
174
239
204
211
210
249
206
220
182
196
242
227
244
229
190
171
168
179
150
215
175
183
212
257
260
192
212
258
253
188
250
194
288
228
177
155
121
204
247
250
233
197
156
229
136
166
169
187
167
217
159
215
204
247
215
211
193
192
246
229
190
213
241
131
220
243
159
199
273
194
222
187
254
164
162
182
145
210
185
257
169
132
233
216
164
238
162
227
240
242
228
184
249
168
243
205
115
209
159
209
175
195
242
227
191
195
185
205
225
167
166
204
233
187
169
231
230
226
236
260
243
146
223
243
262
175
231
245
213
153
211
236
240
193
220
168
211
179
233
186
211
194
228
192
234
176
207
138
189
214
235
240
283
213
149
156
222
251
184
223
230
157
160
278
202
243
209
274
250
251
232
192
166
222
228
228
168
186
218
157
207
180
174
163
171
157
226
176
173
212
210
254
229
183
226
152
197
200
229
230
143
193
211
211
195
216
219
210
192
259
211
242
248
201
123
194
218
251
236
169
230
185
190
228
246
197
198
197
227
200
202
172
187
250
216
202
183
229
275
186
122
159
175
156
222
159
240
148
153
197
218
209
233
171
256
213
191
169
224
166
167
153
224
155
227
166
248
224
214
228
173
245
195
209
218
217
154
238
243
190
214
207
227
195
184
255
212
186
203
151
192
210
201
224
159
194
126
175
149
166
129
181
200
201
179
196
194
258
279
267
193
215
130
171
212
218
235
202
254
174
213
260
229
201
177
229
187
179
199
147
225
184
194
166
197
206
239
218
221
158
227
220
243
184
224
172
256
207
205
210
194
182
178
128
222
212
200
176
132
229
192
257
202
186
218
143
223
187
175
192
217
157
161
283
240
219
176
238
216
234
169
217
149
225
232
200
197
232
223
217
147
195
185
195
158
206
175
243
189
260
214
219
181
188
152
224
249
210
232
238
172
196
195
179
238
201
248
155
192
209
211
211
219
132
252
197
228
252
189
211
209
166
179
235
159
215
155
176
267
190
178
187
209
244
253
222
216
220
210
201
196
198
219
211
166
240
163
204
218
180
229
201
194
202
227
195
195
277
162
145
195
222
187
205
209
104
164
218
196
229
206
210
204
151
150
175
189
191
170
228
179
194
193
229
121
150
171
204
128
117
164
231
185
207
181
261
225
169
194
256
165
156
177
183
200
236
175
207
220
226
191
230
223
212
161
194
159
197
190
179
214
180
215
171
191
236
156
208
241
235
202
209
190
244
215
268
209
175
174
160
217
220
256
122
182
273
200
144
148
189
213
191
264
180
200
213
190
212
167
230
226
181
102
129
216
199
257
230
238
146
153
180
207
211
235
188
146
219
209
189
194
208
255
237
171
225
171
199
158
190
211
252
209
183
179
262
233
206
184
183
257
172
210
241
164
152
223
170
211
212
192
140
189
188
203
259
273
180
190
286
150
208
196
201
234
229
232
230
145
157
209
241
277
175
234
243
187
181
204
215
230
184
101
157
256
234
202
148
253
198
209
165
181
249
181
188
167
160
217
256
278
233
238
162
253
186
142
201
183
195
240
166
186
157
211
225
170
182
199
278
138
188
190
226
216
144
130
168
212
183
192
160
181
208
254
232
234
232
186
189
153
222
198
296
170
233
193
129
198
173
206
208
225
197
193
182
193
187
123
174
192
188
192
198
229
174
199
206
266
216
101
177
175
222
202
205
195
152
193
185
261
258
163
213
234
153
218
232
229
214
215
171
184
202
178
177
164
247
222
142
152
201
194
260
216
220
217
128
229
180
203
205
224
217
248
204
177
173
201
159
252
237
246
255
242
193
216
184
213
234
228
172
226
195
172
195
188
148
308
203
220
209
218
200
147
185
202
170
196
168
182
218
157
206
224
214
186
227
209
136
215
171
225
173
199
208
219
171
172
205
174
192
176
247
210
162
173
155
170
264
244
141
190
150
200
247
187
239
152
226
152
183
186
240
231
231
243
164
222
202
183
181
182
181
167
234
236
167
259
164
279
183
169
158
199
211
236
188
226
166
231
135
166
214
183
229
193
172
173
178
220
198
127
202
232
243
215
161
194
157
239
221
194
195
135
234
221
239
182
197
276
216
182
226
199
218
217
272
218
139
254
199
181
117
211
172
281
185
236
212
179
194
256
248
229
209
192
222
204
191
192
181
227
198
184
252
197
205
232
212
211
166
162
208
182
249
155
164
210
215
212
219
138
235
227
244
146
185
222
180
118
137
166
168
215
212
206
148
194
205
164
214
147
187
234
180
199
142
145
202
186
201
191
158
172
236
201
225
179
239
192
193
189
204
185
202
130
226
178
215
176
210
207
211
175
217
276
221
175
232
205
169
139
179
215
216
129
185
124
249
202
217
183
198
191
238
209
209
120
239
229
196
223
213
250
159
152
114
238
213
210
154
242
140
227
216
191
211
170
137
191
194
211
189
221
214
218
236
208
177
192
224
206
251
195
205
184
161
160
201
175
158
209
192
239
183
198
194
207
265
196
235
218
141
164
256
164
240
163
210
215
207
241
203
245
228
210
228
191
215
261
176
234
206
189
157
284
177
231
243
186
179
250
242
215
258
188
204
233
159
225
209
265
201
196
185
135
231
212
231
225
160
257
200
190
166
155
216
192
243
220
192
213
237
135
168
233
202
206
192
190
261
186
217
133
194
259
252
211
204
221
228
228
204
206
178
201
216
185
237
134
199
139
212
205
180
256
133
257
187
204
263
259
249
187
253
230
181
237
201
241
205
250
252
158
202
190
225
224
218
222
190
193
178
211
166
195
129
192
194
159
176
218
185
141
212
188
262
207
229
192
194
182
238
254
174
207
209
139
187
140
226
160
220
158
235
217
170
188
182
268
235
168
214
186
158
237
188
205
235
185
158
159
224
158
256
250
226
203
245
225
237
211
208
222
162
190
236
226
251
230
157
157
198
255
157
186
179
214
158
221
180
204
223
255
242
191
173
151
219
216
223
125
128
205
185
195
159
151
216
197
196
93
184
290
198
184
198
211
188
178
187
196
200
169
195
224
225
230
269
188
231
197
226
234
222
257
258
233
168
147
223
183
148
153
207
129
247
223
215
176
189
197
195
166
110
175
119
195
247
125
195
207
216
236
233
185
232
100
179
180
197
175
222
231
214
192
164
159
186
226
214
204
194
209
191
155
212
197
234
194
219
211
231
189
215
198
141
224
236
195
263
192
159
255
206
155
204
191
224
169
227
246
220
205
194
207
203
210
213
158
195
165
186
164
203
206
154
277
100
201
246
198
220
203
244
239
199
112
163
246
228
213
200
248
208
218
193
227
190
211
200
204
194
246
167
209
208
243
186
130
176
187
196
191
181
232
224
164
213
240
220
214
245
212
195
242
199
153
246
178
237
182
260
213
239
214
181
209
191
218
209
192
149
168
259
187
200
226
167
233
197
223
200
184
190
172
242
204
202
245
209
180
238
249
215
246
231
192
181
142
238
203
234
149
198
204
217
225
207
173
242
285
215
203
160
193
214
198
208
149
213
185
179
222
176
226
205
201
183
205
215
181
190
122
202
241
217
234
234
219
144
154
187
188
209
193
174
203
176
225
208
273
241
144
212
219
190
217
224
185
198
169
210
270
221
181
173
219
196
152
184
194
238
186
199
249
234
220
210
279
257
243
180
194
163
196
191
240
245
255
183
260
191
183
225
216
272
193
206
143
232
205
208
206
201
199
161
161
272
221
248
163
171
164
190
218
224
260
209
236
183
186
197
196
235
159
232
226
149
233
232
139
177
218
182
181
110
180
223
179
203
160
238
196
176
249
193
250
179
162
206
207
177
221
186
232
175
213
230
193
175
166
199
197
188
143
245
215
214
237
189
192
197
220
196
229
176
187
273
182
203
135
172
183
208
188
190
179
191
215
232
166
167
191
254
215
177
205
159
240
149
216
257
223
183
260
177
239
202
230
212
166
254
233
206
209
171
228
199
222
195
254
159
217
202
147
178
179
200
219
227
243
237
216
225
213
183
192
216
193
136
186
197
256
205
226
216
211
197
221
185
247
235
224
242
164
203
255
153
178
148
153
215
171
196
189
192
164
193
213
200
168
165
203
258
238
207
155
147
158
211
182
204
205
180
214
221
170
149
225
185
222
225
259
199
163
211
205
255
222
207
145
250
232
206
154
251
187
172
217
222
147
163
121
169
199
202
189
216
135
128
219
205
199
138
145
140
225
204
203
144
162
173
137
198
151
137
181
177
141
169
219
238
230
186
190
232
200
219
175
199
223
219
254
207
240
166
238
182
195
225
158
226
209
160
242
262
152
215
216
181
205
220
164
227
149
184
223
192
154
228
212
228
225
221
220
226
192
196
204
230
163
222
173
187
191
203
261
204
163
197
233
214
213
230
117
211
182
234
247
223
237
169
232
241
126
196
148
163
148
153
266
202
202
176
198
209
200
218
188
202
191
172
157
202
208
221
225
200
155
217
204
187
189
241
161
191
160
192
234
208
171
240
179
224
144
252
163
252
184
190
169
135
311
260
176
192
229
183
174
171
213
219
225
153
191
150
206
202
246
181
185
225
241
207
147
267
159
234
185
222
222
128
188
219
185
223
179
215
197
235
214
229
219
246
204
253
216
236
210
213
150
171
260
263
208
273
171
232
191
183
185
236
221
166
228
240
137
261
242
172
162
184
214
162
186
222
233
213
139
114
189
158
182
204
200
221
243
249
207
194
174
154
229
227
201
222
264
181
269
259
232
202
225
183
145
252
206
121
165
184
172
131
198
235
136
199
273
279
150
153
179
191
214
239
162
241
193
232
254
164
211
232
190
184
177
212
194
163
244
216
225
167
172
204
225
212
184
193
207
200
250
232
215
170
192
182
191
227
240
244
184
227
155
251
132
232
188
177
194
199
250
202
164
176
216
271
179
223
188
150
264
215
181
213
153
227
203
192
215
192
189
189
200
188
210
165
138
224
219
132
235
212
202
209
127
170
239
174
209
188
245
214
175
261
213
216
163
181
178
148
214
205
159
247
159
138
268
190
179
149
138
224
199
215
254
206
208
242
183
270
200
198
190
228
154
227
201
175
238
240
246
203
137
214
233
186
181
188
164
222
190
233
195
166
146
203
194
237
140
168
225
170
225
274
196
245
155
222
224
197
199
207
155
262
223
214
200
181
153
197
235
238
200
179
202
173
220
219
170
225
199
156
174
243
183
246
185
225
180
176
227
185
149
176
234
179
235
196
246
225
200
266
179
245
185
153
222
234
208
222
203
159
198
164
226
141
198
211
237
215
181
252
191
183
212
261
204
210
224
239
274
167
185
194
210
175
175
195
232
158
131
184
190
262
210
188
200
199
213
241
251
170
167
250
177
251
237
230
179
231
238
183
176
181
210
264
111
177
211
208
202
175
177
173
228
267
240
202
210
249
153
195
215
212
222
195
171
215
208
204
198
153
148
268
256
259
143
224
206
187
184
263
256
190
212
181
232
182
232
184
274
224
224
251
183
196
136
197
140
218
182
160
164
188
178
170
187
154
251
148
221
161
198
246
156
225
160
226
183
173
183
180
168
247
218
179
211
153
155
258
198
207
145
223
218
231
251
121
249
256
215
200
233
237
187
184
212
157
195
218
223
167
224
202
184
194
210
202
210
172
148
178
227
249
209
218
251
210
181
219
164
153
240
190
161
220
167
249
166
240
254
162
164
197
209
251
109
191
191
240
217
201
266
219
150
235
146
191
228
148
219
290
195
193
212
227
226
227
209
203
158
164
182
176
192
202
225
197
181
187
252
199
191
209
140
207
188
174
202
225
234
165
122
164
267
188
170
217
245
235
179
168
178
236
253
212
176
209
151
212
102
245
176
149
210
187
235
212
97
175
179
219
236
228
256
184
213
232
205
193
222
251
201
241
176
250
170
163
208
221
180
201
225
244
186
215
204
186
168
168
189
205
199
175
208
200
132
237
217
225
163
192
188
226
197
208
220
259
212
150
237
170
190
247
170
217
218
173
214
172
219
119
194
217
188
224
203
203
126
213
218
182
263
240
167
206
224
195
224
185
178
250
221
246
230
230
196
191
196
164
191
212
171
167
243
226
235
182
212
233
159
243
168
183
162
223
188
167
197
210
205
119
175
169
249
214
239
235
206
119
242
193
189
199
215
210
253
235
185
217
210
175
226
162
204
175
199
226
220
205
189
196
182
191
204
226
154
210
219
249
223
159
197
208
197
247
139
183
221
228
231
148
198
181
174
227
185
131
229
179
218
204
163
188
199
192
148
187
218
207
125
208
208
193
214
203
131
130
210
224
206
159
193
145
207
123
249
218
223
205
229
200
231
222
218
148
213
206
221
188
193
236
201
183
221
175
188
236
257
195
182
262
216
226
130
189
133
191
162
174
150
216
236
182
219
198
161
211
181
205
177
126
220
242
180
250
200
204
195
196
171
195
242
188
185
153
190
224
221
210
200
212
158
194
155
223
218
168
123
238
209
214
203
199
236
188
255
190
162
218
200
198
187
168
210
212
219
242
262
157
165
222
167
225
238
239
92
188
253
187
193
131
250
237
183
197
253
224
181
232
159
188
225
162
219
228
225
234
146
157
198
139
142
214
193
217
233
232
166
194
237
233
245
136
245
140
157
232
215
210
148
220
234
171
177
190
117
293
244
195
200
274
226
224
198
233
161
245
219
159
223
199
152
245
161
218
190
223
188
180
187
183
205
167
189
213
222
198
236
192
213
204
159
216
235
203
178
212
199
201
235
132
170
182
177
227
197
224
154
215
120
174
211
217
198
154
215
161
215
202
235
192
264
149
225
196
243
241
173
218
183
222
208
195
242
216
168
258
190
172
168
106
170
134
171
202
182
146
148
211
189
179
218
213
133
201
220
234
177
176
202
195
171
136
194
187
200
156
231
165
162
240
228
244
200
238
194
203
228
204
194
229
216
217
222
268
199
164
252
162
185
190
197
145
229
220
195
150
196
173
219
211
206
221
248
276
197
186
224
225
250
179
126
188
177
196
190
161
187
199
180
171
173
175
150
196
194
201
265
208
223
183
214
221
193
162
191
234
178
165
215
201
144
175
142
214
218
208
219
173
243
128
269
196
188
247
234
212
126
137
201
200
247
202
184
246
260
227
201
190
225
195
243
245
144
196
221
146
242
173
217
249
158
219
176
206
245
273
218
206
166
214
150
158
127
266
166
228
149
219
226
256
171
232
191
206
175
180
171
258
191
168
205
111
241
189
217
222
230
201
184
217
164
194
179
201
222
170
205
209
139
168
233
160
257
162
223
178
225
266
194
211
186
240
172
202
190
236
201
210
166
234
154
155
192
184
207
190
237
264
213
216
175
266
178
170
177
174
218
216
177
249
167
202
195
288
187
165
146
209
230
160
174
151
197
200
161
169
230
174
156
255
175
151
200
194
227
225
181
268
179
193
240
197
222
143
199
164
151
187
261
206
192
160
204
238
196
285
204
182
214
255
197
201
217
237
199
225
176
201
220
200
207
212
197
233
173
209
188
160
120
219
243
195
166
152
187
136
190
253
262
164
140
209
229
187
160
171
220
209
183
212
161
158
210
229
227
168
271
162
261
154
237
151
150
153
176
198
201
205
223
204
193
230
228
235
185
197
261
262
169
205
229
192
189
156
183
228
146
203
179
235
196
236
186
203
204
216
179
183
196
198
268
173
207
237
230
217
180
262
184
148
166
252
182
195
236
182
168
178
246
204
168
230
191
213
165
206
227
212
167
218
165
197
196
170
202
184
199
263
226
155
169
196
186
194
168
186
206
143
207
227
196
232
209
164
198
234
207
191
161
212
199
227
200
209
204
214
182
252
244
199
269
201
147
225
263
227
173
198
260
211
193
162
154
194
184
196
255
187
171
218
175
201
150
195
172
217
169
170
268
211
171
250
202
219
225
229
164
199
168
202
187
270
142
240
223
210
267
206
249
195
235
167
222
171
224
180
178
197
205
190
209
209
220
168
200
192
162
209
180
257
202
244
178
172
159
194
213
175
208
176
177
246
186
253
233
277
241
178
192
206
185
214
216
171
211
178
223
222
192
218
237
228
236
242
226
244
149
186
228
230
246
134
200
168
201
184
165
200
130
167
124
196
214
191
190
204
211
171
187
227
171
167
206
193
166
202
216
225
202
202
211
205
206
219
212
198
242
212
188
153
216
175
192
242
179
253
190
244
200
207
199
205
132
185
203
237
203
162
144
186
176
219
203
135
185
206
200
219
142
215
193
236
187
202
199
234
195
221
215
214
244
165
238
226
157
227
182
185
154
189
202
137
176
235
183
197
161
250
206
268
225
203
71
247
158
179
196
190
119
252
158
150
160
273
121
203
156
199
208
274
152
169
188
285
261
180
183
222
155
114
218
131
136
222
207
193
177
162
174
145
235
166
207
232
230
136
212
224
244
197
167
222
188
240
234
226
236
181
214
169
223
196
211
218
167
239
154
182
239
215
216
179
248
193
184
198
212
197
217
225
231
213
214
181
182
164
225
220
232
214
276
239
149
221
154
223
211
197
220
228
162
148
219
186
171
262
220
178
258
210
281
218
177
255
204
222
265
299
210
113
241
203
174
162
216
246
227
217
236
203
218
224
224
297
195
199
167
249
213
125
200
190
193
116
235
218
286
208
109
192
166
236
206
149
204
252
193
234
135
233
175
214
246
217
207
219
168
201
156
202
249
213
260
202
199
193
240
191
237
200
215
239
189
186
285
241
198
193
209
167
225
212
180
164
216
232
191
209
227
215
221
185
212
186
217
142
211
218
249
211
137
179
207
132
200
211
240
155
239
235
165
242
256
219
163
273
170
185
202
225
214
206
163
198
204
240
196
260
219
132
159
226
227
251
227
174
202
167
209
180
201
245
230
131
136
188
160
190
231
231
189
161
210
174
154
231
222
227
177
237
208
205
177
252
197
244
120
131
215
253
245
239
200
221
226
147
190
207
99
216
235
239
227
227
151
153
222
179
192
169
234
197
215
207
223
181
228
168
225
223
186
189
211
226
207
187
236
213
162
193
187
230
175
188
215
197
200
176
208
208
192
220
203
120
209
185
218
148
220
184
225
157
180
257
223
116
216
180
178
229
178
170
211
132
169
212
196
169
206
202
203
217
200
210
239
205
253
236
190
206
214
201
160
257
261
235
214
143
184
236
157
145
222
213
210
248
213
173
213
227
235
208
241
196
195
181
144
257
221
183
216
199
216
243
201
225
213
243
178
140
150
191
222
134
183
232
214
185
196
197
74
263
182
211
223
177
213
178
173
245
239
209
259
176
225
210
265
236
221
211
119
187
229
210
205
219
127
222
206
245
169
268
130
227
210
207
188
263
174
191
212
171
125
198
187
160
231
192
144
184
205
208
206
198
180
199
159
196
237
200
203
189
238
163
228
221
145
200
182
146
182
222
221
196
214
194
158
206
156
195
188
213
237
143
239
159
243
182
212
193
214
199
200
241
211
245
231
170
216
141
185
178
161
257
248
208
247
187
142
144
192
254
171
234
172
193
185
233
186
151
213
165
245
232
153
208
198
223
172
183
150
192
187
210
225
210
160
213
168
195
173
134
168
195
213
205
205
171
240
211
148
264
220
249
263
254
178
185
233
186
217
202
175
214
168
210
247
211
231
247
168
253
214
246
200
259
204
258
87
208
249
208
244
187
258
180
175
227
186
224
213
207
208
164
201
203
204
229
224
150
147
201
225
184
239
139
239
213
194
157
231
214
209
137
205
149
229
221
194
138
243
156
205
190
143
197
198
229
239
188
176
166
192
198
272
225
230
150
157
147
188
161
259
222
218
170
228
217
194
178
208
199
235
151
214
253
245
229
164
149
216
197
176
282
200
227
222
131
254
191
170
240
224
218
138
161
198
215
195
233
183
212
204
249
150
175
235
219
144
259
261
213
214
196
209
152
206
170
223
245
134
127
186
210
213
181
216
169
155
207
136
212
216
156
185
121
265
217
171
198
110
172
222
156
188
204
155
317
203
213
156
191
238
216
130
239
195
194
204
240
234
180
276
272
153
249
254
155
237
221
144
231
182
218
141
184
232
160
137
139
203
162
175
170
199
242
193
215
151
152
200
124
160
226
230
130
264
194
224
224
223
198
183
194
172
193
226
244
183
154
259
241
172
200
260
202
240
213
124
200
274
200
149
227
190
110
153
143
192
198
150
205
253
141
172
210
169
233
152
217
225
172
172
221
206
194
241
280
164
102
251
194
190
242
167
208
220
220
214
186
224
193
214
247
211
221
132
219
212
216
205
199
250
181
215
189
158
188
195
173
215
230
137
202
189
173
175
221
260
163
169
160
194
228
147
137
225
215
166
199
187
157
209
165
185
216
149
261
202
180
175
205
213
224
246
111
164
248
197
203
302
202
246
246
202
179
233
163
212
185
231
175
185
215
213
226
169
161
191
136
188
234
210
218
216
168
247
150
217
183
165
178
218
161
227
215
242
224
225
174
239
260
215
258
157
235
168
174
171
208
169
203
236
210
207
226
106
198
198
141
176
240
216
169
231
238
191
195
143
164
210
183
190
236
185
270
230
145
200
174
193
166
189
193
181
229
181
231
235
200
245
248
229
209
218
184
191
199
223
244
206
210
242
191
229
197
258
288
191
218
180
148
155
174
211
121
211
234
215
196
252
177
221
146
227
200
203
220
272
216
217
173
213
195
204
223
209
230
172
197
205
182
107
213
191
233
183
195
182
181
169
157
229
241
213
232
180
200
245
224
144
195
185
163
174
182
144
269
191
216
209
191
229
248
225
181
208
178
222
205
178
220
168
197
178
196
225
128
200
232
184
182
190
186
219
173
157
268
191
172
174
187
184
197
185
279
235
226
190
217
181
202
191
248
183
218
232
214
169
231
254
181
212
216
168
239
159
247
203
196
215
200
239
196
242
156
206
164
198
223
239
270
218
241
168
167
188
171
146
200
213
184
200
227
200
225
197
188
226
173
217
232
215
230
189
195
210
175
134
233
237
144
202
124
214
191
201
159
227
212
173
154
223
241
205
215
207
163
158
187
180
224
326
215
167
214
222
191
225
196
160
181
216
234
189
214
218
235
261
186
181
167
135
275
206
202
170
215
191
243
139
192
225
192
127
220
153
150
162
193
220
228
217
206
149
218
176
280
169
219
173
197
201
197
182
224
130
245
164
192
166
210
174
211
243
156
164
163
192
210
215
190
204
224
155
171
263
221
227
217
145
207
128
112
183
196
222
218
218
263
236
228
174
145
266
200
212
237
200
141
151
184
158
168
210
169
191
165
195
193
217
148
184
226
250
157
168
211
242
271
221
203
217
216
227
199
262
201
247
146
245
246
258
201
173
201
281
225
230
204
183
184
193
184
178
223
169
251
234
194
224
218
167
190
129
270
120
204
141
205
165
221
220
252
155
241
135
173
229
160
197
181
144
176
139
236
226
171
202
232
218
203
192
203
173
214
191
229
216
240
214
192
144
165
266
181
166
227
105
219
150
189
174
219
159
196
195
226
214
197
201
240
205
168
176
231
247
209
283
183
187
130
216
201
105
204
122
254
216
200
210
147
238
149
190
234
197
245
220
193
144
223
216
217
235
186
269
169
154
255
145
214
246
234
204
232
229
175
192
192
147
117
184
220
233
231
223
175
234
259
191
205
175
134
207
208
191
254
227
226
209
240
169
213
211
197
234
206
238
167
240
251
215
174
200
182
174
178
211
185
157
185
260
207
197
181
253
194
248
191
237
219
242
215
300
244
232
189
173
142
180
232
161
255
251
225
263
248
214
218
183
252
190
166
145
239
171
154
216
193
207
210
248
248
182
201
241
207
222
227
217
272
187
190
195
272
150
250
181
132
224
231
192
210
215
153
293
154
165
160
206
184
161
200
160
184
258
179
212
228
211
195
193
234
175
224
150
214
248
230
191
245
190
245
227
235
227
237
243
160
197
249
157
188
246
227
202
197
205
143
141
162
132
193
157
189
190
196
195
208
231
192
188
156
177
231
182
248
184
232
182
158
207
189
234
224
257
149
201
214
152
191
226
199
202
158
181
242
161
159
217
242
262
231
170
209
234
241
241
195
222
270
216
198
197
197
201
98
254
184
156
247
239
194
204
175
224
215
159
238
193
197
203
176
222
228
218
193
213
243
142
152
240
215
168
261
187
197
199
205
246
175
204
184
228
216
148
151
214
231
221
216
178
187
175
185
221
248
244
133
174
236
194
128
260
206
203
240
219
169
214
176
189
230
230
190
233
204
215
216
159
252
196
210
226
215
243
166
195
231
213
205
221
231
220
203
206
223
210
226
188
186
265
205
173
212
175
165
160
221
240
210
180
155
193
203
210
244
182
249
299
151
252
131
233
224
236
214
151
207
183
183
178
271
237
209
211
217
179
202
232
173
220
221
205
157
163
149
138
259
161
197
139
238
169
224
247
236
131
185
226
174
141
248
219
195
201
169
153
190
217
188
224
243
209
181
225
179
167
193
247
183
176
259
162
174
217
172
214
227
231
227
238
209
224
217
209
169
228
213
245
247
177
204
204
232
182
247
202
176
244
204
306
193
185
174
185
149
246
250
245
224
163
219
259
235
169
221
248
228
150
139
224
198
231
185
190
224
213
203
187
227
173
173
152
179
231
186
115
175
236
127
145
251
209
231
167
158
204
243
229
259
161
163
158
184
257
223
213
201
176
236
218
260
212
198
167
178
226
231
188
188
261
224
142
201
219
210
149
238
140
223
226
158
194
89
256
223
188
198
174
209
167
167
223
136
197
224
153
166
135
191
234
209
134
166
202
235
207
215
180
185
192
244
259
202
202
220
162
186
244
191
193
186
161
192
182
204
197
170
174
236
235
205
211
186
176
252
208
216
171
178
179
190
186
167
186
226
222
249
213
209
272
202
212
195
230
197
184
220
187
237
249
215
201
212
198
210
207
174
162
247
225
188
226
256
149
193
245
264
140
175
204
177
216
268
269
235
209
252
192
221
179
170
240
199
197
236
203
222
216
223
197
177
218
221
255
251
260
218
196
185
188
220
184
225
201
208
225
154
129
218
204
235
206
183
214
160
173
124
156
186
240
175
170
146
241
230
142
150
239
142
192
201
189
208
245
256
199
194
226
259
214
155
156
237
176
189
284
186
143
199
228
204
172
208
163
187
219
126
141
244
112
227
157
157
236
191
189
214
204
162
166
218
252
222
200
211
167
187
232
235
149
192
198
213
170
172
237
181
172
215
128
123
164
117
153
187
208
197
247
215
167
128
197
204
237
192
203
219
178
257
139
194
89
206
164
152
229
215
159
205
174
248
215
165
167
180
246
265
163
267
224
183
108
268
204
213
208
213
179
170
199
186
200
171
198
150
210
231
118
192
178
223
183
297
211
289
141
199
197
168
209
186
176
237
203
213
204
211
120
191
205
200
207
182
233
197
180
189
175
114
241
207
232
193
228
232
226
213
220
240
201
98
265
211
172
197
163
219
200
166
195
219
236
271
258
271
176
144
145
167
221
152
174
256
279
231
220
175
174
152
165
252
197
230
227
111
239
244
211
204
216
211
178
105
204
221
246
193
229
156
216
207
267
180
151
215
218
275
224
161
193
233
193
213
213
199
217
209
157
217
169
161
188
145
225
124
214
202
238
214
184
245
219
197
190
185
186
184
171
206
209
226
206
245
244
251
207
183
193
171
202
193
230
149
223
225
135
225
196
227
231
228
184
205
218
186
152
248
217
207
194
232
181
227
162
225
255
236
187
219
182
181
143
213
214
199
207
119
180
159
163
197
270
178
226
232
221
248
218
188
261
209
160
252
183
230
224
184
222
156
210
179
227
213
196
187
247
196
215
159
131
244
209
188
159
194
156
198
224
195
178
139
238
184
183
248
202
180
148
189
200
168
191
200
224
173
214
177
156
193
187
189
189
208
199
214
187
200
182
184
214
167
156
231
196
232
229
230
210
211
176
194
137
223
227
211
132
220
196
156
116
255
191
140
226
245
249
226
216
269
219
154
172
240
134
246
208
172
166
181
258
202
199
151
208
179
170
237
186
155
233
206
145
195
247
130
215
152
255
156
240
155
226
232
144
272
191
162
191
189
234
180
205
240
176
210
144
191
210
191
230
125
210
181
171
218
161
165
187
256
233
229
230
203
166
187
94
257
207
224
227
214
209
197
253
142
206
246
201
202
138
231
228
206
200
164
200
223
141
215
260
245
203
215
218
230
180
220
248
211
145
236
244
200
161
247
192
177
166
270
224
260
201
279
162
174
250
162
217
230
245
231
235
225
155
145
182
170
249
148
165
198
161
257
203
190
239
200
237
228
227
230
204
203
247
258
194
165
184
228
204
188
249
207
228
204
161
147
221
161
153
200
246
234
208
213
220
109
242
189
152
191
255
228
230
202
181
247
224
195
209
190
152
221
226
162
225
231
246
213
214
213
187
234
214
211
191
178
140
168
218
242
178
219
203
210
161
205
206
250
198
234
191
196
178
185
212
240
204
214
200
164
200
245
193
197
181
193
210
146
243
184
199
215
179
228
231
223
201
169
234
217
206
233
273
228
226
184
176
181
179
169
213
198
271
175
162
202
252
191
162
242
233
281
231
238
220
134
211
197
229
237
200
202
154
227
200
240
203
178
215
201
184
211
159
153
212
175
175
202
236
214
233
181
178
239
231
176
229
171
202
158
184
195
216
248
184
113
185
222
143
208
243
150
221
237
227
200
199
166
225
237
160
184
212
182
178
178
186
191
170
175
210
191
195
147
184
170
205
185
175
168
208
186
183
181
171
162
177
224
159
243
204
187
183
184
166
200
229
173
105
248
170
192
216
210
167
252
189
177
181
179
238
222
161
145
221
184
192
155
198
145
207
239
190
224
189
192
232
204
189
159
159
216
209
163
197
178
169
172
213
233
194
209
228
203
158
244
167
182
160
228
193
181
210
172
206
197
209
187
177
230
187
181
215
155
187
179
175
187
236
247
266
181
223
220
218
219
185
145
194
215
171
181
135
261
141
137
197
175
204
167
167
167
226
216
228
169
189
134
174
165
211
190
182
161
203
228
174
163
204
287
226
217
211
192
242
230
162
219
205
197
238
97
175
244
222
141
159
133
170
193
290
256
163
195
193
210
215
243
228
163
192
186
196
202
231
223
139
195
198
199
255
205
216
227
219
249
202
187
220
190
234
180
213
159
222
187
212
222
214
201
178
180
174
259
237
123
182
217
167
200
258
215
209
243
202
127
217
147
236
217
151
183
256
222
187
166
214
183
210
202
209
250
242
145
205
216
197
235
221
227
298
190
183
248
173
277
194
169
209
126
217
146
144
178
168
252
174
115
236
272
221
245
167
208
244
296
198
221
193
221
236
161
172
185
165
176
191
190
221
220
134
175
199
139
217
219
139
229
221
226
237
194
125
233
200
159
124
205
204
246
251
271
186
219
274
233
225
165
219
228
182
252
213
229
218
182
150
106
171
224
226
246
209
243
183
271
187
210
162
190
206
179
122
239
191
160
226
238
186
139
161
213
176
216
178
228
236
204
170
183
127
263
166
249
256
176
190
193
207
244
157
171
228
232
234
181
218
200
210
198
171
247
183
175
252
149
151
199
240
136
153
247
233
187
219
198
201
205
205
253
188
172
229
192
155
208
185
252
238
194
201
246
133
171
137
206
206
209
184
148
205
243
176
188
164
205
180
234
218
238
176
234
169
226
223
145
155
193
246
170
188
182
196
192
226
209
207
125
204
246
224
206
152
182
185
137
239
243
195
213
207
187
216
174
222
223
100
231
194
201
199
249
203
232
158
188
179
296
162
244
210
229
236
190
149
191
209
232
197
240
159
212
235
182
259
109
169
229
259
195
288
247
165
204
156
233
189
155
225
250
263
202
245
141
282
216
209
210
170
221
147
174
158
255
150
202
241
224
169
214
180
165
213
222
145
201
214
154
165
189
191
153
231
188
237
165
205
137
219
175
165
148
237
171
190
269
163
196
186
253
220
153
253
202
176
186
169
253
175
236
175
165
221
176
179
162
162
197
185
232
179
253
190
209
266
233
195
157
170
115
156
253
201
204
129
149
246
223
200
216
203
170
164
196
187
220
150
149
230
178
166
220
177
158
158
231
172
182
253
145
207
220
219
155
96
184
184
191
191
229
176
183
187
183
198
188
173
138
217
170
139
193
171
198
207
115
205
204
166
199
152
216
184
228
215
221
178
202
191
228
198
256
138
193
235
151
225
174
186
197
233
182
203
180
143
190
188
237
178
239
181
160
176
240
196
238
200
101
243
222
223
195
186
198
208
197
117
199
221
251
253
216
180
264
145
235
215
185
214
264
232
228
234
225
183
212
259
205
207
257
233
218
251
137
171
176
172
204
275
230
160
207
135
168
144
133
238
207
190
189
222
182
200
248
223
213
181
186
207
248
173
191
209
155
216
203
203
273
138
207
218
250
159
195
142
170
256
235
132
188
182
206
217
247
207
245
182
151
243
183
225
211
177
202
171
165
204
252
144
214
179
234
224
225
244
238
238
220
236
202
220
215
173
190
229
269
157
207
175
169
189
114
184
193
151
163
176
203
234
196
256
263
220
140
212
172
196
222
217
234
223
140
254
176
167
205
169
245
256
181
172
228
180
246
189
155
224
220
182
217
129
152
191
176
224
219
144
226
114
214
183
181
241
249
128
184
184
210
223
186
169
163
170
184
225
219
237
201
203
252
235
202
207
208
184
177
237
191
195
222
256
174
213
186
221
275
195
205
197
217
262
250
171
172
142
255
110
171
190
204
170
184
208
192
218
193
211
210
180
208
245
210
184
118
234
178
177
135
152
203
212
224
260
214
193
163
236
228
254
164
239
239
198
209
190
236
136
236
285
224
197
208
170
179
234
219
162
264
247
165
189
178
203
225
248
151
213
179
229
231
120
166
205
224
217
144
195
205
126
200
243
174
179
175
191
199
101
144
200
229
203
201
235
141
181
215
210
196
239
160
250
217
196
167
186
225
223
238
201
172
216
223
198
174
161
176
182
204
234
257
145
183
168
232
241
175
216
173
206
181
213
195
191
211
195
188
216
194
227
206
188
220
198
179
151
187
202
211
211
246
198
222
201
247
171
201
224
196
192
229
257
177
228
211
226
220
129
154
168
220
161
264
247
114
218
242
189
239
180
151
160
205
150
249
126
235
223
169
229
206
160
195
245
222
256
192
169
213
103
182
194
235
219
235
224
184
211
197
187
214
195
248
198
247
222
223
266
209
190
219
172
194
173
147
207
178
211
190
190
192
222
159
158
175
201
203
160
231
210
211
199
241
248
224
172
220
207
209
205
222
224
252
187
303
245
177
179
180
186
195
227
238
195
235
216
167
241
167
156
126
215
211
225
234
212
234
114
217
211
200
249
204
161
143
207
225
211
183
265
190
257
160
154
189
180
213
203
209
244
185
163
212
205
214
204
209
191
255
237
216
220
221
209
200
216
185
230
234
191
196
218
172
191
185
150
227
188
193
196
215
212
190
230
288
210
217
204
166
203
143
221
224
194
198
254
223
253
204
115
243
159
213
243
179
183
171
210
253
298
210
225
170
146
205
223
195
194
242
165
183
223
166
256
191
261
199
286
221
172
233
229
181
258
195
221
256
233
203
218
207
191
176
224
212
187
242
218
216
210
233
210
228
174
221
170
215
200
188
223
142
251
211
225
198
236
229
253
215
170
196
181
170
225
198
200
228
217
255
224
225
202
185
146
190
174
216
213
225
210
170
222
195
148
224
237
191
221
177
199
260
191
230
180
165
192
238
201
236
214
117
234
199
192
221
228
190
220
279
130
182
186
160
158
184
161
202
189
194
183
208
203
145
177
196
122
205
166
175
236
191
167
201
170
165
189
153
198
233
220
165
186
189
199
184
247
231
196
194
201
188
170
99
154
193
199
195
173
282
199
257
176
169
200
223
240
178
210
205
203
159
196
213
148
239
200
218
169
187
177
231
222
132
187
203
196
197
205
235
193
209
187
163
215
238
199
295
204
250
214
146
162
236
243
166
251
209
121
212
205
214
175
274
199
210
209
221
188
155
238
189
236
211
192
186
172
207
203
216
211
232
194
230
205
227
156
261
157
219
189
217
164
215
239
228
174
207
210
239
216
238
155
181
240
264
201
185
228
252
142
207
245
268
217
257
196
172
160
164
183
165
166
191
226
239
237
242
220
211
275
146
219
221
242
115
204
205
188
208
177
208
193
271
174
183
245
199
176
218
247
176
199
226
176
245
142
199
130
226
223
190
185
181
230
206
210
210
261
179
162
209
207
199
216
196
237
203
125
172
190
194
227
213
183
158
192
223
216
214
160
158
184
166
236
194
191
195
205
149
240
231
229
166
207
149
202
203
170
232
241
202
223
167
247
217
192
248
212
216
195
180
193
209
214
198
211
204
176
220
175
238
156
112
193
167
213
273
158
205
200
223
191
198
163
257
214
206
140
130
199
213
204
194
161
250
140
162
250
145
256
261
207
244
227
161
229
177
156
174
168
217
179
227
255
219
214
193
173
164
231
163
278
213
225
182
165
181
211
184
189
213
197
232
196
193
197
144
174
198
184
215
191
203
257
275
210
175
195
240
159
200
203
230
129
182
206
236
167
252
270
198
196
140
227
260
225
130
206
181
209
142
234
180
206
175
144
174
188
184
204
178
274
238
182
150
189
108
182
154
208
206
130
195
151
260
192
197
210
248
237
176
163
187
179
278
194
193
189
146
127
192
120
191
101
250
189
208
155
245
175
249
198
169
181
229
178
182
198
225
229
204
165
218
209
190
171
176
218
170
219
188
250
265
214
203
197
179
138
229
191
196
154
233
181
119
229
260
107
166
181
180
193
174
191
162
212
212
164
223
239
150
197
252
256
181
216
142
190
179
208
238
209
187
175
175
208
182
162
240
218
209
175
226
231
270
236
205
274
236
206
189
169
199
166
149
218
175
242
194
229
257
230
192
224
207
244
234
200
147
233
212
238
168
152
236
208
175
151
231
166
181
163
183
251
196
287
226
202
195
187
149
198
164
263
191
178
152
162
196
214
202
158
239
248
190
184
248
192
195
222
235
206
212
230
94
248
134
219
177
242
212
188
150
178
187
270
140
200
218
229
217
288
192
159
219
160
194
227
220
220
206
146
180
173
138
214
178
180
244
182
166
186
187
165
198
223
217
229
213
240
199
194
166
255
133
160
198
170
264
210
253
270
197
164
253
171
202
223
201
217
175
265
262
186
272
198
233
204
221
215
213
212
182
181
177
162
212
214
230
229
118
212
188
196
195
182
142
249
239
194
163
259
194
220
187
188
211
251
230
178
237
191
149
200
179
237
176
118
218
195
230
179
232
202
196
227
188
184
194
159
229
236
203
160
258
221
177
162
235
248
160
218
218
234
141
229
148
240
247
224
162
195
201
240
252
235
149
165
255
204
169
213
152
253
237
244
281
247
168
253
224
98
187
175
191
219
188
157
197
206
262
177
225
246
197
248
246
254
192
189
190
178
251
188
206
162
170
178
228
150
168
207
224
200
201
247
191
214
259
241
227
197
203
166
227
217
174
215
196
180
198
218
202
221
245
232
191
205
211
181
167
197
206
255
183
167
202
161
198
222
203
202
191
245
224
171
132
188
215
189
182
239
185
192
213
241
168
162
214
221
166
234
207
148
187
226
221
227
212
218
181
195
225
221
213
221
257
172
163
199
215
212
249
211
195
227
199
207
227
168
199
205
234
159
204
171
143
238
152
221
217
261
162
195
168
238
218
170
155
207
234
281
203
185
182
138
255
188
209
221
183
130
270
236
171
251
181
185
209
174
135
182
213
193
250
237
118
203
208
195
208
198
226
217
204
194
228
193
159
233
195
189
210
200
204
148
184
201
235
170
227
137
154
232
206
211
184
195
159
201
191
146
254
216
191
200
187
175
150
232
226
201
198
209
205
215
260
213
163
219
234
216
241
238
236
151
200
196
238
166
220
214
211
251
185
119
176
209
206
209
226
235
141
141
157
168
207
172
161
189
187
236
260
220
177
256
209
189
203
215
153
141
202
249
231
140
173
220
241
174
206
197
184
263
186
140
228
239
142
213
154
200
237
165
185
192
169
181
177
209
169
234
209
217
214
275
220
250
227
210
204
171
192
207
200
186
178
168
240
159
224
189
187
234
141
222
182
185
228
248
98
182
239
184
248
187
241
185
197
260
200
194
147
142
157
200
210
142
196
238
202
175
150
224
211
251
182
215
286
173
161
243
248
217
221
219
223
231
130
148
203
222
194
203
224
171
211
164
248
183
245
200
185
170
113
145
162
213
213
209
174
144
231
206
184
156
156
209
196
184
234
253
229
216
196
237
199
204
189
210
204
264
216
145
250
188
227
156
193
240
172
211
205
189
211
172
204
228
193
205
171
259
211
160
142
234
190
150
189
173
184
242
183
214
227
220
225
192
212
258
209
205
218
245
140
176
235
241
153
145
163
119
218
212
256
197
230
209
179
250
200
232
214
167
214
208
192
187
231
224
234
217
230
136
248
235
226
136
193
207
197
257
231
218
191
185
238
249
186
159
250
190
213
209
194
246
166
211
218
152
209
201
259
150
191
192
266
169
242
195
201
218
174
193
177
187
211
181
197
204
236
187
200
207
232
164
224
237
189
147
208
180
207
214
194
228
203
145
255
179
163
169
235
252
226
193
158
252
199
200
207
213
165
212
139
223
239
216
127
199
221
233
129
184
206
161
170
184
168
200
197
229
162
183
141
204
212
249
182
202
208
174
194
232
196
249
212
253
207
253
149
220
267
239
198
213
252
219
180
177
234
176
167
179
163
189
172
212
233
199
200
195
146
168
202
171
198
157
182
212
142
145
245
202
207
224
137
258
191
216
175
230
229
263
229
246
235
257
267
251
267
264
161
251
197
232
188
215
165
152
226
212
253
181
142
208
264
213
181
196
203
188
192
220
177
231
217
178
210
155
153
204
157
209
169
184
222
194
206
203
200
174
170
198
190
122
185
192
184
167
215
244
163
158
194
230
185
177
163
205
146
184
225
160
175
210
168
200
151
166
173
190
200
225
270
172
181
224
198
152
206
202
209
192
212
246
171
189
174
171
211
196
151
234
245
164
173
129
226
230
206
222
208
225
273
193
260
247
142
251
197
199
171
189
245
244
143
204
172
212
121
259
252
200
176
152
176
198
178
115
237
231
182
154
175
222
152
219
219
224
157
185
127
203
280
191
255
227
258
188
181
195
164
151
230
200
172
261
205
202
264
163
175
208
165
219
172
192
222
176
91
237
195
166
229
177
186
177
191
220
157
232
229
202
257
168
204
172
131
227
253
191
254
187
202
202
219
179
204
224
260
256
170
176
183
227
153
191
211
203
185
119
220
219
187
232
167
146
191
203
218
224
215
243
164
209
217
218
194
252
177
240
201
220
218
222
186
179
161
197
205
193
131
196
236
243
170
224
181
191
253
168
127
180
178
112
184
192
158
219
186
213
182
177
206
189
199
211
220
187
215
197
223
182
251
173
250
195
206
167
224
242
184
229
231
214
178
159
215
196
170
178
144
186
170
231
223
200
183
155
205
223
251
221
129
160
172
169
204
210
170
200
172
235
163
236
180
161
209
191
224
264
191
232
190
223
217
216
185
231
159
150
196
216
202
239
250
200
239
179
219
142
212
162
247
189
227
254
204
247
150
174
262
274
133
200
258
239
241
219
243
155
145
196
237
207
137
180
180
193
195
227
224
264
217
198
204
224
197
172
148
194
213
143
116
202
194
138
229
185
168
212
242
213
215
272
170
226
221
175
201
191
164
197
245
182
219
250
141
195
186
189
237
237
150
247
189
255
163
183
198
178
203
242
175
209
180
226
225
166
260
180
248
257
218
252
195
203
212
220
207
198
170
211
217
223
165
172
232
173
149
212
211
115
219
168
189
162
167
239
241
189
191
216
249
218
153
116
197
224
233
190
207
173
211
214
232
190
199
187
246
227
197
147
197
201
153
232
151
211
225
175
203
165
195
184
125
130
171
198
224
157
235
188
185
192
221
156
191
202
189
185
156
222
217
238
178
182
183
202
207
182
217
187
152
179
224
191
201
191
189
214
200
197
194
221
151
185
260
182
171
230
255
226
178
186
196
227
236
202
218
242
168
215
231
240
145
250
193
179
271
141
241
149
187
168
199
219
218
238
187
164
180
144
214
176
189
194
199
204
154
200
201
242
238
236
185
195
169
185
209
199
207
221
228
221
228
177
117
205
190
169
201
242
188
148
208
201
207
169
198
212
213
182
200
193
136
173
156
238
145
169
137
172
165
226
204
234
238
239
226
249
263
225
177
179
199
230
199
160
217
162
194
227
205
224
261
232
239
191
209
211
190
162
152
156
197
225
200
207
247
193
184
207
229
212
205
242
198
207
233
197
184
185
206
221
143
183
171
212
179
205
214
145
199
181
237
261
171
156
229
198
187
224
233
178
171
215
177
215
141
166
249
233
176
198
239
205
248
256
181
268
202
198
221
159
182
145
223
188
181
223
216
227
212
198
239
261
186
217
251
207
172
185
152
137
220
239
232
218
183
279
170
175
162
168
219
165
200
207
194
212
188
227
212
259
142
222
187
208
216
172
213
239
186
195
186
215
189
226
208
220
239
185
158
230
224
232
181
164
252
151
238
226
214
178
254
255
170
138
191
198
217
155
128
233
177
187
171
144
207
165
226
165
215
216
220
191
164
209
220
235
170
208
134
169
198
182
263
230
221
183
262
175
200
143
195
202
188
200
173
204
242
225
238
180
256
127
179
179
232
181
214
199
151
244
126
173
222
215
186
200
187
217
237
212
233
227
170
235
143
231
213
184
160
206
161
220
231
149
171
157
143
157
252
197
165
240
196
236
281
248
155
163
222
248
139
191
193
242
192
190
191
247
222
183
191
217
182
187
224
182
202
166
124
197
160
219
209
194
233
222
209
219
196
257
162
254
191
185
215
205
174
232
185
194
210
229
245
215
190
207
161
224
220
223
181
185
241
157
176
178
148
282
217
271
196
199
233
231
134
169
218
215
175
175
210
201
162
190
183
213
197
236
238
268
182
211
158
257
245
277
209
228
182
224
190
221
213
204
306
195
133
238
192
211
111
237
183
232
185
186
221
201
136
152
193
153
207
188
206
207
182
165
169
186
137
202
218
173
260
241
192
206
268
141
204
192
219
218
186
208
184
229
218
129
224
131
288
179
172
165
171
199
228
225
224
265
187
172
212
178
228
196
194
118
239
242
265
246
223
210
198
183
279
157
185
158
207
217
176
202
262
140
173
185
227
222
174
206
166
163
152
209
219
218
272
164
236
160
142
255
180
228
207
215
161
186
213
186
126
166
196
259
242
187
223
177
133
245
156
167
269
200
187
212
231
220
245
203
213
210
152
220
213
186
251
125
205
260
168
224
133
243
234
158
172
188
140
204
163
218
202
209
117
220
192
192
168
156
195
242
172
188
222
271
188
245
237
154
201
177
202
186
192
207
171
188
246
257
205
222
144
247
204
167
243
228
216
187
184
186
174
243
260
247
257
133
224
215
207
201
195
174
199
181
228
224
227
219
198
188
229
199
156
170
254
217
177
205
197
207
230
265
210
166
187
152
257
178
246
129
173
279
241
202
201
97
226
229
230
125
220
160
257
175
189
169
222
238
224
203
196
245
167
144
191
219
211
228
190
252
196
162
203
252
219
228
219
248
199
174
224
248
219
236
168
225
204
204
158
254
230
158
250
247
205
233
269
184
115
242
192
168
217
171
231
193
215
208
180
257
203
192
222
205
182
157
161
255
175
224
150
138
202
146
210
215
265
226
216
215
166
229
222
213
158
205
210
242
212
217
216
201
185
195
186
208
198
175
220
175
250
199
143
184
160
190
248
209
161
169
164
244
192
169
161
238
221
235
236
200
223
228
159
220
152
227
153
153
190
225
219
189
189
208
209
234
219
224
216
209
252
224
166
238
230
213
255
219
222
157
209
177
174
152
168
150
235
181
224
233
231
170
252
224
208
151
186
190
235
238
229
195
184
219
243
278
230
186
176
160
190
191
194
229
223
232
191
172
224
211
183
272
155
186
214
227
249
122
239
209
237
154
228
184
194
170
168
199
209
146
232
156
226
179
155
208
243
205
168
131
181
191
141
202
156
242
213
213
180
279
180
165
184
235
226
209
217
139
179
188
222
183
169
234
219
219
170
187
151
127
261
207
186
201
196
212
126
253
167
226
212
240
158
93
205
217
122
198
186
237
135
164
219
187
207
186
221
161
244
161
186
196
182
176
234
137
191
225
186
175
204
160
211
280
168
213
173
243
167
235
165
147
139
186
217
177
241
194
194
263
242
172
229
255
254
154
188
176
225
114
245
218
229
227
189
177
163
202
225
111
208
217
147
174
238
194
226
227
170
196
239
160
219
146
232
192
202
241
185
231
171
225
202
209
198
215
158
240
164
140
219
185
147
228
249
232
224
164
183
84
194
215
227
251
235
250
226
240
267
185
145
240
218
220
162
259
220
220
207
197
229
207
181
185
170
193
219
181
182
252
241
190
219
194
211
168
191
194
187
273
173
158
177
251
193
226
131
143
214
253
216
178
230
160
204
221
128
194
193
164
178
192
239
160
178
178
282
203
231
163
182
178
183
156
251
232
246
173
200
175
208
187
130
202
163
199
191
167
187
191
204
200
209
197
213
178
207
168
141
156
197
229
192
159
206
174
157
180
223
156
198
164
157
243
220
199
215
188
219
222
234
184
201
244
204
271
202
130
212
249
226
138
165
187
193
220
194
177
217
187
171
207
218
190
190
223
210
232
187
194
182
178
164
230
259
196
214
272
171
194
154
215
176
207
262
173
224
214
180
208
187
247
185
206
225
218
189
186
181
182
209
193
249
221
219
182
241
222
229
234
233
202
210
202
243
166
160
190
216
197
186
204
169
136
235
209
206
211
179
208
240
266
240
202
240
256
209
97
207
181
177
153
167
219
215
146
158
219
196
210
245
199
194
212
196
168
201
210
157
178
198
179
180
186
183
182
171
204
241
167
175
148
270
186
220
240
142
262
160
196
182
201
198
174
231
201
198
215
221
185
220
251
144
169
233
178
226
209
203
247
193
214
215
206
162
199
250
137
224
262
191
96
257
173
195
200
197
185
195
213
214
231
230
173
206
154
178
190
208
166
206
191
111
212
207
116
225
143
202
204
197
152
152
166
231
224
167
164
210
202
245
189
179
194
249
181
232
190
151
205
154
185
250
151
207
203
185
239
195
261
189
198
199
200
233
203
185
165
147
184
183
185
140
209
153
215
178
166
148
203
218
201
254
223
199
222
215
186
165
209
211
170
208
212
201
201
212
166
174
224
241
242
258
216
207
168
218
280
142
168
158
242
221
165
142
166
231
211
204
232
201
182
241
201
199
217
200
194
188
211
160
192
250
204
130
222
257
239
223
255
134
162
236
174
199
221
213
163
146
163
232
263
130
193
181
189
197
166
172
242
249
209
203
288
194
185
228
159
219
173
212
186
169
213
260
246
189
198
172
226
205
226
186
185
159
226
202
176
236
248
237
189
248
208
210
193
210
192
226
184
131
249
148
208
170
200
222
136
131
215
240
178
196
237
214
166
261
187
168
147
189
176
245
169
198
118
216
208
216
201
202
141
137
184
190
197
171
194
207
218
180
193
199
215
162
229
290
210
189
169
186
219
179
234
246
217
239
143
239
179
219
189
229
253
202
202
221
241
237
224
205
155
218
128
249
198
123
227
213
190
213
205
229
248
213
209
138
156
206
238
242
221
225
215
225
211
225
206
126
202
224
170
197
177
260
215
196
190
155
160
198
215
150
192
216
145
195
186
182
203
250
217
207
98
177
199
187
164
215
190
194
238
211
194
205
177
207
229
223
246
213
165
170
156
161
212
197
151
199
177
243
206
231
226
155
214
171
194
191
249
151
196
185
262
214
225
234
181
177
163
214
269
188
215
232
140
198
176
247
177
184
212
251
191
208
189
262
142
238
239
170
164
228
208
202
151
142
170
210
149
195
205
168
168
246
136
244
203
211
221
187
152
198
209
202
249
218
208
228
186
191
174
210
190
207
165
204
130
230
211
205
221
213
187
225
245
227
200
195
198
250
194
196
191
206
202
175
237
230
219
230
225
190
197
148
133
195
157
223
168
219
159
239
214
183
221
190
185
226
164
181
176
210
172
170
217
191
151
183
201
198
180
199
213
204
146
179
139
199
167
148
141
168
194
151
183
282
152
191
176
161
184
194
198
212
206
231
206
255
140
212
229
244
210
155
256
196
199
252
214
235
285
243
254
177
163
125
221
150
297
169
239
145
184
180
221
212
189
180
172
224
236
184
196
199
183
151
235
178
221
254
190
202
209
144
260
158
156
210
155
238
234
158
183
228
211
143
165
198
196
224
286
210
184
183
172
207
215
129
224
192
190
241
234
212
209
208
212
196
228
190
238
185
227
223
159
185
147
165
205
202
214
190
251
219
224
157
205
216
178
191
180
227
161
254
247
157
173
205
160
243
193
153
208
190
185
153
230
183
257
210
236
235
218
208
185
201
215
214
272
187
182
234
237
175
141
199
233
187
185
186
223
161
242
200
215
238
188
256
236
134
185
205
191
119
201
192
214
234
203
222
247
250
158
290
180
142
183
216
197
219
224
245
191
242
171
207
234
187
170
152
220
245
246
200
228
251
207
163
245
252
204
155
208
246
196
187
225
173
190
191
177
221
184
224
182
255
139
241
192
223
103
139
223
154
173
99
181
165
229
167
199
198
205
175
190
221
179
190
169
238
217
238
193
173
176
193
223
213
187
210
237
213
263
158
211
187
166
173
259
197
236
199
222
170
228
198
228
196
231
224
189
230
201
199
86
181
160
237
143
165
202
253
228
215
188
202
215
142
183
169
167
237
131
207
220
219
267
225
171
214
197
232
214
220
183
239
173
223
163
204
194
172
223
219
184
151
218
231
235
203
266
211
220
182
207
215
155
231
166
214
212
231
222
244
240
197
211
205
162
198
194
195
176
238
225
202
226
181
205
227
155
175
158
184
151
219
186
264
168
195
196
238
191
139
187
258
197
192
158
207
151
244
220
166
164
249
226
245
185
159
216
157
206
163
191
182
174
177
213
233
212
190
190
240
214
248
232
201
238
248
248
121
203
232
206
220
123
237
143
201
207
160
218
200
236
188
203
189
189
246
258
173
181
206
238
183
141
198
174
222
160
246
154
205
154
213
173
148
157
262
138
174
176
175
150
169
248
212
170
175
205
170
153
197
194
173
242
217
180
214
201
174
270
190
272
190
170
235
250
190
193
223
173
165
238
168
174
204
221
216
181
207
154
181
207
121
246
212
210
161
212
224
199
249
196
271
230
259
156
193
235
141
222
221
202
183
192
165
220
284
190
149
223
158
223
193
176
116
197
178
225
228
183
148
207
246
242
233
197
206
178
219
240
190
159
180
204
251
191
199
187
229
175
199
233
157
201
188
183
188
263
220
148
227
215
179
228
164
190
199
219
200
166
189
191
239
226
213
255
163
188
171
130
231
185
174
190
244
158
268
218
249
222
176
222
200
232
219
190
197
231
214
195
242
134
208
238
148
126
226
190
188
171
179
200
165
234
208
215
235
177
182
268
161
196
143
166
240
215
203
218
185
220
230
228
255
196
209
166
262
194
256
250
214
251
185
211
131
165
218
196
197
161
254
199
156
201
210
218
217
217
120
215
217
210
154
178
248
192
176
137
183
225
199
195
186
184
177
208
247
170
172
196
217
243
259
274
239
250
158
201
177
232
144
200
199
152
253
209
182
166
197
196
179
195
177
228
170
215
243
207
255
216
182
169
200
157
231
177
200
236
252
206
215
197
262
155
187
207
216
217
181
211
164
192
185
168
180
186
239
226
237
185
196
239
189
200
192
210
224
221
220
178
148
234
184
227
184
226
213
191
241
207
189
220
209
172
124
254
257
186
241
193
152
220
204
169
176
234
162
213
192
170
148
197
200
194
202
183
162
149
183
122
161
264
240
257
216
168
238
207
241
168
202
225
185
232
141
214
206
242
189
192
196
205
218
174
239
239
159
215
220
151
188
133
189
208
222
152
220
229
228
188
218
117
152
179
210
169
138
201
214
236
200
253
246
226
195
232
228
209
186
192
203
181
253
248
215
162
211
190
213
213
169
205
178
224
149
252
200
243
209
173
153
221
221
172
204
216
235
215
204
219
260
262
220
223
189
161
143
213
142
224
251
267
192
111
177
188
232
192
199
168
251
203
267
192
252
220
179
180
278
222
147
246
203
174
219
221
227
213
186
189
185
213
166
196
212
118
165
178
210
245
249
240
266
208
191
237
232
189
178
162
141
176
236
205
184
200
186
176
223
206
192
136
162
170
210
153
168
171
103
236
180
211
257
166
194
213
181
226
231
177
133
255
151
196
211
220
182
235
207
182
242
131
156
162
184
177
183
138
203
190
93
216
176
209
206
228
220
139
270
200
226
185
198
220
251
229
197
199
198
205
165
201
160
193
242
163
186
216
192
225
230
158
230
193
213
221
165
210
212
241
166
190
178
242
182
202
167
170
228
219
264
155
210
185
196
164
146
196
198
135
189
191
211
195
198
283
199
222
147
222
218
262
197
275
188
222
231
170
240
177
164
146
234
173
203
212
197
242
194
189
246
204
180
171
168
200
217
125
210
254
162
158
222
231
163
231
71
188
277
210
238
199
242
238
211
202
181
204
123
206
212
190
153
151
203
204
198
270
197
238
203
187
237
193
216
208
174
215
157
231
212
254
252
203
164
181
212
285
196
157
146
182
206
262
267
254
225
250
218
217
178
235
153
227
204
193
206
175
215
214
220
218
205
168
169
211
195
148
212
162
170
242
203
255
225
189
262
237
196
255
178
159
260
183
234
194
144
172
216
208
136
211
198
267
180
297
184
134
191
198
188
185
131
172
249
196
155
205
227
169
186
208
254
152
200
243
176
235
209
203
203
203
234
173
199
179
183
241
192
147
181
241
186
178
190
228
209
181
199
162
237
239
212
183
200
200
202
195
184
248
158
261
194
209
247
172
215
239
247
148
262
165
162
139
156
201
211
227
221
184
199
231
234
120
234
193
211
219
178
210
227
190
214
168
142
235
105
208
195
170
166
238
164
178
203
209
233
213
187
217
154
194
186
171
266
278
184
214
220
231
129
197
257
166
207
219
203
224
221
175
239
252
214
224
187
217
215
224
258
214
187
178
196
201
150
192
211
214
157
257
222
271
211
230
223
157
183
224
171
214
213
176
159
216
192
205
195
149
210
183
132
155
200
251
231
232
224
194
164
251
179
270
184
147
229
187
198
241
149
181
187
211
191
235
192
178
177
184
202
250
221
145
193
221
169
177
197
220
167
227
165
182
218
157
177
201
194
213
182
99
245
207
197
203
222
226
199
183
235
221
219
214
206
254
241
219
183
204
200
230
158
192
196
233
192
212
237
215
190
172
255
122
259
188
166
166
199
222
228
172
174
241
243
203
248
202
189
189
256
215
218
191
182
184
231
131
238
222
197
202
158
249
193
222
234
242
168
201
153
222
135
156
99
177
91
199
194
228
260
149
237
244
228
196
133
245
229
158
240
184
167
208
241
169
257
231
256
232
172
176
203
172
189
164
208
157
186
241
147
148
134
223
161
224
196
182
169
203
217
150
180
201
183
200
207
197
162
202
174
135
198
202
227
194
185
200
243
169
182
181
210
197
187
175
241
143
183
135
193
203
245
237
164
228
224
173
212
170
153
193
189
206
233
188
157
223
235
195
201
175
247
208
168
232
173
211
172
227
241
209
191
240
187
226
191
144
201
184
230
220
162
223
206
168
237
231
193
212
175
165
166
173
205
224
235
193
268
143
233
216
196
191
148
204
223
225
172
218
267
130
171
190
172
233
165
232
160
250
160
202
242
169
178
219
205
201
185
198
242
244
264
176
144
203
126
201
148
186
169
147
210
172
209
181
176
220
198
248
225
240
169
155
204
222
247
195
194
194
187
206
251
193
186
266
176
207
172
227
205
256
205
138
189
252
198
228
157
160
181
204
155
171
152
154
200
214
220
244
216
171
195
190
188
183
199
223
181
246
263
206
191
203
234
188
232
218
164
214
212
204
171
151
228
211
187
182
133
252
215
211
263
162
198
185
217
253
245
198
212
179
185
240
219
111
213
137
236
144
199
220
215
191
126
215
246
199
187
237
239
231
196
197
197
255
185
215
141
206
248
224
182
230
220
231
237
186
154
150
256
209
195
234
148
234
260
190
156
186
219
256
225
202
266
266
192
192
203
132
200
180
212
149
177
264
197
212
226
158
178
196
239
193
199
210
223
240
181
230
128
205
165
180
221
231
186
184
196
211
184
158
263
130
237
198
125
205
214
246
174
205
232
134
177
198
243
184
195
183
124
226
185
207
207
214
214
226
207
210
199
199
255
149
196
230
163
206
232
205
172
176
194
195
181
217
159
204
160
173
194
227
194
217
200
145
208
152
196
194
201
236
221
195
203
181
198
237
190
182
156
231
178
242
199
238
270
152
214
246
185
254
243
254
202
168
188
269
173
206
214
189
235
175
191
201
143
188
143
159
122
192
244
203
193
165
199
216
228
180
210
191
227
171
237
196
229
134
193
222
225
196
179
188
234
180
212
200
198
210
177
215
203
231
210
176
195
216
187
184
232
199
129
241
147
212
207
212
205
254
174
160
269
205
194
208
242
216
162
236
174
214
181
216
212
226
164
266
235
251
175
141
179
231
165
250
209
176
175
173
228
240
207
232
192
224
219
223
190
210
235
151
154
209
211
165
222
233
253
196
208
179
222
242
216
153
230
144
221
203
190
254
150
231
241
263
181
186
203
244
182
138
225
183
150
149
154
228
205
278
232
166
251
242
257
190
133
213
162
177
147
173
250
173
216
190
209
239
193
152
192
227
211
190
186
130
145
290
199
214
166
171
256
256
179
257
198
224
231
189
191
208
175
163
204
181
150
263
158
153
217
225
209
138
172
213
195
205
222
142
209
217
182
269
145
191
175
172
161
186
138
191
233
170
197
207
196
173
210
230
172
187
191
232
166
167
225
147
184
203
157
133
201
160
162
198
200
270
149
222
221
207
208
210
209
216
247
184
148
189
214
259
259
208
200
220
212
231
259
217
204
183
201
211
269
232
226
193
177
184
193
223
234
267
222
193
171
228
139
151
189
171
234
184
256
184
214
160
218
152
77
205
206
212
261
218
231
162
216
197
183
169
229
183
220
215
172
170
209
120
224
183
162
194
213
187
259
182
220
191
258
213
204
215
204
245
175
195
161
172
226
189
187
260
205
204
255
213
227
222
199
191
217
231
218
221
229
213
201
186
182
232
233
192
191
168
215
225
199
167
160
190
197
184
207
186
176
247
167
187
266
227
240
218
182
173
227
215
214
140
137
299
204
232
234
190
170
199
163
154
164
211
185
223
162
177
193
233
199
260
157
230
215
245
172
176
170
193
132
214
163
204
231
239
228
210
174
234
152
162
280
175
201
181
210
169
169
155
138
212
172
187
220
223
218
208
172
182
199
123
128
226
235
194
182
216
185
210
205
199
197
272
212
273
232
215
175
233
268
130
251
274
172
171
208
234
174
180
218
190
163
195
186
235
196
176
187
164
208
205
156
269
134
91
110
210
169
143
199
238
180
211
233
222
250
231
204
186
250
194
188
140
215
187
210
157
228
190
193
149
234
143
230
212
184
183
181
162
198
209
243
236
220
160
190
216
202
180
196
190
233
239
188
126
165
218
209
169
173
236
227
194
226
196
198
165
234
181
172
199
208
181
142
243
187
258
157
184
227
234
190
226
224
174
199
224
199
227
211
222
230
217
192
181
171
146
252
222
158
296
215
181
186
193
186
186
203
189
207
261
220
199
143
207
212
113
216
162
156
191
228
192
148
212
199
171
212
190
162
220
177
230
178
223
203
261
217
236
171
185
207
189
172
110
167
230
227
231
174
210
201
221
151
225
205
150
214
251
191
253
161
227
258
240
196
232
112
174
216
182
163
202
242
200
190
214
205
252
172
190
195
236
237
194
195
182
223
199
194
158
186
174
220
182
140
147
229
147
228
197
181
269
200
152
146
182
215
195
173
193
141
208
189
193
264
122
189
179
127
199
170
169
211
241
146
222
179
173
201
252
174
273
199
184
194
118
219
228
175
220
233
214
170
207
221
209
166
198
179
184
188
210
230
233
226
260
162
247
182
265
181
225
193
203
200
212
246
257
202
158
158
164
253
210
165
161
174
200
219
226
168
165
183
184
273
218
161
211
259
184
269
253
207
200
251
223
186
222
170
232
188
111
184
176
126
172
220
148
180
176
284
233
168
128
169
184
164
174
137
211
249
190
198
160
255
177
179
242
243
217
249
250
198
257
187
242
194
227
143
253
242
164
210
202
182
213
206
248
204
198
214
196
192
181
211
263
184
172
211
228
275
151
140
217
222
180
223
157
218
133
163
163
144
216
165
149
269
221
204
229
186
177
217
219
188
181
186
176
162
240
149
206
154
167
252
189
172
237
277
199
202
285
163
223
246
209
201
190
156
163
187
131
162
181
175
185
153
236
201
182
185
215
174
135
271
178
193
193
155
190
151
269
216
183
132
258
190
167
203
199
160
212
180
249
160
242
216
229
231
246
186
248
191
212
265
184
176
198
232
220
216
228
158
198
199
226
227
165
194
194
180
205
195
241
229
181
199
203
223
181
196
191
155
201
190
249
140
163
172
243
208
200
168
182
261
190
190
243
189
221
201
243
254
140
218
163
202
85
252
217
241
252
129
255
263
218
157
158
225
202
210
183
226
178
139
229
221
170
245
216
218
131
154
214
222
200
215
160
183
168
208
223
270
197
191
211
196
201
195
170
272
220
266
223
171
134
151
207
138
158
203
214
239
215
233
134
234
235
211
189
193
181
207
149
213
293
189
214
154
226
253
181
140
239
164
240
237
186
160
169
189
163
151
223
144
178
190
221
217
193
163
216
246
237
201
214
167
168
191
194
176
179
213
204
232
198
240
269
230
173
170
206
237
177
200
189
174
199
133
186
220
190
158
147
148
198
191
184
184
196
237
203
159
157
174
156
154
133
132
204
109
201
194
198
176
168
285
180
121
209
151
240
156
226
217
182
261
169
245
227
200
220
196
208
194
168
223
228
202
142
192
171
131
246
199
100
184
233
227
169
201
150
247
239
231
182
228
287
170
227
208
191
233
216
228
178
189
151
149
235
174
234
205
234
206
269
188
248
228
184
118
209
196
253
201
158
212
201
162
199
173
154
209
188
231
214
234
185
240
154
165
187
210
232
191
218
203
210
205
237
195
214
154
161
250
199
237
206
257
218
197
215
204
178
239
209
216
224
197
162
126
214
194
255
217
126
234
198
165
238
208
161
217
237
160
196
186
192
215
121
182
137
194
176
229
182
224
116
190
164
177
279
218
238
171
144
181
205
173
188
230
176
201
159
226
147
158
220
171
250
250
194
191
218
217
218
227
155
235
216
206
221
199
260
200
211
189
177
262
152
118
181
193
128
196
129
207
227
196
184
229
168
227
127
203
137
182
248
191
179
191
251
217
224
181
204
109
202
155
181
194
216
221
199
220
137
220
174
214
213
216
142
218
242
248
245
227
178
265
254
176
234
208
266
197
155
213
196
136
171
162
210
236
176
241
209
186
174
188
172
255
241
178
190
199
161
207
248
154
241
248
179
99
257
201
136
255
180
182
188
194
261
180
193
234
183
244
141
246
187
219
184
227
190
227
234
219
191
244
182
251
236
203
209
170
209
205
181
261
207
150
192
209
204
186
222
163
207
239
216
187
224
270
244
204
244
229
260
227
200
206
194
175
197
262
151
173
200
159
216
201
218
177
206
248
218
207
251
169
229
260
173
160
201
202
154
209
231
170
242
166
196
156
168
227
226
162
189
250
212
203
194
173
209
174
188
178
216
206
196
176
193
161
187
221
162
236
225
188
199
174
197
185
162
174
207
246
227
216
176
226
260
170
204
189
251
132
161
176
220
195
203
157
255
194
143
200
197
182
202
187
229
224
219
221
216
205
198
153
197
198
183
270
175
210
201
226
157
228
215
111
245
258
247
227
203
211
220
184
198
229
213
218
207
151
202
208
221
255
183
145
248
218
273
160
126
172
217
258
285
200
172
201
251
229
238
207
189
182
189
202
213
196
131
227
181
193
185
224
203
190
267
192
257
185
185
151
240
203
176
213
172
217
170
183
159
244
166
195
210
121
264
250
230
228
197
236
166
185
177
159
167
253
245
165
206
188
167
183
225
239
182
247
246
167
198
174
211
169
139
183
211
187
220
150
145
198
209
232
240
259
151
143
158
223
133
178
172
203
223
134
202
161
203
195
225
208
132
214
211
206
188
182
227
232
164
206
234
224
143
225
207
164
119
175
187
163
203
173
167
174
197
194
238
159
224
226
236
184
173
180
132
212
214
219
239
220
165
178
212
273
212
235
176
167
214
185
191
161
196
199
139
212
203
238
197
205
170
241
253
180
150
211
226
151
157
210
200
206
201
167
228
145
110
200
105
179
176
156
189
159
193
201
179
232
249
222
248
206
255
247
149
198
212
188
221
165
244
185
253
202
183
228
191
131
192
229
245
280
216
148
214
197
209
194
216
220
194
215
218
180
189
127
154
181
213
176
124
157
160
181
189
241
193
201
177
193
224
260
239
185
153
198
202
217
231
196
236
230
241
199
178
181
194
168
259
209
182
226
184
189
223
247
191
162
203
206
178
216
201
177
181
174
175
211
170
199
191
203
220
172
166
140
225
223
215
241
181
193
256
216
220
226
267
201
266
189
175
233
251
175
222
233
238
226
221
131
216
143
186
210
199
165
144
209
233
207
205
200
215
207
233
102
233
225
193
187
203
209
236
148
225
194
246
201
206
239
228
161
181
187
171
195
209
160
234
190
242
261
149
187
160
229
205
170
145
168
197
248
162
192
132
186
233
216
210
172
189
185
246
186
204
204
198
202
253
206
189
176
242
177
234
249
175
221
242
248
225
215
169
213
192
122
211
215
240
233
198
177
199
189
207
213
149
203
179
189
269
158
171
213
219
251
197
190
200
159
212
280
218
105
251
183
196
269
211
263
254
186
215
214
195
150
264
201
205
198
198
194
188
205
165
232
258
170
205
165
259
187
166
221
165
243
155
174
174
172
217
179
194
172
197
219
197
211
224
143
228
203
142
199
201
250
174
154
189
228
153
218
209
148
236
211
224
181
251
192
252
192
151
184
206
130
221
195
211
214
198
196
150
184
162
250
173
137
243
220
231
235
175
210
202
187
209
155
199
168
151
234
218
213
186
195
195
160
214
206
202
209
165
200
182
139
210
201
217
210
217
231
179
178
181
176
161
190
173
262
178
155
193
172
177
248
126
209
172
163
157
228
213
233
208
198
245
242
230
182
200
264
265
152
181
208
222
204
221
185
193
162
154
182
214
218
181
240
217
260
263
189
141
229
180
196
171
233
194
174
181
148
269
250
131
221
243
174
187
228
236
193
189
184
247
228
172
241
219
129
193
209
178
168
230
147
169
231
169
185
228
181
236
168
128
260
265
164
226
174
176
209
227
145
206
149
215
244
236
190
224
135
281
165
214
260
244
231
178
237
226
237
211
164
211
205
201
214
235
123
210
232
201
202
121
169
219
264
202
176
155
213
278
235
204
170
200
231
170
163
204
231
179
261
193
135
203
185
202
198
140
140
205
223
248
223
232
221
176
219
217
161
188
192
205
245
240
187
162
217
245
209
209
255
168
223
236
240
167
82
216
209
191
222
184
237
246
180
194
201
219
190
158
217
246
183
135
203
140
242
237
204
211
243
172
203
176
262
245
285
171
202
186
233
197
170
213
255
209
208
190
179
228
157
197
211
185
211
177
203
186
147
244
246
231
181
136
226
232
186
230
231
209
176
246
204
145
240
231
235
228
250
209
186
215
134
159
182
243
194
148
212
187
174
180
218
246
168
166
235
268
199
153
203
248
227
159
183
203
217
171
248
170
219
206
157
202
192
165
222
195
192
191
195
238
203
162
190
229
188
182
234
264
192
241
160
163
195
127
233
175
218
204
226
245
159
244
187
190
213
222
211
114
247
184
256
207
159
221
172
199
194
188
309
155
207
215
187
229
249
195
255
206
144
215
218
207
225
161
148
178
190
204
222
140
195
180
233
242
220
183
225
219
175
261
218
165
226
147
207
183
197
185
195
159
150
197
206
207
171
180
134
229
189
215
223
206
178
248
199
173
231
204
227
207
238
289
180
238
223
251
198
187
229
223
245
254
143
188
257
141
214
200
184
207
176
185
197
171
215
256
143
230
224
85
291
196
237
194
187
204
172
234
237
147
193
211
198
187
163
187
142
191
212
190
234
213
211
201
229
166
216
176
196
204
148
183
187
194
194
169
200
188
224
165
215
209
219
138
179
242
212
183
116
144
208
178
186
173
200
186
146
261
168
136
189
159
213
213
150
215
209
188
225
195
218
218
165
154
205
143
198
188
206
152
248
153
161
201
220
228
222
183
206
204
213
243
233
280
240
147
251
189
195
194
167
230
253
202
162
188
196
201
143
165
161
201
177
134
202
224
237
203
129
186
176
193
226
101
173
179
211
139
267
200
212
234
237
222
139
171
187
230
166
163
233
195
275
246
142
189
286
233
196
215
208
200
205
161
165
234
203
200
151
219
202
189
189
198
197
235
216
177
216
189
192
205
207
223
229
239
229
253
205
243
159
131
215
191
255
258
219
259
203
165
165
236
202
167
160
186
175
198
155
191
162
208
266
235
186
247
272
180
186
222
167
164
192
215
181
193
160
243
186
232
157
219
238
171
199
195
204
220
168
243
226
189
200
274
155
225
175
179
296
147
222
211
187
169
182
191
181
191
180
234
196
194
168
188
208
134
211
220
227
221
189
180
221
180
164
234
226
177
167
210
271
199
210
137
190
129
230
241
216
202
210
170
242
128
175
169
226
206
180
193
202
248
238
160
189
179
201
136
213
186
215
184
123
261
194
189
233
221
136
207
237
245
175
184
181
152
184
184
145
234
202
147
238
169
259
209
171
124
196
190
154
249
183
211
190
140
165
134
199
164
165
211
169
181
174
212
132
140
177
162
164
169
218
159
195
188
230
140
202
226
171
217
166
154
248
178
282
255
198
211
180
139
198
178
236
171
199
125
208
114
206
226
179
189
254
206
207
139
199
217
189
179
249
196
191
156
189
212
203
170
198
209
199
231
236
225
242
207
178
171
188
176
167
205
193
206
210
165
145
259
111
200
260
218
238
193
221
225
212
197
230
218
229
197
161
143
187
176
140
218
246
177
168
195
205
162
189
185
176
255
232
205
236
224
180
189
141
221
186
191
196
199
233
173
174
279
229
150
172
274
233
165
204
274
259
160
198
228
214
201
204
260
175
229
140
205
175
242
248
190
256
222
213
163
203
190
229
226
201
176
241
169
211
283
255
251
228
255
159
219
220
219
153
142
191
198
162
181
209
184
235
224
159
280
251
175
253
230
187
198
199
168
171
241
146
234
245
222
226
213
232
207
190
153
176
252
261
205
200
262
188
204
208
214
199
161
205
190
221
218
211
209
235
232
232
190
175
143
226
184
216
184
131
165
129
133
255
188
239
208
199
220
193
240
99
148
300
177
145
243
190
217
238
200
151
199
221
251
244
192
210
208
197
205
239
174
188
235
196
186
177
215
166
222
142
199
241
252
237
268
226
187
227
197
248
231
223
196
248
229
127
198
222
247
226
174
196
207
142
195
256
245
221
214
219
164
213
142
208
201
240
177
207
212
215
228
215
165
171
205
234
243
142
168
220
142
187
200
210
164
234
189
173
153
201
241
261
187
194
238
211
217
191
201
253
185
235
208
222
197
201
181
172
161
167
213
161
201
237
210
226
175
248
146
265
240
255
237
190
173
224
173
204
198
191
175
139
201
86
158
211
192
194
231
192
175
214
154
197
240
218
202
187
240
188
143
227
197
208
215
248
229
223
200
164
171
185
229
189
200
218
195
240
229
128
267
156
169
228
228
247
228
171
240
174
132
216
226
181
205
220
155
201
257
178
240
164
260
268
191
184
193
192
234
231
203
185
173
219
226
252
186
249
205
219
192
163
169
184
189
171
220
202
182
164
206
224
218
267
214
192
182
218
258
232
120
178
205
148
177
207
260
215
177
218
222
184
216
138
265
227
196
203
193
185
151
148
196
201
249
224
224
192
224
169
200
201
144
168
235
184
233
250
221
217
162
236
172
193
231
136
257
177
167
176
173
205
172
212
269
247
240
251
195
201
197
151
198
168
182
208
215
217
149
161
219
165
216
187
173
147
164
157
212
176
224
192
249
226
206
172
185
205
151
165
216
141
212
195
147
196
268
176
259
185
211
213
240
222
163
233
232
217
262
205
136
185
181
197
188
198
207
238
205
229
140
208
204
199
222
277
223
267
220
223
174
236
149
124
205
201
168
268
250
202
193
170
242
189
229
164
248
273
156
205
211
222
214
159
227
236
166
256
189
179
234
223
202
214
150
118
153
211
267
230
205
175
221
173
237
211
160
208
181
227
238
168
246
196
249
204
205
167
211
211
194
249
221
181
189
207
151
228
236
254
163
212
181
223
200
157
171
119
157
190
176
189
239
218
206
206
152
214
175
252
252
170
209
172
197
182
235
212
233
175
275
257
215
196
239
202
187
202
189
220
159
151
197
231
156
185
126
168
251
212
189
223
123
230
219
209
209
214
202
161
249
122
216
198
138
203
218
221
251
210
234
164
222
224
214
218
163
120
171
298
193
210
213
164
260
227
200
203
165
203
223
209
181
181
275
150
191
219
220
253
155
185
224
168
192
145
192
248
259
186
153
174
223
201
181
173
241
251
217
200
207
234
194
205
201
273
235
267
182
256
237
179
219
167
171
163
99
225
217
210
241
166
149
229
201
255
227
247
168
160
219
215
228
169
179
252
217
202
229
124
155
192
157
184
183
230
224
170
183
238
212
209
229
218
218
166
248
174
198
172
204
202
208
195
184
235
212
222
229
214
180
209
242
212
267
181
176
170
196
232
159
221
131
248
215
174
220
186
124
210
219
177
227
162
247
227
214
156
179
159
227
235
174
204
251
200
186
211
161
214
233
203
221
262
236
172
229
188
226
199
194
203
125
205
139
105
203
182
243
181
216
190
191
184
240
150
210
187
197
185
126
197
165
232
164
110
196
212
220
205
187
240
213
136
197
238
198
199
188
198
214
246
173
164
255
190
122
184
224
133
155
102
166
160
127
220
258
208
181
152
175
166
183
190
244
187
223
238
187
194
147
182
176
167
171
220
274
221
203
240
172
189
277
249
261
135
184
115
189
156
277
186
251
228
198
205
229
213
192
139
233
248
203
248
202
205
201
175
202
217
206
168
174
183
167
216
211
204
225
221
271
218
161
178
251
281
240
168
190
230
236
173
178
186
210
172
230
186
210
187
165
179
185
156
224
208
162
233
251
231
117
217
255
261
192
206
185
267
170
183
149
213
144
194
184
251
209
191
224
163
185
214
146
256
207
215
178
178
167
169
243
192
174
247
166
206
225
144
168
195
152
263
211
209
179
225
199
203
152
237
177
203
190
188
139
248
182
163
208
166
181
184
182
177
169
202
193
233
178
234
182
183
200
193
88
180
191
152
200
241
222
187
205
226
194
193
209
215
210
186
259
196
191
255
159
207
203
203
235
193
189
156
211
239
163
206
177
265
203
208
195
249
201
247
212
215
181
162
222
143
215
229
268
192
236
171
202
272
213
218
149
263
230
157
207
225
186
195
221
275
185
144
156
231
236
203
154
215
175
223
169
201
162
199
256
199
250
235
166
148
204
192
176
217
191
187
182
218
203
179
192
208
216
197
192
213
212
200
222
210
219
231
181
142
184
247
176
193
227
146
176
228
208
184
224
212
226
191
232
210
181
180
228
238
219
156
227
166
211
211
140
142
183
215
139
157
187
213
202
216
158
247
155
158
196
262
191
228
192
219
189
208
209
165
204
126
175
170
194
219
157
153
197
176
246
182
244
185
183
173
160
203
185
170
215
233
194
175
206
253
192
229
158
148
186
215
206
237
210
176
201
166
170
146
171
152
186
228
222
231
236
122
198
230
218
213
208
150
233
212
220
192
212
253
206
83
202
232
154
166
191
275
254
207
201
243
232
188
100
209
236
98
205
197
215
203
177
224
230
195
157
192
153
205
242
244
141
213
235
152
210
211
220
241
257
203
165
178
206
155
241
227
224
163
197
204
214
135
214
158
207
243
167
222
131
249
207
296
221
173
189
209
164
159
210
192
203
100
241
215
181
175
179
236
202
254
251
215
205
169
177
244
278
196
213
209
228
206
153
238
204
186
166
262
263
214
128
178
204
189
182
181
167
272
229
177
237
216
217
168
221
235
198
161
148
210
243
145
183
181
173
209
223
222
248
236
197
216
194
203
182
173
216
207
196
226
188
129
195
205
235
224
221
217
191
143
189
174
211
207
214
222
209
211
220
226
141
234
218
228
157
176
170
167
186
189
181
181
178
200
160
195
178
199
234
233
220
217
174
168
158
252
213
213
180
189
158
161
214
256
227
198
156
228
182
198
186
197
208
198
221
185
219
219
151
243
198
223
203
209
205
170
233
156
228
172
223
215
135
167
176
227
147
143
215
223
182
251
211
222
199
244
256
228
221
202
193
225
210
209
197
182
233
182
224
184
196
231
220
210
172
239
204
234
140
184
213
194
147
237
201
228
166
175
239
161
207
234
222
225
271
227
187
214
254
168
194
180
219
167
166
233
226
165
123
229
170
218
192
176
181
157
161
174
266
212
188
195
171
194
256
236
276
102
272
179
197
223
204
188
162
136
219
213
159
218
204
159
222
152
145
265
218
226
236
241
233
193
245
268
198
144
167
191
197
182
215
190
265
158
180
201
215
214
206
204
228
199
194
239
227
220
167
159
138
182
211
160
169
205
201
250
205
199
126
136
148
264
161
231
173
206
132
225
175
219
218
231
182
195
258
234
191
202
257
188
144
211
138
199
194
184
236
254
181
232
274
217
115
212
190
246
153
153
232
219
175
185
218
216
168
237
145
181
182
258
235
204
179
190
183
204
197
226
144
210
217
216
206
166
179
187
170
221
207
187
151
230
164
207
188
142
206
201
219
232
202
197
254
207
203
158
159
265
126
240
165
199
233
249
199
229
175
209
194
162
199
164
143
157
174
176
186
146
210
187
209
140
247
214
190
218
226
242
223
158
216
265
248
270
130
247
211
202
220
197
246
222
231
181
188
229
196
185
153
249
241
255
215
231
203
221
215
236
207
198
174
216
181
183
220
176
195
233
154
193
233
232
145
295
227
221
171
215
171
229
213
246
196
236
228
193
246
224
220
196
210
211
174
245
243
262
229
234
211
170
181
220
204
225
210
224
203
192
242
174
227
152
135
145
228
179
162
193
211
208
191
113
198
205
169
240
229
221
132
213
175
228
162
187
207
172
187
250
151
227
246
176
142
183
219
123
214
201
196
192
198
211
214
209
156
205
114
224
190
199
196
210
193
188
200
156
203
185
258
134
258
183
259
176
183
207
169
285
197
192
207
199
247
227
236
200
172
218
203
196
169
223
209
159
183
265
248
267
232
252
220
201
192
228
275
155
213
202
241
223
227
152
219
208
190
121
233
212
135
188
154
218
173
182
176
218
257
230
166
222
207
215
167
232
201
195
172
232
170
197
176
145
154
235
244
147
245
197
199
192
205
242
197
259
162
188
150
219
190
225
203
166
219
183
214
204
153
232
214
168
193
194
202
240
217
167
230
149
217
211
183
224
229
189
130
254
223
139
199
193
191
145
218
239
237
235
245
193
223
153
174
206
192
244
276
228
266
215
203
218
203
89
224
170
207
281
136
236
207
201
175
228
212
143
185
181
209
178
134
182
204
217
279
150
203
164
219
217
178
179
206
191
186
207
208
174
249
189
241
191
225
198
234
185
222
207
210
214
160
125
183
249
182
163
217
241
215
164
234
219
180
228
207
211
152
198
238
150
187
176
238
189
236
210
304
239
215
195
177
190
192
181
191
224
190
182
158
226
178
244
191
201
151
211
250
256
218
204
189
193
249
251
236
190
133
186
177
233
283
213
207
177
197
156
256
239
133
198
197
216
193
192
204
216
188
220
189
214
157
251
150
233
132
255
191
218
197
171
221
235
253
192
205
207
215
245
191
234
247
235
249
138
201
242
228
93
134
228
239
215
266
191
174
176
195
160
192
157
262
145
276
223
146
144
134
206
213
196
216
177
264
229
162
197
162
171
204
192
188
269
192
212
167
167
215
229
176
183
256
182
217
188
202
217
193
204
217
189
266
195
215
209
219
201
218
178
221
164
199
178
195
180
196
235
247
181
166
219
181
234
192
158
189
180
231
230
226
194
161
222
167
218
216
223
242
176
190
175
266
238
209
216
190
224
275
222
211
172
227
184
192
209
168
119
258
206
191
254
147
208
229
166
211
224
277
163
240
206
199
154
235
177
220
189
187
171
185
177
234
179
186
169
141
204
216
181
225
158
139
225
212
113
190
179
291
198
160
189
220
222
184
167
240
211
169
209
191
242
222
173
203
182
182
213
182
187
200
239
219
219
247
265
238
246
226
226
187
252
212
170
191
215
234
248
240
184
251
271
210
158
198
204
187
177
224
215
202
185
193
218
222
208
149
144
224
175
151
207
218
244
181
180
162
167
239
187
255
210
274
249
206
170
179
178
242
231
235
182
218
203
197
169
229
136
189
198
159
147
206
187
181
178
267
179
201
170
216
169
179
159
177
213
209
157
216
166
214
155
194
254
218
207
221
189
157
214
205
253
211
148
164
209
249
192
241
270
251
273
240
262
130
155
217
204
174
165
179
150
221
206
146
212
117
188
200
243
217
210
189
121
163
181
216
176
178
192
194
196
247
200
198
198
168
236
195
204
199
237
183
125
182
247
199
164
247
175
137
196
207
192
164
172
256
223
230
223
166
206
167
199
170
287
176
193
209
157
196
237
243
151
231
197
169
225
206
154
261
230
172
146
232
178
206
171
162
225
210
176
194
220
277
219
211
172
194
250
205
199
224
267
202
219
200
135
296
195
219
184
228
224
173
177
178
227
234
220
203
193
146
191
244
259
221
242
278
229
165
187
144
172
253
255
180
205
205
210
196
208
188
215
231
242
150
179
232
209
228
194
226
165
244
196
182
219
210
270
215
208
104
208
172
187
138
239
249
227
155
193
209
186
186
225
200
140
231
210
206
176
205
191
208
241
248
184
182
210
179
204
234
231
134
182
247
201
250
201
217
185
192
219
224
190
223
153
186
218
187
159
173
222
110
194
199
221
172
181
199
102
144
256
194
206
211
209
227
246
228
234
139
247
230
206
208
229
179
227
199
173
219
173
206
161
212
232
273
206
201
219
187
154
246
281
202
226
177
174
213
238
212
238
228
211
123
193
148
202
211
160
215
179
202
245
194
262
139
201
163
178
183
225
152
153
195
189
227
211
158
189
170
271
203
240
242
208
244
163
200
225
215
187
223
210
186
221
165
207
203
125
178
167
252
251
216
193
188
248
159
162
175
203
206
225
174
151
196
153
204
189
261
197
185
245
228
220
247
222
210
180
148
167
219
203
209
192
161
263
211
155
208
225
208
149
257
230
185
173
206
153
165
149
168
250
145
208
139
154
208
224
246
269
131
198
186
254
199
206
131
162
233
141
144
160
254
168
140
248
237
215
226
180
182
217
213
213
148
174
223
190
227
240
262
262
183
190
252
165
203
194
131
207
196
261
203
197
198
212
170
182
216
200
210
227
176
197
173
211
229
200
200
272
112
248
215
244
180
184
206
164
224
166
147
192
184
228
248
220
199
262
271
202
152
223
227
210
169
234
229
182
203
204
231
227
200
196
163
188
245
208
190
187
240
145
238
207
200
143
178
234
243
177
231
177
235
265
235
206
166
151
178
199
188
198
145
146
200
214
195
192
199
167
182
172
256
184
178
206
180
179
195
245
217
178
216
144
204
227
272
241
210
190
212
196
174
206
214
225
221
229
218
228
176
235
268
236
204
184
196
220
209
267
160
218
226
217
211
187
207
209
164
251
233
162
220
162
208
182
128
245
224
220
201
162
232
177
218
178
232
216
261
153
226
185
185
183
185
233
123
234
183
198
168
212
249
180
197
157
248
160
176
231
138
256
190
281
194
224
192
271
214
224
181
184
186
219
188
167
166
205
217
207
225
205
231
265
223
220
192
227
194
154
184
205
213
187
205
268
227
219
194
273
173
161
191
191
199
204
187
207
162
226
240
139
199
189
217
156
195
233
202
208
161
189
215
223
225
121
242
269
183
158
147
161
238
184
210
253
225
202
226
130
133
212
227
220
210
198
209
202
165
223
194
180
178
190
160
215
218
270
101
244
158
192
206
231
271
127
180
172
145
198
200
249
185
169
224
226
179
253
246
193
146
238
204
205
216
232
177
176
214
183
191
205
221
185
192
206
172
189
219
228
192
154
213
170
217
135
262
224
160
192
248
203
233
229
226
189
198
181
217
201
243
230
258
154
177
159
184
211
193
203
209
173
258
205
171
185
242
223
210
250
183
207
194
257
187
123
243
198
235
156
206
169
237
182
197
175
232
165
145
225
165
168
200
180
232
214
268
224
159
186
252
238
261
235
210
166
171
142
231
192
199
195
185
179
206
180
235
264
236
220
238
160
201
204
225
221
166
253
199
167
219
183
167
159
153
186
178
233
169
212
160
217
155
195
185
160
175
265
243
254
236
220
219
225
157
201
183
226
183
141
192
252
161
257
229
175
260
192
224
121
129
219
188
178
166
136
198
130
173
193
248
195
175
159
191
192
226
180
216
158
179
161
180
187
168
223
140
198
160
202
171
207
168
187
196
241
201
185
247
163
209
192
196
256
258
179
161
156
180
255
187
176
204
181
221
234
230
146
176
206
178
183
231
180
219
221
197
191
219
152
228
194
154
155
177
211
146
223
249
244
192
235
193
207
258
238
141
210
121
261
162
158
197
188
187
230
256
201
258
133
185
168
224
224
188
257
154
160
218
203
153
226
220
243
150
153
196
269
233
177
207
240
148
189
249
241
187
215
229
177
202
220
206
193
161
216
177
251
246
222
248
188
133
197
231
234
220
216
217
237
151
197
207
234
229
152
241
191
177
219
191
130
191
256
193
192
233
176
187
223
223
191
222
231
188
237
165
186
165
144
159
200
210
181
227
209
263
188
207
211
153
188
244
178
168
210
212
259
183
229
163
261
160
185
251
221
230
161
188
200
206
203
209
176
188
234
184
278
167
189
201
198
190
177
196
182
187
186
173
233
178
219
192
204
167
161
207
247
168
209
174
222
172
164
277
237
192
226
178
206
219
225
180
261
241
254
234
181
243
212
232
239
193
182
163
171
167
224
189
194
217
177
247
213
216
235
171
159
217
214
228
169
159
193
178
256
227
246
206
203
213
270
220
260
171
246
167
213
161
217
228
181
186
232
207
208
166
295
273
218
202
203
145
208
223
199
194
241
177
162
166
176
176
253
259
211
203
192
175
199
221
209
213
218
217
189
216
213
205
137
193
233
221
141
142
173
241
178
253
163
239
242
165
151
193
220
122
184
196
217
165
181
232
221
174
234
119
208
196
174
187
240
212
124
234
227
234
246
170
179
212
219
151
166
179
168
187
197
260
184
199
124
214
254
214
162
226
221
166
254
183
172
235
307
201
244
197
145
189
187
134
203
186
184
219
164
165
196
161
164
235
164
181
227
215
174
161
147
178
184
197
196
179
199
223
170
183
164
212
218
225
146
232
253
208
223
222
174
226
193
192
227
262
211
225
197
211
201
227
221
233
204
206
187
198
190
227
211
178
211
203
156
170
177
223
182
181
205
223
265
178
131
227
232
204
257
215
244
209
204
156
158
183
200
212
202
136
231
175
206
187
205
183
223
226
219
138
246
261
209
204
226
198
169
152
136
210
187
217
176
218
185
230
224
176
213
247
197
200
200
226
149
140
235
213
215
247
166
235
147
245
242
229
189
153
120
157
158
218
151
217
253
262
218
128
178
231
176
204
189
158
235
180
158
197
231
239
159
200
249
187
151
227
222
162
181
243
219
218
239
179
214
211
206
200
150
177
165
195
184
209
191
255
206
223
191
136
261
162
143
198
201
185
184
204
196
199
162
203
185
175
204
175
207
253
148
200
143
168
214
196
186
124
207
207
189
183
144
243
176
202
216
173
185
200
202
169
202
178
194
222
150
191
255
206
172
147
180
222
235
189
166
210
150
194
181
202
248
152
169
139
221
211
204
174
139
157
195
201
165
180
245
190
220
219
187
218
187
217
157
185
235
216
218
253
172
120
166
258
229
180
262
227
217
209
168
225
173
218
165
216
232
186
176
210
244
209
243
150
229
250
183
203
189
210
226
252
145
190
207
180
160
173
207
221
234
164
190
241
174
246
216
235
163
144
232
231
167
140
251
205
198
195
205
144
202
173
223
242
168
207
138
229
151
222
181
186
199
225
189
148
210
151
252
173
182
256
211
209
215
243
288
246
193
212
253
155
181
256
218
188
170
185
208
218
164
202
175
168
177
124
229
208
272
177
280
177
237
218
181
182
228
198
156
206
242
179
210
150
176
163
214
255
205
221
200
163
169
167
223
213
214
229
256
248
212
181
235
202
215
252
199
154
218
241
200
206
226
232
131
179
223
192
198
213
198
206
216
219
145
207
163
231
260
203
165
238
175
242
180
225
232
202
194
142
259
140
225
139
241
209
199
174
225
200
210
167
185
185
237
233
200
222
228
192
198
217
165
209
146
185
173
201
93
259
223
157
212
214
280
211
229
205
209
224
281
215
161
243
257
148
188
198
180
200
228
187
234
161
217
217
237
283
241
168
175
186
238
264
260
248
222
172
165
189
191
229
245
202
189
191
153
102
242
206
167
221
180
196
223
233
229
203
209
208
229
170
213
184
237
166
133
204
216
139
168
187
149
211
197
161
241
225
216
183
255
208
222
215
204
190
216
234
203
201
266
172
162
253
239
143
233
254
246
197
224
254
225
258
214
189
178
189
219
284
184
175
182
176
200
225
234
111
192
241
204
212
205
172
203
203
225
254
185
227
172
145
181
184
215
233
171
230
203
211
256
250
217
157
222
188
189
208
228
240
197
171
266
185
227
245
217
255
157
210
205
197
158
239
206
179
265
150
237
189
220
258
199
226
199
135
264
203
206
251
254
223
224
226
192
180
165
200
224
199
224
248
177
235
133
187
147
192
224
211
142
234
195
214
234
174
155
251
240
174
203
131
168
189
193
210
180
216
191
254
234
221
220
207
162
232
208
210
171
200
255
248
178
199
251
216
184
185
144
228
198
249
155
213
199
202
221
234
140
144
192
190
150
165
197
158
156
164
217
246
150
142
250
209
226
240
187
190
198
90
215
254
197
199
205
201
212
223
177
147
183
249
179
229
201
192
233
211
187
188
105
188
233
123
211
206
280
167
248
181
149
200
263
146
212
169
183
224
217
263
199
251
203
189
183
222
177
203
155
215
212
209
153
228
200
213
208
185
205
211
228
222
195
198
128
150
174
196
164
239
202
204
212
178
147
192
148
183
210
179
187
249
247
184
255
172
179
214
184
189
178
111
220
166
202
230
196
128
230
167
262
194
171
168
211
206
238
233
185
179
213
229
208
195
190
201
223
152
214
193
247
236
208
237
276
235
178
217
120
218
180
157
182
229
259
253
233
154
205
235
201
208
216
263
167
220
250
203
230
211
200
134
221
204
205
175
219
172
211
188
205
162
236
193
132
195
209
165
199
210
213
225
145
172
209
208
285
214
201
171
179
139
228
209
208
249
210
160
152
215
211
222
217
149
173
271
198
138
166
183
165
209
196
210
186
206
173
148
211
226
167
189
237
221
179
233
201
168
223
222
203
194
185
181
156
244
260
199
222
209
176
226
242
201
211
204
159
174
225
217
136
239
142
151
166
258
265
227
241
184
206
184
180
245
284
211
217
244
157
188
165
205
236
143
263
177
228
108
224
150
138
208
236
245
218
171
200
198
164
123
164
206
205
175
207
143
200
212
178
193
172
208
152
231
226
184
202
179
148
239
280
185
199
204
239
220
193
179
189
111
154
189
215
276
219
178
259
189
136
215
199
242
197
228
186
189
216
243
219
148
169
159
301
154
213
217
221
259
200
128
161
186
176
198
227
193
225
198
214
228
149
190
209
234
224
264
181
192
210
242
212
208
218
215
253
221
216
142
213
174
230
188
184
166
213
200
222
189
226
192
139
236
162
191
228
243
198
217
216
168
200
188
192
195
113
197
208
229
233
206
229
141
221
219
127
148
206
169
208
224
178
221
193
182
219
187
225
186
250
212
218
206
199
251
215
193
180
189
196
187
273
160
166
214
160
216
169
193
228
165
250
260
190
182
228
235
159
199
232
177
178
244
168
218
173
181
209
198
234
232
199
276
217
288
214
189
225
189
215
220
186
211
237
236
186
170
218
190
189
202
210
240
259
215
214
231
245
261
207
208
230
200
123
169
213
186
232
190
234
175
236
239
215
124
182
203
258
225
250
218
184
171
216
211
182
191
236
164
225
173
241
184
278
212
169
145
275
234
286
229
160
228
160
208
151
184
147
187
243
187
203
174
179
236
245
181
236
175
214
183
205
183
121
178
210
226
227
200
238
242
153
179
148
179
170
202
231
243
246
253
117
165
215
253
176
196
206
151
163
190
205
199
219
171
170
243
260
131
162
191
166
208
254
211
204
148
152
194
185
157
215
163
183
190
142
180
207
157
203
198
159
237
191
246
150
190
202
184
200
241
227
190
207
208
193
169
239
208
138
171
162
125
225
221
199
222
180
248
244
193
193
188
177
190
188
227
152
207
233
214
220
206
210
169
190
177
180
248
253
244
263
191
189
160
218
170
171
247
244
212
235
199
222
236
148
126
167
231
235
179
233
192
163
241
188
272
234
252
218
203
160
241
176
145
247
218
124
235
180
208
262
157
172
252
217
257
214
170
235
241
172
146
143
176
178
176
188
197
230
141
210
240
183
215
245
194
219
277
217
220
163
244
237
201
224
215
207
154
167
176
137
197
181
247
147
198
193
189
203
195
191
217
206
219
224
177
281
143
209
186
233
249
129
180
221
246
187
220
186
148
202
195
166
126
189
198
175
227
181
199
224
193
189
255
206
192
174
177
242
166
224
179
203
181
213
217
249
262
226
211
152
239
231
225
197
212
191
187
188
207
171
224
193
187
224
198
155
186
179
221
231
199
188
146
159
162
175
242
173
192
220
270
183
220
132
242
244
195
252
213
175
205
179
215
227
252
214
214
195
205
236
212
218
174
229
215
230
225
218
244
179
175
181
190
221
177
179
236
101
244
184
244
147
213
207
156
249
235
153
210
212
214
245
226
220
174
192
199
188
235
121
139
163
195
144
205
185
228
195
234
155
214
249
243
193
212
187
205
232
192
209
177
207
232
190
229
208
157
219
208
266
190
270
176
212
191
166
231
221
167
181
230
207
306
251
204
204
241
237
192
225
159
186
188
146
199
277
210
190
172
188
228
218
203
196
269
189
182
165
195
239
183
164
166
189
221
235
223
258
170
202
232
232
189
176
220
205
178
231
248
209
162
192
246
200
160
203
189
167
178
165
171
166
233
180
145
233
206
238
193
200
175
269
216
173
175
238
220
221
156
265
248
192
201
192
235
190
225
234
142
188
250
177
201
246
170
198
207
250
188
170
147
201
211
211
234
182
268
168
206
199
211
142
144
157
160
188
148
230
190
199
227
194
265
246
187
208
212
193
172
193
201
231
216
255
166
193
225
192
177
257
241
241
236
186
240
192
206
208
222
239
238
218
252
162
214
181
206
242
228
195
256
199
195
263
157
251
210
217
281
169
200
168
243
222
192
200
231
150
182
221
207
225
256
227
182
213
216
250
170
203
216
224
178
219
238
245
182
154
207
155
228
142
175
156
188
195
141
210
239
199
198
218
142
180
201
236
162
225
213
156
196
217
192
191
217
220
223
239
248
213
288
199
161
211
216
273
137
197
210
160
193
233
198
229
195
226
201
226
173
212
192
189
230
221
215
225
201
160
242
167
215
213
237
205
223
214
250
201
241
192
196
184
254
194
243
146
192
186
195
256
210
200
214
224
188
153
156
280
224
153
210
207
210
216
254
187
216
179
238
166
204
189
207
203
214
188
166
163
171
209
219
203
157
145
222
186
200
232
238
231
156
184
250
171
191
166
169
171
158
146
118
230
175
193
195
229
171
144
235
175
184
236
207
210
180
175
150
215
233
243
211
231
224
225
207
223
178
205
222
233
172
248
216
164
179
180
175
189
185
191
219
212
185
212
212
220
219
193
228
217
167
153
167
207
231
202
125
163
234
181
235
180
202
142
189
231
156
149
183
188
189
214
223
224
180
264
135
263
192
248
195
194
238
202
205
192
199
223
222
207
253
170
221
188
230
205
183
183
230
216
217
189
185
214
184
246
200
194
144
171
176
234
205
201
181
165
187
230
254
276
167
167
133
152
189
236
173
190
258
180
203
247
282
235
207
192
241
249
169
209
199
178
155
215
205
196
147
217
242
210
168
176
163
176
212
236
221
139
210
162
228
192
166
252
229
196
200
222
151
216
181
273
249
158
209
141
233
215
174
204
218
172
241
242
185
167
208
188
195
156
204
190
123
229
217
228
180
182
190
170
244
252
141
236
246
223
173
118
180
219
216
236
204
223
216
206
200
229
208
183
183
189
203
207
149
170
78
188
199
206
189
226
247
178
217
164
163
184
233
155
188
196
233
238
209
225
204
149
197
255
183
145
187
201
172
196
230
196
168
173
225
209
235
215
234
120
137
237
197
195
240
155
219
150
201
234
165
156
223
115
150
233
187
162
186
200
180
173
168
222
214
220
174
175
196
187
184
211
192
195
147
219
191
188
221
220
203
139
180
224
220
271
164
190
206
238
179
205
205
242
173
201
201
203
182
244
258
212
213
207
173
203
219
231
238
174
169
236
163
206
189
210
194
220
187
192
166
159
182
206
201
229
185
224
217
177
168
235
258
198
214
184
214
166
217
162
231
185
226
186
201
174
253
187
185
202
123
163
219
202
129
173
233
241
205
276
214
209
283
184
212
231
194
196
224
211
168
235
197
184
194
188
164
225
247
185
178
189
259
235
165
194
252
205
235
183
187
203
227
201
212
244
212
254
219
234
172
202
214
283
143
142
195
146
134
222
177
244
187
221
265
223
255
188
212
182
250
206
259
183
184
204
229
169
202
206
212
249
226
271
170
201
211
209
261
205
242
222
265
134
218
202
241
193
224
191
217
191
206
223
204
186
206
217
182
196
180
163
202
220
191
245
191
152
198
175
218
195
184
267
225
198
216
260
137
189
210
206
181
138
253
195
191
199
228
215
224
199
164
249
194
185
171
155
239
221
196
178
171
201
207
218
220
169
141
194
136
198
196
210
261
185
191
194
196
191
183
235
209
214
183
226
163
118
140
241
215
193
212
172
186
220
104
223
209
242
169
188
185
229
129
224
196
167
209
219
174
216
176
190
174
271
163
219
197
276
249
193
187
176
131
237
188
167
197
211
191
144
255
174
263
180
159
171
153
197
217
158
152
185
230
187
232
222
206
169
230
103
262
201
222
216
186
166
239
189
207
133
205
189
150
177
207
216
186
155
185
234
240
199
164
203
243
235
131
231
244
185
215
215
158
221
238
202
223
223
204
97
231
243
203
155
175
144
258
177
244
189
233
195
234
147
148
285
204
236
173
167
199
217
219
243
159
172
205
205
239
194
174
224
188
218
200
182
185
227
190
233
157
208
191
157
164
239
201
196
235
184
251
148
220
261
182
242
202
220
197
223
177
210
175
183
215
233
204
218
182
192
258
172
173
158
251
183
206
210
243
224
218
206
217
193
185
164
223
225
148
267
227
215
156
193
221
146
216
173
183
272
196
231
157
251
197
201
185
154
210
204
161
201
221
173
177
155
247
225
201
231
145
203
204
174
226
195
211
231
183
213
205
151
125
168
170
261
188
211
213
180
143
186
125
224
225
250
201
263
208
199
209
204
194
198
201
241
220
129
104
223
204
215
178
191
151
173
158
268
137
202
192
173
161
238
191
236
211
205
164
171
192
250
232
235
210
204
170
194
149
219
270
172
188
185
212
195
222
226
224
253
186
223
185
216
175
200
222
174
214
182
224
195
179
147
229
224
187
222
213
169
215
140
201
221
207
228
237
266
171
239
216
152
211
212
176
153
167
185
129
213
181
199
254
187
250
196
169
177
174
155
215
145
192
226
246
238
246
201
229
168
191
154
218
190
209
213
170
237
198
172
237
231
232
170
166
243
140
191
187
246
228
196
201
260
195
192
151
232
212
175
246
154
225
235
192
198
132
214
209
198
176
152
252
147
238
214
147
191
206
190
203
139
214
229
275
172
226
163
220
109
223
225
209
185
246
226
197
204
209
236
139
250
210
225
192
247
236
152
196
118
220
249
213
196
118
144
222
214
182
193
224
243
185
237
147
169
181
210
154
224
247
229
165
233
233
158
194
192
226
198
94
183
230
143
172
152
228
191
170
232
198
176
215
229
164
250
219
253
233
168
180
171
166
204
174
119
181
252
219
214
195
184
150
209
192
222
154
128
143
205
239
261
243
247
202
210
170
202
217
237
235
229
251
207
180
191
257
168
173
232
150
247
219
263
221
217
199
225
134
219
213
199
166
173
255
234
190
164
237
184
186
234
159
189
218
210
236
221
236
108
177
228
250
167
214
152
225
209
217
256
208
150
172
250
270
193
158
193
284
239
163
249
211
219
179
169
204
184
198
169
191
214
184
214
208
223
156
190
217
153
173
132
207
131
167
257
174
200
256
170
190
242
241
195
207
176
210
192
134
162
218
230
187
157
154
170
257
193
202
211
161
198
144
246
214
178
143
215
210
215
289
169
178
205
237
256
189
218
270
222
194
173
212
197
171
186
194
212
186
215
169
235
233
178
213
242
154
187
121
250
191
214
140
211
172
217
210
183
220
168
252
229
211
130
177
147
180
231
247
227
227
223
204
268
196
225
249
229
153
196
212
224
208
164
248
231
206
247
196
206
177
172
169
151
195
144
196
201
171
236
189
243
209
170
175
147
139
253
182
205
207
194
244
250
170
177
187
161
133
236
206
253
216
206
193
261
209
204
194
252
201
80
205
196
214
191
219
185
206
197
208
234
144
165
231
216
202
254
210
187
144
178
256
265
166
264
131
261
176
141
194
227
251
188
217
163
210
285
229
252
191
206
203
180
177
164
201
228
217
218
212
239
237
164
239
178
220
223
193
253
171
224
203
203
222
255
175
197
220
216
121
211
190
148
241
211
232
158
188
212
143
187
204
172
197
234
243
205
246
255
212
210
202
136
134
238
191
175
227
143
257
171
185
242
234
155
151
243
219
213
229
182
219
254
166
182
195
218
154
192
211
207
162
241
198
240
253
210
201
210
202
196
191
210
228
233
172
174
149
121
237
243
246
125
163
204
224
219
178
160
161
244
223
161
217
147
203
147
196
207
231
185
167
171
218
200
213
207
199
194
128
139
196
246
212
198
208
237
200
187
209
198
225
207
208
210
89
243
206
129
215
181
217
244
173
217
188
219
225
216
177
166
239
218
211
214
189
167
218
176
236
247
207
233
168
141
170
260
245
198
226
211
215
186
185
232
242
130
177
215
201
203
221
246
251
151
223
175
207
209
215
214
208
134
202
190
280
218
214
185
227
234
224
262
179
225
218
230
209
177
183
216
151
186
189
217
164
124
246
231
242
251
230
208
171
228
204
236
167
204
196
284
236
202
196
263
224
152
177
193
222
164
220
247
243
146
241
215
178
183
201
195
179
133
227
281
243
191
188
235
119
197
145
182
209
215
268
168
223
162
193
250
181
172
250
211
189
185
233
211
185
170
176
192
204
156
203
211
187
208
275
188
209
208
188
203
198
188
235
231
237
225
196
241
158
242
285
199
161
119
180
193
209
236
251
171
223
264
189
194
236
174
195
230
189
210
239
199
183
170
220
210
211
235
265
168
132
208
221
234
183
160
148
224
263
181
160
151
150
192
181
199
144
184
206
114
199
215
169
225
167
245
233
232
168
236
268
209
261
218
151
184
167
173
224
215
197
144
204
212
221
224
190
258
238
262
192
229
247
171
182
259
196
201
176
189
249
203
206
156
200
195
186
234
221
216
213
209
208
150
226
158
243
185
223
226
235
262
103
193
246
183
197
187
193
108
243
208
230
204
146
207
200
193
160
219
246
202
195
206
152
241
214
236
163
219
183
275
138
156
149
240
206
200
152
180
143
152
159
230
177
137
178
147
146
147
160
190
224
213
192
175
206
201
247
207
152
180
266
167
208
192
198
218
245
190
201
223
197
149
199
257
193
176
252
165
231
218
201
190
173
246
191
160
197
212
154
213
199
164
195
171
177
137
200
230
203
230
189
134
253
161
164
169
264
189
272
224
246
212
144
190
227
169
265
202
261
235
164
234
198
139
176
194
202
273
165
118
201
246
232
160
237
203
193
272
178
193
216
157
208
193
249
198
109
211
234
220
251
204
203
206
190
204
143
182
168
163
164
212
206
172
209
261
240
209
161
192
179
195
203
160
158
101
189
215
185
259
219
207
200
246
241
173
206
216
233
206
230
180
257
224
196
165
124
209
145
176
219
137
286
233
183
147
164
231
181
203
236
227
215
207
225
166
264
193
286
196
147
233
241
198
234
155
195
274
127
202
215
178
247
217
206
254
166
183
223
244
167
150
210
166
204
193
219
194
214
184
240
243
158
210
167
252
222
217
173
222
179
189
137
163
235
252
234
182
218
223
189
168
241
260
222
196
164
168
170
177
208
167
249
260
162
219
168
194
213
166
235
201
204
201
185
220
216
137
178
177
193
216
233
182
243
233
111
188
143
160
212
156
182
178
204
258
207
206
187
176
206
217
198
149
257
206
185
246
198
223
135
267
248
195
235
216
152
196
171
199
186
224
246
191
243
240
182
159
214
166
104
211
158
176
263
156
144
215
164
234
203
172
192
193
151
194
224
213
197
227
179
242
211
231
226
149
192
246
207
208
185
200
224
225
165
200
253
204
156
204
202
197
222
224
284
228
184
211
88
220
210
191
159
153
217
230
215
201
198
180
244
142
239
192
179
214
238
195
182
190
193
123
227
140
245
168
206
180
177
161
200
148
175
265
197
272
219
251
212
144
184
188
215
219
194
193
168
184
255
250
192
260
210
214
199
169
167
188
213
221
190
267
247
196
218
166
227
212
203
236
204
218
138
165
196
166
170
171
209
181
140
243
250
226
216
251
168
201
233
270
106
173
213
197
182
232
218
178
140
191
272
153
150
228
116
179
170
187
194
174
188
246
241
197
207
158
243
262
173
252
201
216
220
185
238
212
224
241
237
173
200
156
209
202
150
203
227
218
237
178
200
138
158
226
226
215
231
160
224
120
189
134
200
255
140
201
172
169
208
243
230
223
177
233
200
206
212
227
165
187
199
145
225
179
238
211
215
242
166
231
185
127
183
151
250
167
216
155
169
229
234
185
244
248
197
216
209
221
235
176
215
170
198
172
186
130
203
171
195
179
193
246
193
231
225
245
147
216
195
209
192
213
223
250
158
236
202
193
186
242
199
234
210
189
175
223
239
260
195
228
227
165
211
202
285
177
235
179
230
199
112
190
197
160
211
186
245
202
178
247
223
197
224
191
222
224
243
212
280
244
205
256
195
208
199
203
142
144
212
154
218
207
240
222
223
163
244
244
202
226
183
231
148
232
188
177
201
213
144
230
201
190
150
243
184
222
158
216
190
188
200
228
231
208
174
194
200
188
246
253
191
149
190
212
191
177
203
186
173
249
111
172
255
213
250
159
214
148
256
186
170
179
173
207
229
180
245
208
250
275
123
185
172
151
200
133
213
164
271
230
200
208
178
251
155
196
221
209
166
168
277
197
237
224
107
192
267
226
196
220
255
219
181
247
194
208
161
154
192
186
190
197
160
208
277
234
201
135
196
199
223
125
177
251
240
164
234
179
140
196
171
169
181
255
214
102
165
179
195
179
199
161
240
242
195
264
210
188
231
262
220
180
196
245
182
165
211
184
229
179
149
234
250
211
218
143
233
179
190
220
191
235
179
216
232
195
250
94
173
170
233
239
150
222
224
192
243
209
199
136
190
184
222
162
233
155
193
155
183
195
189
181
175
189
204
224
170
173
196
152
216
165
219
257
279
212
138
226
212
220
163
229
182
272
165
252
181
230
186
154
230
206
195
122
187
173
246
246
189
155
201
204
245
206
173
150
179
230
176
180
160
141
155
189
206
212
202
214
233
141
235
234
177
180
228
173
198
214
234
189
175
221
216
169
227
196
220
204
285
225
207
179
251
178
190
212
151
177
224
253
249
192
125
207
194
171
201
109
194
159
221
242
159
163
155
224
211
186
249
236
195
212
202
223
124
227
189
161
254
191
195
167
182
231
138
121
217
201
238
177
180
235
197
205
195
241
230
184
273
182
202
209
172
227
254
238
219
244
265
224
197
215
168
151
272
215
232
173
193
166
185
234
236
265
201
208
173
188
235
160
200
183
237
258
160
230
218
211
226
208
199
202
139
155
179
162
244
216
214
148
160
202
148
182
227
230
157
208
157
197
215
212
209
177
238
208
201
153
224
193
177
210
199
158
180
190
236
122
227
212
172
162
225
225
214
193
188
252
228
178
212
173
222
121
197
218
168
170
240
202
208
210
166
238
206
236
109
179
227
159
213
132
202
196
176
226
142
162
165
179
188
256
167
209
163
215
224
213
262
219
207
251
240
231
222
257
250
148
194
276
200
207
202
205
242
209
155
179
179
175
170
209
179
187
145
170
223
228
188
234
212
214
138
221
218
223
206
222
215
194
180
173
160
254
175
179
203
229
208
222
170
186
164
203
182
124
175
184
256
255
206
206
222
190
214
219
220
180
162
238
260
203
188
179
177
143
178
215
232
198
212
261
215
265
194
188
239
189
228
292
215
161
193
210
181
142
191
233
242
166
157
198
211
239
194
188
174
195
217
215
216
232
163
209
230
207
169
147
231
223
235
207
216
187
249
196
150
166
263
245
173
138
180
224
205
167
196
134
246
192
149
168
200
208
198
146
178
233
167
206
179
143
170
217
210
182
208
229
212
143
150
246
218
184
205
247
199
195
202
240
236
181
226
248
179
179
214
168
213
237
245
239
171
223
187
138
179
171
185
226
216
226
257
252
210
210
163
185
162
219
164
204
194
202
190
241
205
259
141
125
251
264
168
226
222
267
243
176
263
218
164
203
177
193
225
220
208
219
205
128
188
247
170
141
162
213
217
170
244
197
223
240
235
205
152
224
185
225
259
222
198
217
154
173
212
167
197
176
249
187
225
199
166
174
158
205
189
235
174
209
181
152
116
206
216
238
197
232
209
223
155
183
248
154
151
216
220
216
209
230
219
182
205
215
170
215
246
188
168
239
157
232
182
264
162
178
155
179
209
182
231
176
213
156
166
163
149
212
244
212
127
191
202
230
163
252
202
254
198
184
215
183
169
235
194
224
180
178
194
181
194
172
181
214
254
236
200
178
191
199
237
215
213
246
209
175
192
208
199
196
177
218
237
150
220
222
232
222
172
188
158
185
245
207
153
260
237
226
148
182
275
253
219
223
191
126
208
171
228
141
158
248
206
207
214
206
214
213
137
184
213
117
204
204
158
157
192
185
187
207
196
206
200
190
278
199
185
208
209
202
208
264
187
212
211
124
122
189
216
193
200
164
217
213
166
178
223
212
153
180
182
180
213
234
213
199
155
176
240
203
174
182
141
212
218
94
163
221
216
155
185
213
188
262
191
181
133
210
222
286
240
192
172
235
179
201
184
217
239
231
253
243
142
199
167
188
229
272
91
195
211
206
177
140
206
200
150
203
181
122
222
209
241
282
193
251
160
217
158
194
192
185
262
194
244
256
232
185
212
216
210
236
259
207
138
186
226
197
237
202
258
122
215
220
186
189
188
181
134
166
125
173
190
214
171
208
250
177
208
212
199
214
159
185
231
182
269
146
213
202
165
214
253
155
208
189
221
224
140
136
240
174
261
117
156
217
259
210
184
198
219
141
167
255
183
169
222
252
266
208
127
180
187
199
235
182
225
223
253
229
207
173
210
241
211
211
183
164
153
208
155
237
195
195
222
162
179
184
239
163
194
224
168
189
265
206
210
229
217
220
238
182
248
176
248
185
252
180
255
189
167
153
241
144
218
241
184
230
161
201
180
213
181
142
226
217
153
162
198
220
151
229
181
110
154
170
203
260
189
221
196
137
170
235
220
197
204
218
251
216
219
173
186
222
232
265
204
208
186
195
227
193
285
209
206
179
164
165
261
169
169
225
174
157
187
209
199
201
216
160
237
190
229
159
165
239
165
227
173
216
198
243
194
158
199
237
135
138
190
214
196
180
278
235
203
266
219
201
224
256
195
187
234
235
212
202
117
223
268
196
202
174
236
193
127
203
238
246
146
166
223
210
278
220
182
208
202
162
206
169
212
238
180
198
198
179
213
188
203
199
226
217
248
207
238
264
189
202
213
205
215
241
133
197
208
145
229
271
170
164
196
190
186
212
225
234
233
267
248
194
186
193
166
151
212
166
172
228
210
268
206
197
129
162
225
271
217
176
175
129
218
197
183
175
188
231
187
137
194
203
259
207
184
161
214
190
153
237
186
172
211
262
193
278
170
212
224
120
156
211
261
192
155
214
237
231
210
133
153
177
231
202
234
223
239
128
254
216
194
172
212
195
235
211
251
200
264
229
221
243
182
193
138
185
198
174
209
209
201
195
231
196
139
178
243
225
198
276
231
221
206
186
224
180
211
189
216
182
204
227
204
148
195
183
204
164
193
177
277
179
197
172
111
196
224
166
226
168
235
215
148
205
154
211
228
205
253
190
206
142
166
188
210
211
197
241
249
142
181
206
159
171
233
185
190
240
227
183
182
160
225
181
218
211
210
248
215
206
246
222
156
239
177
136
206
226
185
204
240
182
190
214
205
178
216
236
266
171
238
199
226
167
209
174
165
215
195
226
214
213
213
201
200
224
172
193
145
224
155
175
265
156
173
192
157
147
197
229
208
185
195
193
223
229
207
131
155
196
244
217
115
234
173
231
210
232
200
220
195
218
197
195
219
213
165
239
214
123
202
204
225
186
194
228
202
224
158
170
197
216
181
169
200
267
222
142
227
248
156
189
212
260
207
137
183
200
166
172
205
242
157
198
190
180
198
258
194
227
216
191
165
166
268
116
173
232
233
225
193
227
248
145
190
270
212
140
186
229
186
193
187
169
232
151
193
160
128
214
194
236
158
177
177
227
207
265
217
241
198
160
197
236
165
197
224
191
210
236
180
210
199
228
217
171
202
249
255
246
171
145
162
211
204
226
82
237
216
194
138
156
166
167
180
133
174
222
251
248
194
164
243
189
150
185
235
265
206
200
189
185
191
97
205
181
205
222
197
227
211
141
252
179
181
202
167
144
187
190
191
168
170
199
230
186
162
145
166
227
200
130
164
246
200
235
225
239
175
235
136
224
135
244
205
196
201
148
229
238
208
183
181
243
151
239
201
173
152
220
205
226
193
209
234
133
217
191
243
171
180
239
166
248
253
136
208
215
157
210
206
196
230
168
218
212
237
175
205
181
204
209
221
200
121
191
213
252
244
209
204
179
143
167
147
254
207
204
178
147
287
197
194
196
225
177
213
211
192
127
227
265
178
236
206
207
174
264
264
128
260
255
226
167
169
223
203
220
255
177
187
193
198
240
144
178
206
237
189
211
161
214
198
177
221
192
203
205
182
172
216
194
176
269
182
216
162
188
254
143
222
254
221
188
190
202
249
203
186
186
243
170
210
193
224
180
162
215
195
193
204
205
221
204
229
237
158
200
183
269
175
160
235
213
217
181
192
257
249
268
227
125
237
159
196
235
170
202
135
171
211
109
141
187
181
199
190
196
243
160
225
190
195
219
157
138
189
271
156
135
210
225
245
183
167
178
218
176
207
205
191
243
208
235
263
233
189
178
216
222
242
176
230
204
178
171
227
221
120
194
187
184
193
191
140
189
169
198
149
180
216
198
229
147
113
147
213
232
202
137
219
200
245
138
169
232
237
177
171
248
229
218
188
242
187
166
273
246
178
187
238
188
217
258
213
201
161
161
227
211
215
179
262
191
221
191
143
189
200
236
245
234
269
207
169
140
241
197
236
176
220
205
159
149
232
148
153
223
208
184
230
204
184
205
178
171
218
249
202
220
186
221
200
240
211
190
209
197
188
194
208
197
173
189
150
175
207
192
180
154
205
172
212
191
204
214
233
193
173
200
161
259
228
219
205
150
227
197
215
203
238
200
196
270
231
206
236
222
177
191
143
188
187
80
186
215
164
210
145
203
219
233
191
218
204
229
179
281
157
250
225
211
125
181
158
176
180
218
224
244
195
213
168
179
225
191
211
194
181
211
254
255
207
142
192
212
241
202
236
197
144
253
178
181
211
193
192
199
235
181
225
173
230
132
214
200
109
166
221
172
245
151
149
247
234
281
157
223
126
186
220
181
192
225
168
180
215
200
216
214
207
170
190
121
258
185
248
201
211
166
242
176
180
214
198
199
166
235
186
228
196
196
254
187
206
209
196
205
210
210
172
193
208
218
180
246
243
245
217
249
189
227
219
201
189
163
207
205
185
191
217
233
183
236
201
169
135
167
172
211
246
171
166
248
228
220
221
280
187
230
215
237
144
227
181
165
180
189
199
194
196
208
195
224
171
195
260
207
205
218
231
217
226
124
171
193
221
195
219
205
245
217
235
266
131
145
162
200
235
183
211
236
233
194
205
171
206
223
153
229
195
132
215
182
158
285
169
220
118
153
273
189
178
220
190
233
218
118
198
207
218
202
234
178
163
237
212
217
211
131
221
177
215
211
154
224
178
167
207
183
216
243
178
248
242
219
190
242
242
136
141
149
242
189
214
213
242
239
227
195
216
287
186
228
223
210
154
202
215
203
195
236
182
244
192
222
226
235
141
236
164
185
201
203
222
227
225
228
232
248
257
210
206
230
238
158
210
191
164
242
188
222
202
216
208
150
199
198
253
195
165
185
238
201
243
197
198
231
186
212
219
238
230
243
226
196
188
210
158
221
113
163
206
203
269
193
165
236
211
208
171
235
177
209
232
248
211
183
200
217
274
216
172
209
203
249
201
186
191
155
196
164
207
208
236
171
215
227
217
201
177
197
181
223
185
182
175
198
232
210
191
177
214
206
216
206
216
176
263
189
161
256
190
166
200
215
186
200
207
182
158
173
217
224
263
86
131
124
194
217
236
217
166
195
128
175
121
225
204
219
210
227
199
211
152
211
153
236
166
204
211
183
114
181
211
211
190
188
178
230
169
210
216
213
182
265
198
234
159
199
231
180
228
227
245
208
214
240
211
152
161
262
205
253
187
218
196
237
162
178
264
193
245
240
209
194
254
232
237
157
132
113
186
177
216
183
219
251
166
180
195
231
173
247
175
220
225
224
177
231
226
209
170
239
158
121
190
238
219
209
200
242
261
170
164
191
241
181
150
258
178
244
200
213
169
152
174
243
208
145
177
227
246
185
228
233
209
224
171
187
119
188
240
243
236
208
186
236
231
159
199
231
227
191
116
102
175
195
214
223
236
226
204
203
204
192
266
228
169
168
226
179
169
186
118
198
179
189
230
214
198
209
141
217
132
146
253
181
197
182
201
225
205
215
186
202
239
210
246
222
191
233
198
179
214
168
178
242
220
187
186
142
138
264
153
197
192
124
194
229
183
217
166
142
172
198
172
225
225
210
231
207
244
167
247
177
205
205
156
141
151
169
183
193
283
156
188
218
169
188
215
241
214
226
198
221
134
240
183
271
220
238
207
190
214
169
204
205
229
164
193
190
203
169
229
242
239
208
231
218
226
164
186
201
194
134
196
198
218
189
211
203
180
198
193
173
226
192
214
219
210
219
216
195
140
168
211
203
203
236
197
262
173
185
259
192
275
204
128
197
141
231
223
186
214
243
181
201
217
176
212
135
189
226
268
229
159
231
237
204
238
177
271
210
209
225
226
203
177
135
223
218
164
183
231
212
193
181
202
200
223
191
254
219
180
194
230
215
201
234
216
180
162
182
201
206
187
227
191
259
240
220
124
177
203
246
203
271
217
282
188
194
145
138
162
227
250
154
173
217
186
127
185
239
209
265
251
248
174
168
201
188
224
163
164
171
245
205
236
212
194
140
154
174
211
265
179
166
200
200
261
163
91
220
225
204
226
187
189
228
186
180
125
245
149
120
223
219
214
191
192
240
187
248
162
200
232
233
204
240
167
204
210
255
209
177
195
209
207
228
219
224
183
126
269
231
145
159
202
179
189
139
231
243
203
196
218
168
201
195
219
257
183
224
159
163
187
194
250
183
160
192
206
163
216
236
211
223
198
197
248
194
201
224
200
281
210
204
223
219
209
235
223
196
215
194
233
129
271
187
193
197
185
211
219
186
181
191
178
192
180
113
173
178
231
165
153
182
182
210
244
213
161
173
132
224
180
166
192
211
164
177
218
136
201
225
156
200
180
240
160
181
210
273
164
207
221
192
182
194
217
249
149
249
171
250
233
235
153
177
178
234
153
224
194
159
164
204
168
175
169
273
221
196
235
190
183
209
174
250
162
219
234
177
229
166
250
217
157
232
243
206
237
187
115
150
170
209
251
169
224
220
170
202
260
257
154
203
193
186
221
270
263
222
189
276
239
206
223
252
197
224
146
199
149
208
195
156
178
255
235
245
156
213
178
165
224
191
220
151
196
173
215
171
157
199
211
157
221
192
200
239
184
198
198
237
236
147
204
200
160
218
181
231
167
173
177
159
191
224
203
142
214
120
170
178
209
237
201
141
192
187
250
212
192
194
236
227
179
206
147
142
251
264
228
212
195
247
194
223
167
196
184
189
172
176
214
159
194
220
198
206
199
128
186
187
259
226
191
207
156
227
200
175
191
152
188
288
221
194
282
188
165
216
232
217
163
203
205
200
181
197
210
244
226
142
185
258
202
164
185
226
214
211
183
240
213
252
204
173
164
161
159
214
163
220
179
254
170
252
281
207
203
198
233
234
213
226
231
211
153
132
214
160
167
168
218
193
271
113
175
205
151
222
214
208
233
250
199
197
212
220
192
159
239
236
282
198
212
177
165
237
213
213
209
213
210
220
216
206
187
226
259
127
122
181
158
201
196
233
205
189
143
205
214
218
210
182
209
220
132
254
187
151
260
212
205
183
176
213
190
167
198
233
256
219
249
175
224
228
227
178
119
259
203
154
189
187
218
214
187
185
244
204
254
179
254
190
179
223
167
195
202
216
209
199
193
205
193
191
201
200
174
177
254
166
127
177
160
171
213
207
218
212
128
184
142
192
148
160
168
233
161
207
207
204
152
221
219
149
190
195
206
188
231
151
210
237
188
226
193
182
228
182
184
244
222
180
224
169
225
189
174
144
199
149
151
198
213
177
172
150
206
178
238
198
145
158
238
179
196
152
113
165
172
236
217
223
223
151
203
194
208
219
208
203
168
180
179
207
200
177
229
230
221
229
161
202
187
211
204
201
165
208
141
131
237
261
246
199
200
246
162
198
211
128
190
236
248
179
188
224
196
243
208
156
181
228
165
143
181
163
225
178
250
180
114
187
217
227
188
147
265
203
176
174
228
197
190
198
263
263
204
250
215
194
174
163
235
110
266
187
185
175
165
227
174
191
227
160
203
191
224
172
149
182
177
130
232
143
177
202
185
230
189
154
224
264
204
227
190
148
165
242
253
262
190
144
121
211
211
232
232
193
236
175
231
200
165
214
176
237
168
203
188
189
278
215
185
220
184
165
206
158
192
181
213
217
166
221
207
165
196
202
247
177
257
201
218
161
253
230
203
147
228
178
176
213
247
230
214
149
161
149
166
251
194
142
246
193
242
205
202
214
187
216
199
188
165
223
205
173
213
227
189
236
230
189
174
204
235
205
229
210
173
177
129
190
195
145
206
226
193
213
221
176
269
215
231
167
219
190
263
190
183
205
174
213
226
191
211
195
231
183
214
180
236
244
190
267
218
172
184
230
231
178
224
196
238
161
215
195
194
229
208
208
210
217
205
192
211
176
189
203
155
166
183
159
219
186
246
193
134
181
247
266
213
165
221
245
145
201
266
223
132
191
181
188
142
229
214
245
183
174
229
192
214
251
242
175
234
185
185
220
201
168
273
195
151
221
177
191
158
229
220
179
215
212
180
201
217
210
225
161
235
179
230
246
197
220
101
172
222
198
303
215
239
139
236
251
213
226
228
224
189
218
247
205
194
223
193
182
200
168
169
203
246
141
130
253
158
199
223
192
217
240
185
247
223
225
193
149
191
168
210
243
180
194
221
239
206
223
213
144
201
240
186
199
168
241
265
238
211
155
210
187
205
180
210
201
254
146
180
204
171
204
197
247
224
198
190
178
183
210
195
175
175
185
189
228
106
199
234
207
264
253
178
217
193
184
167
198
213
249
206
207
195
210
187
211
226
232
136
106
231
224
171
249
197
223
175
228
180
187
206
207
203
205
186
199
221
237
179
245
160
188
212
209
197
166
200
197
237
208
223
217
234
188
207
228
167
164
140
197
180
266
196
154
212
226
209
201
232
215
157
170
216
160
222
207
203
218
227
205
132
247
213
177
131
218
205
191
216
181
195
200
230
231
184
213
270
210
196
227
186
153
244
189
204
202
238
217
134
181
237
185
161
162
164
187
168
178
216
213
263
209
227
154
210
246
193
235
189
115
166
233
236
127
260
207
198
192
238
224
231
237
175
246
180
188
188
192
190
180
142
201
243
172
191
279
259
230
186
165
178
203
201
266
191
252
189
220
234
176
160
203
230
186
180
215
132
210
206
219
176
222
241
243
229
209
210
162
155
193
221
166
240
150
200
213
155
178
228
200
171
180
235
247
163
214
216
186
229
220
183
135
271
181
248
259
212
153
204
155
205
170
190
192
206
201
209
202
201
212
220
227
219
226
202
205
216
211
175
201
215
182
208
199
224
190
277
179
228
203
207
217
192
214
205
195
182
169
112
194
223
191
179
141
181
186
173
197
191
234
205
251
160
231
263
193
168
166
189
166
163
163
204
170
201
195
196
227
153
220
178
229
164
195
133
218
181
197
203
174
223
220
200
171
183
262
224
217
194
139
218
231
228
198
230
242
208
163
233
201
262
206
182
186
282
238
204
203
180
176
217
182
192
176
235
151
201
150
268
227
196
196
191
176
160
206
156
200
216
220
237
208
164
188
163
194
233
204
219
202
202
161
189
171
142
151
198
225
158
161
263
234
172
140
180
183
225
215
193
204
259
192
164
189
253
259
221
204
200
232
219
185
213
282
233
225
204
114
223
215
171
158
171
264
205
217
178
240
182
218
262
224
230
183
251
169
180
212
212
171
218
245
110
163
196
260
153
162
153
248
240
149
122
223
205
190
181
196
203
228
172
214
222
170
163
220
224
164
213
187
182
217
197
228
203
133
205
195
260
247
191
164
206
182
216
239
201
233
212
225
252
190
237
155
197
162
197
280
178
211
184
247
131
251
181
181
177
127
188
200
234
208
221
248
193
259
270
177
183
154
239
153
230
194
172
148
284
196
224
188
241
188
91
167
244
220
195
180
168
201
231
137
220
182
246
199
208
153
166
148
195
201
240
160
214
181
220
153
228
176
201
232
237
194
137
203
163
275
223
260
246
145
227
200
232
172
208
204
236
180
252
237
271
229
198
183
240
195
153
205
244
210
224
255
162
169
232
211
214
203
211
199
222
199
205
161
174
230
145
202
153
194
189
156
261
229
137
211
193
184
217
162
251
219
205
188
213
212
238
222
220
211
206
216
228
156
198
230
213
169
247
246
219
203
186
230
240
130
205
228
175
192
118
216
192
171
150
217
139
251
235
218
168
188
218
191
226
179
251
248
269
171
180
168
228
145
218
196
165
145
114
207
193
225
241
190
197
156
206
180
164
216
257
187
215
164
177
189
200
256
146
180
181
160
156
199
143
194
221
199
212
236
218
153
223
245
187
193
212
220
196
274
224
160
243
205
235
209
182
165
236
183
228
250
217
153
136
261
215
233
223
217
147
270
166
199
191
188
250
223
197
205
168
225
186
213
217
184
167
220
218
215
238
242
209
154
206
163
189
244
281
177
172
227
207
234
235
287
192
185
196
198
129
150
198
252
101
148
145
188
202
166
163
251
206
194
186
224
178
203
190
254
205
263
136
209
180
199
196
159
195
159
164
250
211
198
162
188
146
195
180
224
231
143
177
256
202
160
187
175
213
220
192
254
216
203
198
149
205
210
211
142
277
204
168
241
204
233
193
183
216
141
204
136
187
238
165
208
164
208
157
176
216
200
219
212
187
196
161
295
224
228
222
222
168
256
136
182
237
211
231
149
195
209
162
168
205
181
133
219
223
255
200
188
215
177
194
181
194
227
220
174
218
182
212
196
216
147
267
220
209
229
162
227
211
181
201
189
198
206
197
217
208
210
150
196
197
221
179
219
195
202
240
168
180
183
176
246
119
211
246
200
253
234
239
179
242
207
177
238
195
240
221
217
213
225
241
189
242
192
237
193
143
225
174
176
203
230
238
226
214
226
239
197
263
194
135
215
261
210
148
252
194
236
254
200
181
176
145
198
202
205
209
231
232
251
185
246
230
145
152
210
202
183
251
215
219
200
223
144
266
226
216
256
182
207
163
248
195
204
209
197
199
205
223
229
259
224
214
204
178
209
169
289
127
193
214
207
180
216
216
175
252
148
233
197
185
90
169
136
225
218
170
164
205
187
230
201
207
181
234
232
138
231
210
147
213
145
187
241
184
221
217
172
98
231
156
264
213
219
199
233
192
208
221
186
215
204
195
224
124
243
163
197
220
177
229
227
188
172
174
249
166
135
152
204
194
122
183
230
186
140
202
231
109
189
187
142
172
186
228
167
275
203
248
232
242
157
212
218
191
200
187
152
233
222
164
178
194
230
200
241
179
251
153
180
157
284
192
221
253
215
210
224
272
263
199
245
213
189
205
153
227
217
247
215
184
194
181
161
145
205
175
204
221
238
192
233
170
209
243
192
264
236
187
205
180
133
230
194
214
177
259
162
238
242
138
251
175
199
227
187
148
200
183
210
208
202
192
220
229
272
271
232
204
175
221
265
221
177
180
198
227
193
166
212
166
220
179
203
118
217
174
246
211
215
242
207
168
243
247
176
156
158
254
173
203
173
248
212
273
182
225
147
171
188
190
164
185
226
208
177
121
184
197
159
181
203
218
189
226
222
174
182
184
164
163
246
232
188
222
223
216
188
134
225
220
207
159
176
187
175
150
136
141
208
219
181
197
185
230
201
214
167
143
195
171
210
203
128
204
166
243
207
174
139
182
206
193
263
229
192
197
137
247
247
220
151
225
246
249
134
191
224
184
205
249
193
208
252
213
214
212
191
191
171
192
156
172
188
208
204
224
140
160
155
196
250
205
253
208
215
204
173
240
186
248
198
162
196
214
142
201
231
149
216
171
211
216
236
192
184
187
211
189
213
202
168
186
186
229
182
292
217
142
218
196
164
200
231
210
231
223
208
246
179
203
150
175
216
240
190
194
211
165
191
181
127
200
162
196
181
197
237
184
202
200
93
130
166
173
155
203
170
285
188
183
223
195
216
210
186
178
188
168
237
218
255
207
216
205
166
220
263
178
196
154
194
181
159
247
162
209
193
178
195
250
205
236
219
184
268
188
174
199
160
269
192
188
174
167
242
128
240
187
229
201
196
207
216
292
232
176
183
247
198
172
198
202
188
235
213
216
236
160
175
170
171
210
186
256
180
232
208
208
182
226
197
166
207
147
193
254
200
146
147
174
228
228
216
168
145
210
168
154
158
168
234
252
218
174
180
156
243
187
174
149
125
170
253
213
243
196
184
213
224
189
225
210
152
240
177
217
205
209
196
144
192
219
247
245
97
171
170
176
183
199
187
229
232
240
199
189
231
157
206
160
194
196
159
226
195
255
177
229
222
239
261
197
177
229
182
207
226
225
237
123
180
229
212
213
190
200
168
210
233
127
155
250
243
176
146
235
235
255
150
190
260
130
213
149
217
215
210
162
212
203
217
219
162
224
249
250
190
229
258
242
188
252
168
171
189
242
168
184
224
240
203
165
181
256
180
197
162
202
211
190
212
230
179
240
234
254
178
181
175
161
123
183
145
251
221
209
196
226
228
211
166
185
242
225
163
210
215
246
260
168
154
236
263
142
192
178
235
168
228
197
217
202
215
187
197
207
184
227
205
161
226
175
115
157
176
261
119
180
231
221
216
193
194
245
210
171
181
208
185
209
182
225
189
203
173
221
194
258
209
185
217
222
262
224
157
206
183
286
237
167
143
169
120
169
207
244
182
134
162
197
207
237
250
156
248
200
186
190
199
169
139
177
168
234
211
196
220
190
133
188
222
176
172
160
179
134
169
254
196
218
235
163
228
155
139
199
189
162
129
210
254
206
163
235
176
120
141
201
197
173
132
194
227
226
196
213
165
202
172
164
177
214
238
224
238
188
209
266
227
189
258
206
183
148
197
194
207
150
204
224
260
259
224
209
196
204
178
186
132
209
218
161
140
171
178
203
176
278
139
288
157
175
173
194
179
130
231
240
197
199
179
144
164
233
126
173
137
133
185
199
191
125
200
269
199
187
219
188
240
199
202
189
180
194
192
249
235
200
169
180
224
173
199
166
199
210
210
188
178
235
252
194
172
185
203
151
202
255
263
235
167
229
222
224
179
185
190
167
209
162
242
205
219
178
165
173
179
173
156
202
196
152
240
203
225
179
233
213
216
229
225
189
141
169
223
280
228
236
166
197
236
202
179
177
252
184
206
113
243
248
218
239
214
153
176
187
205
210
200
221
117
238
203
233
175
193
201
252
196
147
162
230
167
202
194
231
211
220
117
213
191
174
205
167
189
162
224
281
206
200
181
259
165
185
220
147
204
222
207
203
205
161
128
132
196
249
220
156
211
166
182
182
175
223
203
230
192
178
218
137
221
180
175
275
204
210
179
194
215
210
242
162
194
218
230
214
236
163
224
133
253
193
226
190
242
230
196
210
211
230
197
204
228
239
228
149
174
194
213
247
105
213
162
224
241
209
236
187
153
169
125
204
210
282
184
179
191
165
197
153
171
207
257
207
229
215
172
195
192
164
212
224
194
174
204
189
226
186
203
213
219
193
213
201
237
189
208
213
176
189
176
192
170
167
143
213
136
288
132
221
184
165
163
189
197
182
223
187
239
217
212
218
258
160
225
215
174
178
180
152
175
231
200
213
222
212
200
211
175
214
200
204
195
249
217
170
207
162
145
193
156
197
254
194
255
193
196
145
162
149
176
227
142
174
207
150
175
129
278
190
225
248
116
134
244
264
222
214
196
223
195
193
272
174
191
227
163
175
172
228
187
244
204
212
204
190
182
213
272
219
176
158
170
151
235
278
194
221
209
169
205
216
171
190
199
208
175
226
238
255
236
175
153
202
198
218
207
199
215
201
221
141
225
148
226
242
206
123
235
182
239
218
194
218
221
243
176
164
154
196
238
196
221
132
173
176
186
237
152
266
194
236
167
253
219
273
202
236
162
207
247
193
217
144
123
216
148
218
171
223
215
220
248
162
201
226
165
198
232
129
192
248
173
246
212
207
186
150
174
230
227
230
189
191
162
270
238
223
198
157
190
141
193
188
211
212
117
152
176
253
218
170
212
138
224
148
177
195
210
183
130
197
257
192
223
189
192
192
215
239
177
237
180
234
172
237
148
201
207
155
220
222
200
192
143
189
105
230
240
240
219
274
149
162
173
211
228
187
199
231
106
260
185
199
285
226
126
232
216
184
206
199
188
222
196
225
222
196
168
196
224
147
226
198
194
236
168
178
203
203
194
251
190
241
240
264
223
180
204
118
207
195
142
208
162
178
229
230
209
203
221
177
148
207
206
201
265
221
202
205
175
232
190
223
204
168
196
167
228
185
145
181
184
191
210
228
156
229
232
176
170
165
194
138
197
241
215
195
162
209
177
185
162
283
249
189
259
193
191
132
223
187
133
214
213
161
251
236
177
196
181
213
160
223
225
225
226
162
120
267
170
159
221
226
244
179
210
221
179
202
209
207
148
208
234
273
156
185
208
235
201
201
133
155
245
217
238
179
156
143
189
205
181
251
185
201
190
204
259
179
175
198
149
189
208
180
194
245
239
195
215
266
163
174
190
180
111
159
155
167
210
207
214
124
228
236
142
191
167
199
228
159
205
191
177
206
228
169
207
189
250
221
192
217
230
198
210
239
214
202
200
121
171
113
173
254
221
206
172
237
238
199
212
216
171
201
183
236
217
229
202
218
226
243
227
213
214
156
235
148
192
194
213
248
169
196
216
209
118
227
163
256
163
204
157
231
203
173
217
228
170
176
180
169
148
213
161
243
191
239
165
194
214
187
166
237
177
182
219
164
182
197
202
223
251
235
170
185
118
180
157
231
189
232
206
197
263
251
238
181
235
211
211
189
237
161
218
212
221
244
224
235
242
159
218
225
190
261
163
201
234
220
220
268
174
183
169
138
172
213
210
192
237
225
254
157
233
248
192
191
214
212
259
166
233
174
188
224
249
247
225
172
213
188
222
243
171
172
194
190
127
232
148
260
209
189
150
135
130
245
231
208
189
153
195
212
276
181
257
267
178
206
180
190
209
273
278
235
192
140
209
143
184
161
233
237
228
168
202
182
182
209
235
227
206
171
266
173
201
202
200
223
209
185
159
201
246
142
262
237
221
230
140
216
214
179
167
184
184
188
128
243
185
185
241
199
143
143
179
199
172
236
197
216
225
180
224
165
211
249
188
214
214
229
169
220
152
245
227
249
160
193
206
121
222
256
208
209
128
230
197
160
217
202
197
246
213
168
198
251
186
152
144
216
204
225
163
211
191
228
199
185
198
191
189
169
173
179
183
171
147
224
223
142
161
206
217
230
216
174
215
164
181
150
215
150
172
182
188
244
255
203
183
143
234
219
228
202
167
184
198
195
151
216
207
192
192
169
216
229
236
149
259
219
160
209
235
238
203
160
204
184
247
229
185
144
169
205
223
178
204
230
206
136
150
211
190
193
141
257
235
202
131
202
200
243
211
259
167
212
229
213
202
243
171
238
171
136
188
165
233
226
207
214
164
189
217
197
235
227
214
163
201
204
216
170
259
241
252
205
148
268
194
211
236
158
235
201
212
191
208
209
134
220
163
142
206
241
191
219
195
137
229
159
173
265
157
179
159
200
193
195
173
219
207
155
152
186
248
230
228
217
194
240
201
205
206
238
210
199
257
221
207
172
182
247
215
182
160
254
247
109
181
212
252
168
161
185
234
240
117
225
187
270
234
256
204
138
179
129
217
205
259
199
172
234
198
231
155
136
163
191
187
241
229
228
269
253
231
246
193
190
202
233
170
257
208
273
170
178
176
180
194
177
210
202
204
186
171
221
170
196
132
235
211
156
238
221
204
180
128
195
191
190
206
197
218
201
218
195
221
231
195
213
182
148
183
166
223
207
216
128
234
229
200
231
184
184
222
217
230
198
210
224
183
195
178
166
192
149
248
258
220
210
230
188
197
181
192
207
182
190
228
226
176
176
196
178
197
233
210
249
231
164
210
164
186
244
175
212
247
142
220
214
218
153
203
181
155
223
221
210
144
259
182
252
219
155
226
251
217
173
212
230
194
249
191
158
177
233
200
200
243
242
231
207
161
280
184
162
156
197
203
242
197
279
221
225
202
166
225
150
260
184
246
158
167
181
236
201
247
228
161
159
134
248
243
170
194
169
173
188
196
247
161
143
153
185
247
160
241
205
191
162
259
216
216
203
211
203
191
181
208
245
158
177
243
190
210
162
198
201
221
264
192
187
151
199
105
206
164
162
265
219
211
189
193
172
192
175
134
223
191
180
208
173
224
205
153
189
244
153
209
192
184
192
197
247
145
202
210
191
173
231
249
221
252
173
213
238
133
183
156
229
186
233
201
182
219
154
221
238
191
179
233
184
194
261
239
159
213
127
235
222
191
140
228
217
154
209
227
162
224
180
134
192
162
216
188
181
191
161
203
194
180
213
185
129
255
220
195
223
212
179
171
248
201
175
195
161
145
206
209
154
271
265
209
200
202
241
211
210
164
193
183
167
311
198
227
169
175
248
240
244
206
165
152
181
190
153
202
166
286
237
225
207
207
159
156
147
189
218
228
197
214
181
161
191
231
228
188
247
233
182
200
140
175
243
208
237
237
209
185
210
202
172
201
186
229
159
241
210
235
217
177
182
192
146
236
226
243
182
210
208
203
174
208
190
190
201
207
183
158
175
209
260
177
134
172
175
203
244
208
227
205
168
234
173
246
164
249
200
168
241
225
206
220
211
199
240
181
245
227
197
222
228
216
238
196
239
164
195
235
249
171
177
206
182
217
180
223
194
170
204
206
165
146
202
225
249
186
204
261
172
224
217
198
238
237
220
207
209
177
217
243
240
139
170
179
198
224
223
147
224
253
178
249
166
219
205
197
200
209
191
152
229
225
179
245
244
176
215
220
190
200
245
252
192
213
202
230
178
200
259
178
171
252
175
172
217
242
131
198
211
224
236
257
210
207
203
229
115
234
183
208
217
215
229
149
182
221
174
241
227
167
193
176
197
196
251
267
171
195
253
170
195
251
276
209
239
173
259
206
143
212
200
185
197
183
198
228
244
204
174
236
264
246
233
219
269
198
231
159
168
125
210
158
130
218
170
161
175
173
236
203
220
196
216
157
207
177
226
155
199
261
227
206
207
180
190
237
209
223
216
235
207
273
242
190
193
184
194
258
192
211
214
220
77
248
153
186
171
206
155
142
220
139
234
235
238
200
222
244
97
204
208
242
205
185
143
225
240
216
145
196
151
177
198
178
137
217
270
208
186
206
205
126
194
196
234
194
182
208
237
224
135
216
202
230
192
198
134
203
169
191
202
214
149
199
260
153
176
190
200
207
242
248
192
245
207
254
176
210
169
172
194
212
169
173
189
134
236
234
223
160
208
178
239
176
264
226
200
222
226
207
131
190
159
231
255
194
258
209
179
170
219
249
245
193
228
189
123
170
179
110
224
159
194
223
191
190
221
210
234
241
180
253
268
112
228
172
187
168
195
187
234
231
198
282
182
195
203
189
201
210
177
146
232
221
205
159
181
144
248
237
227
215
161
207
217
213
266
171
262
189
196
160
198
237
268
256
201
243
182
248
166
212
215
171
219
189
223
206
250
243
232
131
192
196
223
157
223
119
226
187
133
194
192
174
184
171
138
174
213
235
171
180
237
268
214
191
252
214
191
168
205
214
236
219
143
278
189
163
182
139
202
218
181
212
226
210
199
192
249
214
113
196
180
138
240
206
179
160
161
143
161
121
197
175
226
145
164
100
166
223
127
213
184
236
158
224
249
200
209
215
200
152
157
211
207
171
237
209
187
240
225
201
241
149
175
156
179
220
201
172
220
218
144
197
300
149
208
221
217
160
206
213
208
116
171
242
182
222
230
149
207
195
242
188
217
244
222
146
215
231
213
192
184
183
236
153
193
176
186
180
203
245
240
182
141
209
135
233
168
168
213
194
238
236
174
219
208
229
197
148
173
220
182
156
210
178
187
182
226
233
180
208
177
218
260
230
165
241
240
210
224
227
161
255
261
165
221
212
196
244
235
282
226
265
198
274
191
173
219
211
129
193
194
268
153
150
162
232
175
198
163
248
207
243
151
169
209
183
187
206
196
214
233
226
211
213
153
274
171
164
154
98
138
231
115
166
156
210
240
221
212
197
121
211
224
156
162
188
224
245
155
279
184
204
181
190
175
196
261
222
169
223
123
204
204
247
177
203
235
207
160
219
203
187
152
167
191
121
156
178
188
226
190
199
175
200
226
239
189
255
208
213
236
164
236
175
199
195
183
230
242
221
233
198
169
246
201
223
169
228
238
199
200
228
238
211
206
167
164
194
248
145
156
168
229
192
206
193
172
210
188
211
224
179
230
145
165
206
247
154
224
214
188
174
232
146
151
210
257
211
261
187
147
195
210
140
196
245
171
192
197
168
193
216
175
188
221
254
219
190
211
206
245
227
221
199
236
167
191
232
194
185
216
232
118
157
184
161
217
204
239
204
255
226
183
204
189
225
178
171
159
157
242
260
191
211
139
199
165
161
194
212
205
212
234
231
184
169
197
221
197
255
202
172
173
278
197
178
177
192
190
223
163
228
188
159
207
186
204
219
199
169
191
186
159
198
180
198
217
193
212
160
243
170
201
220
228
168
164
184
145
191
169
152
216
176
227
162
223
163
235
231
214
166
224
160
200
232
268
200
246
179
194
151
161
187
204
244
222
248
209
172
231
216
208
188
141
170
210
184
224
122
197
218
200
180
180
158
220
206
254
211
194
222
207
150
254
190
194
221
245
225
235
158
200
209
202
201
161
197
303
205
225
201
197
193
220
139
222
168
204
139
154
190
207
240
229
261
135
178
145
184
199
144
228
242
188
111
170
221
194
248
258
181
162
193
264
209
205
182
239
251
169
222
211
196
119
220
138
268
196
177
210
198
212
214
140
181
239
162
203
171
190
278
193
200
206
210
212
196
232
217
227
213
143
272
177
213
226
189
224
252
219
149
179
210
233
227
198
224
143
207
183
190
193
223
153
201
243
165
190
158
170
225
264
170
165
167
157
169
165
211
214
232
211
165
219
229
197
227
201
222
227
175
184
243
113
165
181
221
178
167
193
153
244
199
209
163
175
165
192
201
205
169
243
142
178
160
254
232
189
233
175
188
261
203
225
190
209
172
258
225
140
198
169
220
264
252
171
144
194
214
197
137
218
202
201
205
164
240
198
179
207
173
216
215
173
237
211
193
194
236
186
224
192
136
137
181
210
202
185
216
226
244
142
209
224
182
173
162
198
172
194
149
179
221
229
138
242
153
160
199
217
275
208
242
215
189
200
208
222
206
162
226
205
230
211
230
182
136
223
186
244
163
241
141
216
241
164
255
180
179
224
204
255
239
160
169
262
190
212
202
214
200
151
145
219
235
166
193
122
175
234
145
204
207
235
204
205
174
188
241
213
161
169
231
212
158
182
198
243
259
209
231
148
214
174
205
142
160
223
181
216
126
142
232
168
151
167
185
178
155
189
228
202
208
169
268
237
234
231
180
244
184
182
126
187
201
196
204
234
218
132
142
169
154
263
249
197
189
197
229
177
214
202
225
256
214
236
125
198
179
209
206
264
193
120
176
170
187
214
184
192
181
210
220
229
116
256
255
175
240
246
192
174
195
242
244
118
176
194
185
229
272
248
259
192
201
220
220
202
177
224
192
168
194
190
183
155
126
208
151
193
191
192
208
178
241
200
166
198
173
166
196
214
194
171
191
168
189
180
184
252
232
207
155
200
212
226
263
224
168
202
214
261
236
258
197
177
231
186
205
219
213
250
186
154
192
177
191
275
217
156
156
171
165
214
194
166
227
156
239
174
155
155
261
181
225
145
198
198
150
166
229
178
202
194
208
234
190
227
202
192
157
203
287
214
246
243
217
217
237
146
221
229
179
175
217
194
165
217
188
172
181
122
202
238
171
201
219
191
198
217
237
228
173
242
188
212
199
202
176
224
180
219
205
202
161
172
199
215
178
215
157
150
205
171
202
166
205
217
187
156
262
183
158
251
183
252
254
254
177
215
188
229
192
195
170
239
243
246
223
188
206
178
194
230
186
212
242
159
227
207
239
201
193
216
213
187
203
235
210
173
149
266
165
239
231
217
208
183
172
161
211
163
233
218
169
179
227
196
179
190
172
270
148
211
213
217
240
225
178
230
188
240
186
190
130
199
226
203
246
225
202
224
229
186
179
190
170
132
146
183
239
203
204
221
199
178
177
227
238
190
195
205
228
193
218
190
183
197
144
193
232
140
145
183
216
86
165
264
177
190
123
219
170
209
167
173
193
256
181
195
197
184
199
208
221
242
208
227
230
226
178
188
213
201
209
175
220
229
238
189
243
215
183
196
170
125
102
240
194
150
188
181
231
246
176
208
194
177
166
199
152
221
189
195
277
164
226
187
211
234
192
201
203
192
139
133
162
191
192
162
185
196
172
196
261
226
163
222
217
274
176
231
267
224
183
256
111
213
190
169
241
238
270
195
184
250
239
150
178
183
206
235
194
168
238
177
252
151
164
201
252
150
188
250
202
232
193
184
115
215
178
203
206
160
205
233
203
234
194
179
192
202
241
211
216
199
198
232
206
193
234
152
217
186
203
193
209
216
159
196
206
149
194
216
155
147
217
190
160
207
278
200
202
231
198
202
190
182
195
204
191
193
186
236
223
219
213
215
172
155
217
270
237
255
174
228
154
171
200
169
167
199
209
235
161
175
206
213
205
241
208
171
216
262
202
184
184
195
179
171
188
178
238
213
210
134
215
133
179
175
110
158
248
229
247
184
189
240
167
197
258
207
185
201
204
189
193
235
263
147
205
152
230
154
148
321
190
247
213
203
195
216
229
232
150
116
172
209
115
196
181
167
180
188
169
212
209
187
252
141
216
248
160
169
219
244
119
176
190
197
198
233
216
231
218
178
155
185
128
179
224
196
150
238
205
224
237
240
214
210
245
154
126
144
176
187
152
168
175
143
160
232
205
196
243
191
166
159
185
172
195
160
200
194
167
173
166
166
187
177
173
181
222
164
206
207
201
196
184
153
165
158
216
211
181
180
233
252
253
200
150
219
147
166
266
228
226
211
187
152
238
209
186
182
198
191
196
167
147
206
220
225
148
219
173
212
252
116
190
167
212
202
115
218
188
224
176
176
163
286
212
194
185
208
208
190
269
203
174
160
174
196
202
238
91
160
207
204
200
214
224
230
199
259
160
219
167
200
219
203
131
223
190
212
140
179
247
232
194
185
193
164
162
168
211
212
208
225
222
160
220
181
244
216
217
236
161
175
153
208
216
223
249
209
195
179
170
256
212
181
124
182
188
228
175
232
194
232
172
218
223
183
231
161
214
199
228
173
248
258
203
176
139
212
177
200
140
198
182
194
222
224
178
201
192
191
238
211
215
211
154
215
225
219
242
222
208
189
224
162
190
185
204
169
244
269
227
144
183
191
190
182
213
163
140
190
178
233
202
186
205
219
209
193
224
251
206
176
226
141
200
182
151
213
208
225
159
159
185
167
205
205
195
216
196
171
206
222
245
204
217
244
226
176
246
188
176
213
150
244
193
148
223
177
209
178
197
191
183
210
215
203
218
188
228
194
172
243
193
187
171
213
157
183
213
175
212
223
211
151
235
212
240
272
196
191
181
229
196
184
231
115
216
233
201
230
198
224
224
213
202
221
224
235
178
200
180
214
211
161
251
221
181
260
213
199
190
137
206
192
237
222
206
256
170
201
271
231
180
179
235
202
212
146
191
188
187
215
233
257
202
186
183
189
188
187
214
129
191
171
188
209
168
193
225
165
252
202
147
213
193
163
224
185
162
225
199
206
202
239
203
221
253
276
209
127
196
155
232
205
174
182
238
190
253
216
215
183
210
248
218
177
194
206
211
151
183
183
224
165
240
221
167
202
167
177
189
153
212
237
192
152
232
251
139
235
146
159
219
161
180
207
180
199
207
155
234
217
218
195
175
224
188
254
196
231
188
211
157
235
169
216
205
160
232
153
195
127
161
181
170
169
207
153
200
168
185
253
185
183
211
217
182
271
142
195
164
155
189
205
216
226
189
219
197
234
227
202
199
168
179
188
224
149
150
244
223
181
248
221
124
198
220
208
178
189
205
182
250
197
157
230
199
177
153
226
207
195
202
128
208
201
155
174
212
193
255
226
183
218
214
263
209
139
147
206
231
201
240
224
199
136
178
185
196
197
171
163
196
187
208
195
183
202
187
185
206
243
200
231
170
275
207
221
167
132
167
208
147
176
237
246
181
181
148
212
230
153
196
239
228
182
201
246
110
246
199
215
188
196
130
214
103
186
217
143
205
198
244
210
201
173
124
251
208
226
199
192
235
231
168
199
176
239
129
209
160
208
190
180
175
206
212
163
171
191
187
210
158
242
217
230
201
231
214
178
249
148
187
189
222
220
179
180
234
249
207
180
180
268
219
233
180
226
194
229
212
186
241
156
237
234
184
257
185
191
167
232
180
151
219
223
250
210
178
220
235
172
214
155
175
159
293
206
197
210
133
209
233
239
198
224
229
197
171
211
242
212
134
158
217
230
200
182
192
190
199
228
281
206
201
283
210
178
190
225
203
234
143
217
294
193
218
218
207
194
157
218
177
196
219
206
234
220
184
192
183
208
185
117
227
154
236
212
163
217
196
248
172
126
214
194
252
219
190
161
217
255
185
183
195
248
131
195
187
200
196
181
195
152
274
146
214
193
215
186
200
192
182
165
172
193
210
234
200
206
196
240
250
191
218
205
149
205
166
198
217
187
221
279
214
302
220
170
177
223
234
187
236
190
210
203
209
207
216
217
194
152
201
181
238
190
205
250
268
183
232
220
211
185
194
190
232
161
244
216
196
134
175
226
173
175
238
193
159
167
191
144
208
207
245
191
198
190
215
193
248
180
220
156
113
228
201
189
225
238
182
209
183
218
159
172
190
191
239
143
215
243
203
252
186
189
202
218
220
235
215
268
207
167
225
234
151
144
187
175
165
221
180
210
185
216
201
205
197
233
174
229
192
172
218
188
177
202
166
208
237
214
165
147
183
180
178
136
229
161
193
194
205
127
205
262
211
209
260
253
130
252
200
236
194
212
161
215
211
183
248
216
175
188
122
156
249
266
190
160
231
214
196
193
216
235
198
223
191
171
266
245
231
172
175
200
275
216
137
212
227
157
202
207
165
190
156
213
246
148
185
201
186
225
167
189
172
243
160
248
195
217
262
189
213
210
242
194
194
203
160
207
165
162
152
191
161
220
220
207
154
221
188
241
215
181
215
207
184
154
196
154
183
200
217
195
265
182
156
238
175
143
240
193
195
219
194
219
229
227
241
230
208
250
141
173
183
235
196
223
197
233
268
170
198
180
206
250
225
204
195
189
202
251
231
238
241
189
149
267
181
235
200
226
215
228
178
203
166
232
233
155
167
262
251
224
177
172
130
195
225
144
158
144
217
258
221
171
247
177
175
226
211
180
198
188
222
257
194
224
163
167
149
287
145
240
220
186
237
112
212
169
155
216
206
172
260
169
203
142
246
136
191
175
182
184
232
217
188
197
250
192
174
193
228
279
195
226
252
213
215
176
206
149
158
253
216
182
210
225
219
256
156
150
214
183
218
212
187
204
205
190
199
190
201
166
207
125
215
217
245
167
242
227
186
224
161
196
241
250
187
139
194
169
183
209
166
190
209
206
140
214
241
183
191
271
212
255
181
234
175
145
205
201
209
146
239
153
177
154
231
135
199
216
188
285
215
230
263
240
145
214
181
181
206
191
186
177
187
155
175
258
195
170
203
176
253
181
176
232
191
239
168
194
239
188
187
216
192
240
210
166
175
117
186
246
209
213
186
142
150
162
199
198
260
188
161
219
236
185
177
266
213
236
128
242
175
194
182
242
216
230
201
191
196
198
186
242
201
178
227
190
183
161
172
220
254
243
209
245
219
189
179
188
202
226
209
134
213
165
162
167
182
215
231
228
225
149
192
225
254
164
247
140
181
207
189
214
198
204
224
213
175
170
217
218
213
127
165
211
223
225
209
225
224
171
219
182
172
237
210
137
143
265
229
164
214
176
197
183
205
187
227
181
178
171
229
141
166
164
209
185
215
154
207
196
202
161
268
187
192
228
202
147
230
187
217
172
147
248
206
285
153
223
152
237
174
158
222
200
232
204
233
242
228
232
222
147
249
189
239
143
200
177
237
243
189
233
155
198
263
202
217
201
168
203
169
245
202
200
226
166
170
134
153
233
177
209
224
240
204
227
226
164
190
212
244
157
220
184
162
181
208
146
167
188
212
257
202
122
188
133
218
155
208
164
239
172
186
261
196
234
226
221
185
143
233
226
234
132
179
218
180
246
250
190
208
163
173
247
141
184
157
198
260
169
127
197
175
226
240
135
200
255
151
191
181
216
239
137
180
197
233
156
226
250
212
170
158
104
194
201
186
162
200
236
192
190
160
162
247
185
153
193
203
233
142
221
172
192
245
196
168
193
200
272
212
160
189
169
152
175
189
251
187
220
158
194
187
219
236
147
191
174
220
180
202
174
204
259
165
197
187
196
235
208
223
212
194
205
223
116
205
212
184
271
212
157
243
248
222
264
160
204
197
242
201
214
211
184
166
162
186
247
241
230
156
201
256
212
172
169
215
158
188
255
175
181
226
229
212
196
223
200
125
173
169
269
164
105
211
147
212
281
213
171
250
273
217
223
218
234
241
184
210
206
157
217
189
187
182
205
170
224
146
203
240
239
152
241
168
150
245
173
201
242
213
201
167
255
208
121
237
163
206
190
174
159
229
173
201
228
239
241
248
223
235
212
183
234
184
155
216
162
148
262
234
238
134
235
260
241
197
229
191
199
195
224
240
158
186
235
204
185
201
202
230
130
216
149
211
200
209
270
228
249
236
238
185
163
208
233
188
179
145
249
209
188
191
183
234
213
240
174
177
206
184
191
184
140
212
201
192
193
186
200
181
199
186
162
175
194
149
220
212
230
199
186
236
184
206
156
249
221
168
163
191
262
156
193
188
245
235
195
198
213
119
239
168
237
205
208
234
211
221
239
179
214
146
209
201
269
213
242
222
224
185
171
188
192
217
225
187
227
213
236
232
183
159
206
235
204
271
118
218
243
241
91
218
178
218
195
138
178
158
209
156
216
178
181
219
221
151
168
215
221
226
161
159
165
207
205
190
210
226
198
156
189
204
242
228
160
213
182
189
180
180
220
200
162
184
157
152
228
159
147
196
215
201
194
259
219
230
221
191
235
235
198
214
209
179
209
192
243
207
201
202
198
270
182
211
207
157
168
230
225
207
131
120
220
202
198
231
186
180
157
253
141
171
256
190
194
188
172
145
161
168
196
271
232
162
233
179
167
223
251
225
201
237
192
126
162
173
253
146
173
178
160
188
180
229
172
223
201
209
186
220
241
188
191
217
197
219
244
162
222
173
261
183
194
190
242
151
266
183
221
184
231
208
214
252
192
169
197
193
221
147
299
212
229
224
195
249
147
176
144
160
222
205
163
155
169
198
224
194
251
141
185
161
208
164
207
209
188
170
169
173
199
147
289
227
232
227
210
252
221
202
188
207
156
216
226
224
228
243
233
182
185
155
135
180
220
216
211
208
241
203
179
139
183
247
192
234
242
180
187
243
257
162
203
229
176
174
233
115
219
155
175
186
204
121
221
229
189
198
204
205
247
212
167
202
148
200
227
165
206
230
163
127
178
200
119
206
257
196
246
230
176
255
145
260
196
170
171
214
157
205
271
153
115
194
200
190
226
245
210
217
189
198
245
207
164
219
182
173
151
222
166
231
263
253
128
217
224
177
268
251
215
159
189
177
218
176
232
194
207
224
204
170
178
142
158
229
154
184
226
184
204
224
156
239
235
164
210
196
229
203
169
219
207
177
168
186
214
194
187
229
225
223
231
212
222
228
240
220
174
239
168
207
209
150
242
169
225
192
157
232
158
165
231
128
191
220
146
215
216
194
147
177
166
190
176
165
217
177
169
236
188
211
216
198
177
188
263
195
228
252
245
194
210
117
251
150
253
186
192
179
238
183
139
226
218
198
223
152
223
114
241
289
186
150
187
186
198
140
106
138
200
241
253
197
286
190
117
241
168
158
166
187
229
195
188
220
162
174
173
207
209
215
165
200
200
168
221
175
184
144
202
191
224
220
192
185
231
230
192
164
225
188
239
226
237
257
221
182
204
150
157
217
222
209
207
213
216
185
254
188
232
231
202
212
187
170
205
135
187
242
166
195
215
186
162
223
205
219
213
182
195
110
251
174
237
246
237
186
137
218
235
224
197
189
223
189
234
163
194
150
227
211
219
205
235
213
212
215
175
186
176
212
189
184
197
194
196
203
230
160
247
200
187
198
277
135
171
191
132
215
236
237
181
152
260
268
269
241
213
206
200
247
232
212
165
262
220
185
144
192
153
205
204
206
253
223
142
218
133
245
208
172
235
224
235
228
182
224
180
203
214
177
186
237
238
197
219
215
153
159
208
236
192
236
241
246
232
246
216
174
219
217
164
206
204
206
165
184
167
214
191
240
273
165
188
244
156
179
167
177
84
131
224
191
215
192
200
232
195
234
242
155
201
238
220
236
188
162
205
233
165
229
167
241
191
252
178
244
194
157
247
241
167
164
158
213
242
215
197
225
201
167
185
177
205
159
140
232
181
206
130
202
217
194
236
181
243
262
212
177
184
241
248
162
132
186
184
232
154
160
185
230
165
249
207
216
185
197
199
226
180
203
119
175
228
145
210
248
235
212
237
230
213
255
166
146
191
249
252
212
251
243
189
173
288
167
236
169
199
244
203
141
238
193
165
216
193
154
171
215
209
226
215
257
277
193
176
166
195
237
170
211
188
235
163
198
184
176
135
184
276
198
214
125
217
170
180
207
199
145
216
202
122
203
227
165
198
195
230
172
281
185
198
239
216
267
224
172
219
176
203
173
162
210
201
119
157
204
214
195
196
161
210
137
217
209
196
201
243
199
207
173
182
232
245
123
243
201
224
225
183
259
197
231
226
223
216
172
271
221
158
213
242
158
197
214
262
141
259
213
206
216
205
244
221
180
212
229
168
178
197
213
175
189
182
175
211
156
209
170
261
122
220
228
196
251
191
239
239
238
224
197
166
227
217
215
147
187
194
170
157
227
193
229
213
205
201
245
215
180
193
236
179
264
201
256
109
211
234
193
237
198
202
114
179
212
166
129
248
169
219
213
154
194
199
227
177
231
212
193
201
113
269
140
161
206
222
223
249
222
252
180
177
193
249
225
226
145
233
211
171
177
194
172
213
204
216
181
209
229
211
209
232
251
266
209
156
249
143
264
179
177
236
224
196
175
227
180
210
214
217
159
160
149
186
168
175
199
225
197
249
149
225
247
161
204
182
186
216
172
208
233
126
225
207
192
202
143
283
181
232
165
280
220
228
154
229
175
161
260
204
194
206
214
249
246
171
229
201
234
220
227
196
197
192
167
179
184
170
209
216
221
215
154
270
277
201
223
205
217
184
176
192
187
173
199
213
217
199
185
163
175
185
211
205
201
257
209
176
274
164
192
199
203
172
173
250
191
232
165
207
239
164
257
238
113
222
220
167
198
238
240
186
176
182
200
198
178
241
193
166
206
197
218
137
188
173
243
192
190
227
210
178
201
211
226
245
218
246
152
119
182
216
291
189
217
204
224
167
223
278
133
221
198
106
231
194
141
213
194
156
187
106
173
264
185
209
181
183
187
148
188
151
187
226
235
186
181
180
238
211
218
224
240
220
204
198
155
225
192
221
166
181
231
254
191
154
203
220
162
238
230
213
206
225
206
229
192
179
197
172
156
220
173
163
207
228
232
214
170
197
198
221
212
133
195
208
136
211
154
167
230
182
199
221
199
231
152
175
151
173
240
163
182
196
221
96
218
206
232
215
235
217
212
155
173
246
218
232
190
248
219
175
254
186
205
240
191
238
207
246
158
199
207
234
159
182
230
224
221
200
169
212
231
140
193
168
187
191
212
179
254
214
155
252
210
198
215
211
160
238
230
200
202
221
207
183
217
238
160
233
117
191
177
223
197
242
273
205
188
190
232
235
139
173
178
206
174
192
190
191
214
251
204
221
199
206
242
174
239
228
232
193
186
222
215
214
182
210
183
190
159
137
173
217
203
139
174
197
182
270
174
202
209
188
200
210
259
219
195
277
260
202
262
132
185
270
283
168
263
238
188
128
193
182
170
167
265
194
171
212
164
202
192
269
225
167
195
178
126
135
202
143
199
208
141
271
235
155
220
176
181
264
213
201
260
243
228
121
187
265
206
216
181
191
225
231
190
162
212
236
259
226
218
218
192
158
174
165
241
186
181
230
146
253
233
194
231
215
181
172
240
194
173
212
175
203
227
156
183
227
187
204
213
200
203
166
180
177
233
183
236
230
196
142
188
170
236
240
192
162
207
152
237
158
229
295
187
253
144
245
201
271
271
243
183
220
204
246
231
250
214
146
232
154
230
174
217
145
173
212
202
184
206
199
145
222
186
133
117
208
209
168
211
165
242
190
244
183
215
142
180
158
189
236
219
200
181
182
216
226
182
204
210
203
198
192
232
243
173
209
126
237
176
206
179
199
262
207
200
174
163
212
234
211
226
206
200
212
152
117
245
209
220
230
164
192
196
144
141
198
184
219
185
179
84
216
190
195
220
159
210
190
206
254
204
157
212
177
215
155
167
206
202
179
227
161
139
164
209
161
184
235
175
179
228
170
194
179
227
206
266
227
288
190
213
217
197
162
241
229
205
235
199
212
205
249
239
244
149
152
224
130
215
265
163
148
219
207
169
180
226
260
136
217
162
196
209
187
244
230
168
252
199
194
170
229
176
231
215
157
206
212
201
197
211
155
185
226
242
156
223
223
262
164
213
232
188
189
230
264
141
192
197
239
217
236
208
231
212
210
205
241
217
200
199
177
235
220
253
248
209
220
190
180
294
207
209
235
171
190
135
249
277
190
229
184
183
155
211
209
247
133
239
214
182
179
196
231
239
204
153
195
243
232
172
236
225
184
247
222
158
222
232
270
217
198
185
187
139
137
188
216
203
188
166
193
153
249
197
214
240
177
205
198
231
205
199
203
178
128
189
276
240
243
208
167
194
173
163
185
205
203
250
207
244
235
254
211
168
195
219
222
201
164
172
246
108
240
177
199
229
202
158
154
194
175
164
218
204
175
225
293
249
204
161
208
193
197
220
227
165
188
252
191
254
191
208
222
153
216
246
257
216
200
159
186
240
200
270
201
208
250
167
177
196
225
208
214
244
225
229
111
172
214
127
255
209
164
191
175
167
192
213
240
208
256
199
199
189
182
202
218
209
145
218
278
231
236
195
141
267
126
176
253
189
181
163
226
189
200
209
196
188
182
205
245
153
218
270
226
232
99
213
175
194
162
192
172
195
149
220
176
171
167
185
181
181
210
213
222
237
179
241
118
170
204
174
228
198
209
162
210
232
215
192
160
235
197
193
226
202
234
191
151
140
180
173
215
117
233
253
215
189
162
200
203
243
177
222
214
222
155
183
169
171
193
230
103
188
202
255
148
276
125
207
181
212
218
170
196
261
131
194
240
192
163
196
204
251
222
184
182
181
197
190
187
178
157
268
193
236
160
157
137
171
147
192
224
203
178
166
271
193
198
190
199
149
180
222
196
227
221
178
189
223
266
189
200
182
206
223
165
142
230
152
200
158
210
179
176
166
140
186
197
264
183
179
236
209
215
223
245
246
155
200
206
217
196
225
214
226
214
142
235
134
237
161
270
208
140
210
167
190
192
193
179
243
244
219
181
183
223
180
149
237
223
249
194
221
246
195
270
164
126
138
224
170
219
125
175
199
237
173
115
258
224
196
198
126
243
151
236
208
114
186
170
146
258
243
181
211
126
225
243
174
189
207
167
117
230
202
169
214
211
145
161
214
149
208
142
282
206
236
165
167
206
121
229
211
189
110
219
233
189
199
205
220
228
255
207
155
214
186
238
227
208
260
208
162
244
293
212
166
227
173
234
196
194
202
225
197
241
159
133
121
261
216
209
242
218
134
180
184
167
230
168
173
225
200
182
193
199
247
206
180
181
175
251
177
231
204
210
270
193
193
227
189
184
224
215
191
188
190
247
179
127
169
130
240
166
175
246
179
206
218
196
230
210
153
177
148
95
190
231
121
163
246
198
229
220
216
161
162
231
239
228
177
253
211
201
233
241
255
246
211
222
152
143
205
224
218
232
120
193
185
135
242
234
190
129
214
200
245
189
177
156
178
223
234
249
177
215
181
247
148
162
210
233
192
207
204
103
247
277
218
198
217
183
246
266
142
173
220
230
183
257
192
196
224
193
242
228
174
162
235
189
208
176
214
270
176
202
243
170
254
156
151
252
197
264
160
141
202
276
278
191
163
217
230
157
234
162
228
197
211
179
248
178
180
168
180
246
201
227
127
152
218
210
248
258
214
199
114
194
201
156
199
200
230
206
241
231
273
208
203
203
178
184
256
197
220
172
131
164
201
174
189
229
179
154
181
200
219
206
195
109
125
217
166
183
216
121
194
169
238
202
207
177
243
213
256
193
218
196
250
171
179
208
187
210
178
242
178
180
199
206
201
239
246
233
247
212
153
132
167
253
204
168
235
157
243
199
218
183
265
232
163
203
300
264
219
174
230
211
181
210
196
248
182
273
189
259
195
147
103
267
168
228
236
242
243
185
247
202
177
153
203
164
164
186
144
176
235
164
211
188
196
231
180
216
178
146
211
160
190
246
199
213
213
245
158
205
190
162
198
216
230
250
257
236
176
259
218
245
206
216
183
201
224
193
204
210
192
218
197
169
203
217
194
188
225
235
204
195
177
198
211
159
207
205
183
174
165
210
235
210
223
203
121
152
264
194
189
229
192
150
171
186
144
231
193
189
211
204
222
236
195
210
250
188
193
261
191
211
159
202
252
237
201
199
211
220
229
186
154
185
196
261
184
142
239
208
228
202
208
220
162
223
208
115
217
198
181
183
240
182
200
200
167
205
169
181
198
211
253
174
159
156
296
167
237
216
176
188
211
189
207
168
286
189
228
250
236
206
203
211
245
214
224
262
231
208
219
261
233
218
160
221
129
250
156
206
181
171
247
160
204
143
167
208
221
201
242
169
199
208
222
207
214
235
244
215
198
225
245
251
203
236
233
210
227
190
200
176
247
159
180
181
142
197
224
193
161
210
198
196
225
204
224
139
191
207
187
226
184
204
229
251
222
184
189
165
196
153
200
251
153
177
252
206
219
246
190
140
201
183
178
227
179
201
213
135
197
191
201
154
242
220
160
230
197
221
177
221
194
229
225
199
162
209
204
187
131
141
182
155
169
161
174
205
189
133
172
208
185
178
175
148
193
238
209
193
184
161
187
201
201
201
209
187
206
207
221
266
188
174
233
257
227
248
111
200
255
190
176
197
136
247
167
217
166
252
157
203
179
210
196
219
216
268
236
256
217
216
277
194
171
175
207
239
199
157
138
162
212
233
169
193
224
258
205
231
153
289
240
179
175
238
219
208
222
185
109
132
247
253
150
207
169
216
190
201
171
224
162
208
233
192
198
216
172
233
102
173
171
178
146
217
228
199
204
149
242
163
203
239
199
218
231
225
218
153
247
227
238
175
132
224
229
150
208
193
302
142
149
181
193
146
236
155
164
154
207
251
228
223
130
214
189
220
249
172
197
194
181
222
163
257
184
204
215
203
166
145
153
197
136
207
199
206
172
207
205
198
142
167
215
237
182
215
239
196
138
142
178
180
235
254
194
190
191
177
220
200
233
210
257
198
197
224
203
230
100
226
166
226
188
184
219
125
217
192
168
260
165
256
218
222
246
217
159
198
242
251
190
195
167
239
210
144
186
263
221
175
243
199
260
219
172
178
181
191
184
218
207
188
156
240
168
184
228
216
196
151
213
126
183
153
192
226
194
239
243
250
193
204
158
210
192
249
177
221
223
188
273
246
158
215
203
209
195
237
240
229
183
264
217
174
175
221
143
263
171
135
222
220
201
195
204
219
194
221
201
200
193
156
173
151
99
206
229
191
229
214
205
190
224
178
207
130
205
162
178
191
157
180
222
207
175
176
186
203
176
137
213
284
199
248
232
228
193
278
175
201
236
196
219
155
180
214
181
214
157
148
114
207
195
219
237
166
170
209
202
182
194
186
176
242
195
194
219
189
147
259
229
212
190
259
222
176
206
192
191
146
176
239
173
167
222
123
216
240
165
118
198
144
162
201
154
194
237
175
176
176
199
216
211
165
200
143
240
159
128
244
237
201
220
196
187
198
225
193
157
254
168
222
163
241
232
176
237
182
192
226
218
242
182
165
183
210
127
221
190
196
263
187
179
226
186
163
207
218
217
257
233
178
241
189
217
187
186
173
158
226
226
166
203
230
185
222
255
224
241
261
192
202
181
192
182
191
196
188
220
190
194
260
227
197
205
211
254
218
219
183
170
189
198
197
184
154
202
201
167
214
240
203
168
197
207
148
141
222
179
179
168
222
186
184
184
197
176
245
157
226
281
159
236
231
201
212
191
245
177
199
180
189
239
175
231
184
175
132
238
175
181
142
194
229
227
243
220
224
232
231
185
195
152
235
168
185
195
187
213
229
192
217
187
136
235
247
191
136
180
154
235
226
195
183
156
245
163
246
230
204
175
123
184
208
221
209
241
204
235
219
215
186
197
214
204
207
203
195
204
281
135
181
222
245
143
207
225
243
280
251
166
214
236
216
198
183
113
180
197
229
115
198
232
177
249
164
196
199
200
164
225
259
231
213
216
171
135
178
248
180
150
202
163
228
200
179
177
277
204
221
159
198
202
181
237
202
269
227
206
244
236
195
179
165
199
276
235
207
163
228
228
224
191
151
154
214
144
166
167
263
253
188
179
254
189
199
259
167
224
171
191
181
184
192
213
207
241
242
206
213
199
209
194
144
259
182
188
143
177
225
197
199
214
199
98
205
191
155
211
222
193
155
222
250
185
205
196
239
212
180
192
173
243
237
204
232
166
167
218
224
300
213
233
199
219
195
196
236
216
131
220
210
193
152
196
154
208
240
133
225
176
160
114
207
164
188
244
214
251
205
196
223
195
237
242
233
226
197
227
172
175
291
157
214
127
139
177
198
211
166
223
215
277
228
210
220
180
147
227
164
167
195
246
172
190
186
199
162
244
193
167
196
187
210
214
148
258
245
214
177
207
147
194
154
188
157
226
259
243
206
174
162
202
241
196
246
194
187
222
255
254
195
201
246
176
221
258
187
142
192
181
152
226
139
230
217
242
146
163
169
149
178
261
186
229
179
126
260
191
202
220
174
173
203
202
236
203
199
181
188
210
216
197
187
202
194
214
181
245
201
203
175
189
203
184
203
150
157
239
138
170
224
205
193
225
259
158
188
217
194
169
212
219
230
212
217
191
150
199
207
212
143
194
200
229
202
246
183
219
213
211
183
168
277
217
173
205
203
158
201
252
164
188
150
228
189
203
230
190
265
216
196
192
256
189
252
206
198
222
183
235
241
207
190
91
218
278
169
241
170
144
233
185
212
194
196
248
242
239
194
181
203
194
199
231
214
281
185
246
238
188
219
177
235
210
178
198
186
196
173
186
238
183
146
233
131
157
239
185
238
222
247
148
197
167
155
198
228
221
201
224
137
150
248
209
242
138
182
237
222
159
147
182
181
181
239
186
170
187
195
207
231
178
198
200
225
216
283
217
237
208
186
234
244
160
219
242
191
207
244
293
199
245
208
222
207
246
189
229
211
257
251
229
157
201
265
206
232
203
176
235
134
205
163
202
197
169
157
227
172
165
177
111
199
177
263
214
235
207
127
240
222
205
216
217
234
173
202
224
189
243
198
187
180
236
152
248
187
239
215
177
217
215
107
244
159
159
236
194
229
214
240
193
255
195
220
227
222
172
174
226
213
190
103
211
210
206
177
227
193
195
250
180
178
187
172
204
254
201
222
223
260
202
224
257
257
153
245
240
172
224
261
246
231
169
214
204
236
192
230
189
181
233
191
193
231
191
186
159
257
227
179
258
215
193
152
220
281
197
202
171
239
174
127
146
199
271
202
252
167
192
164
225
238
265
178
159
198
161
166
198
187
217
187
190
183
222
189
177
212
139
214
173
169
214
207
203
194
178
169
185
217
193
244
229
125
208
138
170
175
182
254
188
174
211
204
201
161
255
255
223
196
245
225
171
165
182
211
213
204
202
240
187
152
175
176
221
232
152
219
212
172
237
206
183
271
190
195
198
209
220
229
205
168
180
201
206
199
246
238
154
186
261
185
216
214
166
225
195
244
238
184
198
181
207
202
155
158
158
260
154
181
160
231
178
182
216
175
184
197
166
115
215
158
232
214
280
137
152
165
227
199
182
178
195
142
187
220
228
214
171
281
254
184
248
205
262
206
209
195
274
178
150
171
185
197
227
168
191
245
164
250
196
232
264
170
157
292
274
225
137
189
152
147
198
169
150
189
177
274
190
184
196
183
221
171
153
240
241
172
174
172
231
184
196
194
201
153
192
220
179
200
211
252
151
227
264
183
172
187
156
240
232
203
260
220
161
180
225
150
185
262
181
144
214
110
145
202
220
236
198
159
185
186
205
210
224
186
159
135
140
186
210
237
200
162
163
208
220
128
224
149
216
223
247
261
158
258
175
170
161
210
193
128
235
209
229
232
206
244
177
247
193
120
207
208
248
217
210
185
117
203
150
195
232
280
212
182
136
210
195
201
206
255
174
179
137
252
173
169
196
185
238
232
168
175
179
141
243
211
224
208
188
135
202
226
196
227
198
219
233
172
206
222
225
218
185
150
158
199
246
281
126
254
241
238
167
173
219
183
195
257
208
223
221
183
156
230
190
234
174
160
147
211
245
166
219
187
218
278
198
141
216
192
212
175
133
214
218
182
176
144
211
181
202
192
196
157
180
249
152
168
168
234
254
189
208
228
193
130
245
107
186
205
204
174
240
136
125
229
205
220
196
271
212
232
241
229
222
214
185
209
246
153
186
219
182
239
223
182
167
144
198
212
210
195
169
239
227
226
215
216
225
178
198
184
158
174
147
242
192
205
212
182
228
165
126
169
236
177
243
185
233
256
229
194
272
144
192
182
165
184
169
186
158
246
191
198
200
211
199
250
245
235
205
171
171
225
183
212
230
187
161
177
239
186
195
143
203
225
210
219
214
213
212
118
242
166
225
195
236
215
210
165
212
144
195
206
197
229
210
195
186
196
218
244
195
232
230
215
168
163
170
189
176
169
194
178
197
176
157
184
144
220
159
246
225
234
148
272
224
236
178
184
207
186
171
242
123
202
236
198
191
333
156
273
102
198
217
177
243
225
167
207
165
213
211
168
142
260
228
251
162
266
151
233
140
215
165
158
165
227
206
123
197
181
218
205
113
181
157
208
150
209
248
190
202
277
223
237
211
181
219
150
204
201
178
184
225
176
121
161
247
170
216
203
149
229
141
226
231
234
227
233
213
191
200
205
231
129
211
158
243
190
220
221
188
170
186
249
236
141
174
253
227
179
240
226
148
239
150
219
170
284
219
201
216
191
206
242
167
168
170
221
155
243
138
181
207
183
171
241
217
194
189
226
162
157
201
178
132
199
187
140
188
185
274
234
224
221
215
152
221
201
215
165
215
183
160
253
150
167
193
219
167
183
224
171
197
234
196
162
188
145
233
179
208
209
204
167
147
196
231
232
181
152
148
183
108
211
178
233
234
152
171
179
166
206
220
160
183
220
167
185
192
206
233
168
172
214
213
229
216
186
211
229
162
204
168
202
199
225
189
212
193
194
216
209
196
231
202
183
204
207
190
224
207
253
211
247
240
196
197
182
203
174
141
208
239
227
163
236
256
211
198
183
228
191
226
221
250
191
238
179
241
201
145
196
207
162
196
176
158
228
231
105
270
207
161
214
225
216
119
193
241
220
215
216
227
172
193
212
171
171
209
230
207
183
183
202
178
159
253
272
259
227
190
222
261
159
202
180
182
234
224
222
230
191
221
213
163
188
185
199
222
171
203
187
153
190
223
230
179
155
195
203
208
133
206
165
200
191
216
239
131
166
230
260
235
164
211
219
180
145
217
201
184
233
239
112
207
196
242
200
236
227
233
246
211
189
240
185
209
222
222
194
195
241
219
210
224
219
146
273
201
198
228
271
185
238
200
180
218
202
226
223
168
188
198
172
197
232
219
222
157
233
261
163
172
244
229
157
187
260
237
238
195
180
229
189
196
224
198
199
162
168
193
137
212
155
247
216
179
203
180
208
237
253
148
143
135
199
204
143
196
204
206
238
155
229
217
158
199
218
243
124
240
270
174
209
222
174
218
220
269
172
147
217
183
208
219
267
246
192
266
221
168
221
240
222
191
254
154
192
194
150
177
212
152
196
248
236
215
209
280
212
162
175
210
174
200
167
188
238
129
234
221
188
175
215
163
199
224
162
181
249
185
238
155
134
248
154
159
220
212
199
182
188
196
247
211
202
225
209
262
194
138
196
182
181
189
225
212
176
141
243
200
208
259
230
205
142
300
248
166
208
226
191
174
150
247
224
181
177
228
218
176
210
217
198
274
217
215
160
215
152
216
294
220
239
174
218
217
268
188
226
260
177
209
234
233
208
232
170
242
227
189
179
230
268
189
178
204
241
211
224
169
225
246
102
174
185
186
157
173
144
194
208
167
239
153
225
194
184
198
169
167
259
183
186
176
224
176
189
157
185
245
125
148
206
176
180
186
193
178
265
239
271
208
206
220
147
233
216
177
199
225
209
248
230
149
189
210
189
225
218
204
170
204
138
197
185
221
209
178
168
148
164
181
226
208
249
164
174
188
205
216
217
253
183
151
196
201
247
240
189
278
201
253
171
143
215
219
163
145
208
219
171
120
202
249
182
183
200
275
210
231
163
187
202
185
219
163
207
246
227
195
101
205
185
161
203
227
194
242
197
244
170
202
185
175
239
202
175
185
231
209
217
232
250
179
196
214
248
156
237
96
183
210
217
178
204
227
185
265
203
244
188
255
140
186
197
198
228
230
185
224
220
216
205
196
182
161
230
228
223
177
132
166
157
219
219
257
197
266
163
153
191
201
272
217
197
211
199
196
228
205
152
108
244
200
202
206
123
185
219
166
206
256
149
187
205
208
225
200
212
228
150
238
161
167
222
144
184
219
162
163
182
197
161
234
197
196
200
152
151
209
222
181
198
171
186
182
252
231
182
240
181
208
154
229
235
255
145
194
230
158
240
209
200
243
205
241
186
238
173
235
163
256
228
232
204
234
170
178
186
202
138
164
247
216
265
202
191
163
213
214
229
201
199
154
243
168
196
250
223
171
194
228
208
172
211
215
194
144
160
199
227
266
184
215
213
216
151
277
209
201
270
183
181
245
276
164
202
252
219
183
216
158
166
220
219
217
202
187
212
220
231
202
236
213
209
211
221
224
203
168
217
230
211
238
220
147
164
149
184
189
183
219
223
234
170
198
151
158
238
203
195
180
163
163
192
182
151
258
235
210
219
208
212
224
145
207
245
129
156
190
162
202
234
269
247
277
238
227
247
204
199
186
212
220
243
226
179
206
245
220
247
186
134
271
128
189
272
247
168
159
199
148
235
164
242
265
152
221
193
191
168
200
201
225
215
211
134
199
200
175
146
188
119
179
196
173
196
120
144
209
233
192
172
254
188
250
186
162
200
192
227
224
215
201
245
223
184
191
185
207
168
179
216
179
212
218
231
187
245
191
154
203
256
290
197
228
204
179
213
181
188
135
156
222
235
153
170
216
212
176
246
244
202
237
237
224
189
175
218
208
206
231
154
190
208
188
178
224
212
151
215
200
128
204
148
234
116
233
168
187
267
214
196
203
200
240
213
205
220
243
181
185
170
198
160
205
205
244
198
199
207
162
213
193
216
204
161
148
185
206
220
238
188
241
154
205
222
204
135
191
213
275
166
184
203
275
225
164
213
181
180
196
168
163
251
197
112
170
192
228
160
204
242
186
200
171
222
145
210
193
236
235
213
223
205
224
235
236
205
214
188
200
222
252
250
229
207
159
208
131
236
151
174
230
179
169
174
205
203
174
201
216
175
172
219
189
232
174
250
211
175
230
203
135
233
229
177
183
254
126
232
201
218
217
177
191
254
177
260
187
181
261
204
193
230
160
270
221
158
233
217
253
205
256
143
217
233
135
267
253
175
213
167
223
153
204
237
179
212
162
271
163
213
270
271
214
185
214
194
258
197
214
120
218
221
199
227
233
208
163
180
171
233
189
178
191
185
203
257
228
206
163
247
205
190
203
192
204
195
186
149
179
216
219
143
122
191
249
214
175
152
225
210
222
161
122
184
175
218
170
174
228
190
224
230
276
176
225
107
271
159
240
227
193
150
193
213
196
184
193
198
217
219
218
185
171
206
210
171
262
212
213
219
141
234
181
190
220
250
193
227
208
211
166
215
221
225
165
211
219
182
206
190
206
200
231
217
191
184
202
190
173
138
224
252
236
201
123
231
185
168
167
135
195
192
221
187
173
189
191
240
200
179
205
219
238
200
189
231
183
215
197
214
205
237
209
169
197
247
223
187
177
203
247
206
181
225
206
135
226
174
199
190
180
204
230
179
238
165
157
158
242
221
228
216
210
137
140
169
180
202
215
217
194
203
179
161
176
222
239
211
179
170
246
204
208
210
198
222
203
203
194
224
185
238
207
159
176
209
240
141
119
217
198
229
211
218
232
150
191
271
185
200
193
210
198
169
211
236
207
153
206
173
201
207
153
169
194
228
234
236
251
155
212
175
231
173
183
211
213
244
230
195
165
159
194
215
190
165
192
177
180
248
132
139
187
204
245
249
245
146
225
184
230
222
163
267
257
168
168
189
186
200
247
228
192
236
220
183
223
171
220
187
207
246
129
180
221
259
245
162
184
164
182
146
197
185
186
196
212
205
233
235
181
209
203
188
243
213
232
183
183
170
225
227
112
164
201
240
163
168
217
249
201
151
233
258
221
245
200
227
257
238
144
218
224
211
189
245
226
197
182
229
194
203
118
160
200
208
239
263
176
201
217
158
220
163
178
211
202
153
232
223
207
263
196
178
248
181
173
149
139
211
201
237
243
219
202
162
141
128
211
180
223
190
205
251
230
148
170
234
156
214
177
175
196
165
208
171
168
188
221
174
171
115
203
206
205
196
180
192
156
259
223
224
190
204
191
244
261
204
157
145
215
247
180
209
208
187
152
247
215
172
177
196
227
194
215
170
157
188
194
142
180
175
167
211
154
171
134
209
207
185
232
182
182
226
172
195
164
231
240
214
172
203
242
219
248
255
158
187
222
191
159
85
178
169
179
204
241
231
171
236
172
153
200
216
134
191
184
205
173
185
174
267
233
167
203
173
193
243
232
205
173
197
173
225
213
185
228
230
219
258
159
227
201
212
213
208
248
206
180
172
247
237
227
216
150
180
173
191
152
202
199
205
148
268
206
197
153
241
174
197
131
159
234
184
237
152
202
199
227
162
195
176
250
237
177
235
187
220
171
155
160
206
235
220
204
211
187
171
253
204
216
181
225
147
169
219
180
232
260
197
167
198
275
182
211
195
213
192
184
201
240
228
236
247
238
185
229
214
161
140
197
177
204
143
214
166
147
219
216
152
170
187
219
261
152
177
171
172
185
248
176
183
180
197
217
203
174
261
186
214
221
195
212
176
219
165
165
167
213
187
137
192
183
216
190
140
242
184
160
159
209
236
191
235
149
221
203
213
263
215
243
168
189
200
222
216
257
209
241
176
226
205
292
182
213
191
199
207
159
179
271
209
270
159
181
147
266
220
235
184
199
154
215
160
185
109
214
165
220
132
195
154
223
184
184
127
265
172
281
218
154
217
176
197
258
204
228
206
184
153
217
204
161
194
160
172
175
127
198
233
271
228
206
209
225
254
153
197
178
192
229
145
242
170
195
235
218
186
141
134
190
179
202
175
225
153
177
158
206
194
208
156
194
141
188
207
136
161
169
202
158
172
169
224
173
200
188
142
245
212
217
217
181
155
163
251
164
180
164
189
225
227
178
148
153
194
226
206
164
243
172
227
157
173
171
248
180
192
264
198
184
215
235
141
232
223
181
229
158
157
154
221
140
235
172
233
227
235
187
183
212
214
200
224
256
193
139
221
177
246
229
174
169
223
225
175
195
264
154
201
202
173
141
216
187
129
232
265
214
175
197
210
238
190
198
199
239
226
227
183
234
207
213
251
213
172
196
211
139
189
123
184
213
107
221
214
211
244
219
247
242
169
196
216
140
252
183
170
202
179
209
225
235
123
177
182
247
177
161
236
218
198
162
224
156
148
194
218
172
112
242
268
245
198
247
212
257
203
169
212
110
158
212
211
192
151
160
220
260
244
259
156
240
171
188
147
159
209
245
177
224
200
174
207
187
222
209
168
185
172
214
197
229
207
215
255
159
181
125
201
213
229
169
212
178
198
192
203
245
140
204
167
284
179
207
154
188
204
206
155
177
192
220
153
181
193
168
263
137
242
213
215
201
206
192
268
212
164
245
216
242
204
143
218
213
208
203
243
201
205
155
220
229
245
255
236
232
230
220
117
217
235
158
202
231
205
178
235
240
152
257
228
228
194
224
230
257
193
212
196
191
199
236
196
177
161
182
199
201
264
217
234
185
219
126
181
257
231
192
180
175
210
170
144
222
141
192
251
143
239
255
201
230
253
156
121
218
231
250
188
171
179
256
224
235
251
205
195
186
192
260
188
217
216
180
162
172
157
207
234
201
243
192
229
229
225
192
207
199
171
243
165
183
174
171
180
229
150
204
242
182
268
255
177
226
197
228
223
175
194
251
218
227
210
160
226
217
202
134
146
230
226
223
233
231
242
246
212
203
150
184
250
218
172
192
211
229
202
214
145
216
202
216
131
272
196
169
183
136
284
263
240
231
168
232
231
231
189
209
192
194
189
199
180
263
213
179
202
233
241
266
142
179
225
166
206
169
182
198
209
202
219
191
176
215
193
225
200
223
238
269
192
200
205
178
234
142
160
181
180
252
148
227
200
193
202
141
202
213
184
225
229
172
125
199
228
212
203
241
211
174
153
165
209
245
181
182
172
209
178
155
169
225
204
175
192
207
223
222
181
224
239
183
216
137
189
150
252
166
174
181
157
181
186
160
200
175
182
261
200
224
214
259
206
188
199
155
245
203
145
204
277
240
203
187
234
207
219
209
237
227
193
176
234
154
237
199
249
188
207
242
191
171
175
230
185
218
183
203
229
197
213
178
256
219
226
130
162
176
188
234
181
207
239
209
180
211
178
170
141
201
171
224
221
132
254
216
206
139
167
217
219
251
231
239
147
250
229
203
199
235
198
217
154
206
251
192
242
247
184
181
188
135
241
223
202
203
145
180
152
264
221
226
197
162
176
230
226
174
206
175
167
158
196
183
221
212
155
208
173
220
190
148
147
256
257
240
143
201
139
173
158
175
195
241
285
198
175
185
233
239
213
203
245
191
177
222
213
175
224
162
206
142
216
197
164
207
182
221
184
194
155
226
218
264
165
155
166
172
192
170
243
258
223
198
237
183
256
227
193
123
215
216
182
243
198
230
202
201
219
133
186
198
211
180
195
159
196
153
222
205
235
192
239
169
189
218
215
165
220
207
201
179
203
248
160
200
231
219
191
197
141
143
224
179
196
195
192
193
213
202
190
190
205
217
236
149
223
175
215
258
219
161
182
211
159
172
185
177
258
205
204
207
190
208
221
199
266
201
205
221
214
243
161
224
219
186
246
174
244
179
226
228
137
222
168
205
214
218
193
233
207
205
194
171
213
216
162
210
172
214
226
252
193
216
203
180
206
217
201
183
223
233
258
240
249
190
145
219
206
225
201
214
186
144
251
215
188
157
195
217
198
211
201
241
159
193
224
194
203
216
196
189
206
132
207
188
161
200
238
221
244
223
224
212
237
242
196
167
182
198
125
168
233
239
214
218
247
211
171
147
171
208
210
197
134
224
208
203
238
134
175
206
206
195
156
276
203
184
235
171
202
165
220
202
223
214
245
196
195
253
142
234
200
206
258
169
208
229
143
137
203
260
226
141
195
147
154
167
196
198
203
166
213
173
248
227
227
185
166
255
210
280
123
164
266
141
175
214
202
221
202
197
226
204
234
193
152
209
191
212
203
157
193
156
156
203
204
245
194
216
252
120
167
203
244
220
182
140
218
210
208
121
214
183
254
192
149
208
201
247
188
224
224
176
214
196
174
163
159
233
188
186
149
235
247
196
165
227
217
167
248
165
271
232
208
265
228
192
206
196
166
169
217
267
246
146
172
215
208
241
170
249
244
185
218
119
174
233
211
171
250
194
218
236
196
235
226
197
245
132
168
244
177
161
226
146
161
242
178
222
215
240
168
215
188
230
179
181
224
192
266
174
187
214
240
237
208
210
186
271
157
236
200
222
239
187
182
233
112
142
218
250
223
225
190
187
186
150
168
221
168
191
227
261
215
234
179
247
129
239
203
206
212
213
223
176
221
226
184
214
201
192
248
193
155
197
139
253
221
161
270
159
195
220
143
175
149
166
233
197
264
185
167
157
230
247
197
218
237
239
269
134
251
268
218
188
230
259
191
191
205
183
189
148
159
180
112
111
131
208
220
160
159
176
155
184
214
147
171
214
209
203
199
235
173
228
182
216
237
178
189
108
191
247
175
195
226
164
254
186
204
180
218
200
159
254
156
208
215
212
176
158
160
253
148
150
230
147
164
214
196
243
212
214
283
189
168
172
229
182
245
200
209
256
227
186
187
179
275
233
225
165
260
196
202
219
177
125
198
226
245
179
185
149
125
201
192
160
186
172
164
156
189
200
178
159
204
257
256
205
236
234
190
183
219
219
229
213
139
191
175
151
176
170
178
218
204
231
212
150
192
218
179
246
199
205
210
185
188
161
253
238
258
225
189
168
203
139
169
207
211
201
217
252
254
204
204
200
191
166
289
195
223
169
191
282
204
153
229
199
219
133
153
161
147
196
213
199
217
186
199
204
221
157
148
183
220
245
177
134
243
244
186
208
153
152
213
203
177
243
177
248
162
181
218
218
173
217
202
242
141
254
171
180
193
196
159
140
211
200
165
196
219
204
221
238
207
181
235
199
254
220
190
249
165
257
181
204
187
152
182
180
175
209
177
221
188
193
154
186
273
153
98
149
236
204
221
201
289
193
191
214
268
207
185
238
187
200
189
224
189
260
228
184
166
164
224
217
197
199
156
133
262
228
219
260
173
271
167
223
224
158
210
178
258
148
230
220
228
235
235
206
168
192
174
207
221
183
246
218
163
218
211
123
245
147
228
197
193
208
192
187
187
299
190
168
188
202
227
204
234
191
171
249
235
175
180
208
251
218
135
227
221
230
173
245
247
235
248
94
217
180
154
209
197
228
202
214
178
136
234
205
159
200
166
183
197
124
224
220
225
213
235
225
120
237
226
187
223
167
210
201
208
167
252
217
231
245
184
215
200
225
246
180
190
203
235
211
172
190
221
224
184
193
212
229
171
181
179
251
181
202
171
225
222
145
167
207
204
195
146
127
219
221
114
201
216
142
186
205
191
179
237
217
131
167
179
146
265
183
217
149
185
196
203
206
221
204
223
143
217
222
153
184
169
229
155
242
254
170
247
283
202
235
277
200
188
238
159
241
218
202
193
214
230
171
205
160
220
271
192
204
183
212
197
185
204
178
247
246
227
231
199
195
205
185
202
155
281
191
189
232
162
194
194
189
172
259
198
199
199
216
196
174
131
140
199
205
195
225
195
226
149
152
232
123
250
188
200
221
211
237
210
218
270
177
198
197
223
263
201
232
152
112
148
157
220
193
231
164
206
180
136
170
232
178
215
196
159
205
187
212
253
198
208
194
175
166
256
156
231
196
205
235
169
161
213
175
189
205
183
198
174
187
143
192
136
201
160
175
170
207
262
211
247
187
235
254
179
230
277
203
195
239
231
133
230
177
133
197
177
174
207
251
198
209
256
209
204
182
188
230
191
181
159
210
224
213
215
183
210
173
231
155
215
198
133
227
214
193
187
155
192
211
171
203
196
177
178
203
204
214
203
195
245
203
246
124
193
191
222
171
181
225
229
156
223
190
212
204
265
203
209
141
159
221
179
221
278
224
158
201
151
250
216
151
232
159
202
145
226
162
208
177
162
207
151
190
198
192
212
157
250
200
163
227
174
170
274
223
127
164
215
197
168
204
177
233
85
177
181
199
197
211
249
224
161
211
214
219
237
137
194
237
203
114
160
182
205
205
171
193
222
165
225
208
184
246
212
164
211
190
173
141
184
245
198
215
194
236
230
144
225
254
256
170
222
182
180
200
195
219
215
222
174
205
159
125
209
155
125
168
192
200
247
221
196
201
225
241
191
198
190
222
175
199
186
242
258
171
212
151
219
216
150
228
236
150
169
194
161
194
205
228
156
183
179
172
208
179
263
230
208
188
192
207
215
268
214
188
205
147
153
254
178
228
194
206
229
161
104
246
219
177
220
146
217
219
217
241
189
216
177
238
155
177
221
266
221
252
163
210
189
202
223
181
174
206
253
176
177
183
196
245
206
174
216
191
181
221
260
248
248
244
217
221
173
243
175
217
210
194
198
227
180
154
164
210
161
140
180
228
225
231
173
188
171
175
207
191
215
183
195
160
223
218
180
187
173
216
239
211
188
197
201
168
206
205
192
211
164
203
219
198
205
191
213
238
149
212
147
206
215
196
209
223
229
220
214
217
168
238
215
202
188
238
263
138
182
228
259
212
167
212
224
231
117
184
197
227
251
170
204
206
151
200
217
187
170
218
187
144
166
180
195
212
221
183
237
215
196
224
166
115
168
181
178
154
208
176
182
211
161
184
232
228
134
189
180
248
228
196
156
241
237
245
232
198
168
227
235
171
216
230
217
157
193
178
210
186
162
208
243
182
250
145
204
215
180
182
208
220
211
254
253
179
137
202
226
201
207
155
204
214
214
195
139
175
171
264
173
162
147
170
234
145
191
225
228
165
221
247
248
229
179
219
181
217
169
191
211
214
194
200
222
139
202
225
256
225
186
286
170
173
158
152
141
179
167
133
159
237
182
187
220
238
198
283
174
189
215
187
190
220
214
168
129
154
173
232
155
231
143
190
217
199
215
222
266
163
208
160
219
235
191
132
164
214
239
225
205
242
212
271
185
226
243
174
287
204
203
258
217
223
208
234
211
177
147
187
256
137
222
204
220
246
171
246
253
215
211
193
209
256
209
144
186
239
226
169
221
204
225
171
206
144
181
201
183
171
194
131
237
206
256
162
232
150
168
226
176
123
243
198
222
211
204
181
174
221
214
199
272
251
238
238
230
151
241
200
227
247
199
218
239
137
194
209
185
253
147
211
242
216
217
213
230
175
260
230
233
121
258
220
254
195
169
196
174
156
237
171
128
195
224
164
249
179
171
220
230
234
255
254
179
155
212
188
181
199
205
223
167
261
169
192
189
173
125
173
236
192
280
185
187
264
227
206
206
224
162
136
243
138
222
241
177
153
222
225
223
154
214
123
220
205
229
237
186
201
235
252
202
230
159
222
158
247
169
181
176
158
176
181
108
132
161
207
249
176
250
150
275
166
152
216
196
208
215
153
217
264
194
210
143
192
224
171
187
182
179
183
253
165
185
211
234
195
251
245
110
227
266
174
208
205
227
173
171
215
251
226
204
284
206
235
271
198
185
206
201
218
244
188
236
154
167
147
221
220
224
241
157
210
206
172
214
207
195
229
252
169
223
191
126
202
201
231
200
249
188
172
163
276
181
207
202
231
153
259
173
132
174
213
171
242
182
242
211
214
212
198
178
167
219
221
168
221
201
239
160
214
217
267
186
163
180
227
169
201
186
198
163
197
179
191
242
200
188
159
168
192
192
217
166
227
228
143
151
176
254
163
169
167
191
184
244
204
195
212
155
200
147
187
236
165
192
236
216
199
192
182
186
191
125
203
264
234
236
177
178
233
166
184
163
220
271
169
247
195
170
204
203
217
278
156
224
132
204
201
194
224
191
122
131
237
167
201
263
134
213
198
192
200
219
199
224
222
189
196
217
234
187
204
185
139
238
249
208
244
249
122
148
172
224
259
232
191
189
234
217
230
207
187
221
187
153
250
160
197
184
167
227
194
173
130
242
179
197
219
205
133
222
160
196
195
230
169
145
204
216
168
231
253
208
205
179
195
228
221
219
191
149
205
213
229
174
189
174
176
237
216
208
187
222
151
237
213
251
253
156
220
210
205
232
178
193
235
145
175
232
270
176
177
226
228
278
226
190
249
158
169
213
195
260
158
145
214
180
137
225
169
213
236
160
191
261
239
162
245
136
133
129
216
227
178
170
233
243
219
218
201
227
186
230
181
208
196
195
212
260
219
138
193
204
202
241
127
215
200
266
188
238
155
220
241
226
175
183
261
213
207
214
210
206
194
187
160
198
226
132
240
216
192
194
185
210
211
187
155
270
195
183
221
140
153
176
132
201
248
232
236
197
211
238
222
222
231
173
121
212
174
178
146
173
214
160
157
243
140
205
196
187
197
156
259
194
224
189
182
204
262
214
221
181
188
195
207
193
223
198
270
165
219
193
182
155
170
205
122
212
230
191
184
216
216
251
179
275
249
212
230
209
202
209
206
246
218
231
198
185
198
222
217
172
149
197
240
213
168
203
151
148
226
212
186
213
171
166
199
206
186
194
185
253
126
257
236
162
130
203
198
185
233
147
203
209
194
154
203
143
176
173
224
205
212
231
169
197
233
206
192
202
216
219
201
230
192
219
199
205
206
234
204
234
167
245
157
103
163
217
196
134
177
239
214
235
217
196
242
218
229
179
232
224
182
221
176
212
171
211
176
172
161
219
220
167
192
178
194
210
178
175
234
247
193
147
227
136
213
204
205
169
225
221
165
178
192
175
177
220
218
238
207
158
222
142
203
267
190
133
200
199
249
268
208
173
232
192
196
258
285
206
171
148
226
197
223
191
212
224
198
230
172
231
162
176
158
260
210
258
161
190
169
171
250
248
233
221
191
268
213
182
232
165
210
214
194
171
195
209
209
208
206
197
189
208
181
230
194
218
264
160
218
196
205
166
171
149
242
249
179
259
191
173
216
177
181
174
172
203
183
246
198
127
193
247
136
184
208
245
224
181
179
191
237
247
136
220
281
233
231
243
177
198
214
119
212
236
168
184
275
224
196
194
177
224
166
240
175
170
217
236
241
220
196
178
250
178
204
208
173
246
230
172
235
157
173
229
197
157
197
246
123
249
216
223
163
207
188
184
204
233
207
211
221
167
172
193
195
172
212
214
183
198
196
213
163
193
223
241
172
263
242
183
199
221
233
237
210
171
139
211
206
203
182
219
182
196
263
208
159
153
183
205
147
124
217
134
226
204
278
223
236
178
181
169
208
165
251
250
228
234
239
211
227
176
248
152
183
189
168
199
192
217
169
259
122
205
194
259
222
234
223
161
268
239
149
221
125
176
220
183
204
138
181
180
251
200
184
136
225
146
202
176
193
229
189
145
168
150
236
185
107
239
208
185
234
252
191
214
185
231
255
166
181
185
214
205
209
177
195
226
194
153
236
276
190
132
122
211
194
197
217
161
234
141
238
211
250
163
252
164
188
187
145
236
145
141
237
182
178
215
203
195
202
158
193
223
192
169
248
158
235
193
201
180
174
186
268
201
223
179
244
179
237
214
160
218
216
230
189
270
200
205
183
243
233
155
226
128
190
258
224
105
196
130
169
257
149
200
167
108
200
195
234
160
184
231
134
250
204
160
219
242
257
214
151
145
137
210
219
211
209
160
206
225
187
211
211
156
236
157
207
159
180
157
237
210
170
219
199
204
194
206
214
213
193
111
174
209
201
248
268
196
209
188
146
253
221
205
184
208
212
175
244
176
158
183
250
179
180
267
222
181
223
171
229
166
202
233
245
223
214
183
197
206
203
228
240
142
183
190
226
200
107
229
191
204
183
148
227
173
215
198
217
242
223
241
229
184
239
257
158
212
167
188
153
175
169
204
185
154
175
241
218
228
152
136
197
218
218
188
163
196
201
164
216
191
187
218
164
156
246
153
206
190
254
166
175
202
238
191
237
205
217
180
200
222
238
148
198
276
241
166
205
228
247
213
248
200
203
166
195
183
155
191
161
212
221
206
240
145
201
205
193
200
157
214
213
218
107
199
226
215
192
204
204
249
232
200
195
131
209
204
213
235
193
228
204
204
221
223
242
206
266
136
169
230
203
212
196
199
229
218
252
153
210
177
236
189
224
235
203
217
234
199
240
167
220
187
199
213
221
172
204
276
212
245
196
187
219
216
215
205
246
190
172
162
163
234
224
231
176
170
157
241
217
253
222
230
186
204
210
158
216
156
171
178
217
185
189
249
209
161
207
214
269
167
172
190
229
143
205
263
256
252
129
173
205
206
222
193
241
240
215
252
141
214
205
237
159
171
195
197
167
175
170
199
203
232
190
217
160
170
202
161
242
235
215
187
133
261
183
243
206
209
208
167
184
231
134
244
212
228
213
139
169
209
189
178
239
208
184
194
202
242
190
205
197
220
171
158
176
236
242
219
155
222
204
196
258
194
162
223
206
172
265
226
223
228
144
212
219
237
135
214
156
212
147
132
220
211
119
181
179
238
218
236
239
267
210
201
121
168
169
192
172
256
180
163
224
222
152
161
193
233
199
230
156
186
100
263
194
250
264
214
209
195
170
224
207
247
154
208
194
141
220
188
213
236
228
124
164
147
184
147
176
158
263
195
230
157
232
211
163
191
256
161
184
260
166
214
205
147
217
167
149
209
171
191
169
192
224
196
166
206
256
184
202
180
216
169
176
222
156
216
188
121
174
187
195
224
141
165
236
188
214
178
184
197
238
164
190
224
205
169
205
141
199
162
181
171
221
137
128
196
155
228
208
239
209
222
196
197
238
224
225
185
219
180
195
219
131
170
195
265
225
206
216
159
251
231
163
234
185
181
224
151
226
160
223
199
148
246
224
209
231
231
169
249
209
242
213
245
283
213
199
187
161
203
134
186
243
171
209
199
244
193
251
261
195
231
204
263
145
220
206
189
283
234
227
201
234
188
201
228
219
179
190
188
196
224
134
234
267
167
197
211
267
138
109
209
141
250
221
207
266
157
173
189
201
177
189
164
198
238
178
236
241
195
124
230
191
239
270
181
184
244
239
176
151
197
210
222
92
248
256
249
168
197
100
153
203
193
208
220
194
206
211
181
176
224
206
243
145
204
175
198
243
222
189
214
220
169
174
219
181
254
153
223
184
174
215
252
238
199
278
203
200
191
252
202
178
206
191
161
155
220
225
209
211
176
226
235
106
221
197
236
200
202
202
167
217
172
262
204
202
211
204
161
246
227
205
207
170
199
261
224
203
193
234
173
136
167
288
233
196
167
171
224
241
181
174
102
210
162
124
182
224
179
220
268
161
172
215
183
207
171
192
210
234
275
163
186
247
190
251
206
189
237
224
248
169
209
223
254
185
191
231
204
162
175
231
184
183
214
186
167
231
230
183
178
187
171
224
202
161
212
231
138
170
136
215
226
194
191
190
178
161
196
190
178
210
164
223
221
216
186
281
219
210
203
207
264
218
120
222
222
215
252
200
190
195
244
162
183
233
242
235
227
229
229
225
171
176
209
228
107
184
225
211
144
197
155
280
213
201
167
126
205
217
209
163
217
162
170
223
142
161
202
219
178
245
177
207
202
147
184
198
176
188
141
171
144
162
204
190
197
185
131
216
251
158
218
215
151
194
196
140
195
269
210
197
120
241
209
172
172
221
178
288
243
205
190
200
146
191
242
208
209
175
230
191
210
203
227
271
254
141
234
166
182
176
164
200
183
238
213
216
227
273
169
198
221
189
237
225
212
188
241
224
125
195
178
222
257
195
173
156
236
212
263
231
199
194
171
206
161
199
164
212
255
153
205
268
180
188
225
187
212
204
184
144
199
96
170
191
234
167
245
241
167
139
146
202
234
244
136
192
219
182
202
224
204
171
248
178
224
199
151
199
192
194
186
224
184
141
215
145
183
193
154
142
186
206
208
211
194
178
236
225
176
172
176
179
251
169
182
252
209
166
198
189
223
203
163
246
248
165
134
185
143
229
216
218
196
167
200
218
167
233
141
227
216
199
182
149
210
192
151
218
175
247
247
162
186
167
161
203
234
210
207
224
165
179
163
205
279
226
212
188
174
202
243
203
234
207
177
223
216
203
193
187
161
160
245
135
229
132
219
197
192
231
229
164
188
194
272
259
192
223
213
186
202
244
222
188
214
183
214
209
200
205
233
270
172
251
182
174
221
211
233
181
228
184
242
198
177
134
175
135
171
208
158
141
277
140
160
188
252
215
235
240
246
163
245
199
172
224
221
207
214
149
263
284
244
139
228
230
192
157
250
226
183
229
231
186
212
187
234
171
198
218
203
194
245
200
190
219
219
214
144
179
150
206
237
234
259
226
231
221
233
210
227
179
223
206
213
231
197
120
217
207
230
228
232
291
177
148
190
226
214
170
152
197
239
132
214
163
163
181
231
201
240
215
165
220
233
181
199
243
253
201
216
233
125
213
215
216
202
182
197
207
158
248
168
216
151
222
244
235
239
257
185
195
192
142
219
142
227
216
273
190
209
265
175
135
175
218
239
242
204
162
153
197
168
200
211
181
282
205
213
172
209
206
207
232
163
179
209
179
156
219
200
267
175
215
197
223
245
218
159
198
201
214
213
219
170
177
188
170
96
190
200
185
231
261
220
178
230
220
231
232
156
216
236
156
169
222
158
207
128
204
259
182
138
212
246
224
209
117
196
165
191
212
215
218
253
188
148
212
132
187
182
235
242
273
211
186
151
155
208
196
198
262
179
201
195
207
213
167
177
228
128
201
168
98
170
204
246
185
165
136
215
179
154
200
189
205
206
131
207
170
189
192
106
131
160
219
179
188
254
202
193
191
223
170
206
154
198
168
163
182
221
276
236
170
142
152
218
156
173
244
215
198
197
254
206
194
195
195
214
161
244
186
192
154
186
218
188
209
221
233
144
147
247
204
188
226
193
196
224
214
285
204
167
261
207
176
192
232
228
242
227
148
204
192
167
219
163
198
181
191
162
230
225
194
177
203
209
217
198
221
207
213
186
206
193
129
214
221
190
168
214
183
130
208
169
155
179
161
220
210
188
226
173
156
133
202
225
291
217
187
227
168
170
203
163
174
185
233
170
221
220
213
180
271
202
115
250
235
178
178
223
172
221
217
213
263
185
203
199
198
172
219
243
209
205
221
226
159
235
229
141
186
167
210
242
227
198
221
176
240
172
191
141
198
248
230
193
157
210
234
199
209
187
194
207
203
199
234
258
183
201
143
126
249
248
294
245
190
223
237
237
229
206
170
190
234
192
173
129
171
250
204
181
175
249
255
215
226
201
181
254
230
174
170
243
191
245
209
216
150
162
222
210
252
216
190
205
201
196
157
183
190
194
246
130
178
167
146
231
231
208
197
172
173
255
257
202
217
174
150
222
244
201
257
241
174
153
226
179
255
264
166
225
226
172
200
184
178
221
219
216
176
225
194
131
187
177
210
234
172
212
245
195
184
220
229
178
144
127
232
147
202
221
251
213
222
121
211
220
168
171
195
199
198
211
202
219
163
140
216
255
163
188
165
181
198
189
150
243
235
173
150
163
214
113
252
203
222
181
216
228
175
222
191
184
222
227
218
187
217
259
157
198
157
210
172
217
147
176
253
266
193
197
133
100
210
179
173
202
165
207
223
206
227
148
200
291
235
238
247
217
192
159
224
203
211
162
235
205
148
149
217
208
197
210
175
148
179
195
221
178
213
192
171
253
180
204
195
184
180
211
195
195
229
184
230
257
214
205
216
179
262
232
171
224
234
177
168
263
209
159
230
168
202
180
201
225
203
260
205
230
155
201
251
180
215
234
196
239
218
238
206
209
269
215
251
243
244
212
218
216
240
180
139
235
200
162
194
127
203
179
166
222
131
161
225
216
157
231
188
281
237
188
215
143
222
192
222
214
153
177
229
291
254
225
202
177
250
136
238
242
197
190
164
209
202
155
168
203
255
221
209
214
192
221
198
222
227
182
207
216
197
234
178
146
206
109
139
256
145
194
223
220
205
204
183
198
230
172
211
242
212
239
251
159
203
263
170
194
246
230
217
172
206
231
203
248
242
146
169
171
232
191
226
186
258
158
205
157
159
185
160
228
262
229
241
241
166
202
207
200
220
170
176
218
204
147
230
208
224
253
183
144
174
180
200
183
227
235
250
217
238
235
201
264
103
169
164
240
202
211
194
214
172
220
196
258
195
236
218
229
267
171
215
207
245
180
235
98
168
276
260
238
172
181
237
171
207
245
191
189
159
218
237
186
216
219
167
206
145
237
163
227
254
156
186
158
195
197
247
217
181
243
262
164
183
229
208
203
135
209
250
189
150
191
221
193
172
215
202
217
197
164
167
198
253
234
229
265
193
208
227
255
168
190
229
210
218
187
258
215
206
246
146
228
184
140
162
230
183
190
166
157
217
206
198
170
167
207
171
207
172
253
222
240
177
176
254
215
198
147
193
171
200
204
254
237
183
245
137
227
197
207
162
190
155
212
207
207
177
143
211
199
206
201
210
162
146
250
201
198
194
233
204
201
199
205
203
214
220
250
254
227
246
180
200
239
200
199
220
270
204
210
209
210
218
193
166
196
238
222
222
217
205
217
224
196
209
164
198
180
159
179
247
268
225
237
209
199
224
196
208
247
231
111
212
176
175
182
138
207
202
141
170
235
197
194
181
217
254
159
212
216
237
194
235
229
181
223
169
165
173
249
212
224
215
232
147
191
187
135
166
235
199
181
186
218
255
169
186
226
228
252
204
269
163
160
223
246
116
187
209
246
225
150
214
227
212
164
227
207
166
142
120
235
235
139
211
178
158
160
187
162
153
213
202
204
200
217
214
190
258
150
158
226
183
236
243
176
179
244
202
232
229
262
174
207
245
234
245
199
168
185
264
171
179
233
217
168
171
187
183
188
255
227
169
165
185
179
218
242
218
214
169
165
268
282
192
148
214
174
164
200
154
229
174
228
277
113
183
186
271
209
163
206
145
240
247
221
186
286
232
219
231
201
241
178
227
193
146
175
218
243
235
189
213
183
130
195
223
203
206
188
202
200
187
209
252
207
194
244
211
231
229
171
196
167
237
237
195
199
260
130
268
202
132
250
259
147
243
204
173
217
217
208
198
185
198
165
262
253
203
198
213
206
195
148
193
198
163
203
215
157
226
214
172
201
205
235
209
183
207
157
226
228
193
177
233
141
222
153
125
216
195
175
186
225
244
155
217
186
212
163
206
193
236
178
214
114
275
188
169
220
191
240
239
186
165
215
203
207
278
173
204
167
183
176
193
195
218
219
178
167
175
208
193
142
248
212
215
253
127
272
259
237
103
257
199
192
218
224
236
191
182
168
190
204
210
201
131
225
135
180
195
234
206
222
229
195
170
151
146
225
180
261
178
274
217
200
203
200
211
255
187
206
213
232
196
251
241
212
179
287
218
202
244
191
183
226
213
200
263
243
120
241
187
235
178
280
203
196
228
217
226
198
221
208
205
230
174
190
278
212
203
207
202
210
206
195
115
199
153
209
190
196
238
206
232
159
218
189
113
206
163
249
211
175
251
218
177
195
195
196
198
146
209
163
219
205
272
251
143
206
197
223
214
172
224
254
223
218
227
201
193
223
220
217
204
189
197
224
159
157
201
159
177
161
153
158
189
155
262
207
199
265
226
189
193
187
226
180
162
162
196
180
181
218
232
282
154
173
191
188
156
162
184
190
217
202
195
245
303
240
170
247
185
162
177
187
203
178
183
231
147
188
158
211
218
309
196
190
232
221
161
165
197
250
209
201
191
272
216
175
238
204
191
250
228
206
198
246
253
206
230
169
204
170
264
133
184
234
258
208
187
172
221
187
166
217
221
186
196
207
182
158
179
182
246
201
185
179
181
208
215
207
168
214
232
204
204
218
269
219
128
201
245
138
187
204
242
250
270
200
175
155
177
153
170
188
224
226
183
210
149
220
209
201
268
230
248
193
206
166
250
199
171
230
174
225
181
244
254
198
151
209
161
194
165
226
177
240
237
190
172
235
178
218
163
218
208
167
144
200
267
104
180
213
269
240
206
247
178
215
197
213
176
222
222
172
228
134
201
220
225
195
198
139
251
183
166
175
205
212
188
229
149
262
195
236
163
216
259
257
185
200
174
251
210
272
210
202
162
217
230
231
161
149
195
158
222
205
178
208
219
194
152
192
235
190
202
198
222
239
159
191
223
242
154
207
209
154
218
193
124
189
201
137
233
166
187
185
186
212
287
188
252
174
243
215
172
193
201
177
186
187
173
211
223
197
139
216
169
192
176
241
165
233
183
213
213
266
212
249
190
142
162
190
190
224
180
228
202
245
218
212
196
153
210
160
226
237
175
200
195
159
232
183
214
212
152
213
133
213
203
258
178
227
284
162
230
207
165
188
165
208
190
235
208
172
224
242
196
167
226
166
278
215
196
230
286
239
202
161
233
230
191
145
207
226
244
201
191
196
268
160
237
228
259
253
203
181
216
185
156
153
191
166
204
212
219
138
168
164
147
164
176
217
139
236
144
208
115
236
203
171
203
166
163
195
188
190
196
211
191
227
247
201
198
170
181
251
156
163
187
134
160
212
160
230
233
169
196
217
139
146
208
218
261
227
201
225
154
235
138
226
124
229
219
156
236
162
175
199
204
213
251
239
137
177
204
183
206
243
226
185
260
182
195
116
193
168
256
177
144
202
241
180
156
179
153
185
196
167
210
202
228
144
289
216
174
220
210
239
228
196
177
135
217
169
176
133
205
244
212
205
230
202
227
119
229
264
236
189
200
166
189
163
221
151
280
235
198
238
238
216
147
225
166
196
147
207
242
204
219
166
205
249
268
167
236
186
210
183
146
202
194
238
196
218
191
232
191
206
155
151
164
205
271
258
157
221
239
215
206
250
237
226
194
217
240
127
242
199
201
192
203
243
219
224
198
156
214
154
150
200
153
175
135
181
176
181
198
244
196
164
197
254
203
216
192
179
212
199
165
211
190
248
211
202
204
194
179
248
193
149
173
188
247
186
261
188
210
217
157
251
215
223
135
213
216
149
188
193
157
158
218
230
219
206
206
265
182
184
200
184
195
138
226
187
190
174
183
227
186
264
177
147
242
137
225
193
212
214
269
207
121
234
156
162
146
216
197
245
238
222
253
198
193
158
201
172
194
213
155
159
189
205
203
250
192
233
219
214
264
192
209
228
213
194
230
183
194
207
245
203
180
216
187
157
213
181
176
197
193
170
221
206
225
148
203
174
196
260
149
208
175
209
223
285
194
123
271
208
217
171
160
194
217
225
196
185
171
269
212
228
196
268
139
215
256
220
175
255
187
185
180
216
223
256
103
212
257
201
179
218
221
145
169
161
276
261
194
216
281
161
212
247
155
147
211
157
209
231
211
264
184
132
174
216
148
250
261
180
147
183
214
184
220
185
208
268
222
249
209
154
242
228
235
215
200
271
260
175
263
211
205
218
185
264
200
182
236
215
231
159
214
240
249
144
244
191
265
244
175
239
204
261
165
212
229
158
195
273
215
186
180
170
163
170
207
190
189
191
142
152
222
220
288
192
189
214
220
164
202
212
199
228
255
219
160
217
229
210
227
192
225
217
188
194
257
167
169
208
216
250
179
184
196
205
175
205
209
197
180
193
239
218
200
224
139
196
172
215
176
212
210
204
223
222
287
177
181
243
105
182
252
192
227
163
201
201
216
212
236
233
209
175
244
148
139
172
190
233
159
229
189
224
242
171
164
227
157
226
233
165
198
180
194
210
155
216
177
175
213
147
171
222
168
259
249
196
217
181
211
239
169
203
181
146
220
264
220
201
233
157
241
192
190
137
130
215
215
139
181
220
239
147
190
171
209
188
248
187
158
218
209
109
218
234
181
176
184
257
178
263
185
207
166
211
192
173
205
219
194
203
130
253
141
247
245
198
139
202
187
187
244
168
229
213
220
249
180
195
186
156
228
237
198
239
134
181
193
233
238
167
151
199
175
238
232
198
195
239
228
219
188
224
169
141
185
152
242
211
188
216
188
199
166
273
117
235
199
172
175
179
229
162
163
246
181
173
130
153
234
200
217
128
187
188
218
230
203
168
190
192
226
193
218
260
171
161
165
246
226
223
224
212
191
262
235
190
233
207
228
235
213
167
217
200
167
172
212
228
190
180
200
163
219
200
177
187
236
184
264
226
155
210
189
238
153
138
199
151
196
136
140
177
227
212
184
124
183
210
218
205
160
138
212
182
208
268
260
203
174
218
225
196
150
212
239
160
220
204
179
207
227
222
231
200
168
235
197
251
237
180
214
231
189
203
229
182
141
202
173
163
238
154
148
200
206
223
218
190
178
214
211
204
195
239
192
143
247
142
228
189
200
210
181
261
246
213
160
163
171
215
167
256
211
228
159
232
201
224
147
217
268
236
209
205
114
185
147
187
160
147
160
177
244
130
87
167
203
205
199
207
212
198
154
166
193
220
228
222
245
160
152
247
242
198
178
191
222
226
202
189
183
176
217
196
224
164
209
173
216
231
220
140
203
176
209
153
204
175
171
201
230
242
134
160
182
168
154
219
234
223
181
188
185
163
197
195
198
230
85
205
150
256
213
176
197
197
249
202
195
211
227
217
177
232
203
157
203
194
240
173
171
118
242
243
111
163
211
127
230
252
233
152
171
220
200
143
208
208
118
231
235
228
219
278
243
190
213
241
145
192
179
194
220
164
230
169
240
224
193
192
249
186
207
246
215
222
172
222
166
186
227
268
203
223
238
184
209
197
231
226
155
189
191
182
215
220
209
174
224
264
254
169
192
211
181
219
208
165
185
150
169
266
238
208
189
246
193
242
161
178
237
185
203
251
186
202
193
173
161
147
183
201
184
216
172
202
195
226
200
211
180
232
203
165
211
260
274
179
179
265
201
97
208
212
197
254
132
212
171
201
239
239
183
217
200
171
217
224
230
167
141
153
266
269
177
199
269
201
197
243
229
201
173
142
177
211
246
211
228
172
216
242
198
216
184
198
265
196
161
186
177
241
172
208
151
214
239
150
194
154
207
171
146
249
157
175
181
179
231
207
195
193
204
252
225
175
249
212
237
194
182
206
181
202
225
194
223
144
165
199
182
155
233
221
159
234
223
214
186
222
214
239
193
208
159
214
204
217
224
252
238
203
185
167
248
233
128
178
195
199
152
202
155
244
181
192
212
251
148
227
182
194
221
213
201
200
160
138
259
245
199
187
233
233
181
177
199
183
172
192
179
118
217
237
206
153
204
159
250
178
222
232
245
275
221
205
237
212
247
206
198
211
197
122
207
181
214
174
155
250
192
191
200
206
233
246
165
193
217
179
232
210
254
247
193
251
153
222
157
156
185
215
200
175
184
213
196
229
235
204
236
194
252
185
198
195
139
268
227
198
233
216
123
202
212
155
178
235
174
176
197
228
185
236
231
169
251
213
207
162
173
180
138
213
247
239
226
161
158
255
201
171
145
242
207
244
237
173
183
216
198
254
156
205
176
181
232
189
235
228
161
169
272
184
202
246
125
237
183
221
190
246
263
262
228
185
105
190
251
205
190
176
152
232
169
251
203
131
160
229
129
159
253
193
230
208
220
183
143
191
140
143
161
193
146
194
190
232
234
171
191
228
169
219
207
205
222
200
234
148
167
242
188
237
223
179
222
193
253
229
252
221
126
151
161
207
263
183
163
267
236
125
160
208
137
220
177
187
206
159
204
198
220
228
195
208
161
164
197
204
225
237
282
106
192
275
192
199
212
224
231
200
249
215
227
150
234
191
182
213
191
208
173
182
268
223
163
219
217
223
188
233
211
223
233
203
271
177
204
199
208
155
194
192
209
185
188
161
159
163
229
140
194
238
226
251
192
227
256
194
195
195
135
240
124
230
212
139
244
241
192
198
157
217
186
198
263
233
190
196
216
206
230
157
192
180
198
168
180
183
198
257
186
165
234
188
173
158
205
249
239
249
230
263
250
195
172
194
171
222
264
255
179
172
184
212
214
232
247
91
192
204
121
224
178
223
223
148
201
138
273
236
132
215
217
209
155
205
196
225
228
167
216
199
200
168
160
176
225
188
191
231
260
171
204
125
209
180
184
166
209
179
194
200
244
169
210
242
171
188
186
204
111
198
150
222
136
200
222
147
225
214
262
189
219
205
224
197
252
190
219
224
257
206
269
144
207
179
185
255
174
207
193
168
239
186
181
217
175
209
232
241
220
171
225
93
256
255
230
210
163
177
197
184
209
189
215
188
200
177
208
133
200
193
210
233
201
225
268
235
184
249
127
246
259
178
160
168
246
243
148
262
184
149
216
184
237
159
220
229
230
260
192
219
174
157
221
224
220
220
231
172
212
170
227
205
231
206
164
204
196
195
194
214
195
188
224
219
234
267
200
242
174
147
274
222
153
203
220
178
179
187
187
196
173
279
270
140
216
173
230
168
184
194
227
167
227
255
161
210
147
198
192
209
187
194
204
191
237
211
189
201
149
175
225
229
211
243
236
167
188
210
134
209
189
227
226
191
250
166
312
225
150
220
133
209
173
208
249
179
244
161
238
205
215
179
223
116
216
229
172
178
230
278
199
159
247
183
211
206
196
200
216
236
205
217
173
200
238
205
218
187
210
199
155
197
225
215
155
267
161
216
212
159
214
213
232
211
141
217
215
229
206
133
230
188
263
200
234
133
231
191
250
229
175
98
272
191
170
134
192
239
158
172
267
177
207
155
216
230
208
261
216
171
193
138
181
222
217
223
179
184
247
170
196
92
254
186
205
196
242
185
187
221
165
186
194
152
211
214
173
280
106
228
178
190
274
216
199
204
253
184
171
211
213
207
191
212
201
227
219
178
198
215
234
161
222
180
159
192
170
223
117
188
249
203
188
186
225
220
168
212
125
213
195
194
158
190
212
161
168
160
205
171
210
228
236
225
203
159
280
157
191
243
171
178
190
121
220
207
244
184
201
171
216
218
207
248
143
195
245
177
244
169
194
138
169
239
251
205
183
195
144
196
170
232
252
275
234
201
209
230
225
197
213
128
176
249
148
218
207
172
212
170
145
183
139
186
235
184
259
163
186
216
181
248
207
191
160
232
250
203
221
232
171
214
181
231
147
176
186
247
249
188
144
204
187
132
200
179
212
202
189
163
230
167
225
246
169
192
186
99
239
248
187
209
223
182
161
197
187
169
227
258
165
153
187
177
180
123
153
183
179
233
161
143
148
183
152
195
215
168
186
163
211
163
201
252
200
239
203
202
224
201
199
200
137
157
201
188
188
157
174
210
217
195
211
216
194
253
190
205
224
167
143
211
177
239
186
190
211
216
189
186
192
184
216
157
175
170
255
203
135
217
231
236
221
205
188
240
179
219
259
167
186
210
201
195
190
258
192
262
194
176
168
135
218
271
209
124
208
193
167
218
215
207
164
176
163
245
223
192
253
131
207
211
178
196
201
176
196
175
233
192
212
199
232
219
211
172
182
201
205
195
199
183
265
195
227
226
260
235
202
180
208
183
215
178
186
218
225
201
140
219
153
268
270
208
247
186
199
226
193
222
232
241
151
159
125
200
161
178
212
140
203
244
195
155
263
227
207
133
155
229
200
226
208
203
188
174
196
239
181
224
190
163
197
205
179
181
255
149
195
227
181
232
275
225
227
221
248
234
248
206
191
183
146
171
150
182
144
204
210
188
193
213
246
196
168
246
185
158
219
250
235
216
111
216
181
228
149
152
228
172
201
189
206
197
176
163
137
267
198
228
233
212
241
207
262
194
212
195
172
293
231
187
182
250
246
221
146
216
233
157
171
141
193
228
156
133
214
256
168
168
145
201
250
231
183
120
234
246
230
126
220
232
229
231
164
119
209
165
245
175
205
169
243
248
149
167
217
221
225
265
196
196
235
182
184
200
271
170
206
220
231
234
157
283
199
184
192
254
243
188
199
166
260
236
174
226
228
204
183
114
190
175
176
144
159
238
199
248
238
202
154
186
202
263
234
186
227
160
179
230
207
226
185
235
255
234
204
190
237
180
254
185
182
196
265
198
186
221
146
189
103
184
185
206
240
132
229
214
196
134
227
205
171
188
265
231
147
159
180
190
194
220
154
238
203
206
155
192
253
196
169
113
217
185
183
135
148
208
217
174
198
243
151
194
214
184
236
147
169
205
195
212
208
237
162
230
210
194
228
229
212
169
224
221
198
245
180
243
227
219
166
160
172
195
250
216
233
191
221
199
242
219
211
246
191
182
197
192
191
227
200
208
158
241
256
213
177
119
210
217
238
177
174
161
269
172
227
189
166
261
148
175
230
179
246
196
199
169
183
195
179
172
201
153
218
169
167
232
216
164
184
228
187
213
149
287
193
187
196
253
221
224
210
206
216
147
214
152
190
221
247
143
165
155
205
208
238
255
181
258
202
200
158
231
251
173
172
173
169
213
240
176
227
162
234
188
189
150
188
214
237
236
199
239
182
187
230
168
245
243
228
231
206
192
184
211
237
166
231
233
188
193
209
258
182
222
205
180
181
220
175
186
216
205
233
199
217
260
175
197
253
244
251
281
252
144
221
255
175
212
189
216
189
222
257
255
210
159
156
214
218
216
173
168
226
218
232
179
167
214
172
239
251
172
160
262
257
163
171
262
219
182
238
250
243
219
211
155
253
161
151
209
203
225
211
198
180
193
202
194
234
240
221
182
168
225
217
159
224
182
210
118
216
235
225
165
253
142
187
163
166
233
191
193
193
156
192
174
208
213
198
232
200
175
222
214
227
158
233
170
173
263
238
199
228
166
192
158
170
208
249
224
242
203
184
210
177
222
171
209
227
214
197
172
241
211
210
259
289
191
105
236
215
187
195
158
218
144
167
227
191
247
182
123
164
219
229
257
176
211
183
217
192
202
166
222
171
198
149
196
215
249
162
206
215
170
235
208
195
243
191
241
199
215
181
244
183
213
233
172
160
193
204
251
147
148
240
187
167
156
185
180
192
223
208
171
188
148
185
191
151
225
207
291
213
227
203
209
181
222
179
241
181
212
225
222
187
160
229
217
170
225
256
180
191
201
142
201
138
188
172
228
204
207
195
208
193
170
169
273
161
150
170
215
221
192
185
207
225
229
215
207
191
220
176
184
246
262
204
202
130
216
127
227
240
234
227
207
192
198
184
150
125
203
236
176
211
193
266
141
162
253
203
193
162
154
163
230
191
152
166
255
227
248
255
142
223
168
200
213
188
201
166
259
184
188
188
199
186
143
261
187
270
206
218
194
244
240
242
171
177
243
173
169
257
177
203
181
226
178
145
232
205
200
234
187
191
206
187
151
191
231
208
241
240
239
217
272
191
265
248
230
199
191
228
199
280
220
214
191
236
223
167
239
143
194
175
179
152
212
234
234
203
109
235
169
253
183
235
208
174
235
176
149
179
227
191
242
188
194
219
176
257
132
186
178
260
205
222
182
252
236
155
251
244
231
227
230
200
182
223
234
141
177
137
211
225
171
188
163
199
214
209
236
161
215
218
195
184
222
171
200
190
255
206
273
224
201
267
198
173
225
233
154
144
124
175
187
267
208
169
218
152
193
219
250
190
130
254
202
134
202
203
240
230
305
213
234
215
180
239
240
214
275
227
230
218
211
169
220
194
261
190
221
178
158
229
193
203
249
182
161
203
209
192
233
217
216
105
238
190
227
177
167
164
183
174
264
174
232
276
192
142
190
228
188
213
211
162
200
168
158
213
174
192
179
168
159
185
189
191
149
244
244
231
177
228
191
214
203
227
183
241
251
189
217
145
184
244
181
235
207
194
106
211
167
242
238
185
237
216
229
173
155
210
193
212
181
113
180
195
191
217
213
212
213
191
186
264
144
226
175
200
213
237
246
206
196
234
215
216
190
244
267
230
184
272
207
234
232
210
171
222
217
193
226
238
212
256
161
230
147
187
218
167
166
212
275
229
219
259
211
136
160
224
247
213
174
207
129
182
190
182
180
207
209
213
209
248
272
174
116
159
250
193
240
225
211
256
148
193
191
238
247
247
168
247
203
182
211
190
174
229
171
223
267
191
199
156
186
170
151
200
202
205
220
206
227
183
146
209
155
132
213
179
187
153
232
146
190
153
204
140
201
232
211
135
234
166
214
168
252
160
186
191
198
230
227
186
200
221
173
227
234
188
166
213
166
222
180
179
247
196
209
237
190
100
199
234
206
199
196
170
226
135
210
214
209
214
205
191
242
180
145
301
218
226
226
151
161
215
192
197
217
218
235
226
143
218
258
163
211
189
166
212
174
167
177
190
215
222
154
187
168
185
144
213
263
166
223
163
221
196
191
182
210
214
217
221
181
216
253
184
184
195
166
216
226
205
213
199
261
252
188
242
183
240
181
171
186
179
193
220
209
204
212
199
232
198
238
252
229
184
178
180
245
229
280
138
154
181
215
164
158
158
115
193
172
216
183
147
198
200
225
199
178
190
198
251
189
168
230
207
132
216
202
171
217
206
158
243
227
175
197
194
182
177
222
159
182
146
203
257
215
171
198
192
163
154
206
206
200
183
272
231
197
154
170
176
243
232
199
186
188
197
190
225
192
216
198
263
211
216
142
124
251
202
196
208
207
243
181
231
161
211
187
158
170
214
236
247
182
180
163
214
248
199
272
197
230
231
228
217
190
203
206
143
181
191
213
225
178
234
230
220
232
244
254
204
175
165
235
228
146
216
214
194
181
170
123
242
171
188
178
217
174
221
178
218
159
236
232
216
213
192
201
187
212
179
208
220
207
143
196
279
123
250
265
189
172
236
159
144
190
211
207
255
222
145
196
192
154
166
136
206
196
189
187
184
206
222
204
205
229
174
209
210
186
171
219
217
180
221
222
206
155
199
125
274
169
253
145
254
125
234
210
162
200
202
190
244
135
247
250
242
143
175
207
188
201
263
196
194
196
175
205
191
174
197
121
213
223
180
232
199
132
191
102
254
210
240
194
241
183
193
254
210
227
151
202
195
178
218
262
199
201
141
152
236
223
175
170
252
201
222
208
231
211
196
177
224
202
243
175
167
191
225
157
212
213
208
197
221
211
219
236
165
156
207
222
259
220
192
214
197
238
188
228
169
239
239
207
169
232
276
162
201
194
203
189
239
164
170
126
163
223
284
203
203
213
235
208
247
197
139
156
159
254
218
206
246
218
187
175
250
253
242
199
202
168
188
154
268
134
199
271
204
210
256
192
189
280
171
226
205
243
202
236
261
209
185
165
191
247
179
219
228
244
196
142
132
150
241
204
191
274
224
162
247
206
135
188
236
214
217
214
186
214
169
254
229
187
210
238
202
208
185
214
212
226
227
228
160
214
232
161
180
159
220
168
186
198
172
167
174
186
224
171
206
228
176
187
207
269
186
177
168
177
144
231
214
229
245
191
237
182
239
228
243
242
188
209
250
141
159
251
216
175
206
178
159
241
205
158
222
227
182
226
177
156
282
151
195
228
165
243
220
204
172
233
193
153
168
192
188
218
140
219
187
188
204
141
218
228
240
172
196
183
236
250
161
160
231
238
184
184
125
176
222
196
172
220
222
184
208
178
181
204
239
217
246
193
169
174
220
248
167
166
144
158
185
223
149
245
222
211
147
193
198
147
161
224
243
189
181
214
228
130
185
148
201
202
247
223
268
182
179
216
196
138
241
276
187
172
181
181
224
246
242
237
172
240
243
185
265
218
235
144
204
212
195
194
209
190
181
183
238
191
224
168
143
163
253
222
195
204
172
232
226
166
217
193
221
186
204
168
179
194
229
223
224
161
188
200
194
201
242
238
100
220
220
179
156
208
186
168
184
236
148
210
166
172
199
189
102
189
204
161
185
134
198
212
164
152
117
204
235
143
122
273
198
193
202
216
205
215
223
190
194
223
147
180
184
172
185
214
217
183
124
122
164
183
221
184
213
161
207
237
199
164
227
174
142
224
211
242
220
243
171
288
249
238
174
168
163
207
166
256
200
228
213
168
206
145
220
148
229
138
171
226
187
183
274
176
206
236
186
272
165
175
234
203
236
199
252
210
242
173
207
205
227
226
125
192
191
193
145
225
203
214
215
199
159
219
233
270
255
164
219
200
180
244
129
235
142
183
121
234
185
225
245
241
233
221
191
240
187
193
210
147
182
191
136
229
206
204
210
163
176
219
142
241
160
233
177
212
194
233
205
198
181
170
174
142
156
220
223
244
127
203
205
252
220
172
208
140
161
199
239
269
166
252
137
220
162
146
194
186
209
261
202
226
208
153
149
211
213
137
192
173
259
195
223
223
217
195
230
203
120
174
163
178
184
180
185
226
167
203
168
181
182
244
183
245
194
209
151
213
220
175
213
207
190
236
151
243
265
258
221
169
184
205
203
174
193
159
233
195
180
163
200
273
170
207
223
234
189
210
195
176
253
207
229
163
218
207
189
226
189
148
206
185
183
173
240
242
239
190
222
274
257
204
188
165
161
245
173
166
203
230
195
223
215
150
200
211
193
249
208
241
174
213
241
203
131
251
197
235
147
224
198
166
126
212
183
171
218
237
209
216
217
254
165
238
213
129
173
225
134
230
166
195
186
198
265
221
173
231
205
178
165
113
195
166
252
212
237
170
222
240
171
197
258
227
191
168
250
185
230
192
213
199
201
202
243
186
216
261
197
194
226
213
199
201
209
235
156
189
218
233
220
185
186
187
209
222
189
149
269
182
239
148
191
220
231
168
223
200
252
223
151
212
162
241
115
207
223
215
214
216
186
259
260
143
205
236
197
185
273
228
117
216
199
184
177
203
201
221
211
218
169
223
231
205
208
195
190
196
242
150
170
126
155
185
161
241
200
150
242
195
166
186
181
209
170
177
214
128
193
242
115
194
164
199
269
215
250
157
121
238
191
237
234
254
268
201
171
183
205
207
194
242
184
196
166
145
180
199
198
214
187
175
212
254
271
134
244
268
221
219
191
197
252
224
244
197
200
249
152
195
164
249
217
190
179
210
171
259
181
172
201
166
263
249
173
196
176
162
194
194
225
193
271
241
239
184
153
172
184
182
172
228
228
226
206
212
131
196
205
218
214
137
234
204
166
200
233
254
233
189
193
184
222
150
190
141
168
158
195
209
236
201
240
200
143
137
185
211
225
222
166
237
202
196
189
195
91
222
211
194
268
212
166
255
153
250
180
221
243
184
188
228
199
247
131
212
191
164
171
205
243
209
236
269
165
176
221
250
194
203
163
226
193
244
156
185
264
171
197
187
200
190
209
264
176
245
228
196
222
199
225
184
212
165
200
237
175
201
150
171
252
190
177
249
161
185
239
193
233
190
172
130
241
184
244
193
218
252
264
197
204
144
197
232
202
243
193
205
234
122
250
206
231
213
181
196
208
213
154
161
174
202
188
205
181
204
182
161
203
154
241
162
189
257
118
202
200
193
140
225
234
177
204
196
210
210
238
186
145
132
196
206
174
194
224
153
243
166
179
252
198
237
212
164
223
204
184
211
207
179
206
222
213
217
225
226
174
203
242
177
246
235
172
202
227
213
181
218
169
193
224
161
212
169
222
202
162
195
187
227
208
137
178
129
272
196
253
120
196
145
226
190
262
246
101
190
202
210
221
261
164
247
237
218
92
175
191
130
261
221
175
182
231
190
129
207
185
139
183
219
196
165
141
187
242
190
208
214
202
211
237
199
213
228
218
196
177
168
222
107
201
273
262
200
182
236
213
180
213
230
175
168
218
174
162
194
234
211
228
188
172
231
170
152
275
146
237
204
243
150
260
217
247
167
215
238
196
188
179
216
257
211
205
230
201
135
239
173
199
131
251
216
222
235
199
164
162
171
176
200
237
191
244
227
186
237
184
267
196
230
125
202
161
187
231
142
269
294
157
229
219
188
199
212
215
200
207
238
195
204
174
178
251
217
204
166
201
243
163
201
157
219
235
234
203
202
223
123
233
170
210
227
212
197
218
230
200
145
205
195
159
192
162
238
142
228
235
255
140
224
155
258
201
200
223
215
168
208
177
145
208
173
271
236
197
143
242
197
145
229
173
196
242
171
294
247
219
221
255
241
173
152
145
172
244
223
204
144
209
226
201
214
194
230
194
182
198
188
231
282
206
192
228
165
187
201
204
185
238
169
127
115
144
212
172
257
187
218
167
123
215
148
111
242
173
262
155
270
229
180
198
171
154
201
141
193
156
181
229
196
133
179
226
190
225
214
195
255
213
250
248
206
241
255
230
212
241
224
260
197
224
225
240
177
165
167
218
233
211
234
127
165
212
227
191
222
167
184
240
217
189
166
148
200
169
199
165
215
271
196
218
249
180
222
236
230
203
167
111
205
188
208
170
217
208
201
272
154
176
211
210
189
190
230
212
221
215
197
176
182
174
113
171
183
141
154
107
219
214
214
187
186
162
197
198
247
154
191
166
224
149
194
200
161
189
227
251
235
190
141
223
208
225
205
238
167
173
163
184
227
215
237
173
203
167
194
257
243
199
187
204
242
195
271
220
204
252
149
194
197
226
261
199
196
194
205
187
208
235
209
281
209
207
208
164
189
121
136
215
174
211
154
199
197
248
161
254
248
258
191
214
165
209
218
244
179
198
219
204
210
222
217
161
220
221
154
159
195
185
246
231
203
146
176
191
212
178
206
250
185
209
233
156
147
199
252
222
220
153
229
182
206
166
100
189
206
179
145
176
223
198
205
181
215
158
178
249
245
188
210
217
179
191
182
177
239
250
132
183
202
223
205
173
205
138
200
244
205
160
149
216
176
189
197
218
187
197
199
189
220
115
241
194
199
201
145
189
186
210
197
229
212
150
256
206
194
223
198
202
241
165
211
212
192
236
228
242
184
180
215
278
212
233
229
136
222
277
181
179
146
198
258
173
155
172
225
223
139
213
220
240
216
199
71
216
104
261
230
234
200
170
150
202
186
162
180
245
186
285
126
184
155
176
187
204
168
214
194
139
182
108
205
184
206
184
156
208
226
195
232
263
230
207
213
204
225
233
216
192
212
191
226
182
220
167
204
242
99
174
230
185
197
193
212
143
209
232
261
192
215
162
164
176
175
206
223
209
121
198
195
217
173
180
195
197
187
225
241
251
169
148
284
226
190
227
177
229
180
208
251
241
229
244
260
205
195
205
256
161
169
239
226
261
235
195
132
176
231
206
153
202
214
227
244
186
247
284
242
102
152
208
250
199
144
200
233
194
168
234
259
253
183
178
177
206
171
193
195
141
206
211
190
215
219
198
240
172
213
191
166
134
205
184
183
226
222
162
202
219
225
216
244
147
178
143
217
213
254
245
252
186
162
192
226
101
253
172
252
198
192
150
188
194
187
188
218
225
192
177
171
171
163
152
139
178
145
199
249
196
154
185
208
215
206
160
149
191
206
181
211
158
204
156
237
192
247
179
197
148
234
203
183
151
161
169
201
161
176
244
217
163
174
189
221
235
177
201
201
176
200
217
211
206
157
195
192
150
212
221
211
209
108
195
191
219
257
173
190
177
188
206
204
224
186
181
240
188
169
194
168
211
234
229
194
232
158
172
125
174
194
214
192
161
238
173
174
200
193
162
190
230
148
189
165
148
235
253
134
256
260
225
273
151
209
229
162
145
238
261
235
198
235
165
204
215
235
263
102
163
217
275
218
209
219
198
238
193
191
172
177
211
180
202
247
236
120
266
214
188
241
154
200
179
246
164
185
222
182
224
168
175
219
162
179
191
226
199
236
197
191
215
233
216
227
228
236
235
194
163
206
194
226
213
210
203
185
262
179
217
152
256
160
221
179
215
253
158
225
221
229
203
188
127
173
261
224
210
217
192
212
199
147
234
238
225
208
228
167
248
238
235
215
186
168
305
272
190
250
236
248
204
247
186
215
203
215
258
178
215
260
155
195
222
255
180
233
251
154
194
200
145
223
166
228
218
222
238
190
184
262
248
238
230
201
197
211
270
232
172
160
226
216
188
190
205
183
207
149
211
183
191
194
139
103
200
154
186
220
154
167
225
186
182
222
205
174
200
213
241
236
174
247
180
213
230
221
193
273
203
211
252
206
162
207
215
224
211
166
252
187
145
183
137
220
169
228
174
187
232
232
200
105
172
233
252
184
148
199
169
184
255
174
260
204
204
242
164
211
223
156
165
241
189
271
205
250
236
250
189
204
198
194
177
263
198
171
168
197
206
238
215
213
194
247
210
188
231
172
175
233
208
167
206
168
186
180
281
223
227
103
247
244
172
209
230
245
235
218
187
177
196
217
200
230
254
172
226
191
192
189
167
190
213
200
262
216
209
182
149
228
231
235
232
234
147
165
167
246
187
133
170
226
247
249
229
176
164
189
211
192
176
244
206
142
238
206
241
198
191
210
236
171
145
237
206
182
233
218
170
188
193
200
207
196
226
166
212
222
155
219
153
246
235
181
166
197
200
166
270
202
205
190
194
228
198
284
201
235
222
212
221
166
176
226
137
158
211
135
238
170
193
278
197
158
235
190
239
188
222
191
179
195
142
150
253
227
194
245
237
161
216
237
306
216
225
146
212
229
205
185
167
175
222
166
219
203
243
178
145
137
194
213
196
191
216
221
259
216
140
181
125
192
243
193
159
176
185
259
144
262
207
278
192
156
253
156
190
146
146
229
153
178
228
150
250
140
163
193
151
167
169
210
207
255
198
177
194
238
191
252
204
240
154
174
250
217
244
194
155
203
165
169
185
199
234
146
235
213
214
192
207
260
212
201
192
196
157
180
244
221
202
221
183
223
193
196
245
213
203
163
235
164
217
145
137
163
157
183
192
190
213
204
195
218
164
219
188
189
215
216
175
234
207
209
207
202
227
232
204
181
234
204
192
244
190
179
191
160
199
213
224
112
162
155
245
208
154
190
193
217
248
247
224
156
196
200
251
161
199
206
190
211
139
208
256
211
163
257
167
178
248
201
228
122
167
202
212
197
247
197
289
175
181
256
157
225
215
203
180
282
276
244
155
163
216
194
192
222
217
234
160
230
218
245
199
228
203
168
178
216
206
185
210
183
241
117
237
186
207
171
145
188
192
199
260
132
156
250
192
211
205
216
174
210
188
223
235
203
229
211
200
207
197
194
189
262
232
241
128
258
230
171
214
219
167
220
217
195
193
211
205
155
216
241
230
183
146
165
190
198
233
259
197
161
174
169
197
200
175
198
238
140
255
195
281
208
208
198
196
187
238
212
214
197
160
261
171
160
260
180
158
142
111
214
208
268
168
209
171
226
162
96
220
208
260
213
173
210
153
160
189
164
134
233
176
248
202
174
242
157
208
180
234
228
205
136
179
234
218
204
141
211
224
221
191
179
124
186
148
235
219
243
263
180
224
167
202
229
203
263
213
203
200
176
216
206
247
208
231
152
165
164
167
189
245
150
172
249
175
220
223
189
181
188
238
218
226
201
162
151
195
205
210
192
184
208
182
114
200
227
199
190
264
180
194
252
255
228
218
169
193
192
223
199
188
205
263
194
230
199
145
210
199
208
199
119
160
249
174
214
234
214
192
197
298
192
218
181
236
217
171
234
220
152
225
238
264
161
152
158
240
230
220
208
191
208
212
215
139
190
210
147
138
193
214
211
211
166
223
188
241
176
259
187
233
208
239
219
139
223
213
224
227
167
192
154
163
216
228
253
191
218
157
212
202
171
252
239
186
190
219
209
129
195
256
256
182
241
147
199
154
230
152
150
158
174
198
200
186
126
147
155
226
219
168
216
201
239
231
217
254
209
183
202
178
285
191
132
155
235
205
183
288
213
214
229
187
232
202
142
167
197
207
174
187
161
156
224
229
207
190
226
137
239
128
159
172
209
216
200
171
225
162
206
196
245
197
200
191
192
207
134
221
207
243
198
116
215
207
203
238
182
249
210
200
121
194
186
162
199
197
165
196
165
177
184
208
216
191
240
170
160
252
152
224
269
200
259
156
218
221
193
152
222
224
244
159
164
196
209
229
197
155
257
194
194
155
215
224
189
135
211
186
216
191
139
190
198
189
188
254
240
114
253
209
167
152
218
204
186
193
176
102
237
200
152
144
194
220
244
167
163
226
212
224
179
203
176
200
191
195
234
182
195
234
212
245
216
188
231
210
196
216
219
212
204
183
161
165
295
246
185
164
161
262
195
156
202
240
173
227
190
220
179
204
174
204
173
199
192
148
170
194
131
248
202
235
231
154
179
243
148
245
217
158
197
189
98
173
108
203
267
189
225
139
144
253
261
140
213
187
196
220
203
203
256
174
210
156
200
152
190
250
219
137
250
199
152
176
246
262
149
159
222
223
255
193
248
261
204
170
192
165
181
154
173
215
124
291
159
147
201
172
221
239
232
226
161
196
175
174
178
181
191
205
221
181
135
170
221
170
181
212
205
185
198
160
219
186
272
222
124
183
128
115
200
171
177
208
266
217
170
167
224
171
143
159
186
208
164
275
168
197
190
174
186
225
188
158
177
196
181
218
223
220
178
207
196
188
114
216
256
195
242
204
177
167
232
116
199
163
180
222
192
196
193
171
189
229
203
206
204
160
182
184
197
185
168
172
226
233
196
185
196
205
244
112
122
217
188
168
171
161
159
183
197
211
182
222
266
191
140
140
174
120
193
167
241
199
93
207
184
202
173
212
213
191
206
281
138
186
198
220
229
167
266
185
156
226
196
170
209
180
207
200
150
244
254
240
183
212
211
198
205
197
203
159
199
168
199
232
225
208
196
150
251
161
163
241
192
263
195
175
240
183
252
249
231
150
176
200
226
186
216
228
121
236
143
105
249
172
179
164
229
189
241
209
219
173
212
185
195
202
200
253
226
192
210
144
165
239
236
210
202
195
224
202
217
171
198
201
197
162
104
263
191
193
206
245
159
230
174
210
172
187
172
217
207
181
246
214
157
252
234
197
184
167
198
274
215
157
249
196
160
187
189
159
219
224
127
181
216
199
229
215
262
276
182
246
262
224
192
265
234
232
221
220
194
224
145
262
140
209
139
150
237
272
221
256
223
216
189
207
227
179
192
186
240
245
216
202
183
170
195
226
262
97
203
203
205
174
206
174
180
171
187
196
143
189
241
200
212
170
203
147
195
231
189
186
206
202
193
219
228
188
182
223
188
215
200
249
187
268
225
145
175
256
247
158
193
197
160
187
204
179
224
191
211
215
173
220
211
158
229
139
216
158
215
133
221
178
167
154
177
215
215
151
163
176
161
167
239
245
237
170
246
160
212
142
229
215
178
223
244
157
210
130
183
156
157
160
252
135
235
235
208
186
266
251
239
252
170
199
166
207
193
224
228
230
231
192
162
288
223
218
225
176
199
155
219
193
181
215
203
170
239
249
176
195
250
166
153
125
188
199
230
143
136
262
205
156
213
199
201
201
225
196
197
185
169
237
207
246
205
230
204
169
193
245
210
227
199
177
184
160
215
231
241
205
168
175
206
152
200
238
166
150
227
207
225
226
196
237
218
135
192
197
228
219
217
230
230
218
241
217
262
152
171
168
178
181
229
246
216
226
235
193
232
191
190
246
235
178
155
223
186
212
151
248
225
180
237
265
230
188
164
176
229
185
250
203
208
254
227
202
169
176
259
257
192
240
255
221
200
217
240
220
250
174
219
198
171
186
224
187
222
194
233
221
157
236
244
195
150
256
235
250
191
240
146
210
244
190
213
180
144
167
220
215
254
228
147
137
222
171
193
218
195
178
234
204
163
157
184
177
223
100
210
201
179
173
209
236
254
221
207
182
213
158
171
220
174
237
151
189
224
227
155
221
204
197
203
214
240
241
224
168
231
147
243
247
178
218
245
243
155
221
223
134
221
243
176
200
201
189
228
275
253
190
229
235
161
191
183
182
242
222
226
228
218
192
213
168
168
235
220
212
174
165
149
237
225
209
173
193
215
127
243
198
224
204
194
171
266
194
207
150
206
181
260
204
196
197
280
159
151
240
236
183
252
206
225
264
201
181
247
173
177
245
166
198
195
205
191
194
224
241
208
173
240
178
233
246
233
213
202
157
155
218
158
152
173
228
256
208
219
130
221
228
174
240
281
244
239
185
221
241
253
234
221
235
161
204
230
173
233
191
235
245
266
245
230
194
210
160
152
209
184
242
240
189
275
170
241
189
145
170
211
123
120
185
230
166
224
259
206
241
223
226
189
227
208
221
195
154
195
198
183
171
220
194
216
173
177
188
178
213
228
229
228
248
192
161
236
190
215
218
189
228
222
186
213
192
203
160
207
238
214
213
171
200
211
215
195
230
209
139
198
230
113
214
154
159
191
237
156
194
211
200
162
235
194
156
208
227
251
229
188
202
207
263
230
166
209
193
215
210
208
146
115
239
237
208
235
199
237
187
192
158
186
152
215
157
202
218
259
186
189
216
195
185
196
192
212
171
200
178
216
188
295
179
181
185
93
173
201
257
159
192
212
166
211
162
158
206
178
172
184
255
191
232
237
185
244
233
239
263
171
203
239
223
134
198
211
272
197
194
183
145
191
169
236
223
228
221
213
195
126
281
250
180
167
178
265
238
247
208
197
195
157
229
178
141
201
244
212
197
157
192
213
230
204
236
203
196
222
223
209
183
209
134
190
195
260
217
185
152
218
172
165
195
262
189
156
223
195
153
222
173
255
230
212
219
185
180
169
196
180
214
180
227
199
226
181
247
220
244
165
142
163
180
230
211
200
181
222
201
178
250
180
167
228
172
251
202
228
197
160
203
207
253
123
230
205
196
196
161
163
181
225
210
123
199
201
144
212
271
240
193
212
211
212
195
239
202
157
188
154
215
195
179
208
201
152
177
136
218
244
203
243
198
190
159
182
232
188
220
169
190
219
273
227
191
287
210
189
221
179
219
234
178
145
224
164
180
199
194
167
253
219
208
192
185
159
184
149
186
195
236
208
238
243
237
261
196
188
146
153
213
202
246
230
232
229
217
279
245
178
196
212
238
156
178
211
266
202
187
160
205
210
221
153
163
100
220
207
141
195
113
272
205
210
177
194
151
200
192
178
143
169
210
134
203
228
182
155
166
158
258
168
249
169
211
248
253
220
207
179
258
247
208
223
190
188
243
156
225
206
169
214
171
219
166
212
268
168
141
228
153
140
198
146
149
207
229
208
200
128
240
117
225
231
217
230
179
185
180
236
259
226
212
230
226
243
229
240
243
158
239
219
198
221
209
201
218
143
217
193
151
155
252
188
194
256
225
176
187
138
181
241
166
259
189
197
235
249
172
161
142
204
184
235
193
166
205
130
167
211
169
173
171
255
176
219
185
196
286
136
187
185
202
197
257
240
206
192
225
229
280
168
254
231
181
222
176
236
196
261
176
171
258
157
208
233
165
243
236
190
184
206
175
172
175
223
209
146
199
227
167
220
174
172
178
231
246
215
200
187
225
276
230
148
149
214
281
153
129
195
201
244
203
207
241
152
204
157
130
181
201
220
146
179
209
152
212
203
148
231
155
174
229
295
133
267
200
257
239
216
220
237
232
152
225
214
179
172
187
199
193
182
192
217
218
205
245
247
183
220
249
200
249
181
169
195
167
215
206
156
229
155
196
218
154
182
197
269
167
255
208
171
202
190
222
193
193
258
218
220
205
183
202
191
184
245
185
199
171
152
165
209
180
169
192
207
166
230
211
166
177
188
135
190
194
175
182
186
168
201
238
174
232
152
164
186
223
194
224
141
176
227
207
206
198
250
256
210
205
188
146
197
188
215
178
226
210
233
199
226
232
204
127
202
186
123
180
149
204
187
180
231
175
219
187
161
172
259
188
172
215
190
208
157
202
224
183
218
155
199
242
209
248
223
171
150
206
234
124
240
238
230
158
116
143
171
199
220
209
244
191
235
235
241
218
181
197
147
160
218
231
164
162
195
185
242
227
250
200
260
198
237
168
138
164
214
223
215
236
213
226
205
204
198
213
183
210
209
192
163
156
231
204
186
137
250
261
144
287
155
213
251
177
216
188
205
232
101
234
208
259
208
211
149
203
197
226
198
173
159
211
171
152
245
171
158
170
223
157
234
299
214
222
222
165
162
166
172
250
225
193
305
173
171
199
216
224
146
180
194
200
151
198
192
206
229
243
178
193
210
229
243
190
151
209
238
184
153
170
231
139
239
217
241
252
151
186
212
221
169
222
180
213
199
233
166
176
185
180
168
200
167
161
257
189
211
163
199
181
238
199
218
237
186
249
210
239
219
246
180
255
220
202
230
237
234
186
241
178
230
272
202
234
205
215
226
231
204
203
227
170
271
178
249
223
188
228
226
185
133
232
206
165
159
237
219
182
264
228
197
229
226
173
176
211
180
199
244
201
217
181
217
195
183
198
226
148
192
191
269
176
210
182
215
209
188
245
162
166
221
254
203
257
175
169
145
243
232
224
96
236
188
182
198
200
118
149
182
186
237
177
211
146
205
176
184
191
199
178
218
128
232
221
209
99
250
180
255
201
215
221
184
226
253
228
186
203
185
203
174
186
221
200
220
180
129
233
174
229
182
161
206
156
154
196
160
145
134
219
163
150
223
220
215
217
244
179
231
139
210
187
206
210
217
249
180
198
250
178
212
116
259
140
216
175
196
177
210
209
232
233
185
207
174
191
230
258
259
198
226
118
138
149
192
173
209
187
166
167
241
182
214
166
164
203
197
175
224
222
217
179
238
218
203
171
190
168
146
188
153
191
188
206
236
198
237
161
263
248
213
260
214
162
169
221
172
146
203
192
233
219
179
220
165
202
198
104
257
189
140
208
230
272
162
242
190
181
200
208
206
192
237
196
223
165
191
208
195
223
222
203
245
188
206
218
139
183
204
183
194
209
215
237
238
194
140
193
238
153
184
200
221
176
179
201
163
183
166
208
214
204
192
208
221
202
222
193
241
203
201
201
201
232
164
166
193
228
214
204
196
250
145
211
213
155
181
219
163
107
229
201
161
237
214
195
175
194
202
183
206
268
161
198
224
151
175
170
169
186
226
189
227
206
209
175
183
185
194
135
223
177
179
203
194
200
148
190
236
204
236
206
228
179
232
198
268
165
159
162
261
198
150
218
164
178
212
143
240
247
251
166
229
197
182
192
197
228
200
224
204
167
252
152
192
134
198
200
193
173
236
170
266
235
159
199
202
210
251
199
227
204
206
238
151
149
148
255
185
191
204
233
199
238
250
217
152
216
227
242
229
159
223
229
171
213
195
193
254
250
172
218
230
153
168
189
219
230
174
215
182
178
258
195
151
206
172
231
165
224
219
206
168
188
177
163
183
191
248
193
192
171
166
244
214
215
169
183
218
175
230
197
195
251
209
173
188
248
236
191
163
233
153
193
201
248
147
157
211
171
249
183
201
245
230
182
233
255
272
227
243
175
200
184
195
152
154
209
169
176
167
198
244
246
284
191
160
269
221
207
184
232
242
241
222
115
211
178
264
226
151
236
153
243
156
202
151
234
193
218
210
225
223
164
184
216
194
174
156
240
193
219
205
161
141
198
227
210
215
184
200
247
259
252
73
211
228
208
199
189
221
160
187
278
211
216
232
217
179
150
243
190
270
243
153
148
188
210
127
195
144
230
236
195
227
190
197
199
125
209
237
204
166
223
242
134
156
201
209
150
230
159
132
199
220
169
211
194
198
252
183
225
216
146
155
147
188
130
245
245
149
200
161
235
152
200
196
233
258
218
236
158
199
173
176
177
252
248
212
171
184
158
226
216
188
246
232
223
123
230
225
216
244
217
215
252
222
143
220
161
252
196
192
257
184
217
102
146
233
181
224
236
238
183
188
192
172
216
198
189
232
214
189
201
153
208
156
188
152
212
235
237
262
214
274
167
231
174
234
230
205
192
191
163
216
214
253
226
157
184
142
198
229
193
217
225
178
248
260
188
215
178
206
227
198
179
209
205
193
179
231
237
139
143
156
194
186
214
191
263
180
234
222
229
152
201
174
254
232
217
225
192
201
232
136
156
181
264
211
209
203
214
221
149
91
166
222
184
205
278
121
203
192
179
241
203
210
145
240
207
229
181
137
169
152
178
184
260
164
217
209
194
152
299
231
156
162
133
197
172
267
212
222
169
243
243
219
184
229
254
148
220
233
194
188
231
191
172
209
201
240
174
175
156
223
197
153
246
222
130
187
160
168
204
198
174
244
233
237
183
150
217
230
148
156
170
206
196
169
217
241
234
160
134
209
177
221
205
226
139
139
182
224
230
202
244
159
180
217
168
207
205
197
243
226
151
246
163
196
147
228
158
196
209
217
258
186
253
189
161
268
144
200
229
182
203
225
155
232
250
171
193
174
162
159
160
224
212
164
218
220
146
195
210
214
204
216
241
212
215
234
186
181
275
199
207
241
176
207
259
158
235
197
259
214
179
186
194
182
191
130
178
222
203
229
200
242
194
182
192
166
226
223
191
208
246
219
180
180
243
146
203
220
171
172
187
217
215
179
205
220
224
215
236
199
232
191
227
129
226
176
191
181
161
160
182
176
217
198
129
254
206
226
262
253
171
245
169
209
234
199
212
207
222
244
236
216
196
200
227
231
191
235
122
197
202
217
174
235
211
176
238
286
170
165
239
161
149
170
190
174
192
219
160
235
199
180
111
204
239
151
171
221
194
279
184
215
163
193
246
172
252
200
151
219
157
166
169
216
148
177
141
119
196
243
239
182
157
218
231
175
231
215
209
242
194
176
235
198
204
192
120
153
168
235
197
171
217
103
239
206
179
184
233
109
230
199
198
185
171
160
192
213
175
265
229
229
146
149
158
251
276
215
169
240
224
165
165
232
207
194
211
165
210
218
174
202
192
165
141
122
225
243
260
198
138
236
167
217
161
203
214
170
165
233
189
176
163
299
225
239
185
237
247
148
207
210
189
216
226
210
205
190
250
215
199
217
187
195
247
158
165
227
260
152
211
194
204
225
163
189
164
234
210
231
278
205
130
200
166
199
225
207
274
179
146
194
218
194
209
240
198
184
241
212
216
181
223
236
183
199
139
168
247
205
152
229
225
192
191
164
248
165
201
201
253
152
169
248
217
198
189
204
214
145
177
241
191
221
222
251
207
244
221
187
152
232
201
180
197
126
226
189
205
172
155
197
226
165
220
175
167
187
250
155
164
238
245
170
189
160
197
172
235
150
219
226
229
211
172
187
215
170
171
203
172
234
237
210
196
229
148
163
179
215
196
220
254
174
176
233
216
199
140
213
185
206
189
166
270
196
169
242
156
223
230
219
224
232
151
180
219
230
269
155
184
217
164
250
206
193
214
213
186
188
262
123
206
141
196
202
208
189
250
190
181
232
238
246
218
235
194
190
159
207
176
221
220
237
228
250
236
226
177
172
166
196
199
227
163
222
216
131
245
158
203
163
194
211
213
188
174
239
195
204
193
205
236
191
186
144
163
205
161
136
239
158
238
206
218
209
161
186
176
211
169
150
187
159
178
144
234
216
186
172
239
214
172
248
105
209
186
196
218
233
198
202
180
217
178
210
214
201
245
196
213
150
141
137
160
131
243
185
176
177
235
230
214
200
164
161
124
229
184
198
192
244
230
164
175
240
210
223
229
202
257
180
213
252
246
188
176
279
226
198
195
174
211
150
223
275
205
205
192
195
226
224
232
203
232
176
236
236
213
194
245
188
200
199
281
277
227
201
144
205
147
228
198
176
239
217
248
179
212
214
231
232
171
189
237
160
144
248
198
148
180
165
163
150
117
204
225
218
236
210
122
203
163
189
98
209
259
252
196
230
249
160
142
177
144
185
186
193
213
212
185
213
131
194
239
224
186
216
148
181
195
222
159
197
149
202
180
156
248
216
197
174
238
232
225
209
191
142
214
206
191
217
230
210
216
177
190
213
247
180
168
203
165
251
235
196
166
189
168
197
181
186
285
199
196
248
176
205
200
183
202
232
193
196
209
236
207
222
186
192
211
234
152
257
205
214
158
175
196
249
198
212
172
191
232
203
206
187
205
207
224
174
157
195
220
161
164
212
212
157
196
205
197
208
190
223
202
160
173
186
195
239
245
169
212
188
232
239
206
193
186
212
243
164
114
204
138
233
210
184
251
246
141
163
231
196
148
242
224
248
272
210
119
132
173
206
144
241
193
136
185
258
185
176
241
173
225
253
143
197
245
233
125
181
177
185
195
175
230
189
211
229
116
236
192
186
181
209
230
196
212
238
213
188
192
149
206
208
280
182
154
246
184
165
155
233
214
212
204
187
220
217
173
157
227
159
218
198
247
167
146
224
216
178
111
258
225
245
197
174
146
210
237
181
230
189
146
209
134
244
175
218
107
163
186
236
160
183
203
234
151
193
157
154
184
119
187
212
153
247
208
214
198
233
239
172
228
275
234
233
191
164
123
229
229
224
158
297
202
207
199
153
200
160
235
211
241
194
269
171
159
227
119
167
222
177
176
191
181
231
251
173
240
233
179
124
202
206
210
238
197
223
214
185
219
199
213
121
165
101
234
153
177
224
283
213
213
231
174
147
207
180
238
132
214
241
173
164
128
139
198
249
222
206
136
202
226
208
229
284
203
188
214
186
181
203
193
251
218
204
165
165
182
186
200
126
189
231
207
148
224
197
188
154
186
215
218
163
188
203
190
191
223
216
210
224
173
196
155
248
188
239
206
201
208
252
177
229
184
198
224
146
165
199
226
184
180
221
215
117
196
249
134
233
169
211
211
167
190
185
251
193
184
193
186
155
159
209
170
168
141
201
224
183
176
192
216
155
205
240
175
174
195
158
204
164
152
176
231
255
205
194
223
174
165
205
190
207
246
193
156
234
255
175
194
195
244
176
184
240
213
182
222
244
135
174
130
196
167
162
247
236
182
202
199
206
179
163
147
162
165
243
192
150
165
192
241
231
173
212
153
211
194
202
216
176
226
166
252
225
127
214
205
188
187
207
214
161
222
207
251
230
231
187
219
173
217
209
154
213
96
157
185
216
209
266
192
193
205
196
228
191
233
214
210
157
207
219
146
157
230
175
153
128
188
243
274
199
161
171
230
196
153
224
160
222
224
212
144
138
219
231
223
182
216
154
133
167
263
166
210
197
201
235
247
216
220
202
248
195
250
250
227
188
247
202
215
216
231
169
234
147
248
269
170
145
218
196
215
232
178
247
169
200
205
239
266
191
188
160
207
191
197
256
219
184
205
241
256
222
200
215
196
144
217
140
145
218
181
223
164
211
176
230
202
118
136
166
173
196
231
161
169
187
190
215
181
232
246
248
188
175
197
205
257
218
103
229
148
243
198
257
232
195
224
209
188
130
219
200
222
192
241
249
223
242
221
190
164
155
165
230
182
243
158
267
223
221
200
185
221
208
221
135
194
198
205
201
252
242
183
252
206
186
141
186
198
194
241
128
156
202
187
217
196
189
145
231
232
222
186
191
273
244
205
212
222
225
185
236
199
175
219
213
188
234
189
147
262
211
150
121
226
190
212
213
149
243
164
190
209
205
186
228
92
124
221
237
171
249
229
211
232
146
204
180
200
151
177
218
246
128
161
252
162
210
199
189
221
277
209
205
228
202
236
247
202
239
233
240
144
138
150
202
209
156
130
235
143
226
183
129
125
174
209
168
204
225
222
222
206
214
222
217
162
153
284
273
69
183
187
205
201
180
183
231
235
144
217
187
236
144
174
201
148
229
227
190
199
216
203
172
137
174
177
214
222
244
191
159
255
195
193
246
232
250
185
175
226
230
213
241
187
206
259
153
244
182
207
168
199
218
170
170
191
204
237
222
202
212
213
213
159
167
182
116
117
212
223
234
216
182
199
138
213
186
179
192
207
178
243
113
187
173
235
227
205
150
190
277
238
167
216
207
196
175
243
218
182
236
211
234
177
155
222
256
214
212
184
257
198
189
235
246
192
213
192
252
197
192
181
200
174
192
190
224
208
156
217
155
176
248
180
220
174
127
223
273
196
141
220
142
184
162
321
203
230
153
240
215
184
209
205
137
229
189
232
145
221
149
228
212
243
213
202
206
237
206
232
244
190
177
188
199
202
179
193
239
199
233
184
174
170
185
146
228
229
236
201
187
219
185
237
182
147
220
201
202
266
199
175
201
142
236
173
267
180
209
200
206
164
257
191
177
191
211
240
208
113
198
160
203
235
233
187
229
190
242
194
202
148
216
235
215
184
263
225
189
177
211
222
197
237
134
135
226
178
243
190
132
220
194
160
240
246
198
197
213
166
210
249
157
107
201
152
199
176
121
171
214
188
189
204
203
203
166
206
193
215
220
204
238
202
194
156
256
171
218
109
183
240
207
253
166
243
251
159
201
264
204
202
202
182
199
196
132
230
189
237
242
163
247
170
200
196
276
241
195
218
165
180
190
270
259
167
203
207
217
215
154
240
187
115
229
237
170
163
130
181
206
222
189
167
262
193
138
221
235
225
160
242
234
218
207
136
160
216
217
262
166
214
217
221
140
204
177
179
224
217
204
154
208
186
213
181
182
189
232
198
202
240
200
228
213
208
152
249
202
205
219
168
192
186
163
193
199
193
160
210
264
181
197
163
176
193
179
147
194
227
214
120
235
188
234
186
221
152
157
197
232
211
254
191
210
241
255
150
229
217
220
210
251
220
250
209
194
160
175
191
176
192
175
134
214
171
230
209
168
175
178
157
191
190
183
110
131
215
242
259
134
249
206
182
202
197
237
213
229
193
167
176
241
190
141
214
266
187
219
180
252
196
269
186
234
157
206
184
195
193
197
233
167
131
194
206
258
208
178
166
157
252
169
137
224
244
259
216
186
198
253
156
218
237
158
152
212
153
222
236
256
186
168
149
220
239
239
184
179
186
201
219
178
167
116
240
213
225
207
120
197
218
201
196
193
209
216
218
216
186
214
171
189
213
155
181
147
156
175
239
191
166
196
148
183
191
181
242
261
99
208
189
194
196
252
172
173
189
163
242
264
183
223
202
195
210
215
205
195
211
192
210
187
217
186
210
162
251
234
201
245
198
193
246
202
206
218
195
180
178
210
166
240
268
189
251
152
165
256
196
182
226
262
170
170
201
192
164
166
147
180
152
205
207
204
217
228
141
215
188
210
244
184
182
179
208
192
163
201
207
207
244
206
215
241
187
236
259
118
272
253
232
250
208
185
186
196
241
180
182
193
231
200
194
229
188
222
160
238
176
153
224
230
174
221
220
227
219
205
220
230
238
175
140
240
163
222
179
229
211
193
193
172
179
117
204
168
194
127
189
229
233
193
228
248
233
263
163
167
230
134
210
217
185
187
156
251
209
179
208
149
210
245
204
228
139
230
200
246
212
250
260
150
275
163
213
124
241
231
212
224
146
164
173
203
211
209
219
185
188
220
136
165
239
147
156
194
175
198
230
138
173
153
240
200
207
176
226
235
163
206
226
238
246
150
243
228
189
233
191
205
194
256
201
205
194
201
180
212
219
208
205
187
189
217
244
246
190
152
265
222
140
194
137
207
212
215
210
242
238
235
180
193
182
180
200
219
177
207
184
206
213
122
161
286
218
184
236
126
195
136
133
212
262
159
186
175
217
175
217
213
169
170
196
193
230
194
185
188
230
209
180
213
213
233
207
157
212
209
183
197
214
213
217
159
257
171
174
209
186
154
258
165
193
210
206
252
117
164
272
166
213
227
211
213
186
221
234
185
165
241
170
198
221
230
156
214
201
223
202
234
161
181
231
220
240
189
135
178
142
261
227
190
155
206
196
239
202
194
203
227
168
185
145
231
222
201
216
209
222
239
238
213
191
215
260
241
201
164
216
106
224
196
226
179
207
186
219
136
147
224
171
217
167
272
197
223
190
223
187
206
214
203
211
214
197
174
216
183
237
236
204
182
291
207
175
256
234
221
202
213
195
176
186
180
214
166
206
265
170
208
197
255
160
196
226
196
203
209
183
224
240
163
215
114
198
212
186
163
221
204
180
227
206
229
179
194
177
260
226
182
188
240
191
151
198
170
235
186
193
230
243
237
150
243
214
202
184
220
164
126
199
236
194
236
208
256
245
185
231
211
144
219
192
179
178
189
231
174
195
209
176
189
209
226
222
205
178
239
186
160
181
178
231
220
151
191
153
196
240
121
171
156
195
177
206
177
214
235
205
273
230
232
193
268
204
209
231
205
171
209
173
228
182
240
259
267
219
236
225
164
189
226
197
146
168
141
260
238
246
191
214
232
193
256
270
222
170
189
240
142
229
257
187
215
179
163
169
213
169
211
274
187
194
231
223
174
213
196
232
188
161
268
195
256
192
202
250
205
207
171
193
202
237
227
104
199
234
203
237
196
286
225
247
153
224
156
227
155
190
220
227
175
282
122
179
218
204
177
190
182
212
160
234
225
180
176
157
236
253
229
170
194
224
196
218
227
164
221
188
206
224
236
277
160
192
164
159
151
150
252
212
143
276
160
181
167
199
244
216
213
187
211
210
179
200
222
175
216
218
259
234
239
209
184
247
199
214
254
214
238
161
143
178
213
239
240
196
228
215
163
175
175
212
209
233
160
237
229
150
191
208
204
198
217
203
157
224
197
209
224
244
221
195
231
214
148
206
147
176
219
244
224
219
168
150
193
193
125
207
198
135
224
241
176
153
212
194
190
223
190
192
236
164
169
229
101
214
174
173
158
207
212
192
205
211
167
132
217
209
237
214
259
206
236
190
201
153
179
249
237
220
228
177
242
189
211
158
249
209
159
207
163
232
235
206
215
243
232
214
222
166
178
212
120
199
190
149
152
212
206
179
166
231
261
250
217
173
170
176
194
208
196
213
188
135
152
193
197
238
88
240
196
184
185
157
202
164
237
203
233
204
205
189
195
172
177
197
205
161
172
223
242
203
189
178
167
208
205
208
237
231
192
211
215
160
141
135
203
220
170
189
191
165
226
181
213
201
130
209
181
180
206
219
149
250
232
212
180
110
217
177
253
250
174
252
207
179
215
232
173
150
215
235
169
217
108
178
205
237
258
149
157
197
160
163
172
198
226
210
207
250
151
242
151
240
239
200
265
186
192
158
177
175
173
209
239
158
140
224
172
157
194
230
175
222
220
172
186
247
153
222
224
237
196
172
242
232
224
184
216
197
226
222
208
208
194
210
212
228
249
182
166
232
220
175
219
197
227
226
212
194
211
178
173
165
168
225
180
217
228
206
184
98
248
196
150
215
212
238
204
198
196
169
234
209
216
204
202
261
217
249
186
225
222
168
175
246
208
196
144
198
169
172
233
145
208
160
206
161
206
189
172
255
189
199
133
155
218
174
198
149
249
131
210
150
175
207
190
176
200
210
207
217
191
175
169
199
166
196
172
204
160
208
120
168
183
165
198
262
238
196
224
248
203
228
228
223
215
233
224
241
243
206
221
220
209
267
141
216
130
170
187
186
213
193
206
183
218
214
230
204
182
158
186
211
140
238
146
215
221
217
256
189
196
177
230
261
202
193
251
188
191
190
223
185
227
232
246
239
204
189
244
183
259
264
184
207
150
220
272
218
209
160
205
188
215
234
187
252
220
215
213
265
207
231
228
169
198
296
154
216
197
201
208
233
192
191
157
183
198
246
156
259
224
226
228
248
233
171
202
202
168
189
269
172
230
237
179
235
198
146
252
190
225
221
201
257
191
208
176
171
223
158
177
221
196
182
162
233
189
163
183
225
169
206
254
221
179
191
177
220
147
207
168
222
189
246
180
230
150
200
189
221
232
220
138
204
195
186
140
207
264
147
182
173
216
248
237
155
227
188
214
197
216
187
211
219
231
202
205
257
169
157
203
190
190
257
172
180
190
211
228
215
204
176
283
205
182
229
199
216
225
239
186
157
196
163
153
213
212
140
221
221
155
220
226
242
156
181
230
302
234
203
193
204
234
192
167
234
203
234
198
170
223
199
200
146
185
175
163
229
255
230
257
195
223
228
197
200
160
290
238
214
234
200
174
213
266
245
283
205
208
200
236
181
188
174
178
178
244
245
158
195
223
205
243
151
236
174
188
230
195
173
146
217
282
193
190
165
182
220
161
189
175
173
246
220
171
260
205
195
182
270
205
214
215
210
224
170
190
215
218
208
247
230
211
153
219
173
120
191
217
176
250
187
238
197
202
226
197
241
206
214
224
187
210
209
174
189
238
215
125
203
177
241
217
235
257
193
199
226
242
214
207
192
207
255
203
232
207
162
276
211
207
160
186
193
215
200
263
206
194
197
208
156
205
228
164
202
175
203
248
218
229
182
212
231
236
195
164
212
202
184
174
189
189
267
186
201
216
185
248
221
175
262
185
241
116
194
238
215
179
195
194
185
173
183
207
224
229
205
131
241
239
235
146
176
192
208
159
143
177
208
218
197
229
151
181
233
267
115
177
234
129
183
199
166
206
163
189
128
236
235
205
173
179
107
206
235
186
207
179
170
203
218
154
218
143
190
181
185
175
192
203
241
195
205
184
197
252
162
158
279
146
214
198
234
186
198
241
187
156
227
194
181
193
162
164
190
177
210
175
189
269
131
190
211
225
195
183
144
188
198
167
218
97
214
239
190
223
221
271
219
273
239
212
199
172
211
225
179
150
161
193
205
237
169
207
188
237
171
219
230
107
227
231
246
195
201
250
165
230
226
252
187
219
247
179
192
177
200
216
235
209
212
170
253
176
198
183
143
176
189
173
200
239
239
199
161
203
221
153
164
235
114
218
156
223
112
187
228
183
210
188
211
231
250
198
188
198
237
268
178
240
139
124
162
164
224
221
176
173
192
180
211
178
188
163
263
229
182
195
137
158
204
158
142
139
231
215
236
164
183
146
198
126
216
238
207
225
143
150
211
145
234
196
192
188
251
191
229
151
198
193
219
157
130
172
228
204
188
179
197
167
243
191
186
245
147
197
211
177
187
186
272
157
227
214
181
246
150
214
216
267
201
220
214
170
163
231
167
162
181
203
198
185
203
122
194
208
144
215
190
258
230
190
210
169
160
236
173
168
170
230
229
191
175
262
199
227
212
235
160
242
222
185
173
200
164
220
204
234
231
253
243
170
243
258
221
176
196
203
182
181
162
124
220
132
154
248
205
251
231
250
235
217
245
203
161
194
171
178
217
260
182
215
184
191
196
188
127
218
167
151
103
234
219
169
134
162
164
213
149
213
216
172
190
149
195
189
201
196
191
186
186
142
191
209
224
208
200
200
206
176
190
182
275
263
224
216
211
178
191
286
214
219
164
195
172
237
220
203
169
210
186
180
206
208
171
160
181
232
269
198
191
135
194
145
160
262
178
172
235
219
154
146
222
124
173
247
203
213
211
181
237
226
156
160
192
218
178
212
192
227
182
177
217
203
204
191
212
215
174
191
166
195
180
276
252
214
203
160
185
239
172
215
242
222
247
148
216
179
222
295
219
243
198
199
193
145
238
225
205
192
152
276
174
204
135
195
171
175
202
209
197
215
159
220
188
181
186
205
151
194
165
212
206
153
221
262
171
210
174
189
228
238
189
214
153
150
212
221
212
147
231
256
213
169
197
194
151
199
168
210
198
201
156
254
189
181
189
175
162
169
197
218
234
185
271
227
232
229
191
202
280
217
190
201
211
212
195
184
181
163
162
195
198
217
173
204
214
247
184
247
157
231
204
193
194
141
169
221
163
192
193
173
206
190
190
186
117
170
187
204
167
132
179
233
202
186
128
212
182
198
224
156
215
237
126
173
224
157
219
158
185
246
220
132
230
208
188
188
231
185
149
210
179
195
271
176
224
205
189
167
251
198
200
201
226
174
152
178
175
208
179
224
197
210
145
282
127
215
264
206
203
198
180
170
120
213
162
197
125
138
189
234
232
116
216
155
207
240
186
188
211
200
199
187
217
233
176
244
217
184
219
211
229
260
105
211
197
215
232
201
239
184
235
183
146
149
217
200
238
246
219
231
162
193
184
200
167
142
198
248
186
200
190
230
248
233
186
201
220
177
229
196
221
251
218
192
129
205
182
148
215
251
125
161
164
196
180
269
199
192
185
197
168
204
216
144
198
242
171
200
199
171
169
193
191
190
148
263
177
229
138
162
177
196
220
166
182
228
207
184
165
234
232
176
174
214
203
251
226
266
151
149
244
162
206
193
206
202
119
200
181
231
177
225
165
194
148
210
193
259
147
141
240
239
140
186
208
207
209
176
209
214
185
213
193
166
231
180
235
201
205
237
151
215
172
209
178
230
179
178
239
209
199
176
168
217
219
196
242
206
142
207
229
171
179
245
245
139
204
152
187
192
143
253
220
190
177
229
219
185
210
221
242
177
226
200
227
234
153
210
233
256
161
207
207
229
100
196
175
260
195
245
210
221
192
166
242
192
215
260
239
194
259
139
193
209
171
266
211
167
223
176
207
182
257
218
180
157
253
222
135
227
180
208
217
182
180
194
217
254
206
174
188
191
192
197
149
202
212
253
205
135
260
138
191
191
197
178
195
194
241
219
200
159
227
229
236
211
191
186
197
275
199
209
175
150
190
185
197
201
169
184
213
184
169
175
232
242
154
186
178
206
194
166
245
197
181
217
202
213
187
189
192
188
187
199
190
168
249
245
257
202
246
195
149
176
264
185
220
141
220
155
246
219
160
218
188
172
244
181
185
238
221
232
244
222
147
182
200
231
195
196
220
170
154
217
213
223
260
236
172
123
237
194
147
203
154
240
206
211
209
192
227
163
250
197
269
168
225
201
181
188
208
195
195
180
214
195
173
193
207
223
136
243
252
198
183
207
182
234
176
226
229
218
134
165
218
165
212
127
280
210
234
234
174
210
190
238
175
230
144
206
165
212
200
246
187
123
182
251
222
122
227
234
244
204
229
219
194
251
233
185
203
210
188
195
265
230
213
221
205
214
211
169
171
258
244
179
193
216
200
196
209
262
247
219
216
202
217
212
175
196
203
270
250
160
212
214
244
174
193
173
166
212
179
241
198
237
224
175
230
157
177
239
220
172
221
186
163
162
232
215
201
199
187
191
231
142
238
211
212
224
184
223
183
171
209
215
158
197
178
173
193
245
171
242
194
267
245
191
184
237
204
216
195
211
193
224
241
268
204
217
206
173
225
204
184
262
183
223
234
228
240
218
212
240
147
237
244
195
186
209
190
211
202
216
180
196
255
209
220
152
187
211
193
172
193
221
166
198
184
230
167
238
194
221
179
219
202
253
180
200
188
216
193
152
159
213
149
208
227
232
144
249
180
185
186
197
225
245
223
140
163
250
70
257
178
188
169
169
221
205
228
196
214
214
210
237
194
225
230
150
148
182
204
208
188
195
204
230
245
147
242
202
165
229
180
217
187
193
230
224
151
229
212
237
228
165
160
192
165
165
264
248
211
225
182
190
237
164
239
220
202
190
163
235
216
197
118
197
209
196
195
180
201
212
233
204
248
223
193
251
135
239
203
121
210
161
118
176
175
209
265
202
196
220
224
220
212
205
205
215
181
236
210
263
158
186
247
213
235
235
202
170
243
239
278
228
176
177
136
181
218
225
222
185
212
213
186
200
235
218
212
221
190
195
161
207
238
247
108
178
161
199
197
198
191
183
195
204
157
201
197
225
226
139
244
212
213
223
258
195
239
231
228
221
255
158
215
204
232
208
221
210
196
197
157
213
169
219
206
219
187
202
148
223
230
140
204
238
183
140
254
156
162
227
222
212
160
212
132
201
181
171
163
181
198
192
236
217
186
198
208
236
224
263
251
152
239
175
207
234
160
154
245
175
253
221
184
147
237
228
177
172
150
190
242
218
205
197
201
165
225
176
204
242
164
139
243
184
178
178
176
171
200
188
166
249
145
215
202
237
207
187
223
233
240
201
239
253
194
220
263
217
187
256
226
218
189
245
188
224
191
212
173
267
225
247
145
235
180
208
191
234
171
213
193
161
195
199
172
211
229
226
232
195
118
211
179
238
230
204
214
176
221
203
277
221
173
188
166
160
158
227
174
181
211
160
215
204
230
180
260
195
204
159
184
228
137
215
192
234
189
203
214
254
189
236
228
207
172
239
192
178
138
161
208
237
166
195
275
213
136
268
222
255
180
242
173
200
194
128
198
181
203
227
179
192
197
183
278
212
142
236
207
205
245
180
267
238
237
121
201
207
215
166
184
224
240
150
228
211
200
215
156
156
186
151
228
204
210
221
217
235
167
237
195
202
197
228
179
208
176
185
171
188
195
251
205
228
239
224
272
222
209
248
210
211
182
248
204
226
193
176
211
173
220
221
220
208
257
257
198
196
134
222
240
212
185
203
195
169
184
174
233
178
217
148
204
213
211
216
214
168
132
221
147
260
181
278
262
169
201
200
199
231
165
182
192
124
196
244
181
199
245
226
235
198
217
243
232
166
211
238
182
223
225
245
211
162
180
231
198
212
213
196
176
170
150
190
148
175
166
234
208
157
195
183
205
210
108
168
227
183
165
159
244
175
188
213
228
199
234
197
132
170
207
187
251
212
159
244
170
174
207
182
178
214
197
210
218
215
211
171
171
169
191
207
210
234
211
217
165
211
228
213
244
200
202
186
273
219
157
122
205
129
193
211
226
163
163
113
236
228
219
218
248
225
219
222
168
202
258
179
201
222
189
217
181
167
270
219
170
191
206
124
202
193
228
152
239
187
184
146
192
187
150
195
219
190
186
212
248
247
173
132
195
238
213
220
182
176
208
142
216
163
253
165
185
220
191
140
232
245
232
160
211
198
110
209
98
213
205
194
157
212
191
159
204
130
220
204
193
201
196
201
209
220
187
182
249
258
242
221
196
145
203
212
243
227
183
183
228
193
178
167
198
230
219
229
209
164
171
204
191
189
231
162
153
177
217
199
169
206
211
234
224
181
170
182
179
207
145
214
135
258
179
258
220
177
144
195
187
230
202
255
254
205
126
226
184
157
180
183
121
204
116
209
206
228
225
177
143
121
230
214
186
217
228
234
243
170
230
209
258
189
195
169
272
151
213
196
196
187
231
175
180
180
263
191
241
173
201
168
205
162
155
189
142
174
230
247
207
149
239
203
158
203
123
137
172
129
142
177
229
263
191
219
241
183
206
141
220
196
218
175
207
169
215
199
248
159
181
214
166
231
266
193
206
227
190
175
255
198
249
218
170
184
163
244
210
243
213
231
182
225
254
233
156
206
222
180
225
202
182
236
252
230
234
253
186
168
212
222
202
216
238
147
149
223
129
204
163
183
239
209
231
220
187
228
169
210
184
265
200
240
183
251
179
224
197
209
165
203
239
181
208
136
191
259
213
182
198
221
156
216
209
210
159
263
182
233
182
221
219
163
203
196
252
241
182
223
214
182
201
231
153
250
174
219
162
157
127
167
185
152
213
259
262
222
182
140
165
198
185
192
149
217
207
243
190
230
207
176
191
227
208
248
205
226
140
251
240
189
217
249
233
256
203
158
248
226
191
189
196
191
176
189
207
208
203
229
235
196
135
190
209
157
148
230
188
174
208
223
165
154
141
226
203
183
202
256
224
184
173
226
184
254
213
172
170
242
225
212
197
199
240
234
224
142
220
189
145
158
259
172
256
201
192
271
151
225
227
239
180
160
203
104
178
167
189
269
266
225
260
159
166
106
235
263
214
228
224
233
242
231
182
196
254
157
235
147
255
166
200
200
190
167
233
225
235
212
241
218
193
218
201
185
255
204
226
271
151
194
234
163
231
187
167
230
194
194
219
173
208
236
190
235
207
266
192
176
182
200
180
128
206
226
210
232
176
159
163
211
225
152
157
239
203
170
201
207
212
212
220
239
245
185
197
234
191
194
151
223
214
202
183
244
192
201
164
177
237
239
196
213
195
197
244
204
197
168
216
212
149
243
155
160
164
147
197
196
199
178
163
154
178
168
152
200
213
177
233
234
169
199
141
249
187
131
208
164
194
210
152
226
176
218
176
190
196
192
174
200
191
241
190
195
134
155
247
217
269
195
193
185
207
209
213
150
175
193
246
227
158
190
187
267
218
192
142
209
202
217
212
222
241
246
240
232
192
215
170
162
201
154
193
205
219
224
240
210
163
190
154
161
144
229
160
245
153
199
184
233
187
212
208
196
264
193
223
147
165
168
206
202
211
196
165
189
190
221
172
120
231
206
245
200
150
177
181
111
262
205
169
226
227
264
237
243
218
222
175
209
226
219
235
233
176
156
195
180
199
208
209
247
175
164
151
208
191
180
215
235
217
203
227
210
259
161
251
190
175
178
248
193
259
181
251
251
211
210
194
185
179
210
164
180
179
265
234
211
243
177
185
238
158
224
148
258
197
290
196
176
226
186
200
198
213
213
163
196
256
177
121
163
139
187
173
186
176
236
151
154
212
151
220
190
187
189
173
253
154
137
219
183
212
216
209
186
180
142
212
197
259
134
243
180
199
182
219
271
202
213
147
144
146
166
166
186
246
251
208
178
150
174
171
169
195
152
201
195
133
197
218
198
163
212
131
211
168
223
239
281
166
196
139
177
189
133
230
198
179
178
191
162
216
237
264
172
185
229
207
234
117
161
188
203
211
191
233
172
157
174
189
142
225
229
242
218
143
170
164
178
191
241
185
234
184
205
187
211
258
158
224
184
188
211
237
190
146
203
156
194
202
192
209
200
209
183
235
145
190
233
165
191
227
246
204
199
218
208
195
160
189
138
192
188
190
144
236
244
158
183
177
226
170
142
200
218
184
135
200
223
206
244
219
210
175
192
183
179
202
187
231
219
174
142
203
198
182
168
173
217
222
200
231
219
204
200
147
187
145
216
220
219
210
223
182
182
163
194
183
112
243
254
202
145
163
153
218
208
281
221
198
200
203
163
196
187
154
246
252
266
279
185
140
202
227
198
260
234
273
203
251
222
224
178
201
270
243
190
212
205
160
207
214
151
160
254
256
182
200
244
241
235
197
177
207
171
229
228
176
248
204
226
179
224
225
176
169
184
167
241
182
208
209
218
166
227
172
196
230
182
210
193
203
230
154
214
217
246
161
245
123
201
205
234
216
167
183
159
234
102
260
231
162
212
181
235
202
243
244
252
211
200
257
215
192
216
257
229
183
234
212
154
176
219
168
204
168
235
188
179
216
112
217
210
178
171
196
261
197
193
174
179
187
208
247
201
244
189
254
191
142
213
171
172
162
237
200
140
172
215
211
127
177
198
198
190
205
233
160
252
218
166
110
243
170
217
222
220
218
237
244
174
216
152
224
176
178
180
160
160
196
190
195
200
227
205
95
188
218
194
209
208
208
245
225
153
217
154
213
167
230
264
240
212
202
186
230
177
212
174
159
201
174
135
183
191
191
177
191
122
179
212
131
192
191
161
204
216
203
193
192
207
163
132
246
149
186
127
201
212
201
254
278
226
222
193
165
129
249
203
205
214
177
231
152
195
196
185
215
208
194
208
225
207
212
263
170
218
192
198
188
239
198
186
198
207
212
252
210
197
173
259
229
223
235
207
222
221
200
203
182
221
210
247
161
268
136
148
205
174
264
180
148
184
188
236
225
241
211
177
238
205
184
213
194
254
153
159
242
163
164
95
195
190
205
163
221
209
220
141
191
213
146
229
214
161
186
139
190
176
192
202
269
147
163
205
143
178
204
235
225
196
222
209
189
196
157
168
195
191
180
170
188
183
206
216
160
201
250
168
175
174
200
217
182
132
211
176
240
213
228
170
225
222
204
130
174
213
148
260
193
271
206
228
176
199
167
184
215
192
199
292
201
236
207
241
129
187
179
192
211
170
220
151
266
253
207
216
167
146
196
198
119
213
221
244
195
236
153
182
164
159
160
189
199
214
248
229
125
182
206
226
273
242
174
153
131
192
179
169
218
214
206
188
187
171
242
253
213
190
218
194
220
208
181
178
246
150
207
188
169
208
216
245
246
204
196
228
215
173
200
193
221
271
180
224
190
180
131
225
208
233
169
200
233
218
181
234
159
227
193
190
201
249
234
203
157
198
190
218
196
258
237
190
259
255
172
274
216
186
222
204
224
229
157
206
274
205
190
196
154
157
145
222
258
193
170
252
202
192
201
187
230
190
212
213
143
209
230
203
239
152
226
266
169
207
206
279
132
186
190
199
221
232
189
216
209
185
187
108
202
224
209
208
198
209
182
224
181
197
236
136
197
159
124
120
213
218
217
263
219
163
193
188
258
154
235
205
247
228
155
226
247
182
251
122
216
170
263
133
220
208
262
201
175
201
150
191
236
173
208
208
238
245
196
126
251
150
149
200
229
256
224
225
159
215
211
198
204
122
185
192
201
195
276
132
180
185
239
236
207
187
170
204
168
190
149
235
174
236
195
245
275
238
172
222
177
199
199
192
173
235
189
237
170
228
168
175
214
205
193
190
190
231
201
190
224
184
185
181
197
173
229
202
205
209
205
144
197
253
192
246
131
249
162
170
182
195
226
188
216
188
197
260
168
210
181
210
167
179
178
240
189
235
227
230
165
248
203
206
211
220
212
250
231
205
174
162
194
226
138
200
251
217
197
142
122
207
231
175
199
203
179
239
214
238
208
255
173
211
223
174
165
233
236
193
194
197
170
196
131
251
129
230
162
140
217
209
221
189
171
186
213
166
197
214
176
195
257
221
195
227
140
165
210
206
198
190
169
198
233
209
217
155
182
204
199
179
183
232
196
264
230
226
184
236
177
202
81
191
166
185
186
174
223
219
249
222
210
239
216
235
221
245
189
270
205
217
148
236
180
193
222
190
266
209
210
209
164
210
145
185
186
176
204
199
236
211
223
205
263
270
248
231
189
198
167
216
146
173
219
157
210
182
157
238
175
195
205
193
190
198
191
191
217
120
257
265
232
230
199
210
207
231
207
159
268
246
175
171
180
241
175
193
218
200
251
233
170
262
201
170
122
242
199
265
222
240
191
219
186
191
242
214
260
145
202
163
187
188
230
181
238
158
176
280
322
163
145
189
180
201
174
156
238
244
181
196
185
242
160
180
227
231
200
213
293
175
182
138
220
174
203
203
220
214
160
134
184
168
210
224
189
276
249
181
190
187
174
204
245
232
193
231
218
256
153
186
183
189
138
146
162
229
229
201
168
160
155
238
210
244
239
191
204
209
223
195
179
231
199
220
161
160
161
172
187
191
207
219
176
244
195
216
186
221
240
225
177
188
177
147
146
224
147
228
150
215
169
170
235
128
207
212
203
204
211
159
202
161
176
178
197
173
207
203
196
219
234
204
206
269
212
232
245
194
147
177
198
195
198
186
176
188
203
189
157
184
249
227
200
214
209
118
176
163
224
168
229
182
206
200
247
202
214
209
182
230
175
254
192
144
161
149
221
233
196
215
195
175
216
183
164
171
265
218
202
225
226
198
177
202
184
239
208
177
191
199
223
193
235
171
171
188
170
191
193
242
185
219
182
163
162
226
222
222
175
187
196
181
205
240
193
190
134
198
140
149
201
216
204
162
174
194
220
177
169
141
168
205
175
148
237
233
170
224
206
251
235
236
200
201
247
239
234
184
219
167
211
187
210
189
213
184
151
187
147
265
233
217
179
186
167
143
142
110
214
187
202
217
183
169
245
187
209
209
236
168
143
217
167
247
218
250
219
219
142
177
177
204
198
207
185
148
216
214
231
183
210
176
199
241
172
191
216
151
230
192
199
222
272
198
214
227
193
214
200
205
205
152
206
210
189
190
165
196
216
279
259
205
180
215
168
152
232
160
254
144
255
243
185
226
134
220
236
173
135
154
210
229
221
180
154
278
250
204
181
242
173
236
180
256
111
176
239
213
152
241
189
185
172
205
218
174
175
198
162
215
209
209
194
246
251
216
223
199
161
161
194
174
113
182
239
167
259
217
234
198
173
230
261
238
213
210
103
256
218
194
159
240
234
160
177
174
128
115
187
192
250
248
166
215
149
166
243
214
198
207
224
223
185
221
268
160
195
207
200
170
239
180
184
188
245
203
195
184
127
224
193
198
177
184
172
246
236
261
234
227
212
264
194
182
212
203
146
157
157
140
133
204
156
200
196
123
181
174
239
211
280
134
212
228
236
202
236
186
196
179
198
188
145
164
230
223
171
210
237
220
215
231
170
203
221
169
220
178
216
220
142
222
176
175
249
172
222
223
166
208
163
181
191
181
204
187
189
165
195
157
244
214
207
163
233
219
211
192
185
239
249
222
229
223
167
158
195
220
148
154
217
204
222
184
227
194
256
275
234
178
163
177
226
260
219
223
141
246
154
220
151
189
200
210
164
234
190
224
175
238
204
234
165
139
177
222
195
171
184
168
201
127
194
202
217
243
152
192
235
96
226
225
210
257
195
201
290
216
192
215
239
126
191
233
230
180
208
221
229
184
224
222
230
180
190
130
227
164
217
223
178
245
234
171
241
167
151
198
165
196
193
200
209
199
201
256
211
209
140
209
220
223
159
207
155
205
182
139
242
174
164
189
169
174
165
268
222
160
196
239
177
134
202
219
226
215
173
249
170
194
194
246
161
218
193
284
176
220
284
181
213
213
220
154
138
256
199
217
186
228
192
259
115
170
166
158
212
229
246
206
252
190
172
183
211
184
166
261
244
210
206
286
235
211
230
178
199
120
169
253
128
209
253
262
204
193
192
190
165
198
150
179
203
155
242
148
190
194
222
206
176
152
149
218
277
152
171
190
226
193
197
147
241
269
253
155
165
210
177
221
186
239
234
176
200
198
186
219
255
235
177
265
184
193
151
234
192
200
190
217
195
195
221
216
139
252
261
170
127
227
216
187
183
188
208
156
150
167
184
222
218
254
191
161
225
242
196
235
199
192
183
239
165
205
203
228
179
225
150
238
178
218
244
204
283
191
53
227
202
167
225
221
229
229
177
203
250
253
219
135
219
142
160
149
196
208
199
186
230
236
156
204
240
203
215
239
223
132
215
189
261
173
228
227
232
168
241
229
211
179
154
206
206
174
202
145
139
219
141
230
226
218
182
183
182
170
204
164
188
235
188
219
179
193
178
247
181
167
232
218
260
184
208
222
243
219
215
263
183
279
270
210
177
176
179
185
127
220
265
218
186
173
185
190
197
231
247
163
207
183
173
206
267
219
147
213
150
178
220
218
269
259
232
138
187
228
165
179
230
220
123
204
197
194
180
166
209
226
210
233
215
261
196
170
235
214
239
241
226
219
209
167
236
185
161
172
195
214
221
204
206
213
161
231
206
226
163
174
177
183
225
156
223
183
208
192
191
150
229
193
168
209
213
174
217
185
185
217
201
206
176
193
193
210
227
189
163
205
220
164
154
251
168
236
252
221
201
196
231
257
234
149
153
176
176
228
143
194
254
170
186
216
232
183
199
121
197
201
229
236
269
207
184
174
236
185
151
229
148
213
199
239
222
195
239
169
145
221
191
123
209
214
206
192
196
194
236
214
214
160
242
171
263
255
252
199
171
269
199
137
243
245
240
176
252
177
213
220
248
241
247
217
214
224
208
268
91
170
214
199
201
152
195
199
191
219
254
213
201
216
192
156
232
204
211
280
176
255
188
172
215
184
149
251
220
299
269
245
164
173
223
169
214
218
238
238
233
184
213
227
199
182
202
279
198
219
175
178
199
203
192
205
267
254
199
194
170
227
252
214
213
161
170
186
183
179
229
242
210
178
184
221
201
208
146
224
168
212
211
270
209
208
222
207
249
242
219
189
174
203
212
261
177
249
229
165
191
252
213
213
174
198
228
253
218
162
211
199
273
183
199
227
248
210
194
170
230
223
172
173
228
146
209
206
197
162
235
176
212
161
110
201
176
210
206
235
178
216
202
215
215
159
154
195
173
245
171
225
219
234
197
148
195
204
163
223
204
219
213
244
172
167
138
129
213
219
200
183
258
169
210
173
234
150
199
250
145
206
197
231
236
231
183
200
181
240
246
189
203
173
232
215
117
228
179
242
225
155
229
180
175
164
246
216
193
203
227
160
163
210
238
170
197
197
243
203
193
208
229
197
241
175
185
188
227
176
195
195
196
207
216
124
231
156
229
238
225
192
267
221
231
200
257
227
212
177
168
293
161
177
186
182
236
222
191
230
252
256
172
175
207
223
240
217
183
198
193
201
204
224
195
187
256
241
189
212
226
210
161
198
147
211
199
248
210
244
138
171
229
219
197
207
223
253
217
164
186
199
218
229
226
218
192
219
118
218
168
178
220
190
274
170
162
210
216
217
235
255
241
224
226
247
248
211
206
228
266
140
205
188
217
177
235
225
165
201
179
199
169
199
216
227
234
226
204
232
164
190
205
191
224
144
179
196
188
170
237
215
190
102
185
203
162
223
207
140
202
226
258
170
146
212
189
188
183
201
189
241
148
200
182
237
264
247
175
205
162
135
205
255
180
182
178
150
291
177
222
175
205
182
154
196
218
166
189
213
203
213
193
204
201
202
164
194
213
242
189
158
217
199
198
228
186
125
181
202
172
182
171
216
222
201
226
244
236
225
192
249
198
265
236
216
214
207
208
160
170
201
169
203
185
209
232
207
222
179
221
218
194
132
167
229
164
199
209
223
168
209
224
197
213
241
225
238
144
153
188
170
257
223
199
191
234
209
207
180
189
163
229
198
231
200
174
237
210
178
184
167
232
177
230
200
161
223
227
269
187
205
166
172
254
243
116
199
231
144
211
233
205
183
247
150
186
221
159
228
198
214
199
214
187
221
148
174
194
187
232
253
186
187
212
249
189
253
239
219
171
207
225
160
228
144
219
173
169
227
218
158
273
224
230
205
197
201
242
234
122
212
201
220
153
187
214
173
196
245
168
154
150
159
228
257
130
194
158
183
206
233
163
209
155
170
215
158
220
192
134
188
272
228
185
204
128
270
181
186
197
227
216
227
223
224
186
218
188
200
137
155
112
231
252
198
191
225
234
190
226
150
230
228
199
239
209
152
220
142
224
204
220
202
240
204
231
189
236
204
207
197
183
259
207
151
176
244
200
166
161
218
184
211
175
141
192
216
276
160
207
202
210
234
208
282
227
169
231
225
183
251
221
269
204
185
205
162
252
173
235
159
193
190
213
191
185
195
162
211
113
214
189
185
195
216
189
210
152
165
205
173
186
175
199
169
227
198
182
166
221
178
181
205
221
194
129
223
195
174
261
226
197
186
201
189
246
98
220
150
207
151
231
211
157
191
196
169
168
157
198
241
221
227
138
202
159
204
199
178
217
178
180
232
188
137
164
207
231
202
190
120
187
220
234
175
190
197
256
160
284
215
213
129
138
217
218
203
175
259
228
270
182
191
213
200
213
256
183
177
245
158
186
162
202
226
228
169
202
208
237
212
207
209
130
208
199
182
183
162
182
239
216
201
266
172
185
193
161
195
220
153
201
188
158
250
178
139
172
169
230
201
157
211
256
236
222
214
225
210
275
174
203
148
215
222
231
225
240
158
192
203
231
164
199
226
246
218
217
201
233
216
163
190
208
231
243
246
220
151
238
234
215
175
260
165
211
204
188
224
169
240
118
222
217
188
198
170
132
250
156
218
202
249
204
193
143
184
236
202
207
188
151
138
239
222
214
217
206
175
185
166
196
153
225
174
210
199
185
182
193
148
217
153
207
169
214
214
162
184
207
187
198
174
245
251
163
219
182
201
135
266
209
167
255
136
223
202
120
204
193
237
235
178
172
259
213
214
196
188
234
149
206
166
213
217
181
239
204
183
186
225
163
200
196
206
175
192
199
228
167
213
161
207
182
133
210
196
203
213
240
193
138
166
194
247
165
249
194
185
198
191
163
174
121
150
222
260
261
148
196
261
204
200
192
211
252
159
171
192
211
207
228
216
195
220
165
168
218
200
244
218
225
190
211
236
244
160
211
134
236
191
218
281
153
155
215
196
147
172
225
188
158
200
222
169
220
211
112
205
201
182
138
153
175
244
245
189
213
216
181
176
192
204
181
189
279
207
283
161
181
229
267
203
169
213
194
229
248
193
209
165
220
191
149
228
205
251
202
136
163
190
196
218
201
134
181
181
175
275
197
197
197
212
194
171
202
201
170
230
233
194
204
134
246
248
267
209
182
215
168
213
200
218
164
238
199
241
150
176
193
249
173
226
186
206
168
159
165
254
200
198
189
121
168
168
169
161
197
205
166
166
175
160
198
170
211
181
162
148
210
219
196
173
182
177
218
253
224
217
143
163
204
207
152
207
206
258
160
208
203
203
174
180
134
218
219
205
183
193
237
190
147
195
193
214
182
236
245
147
239
231
237
268
204
234
205
191
190
199
174
213
152
229
146
151
198
169
217
185
198
214
167
241
281
198
238
234
218
204
213
209
245
123
158
71
197
180
224
196
253
231
227
180
193
179
261
220
258
178
139
143
140
196
210
206
261
175
212
148
163
245
106
222
223
194
236
179
197
227
149
162
244
253
194
269
201
200
219
193
222
187
161
255
177
137
209
237
183
200
167
179
222
188
154
243
224
294
148
199
221
207
232
223
205
203
198
215
252
267
161
167
253
223
229
135
189
147
242
236
199
261
229
198
201
220
195
169
208
182
240
206
195
219
160
193
223
202
186
260
211
180
198
120
219
235
178
242
224
227
183
202
188
231
207
192
161
209
162
68
163
158
225
223
175
220
191
235
181
224
152
197
207
184
240
163
195
227
205
189
216
230
196
192
206
195
94
223
177
196
131
164
182
256
194
132
216
221
214
179
204
202
239
146
177
195
157
230
180
245
191
189
250
261
244
197
219
177
161
233
203
198
236
196
175
190
209
179
223
270
214
171
189
204
187
198
216
192
180
202
187
170
201
191
190
230
205
252
265
215
192
157
154
243
223
205
201
190
205
210
177
179
186
174
258
207
222
186
160
250
220
156
250
196
246
211
171
194
215
213
242
183
194
197
225
121
183
246
197
190
208
189
186
99
185
192
238
196
180
163
217
185
196
143
178
203
205
216
172
197
203
184
264
182
209
166
122
196
214
259
164
209
220
236
236
244
211
202
210
253
242
172
275
238
237
218
162
189
191
221
151
220
154
175
141
142
179
231
204
256
240
196
169
249
176
216
224
189
147
205
173
161
136
211
218
257
247
281
149
211
220
159
185
221
208
186
228
179
219
191
207
172
186
204
200
235
206
191
150
229
170
180
209
231
173
189
147
245
171
211
189
190
192
255
140
204
211
245
227
203
223
174
191
210
232
222
267
210
155
178
254
232
224
213
192
201
173
206
199
193
202
232
244
232
209
152
192
236
225
222
254
175
252
144
205
271
244
174
204
291
181
231
215
193
156
246
170
192
214
231
208
249
171
226
191
155
237
185
230
224
198
186
190
217
187
207
190
232
206
222
224
177
205
177
215
246
198
213
166
213
162
252
187
152
275
183
264
222
229
177
176
200
199
172
187
191
143
174
167
251
241
170
150
203
270
219
195
243
249
215
166
229
229
147
136
250
256
125
216
198
211
232
188
206
198
135
173
197
153
170
273
218
138
219
242
229
248
168
263
191
207
250
152
179
195
203
269
221
257
182
222
211
182
230
187
170
225
173
188
218
200
199
211
199
201
175
259
227
151
152
227
181
146
243
188
178
220
229
143
215
228
260
226
210
163
176
168
203
248
154
209
219
204
154
174
250
144
219
186
179
195
203
190
294
154
223
213
181
209
171
149
191
266
165
173
221
214
214
203
144
189
235
256
223
192
159
242
186
229
213
254
202
145
223
231
219
201
167
190
139
192
202
198
225
200
264
170
199
206
240
200
197
207
191
157
220
187
219
195
227
198
249
154
170
213
229
184
209
140
189
177
171
200
197
223
149
247
179
258
238
223
179
131
225
170
179
218
233
104
155
184
179
188
214
217
182
215
233
202
198
218
191
151
178
161
165
231
92
200
246
225
241
152
185
242
155
252
226
183
198
226
142
223
195
148
243
190
175
118
210
182
153
185
228
209
255
185
230
143
123
164
238
193
179
210
185
258
183
184
180
216
152
190
208
238
221
195
228
226
201
194
148
205
180
142
200
181
182
201
191
203
228
243
185
231
158
209
221
183
195
155
213
207
260
196
217
228
225
133
187
165
247
180
156
208
141
225
142
203
194
213
164
165
235
128
183
227
171
262
256
181
155
252
226
268
200
220
118
249
244
164
242
233
138
214
185
199
244
225
176
212
190
219
215
209
187
238
186
176
190
204
180
149
186
195
185
187
213
225
256
229
187
223
213
194
158
238
194
256
177
226
251
205
185
195
205
185
213
197
144
250
234
218
224
175
196
142
176
217
159
215
218
215
203
209
216
159
246
208
190
196
228
162
189
173
198
227
195
227
215
134
230
201
187
232
197
205
256
239
173
178
122
178
160
210
235
193
209
159
177
152
248
193
205
216
219
173
206
190
195
160
193
209
148
175
199
231
234
214
200
111
206
218
226
233
238
194
223
234
281
210
243
111
214
279
239
171
197
189
199
190
141
174
164
200
213
254
204
195
234
231
175
145
186
159
225
222
154
241
225
141
220
187
218
179
202
206
176
244
242
218
222
257
153
169
209
217
208
222
219
202
170
125
197
165
163
224
245
260
125
237
208
165
256
199
248
249
225
199
207
202
210
211
231
155
181
256
219
176
210
172
224
206
152
211
170
212
189
223
197
205
268
164
238
202
211
201
203
202
271
203
209
221
189
197
205
206
179
192
198
211
211
245
207
219
150
210
226
200
225
218
160
246
253
296
217
200
194
192
188
193
163
206
211
180
251
243
231
173
188
190
184
220
180
219
218
207
216
242
207
167
159
179
212
231
234
188
208
242
220
171
227
243
262
185
195
169
238
173
161
166
247
130
242
229
171
147
194
158
176
220
201
164
251
235
205
204
80
209
158
165
226
224
222
199
231
203
217
209
173
200
179
161
182
251
172
162
192
198
163
228
209
175
194
248
259
199
257
233
199
209
192
232
220
230
190
238
183
180
215
189
230
172
201
254
201
231
175
158
160
172
146
258
193
217
171
184
156
218
236
190
197
246
151
165
103
185
95
239
154
240
249
231
117
222
178
209
200
151
218
212
214
232
182
239
226
192
189
208
184
216
185
170
233
222
170
258
243
219
253
253
199
212
183
168
229
201
180
188
163
190
184
240
188
144
230
175
159
224
176
228
169
236
209
228
245
219
139
235
216
245
235
197
259
145
200
153
220
205
157
252
183
133
157
152
154
201
167
212
227
245
179
195
176
144
268
212
155
145
203
203
176
183
184
230
168
170
207
201
224
209
199
177
156
198
213
189
216
165
193
265
245
185
243
234
177
181
156
176
177
252
220
228
207
188
228
190
232
260
212
233
276
161
179
204
188
185
190
179
190
244
198
188
181
188
210
223
211
218
227
185
168
205
160
198
167
186
192
206
135
211
179
232
169
211
261
153
228
227
272
212
172
219
220
241
166
165
169
196
144
150
228
165
187
192
177
195
250
200
205
161
219
176
161
189
180
189
164
186
169
166
249
163
163
269
180
193
172
176
221
192
195
235
138
221
253
242
259
190
255
198
204
234
215
243
210
172
183
242
225
161
165
197
170
207
184
227
137
210
280
215
207
203
217
172
236
189
180
181
166
188
201
285
167
182
234
229
189
173
179
251
233
197
154
178
166
223
141
262
239
212
186
201
204
107
176
233
137
192
193
222
187
238
164
132
249
221
158
206
249
262
210
190
155
272
213
153
239
180
190
158
174
172
307
250
145
220
190
217
230
204
133
202
165
133
202
257
228
239
160
141
209
199
199
282
223
184
178
192
170
161
238
166
187
173
256
146
161
161
264
222
216
199
197
226
211
169
208
198
206
210
98
170
212
159
245
165
246
217
239
163
190
195
108
219
216
229
200
229
165
224
241
205
213
212
197
174
128
222
214
176
184
202
214
148
231
249
173
183
210
225
189
229
162
223
204
145
243
169
144
211
201
265
216
228
179
191
188
193
226
197
268
235
215
134
168
173
134
250
163
213
184
252
159
215
198
242
227
165
151
230
215
170
153
208
188
155
243
167
190
140
184
200
219
161
186
186
180
181
261
186
153
214
150
191
248
170
219
132
176
213
135
198
220
175
218
184
237
186
144
224
207
164
197
230
255
177
187
181
254
170
250
262
148
229
183
140
196
216
243
178
264
200
273
233
163
226
129
204
274
189
233
211
221
237
146
207
193
254
196
229
271
259
219
227
216
160
218
156
223
141
250
182
201
259
194
185
206
153
143
234
178
232
175
148
219
261
170
262
244
213
174
241
221
232
159
253
214
210
233
135
160
226
175
194
235
170
210
206
259
165
175
236
264
172
229
226
150
204
203
221
181
239
202
201
279
153
150
181
197
146
150
202
252
172
119
208
238
233
215
142
159
245
257
228
182
181
239
194
225
212
195
256
209
208
217
222
242
158
153
166
225
168
145
191
241
155
144
255
211
250
214
228
200
245
204
195
189
122
245
174
178
225
230
127
185
180
205
207
173
248
181
209
227
174
187
164
165
136
230
223
158
188
262
233
207
149
211
176
173
194
221
222
147
222
224
198
181
170
203
165
178
170
192
222
224
203
174
190
247
211
155
158
242
160
174
244
203
229
99
217
199
128
141
228
164
221
210
131
254
194
214
255
168
235
176
203
178
237
134
241
186
170
191
169
270
194
232
172
178
232
214
179
259
196
164
185
255
203
208
226
228
207
165
178
227
220
253
260
148
144
234
195
149
188
171
194
139
230
201
198
264
225
168
193
207
137
208
201
201
223
204
226
216
206
153
255
225
183
199
208
168
198
197
178
209
186
171
228
166
234
189
212
240
233
270
150
252
167
164
173
207
201
133
241
191
192
186
209
204
190
151
226
220
206
182
164
211
197
201
179
238
179
218
155
186
192
225
144
215
137
202
246
211
144
205
154
210
189
181
153
190
213
111
233
181
182
270
228
186
229
204
215
273
215
195
238
191
255
184
209
238
238
248
139
190
265
198
196
239
181
177
214
202
228
206
183
202
171
277
193
217
186
179
167
183
243
217
181
145
227
193
221
204
196
196
226
196
164
162
192
194
184
209
194
174
209
163
202
183
183
256
193
241
248
197
144
241
165
101
194
227
208
215
230
249
232
166
174
181
201
222
178
201
169
208
189
195
190
171
171
123
188
205
196
144
142
192
198
183
189
190
192
208
101
193
228
207
262
192
209
196
185
227
214
206
229
205
173
157
173
168
213
208
210
217
177
207
248
198
237
253
194
184
205
250
238
172
129
190
187
209
195
164
155
174
196
208
221
201
190
218
227
193
161
202
235
134
198
144
173
173
169
142
200
234
213
282
153
215
214
217
113
119
198
231
168
184
217
236
184
219
146
201
237
235
137
198
198
203
157
196
235
185
180
216
179
145
210
155
192
208
258
204
149
186
188
191
241
140
224
213
133
227
227
219
223
238
195
239
187
163
183
222
213
223
267
241
161
210
151
176
217
211
168
180
214
222
205
181
231
181
207
170
180
207
226
175
193
178
209
193
251
205
209
248
216
211
175
224
265
206
283
192
196
191
113
229
128
203
171
186
198
194
219
163
178
238
206
276
177
225
263
223
216
183
231
143
201
187
166
223
207
252
226
227
231
202
194
190
231
206
246
187
178
205
227
244
165
190
263
232
141
196
168
155
201
235
181
167
234
202
221
218
209
215
202
198
190
181
217
203
135
210
170
191
154
196
181
157
147
204
181
215
172
212
224
109
134
139
198
211
166
205
228
258
222
210
175
199
213
195
163
203
203
222
203
193
216
211
159
139
182
164
245
219
240
224
113
220
172
251
187
204
187
213
134
179
173
186
166
174
185
231
141
204
167
235
183
153
192
257
188
145
180
131
145
269
182
211
165
251
163
162
211
162
175
156
167
166
247
194
208
209
156
195
226
142
201
233
204
172
203
150
161
183
218
193
174
206
197
184
184
236
221
178
217
184
205
210
158
188
217
235
159
187
197
176
215
180
154
178
177
210
190
173
190
216
193
219
270
162
132
222
160
168
189
201
208
198
131
202
239
199
155
227
190
182
214
232
189
182
193
211
199
212
163
209
239
267
174
219
195
196
192
247
223
147
225
231
153
241
189
245
184
229
156
183
199
111
225
217
215
236
228
204
220
157
210
246
234
238
155
212
187
141
210
194
242
152
171
195
220
249
239
234
182
236
247
166
194
139
184
213
238
164
180
181
223
170
201
161
199
226
217
209
220
188
176
203
212
262
161
239
205
264
197
217
166
270
193
202
180
227
204
197
183
189
170
125
239
242
186
250
225
204
165
151
129
247
207
268
171
204
259
178
230
240
203
231
164
249
220
217
250
193
214
151
200
179
199
174
169
158
228
177
258
185
248
221
230
193
218
145
158
163
188
211
162
208
260
192
273
233
174
231
208
221
176
179
210
166
201
159
213
202
188
194
232
260
229
196
219
167
198
182
169
251
198
218
168
231
101
133
134
205
142
128
145
174
204
240
232
206
195
203
282
203
221
203
164
171
208
184
124
233
231
195
267
150
242
225
292
221
187
175
171
174
168
163
201
136
233
230
217
253
189
246
179
127
225
198
201
194
149
177
195
189
206
168
183
254
213
179
170
192
242
157
117
205
199
210
242
170
196
121
198
220
191
225
175
208
162
182
251
204
249
143
196
209
248
182
187
205
239
188
136
207
181
180
233
258
196
143
197
192
166
239
248
192
223
235
240
211
172
208
169
204
245
201
141
203
199
210
176
241
235
139
198
116
186
184
179
169
201
188
193
190
196
232
197
237
145
217
191
196
197
240
194
237
225
208
177
209
183
197
141
175
210
238
191
187
144
241
212
231
272
157
249
160
253
187
198
178
223
202
134
188
181
221
189
201
224
226
196
189
203
204
208
238
168
227
204
214
246
257
193
174
208
169
167
227
194
157
164
194
263
235
199
232
250
203
183
196
203
236
218
202
133
181
255
187
128
214
179
190
210
253
210
168
164
222
185
196
198
268
203
258
189
206
200
205
159
200
179
186
214
149
172
265
169
191
184
187
251
179
237
229
196
211
202
265
263
231
242
179
167
187
223
173
227
154
158
247
159
191
224
170
218
159
119
205
153
180
210
211
188
277
193
202
214
214
211
194
179
190
209
251
224
219
286
186
201
199
181
184
270
173
204
241
194
215
248
186
189
225
250
222
196
258
261
156
131
199
198
245
211
188
264
205
234
169
262
170
192
203
217
183
217
171
263
184
176
227
184
211
234
221
202
265
189
275
231
242
214
153
191
229
219
176
184
216
203
186
134
182
247
156
206
243
214
190
170
198
172
235
179
206
200
173
179
154
234
174
154
162
216
231
191
223
150
207
179
175
192
157
172
261
149
236
193
159
195
231
195
225
252
207
207
232
168
238
191
216
274
181
169
165
200
160
205
165
184
227
197
111
229
190
191
154
155
208
174
246
200
195
238
195
281
102
187
251
261
262
167
206
214
179
225
180
153
194
229
226
185
254
197
219
228
191
240
131
219
209
201
141
160
228
236
253
232
200
245
192
191
225
234
180
218
116
189
260
168
203
127
177
258
188
142
257
225
198
207
271
261
213
187
212
246
169
195
203
143
223
254
158
266
175
199
204
229
135
156
240
112
151
195
212
159
193
139
205
171
191
136
210
145
201
201
251
217
162
196
192
187
234
235
210
202
185
194
218
165
216
188
199
212
181
98
214
222
163
192
237
193
231
228
172
175
182
144
235
173
120
196
194
273
190
172
199
211
149
162
220
192
217
214
180
203
186
231
204
163
217
148
184
177
172
224
142
232
182
156
187
242
179
236
302
182
229
214
193
188
195
152
263
214
149
212
276
172
149
189
170
127
245
244
246
201
181
232
198
171
285
178
229
204
247
256
165
182
198
185
207
238
209
172
217
230
179
175
195
201
244
184
201
239
211
217
152
235
217
205
165
175
191
243
236
124
178
195
197
205
199
236
174
201
199
182
212
118
229
245
213
192
201
205
158
150
211
195
185
230
199
220
201
147
211
167
227
186
173
180
170
177
231
222
187
249
221
236
131
186
152
226
188
232
205
214
96
165
152
250
196
191
211
167
222
252
158
180
206
206
153
234
142
223
242
176
178
156
169
190
200
251
230
210
212
149
267
272
232
205
266
211
187
209
206
168
197
206
163
210
202
169
231
263
230
238
156
268
212
238
183
176
221
206
240
206
190
214
213
222
157
209
204
224
210
223
199
179
230
179
221
186
206
235
153
217
113
249
193
191
143
182
175
225
228
242
234
208
223
201
229
196
176
228
269
189
249
188
224
110
253
238
243
191
193
236
237
195
205
154
145
158
184
230
226
204
263
218
224
203
196
158
166
166
230
230
215
224
215
200
211
220
124
187
155
226
195
241
210
191
215
166
218
156
200
215
198
206
146
206
215
242
225
200
198
220
151
170
170
219
142
211
188
183
193
216
189
242
154
189
213
221
212
224
178
211
205
210
213
242
210
140
236
169
163
236
207
262
130
141
232
302
203
258
224
174
231
225
266
234
205
152
168
168
209
248
202
259
205
224
122
241
275
203
211
188
196
265
208
137
181
209
162
189
218
226
201
236
175
193
203
190
207
199
195
141
195
180
244
278
221
204
186
216
237
184
158
160
188
268
201
196
172
189
242
256
202
130
212
207
263
152
207
150
235
187
280
213
268
156
144
170
284
170
228
251
269
166
209
200
224
220
216
178
116
197
166
268
247
188
175
203
205
165
149
207
234
205
151
192
184
143
156
233
181
194
226
199
209
133
214
177
213
208
172
158
219
202
207
246
204
122
134
208
234
152
215
235
202
228
193
210
220
206
210
213
221
204
224
164
212
203
202
139
202
226
131
177
211
243
178
184
195
202
182
233
207
192
226
206
91
158
206
202
257
215
188
226
194
204
233
177
175
204
193
151
216
169
200
203
230
164
234
139
157
210
136
228
172
184
217
201
239
219
261
215
201
250
142
153
202
214
160
192
170
215
202
165
214
196
190
157
276
169
234
169
203
213
185
205
219
239
240
248
152
211
238
234
201
176
213
173
191
170
115
234
138
243
128
221
175
225
232
156
149
213
221
243
275
258
181
238
140
207
210
201
179
149
182
176
190
168
204
208
137
253
176
154
200
191
225
123
166
150
221
145
208
193
221
182
169
169
264
123
199
178
189
244
209
184
181
201
223
231
194
212
187
229
231
237
184
211
207
193
210
247
249
185
193
218
206
219
166
196
190
229
205
189
217
192
165
223
241
197
204
174
181
158
142
215
141
219
229
177
228
237
182
170
238
233
247
193
231
202
190
227
189
203
204
110
174
195
199
201
270
143
190
238
193
232
205
202
210
197
222
188
247
196
143
229
178
214
236
243
170
239
197
253
170
230
195
225
203
251
191
179
139
142
242
249
195
214
227
195
204
213
152
194
171
192
188
218
212
210
211
163
239
207
244
215
157
220
204
204
231
212
166
146
256
233
150
191
201
244
120
244
207
241
234
189
239
147
258
231
227
166
137
172
154
186
270
166
204
209
187
183
192
202
201
214
227
182
266
181
236
181
198
178
163
214
166
248
208
195
207
223
181
218
171
259
235
217
186
175
150
172
207
213
171
147
211
194
232
157
192
182
234
252
204
245
212
208
187
209
144
247
212
148
211
204
165
203
212
181
193
193
154
203
262
196
235
243
180
217
207
170
208
244
235
221
159
197
261
185
172
203
226
129
201
175
167
185
191
207
242
149
238
246
165
237
184
255
187
211
160
162
230
151
217
207
161
200
211
186
201
178
188
251
195
146
143
151
172
203
188
227
215
229
246
150
158
169
171
249
225
160
219
143
244
244
176
225
206
180
221
189
182
223
207
161
275
202
167
251
226
194
203
232
210
245
161
183
249
239
204
222
172
181
235
210
189
246
200
209
175
266
146
181
190
155
223
264
218
209
194
186
173
238
158
266
197
205
171
252
152
235
168
184
159
227
233
176
231
109
247
238
233
180
214
237
217
195
204
239
225
224
238
214
236
177
187
286
170
130
194
226
243
206
204
233
252
139
200
197
210
198
239
151
199
184
224
177
148
232
186
210
182
115
220
185
207
237
243
223
194
109
219
207
141
245
191
204
216
165
175
206
152
256
215
199
158
209
153
202
229
221
153
253
211
237
147
232
202
227
176
217
240
94
200
188
167
185
189
171
179
246
212
235
177
234
198
174
198
161
223
225
228
245
236
171
169
180
190
160
214
132
208
184
227
210
214
208
241
217
193
206
179
128
254
314
175
191
149
281
282
118
179
218
239
221
129
176
249
176
213
175
290
229
170
222
180
223
110
211
221
222
225
210
223
199
241
238
230
114
232
189
211
165
190
230
239
199
226
178
166
231
172
220
208
214
191
121
200
205
204
215
184
127
237
192
207
254
210
198
180
169
159
210
170
206
235
190
209
185
205
256
234
200
186
229
202
222
132
168
161
209
214
201
220
200
240
210
228
211
182
198
161
218
146
193
236
243
193
236
253
209
225
212
199
203
237
194
217
177
196
238
190
227
166
261
199
185
231
257
175
253
232
214
231
167
233
194
206
213
239
220
182
177
299
237
214
262
164
200
236
172
206
209
258
201
209
208
212
154
239
197
185
224
192
242
238
237
173
200
197
201
233
131
187
169
185
198
269
260
209
254
238
153
258
199
131
203
290
191
238
215
199
205
254
219
183
189
174
209
210
173
225
183
238
224
231
194
217
172
186
179
229
208
227
172
201
166
222
171
124
119
210
216
221
208
226
220
168
188
146
237
179
242
188
220
169
183
220
238
231
165
228
215
160
178
194
177
169
130
176
221
215
204
190
135
253
179
157
178
210
197
217
227
190
172
106
152
125
166
222
177
188
171
152
201
198
125
157
200
186
165
206
172
264
165
177
216
209
133
171
194
167
180
237
193
140
204
165
238
212
156
223
204
156
199
198
241
238
236
197
201
196
253
151
179
217
244
253
176
250
177
168
213
178
213
246
230
218
276
205
164
227
228
184
245
219
193
260
137
201
200
259
213
155
168
209
206
183
232
195
174
209
174
187
189
127
211
180
163
243
203
195
156
240
213
171
200
223
223
235
214
196
185
258
266
171
204
231
189
257
201
168
201
138
191
213
144
258
208
167
189
224
209
137
237
231
193
232
206
160
210
152
191
247
146
183
217
239
222
159
243
197
245
244
171
222
164
238
212
175
206
240
194
255
225
133
207
227
196
173
239
216
183
214
228
191
200
165
251
241
247
197
208
123
228
197
193
221
196
155
232
210
249
189
153
199
201
138
153
212
259
132
168
142
188
152
163
224
184
192
251
178
279
193
150
180
228
181
159
182
195
230
201
157
247
216
211
181
160
266
215
221
229
193
203
170
220
249
197
249
212
221
204
174
219
203
237
201
222
248
165
184
194
180
206
197
177
115
161
191
188
179
193
197
203
189
234
123
150
189
218
165
182
256
185
235
189
161
186
221
264
230
247
223
208
140
235
209
197
214
182
235
216
216
202
199
201
263
184
157
164
240
171
241
175
147
234
201
241
173
178
147
218
204
180
178
224
250
276
240
230
216
200
214
195
217
199
192
263
261
241
190
191
243
127
173
198
201
214
179
163
184
295
218
168
237
151
243
179
222
202
182
138
190
258
208
183
150
198
135
165
256
142
168
211
217
189
233
234
248
246
250
226
170
219
123
260
226
187
182
167
210
205
154
199
223
188
170
223
180
137
191
232
266
182
171
226
152
160
192
200
205
179
231
87
166
187
189
255
151
189
188
222
242
217
223
192
186
200
189
152
246
146
186
183
174
213
223
174
165
226
156
156
145
205
228
175
232
195
202
200
180
188
145
194
237
165
214
243
157
149
238
191
198
214
149
185
222
176
200
241
168
139
235
167
240
209
205
173
193
220
144
213
228
171
189
167
203
203
237
147
182
205
220
199
198
141
179
199
213
199
191
254
180
187
198
227
161
241
188
248
204
197
154
240
130
148
206
182
148
221
248
206
232
208
245
210
255
236
174
175
182
233
231
198
201
220
120
228
224
232
235
147
182
158
175
175
179
269
208
174
238
222
149
243
172
222
230
216
155
239
260
193
211
199
166
189
238
202
167
180
207
208
135
259
219
231
245
196
112
161
139
220
244
187
285
203
188
208
225
255
185
229
190
203
189
175
192
182
222
194
170
194
166
181
263
161
218
176
162
163
213
258
201
226
201
235
221
201
157
211
176
236
171
157
196
176
221
181
251
222
199
200
204
254
230
239
182
246
205
195
271
179
203
217
246
238
210
142
188
191
169
203
219
156
227
221
237
214
240
180
189
204
166
183
232
198
194
242
277
256
223
213
230
175
174
183
177
144
232
161
205
202
201
208
211
208
224
242
285
220
184
183
195
178
158
185
222
201
194
167
219
192
217
223
214
178
155
222
191
213
204
228
203
171
204
182
173
176
170
227
205
161
194
208
155
258
213
144
165
166
223
136
214
161
183
228
248
197
250
167
228
232
222
265
243
225
182
238
210
230
176
195
175
177
277
158
200
226
186
177
189
255
263
225
216
160
183
213
205
198
148
244
199
202
197
204
172
219
142
223
205
189
204
243
194
200
154
176
269
235
187
200
176
131
189
225
182
218
156
188
172
215
202
182
226
123
184
206
198
219
150
179
156
219
217
199
186
201
183
166
247
211
217
224
217
224
198
160
166
259
197
213
271
167
154
222
192
249
122
197
192
201
162
208
229
187
218
139
219
169
235
200
193
243
243
245
156
210
218
194
179
180
144
269
272
219
186
209
184
222
165
174
91
189
194
204
204
193
210
242
211
168
168
203
224
166
183
228
155
154
217
213
210
176
204
226
193
164
255
177
143
292
138
201
152
261
245
191
228
219
213
198
154
179
211
232
207
192
170
227
205
194
238
217
230
140
206
218
199
220
241
162
135
271
157
186
206
211
206
231
161
240
267
235
132
174
224
261
176
126
215
189
97
184
180
216
196
191
206
238
186
173
188
223
192
187
143
179
171
223
166
194
229
214
206
183
226
210
203
196
208
181
167
197
187
288
174
222
194
177
224
228
238
179
256
255
269
193
228
228
181
216
155
213
183
209
193
213
218
173
187
218
215
283
128
260
192
174
171
230
233
243
158
134
124
192
202
208
258
236
175
181
261
179
157
196
178
150
228
188
121
191
222
158
201
217
177
251
200
241
171
187
210
205
182
191
165
166
176
161
251
252
179
168
205
180
220
207
290
242
163
160
200
165
154
141
197
129
154
232
226
230
142
232
171
190
175
224
245
238
189
198
206
227
172
234
182
170
173
218
240
210
215
172
166
217
176
190
243
232
191
232
201
179
226
218
229
271
230
218
191
221
201
233
180
192
168
210
233
209
289
187
255
234
186
149
185
191
201
220
236
220
188
153
227
281
135
202
218
215
246
199
236
235
199
226
148
263
178
140
174
186
220
242
247
232
149
182
225
148
155
221
205
148
145
226
221
234
203
207
158
223
245
155
216
142
179
174
174
211
246
201
127
209
190
223
177
188
230
134
261
189
241
200
182
262
161
212
186
170
195
211
137
177
203
219
127
224
229
169
207
209
204
219
148
175
179
150
210
182
210
165
125
138
213
198
97
283
197
249
160
224
239
169
207
215
172
162
215
180
237
210
250
251
187
248
182
172
193
117
201
248
217
216
198
256
166
186
210
234
212
193
125
168
256
240
113
172
213
208
140
206
231
181
253
191
223
174
242
191
142
167
182
171
172
286
232
262
242
144
247
239
210
165
206
214
199
238
219
255
166
181
198
227
214
203
193
153
225
223
205
227
174
191
251
229
216
238
227
146
191
164
212
231
205
224
152
238
256
214
167
188
209
212
225
160
177
221
200
251
173
187
194
176
168
176
266
173
154
167
171
138
202
134
191
243
152
135
178
189
235
224
234
245
203
200
233
255
151
135
188
206
251
223
241
166
180
227
224
208
191
184
220
223
201
134
174
190
268
170
204
226
236
186
176
257
206
263
231
190
202
193
111
190
207
237
275
214
250
192
183
140
225
160
206
246
241
251
178
253
205
177
241
201
125
171
189
163
235
183
144
222
129
198
266
195
221
220
162
235
204
184
189
233
159
227
157
193
218
212
170
187
175
201
207
207
211
190
224
233
161
132
160
183
198
148
262
205
138
206
219
158
231
155
202
240
165
128
222
201
219
212
246
200
221
226
132
199
189
209
198
202
198
186
173
172
231
217
197
243
153
194
235
123
198
213
140
162
230
225
224
152
143
159
157
219
199
172
232
173
250
256
184
183
149
222
259
178
115
200
254
154
229
211
245
163
236
179
206
189
155
156
203
246
199
195
215
192
170
201
172
224
199
183
255
212
191
222
190
187
244
260
152
214
157
196
197
205
141
224
230
231
221
269
156
141
256
265
206
238
197
206
242
158
193
223
185
221
142
218
164
193
179
201
206
226
205
188
194
220
175
222
239
219
174
205
198
119
173
242
184
229
242
186
227
205
189
243
173
244
176
194
204
233
231
246
197
165
206
198
230
234
195
250
202
143
178
241
209
237
169
219
185
186
178
186
218
207
236
138
198
178
197
212
174
266
170
234
208
178
146
235
188
177
192
183
196
180
233
141
196
212
243
168
258
224
170
171
173
222
219
141
185
203
238
182
229
211
229
244
248
194
199
203
183
190
139
212
224
229
206
179
184
152
206
218
171
203
227
197
211
197
190
168
186
220
165
243
188
135
203
193
223
201
200
219
238
234
173
223
223
204
232
167
207
250
256
163
172
245
218
242
236
182
163
178
170
248
180
251
171
126
216
148
183
169
129
234
181
174
233
180
163
164
174
199
221
197
191
256
201
184
241
189
228
178
244
208
223
170
212
199
211
194
220
150
158
227
183
164
166
206
147
249
223
182
207
144
222
194
203
177
215
176
203
214
183
211
222
171
202
190
228
237
198
194
238
252
178
240
227
194
161
205
173
211
182
124
216
181
232
270
172
187
231
93
201
181
258
224
157
177
197
180
231
230
187
179
187
223
209
188
199
235
194
147
241
206
234
243
166
201
176
161
241
137
185
149
271
165
194
178
230
222
176
182
165
183
222
222
207
258
156
245
210
215
177
214
221
237
148
131
183
160
191
171
218
212
240
179
219
232
237
188
210
225
214
219
186
204
185
271
176
169
96
209
189
170
88
205
250
218
242
190
175
220
142
222
189
172
189
224
182
193
211
275
216
197
233
214
141
169
170
278
243
192
160
185
189
172
183
184
177
162
240
187
152
215
167
172
206
179
194
191
172
204
224
196
249
198
218
207
216
173
261
291
223
246
171
221
161
201
219
246
200
253
203
123
213
203
242
236
223
199
199
235
200
217
254
165
279
216
180
188
214
214
226
177
162
229
205
179
195
169
254
196
152
177
149
213
201
185
198
244
107
243
235
163
236
186
157
223
189
181
274
187
155
220
236
160
212
196
281
223
255
185
172
211
207
139
177
167
176
218
215
202
232
178
221
172
135
247
160
180
215
194
298
154
207
181
259
142
202
199
201
165
198
153
199
195
152
199
165
218
182
198
260
159
195
207
270
157
194
204
203
186
214
151
142
263
233
180
131
257
187
214
207
235
169
227
215
221
217
216
175
230
235
215
174
229
254
215
192
201
230
204
83
193
219
173
174
176
239
147
285
168
262
139
129
198
237
180
215
219
169
263
222
254
88
141
234
186
211
187
149
268
131
131
181
204
229
229
226
253
170
204
160
222
194
180
222
228
158
180
176
185
223
153
133
149
206
225
242
230
191
184
187
267
259
140
220
187
100
256
217
181
141
177
166
169
249
120
132
189
237
241
148
178
196
174
204
263
172
180
139
190
200
126
244
206
170
236
178
197
231
171
168
224
128
219
247
175
208
198
218
164
232
164
160
211
204
178
167
236
224
175
168
203
204
209
141
251
226
145
227
248
260
213
191
240
198
178
226
166
216
170
231
217
200
228
176
223
165
235
245
169
212
199
235
215
228
194
211
193
260
232
213
200
185
256
134
203
172
238
211
180
160
220
189
205
192
219
183
249
201
181
177
176
214
156
191
231
187
166
257
213
250
160
127
192
216
245
207
218
188
216
220
208
174
212
205
205
184
239
260
139
154
232
225
172
213
208
197
187
251
149
241
195
164
173
236
161
197
210
201
179
256
145
211
186
239
218
221
204
176
233
159
223
194
183
237
212
227
164
198
214
163
154
202
242
158
203
211
203
249
227
146
157
199
253
236
219
156
141
214
186
190
236
129
221
253
166
158
209
204
195
226
234
149
188
262
209
205
229
226
226
178
153
170
239
212
244
187
151
212
215
183
180
225
155
131
240
224
159
260
169
172
201
156
215
145
223
164
264
220
241
185
213
193
108
172
222
173
181
292
247
160
247
200
178
214
213
239
223
213
138
176
174
200
227
192
177
232
158
226
183
197
188
154
178
197
198
189
236
199
204
224
219
181
227
166
240
170
202
137
244
201
245
166
276
201
214
220
252
216
192
233
239
177
220
185
210
172
216
232
97
192
169
198
255
240
252
208
183
215
205
182
217
233
154
236
211
208
176
186
186
201
185
145
141
209
194
183
138
209
181
191
163
144
158
228
227
202
156
172
210
149
187
208
205
273
236
205
259
181
142
233
169
232
171
212
207
217
191
217
219
203
175
188
193
229
187
247
174
169
177
244
193
210
258
141
136
164
249
239
221
245
242
119
150
234
169
130
204
185
188
189
243
230
218
219
166
197
236
246
186
230
209
231
186
163
181
206
171
173
255
250
197
265
237
196
212
237
255
208
265
230
188
263
229
225
180
243
197
128
207
228
207
167
211
195
177
140
156
213
169
218
248
244
174
193
234
133
227
195
184
231
234
203
215
151
220
190
145
231
216
182
187
182
157
183
248
173
210
155
260
181
179
131
259
188
176
209
150
231
228
250
209
266
148
244
268
220
222
214
151
215
242
209
216
140
183
294
240
169
178
181
245
182
145
172
150
180
201
182
216
207
214
214
209
133
154
194
161
224
206
245
240
173
152
260
184
240
252
213
176
227
268
168
183
233
185
143
203
205
218
214
232
196
205
202
249
217
174
185
159
242
217
191
269
262
203
191
195
169
239
225
168
171
219
180
161
170
180
179
233
209
230
195
196
179
167
187
199
218
185
159
162
171
174
241
187
182
172
232
198
212
225
208
170
231
172
214
233
205
196
198
168
234
238
169
148
199
167
187
224
232
200
265
195
220
200
227
248
145
152
201
208
158
210
230
176
196
206
212
190
223
207
256
183
227
215
220
177
233
110
221
150
224
214
205
231
237
108
205
222
210
237
232
188
221
140
167
144
207
196
229
230
210
206
267
219
212
166
192
203
229
199
207
184
209
224
120
180
257
244
215
220
132
242
162
139
261
168
212
212
166
188
228
119
141
232
248
196
236
187
170
176
215
184
236
194
153
201
223
257
225
179
123
231
222
200
199
202
201
233
215
188
214
221
183
170
242
234
200
209
179
224
150
155
214
178
208
197
218
209
182
186
203
244
195
187
190
229
212
176
169
200
207
181
110
160
202
233
228
220
157
187
201
224
202
241
207
261
199
194
198
186
178
191
178
178
189
201
181
188
169
251
192
127
240
220
194
187
194
165
197
176
195
182
167
245
155
228
201
186
273
269
132
209
231
191
207
158
180
157
182
235
194
173
191
132
254
211
204
179
231
247
201
213
177
200
282
193
230
204
176
276
244
238
208
181
220
214
209
151
193
163
241
189
203
221
238
293
254
142
221
212
186
185
218
160
193
173
188
159
184
207
187
206
240
186
198
220
228
210
166
211
222
225
221
188
193
196
111
248
176
247
210
226
182
124
208
250
264
176
154
154
193
214
201
235
212
262
248
209
198
155
176
160
136
141
215
217
195
201
183
209
179
215
213
157
198
242
217
198
204
162
183
184
238
188
133
206
147
197
186
213
251
172
214
180
261
213
230
222
183
159
169
198
152
203
186
201
210
175
179
125
172
228
235
221
188
116
207
111
210
218
202
182
249
214
210
212
260
180
170
202
169
168
171
223
238
241
161
235
254
196
280
182
230
259
140
182
158
182
172
218
208
232
222
213
248
190
214
222
209
164
153
281
199
146
180
213
233
179
178
196
172
205
232
236
208
256
189
179
202
168
164
183
186
203
197
235
229
175
186
211
190
189
238
167
199
198
166
194
242
209
184
213
216
183
184
169
233
176
233
213
233
229
211
169
226
143
181
215
199
175
239
215
158
191
231
169
219
145
126
273
218
274
169
169
124
191
222
201
166
185
226
237
210
169
186
197
201
119
116
240
183
169
212
193
171
171
171
216
229
243
208
215
192
230
202
176
174
206
167
198
151
226
180
235
187
226
221
169
219
203
232
250
240
231
253
181
185
184
259
229
224
182
187
188
250
223
185
198
166
185
187
254
219
174
192
263
290
189
268
166
209
171
202
244
224
193
174
239
198
181
197
239
208
186
220
187
239
168
159
176
194
231
209
203
213
208
262
216
212
208
181
120
162
216
226
173
245
189
244
212
251
215
290
229
199
256
139
152
209
215
225
204
173
193
196
171
219
197
210
227
189
135
247
141
191
181
193
213
174
218
183
237
189
178
193
173
204
165
156
213
224
193
163
229
149
155
212
179
225
136
206
271
256
170
184
222
139
229
185
210
138
227
251
153
226
249
273
190
233
238
172
211
184
177
183
222
212
190
220
202
241
168
208
234
220
234
175
139
183
178
265
204
271
184
211
217
249
159
227
131
154
255
187
170
213
132
209
193
229
199
231
182
237
205
257
234
272
143
257
203
203
227
154
255
155
175
231
159
201
242
216
216
180
193
191
151
253
213
179
216
181
226
155
242
196
166
170
215
223
236
210
229
212
183
223
208
198
192
289
216
206
126
225
151
228
193
216
190
162
235
190
185
185
238
200
220
215
191
155
203
209
192
190
199
203
210
192
229
196
124
98
113
200
224
214
175
219
214
237
244
174
229
195
184
228
229
233
185
161
163
200
210
168
269
164
203
164
203
220
165
217
247
176
237
221
211
225
178
225
204
187
218
194
248
146
237
201
274
198
219
232
199
195
191
200
186
151
218
185
257
204
229
223
173
214
220
225
204
226
199
255
147
246
132
186
109
252
200
201
148
234
185
229
178
141
196
261
185
209
203
191
272
168
262
215
239
197
203
162
177
244
193
209
134
237
189
245
198
163
232
214
177
145
206
263
221
224
204
208
199
226
158
171
222
208
154
218
213
169
157
215
203
143
188
241
202
254
248
168
214
208
161
113
242
211
217
261
201
181
171
118
257
166
217
244
174
220
179
194
190
195
180
198
181
213
186
181
178
164
205
181
168
255
210
210
225
193
139
158
174
217
154
197
164
218
190
202
155
156
194
225
184
232
214
196
211
225
192
255
188
229
180
225
185
252
155
239
186
241
177
177
176
222
212
188
245
165
229
215
172
163
191
208
224
161
193
232
234
209
227
204
203
249
174
242
249
246
223
201
182
167
232
204
150
205
223
158
210
214
192
232
161
261
260
222
198
203
208
198
226
197
192
233
248
232
216
248
171
165
195
192
195
209
229
203
214
138
213
209
181
181
191
188
195
167
214
220
225
230
188
192
138
237
188
187
210
263
186
224
200
232
187
190
186
157
210
199
257
138
143
242
241
227
211
196
213
213
218
185
225
205
187
185
166
176
159
171
174
201
167
196
133
174
201
236
225
227
188
201
204
178
200
238
177
176
222
197
207
208
190
137
215
215
183
225
193
230
195
188
159
244
157
175
226
154
205
175
264
224
236
197
185
206
203
172
157
202
97
156
187
193
211
207
274
182
210
220
187
156
185
214
214
236
200
179
185
168
169
220
191
176
184
241
248
155
231
128
232
173
195
257
266
240
192
186
209
246
200
134
215
123
213
218
178
202
179
157
211
224
168
197
220
225
221
164
177
196
227
174
175
154
174
206
153
193
253
157
187
259
205
203
125
198
256
206
141
244
217
248
233
210
175
240
224
215
225
169
223
254
198
190
210
257
290
205
197
234
210
211
249
188
201
234
202
249
210
231
208
185
176
170
247
167
151
164
222
160
179
166
275
257
212
204
198
187
183
197
208
142
141
222
221
182
209
183
238
213
116
141
190
220
260
221
168
170
129
130
144
186
194
186
105
205
231
245
202
237
169
192
183
234
200
208
248
148
229
200
255
188
215
228
161
258
212
134
225
201
176
197
191
160
174
245
248
150
159
191
173
219
182
206
216
208
202
145
226
169
190
209
193
192
194
198
192
220
185
212
181
166
223
224
120
188
174
140
217
212
208
239
250
246
194
159
179
202
265
179
150
244
168
174
224
201
208
219
281
214
170
195
194
219
153
210
235
191
221
208
202
189
256
138
227
172
202
178
199
166
228
244
215
199
199
179
258
182
161
159
272
204
162
197
189
206
164
218
202
180
181
173
186
206
214
103
217
197
227
156
259
192
216
201
182
228
164
196
140
183
180
217
178
246
230
249
174
201
166
214
191
211
256
223
185
170
243
174
227
188
188
212
176
214
123
143
198
224
191
235
143
186
174
204
232
171
241
188
160
208
184
233
148
220
268
171
218
268
161
227
179
213
232
221
198
203
201
234
193
165
161
222
221
220
186
244
234
199
128
183
250
162
165
220
230
172
208
210
175
166
224
247
163
208
209
244
211
182
223
171
194
180
203
177
144
192
209
155
214
225
187
220
142
224
234
225
190
131
197
220
203
223
171
143
236
145
233
146
167
218
207
139
220
141
245
230
226
184
199
223
171
181
136
215
187
232
190
245
177
195
176
214
195
141
212
137
199
229
146
191
202
270
221
231
262
204
248
182
226
208
166
194
242
222
244
267
216
182
209
243
182
127
232
166
152
235
249
175
233
147
239
254
223
218
218
225
190
263
220
179
193
204
176
276
221
225
220
149
217
143
227
234
154
231
184
184
143
196
240
170
229
219
110
185
174
202
170
193
247
178
174
197
185
183
180
216
201
192
223
226
215
202
178
213
241
180
190
230
245
243
175
149
134
224
196
217
103
215
152
151
192
127
126
241
227
242
259
256
265
209
208
142
197
193
214
158
197
229
138
221
253
171
165
149
206
205
247
244
161
229
266
156
176
235
186
146
204
208
206
234
124
187
223
196
144
230
227
174
141
228
161
235
233
186
162
173
232
190
186
190
176
228
201
185
204
209
274
227
178
190
168
167
231
244
162
229
205
246
178
153
222
235
193
201
195
203
179
183
153
171
226
173
213
255
201
201
184
196
245
224
228
186
238
183
252
107
193
227
178
193
237
178
185
204
239
214
173
219
198
109
245
128
243
208
207
217
180
179
192
192
200
169
197
200
189
205
239
242
197
186
182
173
139
243
218
231
274
219
210
219
196
261
210
222
193
243
200
187
208
208
210
199
224
190
225
141
174
235
171
211
148
194
198
160
201
225
154
264
195
216
235
189
206
138
205
229
118
159
155
172
209
179
194
205
177
238
181
213
122
292
199
195
215
229
197
216
218
198
161
193
219
174
206
194
219
223
238
182
158
222
197
207
177
169
170
202
207
130
254
185
223
169
173
161
230
111
176
154
191
193
177
203
184
197
215
203
283
225
245
213
244
248
256
280
183
142
161
115
209
206
181
154
228
186
217
181
184
251
222
256
221
168
168
186
221
241
87
164
211
183
248
229
222
242
236
178
266
204
208
259
241
243
176
170
140
216
231
193
225
148
185
151
178
260
203
218
272
166
217
213
151
187
183
135
224
202
210
241
182
274
208
234
242
182
228
242
211
278
196
172
197
118
199
175
167
202
126
208
210
237
203
214
123
143
200
205
185
232
207
173
200
178
193
186
149
167
214
187
225
179
208
230
124
165
171
252
243
220
197
205
210
249
186
215
210
137
200
218
251
247
209
174
187
248
224
241
208
162
228
233
184
222
213
203
222
265
185
213
217
234
237
190
217
182
174
212
137
203
230
209
199
175
239
146
213
182
219
226
179
183
227
252
175
233
216
205
167
250
194
255
212
152
187
201
193
186
167
219
205
188
248
226
208
198
150
197
216
193
183
221
168
211
222
241
208
174
147
232
164
257
134
232
192
240
218
161
239
245
160
191
198
229
225
153
197
179
236
244
236
217
261
234
228
185
227
149
207
206
178
215
211
197
196
155
153
188
171
177
209
204
182
193
150
204
232
201
214
201
199
224
211
224
159
171
209
244
114
166
261
223
146
221
208
286
177
265
195
222
181
237
192
163
151
181
136
233
212
225
226
213
205
203
208
213
214
210
269
189
189
232
233
202
192
141
151
108
256
202
193
165
204
207
190
143
193
193
229
213
153
221
206
252
161
199
155
170
202
196
195
172
201
242
203
222
155
178
194
192
215
214
205
188
209
144
177
173
135
234
186
224
181
203
177
221
199
194
171
206
182
241
221
216
204
176
146
232
196
214
185
204
159
184
169
214
203
166
164
142
163
208
165
212
260
172
173
196
154
264
164
202
164
166
253
137
222
208
242
208
216
221
192
223
184
242
259
236
215
258
259
218
159
215
186
230
255
234
149
190
216
239
173
213
215
164
237
245
168
251
250
219
176
203
231
186
218
234
181
145
174
166
293
180
213
194
183
191
157
193
164
235
167
121
193
215
194
235
192
196
166
184
157
263
279
166
177
205
239
245
220
155
253
181
256
155
202
239
205
137
273
203
214
280
168
189
190
217
220
194
170
226
178
183
267
236
178
212
228
173
251
205
175
189
173
225
200
191
212
195
181
225
187
208
184
183
186
210
253
182
212
259
212
219
167
148
173
200
234
207
175
172
192
224
206
166
197
236
218
224
183
153
262
198
176
243
168
217
174
262
205
248
200
184
156
210
207
198
215
206
192
174
198
229
178
166
171
149
203
194
189
236
196
154
201
199
205
229
193
151
232
219
153
214
218
222
197
176
238
168
172
209
196
207
173
252
239
240
202
162
175
190
222
176
243
251
171
146
269
201
200
214
207
235
179
217
281
193
185
161
192
186
146
154
191
175
198
201
176
201
205
215
205
215
228
213
185
221
246
220
187
201
157
249
254
141
190
183
209
228
236
235
149
161
166
219
149
227
197
235
230
176
188
205
238
175
180
220
125
213
229
157
253
232
242
214
229
261
210
205
207
232
167
204
257
221
140
182
193
219
152
162
198
221
224
211
208
185
161
241
256
233
237
213
167
174
228
160
184
157
122
199
227
132
175
144
230
157
218
214
178
227
246
195
216
244
212
236
250
198
229
205
196
208
241
163
210
231
214
147
188
192
277
166
151
201
236
152
200
196
156
164
176
227
130
250
178
173
200
213
167
208
264
276
210
196
208
167
202
158
249
184
258
209
187
155
211
190
166
203
233
245
209
209
139
232
160
196
137
187
166
151
157
194
214
219
197
124
219
205
131
237
139
244
228
228
174
170
225
175
199
108
218
232
259
246
196
170
205
229
236
192
214
222
205
193
243
219
210
189
208
188
139
246
117
170
267
184
248
193
179
215
230
159
163
201
230
208
213
170
209
206
204
199
234
232
174
226
185
215
214
179
175
202
190
188
218
175
234
213
182
192
175
240
208
183
212
192
154
163
176
241
208
181
181
184
164
232
226
218
232
182
206
250
214
164
204
172
214
211
221
197
192
116
228
207
216
189
197
270
173
214
217
147
171
283
239
194
229
234
229
213
204
162
235
180
214
202
228
162
197
212
175
230
133
192
199
183
154
194
240
250
191
218
251
192
141
217
192
218
154
181
204
171
174
193
173
167
220
159
168
181
230
164
218
235
210
191
139
182
195
266
247
172
172
241
154
146
195
210
157
240
184
191
224
203
146
201
196
228
240
290
254
250
189
209
255
213
194
193
167
196
221
188
217
264
125
233
229
235
183
224
202
212
240
250
127
178
206
216
217
201
201
258
175
214
158
293
158
194
224
193
110
204
214
198
226
174
161
277
278
213
236
170
190
157
191
209
197
245
164
172
248
188
254
223
205
179
237
188
190
198
242
219
160
168
228
173
283
212
144
158
250
221
153
244
233
203
201
200
208
224
202
190
168
146
221
190
237
207
240
198
140
225
198
240
170
194
181
197
171
237
233
176
185
226
194
167
142
233
166
201
176
179
202
205
216
221
265
166
229
218
239
225
148
185
195
183
151
164
174
243
196
211
219
222
171
170
225
212
148
181
186
174
234
201
220
145
213
186
221
216
198
158
171
240
176
195
220
227
207
182
171
185
214
219
206
171
146
196
228
188
201
187
210
184
143
197
237
193
231
219
243
248
195
181
207
243
208
223
225
230
175
210
176
174
165
232
283
189
205
178
202
192
162
197
205
181
206
180
209
197
205
191
145
285
174
142
171
234
229
182
233
231
196
194
235
186
219
198
209
167
205
215
208
126
149
266
227
162
250
172
210
229
187
181
257
228
239
221
134
223
225
195
183
225
236
257
229
248
187
255
247
183
164
250
239
151
186
253
111
173
221
221
201
176
168
255
163
154
195
214
180
175
241
187
230
180
174
138
230
195
136
196
232
193
204
222
191
193
179
189
190
175
142
221
220
223
195
184
176
220
241
215
216
208
309
222
195
220
160
249
220
208
250
194
205
153
187
200
221
214
198
213
217
158
161
140
184
205
168
185
253
171
234
228
136
200
178
213
213
205
198
199
187
216
236
153
166
204
233
181
209
207
182
196
216
173
195
221
130
177
183
153
159
136
215
201
145
166
189
220
203
233
237
252
169
227
200
157
195
232
185
207
171
156
188
189
181
228
215
177
191
249
198
139
200
227
185
203
166
204
190
146
189
178
215
246
175
213
222
239
176
279
151
183
181
219
201
245
221
189
205
203
168
199
180
191
155
168
240
190
235
243
194
129
198
261
187
231
191
224
161
194
172
179
271
168
167
211
229
181
155
234
177
171
185
148
227
178
250
166
228
231
186
225
208
171
260
129
203
208
215
239
198
176
191
195
182
282
182
174
193
191
196
182
247
163
233
256
165
166
178
247
203
225
132
208
190
222
230
204
233
185
142
242
169
210
263
179
216
226
175
263
223
143
194
229
201
216
215
164
149
175
202
194
242
193
152
184
232
165
228
213
197
210
238
213
195
197
169
207
207
150
257
193
210
198
212
148
209
171
231
215
237
159
170
223
226
186
206
166
170
261
261
231
189
210
203
196
224
190
245
210
224
211
152
180
173
212
178
185
201
183
226
151
229
201
214
207
229
266
192
271
185
173
196
192
239
211
214
187
136
243
168
222
206
215
190
236
242
191
267
225
210
145
184
250
176
220
174
204
203
214
223
167
200
155
264
238
208
186
155
176
224
226
166
226
176
240
200
225
159
208
178
227
203
193
226
216
155
190
141
214
218
222
254
242
211
185
238
177
215
228
203
198
151
144
134
145
227
140
140
190
226
149
196
204
218
245
207
225
238
228
198
190
234
219
202
239
163
177
172
183
213
196
183
205
237
175
240
177
178
210
223
130
215
183
227
185
189
171
255
203
202
268
255
265
167
274
211
223
213
227
195
231
266
189
263
272
216
189
219
236
211
186
276
184
242
228
230
239
206
262
207
211
242
174
267
189
142
195
206
211
231
223
194
149
135
243
225
222
166
180
202
185
246
231
201
197
235
201
183
262
187
148
202
200
197
189
273
193
228
211
205
253
183
242
199
202
198
157
200
226
122
124
194
200
207
228
198
154
193
192
110
182
203
240
176
216
169
216
197
195
237
203
213
175
228
199
237
171
178
236
155
217
178
196
250
222
195
159
199
175
217
245
214
217
257
189
175
210
208
190
203
213
231
236
196
186
237
221
235
198
124
244
108
160
238
250
180
230
192
154
215
170
187
179
187
185
187
208
239
226
204
192
234
182
153
181
166
208
225
166
180
224
228
217
170
155
206
189
198
218
162
106
246
203
176
197
281
157
194
185
198
235
162
157
232
201
201
91
186
230
225
269
187
210
233
169
227
234
172
212
195
206
190
183
196
204
207
226
158
170
224
242
234
183
180
158
149
220
211
187
187
140
210
195
202
211
186
199
217
202
221
176
186
169
185
143
219
271
182
213
187
277
215
239
213
203
177
234
176
185
165
224
195
167
172
226
240
253
215
193
214
234
182
202
266
260
155
211
164
202
201
185
265
159
233
203
178
187
156
191
209
183
190
225
103
174
230
171
210
242
196
166
230
228
212
178
188
230
241
226
231
241
206
186
216
241
192
204
198
169
160
202
219
166
261
169
236
198
195
206
168
218
154
208
186
255
149
221
194
164
159
195
211
186
177
200
211
179
185
201
288
162
194
130
212
253
144
156
232
209
165
190
253
223
213
272
177
210
204
233
227
225
128
249
213
191
202
155
184
144
243
183
254
221
198
225
181
194
232
191
241
206
211
237
177
234
241
199
243
153
226
226
196
202
223
153
215
216
171
186
144
243
257
218
221
205
203
270
201
239
189
219
229
228
171
136
140
190
151
189
154
183
240
168
243
184
199
180
248
163
153
215
203
206
215
167
175
218
161
176
280
209
238
243
230
189
221
201
222
174
208
201
199
191
199
253
213
201
139
168
191
239
141
190
157
185
266
146
182
243
224
166
184
152
179
218
134
189
217
183
237
162
200
188
123
146
153
257
190
180
173
146
204
208
231
176
224
180
259
257
182
227
199
260
209
195
258
203
225
154
195
204
187
177
199
209
236
212
198
200
226
187
209
178
174
227
232
150
125
217
187
208
165
187
236
206
172
157
229
186
275
188
190
174
159
193
210
215
185
194
177
210
128
175
183
193
194
214
199
200
155
187
206
124
270
206
169
176
161
227
193
137
185
252
186
258
204
238
165
189
213
191
128
248
198
179
213
217
189
158
202
214
155
196
136
202
160
246
168
253
175
234
159
153
228
258
211
200
217
163
167
200
162
221
170
203
141
175
231
204
217
183
205
185
194
165
203
167
226
177
200
252
207
98
158
152
221
226
200
170
200
197
195
266
239
167
219
202
231
199
223
191
189
188
221
205
168
209
166
152
195
163
149
233
212
190
234
186
243
206
240
226
167
148
240
223
227
196
191
159
202
229
272
163
189
195
209
277
238
170
216
202
178
227
152
187
161
207
213
180
275
266
206
223
167
188
166
182
203
175
177
191
218
154
220
159
249
195
181
201
243
196
225
199
199
169
219
197
199
221
201
128
268
210
223
160
154
220
177
118
196
214
245
198
181
248
292
169
230
243
159
176
221
196
271
166
182
169
160
199
272
208
214
215
213
173
194
176
202
201
177
228
220
237
215
183
178
224
190
194
229
236
205
211
189
198
239
157
189
237
178
207
195
191
215
185
151
188
238
183
219
130
243
197
176
174
215
167
147
210
171
179
209
204
239
207
225
245
176
174
150
207
184
240
202
231
202
193
245
232
244
241
218
205
198
189
172
142
250
245
214
177
249
147
152
235
190
157
178
210
155
154
193
205
184
213
237
191
175
165
163
222
192
216
213
240
117
213
178
212
227
188
161
215
196
186
213
210
166
190
217
257
217
174
230
181
230
227
270
196
175
215
166
178
146
243
220
211
234
184
215
246
167
184
186
183
182
210
186
149
165
207
274
145
241
210
262
249
161
233
204
206
213
156
178
172
165
247
197
143
207
182
227
240
157
209
260
209
135
246
236
210
268
172
195
262
236
204
214
235
192
247
223
172
237
245
212
191
190
178
177
185
175
226
209
207
220
195
190
205
205
228
195
231
220
209
201
199
185
211
183
235
204
241
172
192
152
189
197
159
172
224
214
240
292
186
245
234
237
212
199
164
175
262
203
163
246
197
171
176
193
215
217
193
206
236
209
242
170
185
171
161
243
170
223
260
211
235
214
168
198
186
235
141
174
166
171
193
209
207
166
166
197
202
230
237
184
260
235
196
233
208
180
267
214
215
167
160
175
131
139
207
241
102
201
188
228
234
180
183
135
192
210
251
183
233
218
239
226
204
224
189
125
261
214
198
162
234
228
162
161
133
170
197
199
136
194
243
150
194
162
220
192
259
164
156
186
242
252
215
194
163
195
173
184
196
268
212
236
217
190
192
193
235
228
174
221
222
184
261
251
156
215
205
223
216
173
235
147
214
142
200
158
208
215
190
181
194
241
180
225
217
233
261
182
167
191
202
265
233
208
219
98
173
167
214
221
256
144
236
187
180
193
229
214
164
208
178
198
192
167
200
196
231
199
107
208
189
184
203
188
168
195
179
207
250
192
222
216
207
201
178
217
247
232
213
132
256
220
116
212
182
196
193
251
228
205
171
199
213
201
203
193
180
221
205
210
193
207
216
235
150
208
203
229
246
245
219
219
149
186
248
211
203
215
205
243
208
199
210
178
223
231
171
170
153
191
222
224
202
244
174
181
167
190
164
234
212
201
195
172
151
213
153
200
188
204
263
255
182
215
246
223
236
191
170
268
184
233
186
244
177
201
198
249
204
182
197
260
212
179
205
260
145
201
211
224
216
138
256
191
152
207
208
235
199
221
212
219
176
201
195
174
172
205
219
212
202
237
245
156
239
172
233
182
173
228
116
266
229
214
234
256
217
230
242
211
236
132
233
244
248
209
206
143
187
204
203
221
109
230
192
221
144
160
227
213
195
236
198
188
218
215
254
220
233
182
221
174
156
207
204
244
235
207
224
248
226
226
257
240
185
249
226
258
232
241
216
175
133
152
159
153
198
179
216
235
238
200
188
218
210
162
216
119
189
192
156
164
245
215
209
230
181
235
173
226
210
206
195
192
208
223
252
164
136
261
193
154
189
145
231
182
198
222
239
207
215
174
175
186
239
193
191
177
205
197
162
200
222
162
171
238
221
205
199
187
176
159
256
151
191
142
177
168
216
179
187
196
165
197
202
201
220
167
236
206
197
131
171
215
246
187
236
182
206
177
207
174
150
188
245
226
168
220
261
230
246
200
225
243
194
164
228
205
235
243
213
232
158
175
173
202
189
158
267
208
190
143
165
218
171
198
215
202
157
189
227
186
183
142
171
182
171
204
198
162
281
161
195
182
216
163
231
219
220
204
237
252
243
236
197
149
173
257
213
221
254
191
180
178
268
233
247
197
217
177
158
159
307
149
194
259
159
185
180
152
172
135
202
193
191
140
173
185
249
230
200
203
178
156
259
209
195
271
230
176
170
164
131
216
208
185
221
191
212
169
208
208
230
216
150
200
194
189
219
180
236
240
142
207
241
216
161
221
249
142
211
181
151
154
268
228
164
207
131
236
247
193
204
196
167
214
151
171
197
250
179
165
236
148
203
209
215
184
249
282
211
190
154
178
227
178
162
214
182
188
196
166
175
228
199
181
230
217
206
188
242
176
211
246
243
228
236
197
231
212
227
219
175
238
226
154
179
213
166
237
216
133
173
151
217
239
179
239
200
185
208
146
196
148
158
196
211
166
193
219
193
163
254
158
235
260
216
190
191
181
190
211
242
213
200
235
232
174
196
210
172
162
228
181
200
218
258
175
226
228
265
177
176
207
219
194
230
221
187
263
174
229
188
241
176
214
175
230
232
251
194
195
193
193
195
165
205
184
190
217
185
211
178
234
220
232
155
234
198
228
226
209
200
178
229
197
209
265
192
200
207
220
189
205
256
152
187
245
234
190
175
268
179
206
222
256
186
177
110
238
147
158
149
241
258
209
244
179
174
192
258
187
154
222
197
121
259
237
233
210
199
171
195
217
229
151
192
176
200
243
115
167
259
206
209
138
202
227
242
157
226
210
200
206
207
198
218
231
185
159
198
217
226
196
248
182
172
209
185
155
194
274
161
225
225
127
217
186
216
211
188
150
252
219
195
263
231
236
181
252
156
209
157
213
224
235
210
267
183
213
180
162
154
232
247
230
146
236
211
183
183
203
217
211
180
234
234
226
164
215
190
158
181
208
190
181
210
175
203
211
155
145
158
205
227
169
168
131
215
179
195
199
182
200
196
165
181
229
188
112
206
164
190
178
233
262
195
145
169
199
198
188
176
249
168
219
109
204
193
213
229
251
174
211
193
153
220
233
184
144
201
248
224
172
182
220
228
173
208
178
189
209
179
178
262
219
258
157
182
165
228
151
188
242
141
218
172
225
184
177
193
230
250
231
207
232
212
200
158
192
246
201
162
214
215
195
172
197
153
184
173
247
165
132
273
160
203
240
194
225
222
214
158
179
220
216
238
212
159
199
192
201
245
269
215
214
136
156
170
192
146
206
206
195
134
259
239
228
228
132
224
176
219
185
238
209
191
207
224
145
215
199
139
235
254
160
188
196
199
206
174
163
203
234
204
226
194
199
283
188
146
224
209
213
201
155
278
247
238
154
275
199
248
226
142
205
199
226
185
196
217
215
216
205
200
180
181
261
248
249
206
126
219
192
193
244
204
228
211
196
168
207
171
178
186
243
220
210
192
155
203
172
179
227
221
193
189
236
234
126
242
217
182
159
200
208
189
154
209
226
202
172
209
180
204
161
171
267
224
209
155
178
122
226
227
166
213
168
195
203
238
228
201
236
205
215
252
208
219
204
189
233
247
211
207
244
202
167
226
167
196
216
246
208
254
253
190
201
182
189
206
133
197
198
221
143
222
168
227
214
230
239
210
185
247
210
180
180
214
202
178
171
201
194
206
189
209
168
230
221
166
210
182
219
236
134
192
224
162
155
179
174
153
253
173
203
298
167
206
168
212
220
219
201
243
225
220
180
213
221
165
198
209
207
181
216
173
147
229
250
188
161
196
176
198
176
232
180
176
189
215
168
181
170
203
220
223
201
178
207
223
216
236
178
140
207
223
167
201
180
200
226
180
214
177
201
233
234
143
205
183
199
164
249
210
138
228
193
163
267
236
223
147
174
167
213
186
201
156
171
201
181
231
123
263
210
196
220
264
242
190
193
227
221
250
167
232
198
177
191
211
257
221
192
222
227
214
250
166
257
237
214
174
132
145
184
134
201
228
151
224
235
168
191
241
230
203
257
223
192
251
223
221
107
150
172
204
211
219
159
171
175
192
211
166
162
166
191
205
168
168
221
228
180
219
90
154
175
174
202
267
179
189
156
223
239
223
186
161
214
258
179
208
250
230
189
185
193
164
198
221
166
179
181
197
204
258
207
220
224
155
228
225
269
173
182
161
159
245
212
192
208
197
178
135
253
197
279
211
201
150
175
163
232
143
253
195
202
195
153
169
149
173
204
246
147
229
216
243
235
211
218
227
176
253
168
237
168
241
229
136
187
148
238
204
207
251
205
276
184
169
192
240
260
199
163
227
221
184
194
222
172
169
217
244
197
247
188
157
231
223
206
175
238
196
207
217
162
224
198
166
249
191
184
199
181
236
201
246
184
194
172
214
202
239
167
161
168
221
211
159
212
216
220
275
206
207
247
215
188
204
224
137
126
173
239
257
171
202
172
170
184
243
170
161
163
174
246
219
190
136
183
215
140
228
206
218
157
151
199
184
242
185
197
234
232
227
186
149
169
232
191
177
199
230
156
212
237
192
163
259
193
154
216
131
231
210
160
255
177
209
158
223
182
160
191
199
256
171
152
196
200
138
207
216
158
136
265
198
176
174
213
197
275
242
219
155
231
200
202
164
232
215
249
201
134
219
209
227
236
216
238
222
191
206
205
218
182
229
235
182
173
244
160
187
148
193
201
139
209
200
222
256
197
203
232
179
168
291
152
207
189
165
181
192
145
196
205
175
210
260
209
197
158
204
237
209
185
202
155
202
149
228
224
258
185
238
264
186
260
248
164
178
186
207
187
171
202
209
198
187
154
233
226
190
212
206
205
222
226
241
201
243
151
206
251
267
248
216
167
227
168
133
175
213
180
243
210
205
217
254
179
189
167
203
214
130
194
235
163
230
184
165
148
215
254
174
214
230
224
211
178
157
228
164
241
215
177
168
193
138
219
145
157
198
187
230
200
147
251
166
167
207
194
255
188
218
168
170
177
220
197
247
190
169
182
173
162
189
202
179
205
253
175
214
170
190
162
185
150
209
186
187
228
225
169
201
224
252
199
208
217
211
216
179
191
209
148
141
200
215
192
134
159
204
201
232
150
157
239
223
223
173
208
145
173
210
213
206
214
232
183
255
203
205
166
227
164
215
198
171
192
217
231
168
190
233
207
205
176
236
174
243
204
213
277
253
236
202
236
212
222
241
159
217
233
152
207
223
209
201
133
179
209
254
142
229
228
256
186
235
195
243
150
164
168
215
143
256
175
198
259
185
197
187
252
202
174
161
193
219
224
197
197
234
222
172
226
171
195
254
230
184
197
181
221
249
154
153
177
229
180
181
206
188
216
154
179
215
240
162
230
139
185
278
233
211
193
193
232
252
206
209
220
157
227
126
207
175
215
218
198
134
190
213
144
204
239
206
210
143
209
246
250
204
187
223
214
174
234
169
256
184
208
226
182
178
215
204
213
164
187
256
220
216
166
252
249
198
195
169
191
137
131
184
182
190
289
209
220
231
233
257
174
227
219
197
225
200
201
196
133
186
142
230
141
250
180
247
283
148
215
235
228
184
190
173
142
191
163
182
223
202
213
252
221
255
176
246
159
207
120
211
192
215
215
197
226
120
179
151
179
285
154
225
188
219
108
210
238
195
204
218
215
182
231
232
190
106
213
263
182
214
222
147
241
207
246
208
260
232
206
248
184
186
258
224
210
250
203
156
181
144
214
241
186
183
231
222
182
246
221
185
145
239
181
106
230
176
193
144
158
181
201
155
225
207
152
194
196
206
182
174
172
182
199
214
236
215
204
206
191
215
183
226
287
231
235
201
177
204
156
184
213
143
206
202
200
185
231
292
140
202
217
212
247
241
198
189
233
210
194
154
222
224
223
202
246
262
155
204
197
236
198
187
163
263
295
219
264
227
182
188
192
239
232
207
201
209
233
151
189
259
217
225
207
180
227
191
229
222
209
216
184
181
134
234
155
194
215
183
202
189
208
170
227
154
195
168
218
175
195
210
221
209
222
129
235
219
218
163
140
220
200
214
199
254
220
228
222
214
175
250
167
220
268
221
220
137
234
179
185
262
233
177
212
191
213
124
172
251
143
198
166
182
194
185
197
167
226
195
200
186
188
245
217
209
175
192
147
232
222
110
189
235
163
203
143
150
190
227
145
231
249
188
217
186
157
232
218
186
156
150
173
206
223
265
237
232
189
101
174
208
231
187
213
240
205
126
297
149
231
125
177
210
189
207
243
161
209
190
234
215
259
222
133
166
210
163
204
233
187
181
161
163
230
239
204
234
193
254
170
237
203
241
192
252
224
208
147
177
99
184
189
138
179
173
262
226
174
181
198
188
141
182
241
207
132
227
244
164
191
222
223
116
189
240
189
199
167
164
163
210
236
217
201
243
213
288
167
234
249
273
235
192
180
233
223
159
145
185
193
223
214
208
181
190
267
203
193
172
228
193
234
228
183
187
158
199
162
213
145
223
253
154
198
169
226
222
266
199
153
194
221
193
247
171
242
174
212
206
187
247
202
224
203
153
129
192
158
210
179
252
224
222
194
230
239
209
202
152
166
155
195
205
199
218
255
275
250
113
200
196
213
163
159
200
228
202
140
193
182
113
231
214
146
249
133
227
191
195
199
209
216
177
214
191
231
176
209
202
214
213
194
221
204
221
151
183
233
255
223
155
174
232
170
271
193
204
222
147
227
174
203
241
211
192
245
265
182
248
173
138
195
245
215
205
171
238
147
244
119
157
207
189
215
233
183
248
181
203
225
179
239
190
239
214
250
196
254
222
202
139
219
182
193
123
145
212
174
210
233
214
211
213
111
227
192
194
206
167
198
121
181
222
227
154
260
201
173
243
168
180
201
219
201
230
202
207
222
226
185
188
243
228
220
222
204
239
219
224
146
174
197
179
215
205
161
190
248
229
192
127
226
202
229
93
217
163
184
145
169
231
238
223
242
175
190
234
188
168
156
194
197
141
202
181
171
166
254
213
206
261
201
240
190
186
190
241
206
140
155
219
184
156
125
122
211
183
172
184
204
248
203
191
241
190
184
225
211
166
233
235
178
182
249
217
276
189
182
212
247
172
284
235
230
219
162
168
257
233
247
186
217
216
170
221
180
233
231
164
196
185
218
226
184
207
194
229
215
197
201
234
191
262
242
202
161
236
218
258
229
119
215
224
204
176
202
216
233
239
210
186
196
191
205
201
203
135
191
219
210
176
221
194
150
175
207
181
176
240
203
276
166
206
183
188
182
195
205
176
210
257
218
183
274
213
190
192
224
226
244
239
187
179
180
147
147
210
221
198
230
210
208
170
219
197
207
185
244
223
215
266
256
218
182
150
231
178
139
182
240
211
196
216
242
169
224
250
179
212
258
184
218
158
143
256
201
156
202
220
233
212
214
208
226
195
195
163
216
209
223
198
195
252
241
243
253
188
169
204
191
163
116
202
121
143
278
140
216
187
255
226
286
238
173
175
158
256
261
235
263
187
171
170
158
223
242
175
173
160
158
135
244
213
206
204
184
167
129
226
153
193
168
217
162
161
206
197
218
201
216
224
204
210
173
178
197
158
176
161
199
242
210
184
207
206
188
152
172
215
195
255
171
180
116
184
197
169
158
247
203
213
135
202
209
155
141
194
241
250
180
201
191
214
201
161
188
197
200
245
146
131
202
226
236
203
217
127
216
207
293
184
159
254
137
201
229
251
193
194
109
213
213
199
190
198
173
200
174
207
229
177
202
217
180
165
230
122
187
200
152
195
208
222
237
208
186
203
244
197
210
229
169
237
188
236
207
199
213
181
186
188
238
203
218
254
203
198
183
214
140
212
168
207
184
254
186
237
205
231
224
181
196
201
203
240
206
235
197
206
183
218
132
186
182
127
200
165
215
211
189
188
172
227
168
275
168
138
255
198
243
189
192
195
235
214
209
221
225
272
216
210
194
145
197
221
250
221
211
217
160
191
131
143
236
183
185
248
151
183
261
212
233
220
257
201
224
297
130
195
161
203
196
210
178
178
184
236
207
218
198
245
179
158
218
196
226
274
211
177
237
238
156
187
162
138
194
252
186
221
182
164
172
217
162
197
208
180
205
197
215
143
199
275
227
189
216
180
210
231
208
227
212
177
206
237
173
255
131
226
256
207
129
175
170
178
184
204
206
195
167
172
183
161
201
189
180
177
230
196
161
220
220
176
169
114
199
186
220
217
265
192
236
136
201
208
233
171
230
233
154
232
222
187
161
220
113
227
273
179
131
113
218
199
191
160
213
186
172
230
209
193
187
144
206
155
211
265
187
234
241
178
182
178
185
220
213
231
226
246
177
145
239
239
208
133
174
288
198
236
160
220
252
205
163
273
233
220
199
171
214
207
215
155
229
197
157
237
231
202
183
205
120
213
206
193
164
205
200
225
127
166
198
242
173
242
182
238
194
151
223
222
189
176
156
233
219
154
184
209
194
180
226
155
250
179
184
223
160
184
209
94
217
230
211
211
187
195
186
165
202
178
137
190
229
226
194
203
155
135
187
226
216
195
159
274
175
167
218
239
147
222
211
216
184
186
247
167
237
241
207
181
142
199
221
263
172
198
217
172
237
253
188
197
201
212
215
212
217
211
170
274
217
234
209
244
163
217
184
190
181
185
197
237
160
160
196
228
200
156
182
191
167
101
192
232
139
176
172
146
236
118
166
178
204
257
229
196
229
207
197
241
190
261
170
166
189
229
225
203
177
226
225
173
214
229
267
187
140
239
157
154
218
203
213
242
206
183
219
216
201
236
214
229
172
213
154
155
269
189
207
195
282
202
202
201
224
243
182
246
200
184
107
185
173
182
215
231
204
244
167
202
230
221
91
248
243
214
223
166
230
223
197
199
129
137
184
170
206
237
281
188
182
250
215
197
239
253
222
219
223
183
191
208
234
203
192
224
227
151
226
184
258
171
131
221
198
239
169
229
192
138
168
174
236
158
241
234
204
189
164
198
171
191
212
239
224
141
160
170
183
233
205
190
179
211
217
260
208
201
277
182
280
191
199
131
208
212
197
131
218
189
239
188
243
194
196
201
229
178
257
115
193
139
196
190
248
240
153
210
189
194
229
143
216
192
145
191
236
192
208
199
219
211
222
149
170
223
176
171
241
168
150
159
236
202
157
198
215
246
243
219
208
175
165
194
194
186
145
174
210
215
208
271
215
187
175
159
256
230
246
278
164
279
210
220
206
202
225
151
222
220
198
165
246
232
180
238
201
236
129
231
207
202
196
174
123
117
266
201
147
192
249
226
191
241
184
236
224
190
220
210
248
210
241
190
207
212
150
186
209
171
163
253
181
222
184
180
202
282
237
169
150
155
167
227
170
174
124
196
184
155
195
170
217
218
234
156
152
165
202
201
226
139
274
117
227
208
195
197
240
258
201
252
194
171
248
190
147
249
240
188
171
199
190
198
211
137
163
190
146
190
241
238
216
144
165
161
228
226
130
187
151
208
241
215
185
219
158
211
191
224
256
204
202
159
242
227
172
214
272
192
259
200
239
185
131
183
122
152
176
237
263
237
199
120
177
133
227
231
181
204
163
190
164
203
229
217
229
159
196
182
255
114
173
182
224
206
187
168
239
195
212
215
190
186
268
229
198
239
243
266
204
231
209
222
206
179
194
176
139
202
205
232
254
203
201
224
119
220
200
91
180
195
190
231
215
190
229
143
161
225
193
209
187
215
206
198
170
204
214
210
133
202
215
222
197
213
236
221
194
129
177
220
184
198
201
243
178
231
211
220
179
158
183
177
206
193
199
165
153
175
173
174
267
138
196
200
213
233
248
197
234
164
206
253
149
218
162
190
178
198
205
166
168
198
183
228
192
233
182
199
175
205
189
150
222
220
186
163
201
186
165
222
193
223
223
253
149
166
191
257
248
196
190
219
168
187
160
262
246
189
116
151
182
228
212
193
216
192
201
171
188
208
188
203
225
163
127
224
223
183
230
157
201
185
196
220
226
222
222
197
232
173
202
185
177
184
164
273
174
182
200
204
238
223
227
221
207
155
206
210
239
239
217
204
228
188
206
174
182
176
217
225
251
112
167
172
201
172
201
200
186
176
151
256
209
217
166
198
139
212
128
204
221
221
209
246
195
202
271
229
245
273
195
237
224
178
180
168
230
190
228
176
209
148
199
193
201
241
190
177
162
254
230
173
215
208
220
253
216
222
234
211
170
176
222
156
226
230
215
189
189
188
208
225
159
207
162
158
220
182
208
221
229
156
180
239
186
196
194
200
217
154
188
228
192
213
150
145
187
230
202
212
221
234
208
196
189
261
235
254
168
212
201
181
143
209
192
247
218
212
166
221
151
151
181
178
206
205
186
254
155
194
187
199
247
170
242
211
214
196
212
151
223
221
172
216
232
164
226
256
212
283
212
233
185
230
214
182
235
238
132
209
224
219
215
182
204
175
168
167
153
182
206
242
215
200
208
173
222
159
197
218
240
127
155
192
212
164
114
185
248
251
185
140
265
163
156
207
252
225
276
145
162
180
201
201
219
261
194
228
244
212
213
204
151
204
185
189
199
164
192
278
189
230
197
184
135
221
246
185
223
216
213
213
171
220
239
165
200
231
199
213
196
227
179
254
170
201
193
227
191
184
233
209
199
187
187
240
186
171
209
250
148
239
160
247
223
164
206
260
206
172
200
254
210
187
152
200
200
194
238
194
158
152
216
181
187
218
211
146
220
215
166
241
252
150
293
200
187
176
176
142
190
210
228
219
231
170
200
155
215
168
251
251
159
179
194
206
194
215
181
228
199
215
236
161
221
240
119
220
210
104
128
181
170
194
286
253
214
188
247
126
170
206
145
215
185
130
161
141
232
207
223
256
156
158
163
252
198
164
196
205
210
220
180
197
126
183
156
196
234
160
229
198
221
218
261
206
252
191
164
180
253
202
231
209
171
186
189
204
237
202
150
193
146
107
167
225
176
206
195
235
226
226
172
221
241
225
205
204
157
256
205
191
205
193
218
213
228
252
123
200
197
196
256
168
162
212
244
203
212
224
227
243
200
167
194
213
179
174
171
199
188
138
155
178
152
251
185
210
200
147
227
248
235
229
218
241
208
248
231
252
171
240
181
200
171
250
166
168
161
198
192
240
152
160
231
249
213
163
170
225
230
189
186
224
265
205
155
212
156
167
168
151
186
131
124
189
222
166
190
157
248
171
212
208
253
201
220
223
197
178
241
192
171
157
201
248
247
229
168
190
136
127
223
140
173
220
191
241
221
157
203
237
219
213
169
185
189
198
207
172
270
152
173
172
262
189
185
219
213
233
170
216
150
171
229
183
174
214
225
249
166
176
162
174
241
138
215
143
245
166
139
180
199
155
145
221
185
190
208
244
210
187
183
251
268
225
199
250
212
151
232
227
160
193
228
185
264
220
177
197
91
225
186
184
173
184
162
178
189
165
228
149
202
189
191
170
238
193
129
152
203
186
260
248
233
214
229
244
134
149
177
245
188
164
209
222
206
220
226
194
216
212
208
252
209
185
217
255
230
151
196
131
207
195
232
193
233
209
226
211
274
150
212
187
226
157
256
204
154
270
248
210
147
152
228
205
220
189
258
291
236
174
209
197
202
212
199
200
239
235
224
237
134
209
221
211
150
218
153
266
254
207
226
206
161
210
210
126
263
163
179
178
192
214
211
225
207
218
186
220
200
191
176
191
163
137
215
200
237
220
213
173
250
168
149
221
251
189
249
268
165
232
205
226
176
239
241
242
189
187
195
223
196
219
195
237
160
274
201
181
194
237
259
194
187
110
178
241
238
192
216
189
181
168
202
288
212
224
153
231
230
175
158
180
251
227
175
173
190
198
201
173
236
215
185
194
102
230
236
268
208
188
194
248
171
159
255
167
183
222
236
168
216
146
302
128
227
234
217
250
181
189
228
169
188
255
246
196
169
216
236
231
184
248
175
109
196
207
245
192
187
178
183
254
258
280
213
220
159
169
187
147
227
185
188
208
166
251
130
234
145
171
237
209
247
252
216
182
147
208
232
189
182
260
198
121
159
184
160
185
184
158
254
135
196
215
259
149
170
147
214
257
179
175
233
144
240
166
145
167
191
206
289
236
220
176
204
232
180
203
234
230
167
247
174
192
219
245
257
176
207
226
214
263
186
177
118
148
171
203
183
209
143
186
191
250
175
195
177
221
259
255
176
152
173
207
226
197
246
231
185
183
213
176
285
187
159
184
192
208
190
204
171
229
214
200
235
202
214
169
264
196
197
241
214
239
260
147
267
222
255
267
142
169
157
197
234
184
210
184
213
212
166
135
175
223
193
196
267
146
170
202
202
217
195
205
259
177
148
249
179
234
218
188
201
138
222
161
94
238
238
232
192
199
234
212
196
254
197
228
189
155
208
216
231
243
229
192
255
143
208
170
181
168
169
245
194
202
192
269
207
136
190
250
253
217
234
190
209
211
229
222
231
237
177
261
184
170
222
202
190
198
224
185
198
216
173
251
142
223
142
189
222
150
187
186
193
184
222
234
167
200
218
174
135
272
152
206
196
212
228
176
178
183
277
167
209
207
154
201
206
216
152
222
172
205
194
224
192
177
214
208
144
196
189
175
222
241
197
238
226
226
185
179
188
175
223
261
203
179
199
220
145
196
186
192
214
143
233
251
211
265
160
192
214
171
215
241
209
174
218
220
220
239
207
245
160
184
207
266
178
239
270
249
200
230
229
208
187
222
138
169
188
196
177
177
235
128
183
236
207
205
104
230
183
165
197
155
156
244
271
182
232
181
217
202
236
189
167
136
207
212
194
197
157
156
173
224
278
137
162
204
205
151
135
217
267
175
182
171
188
164
287
216
238
209
245
244
228
200
205
182
201
213
247
125
164
221
126
204
167
170
197
197
196
189
221
197
145
181
224
139
277
197
201
221
238
254
198
229
147
185
207
223
207
209
178
227
225
194
177
226
236
247
167
204
142
219
198
188
224
142
196
214
192
195
246
216
148
155
175
223
180
167
180
171
214
187
246
205
201
192
182
162
200
208
221
181
215
210
231
163
162
168
182
200
205
264
205
222
191
206
256
153
170
205
213
244
165
194
230
166
257
226
216
204
229
206
173
218
218
241
194
223
251
238
225
188
233
222
217
196
179
183
169
156
125
250
138
224
217
222
207
161
163
150
217
226
174
157
207
178
194
249
212
211
209
263
185
164
205
159
200
194
201
181
187
187
159
199
196
138
199
220
187
226
237
179
132
153
182
206
168
234
215
221
196
233
195
229
208
232
157
231
134
211
219
168
223
240
186
195
179
226
163
149
112
162
197
182
201
254
218
215
201
218
201
198
229
200
114
188
225
228
186
215
184
239
191
184
239
143
173
222
192
194
213
200
116
190
157
222
211
183
200
217
183
197
185
228
177
210
219
195
198
200
257
196
245
189
228
205
188
226
220
207
182
182
206
213
145
215
220
216
171
146
197
238
206
148
176
210
186
199
253
187
232
159
131
225
197
200
297
189
156
224
168
266
221
193
259
222
176
220
194
176
244
185
174
219
176
159
220
224
149
170
191
206
211
137
203
221
206
233
209
202
229
205
205
203
219
130
213
191
237
107
206
186
262
240
226
220
201
177
162
197
191
172
208
197
182
163
271
125
198
209
168
188
206
165
159
157
194
195
237
198
147
200
219
188
196
194
211
221
234
144
234
235
192
274
198
201
204
191
195
239
176
216
210
179
200
239
172
206
191
208
184
233
205
158
180
250
196
222
258
159
248
208
174
184
173
210
223
214
230
191
165
165
216
179
233
139
188
176
130
171
210
226
247
195
191
218
151
215
200
238
214
229
255
155
194
170
214
206
214
201
143
228
184
204
231
138
157
191
207
231
261
165
253
201
214
117
188
167
236
211
245
160
172
215
218
174
188
211
215
176
218
209
191
231
182
224
240
202
186
188
159
167
223
227
198
198
170
177
210
196
252
178
229
217
196
185
257
270
203
163
231
170
230
178
205
149
186
241
180
149
160
124
174
189
191
197
185
192
204
169
176
233
138
171
258
175
201
186
220
157
257
179
233
269
209
231
149
181
218
210
206
220
162
175
215
217
217
212
188
218
213
211
194
169
221
129
192
159
209
199
222
222
215
172
188
230
157
212
232
220
168
209
140
164
197
196
237
172
208
151
220
168
225
180
176
208
171
262
185
211
87
156
136
157
218
170
190
131
195
214
178
165
215
260
253
227
227
206
185
261
230
216
200
130
188
186
187
156
206
179
213
191
261
238
161
181
231
177
185
132
213
235
172
213
158
146
214
208
248
119
244
202
147
240
196
246
137
181
200
200
208
197
193
199
199
209
222
154
149
240
153
170
146
165
168
183
195
193
194
117
249
243
246
202
206
198
191
225
232
250
189
176
205
204
177
146
185
237
192
167
245
217
245
178
156
132
201
196
145
210
115
158
204
269
160
200
207
228
158
191
170
211
268
197
224
230
273
175
212
212
186
223
241
218
155
210
233
137
240
172
203
185
264
196
220
262
164
200
115
164
150
227
164
215
210
215
192
268
167
148
196
200
160
199
231
243
261
202
177
249
217
217
222
220
178
243
191
143
172
202
222
122
209
195
156
146
242
220
164
245
203
223
230
156
217
220
192
174
160
176
234
269
220
218
150
221
205
225
253
223
208
212
241
252
240
204
133
189
190
210
199
213
274
232
222
202
184
244
152
173
256
135
202
212
156
167
261
242
226
170
170
236
144
180
221
244
212
161
221
188
229
220
211
187
268
268
163
252
246
204
157
219
206
237
187
178
254
192
200
201
201
231
151
201
184
171
148
206
177
156
258
196
235
209
201
198
164
182
193
261
238
115
170
225
186
243
189
187
185
198
199
250
206
227
199
182
201
180
209
206
218
210
177
188
238
157
214
219
192
231
176
213
120
115
228
227
147
185
198
194
170
191
242
214
244
185
195
223
118
251
182
197
209
184
188
185
161
196
233
199
182
239
206
231
223
178
230
153
209
202
221
245
239
167
180
207
194
215
198
243
192
177
157
202
176
194
224
164
242
222
177
258
203
219
205
238
200
166
155
236
240
164
181
217
197
214
207
232
167
169
213
207
149
241
227
160
220
183
189
196
236
152
175
217
193
239
220
201
194
246
220
198
143
221
174
240
184
163
196
140
200
181
223
230
154
143
213
165
167
178
241
182
185
230
182
213
228
200
219
168
270
189
171
191
155
164
260
215
186
196
230
183
271
178
171
199
183
225
221
167
199
147
211
208
180
171
267
215
219
139
168
199
164
179
188
173
240
197
179
219
239
243
191
149
231
192
258
143
208
196
168
182
201
254
159
163
162
160
173
221
187
210
207
157
234
214
231
194
204
157
204
210
160
186
176
164
175
159
144
268
252
218
183
173
246
226
223
190
235
232
148
152
232
158
192
176
183
209
193
242
189
223
216
250
172
200
245
191
137
144
263
253
219
163
216
209
166
195
210
176
249
230
204
164
229
244
172
175
228
261
182
189
214
212
120
182
210
111
175
219
177
210
222
219
185
257
129
174
161
203
190
267
145
224
212
168
221
205
234
233
207
200
228
188
200
209
189
218
118
207
196
214
224
179
255
187
190
157
184
139
258
170
193
227
145
214
242
178
197
218
167
200
198
241
150
223
224
223
178
239
206
215
174
204
153
221
208
171
204
214
198
238
202
184
185
153
220
192
201
196
148
174
188
201
254
143
173
200
139
242
177
235
182
232
203
185
184
212
227
180
228
189
223
226
241
215
288
188
184
190
161
244
215
236
258
182
250
253
265
192
186
218
153
227
124
130
218
141
209
224
220
152
180
207
201
161
166
225
217
201
198
231
210
191
216
159
218
185
251
238
176
246
97
164
235
207
246
215
163
200
206
216
210
269
228
264
242
203
277
198
221
158
201
197
167
219
209
171
274
193
227
243
217
160
224
204
174
193
162
229
188
204
171
215
236
184
169
183
203
273
152
207
147
193
164
228
237
212
241
189
181
170
175
240
197
164
121
234
182
148
186
196
162
204
194
230
210
213
258
91
231
193
238
234
195
169
110
228
217
174
250
184
198
190
218
225
148
157
220
153
234
228
226
196
141
224
189
197
180
203
246
221
190
247
156
278
180
157
209
220
185
245
175
271
240
251
270
195
245
211
208
161
186
139
150
181
200
238
196
124
175
182
204
166
195
187
170
201
114
178
232
200
221
233
201
187
219
147
144
239
188
195
183
275
138
218
242
189
226
218
215
177
240
197
210
133
226
191
132
233
258
286
157
212
170
165
221
128
181
180
180
129
239
232
141
230
208
191
180
163
215
199
188
199
199
155
202
258
247
226
213
162
217
259
199
205
223
202
159
192
208
219
197
174
127
196
205
245
238
218
196
151
165
180
209
183
165
178
249
194
159
196
183
227
184
218
206
196
222
208
211
125
192
256
238
181
207
164
229
154
130
256
209
220
189
152
221
257
230
207
193
154
224
187
222
194
229
185
233
197
235
245
141
220
227
244
218
165
199
153
216
199
230
203
223
157
201
211
179
208
189
219
185
209
206
217
161
207
177
147
155
261
193
187
214
196
147
237
188
174
228
201
169
196
241
227
193
232
163
201
209
169
207
224
157
180
245
167
215
182
175
211
207
181
169
219
210
219
201
187
230
170
249
199
192
215
202
241
216
207
240
148
168
211
233
152
205
232
189
218
186
193
173
197
230
212
214
203
189
209
231
250
159
216
203
261
192
133
174
200
175
267
236
229
213
171
172
219
200
207
210
215
205
270
228
214
157
198
161
188
193
168
200
149
250
209
215
127
205
197
188
212
226
240
193
239
227
199
214
120
181
163
150
220
170
195
196
194
199
233
209
219
140
230
177
192
221
179
268
237
240
168
216
198
254
190
217
251
180
232
136
221
179
182
232
157
171
175
246
144
189
186
191
247
184
241
240
194
212
276
195
238
178
203
167
229
182
201
197
192
239
173
146
193
216
201
212
186
135
156
198
218
247
243
251
244
234
190
186
233
211
212
197
186
197
185
168
221
167
208
156
114
196
211
177
251
199
212
216
106
275
255
236
197
240
211
228
162
224
208
176
217
194
216
179
130
260
272
236
179
212
246
240
221
217
282
230
169
238
172
191
244
227
202
265
194
213
258
206
238
186
234
185
209
145
221
172
203
202
239
250
205
176
213
213
199
220
241
187
199
235
246
239
219
223
185
216
257
199
243
170
206
265
203
261
177
149
137
231
267
200
213
250
199
243
127
248
236
154
208
259
228
228
153
186
233
132
206
251
223
230
201
189
182
198
217
204
216
218
189
225
232
194
238
207
188
217
148
164
202
130
227
175
192
215
217
241
212
199
177
265
231
190
191
209
176
245
247
243
197
244
221
207
186
187
196
237
223
189
228
237
191
187
194
292
239
154
223
220
204
209
203
146
186
226
188
259
175
187
219
218
220
224
254
250
112
209
174
179
213
276
211
186
187
225
179
179
171
242
212
239
192
160
239
244
243
179
181
157
158
199
155
181
144
203
190
232
188
215
210
161
183
188
214
256
197
198
176
217
193
224
199
278
202
194
208
251
186
249
159
163
148
165
137
142
165
168
162
196
227
237
169
136
227
194
215
205
161
231
196
162
258
206
183
150
134
225
221
208
249
140
163
175
196
153
190
216
216
232
239
156
176
206
184
226
239
212
202
211
167
244
209
119
181
141
257
224
155
193
204
164
166
161
236
153
191
213
166
203
227
189
178
231
197
192
205
215
207
208
235
203
166
161
235
156
244
191
163
216
191
207
173
171
199
257
200
92
244
228
198
182
179
223
191
163
245
171
183
230
225
261
250
236
213
204
188
155
241
156
179
189
178
282
182
165
136
195
233
154
297
177
240
222
233
198
216
208
200
173
212
181
204
171
268
203
180
193
234
177
248
201
241
204
190
196
158
206
197
160
227
176
131
241
239
141
144
174
193
174
203
110
243
178
175
244
223
193
253
220
157
214
233
168
191
197
256
179
232
148
189
222
202
176
272
220
233
188
215
174
216
187
156
182
202
256
226
281
173
170
198
222
221
204
190
202
227
193
176
197
220
207
183
175
213
241
195
158
236
196
189
227
185
215
228
234
220
257
189
242
164
195
202
259
210
237
222
167
204
201
175
232
214
199
212
168
198
235
215
218
176
181
243
188
167
251
208
176
180
231
249
200
257
201
179
233
158
256
145
176
237
153
142
205
167
220
191
239
178
199
256
248
172
197
227
152
222
269
197
262
148
170
221
214
191
162
193
164
135
166
179
202
210
171
158
152
239
232
240
207
273
223
225
144
252
252
244
178
185
164
131
228
201
240
190
162
208
184
225
196
186
224
250
240
167
169
255
173
224
204
127
189
208
169
239
159
136
225
208
160
190
163
169
258
233
188
110
258
208
255
253
212
186
203
169
286
201
144
158
185
223
194
180
177
230
232
227
228
238
191
210
211
184
229
256
183
170
189
130
216
143
139
204
241
210
190
160
201
242
191
148
149
236
116
209
226
175
185
218
161
186
215
182
161
228
111
165
169
176
141
199
196
197
230
213
190
208
189
141
179
180
221
196
202
175
184
166
223
178
165
140
214
208
211
181
241
124
202
200
175
235
196
180
178
207
198
252
155
177
191
214
195
225
210
261
176
209
217
159
248
193
222
302
203
256
179
153
200
196
216
184
261
126
243
244
218
196
168
192
159
185
181
250
140
143
201
220
231
264
230
139
164
245
150
162
200
212
216
180
214
185
199
190
194
220
226
180
154
241
150
158
172
248
175
172
232
178
218
192
229
224
218
171
179
234
233
157
197
152
200
136
160
220
246
158
183
165
129
153
249
171
183
191
177
214
155
183
193
136
254
210
166
142
185
121
175
209
161
240
163
177
212
245
220
234
177
206
189
240
234
215
211
178
171
196
190
201
244
172
208
212
202
233
218
199
239
250
250
247
196
157
172
238
140
250
180
176
179
233
247
193
236
238
152
187
221
210
197
189
243
258
208
215
168
201
178
157
141
224
142
153
208
209
231
154
185
229
248
152
243
270
203
149
176
208
166
244
260
225
183
224
147
227
221
247
238
209
225
259
200
238
153
257
180
216
181
250
150
204
190
222
182
246
167
180
240
172
161
235
144
192
210
218
205
261
206
154
182
206
195
167
191
230
154
225
197
187
233
171
161
200
223
216
196
195
231
178
211
169
167
208
224
149
186
161
161
225
259
158
182
190
270
238
186
208
233
214
208
187
160
174
242
161
274
136
221
244
167
138
178
235
274
278
196
210
202
179
231
161
162
213
151
212
159
164
201
243
216
183
261
173
178
173
187
242
181
204
248
156
231
227
169
239
180
163
178
225
221
205
243
152
226
259
218
180
201
240
204
201
210
176
188
223
160
210
165
147
215
219
156
249
147
166
248
206
233
199
209
245
212
184
167
123
218
198
196
250
174
185
187
195
203
186
145
185
152
156
135
259
235
172
145
264
200
198
222
242
221
194
221
217
205
250
193
220
170
215
193
190
214
165
214
234
203
215
222
187
208
224
148
163
226
232
216
151
300
234
234
183
219
240
185
191
151
255
169
133
170
180
232
219
208
160
160
162
169
204
187
222
189
218
261
151
187
147
208
218
161
205
247
169
136
238
219
157
195
154
190
220
166
178
215
211
175
262
200
210
208
194
221
225
163
211
193
229
155
232
216
254
206
182
154
185
193
202
170
227
213
204
236
201
196
232
222
216
169
97
193
202
175
191
150
251
191
236
204
209
221
255
246
221
189
231
262
230
226
228
189
209
223
206
159
187
125
170
184
250
184
249
159
155
224
176
179
207
173
148
150
182
231
132
219
185
204
214
241
213
190
112
237
199
217
140
158
248
213
187
224
192
205
216
227
172
244
168
198
218
169
169
220
117
171
233
196
214
236
174
175
191
243
211
143
218
257
172
236
193
189
186
176
231
238
249
178
151
206
175
194
252
230
217
241
235
175
178
177
155
234
145
206
140
222
177
164
184
170
230
228
226
227
233
153
192
198
215
166
203
228
158
171
167
153
163
150
197
179
251
200
194
218
164
221
213
208
186
206
191
206
181
229
276
214
233
183
226
202
154
154
218
162
199
191
272
195
240
252
201
202
269
208
206
223
177
170
162
174
253
191
221
224
154
214
222
176
211
165
162
216
222
243
246
204
220
193
247
222
228
206
217
240
224
195
207
158
182
229
164
261
225
191
198
239
189
220
200
203
242
147
195
166
193
252
148
266
176
209
218
153
161
232
168
232
190
164
179
178
145
178
198
199
209
207
276
195
212
238
219
230
264
190
171
165
163
189
244
160
237
135
175
159
207
174
210
245
218
210
181
188
136
199
216
237
231
195
276
169
163
163
229
225
170
239
252
103
183
190
181
270
127
197
212
248
129
199
183
168
222
157
183
155
225
125
176
164
142
199
236
190
236
272
170
114
212
142
234
245
189
220
252
198
238
261
232
167
180
181
251
153
217
229
206
232
209
162
179
146
196
267
201
207
212
213
227
236
218
224
198
217
185
143
150
147
211
151
171
247
217
211
243
230
225
159
193
160
199
144
210
278
192
245
202
180
194
221
175
197
191
177
135
245
240
251
221
139
194
164
217
225
155
255
138
172
198
211
227
141
203
180
220
198
223
204
174
191
171
191
237
139
130
235
187
137
159
218
260
227
141
240
251
222
171
286
232
184
201
293
193
207
241
234
162
136
206
236
118
203
263
205
172
162
189
195
215
184
209
225
158
249
166
134
227
230
204
152
174
195
201
157
195
206
249
225
209
248
237
220
171
117
182
226
225
147
161
228
149
180
164
191
210
248
205
262
153
225
243
197
214
238
259
217
230
171
177
207
218
198
176
232
205
206
240
229
251
190
146
196
223
199
185
239
152
177
166
229
234
161
160
209
204
143
226
203
273
246
181
174
234
189
162
252
267
186
176
150
214
240
200
260
190
236
265
226
179
178
148
222
157
202
200
217
246
236
175
192
207
192
169
187
183
207
196
213
189
204
145
231
202
168
250
211
193
198
229
147
197
208
159
192
214
176
165
218
207
219
172
236
202
239
188
204
273
180
212
235
227
163
159
253
253
183
188
229
151
209
183
133
187
209
174
212
245
169
127
177
206
181
224
250
157
175
176
213
138
207
195
146
184
278
168
132
222
191
226
176
196
136
151
182
251
225
185
209
246
174
152
247
215
220
172
286
219
249
197
182
168
227
184
147
125
225
179
232
240
170
157
170
202
264
189
188
224
239
183
205
152
184
226
234
136
248
202
233
179
191
242
190
208
128
213
193
221
223
219
169
216
184
198
233
224
217
210
194
268
166
208
131
228
208
194
243
220
155
219
146
227
213
219
151
208
193
211
172
174
227
174
163
199
223
195
151
207
176
193
222
218
203
233
222
169
196
215
250
233
247
197
203
202
198
184
146
213
246
249
226
193
160
151
140
213
210
180
189
272
160
201
234
151
199
212
178
212
248
171
228
221
266
206
209
219
204
155
133
143
130
217
186
186
231
155
211
182
212
202
167
198
205
186
229
201
191
181
220
175
202
145
160
175
211
220
240
226
218
182
149
213
188
191
169
262
224
192
222
162
216
240
195
209
228
164
221
215
186
220
195
190
170
240
171
206
168
227
144
209
215
209
175
206
206
189
218
243
238
176
210
161
164
254
227
121
171
156
202
195
162
175
162
239
142
178
171
220
218
187
222
181
228
240
182
176
221
209
147
240
163
216
207
221
174
171
177
208
173
196
214
202
186
161
223
177
215
206
151
169
165
163
176
258
154
190
197
200
235
200
196
212
199
230
147
197
204
201
216
211
203
147
265
215
235
231
260
175
186
210
203
219
259
201
221
185
187
178
216
238
208
247
241
213
152
223
185
208
198
192
204
222
166
221
229
185
211
168
212
227
182
176
182
181
264
236
196
213
247
212
230
140
229
163
194
216
257
217
174
233
166
217
171
185
179
201
230
197
204
148
221
198
213
186
207
232
259
189
225
198
248
194
207
244
198
200
221
178
144
225
179
154
208
225
135
254
169
199
141
199
216
186
226
179
203
198
130
200
206
134
188
164
180
216
249
153
157
160
276
176
165
257
173
220
143
223
171
185
259
182
158
190
201
219
145
265
222
230
117
222
237
200
247
212
211
218
200
154
142
141
229
174
178
186
134
165
197
181
146
237
224
210
196
222
237
212
196
179
223
184
218
225
203
248
187
194
176
170
150
203
154
191
214
218
196
249
226
154
152
202
218
135
213
184
232
163
140
241
143
239
217
209
235
216
199
253
214
206
227
175
183
157
224
189
166
182
236
134
203
166
178
252
143
234
212
262
240
202
201
277
250
213
188
152
250
154
210
220
174
222
166
216
194
200
186
231
153
254
238
145
213
286
247
239
190
183
207
228
274
207
187
204
210
233
245
151
223
251
178
216
242
236
184
211
207
209
224
196
181
158
130
151
172
194
159
182
168
203
256
246
206
205
229
204
228
230
218
208
233
229
128
172
201
183
236
192
241
146
212
173
220
156
195
236
221
185
166
238
212
237
248
192
209
232
170
179
283
217
191
243
177
145
169
148
198
237
175
209
156
185
223
175
225
215
191
167
203
224
219
187
222
210
208
197
257
133
181
246
249
217
187
212
214
152
225
126
201
173
211
185
127
166
206
200
279
200
244
186
229
205
235
196
202
220
159
225
180
238
218
262
149
297
132
179
206
201
148
195
261
166
206
143
178
178
163
198
223
223
185
222
206
162
211
230
184
216
222
216
173
203
188
178
250
165
136
214
176
196
241
197
183
243
202
211
181
169
204
239
235
186
189
186
193
174
217
205
234
151
168
133
179
243
198
182
229
279
112
214
212
205
176
197
134
174
246
218
183
193
261
209
172
220
199
216
193
258
111
213
174
186
222
195
214
230
272
210
164
187
222
227
196
248
177
131
187
231
190
106
174
219
203
190
207
199
190
137
147
214
218
192
181
177
194
142
219
162
258
195
200
180
275
269
204
175
158
167
176
217
223
248
192
230
235
133
220
126
215
216
167
203
234
177
221
213
146
192
235
202
175
219
187
269
220
146
171
213
227
215
241
217
243
133
207
220
200
142
135
146
173
232
199
218
214
166
237
171
207
228
202
166
191
116
224
147
200
161
234
212
171
145
198
214
207
161
139
210
218
240
200
186
190
226
178
162
192
237
124
181
228
242
154
263
136
179
220
165
229
221
155
187
236
151
218
222
262
190
247
176
173
205
206
217
210
215
233
250
277
195
207
212
135
242
242
237
177
208
199
196
170
212
229
213
202
245
131
254
184
200
178
175
223
169
221
157
232
215
218
217
210
205
186
194
167
137
170
242
187
202
172
190
219
151
164
173
236
144
245
165
197
220
204
197
175
197
201
164
229
217
200
188
203
264
229
252
219
223
189
179
202
180
216
167
178
149
159
239
177
187
144
142
154
206
226
233
243
163
193
152
231
265
212
190
184
219
191
213
220
207
214
264
200
170
168
206
172
198
249
210
190
181
236
216
188
213
220
240
190
195
220
128
216
145
218
181
192
175
189
204
223
149
180
201
256
216
235
206
155
141
171
144
211
259
158
138
165
203
191
181
208
242
262
181
197
141
132
215
148
252
244
223
231
243
132
198
151
232
212
167
191
219
249
178
202
145
149
204
243
209
239
169
213
144
269
205
241
191
184
175
190
196
163
216
188
225
217
180
280
199
208
213
159
221
211
157
192
257
215
227
193
200
135
224
202
173
302
187
203
213
203
159
214
226
159
201
237
204
183
213
179
195
233
241
166
215
202
168
213
242
184
171
199
258
186
208
204
230
188
193
242
224
218
173
213
145
225
149
184
158
207
196
233
124
259
244
130
202
183
230
238
244
202
253
117
252
225
169
238
142
152
190
205
138
230
162
188
206
133
165
188
231
215
206
209
209
234
220
168
197
189
214
161
199
183
206
220
121
190
143
212
199
258
183
135
154
232
241
200
168
210
230
188
222
181
189
209
239
145
226
199
157
205
245
124
185
173
199
208
239
146
160
164
176
187
174
171
160
247
253
164
224
159
192
209
165
159
220
180
174
165
222
189
126
196
191
214
238
207
120
264
173
197
215
242
166
213
237
225
122
237
202
215
177
202
234
226
198
246
226
180
217
175
184
204
188
196
277
186
187
198
212
193
212
179
181
273
203
180
225
260
182
132
233
206
186
198
182
194
251
222
150
164
227
227
226
215
206
159
172
179
207
196
118
151
266
189
251
185
252
200
212
180
205
250
191
195
216
182
157
263
179
189
163
172
194
236
164
241
177
184
172
181
216
150
200
264
200
190
240
223
249
297
197
161
217
221
215
213
224
228
157
221
175
190
239
225
158
193
255
209
189
198
252
235
177
187
189
180
199
201
246
192
160
191
173
198
230
196
227
140
145
169
215
270
175
204
183
192
223
217
168
198
212
189
211
208
165
240
242
157
151
219
164
192
217
204
222
193
158
273
223
209
226
235
179
187
167
171
194
237
196
240
255
175
118
209
179
219
208
205
264
149
190
215
178
162
164
211
150
185
199
186
216
243
183
194
200
169
209
226
184
237
187
186
211
176
218
230
140
150
196
140
208
207
224
159
228
125
242
202
227
242
194
185
232
193
188
227
190
190
158
210
169
232
233
231
176
161
204
237
182
192
160
233
233
229
251
140
193
195
227
233
229
214
226
186
172
225
244
188
208
164
153
169
189
231
223
195
198
217
151
160
177
252
224
275
238
262
165
249
197
221
233
216
225
178
271
222
192
145
191
221
253
227
232
214
222
182
179
216
269
207
135
154
187
272
216
221
236
253
239
251
205
170
210
260
234
171
207
255
190
132
165
161
212
184
165
149
231
181
207
180
241
200
244
204
221
147
180
209
204
190
189
169
225
242
206
195
220
176
200
217
190
183
225
185
256
224
258
171
257
214
159
207
233
212
196
191
185
150
188
181
265
172
189
195
229
221
219
155
220
213
208
197
186
211
211
281
190
236
215
205
162
167
251
226
143
206
220
173
171
200
220
233
186
193
228
190
174
219
198
235
199
171
221
239
192
256
130
201
173
231
151
187
225
134
203
204
206
154
200
200
206
184
182
181
175
191
233
214
185
271
231
206
158
148
206
180
228
147
232
180
165
152
211
214
223
212
175
231
207
205
249
234
262
272
194
215
254
189
183
236
179
191
234
222
261
222
204
205
161
192
169
217
158
156
191
233
241
185
130
206
186
182
216
243
242
219
190
179
171
139
306
141
163
192
196
191
207
161
196
114
185
202
225
212
222
200
265
190
213
224
192
159
185
161
225
160
200
174
119
208
168
225
243
249
196
228
206
177
220
202
135
247
174
251
215
249
223
210
181
235
213
227
216
165
140
205
213
194
220
230
142
203
225
227
202
185
162
180
245
210
224
236
184
209
140
192
174
193
208
248
242
139
188
181
184
220
140
231
164
202
235
124
159
162
161
225
225
166
229
192
161
179
193
221
217
222
208
229
234
213
176
217
155
204
224
192
237
191
227
184
158
218
203
233
222
227
182
174
124
171
190
180
184
196
195
189
177
180
170
174
172
209
177
189
201
192
231
224
214
172
202
188
159
153
213
230
181
225
143
154
187
217
237
199
144
118
237
176
222
184
214
210
189
214
261
168
152
242
204
205
243
159
203
167
203
163
196
224
213
120
200
183
196
167
169
198
194
225
282
196
186
182
208
186
221
243
199
217
207
211
124
249
221
213
196
250
209
184
233
193
212
223
168
170
218
163
176
189
194
195
138
214
198
216
198
231
224
138
140
238
185
219
119
220
190
225
219
244
173
211
224
240
208
173
264
199
235
203
209
255
168
184
203
233
171
195
202
190
240
241
230
247
189
161
211
181
161
237
202
156
155
202
163
241
237
221
135
245
168
135
195
152
196
212
162
231
202
143
194
227
167
174
232
203
257
166
181
220
211
158
163
216
175
193
257
219
212
256
171
183
178
175
175
183
224
263
168
185
200
213
222
175
170
244
190
189
194
204
217
167
218
163
134
211
190
232
177
186
252
190
259
210
180
159
195
270
203
239
120
159
200
115
182
207
132
186
153
181
178
231
186
199
171
178
170
209
208
235
230
174
174
161
227
219
187
205
141
283
186
212
197
157
182
158
202
164
182
193
213
216
220
184
201
201
241
231
147
206
190
183
197
288
219
220
218
198
147
243
196
192
135
225
232
179
229
215
254
226
184
180
204
251
183
210
205
217
199
193
253
206
232
228
176
154
214
162
206
208
205
184
183
163
194
275
153
187
225
223
138
207
209
224
175
204
234
131
222
151
217
220
177
214
180
295
172
218
172
190
181
217
195
198
256
168
211
240
162
231
219
160
182
161
181
246
209
186
229
178
224
200
227
255
181
189
201
168
278
233
193
190
171
195
205
235
228
182
276
206
153
200
212
183
222
241
154
204
196
213
190
216
203
187
196
211
213
209
220
166
184
225
160
153
208
198
152
184
213
163
189
161
262
163
227
211
231
176
263
172
262
154
241
187
183
234
224
252
215
168
152
160
204
204
186
274
232
221
177
186
214
187
191
232
187
204
136
160
221
195
218
203
198
239
207
253
264
145
206
225
230
218
237
191
141
185
177
187
261
165
209
229
183
217
183
139
177
206
234
207
129
235
111
151
202
205
223
238
178
221
222
133
105
163
221
240
167
240
201
229
216
186
220
193
190
216
237
214
166
185
250
153
160
202
179
240
240
212
175
172
165
161
183
200
149
174
259
194
217
202
199
194
164
153
173
201
209
159
185
201
186
196
195
158
189
241
208
198
160
176
159
200
179
176
139
265
271
266
158
193
159
177
185
248
170
230
160
231
223
187
174
235
222
260
176
185
197
251
216
171
151
257
211
192
169
192
268
235
198
256
207
200
204
228
256
109
186
182
244
183
141
223
173
91
191
182
187
239
230
236
127
178
215
205
148
252
211
172
155
191
247
155
310
173
229
226
191
238
226
240
244
158
243
231
219
214
221
240
214
289
202
239
221
169
244
177
231
220
206
232
171
199
233
177
240
161
208
173
175
223
189
193
253
224
127
201
195
166
243
135
161
221
177
149
219
198
209
178
257
232
160
237
196
224
119
209
176
179
220
163
203
157
230
176
205
153
131
181
245
144
206
253
189
224
186
207
219
195
220
236
159
148
155
214
191
118
208
201
169
245
180
158
230
230
211
248
129
210
168
227
276
201
242
213
182
199
206
207
204
229
134
210
180
212
225
230
248
234
191
197
212
153
254
266
187
228
237
208
207
192
155
209
156
163
134
246
143
198
206
212
195
226
229
228
210
212
198
218
209
249
169
189
275
206
230
132
219
261
226
212
209
187
170
185
191
203
173
184
216
142
206
149
199
209
207
237
146
199
226
185
157
172
226
209
138
195
207
208
199
181
226
208
238
196
222
212
166
223
216
137
185
176
204
184
252
183
186
183
249
143
184
193
174
224
216
201
186
241
231
150
150
189
126
197
205
203
205
203
152
128
132
193
161
157
156
221
244
167
163
139
182
230
187
237
260
207
181
260
211
229
182
205
134
151
223
200
175
217
229
193
219
198
214
237
207
228
239
185
197
171
228
233
261
177
217
218
225
145
232
183
234
233
227
194
210
203
189
202
242
213
178
195
149
213
255
205
229
235
226
188
180
206
250
196
192
143
239
135
176
223
202
148
188
132
194
146
189
282
256
232
231
180
194
182
227
220
142
210
169
215
196
182
172
267
90
237
198
261
173
174
196
172
133
231
192
249
241
202
151
194
187
208
133
220
191
198
220
199
171
213
243
203
219
203
206
195
198
209
187
262
174
190
226
189
223
232
159
176
191
196
215
243
224
133
229
227
196
238
184
201
176
150
239
115
164
175
222
175
231
187
192
178
183
200
184
229
221
200
222
214
187
183
165
233
215
214
217
264
208
167
235
241
217
195
193
185
167
190
137
170
199
196
171
197
193
252
204
176
208
208
184
165
177
249
224
224
213
181
248
211
249
202
226
199
196
226
280
150
169
227
152
212
195
233
219
183
256
281
202
246
206
211
227
241
209
214
148
205
182
175
215
194
182
246
220
196
237
132
209
209
116
245
168
206
240
171
185
184
251
192
201
167
189
183
198
164
184
203
222
197
201
184
144
164
167
138
159
217
292
176
151
188
186
170
229
226
223
147
204
205
213
239
235
212
231
206
215
281
203
228
201
120
205
159
162
184
204
200
222
162
145
194
179
186
155
198
228
213
212
172
197
217
192
205
272
233
183
227
169
210
217
205
174
209
163
228
189
169
171
171
122
240
248
201
228
188
204
129
214
217
193
206
129
189
201
213
216
208
202
244
186
195
198
202
223
230
232
195
232
187
195
207
165
235
224
211
174
245
153
206
208
203
179
286
211
206
143
218
275
240
171
187
220
161
207
188
175
200
211
223
160
269
221
155
135
147
188
160
194
217
206
244
242
164
223
185
167
183
175
228
206
178
197
168
245
207
232
138
234
190
216
194
143
182
253
203
189
168
190
152
194
179
227
206
273
226
189
193
181
120
178
94
217
211
224
189
228
180
225
236
187
188
227
201
269
187
229
232
158
152
204
188
216
99
216
225
212
265
227
200
206
243
245
206
205
177
228
215
216
193
184
240
185
249
206
225
158
204
211
196
161
183
211
225
226
201
216
230
204
196
222
236
294
142
166
243
232
168
200
210
229
194
191
200
144
110
217
147
219
239
128
220
198
209
169
256
249
232
215
189
182
231
139
195
207
198
229
232
219
218
184
201
170
188
249
212
131
179
232
172
193
219
218
144
233
173
195
224
206
191
220
220
231
238
194
209
209
204
205
202
176
281
180
197
273
245
137
198
154
172
160
182
193
183
144
174
134
240
198
249
190
178
124
143
184
242
196
249
97
195
162
220
274
237
235
136
175
141
185
199
214
234
209
181
184
97
256
142
178
233
207
227
163
213
172
183
140
222
148
204
165
203
155
227
184
119
186
222
197
206
226
223
219
224
212
220
188
154
284
149
266
207
211
232
233
130
180
191
230
245
166
174
196
231
264
225
180
132
167
233
221
145
195
255
141
166
208
184
221
191
165
252
180
150
200
161
220
202
260
250
166
203
138
151
195
162
215
162
169
252
154
158
172
236
200
226
217
201
249
223
222
209
215
208
204
175
192
161
195
215
227
205
171
213
196
232
234
84
205
245
191
159
174
226
196
171
190
198
196
153
119
202
185
225
267
164
240
167
229
136
129
201
193
162
127
171
265
210
191
146
192
206
203
161
201
221
267
166
206
219
237
145
220
128
211
168
191
218
156
257
199
204
207
181
194
242
193
241
175
185
186
216
288
242
235
142
181
237
150
211
232
204
153
257
265
253
167
223
187
229
162
143
198
167
245
230
228
255
249
222
246
136
182
189
249
271
186
149
206
164
196
195
191
205
179
207
198
177
159
241
221
205
200
153
215
202
237
227
245
124
270
271
169
195
157
173
162
160
225
198
239
249
223
264
156
240
236
260
199
176
156
190
200
205
201
183
205
210
153
235
151
250
216
203
170
218
226
206
195
146
148
188
232
154
248
200
182
133
204
210
206
214
224
210
201
185
244
123
216
206
224
248
233
213
167
267
191
225
182
145
188
211
159
197
169
193
195
117
184
187
185
144
145
226
176
187
238
215
249
199
168
203
179
218
205
212
223
168
170
152
213
201
203
194
181
212
216
211
181
208
223
155
103
207
190
168
228
216
291
201
242
135
156
199
237
163
173
198
238
235
173
199
166
249
265
238
162
178
175
217
213
206
164
205
195
227
157
238
156
200
161
113
183
127
216
252
227
250
222
198
152
226
245
200
241
149
240
179
259
271
220
191
244
192
197
193
189
197
253
222
136
185
220
223
159
195
232
221
207
155
182
200
161
219
181
208
223
169
200
194
262
228
159
219
186
257
220
242
182
157
250
212
226
192
191
251
208
247
145
238
121
191
200
179
176
244
218
223
192
188
184
208
125
117
229
199
179
195
156
170
240
162
211
237
222
277
194
169
194
193
171
252
220
198
200
230
209
212
217
203
225
164
186
231
172
207
186
178
200
153
217
210
191
172
194
210
162
222
185
166
181
182
216
142
182
233
243
206
250
245
180
222
148
198
244
289
172
206
218
180
203
200
183
169
184
221
206
173
234
168
222
199
144
206
189
235
251
193
200
150
211
212
224
177
201
176
213
178
165
207
199
223
139
262
194
261
199
175
199
216
197
211
117
204
256
162
244
187
211
245
138
211
196
180
165
169
211
215
171
236
161
135
222
179
172
214
168
241
230
236
207
209
267
172
234
204
158
205
215
219
236
214
145
215
216
153
197
218
276
171
214
190
243
196
160
164
142
271
190
206
240
196
221
232
227
193
137
285
185
191
188
211
227
123
172
201
133
174
173
160
163
248
225
221
159
216
188
258
149
215
186
151
224
147
214
203
181
132
193
199
210
211
135
187
247
233
238
184
201
246
219
192
182
187
198
227
167
173
182
251
193
208
222
141
158
181
245
231
152
175
159
168
179
164
206
170
199
134
199
167
237
228
202
110
206
241
204
205
220
235
179
261
152
175
227
210
271
192
156
153
184
183
216
295
184
144
123
174
201
252
155
174
147
172
255
227
190
133
187
171
158
246
208
140
284
185
229
210
228
235
245
189
239
177
189
265
157
227
200
155
123
203
188
182
173
224
131
252
251
181
225
146
251
232
126
216
213
198
125
223
252
224
185
241
189
228
253
140
194
235
195
225
210
202
188
204
190
183
179
230
227
268
200
213
173
219
172
189
230
153
228
197
194
182
192
181
174
183
248
188
152
178
236
141
221
190
193
179
193
219
211
226
177
202
162
186
203
223
200
208
157
190
238
194
216
174
238
245
131
189
205
204
186
222
194
255
233
241
244
187
200
146
183
245
199
168
192
211
146
207
167
228
258
182
208
222
216
198
171
198
183
149
254
224
143
192
231
236
216
158
203
271
173
120
177
182
272
188
183
218
213
147
255
123
169
228
168
179
254
184
154
194
197
178
168
212
230
129
208
227
193
234
210
225
159
158
171
242
234
116
174
249
222
166
161
200
255
191
223
238
176
215
166
211
171
189
237
166
156
159
196
217
158
238
224
227
290
167
218
179
223
170
216
223
205
152
234
244
208
178
236
206
205
254
219
186
205
205
212
199
142
167
195
198
232
233
245
263
166
220
195
202
241
189
177
210
223
252
190
218
96
256
180
206
190
199
170
204
134
207
171
189
192
225
239
196
179
213
249
138
228
236
239
140
186
192
209
194
212
244
207
247
236
236
198
222
232
187
184
270
190
190
195
211
217
197
143
203
169
183
187
231
210
182
260
211
227
160
197
209
153
228
216
161
185
143
198
212
149
185
201
200
210
143
184
203
224
143
216
194
172
176
153
183
184
175
222
212
166
226
210
234
227
204
147
213
239
208
192
167
182
173
172
225
229
202
178
205
212
256
256
221
223
148
114
234
260
163
177
164
246
215
214
194
258
169
204
230
169
183
156
247
245
206
232
208
174
179
224
222
195
161
235
229
181
182
223
190
192
209
148
136
215
185
257
145
253
155
203
176
131
219
221
188
170
233
211
181
191
181
219
208
175
177
185
185
235
205
201
135
210
181
186
195
175
173
209
175
215
189
199
212
182
230
169
239
187
139
165
232
225
208
211
201
245
219
179
164
170
189
190
178
197
211
207
202
197
157
180
244
180
211
242
254
190
208
185
192
189
184
150
197
159
141
173
206
215
206
175
160
225
217
203
156
155
220
193
185
259
208
210
207
211
134
164
207
185
210
232
198
181
213
204
217
178
200
219
189
170
177
228
219
217
220
230
173
186
190
190
162
184
267
203
175
142
257
200
218
194
112
248
218
205
177
219
214
246
176
206
231
221
160
191
180
207
224
227
97
191
219
227
143
169
185
226
230
221
183
200
216
100
198
189
220
199
190
228
255
176
193
249
182
204
197
184
237
190
174
249
230
239
251
145
238
159
236
191
190
267
243
201
158
195
196
192
226
182
171
190
168
180
160
197
180
167
216
125
268
193
204
206
176
199
219
238
156
203
223
172
174
211
231
179
163
221
152
217
175
187
166
179
136
172
152
209
168
155
186
166
219
169
155
176
146
205
182
195
180
205
198
205
135
166
188
258
216
181
199
222
234
184
143
223
217
215
230
197
191
203
217
233
206
276
174
179
207
219
212
175
213
139
263
217
167
165
194
190
202
200
244
209
191
212
197
206
198
265
224
212
184
216
169
217
157
171
168
257
178
187
180
179
119
171
231
221
143
143
208
169
247
201
184
248
238
195
224
180
201
225
192
195
166
260
107
253
202
167
252
175
192
223
243
237
239
150
251
187
211
147
196
172
229
189
216
216
235
179
176
230
226
186
204
240
193
212
209
186
208
251
232
192
182
154
203
183
212
200
206
207
242
227
149
203
197
232
180
167
213
168
209
251
202
233
185
233
215
237
212
222
181
176
143
202
184
194
224
226
208
234
223
239
156
229
216
190
192
164
231
234
229
179
228
191
194
147
145
205
181
221
242
251
191
181
245
186
208
159
173
187
161
221
198
178
207
184
176
138
191
138
219
182
217
221
238
212
205
129
204
230
169
225
227
194
181
129
193
225
214
201
214
161
196
233
214
193
169
224
208
228
165
233
158
217
230
156
200
232
160
216
201
230
259
191
177
168
201
159
256
203
208
214
192
200
223
210
186
185
231
243
246
169
140
204
237
221
191
201
223
200
199
215
207
219
182
227
221
201
172
253
196
180
201
257
207
214
221
201
156
196
207
242
181
226
250
171
312
169
235
230
226
243
221
180
177
212
224
244
185
194
217
158
160
171
175
179
189
234
245
272
251
231
172
198
227
222
200
230
186
215
198
181
212
245
222
175
196
221
188
187
161
173
205
233
148
213
196
232
193
211
240
222
190
241
200
248
175
184
200
229
241
164
248
205
250
221
203
188
180
177
222
213
241
192
201
159
176
143
189
227
204
209
214
213
240
128
199
195
192
152
210
198
184
146
234
195
239
221
145
221
167
186
123
223
286
198
239
250
132
221
230
223
195
235
139
178
185
153
137
213
234
201
244
192
229
113
146
194
183
183
286
191
186
233
235
169
244
184
188
201
202
241
218
213
185
231
189
192
153
189
245
135
223
174
170
212
188
241
178
216
268
237
225
200
217
174
192
190
162
202
230
237
248
189
208
240
172
221
171
173
158
242
254
230
158
197
182
209
209
245
240
210
193
219
161
176
121
202
232
168
160
222
159
215
229
216
235
237
188
171
137
159
127
221
256
206
179
204
215
207
203
195
168
234
185
167
223
223
266
230
199
212
282
212
193
198
199
231
184
138
204
179
231
215
152
187
192
154
190
173
212
203
267
226
162
171
231
203
201
215
160
231
240
160
151
201
190
240
181
200
219
171
166
242
214
232
195
146
201
233
140
188
179
225
194
195
236
206
232
196
237
172
175
240
136
220
217
201
144
198
143
191
229
198
189
211
158
160
269
192
178
246
219
262
197
236
225
241
211
211
200
205
190
168
186
223
227
212
257
198
159
177
174
233
215
174
226
194
220
139
228
204
213
221
188
163
254
179
243
212
173
193
148
200
195
228
185
209
223
253
218
200
204
204
191
233
207
172
264
165
207
186
251
229
204
170
220
206
214
222
271
144
253
185
231
156
131
193
193
191
221
274
217
184
199
216
225
224
164
182
147
222
186
191
271
229
195
196
179
188
196
181
217
229
216
156
234
224
167
167
208
195
174
194
159
175
214
132
235
260
203
176
163
202
149
218
246
202
134
201
211
211
185
189
220
137
188
159
211
175
185
167
248
207
191
180
158
241
233
214
163
164
183
241
239
231
230
185
255
266
197
208
204
213
212
254
180
148
167
264
187
236
258
205
204
183
194
237
241
260
206
163
191
157
191
244
211
226
172
212
232
147
173
203
245
239
206
189
197
160
221
219
223
213
169
198
167
188
169
227
216
211
242
167
235
202
151
203
190
205
259
196
185
216
208
244
213
223
212
135
243
174
165
153
206
212
215
176
248
147
194
226
229
173
229
204
220
224
222
255
157
138
204
274
239
172
245
154
193
231
221
197
263
219
240
192
174
289
149
162
202
224
172
259
199
218
160
218
199
254
249
186
186
228
134
200
177
224
229
226
117
225
185
143
189
175
230
234
238
241
169
219
202
205
231
213
161
199
241
168
195
204
214
239
223
199
178
203
230
222
152
209
201
178
159
166
170
181
203
213
216
183
223
184
174
212
183
154
103
187
197
151
205
208
196
135
247
162
237
267
185
200
225
217
200
234
187
204
191
191
231
175
171
225
192
202
175
218
230
167
189
230
168
211
232
199
158
191
223
271
172
252
203
199
176
148
221
207
211
227
197
230
159
229
217
179
164
212
146
162
134
184
149
216
220
222
156
224
216
127
208
211
220
195
183
196
210
227
247
229
207
224
144
174
138
228
254
232
223
180
208
213
166
150
152
197
182
222
147
175
246
210
203
229
248
235
193
199
213
201
240
197
159
226
232
227
185
158
203
196
184
195
259
215
245
192
249
244
192
218
225
227
196
175
180
207
196
149
157
214
201
230
245
215
207
232
231
175
204
193
188
138
282
117
230
183
208
154
162
203
214
215
206
195
239
194
212
201
267
205
228
128
201
225
186
217
223
152
281
148
155
180
200
212
274
251
163
209
261
236
167
222
235
146
178
197
151
261
161
209
189
222
220
193
228
211
270
182
213
226
147
269
201
202
273
179
284
224
210
194
169
215
202
206
198
236
242
208
207
257
228
236
183
195
194
144
202
189
249
176
203
197
150
229
196
182
249
246
238
246
226
194
225
228
184
173
157
152
161
201
168
258
204
218
236
235
133
166
226
260
202
214
227
234
197
216
156
198
211
210
229
203
224
257
166
211
198
247
208
211
197
186
230
228
196
194
243
231
196
222
168
179
195
202
177
163
133
201
189
181
236
163
241
226
129
137
176
179
198
256
188
187
211
261
181
216
149
186
179
203
242
220
170
224
225
171
182
199
218
266
148
178
225
216
178
152
207
141
234
209
176
217
260
164
227
195
232
233
170
227
211
184
272
221
179
250
198
220
210
257
256
261
238
129
186
161
142
165
167
195
191
172
190
193
156
229
218
210
179
192
221
202
142
172
170
166
184
203
185
189
199
188
192
209
161
244
221
145
226
129
200
189
188
233
237
222
230
244
165
232
198
178
221
155
214
94
234
158
237
209
195
165
210
243
235
198
198
234
217
181
184
235
175
269
188
161
219
248
231
220
190
217
188
238
222
227
235
196
186
245
150
178
152
198
211
199
177
179
229
192
154
194
197
154
231
250
199
195
173
229
222
162
149
190
224
157
184
180
229
222
261
244
132
154
159
189
246
189
226
209
248
162
191
247
200
176
212
191
213
143
202
184
192
125
263
198
156
212
157
228
185
216
161
248
235
271
198
207
215
172
155
214
187
188
132
183
275
226
197
158
185
258
178
211
229
205
204
215
221
185
184
231
245
208
190
257
186
184
200
168
245
228
212
226
136
278
217
156
231
152
131
203
232
220
178
170
143
203
245
220
206
202
233
135
182
254
147
166
206
222
210
186
197
138
148
193
190
188
247
168
194
224
194
283
258
190
200
195
209
185
160
201
230
143
190
253
194
170
181
225
177
225
133
139
132
181
212
206
198
221
245
225
268
174
227
299
224
185
226
262
190
199
220
222
206
210
182
186
166
203
212
181
147
228
189
196
204
217
214
220
145
206
191
181
252
192
207
267
180
139
192
247
184
198
230
137
195
217
250
159
251
266
163
234
179
186
187
177
191
165
180
234
143
221
219
156
205
239
182
231
189
190
186
231
209
192
201
208
229
267
176
235
198
176
197
207
248
180
185
199
188
205
179
203
207
248
217
147
173
178
177
198
174
239
265
163
166
184
228
211
215
193
166
247
275
206
201
223
203
219
177
245
163
214
123
196
255
206
200
201
153
225
215
243
199
179
202
235
208
144
113
191
199
253
196
237
244
134
207
154
202
204
175
202
192
195
150
224
248
234
185
200
186
213
187
208
257
193
186
209
160
184
212
159
207
212
213
159
235
208
262
165
230
186
200
148
137
251
227
150
189
205
204
225
181
181
174
189
245
238
240
234
241
229
143
151
239
143
193
221
157
176
158
235
205
143
212
119
238
211
237
174
157
182
156
192
192
174
192
223
153
146
249
204
184
223
187
167
205
263
168
225
248
213
204
165
237
230
216
210
173
219
195
232
182
243
201
185
206
201
227
230
243
257
217
267
236
187
209
261
153
236
195
183
176
218
188
232
237
208
222
230
204
245
258
85
124
258
229
180
211
232
220
207
216
246
179
178
184
195
203
199
228
276
189
222
267
242
130
194
160
144
163
249
238
211
174
192
196
126
227
250
247
246
206
144
213
193
204
179
179
119
225
212
199
149
250
240
183
186
211
182
133
229
177
158
233
209
243
163
179
228
199
199
216
222
244
260
250
190
230
224
157
151
193
199
247
196
188
190
218
240
188
246
184
169
214
172
178
184
217
277
182
184
149
180
109
138
126
246
172
121
129
232
202
167
181
265
203
255
172
243
205
214
164
171
195
243
200
128
166
161
136
159
185
242
220
224
224
157
238
203
211
193
233
229
218
147
216
192
288
152
208
262
201
204
217
183
219
205
204
140
202
192
256
214
184
214
187
271
232
231
161
207
219
226
172
212
173
199
201
221
220
256
236
210
176
203
201
217
189
202
177
205
204
174
151
212
186
192
226
216
190
186
183
268
231
195
243
107
217
179
185
209
187
195
187
213
194
210
194
213
155
199
214
134
163
250
189
162
133
212
205
208
167
216
267
209
218
141
197
207
180
206
193
222
138
198
203
222
211
175
181
166
134
197
199
180
216
219
232
174
200
174
234
220
121
188
177
232
246
221
185
225
226
196
268
256
202
226
179
218
175
222
193
218
178
231
248
261
136
172
125
208
180
266
154
244
177
216
224
238
267
218
211
244
225
234
180
167
172
182
244
173
200
194
139
214
208
212
221
216
230
245
190
223
243
168
164
287
157
179
209
195
245
123
138
180
225
176
233
185
175
211
203
192
185
179
240
206
155
248
235
196
175
228
178
176
166
213
185
206
134
246
234
189
150
173
226
199
185
185
190
214
249
279
213
211
200
229
249
201
216
153
212
207
173
156
181
180
166
163
184
175
196
168
220
222
233
168
180
231
184
234
247
193
203
255
236
163
242
227
159
242
257
215
220
176
227
166
167
150
205
204
201
197
216
155
213
208
277
174
218
189
203
160
249
221
240
225
116
244
141
203
197
203
206
212
181
187
185
242
200
211
195
211
213
173
163
159
204
192
195
239
235
254
225
227
224
206
177
253
213
144
235
180
163
216
185
176
135
186
226
187
197
225
280
228
253
200
212
184
229
184
209
216
198
188
263
188
222
197
236
241
122
196
175
193
195
236
261
218
248
228
252
266
232
207
226
167
220
186
184
197
203
145
271
179
193
136
153
165
136
139
236
190
151
193
193
167
209
250
257
209
186
172
219
236
159
179
202
233
177
245
149
207
267
213
203
178
182
182
184
237
210
202
194
140
134
223
205
204
204
202
193
256
200
160
234
156
190
209
168
175
154
168
169
254
207
148
225
167
229
151
164
181
215
157
195
263
267
176
249
252
133
253
157
248
232
220
161
207
172
194
223
218
216
178
188
229
179
200
145
220
201
224
202
273
219
161
200
216
263
184
220
240
179
177
242
240
235
216
160
115
207
248
262
222
150
245
157
184
159
175
249
209
181
208
206
201
169
226
193
169
219
204
140
191
190
180
218
227
158
198
182
182
210
197
234
234
206
228
202
229
194
202
231
211
194
244
154
206
189
150
154
194
280
185
208
203
210
188
232
187
204
214
240
140
242
133
227
215
173
189
185
180
247
175
181
158
239
206
195
203
197
238
182
155
190
200
270
179
278
213
209
207
232
276
183
191
199
232
142
191
144
148
201
167
156
149
186
276
150
171
222
194
150
190
192
200
189
168
169
214
214
198
194
234
261
194
164
165
197
181
205
141
239
229
175
225
171
177
266
153
196
199
121
194
202
209
196
228
228
179
190
252
229
169
220
199
155
242
191
153
173
156
268
167
200
152
142
207
210
214
188
215
204
261
212
228
230
213
215
198
201
226
168
190
186
160
200
226
233
268
177
165
209
156
252
199
202
188
184
147
233
240
187
182
199
200
167
207
157
151
217
230
196
178
185
138
197
165
199
194
185
227
191
221
170
255
270
170
236
169
140
259
164
195
158
225
167
262
250
194
218
218
214
163
168
175
161
170
167
240
247
282
220
217
247
187
140
217
204
168
230
223
194
227
209
176
232
228
215
136
126
209
162
188
191
169
129
212
205
222
180
218
135
208
138
236
230
201
196
223
165
190
165
217
225
177
172
219
253
217
193
168
177
196
173
179
192
215
226
223
255
139
221
211
208
206
275
128
200
114
231
259
180
193
211
189
220
159
195
164
216
211
190
154
207
165
216
154
218
188
211
186
171
164
218
235
163
179
225
163
237
220
206
138
170
181
206
169
213
256
192
244
238
191
183
199
157
188
260
264
186
169
180
139
227
226
235
188
189
165
186
189
260
173
195
191
219
256
194
220
188
245
235
215
175
161
204
125
202
169
190
161
241
197
165
198
217
174
256
178
201
195
190
164
211
218
208
233
222
191
223
166
175
160
181
203
198
257
178
230
201
180
204
204
259
197
170
252
180
193
155
238
222
186
131
176
159
216
193
254
143
195
210
175
224
167
165
224
189
264
173
162
192
221
251
154
202
230
299
143
215
200
213
207
211
185
193
198
197
185
163
221
191
215
246
251
152
222
180
178
213
156
214
162
185
120
184
224
220
252
228
180
220
167
176
179
218
170
185
246
182
197
162
229
246
245
221
204
254
235
195
261
168
238
211
198
247
230
226
136
203
209
194
234
255
222
224
256
179
137
263
184
232
157
179
204
220
260
225
155
219
218
203
187
183
216
214
162
227
183
181
222
185
239
175
187
189
219
190
246
132
177
217
118
179
149
182
241
189
159
217
220
173
182
162
178
174
173
195
275
156
173
272
218
249
189
206
235
185
202
189
158
206
198
188
208
161
156
200
209
234
194
224
196
191
220
198
172
127
236
216
224
207
211
202
209
127
227
197
183
256
207
166
153
129
213
189
155
209
225
223
167
148
197
170
221
206
174
226
210
197
221
136
166
196
189
189
213
191
180
197
223
217
222
204
176
203
153
208
216
171
136
210
183
215
200
264
241
164
208
216
182
182
179
229
193
237
168
206
221
170
219
182
228
187
173
224
153
252
271
174
161
203
220
187
168
203
212
222
206
192
210
238
175
214
231
149
186
242
217
170
227
197
274
226
231
179
258
160
210
215
186
182
197
219
209
215
226
183
216
190
144
176
227
252
175
156
207
195
158
190
139
212
204
194
225
210
196
255
206
233
202
201
249
223
155
179
202
166
265
206
205
174
203
240
154
218
197
157
251
222
220
151
134
195
234
161
220
150
244
220
162
196
208
232
184
201
227
154
186
219
169
188
276
228
209
187
193
217
211
200
137
94
227
147
183
195
211
271
208
191
182
179
250
166
191
205
174
217
153
211
235
193
250
180
224
200
198
235
189
136
153
175
219
134
147
153
171
165
218
192
173
190
165
210
178
246
189
222
177
206
190
104
186
200
163
223
183
230
184
173
156
220
189
212
152
148
211
199
170
213
229
224
209
201
208
152
208
223
191
229
259
230
210
116
201
227
179
229
224
188
255
226
246
208
204
247
240
227
179
218
212
243
205
225
216
214
240
215
160
246
211
221
188
151
183
183
235
264
185
171
198
204
222
263
211
125
207
186
189
218
124
153
190
239
202
233
241
212
209
223
157
189
268
258
178
223
210
235
190
162
216
184
243
151
278
157
195
221
199
155
205
193
215
223
123
173
227
228
159
167
230
217
206
225
221
179
74
217
169
230
228
227
183
212
222
178
166
187
225
175
196
213
232
217
163
212
238
199
194
113
208
189
239
135
158
211
204
217
228
248
140
265
184
221
173
205
214
193
206
151
219
199
181
174
218
199
183
273
210
200
174
181
183
240
220
175
201
277
190
217
234
138
231
210
140
230
242
230
211
231
209
143
185
166
194
200
179
181
127
214
203
191
227
216
189
170
164
196
199
197
207
174
233
264
236
205
194
208
238
289
156
232
206
220
211
193
198
236
248
215
166
196
191
142
178
227
168
219
205
137
236
222
185
241
214
169
244
170
218
182
218
199
154
206
216
174
221
220
157
147
222
265
292
213
199
166
250
180
206
224
227
184
241
221
212
224
223
192
200
241
142
239
168
143
211
173
161
163
192
152
238
232
228
259
201
168
232
178
251
207
233
174
199
216
208
184
221
186
182
178
184
230
169
185
254
232
230
228
237
232
199
217
140
224
175
238
211
225
150
204
184
181
248
273
193
151
218
247
141
190
185
211
199
190
212
231
199
173
156
178
192
148
214
228
172
191
233
243
191
241
211
134
198
172
219
205
253
189
247
158
200
232
199
192
191
226
243
167
215
218
215
249
187
202
218
249
228
249
193
228
215
118
225
195
209
179
200
203
175
248
203
196
188
199
254
237
209
145
248
155
218
250
238
225
229
206
214
173
165
237
183
241
248
127
212
140
243
208
188
210
207
181
146
211
176
192
147
182
187
187
167
218
190
205
214
204
171
206
117
220
195
166
200
228
177
235
177
148
211
207
141
202
235
212
152
202
177
238
224
177
213
164
189
211
157
233
232
125
215
261
159
226
193
167
209
170
202
237
217
176
199
220
236
214
203
233
156
144
277
156
251
235
194
223
229
158
246
186
162
263
246
192
183
161
249
240
171
222
215
176
130
261
217
190
211
170
162
202
192
155
206
191
231
165
234
172
217
210
219
208
132
210
233
172
182
233
207
177
108
237
141
241
166
195
158
190
244
183
194
168
197
210
187
202
204
195
226
175
173
215
117
256
222
258
189
248
173
217
268
207
196
197
211
236
198
212
214
205
245
226
230
180
196
238
227
230
198
232
187
193
188
211
177
147
213
252
257
166
233
173
241
225
172
154
125
175
204
180
216
204
223
151
162
220
212
170
185
207
218
177
128
168
163
187
122
207
226
181
143
163
228
169
175
232
225
166
209
240
180
212
187
207
102
201
182
229
209
192
169
156
205
175
234
274
154
196
272
172
181
167
200
222
227
233
252
237
224
175
143
205
216
202
243
172
243
205
182
117
175
121
159
226
184
150
208
166
183
178
184
230
136
195
247
232
234
198
219
199
153
260
236
221
142
238
226
196
231
186
199
180
155
157
232
233
218
284
173
199
194
140
173
166
227
168
207
171
232
218
243
247
209
216
267
188
220
256
120
215
158
205
198
166
142
157
215
183
217
216
194
263
205
207
234
174
254
239
180
253
181
194
166
122
143
149
183
184
197
225
231
196
202
174
159
202
219
201
136
223
206
222
187
146
205
197
205
223
194
161
201
205
159
227
170
195
203
221
229
210
176
207
151
130
212
120
195
204
162
171
164
219
249
253
230
203
186
175
172
179
210
173
220
165
221
98
125
169
206
158
234
229
213
181
154
215
213
153
209
170
169
243
237
229
245
229
183
144
186
120
238
210
251
156
171
141
145
173
255
195
196
230
258
159
211
170
226
163
233
191
250
209
164
182
145
200
225
265
216
195
231
198
243
252
197
230
206
204
222
193
187
199
228
152
232
225
178
154
181
202
186
249
254
206
190
216
181
180
263
179
186
264
149
220
195
204
167
214
295
154
204
203
151
239
237
212
227
211
250
246
177
210
263
248
202
138
175
183
170
167
231
225
228
229
194
215
223
196
261
207
117
140
196
233
255
212
240
142
213
241
162
242
218
206
165
179
165
213
144
249
221
221
156
169
236
209
164
255
284
128
237
242
276
183
180
138
209
118
193
182
139
234
196
250
264
197
147
202
208
241
199
196
195
243
238
130
221
199
151
207
211
190
186
199
186
115
166
174
162
168
159
212
235
294
165
240
256
163
238
239
241
152
170
197
204
180
178
162
226
242
191
179
213
204
142
118
210
190
206
175
191
196
222
201
142
147
163
219
174
206
152
232
135
228
138
156
263
210
198
190
232
206
187
155
221
151
142
213
201
242
174
173
255
177
255
183
197
223
228
187
203
154
216
230
229
168
165
240
204
189
155
241
208
203
168
224
185
183
193
252
223
204
263
193
134
212
193
215
197
216
206
226
192
182
219
226
214
182
118
187
182
171
250
176
167
180
212
196
243
207
216
233
192
193
234
200
188
236
236
189
224
174
213
149
263
193
215
198
209
229
135
189
263
195
204
271
240
245
180
216
207
227
206
186
185
253
242
264
168
204
186
217
214
205
121
200
205
154
190
146
195
235
177
221
215
275
140
184
214
179
216
205
187
213
220
219
224
275
181
228
224
212
277
207
248
222
241
171
218
205
184
156
148
165
231
256
174
193
238
245
221
184
194
203
154
159
181
202
188
195
268
166
194
238
180
158
251
203
214
231
179
224
174
200
239
239
215
191
219
220
117
224
231
162
202
194
165
210
150
194
202
231
216
171
218
216
182
191
248
194
150
225
187
225
107
220
241
212
190
228
238
231
173
199
228
217
218
156
163
153
262
173
156
205
243
174
224
199
183
157
191
238
216
168
223
214
257
157
172
187
248
204
269
295
158
196
247
156
174
208
147
177
171
198
177
219
248
237
172
246
203
219
188
122
177
194
206
192
201
236
141
162
243
187
212
232
230
240
229
174
156
236
254
195
190
207
234
211
217
159
204
172
152
148
125
203
247
231
192
177
174
202
242
213
173
163
220
208
270
148
194
236
246
176
189
236
191
234
199
232
218
219
260
217
197
277
201
162
181
238
163
183
222
206
175
241
198
195
204
310
221
177
187
170
213
261
137
236
169
208
190
179
220
221
221
167
198
247
217
195
140
226
209
174
228
223
130
189
217
275
165
195
198
209
185
199
212
194
193
262
159
215
120
192
214
203
249
183
213
174
197
204
142
151
213
177
185
192
187
186
191
236
168
196
82
142
238
264
202
207
199
190
172
194
165
218
185
251
151
183
157
156
185
120
224
200
249
268
207
161
205
254
157
217
222
136
252
195
223
184
177
255
170
214
239
176
231
188
221
116
173
191
173
154
238
204
195
239
185
170
212
236
232
201
234
161
167
174
186
176
220
143
195
148
234
249
182
196
187
256
197
264
165
196
181
179
174
174
172
205
178
180
195
206
167
206
215
201
134
197
210
203
199
250
157
185
186
217
196
268
229
239
237
143
253
201
218
193
194
174
148
179
161
197
235
200
155
234
172
161
245
296
208
201
268
258
166
204
198
225
190
185
206
163
150
194
148
200
204
168
239
169
248
212
266
198
220
232
199
225
191
178
240
210
214
269
169
204
179
148
263
250
242
237
247
160
164
162
232
233
240
232
172
200
141
226
197
182
189
207
203
140
166
235
212
239
234
177
188
241
224
175
171
185
193
192
217
245
160
220
191
148
245
193
218
214
205
191
223
226
235
160
235
167
194
214
246
210
207
216
220
125
233
213
164
217
232
255
189
232
164
204
170
124
236
196
192
191
234
209
198
193
205
195
201
234
231
229
230
175
202
317
253
181
179
165
155
205
221
187
168
143
199
169
236
124
188
181
207
205
267
224
185
161
255
216
273
180
153
173
149
194
215
193
172
266
232
202
193
192
138
154
144
156
181
173
226
121
204
151
190
236
227
187
185
198
205
147
185
207
177
153
221
181
186
228
103
183
239
169
170
167
183
205
181
245
227
251
196
208
291
160
182
195
175
186
184
162
210
264
226
185
181
168
195
193
237
136
255
226
187
160
171
168
227
221
216
164
142
250
207
214
221
172
227
234
175
252
205
249
125
211
195
217
189
256
193
197
169
173
190
166
140
228
141
139
181
182
209
248
150
135
236
158
169
210
217
199
230
117
184
240
213
180
235
273
218
200
188
154
112
162
175
153
258
205
174
201
205
192
129
131
216
191
169
246
175
160
234
178
208
208
213
187
198
189
187
178
150
233
225
148
271
207
192
214
179
219
228
278
238
208
161
158
254
238
229
233
193
268
193
148
227
252
240
164
262
214
178
190
186
261
213
234
225
219
228
171
223
178
203
183
195
167
183
169
188
261
199
194
218
209
248
225
195
292
199
236
218
212
221
167
210
229
161
215
139
138
178
151
238
204
158
244
281
190
267
185
223
146
157
188
224
213
176
181
261
183
183
247
190
210
210
177
183
195
183
131
239
213
229
215
194
228
154
205
200
226
211
264
188
229
184
153
235
161
236
203
199
131
230
192
232
170
214
188
211
184
220
160
222
221
228
234
208
201
250
186
199
184
173
199
176
230
202
239
186
218
182
139
218
220
183
184
192
213
146
210
211
230
135
232
226
207
207
219
231
221
189
190
226
235
180
208
224
143
191
227
169
235
161
248
224
199
199
146
210
203
227
194
205
148
179
209
173
204
204
198
195
192
195
168
225
222
198
169
242
259
121
202
170
233
201
237
274
138
220
266
205
212
189
196
221
204
192
179
209
168
229
228
186
175
198
188
195
154
183
166
207
155
244
212
232
201
178
184
167
237
207
257
254
188
247
242
182
217
208
224
218
235
256
165
234
143
256
193
182
174
207
207
243
189
169
230
257
155
211
199
223
253
186
222
194
145
150
174
231
234
111
178
199
228
206
166
232
118
198
240
193
198
249
183
191
209
230
205
210
203
265
204
235
202
227
182
161
159
251
191
206
208
194
183
197
162
190
181
186
190
227
208
212
128
172
208
121
252
234
184
229
221
213
148
153
183
213
218
217
214
255
146
174
223
189
113
111
187
158
213
249
235
182
183
286
196
171
218
151
235
172
137
174
209
144
202
221
157
253
183
279
248
222
219
208
232
204
185
227
175
208
188
216
197
225
243
211
211
168
181
216
180
218
202
253
177
184
190
163
231
160
88
241
137
208
231
155
197
261
194
223
203
246
259
245
180
220
140
186
229
196
184
185
157
189
202
222
221
181
180
210
194
142
191
228
228
188
170
182
121
162
214
193
192
192
165
180
190
263
153
210
224
178
197
215
164
239
199
168
244
211
219
245
191
202
143
218
234
164
167
264
215
237
211
205
211
168
210
215
132
200
177
218
161
178
181
227
212
216
98
221
192
225
200
199
191
198
184
257
218
191
226
260
205
190
186
229
266
123
134
132
206
215
187
268
184
167
230
218
250
196
197
192
198
220
240
174
200
202
171
233
216
258
258
165
221
219
238
159
214
177
222
207
191
200
127
210
243
166
171
213
165
230
182
176
207
204
254
262
247
211
200
117
203
202
206
206
254
262
147
182
198
227
165
212
204
226
208
167
219
225
222
198
156
195
192
163
167
177
164
203
180
191
188
217
157
206
232
220
175
205
179
178
203
144
171
220
226
181
169
204
169
169
182
241
183
174
198
196
222
191
234
176
157
236
173
203
259
162
161
168
140
244
167
225
203
214
253
247
146
251
169
194
214
205
143
252
166
145
177
122
208
162
225
195
159
254
236
156
230
182
250
202
166
213
201
180
242
220
227
162
174
157
210
249
200
185
181
215
169
225
181
218
234
242
176
188
187
198
223
218
194
153
137
241
182
235
143
191
124
213
222
209
242
200
161
143
232
162
248
182
168
199
218
178
186
173
214
193
216
184
227
188
185
212
247
183
237
169
194
175
187
200
184
192
149
166
160
253
239
238
164
177
195
174
157
156
187
204
238
160
238
207
233
224
170
189
192
191
206
227
156
222
215
187
217
206
113
206
176
198
179
158
217
174
163
225
233
219
231
268
215
155
159
232
208
200
194
150
182
148
203
248
224
186
256
174
153
236
227
223
253
265
202
174
214
235
232
215
206
223
226
220
231
175
216
191
170
227
250
142
176
204
195
192
217
222
135
172
182
224
176
188
200
224
144
225
178
178
259
231
269
205
181
146
160
200
116
240
172
164
183
158
224
190
234
164
241
277
155
179
209
186
200
250
182
195
274
206
173
172
237
191
228
242
171
190
183
215
245
186
236
223
193
277
217
255
155
216
229
223
219
242
244
198
175
186
216
159
234
244
162
112
249
219
204
204
217
200
230
186
173
198
204
216
228
175
165
183
185
205
209
198
205
137
220
213
192
143
180
266
142
155
138
237
235
208
246
110
135
205
151
219
229
189
183
207
187
173
136
166
230
202
224
217
203
223
262
222
198
191
206
224
189
203
201
194
215
161
184
272
193
190
238
222
193
229
232
276
192
162
232
137
169
151
204
216
221
208
188
210
172
194
215
199
179
256
264
208
230
197
175
169
238
226
167
218
199
176
212
212
186
204
222
240
195
261
146
193
183
245
187
217
235
137
237
235
216
214
199
234
217
230
235
151
182
239
208
118
231
226
175
196
155
212
214
230
235
202
225
159
192
276
156
199
202
219
224
169
183
195
200
200
199
208
196
211
141
266
223
167
208
171
157
163
252
127
213
214
204
204
244
196
168
226
161
243
184
235
243
206
218
163
221
161
212
281
220
183
230
165
215
275
244
165
269
257
181
231
223
182
240
203
209
184
162
190
126
174
228
182
212
105
231
176
191
239
174
183
212
253
205
209
204
203
226
218
184
191
207
293
216
105
183
197
277
154
197
170
247
236
261
195
212
189
192
188
199
179
222
199
232
182
158
211
224
211
246
154
226
208
195
223
215
191
238
161
181
187
186
163
201
213
242
184
247
204
251
191
229
202
224
168
215
188
278
242
173
185
243
158
157
210
250
185
243
202
201
151
207
195
202
214
251
209
165
192
198
177
162
241
178
239
223
232
208
213
201
210
193
197
200
219
232
224
182
164
238
174
276
233
222
221
242
152
264
190
213
163
221
199
229
238
157
182
181
259
195
234
159
185
154
133
146
209
202
190
169
185
191
240
164
164
226
152
170
209
191
192
193
232
199
234
274
189
243
217
263
196
157
193
207
209
217
207
217
214
162
184
230
214
175
204
134
252
200
277
196
219
194
188
246
193
159
154
228
203
210
264
200
225
180
197
192
225
241
259
173
219
213
161
189
237
214
263
242
206
202
232
215
181
162
228
250
183
201
121
235
188
172
212
142
143
238
194
210
207
222
208
195
225
173
204
198
116
248
199
182
253
194
253
239
190
230
208
227
152
235
215
207
195
237
234
212
199
214
218
179
242
153
202
204
227
272
189
165
178
194
237
165
212
190
164
161
283
169
164
215
221
227
186
199
115
199
179
207
157
216
237
192
281
221
158
205
239
203
250
246
233
207
248
120
221
200
209
162
193
208
184
196
173
204
107
253
150
222
185
211
163
163
195
141
228
170
180
175
247
236
204
193
207
157
220
139
196
221
235
210
177
175
271
246
228
208
230
188
224
238
213
228
181
216
160
219
192
183
213
148
205
204
198
244
197
118
167
254
212
177
228
145
205
214
221
220
171
220
197
176
200
187
143
188
234
191
172
144
239
177
205
219
178
225
156
237
210
121
199
245
246
202
152
223
153
249
216
136
259
249
186
262
257
221
212
147
204
211
213
203
176
207
208
166
180
187
146
222
223
179
197
219
219
235
173
218
244
199
227
184
184
227
212
242
247
110
198
205
229
151
138
226
264
234
152
170
185
213
223
211
243
229
249
201
198
176
158
229
189
222
167
134
184
178
204
216
213
180
152
204
189
244
217
194
179
183
211
223
243
168
195
226
253
218
141
271
224
186
222
229
151
142
176
224
240
256
207
165
203
215
208
269
219
176
241
135
277
223
148
174
178
207
201
175
200
246
137
198
254
200
169
266
260
198
194
196
194
198
216
138
249
223
215
212
173
198
179
220
209
129
214
179
213
237
143
243
226
178
244
196
171
209
178
144
224
117
180
215
178
213
212
192
197
176
246
245
144
163
116
224
253
233
166
261
140
233
228
222
191
233
198
226
126
229
130
177
212
174
264
237
203
214
200
174
200
182
237
227
223
198
183
247
218
242
143
163
164
183
132
184
142
235
218
156
201
193
200
206
237
255
154
224
201
225
225
177
208
176
170
169
189
139
230
222
217
217
157
224
186
171
201
196
234
251
145
179
185
204
234
180
230
206
218
256
144
151
182
200
207
210
193
232
244
149
198
153
190
219
227
237
201
223
151
166
190
131
196
187
141
205
232
146
166
163
223
238
191
282
191
198
153
171
222
216
175
216
209
182
130
172
176
231
203
262
247
171
219
239
181
171
243
192
160
143
223
193
190
123
168
229
207
227
233
252
206
197
192
129
175
238
205
192
179
177
216
270
165
203
196
172
221
164
244
166
214
183
181
123
214
180
186
247
164
224
206
153
146
267
151
222
175
156
167
208
180
246
244
246
187
230
190
230
220
236
227
181
183
215
154
223
170
220
232
210
189
205
228
226
181
177
148
215
225
230
163
215
227
217
164
236
161
236
200
248
110
209
245
245
224
143
186
158
197
177
218
236
189
202
203
235
208
252
197
199
146
213
167
190
203
142
246
270
160
229
221
212
174
209
273
243
229
191
195
188
157
167
232
145
157
233
211
213
149
223
252
160
160
230
255
162
161
225
193
245
213
196
181
219
211
194
141
194
181
195
155
216
215
218
174
261
168
173
202
243
180
188
196
161
211
200
220
195
208
149
169
217
236
181
252
228
207
182
133
162
182
191
195
180
203
185
186
215
196
271
156
268
181
203
266
199
210
202
191
195
222
204
264
243
261
188
196
231
237
123
237
185
194
189
226
181
195
237
258
250
206
245
214
199
206
132
181
149
158
236
164
213
211
221
189
237
184
272
204
236
173
154
206
218
269
205
233
217
263
252
203
176
246
236
163
225
217
167
213
240
112
174
191
180
184
225
171
163
159
199
190
233
198
219
208
166
140
245
183
136
183
191
201
191
184
243
218
184
200
210
212
206
202
223
97
220
242
275
210
185
155
222
238
249
174
211
265
226
112
218
159
205
197
208
189
191
228
192
205
108
230
253
226
210
193
225
186
201
201
242
198
210
134
229
193
204
230
184
237
193
250
152
259
191
191
200
296
171
208
215
246
222
220
173
160
200
180
159
229
158
218
154
222
223
173
198
190
227
246
221
194
270
251
214
161
163
153
196
271
125
166
232
197
179
222
246
150
136
193
199
271
249
238
222
161
209
288
181
200
195
207
210
162
258
174
233
238
163
175
221
93
149
226
216
219
178
181
196
247
175
217
281
222
244
195
254
169
213
193
232
169
209
185
177
176
153
200
139
180
231
171
223
234
158
198
203
124
180
190
261
178
224
216
187
160
239
201
262
172
203
155
237
218
218
186
196
248
225
223
205
142
242
207
186
227
202
156
194
208
156
255
194
148
188
129
212
175
163
188
112
129
222
206
211
278
197
215
181
187
224
173
198
192
205
184
212
198
208
203
175
226
136
166
165
124
158
248
215
238
159
191
168
216
263
191
245
144
218
223
208
225
243
227
257
219
219
298
186
188
154
156
215
194
224
206
181
192
189
203
165
165
224
162
160
225
226
193
214
241
162
155
193
142
169
219
190
134
218
226
233
218
225
204
193
164
179
169
145
205
208
205
162
215
233
195
223
176
166
223
195
153
175
185
249
240
131
244
198
246
214
238
224
153
200
176
192
217
172
232
246
198
189
219
164
176
217
214
201
166
179
200
197
223
157
116
130
167
168
201
227
170
179
168
211
202
171
120
270
164
211
181
272
207
212
275
191
225
191
229
227
215
185
252
250
205
208
240
180
194
191
183
235
188
235
195
172
195
181
203
215
215
240
192
254
197
249
216
228
227
229
282
182
132
191
198
226
233
222
135
220
145
201
266
157
177
114
175
197
172
229
213
138
246
123
155
221
179
198
176
206
241
219
244
157
202
202
231
189
177
154
231
231
220
177
189
241
186
238
161
167
201
199
188
198
234
172
186
266
175
217
199
170
192
176
138
173
214
194
185
184
212
255
220
173
179
221
171
219
199
200
209
230
224
238
253
162
204
258
216
199
204
210
197
194
101
163
194
207
235
175
251
128
198
190
185
185
209
188
155
209
108
230
202
214
148
179
179
204
192
199
224
264
224
223
181
203
199
249
228
184
173
224
154
166
198
170
249
224
164
186
138
178
274
205
160
146
162
201
212
182
196
246
241
183
173
228
172
217
233
200
160
147
162
196
291
177
214
223
213
181
184
156
181
202
205
236
271
117
184
208
149
219
165
206
181
204
225
103
188
122
253
214
126
198
238
259
132
129
222
154
203
147
249
229
214
148
116
190
236
211
141
143
234
154
217
202
261
198
153
234
137
210
172
172
207
224
190
255
194
218
231
215
222
198
225
224
121
125
176
191
220
187
203
179
238
237
196
199
207
175
153
194
162
211
186
142
205
169
176
231
183
172
182
203
180
218
148
206
235
212
271
216
238
211
167
244
141
234
168
129
256
180
188
252
182
183
224
197
178
213
176
211
215
198
188
210
226
203
220
207
148
185
234
226
162
228
261
190
188
184
184
263
198
196
162
202
219
155
167
265
210
211
221
199
226
192
264
242
172
272
217
221
173
210
171
186
174
227
193
248
207
173
228
203
283
205
240
193
214
209
215
211
140
239
132
224
240
271
220
141
183
199
211
176
178
201
185
216
228
158
197
225
182
166
201
241
181
265
121
210
206
174
208
141
233
219
251
199
149
242
212
202
183
157
152
188
199
200
137
153
183
185
210
195
232
209
263
166
154
137
234
187
154
200
225
190
256
173
215
219
223
189
284
164
250
205
192
207
239
97
175
219
246
253
186
191
215
159
199
223
219
231
143
166
173
230
307
192
205
247
169
240
167
229
194
206
191
268
169
204
185
141
266
211
177
236
245
164
240
165
186
224
182
201
174
136
239
177
228
196
192
176
254
193
165
230
237
246
192
191
203
85
212
143
200
185
214
214
262
250
184
233
163
157
187
219
217
202
173
152
191
222
184
164
227
208
198
179
186
224
201
139
154
164
265
231
204
220
223
250
207
223
186
183
208
188
134
227
171
249
211
176
183
230
183
178
223
217
185
144
228
207
243
219
319
245
254
174
211
137
248
188
193
203
217
155
224
200
265
222
209
156
201
173
192
225
175
208
223
242
225
194
248
217
199
182
137
187
224
132
210
163
212
232
115
179
220
196
233
147
173
250
233
177
218
216
190
214
244
183
202
184
248
137
196
200
243
155
224
205
226
194
258
236
159
180
226
188
155
206
196
180
212
219
183
160
281
220
256
64
191
202
145
280
178
218
176
196
119
259
221
212
168
221
229
179
157
215
164
196
211
205
207
198
176
169
170
242
186
177
230
234
242
163
231
224
158
205
214
220
232
151
196
228
208
223
225
200
196
193
202
167
184
121
217
184
230
240
284
197
136
201
195
155
156
181
132
165
169
223
222
221
219
194
229
182
178
194
237
223
217
206
208
171
210
123
199
187
147
243
233
193
229
228
211
130
215
142
185
208
176
248
128
224
216
179
264
181
202
163
239
185
256
264
185
204
194
194
236
168
194
220
180
215
214
171
222
253
199
206
185
186
209
210
174
219
262
230
238
201
197
215
210
143
236
185
147
172
212
225
237
185
173
145
229
243
224
135
232
214
171
168
217
242
220
223
182
243
159
234
218
226
182
211
207
245
203
161
217
175
259
217
252
218
122
161
200
204
169
206
164
219
152
228
242
226
221
156
236
147
203
169
165
178
205
132
139
247
258
165
164
202
117
181
209
177
173
198
228
221
222
201
244
204
205
184
220
208
176
201
174
181
232
270
231
181
215
137
116
227
219
145
90
238
139
175
230
221
170
149
202
228
155
198
182
195
210
239
243
243
148
202
143
180
158
206
243
236
203
185
252
201
259
168
216
193
230
112
243
189
190
209
158
184
183
173
233
204
182
244
193
267
189
173
124
164
251
229
198
222
200
172
234
204
227
196
244
220
190
231
259
207
209
213
249
202
254
238
212
182
249
228
230
240
156
207
196
238
227
154
163
220
199
268
277
191
172
224
220
262
193
233
122
220
204
254
156
153
228
198
177
251
223
144
175
256
158
169
203
164
153
160
202
186
251
260
206
227
254
204
206
172
143
153
174
137
171
179
157
254
179
189
225
205
253
128
238
205
160
215
208
251
221
217
237
221
210
255
239
195
204
167
211
179
222
190
144
247
212
197
171
151
174
185
217
237
155
201
193
232
150
171
244
210
215
216
236
160
177
250
264
212
192
192
225
195
238
180
170
209
163
186
137
152
167
238
233
196
135
225
231
185
222
208
208
162
151
208
164
171
146
199
253
158
194
211
199
233
220
234
244
213
168
147
209
246
162
212
166
196
251
195
221
227
195
251
192
190
223
176
217
170
213
181
243
214
222
178
183
214
218
223
216
272
174
237
217
217
239
225
192
220
204
219
258
229
222
228
218
175
186
206
211
183
137
184
198
214
238
219
230
246
173
116
170
254
228
267
164
220
216
262
227
217
237
189
170
194
238
179
233
274
160
241
249
210
183
247
190
170
153
186
167
183
243
152
230
202
227
211
182
231
109
222
218
254
238
217
174
203
258
175
209
192
193
180
155
193
234
123
222
120
181
184
186
171
200
167
195
169
203
195
172
214
200
208
192
180
230
139
231
213
215
167
201
218
245
184
240
178
207
150
168
214
245
212
208
212
219
241
174
243
230
229
179
152
171
192
222
257
244
189
167
161
246
201
191
203
240
196
175
189
204
196
234
243
190
170
248
210
187
197
167
113
216
226
197
208
171
210
213
256
171
162
165
126
165
200
196
179
215
213
212
231
179
203
162
223
169
270
190
174
88
130
225
237
197
189
166
245
195
213
245
266
245
232
183
276
189
239
205
114
138
171
209
208
218
134
175
120
222
242
228
222
177
202
166
235
217
184
225
234
215
134
193
177
215
149
191
184
271
172
222
219
150
227
207
167
182
248
237
179
168
219
229
179
140
132
184
246
139
212
233
211
193
214
183
210
215
195
186
236
206
177
118
252
178
213
232
203
192
155
142
150
161
180
198
240
253
167
191
171
219
221
208
209
217
195
179
192
220
219
256
224
165
209
258
125
188
212
199
188
233
177
201
265
234
203
216
238
195
196
225
207
218
257
177
195
222
240
152
182
171
195
156
179
193
164
215
178
176
227
213
195
209
189
186
250
213
174
211
196
249
240
140
210
182
202
244
204
187
221
123
159
212
192
263
193
187
137
169
213
231
216
171
197
166
240
187
197
210
212
231
264
227
152
194
161
216
202
170
139
208
223
241
234
215
250
194
220
193
160
206
194
194
159
177
152
164
214
169
148
174
219
136
232
282
180
215
178
192
113
199
186
156
143
213
192
173
246
232
208
164
190
240
116
127
183
246
217
218
183
110
184
196
198
190
176
191
225
149
226
219
223
252
160
224
181
167
144
250
196
229
221
177
212
249
208
277
253
149
197
136
235
206
220
209
175
205
218
220
179
234
161
163
239
242
208
153
150
215
185
184
190
187
214
195
165
274
185
209
176
249
197
152
244
148
215
213
226
192
243
196
154
240
186
144
205
229
205
189
201
249
187
246
196
163
236
210
255
209
162
193
216
197
170
177
258
239
191
184
219
173
190
216
152
253
176
230
174
194
239
199
209
257
170
234
176
232
203
224
188
160
248
143
224
197
159
233
192
143
233
224
276
228
189
273
226
265
182
184
174
270
208
215
230
213
140
161
152
157
177
164
198
160
210
178
257
213
191
143
205
273
216
134
157
200
240
211
246
215
190
180
217
118
222
234
213
225
130
185
194
191
241
273
231
118
184
225
231
248
206
226
189
241
153
191
190
227
231
215
252
206
199
191
136
169
196
169
207
186
160
242
164
172
184
167
231
186
233
212
214
216
193
224
219
207
253
128
236
259
279
220
199
162
167
217
193
141
235
227
242
233
252
203
196
198
163
198
221
216
171
179
249
231
217
174
172
108
224
208
195
192
252
174
183
202
174
193
191
237
186
239
162
183
166
201
181
170
167
252
191
220
195
244
157
165
142
235
208
238
154
190
181
197
221
153
216
176
158
199
232
241
239
161
237
203
274
203
194
193
122
218
215
172
200
232
152
154
200
218
142
219
233
180
238
239
254
153
207
181
230
173
222
157
224
224
223
138
195
227
210
240
199
222
192
202
227
202
128
193
166
189
238
243
191
224
249
226
245
139
129
172
268
247
183
192
134
231
176
162
202
217
214
204
189
163
260
213
203
224
188
215
174
220
231
266
181
227
164
208
205
180
171
223
216
132
181
189
204
239
205
181
243
197
242
197
243
183
176
208
233
167
189
231
219
107
185
171
136
153
227
162
195
199
248
232
210
257
232
212
244
212
200
178
197
265
184
199
108
238
220
148
178
211
229
158
190
161
182
156
254
219
177
218
165
238
191
187
166
122
236
199
208
190
200
252
232
250
193
188
210
193
175
212
217
201
194
197
204
204
211
158
204
165
197
249
247
223
213
177
146
200
205
188
194
201
199
163
195
205
173
205
243
205
151
212
219
128
190
190
175
181
190
200
166
169
128
210
231
233
196
178
177
149
215
154
235
222
170
170
178
227
173
200
217
266
221
151
233
166
188
232
231
170
200
267
241
154
202
208
227
157
233
211
227
202
139
223
225
185
263
221
214
204
217
188
161
226
152
218
277
207
246
179
205
214
216
240
150
282
242
116
227
212
212
205
162
219
188
232
246
207
184
194
213
143
174
187
123
238
206
207
234
164
269
198
237
201
234
258
209
166
229
195
179
189
173
205
246
196
205
255
236
251
241
234
199
236
129
240
247
161
206
239
213
218
196
207
162
179
227
188
199
186
148
211
153
163
143
156
182
207
224
154
169
215
177
180
256
204
271
253
202
215
253
111
133
226
238
220
166
212
229
200
217
279
140
176
202
196
141
238
173
248
238
154
257
192
197
179
226
142
128
216
219
177
167
201
226
232
226
242
195
188
201
180
201
177
166
153
178
201
222
192
177
166
221
212
184
191
233
217
221
225
272
215
214
190
258
167
238
258
175
186
175
212
200
162
209
188
181
200
211
267
179
173
239
198
195
250
242
147
215
186
227
213
247
209
201
215
174
232
145
190
255
239
211
206
239
198
185
187
176
239
223
192
177
223
200
151
224
182
210
147
187
279
222
153
191
178
132
142
242
182
232
270
236
145
172
184
174
184
175
156
193
211
233
183
247
189
257
144
197
198
250
211
213
201
213
243
215
268
216
146
177
139
136
165
253
183
205
236
159
148
254
196
204
165
204
169
191
181
209
170
256
251
233
226
199
232
237
210
186
176
207
243
225
209
197
257
190
196
200
171
210
176
177
198
166
186
131
217
162
218
172
161
221
215
182
187
166
183
231
214
210
190
212
168
179
115
222
225
221
215
218
252
256
158
210
196
231
199
160
264
210
228
215
130
240
169
185
209
149
193
204
192
224
197
195
195
200
195
161
186
182
239
183
163
155
247
185
248
170
189
257
195
196
225
189
180
143
200
168
207
149
222
248
209
238
234
209
172
197
253
274
231
184
161
149
156
209
152
206
159
256
218
242
160
206
171
171
230
216
226
128
221
208
187
211
192
180
195
217
228
227
194
241
159
189
166
219
185
193
178
173
143
214
231
144
212
231
229
113
144
197
166
155
201
185
204
220
270
141
169
183
192
250
220
215
212
236
156
237
214
238
240
239
255
119
158
179
212
206
198
207
150
192
173
185
250
203
167
175
180
158
199
188
214
189
201
221
250
149
182
151
267
239
178
211
134
208
225
201
274
267
192
236
190
200
195
158
228
217
214
148
212
239
139
224
159
268
181
216
204
178
145
185
210
204
214
266
221
220
214
230
225
262
235
195
103
272
170
200
241
192
215
191
198
179
122
236
208
210
224
246
164
120
218
247
227
125
236
172
212
152
216
253
172
190
160
245
187
194
256
188
210
222
191
214
212
268
175
185
217
234
224
165
100
224
246
213
201
174
240
177
200
180
247
183
175
155
120
215
212
212
164
198
189
228
231
223
194
204
226
185
144
203
212
239
245
208
237
242
156
211
211
144
251
137
251
218
178
198
185
222
191
139
229
161
243
178
258
220
198
225
225
201
222
198
172
181
241
145
189
187
231
244
213
249
161
225
234
133
200
213
234
235
180
212
206
174
218
211
220
240
167
173
225
198
187
191
199
223
160
217
172
213
223
219
174
220
214
231
141
238
257
167
173
199
233
166
149
186
227
160
167
209
238
195
175
203
182
161
183
254
232
152
225
246
165
156
217
149
202
143
203
196
186
213
250
197
213
180
201
227
219
128
223
162
209
185
242
282
195
172
256
125
181
194
179
240
175
229
172
161
200
167
121
212
221
254
186
192
205
230
118
232
222
211
195
128
265
180
217
231
209
152
157
103
259
173
241
187
188
246
226
227
136
186
178
208
201
230
213
240
232
198
202
209
212
241
179
217
194
236
215
204
251
229
213
187
197
223
211
240
240
180
226
139
146
180
143
194
165
179
183
217
243
191
132
190
189
178
222
157
199
194
156
196
202
206
199
265
176
216
162
172
226
181
233
175
225
186
237
207
211
100
275
175
181
188
207
204
268
233
237
247
204
251
190
197
206
211
218
221
176
168
194
149
187
221
201
169
151
106
201
175
181
189
215
252
167
261
174
226
187
160
175
218
214
190
220
250
211
212
265
165
179
235
229
134
260
218
182
225
163
215
172
142
213
213
240
234
141
197
246
172
172
212
228
216
198
218
194
224
219
149
193
160
178
177
250
216
167
190
133
235
241
162
214
200
239
178
246
180
199
169
223
196
236
231
178
252
280
161
160
209
294
191
166
186
170
228
209
168
242
204
228
186
170
165
211
199
157
189
186
148
222
195
173
187
197
126
164
220
211
238
191
159
262
267
155
230
234
168
167
152
210
272
169
210
257
193
219
185
188
187
233
176
217
108
206
183
221
229
215
233
194
231
212
194
161
239
252
234
182
165
139
188
204
154
220
241
197
120
195
221
240
194
244
198
201
201
236
234
225
248
183
217
195
241
191
249
202
142
182
173
205
280
217
196
263
210
190
188
153
199
237
166
194
203
148
199
195
149
193
170
245
211
231
235
175
199
189
167
219
143
229
212
204
222
180
182
241
173
201
181
224
206
192
182
258
188
229
167
217
219
214
162
149
236
192
150
230
185
261
130
219
216
209
269
206
245
203
193
166
207
230
258
192
166
208
232
238
225
194
203
219
207
169
237
176
121
174
222
139
190
176
204
245
185
224
220
151
230
229
228
194
245
235
184
170
224
243
214
140
193
256
227
207
263
160
123
224
151
198
263
200
193
232
191
214
206
226
103
173
166
219
168
248
227
161
201
207
238
173
179
172
198
285
255
209
272
201
169
266
192
210
177
130
213
180
190
264
251
251
167
161
241
247
194
193
219
235
187
182
217
213
226
245
206
190
193
231
162
215
170
224
167
186
161
235
246
130
222
232
182
182
224
200
178
189
163
227
205
194
193
205
242
183
200
200
120
216
188
176
227
187
218
200
165
196
225
160
184
221
235
236
184
156
187
204
247
167
161
193
154
188
157
190
224
194
230
153
241
207
211
137
201
225
238
192
146
241
169
213
204
202
191
193
171
219
215
210
219
199
175
193
254
269
193
191
231
167
202
248
169
261
205
153
202
217
199
259
222
248
134
173
179
239
220
160
225
222
202
209
188
184
220
219
164
171
229
177
145
215
157
124
170
198
235
197
169
168
171
261
165
227
147
138
176
230
205
189
159
230
152
187
202
294
171
160
218
241
185
243
171
223
235
173
172
188
179
212
195
119
219
245
253
184
250
206
158
223
159
184
166
255
208
211
177
239
200
170
226
240
123
242
214
206
245
178
143
123
196
181
183
197
123
218
222
249
206
132
140
175
209
165
207
190
161
203
244
285
206
182
77
177
183
158
227
226
273
178
162
189
173
201
179
196
202
213
177
148
189
254
285
254
169
189
203
206
216
248
217
171
219
198
190
211
160
207
253
166
207
226
246
236
189
190
225
213
252
260
196
241
197
221
205
242
195
182
264
216
234
196
274
248
210
191
142
263
249
166
171
186
160
180
224
180
203
168
211
179
188
202
169
229
231
252
221
218
232
183
219
135
216
213
145
256
211
181
192
203
192
258
289
198
197
242
217
218
224
174
210
175
211
158
240
235
240
145
225
250
174
211
171
153
186
211
269
232
224
170
189
172
267
189
195
152
211
208
223
177
146
228
173
211
225
183
186
197
186
177
244
167
248
148
165
226
236
230
218
193
150
152
255
215
142
264
206
123
195
165
208
180
244
224
135
225
191
117
122
198
152
223
234
186
210
146
202
143
195
143
236
181
171
256
234
194
165
181
245
186
220
193
199
218
188
238
225
131
213
216
209
174
150
220
209
215
141
225
127
226
192
166
253
270
200
229
150
195
190
207
161
175
167
256
170
227
187
127
193
180
261
225
184
208
212
166
249
174
167
241
182
196
234
263
192
230
183
186
212
137
229
177
180
236
160
202
225
165
157
188
161
186
223
209
211
192
181
164
185
171
200
270
197
226
248
239
151
180
174
196
182
245
167
228
188
224
211
260
268
176
250
167
109
225
179
200
168
227
269
252
158
116
269
212
196
103
165
201
186
217
219
187
198
192
276
203
229
184
247
174
223
207
258
130
220
130
172
215
218
222
232
222
249
170
200
180
241
228
177
176
233
182
251
183
264
233
191
157
210
188
241
163
201
179
201
194
210
189
150
192
207
147
149
165
200
237
188
205
219
218
166
202
225
165
268
206
242
158
179
223
216
295
172
282
213
162
168
203
180
169
196
270
198
275
176
188
167
213
186
239
203
157
214
156
213
207
172
187
111
264
161
184
203
175
242
219
182
142
199
228
173
224
205
203
230
193
220
145
182
208
197
195
221
126
257
173
175
210
186
250
226
239
207
150
223
154
207
217
188
196
230
225
186
178
182
169
254
242
234
187
182
158
181
187
267
226
221
221
144
179
249
164
210
231
181
283
160
197
218
224
201
219
218
188
199
185
212
197
213
223
242
210
201
182
191
214
252
209
225
209
215
187
160
182
184
239
187
181
143
148
213
182
260
162
180
228
188
182
161
225
153
230
185
224
182
236
256
170
181
184
223
218
199
219
217
169
202
178
225
208
182
194
241
222
230
146
129
210
217
210
165
189
239
233
134
230
216
170
268
226
186
180
206
169
237
203
185
201
161
195
227
195
148
249
223
171
235
192
178
187
197
158
197
244
182
175
225
166
222
228
227
256
191
238
173
195
253
204
174
237
203
212
173
196
235
199
280
167
210
193
223
224
169
231
176
156
240
179
178
149
164
204
183
225
203
200
217
211
207
245
199
224
190
185
265
98
148
171
170
233
192
208
213
260
168
156
217
242
190
209
254
214
169
232
226
220
158
147
168
195
213
122
147
199
247
199
219
206
154
194
195
188
201
192
231
166
251
137
242
173
256
189
226
246
210
209
265
220
234
288
130
214
189
224
210
247
178
230
201
258
195
204
211
182
222
144
230
207
219
239
154
186
210
210
171
213
251
200
218
220
184
185
235
203
202
182
169
226
190
235
170
160
205
191
258
167
207
195
240
208
261
218
220
167
173
176
207
254
167
240
139
211
220
260
223
239
206
154
210
165
248
163
158
188
233
187
228
186
155
181
181
205
226
268
187
219
227
181
211
210
154
258
207
214
217
181
197
261
179
222
199
185
198
228
199
243
163
262
125
247
204
217
211
150
192
186
222
223
213
222
243
252
185
187
220
160
186
219
167
174
214
244
208
238
178
149
180
188
201
197
233
268
221
224
202
252
202
262
141
222
143
203
188
202
213
191
243
191
190
250
149
103
218
244
241
264
162
161
174
210
259
231
205
225
197
251
208
209
231
204
225
198
197
230
183
154
244
118
228
202
257
198
181
192
167
193
188
176
192
241
243
203
256
232
169
195
264
275
131
203
204
222
218
157
260
218
135
243
171
231
175
170
216
182
198
235
232
191
209
213
138
246
208
244
216
167
257
224
209
194
157
242
211
158
206
69
208
241
183
175
192
159
278
186
240
173
179
215
228
243
162
178
173
183
211
210
221
187
240
198
220
170
184
213
217
160
219
135
204
234
248
204
220
190
225
198
159
226
235
208
192
162
153
197
164
185
225
208
192
204
253
200
190
232
235
162
239
211
196
186
150
177
180
231
203
155
203
290
244
175
215
224
199
205
225
206
240
162
175
228
157
201
156
156
235
202
146
194
225
156
190
170
149
167
196
158
248
229
182
179
189
190
223
211
248
229
182
213
231
141
257
165
203
214
189
211
152
204
184
136
253
201
205
169
222
220
208
170
183
190
179
209
234
241
174
201
213
178
232
211
230
222
135
231
216
238
197
201
239
199
208
228
243
180
187
180
199
190
163
141
220
154
198
202
196
224
217
180
205
206
208
186
173
238
209
222
141
185
216
160
245
153
157
222
210
235
252
198
197
222
206
221
232
186
253
228
175
229
193
276
140
228
229
176
166
262
161
194
185
237
155
229
163
189
225
188
232
224
174
162
173
239
169
210
198
175
212
186
210
203
199
204
204
199
213
192
202
199
190
250
198
229
254
215
228
133
187
186
149
155
202
174
227
190
187
269
224
213
193
195
251
200
183
228
179
191
145
215
235
143
205
157
210
234
231
167
161
200
219
126
183
257
218
184
220
157
201
224
214
232
257
135
168
168
231
166
181
237
209
142
171
168
249
212
143
219
202
209
144
208
185
181
198
143
251
169
220
169
156
162
248
212
214
143
207
191
178
206
220
198
223
176
204
152
230
192
207
163
110
199
187
214
171
211
202
199
172
188
179
231
222
191
230
288
185
149
192
230
240
279
173
186
174
192
146
233
224
168
212
166
172
195
215
234
220
202
259
241
228
210
199
238
237
195
223
313
169
234
218
246
220
237
194
209
214
226
158
148
136
214
219
186
207
168
194
225
211
190
155
205
209
191
230
191
251
181
277
277
162
197
191
215
185
201
189
199
228
279
199
143
185
216
200
150
193
200
251
187
165
178
150
96
235
186
259
185
213
259
174
187
196
216
161
218
176
224
220
192
259
189
220
213
243
196
152
169
246
216
200
179
168
230
198
172
222
226
210
208
174
188
174
161
164
155
178
266
188
209
197
160
213
166
151
179
198
211
231
222
182
238
188
240
183
152
140
177
277
255
216
177
206
202
100
187
191
208
164
194
227
223
248
178
166
223
221
180
205
198
272
133
211
212
142
166
180
170
259
194
129
187
227
243
169
186
191
207
185
179
172
215
226
175
165
171
176
198
201
165
199
188
154
170
193
205
203
189
210
197
242
269
231
243
195
161
203
179
199
186
197
174
256
152
250
192
252
151
184
219
203
185
200
247
164
203
243
154
233
203
247
144
147
203
203
220
219
232
224
216
164
160
199
196
186
216
173
215
236
141
213
206
199
225
186
245
203
208
283
191
173
240
215
219
196
223
146
234
187
247
269
203
228
159
240
201
251
221
201
209
224
175
206
201
185
134
227
150
206
217
223
192
180
199
200
153
205
213
182
215
193
180
175
188
210
203
288
190
220
236
195
190
208
243
231
209
214
200
178
240
189
216
125
173
238
213
134
196
120
168
142
224
144
198
211
239
196
183
221
248
217
216
149
192
125
255
272
188
240
214
235
152
208
217
156
216
223
150
174
180
191
198
178
218
195
285
169
200
238
167
193
191
222
229
158
175
211
152
233
229
154
203
198
114
168
145
194
213
168
213
255
181
221
181
161
222
207
149
257
208
201
189
217
180
227
196
228
185
215
215
228
217
242
193
236
219
195
256
209
226
142
187
187
166
238
205
170
245
306
180
144
199
148
191
123
162
238
234
237
248
145
176
155
205
128
158
201
199
154
240
164
203
184
255
195
288
225
248
197
215
221
208
203
210
154
224
161
143
118
232
164
158
160
145
166
187
197
226
176
227
190
225
214
143
121
194
262
190
213
225
206
203
221
198
226
207
217
222
185
255
226
155
256
171
174
178
196
187
193
254
243
167
200
162
229
184
188
192
155
165
217
207
109
148
285
223
209
197
227
141
222
247
221
201
184
270
197
224
270
172
236
240
225
144
219
227
237
201
211
196
214
201
183
236
236
173
157
247
138
188
204
197
204
218
186
236
222
191
233
214
158
197
184
166
215
206
224
180
128
180
224
232
218
226
204
191
220
224
219
184
231
244
112
180
188
210
206
166
225
216
219
205
182
170
184
202
224
186
178
247
215
167
212
181
131
181
214
255
240
211
147
197
164
215
208
153
118
163
213
198
195
223
199
239
185
205
207
187
217
210
183
213
200
178
207
221
191
165
138
182
156
194
208
183
197
190
180
215
178
184
163
207
174
213
190
269
214
196
242
215
138
236
155
182
210
217
180
243
245
252
240
180
226
203
142
227
188
235
191
200
212
228
207
180
200
193
167
153
213
183
183
138
182
230
195
210
172
91
266
98
247
183
130
225
185
147
203
239
197
192
224
189
216
233
201
169
243
211
145
175
212
212
268
217
167
205
183
207
169
160
171
232
212
225
250
224
252
176
251
214
254
189
175
236
256
181
193
241
215
255
216
164
195
143
186
177
194
205
214
124
200
191
235
212
215
219
178
194
241
177
186
206
169
252
216
191
206
254
203
193
169
194
172
172
198
200
258
173
170
212
195
185
132
215
160
220
226
153
250
171
275
178
175
199
211
225
175
195
203
259
179
178
196
215
225
231
247
191
238
176
167
189
182
267
172
204
207
222
256
215
171
246
131
199
257
235
206
162
214
206
225
229
178
210
235
198
205
191
199
186
259
183
203
252
236
179
188
244
171
169
217
132
192
226
257
141
198
204
200
214
203
196
287
237
231
205
161
170
201
169
206
185
217
208
259
203
230
268
202
207
247
221
247
226
208
139
182
234
178
185
184
197
86
199
234
223
184
182
181
238
164
184
215
200
239
221
212
255
214
230
116
227
199
197
212
161
240
210
151
148
185
99
175
237
231
185
231
148
259
242
214
203
210
175
221
221
213
281
179
249
157
181
140
177
213
223
242
154
220
232
215
221
119
150
195
223
248
188
199
198
249
166
222
243
185
244
217
249
236
174
198
188
239
206
203
188
229
182
198
222
262
210
235
198
162
248
197
232
143
139
211
113
209
164
215
222
158
203
228
133
198
225
182
188
135
155
209
209
232
191
187
221
193
211
237
238
173
213
222
177
167
147
225
216
251
208
278
216
283
211
144
242
189
196
192
237
169
228
174
207
274
184
124
180
252
220
227
216
212
205
163
280
136
177
184
117
241
156
197
240
167
162
165
203
214
255
229
175
179
189
144
227
128
240
210
194
148
182
163
200
202
217
162
195
211
171
203
208
153
191
222
245
148
216
229
159
175
189
240
213
179
205
190
195
152
124
229
173
182
252
215
244
205
218
198
191
194
166
191
226
177
190
183
204
176
241
234
106
182
183
200
202
243
231
228
238
205
188
162
195
213
160
197
224
183
228
158
164
239
152
181
216
210
152
226
149
177
182
136
154
226
179
207
204
240
212
193
219
165
201
213
217
164
208
243
210
183
176
197
179
186
251
208
208
233
187
179
167
253
212
186
234
193
210
236
227
214
189
191
269
239
135
217
164
248
226
213
280
229
175
180
225
208
184
223
176
202
157
188
230
161
238
152
229
226
207
207
153
174
168
191
247
234
205
186
221
154
234
187
185
241
213
158
195
195
206
205
201
230
156
221
159
196
187
186
232
231
170
173
189
222
156
248
211
130
202
249
234
157
238
282
277
200
185
261
198
203
234
236
262
197
168
216
247
194
248
166
192
183
196
249
192
107
243
214
160
157
191
171
188
115
176
192
194
227
212
275
214
227
196
142
154
232
158
144
163
240
217
157
211
175
194
246
224
235
196
208
148
153
218
228
223
238
230
235
193
132
233
179
216
168
230
137
150
201
235
177
146
240
206
199
223
175
154
209
185
171
240
181
230
258
224
132
237
265
220
213
228
251
145
183
220
172
200
181
247
214
199
213
220
150
186
209
197
202
269
159
222
216
245
152
198
231
203
191
187
152
148
194
198
182
224
182
227
227
199
187
212
204
160
248
192
147
197
144
210
143
161
234
164
188
162
269
249
173
219
204
276
214
211
182
220
210
238
246
194
220
185
221
186
185
233
220
227
188
232
217
178
167
122
191
181
226
218
240
191
184
207
206
166
221
231
241
269
235
254
203
196
219
167
145
257
176
230
216
207
204
256
208
242
214
208
194
253
174
183
222
218
170
203
218
206
164
241
201
211
204
171
167
190
223
183
177
134
230
215
173
202
230
163
250
176
201
272
230
184
162
168
203
147
204
243
157
176
206
172
242
227
142
201
145
169
238
175
247
231
248
144
182
243
226
214
201
197
221
212
258
202
188
213
220
192
214
187
188
152
180
199
249
169
194
218
190
191
216
167
220
270
212
147
216
205
231
226
167
147
196
204
195
156
192
197
215
197
158
210
142
229
190
145
158
217
202
228
194
165
94
159
179
193
238
272
222
211
192
137
200
203
180
184
206
148
195
156
180
229
202
220
169
254
200
215
221
212
153
221
210
142
119
223
201
203
229
238
174
211
199
174
217
183
196
180
251
218
200
240
224
185
158
163
207
213
219
163
181
255
170
155
156
207
236
249
169
159
184
175
192
205
246
156
173
125
155
251
190
220
207
196
182
162
187
242
163
197
198
189
190
216
187
237
198
220
177
246
209
212
217
192
168
190
226
189
187
152
169
249
128
189
106
266
208
202
164
132
197
225
220
189
301
196
197
182
133
215
215
234
164
192
164
209
202
168
226
209
253
170
220
199
163
157
182
221
144
170
199
215
241
235
173
215
232
204
202
222
195
221
184
204
265
212
179
209
194
190
107
265
199
232
200
221
211
199
207
184
170
151
231
231
184
276
196
133
203
193
189
220
237
204
215
191
187
259
180
200
197
224
157
203
188
245
223
104
233
179
190
259
143
205
211
210
245
187
201
174
227
238
172
231
235
197
243
156
239
166
217
222
187
245
119
195
259
158
215
247
155
148
193
120
219
171
213
217
204
217
101
253
201
220
242
271
232
155
174
221
225
168
121
134
175
126
226
161
172
256
242
250
169
153
236
253
208
260
242
258
229
200
109
165
115
224
174
234
208
186
121
225
126
235
166
230
128
192
244
232
197
180
241
184
233
151
222
164
207
196
210
228
247
205
206
187
185
181
245
167
198
145
196
182
215
153
163
170
208
152
196
204
208
185
198
262
224
216
231
202
214
231
200
167
220
190
118
130
155
268
150
235
214
186
188
189
204
227
215
194
186
151
247
199
200
205
201
234
228
204
224
208
194
185
238
226
190
273
185
197
156
161
187
243
230
205
231
202
195
273
119
202
194
188
252
261
180
137
186
216
180
220
190
157
246
189
162
162
171
167
245
186
193
175
197
147
99
170
222
196
188
265
187
196
212
240
195
196
157
201
291
202
181
157
246
179
180
183
123
226
171
210
191
217
199
209
232
160
225
230
165
220
186
184
208
137
153
242
265
239
232
150
216
185
185
184
167
179
187
171
215
150
194
201
224
213
224
185
192
210
206
169
190
168
214
163
192
237
202
201
196
221
136
205
208
187
253
219
186
208
303
231
278
206
251
172
175
216
156
210
241
170
90
212
264
145
184
185
183
191
194
233
188
218
159
150
248
242
158
164
224
194
162
178
161
174
184
286
171
208
214
260
218
164
205
250
200
164
169
168
183
263
160
211
231
216
207
164
211
231
217
165
237
191
139
118
239
226
133
174
186
175
182
225
232
183
219
208
225
227
194
176
198
213
162
215
264
162
184
153
164
216
182
188
200
178
213
175
209
260
181
230
181
185
218
210
163
153
215
241
152
229
223
145
237
242
201
185
166
239
193
165
181
139
204
280
169
251
266
221
157
208
248
186
172
190
214
194
146
212
237
212
194
152
217
204
184
122
256
202
229
216
213
220
165
134
206
182
223
226
229
201
207
168
169
155
190
265
249
215
213
238
215
197
252
188
164
214
262
175
129
214
199
186
213
189
222
270
200
148
233
243
233
187
178
225
278
178
187
252
238
164
254
195
219
164
273
206
208
211
160
215
146
247
219
202
182
150
168
215
251
185
111
181
123
235
240
235
193
225
204
250
240
230
220
153
264
253
133
213
184
194
223
173
222
141
272
179
168
191
178
201
192
297
229
232
191
178
205
148
180
130
166
180
154
198
154
224
242
202
200
223
185
250
211
197
176
185
235
211
204
189
219
223
193
189
211
157
178
158
182
161
88
251
234
184
194
279
198
164
246
251
170
135
131
221
196
125
230
155
208
163
224
216
174
236
235
202
254
199
227
181
158
133
143
198
200
199
271
197
183
143
204
281
214
211
184
190
135
215
130
228
205
185
155
196
176
257
157
251
213
236
180
242
187
220
244
270
179
174
241
209
233
210
177
241
215
164
219
186
203
160
233
189
251
196
207
189
219
161
201
226
216
226
196
247
138
201
208
158
210
194
163
202
228
178
168
197
192
217
168
236
243
202
258
211
154
185
190
212
197
178
155
149
202
185
243
178
251
192
176
220
168
184
132
224
186
246
211
247
185
226
196
205
246
187
175
195
213
184
272
204
199
204
189
197
187
191
112
222
173
185
208
221
221
197
205
231
237
185
150
140
226
208
159
204
184
205
206
213
150
259
182
193
211
179
183
185
229
152
172
219
164
245
262
232
182
191
226
237
119
178
250
178
218
270
221
182
218
272
218
166
175
122
201
174
168
174
207
168
193
232
200
241
176
226
239
207
163
224
206
272
204
183
221
228
233
139
205
213
221
195
173
225
230
126
247
176
226
129
165
242
224
131
235
237
227
215
228
219
197
192
190
191
218
191
223
205
173
226
197
208
157
194
215
207
198
225
211
197
181
250
153
241
230
240
187
151
187
183
189
204
189
234
199
188
147
143
183
171
176
226
141
228
179
215
218
210
188
223
195
179
233
202
217
195
208
152
188
211
200
198
220
245
221
139
222
223
216
207
183
169
224
240
166
198
224
188
222
221
97
202
186
204
183
242
231
225
149
216
221
204
183
245
148
216
234
264
247
203
211
174
226
147
176
203
192
148
234
172
140
246
243
217
206
238
209
155
269
241
185
288
174
221
130
106
180
195
225
200
254
207
272
228
167
153
192
185
224
187
125
235
179
151
167
145
213
196
240
263
199
221
201
198
216
215
212
163
165
212
238
144
235
219
168
243
170
224
195
204
184
157
231
196
238
236
185
217
207
237
231
231
282
220
202
235
250
208
186
225
246
213
271
210
200
152
211
156
243
235
269
188
225
225
296
264
229
223
205
234
204
173
220
190
247
222
138
282
217
255
228
179
240
148
219
236
222
164
222
229
262
163
224
244
188
251
197
181
196
201
189
241
184
182
215
243
225
176
203
235
234
239
173
214
202
204
193
178
207
135
151
144
130
286
258
221
155
224
106
213
205
239
164
181
235
209
253
214
148
243
168
165
155
252
205
229
117
199
196
211
241
236
177
178
204
164
145
193
168
171
267
195
203
200
117
142
92
177
215
195
209
156
136
247
195
162
204
179
167
214
149
196
174
168
149
150
197
232
219
164
248
233
204
186
187
188
229
186
169
174
155
239
174
172
202
220
202
155
143
215
186
206
170
152
275
227
198
166
233
206
206
223
226
166
128
199
175
189
141
151
181
205
254
253
205
204
165
285
179
223
239
222
189
147
273
139
205
179
251
192
227
147
186
209
238
160
209
237
229
229
118
229
182
125
289
231
140
221
215
139
213
208
187
238
208
174
209
186
221
225
195
153
240
207
242
191
186
203
213
152
172
243
203
164
196
228
157
186
195
198
175
161
255
213
170
162
262
192
209
131
182
263
238
198
205
204
238
145
217
166
205
241
164
132
237
197
142
219
252
216
225
242
227
155
207
207
198
160
197
191
218
218
179
214
203
173
209
153
159
150
254
170
187
212
172
160
167
232
230
199
145
173
202
265
227
180
134
195
226
183
224
178
184
236
176
209
108
143
233
226
171
186
185
221
205
222
256
188
164
209
236
197
186
187
177
214
243
219
210
222
240
166
201
179
232
188
216
211
219
238
246
193
192
178
234
238
240
156
205
196
178
115
229
203
177
254
205
204
222
182
219
238
211
190
133
186
134
221
288
217
241
216
207
203
178
89
214
157
211
219
200
204
219
232
175
205
202
210
242
195
213
159
184
216
206
193
179
206
183
205
229
218
226
207
267
197
134
248
155
233
207
184
238
195
161
234
181
201
178
157
233
177
150
160
188
107
231
234
190
128
173
249
131
176
244
212
169
237
210
258
152
230
199
208
186
208
190
193
202
141
157
187
162
229
220
220
226
158
136
159
172
223
261
159
210
178
217
217
224
164
165
206
147
163
197
200
257
231
198
204
163
245
201
119
188
187
188
210
215
157
225
179
198
201
231
211
183
214
204
173
154
190
195
201
205
186
263
187
209
236
173
165
194
210
202
167
200
158
277
156
139
153
163
209
141
223
167
189
192
183
139
176
207
170
223
220
210
144
173
261
179
196
219
219
188
164
229
158
188
220
176
231
189
169
128
215
204
228
268
166
217
207
211
152
205
235
198
207
220
181
262
226
198
188
176
232
233
172
196
192
263
260
263
202
264
166
153
250
202
250
256
237
243
160
252
171
193
212
164
211
201
183
146
245
156
198
203
221
243
161
166
210
150
222
187
146
227
166
210
244
227
177
215
222
173
141
221
196
204
200
159
250
191
205
188
203
148
232
255
201
162
223
279
208
216
214
104
163
188
193
213
245
158
183
168
195
165
226
230
214
222
181
241
164
218
230
243
221
233
182
203
230
171
170
203
211
194
147
220
245
209
186
193
222
232
187
238
168
157
206
171
149
235
244
155
223
180
200
222
229
214
222
169
201
237
214
174
191
205
181
146
148
187
177
234
193
172
121
204
240
228
237
181
234
187
167
174
176
227
206
197
205
272
210
237
174
201
213
194
194
208
152
181
245
206
195
227
204
181
196
234
169
225
169
207
218
213
213
225
189
216
196
124
210
169
241
264
244
179
157
187
159
243
215
194
158
208
260
237
191
181
227
233
238
203
228
192
170
159
129
147
208
138
200
215
230
199
268
174
178
202
190
229
238
195
185
207
198
210
181
170
204
184
193
223
154
172
173
228
176
163
266
264
219
214
235
182
203
142
241
203
167
187
223
142
177
253
227
224
208
171
217
199
195
154
191
138
190
175
207
203
172
239
156
222
137
212
167
152
248
218
193
249
174
244
192
145
167
240
218
227
247
141
204
178
205
202
109
167
210
221
169
218
193
249
172
148
242
221
225
225
209
214
238
189
198
187
153
107
204
162
195
207
222
278
165
182
180
203
159
122
195
176
180
181
190
175
209
177
107
149
194
189
187
232
188
251
203
160
189
194
170
217
124
128
198
237
249
150
215
124
181
193
196
178
178
172
169
172
165
168
135
204
252
205
158
190
167
204
176
215
147
236
225
188
232
196
215
191
168
258
210
186
218
217
277
261
212
206
268
159
224
183
282
229
240
126
198
165
185
219
213
182
207
213
150
222
222
186
171
200
208
166
249
199
264
214
186
156
267
250
195
221
154
190
168
210
201
218
163
227
177
183
200
214
240
204
194
204
205
245
213
230
176
188
195
251
187
141
245
159
187
204
218
238
215
193
165
227
174
271
207
195
217
180
198
242
280
154
161
195
239
218
203
188
177
181
200
242
142
171
170
175
175
150
212
238
220
151
222
244
176
168
237
175
224
167
232
236
199
217
192
158
221
186
178
218
186
174
204
172
209
234
190
216
135
241
211
226
226
204
208
164
278
141
218
226
198
189
176
148
223
186
166
177
242
225
236
251
135
207
212
234
223
187
252
258
226
178
240
209
273
174
182
189
152
223
200
191
231
152
210
194
186
243
125
214
157
163
197
208
215
269
197
213
208
185
161
245
168
106
182
210
229
208
270
184
202
218
175
139
183
204
221
240
120
144
236
246
250
206
240
170
151
284
184
239
211
195
205
252
117
282
271
211
205
157
168
216
222
174
200
181
207
208
209
206
194
219
216
202
246
210
163
223
193
211
183
199
207
171
222
251
162
202
188
140
203
163
230
173
199
168
259
188
237
203
209
200
162
187
241
175
203
244
228
195
219
242
208
170
238
248
231
246
171
165
220
215
257
214
240
189
202
229
189
163
216
132
199
199
162
163
236
224
209
191
141
177
198
222
233
212
184
190
174
191
186
215
209
215
208
236
177
169
160
235
259
165
132
157
161
217
218
232
213
201
207
215
189
152
177
210
215
192
214
187
154
177
230
220
238
166
195
245
196
191
163
179
177
196
222
183
212
146
271
217
200
204
181
239
280
171
211
231
181
178
243
231
180
245
181
198
219
203
256
207
170
265
202
167
241
132
210
232
235
174
247
163
171
227
184
211
171
186
220
193
210
175
159
201
229
235
190
241
237
231
124
186
199
146
187
130
249
216
206
259
148
231
225
267
265
159
224
144
197
211
185
206
138
221
134
202
154
223
189
206
193
256
250
251
192
209
201
192
202
137
244
200
181
184
258
180
108
176
212
155
181
203
245
174
197
170
213
207
217
234
260
234
136
202
235
212
192
163
177
204
281
237
219
218
168
208
156
247
223
139
172
144
237
200
168
255
155
197
175
201
192
223
237
248
193
165
198
252
167
269
243
224
202
227
167
183
275
195
241
130
244
189
211
239
235
174
184
283
263
178
206
197
220
185
187
209
222
173
174
163
192
123
231
232
207
195
202
181
187
158
197
241
277
207
210
213
218
240
199
170
241
206
197
175
178
238
167
201
245
221
162
186
191
200
197
242
169
195
168
256
251
201
202
206
245
184
249
245
231
213
212
202
202
224
191
143
223
206
206
221
208
272
154
240
177
258
202
242
189
223
222
177
232
245
168
205
165
239
210
176
186
230
208
203
174
208
209
207
200
138
149
236
256
142
177
220
162
185
254
190
112
186
197
215
204
196
241
213
140
215
205
167
227
165
279
185
106
277
225
233
173
248
178
191
158
224
161
225
197
173
246
197
195
227
211
234
177
203
156
276
216
234
198
246
140
184
185
217
199
238
226
233
146
236
190
191
212
183
249
190
163
221
212
186
151
112
167
203
142
225
186
234
168
266
250
213
200
194
166
196
191
243
209
195
153
202
211
178
202
188
231
173
172
235
190
186
235
178
216
187
278
211
255
195
178
151
171
171
189
204
192
132
182
216
184
207
176
212
160
193
182
185
169
152
213
185
215
188
241
169
152
185
181
173
190
171
170
206
202
222
249
146
136
176
234
242
210
217
170
271
191
203
209
186
195
194
223
172
166
198
210
232
231
219
153
204
266
151
154
250
203
209
220
212
212
202
252
198
217
257
187
179
227
240
259
186
207
209
200
260
176
281
194
187
255
155
234
184
213
221
248
215
241
217
242
155
195
215
210
195
221
238
179
203
229
214
188
175
189
208
242
203
212
223
185
273
220
207
234
253
169
187
254
219
133
255
249
196
219
137
189
248
177
213
138
221
228
182
165
172
213
224
185
237
210
240
179
158
187
236
151
163
196
204
178
201
230
191
207
233
190
149
196
214
206
214
248
229
203
196
174
211
202
223
277
167
217
217
279
204
287
219
209
267
191
228
217
245
194
237
151
194
183
198
175
191
182
181
214
232
180
220
157
265
188
236
186
151
253
213
230
196
220
210
235
252
217
209
246
189
177
228
183
196
238
157
201
255
167
132
153
237
185
175
268
235
266
197
190
215
235
205
205
162
170
155
264
223
135
179
231
198
176
232
122
224
229
181
157
232
194
225
181
124
189
214
229
195
185
235
211
203
225
215
244
260
168
150
217
232
165
167
172
252
204
159
188
288
197
210
225
240
159
207
233
213
205
174
175
205
217
214
208
218
182
153
200
228
230
150
211
206
205
177
117
154
160
213
202
223
205
184
193
255
223
136
188
217
249
232
223
168
233
224
222
160
206
191
198
119
172
165
198
208
188
265
177
173
229
216
244
207
195
122
249
191
232
258
241
238
244
142
231
141
160
132
219
259
179
193
150
164
253
206
219
147
184
212
181
220
166
257
218
256
207
221
212
151
176
223
201
191
271
213
272
239
219
146
168
209
118
221
192
205
182
269
227
212
219
171
180
212
203
140
211
188
146
172
221
215
140
205
227
151
149
215
214
177
209
238
252
177
175
158
185
187
241
144
131
187
221
252
165
137
165
257
231
211
127
245
197
161
205
183
207
206
184
176
175
153
142
207
217
155
204
197
232
197
185
232
193
192
151
178
162
172
224
177
196
221
177
194
143
139
149
167
188
250
233
198
196
132
245
237
245
206
173
189
232
171
166
209
175
141
224
222
183
152
196
195
191
209
195
175
239
267
217
157
165
203
207
185
195
196
250
235
182
178
265
272
173
206
191
198
173
243
255
137
167
214
164
208
215
204
214
175
198
196
185
216
193
181
233
211
189
217
204
259
172
197
165
233
170
166
242
169
259
167
211
218
170
175
180
219
185
165
164
228
226
170
166
200
228
196
241
221
223
111
145
185
210
215
212
160
212
204
187
205
252
185
214
175
232
174
167
155
169
192
204
199
272
195
235
172
174
175
187
246
180
231
192
252
254
218
198
185
187
168
210
159
250
139
181
205
238
276
263
248
174
187
197
112
221
192
210
156
181
234
235
164
215
205
176
210
271
265
151
150
197
197
190
195
214
229
239
238
220
206
190
153
119
164
219
206
207
251
167
203
146
149
219
183
188
192
222
192
185
74
210
178
212
212
231
194
153
181
188
220
159
224
243
249
189
194
202
205
286
126
196
221
188
238
202
235
190
205
170
226
179
239
174
160
218
205
172
194
198
130
189
225
242
211
184
170
143
211
250
220
201
177
195
201
183
118
252
202
227
177
210
151
171
216
207
206
183
250
197
205
188
183
185
224
194
202
192
159
221
223
153
245
241
235
267
170
193
170
232
173
215
197
154
247
189
257
212
217
292
136
260
212
198
212
177
217
186
239
197
183
242
207
150
223
196
181
149
198
215
208
206
174
153
184
213
172
231
137
225
149
163
130
211
153
164
241
163
232
190
201
224
232
199
188
132
204
175
198
227
194
139
192
218
207
205
209
96
209
184
231
208
244
236
172
209
230
171
230
226
190
183
221
175
235
189
176
130
235
256
227
121
166
222
178
262
188
215
246
196
161
199
178
171
218
153
174
214
201
223
245
141
148
194
231
193
133
202
135
229
205
158
157
193
203
234
167
207
186
203
241
206
215
196
209
244
147
155
169
205
224
253
221
155
162
201
213
196
221
187
255
170
200
203
174
211
220
177
165
218
142
280
164
215
152
208
172
165
230
221
195
232
217
165
205
265
168
170
195
219
208
161
167
248
223
243
237
200
261
185
178
222
194
169
215
245
232
166
236
238
228
211
176
197
202
191
173
225
220
229
176
244
162
208
186
225
171
208
195
169
171
191
165
214
141
161
192
259
234
218
190
205
174
201
249
232
182
169
208
233
174
167
176
183
208
194
173
227
199
197
154
170
243
266
189
173
208
230
222
188
223
252
212
206
207
217
226
183
220
246
237
188
229
202
254
269
227
235
213
171
171
245
200
227
188
181
156
204
205
260
211
228
252
139
253
258
213
206
249
212
225
190
218
130
236
278
129
188
203
196
170
172
206
180
191
161
207
172
242
159
170
196
215
193
154
160
183
190
201
187
275
162
205
220
150
226
197
197
195
223
189
300
202
272
214
205
216
217
218
209
231
208
163
215
216
214
210
202
171
183
181
199
197
221
220
197
225
239
190
239
202
214
230
250
163
232
292
221
225
151
178
224
198
228
117
175
182
203
240
219
229
205
150
144
243
215
233
179
192
137
152
116
249
180
247
185
179
206
197
146
180
253
197
180
258
267
138
198
230
237
249
280
225
203
184
195
264
218
168
177
222
193
176
158
177
196
176
221
199
234
230
162
106
182
173
213
174
211
213
211
174
182
185
178
131
190
190
195
171
263
222
254
228
218
187
189
233
237
169
227
185
233
162
215
194
203
250
199
176
211
152
156
204
200
226
150
259
180
131
170
211
260
174
222
220
216
178
180
156
212
178
158
175
192
248
143
170
230
223
187
201
233
133
233
200
211
251
236
216
193
166
274
214
217
195
193
191
195
181
303
212
174
196
189
229
222
209
238
155
148
209
195
254
245
201
155
232
211
242
183
224
172
217
176
226
186
195
186
183
199
144
211
137
274
234
243
177
226
227
148
190
125
220
181
160
149
194
226
201
226
156
204
195
151
223
230
214
196
232
267
115
239
254
204
216
194
170
146
246
153
255
186
170
197
195
173
230
316
237
181
222
107
215
189
145
235
173
211
178
223
216
202
212
207
199
176
189
207
228
165
144
228
234
199
260
181
227
225
159
245
216
265
181
223
152
142
203
158
236
138
199
230
256
176
282
223
218
187
234
181
168
262
203
189
171
145
196
269
211
168
188
177
152
231
184
132
229
206
179
218
166
248
172
224
231
172
207
244
248
202
209
216
140
202
224
220
175
218
232
240
174
185
149
203
218
156
157
167
239
197
198
230
205
225
207
148
183
246
246
151
194
212
219
189
210
237
144
184
201
185
164
250
176
166
228
265
150
173
195
208
190
242
211
225
225
229
200
190
174
249
189
237
193
154
255
159
227
233
196
181
182
216
208
236
231
193
140
167
170
191
166
198
220
182
170
222
217
226
241
162
197
206
218
213
177
155
220
247
208
162
236
174
214
186
242
248
172
202
232
193
201
157
238
251
173
158
235
195
175
210
155
190
146
217
188
138
217
156
209
192
179
194
207
157
231
207
207
232
239
212
119
234
204
204
249
211
199
194
184
143
200
199
162
211
184
161
213
182
204
200
207
241
194
191
196
234
158
192
235
196
194
207
231
255
206
202
158
174
260
196
179
182
155
206
224
220
155
159
211
224
263
185
237
248
199
216
236
207
160
194
187
150
203
208
234
271
102
211
237
227
177
264
197
153
239
197
267
220
240
185
208
200
227
201
126
205
172
194
255
167
215
207
186
180
136
207
227
211
175
249
258
215
283
101
247
218
113
214
115
199
151
176
239
135
217
214
226
212
186
208
170
210
177
161
166
186
181
204
237
177
227
246
219
208
174
199
206
201
152
235
168
214
200
167
224
136
213
237
197
209
193
140
230
226
167
225
186
174
196
180
220
209
237
157
179
188
172
257
158
159
223
226
208
209
209
218
183
241
241
191
231
150
238
193
212
191
216
217
225
236
223
195
200
184
155
194
200
234
209
228
217
224
199
181
196
190
166
249
154
141
139
201
230
190
183
201
213
205
258
220
173
173
239
221
296
219
202
248
258
269
217
226
200
258
236
188
193
239
224
225
230
181
192
199
189
205
201
157
198
146
192
201
252
172
160
185
125
240
133
190
207
197
201
207
192
141
253
141
275
205
205
257
179
153
210
239
226
232
167
237
217
204
231
255
198
209
209
144
262
270
161
187
210
223
196
237
130
226
247
208
147
187
218
156
186
238
240
243
211
177
248
108
158
219
221
257
203
163
159
178
107
196
205
208
202
228
238
184
217
182
177
206
212
149
248
147
180
184
190
240
218
227
204
187
200
308
132
131
201
173
231
237
209
235
167
170
219
164
245
266
186
162
212
156
244
156
238
231
187
187
196
196
285
201
172
221
272
281
214
195
208
200
221
220
206
213
255
176
165
211
227
205
191
185
149
256
142
210
139
207
191
177
184
212
204
183
220
220
197
238
224
271
223
157
125
201
181
161
166
205
201
241
272
163
206
156
177
163
256
192
244
97
178
165
215
210
174
255
170
249
195
215
170
258
194
214
264
180
190
229
239
215
198
188
250
238
215
239
240
236
179
151
189
221
226
200
242
121
146
227
246
175
159
188
234
218
241
179
197
212
170
222
261
207
248
204
246
155
196
149
182
205
238
266
130
197
223
183
185
210
181
220
265
249
214
215
168
251
185
182
254
160
200
151
233
241
199
222
182
154
177
175
150
218
175
203
167
191
185
187
252
265
269
233
132
160
210
228
162
206
132
158
190
224
175
206
135
182
147
155
204
262
171
221
200
165
229
198
156
146
204
190
232
212
238
226
198
187
250
169
184
158
155
200
274
178
205
146
235
181
227
226
252
190
190
119
212
177
239
237
207
148
161
193
239
170
213
186
168
163
218
180
169
180
211
162
178
263
224
136
145
213
222
165
177
211
138
235
92
227
192
218
239
150
204
178
193
230
204
183
219
225
219
216
209
134
222
185
272
209
205
138
194
173
253
220
152
177
246
247
218
240
213
244
173
246
201
129
228
241
211
259
210
263
162
202
301
222
146
207
202
193
181
202
165
200
211
124
229
205
155
197
220
210
230
173
188
261
186
215
104
245
176
226
171
195
149
277
209
223
215
174
182
222
198
128
230
118
256
197
150
253
183
174
236
217
207
217
230
145
164
214
192
216
226
193
213
215
180
120
204
209
158
242
110
155
161
194
190
178
148
221
214
188
181
124
194
227
262
202
215
160
185
178
190
215
154
252
239
231
205
221
149
219
179
184
208
166
134
186
175
225
224
216
199
197
183
202
264
235
207
189
234
200
192
235
208
206
196
193
175
167
168
220
251
208
220
139
218
251
206
162
203
211
165
207
206
163
199
227
222
226
244
168
207
230
196
213
216
157
186
239
243
181
225
269
233
228
221
261
158
169
281
137
231
230
205
181
179
219
210
257
118
156
163
181
232
202
206
192
241
230
247
179
206
230
230
254
191
203
208
159
241
177
218
236
257
174
278
253
228
290
246
185
240
174
168
206
206
214
172
145
140
225
180
196
200
197
181
199
169
179
213
252
220
202
181
219
135
185
211
133
200
133
196
215
215
219
178
208
185
268
167
182
207
180
158
189
209
250
189
228
190
163
241
207
133
179
179
145
182
234
243
214
174
213
209
235
208
227
162
216
170
208
213
266
190
173
143
205
193
219
204
243
181
210
227
221
226
148
269
182
185
206
246
244
208
182
206
242
224
212
218
202
156
207
219
181
161
215
223
202
226
184
213
199
185
182
183
250
179
233
199
166
216
211
93
179
173
211
228
217
211
193
193
232
202
232
200
202
202
182
184
185
238
208
230
204
248
182
179
211
165
169
215
136
189
196
151
213
200
216
187
194
183
263
202
146
164
171
238
235
209
234
176
181
220
199
216
218
180
186
153
189
137
201
210
202
247
136
240
235
184
197
156
148
245
182
206
156
157
214
229
214
239
198
185
213
244
188
169
200
168
230
166
243
195
231
262
179
195
185
187
164
155
219
150
221
219
162
143
202
134
137
158
134
197
189
148
238
241
165
201
204
188
204
166
231
268
222
220
137
219
221
181
206
193
228
143
244
220
210
164
106
223
204
200
196
176
225
197
238
238
234
180
192
216
201
206
256
200
154
184
167
132
212
191
218
206
162
257
214
235
230
151
161
176
213
206
205
173
191
191
256
180
183
258
163
187
217
243
186
256
205
204
281
228
183
192
225
184
161
203
263
169
249
216
187
190
191
148
181
230
243
175
217
211
129
179
132
175
201
141
215
231
211
205
179
150
234
183
189
189
202
243
181
138
220
179
219
227
271
237
252
170
125
183
204
196
196
196
148
182
216
192
161
223
151
221
230
252
185
177
242
238
234
201
201
226
195
231
126
136
183
123
180
196
131
244
182
199
155
161
195
176
215
242
213
186
160
175
233
237
146
213
113
215
153
227
211
235
188
206
235
178
213
179
196
223
197
186
175
171
220
198
175
169
229
208
277
253
217
174
112
173
245
118
212
206
185
240
157
213
186
167
134
229
176
149
260
165
204
232
220
239
262
195
202
233
162
148
194
204
213
183
221
185
140
254
121
183
150
230
203
221
230
205
203
170
178
215
231
237
180
152
232
140
175
129
135
187
206
188
172
186
142
209
169
242
206
250
193
212
172
183
174
229
146
167
187
282
174
130
185
238
210
186
186
177
248
189
207
218
250
150
282
201
143
178
212
222
205
209
182
199
182
238
192
194
210
156
189
199
198
192
167
227
259
219
206
231
203
164
172
207
249
207
165
213
203
249
223
231
157
239
158
164
184
157
288
138
139
249
234
228
187
158
197
155
194
172
226
201
223
224
217
241
204
173
158
209
217
194
249
216
212
189
251
259
229
192
246
242
141
253
220
192
209
237
208
214
197
232
182
178
214
173
220
269
169
175
207
230
213
175
217
249
204
161
194
141
218
179
222
197
245
170
177
111
230
234
233
141
272
144
243
200
225
210
189
193
166
206
159
189
129
226
230
108
202
204
197
234
254
163
239
217
217
136
199
185
233
171
204
255
267
259
161
181
169
152
247
217
255
178
177
158
211
220
187
196
269
145
205
176
156
203
135
218
229
191
212
185
221
154
234
170
198
171
185
173
216
157
236
227
273
144
227
228
191
212
277
225
242
217
189
234
228
172
212
178
182
186
219
198
149
217
193
242
181
188
199
234
184
126
201
228
200
238
199
218
250
199
186
185
251
180
227
219
216
174
282
212
246
210
141
204
190
170
218
154
202
186
281
177
161
240
213
207
265
179
173
156
180
185
205
197
249
182
207
179
227
208
256
173
179
193
162
245
138
172
234
143
165
237
172
200
197
186
173
250
172
188
193
178
182
226
165
203
187
221
220
198
198
178
165
166
192
191
187
166
198
225
250
227
186
157
232
200
182
191
195
240
192
149
161
216
193
222
205
152
228
217
203
180
194
133
212
214
253
146
138
244
184
217
136
204
184
214
156
171
208
180
181
228
189
177
154
132
204
209
187
196
157
191
127
222
166
179
179
211
195
210
236
151
204
168
215
214
158
226
158
205
252
192
189
162
162
228
231
257
177
262
170
197
186
208
125
222
116
240
201
200
215
173
207
189
161
172
234
138
160
224
236
186
203
189
202
185
150
213
147
168
190
206
169
238
256
208
210
251
204
173
189
218
228
207
222
150
269
259
201
224
198
189
187
214
210
201
227
131
215
150
213
175
179
194
191
234
232
204
246
174
172
154
200
211
196
195
206
223
157
169
180
172
233
268
179
250
228
122
167
228
244
228
187
229
196
210
175
208
174
152
167
200
212
217
185
239
302
195
268
208
180
217
222
168
219
221
233
187
168
193
225
230
158
221
153
191
155
197
185
173
255
137
200
150
242
174
163
213
188
154
169
214
241
123
224
223
236
186
242
243
128
243
190
197
233
234
177
225
206
209
228
211
201
174
198
170
113
206
190
188
170
216
130
171
201
201
235
175
191
255
208
230
209
191
227
245
197
201
225
187
203
194
128
187
245
184
205
160
187
267
201
199
168
248
219
228
228
211
186
236
186
194
239
185
286
262
228
198
212
239
182
160
233
223
164
136
240
187
181
229
137
245
268
189
247
246
209
238
156
233
159
216
209
235
134
186
273
133
182
203
225
213
135
205
230
68
231
204
204
177
127
147
210
236
221
273
245
176
140
214
195
167
185
242
199
233
205
219
186
171
234
187
180
198
197
253
242
173
204
186
203
236
150
246
205
167
225
179
265
168
270
186
169
176
150
198
188
186
168
213
216
190
110
195
203
231
198
192
248
181
165
156
239
180
206
118
192
245
187
158
179
172
253
241
169
168
144
232
221
243
227
222
177
224
199
168
239
228
182
203
172
257
219
199
195
151
204
176
202
238
215
243
207
195
191
142
254
229
228
270
182
132
224
242
197
223
224
227
160
213
207
247
148
241
193
216
243
202
160
260
201
224
205
245
180
183
184
244
211
161
186
125
183
214
181
215
229
179
213
247
192
139
200
192
207
183
182
244
214
150
271
136
233
211
222
213
195
173
216
201
211
213
206
161
229
166
179
230
145
159
188
158
220
253
248
218
216
241
189
204
139
195
219
222
152
254
188
172
234
222
213
196
241
179
175
215
124
187
163
172
213
196
210
266
238
182
172
185
222
161
189
164
138
191
193
177
220
270
267
250
168
220
183
216
260
238
204
241
191
169
235
250
214
247
230
276
208
237
216
203
198
196
184
236
205
230
204
209
221
163
148
213
168
248
191
184
169
174
229
161
197
264
191
212
194
232
181
222
232
219
215
168
229
215
208
132
160
252
190
233
199
181
210
223
157
229
211
253
181
211
224
154
167
175
167
185
245
246
225
204
199
216
193
141
227
160
157
234
215
164
215
233
237
197
206
154
171
165
192
227
154
209
177
200
226
207
248
186
127
280
158
167
295
264
256
199
193
156
170
229
197
131
218
148
246
210
147
171
144
201
166
164
171
134
183
175
138
143
168
248
152
210
175
154
193
242
192
186
176
202
179
194
157
159
213
221
117
195
227
190
192
238
209
162
235
213
161
192
241
196
195
216
221
252
135
238
149
145
166
182
251
293
223
175
216
230
224
200
214
202
216
139
178
215
173
165
188
226
209
183
153
160
255
224
231
171
222
180
187
89
215
149
225
231
167
180
229
220
212
120
186
229
215
254
163
224
155
213
248
195
227
173
230
243
250
120
286
168
204
240
190
210
236
143
208
241
212
179
216
158
248
188
173
168
192
205
215
162
195
249
210
191
158
157
218
192
202
192
184
207
147
245
222
219
206
216
187
178
278
201
259
280
164
118
201
195
187
211
200
214
221
215
194
251
231
198
181
232
255
157
200
187
190
200
228
206
195
222
144
180
145
218
206
169
214
200
230
241
173
253
154
179
179
216
237
210
182
218
212
176
203
126
246
178
204
157
173
158
196
220
208
153
210
129
136
196
151
201
182
245
179
178
157
205
167
276
136
170
238
197
205
181
190
237
215
166
189
196
201
172
249
227
214
165
146
199
229
177
155
160
272
249
253
171
193
175
185
209
177
201
143
210
130
110
228
133
218
232
211
155
214
222
183
227
175
225
150
172
212
272
201
136
207
219
240
199
214
212
160
185
209
220
234
122
196
212
195
173
184
213
177
226
169
184
176
119
190
191
147
179
250
206
136
238
156
162
234
192
115
219
165
199
245
222
175
218
182
133
251
211
243
110
225
187
192
133
147
143
117
207
188
176
217
187
245
213
212
213
235
197
215
146
274
196
195
265
178
187
168
195
230
182
242
141
180
217
238
254
251
174
253
177
243
207
163
190
188
229
166
217
181
202
202
161
164
153
166
268
262
148
171
212
127
217
136
189
119
181
150
210
282
220
242
201
164
232
170
194
191
253
209
190
170
205
206
201
175
178
235
217
270
192
176
212
193
267
180
211
166
207
218
245
229
158
191
218
247
233
190
83
200
237
236
176
232
212
141
259
142
217
149
218
170
244
244
212
189
274
166
220
197
199
151
265
227
222
217
187
190
221
174
200
249
207
125
215
215
209
149
254
175
178
217
153
216
117
209
165
216
178
198
227
182
160
203
178
247
214
173
160
179
252
139
143
186
207
226
206
234
225
218
201
157
207
217
163
169
189
212
233
205
209
245
155
209
172
196
257
163
271
212
257
206
219
249
210
167
179
236
172
161
189
229
178
221
284
240
246
262
152
203
208
223
214
199
171
171
219
183
143
208
183
151
210
210
229
213
245
176
231
207
191
221
182
184
223
217
192
201
254
218
163
241
242
199
267
184
215
223
240
177
210
208
213
215
209
202
211
156
157
201
192
216
249
202
217
225
205
207
144
212
150
244
256
187
192
196
217
266
160
236
179
231
180
205
261
213
149
212
215
248
198
235
233
179
203
226
162
214
184
224
222
191
243
160
215
221
226
251
265
222
181
213
191
194
139
222
254
201
227
146
195
186
219
121
200
191
187
220
204
234
168
157
189
233
231
205
270
174
236
241
169
211
235
205
183
169
163
191
191
188
163
206
228
198
147
230
193
200
228
168
186
188
178
205
204
232
231
198
202
211
209
229
217
238
273
167
199
228
196
214
206
221
238
184
211
181
189
237
189
197
237
171
179
226
212
130
161
208
254
108
255
211
160
155
178
244
132
198
220
160
200
171
172
183
211
224
218
190
215
188
126
192
187
156
176
200
239
156
233
200
170
230
211
181
195
208
210
214
190
247
165
171
171
179
159
215
207
148
189
172
278
225
223
184
169
213
207
191
239
214
176
247
213
197
209
223
259
193
225
235
172
217
255
178
189
169
204
240
181
187
177
187
145
199
239
144
222
179
153
118
199
195
176
255
195
192
153
145
186
202
173
182
214
222
137
192
227
190
153
199
170
209
227
165
224
190
232
171
221
224
202
215
247
236
198
242
220
170
199
198
222
220
210
143
228
235
187
186
253
238
237
169
211
180
205
135
178
208
226
218
200
205
250
233
170
161
274
112
184
121
222
209
252
253
227
179
180
214
192
193
199
254
240
180
260
236
190
201
233
194
236
211
229
280
132
248
246
218
219
216
195
189
191
156
292
199
196
163
118
240
232
204
233
259
164
243
290
239
166
246
176
191
211
209
168
157
227
223
213
241
222
243
157
248
193
242
219
170
135
202
250
190
204
189
182
180
175
157
183
172
168
241
232
226
191
203
166
151
234
179
271
221
190
227
205
257
149
153
181
253
170
185
223
214
180
242
286
261
206
153
193
234
219
237
159
248
185
185
198
182
194
181
148
142
247
163
196
212
212
231
248
140
168
252
139
276
196
212
237
218
184
249
179
199
219
177
234
206
210
207
180
138
214
243
205
164
219
159
205
220
179
234
174
248
196
236
211
164
171
197
214
208
188
165
194
217
173
208
186
212
173
214
165
243
268
191
174
196
240
214
223
152
165
206
167
167
141
173
235
165
230
193
209
196
228
192
210
181
201
209
231
218
224
181
222
184
220
226
190
197
194
242
220
203
242
265
179
188
222
185
195
160
197
193
212
178
196
221
251
220
181
196
204
270
226
192
184
204
101
248
199
260
213
211
223
169
154
210
175
233
199
168
197
169
231
197
216
163
160
151
171
233
136
143
214
203
235
190
229
166
164
233
171
186
216
229
194
203
180
180
240
171
185
177
178
202
148
142
255
212
214
183
168
206
245
154
150
232
124
251
179
178
189
192
239
186
192
134
192
280
183
208
233
205
235
174
211
222
209
181
158
181
168
193
140
227
195
194
196
214
139
106
195
209
223
137
231
193
241
210
176
112
198
223
225
206
227
169
143
231
178
239
224
196
223
221
249
190
166
189
238
158
238
198
167
177
175
198
164
204
203
182
198
219
261
80
233
166
277
190
203
205
217
232
232
125
174
154
125
187
217
242
182
249
221
152
255
259
199
182
192
183
230
230
207
196
163
254
170
241
175
132
205
214
178
174
135
152
232
229
203
239
233
213
242
146
200
175
174
227
179
244
205
185
213
197
249
228
213
139
181
230
215
164
180
167
216
195
185
180
157
184
163
191
241
250
194
171
254
243
210
224
208
187
236
206
223
178
270
203
227
183
238
179
105
113
169
134
220
163
188
187
133
162
217
175
188
242
250
225
237
189
258
195
232
179
209
200
245
170
224
202
160
214
196
176
220
195
191
187
248
183
180
192
214
220
178
213
192
172
240
165
202
200
262
213
218
243
167
178
176
201
164
189
200
178
207
205
167
220
179
142
200
170
172
252
170
271
207
179
161
199
206
197
194
185
200
181
239
216
224
173
195
170
224
238
208
190
220
230
245
195
226
275
193
235
213
156
193
206
196
154
240
200
222
196
229
204
190
219
258
227
198
232
206
191
244
209
126
216
215
180
239
197
208
214
182
179
203
208
203
175
237
187
260
217
221
203
224
177
177
201
190
198
244
160
197
205
212
266
208
202
189
228
215
177
186
223
223
175
261
234
168
202
171
251
170
219
168
168
260
186
190
203
206
222
215
195
211
212
216
245
135
132
219
188
161
247
257
199
225
194
164
211
223
196
167
204
183
202
147
205
212
180
222
152
201
178
140
204
223
201
217
187
226
152
223
197
226
196
164
225
205
132
221
245
212
195
179
180
166
166
230
194
247
147
185
211
241
202
228
236
197
187
168
199
220
158
146
212
190
197
218
202
225
208
216
161
208
193
207
172
132
206
126
188
163
180
176
195
199
171
157
242
227
200
190
268
139
162
169
244
158
228
183
126
251
183
122
216
228
164
154
151
164
237
187
177
247
148
174
217
194
179
252
218
156
242
211
243
197
204
174
210
202
199
145
219
213
170
226
231
223
181
216
193
183
236
209
256
240
192
196
258
206
201
215
195
223
185
204
205
178
205
276
231
222
189
160
215
157
225
166
210
168
215
178
213
260
143
203
219
241
184
164
248
170
188
181
259
235
177
194
123
212
247
159
194
225
189
208
190
173
221
178
181
203
242
240
222
183
171
196
198
163
174
162
123
196
150
202
137
243
210
186
272
212
181
205
231
128
199
205
117
170
180
164
163
155
238
249
241
139
144
227
223
168
214
245
180
207
232
221
172
182
218
224
220
173
216
185
239
182
165
212
205
182
155
236
216
241
180
229
209
255
222
210
173
230
135
254
158
266
205
199
212
252
182
201
260
192
213
212
213
167
218
213
201
186
178
217
207
181
159
269
234
249
184
181
243
184
163
139
192
200
140
197
260
225
201
163
195
190
202
239
154
182
252
197
198
178
201
190
209
127
225
199
241
162
272
173
260
233
257
225
232
206
215
183
210
258
211
157
205
175
178
185
154
193
227
181
178
204
263
148
152
237
171
240
204
179
177
155
207
233
253
186
168
192
209
169
211
155
139
190
131
192
266
176
234
209
222
132
182
142
236
278
166
197
212
231
213
169
203
235
217
146
185
148
223
217
208
237
185
201
168
229
164
191
199
206
204
153
141
239
176
213
216
191
164
155
204
224
201
226
169
222
233
178
235
167
170
190
160
173
265
181
237
218
194
254
189
238
184
223
207
217
199
167
143
175
199
222
249
208
147
222
259
271
171
144
179
185
185
206
209
216
160
204
184
171
225
238
203
221
211
165
240
202
201
186
210
208
226
263
204
91
207
192
178
237
256
228
206
237
211
248
219
190
225
205
210
183
195
181
252
226
237
164
161
210
188
187
202
190
206
208
174
164
208
216
197
199
201
201
181
255
207
198
212
181
176
161
263
113
246
195
180
159
195
204
159
273
187
210
181
194
173
196
219
181
206
238
153
208
205
180
203
172
200
181
195
164
227
213
136
183
155
131
221
136
146
199
258
178
253
84
222
192
212
143
176
196
111
175
201
228
208
202
208
260
230
202
174
201
239
207
159
158
228
221
199
157
197
199
231
218
192
273
200
245
224
170
234
189
153
194
234
197
147
191
141
223
242
223
203
147
272
243
225
221
223
263
225
215
215
195
202
198
233
178
255
198
207
218
216
283
179
160
192
203
214
212
212
215
199
156
153
146
252
223
153
224
205
195
138
199
141
197
260
203
201
192
223
247
207
205
213
238
230
170
190
241
179
238
209
201
232
224
134
231
189
162
252
200
165
151
144
207
157
253
203
182
192
200
247
162
234
193
175
185
165
206
136
223
172
219
195
181
239
164
190
286
207
226
198
210
168
183
188
228
150
200
161
201
148
252
214
140
189
254
199
266
199
266
188
160
151
174
218
205
184
236
168
210
214
231
182
200
158
192
209
251
175
218
195
183
183
196
193
184
222
172
199
191
164
218
176
212
155
229
160
141
164
183
184
129
211
227
154
200
140
238
160
172
248
203
217
199
192
178
190
198
247
163
171
209
128
203
132
183
225
238
225
258
200
174
219
208
171
213
198
210
244
172
258
153
200
288
173
173
145
172
240
190
182
190
230
181
169
217
240
204
187
220
170
112
172
217
289
230
184
226
211
195
179
225
213
243
225
215
199
164
183
205
145
216
169
214
237
262
180
227
188
178
220
167
142
133
231
222
190
238
181
217
180
137
161
251
259
225
281
232
194
235
208
241
198
216
244
200
226
210
160
220
220
260
200
235
196
187
193
249
161
181
200
174
187
233
188
159
207
217
199
185
229
156
171
263
157
236
239
220
235
275
232
191
128
142
244
195
224
229
192
171
170
202
164
221
147
298
189
264
212
161
228
198
221
196
250
202
228
188
139
230
196
166
197
144
188
155
224
154
176
189
220
251
162
204
231
259
217
158
170
219
216
253
215
222
183
141
252
221
229
250
198
213
172
194
169
246
188
182
192
167
219
158
230
154
165
202
163
250
256
178
196
150
215
97
162
267
192
178
175
250
160
189
148
163
174
220
219
204
208
163
181
198
214
164
129
211
190
210
183
193
245
269
218
228
211
139
239
165
174
203
176
239
181
170
155
180
153
179
221
140
212
201
126
161
216
184
244
212
236
173
189
212
188
236
188
213
185
219
193
179
158
205
225
209
139
151
155
170
204
180
196
195
244
168
240
214
201
231
215
194
163
249
213
252
245
185
215
255
151
193
225
212
150
141
198
200
207
197
197
246
207
166
213
220
180
139
232
216
216
189
229
138
146
169
248
196
167
157
205
178
255
201
198
225
190
231
145
214
260
194
157
207
155
164
185
208
222
228
155
269
120
230
91
159
281
214
197
190
130
136
150
168
177
243
130
242
172
233
178
210
169
200
239
209
206
161
156
242
237
152
257
181
240
191
161
188
205
158
173
174
122
170
150
207
220
219
176
201
199
207
183
182
200
214
219
180
231
198
174
188
189
206
266
193
155
244
237
171
185
231
248
228
221
200
206
153
178
231
215
184
241
161
207
164
145
174
216
213
233
185
140
110
183
210
179
204
193
204
197
161
219
209
159
233
159
175
161
212
137
256
222
156
228
236
247
228
229
161
220
266
185
233
211
219
107
164
208
237
148
142
189
185
176
170
185
148
246
239
186
177
244
249
228
249
202
194
226
154
207
207
253
231
220
201
216
236
197
232
186
167
247
223
233
229
171
219
188
196
143
207
231
217
222
234
206
163
214
241
198
240
214
204
246
241
204
167
202
207
236
233
109
154
154
154
173
182
147
236
228
136
175
216
232
252
160
196
172
255
156
275
178
127
213
241
100
268
192
183
119
189
168
182
181
184
238
249
215
199
132
184
206
184
204
214
231
190
197
222
236
182
205
227
199
206
261
162
204
218
156
210
181
255
199
154
210
163
173
186
191
162
212
204
231
143
200
256
182
201
204
221
156
209
165
154
220
195
206
177
138
186
275
222
203
163
229
187
252
228
138
127
196
194
219
172
241
279
191
207
212
259
283
237
228
197
190
181
156
200
193
170
194
148
132
251
212
125
272
241
230
219
208
206
152
209
211
188
241
211
197
149
199
171
159
188
170
212
191
186
198
233
211
211
216
218
222
271
181
221
220
188
121
261
256
242
241
244
171
219
272
226
197
240
186
183
244
231
180
228
225
150
188
194
208
197
219
171
163
210
225
218
121
184
262
220
231
197
186
193
186
218
184
195
232
217
235
188
188
146
136
175
175
173
174
194
182
215
212
184
181
205
230
191
168
218
219
153
186
179
216
202
189
238
171
167
213
171
231
207
233
174
170
171
206
231
203
214
251
234
267
178
157
214
251
212
204
215
225
175
180
185
231
180
213
232
192
219
215
214
262
169
132
197
131
199
191
205
237
177
222
216
190
213
156
238
168
244
253
186
172
158
224
150
193
149
215
209
257
205
225
204
168
172
213
219
208
183
179
231
193
228
168
210
147
149
180
238
174
220
232
220
172
216
156
240
178
166
209
198
187
220
258
211
223
256
193
195
202
239
214
238
240
159
289
179
208
171
203
146
170
265
116
194
180
190
173
208
188
193
197
171
204
232
151
151
219
199
176
180
177
210
277
258
217
174
220
233
171
219
111
173
210
198
181
191
214
168
211
129
207
142
202
193
183
181
236
192
180
195
196
210
228
249
221
153
221
232
200
180
238
238
265
227
201
219
155
220
200
170
254
169
115
203
190
232
148
194
215
187
200
211
126
249
252
225
177
198
224
192
151
212
205
259
200
272
192
187
233
175
179
203
198
214
257
207
174
227
158
182
170
222
202
209
205
173
196
198
208
182
179
158
150
168
210
208
164
187
211
157
211
225
176
189
238
218
247
252
186
164
160
265
188
209
152
153
222
213
226
252
224
219
222
214
141
243
209
195
234
163
257
205
150
207
155
185
173
196
232
167
220
193
207
219
210
205
254
174
204
224
279
136
210
258
159
257
250
149
170
188
236
223
185
182
121
229
189
187
171
163
213
221
190
224
181
214
183
168
166
226
244
263
158
207
204
205
217
245
198
228
197
217
167
157
206
186
186
225
206
154
224
201
271
217
197
181
199
229
224
216
208
197
171
134
172
183
214
209
164
234
173
203
278
169
239
187
237
236
141
193
213
217
235
191
191
179
142
167
231
227
228
170
254
153
209
225
223
144
205
253
196
186
256
113
202
198
195
280
143
230
255
191
236
156
201
171
169
198
191
197
244
212
181
189
144
196
222
151
184
201
188
190
213
216
245
180
203
176
186
203
200
162
222
224
89
158
193
177
189
240
249
195
161
197
190
220
197
152
152
249
172
168
206
214
205
223
225
169
237
184
210
187
212
191
229
238
139
148
212
199
263
173
183
223
193
165
232
167
163
191
204
221
244
271
209
194
188
173
234
210
225
218
231
199
198
232
216
193
210
235
214
232
229
206
208
203
187
195
184
202
219
114
154
231
215
207
143
238
191
231
171
231
202
214
232
190
204
254
199
213
221
236
192
192
206
247
203
176
181
216
206
216
198
230
202
234
236
210
152
193
236
242
231
176
175
170
184
206
187
171
195
170
175
202
261
214
254
212
185
170
214
159
201
204
141
166
217
207
152
266
160
188
237
148
221
252
216
119
195
215
236
131
228
223
237
191
210
227
216
197
174
221
162
167
139
194
197
213
250
223
207
155
195
187
236
168
226
299
233
120
169
212
210
194
212
190
238
232
207
190
133
217
178
161
213
216
194
208
191
204
163
239
182
214
194
204
259
134
223
206
153
192
153
197
126
227
172
230
212
201
191
174
235
204
227
161
183
243
185
176
171
242
166
195
250
210
154
217
216
200
228
205
209
218
239
225
192
261
171
198
189
192
221
235
126
183
222
227
188
210
217
198
211
219
241
235
233
126
231
230
243
181
176
171
184
244
244
168
185
209
244
138
210
215
157
230
225
195
225
279
230
217
184
178
178
187
175
201
212
154
231
153
220
217
201
176
187
195
168
118
229
254
217
190
208
177
222
182
214
188
210
173
204
231
257
190
153
173
178
166
155
181
143
182
251
201
208
179
157
182
172
184
184
146
245
238
238
188
169
157
152
210
293
222
204
239
128
198
167
190
256
193
230
208
199
250
174
201
179
158
179
201
213
171
151
166
195
196
165
269
225
198
239
218
227
228
196
219
167
230
179
161
268
265
176
164
179
174
283
212
242
240
193
214
221
200
210
142
152
234
231
196
149
185
193
204
207
170
199
189
228
234
236
149
145
230
140
223
123
192
223
185
211
150
158
189
207
140
202
263
248
220
208
242
203
151
217
230
221
235
167
236
193
253
223
248
194
124
188
141
174
222
151
275
232
177
201
170
231
219
169
188
193
250
184
182
166
208
244
232
106
188
173
222
238
217
273
199
228
116
170
160
146
133
260
186
179
176
212
215
171
239
215
161
185
162
233
197
179
169
203
174
190
239
210
193
189
161
160
235
238
193
260
254
208
191
213
220
191
187
156
253
165
214
186
200
221
181
175
215
147
220
210
228
192
192
163
173
195
219
241
163
196
194
227
199
204
203
212
204
227
208
161
217
220
204
234
182
162
170
210
196
219
162
182
239
175
223
243
188
235
199
214
260
196
143
253
191
204
242
158
145
187
230
175
198
216
189
136
228
96
228
203
180
217
166
208
189
200
224
212
291
156
263
215
240
154
181
135
196
184
173
194
155
152
187
207
193
187
179
210
219
208
213
210
163
211
251
221
242
200
203
142
222
204
236
177
204
185
203
216
136
115
242
243
208
229
234
227
223
141
168
217
122
193
199
236
217
209
224
141
189
203
188
208
188
199
263
207
190
211
192
222
232
164
199
180
180
219
239
198
188
206
163
203
152
204
238
239
182
221
202
226
194
235
218
213
225
156
163
248
187
159
173
182
194
97
224
183
173
190
259
182
152
158
254
216
245
239
230
231
175
239
229
227
154
271
236
136
258
202
173
231
191
225
245
175
185
223
117
244
202
171
157
268
187
200
236
173
164
219
178
200
265
174
176
181
216
190
197
184
170
185
118
232
170
222
248
155
236
157
245
163
221
211
202
153
234
189
216
236
236
272
176
236
193
243
156
190
203
204
163
213
239
166
258
185
215
198
207
177
196
230
193
208
149
157
212
200
235
250
178
220
187
203
158
184
194
208
149
179
160
209
198
181
242
237
174
221
185
162
186
166
270
188
162
186
271
232
211
233
174
235
204
160
198
216
196
210
221
181
182
211
188
200
236
215
167
236
227
179
184
202
206
183
159
146
202
178
247
189
211
182
170
226
155
170
151
190
191
188
212
153
204
228
128
203
230
226
236
161
218
166
151
232
189
139
189
221
194
226
197
213
220
188
215
195
202
258
191
192
252
195
190
223
188
174
180
164
206
227
243
193
256
199
189
151
223
196
172
230
197
194
144
178
243
214
202
199
246
213
143
195
184
242
156
251
196
134
215
181
228
201
220
222
166
145
204
237
179
188
216
163
176
179
199
227
212
213
202
212
223
210
207
233
174
239
185
203
239
217
174
171
215
204
217
211
231
299
262
234
188
154
269
142
226
247
176
244
150
190
203
227
202
231
202
229
153
203
165
217
195
178
200
135
181
214
182
244
203
219
158
131
199
200
223
186
166
214
186
212
204
185
203
229
228
145
182
195
183
196
141
105
242
191
148
183
246
179
207
238
122
133
166
194
181
159
200
201
224
203
207
199
182
227
203
190
180
276
224
218
275
211
197
190
239
160
213
200
171
226
212
167
209
262
222
178
253
154
168
219
204
234
196
231
216
220
221
216
191
145
202
196
231
156
242
204
169
176
193
187
230
196
173
164
157
264
201
221
212
223
202
126
221
124
214
202
164
183
256
226
213
218
234
205
203
185
247
202
191
205
181
162
219
179
192
203
245
198
189
262
223
163
149
191
212
254
274
151
237
146
232
163
234
183
243
182
224
225
212
241
142
169
203
183
184
230
184
225
134
254
142
194
202
263
191
184
211
202
197
194
200
191
174
208
128
210
193
230
208
162
220
209
199
217
176
215
180
237
163
142
243
172
158
214
179
119
157
188
224
208
171
156
190
240
245
200
209
193
171
219
241
179
247
156
237
183
150
165
168
147
224
183
156
202
194
214
174
241
198
231
197
194
174
168
178
195
233
250
210
150
199
225
170
139
204
229
230
223
225
217
176
182
230
201
126
173
179
206
219
281
163
273
174
160
216
186
192
238
199
221
223
179
250
258
182
246
216
142
207
215
207
220
214
196
221
187
213
211
208
152
187
200
145
241
217
212
134
230
161
195
199
210
174
271
203
160
191
160
170
156
225
215
153
203
204
209
236
219
177
199
188
289
213
210
188
241
209
126
206
205
191
207
223
247
140
130
214
248
216
245
244
206
193
227
210
226
213
205
233
178
161
254
228
201
153
165
170
253
217
208
189
177
171
165
210
295
175
225
223
222
229
223
193
256
190
202
190
267
190
273
199
260
197
144
256
252
167
215
161
239
165
186
128
213
198
211
163
258
181
219
165
214
223
125
191
246
209
188
221
247
258
218
188
180
194
197
173
213
217
182
189
226
183
282
267
183
153
167
212
198
226
130
249
234
77
264
172
221
204
247
200
200
241
225
220
223
188
181
210
238
224
175
143
263
186
219
192
249
238
210
160
209
201
141
214
201
215
197
233
206
185
239
161
116
131
219
212
208
245
205
206
216
175
167
188
184
203
209
211
200
212
214
136
216
197
215
221
179
231
214
194
175
226
231
228
187
180
220
228
241
205
235
208
190
214
223
207
162
284
158
177
191
174
227
187
212
184
183
213
208
214
211
242
195
173
209
204
205
176
149
125
253
216
220
226
170
186
248
174
168
210
242
162
213
177
233
186
220
239
226
183
171
245
224
149
199
155
227
224
226
239
217
210
161
203
204
191
181
190
192
141
172
228
276
238
231
222
221
274
228
253
210
238
158
162
221
185
180
187
210
239
206
162
221
175
205
249
157
202
169
192
157
222
215
303
200
246
225
246
184
259
215
167
176
132
209
188
259
216
239
198
204
196
178
196
215
191
207
225
265
237
243
140
223
188
248
257
207
132
145
243
206
202
173
178
232
251
241
101
225
191
190
223
157
232
168
195
187
182
203
213
207
201
247
210
172
191
185
170
147
181
148
179
140
209
228
245
135
189
135
174
227
213
185
162
184
207
250
174
212
180
211
201
184
241
227
190
196
169
207
268
164
194
220
205
210
239
202
195
212
200
230
227
253
245
264
231
220
217
182
233
274
178
184
180
220
197
171
219
233
260
177
198
264
212
214
226
183
185
166
213
250
129
173
151
185
169
181
213
165
218
164
185
170
232
198
201
188
227
147
199
226
216
199
200
249
270
199
127
175
132
140
178
184
190
200
201
178
207
208
153
212
181
170
210
214
263
148
251
162
246
129
264
189
235
182
211
245
254
269
211
151
194
223
222
196
191
181
228
108
202
245
203
161
124
164
187
250
214
194
199
179
153
200
225
212
203
236
201
178
200
167
225
207
145
230
180
205
236
205
182
214
171
166
204
105
181
223
231
193
210
184
195
209
210
194
171
240
210
236
156
170
263
166
180
235
185
233
177
186
212
191
232
228
205
189
176
227
200
255
232
223
198
207
233
200
253
127
174
248
268
188
244
202
259
257
188
198
170
221
146
140
182
210
192
196
204
176
247
191
173
211
216
215
220
229
172
219
226
203
191
206
221
236
236
213
200
149
164
189
266
227
220
187
259
251
117
241
225
173
224
234
164
238
216
110
161
175
167
185
198
164
222
163
153
161
240
109
223
178
172
176
192
228
176
210
158
291
138
210
189
169
262
177
175
176
219
216
199
209
202
196
250
176
216
244
148
165
206
144
238
189
187
184
203
231
231
244
199
200
269
216
248
165
276
195
218
254
125
230
202
157
194
257
191
207
185
229
207
202
173
256
180
221
191
214
212
182
163
225
180
222
197
185
107
174
157
230
192
215
145
173
134
215
204
241
174
184
183
176
263
226
197
206
203
174
153
169
180
160
224
194
214
214
191
211
271
218
223
200
231
202
215
142
190
229
175
192
171
209
223
207
122
200
253
292
250
238
167
213
190
143
203
215
193
195
204
172
178
188
163
226
166
194
209
234
198
180
192
213
150
175
219
198
222
168
205
218
161
146
221
177
167
228
233
178
193
149
217
185
93
140
143
236
208
214
207
223
187
176
206
165
273
258
121
149
133
209
175
227
200
178
180
180
264
220
179
207
191
199
168
251
163
194
207
187
183
194
178
210
182
219
163
187
126
206
226
192
201
213
209
209
156
188
205
141
161
231
159
180
136
151
222
272
142
253
196
173
211
226
163
185
199
223
223
229
156
164
154
180
143
189
244
246
169
178
187
204
152
210
174
230
191
165
192
208
257
255
196
228
196
220
217
191
207
209
285
192
188
153
209
187
189
186
150
233
239
189
197
122
158
197
184
183
146
191
229
213
246
242
222
193
173
163
133
218
131
174
221
215
252
218
251
176
162
233
196
203
179
149
214
209
212
167
196
189
208
233
194
141
264
201
162
258
291
159
242
218
249
170
225
199
251
199
157
201
178
169
249
261
199
176
182
204
152
183
200
157
188
207
214
145
186
177
180
223
165
142
194
139
110
208
217
200
203
179
196
253
179
279
186
227
225
204
238
179
277
226
218
178
159
181
226
195
212
160
175
205
216
226
171
201
178
247
214
188
180
161
231
197
185
209
202
205
197
266
170
278
218
163
189
238
147
244
254
225
206
176
185
169
185
213
223
257
186
254
143
125
199
170
169
151
177
211
168
123
187
208
248
227
257
196
180
187
170
179
197
224
215
284
207
236
206
179
227
216
209
232
210
161
198
224
236
172
199
96
203
159
191
206
132
230
270
155
165
210
241
210
182
183
168
181
219
257
249
228
194
224
157
190
197
182
186
166
242
141
211
242
186
230
200
254
172
183
189
234
247
165
262
169
271
199
193
220
192
227
247
209
270
192
225
230
176
260
149
144
226
219
205
202
178
183
189
182
144
169
198
231
168
264
195
199
261
221
218
156
221
140
198
208
156
198
186
218
200
207
208
224
131
235
260
209
174
236
216
279
231
151
215
221
216
243
140
139
225
179
173
209
244
182
230
205
148
210
198
232
217
248
262
208
239
209
225
232
205
192
142
239
237
150
152
178
199
236
167
158
225
167
181
228
254
171
223
194
228
211
230
211
187
181
199
201
196
213
227
234
240
174
211
161
254
254
203
183
186
223
244
206
210
192
207
254
228
225
231
266
211
242
265
151
251
244
185
212
267
159
249
159
173
245
156
205
188
190
217
176
188
169
250
237
127
216
210
215
186
199
216
203
191
209
211
179
249
223
110
161
205
160
207
178
259
217
187
163
198
150
177
231
230
218
248
210
141
199
216
180
221
226
194
243
236
198
267
206
227
235
214
230
251
161
204
218
194
299
210
125
237
202
222
188
214
189
198
172
291
156
200
192
192
184
161
196
111
194
190
201
173
187
240
229
195
192
195
208
165
200
214
258
180
176
211
213
211
222
195
165
226
166
204
150
205
181
172
208
201
202
182
212
291
199
195
223
253
207
144
175
188
180
175
269
230
161
184
206
187
171
167
124
146
176
209
214
214
200
148
198
214
129
158
176
141
254
138
186
152
193
220
227
194
172
174
174
227
179
204
223
178
201
129
208
247
147
142
161
171
138
196
211
211
166
216
208
179
238
218
266
187
205
159
194
222
191
178
219
166
214
249
225
229
150
162
248
213
176
211
181
204
180
161
199
148
208
182
148
182
234
193
218
205
137
255
169
165
171
239
137
203
210
237
110
235
215
172
207
221
230
277
165
191
214
154
164
155
210
265
226
164
149
225
209
210
199
188
196
222
229
145
172
202
155
190
187
183
192
235
151
197
232
241
123
269
229
211
202
160
187
194
267
251
227
197
190
244
171
179
225
198
233
177
169
190
195
221
230
113
215
202
237
154
201
220
139
241
167
226
194
151
246
231
254
249
248
205
195
199
214
174
210
191
164
185
202
213
193
177
247
184
146
214
225
245
139
198
201
221
246
189
216
192
144
199
173
162
221
203
185
151
179
233
184
251
196
212
153
185
201
175
206
227
197
193
231
247
201
180
158
143
165
238
232
152
199
154
173
160
217
211
256
213
225
198
240
193
202
208
243
161
152
221
147
203
168
211
192
241
182
174
213
235
264
222
178
169
210
149
212
159
181
286
235
234
204
205
154
221
210
250
216
216
196
174
240
221
176
190
251
213
216
261
216
199
206
140
152
138
189
195
178
250
198
187
228
238
164
134
185
154
165
258
218
164
242
186
198
189
210
198
232
204
187
183
203
120
181
229
219
177
184
182
212
262
199
175
144
235
216
128
156
236
223
219
200
166
193
229
205
206
196
211
189
188
264
175
175
170
214
198
187
224
174
202
256
260
236
166
178
206
265
197
240
210
161
160
220
191
157
129
181
212
171
141
187
161
141
174
231
194
241
198
264
200
127
243
169
206
225
181
204
251
228
217
190
174
212
137
240
166
241
239
142
219
193
208
217
258
205
210
162
162
134
260
114
222
236
159
148
201
202
213
180
202
201
187
190
178
243
235
250
205
163
196
172
178
224
206
143
211
171
209
246
193
175
261
142
191
239
246
192
205
210
215
181
199
203
218
190
205
194
243
190
259
214
158
190
140
147
218
221
226
232
232
165
173
144
234
167
188
202
219
208
182
193
178
219
248
219
230
219
164
248
116
220
257
178
182
226
209
188
137
157
213
247
164
151
175
190
206
186
207
215
247
196
198
232
181
224
187
204
128
166
175
156
183
206
143
157
239
215
203
253
118
242
174
192
186
144
251
214
200
158
230
180
159
149
220
222
177
212
223
232
205
222
201
227
208
164
179
238
275
253
203
191
146
188
225
204
231
216
132
218
211
205
201
217
204
183
159
186
220
119
246
218
187
211
227
170
214
259
201
152
186
197
218
215
285
193
205
154
251
234
186
164
220
184
168
238
246
226
210
168
161
228
202
167
221
203
175
205
197
196
188
239
260
199
194
164
166
223
190
194
164
261
127
202
182
223
223
204
242
181
208
229
236
201
138
222
215
228
171
177
182
204
180
172
216
186
217
202
174
209
230
205
181
215
206
176
179
237
220
241
162
257
204
184
214
201
240
201
204
208
90
222
200
230
179
264
172
232
132
207
193
184
241
173
220
215
229
234
180
182
193
201
193
160
193
175
169
223
117
100
238
207
162
209
196
202
181
221
188
189
238
163
235
195
193
216
170
199
208
207
219
172
233
215
222
214
212
134
175
161
249
202
213
166
178
246
168
222
177
154
124
154
188
200
216
212
218
144
140
173
251
219
215
186
212
198
219
224
192
146
234
183
154
197
216
182
241
227
205
217
215
232
202
225
209
182
229
177
208
234
154
169
205
194
247
120
207
211
250
183
217
203
207
169
196
207
224
209
208
180
247
201
205
191
237
231
174
157
255
247
172
222
220
116
178
187
256
226
152
126
181
246
247
195
185
145
229
203
161
230
184
188
162
201
170
158
184
144
168
219
219
204
184
210
163
170
118
198
193
180
243
202
190
171
224
229
203
187
226
189
226
219
161
208
231
182
182
173
247
202
183
254
184
241
162
137
137
213
196
186
212
162
178
162
175
190
236
202
192
174
176
229
202
142
194
156
152
202
223
197
226
165
277
238
248
214
178
203
208
191
182
187
208
156
247
203
136
153
192
206
123
154
135
190
225
225
199
219
250
163
206
193
186
225
124
175
224
205
144
243
202
220
257
160
133
223
220
206
203
259
267
210
168
195
221
142
166
194
142
200
197
184
155
245
183
194
190
170
183
159
167
160
208
202
173
133
156
202
170
157
134
250
201
228
218
236
208
235
212
201
158
228
162
248
234
206
208
166
168
230
277
188
148
216
284
265
247
170
166
201
241
167
232
198
195
188
168
196
194
225
167
242
179
207
150
178
234
215
257
221
241
211
181
239
214
202
230
266
195
141
189
213
188
208
130
176
175
236
184
219
181
298
217
245
200
211
218
168
231
225
196
147
175
185
207
212
195
262
214
150
177
162
190
201
197
172
200
170
189
167
230
214
167
180
195
118
153
198
227
202
197
212
169
186
212
227
141
220
252
184
197
218
210
232
219
190
160
225
224
230
217
214
234
154
203
233
170
229
218
182
207
121
246
204
231
216
123
212
210
194
239
180
255
180
210
208
165
188
190
175
190
209
205
227
188
189
159
182
233
209
165
222
239
175
234
223
242
221
192
213
159
230
242
272
209
164
226
253
253
221
203
239
271
216
193
215
164
200
213
205
203
229
172
183
243
219
198
187
207
219
234
200
236
138
184
201
203
247
191
229
214
175
151
203
236
187
217
162
129
230
210
241
179
224
188
231
221
147
206
176
203
188
197
233
191
233
195
206
198
152
137
194
175
153
238
153
206
200
249
191
184
226
225
227
196
145
248
192
219
230
205
268
155
199
186
179
176
217
248
237
198
195
170
251
184
222
205
194
217
219
251
249
228
187
222
201
228
168
161
215
203
255
206
213
151
144
261
191
160
147
208
237
202
199
211
232
209
230
172
144
160
264
179
191
230
173
212
151
230
161
211
246
223
180
211
195
217
98
153
164
223
201
195
219
176
238
258
196
191
193
185
161
147
249
169
246
146
192
198
184
143
242
201
177
217
256
157
186
243
180
230
193
257
137
193
161
267
115
169
204
198
244
261
226
193
169
295
150
173
164
172
177
243
256
218
170
232
185
253
258
214
227
220
236
286
164
157
198
247
166
218
191
248
155
216
225
209
241
197
222
231
238
160
239
196
250
136
228
132
181
224
212
232
197
249
230
252
232
134
185
182
230
218
209
183
162
196
197
253
189
206
137
126
207
226
207
197
225
148
211
194
211
164
249
168
233
234
155
223
236
220
200
193
225
209
225
172
208
209
183
232
230
192
234
166
165
252
185
242
198
161
203
218
218
165
185
197
203
175
192
218
211
159
225
226
164
206
207
188
205
155
234
189
203
251
225
180
236
147
152
247
140
210
189
235
241
236
210
148
206
162
127
251
202
198
205
273
208
153
201
252
208
147
124
164
174
262
203
135
181
194
202
207
241
235
174
154
197
200
244
277
243
265
175
220
185
228
234
178
226
218
206
196
176
130
178
176
226
187
211
196
210
253
151
239
243
160
218
219
206
200
210
111
255
168
235
196
195
194
184
187
190
212
188
142
234
182
156
217
168
261
148
186
205
187
213
265
209
185
167
194
93
202
166
178
208
203
207
198
185
207
221
274
202
226
232
241
198
200
140
185
199
184
179
166
188
205
227
142
218
249
154
246
186
229
148
187
212
179
234
164
243
189
221
225
172
221
202
226
185
225
216
204
151
132
226
218
299
232
205
188
201
236
130
185
176
213
179
210
143
171
226
144
169
191
175
183
236
211
182
156
226
220
172
193
234
222
199
161
191
209
195
201
217
146
209
209
190
206
173
224
253
162
237
179
247
175
231
190
176
186
227
208
179
192
209
209
277
194
269
230
170
198
210
238
113
223
135
182
206
176
231
191
213
199
181
185
208
222
240
172
231
181
174
229
254
158
215
233
195
157
195
182
198
201
262
148
215
214
232
242
125
162
138
237
206
186
289
191
232
167
212
217
147
177
198
218
236
236
156
231
189
163
146
216
186
202
204
151
218
188
259
186
211
187
190
239
231
128
206
220
182
261
181
187
181
225
210
198
202
217
245
213
221
213
123
207
219
158
247
185
158
149
155
211
151
225
180
225
181
198
216
252
222
198
205
163
146
131
203
208
168
233
140
193
194
241
210
221
180
269
222
159
217
245
208
206
199
221
191
171
228
213
154
192
140
223
268
248
172
222
221
219
135
263
141
231
217
165
233
191
217
210
169
193
172
222
231
157
209
233
212
185
155
218
252
108
188
151
225
169
255
190
199
190
236
194
215
185
169
187
213
139
232
233
160
114
235
204
228
166
202
212
193
202
198
217
141
242
255
215
160
268
135
135
219
210
154
230
204
179
248
240
215
187
265
236
252
211
222
210
128
250
198
205
179
159
189
170
204
162
205
233
208
235
201
204
175
196
153
182
191
181
240
190
148
179
188
210
212
144
134
160
194
250
183
162
188
235
139
147
205
152
194
192
235
224
224
218
229
255
162
223
182
196
235
203
189
200
186
237
205
188
238
183
240
226
230
169
229
240
159
185
198
198
144
157
194
241
219
219
216
202
158
187
164
216
203
192
177
166
171
172
150
199
220
168
194
190
227
201
215
174
140
189
202
254
209
205
173
221
186
178
248
213
252
206
274
214
229
236
179
235
199
192
201
225
155
210
179
182
236
193
214
211
242
201
168
192
150
169
184
218
222
225
165
216
184
174
231
149
242
202
234
185
238
153
215
185
190
189
173
231
203
196
190
251
237
226
193
282
215
233
245
229
213
214
179
259
235
190
221
179
171
225
243
184
181
229
186
224
231
218
228
182
205
198
253
168
183
176
195
191
155
220
201
191
227
189
165
205
226
206
128
229
199
219
213
199
255
252
254
158
194
177
155
230
205
207
184
115
198
202
216
191
231
216
210
196
139
209
214
201
142
174
203
186
231
208
233
253
170
186
150
221
183
180
186
128
166
229
207
236
248
128
176
217
174
199
167
174
181
172
199
150
208
241
175
232
203
219
230
264
226
195
196
217
180
201
213
161
171
242
173
204
221
193
167
222
242
182
183
204
195
175
159
146
166
193
229
201
161
93
168
282
188
256
143
163
193
227
157
216
184
230
219
180
181
184
268
187
206
225
218
210
233
209
198
273
186
224
198
220
218
173
170
184
165
233
233
177
222
213
174
132
232
116
280
205
256
182
185
146
190
183
180
141
212
179
168
178
235
207
218
186
273
175
136
226
198
274
173
197
230
190
144
228
228
145
242
200
222
177
141
240
246
215
182
200
204
210
240
204
139
182
146
155
232
216
206
206
132
152
151
238
179
276
176
182
224
198
173
211
217
154
224
254
222
207
225
197
198
175
206
185
146
169
219
126
238
259
173
155
210
173
216
186
210
218
211
203
233
194
173
262
202
238
289
203
234
203
224
209
232
192
229
221
265
218
236
192
202
168
262
147
230
238
230
162
227
236
183
214
217
228
219
230
170
217
272
223
224
258
168
185
204
245
143
240
216
272
176
198
165
186
180
173
163
193
195
206
222
191
192
180
148
193
238
197
134
234
201
242
222
204
250
192
167
219
116
207
209
201
184
187
162
203
150
158
262
187
239
264
201
188
205
275
200
173
147
176
191
214
166
166
287
244
150
210
210
220
229
195
141
200
214
232
208
184
208
171
191
163
160
213
182
174
183
206
154
157
185
144
198
224
204
219
185
196
201
287
151
167
160
206
216
178
164
178
178
204
235
245
202
176
235
203
200
274
194
193
250
170
154
237
193
217
202
237
181
235
204
208
195
176
222
207
162
158
176
131
229
163
188
185
181
176
180
138
201
146
263
205
257
221
224
169
240
224
248
204
231
205
206
262
220
248
141
229
165
179
157
167
251
187
212
183
144
263
126
179
185
190
150
236
233
134
222
237
133
199
148
115
140
154
168
183
251
162
229
244
222
169
170
237
200
177
192
149
243
212
176
227
217
244
217
192
192
209
179
198
197
189
148
198
178
213
177
222
177
158
195
157
251
261
188
207
204
203
159
213
172
159
230
214
189
191
206
211
230
203
190
247
159
167
249
199
172
231
144
223
181
183
170
158
151
213
188
218
203
176
132
194
166
204
261
210
146
210
216
107
275
213
202
221
185
168
231
232
216
220
163
228
226
230
169
156
222
209
175
199
227
151
190
172
173
235
157
206
182
219
175
159
167
247
245
172
177
195
162
205
222
198
217
199
232
123
230
221
220
169
217
206
256
229
203
179
239
208
221
159
250
175
133
182
149
220
185
181
239
206
169
212
115
211
222
214
182
156
211
197
182
212
207
196
247
228
213
191
188
206
233
199
206
252
221
188
200
193
133
234
214
165
195
189
207
186
179
275
213
208
140
171
140
132
137
189
207
226
206
155
182
253
189
205
219
170
182
222
212
213
205
146
216
214
232
217
134
226
181
215
226
158
221
175
183
189
264
222
163
207
132
170
243
235
202
225
194
223
212
242
236
199
198
204
260
215
195
187
235
238
250
205
227
170
211
222
207
173
163
194
197
125
113
177
222
115
261
235
251
224
133
141
194
159
227
182
209
131
239
170
233
179
144
198
221
211
255
234
166
224
189
150
152
202
140
189
199
159
218
213
201
174
165
214
297
174
181
214
186
220
217
142
179
173
187
237
242
186
181
224
228
188
223
202
217
200
202
161
169
165
183
143
220
235
178
229
196
169
131
212
163
157
153
198
272
169
220
210
178
216
244
212
138
175
214
237
147
197
258
160
183
201
164
169
181
197
191
153
176
213
150
159
200
213
285
156
227
217
209
236
139
188
256
211
206
189
216
198
226
235
113
204
228
146
186
245
148
157
236
224
194
204
208
205
179
215
179
216
208
181
230
234
172
201
213
260
139
233
181
234
193
165
148
225
216
210
245
233
196
152
211
196
210
199
225
251
215
219
138
212
204
178
196
213
214
192
211
173
240
172
193
177
231
248
241
181
242
196
240
146
226
191
186
160
225
188
215
157
178
227
149
162
205
261
210
190
218
181
239
180
169
246
177
200
193
140
159
201
179
194
160
246
188
195
187
211
196
243
236
235
227
147
168
183
222
230
222
214
151
150
173
196
230
224
167
162
250
198
176
233
232
228
215
193
174
158
202
176
239
219
213
210
229
164
185
245
180
147
256
197
238
184
218
212
211
195
224
167
197
134
172
195
159
187
208
153
205
224
222
150
243
212
177
206
199
215
201
174
147
258
224
247
142
133
252
240
177
188
253
212
231
211
175
196
164
241
101
169
205
238
156
154
154
225
175
183
191
195
164
218
133
258
212
194
192
187
197
178
160
188
263
189
181
168
161
157
261
231
196
191
237
248
201
207
192
210
231
153
201
191
203
179
182
201
231
161
215
199
159
180
202
241
165
200
281
180
200
229
225
213
147
213
194
202
229
179
227
243
178
226
168
228
190
228
224
252
110
218
188
257
193
177
242
222
153
219
179
143
213
243
139
222
215
193
154
286
244
220
229
238
178
163
229
130
153
215
202
253
167
257
272
192
193
167
218
186
220
199
212
139
154
217
219
179
231
204
179
251
233
215
235
201
195
132
223
224
141
197
247
161
217
220
203
197
104
171
158
168
184
187
183
190
135
219
195
201
144
208
246
201
160
246
171
202
185
174
195
260
183
177
216
188
200
169
202
264
221
246
171
201
222
188
206
194
210
182
247
150
166
225
226
203
247
136
121
198
144
156
205
258
247
183
215
162
146
223
188
227
203
238
176
188
169
141
222
178
204
221
253
195
186
165
226
123
277
212
206
241
196
192
128
226
194
182
216
206
159
185
154
214
218
182
232
193
175
96
152
225
241
173
228
185
223
206
190
186
130
255
193
194
173
206
248
157
220
189
160
240
163
189
181
214
164
212
168
224
161
214
205
184
208
241
223
154
214
162
221
202
187
171
196
157
189
248
228
285
173
236
151
198
187
201
239
174
211
203
193
173
163
117
235
149
212
164
249
230
160
144
183
262
192
229
194
171
207
186
208
234
219
200
186
207
264
180
233
153
235
211
176
209
226
204
194
242
196
206
220
201
206
134
193
222
160
217
207
182
174
171
222
222
201
186
203
231
172
192
160
244
194
184
281
192
196
174
223
184
195
168
169
175
181
207
222
147
184
121
199
228
186
209
204
268
168
230
194
208
170
187
250
202
223
189
210
145
196
174
250
167
228
232
197
255
222
207
201
241
154
205
166
217
218
193
184
219
183
189
180
206
231
130
166
191
158
198
183
245
177
226
212
180
188
192
185
162
201
171
226
192
216
196
255
195
171
117
208
234
250
292
151
204
223
169
126
203
281
208
242
245
199
261
181
154
263
226
284
261
219
213
142
131
198
230
200
228
260
178
226
220
192
194
254
215
202
210
249
204
170
213
253
276
197
149
265
167
234
168
218
170
195
142
261
226
170
254
235
213
170
209
182
153
173
242
196
166
183
155
227
157
179
221
223
207
209
207
110
227
182
220
216
238
211
220
208
237
195
263
262
145
213
198
201
216
238
218
167
256
167
237
228
170
195
213
211
245
258
273
181
234
184
242
239
170
179
199
250
209
191
175
241
189
213
249
196
181
230
239
192
168
176
168
236
185
194
249
270
196
225
146
214
243
192
183
218
211
221
272
219
163
227
134
195
251
201
197
153
219
203
216
199
196
195
155
179
181
218
230
213
202
201
150
169
213
196
239
144
166
220
195
203
206
212
181
212
138
224
191
125
216
194
258
163
163
197
198
143
194
175
186
196
211
209
238
249
202
201
239
226
148
188
210
189
209
140
186
157
201
143
187
178
236
236
230
202
178
201
242
269
222
210
149
208
214
165
233
206
200
249
203
183
233
240
158
186
188
157
188
266
168
223
181
236
183
205
218
253
246
174
207
177
175
189
203
194
169
241
241
169
187
219
199
204
207
111
236
214
171
211
213
226
201
163
225
195
186
185
193
106
169
190
238
155
216
219
238
257
176
173
157
173
169
148
198
221
231
204
162
191
224
196
210
195
165
184
186
201
197
155
197
211
240
218
170
196
188
215
194
163
210
242
152
206
194
231
154
139
199
234
185
235
274
223
222
198
157
153
153
197
178
244
170
269
202
224
182
186
193
240
207
196
182
175
222
194
195
248
162
238
195
228
216
188
201
234
211
211
129
216
240
195
254
226
138
202
209
182
208
244
191
191
201
222
214
187
228
233
236
186
174
212
291
187
175
201
166
168
214
211
202
178
150
188
166
215
181
197
194
183
206
157
214
190
213
213
174
240
225
233
229
180
263
199
158
205
225
242
197
226
235
85
303
185
187
192
255
183
267
212
190
205
229
204
189
254
228
196
244
261
168
158
198
242
185
214
205
172
217
136
233
161
167
196
216
193
201
213
246
241
223
180
187
222
175
181
217
228
217
189
177
228
123
180
234
119
229
131
195
244
146
207
191
209
202
194
234
213
163
174
207
201
207
161
202
191
244
224
255
151
217
220
188
210
160
176
191
231
219
212
206
162
193
240
178
146
198
200
218
206
194
196
230
131
212
230
221
204
222
200
203
192
201
204
172
209
200
145
203
160
268
175
203
191
204
217
206
200
159
204
170
247
191
236
172
203
243
245
221
186
207
207
231
160
174
232
214
204
206
198
163
227
177
185
174
153
164
185
200
179
146
195
251
243
237
222
228
213
211
226
247
183
258
143
177
231
224
241
186
167
149
210
169
173
180
238
252
277
195
181
176
222
186
166
202
142
142
141
221
192
259
244
235
247
175
199
222
216
212
151
227
214
201
160
109
265
135
169
209
233
225
227
224
135
223
220
169
203
271
197
223
233
205
150
225
178
229
241
194
197
212
277
210
241
177
123
288
210
204
220
207
179
176
197
157
243
209
228
204
100
184
169
197
243
226
179
195
213
275
281
237
200
176
241
139
248
161
228
195
150
205
181
173
188
195
202
218
201
205
172
232
158
208
148
210
197
210
195
242
232
157
239
229
240
203
216
141
150
171
240
159
232
257
242
196
183
179
228
181
193
240
168
191
191
206
191
164
174
200
238
199
220
125
141
152
164
169
206
207
194
216
193
215
165
161
209
193
186
224
155
265
199
247
230
207
181
198
201
195
247
178
188
251
197
220
213
177
191
209
231
195
234
241
281
225
129
182
180
216
180
195
270
205
143
215
168
182
176
152
148
196
242
141
152
146
190
211
119
217
218
220
141
233
217
180
179
148
220
249
193
155
220
132
203
201
157
165
222
172
211
217
157
190
238
212
173
219
126
180
138
194
263
244
193
241
174
235
195
216
254
187
203
227
194
129
147
202
245
184
179
177
190
206
154
216
139
206
229
255
164
234
233
203
174
241
209
185
187
227
207
199
178
246
245
265
242
151
172
257
178
224
234
221
205
197
207
142
191
242
221
207
241
201
198
212
205
162
232
213
175
177
188
194
226
199
185
177
270
179
175
226
199
155
166
238
164
195
174
187
167
189
220
193
198
197
214
149
172
202
148
143
142
191
227
211
207
230
185
191
222
216
183
168
166
203
227
224
146
237
136
189
252
147
191
219
201
165
223
248
241
269
204
184
202
208
166
255
203
203
206
179
202
193
206
190
183
228
215
173
163
175
191
236
230
202
277
215
229
178
179
198
212
179
177
125
204
292
248
187
197
195
217
247
197
173
179
143
181
144
195
197
203
214
183
161
195
254
190
185
266
139
179
244
213
223
170
175
280
201
189
224
165
201
228
214
165
208
177
180
157
111
172
163
159
187
123
241
140
244
184
190
189
205
148
256
215
182
222
228
232
225
213
169
176
198
139
208
218
185
267
158
176
219
207
210
202
191
175
206
142
222
175
262
189
216
169
200
180
232
190
207
160
254
173
213
236
160
206
212
251
218
195
231
206
248
178
246
139
216
218
184
117
199
191
227
171
195
138
178
183
244
159
196
213
226
234
266
185
202
237
186
205
215
225
71
179
194
233
226
224
244
216
206
213
161
208
201
215
189
232
192
217
181
227
211
193
197
164
235
190
220
203
204
209
233
256
155
138
161
222
174
190
123
203
168
210
189
226
206
192
208
213
221
183
175
218
167
251
155
214
208
232
227
144
232
202
262
116
187
205
217
241
213
180
160
191
154
152
191
224
189
224
175
200
169
185
254
189
219
179
189
212
224
225
189
252
192
177
187
180
195
184
239
160
237
204
171
176
189
207
217
202
156
218
216
209
210
141
243
183
227
198
194
250
239
211
198
215
138
231
196
223
190
176
221
166
176
115
263
215
225
220
210
226
247
179
168
241
217
243
255
220
164
181
155
210
210
159
132
206
199
204
219
215
265
259
235
189
217
204
223
209
215
220
213
244
200
268
233
251
234
176
211
232
196
190
140
183
223
232
177
170
252
223
197
225
269
152
187
214
158
180
198
206
183
208
200
193
151
223
227
139
238
222
240
190
251
214
188
172
177
217
172
216
252
178
201
172
211
195
188
169
148
249
165
201
200
244
212
265
241
255
205
239
236
210
241
158
151
231
240
270
246
207
238
141
209
204
178
205
168
139
194
206
176
232
163
206
216
234
203
190
202
185
215
172
172
257
203
195
202
206
167
197
140
232
213
159
146
222
208
230
133
162
191
167
211
254
140
200
189
220
209
145
124
241
253
184
223
184
229
232
167
184
165
252
193
223
187
181
179
248
189
185
201
233
189
225
202
211
119
212
217
233
165
241
258
236
164
164
173
208
207
161
220
223
220
189
232
172
155
210
214
189
229
214
232
133
201
165
179
211
124
242
185
168
183
269
228
245
204
171
225
206
201
244
247
262
201
185
187
225
246
197
169
226
213
152
228
185
238
194
218
184
226
147
197
244
183
206
190
191
265
189
163
174
159
247
214
245
225
261
130
228
192
200
209
187
228
112
138
176
186
169
161
168
214
184
219
150
200
199
168
141
179
219
238
209
167
243
194
141
127
182
186
195
251
187
126
198
171
192
217
270
232
223
157
115
163
232
208
222
257
194
207
217
188
153
183
182
130
204
151
236
205
175
151
181
193
185
178
226
242
198
152
261
248
184
203
170
191
184
221
219
159
202
213
208
150
209
230
188
218
154
177
253
206
268
211
226
164
153
183
265
199
221
165
236
144
191
254
194
192
147
217
179
150
224
196
131
171
257
271
180
178
185
199
211
201
233
225
185
228
218
190
208
197
185
147
230
178
147
186
238
190
197
220
167
135
148
183
186
175
212
201
170
156
221
268
168
162
247
206
184
169
138
210
173
173
199
153
226
141
187
167
235
212
196
225
185
206
176
216
260
220
224
222
190
140
195
214
154
165
212
233
171
201
172
209
248
207
238
212
173
204
252
134
236
195
228
185
144
198
232
213
170
193
206
222
230
223
173
212
208
203
128
196
210
221
177
259
170
229
228
241
155
178
214
208
171
179
198
199
154
204
216
198
151
176
216
228
202
220
195
218
188
162
210
163
250
193
144
205
203
209
194
224
181
212
197
222
221
186
145
181
190
224
214
212
206
161
203
266
229
251
171
227
256
161
222
202
194
170
158
212
224
205
217
188
211
253
253
182
236
174
239
149
198
210
190
201
218
170
222
178
189
208
218
193
189
150
153
204
147
178
200
191
162
152
216
258
138
189
199
220
197
258
191
210
274
175
212
169
140
202
230
243
154
215
193
151
224
226
197
207
177
215
239
165
145
223
217
226
184
213
129
236
235
152
228
224
131
249
216
185
185
167
163
262
147
238
162
184
258
171
231
238
254
213
226
206
206
187
261
178
235
200
182
166
230
257
217
223
199
146
208
176
220
208
213
163
163
172
136
216
218
221
231
180
239
187
213
152
232
177
123
183
158
192
205
207
145
250
253
188
196
178
230
214
178
189
157
171
225
198
132
218
155
202
217
191
116
138
162
214
209
182
184
205
231
205
230
193
258
267
157
197
217
206
194
174
248
227
211
230
134
174
123
225
260
200
160
116
199
205
245
166
253
148
203
199
172
197
223
181
217
240
158
173
141
209
176
228
113
207
182
208
238
219
197
222
223
171
181
197
195
218
210
210
192
233
231
209
211
210
174
242
236
195
173
175
195
185
286
196
207
157
226
166
190
211
154
231
184
216
252
211
222
201
196
209
190
132
215
202
201
156
204
175
138
252
180
249
194
262
262
174
135
186
221
188
253
195
227
233
233
135
228
197
109
193
197
256
218
238
146
233
208
171
225
170
237
229
203
238
207
213
204
247
205
176
177
225
197
187
247
159
195
221
149
220
208
173
173
191
242
218
259
284
222
180
186
218
234
157
265
187
188
199
150
183
159
134
204
238
171
208
243
201
155
214
213
258
205
181
109
230
206
147
184
189
162
186
219
179
244
248
208
218
200
218
146
179
172
132
206
231
231
206
209
242
214
175
239
213
221
205
166
219
229
216
135
226
209
174
192
196
204
205
260
186
211
222
206
224
167
222
222
261
181
198
147
198
206
170
199
154
228
234
153
219
170
239
228
115
204
195
178
210
284
150
174
211
139
128
154
129
258
258
165
187
166
185
204
268
245
211
213
199
223
218
212
179
236
224
230
192
221
244
166
204
181
166
208
152
177
221
265
152
291
142
218
247
212
123
219
227
150
174
186
206
180
165
207
233
225
144
111
187
248
240
264
192
207
183
225
151
249
219
253
270
194
244
176
278
207
199
158
213
157
199
210
194
237
192
207
207
181
181
215
162
159
177
258
232
208
251
210
242
217
195
180
158
190
194
200
270
170
151
211
193
217
221
189
264
152
194
164
182
197
171
153
206
192
238
286
171
289
259
190
241
233
185
189
179
238
173
127
191
221
168
263
207
161
233
191
229
191
219
258
205
228
183
174
193
171
235
184
213
229
182
200
159
175
181
218
176
190
199
156
264
264
134
227
253
168
151
212
214
203
205
246
128
183
186
217
188
209
195
174
117
235
175
199
223
155
259
148
215
152
144
198
163
163
247
173
227
178
181
153
261
226
229
185
205
212
251
236
193
229
224
226
192
188
204
234
193
205
256
111
216
180
188
139
198
147
168
162
216
165
181
161
241
210
241
214
284
240
227
168
219
164
195
199
159
249
208
213
203
159
171
180
157
255
228
188
148
203
239
218
230
199
168
241
242
268
189
197
244
171
149
123
230
229
135
136
173
233
220
192
222
203
213
211
97
232
150
177
244
151
260
234
225
165
192
205
218
214
191
263
208
185
168
253
194
204
211
223
163
194
134
174
207
156
239
210
230
221
211
137
189
198
244
230
213
223
195
196
190
190
164
257
153
235
249
220
189
195
231
239
239
222
172
168
227
172
189
180
183
217
88
170
214
137
239
195
207
153
263
215
213
231
139
188
210
163
186
188
175
236
209
193
224
220
171
189
238
190
178
206
186
215
232
231
182
171
202
219
226
246
177
217
219
179
155
183
248
251
185
208
214
214
248
191
142
184
211
151
174
232
150
192
215
217
147
245
181
163
191
226
176
161
188
208
259
193
226
229
250
169
211
193
126
221
255
220
255
253
276
205
228
263
191
144
140
181
181
154
217
254
215
137
149
192
149
182
223
160
187
225
231
181
172
246
276
148
115
226
218
186
206
179
240
200
199
160
180
176
205
178
170
197
230
190
209
147
208
238
231
263
102
195
164
240
187
183
230
249
168
147
149
227
230
192
186
202
256
229
197
149
181
265
227
185
236
198
212
249
131
192
218
257
229
238
163
173
192
222
167
194
224
172
195
193
246
249
253
173
180
206
229
176
167
177
210
173
156
177
124
221
254
224
219
190
221
222
206
134
222
209
156
256
190
185
218
196
226
195
150
187
141
137
166
193
149
205
266
243
159
178
186
229
142
210
135
162
180
187
209
240
237
148
171
136
115
185
131
201
190
199
223
177
221
225
182
166
225
165
157
210
225
255
220
240
203
210
213
130
245
193
185
171
225
249
168
219
187
205
184
189
177
228
203
206
166
166
171
236
180
217
176
196
188
206
209
191
228
231
207
215
245
229
211
242
189
191
159
220
245
185
221
207
244
161
205
246
153
220
174
242
247
234
152
195
233
171
154
244
196
157
199
214
235
216
178
233
189
193
172
186
248
150
163
204
242
256
181
210
186
233
177
222
223
176
172
204
158
213
137
204
152
243
210
192
188
165
228
241
226
188
172
204
226
127
152
261
190
212
184
150
142
191
211
187
249
199
235
177
175
229
137
242
243
243
247
226
201
198
196
225
226
258
198
160
207
270
201
146
231
192
174
238
157
246
185
274
168
189
210
194
191
263
229
226
205
187
189
219
227
197
250
164
216
201
236
225
167
171
236
244
274
133
198
167
178
222
248
191
169
173
216
146
178
224
244
145
223
168
233
147
154
172
196
160
197
245
192
185
241
180
235
232
162
143
143
202
195
177
183
158
247
245
165
231
200
171
191
173
205
200
194
239
193
195
210
167
147
253
181
163
270
203
186
234
145
228
232
207
185
168
206
251
254
193
254
222
171
159
223
117
180
187
247
153
257
213
174
138
148
207
175
184
208
216
218
213
138
198
227
212
245
245
166
229
312
168
155
153
193
254
226
222
204
159
177
151
199
171
209
147
219
222
208
174
160
180
222
234
171
190
218
113
210
178
190
270
210
195
164
258
167
271
275
202
181
237
216
203
247
225
206
219
246
106
222
174
196
192
230
219
229
191
208
173
239
240
222
209
181
208
222
221
244
190
227
187
204
145
222
200
202
119
218
173
165
229
212
194
210
198
168
191
263
223
167
211
184
220
174
194
227
232
133
188
196
170
174
195
278
232
257
193
195
240
221
135
234
170
211
205
176
228
152
237
190
197
174
199
208
239
192
206
157
136
188
188
243
223
191
168
192
245
142
179
243
207
168
223
203
198
210
192
235
199
186
223
176
201
201
273
218
265
181
250
212
239
219
175
286
167
233
216
224
239
173
175
183
116
195
170
193
225
221
165
193
178
217
140
244
179
194
197
196
253
153
174
186
194
209
141
164
201
168
232
183
203
214
258
160
147
183
170
201
192
253
256
251
197
215
244
220
201
172
214
154
210
235
218
192
130
178
227
273
206
224
170
218
115
238
198
204
181
269
236
221
189
166
177
177
229
169
166
255
170
222
233
154
195
218
213
232
194
236
194
180
255
260
166
225
177
242
233
235
184
194
239
217
190
184
200
233
182
80
188
200
205
226
212
204
176
186
217
252
264
185
186
204
218
223
177
200
204
232
172
175
155
192
248
226
174
150
200
203
230
216
180
176
193
157
225
207
210
167
225
232
207
217
213
166
210
232
171
202
176
191
259
190
208
244
220
207
211
198
224
172
208
182
221
238
156
177
209
185
248
221
188
211
259
213
215
206
176
200
220
192
238
189
205
245
243
195
178
230
259
167
212
220
221
220
231
174
216
224
188
203
195
236
183
193
228
217
149
192
243
222
209
230
169
223
187
184
167
188
159
180
206
228
199
178
207
227
207
201
197
253
231
207
200
221
232
182
172
178
225
232
215
217
153
241
183
227
183
212
179
166
239
210
235
168
168
205
255
209
183
218
262
205
206
193
183
182
250
202
205
141
195
183
236
211
207
188
194
171
200
177
210
166
177
169
222
150
235
157
166
234
218
218
213
181
188
252
174
182
217
175
258
219
197
182
192
216
163
163
209
203
205
158
195
195
234
205
205
147
213
200
198
236
189
182
181
181
247
170
175
165
160
206
177
170
241
137
227
202
162
166
148
167
210
178
169
199
174
238
220
256
223
163
220
202
188
157
212
206
223
205
164
221
198
233
188
211
156
172
165
205
177
161
175
201
255
197
200
210
242
159
184
213
195
212
225
190
193
214
165
166
207
186
222
204
243
216
203
181
127
245
169
247
209
212
195
153
153
213
248
173
252
219
207
179
182
221
195
156
207
253
176
154
177
108
236
235
243
146
172
181
193
242
136
226
236
205
241
226
216
187
213
252
241
242
229
163
196
208
237
213
223
182
174
199
234
207
199
208
185
207
238
175
258
151
177
203
230
217
192
271
235
265
201
175
222
208
212
234
148
202
153
232
184
252
228
213
196
228
243
221
219
231
198
187
195
195
272
193
175
167
194
255
196
210
222
233
138
189
258
217
203
211
190
207
192
166
182
164
179
184
219
158
131
280
210
145
282
198
247
259
192
194
203
216
158
210
204
185
155
212
231
209
185
261
165
189
236
98
255
159
231
206
260
169
207
248
225
228
221
252
108
198
231
221
186
250
141
240
210
132
250
257
134
173
188
235
166
188
147
226
209
221
182
161
231
229
199
202
196
202
192
230
182
222
204
165
227
207
205
158
198
149
194
141
226
194
173
181
177
159
212
194
195
102
251
223
205
223
122
139
158
196
220
240
209
223
199
210
198
215
242
147
213
179
236
218
185
163
200
195
233
245
145
216
267
192
239
149
194
202
253
211
211
219
232
218
287
177
173
173
167
206
205
312
241
162
196
197
245
141
165
231
212
214
193
172
176
203
217
77
183
229
133
250
158
155
233
121
155
217
167
201
205
197
215
224
218
168
226
191
228
214
140
260
200
254
213
279
199
247
196
262
208
183
167
219
220
218
199
262
237
239
246
169
162
223
183
155
186
191
174
191
194
173
240
258
219
239
198
208
171
160
207
135
184
205
223
211
179
179
135
224
119
180
248
222
149
208
229
226
218
239
218
229
191
232
193
194
148
182
215
177
177
216
214
231
154
194
225
232
203
239
208
217
197
227
204
199
207
134
165
178
163
225
159
251
232
258
173
206
130
203
178
177
172
239
183
149
166
149
221
190
256
140
217
184
227
193
217
215
150
194
232
168
169
173
159
247
153
193
183
192
184
216
216
222
200
206
142
244
161
237
121
193
239
154
144
192
244
158
135
146
201
206
200
212
260
200
199
154
216
189
180
214
181
165
231
243
207
173
137
195
187
241
193
208
213
264
167
154
203
234
176
205
163
235
189
254
204
172
153
174
224
218
220
234
217
211
191
193
205
164
164
215
187
218
180
195
166
224
147
186
202
153
224
187
197
202
221
262
228
227
171
200
199
166
219
223
163
204
198
198
230
167
225
200
247
134
222
180
210
224
218
188
262
194
175
176
244
177
168
237
159
249
181
150
176
199
203
203
225
142
213
217
214
212
204
235
176
238
236
208
226
201
240
203
175
222
213
238
239
225
175
160
188
201
138
245
161
258
169
192
139
223
211
216
181
206
187
202
228
228
169
239
205
211
136
204
182
184
269
144
220
228
220
219
191
229
266
141
199
236
173
196
236
178
204
167
173
145
153
203
211
238
197
157
233
223
160
208
177
218
180
151
213
192
198
205
207
238
253
186
195
228
172
175
193
149
208
229
193
185
218
220
153
187
238
238
255
155
262
256
248
129
215
174
218
213
155
144
222
169
131
207
240
104
143
254
167
211
144
172
157
182
190
231
205
196
211
172
234
221
243
205
249
178
209
146
186
226
242
157
199
253
168
204
228
192
201
150
148
217
227
243
206
234
212
135
183
210
193
259
184
236
249
163
250
174
234
202
199
178
158
202
139
160
247
255
183
211
259
196
213
208
179
179
195
204
232
227
208
215
231
205
259
203
225
209
209
183
148
203
245
180
233
234
274
234
201
175
156
195
212
183
226
150
205
183
159
160
258
214
190
170
267
209
193
219
166
162
273
182
187
197
209
163
208
148
221
198
192
160
116
238
219
213
110
182
234
171
169
219
247
185
236
181
224
229
181
173
218
214
252
237
222
184
239
234
174
132
233
151
217
219
236
198
262
179
181
219
198
170
227
176
199
181
175
206
196
226
255
209
198
209
189
189
213
163
172
197
196
193
205
191
197
190
175
137
140
222
207
191
256
235
203
205
239
219
214
157
212
265
209
215
197
210
212
202
225
226
221
154
221
218
136
130
211
107
196
201
233
133
161
148
212
165
190
186
160
111
198
191
201
236
184
188
170
197
221
239
205
230
196
208
171
239
188
185
157
284
219
250
212
245
207
274
244
152
225
223
216
230
224
140
220
256
167
169
177
210
181
207
164
133
217
165
196
241
173
171
182
197
202
179
208
162
159
157
237
152
175
234
146
268
150
209
208
197
204
168
157
238
181
225
240
200
299
187
200
209
197
170
184
219
213
181
180
200
251
199
205
244
155
178
217
248
184
226
171
218
173
190
86
197
233
220
227
200
184
187
173
159
244
225
259
232
231
226
235
220
124
238
215
207
162
190
162
256
211
166
211
154
171
228
224
241
222
150
168
173
212
212
162
197
233
267
181
224
193
195
158
224
211
221
140
195
239
227
253
227
193
249
157
178
120
205
92
221
233
203
220
225
230
199
249
237
154
193
223
195
230
178
191
172
188
201
242
171
291
190
266
230
159
280
215
198
266
244
245
189
206
264
164
217
184
179
173
191
250
216
230
262
192
250
196
151
221
224
200
230
210
236
195
204
139
204
146
225
235
253
251
223
206
210
261
253
191
175
185
230
191
179
262
194
225
138
157
173
205
196
198
145
225
190
163
174
165
180
219
154
252
219
220
170
197
200
183
198
212
223
220
185
206
239
157
144
227
129
170
198
212
204
214
244
253
236
241
222
165
185
179
231
234
145
180
187
163
163
178
245
246
157
203
241
197
168
180
241
223
184
218
225
265
228
203
168
222
164
250
211
207
191
208
202
179
159
215
251
223
204
185
208
215
192
213
161
244
216
254
233
201
262
161
219
169
258
198
200
204
244
176
181
244
167
173
124
220
193
212
210
226
180
225
155
134
148
200
145
206
244
85
215
144
193
143
225
203
187
256
102
224
245
255
203
218
205
228
275
226
232
220
183
187
249
206
170
251
251
165
121
218
183
172
231
254
170
192
235
222
208
157
189
193
197
216
217
224
173
133
191
260
226
228
215
158
262
231
210
290
224
200
288
207
168
193
188
190
224
172
192
170
199
246
179
155
186
218
235
195
233
260
190
176
221
165
146
124
191
204
237
280
185
218
232
159
140
216
184
198
193
178
221
259
163
230
229
146
201
102
184
156
248
189
242
215
210
201
210
276
248
229
249
219
165
245
216
192
193
212
187
129
200
214
231
214
127
195
187
211
140
234
210
147
260
162
211
218
252
157
191
160
256
194
215
171
174
206
189
196
191
171
208
242
220
194
119
226
200
219
186
227
172
183
192
213
198
196
206
175
193
218
230
190
192
240
224
221
214
140
199
214
218
209
144
206
234
239
200
200
195
138
231
244
230
138
198
245
176
135
153
169
204
140
140
170
251
174
189
181
202
149
202
232
136
220
184
226
179
248
144
203
201
226
212
186
249
186
227
205
210
194
178
209
214
181
241
129
224
236
194
134
154
165
235
206
229
209
262
200
254
282
191
194
193
206
223
171
178
189
176
218
261
197
203
222
199
192
208
205
185
239
229
206
229
229
230
198
248
209
157
176
176
267
198
159
192
170
172
239
179
215
240
197
182
210
191
212
210
133
198
232
185
197
261
213
161
190
215
260
215
185
204
183
250
187
172
195
254
218
203
190
190
245
176
194
129
195
211
204
143
255
210
170
172
160
251
215
204
180
199
249
225
162
152
244
139
184
223
227
217
213
186
177
128
243
152
203
222
209
159
186
235
193
277
183
220
195
180
184
214
130
261
205
200
199
197
177
146
233
226
219
205
172
200
167
197
205
174
236
237
234
163
173
234
175
162
181
245
122
180
261
184
243
218
201
142
150
204
236
237
227
216
185
216
234
196
244
166
204
166
240
216
165
208
217
186
202
211
225
168
197
168
241
168
155
280
174
239
268
218
188
163
129
234
211
232
201
230
220
161
165
180
144
187
209
264
129
226
121
229
222
211
223
211
174
134
201
233
198
178
195
221
180
230
212
208
194
172
181
245
189
198
221
222
201
162
267
242
173
205
215
180
216
134
219
179
191
286
171
215
183
214
289
199
146
251
188
203
201
195
184
155
234
196
205
197
173
195
171
234
183
186
232
150
129
214
224
186
204
236
249
238
188
125
155
200
180
139
227
139
150
175
234
253
237
240
178
165
219
264
227
188
250
247
232
224
196
144
223
219
181
227
167
194
190
188
207
221
189
225
184
149
161
226
190
203
239
244
137
191
203
166
172
253
178
236
172
191
167
267
232
147
195
257
203
211
212
188
181
177
198
228
283
188
193
197
191
159
149
238
259
150
153
143
197
214
237
197
248
259
169
213
260
168
222
267
235
170
211
287
213
208
201
157
187
219
188
180
137
257
171
197
233
111
241
201
122
208
154
197
206
204
187
166
222
202
217
228
210
183
159
250
211
216
178
174
170
165
143
196
220
183
190
146
222
163
241
134
214
169
184
223
183
181
217
201
228
208
233
205
192
177
154
163
204
168
188
190
192
258
161
188
171
183
202
244
199
222
237
223
238
166
217
150
182
195
232
236
230
160
199
146
269
191
228
186
221
291
222
145
163
234
167
208
247
202
212
169
279
159
195
224
224
206
230
198
238
188
212
163
239
244
242
178
195
198
228
208
235
239
241
210
188
265
203
202
140
191
147
261
141
288
220
223
204
247
272
234
168
165
173
195
237
201
231
202
144
183
164
170
249
202
157
230
219
222
191
216
138
211
182
227
210
228
216
205
206
249
178
149
252
200
205
181
99
207
139
217
180
182
186
226
198
176
235
209
210
161
260
221
186
184
179
138
189
140
158
178
193
186
176
215
200
220
217
216
208
199
187
215
196
181
219
154
225
203
210
237
163
160
241
285
146
215
230
222
197
244
235
185
264
241
223
172
170
215
153
205
244
129
213
185
215
141
206
211
232
171
171
234
211
171
193
209
147
213
168
177
203
195
227
194
234
189
248
194
232
153
141
186
183
210
224
170
167
251
215
202
197
232
234
157
246
234
157
264
251
189
210
232
147
227
219
149
229
229
289
219
231
222
198
225
215
227
200
207
214
168
156
119
224
226
195
194
229
197
213
224
211
201
200
163
179
163
191
202
209
230
167
254
189
242
161
125
194
167
157
240
148
142
164
215
233
225
236
202
168
248
221
220
189
246
189
174
177
189
190
212
138
233
189
174
269
197
199
193
219
174
180
138
255
266
212
154
163
155
207
185
184
259
186
178
252
197
264
271
211
137
218
209
260
140
195
170
233
238
258
153
243
221
234
191
254
172
192
222
178
214
210
264
217
176
169
208
249
160
216
183
204
179
242
241
197
200
240
200
202
164
203
205
207
194
151
174
172
261
220
227
192
207
138
248
201
239
221
199
253
198
204
211
231
195
166
215
166
183
206
243
181
241
190
239
220
156
168
211
174
232
207
251
227
134
183
137
202
152
166
201
170
194
201
208
184
118
244
151
174
200
154
237
240
254
236
213
160
149
220
208
243
148
216
193
202
194
210
155
176
189
210
160
212
182
259
182
172
139
204
241
192
232
211
248
160
156
195
218
172
163
222
243
215
163
223
217
163
165
171
248
194
207
200
223
155
212
266
219
206
188
189
197
219
227
197
157
288
243
203
170
177
182
186
218
233
194
217
173
230
197
194
232
174
187
133
185
169
168
223
203
174
156
94
192
187
234
197
180
199
178
256
167
211
258
215
145
297
175
188
138
189
234
203
267
209
165
201
228
166
189
207
185
215
184
262
227
192
196
153
193
242
143
180
228
239
216
206
201
190
213
161
230
234
195
205
172
214
215
245
225
232
228
180
265
194
172
268
194
155
209
245
232
204
208
197
217
186
216
233
133
230
159
220
238
138
188
127
201
199
188
218
221
166
212
277
230
128
164
200
155
221
226
199
176
203
192
144
192
230
210
125
215
155
225
152
177
217
230
232
241
209
191
236
180
205
224
239
196
232
228
183
218
241
217
149
178
227
199
201
230
261
210
240
177
242
225
246
191
183
207
178
252
157
128
217
196
236
189
159
155
176
252
215
187
225
173
170
235
188
220
170
178
181
175
214
144
204
242
235
247
197
117
216
219
210
196
200
195
244
209
233
165
200
144
227
176
210
224
207
206
127
173
250
221
135
202
220
160
172
187
173
127
143
223
162
196
197
222
185
178
156
201
216
280
194
231
174
229
242
211
168
176
234
216
220
167
240
189
274
250
171
275
201
238
175
235
281
162
210
184
213
218
167
190
244
190
217
242
205
177
196
181
208
152
193
118
156
196
205
204
188
210
185
164
284
241
185
222
231
196
230
233
198
214
249
87
228
222
205
185
239
216
252
196
174
236
166
283
212
241
253
210
152
178
207
226
150
198
153
235
254
217
171
226
199
204
211
218
184
174
241
188
179
239
246
232
202
200
171
212
206
275
176
251
224
233
174
210
230
211
218
227
196
211
180
234
168
183
157
190
195
187
240
182
229
256
224
188
214
141
221
223
213
238
206
235
158
154
138
167
250
195
223
178
238
94
140
214
200
172
207
186
150
248
214
242
212
194
219
204
195
249
220
183
233
193
238
222
222
192
250
238
193
175
177
163
197
231
180
205
189
200
187
276
203
210
153
263
260
140
255
213
252
169
197
209
168
221
125
192
154
189
191
212
205
252
229
184
202
241
199
195
143
243
242
211
220
216
206
225
198
172
198
199
226
202
246
226
219
201
191
192
204
154
166
185
244
209
197
188
218
158
269
200
263
177
269
270
139
149
192
162
141
215
195
178
245
183
231
173
225
187
201
220
185
198
173
195
200
176
247
207
161
240
246
169
194
209
174
173
193
231
222
198
148
187
219
191
218
173
192
177
213
229
196
185
164
260
235
152
133
259
182
173
256
196
251
179
249
170
211
262
232
157
174
176
209
223
190
198
214
248
194
235
250
271
244
155
190
191
212
228
137
183
181
192
183
187
208
253
121
195
191
256
217
213
172
217
155
153
216
257
203
167
259
229
197
246
140
119
199
243
173
184
196
261
183
205
247
175
246
100
129
203
153
194
196
230
122
280
182
158
186
157
196
201
198
167
229
198
199
165
181
217
163
191
144
254
177
208
196
181
204
163
171
211
166
179
227
248
184
241
212
211
230
204
169
194
228
195
141
155
216
210
185
224
200
227
168
239
211
223
195
183
203
267
165
184
164
188
226
171
203
251
162
231
215
224
190
174
152
240
144
192
174
153
170
238
205
187
199
258
223
241
197
251
236
291
234
150
202
166
167
187
167
217
210
260
151
206
166
207
152
160
249
252
243
190
223
203
163
186
179
197
196
242
229
187
265
194
137
165
199
229
213
179
151
257
155
209
132
134
172
213
239
213
151
261
289
175
164
203
193
165
165
198
226
208
203
200
185
155
106
179
190
184
176
218
179
257
193
217
229
218
190
165
182
221
192
160
169
158
243
189
164
201
227
190
165
154
225
165
261
213
241
210
132
205
164
208
162
182
161
263
184
222
213
156
244
184
262
182
181
181
202
224
164
191
129
186
194
267
189
217
177
264
219
170
227
187
196
218
234
232
169
207
148
208
215
175
143
242
169
244
183
248
179
165
285
245
193
194
237
190
242
244
251
197
207
180
217
232
201
226
233
207
179
244
233
236
185
216
198
245
149
139
215
228
178
128
186
180
190
250
203
159
149
178
222
212
205
190
222
195
185
193
225
236
239
246
166
235
222
189
207
117
212
191
260
205
184
260
136
175
178
213
211
189
202
139
222
223
221
127
204
230
209
170
149
165
215
175
151
227
158
182
236
166
181
244
234
202
214
147
264
170
191
222
170
179
192
234
190
218
218
161
164
217
216
203
196
166
162
176
220
174
188
180
170
207
196
182
197
269
195
246
224
203
167
203
229
231
200
214
205
251
163
213
204
270
149
185
225
177
231
201
234
206
144
195
235
220
158
208
225
157
138
212
195
202
187
201
221
249
237
173
145
105
198
169
219
227
202
255
206
204
259
169
135
214
213
215
188
207
173
105
222
170
201
208
235
178
267
188
220
191
167
152
229
189
202
170
231
190
239
174
121
179
229
242
229
186
149
178
195
188
231
179
172
202
174
190
191
212
163
199
209
244
198
184
154
156
151
243
259
210
165
192
215
170
154
139
167
239
212
184
207
179
234
220
119
195
206
169
165
194
175
232
215
252
222
214
154
240
222
301
178
207
197
189
202
185
246
184
210
177
242
187
216
192
182
220
182
179
188
248
203
202
229
232
179
221
162
224
226
254
187
221
229
136
180
169
229
204
236
218
226
186
198
255
223
147
140
180
235
166
171
238
209
185
225
224
201
248
126
160
251
178
192
212
170
243
199
236
140
203
218
208
213
173
196
225
138
159
225
181
175
231
239
208
244
213
121
208
242
158
206
242
174
218
167
159
212
229
196
221
166
189
173
225
224
228
201
188
206
221
198
220
210
116
173
211
130
259
160
157
152
212
214
216
207
182
204
173
231
199
217
167
185
198
266
242
233
250
179
161
208
190
216
224
177
182
172
231
233
200
223
198
246
184
221
247
204
198
229
193
198
188
198
223
160
246
181
168
163
230
201
217
239
249
138
180
220
234
214
199
223
154
252
184
184
198
204
194
209
203
159
141
143
208
184
234
202
176
86
195
182
164
255
218
202
149
230
208
155
228
261
240
219
167
232
189
121
212
174
206
130
177
138
182
208
243
184
207
110
277
145
211
177
209
208
203
283
165
228
181
202
181
209
172
245
222
142
210
214
242
180
146
136
154
246
204
189
257
148
193
146
213
184
207
164
184
159
224
172
182
215
234
209
211
137
183
159
213
235
195
184
183
183
185
207
188
192
241
159
267
111
206
209
214
151
176
258
220
190
204
186
158
158
207
159
224
228
170
185
163
222
234
226
192
186
225
212
170
155
184
230
223
182
208
200
168
160
235
164
214
183
238
160
238
160
230
189
152
203
248
209
213
217
135
171
246
160
189
186
172
196
209
207
197
204
141
221
184
261
208
244
195
189
270
190
171
195
187
174
237
215
194
210
229
198
204
214
221
166
200
238
246
216
191
164
187
219
165
200
215
173
262
251
248
228
100
184
186
206
191
181
168
203
199
207
150
242
224
190
176
242
217
241
186
143
181
152
155
194
197
238
255
143
219
193
189
244
204
184
230
197
214
173
213
202
222
203
142
262
206
238
175
130
174
141
174
120
197
168
228
207
203
213
148
193
218
227
195
200
207
234
236
169
243
186
252
180
203
249
189
254
211
217
176
195
237
230
229
236
203
147
216
155
161
154
210
116
175
138
208
219
220
177
181
226
159
161
147
164
203
159
173
225
253
139
209
193
203
159
177
251
218
159
238
229
172
223
215
181
211
218
170
261
201
252
206
166
200
169
256
199
199
153
161
198
216
224
247
240
126
115
232
183
177
200
163
204
187
86
221
219
191
210
204
207
215
192
242
189
191
212
215
145
219
193
284
193
173
220
261
203
170
215
275
136
159
244
212
153
209
189
222
182
180
118
240
210
119
178
249
154
175
188
255
129
222
143
201
232
202
209
145
238
161
203
249
217
177
182
243
189
214
189
205
199
173
148
166
211
259
201
171
174
160
168
157
203
209
170
181
237
176
210
203
216
208
191
152
238
154
241
204
183
239
227
187
171
210
189
206
191
174
188
179
208
182
132
199
207
190
196
134
157
275
227
204
117
190
169
172
230
190
208
145
220
217
221
183
203
195
173
187
143
234
148
136
246
255
212
151
227
218
197
181
164
185
174
213
274
200
210
247
196
177
214
174
179
160
252
215
236
217
223
219
229
235
213
178
217
181
220
178
245
178
194
222
207
206
210
233
153
206
241
197
206
218
171
218
182
237
230
173
209
212
288
222
201
188
219
206
188
225
224
217
242
169
172
176
261
182
214
213
148
242
165
199
232
223
254
213
229
197
175
205
158
164
244
165
213
197
175
188
256
121
207
158
198
207
145
257
184
185
247
217
219
173
169
194
166
161
200
187
182
196
180
217
197
225
143
202
214
220
267
254
229
219
251
183
189
192
230
242
285
243
225
223
211
145
208
195
144
205
206
218
214
241
174
200
162
163
179
263
232
155
148
165
197
185
167
198
212
210
178
201
193
204
137
197
224
174
183
178
191
204
171
224
206
195
201
222
170
206
183
237
155
156
193
191
202
178
204
238
213
262
241
208
245
146
196
226
192
240
238
250
216
155
150
175
205
182
216
166
252
201
200
231
210
244
187
146
232
210
213
178
217
198
226
207
220
230
265
194
205
184
174
143
190
141
243
153
261
193
159
156
184
184
174
114
182
234
200
236
227
248
240
195
180
164
211
159
207
184
252
169
193
221
181
171
251
177
152
222
215
184
169
156
192
179
262
235
222
182
190
216
191
220
204
161
167
207
200
192
255
246
219
174
192
170
227
226
220
233
178
155
232
184
207
146
208
171
258
212
234
184
223
175
172
227
198
222
164
206
213
187
230
205
207
222
203
188
227
221
205
205
221
227
211
176
197
181
155
161
175
220
104
172
146
204
198
167
207
242
199
240
249
262
190
203
169
148
187
210
193
216
159
210
217
174
185
208
200
219
216
183
250
218
234
145
193
160
187
222
226
252
140
223
230
149
179
193
151
195
207
163
193
263
225
201
230
175
218
209
178
218
200
149
200
164
232
184
202
240
211
201
173
176
202
172
161
203
177
203
181
215
185
218
163
228
82
195
212
177
227
248
204
159
207
232
182
200
216
191
230
201
124
198
219
244
207
214
211
216
204
205
232
203
185
225
159
188
201
181
173
241
217
131
271
228
135
234
177
138
199
204
269
273
169
179
241
179
172
195
176
203
211
216
206
168
201
216
130
208
202
238
170
153
210
203
197
281
248
198
257
185
198
193
215
234
261
238
169
173
219
163
240
182
236
253
140
177
223
210
227
179
186
175
115
216
230
214
216
192
246
182
220
220
197
163
196
177
188
176
202
228
169
189
218
148
287
254
232
195
222
169
180
173
214
223
212
156
126
137
169
232
268
233
237
200
209
171
209
184
217
163
184
203
207
210
289
186
128
166
184
284
244
198
171
182
182
262
236
209
173
231
194
170
173
243
149
220
238
160
253
220
181
242
180
205
248
239
182
170
195
170
203
248
162
247
190
199
187
229
208
184
253
197
167
170
162
194
219
162
201
224
182
219
199
183
170
207
166
246
151
226
230
249
230
179
167
179
148
149
217
209
200
237
170
190
245
233
237
183
195
197
169
240
232
166
221
157
236
210
168
161
188
186
258
212
183
233
200
166
209
244
195
182
257
186
178
182
200
177
210
254
250
218
205
229
239
153
189
192
205
159
214
225
216
212
190
174
151
172
167
201
196
180
207
219
227
210
190
230
186
159
208
215
207
155
238
186
162
142
141
230
182
206
241
227
167
143
135
219
226
218
158
176
236
201
141
231
191
177
205
202
191
224
184
216
213
179
198
133
228
188
181
154
193
210
166
245
180
152
220
210
228
207
176
152
186
182
185
163
211
199
197
212
206
214
259
248
227
133
188
210
178
214
147
245
165
190
198
158
197
163
229
215
214
155
185
155
221
176
214
279
235
201
223
184
223
226
182
258
199
187
187
84
187
213
139
205
181
182
176
245
217
174
196
186
146
175
170
140
176
251
193
186
224
252
228
198
258
184
219
156
172
154
227
104
174
215
218
229
201
274
216
198
152
172
184
194
243
246
218
213
164
186
218
235
202
182
211
216
191
231
260
138
251
219
131
242
184
233
230
193
186
207
222
163
126
186
197
185
182
184
233
203
183
235
195
203
217
129
163
149
157
131
219
212
227
112
202
248
255
245
214
142
203
211
176
141
181
159
198
183
213
212
132
232
202
234
189
221
251
268
261
112
168
139
232
203
212
215
208
232
207
195
232
178
251
205
241
185
156
233
228
202
190
216
169
172
224
182
161
205
200
255
160
244
228
199
232
141
179
251
227
190
177
216
190
180
154
253
210
206
189
186
201
136
238
204
234
215
215
181
218
210
234
261
199
164
195
259
120
195
190
181
208
193
162
235
191
187
182
247
234
175
185
231
174
208
223
203
210
168
216
173
240
176
190
178
174
203
227
263
196
186
248
216
210
210
261
176
208
162
242
201
152
215
167
233
206
227
215
185
161
199
273
199
200
134
193
162
186
161
171
155
250
191
163
243
205
129
238
168
201
217
142
174
219
197
143
177
177
200
194
238
219
196
186
199
220
195
202
114
163
248
201
232
190
192
183
214
220
229
172
206
216
169
181
169
206
228
236
190
155
191
220
185
181
199
175
277
215
157
232
172
215
241
121
224
219
199
196
165
216
177
194
186
212
200
168
186
166
228
195
197
192
195
203
135
179
231
190
222
167
196
203
168
153
217
224
186
196
155
197
207
200
209
204
193
144
178
185
225
179
196
205
239
205
250
226
178
193
184
194
221
147
249
238
172
265
174
262
208
245
178
180
182
136
120
169
216
251
190
244
192
129
154
175
246
169
176
183
257
133
145
193
217
225
216
166
252
142
176
193
220
259
197
217
140
196
218
239
185
203
227
183
188
199
247
206
194
226
221
211
169
144
205
168
206
173
196
227
283
166
217
242
183
164
179
138
186
235
149
175
245
150
212
208
218
149
268
210
220
235
230
204
215
205
200
209
176
239
210
192
141
237
153
191
183
189
211
207
210
178
216
211
239
199
193
158
203
268
182
224
195
218
154
180
250
214
220
167
239
166
243
163
160
145
222
163
169
178
171
197
112
200
195
209
196
233
249
240
208
160
221
227
175
196
155
185
227
161
209
246
169
97
138
224
228
209
180
207
195
252
242
211
156
215
172
250
234
220
225
251
222
164
184
192
192
235
195
234
173
124
161
267
206
184
181
134
197
195
231
183
207
214
159
223
136
203
169
148
145
237
175
166
211
233
198
215
158
273
179
204
217
220
159
183
186
182
143
157
173
209
144
199
163
176
266
211
186
213
209
174
166
199
187
236
192
226
157
174
274
246
149
162
236
203
206
190
216
167
207
245
257
231
172
208
239
225
183
162
206
191
175
217
199
275
152
152
251
131
190
194
212
220
175
197
265
229
273
176
162
242
196
192
199
245
186
167
180
167
146
229
156
218
181
172
244
184
187
195
197
165
149
164
205
197
229
188
194
221
238
154
226
185
178
173
183
193
206
187
133
202
213
227
208
257
272
122
227
222
200
261
249
204
234
201
191
229
202
215
185
175
201
173
210
237
157
236
173
198
198
242
179
215
198
203
217
250
160
196
268
180
184
144
211
175
251
161
202
279
234
267
178
176
197
200
211
224
186
160
145
266
167
199
171
215
179
137
245
250
222
176
175
199
269
220
127
157
202
255
209
240
190
190
185
168
183
188
149
217
194
209
230
181
228
213
207
194
243
194
153
205
237
217
194
174
208
124
207
162
196
147
215
147
219
215
103
247
142
217
253
236
198
190
174
198
180
212
211
191
206
250
123
225
177
177
244
281
248
184
202
185
182
159
216
182
232
183
228
210
156
203
181
142
174
214
179
210
242
212
188
149
186
149
202
154
192
223
174
225
145
196
192
249
189
226
243
219
188
244
182
201
224
172
198
177
147
211
199
121
212
232
170
255
188
222
212
194
208
131
188
244
218
259
175
246
222
179
221
186
217
213
244
169
150
232
180
242
129
226
125
195
185
179
208
172
176
192
123
251
225
210
183
202
178
165
267
223
218
209
251
219
217
221
181
286
218
232
210
226
177
232
235
164
188
204
202
221
184
155
208
196
211
248
135
129
209
178
208
150
221
160
222
247
145
221
206
211
197
164
183
156
266
197
221
223
242
130
239
153
99
149
222
210
148
189
135
193
176
218
227
183
197
222
182
183
175
228
176
225
267
208
145
152
163
221
163
185
209
215
251
194
172
221
154
230
240
235
236
203
239
192
212
143
239
210
134
211
223
198
225
218
264
182
180
244
204
262
215
200
164
198
207
155
181
164
195
218
239
213
186
186
186
199
198
248
209
205
191
181
173
167
219
264
136
134
179
164
183
219
229
221
188
212
231
205
193
193
184
183
176
177
190
152
230
240
189
175
193
231
201
263
219
188
178
266
216
212
208
206
193
280
120
154
216
177
155
159
180
186
224
212
176
175
234
214
206
173
141
266
186
236
156
212
260
214
233
147
211
200
270
167
136
236
254
211
190
277
239
200
240
171
141
193
168
262
126
208
212
203
136
273
173
117
190
238
183
172
185
174
190
169
216
202
218
267
168
180
173
237
221
194
233
236
212
230
158
211
195
194
209
264
181
206
208
214
224
206
266
171
207
187
163
198
213
211
216
242
174
243
229
188
149
224
163
265
196
238
212
191
268
230
152
205
194
223
175
177
232
179
170
189
111
170
264
198
208
179
194
179
232
229
245
206
235
239
184
209
151
199
211
236
243
135
254
208
237
212
240
174
232
207
255
232
147
233
263
219
199
193
260
211
204
239
164
171
136
214
157
263
231
157
222
147
159
173
249
142
250
142
237
210
181
184
198
234
266
211
197
196
196
209
224
213
176
198
218
215
218
222
172
246
162
254
237
239
176
199
177
203
241
226
201
207
145
189
150
244
188
205
152
165
147
190
198
227
198
223
194
171
221
206
160
230
172
264
201
180
187
182
197
183
207
195
215
247
221
225
197
205
150
184
210
199
241
144
200
177
191
221
163
269
148
129
233
157
221
159
201
234
160
166
113
172
196
211
155
141
181
266
156
238
219
171
193
171
173
182
188
217
145
153
250
240
249
212
174
175
162
188
228
203
104
210
176
192
250
209
189
170
217
145
209
199
188
183
210
246
113
165
163
189
175
202
191
221
188
210
245
164
182
232
182
171
191
143
152
252
209
237
215
166
232
241
249
222
211
205
174
179
145
220
220
188
235
187
217
189
172
225
192
182
154
146
252
186
206
177
257
210
188
214
225
252
180
158
182
155
235
190
197
166
173
215
218
243
252
217
209
221
175
196
226
205
227
221
262
153
189
185
177
158
239
190
152
251
177
189
159
214
222
226
200
233
192
247
161
206
220
184
236
203
143
195
258
252
244
147
128
213
221
191
166
210
261
202
179
183
137
186
230
234
219
170
217
231
235
204
206
198
209
153
228
137
215
250
183
158
218
202
215
218
213
164
207
191
188
177
179
201
182
238
240
170
204
160
202
218
173
198
241
220
197
179
157
181
181
236
149
203
214
213
107
217
136
214
237
238
220
216
188
202
199
124
210
284
216
236
173
258
153
242
233
226
169
241
196
112
186
188
174
174
217
242
205
206
229
176
241
168
150
187
218
248
235
213
196
139
197
173
182
230
214
196
196
204
162
174
133
205
226
153
163
202
170
219
197
240
239
171
198
184
214
214
213
173
195
193
215
236
151
174
208
172
148
186
224
189
208
206
239
162
225
202
180
193
147
192
216
144
208
148
215
242
177
190
241
210
116
137
175
233
205
225
182
219
193
182
246
206
203
187
228
200
156
181
180
218
201
201
188
203
234
168
155
163
172
254
209
129
183
180
261
212
164
222
194
203
174
269
186
172
196
219
175
150
165
197
187
229
222
162
163
196
227
196
162
183
223
209
216
256
155
207
140
155
171
196
265
233
196
155
259
183
239
189
213
285
203
217
229
191
194
223
194
176
205
215
183
221
161
179
207
144
199
206
179
238
211
168
308
203
201
226
144
153
159
222
224
217
212
193
192
251
229
116
193
159
205
206
241
210
207
157
224
242
175
223
148
170
227
165
111
225
162
250
178
181
184
165
209
160
179
182
168
196
208
132
229
172
225
245
130
195
162
174
207
210
185
192
195
196
227
217
175
193
131
208
217
209
162
151
211
226
181
175
202
282
185
206
229
221
173
185
209
236
231
136
203
224
221
164
175
199
161
221
188
231
202
258
225
258
230
186
186
120
217
200
235
263
161
121
159
188
204
235
202
146
132
204
169
225
148
247
215
161
217
230
226
235
193
167
222
267
203
202
223
209
162
197
261
216
141
213
214
189
231
167
235
184
192
185
213
104
237
114
200
142
208
213
164
175
187
183
247
162
168
219
221
252
234
232
178
177
231
199
214
207
115
160
190
189
179
279
271
171
223
250
161
244
222
224
188
191
145
187
254
209
191
144
196
262
197
207
190
174
197
188
249
135
153
167
193
190
244
221
202
253
180
216
184
223
250
178
158
225
230
198
204
238
164
173
234
170
248
212
128
167
198
161
166
135
161
121
157
163
197
180
215
253
170
220
192
184
184
231
238
210
185
247
192
168
205
155
209
147
176
184
111
175
149
151
213
220
163
216
190
207
273
210
232
266
125
228
197
230
164
234
232
203
211
140
213
200
225
236
243
187
223
220
140
181
159
205
206
268
191
192
268
209
187
153
286
208
181
209
194
237
186
148
205
190
218
128
170
192
236
149
201
150
180
148
193
172
205
209
146
178
187
208
205
203
169
182
182
184
204
231
231
247
213
217
203
160
244
157
216
157
250
199
228
214
190
187
212
265
196
185
209
235
211
227
174
196
216
105
126
178
165
225
165
219
240
207
215
209
209
219
202
200
177
216
221
221
168
196
246
226
178
166
177
194
255
214
190
188
249
231
200
210
162
234
189
182
238
199
244
146
162
227
206
229
206
255
251
245
250
233
252
235
255
181
214
244
186
197
174
200
232
198
227
210
208
144
274
194
128
207
209
207
182
195
211
164
138
194
222
159
226
209
200
121
247
231
246
143
229
208
196
203
227
220
144
213
213
206
201
211
179
205
112
184
137
187
247
268
198
230
156
219
201
216
232
204
237
193
181
169
224
206
195
156
173
187
219
216
210
174
179
224
205
205
191
224
189
211
233
213
219
174
146
188
195
249
235
134
237
195
177
200
217
228
93
247
96
178
192
193
247
221
143
172
202
237
157
168
235
164
247
227
99
228
130
226
224
194
181
248
170
168
198
178
203
203
229
177
213
188
237
200
169
246
245
173
237
197
213
218
234
220
175
264
177
157
142
172
225
171
147
237
179
192
181
190
240
157
248
213
181
194
247
216
123
233
219
241
222
131
158
229
226
246
234
170
185
213
227
138
233
195
191
246
267
211
147
222
152
258
180
179
198
150
194
204
154
229
244
241
205
240
169
194
180
184
171
205
176
233
158
218
185
214
188
188
224
168
250
171
165
185
199
170
166
160
150
199
201
170
217
192
177
144
189
233
160
205
203
209
248
189
221
189
264
150
200
215
217
218
224
203
244
184
176
274
184
164
151
202
188
214
221
186
159
204
178
150
193
256
156
178
185
257
270
161
158
181
142
151
170
226
177
227
155
222
209
199
208
161
262
245
167
211
182
221
215
145
171
219
191
221
238
236
180
223
167
277
226
204
239
126
231
186
203
176
200
207
180
167
224
146
241
223
179
197
176
254
224
175
197
209
240
198
156
205
155
187
168
204
207
185
260
241
205
191
222
170
205
202
269
151
176
183
163
226
164
182
163
206
206
232
238
141
209
151
241
230
201
112
184
170
156
206
237
140
185
161
178
226
214
230
225
230
172
153
206
222
175
188
208
222
216
185
222
132
203
184
163
135
230
218
189
235
209
228
190
158
183
160
197
207
199
192
246
151
216
222
243
173
224
220
196
215
177
247
113
195
183
145
197
173
183
173
235
219
210
162
196
114
171
248
168
175
163
192
232
221
309
204
217
188
209
229
232
242
238
221
198
217
211
201
206
194
182
239
158
244
238
169
218
149
183
166
225
114
181
165
170
210
232
298
240
223
153
257
163
209
256
201
180
242
149
133
158
145
166
140
239
259
220
150
163
180
188
200
197
255
186
222
222
172
181
195
206
217
195
198
216
157
183
204
171
209
174
105
208
185
215
205
232
250
223
207
174
231
225
186
221
233
209
181
185
220
231
194
247
227
239
202
195
233
174
201
260
230
203
210
190
260
136
233
230
189
184
187
202
224
189
163
256
126
223
174
167
186
191
208
182
189
186
162
164
174
201
183
214
153
165
221
179
153
243
235
140
168
152
192
176
196
196
189
120
168
202
257
180
228
200
190
161
202
211
137
207
221
179
183
188
187
218
226
225
248
155
181
203
179
228
177
197
232
228
243
236
238
179
205
189
148
263
188
202
212
229
170
183
220
244
217
231
252
219
201
234
246
151
183
182
156
202
255
201
268
205
222
233
184
203
212
180
143
175
237
241
195
200
178
223
236
222
219
180
155
190
190
197
196
228
193
245
165
157
204
163
156
212
260
196
172
207
248
226
115
185
229
182
235
153
251
107
228
195
163
192
201
209
207
170
139
157
199
271
140
159
272
160
192
208
196
186
173
174
169
213
154
263
193
178
215
198
241
116
242
183
160
221
213
190
171
173
145
240
233
191
239
208
231
189
243
210
196
185
212
215
175
163
189
223
231
166
275
193
195
153
228
189
224
161
187
258
189
193
206
228
214
217
169
150
255
238
156
136
166
182
204
274
236
214
172
209
195
109
171
202
208
206
240
170
203
141
158
249
192
230
185
194
214
170
251
228
173
125
208
177
218
221
180
247
215
200
214
252
159
248
180
184
193
159
174
197
244
213
157
212
202
227
186
171
214
99
202
238
162
205
193
204
198
202
196
190
205
187
153
244
233
171
226
181
194
182
207
167
199
206
185
184
197
218
181
217
164
123
269
182
254
250
188
245
173
219
227
186
166
179
167
284
201
180
172
203
121
178
228
189
206
146
99
174
238
211
222
253
120
172
182
198
234
279
181
224
192
231
197
194
159
230
179
201
205
195
165
175
250
236
209
215
243
193
190
151
247
205
210
232
126
213
198
235
206
180
156
197
212
187
199
210
178
170
164
184
187
242
171
167
230
164
213
250
186
146
212
215
222
240
219
218
236
176
250
201
208
231
186
210
208
210
153
219
222
224
204
227
202
248
180
170
144
257
190
254
221
185
207
196
192
170
155
237
189
152
219
152
183
220
258
208
187
219
198
209
241
194
197
177
163
185
204
218
178
230
238
135
167
194
210
195
211
219
206
201
227
202
192
138
162
180
197
204
209
195
194
227
141
220
192
198
179
184
253
196
220
247
196
241
222
185
169
176
197
186
205
248
144
217
186
200
263
212
185
195
130
224
165
197
166
209
265
224
192
194
174
203
138
196
148
189
199
183
186
218
262
190
237
170
167
156
212
187
156
246
220
178
182
113
165
269
178
192
204
173
240
152
277
210
124
183
160
201
180
172
184
154
213
154
182
246
232
257
215
187
228
180
147
145
169
207
181
231
187
214
191
179
169
237
236
181
221
160
161
180
210
207
224
134
248
198
173
198
170
246
224
171
168
229
196
209
166
167
192
249
212
221
189
198
224
185
277
193
138
234
221
132
197
178
191
141
268
160
214
240
189
219
213
235
192
211
163
217
203
200
236
190
277
191
245
226
161
187
218
184
236
182
237
204
202
147
201
222
256
197
220
244
201
229
218
226
237
209
172
174
232
232
197
213
180
194
201
196
233
200
223
125
204
202
245
202
211
252
150
231
144
220
194
255
218
152
182
141
195
143
183
158
247
215
200
211
165
211
163
156
230
208
242
190
272
175
247
214
202
204
230
202
173
174
182
232
191
193
266
191
137
240
193
144
241
255
278
185
187
123
219
199
159
161
175
204
146
179
205
214
221
179
179
155
195
255
231
206
199
230
253
183
193
180
182
206
223
192
215
184
131
213
233
164
221
223
190
187
191
189
198
208
169
170
239
168
200
205
177
152
210
223
186
212
180
183
171
196
218
155
214
204
169
217
202
210
190
224
250
223
249
224
187
281
179
210
224
205
235
227
230
180
202
186
159
229
235
139
204
287
174
183
214
213
232
182
144
222
211
210
169
229
196
148
268
230
245
215
221
213
123
232
212
223
135
206
197
224
126
175
181
208
206
230
166
214
247
180
134
209
208
206
184
202
151
201
152
122
239
224
259
216
158
181
138
194
266
210
225
198
181
173
213
213
224
239
174
138
196
214
212
198
253
207
185
171
207
209
219
225
111
239
257
236
159
206
208
198
183
187
171
181
175
191
170
264
199
174
148
210
134
237
182
208
213
178
237
221
251
199
226
198
242
215
208
198
244
199
253
209
228
179
216
192
175
251
236
231
246
189
205
206
178
208
232
220
168
203
231
239
209
166
166
223
154
238
186
213
225
201
209
171
196
186
185
205
146
185
233
145
193
177
252
161
211
201
224
241
253
220
203
172
207
197
189
177
171
203
191
205
181
228
186
182
130
174
232
177
182
229
216
187
224
159
228
228
184
161
126
222
245
177
151
255
148
201
153
173
206
194
204
154
198
227
238
196
162
193
228
157
184
139
222
227
188
232
141
176
212
198
208
177
218
199
180
231
164
214
214
199
213
250
213
219
146
196
188
203
157
142
215
232
167
190
186
197
215
173
194
247
152
209
236
164
183
226
185
177
171
170
186
154
145
239
205
175
206
218
237
138
166
142
197
224
167
217
254
202
253
253
189
222
249
217
166
236
221
220
242
211
204
220
183
165
171
185
163
219
214
169
201
213
179
210
227
201
162
155
245
203
231
192
232
203
232
182
198
203
213
174
210
221
181
219
184
161
206
207
123
130
139
165
221
221
194
228
172
179
147
226
171
173
166
194
167
238
138
236
201
249
167
264
200
164
169
135
180
143
212
230
173
231
253
164
197
217
247
226
165
145
211
229
188
230
141
180
234
160
194
123
172
252
171
227
178
171
157
149
219
216
225
156
187
145
243
175
132
165
176
243
268
255
190
237
160
187
228
212
219
206
188
171
217
200
159
147
213
192
177
200
129
271
153
231
227
142
205
208
189
204
230
202
243
256
132
237
280
215
171
213
204
188
189
210
200
197
169
109
191
221
202
205
230
254
160
143
205
205
157
246
208
225
200
151
231
266
129
176
158
235
229
192
135
240
198
159
198
217
176
143
207
229
158
130
182
184
169
200
180
245
177
175
228
197
194
253
244
169
206
223
212
187
226
154
194
219
207
263
184
218
219
139
142
173
167
248
247
141
199
229
178
186
203
209
172
200
213
207
211
215
151
176
202
241
110
232
184
167
181
180
249
242
156
125
240
246
158
279
253
224
133
207
206
187
202
247
214
154
210
212
198
220
210
182
218
169
121
246
189
161
187
165
199
227
186
211
175
132
130
207
200
211
197
215
204
154
245
155
218
171
151
229
185
182
190
162
171
257
225
223
212
225
226
150
257
214
181
158
205
175
202
174
222
254
225
167
237
165
231
233
201
253
185
149
176
229
216
128
191
240
233
190
222
184
228
245
212
184
197
249
258
206
216
236
189
237
129
197
218
178
184
138
241
159
189
200
190
192
184
233
172
212
208
215
176
122
176
131
194
281
220
231
191
189
158
132
181
138
236
177
220
196
211
193
206
244
217
183
186
185
158
156
224
183
204
215
151
197
135
230
195
201
225
191
216
216
203
226
131
209
248
160
206
199
191
217
188
226
232
187
206
167
205
212
171
251
221
213
189
220
147
197
211
187
188
194
226
211
150
224
248
234
138
224
185
237
217
165
221
192
208
221
198
200
212
204
216
178
250
169
206
220
227
240
235
249
229
190
207
206
202
239
291
138
260
204
176
187
248
217
256
171
190
227
219
202
239
190
210
213
172
183
255
147
198
177
238
207
210
193
167
200
184
188
237
229
224
178
246
235
231
260
213
159
126
217
216
216
158
239
246
211
159
175
243
213
234
207
203
178
196
196
235
185
251
190
181
222
148
255
197
156
144
177
207
236
196
206
193
232
149
203
232
249
203
220
244
169
214
186
231
186
243
265
270
208
197
210
148
224
112
224
207
223
220
156
209
227
196
165
227
162
228
195
190
231
182
168
165
233
159
202
215
161
188
220
223
204
165
148
227
241
248
186
160
180
139
212
250
190
247
209
267
155
260
214
197
183
144
195
203
185
183
176
229
252
183
269
224
224
215
188
194
184
214
129
142
153
226
228
171
161
257
168
200
169
155
240
184
162
129
219
185
221
172
240
201
222
196
166
178
173
239
181
181
141
162
151
200
212
225
180
206
191
158
227
232
195
212
225
169
212
183
205
180
184
176
196
200
186
194
205
188
153
185
173
170
183
212
263
223
174
200
191
219
221
186
165
201
167
190
191
261
194
207
237
237
195
162
244
150
191
138
216
183
107
195
195
201
233
189
136
205
188
221
229
231
239
193
209
200
161
156
148
199
212
229
218
205
206
188
208
142
203
203
195
194
147
276
254
137
170
220
264
184
230
194
216
168
241
200
198
224
206
185
152
233
181
178
199
212
253
217
268
175
220
181
195
181
217
245
225
196
171
233
250
246
206
148
250
179
203
127
278
145
239
174
151
147
217
237
205
210
212
196
216
243
213
186
244
175
173
208
236
191
240
219
224
173
234
153
229
230
274
148
185
177
203
193
144
207
236
227
217
212
197
161
131
252
206
183
223
209
228
193
188
217
227
199
168
162
173
269
197
200
228
208
231
225
136
188
214
213
201
237
217
182
203
204
181
234
273
175
221
233
198
148
165
179
172
207
187
225
211
217
237
158
219
128
216
229
189
154
199
127
157
246
153
254
147
173
263
187
273
196
269
186
236
227
176
256
120
233
205
201
220
195
151
209
193
144
222
205
240
212
212
190
231
247
217
254
199
221
234
222
211
198
175
269
248
227
203
166
182
173
230
210
201
151
194
255
216
224
159
240
170
221
187
262
200
204
227
185
217
197
260
190
167
166
178
236
225
195
187
194
193
228
227
250
152
193
216
227
188
183
203
168
210
191
161
175
225
197
176
130
176
177
219
184
223
206
235
181
234
170
193
132
199
195
166
205
236
184
183
246
213
188
182
224
230
204
108
224
179
246
181
234
204
215
242
269
185
232
203
262
252
221
222
212
180
262
158
212
199
112
158
201
208
220
225
278
170
186
219
190
167
202
156
278
213
225
153
159
191
195
139
197
204
228
170
259
142
183
265
170
150
212
195
174
187
214
170
193
204
178
177
237
193
195
216
235
188
165
212
199
193
164
208
189
210
193
248
152
206
221
176
184
223
164
207
204
176
199
239
231
151
232
180
194
177
156
262
211
220
195
196
138
243
146
204
268
187
191
160
199
217
129
186
203
168
205
223
213
149
178
151
143
125
163
155
196
209
175
141
206
178
244
201
243
173
138
167
232
172
239
178
225
296
156
145
273
174
173
239
277
175
203
208
240
214
143
200
170
220
141
251
184
225
194
193
221
225
267
190
205
198
161
185
210
144
176
211
222
168
225
184
231
218
163
251
236
209
232
212
239
294
171
266
140
230
253
276
201
162
230
253
158
157
155
210
186
207
196
281
157
183
184
159
120
247
167
157
214
215
221
194
184
218
158
225
209
172
227
144
201
252
187
208
155
189
230
197
238
175
220
259
211
203
192
211
219
169
208
148
168
128
221
139
190
221
187
137
179
146
194
224
207
200
130
203
280
164
180
185
174
227
182
218
243
203
195
230
220
216
219
165
231
202
175
140
232
213
204
249
235
185
125
177
222
233
175
179
235
247
169
192
127
156
187
239
188
156
191
213
196
234
249
234
155
168
161
231
165
196
190
152
192
188
243
140
197
162
192
251
194
203
185
208
211
160
233
159
214
133
163
210
156
206
207
174
174
169
161
275
146
171
200
215
198
209
248
211
275
249
158
187
187
198
236
173
203
209
205
186
173
195
233
160
229
218
198
191
211
261
237
187
217
206
128
180
228
211
213
220
243
215
191
225
171
247
230
216
142
155
178
251
224
185
210
210
226
208
225
145
216
174
184
187
186
254
152
177
238
210
252
141
223
200
272
153
196
295
171
249
177
217
175
187
188
149
191
185
187
118
231
184
192
155
204
188
208
233
199
229
168
242
235
230
185
260
184
218
159
232
184
190
215
241
242
216
169
209
226
136
152
238
236
260
159
192
193
127
170
211
182
237
204
258
194
159
154
258
166
200
207
200
147
211
289
199
174
217
177
213
171
180
146
175
232
215
219
188
220
193
185
185
206
262
183
276
181
187
243
203
205
218
163
213
246
213
220
261
183
199
224
157
211
156
199
196
245
217
250
230
228
213
207
183
240
145
254
221
163
225
183
245
185
227
170
210
154
152
164
203
230
218
141
216
162
176
208
175
149
237
211
253
151
138
203
201
160
205
137
236
204
130
231
186
135
166
220
231
191
241
165
246
243
200
186
197
206
148
190
245
202
198
198
201
261
201
153
184
199
201
253
242
200
268
144
212
148
203
250
256
213
201
253
265
213
197
210
203
243
228
218
245
175
166
185
182
208
179
227
176
169
183
206
171
224
222
184
220
236
225
221
170
175
213
255
208
242
231
202
180
245
185
145
205
248
240
249
150
207
175
186
229
223
218
175
198
211
200
223
169
167
198
250
212
195
204
177
216
237
177
214
161
256
228
178
221
230
236
198
212
208
165
272
150
193
212
255
213
231
206
171
186
215
189
208
209
152
196
191
172
188
136
258
180
192
184
154
194
244
208
177
181
227
209
245
237
218
156
220
210
242
148
182
254
211
189
196
194
173
180
204
176
199
193
181
188
218
216
199
159
156
147
148
186
230
193
181
252
200
215
218
263
217
166
224
238
240
197
253
194
229
231
199
226
208
220
207
171
182
234
213
197
173
258
197
177
213
252
200
175
178
158
176
217
164
110
164
178
204
199
190
189
218
229
231
203
127
166
208
210
196
291
213
133
246
191
169
207
158
192
209
210
122
176
175
184
192
199
216
292
175
235
231
229
223
205
184
197
240
229
234
251
212
203
254
151
218
212
197
242
229
169
250
243
141
195
232
183
228
223
249
253
160
211
229
219
212
202
208
208
205
242
219
191
191
202
193
181
190
187
166
175
193
155
191
175
194
229
185
224
148
238
235
193
191
205
134
197
225
182
231
198
195
197
187
249
177
184
242
248
232
209
228
189
231
181
167
202
238
234
253
136
251
117
172
225
152
241
145
252
230
195
253
180
183
263
191
206
230
191
199
206
188
223
175
230
226
223
217
166
218
155
162
218
192
179
119
227
224
205
176
221
141
189
236
201
164
228
242
203
217
208
210
265
183
192
207
226
269
168
204
165
226
185
163
204
148
170
146
173
230
229
239
184
201
256
205
180
225
172
169
196
176
217
163
214
228
166
159
149
172
242
223
224
244
202
223
205
215
197
193
230
153
177
130
202
239
189
127
262
168
215
142
253
164
170
157
140
238
184
141
186
182
168
214
221
170
194
165
239
159
226
256
205
158
243
185
184
137
200
208
148
244
204
204
187
231
194
160
228
157
209
233
122
193
217
179
249
168
257
171
201
215
226
166
186
254
165
196
229
232
192
190
199
215
255
228
225
221
193
206
205
214
228
209
191
186
205
220
216
209
240
119
205
210
251
175
262
314
279
283
204
144
260
226
228
227
197
239
234
207
237
126
250
218
209
211
192
168
149
158
206
244
189
149
192
241
162
217
197
271
240
199
206
256
149
233
201
220
155
157
216
163
222
250
195
191
251
198
210
169
242
169
176
201
253
223
206
226
208
173
244
179
194
247
234
185
217
222
221
178
183
265
166
212
302
202
194
197
164
192
179
225
165
153
179
228
285
222
201
251
192
182
254
208
178
193
213
143
192
224
221
239
271
187
246
248
198
224
147
259
187
262
127
230
162
190
209
244
211
206
260
202
225
146
243
163
164
171
202
224
175
237
222
217
122
262
161
217
244
236
268
223
173
235
169
151
185
192
247
180
160
220
192
180
158
193
247
266
243
239
180
210
241
182
176
235
178
174
190
234
189
220
103
210
199
158
237
234
192
237
205
191
172
185
203
201
210
167
203
226
190
160
162
202
184
162
219
269
214
236
245
188
168
181
248
179
201
169
193
191
199
202
234
232
195
258
191
198
163
196
230
180
202
208
148
174
180
218
198
206
193
149
219
203
178
177
198
227
197
226
231
183
170
211
251
216
203
179
208
179
181
203
193
189
221
208
238
201
167
211
166
194
248
199
205
132
167
212
224
228
208
173
154
166
199
222
161
246
181
218
174
218
212
196
172
211
192
240
209
248
210
242
228
164
272
240
205
254
234
149
155
209
208
177
174
245
202
243
156
219
128
188
209
256
272
219
223
212
198
189
250
167
188
195
178
185
241
189
244
200
132
152
181
205
193
179
271
199
182
232
256
230
232
182
230
172
149
158
251
223
221
251
182
227
205
212
207
263
188
216
136
249
251
211
221
186
199
175
225
172
158
204
245
206
226
231
249
193
250
189
208
215
199
144
226
194
202
208
248
210
246
185
166
231
188
215
207
164
214
179
155
218
245
161
260
189
204
216
151
178
157
195
225
218
265
190
263
178
236
188
180
205
197
211
194
252
241
201
169
163
247
257
132
195
195
204
247
200
227
194
259
168
201
171
213
197
244
200
229
146
200
229
184
167
168
233
204
111
229
252
190
222
196
224
239
194
208
187
221
110
179
159
221
250
207
198
213
171
203
185
171
218
233
184
182
218
234
200
209
112
207
212
248
217
218
198
207
198
171
180
185
151
206
217
225
228
178
157
200
147
158
194
235
231
231
207
176
189
202
228
179
247
209
165
234
199
152
190
171
118
150
172
235
175
184
238
168
184
227
193
191
224
184
223
153
160
146
213
244
145
229
214
237
191
189
192
200
197
141
242
162
176
151
180
249
146
185
230
219
175
221
224
242
183
206
206
226
213
191
201
176
209
182
192
157
184
153
219
223
229
209
179
211
222
200
179
195
207
205
211
282
198
194
173
162
204
241
216
188
186
157
237
171
249
230
203
207
141
215
211
252
129
131
176
200
176
248
218
223
247
233
247
226
247
230
183
232
186
204
212
166
150
236
190
257
248
221
209
201
238
172
210
203
212
199
216
208
203
227
214
168
181
157
169
197
216
181
124
175
214
199
164
212
227
205
237
141
203
199
163
212
227
182
155
221
135
175
206
219
227
197
265
158
175
186
188
249
175
161
227
233
171
192
252
218
225
134
191
211
199
154
216
225
186
229
239
232
256
148
155
178
133
157
213
228
204
243
221
208
201
239
170
178
125
135
217
150
247
163
131
153
155
275
189
222
227
167
223
222
241
148
210
245
235
191
193
178
242
222
152
266
207
241
144
241
196
267
252
267
239
290
199
209
141
165
154
183
191
181
193
177
239
226
130
208
246
143
229
254
136
158
234
131
206
244
148
182
217
194
220
173
164
176
133
199
187
232
176
139
247
157
255
230
167
186
229
199
198
181
212
108
240
215
191
172
165
177
197
201
212
251
218
218
179
261
162
251
206
139
240
250
268
147
204
214
165
204
181
214
200
224
206
216
214
210
180
207
204
249
287
191
183
217
177
196
119
210
192
259
263
196
191
182
255
247
267
241
147
201
270
177
205
155
151
201
184
201
197
191
187
173
183
185
139
222
175
226
228
198
214
267
223
201
189
248
153
199
203
222
218
173
204
157
162
213
235
198
245
179
247
158
231
175
220
167
178
117
184
140
195
156
185
261
185
172
226
174
257
234
218
220
226
217
191
162
258
230
151
207
196
208
209
176
209
190
214
197
215
174
224
192
180
145
242
199
227
157
212
215
249
186
193
174
187
160
229
189
197
162
222
229
211
208
120
180
204
135
189
137
201
147
217
241
231
120
204
213
195
209
270
203
219
237
145
152
238
190
207
112
196
223
252
165
190
208
149
194
145
224
168
229
208
151
224
178
217
182
221
199
209
212
226
196
209
196
232
205
167
190
183
266
167
177
230
191
153
223
221
187
221
199
255
216
253
208
208
241
222
232
235
183
227
195
179
164
220
196
240
248
130
237
189
181
214
157
176
177
229
164
200
177
165
128
170
246
191
177
248
154
229
208
210
197
242
174
181
179
265
181
242
253
235
207
209
188
186
214
171
187
202
221
278
249
174
220
242
125
155
230
192
205
282
192
203
180
202
212
212
244
233
235
198
243
175
204
218
224
216
186
190
155
144
188
178
190
230
232
220
187
217
188
222
128
140
218
179
182
162
191
198
202
153
288
236
221
225
230
227
258
231
204
158
110
223
265
166
116
189
207
197
194
207
105
236
192
245
250
224
216
161
217
125
141
217
137
144
204
212
147
221
243
207
238
174
237
181
234
225
182
253
206
272
161
247
209
244
181
184
218
192
204
209
208
240
227
181
233
192
184
168
172
201
157
187
194
157
146
154
185
143
153
246
179
256
235
156
182
241
249
199
215
261
174
196
237
208
232
224
167
223
220
192
195
258
211
148
255
156
226
163
242
230
178
178
185
237
224
192
158
183
182
237
209
162
187
175
197
237
148
222
186
247
160
231
175
186
264
179
213
194
263
242
164
211
221
210
229
230
255
223
213
221
132
186
244
190
246
114
211
212
167
164
152
222
191
212
192
195
264
302
241
228
199
269
201
239
147
213
202
173
205
205
182
190
257
243
215
266
241
243
176
232
225
166
269
176
193
139
169
207
210
242
193
155
209
183
148
182
175
217
218
218
145
191
186
155
136
182
185
255
196
183
234
171
246
180
200
198
206
168
198
241
179
194
235
212
171
144
180
211
247
168
183
186
199
217
153
238
179
192
179
179
236
193
184
215
197
209
202
164
207
89
215
123
236
170
198
228
163
195
218
234
149
205
139
221
222
267
118
179
200
237
252
253
182
160
231
238
215
216
148
185
200
178
178
195
241
198
157
153
204
197
147
207
221
229
234
162
202
239
188
271
171
211
243
206
173
215
172
201
210
230
161
145
222
185
221
253
148
177
212
155
138
224
219
185
170
221
143
169
201
179
201
212
162
185
173
170
236
230
229
200
236
241
156
190
228
133
205
196
206
220
214
164
212
216
254
217
243
213
224
227
231
178
168
193
216
189
239
177
172
241
216
156
166
179
211
152
172
181
223
146
216
181
148
139
250
192
144
195
200
189
206
173
198
214
195
207
297
231
257
181
193
171
174
213
220
212
246
144
164
248
214
191
169
197
211
186
216
187
255
184
232
160
187
209
168
150
184
158
169
243
228
173
238
140
206
153
193
193
178
168
180
237
227
229
189
185
242
218
161
240
225
239
199
215
238
228
186
222
213
228
268
133
178
147
204
259
222
148
157
226
176
224
206
182
123
241
204
145
260
200
172
214
167
158
155
231
237
230
209
159
179
229
214
197
211
189
152
249
210
197
201
226
132
237
191
131
161
204
196
146
219
250
227
175
170
175
187
201
202
229
195
271
213
222
211
196
227
221
241
174
180
223
183
131
244
171
207
200
189
173
209
233
228
166
199
192
122
209
162
213
232
236
214
173
167
177
248
222
220
181
181
188
266
144
177
210
182
250
161
169
190
258
217
239
203
173
128
184
198
218
230
115
149
217
221
247
190
263
248
195
186
212
207
173
207
191
220
205
198
191
185
223
197
214
148
186
198
151
196
277
151
174
166
252
209
187
181
190
214
214
234
218
246
188
172
203
161
275
202
151
165
158
140
191
217
230
253
246
187
92
208
260
161
210
200
246
201
161
213
236
229
195
216
231
159
190
242
236
182
149
260
228
233
195
178
236
226
198
148
164
183
179
174
205
208
178
257
218
182
235
267
296
165
210
245
207
232
207
172
201
124
220
207
165
202
226
242
220
142
224
234
240
254
192
232
114
182
238
163
260
201
174
212
223
217
187
176
236
167
184
170
226
179
226
205
191
212
263
181
189
183
189
203
235
211
210
235
178
274
203
243
153
205
195
241
150
242
215
197
173
207
210
168
246
230
254
140
188
203
249
183
154
196
151
222
177
163
185
227
203
184
211
174
224
220
195
154
193
170
175
273
236
186
147
209
180
183
175
229
142
186
165
231
284
204
212
162
128
229
232
180
185
198
208
182
150
244
241
213
183
158
182
204
232
188
183
193
181
230
160
233
190
211
181
212
149
216
234
177
221
245
135
258
220
208
159
170
203
159
220
225
179
139
197
204
162
142
151
250
184
204
254
131
216
155
143
157
179
177
234
237
160
194
164
188
230
221
147
226
236
178
131
194
185
213
208
139
176
195
212
198
213
228
172
131
181
208
184
184
180
138
159
242
258
129
165
179
168
236
143
214
187
281
186
210
130
206
199
178
245
224
181
165
228
178
204
207
253
186
177
158
223
183
245
217
233
189
226
226
167
214
210
172
174
219
208
213
233
227
214
173
222
192
198
267
194
155
221
150
178
214
205
204
204
265
170
246
177
156
209
180
212
250
180
197
186
203
245
146
198
182
216
217
155
214
196
251
150
214
207
188
244
156
184
185
181
195
190
230
207
209
161
133
232
239
227
193
194
234
187
183
227
194
231
181
209
200
162
251
200
219
235
197
260
201
155
99
229
217
212
205
187
225
174
215
161
234
175
193
151
267
253
215
150
242
211
191
182
191
208
194
243
169
217
167
221
232
200
127
223
199
194
162
164
211
223
224
194
132
188
213
139
208
225
171
197
215
135
170
239
242
177
209
210
218
200
222
232
229
166
179
224
208
137
181
184
210
194
247
191
213
207
145
202
177
174
196
255
227
233
197
222
177
184
156
92
180
205
194
223
178
249
250
243
235
255
237
168
237
162
181
193
191
212
223
226
173
142
189
200
221
191
161
227
156
222
165
254
223
252
146
128
237
166
212
191
182
207
157
238
176
278
206
182
264
219
221
238
256
134
166
194
247
162
164
209
165
158
213
191
235
216
171
222
255
116
213
198
147
143
217
146
199
271
205
222
201
205
189
165
165
207
179
240
250
207
228
214
202
218
205
176
187
220
266
233
185
173
196
178
203
238
189
115
245
183
286
166
151
180
232
210
165
175
188
262
203
179
177
226
142
231
228
161
188
174
189
217
132
228
211
214
239
206
256
167
164
189
205
167
181
202
191
213
206
188
224
219
215
237
212
202
176
240
261
209
216
221
197
160
176
204
223
191
223
226
203
251
205
183
221
196
195
230
210
162
236
246
175
213
231
229
162
188
166
207
222
170
189
231
207
174
217
214
212
187
287
167
174
211
125
161
216
140
196
262
264
233
225
175
175
171
97
175
192
184
207
225
248
235
135
167
233
246
236
196
200
233
232
255
147
226
212
215
232
168
179
207
226
221
185
216
195
251
242
160
225
205
199
254
184
160
193
230
194
233
209
201
197
192
212
105
213
238
206
178
281
150
192
204
198
164
218
130
202
204
195
220
245
188
233
179
287
204
229
129
202
230
120
260
231
234
265
214
179
250
214
227
176
169
196
215
188
260
198
193
238
218
203
162
169
229
245
163
188
200
149
249
246
180
219
197
196
219
113
239
186
186
235
178
204
228
174
135
204
180
178
204
197
187
228
232
199
167
196
238
223
172
209
149
176
204
227
196
279
257
238
204
163
261
155
189
188
247
154
197
164
170
215
241
220
210
229
230
178
91
228
162
153
234
249
164
228
198
199
139
223
152
206
142
197
162
239
174
178
195
182
196
201
221
196
201
201
223
162
176
173
192
171
248
225
197
221
196
202
205
205
208
190
206
175
248
144
213
170
213
198
168
161
189
181
184
165
180
218
215
187
255
175
204
222
192
216
215
194
202
204
153
181
120
193
251
237
227
170
243
186
176
174
246
218
263
140
256
241
187
242
196
226
218
227
159
184
234
228
155
218
233
235
265
234
137
199
198
248
233
167
232
216
181
274
223
133
135
177
162
194
210
207
162
246
166
243
236
192
144
184
152
223
172
153
243
221
186
192
194
282
205
236
157
235
235
196
240
195
183
169
218
180
212
196
250
187
268
187
225
207
181
152
170
198
154
157
185
210
222
168
234
239
181
224
212
199
185
199
246
159
237
234
198
184
180
213
160
228
174
142
234
184
240
191
191
189
191
278
248
244
213
181
198
229
202
187
201
140
185
220
160
256
151
182
233
200
187
192
152
279
221
235
183
174
135
259
159
244
234
216
155
247
150
146
214
179
153
221
213
203
200
246
222
209
178
145
190
216
186
228
216
229
260
177
247
151
201
250
194
107
252
207
193
151
209
242
172
181
187
218
235
204
154
171
198
158
114
184
154
176
217
167
189
230
195
171
257
225
226
242
217
173
226
179
190
212
179
181
234
145
263
178
243
187
210
216
207
246
164
245
222
163
166
173
160
210
170
207
207
194
163
226
179
178
216
186
263
228
191
202
245
197
182
184
207
164
243
196
181
227
189
194
162
192
154
174
203
158
198
212
190
173
185
186
191
186
244
183
188
207
213
246
211
278
240
283
203
181
195
171
159
266
222
241
199
239
137
173
175
224
203
199
190
234
186
214
228
259
154
210
232
218
235
161
220
224
171
228
229
249
185
223
198
237
170
128
134
168
160
154
217
194
211
218
209
118
252
179
223
266
198
208
221
241
207
189
229
212
238
190
226
249
217
184
192
226
223
250
216
157
161
153
182
169
205
246
180
206
233
154
151
169
149
159
176
220
195
223
205
221
187
214
219
155
161
178
232
208
218
237
236
223
152
249
215
286
194
222
210
216
242
179
152
156
177
209
204
171
200
148
151
218
165
197
214
217
213
207
187
138
237
113
226
193
219
144
255
169
200
189
156
144
209
194
185
193
176
173
248
231
236
228
193
201
130
214
201
239
222
236
175
173
186
225
167
157
178
169
186
226
169
192
165
157
206
239
206
156
188
234
177
222
240
199
148
188
202
188
226
159
211
226
181
237
177
201
227
203
195
264
166
207
192
210
183
160
248
198
181
194
213
153
218
250
157
250
230
181
186
165
167
278
174
213
228
147
181
205
251
239
234
230
210
226
174
271
156
180
160
227
220
222
220
170
171
171
178
212
160
196
167
193
241
223
214
141
190
170
259
188
271
171
215
197
251
244
240
194
203
233
150
111
174
196
210
196
195
158
210
185
183
173
201
216
185
220
229
224
203
256
228
238
208
144
191
163
235
142
244
185
271
156
253
154
166
239
207
210
242
136
127
147
155
158
196
202
228
209
161
231
179
204
188
189
187
211
168
231
159
185
238
204
209
171
198
176
232
171
241
226
232
206
221
233
228
171
242
213
186
212
234
150
182
235
178
172
192
206
170
293
217
225
197
202
190
177
229
168
171
229
155
234
174
246
195
237
168
126
183
215
199
221
189
221
199
210
217
212
167
247
187
192
202
215
189
203
203
119
196
224
152
220
204
222
243
229
226
247
178
169
257
226
218
231
152
166
210
189
230
247
143
211
185
237
240
233
262
143
193
197
163
211
195
189
208
184
227
280
203
219
179
202
183
211
243
211
201
198
197
193
146
201
137
260
191
116
202
156
210
221
209
191
200
137
185
206
202
243
177
194
174
204
161
186
191
193
165
275
217
205
172
204
246
233
257
227
187
225
186
215
214
181
189
131
196
234
244
215
182
234
173
241
241
220
222
152
220
164
266
199
192
182
188
205
214
202
218
166
189
176
163
211
238
214
218
223
188
209
183
221
184
145
158
213
187
209
232
224
183
176
157
171
203
159
215
212
235
184
187
241
203
172
181
239
206
230
230
233
205
179
276
206
195
224
174
205
205
154
256
156
215
172
284
268
189
180
196
143
187
208
158
210
213
161
223
188
172
166
165
152
221
178
173
254
110
200
242
221
204
150
244
172
222
147
221
244
179
166
147
202
192
235
212
220
192
197
179
189
179
237
207
174
200
146
165
232
243
253
137
166
248
201
210
230
187
128
209
172
161
225
166
164
207
233
171
242
212
146
234
179
242
163
216
262
199
199
217
224
210
230
168
234
168
194
199
212
266
175
173
202
188
196
192
213
210
204
189
228
211
205
191
176
157
206
160
218
213
223
147
220
162
158
249
201
181
177
152
146
176
206
108
208
204
203
178
185
154
197
144
245
212
215
202
236
247
189
217
138
252
210
201
213
174
213
164
209
204
159
183
237
207
235
223
255
217
264
240
209
169
97
228
189
164
195
195
157
193
125
149
198
275
162
257
173
182
206
208
208
228
224
266
204
169
150
153
129
178
143
230
200
175
184
114
181
219
153
180
207
167
194
190
140
203
261
126
185
168
153
155
154
215
243
217
225
215
210
189
232
220
209
230
128
208
227
173
241
201
158
212
213
200
197
277
235
206
178
233
176
155
148
190
185
167
218
219
194
246
167
189
230
195
190
285
235
160
205
180
207
195
215
219
234
159
184
200
223
178
185
175
206
151
211
231
153
227
231
235
203
179
209
175
137
157
129
264
161
172
184
193
197
138
216
169
185
249
239
262
243
212
176
192
171
155
196
196
185
176
230
181
216
215
159
213
207
178
158
200
187
203
193
160
219
167
227
247
219
182
169
173
223
226
272
224
157
198
188
207
207
199
230
205
190
216
183
155
202
181
162
268
249
168
183
194
184
209
203
231
149
195
214
263
161
200
236
158
138
226
244
197
236
203
242
187
170
213
164
246
226
182
162
243
195
201
259
133
209
236
163
166
171
179
203
220
203
196
127
213
218
237
156
180
218
178
151
152
237
167
194
135
233
299
224
172
202
190
203
227
214
211
211
207
225
227
219
226
220
171
186
170
225
229
159
216
165
205
245
212
180
184
195
159
195
188
157
198
186
163
166
191
168
162
230
183
232
191
225
237
159
195
205
192
115
233
183
173
213
207
195
210
189
250
182
163
207
250
205
203
205
252
227
214
254
182
209
189
243
118
134
167
234
232
211
184
173
197
173
175
216
172
163
175
147
185
244
198
237
209
240
179
197
216
196
217
180
259
272
197
216
196
192
211
250
180
177
98
178
230
268
191
206
240
178
122
117
121
216
175
253
161
218
250
172
212
197
137
191
179
142
169
154
290
201
200
157
177
254
214
247
211
157
216
245
178
249
195
207
219
275
191
180
203
246
199
171
215
171
240
239
159
186
196
188
209
218
177
198
171
238
195
218
195
197
252
152
163
227
150
213
280
238
218
200
189
171
172
158
159
227
259
199
217
165
244
250
189
168
197
222
161
163
224
171
184
267
211
193
164
203
258
268
177
206
167
259
239
261
138
151
213
172
193
213
179
190
232
191
250
169
210
183
204
219
276
236
225
242
205
154
229
119
157
143
208
184
172
232
232
213
193
220
191
218
209
200
245
215
206
203
225
156
231
190
133
232
144
205
208
176
192
213
209
179
194
246
210
115
205
232
248
162
147
238
201
210
207
165
202
174
190
195
140
188
128
267
191
205
224
261
249
173
180
140
215
67
172
180
187
246
194
163
167
213
216
255
160
210
204
265
218
227
206
176
156
173
209
190
205
234
228
234
202
216
229
173
186
228
225
205
205
190
201
179
229
214
179
186
207
221
260
179
232
233
123
195
194
266
192
178
186
210
234
185
162
210
144
180
243
243
172
169
263
236
162
199
211
229
265
210
216
194
196
176
268
240
215
195
232
223
138
215
220
194
238
208
182
256
255
210
193
174
240
215
170
223
176
264
197
204
193
153
221
134
209
245
228
164
191
192
185
139
188
191
220
211
170
216
229
122
232
200
207
186
147
186
112
232
189
163
255
225
217
180
172
198
167
199
173
141
223
221
186
212
217
182
239
187
153
186
201
214
171
256
225
233
203
159
186
202
191
228
155
197
130
230
262
211
268
176
122
287
226
163
210
215
201
207
190
244
206
237
183
197
209
196
213
238
191
177
158
174
154
200
202
262
289
129
194
253
182
211
232
219
168
266
188
194
195
214
230
232
228
200
172
237
165
167
229
147
189
235
141
204
192
192
197
152
138
238
168
146
165
228
161
221
236
220
180
173
210
168
203
220
236
183
189
240
233
158
186
198
195
137
196
219
267
184
185
218
240
193
190
207
204
228
160
229
176
219
173
229
220
220
192
172
214
158
188
174
223
250
268
177
202
213
162
174
183
258
99
182
194
195
216
251
210
225
212
181
185
177
241
244
254
207
190
215
234
212
176
172
217
243
236
211
114
222
246
253
219
248
204
177
216
182
170
177
297
227
191
139
193
288
243
249
161
233
193
198
167
201
226
253
217
183
196
273
194
215
203
251
214
173
211
192
207
190
184
214
218
131
211
157
251
252
170
233
231
181
221
126
206
261
213
225
208
236
219
204
222
153
233
144
185
182
188
223
214
245
232
207
99
199
184
177
201
238
201
221
163
235
172
197
200
227
237
220
197
187
175
253
247
237
223
279
210
213
215
188
241
154
173
179
226
203
145
151
221
193
179
285
207
227
206
173
175
256
221
235
191
223
224
161
174
212
227
171
186
119
237
212
192
169
181
225
176
123
219
192
137
185
223
238
170
200
223
173
221
220
244
232
220
193
218
215
187
196
231
195
203
170
107
175
201
185
132
224
253
181
227
206
212
168
149
145
182
129
226
188
239
219
185
203
210
148
210
234
167
118
236
206
156
225
240
166
181
182
205
257
216
127
203
169
146
182
219
210
175
224
221
180
240
231
208
204
207
211
259
180
255
180
220
187
169
212
248
207
185
233
180
223
206
214
206
200
182
183
150
174
213
180
225
183
152
202
219
174
228
236
194
193
201
153
212
217
166
243
249
198
250
240
168
213
196
132
245
231
197
193
185
199
202
205
180
229
212
226
201
253
151
206
231
180
203
225
199
208
256
180
159
169
235
232
209
193
173
219
202
212
218
180
242
171
169
177
227
231
171
199
157
225
219
159
185
205
260
244
259
147
175
156
246
169
245
222
251
226
219
130
231
167
237
210
182
209
198
210
226
197
202
227
181
195
231
220
164
191
216
256
151
254
202
160
167
193
90
128
258
150
193
192
152
264
199
175
149
173
227
228
261
148
209
159
225
230
281
136
207
151
182
161
206
183
116
166
169
208
227
224
222
196
212
218
199
184
222
186
249
159
205
119
214
206
139
242
166
184
299
180
234
241
202
208
162
235
233
220
207
234
189
247
222
231
182
185
147
210
182
224
220
187
242
177
262
85
220
167
215
263
190
195
232
184
200
246
164
136
165
185
192
182
216
267
187
260
211
192
202
217
261
190
226
196
188
159
167
173
196
184
203
163
152
150
181
140
252
215
254
241
197
242
210
206
222
177
182
206
167
216
272
167
224
215
174
231
234
175
254
195
173
206
170
255
225
224
179
223
156
158
200
148
209
159
241
190
118
213
216
196
184
189
233
154
166
211
212
103
148
244
170
186
257
145
229
256
149
251
220
240
208
147
229
215
210
131
194
175
204
161
148
174
221
220
209
269
188
228
222
291
170
172
251
196
178
198
152
260
198
128
178
202
248
197
156
198
147
179
217
170
148
230
183
199
295
211
145
197
144
179
183
208
157
158
184
208
253
230
215
236
233
199
247
189
174
239
206
194
202
176
164
186
144
232
207
197
229
210
214
106
194
186
250
169
238
203
216
191
205
214
189
153
198
158
260
242
186
181
254
216
204
224
242
187
217
180
173
277
220
154
191
217
135
209
131
199
220
175
209
235
213
229
155
254
257
144
192
178
224
180
208
207
215
188
250
198
198
223
244
232
179
160
178
171
210
217
219
216
205
247
206
148
168
167
147
175
167
239
195
210
255
133
178
230
213
212
227
218
181
221
177
209
150
220
218
219
227
206
176
218
214
158
206
136
185
179
232
197
190
185
209
175
188
213
216
175
195
188
135
275
192
133
199
234
177
198
200
139
241
212
191
198
157
181
143
226
208
255
215
179
215
213
232
185
227
189
227
126
211
142
163
263
253
172
242
172
217
169
204
207
173
194
239
198
220
281
216
242
168
218
205
172
265
156
113
168
170
267
229
249
187
210
227
191
213
242
218
164
208
238
206
163
244
193
238
209
243
215
193
163
162
173
140
155
230
267
157
215
217
196
189
186
202
245
216
171
168
221
196
185
157
261
242
237
110
204
154
155
184
198
204
187
264
137
172
139
179
218
227
175
220
195
223
202
199
184
199
191
181
197
141
204
259
256
195
169
189
234
267
236
201
192
208
150
189
181
201
208
171
201
212
247
118
205
125
202
148
164
216
130
166
260
191
194
213
195
158
255
209
151
174
200
230
182
213
165
169
138
201
200
208
223
182
211
167
282
226
196
230
185
188
218
254
207
238
217
262
192
258
249
158
220
187
212
240
252
199
211
186
176
165
222
214
224
223
228
162
244
240
179
188
133
207
216
204
247
172
217
229
186
153
207
204
201
247
262
175
199
188
224
240
218
246
209
205
163
252
222
231
237
206
214
213
247
206
221
228
172
218
205
231
224
144
224
149
172
262
161
187
213
272
246
229
228
161
184
215
214
199
186
232
246
138
208
230
195
160
124
207
184
232
215
187
173
142
193
155
166
174
163
231
250
181
255
155
209
137
161
248
242
222
164
156
180
162
202
197
210
219
207
161
157
277
216
162
216
237
188
236
206
193
194
127
259
216
162
174
198
190
227
161
251
187
211
244
196
195
237
166
199
130
171
191
160
133
224
232
228
95
137
256
189
203
230
147
227
216
195
163
193
250
223
222
191
237
242
208
191
168
215
241
217
197
206
237
208
179
170
223
224
153
245
188
156
220
220
221
233
176
215
209
191
145
232
215
181
203
164
214
209
235
252
222
202
208
210
168
198
242
248
174
203
269
183
223
152
208
213
188
157
209
192
207
196
203
196
250
240
139
257
215
150
205
154
198
155
167
232
230
229
176
247
170
230
165
251
192
251
199
181
226
220
145
203
227
242
215
241
226
192
175
213
256
146
201
227
173
199
204
221
197
224
207
198
160
165
252
244
250
169
177
197
160
188
145
145
253
211
210
231
228
192
232
176
181
208
249
200
182
280
246
244
149
222
199
214
155
163
160
209
222
163
197
127
162
196
214
167
192
230
225
215
156
195
213
216
170
211
190
228
192
216
190
160
194
216
194
218
214
194
234
179
178
220
195
177
239
256
185
177
196
195
224
198
173
181
148
218
170
161
163
158
193
223
227
253
164
233
274
151
170
196
166
215
252
206
187
202
187
214
146
205
193
201
263
170
228
171
191
153
159
235
204
209
183
164
229
220
198
212
234
198
189
199
149
221
143
201
161
216
225
205
148
187
197
225
223
175
216
211
192
249
220
183
210
224
225
211
173
209
255
217
189
176
244
243
172
212
187
164
142
179
220
168
204
220
178
204
218
173
214
217
243
195
210
162
182
165
184
152
218
177
215
214
262
203
207
232
162
217
149
246
176
192
215
182
196
196
201
156
193
214
181
242
191
151
128
222
197
218
130
146
147
164
220
200
189
274
230
249
193
182
216
213
236
195
267
155
175
276
264
158
177
232
195
216
219
226
232
182
239
264
120
204
206
216
165
212
176
177
217
183
192
188
168
206
251
192
266
162
191
177
193
152
146
258
206
192
170
225
234
247
241
227
204
244
206
169
293
228
179
211
163
164
217
222
252
207
191
170
195
245
211
218
172
181
156
227
191
177
180
194
257
241
211
177
218
138
226
184
187
259
225
170
187
200
249
181
213
223
206
201
227
216
146
193
231
177
151
171
214
234
202
221
218
221
216
206
146
222
206
207
227
234
216
205
260
193
228
232
235
200
216
187
178
150
168
150
224
246
157
165
252
163
187
143
139
185
218
141
227
152
126
181
207
240
204
169
193
167
170
251
175
95
211
144
230
161
238
181
215
244
144
266
190
165
218
196
169
200
216
213
156
178
174
181
149
209
193
233
163
194
202
227
188
214
268
225
195
169
214
185
248
197
228
175
174
172
212
146
174
146
191
263
201
154
157
203
237
248
146
145
207
156
161
187
179
230
179
174
180
239
236
203
158
208
221
185
182
176
204
164
197
213
151
183
186
171
195
156
230
228
207
212
215
164
173
246
193
231
188
201
240
227
214
238
260
216
159
221
185
160
214
259
191
190
213
216
236
202
206
210
183
164
102
176
158
156
170
193
230
239
161
180
160
243
213
205
216
221
195
195
183
205
139
227
247
189
226
227
212
198
165
225
232
181
177
116
263
198
216
181
207
201
188
140
193
202
215
289
190
244
262
176
170
245
218
200
233
239
196
225
155
218
158
113
226
180
250
237
210
218
152
221
234
236
146
229
250
256
190
181
226
150
204
263
160
138
195
183
112
202
197
222
252
191
173
269
241
195
204
235
172
212
245
224
170
190
241
146
207
258
191
186
185
186
184
180
186
228
266
264
213
247
160
204
219
166
201
208
210
228
229
186
213
165
145
251
199
134
207
165
172
215
194
202
184
247
219
211
238
222
215
220
193
245
188
190
172
219
211
201
215
163
234
225
182
203
255
176
213
217
176
220
171
220
163
169
228
206
180
215
210
194
188
191
178
249
223
121
179
226
228
172
164
179
222
172
209
184
144
249
178
212
195
256
233
151
201
251
261
218
205
211
170
222
214
158
260
169
184
202
176
212
161
213
199
190
220
223
179
219
252
179
210
165
172
156
228
150
204
190
172
168
232
234
194
214
178
228
240
148
220
199
234
204
183
227
153
212
228
193
253
210
206
207
235
228
229
192
259
171
184
211
195
179
222
228
248
183
198
190
231
240
193
106
134
253
216
203
183
233
210
222
211
222
209
246
150
176
181
196
175
215
169
211
166
180
230
178
211
206
251
203
268
219
155
195
192
222
231
226
200
249
180
145
196
213
234
236
175
175
173
162
196
209
196
189
211
229
199
170
230
194
194
218
249
185
152
196
197
211
242
152
240
154
243
214
250
216
170
140
150
169
242
184
196
242
244
238
141
257
211
123
203
272
182
188
210
174
186
220
126
212
166
171
178
202
227
230
177
172
204
216
129
189
187
176
185
201
250
181
193
200
184
227
277
186
259
209
255
114
239
210
227
146
227
211
179
269
126
205
247
179
236
219
137
172
169
219
179
207
211
170
185
198
229
241
237
227
170
171
223
213
239
226
194
276
221
227
222
159
162
175
178
213
219
212
187
179
225
182
174
215
179
217
238
217
230
240
131
247
189
199
240
230
220
153
163
215
198
207
287
198
243
279
127
188
230
180
135
139
144
205
190
214
176
227
180
206
250
147
242
191
215
192
151
234
255
197
207
220
196
223
205
230
254
261
137
186
183
190
158
119
199
171
253
248
220
151
217
189
213
215
188
230
296
272
200
145
173
138
182
195
206
210
176
118
200
216
197
271
168
240
218
215
184
268
176
166
226
221
178
210
199
174
215
223
206
194
174
236
175
250
190
183
209
248
257
207
121
233
166
181
229
219
202
178
207
218
170
155
200
219
136
161
166
196
188
185
210
189
218
233
210
162
129
197
145
242
198
204
209
205
243
223
151
173
228
235
146
232
232
160
142
171
159
145
220
181
213
226
159
148
228
119
146
180
174
196
208
218
180
241
201
209
182
198
203
203
213
247
177
203
135
218
193
195
178
230
218
149
191
190
252
173
154
226
210
201
229
168
164
187
180
211
214
174
188
208
131
230
280
192
231
245
241
240
238
162
143
224
233
180
224
176
206
188
202
178
210
246
221
188
241
213
256
235
164
180
223
191
186
217
252
138
146
199
178
265
193
260
223
176
164
207
231
215
218
196
247
200
225
226
142
255
198
193
102
268
173
193
231
189
217
237
203
198
176
154
160
225
179
145
189
176
196
178
181
161
225
194
257
244
241
183
169
198
186
240
184
140
289
205
204
141
308
193
159
216
212
223
186
185
213
156
178
193
223
223
126
136
246
209
144
194
218
189
143
218
242
193
217
193
198
161
219
146
217
186
230
200
240
157
153
226
188
272
180
149
225
231
236
210
286
236
211
168
162
157
162
129
147
190
230
218
236
227
207
258
192
184
185
242
275
235
235
171
230
195
271
259
159
225
272
239
197
170
154
137
247
222
184
199
174
157
187
181
232
204
173
198
235
208
181
200
153
211
212
185
247
168
224
198
172
234
143
253
216
206
217
153
199
150
226
218
227
184
216
157
157
221
172
197
136
221
271
208
234
93
148
179
232
198
194
203
114
194
222
194
215
209
173
235
145
186
163
218
148
183
255
176
204
229
220
183
224
186
249
169
180
234
235
238
191
184
168
251
229
238
239
196
209
177
269
210
258
169
167
223
224
222
136
203
196
208
200
196
169
186
203
257
186
199
143
152
191
239
226
193
156
201
249
141
188
217
268
192
183
194
212
190
189
172
234
159
229
180
183
235
156
159
178
221
173
211
178
212
220
233
191
175
257
226
241
190
226
203
167
105
220
254
205
200
195
211
203
166
188
166
117
242
124
206
118
252
207
277
230
238
243
236
202
280
252
227
183
156
225
235
186
241
136
132
203
188
203
142
135
231
165
215
196
178
187
225
192
167
219
241
161
207
173
216
165
178
190
220
234
240
198
208
214
268
197
226
276
160
176
225
123
255
200
147
212
155
204
173
228
271
178
188
214
185
222
128
275
236
150
167
211
161
248
192
254
192
222
220
197
227
152
204
186
196
190
224
206
175
200
285
141
156
208
285
197
211
225
183
209
210
174
281
188
229
223
179
241
237
201
218
179
230
245
293
234
178
252
172
182
211
205
209
243
176
167
222
210
221
243
176
137
262
231
195
189
170
263
244
217
221
190
154
247
227
251
189
153
167
171
233
251
176
182
199
183
133
164
232
190
220
225
215
129
214
250
182
211
195
179
234
165
221
183
169
171
158
224
269
176
269
222
221
181
236
161
192
232
210
212
223
132
209
189
200
206
154
192
166
199
259
205
178
187
173
232
181
170
158
218
190
224
179
156
246
183
214
188
232
138
205
206
146
256
244
178
242
216
171
138
216
200
194
225
205
182
173
242
178
190
200
207
181
237
258
176
146
152
222
177
181
263
182
170
197
241
190
221
168
262
160
224
230
175
171
208
213
258
233
239
182
220
159
195
204
230
171
224
231
247
167
186
197
183
159
203
201
229
221
172
199
187
186
148
162
135
119
144
240
203
192
221
195
170
191
139
161
250
152
142
228
175
217
170
226
159
166
229
156
181
214
179
228
228
237
202
215
226
215
187
122
117
220
187
241
241
215
190
161
231
201
243
201
238
95
183
241
144
218
177
249
182
174
213
193
244
193
189
203
180
222
230
209
221
115
183
199
235
219
229
148
152
199
204
251
188
187
220
231
151
141
200
163
190
260
206
209
225
165
181
183
237
202
218
198
194
195
208
226
253
117
215
233
165
188
218
226
205
221
210
161
212
149
211
192
221
140
188
167
201
193
196
209
231
122
203
186
234
240
213
181
153
187
212
198
185
198
197
257
198
250
226
217
201
221
148
203
199
234
226
209
153
199
233
181
277
169
234
197
242
242
221
236
192
175
169
221
220
230
188
226
184
228
191
233
192
224
199
233
218
171
252
221
172
211
211
199
213
189
228
252
192
204
169
268
203
249
233
192
219
179
222
166
200
204
192
212
173
193
201
185
214
221
197
239
169
178
176
214
199
207
143
202
197
133
243
177
251
237
160
165
208
198
160
227
237
248
213
250
203
238
190
211
221
149
214
200
279
183
144
178
147
219
190
192
252
129
197
229
196
193
279
275
217
210
204
197
161
203
212
188
192
199
219
239
169
197
151
182
213
288
164
202
181
189
194
191
210
238
189
222
145
226
224
225
165
137
214
258
190
266
260
165
214
200
220
219
180
237
205
155
182
231
261
215
285
250
135
185
210
142
192
222
238
182
230
243
201
237
121
224
195
178
175
131
200
129
213
232
225
260
190
144
181
219
226
178
213
190
233
219
214
177
264
199
223
162
236
174
225
222
169
180
167
169
224
243
199
218
195
248
229
204
189
229
188
209
190
226
155
218
183
187
176
142
171
191
224
247
269
225
212
143
193
127
191
256
218
205
217
226
207
190
160
299
244
225
199
265
163
144
188
212
176
224
171
229
250
207
242
240
121
174
230
246
233
251
191
220
233
130
207
245
106
193
197
181
198
231
246
228
278
195
207
235
220
159
201
189
214
227
230
208
213
182
220
193
144
117
213
239
225
238
268
227
185
206
261
161
221
196
114
191
212
218
149
269
186
202
228
150
161
170
218
224
211
207
180
129
168
226
177
183
243
218
230
221
197
205
207
181
201
206
245
171
154
229
214
177
198
230
184
209
167
110
180
189
195
114
176
211
175
237
156
236
219
236
185
134
308
208
160
247
164
154
187
213
219
172
162
216
155
198
185
167
170
193
167
172
177
185
225
221
261
143
209
205
229
194
199
182
190
293
172
216
195
159
224
213
271
170
189
215
190
167
208
166
221
212
251
205
132
210
241
228
161
192
193
151
211
219
155
184
156
171
258
234
215
173
218
213
258
132
165
199
181
160
244
223
158
247
255
216
207
180
160
154
201
176
152
203
204
213
156
206
226
188
209
205
213
113
221
217
220
252
174
198
257
210
283
161
201
212
193
219
158
236
228
151
174
203
136
181
196
194
175
184
166
166
166
196
209
196
204
204
144
227
208
261
137
198
166
199
194
198
175
248
185
171
208
211
262
181
197
198
156
241
259
104
186
218
192
202
215
232
197
167
218
217
122
189
234
176
215
179
174
168
185
169
230
110
214
209
182
219
196
206
228
251
207
262
208
192
206
192
235
242
194
232
233
184
181
242
140
164
191
129
209
225
233
253
226
229
237
157
234
243
241
257
166
143
166
266
236
208
164
165
208
169
153
196
151
198
238
158
180
216
176
131
187
187
208
207
233
216
143
162
200
231
176
203
153
196
165
200
200
199
214
180
193
260
220
198
175
264
225
209
208
132
214
207
167
275
207
169
211
236
208
193
192
190
184
209
228
190
179
223
272
222
217
179
162
206
169
197
202
179
179
225
208
223
248
184
237
197
201
234
173
212
237
234
205
206
201
155
207
147
270
157
209
185
222
171
200
170
169
215
159
160
170
229
157
222
189
231
181
208
221
170
193
202
231
196
197
133
208
221
123
174
162
228
258
186
150
208
216
188
177
188
180
204
190
192
192
258
150
238
208
171
141
183
209
209
231
215
219
206
189
204
204
182
196
261
142
134
200
206
204
179
168
176
173
242
185
159
166
120
192
228
230
222
187
243
178
223
193
230
178
199
204
229
183
203
182
182
213
208
180
181
159
225
154
185
206
228
182
251
172
172
212
179
158
179
273
171
234
295
267
213
213
229
149
211
171
209
219
175
214
225
209
171
194
240
205
263
224
206
184
187
199
173
245
159
244
200
192
233
220
239
182
218
186
265
166
236
218
234
180
228
275
190
237
256
160
176
195
206
140
182
170
123
178
227
163
209
215
203
161
192
161
226
195
126
192
171
187
174
197
202
159
155
261
154
141
211
250
170
190
215
190
212
183
245
241
203
152
223
168
184
175
180
267
222
175
207
256
229
205
179
156
266
194
224
214
250
163
188
180
187
187
176
245
211
188
157
166
234
200
233
186
216
202
236
230
162
199
206
223
151
199
254
253
246
269
202
196
211
183
170
188
142
145
152
182
239
195
269
183
210
255
157
196
222
201
188
186
163
174
198
248
229
246
173
215
219
235
218
198
156
163
234
226
192
166
183
197
226
204
186
266
161
186
217
239
180
262
195
174
214
179
252
242
197
235
233
210
136
229
164
192
214
239
181
246
190
165
207
193
265
184
217
215
217
217
151
229
228
180
187
210
181
257
158
198
215
223
150
111
240
227
208
214
182
95
244
217
194
188
242
196
202
223
246
233
217
188
259
224
185
216
160
199
196
201
247
281
214
211
245
172
253
219
294
231
213
211
187
177
236
203
198
250
170
208
226
221
146
246
172
172
219
202
192
206
215
229
211
225
202
203
223
164
174
228
255
170
189
201
231
196
211
229
225
166
207
210
185
194
184
253
227
178
221
233
190
162
165
180
203
160
168
208
198
236
256
206
179
194
175
138
216
195
221
239
159
183
228
229
198
185
142
150
202
168
205
214
237
232
226
173
242
158
237
181
187
212
219
236
233
162
170
276
173
202
260
174
155
235
220
228
193
266
236
257
186
185
162
193
194
177
166
205
222
181
216
171
208
226
235
185
164
149
174
202
260
235
180
215
187
225
196
172
168
191
158
193
159
213
182
243
153
184
211
205
256
195
305
175
255
249
234
210
167
238
159
251
220
257
210
189
203
129
200
160
172
214
186
193
228
101
192
232
176
188
135
189
267
193
208
244
189
254
133
208
223
208
168
140
202
184
240
232
203
232
206
152
230
139
164
212
231
249
238
226
215
179
245
176
201
261
187
206
179
215
255
169
136
175
145
181
259
224
176
231
223
158
165
141
228
160
223
117
205
253
172
228
242
217
161
138
218
143
234
204
239
225
198
242
198
223
164
267
192
215
184
274
164
182
185
205
209
241
204
197
197
229
257
194
185
203
168
184
276
192
185
219
189
203
271
191
253
190
241
266
235
177
194
210
159
172
197
256
172
182
199
207
206
146
212
148
287
217
194
231
165
206
108
220
218
235
231
195
189
202
244
244
167
240
205
140
263
271
261
125
187
240
200
258
190
259
140
161
234
153
190
194
149
215
233
221
148
204
182
221
193
161
112
256
172
219
226
215
161
177
108
179
248
131
247
219
205
166
177
257
205
203
150
201
186
169
245
232
237
148
162
192
149
253
169
216
153
244
166
112
169
184
156
189
201
234
174
229
222
194
253
140
245
174
260
193
239
240
235
228
197
195
188
211
145
209
232
239
226
215
189
186
195
204
262
161
211
261
242
220
167
161
192
156
160
168
227
179
187
147
147
225
199
137
237
189
167
196
206
169
190
218
205
150
179
144
209
172
205
195
196
169
166
158
217
224
209
232
144
218
254
214
259
231
248
186
165
220
204
204
162
202
219
270
121
180
222
199
239
150
167
122
209
283
206
216
207
252
232
158
217
180
174
179
174
172
254
249
180
191
118
238
253
177
233
217
203
220
153
191
229
172
187
207
257
161
186
154
248
271
173
247
218
274
198
153
190
208
180
171
166
117
90
183
194
234
157
166
189
186
188
245
249
230
242
188
221
225
179
231
140
225
211
166
239
212
152
209
202
209
144
221
155
194
195
119
126
198
202
259
168
198
222
230
229
236
161
154
188
217
154
251
216
234
246
170
228
237
195
149
215
252
173
204
195
199
218
189
242
111
203
229
146
208
227
197
172
241
284
160
167
195
182
168
232
254
221
205
275
236
253
218
207
258
217
231
216
244
164
224
188
178
240
161
157
188
208
240
150
209
268
217
161
198
183
177
185
210
225
180
270
170
136
236
188
225
233
206
187
228
199
258
221
218
207
243
217
183
224
216
161
232
241
218
180
233
185
210
156
233
236
221
208
212
150
260
192
171
227
180
220
272
191
148
143
194
240
165
213
211
209
231
249
212
157
170
225
202
224
155
130
229
257
214
215
206
222
166
255
240
219
207
179
221
238
180
213
196
184
227
222
162
225
259
184
199
176
267
232
241
188
198
174
125
186
201
149
248
241
172
180
148
175
196
218
239
223
228
249
199
220
205
203
226
187
254
152
207
215
206
166
117
236
155
224
190
177
215
133
224
155
222
178
173
205
193
216
208
173
262
203
182
173
176
153
186
93
247
186
180
193
192
176
216
201
240
191
212
243
228
256
239
175
219
221
248
177
192
121
231
186
244
278
233
185
199
208
205
231
153
193
184
168
167
229
237
199
199
195
193
194
173
250
192
239
199
168
187
231
199
227
227
200
263
186
225
185
171
176
249
210
165
184
128
220
169
166
175
269
170
219
199
218
176
222
229
237
175
246
231
189
180
225
201
208
249
221
169
203
220
189
194
185
199
209
196
197
231
176
207
166
171
198
213
190
188
224
262
191
241
186
149
205
138
185
217
199
183
263
157
253
200
184
199
214
228
155
221
160
217
142
192
173
223
218
201
235
214
197
219
184
176
209
177
196
186
231
207
192
268
219
157
173
189
209
188
217
194
240
144
161
194
195
204
232
200
198
233
188
191
205
257
185
228
177
213
210
256
199
200
170
255
222
207
166
220
245
231
193
174
258
143
193
201
198
206
178
175
222
219
202
166
218
211
247
168
220
267
181
186
176
140
156
230
224
177
231
209
221
215
172
254
187
171
199
167
204
202
154
170
202
242
206
219
239
222
231
232
224
234
190
216
238
180
167
174
266
220
201
214
254
158
205
224
222
222
196
199
176
88
199
184
157
212
230
179
141
196
249
265
151
195
251
172
239
165
194
203
185
187
183
238
147
188
151
202
187
198
266
153
217
205
184
188
203
191
205
190
184
182
203
252
172
214
193
170
202
206
143
224
224
101
226
266
220
170
215
200
226
155
197
105
176
179
215
172
169
241
220
208
178
181
162
187
192
184
273
178
240
174
229
196
217
196
208
173
197
201
234
180
228
142
212
168
154
237
214
132
204
185
174
119
209
248
161
241
205
190
234
113
210
310
230
161
158
169
191
184
244
201
156
176
208
177
231
219
222
197
185
195
190
175
228
190
254
198
157
218
238
193
214
208
196
223
189
214
214
222
148
158
225
233
239
173
200
219
226
165
184
210
220
210
211
137
193
161
221
164
223
157
175
263
173
208
172
206
212
147
152
213
194
176
237
239
198
133
143
208
313
227
242
259
223
231
170
223
156
188
221
243
188
229
250
162
216
211
182
207
176
218
195
141
196
171
202
213
208
260
187
141
217
173
209
196
171
152
190
197
145
232
217
186
216
223
205
203
221
219
257
196
263
155
255
155
172
197
215
178
217
203
218
193
230
210
208
197
155
197
191
234
180
146
127
152
235
193
277
236
266
214
208
224
229
181
182
230
250
219
229
178
231
178
244
208
205
161
197
200
199
170
183
225
238
135
229
194
192
189
225
148
196
178
199
235
160
185
173
172
195
211
208
199
144
213
210
182
180
154
261
197
246
197
174
190
191
246
203
257
217
174
152
249
157
217
226
201
165
168
222
240
201
169
141
193
247
197
236
186
216
139
207
192
187
220
199
273
174
183
245
186
174
221
215
219
201
223
277
178
225
184
228
188
206
196
235
170
190
159
172
208
174
153
182
240
204
174
206
138
242
212
154
178
144
151
193
157
221
237
203
192
168
222
216
260
215
202
146
243
231
239
238
243
202
211
191
241
258
180
212
245
234
226
215
175
176
212
164
203
272
257
247
230
238
107
208
177
208
214
155
189
216
206
185
197
257
188
168
227
244
248
231
219
164
160
190
237
261
188
238
189
218
193
237
223
240
181
246
234
194
238
200
171
204
155
191
243
160
127
176
207
151
185
196
198
237
173
260
167
236
175
174
188
187
172
208
166
172
157
222
225
168
303
160
279
191
179
247
237
201
182
230
219
260
182
178
213
196
186
194
178
178
204
251
191
191
248
181
157
176
170
168
236
139
200
233
206
199
203
246
193
192
118
204
174
143
189
168
217
227
140
176
151
233
166
229
223
206
161
186
223
251
168
220
232
216
193
242
173
226
256
209
216
163
172
192
194
206
204
218
173
179
160
162
175
131
238
181
226
183
169
207
214
177
150
222
188
161
144
177
203
182
193
231
214
167
150
240
258
213
215
146
208
191
173
228
225
177
203
213
239
210
239
196
174
223
207
263
168
199
222
138
189
240
198
252
171
215
240
190
237
208
225
173
197
266
250
198
218
131
222
231
141
161
244
179
134
240
180
228
220
180
185
213
226
213
246
191
175
232
193
195
207
181
191
169
182
206
233
153
243
146
196
254
177
157
207
158
185
185
192
218
171
218
159
232
231
218
166
203
252
167
176
179
150
215
239
222
214
216
174
217
209
221
236
204
225
192
222
132
154
112
226
191
229
147
169
194
232
146
216
186
205
202
225
242
190
199
160
229
207
214
150
204
93
179
189
190
152
223
201
240
207
227
171
180
189
150
261
209
110
196
135
207
205
245
152
233
238
183
156
173
183
176
197
225
159
178
162
119
206
177
159
174
252
201
225
210
162
200
211
190
237
158
182
84
195
225
170
193
149
159
207
231
169
189
246
187
231
223
201
195
200
124
160
229
182
167
208
198
222
217
192
146
188
172
171
158
220
163
237
173
219
205
197
253
155
192
221
182
186
205
216
196
218
276
186
204
178
144
258
151
230
205
198
225
152
220
176
182
188
231
186
206
224
154
193
217
144
139
216
180
147
208
280
242
186
241
200
210
163
234
198
180
177
170
179
205
188
139
216
246
182
166
183
148
172
177
247
134
197
174
173
178
180
268
180
242
210
257
198
245
182
190
174
182
155
226
207
149
187
265
200
249
137
209
233
212
211
195
169
240
178
219
168
194
174
177
186
176
193
140
215
220
254
163
174
223
208
194
163
244
211
190
223
241
229
175
170
128
194
241
169
172
237
225
147
221
237
192
244
243
182
191
244
149
217
167
191
187
240
203
201
216
207
249
240
182
141
120
187
125
188
236
157
230
200
210
176
161
122
208
155
228
174
215
194
235
197
173
171
230
221
201
193
182
216
208
243
194
232
133
146
155
189
179
201
167
180
188
144
292
170
235
218
255
215
186
207
207
198
230
167
233
188
215
128
206
238
233
194
169
135
205
184
207
177
164
225
206
193
222
180
137
228
211
209
170
180
191
218
179
233
224
219
198
158
176
163
195
246
204
188
222
204
145
189
213
209
177
164
122
238
181
188
186
231
262
206
187
164
221
197
226
178
216
175
209
253
255
140
172
213
156
244
208
231
211
200
248
202
176
192
192
199
264
198
164
157
166
150
190
250
242
197
160
185
224
189
180
178
105
190
178
239
158
156
211
256
239
144
154
219
233
216
188
197
173
186
185
278
217
255
160
179
236
196
280
191
248
289
230
165
206
238
231
156
222
180
201
219
191
205
183
149
185
195
207
183
218
197
212
222
173
195
137
221
234
247
195
162
213
222
168
245
258
227
199
198
184
209
180
208
181
165
217
225
222
193
223
180
180
251
196
205
211
199
185
217
184
235
259
170
161
209
206
222
246
184
126
228
127
215
164
178
176
208
163
163
234
185
215
140
220
197
180
229
208
229
268
216
186
182
194
198
208
185
163
183
179
216
221
170
227
184
220
249
223
229
156
241
233
278
208
238
165
131
172
210
154
166
179
170
197
192
235
252
189
193
221
238
241
164
191
185
203
203
261
164
188
227
224
220
193
203
201
214
162
215
206
157
199
197
189
141
129
165
158
193
175
161
176
123
154
206
249
215
201
152
141
196
211
162
135
205
182
190
207
224
233
172
181
237
214
225
208
221
164
221
202
218
157
223
210
245
203
195
155
231
184
162
249
153
197
261
137
267
168
143
224
196
161
183
231
242
183
181
251
194
205
183
215
205
241
148
186
232
237
181
165
167
187
212
218
213
239
181
198
212
134
187
205
196
183
210
188
228
170
210
195
190
167
205
257
232
175
125
128
168
178
188
227
200
187
176
195
221
188
212
149
211
177
179
199
225
214
170
175
216
228
194
184
204
205
206
225
172
222
204
259
185
220
239
159
199
190
180
201
194
201
252
206
165
308
231
223
224
235
194
186
186
148
191
200
214
170
231
199
212
214
177
190
261
228
237
182
176
239
183
199
180
184
198
221
192
182
211
196
204
233
190
240
256
175
211
146
218
297
240
147
233
117
221
207
272
236
210
188
249
191
199
247
146
125
271
183
233
238
201
222
197
225
246
172
171
135
148
244
183
187
230
160
245
208
212
181
157
205
178
217
197
178
150
225
231
174
226
205
219
221
180
216
166
196
219
152
264
254
214
256
181
235
217
117
199
181
145
192
167
190
159
132
195
194
156
213
174
182
224
169
231
232
235
142
240
153
182
186
220
186
182
182
196
210
207
187
231
236
228
178
199
234
207
225
276
163
217
168
238
226
147
177
211
237
112
238
264
152
223
188
211
276
148
258
128
253
146
223
201
246
211
196
242
193
243
223
170
207
145
187
205
183
205
246
228
274
157
151
230
267
217
232
227
218
197
230
200
220
215
200
196
170
225
181
239
189
253
176
276
231
190
222
202
158
189
204
166
199
201
189
164
199
219
264
128
223
197
237
225
233
261
196
175
191
167
252
154
241
141
153
180
153
183
293
185
164
206
202
228
236
212
244
151
179
215
158
225
221
203
151
164
184
196
224
303
260
180
181
176
230
178
279
246
209
242
189
202
209
206
144
224
194
222
210
175
223
191
179
212
214
215
174
231
227
221
222
259
200
250
237
261
234
183
240
202
291
185
123
178
165
147
182
192
216
142
243
188
151
223
228
184
242
196
241
187
161
188
203
225
195
190
215
227
217
128
226
159
180
188
254
200
186
224
238
182
226
220
195
218
195
195
209
215
231
264
243
185
224
197
197
239
161
217
228
224
174
259
241
154
163
195
231
211
125
170
174
206
216
199
207
197
172
187
203
220
171
207
297
191
196
163
167
256
282
225
186
218
231
254
285
140
219
193
203
169
225
260
159
195
195
223
176
178
272
276
200
228
217
228
254
189
196
237
170
170
223
202
162
202
204
206
161
246
243
243
209
215
250
230
209
193
253
154
199
164
180
188
226
218
198
223
201
169
196
140
181
208
187
178
173
258
286
197
233
217
193
183
166
177
217
202
228
202
190
197
214
117
222
225
198
227
170
170
217
141
145
188
219
173
196
188
240
246
215
174
187
242
188
205
224
220
194
188
101
215
265
166
187
221
262
266
179
221
197
218
220
213
164
209
210
235
267
229
185
249
199
231
170
201
176
214
244
229
220
204
236
262
166
236
241
192
248
168
183
223
161
144
232
222
234
192
174
185
239
162
221
235
203
169
215
243
168
128
242
157
254
156
231
238
220
262
201
156
182
178
206
191
219
201
237
176
221
218
228
134
148
198
180
204
216
209
170
181
199
237
230
177
203
205
294
239
153
205
216
219
214
191
232
207
205
120
238
173
199
184
132
155
117
224
192
102
187
230
197
224
149
206
218
217
177
170
211
190
238
254
185
197
146
230
263
225
207
239
186
273
140
173
188
201
223
227
183
174
198
196
186
168
188
204
176
187
222
176
213
158
225
260
180
218
156
179
173
232
247
159
224
227
211
178
134
231
219
170
122
190
262
250
181
221
211
208
228
206
202
182
216
171
219
162
155
219
232
218
231
208
108
225
225
229
198
232
208
194
193
248
184
259
229
187
214
226
228
186
186
217
260
261
178
150
204
218
203
221
217
264
164
261
225
155
151
159
164
159
245
173
217
183
185
203
183
232
181
183
234
177
239
192
190
164
182
245
194
207
183
218
237
205
162
108
205
189
169
159
247
199
248
212
213
238
209
179
216
193
147
211
234
213
165
217
150
216
248
183
206
192
165
212
168
214
210
175
152
168
238
199
210
252
248
184
213
148
205
142
215
236
170
202
200
207
161
247
175
237
208
178
204
191
203
167
197
193
178
160
198
233
229
177
192
257
206
166
119
171
219
242
171
189
232
166
166
224
189
217
211
204
186
236
164
215
173
229
213
198
248
173
228
220
178
208
147
185
175
236
140
182
195
202
194
202
250
265
206
234
168
248
228
234
215
186
193
207
237
139
172
148
182
177
238
183
221
199
239
204
176
155
232
250
159
230
218
195
159
127
206
245
195
202
203
182
215
205
217
208
151
229
208
245
169
209
186
217
165
189
117
214
235
236
186
170
252
235
186
203
264
176
189
274
265
116
173
267
240
199
160
200
288
186
165
212
202
260
242
187
202
156
196
256
211
250
201
166
165
239
206
191
183
189
229
191
158
216
225
175
242
241
165
228
169
217
248
120
188
243
190
232
231
164
208
205
199
246
228
165
186
188
214
196
159
185
165
127
189
160
257
237
160
174
273
212
235
154
217
256
231
255
217
207
178
206
197
213
183
235
201
204
212
191
238
222
179
239
212
160
237
128
223
214
228
233
121
195
215
212
214
170
122
199
242
253
214
207
223
229
220
170
177
197
229
172
196
175
245
222
217
236
213
225
183
225
197
193
130
236
134
165
213
169
168
200
199
137
195
183
219
196
206
217
243
214
153
201
177
233
196
228
153
171
210
223
173
174
217
196
215
187
257
241
170
203
205
257
219
208
205
181
198
230
214
257
204
157
167
238
239
187
283
206
191
230
133
239
223
267
247
188
194
160
205
216
204
217
179
155
213
192
213
153
133
191
167
215
212
223
205
170
245
216
241
117
221
183
237
165
239
234
182
269
231
242
193
173
197
204
250
160
180
122
216
174
203
232
180
224
135
229
222
271
172
239
182
250
201
242
178
209
227
195
192
157
249
179
168
192
193
214
200
136
255
290
208
162
220
212
229
169
222
166
228
174
229
176
199
253
156
162
205
192
265
160
148
222
265
200
234
160
220
181
245
218
140
181
128
146
207
167
273
143
172
240
206
161
174
173
203
222
153
175
231
192
185
215
122
137
199
104
194
213
223
176
170
165
211
189
184
276
231
183
170
187
245
193
197
175
215
154
272
215
217
204
161
243
247
165
156
210
232
211
139
194
206
227
233
192
172
258
207
227
158
175
193
202
211
222
210
218
241
223
194
268
184
182
237
148
227
247
224
180
200
136
193
171
219
209
207
256
188
192
166
163
164
174
220
162
295
238
109
200
256
183
171
183
167
235
212
190
228
166
203
219
182
157
161
244
210
260
258
147
195
170
218
217
176
210
219
233
153
216
210
165
240
231
217
182
182
231
208
219
230
275
227
196
142
222
156
250
161
250
252
237
169
185
174
201
193
189
169
215
257
236
193
225
171
220
129
195
272
180
207
222
217
216
188
234
190
199
245
239
240
259
224
169
208
254
156
250
193
241
204
166
179
239
218
239
219
178
214
204
186
178
202
139
211
232
239
247
232
199
179
242
192
140
181
168
220
213
240
177
209
197
222
159
234
237
165
197
189
259
192
205
176
204
213
159
152
207
191
171
258
167
194
178
210
229
186
193
261
212
177
167
199
184
166
256
185
185
228
207
222
158
277
150
259
197
201
190
177
229
224
161
206
137
243
223
196
145
202
244
190
194
240
179
272
202
156
176
223
186
176
247
241
230
270
193
189
220
191
213
179
264
166
211
263
193
179
167
198
215
242
156
229
154
248
158
232
194
169
236
174
189
229
197
209
232
166
227
163
144
164
161
273
206
223
204
216
185
258
163
249
182
170
153
198
180
147
192
120
143
213
186
177
190
184
186
203
185
192
254
194
224
247
168
222
227
211
262
169
212
166
222
210
176
199
253
194
206
132
193
174
242
208
185
239
218
200
181
223
204
229
219
239
231
125
153
188
174
225
167
161
225
227
170
154
185
188
243
215
130
197
191
198
185
278
201
214
215
210
237
189
154
226
199
228
174
185
164
204
242
117
208
227
261
231
202
207
204
249
219
143
240
208
179
170
212
167
179
235
190
165
222
161
194
192
210
230
286
192
203
173
187
163
175
216
198
174
218
212
182
154
250
192
212
166
223
164
148
207
130
221
126
181
192
158
147
205
195
185
249
128
208
262
169
225
227
232
185
205
210
191
207
204
269
216
167
224
211
200
230
239
243
203
150
227
150
220
234
185
211
169
184
175
221
207
242
209
203
242
193
178
134
183
206
211
227
158
208
210
159
205
176
187
250
205
129
253
225
241
215
127
218
168
266
201
219
203
211
93
250
201
201
199
231
203
179
150
144
174
142
200
270
200
200
163
159
208
200
170
163
207
204
244
243
213
196
141
192
219
167
207
219
261
231
197
215
218
230
239
238
186
175
168
189
234
229
179
172
175
202
229
117
187
208
128
187
173
237
215
250
174
187
241
179
147
215
197
262
162
202
172
237
161
161
174
234
237
226
208
181
215
220
196
171
163
205
192
134
241
173
221
231
223
168
217
207
151
139
182
255
183
201
181
211
218
181
225
194
228
226
146
160
219
218
132
141
177
196
181
227
219
187
239
221
170
181
246
166
151
191
191
192
229
227
170
184
195
221
177
184
223
247
167
222
206
233
250
225
191
222
185
163
258
145
148
220
137
157
173
191
203
216
246
126
207
183
264
243
160
199
227
122
183
215
182
211
204
249
171
213
168
241
229
179
184
237
178
190
183
210
174
243
254
201
226
234
96
184
195
211
209
235
182
135
208
160
146
219
220
208
167
176
246
213
204
224
165
201
111
165
209
184
222
196
191
190
214
191
148
188
162
196
150
225
215
244
148
230
239
249
143
156
201
171
220
166
189
189
136
212
186
201
185
203
241
181
138
153
214
187
208
157
213
207
198
229
224
183
251
140
225
140
224
187
214
183
197
175
196
160
207
227
238
217
190
173
188
231
189
216
217
237
198
244
208
232
255
163
108
238
220
142
163
138
172
148
224
196
201
160
209
242
200
213
194
239
152
245
207
148
174
204
260
218
225
124
164
183
158
194
182
182
217
205
188
185
220
217
220
163
147
202
176
236
181
185
239
196
177
237
193
210
170
212
240
231
218
116
254
162
237
202
159
194
185
114
228
241
211
199
169
182
170
166
185
146
209
198
225
140
252
202
276
165
202
223
179
181
171
208
218
203
206
249
203
157
207
221
220
173
223
207
200
118
181
168
230
137
278
196
203
243
221
232
223
201
205
196
223
222
196
131
194
212
183
169
175
149
201
180
250
232
272
140
211
172
134
154
221
236
250
213
150
186
208
193
197
141
227
186
202
205
196
226
244
188
236
252
222
185
187
126
193
202
199
275
199
140
163
171
149
182
207
168
207
172
191
180
218
196
166
253
262
177
197
219
193
150
213
201
142
152
151
202
167
172
200
236
228
196
192
194
207
281
248
202
127
211
212
214
150
169
225
138
180
201
207
210
185
173
161
173
174
196
241
168
166
200
217
198
166
178
257
124
215
157
251
218
177
138
217
235
146
181
204
238
218
189
250
192
169
184
153
209
234
219
228
145
189
194
191
236
184
213
167
212
179
158
145
203
205
254
200
248
234
245
141
229
201
243
284
207
170
221
191
233
218
186
204
231
159
178
178
241
240
186
207
234
132
205
193
253
162
148
185
232
242
129
240
165
228
179
238
222
169
141
228
161
208
219
247
217
202
181
159
185
185
250
209
203
136
141
183
183
277
203
219
136
159
184
145
155
165
156
272
158
217
189
208
236
258
222
171
156
248
224
179
191
212
174
197
192
161
139
217
251
138
153
235
207
183
231
132
230
252
260
187
214
143
215
120
202
168
240
178
219
196
198
176
187
234
206
214
207
205
280
153
175
240
276
167
195
147
205
212
222
159
166
219
225
175
168
232
186
188
175
131
208
197
190
164
254
245
203
202
220
197
193
295
218
242
249
226
233
144
227
154
160
157
200
180
209
179
225
202
207
148
197
173
229
179
246
205
246
207
188
203
167
236
203
231
189
186
234
224
156
201
182
207
210
209
216
231
216
219
176
159
161
185
204
216
201
183
182
212
207
249
211
218
202
189
182
212
215
199
192
277
236
201
175
174
249
206
243
168
165
200
175
211
194
254
183
207
207
220
233
214
240
210
206
142
242
222
260
138
164
201
184
221
200
200
248
182
198
216
223
191
208
155
171
147
207
189
240
167
201
226
165
168
195
202
265
212
168
223
137
184
178
188
189
144
164
184
190
162
217
198
202
191
263
233
236
192
236
153
169
189
254
172
183
170
187
233
220
230
234
201
162
213
247
155
186
214
138
222
192
163
213
196
231
208
205
182
199
181
187
173
199
187
241
209
184
211
227
266
183
202
203
241
152
200
216
203
236
172
151
237
147
215
185
209
192
257
223
212
203
256
168
125
220
181
199
207
181
277
167
242
215
230
175
225
206
229
199
182
122
214
152
245
223
176
246
253
226
239
243
220
228
259
259
195
203
219
243
261
184
134
229
233
184
183
241
196
199
186
162
230
194
244
128
238
199
220
191
141
154
226
227
181
174
243
155
210
203
221
234
196
227
193
182
229
151
228
222
178
174
241
171
176
255
210
191
231
243
263
151
202
237
262
237
243
216
170
195
219
206
205
222
264
269
214
191
188
241
213
181
239
255
199
167
220
127
199
185
161
249
238
196
179
236
179
160
216
158
206
201
214
232
182
231
214
185
181
178
223
220
160
118
198
266
179
112
160
235
184
198
199
169
227
213
167
188
181
242
215
167
172
166
137
170
212
185
129
198
213
179
216
202
167
220
224
151
213
157
209
118
193
204
247
133
132
226
194
201
227
214
204
221
213
192
159
205
218
230
136
184
228
192
215
191
227
202
204
164
189
234
240
231
215
219
133
197
156
235
242
196
177
231
144
246
243
140
175
170
215
148
118
178
201
210
254
191
206
186
191
181
202
214
163
174
166
201
204
190
247
156
194
194
209
259
202
183
189
220
194
276
215
140
222
138
206
153
137
194
162
226
222
211
174
192
133
230
176
224
172
194
251
224
168
238
175
252
265
182
151
164
164
148
158
242
211
222
231
181
230
218
237
185
138
209
233
201
183
233
169
185
173
220
206
165
228
181
182
188
202
200
218
206
204
172
245
179
183
228
205
235
235
207
218
263
216
198
266
155
200
188
193
190
233
183
231
175
240
252
215
196
198
235
198
151
196
156
196
258
218
212
206
186
193
178
155
243
200
137
242
232
251
203
163
174
172
299
177
163
156
189
265
180
173
207
263
184
134
209
161
172
159
149
204
179
238
225
185
204
205
226
193
232
222
195
187
223
185
211
217
163
190
217
169
213
268
186
165
203
204
276
142
156
144
214
242
203
158
142
258
157
144
218
185
157
236
234
231
278
166
223
216
165
218
231
240
144
174
198
255
170
201
194
263
206
205
187
153
280
178
198
228
228
184
235
233
241
219
243
185
197
199
214
216
244
182
212
205
217
217
240
230
229
229
209
245
192
196
230
119
135
216
136
250
139
253
165
142
242
225
235
244
172
240
226
140
225
180
174
169
142
184
217
220
181
226
196
246
199
257
195
242
228
197
187
211
215
200
225
157
197
218
226
241
113
203
207
223
224
231
219
230
261
206
204
262
247
219
143
146
181
249
226
202
256
181
222
166
204
180
173
141
250
181
252
197
171
201
197
208
232
227
234
202
200
149
176
137
162
226
236
239
184
206
155
209
227
173
231
140
191
227
172
254
244
218
218
207
256
159
153
210
203
201
220
202
196
213
225
177
207
204
210
271
191
250
186
168
165
234
225
231
203
219
174
192
162
215
198
154
230
233
206
215
204
213
175
177
224
209
139
212
226
187
215
191
195
273
184
174
143
225
155
200
197
230
177
206
184
207
174
247
179
210
210
187
211
209
234
181
199
234
204
200
211
229
194
163
249
199
200
198
188
210
225
140
249
241
188
268
235
230
186
164
217
221
190
227
206
205
223
203
180
184
227
207
213
210
202
198
215
268
107
218
161
137
175
250
151
212
234
139
168
181
248
215
186
231
201
206
246
178
175
183
162
184
236
206
189
175
204
207
223
218
231
191
166
160
219
229
171
231
154
129
261
187
225
169
181
179
205
233
197
171
181
196
211
143
179
276
201
202
181
210
217
230
192
259
223
197
199
250
258
194
180
202
189
179
202
150
158
208
261
206
164
282
185
218
211
200
245
204
166
205
202
274
220
183
151
245
184
153
211
183
190
223
219
220
208
98
166
197
230
202
137
180
203
199
274
218
199
217
189
230
219
256
137
257
219
250
194
102
259
203
177
240
208
287
184
235
211
194
180
166
166
125
237
143
148
213
204
164
129
196
267
217
224
208
268
206
155
166
193
240
204
236
179
149
267
172
149
212
126
186
143
211
211
279
210
140
197
226
213
233
129
222
165
139
192
119
219
261
190
185
204
189
223
220
196
171
167
165
234
205
98
154
127
241
135
196
177
251
174
211
187
131
188
229
174
184
110
185
211
217
152
186
208
244
203
214
213
216
182
241
178
231
165
200
244
215
178
184
175
231
240
185
218
161
162
203
180
212
198
173
208
220
217
213
252
192
206
254
200
192
217
195
210
181
213
140
160
212
126
232
181
183
192
221
266
168
217
200
181
195
265
193
209
176
188
198
195
203
228
254
135
161
203
155
155
188
229
231
180
147
184
195
183
192
254
177
190
188
162
203
184
212
176
197
229
208
179
177
180
215
199
236
212
150
157
170
220
228
180
253
205
182
199
263
188
222
242
164
184
162
252
189
175
196
184
152
230
199
172
163
252
219
158
118
142
241
98
219
211
232
264
280
228
184
290
218
206
223
202
219
146
276
165
214
251
210
183
154
205
204
208
245
206
128
213
160
191
263
185
223
191
219
255
142
176
201
150
205
225
232
186
212
207
192
171
248
208
193
282
200
197
238
191
200
224
223
227
177
184
224
175
210
147
180
206
130
166
192
193
172
196
184
125
172
200
179
179
241
149
217
167
244
200
170
227
157
225
185
307
210
236
199
126
225
148
225
186
207
185
195
187
187
207
218
217
242
226
203
140
221
156
156
205
197
195
183
219
200
167
220
206
229
234
144
222
176
227
203
200
221
245
227
168
242
233
236
173
229
181
233
210
182
177
213
209
171
203
203
167
171
244
196
274
218
171
223
198
174
130
265
197
143
177
178
230
150
198
169
223
177
252
156
167
181
236
222
214
246
195
253
252
156
91
218
199
172
212
204
137
179
303
254
189
219
166
206
230
225
169
145
184
213
217
188
219
237
246
165
149
184
203
254
209
183
217
200
229
226
196
182
158
120
186
203
155
175
175
252
233
188
175
179
150
250
225
194
229
267
220
209
269
252
215
171
210
177
238
161
251
146
194
115
212
190
127
177
184
165
225
232
164
152
154
268
239
220
164
194
243
245
199
146
204
260
182
211
170
211
161
140
219
180
235
183
180
287
196
194
145
199
238
211
215
170
190
139
176
234
192
231
154
200
238
208
163
197
231
188
189
166
211
244
158
172
198
177
229
207
225
160
107
254
186
216
142
210
154
238
236
202
193
211
208
235
199
251
137
275
162
207
194
201
167
217
224
216
236
220
163
168
215
183
217
233
165
205
195
184
228
236
206
170
168
205
175
226
158
237
205
151
246
202
269
218
237
200
175
116
247
226
189
241
178
173
202
169
233
212
185
187
211
159
205
166
183
162
231
227
206
183
235
245
167
156
221
152
225
211
183
214
179
227
224
219
222
184
214
212
201
174
183
232
177
181
246
259
226
207
185
131
216
214
136
205
179
226
224
209
193
199
87
152
228
157
221
136
208
248
205
179
153
143
254
176
138
153
168
227
222
190
141
242
175
181
238
201
203
167
212
274
236
232
210
180
245
210
183
181
208
169
169
186
166
200
200
213
243
205
181
224
143
223
149
171
222
240
199
254
201
221
159
211
135
192
193
197
154
178
219
191
186
190
228
220
194
175
309
184
239
209
173
214
183
201
270
223
175
174
226
213
170
173
198
185
192
207
178
189
180
131
232
150
168
191
188
205
218
173
144
198
205
128
176
177
201
204
162
229
213
196
232
136
186
171
222
245
219
237
173
202
227
203
186
227
193
176
195
235
159
180
199
164
169
222
221
179
245
176
201
229
189
225
166
235
186
212
191
196
235
249
137
206
233
251
165
201
180
179
199
238
216
242
221
198
189
261
201
148
167
211
211
222
149
171
234
281
201
190
185
267
177
158
223
213
160
206
221
225
220
209
210
244
288
207
151
212
241
128
239
244
133
187
164
151
221
205
213
160
188
220
202
217
161
129
224
148
200
200
219
251
233
207
219
245
258
234
177
203
202
169
239
187
215
168
256
180
177
184
234
256
191
211
121
176
233
258
214
207
225
195
244
217
190
231
232
246
261
177
202
186
194
207
198
187
215
255
261
182
252
135
159
195
254
181
271
189
175
203
185
174
192
220
211
196
209
274
217
280
184
184
250
262
207
207
141
227
226
260
192
248
166
191
219
162
163
163
196
243
175
215
168
183
205
154
165
227
221
174
198
232
219
160
228
154
193
153
217
202
182
208
175
180
177
192
204
222
266
198
208
220
147
223
202
203
191
161
264
243
201
171
196
196
224
225
242
207
211
233
221
167
180
200
205
229
183
225
199
225
275
205
184
218
265
186
266
207
185
210
255
247
251
280
179
211
204
212
213
229
191
179
213
195
175
195
204
228
202
209
233
187
201
156
233
176
222
157
241
207
187
201
213
214
213
230
157
261
222
153
144
212
227
209
169
191
255
228
174
165
215
206
248
162
175
157
203
154
225
179
211
148
257
240
163
177
229
145
196
172
191
222
167
186
214
163
208
145
166
160
158
222
188
174
236
200
170
192
241
202
257
177
157
166
227
171
180
226
207
213
179
191
225
174
176
185
244
234
184
153
196
220
231
184
185
193
167
270
156
173
154
203
196
240
162
207
206
294
221
208
165
115
203
220
140
221
199
186
181
225
212
184
206
207
212
140
190
194
231
221
142
215
169
225
215
220
269
238
196
184
196
170
181
181
202
204
211
227
139
252
176
229
197
122
224
273
164
203
151
244
175
186
217
220
183
176
99
210
205
219
267
144
221
249
255
204
226
173
133
146
137
184
195
194
250
157
228
157
202
163
251
230
171
266
230
232
216
193
173
186
198
248
252
145
166
222
240
206
172
216
186
225
253
150
188
175
177
220
237
213
251
205
227
226
213
161
277
192
200
163
255
230
203
244
167
207
209
202
155
225
135
220
224
279
232
175
224
196
246
184
190
142
226
245
161
211
251
169
226
214
233
203
224
192
189
215
151
153
215
228
259
216
212
197
269
141
185
198
202
235
236
237
207
199
233
157
262
198
213
193
204
153
148
232
257
151
249
155
268
208
207
161
228
233
239
183
224
158
187
185
208
193
145
194
139
228
228
173
160
223
222
218
193
181
200
243
229
205
224
240
191
157
229
180
232
220
220
215
175
173
221
186
165
167
183
197
241
250
172
153
192
225
113
127
253
248
198
201
213
237
133
228
233
145
256
194
175
209
176
195
176
210
211
176
153
252
181
156
187
179
206
188
212
170
203
200
254
233
224
226
198
224
263
234
215
210
268
302
177
206
233
236
217
190
201
212
229
234
244
164
249
164
199
268
153
189
194
201
155
173
133
249
281
131
224
173
236
237
216
234
175
177
208
241
189
212
227
246
234
197
240
251
212
162
175
152
192
193
204
122
206
249
203
234
211
140
196
214
211
244
279
211
125
198
171
181
187
164
187
237
229
203
223
205
223
204
260
129
202
249
207
252
229
179
245
217
207
175
137
218
148
232
230
134
216
213
230
252
166
230
236
228
189
122
176
217
273
210
189
216
200
262
183
131
153
244
147
177
217
203
223
236
155
176
179
227
200
193
208
221
235
182
156
153
154
234
243
246
214
215
205
227
205
215
176
230
215
219
153
202
176
189
264
192
167
200
195
207
159
218
161
174
218
192
171
159
254
219
175
163
213
209
136
188
157
225
208
217
174
232
199
185
221
216
157
123
160
250
208
189
161
155
208
161
190
212
203
207
209
213
219
190
203
215
220
184
196
166
243
233
225
194
263
203
279
190
200
214
139
226
238
235
248
221
214
228
193
225
225
174
129
200
235
200
195
201
174
224
130
178
207
194
188
209
170
269
232
235
213
186
152
181
234
226
273
238
157
281
220
211
221
174
207
216
236
233
182
201
225
161
148
250
226
236
175
146
236
192
184
238
196
212
185
217
205
175
238
212
212
189
201
181
220
208
113
227
209
170
254
244
208
215
244
179
177
224
184
173
166
220
229
156
217
195
193
200
205
212
187
198
217
234
181
216
252
288
174
218
174
203
195
211
203
164
196
188
208
198
200
224
270
199
218
178
139
239
196
207
274
184
231
168
175
222
188
146
180
208
227
196
247
145
180
221
187
150
191
163
235
220
213
157
158
222
206
147
158
251
164
205
233
216
240
188
179
207
208
166
211
164
164
212
206
192
172
187
203
224
172
233
245
154
189
224
200
199
229
198
249
233
249
202
135
206
271
139
242
174
129
103
215
217
235
219
202
233
198
215
255
188
225
187
195
269
191
273
183
221
235
233
205
238
181
208
186
195
181
202
180
179
198
156
186
201
187
223
233
221
215
152
200
170
237
211
158
194
195
159
167
233
241
222
169
147
178
223
172
207
225
159
159
213
148
193
153
175
203
173
236
229
173
169
264
221
173
228
85
260
198
213
220
183
181
160
200
173
147
267
219
203
214
251
164
166
219
175
195
175
264
184
173
159
220
221
194
233
178
195
201
198
211
157
166
194
171
176
207
199
192
191
177
162
210
246
175
228
280
222
157
188
166
219
158
233
173
198
169
205
224
166
189
207
173
201
221
235
171
205
221
190
165
163
223
144
211
242
170
255
177
208
193
169
176
171
177
279
183
206
189
219
224
180
256
168
205
220
201
225
221
208
197
193
165
119
179
229
182
180
187
184
214
234
189
192
202
220
207
161
229
243
195
242
236
130
225
181
209
153
171
188
227
194
196
214
219
199
235
198
127
245
189
151
202
249
217
169
190
161
174
219
245
232
271
173
181
225
201
203
220
182
223
226
142
176
251
203
211
143
139
162
215
203
168
196
178
203
181
228
170
248
181
161
204
189
231
181
213
180
240
176
205
193
170
237
141
169
142
182
155
151
198
164
158
182
146
211
198
207
196
235
165
244
183
279
201
212
199
203
189
176
199
157
164
180
219
155
224
198
206
193
178
212
185
187
184
191
162
195
171
134
183
201
182
222
214
217
193
187
201
205
231
216
269
256
236
229
161
230
209
185
198
268
229
218
233
228
175
230
196
183
193
175
184
209
205
181
250
197
166
207
226
204
228
204
235
216
183
231
206
233
232
233
221
214
208
184
217
250
230
170
186
224
228
233
161
210
227
198
236
192
189
197
259
186
167
218
237
201
249
201
179
203
179
212
224
238
229
143
179
185
230
175
161
178
251
208
214
241
223
169
270
185
167
180
179
208
198
234
213
201
244
194
249
237
204
255
213
156
263
218
196
228
166
194
194
171
222
189
170
152
195
221
174
243
188
194
168
199
249
248
214
129
217
216
259
163
282
210
225
172
193
275
203
162
174
213
180
166
196
200
205
224
171
192
189
236
191
193
204
219
223
172
217
275
226
169
227
124
181
205
235
162
181
251
173
202
205
176
168
244
208
219
154
224
234
170
134
211
207
246
208
209
154
211
210
209
212
164
229
208
154
266
188
237
180
226
198
234
179
206
212
256
164
211
188
214
201
237
204
221
227
182
187
175
169
216
210
238
242
221
174
221
163
224
127
200
227
243
172
197
177
249
195
150
167
205
177
153
205
203
195
153
242
195
261
181
141
226
205
168
168
227
165
192
206
198
215
208
219
209
245
146
204
240
265
210
181
198
207
193
254
178
265
247
176
200
203
203
189
190
186
196
281
193
266
235
161
213
144
234
207
204
195
224
196
193
133
157
239
251
219
210
220
208
214
200
242
231
192
136
223
193
174
225
146
198
210
139
227
204
182
183
224
192
164
87
198
240
184
145
211
204
225
229
231
289
198
129
143
228
232
190
190
223
197
184
153
203
190
180
221
239
154
263
233
226
186
211
153
194
215
236
152
171
221
231
225
213
190
270
199
226
243
254
226
100
172
200
182
198
152
209
188
251
207
135
232
225
185
228
205
204
234
200
189
239
265
226
196
262
193
241
164
147
164
150
214
163
183
195
210
168
173
183
234
239
161
212
174
173
146
190
210
214
267
213
173
189
123
171
286
272
140
205
183
264
153
214
240
227
243
188
232
193
210
233
152
217
190
192
187
190
184
221
184
233
235
220
164
202
186
188
205
190
233
233
154
166
176
142
272
222
169
198
256
235
239
227
198
144
163
188
188
249
214
150
227
150
173
183
259
211
195
185
170
210
159
186
238
210
210
155
117
244
133
201
210
200
148
176
255
149
170
208
207
162
255
245
212
194
186
204
143
195
180
208
191
209
204
173
174
209
238
184
211
89
194
165
234
176
225
227
169
245
239
219
261
205
195
136
225
200
114
198
219
192
222
201
208
218
180
191
157
212
140
228
136
252
225
207
264
186
228
165
212
166
177
248
217
138
209
197
175
195
186
141
206
184
189
204
197
255
247
167
259
211
173
203
229
205
222
201
205
168
180
275
173
235
202
189
237
109
248
246
230
200
188
153
191
185
229
178
206
172
180
120
174
224
192
195
213
203
231
99
224
205
194
181
191
202
166
221
175
190
266
223
237
171
153
229
195
181
163
194
175
199
175
188
170
193
205
271
175
144
220
179
226
173
169
246
169
247
190
138
222
204
168
128
221
133
285
185
210
252
169
238
259
199
195
174
193
192
209
208
160
251
227
167
238
178
220
201
200
167
240
186
251
210
261
188
217
258
199
158
246
113
120
251
196
244
195
184
173
190
153
180
227
192
201
201
212
240
212
262
126
134
218
178
206
197
200
176
186
210
185
208
258
171
186
238
237
222
232
177
204
223
242
149
209
211
232
263
216
258
169
169
173
208
171
167
158
171
226
201
182
234
194
229
138
181
214
241
170
177
158
241
216
197
238
132
188
266
166
183
193
163
289
114
230
181
204
170
186
134
258
194
223
170
157
199
196
206
191
170
196
191
175
227
196
167
189
152
157
204
210
149
150
187
217
225
303
268
220
170
182
268
208
182
218
206
236
223
172
204
120
179
254
179
188
235
199
195
192
235
178
108
152
190
236
236
150
149
257
234
220
200
213
230
164
249
183
198
195
216
210
217
197
225
198
215
164
256
217
228
197
165
229
242
204
176
191
192
216
237
198
81
221
113
221
181
180
185
192
171
241
212
197
143
201
172
203
214
235
206
209
224
211
232
197
248
206
153
189
173
231
174
202
177
174
227
200
240
218
190
210
207
183
220
203
212
179
207
154
177
173
212
259
226
214
250
161
219
212
233
258
141
147
184
265
223
216
205
194
251
242
192
172
155
212
216
219
200
180
149
138
225
179
211
193
198
186
168
235
221
238
225
219
219
178
154
185
246
209
294
150
158
140
221
219
168
139
223
251
229
264
182
175
210
251
166
186
176
159
220
179
149
212
193
228
168
198
245
224
234
202
139
194
155
210
193
208
159
220
235
206
176
183
192
150
181
287
205
199
149
184
195
189
216
240
166
167
256
243
193
158
175
251
178
159
189
186
200
155
178
174
197
185
180
181
202
239
216
221
244
181
216
185
154
170
229
166
247
166
222
187
209
207
195
209
235
232
203
237
237
243
210
187
220
212
170
162
168
208
224
202
140
203
227
231
169
139
227
252
220
265
203
213
255
154
226
244
190
225
275
169
201
213
169
248
187
209
206
199
199
231
164
210
244
218
192
164
201
189
241
202
225
237
265
188
254
222
210
208
195
179
155
240
216
263
233
156
211
227
151
191
133
235
245
205
233
195
247
239
202
168
147
218
145
199
216
174
191
209
121
144
184
257
191
222
199
150
186
230
215
207
138
196
137
181
180
218
193
247
203
173
111
173
169
199
216
205
256
222
240
202
249
215
216
193
168
170
215
185
227
218
212
226
251
228
213
211
159
208
218
187
191
191
221
243
148
199
223
226
225
205
178
224
166
186
183
230
177
193
215
193
107
173
230
203
174
273
152
137
150
225
156
244
175
228
107
253
239
164
238
221
195
204
167
171
205
188
189
154
173
214
228
192
224
194
188
168
262
214
242
233
160
254
250
143
202
190
157
181
232
172
227
176
210
178
161
228
177
229
203
186
216
197
209
189
197
203
218
212
245
184
246
164
198
146
189
195
278
238
214
194
182
164
203
156
231
217
191
201
208
217
122
224
248
180
234
168
230
220
211
232
176
144
180
168
237
200
181
243
175
157
130
158
158
221
215
128
212
197
191
180
246
159
228
146
138
206
118
207
260
236
156
213
268
124
224
154
269
259
223
242
286
183
142
160
277
200
226
179
240
206
196
115
194
204
102
186
154
208
161
235
141
155
204
188
186
199
240
126
266
186
189
234
228
195
214
224
166
161
213
260
185
191
173
168
184
186
164
164
258
153
168
182
158
264
225
226
226
195
163
282
218
220
149
274
130
200
206
269
197
186
196
195
250
168
225
223
194
163
135
228
212
143
179
198
214
174
227
224
195
163
232
182
125
178
273
180
171
225
142
207
210
207
192
230
215
186
272
171
200
211
224
193
219
186
236
182
185
235
197
230
294
164
257
174
191
162
207
225
166
202
189
207
202
184
138
175
165
174
212
170
159
249
182
217
196
214
188
183
183
217
226
209
221
197
210
202
222
188
182
179
225
193
149
161
160
134
162
191
188
174
207
153
247
152
182
229
207
181
168
207
179
241
216
133
199
246
195
199
227
188
228
194
150
228
175
224
259
225
185
233
268
238
201
190
188
220
230
233
191
233
209
210
239
222
183
254
236
201
249
147
190
150
196
229
208
173
166
185
172
173
211
242
201
107
243
205
195
150
152
214
195
251
180
200
173
174
191
180
237
188
198
223
165
183
217
185
218
223
198
215
203
229
198
183
167
213
236
252
202
154
246
198
149
207
186
151
157
200
192
241
128
183
191
169
227
268
168
236
203
246
189
243
194
179
191
156
217
137
186
206
234
172
158
155
189
212
137
200
202
133
193
197
168
192
188
201
218
202
227
179
180
182
159
191
191
214
242
204
144
209
273
182
180
184
186
147
165
170
151
144
249
210
186
204
162
248
171
201
172
196
155
238
161
228
174
264
171
194
182
210
168
165
154
230
209
203
202
224
156
194
226
178
229
199
215
168
228
211
234
186
201
247
217
192
206
183
201
197
192
237
266
192
154
141
200
241
194
162
215
184
134
170
210
253
172
249
206
250
180
164
155
194
135
204
161
183
217
239
120
193
143
198
195
204
190
224
220
134
225
246
214
212
188
227
257
160
233
183
203
199
187
212
206
183
157
201
233
235
180
243
224
206
152
170
209
227
198
153
218
249
191
249
206
179
204
237
207
229
181
166
216
203
145
246
179
214
186
207
228
159
184
228
170
123
237
202
235
167
204
250
226
160
217
228
205
211
147
244
195
230
217
225
189
215
213
198
168
196
220
230
243
209
171
255
165
107
248
212
215
240
190
124
252
195
181
210
215
198
164
179
161
202
229
230
199
202
208
288
175
194
203
168
212
168
240
164
135
157
240
118
227
227
155
211
206
263
200
185
173
200
175
201
231
176
170
168
235
197
195
239
171
199
221
184
186
200
164
212
193
195
206
186
158
164
209
197
238
195
248
170
200
234
224
206
205
193
243
216
249
202
191
151
262
153
163
211
223
232
234
297
258
129
189
131
203
133
247
180
228
207
197
221
175
205
135
254
178
236
137
229
161
189
176
223
157
213
245
227
238
162
224
199
167
217
164
157
205
156
208
209
207
229
151
197
194
220
208
181
279
213
229
95
151
258
181
257
164
202
269
160
229
139
202
176
265
228
250
168
210
186
145
221
170
179
193
211
189
179
187
224
143
158
201
216
231
199
186
262
184
194
213
237
182
232
195
178
176
126
231
207
176
190
201
185
164
267
262
234
161
136
172
218
186
178
224
174
112
252
212
149
230
235
206
231
242
217
212
179
170
186
193
191
198
147
192
156
224
175
236
191
195
171
232
178
233
244
189
227
182
226
226
187
263
185
213
253
206
192
224
233
192
247
203
274
210
219
216
189
254
195
224
200
232
164
159
234
228
200
189
196
248
177
205
169
213
201
136
153
154
214
210
230
148
269
112
216
154
200
207
216
193
197
240
143
226
214
167
211
206
215
161
123
159
252
242
152
176
227
186
192
167
259
251
192
146
159
181
220
208
218
201
302
173
170
194
181
210
263
237
153
208
210
179
225
205
190
224
189
206
213
181
155
233
153
223
218
159
190
155
226
180
267
231
197
167
96
165
155
239
235
175
216
232
164
200
168
240
217
174
203
246
242
185
148
178
197
281
127
155
239
206
202
204
167
206
189
201
150
235
243
218
270
130
234
158
274
162
271
250
216
186
197
233
237
216
184
214
221
179
243
190
179
223
199
180
215
196
136
247
192
165
210
199
205
136
192
205
220
181
253
250
249
191
191
190
189
192
194
154
215
185
258
120
178
272
268
144
189
192
260
215
145
195
137
223
207
187
231
177
249
222
228
143
204
143
141
264
183
185
228
160
230
175
173
215
236
223
204
207
155
180
231
186
183
228
225
177
246
265
204
170
217
240
194
170
185
238
274
206
184
227
224
225
230
225
158
239
186
175
186
180
216
188
208
162
229
161
178
151
226
184
181
202
226
206
189
217
191
184
217
251
237
181
192
225
154
223
230
249
212
180
180
237
212
239
172
213
170
187
266
152
203
223
247
212
198
251
190
171
189
195
142
223
238
249
182
227
189
227
168
192
231
191
185
217
197
255
176
153
240
229
218
191
149
182
159
202
184
227
258
254
242
119
188
257
194
186
263
161
199
196
201
193
169
184
192
196
266
257
132
184
199
181
223
216
175
181
219
172
151
176
228
231
176
186
256
195
205
191
165
237
179
254
224
239
209
238
222
250
229
173
253
183
171
193
119
236
224
151
232
230
182
209
179
212
217
127
205
268
254
185
217
238
215
159
185
201
178
209
224
200
189
168
190
168
225
132
178
209
173
238
236
197
192
251
217
184
145
232
231
219
260
223
129
191
248
150
182
184
193
138
127
225
187
137
231
246
194
158
228
179
228
133
184
193
148
217
258
150
225
209
146
167
222
170
191
214
164
199
277
188
198
188
251
256
243
216
193
206
216
201
242
183
255
244
202
225
193
186
177
203
199
211
199
164
212
207
209
159
202
238
237
190
205
214
176
250
210
173
208
201
239
194
258
226
140
99
114
243
190
210
156
154
187
148
246
192
172
143
185
223
221
158
189
193
162
165
184
254
186
222
185
203
162
248
109
182
156
202
229
201
167
206
206
208
220
181
228
234
172
237
145
151
249
212
194
236
210
213
176
166
175
188
213
244
215
192
209
181
147
219
130
226
166
269
214
158
184
174
188
197
207
248
175
245
204
138
212
187
198
227
172
225
168
218
191
150
168
231
247
175
249
234
159
205
221
182
162
253
259
186
173
201
139
208
169
180
157
207
187
140
216
155
201
229
227
221
204
267
233
177
189
183
250
270
175
190
198
245
195
174
169
168
234
179
200
168
206
240
128
177
228
207
281
220
242
247
176
237
235
219
189
185
205
115
151
128
225
191
216
170
185
145
233
235
139
178
184
200
174
206
215
145
163
168
233
169
166
221
179
210
211
242
240
186
253
188
175
192
205
203
220
209
255
226
119
206
126
171
211
217
239
195
226
210
195
200
204
193
228
204
209
194
257
201
277
179
257
161
211
160
136
176
185
135
211
225
151
249
239
199
260
250
171
230
236
179
226
254
192
187
188
212
183
111
207
188
199
274
174
166
202
180
215
197
237
195
250
245
199
196
201
184
218
222
198
217
215
238
272
157
200
185
214
254
191
229
181
222
206
265
182
175
153
200
191
251
151
233
166
207
262
177
156
168
182
233
157
201
149
184
258
189
184
233
231
276
196
178
241
142
186
158
250
166
196
202
165
168
228
248
162
255
163
219
198
200
212
198
200
140
190
225
222
148
243
221
211
201
230
143
213
172
264
244
264
272
220
201
199
221
227
202
150
243
187
146
230
176
210
276
272
230
215
198
163
168
153
237
211
166
205
224
177
250
259
152
225
226
220
224
258
236
214
164
192
133
163
208
213
153
257
137
203
184
217
228
182
187
178
253
200
219
197
199
251
177
166
226
229
170
210
136
192
236
234
194
209
216
102
199
217
203
232
231
113
186
165
179
165
176
192
134
204
255
172
294
252
157
169
198
178
216
189
203
205
189
177
207
153
236
125
196
210
248
182
173
136
194
214
205
181
197
196
209
234
231
211
167
236
169
234
208
171
216
166
248
196
203
232
261
174
253
174
200
270
208
226
83
257
229
128
207
202
176
226
229
207
201
230
163
175
167
270
169
168
166
154
230
151
213
212
197
201
188
215
208
159
223
219
238
197
141
228
205
252
180
216
230
185
261
244
197
209
212
196
255
199
173
187
236
226
217
163
233
193
244
218
202
204
206
207
232
184
171
230
202
224
221
185
196
161
219
221
201
220
256
204
164
187
164
217
223
222
174
291
179
174
214
178
180
236
211
219
166
209
223
205
234
215
176
197
216
152
208
189
254
208
203
195
232
216
230
227
230
175
203
165
229
240
192
192
123
174
182
239
198
261
215
181
205
190
194
130
247
193
196
165
265
224
167
216
211
237
183
154
167
255
221
226
233
145
224
231
205
239
212
263
202
217
261
139
209
216
159
199
183
185
167
200
130
189
278
212
167
257
185
223
164
221
151
141
181
220
240
226
155
197
208
242
199
228
252
130
201
179
220
209
180
211
238
209
154
172
208
215
230
147
162
153
213
170
222
203
188
175
159
227
195
209
192
193
179
227
179
89
225
165
180
205
205
220
193
186
221
172
244
185
216
216
177
172
177
209
145
220
123
218
124
215
205
201
143
199
168
212
181
248
264
213
231
250
223
267
187
269
157
205
148
210
185
256
238
130
169
190
275
264
152
214
217
219
179
217
268
196
220
170
221
202
205
242
232
220
165
234
146
200
208
179
179
206
222
253
205
203
241
280
214
190
207
187
208
196
195
219
255
170
203
198
253
140
161
225
225
222
210
134
155
180
218
208
197
204
195
211
218
162
218
224
206
178
252
225
177
159
152
197
196
180
167
192
227
192
217
243
213
210
197
142
214
223
144
197
196
195
217
217
185
255
203
151
200
215
152
260
236
146
200
179
197
146
213
181
251
159
161
170
132
183
189
190
217
196
235
229
203
202
173
125
176
165
182
177
255
240
194
232
275
235
206
208
224
182
211
193
237
143
246
202
179
178
121
140
200
275
239
213
281
187
163
179
209
265
212
208
188
202
228
216
160
163
226
252
131
209
198
208
207
201
145
225
232
186
193
216
253
194
186
241
244
228
252
160
245
218
161
220
202
221
228
224
228
238
168
167
243
171
206
228
177
157
228
228
247
232
225
242
225
214
213
176
242
171
254
204
269
260
218
171
142
234
154
230
176
160
243
150
165
246
224
182
214
214
123
138
232
191
169
228
170
204
241
190
196
163
153
188
174
200
273
205
298
227
208
226
184
200
160
185
185
187
181
149
229
214
200
267
229
189
219
186
197
165
171
144
244
233
178
216
136
226
226
186
195
117
208
187
206
197
176
181
231
176
190
229
213
237
177
167
224
135
249
186
280
212
220
240
169
204
258
195
255
185
222
175
199
136
203
172
265
266
213
147
167
230
248
192
177
192
179
219
157
181
203
303
223
184
194
192
214
190
215
219
183
203
199
162
147
190
194
186
225
151
196
249
171
188
179
172
235
222
212
199
201
241
161
152
206
170
207
225
142
202
246
172
234
231
188
153
182
164
234
219
172
222
192
170
239
256
184
237
269
184
154
215
212
212
201
223
208
238
225
180
148
188
209
229
257
235
177
197
174
177
230
145
97
170
229
182
162
187
212
220
251
223
228
164
241
100
237
235
190
199
190
216
237
146
183
263
184
194
190
180
181
252
166
181
274
159
180
107
233
205
195
174
190
245
255
182
147
263
220
207
194
193
280
186
201
212
239
217
200
177
173
202
187
153
237
202
184
205
239
189
218
176
205
214
194
208
194
230
216
228
229
182
244
141
250
184
245
167
216
157
169
209
235
223
75
184
131
231
223
137
146
168
238
201
214
164
196
189
199
196
176
226
213
193
242
145
195
221
242
127
220
150
185
182
224
209
232
208
268
193
247
209
202
231
219
171
166
136
190
207
221
201
201
210
255
162
238
189
202
188
173
206
142
195
233
217
205
232
184
197
167
141
219
213
197
192
219
173
213
182
213
170
186
206
148
206
176
263
264
175
193
250
168
159
141
149
213
176
193
220
205
160
264
244
180
232
261
208
214
157
186
141
225
184
171
179
253
159
187
157
172
154
201
237
187
231
199
245
212
243
198
232
210
201
229
198
176
203
135
129
219
190
171
199
186
228
232
247
149
250
181
207
218
194
138
252
195
136
216
171
177
235
275
180
222
136
180
281
249
131
130
147
192
187
233
197
227
211
232
150
202
222
207
173
141
208
237
227
193
227
230
241
182
240
197
239
196
232
207
213
170
176
249
190
242
208
188
258
188
198
251
217
226
216
202
182
207
134
248
184
214
244
229
184
226
241
241
216
245
216
211
231
149
218
200
231
223
238
237
235
234
243
193
257
236
215
217
255
121
243
130
196
237
132
182
245
233
218
130
206
186
243
250
179
234
154
198
181
169
159
165
214
223
203
218
201
169
222
252
178
201
214
153
207
144
215
205
175
182
262
215
250
251
205
195
122
286
216
213
194
217
144
183
185
170
176
189
192
194
228
130
189
191
218
224
253
230
163
197
203
168
207
235
247
226
184
207
186
240
169
238
199
246
215
208
197
223
197
150
200
208
169
232
177
176
239
165
169
198
239
181
191
241
127
210
237
213
205
192
155
238
251
288
235
144
208
161
253
131
169
267
171
182
184
203
194
252
192
175
130
163
244
183
263
252
188
234
196
278
134
212
201
179
133
179
168
207
243
170
156
176
225
128
180
225
189
180
191
221
187
216
228
165
252
169
239
206
204
198
249
198
249
247
211
228
199
176
219
219
190
192
207
202
175
236
164
126
228
184
168
225
162
182
194
227
158
226
192
240
192
180
250
235
191
193
199
226
220
176
227
179
206
255
188
227
156
262
238
192
217
196
260
212
293
236
223
179
168
265
175
248
253
196
163
156
202
221
237
224
212
185
189
190
161
194
222
113
193
249
257
225
253
207
214
239
216
181
224
223
224
221
198
154
251
217
178
244
124
230
173
206
234
194
176
209
156
128
218
147
172
274
195
221
169
215
155
216
222
176
185
199
237
240
162
182
212
110
219
260
207
214
256
220
207
220
187
198
209
141
241
223
204
238
220
163
204
206
238
151
180
205
187
230
248
219
250
133
244
171
184
176
204
227
191
169
263
189
156
181
169
186
181
256
153
228
148
154
233
200
226
142
198
175
174
213
173
213
183
288
218
197
153
189
170
198
194
247
212
212
202
233
186
128
196
161
208
212
205
151
269
188
259
211
188
209
205
258
261
245
202
207
171
138
191
184
155
162
148
187
251
189
133
187
194
214
219
153
199
216
197
222
264
222
232
227
135
209
194
175
207
152
171
220
184
166
184
148
212
190
146
84
214
207
220
199
192
190
203
215
249
157
173
237
226
259
193
183
212
225
220
177
224
127
173
147
181
163
134
239
226
232
225
224
158
200
223
178
161
233
133
207
203
250
256
231
210
187
166
195
199
174
238
202
206
159
235
181
239
194
238
261
217
187
159
168
219
238
222
209
204
194
235
240
226
239
195
139
161
213
169
218
189
174
139
199
206
213
216
284
234
257
200
212
211
204
186
170
227
196
216
176
207
216
200
249
207
189
186
168
189
235
171
190
173
247
255
216
176
226
227
168
174
233
175
143
189
217
173
151
225
211
143
165
209
243
246
209
177
148
281
190
209
163
202
159
201
217
190
133
209
186
171
232
162
206
230
221
204
207
213
210
192
179
153
212
252
168
206
226
191
212
167
205
216
250
204
210
219
208
182
199
198
175
232
162
136
205
134
179
183
190
176
173
179
184
239
190
222
184
236
226
227
140
229
250
131
198
162
195
229
155
195
192
193
158
195
267
179
208
168
221
164
235
180
237
217
121
206
194
207
267
152
223
224
188
189
222
216
200
215
277
206
163
225
202
229
200
198
239
197
153
179
239
170
218
194
251
163
193
173
187
163
170
239
177
281
227
178
169
236
150
222
281
243
168
170
267
196
178
223
195
182
233
212
230
233
185
169
162
213
260
203
249
202
197
203
245
187
193
166
240
225
174
196
237
259
144
237
188
188
178
191
192
170
184
184
209
238
219
241
155
234
160
191
190
224
190
147
228
124
159
160
233
186
162
157
162
252
142
187
159
187
214
227
204
159
220
202
178
214
166
170
165
249
231
186
194
221
166
209
172
194
179
233
206
235
172
190
228
204
220
216
168
170
164
148
188
202
215
214
181
198
265
202
161
218
182
226
192
236
189
122
206
196
264
252
222
177
245
216
218
194
206
192
237
245
216
227
263
228
137
222
187
223
217
161
175
191
213
180
233
193
189
246
190
94
218
213
178
234
219
208
182
238
231
246
207
146
192
184
235
195
209
223
167
238
146
73
211
226
128
194
140
227
184
230
203
228
226
213
166
182
190
233
175
194
163
200
182
239
132
172
233
180
219
126
242
167
162
173
184
240
223
262
206
247
181
173
209
185
161
175
194
215
217
215
242
210
185
196
214
201
249
182
193
168
195
183
224
154
165
218
169
180
221
186
241
248
170
204
151
208
166
168
230
196
144
198
186
172
127
195
194
228
244
214
178
198
213
179
183
170
202
235
153
174
213
194
152
214
125
229
204
234
195
228
156
175
194
188
169
217
236
255
246
208
281
218
229
182
209
203
229
171
204
191
239
190
107
162
158
223
216
155
115
203
177
198
190
247
234
174
163
189
120
195
216
211
147
213
176
229
205
235
222
266
195
171
160
182
258
187
220
228
164
189
217
174
196
128
228
157
93
219
193
219
221
141
193
186
227
130
212
203
248
176
193
232
196
203
224
223
166
160
158
225
185
184
232
127
212
152
202
151
236
243
185
200
260
204
162
224
230
269
220
191
235
189
201
260
192
177
208
208
189
259
197
227
278
234
139
216
223
164
172
268
253
105
217
219
243
221
210
212
210
178
180
188
217
176
214
208
208
218
263
293
227
243
218
240
126
220
179
191
204
222
272
205
164
225
129
222
184
133
232
232
196
150
233
196
236
212
262
230
217
173
216
186
211
206
194
173
284
188
190
192
172
182
198
173
185
189
232
218
219
203
174
193
174
220
97
240
192
177
200
253
138
256
198
206
167
183
189
215
192
213
203
142
235
191
172
259
140
238
179
245
134
158
215
207
223
170
185
214
158
257
219
166
213
181
159
218
266
199
238
172
134
247
226
234
212
166
154
203
205
183
244
172
165
245
205
160
234
185
189
203
196
177
214
200
222
157
239
244
220
172
241
175
185
195
226
192
172
234
198
191
171
177
260
169
184
249
220
255
184
172
217
219
185
179
114
177
189
191
195
143
207
218
184
212
209
222
171
228
204
198
236
216
208
170
245
169
110
208
187
255
157
152
234
184
197
231
131
204
199
143
219
194
201
191
214
199
224
178
233
207
185
185
225
128
184
227
274
178
160
223
167
158
229
143
180
245
175
162
184
211
201
210
184
201
182
202
195
226
185
234
182
202
172
181
193
270
197
208
201
191
221
140
220
183
192
167
183
226
201
169
141
215
210
163
181
160
225
266
209
165
199
203
216
209
213
213
217
224
173
218
213
244
206
214
218
204
154
179
165
168
191
180
178
185
184
218
206
247
234
248
257
235
228
181
171
146
195
210
166
263
223
210
201
239
223
187
225
174
192
211
155
159
211
205
140
179
229
125
193
169
192
191
207
225
190
237
174
190
203
201
193
75
150
208
242
255
137
189
183
255
238
166
224
155
204
182
230
201
242
221
158
165
200
267
216
208
180
220
143
185
163
255
232
191
187
170
242
293
190
197
194
227
172
210
181
180
193
151
289
172
251
224
214
253
270
150
215
176
175
158
266
180
199
203
228
263
167
213
171
168
225
129
221
248
211
217
193
219
233
144
221
150
226
154
199
186
181
231
165
190
180
218
223
162
148
219
125
125
205
143
139
244
222
205
188
193
212
193
226
258
204
206
225
204
138
228
238
113
212
209
190
189
257
122
160
183
191
176
189
243
250
209
174
216
205
195
149
226
197
175
198
171
152
211
197
198
206
137
225
237
195
146
226
212
195
165
174
179
211
188
158
160
242
256
186
257
173
211
140
171
207
260
185
183
232
174
212
202
220
123
221
168
215
220
234
225
190
236
214
265
204
99
212
197
221
135
230
150
201
188
192
240
175
208
174
221
174
223
245
159
199
248
179
248
224
148
186
221
177
242
195
177
185
223
245
156
165
206
132
195
243
219
203
238
207
212
217
152
153
205
221
244
111
208
236
209
119
164
206
206
231
217
177
247
267
199
192
233
166
200
169
171
159
211
206
224
150
194
223
206
203
182
176
166
221
206
184
190
207
190
209
270
288
250
256
210
215
109
261
228
174
175
208
206
171
190
159
170
200
192
223
162
178
167
204
250
231
119
201
213
142
178
264
223
234
273
176
236
203
201
124
214
220
197
172
214
183
186
215
162
184
208
254
209
207
172
173
216
143
260
238
225
215
195
174
176
219
231
208
121
203
214
186
228
169
268
214
228
238
237
221
236
237
213
163
182
235
234
234
176
152
192
202
232
163
233
185
196
166
162
200
161
201
184
154
264
150
246
168
245
232
163
198
217
172
221
206
166
198
132
196
190
278
197
200
181
184
229
145
169
229
165
188
199
224
168
231
150
205
233
210
201
227
205
233
220
198
206
276
204
169
187
217
194
154
197
191
226
141
185
152
200
226
229
192
179
233
197
159
263
209
177
175
180
197
232
209
171
251
247
180
245
141
187
209
169
218
191
180
169
235
143
194
164
220
191
209
209
200
214
213
212
171
233
208
159
253
182
146
210
212
206
183
213
167
183
200
167
198
182
141
210
232
218
205
218
191
190
165
207
188
193
152
217
178
217
271
199
244
173
194
197
199
231
213
177
183
276
251
254
201
254
216
185
237
168
210
178
174
163
217
210
184
186
245
185
145
207
205
180
198
213
143
153
137
218
165
248
252
208
121
211
171
210
217
201
228
276
193
191
245
207
224
202
203
190
189
196
214
194
209
170
239
202
230
218
179
172
152
135
159
144
194
192
207
217
211
218
198
247
212
223
184
176
204
222
198
154
259
222
165
198
124
185
216
231
181
147
200
205
256
229
185
261
160
290
148
175
173
201
229
196
200
242
246
143
216
288
209
120
210
169
169
209
213
209
224
214
181
226
213
207
222
238
230
248
214
191
154
241
219
164
198
208
226
225
192
266
224
226
192
167
184
249
174
183
200
217
234
168
185
208
149
167
208
221
195
177
189
187
124
205
238
193
272
200
181
150
211
222
222
219
169
267
203
156
146
202
220
227
230
149
160
197
189
180
221
221
183
195
213
242
183
284
262
238
233
205
246
194
277
226
192
175
215
132
222
235
194
209
242
172
193
183
152
186
217
201
241
175
218
154
201
231
215
178
149
251
178
220
218
192
203
196
163
158
157
177
209
185
226
261
167
226
216
165
208
202
220
214
238
200
205
213
191
236
197
189
236
235
205
204
199
236
122
204
207
216
256
241
160
212
213
194
181
219
166
198
166
198
162
136
177
198
201
228
202
168
210
214
170
194
188
170
184
178
242
173
233
176
231
168
210
189
210
163
238
247
198
217
200
103
159
234
249
200
161
228
169
193
220
199
210
193
221
155
212
176
219
215
134
244
188
223
204
100
183
186
194
223
227
207
187
219
207
167
206
186
248
152
200
173
218
186
242
239
168
157
173
217
186
215
272
227
138
164
192
200
221
220
203
203
199
192
195
220
141
180
179
184
282
181
198
197
198
161
204
209
159
265
232
245
250
237
199
149
239
193
189
192
188
184
226
202
245
194
230
197
171
156
223
171
213
256
204
185
212
241
213
206
233
224
184
193
185
216
228
189
267
162
203
165
141
189
149
195
200
209
159
182
138
245
209
209
213
178
162
209
248
224
180
180
220
213
170
183
162
205
246
158
175
219
201
217
228
207
210
220
164
133
202
171
231
193
218
167
246
191
229
189
203
194
238
195
198
216
235
161
157
143
207
166
195
164
188
206
177
185
168
168
205
151
185
217
191
239
170
212
187
172
189
179
190
147
195
230
213
197
177
178
178
200
187
185
149
238
196
184
239
165
282
180
233
171
151
188
202
180
189
192
184
204
184
119
158
188
191
182
226
235
219
162
161
189
148
192
208
171
224
125
182
218
206
218
211
215
230
191
166
236
185
177
176
177
181
196
199
181
246
223
153
263
218
250
229
196
210
255
199
213
195
213
227
244
184
222
137
230
185
287
226
194
195
239
179
167
192
214
248
241
194
193
166
169
254
163
248
181
244
186
179
201
197
201
268
183
151
269
193
259
166
291
190
147
207
188
196
175
190
209
188
178
151
239
226
232
188
169
178
201
160
169
143
251
247
244
158
172
233
232
233
200
175
237
231
242
163
222
229
203
171
216
227
157
187
254
218
198
153
185
159
159
172
176
214
240
162
230
208
198
274
175
263
175
267
170
236
188
189
221
198
202
166
159
131
181
159
139
162
177
235
175
248
226
206
208
231
207
225
224
189
127
217
180
165
207
188
257
121
177
154
215
176
186
248
208
201
245
226
226
185
146
192
158
195
225
133
204
220
190
173
239
194
194
243
220
171
215
165
154
258
228
196
177
228
120
204
179
158
150
217
209
184
204
147
141
242
251
192
174
165
195
225
195
218
232
162
184
167
195
190
214
126
225
130
199
266
189
181
188
256
190
220
197
128
174
156
257
155
241
220
209
187
158
141
144
207
210
274
235
203
156
218
168
140
204
215
196
211
224
220
166
178
138
175
191
205
163
214
154
245
236
162
156
229
227
174
184
190
254
131
250
101
198
214
206
203
192
137
192
231
170
170
200
225
172
193
252
172
146
177
229
262
189
260
214
167
203
228
175
226
192
186
186
147
208
249
165
175
204
233
200
235
230
219
212
170
194
245
174
238
200
173
221
158
256
245
220
220
213
161
224
159
202
221
205
223
159
137
204
187
253
282
225
168
244
186
162
167
171
236
242
196
186
198
194
198
178
195
225
216
225
207
162
253
151
187
258
210
190
189
176
249
198
181
240
159
181
230
167
219
242
160
183
203
239
189
263
216
240
199
223
129
181
248
200
199
167
161
213
231
169
256
186
265
217
216
218
138
264
246
181
224
129
183
196
228
184
190
210
162
193
150
172
154
177
207
193
230
200
183
247
187
160
155
226
219
195
243
250
181
159
178
162
146
187
178
235
210
239
197
215
197
223
199
245
208
206
180
206
235
202
186
196
118
192
205
207
213
203
182
210
153
159
163
253
284
207
202
198
168
182
225
160
174
200
232
142
226
175
222
147
226
149
153
191
261
202
223
205
213
206
104
171
213
230
255
189
218
211
202
207
245
260
162
160
178
230
222
214
213
162
174
203
178
215
248
236
160
198
191
238
124
197
163
214
230
192
232
121
201
222
197
201
204
224
221
196
205
183
186
196
166
160
185
166
164
156
197
218
228
296
140
215
245
213
176
187
189
217
129
153
201
197
234
201
157
143
219
192
167
220
170
176
155
242
120
200
244
194
158
210
188
236
213
153
216
160
209
195
175
185
243
214
168
160
208
290
224
160
190
163
204
159
208
252
198
234
167
182
208
186
229
111
176
213
160
155
246
197
219
205
221
141
205
199
259
204
169
164
237
227
178
160
176
212
201
194
242
223
221
246
194
146
179
256
192
191
247
150
127
186
227
212
190
262
179
238
221
170
181
235
215
192
214
175
197
240
244
113
192
170
220
223
165
216
200
181
186
239
155
212
174
194
216
210
263
205
199
185
183
211
205
246
210
135
200
206
249
227
238
245
191
158
222
163
173
189
170
223
165
242
192
195
219
194
164
161
207
204
264
187
197
176
194
222
218
268
172
214
193
224
194
187
228
202
174
216
201
215
185
212
143
232
230
243
222
220
169
181
189
200
191
201
148
172
211
217
159
218
174
214
222
214
188
148
140
190
263
292
210
212
183
191
242
241
215
184
166
194
195
216
214
172
226
198
215
218
183
117
208
203
224
214
118
250
239
277
269
151
169
240
229
202
192
152
193
226
164
183
227
195
183
175
232
187
161
178
223
202
155
165
194
180
253
168
178
137
191
157
187
236
159
175
190
205
209
199
236
183
211
164
211
179
215
230
170
165
234
251
218
163
223
163
237
158
244
195
196
189
223
179
193
221
135
286
222
243
210
231
213
216
245
234
211
199
199
140
219
185
166
144
190
197
238
175
215
215
193
212
236
127
237
232
185
195
191
217
169
192
211
167
127
243
137
183
176
170
240
250
183
201
197
222
207
203
187
211
245
187
195
161
191
141
142
203
219
228
244
204
190
182
236
192
182
188
168
216
208
205
210
209
207
237
160
216
131
200
212
149
140
206
222
185
161
207
268
202
167
197
218
183
199
190
181
187
222
213
210
232
180
136
169
246
179
251
239
237
217
226
217
183
198
206
187
177
182
158
184
190
227
132
203
188
148
203
194
196
210
230
215
203
184
225
160
201
206
192
186
212
239
179
160
294
208
201
144
177
168
122
194
163
185
150
223
179
180
137
192
178
221
192
215
176
192
206
222
212
257
131
165
197
231
166
187
213
123
204
226
219
222
199
167
213
194
264
229
251
220
230
177
242
204
251
172
250
218
163
144
184
221
207
203
132
178
210
189
179
198
208
221
210
162
185
173
191
221
163
181
225
220
218
212
157
190
226
233
144
188
202
237
218
238
221
200
184
154
190
209
172
159
152
197
261
209
245
233
240
230
144
232
206
215
171
228
216
194
190
170
236
198
158
205
195
200
204
175
200
209
232
199
277
194
157
239
176
201
209
190
221
212
216
182
144
200
202
191
211
213
180
222
194
198
235
252
225
212
220
183
205
175
129
165
229
174
239
179
192
193
208
150
155
203
213
161
164
153
233
220
226
177
225
198
215
217
239
233
182
234
107
163
192
170
235
249
208
217
208
191
209
231
227
225
127
187
172
204
242
200
176
236
167
184
133
221
188
192
207
183
212
193
207
192
264
204
238
241
229
192
174
220
205
196
171
263
238
251
180
194
191
183
243
193
219
213
211
186
228
218
212
224
227
219
248
220
165
141
179
212
245
189
167
189
233
229
218
184
235
166
232
166
208
169
210
198
206
217
186
170
171
187
156
196
220
219
188
158
188
215
151
179
258
230
204
191
220
246
184
228
205
122
198
234
120
174
227
213
175
240
183
268
158
201
219
227
203
220
238
220
210
274
193
174
191
207
244
151
238
244
230
131
215
178
192
209
214
196
185
218
272
149
195
159
237
176
178
241
170
231
192
159
223
219
265
195
232
264
193
172
231
202
240
261
184
171
250
203
217
250
205
202
182
211
195
160
220
171
232
204
247
187
204
240
204
175
238
209
206
184
221
214
148
190
234
151
196
230
197
199
181
255
231
260
175
157
271
258
216
219
157
183
171
152
206
201
224
175
147
195
130
176
225
178
200
208
231
163
233
198
219
223
229
205
158
190
195
208
191
170
203
146
225
193
231
212
247
259
230
222
206
148
236
179
161
243
156
238
239
209
229
207
186
227
171
249
256
211
263
210
161
215
237
137
187
116
149
286
227
284
181
157
169
226
172
207
258
205
191
211
213
227
200
195
172
208
211
148
165
249
200
187
196
183
224
227
193
191
148
202
208
205
196
194
201
184
153
186
211
180
182
216
194
188
184
196
236
211
201
230
213
189
237
189
219
198
209
203
225
209
276
231
208
208
197
148
209
116
205
177
211
219
132
148
175
225
172
198
167
209
169
220
198
159
192
179
186
190
226
217
209
137
162
193
136
186
241
205
153
236
208
189
199
152
182
249
198
146
218
201
182
203
258
246
210
238
228
235
202
153
194
202
225
150
223
225
224
175
192
220
160
204
242
229
222
123
199
207
177
179
236
194
223
241
228
170
248
199
200
180
197
171
138
206
178
248
158
208
135
226
181
184
249
236
232
259
199
216
239
250
187
117
263
225
160
198
191
199
195
194
270
142
163
176
202
197
187
192
233
198
200
131
171
220
200
182
245
186
198
228
254
221
194
174
194
231
219
133
135
216
185
203
173
201
178
149
207
175
227
204
211
199
114
176
160
246
171
233
226
176
214
266
231
178
164
182
230
263
260
230
268
199
156
233
154
169
181
155
255
245
144
203
215
261
178
218
188
186
226
179
203
203
137
184
206
183
198
231
131
224
227
186
169
252
158
191
173
178
184
249
197
216
189
197
239
154
198
150
216
214
207
177
191
165
238
206
172
210
175
189
222
197
240
144
216
128
162
197
211
190
197
129
226
218
284
208
213
180
285
171
162
211
254
182
212
162
235
140
243
191
238
187
193
196
249
196
183
168
188
190
200
206
152
228
195
197
174
211
172
214
196
120
239
209
184
163
200
193
293
266
165
229
253
198
185
195
126
236
243
212
220
164
214
170
200
163
227
176
187
190
180
223
228
141
121
179
154
186
247
219
133
243
171
225
186
192
237
215
180
166
217
213
195
179
203
215
229
229
226
236
176
179
199
149
213
201
242
180
228
145
183
207
158
252
257
236
180
227
247
173
147
144
209
256
145
235
215
213
248
201
174
192
159
170
213
262
203
219
166
198
241
224
207
192
198
221
205
234
259
185
224
142
185
155
207
187
178
213
166
204
248
153
173
227
212
215
206
224
176
203
226
151
230
224
227
193
173
247
184
260
249
237
244
194
181
230
250
235
177
224
186
212
210
243
216
140
210
169
188
172
204
141
146
164
176
174
200
157
235
217
252
183
244
224
179
213
203
177
206
137
149
206
187
153
209
152
206
244
145
189
192
248
134
204
198
171
199
207
209
151
244
149
201
168
155
269
199
170
187
219
267
175
163
202
193
197
195
100
181
178
165
154
190
211
196
169
173
237
156
179
186
200
263
209
206
168
215
185
131
122
187
172
255
159
219
193
161
189
268
222
220
153
200
198
184
211
194
204
172
243
167
195
189
231
227
157
197
246
175
216
194
234
265
210
171
199
168
168
253
213
195
260
204
206
247
178
181
154
173
175
210
195
236
177
259
131
183
149
236
176
215
255
201
221
192
205
206
163
258
203
174
190
186
228
215
228
239
224
188
231
221
163
212
248
170
200
184
166
194
171
131
243
212
164
222
204
192
167
139
178
227
212
239
248
240
182
245
223
238
212
220
214
177
165
169
160
236
240
201
141
200
142
164
200
219
147
157
177
196
193
208
225
160
248
241
195
247
254
166
259
254
197
202
209
235
215
241
179
166
224
154
216
206
163
221
130
246
184
231
218
254
236
218
159
238
223
177
197
180
237
167
194
191
217
203
225
239
241
208
171
225
187
207
204
177
208
205
199
163
163
165
165
206
178
167
243
201
193
160
153
219
156
194
216
235
195
186
246
215
162
196
191
217
149
235
166
227
183
231
223
222
191
105
215
222
248
233
188
206
197
204
133
165
196
189
158
234
229
194
203
237
166
230
242
292
170
227
178
153
222
220
175
175
183
227
225
219
183
198
204
241
187
205
196
199
247
194
220
197
180
157
197
220
206
153
285
156
204
190
224
189
221
194
178
200
177
157
215
214
203
165
177
169
185
174
266
243
176
202
227
160
160
192
192
175
147
233
218
189
182
246
277
152
120
245
184
215
185
223
175
242
171
183
155
196
205
255
133
195
243
198
137
154
207
189
213
114
181
160
191
195
254
173
220
224
145
213
229
180
244
202
176
281
206
212
146
186
198
209
144
252
174
206
143
228
234
194
197
163
225
185
179
289
192
192
221
218
231
190
226
191
201
206
154
198
255
202
195
190
192
257
212
218
241
191
196
240
196
231
223
215
133
209
197
216
121
228
229
270
239
163
221
191
149
219
215
246
225
120
244
267
233
215
252
213
162
182
217
186
189
235
259
208
213
219
198
259
229
183
244
198
236
218
256
180
233
211
219
185
248
207
178
212
172
214
198
224
164
267
196
173
259
190
202
211
186
232
225
177
231
212
197
235
270
155
245
173
196
161
166
179
180
173
178
186
224
212
153
196
249
204
230
199
186
177
162
222
195
234
131
135
216
172
206
132
135
230
193
223
252
209
149
221
218
190
216
213
236
184
227
193
177
207
220
188
210
237
156
208
222
183
232
247
253
218
192
268
226
181
127
170
210
195
175
159
193
189
90
148
175
159
283
151
211
249
181
164
239
242
174
167
237
192
194
188
183
227
206
180
159
231
218
148
204
159
229
168
210
188
152
196
257
176
172
178
239
239
256
177
215
239
200
212
191
125
197
149
150
129
199
218
218
199
185
249
239
211
218
151
227
152
217
240
214
229
164
191
235
240
212
173
178
199
231
165
226
207
139
153
178
156
175
228
199
239
275
233
200
216
216
229
206
251
204
134
185
227
242
150
177
194
233
204
150
140
202
239
179
172
219
198
238
196
218
248
160
216
168
191
203
157
187
231
113
245
174
209
173
156
213
189
189
206
197
180
234
208
206
178
232
218
187
229
160
222
123
192
226
257
231
183
152
153
175
238
233
199
181
186
267
197
153
226
218
224
242
187
149
156
139
188
202
185
234
186
215
117
159
161
175
199
172
208
231
148
180
191
108
191
150
221
197
212
174
206
204
209
245
202
167
150
206
220
169
168
174
174
208
186
164
230
197
263
244
163
237
169
206
217
213
189
216
213
212
209
219
123
203
199
164
227
138
200
236
185
163
232
233
170
251
163
233
201
251
199
208
197
176
199
213
203
237
240
142
115
259
177
205
167
187
216
233
212
214
152
231
238
172
192
187
161
235
219
186
210
164
222
217
214
216
138
181
216
174
217
235
180
254
187
235
223
178
158
218
164
228
201
282
245
204
238
224
187
193
226
220
183
194
200
171
210
149
179
201
225
219
279
255
211
189
238
244
203
203
253
214
167
209
229
196
164
206
193
256
210
219
198
140
226
183
150
227
227
257
168
228
162
195
236
221
149
201
196
206
260
183
230
219
203
219
207
191
139
216
242
155
137
153
164
209
244
205
195
224
229
218
150
228
220
141
140
188
231
136
247
271
213
184
199
223
189
179
179
216
269
187
203
205
201
181
256
221
161
237
271
200
236
211
196
185
191
160
180
215
220
178
221
161
184
207
237
229
234
223
188
169
172
171
137
231
231
210
224
158
227
149
195
178
206
187
176
254
214
219
191
219
258
171
225
205
203
218
218
177
165
237
185
161
142
147
187
152
196
152
166
188
181
192
199
147
168
170
215
194
172
242
221
188
188
217
190
205
192
199
217
280
231
160
170
181
190
136
222
136
177
211
230
205
263
202
225
154
213
219
203
192
182
142
197
202
199
147
242
244
191
206
161
198
197
200
197
208
204
249
155
204
197
167
207
211
206
197
215
178
234
163
289
278
121
202
194
215
176
234
265
259
217
184
202
210
213
178
208
190
172
263
238
263
215
224
177
200
207
271
228
179
204
130
205
263
231
186
218
200
205
221
228
186
197
191
253
189
191
224
227
202
189
233
203
173
194
164
203
166
245
217
281
183
203
264
198
233
236
223
191
134
299
185
173
183
129
183
169
218
221
191
188
163
238
146
164
206
146
176
233
211
121
123
274
208
229
198
197
228
150
226
224
146
177
182
220
171
119
218
225
234
152
201
238
269
218
222
217
182
251
235
211
212
258
165
180
235
260
246
256
250
206
221
213
176
258
180
170
195
211
200
157
231
236
220
192
167
209
208
191
207
183
190
170
203
192
219
152
200
215
194
107
193
144
253
198
134
184
167
221
248
166
182
261
242
147
161
205
204
231
201
198
177
150
188
212
262
183
242
188
207
245
224
225
187
235
206
175
157
194
236
224
174
178
169
202
126
208
246
200
215
264
232
250
220
210
195
191
251
201
232
117
177
185
237
198
204
182
215
246
171
208
167
204
235
214
205
233
210
249
206
195
170
183
231
150
132
149
139
234
194
218
265
214
185
197
190
165
250
214
235
226
199
193
182
234
184
215
223
173
205
214
161
166
151
181
224
189
192
204
176
157
178
158
246
236
173
169
212
233
147
168
152
169
201
269
184
263
224
196
153
162
186
220
206
144
196
143
201
207
208
156
210
248
211
245
172
194
250
207
221
241
228
193
226
240
206
158
156
176
114
262
158
223
195
222
199
162
282
183
187
146
239
220
204
163
214
150
262
141
196
192
230
148
199
180
179
217
216
212
184
225
144
221
206
201
179
219
233
232
225
219
199
256
201
191
151
237
203
212
244
251
213
195
194
227
202
290
242
242
162
182
213
112
233
172
216
199
189
160
206
189
214
198
177
207
261
173
156
192
200
153
219
250
214
234
153
174
181
254
185
187
158
171
170
235
223
233
216
201
236
154
193
189
197
227
184
211
179
165
172
236
153
212
193
190
230
164
131
176
173
150
152
225
200
153
160
238
156
167
198
168
186
206
187
210
153
152
207
172
219
208
215
206
241
198
178
210
177
172
185
200
136
256
126
156
206
194
214
189
128
196
223
200
224
194
186
205
240
176
129
221
234
188
220
196
183
158
172
206
198
188
242
218
181
204
126
256
277
234
240
200
235
239
216
168
167
190
222
208
166
241
158
200
235
166
270
158
135
276
218
207
185
210
168
157
199
209
196
198
241
224
228
266
189
214
217
227
230
230
193
256
207
187
199
191
161
168
212
246
173
201
259
213
148
176
204
178
269
227
259
196
224
265
226
159
244
193
190
207
184
189
185
239
257
243
224
229
158
245
244
127
202
185
262
209
169
203
259
201
193
195
225
251
227
207
262
183
128
115
186
246
213
189
155
243
227
151
149
246
262
147
242
205
251
210
191
220
200
177
224
223
167
220
175
209
222
238
219
169
216
242
157
201
228
231
243
212
219
144
228
151
227
158
165
199
190
146
176
181
221
224
268
194
237
233
218
167
263
172
185
175
129
239
209
168
201
151
248
181
181
206
184
228
210
227
198
205
249
191
173
211
239
250
226
159
192
169
210
243
172
203
237
221
205
264
198
243
165
218
183
237
200
166
242
172
242
193
192
147
185
118
210
220
126
180
174
159
186
203
222
209
164
200
266
243
155
221
169
172
164
176
224
172
120
183
162
193
230
155
214
259
135
252
186
220
177
199
230
197
194
182
195
201
172
253
171
208
262
181
207
248
222
154
196
89
195
201
146
171
190
149
146
259
221
155
241
189
255
290
222
181
201
189
130
169
183
186
229
199
169
217
198
234
236
171
145
207
161
179
214
217
173
251
167
189
220
184
221
214
190
189
235
192
192
198
208
218
248
208
164
191
256
259
195
200
216
246
184
224
237
194
219
199
224
243
182
200
156
178
201
188
232
238
209
134
133
213
238
215
216
185
226
206
231
217
133
174
270
196
154
204
176
199
199
204
233
165
214
231
155
134
182
192
238
194
134
233
203
202
151
254
156
178
190
135
248
183
230
210
185
182
283
227
159
230
196
193
188
166
225
219
176
211
187
201
207
250
258
197
139
191
203
225
230
208
200
125
222
192
184
206
182
198
203
163
252
232
227
122
161
238
212
138
224
215
227
123
192
128
239
185
241
148
194
220
164
244
177
219
232
194
237
176
228
211
266
246
214
245
207
175
176
166
201
180
236
186
229
208
243
213
151
185
152
203
182
217
186
225
198
222
263
157
198
122
167
211
223
199
207
175
170
211
182
225
231
274
131
210
238
204
202
201
215
205
189
224
236
167
198
183
251
209
249
176
209
194
149
254
233
216
174
247
208
204
186
196
210
242
198
244
158
265
207
162
246
210
196
231
242
203
259
208
201
178
226
159
199
248
185
200
196
286
267
170
156
230
203
190
149
195
209
141
175
230
209
233
177
127
172
210
194
121
173
201
191
219
174
261
194
243
175
111
222
233
198
196
197
166
180
195
263
205
183
256
167
235
90
123
148
173
197
146
175
162
218
206
205
177
116
180
215
158
167
180
258
196
251
220
148
230
152
229
206
219
187
183
179
195
182
235
165
190
169
247
189
163
216
170
176
237
212
211
190
159
266
203
242
200
154
286
184
163
191
175
201
166
173
222
188
201
222
174
207
196
178
238
175
188
102
164
252
216
244
178
207
252
205
189
205
226
164
172
202
189
118
252
143
242
166
216
233
93
190
196
245
216
136
151
238
183
238
179
239
240
252
231
189
181
158
228
190
161
212
172
201
215
167
209
216
212
158
193
230
157
228
192
230
113
222
200
202
179
197
247
189
177
247
216
253
208
195
146
177
145
192
219
223
209
158
193
193
219
214
175
182
203
218
192
218
190
227
206
221
198
144
142
167
162
185
171
175
219
192
184
188
167
212
213
179
156
203
177
244
151
239
191
229
216
190
223
191
212
150
201
188
225
236
180
171
224
189
160
239
230
226
195
267
190
235
134
179
176
206
262
259
222
216
213
161
199
155
238
172
187
152
167
232
175
193
122
198
137
195
190
186
207
190
230
220
204
155
205
222
187
128
167
227
183
205
217
161
207
176
186
167
230
158
232
142
208
184
175
185
217
191
202
219
194
242
260
249
217
150
203
166
202
157
141
195
177
222
177
214
258
201
235
265
190
208
194
277
176
165
174
247
173
159
200
174
260
232
246
165
186
141
185
199
195
213
194
166
172
180
158
186
230
244
220
191
183
192
134
129
229
178
222
214
155
207
223
161
162
181
198
140
224
179
155
185
146
201
216
207
245
203
203
195
223
221
184
152
203
222
210
161
216
235
209
227
184
246
234
184
250
201
168
224
261
199
225
229
198
213
200
245
258
209
215
241
241
133
174
111
164
196
205
234
168
171
140
183
125
156
174
191
219
235
209
210
225
182
194
191
225
225
270
189
208
242
189
204
150
163
175
233
163
149
227
202
145
207
179
213
159
260
238
207
204
214
220
208
257
232
169
244
166
219
122
240
208
249
171
190
198
141
194
275
213
231
150
199
246
198
166
232
261
219
232
217
175
218
211
162
186
245
223
185
170
249
184
133
165
138
203
138
156
144
222
198
145
217
197
211
183
274
154
214
251
206
158
176
204
229
172
128
225
207
166
150
176
201
174
156
203
190
200
222
204
149
158
217
212
202
211
202
189
224
147
179
129
133
173
214
257
263
151
237
203
236
190
236
218
188
200
168
222
258
162
240
197
250
187
222
232
255
247
127
207
234
201
207
154
197
260
196
213
227
143
206
185
220
227
235
244
183
188
205
219
202
237
217
224
188
164
211
185
255
112
193
193
155
202
159
249
186
149
191
176
180
147
194
220
238
220
259
240
165
178
214
217
230
207
246
211
213
213
216
201
195
178
214
192
184
223
184
245
220
154
222
156
160
181
167
213
212
235
206
198
202
217
215
196
199
179
215
156
197
155
205
242
154
256
167
182
211
166
247
202
242
155
215
148
202
194
196
188
181
277
225
203
207
143
230
161
175
223
155
269
208
198
197
245
216
245
220
219
193
206
262
207
216
162
236
254
156
155
215
144
191
246
122
258
240
224
225
173
163
231
208
189
192
194
183
150
186
207
231
217
268
262
225
155
212
193
203
230
157
179
178
130
203
233
246
230
200
197
224
243
191
192
234
174
210
235
183
218
285
214
170
196
233
200
226
112
177
175
149
236
218
205
178
182
233
174
197
270
210
188
164
180
205
221
171
200
207
127
134
207
196
240
127
203
233
173
229
217
181
190
227
182
185
191
165
254
191
227
170
194
187
158
156
174
223
141
197
159
190
259
168
248
220
224
169
177
216
197
189
187
229
241
253
233
237
220
141
194
141
149
221
218
213
264
219
213
155
171
183
274
250
239
177
222
198
217
193
163
274
205
181
138
143
169
243
118
233
233
242
195
194
196
239
228
246
231
202
175
276
208
222
231
230
262
158
218
252
205
121
238
182
243
136
138
209
244
221
176
227
218
176
188
185
201
232
159
223
200
209
224
150
209
236
210
149
262
155
227
187
195
246
260
189
213
206
164
239
185
116
200
220
184
165
223
169
198
170
204
140
197
145
248
190
234
176
164
178
167
217
180
224
229
240
203
199
148
262
97
196
211
166
216
189
213
210
165
226
184
210
215
162
198
195
175
209
207
183
232
185
209
201
159
255
195
210
178
200
215
196
135
116
198
233
225
227
217
184
196
223
237
191
153
164
248
196
226
184
203
247
247
217
209
143
236
145
244
252
240
194
166
186
213
164
148
177
180
219
229
215
217
199
183
214
199
218
106
222
245
229
223
214
124
163
155
153
130
230
214
239
139
159
221
201
200
203
226
249
180
190
226
257
197
231
164
162
202
193
197
234
198
147
232
233
256
222
185
263
244
206
206
210
194
237
217
194
216
203
152
190
207
259
153
169
168
163
185
205
169
243
244
151
160
138
210
142
171
211
226
167
168
255
196
179
158
109
181
245
209
208
172
228
171
126
168
253
273
173
200
225
179
189
221
198
208
210
252
155
178
268
200
208
171
175
199
252
242
151
189
224
216
208
188
151
216
136
226
186
191
220
245
220
217
170
175
197
185
81
143
167
186
190
167
190
190
240
177
166
157
127
250
194
244
225
196
256
239
173
181
203
152
135
208
159
224
213
193
266
189
218
236
189
185
138
187
238
226
244
244
162
188
222
172
277
193
207
228
203
206
180
181
173
273
179
191
168
150
199
240
238
187
154
245
219
213
242
121
191
244
164
196
211
148
267
166
174
243
225
205
172
209
203
214
205
279
187
206
226
219
200
185
224
246
197
196
203
182
265
226
221
196
233
204
186
226
257
170
135
199
236
258
136
196
181
130
196
216
222
222
182
202
212
170
138
189
150
198
241
273
165
187
184
177
251
257
211
257
214
161
195
218
194
204
151
184
190
251
216
181
214
227
229
124
178
226
129
174
144
235
212
196
231
251
243
205
154
184
191
181
191
184
185
176
122
226
199
183
204
159
289
275
206
192
154
227
188
158
200
156
241
168
198
207
188
253
167
173
179
201
207
159
244
191
229
230
196
189
233
239
214
125
242
175
144
203
250
198
238
160
204
169
185
151
208
191
226
197
220
159
183
178
256
155
195
198
245
176
204
175
148
251
237
226
205
213
176
211
179
206
217
207
234
242
226
262
214
207
239
237
195
199
213
163
196
181
162
200
208
208
222
181
216
184
202
164
186
218
173
149
163
195
125
209
152
181
201
258
226
184
185
232
245
247
196
175
201
223
193
222
182
174
250
269
183
149
180
160
151
212
198
271
172
186
159
190
219
218
173
182
258
178
253
112
222
187
196
188
233
244
169
232
271
167
225
229
189
218
210
231
209
139
251
198
222
238
204
227
220
255
171
190
165
211
234
226
186
240
216
195
195
215
171
138
168
204
261
144
152
243
201
129
200
185
193
225
208
200
208
232
172
225
173
212
226
201
273
242
176
199
226
152
210
242
222
158
142
162
220
167
265
160
206
230
222
219
138
232
151
201
183
244
160
193
272
208
226
198
253
206
160
269
212
213
128
203
122
177
164
219
176
196
201
265
166
201
253
206
186
220
198
202
159
222
227
158
265
194
119
186
158
212
185
200
194
261
210
190
225
161
214
172
229
216
237
145
212
189
181
158
189
193
219
236
175
238
313
181
228
261
216
177
233
218
136
232
233
255
178
166
199
179
166
176
186
183
208
206
188
204
210
238
222
171
153
163
128
206
213
199
210
132
187
192
159
188
183
219
208
217
162
204
241
232
155
227
288
163
171
192
204
138
123
204
218
200
212
196
192
197
189
217
141
191
208
214
156
144
227
185
244
176
193
204
174
135
188
196
234
190
199
195
231
184
206
255
223
202
214
208
158
222
165
230
197
201
211
175
195
215
181
175
155
184
217
239
154
228
222
183
190
236
184
158
170
142
216
200
250
182
209
180
196
212
163
256
206
175
197
168
143
226
153
218
184
159
128
229
200
240
176
214
155
230
187
259
217
188
222
200
236
183
218
201
208
160
202
218
184
200
197
214
196
208
189
155
210
206
229
261
264
251
229
218
192
227
220
174
214
144
194
216
194
209
219
152
242
170
163
314
162
241
146
157
132
217
196
220
196
242
202
169
277
215
188
253
149
205
229
219
196
211
249
205
215
217
173
223
202
164
187
212
197
214
170
175
150
228
204
194
187
230
216
199
236
250
195
172
207
166
222
195
192
215
151
227
208
203
184
209
162
214
255
137
216
247
205
205
186
230
198
207
201
207
240
114
170
208
197
232
146
171
198
206
256
191
172
182
205
239
238
202
165
214
251
181
222
262
192
209
148
206
172
219
186
154
241
153
266
198
223
173
126
189
208
149
239
249
174
241
210
211
113
218
192
188
222
239
128
187
206
192
217
227
237
181
230
204
257
193
174
289
167
198
201
109
178
127
154
187
207
221
255
162
189
220
258
229
255
230
186
151
235
198
160
236
208
199
195
189
161
187
167
200
118
183
209
194
97
173
195
236
189
146
223
207
241
197
165
280
199
262
192
198
192
159
220
173
195
227
234
221
249
280
210
170
181
222
185
271
147
211
134
206
261
205
187
152
199
205
268
257
196
231
207
232
217
218
211
161
171
191
203
203
279
213
152
198
235
194
191
156
180
250
237
172
215
206
168
211
175
190
147
274
196
210
175
202
115
213
168
192
210
135
199
225
195
250
216
218
170
214
215
239
210
197
203
182
194
181
198
222
192
270
149
239
225
176
236
211
202
211
175
238
251
228
200
169
196
221
264
216
234
260
193
203
227
263
144
186
142
161
197
202
271
148
277
211
182
196
203
190
220
204
182
244
153
164
175
161
163
188
162
176
220
173
238
219
208
219
225
189
250
244
217
179
187
233
192
253
233
221
249
239
224
215
229
226
203
228
183
209
239
184
184
209
145
204
222
218
203
169
229
247
211
187
214
240
183
206
207
218
176
212
200
121
258
210
225
190
202
153
231
238
202
227
172
252
210
229
244
226
191
183
222
218
209
169
235
194
138
167
199
233
218
176
205
208
144
223
190
224
167
102
230
190
142
233
126
193
213
222
194
224
161
238
241
176
147
183
235
164
194
221
232
249
160
218
210
224
219
196
219
211
152
200
161
149
205
187
235
223
203
266
212
188
229
271
131
212
197
193
209
165
183
230
234
195
178
227
226
207
189
156
192
219
199
272
174
231
176
242
216
236
161
172
131
222
220
216
207
223
242
221
205
174
186
203
204
185
191
143
152
167
207
205
168
202
168
221
210
230
182
169
192
154
250
266
231
252
205
236
212
199
165
225
229
230
214
244
186
128
156
152
203
217
262
220
218
212
186
249
214
256
254
254
251
132
205
155
207
270
206
191
183
122
203
200
211
190
272
212
188
214
116
212
213
174
179
217
230
202
165
257
217
180
250
248
234
198
188
172
226
168
195
186
198
180
209
201
217
173
163
177
224
169
243
231
187
228
217
161
228
171
226
177
151
246
178
241
129
204
196
185
191
228
163
181
193
211
201
207
157
218
283
205
234
227
196
214
202
248
133
215
230
217
142
135
140
241
217
174
233
190
206
203
198
163
217
208
175
198
179
182
227
209
131
248
244
219
173
197
198
191
175
178
170
182
202
181
180
182
195
195
239
212
213
159
174
189
184
188
180
209
181
241
228
188
210
180
198
178
223
242
203
238
224
187
229
131
174
180
182
171
194
209
220
235
244
227
193
206
182
212
238
142
119
132
187
238
172
175
235
202
197
228
217
181
239
190
197
197
174
195
216
188
250
130
217
170
204
187
191
193
148
169
217
193
211
219
184
170
229
259
247
114
173
226
181
204
165
208
205
231
170
163
149
155
180
193
228
229
215
178
187
191
178
193
193
225
160
249
215
244
202
178
195
195
183
163
198
206
216
141
203
186
199
110
206
186
221
262
147
184
215
202
213
168
89
195
229
233
140
198
236
174
220
155
183
198
230
214
229
228
157
223
225
182
219
286
207
229
171
237
234
162
157
183
220
194
146
199
181
222
178
163
181
159
200
152
169
205
205
134
132
202
196
192
223
220
181
198
231
153
294
212
296
206
231
195
187
161
235
189
222
243
158
140
205
216
174
133
213
204
92
187
226
290
167
178
222
185
174
189
178
197
166
195
193
131
234
184
210
235
210
208
218
187
232
196
223
211
234
235
251
235
172
197
230
254
232
235
165
221
175
138
246
173
214
210
182
234
184
206
197
199
274
110
194
192
159
185
147
166
139
235
168
170
183
231
164
119
162
186
207
132
238
147
209
192
227
231
154
158
194
160
145
215
197
224
233
196
123
227
299
164
231
166
203
148
154
221
225
186
111
189
243
187
284
246
194
187
255
265
155
227
202
178
225
184
178
142
178
199
182
179
185
150
186
172
225
217
194
210
244
225
167
156
183
182
154
257
197
185
180
215
240
170
127
236
266
217
242
142
220
211
189
162
165
234
264
253
221
182
195
165
257
165
229
192
179
234
246
173
227
205
161
198
194
227
228
135
244
173
175
213
227
171
200
200
238
208
123
227
224
173
207
223
163
233
250
222
236
211
177
127
233
175
222
168
231
197
184
157
147
134
189
166
148
199
182
198
217
207
197
163
224
166
190
149
141
183
170
182
156
167
218
203
246
171
246
232
145
225
189
213
187
210
187
183
210
183
174
164
227
199
210
173
209
199
187
230
235
271
175
178
173
160
221
123
234
152
181
201
227
197
198
182
171
171
245
155
162
158
209
182
145
183
209
125
245
205
175
197
186
228
211
191
220
224
205
200
177
205
219
221
189
273
220
214
218
171
209
207
197
217
253
146
182
170
163
165
168
213
198
175
170
174
249
145
219
191
179
241
247
220
202
237
213
139
193
206
192
173
234
212
188
226
241
184
229
189
179
223
139
252
153
228
155
161
253
149
228
188
197
112
191
170
219
258
207
212
172
207
184
219
211
202
245
148
214
250
228
235
209
147
212
208
220
147
235
176
216
173
207
104
227
203
179
239
182
217
208
245
195
166
192
182
204
216
189
197
208
235
184
195
222
169
202
134
173
140
220
258
180
210
205
212
198
244
123
223
202
247
176
211
156
187
167
248
235
229
161
189
111
194
191
242
187
186
160
217
243
178
198
160
127
165
236
208
180
198
185
199
181
225
148
160
197
190
182
105
202
134
257
161
222
203
224
204
251
202
201
213
198
145
154
152
212
230
249
231
188
151
130
202
200
166
145
185
159
206
209
169
258
223
239
251
216
181
198
197
172
229
186
246
166
214
195
262
164
231
193
200
234
229
161
177
224
190
175
179
220
148
224
208
185
204
199
202
169
173
146
196
236
188
169
236
216
208
172
148
152
193
209
213
175
200
248
176
247
210
202
190
213
210
178
174
270
239
173
176
251
184
176
212
168
173
255
160
182
190
225
156
200
187
112
147
154
125
146
149
178
206
189
187
272
242
230
247
213
167
180
234
228
135
173
238
183
256
241
204
161
152
221
214
196
206
225
141
146
172
210
193
208
207
201
225
152
156
156
194
212
285
183
208
238
224
184
154
220
170
236
151
206
189
167
213
221
207
234
204
227
179
253
175
259
240
194
204
243
248
244
210
239
216
180
219
150
146
197
202
225
144
266
186
228
204
234
216
181
195
125
189
209
200
192
222
193
154
207
225
143
239
222
233
204
148
188
214
116
177
228
191
180
168
247
201
193
225
142
256
241
239
225
203
194
217
219
137
204
190
262
238
246
170
227
183
225
168
200
239
216
203
213
211
201
176
248
187
184
187
149
172
217
202
130
182
167
149
175
215
207
208
153
274
245
191
185
149
202
223
151
269
103
234
196
161
196
194
135
187
173
144
195
154
220
180
181
237
174
210
288
182
183
199
238
191
185
192
153
200
198
243
200
217
230
195
173
186
224
174
192
211
131
243
215
170
184
186
148
199
293
172
217
167
198
232
232
191
178
215
185
213
187
223
173
182
188
154
190
198
203
135
181
128
188
212
160
135
220
217
121
247
207
157
207
202
176
203
191
252
161
195
205
195
209
142
192
226
223
251
206
225
239
194
173
215
184
199
166
216
213
201
169
177
196
249
169
162
173
241
237
190
214
224
234
195
222
246
217
162
196
197
248
247
264
208
181
227
199
180
215
201
158
189
231
207
186
193
199
210
198
219
204
195
216
186
175
143
235
240
145
238
220
174
160
180
222
266
191
273
188
219
211
245
238
147
158
256
227
256
159
207
232
185
198
220
189
192
250
206
168
201
212
164
105
216
192
210
139
184
218
234
206
214
202
234
156
207
198
174
226
170
255
255
196
209
219
189
179
143
152
215
183
163
116
247
231
198
203
235
214
193
184
174
187
229
194
173
221
225
226
217
234
199
195
185
198
191
233
228
206
187
217
191
151
142
218
186
219
220
126
199
150
226
211
171
247
189
240
161
232
203
201
222
222
192
212
236
164
254
176
176
221
160
197
207
212
202
203
186
202
258
189
117
167
206
227
192
152
236
177
152
203
213
237
204
171
181
223
199
163
186
221
221
151
201
233
184
217
167
176
202
205
194
129
263
207
275
237
122
231
216
155
204
192
170
234
117
176
233
223
209
204
216
198
171
190
210
217
165
176
252
136
197
228
184
189
234
209
215
223
159
173
207
219
176
241
204
221
180
196
218
272
170
159
185
228
206
187
219
266
201
196
254
194
226
157
136
258
198
222
203
209
214
168
216
194
257
218
187
173
188
209
201
264
162
198
174
206
177
234
160
196
186
199
178
186
266
172
146
206
181
191
132
165
175
205
236
226
217
216
228
199
197
216
202
257
222
221
204
137
203
198
213
211
173
142
142
182
195
199
173
209
234
226
159
170
154
187
179
250
261
192
174
180
186
176
251
211
188
207
165
177
196
225
168
164
191
248
178
182
200
176
263
182
183
170
199
199
218
203
151
223
177
170
187
129
263
213
234
186
255
222
211
213
205
265
222
213
189
251
189
175
222
202
222
199
180
203
193
215
238
256
288
202
199
225
183
236
170
197
181
212
251
153
239
222
239
166
133
189
187
212
197
215
169
280
156
236
225
217
208
101
236
200
162
141
141
193
162
183
191
206
198
162
247
176
220
187
178
210
202
174
179
204
188
199
215
223
209
151
189
211
201
185
209
214
151
226
206
195
195
211
203
195
213
244
250
210
136
213
170
209
247
226
173
206
206
207
194
209
282
183
152
181
250
206
167
226
257
233
206
265
201
198
213
224
199
260
197
178
223
179
224
173
159
240
174
215
196
218
205
193
244
204
112
168
198
228
207
153
204
133
188
243
190
250
235
150
273
168
188
148
235
198
212
183
228
168
229
198
225
247
184
187
180
189
221
191
178
235
183
215
220
195
206
166
232
192
200
203
156
232
173
203
201
209
231
188
154
227
199
186
177
210
187
194
185
140
138
178
264
152
233
183
144
181
215
207
110
229
269
201
175
228
200
192
184
172
217
240
209
209
262
206
190
119
223
225
156
165
220
263
174
241
198
179
191
181
167
120
244
149
203
170
250
145
185
195
183
196
226
224
216
154
162
122
187
173
141
254
200
220
219
220
242
285
184
152
197
192
182
222
199
240
209
214
128
187
199
252
237
233
196
195
172
203
185
231
224
236
157
197
155
187
230
206
264
226
222
185
177
209
246
160
165
229
222
236
172
186
275
165
206
230
220
163
200
252
248
204
242
195
172
126
237
211
260
214
217
195
248
205
183
268
210
164
214
226
223
179
197
161
208
167
202
171
211
186
122
182
183
210
203
147
303
171
213
224
196
167
146
140
206
234
257
194
201
250
119
197
216
248
200
191
196
217
205
240
215
218
166
175
222
231
244
254
212
218
220
150
192
210
208
183
222
129
176
202
240
201
173
187
239
196
194
164
240
176
170
173
150
232
156
189
198
189
249
202
241
176
196
199
222
199
237
128
233
228
221
184
221
211
141
197
184
219
180
144
234
101
170
152
158
175
248
214
198
120
191
143
225
236
198
164
218
227
260
227
243
124
189
200
169
206
174
192
118
127
120
234
203
155
223
210
178
187
189
204
206
166
248
167
170
201
203
221
216
181
188
198
183
212
231
196
171
150
259
192
219
181
250
206
148
199
234
222
161
164
185
195
181
171
198
154
195
240
201
190
226
210
242
226
192
177
211
197
117
160
224
217
159
196
227
194
289
268
212
189
110
284
193
219
211
173
190
210
186
250
224
187
179
276
135
250
180
210
244
158
149
227
127
225
209
163
222
279
215
226
203
205
228
170
246
165
158
190
184
181
213
243
221
170
172
193
204
195
208
226
242
200
221
162
180
225
237
204
163
138
221
106
214
137
103
202
211
276
196
203
223
199
190
194
172
208
195
260
186
204
241
197
226
235
204
256
257
204
244
188
194
192
188
172
209
211
251
225
223
163
183
160
173
127
217
231
175
194
164
223
171
176
197
194
198
144
261
240
257
204
183
245
212
224
262
197
246
257
235
254
229
255
176
219
207
208
159
204
223
263
177
171
110
254
226
197
178
202
177
220
209
182
162
225
196
239
233
180
203
212
182
201
193
280
233
141
164
195
208
155
210
166
229
169
179
200
135
126
224
207
212
211
227
184
270
162
178
165
217
164
178
240
207
216
210
254
185
255
235
159
166
203
181
186
196
188
240
205
151
186
245
146
163
268
171
194
216
203
212
218
215
200
213
210
199
218
179
212
172
207
205
241
239
220
227
249
219
212
213
156
236
204
245
202
164
186
183
162
158
207
252
181
274
199
178
215
125
215
173
235
157
230
257
224
234
262
224
148
221
241
188
228
293
222
210
238
172
212
191
169
187
246
227
231
193
182
191
205
220
202
244
249
188
267
261
182
244
209
215
176
204
194
195
247
260
212
208
267
218
221
206
251
211
198
273
202
182
184
225
162
183
191
241
217
244
258
179
232
229
217
175
108
225
204
205
213
176
182
204
195
201
219
206
183
190
200
172
186
254
217
216
201
223
164
139
175
250
195
105
209
140
165
242
248
213
140
205
210
142
184
227
217
260
197
262
175
210
192
161
229
212
161
204
191
185
161
214
122
207
207
197
120
111
234
115
196
238
259
186
221
151
236
220
187
240
198
215
146
230
148
208
215
234
170
200
169
146
181
160
198
239
200
211
126
203
190
203
185
267
215
236
232
233
200
234
198
208
269
177
167
179
209
256
214
180
196
213
164
265
170
190
224
175
207
187
163
155
192
239
269
189
137
207
219
178
211
202
241
187
190
201
251
172
224
272
160
294
139
180
201
221
187
218
169
192
224
209
242
255
183
211
183
238
186
214
172
153
152
165
178
145
161
214
165
165
198
253
159
158
199
179
171
209
236
226
170
210
234
221
190
202
239
223
197
215
236
198
183
158
166
175
167
239
183
195
222
248
227
184
192
169
204
193
207
171
198
234
213
208
250
189
195
207
206
252
165
214
220
230
175
201
211
178
264
175
229
246
178
219
138
183
252
233
208
215
205
251
216
217
165
240
182
137
279
224
199
229
181
197
245
144
227
208
222
228
177
161
210
251
188
216
229
156
252
192
234
180
238
196
210
208
223
213
189
154
211
236
163
181
215
191
237
175
205
196
182
211
187
204
199
166
249
228
230
212
224
212
162
195
199
146
202
178
256
180
247
204
168
114
186
190
225
215
173
190
220
183
189
247
222
156
158
243
180
200
180
176
176
181
244
215
188
223
205
128
206
194
183
172
201
261
209
197
143
217
214
189
218
188
238
224
186
140
200
183
171
214
179
180
204
227
223
223
212
154
252
200
162
187
179
163
165
174
162
201
199
178
234
125
186
213
290
246
213
199
197
242
204
172
186
185
256
141
217
165
204
203
218
266
211
212
162
194
129
151
211
213
231
194
237
202
218
224
248
194
189
185
155
162
280
252
172
174
217
176
227
220
228
235
186
171
219
227
221
223
199
203
216
211
191
220
198
219
199
202
163
176
190
200
240
155
183
183
176
257
213
173
257
148
220
168
214
151
215
195
239
182
197
190
236
218
220
116
238
176
208
91
196
218
241
226
208
138
195
224
269
212
238
252
184
186
176
222
209
217
187
137
176
235
150
202
190
203
221
214
203
217
182
193
152
154
167
189
191
177
181
208
199
160
279
169
259
188
190
205
228
218
207
217
227
233
153
229
175
146
129
175
179
152
236
222
207
249
186
127
177
222
211
196
220
200
152
258
229
248
201
193
218
198
196
264
181
207
244
183
179
300
216
210
224
196
136
241
271
209
220
222
236
163
230
161
211
203
222
204
202
167
217
225
179
221
217
195
243
184
203
240
186
176
213
155
256
241
154
183
158
186
226
167
216
161
211
176
126
188
209
202
216
174
132
230
191
196
227
224
186
225
223
216
166
224
179
236
216
216
165
216
194
212
211
185
215
175
191
225
211
181
208
177
219
187
184
231
193
203
215
192
204
225
209
180
206
258
189
221
227
166
211
241
251
213
187
186
234
235
242
141
249
230
176
276
232
218
207
222
210
195
222
199
261
166
218
192
259
233
234
200
181
217
156
202
209
185
181
172
174
176
132
224
257
229
206
183
187
160
189
190
214
151
239
198
238
151
202
234
163
120
207
218
222
185
233
243
219
203
191
164
188
236
184
164
181
140
183
209
200
188
137
199
207
241
155
205
202
244
243
166
188
156
184
240
172
221
171
205
213
265
187
154
155
199
174
222
213
229
182
207
162
210
156
193
275
187
168
150
195
193
189
187
229
217
154
200
266
178
202
201
170
225
197
244
215
228
214
172
191
232
208
188
181
222
173
172
220
164
238
161
112
209
197
193
213
208
153
190
209
168
238
254
151
187
179
163
200
241
219
230
225
188
193
214
163
198
186
212
202
201
167
221
223
213
191
187
178
164
169
191
167
225
187
183
230
190
182
176
234
182
187
207
189
283
172
202
218
156
165
205
168
177
189
249
183
228
178
214
252
191
207
258
175
180
213
167
235
197
162
244
197
129
158
199
166
228
178
174
170
162
144
229
240
162
162
135
178
232
172
229
209
235
183
186
171
147
209
168
143
250
180
119
184
244
204
235
208
210
213
234
247
180
182
213
263
191
185
209
236
224
183
181
159
227
158
192
166
255
197
189
217
193
214
182
203
190
213
213
287
253
209
268
248
228
180
246
193
227
190
288
203
187
193
218
136
139
197
222
182
156
197
198
184
206
259
295
200
189
214
160
237
246
150
251
156
203
184
171
148
224
178
190
283
183
243
268
174
230
133
196
183
174
216
170
140
235
203
198
231
216
203
202
201
206
189
226
176
152
234
188
197
166
192
175
166
232
160
206
243
209
168
179
183
204
200
179
194
143
177
185
188
205
199
210
217
156
185
203
251
170
145
149
188
156
256
160
193
180
184
265
202
176
163
153
191
240
135
210
211
157
202
243
199
217
166
229
211
128
244
175
198
200
177
241
171
251
210
235
188
200
250
241
228
236
136
214
189
224
186
226
183
193
160
167
157
222
123
202
224
194
201
233
174
152
191
192
150
290
227
206
197
172
246
232
257
233
206
164
270
190
189
183
198
232
131
213
154
189
158
188
212
218
70
244
232
124
149
189
135
179
209
247
132
213
207
144
146
159
213
182
171
181
234
144
198
209
211
224
205
190
162
235
214
230
203
174
265
148
180
205
177
214
211
233
184
221
160
155
235
204
169
175
205
226
56
162
172
204
251
209
213
255
174
173
246
204
185
161
239
224
244
233
183
186
197
229
195
111
197
134
233
248
218
201
168
218
178
224
175
218
236
213
162
227
277
163
253
169
210
197
241
265
211
164
180
250
215
163
168
217
212
174
196
206
197
210
243
161
186
147
272
199
143
176
187
188
155
219
225
184
231
212
165
188
188
164
183
215
220
228
208
211
184
249
188
168
228
202
160
183
189
191
227
278
228
235
211
156
212
194
186
193
215
226
232
167
146
193
221
227
194
234
235
244
208
236
220
208
210
212
194
209
245
242
170
183
264
218
193
191
197
232
205
161
230
163
217
125
230
154
193
211
208
176
180
242
213
193
220
247
197
269
219
178
241
243
246
261
219
263
193
224
209
170
172
220
193
203
192
233
194
236
222
180
232
216
201
213
178
202
191
156
244
212
187
237
243
215
183
216
208
226
226
203
195
212
191
222
203
146
166
230
173
213
195
198
264
212
157
205
183
148
214
174
147
173
251
221
175
199
214
179
240
234
186
176
171
247
141
222
219
218
247
231
215
210
143
161
232
182
229
236
222
167
249
217
160
218
177
213
214
166
186
169
167
199
177
212
185
178
158
179
180
200
227
203
176
196
220
191
159
212
195
212
206
155
150
238
208
287
229
232
165
123
228
137
191
169
226
192
192
153
196
200
159
201
210
234
151
143
193
183
112
193
194
264
220
218
222
197
206
239
221
206
190
239
226
165
231
202
220
205
167
162
242
159
236
258
149
166
173
220
170
227
236
179
206
139
235
198
195
172
212
215
242
183
207
160
242
240
216
169
229
166
222
194
180
258
131
198
234
244
256
241
187
158
160
254
226
231
255
213
179
188
241
262
170
183
136
186
255
211
211
235
189
196
248
227
143
242
275
219
245
172
149
202
246
217
151
223
282
168
209
203
191
217
167
143
186
145
219
208
165
227
180
292
190
273
220
205
160
199
247
205
187
173
220
208
251
190
151
214
160
182
169
147
230
238
200
208
184
215
224
188
241
221
147
245
191
163
213
192
163
158
231
262
232
214
190
208
127
258
228
141
208
255
191
216
199
186
262
237
149
197
176
177
186
199
156
256
148
156
248
232
148
182
203
249
212
215
227
200
157
286
232
239
207
195
242
292
207
214
137
175
199
178
214
220
180
197
211
160
206
252
180
155
172
232
200
194
205
262
197
179
199
203
206
181
267
238
162
202
241
242
176
201
183
202
228
151
184
284
205
196
131
196
234
190
172
146
195
188
228
175
179
175
211
214
211
240
112
222
206
254
256
204
190
173
231
214
207
200
183
232
134
157
148
249
250
238
151
197
196
118
171
176
261
196
213
221
229
190
215
249
234
162
220
207
182
188
181
237
174
244
189
136
178
149
168
133
159
166
178
144
200
237
198
232
226
188
180
232
225
133
189
129
183
230
213
112
203
195
179
213
188
175
191
140
218
208
202
193
231
238
194
191
183
170
175
205
301
172
196
173
209
204
202
211
150
211
211
226
153
234
219
159
244
193
227
227
223
234
183
183
227
203
167
151
207
204
216
230
194
205
202
230
226
142
216
168
193
180
221
224
156
249
197
221
257
150
215
186
242
205
199
251
183
176
162
229
170
209
177
223
147
215
250
189
254
190
205
191
199
237
221
189
187
210
210
128
272
193
201
162
170
179
201
177
199
207
195
226
190
163
235
118
175
175
220
188
188
208
199
195
252
203
209
198
186
166
165
224
183
170
194
228
212
201
192
199
231
257
184
187
196
220
160
237
214
229
219
205
148
226
155
216
153
194
243
193
160
175
258
162
249
199
260
164
208
219
166
168
222
220
167
231
224
181
222
240
190
222
221
266
197
170
221
223
215
182
268
220
222
218
207
180
198
148
188
204
191
125
161
168
210
190
179
205
177
214
182
155
165
131
230
247
188
195
217
185
178
216
208
198
247
186
159
222
214
204
175
175
244
214
173
216
189
206
180
278
215
242
165
208
212
184
192
245
241
178
235
228
187
204
242
203
210
137
168
174
224
200
240
194
208
231
176
194
266
168
249
162
217
210
209
251
185
168
196
192
167
204
152
218
167
210
198
157
178
207
147
281
178
169
271
157
211
181
215
190
223
160
169
176
179
248
146
206
113
232
158
222
208
142
244
244
241
184
206
213
202
156
252
175
259
229
237
150
208
216
267
165
238
217
210
116
175
210
214
195
213
203
205
172
219
115
174
200
170
213
137
239
176
193
194
248
199
181
245
154
192
202
230
195
203
184
205
226
187
184
212
226
141
121
151
212
236
203
239
159
187
145
197
195
229
196
234
212
221
202
164
152
198
175
174
236
236
217
208
186
202
216
151
188
197
178
168
197
178
229
186
243
214
215
206
191
237
143
176
148
128
181
218
244
197
206
182
203
262
226
232
192
227
216
256
161
223
193
232
198
239
255
163
179
191
190
160
203
233
222
176
229
227
219
194
209
251
266
128
244
164
233
250
209
182
243
161
183
166
239
188
284
165
218
221
152
236
267
239
208
205
136
178
252
174
250
160
259
170
272
217
183
253
157
177
176
208
157
215
207
159
183
190
200
229
232
176
140
213
225
245
206
203
254
250
223
150
229
224
177
187
222
182
160
189
146
172
238
172
232
199
178
190
176
253
198
169
169
202
204
168
215
198
203
142
224
198
221
201
229
138
176
183
199
201
184
156
233
197
223
202
181
192
219
186
252
200
246
207
220
219
150
202
256
144
169
204
218
213
175
210
225
203
253
188
241
197
267
234
151
256
202
213
167
193
170
159
94
231
158
195
236
224
212
230
201
230
172
243
200
196
174
210
223
265
232
183
230
139
163
245
225
243
229
209
237
215
201
152
207
189
202
199
179
260
208
150
242
243
209
222
153
211
265
151
168
174
235
220
153
178
138
238
213
252
222
227
200
254
241
205
166
210
218
173
208
202
169
243
138
171
220
233
212
221
142
213
217
218
188
226
149
186
244
273
224
222
178
220
223
235
208
238
228
161
186
197
168
229
195
226
183
242
184
206
152
215
150
150
253
164
252
183
180
175
159
237
170
243
208
197
159
225
281
255
217
134
241
200
171
204
233
205
209
200
206
213
220
186
255
192
218
156
249
230
185
192
234
213
243
220
278
146
191
225
184
166
234
226
226
185
216
189
148
179
179
196
227
142
225
261
184
226
226
219
210
253
146
206
227
193
159
200
176
169
272
153
165
170
153
163
224
173
146
274
183
206
242
242
227
226
186
249
191
185
188
253
168
162
199
238
227
179
185
213
214
141
194
203
215
210
182
176
215
195
197
242
233
224
174
223
196
187
176
234
186
236
221
196
142
238
202
209
181
128
158
179
246
186
224
220
195
196
197
221
176
134
274
172
216
183
222
217
191
198
159
167
206
240
162
183
164
158
213
187
228
183
170
153
200
218
220
235
256
213
248
134
185
189
195
192
213
181
232
192
223
221
232
205
217
196
174
223
251
206
248
228
245
140
212
199
209
229
144
248
262
145
228
125
234
206
215
157
287
180
200
216
186
226
264
208
195
212
165
255
285
220
188
179
159
231
222
181
178
192
177
228
134
189
199
164
185
207
166
239
217
208
204
224
231
204
145
181
215
176
158
205
182
263
273
230
190
251
211
176
169
154
236
220
181
226
179
214
205
240
178
219
227
155
170
157
148
193
209
215
166
277
199
212
236
207
228
196
162
227
177
184
217
211
212
244
244
140
185
196
239
214
247
202
267
225
202
173
172
161
169
195
212
168
163
231
196
236
243
162
134
174
205
194
162
222
210
208
275
194
149
165
224
157
196
293
274
234
178
153
235
248
205
154
223
250
145
193
228
159
231
158
183
226
176
263
210
150
143
175
222
167
135
246
191
226
205
238
214
242
253
226
166
168
200
191
224
194
205
163
203
212
195
193
234
180
199
213
230
186
228
143
187
187
172
210
195
200
185
201
169
209
183
231
158
209
225
221
175
266
244
187
224
178
148
245
223
191
235
174
162
234
182
248
216
250
187
214
187
206
244
140
166
123
229
188
136
176
228
195
170
176
220
156
169
200
232
220
159
151
181
235
210
218
160
124
137
252
236
156
203
181
227
148
226
180
177
213
252
192
206
186
154
151
156
187
237
155
180
198
182
248
197
175
156
211
177
255
204
224
219
193
183
214
166
172
231
206
227
199
235
226
151
189
170
204
215
239
239
175
221
179
216
179
160
210
190
211
205
249
267
250
181
153
241
230
229
198
200
161
212
231
222
177
263
194
138
252
198
199
156
158
203
196
174
222
263
214
166
178
248
199
210
195
185
212
210
182
237
192
174
180
221
135
187
197
203
147
201
166
147
186
202
186
177
256
200
154
261
202
161
122
218
205
183
225
234
204
217
201
216
253
214
213
224
188
192
188
181
213
196
211
196
219
153
207
145
206
191
145
186
219
206
169
189
229
206
247
213
142
63
172
236
159
217
159
245
183
141
264
201
186
107
211
218
246
205
117
248
225
189
199
213
197
203
240
191
219
242
200
171
142
214
195
191
206
191
215
199
246
194
225
226
172
193
263
132
171
183
201
235
152
191
185
175
175
228
169
179
200
144
209
196
132
230
219
257
231
242
194
242
226
165
240
200
241
211
178
220
231
177
207
192
256
158
138
149
216
209
138
210
251
219
154
162
226
194
177
224
221
183
208
196
194
250
143
154
228
239
207
213
157
181
104
195
169
248
199
218
214
149
181
188
200
232
204
228
222
208
192
246
236
228
200
194
173
188
173
247
235
196
216
208
196
184
253
204
221
216
143
198
278
265
245
252
184
192
232
199
155
225
202
167
231
173
219
175
207
215
227
139
216
200
177
220
160
155
251
242
238
165
229
172
140
191
185
211
190
205
208
202
191
214
246
177
196
224
218
178
185
193
211
230
237
204
206
275
192
180
199
176
165
196
221
219
188
166
254
127
169
128
192
186
160
219
209
221
221
202
116
205
191
216
259
211
129
183
184
214
178
153
208
229
163
178
217
177
196
182
224
268
266
193
197
161
204
172
263
213
266
201
194
169
216
237
207
177
178
150
197
210
180
245
195
214
190
239
222
188
152
189
158
202
154
239
203
181
171
182
123
187
213
169
222
214
222
164
217
232
151
236
140
237
208
177
188
211
168
171
226
197
123
213
207
181
191
219
177
192
247
172
200
229
108
132
126
222
225
208
233
187
227
220
193
212
187
222
130
199
182
146
186
150
237
182
201
216
197
189
123
269
260
259
231
197
198
221
228
246
184
171
230
101
177
230
240
265
195
202
191
177
254
148
110
233
199
197
177
183
195
199
189
195
222
213
209
218
290
201
214
137
251
135
287
246
189
196
200
249
226
131
162
238
230
150
190
163
242
226
267
209
201
204
187
150
179
147
149
163
188
195
243
216
227
229
196
159
229
212
210
186
159
211
142
191
182
218
227
211
220
170
187
166
230
115
205
212
192
184
271
157
187
265
238
216
163
169
218
234
235
223
121
255
191
216
179
237
193
192
184
210
191
160
240
208
214
184
166
195
217
222
193
221
135
228
187
163
206
221
180
215
145
147
244
246
200
182
155
176
241
207
209
200
205
158
217
171
243
175
149
203
213
210
139
132
167
247
208
204
215
162
223
152
236
117
214
192
191
190
203
217
222
239
187
170
178
150
188
152
162
191
275
219
164
186
134
161
198
227
240
228
204
183
177
212
229
203
182
207
255
218
149
199
228
244
181
174
263
248
127
226
220
203
170
250
238
176
251
164
232
237
149
179
230
234
170
204
187
229
159
197
211
225
166
203
169
172
160
227
166
184
183
214
156
204
217
211
224
147
257
165
266
174
179
247
234
208
215
190
228
226
236
217
167
231
229
177
223
171
213
237
187
187
188
178
201
147
122
238
200
163
205
234
184
149
225
226
200
270
193
240
138
181
195
192
209
217
232
223
174
209
130
169
184
222
164
195
142
185
151
243
164
250
192
210
185
180
251
263
227
204
206
209
229
232
179
209
226
230
170
236
220
269
274
186
202
190
242
78
179
211
96
151
184
180
179
155
290
166
189
229
238
146
201
180
219
212
185
261
242
198
179
189
256
208
214
249
162
240
167
197
239
229
295
261
165
221
222
181
220
244
258
225
251
185
233
169
244
255
205
190
253
204
195
213
236
203
250
246
237
207
157
224
183
195
238
169
228
268
214
144
217
204
243
198
228
167
173
216
210
166
210
195
187
213
162
159
301
250
262
208
166
166
214
224
154
230
192
217
156
216
214
246
171
194
256
152
220
212
209
182
226
173
248
223
212
219
157
177
173
228
232
214
185
204
181
182
145
196
227
210
187
199
150
221
182
223
143
179
168
255
190
222
216
226
202
160
206
268
126
235
226
244
261
260
185
255
240
196
219
184
212
228
224
240
146
185
145
111
194
213
159
174
154
160
194
243
233
227
176
233
147
179
205
151
184
197
188
203
188
239
216
199
190
248
209
185
174
176
207
192
170
167
237
244
165
158
240
251
114
186
258
188
186
139
174
212
191
263
209
170
199
207
166
179
197
142
187
228
150
206
212
241
132
208
172
193
186
218
190
123
211
207
220
171
245
170
204
184
275
189
232
185
257
120
157
227
248
204
236
209
163
149
175
155
171
156
238
229
185
157
264
218
196
218
216
160
188
230
208
183
188
169
225
209
204
203
154
223
183
206
101
185
252
212
151
273
238
185
200
202
199
190
201
215
155
188
161
206
223
182
126
207
202
190
188
193
220
205
179
159
198
201
169
205
212
217
260
199
223
222
172
223
215
218
249
221
241
218
230
194
193
219
195
271
210
154
230
186
208
204
214
195
218
162
175
229
196
225
168
146
235
135
225
184
178
159
200
212
212
217
207
241
232
197
189
139
179
247
154
192
200
206
158
232
236
204
163
190
256
203
164
195
181
195
248
207
209
210
143
185
173
214
191
231
192
245
239
161
190
221
190
244
201
245
180
246
136
213
220
163
163
203
155
216
165
232
209
200
198
192
189
182
231
209
205
237
195
192
204
224
200
178
240
186
156
182
202
183
186
198
207
199
225
162
176
188
181
90
208
217
182
227
151
228
240
223
218
201
219
127
191
180
211
206
212
222
245
162
207
224
157
262
185
253
186
173
128
184
174
234
218
165
164
193
247
212
183
229
188
169
168
148
230
214
145
170
184
234
231
247
190
184
223
205
204
227
252
201
164
193
166
215
174
201
170
199
232
221
184
194
149
180
175
184
249
230
219
230
161
224
188
237
148
226
246
127
223
171
235
266
178
228
213
187
194
121
240
167
120
203
215
214
234
127
248
149
211
182
200
222
242
202
228
161
125
242
221
215
218
189
178
197
265
142
223
225
253
169
164
185
207
225
145
207
255
139
142
162
172
155
205
199
169
171
256
234
222
271
172
222
174
220
168
154
301
197
202
244
193
225
154
181
204
187
279
244
166
161
197
212
198
216
139
210
191
207
194
221
152
94
168
159
229
180
228
137
188
232
199
237
124
195
229
212
146
191
207
208
230
174
215
191
185
259
177
255
159
190
177
190
228
287
175
206
183
225
186
172
226
215
205
185
203
163
194
165
258
200
162
191
225
159
161
149
251
186
160
167
198
179
175
221
214
199
123
249
134
195
181
243
161
238
158
164
179
207
175
195
214
269
159
157
227
138
181
219
263
188
214
169
195
198
185
230
218
169
174
200
203
271
187
243
214
202
207
129
148
242
135
132
194
235
222
200
242
149
217
187
180
143
225
154
204
152
207
236
209
271
155
262
227
170
241
184
165
220
135
242
169
227
191
168
221
184
179
217
211
148
199
209
224
164
203
183
174
131
149
216
256
219
242
199
267
210
164
178
208
187
186
170
227
182
216
210
155
181
243
219
207
272
254
190
176
231
216
184
192
178
245
156
186
257
230
172
174
199
242
252
179
229
151
221
215
198
238
169
249
163
212
212
199
174
207
233
147
206
184
206
211
229
149
179
174
261
135
221
189
177
178
187
200
142
211
151
221
229
180
153
203
220
151
243
165
179
198
202
237
206
187
186
201
247
195
170
260
168
179
164
194
208
200
110
187
139
203
177
204
206
212
258
242
234
144
194
190
171
214
179
139
169
245
199
164
252
291
194
161
228
155
170
237
198
195
161
180
234
259
216
145
208
176
223
213
216
241
232
261
220
176
221
218
189
220
276
172
234
173
197
150
175
168
208
184
191
197
150
191
202
206
194
224
156
182
157
237
198
229
242
198
211
198
188
209
198
226
175
202
196
194
167
181
209
221
249
158
152
178
203
201
218
224
185
253
229
218
198
152
179
221
194
213
189
248
192
227
231
219
172
205
222
220
195
221
219
130
174
189
152
223
248
171
199
220
221
173
147
209
191
232
169
174
174
212
217
185
181
146
296
176
214
210
180
181
239
192
188
216
232
188
217
199
196
191
183
182
206
221
165
177
142
165
171
216
172
171
152
231
180
218
262
191
171
222
213
215
197
170
204
208
204
217
203
194
192
116
239
232
199
244
186
187
225
235
200
217
203
185
161
200
232
145
259
208
233
145
198
195
197
251
214
221
197
166
197
217
221
158
268
258
170
177
221
218
197
203
171
195
110
177
171
190
208
251
209
201
140
249
156
192
231
191
185
255
199
194
193
195
190
242
146
254
204
262
214
237
190
165
245
245
192
203
210
205
283
223
220
130
235
225
203
209
228
198
199
133
224
197
203
165
212
196
213
253
126
165
179
212
254
192
157
247
209
172
206
166
227
181
200
174
170
212
211
213
160
239
184
175
223
181
231
225
221
233
185
216
225
245
251
203
249
189
168
182
222
209
213
202
187
196
166
218
150
201
154
182
160
226
124
214
197
187
205
270
208
201
183
102
227
216
192
168
196
209
190
194
233
252
203
253
212
196
221
248
242
168
165
189
221
204
216
219
203
160
262
206
168
160
195
252
148
261
227
222
212
163
235
192
227
152
201
195
110
198
206
142
232
161
201
209
276
192
241
215
179
134
205
189
263
157
197
177
126
195
237
178
183
211
171
191
252
234
188
206
248
163
192
262
211
228
214
184
185
222
197
178
210
227
218
195
239
207
203
278
187
249
220
109
213
199
242
183
248
205
214
255
186
147
174
158
197
201
202
194
203
186
213
209
214
156
221
215
170
238
193
200
140
195
173
242
247
211
210
191
134
142
219
147
201
150
197
220
192
201
233
242
208
205
246
148
185
242
281
209
154
219
215
225
195
234
228
209
209
228
154
210
173
194
180
145
248
173
205
210
215
161
225
215
183
255
178
231
178
200
249
175
139
213
191
223
216
216
181
194
233
241
181
192
167
254
210
168
195
158
210
232
222
203
241
178
250
191
180
222
165
164
220
247
203
200
199
140
194
182
208
211
211
159
175
235
256
224
216
231
265
208
197
183
231
222
203
174
229
185
218
236
189
225
120
235
239
195
147
219
176
152
193
217
199
142
178
175
218
227
150
192
202
186
194
176
226
162
189
174
179
172
173
219
217
181
261
192
138
232
168
168
255
179
231
216
239
216
194
219
185
128
177
137
213
247
165
184
201
147
210
265
196
219
203
168
176
172
178
254
216
151
209
272
243
148
209
203
235
221
212
183
229
177
257
230
231
195
161
197
252
158
205
117
226
207
223
266
175
174
185
204
238
203
174
230
205
214
256
169
187
153
249
215
186
169
181
245
222
189
279
165
215
184
210
226
188
211
220
256
214
229
232
234
234
279
276
194
154
170
160
230
153
213
132
195
188
133
209
198
224
211
149
224
118
204
206
201
257
215
196
217
225
176
194
189
222
207
258
206
191
181
167
247
214
214
101
231
190
185
182
230
207
198
280
197
210
210
153
213
187
196
211
221
202
188
182
248
255
158
240
196
191
148
159
250
202
112
203
215
272
237
188
184
230
198
194
214
209
267
209
261
248
223
238
171
247
193
227
185
213
128
192
241
221
236
210
200
233
208
218
231
159
198
163
245
234
163
271
185
184
249
253
190
272
245
210
216
189
129
159
185
264
245
210
134
253
168
201
215
245
158
192
237
203
224
174
162
171
234
213
179
200
179
226
192
188
239
163
191
218
218
240
182
237
241
213
217
214
216
167
171
217
150
166
206
159
210
239
158
191
214
96
194
281
199
221
189
201
224
211
242
193
162
165
176
213
221
149
183
228
165
154
183
198
222
192
178
239
182
224
187
202
199
154
137
236
221
138
187
272
186
200
145
199
183
188
191
164
269
186
181
207
209
161
163
175
183
161
241
230
227
145
237
169
197
219
273
198
154
180
164
184
166
179
202
123
133
162
217
156
195
266
190
203
155
195
218
185
176
224
216
233
185
125
191
204
148
229
151
221
259
246
152
233
221
151
196
200
191
210
183
208
169
144
225
157
219
210
165
234
194
227
210
207
131
210
234
229
223
117
131
224
153
210
151
191
238
236
218
199
182
221
209
231
200
140
206
188
174
216
227
207
195
184
167
199
274
292
214
192
259
255
201
223
175
215
233
209
221
221
186
209
225
257
233
222
195
248
200
189
174
224
203
218
182
189
232
127
224
237
232
238
177
205
215
144
162
255
212
191
178
250
185
194
204
142
229
210
237
208
169
232
238
228
222
177
254
186
164
155
241
216
257
225
212
188
221
154
140
211
203
268
255
138
233
183
221
186
173
180
139
193
233
250
196
147
154
217
209
185
164
208
222
165
244
167
198
211
210
165
220
219
229
200
195
197
153
197
213
272
208
204
204
252
188
197
177
212
216
222
162
228
224
182
220
174
229
199
246
206
214
212
177
218
169
205
197
178
214
164
234
219
213
217
141
232
165
151
237
190
167
251
167
179
151
234
200
163
176
195
227
177
192
220
212
210
231
241
194
178
180
235
175
161
195
182
222
208
187
205
151
181
160
191
227
185
178
172
240
192
178
268
229
226
166
223
171
243
217
209
125
195
219
214
193
211
199
198
241
213
212
210
261
173
190
241
223
189
200
218
183
187
194
269
170
218
199
180
240
211
177
156
216
153
227
155
210
185
246
234
276
196
212
221
177
227
232
251
250
190
201
186
230
171
223
233
179
166
135
257
225
146
229
235
184
227
186
165
205
134
182
210
172
195
195
186
178
181
192
240
215
209
210
182
224
249
200
220
184
232
165
236
178
125
231
224
231
241
201
200
126
251
201
171
168
269
172
144
213
223
258
196
254
188
215
180
239
255
139
206
240
226
253
180
233
195
139
180
221
196
242
187
196
173
223
252
216
204
190
198
215
222
220
195
137
245
217
151
230
201
185
205
213
195
257
209
212
241
261
134
198
202
194
243
231
217
232
240
223
212
236
225
193
175
182
225
206
182
156
172
171
256
201
220
254
195
134
209
122
196
178
243
158
170
217
183
200
240
157
206
205
135
249
211
203
199
213
192
211
178
220
204
200
203
174
217
155
208
166
170
236
170
215
208
143
192
228
180
198
194
245
235
190
239
140
214
137
208
174
123
201
129
155
185
212
179
227
226
176
217
254
215
198
284
214
204
187
207
258
197
208
226
173
168
221
231
247
245
161
174
167
190
160
179
161
182
195
153
223
215
165
193
253
220
175
224
146
145
271
197
179
127
188
208
159
245
209
209
233
225
149
173
188
185
240
229
232
168
201
192
174
122
252
168
198
186
252
209
197
169
263
200
188
154
260
199
166
211
220
215
247
233
174
182
196
182
168
192
249
182
177
219
202
152
206
230
206
211
172
204
202
211
171
202
209
187
199
193
156
259
253
249
194
212
237
181
266
150
193
178
276
219
219
207
204
188
269
234
187
185
151
174
191
196
247
228
241
210
190
189
181
193
200
182
232
138
190
198
222
151
244
197
134
138
224
217
146
185
223
188
206
207
193
186
214
262
144
216
178
181
193
230
223
180
223
181
196
205
166
243
195
170
258
247
214
243
222
182
209
121
169
211
222
178
256
201
184
202
234
274
210
264
169
192
229
160
219
188
194
259
201
144
209
245
175
202
248
218
189
189
219
254
223
202
168
159
241
180
238
231
207
255
155
204
162
192
248
198
186
104
234
181
233
176
169
192
165
238
185
247
227
206
146
235
259
207
254
266
200
181
214
231
208
192
186
206
244
174
232
267
162
194
175
205
238
208
196
228
175
246
186
243
187
134
166
201
176
176
157
228
185
151
195
262
250
180
192
185
178
168
192
232
188
183
235
209
240
189
203
128
191
220
162
176
195
157
218
172
231
235
166
235
202
229
268
200
228
188
148
170
264
150
164
245
169
176
154
259
157
193
197
205
250
196
220
191
242
235
241
163
212
165
158
243
222
155
208
182
191
193
155
194
217
197
161
209
198
172
92
178
185
210
181
174
198
219
208
234
193
234
227
162
199
224
148
217
182
177
207
251
216
181
214
191
190
157
195
162
141
250
220
182
186
197
192
259
180
215
154
172
204
233
211
128
160
110
228
164
202
232
249
217
224
185
208
245
152
204
233
186
209
177
152
203
182
214
197
194
140
209
215
174
189
221
206
196
262
189
189
221
224
229
146
225
173
158
207
191
156
207
217
225
185
208
190
121
171
189
176
205
177
179
155
258
174
225
249
245
187
209
214
154
217
230
193
215
214
189
209
139
279
229
169
166
233
230
211
172
157
132
194
250
158
243
255
146
141
227
165
160
215
216
208
169
177
219
153
265
154
141
236
216
223
216
134
97
193
195
209
206
183
178
193
233
158
268
245
241
244
149
180
142
122
214
178
211
168
236
226
223
212
198
250
195
172
214
146
228
184
182
136
175
196
95
214
217
182
261
150
237
203
167
260
195
168
146
206
205
155
210
139
188
150
157
208
187
174
133
191
221
156
181
209
165
178
187
174
174
121
219
207
213
180
251
229
175
146
258
186
271
262
145
221
176
158
200
252
226
190
212
258
195
165
218
226
236
203
221
211
178
210
195
229
214
233
206
268
195
137
212
211
198
206
219
190
171
197
261
227
199
230
113
203
212
202
142
187
256
246
160
277
199
172
199
226
207
165
192
193
132
201
249
298
262
159
228
230
229
234
183
212
180
174
222
180
181
173
145
206
200
206
189
217
191
224
192
175
190
193
209
213
177
242
209
214
186
220
172
182
185
200
229
246
242
200
198
147
214
207
215
201
224
202
184
129
104
194
189
212
232
181
203
188
178
170
177
243
149
193
239
133
182
145
231
247
174
196
246
160
207
244
283
228
239
165
155
188
191
218
186
173
239
176
191
199
189
202
174
276
205
190
221
183
140
210
153
191
158
128
159
190
145
186
178
205
268
199
239
216
191
182
201
255
232
210
201
141
200
187
213
163
189
186
161
280
176
252
166
262
201
223
274
102
190
220
157
190
216
187
148
159
207
186
203
214
210
120
218
189
193
221
125
214
219
181
227
198
219
188
212
188
194
177
148
227
116
202
200
151
227
222
189
165
181
238
214
179
177
159
216
171
188
187
168
231
233
119
222
248
188
211
246
248
212
163
206
227
156
199
142
121
213
184
210
215
166
193
228
246
208
212
183
160
261
204
182
230
227
231
204
210
203
189
213
177
199
213
241
243
208
199
159
162
184
182
234
243
200
154
162
275
197
138
191
203
178
189
266
205
188
174
227
162
124
220
193
208
204
185
200
162
199
191
183
249
206
152
253
265
130
239
192
227
163
203
229
198
189
204
229
176
200
206
166
234
185
146
194
127
243
283
196
225
163
239
213
171
259
163
228
188
251
175
261
232
160
186
224
174
218
155
182
169
202
229
190
237
198
187
213
176
199
228
299
247
211
205
200
179
192
223
243
170
172
195
164
242
201
136
203
174
189
251
250
247
226
255
174
242
243
230
216
235
205
274
196
230
227
220
157
139
258
247
222
159
246
176
276
209
207
216
129
154
167
177
191
178
210
203
231
274
211
157
240
210
210
138
109
239
189
234
181
192
166
210
162
227
169
200
147
240
179
218
186
233
189
210
199
170
245
227
195
252
105
213
197
162
203
203
203
170
146
235
204
220
144
185
174
191
156
201
191
211
241
219
257
220
219
215
182
253
200
224
241
225
201
284
155
199
188
154
233
241
199
230
256
185
205
238
186
248
237
245
223
176
129
210
232
263
208
264
138
169
188
154
221
206
165
259
190
157
185
191
126
196
251
185
176
203
226
141
172
201
235
198
215
203
186
240
221
172
267
236
228
149
209
204
189
134
127
169
219
270
147
167
189
196
206
132
176
198
252
192
245
246
193
204
173
180
188
176
149
170
248
201
179
184
200
226
186
184
166
147
201
183
201
178
151
106
199
234
222
239
199
219
185
216
184
185
150
173
162
158
207
199
160
205
185
207
196
154
167
167
230
208
190
183
251
127
176
174
224
159
251
205
228
185
243
205
234
219
204
141
215
238
210
217
209
156
263
214
205
147
270
159
122
203
210
212
214
225
167
183
203
247
198
202
178
204
220
200
185
173
253
251
188
166
214
262
195
175
193
215
228
167
181
208
162
248
184
163
177
212
189
243
218
243
156
168
212
190
180
231
217
189
170
207
185
197
157
199
175
200
204
208
250
223
244
204
150
256
201
172
172
196
247
250
250
177
220
217
211
217
219
234
170
210
217
181
223
240
190
196
218
272
226
165
217
145
199
217
154
192
225
147
169
242
176
245
210
243
241
202
188
211
184
183
217
154
171
210
222
265
178
211
199
215
161
176
228
182
216
214
229
218
137
180
232
229
213
181
192
187
205
190
222
196
258
190
217
245
160
155
231
245
185
205
259
245
194
225
209
207
221
228
235
220
270
178
137
229
226
187
208
201
142
204
204
205
199
204
233
166
184
231
257
193
176
216
137
190
223
150
247
210
182
169
193
205
190
197
201
222
211
205
161
169
177
183
166
245
259
223
213
186
191
219
186
237
204
234
188
224
180
217
184
210
241
177
213
136
202
201
232
135
222
231
163
240
215
160
252
173
187
115
202
230
207
223
185
181
246
211
205
216
184
212
247
239
188
200
153
210
214
215
178
246
195
224
248
236
185
202
235
188
231
219
232
246
222
187
201
164
220
241
206
209
268
157
205
249
290
211
179
240
181
157
255
235
215
222
225
214
219
239
155
241
183
205
164
260
230
239
250
109
159
181
183
234
200
206
185
187
248
204
222
176
250
216
153
197
230
153
158
125
183
182
193
135
156
171
192
198
184
249
145
205
226
183
221
178
170
152
219
186
200
171
216
253
166
171
208
190
211
200
130
214
229
225
147
163
182
239
172
173
295
170
130
159
159
173
207
253
161
205
253
243
199
173
156
241
216
217
150
244
242
202
176
178
206
197
212
208
186
202
181
187
167
161
190
207
198
229
165
204
150
180
222
161
216
218
160
195
185
256
166
200
231
241
194
206
152
191
210
207
194
248
201
195
193
212
209
172
221
228
179
189
210
214
211
172
194
234
165
170
153
223
262
175
146
174
226
203
256
221
174
199
217
204
266
182
185
221
196
244
157
184
160
212
166
179
196
237
186
173
234
241
200
171
173
241
209
233
133
188
187
221
213
236
204
201
205
181
222
234
169
184
201
216
224
162
125
204
235
219
211
162
225
173
155
198
211
203
244
183
222
207
270
216
206
238
182
146
213
185
153
206
124
222
232
230
149
224
246
154
196
174
171
211
170
218
163
224
199
219
162
185
166
190
133
256
187
188
214
245
202
214
213
173
203
218
203
223
212
198
176
175
239
224
144
208
171
229
148
253
184
185
176
236
222
241
180
207
216
223
224
153
162
241
200
173
220
198
183
213
181
184
167
197
210
208
177
245
242
250
236
224
158
202
178
210
135
231
134
189
205
234
239
263
219
142
131
202
222
146
206
199
172
163
180
202
160
192
218
175
128
251
180
193
145
239
227
170
219
149
209
183
155
142
206
241
204
201
176
152
253
222
184
263
201
191
176
165
168
142
153
192
122
189
177
236
189
207
211
191
208
246
196
176
225
208
188
140
172
204
179
254
246
220
191
204
226
155
259
143
129
221
272
166
176
148
260
245
215
237
196
215
157
234
131
236
190
181
216
219
196
240
145
210
176
170
138
169
235
201
215
204
206
200
189
220
224
164
187
212
205
191
229
217
244
192
166
261
213
161
200
213
184
179
184
124
220
207
203
210
161
179
192
244
224
195
184
274
229
203
195
195
187
219
194
175
188
214
219
147
222
164
212
193
185
256
209
257
190
248
161
268
219
192
141
163
186
209
181
216
196
177
170
198
203
188
169
233
147
198
178
185
245
218
195
173
160
206
151
162
190
240
194
209
211
163
233
215
232
246
168
197
194
214
135
185
157
186
233
209
231
180
190
164
165
213
186
254
199
228
162
236
234
173
175
206
238
190
138
171
161
234
198
196
183
248
166
193
173
242
182
229
260
192
192
180
192
187
232
179
250
288
188
165
182
164
227
168
221
206
227
224
234
208
205
193
186
184
190
158
171
220
205
228
208
188
178
186
241
214
192
191
183
210
143
192
147
217
180
205
211
219
247
281
151
179
161
237
210
216
243
165
224
197
227
191
212
218
195
196
137
149
172
231
208
183
225
219
234
217
219
239
168
229
216
158
178
191
234
184
200
123
232
211
228
216
223
220
180
195
218
224
275
157
214
167
204
174
165
236
226
239
183
214
210
152
201
167
240
161
244
185
185
205
182
136
178
182
227
187
143
207
213
171
188
254
191
214
195
246
237
191
199
205
177
172
227
157
203
203
199
206
153
221
249
194
201
219
211
175
184
209
230
176
189
249
200
267
211
259
240
195
171
138
194
169
208
196
201
276
185
172
197
172
198
176
233
189
222
174
145
205
199
166
218
221
196
209
213
163
167
198
240
152
198
114
205
196
209
179
203
239
222
175
218
204
258
236
192
230
182
239
238
206
112
255
190
165
197
236
174
197
225
259
178
149
172
206
202
250
169
160
178
211
187
247
236
178
231
244
268
163
190
196
151
273
214
212
201
202
173
223
158
213
178
250
222
148
181
233
268
167
157
215
217
160
190
277
242
204
155
225
228
210
198
248
229
221
197
180
207
187
148
161
188
274
162
238
191
226
217
246
158
119
200
156
266
210
216
180
178
164
258
213
229
235
197
216
211
190
141
246
203
214
179
225
156
182
204
215
250
276
183
218
215
147
222
150
170
181
191
176
194
190
202
225
228
194
155
168
263
194
150
242
166
165
186
197
189
260
169
174
201
199
198
224
212
211
176
150
182
136
188
240
168
169
227
174
251
162
157
212
266
219
202
239
259
189
202
252
243
171
195
258
220
234
192
181
163
135
230
221
164
191
179
188
262
161
190
132
211
167
205
214
186
230
173
230
120
133
172
164
258
229
255
242
206
129
212
200
273
199
196
173
182
216
288
199
226
249
260
192
258
249
183
167
174
150
186
211
232
213
232
221
250
222
206
190
188
140
181
151
203
180
138
245
134
231
230
192
229
160
156
233
265
201
189
142
142
197
193
155
215
188
160
158
160
199
267
169
199
236
195
182
224
238
127
230
290
221
132
161
278
211
157
171
177
148
218
232
244
208
221
167
141
242
158
186
224
154
191
186
157
220
171
242
208
224
213
194
236
156
206
195
257
185
176
234
211
205
197
183
162
259
215
165
205
178
231
208
201
187
233
245
208
209
209
192
207
220
231
242
199
202
214
180
232
235
206
173
115
168
229
216
217
179
160
137
153
221
154
169
177
194
223
208
125
220
169
249
196
198
152
184
213
180
189
179
254
154
167
178
234
141
182
217
137
169
195
192
191
192
222
251
186
145
180
200
192
243
162
226
207
177
180
172
178
186
218
199
212
232
229
219
216
227
164
139
228
251
173
182
219
231
189
158
228
193
206
259
259
192
210
242
190
173
179
175
273
193
185
200
164
237
199
181
274
178
168
217
206
170
200
235
243
160
178
240
206
193
219
117
156
149
231
158
165
164
139
159
210
184
199
236
157
182
209
244
156
250
211
197
227
162
219
127
190
185
240
252
147
218
219
225
189
190
236
192
141
166
177
193
249
223
219
184
134
257
176
181
194
242
247
224
168
162
118
180
238
146
175
200
246
225
206
160
182
207
200
203
215
223
156
231
156
244
219
211
259
221
196
189
186
222
252
208
202
130
222
196
210
225
212
220
188
156
231
167
200
220
214
201
276
211
207
222
255
184
135
145
223
228
212
229
198
177
191
153
213
243
176
197
124
211
267
209
213
178
252
161
233
151
194
199
237
211
134
184
161
146
235
252
203
182
179
184
218
149
237
225
262
178
192
199
206
176
191
209
214
176
207
240
185
253
175
210
187
257
186
145
169
187
229
196
244
150
153
182
229
205
164
239
183
191
195
201
226
211
187
222
211
197
172
234
196
203
229
236
245
195
151
199
193
234
202
160
196
210
248
207
262
163
159
190
204
154
206
233
176
185
151
196
278
215
216
178
146
236
208
202
242
177
197
161
237
199
182
178
227
158
237
122
256
182
195
192
180
111
177
195
188
192
217
207
219
231
200
206
214
170
216
166
245
136
139
200
232
211
239
221
190
256
190
228
233
221
225
205
167
235
234
173
183
198
231
184
149
235
291
210
183
168
221
216
255
278
101
214
205
265
220
199
210
190
249
224
162
216
205
191
223
217
193
227
184
186
219
293
216
159
194
235
201
186
195
207
235
252
239
219
161
172
205
200
216
188
174
182
193
242
224
202
132
202
188
175
182
244
171
211
230
201
190
167
244
196
248
195
203
219
248
195
226
187
177
201
235
224
190
222
252
199
296
189
191
194
166
182
216
163
216
181
205
228
186
151
187
163
190
168
206
196
189
202
186
224
192
155
220
118
171
220
152
176
149
146
202
241
229
235
271
163
204
241
182
253
233
176
275
231
168
138
183
216
180
147
141
207
155
179
214
231
156
167
204
160
151
235
212
174
228
159
226
179
235
239
168
171
223
142
165
194
203
211
224
163
220
187
203
140
196
184
183
211
229
134
209
169
186
191
196
172
201
196
155
144
150
190
223
234
215
230
213
222
245
186
215
232
234
290
203
182
183
173
255
193
170
242
245
248
205
179
172
239
162
246
214
156
180
162
178
207
233
195
174
225
270
234
189
198
245
257
203
165
181
228
190
214
143
166
168
203
209
169
212
175
202
206
186
129
280
179
202
228
138
192
249
217
196
200
188
189
181
155
136
164
179
250
168
167
142
168
174
228
172
167
170
217
176
229
134
229
178
153
250
184
133
249
142
166
124
254
199
173
159
203
224
215
213
202
207
164
206
155
238
182
220
184
173
219
188
203
211
186
162
136
186
244
181
155
219
236
193
184
259
186
174
251
228
228
226
196
210
231
217
212
192
233
227
213
221
127
181
195
243
227
219
184
183
180
198
224
194
240
209
194
195
233
146
198
165
165
195
180
177
169
211
208
226
181
219
209
151
187
184
228
218
208
300
201
160
209
184
228
225
235
164
187
202
196
230
183
246
193
231
163
178
184
187
180
215
236
207
169
112
211
249
223
234
234
172
243
197
205
178
218
207
151
221
240
234
219
208
201
187
196
220
192
193
229
205
177
210
210
199
207
215
164
217
252
139
255
188
203
177
234
142
240
163
176
173
171
178
175
190
223
236
185
220
216
190
233
220
185
220
226
203
134
196
172
198
177
192
242
163
237
195
237
205
230
231
195
244
183
164
209
224
237
196
158
198
217
201
262
161
170
220
192
170
211
273
127
221
167
214
228
174
132
183
191
233
148
146
210
268
223
217
202
216
214
155
179
193
190
181
248
197
220
196
153
175
173
176
235
221
232
201
224
187
205
157
208
160
270
201
257
190
238
175
197
228
213
229
202
162
244
213
141
137
179
207
161
261
216
190
177
232
138
238
180
162
188
197
179
185
202
149
257
166
103
187
188
220
217
171
204
253
182
236
236
197
212
191
175
264
223
216
226
226
208
237
233
243
244
149
254
256
202
183
181
220
181
236
240
195
210
152
175
232
187
248
166
159
265
218
217
176
215
251
196
232
166
197
172
225
221
215
285
188
235
233
184
209
159
244
181
208
212
144
237
157
187
164
199
252
163
217
205
226
275
266
152
246
241
186
212
187
198
194
198
211
176
140
177
203
220
226
113
169
189
183
164
243
185
187
190
176
175
253
213
194
263
203
192
217
191
239
216
237
176
184
214
178
194
190
220
227
194
266
201
210
146
267
223
202
273
187
220
171
235
110
255
189
115
237
209
137
224
214
243
232
186
157
165
178
189
195
192
220
179
186
218
213
232
213
197
180
194
234
193
231
200
171
173
175
207
287
254
266
187
172
243
143
232
200
166
218
188
225
212
160
205
198
235
184
214
203
206
222
191
166
223
150
207
180
178
157
208
189
167
179
238
164
256
152
219
220
205
175
215
175
204
184
245
226
227
175
185
204
183
260
154
194
204
183
172
172
218
157
131
182
257
222
241
191
219
221
201
244
196
175
217
200
243
248
147
142
184
182
279
185
153
229
203
243
200
193
242
199
248
219
184
193
208
205
183
195
221
271
205
211
170
197
210
211
175
177
200
215
283
186
214
202
258
196
165
212
199
135
183
188
171
237
195
259
247
222
143
186
174
225
229
179
182
236
167
185
212
224
153
265
174
176
201
195
193
172
230
227
252
185
172
218
105
217
220
203
171
209
208
245
211
227
224
183
272
184
166
180
239
232
188
141
228
156
231
246
210
179
218
226
255
196
189
153
194
219
194
208
173
200
138
169
132
200
203
122
200
212
246
203
144
186
169
201
158
242
162
148
208
173
224
144
191
197
219
163
128
190
194
236
163
163
162
254
164
137
213
243
243
193
161
185
162
156
234
218
211
207
184
191
202
242
204
253
256
110
198
181
252
167
224
191
165
183
166
180
209
227
215
203
247
254
239
195
206
301
264
223
259
157
259
146
203
213
179
239
206
263
156
231
212
249
163
138
198
233
214
214
229
231
245
205
202
195
247
164
186
250
164
247
254
196
244
206
198
227
232
232
223
181
186
223
201
231
150
215
185
153
262
243
192
228
263
180
295
255
175
146
186
253
210
258
238
171
193
179
169
224
261
203
203
202
188
227
141
157
184
232
208
178
160
182
129
226
195
245
247
212
187
235
180
221
202
208
147
153
283
199
198
199
247
196
220
156
196
168
218
224
222
162
209
195
241
200
212
220
205
238
212
238
187
213
232
222
208
204
244
115
150
147
189
224
188
221
220
201
246
169
245
168
207
189
238
206
197
190
201
268
200
207
235
232
228
221
187
167
211
253
175
170
167
193
137
266
127
171
207
192
147
202
145
153
158
208
197
273
136
235
213
185
243
170
171
202
254
199
163
126
188
210
236
223
233
224
205
186
124
215
177
203
222
225
211
162
238
155
240
209
237
123
140
214
153
120
222
199
209
236
253
251
211
233
224
196
160
203
235
249
186
202
184
204
170
163
232
269
238
209
236
179
239
255
197
174
211
165
192
240
234
230
216
190
165
191
211
145
214
231
196
177
196
133
215
204
167
219
139
241
170
198
206
190
230
249
220
218
210
263
191
164
178
245
184
216
221
148
173
231
240
190
215
154
202
259
175
200
200
167
243
182
206
185
211
179
224
225
208
192
213
219
197
176
171
242
197
130
196
256
195
217
136
127
179
215
221
207
237
191
209
224
199
166
175
204
186
247
198
225
184
178
172
208
198
192
184
211
167
205
182
204
228
198
236
219
216
227
198
153
234
204
189
215
251
228
127
178
228
200
218
251
221
177
213
151
182
242
128
149
189
138
220
199
176
194
205
198
221
263
195
253
260
206
223
263
146
201
246
225
244
215
213
229
267
237
162
205
207
203
244
209
245
224
193
223
177
229
189
219
122
199
158
187
142
187
184
170
209
177
186
177
158
183
122
278
234
261
209
147
181
167
173
153
167
190
190
181
170
193
220
131
265
237
197
204
209
149
243
221
239
237
132
232
211
254
159
171
226
222
196
211
272
192
191
169
170
201
192
212
215
166
187
179
228
187
207
255
197
221
164
221
175
216
204
219
171
187
149
220
179
246
214
203
217
235
189
209
183
253
152
184
208
160
129
208
172
180
184
239
210
194
222
182
152
235
242
162
171
214
138
218
217
222
197
199
270
199
164
239
215
239
120
242
220
191
155
198
263
210
224
163
274
143
202
180
149
212
192
197
254
149
113
187
136
134
228
163
229
194
219
238
216
227
170
220
218
209
177
164
206
159
240
244
199
221
200
208
212
266
204
212
223
221
224
155
211
176
217
144
254
149
183
196
163
182
207
186
195
204
225
188
223
195
230
147
266
165
218
177
231
186
178
231
218
155
196
199
170
208
223
189
214
248
162
157
193
173
160
206
186
182
256
202
156
230
190
195
199
162
214
295
161
164
170
222
233
177
178
219
242
231
183
185
201
266
197
234
169
236
172
219
146
189
158
222
210
190
238
187
222
197
182
184
212
130
189
208
209
144
188
206
234
253
246
173
218
186
193
224
146
261
215
188
250
202
228
219
228
278
213
185
168
236
234
185
212
196
170
232
220
219
199
310
223
189
194
214
137
138
208
234
213
141
219
228
237
224
261
244
215
247
224
181
224
111
226
225
192
172
158
219
218
149
203
178
223
130
229
226
171
214
200
224
179
204
253
189
214
184
209
218
175
208
188
198
221
217
191
205
177
251
209
235
138
233
215
224
265
213
178
169
197
197
231
214
212
197
195
179
231
227
179
190
195
195
213
256
162
187
207
157
171
229
218
252
203
150
152
170
176
212
215
210
231
239
142
241
197
168
206
129
188
188
190
108
173
273
169
200
121
235
256
230
174
182
235
149
240
229
240
221
234
143
167
181
231
205
214
204
196
179
254
178
239
155
274
208
214
212
136
164
201
184
192
170
198
260
146
249
212
215
208
217
200
230
229
209
200
159
241
235
193
197
172
207
197
146
126
150
174
209
188
178
270
205
241
230
202
185
187
176
176
217
206
225
158
253
141
214
203
201
223
166
236
192
187
166
169
188
251
196
239
198
183
139
189
201
198
191
200
212
203
224
168
252
163
211
200
257
166
229
234
216
230
206
221
202
281
265
235
190
221
202
203
158
270
236
144
238
207
231
237
157
231
184
198
213
135
248
185
176
232
250
230
221
207
225
241
158
142
211
204
184
181
223
217
162
192
235
176
257
165
197
148
153
203
216
133
197
176
263
127
222
160
86
219
174
196
197
227
216
233
195
222
238
114
172
195
219
177
234
176
180
257
196
209
187
187
218
153
199
203
218
202
96
164
177
175
252
187
237
179
212
193
169
206
205
196
233
230
238
192
268
163
160
226
225
206
232
234
202
214
263
271
178
131
212
170
194
226
251
117
196
191
204
218
170
156
214
224
222
169
226
118
182
212
176
180
162
177
191
231
200
253
189
215
273
218
150
201
158
154
189
150
183
237
150
237
187
220
125
196
160
229
231
252
204
193
262
169
262
193
150
244
138
170
206
228
113
195
206
190
205
221
187
215
204
171
201
184
156
239
177
209
215
241
160
203
140
156
244
194
256
167
172
246
188
145
193
163
137
236
188
233
188
218
150
156
166
156
216
211
186
254
164
219
181
187
210
170
165
162
182
229
203
217
139
183
225
178
203
201
177
206
188
189
125
191
220
195
212
253
221
169
188
216
184
189
193
166
172
167
187
264
195
248
228
192
187
224
181
184
221
206
176
178
253
199
207
181
172
203
197
203
183
263
213
175
157
188
176
206
199
187
179
152
175
238
159
213
262
215
213
143
225
159
184
186
195
212
210
251
248
204
197
220
200
120
241
183
117
251
247
181
199
221
221
158
153
209
219
161
213
213
152
226
190
139
152
227
221
137
237
137
153
258
191
232
174
204
203
130
157
157
199
144
173
182
175
166
252
202
245
134
223
181
152
191
182
269
187
211
195
202
170
202
188
213
191
174
134
207
231
151
200
207
226
220
231
243
224
169
232
202
135
145
209
215
170
181
263
217
252
109
130
234
235
253
296
208
174
177
192
186
206
225
210
203
212
199
216
251
207
254
219
154
176
214
181
216
207
186
139
184
123
204
192
208
177
139
164
223
191
171
130
225
160
261
148
213
257
186
216
137
175
201
170
247
164
189
174
217
228
260
197
196
206
222
245
203
192
209
272
210
230
214
213
197
176
195
200
242
264
201
223
250
196
193
178
184
222
222
196
257
158
180
186
281
164
219
223
213
169
224
231
168
169
176
222
179
209
223
172
223
192
223
197
153
211
223
203
245
248
180
151
194
213
142
191
158
199
274
225
206
196
185
185
200
190
174
157
200
211
250
191
163
115
250
234
200
141
193
117
187
165
207
215
225
188
207
227
215
149
175
202
198
261
205
193
153
165
253
215
287
190
165
170
209
199
206
242
183
189
175
173
191
224
231
198
214
191
231
158
207
202
210
252
234
142
216
183
230
187
178
230
178
197
187
262
176
212
246
193
153
161
259
213
173
185
244
183
129
218
196
153
171
186
162
185
194
239
135
219
165
223
269
166
218
250
195
208
250
252
167
229
226
140
205
176
205
232
215
203
205
216
167
145
299
131
198
195
231
162
204
187
224
245
222
216
250
227
217
178
205
206
198
187
224
212
190
126
208
218
217
242
229
219
209
265
224
218
209
180
177
170
217
226
216
222
211
199
189
244
216
266
136
226
235
237
251
155
214
221
145
213
244
223
199
206
211
163
194
249
180
159
210
198
240
241
137
183
204
219
153
231
177
177
206
211
195
214
174
161
211
248
168
171
210
240
224
199
200
200
163
206
151
238
194
180
216
187
189
251
202
188
159
238
192
182
228
195
254
223
205
219
178
177
191
141
171
157
206
182
216
291
185
181
143
237
161
210
122
191
258
216
184
195
225
185
213
234
156
225
188
209
197
180
257
256
161
253
231
216
176
166
204
233
144
224
167
221
223
264
147
226
181
211
225
211
178
226
176
283
165
221
193
222
209
188
198
141
182
204
208
223
219
243
199
178
181
126
236
220
221
187
201
198
153
206
211
172
162
248
210
156
230
211
205
186
162
210
234
189
206
148
221
196
211
187
203
238
228
248
126
198
189
235
208
250
223
182
146
231
248
200
201
157
223
167
203
190
165
210
218
186
149
215
229
198
220
184
222
243
164
189
245
209
152
160
109
224
209
232
206
159
263
161
190
150
164
205
222
186
188
168
209
134
213
181
285
208
212
214
212
249
249
178
227
233
185
212
186
281
195
197
260
230
172
129
204
164
232
109
186
136
192
224
263
189
160
217
210
278
196
208
232
211
180
180
221
181
208
153
182
164
202
112
155
206
221
206
183
230
178
173
234
150
208
172
191
174
250
178
182
214
177
228
165
229
242
186
223
201
186
206
210
181
235
212
201
185
234
193
133
224
223
218
213
209
209
256
122
265
159
176
183
196
171
284
127
200
192
161
135
206
212
198
167
231
233
243
182
189
176
227
161
269
212
250
184
185
222
221
186
259
245
220
181
264
169
235
206
139
263
163
158
174
263
191
159
195
211
221
173
244
179
189
247
194
169
123
154
191
157
208
197
257
157
184
162
118
200
216
196
198
186
179
204
218
206
144
244
198
118
217
214
186
213
220
187
242
241
208
234
207
181
232
177
178
177
238
117
201
246
213
279
251
220
220
168
203
161
213
209
166
211
185
148
228
254
233
154
140
190
265
194
226
188
203
210
155
241
224
224
205
182
208
181
211
292
181
214
127
204
155
194
209
169
247
196
192
182
191
171
201
157
262
184
229
228
221
184
200
172
215
174
204
220
180
173
217
148
204
118
207
205
142
253
229
203
138
190
221
243
222
181
208
224
204
222
169
217
188
138
202
176
167
220
208
216
221
222
224
211
179
264
137
124
185
203
182
179
208
206
241
213
199
192
172
241
155
128
269
235
165
217
184
180
243
200
220
206
244
242
239
200
242
202
139
163
182
208
146
154
143
202
180
150
228
219
185
262
258
185
220
215
215
206
208
178
166
204
200
207
204
248
207
232
175
218
192
188
190
230
240
208
216
145
232
205
229
129
172
185
228
165
150
179
214
199
173
159
183
208
216
158
167
247
229
229
159
233
205
157
193
184
236
186
202
189
212
127
219
223
201
231
220
178
232
171
158
220
187
220
209
221
186
240
182
187
179
169
189
241
151
231
200
229
215
219
143
232
248
174
232
230
267
132
156
195
185
222
136
218
201
210
189
182
248
222
181
176
207
199
163
198
162
183
246
163
125
188
134
273
188
219
140
202
208
254
174
201
220
179
203
200
163
213
172
271
165
119
189
193
164
216
139
170
214
144
197
165
284
151
230
219
212
220
173
249
157
249
219
209
198
222
168
237
241
172
220
202
169
210
173
144
156
193
213
217
189
193
241
209
189
208
228
216
251
177
149
195
177
213
240
250
217
182
187
218
190
175
202
260
244
159
176
246
184
214
248
213
243
206
208
201
221
175
179
152
192
178
161
220
237
172
194
173
240
229
221
189
209
117
184
196
243
206
216
225
167
161
212
166
184
185
177
237
192
231
250
192
177
184
143
169
236
216
228
209
244
242
181
212
184
230
225
170
205
191
223
197
200
205
196
204
179
216
206
222
187
217
176
171
184
158
208
200
236
220
206
174
234
162
178
193
133
250
229
172
189
168
183
174
218
213
170
236
181
222
230
193
175
234
242
221
237
197
206
218
123
199
132
203
255
145
220
207
148
187
190
198
206
264
207
182
159
228
135
200
196
232
209
145
176
216
219
272
219
177
204
214
203
202
220
183
251
159
209
235
192
185
154
202
234
195
227
181
195
189
242
245
217
224
164
207
265
230
264
178
278
228
253
201
230
237
174
188
218
222
197
205
216
150
207
238
190
249
220
185
229
140
202
172
209
205
159
218
189
190
211
195
166
173
236
168
202
211
141
144
135
170
185
167
244
253
165
218
240
207
191
187
209
197
196
251
228
194
217
183
203
193
228
200
253
236
127
253
124
198
185
244
217
222
251
199
227
244
206
203
150
122
207
210
212
135
134
184
146
183
188
220
172
210
171
205
255
217
197
196
167
206
135
179
220
216
230
159
190
186
208
187
230
153
162
209
172
110
265
176
206
242
226
205
192
222
206
181
193
199
188
208
182
233
148
254
227
237
203
213
207
268
223
245
184
250
228
284
242
189
250
185
166
184
132
173
226
187
200
234
216
222
185
256
209
237
197
242
146
178
134
253
126
242
212
194
190
201
151
152
202
259
204
193
226
252
206
231
169
212
184
232
219
143
209
183
212
233
163
163
271
242
263
204
193
190
174
200
138
203
215
180
176
250
207
188
169
239
235
212
223
240
220
185
245
240
212
194
244
208
119
200
210
210
196
185
220
147
211
209
209
216
192
237
194
213
230
274
202
195
211
195
154
180
286
144
156
198
236
251
125
220
229
157
221
234
204
191
184
222
253
206
202
179
227
204
215
213
241
139
231
171
242
205
170
219
273
185
185
154
216
216
226
177
188
211
224
197
223
171
207
206
232
246
191
248
213
168
233
247
210
175
141
218
211
223
191
168
219
256
164
155
247
250
206
250
229
161
218
228
168
233
145
261
170
204
218
169
190
230
212
261
141
183
188
210
138
204
180
260
207
191
258
220
244
216
250
197
218
203
221
181
224
157
172
235
176
197
240
259
173
212
219
155
195
228
173
174
202
204
221
166
154
162
212
218
200
160
162
190
258
215
237
221
219
181
197
189
203
137
270
282
203
153
198
211
203
197
184
180
154
186
205
224
155
203
195
206
229
258
232
255
183
220
207
151
199
263
176
213
215
176
205
149
159
225
188
190
195
203
174
216
155
116
197
210
173
209
187
207
215
222
224
200
235
196
215
252
209
203
216
182
183
191
270
170
187
175
199
238
210
182
246
203
161
279
191
161
180
144
169
159
189
187
209
243
216
198
206
145
233
186
183
186
228
191
194
205
165
167
238
249
186
154
232
136
154
164
180
179
156
245
178
188
225
258
230
176
215
215
204
180
212
166
170
247
249
253
236
230
179
134
207
187
197
188
229
232
201
252
218
201
246
176
226
181
199
110
167
192
161
195
231
239
225
196
219
189
177
113
161
224
191
245
164
146
140
237
227
229
258
194
252
202
146
231
236
157
171
222
174
194
203
261
198
147
153
197
150
174
225
259
170
219
226
206
193
184
171
235
230
225
249
214
176
180
190
211
208
181
147
242
192
198
171
210
169
172
196
203
178
210
138
217
222
179
196
180
189
255
170
226
225
181
208
168
216
155
205
220
212
224
219
237
202
226
221
212
203
148
238
190
189
188
191
240
250
192
184
145
174
168
192
211
220
264
271
200
221
212
181
176
279
161
204
185
205
150
176
246
169
131
228
261
195
182
156
184
218
206
252
173
190
175
223
248
165
236
189
201
209
204
211
195
200
167
182
177
252
128
179
146
188
202
124
185
220
202
214
173
158
173
206
162
216
179
235
223
158
168
115
223
215
243
172
259
194
247
196
206
249
225
205
229
167
193
215
243
230
185
220
244
175
185
183
137
200
227
169
160
192
154
170
239
169
237
143
218
238
204
207
217
209
208
215
232
173
189
182
183
150
189
179
173
221
210
210
229
237
211
149
179
207
204
179
210
184
151
170
196
233
175
178
220
248
195
245
237
145
167
132
231
212
207
225
205
170
184
117
157
158
224
228
190
217
266
187
169
232
248
243
251
234
201
222
223
270
167
200
231
235
193
238
194
220
128
205
201
150
222
217
142
166
263
184
181
161
217
192
176
216
278
194
220
176
153
192
197
142
186
154
147
203
140
173
162
183
213
183
204
227
259
215
201
186
171
164
254
197
223
201
225
221
158
247
187
184
185
168
158
153
211
160
161
176
190
230
230
247
218
221
199
184
206
181
219
218
237
199
212
162
198
134
158
178
233
237
197
223
213
171
154
198
179
239
190
202
198
166
233
214
173
231
177
217
258
252
248
207
197
231
240
248
203
179
214
175
203
229
226
230
235
137
188
250
229
163
207
205
194
184
135
171
196
206
161
252
165
202
231
229
217
188
191
146
240
163
151
192
185
104
190
204
208
194
177
222
173
258
251
191
207
209
190
190
202
223
193
211
268
206
127
214
213
163
212
220
221
216
202
207
196
186
220
186
213
222
244
295
240
154
176
236
235
141
213
259
238
190
180
200
220
193
216
190
218
182
178
199
227
247
173
204
260
205
241
232
173
213
163
217
259
210
200
201
172
204
189
254
210
152
177
158
164
151
207
150
216
215
206
209
244
281
219
170
221
217
150
207
172
192
216
176
194
214
156
206
150
229
221
249
219
187
221
132
275
210
232
171
189
198
190
211
213
226
129
167
228
217
263
249
185
233
222
163
207
166
221
159
200
188
192
206
188
216
231
195
189
181
190
146
206
169
219
233
196
211
241
213
147
170
151
219
171
216
181
141
230
210
201
273
201
212
227
189
214
168
265
135
140
269
174
181
238
175
207
231
135
189
198
188
225
188
188
187
195
137
186
226
212
160
273
184
154
144
247
207
214
194
173
222
249
203
194
201
180
236
194
171
251
123
169
292
222
208
210
234
175
216
172
206
148
184
196
236
265
233
197
207
240
233
198
235
220
244
194
197
246
178
252
186
186
180
225
217
208
192
300
193
277
138
197
185
250
155
217
179
152
188
224
219
218
208
224
192
153
249
237
191
236
196
270
158
190
160
155
215
176
197
168
269
241
216
202
213
248
263
186
206
213
237
240
274
242
192
235
176
195
186
235
219
210
212
186
185
286
219
200
214
203
224
227
229
212
247
189
236
246
201
217
244
198
163
158
202
215
262
168
172
191
155
181
221
235
275
185
172
219
171
229
219
192
231
183
224
238
179
271
215
229
229
262
206
250
162
148
220
203
214
208
159
208
203
141
218
192
188
308
194
208
202
178
198
176
197
154
240
187
150
221
261
210
155
261
195
234
275
230
148
153
204
170
219
203
113
256
199
193
164
174
202
253
136
158
239
203
123
296
241
223
227
184
224
216
241
232
246
212
147
209
206
235
169
257
136
177
218
135
168
217
128
129
228
256
202
198
205
191
187
187
215
179
222
277
139
205
186
157
177
184
213
203
141
161
206
205
185
247
205
210
197
247
231
244
221
162
192
183
139
219
189
161
218
209
106
192
200
186
153
192
205
194
212
219
210
245
237
146
199
146
162
139
189
206
198
185
189
236
140
118
175
245
268
249
193
189
212
231
226
227
276
226
182
192
191
212
186
211
149
293
193
214
217
182
179
169
134
152
171
240
178
167
171
256
198
221
169
179
209
177
181
202
204
235
224
199
187
138
171
226
170
145
235
161
263
158
141
220
226
212
210
140
168
111
223
186
193
179
206
183
219
229
168
212
169
231
220
190
232
253
229
197
245
204
167
217
229
201
202
215
186
170
137
150
126
229
200
262
189
168
193
218
175
177
195
139
156
201
140
215
250
186
219
206
233
212
146
180
206
215
228
198
215
213
197
158
222
166
193
185
190
209
198
185
248
169
180
216
219
169
239
195
190
199
238
215
211
158
143
189
191
203
248
172
228
200
178
143
173
199
213
202
237
157
238
242
221
242
141
169
208
167
214
239
274
247
205
165
161
179
218
160
216
160
222
194
182
122
171
197
143
232
269
220
186
215
213
151
231
184
240
230
232
231
173
205
100
179
166
247
162
238
199
210
260
245
241
188
168
217
188
182
170
204
187
202
229
211
172
189
112
275
258
192
255
164
252
235
223
220
283
225
167
200
160
148
181
220
233
223
185
211
167
131
252
182
148
214
185
224
208
196
283
194
203
203
176
169
145
178
208
158
221
183
217
213
240
207
229
243
167
222
226
182
261
233
209
188
204
171
231
177
206
228
242
271
203
182
204
213
204
219
248
201
220
193
163
210
184
178
222
224
268
244
200
198
132
219
212
261
209
206
250
178
186
234
238
218
154
193
195
220
208
217
178
178
210
167
149
155
218
256
234
145
207
258
183
204
162
212
249
202
279
237
221
222
185
235
184
169
180
146
191
199
222
228
241
189
199
262
188
169
70
206
184
226
250
185
257
257
250
252
205
194
195
197
224
220
214
187
229
206
188
200
223
176
202
205
234
231
204
126
213
239
200
207
200
202
190
233
221
208
191
195
219
129
201
170
244
241
213
205
134
204
102
145
243
199
119
219
195
203
166
213
230
184
176
204
170
210
255
222
207
195
211
217
244
192
152
272
275
201
180
203
177
248
188
202
246
155
198
274
193
208
183
238
190
188
274
168
167
167
182
205
220
212
159
221
179
166
257
231
166
195
213
207
177
213
166
197
235
190
171
187
175
205
179
201
211
229
170
218
225
223
221
243
189
291
208
200
229
227
225
230
182
209
189
199
199
198
222
151
206
181
181
230
239
211
202
250
187
203
199
197
243
161
233
232
171
211
155
181
149
198
244
225
215
185
181
206
214
241
218
234
204
244
215
191
147
168
169
202
168
155
241
181
226
197
141
252
150
203
292
214
201
181
138
241
208
211
281
233
148
192
214
151
229
211
228
187
220
195
196
189
156
211
191
229
235
178
268
194
193
193
120
214
290
219
206
252
204
179
211
164
175
191
281
201
231
204
159
180
170
167
241
183
229
176
189
210
239
247
185
226
229
217
148
176
173
133
234
169
233
260
226
201
150
248
262
199
192
251
204
193
213
220
200
218
221
217
272
171
252
225
235
199
179
185
277
212
151
189
135
137
210
218
205
199
203
171
213
232
161
162
219
213
201
229
198
161
209
229
239
175
221
234
163
189
248
179
228
279
180
228
203
232
196
222
214
201
225
149
203
195
176
171
184
226
226
203
200
215
194
184
185
269
225
152
147
229
180
238
150
204
159
189
140
214
224
208
174
282
192
230
260
250
166
175
178
178
204
196
212
137
185
218
199
209
205
251
201
179
140
190
187
175
193
192
227
202
186
191
167
221
242
235
230
159
165
193
228
249
237
195
246
275
206
183
164
233
204
163
194
201
150
234
271
203
223
167
226
157
246
137
195
208
106
190
190
211
214
223
242
229
203
167
212
190
165
218
137
173
117
222
197
215
197
232
195
143
197
225
168
174
199
202
184
129
241
165
214
171
196
215
166
127
257
264
229
219
188
155
217
208
172
215
168
272
240
168
218
161
218
247
195
224
162
237
175
185
214
172
198
230
212
247
189
247
129
215
171
241
213
232
150
196
151
217
192
215
193
180
237
194
202
213
149
136
294
206
196
113
166
217
195
241
186
212
196
234
220
204
102
224
176
262
120
189
139
214
209
178
155
201
217
216
235
205
240
240
191
236
234
188
208
195
171
216
218
195
184
176
197
175
154
204
273
172
201
187
201
185
169
198
153
207
198
153
207
244
141
258
211
221
192
172
167
193
224
182
192
230
208
171
178
171
236
208
226
217
205
217
192
165
160
225
214
235
192
243
227
208
178
189
231
169
206
191
242
149
247
163
204
237
148
261
238
227
173
204
222
241
255
218
208
195
224
228
194
234
174
174
279
180
219
195
214
226
222
187
218
166
176
259
232
175
199
241
162
195
234
181
179
166
162
226
191
182
176
214
214
211
179
190
223
225
210
187
196
206
152
193
209
228
190
149
189
189
235
178
238
177
182
203
133
162
153
216
246
165
259
222
167
209
187
220
172
241
237
173
234
162
174
187
252
173
231
202
159
199
175
227
173
252
186
236
221
159
203
148
236
193
199
209
241
256
186
204
240
229
279
205
209
174
211
159
222
173
230
166
182
192
161
217
206
203
209
171
187
168
215
230
227
238
263
146
197
197
245
235
159
178
180
239
208
189
160
200
189
189
229
190
126
240
165
205
159
183
187
245
233
188
162
210
191
212
229
239
207
274
126
248
231
231
196
221
229
169
244
194
219
291
201
207
127
127
235
227
215
151
184
188
150
211
233
229
186
195
259
137
153
209
262
197
200
220
156
212
209
207
192
212
212
173
219
202
162
200
199
206
157
241
193
204
251
209
219
229
226
197
151
201
142
184
198
234
210
173
200
250
220
184
175
137
193
258
219
164
240
195
162
215
213
252
198
154
152
184
253
259
227
172
130
182
132
182
230
204
154
183
239
236
225
173
211
245
171
169
235
208
165
205
183
212
167
180
204
233
235
214
242
227
219
228
195
161
272
148
252
146
222
173
231
209
235
180
215
148
165
100
183
188
232
209
191
238
216
175
189
120
227
163
273
186
154
223
179
225
192
194
209
192
211
218
171
201
265
192
172
210
141
149
226
183
159
205
215
184
222
193
240
219
186
212
193
173
208
189
135
216
204
195
221
180
161
186
237
209
183
158
226
152
183
245
195
192
227
202
167
177
256
292
216
250
191
191
265
231
248
189
165
206
184
250
207
237
256
211
253
240
192
210
254
275
238
191
191
188
251
124
236
167
199
243
208
209
221
181
206
220
238
169
141
230
266
171
182
171
233
193
260
125
187
223
205
202
185
161
197
257
213
183
196
229
213
216
177
237
228
209
177
174
121
173
160
186
190
158
210
193
206
230
174
210
209
225
196
220
228
170
170
168
187
183
190
135
171
183
204
175
179
209
200
218
226
172
257
199
197
164
159
238
222
205
223
233
191
258
202
193
180
144
253
168
148
196
137
206
160
179
245
196
220
206
186
182
173
222
260
175
232
237
192
229
261
234
178
164
144
245
117
229
177
173
204
235
200
187
178
232
207
205
228
193
243
189
190
241
223
154
239
136
257
194
213
232
214
197
260
197
230
219
197
245
204
230
214
240
180
192
203
180
173
237
168
154
241
169
185
162
214
206
192
221
114
243
184
229
204
223
192
219
142
213
207
221
189
232
253
234
170
226
184
260
165
217
226
190
248
183
159
180
169
205
250
218
204
242
130
224
198
209
200
226
124
208
300
257
181
164
203
205
142
232
258
236
257
217
194
201
192
146
244
144
239
230
168
176
224
93
205
206
270
171
169
205
158
175
227
220
196
237
190
186
223
187
154
186
198
195
209
250
177
157
243
277
144
164
147
230
185
220
182
233
141
210
155
235
232
175
183
109
226
207
127
217
248
139
212
225
177
171
214
224
237
188
222
222
207
200
175
195
211
191
142
204
186
194
203
190
187
183
218
246
208
220
205
158
191
157
205
190
221
196
216
186
117
216
202
163
172
175
232
222
193
203
264
197
155
141
218
231
214
169
212
156
194
155
210
206
172
162
164
189
203
237
198
215
240
205
141
231
198
229
221
195
193
180
241
233
113
162
174
171
222
220
159
163
153
209
205
242
184
102
232
227
203
236
237
136
191
228
182
260
186
221
204
174
118
264
137
146
212
181
236
210
232
156
157
205
233
247
182
227
171
183
203
245
130
179
264
177
204
223
158
215
169
182
221
252
148
215
202
243
209
213
203
186
179
218
199
250
178
228
189
204
221
197
192
141
183
220
161
235
175
246
205
238
240
215
243
225
182
158
276
204
211
205
274
289
177
178
151
226
158
177
122
178
234
196
137
148
222
198
194
185
183
223
193
171
167
209
197
202
216
218
229
179
228
172
195
217
209
240
203
185
239
236
197
234
170
191
261
186
158
213
237
175
207
142
171
197
199
286
231
246
218
206
202
245
180
220
174
242
215
174
223
186
241
198
251
214
152
142
190
175
231
223
194
209
200
206
210
203
179
280
239
112
172
206
185
231
272
223
195
198
138
218
175
209
209
185
152
240
160
229
197
190
206
273
266
154
229
238
158
190
162
203
177
197
170
233
174
187
183
216
159
202
157
147
215
181
178
174
202
174
209
130
154
222
159
134
209
212
141
225
245
172
240
226
175
220
182
186
213
249
212
199
176
181
156
176
163
203
200
185
165
167
120
208
204
202
223
202
180
198
247
202
215
172
244
218
165
279
226
165
184
162
224
163
221
201
159
171
190
221
243
189
187
237
127
258
213
161
188
234
236
234
138
272
222
198
167
253
170
251
198
200
232
160
197
238
197
222
199
203
170
216
190
224
145
227
167
227
176
251
215
185
258
239
182
268
200
208
156
231
194
102
123
196
225
159
166
210
232
147
161
229
174
208
197
218
200
160
185
199
155
163
258
155
244
187
224
206
187
189
172
181
237
158
206
204
165
178
255
199
175
188
217
201
244
217
204
172
222
192
229
223
223
194
237
127
188
218
210
143
176
166
226
156
206
184
247
203
192
223
243
213
203
211
186
237
223
201
178
231
208
193
213
204
252
177
205
172
203
201
190
186
192
139
249
178
147
209
156
220
230
235
198
162
194
195
200
193
250
238
174
233
125
229
198
225
212
239
164
185
156
247
194
222
214
216
193
270
200
232
149
183
178
165
198
190
204
202
222
149
204
176
175
233
206
188
211
112
172
194
180
232
166
215
178
174
213
183
174
231
224
133
138
217
152
195
173
218
174
234
187
171
225
165
204
108
209
197
194
216
100
217
223
172
209
134
188
237
208
240
220
186
227
172
180
180
169
227
199
173
202
165
194
221
173
160
211
199
235
218
174
207
104
239
214
287
140
193
133
160
183
129
167
196
130
206
226
149
257
169
126
170
188
195
189
210
151
196
190
198
229
210
198
125
215
144
222
253
188
232
176
214
277
194
198
228
221
188
163
205
217
193
140
110
158
233
208
172
163
227
237
183
187
242
239
212
188
204
230
185
200
141
179
215
225
181
160
249
158
222
164
236
259
187
180
223
162
238
232
203
247
162
219
128
207
183
164
174
197
246
225
203
230
178
243
199
223
217
261
185
177
234
172
182
172
225
126
189
202
184
219
289
212
175
212
238
188
244
232
203
164
176
196
241
210
209
207
170
211
178
155
233
134
262
300
220
209
183
264
223
178
163
212
153
247
195
219
166
217
192
191
202
219
230
162
205
236
251
194
226
196
114
205
214
160
145
146
223
176
236
219
181
167
220
219
205
215
207
266
223
216
241
207
160
235
237
213
146
184
247
204
210
206
223
197
214
165
214
169
186
212
244
207
250
163
210
227
231
195
141
196
177
229
177
229
175
246
213
189
182
215
191
210
207
233
250
126
179
218
172
218
174
218
247
282
201
235
153
168
188
246
179
177
188
195
163
203
153
227
178
197
147
254
170
188
221
205
187
214
194
203
226
202
197
255
198
214
230
220
164
234
184
175
192
228
192
206
192
185
192
213
219
253
220
186
208
147
260
210
144
199
147
197
244
169
235
175
163
146
267
271
145
190
153
240
187
224
237
182
188
270
202
192
157
250
148
224
195
267
204
185
238
220
200
215
204
167
208
145
173
231
158
224
177
157
207
203
201
196
221
186
187
196
204
182
268
222
189
208
151
203
240
210
169
193
140
236
299
184
227
184
187
180
253
215
201
199
171
190
226
141
181
186
169
135
295
225
231
203
253
187
222
173
235
160
224
199
194
156
169
193
206
173
255
231
181
170
177
258
136
203
201
238
176
281
209
227
174
173
201
186
192
206
164
181
255
172
185
232
244
174
177
207
119
253
155
185
202
139
251
213
204
253
190
229
189
181
205
243
193
134
157
214
205
197
192
216
167
200
187
131
224
142
160
174
187
183
175
186
152
176
219
218
208
144
185
196
186
188
183
214
224
218
149
262
225
216
197
185
218
194
224
220
210
224
178
202
222
238
167
173
151
184
202
278
180
178
268
286
222
198
182
229
253
211
177
184
218
220
161
204
158
211
237
203
150
199
184
205
198
200
160
212
212
140
212
155
169
161
203
175
190
184
156
208
186
156
204
165
206
151
249
234
212
191
191
215
221
213
161
169
169
164
210
219
247
163
148
216
110
255
233
192
195
235
224
169
129
194
209
112
229
155
183
133
214
173
204
239
136
168
252
214
178
146
180
269
213
241
183
186
201
188
207
177
167
241
209
215
213
239
189
163
184
164
224
154
253
155
236
219
181
204
203
238
217
219
200
177
185
193
215
203
190
237
209
208
166
249
202
243
239
210
129
224
232
212
161
192
192
178
192
164
211
220
194
233
213
214
191
199
186
242
226
252
219
177
200
241
174
254
265
193
226
234
246
204
214
248
159
203
241
196
212
227
223
242
130
164
217
201
208
174
239
223
164
229
203
189
226
143
184
178
190
221
130
234
194
209
209
197
257
196
193
158
251
170
195
227
148
197
158
268
173
213
239
162
276
209
205
236
217
206
202
199
222
227
219
176
185
221
164
169
235
236
224
215
239
213
154
228
223
178
173
201
227
214
254
209
223
197
214
216
270
199
157
167
165
232
195
208
215
228
222
178
186
202
231
153
208
196
214
228
236
252
267
188
179
186
195
231
227
158
253
241
170
195
226
243
173
244
174
232
168
164
245
227
233
229
220
207
251
212
160
194
161
198
226
143
223
182
187
244
225
167
134
175
189
172
185
190
159
222
181
200
235
260
170
163
207
231
190
168
196
187
210
165
228
172
187
228
136
173
161
166
252
188
239
210
247
173
203
205
178
186
212
209
209
260
230
236
163
214
206
190
181
166
200
249
220
143
265
193
179
201
172
240
203
250
163
163
171
234
143
161
212
198
135
185
219
244
192
204
171
201
271
137
249
195
238
209
281
205
239
199
225
211
233
177
209
228
272
136
219
234
197
207
234
194
212
197
239
214
268
221
276
230
255
199
243
193
161
256
192
165
254
170
177
194
178
187
201
218
167
182
178
257
201
173
234
201
216
217
185
261
194
211
168
177
222
182
306
219
201
194
200
203
172
223
198
207
235
190
221
287
179
197
116
165
193
163
142
254
193
233
138
215
190
105
235
173
250
202
252
241
174
164
206
188
182
200
260
201
214
169
238
205
201
199
189
186
210
244
196
180
251
148
206
272
146
223
205
255
241
229
207
185
220
200
175
152
264
204
160
221
207
169
156
251
228
195
228
256
186
203
255
166
218
273
158
137
226
191
232
184
194
203
202
193
191
152
183
257
196
174
183
176
201
146
233
162
206
239
254
184
253
228
140
245
192
206
221
201
172
202
217
178
200
158
185
260
237
253
184
128
221
177
152
212
201
145
128
255
205
235
182
143
150
204
213
217
220
258
182
198
201
237
125
209
184
167
109
199
210
160
222
243
182
212
188
156
153
231
224
149
225
182
239
186
255
211
249
190
188
220
184
272
232
197
226
199
221
235
243
176
182
236
203
171
170
193
178
192
145
161
173
231
136
168
213
235
217
202
226
197
195
211
253
218
198
194
217
230
190
203
177
261
209
199
203
201
264
200
241
195
227
195
114
163
199
186
215
213
128
244
150
143
219
267
205
153
213
205
222
167
144
209
145
206
233
146
200
185
175
207
162
199
199
281
189
224
205
165
214
161
191
177
122
215
196
144
172
224
166
146
207
215
244
133
178
217
207
193
157
185
178
129
197
166
208
223
240
201
216
216
202
214
172
224
205
110
173
210
193
215
242
198
215
168
243
237
232
217
243
170
172
222
172
244
210
205
172
252
244
184
186
216
176
234
209
203
244
221
190
188
115
182
205
214
188
197
200
231
224
109
215
209
253
215
245
247
231
188
182
213
225
237
150
158
187
242
119
208
184
162
253
187
140
191
175
158
219
192
267
220
206
250
190
166
231
196
208
220
163
192
233
212
182
207
158
210
182
132
164
192
179
174
218
140
196
267
181
181
161
174
214
181
248
177
168
192
225
206
263
228
240
244
200
142
203
158
199
179
247
159
250
203
204
182
110
194
203
161
193
220
214
241
205
225
226
260
199
175
183
241
198
201
163
208
235
262
208
157
267
167
198
228
261
188
194
214
156
214
214
142
240
234
214
218
236
257
184
239
238
153
201
187
231
205
176
192
252
215
199
158
253
166
144
150
182
156
181
235
247
251
228
228
221
229
173
228
260
184
219
117
219
204
191
206
208
227
196
197
211
148
214
226
205
234
258
205
162
198
154
212
180
181
224
167
170
173
170
202
143
190
226
174
176
144
190
175
163
160
282
168
179
195
229
219
151
179
184
208
194
212
209
185
170
247
191
197
226
237
206
245
205
157
225
194
219
163
232
168
181
163
174
209
240
137
224
209
196
237
233
239
132
241
177
227
166
177
176
276
227
179
196
229
189
183
185
194
218
161
235
259
180
189
205
202
238
253
224
236
150
182
161
177
237
180
244
247
207
162
221
226
171
226
240
223
220
166
218
207
237
235
191
273
188
212
185
259
177
234
222
215
127
137
200
213
210
225
177
226
181
243
191
129
234
208
266
200
256
114
189
260
137
174
210
309
171
228
214
244
150
153
220
232
207
201
220
272
157
234
196
152
154
242
234
237
239
158
216
184
186
161
153
203
144
167
266
163
238
205
261
176
195
227
173
170
176
200
269
238
179
172
136
194
219
188
216
187
187
218
240
207
232
199
252
240
186
131
211
223
168
248
231
155
189
233
261
239
187
132
199
245
183
143
190
165
174
251
204
153
222
149
200
217
261
221
201
172
221
255
221
226
187
172
214
224
237
196
237
191
215
204
192
213
215
237
199
276
229
198
196
136
201
179
240
198
178
162
206
223
201
213
202
211
225
150
166
204
231
261
229
137
163
200
272
237
202
168
114
189
215
169
190
230
193
181
191
149
172
248
188
197
146
181
224
182
132
250
217
222
170
192
256
261
223
200
182
141
174
174
184
216
240
191
211
190
236
195
185
222
201
210
238
140
206
173
216
164
229
277
203
206
185
139
148
212
192
209
137
173
160
151
205
128
182
224
182
255
187
253
180
199
235
186
151
203
161
211
172
196
206
210
202
211
154
209
182
153
244
237
243
159
197
210
204
228
203
236
215
127
177
182
224
185
168
185
237
177
186
191
228
230
240
191
172
187
208
154
223
197
172
234
161
208
152
262
225
220
172
241
152
120
195
168
183
167
211
143
150
189
174
188
129
198
188
173
136
229
210
138
205
214
230
209
185
230
182
266
225
242
257
214
192
193
228
167
156
115
236
201
191
209
251
182
146
288
119
140
258
173
180
175
192
199
187
250
170
228
195
191
149
231
193
252
218
210
191
200
208
155
237
238
189
196
220
189
243
217
242
129
188
211
221
154
161
164
161
189
167
174
204
220
176
168
250
190
221
184
235
190
136
230
168
206
187
144
232
195
205
262
201
187
205
234
232
191
261
217
169
182
174
270
180
248
196
193
219
205
232
231
219
165
204
212
170
200
183
145
198
214
147
178
201
203
197
166
227
185
156
186
202
166
248
183
234
218
196
156
235
220
191
169
245
235
150
194
184
214
216
218
172
170
212
236
244
224
211
225
157
167
178
133
218
210
183
252
237
110
232
215
191
166
197
161
241
221
143
154
222
235
168
147
201
212
199
170
179
223
230
214
208
181
192
199
224
220
196
249
138
196
200
204
217
239
241
230
191
215
188
260
191
183
151
181
177
192
196
126
159
177
235
160
153
185
260
197
192
174
228
173
225
189
187
185
235
226
160
192
142
169
206
205
203
123
219
265
162
153
248
270
152
153
199
216
191
207
201
206
179
195
192
225
197
229
169
179
222
236
176
212
230
202
220
181
218
169
206
200
210
225
165
183
219
131
187
196
172
228
249
189
213
200
288
246
219
225
195
230
241
174
243
195
171
180
208
234
188
257
142
202
198
185
223
206
212
213
186
222
200
218
218
237
243
217
206
154
229
239
203
205
168
228
222
200
166
190
208
204
175
186
202
230
220
193
220
197
233
275
257
238
216
155
203
199
234
181
201
184
225
221
207
210
239
201
183
190
212
256
150
250
201
211
233
175
195
152
219
174
164
140
250
212
187
179
216
185
270
181
155
133
208
231
197
257
204
179
263
185
267
187
193
230
208
229
220
211
226
125
238
207
207
271
117
197
218
202
241
204
195
224
252
232
207
179
151
227
220
182
227
242
174
216
135
209
177
186
185
211
286
207
204
190
170
196
168
268
230
191
225
246
170
252
184
199
194
243
162
225
124
249
166
232
223
149
236
170
243
239
168
218
203
181
225
228
261
162
157
163
195
182
184
181
176
234
255
156
154
168
199
287
199
239
166
146
237
232
255
218
223
197
214
197
232
244
271
208
260
153
237
196
169
227
220
194
279
169
247
189
249
184
187
169
201
196
205
183
230
221
302
199
185
204
166
192
220
141
237
238
241
226
181
193
193
170
240
155
192
136
169
176
204
204
169
146
223
207
218
163
264
182
217
172
250
167
156
190
156
221
181
207
174
160
207
190
220
190
163
209
227
221
240
162
195
148
225
159
200
139
198
252
162
193
203
190
255
221
191
197
244
169
196
251
186
182
251
183
186
231
194
135
185
148
224
216
206
202
209
217
177
191
168
192
168
227
169
200
228
212
210
184
212
260
213
195
257
201
137
148
193
132
208
215
180
202
123
231
216
226
229
252
219
242
160
192
201
114
191
143
174
217
202
206
196
183
170
215
253
197
214
154
274
161
186
238
237
219
215
232
221
264
203
171
180
221
203
172
163
172
221
204
226
258
202
263
256
235
204
166
174
179
202
279
243
179
236
219
179
216
224
223
199
224
189
225
213
205
221
210
223
215
228
214
184
205
217
213
203
113
199
224
234
179
144
203
142
265
153
180
118
246
242
222
249
147
192
250
240
169
214
207
200
213
212
256
146
185
183
193
234
220
200
151
144
225
184
157
173
221
210
149
230
190
189
201
191
184
233
261
193
189
202
185
206
223
160
216
150
207
207
240
206
144
143
162
199
273
252
229
228
179
236
148
173
216
149
185
186
200
152
215
238
158
242
190
191
193
220
207
161
179
216
228
228
246
212
201
152
147
136
232
164
254
149
134
225
195
297
215
191
178
169
227
204
242
250
229
280
211
175
172
203
242
229
177
211
237
172
213
170
168
187
156
246
227
232
273
197
220
243
224
206
194
211
219
139
217
262
89
148
197
240
205
194
231
223
187
244
186
149
151
144
282
207
165
205
198
147
172
211
199
238
216
172
149
240
192
200
192
215
181
215
210
189
176
206
172
226
218
153
210
137
176
160
148
249
190
266
277
182
212
192
209
195
196
203
232
123
151
254
208
190
165
197
177
170
145
169
199
172
199
263
203
261
200
184
181
237
177
204
166
192
157
161
169
164
216
232
215
193
189
194
178
209
188
244
218
169
243
204
257
222
180
202
180
205
205
166
212
179
236
176
173
182
246
152
142
215
220
254
244
223
207
138
220
272
274
178
237
196
222
151
230
217
159
230
249
205
233
188
161
216
199
191
194
166
246
215
204
159
200
128
230
147
218
184
166
220
161
215
204
225
183
184
86
240
152
157
113
245
267
182
220
252
226
225
244
228
232
159
179
230
220
190
192
202
225
238
245
239
206
171
220
175
179
147
202
193
165
208
209
134
230
167
245
176
209
203
169
222
248
181
221
200
142
211
143
243
181
255
235
172
154
193
175
203
204
216
216
191
245
246
214
155
218
224
202
173
209
182
212
176
202
196
246
238
228
177
185
216
226
197
262
210
200
194
148
203
250
180
204
167
243
238
202
167
218
142
150
243
240
201
163
240
199
229
212
123
170
224
219
233
191
145
192
149
246
237
204
214
232
191
189
212
255
188
167
157
217
242
233
135
157
201
189
196
202
158
214
226
201
197
185
199
171
176
186
181
103
177
222
216
190
221
201
234
139
175
157
229
153
248
231
161
168
242
137
163
165
212
192
167
111
232
183
185
177
215
197
135
194
179
183
236
188
203
154
234
206
173
217
278
221
206
232
210
216
260
173
197
240
242
144
205
211
216
141
187
217
205
182
209
217
195
240
215
142
216
178
145
171
226
208
189
210
215
112
180
231
173
205
202
242
243
225
197
268
210
212
169
195
174
245
166
185
231
182
180
170
231
204
214
185
147
209
189
207
149
199
253
209
236
203
216
181
220
146
173
193
201
176
216
158
174
192
170
215
193
250
198
142
190
157
175
222
181
222
158
151
183
237
222
182
189
218
238
198
237
195
258
174
196
238
238
237
232
243
198
157
212
218
225
206
202
236
225
161
198
218
252
180
234
197
185
219
146
221
180
223
206
201
207
191
214
246
192
156
200
248
181
224
196
223
195
143
204
172
202
196
170
189
142
239
209
231
203
149
216
181
189
237
237
268
168
195
182
162
218
136
174
209
178
133
179
192
192
209
222
191
174
210
164
177
202
153
201
259
199
226
225
187
190
241
234
207
229
227
163
163
203
181
235
164
152
214
179
171
157
141
186
216
224
208
222
230
194
218
171
215
259
142
183
227
191
241
213
170
209
248
154
235
224
175
198
200
240
206
238
261
187
244
266
143
226
215
229
174
219
204
182
172
241
217
209
194
168
219
243
181
256
200
204
198
247
227
131
185
213
188
119
242
217
238
190
155
188
202
173
168
253
181
177
259
188
203
237
295
227
227
177
233
178
178
260
165
183
174
176
156
231
213
198
198
245
185
143
211
186
234
221
200
226
140
218
204
179
185
232
234
252
226
181
242
174
135
199
202
259
219
171
183
178
203
224
174
191
156
214
213
172
250
191
236
244
204
214
191
189
184
189
202
209
198
252
183
178
225
218
230
205
212
177
175
206
233
162
173
173
231
134
199
248
240
202
232
206
212
188
227
158
249
247
212
192
170
158
282
156
180
165
171
184
210
187
226
184
179
195
276
208
213
260
178
207
259
229
216
171
169
174
185
238
188
194
185
219
253
171
234
213
160
163
152
206
256
172
217
213
160
172
264
200
227
177
176
166
182
211
159
196
226
241
262
252
202
180
218
205
193
159
230
195
206
185
197
216
148
183
190
211
188
199
239
164
190
192
222
186
226
184
236
176
179
168
200
211
162
230
168
221
144
181
167
174
193
180
223
232
263
133
131
173
238
173
235
246
198
226
181
237
134
239
177
201
175
255
165
175
212
180
180
158
240
198
176
143
213
206
179
219
156
141
242
216
215
208
210
242
185
162
207
207
173
191
223
161
184
242
192
177
199
178
163
179
209
212
121
225
221
234
232
191
219
211
209
236
208
211
200
185
207
267
223
222
124
170
213
228
152
220
155
243
215
116
159
232
167
181
181
184
206
218
233
190
178
179
217
259
244
214
182
206
251
197
188
143
247
167
236
222
177
232
170
127
193
210
256
171
170
207
249
171
227
204
208
184
190
207
237
210
220
219
172
224
181
253
238
252
242
215
190
190
197
153
222
265
172
233
205
251
217
173
239
190
189
233
219
188
172
206
197
209
232
150
182
205
209
227
197
209
184
152
223
204
205
209
239
238
161
191
210
171
103
227
207
242
241
168
189
200
217
248
219
196
198
252
157
194
200
187
197
192
193
200
175
247
197
181
173
281
220
220
201
183
211
207
216
261
212
199
216
224
231
127
201
210
174
198
225
194
137
171
205
164
176
189
215
152
177
202
218
225
203
191
145
217
209
253
155
220
151
218
226
155
213
232
174
167
156
170
143
174
151
126
176
246
225
185
242
201
264
191
193
197
151
230
120
243
256
243
199
197
190
201
227
221
239
194
178
242
189
154
257
255
203
248
269
198
222
157
198
157
253
172
202
222
155
212
203
199
235
243
201
204
200
184
202
235
183
239
269
178
242
203
224
194
197
241
172
201
192
216
171
220
151
167
212
150
183
192
202
170
166
186
187
214
192
224
184
234
182
173
147
189
228
217
226
162
183
178
155
154
222
239
209
182
207
271
240
282
152
233
188
183
175
188
181
134
229
262
250
176
176
173
171
206
236
224
198
220
211
191
217
253
172
220
199
206
207
196
203
204
174
212
160
183
234
178
226
164
98
206
242
180
250
213
244
224
192
202
205
185
195
183
140
163
254
183
123
200
152
141
202
196
223
186
232
193
155
178
183
194
225
280
187
258
199
194
131
114
198
208
212
186
197
197
265
199
96
217
198
226
243
218
214
229
216
247
196
157
169
217
178
172
200
187
193
226
211
278
188
201
200
241
227
190
223
183
173
191
83
148
230
213
246
245
146
211
152
228
193
195
228
212
187
152
161
270
203
217
162
213
153
255
161
248
236
221
216
170
194
198
205
188
240
167
201
195
198
201
186
177
168
206
172
154
183
183
206
201
197
262
113
167
235
127
193
251
135
210
133
204
183
224
235
221
207
176
273
212
247
222
198
150
132
178
231
229
186
204
128
219
143
239
190
276
140
200
165
223
146
227
199
197
208
210
201
251
148
193
229
191
238
200
222
281
187
201
212
258
199
170
225
190
154
159
242
188
175
178
152
163
203
213
137
193
146
177
203
272
135
208
193
172
248
108
230
194
193
212
199
204
210
208
137
187
172
218
231
148
205
198
180
288
146
221
180
208
215
167
164
212
228
199
186
216
215
220
187
224
218
155
231
196
236
183
173
208
180
214
230
175
154
207
163
207
254
138
200
170
241
247
228
186
246
243
238
220
206
249
209
201
241
149
150
223
155
223
208
250
238
209
213
217
200
220
232
182
213
168
197
120
228
193
239
239
251
169
216
190
177
188
165
189
193
234
218
210
232
199
192
167
176
162
236
139
161
237
249
206
227
228
198
250
175
217
132
185
191
164
216
221
223
203
235
217
246
190
224
194
253
218
229
233
176
225
156
198
218
191
238
263
221
226
207
190
234
172
173
239
171
220
182
233
245
227
203
204
181
186
172
246
186
217
209
239
206
138
123
229
157
267
235
259
253
174
223
194
192
211
222
196
212
221
247
272
175
222
192
192
155
163
181
229
190
180
198
157
184
212
189
235
243
186
195
175
156
243
190
244
209
243
216
180
169
174
207
161
188
149
225
202
145
259
176
207
175
153
206
192
152
265
205
227
192
190
199
154
234
208
204
159
186
219
166
139
175
252
219
221
228
197
200
266
154
178
205
197
144
204
172
218
146
210
208
159
189
225
170
152
237
175
174
171
157
192
201
144
245
253
166
192
152
161
217
209
200
122
191
130
204
200
201
204
260
238
193
187
212
238
180
151
178
207
205
192
171
158
133
212
252
134
187
125
235
166
125
230
190
214
169
190
225
217
192
170
182
205
236
211
225
199
244
222
223
203
229
224
254
224
206
238
164
226
172
235
173
209
206
172
151
164
177
254
199
176
192
141
172
180
235
175
214
214
168
220
267
232
214
200
257
167
179
162
218
209
213
232
137
185
213
218
156
232
189
178
183
164
178
170
211
246
154
209
168
194
266
256
243
196
186
192
254
206
241
231
192
272
198
229
198
228
152
232
185
182
202
137
230
134
172
207
220
135
263
161
200
203
267
243
205
137
213
209
173
237
218
205
128
203
239
171
185
203
217
167
209
175
217
173
204
238
181
232
157
193
222
94
175
207
180
232
189
200
232
178
189
198
184
183
129
220
183
221
233
197
218
173
189
186
218
142
215
238
238
265
208
214
180
219
146
235
233
179
213
243
213
177
197
207
207
205
202
213
209
238
194
209
203
219
168
176
247
229
179
207
169
177
200
226
155
180
234
191
213
160
155
232
194
250
132
203
188
188
124
227
276
198
183
152
179
167
226
210
262
197
177
156
204
225
233
211
138
155
204
153
170
195
150
149
210
164
276
238
219
243
240
163
170
224
204
197
182
115
181
144
208
217
166
240
253
212
211
167
191
236
266
237
208
190
194
186
243
171
244
247
254
115
222
216
189
242
237
206
212
237
225
229
245
236
196
158
234
186
183
176
180
186
175
221
225
203
195
249
184
235
234
249
179
189
173
263
185
244
204
196
159
228
190
174
187
189
158
249
209
221
220
219
186
255
233
257
227
202
212
201
222
218
205
198
167
169
278
178
215
185
206
236
246
203
145
196
180
202
185
228
222
184
183
206
178
112
201
198
214
195
237
211
185
215
281
160
178
244
216
178
206
146
238
158
187
233
222
258
180
89
210
141
277
210
196
183
204
186
152
120
228
154
242
173
213
175
209
180
153
195
181
189
204
89
209
202
207
217
168
227
223
185
246
195
186
228
249
214
208
243
233
250
225
241
246
205
194
185
230
226
282
228
204
154
239
149
199
212
177
174
213
122
169
229
196
173
233
220
164
235
169
248
227
235
244
173
240
195
173
221
162
178
191
216
206
230
224
226
166
215
199
243
234
184
230
126
276
241
154
168
247
193
265
186
222
226
208
210
231
182
198
129
227
186
233
138
219
217
160
242
272
246
206
201
198
177
141
190
207
151
197
198
141
244
175
231
203
171
196
184
215
247
202
197
207
149
168
159
189
216
163
222
204
198
199
195
199
131
173
215
195
235
202
149
218
248
229
176
260
232
200
173
248
260
217
236
229
160
129
187
241
214
210
281
233
146
227
207
209
207
254
178
180
158
197
157
245
105
176
166
189
188
180
155
151
214
193
154
212
239
185
150
200
227
188
173
224
169
237
238
203
128
226
199
230
187
167
152
194
232
203
265
124
192
237
176
179
219
191
193
184
215
133
243
161
184
127
249
235
174
218
168
216
229
254
175
217
174
245
191
204
292
216
160
206
229
208
234
222
196
256
223
220
211
235
209
192
228
214
214
176
200
193
203
215
193
194
193
223
239
169
256
145
212
160
154
192
181
261
208
211
247
205
197
275
175
185
188
199
200
173
217
175
222
187
240
259
216
181
241
146
237
160
177
218
202
181
221
225
147
232
244
238
183
176
207
222
209
171
215
224
224
224
235
150
194
180
157
239
200
259
193
226
251
210
210
206
187
209
221
206
240
238
243
174
233
237
254
230
238
178
214
206
233
189
174
181
178
214
215
250
259
256
168
238
224
237
240
160
165
172
189
214
224
234
205
209
198
206
217
192
90
216
145
246
218
221
182
233
147
236
233
203
236
193
185
238
225
186
208
201
195
142
214
251
188
237
237
192
105
173
186
233
169
181
220
171
209
220
163
228
174
198
194
242
192
207
189
195
237
197
163
216
242
126
144
195
228
234
150
205
242
239
195
180
144
193
181
224
231
289
186
286
178
189
214
223
266
208
221
167
224
120
239
196
132
191
177
235
205
206
193
252
191
176
199
234
56
184
170
204
201
250
144
226
218
171
185
215
205
203
160
239
227
240
164
219
204
200
248
257
137
223
208
212
166
189
216
169
240
213
247
200
129
247
203
216
151
224
243
172
221
128
195
219
161
204
184
203
286
175
230
220
212
190
245
193
203
152
159
219
261
182
216
186
192
193
249
198
199
225
205
212
204
249
101
151
191
234
208
237
175
214
205
220
212
233
224
138
237
196
230
182
175
187
234
192
194
252
141
203
204
169
152
185
192
206
264
207
230
170
206
182
209
229
238
208
299
189
185
175
192
175
164
202
254
204
198
247
150
214
251
167
174
237
155
216
170
188
162
213
227
205
190
152
160
151
210
211
191
188
135
212
228
159
201
140
225
174
227
228
222
182
188
202
195
172
179
273
221
176
199
174
204
181
170
159
191
220
225
216
261
281
150
253
169
195
212
245
221
176
240
218
226
233
165
163
283
188
190
216
250
226
183
150
229
140
178
242
143
232
221
170
202
144
212
215
144
208
178
227
240
209
130
190
259
250
189
174
101
241
189
203
197
233
124
205
171
191
180
218
109
193
226
249
216
194
171
180
200
194
240
196
156
181
238
177
239
238
196
178
224
213
218
168
201
190
221
201
223
218
177
186
250
220
215
181
214
216
185
215
251
177
233
212
194
195
209
194
197
170
194
215
171
174
156
169
218
190
269
200
184
200
205
173
194
193
239
198
190
227
199
218
159
219
206
183
208
278
230
205
157
145
191
206
200
167
176
190
188
202
180
214
243
246
181
208
180
265
153
239
175
155
172
248
173
214
208
213
152
217
206
179
192
221
184
174
162
196
166
202
160
160
172
192
246
134
159
209
267
149
198
202
258
160
131
218
209
174
235
173
202
282
195
182
133
174
232
198
256
235
174
238
161
192
233
240
163
166
134
169
170
209
202
253
182
246
218
133
189
113
197
279
211
205
214
120
148
250
225
179
245
180
233
188
238
142
175
253
191
179
239
187
212
249
232
184
214
187
199
246
144
252
181
176
212
173
247
174
210
160
139
159
253
207
262
150
212
177
183
148
237
220
141
221
178
140
232
193
204
236
146
203
241
218
189
232
238
189
223
232
132
166
222
217
143
230
237
214
228
198
237
168
180
221
152
187
217
233
161
195
236
211
200
154
181
154
142
196
202
228
204
219
228
230
198
178
209
167
198
175
156
200
220
189
203
285
194
210
255
200
210
197
199
270
247
191
196
217
211
156
195
204
160
176
166
152
194
164
217
249
179
171
224
188
201
153
175
149
190
153
159
198
207
164
191
191
184
214
226
194
217
204
166
136
197
167
209
214
148
201
175
141
210
178
181
245
245
176
187
198
252
185
141
168
257
222
255
181
203
173
224
233
219
200
190
166
219
234
184
208
163
178
179
90
142
239
242
247
196
195
202
236
208
212
181
221
160
187
251
195
211
126
210
160
185
163
218
215
219
185
240
215
174
194
113
235
227
178
191
209
217
186
199
179
182
229
214
170
243
192
181
237
188
216
179
238
144
163
235
216
139
167
184
213
216
167
146
271
166
144
147
231
242
130
201
229
268
175
190
153
218
238
203
243
197
199
243
181
237
191
262
166
200
160
179
217
220
113
174
177
200
153
155
242
229
232
202
214
210
178
171
209
216
203
219
240
234
224
185
200
225
195
238
209
206
166
211
209
220
219
225
187
258
219
165
123
233
260
124
187
209
209
221
190
166
181
267
197
223
170
185
173
206
143
220
214
181
218
226
247
196
188
264
249
185
186
136
187
199
232
169
224
213
156
240
215
219
199
216
271
202
179
168
165
208
211
195
220
181
254
138
196
218
237
202
157
252
212
221
252
176
159
198
196
232
170
161
162
173
216
204
157
225
190
153
150
202
214
211
171
225
255
235
250
228
184
168
141
192
181
192
189
149
193
136
233
224
158
239
159
151
139
180
215
233
238
127
259
231
239
230
195
189
216
249
192
191
174
207
180
232
218
230
203
163
183
148
157
216
152
188
184
258
146
132
249
199
202
192
247
287
215
259
221
129
159
168
228
140
232
116
197
243
272
261
118
242
186
221
226
205
176
154
194
211
215
223
221
210
207
204
226
201
181
212
229
207
225
178
203
175
198
205
176
230
160
170
124
217
228
200
198
225
260
241
195
108
204
211
212
174
252
205
152
243
196
207
217
135
213
214
179
276
162
205
155
178
178
214
284
172
181
258
183
197
186
219
212
202
237
193
221
179
217
212
232
151
194
193
171
195
275
188
195
183
192
240
234
215
187
189
260
167
177
179
181
226
226
196
203
193
204
146
157
216
211
235
270
197
242
220
224
168
241
220
207
212
224
200
205
198
215
213
197
222
159
197
265
204
166
232
220
174
265
244
192
164
222
255
227
180
215
233
151
208
188
181
205
236
193
153
176
184
227
232
224
188
202
168
172
200
131
207
205
217
175
201
193
201
187
200
197
229
203
261
234
192
189
242
256
237
183
163
239
161
182
191
187
232
188
164
155
212
221
199
136
177
179
159
226
140
203
259
215
201
205
187
224
137
217
210
151
223
214
225
201
224
176
195
168
188
141
175
177
204
176
182
230
230
191
224
257
184
179
180
207
236
233
139
187
140
227
166
174
201
237
140
176
212
176
194
173
207
170
186
191
218
188
181
197
184
176
228
184
188
176
193
236
201
183
229
173
268
167
187
187
134
145
247
174
219
174
200
232
246
191
157
158
184
226
279
190
130
195
161
187
185
245
197
241
209
191
228
152
177
204
128
162
218
189
206
210
195
175
163
195
189
255
140
161
237
231
277
289
179
219
208
233
214
193
186
230
181
212
183
138
183
198
231
173
208
194
148
228
233
169
130
230
195
201
204
129
172
194
224
205
233
207
164
275
119
132
247
171
212
200
184
233
240
226
154
215
251
192
192
198
182
199
182
156
147
181
201
176
221
244
231
257
209
229
201
238
172
242
249
230
205
121
212
245
219
174
220
258
231
169
256
187
219
283
162
212
167
210
183
153
237
149
159
193
170
225
231
216
223
244
219
213
239
178
208
186
267
218
138
248
235
212
197
199
119
231
233
150
153
169
203
149
246
190
166
208
221
243
224
146
207
227
250
192
145
238
216
241
239
216
232
211
195
199
110
162
200
219
141
199
193
237
236
230
200
220
163
174
208
207
172
189
170
195
182
231
210
193
170
247
173
182
186
173
243
196
108
245
218
206
222
217
212
197
122
99
231
254
181
249
167
136
240
236
219
179
151
250
236
244
169
173
170
194
184
212
206
180
206
174
250
224
111
213
212
212
221
226
212
185
193
216
192
251
219
179
219
218
169
228
252
212
198
197
236
238
170
178
202
185
243
176
177
161
143
191
251
195
200
168
170
204
180
203
160
217
204
175
152
194
179
194
197
245
203
153
214
261
163
148
196
135
221
198
252
227
198
186
189
253
199
172
139
153
178
216
252
195
225
236
180
225
190
252
242
252
153
182
215
185
235
218
98
258
196
231
221
219
219
204
153
166
195
191
200
207
225
232
152
195
162
194
243
174
229
201
228
167
209
186
202
237
230
221
162
184
221
150
182
172
247
200
236
197
162
213
215
209
197
196
228
187
107
150
254
211
163
215
195
236
204
213
199
213
163
122
233
202
229
183
140
161
172
264
193
222
253
180
201
205
189
175
198
224
211
146
172
262
202
262
215
226
170
229
206
202
190
190
170
140
206
197
202
116
188
232
213
175
227
122
213
234
212
199
180
202
141
194
147
147
156
222
236
208
183
218
195
129
133
191
149
275
221
265
183
231
148
207
252
203
205
194
176
212
216
235
239
176
194
241
175
160
187
202
266
189
226
197
208
196
117
206
239
175
207
236
190
159
247
219
193
202
220
223
186
232
143
216
132
224
160
127
208
141
278
204
216
264
131
170
245
223
155
198
242
184
213
241
259
221
168
246
208
217
178
195
178
181
213
209
235
157
190
230
233
140
246
217
186
245
255
219
197
205
232
219
150
235
204
167
219
236
244
133
133
179
208
179
158
223
156
250
193
197
295
193
186
265
203
178
174
200
251
243
234
194
122
165
207
188
222
230
215
217
215
233
167
236
207
225
185
203
177
224
126
167
177
237
217
155
225
201
136
207
174
210
201
169
199
175
185
197
174
194
202
241
220
141
196
200
176
261
214
188
131
191
201
205
208
247
222
207
203
203
245
162
229
219
227
176
181
205
240
187
206
243
219
217
192
191
168
218
224
192
218
191
209
231
193
111
214
228
242
195
253
240
193
123
218
271
228
150
179
206
279
178
225
182
178
263
154
188
204
251
194
221
159
170
172
237
236
181
241
142
183
232
252
231
172
197
220
132
219
210
189
170
135
195
218
195
242
241
275
205
211
209
231
142
220
259
215
207
217
279
234
233
220
156
222
214
233
219
236
186
158
236
146
189
169
119
211
216
248
230
167
233
233
226
233
183
261
181
174
129
209
200
241
200
237
210
198
160
218
215
237
248
204
248
217
183
265
214
211
101
252
230
209
131
247
261
140
200
244
211
224
206
172
187
209
163
212
263
181
261
242
226
219
189
220
184
183
246
194
178
177
158
190
235
237
268
182
242
176
184
135
257
213
253
148
131
173
138
179
223
209
176
246
179
182
215
200
184
186
236
183
225
178
183
218
185
200
207
201
140
230
212
113
229
212
234
250
242
178
182
168
221
176
161
195
154
176
205
238
227
129
155
179
155
184
149
196
186
171
219
197
279
225
221
251
212
225
178
194
221
154
168
230
192
206
157
238
244
197
222
285
169
201
175
198
166
208
177
166
210
155
146
221
249
216
143
149
192
212
221
231
126
142
119
240
205
193
184
167
207
188
165
200
192
226
176
224
208
161
204
203
212
227
200
219
209
225
216
224
215
216
193
155
166
244
197
227
210
191
210
172
232
237
179
246
235
212
176
197
190
183
222
196
181
192
123
265
184
206
220
200
193
225
179
176
164
211
173
158
189
175
151
230
209
272
211
200
248
233
225
176
169
167
253
225
131
175
192
220
143
160
224
159
136
181
190
240
149
216
173
217
119
190
178
192
238
181
178
141
273
215
234
202
244
188
170
246
205
172
157
203
209
187
240
215
274
239
205
215
141
264
213
181
168
197
198
202
218
201
195
178
268
247
200
191
180
193
185
202
142
240
156
171
148
205
242
226
212
179
182
154
188
179
181
244
223
224
202
210
153
140
213
186
169
177
200
210
165
198
215
172
223
173
228
198
223
189
223
164
184
170
192
188
227
240
224
152
131
205
180
181
179
195
234
223
260
234
259
216
174
226
220
200
182
215
236
147
215
194
238
160
226
156
172
225
219
196
192
213
244
212
140
269
172
201
225
262
194
249
223
239
212
202
198
204
173
200
232
144
144
177
146
175
187
216
204
165
235
185
234
159
167
210
206
148
186
231
238
227
206
213
173
274
223
206
211
210
209
188
213
207
204
245
214
181
184
235
154
218
191
162
163
233
201
242
256
174
192
150
220
181
206
189
221
146
243
150
223
165
254
228
255
241
201
268
171
192
209
216
209
206
198
141
232
161
248
236
178
242
237
154
181
210
225
206
192
188
174
189
220
235
253
232
218
223
153
166
240
114
146
217
176
245
253
138
171
186
147
197
234
118
197
187
138
188
189
250
210
231
187
124
146
180
265
165
198
203
223
184
139
206
255
192
193
264
189
247
178
282
170
160
275
215
172
242
237
232
236
158
214
220
141
260
250
178
214
188
173
187
243
162
222
193
163
229
175
136
243
195
262
186
152
225
223
192
208
230
273
186
192
215
136
191
156
192
219
153
204
186
168
207
228
190
127
255
168
239
183
177
152
183
194
251
194
168
220
140
249
108
203
192
202
224
206
226
135
198
170
190
145
211
207
204
232
155
257
176
239
160
215
290
187
210
204
186
206
186
156
221
204
186
155
157
156
219
217
170
157
225
187
250
172
223
219
160
213
189
206
241
171
169
186
206
216
214
147
251
107
227
176
201
264
198
177
265
171
192
225
213
227
252
187
199
236
236
243
227
218
245
147
198
177
242
216
266
210
179
185
162
178
223
239
192
250
242
212
280
202
264
195
172
229
175
186
214
212
145
235
172
204
192
176
214
179
192
233
185
175
135
220
172
197
228
164
209
179
211
193
114
238
190
178
202
252
193
254
141
228
192
205
170
224
187
196
200
281
175
205
133
169
216
215
215
266
267
191
183
204
225
252
197
167
255
236
205
141
223
164
230
161
228
232
176
140
203
148
184
265
211
175
228
196
224
188
215
229
210
166
206
205
228
231
221
199
211
219
145
189
188
115
199
260
259
263
229
221
259
265
238
261
181
193
163
175
246
204
285
210
136
245
198
189
183
192
275
168
225
186
227
243
167
210
230
185
167
185
212
197
199
173
211
186
206
232
226
180
211
200
231
222
259
147
144
154
204
216
184
254
230
231
221
243
185
177
210
206
199
147
186
215
165
224
184
191
169
208
204
222
181
163
174
232
192
195
158
258
191
201
225
210
195
218
258
126
179
234
248
231
196
202
171
141
201
191
226
208
193
186
265
257
199
191
204
239
216
193
213
172
201
186
205
250
203
154
197
267
222
183
214
231
170
153
178
209
203
260
216
182
235
159
153
214
174
251
224
193
180
160
153
137
209
130
208
212
207
203
197
195
250
193
182
193
187
214
192
265
197
195
216
117
208
180
224
258
253
216
206
177
184
180
205
246
160
191
183
235
258
193
197
166
176
256
165
215
233
185
235
201
211
113
217
191
145
214
118
224
239
177
186
240
193
164
214
241
189
231
223
211
180
214
183
226
233
178
248
172
200
244
230
181
229
128
186
175
188
223
248
245
192
150
234
196
232
193
256
262
210
215
227
167
182
184
247
260
192
248
180
218
168
169
242
224
170
213
133
227
171
278
180
224
163
191
189
186
201
168
202
137
200
157
174
205
235
219
209
227
163
230
231
219
198
213
162
196
180
239
186
132
232
201
188
159
242
208
114
166
259
223
261
201
267
192
233
268
184
205
155
182
192
177
193
228
176
172
196
148
194
207
173
169
197
162
197
238
260
214
260
166
217
112
221
257
260
158
217
216
200
180
235
179
194
167
187
291
190
211
211
229
186
193
240
216
190
217
227
184
177
220
163
212
246
201
203
214
195
167
200
143
176
195
185
210
158
240
192
128
122
164
267
168
149
158
219
216
267
214
239
148
198
200
165
245
196
196
184
183
274
97
193
192
193
166
189
184
210
237
155
216
190
187
235
159
234
224
224
186
207
152
220
249
282
238
254
131
204
184
165
207
233
221
221
186
138
224
198
182
214
137
197
188
221
233
181
247
212
171
246
224
125
139
218
203
189
205
168
261
150
161
194
220
175
173
237
177
222
175
193
171
251
229
186
276
178
176
189
248
197
256
207
154
165
184
253
140
224
143
258
228
242
169
147
179
211
149
170
178
188
182
223
210
208
167
189
201
202
197
156
211
205
226
189
195
200
164
223
226
136
211
261
240
232
212
248
194
207
228
166
196
234
226
159
128
204
204
214
248
238
194
206
214
164
153
227
264
229
257
208
217
172
186
218
149
236
214
227
216
171
211
181
161
130
197
181
203
195
161
240
133
141
186
226
191
202
195
216
217
207
229
185
183
215
214
225
193
206
235
221
189
192
242
232
215
170
241
254
203
218
243
179
224
162
205
172
223
191
212
146
169
146
182
228
257
205
195
209
205
228
169
252
242
195
147
202
196
169
178
219
177
159
193
212
215
218
216
173
283
147
232
187
147
146
106
239
236
226
214
184
232
150
147
208
208
183
203
187
158
198
227
187
185
242
173
223
250
175
195
222
204
231
259
210
182
176
195
193
163
180
252
193
185
159
276
227
236
173
239
164
193
202
232
231
214
204
265
267
219
123
226
182
227
161
229
216
266
208
213
198
215
200
228
155
165
208
179
228
184
245
175
215
231
209
236
154
197
158
205
262
237
192
225
208
209
212
228
180
168
225
100
183
183
232
180
164
234
125
210
249
177
258
207
188
137
163
177
224
198
191
224
226
232
177
216
178
179
205
138
211
198
166
222
183
155
140
259
181
168
241
155
205
253
168
178
180
130
191
211
173
261
240
191
197
246
229
170
203
209
195
268
172
160
202
243
206
163
135
254
262
228
211
166
200
172
213
215
208
229
161
236
235
179
224
170
191
279
172
177
163
228
144
205
192
203
191
200
155
248
158
188
195
207
180
227
223
232
209
197
212
199
245
191
183
178
209
133
201
212
221
199
235
138
190
201
169
208
193
227
237
153
213
191
169
152
163
248
220
235
221
151
217
184
207
223
252
202
193
203
220
202
194
239
160
201
235
236
270
189
239
214
177
216
195
197
133
223
165
244
225
166
202
172
173
222
234
216
190
171
186
236
232
170
223
225
210
159
237
204
180
176
199
185
210
199
202
177
220
231
185
256
206
148
177
210
218
233
156
254
170
154
196
229
131
199
153
157
175
227
132
152
183
242
192
172
205
170
189
167
251
199
222
214
214
201
165
159
249
136
191
173
148
129
142
254
244
177
145
187
200
156
230
240
185
144
198
246
206
207
196
221
198
202
164
213
198
205
128
138
163
190
124
212
258
208
236
160
199
219
158
230
215
179
226
183
189
212
165
230
171
149
228
175
181
146
175
197
116
268
176
180
183
185
240
216
202
191
217
209
268
193
235
155
157
177
210
168
226
165
143
134
217
216
231
202
150
224
224
192
222
142
249
258
243
246
191
216
221
256
266
181
260
141
133
186
218
206
186
194
232
191
202
190
246
198
192
224
206
167
180
209
187
149
183
164
154
212
195
229
177
198
218
198
251
245
192
210
212
190
189
254
234
264
147
151
199
247
156
208
270
208
190
199
211
193
194
204
176
183
206
207
161
232
191
166
212
253
215
198
245
199
177
166
194
227
211
256
237
200
205
176
242
216
139
163
198
143
243
247
217
170
222
227
190
168
221
187
150
231
235
167
239
206
216
193
225
195
205
160
265
199
238
219
181
254
212
225
187
183
174
218
208
205
180
239
223
167
138
213
237
184
201
172
119
188
217
204
217
230
212
215
192
219
187
228
207
254
273
221
208
195
234
242
166
214
228
210
224
206
190
160
178
192
148
155
216
202
250
173
172
194
249
250
115
186
217
178
168
193
250
211
187
207
215
201
221
145
166
224
220
111
219
216
228
227
229
227
221
141
184
220
187
171
222
181
196
184
199
252
204
237
166
149
247
211
183
205
151
204
193
173
196
232
177
217
202
182
167
168
177
151
172
191
201
183
201
186
235
190
211
163
182
199
235
115
154
200
122
207
182
193
205
194
219
164
225
231
233
199
168
123
225
135
219
199
183
131
173
228
221
171
258
213
185
200
230
272
240
189
264
210
242
229
230
256
181
241
197
207
167
176
196
220
233
178
250
177
209
191
222
179
205
122
195
266
216
179
248
187
143
190
157
237
203
225
192
120
196
162
183
217
253
220
228
275
155
159
272
179
217
180
180
201
258
208
192
204
197
186
171
182
180
141
237
175
232
251
181
141
239
148
214
164
203
161
189
218
189
170
231
213
216
165
212
180
200
225
230
233
195
205
190
247
212
184
187
236
208
239
195
206
160
277
191
228
260
154
236
247
242
170
149
209
198
153
238
262
165
164
220
148
221
141
220
219
179
233
177
192
174
154
182
227
229
146
215
223
208
217
198
201
202
208
299
217
209
192
188
188
185
195
250
237
210
144
211
268
252
240
172
168
215
191
199
242
275
187
178
217
171
164
175
189
220
172
223
189
153
173
131
187
203
226
233
203
212
213
259
225
213
252
185
234
239
166
163
195
233
203
198
220
236
218
147
186
258
149
180
257
246
149
217
158
259
157
168
167
235
214
177
249
213
205
191
265
250
184
170
196
280
166
207
178
180
200
141
191
156
189
182
150
244
198
231
233
183
193
232
175
207
206
234
252
196
169
237
214
158
222
172
229
194
248
227
166
205
162
176
254
183
223
179
227
197
165
188
194
228
205
216
194
227
220
244
184
213
248
122
241
198
160
211
215
208
253
200
206
217
171
217
245
192
232
162
256
165
208
205
215
219
204
223
193
241
199
201
178
201
211
232
189
199
215
210
174
148
183
127
201
215
171
198
145
165
152
183
198
236
244
217
134
189
228
189
181
183
187
228
206
200
227
128
199
174
161
231
188
187
203
106
165
218
175
209
240
216
156
221
197
245
200
242
202
176
191
248
178
149
182
171
228
262
202
193
166
176
137
247
173
233
167
241
197
158
247
216
308
203
232
226
82
200
176
174
170
198
189
137
203
213
218
188
171
241
186
172
270
192
218
239
191
160
153
207
176
210
241
249
262
145
222
227
247
237
202
173
216
165
227
143
174
191
211
182
204
203
207
211
235
228
201
218
197
242
197
223
207
220
176
243
180
196
261
238
218
193
233
194
178
243
106
211
259
162
247
196
168
197
170
219
184
152
200
201
216
244
215
152
198
186
171
195
213
181
228
163
174
188
231
203
199
217
177
228
270
233
201
158
173
208
213
216
244
184
157
129
213
212
265
159
226
193
171
198
166
208
231
207
277
255
178
266
227
195
225
156
261
226
225
161
204
161
149
190
222
227
197
162
188
184
194
122
161
214
218
217
237
192
215
196
248
210
195
255
250
188
206
242
224
273
180
214
208
162
239
168
201
239
191
235
174
190
208
166
185
171
212
196
138
211
274
196
248
201
155
200
241
211
189
268
230
148
160
174
220
177
187
205
178
150
196
222
189
176
194
195
186
176
206
270
208
222
135
243
135
196
200
199
190
143
202
140
227
197
239
150
213
224
194
233
219
190
204
200
214
248
136
184
257
227
236
197
240
185
241
147
142
205
218
152
220
275
220
274
259
184
193
219
222
152
234
273
147
197
199
192
124
201
93
198
221
226
255
156
231
145
217
241
201
178
182
213
198
184
224
193
205
179
232
279
200
221
161
140
230
183
160
176
194
200
238
249
207
236
223
144
200
210
172
197
223
131
251
179
257
221
251
241
227
210
231
194
169
219
216
226
232
251
209
140
174
197
199
192
217
266
181
195
217
147
258
159
221
242
160
202
207
188
247
167
228
227
212
214
239
232
170
136
206
183
209
182
159
202
197
98
196
218
140
196
217
251
238
231
227
234
185
197
220
230
131
189
214
155
231
224
151
289
249
225
183
235
242
210
217
231
185
158
210
205
140
258
201
128
232
187
187
192
216
229
156
269
227
189
155
166
214
208
164
241
220
152
226
233
154
207
195
182
228
150
178
202
183
222
132
200
193
235
117
217
233
158
185
197
173
210
226
161
197
214
234
203
214
195
212
210
202
206
193
205
221
220
107
217
212
257
161
190
194
202
201
199
203
183
188
151
192
221
153
180
215
213
157
186
164
189
192
250
213
213
190
208
225
155
166
174
234
232
169
180
206
197
231
167
186
175
174
191
175
219
218
196
212
193
218
212
211
159
223
220
170
224
218
221
217
265
197
209
155
160
226
180
203
236
171
203
186
193
225
130
185
241
218
207
154
209
156
205
193
233
187
200
142
234
238
247
249
146
209
229
213
275
149
192
210
213
224
253
149
150
192
175
245
251
256
219
214
186
204
139
145
272
233
184
200
125
187
255
174
182
180
226
215
215
187
175
207
232
275
148
212
173
158
175
253
140
191
222
238
195
176
187
207
199
227
202
159
227
279
239
217
191
187
175
161
190
224
216
243
156
218
177
177
164
205
178
216
201
205
160
260
149
204
263
158
196
181
244
187
197
116
172
200
244
160
202
256
136
231
174
220
223
246
184
263
177
149
184
190
209
149
152
198
244
178
180
142
177
253
197
194
160
218
220
182
184
165
147
191
223
206
215
212
215
154
201
212
97
157
212
130
215
225
217
272
171
183
227
212
202
229
247
182
207
217
151
213
205
211
236
261
223
215
204
220
200
140
246
219
204
242
230
217
180
213
183
170
206
206
127
188
229
136
246
153
205
207
182
241
221
197
187
225
245
126
210
258
174
212
207
168
159
170
134
166
245
234
207
191
201
246
151
215
241
221
215
215
235
214
216
163
160
183
253
177
273
174
228
178
152
175
226
221
130
215
180
188
199
206
167
193
235
163
140
231
195
181
147
149
195
176
230
221
202
207
207
202
272
202
211
217
223
198
149
172
211
267
262
184
133
197
137
209
197
193
263
120
145
194
225
154
233
196
108
280
238
133
231
216
175
161
222
207
202
236
246
192
132
180
250
153
194
243
266
232
156
216
200
215
227
230
198
225
276
228
187
135
182
229
212
195
109
124
254
220
181
196
214
231
217
218
179
171
179
201
214
146
202
133
140
219
193
194
188
242
228
191
174
91
176
161
159
220
166
229
201
150
226
177
209
243
221
208
151
220
191
181
227
129
176
279
225
230
177
264
177
203
232
121
213
224
247
185
187
215
203
99
213
179
175
224
223
254
258
222
220
169
234
222
201
265
190
199
191
231
256
202
221
185
172
257
167
236
206
185
222
157
206
203
219
209
233
129
181
182
243
226
207
203
286
186
210
181
217
184
224
255
260
215
178
143
171
148
213
193
146
195
182
150
199
228
202
148
221
234
222
147
185
214
251
196
277
235
180
223
151
179
244
177
196
228
209
295
234
208
177
224
182
145
257
210
189
229
229
214
223
248
208
159
210
173
192
247
199
160
156
261
168
177
218
222
227
157
230
185
193
235
160
215
154
202
163
143
221
192
175
178
161
223
170
237
156
223
154
220
218
212
153
242
163
136
215
200
257
194
187
214
140
194
175
257
152
223
204
171
180
244
225
156
181
201
176
256
181
209
204
251
218
197
169
221
195
131
234
260
204
197
226
176
151
139
225
241
191
143
195
210
179
192
222
221
230
206
185
222
199
217
180
205
192
225
236
175
159
251
153
180
135
199
194
229
219
191
237
212
241
220
174
201
236
196
181
131
183
155
195
231
190
196
215
179
207
249
237
215
228
199
170
189
185
193
208
178
236
211
163
179
213
180
200
195
198
230
205
201
156
210
213
232
127
227
180
255
147
217
203
232
191
181
198
120
161
199
218
196
223
165
190
174
224
181
249
135
183
230
185
225
128
149
175
143
218
149
217
188
172
224
147
185
236
171
186
235
204
280
169
267
274
214
215
271
155
254
162
241
230
219
239
190
170
216
226
209
207
151
269
113
204
176
214
162
257
191
148
238
210
197
198
259
181
170
165
225
222
191
188
264
178
232
234
187
225
199
184
205
201
207
209
107
212
249
216
161
219
204
226
195
173
148
243
163
217
192
240
235
191
187
172
210
229
224
233
251
189
218
157
247
165
215
181
208
258
218
195
209
211
213
245
201
203
274
156
141
216
177
221
194
151
266
224
159
159
230
286
203
217
165
179
200
167
187
231
163
129
229
198
202
188
173
197
206
191
172
159
198
229
215
170
273
201
165
220
196
213
220
191
214
184
204
165
199
228
193
175
215
199
152
220
210
164
219
177
168
206
207
202
210
242
202
228
218
153
225
245
180
211
155
182
200
196
189
227
174
195
235
181
164
169
143
197
167
219
198
190
155
122
237
168
234
204
232
210
167
241
197
181
193
155
220
193
214
201
201
201
254
153
204
192
251
225
253
264
193
198
254
203
221
242
233
239
225
187
244
196
248
166
218
182
200
240
220
176
192
214
142
205
207
230
281
204
164
254
233
204
162
230
211
213
248
245
166
226
168
182
191
213
218
262
194
162
234
210
177
222
187
190
213
227
215
224
239
215
158
149
183
188
214
178
232
225
213
173
211
201
157
159
221
192
188
194
216
214
253
206
217
164
157
173
135
212
146
242
226
232
225
114
201
222
174
178
248
190
266
189
250
179
183
195
185
206
117
252
196
188
205
210
225
213
180
204
220
207
224
168
186
167
219
189
290
180
101
223
107
184
168
139
218
207
260
244
234
149
220
187
180
163
255
245
189
222
248
222
247
200
138
220
199
238
234
212
202
228
171
216
216
192
209
157
195
199
194
159
193
211
207
138
235
177
164
177
159
188
174
168
240
234
231
230
196
179
196
256
205
186
250
169
175
270
184
224
198
220
212
225
213
238
206
212
146
207
248
189
194
203
174
188
186
229
190
204
200
170
188
161
236
221
139
147
173
221
218
203
219
236
218
202
244
227
195
188
195
196
172
204
242
200
150
266
209
221
194
145
203
222
138
188
173
231
117
153
244
188
99
153
206
176
247
234
208
222
193
202
233
125
197
231
207
192
201
103
161
165
221
172
198
228
86
195
196
192
138
176
250
143
216
205
203
143
240
170
189
174
241
237
263
123
197
230
197
173
247
168
209
188
226
232
171
202
197
138
238
178
195
213
210
130
243
207
156
209
269
199
226
266
191
211
187
230
180
153
302
251
166
173
177
156
231
192
219
190
191
234
237
199
231
197
216
226
205
167
239
186
186
209
136
191
191
228
168
247
196
179
242
212
190
210
232
139
201
172
184
147
225
198
200
259
157
211
181
204
226
190
237
214
200
220
183
164
191
200
170
253
128
191
232
224
218
158
216
195
229
222
102
214
153
180
213
178
210
201
207
204
238
216
172
158
208
174
242
262
256
161
256
249
200
206
237
252
207
246
229
222
211
197
176
221
168
228
215
172
167
208
185
229
202
241
180
180
201
181
208
173
229
180
157
211
169
202
163
221
205
229
232
213
231
168
135
133
181
216
187
222
190
247
219
243
173
276
204
148
169
190
248
179
173
253
182
247
218
210
138
213
243
243
145
186
249
217
152
229
181
205
221
211
178
256
231
202
202
160
243
257
164
138
222
211
247
162
181
151
187
200
218
193
192
219
181
230
157
238
209
170
182
243
184
236
203
180
168
207
247
162
235
259
152
205
275
199
146
123
192
214
213
200
194
228
192
245
230
218
186
139
143
241
224
203
231
192
226
143
168
240
221
189
215
206
255
165
154
256
226
235
208
163
190
181
237
206
234
207
191
164
203
220
198
233
221
208
149
226
126
200
221
239
158
240
227
159
153
248
229
160
207
131
241
222
256
167
224
197
210
209
123
183
225
208
220
163
233
220
221
232
198
164
172
169
275
227
172
171
226
218
133
214
184
222
203
194
176
175
234
269
235
215
230
222
247
189
235
188
214
225
203
190
230
179
198
216
212
188
165
232
163
222
197
232
225
195
203
266
219
174
135
210
194
262
211
173
186
208
194
264
164
234
237
189
169
180
225
229
252
137
201
234
231
208
214
190
175
215
182
192
187
239
171
204
219
205
223
156
149
163
229
200
218
205
169
190
236
230
217
193
204
239
207
208
194
245
216
192
201
167
174
259
244
187
203
197
230
236
235
187
240
207
163
157
150
190
192
183
162
249
188
217
207
241
143
191
138
192
202
196
248
218
265
267
186
156
190
258
183
153
197
228
175
242
214
223
213
232
249
184
206
208
182
232
227
114
167
246
228
142
178
195
222
123
176
240
182
236
187
244
189
187
210
164
223
158
236
117
266
168
212
189
207
134
150
219
161
212
201
148
89
161
208
155
208
181
160
210
136
193
213
212
248
214
185
208
221
224
178
164
224
182
228
179
214
198
233
148
222
139
242
248
228
204
176
179
159
201
197
199
186
161
216
144
161
183
224
224
195
195
180
129
248
140
232
204
197
198
256
253
171
155
208
189
189
162
240
216
205
179
156
221
223
188
231
197
284
240
162
178
191
200
165
192
129
61
224
180
202
237
225
188
193
201
186
193
207
266
253
125
186
219
214
212
227
258
260
217
195
114
228
171
226
208
168
166
201
241
218
238
193
241
220
211
198
167
168
241
193
218
174
141
186
219
179
184
164
150
217
205
226
181
219
161
225
226
177
190
241
155
161
233
163
181
183
172
197
265
245
225
180
227
223
235
277
218
238
218
224
163
214
186
230
201
161
174
198
222
199
171
156
240
199
176
202
174
216
247
243
165
222
210
166
155
218
262
210
198
206
226
232
244
164
159
168
199
214
250
201
172
212
154
205
190
155
241
220
156
168
221
185
197
135
193
193
191
168
250
204
179
176
226
196
162
224
240
233
197
184
210
145
210
219
172
161
286
221
158
183
189
243
197
228
206
218
154
151
262
207
239
218
184
251
183
155
226
204
204
158
181
239
193
207
240
190
236
206
209
239
148
211
178
190
193
145
232
223
237
235
206
238
191
207
213
242
174
194
201
188
253
179
226
194
145
152
176
194
192
245
213
199
191
145
192
193
226
202
168
168
246
237
238
169
247
205
152
165
224
167
163
210
185
214
157
233
227
245
194
200
224
208
213
153
187
172
248
208
183
201
220
184
190
187
248
210
177
178
173
126
216
206
171
232
195
235
172
203
199
236
162
203
232
234
222
202
197
224
204
232
201
241
231
273
196
100
275
238
214
211
228
193
274
139
202
140
178
239
190
144
228
244
188
197
193
218
166
174
243
231
201
219
198
182
224
225
166
240
167
190
210
187
249
169
152
148
210
251
161
217
203
186
211
210
239
200
255
267
150
256
163
203
132
136
229
161
207
213
174
191
202
237
241
177
170
251
210
251
149
220
202
176
202
289
212
221
184
218
237
257
205
198
200
183
224
187
112
194
227
233
142
270
217
298
214
202
269
208
244
190
141
226
220
221
210
202
223
193
247
198
229
186
166
186
186
201
187
166
146
217
165
212
192
263
165
211
116
171
239
198
186
206
171
260
250
169
221
185
102
151
163
145
198
216
201
238
194
179
238
235
156
167
222
219
240
207
152
231
158
230
256
185
241
186
207
162
248
232
177
130
214
138
221
141
197
155
247
195
194
198
201
215
236
202
163
208
164
202
128
248
163
181
190
199
187
204
108
238
169
158
193
157
142
221
198
197
198
155
180
265
202
162
175
162
210
153
144
231
97
229
220
264
264
167
170
186
248
204
117
219
174
167
198
140
192
232
253
224
215
233
156
169
146
188
200
235
239
180
220
188
210
136
246
248
151
234
200
180
203
158
173
226
243
225
210
153
149
214
193
209
203
196
193
232
212
141
177
171
239
201
205
200
204
144
284
253
205
212
188
164
199
178
207
204
234
173
218
250
188
210
197
215
225
238
199
142
180
261
211
205
236
216
202
160
210
190
178
221
219
216
236
245
209
141
265
253
199
190
224
207
200
242
181
165
182
177
187
180
217
227
284
166
164
214
239
129
216
152
236
191
209
187
245
207
185
221
177
240
228
163
238
208
179
189
168
202
143
221
212
224
239
231
195
217
205
191
153
231
188
210
177
204
171
201
189
176
253
212
186
224
202
193
158
168
242
209
156
179
193
187
230
285
208
257
233
255
227
156
220
236
160
171
192
209
206
186
220
140
187
198
204
180
170
165
212
251
171
240
201
274
251
198
246
174
195
268
157
230
218
187
165
216
186
154
154
218
181
203
290
252
205
261
179
190
252
199
236
234
172
218
245
231
152
196
151
220
192
199
219
241
180
238
197
177
214
181
196
217
178
185
210
194
177
177
191
175
182
169
184
172
218
255
223
228
219
194
214
150
166
173
167
221
235
199
166
193
193
273
181
157
192
210
209
182
224
213
289
209
155
168
230
199
204
248
180
224
199
202
161
196
201
289
222
164
126
158
125
195
207
244
207
185
197
235
211
189
221
157
210
198
211
243
162
188
172
205
180
176
240
179
210
199
129
230
175
258
180
193
250
210
227
204
168
218
198
186
165
231
187
136
221
192
221
221
228
240
194
231
248
193
133
227
173
222
202
184
192
205
224
198
171
171
204
154
159
238
181
217
230
165
198
173
174
230
186
245
192
180
177
168
184
225
180
178
163
187
115
182
200
252
191
164
179
174
149
211
168
250
288
187
200
175
190
187
182
207
209
208
109
205
254
205
118
113
224
230
244
190
217
191
218
216
198
226
232
132
128
234
256
213
165
172
178
217
175
197
178
223
139
181
153
248
244
207
223
159
269
162
219
175
152
110
163
218
229
232
134
218
243
144
215
220
184
214
209
166
179
190
226
217
181
230
145
191
245
194
216
186
172
204
218
212
239
232
221
165
164
245
222
192
220
251
234
140
150
174
176
223
262
254
176
169
200
103
226
157
187
142
239
255
301
218
154
177
165
199
218
232
227
232
207
213
170
198
240
203
221
220
216
213
182
230
163
255
187
180
173
283
204
206
226
250
194
142
163
203
138
184
164
181
229
230
178
185
230
224
182
144
191
222
183
234
235
176
151
173
201
180
183
176
166
215
173
198
208
194
127
162
174
205
206
215
211
219
191
235
194
227
187
194
212
177
172
220
207
207
229
243
198
219
156
240
156
165
213
230
178
224
172
251
233
204
227
228
235
202
214
200
232
223
159
125
236
213
240
275
203
250
209
203
244
175
191
231
212
203
153
243
217
216
195
167
202
182
167
248
219
267
148
222
179
153
192
177
220
198
236
192
195
251
267
232
178
192
205
247
204
231
162
171
186
209
250
204
181
165
205
213
160
168
161
207
178
189
155
245
148
165
180
288
215
187
171
201
219
187
203
189
205
252
251
177
197
206
196
169
217
202
185
205
205
226
200
208
228
255
177
242
159
160
236
192
235
239
178
210
202
202
159
227
243
236
205
253
189
220
161
211
194
212
182
186
210
148
206
168
245
208
161
241
235
186
182
170
273
208
193
211
182
219
228
240
190
196
234
203
181
273
194
236
203
185
199
178
200
209
138
192
231
186
203
220
174
263
174
250
223
174
198
163
293
240
246
173
199
220
256
198
262
146
218
192
201
199
237
235
160
218
240
226
191
189
143
213
206
144
192
192
178
224
96
142
151
245
191
185
230
152
151
168
245
202
184
204
262
236
192
207
119
195
192
157
242
160
187
181
135
192
159
192
207
175
178
176
269
166
209
206
191
237
251
195
228
184
191
212
169
215
184
187
146
186
182
249
191
238
213
174
168
200
208
179
241
199
235
198
216
234
247
192
204
239
303
232
177
198
236
260
197
218
205
229
204
131
183
188
202
200
234
220
162
210
208
249
268
170
219
186
179
177
157
213
239
239
142
167
191
221
198
221
190
224
186
204
194
248
201
206
223
207
218
247
258
227
201
246
211
241
185
195
252
170
249
199
201
200
91
254
216
149
174
209
228
159
276
173
209
166
130
256
274
203
150
209
167
184
249
237
178
177
172
237
175
189
188
225
235
177
210
201
186
187
161
211
155
199
195
203
193
149
195
218
212
231
242
159
195
134
259
202
246
215
140
199
219
175
222
208
213
185
180
180
207
193
216
218
219
214
255
225
208
181
131
182
195
227
275
194
182
220
209
180
230
226
246
209
203
217
158
255
178
217
166
247
159
235
188
193
201
200
196
194
154
185
163
244
189
231
181
181
208
212
215
193
229
206
224
164
229
174
205
227
183
215
243
164
138
200
207
212
164
198
157
203
166
197
221
182
234
227
196
196
249
246
189
155
200
184
191
211
209
176
165
210
216
214
202
238
159
159
227
224
130
217
188
204
203
205
238
206
250
226
257
202
223
226
200
192
193
210
240
139
153
230
207
187
226
225
169
169
233
206
166
152
192
192
208
230
187
220
217
163
214
284
219
231
230
236
192
262
164
172
186
215
171
219
220
201
187
208
213
235
216
259
238
198
217
166
149
257
171
213
259
165
152
176
252
228
226
167
162
239
230
222
248
227
281
176
244
174
201
204
179
197
218
187
173
221
170
228
232
225
144
201
225
245
173
180
217
259
195
246
182
250
194
255
268
196
225
228
179
201
253
205
195
247
237
231
250
211
179
200
192
124
223
189
261
210
148
133
204
198
160
218
193
164
161
197
193
167
223
247
238
153
212
194
256
143
218
247
209
218
201
225
184
195
226
201
163
172
208
248
131
200
257
175
168
264
182
210
194
209
222
237
193
261
179
174
129
259
217
185
215
195
189
213
204
175
204
225
198
218
206
124
206
198
233
192
162
177
175
238
175
278
185
161
173
151
230
162
213
236
228
195
206
150
181
229
184
245
205
170
186
220
212
172
237
231
195
198
192
197
208
237
179
215
229
188
174
238
158
216
181
202
224
288
167
206
81
211
225
195
197
209
177
227
188
220
167
158
201
218
156
230
166
167
246
195
164
203
213
170
256
166
202
182
196
197
175
196
206
194
206
211
258
241
234
185
182
218
188
224
232
199
207
124
165
142
177
175
197
145
213
147
152
221
221
190
179
198
219
250
221
195
171
169
221
256
157
229
204
201
166
128
169
138
224
188
188
183
165
148
187
179
207
139
188
170
232
99
260
162
159
238
198
202
144
208
257
251
179
208
168
176
254
245
176
240
215
202
180
195
202
229
232
156
213
173
264
246
179
259
240
195
205
207
187
162
166
224
228
225
199
217
214
180
189
210
241
162
218
218
197
208
193
233
192
143
171
230
236
147
208
189
183
225
216
191
156
216
246
161
219
219
196
240
194
168
160
203
216
180
174
236
250
216
231
269
203
154
157
277
191
217
232
227
189
233
240
205
183
224
170
134
270
178
238
203
169
172
200
172
223
219
207
134
271
180
146
236
209
149
175
205
136
194
170
225
206
171
217
246
261
258
171
173
156
203
223
248
147
183
237
206
182
137
230
229
127
101
191
233
180
163
176
187
220
216
195
175
272
194
216
256
202
249
152
191
226
227
160
226
213
159
208
171
255
226
173
235
233
199
192
208
234
192
199
248
223
209
189
230
167
184
190
208
171
186
207
194
189
124
229
165
166
238
206
199
169
228
145
196
256
183
193
186
216
149
223
202
186
235
203
232
165
201
209
191
213
263
214
217
178
179
188
174
177
208
247
229
223
152
208
155
170
185
187
239
228
219
192
226
199
228
196
186
224
199
232
179
214
184
168
154
189
237
241
239
138
195
177
250
227
189
182
195
156
151
162
199
179
247
260
216
209
176
213
186
194
246
244
113
196
240
148
153
229
242
149
168
212
197
218
187
214
217
209
164
214
162
201
164
146
236
208
164
153
198
290
211
238
157
202
233
220
218
224
229
189
190
213
260
212
201
176
240
173
185
209
203
253
223
218
116
204
232
178
201
217
205
222
245
188
225
204
162
198
244
207
242
246
179
251
249
218
151
214
148
281
188
200
183
207
202
214
183
201
190
217
144
205
184
235
208
200
216
150
225
171
178
158
177
170
212
213
201
110
219
207
202
179
166
157
193
169
200
244
148
186
210
188
248
163
197
204
215
211
211
201
174
191
244
262
249
153
147
220
207
239
155
216
182
204
224
169
154
183
162
135
204
146
181
194
190
172
204
226
176
181
148
229
235
188
165
168
180
229
183
171
204
156
223
184
140
179
250
174
198
180
148
102
188
183
185
174
206
229
181
149
192
171
183
197
175
223
199
148
209
264
164
230
177
237
169
200
204
249
247
208
205
210
131
191
220
200
214
236
190
186
242
184
215
188
174
176
229
181
188
164
233
165
127
232
176
152
244
183
154
224
135
240
170
215
186
184
250
181
160
228
194
145
194
203
216
211
236
206
275
267
169
186
225
203
181
189
199
226
196
239
127
192
139
217
171
201
198
244
235
186
215
162
143
234
188
147
177
182
189
207
212
176
183
222
187
227
278
188
256
143
206
249
237
228
189
147
205
195
194
170
145
222
211
219
176
196
146
263
171
192
194
212
197
229
227
177
153
191
238
226
241
181
204
200
176
244
203
177
227
198
202
189
241
218
230
222
221
213
211
151
168
169
203
182
167
261
208
158
201
245
185
239
185
225
233
243
218
202
248
181
148
179
262
135
183
252
145
118
187
192
198
231
214
232
190
227
136
228
206
185
216
192
156
215
238
249
224
241
224
161
188
183
143
229
173
174
216
175
180
185
226
195
281
233
200
251
268
197
216
202
205
220
185
201
181
170
165
199
162
149
222
176
181
180
144
226
182
182
124
237
139
240
170
194
234
222
225
258
202
198
203
162
227
145
173
227
143
161
247
216
196
247
199
215
191
219
229
283
264
197
231
228
200
247
160
236
218
274
158
174
194
208
247
174
263
177
176
267
148
217
137
207
196
215
212
193
204
214
141
204
188
231
252
196
233
170
237
191
200
186
232
145
154
239
211
162
207
160
233
241
222
223
225
197
193
267
170
157
171
240
224
205
190
216
138
235
217
214
172
149
242
229
188
194
173
219
181
242
172
282
186
170
224
231
200
215
196
193
222
193
217
260
289
225
187
250
202
203
153
175
231
237
179
165
214
208
221
221
171
142
207
218
218
162
215
221
123
178
221
174
175
185
180
167
134
184
218
192
160
220
211
196
205
179
198
254
253
227
223
171
236
230
176
154
190
235
248
260
220
140
259
195
187
182
163
171
200
243
167
237
224
222
210
170
206
210
133
211
259
166
143
234
277
144
171
206
200
233
199
193
229
156
197
260
207
166
193
244
190
204
182
204
222
223
233
224
230
263
253
198
199
189
126
306
143
218
199
196
153
196
211
199
196
209
220
173
213
160
229
224
163
147
276
148
255
221
291
233
209
187
235
233
202
232
198
230
154
203
183
184
264
203
156
189
188
199
173
201
163
144
144
195
265
249
229
144
162
189
193
237
172
236
172
203
232
153
194
154
177
205
260
221
145
259
227
251
130
231
208
210
204
179
182
230
212
254
210
196
172
210
201
173
248
202
198
214
211
232
216
233
193
212
207
228
190
176
200
215
207
160
203
197
154
158
194
158
232
229
191
251
195
183
134
193
195
218
190
163
187
156
244
266
197
202
232
207
185
188
135
135
203
177
190
229
188
219
271
211
201
198
240
247
185
216
256
210
235
147
176
243
228
268
206
211
156
231
216
149
148
210
209
229
212
180
216
207
155
233
169
192
214
222
210
169
182
217
211
180
240
220
154
214
189
141
248
190
206
211
219
247
177
247
161
183
237
107
181
218
240
219
203
248
204
198
223
179
215
223
157
192
144
215
179
205
164
215
213
194
147
219
191
169
157
259
215
151
142
208
227
237
184
206
234
188
177
226
194
201
245
217
225
233
237
215
228
200
239
133
118
192
137
192
245
147
220
248
236
239
160
196
202
157
186
188
230
219
197
244
190
240
244
224
157
195
214
212
189
237
197
149
216
239
240
219
215
139
216
211
164
190
201
208
220
219
187
203
203
200
182
199
168
142
117
245
203
197
158
212
154
199
167
221
178
266
218
186
235
191
191
213
192
237
207
231
221
167
176
236
168
229
195
141
212
189
174
249
185
197
230
198
225
231
159
219
222
193
170
144
203
161
203
201
236
215
222
183
200
173
180
243
176
143
217
213
235
232
214
184
164
151
195
128
215
189
171
211
165
241
173
198
203
211
244
182
129
178
218
157
187
170
196
197
222
253
251
163
163
206
150
235
227
200
205
208
146
199
134
148
183
241
205
201
218
268
209
229
214
199
171
168
223
234
212
165
124
180
224
165
285
203
229
211
186
224
129
248
166
223
214
252
169
135
194
235
215
184
190
193
234
230
207
143
265
200
240
214
173
198
239
235
222
229
177
202
176
229
198
214
245
215
242
181
205
216
184
256
131
168
190
272
245
187
236
268
223
196
157
193
158
245
247
205
206
196
172
229
201
194
186
152
233
201
189
201
223
211
224
244
216
221
163
202
144
198
178
155
157
98
214
144
186
163
211
177
169
168
163
224
214
225
209
200
210
221
217
227
230
229
223
223
222
200
182
221
183
171
208
232
242
205
191
213
180
174
173
197
180
151
197
230
176
202
182
261
182
209
201
184
215
245
193
208
191
127
146
155
179
182
124
237
221
170
200
177
195
201
167
199
213
192
205
207
212
205
202
236
218
185
219
217
180
182
203
133
190
219
162
210
240
210
129
195
238
162
237
197
154
130
235
187
127
245
202
228
221
198
238
219
132
203
250
149
216
183
248
232
249
174
181
155
197
187
209
224
254
204
263
165
178
157
201
195
195
145
217
203
206
194
225
261
214
204
227
203
224
177
131
224
245
192
210
177
265
194
234
212
222
213
177
232
162
190
170
230
168
160
145
218
220
206
196
201
209
251
196
235
219
141
209
185
233
235
175
138
209
232
203
203
218
172
183
157
150
201
183
228
223
221
181
232
197
227
169
183
194
235
167
250
240
196
222
175
132
198
199
160
142
187
205
232
190
132
153
194
219
237
155
154
222
230
204
232
184
246
233
176
174
185
244
219
202
227
218
184
252
232
208
230
247
235
195
173
196
266
209
215
267
179
215
230
206
231
197
210
244
270
278
214
220
219
234
233
186
266
154
199
133
174
186
203
232
177
186
129
257
205
234
234
230
139
193
197
208
190
206
165
261
196
218
224
211
195
187
214
149
187
206
228
266
253
172
201
165
189
151
155
203
186
177
199
236
161
169
172
152
177
197
245
206
173
181
242
155
165
182
183
168
103
193
168
220
224
180
182
144
186
180
204
199
204
240
224
170
244
191
230
192
171
226
173
242
217
212
168
145
160
156
226
191
219
192
211
203
257
182
175
164
242
236
176
243
200
155
206
168
227
266
206
239
237
196
204
187
234
140
157
237
210
228
188
152
192
230
150
240
194
220
160
190
153
243
199
193
202
159
174
163
212
265
243
189
228
227
188
220
221
204
208
239
212
202
162
149
235
195
253
177
171
221
218
120
186
198
179
219
244
190
213
156
190
166
183
211
224
198
189
173
238
163
210
204
184
268
148
258
196
213
224
140
196
185
221
211
210
165
251
183
233
188
197
222
263
204
156
132
177
225
210
171
217
211
222
250
196
182
158
192
266
211
223
203
235
266
214
188
200
238
223
212
201
196
215
152
158
193
232
228
246
242
205
246
222
203
215
175
220
168
261
196
223
179
174
214
188
207
184
174
209
222
192
165
191
159
244
177
227
152
161
170
246
136
153
181
293
167
187
246
195
185
253
198
233
242
147
196
233
143
246
187
210
207
165
179
173
155
185
179
164
191
225
171
253
211
169
199
194
198
208
153
230
207
215
141
233
259
273
193
200
210
211
208
204
233
173
225
204
186
217
228
224
137
176
207
184
186
181
254
247
176
225
151
255
250
155
192
251
134
183
212
165
160
157
193
181
181
209
159
247
218
221
162
202
125
168
211
177
174
168
197
198
190
147
228
149
207
178
230
181
193
228
226
210
211
206
217
196
192
217
178
160
174
235
201
139
209
163
204
255
264
238
240
216
201
153
228
200
138
182
235
174
186
243
162
197
162
215
179
204
216
138
188
264
246
232
151
212
147
208
185
165
164
192
238
164
191
107
224
274
224
151
108
253
237
183
192
266
171
121
234
176
230
169
196
234
253
217
222
153
235
193
165
195
215
208
159
174
153
232
244
221
208
181
184
159
176
194
233
191
196
142
203
168
167
205
199
161
232
215
211
160
165
197
151
227
249
167
165
142
232
226
182
215
202
169
220
193
221
222
186
139
152
129
228
174
249
204
225
283
195
237
205
218
246
204
205
183
219
174
263
202
189
199
175
197
198
170
238
117
234
214
260
223
164
224
207
218
196
245
182
198
203
242
265
144
210
195
176
151
157
152
218
162
220
195
196
172
160
149
221
178
233
222
226
167
237
174
245
192
184
211
222
192
198
237
228
250
157
153
199
207
157
202
211
226
183
240
210
155
221
217
253
237
204
262
218
222
215
212
221
200
191
250
177
186
154
163
190
168
204
142
217
161
244
227
168
256
165
228
219
208
162
222
248
201
236
201
210
203
202
214
219
170
232
222
279
284
205
179
152
251
204
130
178
206
249
242
226
249
221
217
182
202
158
222
248
188
170
141
198
207
183
165
240
196
154
194
232
198
169
200
215
223
205
211
234
196
155
174
162
249
174
166
137
229
216
212
220
241
138
204
172
175
244
194
202
199
192
215
93
229
197
201
156
231
167
243
206
170
177
179
226
247
161
258
158
167
274
246
167
212
166
155
168
206
192
260
160
163
231
193
189
226
150
127
195
198
224
213
213
272
218
154
195
164
221
248
181
188
161
190
188
232
193
246
212
162
239
184
200
160
180
220
166
250
244
257
231
162
203
210
201
223
204
173
146
164
166
170
177
200
217
183
220
232
193
191
206
165
207
147
137
199
199
213
205
165
161
161
189
222
175
142
218
148
232
218
208
208
224
209
269
119
224
235
223
232
214
250
161
247
168
252
222
202
147
227
181
196
212
212
209
146
176
222
215
223
161
175
228
172
213
206
191
208
219
208
119
166
203
217
147
199
153
189
159
210
213
136
189
190
183
215
198
217
212
172
233
170
125
198
209
244
218
168
184
214
158
236
237
133
183
208
201
230
227
193
180
158
253
168
181
183
241
150
145
200
196
190
181
225
244
172
215
185
157
164
194
186
226
194
204
235
184
200
209
200
206
182
198
182
159
203
252
243
225
158
151
201
134
225
236
171
226
202
215
235
237
159
176
213
171
236
214
159
258
247
168
188
188
157
137
189
247
169
195
197
217
200
184
196
186
148
183
203
245
182
176
119
158
204
222
174
191
210
239
180
257
193
244
145
228
195
145
185
196
192
201
166
220
167
210
154
200
233
203
156
183
222
218
253
139
210
174
227
218
202
201
191
244
160
176
198
213
223
188
167
185
204
184
159
244
176
261
175
144
136
276
194
234
232
233
269
189
206
173
179
196
203
227
209
196
226
237
148
241
202
195
235
181
138
191
225
191
229
189
173
175
181
190
215
170
222
188
188
235
211
209
238
208
212
189
123
135
195
164
219
188
192
197
191
154
216
223
191
228
250
236
224
165
167
183
199
202
175
161
254
148
216
254
154
127
264
196
228
195
188
189
177
236
208
156
173
199
179
177
189
124
202
224
139
88
231
175
244
235
119
181
223
235
163
158
220
233
224
130
225
177
182
156
188
192
170
196
171
177
179
226
195
206
174
153
215
188
271
210
149
202
171
218
185
201
213
192
157
177
174
144
239
216
211
214
196
135
183
182
207
193
203
217
234
196
219
193
154
212
202
224
214
163
217
131
178
174
166
179
185
169
201
217
214
171
185
144
254
234
220
173
292
202
191
216
169
236
162
186
260
229
218
180
202
184
163
158
160
233
210
167
189
205
133
190
204
199
165
208
260
236
170
211
118
140
162
189
204
208
263
201
232
184
190
213
181
169
192
184
211
210
229
188
169
258
155
161
225
224
191
212
196
209
226
156
189
220
260
272
173
191
197
157
139
218
216
194
259
271
194
174
230
182
212
244
195
180
209
206
187
200
184
191
163
218
178
193
188
221
181
221
200
166
226
211
185
209
207
164
147
217
225
208
209
195
246
121
260
201
213
237
210
219
193
138
257
168
175
165
209
243
218
182
196
194
253
218
228
233
217
193
191
210
143
192
168
239
172
210
230
216
278
211
209
192
259
191
152
202
189
168
140
235
206
195
195
140
175
173
189
131
188
219
160
235
173
207
202
252
183
204
209
197
257
132
214
188
199
226
164
250
195
221
162
251
198
168
160
198
214
210
223
217
191
217
219
174
217
171
158
161
163
146
200
264
229
193
208
230
212
219
166
202
212
223
205
189
233
160
133
190
183
172
157
206
210
191
220
210
202
209
202
195
167
249
190
189
195
238
232
192
258
230
146
217
213
229
232
184
197
201
198
228
221
107
175
216
160
209
168
195
170
228
231
163
188
152
233
213
231
206
198
239
243
170
210
257
139
191
219
208
225
183
142
232
213
167
230
183
238
142
217
187
219
246
227
204
187
230
171
217
209
174
208
198
187
158
229
195
197
153
222
258
151
187
231
281
235
207
198
176
211
260
190
200
205
117
189
229
192
214
167
180
197
213
180
162
216
218
199
189
212
227
192
127
199
218
137
204
189
221
226
203
224
207
195
251
149
244
243
161
167
216
185
178
207
228
152
279
207
185
203
215
255
183
184
183
195
277
189
281
221
254
202
189
246
136
182
161
177
194
198
152
198
183
214
238
168
191
262
202
200
227
146
173
154
235
217
236
227
212
166
174
185
175
247
182
177
193
212
253
196
181
219
204
210
235
266
252
179
253
178
166
189
135
183
257
237
176
198
195
237
200
167
241
224
245
203
219
142
197
185
167
221
137
236
158
181
227
145
166
183
134
173
191
166
114
219
177
183
165
186
198
187
207
209
251
164
243
199
170
176
128
190
125
208
252
243
164
210
179
176
150
273
204
163
140
140
227
201
193
239
232
243
213
219
187
164
188
227
259
175
194
168
212
168
204
218
215
141
249
147
174
202
156
151
137
184
261
206
199
224
196
177
157
219
211
185
249
173
211
190
218
207
169
265
198
199
234
189
162
180
244
207
195
251
216
178
217
201
144
212
249
240
203
207
250
193
220
121
188
175
157
198
248
203
128
136
223
154
215
239
212
162
197
206
223
216
168
122
214
179
256
193
158
194
146
139
197
240
262
212
202
206
200
149
143
228
163
254
238
259
131
195
103
186
244
169
216
171
162
261
203
256
224
207
196
212
166
127
226
250
167
227
174
169
178
180
224
227
247
207
213
246
198
108
163
108
199
178
266
127
197
134
237
203
164
189
188
207
196
232
189
190
225
234
192
193
178
230
235
177
142
227
242
196
233
221
200
175
187
245
237
204
227
192
223
186
184
219
205
283
182
150
222
225
169
204
144
238
179
216
207
154
188
215
183
231
264
147
185
183
134
211
199
207
214
176
208
234
182
194
172
231
217
190
226
184
119
167
172
165
230
181
227
228
253
179
223
270
197
167
186
148
198
183
189
187
225
171
194
190
185
176
151
208
237
199
233
182
228
171
192
189
209
244
163
235
209
149
197
197
172
156
244
197
226
260
198
185
219
210
263
201
245
164
169
132
191
195
139
194
149
223
183
155
288
204
248
159
234
142
193
204
174
204
193
163
212
197
128
199
214
223
230
215
198
240
110
249
172
199
258
233
198
236
153
164
195
189
257
245
198
229
229
157
211
239
239
177
207
187
206
202
199
161
267
187
208
218
156
217
269
202
199
149
176
168
213
186
241
199
208
148
219
201
218
213
205
222
250
221
259
193
206
216
193
209
237
180
185
191
131
186
174
274
253
203
166
183
142
254
157
243
251
210
170
292
215
236
224
195
212
174
184
184
233
199
123
196
199
203
223
236
151
156
115
218
280
152
201
153
201
161
162
216
236
244
238
204
167
202
255
193
250
269
219
146
215
177
213
188
195
201
197
249
228
232
171
195
208
204
216
171
196
234
209
200
139
196
169
191
97
187
202
167
222
198
171
157
257
179
185
191
164
201
265
240
162
243
196
195
260
216
190
196
162
192
243
174
208
210
218
188
267
231
164
219
236
184
172
218
192
212
132
172
184
186
66
206
185
211
184
242
190
236
188
183
254
226
295
167
227
151
221
205
206
173
196
169
137
208
239
198
212
203
217
166
193
159
226
167
168
233
227
220
185
188
202
265
202
190
189
190
168
176
187
215
201
221
150
214
253
260
239
197
271
230
235
215
214
168
156
212
204
219
200
199
133
205
179
217
168
211
193
222
175
195
217
115
202
294
241
226
234
240
241
161
209
208
222
208
171
135
223
180
224
209
234
153
209
221
181
216
241
162
185
251
226
209
213
241
231
167
187
214
204
216
209
212
179
173
157
183
226
216
142
184
234
107
179
236
169
161
180
132
228
257
221
247
161
227
206
249
186
137
241
117
219
242
275
215
182
222
172
206
168
217
210
251
182
253
165
207
153
148
227
212
187
212
247
231
220
247
261
192
160
275
200
203
264
221
169
207
190
180
215
246
217
144
168
208
189
159
231
241
202
217
178
145
208
154
278
196
191
184
193
199
160
134
140
216
229
200
179
170
181
143
212
167
236
162
218
222
151
234
208
218
147
134
226
173
177
184
172
203
123
185
211
227
174
145
238
193
252
217
197
155
205
144
136
208
221
185
169
247
178
231
204
134
233
220
182
206
174
182
165
184
105
239
205
215
224
247
163
232
222
203
208
225
255
250
240
224
177
222
186
185
116
187
176
218
193
163
103
218
228
234
191
182
172
167
182
246
142
252
250
212
169
164
260
209
228
160
223
188
260
224
186
225
245
249
224
283
222
180
209
179
237
178
207
191
178
227
201
219
215
151
248
172
100
188
236
206
261
112
178
199
170
232
191
191
195
231
222
153
168
190
198
186
226
154
162
192
171
296
199
161
153
162
258
155
222
185
250
185
171
198
224
227
210
190
221
237
175
273
211
228
202
160
220
196
194
245
155
225
235
236
290
179
187
137
186
230
163
180
175
220
187
218
199
247
160
222
191
231
244
209
194
226
169
200
195
143
210
230
135
254
187
228
202
223
185
228
256
187
215
164
157
173
200
215
166
286
202
243
184
231
190
225
229
216
243
235
171
171
175
190
219
213
253
116
200
236
248
238
164
247
204
210
256
209
238
189
217
226
255
224
198
196
187
204
172
287
200
159
197
252
253
156
237
169
175
154
203
218
241
146
231
148
228
219
208
172
168
240
203
229
177
202
230
190
177
205
220
120
208
176
204
203
147
180
204
162
186
142
246
153
167
240
185
275
177
155
218
197
246
151
292
184
226
229
183
183
236
195
223
181
144
201
157
285
249
228
229
212
198
193
190
216
228
197
221
221
148
183
181
165
237
211
227
261
206
170
213
177
232
196
97
200
141
194
158
260
240
185
225
228
165
185
135
213
184
234
205
226
211
197
215
179
162
215
250
205
176
183
240
171
205
147
143
110
182
160
232
197
181
183
224
238
236
163
235
224
233
231
186
201
176
223
212
268
246
230
143
188
205
206
237
178
199
240
182
217
197
194
178
251
252
219
132
181
212
226
137
197
241
127
245
103
201
200
231
135
199
155
238
207
196
174
188
181
219
211
237
203
244
267
162
173
234
151
192
230
221
222
170
211
229
191
230
222
199
218
177
190
208
291
252
194
157
221
224
228
191
185
209
170
173
267
159
221
181
198
204
197
142
202
194
191
157
244
137
197
123
167
209
193
200
160
217
147
226
174
142
228
220
257
150
209
229
225
137
226
139
217
157
123
190
290
178
203
160
228
266
222
240
198
228
246
253
184
184
181
259
184
216
214
238
195
257
208
213
195
221
260
261
173
176
206
156
203
223
195
181
220
173
201
189
216
147
234
155
175
140
245
211
194
216
195
187
195
214
161
213
152
249
199
179
161
189
132
186
196
254
231
208
201
195
191
179
173
209
253
184
200
186
159
151
201
193
186
175
108
200
162
222
215
182
220
165
220
154
209
180
234
245
218
237
225
204
267
221
253
138
246
180
264
171
149
205
198
196
183
209
224
217
205
115
179
151
204
201
268
176
180
202
152
208
209
267
172
195
206
158
273
222
142
190
218
187
166
197
180
189
235
154
237
222
226
160
120
183
231
192
207
168
209
168
167
229
265
228
242
174
143
218
168
161
159
191
189
252
170
120
221
208
271
203
120
192
246
239
233
200
197
153
251
218
207
176
241
146
233
182
265
243
161
134
158
192
156
156
212
217
212
226
192
207
188
264
186
260
229
223
227
239
190
170
231
260
212
236
160
174
230
235
164
236
204
210
233
208
224
182
179
201
190
207
185
170
193
225
180
229
220
227
223
188
198
166
154
131
201
230
197
226
203
147
227
171
216
186
194
219
212
228
199
116
270
198
210
104
153
216
277
188
200
214
205
230
202
203
145
129
184
118
184
216
259
137
188
136
256
218
222
147
205
201
196
189
163
241
222
220
198
188
219
210
238
209
178
205
138
236
135
240
209
211
284
155
198
266
161
236
174
195
204
184
206
161
187
192
185
158
204
150
207
193
211
214
190
202
184
175
264
150
243
219
183
201
195
289
189
191
136
270
225
179
171
170
142
222
129
191
175
179
243
238
194
190
174
179
203
217
179
165
197
220
252
183
250
233
178
232
190
219
227
204
175
206
194
214
247
262
140
227
157
172
164
166
252
264
189
179
179
155
201
228
221
236
184
235
170
179
177
224
146
208
216
228
227
187
202
171
159
196
192
216
212
140
189
259
171
225
218
197
259
245
193
179
229
174
161
223
130
190
219
186
183
157
232
205
260
164
171
202
218
206
174
215
181
262
208
191
199
252
245
233
222
166
120
194
240
263
239
218
219
192
228
233
190
191
181
198
165
260
257
186
153
198
166
180
125
164
188
220
201
171
196
169
194
214
217
183
149
253
168
156
212
221
197
190
185
169
163
214
264
221
207
200
236
174
223
187
219
220
296
218
189
172
205
185
187
187
145
208
209
209
203
205
205
208
185
198
126
223
233
166
150
136
237
221
251
270
191
190
210
181
140
233
254
185
174
215
175
241
229
221
142
135
145
233
149
206
204
209
178
158
213
168
196
205
181
196
247
147
178
192
210
185
237
212
256
198
192
200
259
219
169
202
174
229
205
209
246
188
199
230
218
192
194
201
243
217
209
161
248
232
151
232
210
265
150
232
197
274
171
180
251
172
219
197
216
174
213
247
187
247
160
165
158
187
176
175
236
213
204
229
211
213
230
155
186
207
167
248
211
168
201
233
185
184
185
191
148
143
243
172
182
238
195
208
217
176
250
182
150
188
187
211
183
190
207
196
203
213
164
143
170
205
219
197
170
287
186
200
173
188
245
197
278
209
189
198
210
145
262
222
217
233
182
201
201
162
223
199
219
174
195
154
192
196
163
214
192
206
215
181
265
214
212
223
212
211
204
213
231
188
181
201
214
237
216
139
157
145
191
155
222
203
162
236
212
205
225
146
235
84
198
214
250
203
169
147
220
198
167
226
178
214
241
178
209
230
182
188
166
242
198
254
159
193
231
199
165
263
210
194
210
172
176
212
172
263
207
219
262
218
232
242
214
165
221
233
213
162
197
198
234
172
247
241
207
183
244
210
193
242
230
230
204
266
191
235
210
187
215
254
125
251
220
189
240
166
155
244
200
202
180
251
191
204
196
191
187
160
217
226
220
202
204
208
157
176
234
219
239
166
150
224
192
211
191
248
196
230
243
196
252
241
189
215
196
194
166
212
148
195
220
215
143
180
189
206
168
254
142
215
234
222
224
160
224
203
227
183
190
203
118
179
126
156
226
219
188
216
195
216
247
191
253
201
155
231
142
125
166
188
224
233
254
138
177
214
164
171
256
268
198
204
242
170
181
175
203
230
168
198
266
183
245
171
213
230
241
200
239
170
199
175
137
196
208
220
221
195
259
218
217
141
204
209
230
146
161
192
235
200
106
192
198
197
165
264
188
200
188
194
241
170
223
157
218
227
216
189
195
218
168
261
125
212
192
132
202
170
202
224
223
212
215
177
202
171
163
221
202
163
239
219
182
223
214
176
235
175
192
141
188
232
210
171
204
143
142
201
208
149
238
226
222
249
180
231
208
198
208
176
252
209
213
137
162
189
166
175
195
200
197
254
106
218
201
197
134
211
183
180
211
238
194
154
125
139
135
183
226
112
162
216
224
195
232
209
182
159
238
201
253
140
236
147
224
135
208
222
212
227
193
231
178
220
223
154
182
222
176
235
258
170
210
235
199
182
258
252
181
227
198
254
210
248
200
234
207
181
212
222
223
269
152
158
169
183
212
250
192
217
214
257
200
159
205
216
198
157
181
157
163
184
220
171
217
228
206
214
248
185
210
237
173
204
272
184
183
261
272
204
238
166
192
221
196
200
213
227
196
262
195
167
205
212
129
174
171
191
217
176
192
152
194
167
174
214
196
249
230
174
161
193
204
193
146
199
162
221
154
225
243
197
254
236
177
217
232
186
234
174
177
241
223
176
234
174
206
197
168
220
264
198
280
234
205
159
204
216
183
168
182
239
185
190
170
172
207
167
198
171
149
254
215
172
166
134
240
221
227
167
228
223
212
224
168
136
207
185
233
222
96
141
170
149
235
180
151
219
206
165
150
203
193
241
179
288
211
188
204
157
238
181
162
236
215
189
214
200
193
216
134
179
221
164
236
258
184
200
246
211
180
182
238
218
169
223
130
254
202
205
182
174
229
206
140
205
210
240
167
200
252
245
174
189
205
272
186
138
164
244
234
208
211
188
203
191
250
228
188
161
192
221
159
233
183
138
175
218
176
234
80
241
154
142
136
251
189
183
152
271
201
143
193
199
271
201
283
198
200
243
201
154
133
182
181
272
164
179
170
211
210
181
189
184
201
247
240
170
202
150
160
211
190
192
136
172
184
205
185
154
214
172
219
238
214
201
256
181
196
239
154
161
211
173
192
211
250
175
185
170
150
166
188
172
221
173
204
182
179
234
230
169
125
230
167
241
219
236
212
206
144
186
205
158
235
207
219
229
202
216
246
178
165
206
173
190
137
226
147
167
216
189
133
211
219
182
214
149
186
193
173
207
195
206
196
185
168
145
163
232
149
161
256
195
174
148
159
136
201
218
175
209
194
261
169
207
232
142
145
185
212
184
155
180
268
174
185
180
129
249
167
206
189
168
190
264
130
250
151
169
253
191
250
209
223
225
262
154
177
162
208
208
199
241
243
173
199
190
219
167
150
183
250
214
183
163
138
196
185
229
158
155
235
212
221
243
182
177
230
215
186
214
205
220
182
223
169
187
271
143
245
192
180
160
165
176
143
186
190
255
233
204
177
228
153
249
250
141
196
173
179
127
78
243
164
182
221
162
146
113
167
204
172
182
231
152
242
162
186
230
180
187
176
135
224
218
183
182
169
257
207
170
192
182
177
147
255
224
230
221
188
252
224
218
190
249
219
201
254
197
138
197
261
192
153
200
215
241
261
219
227
193
211
200
245
174
170
222
218
192
200
264
196
172
238
228
189
204
142
177
228
149
226
268
210
242
176
252
159
168
188
237
192
221
236
159
251
199
225
177
213
216
172
194
253
242
201
191
241
245
161
138
204
165
254
226
229
196
206
201
152
197
174
259
207
239
207
209
132
211
132
177
204
194
186
111
201
261
228
165
216
212
265
208
162
193
282
251
212
229
227
237
261
150
207
224
204
208
242
123
237
177
250
163
180
181
148
164
159
175
232
262
223
217
196
157
206
191
185
124
170
174
151
210
269
200
222
202
207
162
174
150
188
201
222
250
216
176
147
219
196
201
227
178
217
220
201
188
255
251
201
206
238
208
117
187
178
217
254
207
109
185
180
170
150
149
234
238
238
257
199
243
174
228
178
203
214
166
198
154
204
200
172
201
189
210
199
218
226
207
236
213
231
195
203
139
176
174
204
228
269
152
168
218
208
230
194
234
241
232
238
192
205
183
184
231
166
225
243
174
198
113
298
215
199
286
170
141
210
243
158
193
205
179
211
180
215
155
166
257
169
213
243
178
170
199
104
215
183
218
245
144
223
186
212
205
247
197
218
209
236
199
189
188
190
250
164
253
214
199
206
201
170
204
169
242
185
225
255
226
192
268
238
204
245
200
243
139
212
202
173
159
260
179
159
156
194
176
199
188
195
122
153
136
203
191
230
226
203
171
214
201
194
244
186
212
157
151
151
220
186
231
173
159
229
168
202
266
242
199
151
246
134
202
200
173
233
181
181
221
241
214
178
233
234
257
151
166
223
154
234
241
199
193
250
180
164
260
254
196
224
172
231
230
243
213
181
251
181
244
211
196
135
226
216
229
197
205
256
188
180
202
238
169
173
267
210
199
165
221
211
231
221
268
202
197
174
186
121
188
248
190
240
194
186
174
167
201
261
201
155
222
204
165
217
257
169
176
213
204
213
178
171
250
204
167
221
139
151
219
201
212
162
253
185
188
228
254
253
228
221
228
122
179
177
252
238
212
207
208
164
180
209
158
169
266
195
179
168
227
227
199
144
148
221
192
160
148
179
239
195
184
159
186
205
184
137
235
172
207
145
225
197
207
161
196
147
199
146
181
147
209
222
159
180
251
260
169
111
268
204
209
256
232
223
179
236
168
219
143
168
166
196
227
194
214
176
115
199
158
294
246
223
179
192
218
190
224
244
132
253
210
236
173
186
244
213
186
159
228
222
220
188
194
210
159
200
177
208
214
235
203
219
242
124
258
196
229
235
181
168
182
228
167
224
212
224
187
204
159
223
227
164
243
260
168
186
197
244
181
274
173
193
181
256
147
233
240
170
159
220
142
199
156
232
277
198
226
213
200
253
241
141
241
224
177
199
186
215
138
192
229
202
201
228
215
183
184
271
223
214
231
223
251
202
224
198
211
180
193
193
166
180
188
158
255
213
189
194
115
219
169
248
208
202
213
173
182
181
190
220
191
137
253
170
178
230
194
247
198
216
214
167
160
201
176
192
220
162
198
161
230
146
217
168
158
164
206
250
230
226
213
173
185
229
239
192
210
219
201
231
182
208
171
199
159
200
169
193
234
188
190
258
214
251
216
200
157
183
200
120
243
170
223
250
123
181
188
214
265
200
224
167
218
188
180
222
196
240
237
145
183
141
133
193
193
204
211
239
179
168
200
210
228
155
182
237
164
238
241
223
173
234
176
173
219
149
145
233
219
236
240
213
187
193
199
162
139
220
256
179
192
221
173
158
181
140
180
211
150
198
209
81
193
224
224
173
237
166
206
229
252
141
237
190
201
156
193
134
174
144
218
186
228
144
289
250
222
227
227
179
237
169
186
189
216
163
194
249
228
233
238
171
182
166
235
187
178
161
151
169
217
256
228
235
151
175
175
182
162
215
233
189
200
159
227
133
236
223
219
194
178
179
108
219
184
163
163
278
161
218
203
182
196
182
226
225
181
128
193
184
238
184
184
125
153
213
198
176
181
127
156
214
206
209
213
223
185
208
234
200
178
197
217
213
229
210
168
153
239
203
242
198
208
266
179
245
234
178
236
207
173
182
205
187
160
163
177
206
253
234
194
209
228
181
225
147
159
178
198
200
137
144
274
229
195
217
155
239
155
185
205
243
161
226
214
253
208
223
258
242
198
193
159
162
161
177
205
180
213
224
147
212
188
174
178
234
188
198
159
192
195
150
157
195
171
165
187
177
208
228
117
216
180
146
171
283
158
174
219
242
204
177
173
191
222
175
162
246
254
179
231
160
178
223
183
219
268
211
218
215
183
243
185
121
241
202
223
210
219
211
220
211
215
169
179
197
253
98
170
221
152
238
166
180
225
170
235
158
142
217
248
258
206
275
176
227
212
212
214
177
242
222
166
225
154
161
163
147
214
197
236
211
216
210
157
212
195
231
115
220
182
175
193
182
199
240
220
217
277
213
196
219
208
143
224
222
247
229
161
190
199
152
176
172
168
254
252
218
221
227
220
166
156
222
174
224
191
206
175
175
181
161
196
169
167
198
162
237
236
164
167
249
198
230
203
199
229
169
148
216
213
250
110
229
224
194
211
186
201
202
225
184
223
241
223
166
212
193
247
261
193
218
248
222
178
195
205
204
219
236
182
170
197
211
214
185
189
179
271
91
156
233
240
139
222
206
125
130
172
158
166
192
196
216
173
139
236
153
233
203
162
228
193
243
221
145
207
204
220
171
142
247
184
141
223
224
231
240
170
200
165
175
207
129
207
193
168
146
249
230
182
189
213
240
197
157
189
208
249
235
177
156
224
204
278
240
205
164
195
193
258
181
174
220
146
229
210
204
277
190
225
204
140
211
249
209
210
152
211
167
236
192
131
231
205
242
193
198
181
131
170
138
241
225
238
210
225
209
246
205
211
194
247
220
198
133
227
162
274
182
196
175
162
192
188
159
196
223
250
183
147
201
172
178
156
184
223
198
189
166
197
194
280
180
232
141
166
181
189
189
204
205
177
171
244
168
150
202
192
211
240
141
207
202
240
187
211
233
274
230
213
267
234
197
241
228
226
245
214
152
205
239
197
164
200
213
257
302
202
173
187
213
254
274
112
161
214
206
199
200
210
177
162
213
218
192
213
213
210
207
210
178
157
184
193
249
168
165
201
126
230
234
131
173
196
278
267
175
198
203
207
192
219
251
195
219
236
240
207
233
179
169
159
170
155
170
280
247
248
233
201
188
160
188
202
244
215
213
226
225
176
187
239
203
164
166
246
163
236
164
161
184
220
194
251
215
253
215
197
185
209
172
261
245
194
144
215
228
208
211
209
252
182
202
128
204
171
129
206
237
214
261
200
234
220
222
226
237
171
123
162
189
123
269
193
161
245
202
149
238
189
204
254
209
195
167
226
235
177
133
200
223
179
228
200
223
149
203
195
192
215
256
198
186
212
235
218
185
266
182
256
201
238
228
212
139
271
176
179
196
161
272
165
223
168
268
194
182
194
239
141
195
204
168
240
226
214
231
158
161
182
216
267
251
214
178
227
202
178
192
236
209
225
158
210
266
159
199
225
209
237
203
185
189
184
95
218
204
148
108
272
206
224
221
192
285
206
159
233
187
135
173
155
194
182
205
217
164
178
193
253
218
210
233
242
223
184
195
168
169
224
117
203
231
150
125
183
175
192
208
151
218
124
202
201
231
186
177
237
237
160
243
205
221
229
186
168
190
247
215
147
190
210
216
170
229
210
182
166
149
199
203
190
229
211
176
185
186
198
163
214
192
232
152
158
258
172
221
214
238
167
196
228
215
170
207
171
178
165
216
149
209
192
257
152
207
170
225
238
228
227
180
251
250
203
175
189
226
197
147
184
269
242
247
192
210
204
246
217
212
267
198
154
164
174
208
174
213
176
145
194
163
143
203
216
232
136
194
159
229
133
210
133
232
166
188
219
225
212
245
209
191
187
238
210
194
184
237
188
190
171
218
202
193
176
226
190
235
154
291
165
184
158
183
112
237
161
217
248
117
176
150
217
155
235
252
126
221
231
209
205
199
169
194
242
180
153
227
214
177
230
197
236
211
212
214
239
153
214
191
153
265
144
172
196
182
251
186
185
203
265
222
212
194
195
201
153
156
225
159
217
146
150
203
226
200
173
170
219
175
207
196
193
206
159
200
229
269
188
248
234
212
169
191
187
153
149
147
156
179
156
180
218
257
202
202
250
133
185
239
286
216
209
219
207
196
230
151
226
236
227
248
249
179
221
173
219
221
130
197
194
138
194
269
257
171
205
186
203
216
255
260
264
163
196
240
189
240
232
217
139
182
203
145
144
222
181
236
185
237
172
217
260
169
198
159
251
206
187
254
201
264
186
195
224
124
153
217
188
170
216
211
210
141
186
198
209
193
188
259
245
187
223
204
257
189
141
189
185
188
145
183
231
245
232
194
252
208
224
217
204
228
219
241
170
272
222
123
160
144
140
182
186
190
210
228
242
176
184
210
192
214
198
201
216
206
178
251
259
169
220
202
209
188
208
200
225
222
226
190
170
229
217
222
256
202
241
227
235
214
185
125
186
150
225
183
211
242
264
125
218
183
112
197
172
244
213
176
196
177
257
183
199
194
176
206
199
193
243
228
148
207
180
223
177
151
206
134
165
207
227
244
178
220
133
142
210
247
235
137
225
183
155
175
203
246
245
190
185
187
186
207
178
253
227
186
252
234
190
193
225
194
202
154
273
220
189
242
206
200
144
222
188
233
136
195
227
223
244
218
211
213
186
195
220
149
253
166
193
239
231
210
218
245
215
212
246
178
184
200
196
209
224
269
234
164
182
240
247
212
159
232
120
226
249
246
209
261
223
198
154
237
190
235
162
179
217
217
209
229
166
137
172
179
199
210
198
118
239
138
172
224
201
245
196
186
183
173
263
199
203
221
227
143
195
194
115
244
162
182
150
184
231
180
202
267
167
218
203
242
190
213
228
169
225
222
179
226
266
178
238
174
225
225
240
167
230
207
206
210
187
214
177
222
218
249
234
156
249
208
276
153
261
165
289
130
126
213
194
229
168
200
144
156
136
229
188
151
221
203
186
175
189
225
195
232
198
230
250
146
192
272
162
243
184
224
240
134
184
176
177
172
243
229
214
231
141
236
196
267
159
148
197
149
216
153
167
142
262
164
214
199
177
189
167
261
219
221
197
236
183
221
206
192
200
216
221
189
182
182
230
162
170
163
177
267
208
210
163
209
246
112
180
216
195
165
175
252
236
211
190
249
186
188
196
245
211
170
166
223
183
219
150
235
191
183
224
168
167
172
160
181
202
228
182
145
247
140
204
178
167
158
150
215
235
210
218
217
179
151
211
184
261
159
175
235
181
200
200
195
194
182
160
204
223
258
199
217
198
185
194
171
264
175
171
143
243
162
192
186
178
177
255
166
219
224
177
225
274
153
227
193
224
160
250
194
196
174
166
167
184
183
218
221
245
221
127
241
238
155
205
254
141
218
258
192
204
161
196
172
208
146
193
229
150
224
199
187
178
153
188
237
198
219
248
226
211
207
179
189
164
150
230
239
280
150
221
213
202
159
212
245
182
225
205
190
267
163
212
264
154
229
182
205
232
180
168
168
230
181
241
178
216
183
176
258
251
206
211
192
174
184
246
156
175
253
206
151
237
134
148
202
232
208
214
178
202
199
177
200
254
199
231
224
206
248
231
173
222
202
268
236
141
251
196
199
234
197
239
192
189
211
162
261
146
183
193
184
207
226
191
247
249
211
126
156
109
199
238
240
229
161
187
147
228
242
251
245
266
169
151
218
206
196
229
218
206
282
218
219
245
179
197
164
220
262
212
260
213
182
217
216
149
149
221
176
183
257
212
176
203
183
200
224
177
226
172
140
203
205
183
183
214
124
209
246
216
222
126
197
185
190
195
238
267
139
157
178
209
230
233
181
179
227
216
190
226
292
192
188
145
202
182
230
188
175
163
189
145
173
255
249
178
246
174
208
123
199
197
242
175
183
199
191
121
244
228
166
224
204
257
213
253
151
187
185
243
169
272
156
188
191
201
132
237
213
247
231
176
218
194
221
216
202
202
195
256
199
142
186
234
183
170
171
184
206
210
221
215
195
220
216
216
273
224
218
242
197
246
207
207
166
217
200
187
239
228
163
183
162
195
222
175
152
199
175
214
132
188
262
194
195
237
161
154
242
184
187
232
178
241
206
258
156
171
217
232
218
204
183
180
199
166
198
196
255
188
165
177
154
235
200
185
224
158
200
190
236
163
197
110
183
211
233
276
160
208
183
261
148
212
195
243
276
233
204
135
218
202
171
241
181
176
206
181
231
195
135
214
221
192
186
187
192
155
213
122
178
201
211
215
146
232
215
196
192
155
185
233
151
220
175
232
243
211
190
269
159
201
164
206
209
223
254
150
245
262
200
221
180
193
220
218
142
236
196
250
198
198
232
174
174
202
246
162
171
187
223
189
184
181
197
217
222
208
188
175
236
219
193
218
172
247
257
158
128
200
217
231
160
194
169
170
227
173
196
226
185
222
204
207
276
151
196
196
253
219
197
253
188
268
193
192
277
275
174
202
176
252
189
143
155
205
240
195
219
247
218
154
197
179
227
251
158
171
220
175
200
207
143
206
235
161
155
204
196
218
183
194
266
133
198
246
229
203
169
180
215
180
211
239
216
208
214
176
187
213
216
245
230
196
197
198
201
143
188
217
224
146
204
256
196
197
220
237
227
232
194
226
126
219
189
181
156
179
186
168
167
210
246
219
171
216
183
176
208
202
227
199
170
174
206
161
199
206
210
202
234
185
157
236
236
197
233
165
163
191
158
193
239
171
212
201
180
232
181
250
146
194
247
200
229
124
210
206
239
219
282
200
193
169
160
185
211
173
220
177
213
171
177
231
166
187
159
233
168
219
159
101
217
176
163
203
170
209
212
227
227
208
230
219
172
246
159
132
189
219
207
206
180
215
230
134
241
174
191
216
176
230
189
246
247
225
206
225
224
186
158
224
259
194
201
251
231
260
141
157
220
201
218
182
210
176
221
206
241
233
233
226
200
177
234
221
205
219
179
207
205
97
196
227
159
212
139
172
214
199
178
188
203
207
136
201
185
237
201
150
259
179
180
181
203
210
156
97
199
218
195
143
225
280
215
178
154
169
178
230
157
214
186
154
224
148
214
173
178
154
161
228
180
222
162
208
227
244
241
256
199
118
147
163
214
250
203
193
238
157
197
199
292
230
165
148
191
211
162
183
200
173
248
206
202
195
216
210
206
209
214
196
226
183
198
202
208
256
164
202
196
178
225
156
259
168
205
203
190
194
246
200
226
263
226
246
235
181
232
194
155
197
167
160
184
213
202
202
175
187
192
251
222
177
202
238
241
213
171
239
202
184
239
185
244
211
212
189
197
203
161
203
224
176
210
142
207
185
205
215
199
184
212
155
153
184
207
165
182
206
194
219
191
173
209
252
202
159
204
174
219
237
198
185
233
182
129
206
219
140
207
152
241
244
195
220
204
218
179
170
247
171
233
197
168
231
150
233
241
219
179
207
180
128
150
158
195
168
179
239
259
259
242
163
208
207
244
238
267
200
168
174
200
147
203
196
255
195
206
177
182
259
168
229
120
124
198
200
221
213
220
209
213
189
133
190
233
209
192
134
212
197
218
179
224
236
141
224
240
221
227
219
183
201
199
211
204
204
238
211
255
237
202
248
128
189
215
198
206
261
198
193
217
141
184
181
171
219
196
136
244
230
213
228
187
194
271
185
228
166
168
248
188
180
200
222
213
197
259
221
183
161
201
163
209
191
170
239
192
205
193
206
240
172
230
145
224
191
209
168
281
147
161
162
156
231
226
224
203
260
219
141
204
143
197
211
203
129
201
183
191
153
197
291
259
134
280
224
199
232
259
242
213
167
213
213
152
203
227
251
140
208
210
175
231
227
195
256
164
222
218
118
235
152
184
231
198
213
195
196
146
172
196
141
177
231
74
173
230
161
251
189
142
249
209
205
189
189
229
181
170
219
137
173
218
206
229
189
190
228
193
204
139
174
221
192
238
208
164
200
208
163
202
210
246
221
181
176
227
232
221
167
253
189
164
222
243
188
184
197
230
155
220
229
127
145
147
192
140
165
155
225
192
249
202
251
204
149
212
195
143
188
170
183
255
183
195
203
200
189
214
269
208
254
168
197
241
137
193
189
182
213
225
170
170
216
204
251
260
232
189
185
209
258
158
255
219
217
191
205
172
222
215
225
200
233
219
168
161
211
208
200
198
172
194
237
161
159
219
212
195
211
165
147
123
195
196
182
204
180
216
184
199
208
210
205
146
213
185
249
190
192
150
146
230
171
232
239
200
192
226
194
153
259
241
203
233
195
178
190
180
228
214
160
90
248
245
172
271
233
175
231
228
171
196
246
190
170
210
191
203
224
162
245
151
209
208
204
210
133
111
177
210
197
213
204
229
165
153
186
173
165
249
218
249
205
218
173
206
184
180
186
229
223
222
161
182
213
241
224
255
187
248
210
208
131
182
225
199
148
182
222
215
209
171
282
201
252
222
197
198
222
149
192
190
169
132
180
227
263
146
277
168
189
276
206
184
165
259
188
204
157
215
200
233
193
187
207
181
219
199
101
215
213
181
212
169
186
231
212
218
205
111
149
167
155
178
160
161
180
169
221
188
200
152
167
217
200
237
240
185
190
248
255
182
189
222
171
181
236
230
189
148
135
200
158
246
240
162
149
192
238
234
137
199
197
196
208
210
180
139
159
256
248
161
228
220
199
208
130
214
177
159
195
197
214
263
224
243
249
184
185
243
246
174
137
206
192
199
197
181
192
217
206
163
204
218
161
237
212
202
157
213
138
242
171
266
197
227
166
230
165
179
241
239
217
213
201
132
188
171
263
180
260
145
204
166
184
230
198
229
197
217
231
205
182
173
253
212
174
210
228
201
204
214
221
152
211
160
191
205
198
199
233
155
170
133
260
167
195
225
184
227
221
172
217
184
161
213
199
205
195
178
135
219
173
237
250
258
207
123
177
188
225
152
219
190
205
127
190
171
235
283
221
169
197
126
227
169
253
143
110
208
222
170
180
209
228
142
155
233
176
195
240
271
174
207
179
267
230
208
258
208
262
227
172
218
201
208
217
220
243
181
202
197
206
190
171
176
193
253
190
142
231
221
183
226
276
205
199
208
198
244
172
218
190
172
145
214
217
164
219
161
215
186
229
213
234
265
224
196
166
170
185
181
203
176
263
218
210
213
187
223
254
217
198
214
197
239
202
236
193
203
231
222
186
159
235
161
233
147
172
219
153
196
162
238
184
162
227
213
198
142
205
245
286
174
193
231
155
167
203
158
241
207
228
225
184
188
219
243
168
162
166
248
194
164
224
209
203
236
210
229
181
214
220
188
235
262
214
194
193
254
235
198
235
203
217
200
239
149
258
224
183
150
210
140
121
226
143
239
198
197
193
194
192
231
193
199
230
175
236
217
184
159
139
218
224
193
227
204
225
239
241
177
236
211
171
209
257
155
154
212
278
194
257
260
232
237
186
179
221
186
206
226
128
195
168
228
225
222
156
227
211
131
188
266
196
178
194
215
245
160
171
218
283
199
150
193
188
212
225
211
167
210
157
211
225
211
191
202
194
166
211
216
209
224
192
252
175
178
196
205
203
190
220
201
238
188
191
219
182
214
178
213
221
217
204
209
162
175
272
168
222
254
165
245
185
216
264
130
186
167
174
194
145
221
227
204
222
202
147
206
236
187
208
214
156
165
226
225
153
235
251
201
230
216
247
221
209
172
107
200
234
152
185
242
143
241
175
196
167
132
200
193
177
246
200
171
237
149
232
191
237
198
215
232
188
240
222
185
160
136
212
236
185
226
226
160
212
257
204
225
214
241
209
244
194
165
178
200
187
207
190
158
225
211
143
225
220
157
176
150
166
215
205
128
126
215
219
216
235
204
199
165
215
193
231
202
171
199
156
181
255
247
157
255
234
167
173
228
185
219
176
177
204
176
278
227
189
216
224
194
205
160
216
176
216
159
168
225
121
208
239
240
235
229
204
163
217
234
186
197
235
169
286
263
195
198
210
183
205
217
151
221
202
231
165
226
161
219
259
196
222
192
193
189
202
210
189
229
159
205
157
175
160
217
212
206
242
223
212
202
221
188
222
175
195
179
158
240
223
158
175
200
182
239
221
221
228
229
224
195
188
144
189
214
156
199
204
221
156
146
193
187
178
193
194
192
200
224
207
149
168
186
122
248
163
204
206
175
248
157
242
218
206
188
179
255
200
201
199
195
191
168
248
228
171
239
215
185
224
173
241
194
185
243
284
181
203
166
178
207
165
201
192
227
264
167
175
240
116
223
235
234
194
225
195
212
229
210
161
238
192
240
201
179
181
226
225
169
204
155
189
216
168
151
205
206
194
219
237
229
195
173
199
237
188
212
237
225
192
177
227
216
175
248
237
136
174
213
202
138
206
201
292
226
111
244
122
144
193
230
143
223
213
202
208
237
237
163
212
164
216
240
198
201
211
252
170
185
217
230
226
150
191
272
170
194
191
200
205
197
189
159
241
197
256
248
156
264
216
168
200
188
220
202
183
194
228
254
200
176
157
201
223
202
179
176
184
196
226
191
153
125
191
175
156
180
231
228
191
201
204
253
166
254
267
227
255
239
174
208
206
186
202
236
155
261
180
194
232
189
181
143
227
140
216
178
180
240
172
256
153
204
172
207
229
207
200
177
212
216
193
228
170
155
175
236
214
249
222
183
244
144
201
271
227
177
227
204
180
210
152
223
239
206
234
242
201
193
232
250
195
230
229
264
206
188
236
241
173
216
174
212
223
218
210
181
218
238
210
222
166
213
161
148
182
188
163
208
190
239
180
215
230
208
194
151
187
206
271
250
207
164
207
224
216
154
223
234
186
223
145
196
137
252
159
218
231
235
254
182
259
257
152
201
213
108
143
231
206
177
168
230
201
176
241
226
190
222
211
164
196
245
218
125
177
208
108
190
205
234
224
190
186
216
225
200
157
227
133
201
185
238
183
236
222
194
173
224
196
256
165
196
207
173
194
249
129
204
193
197
199
159
165
187
146
191
265
162
173
190
160
213
172
216
274
232
239
182
231
146
196
169
199
188
186
185
186
119
237
288
200
195
192
152
175
203
219
224
158
191
228
225
274
211
185
237
212
202
188
159
181
169
273
209
226
194
223
225
126
202
220
192
266
164
204
242
282
191
223
185
176
203
213
168
197
218
216
210
186
192
207
309
175
162
171
197
191
203
206
200
184
169
182
170
219
147
252
224
226
187
155
209
207
256
248
144
191
243
216
138
223
224
237
230
155
206
201
198
192
226
194
106
198
201
226
217
224
245
220
237
221
123
240
220
225
167
182
248
228
214
131
222
181
144
214
209
255
245
211
155
203
136
199
259
233
206
192
249
181
154
226
204
163
223
197
212
197
268
194
165
172
217
204
225
218
172
201
183
221
195
208
117
187
209
220
179
189
166
172
229
195
235
237
209
226
200
136
263
244
165
208
184
204
170
164
193
198
179
246
248
240
203
262
184
215
195
218
227
196
171
163
206
161
218
148
227
200
133
172
240
212
177
197
177
164
207
129
256
226
200
229
223
194
207
193
186
165
224
256
176
174
227
193
160
181
206
179
190
190
176
176
209
174
228
222
167
164
145
246
191
185
232
157
210
176
267
175
221
241
220
184
183
185
151
163
180
112
180
171
192
216
194
208
207
99
141
170
212
155
220
173
198
205
110
184
203
231
182
229
241
188
186
199
178
219
195
173
194
199
180
228
196
241
241
204
239
199
205
126
199
204
288
238
218
169
230
196
218
180
205
221
242
288
192
192
209
171
207
131
185
183
291
139
214
246
202
185
204
196
209
140
243
197
237
197
171
227
179
199
122
165
214
168
204
200
250
279
154
177
207
217
172
230
142
203
171
216
260
174
252
195
184
189
252
219
214
230
219
135
145
239
185
201
196
185
172
209
215
174
169
222
140
227
227
223
193
185
170
169
211
188
168
205
211
226
240
188
178
269
228
215
194
238
287
163
245
240
223
239
226
220
168
230
190
225
213
211
223
242
216
165
160
189
169
195
199
213
255
219
207
191
141
166
150
150
215
188
150
193
173
151
192
173
158
238
160
156
165
281
229
241
205
187
177
222
178
168
169
157
207
168
220
178
242
236
208
119
204
231
218
205
246
216
177
112
187
110
190
213
251
128
140
179
144
220
160
243
150
180
211
214
141
187
176
257
182
235
251
187
164
197
169
233
205
174
182
192
215
117
164
152
228
216
211
211
163
211
259
183
180
265
150
180
213
186
172
256
209
224
169
159
204
186
238
193
225
192
210
169
184
151
204
228
176
212
165
198
225
204
138
194
191
196
217
218
194
185
170
222
222
226
170
243
210
227
213
151
213
191
192
188
244
216
229
183
209
179
184
215
151
245
136
175
136
170
141
177
122
244
157
119
231
202
177
204
163
214
205
186
178
160
247
204
257
247
229
176
223
171
165
219
159
211
209
176
259
218
160
157
141
112
247
189
209
188
203
181
194
260
212
170
239
162
211
211
180
216
224
139
209
150
268
215
149
189
249
209
205
221
210
167
195
187
231
190
195
167
180
185
175
267
243
159
285
232
189
240
224
239
262
165
204
197
214
196
238
211
236
258
244
162
116
238
191
234
170
249
184
214
159
195
203
234
234
199
182
180
188
190
225
236
254
226
220
247
197
207
225
238
159
244
197
177
237
282
211
209
192
210
214
201
189
201
210
181
238
106
152
224
275
207
161
255
269
185
235
240
195
151
210
180
134
209
196
196
178
240
202
153
131
285
167
157
167
156
213
229
179
199
188
209
179
238
269
194
164
216
168
268
177
234
252
237
171
256
129
171
171
162
154
236
155
264
244
203
251
201
242
226
212
182
222
136
178
179
143
174
214
213
140
208
236
193
121
211
244
186
249
189
215
204
200
208
200
176
208
212
142
173
215
215
179
129
206
187
168
208
235
176
210
164
169
170
242
147
211
146
230
269
253
145
167
251
177
175
237
268
282
157
154
173
207
232
167
217
280
132
226
194
223
215
200
243
181
169
172
188
151
185
184
219
170
131
206
238
206
209
164
182
235
239
236
277
232
212
232
242
214
257
228
210
213
211
146
232
199
189
211
137
199
234
207
173
150
192
207
224
226
209
214
180
196
197
212
227
223
198
208
188
238
213
171
212
201
215
240
247
166
212
220
239
208
192
218
206
220
178
194
156
225
193
247
183
137
149
188
201
179
246
155
203
211
230
164
194
188
189
162
202
129
177
233
173
254
165
225
196
157
191
202
258
181
232
224
229
181
221
145
224
162
159
181
172
217
180
152
225
226
247
224
181
170
203
237
212
189
227
173
190
199
183
294
170
206
231
211
193
220
209
210
249
205
221
152
291
175
198
114
132
212
238
246
217
196
183
198
193
176
180
196
283
227
232
223
159
195
237
181
268
204
255
254
186
205
264
256
212
243
175
230
178
243
132
257
170
213
204
230
235
215
180
189
194
194
236
216
146
185
211
219
159
172
196
236
151
212
215
207
197
214
227
209
222
199
185
241
269
236
219
222
251
168
162
218
204
160
150
213
187
183
216
185
196
261
209
242
217
157
189
203
159
237
240
171
166
229
162
168
224
253
178
219
140
230
197
213
162
231
232
200
272
217
201
244
209
207
210
153
219
234
251
184
194
214
200
209
222
161
248
267
189
194
203
195
184
242
189
212
266
185
194
202
218
207
165
207
213
183
226
168
183
235
226
193
221
262
231
225
230
240
90
167
204
231
173
204
143
122
235
242
190
143
156
210
129
213
233
229
178
163
220
198
165
158
254
170
220
161
170
177
192
195
255
228
217
239
177
202
173
178
226
245
172
213
220
182
180
148
140
134
201
177
138
125
217
163
192
181
129
218
183
210
213
216
195
296
230
182
225
163
214
221
221
212
217
222
205
198
156
148
219
204
226
130
233
220
214
198
183
221
203
232
139
221
180
177
261
173
239
155
165
164
241
208
202
231
193
259
229
193
174
201
227
194
249
184
180
193
204
208
226
184
189
228
207
210
177
245
176
257
148
165
243
177
255
258
227
195
236
230
183
146
179
178
212
273
141
148
270
178
178
184
212
141
166
216
172
166
128
240
224
169
203
194
217
231
181
191
179
149
188
259
228
271
234
251
214
177
198
211
161
188
155
197
216
207
190
152
141
219
167
170
177
242
190
222
186
227
191
196
243
160
245
205
257
197
234
213
138
250
205
171
281
204
165
133
212
178
184
196
229
243
219
181
207
200
234
220
203
234
222
189
164
248
207
210
141
226
136
219
246
190
225
206
156
228
252
155
213
173
160
139
215
195
176
188
143
206
149
252
161
184
228
190
129
208
161
226
217
211
237
200
187
184
189
168
223
253
170
212
220
189
235
205
156
192
236
208
197
232
223
229
180
255
209
177
158
216
219
213
216
175
207
169
188
174
239
201
223
227
204
216
180
251
221
156
196
215
213
266
172
166
130
203
263
198
214
171
177
145
106
224
190
199
194
235
239
206
235
205
190
215
239
225
209
186
189
199
187
204
176
212
207
190
174
266
226
178
164
220
149
198
177
190
209
197
260
262
185
209
223
235
233
183
121
140
250
238
210
131
220
197
225
190
223
165
227
215
166
139
224
212
177
151
181
223
196
221
229
182
151
152
128
240
245
138
210
119
146
130
179
174
191
225
192
198
138
199
206
177
209
161
190
190
176
194
201
267
198
158
238
271
182
212
228
211
154
231
269
153
215
169
206
160
172
220
145
145
239
228
125
183
165
223
236
227
179
222
210
188
201
245
234
233
206
222
199
144
115
226
169
222
159
231
251
157
151
281
236
183
210
241
249
255
171
192
177
205
218
259
240
185
214
199
189
125
212
179
179
213
228
223
226
224
262
229
201
164
242
174
192
226
233
252
136
162
132
259
141
196
97
219
189
164
175
244
134
274
235
182
194
193
183
162
157
177
274
179
172
172
147
174
200
173
215
216
204
206
188
257
151
212
211
168
167
220
242
253
266
152
228
212
177
215
228
164
183
183
231
247
166
229
194
165
147
209
222
180
142
211
185
152
204
124
176
208
235
258
240
157
169
155
201
137
171
183
178
241
160
171
205
144
214
233
232
224
197
193
158
188
151
165
259
219
186
191
193
244
178
214
222
161
141
134
228
179
192
174
245
198
221
186
173
192
156
174
205
176
232
236
262
218
162
229
186
259
213
168
182
171
211
184
161
155
148
193
169
280
215
190
246
206
220
236
196
267
226
237
226
155
175
213
201
225
261
208
162
175
186
254
176
187
179
247
167
203
210
182
184
148
236
177
163
221
147
171
112
230
224
215
156
173
214
198
199
230
175
180
274
223
210
187
186
204
146
163
226
243
220
239
191
219
212
180
201
246
190
263
205
191
231
213
247
245
257
168
155
282
188
150
219
221
177
208
173
167
163
212
168
249
199
262
184
224
204
212
171
253
181
195
216
240
182
227
224
246
208
185
220
234
181
224
216
187
171
208
243
182
168
204
148
211
223
183
243
220
131
176
218
226
209
171
205
167
203
178
259
207
189
166
183
160
181
227
225
223
156
230
184
224
198
141
214
219
170
205
215
240
222
213
205
200
171
216
259
239
186
208
208
211
232
175
146
169
167
215
205
198
151
220
188
234
154
202
185
266
226
239
131
241
213
231
183
205
163
157
225
228
252
196
200
162
185
229
218
207
154
207
149
224
169
230
174
201
186
182
212
235
235
205
218
182
195
230
235
220
220
204
224
184
216
198
191
208
204
185
178
174
167
120
220
214
152
194
202
273
214
187
236
226
193
190
229
176
207
198
171
191
229
220
249
202
219
199
161
195
149
204
161
173
178
213
219
180
220
209
188
210
203
195
234
171
214
148
187
227
182
257
195
196
180
177
194
226
244
204
204
218
151
147
222
173
229
201
250
197
200
229
183
233
151
254
217
214
136
238
228
232
245
195
139
201
171
197
247
202
143
174
245
196
264
201
195
183
264
157
183
202
201
177
197
169
192
267
174
194
217
253
254
232
159
255
198
242
199
248
150
236
210
182
224
255
183
222
226
211
168
214
206
231
267
257
164
171
148
122
244
227
203
204
230
237
221
229
232
190
204
168
277
135
149
219
257
212
201
213
186
164
262
227
226
178
209
186
271
177
202
158
187
218
235
235
189
241
181
168
153
145
199
246
221
229
206
200
236
246
256
203
200
144
223
166
223
184
225
209
259
211
192
219
233
202
117
241
277
258
233
185
230
242
179
126
171
225
237
173
183
263
205
209
217
204
190
179
194
142
186
225
202
224
209
219
215
179
264
185
222
207
174
233
167
186
176
213
226
193
215
217
230
207
213
179
246
171
192
191
186
277
179
154
203
239
189
232
264
182
203
246
211
188
151
221
238
185
217
202
263
157
210
134
221
187
225
166
281
197
184
231
220
211
92
201
176
236
207
208
164
259
255
163
183
240
218
167
160
221
231
219
236
214
140
194
282
183
225
174
240
207
156
170
213
195
154
169
213
233
175
199
202
176
270
235
169
236
210
237
238
270
215
161
173
169
234
231
182
248
205
259
121
245
248
160
256
156
234
179
185
156
208
243
185
156
213
117
223
203
239
228
240
177
210
219
251
190
238
234
250
203
182
153
251
188
175
262
217
209
171
240
235
206
231
204
236
170
198
198
205
221
217
215
194
162
190
235
234
228
194
131
187
224
227
212
180
232
199
193
191
277
207
207
119
232
243
146
201
211
177
255
215
225
146
203
208
225
234
141
240
208
206
227
224
221
210
120
181
161
178
205
257
277
230
209
225
200
228
201
207
153
183
208
226
163
199
211
178
186
238
173
279
215
162
169
218
226
194
257
212
246
208
153
175
221
210
126
216
178
251
180
139
228
206
225
246
235
242
262
197
162
221
224
146
232
226
131
183
179
250
235
220
234
165
182
268
223
177
211
131
201
225
208
184
206
158
149
254
263
195
212
155
196
185
180
213
136
224
213
166
231
175
188
238
236
223
201
202
222
192
189
193
246
186
232
195
190
167
205
270
218
134
225
190
181
142
220
240
213
172
189
201
153
161
193
194
215
232
203
237
249
202
232
218
164
227
184
159
260
236
140
211
225
173
169
167
201
174
113
154
200
193
195
185
166
252
214
210
214
172
211
154
180
183
201
195
164
259
164
188
256
206
208
196
157
151
165
204
196
213
229
176
162
245
223
210
219
176
259
219
186
222
145
175
240
305
231
224
234
154
185
157
181
168
200
173
199
168
180
248
152
150
199
153
176
189
260
187
192
192
224
170
218
239
205
166
232
237
246
223
257
250
216
219
203
236
229
281
219
199
206
235
173
266
213
231
150
245
228
228
193
207
263
188
261
171
263
223
191
191
167
253
201
149
198
241
138
248
276
163
192
188
206
173
118
176
200
190
135
150
224
189
219
225
221
295
217
174
147
197
166
187
217
117
223
126
189
192
201
228
193
179
181
121
221
204
262
228
231
208
197
139
169
180
186
273
220
139
202
182
220
198
158
164
218
244
220
253
213
220
172
138
215
230
178
203
172
230
138
106
215
87
102
191
168
184
233
191
188
234
174
253
163
226
242
211
231
205
194
222
133
196
179
228
148
247
194
211
205
167
164
153
224
189
185
180
179
170
239
148
189
204
216
225
210
187
201
164
217
186
232
174
152
234
148
193
223
180
212
239
202
240
229
249
195
212
157
255
214
171
201
174
179
175
206
152
223
262
220
207
229
246
236
252
176
219
220
232
198
214
217
209
195
191
230
219
174
215
153
219
248
220
138
135
212
149
177
222
233
185
192
238
187
238
221
204
219
246
211
195
221
156
190
254
217
230
229
206
198
184
166
203
205
234
155
228
147
224
200
211
200
185
168
186
214
251
221
156
225
191
153
197
240
206
220
259
195
232
159
197
155
265
184
167
158
233
162
243
209
208
221
183
294
149
146
188
212
121
219
268
229
217
235
249
217
199
225
187
226
219
211
128
163
148
221
218
207
212
162
256
168
252
224
175
171
151
202
224
168
157
120
187
232
199
196
178
276
168
257
165
238
211
178
249
192
169
146
236
185
212
200
233
249
215
212
206
254
252
251
207
217
245
169
188
178
231
163
203
174
187
155
219
230
171
216
233
245
197
155
210
211
170
214
256
186
193
162
148
254
124
233
191
216
188
226
176
168
254
227
232
171
180
180
212
227
234
209
152
164
195
181
226
160
253
195
223
213
183
180
248
172
224
191
176
200
236
223
221
191
180
190
208
225
239
200
229
184
115
154
193
181
251
183
220
193
206
194
238
177
161
234
146
139
223
169
255
220
239
180
167
108
187
144
132
200
239
168
230
210
177
161
164
206
182
232
199
236
127
137
230
225
224
187
206
218
234
234
151
202
173
149
203
211
228
258
170
200
120
220
226
166
184
197
218
191
199
182
205
219
147
180
246
229
203
260
176
215
185
233
200
221
157
247
204
197
126
240
267
158
170
216
153
151
148
236
224
169
218
154
263
219
222
151
219
231
184
192
226
238
225
266
221
202
237
159
169
213
156
205
154
209
163
257
198
223
199
228
140
222
241
107
155
208
201
231
242
285
175
219
195
219
214
208
220
172
179
213
204
229
179
216
167
201
241
206
260
213
212
210
206
231
171
197
247
189
251
148
191
204
186
251
200
196
155
180
219
213
137
222
174
152
169
184
247
239
245
115
222
201
249
183
209
154
216
183
229
216
224
221
231
215
231
211
205
248
176
206
227
221
226
246
176
162
182
230
177
268
234
98
168
179
224
224
239
130
200
211
212
257
164
155
241
260
199
249
288
157
209
243
129
191
241
170
205
240
222
182
191
204
243
177
179
176
169
191
216
230
209
218
239
222
208
160
187
202
219
158
213
201
206
187
197
248
272
192
234
257
133
212
216
167
194
218
206
249
224
197
188
189
215
216
207
252
150
250
239
219
228
189
213
155
198
226
212
215
157
181
161
200
234
245
253
225
183
210
181
252
248
228
184
188
250
180
188
237
239
220
170
254
218
204
222
161
153
222
199
217
190
196
161
169
210
258
143
247
206
224
221
191
135
251
169
268
212
176
240
168
126
217
248
171
220
243
220
214
252
227
244
238
198
196
166
212
248
248
226
198
183
189
235
226
231
249
136
246
189
225
185
172
208
152
224
178
195
165
200
272
218
182
222
170
164
167
185
194
252
215
188
112
184
182
242
174
209
199
204
195
208
242
163
210
194
226
175
212
155
216
186
150
220
186
199
223
156
154
194
226
209
141
246
144
249
265
178
155
169
177
183
189
196
195
186
214
167
176
204
128
225
235
203
222
258
163
250
186
133
208
141
208
216
211
183
166
260
212
202
248
232
202
126
221
144
159
138
227
221
174
174
212
203
168
164
248
181
188
183
207
218
155
208
179
242
161
245
202
146
217
175
188
201
176
186
193
196
261
221
181
258
168
181
170
135
198
166
271
143
178
197
206
268
201
181
197
178
236
168
183
175
164
254
185
167
184
191
213
222
169
226
198
196
254
153
200
202
114
231
226
217
157
212
192
208
268
247
205
226
171
219
202
208
145
207
184
191
152
237
199
272
140
238
223
203
137
234
186
186
227
153
214
176
263
185
191
165
220
194
140
163
231
229
201
171
141
218
225
185
159
241
219
180
170
249
172
141
241
204
186
161
204
218
195
243
188
211
241
217
254
247
209
165
223
209
192
153
263
158
198
223
199
189
188
238
206
243
146
193
197
147
249
238
215
204
148
133
185
226
203
221
246
194
129
180
203
154
250
235
190
168
185
213
223
214
204
192
191
207
203
223
257
147
218
169
160
189
134
198
171
241
227
228
247
180
236
146
258
161
183
209
162
178
235
255
220
171
182
205
170
178
281
226
197
216
238
233
146
235
167
191
220
172
192
235
248
236
175
210
153
159
221
245
221
205
220
159
210
258
171
256
227
181
197
197
262
170
208
231
221
217
195
187
174
171
172
132
218
198
207
192
224
222
192
196
221
233
240
220
181
190
168
212
209
180
198
208
204
195
178
227
230
132
247
192
219
198
229
196
199
202
170
213
155
152
218
184
215
226
163
185
172
142
157
260
174
214
167
181
156
224
285
138
215
141
216
196
155
174
164
244
275
206
152
214
261
165
218
200
202
153
234
250
178
191
230
199
197
251
249
186
212
230
208
195
217
175
205
186
148
214
232
171
226
246
236
200
224
182
236
218
286
240
199
171
214
188
144
213
225
211
166
162
172
191
206
184
176
200
226
205
197
207
174
172
162
244
221
180
180
217
201
149
140
172
253
161
219
187
213
208
210
181
182
144
208
122
266
215
236
227
218
248
181
170
155
234
173
183
247
184
235
237
238
160
201
189
192
239
166
184
221
191
240
141
226
190
123
225
192
258
215
184
279
180
217
210
223
220
236
251
195
214
166
218
188
167
204
126
206
280
210
215
197
167
208
211
206
239
133
179
238
194
177
196
194
245
113
213
230
204
229
186
281
200
243
225
195
244
222
157
249
209
219
149
165
207
155
200
212
213
169
144
203
238
230
244
178
175
227
158
204
268
197
179
169
184
139
186
228
205
182
177
140
203
151
179
132
232
170
209
197
198
177
257
212
226
191
204
243
198
213
179
153
178
205
222
127
163
222
246
146
153
206
227
200
214
187
183
195
135
166
190
202
247
157
168
171
163
175
137
158
205
216
218
225
202
222
208
189
253
200
216
243
176
245
200
203
109
216
142
215
186
176
219
159
232
170
213
225
151
239
206
191
237
154
185
188
208
164
220
202
217
189
179
239
218
175
159
172
239
280
195
175
194
171
184
197
197
237
107
177
195
201
234
247
250
159
235
239
204
198
198
194
233
241
203
245
205
264
189
201
194
210
194
210
191
154
243
184
207
257
233
215
177
148
242
228
263
212
186
207
214
108
134
235
197
217
182
181
186
181
192
229
212
232
207
235
173
178
158
185
236
183
216
216
228
205
197
203
187
156
164
214
210
250
206
184
224
236
164
211
193
163
184
134
289
235
205
171
225
201
141
183
173
278
249
250
214
197
164
187
265
185
199
158
198
209
213
208
229
196
209
122
184
285
165
209
195
164
198
146
208
224
185
191
251
207
235
158
225
236
281
192
215
280
174
154
211
214
268
144
241
225
160
201
284
229
210
228
170
194
166
223
199
220
235
234
191
171
199
209
222
193
197
200
223
260
188
175
202
212
159
205
173
203
174
185
151
246
232
213
208
203
177
171
186
200
154
136
201
234
159
220
140
192
221
199
127
172
234
184
216
218
202
211
220
212
245
157
164
208
159
132
224
240
208
206
221
172
168
181
197
209
185
240
246
236
188
105
201
217
200
140
204
206
177
151
221
256
156
171
225
210
183
232
180
183
190
180
234
194
207
159
234
224
228
200
225
211
157
231
252
237
175
194
220
178
169
118
150
258
194
158
250
158
221
223
193
193
142
213
211
263
171
189
230
235
199
233
198
225
245
212
236
216
235
266
203
202
174
168
129
172
182
196
203
195
209
203
174
236
217
237
246
156
173
223
161
224
201
211
225
210
187
178
220
154
202
205
200
212
220
201
135
223
166
214
221
189
193
244
204
171
180
263
141
182
219
145
222
146
268
189
203
248
232
216
199
211
238
236
225
195
206
168
206
232
182
277
239
238
196
160
179
207
214
161
256
203
190
217
233
196
172
180
202
179
201
229
211
240
125
198
141
173
249
143
234
170
158
241
189
151
200
211
233
243
229
161
181
207
174
205
160
273
176
182
140
186
203
182
165
215
235
213
221
207
218
207
228
208
205
220
246
151
169
247
178
249
226
195
167
269
183
222
121
268
177
135
210
193
188
219
192
236
231
222
179
213
121
267
202
182
197
196
145
183
136
209
202
215
195
279
221
240
244
234
199
209
208
272
200
114
210
235
222
193
217
143
264
119
156
199
172
180
199
181
212
218
190
158
168
186
267
170
204
196
225
222
232
212
218
193
172
229
212
164
205
166
203
230
173
145
243
201
246
256
224
190
189
212
151
238
216
197
196
204
185
129
244
232
231
200
219
196
195
243
244
186
188
157
190
202
210
226
238
209
220
170
215
250
187
163
130
210
221
167
234
201
175
174
166
220
191
163
167
182
182
188
151
210
203
188
221
192
153
211
221
176
227
189
214
228
239
144
215
135
205
190
202
222
141
191
246
193
234
159
228
274
218
281
171
213
241
200
214
165
186
210
161
170
196
202
246
213
181
183
200
257
178
257
144
196
184
201
221
178
208
165
194
196
193
237
262
189
220
179
194
219
207
158
207
225
196
211
207
216
192
170
232
222
220
108
223
167
258
141
201
139
139
288
204
188
212
231
251
222
199
229
185
245
183
196
180
184
181
270
213
270
225
210
175
207
194
160
229
173
187
140
208
200
174
153
214
137
216
192
254
179
210
142
185
218
180
220
173
202
208
199
215
206
207
198
214
228
244
236
244
129
145
192
235
201
197
227
219
199
231
207
213
238
194
278
156
221
212
287
206
235
120
157
181
221
176
222
178
226
204
180
195
202
167
201
213
247
243
242
222
209
210
216
182
231
230
201
209
230
217
256
171
178
267
230
197
119
147
218
143
216
215
225
207
197
192
185
198
250
227
178
176
213
154
139
157
251
273
241
110
208
293
185
187
193
204
201
204
173
221
200
248
202
195
263
206
218
203
226
279
238
206
171
217
177
174
201
196
145
220
219
148
194
233
155
217
253
174
199
223
223
180
179
220
214
249
184
119
173
235
207
198
197
149
159
193
190
174
226
245
235
176
212
196
219
241
169
194
202
270
249
198
164
238
211
145
189
141
132
208
298
208
228
235
237
246
168
148
288
198
255
219
161
207
171
214
246
164
231
245
186
218
180
205
205
180
182
184
190
156
188
246
195
221
216
173
171
214
192
181
201
220
232
177
220
194
178
233
202
203
249
233
221
207
161
207
167
213
205
254
193
135
243
159
195
187
209
192
160
118
225
164
230
178
201
191
218
191
196
255
184
163
191
181
201
168
195
212
198
280
181
234
235
217
167
238
162
148
200
202
114
218
184
150
200
207
170
201
164
262
217
219
198
237
221
240
222
178
168
242
193
220
244
256
225
206
154
167
149
147
204
243
217
219
180
206
157
168
140
154
204
177
189
239
231
240
234
152
238
133
189
227
218
205
192
252
191
185
260
211
235
150
231
203
214
164
145
173
205
226
231
192
225
261
103
159
196
188
199
189
254
235
135
174
235
232
220
226
165
154
231
188
157
162
260
234
136
283
185
183
142
188
222
141
192
198
172
183
204
172
220
219
203
259
215
198
196
182
258
247
194
210
273
192
236
239
231
195
233
215
161
208
245
180
179
196
209
190
221
174
186
227
188
212
205
217
187
202
253
152
213
241
121
202
224
250
219
240
180
285
215
234
182
214
223
270
264
182
190
210
197
183
156
176
224
199
175
229
231
224
226
236
203
153
192
185
192
220
232
224
252
144
193
258
93
235
149
187
204
162
271
184
224
204
208
212
148
243
145
238
161
221
192
201
246
186
182
191
187
187
128
259
147
152
208
182
235
207
178
201
192
188
248
222
196
205
217
198
114
205
182
223
179
198
237
165
219
138
223
150
234
186
176
228
198
221
215
209
202
193
285
220
183
213
184
200
154
199
225
229
231
232
165
187
197
210
133
182
228
206
222
170
203
237
254
216
241
184
195
183
220
179
192
264
227
190
209
178
241
183
165
242
212
176
196
209
150
212
147
192
269
225
204
217
162
200
173
214
106
219
166
228
147
224
145
232
182
206
211
209
219
159
225
161
188
208
175
263
210
234
175
186
224
178
290
200
191
182
209
231
237
216
208
211
220
192
253
195
207
189
215
235
194
191
176
235
211
286
258
240
147
242
251
142
252
185
165
180
110
206
191
218
210
228
226
224
201
207
187
221
199
245
193
266
212
229
269
216
181
222
144
236
177
158
190
206
212
203
209
174
162
207
226
212
216
234
192
190
224
183
252
139
213
191
244
210
231
230
208
215
209
139
158
208
135
210
236
231
219
214
82
175
218
190
228
247
171
234
164
156
215
183
169
163
226
179
241
285
237
224
212
265
148
161
214
160
232
188
163
225
191
233
259
243
117
269
204
229
242
182
199
112
207
172
181
171
236
140
213
212
180
203
193
204
159
206
205
159
227
235
132
212
203
245
220
251
163
203
157
164
188
176
202
208
152
124
173
162
228
146
201
209
181
151
202
208
195
196
152
260
186
238
260
200
213
189
150
222
163
160
208
200
197
167
177
215
106
215
191
133
225
187
206
259
168
195
166
208
215
216
221
246
268
183
223
211
194
191
244
147
172
171
157
217
290
154
228
197
161
210
246
145
70
172
192
183
266
189
134
255
152
167
188
226
144
245
201
220
256
179
197
201
172
149
184
239
227
204
139
219
195
129
258
193
217
238
196
218
226
224
246
200
182
163
187
184
237
242
165
194
224
182
194
245
212
141
173
141
139
149
280
262
190
215
133
217
198
174
175
177
264
153
185
130
217
212
241
220
198
222
157
194
207
205
232
185
229
155
217
219
189
201
225
170
180
211
166
177
176
221
200
166
225
196
229
174
209
225
232
158
193
245
185
174
164
167
175
252
246
213
228
207
230
261
213
211
252
218
240
237
202
207
105
176
156
177
203
133
199
160
184
261
219
164
220
216
185
260
195
208
253
172
235
189
210
136
167
225
188
200
188
208
200
208
194
207
188
209
186
219
234
234
127
227
199
193
121
233
206
197
164
161
203
247
215
198
137
209
209
217
192
237
255
198
187
219
167
181
219
198
204
236
120
218
167
247
250
169
194
208
228
200
125
252
195
209
182
181
255
170
214
244
121
226
178
216
230
213
192
135
181
183
231
194
228
212
204
235
180
236
218
170
248
152
233
206
166
213
219
214
198
216
168
170
281
154
208
186
165
184
202
204
165
239
238
173
181
232
209
227
198
198
175
191
250
222
196
194
143
211
152
186
142
201
195
234
169
203
216
208
247
191
219
215
188
209
189
199
168
200
182
238
250
183
195
194
243
198
248
182
173
182
220
235
221
242
175
206
160
285
291
123
184
210
204
187
221
227
179
231
231
219
197
135
205
233
193
212
226
183
220
202
250
188
190
211
197
221
209
253
225
227
191
208
167
262
184
226
191
232
127
228
147
219
237
214
188
176
208
237
272
192
227
165
211
219
171
215
172
223
174
177
170
226
253
254
197
244
193
187
216
221
200
247
203
156
235
196
219
289
166
253
210
216
207
177
268
204
204
179
195
201
192
183
182
158
244
248
206
202
232
181
218
214
230
302
169
136
202
200
194
229
187
265
228
191
231
186
222
167
217
192
253
209
197
238
186
243
224
218
202
197
204
185
248
244
176
149
179
158
138
224
274
178
240
150
214
202
191
158
193
175
197
217
176
205
160
207
171
163
226
207
209
237
204
211
274
177
222
190
204
171
263
161
221
235
198
235
218
123
211
156
177
246
229
204
193
207
221
197
193
191
221
203
213
276
136
138
195
205
153
212
213
210
95
228
208
209
202
187
131
218
226
195
152
145
222
192
224
198
158
169
241
175
223
230
230
212
229
168
150
193
186
280
187
251
205
250
232
194
143
224
203
136
215
170
230
217
228
207
132
220
210
247
162
185
212
203
188
192
226
168
223
268
127
145
186
167
187
211
164
225
259
198
203
221
153
184
196
236
204
240
240
218
212
223
217
208
169
233
229
162
235
141
190
156
159
265
207
180
184
208
183
210
143
246
233
271
264
181
222
199
221
225
235
212
120
141
214
261
191
180
219
247
233
144
248
182
238
212
218
208
212
206
216
219
189
223
124
211
137
251
210
194
204
215
208
163
172
219
143
169
202
203
163
219
123
244
151
203
196
151
132
196
246
228
260
263
242
247
160
239
173
124
167
161
175
191
190
207
101
194
214
240
206
184
145
152
182
205
178
156
188
148
215
168
155
213
230
169
196
165
243
219
170
128
174
152
234
221
237
197
217
201
251
199
191
214
236
203
154
196
223
172
198
195
170
156
216
207
205
147
193
137
160
161
219
136
209
203
205
200
216
213
176
240
204
209
184
196
264
244
193
208
218
171
258
209
126
181
138
169
153
184
223
245
190
99
218
267
211
167
174
178
200
206
254
183
155
237
221
228
248
169
278
193
189
223
230
219
196
236
200
203
95
155
174
219
199
236
204
211
196
198
239
205
201
162
205
268
220
186
274
134
250
189
160
190
211
230
227
234
209
201
215
178
170
205
277
259
205
236
216
176
168
181
160
193
227
252
205
147
206
238
242
138
192
207
148
183
195
181
171
235
182
210
181
140
244
244
201
195
154
206
182
224
166
171
227
242
144
152
197
208
190
149
209
157
144
153
222
251
219
235
217
195
188
203
205
211
208
233
231
133
143
177
191
213
161
171
258
182
171
233
134
206
270
172
177
151
224
231
195
215
218
180
120
188
205
217
143
150
209
175
199
207
247
146
172
232
243
258
211
220
160
186
181
222
158
184
168
117
211
208
201
171
174
155
115
145
201
191
174
216
226
192
175
167
205
220
229
209
202
147
231
251
165
163
191
223
175
237
213
186
172
255
208
148
261
227
244
239
179
228
173
169
192
218
224
171
214
195
237
221
211
172
199
218
223
255
204
183
213
242
147
220
202
194
230
175
195
219
173
159
234
179
131
302
221
166
228
131
207
176
135
301
194
201
251
239
209
232
209
186
175
218
213
224
145
217
200
228
243
176
209
148
186
173
262
207
231
205
155
228
202
218
170
207
228
166
192
152
216
176
228
249
294
186
161
182
202
195
166
137
199
227
230
185
163
229
206
146
186
187
205
200
196
125
231
218
192
252
250
164
236
184
175
188
145
244
224
202
215
145
194
156
178
201
257
173
201
208
257
220
212
248
261
202
201
239
221
144
189
213
208
231
164
179
230
138
186
232
180
184
222
201
163
190
183
234
249
215
180
193
195
117
201
241
207
206
229
222
204
203
178
186
216
201
255
201
164
194
240
254
208
269
194
256
197
103
147
228
206
210
127
234
182
221
172
141
191
236
204
191
118
248
227
255
197
177
200
205
242
170
228
189
176
242
184
245
180
237
220
165
242
157
167
152
195
217
226
229
235
187
215
98
160
214
193
187
159
197
168
213
177
193
165
199
225
234
118
135
220
215
222
225
197
200
181
211
265
220
200
185
280
156
159
192
183
226
199
221
248
194
192
171
187
199
206
179
291
174
221
209
263
192
261
223
212
225
265
234
239
201
204
191
223
150
178
210
198
229
163
161
217
207
205
255
229
228
230
200
170
192
220
181
211
138
188
216
221
244
267
179
238
193
253
209
212
156
237
255
206
213
173
200
213
217
129
212
191
193
176
189
203
203
207
143
157
221
150
211
183
133
228
211
205
223
163
203
225
184
182
134
235
229
243
141
244
235
223
214
179
200
278
234
148
204
181
207
227
209
123
192
167
138
147
218
262
196
200
158
242
162
205
244
238
184
125
208
221
175
215
208
255
227
181
229
213
231
216
223
249
144
216
214
182
155
210
214
151
236
160
182
204
185
233
153
227
194
245
172
151
205
167
92
201
255
175
219
184
205
189
159
158
176
180
196
238
236
163
168
102
175
195
197
262
154
217
194
193
218
255
221
208
240
210
172
191
233
230
235
250
189
202
254
221
200
213
190
270
179
214
219
261
181
211
199
211
186
198
210
183
179
187
259
229
234
171
190
183
205
173
188
195
193
181
159
239
202
199
195
218
214
175
145
213
199
217
177
147
213
156
257
205
264
211
215
212
227
221
183
126
227
169
221
171
233
208
227
177
217
227
207
202
238
228
187
184
164
166
171
212
192
135
257
195
157
247
156
255
245
214
200
132
175
207
222
206
171
192
216
203
173
237
185
242
196
210
171
196
177
169
197
202
163
237
235
182
236
239
206
165
213
232
198
232
185
160
219
175
193
189
211
200
208
195
188
232
215
184
217
219
117
165
185
241
186
144
216
215
197
147
192
215
128
150
189
228
203
208
197
202
240
198
258
128
237
264
169
220
141
274
227
168
151
189
182
162
204
169
210
227
185
237
117
220
194
241
255
199
230
142
180
237
207
231
255
183
259
163
192
212
162
182
181
166
201
237
185
222
210
196
244
213
208
209
198
254
231
182
180
155
218
241
211
209
184
229
188
195
212
201
222
219
145
223
166
213
219
226
197
289
189
193
181
213
190
199
207
188
236
176
182
209
168
261
252
178
183
190
201
185
183
171
208
198
183
262
204
212
190
201
195
218
194
198
227
199
216
179
243
278
195
251
217
187
155
216
226
221
210
275
193
204
241
198
164
267
203
181
220
195
135
149
209
136
210
221
216
167
161
240
219
208
176
169
199
243
149
211
169
214
214
255
191
159
202
158
209
194
226
190
248
134
131
200
171
172
128
245
202
260
144
219
173
221
254
152
202
205
187
238
239
260
228
152
226
225
183
237
241
201
135
189
120
201
164
221
214
187
178
241
191
234
179
191
135
280
169
141
204
164
227
191
230
163
230
168
190
172
179
202
197
228
236
219
191
209
224
209
213
206
221
193
164
219
186
261
234
131
113
177
240
215
225
224
228
178
200
165
209
193
177
208
167
195
174
172
264
222
213
188
199
198
261
268
169
212
197
161
213
233
207
215
190
243
186
217
192
190
159
238
177
233
207
210
226
233
171
194
268
228
175
213
192
214
208
188
142
180
195
112
154
202
172
167
170
164
216
208
157
230
177
208
157
207
209
157
230
134
192
158
209
199
182
158
236
150
213
194
225
173
221
268
145
136
234
208
201
146
186
185
153
218
252
187
244
153
220
169
137
230
188
251
157
190
212
202
177
168
178
151
182
187
171
210
219
223
156
205
239
175
109
235
223
144
208
247
169
182
201
201
177
223
154
241
228
189
245
153
174
206
180
204
158
168
207
216
234
191
198
194
186
219
168
238
184
183
221
186
122
221
202
206
250
151
197
176
156
195
195
150
146
173
180
198
126
149
222
191
228
181
248
167
186
227
176
211
238
251
210
157
214
226
136
202
169
162
221
242
210
209
189
187
242
173
209
115
198
214
224
215
182
221
159
180
243
202
234
192
207
219
157
195
202
220
138
197
171
169
178
192
235
242
207
166
199
232
151
214
221
152
264
188
233
184
119
192
194
248
170
149
204
136
237
140
217
217
171
162
209
139
233
183
250
158
212
222
151
187
207
266
154
219
186
191
169
258
182
199
215
196
172
237
130
180
225
245
242
198
247
205
254
152
221
180
218
186
253
200
151
156
193
193
220
190
206
157
225
195
228
226
178
198
116
215
95
189
210
150
219
203
221
258
237
260
187
138
173
231
171
180
207
221
207
177
167
172
202
232
180
212
209
199
222
172
231
254
189
212
212
190
178
188
152
206
179
194
231
225
217
218
191
250
225
193
216
234
193
197
232
216
236
212
200
170
218
226
177
191
155
170
182
190
147
176
246
191
216
191
126
201
214
172
219
181
190
156
204
222
177
255
207
168
259
191
198
187
211
216
254
182
205
169
224
240
208
227
227
253
240
119
182
209
141
188
259
170
122
215
121
243
214
181
223
205
234
197
156
189
207
260
235
202
196
253
251
219
179
183
275
222
182
199
174
193
176
192
143
167
169
233
219
141
208
207
287
185
241
165
236
233
171
193
150
248
205
197
210
163
234
274
140
227
129
227
205
150
223
240
245
249
177
162
147
211
183
261
181
249
148
251
154
200
228
173
188
196
198
206
220
215
207
154
147
218
209
184
211
244
211
175
192
204
231
163
182
210
96
212
191
141
185
221
169
220
137
208
260
217
159
202
184
170
148
180
216
198
225
240
249
272
171
188
197
223
122
185
168
183
228
291
194
206
203
212
145
257
206
245
192
125
164
210
220
227
247
173
128
205
156
215
183
285
194
184
208
227
193
195
208
162
242
201
233
205
248
214
200
222
237
174
180
171
166
226
239
178
185
164
146
225
196
192
135
212
177
239
116
187
263
192
216
178
193
230
212
197
232
246
233
204
269
127
218
192
135
249
139
268
152
156
174
164
195
165
244
183
184
203
192
155
189
199
193
223
269
215
225
215
217
197
183
184
198
230
200
199
252
184
203
202
221
156
226
168
177
176
194
228
198
221
177
200
187
197
252
231
177
225
232
156
245
213
180
219
224
234
278
160
222
198
147
260
226
135
221
204
170
208
190
217
234
248
218
196
239
206
257
236
211
192
236
196
214
196
265
186
197
185
141
217
182
288
195
168
137
235
207
252
248
120
203
216
260
193
196
223
176
213
140
228
227
208
218
202
159
221
174
203
264
170
130
178
191
210
166
165
196
246
208
216
209
220
227
189
222
173
203
186
170
219
157
124
162
221
236
214
219
133
179
163
180
201
175
162
188
169
194
235
242
230
192
200
260
157
180
183
190
173
199
184
227
184
183
184
183
221
210
187
209
168
190
190
164
235
206
200
169
203
174
190
168
239
250
164
186
222
223
213
264
237
152
161
179
207
183
250
198
207
188
260
207
234
239
228
162
251
197
134
158
229
226
241
202
168
179
197
217
283
219
238
207
235
182
186
205
182
226
162
193
154
183
257
266
235
197
280
204
161
227
249
248
223
197
182
231
162
225
257
172
162
231
165
185
244
229
161
197
199
234
275
216
211
183
193
181
232
241
176
234
155
263
200
176
175
272
231
175
199
178
162
211
107
159
171
190
221
238
162
169
231
207
242
250
220
250
204
215
235
226
228
198
197
197
236
201
231
174
186
212
202
155
240
194
227
247
116
180
183
205
162
272
229
202
246
259
164
283
142
210
172
259
263
216
180
206
119
242
148
219
210
181
203
224
202
227
288
219
212
222
187
177
183
143
205
205
147
259
221
230
195
166
196
230
197
177
213
212
227
180
240
215
180
219
198
207
233
224
206
237
202
209
229
170
210
210
194
218
189
199
187
158
246
226
188
187
177
179
172
164
153
224
209
231
201
125
198
193
179
197
189
167
167
208
205
220
160
139
177
161
116
159
235
174
236
226
187
197
173
219
239
183
172
159
191
214
199
215
235
183
192
233
197
237
207
230
290
127
242
203
169
134
177
174
244
154
253
147
233
222
225
235
173
194
179
196
238
197
191
188
177
256
182
149
155
163
209
253
205
195
193
254
185
202
213
205
180
181
205
194
213
209
199
217
231
127
208
137
231
191
235
219
130
213
117
177
212
171
209
235
188
189
176
217
216
169
131
168
179
159
255
244
163
215
215
184
211
225
240
207
158
152
275
210
206
240
165
242
186
200
166
199
205
215
228
151
236
173
244
152
213
187
177
186
214
197
215
204
249
175
194
218
241
138
169
213
199
175
249
209
189
172
180
210
203
227
228
212
186
251
170
204
263
164
190
161
132
226
238
222
150
240
159
216
153
182
234
156
178
238
198
201
139
171
144
227
159
162
158
155
177
245
169
191
212
219
241
233
171
183
248
181
231
207
200
221
222
181
227
200
137
187
261
184
215
184
157
196
233
235
223
222
209
209
196
218
273
247
205
216
242
204
200
184
224
206
224
188
226
187
156
182
221
200
191
211
222
180
112
185
171
124
216
222
235
215
219
203
206
142
239
209
183
139
172
255
238
175
160
173
187
255
257
194
220
217
192
231
220
282
201
254
224
197
170
209
141
234
133
182
210
213
203
171
201
166
193
200
226
196
220
208
140
219
139
199
191
141
271
179
143
116
213
211
150
202
174
190
193
211
240
138
166
136
180
183
164
195
164
185
192
217
257
189
240
232
173
198
193
213
189
160
180
272
194
169
178
147
220
144
239
225
224
233
205
148
212
165
223
185
219
215
215
174
152
211
167
217
163
133
223
187
214
205
176
172
239
241
230
165
233
216
243
199
224
218
255
196
190
233
185
197
229
214
229
185
202
225
190
170
232
119
208
189
211
241
232
199
164
123
173
188
193
141
233
227
200
285
190
205
153
217
240
187
216
126
219
198
237
262
260
244
207
240
213
221
191
186
233
165
190
273
216
199
113
213
205
218
195
210
220
160
219
194
221
244
173
239
156
187
206
135
155
240
167
212
252
230
202
176
221
117
195
167
244
242
279
191
189
145
111
191
235
241
200
211
184
179
220
214
181
164
240
240
177
231
192
174
226
235
269
233
152
182
244
192
200
200
212
123
215
193
223
215
209
208
183
229
195
216
218
214
142
211
174
236
266
272
216
184
197
212
253
138
267
193
181
156
206
267
163
176
165
201
115
222
183
246
219
183
257
228
179
217
177
218
198
210
167
220
174
201
237
196
174
222
171
220
276
181
214
198
212
213
260
193
202
233
220
210
213
191
214
195
207
203
179
200
242
189
251
195
179
172
198
162
180
180
230
196
151
197
241
183
245
181
179
229
224
193
237
193
222
203
155
284
206
182
257
207
160
144
163
215
206
229
220
198
158
228
176
185
234
206
186
223
248
185
209
173
244
218
250
184
238
245
225
208
206
203
184
180
230
168
237
186
216
174
177
225
194
238
156
158
172
167
260
189
240
229
222
138
176
187
227
225
202
220
190
143
171
216
168
199
168
226
202
142
206
201
215
170
238
199
173
178
221
213
224
218
250
196
122
268
231
224
237
221
243
246
281
171
163
212
219
216
212
181
223
181
224
210
178
188
191
235
217
193
217
174
209
183
217
173
239
175
183
213
210
174
220
198
168
217
212
205
207
227
261
223
207
183
214
244
216
247
150
220
229
250
259
193
255
191
185
241
205
224
216
206
195
178
245
217
170
248
167
209
238
251
263
220
179
133
207
222
230
248
204
176
186
209
259
205
202
171
176
236
231
202
228
160
252
220
235
196
178
205
162
254
247
187
256
216
200
170
246
231
185
196
197
188
239
240
151
206
153
197
165
168
249
190
163
146
230
173
224
232
233
207
221
243
194
200
163
207
236
235
200
193
209
198
168
190
197
196
193
171
182
222
221
202
222
117
259
208
206
113
167
206
194
238
210
193
149
198
216
151
208
218
237
181
171
226
191
221
201
181
219
225
265
163
185
233
212
215
263
196
212
224
209
162
217
206
218
257
227
208
208
205
187
205
216
177
256
227
248
258
245
221
173
229
148
189
221
115
162
190
179
220
206
256
160
201
164
203
214
217
232
195
168
236
226
225
223
257
163
161
187
184
163
179
197
167
166
228
185
209
174
249
136
206
159
217
154
196
233
190
222
197
198
241
228
290
159
162
185
187
251
144
241
237
221
224
194
158
233
234
239
253
204
242
255
190
134
233
214
240
173
236
195
179
235
248
170
172
240
158
220
208
264
161
195
183
182
189
169
113
246
266
245
245
167
193
268
211
253
167
210
185
212
220
194
208
148
178
211
197
194
208
235
229
259
191
156
227
219
217
200
211
157
222
185
200
169
217
234
195
193
217
218
218
132
157
260
174
250
150
178
199
255
191
223
188
183
193
188
200
240
219
227
247
201
220
181
213
260
175
239
139
184
149
218
202
204
216
159
209
217
186
170
258
212
156
230
210
251
193
213
174
234
200
258
160
99
182
191
237
220
180
209
187
265
135
217
150
215
223
129
156
186
212
118
249
263
232
272
188
218
148
178
179
221
215
194
161
132
158
278
162
200
194
206
231
199
143
200
180
195
243
207
194
201
213
240
219
188
202
225
114
232
139
245
268
183
156
172
158
235
249
120
205
144
212
242
220
235
210
236
118
154
226
191
209
242
160
162
213
161
235
263
225
187
240
254
174
154
179
194
189
179
172
235
200
176
149
263
233
156
223
242
227
222
213
230
243
193
186
221
196
199
125
242
173
199
199
186
229
254
162
227
186
229
237
145
248
103
230
185
213
180
220
170
219
208
245
147
148
155
193
232
220
185
164
208
220
234
227
197
257
164
216
120
224
168
198
212
164
266
222
240
186
233
177
236
170
190
202
185
160
182
197
185
187
245
217
256
173
217
244
222
245
116
191
214
204
264
193
237
176
171
133
174
160
184
224
222
203
233
244
219
190
176
190
130
228
185
183
169
195
269
226
178
196
174
176
164
196
171
225
116
192
245
224
213
185
176
162
192
195
165
183
168
232
267
154
235
230
198
197
150
164
208
191
191
221
239
264
206
244
169
120
177
226
160
160
222
206
205
217
140
169
205
193
216
168
276
257
264
162
226
205
254
193
167
218
233
124
229
173
172
143
244
154
177
256
183
203
231
115
152
161
247
173
208
194
235
259
219
142
247
192
264
233
226
248
179
209
180
237
207
206
271
273
164
172
169
168
251
165
211
176
206
217
225
172
216
185
196
259
246
176
246
258
215
238
143
182
180
200
167
208
240
157
169
202
175
232
245
250
206
182
172
241
225
208
205
177
158
182
207
217
192
215
217
155
224
266
248
260
221
220
161
205
200
209
141
231
210
212
230
169
157
198
201
182
168
199
203
178
222
224
275
251
155
242
165
248
249
192
187
232
183
249
142
231
180
197
224
245
211
176
192
208
185
196
205
197
176
182
220
146
186
182
165
171
175
180
186
196
148
176
168
180
200
161
166
195
197
216
180
149
179
148
210
202
216
203
193
260
175
207
162
209
262
151
114
223
189
149
171
146
215
165
155
195
193
220
156
130
178
218
195
243
177
173
165
168
147
190
194
175
154
225
154
154
254
204
198
224
159
200
257
277
159
240
174
167
256
186
227
172
180
168
190
194
255
217
203
186
196
190
181
237
178
222
231
225
179
210
146
178
174
226
192
134
194
185
236
202
220
205
225
184
148
194
213
170
187
216
204
232
258
154
239
231
172
199
197
265
146
247
118
199
261
187
228
220
215
199
175
146
162
217
181
196
172
193
207
205
203
201
185
234
213
134
158
233
140
156
169
244
225
111
191
191
159
203
232
273
197
96
219
218
169
133
235
258
215
216
183
197
198
238
241
196
206
188
235
256
216
221
230
224
215
214
258
145
172
189
214
202
221
235
265
201
196
193
180
215
227
265
182
199
251
163
219
234
275
235
194
227
123
188
166
162
220
191
206
168
256
178
265
225
226
230
242
203
201
200
206
196
190
165
217
211
135
178
265
252
148
231
158
160
210
209
195
200
221
161
186
195
154
213
180
222
210
196
211
227
255
189
141
260
216
162
206
175
207
236
205
211
175
211
168
179
261
212
205
236
178
192
217
228
189
143
224
214
157
195
166
189
184
218
149
230
204
194
182
190
204
199
185
162
210
227
202
202
158
284
238
152
241
172
256
205
142
233
242
217
228
283
225
202
202
194
225
254
244
209
251
178
104
170
209
199
218
278
205
236
234
185
186
211
213
181
227
231
184
209
134
226
207
184
182
182
263
199
195
203
225
190
184
157
210
274
224
210
190
222
177
201
124
133
205
216
193
170
254
202
196
181
174
203
147
218
200
195
124
199
236
125
233
147
246
256
235
177
200
247
253
250
206
207
180
259
251
144
225
194
195
152
197
189
151
208
178
201
180
189
269
249
139
143
219
187
193
199
186
273
175
198
215
137
146
182
209
261
205
257
195
273
221
206
185
156
190
144
129
216
150
227
236
166
238
180
251
176
223
195
196
203
204
218
184
255
189
253
224
193
146
222
200
155
224
166
236
206
193
193
244
212
239
170
252
208
193
183
205
180
179
155
196
213
253
194
166
161
133
202
177
146
198
141
182
166
238
146
166
182
223
176
223
183
174
170
244
200
140
136
219
203
213
202
238
220
209
218
195
196
180
254
194
216
204
239
162
256
188
196
190
234
154
201
212
199
204
186
218
231
229
212
212
223
249
231
273
230
155
149
210
212
209
219
200
185
170
173
141
190
228
243
221
187
197
131
171
162
257
221
108
196
149
281
182
189
236
159
184
139
213
117
226
198
130
166
179
210
199
237
231
196
146
183
254
193
162
270
207
230
173
167
252
199
197
198
253
198
252
134
162
208
202
229
210
163
263
154
193
190
210
187
226
162
218
154
143
193
176
217
233
207
193
215
146
146
238
163
203
134
214
162
226
177
124
114
155
233
132
142
222
199
218
245
288
126
221
178
191
225
228
220
176
249
238
153
251
179
260
218
190
196
188
178
233
198
258
262
138
155
205
149
259
134
197
205
197
139
209
221
270
244
138
196
174
163
189
197
133
207
227
145
229
191
242
181
284
215
168
170
200
191
236
205
219
225
173
236
135
174
240
218
175
248
224
240
242
187
188
223
219
214
213
130
224
265
162
179
123
203
200
204
189
163
203
195
180
174
160
229
206
207
193
227
189
194
147
215
185
205
171
219
225
265
210
185
203
187
200
167
188
201
242
189
126
191
140
171
220
206
187
181
192
198
269
175
143
215
180
187
186
202
201
193
219
221
156
198
196
225
179
152
205
179
245
195
197
210
200
160
106
209
282
223
186
190
247
187
207
216
157
232
165
228
167
227
242
133
179
185
234
163
223
262
164
240
280
188
229
189
202
228
208
216
184
232
117
223
180
212
182
188
182
137
130
194
162
232
228
159
156
210
153
238
230
170
188
206
196
197
207
179
167
220
238
189
202
175
231
184
247
159
229
193
119
252
201
205
172
181
191
228
234
165
168
242
189
226
222
206
132
185
234
155
259
184
218
224
155
173
204
194
182
122
242
228
205
141
142
260
269
152
207
216
148
181
163
190
243
202
187
191
253
235
220
279
227
198
239
265
228
151
217
123
196
294
274
225
176
166
221
221
222
172
221
249
152
138
217
210
151
195
182
189
187
185
197
181
170
177
165
247
202
205
201
222
177
241
143
227
181
206
215
223
232
215
212
201
180
229
127
237
257
207
202
188
208
213
169
229
229
112
144
199
196
235
193
242
215
204
189
183
262
255
208
158
212
163
195
174
249
226
97
189
199
218
160
188
240
186
120
205
219
188
261
149
181
186
168
197
164
191
229
118
209
266
176
239
185
202
156
216
201
181
224
188
133
169
221
227
228
169
202
258
187
212
205
180
173
216
207
165
242
195
163
214
197
155
169
186
175
222
121
234
251
208
210
175
225
173
134
159
152
230
182
182
225
227
106
214
241
172
183
164
144
180
223
199
198
227
224
290
164
212
167
222
187
178
212
203
217
176
186
193
192
156
236
202
216
152
209
187
170
154
236
195
195
299
208
185
185
232
150
200
191
192
154
196
278
178
171
185
241
134
231
230
224
255
156
186
183
208
248
204
231
164
228
223
169
210
200
198
247
172
193
208
234
160
212
213
170
169
186
204
180
191
207
181
144
209
269
161
191
140
184
170
189
216
193
150
212
195
225
246
243
184
184
205
195
205
169
170
163
199
164
215
187
239
201
214
165
197
210
228
183
211
145
239
194
185
200
255
158
232
180
180
160
156
274
206
178
204
193
183
206
222
209
231
185
197
247
215
182
186
162
227
234
176
138
256
243
182
165
232
220
208
237
207
201
217
221
250
190
257
201
245
179
195
228
215
211
213
250
215
205
199
212
206
202
172
214
155
190
188
195
158
176
184
219
188
256
222
158
177
220
160
170
179
106
170
247
186
174
152
170
223
261
149
139
142
209
222
167
217
210
252
194
161
178
241
248
197
147
219
247
226
167
192
223
184
235
190
217
217
283
179
190
210
238
190
161
227
183
184
171
190
132
190
195
180
230
205
223
149
221
237
158
172
183
232
213
214
225
225
239
220
121
214
186
236
234
216
181
192
220
233
160
197
216
170
187
253
227
257
237
197
231
226
204
234
239
192
217
126
211
196
173
208
129
169
192
204
184
221
196
176
204
201
191
191
189
229
264
201
169
147
192
201
193
162
168
147
184
220
201
185
198
147
217
234
184
230
203
107
149
199
168
165
220
208
211
197
242
192
274
197
165
190
150
200
235
206
180
203
221
219
228
229
228
179
223
113
120
214
182
214
239
154
251
141
195
220
233
216
220
217
204
171
233
164
160
234
253
210
206
221
213
204
222
171
188
192
216
196
223
256
213
230
147
189
176
179
235
221
169
227
165
258
176
217
246
241
203
235
133
256
201
235
199
175
141
147
196
245
168
172
216
220
163
243
215
183
158
213
222
211
191
216
169
159
181
200
235
178
162
206
149
232
203
161
191
195
196
203
209
273
192
208
254
255
239
177
181
241
176
204
223
242
132
184
212
137
173
176
198
189
163
153
197
192
206
226
169
187
257
230
178
254
203
177
224
190
169
179
205
209
217
199
268
225
207
248
178
209
195
190
260
245
182
232
199
172
171
193
168
251
210
245
241
130
186
133
208
268
188
181
219
197
186
201
215
255
262
219
190
208
156
228
174
221
175
193
178
252
203
143
144
148
247
187
168
190
246
250
184
253
158
193
252
217
193
198
193
231
191
245
181
210
219
221
156
199
154
215
243
181
194
208
177
212
262
222
169
188
220
197
268
239
170
185
190
226
206
193
238
173
162
206
236
233
170
267
176
208
262
185
165
183
145
195
258
190
167
229
229
223
212
232
148
119
189
210
229
219
165
231
229
229
229
162
206
239
223
199
193
242
180
208
223
206
194
220
221
196
159
218
174
220
195
182
216
194
198
216
235
193
196
185
248
212
220
167
209
166
186
221
138
174
174
240
153
225
194
264
172
194
275
222
263
223
192
116
136
230
230
211
232
202
190
194
279
152
171
247
203
244
169
193
218
113
159
161
182
178
223
199
113
159
195
274
156
154
198
182
172
251
251
148
228
195
204
178
220
188
219
179
175
175
182
221
65
258
247
194
195
213
184
209
239
111
186
252
174
231
200
171
192
247
226
156
195
219
203
187
151
200
198
237
240
201
155
198
197
193
174
248
219
237
198
200
233
254
250
243
241
234
208
174
114
238
206
191
261
184
166
235
181
206
177
190
249
233
234
200
225
210
172
209
165
231
83
99
184
170
197
218
214
242
189
261
215
236
198
239
198
225
180
245
170
180
189
174
224
257
167
252
245
229
178
114
158
211
180
178
223
253
179
177
169
249
202
219
230
254
210
233
246
179
231
225
192
217
155
184
240
126
176
237
161
208
197
128
187
223
236
185
197
232
223
172
157
191
185
267
253
191
192
246
242
213
183
230
191
197
188
236
180
192
173
204
177
160
221
277
230
279
190
201
230
232
129
259
180
190
131
148
184
188
209
270
218
145
216
213
256
234
226
197
217
187
247
209
188
242
241
243
171
213
201
189
198
196
206
181
169
198
221
164
245
203
214
182
231
254
227
152
197
190
213
199
205
223
239
230
133
244
150
210
224
207
202
191
195
201
216
169
169
225
175
191
195
167
167
225
229
241
194
220
228
193
238
214
194
152
222
212
186
223
164
161
217
224
202
250
188
223
204
211
176
177
187
225
161
201
223
198
193
178
255
212
203
212
265
117
189
161
264
184
198
207
230
195
172
209
184
154
238
236
208
182
210
221
183
188
210
161
225
206
194
204
212
166
200
208
165
212
274
142
181
217
217
158
167
151
153
186
228
169
268
190
157
274
206
179
146
150
145
198
236
255
213
227
181
234
209
195
248
169
206
219
221
184
231
256
212
207
183
217
236
175
148
231
206
190
233
147
203
241
162
171
209
225
235
179
186
221
178
222
254
222
272
166
239
203
154
224
187
159
215
223
178
196
172
204
187
139
216
223
209
218
204
270
192
199
196
219
243
213
201
149
253
205
200
227
222
206
175
165
290
180
211
216
202
175
244
203
199
126
234
212
199
160
261
194
231
202
232
177
201
245
171
158
191
232
234
217
217
219
248
189
190
246
220
191
149
190
116
252
183
195
195
212
160
200
209
186
257
225
162
184
234
220
245
216
173
235
186
193
231
189
160
124
186
235
230
250
192
160
230
283
235
226
252
197
219
218
240
186
221
211
184
132
206
237
276
188
224
222
165
171
218
218
228
176
136
171
193
162
141
220
180
151
241
162
249
253
165
173
205
224
202
271
180
205
259
218
164
188
237
221
202
163
130
148
208
196
218
204
181
239
160
206
186
163
155
234
184
203
163
199
199
174
152
176
196
212
236
230
173
199
218
230
180
173
159
174
248
115
162
220
189
179
275
182
177
73
244
236
212
201
125
230
147
178
215
256
229
206
238
213
215
198
173
138
196
166
185
173
204
223
255
214
234
207
190
271
175
164
186
195
184
207
148
159
247
224
185
208
217
234
233
238
213
167
213
179
233
224
205
177
206
207
219
236
218
193
221
199
196
233
225
188
206
216
125
200
224
189
206
232
198
190
274
219
182
181
171
216
225
167
271
190
187
175
202
226
175
186
230
180
199
218
195
158
159
201
206
219
192
184
126
192
182
215
193
174
221
171
214
183
258
190
187
195
171
234
249
207
207
214
265
205
179
217
202
193
96
209
211
210
203
106
218
213
209
186
208
226
171
208
168
234
201
182
177
223
154
238
153
223
189
185
206
188
230
246
246
188
179
168
221
186
204
234
235
189
171
195
260
220
210
202
200
186
228
171
214
198
182
186
201
172
168
147
176
188
227
182
195
160
251
200
107
154
236
220
230
122
176
229
217
152
258
184
183
185
192
215
205
230
165
190
172
195
198
199
167
214
247
173
173
222
204
133
132
159
177
205
211
186
172
160
233
282
228
261
243
215
225
142
164
177
195
200
170
200
213
228
206
208
216
170
183
200
239
242
207
172
176
203
196
188
256
222
194
119
187
215
228
175
224
193
243
159
159
135
200
223
209
265
233
182
188
184
214
223
193
218
160
131
202
246
168
174
207
215
211
201
176
186
190
198
157
192
202
92
219
185
134
226
204
214
212
207
210
250
134
147
242
244
152
210
257
220
226
220
239
190
163
196
232
178
242
245
240
217
188
183
155
194
173
224
192
175
177
236
215
179
176
182
186
230
267
222
204
219
185
189
222
242
282
161
219
235
197
230
219
143
234
202
231
240
213
164
202
201
230
172
186
202
193
241
135
234
179
225
199
233
94
153
247
190
202
169
108
246
220
236
258
236
185
242
232
215
246
182
202
190
194
170
244
262
173
143
205
187
239
201
248
234
172
245
162
209
113
161
188
180
154
198
194
228
137
240
245
190
231
169
249
216
137
219
162
204
233
260
206
197
210
208
188
157
229
204
253
177
135
241
264
192
175
218
204
246
201
234
204
199
228
187
219
185
201
172
233
188
190
243
245
227
197
177
254
174
242
120
200
199
198
174
203
161
204
236
176
227
203
167
167
228
216
159
149
225
159
170
250
134
173
220
253
197
238
217
250
242
181
203
214
148
222
169
190
188
183
190
256
178
205
208
190
149
248
207
199
233
141
141
228
248
159
215
137
145
173
206
151
228
246
181
161
198
238
238
190
198
219
147
202
201
121
208
227
206
229
176
199
210
229
233
196
175
196
234
157
220
235
152
211
178
178
129
196
144
189
190
215
238
217
265
220
252
156
181
264
210
193
150
262
212
185
203
254
207
195
253
209
227
159
229
242
209
264
223
150
153
217
217
196
251
244
158
209
232
206
171
187
223
198
208
227
245
205
258
165
206
199
203
208
240
219
197
215
184
171
131
215
162
187
182
171
116
247
191
254
180
157
196
244
180
280
192
227
206
209
230
194
198
199
181
212
172
164
170
152
143
207
196
204
216
199
149
248
192
224
240
154
225
200
144
161
236
222
244
198
121
278
255
214
189
194
244
248
205
194
241
198
230
205
143
227
241
237
213
174
168
242
211
213
186
139
212
207
187
177
158
135
180
217
202
224
206
195
219
192
214
177
203
160
208
156
145
145
272
174
195
195
187
186
192
137
237
238
140
194
211
128
209
248
258
213
221
194
222
226
150
225
230
212
164
174
185
174
275
195
193
215
143
126
217
160
178
168
188
172
242
214
258
227
197
257
195
234
209
161
217
223
234
195
199
140
275
211
194
167
260
154
165
151
159
251
246
239
225
208
134
231
130
235
190
168
158
205
235
228
240
195
214
124
178
240
209
197
216
129
152
178
201
220
208
152
246
231
237
235
146
173
192
193
258
197
175
164
235
197
255
257
147
171
190
154
229
245
224
174
199
114
202
215
200
152
213
261
286
244
214
262
212
134
169
227
206
223
221
211
178
190
187
247
233
170
182
184
218
197
188
195
251
184
265
165
205
182
252
182
211
259
185
184
170
193
192
203
256
140
229
195
188
219
189
138
197
183
181
157
207
168
276
185
191
235
181
222
187
173
234
188
225
205
239
194
222
186
251
213
228
221
219
165
187
133
165
248
187
250
195
237
204
200
184
210
225
181
163
258
217
194
274
189
172
129
206
208
209
270
222
292
185
205
198
217
218
194
186
230
211
209
185
214
225
190
213
227
257
169
200
251
199
181
256
182
170
221
228
236
130
226
203
210
211
253
177
200
219
215
197
226
184
250
239
172
228
206
267
215
170
156
213
211
162
204
209
146
151
218
193
213
183
152
166
178
176
168
211
206
274
172
207
95
141
202
186
195
211
197
212
244
161
194
233
172
246
121
156
192
225
201
247
249
222
238
227
228
142
245
204
194
167
196
205
100
253
237
212
218
181
246
159
240
224
215
170
210
126
253
77
257
217
158
226
230
217
252
223
241
235
211
226
222
156
140
159
185
211
217
164
229
283
140
206
146
227
160
242
247
206
178
190
186
230
255
261
191
258
197
172
212
197
124
204
205
210
248
190
263
222
224
192
186
189
195
215
223
182
206
248
228
149
204
215
189
204
252
192
202
217
224
189
186
265
245
230
142
200
224
189
227
229
177
172
213
192
192
125
169
223
144
207
235
197
193
186
198
217
207
265
270
228
199
170
253
158
229
220
185
182
252
188
186
142
211
202
206
209
224
198
225
217
228
204
220
167
186
195
152
258
223
139
208
181
207
216
191
131
189
161
153
174
259
188
162
176
219
188
144
151
153
220
203
204
222
215
223
126
157
232
257
194
161
198
229
142
276
185
212
159
155
199
113
229
179
233
195
215
195
249
241
215
203
210
161
273
157
196
232
234
218
215
229
193
207
218
208
246
143
178
232
211
211
223
248
142
217
218
173
198
153
208
239
252
204
164
157
210
201
246
198
289
139
162
246
245
151
249
201
215
203
171
203
172
186
219
254
192
162
101
177
194
244
214
222
207
231
237
150
220
178
218
259
192
191
163
146
202
185
211
192
179
198
150
216
198
219
177
186
170
196
187
175
268
176
188
184
179
205
234
211
201
156
233
204
180
162
224
195
189
226
194
205
189
210
141
214
224
194
180
203
225
138
188
197
241
158
189
140
215
190
204
234
174
135
238
205
156
218
195
244
207
178
169
195
160
156
269
216
211
266
197
203
227
216
196
194
224
193
223
198
201
215
165
213
181
215
165
158
176
210
189
207
191
138
159
172
206
182
185
227
141
151
213
190
245
202
187
263
96
177
253
140
141
152
187
175
200
194
223
159
201
153
195
237
193
119
222
210
170
239
200
226
203
147
154
261
233
168
234
254
252
229
234
211
169
168
224
170
216
175
250
176
224
138
193
213
223
270
195
230
145
169
169
162
220
148
220
194
155
290
206
170
241
235
238
223
214
218
282
170
156
194
189
240
162
206
206
226
151
224
249
193
238
211
215
153
238
221
187
225
209
253
179
131
240
184
237
238
186
204
219
228
258
233
265
238
177
210
269
221
210
177
194
142
218
245
120
252
263
206
184
178
256
254
228
184
207
206
212
179
217
203
197
214
172
196
210
178
185
289
207
181
202
200
211
218
202
211
222
184
242
236
187
211
182
200
206
181
214
166
218
179
200
186
198
244
208
162
200
211
198
142
180
194
211
182
195
221
163
232
176
188
258
236
212
221
197
272
190
198
210
177
183
243
180
222
229
247
287
140
226
207
224
202
135
166
249
169
212
264
166
237
184
235
232
162
238
197
165
193
201
189
175
219
159
192
185
236
206
157
149
178
198
183
202
171
237
236
155
237
262
237
189
202
193
168
222
274
169
222
194
240
185
177
234
204
203
251
184
196
253
141
162
189
168
150
175
241
247
247
215
223
235
258
227
176
232
228
148
219
139
206
219
233
222
246
191
201
240
128
186
176
194
210
262
220
204
232
187
157
198
198
191
178
166
226
180
226
212
101
225
145
220
151
161
217
246
229
190
111
226
165
270
140
233
259
249
216
227
186
158
249
160
218
117
162
146
227
193
211
220
136
266
216
239
166
159
203
159
170
215
235
256
235
174
173
226
238
206
240
238
182
205
199
228
151
208
219
146
228
176
104
157
182
220
193
219
271
176
173
197
226
219
224
163
218
277
161
188
214
131
175
235
134
191
193
263
232
203
176
148
231
191
225
133
189
250
231
230
214
224
219
163
244
173
269
188
240
191
109
197
159
254
160
245
235
230
223
216
241
239
176
246
249
244
240
206
216
151
176
209
156
162
243
216
144
226
152
208
218
196
199
268
122
218
130
239
175
179
172
186
196
219
194
186
137
235
227
168
179
218
167
215
210
192
159
181
151
187
217
163
182
165
172
133
117
208
204
131
167
141
173
129
195
197
228
195
247
206
166
238
246
152
161
188
260
249
223
195
131
140
102
248
131
215
170
175
240
191
223
194
222
196
162
191
117
191
211
242
234
260
202
186
132
181
163
167
253
218
171
218
193
179
194
177
199
255
225
146
147
149
212
190
184
232
227
197
230
225
222
247
247
180
171
180
225
175
148
212
249
224
201
172
199
211
237
161
168
249
184
242
229
158
145
152
223
196
196
170
220
204
227
166
281
199
175
223
187
202
217
185
183
178
237
197
247
228
216
257
213
183
193
223
240
205
179
209
145
172
160
178
288
216
172
206
226
222
227
131
183
279
219
130
190
97
179
227
204
149
273
196
224
209
209
215
199
180
120
267
239
193
181
242
238
236
253
197
192
221
180
177
218
170
191
177
215
196
252
147
144
240
182
166
116
254
225
198
192
219
166
260
157
212
202
222
241
178
212
228
243
219
187
151
212
188
170
244
182
142
220
81
211
266
257
200
175
195
254
171
199
185
202
219
190
118
141
230
215
211
115
130
212
147
110
226
200
171
169
253
222
174
215
217
166
242
192
199
267
250
207
155
194
214
190
158
181
207
190
175
193
220
229
242
199
217
208
215
190
223
119
198
217
181
184
212
218
171
285
169
236
169
231
249
214
219
198
208
175
210
156
247
191
194
150
203
207
195
220
242
178
218
239
220
264
193
188
163
186
227
154
255
219
141
204
246
194
213
183
167
241
223
156
228
213
232
170
252
233
188
198
240
182
240
229
229
131
223
167
224
179
232
245
137
218
207
224
177
198
206
206
152
215
150
200
190
250
141
218
210
169
225
222
167
201
116
183
229
215
192
120
200
233
251
146
139
175
247
173
245
219
240
170
182
221
193
247
244
132
193
180
259
173
183
238
248
163
224
230
145
285
194
227
227
168
197
209
276
187
256
243
211
225
206
242
155
230
189
280
208
176
241
230
208
243
220
218
220
215
251
204
165
199
156
201
219
228
227
200
98
154
215
239
207
177
190
219
215
152
224
181
187
212
289
210
260
208
184
212
238
162
149
186
202
125
187
143
190
161
184
184
189
164
170
162
243
259
163
119
175
255
262
168
153
169
197
161
151
118
173
165
197
149
198
205
210
161
208
182
205
231
211
166
188
197
162
239
213
222
130
152
135
197
138
146
225
160
215
136
243
244
248
167
166
239
224
208
188
275
245
230
242
204
211
206
188
155
181
195
214
221
194
242
159
248
152
184
168
136
204
186
211
209
213
158
188
202
277
131
262
214
197
216
261
265
182
149
216
196
159
177
195
207
192
174
203
215
192
173
184
190
200
217
208
228
160
236
207
221
223
220
275
197
229
190
227
206
243
166
145
278
185
199
164
149
167
161
220
148
217
223
224
207
255
203
153
177
195
160
215
151
178
263
197
207
201
271
166
197
184
241
156
198
188
209
169
191
266
272
266
242
248
229
252
200
150
185
200
197
168
199
222
215
202
174
161
200
206
202
210
185
155
171
203
222
219
138
191
213
234
212
205
193
230
165
178
199
193
191
214
239
250
124
213
159
149
272
139
257
134
162
201
194
205
260
184
208
217
201
157
229
198
247
244
181
203
205
141
210
107
206
189
160
166
204
187
202
236
137
211
240
182
249
191
188
158
133
175
175
277
145
167
219
192
229
220
227
163
165
237
163
239
214
216
215
240
130
143
191
212
228
189
231
180
233
208
211
201
213
200
137
214
223
178
205
181
196
266
195
237
116
181
140
235
208
200
176
194
169
140
197
272
182
242
180
180
221
202
224
160
160
242
214
199
226
221
184
182
191
123
277
214
188
201
145
223
232
222
193
274
189
200
187
219
214
146
171
146
203
218
179
236
239
161
238
189
217
201
204
208
232
185
177
168
130
210
139
233
224
149
239
268
214
175
185
198
201
230
213
262
220
207
266
257
210
229
246
172
189
230
193
219
247
231
171
167
170
189
216
204
195
234
140
188
236
166
195
217
217
220
179
223
122
179
106
142
203
170
187
220
182
207
175
173
213
242
254
239
202
201
181
143
209
154
237
203
239
161
216
179
210
182
244
187
217
207
184
186
187
232
164
176
194
274
188
149
167
232
188
187
261
166
180
207
176
205
217
240
177
203
164
198
217
223
193
227
218
198
183
189
227
284
187
186
167
263
174
179
211
255
210
221
264
222
233
229
196
234
195
169
225
192
216
227
203
229
105
237
259
208
153
158
161
263
204
285
148
185
225
202
175
201
179
202
222
168
238
244
200
198
239
234
191
157
183
196
212
162
218
227
237
241
201
153
223
203
178
198
240
193
182
208
157
208
225
229
189
229
222
159
236
189
146
250
211
217
207
177
174
178
137
219
180
155
173
244
202
193
187
175
255
191
216
224
215
205
184
237
208
233
187
237
188
231
199
157
191
219
175
220
138
194
240
156
254
206
188
157
182
163
203
185
202
245
189
174
194
174
126
197
246
173
244
137
177
171
212
132
180
236
249
222
238
128
221
170
260
191
253
198
230
140
221
256
210
231
169
173
232
300
211
223
175
159
186
163
239
167
171
183
250
215
163
186
203
229
198
206
199
209
163
252
242
241
220
229
213
190
233
156
176
165
213
190
195
219
181
237
228
146
173
222
134
211
177
187
176
194
258
229
177
273
180
241
107
206
197
225
179
194
201
237
245
236
279
228
132
208
190
262
147
144
183
192
236
213
196
202
183
226
182
143
215
216
178
170
190
163
192
166
125
185
193
244
235
204
178
220
210
225
227
205
147
153
177
212
149
191
217
227
234
169
214
164
232
212
160
206
186
232
234
224
169
209
202
180
231
99
209
171
247
175
215
189
186
189
184
238
194
217
254
166
210
224
204
278
227
174
217
248
213
266
174
203
197
222
215
142
184
200
226
177
185
209
151
145
147
157
177
210
231
222
214
231
162
276
210
249
211
213
192
199
194
132
191
203
249
201
206
133
213
216
207
169
166
250
158
194
158
251
260
191
164
154
189
219
258
212
211
215
142
189
184
225
213
229
213
179
256
175
189
208
170
189
183
179
217
247
132
188
216
187
216
172
238
153
173
157
227
179
162
184
230
226
241
171
173
213
200
181
172
198
181
204
241
172
223
258
164
248
186
217
232
178
199
178
180
168
162
215
194
248
252
166
221
192
259
289
206
165
202
146
265
179
212
214
172
223
194
173
193
209
179
258
264
136
183
198
203
246
191
230
196
195
207
216
233
248
170
231
182
232
223
185
231
219
230
204
235
178
265
183
210
204
238
204
189
229
261
202
188
217
251
179
242
206
163
255
229
198
197
224
202
229
217
186
178
184
236
204
171
79
188
269
135
208
227
223
221
175
198
179
234
216
192
212
199
211
195
178
186
182
198
247
205
254
162
181
232
185
172
199
156
209
176
226
204
239
230
202
237
235
173
227
244
207
271
254
238
190
220
208
167
232
196
216
174
247
188
148
235
160
184
185
207
199
181
247
181
193
147
222
194
219
231
256
206
206
225
190
183
225
224
192
277
151
165
219
195
155
178
246
179
227
239
193
216
247
168
251
225
171
220
168
254
193
220
220
235
171
152
206
186
215
199
246
156
191
202
210
229
226
194
201
179
251
183
177
201
202
219
188
186
223
216
202
182
200
168
257
245
235
142
250
110
202
184
260
228
255
175
219
208
190
200
241
240
225
225
203
292
263
216
162
186
218
207
209
158
238
186
200
202
177
197
200
191
167
143
181
276
144
198
194
161
171
179
173
172
139
117
257
246
222
201
243
194
202
159
220
274
224
169
235
202
252
210
205
187
134
230
227
165
173
212
195
166
195
287
236
197
239
214
227
261
215
170
249
233
205
258
212
202
223
235
189
197
228
219
185
163
211
136
196
249
223
258
202
215
187
188
208
234
213
235
196
192
223
196
141
236
216
205
212
210
232
179
219
216
188
178
193
237
193
269
194
124
281
212
175
180
128
156
207
263
196
153
152
225
212
286
206
237
198
227
182
215
168
164
168
180
235
169
197
224
232
156
170
216
166
223
200
215
246
165
173
196
189
212
180
208
195
205
171
165
250
147
256
233
220
218
210
191
197
234
170
243
229
170
204
160
85
154
221
215
262
172
207
198
207
166
210
240
181
175
204
228
215
139
158
152
205
231
181
200
238
190
242
148
242
210
197
192
165
191
174
172
132
211
177
255
252
190
143
243
188
189
167
125
221
219
187
222
266
187
179
162
155
159
206
230
157
220
203
216
171
243
230
233
170
161
244
203
208
195
257
162
178
206
241
206
196
139
168
234
236
246
180
181
200
209
244
209
251
179
226
199
192
192
230
197
170
173
210
226
201
192
229
249
283
219
207
178
138
187
149
199
178
173
211
183
150
194
150
183
125
200
174
244
252
146
184
245
262
215
177
216
177
231
218
163
155
153
193
261
185
217
249
226
228
177
186
183
231
214
157
127
217
194
223
142
186
177
210
207
186
190
192
201
195
184
181
164
163
187
193
166
220
175
196
173
212
233
209
196
193
212
157
237
183
200
219
150
194
199
161
229
201
198
187
191
263
256
211
222
233
167
189
203
234
227
139
171
198
169
203
191
221
195
230
155
237
237
187
165
249
195
206
170
261
175
246
187
213
215
173
193
175
184
234
202
221
266
228
196
197
219
174
196
224
252
251
215
190
213
210
181
234
167
219
225
264
219
226
217
258
180
187
165
143
130
159
193
183
248
250
277
178
186
211
148
193
220
214
226
155
265
220
251
190
166
175
148
199
191
193
257
205
173
239
183
216
235
208
164
169
135
234
181
225
265
133
170
197
242
220
242
262
220
235
229
121
227
221
183
199
169
200
235
222
165
241
200
172
210
156
204
193
182
241
187
135
158
242
188
167
275
198
208
235
236
224
122
198
195
208
231
243
194
228
236
220
224
204
176
201
155
258
178
199
199
188
177
221
180
226
200
198
189
157
211
193
232
205
212
217
242
172
91
174
236
253
156
187
197
223
225
144
192
213
236
158
223
191
149
163
240
240
170
206
251
208
242
194
221
198
229
237
293
176
151
226
182
193
174
193
177
184
172
165
185
178
186
208
133
202
153
180
181
219
171
152
225
179
221
101
152
243
274
208
84
195
216
196
105
227
213
223
221
172
230
172
184
140
126
200
258
256
237
233
212
167
172
241
186
241
191
209
224
131
155
211
253
116
188
170
174
198
256
222
159
171
178
222
100
213
233
154
205
213
195
125
184
172
154
169
195
184
244
175
204
155
248
188
207
159
218
216
217
192
233
240
183
203
139
226
218
248
176
191
216
217
132
207
196
241
224
260
243
227
172
203
263
194
148
227
165
152
175
180
234
148
198
170
246
221
140
194
186
227
196
215
154
178
192
132
212
162
230
237
205
221
184
204
198
260
168
188
148
209
182
161
250
209
233
191
171
193
208
113
189
173
210
278
182
186
174
177
146
199
153
146
199
254
190
144
276
209
292
218
182
219
185
229
179
186
189
222
225
215
210
195
204
201
186
232
204
194
178
253
135
226
235
192
209
206
182
169
192
161
194
228
204
220
170
152
250
143
187
172
159
213
187
209
251
180
177
158
195
188
218
221
183
217
169
140
176
256
181
256
178
220
224
200
246
191
144
194
174
200
205
235
165
217
199
213
151
214
173
138
220
191
251
242
182
222
212
206
229
168
223
257
195
203
212
191
234
237
231
200
180
233
143
277
138
132
135
201
166
172
217
254
178
207
187
198
190
147
185
220
224
192
230
180
219
182
198
217
251
184
186
204
210
187
194
234
208
178
237
253
209
183
205
219
163
206
164
239
219
221
199
206
240
240
182
249
163
233
194
257
257
175
193
278
149
207
193
251
181
183
174
103
240
158
218
228
236
176
213
147
259
198
188
171
217
132
187
252
226
190
163
216
215
172
229
165
226
198
230
179
230
188
196
160
251
211
205
251
170
223
209
216
221
234
229
171
218
242
232
265
179
176
212
198
186
164
231
156
207
251
189
194
213
216
259
250
195
270
195
115
186
174
168
232
213
129
218
148
215
192
152
208
185
205
211
212
191
218
182
205
186
177
151
222
156
215
221
206
203
203
195
189
263
196
253
176
171
242
220
108
222
233
182
221
168
182
198
214
271
209
190
219
208
131
207
191
232
206
213
169
169
254
140
197
203
232
191
183
217
251
266
255
216
223
226
199
152
258
230
243
196
194
219
214
159
231
169
224
163
245
193
183
168
231
236
191
176
162
199
195
147
237
183
183
184
143
176
190
222
195
172
273
265
245
163
252
115
140
149
209
193
188
181
182
198
188
239
223
185
208
206
269
164
252
177
266
166
268
174
236
214
254
167
263
218
271
190
206
256
146
236
218
171
175
241
151
199
173
180
177
224
161
218
156
279
234
140
203
216
229
216
197
213
102
103
215
174
177
205
202
189
203
161
186
195
188
189
205
200
218
206
208
177
167
199
167
153
209
146
236
207
151
211
201
186
210
235
214
176
201
185
185
221
226
223
226
197
205
243
137
285
185
227
226
169
212
252
196
221
250
244
200
153
177
204
209
175
183
168
217
210
121
248
182
190
189
192
185
191
202
215
219
201
196
181
255
201
215
182
178
179
165
225
141
197
140
255
203
238
270
190
173
222
284
205
258
190
172
189
190
211
180
181
131
229
217
210
209
191
222
255
150
156
172
180
174
135
196
221
213
150
204
220
141
164
218
159
223
177
210
184
165
214
240
156
169
230
222
245
244
217
237
241
209
149
181
196
173
219
233
202
248
220
206
155
174
169
177
167
223
192
201
258
263
158
213
232
214
242
194
188
239
272
262
278
197
218
229
151
157
218
186
210
211
159
252
225
174
138
233
174
162
228
223
195
215
209
241
207
269
169
243
154
206
180
244
181
168
207
219
191
225
220
190
211
125
245
190
193
237
192
198
188
212
212
164
201
267
168
228
225
147
142
198
248
202
176
254
244
244
214
199
232
197
179
264
210
160
195
240
200
153
227
200
224
142
198
204
231
200
204
242
232
166
140
208
228
241
189
232
168
136
161
183
276
201
174
170
191
235
135
264
239
168
193
181
286
184
158
161
240
181
219
285
245
223
239
201
217
271
167
211
186
252
205
163
201
212
238
224
221
195
216
224
214
197
204
234
215
186
198
234
191
241
194
201
193
207
203
165
206
145
240
232
240
226
157
208
278
208
154
263
201
188
198
212
213
209
177
196
236
205
206
240
199
169
230
212
119
243
231
203
190
218
277
259
214
136
248
231
124
245
143
223
226
190
195
167
159
196
142
233
187
176
190
196
204
182
211
234
129
183
248
203
210
236
162
187
134
218
273
278
223
215
201
187
243
228
157
257
131
206
187
144
224
192
177
221
257
197
157
202
212
214
165
236
185
167
231
190
182
224
238
136
273
210
263
197
218
193
228
195
179
184
180
229
240
178
241
271
163
167
153
219
182
241
208
230
234
151
177
243
159
206
204
234
123
174
185
205
197
140
167
147
220
245
243
195
181
182
234
225
204
118
246
183
180
165
255
177
182
234
145
222
162
193
238
135
236
230
188
162
204
176
163
116
187
201
257
188
232
170
277
260
201
207
247
181
176
206
214
223
190
152
185
183
215
256
210
216
184
222
167
146
230
198
159
216
181
238
210
261
208
145
206
214
246
197
164
223
212
226
135
187
204
180
154
160
225
190
143
182
133
223
208
238
218
145
196
198
217
201
212
188
197
225
205
250
223
184
213
221
188
165
222
204
159
192
244
194
204
236
221
188
139
160
230
235
147
166
187
250
150
207
248
184
186
180
187
188
188
228
184
221
198
224
213
218
159
206
167
187
220
167
212
236
213
212
214
167
208
198
183
267
229
115
153
252
220
218
231
210
203
214
193
203
186
183
221
179
152
186
198
253
225
172
217
161
172
160
151
211
189
218
257
193
194
204
199
195
211
202
201
224
243
242
245
170
167
250
97
205
192
195
201
228
213
208
297
110
127
272
214
269
218
210
227
210
203
195
149
245
216
181
229
168
245
232
199
293
182
202
207
169
171
210
234
184
172
231
249
150
183
205
174
166
217
163
250
207
176
134
193
206
140
189
220
240
236
235
198
186
218
236
226
179
217
195
256
208
227
210
198
195
192
163
266
146
208
188
215
221
171
192
164
170
180
191
213
248
196
229
230
200
228
182
167
190
203
191
172
230
245
221
167
134
160
238
177
205
228
167
228
244
198
241
227
135
240
231
191
191
183
187
216
249
161
240
132
156
200
197
140
235
93
127
228
240
234
197
155
172
247
213
121
157
205
241
178
170
212
205
217
197
223
158
230
231
229
181
192
171
222
263
243
196
220
256
264
201
250
239
196
229
208
145
231
183
216
234
197
190
138
197
206
192
242
234
191
197
162
251
176
212
255
211
243
226
202
194
262
247
234
231
230
213
212
146
212
213
236
218
210
201
187
258
184
197
208
190
153
216
208
249
161
166
237
155
212
126
263
197
284
174
169
208
217
197
196
234
226
151
187
214
169
153
185
195
189
211
209
199
145
245
138
215
147
232
107
241
187
190
152
239
234
141
202
186
255
137
215
219
161
185
207
211
199
173
188
230
165
132
211
179
212
165
154
199
228
226
168
242
184
178
149
208
193
206
221
219
174
226
139
218
218
171
209
189
177
181
203
169
212
201
236
165
139
193
248
234
225
221
209
274
175
197
186
205
136
223
244
148
188
236
215
169
145
266
239
187
174
235
240
235
182
205
219
209
165
227
196
91
155
172
203
188
189
179
157
265
275
211
247
220
203
233
163
248
212
161
216
191
165
215
214
259
230
256
169
159
148
214
139
186
205
205
181
234
222
210
206
182
210
172
166
216
205
252
180
202
219
180
213
151
172
214
201
200
161
237
193
214
153
207
189
161
181
213
195
256
165
172
112
228
225
216
187
261
253
186
260
202
189
197
201
234
195
220
203
212
210
104
170
220
176
205
205
245
230
140
180
211
185
190
216
185
224
234
260
212
229
150
222
175
173
242
204
197
172
245
217
226
123
151
164
219
212
158
221
180
177
216
169
199
160
216
235
155
184
213
141
220
172
227
210
239
183
164
141
227
182
220
117
208
207
156
154
193
188
214
167
281
157
194
173
180
173
200
251
188
223
210
193
170
154
184
175
188
203
185
166
177
179
190
196
171
195
216
229
232
185
166
214
258
178
216
213
168
178
210
202
175
248
145
260
231
141
212
163
241
188
202
213
140
255
185
154
203
167
236
216
232
178
129
100
199
209
220
249
137
233
259
166
219
181
191
221
229
224
210
208
110
108
189
223
196
176
180
251
150
200
134
252
247
158
211
210
181
181
97
215
193
169
164
133
218
187
206
207
170
178
239
232
228
235
159
228
193
157
173
245
213
202
212
229
190
218
227
259
253
185
227
265
241
179
208
233
204
268
164
142
196
266
148
223
181
210
210
154
210
108
193
204
196
187
206
214
172
165
228
202
124
197
215
221
207
220
241
229
200
229
223
201
211
172
203
180
193
215
173
222
263
145
252
229
216
236
178
203
169
181
146
235
180
179
162
243
250
106
221
110
222
166
199
122
219
211
221
218
231
167
258
219
232
204
173
278
164
214
205
187
171
91
192
209
182
179
141
258
175
211
180
212
178
145
214
163
196
92
152
196
215
210
209
125
217
178
242
246
178
164
266
176
206
196
192
206
250
155
189
187
259
145
189
221
271
211
180
203
231
217
220
212
236
197
136
155
137
162
180
151
199
180
182
185
208
185
207
205
212
205
111
230
163
199
259
159
214
226
184
223
235
275
210
185
155
213
175
259
219
202
175
239
190
90
166
235
128
209
243
281
165
237
201
217
210
215
200
192
172
153
209
205
231
178
251
200
180
227
175
123
187
204
217
252
204
191
190
186
178
162
254
223
201
251
207
215
127
201
198
219
184
160
219
190
176
243
177
220
273
179
187
221
174
219
203
240
201
212
198
189
157
237
190
227
120
210
156
231
198
145
214
174
241
205
219
289
236
172
181
255
178
222
193
218
174
193
206
202
188
181
187
232
160
154
215
204
183
237
176
200
156
211
230
200
213
181
220
226
197
269
229
234
203
219
187
206
141
178
216
219
188
175
235
229
183
204
213
148
143
185
214
98
215
215
279
210
175
253
230
206
166
148
262
167
203
159
217
184
206
211
198
203
180
191
196
262
225
239
153
207
138
189
237
169
221
198
265
131
108
229
224
260
158
184
254
223
209
260
248
243
203
269
167
186
227
195
256
215
196
203
226
125
207
167
245
209
237
191
202
177
195
169
76
188
171
116
133
213
181
191
192
232
220
257
183
162
135
158
144
193
269
203
228
253
207
224
212
163
192
169
185
203
169
219
220
170
136
178
257
236
220
184
160
155
242
123
225
228
228
233
211
168
219
227
207
142
203
207
170
206
211
288
190
195
235
202
207
248
184
140
125
161
186
156
192
161
185
247
237
203
171
194
176
183
246
207
216
248
175
210
194
141
224
265
210
235
226
243
190
217
153
163
240
209
230
206
197
227
198
162
259
254
196
203
162
223
223
152
257
276
221
235
99
188
280
215
185
198
209
189
153
191
216
199
247
202
256
230
212
208
186
209
223
182
190
236
153
195
236
225
199
165
216
225
235
224
232
230
221
191
174
210
164
213
203
235
205
169
162
236
239
270
214
190
178
229
239
229
238
175
235
231
242
178
222
207
166
169
157
211
169
178
200
175
194
216
183
152
179
233
181
177
166
233
186
226
206
183
178
211
235
178
216
251
186
205
220
203
188
173
178
205
237
151
194
262
188
209
146
232
255
170
198
233
233
205
280
156
175
246
120
185
259
126
193
137
225
197
189
233
235
183
162
201
164
201
232
135
199
198
262
185
246
230
243
217
202
193
124
213
223
195
219
191
270
190
215
202
204
269
215
145
217
220
181
228
183
255
217
218
172
164
166
259
176
175
133
246
110
235
151
181
219
215
208
151
156
225
214
216
196
237
210
216
210
225
190
166
191
221
178
197
238
130
192
207
136
206
235
147
201
187
204
208
207
153
264
166
203
205
229
241
217
208
173
122
178
225
219
205
183
231
209
192
231
232
196
148
199
195
205
204
191
242
179
180
218
232
222
199
209
200
148
206
256
157
184
219
217
227
257
236
228
216
189
94
183
233
210
222
194
202
168
231
216
258
206
208
176
206
222
152
272
162
261
188
255
214
167
234
189
172
193
256
208
201
180
169
214
114
137
179
164
189
236
210
179
187
158
125
238
192
257
203
206
121
182
202
186
179
237
232
224
205
208
221
145
172
201
245
198
164
171
181
206
264
132
214
193
188
239
176
211
284
178
170
192
228
206
222
237
179
206
205
153
220
218
285
170
216
209
208
147
229
178
195
154
225
212
118
219
180
180
162
197
162
221
225
175
180
223
198
198
177
276
235
174
140
188
213
237
198
135
195
197
295
279
203
214
170
166
152
224
179
227
197
163
198
144
189
159
211
232
219
202
146
160
187
234
238
131
224
225
248
199
107
242
239
156
214
241
219
168
238
267
220
239
226
207
275
119
144
168
158
263
243
198
180
259
214
230
236
236
191
223
196
180
224
146
142
181
193
180
209
223
210
205
172
186
213
218
244
177
197
193
209
122
252
136
203
195
226
259
231
279
214
175
191
194
127
179
155
195
257
175
196
140
202
191
159
157
213
171
203
195
242
234
247
207
221
202
220
199
186
139
181
205
182
245
249
298
160
183
249
192
277
220
207
222
175
255
228
168
239
218
230
240
198
218
176
227
188
179
191
145
69
173
196
171
184
209
201
232
193
138
168
246
223
186
151
257
173
187
194
210
184
202
251
162
139
215
178
185
270
206
197
226
212
157
218
176
251
144
219
186
195
173
208
214
242
216
181
135
220
183
176
262
165
226
163
178
195
272
238
233
200
209
196
159
183
170
184
226
126
191
242
209
208
228
238
143
177
238
229
229
204
209
171
214
195
260
187
152
232
159
246
135
234
216
183
173
222
250
193
212
246
232
208
228
153
245
258
181
261
191
167
220
247
194
200
163
249
178
239
263
168
214
250
175
279
192
209
205
162
165
207
237
170
169
199
167
193
193
227
221
157
241
167
184
186
230
199
184
237
165
216
180
224
239
196
192
183
194
172
158
172
178
186
242
163
197
245
194
167
212
214
167
250
236
222
161
196
213
205
226
246
201
269
160
140
252
177
185
176
146
150
234
198
214
178
226
195
198
171
199
203
185
213
179
208
224
196
193
170
143
218
170
227
230
182
164
212
189
181
198
266
243
152
187
175
199
247
199
174
212
237
160
197
214
228
202
181
166
178
242
178
203
249
138
199
149
220
230
167
195
225
216
163
215
179
198
232
216
200
173
200
170
171
152
168
237
182
155
128
121
210
198
157
230
196
194
170
212
192
165
172
230
165
129
194
217
237
274
256
255
226
140
224
182
200
180
185
186
220
244
167
231
147
203
215
249
177
252
231
166
216
207
175
212
188
265
187
219
135
228
227
231
207
205
201
174
196
175
217
246
234
221
202
209
234
204
210
278
185
143
189
190
226
199
193
228
182
249
180
273
213
195
212
188
195
225
227
251
210
144
235
203
229
231
217
206
259
179
206
211
197
201
185
193
183
203
200
220
204
177
195
189
201
208
217
169
220
266
198
218
227
131
167
209
211
215
172
197
191
214
199
198
252
186
190
267
260
221
176
244
225
203
207
208
213
226
189
238
205
215
146
166
199
205
244
158
225
226
213
144
236
195
242
219
150
135
129
141
221
210
205
256
213
255
188
137
194
189
182
199
213
206
250
230
184
204
194
223
172
239
165
142
192
215
249
182
138
253
224
214
188
161
217
180
218
169
237
212
193
183
202
206
206
259
242
165
223
187
202
242
197
194
176
175
229
176
182
225
173
229
275
229
250
174
224
157
172
145
261
218
201
231
237
162
284
170
185
139
205
193
175
155
200
254
223
145
124
200
147
175
190
181
197
228
242
251
216
172
210
227
217
173
201
188
162
163
195
144
126
191
201
151
198
194
174
195
242
159
177
146
119
156
188
204
191
227
210
250
132
134
244
246
178
258
211
237
199
161
177
255
155
226
234
184
201
152
211
225
216
214
241
192
134
241
236
209
161
242
168
165
216
214
255
252
197
202
139
196
245
244
200
208
170
236
243
180
161
247
217
228
193
145
232
228
221
212
237
145
199
217
203
205
225
232
251
108
267
191
167
201
283
167
219
189
154
225
248
188
205
234
166
245
204
167
214
135
268
161
215
189
189
191
226
227
243
189
143
210
277
189
188
202
179
144
231
193
212
194
216
215
206
158
209
153
182
234
161
191
249
217
211
153
176
215
228
181
167
164
153
239
224
227
215
239
227
207
184
196
236
128
158
201
171
207
231
209
186
226
193
179
203
268
271
167
254
191
219
231
211
139
81
152
205
155
172
147
161
174
240
189
154
236
221
214
169
228
205
196
219
122
179
165
234
229
156
215
178
182
174
241
127
197
202
202
178
151
207
229
153
203
180
242
114
211
195
192
214
168
194
251
188
182
199
220
184
157
213
177
168
198
176
155
235
214
169
235
196
192
156
202
283
197
179
157
192
171
208
225
166
251
246
180
270
204
199
212
237
215
229
221
195
225
199
211
154
217
169
263
215
259
209
189
231
201
230
161
191
182
201
220
170
168
204
179
182
185
234
219
204
282
249
164
180
194
227
204
221
206
208
160
183
223
206
168
214
233
248
193
169
194
184
257
229
204
242
181
249
250
211
176
239
210
224
193
181
206
259
191
216
204
180
159
239
141
125
245
198
179
215
170
171
249
218
246
182
214
175
225
240
153
243
221
229
203
239
240
231
150
262
138
158
135
225
239
201
183
172
193
181
238
207
132
208
286
214
215
183
200
222
220
220
202
199
158
284
187
192
227
231
224
167
139
223
152
178
252
209
203
177
171
197
180
184
185
172
141
143
178
252
173
199
201
136
203
201
194
245
192
226
138
178
213
236
200
172
234
225
179
114
177
233
204
230
240
212
122
183
201
201
155
212
179
149
183
226
225
203
261
248
227
243
217
163
192
174
156
156
133
192
249
190
202
174
177
222
218
251
244
219
255
229
168
163
187
208
258
226
150
262
222
213
249
116
187
211
199
152
229
133
247
221
247
156
179
221
195
209
165
214
191
139
202
203
264
212
152
231
196
190
236
154
183
249
223
185
215
217
216
245
175
194
157
207
200
193
197
161
207
198
192
279
168
192
197
200
197
234
222
215
144
130
195
175
225
225
145
165
236
220
185
139
244
191
163
281
181
190
184
167
128
200
207
224
231
231
254
171
218
228
182
222
199
172
188
145
149
243
162
181
238
163
215
109
226
161
226
189
190
197
159
203
223
160
239
220
168
150
227
169
201
213
193
198
138
183
229
219
157
148
151
180
153
249
171
179
232
170
213
259
148
187
221
211
188
190
181
233
190
219
205
217
228
203
174
248
188
219
244
209
150
223
188
133
187
168
190
186
170
118
161
189
189
220
224
206
106
179
190
130
253
176
148
155
188
256
192
242
237
261
219
250
226
193
156
211
220
170
242
104
164
209
234
174
195
199
268
138
241
152
220
213
171
135
140
204
213
201
166
234
197
179
218
144
229
206
161
178
187
190
130
206
183
214
200
263
223
195
233
251
191
259
144
194
221
204
227
164
212
221
228
187
215
221
201
240
245
176
218
150
194
161
151
175
181
216
185
170
170
188
209
135
163
208
189
230
236
179
257
158
180
181
172
223
180
168
142
235
219
182
230
146
181
197
136
204
154
218
229
202
213
231
157
167
260
237
195
166
195
191
216
237
242
253
235
229
245
192
204
185
157
240
225
211
199
214
178
237
160
114
221
197
220
184
194
195
229
251
212
244
222
205
231
211
159
184
252
199
227
170
154
193
227
241
193
211
156
220
200
227
234
225
221
223
203
221
161
242
119
230
219
185
205
210
162
129
147
223
233
213
183
214
226
205
221
152
180
184
173
220
233
167
213
178
182
181
255
223
205
158
200
258
199
238
174
221
214
194
152
215
194
118
214
176
178
203
202
248
249
212
216
239
185
218
252
219
209
148
211
219
228
158
157
128
220
159
217
240
244
186
172
184
174
219
158
205
146
175
139
230
209
197
192
197
201
265
146
257
169
189
221
174
216
170
205
200
209
186
221
176
195
235
193
199
179
248
235
185
185
142
237
177
180
226
236
228
219
139
257
190
130
223
221
209
190
166
195
203
228
220
177
188
150
198
196
268
167
232
158
254
176
219
204
182
226
236
215
258
194
248
217
194
256
209
246
261
189
216
231
171
214
215
166
197
156
161
207
245
217
219
229
205
257
238
150
217
216
214
231
179
188
178
180
198
208
188
212
215
171
186
179
204
183
240
210
218
183
211
145
159
151
227
258
213
191
193
216
205
182
197
217
227
187
157
134
260
211
259
251
158
245
239
249
228
169
245
182
152
216
175
196
189
240
261
196
138
201
188
225
218
213
228
206
170
220
217
164
170
167
252
169
196
233
211
199
211
137
179
173
265
145
221
215
234
224
189
211
234
267
180
250
185
135
139
165
188
143
172
190
235
236
248
255
274
194
242
244
194
199
162
182
198
196
216
159
205
204
194
181
218
170
179
221
199
215
163
200
251
177
234
263
212
212
160
167
226
219
271
241
222
221
182
137
190
195
203
255
192
260
164
151
196
214
167
209
249
168
119
157
212
194
213
162
207
254
123
159
249
237
204
154
168
224
217
203
201
220
199
198
225
251
220
225
185
191
245
197
129
167
163
216
251
157
220
190
194
196
106
205
197
197
180
182
236
199
236
211
180
191
214
229
246
149
204
245
220
156
172
249
243
222
160
259
169
219
228
177
228
228
230
217
233
157
236
151
206
172
198
194
143
188
150
185
189
268
146
180
202
196
188
212
175
177
204
129
172
240
223
209
122
184
240
214
167
228
215
225
204
196
137
222
199
179
221
152
191
194
219
246
178
155
211
184
239
248
231
212
221
208
216
239
231
181
173
192
181
216
192
243
136
187
213
212
176
196
189
256
222
162
192
188
178
224
140
201
241
174
207
214
206
172
202
197
255
219
194
187
166
207
180
214
223
187
230
180
168
167
199
192
147
213
191
150
179
154
156
253
198
250
243
174
246
176
184
241
207
214
228
205
256
198
223
234
189
232
206
160
160
184
166
261
191
234
174
233
177
182
148
184
185
240
200
186
251
225
174
156
137
206
206
202
229
188
230
207
169
220
248
221
223
164
233
261
167
174
133
234
196
147
199
158
215
210
212
188
175
228
221
209
224
167
148
206
244
239
186
209
135
158
231
255
223
215
187
174
205
194
242
187
177
171
205
243
199
211
214
192
185
198
202
186
221
135
225
205
237
196
178
180
178
184
233
220
261
211
191
179
197
175
237
161
189
195
158
159
217
160
188
271
195
250
168
223
176
167
262
167
204
183
211
248
193
150
206
210
186
198
235
184
239
263
225
189
197
165
223
170
289
199
212
221
208
154
197
216
185
229
211
224
197
231
199
194
163
170
209
186
242
167
253
146
213
223
192
116
245
183
259
200
176
185
239
208
165
187
212
144
291
194
254
235
127
235
122
202
142
175
243
172
173
195
268
178
156
224
228
127
179
229
150
262
142
189
154
211
171
170
251
244
148
216
156
266
237
142
162
200
175
264
173
160
245
178
216
152
154
220
206
197
246
250
188
207
169
188
209
200
229
233
137
218
139
184
183
185
168
228
273
183
178
235
264
188
215
193
188
226
211
151
222
240
167
173
167
214
192
232
191
197
175
211
206
177
174
181
188
177
226
253
202
192
213
174
180
179
229
188
226
205
155
226
197
164
159
170
218
175
196
227
229
178
210
221
212
245
166
127
189
202
232
216
226
198
252
198
240
193
257
228
213
211
203
214
210
184
157
213
260
177
229
169
178
246
192
196
220
169
236
218
158
243
170
216
151
124
230
214
233
195
210
192
255
203
170
174
155
197
231
156
177
186
194
165
150
184
203
196
164
214
247
176
197
236
218
171
238
158
279
117
198
233
193
213
146
247
228
198
185
132
124
208
201
140
144
202
200
216
229
183
206
164
186
196
218
208
221
269
145
186
187
255
186
202
195
197
233
171
166
232
213
251
282
226
148
245
213
160
130
209
193
178
205
218
182
206
245
195
236
174
175
195
247
249
226
226
208
176
218
180
240
235
164
172
155
178
183
203
219
158
176
230
173
208
150
210
148
233
208
230
191
171
212
191
148
193
202
200
288
167
169
250
208
177
179
232
206
198
242
157
192
151
193
202
201
195
161
248
212
220
185
207
207
163
210
237
245
195
184
197
242
190
232
152
209
147
226
211
184
190
176
187
211
194
153
151
188
197
244
190
191
185
185
184
242
183
204
179
237
154
190
191
216
218
247
207
149
139
214
219
165
185
173
249
248
189
179
184
161
111
200
254
268
164
230
110
229
199
218
158
243
218
236
223
221
218
213
238
216
186
115
238
191
269
163
196
219
226
192
187
223
203
226
228
190
126
201
190
179
209
174
139
188
103
164
195
228
147
136
179
223
230
178
231
225
226
216
214
156
156
187
223
188
120
182
133
195
238
206
210
156
210
164
165
142
204
231
189
119
234
235
189
193
195
204
224
219
186
173
146
194
214
115
220
189
225
158
212
158
183
237
210
207
228
206
244
186
249
198
229
142
159
254
274
188
208
186
177
222
109
180
211
217
195
245
280
165
199
185
214
217
156
202
257
206
205
134
199
198
172
245
254
155
215
217
205
266
261
258
191
211
216
164
138
190
247
232
231
192
186
196
163
179
248
229
292
231
159
259
193
233
232
232
219
191
226
206
232
215
175
204
255
168
181
213
214
200
269
207
199
202
177
185
181
214
198
226
251
186
185
195
212
214
158
209
208
229
253
166
207
158
174
189
198
156
155
191
177
182
200
181
184
180
216
185
157
281
248
172
187
135
153
185
146
220
167
207
155
235
203
284
195
172
224
187
118
173
219
185
191
251
190
268
247
191
158
201
243
203
182
213
219
197
208
190
125
209
251
187
229
184
194
192
210
160
245
246
199
270
216
137
199
234
260
138
216
232
159
140
244
261
183
193
224
176
210
179
213
172
164
248
183
213
217
250
188
258
255
166
225
181
211
131
205
213
160
209
193
122
239
200
191
219
178
220
188
199
288
229
194
158
241
236
214
214
200
194
178
235
225
213
160
258
194
250
214
240
213
221
181
207
130
201
214
147
179
216
189
174
165
237
164
183
187
208
183
219
214
194
225
218
201
195
226
133
224
257
158
248
216
174
269
224
227
170
181
145
139
219
212
235
190
212
98
150
234
214
184
190
177
248
159
226
177
158
246
176
209
214
213
208
201
182
191
191
194
227
217
172
202
216
211
120
246
186
258
215
217
226
209
217
184
162
162
190
171
213
192
198
226
155
220
185
155
196
183
214
204
215
272
209
213
199
187
179
195
143
191
164
229
124
184
227
143
199
269
185
172
232
159
198
229
184
133
164
185
257
215
249
222
211
161
182
213
223
202
182
230
206
226
197
251
164
196
180
168
175
239
193
175
175
148
180
114
220
225
162
214
261
214
242
184
156
165
240
148
199
166
192
222
156
232
166
258
187
162
205
160
194
154
236
283
196
191
136
207
167
195
155
187
225
193
173
240
185
174
170
211
187
248
203
206
208
207
200
189
205
181
232
211
270
159
187
229
267
200
248
166
196
161
132
212
175
171
203
170
261
212
249
204
235
251
170
193
198
169
186
269
250
215
233
98
273
181
198
186
190
200
222
171
198
199
186
205
217
177
241
194
200
187
149
191
171
166
189
197
186
211
135
205
247
170
203
174
197
224
241
199
207
228
204
256
258
143
187
221
177
140
205
197
181
150
113
222
178
218
184
182
162
135
165
227
196
206
266
190
196
231
204
179
151
228
247
214
246
216
177
208
175
237
296
148
142
237
132
186
160
223
196
288
217
218
227
219
223
126
217
217
185
151
189
192
204
178
223
204
174
235
201
191
187
229
251
203
207
199
238
237
214
207
240
249
189
152
175
190
223
172
157
208
207
160
161
253
196
176
214
185
161
202
187
202
220
202
226
189
226
236
193
215
172
228
183
197
226
220
205
196
173
131
187
217
243
185
231
166
189
263
223
279
196
241
182
154
207
190
212
225
205
190
239
235
205
152
184
193
227
230
177
199
144
133
145
220
190
145
249
164
191
203
185
142
231
195
206
201
152
174
124
245
218
235
182
188
166
280
166
268
251
220
263
240
217
173
134
227
198
176
141
202
234
246
190
241
180
130
218
172
226
210
240
167
228
196
188
208
250
208
142
229
169
230
221
231
207
245
237
163
219
141
186
219
225
194
233
225
209
241
213
137
209
228
185
200
229
191
187
270
172
209
154
187
205
239
169
240
160
182
200
211
167
180
206
259
210
206
252
244
254
237
174
227
254
212
189
200
127
200
197
174
212
174
235
241
214
177
231
100
229
297
207
194
239
189
221
155
184
178
209
225
178
236
181
239
130
185
223
236
253
177
143
223
159
177
183
203
206
150
214
250
232
172
252
248
192
178
262
194
158
210
245
211
232
285
203
225
204
187
171
187
211
209
174
213
187
199
195
201
183
190
203
151
189
197
223
262
119
194
217
213
219
215
236
198
210
192
150
209
273
243
209
191
211
151
138
195
157
225
212
201
219
280
224
167
181
162
187
196
179
199
234
180
238
210
176
239
202
228
185
185
240
247
238
151
185
247
137
191
208
200
198
237
172
197
220
196
209
231
202
179
172
241
267
223
165
199
168
132
156
253
132
225
220
191
179
208
207
183
198
177
216
152
156
244
158
228
193
107
214
186
195
251
212
191
188
205
143
177
228
228
95
176
207
177
161
193
163
234
184
155
167
179
169
240
191
218
247
186
150
147
158
181
185
211
174
263
291
187
161
218
253
197
179
219
164
177
220
179
243
156
187
211
175
221
208
197
241
211
250
186
207
249
203
214
180
231
152
210
149
247
192
177
253
126
162
148
236
231
168
133
255
220
207
181
265
212
252
230
213
242
272
188
211
239
177
186
191
181
189
242
197
185
199
215
158
212
254
187
192
231
177
137
199
142
129
226
191
174
183
176
192
237
209
173
175
160
233
258
208
206
187
204
243
185
250
181
214
204
215
208
190
188
188
208
131
208
227
199
134
189
183
211
239
287
191
230
235
199
161
188
200
244
171
157
253
282
204
229
187
194
200
220
179
197
177
219
224
203
202
216
282
218
228
177
227
153
198
261
208
221
167
195
170
220
207
199
172
201
190
216
150
199
231
183
133
233
181
187
165
208
140
178
188
204
268
227
254
277
254
208
176
177
258
189
234
183
236
178
197
231
217
177
227
198
171
259
245
200
187
237
196
268
194
262
203
170
202
278
198
198
192
159
155
240
189
165
165
203
255
261
199
188
158
195
202
240
265
178
204
164
248
164
220
187
180
244
166
201
184
138
197
164
226
157
216
173
280
161
201
156
237
118
210
192
193
156
199
182
119
225
199
195
169
182
198
181
246
178
189
220
204
243
220
225
196
157
217
168
200
230
230
200
226
162
230
205
199
187
199
198
182
146
167
147
229
209
186
197
247
233
199
200
175
103
192
205
155
162
165
200
161
215
231
181
168
274
184
142
139
197
184
214
217
184
200
265
234
188
241
244
233
215
208
264
175
153
197
156
203
104
180
209
158
245
219
228
228
134
243
174
258
188
261
169
114
155
159
197
139
245
213
227
182
207
190
217
215
267
237
174
209
145
242
174
179
189
239
175
183
244
230
252
193
239
131
175
210
99
195
137
187
209
176
206
197
216
188
220
259
165
266
234
170
80
195
231
200
225
265
242
189
175
213
162
195
231
176
211
228
192
188
182
150
207
174
169
208
238
180
172
219
223
219
228
204
164
217
174
215
232
239
176
140
184
204
157
174
199
226
175
158
254
138
231
242
185
136
225
128
190
182
193
180
160
184
181
244
151
216
247
186
214
188
178
211
197
177
203
196
184
233
157
150
176
135
267
241
241
236
252
246
238
178
221
177
180
237
189
197
186
177
200
202
201
170
181
172
167
229
263
188
182
195
221
165
218
233
179
236
157
192
217
180
179
171
225
197
213
248
214
216
228
185
152
264
202
160
140
171
182
247
183
218
189
258
139
153
153
228
260
187
154
221
160
210
215
243
172
252
145
220
246
244
146
233
195
187
196
223
151
183
225
229
224
245
234
138
246
242
184
252
222
189
209
225
244
193
93
205
176
198
194
158
155
222
224
218
183
225
163
165
163
176
193
144
196
132
190
218
214
224
158
151
194
226
173
210
144
218
210
174
186
201
218
190
207
264
240
227
160
143
182
149
200
187
135
191
171
193
233
175
203
212
230
211
223
207
213
251
224
162
201
212
188
233
177
206
158
196
181
229
169
205
201
174
185
156
174
171
226
205
225
233
180
243
109
201
206
171
256
195
182
198
202
250
193
151
210
209
115
219
163
253
180
197
206
210
169
201
243
154
255
199
233
206
223
220
180
211
238
237
246
192
163
155
158
208
218
155
167
211
219
135
248
198
257
177
282
138
172
253
170
228
198
195
217
188
222
181
193
195
227
245
194
202
235
267
199
220
237
198
208
201
184
189
139
229
239
150
201
226
137
260
219
175
139
224
180
221
216
184
177
236
190
246
250
207
184
246
227
166
216
205
238
219
233
230
201
280
238
251
175
209
227
231
218
189
201
203
210
239
196
154
233
152
248
190
223
242
190
135
279
234
205
143
270
196
270
197
169
171
214
177
180
222
189
215
125
215
158
211
175
200
262
242
159
177
160
193
196
158
196
209
191
206
270
196
180
198
193
243
231
183
191
230
173
262
154
213
220
219
170
218
211
165
212
233
235
221
222
173
191
252
233
225
240
145
172
211
205
189
238
214
200
229
225
189
155
136
198
193
217
193
254
148
197
168
193
209
167
195
241
97
173
225
214
217
148
163
146
241
166
264
191
216
219
226
172
147
174
172
194
222
229
183
289
123
167
201
203
194
246
223
223
202
111
221
149
244
238
196
229
194
176
223
151
243
188
231
222
183
171
179
209
193
193
224
171
235
261
201
190
175
220
197
245
256
212
224
247
160
158
186
264
209
160
157
149
183
209
199
233
199
206
141
147
173
194
193
180
254
180
229
188
206
235
163
176
135
189
137
189
191
174
192
158
165
209
216
236
145
220
253
172
188
175
194
155
226
217
213
259
256
201
192
173
198
261
127
180
189
195
236
219
199
180
196
212
244
175
210
163
136
200
247
225
225
235
192
238
176
235
189
138
160
215
280
235
211
232
173
210
122
236
202
182
223
206
238
184
226
222
148
188
141
244
192
222
225
183
150
171
254
176
247
177
246
198
199
144
101
170
234
239
214
184
174
141
247
206
171
191
211
228
213
167
185
183
228
219
249
195
219
240
234
229
153
229
206
160
230
196
155
219
202
199
126
215
131
162
252
189
180
204
165
223
221
169
225
261
168
191
215
191
111
210
184
167
185
149
230
199
229
257
190
176
187
148
250
183
248
193
211
152
180
252
190
164
224
232
185
268
168
189
216
223
220
227
233
164
187
231
159
239
199
257
194
185
210
257
238
238
192
161
213
243
216
187
214
208
167
173
184
180
158
226
205
219
241
225
198
175
159
234
153
188
208
203
190
189
196
177
224
203
259
226
199
225
210
183
205
238
224
190
246
221
164
241
192
179
211
198
200
198
191
183
168
183
223
195
191
200
206
253
190
278
185
238
201
231
187
155
209
225
163
257
236
170
202
278
201
246
202
201
232
216
202
177
240
191
230
207
185
164
219
221
232
241
250
198
199
182
146
171
212
217
201
231
204
234
201
251
179
197
255
250
196
231
169
151
265
254
199
188
265
177
191
147
199
207
227
145
208
238
151
172
264
203
179
254
181
177
176
221
176
230
249
237
228
224
248
202
206
150
169
236
230
180
202
197
222
228
207
194
249
263
161
195
156
159
169
220
177
208
225
240
190
200
148
191
216
243
187
235
154
228
273
173
178
211
143
170
245
177
246
205
233
190
170
146
201
220
208
160
196
160
246
240
180
186
264
281
184
147
186
200
189
218
182
214
179
181
211
173
217
167
221
233
205
221
199
179
204
185
217
201
210
204
224
213
175
118
213
210
248
149
187
204
244
218
188
258
193
196
192
230
181
170
216
227
193
234
173
258
209
168
240
192
149
177
229
253
207
239
186
239
136
260
165
194
178
246
231
199
217
176
223
178
240
135
177
163
179
131
140
225
206
192
261
200
190
224
195
185
170
174
225
192
207
195
191
221
154
225
230
201
163
154
199
251
158
231
228
221
157
243
259
187
168
165
224
214
197
208
204
259
194
250
163
239
90
232
224
131
223
246
233
189
184
233
234
125
233
186
177
202
212
173
180
185
240
182
187
219
130
186
165
182
169
239
213
198
191
246
191
229
169
181
169
201
211
119
178
185
271
237
219
227
171
188
223
200
203
160
252
260
234
184
188
176
215
174
146
216
141
185
202
222
184
155
235
207
220
231
188
191
192
232
192
168
271
166
209
188
224
232
225
138
174
102
221
182
246
196
175
192
162
191
235
248
203
242
172
207
188
247
247
210
188
210
139
182
282
263
118
188
267
255
184
180
184
195
215
208
203
186
218
148
214
224
205
234
151
244
218
170
141
226
175
219
170
178
154
185
204
199
134
193
243
174
207
195
212
202
203
220
182
218
218
173
174
162
240
216
205
222
184
223
231
230
267
190
236
185
120
221
185
185
200
245
184
179
172
159
202
219
214
130
221
252
205
189
259
160
214
178
211
198
200
201
233
186
165
229
241
289
176
252
160
181
226
217
163
190
212
206
223
228
150
236
232
216
209
220
186
222
206
250
208
196
154
175
247
181
225
235
245
191
131
252
217
224
178
236
218
197
183
228
215
205
222
165
174
169
174
254
190
227
147
176
213
215
157
196
216
164
216
154
148
156
238
221
118
209
183
202
175
204
185
204
242
217
245
223
136
173
132
218
195
134
243
185
151
203
215
197
232
182
182
219
191
230
134
190
199
215
209
211
208
170
216
267
192
161
163
261
207
148
166
197
201
164
170
205
279
164
261
206
169
219
256
169
192
186
151
226
242
236
222
170
166
255
273
130
151
137
211
183
167
159
198
183
214
196
190
158
223
261
215
123
220
208
158
177
159
242
191
168
227
178
198
238
209
173
142
217
188
191
240
143
196
140
277
173
247
220
175
179
244
244
98
234
239
226
180
176
239
253
161
223
251
168
221
151
147
123
175
154
247
266
172
175
221
214
206
190
180
180
211
245
246
225
233
256
182
167
188
212
208
272
231
169
204
216
198
214
240
198
152
218
200
163
177
264
186
280
194
166
192
197
243
216
217
219
233
177
232
161
244
220
260
177
215
186
145
167
216
177
216
208
231
153
177
178
166
213
171
221
200
217
225
218
146
147
212
176
175
203
230
243
172
246
147
201
140
193
247
158
198
179
218
109
186
192
183
215
172
228
198
150
216
211
200
158
210
203
184
182
263
125
187
204
202
271
183
135
186
173
212
224
165
201
228
148
125
155
214
183
233
207
208
198
174
160
205
174
146
226
209
195
172
255
132
231
224
215
149
196
206
220
247
232
222
168
203
234
139
164
222
200
236
220
199
197
216
200
208
199
207
162
201
187
184
154
173
180
250
200
192
198
146
167
185
220
222
213
172
208
203
220
154
178
196
174
185
220
211
185
202
198
163
146
206
184
224
206
233
222
184
212
212
217
180
191
210
182
253
158
223
183
269
219
168
191
192
203
194
198
217
209
175
146
269
199
180
180
241
198
186
163
149
195
280
156
181
216
187
206
252
175
276
218
255
211
188
217
168
211
256
151
144
208
239
196
242
176
198
219
137
203
173
250
196
213
230
157
202
185
177
196
213
224
171
232
173
198
283
230
196
210
178
229
259
215
258
259
183
250
181
178
218
187
234
221
208
197
236
150
173
215
192
226
128
226
224
196
194
200
218
141
210
182
210
266
120
195
226
221
222
240
175
170
236
183
264
217
133
207
230
155
153
245
213
217
238
207
236
147
209
183
200
155
271
242
215
166
208
170
209
224
159
163
251
227
184
172
171
186
197
194
206
170
175
190
175
262
202
188
240
180
226
204
238
264
166
202
187
209
194
235
192
264
216
240
159
216
143
180
195
229
208
197
231
229
175
247
146
171
157
225
165
245
229
164
233
184
201
202
237
240
140
215
228
206
191
216
196
160
224
239
177
209
212
231
192
153
167
227
249
215
190
208
149
276
202
242
203
250
208
215
172
225
198
243
196
220
260
161
227
259
153
202
145
165
145
255
202
214
101
189
173
204
159
182
207
246
179
179
191
201
144
239
195
208
207
145
208
219
192
160
213
161
213
155
183
130
173
209
193
189
237
220
234
185
193
207
225
218
235
175
195
233
231
211
222
191
188
214
151
179
249
239
214
183
123
138
198
194
196
217
197
176
271
213
150
185
223
241
172
219
243
240
184
159
184
245
200
203
141
259
179
169
157
173
176
136
222
199
174
122
211
209
164
232
83
175
207
202
198
246
175
203
273
271
198
227
159
207
186
170
199
182
277
259
229
242
222
241
176
207
188
198
213
230
219
161
208
180
172
269
157
206
190
203
241
225
209
188
199
270
207
168
202
210
234
215
228
230
185
185
163
184
125
231
261
162
201
235
214
212
182
216
200
159
200
195
225
180
158
205
196
178
150
209
187
163
191
165
199
184
234
189
166
205
210
216
231
185
211
153
158
137
204
242
167
181
187
211
244
156
201
221
182
152
191
157
196
216
151
211
195
204
220
193
169
195
227
234
223
140
224
156
155
179
165
161
154
173
164
222
173
270
223
190
230
198
183
194
223
223
219
211
238
170
207
140
211
230
223
197
198
205
244
219
223
225
183
238
169
221
221
164
230
186
198
247
289
196
197
183
215
193
235
250
170
198
185
120
179
199
185
249
219
211
157
190
142
248
210
168
195
203
231
233
242
193
183
230
195
196
239
213
235
221
183
182
189
171
187
155
169
148
239
236
171
189
180
181
148
158
107
232
212
205
146
173
187
251
243
207
189
158
237
172
259
214
229
213
187
225
188
193
280
218
205
189
258
160
248
182
186
197
151
219
237
275
236
177
198
218
153
206
197
234
227
209
226
154
225
207
205
203
122
178
162
223
237
197
205
235
223
238
178
219
221
175
210
270
164
147
184
177
151
176
206
161
194
215
182
173
209
211
196
174
206
220
195
260
227
205
212
168
222
152
170
202
163
191
145
173
122
191
190
222
226
242
228
223
181
178
230
167
197
176
235
267
194
250
246
180
228
191
163
144
194
127
159
182
213
185
165
234
207
220
174
264
210
175
184
192
221
190
192
179
259
196
196
231
200
179
134
180
182
187
163
206
138
213
212
247
245
223
258
211
163
184
111
218
229
158
206
205
267
155
136
190
207
162
139
196
199
226
147
222
239
151
139
202
197
203
188
159
239
105
217
151
213
165
200
145
191
259
236
157
156
163
203
207
201
185
195
200
198
266
216
219
219
135
299
163
184
211
201
206
173
204
153
177
238
225
134
212
235
197
245
178
193
234
205
198
139
253
140
201
165
196
216
286
245
189
189
170
210
144
228
236
211
143
226
233
117
175
236
190
105
212
196
231
173
223
221
184
180
174
216
213
177
224
224
186
137
166
215
233
174
201
236
241
264
197
177
219
226
225
232
260
216
183
243
195
173
245
131
240
195
217
190
208
183
201
221
246
183
233
181
230
230
187
257
192
223
263
190
228
210
183
174
168
199
216
200
229
256
209
176
154
191
213
189
178
206
182
220
124
208
197
210
160
174
198
251
224
202
219
226
133
263
157
214
178
246
235
170
251
252
162
233
175
145
241
193
161
191
215
135
203
185
203
199
111
221
233
129
156
239
240
218
243
239
200
225
201
184
179
192
247
138
125
191
217
112
175
181
214
188
242
219
166
250
173
220
241
211
235
198
199
241
190
142
251
231
174
191
236
216
198
153
193
257
172
170
215
165
210
227
150
159
208
221
238
257
174
224
237
169
243
231
153
179
194
142
175
181
227
226
239
153
176
265
226
168
218
197
247
245
160
219
251
258
197
247
169
161
184
199
229
196
182
242
168
156
224
238
173
161
130
171
156
290
140
249
196
187
237
115
150
214
209
148
226
190
248
244
139
257
162
236
209
137
214
153
159
214
172
179
247
143
230
227
219
207
261
184
249
161
239
144
195
142
203
165
169
192
213
184
212
217
206
260
205
216
177
217
231
190
187
201
166
150
169
253
166
230
201
219
232
183
191
261
203
166
200
173
224
147
256
182
175
209
166
171
160
180
267
210
193
178
228
190
146
169
195
226
212
240
249
198
162
272
237
242
194
232
212
161
230
167
191
243
223
185
255
158
196
258
226
202
166
173
229
199
244
158
154
157
152
241
143
157
235
184
192
251
197
210
163
297
165
137
202
138
202
217
167
237
179
240
218
256
296
179
213
185
192
210
171
166
142
205
214
221
248
189
184
200
182
139
204
238
274
168
208
247
197
210
175
168
201
239
207
117
175
202
206
206
248
203
201
251
215
212
240
156
152
218
134
159
161
149
241
197
185
186
130
185
165
155
198
123
202
175
161
167
230
77
206
214
219
161
200
301
173
184
254
140
202
223
201
128
192
226
240
149
210
236
198
190
218
129
209
178
232
210
200
93
214
194
157
154
211
210
213
226
205
190
196
170
214
247
172
238
216
245
145
240
133
243
130
189
195
138
202
218
232
204
190
222
154
180
136
289
213
260
190
218
242
221
165
217
215
178
203
144
147
200
139
216
211
172
189
250
223
239
193
245
205
256
211
187
166
206
233
227
210
210
124
181
194
177
129
234
181
170
222
230
197
234
178
201
229
238
212
188
257
209
223
119
198
186
237
144
206
103
231
216
242
200
181
219
204
215
179
242
153
156
191
256
205
238
164
192
176
200
194
147
222
195
215
146
156
150
229
194
267
163
175
171
156
201
230
215
203
259
175
117
182
229
194
266
207
193
261
186
169
210
214
201
191
136
166
251
252
205
209
204
267
197
178
234
204
183
261
160
190
163
202
206
120
184
217
197
210
197
216
128
215
160
168
204
190
217
158
228
163
208
241
243
165
291
229
209
154
139
182
188
210
194
158
240
184
194
193
221
230
198
214
179
185
193
183
218
145
155
243
196
239
238
164
202
230
184
172
153
172
182
174
178
225
194
203
242
216
222
157
232
164
205
214
218
177
249
172
244
241
196
254
147
243
187
218
182
268
153
219
220
234
179
181
225
204
195
222
238
206
189
209
146
272
117
205
220
175
174
142
241
159
177
214
187
216
222
204
207
210
212
202
250
215
226
192
203
210
133
173
167
189
227
213
234
190
214
175
216
233
169
223
195
188
203
184
146
238
210
183
186
199
212
152
187
171
200
221
203
226
154
159
270
167
161
216
177
216
199
233
221
217
217
195
215
252
189
189
234
254
211
249
221
229
194
203
181
237
182
213
181
174
247
279
209
189
212
208
227
198
149
160
193
207
155
171
250
153
215
223
193
183
121
175
180
233
131
156
214
158
264
188
227
247
211
234
169
119
216
245
153
226
195
224
191
172
195
249
201
177
249
148
205
208
209
239
209
190
172
156
230
227
214
205
171
250
187
234
261
198
209
178
189
221
228
191
272
198
200
218
200
186
126
197
200
234
216
225
205
216
258
192
225
163
225
238
222
233
199
256
194
188
180
180
240
190
145
176
166
192
225
253
224
262
250
254
216
190
170
181
171
166
120
239
220
186
178
232
197
230
217
228
254
184
199
239
210
216
241
243
216
189
226
227
231
238
121
231
208
193
189
193
183
155
194
211
224
191
209
192
198
202
213
184
239
165
233
195
210
197
212
243
172
243
184
207
207
201
160
237
226
144
137
175
168
177
133
202
225
233
224
217
207
221
169
160
140
232
214
190
204
203
218
156
216
210
116
272
186
187
233
251
195
217
209
214
236
205
208
158
167
207
177
153
270
234
194
206
162
185
237
235
203
257
199
180
180
226
210
196
117
236
202
253
173
178
205
198
179
204
153
198
270
187
169
187
201
174
218
144
156
207
175
199
210
229
188
84
227
195
169
223
197
232
162
233
208
144
177
225
239
120
269
237
135
177
188
143
186
161
177
234
238
228
186
160
208
254
181
240
187
298
172
203
135
234
189
159
170
194
189
258
253
213
178
183
144
217
150
194
203
128
203
145
197
216
242
207
178
220
249
171
205
227
209
192
185
241
227
132
251
148
225
189
196
127
218
207
205
174
197
183
252
220
191
247
245
192
193
191
203
235
220
252
156
228
195
218
195
229
180
186
251
158
153
257
202
264
175
255
242
233
203
161
203
215
147
256
239
188
264
224
212
173
204
219
196
175
136
205
198
209
205
182
208
220
220
161
219
204
189
162
172
224
191
179
244
181
194
218
143
190
234
201
227
175
224
233
273
195
273
226
220
240
190
177
193
207
245
247
185
179
229
238
134
206
219
218
202
271
211
264
202
192
201
196
157
195
210
223
182
128
198
195
152
211
215
234
240
217
208
180
172
169
232
208
226
159
233
172
208
133
245
198
187
166
157
201
245
235
258
231
120
192
217
237
199
204
168
206
196
159
183
199
221
190
121
246
232
206
170
223
179
220
179
213
194
202
172
201
230
164
262
216
206
145
204
221
203
222
183
265
192
167
214
262
191
207
217
178
189
144
186
225
210
143
168
222
183
216
173
227
239
188
194
196
140
212
164
189
216
248
224
197
212
222
213
163
144
226
228
243
222
182
261
192
201
189
223
189
257
170
214
145
231
230
233
166
178
206
222
238
205
240
139
151
214
242
206
172
157
121
173
202
196
147
209
238
132
255
151
162
175
212
218
208
225
205
200
299
218
206
174
190
131
219
232
217
254
213
232
221
216
203
245
187
202
205
221
233
236
231
264
186
207
223
181
224
241
208
172
232
187
257
121
215
212
220
227
230
264
198
144
155
246
186
163
190
194
194
208
209
213
204
163
191
183
241
167
179
165
177
129
236
197
179
208
226
189
236
200
219
178
194
204
224
171
234
191
225
195
182
176
203
175
252
136
231
258
178
257
211
220
194
180
214
173
259
175
213
200
147
234
211
220
231
212
260
195
219
181
205
206
177
199
247
161
186
170
170
222
244
210
235
200
161
187
221
213
242
276
114
141
190
234
193
225
199
184
241
249
201
185
165
221
184
254
280
194
174
167
212
216
229
194
155
128
171
242
152
198
260
151
250
171
263
214
234
211
213
233
235
171
203
252
213
196
210
190
195
244
241
173
178
165
158
226
172
222
194
211
192
239
134
225
209
190
208
212
269
202
210
206
237
236
242
172
149
191
216
165
192
228
231
176
198
190
221
230
208
119
216
223
205
192
193
198
191
190
119
212
141
183
197
124
234
187
236
232
236
234
216
168
149
168
211
184
116
185
184
244
180
169
206
190
173
248
190
231
166
219
287
191
198
126
141
222
241
133
179
200
194
211
236
174
190
260
163
208
257
251
175
178
230
258
197
155
209
243
152
218
207
184
207
156
130
131
173
193
215
250
206
184
196
231
252
261
187
170
196
184
181
176
170
230
208
197
196
195
132
159
240
201
212
214
244
169
220
215
188
262
246
171
183
174
216
138
208
241
221
134
241
129
229
216
216
202
173
222
157
146
189
209
189
212
190
230
196
189
228
189
214
247
191
183
226
213
254
178
174
183
223
253
205
197
235
204
280
186
116
218
221
226
222
186
244
156
258
184
269
212
219
188
148
178
171
189
156
168
159
236
226
201
153
190
230
205
179
203
197
224
195
173
167
195
140
164
234
199
187
162
236
163
159
171
224
200
219
250
160
250
181
206
135
168
228
263
251
191
211
203
197
162
226
233
158
245
218
186
231
218
192
170
231
161
269
78
160
211
197
128
244
250
206
238
167
163
311
164
185
219
239
194
213
203
216
146
229
216
238
198
162
165
132
221
198
166
215
174
243
205
208
160
229
225
222
215
219
213
203
122
216
173
190
191
191
179
169
217
114
235
240
186
179
158
235
210
187
168
203
150
135
184
237
203
197
226
144
193
235
151
177
187
196
168
209
218
149
197
181
159
235
257
128
254
191
188
242
149
216
140
200
232
146
252
256
204
185
185
216
181
167
219
226
125
228
159
218
210
202
191
246
214
184
228
194
200
181
164
178
194
224
195
180
211
255
209
230
199
193
208
190
242
166
239
259
201
211
192
168
245
229
148
191
232
170
174
196
202
191
200
164
170
151
179
238
200
208
205
241
200
231
199
196
137
201
208
194
218
204
184
188
219
209
257
212
191
281
226
148
169
209
172
171
199
215
197
177
149
247
150
203
196
217
231
217
228
194
215
246
202
183
229
236
179
176
149
173
215
151
223
214
227
259
148
242
177
238
221
221
202
173
199
192
211
178
137
162
199
166
183
217
219
179
189
150
231
201
238
211
218
216
156
187
266
188
237
221
185
226
209
220
179
233
160
182
181
163
223
162
276
181
99
160
191
166
249
192
168
152
228
194
280
195
211
203
229
171
227
221
215
179
223
196
258
199
232
157
108
195
240
205
207
265
184
224
186
160
210
139
180
179
204
262
204
212
197
208
120
199
211
197
168
256
226
203
139
187
182
198
251
249
178
124
184
211
210
159
213
189
161
196
197
209
259
189
149
208
156
175
233
203
202
170
140
182
201
226
172
243
304
208
153
197
213
174
222
158
219
226
169
231
214
224
179
190
291
101
202
220
169
204
126
259
209
246
181
236
231
156
180
94
150
193
202
175
180
249
241
223
229
191
153
260
177
247
265
181
195
224
182
206
145
198
237
225
225
185
192
219
191
241
229
224
225
253
197
230
151
182
179
235
199
223
221
223
187
192
174
222
134
275
225
213
177
236
219
216
113
227
157
205
196
243
222
195
142
266
153
188
163
193
202
195
210
201
226
220
186
203
207
205
153
161
213
138
169
197
174
193
198
249
175
187
170
160
208
178
143
173
145
150
205
193
191
221
190
219
149
217
230
183
179
184
202
207
150
219
217
223
215
211
210
248
227
237
136
167
258
185
164
246
182
187
157
227
207
212
207
164
230
137
169
171
263
233
218
164
208
218
182
208
204
234
244
255
261
200
256
153
206
232
205
237
243
192
100
212
186
231
178
151
255
210
182
214
207
223
205
209
195
187
213
184
225
165
203
167
220
187
211
221
264
148
238
184
156
182
179
208
105
144
121
216
269
232
176
176
269
213
250
137
190
190
189
144
177
187
134
159
187
206
182
167
237
212
184
82
237
216
142
235
250
235
162
215
251
228
156
171
224
177
166
153
119
193
202
203
265
221
202
207
214
138
175
215
220
163
186
249
207
236
200
215
240
227
190
199
227
202
189
182
216
222
193
244
180
150
172
198
214
191
174
250
171
179
188
205
245
237
198
193
185
165
266
205
238
205
241
212
179
250
201
219
209
229
175
223
162
220
179
205
223
233
176
235
146
221
191
251
185
189
234
202
174
215
205
219
194
159
150
155
157
131
218
229
227
205
189
201
187
223
215
170
244
195
224
148
209
230
195
147
273
167
204
142
259
264
202
219
190
228
183
191
178
254
187
204
211
165
204
185
226
216
226
221
142
206
190
200
190
195
205
180
185
205
220
158
205
228
264
225
173
195
191
211
186
201
155
207
140
156
239
225
207
219
234
193
211
229
230
186
244
206
179
219
174
172
206
228
248
222
211
226
154
146
184
189
210
243
222
127
181
200
215
209
169
176
198
199
205
151
184
189
233
236
186
143
192
255
184
159
197
168
275
143
197
196
217
164
209
221
193
242
196
217
245
200
189
160
152
227
229
240
129
217
187
248
208
169
254
229
165
178
174
253
150
250
247
181
171
189
178
194
218
201
276
186
179
182
250
170
216
247
175
242
176
213
227
227
142
241
159
258
246
152
224
239
215
205
209
185
168
227
224
254
226
173
258
190
259
187
234
155
165
210
166
267
151
167
224
216
191
172
174
231
220
157
198
163
192
229
200
186
210
225
207
222
219
210
201
234
181
90
178
188
214
216
192
212
246
205
243
209
246
248
188
189
218
224
198
208
179
218
260
255
239
222
171
220
169
240
212
258
111
172
143
152
218
142
207
180
103
239
160
202
209
190
155
174
145
158
140
158
204
194
171
244
157
192
239
249
158
203
154
244
178
155
155
173
225
130
272
148
147
127
129
209
187
255
195
231
216
270
196
202
183
173
220
199
236
208
177
155
170
200
189
247
221
183
153
226
102
215
204
125
269
229
235
220
153
212
210
141
269
190
141
228
227
209
168
217
232
174
215
209
109
165
203
230
207
195
252
131
208
203
218
199
197
205
133
208
218
208
191
147
244
182
222
251
202
241
206
169
183
228
253
200
145
212
191
241
262
146
103
166
224
209
195
178
201
207
143
152
221
173
135
220
194
240
156
243
246
259
225
186
231
124
234
200
279
189
234
222
183
171
246
256
213
204
228
224
192
198
231
210
213
156
142
226
202
206
184
202
216
196
200
217
262
193
233
198
171
211
184
162
179
164
154
251
254
199
283
193
220
241
269
238
225
131
247
219
190
252
206
172
222
183
209
197
235
204
180
178
208
181
236
205
224
213
197
180
176
234
278
218
193
176
203
205
196
179
221
207
216
179
178
191
178
196
255
183
170
186
226
187
190
202
285
189
189
158
201
235
151
233
199
248
232
165
204
106
204
167
196
236
240
197
123
207
181
222
212
244
219
209
252
182
242
203
155
142
231
188
191
248
225
198
233
171
216
194
276
201
221
199
262
160
183
170
230
221
210
199
160
224
241
185
162
225
197
201
229
235
210
248
211
167
200
193
220
111
223
156
210
221
246
201
189
186
146
148
266
187
224
229
179
208
173
209
191
209
185
240
204
252
268
211
181
155
210
202
235
188
192
263
213
213
194
231
217
189
181
206
203
202
191
196
138
168
205
242
157
241
235
190
181
242
206
189
208
231
209
245
195
228
249
163
264
212
213
160
253
172
176
207
203
247
263
211
208
220
195
203
203
230
206
245
192
134
229
119
222
238
208
176
201
219
216
184
235
181
231
183
120
245
188
179
150
149
272
231
226
183
186
126
167
177
177
193
262
217
171
142
233
214
164
204
243
196
252
186
217
199
174
215
175
236
229
217
214
144
211
141
228
182
263
178
272
216
169
109
219
176
199
196
232
149
169
163
180
146
176
196
150
179
208
186
283
164
161
175
279
266
173
189
202
274
179
188
202
185
184
198
229
252
189
230
162
208
145
155
196
212
202
225
224
177
255
159
255
201
207
255
175
246
228
211
153
178
252
177
196
221
184
192
208
157
208
193
167
214
194
221
248
244
177
136
196
231
176
245
194
183
207
156
203
192
133
220
261
173
195
229
186
176
174
251
186
204
189
211
179
173
163
234
181
170
201
183
182
161
237
164
195
238
186
185
131
194
245
190
182
202
214
215
233
199
207
122
202
237
235
159
211
182
168
212
226
191
181
160
133
204
205
198
194
194
255
226
194
231
226
160
161
203
152
204
216
183
235
183
190
221
185
148
184
226
150
222
203
187
218
209
234
227
194
170
242
191
138
244
182
203
210
229
235
180
179
149
196
213
289
170
230
264
189
268
242
251
94
143
192
252
159
222
166
191
287
161
173
179
172
236
229
167
191
181
224
145
223
214
138
227
211
130
210
235
205
208
205
180
144
245
155
214
186
193
186
216
200
210
193
206
232
184
227
160
261
203
212
200
165
268
193
186
196
178
169
234
145
147
194
255
145
204
221
227
153
183
189
168
247
205
205
175
216
223
216
204
173
198
207
218
145
242
140
164
206
181
188
238
169
262
151
209
161
148
170
214
164
206
240
184
182
202
165
148
168
224
196
189
228
267
224
217
242
278
180
191
260
207
199
176
181
210
171
246
220
167
169
219
192
208
223
220
148
280
220
178
207
208
176
220
220
198
178
111
208
245
192
210
208
209
160
108
230
247
150
225
186
245
184
260
219
158
228
197
133
232
205
210
251
162
192
235
226
216
185
179
133
122
260
249
204
215
181
236
220
233
263
147
194
239
227
193
178
227
218
214
196
236
222
162
236
256
156
159
208
189
229
134
237
159
196
169
266
161
211
239
221
210
274
175
142
201
242
235
227
178
205
182
168
219
156
232
172
212
221
195
158
188
224
162
181
214
197
212
214
132
126
233
198
208
238
244
219
198
225
210
229
165
210
152
231
225
224
255
249
192
175
176
235
160
214
194
110
213
187
231
151
223
204
186
179
221
220
213
182
191
187
225
145
183
174
231
149
210
230
204
168
163
153
194
200
188
220
246
197
230
203
155
224
165
174
160
130
185
222
244
185
257
222
215
205
222
185
198
206
187
205
221
166
186
220
178
198
207
200
141
207
213
197
194
206
244
238
191
130
220
110
178
210
189
201
263
220
156
200
222
210
253
190
206
200
187
157
205
176
169
184
196
184
168
170
160
211
198
227
185
238
222
238
195
183
209
249
178
177
149
183
256
170
216
186
193
154
238
201
196
218
214
167
171
181
188
259
303
177
226
262
237
175
154
178
232
169
176
159
256
148
199
187
170
202
257
234
136
169
209
173
196
193
225
203
240
197
216
158
227
138
257
227
197
194
226
166
219
196
243
169
247
231
235
226
207
206
251
231
238
212
150
218
149
214
183
266
174
177
231
218
195
170
197
226
218
203
270
150
118
202
182
207
239
194
195
230
229
179
172
215
233
223
196
218
187
179
232
215
164
243
191
221
191
188
174
142
187
171
199
214
196
141
126
155
205
250
220
255
171
248
166
260
213
172
185
237
189
216
251
163
211
244
172
247
226
235
143
180
227
161
158
257
144
193
183
227
207
159
216
213
212
274
193
156
244
183
205
169
194
186
227
198
226
246
177
190
160
221
252
153
245
187
208
189
159
227
196
207
170
181
177
267
141
212
164
174
224
153
216
236
171
201
194
229
155
148
112
191
252
183
222
235
186
219
110
166
232
240
268
223
190
216
176
192
155
227
205
219
238
214
212
172
218
146
228
217
196
212
202
158
196
233
209
203
174
203
141
177
227
155
170
220
254
214
236
169
226
167
208
193
156
191
159
225
212
178
186
168
162
190
270
228
176
137
231
181
195
199
204
165
179
214
158
269
187
164
242
181
123
158
222
157
210
222
116
217
236
181
188
187
213
166
191
160
247
190
249
249
274
189
183
180
194
194
159
174
150
193
236
117
202
254
90
196
184
232
222
247
169
216
238
209
231
242
184
175
244
157
162
230
146
172
216
232
170
210
207
193
190
197
228
254
232
180
165
225
213
237
224
209
146
171
140
197
197
180
188
196
213
225
167
188
147
245
201
183
176
220
179
146
187
206
212
221
200
252
179
208
188
216
233
193
208
158
204
216
222
228
208
136
185
132
198
236
165
226
175
194
230
155
204
170
165
207
222
253
170
179
201
165
175
118
160
236
166
139
234
204
140
190
203
216
223
198
193
197
161
243
243
191
210
168
167
171
224
223
180
198
270
161
237
153
207
180
201
161
205
160
204
200
187
152
202
196
180
192
188
227
198
223
216
188
166
206
195
231
176
220
216
160
231
245
236
185
176
209
223
223
230
169
191
252
190
266
207
210
183
142
223
164
139
189
219
213
179
205
226
148
239
171
224
168
168
230
240
161
166
242
264
200
226
221
135
219
191
163
148
201
216
195
216
233
228
182
199
168
256
213
154
237
214
254
154
247
246
225
177
218
193
227
217
227
192
157
278
132
217
184
205
130
215
229
163
175
224
181
186
218
176
208
220
245
164
229
192
187
263
164
254
183
152
176
226
251
245
167
227
168
156
190
221
190
179
192
240
194
222
166
199
230
171
226
229
186
201
149
204
228
231
179
191
166
177
207
234
144
214
216
212
133
175
239
211
182
188
222
174
170
158
146
183
220
240
223
228
134
210
228
233
207
186
169
223
153
175
180
158
231
258
199
187
180
196
182
174
188
152
232
179
121
224
174
233
145
155
207
201
181
219
198
168
234
230
225
266
161
209
220
177
192
180
232
288
209
198
178
156
245
174
173
156
209
255
236
236
144
231
194
203
153
231
193
169
216
141
207
220
216
216
143
180
206
253
189
234
222
150
180
195
204
225
176
170
224
242
139
236
130
162
186
194
152
191
157
161
183
252
181
266
191
206
176
190
220
179
164
187
210
164
202
188
154
197
221
233
131
285
235
233
260
247
181
210
176
219
167
226
164
256
192
170
254
173
228
145
189
244
232
138
198
271
282
148
252
162
248
167
219
147
279
215
257
182
217
190
218
256
144
240
243
184
151
201
191
207
256
199
222
173
230
187
178
237
160
221
220
159
244
174
237
101
198
226
156
214
207
275
205
126
205
169
251
195
172
203
205
239
215
224
216
259
254
231
236
219
176
204
250
205
262
177
194
204
219
245
220
176
213
194
214
144
224
213
212
210
177
197
183
273
188
213
181
185
206
211
212
224
265
204
148
212
220
236
126
234
156
164
143
223
193
180
190
216
219
171
207
239
207
213
212
220
235
200
197
162
112
163
217
225
231
132
168
243
220
185
229
258
186
205
156
247
146
247
236
177
248
249
181
228
195
204
170
142
179
240
117
232
172
238
230
202
278
153
178
164
216
235
181
162
224
246
174
200
144
153
134
179
173
259
239
186
215
157
238
147
210
128
235
237
147
211
203
191
209
187
230
144
194
237
236
228
217
183
124
228
194
231
151
214
189
242
153
215
160
208
235
213
229
159
218
176
218
141
176
228
214
176
167
236
182
241
203
210
226
245
244
225
152
202
220
220
173
230
237
151
161
188
180
167
212
186
215
188
220
190
226
161
176
251
197
231
202
198
187
170
219
221
131
228
174
243
249
184
186
210
197
217
191
230
167
192
192
251
155
138
236
201
259
190
190
167
169
232
198
195
179
172
179
147
161
150
192
213
181
213
183
143
226
240
180
139
186
155
219
230
219
192
200
176
158
270
189
222
201
239
209
209
245
227
254
154
201
201
281
249
213
206
195
199
202
141
241
230
174
237
166
253
218
255
256
173
191
208
127
256
212
215
270
136
216
188
164
218
212
189
216
172
184
183
226
219
210
156
219
182
246
202
161
162
201
178
166
246
228
153
202
150
226
229
179
227
207
235
180
183
208
239
169
229
217
218
232
133
207
151
178
181
222
215
228
236
111
245
210
218
197
230
186
162
165
197
224
170
180
196
196
219
168
213
245
241
213
176
175
209
198
224
193
237
227
194
134
212
204
204
222
190
200
232
189
228
177
180
209
221
194
191
164
230
221
135
224
177
241
183
163
192
141
220
189
205
148
159
203
212
207
177
250
239
188
223
209
190
200
232
279
223
232
276
218
186
170
250
256
230
219
181
140
130
155
184
213
190
193
215
197
233
188
184
225
164
195
192
243
202
258
180
222
220
170
158
217
188
216
219
214
189
183
226
210
250
191
168
220
171
207
213
189
211
158
200
182
150
180
212
213
276
209
232
232
219
234
166
185
243
215
152
146
113
214
253
160
214
177
188
239
217
193
179
231
221
162
208
232
203
195
177
195
249
175
198
222
194
221
167
190
194
210
200
219
142
173
235
195
188
217
175
172
203
220
198
98
252
245
197
199
205
219
218
204
225
206
258
201
254
214
197
115
161
182
180
225
175
183
194
219
251
128
232
234
164
198
224
236
219
176
207
176
226
163
207
204
211
181
155
227
187
211
210
186
245
257
250
223
208
211
205
205
173
213
254
195
184
199
167
186
219
206
203
248
232
220
237
255
200
211
190
240
237
147
215
192
159
214
227
172
229
244
72
193
191
146
206
223
250
222
224
257
177
183
243
194
231
212
164
125
137
185
267
209
162
289
192
209
182
246
165
239
201
225
231
230
184
190
170
210
247
212
207
225
205
216
243
150
225
183
244
245
226
216
206
145
155
230
212
209
225
184
228
251
192
186
142
272
222
228
187
223
177
185
184
191
173
194
251
230
221
255
189
157
195
186
214
201
192
217
231
217
252
210
205
189
186
228
248
165
137
244
211
123
255
162
201
200
131
220
229
223
198
196
188
192
238
177
214
202
212
204
151
199
184
212
171
186
215
145
220
254
160
152
173
302
172
237
236
188
209
194
213
245
218
213
133
183
238
181
216
176
174
197
201
219
120
173
178
135
210
205
241
226
182
174
170
193
204
98
134
188
220
148
198
172
211
131
226
166
189
183
219
166
195
236
175
172
195
206
199
200
203
221
168
173
224
191
227
244
174
211
143
211
232
220
154
217
223
155
147
223
247
174
218
104
196
213
193
212
185
213
250
270
169
160
199
205
186
148
241
135
176
191
196
117
198
198
225
128
208
141
141
201
172
228
179
199
177
153
207
198
209
106
166
184
201
160
191
221
281
219
92
239
156
239
243
223
111
190
200
172
164
192
223
209
181
259
161
207
168
208
197
176
265
156
237
166
249
218
230
243
211
258
192
174
172
179
157
205
168
172
178
162
234
201
149
158
248
179
165
200
137
153
205
192
197
176
159
214
238
180
166
209
213
252
140
192
201
252
190
187
250
236
186
197
201
221
135
206
172
144
227
175
184
173
150
201
143
214
202
218
230
175
231
204
202
260
228
214
182
194
183
217
154
244
192
260
184
241
161
197
155
174
206
234
174
192
138
205
289
239
188
189
163
175
239
234
302
186
215
130
115
223
270
263
236
221
206
213
178
228
130
192
258
218
220
251
184
206
177
194
192
201
209
226
255
160
190
122
168
171
188
168
170
202
211
219
234
214
138
229
232
175
195
271
179
223
179
241
197
158
230
179
212
219
231
208
224
190
209
169
158
141
246
197
170
149
203
133
195
241
149
146
198
167
196
199
235
146
217
157
225
244
161
233
175
174
204
257
247
227
204
249
121
208
192
200
187
199
191
207
160
194
183
196
142
196
204
205
181
205
191
180
208
280
245
287
203
186
217
193
198
155
122
197
204
214
172
207
216
218
237
212
221
210
207
182
231
143
247
251
175
209
188
200
136
160
151
187
187
211
236
155
219
230
140
209
231
196
219
213
179
219
218
156
119
185
197
204
219
236
225
225
219
274
175
194
218
252
181
161
241
212
86
234
239
181
181
199
156
169
203
171
259
183
261
174
176
227
249
240
172
209
129
237
251
213
169
199
215
219
177
222
204
228
195
162
131
202
175
224
204
227
216
182
180
255
239
215
227
161
207
204
205
199
205
236
141
200
181
157
228
180
211
214
222
221
210
227
209
186
194
131
222
172
234
192
180
222
184
204
141
178
225
194
194
267
163
238
218
215
220
163
225
257
211
239
259
204
238
178
174
226
230
173
202
258
183
182
167
212
180
174
187
194
196
225
168
157
236
124
233
207
122
200
193
231
232
221
191
175
219
194
187
228
185
214
230
245
235
272
140
177
220
185
229
223
196
167
268
199
165
238
212
212
269
184
250
231
215
126
122
165
205
197
109
127
145
202
142
228
209
183
193
164
173
172
141
223
191
215
173
167
138
222
235
153
172
190
201
200
144
193
241
244
186
175
234
197
159
256
180
223
123
187
216
207
134
246
199
137
190
202
155
198
219
209
166
212
150
201
207
166
137
218
243
222
179
220
226
217
211
145
185
230
232
189
193
191
254
137
247
259
234
226
208
211
237
224
157
201
140
136
214
210
178
170
247
171
211
159
188
176
152
154
180
197
168
247
202
223
183
229
274
172
237
265
234
242
176
202
189
216
227
230
237
183
228
201
176
237
177
243
147
181
212
239
227
291
248
227
184
232
205
212
251
213
271
192
217
144
186
213
149
205
210
142
192
170
179
234
228
167
240
197
220
192
186
194
229
147
217
186
217
178
236
212
181
215
208
166
206
169
251
185
207
174
181
195
187
152
205
171
234
128
207
191
232
239
229
160
203
215
198
197
211
139
180
152
184
253
169
167
242
214
232
170
201
202
213
198
220
186
230
236
204
209
194
195
246
221
224
159
180
245
190
209
209
233
188
194
217
192
175
222
167
220
222
182
185
205
202
232
214
213
229
227
233
189
168
243
182
219
189
258
168
235
220
240
249
227
257
235
205
154
211
236
204
193
189
207
172
216
233
185
164
209
186
165
204
253
245
193
190
209
236
119
244
221
191
182
238
223
148
228
239
174
201
219
207
204
205
234
233
186
185
155
226
219
259
193
232
218
163
194
185
247
204
223
237
232
274
266
206
190
136
237
166
179
174
132
149
191
215
147
228
156
185
196
204
226
208
110
201
232
172
117
163
190
107
224
182
155
239
145
215
215
215
187
196
242
236
289
151
252
147
204
206
212
178
262
211
241
153
125
198
102
168
229
203
209
246
170
165
183
221
166
209
145
188
127
191
216
147
233
174
227
160
183
181
177
181
231
206
190
225
111
192
226
177
261
220
197
272
143
181
227
216
187
241
156
214
205
226
245
217
200
196
230
167
107
219
198
155
237
206
194
114
199
200
172
196
208
239
207
220
252
171
230
205
207
195
209
205
194
169
217
197
209
135
206
189
163
258
233
244
166
182
158
156
215
138
143
226
204
192
194
207
214
158
239
176
195
252
219
238
210
248
144
206
191
187
224
240
169
252
200
239
211
185
196
165
204
226
239
197
220
144
210
233
158
215
134
196
150
146
235
154
173
238
193
245
238
164
181
268
178
241
230
252
195
254
190
281
212
172
166
250
196
183
211
150
215
235
184
235
222
180
279
158
245
186
148
223
205
184
174
222
237
168
205
116
177
172
226
204
228
151
176
166
238
209
263
164
225
128
202
183
199
210
189
162
243
187
140
234
202
224
247
182
143
229
213
206
195
203
219
113
140
219
157
243
211
185
188
192
173
208
185
176
248
222
229
197
163
208
191
204
222
222
240
156
258
224
196
230
219
176
231
214
258
209
207
254
171
131
177
207
242
314
256
223
220
191
221
220
224
204
225
234
199
141
251
140
194
243
239
173
209
209
232
216
207
169
213
187
204
188
149
191
206
172
190
234
196
281
97
149
181
246
156
228
189
205
218
211
175
187
259
244
83
209
262
218
237
134
150
214
188
214
199
200
110
180
172
184
182
176
178
186
201
225
141
184
203
227
218
246
197
203
230
229
211
237
190
155
280
173
169
176
180
205
183
189
204
174
228
169
170
178
135
178
197
197
184
172
236
205
173
167
153
268
206
234
190
171
198
179
199
180
183
153
216
243
273
207
250
201
156
221
221
219
182
172
222
249
194
254
249
193
210
272
124
236
210
178
241
213
154
244
217
174
141
274
279
195
221
191
208
249
234
265
257
224
228
193
211
228
191
194
284
139
240
234
179
223
209
211
178
211
248
178
231
245
253
249
201
232
214
258
196
201
152
214
240
187
180
290
131
174
224
200
150
184
272
223
194
212
185
235
256
225
174
210
159
224
202
241
197
212
233
224
247
263
234
136
233
213
180
176
180
191
247
225
203
225
150
157
218
193
210
234
203
236
215
218
185
163
183
226
251
167
206
184
216
250
209
206
247
192
226
149
158
191
232
173
183
210
275
198
199
243
163
232
190
220
227
247
174
203
164
167
167
194
211
146
166
146
184
207
207
207
124
239
242
170
201
196
233
247
212
188
189
221
171
246
201
109
177
199
190
183
209
214
232
133
223
159
234
173
157
183
230
168
137
248
186
192
137
120
162
144
234
205
135
164
225
175
234
221
203
212
207
187
166
226
189
207
201
186
213
215
201
192
225
183
227
218
222
196
195
218
164
173
190
189
175
231
217
236
261
231
188
198
176
236
205
203
226
191
173
206
231
203
168
147
119
163
173
245
209
207
205
220
143
238
232
215
205
183
219
160
228
178
234
182
226
221
239
184
159
124
193
183
198
252
221
171
213
154
134
211
243
227
206
227
236
225
205
187
234
202
219
179
200
196
244
192
256
224
176
229
140
223
182
165
161
231
232
261
238
216
241
198
226
161
187
166
231
230
225
234
194
191
169
171
163
195
241
206
147
195
167
226
244
182
178
221
145
190
174
189
214
215
260
135
190
193
130
159
183
220
211
199
228
235
167
173
230
164
160
143
199
212
176
215
152
195
252
225
194
203
202
286
197
153
227
222
158
209
271
164
128
190
156
227
149
162
227
165
196
243
214
224
275
226
146
179
193
217
183
149
245
175
196
167
160
200
214
189
231
135
208
156
212
205
146
180
173
228
200
206
236
253
170
217
230
197
157
217
244
214
187
139
207
231
217
193
204
194
198
248
215
229
184
166
178
152
140
115
208
193
174
183
234
231
177
172
181
221
218
202
229
175
262
246
219
198
199
209
263
202
211
212
217
212
180
243
199
210
204
157
228
185
222
172
141
232
125
224
222
195
170
196
254
174
229
138
202
219
172
183
251
247
225
221
110
204
265
249
196
221
193
175
218
150
205
204
184
163
194
167
167
152
258
197
147
194
216
200
202
203
213
173
218
111
209
249
163
149
237
244
235
237
179
181
158
147
179
214
197
240
238
276
189
184
190
197
136
148
234
248
226
215
199
211
209
224
237
167
180
201
186
184
224
246
221
187
149
189
173
191
184
110
236
202
240
145
189
185
198
233
203
213
229
255
244
208
238
224
205
238
123
163
191
169
202
189
176
145
249
223
199
201
190
274
246
200
252
261
211
247
234
190
233
234
199
225
228
185
238
187
135
150
234
218
214
251
179
219
171
187
191
222
226
238
237
171
257
178
193
234
210
231
231
179
211
251
202
222
166
173
181
155
159
185
138
183
215
207
163
203
242
213
187
222
175
184
179
223
169
218
236
162
215
188
227
186
163
248
214
212
250
180
193
139
258
225
215
181
191
186
165
224
166
198
226
215
232
227
183
264
114
164
142
239
209
237
180
215
189
192
249
224
285
199
192
191
214
158
221
183
176
214
204
211
229
266
237
192
177
216
245
182
187
206
224
251
206
222
196
190
177
216
133
116
185
237
210
201
227
209
252
226
198
205
173
226
253
212
235
214
156
203
215
248
188
205
162
209
182
207
173
164
240
162
236
186
226
199
234
217
262
207
187
206
212
171
123
194
191
269
183
244
180
174
183
233
221
220
210
217
192
167
140
195
188
204
260
222
191
192
185
246
205
198
151
130
225
191
244
185
193
227
258
163
232
199
169
167
163
202
234
225
205
155
147
163
208
196
224
211
200
169
203
179
233
289
218
196
218
207
175
225
250
155
175
162
232
174
232
171
219
195
230
233
213
158
203
195
184
215
274
203
251
249
235
242
191
204
275
151
198
151
205
163
259
215
186
242
170
235
218
257
206
212
162
161
143
251
211
176
233
242
155
198
194
165
201
157
205
219
223
239
228
149
172
170
207
192
233
248
224
254
221
214
149
163
204
211
191
201
248
206
182
186
209
213
273
202
191
228
148
183
185
206
206
216
161
245
177
208
228
142
216
237
241
165
246
225
145
215
198
224
166
173
270
229
222
234
178
224
216
200
212
150
201
222
170
237
304
202
241
188
204
217
177
196
230
202
239
185
221
226
229
213
213
247
209
147
223
223
244
232
159
197
85
183
186
144
261
149
219
253
201
155
183
190
256
196
207
257
188
143
179
216
199
183
178
192
210
173
223
173
198
226
172
230
195
218
204
144
260
205
240
246
120
257
243
179
245
226
222
222
204
246
198
205
223
190
182
171
255
245
274
173
155
216
152
187
183
180
214
225
271
150
234
175
252
205
229
212
202
184
129
201
217
140
238
180
183
182
229
198
203
172
216
192
190
223
250
162
175
239
125
246
190
227
167
257
169
229
197
206
218
141
216
175
177
213
164
284
142
277
207
207
241
200
187
234
235
214
184
149
200
205
147
215
247
192
233
229
171
220
250
148
234
179
224
142
210
188
190
215
205
182
201
177
209
170
191
214
233
244
196
253
202
163
179
195
216
207
218
252
177
191
179
194
196
240
191
252
193
237
115
164
161
249
218
171
179
260
236
184
229
240
166
205
240
195
213
161
176
230
241
225
175
202
196
178
146
189
229
167
263
252
267
216
138
185
211
215
237
222
180
225
292
233
192
231
225
213
228
207
218
157
226
203
243
199
226
195
211
213
232
189
227
259
200
250
252
177
178
165
192
185
240
231
158
176
250
205
203
171
206
172
205
230
227
240
198
174
203
245
163
207
191
201
205
167
262
219
172
170
196
226
185
241
214
162
205
221
199
140
218
182
208
208
197
165
265
163
167
148
191
198
131
185
198
223
274
217
241
203
267
229
182
257
242
194
169
201
198
284
238
157
161
189
197
146
228
278
222
170
190
203
164
242
107
240
255
272
170
175
210
157
188
225
188
169
243
123
186
166
118
190
191
172
211
199
177
192
164
215
233
151
196
164
173
178
176
199
150
230
206
178
262
199
174
136
205
183
190
174
192
193
199
218
217
168
162
215
182
222
180
180
224
202
226
201
172
218
212
173
173
238
179
221
188
161
169
166
181
218
178
277
186
222
234
260
207
138
177
246
86
192
191
199
232
206
249
168
98
218
232
85
235
197
217
254
228
183
204
172
189
115
202
181
171
268
238
193
185
225
238
148
232
186
224
192
225
228
206
189
275
215
189
183
228
188
159
167
288
193
187
191
206
151
192
261
231
242
147
207
214
200
170
223
160
191
244
174
171
250
189
183
219
197
220
167
223
236
225
209
234
150
198
244
220
196
196
170
194
138
203
239
152
207
194
245
192
157
221
223
207
177
151
162
158
202
233
201
233
154
220
228
222
230
224
170
234
220
217
223
185
175
222
197
201
200
146
229
207
185
160
214
246
182
248
178
157
202
230
141
259
220
221
231
241
193
244
167
153
194
197
213
235
272
187
192
223
148
223
181
234
249
197
244
212
241
238
186
150
216
174
167
186
273
180
196
175
186
181
228
154
91
176
180
218
195
158
181
197
204
270
176
171
179
236
128
183
188
187
120
201
265
223
229
205
201
194
103
198
243
142
166
224
176
195
149
187
230
182
193
220
209
128
179
205
139
215
224
231
228
177
201
251
241
240
162
172
231
197
197
211
204
145
216
200
160
256
199
106
202
186
171
187
262
243
209
177
223
182
189
213
206
226
193
179
244
212
163
241
175
302
165
216
177
244
232
182
204
232
144
242
157
209
179
141
160
192
193
210
142
229
262
198
196
250
234
146
247
192
157
176
211
232
159
162
177
193
195
173
244
255
182
160
183
220
213
224
172
166
109
161
240
187
209
166
176
251
226
213
187
244
171
224
167
212
194
164
235
264
239
243
204
146
206
227
228
194
134
154
213
182
206
207
198
137
193
188
193
219
166
237
232
231
191
127
173
221
226
222
157
150
158
209
245
171
158
214
194
168
130
202
182
225
256
157
218
284
209
162
158
189
197
173
126
200
244
223
189
163
144
259
241
201
141
184
178
171
248
147
164
180
190
212
195
152
191
210
233
194
253
181
162
213
229
218
182
163
205
136
194
161
199
188
223
166
250
244
225
217
212
193
222
199
148
237
261
160
257
214
176
223
128
255
185
152
184
202
159
185
248
164
212
201
121
213
196
146
204
179
213
245
206
127
114
168
207
207
152
127
235
158
248
201
250
132
220
165
195
228
202
229
226
182
178
191
197
176
205
179
199
133
206
197
159
215
164
247
263
213
209
185
203
207
212
174
202
148
194
234
249
217
210
201
200
251
174
202
186
187
175
261
207
188
234
176
218
221
202
257
196
264
184
192
250
203
225
217
197
228
154
230
173
134
177
178
188
136
186
235
204
198
186
185
231
170
210
218
220
140
209
222
244
220
218
205
235
180
197
178
247
143
178
244
204
175
176
192
251
179
179
163
221
158
101
115
137
199
186
240
231
193
143
211
177
202
167
142
196
193
209
194
216
202
209
223
183
232
217
211
199
184
243
166
187
165
207
179
196
149
171
219
197
219
158
220
209
246
144
191
227
235
180
236
198
186
181
203
232
188
208
202
170
159
225
169
206
186
162
116
176
166
236
161
191
220
146
230
224
199
184
189
227
180
187
104
230
188
169
225
212
213
150
169
168
150
230
217
223
259
163
190
260
199
238
205
188
179
201
178
219
185
214
250
197
138
212
205
210
228
131
221
250
223
258
261
177
228
200
187
147
215
261
134
174
184
142
228
198
225
150
218
187
209
252
243
208
221
160
194
211
197
160
198
190
215
184
186
231
182
176
251
203
232
254
171
187
107
178
198
220
133
109
144
208
171
217
205
139
191
191
212
265
164
174
195
236
251
139
136
242
197
175
184
181
194
207
170
155
252
228
293
197
188
216
132
250
248
152
251
188
163
215
204
244
176
200
229
218
182
229
216
206
173
110
139
155
240
200
213
191
234
169
208
230
193
236
180
236
191
234
157
140
126
101
209
240
198
218
195
192
172
196
188
170
275
240
199
225
171
164
185
172
190
157
176
243
196
151
221
226
214
228
188
221
206
174
183
164
238
187
207
197
192
150
243
203
244
171
148
206
186
199
229
202
175
152
225
179
153
196
197
252
188
184
150
176
211
121
190
241
167
213
148
224
96
150
224
235
213
139
201
224
210
201
202
196
161
160
169
244
223
180
236
234
222
126
188
205
267
145
184
198
248
204
268
165
251
204
145
175
176
187
183
167
188
200
232
184
196
197
178
249
180
155
171
156
160
139
186
231
222
174
166
207
304
252
220
170
214
206
166
200
226
206
143
205
166
213
221
206
220
211
182
226
191
172
138
76
191
143
188
192
205
201
181
251
210
172
227
169
182
212
198
218
166
205
283
215
222
222
186
141
164
188
206
145
219
197
188
182
229
251
216
213
206
172
245
219
223
220
229
255
164
227
161
208
156
206
184
185
236
180
118
215
143
214
153
206
223
187
240
233
198
191
157
217
204
160
193
209
194
213
242
119
142
199
203
230
220
253
174
232
217
185
246
198
161
187
254
172
218
235
221
265
199
257
203
198
155
218
193
226
202
201
195
240
243
208
208
213
252
123
185
255
182
199
156
267
190
202
231
159
231
158
234
224
221
194
187
195
220
208
197
162
149
236
141
211
166
263
171
169
160
205
226
167
232
228
150
154
188
221
196
191
180
177
204
199
208
216
238
195
209
236
178
214
209
196
226
247
151
205
202
211
173
192
204
192
197
181
226
240
212
154
202
136
218
177
186
193
247
203
156
218
200
176
183
194
193
272
182
235
215
235
219
155
216
230
185
194
183
226
229
215
237
230
264
192
154
168
187
190
161
158
186
194
236
232
235
223
197
208
214
223
184
186
204
258
186
214
222
144
257
191
145
228
233
151
202
190
191
232
175
217
196
238
169
293
227
226
243
139
255
248
186
154
176
209
283
215
170
205
198
202
250
211
197
220
231
259
212
239
216
168
206
224
179
244
154
136
211
225
253
237
185
137
169
226
240
255
215
193
184
187
204
224
212
187
229
207
248
201
238
178
243
218
209
236
218
178
201
237
239
171
219
199
154
157
143
189
172
209
180
148
172
140
201
208
229
179
169
223
201
188
239
137
161
184
224
161
236
222
271
200
185
200
155
180
138
196
199
116
233
189
218
202
193
168
148
179
196
188
173
222
185
190
184
209
255
198
194
205
206
221
220
204
206
217
186
205
221
132
166
196
180
168
184
114
221
197
222
219
215
234
222
168
235
250
207
228
171
178
159
245
221
207
189
165
247
150
236
196
221
252
148
177
257
190
236
205
178
195
206
156
259
259
229
208
171
244
157
195
142
189
119
210
238
241
238
253
225
217
207
171
227
211
175
147
203
193
208
252
227
224
180
228
236
224
204
196
214
202
215
177
235
199
249
208
176
247
140
205
179
201
155
188
156
236
187
186
192
216
219
233
186
189
216
194
198
193
219
232
211
185
188
215
258
202
224
257
228
205
273
221
176
218
174
246
151
140
208
230
243
265
218
204
171
133
189
170
188
206
189
206
220
163
182
177
263
143
174
167
201
202
245
181
190
221
174
183
214
247
235
198
226
189
159
208
246
178
193
227
150
205
133
164
166
203
203
166
183
187
229
194
169
207
239
249
262
191
185
135
163
195
238
271
188
201
191
197
240
178
189
200
202
172
231
207
200
202
186
226
205
249
170
246
207
196
155
255
207
244
225
229
173
253
237
242
224
157
213
266
208
192
197
188
155
204
214
212
251
168
234
270
178
212
196
224
212
198
262
196
178
178
202
227
166
155
215
173
187
175
142
137
183
267
175
201
177
211
191
251
197
183
170
171
266
225
93
212
234
256
203
177
220
215
226
242
262
177
210
179
206
115
254
222
188
252
212
141
174
267
201
183
243
166
225
203
274
152
186
222
175
255
154
231
241
124
194
227
232
206
141
235
180
204
185
243
185
184
199
210
233
200
168
223
206
198
175
166
249
156
260
180
187
201
190
207
215
215
136
200
209
183
192
210
238
212
181
202
235
183
222
175
230
167
169
159
206
187
141
122
215
230
213
192
187
159
114
221
225
189
249
206
119
207
251
240
238
159
216
206
226
160
209
123
163
168
173
177
155
219
191
160
220
220
132
145
173
190
179
187
232
233
224
163
239
279
88
182
200
220
172
215
152
195
213
240
224
253
210
223
212
230
199
221
208
178
221
231
257
200
158
214
220
158
218
225
246
217
186
242
92
155
207
231
248
202
244
197
244
216
156
247
160
187
212
226
185
248
159
210
193
240
186
208
144
248
83
209
211
201
207
163
198
249
189
200
201
179
246
158
233
175
161
215
235
215
239
236
180
169
192
163
225
210
232
176
127
202
172
211
260
194
192
239
197
249
230
236
173
200
236
190
109
146
169
191
163
158
134
252
213
209
173
209
145
261
187
231
255
151
250
248
134
227
232
153
217
221
143
172
252
135
231
227
235
162
201
167
199
223
223
159
237
251
258
284
199
183
151
187
167
112
204
179
224
180
209
201
184
120
228
145
235
211
176
209
145
206
230
221
165
210
200
261
226
232
176
252
233
211
267
209
144
196
156
266
180
214
210
196
227
230
215
193
161
241
210
194
225
184
120
167
189
156
243
227
191
190
159
127
226
170
209
221
225
229
196
189
151
211
157
216
205
159
189
237
210
217
187
166
254
156
150
227
170
216
207
161
188
124
185
243
205
210
192
225
144
208
244
213
175
221
178
218
203
222
146
177
178
216
235
181
212
172
239
217
201
185
215
207
178
186
235
219
212
201
141
238
141
170
207
198
203
186
259
210
168
278
200
196
251
224
113
212
150
222
193
197
253
247
234
214
167
209
242
244
279
219
194
190
174
213
198
213
219
224
201
251
240
245
222
197
229
193
203
209
197
173
188
237
186
193
180
212
180
232
221
257
173
217
174
208
198
220
188
286
233
238
151
247
213
184
221
174
213
184
177
203
127
204
263
211
181
230
157
135
228
174
182
215
166
234
301
178
213
176
208
256
240
154
197
175
227
192
221
237
200
185
242
220
235
221
185
230
207
180
204
206
219
174
202
250
238
211
254
213
154
179
172
214
167
170
172
213
156
223
220
198
177
199
166
182
185
263
216
215
155
204
245
233
237
151
227
193
279
239
190
206
225
225
195
190
214
223
182
210
214
223
273
210
233
209
215
148
188
200
147
131
197
188
166
166
168
224
191
195
207
225
178
181
239
236
162
160
257
237
261
249
211
204
189
201
237
216
214
165
202
250
202
198
217
119
225
153
206
246
249
202
238
226
233
223
152
131
123
237
232
164
235
153
205
209
189
162
267
151
208
262
145
182
229
191
197
141
154
233
164
204
205
206
174
210
171
181
151
212
214
212
253
185
190
189
268
162
195
188
227
178
172
262
160
231
218
255
186
216
205
189
190
164
168
208
157
198
148
243
155
187
194
166
247
207
193
229
148
201
234
184
285
248
199
149
201
148
299
260
183
191
249
158
201
218
186
205
224
171
241
205
174
171
126
236
132
187
267
263
143
278
193
165
213
190
234
197
191
226
205
230
208
106
192
195
191
233
198
181
157
184
216
207
163
218
179
163
162
189
209
265
201
226
223
190
248
202
175
230
179
217
200
220
247
170
199
253
200
187
220
199
168
188
229
262
190
176
167
232
234
193
189
192
142
250
115
217
165
192
202
177
233
186
183
252
212
204
239
153
232
153
189
246
211
185
195
200
203
183
209
193
213
213
181
227
126
258
278
119
177
190
232
199
192
203
153
160
211
241
182
182
171
236
210
214
209
215
139
115
113
251
137
148
253
224
277
254
231
246
236
236
211
185
190
238
240
160
211
162
233
205
258
208
209
194
199
164
254
159
174
184
159
245
185
235
233
241
216
166
211
216
206
200
195
204
222
222
222
211
153
264
234
121
225
197
162
197
140
173
197
260
229
187
190
177
257
187
233
183
216
197
129
185
205
246
248
252
215
120
166
173
263
197
267
165
210
232
235
213
166
198
227
255
121
183
186
182
245
176
204
221
203
241
268
181
192
242
228
202
210
231
144
235
145
199
185
239
194
219
235
158
212
194
161
176
211
148
208
198
125
198
220
233
234
202
226
242
221
156
227
237
145
267
263
235
115
212
247
216
264
165
170
172
179
211
217
245
251
208
239
265
246
241
205
223
203
171
208
179
203
236
229
232
233
215
246
171
226
170
235
234
169
163
213
184
248
219
240
211
241
177
137
210
236
188
183
215
241
180
168
227
237
218
199
201
254
202
250
140
168
123
157
160
284
255
180
284
197
233
191
247
221
215
186
229
204
183
135
165
174
209
251
176
203
224
147
241
187
176
183
232
189
202
193
214
214
225
151
143
167
145
234
213
144
216
245
190
173
204
114
202
183
241
111
233
233
217
216
225
207
156
185
199
133
189
261
179
166
270
213
218
196
160
175
175
248
194
156
157
228
234
148
156
219
165
165
246
184
173
216
139
156
205
193
190
171
177
215
206
132
182
230
206
219
199
198
154
198
176
185
192
269
211
160
208
189
235
198
188
261
166
248
180
158
229
170
245
201
239
211
184
246
243
219
220
233
186
170
237
171
166
193
179
199
221
230
227
171
212
249
227
199
208
222
202
149
192
199
182
210
183
254
228
156
234
113
212
266
174
211
251
240
222
179
201
142
143
227
211
130
193
271
223
185
196
175
236
185
217
249
142
210
220
210
198
255
186
146
268
231
226
248
164
119
170
204
225
183
188
178
206
148
214
194
224
175
179
271
157
212
199
216
156
226
199
157
236
135
219
154
254
232
196
214
243
182
177
162
261
209
172
260
187
182
191
213
220
184
220
172
147
192
215
222
257
222
234
182
210
229
147
174
159
186
213
246
170
227
227
135
112
206
236
189
216
216
155
184
218
227
230
222
214
224
192
160
273
151
192
132
191
184
200
148
173
185
230
135
241
191
186
212
198
116
238
183
192
199
213
200
229
173
191
192
153
226
216
205
169
201
228
176
186
208
198
162
224
236
219
200
197
213
175
187
173
160
221
206
175
185
191
222
203
153
244
248
214
198
233
145
199
187
198
237
270
213
208
204
213
195
291
181
223
186
200
239
211
222
220
145
204
165
213
240
235
252
141
218
161
252
250
231
225
257
221
252
219
147
174
241
159
160
215
187
193
193
193
196
240
175
153
237
215
158
191
122
188
229
158
242
153
200
203
167
211
147
242
148
248
141
208
233
233
177
209
230
229
218
199
199
201
229
199
210
177
215
208
169
132
222
193
178
153
196
216
250
252
214
220
180
149
211
201
236
228
236
178
160
200
143
236
149
181
219
218
197
233
186
223
225
211
231
190
202
222
180
190
122
196
203
205
131
160
193
192
179
184
217
199
206
256
242
169
254
227
204
172
180
202
266
229
207
199
226
178
237
248
151
264
184
198
180
148
178
221
177
191
195
140
234
232
218
194
217
198
170
197
221
203
193
129
255
217
214
205
132
173
235
199
154
143
201
173
204
197
283
173
210
263
267
182
235
219
137
206
163
186
131
200
187
206
212
248
226
181
229
218
161
227
197
248
152
167
199
189
253
239
188
182
137
192
243
220
239
135
177
128
205
191
195
232
194
180
242
209
228
196
164
219
159
178
211
223
207
231
206
215
120
208
251
200
183
189
189
216
156
160
140
160
213
203
219
209
193
224
192
206
202
186
203
173
179
243
179
187
155
198
197
212
197
219
213
142
271
184
148
135
186
208
179
190
235
242
214
136
200
217
208
203
193
203
146
226
197
209
165
161
220
194
208
249
127
217
256
171
221
144
207
199
222
203
170
170
235
168
164
264
202
153
230
190
231
167
257
185
230
167
129
180
152
180
179
218
134
206
188
257
229
145
202
224
217
194
185
236
193
165
224
207
209
198
137
197
261
243
239
209
187
235
184
193
180
194
228
207
235
160
230
192
198
214
152
223
236
237
191
164
226
224
231
258
216
205
218
192
224
140
168
213
197
281
182
206
160
152
217
231
209
185
198
218
197
147
198
231
279
209
201
154
241
220
188
189
216
219
179
287
249
227
145
226
202
187
174
209
198
247
193
161
244
180
196
195
137
206
223
203
263
221
271
231
224
162
172
178
155
211
207
266
143
199
178
150
223
188
220
123
116
176
201
216
186
178
207
215
184
200
237
187
182
224
160
172
243
179
147
217
259
179
201
197
253
183
147
166
146
234
190
200
162
161
265
174
211
194
196
213
165
277
240
233
163
289
218
142
250
188
190
197
180
221
213
217
207
213
240
203
164
222
173
219
202
232
216
169
267
214
103
231
151
192
163
227
213
193
175
189
217
224
151
200
216
187
212
205
216
189
174
221
197
223
187
186
230
244
212
175
218
148
189
216
218
195
181
212
156
223
224
218
263
176
214
186
203
231
248
151
229
114
234
205
173
212
158
185
193
179
150
138
238
195
278
179
177
175
213
190
207
211
257
172
212
164
172
199
111
221
205
178
268
222
164
190
160
191
197
224
155
183
180
153
150
174
197
256
192
158
210
166
205
210
207
212
214
223
131
173
192
168
170
183
258
222
211
191
158
189
244
167
131
246
217
218
198
282
211
220
194
231
180
187
211
215
200
197
176
217
165
212
175
218
144
194
211
210
218
213
137
186
223
130
232
159
245
167
191
232
181
159
163
281
174
173
207
197
189
255
214
136
249
158
156
243
169
201
171
202
207
197
264
183
212
241
147
169
195
217
228
168
236
228
181
211
206
165
260
201
202
194
167
199
158
278
135
212
220
191
227
209
225
239
209
149
211
199
267
208
198
141
190
165
225
235
242
203
223
221
209
221
163
206
184
180
192
216
268
233
148
211
230
247
186
126
176
155
202
240
231
150
234
196
192
251
176
192
184
146
194
224
202
194
205
171
188
196
162
178
148
169
139
185
225
229
183
193
247
190
203
170
182
190
220
149
181
192
250
236
203
155
173
193
184
163
233
200
142
211
229
224
196
185
196
221
234
195
191
209
228
195
147
171
213
263
168
204
182
234
217
212
245
247
175
226
204
236
214
95
258
200
166
195
227
167
258
200
207
140
226
253
242
99
201
228
133
185
207
199
112
170
206
229
218
183
207
172
182
177
173
250
182
231
203
177
187
112
225
170
244
200
217
200
243
218
152
227
196
179
182
214
164
206
185
215
217
158
205
191
150
211
244
177
158
184
227
226
245
224
110
208
230
221
143
173
165
226
183
135
206
239
169
146
193
237
216
166
212
131
156
255
147
136
166
172
192
201
189
196
160
170
186
219
152
187
193
201
150
242
227
230
248
204
165
203
157
160
208
189
206
174
243
203
205
201
236
147
197
207
210
205
247
207
205
207
175
202
185
218
170
215
184
186
242
200
241
226
144
198
212
260
204
231
138
166
240
196
222
230
179
220
226
213
183
191
225
222
246
147
184
152
229
166
248
159
193
215
287
122
213
229
200
170
223
172
169
214
179
217
241
271
172
230
209
229
155
211
224
175
185
200
182
155
218
195
194
178
195
192
210
241
107
127
231
216
186
223
189
238
211
216
210
241
229
191
223
275
175
194
211
188
140
213
213
252
130
179
208
221
171
183
190
172
185
145
154
264
151
235
204
215
250
261
165
242
237
251
191
216
252
148
262
228
127
173
174
144
195
181
232
214
185
200
152
207
212
233
215
254
200
257
160
213
226
262
165
213
238
179
197
181
210
149
209
190
216
137
201
243
185
244
188
263
196
203
185
193
202
211
165
205
196
212
215
193
176
214
174
234
240
165
183
198
189
165
190
155
202
208
215
189
246
218
276
188
232
267
232
160
136
129
182
234
180
235
195
208
241
182
214
227
185
284
206
167
153
210
220
139
235
224
220
149
167
242
236
185
176
227
260
252
108
207
218
148
213
204
137
190
203
228
149
174
173
148
156
236
175
226
174
155
179
172
149
173
243
178
194
229
267
181
173
155
204
204
172
203
224
180
196
184
148
163
218
146
201
224
220
157
196
222
233
202
203
207
167
226
215
137
161
234
209
217
198
259
237
236
194
171
188
159
201
223
204
161
191
286
266
270
270
218
227
234
175
174
186
130
217
197
267
158
122
227
128
188
178
139
175
182
230
173
212
175
211
231
222
165
216
234
193
154
199
263
178
136
218
157
138
153
209
180
186
234
193
195
211
166
148
177
199
234
199
218
150
249
198
187
221
189
188
168
222
200
274
169
223
156
219
180
187
189
204
239
200
203
257
109
185
168
167
194
202
200
166
164
256
208
268
209
168
163
227
216
196
249
195
164
230
230
195
210
214
198
209
229
201
174
222
256
237
198
179
195
226
166
225
120
208
225
144
199
203
177
195
168
175
180
153
131
179
150
196
234
258
131
216
219
174
203
240
240
177
194
250
220
181
171
177
221
228
164
216
214
162
196
198
194
179
175
221
204
201
201
182
178
209
96
234
210
164
160
215
258
221
166
241
182
181
265
146
182
166
212
208
217
194
224
188
177
146
182
230
201
230
212
202
128
236
194
204
183
136
235
253
242
184
248
194
163
196
240
260
177
246
228
230
217
162
163
158
149
211
196
220
293
174
211
172
200
192
266
188
216
216
213
226
270
217
204
155
200
214
210
191
155
220
232
170
168
284
195
230
105
125
219
251
218
151
219
149
246
178
220
238
214
217
172
234
220
186
215
223
240
155
189
227
196
219
175
146
218
192
234
274
218
216
231
150
265
194
233
153
230
227
181
129
218
186
198
176
195
236
121
169
208
166
199
224
139
220
260
170
230
208
197
157
143
215
164
194
251
152
253
190
160
185
234
218
224
244
163
219
203
232
155
208
203
194
246
184
241
183
212
147
212
182
148
137
200
227
210
178
241
191
238
199
213
213
167
193
215
219
166
157
219
195
142
120
193
155
126
206
230
254
170
181
251
228
213
166
242
263
230
221
202
205
227
144
215
246
212
210
237
192
267
156
251
210
226
114
177
168
178
140
257
178
178
254
183
163
171
247
258
128
145
266
207
148
243
208
199
191
152
196
183
210
237
236
204
261
188
188
229
252
232
153
208
197
198
199
212
202
172
216
233
238
182
215
207
183
231
140
233
151
174
185
230
164
225
211
192
182
255
270
214
233
149
189
180
194
182
191
158
197
220
233
258
218
226
166
147
189
120
151
181
244
231
113
223
169
224
212
188
221
157
214
217
235
177
161
221
214
210
237
204
226
215
198
171
243
186
205
184
127
204
235
189
177
181
137
218
237
186
203
244
173
117
217
161
221
144
237
239
226
192
210
202
92
177
209
220
193
209
230
242
158
230
213
184
192
165
182
188
176
211
172
233
240
219
201
214
233
206
176
177
167
206
156
229
246
205
128
225
176
145
184
210
203
141
177
180
216
243
167
203
224
174
236
213
239
172
179
250
250
242
210
258
262
251
249
206
197
130
186
240
255
197
161
188
154
206
240
236
229
181
216
168
262
215
219
138
177
258
213
189
225
155
219
189
248
209
148
178
239
149
168
245
169
218
177
229
264
234
205
190
221
247
191
188
247
192
207
175
157
241
186
221
195
166
175
247
185
166
202
207
257
182
182
235
255
182
195
198
185
187
173
193
207
192
203
200
189
233
249
191
160
226
212
138
176
185
218
192
224
185
220
179
226
244
218
163
150
150
215
209
169
257
197
139
210
195
210
157
179
172
218
218
160
179
218
213
244
162
185
228
228
128
175
222
254
241
211
179
187
240
218
211
216
165
151
166
150
239
239
200
193
209
212
190
183
273
146
196
143
168
152
138
118
114
206
206
167
157
123
208
219
198
107
243
266
277
125
231
219
240
196
253
167
204
219
235
190
205
226
237
183
161
164
238
115
243
151
220
239
187
132
230
225
183
212
232
154
171
226
172
200
265
232
182
166
209
170
218
239
199
222
175
233
247
163
172
173
212
203
205
245
186
201
222
231
207
148
204
141
197
223
213
195
232
206
254
203
216
211
255
217
163
229
178
185
250
200
111
201
250
188
188
223
218
132
189
187
207
218
220
171
234
201
204
200
185
193
212
142
218
281
179
149
167
218
251
189
152
242
205
187
231
186
127
215
188
166
154
197
189
134
233
150
155
182
153
193
154
159
243
215
166
241
168
185
232
202
200
190
220
209
195
233
234
189
239
196
247
138
220
218
200
200
175
222
216
202
219
192
192
190
217
196
183
173
209
256
206
185
241
234
168
218
193
201
257
180
181
181
218
183
225
150
231
215
184
210
265
207
214
168
212
165
200
217
183
203
283
186
162
181
194
203
182
186
209
223
154
200
245
243
205
167
179
292
176
256
196
136
193
200
236
172
252
260
201
231
200
205
232
179
178
254
187
181
194
191
170
221
215
228
209
180
254
213
182
139
202
201
202
150
172
246
216
193
204
191
232
187
103
159
190
277
139
208
229
224
203
181
229
218
226
174
176
117
223
222
158
208
249
222
258
241
198
285
206
189
263
260
199
215
246
225
235
216
168
213
166
241
197
183
213
166
193
167
232
242
182
146
207
191
140
177
203
223
198
158
245
255
171
234
181
172
238
150
189
161
214
228
167
162
117
213
223
248
239
187
216
202
244
194
219
227
160
137
219
220
186
225
197
163
194
227
177
178
232
204
250
203
144
217
202
154
190
188
158
161
202
212
226
199
198
213
183
195
194
184
229
173
194
261
165
222
237
204
216
191
209
167
215
218
221
193
157
237
218
241
193
145
164
220
171
158
183
172
183
176
180
194
209
236
132
192
177
231
239
207
123
251
243
207
222
212
179
220
210
211
208
182
175
241
180
206
215
242
239
229
208
233
157
241
229
207
158
209
253
211
227
225
178
231
196
249
201
259
168
121
203
247
214
191
224
231
210
151
172
210
200
182
162
189
212
213
193
255
214
210
217
249
214
197
193
223
217
226
239
263
186
153
163
230
188
162
182
173
259
161
229
246
234
236
210
166
156
160
189
157
221
241
202
233
115
213
166
215
272
184
214
184
238
222
230
218
189
204
197
288
108
181
205
227
203
178
268
226
171
200
209
187
222
210
176
231
133
198
214
175
185
167
213
202
177
256
188
206
184
213
187
267
159
179
247
192
199
249
216
278
207
164
181
172
218
199
250
202
233
189
185
224
160
203
277
180
159
215
225
199
187
176
201
224
251
203
222
224
235
189
173
132
287
176
207
233
225
229
191
222
206
193
196
188
226
196
213
224
206
207
202
204
188
160
246
182
189
142
268
190
208
214
221
179
163
231
186
237
135
247
209
192
162
192
239
173
172
218
212
199
235
230
164
187
192
211
204
168
216
272
187
207
194
195
200
243
220
135
226
193
165
215
138
149
196
204
206
208
252
217
179
269
170
266
292
245
228
187
268
175
208
193
208
285
206
213
171
172
237
262
208
229
182
193
202
181
114
217
241
186
180
256
192
254
201
203
245
121
207
166
156
165
292
271
247
178
266
199
204
262
157
217
129
193
260
257
177
183
182
165
200
229
173
254
222
216
219
214
190
179
190
264
200
183
152
233
187
173
203
185
186
250
152
276
186
183
220
224
257
183
266
192
173
229
213
179
188
266
196
139
217
175
191
239
215
218
219
162
194
231
189
198
198
232
210
166
203
220
223
197
221
166
122
141
232
191
206
204
204
232
146
220
270
196
218
195
232
259
156
220
235
208
219
195
224
235
182
208
169
245
213
157
236
165
194
160
162
257
115
214
227
191
160
247
193
209
201
240
192
235
267
221
140
172
162
206
214
228
156
256
224
187
173
179
197
183
207
168
164
164
178
200
183
194
132
179
231
187
196
217
163
224
187
246
207
223
250
202
264
169
203
215
235
224
219
219
203
208
235
201
230
184
192
192
167
187
273
239
193
238
207
143
214
169
223
147
231
204
175
246
201
211
214
190
223
221
106
171
232
176
129
175
206
245
184
252
170
249
243
181
186
222
201
199
129
220
160
230
195
211
258
225
172
222
147
134
196
188
198
176
184
173
240
235
210
173
237
171
245
226
190
200
225
182
142
211
244
223
224
211
211
191
280
183
252
199
226
187
220
174
209
181
135
197
170
267
205
129
268
213
203
214
210
187
198
225
196
219
175
194
141
282
238
201
233
227
183
243
190
216
217
190
165
172
197
259
227
200
222
199
191
189
199
205
189
185
191
282
216
266
134
148
162
226
207
223
182
209
202
177
149
169
245
228
208
247
188
212
213
203
186
251
235
190
245
178
195
178
201
202
212
198
201
168
124
192
218
175
127
233
203
203
254
197
245
232
235
156
204
233
219
246
228
133
256
246
222
219
235
178
196
162
219
198
139
224
239
198
202
251
167
217
222
121
173
199
163
205
255
103
218
184
237
289
202
206
214
202
120
200
204
228
248
157
238
170
173
210
151
216
243
248
216
203
170
191
187
223
210
199
206
223
251
218
132
239
161
185
178
194
207
195
167
199
179
202
248
213
181
211
242
184
255
187
238
239
188
155
106
211
220
247
199
216
164
211
242
195
221
144
171
208
170
266
187
206
231
225
274
137
202
185
170
206
255
200
184
192
207
248
191
156
185
214
182
210
209
144
198
254
224
270
180
213
209
169
199
169
173
160
221
176
219
187
184
181
190
253
225
210
182
225
188
249
173
240
206
157
186
180
228
165
240
215
173
253
168
170
154
231
216
223
239
201
223
174
199
200
178
260
208
140
258
178
235
189
198
189
157
169
245
213
155
169
212
198
231
166
234
220
218
116
217
221
212
182
205
194
201
218
182
233
202
199
115
268
148
217
210
209
205
147
231
197
212
132
185
141
262
177
193
257
220
162
234
160
214
184
145
188
209
199
219
237
213
192
204
170
161
254
176
213
251
190
210
249
159
139
167
161
177
227
211
246
255
197
123
246
172
195
230
204
244
248
161
239
183
126
249
210
225
209
160
185
191
194
242
295
175
238
241
215
269
169
182
135
203
168
174
226
122
266
167
154
214
199
196
192
187
204
162
155
201
137
200
161
172
235
225
192
231
246
190
213
169
88
229
235
206
144
71
192
188
174
199
168
198
183
177
217
138
200
183
207
120
200
197
223
168
227
192
245
177
152
187
186
135
215
231
219
206
160
236
253
85
176
223
268
190
234
187
191
169
227
171
233
205
174
184
125
217
189
190
195
218
177
90
193
232
176
210
243
196
192
236
275
220
258
228
263
265
178
191
191
155
206
217
240
193
176
222
171
231
215
144
234
223
177
212
200
258
194
209
209
256
262
177
186
160
193
135
236
163
231
144
217
167
265
186
223
157
235
194
198
230
228
120
177
203
167
201
184
108
225
155
190
182
261
187
231
120
209
195
216
200
251
233
272
170
182
215
198
179
166
220
209
117
209
259
170
200
242
228
177
188
212
263
226
111
143
98
188
148
191
238
173
246
248
205
154
209
178
229
166
249
204
190
139
248
154
217
150
233
168
181
163
192
117
191
183
243
184
132
185
275
197
171
204
175
237
186
210
181
221
230
205
209
265
224
193
275
193
185
175
189
173
170
214
188
212
126
217
251
194
245
202
110
201
141
216
218
176
230
261
182
139
236
133
187
161
135
202
240
209
174
152
251
174
205
239
202
203
274
225
242
247
187
191
201
134
241
112
201
188
167
216
210
195
138
223
200
257
175
208
203
279
240
255
231
228
174
146
107
173
251
208
207
147
126
214
189
218
188
160
221
187
192
208
149
173
151
208
181
139
192
201
218
186
227
142
247
173
198
190
173
215
210
224
211
198
232
222
224
249
217
212
196
238
163
186
220
194
164
140
230
199
177
185
237
253
126
154
200
238
190
218
217
184
184
199
178
159
170
161
229
231
198
181
176
254
244
164
151
228
203
238
202
131
184
189
246
189
204
243
168
199
146
203
209
234
214
189
208
198
184
188
239
258
219
166
191
206
183
144
196
195
206
155
249
159
167
174
249
187
196
245
174
213
142
151
268
186
215
197
135
209
225
225
250
213
207
236
214
197
217
170
221
159
172
163
204
220
220
144
236
189
146
244
147
197
222
164
223
172
127
187
209
191
152
190
195
158
207
231
197
245
223
242
197
228
276
174
212
220
174
225
268
201
170
225
173
182
216
186
208
219
147
264
160
221
231
197
158
221
164
156
179
222
174
207
196
202
152
186
183
189
162
203
189
193
172
160
206
201
197
162
207
128
206
177
232
224
211
227
169
196
198
204
201
169
184
230
180
165
152
209
173
275
202
241
204
242
188
222
238
169
228
194
154
250
206
185
225
220
249
179
152
238
224
264
236
159
198
250
211
214
197
192
167
223
228
212
200
247
237
185
242
197
233
179
184
154
183
161
185
186
243
144
224
203
134
208
231
157
156
183
251
165
205
239
228
172
216
188
226
279
147
162
185
192
131
275
187
209
233
246
219
169
210
182
210
259
157
186
197
206
219
233
197
207
144
182
254
199
182
148
213
199
188
200
178
216
182
153
200
225
207
170
245
204
208
209
188
215
194
170
171
189
140
176
188
217
172
154
202
197
243
207
172
146
192
203
210
238
175
271
204
155
173
203
159
243
239
206
209
209
233
254
157
192
179
214
207
164
254
216
234
224
182
175
228
197
247
182
216
180
249
191
166
224
217
179
209
209
227
170
196
220
274
194
143
233
241
210
280
132
218
215
224
245
230
221
161
230
231
223
160
191
167
194
250
180
135
177
203
198
186
174
201
168
213
157
229
250
214
177
216
184
212
200
114
190
196
236
183
183
196
187
252
121
291
238
229
282
216
217
125
257
232
203
161
231
176
140
169
240
169
224
223
210
177
232
167
220
217
202
196
234
201
279
206
171
247
156
173
230
130
195
197
224
186
250
179
187
160
211
160
204
215
222
239
250
215
241
238
172
201
226
169
204
129
331
181
231
166
205
142
198
178
237
226
155
206
195
180
205
145
172
218
147
232
252
219
173
213
185
200
188
189
197
239
230
270
239
209
255
129
140
250
215
159
170
181
206
246
181
225
213
224
218
213
230
207
221
143
199
252
162
225
237
232
247
199
191
191
125
164
203
202
226
175
237
208
190
132
230
232
193
208
219
168
170
207
215
199
198
221
208
258
230
240
214
232
201
228
156
169
194
219
163
176
254
187
125
149
204
152
191
169
166
179
274
162
176
185
193
236
197
179
233
202
125
143
229
218
174
181
177
262
153
252
211
212
232
234
222
212
188
208
194
172
210
154
222
223
255
190
166
185
187
185
176
161
185
235
179
165
200
269
175
241
214
153
210
176
247
195
195
193
208
218
174
227
182
208
222
221
223
219
224
132
225
169
196
171
181
247
228
207
220
250
215
189
257
206
248
246
176
205
239
216
167
192
177
144
182
251
184
209
251
207
204
175
201
219
168
193
183
227
166
168
168
174
231
255
165
188
200
150
196
152
215
229
175
175
154
265
209
245
204
193
206
213
236
233
149
243
222
197
275
153
168
194
204
273
213
200
191
182
264
216
145
218
238
217
180
242
211
245
193
218
162
193
179
171
200
259
180
210
216
251
216
168
236
214
170
232
157
212
202
150
205
152
252
219
188
213
149
253
230
154
220
201
214
246
187
185
168
152
204
203
197
170
181
254
213
189
229
247
122
191
228
231
215
115
164
203
164
218
228
217
244
209
150
182
200
197
148
206
170
251
235
232
215
240
175
221
188
196
205
233
217
162
164
247
223
125
220
152
148
177
215
216
199
189
166
203
255
187
257
202
229
226
200
156
182
231
241
211
233
218
205
169
250
206
196
204
199
265
231
221
140
244
234
235
219
183
189
180
214
178
156
192
159
216
196
296
180
203
206
202
209
210
249
215
228
207
217
203
182
194
191
199
237
213
204
218
232
200
175
194
196
177
149
285
179
214
221
205
201
158
239
184
230
193
218
206
193
234
214
200
216
198
190
226
258
203
233
188
228
227
198
212
160
207
243
212
228
160
254
113
163
190
222
269
202
246
188
135
212
201
206
182
143
215
196
219
162
205
262
252
172
249
211
207
230
201
197
215
219
160
144
164
148
270
257
196
241
193
212
213
172
269
144
189
144
183
145
178
179
214
138
215
202
184
178
212
248
275
197
258
187
266
255
218
125
216
164
200
209
138
190
212
230
180
140
200
195
225
144
217
225
216
223
196
212
208
193
180
186
208
213
164
168
187
219
215
180
195
231
200
196
243
207
226
210
193
200
182
149
216
110
227
170
186
194
208
171
213
109
244
235
170
176
239
243
193
190
245
222
231
242
218
233
193
134
168
218
146
154
228
157
198
194
170
180
188
218
197
243
180
180
245
250
154
236
215
205
192
198
157
188
183
241
256
168
166
171
249
212
248
186
189
231
222
214
213
209
237
217
190
147
229
231
223
206
163
208
218
174
181
219
162
234
172
190
158
175
157
221
192
229
215
224
267
192
179
216
201
255
183
233
208
173
173
220
178
189
228
292
159
251
258
236
141
184
162
158
157
186
196
198
187
264
223
192
191
202
182
238
267
245
197
184
178
231
153
255
149
233
199
184
146
279
201
170
224
272
213
150
206
138
185
200
240
233
223
203
194
179
216
195
241
223
188
160
243
176
259
280
253
163
202
212
159
174
201
223
181
230
138
235
185
199
170
229
248
165
126
239
224
216
224
213
175
218
188
241
191
170
124
213
248
231
203
224
229
196
234
189
250
183
233
152
198
147
189
204
294
165
204
177
157
172
161
204
211
216
191
198
184
196
184
262
185
246
151
216
172
214
234
191
223
217
171
136
148
128
208
238
194
214
242
236
211
194
179
289
210
150
198
202
132
204
156
216
227
169
180
174
213
159
236
196
237
162
216
223
206
238
188
238
178
208
199
189
236
202
218
222
238
168
220
189
163
175
201
131
162
231
188
152
206
179
155
211
196
147
237
164
207
270
197
165
196
146
172
212
160
222
196
202
237
178
194
216
148
212
181
218
157
245
216
228
174
213
141
233
197
173
235
243
206
196
224
264
266
140
218
231
176
224
190
170
265
211
189
244
246
239
234
150
228
275
180
199
252
192
214
277
195
181
203
222
190
295
156
222
276
220
205
143
172
251
202
267
160
226
255
201
157
202
207
226
217
246
206
237
198
205
179
239
215
175
189
139
218
252
190
178
224
201
157
199
146
196
261
148
236
264
194
149
205
172
204
176
206
201
181
201
254
206
182
233
243
190
189
212
235
131
181
242
256
170
187
237
140
147
241
151
175
205
180
224
171
233
227
183
207
229
231
209
201
266
194
176
163
145
159
210
164
198
210
206
220
175
202
179
226
168
177
186
233
185
192
218
209
245
237
219
153
208
234
175
252
226
227
166
216
222
221
189
151
185
228
165
156
243
234
257
206
197
215
139
211
235
190
189
132
211
162
221
164
157
245
147
231
269
211
219
194
239
246
136
147
162
220
161
157
207
225
151
180
201
196
233
215
193
172
151
264
232
178
167
205
250
152
183
177
173
183
222
198
244
234
217
240
182
193
210
158
231
215
229
198
193
181
192
261
207
208
203
200
194
220
162
206
205
224
195
100
190
218
228
195
223
242
208
191
249
213
168
197
180
237
240
232
218
209
178
215
193
207
201
248
234
215
155
159
210
234
193
127
236
207
189
182
185
209
250
145
221
260
215
194
187
210
161
179
219
208
146
175
190
117
171
209
213
193
238
174
249
219
215
202
146
212
179
207
188
196
204
186
199
249
171
177
152
104
177
151
231
133
205
214
232
213
205
228
229
160
241
228
157
204
227
268
189
159
155
121
258
140
245
216
189
243
190
190
212
238
164
202
183
200
195
233
237
147
186
182
186
115
189
165
190
171
266
202
247
218
240
247
182
273
203
208
162
149
146
237
179
225
169
131
242
215
243
128
198
192
194
188
190
135
201
229
218
250
196
200
176
196
178
181
205
206
216
173
164
217
258
214
257
186
207
264
246
200
233
210
145
221
184
239
235
233
224
199
251
108
246
231
243
229
262
232
185
248
239
179
139
169
124
211
145
225
180
196
268
177
258
184
159
185
195
205
164
273
212
231
194
140
209
214
222
213
190
165
221
166
161
278
192
156
188
222
148
202
227
154
197
202
240
176
220
205
149
224
206
233
247
174
183
186
137
217
245
229
211
141
194
212
196
189
216
251
230
242
203
160
187
214
162
189
132
212
181
144
161
159
216
151
226
188
184
200
227
218
124
180
178
252
252
261
212
208
187
194
208
189
178
230
185
213
213
207
144
156
228
246
202
258
258
177
250
245
207
215
217
276
236
227
167
247
195
234
249
188
222
210
234
260
220
174
135
150
162
178
245
239
156
208
184
203
222
167
191
162
197
199
293
228
235
208
180
163
237
190
198
137
214
212
201
231
208
205
197
178
156
131
148
203
124
150
214
187
230
233
163
200
216
163
221
239
249
221
133
207
220
178
175
222
250
167
225
256
217
227
196
213
253
221
190
207
196
150
157
144
238
213
228
195
192
146
204
184
231
239
244
204
185
226
205
229
236
195
266
181
121
203
227
192
114
209
207
242
195
161
251
228
225
218
197
170
235
205
228
137
208
245
221
163
153
221
247
241
138
202
181
219
188
232
168
188
193
226
177
194
183
189
166
209
190
207
208
196
211
191
232
163
267
186
200
210
176
221
182
182
178
212
157
148
221
188
143
176
183
167
167
243
202
197
236
211
169
112
287
205
226
213
150
231
204
204
201
185
176
213
249
233
178
196
226
180
208
126
188
176
202
202
135
245
213
227
236
235
220
195
228
205
208
236
117
233
155
255
223
204
255
169
143
201
164
256
186
174
168
232
224
278
204
190
189
248
176
225
152
242
236
209
179
244
175
187
257
240
207
142
180
193
261
158
198
235
242
214
206
227
231
203
235
139
142
257
225
219
266
179
269
210
161
224
189
226
255
191
239
152
277
191
177
144
155
174
220
261
182
206
215
196
166
205
155
201
218
95
184
169
212
228
178
125
232
210
224
189
157
194
196
216
242
198
268
213
159
210
192
153
193
212
278
156
190
223
213
259
217
211
204
192
162
191
195
244
173
227
208
193
205
236
218
250
250
215
160
219
159
163
215
119
171
105
178
180
185
251
195
158
142
182
148
234
278
213
221
173
195
181
201
184
218
195
258
217
241
190
220
167
179
208
175
163
206
183
217
115
202
255
210
126
226
209
173
165
252
211
141
231
201
185
163
217
145
206
154
208
167
197
188
225
236
150
204
186
225
231
132
223
165
208
189
254
168
207
243
175
180
170
184
171
180
184
233
242
232
239
223
182
192
270
235
185
229
230
222
235
196
227
163
198
240
242
171
221
169
196
174
192
165
182
211
244
228
193
204
145
207
191
230
194
227
201
255
191
183
232
178
154
193
250
216
198
180
192
209
198
228
236
177
203
182
187
199
202
190
223
195
222
282
173
172
199
179
218
216
200
188
164
173
150
147
221
231
256
147
217
212
223
145
176
188
167
221
175
210
253
188
222
193
203
148
228
166
217
171
189
187
201
175
198
227
174
272
206
199
195
264
214
147
178
145
217
238
252
208
179
181
145
210
263
183
239
145
167
265
171
248
217
202
213
161
216
242
252
185
199
213
178
221
166
189
236
228
182
207
196
208
228
248
217
188
217
243
220
251
232
213
213
210
199
170
205
193
240
246
293
237
235
182
178
230
250
185
203
227
274
226
238
181
248
212
187
173
171
209
180
200
207
190
186
211
192
200
198
223
255
253
211
168
190
127
172
237
225
232
175
200
201
223
159
258
251
153
248
233
203
199
180
194
193
264
213
235
233
165
231
130
209
157
144
198
174
213
210
204
185
177
189
197
147
224
145
189
207
231
183
157
179
179
195
184
197
191
153
252
152
220
207
163
250
183
143
189
207
181
197
157
221
120
223
210
176
176
177
220
198
234
180
247
160
194
179
276
226
234
212
246
230
204
193
268
157
224
198
180
214
258
229
208
228
184
183
215
144
221
221
256
188
212
250
263
238
189
215
204
199
165
171
229
184
176
224
147
81
202
191
232
175
188
166
214
160
196
205
209
189
191
193
154
211
194
141
232
189
203
233
185
221
200
189
214
267
177
159
234
162
214
234
234
187
258
188
236
200
185
159
189
195
154
245
196
217
198
231
218
203
197
191
189
106
174
193
207
215
195
136
183
206
199
197
249
133
165
238
226
222
218
217
271
222
199
149
266
170
127
213
181
191
259
251
187
234
206
245
275
174
152
157
182
255
183
171
195
212
248
202
248
211
217
215
214
161
187
259
240
187
239
147
203
222
245
223
216
168
191
197
168
242
157
237
231
213
215
244
204
151
196
279
205
199
206
163
158
187
198
206
220
159
208
217
221
204
192
164
178
228
192
254
240
193
178
175
203
137
212
172
176
225
211
188
160
202
189
169
180
169
222
170
184
196
267
147
219
248
236
258
239
163
212
215
186
254
171
233
203
132
209
227
197
170
201
150
91
173
205
240
226
234
143
190
165
201
216
141
158
204
206
230
169
206
199
165
243
167
265
223
206
196
164
177
180
216
162
234
202
156
216
211
185
183
193
233
212
175
152
185
199
168
192
197
244
187
210
250
201
187
250
216
185
170
186
193
224
190
225
200
254
176
210
166
171
178
235
216
178
221
220
254
198
236
168
148
155
189
111
232
222
234
220
164
174
137
189
205
163
203
130
156
122
194
149
199
155
226
156
251
199
222
189
237
217
196
251
229
170
161
212
224
153
166
232
204
198
193
200
185
166
173
225
182
203
145
259
116
142
173
209
217
214
182
170
208
200
235
256
195
184
162
212
220
212
196
203
176
203
225
195
231
178
186
168
213
172
198
141
246
235
238
222
247
182
199
260
250
196
181
194
176
191
212
263
255
206
194
187
197
205
191
266
205
181
213
197
215
238
217
244
230
227
207
200
186
210
156
160
211
146
211
203
191
185
222
253
179
142
164
222
165
227
244
192
212
157
153
204
254
159
252
125
208
186
208
141
185
201
227
216
121
194
219
200
288
225
195
176
196
171
147
202
194
254
222
186
218
241
225
216
239
239
181
205
167
185
169
192
219
177
185
192
213
133
173
153
202
164
198
163
204
188
178
213
195
166
237
259
205
230
222
183
202
189
149
198
166
176
146
144
200
205
131
195
157
232
210
171
217
206
215
206
215
171
184
204
192
186
257
192
241
196
153
163
153
239
234
213
184
169
190
142
224
236
183
150
179
166
197
220
225
243
277
187
182
196
203
206
167
169
182
226
262
173
211
143
214
215
202
202
240
209
225
180
235
157
160
122
210
191
128
190
153
243
191
238
219
186
191
172
248
247
167
166
208
143
238
196
212
223
149
168
209
155
177
249
186
191
160
164
249
212
210
207
220
166
156
224
183
167
152
235
169
159
153
188
193
198
199
185
223
187
155
166
185
210
180
147
186
251
217
133
241
158
224
206
210
174
114
176
212
223
277
143
165
166
174
240
158
202
228
216
213
192
198
191
161
203
216
236
179
213
177
252
181
193
195
225
211
198
173
192
250
195
233
205
236
205
189
248
217
229
208
275
212
240
184
137
196
206
162
211
235
231
195
189
218
200
167
172
167
217
173
205
186
235
253
239
221
164
202
257
161
177
208
245
154
179
210
206
169
196
154
143
197
198
212
235
156
170
261
221
142
237
219
217
206
226
229
274
226
181
200
222
172
190
169
158
197
206
207
191
175
199
117
137
218
191
215
169
242
205
200
233
228
194
220
195
186
183
190
214
179
163
222
215
219
206
212
193
223
143
203
187
261
193
234
160
159
200
191
229
204
219
202
186
174
207
205
242
253
204
195
175
231
168
190
224
211
220
171
98
212
160
187
213
191
232
239
162
202
175
186
196
181
124
228
166
201
213
170
240
192
206
190
195
169
191
207
202
188
225
273
168
169
185
214
211
172
164
237
162
197
208
214
197
177
223
236
183
229
214
240
164
154
165
250
207
240
184
234
237
207
186
142
226
180
217
198
183
215
201
162
178
161
152
175
166
226
253
205
233
199
242
170
138
186
195
229
227
258
193
187
230
260
210
218
191
218
197
203
241
171
214
218
203
199
148
187
213
198
186
272
178
184
247
176
175
232
216
185
228
118
82
218
160
292
210
235
193
188
200
250
286
229
249
219
165
163
274
159
192
228
202
166
218
284
190
136
238
189
193
231
184
232
188
218
197
202
280
226
158
193
179
188
209
138
231
221
172
209
194
191
166
268
253
161
223
205
216
205
190
188
175
146
190
242
185
173
164
235
121
232
174
241
207
167
267
189
179
178
214
208
239
230
170
196
226
201
190
223
232
201
162
224
183
194
207
235
202
184
128
190
220
246
247
247
235
157
215
185
238
260
189
208
148
233
171
180
176
204
164
219
238
232
229
161
204
189
231
260
192
197
150
274
223
187
217
203
189
215
204
187
183
200
201
278
163
181
153
239
225
215
182
236
212
155
134
209
224
211
261
194
237
192
232
101
236
154
201
217
197
237
203
272
163
271
231
212
275
202
206
255
204
153
201
158
244
157
191
267
187
127
213
236
166
236
188
187
221
203
220
211
208
280
205
222
191
169
189
184
177
217
248
207
234
195
181
191
180
225
277
197
227
204
214
170
246
205
214
210
215
196
198
168
142
177
201
184
156
194
167
182
179
219
171
265
197
180
202
163
209
164
229
173
148
187
217
208
194
240
183
237
244
156
232
163
246
108
191
221
203
203
195
232
225
219
227
185
207
179
202
129
205
194
182
188
211
267
180
232
232
181
195
168
217
179
233
236
270
258
195
233
204
182
211
242
183
186
188
228
169
167
229
184
141
170
145
200
216
235
216
251
190
212
204
218
155
158
226
169
148
190
181
185
168
204
196
161
157
170
139
182
152
143
227
218
212
238
241
213
230
169
202
184
209
217
160
142
231
195
223
211
168
156
206
214
216
183
207
219
206
220
139
249
166
213
171
246
156
214
181
179
202
231
167
177
237
154
196
174
247
124
182
238
204
160
157
210
244
210
147
251
231
178
222
221
204
244
140
235
196
173
210
152
183
190
198
250
230
174
259
148
202
187
173
244
205
251
137
234
182
189
116
246
147
229
157
200
226
157
120
262
226
175
205
204
204
166
173
170
230
202
235
245
176
245
182
204
197
225
232
249
165
202
172
237
197
234
249
160
236
295
185
164
206
164
251
188
174
188
179
206
253
198
189
172
243
243
203
185
255
229
258
228
197
163
213
204
215
166
203
199
194
205
222
225
199
244
171
168
201
199
155
205
153
173
168
218
204
206
205
225
106
209
161
180
223
212
193
239
200
222
153
216
218
244
96
206
179
173
166
210
231
188
188
203
229
267
194
131
212
238
185
147
190
224
175
200
164
247
206
202
167
237
187
206
200
173
208
219
177
209
195
216
150
129
178
178
155
182
138
213
206
217
153
236
203
201
177
110
155
162
230
109
189
186
221
160
148
198
236
214
224
202
190
147
116
239
243
215
201
225
243
146
203
164
221
273
148
244
249
241
208
146
191
167
222
223
235
229
140
132
203
195
252
210
204
169
154
201
197
186
217
249
185
272
216
214
160
151
144
240
210
183
171
242
247
136
211
154
151
243
196
202
218
127
226
198
193
214
193
209
180
208
221
235
254
224
192
244
178
203
196
238
157
224
209
252
165
143
264
196
178
165
179
253
222
212
145
185
197
241
180
207
160
201
132
192
178
182
204
233
216
208
184
179
188
202
230
204
189
201
165
201
210
257
220
167
228
176
206
171
241
172
165
201
247
232
180
190
170
185
254
229
185
199
215
213
188
187
198
193
165
185
128
202
171
190
204
164
169
116
216
225
249
159
244
128
185
181
217
196
220
169
140
159
176
221
219
183
184
206
197
138
230
245
201
187
203
245
132
150
241
170
187
182
196
251
191
221
174
172
235
171
209
185
168
165
201
175
219
155
158
222
206
200
163
223
138
203
215
134
167
209
203
177
196
87
179
244
224
195
238
149
132
226
247
178
150
220
255
214
178
226
240
229
242
182
175
216
171
210
176
126
174
188
230
158
194
221
180
189
183
160
208
238
160
213
191
236
126
241
164
204
186
204
242
195
203
157
160
158
197
150
161
191
100
196
235
229
273
177
182
162
250
243
188
240
203
207
162
238
143
221
220
247
221
201
265
206
160
199
186
226
194
205
186
194
235
216
135
247
157
189
220
174
163
178
224
198
185
217
213
226
196
186
200
166
226
197
208
175
187
185
166
209
242
236
264
224
152
219
229
244
198
210
201
200
254
177
233
192
190
227
198
166
147
147
210
254
193
208
225
227
141
212
213
234
112
165
229
190
205
169
222
161
219
231
247
199
188
190
190
128
210
187
173
147
159
188
197
175
232
225
210
161
169
227
172
181
250
197
246
189
194
207
194
148
202
158
195
159
152
212
160
218
179
219
171
232
220
176
216
203
196
142
179
206
292
209
223
236
166
206
186
243
209
128
209
240
177
217
190
179
239
202
203
142
228
205
203
213
195
150
209
198
225
138
198
245
217
224
281
268
255
198
140
225
155
170
175
181
256
272
243
265
183
214
165
200
164
230
243
205
182
207
212
234
213
211
226
139
227
149
203
195
233
176
209
240
206
188
183
187
189
236
171
155
189
172
223
220
135
222
156
153
212
214
151
242
169
227
261
254
161
134
149
237
175
141
184
191
246
245
209
254
192
165
173
184
185
233
185
191
195
231
205
216
207
256
209
242
158
223
150
190
218
201
157
215
238
219
193
245
189
173
133
222
222
199
191
211
198
192
169
217
158
210
221
206
181
157
157
218
169
248
230
184
213
205
246
221
176
193
198
185
220
231
169
218
159
142
194
138
134
243
178
219
165
194
219
218
239
248
222
188
237
164
237
132
171
264
173
168
260
237
198
180
163
184
174
173
185
141
249
199
188
213
129
221
184
163
217
187
242
208
230
237
187
225
193
170
195
170
163
163
168
236
261
227
210
148
206
141
187
217
200
169
179
165
243
188
265
191
170
160
236
214
167
186
126
259
181
194
140
181
202
219
188
173
191
191
209
288
177
201
253
265
216
214
254
207
209
248
237
219
201
218
199
129
247
222
295
238
262
206
252
218
241
140
245
257
138
204
150
131
155
223
253
144
218
208
240
192
211
244
236
232
206
277
202
171
174
162
171
212
196
231
217
154
173
181
229
203
217
239
173
273
183
161
153
176
182
228
226
280
236
220
208
177
186
224
181
196
225
224
141
186
211
201
125
242
262
178
196
154
234
205
247
205
230
228
243
245
107
189
275
218
138
179
199
208
178
219
167
211
171
219
201
180
176
66
193
265
208
197
174
260
185
208
208
244
186
230
213
204
169
207
250
208
234
256
226
229
181
127
150
186
232
201
191
196
191
278
189
208
195
204
163
222
222
232
202
155
211
201
218
246
174
167
251
166
234
275
174
234
157
210
244
230
191
179
202
136
152
197
157
182
216
225
204
215
204
175
160
232
159
200
164
214
166
230
248
216
217
238
178
181
189
212
218
243
223
242
221
186
208
225
123
124
255
216
152
182
247
201
174
204
197
218
170
254
179
192
271
197
202
216
203
134
178
217
208
153
196
198
140
256
216
127
179
190
205
164
213
166
214
227
240
209
232
219
188
186
151
191
180
161
150
206
184
191
198
148
241
169
162
177
239
209
256
230
189
154
240
198
217
218
168
224
194
179
193
198
251
242
198
204
226
174
235
206
161
192
223
197
165
141
248
211
162
246
233
246
194
230
224
254
224
196
185
197
152
215
179
172
218
249
175
155
186
219
194
191
188
191
191
249
206
205
222
224
197
152
210
199
221
211
261
185
233
180
229
162
221
219
228
201
194
177
238
199
192
235
151
208
232
153
218
254
159
252
231
113
187
209
240
140
183
227
223
162
230
208
241
130
168
196
218
241
204
202
245
162
163
205
167
225
166
201
220
196
187
221
234
207
257
205
249
185
184
229
212
166
182
234
179
202
214
259
179
179
227
254
206
134
162
167
189
147
245
257
182
170
170
157
240
137
181
208
171
244
227
177
286
213
255
182
150
178
253
173
216
224
229
213
174
238
212
155
196
218
176
222
192
183
166
222
215
211
165
231
197
199
211
198
173
158
205
205
214
216
171
153
169
191
212
123
214
207
231
129
144
206
222
201
156
186
235
228
201
205
201
224
252
192
172
189
235
193
222
137
196
175
174
173
206
179
179
182
218
188
129
187
227
171
203
155
208
202
206
237
192
200
214
180
157
265
256
205
186
191
250
225
156
208
203
194
190
229
191
191
208
183
185
179
183
171
180
234
160
206
140
207
190
244
212
160
265
230
249
211
252
179
180
216
124
216
197
197
226
250
189
192
236
186
219
204
153
158
141
155
229
202
211
163
224
223
107
193
211
148
159
197
239
159
204
198
222
249
213
192
228
247
214
268
177
230
226
181
153
199
181
207
215
191
235
192
197
181
149
223
226
146
222
275
233
221
182
189
203
238
167
247
129
233
161
161
139
188
232
213
193
186
177
191
232
179
182
221
221
191
192
267
252
194
229
174
200
232
192
213
187
244
196
231
251
219
244
269
188
176
147
185
235
210
188
241
125
228
240
156
203
190
190
161
197
246
215
245
254
202
217
162
159
204
202
263
197
213
154
269
143
181
179
187
165
227
154
138
201
193
201
213
115
191
128
189
152
225
183
122
221
246
199
182
233
175
235
186
209
174
183
174
213
244
188
199
216
281
191
216
191
249
296
250
203
240
197
214
246
266
224
248
188
145
212
230
197
198
223
212
217
137
213
188
247
209
160
248
172
232
175
238
205
196
180
199
186
226
204
228
139
154
207
223
266
225
197
221
171
168
245
276
195
215
221
197
176
164
231
178
277
212
206
217
206
215
199
213
231
230
143
174
189
223
203
191
179
214
232
260
171
224
202
236
181
189
223
228
113
245
148
260
187
179
203
211
148
217
160
221
257
111
219
133
202
243
176
191
187
223
187
184
241
201
241
196
237
166
257
222
230
216
206
253
190
212
238
170
243
192
259
216
107
221
193
192
179
175
210
236
164
227
152
213
206
174
182
193
164
171
176
241
191
245
167
173
184
197
210
153
228
173
230
220
172
187
178
182
133
197
182
204
215
182
145
218
219
162
207
219
217
265
213
219
205
235
188
161
215
199
173
219
143
188
178
187
151
203
192
167
223
178
208
178
201
229
174
181
141
211
257
198
214
200
198
261
199
203
138
180
221
164
140
205
289
185
241
140
255
172
200
180
204
232
196
171
207
236
188
154
236
148
156
206
277
165
189
248
197
172
237
154
184
183
175
187
189
146
213
124
209
198
191
222
212
217
163
202
230
156
187
231
163
179
206
248
191
185
228
177
181
214
229
197
164
156
176
159
187
183
222
209
186
248
223
191
177
250
174
183
144
206
201
195
146
241
147
228
192
191
224
148
209
238
203
209
200
215
155
154
178
173
217
221
130
233
168
228
166
159
174
230
177
197
226
142
216
207
138
165
168
255
157
199
249
217
225
194
238
209
229
226
237
207
209
128
265
268
222
160
210
239
254
195
216
82
215
243
218
232
221
243
181
145
223
222
178
211
224
216
214
208
221
197
129
166
205
189
243
231
179
229
268
244
196
152
153
186
204
265
170
247
184
229
165
192
193
144
132
216
227
271
167
236
255
182
198
211
169
194
156
207
210
169
204
164
193
215
154
230
195
241
187
198
201
170
188
226
181
153
156
212
196
245
222
163
167
210
210
117
142
211
216
158
194
230
200
181
251
160
234
169
176
252
173
252
202
199
243
148
205
172
160
170
236
275
229
219
176
257
240
193
185
211
207
229
233
235
195
172
239
214
187
194
229
198
213
271
239
190
133
177
162
206
146
217
229
276
125
168
220
176
225
181
206
171
182
166
248
159
259
254
242
243
190
193
219
273
201
249
251
184
235
218
184
190
153
212
253
207
212
252
206
191
174
193
210
215
175
169
166
123
171
134
215
235
210
191
202
155
138
153
205
130
197
187
134
174
199
254
214
188
122
193
175
243
218
217
223
184
221
219
180
149
202
192
185
195
213
274
223
180
171
219
196
137
263
179
208
210
170
213
258
208
314
215
197
217
132
135
208
183
182
224
146
217
163
252
250
166
179
254
162
147
182
158
157
271
177
154
182
240
168
218
160
166
228
187
284
273
170
218
217
189
175
164
230
230
184
180
149
138
196
172
220
200
221
225
154
251
192
180
186
254
178
168
173
182
184
181
223
225
155
207
194
175
118
240
193
224
254
210
158
183
209
259
205
219
203
273
207
247
170
214
204
145
138
170
243
221
204
238
245
186
211
256
257
210
236
228
239
254
191
160
206
215
266
195
168
138
177
207
242
210
205
182
247
162
176
224
169
195
229
166
194
159
256
145
166
213
186
134
172
224
170
193
259
169
188
239
164
195
202
254
190
210
174
162
210
222
238
225
194
210
203
256
166
140
196
284
210
227
228
199
157
208
210
187
194
211
183
224
247
189
186
196
181
251
142
233
176
134
196
224
128
131
230
195
200
222
114
204
212
186
138
223
210
250
179
186
131
199
168
213
211
140
177
238
165
190
147
158
197
215
183
148
214
175
239
216
184
220
287
220
195
163
194
220
216
161
188
202
182
264
192
179
216
221
211
174
187
154
197
175
198
151
189
201
227
132
208
174
183
182
237
165
243
188
241
173
191
140
221
203
214
224
135
197
224
181
177
195
213
230
211
227
166
158
197
212
241
209
209
128
83
138
213
220
240
212
206
199
143
215
208
217
178
160
166
201
212
249
206
215
195
225
197
269
155
204
155
172
188
233
226
184
158
177
221
193
172
196
164
190
197
166
177
231
218
188
242
200
237
177
230
239
150
173
207
210
259
225
207
207
233
206
205
208
185
242
219
175
183
185
266
208
130
211
143
110
175
217
169
217
154
156
229
195
224
202
255
256
189
236
257
260
241
154
212
212
155
246
256
206
138
199
200
257
103
233
113
213
211
204
205
218
227
228
256
159
202
237
201
196
155
194
223
238
200
222
166
240
207
219
237
245
197
215
225
220
152
223
216
207
210
253
231
240
218
201
226
212
255
183
207
208
232
165
142
244
194
228
154
246
238
176
176
202
193
193
211
205
187
168
176
263
227
237
263
228
146
145
211
203
208
237
217
191
239
234
140
209
181
214
206
206
267
189
155
137
253
242
258
202
188
238
118
151
207
252
216
196
227
177
125
194
162
140
200
162
258
203
221
229
188
215
172
153
219
217
203
205
219
207
214
129
217
140
203
208
195
164
231
230
207
242
250
301
194
242
241
204
227
209
200
230
218
165
195
234
215
173
158
297
189
182
172
161
187
179
214
174
220
187
250
163
231
162
159
213
210
172
172
287
197
216
190
192
149
236
159
224
182
258
187
202
232
197
238
207
207
150
211
161
214
152
234
184
199
213
212
178
233
243
168
243
240
179
208
214
147
173
218
210
116
244
161
232
263
228
204
233
255
199
236
162
192
152
201
148
188
188
183
191
211
184
203
226
184
188
253
229
213
195
147
234
209
217
233
176
182
106
204
194
173
177
225
191
220
235
238
219
216
209
212
198
205
235
148
204
226
234
203
167
151
189
159
195
246
208
213
184
189
215
281
202
184
130
211
239
212
185
201
213
224
177
175
238
128
191
179
168
202
217
253
215
188
177
198
220
206
191
165
159
205
208
170
188
201
214
222
108
184
224
183
180
182
212
241
257
235
164
204
178
157
129
235
196
252
274
153
112
130
198
205
208
172
208
228
248
213
149
212
239
180
231
202
191
193
193
96
151
194
184
243
189
144
192
195
209
223
195
179
178
124
184
204
224
217
205
178
204
203
199
246
250
238
186
201
173
190
206
234
199
203
205
220
237
173
136
197
213
165
201
232
240
198
217
199
251
238
182
147
216
207
175
159
155
165
249
140
204
168
172
197
183
149
231
182
213
189
200
202
234
144
261
186
192
192
231
205
288
172
239
199
188
207
171
196
218
194
196
262
232
213
176
226
245
173
212
186
180
135
175
203
212
163
253
207
197
249
224
202
152
247
202
207
221
211
276
178
166
215
168
144
219
195
228
225
225
257
165
174
233
191
196
200
213
185
218
218
246
273
169
177
190
203
200
226
182
165
221
166
185
264
165
158
215
149
207
225
212
229
129
213
187
200
232
200
171
164
214
129
176
208
236
226
182
181
149
183
243
206
199
120
188
177
208
208
210
174
228
178
201
180
102
144
158
188
181
193
231
199
186
219
203
153
196
217
245
204
182
202
202
207
175
185
239
189
189
211
149
173
237
200
133
237
210
161
245
201
145
255
201
185
212
191
231
123
223
217
187
198
183
143
121
217
185
195
178
160
168
193
182
174
180
109
185
162
186
226
202
226
173
173
216
163
184
177
174
213
219
215
231
142
147
180
209
176
182
178
196
112
211
183
129
171
220
252
163
170
214
262
195
179
164
196
210
192
213
193
188
215
175
170
188
190
192
228
229
189
218
240
226
162
203
287
172
211
224
214
230
178
175
221
167
261
208
204
204
204
204
244
186
209
141
243
203
174
159
195
158
244
172
242
226
267
187
229
206
194
193
201
215
205
253
200
252
172
130
172
122
193
241
210
165
239
205
194
191
130
220
139
230
179
239
215
226
172
232
198
187
155
216
225
194
133
185
164
242
238
200
136
225
191
109
197
192
139
162
211
161
237
150
213
239
209
237
172
224
222
186
185
224
199
169
235
240
203
210
165
224
197
229
178
135
173
170
179
179
125
220
218
221
177
179
236
181
241
121
195
227
211
190
248
267
190
143
173
241
215
203
227
231
213
146
221
182
203
273
197
186
228
185
161
189
207
224
219
232
210
254
200
237
199
187
142
161
144
161
277
247
260
167
182
142
183
242
249
208
237
181
200
164
185
216
202
218
182
203
196
219
171
255
167
201
212
199
195
223
196
215
214
230
159
229
182
220
212
261
255
194
232
216
207
186
232
173
238
186
241
171
225
220
158
172
206
221
177
280
253
219
205
150
235
152
119
202
255
215
163
202
168
260
228
173
213
208
210
219
247
233
235
246
236
171
146
189
190
200
167
200
165
211
230
213
203
220
220
176
184
147
207
242
232
210
207
278
230
227
211
174
202
200
160
197
188
207
200
222
210
175
206
216
118
180
206
181
274
229
222
222
225
201
162
199
230
196
236
230
176
201
221
211
225
173
160
207
156
192
171
220
175
217
195
171
177
216
193
215
212
235
187
222
167
191
214
178
191
204
225
197
225
196
260
164
209
240
280
184
219
186
292
175
157
260
206
225
222
200
172
230
224
245
150
228
220
252
175
199
236
211
184
237
220
201
234
186
185
215
217
171
221
164
169
230
211
214
150
219
231
193
172
226
228
243
179
223
150
243
204
235
189
166
246
218
153
227
219
184
195
166
165
161
264
162
225
238
213
214
189
184
236
250
208
263
217
206
159
247
183
180
210
205
219
182
196
184
189
230
198
207
186
221
173
242
232
162
215
211
173
159
186
194
235
166
156
194
216
178
179
131
205
183
171
235
196
214
160
198
146
233
248
237
177
215
184
172
192
168
155
235
241
206
210
185
193
248
196
205
171
195
164
180
227
203
198
199
183
210
179
176
207
231
142
161
230
244
236
266
206
234
186
160
238
215
183
196
221
223
219
186
218
221
157
178
205
198
212
172
162
134
167
135
165
251
143
188
244
122
222
197
185
218
188
169
144
168
148
214
177
182
164
220
194
262
192
216
219
210
108
177
194
183
217
191
223
213
177
127
160
224
206
222
190
158
209
253
240
217
141
258
173
129
139
143
164
254
188
170
153
204
249
188
236
195
160
205
206
204
245
205
216
238
195
167
163
178
195
243
197
172
231
195
177
197
196
204
164
165
224
227
116
185
177
213
189
239
167
231
168
189
206
192
247
170
180
232
210
274
209
195
240
211
174
242
224
275
201
202
214
164
205
174
287
209
182
261
198
200
192
206
204
167
187
180
192
226
233
164
208
144
185
171
183
249
254
243
246
237
241
202
216
233
223
227
212
179
157
209
248
186
189
175
207
199
218
208
151
189
203
186
211
152
217
246
150
164
150
216
185
162
252
170
169
219
190
215
158
144
200
235
194
176
225
160
192
224
216
223
163
194
225
222
215
256
247
227
180
73
188
196
194
235
245
205
215
253
235
200
208
208
241
169
144
173
244
254
213
184
220
229
205
208
200
176
195
232
243
199
221
193
246
244
157
246
232
219
206
164
225
192
184
277
172
201
179
222
229
233
224
131
230
207
233
149
124
205
122
189
170
208
139
165
180
215
227
170
218
201
144
180
209
235
188
114
198
211
173
192
213
217
252
188
174
198
186
103
173
243
229
237
236
199
188
218
214
176
201
264
189
217
239
172
262
201
200
234
159
229
160
217
196
177
233
263
259
213
154
233
237
162
248
158
208
185
194
239
188
225
209
210
186
225
213
199
112
240
212
235
248
202
221
181
266
213
174
196
285
242
178
241
253
252
208
205
110
138
190
193
224
169
175
218
219
246
242
267
221
181
225
205
227
247
158
253
229
215
150
207
159
227
194
240
133
188
145
212
217
205
175
199
145
251
171
189
195
222
228
211
219
229
202
261
207
244
186
281
123
190
185
213
165
147
203
218
170
192
195
219
217
132
195
244
237
166
196
198
210
227
202
194
236
231
179
204
222
222
140
213
217
197
151
249
254
167
234
208
230
200
162
182
152
169
240
189
193
197
212
189
191
191
180
211
222
166
168
226
127
160
167
170
196
186
213
157
178
271
172
183
236
203
180
205
190
215
244
178
133
216
272
195
201
199
244
172
271
172
199
220
182
203
254
250
246
219
252
205
220
136
195
226
187
249
135
192
181
165
241
187
188
262
218
179
204
178
173
229
213
184
181
164
219
189
215
192
204
214
178
192
157
245
204
108
233
207
188
183
199
253
189
189
158
188
233
198
199
241
199
194
233
149
175
221
215
150
238
245
147
174
276
221
221
203
219
219
255
240
194
187
229
202
244
186
185
197
172
221
275
239
221
238
162
226
226
192
259
174
227
179
178
187
226
207
180
149
148
184
196
225
224
196
204
170
203
201
165
224
209
265
156
171
201
210
179
230
255
186
200
159
231
232
211
240
241
281
170
159
203
154
173
230
220
150
225
206
195
255
220
186
120
190
158
215
208
229
178
194
177
197
159
225
192
219
166
208
113
197
188
166
192
218
227
208
206
207
215
239
167
236
199
234
223
194
135
152
216
248
175
189
160
150
208
199
184
214
229
182
208
160
201
202
214
179
197
128
239
120
186
214
174
196
219
152
177
226
169
246
229
246
250
208
180
251
250
214
220
211
133
264
237
255
217
230
214
242
214
234
181
181
199
241
173
219
186
156
188
210
262
192
209
179
225
191
199
221
234
177
179
216
185
104
187
189
211
187
208
207
282
214
183
243
222
252
153
232
254
212
193
219
162
264
190
184
213
220
234
233
183
201
226
170
212
220
166
201
267
179
187
213
220
171
190
188
174
200
191
249
225
192
131
198
224
270
177
219
185
205
161
222
254
222
216
213
228
205
247
201
170
230
196
220
176
191
128
196
176
268
173
192
248
163
217
151
211
218
231
235
198
169
180
204
245
217
193
177
233
233
161
202
259
209
130
245
203
199
173
212
188
179
194
211
220
232
170
169
159
132
181
193
197
210
202
187
196
207
258
181
196
238
240
215
220
216
181
214
246
208
272
216
171
204
196
143
211
136
204
256
201
212
215
243
208
132
169
240
219
226
195
191
208
130
199
174
259
249
198
243
233
197
188
151
234
176
201
237
227
179
220
161
228
261
203
214
222
231
167
143
230
153
211
216
152
232
223
228
180
179
201
177
195
184
292
188
179
215
258
102
165
179
234
204
231
141
209
238
187
222
155
240
187
199
232
263
248
219
161
156
214
242
160
189
171
171
171
242
180
208
196
202
263
151
233
225
226
181
183
185
200
183
240
176
221
258
155
221
206
134
244
152
230
189
230
188
205
179
207
160
115
189
238
129
201
192
195
194
173
153
185
195
172
188
186
205
162
201
193
165
248
213
205
188
258
179
243
168
223
212
157
207
148
198
189
150
250
230
208
226
214
198
236
216
210
148
163
184
188
187
243
209
181
146
213
194
168
213
149
195
223
242
244
190
155
246
189
174
193
251
118
153
204
205
241
153
198
139
270
171
121
240
236
173
183
200
171
246
200
212
282
236
154
214
201
205
208
202
245
112
188
189
237
200
179
211
181
214
204
196
158
126
168
174
180
167
198
189
267
199
215
220
205
170
121
230
158
163
174
205
205
149
188
173
235
234
219
225
222
233
239
195
171
223
245
233
132
257
189
199
187
216
264
212
238
233
210
225
141
206
239
178
179
181
200
212
233
202
221
274
230
153
217
255
192
207
216
214
190
295
159
172
140
236
185
229
221
197
153
214
166
216
157
211
150
257
264
218
205
297
202
181
195
199
150
202
236
199
167
229
196
141
166
206
170
186
230
238
246
188
285
194
264
176
232
231
226
168
172
187
190
181
193
165
217
194
225
159
216
121
173
214
170
199
156
236
176
225
184
245
178
193
196
178
211
250
176
246
179
163
233
177
198
232
209
219
240
187
159
196
138
236
256
173
199
208
228
192
180
223
193
175
161
215
197
224
205
194
232
219
188
230
170
152
260
183
226
184
130
177
208
154
230
197
207
223
192
178
208
202
241
120
202
123
215
244
244
178
235
172
251
79
208
200
209
217
236
238
148
212
242
166
253
212
170
199
131
198
194
221
185
199
185
251
243
160
138
149
160
219
198
137
210
166
145
178
189
173
171
137
251
236
164
216
197
214
141
209
131
211
161
157
171
169
202
194
228
219
203
204
218
134
176
225
261
224
171
202
205
220
167
224
211
184
229
210
251
160
213
200
167
248
174
171
175
225
197
183
176
242
181
267
245
252
221
191
249
202
199
258
248
153
198
177
224
195
171
194
194
164
173
200
178
178
200
224
226
163
200
225
151
233
203
156
236
186
186
207
219
191
194
164
211
192
219
207
194
152
166
177
234
203
176
135
260
189
175
132
156
199
259
176
158
177
202
223
137
201
196
190
159
163
209
269
218
171
247
178
156
146
171
199
186
215
209
222
155
247
181
235
143
188
199
215
193
188
227
157
180
181
156
225
218
195
202
182
198
241
183
145
204
200
206
230
192
138
210
205
154
190
189
200
233
169
202
188
180
221
205
194
150
159
254
261
225
201
239
224
199
174
139
202
234
170
186
190
197
208
226
204
211
216
219
162
198
175
243
235
250
187
219
237
193
208
135
169
191
225
187
159
204
209
183
178
207
205
207
214
222
249
161
195
210
236
192
214
191
200
189
218
155
190
228
186
232
170
197
224
253
176
184
239
212
203
201
168
186
206
168
190
179
203
229
215
246
223
198
223
112
186
188
147
178
211
215
176
155
150
210
213
106
241
214
191
166
162
199
193
233
239
123
186
220
159
169
193
176
200
186
263
265
220
198
215
182
249
215
259
200
231
227
220
231
100
271
150
156
208
176
192
269
282
226
219
152
241
198
191
210
201
203
115
151
192
129
167
216
207
192
233
135
175
189
241
164
214
163
216
239
274
218
187
218
144
170
174
223
180
184
229
147
201
225
164
182
208
181
237
185
197
202
105
227
240
166
239
241
126
198
201
152
191
271
231
236
201
185
272
154
240
238
219
147
241
176
158
201
161
204
257
147
194
127
217
234
204
173
212
243
228
203
155
165
231
205
179
235
232
190
205
151
221
198
187
192
188
171
160
128
202
168
225
160
150
233
210
232
246
197
169
206
163
223
268
199
170
217
255
210
225
126
230
230
213
140
201
201
143
212
247
242
204
243
197
241
226
110
177
205
171
188
206
242
255
175
182
207
238
221
215
174
247
220
174
231
152
178
142
184
164
160
182
151
192
136
224
228
188
213
237
201
215
164
131
184
196
173
218
192
164
190
151
237
210
230
172
192
205
244
241
222
185
233
197
144
247
219
198
149
155
170
205
234
179
156
126
147
177
184
162
253
180
184
237
190
174
170
254
223
190
220
226
237
209
179
255
229
173
135
233
174
188
172
219
178
205
154
174
223
150
196
187
170
249
184
152
112
210
224
181
233
173
210
207
137
238
189
273
193
258
217
271
264
229
190
208
219
173
212
134
265
196
172
230
220
167
244
204
155
196
167
180
228
170
227
118
159
134
177
179
259
226
203
147
196
204
198
234
190
227
198
165
168
254
182
200
181
192
235
209
211
222
227
204
205
138
220
212
231
182
233
265
229
202
191
237
248
244
261
209
193
202
245
130
223
213
234
233
136
240
227
192
213
140
169
254
235
180
225
184
250
148
210
146
172
180
207
229
193
236
162
206
200
188
197
188
167
198
184
243
121
210
187
220
224
245
225
166
295
210
142
247
187
176
250
163
194
182
283
219
196
151
251
199
183
176
206
221
180
188
225
179
154
153
218
211
179
217
189
222
157
235
251
217
178
235
169
201
157
213
218
195
193
182
184
225
208
214
182
148
178
242
185
207
231
195
194
174
233
169
212
225
127
244
220
170
189
214
154
182
181
201
111
236
207
160
181
191
225
173
177
177
137
181
208
145
188
204
205
231
253
283
221
159
182
217
212
165
188
166
175
198
220
203
195
168
191
207
175
217
210
177
255
175
177
227
191
160
252
242
247
232
148
278
196
253
194
235
197
224
187
132
204
214
211
187
185
182
242
217
208
224
185
199
200
247
203
230
227
212
221
186
186
195
215
167
187
243
200
215
231
243
185
165
203
204
206
191
199
214
218
277
187
200
190
125
241
167
188
251
266
161
258
249
173
164
231
207
224
172
234
268
264
196
233
187
137
163
185
221
178
222
184
207
224
219
231
218
185
208
177
216
156
233
242
197
188
145
146
156
285
215
184
210
192
218
174
211
196
182
152
210
265
158
196
208
211
258
238
220
239
216
254
164
208
195
217
178
184
235
199
156
245
164
234
216
153
228
257
149
227
213
251
211
176
185
188
169
194
162
192
214
190
223
296
221
191
196
201
204
163
170
198
162
232
255
231
188
174
270
230
206
187
207
137
251
209
173
206
173
176
236
263
235
171
195
179
154
148
244
159
204
202
147
168
225
185
221
177
249
260
191
211
200
249
218
171
166
212
237
225
247
142
147
214
204
171
138
233
173
228
214
189
250
242
223
236
190
236
156
243
144
201
187
209
135
204
177
164
211
150
154
239
227
185
184
225
235
240
212
209
186
194
178
164
165
212
186
143
204
182
210
222
220
136
212
139
202
169
198
205
235
173
149
135
229
255
182
228
238
166
224
182
211
211
238
164
187
159
141
175
160
201
189
132
239
208
196
190
257
68
205
109
252
271
191
248
234
164
204
262
212
174
195
227
205
196
201
190
137
156
193
180
276
221
188
195
209
239
207
216
171
216
254
152
104
220
259
206
179
162
197
199
156
182
162
180
238
238
149
198
229
151
201
193
209
186
161
205
204
255
240
163
264
165
185
269
231
167
205
169
218
196
202
157
211
218
193
236
231
221
218
197
207
240
255
255
257
215
162
258
255
251
209
147
235
233
198
122
170
187
234
263
180
176
146
184
185
173
235
237
142
220
135
178
217
158
250
198
249
201
192
201
218
200
193
199
205
225
239
220
216
219
170
158
231
250
155
161
203
204
180
192
239
154
163
232
221
211
163
229
195
247
253
208
183
204
185
200
169
205
225
185
181
111
216
161
196
234
215
194
182
217
200
156
180
201
213
170
237
198
129
165
246
242
213
211
132
267
310
215
211
156
194
219
258
235
210
199
175
131
236
215
223
226
237
154
214
219
157
131
226
164
190
213
174
244
244
195
178
203
153
120
181
184
275
237
226
223
249
139
236
185
258
191
194
201
145
196
221
168
192
211
186
184
173
206
178
232
222
215
168
200
180
177
205
217
225
118
229
217
139
208
143
266
215
229
235
200
244
148
188
258
202
264
249
222
202
217
194
257
185
180
158
230
221
169
141
223
235
179
157
236
227
153
166
247
247
242
188
189
151
229
153
197
206
202
263
251
132
205
232
121
153
294
120
155
205
165
242
180
220
218
202
186
124
143
261
183
248
234
211
169
211
185
178
212
231
183
187
157
192
165
209
272
175
242
144
153
263
234
186
253
229
170
252
122
197
206
215
141
242
272
191
159
204
175
250
244
216
182
184
143
182
224
200
185
247
261
183
183
238
202
206
208
190
210
205
209
247
185
257
191
259
192
238
234
175
163
207
189
226
166
190
226
236
220
209
183
211
230
242
226
227
160
218
234
164
174
178
191
172
146
271
191
253
195
177
229
179
169
224
242
225
154
175
174
218
261
201
198
238
247
205
221
164
141
216
196
222
214
185
229
268
270
213
217
166
117
220
194
200
242
155
196
212
191
131
241
258
151
185
190
155
195
254
226
223
180
216
186
245
159
202
190
159
202
251
173
202
233
203
196
201
139
173
191
282
221
184
204
209
207
198
180
139
210
173
171
142
245
222
218
191
167
203
185
92
111
254
169
234
212
141
240
207
116
257
194
229
130
186
219
248
265
163
196
218
249
136
172
230
229
246
208
197
159
212
217
228
184
235
186
227
149
162
194
203
178
215
180
238
182
160
124
190
218
209
199
205
190
188
186
196
156
165
197
237
222
199
213
195
196
193
289
168
161
237
204
211
223
192
200
168
250
220
197
193
194
218
168
225
222
224
173
211
255
290
238
235
184
249
225
232
258
251
201
208
260
256
205
163
235
167
281
271
226
197
166
245
202
236
225
244
203
165
116
213
142
198
177
169
277
236
222
173
214
250
207
178
162
172
221
250
190
201
241
173
189
197
278
266
217
238
138
163
204
222
239
188
208
200
232
205
144
219
202
221
164
201
211
217
184
211
151
188
198
175
178
215
213
202
201
194
230
194
136
87
134
215
249
195
129
255
159
210
139
151
226
254
249
246
219
235
265
208
222
157
193
141
186
155
156
223
185
186
160
223
261
143
158
261
221
181
148
239
167
255
247
200
225
143
203
179
197
227
160
211
221
190
232
190
165
250
157
172
185
222
206
229
195
139
208
196
179
200
224
161
185
236
168
188
196
200
254
122
215
226
145
171
248
261
216
193
266
227
123
220
188
169
204
222
247
174
177
152
175
214
125
203
187
196
194
243
273
188
212
175
219
182
173
228
147
244
202
186
191
134
170
151
263
243
183
252
236
151
133
128
208
242
150
255
220
213
141
274
172
209
224
165
220
214
197
227
197
202
225
157
174
225
179
234
212
192
222
225
207
251
212
201
159
190
201
254
160
195
278
230
159
232
157
266
186
220
231
252
244
190
183
209
180
197
177
193
212
215
156
202
239
187
188
170
251
199
254
238
225
160
207
194
138
183
278
199
146
202
191
216
237
183
240
265
196
204
136
166
202
219
235
248
218
189
199
131
160
212
203
167
205
174
215
192
248
182
227
254
153
194
216
208
256
214
211
204
264
220
232
214
201
182
222
180
240
146
198
249
173
106
208
153
194
160
195
182
159
184
197
143
227
231
129
215
169
248
203
216
205
176
142
167
232
211
242
195
213
180
226
225
184
187
218
153
200
171
230
207
225
202
192
202
222
228
255
224
228
232
168
279
216
264
201
177
228
218
214
215
226
176
162
169
194
222
227
222
249
199
161
230
265
133
220
220
227
184
202
105
164
230
184
190
211
151
163
274
177
179
222
168
182
165
180
201
123
171
190
166
250
196
176
232
174
222
132
137
191
223
219
207
227
214
216
207
177
202
203
185
195
217
180
257
154
159
142
220
204
162
194
241
186
206
229
160
205
164
204
199
215
209
150
191
179
135
200
163
154
188
214
178
217
251
173
213
152
201
201
172
225
223
210
161
220
242
170
245
196
244
246
177
249
216
203
190
162
227
221
233
155
191
130
217
197
188
231
194
233
172
191
160
218
154
221
196
171
219
200
198
169
218
196
181
103
228
208
182
217
203
194
154
193
195
199
185
234
158
211
145
232
164
168
180
202
220
274
205
207
228
173
218
206
173
221
170
225
254
204
162
239
197
211
139
148
236
208
190
148
202
173
230
174
147
171
204
176
198
163
161
211
241
202
208
172
226
160
155
207
218
258
253
180
217
216
190
240
167
157
227
250
236
197
177
181
237
207
256
228
212
208
229
157
184
155
189
187
235
229
242
204
209
209
134
178
199
198
233
169
144
128
162
229
211
202
206
233
215
171
207
188
208
190
223
240
277
218
172
180
224
163
209
168
239
229
158
266
177
165
177
194
181
173
244
221
215
228
213
243
198
203
178
199
198
154
242
205
223
173
251
236
147
201
165
278
190
201
252
233
208
231
180
213
203
226
176
162
206
229
163
207
207
225
181
195
207
185
243
218
171
209
214
199
190
183
238
168
217
193
227
181
203
196
240
185
283
200
210
208
124
177
263
169
214
168
203
198
235
211
213
188
252
236
187
188
174
211
278
229
174
175
253
215
220
146
238
219
164
220
149
158
229
224
211
220
211
221
219
195
198
239
206
155
230
212
159
270
204
173
239
159
222
197
138
201
207
157
260
201
155
190
181
178
224
208
238
194
150
139
204
253
240
151
236
177
235
257
148
253
235
251
201
210
165
206
222
153
210
209
186
243
181
200
179
201
177
222
181
151
196
219
178
194
144
250
197
247
172
168
242
218
269
201
190
196
186
155
172
201
219
240
244
168
110
245
208
208
248
231
168
189
201
192
163
205
247
245
233
250
174
184
194
248
239
230
214
120
265
150
173
218
172
219
159
226
249
232
155
212
186
182
193
179
209
173
268
161
206
174
203
240
207
178
236
197
134
168
180
159
180
98
254
233
197
197
196
245
170
130
226
211
227
186
139
237
175
225
137
160
197
228
232
219
246
160
163
207
230
185
200
156
189
174
208
189
159
210
151
208
213
205
178
177
257
206
131
229
259
203
195
272
207
184
154
214
153
240
155
206
207
166
228
184
218
236
172
238
186
219
188
160
157
234
192
249
158
145
245
228
189
148
182
190
169
229
225
219
198
193
259
230
186
220
179
224
188
194
239
219
242
271
212
212
216
157
206
194
212
218
174
218
160
190
159
192
221
176
207
168
203
214
193
222
231
231
185
199
182
160
275
101
198
202
219
165
177
185
191
229
212
198
173
202
189
131
138
190
190
210
177
206
211
208
219
235
174
187
197
175
227
266
138
266
138
187
238
206
179
198
269
206
192
183
213
231
183
172
239
166
255
142
184
217
218
167
169
213
252
226
233
214
233
225
219
244
169
166
209
158
189
262
222
268
198
283
259
130
158
225
230
206
229
177
245
214
244
176
163
219
166
202
158
199
234
146
162
239
151
205
179
237
89
192
127
141
200
213
222
187
233
232
224
224
209
107
195
169
197
206
172
169
199
212
242
136
223
211
214
216
231
156
192
141
180
191
167
213
170
146
215
248
171
245
197
247
226
207
223
249
197
137
218
180
110
251
268
160
214
230
168
189
223
190
156
206
244
191
230
190
238
240
252
206
171
227
174
225
183
145
231
214
225
204
181
189
241
181
201
239
231
164
156
206
183
229
206
263
232
202
202
166
269
152
185
265
159
188
184
147
216
147
202
183
267
190
236
188
207
204
184
166
206
207
204
159
162
248
189
193
192
144
181
253
248
210
238
183
214
145
147
175
163
177
136
168
204
185
268
186
155
189
201
252
202
200
176
158
216
258
185
221
178
181
205
211
183
245
247
233
164
173
229
200
150
229
203
195
217
205
222
262
185
205
277
191
153
206
267
149
198
229
196
276
196
196
169
192
205
153
169
177
163
163
184
210
232
181
180
200
209
208
212
204
255
238
206
228
182
222
163
192
249
187
226
256
203
263
177
224
173
184
216
216
226
200
181
212
244
149
194
181
160
251
207
195
217
192
171
244
239
252
150
239
204
175
221
244
158
185
214
263
149
188
157
180
157
215
188
250
225
182
154
193
198
171
140
216
217
234
226
221
149
182
188
167
227
147
186
183
218
197
204
270
204
197
172
224
191
190
200
218
242
264
225
180
256
162
144
184
248
223
220
227
221
212
263
208
238
166
129
203
225
223
177
235
224
240
215
230
214
205
172
196
194
294
154
186
252
212
187
201
151
157
178
111
183
203
175
198
185
196
215
226
171
244
228
184
227
205
211
218
175
206
170
191
234
213
211
120
238
197
165
197
183
164
210
152
157
185
228
239
180
215
233
226
203
170
167
178
183
210
187
194
263
166
211
193
214
224
196
259
178
212
223
230
186
157
164
133
239
171
179
203
221
213
270
185
178
273
252
221
206
227
243
211
209
167
258
148
190
254
217
232
182
246
216
153
173
176
238
208
152
190
129
176
213
187
195
166
137
177
229
231
184
194
193
185
171
162
232
214
208
183
190
206
200
192
221
239
160
144
210
185
245
169
198
218
241
217
153
135
199
155
237
185
203
224
161
254
132
216
218
244
177
181
151
153
201
170
177
220
179
257
163
238
216
182
265
164
258
169
148
231
234
228
255
220
220
232
185
203
237
167
199
186
221
161
263
174
142
224
303
217
176
237
153
210
175
213
163
187
205
220
166
255
145
161
204
195
196
183
168
255
176
204
215
187
148
163
211
163
205
243
161
156
217
228
162
181
180
194
199
117
193
178
237
233
157
214
187
239
204
173
181
249
228
212
134
228
232
154
199
217
205
176
144
212
213
166
218
172
268
141
208
196
201
161
150
197
228
183
194
203
185
208
193
240
203
207
225
169
155
140
176
254
197
229
176
229
191
179
235
216
206
179
203
148
175
219
216
266
167
204
220
257
232
226
204
111
201
133
216
235
195
205
212
223
246
202
194
198
137
244
204
208
208
242
170
243
224
210
190
192
250
178
173
151
196
204
152
201
212
191
137
217
228
233
228
200
225
233
230
169
201
256
192
241
124
171
182
193
202
209
168
218
196
231
237
228
190
173
202
226
162
146
162
126
268
219
205
140
191
161
179
191
175
179
216
272
179
231
228
252
195
221
208
218
194
184
182
196
255
176
213
212
172
174
197
257
205
226
193
183
200
135
85
214
222
128
136
173
222
162
220
160
167
211
166
254
234
185
220
215
234
219
193
212
200
125
208
243
173
177
177
210
214
196
173
172
210
206
206
205
141
197
270
158
194
190
224
166
233
177
176
193
189
176
170
171
238
201
131
183
155
178
171
201
192
176
232
155
142
146
159
187
213
213
218
133
244
196
169
219
190
197
159
196
231
205
235
210
218
256
219
162
133
241
220
214
152
192
242
166
175
184
188
189
211
161
222
174
244
245
251
253
209
181
136
217
189
182
199
180
218
153
200
156
176
227
188
134
179
193
184
234
211
153
229
147
261
186
162
173
221
197
214
188
167
142
161
204
228
149
260
214
190
201
208
294
185
244
219
196
148
189
202
184
217
240
177
255
192
211
227
199
230
204
222
244
190
219
174
260
217
253
207
188
212
159
221
226
216
220
238
174
150
206
133
156
167
165
189
244
201
234
182
149
179
179
260
228
147
196
228
186
192
151
252
222
168
203
185
229
202
257
199
212
214
207
175
175
186
188
201
192
212
224
161
208
183
160
164
177
200
272
143
197
262
243
184
203
205
291
203
184
138
159
142
259
211
188
290
240
204
170
243
166
264
253
209
231
196
246
167
199
133
201
205
168
227
170
186
155
202
216
197
259
165
217
181
165
201
230
127
226
198
181
157
214
203
222
224
214
215
106
180
177
113
168
204
206
173
209
218
263
182
244
210
199
256
192
185
155
222
211
187
221
180
273
230
228
225
186
227
241
218
187
173
214
205
247
173
211
210
232
179
156
245
221
183
258
182
190
209
241
213
231
214
167
195
167
191
215
213
245
238
162
181
201
258
164
233
208
173
248
170
236
189
186
225
168
218
198
222
175
252
164
190
203
225
194
198
226
203
207
209
224
269
199
172
161
203
231
149
239
223
227
249
144
241
113
226
255
215
175
194
193
170
194
253
179
131
100
179
200
191
220
165
204
221
193
210
186
192
234
164
240
209
161
216
171
260
256
194
178
245
240
236
174
203
201
174
174
194
226
181
209
189
168
196
166
205
228
252
190
253
187
201
255
182
198
210
256
176
169
231
238
133
195
174
250
212
160
209
162
276
182
197
197
158
258
221
197
185
211
204
147
212
201
253
209
196
245
203
234
243
196
156
228
140
112
179
198
161
269
204
163
158
180
228
226
192
244
212
127
157
227
157
205
141
211
179
120
251
232
198
212
193
229
176
232
232
227
159
255
169
218
256
253
203
192
160
224
192
171
190
188
228
195
197
225
174
149
175
91
203
220
179
248
155
203
210
231
191
217
261
223
215
268
157
164
196
139
184
196
188
207
128
253
265
213
192
226
213
225
156
208
152
196
177
192
210
171
166
184
267
177
215
148
210
159
205
101
184
123
190
236
261
138
195
224
179
218
180
213
228
194
157
190
198
224
207
169
181
231
205
223
227
213
161
253
214
180
200
246
236
258
169
162
195
199
120
180
240
213
222
244
250
191
202
217
246
207
213
166
215
176
189
134
261
241
227
143
173
239
168
150
258
233
222
251
222
164
230
199
208
228
189
227
166
195
235
206
203
192
240
170
281
207
173
187
215
220
225
228
232
133
250
227
252
213
256
162
211
249
202
145
206
196
210
222
210
186
218
238
164
168
177
240
211
241
150
190
219
183
230
194
175
234
236
162
190
207
212
259
207
196
206
172
146
158
192
194
244
223
222
173
176
196
172
191
148
182
159
241
219
206
205
171
190
258
212
206
234
219
190
246
230
223
182
159
246
209
261
163
198
174
166
233
215
185
179
216
248
230
198
258
192
195
202
138
162
202
117
186
212
136
238
232
169
236
228
219
166
205
263
186
183
174
194
180
228
256
258
263
236
118
197
226
176
194
181
219
224
181
238
207
281
251
166
203
219
185
161
209
166
195
134
183
175
241
194
226
243
179
189
247
294
167
249
212
255
175
161
171
183
235
206
164
200
171
215
229
247
205
199
161
106
228
184
234
156
245
276
200
237
215
222
190
131
226
257
145
221
189
198
240
192
207
236
243
212
123
230
205
212
207
202
192
257
216
213
141
184
142
182
151
214
175
268
182
169
183
200
246
248
211
131
199
240
127
165
181
175
199
243
123
137
220
176
215
228
289
175
236
195
239
188
199
249
273
225
189
220
190
196
159
197
204
272
160
213
232
206
252
182
184
177
174
136
260
250
190
230
200
221
247
197
237
171
186
152
207
244
224
130
166
185
135
268
173
185
216
184
120
190
199
223
213
193
196
223
183
168
214
218
164
191
186
150
202
215
173
186
171
185
187
151
188
191
159
195
223
161
252
222
190
165
188
212
127
159
190
206
231
180
193
215
228
195
253
213
104
215
204
150
253
167
159
175
177
224
168
194
184
184
202
202
239
228
214
216
198
183
166
238
195
216
239
169
242
168
203
198
170
206
208
239
149
148
178
201
197
234
188
187
164
202
152
206
188
200
195
265
206
177
153
199
173
252
221
211
160
217
213
178
230
134
177
178
234
194
178
179
176
168
194
167
192
196
222
149
219
206
199
232
188
165
161
184
166
200
155
187
226
137
166
215
197
192
229
233
164
212
187
227
189
242
240
182
149
217
247
198
245
142
203
158
232
187
207
178
180
193
204
198
186
190
196
180
262
203
150
161
234
160
207
173
201
205
174
146
163
230
182
186
203
180
173
143
258
237
161
240
214
216
179
222
207
205
275
238
142
177
224
242
176
207
207
193
238
218
178
167
237
245
165
198
160
192
166
136
175
179
210
197
251
225
232
200
144
273
151
157
173
179
203
255
231
240
255
234
184
124
179
171
170
226
220
213
259
258
207
198
195
178
170
211
183
181
181
206
234
186
257
262
226
226
235
206
228
197
186
178
223
222
191
256
260
199
213
222
176
147
152
188
208
183
181
153
173
219
224
185
209
157
245
164
238
261
140
153
222
261
211
160
212
205
212
259
182
229
130
292
165
243
263
161
182
158
217
167
137
202
170
196
162
160
200
220
211
216
138
189
173
158
175
241
212
203
246
163
244
234
165
216
152
188
191
210
199
201
227
235
144
153
175
240
145
143
243
204
179
231
146
176
131
198
238
159
201
237
171
201
227
182
234
183
165
206
159
208
210
181
200
192
164
242
179
238
217
127
192
155
152
175
166
171
246
179
198
245
224
243
244
194
225
216
199
143
249
164
198
203
234
168
219
230
246
214
260
199
236
185
190
197
245
203
219
199
203
199
205
110
215
210
162
192
207
180
235
185
150
201
237
155
173
283
222
208
156
192
255
241
201
240
200
235
211
179
245
198
178
227
190
186
183
245
194
259
258
195
199
175
215
179
181
254
287
257
162
214
248
199
176
166
220
133
209
201
225
248
200
183
222
207
192
220
196
235
167
178
212
191
211
216
195
207
207
192
202
229
250
223
207
158
220
246
172
185
221
198
198
232
233
225
211
195
228
188
204
218
190
231
203
179
202
256
151
186
215
161
236
199
236
245
230
198
223
213
157
179
162
218
214
189
220
163
206
154
221
206
222
177
226
248
172
166
178
222
232
171
201
230
131
175
132
230
202
230
204
191
213
204
250
228
222
245
184
223
167
205
249
204
245
176
214
251
210
170
171
233
256
208
172
208
172
154
241
214
279
211
181
158
202
242
201
220
177
247
211
207
253
189
244
179
149
200
194
263
220
214
186
234
228
166
217
218
239
216
207
234
202
232
138
228
166
151
206
232
206
213
228
186
137
212
214
221
201
241
232
239
274
202
201
110
243
234
196
206
151
166
187
234
152
229
272
207
155
232
189
217
201
252
200
214
187
242
219
209
253
203
245
194
158
115
198
205
160
209
105
233
224
213
200
191
214
221
184
199
138
196
221
258
104
200
188
198
175
225
125
215
186
192
146
211
161
214
162
192
197
189
187
197
150
248
157
269
149
160
138
265
224
155
251
217
192
237
206
227
164
194
190
239
247
200
240
192
183
229
149
214
161
237
222
178
197
206
238
232
221
179
244
169
220
220
179
151
234
260
236
189
189
238
256
219
219
181
203
231
234
220
238
259
192
103
191
195
229
248
173
229
227
197
220
196
201
269
174
180
229
172
174
220
263
217
207
194
233
208
203
135
151
169
190
227
165
225
172
100
164
171
222
240
168
228
260
192
225
183
199
244
249
151
229
206
186
179
158
201
268
251
186
195
156
188
191
204
189
213
197
235
177
248
187
218
229
225
157
183
206
176
229
233
159
248
196
228
180
196
210
210
198
180
163
229
206
214
205
194
202
211
254
274
180
215
199
236
250
188
186
229
182
197
220
186
229
248
225
197
219
190
190
215
179
221
207
207
203
185
229
204
222
230
191
213
135
252
247
199
189
155
213
139
188
186
183
199
222
240
211
221
205
207
261
196
217
211
237
170
174
162
214
225
218
222
208
223
131
190
281
181
180
241
179
174
165
247
200
208
211
236
202
203
199
171
218
247
186
204
179
170
245
238
149
185
222
150
235
190
188
219
194
207
192
171
262
182
244
181
181
199
201
135
195
199
180
146
296
206
203
185
220
212
208
129
179
264
197
142
146
237
224
154
198
121
209
179
169
214
241
201
203
187
173
236
175
218
186
204
165
203
229
212
192
159
170
262
237
152
228
197
200
203
169
159
203
168
253
211
193
233
188
224
225
142
253
203
161
157
241
143
151
120
180
202
172
171
119
234
225
202
230
152
258
240
187
236
166
187
216
173
229
159
203
257
197
263
161
207
182
229
209
162
186
210
250
208
202
178
194
150
200
209
197
229
205
168
208
220
216
264
217
183
219
198
219
203
183
267
239
171
241
154
202
236
180
197
193
201
194
178
211
221
248
189
190
205
223
223
142
164
167
170
189
221
192
216
216
224
224
218
237
206
147
213
193
235
191
216
199
196
199
163
183
240
197
112
173
180
183
249
151
222
255
153
229
186
240
198
165
175
197
212
140
197
181
233
221
202
152
243
213
171
179
160
188
177
193
205
233
242
130
163
212
250
182
206
215
187
170
193
220
204
138
228
184
169
157
233
213
137
213
241
105
266
198
174
255
175
199
179
209
179
250
205
235
185
165
152
197
227
203
183
193
201
271
199
216
158
166
179
182
206
216
125
144
223
231
203
166
199
248
175
214
176
203
169
211
234
181
190
235
246
246
234
187
254
180
153
165
146
218
213
228
175
189
200
227
180
244
205
231
166
254
178
202
139
279
157
249
191
219
189
198
206
189
211
211
190
213
225
168
197
220
191
126
162
185
212
189
242
171
211
201
214
242
236
233
196
212
179
253
215
167
167
200
220
236
226
161
192
197
197
266
219
138
187
223
203
139
184
186
135
185
179
142
225
212
148
159
188
183
199
233
276
214
185
207
197
241
200
192
184
257
206
233
217
263
191
247
197
186
197
187
231
222
250
155
172
238
249
189
189
185
248
215
225
140
190
157
230
174
195
148
253
248
181
202
228
156
236
263
228
198
199
231
236
192
205
258
151
229
247
139
228
211
249
208
181
198
212
231
198
203
189
202
225
231
217
159
217
177
187
214
218
243
164
203
223
190
180
211
180
225
212
188
183
252
212
241
213
210
185
200
210
216
192
216
178
180
196
194
196
153
213
209
198
202
200
188
236
251
133
238
217
237
212
207
265
181
191
194
211
143
196
240
178
225
177
190
225
184
215
253
173
191
230
213
279
149
237
172
149
128
213
134
182
209
228
160
171
232
248
175
170
177
224
196
133
206
153
201
112
193
256
224
152
133
177
220
191
215
249
241
209
205
206
129
221
186
183
207
190
180
244
216
172
180
204
246
183
176
154
187
154
217
220
142
233
167
165
211
201
165
174
217
194
242
248
177
227
154
160
200
228
196
164
204
241
215
235
205
176
181
201
259
218
212
229
248
143
138
151
152
159
186
266
196
244
169
235
177
195
195
131
253
186
212
166
149
195
151
233
204
205
212
183
143
230
282
170
234
183
224
217
201
181
258
166
209
224
185
152
183
158
200
217
163
201
204
127
195
219
253
186
172
205
188
212
210
240
249
196
184
192
177
260
213
254
215
221
154
149
123
177
205
204
207
177
218
216
215
240
218
232
167
189
165
135
188
184
208
214
198
147
234
177
190
212
154
227
218
194
239
181
262
213
120
193
247
157
135
207
252
219
180
257
153
217
241
122
224
255
225
231
189
225
184
195
149
243
195
229
234
184
208
204
235
211
182
251
123
254
206
210
201
198
170
245
182
167
157
214
214
241
249
181
194
212
248
237
168
183
222
204
247
222
196
163
216
153
232
198
146
219
119
154
174
226
235
191
172
206
154
117
221
136
248
183
175
207
147
192
188
185
150
252
182
134
165
221
200
192
219
235
158
191
237
196
208
165
198
191
233
234
200
226
200
243
194
157
168
249
213
208
229
228
244
154
180
141
176
215
270
167
188
188
262
227
219
209
251
182
178
183
196
172
189
185
197
233
194
168
194
198
186
134
188
197
267
187
177
187
147
222
177
240
170
196
152
198
197
144
204
181
159
242
229
229
199
183
139
208
198
212
192
207
206
203
161
277
181
182
216
245
207
237
173
245
206
196
195
261
170
198
190
184
168
140
176
206
170
220
164
144
173
175
193
230
192
156
221
212
197
197
253
196
194
191
159
135
188
243
242
183
189
212
188
210
271
208
188
223
177
186
223
202
200
199
169
163
181
158
243
163
145
184
215
181
170
233
211
223
190
238
252
161
233
175
204
228
249
204
231
140
204
194
237
180
233
193
168
238
267
228
183
163
194
173
220
171
295
184
167
216
186
205
213
165
217
217
168
166
178
253
160
240
134
158
208
211
182
205
168
224
189
174
197
232
145
164
151
158
194
208
236
174
267
272
200
207
190
189
228
228
207
190
257
240
180
201
211
183
153
243
160
131
198
181
215
177
162
163
209
192
178
194
226
186
175
196
195
190
238
170
229
250
217
225
132
198
223
210
203
227
159
171
203
214
170
138
184
185
143
187
258
186
156
186
235
247
226
206
205
179
183
224
199
160
195
211
224
196
226
158
193
210
169
278
129
206
195
224
198
247
244
204
128
168
186
192
213
221
186
214
169
234
228
248
196
151
176
199
242
239
247
250
202
168
205
224
169
177
171
219
203
167
211
165
144
226
145
198
227
302
208
222
242
220
205
203
196
142
189
232
200
224
234
224
198
194
243
189
230
168
191
185
187
206
206
185
229
212
204
184
229
232
223
140
265
207
197
204
201
136
177
167
206
108
205
159
217
218
126
117
222
180
204
194
208
244
193
222
289
183
228
177
238
207
159
156
231
206
276
188
189
195
204
181
177
181
203
226
163
175
182
201
162
200
265
161
169
258
164
175
163
199
125
209
251
212
207
182
177
163
180
180
194
166
203
192
147
190
193
184
198
157
150
192
228
232
193
227
187
255
234
157
249
223
225
176
240
220
221
200
231
196
214
176
194
198
220
208
209
201
235
230
213
213
211
208
163
173
236
138
243
226
175
198
235
188
212
157
203
192
171
198
160
228
264
203
213
233
252
227
226
282
215
206
227
273
192
229
258
223
199
160
221
188
232
254
251
286
131
246
158
190
202
215
165
154
166
222
193
215
235
157
171
198
207
226
159
149
199
225
243
257
197
174
208
207
151
215
217
179
214
210
169
187
172
171
196
213
244
191
177
215
200
143
184
208
215
229
198
298
192
213
153
173
170
217
214
192
218
230
165
161
168
193
210
157
162
229
198
192
186
227
252
205
222
224
250
202
222
138
202
192
207
192
176
206
181
192
165
217
248
205
182
219
164
204
177
197
160
219
221
174
187
189
255
204
183
210
222
219
212
205
178
188
160
170
166
197
253
238
155
235
232
164
154
203
258
180
183
207
235
187
182
239
206
230
175
228
193
219
216
198
155
172
221
200
240
179
140
201
123
205
157
152
206
206
126
123
168
217
179
278
207
210
227
173
236
145
180
143
150
137
171
167
185
187
146
249
208
176
164
198
207
204
281
125
171
169
275
273
198
170
166
149
210
180
240
206
180
234
236
236
186
180
181
262
184
175
173
178
228
198
194
151
280
157
166
196
229
218
185
229
186
181
157
158
171
162
198
216
207
235
200
191
197
181
203
174
204
264
180
200
213
199
181
217
198
204
136
213
209
172
187
221
204
186
214
185
153
260
248
216
219
205
138
264
247
199
206
163
255
174
216
231
226
172
174
220
187
183
248
212
216
161
185
257
215
211
211
167
248
212
218
225
197
199
241
222
212
140
174
226
230
253
204
246
187
244
228
147
232
232
198
262
156
126
220
219
189
239
202
168
169
229
167
232
198
215
265
216
203
154
190
204
161
174
196
168
221
192
192
162
184
264
191
214
227
266
169
173
200
183
224
128
210
158
218
187
239
126
231
222
220
238
205
206
204
193
169
227
195
175
220
166
238
157
203
194
161
148
214
197
219
266
181
181
227
208
221
212
217
234
252
183
197
182
194
191
216
214
194
192
222
232
236
192
206
225
127
187
220
230
156
161
220
202
215
242
220
269
221
130
175
177
200
204
240
217
123
165
193
170
204
156
215
140
216
244
271
252
200
240
216
156
208
205
213
207
189
200
160
229
190
197
186
234
191
229
207
208
134
164
197
194
180
280
191
203
175
169
203
222
240
239
229
233
189
148
191
172
224
257
195
216
200
199
158
244
210
274
230
213
154
171
176
208
204
222
210
203
181
210
208
186
153
223
227
237
172
176
238
112
184
255
181
183
252
164
143
248
183
178
206
186
268
140
160
201
241
226
263
192
183
189
171
178
230
116
230
165
180
204
184
215
248
179
226
164
234
146
208
221
211
205
180
211
164
228
198
224
209
217
221
201
192
246
192
241
192
234
199
225
209
223
199
213
220
211
272
267
167
140
200
152
195
255
226
183
218
221
157
145
222
190
172
174
217
239
197
214
175
187
205
216
193
221
164
160
190
241
236
219
258
199
181
183
205
126
191
196
183
200
216
186
200
199
274
152
164
192
229
227
237
202
97
289
227
254
220
243
234
156
121
174
229
199
222
221
209
196
209
136
252
237
203
138
195
229
224
160
201
228
203
163
167
179
170
247
195
199
183
189
163
147
236
248
157
223
222
216
216
179
205
230
213
226
182
158
150
195
238
159
204
170
166
154
192
222
185
152
164
239
153
216
201
183
236
239
171
179
197
188
236
212
185
205
238
185
252
191
139
183
221
241
165
195
181
185
183
251
140
201
208
253
191
242
207
218
166
212
185
222
208
182
220
217
260
169
233
194
242
223
196
212
222
263
259
160
212
211
191
235
230
148
161
189
262
211
221
180
236
148
214
237
235
170
122
246
245
195
179
202
124
128
250
167
178
161
157
204
173
229
242
247
159
285
191
228
139
252
197
198
186
123
216
259
190
170
206
222
190
238
294
194
207
176
239
177
183
190
208
241
214
157
182
147
198
168
174
194
236
195
185
248
235
172
166
197
198
152
216
201
174
231
190
203
180
163
190
229
199
218
143
218
157
216
225
219
211
162
125
199
179
224
186
197
218
202
213
215
263
255
234
203
159
207
225
233
162
193
159
219
207
172
196
158
227
215
243
162
210
193
180
220
197
215
251
218
182
225
143
191
268
186
200
93
226
167
239
197
156
275
149
188
222
156
172
211
198
264
177
221
228
181
214
188
247
202
171
176
179
212
233
201
243
150
211
162
222
229
222
174
167
168
148
251
165
186
177
233
218
215
134
184
230
165
210
210
160
261
182
183
137
255
217
243
220
196
222
230
214
192
230
184
239
179
263
165
179
230
201
174
264
144
181
210
205
192
227
147
155
222
199
187
217
134
183
206
198
208
189
176
226
210
166
166
198
223
271
222
199
263
177
214
226
234
200
182
174
182
153
277
231
209
151
196
224
218
243
154
258
253
214
142
200
217
221
196
210
178
198
161
187
239
188
166
183
234
195
200
138
188
197
215
186
202
210
164
203
193
188
183
244
249
209
209
225
154
240
278
170
251
195
236
131
163
231
202
202
170
152
156
223
234
249
211
210
156
206
219
216
135
124
213
200
193
240
226
237
220
198
225
275
213
229
207
172
220
183
179
192
203
160
168
151
269
170
201
231
224
212
217
198
147
199
211
258
227
215
146
204
226
234
205
246
134
209
222
212
167
238
174
156
189
160
246
177
212
190
252
196
163
245
230
214
204
233
186
271
256
198
188
186
177
207
185
143
219
257
208
261
151
167
179
98
160
223
167
190
155
244
255
233
173
163
205
228
198
185
180
191
227
131
211
208
186
182
187
170
190
216
219
215
189
178
208
240
176
150
210
199
216
163
190
164
234
168
277
202
124
213
231
278
198
174
214
246
206
208
199
112
242
148
280
229
186
258
229
164
215
215
150
188
241
172
216
112
238
200
267
220
209
201
281
198
204
187
235
157
146
234
243
151
215
110
219
212
160
232
178
224
237
214
145
140
112
230
243
211
178
175
204
202
229
175
245
217
170
149
209
165
242
207
203
152
275
199
134
151
194
260
222
233
173
166
259
194
196
206
192
197
251
202
244
207
243
250
198
246
249
220
164
245
199
215
166
210
228
199
218
209
210
181
217
212
165
187
229
208
168
196
206
206
187
173
208
241
269
182
225
228
214
216
187
154
199
202
187
198
199
222
214
178
177
198
193
241
219
215
216
164
175
178
169
196
135
141
188
227
136
181
182
241
192
199
197
191
158
187
238
162
236
230
144
182
250
233
149
174
208
163
231
210
179
158
159
248
255
162
202
236
301
250
223
208
202
226
161
199
226
202
261
230
138
210
247
208
151
183
218
206
230
217
224
231
239
217
210
236
220
187
221
240
222
210
168
216
149
230
205
190
215
203
132
206
185
181
225
201
212
212
242
196
263
254
184
250
171
202
158
265
227
137
180
242
215
190
206
243
218
176
208
202
188
152
232
130
204
219
213
239
162
200
173
216
195
255
203
147
186
196
209
251
180
240
150
200
213
208
119
219
207
192
235
227
196
290
206
177
181
162
201
242
169
208
141
169
220
169
169
193
244
174
266
205
173
190
234
122
227
121
235
140
200
230
216
223
246
205
232
199
159
158
190
207
167
216
170
266
253
193
277
219
231
217
225
132
223
205
173
160
213
196
194
168
232
187
198
235
228
228
164
229
214
190
178
207
185
207
235
184
214
147
203
193
135
238
180
249
110
200
200
170
156
208
208
187
235
223
214
187
198
189
220
203
234
189
219
194
150
213
209
226
212
212
183
136
201
239
211
245
244
200
187
188
210
232
191
188
267
195
244
200
252
255
179
190
191
184
172
187
223
209
177
165
145
166
150
245
171
190
138
253
158
208
212
166
202
163
204
198
238
171
211
162
203
200
266
257
166
209
181
228
165
242
210
208
182
278
214
212
210
210
217
163
207
163
223
180
248
200
202
277
183
208
207
215
219
172
146
198
201
139
129
215
210
238
251
193
164
200
133
241
173
181
207
217
211
211
260
228
269
247
240
171
222
239
191
225
192
194
199
245
163
150
114
262
159
239
227
164
177
259
153
259
213
194
197
218
251
207
172
196
196
148
226
171
271
199
111
114
228
234
169
164
218
193
190
245
224
155
181
265
176
147
145
254
244
220
282
200
181
223
254
172
225
185
216
203
191
211
161
228
218
227
221
185
214
178
167
153
210
132
185
189
187
195
199
198
197
201
180
179
194
135
196
199
185
259
246
158
170
181
186
204
170
225
170
195
201
183
195
204
218
209
172
188
177
148
251
146
202
171
206
212
181
190
195
230
158
230
172
203
250
166
232
231
204
168
199
221
212
222
219
199
235
252
194
185
228
190
233
243
171
213
169
212
168
233
203
143
209
228
197
196
239
220
250
180
211
235
224
148
188
177
221
169
182
176
178
161
262
208
183
228
189
174
146
179
205
226
238
191
200
223
227
186
163
214
224
206
211
225
124
227
223
211
195
199
155
195
203
186
181
249
200
241
209
172
115
142
150
210
253
226
188
162
243
190
224
142
201
169
207
173
184
210
261
203
208
175
123
150
174
125
157
171
259
218
237
187
231
222
220
193
186
219
250
234
140
198
203
177
151
198
216
224
250
212
189
194
215
212
168
216
198
168
187
232
151
252
177
211
198
234
197
243
175
242
166
183
255
223
221
184
188
149
183
223
118
199
232
175
185
201
175
233
204
252
241
167
141
143
182
193
209
259
223
201
213
220
172
212
179
223
142
153
179
192
237
184
198
228
178
236
188
251
225
254
189
226
253
229
181
199
214
274
192
228
251
268
174
193
269
199
200
238
221
191
201
175
184
178
244
216
199
224
183
230
182
223
176
206
226
239
162
202
233
194
208
255
227
196
201
205
236
188
200
194
256
202
162
203
171
190
242
234
176
149
204
170
262
157
190
201
170
217
204
271
250
228
207
229
209
132
220
210
204
208
232
207
164
202
210
170
194
198
226
196
151
202
178
160
221
191
217
203
222
189
143
155
169
255
149
199
253
215
218
148
227
227
271
223
181
184
211
167
147
154
181
231
164
283
221
125
184
224
188
234
227
160
188
180
138
184
234
170
161
195
186
201
180
272
188
206
202
222
153
145
194
187
139
181
239
233
206
196
256
199
182
186
208
231
213
209
172
129
229
176
205
202
207
194
210
191
174
215
211
198
221
195
182
186
271
194
218
248
175
196
247
202
141
230
147
209
189
226
165
227
245
150
266
165
217
205
231
222
194
199
165
175
243
227
225
191
217
247
247
214
230
240
184
144
155
116
163
245
175
176
240
172
225
264
230
145
207
182
213
180
169
239
196
173
185
164
187
213
195
216
197
201
230
199
186
212
156
222
187
155
226
214
191
211
214
205
234
208
213
131
191
183
200
226
143
195
187
168
190
221
214
244
183
217
113
154
237
187
236
203
244
205
213
218
204
219
182
238
173
203
186
177
229
213
192
208
268
248
214
150
193
199
238
238
191
234
190
233
221
176
172
279
256
183
210
212
188
198
263
196
196
239
193
198
216
213
179
251
205
259
174
212
183
215
202
170
234
230
182
244
191
188
182
206
233
168
109
199
142
185
206
238
201
174
260
239
196
232
197
232
211
179
202
262
284
203
176
154
175
242
229
218
146
178
167
224
166
239
189
218
221
210
242
208
174
203
171
167
215
124
128
204
203
214
155
252
164
207
251
175
216
175
185
195
182
236
208
224
227
179
177
242
148
203
211
189
169
201
218
214
190
207
256
225
192
187
196
230
222
200
180
229
184
193
228
222
187
220
242
205
241
170
225
241
226
192
138
173
207
192
146
191
179
143
233
148
147
246
182
216
218
281
223
176
183
179
174
224
187
186
198
143
185
225
263
162
189
202
189
187
230
204
208
202
230
232
218
216
207
249
199
157
240
171
201
200
237
207
185
237
149
106
253
175
191
219
210
164
219
146
179
244
234
233
152
245
195
155
245
197
154
170
210
199
225
184
174
250
231
184
253
220
241
233
167
219
232
221
212
232
158
202
230
155
134
228
167
174
152
213
207
274
137
108
166
236
192
180
183
211
209
178
192
237
196
216
215
224
247
163
201
166
204
218
260
231
211
266
218
215
232
253
215
181
209
248
156
199
205
244
196
242
118
187
205
226
170
187
214
204
224
226
203
226
197
200
200
233
248
158
195
190
207
183
187
219
198
235
210
203
243
202
196
182
232
197
222
135
188
187
145
188
227
192
189
241
205
177
171
199
190
226
215
147
195
184
201
171
189
227
228
187
223
232
152
171
185
259
222
219
138
195
175
178
248
194
183
228
217
169
226
198
155
222
186
188
180
225
225
242
179
188
234
239
187
212
242
188
230
159
248
183
178
235
162
205
153
253
121
215
255
190
156
202
247
218
216
205
160
238
178
192
224
202
199
198
230
235
198
221
246
182
216
239
230
269
200
188
164
236
204
218
237
222
179
230
216
192
246
194
193
157
227
188
264
167
246
178
279
212
153
155
212
185
206
219
256
217
227
178
260
179
216
192
245
186
230
138
185
251
200
196
225
201
160
182
201
161
209
155
194
207
174
205
193
222
207
214
170
239
98
196
209
194
184
202
208
286
184
153
157
197
178
211
195
246
222
197
131
215
172
234
193
190
190
201
192
175
229
184
208
160
193
140
216
175
203
142
144
220
130
169
247
142
232
228
200
188
135
206
256
202
158
201
164
216
213
195
205
127
175
211
219
190
173
203
169
196
181
260
178
182
205
250
227
180
171
199
185
215
209
199
179
191
265
163
211
162
258
139
235
194
186
208
255
213
210
163
191
190
192
233
240
185
207
239
185
200
153
197
198
210
191
214
139
223
216
168
214
198
169
194
162
190
170
226
243
172
139
217
155
165
218
172
207
218
169
207
199
173
223
182
186
161
199
135
204
195
248
189
184
292
198
209
249
161
213
205
216
214
190
230
266
197
144
252
217
203
229
186
170
257
203
200
180
168
197
199
173
131
194
133
206
172
225
212
218
159
177
231
194
253
173
167
173
251
204
189
151
202
155
235
191
204
205
259
231
148
202
169
259
169
209
186
174
213
219
224
158
211
222
173
198
218
192
249
245
211
187
235
162
189
237
194
143
161
174
128
224
230
192
158
215
253
152
277
180
184
223
161
212
229
221
143
210
182
244
209
215
162
152
190
180
178
178
181
205
249
217
206
143
230
198
245
184
224
169
201
196
207
171
161
225
188
204
151
192
170
187
212
164
160
174
166
131
230
199
154
199
211
196
209
228
166
189
129
194
245
172
226
235
185
205
212
181
265
179
227
191
204
150
204
164
211
219
185
187
203
195
214
228
164
223
152
198
227
212
167
168
139
184
144
244
245
244
227
149
168
172
168
207
200
190
219
160
270
180
158
177
225
254
136
135
154
194
126
192
212
240
157
197
156
229
194
169
183
244
250
178
176
223
117
189
167
227
150
155
229
195
266
157
227
162
221
224
231
185
205
144
198
224
225
205
227
189
291
235
178
162
200
197
212
232
252
156
165
142
215
184
197
186
207
196
172
175
200
137
177
274
176
159
182
240
197
220
180
221
182
201
152
198
241
242
204
208
205
248
217
170
189
226
220
215
208
142
177
233
163
239
242
192
213
203
223
156
169
167
235
155
164
207
241
240
165
195
205
223
148
209
202
199
249
206
186
205
187
144
238
162
148
263
207
176
193
187
187
186
161
180
206
250
200
152
207
204
193
234
192
173
202
208
266
236
190
182
188
186
181
254
181
185
162
216
206
206
155
227
195
206
255
179
250
218
159
219
155
155
235
179
250
223
205
190
214
208
219
233
287
171
141
215
221
214
202
244
199
162
121
223
245
218
121
139
201
140
175
181
204
153
184
189
185
152
272
231
231
209
211
178
187
186
217
208
151
184
208
200
197
248
193
146
148
253
194
240
225
161
210
243
185
188
174
208
167
156
190
191
152
242
160
150
228
216
245
236
182
199
216
181
143
206
191
183
217
266
165
156
175
205
296
146
201
216
180
197
128
264
247
214
172
205
205
227
212
167
263
223
194
197
208
272
173
182
192
188
193
169
160
209
181
111
157
183
228
207
165
184
214
231
197
241
193
207
223
226
179
236
218
216
174
147
183
191
222
219
212
191
227
245
161
179
152
199
167
255
163
182
244
179
146
190
178
162
172
224
219
184
162
222
172
208
143
239
229
226
240
195
180
161
196
239
204
145
162
185
252
86
228
205
201
98
213
211
200
167
166
135
176
216
168
230
183
200
236
182
153
194
209
190
182
207
142
179
129
226
192
191
191
230
192
216
169
200
187
176
211
224
134
239
204
211
213
219
237
218
222
230
220
267
182
201
191
209
276
116
204
187
190
164
176
149
242
198
176
184
200
229
225
172
205
233
178
193
209
206
187
198
201
245
182
203
181
218
220
197
226
236
196
229
157
179
232
214
218
191
119
229
196
197
214
234
222
236
173
208
161
178
184
180
156
214
180
89
168
211
166
184
241
211
158
136
237
143
166
225
232
187
185
178
198
214
154
271
231
201
239
252
151
190
232
213
172
152
199
169
242
190
187
162
218
157
265
166
210
201
232
217
205
179
247
264
257
167
184
223
183
208
137
183
189
178
215
222
199
234
217
245
161
177
211
206
188
205
255
181
184
206
226
214
223
197
196
185
160
222
201
205
198
214
193
180
218
207
235
123
181
233
221
220
103
210
193
257
221
212
197
210
249
198
180
264
245
193
171
142
213
268
209
193
201
194
218
213
194
260
209
193
221
252
187
196
193
253
171
260
154
169
201
216
214
192
209
204
260
185
197
147
174
205
199
213
187
123
194
188
171
161
232
244
221
156
303
203
185
183
224
119
149
267
257
146
179
170
205
187
179
161
114
138
211
173
206
165
167
179
208
228
238
240
153
222
252
215
172
205
190
160
202
230
204
204
215
226
231
217
236
235
215
180
210
234
207
122
225
193
231
185
227
151
200
181
219
208
247
239
239
196
282
220
174
187
187
236
173
192
264
145
198
220
220
189
223
138
206
191
156
228
213
176
150
210
173
153
187
177
214
197
181
276
233
277
209
227
224
232
229
196
183
203
141
199
132
180
208
234
221
202
170
243
244
229
214
191
234
239
183
183
176
217
189
150
254
190
175
193
128
142
185
201
236
225
242
234
170
130
218
177
165
220
213
240
159
232
191
200
224
178
165
247
222
202
183
207
183
219
185
198
206
164
200
216
182
241
190
234
180
168
160
170
235
136
215
183
146
173
208
257
188
258
160
207
152
170
184
143
171
220
155
248
184
238
196
160
233
218
186
151
207
191
227
209
173
233
212
254
178
217
191
172
217
214
224
223
141
226
116
222
176
198
216
188
184
179
177
226
229
165
200
230
221
249
177
201
192
204
156
214
206
198
187
211
222
238
147
209
143
187
189
167
209
220
253
253
244
208
207
193
206
270
197
221
256
158
215
207
203
179
251
202
210
198
196
219
240
207
216
258
184
190
187
258
208
193
178
192
248
251
204
196
160
168
170
181
163
190
210
201
239
238
198
165
145
201
124
177
210
194
240
215
207
201
174
163
226
195
221
164
173
222
228
168
247
202
223
204
213
260
113
230
250
222
211
260
234
235
280
224
235
254
149
237
242
167
225
139
170
170
207
201
217
218
214
246
229
141
214
158
176
174
195
225
220
221
217
245
201
133
179
184
227
210
226
189
234
252
216
186
148
228
199
224
234
198
206
203
187
226
221
181
198
220
160
174
178
170
142
122
181
183
219
228
245
116
213
234
169
232
195
201
190
216
236
220
251
217
166
200
184
194
213
226
165
230
246
246
181
245
142
193
195
217
210
151
189
189
256
208
176
210
233
153
150
216
187
152
167
173
200
198
220
169
206
158
164
227
187
237
184
192
203
252
140
202
195
209
257
257
222
177
245
197
208
221
193
243
224
202
224
225
218
194
246
216
207
205
207
199
257
235
224
147
237
157
211
206
188
144
219
223
205
201
171
175
178
277
157
185
214
179
208
188
195
235
176
179
205
204
257
167
254
218
194
222
132
180
208
209
179
238
215
164
191
192
224
141
226
212
215
207
213
211
211
210
228
207
158
276
218
232
163
103
191
213
176
224
159
196
205
191
252
191
186
209
208
232
176
158
141
200
183
204
207
249
195
214
194
195
206
193
206
180
238
177
249
228
168
233
212
200
221
239
125
171
223
233
227
163
203
159
215
186
200
201
174
270
237
159
152
215
231
153
221
195
193
206
237
160
187
173
169
222
213
249
203
245
241
195
181
220
192
195
252
169
194
186
222
194
182
215
234
226
210
171
201
205
184
289
182
196
180
163
205
243
181
212
192
202
204
242
191
239
222
189
237
230
263
187
211
188
145
229
195
184
170
141
179
201
167
214
202
195
206
220
178
193
191
191
200
247
243
193
144
193
191
176
154
192
219
161
199
213
208
235
202
212
249
302
203
181
154
205
217
217
197
128
198
151
197
196
114
245
208
165
228
150
212
247
167
225
227
219
230
238
197
190
161
203
169
270
251
163
239
206
252
152
210
244
131
226
151
191
217
246
195
137
144
138
205
212
207
192
224
138
187
142
229
187
194
222
226
157
183
193
165
178
188
168
232
232
213
204
172
202
228
226
194
134
197
246
195
161
180
180
211
214
232
179
212
216
200
179
219
144
165
195
143
128
206
175
217
207
170
198
201
199
165
212
138
193
158
134
196
222
196
257
167
181
248
238
265
188
187
186
230
186
158
209
242
190
187
164
149
228
211
214
206
165
188
223
178
189
231
232
186
191
156
204
242
251
188
251
194
190
143
223
189
206
185
129
225
233
148
215
183
225
183
168
243
195
151
143
217
185
183
274
153
203
222
216
174
250
198
166
180
211
246
216
187
191
246
187
222
121
155
223
212
201
202
193
218
261
206
230
199
213
199
207
186
204
216
242
235
210
182
219
178
224
230
207
213
253
192
204
206
227
270
198
222
184
200
154
218
237
162
215
202
241
201
207
211
244
177
180
211
218
227
118
234
155
192
236
201
224
190
230
183
208
231
249
182
208
201
175
247
198
232
136
214
176
234
152
187
172
218
200
146
133
217
237
168
262
230
227
212
195
263
246
198
147
241
196
171
205
156
259
235
203
176
200
224
214
238
228
219
180
261
268
214
190
162
174
190
196
219
207
200
200
151
167
190
246
172
186
194
187
209
198
152
200
177
220
204
221
158
255
243
122
171
192
200
170
161
141
253
169
183
193
196
197
199
156
208
154
238
164
210
233
204
150
190
221
149
200
242
203
201
264
170
254
261
229
204
219
258
168
151
231
229
233
179
222
264
204
230
204
283
206
205
182
231
126
195
214
181
239
230
183
238
191
223
148
169
136
192
194
271
226
229
185
196
177
177
232
173
189
220
213
171
133
148
212
227
211
135
184
240
225
177
197
130
235
237
262
187
220
240
206
194
208
202
155
227
156
229
237
148
211
129
225
173
195
257
258
163
197
230
138
233
206
202
188
224
216
165
221
208
221
200
171
163
204
139
182
153
208
178
243
217
193
204
230
175
242
219
193
267
196
207
205
203
204
212
216
253
219
229
216
208
160
216
168
149
182
185
188
213
147
124
208
241
218
208
233
209
159
229
185
184
205
250
175
227
195
198
241
171
166
173
230
213
191
213
198
277
161
192
195
179
181
189
224
153
218
215
181
200
277
203
214
158
212
245
184
214
170
189
210
162
213
214
202
202
235
240
126
210
181
185
209
236
267
197
142
225
189
170
230
138
269
188
212
202
268
222
174
216
221
185
200
256
236
204
162
216
207
239
240
254
195
184
202
201
152
156
190
189
169
229
178
215
143
191
157
179
223
171
232
233
156
234
204
190
132
261
198
258
156
201
134
259
197
229
192
171
132
183
239
246
101
197
209
205
188
206
213
173
201
161
243
226
184
185
179
173
166
214
221
199
189
182
194
184
200
226
158
229
189
204
233
240
198
217
224
234
183
277
275
174
190
237
189
186
142
195
192
142
169
199
210
234
165
187
245
229
210
159
208
195
218
187
160
207
175
199
172
156
188
177
210
188
128
169
182
184
220
177
208
240
197
188
160
236
232
251
211
100
200
182
258
235
214
199
156
237
227
255
148
165
207
166
214
169
240
146
191
234
211
152
227
199
196
168
232
208
225
222
183
193
200
244
243
164
177
203
158
172
201
216
167
187
170
187
155
160
158
212
216
241
189
218
243
179
235
153
173
232
207
138
189
213
213
163
242
226
238
183
243
287
223
170
122
259
188
221
190
206
146
196
209
151
215
219
218
179
211
218
202
201
180
273
236
277
197
198
271
200
208
241
208
167
214
233
198
181
187
249
184
239
223
197
236
258
199
217
161
204
224
227
176
169
163
193
181
166
188
203
202
149
229
220
158
237
134
141
196
231
201
245
203
227
192
216
273
204
217
196
165
247
216
194
172
208
161
158
178
202
199
201
181
207
170
216
225
131
213
170
199
182
186
247
192
182
148
233
232
154
152
240
242
219
160
205
196
235
170
241
154
168
227
216
168
208
291
135
154
221
231
157
163
270
201
221
183
220
189
207
205
252
216
191
200
184
147
190
245
210
256
237
187
208
182
163
157
204
257
246
248
178
239
169
203
215
200
225
198
235
199
210
164
185
221
223
193
190
191
189
181
196
195
263
197
231
189
180
115
172
210
196
197
221
243
202
218
215
221
178
195
242
198
176
202
206
214
176
200
256
167
248
251
225
199
155
194
220
223
251
240
180
233
202
223
193
170
242
265
203
180
253
163
182
217
231
271
202
126
209
219
184
278
211
263
198
184
231
185
154
223
154
244
189
178
227
170
195
172
175
199
118
231
227
197
270
199
170
138
164
193
216
205
167
215
248
211
199
225
216
219
237
165
234
230
200
151
203
241
186
166
166
179
211
202
217
194
180
174
170
199
216
186
210
223
190
232
226
117
204
211
184
215
226
183
184
159
191
184
243
178
225
198
198
162
200
160
194
185
195
238
155
210
220
217
210
262
187
235
185
247
200
217
123
229
241
240
156
137
144
163
228
258
180
231
253
222
149
216
180
197
212
186
169
191
220
201
201
232
191
134
247
176
166
181
246
219
227
172
231
247
197
206
233
214
177
192
214
236
143
213
153
164
236
225
216
241
216
225
220
178
197
167
181
249
156
218
252
191
200
171
239
140
230
218
188
174
177
219
200
158
251
243
241
204
171
267
215
201
199
207
224
100
168
204
241
203
170
223
198
250
210
165
207
176
205
162
128
209
161
245
240
234
229
206
159
145
202
228
173
224
235
217
224
215
233
241
184
175
222
206
202
177
194
214
170
171
184
140
224
171
203
254
179
198
235
199
158
252
231
210
198
152
222
210
190
192
134
220
202
174
284
240
214
167
194
196
180
124
237
202
182
185
227
188
267
227
126
178
191
137
183
201
243
253
244
165
201
195
192
260
242
173
238
201
262
206
233
235
181
181
180
194
202
240
244
249
224
193
160
222
184
189
208
223
236
162
200
225
209
169
128
241
180
211
149
218
198
192
209
201
158
184
224
192
156
229
189
201
175
141
234
184
179
193
211
156
231
208
182
247
215
191
241
214
233
241
248
219
179
108
189
260
161
209
236
129
233
223
217
163
136
190
162
206
253
202
181
237
189
153
166
175
168
204
139
205
212
160
162
162
195
185
257
232
213
172
228
229
144
186
239
214
236
188
196
228
252
184
232
201
187
205
181
203
129
216
231
142
194
255
275
227
233
154
212
175
207
202
227
240
194
219
206
241
172
217
126
190
204
198
194
217
176
184
162
211
178
218
132
224
149
266
209
245
229
161
211
194
230
264
207
164
203
215
148
203
235
207
178
168
220
182
248
144
210
174
206
223
177
151
137
224
218
213
206
238
222
157
280
221
177
254
188
125
228
198
158
199
221
221
215
262
210
158
185
187
250
182
200
173
166
199
185
242
192
123
169
151
248
195
175
176
217
233
270
219
199
157
202
257
227
200
203
263
229
229
206
213
180
214
172
210
215
230
224
263
207
197
226
123
208
193
176
230
209
176
195
207
221
210
225
251
166
179
254
223
170
163
237
235
192
168
209
211
259
225
248
220
191
211
171
169
240
217
276
198
218
112
205
175
192
212
162
179
278
247
188
212
122
248
211
205
202
170
190
209
158
266
173
193
192
168
175
187
148
189
229
155
176
192
209
236
233
224
144
221
155
184
239
213
197
210
178
179
240
201
218
148
198
226
179
193
247
179
193
221
180
180
221
196
146
209
182
227
206
256
202
228
266
131
163
289
169
187
180
171
256
176
251
167
198
205
109
225
221
194
144
142
181
220
219
143
180
228
181
204
208
155
220
247
214
204
239
239
205
192
212
204
177
238
179
189
218
203
236
202
174
198
209
191
223
167
150
206
197
187
197
232
171
164
241
183
138
219
238
176
208
192
198
247
174
194
187
261
157
210
149
247
147
192
222
191
162
163
220
253
209
217
173
195
240
223
248
254
166
223
208
202
181
173
267
190
165
146
208
221
135
239
154
217
186
231
159
207
231
242
247
189
230
167
226
152
220
252
201
234
170
167
188
174
199
168
182
134
224
251
188
214
222
188
151
275
199
213
178
230
228
230
181
221
214
218
203
171
170
236
178
195
166
169
177
214
222
209
216
170
205
189
244
214
196
183
167
207
110
231
233
241
221
251
212
224
179
192
198
180
236
225
216
134
222
186
210
208
241
198
160
225
238
212
180
157
181
201
201
248
229
259
132
215
175
249
163
227
183
194
224
204
196
179
190
248
214
167
225
233
170
172
250
247
205
144
229
173
219
187
209
221
217
235
133
172
170
231
150
222
210
213
163
186
214
100
245
244
225
187
167
185
250
253
246
141
196
200
193
262
186
172
170
112
169
222
240
171
162
134
219
194
216
236
173
208
209
217
192
165
222
259
217
140
202
222
184
194
177
212
228
255
234
214
236
203
211
167
185
220
151
166
156
256
239
155
195
194
230
193
173
180
230
146
267
205
207
227
219
135
218
237
215
182
207
142
178
218
171
239
201
159
142
230
211
227
266
205
233
201
246
195
218
257
232
160
239
152
228
203
209
258
160
244
232
210
169
148
215
233
248
164
175
243
158
240
259
230
246
282
201
188
145
179
233
246
185
225
193
220
174
182
157
170
176
231
190
195
199
188
263
227
153
165
220
267
232
205
205
183
181
233
188
180
210
238
167
223
200
195
217
199
226
180
200
188
217
128
198
260
161
173
236
223
195
189
209
108
223
247
199
151
199
139
220
197
258
255
222
197
164
220
234
166
177
190
205
205
242
150
225
259
167
226
207
249
179
198
231
221
180
219
158
192
205
242
220
199
264
153
146
223
219
257
186
177
163
221
197
237
224
191
104
209
165
223
147
142
170
211
252
220
200
198
270
279
201
184
142
159
125
196
202
227
219
142
218
154
218
184
169
205
253
211
207
206
201
145
196
225
201
114
288
195
171
175
239
230
234
245
223
193
189
187
257
160
191
196
203
241
191
133
209
204
185
217
244
141
161
217
219
226
214
245
172
250
197
179
242
192
158
206
242
236
204
158
227
235
201
214
211
251
213
232
184
194
176
195
146
202
227
171
232
185
214
188
208
104
168
231
190
253
208
232
150
180
240
212
192
241
181
159
223
198
208
234
143
199
223
249
160
151
239
146
201
225
187
185
208
209
195
177
211
189
156
193
225
181
232
196
194
191
243
204
247
198
221
230
131
277
259
211
227
218
220
188
195
188
188
187
201
194
224
238
221
228
249
145
204
218
212
176
193
204
177
188
195
178
215
189
163
146
244
262
186
180
146
182
232
211
209
287
193
168
215
186
170
178
153
222
254
158
179
203
142
119
168
236
265
231
207
191
195
218
191
193
208
238
286
161
243
201
125
184
207
144
202
227
178
235
209
229
176
221
163
179
191
189
196
221
201
151
199
222
192
167
211
151
213
163
201
229
191
231
248
256
201
182
226
215
252
231
151
159
181
225
188
220
182
202
165
187
209
161
205
204
184
177
229
123
230
215
253
256
218
233
217
162
209
199
210
121
246
228
233
228
176
207
196
188
185
226
195
246
213
218
231
232
220
213
232
166
196
244
178
189
164
142
274
187
225
225
222
199
247
233
251
144
180
186
174
198
245
192
237
186
226
234
177
227
172
191
216
193
188
175
114
220
191
185
202
241
198
207
167
217
281
179
162
213
196
223
197
169
176
211
182
210
150
202
133
161
212
220
152
157
217
234
120
192
247
228
144
253
177
191
186
198
208
222
248
213
211
280
236
189
197
202
227
159
224
175
96
244
265
188
228
185
244
193
196
193
196
214
268
246
189
184
221
219
216
295
170
228
235
198
179
208
243
152
202
199
148
195
192
283
236
212
144
264
187
257
206
234
268
220
236
187
239
198
212
249
191
217
224
152
202
134
177
210
199
201
209
149
197
198
180
172
213
214
242
211
139
192
252
141
224
199
168
250
210
197
210
181
207
234
163
176
248
200
172
213
130
126
177
234
221
249
204
219
194
216
193
200
112
135
225
157
233
234
216
210
272
232
177
193
232
198
158
219
186
182
229
207
192
90
215
163
232
217
206
261
248
158
234
253
232
196
166
182
147
259
238
210
183
224
204
217
225
180
204
218
184
178
235
164
199
189
205
207
228
188
177
210
201
159
182
187
221
209
232
201
236
170
198
177
214
165
175
184
229
145
226
204
188
173
180
183
166
175
212
206
194
213
131
201
211
178
141
163
234
173
196
220
215
165
232
219
205
194
195
163
255
255
260
233
181
171
203
221
200
133
203
155
143
199
213
219
172
187
195
227
201
181
220
153
216
275
212
184
210
168
225
190
222
173
193
251
200
213
191
219
218
221
194
240
203
156
180
181
147
194
191
229
269
138
191
166
217
200
187
226
195
243
131
240
186
166
150
252
211
172
211
206
140
213
234
241
197
214
169
219
197
200
252
161
207
234
170
134
207
215
188
224
190
226
212
198
143
167
155
215
225
240
215
201
208
196
211
168
166
159
128
219
190
224
166
217
169
198
187
178
151
167
232
164
228
223
257
265
198
204
223
189
215
209
245
225
190
218
169
180
232
183
119
167
200
147
180
191
248
202
87
175
184
222
229
206
211
220
190
235
200
203
180
186
211
209
218
209
217
183
218
184
194
240
177
193
182
173
210
224
186
243
176
170
237
196
165
246
135
195
223
190
221
158
238
166
203
222
272
192
172
193
214
206
149
234
131
165
189
188
183
171
183
274
219
181
191
230
117
252
239
227
181
181
219
225
210
238
225
231
203
163
215
258
122
228
181
138
206
186
203
200
214
259
196
231
163
209
202
209
202
219
185
236
232
199
235
252
179
174
192
198
234
170
141
148
166
231
171
196
262
185
226
175
173
127
238
239
219
201
163
237
229
193
200
215
199
154
143
150
230
228
204
219
183
195
151
220
101
294
155
220
218
261
186
226
195
214
186
243
190
219
174
128
235
204
154
197
150
196
268
160
193
183
253
252
201
201
195
134
237
204
162
229
187
220
144
211
194
238
201
118
128
231
162
186
191
227
181
197
220
202
230
170
252
185
141
179
140
205
179
248
124
137
234
152
197
198
257
181
251
208
194
194
181
209
206
192
227
240
206
159
191
283
204
227
177
221
194
198
136
198
185
196
242
199
191
216
204
201
158
229
295
218
190
200
233
190
193
182
174
216
212
215
211
208
209
163
163
164
239
279
192
194
183
236
196
168
198
194
137
197
220
158
235
171
175
156
238
230
175
213
190
219
269
205
214
237
184
195
186
290
145
227
178
168
219
192
211
184
257
215
188
274
179
212
201
191
244
157
235
145
135
189
136
184
176
231
224
261
198
170
242
207
209
165
279
221
179
199
180
170
173
210
171
254
222
242
214
214
183
180
263
217
259
187
232
186
201
178
199
201
205
170
204
220
191
159
196
236
221
169
201
220
178
190
146
210
197
207
212
193
209
196
171
225
183
154
260
167
224
139
216
244
193
124
232
139
160
224
147
150
232
212
189
236
214
228
205
180
230
186
230
187
177
241
212
182
215
250
210
171
223
168
195
235
219
228
183
241
175
169
166
202
162
208
182
202
190
216
187
266
157
188
220
193
214
202
225
268
245
188
219
206
172
208
254
160
219
225
216
192
178
193
227
161
198
196
274
154
230
177
220
233
243
194
227
190
230
154
201
195
200
189
169
104
243
232
224
221
222
152
145
254
155
191
224
201
261
220
202
193
233
219
189
216
167
228
185
249
198
179
198
178
179
152
203
200
214
255
158
150
200
229
168
202
225
172
213
230
174
155
214
154
139
172
218
223
218
202
214
189
235
234
230
182
205
229
249
210
212
201
198
174
208
195
165
225
211
202
214
178
186
196
192
227
194
228
202
164
189
148
145
226
192
220
218
170
245
157
252
188
266
224
158
202
219
153
181
222
236
126
196
154
225
231
202
244
194
262
199
253
205
213
157
246
180
123
216
177
172
218
215
159
196
154
181
221
184
215
184
189
177
214
221
177
227
202
156
185
173
220
252
256
226
208
235
176
211
146
200
212
203
164
231
224
152
173
104
212
198
178
203
160
206
236
202
124
215
183
227
227
220
192
220
180
147
214
223
260
156
216
169
216
82
208
174
236
207
172
200
232
213
192
245
220
232
192
122
155
156
181
197
192
241
229
200
175
179
225
137
214
185
195
124
171
138
275
229
147
224
173
156
157
204
180
214
172
193
179
260
216
211
203
222
232
194
199
201
253
229
188
220
228
193
228
153
206
182
215
238
206
253
256
224
170
150
240
210
108
227
190
200
215
181
217
207
183
152
98
220
221
202
227
248
188
233
169
185
211
191
207
185
204
196
219
293
227
196
206
174
180
162
217
191
206
222
171
266
172
177
206
163
220
199
192
253
158
215
247
173
214
179
127
162
218
188
249
205
203
207
221
185
243
182
178
131
195
186
184
177
174
205
228
195
209
256
190
233
249
220
217
218
166
194
229
149
183
149
176
186
174
213
250
194
189
215
187
188
215
138
173
234
225
225
155
215
226
143
172
168
228
218
169
222
265
151
188
192
201
257
208
204
188
202
221
194
191
184
184
198
227
189
206
127
236
240
146
177
206
215
184
201
159
208
224
191
190
211
210
214
218
260
231
187
209
206
211
199
178
244
163
262
168
155
188
143
259
140
178
167
212
184
116
218
195
217
240
203
157
229
276
173
198
215
243
205
169
147
173
205
189
273
272
244
198
230
235
237
244
206
212
235
159
170
200
165
236
184
150
197
148
239
195
207
164
194
132
229
287
216
233
210
198
232
261
194
191
180
146
229
202
231
207
231
196
211
194
167
156
262
219
204
129
174
201
206
247
208
202
213
184
248
247
257
230
257
190
229
212
229
157
220
245
214
248
205
232
223
126
192
158
145
198
272
183
225
228
204
230
151
167
212
225
175
232
235
152
201
201
166
207
185
191
210
238
176
259
198
179
138
226
161
195
184
205
108
187
153
158
134
137
251
216
208
198
213
187
234
193
207
158
244
235
206
173
212
218
231
127
216
197
192
116
215
245
192
201
198
176
164
238
208
250
212
232
170
244
223
252
201
150
204
189
206
194
209
191
153
205
128
185
209
166
124
240
240
212
224
239
211
201
202
225
225
175
192
223
196
157
168
189
145
229
199
232
245
185
158
275
194
161
175
215
223
176
191
230
213
222
204
190
212
248
156
113
197
136
148
190
203
226
170
227
169
192
280
199
264
222
238
207
179
190
170
172
182
267
203
214
244
246
162
222
196
193
178
175
177
187
192
144
187
132
222
134
236
187
224
206
166
176
256
158
160
188
163
126
236
235
154
168
233
156
226
214
164
213
159
211
213
110
194
216
189
195
206
200
171
161
188
235
163
242
208
224
236
226
183
234
206
173
183
206
153
233
215
150
258
174
191
245
266
228
183
241
210
191
205
179
173
217
219
185
143
146
227
148
215
193
253
245
197
237
229
172
206
214
189
165
249
236
235
206
231
226
246
212
234
266
219
229
264
146
160
247
244
216
217
206
227
231
192
240
152
234
176
171
194
216
213
174
207
176
145
151
230
227
200
194
199
147
230
191
195
157
209
223
263
166
192
232
170
188
276
139
220
212
191
155
186
128
173
212
141
240
164
145
183
169
204
190
184
198
164
224
167
170
136
217
197
220
170
142
199
200
238
163
220
229
210
151
220
216
177
221
176
200
186
170
213
171
179
208
188
197
141
204
231
135
179
169
222
274
219
160
189
176
200
132
232
180
187
204
240
177
212
214
226
189
214
173
229
256
219
185
210
191
234
153
212
249
193
151
154
180
208
242
219
142
219
216
199
230
171
217
232
185
192
167
211
179
250
239
246
195
207
202
255
164
223
210
146
226
243
169
246
187
220
244
179
231
194
173
232
265
200
167
171
207
238
212
231
160
254
202
154
193
198
216
213
113
247
166
247
159
237
213
227
183
183
192
180
215
236
214
179
213
188
231
197
148
205
172
223
184
215
239
149
179
216
180
167
202
190
167
159
176
157
177
222
182
211
201
216
168
227
229
212
142
199
212
202
218
190
197
204
189
189
237
144
237
204
263
160
192
231
226
114
210
233
234
207
212
151
201
202
245
186
190
179
245
171
166
240
220
197
200
245
197
214
245
151
234
184
200
218
195
203
204
222
165
198
230
214
219
213
204
185
224
156
230
164
205
188
244
187
188
228
214
257
192
148
147
240
237
174
227
234
243
208
237
195
196
208
205
224
242
121
200
190
199
177
174
248
217
193
171
208
203
210
182
226
163
171
141
200
142
188
152
190
196
224
201
229
160
206
247
228
216
150
182
167
232
163
200
216
168
228
170
188
238
164
218
189
161
163
181
188
199
161
244
156
178
237
203
264
184
149
192
179
188
197
175
199
157
149
232
141
198
218
225
274
243
211
165
203
203
221
210
207
214
170
168
198
190
237
241
214
237
232
171
212
143
237
204
246
205
221
153
220
213
194
214
250
148
186
280
191
233
256
196
198
231
191
174
186
196
243
160
182
200
192
208
184
123
194
247
271
185
187
176
230
170
215
229
200
216
120
206
184
168
164
182
220
231
167
174
216
249
154
192
215
228
230
152
219
205
244
224
256
181
242
208
210
176
212
184
199
231
184
202
255
192
215
181
187
200
222
218
188
208
211
241
139
178
243
187
212
159
172
197
218
164
207
214
194
227
199
154
230
198
219
288
194
188
193
226
244
247
226
184
158
186
207
191
137
143
231
246
198
230
261
183
153
222
237
207
213
229
177
253
220
203
249
185
213
208
155
235
169
212
241
227
182
213
224
225
248
284
207
166
255
192
180
244
169
199
169
184
197
190
160
170
226
139
192
216
232
182
195
195
176
181
225
201
239
106
254
267
208
244
217
206
194
186
203
209
205
246
237
160
153
183
204
200
259
161
178
213
221
208
218
220
225
149
117
200
208
168
208
139
126
249
150
251
172
143
227
215
125
165
113
225
195
195
160
198
177
191
158
146
209
238
184
163
156
185
202
235
150
241
197
239
244
227
203
183
248
196
276
181
203
176
173
231
211
232
192
190
260
184
203
202
202
212
135
191
252
225
231
217
118
213
193
204
242
236
198
163
204
247
194
185
152
241
204
209
230
178
226
214
184
240
217
171
200
219
242
170
201
185
187
252
235
135
207
135
193
186
106
219
222
200
141
235
160
252
241
242
221
258
190
185
182
171
154
210
187
233
213
179
234
161
176
202
202
264
241
215
181
266
211
217
214
147
253
206
197
200
184
195
231
191
174
204
97
238
201
172
244
213
184
199
175
190
193
175
212
172
210
249
176
184
156
142
197
206
165
204
251
244
134
192
182
223
241
260
144
198
244
232
172
229
226
200
183
210
185
257
193
245
177
191
186
158
221
273
142
229
141
211
167
194
213
215
171
207
196
205
203
147
206
198
185
168
162
275
196
207
196
205
175
163
215
159
245
206
209
187
234
231
157
280
199
198
231
210
205
173
228
237
232
147
226
188
208
220
168
209
225
193
176
199
187
174
235
176
170
218
183
218
219
199
200
219
196
169
227
190
206
221
178
253
239
188
167
267
213
188
160
140
198
212
238
202
213
205
203
165
173
189
206
220
161
235
213
195
251
209
175
178
194
195
167
249
219
218
133
248
210
224
204
194
162
165
226
189
229
225
217
170
176
137
255
200
190
215
150
204
157
207
188
190
212
174
211
165
235
194
232
216
166
190
190
211
253
200
185
201
203
212
161
222
130
195
170
228
190
249
197
234
149
144
262
262
266
211
138
239
186
204
157
179
221
145
175
129
200
227
177
136
160
214
215
168
183
211
180
204
190
176
185
119
221
161
197
208
149
237
204
193
183
146
220
220
156
245
184
185
218
198
212
116
247
183
189
252
189
189
182
181
186
115
217
201
224
234
172
178
177
228
185
224
186
190
214
146
168
234
164
233
268
241
205
143
184
194
179
199
202
230
218
181
230
170
181
177
237
195
272
167
238
159
243
197
198
153
173
142
175
204
189
198
228
182
167
222
237
157
224
213
223
188
211
198
218
210
211
184
194
236
239
234
237
143
171
179
177
220
231
219
212
172
174
193
184
198
225
164
252
242
218
167
207
171
215
240
245
206
130
176
199
175
160
198
252
191
174
264
189
216
181
235
230
270
173
239
162
208
171
181
171
238
255
197
259
213
251
153
186
228
196
220
163
216
214
241
257
176
234
207
155
196
227
183
189
165
189
198
242
232
222
188
236
206
168
188
240
136
251
230
189
231
142
195
229
207
175
230
119
182
194
141
235
192
212
208
163
237
173
243
195
188
241
197
159
195
208
243
253
228
232
186
230
285
200
151
190
178
206
206
229
197
122
205
251
153
222
228
122
134
198
152
202
131
149
246
178
172
263
216
155
216
180
159
212
161
163
207
195
212
191
188
190
177
153
176
201
165
177
214
195
261
215
224
259
128
181
166
249
251
144
267
227
207
190
176
159
181
227
227
125
182
165
194
204
201
187
165
189
234
192
219
243
203
194
203
198
226
276
132
162
204
212
219
175
181
252
245
220
194
180
195
229
162
150
227
190
169
229
208
183
273
205
175
237
214
205
230
191
230
196
221
212
192
201
159
187
172
160
173
154
192
183
219
175
193
194
180
167
218
264
214
156
200
257
195
241
189
239
220
222
225
171
225
198
156
225
232
234
207
281
142
212
213
232
156
160
266
141
202
190
145
196
206
216
184
290
252
226
198
216
213
135
233
201
204
250
209
211
198
176
174
166
212
195
148
226
246
256
288
229
154
234
247
122
204
230
195
193
157
226
223
288
151
222
172
191
226
204
237
199
207
225
233
185
263
174
140
179
203
196
230
210
143
180
186
205
221
169
196
191
163
251
196
173
224
197
227
234
236
219
172
196
206
181
126
180
193
144
180
214
139
239
225
196
196
216
227
173
192
269
193
221
262
127
179
216
200
224
209
204
215
201
205
183
225
178
182
185
173
249
186
231
128
190
188
217
224
212
160
217
168
226
204
205
189
243
155
164
208
234
229
222
196
189
234
239
226
243
170
252
183
151
199
160
134
180
184
154
162
144
212
239
156
228
160
164
219
178
224
198
191
172
173
274
170
232
219
194
228
192
225
252
239
190
261
256
267
232
216
209
194
205
243
237
171
195
223
217
196
263
101
141
179
240
243
189
147
179
242
233
261
199
211
224
144
186
261
242
179
179
237
232
219
227
261
211
237
207
199
240
189
216
144
189
217
221
175
231
220
145
216
246
249
183
157
181
232
152
247
103
221
124
118
161
206
200
212
182
197
214
199
217
231
187
147
182
176
207
156
200
155
163
224
194
149
171
228
261
215
175
194
159
248
151
133
259
205
240
190
233
194
193
192
180
171
168
268
141
209
230
210
254
228
186
208
246
161
166
206
232
218
236
222
171
229
197
182
179
197
272
126
213
193
200
203
233
267
227
217
223
224
248
206
182
192
250
211
166
195
187
232
223
240
189
207
200
151
172
150
198
213
191
194
182
172
208
197
212
195
180
200
162
203
148
208
228
183
157
188
220
182
207
189
190
231
207
232
183
183
198
193
157
219
197
230
177
184
244
162
187
125
230
188
153
229
224
188
225
163
224
213
223
229
138
116
187
196
198
244
239
177
213
258
210
137
235
226
173
173
163
191
148
248
222
198
197
160
218
203
193
146
128
216
158
229
217
199
158
228
210
217
157
216
169
152
217
183
224
221
251
223
186
159
267
216
228
185
204
183
172
173
161
192
208
159
173
183
173
192
170
191
258
151
209
236
201
195
242
218
230
249
233
207
169
231
204
207
135
211
244
146
236
174
139
200
113
196
199
252
253
194
199
174
147
198
179
205
203
199
140
238
167
231
191
158
178
216
239
197
193
203
164
201
211
221
252
171
205
176
150
157
215
277
218
241
250
206
173
216
204
201
155
178
236
196
195
246
149
135
224
202
181
263
189
257
218
186
249
175
239
111
211
198
177
172
237
244
202
167
188
238
255
206
207
179
228
234
207
124
180
140
208
148
212
213
216
264
238
164
186
256
132
172
198
181
210
114
222
214
202
161
142
181
156
200
168
243
245
179
162
182
165
160
186
204
263
194
174
137
194
230
188
212
240
200
196
238
163
160
153
131
279
197
187
252
250
165
188
259
189
225
190
208
195
149
164
186
179
198
262
170
246
214
213
210
256
146
203
238
126
236
216
169
155
214
198
209
208
205
141
171
187
173
217
208
181
147
172
260
253
250
228
259
217
215
157
169
250
240
129
208
127
238
145
152
139
212
211
177
202
198
185
187
124
218
214
168
211
223
157
251
225
196
229
202
200
180
238
180
192
234
188
184
204
189
219
241
223
126
230
139
148
207
242
158
204
196
215
129
170
250
213
266
165
153
157
236
118
103
157
206
207
195
186
211
203
193
166
223
205
178
207
157
211
156
269
189
222
223
205
173
166
222
148
157
171
276
144
209
224
221
189
206
167
234
193
174
168
170
169
206
163
145
176
198
170
201
243
239
201
156
193
263
196
256
205
176
254
240
246
254
208
246
166
207
200
178
238
168
247
227
175
225
219
250
213
190
128
142
179
242
261
218
226
174
202
212
190
228
174
175
200
215
243
160
190
231
225
183
206
183
188
163
243
202
159
214
278
114
181
213
228
181
206
243
186
235
148
128
231
249
158
204
208
208
224
228
256
211
213
220
230
222
204
218
208
146
202
220
243
176
188
241
230
158
190
283
191
234
208
222
210
208
205
239
194
168
183
180
197
240
238
136
168
278
152
224
200
185
154
154
192
210
150
237
154
168
156
218
227
230
190
214
236
193
234
240
194
225
222
221
140
217
214
202
226
246
242
230
200
192
247
200
205
131
266
220
147
211
211
200
166
165
210
219
235
189
267
175
190
240
182
165
140
209
249
218
173
180
243
211
150
170
155
193
186
188
169
244
183
202
186
215
174
209
138
155
148
150
225
172
195
183
210
212
227
163
179
224
253
178
203
236
196
219
144
186
246
213
192
154
119
216
208
201
182
243
246
190
212
182
237
225
197
194
168
185
205
223
253
228
209
174
159
244
245
210
171
172
250
174
180
256
226
183
131
203
192
149
225
179
247
172
182
248
136
175
204
224
191
184
223
206
219
203
157
215
200
234
186
234
208
217
187
200
145
165
199
215
231
192
220
200
193
192
190
159
211
171
171
183
212
197
231
266
175
232
207
188
219
170
250
156
152
204
220
247
238
246
214
222
162
202
266
188
217
225
213
231
153
180
180
178
182
175
134
241
242
222
180
166
233
212
239
265
178
253
188
201
195
211
213
243
222
223
148
263
223
189
174
207
208
155
198
225
152
216
191
227
225
185
210
185
203
150
200
290
221
146
229
221
170
206
175
213
197
202
184
196
212
198
191
226
186
175
178
211
199
222
116
256
224
223
189
171
210
195
178
197
192
210
243
193
228
173
213
175
174
230
158
220
149
209
199
137
224
235
140
249
214
159
171
135
190
208
203
186
186
237
164
156
179
209
193
210
260
248
219
212
229
186
234
236
201
253
237
266
221
205
222
201
136
236
221
201
162
99
199
239
172
116
168
233
180
168
205
229
201
133
185
207
146
164
182
233
222
201
180
157
221
201
192
260
198
205
214
238
185
195
207
239
217
241
224
236
148
221
176
224
255
210
212
207
182
183
217
296
244
247
238
149
257
170
159
148
230
247
239
241
182
234
236
239
218
212
187
158
237
149
212
197
245
189
201
181
153
165
246
259
222
254
182
234
216
157
200
154
206
140
243
214
171
251
189
217
198
214
216
160
173
200
251
166
246
234
226
231
219
201
216
171
219
218
131
182
178
188
267
259
171
206
199
147
248
203
186
213
263
95
151
228
224
213
247
213
213
211
193
253
221
217
185
208
217
221
74
187
221
206
180
190
207
173
194
264
204
213
187
236
176
142
176
242
190
254
161
212
140
174
232
217
225
209
189
193
166
193
166
166
215
230
238
217
168
157
195
187
169
233
265
202
86
174
137
183
220
232
246
200
220
175
200
170
206
235
193
186
143
167
210
176
179
214
190
186
193
192
268
223
202
190
154
211
192
196
240
220
210
235
197
223
234
263
196
150
235
213
190
201
181
239
189
127
195
232
225
227
169
175
261
184
264
230
189
167
175
204
203
202
208
272
171
170
205
221
214
196
164
220
195
181
138
217
269
174
193
174
231
159
264
227
241
207
156
178
207
237
148
159
273
253
266
236
176
196
165
252
221
128
181
154
200
188
134
188
178
205
242
193
242
253
205
199
223
168
171
180
234
246
233
152
187
138
275
218
180
246
266
213
177
226
283
210
228
185
190
199
190
188
248
180
237
202
169
227
199
221
147
255
222
180
175
169
210
247
144
201
238
220
229
212
213
189
156
208
177
200
238
208
190
264
206
185
189
187
250
227
208
146
192
194
283
250
141
149
188
106
197
164
212
136
196
247
173
228
195
244
202
222
173
206
208
180
235
189
222
210
181
203
214
261
240
179
201
228
267
139
172
249
183
192
202
172
205
156
143
190
196
250
152
186
195
265
170
182
225
212
218
189
217
235
181
198
173
237
166
170
196
282
191
188
199
184
175
186
237
172
178
233
246
216
247
198
230
245
151
213
187
179
247
215
135
260
225
122
255
206
184
253
182
212
152
190
199
168
130
213
173
181
183
180
221
207
154
151
227
198
192
234
184
182
160
193
238
170
133
225
139
190
204
185
206
235
171
199
226
179
180
222
223
230
232
204
201
141
247
232
216
183
265
194
173
226
183
199
160
193
207
221
130
170
178
203
252
215
239
197
133
152
199
187
206
195
182
191
186
215
251
202
189
238
237
265
257
226
177
171
229
195
259
110
227
210
204
279
190
200
206
244
244
197
190
199
189
190
138
253
179
174
183
218
230
126
237
187
144
253
174
219
126
157
262
172
230
212
194
198
207
143
233
184
147
211
195
203
223
216
143
165
183
211
183
161
238
218
232
221
197
190
235
236
227
194
228
220
192
218
193
214
279
153
214
194
185
197
74
215
166
239
240
203
223
177
187
218
217
128
169
248
231
170
221
153
239
223
182
238
190
264
218
136
222
235
184
170
127
167
189
179
288
174
177
248
228
197
196
204
216
208
217
236
165
246
244
245
226
125
210
255
228
151
223
204
269
198
149
239
227
218
134
228
188
227
222
211
178
200
179
228
273
207
141
237
204
244
183
203
168
147
188
180
195
197
226
196
201
210
102
187
208
211
170
229
228
233
206
154
200
217
236
206
213
190
206
209
188
192
199
200
236
167
169
215
226
188
190
205
216
150
256
191
227
214
201
214
164
198
245
216
220
258
173
245
220
100
195
256
187
206
193
217
134
219
230
234
232
220
198
196
238
177
222
118
208
229
251
192
191
225
268
146
173
160
235
199
161
199
201
188
277
123
258
165
186
245
241
233
288
189
182
243
174
204
218
195
158
221
122
177
186
169
99
178
182
219
193
246
208
246
187
172
201
176
220
211
221
235
232
221
285
263
181
235
157
252
264
218
213
214
216
191
231
264
193
203
217
222
260
212
233
203
177
234
172
172
165
196
192
152
173
212
184
191
236
200
202
180
233
212
218
226
157
185
198
229
190
155
198
189
219
198
223
188
181
231
192
196
246
245
168
219
256
261
203
186
264
254
156
199
157
257
201
252
207
144
215
233
195
194
172
180
200
231
214
229
218
207
226
184
172
172
252
188
199
234
191
227
222
202
160
234
185
208
233
238
241
233
138
184
176
168
246
237
156
239
180
173
153
168
214
177
262
220
211
199
174
187
200
215
153
188
220
217
172
212
242
235
251
201
237
209
196
200
169
236
226
225
147
222
187
211
180
257
177
209
204
149
197
153
265
233
265
171
171
115
182
199
190
242
110
193
256
231
135
210
219
236
170
192
161
174
168
210
225
186
213
229
173
215
220
125
277
186
202
203
214
172
233
158
158
229
218
222
172
220
171
217
211
157
141
195
141
262
184
192
239
243
199
251
204
177
166
218
212
168
241
208
266
179
219
264
154
175
204
172
258
212
237
211
232
174
214
153
170
201
193
223
163
211
172
250
207
206
163
144
205
168
203
98
236
142
197
168
239
234
166
284
212
166
191
204
205
212
174
187
202
197
199
164
166
220
237
205
219
199
185
218
169
205
139
149
187
231
223
242
176
163
165
145
127
206
185
214
190
231
198
151
212
134
173
246
213
193
178
185
137
202
221
213
201
196
239
116
219
142
206
199
183
246
183
237
202
233
202
191
224
237
197
266
213
199
195
200
255
206
195
250
203
167
248
177
193
214
223
229
202
204
175
224
246
236
238
183
163
236
251
171
205
233
187
260
260
196
266
189
215
257
217
168
195
155
175
188
238
162
219
159
175
163
202
178
218
225
214
224
197
175
190
218
153
149
191
207
186
199
234
204
188
212
183
271
241
163
189
241
176
182
160
237
254
230
234
201
196
202
158
218
206
212
213
204
250
196
181
210
207
193
159
229
210
152
204
233
146
167
179
151
214
241
219
216
191
134
203
212
135
191
186
155
195
259
235
195
208
267
171
228
205
224
151
190
193
155
214
245
187
254
115
154
205
192
218
226
214
241
263
192
171
150
158
219
191
178
271
239
163
234
204
181
191
181
221
151
187
173
149
123
226
205
191
191
218
165
238
211
239
190
191
238
162
223
215
225
232
239
224
178
203
235
171
138
143
199
270
227
182
207
185
170
207
188
154
228
193
184
164
164
214
201
185
205
144
211
172
186
201
194
141
163
229
252
165
177
201
192
215
238
192
222
162
242
209
213
174
230
218
234
236
264
223
185
225
170
227
169
267
156
240
144
168
177
194
164
199
195
183
239
212
210
206
203
201
204
235
122
238
242
184
189
190
176
177
174
204
231
166
156
208
111
249
215
164
189
221
212
242
178
247
227
155
173
228
233
183
154
225
200
214
234
239
234
226
269
181
205
196
172
126
247
181
177
175
248
128
246
175
262
189
206
143
199
219
203
183
137
170
141
129
193
188
133
145
194
166
203
220
186
185
189
171
232
254
256
177
178
208
213
248
220
167
216
154
196
245
262
180
234
231
166
228
231
178
170
183
204
242
226
218
184
137
167
202
204
114
242
218
207
236
173
179
147
195
213
183
168
211
250
227
213
146
133
233
175
174
167
225
228
137
198
279
181
193
203
191
193
223
199
174
225
163
197
208
184
184
226
145
142
238
213
201
216
138
243
214
281
242
208
197
230
179
142
195
242
173
187
220
134
172
232
171
154
232
221
225
201
244
199
158
160
202
199
186
192
191
207
201
168
269
210
166
209
254
234
209
158
201
161
205
149
228
248
189
175
209
182
241
173
174
181
173
152
191
248
180
218
173
175
202
242
201
232
160
183
249
166
235
260
224
249
180
187
206
160
189
194
205
208
204
218
247
166
194
187
163
170
218
147
260
224
186
207
214
251
190
189
195
249
257
223
181
142
229
168
190
167
208
159
191
236
213
192
159
203
280
175
282
254
215
191
169
158
191
170
209
209
213
158
209
246
196
202
199
175
270
170
229
195
202
174
213
195
209
231
154
222
207
197
156
151
152
144
160
238
133
180
200
212
217
195
198
231
225
178
252
297
204
211
164
234
188
212
246
149
213
155
234
190
238
247
131
245
235
219
180
254
116
216
205
176
148
210
166
262
233
214
255
138
156
203
214
212
154
192
259
117
222
175
181
200
185
225
130
287
260
230
192
226
211
218
217
183
202
131
174
240
204
136
205
199
201
158
279
222
187
220
185
183
224
220
178
194
200
235
220
183
220
215
206
201
230
172
165
197
202
111
235
239
262
155
191
215
182
128
168
254
147
208
261
193
255
164
222
184
178
204
185
192
246
188
257
224
167
159
245
283
166
199
188
221
149
278
217
134
224
222
193
257
192
196
242
186
240
196
175
217
243
228
229
201
196
188
236
163
96
272
205
227
216
204
155
193
231
193
203
230
221
220
254
177
178
163
218
206
151
193
240
200
202
207
171
199
148
187
205
213
171
229
185
213
243
224
249
207
224
172
189
291
135
212
246
229
183
218
166
194
296
168
177
246
254
232
221
233
223
241
195
158
170
185
179
194
131
135
241
264
261
205
161
256
218
141
245
245
131
189
184
214
177
219
149
192
228
250
197
180
209
104
194
191
212
262
213
229
259
175
205
185
175
202
217
241
208
182
152
185
147
203
201
250
248
219
194
225
210
229
178
156
205
217
247
272
176
225
205
192
198
186
211
191
166
235
167
230
199
224
229
220
178
204
180
222
150
217
274
166
153
186
183
209
267
178
233
248
186
186
230
141
200
188
124
156
238
237
137
219
200
164
216
253
221
146
184
177
215
197
164
275
167
244
173
181
131
168
241
208
170
271
157
207
228
201
214
209
164
254
157
176
204
223
188
206
212
203
173
185
224
203
187
177
205
196
187
157
174
210
219
211
225
258
145
174
222
233
246
193
142
160
190
163
181
188
206
218
148
177
154
185
214
159
231
122
187
233
253
232
187
129
255
212
240
245
179
144
231
254
215
176
132
189
183
201
199
184
154
192
214
211
200
182
126
171
221
193
234
211
185
206
164
202
199
179
239
163
218
222
187
173
197
220
144
182
214
233
254
228
215
227
221
234
188
230
263
156
189
188
180
212
236
163
230
180
147
196
269
145
263
212
267
222
302
219
142
207
189
200
147
144
180
243
205
183
200
133
208
191
164
180
228
185
177
198
187
253
264
185
274
240
189
269
270
210
213
244
190
151
151
218
235
220
214
172
219
261
275
217
197
236
207
196
193
119
158
192
114
144
221
248
189
134
215
171
242
208
254
231
197
146
182
189
220
191
223
152
234
253
216
212
218
204
289
250
169
221
204
254
209
238
238
197
192
185
220
248
222
208
186
141
182
234
193
214
211
155
171
231
176
159
252
224
227
190
223
163
190
250
153
188
149
180
186
267
219
195
217
222
226
181
259
173
217
189
221
146
216
211
166
219
246
171
233
186
220
249
179
242
112
201
259
220
209
222
161
223
167
175
170
172
193
244
168
204
188
173
163
213
195
202
208
264
249
130
232
184
228
248
184
205
247
256
158
253
123
230
229
216
230
220
238
148
195
166
201
176
188
173
213
183
223
215
234
261
172
205
205
235
255
241
249
175
179
210
195
245
216
213
226
141
181
192
194
205
260
190
228
173
213
142
194
201
223
167
164
197
197
221
189
225
232
185
201
244
126
166
241
170
209
165
165
247
227
224
127
256
170
217
228
249
182
220
188
206
230
204
207
252
181
196
189
178
260
191
238
221
210
198
137
217
245
211
175
182
216
135
191
212
196
232
236
191
173
123
191
175
163
180
207
247
202
186
218
112
166
255
204
214
203
254
265
183
128
170
220
189
264
219
223
189
162
231
251
203
195
218
205
218
196
220
171
210
195
197
169
202
182
260
177
224
185
169
241
229
190
195
261
168
163
181
169
191
180
236
154
171
150
195
201
232
187
189
192
203
222
210
114
167
184
167
245
262
212
244
211
199
222
195
207
173
214
198
267
173
151
143
207
171
200
218
162
240
210
204
150
226
238
212
210
241
153
290
176
161
237
168
182
235
127
206
195
187
202
175
145
284
160
111
177
194
207
230
197
259
177
210
234
196
174
254
239
130
213
223
168
136
223
218
205
207
241
247
230
151
220
161
234
145
218
196
194
217
196
223
169
206
229
194
186
217
192
243
188
236
228
221
227
245
155
153
121
203
210
229
227
199
191
157
176
206
136
247
177
133
223
253
242
254
204
188
226
226
222
198
208
227
222
241
186
188
208
244
205
242
176
194
177
129
117
175
197
221
262
244
199
123
181
177
166
214
210
119
271
240
193
208
208
247
200
156
179
180
187
255
213
199
210
250
206
153
245
274
216
259
237
221
141
217
206
175
166
225
188
157
169
196
195
121
122
164
248
236
224
211
172
179
236
150
204
215
211
202
280
151
162
201
189
233
194
235
202
247
270
186
161
226
189
225
232
236
171
136
215
259
238
186
233
209
202
137
163
166
290
187
186
112
197
145
237
206
158
229
241
163
192
224
223
162
207
209
161
198
201
187
195
196
198
238
237
124
199
163
154
251
195
242
180
152
163
191
208
199
205
237
233
183
226
206
234
193
233
185
165
226
218
273
200
285
230
214
237
213
214
236
83
201
200
179
223
140
256
231
253
203
177
202
253
203
266
216
171
105
182
266
157
222
198
142
244
206
189
229
229
122
204
176
229
218
202
163
210
181
208
194
179
230
212
147
207
243
203
242
201
141
212
165
225
210
197
213
197
229
183
205
195
247
203
239
213
229
200
236
191
210
211
252
197
234
232
156
198
173
204
205
247
182
231
163
186
205
178
203
160
168
191
197
116
231
177
264
159
216
192
201
207
226
209
150
206
123
152
181
210
249
264
199
231
248
207
213
205
151
208
182
269
218
82
229
206
148
229
220
282
226
206
169
243
179
165
198
164
157
166
211
246
179
276
196
266
172
237
208
194
211
210
177
221
251
260
199
170
157
216
212
166
184
168
197
172
249
178
178
217
259
198
204
139
190
220
170
213
184
180
188
236
146
156
189
147
230
225
192
230
161
183
170
231
217
165
65
226
184
149
201
170
230
201
219
163
237
193
191
216
246
160
188
187
190
199
237
225
239
146
211
167
268
153
196
215
225
181
231
255
194
179
148
208
178
236
205
113
135
206
200
254
201
210
256
194
155
246
203
197
187
177
271
216
152
197
201
247
203
190
161
220
224
221
173
143
231
272
229
176
211
184
223
252
203
143
179
199
216
241
223
228
153
172
192
154
222
177
176
208
202
198
166
193
229
259
265
238
243
132
217
182
256
163
212
202
254
220
148
235
234
147
226
207
220
244
255
256
191
165
226
208
274
167
205
157
211
209
226
210
166
244
219
125
155
191
148
218
209
243
201
191
156
151
212
219
231
177
206
246
219
240
147
241
243
214
192
201
195
123
180
159
211
166
231
239
213
242
157
208
181
242
199
167
195
233
133
214
236
150
235
260
241
186
246
180
206
180
248
169
204
232
160
180
170
228
236
253
213
159
179
114
139
184
274
230
198
215
224
164
205
207
168
167
148
212
165
179
241
183
170
205
160
174
193
184
228
190
115
188
203
202
200
199
197
196
236
191
204
196
208
213
216
208
153
249
166
213
226
179
219
213
198
200
208
261
231
188
175
183
99
215
166
261
240
200
186
175
125
227
204
206
157
264
200
255
189
222
193
236
172
232
205
237
212
191
219
164
123
217
206
170
217
182
220
239
208
151
163
200
177
191
203
171
205
143
188
206
180
167
175
199
222
217
223
200
214
152
177
154
184
192
152
154
270
161
216
197
172
190
215
265
204
182
210
238
235
210
190
229
180
179
229
256
210
122
206
242
211
214
199
197
202
226
260
262
216
238
215
276
189
200
203
192
245
172
223
231
180
200
241
214
206
214
206
206
190
148
207
150
257
144
209
151
192
190
103
184
241
205
200
263
184
146
199
164
236
127
187
211
192
149
201
198
170
261
148
221
250
274
231
150
218
254
193
221
181
199
218
143
217
184
107
179
238
175
259
212
242
184
244
225
155
216
211
182
183
266
155
238
198
203
135
180
235
189
158
220
217
264
182
233
233
196
271
180
223
154
143
204
160
164
228
158
206
134
227
233
214
200
255
224
213
205
186
187
240
175
188
244
173
162
226
197
248
194
221
159
258
229
211
272
229
162
157
243
242
224
237
237
239
222
200
255
209
234
209
176
126
190
113
222
183
128
178
187
200
200
221
120
195
171
211
158
216
169
232
183
206
186
203
184
201
226
171
235
225
154
224
260
216
220
205
228
246
134
159
167
200
213
154
180
164
257
147
183
187
205
179
166
191
229
202
249
156
241
189
175
224
203
228
194
236
172
209
229
239
185
266
236
207
128
175
180
210
193
157
188
209
205
197
171
141
172
174
201
200
182
237
252
149
259
241
232
143
197
147
207
169
227
247
212
220
265
212
188
190
171
218
245
219
188
193
163
237
260
226
226
203
159
213
170
192
186
205
205
214
216
172
226
201
216
224
179
177
192
185
189
156
203
148
214
153
239
188
168
183
213
163
217
189
181
214
121
215
233
151
167
219
247
185
167
203
201
243
183
177
206
139
172
154
177
198
186
212
139
205
147
210
230
199
258
192
195
212
187
186
149
187
203
216
231
152
151
196
217
220
165
187
207
215
208
221
236
182
218
180
220
218
192
196
207
304
194
227
190
219
186
196
263
272
242
249
230
183
195
255
244
194
211
211
187
169
185
227
172
218
240
215
185
200
168
181
211
207
239
158
173
173
251
184
217
198
235
206
177
206
176
181
206
213
277
135
224
134
226
154
204
268
204
246
161
197
255
237
230
146
165
161
145
202
204
146
231
185
150
321
131
210
210
187
216
159
234
200
210
172
165
240
222
248
170
166
235
209
226
178
158
212
200
141
233
220
199
207
218
149
146
157
238
265
168
177
254
169
219
203
180
207
195
216
243
230
208
209
235
173
215
167
222
196
203
199
213
259
185
198
138
215
224
158
229
228
131
259
186
155
220
226
227
228
229
220
205
220
174
212
146
183
190
180
163
217
173
219
166
203
237
235
204
224
246
228
161
142
197
180
170
180
197
214
226
167
190
189
175
202
122
231
176
193
160
142
126
176
215
202
199
172
203
176
234
168
207
189
240
170
243
191
211
185
228
217
216
142
147
210
150
256
186
218
189
185
226
224
241
180
240
167
172
190
248
205
185
203
239
164
294
233
186
249
199
176
210
298
292
129
218
182
161
146
195
216
232
156
192
195
192
204
145
203
265
173
169
279
291
240
200
228
206
239
216
220
261
209
192
247
242
220
184
191
154
213
170
188
215
169
210
145
247
201
193
154
218
188
149
234
229
234
202
204
266
187
223
228
209
224
235
212
167
164
203
162
224
239
203
209
183
192
148
167
153
225
156
200
255
162
178
195
80
225
176
197
179
165
245
138
217
257
210
132
201
145
184
205
144
208
188
181
169
200
158
160
233
149
217
195
202
277
209
225
200
202
201
221
225
241
208
157
132
227
238
146
217
175
191
263
177
170
188
212
228
204
243
213
256
199
174
224
206
174
171
187
261
230
219
207
237
273
245
198
208
159
209
218
220
226
225
230
192
207
217
213
154
204
214
213
203
169
195
232
190
203
185
187
234
272
273
227
210
222
178
202
209
201
192
89
178
160
266
225
208
170
213
157
201
219
123
150
282
226
201
152
165
240
261
184
193
213
155
129
189
168
175
215
213
202
226
199
222
249
164
162
148
174
172
235
156
244
168
248
174
179
147
257
181
199
253
149
225
236
181
114
188
247
173
226
216
222
213
260
249
240
201
204
193
148
192
236
186
194
241
88
216
177
175
216
196
241
218
209
244
207
223
208
228
239
170
217
284
225
160
189
217
217
166
212
211
226
174
233
214
229
258
233
209
188
164
184
224
141
186
197
159
258
240
192
181
170
262
156
239
231
265
259
231
215
234
250
195
205
271
175
228
175
218
224
187
206
249
251
223
124
247
144
152
168
182
170
285
153
248
151
207
282
154
236
196
191
188
156
185
165
186
131
138
180
172
204
203
167
234
248
141
209
170
230
257
157
126
236
276
178
238
167
160
199
218
244
237
183
210
248
214
190
216
184
197
173
216
131
151
170
188
173
181
155
163
194
203
239
233
220
207
201
137
173
184
203
191
136
182
196
172
176
151
225
174
184
206
139
179
212
162
186
231
185
199
225
194
219
193
211
222
150
242
193
212
192
210
142
153
251
191
245
188
204
166
233
204
207
257
151
163
244
195
161
191
219
177
177
169
248
194
266
226
187
223
181
285
234
217
192
205
141
170
221
194
196
250
199
176
184
213
217
170
241
213
228
217
211
186
188
212
202
163
210
239
224
181
201
202
178
255
222
176
224
227
200
221
155
224
242
178
200
184
205
247
210
153
183
229
158
235
152
177
221
193
251
246
161
206
180
209
212
214
157
233
205
189
173
194
223
144
142
167
182
150
205
190
170
211
187
263
237
213
172
209
153
149
183
232
154
210
171
189
228
177
168
244
176
216
174
157
145
205
175
250
139
208
208
172
184
181
192
201
182
169
196
185
233
235
245
165
166
268
268
246
209
194
189
190
210
216
194
249
231
228
202
109
233
241
166
163
226
211
172
218
243
197
176
251
253
134
165
195
171
223
211
201
181
228
207
210
238
239
185
217
239
190
204
226
181
241
127
216
183
200
233
180
250
205
216
158
164
238
193
257
145
173
170
243
207
221
157
239
256
214
89
275
141
254
153
195
156
233
193
161
234
179
255
182
203
234
162
210
225
213
126
267
217
200
207
178
208
221
186
235
171
243
159
191
211
199
197
226
175
256
197
186
210
170
239
210
206
230
247
175
200
209
215
211
148
194
193
150
194
217
228
210
214
211
162
225
256
110
229
202
187
167
189
174
187
151
150
208
208
231
172
195
184
182
188
127
172
248
237
225
141
190
185
236
172
230
139
203
215
192
148
206
180
242
202
172
189
186
221
195
166
204
182
234
227
183
211
231
200
233
195
179
165
197
181
156
218
206
251
221
236
152
204
184
197
169
212
188
241
181
158
158
203
223
168
204
211
216
164
153
206
166
212
187
172
188
110
217
232
201
200
155
199
167
202
162
238
253
183
234
193
212
157
166
193
150
222
233
212
176
155
252
212
215
246
178
157
209
172
126
160
250
213
231
220
189
209
155
245
191
145
211
211
179
200
238
203
216
207
217
280
227
151
229
196
152
185
215
254
201
150
214
172
158
258
216
184
148
199
190
213
202
206
171
169
157
267
193
181
181
219
151
219
201
194
155
168
205
234
134
199
177
182
185
169
202
173
194
196
187
203
226
176
154
165
216
256
244
278
175
151
213
188
166
183
172
231
175
188
159
217
174
207
174
186
177
183
251
219
196
141
180
161
207
211
258
217
171
271
204
170
227
211
226
239
192
214
201
219
164
256
226
224
191
210
172
113
229
175
192
209
206
180
197
211
112
247
241
215
171
157
173
229
213
234
203
216
233
233
251
225
171
207
222
210
191
198
182
132
253
155
142
259
197
218
257
189
234
214
218
171
198
209
239
208
204
180
180
237
205
231
206
206
232
153
225
229
139
162
210
233
183
162
151
126
215
162
202
174
239
211
241
259
195
186
174
120
185
231
195
248
205
190
223
236
165
179
216
244
197
249
247
201
205
187
272
164
190
261
195
279
222
261
208
137
190
253
216
184
249
233
221
189
261
219
223
227
194
192
171
187
179
174
252
240
228
218
212
176
206
192
217
152
254
218
230
232
191
209
219
216
262
220
118
218
204
166
188
172
243
227
228
182
161
163
173
156
218
201
205
193
172
171
190
169
178
221
152
215
189
172
196
218
191
217
231
167
283
244
182
170
268
177
167
184
201
180
216
170
252
144
150
175
206
193
178
192
227
185
218
225
171
179
145
230
217
244
181
222
204
172
238
118
218
201
242
200
191
242
197
188
172
204
210
202
183
223
146
244
194
215
178
250
139
191
235
167
203
192
271
244
186
135
199
236
204
210
161
251
206
218
238
186
113
156
229
167
167
233
218
182
216
201
237
116
212
242
181
205
213
216
236
218
189
135
192
189
192
215
243
160
158
205
193
214
181
238
178
253
211
205
188
191
111
199
177
230
158
182
213
182
158
181
201
211
261
200
171
214
223
181
196
243
215
248
237
144
220
227
193
207
180
183
222
192
164
180
219
194
205
186
204
231
195
172
134
212
220
239
124
265
230
193
208
209
211
232
256
212
227
170
164
224
169
218
180
202
190
171
199
222
196
155
185
216
199
212
157
194
197
185
239
172
174
253
184
199
164
240
227
174
223
153
197
235
205
214
172
228
232
263
169
198
235
231
276
175
194
245
130
227
239
272
160
217
251
177
209
199
225
201
237
188
199
189
215
201
270
189
213
198
251
183
183
188
226
187
246
201
196
215
218
244
188
242
204
189
216
196
162
180
172
134
211
208
194
172
199
226
192
197
228
270
184
189
173
190
270
215
179
230
159
170
133
167
135
178
198
218
201
199
199
245
190
209
195
235
244
212
209
211
184
201
161
243
149
185
267
238
154
178
217
163
190
195
184
232
188
180
159
237
279
182
185
236
173
203
164
180
211
207
112
206
232
224
234
166
218
184
176
114
184
182
160
244
193
148
277
237
163
209
234
191
189
176
187
211
232
140
202
198
238
124
188
149
152
161
198
193
155
165
223
221
109
176
170
177
256
177
197
198
222
256
212
276
257
185
141
216
147
194
201
170
193
253
287
178
233
269
260
160
179
207
159
209
145
221
173
153
203
237
173
190
159
180
240
199
242
186
177
182
192
173
186
176
158
212
207
226
194
233
186
189
176
221
230
188
233
221
168
242
203
221
223
198
232
204
212
261
154
191
221
227
258
242
267
203
214
186
227
177
152
214
224
204
203
206
199
212
194
177
135
213
235
189
225
224
204
189
167
257
184
193
213
162
145
238
212
140
187
255
253
224
219
202
257
127
237
180
209
202
238
158
218
184
227
198
176
187
203
222
209
147
213
182
208
184
182
259
131
228
181
200
133
183
195
190
171
209
178
189
174
254
249
172
226
185
215
203
179
145
193
203
128
195
204
186
163
157
174
160
141
233
195
137
183
190
190
187
215
210
260
196
188
132
195
185
139
211
211
193
234
215
195
207
200
152
252
170
168
143
261
236
195
223
219
129
201
156
213
219
231
145
172
209
210
199
185
179
165
206
198
228
199
216
211
206
165
207
295
215
177
183
221
231
265
225
139
255
152
223
221
233
267
169
196
210
204
260
150
215
208
201
171
126
250
167
237
227
139
223
234
190
180
135
223
204
220
126
268
191
183
148
246
155
145
173
220
203
228
160
184
118
251
150
202
214
174
155
177
248
242
172
195
252
203
198
175
184
172
162
221
212
187
206
227
224
201
180
215
199
205
225
187
183
144
195
147
265
189
198
149
189
210
139
204
237
162
217
167
173
254
179
224
164
243
195
179
218
216
157
224
157
200
221
190
195
181
233
135
249
220
169
107
249
223
189
228
213
161
149
152
206
228
116
173
237
156
167
196
222
248
211
222
182
184
230
233
202
222
167
256
213
192
247
224
234
211
200
180
260
253
174
173
194
205
219
240
235
214
168
263
165
160
183
195
231
160
215
181
193
170
178
182
243
171
250
202
271
237
215
177
174
172
149
204
161
209
232
250
243
203
174
243
187
222
153
164
215
211
252
191
261
167
177
206
198
120
234
235
163
206
139
170
177
190
159
186
179
148
259
216
154
183
225
169
274
181
235
240
154
211
244
210
147
226
140
191
162
183
266
204
198
174
118
255
264
213
237
281
234
221
188
211
190
225
183
207
222
188
160
175
257
187
204
216
186
201
186
176
261
240
244
174
203
166
168
197
164
172
196
199
160
193
180
244
199
192
221
227
180
209
181
245
222
196
251
194
218
183
182
207
185
181
171
162
138
257
174
168
166
165
180
182
236
188
237
221
132
188
184
193
190
213
188
196
221
246
167
183
179
178
179
210
192
274
227
201
196
280
211
244
185
226
218
219
169
171
183
258
149
191
175
126
202
144
209
219
189
227
190
193
221
189
243
221
229
206
218
140
262
183
259
174
219
188
228
176
239
202
186
242
168
141
157
234
153
191
185
192
142
258
223
203
230
204
131
142
226
231
282
230
207
211
257
118
181
208
224
207
174
270
191
197
180
150
213
229
256
224
160
190
155
208
159
199
154
176
205
179
156
224
196
206
218
184
205
145
166
251
193
179
241
210
198
219
186
182
292
206
234
244
175
217
227
245
236
228
157
187
220
236
181
239
209
222
139
187
203
249
169
237
243
247
190
274
181
144
191
177
189
168
188
189
293
181
196
200
233
226
188
259
217
223
184
252
206
226
171
250
138
165
200
195
148
223
184
185
227
216
249
185
247
197
197
142
154
236
260
206
173
204
201
193
206
180
234
253
264
235
161
228
180
197
266
210
212
153
249
147
212
215
260
217
273
197
208
228
203
235
228
261
217
174
279
160
304
176
229
229
223
182
176
174
119
216
133
133
185
146
200
175
217
227
194
184
184
175
224
236
229
182
238
230
218
221
238
224
229
198
151
270
250
189
239
276
188
160
196
159
163
197
177
254
191
250
247
185
191
224
225
120
206
174
207
216
137
219
136
171
157
242
198
234
216
217
234
199
219
257
185
186
154
188
229
198
156
105
172
223
150
224
226
200
209
219
205
210
211
220
249
181
206
196
148
202
216
243
226
228
216
185
205
209
172
225
235
247
227
276
223
249
228
167
241
189
195
169
210
139
224
218
255
211
135
115
190
192
186
207
177
226
139
250
228
173
257
189
198
239
228
212
259
205
233
192
134
201
255
264
183
180
196
265
223
225
254
159
227
235
168
202
133
196
246
228
236
238
194
173
209
146
118
207
123
195
182
187
221
245
225
170
157
232
158
145
251
175
199
198
236
216
246
150
215
248
189
221
220
219
154
198
249
248
223
209
225
257
161
165
175
174
193
169
161
180
229
205
244
132
215
134
223
176
156
216
202
211
168
232
183
228
181
207
257
202
216
246
170
172
188
144
134
191
262
178
230
195
263
212
237
236
160
205
233
181
188
170
230
233
184
209
236
232
226
211
203
212
258
196
255
203
108
164
134
272
216
252
200
189
270
117
229
220
172
190
168
213
191
253
206
195
224
161
212
186
191
281
205
141
205
210
226
204
214
220
202
206
241
187
218
180
266
226
212
257
178
179
132
121
161
189
209
193
239
199
225
151
137
215
147
244
233
179
159
214
226
241
178
154
180
158
186
170
215
226
248
245
186
242
173
257
249
239
212
201
207
243
225
225
189
248
119
195
179
246
208
239
198
242
241
195
213
163
181
224
205
239
213
164
140
198
231
214
289
221
198
194
229
205
195
118
230
248
254
110
184
247
216
195
239
170
238
164
191
189
223
217
230
224
191
176
195
232
183
171
140
179
239
238
198
151
175
215
207
222
223
190
177
155
223
255
204
205
210
166
225
216
161
246
193
183
171
136
204
190
217
244
199
221
215
198
210
201
194
188
246
196
222
254
245
152
228
175
246
208
226
136
155
185
226
220
157
180
195
190
240
187
232
228
223
160
223
186
139
167
234
228
190
192
179
206
279
188
259
222
143
230
167
153
225
217
214
154
208
216
226
204
246
181
163
155
141
248
215
266
175
248
166
190
146
246
202
171
207
262
225
150
204
178
185
214
221
209
201
224
199
135
182
219
215
207
213
198
143
169
213
204
132
207
208
190
194
219
172
157
188
223
199
166
226
261
201
197
162
228
233
218
167
232
195
240
232
205
221
204
257
218
198
255
167
168
133
218
123
183
145
190
204
208
178
206
215
231
212
220
226
161
212
193
217
184
248
249
118
208
107
142
132
173
238
139
194
139
184
212
212
126
247
196
192
242
164
260
147
160
190
216
190
203
228
199
200
284
199
237
147
157
203
217
205
186
130
143
183
162
237
190
192
236
192
273
143
191
196
161
140
205
261
122
188
293
125
251
233
159
170
120
176
246
214
191
176
249
190
241
192
145
205
173
226
167
144
180
129
167
200
138
203
218
232
129
224
187
210
178
173
176
218
172
201
170
170
247
153
146
246
206
224
235
205
163
164
176
224
216
158
212
226
202
168
189
189
181
189
178
222
174
228
150
200
284
165
157
140
187
214
248
202
217
224
180
190
210
239
224
174
152
167
225
241
289
210
197
204
117
192
217
127
219
223
174
208
203
206
224
130
161
189
275
185
164
214
207
242
141
223
180
178
228
181
212
197
248
212
218
228
165
189
200
164
236
154
183
264
172
200
274
197
232
176
211
190
194
234
239
210
185
177
202
224
211
190
218
225
252
201
137
229
179
163
219
217
200
164
222
174
178
199
161
214
180
231
210
185
165
214
152
230
215
153
146
161
154
191
169
209
182
132
267
197
194
194
212
203
216
203
211
177
211
231
273
244
223
249
169
234
192
225
228
171
246
216
149
226
176
172
189
186
205
179
197
206
236
183
172
250
227
225
219
172
194
194
234
227
192
247
218
205
163
200
176
165
244
195
219
192
205
270
263
194
169
204
163
192
178
191
155
227
177
211
241
234
152
237
177
234
138
202
191
109
182
225
219
194
218
262
206
213
179
228
231
134
192
226
232
258
179
256
239
258
172
208
222
197
141
240
171
178
240
146
185
208
189
185
215
224
189
103
218
259
194
195
215
229
177
219
174
181
211
131
191
211
243
164
204
231
171
217
171
198
223
221
194
168
229
166
192
212
143
250
214
176
159
212
210
214
229
183
226
162
164
216
257
221
202
186
207
238
222
210
202
220
197
262
246
174
197
219
257
156
221
212
97
259
179
189
173
167
225
207
185
230
237
173
144
205
188
272
227
242
168
262
193
201
164
211
208
246
257
271
224
151
197
241
250
155
185
191
162
191
254
260
202
263
171
239
174
196
197
181
215
226
243
183
216
151
174
172
151
195
130
151
252
205
149
192
157
216
253
221
190
176
223
260
162
222
214
204
184
163
215
158
290
191
197
121
199
250
204
182
226
204
252
193
199
192
208
203
165
206
206
240
147
234
168
192
141
210
172
208
131
237
216
216
175
249
244
227
191
167
187
182
258
191
211
207
184
188
206
184
159
194
210
241
168
214
200
185
189
200
174
250
158
193
185
184
166
202
243
190
282
194
192
235
231
224
192
241
174
223
249
163
170
177
225
205
209
193
179
248
228
264
186
235
253
178
233
137
240
157
157
215
196
188
200
151
212
211
210
174
247
235
168
150
263
221
137
245
228
182
213
234
202
207
176
137
190
253
181
190
208
161
164
222
169
182
215
221
198
187
213
157
190
171
203
239
200
192
197
169
199
254
228
221
166
162
165
195
272
179
242
206
171
189
167
181
283
184
213
233
251
186
258
204
234
222
170
222
230
204
202
238
210
186
161
193
266
136
144
152
216
237
185
160
213
164
171
147
226
219
162
220
142
194
132
257
206
247
187
177
164
217
197
215
204
182
176
176
245
194
206
184
188
183
203
160
175
205
226
185
245
153
223
245
205
203
167
235
234
243
183
177
173
247
209
223
159
159
162
195
196
246
163
271
208
185
140
202
207
232
249
253
275
163
167
197
186
150
187
246
196
225
167
279
190
221
245
215
192
250
214
186
154
223
207
204
202
179
206
193
134
259
180
174
197
145
207
204
162
218
183
232
200
232
204
192
202
197
231
207
171
223
195
246
152
192
219
150
211
162
177
198
196
269
196
182
179
183
191
194
188
237
174
169
223
208
214
220
236
144
192
241
236
222
210
202
263
155
203
197
274
177
221
215
192
228
192
189
209
226
220
203
179
197
229
274
256
213
167
170
212
214
163
223
206
209
207
193
203
214
235
169
237
149
157
181
156
275
153
258
188
193
271
245
235
156
260
153
219
190
177
183
203
182
177
246
209
162
166
209
228
210
215
171
194
201
144
241
218
160
247
183
204
200
194
225
219
151
181
257
208
175
182
233
174
199
188
199
219
214
174
186
230
197
230
163
162
260
217
225
156
220
233
173
127
217
211
238
217
203
170
147
249
211
229
230
225
133
171
221
179
220
238
237
260
162
138
248
157
258
257
239
172
195
214
124
162
226
210
217
250
199
206
255
146
234
211
258
197
202
210
107
213
195
202
209
222
195
222
240
253
227
201
221
197
167
195
188
207
202
183
225
197
131
190
187
233
248
186
242
218
223
174
216
167
194
199
215
131
182
158
202
197
183
213
245
211
201
161
170
208
204
203
279
275
146
204
292
198
265
180
169
208
223
200
186
244
196
233
162
219
204
181
177
202
122
244
199
163
246
173
226
204
198
213
194
246
193
155
171
176
184
198
187
188
215
194
149
139
180
126
179
262
195
233
197
237
222
188
228
194
222
201
223
224
213
204
234
280
224
209
239
180
122
157
160
198
208
249
229
161
177
138
258
170
199
213
179
135
218
194
161
181
224
224
243
220
203
245
180
153
243
230
238
186
178
165
185
201
217
172
230
218
147
196
236
185
215
255
232
235
216
200
207
224
171
204
261
218
157
176
244
128
184
187
190
214
254
193
227
223
169
179
188
218
256
173
223
135
160
207
221
208
251
198
153
185
142
236
167
169
204
217
170
240
225
241
174
209
256
157
203
249
198
178
162
202
216
190
215
191
245
185
179
211
160
227
206
137
168
219
175
216
168
208
199
187
188
254
198
174
167
177
108
142
197
215
111
204
185
193
200
210
168
194
170
173
246
156
208
228
201
189
169
226
231
259
223
239
183
219
189
252
188
241
227
188
242
153
152
171
205
177
264
196
263
173
189
181
212
144
214
282
190
214
235
220
165
170
147
260
231
232
191
185
176
227
156
142
212
168
224
187
156
228
254
262
229
232
227
198
183
179
211
223
232
221
158
240
155
211
180
195
194
231
230
259
207
206
217
220
210
197
175
178
180
198
207
221
251
157
220
208
242
245
207
186
166
210
200
155
211
199
183
183
178
225
253
214
213
159
153
128
177
203
175
207
224
197
215
171
187
206
195
101
214
210
193
201
205
255
217
232
194
186
223
202
217
209
166
175
202
167
163
203
157
203
213
195
177
184
197
194
174
160
222
217
130
192
235
211
141
170
203
193
212
186
217
230
202
203
210
252
213
219
222
159
210
177
171
216
221
215
256
240
201
195
188
201
244
264
176
227
195
211
255
150
265
147
172
210
170
212
190
176
195
187
197
205
209
129
193
231
224
200
248
177
193
153
227
160
226
227
195
183
105
217
218
199
196
248
225
217
206
226
205
195
155
211
230
213
238
177
176
177
124
226
191
221
185
170
199
208
231
238
176
218
203
213
150
156
194
231
183
213
194
229
210
239
193
157
155
148
247
267
190
207
204
214
161
227
217
190
170
228
238
164
231
169
257
196
150
225
227
230
127
183
223
179
118
210
210
232
195
141
166
167
191
246
230
209
202
164
217
151
261
196
214
195
235
183
207
279
205
208
229
177
151
186
181
220
283
145
163
153
207
178
252
234
215
181
266
225
171
175
208
192
175
192
177
220
205
238
191
236
245
220
150
182
175
168
162
201
192
193
205
180
226
185
194
236
242
243
222
174
202
228
222
176
158
172
231
169
186
217
184
218
179
200
133
206
211
226
222
161
171
215
192
224
208
185
179
208
180
221
192
240
161
215
178
241
280
156
255
186
218
106
199
186
182
211
168
182
221
189
202
193
152
186
204
125
230
131
168
209
166
219
259
238
285
221
192
185
201
213
242
241
209
203
182
201
196
212
200
230
225
222
195
200
209
203
199
219
210
181
204
162
216
257
138
182
245
304
169
144
113
171
193
199
250
235
239
239
225
173
152
220
176
250
202
222
271
188
204
227
208
198
208
245
164
188
194
196
211
187
230
171
224
232
195
128
174
228
215
214
135
188
235
238
126
216
144
218
143
166
179
220
153
191
220
205
177
189
166
193
164
203
228
212
147
165
198
223
216
123
194
246
265
262
160
177
230
118
209
205
205
213
222
193
242
207
209
236
244
136
229
208
206
250
198
234
199
216
223
217
183
202
192
162
161
182
208
164
247
157
186
261
179
166
190
166
221
113
236
202
124
225
226
177
203
203
197
237
206
196
169
165
200
225
232
146
201
196
148
170
279
214
214
214
195
256
263
236
217
213
245
184
178
196
239
213
198
177
200
178
199
176
242
198
237
221
228
220
210
223
182
160
202
181
186
148
191
161
208
236
275
252
259
254
180
188
208
133
226
200
201
263
170
221
281
221
178
252
162
221
224
229
188
184
220
192
259
225
165
185
244
189
244
201
186
176
218
162
190
180
159
166
204
210
150
168
177
185
220
248
166
254
239
148
166
227
214
231
217
186
214
183
161
197
228
238
220
194
228
240
155
254
168
217
211
268
209
173
170
238
260
223
202
192
249
200
189
189
156
250
149
198
225
200
207
194
199
144
205
168
196
125
205
204
233
172
252
210
212
268
226
157
222
149
214
195
207
250
167
164
243
211
168
217
240
136
209
162
143
270
220
195
213
133
170
182
237
196
226
190
169
116
270
181
195
214
149
160
161
151
178
241
181
129
219
182
202
178
201
240
274
105
182
173
164
189
241
230
248
176
231
170
147
222
243
181
194
267
164
224
161
175
189
178
186
143
160
147
198
207
223
174
237
199
156
122
203
184
260
211
202
199
236
153
192
249
117
115
184
193
231
236
253
203
230
219
219
258
264
125
171
205
217
175
274
222
194
180
191
173
205
220
215
157
161
247
166
218
218
158
238
222
221
249
187
193
214
197
238
206
213
185
189
244
184
245
185
285
235
199
247
128
164
274
249
177
226
192
208
254
209
217
202
175
195
173
200
202
173
140
192
194
124
170
217
134
217
191
184
198
248
175
230
176
163
189
225
169
214
251
189
214
178
223
140
197
151
225
180
158
172
195
256
206
231
218
208
216
225
176
201
176
247
201
272
192
185
188
202
191
255
183
170
262
138
164
179
177
231
233
205
209
143
215
198
209
174
168
161
142
160
181
198
175
217
199
182
197
179
172
270
216
173
219
158
206
243
187
224
177
202
186
209
173
226
180
259
234
184
191
238
151
183
190
169
221
224
248
189
263
195
190
223
193
277
194
221
231
209
199
180
203
198
148
233
195
203
185
177
170
175
237
201
211
203
138
188
218
257
220
232
146
205
199
196
200
195
211
192
185
213
236
184
151
154
187
189
196
180
171
167
173
167
166
213
151
148
200
201
159
233
188
128
205
213
141
222
191
241
239
237
172
195
162
221
149
183
225
184
179
128
209
221
216
177
187
176
181
181
163
216
214
97
148
173
236
142
145
165
170
177
235
247
267
151
213
209
179
233
205
122
197
210
179
151
200
195
181
233
220
226
218
171
183
233
159
168
242
222
182
159
202
217
222
256
132
241
175
186
245
167
123
252
215
228
227
164
209
183
179
210
210
172
168
243
133
184
252
166
177
203
181
167
145
234
139
148
172
180
257
182
282
223
204
185
262
249
200
182
287
205
227
229
239
170
212
200
165
217
204
181
199
252
217
233
195
162
224
223
191
167
187
138
177
182
195
206
214
256
189
180
225
221
177
197
146
150
175
214
176
180
228
175
203
280
175
203
247
150
161
141
155
203
158
212
223
241
208
206
189
218
198
212
175
176
209
156
196
111
292
158
209
270
235
211
212
239
206
226
212
172
191
164
244
188
224
187
244
176
238
243
227
245
206
211
212
210
242
218
224
210
226
185
211
167
205
203
215
223
211
226
258
196
188
258
235
129
169
207
157
233
190
212
159
198
241
229
273
200
167
201
182
195
254
192
215
184
188
214
207
236
146
187
175
109
178
182
214
140
179
265
229
195
219
146
239
192
206
178
173
168
206
218
173
187
147
200
171
175
221
196
207
195
199
156
205
184
178
178
145
212
123
230
161
213
195
234
189
215
203
172
246
172
178
246
183
154
183
174
201
239
210
182
209
229
237
157
147
233
214
250
195
139
162
184
179
165
231
269
182
163
230
221
235
212
198
169
210
247
159
221
264
209
261
235
228
227
197
251
232
196
204
218
180
199
176
155
225
228
198
224
218
189
178
197
235
129
166
219
243
207
229
237
179
148
221
174
229
134
261
227
136
194
193
192
179
259
224
205
153
235
185
222
136
269
252
240
166
206
195
215
206
200
267
177
209
269
186
212
218
130
198
199
161
204
205
271
229
194
217
186
156
200
208
186
231
170
220
218
186
171
205
223
168
224
206
274
148
217
208
213
207
203
161
204
210
183
193
217
247
190
206
219
214
195
211
180
170
239
181
171
171
213
199
192
237
133
189
174
155
162
208
252
229
187
240
146
226
202
224
233
169
163
192
123
138
206
191
230
243
100
214
174
229
198
243
168
215
172
166
251
228
173
163
195
172
187
195
112
225
196
170
189
210
249
197
199
131
176
219
231
239
190
176
221
205
198
208
231
228
227
168
158
202
239
190
138
186
113
191
167
159
196
221
178
161
197
160
212
264
175
186
186
162
155
202
273
232
233
210
182
206
145
204
203
189
119
230
220
212
176
171
246
119
208
193
207
213
226
199
136
143
233
280
205
225
188
158
191
231
187
204
191
199
213
177
204
138
242
202
193
132
214
201
221
136
172
148
226
196
248
160
259
233
240
228
228
139
193
201
187
218
208
217
208
250
211
201
217
242
184
235
209
225
212
219
203
262
180
156
175
171
199
172
165
178
196
208
143
191
169
172
155
206
219
190
140
217
245
148
219
231
169
161
152
250
229
229
122
191
212
199
208
215
265
245
163
248
232
127
269
226
232
188
189
178
214
193
160
137
212
169
192
130
271
221
229
226
183
200
223
172
220
202
194
160
163
189
186
183
199
169
182
194
203
204
254
282
152
253
248
174
207
149
186
191
133
221
200
122
272
157
204
116
153
219
235
249
182
169
243
185
225
214
209
173
156
189
200
205
208
190
236
193
162
185
204
139
170
223
221
145
166
160
202
203
243
243
214
192
147
164
227
228
229
193
152
230
122
221
207
206
226
184
163
185
173
209
242
212
189
169
200
247
231
162
201
255
174
104
179
193
206
144
163
247
205
152
159
173
173
220
237
207
193
261
253
239
184
152
190
190
207
241
205
219
159
149
254
174
221
146
172
160
114
206
225
189
218
223
176
190
177
154
166
151
233
236
201
205
230
177
222
245
252
173
160
175
161
196
170
245
184
207
225
202
276
252
242
191
202
199
140
168
203
160
170
211
188
107
167
143
195
216
187
237
168
167
190
264
159
209
239
141
187
217
145
206
165
199
196
256
175
237
116
199
265
213
138
202
240
152
173
221
173
166
179
200
201
241
159
269
223
195
243
201
199
224
210
167
221
179
221
193
224
176
186
191
167
205
249
224
182
206
236
210
190
214
192
198
174
224
223
211
228
140
186
252
202
205
220
210
251
262
227
200
271
208
235
217
155
255
205
203
206
267
211
201
197
164
153
167
224
127
257
231
231
170
233
199
173
193
179
209
226
168
231
149
217
177
228
222
249
159
237
156
184
126
181
169
185
187
201
190
203
209
190
214
284
242
172
193
188
226
221
174
189
214
198
229
168
236
272
203
168
233
213
201
224
195
201
208
190
228
201
200
202
182
204
192
261
259
179
246
220
260
196
219
181
240
221
145
239
224
236
203
198
115
203
199
253
185
201
248
232
139
188
196
179
144
218
201
235
176
198
235
159
199
184
211
254
205
210
171
201
190
219
200
238
189
142
235
200
265
205
271
192
236
227
251
232
214
154
174
143
206
235
224
217
145
231
213
223
244
186
217
166
203
244
164
176
149
222
263
242
204
211
208
174
144
182
225
242
163
203
253
190
140
151
184
242
193
204
225
205
236
154
213
227
240
227
176
220
157
169
230
214
282
200
229
200
227
222
205
167
156
222
170
207
254
197
183
192
216
214
166
236
205
115
172
218
174
138
142
158
206
209
185
218
228
240
150
183
154
218
112
202
120
201
164
180
226
217
226
124
199
219
163
182
256
288
222
262
171
228
177
228
198
180
221
193
195
185
192
162
184
160
189
193
183
304
213
241
174
261
195
166
175
163
155
102
200
224
156
197
180
160
210
169
190
207
195
239
163
179
212
190
240
172
187
209
214
191
199
229
220
137
180
209
181
154
187
248
258
209
183
195
160
186
245
180
219
167
184
228
212
140
169
171
140
195
231
244
252
205
167
67
159
239
228
162
215
233
222
243
166
177
184
200
209
236
218
156
191
239
202
220
198
192
218
198
219
192
252
249
180
141
165
215
192
253
144
201
169
214
235
170
262
230
227
158
219
209
238
161
170
175
212
269
101
171
190
249
258
235
172
219
198
214
230
209
206
150
250
200
132
149
239
200
150
150
240
197
207
153
226
225
176
233
259
231
172
144
193
163
213
210
167
251
190
200
210
170
209
209
110
135
139
193
243
262
112
216
237
137
192
149
200
195
206
260
179
209
213
240
184
142
213
214
213
190
179
185
229
163
237
158
180
200
244
157
212
180
172
254
216
218
240
149
255
162
212
245
219
172
225
162
217
176
213
222
234
195
171
246
186
176
248
299
189
245
218
206
188
148
247
226
223
243
234
199
240
160
239
182
184
221
171
225
245
208
180
191
264
241
181
262
208
153
187
278
191
189
239
182
244
205
93
162
154
240
152
228
261
212
227
275
105
207
187
154
154
239
220
229
174
207
209
164
195
194
224
189
143
217
197
235
222
243
187
179
177
226
183
155
297
207
287
277
214
255
242
178
198
204
190
252
219
198
236
213
204
233
168
258
210
191
161
195
216
134
220
168
176
215
235
187
181
223
121
233
142
228
181
290
254
156
242
174
258
227
201
184
214
197
207
186
208
188
169
211
199
188
237
137
265
246
156
139
252
218
200
163
178
221
198
239
192
201
219
172
139
157
204
160
275
190
210
177
178
256
171
183
207
156
200
165
245
151
209
198
199
171
175
220
240
149
254
255
191
114
208
182
201
212
148
199
223
166
167
270
202
207
188
264
170
213
218
220
227
240
208
228
157
202
192
210
161
257
233
137
160
162
173
248
164
180
183
261
201
245
194
218
192
205
259
184
219
136
135
193
110
232
177
119
229
171
172
210
204
158
245
260
164
158
171
199
168
240
175
202
181
174
147
254
153
259
251
246
241
187
225
206
167
241
280
162
175
129
189
216
234
135
220
158
186
193
183
189
196
214
211
151
209
192
127
179
192
212
209
191
211
213
174
232
247
124
131
153
218
230
201
174
256
189
209
184
182
197
175
231
232
157
118
205
198
145
161
265
204
161
153
193
230
204
159
268
175
242
177
158
185
200
249
190
204
144
152
184
267
235
159
229
184
224
215
243
177
191
195
237
241
169
214
148
221
188
105
166
172
169
214
208
222
189
189
199
158
136
238
194
128
190
212
187
175
252
172
181
238
173
233
242
171
165
218
176
174
186
155
198
220
161
231
205
194
191
217
152
226
264
211
220
183
165
226
250
188
211
226
242
293
138
151
181
208
212
180
232
168
137
217
160
195
169
207
215
173
212
208
205
239
202
165
225
169
223
198
216
178
187
198
162
243
189
182
279
202
198
205
192
234
130
246
209
181
152
195
256
185
145
204
163
153
190
243
217
239
253
238
182
144
193
195
184
175
232
234
234
190
175
266
234
168
183
178
182
239
156
186
155
208
204
189
172
207
210
187
218
253
250
186
193
150
216
200
172
211
255
196
233
237
214
210
184
298
175
226
222
202
177
221
188
148
195
201
191
239
202
222
184
199
161
246
219
244
256
225
207
228
175
190
164
182
189
184
137
212
207
217
224
244
235
155
235
216
156
182
242
188
133
236
211
232
189
205
238
150
179
133
186
145
185
210
168
224
157
200
158
212
123
169
217
244
170
252
160
175
196
234
123
196
197
211
220
194
184
210
210
152
248
192
237
217
178
199
176
198
146
215
209
251
186
182
163
168
190
171
234
222
132
166
217
189
213
176
192
162
174
184
245
226
174
130
194
198
201
194
151
266
239
244
244
224
201
125
179
183
209
234
151
209
226
188
257
241
189
173
124
228
178
223
209
202
124
262
181
150
193
237
240
134
145
226
193
217
207
194
235
197
181
187
181
108
190
205
213
208
205
186
226
227
218
191
235
169
217
165
144
222
272
168
238
157
215
235
172
217
230
214
201
196
224
189
200
207
152
179
165
240
219
261
207
236
128
213
146
184
255
176
154
170
79
214
259
161
208
214
228
234
164
223
235
205
230
239
220
206
212
212
206
160
199
175
241
238
220
280
144
242
188
150
240
193
206
212
248
218
265
258
178
208
146
193
166
209
248
215
212
260
249
194
272
225
253
230
202
261
201
216
127
210
137
186
181
257
173
228
214
157
139
215
225
188
179
210
131
241
208
187
169
223
251
284
230
129
260
259
184
166
154
158
110
228
197
195
259
238
195
213
263
193
229
208
213
213
156
136
204
253
211
172
171
248
214
230
228
254
96
268
130
175
192
184
147
234
230
206
128
167
274
183
170
223
239
236
186
196
211
204
154
139
186
184
177
197
159
152
206
265
240
159
207
273
212
208
247
219
152
236
204
218
236
224
204
221
237
227
145
152
215
141
263
229
166
206
215
164
199
193
183
250
243
168
179
202
215
192
233
208
212
201
241
121
141
177
229
118
254
194
238
242
181
240
282
201
194
229
196
164
164
179
140
195
154
246
219
260
222
181
149
244
242
217
237
220
86
175
163
171
168
101
220
199
238
173
207
188
231
171
231
139
271
155
189
147
188
216
244
248
196
228
158
191
239
217
184
216
202
174
188
219
191
189
248
187
226
216
184
149
201
193
186
226
205
182
207
166
104
175
280
143
207
213
199
229
202
218
228
130
163
268
231
184
240
266
161
241
176
222
197
225
214
278
196
239
222
105
203
247
238
245
163
183
232
216
212
221
235
204
227
224
190
169
160
129
158
178
208
195
252
166
139
236
183
169
181
201
201
183
191
190
241
240
116
230
245
191
155
168
180
190
248
243
228
216
161
157
237
207
178
173
221
218
202
199
172
220
224
204
206
195
166
225
132
160
265
251
242
187
208
214
249
148
204
159
147
193
193
204
169
253
261
238
214
176
195
175
193
198
166
257
197
227
205
248
220
206
97
180
219
217
187
161
221
238
206
159
236
188
226
209
180
185
143
156
215
204
221
226
282
186
175
228
169
223
254
129
190
210
222
134
208
221
203
132
212
186
136
213
195
146
195
195
194
229
196
179
220
165
148
165
258
182
233
236
246
254
157
239
173
258
238
224
210
225
157
163
192
221
184
148
220
161
236
235
181
182
183
184
247
187
161
187
221
192
139
181
218
183
202
170
197
247
174
206
150
169
187
220
157
220
204
234
183
182
229
222
182
211
216
259
167
187
198
227
205
153
180
218
181
212
207
221
198
239
193
203
187
225
140
195
232
179
227
178
207
267
160
164
179
206
143
170
245
204
223
186
165
187
164
185
178
205
233
197
139
188
206
160
270
214
194
241
189
194
249
254
124
189
210
279
230
134
174
186
221
216
208
179
239
227
263
223
203
193
178
226
224
150
189
158
206
201
215
204
245
173
143
194
272
192
234
234
162
215
187
138
156
239
219
205
217
190
235
237
157
202
223
255
232
168
187
166
161
167
138
203
205
219
197
168
236
246
234
197
172
150
217
237
232
201
150
230
250
227
201
198
216
195
181
221
215
207
225
99
230
193
243
205
210
172
207
160
208
246
196
220
246
165
252
224
168
183
239
211
197
269
257
246
218
225
208
174
165
196
223
206
230
181
202
271
204
188
232
199
237
222
84
147
148
199
258
213
221
226
181
177
199
224
212
245
176
259
233
232
207
208
237
164
225
196
145
251
184
203
188
201
242
256
166
200
191
228
265
238
238
197
175
168
230
224
124
210
228
207
198
204
172
221
168
189
239
204
192
164
240
226
118
143
187
194
197
228
161
204
197
240
182
138
190
168
227
185
164
168
200
186
190
213
191
240
154
197
239
228
156
210
242
209
216
202
210
151
187
194
161
182
203
194
233
226
187
180
170
156
197
175
152
260
220
212
180
247
157
163
199
179
192
242
211
199
192
179
168
192
256
234
147
158
238
253
255
159
214
175
209
182
170
148
259
170
164
171
185
212
190
185
242
252
199
165
258
223
143
212
108
206
215
246
220
165
268
228
204
216
209
213
195
247
219
209
232
158
110
139
191
196
140
187
208
244
118
196
152
180
209
209
191
215
268
217
225
176
179
163
205
217
252
189
189
231
217
226
263
191
267
191
239
180
194
133
210
132
228
202
194
179
176
175
192
203
216
215
219
178
218
203
193
150
200
189
251
149
174
251
196
183
246
233
154
153
164
203
218
180
255
195
105
223
234
175
246
246
126
235
228
159
199
235
174
181
243
217
217
167
206
155
183
167
214
239
177
235
176
211
191
236
161
209
245
182
185
238
216
217
184
198
209
240
210
197
198
171
151
176
127
193
237
272
164
269
146
246
236
236
234
161
236
253
208
201
174
162
199
218
139
196
209
169
242
203
175
189
199
220
194
136
169
259
163
246
188
232
174
192
206
193
158
173
214
224
167
194
211
227
194
178
148
180
231
237
211
244
204
188
285
237
203
262
219
213
199
192
251
141
207
174
232
221
207
252
161
230
232
204
207
197
203
226
215
166
238
187
147
241
272
174
232
205
202
226
233
210
188
205
266
193
224
219
229
136
158
163
162
166
179
268
245
186
248
220
196
253
189
179
164
224
145
165
156
193
249
225
232
175
238
148
161
178
189
224
176
193
111
166
228
243
154
181
273
231
219
210
148
179
142
193
234
158
180
162
216
194
218
168
189
211
259
158
227
255
180
148
211
149
192
215
139
204
211
158
217
197
232
222
205
207
214
130
226
169
228
196
174
242
221
170
234
231
184
178
221
145
224
177
214
283
145
276
198
217
217
173
108
173
248
256
223
148
171
218
171
273
248
210
230
181
240
235
195
205
256
139
196
218
266
207
212
182
292
225
232
273
235
225
159
183
248
198
210
203
187
232
169
245
185
218
228
213
171
235
167
229
218
117
254
231
223
212
173
142
224
212
200
216
169
225
214
145
198
194
208
195
204
216
197
225
219
155
179
204
175
214
240
146
216
185
166
239
147
135
152
220
243
146
153
215
221
143
166
223
250
202
275
221
213
194
211
183
177
219
195
220
213
222
206
225
186
193
243
185
225
206
186
213
198
159
138
177
189
167
209
224
134
191
246
197
200
260
201
211
172
229
103
229
215
173
222
266
228
214
228
221
216
224
216
195
203
101
194
224
116
198
209
151
255
213
160
212
160
270
220
170
199
213
256
278
160
253
193
249
224
139
249
175
123
200
198
219
154
208
249
232
145
198
219
230
240
128
203
231
213
222
180
239
182
246
228
208
206
194
168
189
117
162
207
184
183
218
243
195
190
172
229
231
234
210
188
227
248
152
218
226
224
259
223
156
152
168
164
172
196
188
181
147
248
184
191
181
255
202
137
155
203
230
197
172
212
211
182
203
179
158
220
217
219
168
201
159
200
168
203
202
190
204
202
227
218
247
179
230
190
225
225
216
222
243
165
182
166
284
179
164
210
200
172
205
211
208
211
183
168
202
213
202
214
240
248
180
206
172
194
221
249
193
235
151
235
195
184
239
244
217
247
160
210
111
190
277
199
242
170
206
175
177
176
263
244
239
168
240
232
156
149
216
295
159
197
175
204
241
222
174
242
225
192
256
220
156
205
176
250
254
170
217
223
188
217
222
155
176
128
247
228
210
199
208
171
218
239
194
239
194
273
267
186
241
146
243
128
231
199
220
216
203
185
176
240
215
216
195
256
232
211
265
287
207
182
167
199
183
207
220
252
218
233
139
216
217
252
176
193
179
226
200
220
215
182
186
184
228
188
184
204
223
248
171
213
242
175
186
162
238
218
174
196
214
169
214
185
203
192
201
157
234
225
258
196
197
287
267
198
190
199
227
175
181
219
203
193
201
157
252
173
156
221
209
229
174
203
194
143
186
235
194
259
191
184
203
242
235
143
174
225
197
213
156
193
187
266
192
174
233
170
176
188
176
160
220
166
195
223
215
219
193
183
272
276
240
193
228
171
139
233
171
164
237
115
212
248
147
214
179
186
140
244
180
182
255
239
214
152
173
187
195
196
221
235
159
214
207
180
177
209
181
225
254
181
228
186
159
174
210
190
161
229
175
176
263
143
201
140
175
215
240
167
190
139
148
186
135
219
198
151
243
229
205
242
161
234
207
169
177
209
182
150
159
162
197
221
224
222
256
222
171
166
144
244
146
177
231
240
253
179
221
229
228
205
190
178
183
179
207
193
198
207
175
159
172
227
179
201
208
168
165
211
165
289
188
226
132
178
184
192
206
188
246
226
169
208
193
225
226
170
237
180
212
189
215
235
217
194
204
209
189
239
170
214
212
157
202
191
222
177
230
192
193
172
209
244
259
221
203
190
168
263
181
198
192
164
186
206
177
211
201
238
181
176
213
183
205
183
201
220
240
295
226
208
158
166
216
178
179
206
157
188
229
201
182
193
152
257
175
235
198
200
169
177
187
223
154
229
189
213
199
153
169
209
212
257
164
220
182
185
136
229
243
189
157
247
180
246
156
146
150
161
209
175
208
218
178
210
248
261
210
189
253
186
197
185
169
191
228
105
224
209
231
213
180
143
205
178
235
207
187
206
203
235
183
221
237
138
215
238
215
219
214
225
255
143
203
217
242
194
264
228
205
216
150
146
225
171
178
212
253
238
170
191
166
186
238
215
129
224
205
192
210
191
153
187
216
144
180
189
238
226
263
195
196
228
205
207
203
200
206
214
178
222
238
199
206
178
198
237
237
184
249
152
187
196
232
157
229
262
171
227
225
197
200
213
209
219
192
204
173
236
171
220
193
129
236
182
172
220
175
198
258
219
202
218
226
248
195
201
201
195
167
192
186
156
216
233
173
198
179
199
185
192
206
175
197
255
205
172
146
211
134
209
199
196
174
196
178
180
207
237
173
143
180
240
208
175
216
242
141
172
204
221
179
178
161
227
235
217
190
129
192
190
195
190
167
190
238
242
158
180
196
179
208
230
135
198
186
230
229
173
221
171
222
140
198
222
129
240
189
198
163
177
196
178
236
230
180
193
203
100
207
238
224
177
232
206
261
242
311
223
186
254
172
148
210
202
234
189
180
187
236
202
180
143
160
222
132
168
274
226
167
231
210
214
173
149
213
206
193
242
177
129
265
165
216
232
232
181
149
171
179
207
189
201
171
219
201
223
203
195
188
203
251
217
196
209
193
189
181
249
217
172
247
180
222
211
160
204
194
237
133
156
233
213
226
174
185
203
142
144
252
143
202
182
229
272
102
224
180
94
229
204
179
199
238
251
236
198
229
197
231
244
165
188
197
214
200
204
233
263
168
195
222
194
166
237
209
205
240
217
128
214
173
142
204
166
147
216
229
179
183
189
262
243
205
215
229
222
175
218
203
221
204
241
147
184
218
155
139
123
230
180
146
174
205
185
207
233
181
230
211
207
280
257
257
232
199
217
186
179
198
236
153
220
253
166
228
203
204
251
118
227
190
165
245
231
195
213
202
210
241
188
189
159
189
194
248
176
258
165
209
202
209
232
219
192
183
185
234
170
237
154
197
149
205
183
230
183
228
180
186
208
187
191
222
165
202
164
206
189
227
195
158
152
192
219
145
195
183
220
173
158
177
173
163
283
226
205
172
175
238
196
234
161
206
166
192
232
268
232
179
210
187
181
229
173
215
171
184
228
189
212
198
195
192
185
223
233
148
193
220
130
199
204
195
181
231
169
224
156
179
135
173
192
228
229
206
237
257
255
240
276
223
226
165
162
215
253
177
154
217
182
237
254
234
214
229
171
156
250
243
125
157
186
238
259
212
160
191
230
239
193
231
138
142
208
167
179
217
223
215
226
211
230
109
219
191
159
178
227
217
177
202
187
214
182
129
239
187
243
234
136
200
169
153
148
189
205
198
174
217
278
234
163
154
167
269
188
165
209
243
221
251
182
181
133
193
185
256
182
204
150
166
187
191
191
180
194
175
236
161
214
183
193
208
215
202
144
179
240
171
178
245
265
172
183
220
185
151
195
207
285
147
192
194
209
233
200
239
196
222
215
180
209
231
211
190
178
164
225
175
203
169
198
208
202
259
211
155
198
167
214
204
248
206
149
188
176
208
239
156
235
223
149
204
191
258
217
224
220
133
168
159
160
209
220
253
178
195
211
212
172
168
223
205
149
195
167
159
232
181
246
188
237
222
205
228
177
207
187
173
168
219
196
155
178
200
201
175
199
251
210
224
206
190
184
201
218
225
269
210
139
206
187
219
229
245
182
184
239
148
207
203
222
215
149
236
240
215
239
218
162
260
235
142
218
261
174
166
192
163
224
183
180
204
161
194
196
152
238
271
228
207
191
263
165
243
244
243
202
221
192
208
198
192
240
141
229
218
225
168
227
167
173
190
200
157
224
267
229
210
209
205
166
230
198
225
218
207
183
215
216
262
175
263
174
208
232
170
141
171
192
206
219
259
200
227
248
164
151
217
159
193
222
269
231
198
209
276
201
220
193
217
229
168
179
226
182
196
214
215
188
172
236
236
257
200
237
124
185
150
231
163
231
254
186
208
256
164
193
209
196
173
176
201
242
196
172
192
212
168
197
150
124
174
290
222
264
178
210
179
175
227
195
207
228
169
249
233
203
216
157
180
166
216
155
172
260
206
229
202
211
165
258
234
211
175
211
177
165
232
201
250
199
212
196
233
236
207
170
231
244
210
207
195
219
123
162
155
230
146
176
132
218
189
190
166
204
238
188
218
169
219
140
208
224
202
249
244
227
213
183
177
131
217
222
155
197
163
207
204
244
213
159
222
191
199
200
244
205
234
204
254
142
220
212
192
196
195
213
173
207
183
226
204
230
259
179
225
224
212
192
229
226
160
226
246
164
202
78
188
170
228
167
216
92
186
212
193
185
255
262
200
211
223
197
256
196
160
160
231
276
174
232
168
203
243
255
200
165
230
176
223
205
92
147
213
191
238
212
224
249
211
172
147
197
217
234
244
184
201
190
201
265
122
174
205
193
191
236
179
227
199
191
164
224
175
160
178
270
153
155
217
174
170
197
204
166
252
209
221
216
242
220
205
153
194
221
189
265
173
247
176
233
175
237
264
249
217
230
209
225
233
186
225
134
188
232
222
153
286
179
242
246
212
192
186
187
253
269
198
120
208
197
172
168
179
143
236
198
175
156
205
210
214
189
189
213
145
232
238
221
209
195
236
174
165
204
200
206
169
226
236
224
205
181
180
211
131
180
231
149
182
204
217
230
185
191
196
237
184
149
218
209
261
205
172
196
228
211
168
242
263
185
208
189
230
175
201
218
198
188
174
224
203
261
163
162
257
210
182
232
213
189
212
220
249
162
246
202
195
197
142
220
198
187
215
163
230
229
180
209
160
255
164
131
229
243
220
267
164
249
190
166
181
222
194
216
225
204
178
191
229
283
223
207
174
227
232
192
144
128
176
184
242
207
202
168
129
194
171
217
159
158
186
214
178
145
207
183
205
263
247
139
206
145
199
171
230
198
211
174
174
162
208
194
208
153
214
229
208
238
180
231
219
203
246
236
289
257
269
199
255
205
233
132
172
184
237
211
212
188
265
138
161
237
204
249
206
195
226
207
143
163
171
194
151
269
169
161
266
194
243
227
273
138
181
271
214
241
211
248
180
170
194
211
245
161
168
237
238
198
159
187
295
208
212
205
185
212
184
182
170
146
179
192
177
240
214
230
285
227
225
227
249
167
199
211
219
215
227
182
190
213
247
236
183
271
172
192
235
211
225
169
216
229
137
242
210
219
209
169
190
186
185
263
157
228
266
155
243
219
175
198
181
186
166
248
181
228
177
215
181
216
233
179
138
174
211
157
150
142
201
268
195
189
215
222
191
243
184
149
202
174
181
157
192
200
174
175
179
232
182
214
234
254
193
202
229
205
124
211
168
199
187
206
226
229
175
178
188
229
221
213
182
244
252
211
217
174
234
155
169
246
167
255
253
164
200
253
212
176
214
153
237
205
273
116
162
262
175
176
244
218
122
169
198
197
216
197
191
210
161
170
141
254
225
219
169
240
251
223
208
160
179
170
135
191
152
215
210
170
222
258
237
233
187
226
151
175
247
227
224
212
177
132
180
176
215
215
247
148
277
229
261
240
152
212
179
205
208
275
240
192
170
174
194
208
240
143
191
206
239
194
236
190
224
250
237
153
256
249
224
153
217
230
241
150
193
177
241
227
182
237
159
226
196
295
256
179
213
209
193
179
190
203
221
150
230
191
277
242
241
196
214
194
169
215
166
195
190
154
217
247
211
222
179
168
145
230
192
221
199
222
159
208
172
228
175
159
186
192
211
159
213
191
212
185
213
202
219
228
210
195
190
279
229
194
206
203
187
158
199
188
232
217
177
223
223
185
237
240
150
177
136
179
203
199
201
167
181
162
196
253
197
238
175
224
186
208
202
159
209
189
226
217
191
206
184
185
191
171
208
219
188
237
181
223
216
209
224
268
248
250
269
216
231
277
229
144
229
182
205
164
218
114
149
189
227
188
236
156
183
238
203
174
242
248
221
169
186
224
199
257
210
227
161
182
204
187
228
213
195
177
220
251
208
224
206
174
161
199
196
167
183
193
180
242
206
178
182
212
169
224
128
213
187
197
180
170
205
202
209
175
210
150
204
209
183
182
221
237
217
166
189
201
185
228
179
209
230
225
159
231
253
173
198
201
176
192
204
202
202
166
221
213
192
222
192
209
260
213
192
151
208
255
196
180
224
206
153
212
149
227
209
198
215
219
163
212
160
157
198
146
182
210
155
167
157
220
247
218
210
114
202
209
184
155
241
169
219
174
211
242
206
204
187
224
187
206
222
165
146
157
135
225
222
192
164
208
236
171
232
281
245
228
219
174
178
231
225
246
210
252
212
280
205
212
202
193
226
213
230
197
202
110
228
186
229
181
149
247
196
268
179
191
239
248
259
196
178
138
177
223
252
169
247
209
182
185
177
229
257
228
194
200
206
151
184
182
219
245
237
185
205
250
202
208
215
143
257
188
152
98
259
179
195
166
168
179
161
210
166
201
157
193
237
205
212
273
200
264
216
194
230
182
197
226
200
217
162
183
216
285
242
187
237
169
214
231
225
229
150
199
192
226
227
198
241
224
232
211
204
165
218
201
206
217
208
133
176
225
179
158
208
179
247
230
206
186
141
219
186
191
192
201
253
201
161
191
180
182
267
208
223
179
194
181
164
221
211
209
219
211
195
223
283
259
207
217
263
165
160
230
168
148
151
195
154
234
151
204
224
163
219
239
233
216
167
260
172
182
183
214
177
136
251
214
141
170
286
194
212
161
152
253
226
156
250
104
239
219
179
153
211
263
171
102
173
226
207
222
214
158
241
149
217
205
140
220
199
184
187
190
198
185
185
222
206
211
201
188
184
221
162
158
215
229
188
241
237
232
260
219
175
196
196
179
255
174
175
240
216
245
171
235
188
196
189
203
190
192
185
216
178
192
219
137
160
170
228
226
207
181
287
213
220
279
234
231
225
244
172
216
167
185
202
233
209
214
195
238
115
178
221
242
172
172
193
183
190
93
199
207
217
264
180
198
219
187
158
140
214
182
149
246
245
253
176
239
229
141
182
191
195
257
218
147
197
213
150
163
154
231
250
223
220
169
224
172
158
163
220
174
182
160
171
226
218
198
216
209
173
189
131
248
243
192
201
210
201
153
217
87
234
250
204
273
223
277
142
271
183
205
175
204
221
207
220
243
188
257
230
165
193
189
270
212
227
146
214
204
172
245
249
138
233
201
177
276
280
160
195
203
200
235
161
163
221
220
195
186
220
184
213
189
200
160
258
216
187
205
174
191
208
258
175
209
202
263
243
199
201
259
163
270
174
163
169
231
209
164
250
244
230
181
125
212
165
208
207
184
198
206
238
210
231
178
188
131
163
189
162
217
185
216
238
204
185
239
211
217
177
239
235
176
154
151
252
181
192
147
172
219
182
255
166
141
217
216
217
194
166
190
189
195
267
216
160
269
216
229
221
219
235
205
176
208
219
268
216
160
223
225
224
230
204
231
205
167
197
106
204
213
224
217
195
249
154
196
214
186
153
224
187
221
140
166
256
199
277
194
193
242
195
174
231
193
212
188
262
240
187
273
188
180
258
120
150
229
192
211
193
160
153
201
250
163
150
213
172
227
221
236
166
181
147
179
268
181
227
148
207
206
151
196
204
189
222
182
179
174
135
132
210
164
158
153
254
154
144
222
228
150
208
194
202
149
188
212
198
179
189
183
236
159
160
185
224
132
183
139
232
208
211
190
229
230
206
148
212
194
175
197
164
213
154
169
224
226
233
140
269
247
213
155
248
107
193
216
195
227
157
194
204
182
193
226
232
228
181
235
236
210
215
202
182
180
226
210
219
254
221
230
145
260
211
212
264
193
240
220
231
185
201
155
204
244
223
197
222
176
201
249
184
146
202
167
193
178
206
174
203
211
220
226
261
145
185
250
194
197
202
205
189
171
208
197
184
173
212
145
157
218
212
212
211
187
222
117
187
156
219
203
212
194
167
248
238
147
195
199
181
271
176
214
216
225
275
158
197
231
225
233
194
241
211
161
243
180
81
138
156
222
181
260
208
181
263
235
236
187
183
210
228
208
194
224
202
197
231
197
239
179
198
225
226
220
225
228
156
155
216
214
185
189
206
149
191
114
171
238
211
209
156
210
188
169
257
153
185
214
148
218
171
196
226
225
257
156
230
219
186
200
167
256
227
224
226
196
183
113
217
170
220
212
189
149
201
154
215
124
191
201
227
189
195
163
208
182
204
222
184
140
209
212
182
171
209
221
243
153
175
196
220
228
265
191
163
177
228
249
169
255
245
220
252
231
174
156
179
235
157
142
209
197
210
192
172
210
179
178
228
210
253
198
257
134
161
138
217
259
239
189
227
250
203
170
223
176
228
201
208
252
197
263
241
189
178
209
198
246
227
183
167
181
228
221
174
246
200
177
246
243
241
209
218
205
232
188
130
150
251
238
186
187
140
209
198
215
175
199
245
251
189
215
191
223
177
160
196
219
167
186
171
145
240
240
212
174
196
206
206
207
208
172
215
239
222
185
188
196
213
225
221
226
222
206
215
224
191
189
178
184
238
193
186
132
207
222
230
231
146
239
232
197
172
173
197
153
233
227
165
214
226
156
189
237
170
207
270
162
236
229
210
137
229
196
176
172
221
196
143
211
191
153
235
202
172
212
244
176
140
193
169
181
157
169
230
235
215
164
180
179
229
224
219
179
179
194
156
208
172
218
244
245
210
218
210
216
181
266
160
243
246
158
224
183
213
210
177
213
203
189
217
222
170
202
215
167
166
175
169
183
181
217
235
257
187
185
226
192
207
232
166
167
181
216
243
193
173
189
219
192
159
235
191
229
220
167
190
195
166
246
177
204
206
223
204
182
172
209
235
244
157
194
201
187
176
167
299
221
175
227
199
248
206
171
236
183
202
197
159
228
179
190
190
250
211
234
239
164
193
165
208
193
163
191
149
210
154
220
180
174
177
143
222
221
202
221
119
147
230
158
165
199
231
218
231
228
211
211
148
203
243
190
163
184
208
133
232
151
223
159
247
196
219
198
186
197
147
223
143
213
239
192
166
206
193
202
155
226
196
179
200
202
214
170
200
190
183
161
160
159
156
203
181
140
187
171
194
212
266
136
201
235
200
218
206
154
218
244
240
234
178
190
197
192
178
177
109
228
169
214
273
243
210
243
236
224
229
250
160
178
194
216
221
192
155
185
194
214
167
262
216
211
208
179
218
195
200
244
204
181
174
183
151
144
220
179
199
154
262
212
209
151
200
204
235
145
212
223
177
237
147
303
250
159
233
235
225
169
173
207
197
208
226
231
236
251
188
220
204
179
209
190
203
280
188
240
167
170
243
225
176
185
195
185
246
161
223
187
192
237
207
232
184
187
171
214
158
215
195
131
178
175
157
220
177
210
172
248
248
170
247
207
239
197
141
225
215
201
211
169
212
135
232
189
193
229
236
146
211
239
192
207
194
185
260
218
162
208
205
196
205
150
230
175
249
178
222
219
156
186
196
228
215
162
189
188
154
191
261
203
123
216
154
170
167
221
223
190
187
218
234
203
261
206
224
183
200
167
160
206
201
171
228
168
169
197
229
160
117
211
273
219
222
187
225
161
153
183
224
195
205
229
263
208
210
236
163
263
235
213
203
168
191
235
192
216
278
239
178
230
221
234
257
248
180
216
178
275
234
160
256
200
214
273
221
196
184
180
147
155
153
145
165
206
218
238
221
165
215
210
171
210
209
137
196
238
134
199
219
243
205
240
285
228
238
215
233
137
185
238
165
184
250
164
229
200
231
223
268
198
207
205
220
182
217
173
126
179
168
191
172
262
185
246
201
163
147
234
257
278
237
194
251
212
260
231
184
197
235
199
149
180
224
215
222
204
143
214
195
169
199
208
242
182
199
169
226
175
235
142
282
197
250
272
177
197
191
228
187
189
267
238
218
233
171
226
252
184
207
243
199
141
188
186
204
242
149
162
196
233
197
212
178
196
249
175
164
143
216
188
227
208
173
238
180
198
238
185
188
182
205
215
196
180
186
271
198
215
190
176
214
232
233
175
188
138
169
195
197
171
239
185
168
150
215
224
204
151
188
240
232
230
200
170
124
125
217
180
214
168
236
205
237
132
254
214
247
139
186
189
176
258
188
238
194
172
168
122
216
137
199
132
182
229
163
187
219
203
193
191
173
178
179
191
252
189
169
198
160
180
219
117
244
191
198
166
170
253
191
161
232
193
180
206
219
185
187
161
174
240
206
241
260
164
198
224
249
216
199
169
190
223
170
219
206
188
187
215
236
228
239
181
225
240
184
122
228
241
199
212
165
151
206
173
211
223
179
248
241
243
185
199
236
220
221
231
183
222
214
219
236
218
157
232
180
176
215
244
127
182
233
207
184
210
224
203
247
218
202
240
270
275
205
216
184
171
261
173
147
160
180
161
194
225
191
204
210
199
215
205
210
208
191
143
221
235
200
191
176
216
203
217
221
190
201
199
246
236
232
208
227
153
142
182
159
206
184
186
228
238
230
246
240
194
206
157
189
217
235
210
156
188
189
246
196
216
236
132
160
191
179
173
247
188
178
170
245
178
194
194
231
189
249
202
124
186
233
146
193
207
265
205
171
212
240
185
269
215
208
165
169
188
219
186
212
255
209
152
194
205
128
213
200
194
238
217
163
231
185
198
216
228
141
167
198
222
166
265
202
252
235
119
148
185
162
189
177
167
169
193
159
122
164
232
212
185
126
152
246
222
213
244
177
252
161
281
220
183
190
261
190
136
244
186
202
270
241
236
167
273
223
202
194
160
133
259
217
229
238
203
152
234
249
175
201
163
212
252
229
122
193
138
184
221
213
179
200
229
171
216
236
191
193
200
221
205
200
222
200
180
214
216
132
157
176
167
197
176
155
190
232
164
224
168
137
242
145
234
233
235
188
164
162
223
187
183
217
190
191
257
187
208
193
220
239
196
194
234
218
172
226
238
217
154
196
223
224
247
221
166
253
161
260
167
161
162
181
176
192
217
239
221
244
184
209
260
172
243
197
209
246
187
231
208
185
221
171
253
190
181
250
172
200
179
175
212
189
186
134
215
235
218
147
229
199
249
151
152
158
218
268
148
208
135
229
251
174
195
162
248
256
198
177
191
205
228
180
202
203
154
177
258
256
206
166
266
218
209
231
233
175
228
248
168
218
211
201
246
178
260
200
211
228
207
190
250
140
209
218
225
191
131
217
205
195
237
194
179
163
210
215
171
163
143
172
176
211
196
219
216
230
227
141
234
247
167
220
218
171
206
175
179
196
213
137
219
222
305
198
217
207
232
176
267
203
160
212
204
167
169
170
214
200
238
187
218
220
197
154
223
230
215
165
176
210
244
254
191
223
237
182
223
214
194
176
179
187
208
178
219
237
264
204
219
229
235
203
200
157
190
207
211
230
242
232
197
257
138
237
184
241
228
187
183
198
237
198
202
125
221
239
182
189
240
212
157
224
188
224
196
144
179
201
202
135
206
204
235
225
193
167
261
189
200
197
205
224
236
171
188
247
238
78
265
179
204
172
181
151
223
195
203
228
194
198
168
154
181
264
187
200
213
174
185
148
190
223
191
218
224
176
271
241
247
198
164
205
197
180
173
251
222
171
182
216
159
230
177
176
167
177
132
183
204
191
238
102
166
187
177
173
235
199
213
219
207
221
200
207
218
207
162
158
258
200
226
184
230
222
226
153
203
182
179
159
203
167
286
166
214
151
191
115
182
184
225
208
210
182
204
182
134
147
213
198
179
215
143
173
217
215
216
151
265
150
185
222
215
203
235
190
218
202
227
169
190
245
234
211
205
128
168
211
218
179
195
121
201
199
214
253
209
142
227
216
245
203
224
198
233
210
219
196
148
192
240
233
244
184
186
232
194
239
167
168
228
200
192
181
147
218
234
226
273
206
213
206
168
196
187
242
225
232
161
190
207
197
272
207
239
187
200
214
168
221
237
144
189
222
158
198
208
180
188
156
221
186
130
217
157
223
185
249
163
174
196
221
185
212
163
246
202
158
174
199
239
232
238
179
179
124
220
214
225
206
191
214
165
205
186
156
238
198
227
210
228
176
193
229
237
181
221
145
209
218
229
216
196
177
189
260
222
238
227
152
261
199
181
186
203
265
193
173
181
202
238
172
229
253
196
189
213
229
216
191
180
233
250
220
121
257
220
165
197
152
208
202
171
199
211
180
246
175
186
170
239
258
178
212
204
175
226
140
193
214
241
199
231
217
174
189
175
149
193
190
192
132
231
136
185
131
163
239
219
182
238
213
192
226
203
280
152
167
181
155
143
215
185
267
167
157
278
164
260
227
215
173
206
222
199
226
202
205
207
216
203
248
240
217
258
207
234
199
259
188
249
200
206
226
214
148
206
162
221
146
206
175
192
220
205
190
150
155
145
140
219
265
233
168
203
216
176
224
229
180
187
175
204
222
231
158
202
169
231
216
209
205
156
178
185
193
211
212
187
208
198
233
177
180
204
207
208
225
180
154
187
125
182
173
159
214
242
118
131
221
273
181
151
220
247
214
244
184
177
235
212
220
196
173
208
259
170
147
195
159
245
222
200
161
129
132
170
229
190
190
228
209
218
242
145
128
266
266
178
200
199
168
242
267
162
190
193
221
180
241
196
180
211
190
210
164
193
133
229
168
173
223
208
212
196
148
226
175
229
216
190
195
229
241
186
165
150
247
237
207
223
157
167
236
205
144
206
218
195
150
188
214
224
215
237
242
204
162
249
214
228
184
196
236
169
246
199
234
231
180
162
194
126
213
219
171
234
202
224
225
171
223
172
241
226
179
214
255
159
174
208
271
211
199
247
195
185
247
204
248
215
173
187
228
200
219
181
208
249
219
218
189
224
206
256
217
102
251
184
203
220
148
185
205
170
153
225
199
220
188
179
116
188
202
231
217
198
215
209
181
208
204
219
195
225
191
146
238
144
230
222
162
194
203
183
196
168
191
207
212
264
214
227
118
212
252
210
247
239
186
167
198
188
225
229
204
117
219
230
150
205
212
232
219
197
215
217
207
164
160
195
208
221
149
237
201
187
188
182
195
180
225
253
172
205
196
250
230
258
211
211
186
148
201
198
131
155
209
168
210
167
241
158
106
130
242
207
222
169
229
161
213
210
218
178
221
168
154
221
182
259
160
203
127
175
214
191
186
272
260
177
204
192
255
203
200
223
192
190
204
124
271
194
206
247
203
191
188
202
214
256
232
206
101
205
241
191
172
207
229
114
221
201
189
261
224
223
272
244
154
157
196
205
218
201
220
219
162
195
204
216
184
210
173
134
201
201
209
239
181
226
198
191
171
214
218
190
204
208
171
266
196
207
159
245
163
190
214
228
204
162
177
196
222
159
221
215
274
170
278
238
214
128
201
148
194
205
271
258
231
213
225
195
270
169
202
173
141
241
231
218
222
207
208
211
245
237
227
176
204
215
218
208
159
240
216
204
188
243
143
234
250
241
260
222
196
209
136
226
143
157
254
175
164
199
171
166
195
211
185
99
206
213
211
162
217
176
237
159
202
285
206
122
186
152
174
139
216
211
209
171
206
184
230
195
231
191
216
237
178
234
223
196
179
161
216
215
206
165
216
179
230
206
246
144
202
174
140
138
137
165
240
263
238
239
207
172
238
218
205
163
175
247
197
165
198
246
170
177
197
256
183
188
253
239
148
185
207
178
165
215
165
233
146
240
166
257
223
238
194
213
202
196
220
188
212
138
179
195
179
181
174
198
199
231
239
188
237
196
170
218
194
199
174
178
176
203
195
242
186
188
211
150
164
157
176
140
206
201
153
136
177
144
239
159
188
206
149
251
196
197
210
138
225
229
267
192
217
255
208
199
240
178
199
173
236
213
221
223
184
196
239
213
238
217
230
238
228
138
168
189
205
187
249
237
145
169
189
176
207
196
186
215
176
242
237
207
230
159
209
185
203
141
156
173
200
193
183
193
242
191
180
160
131
150
137
263
227
197
207
183
228
198
245
176
208
200
122
231
235
230
215
183
170
195
179
211
202
203
267
198
222
239
213
218
182
173
231
231
190
184
212
158
248
210
193
249
174
220
188
166
234
219
139
189
161
189
186
225
186
227
180
231
217
224
175
213
254
166
198
197
198
274
195
207
198
236
180
235
259
197
228
214
181
200
202
252
163
251
209
214
251
205
233
184
246
182
184
186
208
245
207
201
174
198
242
191
168
179
229
252
225
160
223
226
205
112
202
230
227
227
182
142
237
155
198
231
234
188
183
198
120
181
184
249
185
220
242
207
138
242
207
181
212
216
203
144
201
197
208
185
243
201
138
195
202
203
212
139
174
181
165
192
214
154
186
193
137
227
200
284
205
189
256
135
201
177
194
156
234
199
239
186
202
258
216
203
252
222
180
200
136
147
241
182
200
230
197
200
132
218
220
150
162
241
220
188
167
242
246
181
271
201
211
198
192
235
170
182
186
171
185
246
251
213
194
289
190
225
238
248
166
189
176
259
174
263
202
270
237
220
224
198
118
214
192
174
208
201
209
168
216
204
147
187
163
188
191
188
203
217
205
157
209
119
194
146
180
195
239
200
201
246
212
177
191
227
173
207
142
265
198
213
269
183
182
178
177
124
247
224
189
171
173
257
207
136
221
253
165
239
240
180
248
244
206
285
174
213
254
180
200
220
179
154
174
202
258
191
236
205
182
174
195
191
176
277
184
189
249
184
174
262
206
212
215
208
143
139
185
185
195
188
190
170
203
238
206
151
217
157
221
173
235
174
196
243
203
198
204
202
245
246
196
263
163
216
123
211
158
134
262
182
178
170
187
214
187
258
193
219
241
187
171
195
156
245
193
173
214
249
61
129
177
246
136
221
227
171
223
175
174
180
181
187
168
209
232
156
144
196
226
155
154
143
189
192
158
171
192
245
223
226
175
154
196
245
197
246
173
214
226
241
239
221
255
217
167
132
232
144
119
245
230
165
242
246
200
132
280
212
182
226
216
245
231
196
155
181
199
181
181
146
249
141
187
208
183
224
157
159
189
187
248
180
189
226
164
239
223
199
229
188
219
221
175
171
210
192
211
206
193
214
180
175
209
167
164
188
222
163
216
192
215
188
195
230
214
201
171
227
222
268
206
167
167
236
152
238
195
282
179
169
239
206
199
205
108
215
188
212
186
195
182
258
206
112
126
202
222
151
229
156
174
199
230
218
166
220
218
194
167
161
203
243
216
170
262
227
172
229
225
203
211
215
221
202
234
184
214
173
127
251
191
181
214
158
182
181
189
169
223
295
207
208
206
173
213
236
195
172
211
249
222
204
200
255
221
169
251
196
195
193
270
262
216
183
149
253
180
196
216
252
163
154
186
254
151
164
181
174
192
197
247
210
187
157
218
174
265
242
215
199
242
203
216
187
258
187
225
192
186
185
250
205
206
201
256
198
187
238
201
249
228
180
200
236
168
230
223
220
187
175
209
215
200
224
220
126
207
202
218
257
287
193
239
246
181
194
231
208
163
197
210
203
185
162
191
109
189
181
171
241
245
180
176
213
174
181
244
167
245
283
212
217
220
238
205
117
188
255
158
176
183
169
167
117
201
200
199
195
154
206
248
242
185
203
220
247
125
188
199
209
169
170
177
182
118
180
216
192
237
200
199
236
186
212
237
218
171
196
168
253
165
232
119
173
214
162
174
199
254
236
168
217
192
186
247
189
186
193
168
202
181
215
229
189
170
137
190
206
191
162
214
182
186
268
235
156
177
229
225
133
149
260
243
191
132
216
158
181
283
218
180
175
220
208
285
208
168
238
248
170
204
160
198
222
197
210
178
230
179
208
208
207
175
189
198
245
227
228
167
151
173
166
199
191
247
206
248
159
194
228
276
289
158
168
230
178
211
232
168
197
200
262
186
209
229
186
189
261
144
200
213
235
219
180
168
200
180
204
210
202
208
210
211
183
209
162
203
252
201
164
257
151
235
216
203
191
169
235
178
183
220
175
225
231
57
186
236
155
227
153
165
210
228
186
224
246
156
240
232
269
200
209
189
220
189
185
239
160
179
204
166
133
250
185
150
191
259
269
172
223
185
204
170
214
213
191
162
246
197
255
149
178
190
178
169
197
173
243
227
182
191
153
150
173
213
231
229
189
224
201
141
211
164
249
203
199
212
211
253
189
163
214
232
215
216
197
166
194
234
273
228
173
215
224
160
177
245
171
235
195
194
183
221
212
130
206
240
202
181
236
227
208
162
176
151
182
187
126
282
216
184
215
239
251
240
191
244
230
198
201
159
231
203
195
100
193
237
197
183
204
249
192
224
175
238
153
219
204
181
156
214
222
167
192
233
258
195
128
145
204
162
137
191
190
217
281
216
204
242
193
239
202
245
249
160
262
250
234
188
208
225
247
201
231
233
191
239
178
194
241
138
203
202
170
224
245
210
185
206
212
220
255
251
207
218
176
173
161
265
204
189
187
165
185
169
232
130
161
243
240
221
158
151
265
210
242
219
202
198
227
171
176
160
187
183
179
216
252
222
217
183
155
193
217
259
272
188
246
147
274
226
230
249
173
251
194
185
163
234
269
158
190
202
180
209
182
159
138
187
249
194
262
189
289
187
212
227
201
251
196
220
218
212
172
176
122
204
255
246
231
224
260
221
132
171
204
182
238
224
221
280
278
157
180
196
267
187
210
178
222
253
240
197
147
144
245
221
166
173
245
197
201
118
144
256
200
262
195
193
267
171
210
175
155
161
108
201
240
197
228
153
249
181
198
230
177
202
190
225
210
167
249
174
205
196
218
203
180
199
234
205
163
196
218
193
207
182
188
167
211
227
139
207
194
170
213
220
236
206
167
166
251
168
229
248
226
144
217
180
205
262
206
212
232
186
199
201
226
226
261
192
238
183
228
191
202
182
194
240
203
199
172
262
223
139
226
167
224
176
169
155
167
197
207
203
244
160
164
231
241
272
256
158
150
238
147
162
169
204
211
223
175
168
158
220
198
181
149
262
161
253
172
194
211
239
210
250
185
175
216
196
232
187
223
145
265
130
183
199
209
231
211
251
170
147
140
163
157
191
194
240
170
236
269
190
174
159
186
202
195
247
209
226
190
257
203
198
211
185
175
167
214
276
185
145
224
168
148
181
182
223
240
245
231
243
155
183
202
152
234
191
170
241
270
192
190
179
186
169
240
176
191
222
168
252
218
188
232
228
206
178
206
168
232
254
240
250
205
238
174
154
164
206
207
182
213
169
73
229
181
198
201
241
226
237
229
187
205
199
261
215
213
145
152
206
215
188
185
140
225
178
157
180
201
152
227
203
163
198
175
178
221
312
170
224
224
180
213
209
211
145
168
211
191
231
118
233
222
201
187
170
187
182
194
216
192
188
200
220
193
207
192
205
193
213
212
245
177
171
230
210
209
173
222
150
236
110
205
218
222
154
233
160
197
215
218
204
208
217
209
193
221
211
242
163
137
230
170
244
204
172
210
201
252
227
202
171
155
202
176
224
182
208
158
206
173
154
195
196
228
240
147
218
243
178
213
162
153
252
158
227
213
264
176
208
199
156
212
260
191
272
196
180
150
229
242
237
157
240
183
197
79
205
255
128
212
190
145
259
270
132
168
188
222
214
144
226
268
214
212
206
197
167
224
206
192
211
223
198
254
179
180
152
231
217
215
155
229
218
170
182
214
244
164
280
162
240
151
199
193
169
239
167
169
221
182
185
151
189
174
123
211
199
244
214
179
175
194
206
214
214
171
187
231
139
188
194
180
201
167
225
176
184
165
184
163
203
220
166
143
213
204
198
228
192
246
160
230
232
189
190
228
203
189
191
200
109
210
241
238
167
259
206
153
153
161
159
112
207
164
234
218
208
185
243
267
223
197
252
164
186
110
194
218
222
180
216
129
144
164
264
255
147
129
227
138
239
245
213
254
168
214
218
171
209
167
190
267
228
169
152
247
191
208
181
194
221
135
236
173
206
208
255
197
192
254
182
206
253
215
241
226
202
154
223
202
224
140
170
119
192
178
128
190
193
213
149
251
238
190
219
174
214
222
219
228
204
190
181
152
215
187
121
193
205
192
203
216
188
156
177
190
234
207
219
155
204
154
240
180
240
215
247
145
202
220
209
193
174
190
251
233
158
242
153
244
234
139
229
230
262
283
187
218
215
231
234
135
155
169
259
235
185
212
243
174
198
175
190
159
208
212
163
182
185
156
166
199
172
204
198
228
188
176
133
214
173
187
204
222
170
198
233
250
226
150
150
243
184
126
243
180
204
159
223
214
178
240
234
216
194
222
164
143
248
225
252
232
207
190
210
225
153
181
205
211
195
175
252
202
167
205
241
223
192
230
200
181
196
188
273
246
246
211
176
238
177
144
186
246
204
195
240
189
164
224
184
201
149
240
204
238
193
232
186
179
215
132
224
207
195
184
264
150
139
231
232
165
181
180
189
252
208
251
151
152
180
206
219
189
226
134
197
225
213
180
238
241
174
193
201
171
180
232
188
194
217
166
151
227
251
203
229
186
191
177
213
239
151
222
237
200
208
187
195
163
254
183
212
251
165
194
207
228
207
237
230
176
187
197
208
225
131
253
177
199
192
189
201
216
232
171
110
284
135
163
268
217
227
226
231
217
209
236
201
186
237
200
173
212
218
183
212
174
204
190
203
207
175
209
182
197
197
194
244
199
196
162
263
171
222
176
251
216
202
211
156
211
170
162
204
138
237
200
159
192
265
174
145
245
167
212
176
248
264
197
156
173
231
220
105
215
185
234
199
241
190
202
258
200
201
206
188
209
93
187
201
192
216
196
233
231
212
167
255
207
221
195
237
207
260
176
235
261
226
206
165
155
189
252
231
195
207
179
219
219
213
116
213
194
204
137
223
245
222
160
216
159
194
184
181
243
168
193
217
214
249
136
228
189
176
159
162
210
213
217
211
113
201
165
153
190
157
156
238
224
138
194
194
189
171
222
179
178
172
210
169
104
257
192
238
160
216
146
208
179
213
191
230
211
239
201
203
174
175
201
154
208
168
216
133
211
198
164
151
213
165
133
179
204
197
221
185
188
221
121
188
184
202
213
247
233
202
149
260
230
228
190
170
204
232
201
202
159
222
220
188
154
220
190
221
191
160
144
219
193
181
204
189
175
156
219
161
213
219
164
134
145
168
244
220
157
201
212
252
130
204
178
209
248
177
191
217
237
191
143
192
192
230
211
251
249
207
256
219
159
276
169
281
194
213
259
227
223
207
140
215
234
236
219
241
242
186
190
244
196
215
178
206
247
200
159
194
228
200
214
195
180
167
191
227
227
199
245
246
213
225
210
172
272
208
155
194
214
136
243
206
169
204
261
231
253
143
240
143
141
216
221
149
232
206
227
160
225
239
232
157
255
210
195
194
210
260
186
225
249
186
220
242
224
187
215
143
220
180
173
167
181
242
188
211
254
165
201
216
125
200
130
186
206
187
185
164
218
190
313
165
208
186
217
168
210
137
185
198
154
146
214
262
189
181
223
184
225
176
242
204
171
214
215
210
216
214
239
211
232
105
182
225
189
199
204
201
193
208
174
147
262
228
241
253
197
231
220
166
228
147
178
228
176
246
161
196
164
233
149
212
189
210
209
168
238
196
227
153
159
239
186
190
193
258
166
229
163
220
213
208
227
182
159
188
193
235
136
249
171
165
266
212
235
189
158
180
155
179
183
186
189
160
192
218
181
172
198
152
201
242
169
208
198
210
235
188
201
239
204
183
156
183
172
234
193
166
180
223
163
229
192
207
257
229
222
208
223
215
187
216
178
211
171
245
102
251
213
211
135
238
285
215
168
183
219
168
213
191
189
185
216
206
162
196
177
186
164
203
181
180
200
213
247
245
197
143
207
226
146
181
160
224
147
212
205
248
192
217
205
286
237
179
225
196
223
195
216
216
173
189
196
184
200
282
225
194
177
204
170
176
244
291
232
217
183
153
207
195
174
171
229
178
144
254
201
228
198
197
196
172
174
235
189
243
202
209
112
225
230
264
223
205
216
253
222
193
207
232
146
215
137
196
217
231
149
184
193
259
181
191
235
201
189
237
197
214
191
162
184
218
205
190
213
200
243
194
224
151
202
201
179
210
173
195
230
267
208
223
218
201
165
275
226
179
235
146
188
232
207
233
203
204
208
191
148
159
234
184
244
199
149
215
166
167
241
161
213
171
182
150
225
242
166
195
195
189
122
181
179
252
174
192
204
242
155
248
288
188
212
197
201
194
214
216
216
284
234
160
186
212
199
251
132
252
229
160
204
179
148
215
165
196
175
236
183
168
210
194
176
195
279
229
233
179
196
247
205
185
202
150
153
263
184
195
248
209
223
209
228
143
185
189
193
183
207
221
177
178
170
194
219
226
171
252
167
259
215
158
259
180
169
201
198
186
217
220
245
173
229
186
244
237
218
196
137
195
275
203
227
216
203
185
158
203
160
212
170
191
210
211
217
238
185
192
230
189
207
204
250
188
231
149
207
276
169
265
229
180
260
130
196
233
188
180
206
225
190
241
212
233
179
172
168
217
191
171
204
137
211
149
140
174
202
240
196
207
233
203
210
180
170
229
178
186
188
146
204
193
243
218
221
177
181
235
243
217
246
168
168
186
228
221
211
193
198
203
260
205
177
193
200
187
213
194
172
166
214
234
172
227
232
184
182
239
184
233
162
193
255
199
216
159
166
245
232
209
215
228
199
195
143
239
158
244
240
211
205
216
170
123
224
274
200
228
150
233
169
244
184
183
237
213
161
172
228
221
212
203
201
220
233
210
118
161
248
236
242
202
193
219
182
193
245
260
195
218
249
255
183
194
188
228
192
228
176
223
209
196
239
201
148
206
222
171
204
174
180
219
190
186
241
230
230
199
175
166
234
150
165
206
193
191
184
222
207
192
192
210
202
164
146
163
201
224
195
162
218
242
190
210
219
238
115
202
272
207
161
212
234
159
189
168
172
120
196
226
167
228
196
199
207
200
208
250
169
239
157
171
184
196
201
191
236
178
208
172
170
177
202
199
230
229
173
226
226
215
120
185
243
213
250
187
233
233
213
115
217
155
231
155
239
217
241
216
179
153
211
159
249
223
170
223
226
193
200
258
209
218
175
222
247
190
181
161
198
249
167
219
184
167
225
247
196
141
221
224
184
135
185
230
130
274
241
217
267
170
183
173
178
169
240
201
212
207
157
212
190
148
178
202
106
191
234
197
220
232
203
210
191
204
220
204
251
225
215
209
153
214
206
160
225
168
138
110
199
184
231
188
193
222
187
163
199
140
261
196
181
187
150
145
190
269
287
179
213
229
227
200
206
249
198
239
208
242
163
195
214
193
208
184
200
242
178
220
270
172
227
239
208
75
175
186
169
195
186
159
225
107
155
172
249
193
185
239
143
204
197
149
209
169
173
232
211
205
198
199
160
252
183
214
168
223
180
177
214
201
249
165
248
167
247
178
204
253
240
227
186
199
196
202
171
152
160
276
217
226
184
236
238
128
229
189
182
239
234
144
203
254
195
173
164
206
230
184
159
209
238
226
237
197
172
234
243
164
182
217
215
238
105
208
230
213
216
172
219
271
190
210
251
270
220
206
206
202
225
165
239
151
173
123
212
185
182
201
213
113
164
214
164
237
195
169
180
213
197
215
156
186
118
192
166
196
154
245
176
232
209
139
242
199
196
168
189
148
198
171
193
200
206
206
178
213
199
184
242
195
213
208
211
194
150
207
209
202
169
131
231
187
220
196
208
160
172
256
203
219
243
150
152
201
218
163
216
238
190
161
140
192
154
154
158
196
192
209
181
181
231
214
159
143
183
179
179
216
194
275
242
195
183
258
180
189
134
245
207
129
213
224
134
232
181
240
253
226
167
178
207
206
154
248
211
205
181
194
160
249
202
195
231
266
209
245
219
136
234
228
241
185
189
178
180
173
187
162
155
198
180
215
223
136
197
239
194
156
223
231
212
178
204
206
182
176
201
138
199
204
183
125
166
158
231
186
200
175
147
242
186
173
236
154
235
174
246
252
208
175
254
235
222
198
210
181
258
213
189
169
221
181
200
124
199
190
196
199
222
217
192
184
198
246
166
181
192
203
213
226
212
168
222
213
206
183
232
182
207
195
145
277
212
227
228
203
245
170
253
154
224
242
166
172
202
144
177
189
158
213
200
250
196
199
241
181
260
178
275
221
160
177
215
215
185
185
237
178
180
181
235
222
194
220
222
176
213
233
228
218
169
119
228
172
190
270
160
183
146
230
230
254
222
187
216
181
191
205
237
165
244
233
223
181
203
169
187
204
237
234
176
238
197
180
202
221
249
240
152
219
248
170
238
242
185
162
193
182
226
229
207
184
216
183
205
230
273
146
170
181
211
220
183
224
262
136
160
177
137
196
235
221
198
172
198
246
172
240
184
188
147
183
240
192
217
187
121
211
231
150
202
212
232
264
180
215
229
198
205
175
219
147
166
177
231
261
226
180
159
211
170
176
206
224
294
159
248
227
153
191
222
209
250
199
204
183
114
218
222
216
207
203
158
224
168
149
140
223
248
228
186
200
219
204
169
173
174
237
202
150
181
210
160
220
214
154
164
223
206
154
161
220
135
217
210
210
226
197
193
187
250
195
211
200
243
228
174
227
143
288
214
210
215
97
176
236
215
234
175
237
243
131
219
251
227
179
181
220
232
180
214
160
221
211
221
206
202
160
251
236
212
152
207
268
184
216
222
184
158
215
228
174
165
146
190
214
208
251
245
230
167
190
125
194
234
205
200
219
224
181
182
149
281
278
161
189
211
231
194
228
173
197
188
150
148
201
240
171
173
210
170
200
146
165
244
188
186
234
178
176
170
220
204
162
146
215
137
161
142
215
226
188
187
254
220
174
132
254
212
175
199
260
210
195
213
219
108
188
225
210
113
231
240
147
185
225
199
203
235
177
243
216
265
204
206
213
175
198
139
162
198
198
242
172
166
252
200
218
243
170
219
197
210
246
250
221
178
177
177
171
239
240
215
211
208
235
227
186
197
187
204
206
248
138
180
206
148
261
184
194
223
166
198
200
210
220
181
224
170
219
190
211
198
171
210
193
150
125
240
216
161
178
255
134
209
226
190
239
185
252
237
182
205
188
207
172
224
169
241
207
195
216
240
226
138
212
169
210
166
173
212
161
216
224
214
265
166
253
243
229
226
232
284
144
189
208
254
236
286
257
104
243
156
191
239
177
204
265
174
242
199
155
180
198
159
200
167
188
177
165
207
216
157
179
187
231
254
193
165
172
202
180
162
225
148
201
236
201
156
185
256
201
221
154
219
265
129
191
160
166
219
185
181
156
199
204
221
221
181
195
174
189
235
234
154
143
179
232
210
195
234
234
161
233
174
169
235
211
204
243
186
217
224
205
213
191
230
275
223
209
183
151
188
207
198
237
235
142
194
200
230
207
169
187
163
129
207
181
185
245
225
184
186
211
201
248
191
228
243
203
227
241
135
208
248
211
219
202
208
187
235
211
210
186
254
190
175
216
244
169
234
227
216
211
183
247
221
188
184
143
203
228
219
119
190
115
206
144
249
176
214
182
178
142
150
237
216
224
157
213
220
240
171
189
214
227
185
243
210
189
145
169
204
221
176
181
178
258
179
162
257
196
148
197
233
153
192
165
170
180
186
224
204
183
208
205
210
177
261
204
182
144
207
157
199
219
191
162
197
181
238
235
242
185
209
235
191
157
186
238
235
156
162
150
202
276
183
176
214
144
209
152
238
187
203
202
180
178
215
207
196
202
194
247
166
171
150
218
197
183
194
172
163
165
234
175
122
214
155
197
211
194
261
207
143
145
178
182
201
246
261
218
270
170
205
211
217
200
158
166
207
147
215
137
228
205
220
143
238
213
177
175
217
179
200
173
238
184
186
294
166
141
175
232
196
161
148
178
213
174
179
181
235
244
225
195
191
219
246
142
191
195
235
199
168
197
150
225
188
179
174
181
208
225
157
219
219
240
172
180
274
229
126
262
190
235
226
193
174
208
192
197
218
178
237
193
247
179
239
223
233
180
142
199
231
146
188
111
177
173
192
162
181
229
149
246
183
184
150
187
153
178
198
211
186
228
178
200
197
197
219
227
201
235
193
152
193
192
158
247
214
190
236
220
277
140
186
171
184
199
144
239
241
161
190
243
216
267
149
221
210
192
150
218
182
205
193
204
188
219
195
201
203
210
158
227
186
187
231
245
216
230
216
180
191
176
217
206
230
163
234
196
165
249
169
226
212
212
219
145
164
216
179
152
238
234
214
224
247
167
171
262
237
191
181
247
172
175
164
231
190
234
167
184
172
155
206
180
231
201
165
182
221
216
213
224
144
244
177
261
200
173
190
232
218
200
167
187
153
164
227
184
255
238
211
255
205
163
212
230
247
182
217
213
154
246
205
163
242
150
154
242
146
149
189
212
206
153
192
163
145
179
171
209
179
190
175
173
227
219
185
223
139
207
260
231
235
214
201
177
210
148
135
189
255
169
180
185
212
177
158
157
271
205
254
215
248
141
121
247
247
267
227
241
192
178
134
166
156
198
213
178
204
228
147
215
171
230
312
226
228
194
225
194
211
228
245
211
237
103
205
155
238
190
213
240
252
154
238
215
226
261
162
203
158
238
189
230
177
200
200
245
280
177
303
216
224
211
242
192
181
178
138
264
186
196
230
234
232
144
182
227
192
217
222
219
186
163
180
214
169
163
168
156
228
119
239
207
201
176
192
235
233
184
195
223
192
223
232
203
156
253
124
164
232
220
118
171
211
221
211
202
217
226
135
200
197
191
236
88
208
192
188
125
227
159
205
238
193
183
140
216
176
215
168
147
197
185
177
256
207
191
239
187
171
208
229
180
200
221
201
201
143
158
180
205
205
151
197
192
190
189
291
142
152
271
265
144
181
239
210
143
181
266
283
200
248
285
216
230
225
222
224
186
176
204
248
185
203
197
250
220
168
233
205
160
186
189
172
152
206
237
246
243
217
200
166
166
160
198
194
224
195
137
173
219
252
190
191
169
165
195
255
167
173
272
125
206
245
207
218
156
175
171
227
180
198
168
204
196
141
223
222
117
240
228
245
189
200
221
182
269
108
220
190
175
198
205
139
204
201
257
171
175
186
272
206
243
201
96
216
205
174
232
255
144
226
233
230
219
220
179
196
183
176
202
221
139
208
205
216
154
168
206
180
179
202
221
197
205
187
151
131
209
203
195
214
216
222
181
172
257
147
227
155
190
206
198
180
215
249
151
240
188
250
202
259
232
182
133
243
172
193
243
177
114
188
170
222
187
186
239
145
164
216
210
116
196
211
98
226
118
215
229
224
164
237
186
178
209
207
206
236
202
228
231
237
224
159
213
222
198
213
182
235
195
263
235
197
184
222
173
219
229
213
203
219
198
230
174
185
227
158
161
215
191
202
221
150
217
161
242
217
180
184
222
218
158
201
234
207
228
166
237
219
175
255
218
211
181
172
144
187
219
197
247
162
210
188
214
204
265
167
157
235
246
185
251
157
198
209
169
294
167
121
236
179
212
185
208
185
234
217
159
237
216
244
166
243
210
225
183
209
186
210
176
223
251
107
206
188
252
233
161
186
212
186
184
171
199
169
158
158
157
250
258
160
215
160
215
226
210
195
181
174
161
209
228
231
233
145
169
250
155
181
222
233
192
158
181
200
222
165
257
139
157
228
190
169
241
206
207
251
229
144
184
208
168
210
148
230
179
206
176
205
191
169
169
218
190
251
244
233
197
172
175
229
213
219
182
201
201
173
254
171
208
157
261
191
208
193
233
219
181
211
179
176
191
201
211
151
227
155
196
255
172
192
212
253
164
234
241
195
212
209
233
200
232
222
230
182
258
206
176
238
238
232
131
185
207
240
270
195
200
178
220
202
150
257
110
235
172
184
166
192
237
186
264
267
219
161
260
151
207
187
254
155
164
269
163
244
254
243
193
172
230
175
214
229
250
207
237
191
229
224
195
234
227
173
204
209
178
219
245
189
176
258
172
189
187
216
167
241
208
226
173
120
230
225
190
241
223
203
133
158
277
200
234
145
215
100
209
210
178
172
234
195
187
194
233
233
158
205
213
285
189
209
225
204
210
173
200
157
200
194
157
238
160
175
167
268
160
166
187
224
248
183
161
174
202
238
189
182
201
123
232
123
274
183
168
223
216
238
198
197
123
203
166
208
193
196
181
241
102
201
203
216
178
215
218
226
191
196
222
215
191
166
159
224
106
206
204
200
235
189
189
135
270
116
225
217
244
205
180
222
232
217
172
246
219
212
234
185
225
174
161
227
199
212
212
156
238
138
209
167
194
205
267
123
234
163
222
163
193
228
239
185
223
196
241
153
211
243
216
221
175
224
227
252
248
165
210
227
194
230
201
208
216
214
172
232
147
189
234
132
212
228
189
154
208
232
244
190
175
184
176
263
252
162
211
156
210
220
216
192
188
217
182
220
154
234
165
163
217
192
228
210
171
202
288
189
214
235
212
258
174
188
231
215
212
110
198
180
235
202
205
212
153
223
207
221
169
223
183
230
185
246
226
198
207
246
181
202
222
202
185
184
264
185
208
145
205
185
276
231
202
193
181
246
220
217
219
260
220
164
210
190
152
247
228
151
193
225
245
241
227
206
208
187
187
231
193
180
202
194
181
197
242
193
215
152
146
214
218
223
179
247
136
127
159
155
182
181
277
228
232
200
225
203
188
216
193
224
108
203
237
188
219
225
234
181
283
216
196
164
215
197
226
170
245
215
210
177
132
185
203
161
169
183
207
231
236
209
218
155
205
190
222
240
139
226
251
262
149
158
157
276
181
240
216
241
237
210
157
178
186
178
202
210
232
237
242
191
220
125
215
194
117
164
159
203
260
247
244
258
208
184
111
235
212
175
240
210
171
195
282
173
152
152
188
237
158
232
171
183
167
209
292
169
221
222
188
200
217
223
237
174
250
216
198
128
144
178
160
233
181
171
247
204
224
194
147
219
212
215
250
164
170
172
181
218
199
209
194
144
180
274
188
206
240
242
198
231
253
162
230
221
200
197
185
177
226
136
187
246
207
274
188
219
226
182
228
200
290
186
241
199
179
215
198
179
190
209
201
220
181
209
224
243
194
214
190
244
206
230
198
219
168
90
183
214
131
245
234
185
265
186
242
181
205
272
175
231
143
189
195
228
229
191
166
126
164
227
176
206
179
138
227
199
193
284
230
190
193
181
237
166
156
204
148
198
174
203
185
180
274
211
230
207
232
185
217
121
156
178
202
201
160
191
159
173
175
227
172
172
215
190
240
146
183
141
192
168
224
147
197
190
245
258
222
160
161
195
192
266
204
191
174
177
185
245
240
196
199
183
205
165
208
188
203
126
209
207
213
186
220
207
219
195
271
238
206
250
147
160
149
179
243
161
199
212
187
237
219
187
175
156
253
229
145
187
245
199
196
223
225
192
215
214
167
188
183
238
221
227
203
141
218
183
249
240
174
189
195
247
214
214
147
222
165
198
197
224
195
223
210
245
216
231
181
159
213
266
167
109
207
207
214
237
225
232
265
182
189
209
170
176
243
227
192
234
181
129
170
111
204
217
227
177
271
183
247
214
266
172
133
176
169
184
174
228
263
164
164
197
201
163
156
180
206
273
177
170
182
208
216
138
157
218
215
236
219
238
143
209
213
114
190
154
223
190
177
241
226
132
179
199
234
92
190
183
187
189
219
213
246
129
181
186
255
199
245
217
215
155
239
189
161
238
225
184
170
195
162
147
204
189
238
178
201
175
156
196
209
127
191
125
217
245
181
233
172
183
171
260
181
200
183
218
199
216
206
162
188
158
138
161
181
160
216
260
213
174
237
250
202
219
186
230
191
181
221
213
196
273
193
199
203
205
209
257
222
159
254
194
239
215
230
267
211
238
178
238
212
183
237
168
154
249
196
207
172
228
174
188
184
181
199
205
122
237
257
235
220
203
237
212
259
165
216
176
198
243
237
178
184
161
167
164
253
178
212
176
197
151
236
174
190
206
223
244
251
187
202
180
202
171
173
133
162
209
149
234
250
193
162
178
193
182
207
230
208
168
158
225
192
207
192
216
203
227
232
177
199
226
241
171
123
271
207
155
218
206
200
184
200
212
149
172
181
212
249
150
180
190
209
176
226
135
263
207
161
210
195
222
122
221
196
177
235
212
155
245
154
164
200
189
205
190
265
188
181
222
180
204
178
220
251
141
243
202
187
223
161
190
198
219
238
198
134
170
178
255
231
216
150
259
194
181
262
197
232
259
178
167
228
230
214
244
184
184
255
179
232
122
277
213
220
200
224
155
201
173
188
197
265
134
122
228
217
213
151
191
142
152
206
158
194
173
160
161
212
222
229
188
180
241
250
202
196
219
222
186
208
145
181
199
262
150
248
210
217
191
264
186
210
180
217
186
242
174
140
134
205
234
165
160
223
191
236
212
197
183
210
251
236
184
209
218
165
135
200
214
172
210
241
224
146
204
209
226
181
262
244
180
220
221
209
226
237
216
153
175
142
169
186
194
195
228
147
190
221
129
192
221
173
187
222
214
210
200
208
194
227
201
168
239
165
172
196
220
185
187
183
197
207
178
187
220
202
224
212
248
237
184
190
186
237
184
163
208
181
245
157
160
151
222
212
231
196
220
207
242
235
149
177
176
241
296
232
227
241
198
209
249
168
171
243
210
200
269
243
210
196
207
170
242
184
168
273
167
224
165
182
243
211
224
174
213
176
226
237
204
183
231
168
220
185
235
170
168
206
164
147
156
220
234
133
204
212
183
158
246
174
231
184
221
225
251
213
221
214
175
227
147
259
164
185
187
181
222
199
251
189
223
159
240
223
264
204
138
167
121
191
181
214
232
199
243
192
202
269
186
177
228
205
174
215
180
187
131
229
267
212
233
197
179
176
225
171
187
223
141
168
158
252
254
184
121
273
193
200
231
175
185
179
189
201
184
164
205
221
173
232
198
204
235
173
202
199
189
191
165
234
170
234
154
239
203
219
248
239
203
190
198
225
247
152
232
184
209
238
206
212
246
211
195
208
170
175
201
130
212
169
164
225
232
249
213
201
195
164
203
171
203
197
177
184
170
250
155
167
203
191
241
221
177
189
210
159
183
195
211
225
222
204
291
183
212
191
228
188
157
174
209
210
223
161
216
245
166
188
244
194
204
210
253
226
158
141
220
158
212
211
211
207
223
214
217
214
220
190
225
194
242
252
253
172
142
160
135
218
230
235
230
186
218
254
172
178
191
163
186
233
197
196
226
194
224
190
227
170
164
198
225
229
208
141
192
152
202
179
186
230
210
167
128
138
208
153
162
144
279
213
230
227
190
226
248
209
170
187
214
203
215
218
177
208
242
157
228
187
256
222
215
184
197
258
158
168
178
282
167
201
155
201
224
222
281
235
208
206
249
173
227
227
161
265
237
139
207
200
153
190
253
206
222
179
176
261
173
207
185
256
190
241
202
260
213
250
246
186
192
222
182
205
234
223
179
197
170
218
196
252
248
257
219
230
231
219
230
205
161
202
182
190
236
153
171
209
212
200
232
218
152
211
231
164
217
193
182
199
186
184
271
216
241
227
214
199
203
175
178
222
205
156
182
254
224
183
203
198
186
188
127
170
216
243
198
185
213
215
220
189
157
143
174
163
213
128
179
217
158
140
164
248
176
222
208
223
214
159
200
171
234
203
237
250
240
239
191
190
185
198
213
167
172
170
186
142
151
183
192
224
241
206
261
229
190
221
205
208
217
211
181
227
193
204
221
219
199
180
142
215
166
256
139
191
213
100
259
210
150
157
201
204
212
182
198
259
180
225
166
148
153
199
173
139
224
184
198
164
232
199
218
222
203
233
215
125
235
193
211
240
188
240
256
221
161
178
212
215
183
188
195
199
199
253
195
233
164
155
220
261
208
215
245
162
268
190
173
223
178
204
205
201
186
247
141
183
227
194
200
135
229
227
197
227
188
210
208
239
259
211
260
170
192
177
162
148
227
194
184
219
192
232
162
212
249
158
214
170
191
255
188
167
196
215
159
207
282
149
152
258
179
222
205
259
212
208
270
171
199
233
187
199
177
195
193
218
200
202
135
238
158
243
180
150
211
177
203
190
213
214
137
193
212
232
217
198
204
135
218
203
234
234
175
217
181
157
162
238
231
232
270
198
178
256
228
207
186
144
179
184
228
185
181
179
229
208
222
150
178
219
217
185
185
163
192
147
228
189
171
185
166
187
206
168
180
210
265
213
222
188
178
224
207
205
225
196
145
211
245
245
236
213
240
229
285
249
218
211
194
190
208
224
200
129
244
173
189
214
178
185
197
191
171
182
209
217
242
174
181
216
207
190
226
191
185
231
212
203
134
204
169
165
169
288
192
207
162
240
207
227
219
160
239
102
177
190
171
161
247
231
153
207
201
199
157
172
192
256
176
174
215
148
215
231
172
171
163
187
217
184
135
130
182
182
207
216
211
213
199
222
235
172
158
226
213
166
201
193
182
168
192
229
205
219
176
217
165
111
226
255
182
258
197
203
193
260
225
210
244
214
207
201
217
172
213
186
208
193
224
206
206
182
236
162
171
234
152
247
197
188
206
271
156
158
204
132
168
231
239
190
214
172
248
166
140
147
226
191
181
130
202
200
217
201
145
179
237
199
174
225
245
167
158
174
203
170
239
160
193
231
230
187
145
126
207
244
179
248
231
213
169
256
189
230
191
216
200
256
208
226
182
185
212
169
196
203
214
242
194
155
227
237
221
227
159
208
224
188
197
219
204
185
241
237
156
233
230
150
204
199
197
236
178
200
221
232
233
251
144
174
211
145
194
210
254
138
172
171
163
223
191
219
182
226
249
168
161
167
220
182
170
181
178
181
120
147
172
237
179
154
211
134
164
215
271
208
188
263
161
178
189
193
188
157
250
195
207
224
277
181
203
168
201
260
215
243
188
196
224
151
206
217
173
234
219
150
194
191
152
202
222
201
221
218
175
167
208
207
199
162
105
204
191
219
206
199
251
227
248
189
148
183
240
116
136
237
172
213
263
192
155
257
130
159
183
214
203
256
208
240
195
167
192
233
149
236
182
172
186
212
181
210
208
193
164
234
254
238
251
222
177
216
196
247
188
250
203
172
205
254
227
246
171
138
228
235
189
149
219
211
185
278
181
159
179
226
195
194
227
151
154
199
184
226
186
123
175
183
238
129
183
176
230
171
217
203
155
210
170
284
244
150
214
142
211
241
193
199
204
234
256
210
238
128
195
222
166
246
158
226
188
203
197
192
237
171
184
206
167
228
225
198
190
141
153
226
186
195
223
201
243
201
185
263
211
265
199
175
259
248
176
227
211
175
244
259
222
229
214
184
217
178
219
180
198
207
168
216
175
214
201
166
191
292
207
206
167
237
147
207
194
227
178
189
179
187
257
207
238
157
210
250
168
212
202
246
173
221
180
171
177
212
181
157
186
191
147
180
174
259
126
191
217
221
163
201
186
180
166
207
223
226
209
213
181
191
131
199
232
216
211
203
200
204
191
211
204
215
183
176
181
203
200
204
181
231
247
124
219
131
237
230
214
181
203
193
252
201
254
207
145
218
178
169
259
212
252
201
228
193
169
209
234
241
218
203
165
203
202
221
213
242
182
218
180
168
232
225
171
199
241
211
228
279
182
189
254
255
223
169
222
222
190
223
205
260
240
191
234
181
141
158
173
169
221
176
298
172
243
189
194
143
227
216
233
228
124
214
248
154
152
206
262
195
175
211
192
211
199
260
214
187
197
242
180
156
219
199
212
178
164
240
126
172
137
103
269
131
304
216
192
207
156
174
177
263
200
234
226
166
247
226
139
213
179
171
210
172
210
211
280
170
119
217
169
195
244
162
214
220
171
182
210
219
199
238
220
191
162
173
234
142
180
208
220
208
237
236
186
187
218
200
226
262
154
201
185
233
218
176
211
198
200
277
202
215
227
211
214
221
221
224
246
210
179
214
254
217
181
150
124
226
255
131
268
259
174
180
189
214
182
198
165
176
161
123
171
163
248
207
214
263
164
241
252
169
245
196
208
120
161
195
185
120
128
141
245
206
183
165
181
218
258
213
217
175
165
274
274
182
117
227
154
203
238
193
182
185
231
233
205
221
194
202
151
266
231
196
214
210
122
163
201
235
228
184
225
212
270
217
170
136
193
193
216
209
173
190
223
182
224
172
207
185
248
183
178
224
269
274
152
153
205
156
191
115
219
235
216
172
218
207
219
261
133
171
178
187
192
235
191
218
254
234
244
197
216
191
253
222
210
176
209
215
175
178
190
147
224
210
161
178
224
175
258
218
193
244
223
225
188
196
187
249
206
203
250
229
196
180
161
242
168
231
221
232
237
212
212
217
232
172
235
200
217
150
155
137
179
208
222
192
200
167
162
244
205
192
222
163
195
195
210
191
195
186
168
122
233
241
203
137
224
200
164
167
224
197
131
189
147
230
227
139
162
198
216
156
177
198
135
215
200
193
221
221
220
210
135
250
226
194
206
223
185
199
187
234
202
245
205
203
173
203
134
173
180
212
209
213
155
291
224
246
185
166
174
152
179
219
221
224
171
209
194
181
216
196
218
171
184
213
236
181
146
213
261
173
155
192
171
234
156
192
251
190
228
228
149
172
207
181
229
188
225
209
188
165
191
216
166
146
181
148
255
186
195
243
214
190
226
189
213
226
248
290
227
190
203
161
208
212
278
155
187
245
157
187
154
193
206
185
242
186
210
182
223
162
178
253
160
208
235
205
163
187
199
135
195
212
209
183
175
222
208
194
207
222
158
253
178
205
226
200
167
273
168
219
219
226
206
207
183
218
217
181
154
160
263
178
228
147
263
174
202
184
152
202
203
224
250
237
195
229
201
165
282
195
134
186
217
240
163
201
202
249
138
192
137
215
258
172
216
194
142
191
152
208
246
188
241
208
198
186
199
164
191
236
216
175
224
220
192
179
146
260
253
225
174
183
180
214
167
240
160
236
147
187
172
232
224
231
168
203
225
173
179
177
198
245
265
165
187
186
168
145
185
229
176
222
144
202
186
157
239
184
249
228
243
173
222
171
213
185
231
265
211
192
237
210
164
192
185
232
185
247
185
180
165
181
199
187
243
208
225
227
211
207
163
184
238
154
200
224
218
139
132
264
200
249
246
145
114
195
225
237
151
164
282
205
238
214
198
219
227
202
213
117
203
218
177
227
201
195
210
225
274
183
154
152
183
175
180
169
237
166
209
241
264
160
211
200
199
198
198
269
216
139
187
225
227
161
124
182
233
223
262
230
127
206
206
220
220
241
208
118
170
209
180
186
201
229
213
196
181
168
262
147
218
207
261
222
202
237
210
206
182
195
164
210
178
226
224
156
231
209
215
220
191
220
153
216
253
171
209
205
189
233
185
193
154
197
264
220
248
196
157
229
116
189
162
229
148
182
178
247
130
249
195
234
186
182
237
196
152
188
210
198
220
169
213
178
191
207
221
197
223
208
184
202
181
188
196
275
239
178
168
242
156
238
173
215
210
216
219
249
277
176
166
261
247
195
202
241
210
208
208
214
187
229
160
185
191
201
193
199
181
180
168
143
228
149
195
169
182
165
164
243
207
250
208
180
249
248
177
201
218
220
178
222
139
237
239
151
203
201
243
141
182
162
151
193
167
207
189
150
213
212
173
222
205
228
168
233
201
241
182
180
211
197
219
177
198
178
172
235
248
224
262
205
142
188
193
198
165
255
255
231
220
130
195
251
263
194
189
151
208
133
231
223
189
199
244
211
157
179
218
225
219
236
180
124
227
203
217
167
184
219
173
183
165
191
168
139
221
168
168
151
214
201
187
205
194
217
247
211
159
156
227
233
206
213
223
212
182
207
194
184
189
185
209
232
233
258
225
208
211
218
194
179
211
131
224
204
136
186
203
193
228
157
196
265
182
151
167
192
197
128
146
211
210
190
155
225
218
273
171
204
200
184
261
277
210
151
210
243
158
207
189
125
202
160
156
231
162
197
256
193
187
113
191
252
152
148
263
200
205
246
136
229
250
166
226
185
253
183
192
264
212
251
191
214
167
126
189
228
220
218
215
215
267
163
193
197
217
221
157
156
140
226
184
183
229
242
241
257
214
194
230
193
214
212
233
221
219
217
204
168
177
232
205
159
188
164
172
193
208
159
215
194
250
180
190
148
209
206
238
200
153
180
175
231
180
202
172
247
219
147
178
158
201
239
159
184
210
241
195
178
125
187
205
196
224
120
180
177
216
170
218
234
164
224
213
191
180
193
191
236
181
178
208
210
210
246
204
245
196
233
163
181
244
175
235
169
169
184
203
205
233
218
178
188
198
170
226
180
139
255
206
182
246
192
249
261
198
159
200
202
201
204
248
203
237
251
160
161
171
191
196
260
186
208
225
173
224
171
221
211
202
152
207
163
233
147
137
222
219
189
195
181
201
183
199
192
202
213
245
170
218
218
184
162
171
185
187
225
219
145
276
269
182
192
176
202
186
182
238
236
208
226
213
220
186
190
185
195
136
207
220
238
222
169
210
192
234
132
227
161
224
260
277
187
209
198
173
183
219
169
239
198
204
245
145
206
216
251
171
264
230
170
229
167
265
194
214
214
191
200
176
179
200
206
157
241
139
222
243
103
240
231
169
197
176
264
231
197
170
208
212
174
179
177
229
180
145
123
218
283
178
233
253
159
196
201
233
173
229
276
176
187
230
193
178
156
208
217
186
216
200
211
245
223
280
185
185
120
235
219
244
199
157
181
274
204
190
186
225
186
216
201
220
216
209
150
233
152
221
214
173
239
140
206
209
266
236
238
243
141
155
205
172
123
239
198
233
177
229
198
232
226
134
206
225
213
216
213
160
161
199
217
211
242
169
177
166
244
162
185
218
156
172
258
216
188
272
193
209
156
223
167
195
254
246
200
208
165
181
250
140
187
257
237
201
153
199
237
197
201
223
231
216
197
196
200
168
200
225
270
204
185
267
197
197
192
171
194
164
230
143
236
161
170
143
225
156
167
205
222
123
187
223
210
164
164
188
174
236
172
114
161
193
179
221
189
119
209
172
235
226
262
224
156
209
235
172
207
198
140
206
237
221
161
247
167
223
195
134
225
221
190
204
142
221
190
219
173
249
175
160
234
209
200
175
171
163
164
254
173
170
270
158
174
201
190
187
254
216
225
229
191
108
203
228
199
206
185
128
145
246
207
177
248
175
155
173
233
191
251
170
216
190
187
211
247
273
220
256
175
242
125
176
217
181
252
147
178
177
240
206
221
174
193
209
192
255
185
155
146
230
189
232
212
198
219
235
270
219
250
256
203
218
196
220
182
183
218
234
237
106
129
259
166
142
206
212
219
248
199
221
169
217
203
234
153
177
198
159
135
198
211
197
168
207
183
176
202
174
153
228
185
138
165
199
171
156
184
259
161
173
155
262
163
207
228
215
205
225
168
240
210
210
223
243
192
263
234
202
220
205
151
217
225
214
137
233
182
210
220
203
240
202
220
200
267
229
214
168
226
185
136
232
267
158
201
237
191
176
235
201
128
252
204
204
190
211
171
177
150
152
200
192
202
170
221
169
218
204
180
210
254
232
194
206
212
159
144
94
196
213
183
246
201
208
201
152
264
219
190
193
240
140
205
191
135
248
173
213
218
184
148
190
164
180
235
208
241
192
181
113
245
171
250
181
264
173
229
260
210
164
214
188
162
235
182
227
145
174
163
237
159
198
195
196
265
237
212
243
228
248
268
174
223
220
185
193
238
192
271
159
219
242
252
181
157
181
192
220
154
201
132
232
204
196
182
219
176
175
191
237
214
180
249
188
180
232
155
219
214
171
208
203
199
188
241
225
255
166
169
158
149
234
135
249
270
252
214
162
234
225
126
271
154
190
239
169
176
219
218
248
210
201
171
195
178
173
203
194
194
189
212
129
206
109
187
240
249
193
225
215
217
247
282
136
215
154
156
221
241
144
151
186
176
160
266
251
194
199
210
248
183
167
253
201
212
164
165
183
210
200
210
153
140
204
129
191
191
158
105
136
216
187
183
272
256
258
204
179
146
211
219
201
210
207
226
203
178
174
193
132
237
241
213
199
213
225
250
209
260
153
180
183
161
226
129
234
246
163
244
213
170
186
205
219
161
178
170
159
243
196
229
247
261
199
222
224
199
184
193
188
165
187
217
135
222
269
184
252
205
196
196
208
209
225
217
261
156
119
173
175
218
189
193
204
264
235
194
192
193
203
195
232
218
217
164
270
185
193
190
185
201
271
198
255
247
205
204
244
227
202
181
142
220
231
179
194
155
215
258
146
154
233
220
131
199
178
272
243
217
196
127
241
154
127
221
253
209
153
226
183
244
198
170
194
219
198
216
193
147
124
221
277
203
239
166
189
231
224
188
213
164
194
201
204
217
225
225
212
106
252
188
173
209
138
207
199
195
214
236
212
225
175
103
230
220
243
200
172
157
240
184
194
180
197
170
205
244
200
190
179
219
209
243
200
240
218
210
220
191
161
191
131
214
190
211
228
161
170
186
196
159
201
199
208
178
195
214
209
171
181
231
207
231
168
272
198
191
167
152
186
262
160
170
262
247
198
142
142
138
198
182
228
189
214
174
227
270
255
168
143
195
174
279
172
241
201
213
228
233
248
241
220
215
142
258
254
184
186
234
227
139
195
190
235
233
262
196
199
194
227
187
163
201
177
141
187
246
191
284
180
195
221
216
181
229
183
199
233
251
232
248
224
228
235
201
194
244
139
218
147
192
219
152
260
164
211
209
140
231
172
179
233
199
254
133
216
179
198
187
236
269
280
189
225
182
224
215
156
214
240
124
173
248
212
164
224
131
232
138
218
217
270
219
263
189
129
201
232
239
215
219
213
203
211
234
186
237
187
224
197
197
196
200
196
193
215
148
193
183
234
168
228
217
203
178
154
223
220
196
240
147
255
190
275
122
234
249
191
220
174
245
147
230
158
184
233
206
186
223
225
250
195
213
171
192
226
217
219
162
214
253
191
196
206
196
165
200
221
167
209
275
262
160
245
178
178
171
215
201
168
236
197
261
263
174
267
175
242
161
176
198
168
226
221
177
204
260
242
144
204
223
193
186
117
166
173
228
221
250
185
263
254
222
218
239
219
258
187
200
178
165
204
192
152
185
165
204
203
272
202
214
246
250
180
211
213
227
207
193
228
244
209
186
162
234
184
216
172
167
168
209
215
206
189
198
141
187
168
190
191
241
192
170
213
238
163
209
219
201
201
142
236
193
199
190
230
242
264
267
217
242
221
201
194
158
226
231
219
211
264
231
198
191
207
180
153
202
206
221
218
184
239
173
171
190
196
106
214
173
177
217
223
245
241
229
149
282
156
218
159
164
189
187
228
253
219
194
210
194
197
231
216
184
143
175
254
176
162
219
243
191
182
175
193
160
288
242
193
201
204
244
245
200
273
205
131
186
205
263
130
140
166
214
251
172
189
153
166
204
187
148
252
149
246
171
169
192
210
210
150
267
178
255
228
171
251
245
237
228
141
190
232
216
227
113
203
172
212
227
210
222
209
201
197
275
154
152
176
235
163
234
220
232
169
197
180
176
206
162
207
197
193
257
210
200
257
199
194
199
87
191
238
192
243
227
159
175
198
271
210
201
162
215
173
182
232
246
190
214
197
209
208
217
202
216
221
203
215
216
214
184
200
238
251
226
223
192
171
115
205
159
173
277
187
211
182
193
122
180
205
147
187
171
190
208
196
202
193
256
174
219
200
234
187
229
153
217
215
249
162
191
280
213
143
165
95
226
224
277
217
242
244
225
216
224
263
129
222
248
260
246
199
227
197
154
211
154
228
216
152
200
173
233
148
193
97
219
183
202
222
144
185
207
287
167
148
129
166
234
230
182
180
178
181
157
250
140
201
121
193
214
192
127
257
165
227
262
238
182
103
195
224
241
231
203
179
188
128
200
233
170
237
206
235
206
207
216
141
181
226
186
225
184
176
205
242
241
226
192
116
191
125
211
199
194
169
203
217
186
136
173
190
200
149
160
243
252
214
212
218
222
184
208
177
211
180
177
137
210
123
193
218
238
251
176
180
169
202
164
269
232
200
192
224
147
211
203
164
145
184
203
197
195
183
193
225
225
182
202
194
243
202
159
191
202
253
125
210
273
234
239
222
219
157
185
167
194
250
216
155
258
242
154
240
197
183
156
230
260
243
194
152
231
236
200
184
204
260
214
186
213
183
174
187
173
207
175
204
199
165
235
210
158
185
204
200
185
209
291
195
210
200
195
247
254
142
250
261
202
179
225
213
192
145
226
220
203
230
245
204
219
215
166
231
122
244
218
215
218
187
233
152
222
119
128
174
253
137
183
192
234
197
181
216
230
202
218
155
135
150
237
186
226
183
175
243
186
144
185
187
216
197
223
207
189
186
235
287
187
229
135
120
252
197
185
151
179
206
121
220
225
191
219
240
206
221
203
222
166
197
161
177
188
191
203
118
253
216
202
207
220
155
220
208
159
246
173
253
198
239
168
186
191
206
236
186
225
230
174
176
215
236
152
224
151
253
166
220
198
177
194
150
210
205
234
214
205
186
206
142
192
158
263
196
165
154
180
153
227
191
196
194
156
214
194
223
203
140
168
226
212
263
215
199
214
201
186
186
230
196
248
161
227
145
175
185
194
193
232
237
171
158
174
210
231
178
162
174
153
198
266
168
186
150
197
159
188
222
178
172
180
194
238
165
171
214
246
207
218
230
237
241
209
226
211
176
218
193
228
187
156
209
214
211
208
201
250
253
279
170
246
172
223
195
188
177
212
216
212
175
221
199
209
244
168
202
189
265
166
227
225
276
203
245
262
256
223
214
233
175
198
182
168
192
176
196
218
246
213
206
165
244
186
185
173
193
218
126
163
254
271
192
221
208
222
130
203
204
190
174
169
219
246
149
178
181
209
225
184
161
210
193
235
191
181
152
191
249
226
154
187
181
237
151
253
129
211
231
178
188
137
176
207
157
133
203
204
208
252
236
210
170
154
176
251
223
231
254
274
191
168
179
158
200
219
186
130
116
192
224
180
207
211
155
189
183
195
196
111
170
232
244
155
221
147
159
155
206
214
224
176
222
245
207
176
242
180
219
222
179
238
220
250
162
188
229
202
251
204
210
117
249
140
198
158
251
219
282
149
173
261
198
219
223
222
175
228
191
185
225
210
165
136
204
248
217
203
245
210
221
212
168
187
170
134
199
199
198
234
190
176
219
158
255
191
228
157
243
200
290
205
194
184
159
155
259
214
213
173
183
202
175
207
205
154
195
190
197
227
157
126
183
200
194
196
205
177
204
187
239
184
213
155
158
185
274
196
195
166
234
183
202
188
162
190
184
230
198
216
193
227
176
174
177
166
221
188
127
217
205
185
145
241
199
202
230
204
249
177
213
147
185
139
183
117
141
172
230
195
238
220
114
265
159
215
204
214
167
169
122
215
161
228
183
142
225
255
260
194
215
229
168
192
164
214
175
208
244
192
184
194
207
175
164
210
253
215
226
211
172
229
220
182
135
201
216
166
177
192
205
183
233
206
149
229
178
135
191
191
214
211
141
262
126
218
165
173
247
172
210
226
169
126
170
232
195
178
220
143
275
166
234
187
155
173
167
194
205
130
177
152
181
151
199
211
125
194
199
194
210
238
123
166
199
201
190
215
280
293
154
209
219
204
153
149
215
251
195
184
211
175
269
212
193
177
160
214
170
140
177
238
233
170
193
204
156
134
211
255
187
119
187
228
228
249
225
79
257
180
120
202
249
161
134
243
251
203
231
174
223
179
185
222
245
232
278
186
211
201
199
195
210
200
198
183
243
211
214
254
206
157
186
176
228
164
172
180
149
175
184
180
174
264
262
233
201
197
266
213
213
265
240
251
214
252
158
181
166
157
230
207
94
235
173
246
261
207
238
240
177
186
219
220
209
198
212
185
249
197
201
253
207
243
216
187
184
156
155
204
192
237
197
165
184
240
175
247
207
261
203
157
240
167
211
235
177
164
191
220
249
181
132
206
170
204
251
170
170
197
187
237
161
186
148
233
120
116
244
251
162
225
231
232
203
244
183
214
183
244
245
201
185
169
191
156
212
257
191
229
173
199
194
186
194
202
202
224
200
182
206
231
196
244
179
171
155
146
235
182
234
200
174
181
182
251
197
198
121
158
214
209
182
120
160
252
196
192
200
180
289
203
204
169
201
144
206
214
215
201
195
176
189
140
245
153
158
130
227
165
200
198
210
221
208
234
195
203
255
214
207
209
175
183
175
144
193
240
146
225
218
254
226
218
186
190
209
184
252
172
226
230
150
169
176
215
258
226
179
209
197
158
179
255
228
206
160
227
231
189
215
160
244
198
212
190
174
223
190
140
214
202
136
222
148
186
193
190
201
184
159
196
218
249
207
236
216
196
247
200
204
249
215
264
188
171
162
210
208
239
216
147
191
255
238
212
180
247
150
239
150
203
172
197
171
203
226
207
181
203
192
149
135
263
208
228
225
157
217
172
186
186
175
212
217
147
248
231
200
165
197
240
222
240
115
215
245
184
256
193
172
231
238
165
196
205
193
245
249
213
233
167
158
181
166
207
248
199
174
121
171
238
181
174
188
273
210
232
198
203
106
200
197
178
204
223
191
198
218
190
237
226
200
186
200
281
190
198
223
131
213
242
191
217
185
224
139
261
211
214
208
203
236
194
205
160
223
195
264
200
98
290
211
144
227
191
202
173
233
233
153
271
232
181
229
166
223
203
256
231
191
136
205
137
196
202
228
174
212
184
167
232
179
187
173
117
227
186
152
185
210
265
145
201
185
209
191
204
227
160
184
202
219
236
201
176
167
188
194
196
223
154
210
233
190
154
249
208
196
201
226
256
207
236
143
223
210
174
172
227
178
229
206
212
191
237
185
213
62
211
215
221
224
168
193
184
201
259
174
180
168
108
223
259
212
210
170
133
183
188
222
203
223
193
222
166
170
190
200
235
172
251
224
178
210
206
200
235
263
199
174
233
164
197
209
186
207
157
191
206
238
228
190
243
227
177
178
231
200
202
172
250
174
183
189
193
178
200
179
237
206
209
187
219
229
227
234
208
207
207
184
202
203
217
221
228
225
214
207
118
175
211
201
186
146
173
170
205
203
148
187
249
166
140
248
215
157
166
237
245
210
194
186
226
206
226
230
207
220
213
145
218
167
159
164
159
176
179
232
213
108
143
230
234
139
194
221
186
196
209
219
179
197
157
184
270
132
177
188
162
210
233
172
220
169
208
242
160
178
237
189
203
213
231
163
213
177
182
170
222
198
203
218
247
192
218
160
163
194
154
207
194
193
146
186
230
210
197
192
187
194
218
187
149
164
239
185
168
183
121
185
158
186
211
207
188
224
205
281
203
201
220
187
185
237
180
221
195
262
220
149
240
239
217
150
207
188
245
200
165
197
189
218
211
250
169
212
175
227
184
176
212
191
213
219
199
166
223
206
282
224
212
122
260
191
182
222
147
197
189
232
187
185
183
204
175
139
208
125
212
249
177
196
194
166
238
221
224
149
196
186
174
201
117
147
193
185
204
124
177
208
171
247
165
245
223
199
232
230
170
210
155
261
192
193
249
228
189
218
233
226
161
193
221
195
179
205
240
215
156
201
211
239
196
178
154
215
200
172
129
177
226
198
249
170
203
178
161
137
218
229
234
230
211
213
128
180
221
195
197
178
181
230
181
159
152
177
224
210
203
135
185
90
215
215
249
204
219
194
221
208
140
223
199
192
127
203
192
133
178
180
231
204
180
208
191
239
183
181
205
166
219
201
155
207
186
210
196
179
155
147
209
204
222
209
197
193
172
170
179
194
202
249
212
212
227
183
212
269
218
259
211
172
228
213
182
228
241
243
265
146
241
170
211
172
156
212
218
215
194
192
179
208
193
186
255
242
220
162
206
113
225
176
254
202
161
222
177
197
179
235
202
213
192
189
201
200
187
201
205
180
193
198
257
214
227
230
177
233
212
253
149
177
204
212
152
164
254
224
181
196
236
236
186
235
156
220
224
215
232
226
190
180
190
231
196
192
209
271
155
213
269
220
223
208
211
218
158
186
210
197
234
203
131
203
246
202
171
199
202
207
171
199
203
245
184
207
129
153
183
208
202
137
194
196
227
231
212
268
211
211
137
239
213
198
191
181
247
156
167
223
257
177
167
160
185
246
221
183
261
209
225
160
243
216
261
225
200
153
254
253
205
179
198
183
222
203
258
158
192
237
213
253
206
224
293
170
238
244
235
215
226
192
256
198
255
175
248
207
193
209
147
184
120
150
210
219
161
236
191
224
228
215
195
154
156
157
239
225
180
156
180
234
222
205
180
228
221
193
188
186
210
206
239
214
221
217
216
195
306
184
199
214
164
211
223
177
233
187
183
170
216
208
199
180
167
222
195
164
208
232
214
180
163
164
230
228
223
218
233
200
228
192
192
183
184
271
191
121
239
240
207
155
180
207
177
219
148
232
224
165
217
86
163
254
132
233
188
193
131
194
163
190
176
184
243
181
201
256
267
207
266
182
148
164
173
232
192
179
190
222
197
227
138
184
250
168
201
201
218
238
180
238
235
200
218
183
249
197
141
145
195
188
191
207
189
257
134
172
170
116
139
159
178
222
244
227
190
192
184
145
263
156
199
185
141
119
255
177
170
269
210
180
245
252
217
216
207
182
211
173
223
256
188
245
219
229
237
200
153
203
163
170
219
211
248
169
165
172
188
211
228
218
231
256
205
170
180
210
215
192
125
225
176
179
257
232
171
173
135
140
180
175
266
243
199
122
197
210
241
214
149
242
194
204
228
146
239
166
262
215
220
212
226
160
231
183
218
208
157
173
150
201
185
196
243
138
220
195
183
238
219
228
172
194
266
130
220
198
184
265
254
251
271
181
254
235
191
260
219
219
204
187
200
232
174
183
230
157
220
203
207
186
212
265
261
225
245
216
149
238
201
214
222
255
184
175
214
156
183
188
197
206
197
201
236
177
168
230
156
174
218
186
183
197
157
188
220
176
184
233
133
227
202
275
210
256
214
231
241
231
163
203
219
204
140
167
221
181
188
211
197
232
179
213
166
182
222
238
175
215
239
133
165
265
157
256
210
220
206
255
226
264
226
135
225
245
198
181
161
258
202
228
220
237
159
220
137
131
180
202
220
263
251
265
208
158
198
184
190
180
186
157
200
168
166
168
242
214
187
227
236
176
254
145
225
188
153
186
204
243
197
209
213
245
177
220
240
230
195
229
237
217
230
135
190
209
181
146
180
223
214
187
235
188
176
282
227
249
222
168
189
205
209
211
254
197
218
162
233
216
215
224
189
200
227
172
221
172
153
171
191
196
234
217
174
269
209
178
145
244
199
237
202
151
228
146
224
207
194
205
176
182
167
196
165
216
210
236
165
207
139
192
143
190
189
236
171
195
206
174
234
191
223
163
231
244
211
151
171
187
169
212
140
171
218
227
232
220
224
221
180
203
203
214
158
209
212
287
204
164
181
215
212
230
232
205
198
181
166
169
224
184
245
233
188
184
198
159
224
192
235
154
197
239
216
172
160
132
250
194
187
154
243
199
214
178
201
164
186
200
221
204
204
193
133
163
215
248
194
160
195
225
255
212
222
233
227
225
210
230
135
245
145
207
214
177
197
259
182
190
165
185
244
243
205
202
193
251
181
180
200
204
245
170
225
255
208
162
191
149
267
243
163
134
184
244
220
258
204
204
186
239
223
179
221
135
198
226
169
156
204
165
257
189
169
199
170
201
235
179
171
240
189
213
187
172
165
157
146
187
205
194
252
167
229
152
199
223
204
194
212
149
167
283
181
199
219
222
160
171
209
187
166
241
178
182
212
185
216
209
200
162
157
199
191
178
279
128
133
181
191
160
181
264
220
181
247
158
188
198
194
171
192
246
205
143
196
187
157
226
206
199
237
205
200
228
233
226
200
189
248
180
279
201
251
198
216
216
197
218
174
233
242
163
203
169
246
180
199
235
189
230
267
263
162
200
228
197
145
236
155
187
217
254
186
151
153
184
172
223
223
166
223
204
198
184
146
189
213
206
191
246
244
217
162
196
176
207
143
191
194
171
206
161
170
229
213
145
250
248
143
238
230
181
188
194
243
138
193
181
233
243
195
222
245
201
226
171
233
148
201
229
140
181
167
196
184
216
259
167
188
138
221
203
165
200
168
255
206
248
212
205
244
240
182
184
145
229
173
223
177
250
192
226
187
165
223
202
160
208
203
235
213
234
193
140
182
170
225
245
179
221
110
189
242
159
168
164
204
257
186
246
197
211
151
268
201
183
213
183
151
269
245
231
214
213
177
157
176
195
218
258
207
198
163
208
219
226
208
137
270
136
150
192
212
165
196
248
187
191
167
175
186
172
200
216
241
233
250
208
265
270
181
193
239
180
193
198
235
216
203
191
271
157
150
175
237
195
244
271
215
184
194
191
191
188
204
228
172
217
224
238
164
216
184
139
189
222
201
136
209
172
197
237
165
177
184
223
153
181
167
260
228
234
178
235
182
249
190
205
204
210
233
195
148
211
171
139
175
216
208
165
186
188
229
252
160
185
176
152
227
180
244
250
257
154
213
230
196
191
178
213
150
177
256
254
163
171
174
242
179
181
192
199
186
168
198
217
170
166
205
182
165
205
162
210
154
220
200
200
257
174
176
199
222
183
256
176
203
186
249
153
244
238
240
173
199
187
161
155
166
197
201
194
166
158
264
225
177
221
211
221
166
196
210
181
248
223
241
106
127
256
175
198
261
226
187
172
164
211
210
174
147
185
150
217
247
224
185
255
219
226
133
273
174
196
166
167
210
124
194
160
201
163
182
194
262
177
163
179
254
159
178
207
201
148
229
202
177
153
229
172
188
196
249
158
160
234
190
195
225
176
177
139
192
226
168
217
170
178
248
160
175
101
212
210
182
215
202
195
228
102
129
184
125
162
179
188
233
156
226
177
191
174
213
181
188
251
243
228
295
202
140
222
182
177
216
226
128
198
251
220
199
208
199
198
172
216
207
205
239
188
206
222
195
208
246
158
179
152
204
231
176
241
190
236
214
176
218
209
148
169
171
223
163
159
172
214
235
192
178
241
178
150
153
180
199
235
158
227
201
214
257
156
136
256
155
171
183
274
138
235
194
192
185
167
162
185
140
259
194
176
256
186
244
251
146
212
200
234
170
235
158
147
282
194
234
159
216
207
208
197
222
232
256
152
231
199
230
268
210
178
259
173
245
197
171
230
210
218
211
132
248
249
242
197
253
267
212
242
251
181
210
222
191
155
130
206
234
126
203
200
176
157
252
182
221
172
153
195
173
177
220
201
235
160
219
171
255
165
224
188
230
223
218
219
182
186
131
163
189
162
210
229
225
173
189
169
209
172
190
179
191
152
202
213
235
211
244
259
192
261
199
204
238
236
137
277
170
222
210
169
111
197
187
177
217
293
200
155
198
215
218
204
226
194
248
170
149
245
226
239
163
182
200
215
230
194
220
240
211
240
176
220
176
172
153
166
180
232
208
219
216
213
227
215
232
166
207
241
222
234
184
160
203
135
237
193
183
230
240
194
192
202
205
274
193
186
241
202
242
195
199
148
232
222
203
106
190
211
223
197
123
206
212
233
196
222
181
193
228
205
185
170
236
175
212
191
214
200
220
254
175
225
154
214
184
193
227
152
212
200
232
180
163
197
187
211
299
215
184
181
201
175
220
245
150
242
174
133
261
245
186
124
205
205
211
176
179
227
231
239
210
191
261
199
206
208
206
178
200
189
175
167
202
181
235
206
196
242
205
236
193
198
202
210
252
236
151
197
217
211
219
230
246
184
191
176
131
254
215
218
213
218
188
173
155
200
219
204
221
178
177
214
190
236
162
147
239
202
262
205
264
217
217
169
253
222
224
196
150
163
186
153
179
202
260
154
128
220
231
180
252
193
220
165
223
219
192
218
205
277
167
146
189
209
142
188
189
198
257
246
191
221
190
221
241
270
265
218
205
232
210
166
151
172
158
127
154
223
222
176
233
183
150
176
186
192
195
192
220
277
181
157
159
198
229
198
199
191
217
261
206
212
203
176
191
218
241
218
197
248
187
206
134
190
174
151
216
244
122
152
197
227
170
149
186
227
227
201
216
182
146
178
190
224
249
116
170
267
202
191
237
242
191
295
174
205
244
219
218
285
219
144
208
194
221
128
175
206
231
159
155
209
188
161
184
161
259
161
166
260
197
174
216
235
139
217
253
180
213
203
231
162
228
191
189
191
193
216
214
225
253
188
173
193
182
176
231
183
261
161
221
174
248
263
225
131
264
223
200
216
168
214
209
162
226
180
201
249
203
233
239
162
211
233
188
165
150
245
207
196
179
168
214
179
235
174
219
236
224
143
192
202
170
183
206
178
160
158
229
228
237
176
175
213
274
180
166
182
191
106
229
167
213
194
227
176
213
127
208
221
212
204
147
170
184
235
189
290
234
193
168
185
185
206
217
167
217
195
249
168
188
223
263
198
180
219
160
220
237
253
230
127
161
223
152
225
171
226
226
204
194
192
221
254
179
247
249
176
186
84
232
250
237
166
215
165
240
161
225
246
229
239
259
188
251
256
232
198
244
204
238
177
212
157
136
180
210
170
164
105
198
214
199
252
223
189
247
193
147
204
236
148
208
263
182
189
155
202
191
223
179
167
219
219
188
222
245
144
185
185
201
114
211
237
267
247
227
133
276
231
250
216
178
167
193
179
220
169
203
201
205
227
167
178
159
197
120
174
185
230
250
176
183
205
287
177
265
179
216
171
172
193
177
209
138
157
234
184
184
231
139
199
191
216
198
213
196
230
248
231
205
201
199
225
186
214
195
200
234
169
200
194
177
156
166
239
213
220
225
227
233
155
240
154
135
189
208
242
223
154
200
203
192
173
166
205
197
150
251
178
176
196
246
196
175
190
183
171
192
133
250
192
192
215
241
237
198
187
174
186
194
198
205
239
188
219
293
187
242
215
129
267
108
121
194
280
186
153
207
201
191
207
189
145
175
164
205
177
181
167
256
201
153
247
205
211
116
222
274
159
148
207
230
236
252
215
223
176
188
202
163
107
230
268
217
198
228
182
154
201
188
194
174
205
237
176
200
193
209
165
230
216
205
198
236
235
226
188
284
256
274
148
183
189
184
195
167
232
160
192
182
242
249
210
187
141
171
226
258
214
120
161
211
198
199
184
156
194
146
196
158
190
193
229
265
256
227
197
181
240
178
196
224
216
185
198
217
206
163
191
248
205
142
184
222
162
151
176
162
165
204
173
225
207
192
202
192
167
149
199
204
169
219
184
159
192
114
239
182
161
224
197
175
218
231
193
195
171
180
263
220
144
143
260
268
156
221
184
211
242
220
218
214
228
152
134
217
241
229
159
200
143
214
210
240
212
175
178
238
211
231
251
256
239
240
225
218
196
224
219
199
172
231
230
222
202
158
172
216
219
234
260
196
189
170
154
255
144
237
216
191
159
247
223
240
219
197
196
208
244
219
155
192
164
213
165
176
205
223
199
242
183
210
221
193
198
211
265
153
247
186
215
207
264
229
165
172
142
255
156
203
207
190
181
118
195
134
217
214
145
250
230
135
187
189
185
226
204
149
176
197
155
247
243
218
262
167
231
204
149
207
226
237
251
233
184
220
197
201
198
198
240
199
180
156
229
160
225
206
222
220
213
188
189
132
192
260
203
276
163
184
198
208
222
198
182
172
174
213
207
198
217
271
203
206
164
233
184
215
208
173
194
194
242
212
256
167
166
250
211
195
189
159
181
226
254
231
221
226
179
271
129
161
138
154
195
231
177
193
191
215
176
138
209
190
169
141
180
287
192
260
116
217
85
195
171
228
183
134
165
149
234
200
142
192
213
187
219
112
205
239
203
186
250
250
195
266
231
184
187
175
233
95
217
159
253
168
211
194
206
232
245
248
196
175
197
206
242
171
240
237
140
177
237
215
227
190
213
188
255
226
211
179
213
179
267
170
274
176
159
190
150
252
162
162
230
212
196
155
214
224
189
228
181
144
238
186
210
210
215
231
159
176
188
222
178
161
224
171
276
204
163
232
250
182
226
196
187
184
203
196
193
134
174
227
187
240
207
195
304
196
190
248
167
161
206
200
245
240
226
178
214
188
209
211
235
176
150
213
204
273
254
185
172
236
241
281
153
118
226
245
206
174
186
245
218
219
205
199
207
218
185
246
217
249
184
160
204
215
165
251
226
233
202
173
166
212
182
266
199
190
148
213
226
158
174
136
212
220
220
153
244
195
247
210
187
186
200
216
182
201
180
221
223
186
230
272
171
242
176
177
213
205
160
168
221
205
265
188
141
221
219
157
202
178
212
221
169
181
189
194
187
165
178
186
224
148
210
243
212
203
168
193
214
183
186
174
162
153
219
181
163
194
213
163
217
237
191
183
185
165
187
157
240
201
201
232
165
201
216
132
130
179
212
183
201
212
192
212
236
174
245
217
176
159
154
168
242
179
203
220
247
242
208
209
192
224
218
213
187
201
150
218
196
112
201
241
249
246
247
202
181
219
121
179
250
229
183
238
168
229
206
209
147
271
227
225
205
242
220
171
192
186
227
221
120
164
177
186
226
230
225
213
212
243
155
258
199
198
209
200
197
160
166
115
162
206
222
241
223
188
266
204
199
151
148
229
180
220
199
195
187
258
149
185
175
183
182
204
153
127
233
247
251
205
185
260
195
127
211
182
244
166
211
219
212
169
211
204
112
282
208
151
224
262
185
220
212
121
228
154
207
257
139
183
183
175
241
260
175
244
178
210
196
167
158
229
184
226
232
129
186
116
206
215
224
209
215
236
187
194
192
220
186
214
217
207
232
198
143
228
166
171
218
236
186
120
253
245
250
227
199
239
176
244
214
217
180
176
202
208
171
224
210
167
254
203
191
148
195
211
211
150
232
238
217
244
190
248
234
219
164
210
189
160
170
239
195
106
200
156
212
216
206
239
223
205
170
174
247
117
168
222
188
181
270
224
202
226
179
148
209
256
147
215
242
195
179
242
200
151
179
88
198
210
164
185
232
179
143
269
227
246
194
175
227
194
230
168
107
187
141
250
163
214
218
175
176
151
202
204
162
193
217
187
186
181
239
124
171
196
184
182
213
241
194
216
229
182
165
183
195
169
209
194
181
205
209
265
257
192
153
186
210
208
209
192
201
229
199
207
224
158
152
232
255
209
230
196
195
185
194
233
191
222
110
170
170
174
250
189
241
222
196
181
152
176
206
227
237
207
104
191
153
186
236
233
150
191
192
224
186
115
184
228
118
177
212
147
222
200
260
175
231
170
203
219
143
186
206
232
165
215
185
193
215
173
227
199
228
196
182
174
238
208
241
205
228
201
182
196
235
166
271
220
260
208
161
197
170
196
206
202
229
193
140
200
162
204
187
254
169
127
150
215
250
199
157
160
213
204
229
180
222
210
234
176
243
218
238
238
138
193
184
179
185
238
179
245
228
197
230
231
202
228
240
182
230
160
212
146
149
208
256
181
200
187
185
205
147
170
217
195
208
164
150
224
91
168
180
204
196
175
127
178
200
216
132
164
273
183
194
197
231
175
176
117
202
223
153
238
168
178
201
227
173
163
203
160
194
213
243
157
173
229
216
186
173
144
250
186
180
127
177
180
159
244
256
130
194
216
188
199
257
149
237
205
216
219
225
228
197
222
236
222
254
188
167
221
190
141
214
224
245
223
218
197
210
227
194
194
202
172
151
204
194
171
162
212
192
250
229
204
197
215
231
224
189
222
232
166
206
210
203
219
129
161
178
192
248
208
262
181
203
186
217
195
158
216
200
139
160
201
196
189
205
158
194
237
253
246
226
168
179
191
206
218
274
132
226
185
162
151
164
271
162
227
160
135
199
162
184
231
175
185
225
205
141
174
210
234
167
219
271
225
165
241
143
222
224
276
153
262
98
207
159
176
226
274
202
178
148
287
190
228
213
192
183
219
231
176
243
197
218
161
167
205
201
219
202
221
212
169
218
222
230
130
207
208
214
227
272
178
144
182
220
215
195
232
207
246
178
167
222
181
175
112
196
154
163
205
138
207
177
165
218
218
167
249
221
200
207
179
163
212
251
179
189
170
181
260
159
221
239
249
205
169
173
224
187
148
146
121
227
205
155
191
130
216
282
263
247
244
230
248
241
150
199
188
269
179
214
186
165
162
204
213
221
210
217
180
196
232
224
184
213
153
199
163
191
176
259
181
153
209
241
235
258
219
201
206
211
211
210
241
154
219
237
176
259
213
189
179
252
150
185
187
214
192
207
230
173
233
198
247
258
157
222
181
180
242
208
196
231
188
198
202
215
206
250
145
182
241
230
201
200
246
147
206
190
196
148
225
215
214
182
203
200
248
261
190
178
226
213
143
155
243
189
140
243
225
218
178
181
264
204
272
200
156
249
114
244
244
245
206
237
199
185
177
239
254
210
254
222
173
234
187
156
213
248
163
215
226
193
172
215
213
230
151
188
247
172
206
237
172
206
164
243
104
232
188
191
165
163
177
173
192
227
196
199
204
212
233
221
215
180
104
151
232
200
228
189
195
207
153
187
194
181
153
244
210
175
171
259
186
209
166
214
183
215
141
221
249
308
199
187
177
197
216
224
209
189
196
196
216
222
198
230
221
207
234
194
92
174
184
178
142
157
175
227
240
223
268
182
170
219
176
182
179
195
196
183
223
232
166
216
265
196
264
189
243
163
213
193
175
165
184
198
229
190
190
179
178
141
210
262
251
212
170
229
241
223
160
224
188
208
214
209
204
160
164
205
147
212
205
206
275
168
143
254
191
252
199
204
218
204
184
196
167
206
178
261
227
172
177
236
211
187
250
163
196
217
182
174
207
223
201
194
195
171
210
157
196
228
170
163
178
185
175
196
187
210
254
168
251
167
202
167
242
169
136
243
166
201
239
242
150
214
217
144
192
164
169
201
219
248
229
171
232
220
154
180
218
212
195
223
192
228
238
262
218
225
182
191
174
225
224
213
249
243
173
187
172
163
129
216
165
209
171
268
178
214
161
220
226
197
227
203
197
236
142
153
229
145
194
220
290
233
172
235
194
185
192
200
212
196
247
220
153
253
191
257
194
214
196
167
268
216
208
187
189
213
183
185
238
247
197
202
256
219
202
168
245
192
175
176
229
181
210
168
191
163
211
187
175
228
260
194
204
152
183
217
152
184
177
180
260
185
192
214
255
232
164
171
232
176
182
194
195
134
251
244
198
184
206
248
223
139
192
180
173
196
140
182
220
181
229
243
198
247
230
207
184
214
199
205
189
188
230
231
165
184
223
155
180
229
210
182
205
191
267
213
182
236
209
124
159
218
138
176
203
198
249
230
256
156
202
237
165
261
161
243
195
181
146
212
211
181
217
199
191
182
211
167
184
179
223
170
162
204
176
213
196
181
242
171
248
234
163
147
225
189
200
202
241
189
154
220
191
145
209
219
161
196
137
248
177
240
182
231
194
143
197
189
135
180
211
191
188
218
229
198
198
198
266
220
193
223
177
173
262
144
176
240
221
227
247
230
161
203
192
182
192
263
207
174
209
192
258
261
196
185
178
216
231
212
183
155
196
183
160
174
228
163
133
222
203
193
161
235
183
254
162
194
180
242
224
150
185
261
206
239
242
186
244
157
173
137
222
149
199
162
182
257
211
146
216
187
165
190
158
207
171
146
198
198
134
255
253
168
193
196
232
208
232
169
187
135
229
176
185
233
224
165
200
193
208
207
186
214
239
215
198
195
189
188
242
191
199
237
195
247
131
210
184
205
147
224
223
202
186
216
204
218
207
267
230
244
170
212
211
253
186
196
179
184
224
229
139
246
154
216
216
196
183
185
230
138
190
216
207
240
101
197
179
205
204
166
207
222
227
203
194
198
233
242
186
229
189
260
198
214
209
218
202
256
259
262
271
275
199
180
226
196
238
165
250
167
139
213
213
199
172
181
221
192
174
199
241
150
204
173
219
211
221
212
254
263
231
147
207
157
207
187
207
198
214
209
174
263
227
221
197
204
201
206
253
180
206
176
168
132
202
111
221
262
310
177
201
255
195
203
226
203
240
120
212
198
129
212
193
243
185
159
162
218
232
227
177
171
284
215
223
192
179
202
169
237
198
194
195
152
190
163
178
189
194
242
197
208
176
136
230
208
151
224
215
192
191
180
147
220
148
192
204
240
213
244
221
158
193
201
149
184
210
188
239
213
148
170
220
174
140
153
277
185
216
243
185
210
222
191
194
201
196
221
226
207
200
130
198
239
183
246
242
232
133
245
215
254
216
199
208
213
153
237
219
174
168
200
156
288
167
242
252
213
195
219
180
202
233
195
272
227
124
235
189
206
155
225
231
190
151
209
118
191
226
183
214
270
201
147
211
218
222
246
284
167
199
190
174
170
208
256
206
132
128
211
204
197
205
169
174
234
246
171
258
217
191
242
153
117
181
187
197
219
208
172
182
247
217
201
230
183
155
267
208
248
149
241
185
204
175
193
223
181
208
227
191
217
130
169
184
229
209
179
209
155
112
260
188
194
156
158
230
206
210
231
178
194
212
196
160
243
186
250
184
179
239
217
219
132
236
196
208
174
218
156
169
202
235
148
239
205
187
179
173
149
217
203
140
197
162
233
234
221
191
218
282
220
214
185
193
180
139
177
160
195
197
164
223
150
229
225
225
227
212
161
210
197
159
196
162
215
195
186
215
266
238
193
193
189
189
187
217
201
223
255
225
149
236
211
258
273
185
189
233
190
202
211
213
207
172
204
191
241
179
138
230
187
260
248
180
152
191
199
184
157
157
170
199
154
227
178
304
268
212
170
196
206
249
188
204
219
115
199
196
173
190
216
171
181
230
204
192
234
170
204
169
168
207
141
178
254
201
225
183
208
179
178
198
220
250
227
240
202
216
194
170
150
245
187
201
203
204
164
156
163
162
221
183
278
206
213
193
231
266
275
196
168
243
143
246
232
188
197
210
178
171
175
204
223
222
205
170
172
150
231
216
180
248
204
210
235
210
256
218
231
182
259
241
208
170
249
233
172
180
183
214
244
163
220
255
175
161
227
249
173
210
177
230
234
253
208
187
179
210
161
158
161
190
233
239
174
166
218
135
153
225
208
171
215
184
181
183
218
187
240
175
183
203
212
159
234
207
236
258
225
158
247
141
171
204
146
186
151
201
259
201
210
219
184
231
150
183
183
211
210
218
271
222
245
269
242
243
182
142
245
189
217
183
189
203
168
251
245
191
174
200
206
207
219
141
179
192
219
190
215
197
188
242
196
209
151
218
160
156
210
155
235
156
188
221
197
277
160
225
150
189
191
181
192
193
172
177
170
201
223
214
255
181
164
166
267
194
223
192
246
178
228
225
238
198
194
129
173
231
182
201
186
174
185
214
190
142
196
204
213
221
195
277
224
240
174
247
191
227
213
208
237
224
172
250
179
155
210
211
271
172
180
219
197
152
204
208
255
213
212
229
229
218
175
172
256
257
175
212
234
199
239
196
203
211
216
217
149
200
206
181
174
207
228
149
217
239
178
167
174
144
196
195
195
219
175
257
201
206
230
258
212
187
187
207
248
233
235
223
200
266
238
198
185
225
224
202
196
241
238
127
162
197
276
189
206
178
265
200
221
189
210
229
204
194
228
247
219
278
250
171
204
213
218
177
233
242
232
172
131
208
232
199
203
292
195
219
211
165
220
151
207
232
220
242
172
135
205
208
130
185
131
189
233
154
229
173
262
233
134
170
204
255
238
237
206
163
178
212
183
200
154
219
241
215
159
259
235
237
214
143
209
205
158
227
143
166
229
212
172
238
201
169
255
195
186
222
173
209
204
229
195
212
154
189
163
127
238
225
240
215
213
220
192
180
166
169
301
146
222
267
187
168
235
195
250
143
152
241
235
197
161
215
123
172
199
181
224
204
241
236
173
206
174
142
236
191
168
195
223
246
217
198
167
175
194
230
270
294
248
184
161
204
151
177
163
249
171
193
177
160
179
189
202
213
152
216
201
233
146
205
215
210
220
150
252
190
156
197
230
191
207
231
142
197
179
161
228
174
287
197
227
185
206
230
142
238
154
241
184
249
165
169
154
170
217
191
179
200
188
226
182
227
237
234
212
240
217
208
234
200
194
184
186
233
130
202
172
204
229
190
213
211
254
231
145
181
210
214
157
154
224
257
276
204
218
162
242
178
176
272
164
223
217
202
114
242
198
204
253
170
140
252
232
216
175
157
249
148
270
132
207
166
190
227
194
208
199
261
214
232
237
199
204
172
166
200
244
158
200
221
219
142
150
242
225
223
204
173
209
209
155
197
201
139
161
218
226
222
266
185
170
152
198
231
225
164
197
225
134
196
184
185
230
253
221
220
198
175
235
196
220
111
171
221
211
237
195
181
215
154
170
107
161
176
202
228
241
139
165
219
132
179
150
202
164
232
240
231
201
162
228
229
178
190
161
170
175
228
195
164
203
194
177
159
247
212
243
202
159
173
218
171
240
154
168
269
138
215
194
199
147
237
192
259
227
168
166
271
204
223
160
181
212
201
234
205
195
186
180
161
203
198
237
162
162
159
159
225
185
127
237
204
202
191
203
163
204
246
174
183
226
194
195
223
236
167
212
157
246
205
201
225
170
239
157
196
193
250
243
195
184
192
202
232
221
221
219
248
203
153
185
160
238
176
203
218
273
169
208
164
183
173
237
159
236
219
207
124
146
233
178
227
249
199
188
230
199
211
169
180
214
156
177
223
166
164
176
172
183
165
218
207
242
220
189
173
173
234
169
230
155
211
256
170
234
198
161
192
201
161
223
209
161
196
253
170
224
219
217
165
203
187
237
174
230
132
144
208
208
188
207
205
227
254
191
161
242
157
277
145
178
172
230
134
223
206
177
233
177
240
260
231
202
191
184
211
176
214
206
232
183
206
190
198
183
137
280
264
218
230
249
233
209
221
211
152
216
204
225
210
192
212
221
227
246
221
173
200
146
175
220
126
170
205
219
163
193
286
166
156
186
163
182
165
197
163
219
211
166
183
182
194
170
259
173
268
269
211
240
215
166
229
128
268
175
195
168
200
211
159
178
191
210
156
141
262
235
196
226
200
159
158
242
145
157
165
171
203
162
154
205
198
275
157
193
251
198
229
191
210
227
194
162
144
189
169
211
219
221
206
164
132
184
197
252
159
199
222
161
270
219
144
204
244
191
256
168
176
180
217
223
257
215
222
223
227
171
253
247
186
242
197
179
245
218
238
215
237
253
213
199
237
248
240
185
219
212
194
163
242
223
217
112
173
212
175
227
151
174
182
180
234
142
168
220
212
130
126
214
238
224
209
156
238
220
171
171
178
208
123
147
223
228
188
161
216
208
149
217
196
197
207
212
178
214
252
227
240
184
249
168
230
181
165
151
185
183
179
220
253
221
231
143
199
177
169
232
187
145
223
197
149
207
202
218
204
263
160
165
214
182
224
161
169
218
217
208
191
192
190
215
212
254
241
227
170
195
227
226
257
176
232
175
165
226
189
206
238
172
192
212
232
141
194
193
156
218
239
231
211
122
219
195
190
219
177
266
192
214
267
157
193
166
168
270
168
202
166
131
230
157
181
202
144
247
219
244
202
206
181
127
175
246
229
187
259
174
197
201
223
194
238
197
170
157
224
286
254
147
167
195
150
205
211
196
203
155
204
161
215
243
180
200
218
171
254
215
221
159
214
197
241
181
218
200
246
174
190
178
203
152
199
171
194
198
261
191
143
238
210
201
183
219
173
144
164
228
191
217
217
261
175
203
202
232
156
177
156
208
220
230
186
181
190
245
173
204
189
190
153
194
130
240
219
224
164
186
177
245
195
169
137
216
179
132
130
214
116
223
247
182
214
142
269
189
219
144
179
223
200
172
273
233
203
183
102
149
184
149
216
185
255
222
172
137
233
221
201
198
187
124
195
166
153
192
130
248
239
262
241
108
160
226
180
213
216
239
161
211
204
161
220
162
229
191
255
198
167
159
193
177
211
182
155
180
207
128
229
226
164
236
222
223
216
180
211
192
177
170
192
209
190
219
178
183
170
154
291
221
242
232
216
201
195
232
136
212
218
184
193
248
172
245
222
222
206
199
201
268
207
224
254
173
168
192
188
182
222
167
218
210
180
169
222
199
185
189
229
198
167
215
223
175
193
186
151
224
204
181
212
239
161
216
198
175
188
233
193
155
195
230
185
136
191
138
153
178
191
170
216
167
195
201
211
204
251
207
211
233
155
156
211
214
192
180
166
237
223
169
230
194
193
181
164
153
249
153
220
261
203
203
207
181
160
216
118
185
208
247
219
173
201
193
182
250
184
181
222
174
153
220
188
162
206
200
237
208
180
183
202
170
254
164
197
184
194
222
223
223
165
225
221
131
160
203
203
207
236
207
113
186
191
229
249
164
173
210
236
193
194
242
210
172
245
164
216
254
230
244
195
153
207
163
282
166
170
241
166
189
203
165
161
196
180
149
154
210
228
218
165
177
178
200
220
207
189
210
153
266
156
229
215
226
140
162
199
246
233
232
130
205
143
209
225
177
272
224
188
190
223
170
124
230
263
136
221
205
203
188
176
197
206
159
274
224
261
188
217
203
156
225
154
151
174
146
224
230
222
198
162
293
193
192
179
207
176
238
167
204
212
150
218
197
205
162
221
239
210
228
149
198
192
213
175
164
178
160
173
152
207
224
171
218
264
169
224
226
139
188
210
122
228
162
278
233
223
145
166
260
214
209
221
192
191
179
199
169
215
209
172
169
164
231
216
263
204
240
193
224
196
198
239
236
244
150
232
202
245
181
186
137
240
192
208
260
225
246
248
159
168
268
206
196
171
161
159
222
193
193
239
229
206
176
164
262
224
145
210
209
177
226
198
225
226
241
179
161
231
145
181
204
194
134
164
220
226
176
158
187
241
185
192
199
139
238
250
218
148
173
166
174
219
242
163
180
186
222
156
175
168
225
202
187
203
243
148
152
212
145
191
175
179
203
200
170
200
213
240
206
172
186
150
220
199
204
226
202
173
213
243
216
192
212
228
165
195
166
213
240
215
181
197
107
227
207
273
231
204
209
147
268
215
157
208
212
239
157
188
182
215
196
224
244
269
134
180
204
203
263
194
198
223
220
181
239
244
232
238
174
185
193
234
238
170
169
207
239
151
224
283
230
160
167
193
244
205
161
209
252
181
205
152
248
137
262
237
202
138
197
140
188
191
185
220
225
249
249
166
162
188
168
146
169
218
219
213
207
205
212
287
228
232
190
172
234
188
184
102
187
169
217
215
223
212
191
223
209
184
254
263
206
205
251
174
209
171
196
219
215
183
148
215
172
235
226
264
176
218
230
241
204
223
231
190
239
205
227
207
214
180
236
247
174
229
173
242
202
183
154
191
197
236
206
196
269
233
238
229
173
190
236
175
153
222
188
161
180
176
163
186
169
192
195
233
217
166
181
233
248
164
205
115
127
176
183
210
205
214
232
242
271
183
219
228
211
175
191
206
208
141
243
149
95
263
221
199
225
177
256
205
162
261
190
186
204
182
218
164
193
203
212
127
206
275
149
184
172
183
172
224
186
231
212
222
199
157
214
205
256
217
201
167
199
188
209
183
167
234
184
211
230
178
258
197
222
209
177
239
242
218
183
193
225
265
225
228
198
216
272
168
136
183
259
156
172
203
203
200
230
184
173
188
195
210
191
249
209
177
164
233
193
242
156
163
193
220
167
203
173
191
215
183
208
161
201
166
165
222
171
206
205
216
228
192
232
267
169
220
222
202
199
219
183
193
235
137
223
175
159
172
202
225
195
241
220
200
172
195
207
194
213
245
225
253
189
143
194
234
229
189
224
195
161
210
200
192
233
196
207
241
234
268
174
205
201
210
177
193
127
236
161
214
186
177
191
167
210
201
165
203
234
219
215
218
207
198
231
204
228
151
219
215
164
195
205
207
164
165
169
222
187
162
150
213
192
197
245
186
237
203
210
182
219
185
122
226
255
177
162
206
200
178
236
239
158
158
231
157
215
180
191
186
201
197
199
193
213
204
191
217
193
195
240
212
232
216
216
158
210
165
233
185
238
231
234
228
203
138
172
169
190
200
195
225
186
230
233
185
140
209
208
156
178
144
173
198
191
203
192
200
183
176
219
170
246
214
229
184
223
136
239
136
158
179
231
224
246
217
189
233
199
177
195
191
198
160
227
194
182
251
233
174
206
197
222
206
133
195
243
194
149
217
185
189
246
246
197
161
174
190
159
177
191
215
190
227
247
160
171
202
199
188
148
174
188
189
246
204
201
180
183
196
249
182
175
235
240
233
188
200
207
217
154
179
245
244
258
158
263
178
197
198
221
185
196
195
171
228
142
156
266
257
216
190
237
127
184
184
156
148
210
191
216
185
112
160
219
161
196
210
202
200
207
192
210
190
199
241
247
215
272
164
190
178
154
227
193
193
232
219
163
263
212
166
187
192
190
218
184
223
180
173
243
206
242
282
191
184
152
174
181
203
152
190
186
212
149
188
171
157
171
188
233
144
142
199
219
274
191
203
141
165
243
183
235
195
204
135
152
134
197
236
209
207
241
199
175
220
136
232
200
219
224
181
197
183
218
201
193
198
178
199
200
236
215
191
152
191
228
236
223
159
249
244
259
233
133
204
105
183
253
132
203
229
197
266
179
206
210
243
171
175
181
216
174
167
152
196
223
223
146
233
204
226
173
242
217
181
179
254
247
255
173
179
218
283
141
213
216
171
148
218
276
212
176
228
148
148
204
150
202
205
178
234
257
192
202
153
220
210
175
214
250
186
193
218
151
208
241
156
126
212
241
216
173
220
182
197
233
228
203
218
191
187
198
206
181
214
176
199
213
219
232
213
199
295
194
214
241
256
204
204
231
205
191
186
223
212
231
227
159
276
259
226
203
204
199
190
161
251
254
213
168
196
202
201
213
184
197
193
258
177
254
262
224
146
191
239
256
170
132
170
205
215
241
117
190
251
151
138
238
218
186
190
232
150
140
148
227
234
228
216
160
187
221
168
170
283
255
200
214
183
147
189
154
191
276
188
231
189
236
210
198
222
170
221
156
136
274
141
158
213
154
197
237
218
216
108
235
253
157
208
192
215
240
251
149
251
224
180
253
175
203
207
173
211
211
153
229
191
173
251
222
253
241
192
190
232
225
193
184
122
203
196
164
229
218
172
206
222
149
231
207
228
189
204
184
232
211
167
218
203
178
181
175
239
219
180
223
200
213
206
146
275
172
188
228
204
246
235
220
262
279
275
193
243
232
202
188
185
191
209
154
192
150
154
189
200
223
242
175
269
167
186
238
246
214
208
265
209
149
154
176
234
230
223
170
132
156
163
168
212
225
177
285
237
219
199
200
227
247
226
193
135
127
182
216
170
153
202
161
224
206
202
189
149
215
192
167
181
223
177
236
178
176
140
234
198
189
197
225
223
188
119
211
249
249
239
170
195
225
245
171
185
243
244
220
210
252
212
152
234
230
185
192
281
225
177
154
219
220
234
179
258
192
226
188
232
230
160
147
174
198
230
168
163
138
195
218
196
208
198
200
200
140
157
236
176
244
180
172
203
259
196
227
262
164
208
199
181
279
194
205
232
254
241
202
201
258
234
225
232
209
213
239
172
284
191
211
181
209
204
207
212
212
238
220
157
191
241
158
168
183
213
148
194
207
126
211
167
173
183
195
207
222
142
229
204
208
226
173
201
217
254
146
127
225
148
191
168
209
202
221
214
279
257
245
178
197
220
226
213
192
266
191
128
258
250
248
220
239
249
176
154
237
233
216
261
215
216
233
168
215
197
172
204
212
201
239
213
149
205
115
207
196
183
222
269
149
195
198
207
191
218
215
232
133
177
241
173
158
209
224
164
216
203
203
213
236
182
178
86
238
189
171
198
232
154
203
249
164
172
197
237
171
217
178
237
218
211
204
195
207
236
176
207
227
160
176
192
154
281
165
215
216
179
165
192
223
251
222
183
181
291
252
211
199
217
250
191
251
262
215
126
191
125
231
220
237
257
248
256
211
223
171
229
196
178
232
219
229
219
182
201
164
175
227
107
180
158
159
185
214
197
197
212
229
193
264
229
222
148
166
245
150
160
176
254
205
252
219
230
185
180
211
180
189
275
207
229
171
229
200
160
188
174
219
171
162
266
256
133
227
172
204
218
177
119
221
189
202
201
229
166
181
169
289
202
126
236
143
160
191
209
246
208
236
171
226
179
264
193
163
206
224
258
202
230
184
212
143
171
148
202
220
202
236
171
188
172
246
190
184
175
138
193
207
245
189
177
261
226
215
172
255
221
194
158
252
179
215
191
139
260
183
203
220
193
127
181
195
188
172
183
217
227
203
142
188
175
130
283
226
150
193
219
124
163
261
200
184
193
189
191
126
227
138
131
178
179
250
240
213
192
180
227
252
212
148
225
189
248
280
262
209
169
147
250
203
246
230
201
216
181
194
191
183
178
231
199
215
226
203
190
179
208
153
145
208
197
237
140
185
185
202
178
239
218
195
192
213
214
221
147
181
237
202
181
197
145
182
235
184
217
230
211
223
182
232
212
190
213
169
210
284
165
232
274
205
154
127
210
220
210
180
223
259
196
207
176
213
194
157
222
238
202
184
157
191
197
193
215
214
214
233
165
133
180
134
169
148
169
238
154
160
230
215
195
153
199
149
219
209
210
191
232
118
239
266
232
192
179
189
174
224
189
256
234
238
118
263
139
254
202
154
183
217
170
234
258
187
212
240
249
200
249
178
207
235
154
110
199
190
190
184
203
231
180
187
178
266
116
172
187
137
249
209
216
193
167
206
242
217
194
218
200
218
226
273
95
252
177
216
191
185
222
216
238
234
156
186
202
215
177
247
276
210
166
163
243
121
230
216
158
227
230
236
288
239
176
221
246
207
233
235
248
150
162
181
238
156
183
180
190
170
190
191
226
243
188
196
197
196
237
211
209
211
207
253
262
184
202
277
111
199
185
218
149
170
189
216
177
224
181
164
193
152
161
201
226
166
249
201
237
179
169
168
166
186
229
198
184
233
209
197
250
237
254
219
155
217
255
242
165
263
190
215
206
214
216
176
194
166
185
178
176
252
290
194
177
226
181
230
187
176
175
185
134
232
186
213
202
195
190
228
208
242
182
235
199
223
171
209
201
162
137
198
228
227
160
183
206
213
155
225
202
229
191
150
208
259
197
187
212
223
218
209
185
164
151
212
204
206
237
158
249
224
182
197
221
212
252
185
241
232
229
256
221
162
147
181
223
190
215
180
136
206
238
144
246
189
207
193
164
220
194
231
256
177
195
195
205
176
152
202
200
233
196
153
176
159
157
209
211
229
182
229
243
176
156
153
265
238
162
130
161
217
226
204
212
236
180
210
265
185
226
201
210
188
211
160
210
248
205
197
241
218
198
177
230
195
187
231
179
221
173
251
165
143
288
193
189
148
183
147
232
205
186
256
235
178
213
201
216
176
213
221
154
201
160
214
182
214
163
193
299
227
195
170
209
245
135
242
175
231
165
216
180
195
192
219
174
243
166
200
192
247
216
136
215
220
211
207
177
172
170
215
230
176
209
179
237
204
153
217
206
241
198
241
198
227
242
218
208
239
159
197
184
186
217
169
153
199
202
239
219
226
199
176
209
207
180
212
213
232
212
243
208
264
210
264
212
151
180
158
186
224
201
202
192
190
210
212
222
117
180
191
204
242
160
158
129
213
294
222
210
224
183
169
184
248
180
192
231
218
185
278
204
207
209
225
198
171
132
217
235
155
232
223
209
273
280
140
171
134
188
243
211
186
144
207
180
228
253
190
185
224
189
231
217
201
247
226
140
230
233
161
191
237
269
191
194
175
253
236
154
168
218
205
159
180
224
211
167
180
181
208
219
168
203
173
247
185
167
162
201
207
191
244
203
227
229
246
196
134
226
227
206
232
249
194
248
239
251
200
213
187
191
225
198
173
203
179
166
170
242
166
174
217
238
177
190
219
193
120
205
287
174
231
156
194
194
256
231
171
211
240
137
165
178
197
152
186
224
203
187
229
220
156
215
230
223
199
168
194
253
162
207
193
189
161
168
187
181
158
170
194
145
227
178
224
176
196
230
175
192
187
214
190
184
225
151
143
174
192
200
216
210
195
190
216
147
211
165
102
193
207
175
177
155
190
182
188
214
242
216
191
235
204
243
142
221
186
217
238
159
204
229
148
212
194
182
115
216
154
193
233
111
140
178
240
190
179
174
149
180
225
242
201
195
211
176
199
229
237
217
228
174
212
233
190
177
194
159
194
263
228
175
133
204
173
236
165
182
150
200
166
156
251
188
169
255
237
160
213
168
182
208
204
156
215
185
206
171
201
229
213
201
232
160
232
160
284
244
219
212
180
216
198
213
196
197
205
184
176
190
223
153
183
222
161
164
170
152
142
208
253
225
144
226
226
203
192
223
157
198
203
136
192
180
187
212
269
255
198
167
243
202
167
185
195
199
135
271
187
197
248
199
214
219
188
208
174
177
185
245
256
202
215
230
228
217
227
288
186
157
154
243
186
235
189
179
198
203
163
159
191
196
173
214
115
205
199
170
205
147
182
236
173
202
232
201
248
185
153
169
256
166
222
152
183
216
166
247
166
164
228
194
151
244
201
206
218
242
163
255
227
161
235
223
225
236
217
251
237
223
243
203
216
199
221
191
198
200
202
207
177
229
234
155
241
264
213
210
202
210
178
188
208
260
177
207
175
197
261
224
182
201
202
208
231
128
185
258
207
162
172
143
213
189
225
235
174
223
190
233
160
174
151
242
203
229
224
265
162
206
164
251
122
137
199
157
222
171
229
214
205
169
193
200
126
237
213
212
218
186
158
153
182
123
200
183
186
229
200
215
247
160
141
180
244
211
178
170
238
220
210
142
197
153
105
275
193
174
209
179
214
168
169
220
225
176
213
135
217
216
177
253
203
196
180
226
207
166
188
219
179
171
163
202
200
214
140
199
194
206
247
215
191
184
223
201
177
166
182
197
217
242
140
228
209
193
182
198
208
187
142
216
213
239
218
154
179
242
187
258
166
229
208
144
225
216
252
162
163
213
248
211
200
140
212
178
196
183
199
250
242
121
174
208
194
190
175
138
202
211
172
154
180
198
155
232
209
232
198
226
160
183
145
235
201
199
232
189
216
214
203
265
189
134
270
198
232
223
204
141
244
149
203
210
161
193
259
193
179
181
283
208
164
209
210
180
222
186
188
151
255
230
241
228
159
145
193
205
206
227
184
210
217
239
233
230
199
239
202
165
159
204
232
203
215
224
135
210
243
217
144
180
222
153
209
181
159
168
140
256
210
145
183
215
229
221
248
208
216
157
143
195
224
212
156
178
199
185
121
173
181
250
243
245
215
254
176
214
160
168
237
208
223
180
180
193
204
191
171
185
159
226
240
224
214
152
213
175
140
198
210
253
249
191
168
230
167
160
273
165
156
226
204
158
166
251
235
224
258
210
263
252
192
161
204
169
188
182
229
213
211
211
243
169
174
196
185
200
262
181
189
217
220
191
205
220
177
237
195
172
205
215
165
124
228
188
194
179
213
163
187
202
193
110
210
174
197
242
185
234
206
223
208
245
253
248
175
204
167
199
154
231
195
217
175
181
224
246
221
246
157
201
166
209
230
259
186
136
177
230
189
235
161
162
220
260
182
191
187
235
231
211
206
217
214
199
249
147
195
194
147
185
218
275
214
212
181
256
186
182
199
227
163
259
250
200
217
244
212
209
166
213
173
197
246
152
198
135
212
200
230
218
234
221
181
205
227
240
199
178
201
192
175
242
221
238
225
155
181
237
197
177
110
198
230
122
149
266
172
200
198
225
259
217
247
185
227
210
218
226
278
179
166
243
161
249
158
241
225
140
213
210
209
212
250
225
154
134
185
157
161
153
162
217
207
223
254
202
204
144
132
181
231
155
205
136
208
149
229
220
212
268
229
192
213
158
205
195
212
216
176
292
166
211
239
259
185
217
161
216
165
222
197
212
216
173
225
218
250
213
228
141
233
182
228
192
173
196
207
188
167
224
185
177
180
106
239
188
178
153
223
178
205
179
224
227
206
181
217
258
159
186
194
213
168
220
186
187
179
256
216
227
185
145
191
181
205
192
225
216
255
214
195
198
184
152
208
197
278
209
123
212
244
178
181
200
193
174
201
205
249
228
173
228
133
210
200
196
176
234
227
193
197
190
180
195
160
180
179
169
158
266
200
175
181
248
172
275
177
225
138
181
240
212
169
171
222
152
219
210
186
179
176
175
201
232
204
170
247
174
212
220
224
213
178
161
195
141
156
158
245
230
211
211
257
198
222
196
251
198
221
159
217
110
214
204
109
197
205
109
218
238
216
193
255
217
157
182
241
217
132
174
222
226
196
164
178
193
190
285
231
259
242
162
185
155
227
167
232
249
211
162
218
189
177
237
233
182
239
223
183
204
200
231
229
178
174
198
248
225
160
166
174
197
190
161
193
191
200
215
209
183
211
248
175
199
204
236
227
222
181
185
158
230
207
203
203
185
237
173
149
160
240
145
158
225
196
216
118
143
194
191
197
206
153
216
234
184
210
168
189
201
184
233
162
164
247
205
208
161
163
106
222
168
160
191
222
234
215
212
226
244
154
174
134
255
214
209
211
199
198
198
270
180
203
201
180
184
144
220
193
237
215
187
169
156
154
220
148
217
189
158
195
201
207
173
211
165
216
198
195
172
231
206
151
186
230
164
188
191
215
209
202
205
192
218
215
149
172
239
194
245
213
193
239
157
186
255
199
228
197
265
186
205
175
151
234
209
251
141
169
215
184
173
212
216
229
233
156
218
141
231
177
188
179
208
176
189
176
201
190
159
185
144
219
107
211
160
191
181
190
205
215
174
206
214
199
259
162
209
247
194
227
210
210
210
188
145
199
245
204
242
246
201
184
202
209
176
233
209
163
219
219
215
197
210
186
213
221
189
239
226
222
182
123
225
182
148
222
190
194
234
149
230
254
159
250
160
206
183
215
205
228
198
200
237
187
113
187
166
213
183
198
156
220
238
176
241
158
200
163
251
241
227
168
217
214
197
161
178
215
179
229
238
237
171
251
193
190
196
227
176
190
234
192
179
161
165
227
223
161
194
184
209
197
193
230
189
187
186
157
171
185
248
249
211
186
101
198
193
235
220
182
246
251
170
258
210
203
211
179
201
188
181
198
229
196
187
162
253
229
164
127
188
167
197
186
151
189
154
157
202
203
197
218
189
222
261
222
259
174
156
257
178
234
214
239
189
212
191
202
149
192
233
214
220
205
133
215
222
278
263
185
170
201
186
216
230
170
235
198
105
205
180
195
129
262
223
161
184
177
181
263
206
264
153
234
234
213
232
183
232
251
193
234
266
224
235
149
234
126
230
165
192
168
218
199
218
214
134
128
239
275
197
193
189
198
165
225
205
173
131
192
260
167
176
261
154
189
218
236
140
235
227
203
221
204
186
257
236
185
203
189
219
188
226
210
280
128
255
183
212
223
219
174
234
197
213
176
213
220
130
167
232
131
190
222
175
249
183
229
227
98
179
201
168
245
191
148
195
220
226
207
152
255
189
190
266
212
151
189
147
141
186
137
212
192
224
241
177
199
231
251
171
183
221
212
193
184
258
185
166
169
188
206
243
249
218
173
194
233
211
267
202
246
184
205
158
223
211
180
211
243
210
231
196
176
190
173
224
213
182
195
149
225
210
213
204
239
224
203
220
235
275
183
129
240
197
273
176
184
219
141
196
253
266
184
182
204
199
195
181
171
276
150
189
253
232
253
166
222
192
196
156
230
158
213
199
225
171
132
149
237
168
163
208
226
169
265
208
263
203
201
197
198
148
142
225
231
164
80
207
260
187
203
208
144
161
227
191
205
181
188
166
214
169
170
254
248
198
202
177
234
161
195
177
212
251
204
186
129
196
198
182
179
172
172
181
248
144
158
199
196
232
237
172
265
228
187
206
188
238
193
208
195
210
239
195
215
269
249
186
197
264
152
221
215
166
199
206
179
194
179
185
200
205
207
213
208
236
139
239
188
210
244
178
197
175
214
235
219
151
284
176
245
252
131
145
266
178
253
260
192
183
227
162
192
250
158
219
155
196
183
159
209
179
254
139
209
193
224
181
176
199
280
190
109
180
162
234
228
168
259
268
224
237
225
225
244
226
171
167
198
217
207
215
250
252
225
177
136
204
182
230
164
196
224
223
215
133
161
233
184
183
148
211
129
198
195
183
109
235
228
208
175
165
195
229
242
226
225
233
193
223
199
163
154
223
158
189
220
197
163
191
133
222
178
141
192
166
178
158
173
136
220
208
244
158
225
207
263
203
252
244
202
166
239
245
234
270
191
176
227
216
148
188
202
209
226
151
187
218
175
211
199
210
235
197
132
200
139
207
220
171
222
180
242
181
188
272
233
194
216
215
215
197
187
254
148
195
149
261
189
197
176
194
179
267
201
198
206
256
196
225
184
194
248
134
208
165
188
188
202
197
146
157
191
178
154
117
197
166
207
180
209
207
198
190
221
179
266
266
192
176
148
159
148
202
206
205
230
214
196
203
226
155
186
186
221
230
242
238
156
200
200
204
209
190
183
248
198
215
187
199
168
244
256
215
250
212
245
197
268
205
202
174
272
159
163
159
221
194
244
208
217
271
195
219
233
220
155
203
196
189
232
189
233
187
264
234
220
154
224
196
142
192
208
184
245
229
254
235
172
168
223
214
229
178
233
208
211
183
176
177
203
190
217
147
216
223
183
257
270
195
168
205
203
227
180
237
163
298
116
225
221
227
178
202
175
168
173
223
178
211
202
232
210
179
189
136
208
188
233
151
200
175
164
177
170
222
213
202
171
229
203
164
187
238
203
199
170
205
198
191
225
195
217
184
205
139
248
191
207
216
186
205
193
226
199
195
170
156
204
181
255
257
155
219
230
231
195
151
242
163
214
207
179
259
229
183
257
253
208
260
261
216
198
248
162
184
243
150
182
175
203
211
200
189
175
139
223
179
197
182
203
275
183
135
172
204
165
227
179
211
177
238
210
206
209
183
226
177
211
161
207
200
204
204
233
203
188
193
171
213
187
205
182
196
136
220
174
185
227
212
237
139
192
210
141
103
148
192
216
165
214
234
154
253
248
187
214
206
182
152
216
147
211
195
283
197
205
207
156
175
146
205
146
161
211
214
197
243
219
195
194
191
164
171
170
224
237
166
205
198
210
223
207
230
218
194
183
138
153
146
197
221
138
172
167
176
238
202
143
250
228
161
196
156
211
237
200
245
192
192
153
214
194
195
200
221
149
137
195
196
168
152
238
217
178
233
207
200
144
158
195
191
243
194
228
237
187
158
191
110
204
171
166
195
189
199
167
198
223
239
218
189
206
133
222
277
224
222
201
240
199
262
194
168
198
187
172
249
211
161
217
206
143
230
188
132
133
138
210
192
192
141
179
218
177
218
197
219
248
189
211
217
182
167
166
212
204
234
191
207
176
244
224
200
197
184
202
218
246
178
226
194
209
233
216
246
198
233
214
268
225
246
171
152
190
186
229
221
246
180
166
241
237
198
211
151
231
181
198
113
205
230
136
220
182
240
238
251
195
201
217
230
246
141
192
159
214
208
232
140
230
176
204
231
144
178
225
131
171
219
185
193
194
192
181
218
217
222
211
220
225
239
198
164
231
209
258
179
230
244
184
202
212
218
144
171
215
229
163
232
205
205
151
180
249
203
190
132
229
148
158
145
173
209
205
126
249
201
215
205
190
169
269
187
176
243
199
217
145
195
218
221
194
216
265
144
132
226
248
222
213
207
163
208
190
176
224
274
153
171
170
207
199
229
189
233
182
200
228
192
210
212
202
223
142
185
140
240
229
199
209
222
236
204
196
211
191
185
195
195
162
219
151
255
218
242
155
209
200
219
171
192
206
208
274
249
194
226
188
229
200
225
243
242
197
170
197
123
169
186
251
203
226
245
175
245
125
190
202
215
238
231
193
219
177
143
188
244
221
211
200
195
223
171
214
174
162
111
219
225
161
153
207
226
106
213
225
255
161
224
142
218
213
195
215
217
219
160
180
177
243
227
266
190
240
199
246
187
213
223
226
142
168
189
188
183
238
211
218
200
234
222
167
225
232
250
182
152
197
154
174
238
142
212
217
291
240
229
263
154
220
201
257
185
173
177
225
175
216
226
175
161
219
270
224
153
261
235
194
220
211
186
248
180
172
199
199
199
217
116
218
160
218
165
202
163
260
184
186
264
234
201
237
135
245
195
202
210
261
200
211
195
259
221
228
169
207
166
260
209
252
174
245
134
188
227
286
229
226
177
119
239
235
209
210
243
172
126
193
282
217
69
207
201
233
200
224
209
245
217
151
174
207
139
216
231
198
184
214
256
209
218
254
176
228
201
251
192
189
161
152
286
221
220
198
219
247
211
251
233
157
200
232
203
191
186
201
231
231
228
196
201
201
172
198
243
196
176
185
214
195
195
166
194
210
181
223
168
202
204
241
213
227
202
181
215
184
221
204
177
166
181
151
235
177
163
241
244
228
176
194
248
171
201
208
191
224
223
300
220
233
198
138
188
183
206
214
237
233
226
195
260
188
188
204
209
162
147
162
176
234
204
203
162
185
283
195
167
259
225
199
237
223
253
257
214
209
202
151
174
165
198
245
213
210
255
183
230
192
176
172
251
248
187
180
249
249
181
137
169
182
193
204
104
168
167
245
119
209
200
220
247
198
229
169
210
236
172
235
238
223
244
205
131
232
178
148
174
171
234
205
223
204
198
232
216
154
184
202
197
197
192
184
228
242
162
207
207
190
213
183
217
166
229
200
164
206
200
167
169
226
213
239
137
208
218
234
216
206
228
199
259
195
213
188
213
187
213
213
168
222
198
217
218
146
156
182
169
129
193
215
221
224
201
194
167
221
219
208
245
181
144
262
176
210
170
229
265
208
183
268
207
184
176
186
171
154
215
234
183
246
229
142
149
178
221
170
188
162
196
228
247
219
189
164
263
234
175
217
192
194
171
180
289
153
200
166
211
212
243
125
180
187
184
165
215
209
167
134
213
223
177
288
143
204
173
198
176
167
251
237
217
222
234
187
260
199
222
225
178
168
182
257
204
196
165
204
212
188
205
193
185
228
190
169
206
196
254
217
186
169
115
187
123
172
219
226
237
217
251
204
197
192
173
159
268
188
228
186
174
216
228
145
264
185
182
182
209
253
186
194
269
179
203
202
196
238
173
227
227
239
213
248
214
201
213
208
173
207
158
197
204
185
249
156
193
169
225
181
159
200
195
166
229
197
212
159
189
181
281
190
224
203
182
197
205
119
231
148
166
158
211
237
184
241
159
216
161
238
141
240
197
234
161
165
173
178
177
247
184
158
166
206
218
263
206
232
177
137
210
169
204
246
242
204
219
151
207
211
201
179
203
207
180
207
122
174
196
221
195
226
125
242
190
204
209
195
194
176
209
209
203
208
251
150
187
255
231
183
186
172
220
179
199
224
173
174
211
244
179
217
209
188
212
161
228
234
186
235
218
176
223
170
225
191
177
193
252
207
198
220
219
189
202
274
171
199
223
241
210
183
199
233
155
243
228
205
204
184
212
202
262
127
209
114
131
227
188
177
147
286
217
160
266
170
179
205
178
198
192
256
208
141
195
205
218
197
191
191
226
154
171
132
258
197
192
262
211
219
214
192
236
209
245
211
205
191
228
236
197
191
206
134
239
215
214
260
244
216
241
170
206
220
145
207
208
240
202
169
199
202
228
213
217
185
167
217
188
208
172
231
221
179
285
158
138
184
207
206
203
214
200
205
217
197
228
217
184
166
151
171
175
219
223
191
238
162
161
248
234
154
214
235
184
205
207
234
230
251
253
248
184
239
131
188
239
234
210
224
201
204
269
238
140
223
206
221
176
204
224
210
185
262
186
144
185
227
211
277
188
214
186
227
251
163
166
219
134
222
235
211
222
153
179
209
168
158
194
244
208
264
154
143
234
212
148
208
141
258
185
182
158
123
217
203
173
215
227
240
211
164
209
133
209
262
222
171
220
165
251
199
175
227
168
197
216
174
178
185
192
227
171
140
197
172
91
138
171
194
231
238
206
229
222
174
229
188
271
150
206
207
148
230
202
210
199
220
185
268
204
240
213
161
210
210
210
212
201
189
216
186
164
209
236
165
197
169
222
284
187
197
259
212
172
205
187
190
247
255
199
179
204
212
114
207
212
171
235
152
163
176
184
227
148
155
248
252
179
212
218
117
202
191
232
212
187
237
180
184
282
195
200
235
169
165
196
239
214
177
296
207
168
226
161
211
197
176
232
151
237
207
180
183
208
153
176
234
213
189
178
162
200
252
145
210
255
219
213
207
110
227
239
207
188
218
250
72
145
241
172
129
224
153
273
145
216
206
167
148
199
264
180
222
202
222
185
189
228
195
238
254
198
211
170
213
271
235
183
233
148
186
202
217
225
215
211
175
219
221
200
256
109
225
197
197
139
220
231
179
239
162
282
216
181
197
164
229
222
235
230
185
240
223
177
178
157
224
197
174
232
185
212
183
201
229
183
187
238
243
229
224
188
207
177
182
160
159
161
244
136
179
209
210
264
232
257
159
156
180
166
207
224
154
223
254
232
160
255
207
183
165
168
229
243
166
184
208
138
262
171
211
167
204
229
183
219
196
216
201
243
129
158
191
156
163
197
210
201
236
240
242
111
232
165
191
191
200
219
197
212
250
175
149
203
192
149
228
133
178
181
187
237
194
265
155
140
198
243
166
172
133
161
102
188
170
252
194
211
214
219
171
132
237
173
172
211
224
230
223
190
187
185
242
208
216
214
189
170
167
175
181
181
157
181
244
215
181
222
272
231
133
220
216
159
178
182
219
206
179
212
164
229
253
238
217
214
256
215
220
220
155
181
247
177
234
202
166
195
111
174
177
225
224
160
236
182
225
201
225
197
207
206
183
177
175
253
151
222
277
193
248
190
171
261
252
151
165
161
158
202
188
231
240
277
202
163
194
153
246
188
146
214
219
243
174
152
226
189
184
273
223
206
150
261
184
157
203
181
209
195
92
246
241
163
193
190
252
194
217
141
188
195
147
184
262
192
199
175
226
159
265
194
225
150
222
225
210
146
196
196
226
259
197
176
227
248
146
221
205
177
169
226
198
191
191
208
157
118
243
191
226
209
243
150
170
217
216
185
182
224
211
199
136
209
195
200
166
179
107
247
225
220
252
206
253
216
200
235
192
166
227
144
211
120
248
215
167
189
214
185
151
233
233
210
217
197
253
190
201
216
224
233
204
193
183
212
272
189
177
205
191
197
120
199
197
132
206
208
255
140
237
253
194
169
188
229
216
231
239
208
251
245
229
140
238
221
208
201
182
221
245
196
206
198
222
152
194
207
202
237
185
237
214
205
262
202
229
211
185
187
186
215
206
125
200
196
201
224
166
247
181
229
217
168
182
209
187
198
219
229
169
209
197
206
224
182
261
193
198
202
235
223
143
218
226
236
144
217
247
147
247
194
215
150
204
200
192
205
186
227
159
216
226
162
188
206
205
245
185
193
214
204
163
233
233
236
211
229
213
269
162
139
249
196
144
177
142
218
173
234
180
212
202
197
208
182
231
180
190
199
150
217
204
244
192
220
229
155
210
163
202
141
220
210
214
208
151
206
215
212
213
201
189
121
209
182
230
268
164
253
191
155
180
205
187
188
150
184
267
228
190
160
181
242
146
202
202
194
204
216
240
216
172
219
177
272
172
154
169
167
231
165
175
254
209
232
184
221
146
195
274
158
222
145
170
201
244
204
152
192
220
190
168
187
215
175
185
206
188
257
202
197
222
191
179
209
252
150
224
156
191
193
218
229
206
248
181
198
222
173
181
179
140
229
187
211
152
196
188
202
186
245
216
193
157
177
216
164
188
213
251
342
173
245
228
250
219
140
164
214
207
260
243
209
219
196
194
213
151
184
212
227
197
181
231
264
182
152
218
239
193
166
201
171
169
153
214
218
195
251
197
146
153
203
244
198
217
212
164
268
188
157
247
194
238
198
241
240
243
185
220
216
202
204
205
203
221
180
267
204
192
232
194
162
226
189
226
208
202
200
167
220
185
184
172
219
194
186
191
202
176
216
208
148
106
166
197
202
173
198
172
233
197
216
125
176
207
163
244
117
179
203
225
217
249
187
231
260
225
180
190
180
204
182
272
179
231
232
185
198
229
175
234
195
174
187
156
191
179
220
165
226
177
131
218
136
137
277
165
162
219
208
187
127
148
195
294
194
213
215
181
236
229
193
187
220
189
180
266
203
178
208
254
276
185
215
230
154
223
202
195
210
158
243
239
234
168
204
215
202
187
193
161
219
215
192
184
199
251
252
169
184
239
206
283
193
172
163
174
181
223
206
181
223
210
198
209
215
210
185
163
237
158
187
189
203
183
217
233
220
205
188
234
210
181
179
150
124
210
254
238
212
209
219
226
250
256
178
185
226
170
243
160
240
202
208
215
240
210
201
195
157
199
166
242
213
217
220
187
213
179
200
250
187
188
163
188
174
143
200
221
166
166
191
148
207
250
187
205
145
208
193
199
207
156
233
139
192
213
208
167
155
151
206
244
208
239
229
167
199
209
179
267
191
241
217
210
235
259
218
238
166
209
227
189
179
202
228
191
217
197
166
200
214
155
146
213
178
202
221
225
204
205
223
214
194
140
231
200
204
244
222
228
115
230
172
135
197
237
154
218
220
185
159
238
253
204
253
218
157
213
245
242
241
183
205
188
271
205
189
175
199
207
232
152
196
199
200
211
190
203
195
229
216
217
234
200
208
227
221
249
153
163
259
189
195
177
223
230
191
194
255
204
166
140
140
202
204
199
195
289
242
232
164
203
173
250
188
262
191
177
268
239
218
190
241
253
167
220
221
182
195
187
199
166
146
203
227
204
211
183
211
154
256
185
171
181
256
230
229
166
192
165
147
159
161
202
161
244
202
248
186
178
210
221
209
208
220
211
229
205
184
209
226
170
237
266
213
210
201
156
241
135
178
218
205
241
225
249
199
192
188
205
255
183
198
197
185
273
249
215
192
224
163
179
234
247
208
197
264
197
169
251
208
176
206
197
233
229
188
214
171
166
134
191
147
179
176
195
209
227
175
230
231
168
234
187
194
192
194
248
144
175
194
229
181
252
195
167
175
245
246
215
199
154
260
170
192
172
267
207
230
211
242
230
182
193
217
229
261
229
204
263
137
230
221
232
278
224
242
202
242
211
265
218
180
172
214
166
228
168
194
167
196
246
185
247
175
206
194
215
266
182
194
222
242
206
134
224
204
203
226
187
179
203
156
204
167
153
186
226
188
134
234
208
179
208
248
163
211
183
197
174
193
227
214
186
143
169
156
222
226
197
183
194
261
228
165
212
266
179
261
244
275
230
198
187
197
120
199
229
176
234
260
181
158
140
149
170
215
215
276
209
213
167
205
238
189
154
128
200
219
199
231
123
215
152
131
166
188
228
233
163
218
230
241
185
142
232
218
192
123
213
146
198
205
154
172
238
246
184
232
123
240
204
190
186
165
141
263
195
166
175
167
207
196
190
191
196
250
182
183
169
230
199
170
254
242
198
186
230
163
231
214
171
195
213
170
156
284
195
168
204
196
179
242
232
220
212
188
215
216
228
274
239
213
175
192
225
211
182
148
238
181
211
198
211
215
171
199
163
235
195
157
228
188
256
169
195
207
230
195
157
255
211
228
261
244
169
236
232
138
190
143
183
211
211
204
200
178
176
236
246
121
203
191
192
239
220
227
150
158
229
193
153
175
224
196
209
186
217
233
226
203
187
209
180
197
193
170
166
204
210
283
184
155
197
182
228
196
219
241
217
161
150
201
191
198
143
197
167
218
156
177
261
172
227
162
267
251
233
191
188
219
195
230
203
152
206
208
223
154
257
241
165
190
161
159
154
226
198
229
225
223
229
195
225
203
187
123
225
207
233
221
198
253
210
190
234
245
211
182
155
208
177
141
191
185
134
145
178
185
161
197
230
222
266
255
296
205
196
190
179
185
229
231
193
237
168
135
247
208
210
239
209
168
238
265
156
216
220
196
175
170
170
185
222
281
131
196
233
229
195
142
224
208
212
136
210
229
241
203
231
218
124
223
213
228
211
212
147
133
177
178
229
239
198
239
164
165
229
150
257
222
145
144
223
217
205
216
169
241
156
206
168
213
182
158
257
246
191
168
179
207
185
229
222
155
216
210
184
181
189
220
169
188
160
198
229
149
155
186
200
233
196
229
164
191
170
131
181
222
219
205
229
178
124
242
216
187
200
215
151
239
209
194
176
235
201
204
195
202
220
187
183
144
186
240
228
136
225
118
214
184
214
193
152
255
219
173
248
243
159
248
119
254
201
205
256
223
210
184
246
216
205
209
242
194
185
184
256
202
152
153
140
145
220
295
233
230
247
156
106
237
231
232
198
259
232
176
207
201
220
254
187
171
135
176
190
159
231
200
213
161
178
185
209
126
280
160
255
118
194
203
193
221
223
208
229
219
231
203
211
227
195
219
177
192
206
236
237
206
213
229
165
191
187
231
117
230
230
197
231
219
261
181
210
236
206
159
125
206
196
202
176
202
208
284
205
227
228
192
182
253
202
185
207
144
186
155
184
217
167
223
157
225
196
180
184
142
188
209
221
171
211
194
160
204
160
232
191
168
243
194
187
137
256
243
242
187
186
135
159
159
180
183
197
202
217
195
195
210
248
185
218
180
209
262
169
155
148
223
109
225
162
173
183
114
207
183
213
225
143
220
167
184
232
193
184
190
235
156
250
255
212
218
148
161
191
140
187
183
163
201
185
213
188
221
155
246
233
253
183
228
230
163
167
226
134
212
211
220
199
169
166
254
170
187
222
280
172
181
184
159
210
144
163
143
191
212
176
160
189
203
154
235
231
258
185
145
218
257
169
198
171
170
201
223
220
139
142
242
228
207
246
184
224
234
200
185
160
132
181
115
178
240
158
214
203
214
188
224
190
203
263
181
198
245
193
193
253
189
180
203
223
202
250
155
194
201
244
219
205
213
187
230
232
206
171
226
189
232
229
179
152
224
209
192
234
223
155
220
163
151
212
134
137
206
237
207
153
238
239
230
123
121
220
209
157
177
148
244
242
218
180
188
201
180
171
165
222
178
103
239
224
166
183
194
122
158
150
231
199
238
257
160
221
231
235
168
139
202
244
293
151
253
145
190
204
164
217
173
155
195
196
198
161
134
198
195
221
197
186
226
182
195
272
193
213
172
253
151
171
211
260
162
218
180
199
128
230
175
165
207
202
199
256
241
254
276
233
212
154
209
249
226
212
255
189
154
188
185
251
187
223
265
239
230
229
209
219
219
242
176
182
196
189
215
208
216
218
220
221
224
166
234
263
171
238
229
186
216
258
218
219
203
195
222
175
228
149
209
193
230
246
232
169
286
207
182
197
220
162
189
248
176
160
185
195
234
168
144
153
210
179
153
175
225
181
139
192
241
148
264
248
182
251
205
268
119
267
252
264
191
147
232
156
216
198
176
189
149
189
212
196
137
195
166
187
229
258
206
253
177
169
153
157
161
202
147
163
242
183
226
213
198
183
225
239
208
187
133
210
177
162
187
217
165
199
216
176
164
226
209
161
208
186
160
155
185
93
160
182
180
181
179
211
229
173
170
183
194
217
203
221
195
206
172
205
217
200
208
190
208
229
149
145
214
187
177
135
182
160
233
183
252
200
202
235
210
274
189
190
228
247
225
215
185
202
214
186
100
194
199
182
222
254
152
222
193
134
194
212
175
186
174
171
221
207
212
156
264
170
202
232
207
205
245
237
214
210
168
142
191
176
224
201
177
192
211
215
179
237
169
190
162
209
205
214
169
201
266
215
215
244
238
140
150
219
203
222
189
208
182
178
210
175
222
184
187
220
140
187
223
209
167
179
188
178
174
185
201
193
206
183
201
273
208
227
212
206
224
174
175
121
161
258
172
187
232
222
195
186
188
209
175
272
189
155
167
225
165
182
166
163
212
235
186
229
204
190
238
167
203
170
248
214
247
203
198
199
208
176
182
201
203
188
177
218
153
238
219
242
212
197
173
148
178
210
197
175
192
208
206
221
142
218
158
169
198
221
226
233
260
219
198
214
186
211
201
198
224
172
129
206
236
178
212
190
182
144
192
245
223
213
217
251
170
192
258
202
270
131
221
254
215
212
265
197
188
197
226
191
254
247
196
134
163
160
206
169
188
227
243
211
227
179
211
196
224
187
228
175
261
195
209
227
255
266
200
146
243
213
230
169
208
180
173
205
157
186
193
254
205
154
239
175
212
243
149
221
208
162
160
162
208
137
213
215
164
161
211
186
244
188
185
193
182
162
243
198
182
209
201
211
193
223
156
175
148
254
172
154
228
227
185
207
214
214
157
198
163
265
168
228
171
211
238
159
210
214
194
155
194
246
184
160
156
185
167
181
210
171
180
238
193
205
195
233
203
176
159
190
251
168
236
230
184
182
155
224
219
208
196
212
218
194
183
197
202
228
192
218
193
207
186
171
148
221
152
226
217
139
235
99
131
197
194
208
240
217
243
173
240
194
199
177
176
218
206
215
195
216
155
211
172
267
211
190
172
224
205
250
159
215
212
163
174
199
152
169
173
204
281
172
217
209
246
223
165
230
222
207
145
182
191
172
188
195
164
217
215
173
176
142
199
170
197
180
248
168
196
246
252
190
196
191
208
183
186
238
198
227
201
251
212
253
230
202
210
192
202
232
233
169
161
184
231
227
221
206
127
205
215
218
215
144
185
224
173
184
178
227
248
190
246
199
239
173
221
126
222
173
198
190
188
221
191
238
212
260
194
182
169
275
202
238
195
208
188
176
222
218
201
212
221
197
194
197
234
141
255
200
220
289
207
185
215
125
205
130
222
140
259
189
195
259
178
234
230
204
178
159
176
164
196
177
239
256
250
246
192
177
257
120
216
215
168
228
232
181
179
213
154
210
202
224
179
199
202
209
186
229
183
193
145
176
162
192
222
188
229
156
232
230
245
212
197
139
174
217
207
205
150
140
226
125
220
198
244
177
209
173
189
262
227
257
217
141
248
218
143
234
187
247
196
166
255
224
201
197
247
211
151
195
220
180
188
123
182
236
224
236
161
181
228
227
221
233
209
214
217
156
225
203
161
165
167
221
230
229
168
212
173
200
245
222
218
200
218
147
178
246
186
239
229
213
197
231
194
230
189
190
254
190
193
159
185
205
280
202
142
191
196
226
170
192
172
206
211
211
155
179
154
199
174
185
187
199
214
245
213
239
182
132
244
177
149
261
159
141
136
211
168
188
147
221
202
248
223
228
199
196
227
212
300
161
241
167
208
190
161
213
143
178
223
272
182
192
175
189
168
134
192
164
226
225
158
239
217
197
219
170
261
175
250
157
165
126
163
213
176
208
162
195
192
218
236
244
192
159
212
236
191
200
240
190
157
163
238
192
164
205
179
160
213
132
192
225
157
190
160
157
211
175
169
209
168
169
225
214
190
164
187
175
276
178
157
222
181
186
160
196
230
215
156
176
191
197
235
217
258
153
189
221
161
218
240
160
219
190
177
229
239
185
151
203
180
194
132
197
191
217
186
233
236
205
192
187
200
191
187
219
289
202
184
228
188
188
227
184
226
153
167
242
178
211
178
159
201
203
211
297
251
194
193
184
221
224
195
245
216
185
167
216
304
199
199
182
215
163
131
192
221
216
200
174
229
231
218
197
203
172
207
195
200
196
220
250
185
170
271
218
143
153
162
248
158
178
195
197
209
206
202
187
244
171
194
213
214
183
234
151
222
200
138
216
185
160
191
204
204
141
250
207
210
208
163
214
221
206
173
200
174
158
200
111
183
242
175
190
220
226
199
200
188
246
168
180
135
231
228
204
243
136
163
196
182
165
225
133
167
238
215
215
199
180
194
192
198
159
162
211
191
162
193
229
172
157
201
240
239
193
219
184
174
187
170
228
199
184
148
155
224
173
208
205
212
225
218
160
215
156
176
178
209
229
218
194
214
199
183
259
226
212
186
187
180
181
158
213
255
223
228
223
191
170
139
220
226
243
191
172
204
155
212
174
208
177
208
176
182
146
161
217
223
196
203
219
267
180
204
239
226
249
107
247
262
211
189
219
204
133
172
241
190
155
211
214
207
251
234
189
211
182
239
202
316
158
151
254
198
161
203
207
232
218
241
217
167
187
186
159
178
182
154
231
218
191
203
229
226
259
206
193
203
205
233
201
203
189
177
239
215
179
215
134
167
186
239
173
230
192
235
212
172
208
191
190
249
218
213
206
164
161
210
130
148
179
258
217
208
189
191
185
201
185
192
207
215
264
227
196
230
204
133
191
154
198
160
240
158
179
175
242
212
195
182
152
232
275
246
238
191
224
127
172
192
177
144
149
167
279
207
148
231
248
244
145
237
150
257
194
176
184
258
236
230
196
213
230
219
199
218
253
219
177
205
225
188
208
242
191
155
199
209
178
213
203
189
201
229
194
210
189
244
218
174
213
199
204
206
188
194
150
263
231
208
186
209
185
199
210
199
179
147
189
202
161
215
180
216
240
204
185
190
209
169
231
190
176
194
152
210
246
219
194
212
230
149
220
179
216
237
203
206
243
261
240
219
167
202
213
209
273
236
144
217
221
182
228
262
234
241
158
199
195
202
206
180
183
166
223
196
187
192
199
244
149
187
166
190
221
243
204
220
152
275
208
231
251
173
247
206
204
111
157
202
133
258
175
253
209
219
175
192
176
200
164
203
143
226
150
184
186
175
202
205
145
247
246
224
254
198
194
195
209
259
210
211
218
272
214
215
191
201
221
175
200
203
233
221
260
191
222
227
237
243
204
193
192
103
235
241
206
229
142
199
232
202
168
222
202
266
230
153
199
177
204
185
191
141
147
216
181
195
166
177
222
248
260
211
182
179
208
218
185
236
224
207
192
165
208
198
212
203
227
173
287
201
142
177
193
189
238
244
171
236
204
221
143
197
189
207
207
191
177
219
192
252
175
267
205
193
231
233
187
276
174
164
265
196
175
185
161
216
145
131
212
205
154
247
233
268
247
184
182
192
203
209
218
195
203
235
237
206
202
228
102
213
154
138
210
153
220
213
155
159
152
238
226
250
171
213
156
227
241
128
171
242
217
185
233
224
218
184
226
176
164
272
228
208
209
188
236
138
181
236
188
153
206
218
197
209
178
167
238
163
231
184
173
238
219
262
161
185
172
188
192
218
207
195
205
235
228
147
231
196
184
192
183
241
225
231
230
181
204
210
257
202
222
196
167
181
199
191
218
207
173
244
222
209
175
185
187
223
138
225
146
180
235
186
215
178
238
221
180
225
183
236
201
187
219
274
222
179
210
201
211
269
238
168
223
179
215
207
168
232
241
263
145
188
219
228
179
211
196
225
181
215
159
210
189
236
256
222
280
209
245
200
192
214
226
200
183
162
209
215
191
219
230
231
184
180
201
222
256
253
171
230
236
206
242
207
212
203
193
189
159
226
189
114
202
219
214
202
180
272
178
147
245
209
240
144
183
152
215
219
185
154
218
153
226
188
246
212
236
178
138
191
175
202
152
169
160
212
207
228
163
119
223
225
173
179
155
222
202
243
175
250
182
223
218
135
229
175
187
195
232
205
231
267
155
196
205
190
143
181
237
183
200
250
184
198
227
157
224
250
273
177
226
256
162
225
221
207
213
145
152
209
198
147
238
190
215
144
233
209
194
171
176
232
179
148
215
231
193
198
204
128
244
151
199
215
223
212
163
167
160
215
272
138
208
200
130
227
210
224
195
237
236
170
177
140
208
164
232
234
182
199
189
225
183
192
157
189
188
215
215
192
220
182
169
233
212
223
206
212
218
173
271
208
237
212
200
221
236
219
163
187
184
199
210
209
166
181
233
220
184
191
140
221
192
209
178
234
230
228
233
137
209
210
214
193
255
265
170
183
179
251
235
203
218
188
173
256
186
207
167
202
242
221
172
197
152
232
208
185
192
215
149
150
195
167
189
188
221
260
151
184
220
221
204
172
291
231
248
168
196
134
187
207
173
203
191
205
229
182
190
196
204
200
242
241
208
182
169
207
250
209
171
182
206
201
151
218
165
207
187
180
242
247
250
145
200
246
175
258
191
275
189
233
146
230
196
205
167
242
195
191
218
218
165
209
172
183
185
239
217
188
244
207
176
293
132
259
178
211
201
133
216
177
254
198
177
213
197
222
210
160
180
173
221
140
171
159
152
218
171
221
184
212
236
149
194
251
225
232
212
180
188
167
242
216
192
246
215
205
207
166
181
203
171
208
158
203
180
204
227
200
266
206
231
178
218
193
218
269
145
214
155
177
202
174
230
223
242
224
231
215
160
212
167
203
196
190
156
213
214
229
158
163
170
239
240
172
195
233
249
201
156
231
152
182
195
184
209
241
228
189
236
201
153
205
183
191
219
228
260
152
206
218
236
226
231
226
205
240
230
228
183
147
250
216
191
221
199
229
226
232
248
174
184
205
138
101
254
207
239
142
166
207
211
211
239
220
208
272
217
246
190
157
160
174
252
169
231
190
145
209
171
213
211
124
220
232
240
254
198
138
168
225
181
190
252
280
156
212
170
216
189
210
147
202
257
219
214
157
177
165
164
227
230
226
189
209
156
231
194
150
268
190
271
178
173
216
169
153
221
221
195
178
236
181
257
161
229
255
177
196
164
207
185
206
163
212
166
210
139
231
221
131
248
258
172
231
139
196
226
147
181
194
208
257
181
139
198
204
200
155
220
193
217
203
231
190
217
174
165
182
201
156
233
212
240
180
230
132
183
194
166
164
174
215
181
181
207
227
200
157
161
210
230
231
139
218
264
144
201
137
262
233
220
120
192
205
191
205
207
158
159
222
264
200
241
178
208
182
240
184
143
174
241
277
186
218
219
238
162
145
198
216
176
245
184
142
208
186
180
163
191
160
186
227
252
192
212
247
198
180
202
148
202
229
207
181
260
224
239
186
188
210
213
195
199
214
211
155
144
208
215
243
211
190
149
199
151
217
184
158
218
191
202
195
182
256
214
225
154
128
193
187
209
178
181
261
165
165
300
219
180
216
196
125
204
208
166
260
199
191
210
252
228
165
110
159
208
206
246
143
204
176
209
215
203
162
155
142
218
177
209
191
194
188
197
174
205
239
214
168
166
190
184
214
208
179
207
227
196
213
208
189
176
255
199
122
187
198
170
188
209
179
198
193
180
209
171
257
175
224
191
162
216
243
216
167
231
192
260
259
152
182
177
188
226
146
181
220
190
220
206
203
205
250
236
210
217
221
274
194
229
195
180
153
208
182
144
166
255
162
224
255
190
198
246
179
115
247
168
206
207
181
176
244
218
208
189
220
177
228
234
173
197
139
187
233
204
154
148
206
256
251
204
200
230
267
161
214
209
158
165
203
197
142
206
247
236
218
215
175
203
178
231
232
245
239
215
215
160
223
225
240
249
202
251
189
206
193
150
194
269
219
195
242
190
122
278
188
210
178
189
159
247
164
210
192
201
188
247
211
165
201
203
216
200
177
216
206
181
263
258
240
200
241
248
173
152
244
194
178
203
191
177
193
244
254
233
96
192
178
181
239
154
165
208
203
170
194
162
220
198
234
148
171
212
170
220
164
259
199
218
204
167
152
208
233
177
181
183
219
241
143
229
156
223
187
130
187
165
217
187
149
263
213
144
189
196
180
242
210
164
241
113
213
208
194
258
270
189
192
209
214
229
227
227
231
211
160
211
248
231
163
197
193
162
160
195
218
207
209
187
220
185
243
183
228
196
166
179
168
160
159
188
240
244
181
265
150
159
247
147
165
236
252
144
231
194
192
212
236
167
174
192
176
172
198
188
171
196
223
197
152
237
217
169
208
199
223
260
209
157
247
132
180
224
191
197
206
221
171
245
181
240
179
186
197
226
236
130
233
217
229
109
207
279
210
165
221
206
220
223
159
156
214
198
219
210
220
213
205
164
201
205
185
194
180
237
216
190
220
222
189
167
202
167
241
164
183
157
246
193
167
210
247
156
202
171
155
209
146
189
207
182
168
234
203
177
196
222
140
188
196
176
201
235
227
199
199
175
179
191
228
266
182
207
174
182
241
227
173
208
137
223
246
198
164
209
213
200
113
179
190
282
163
179
265
220
153
182
167
217
222
135
209
183
200
185
178
223
179
184
186
181
183
206
229
241
174
155
119
181
242
178
213
227
231
153
240
235
209
202
199
223
250
213
255
177
168
160
217
260
267
260
167
175
185
149
168
204
269
205
255
191
251
195
207
203
184
186
94
218
247
239
235
165
206
228
217
227
179
247
175
215
239
149
217
221
197
192
121
248
241
247
289
103
219
233
233
239
165
225
216
138
209
135
272
206
162
163
168
122
162
192
156
213
215
186
207
170
215
149
214
206
173
228
218
155
167
250
247
198
220
240
210
229
196
140
195
182
239
220
250
199
189
177
189
156
220
191
131
284
206
239
214
191
243
210
288
259
178
190
182
158
175
194
247
198
230
220
237
234
206
205
206
209
198
168
180
171
200
180
171
214
276
215
196
245
255
253
189
234
239
214
166
202
180
183
213
209
265
198
162
207
211
184
243
225
209
200
235
216
202
265
195
107
188
163
214
279
219
187
230
163
174
164
223
141
196
276
216
181
214
188
160
242
215
245
192
172
227
282
128
209
187
202
185
175
216
172
191
160
229
189
210
246
252
185
203
190
229
223
174
189
231
211
170
194
165
191
211
235
230
191
214
232
172
221
209
170
155
261
138
125
216
167
209
237
160
169
223
208
143
133
230
167
215
97
209
236
189
245
222
212
215
181
273
148
173
154
223
187
158
188
247
196
189
227
157
207
214
235
230
228
186
121
185
201
185
229
204
137
234
160
200
224
233
237
180
172
203
132
202
215
184
260
148
203
253
220
164
177
207
239
210
214
195
168
204
194
194
216
150
258
228
212
210
202
233
134
148
171
206
199
181
208
203
159
196
176
198
192
191
229
142
251
191
236
281
235
188
150
167
248
176
169
207
199
204
214
221
255
199
208
160
228
184
270
174
167
222
198
230
233
165
240
165
192
190
198
240
176
203
231
169
204
154
210
231
199
245
205
198
232
148
188
181
220
225
226
185
180
240
203
162
200
231
201
254
181
167
139
195
234
219
211
198
211
170
203
179
249
118
234
177
252
244
205
208
207
177
185
163
170
196
195
143
236
196
227
177
190
148
218
177
217
176
184
181
213
202
168
204
143
186
166
209
213
209
232
193
147
247
218
188
153
209
140
150
240
189
163
171
195
243
195
247
147
219
188
198
193
224
186
223
214
212
192
202
209
230
157
236
205
182
176
168
253
236
183
176
215
197
247
223
164
175
156
179
196
176
241
232
232
188
174
214
194
159
161
153
145
258
218
171
213
198
184
222
222
168
178
186
189
205
189
192
150
170
227
198
167
190
212
208
206
234
229
226
218
165
254
269
145
155
167
154
175
224
131
232
217
184
209
163
180
178
129
179
187
161
188
144
169
219
231
154
188
250
149
261
217
222
181
244
191
188
201
232
245
184
180
200
204
230
273
190
201
126
249
138
196
167
181
169
242
148
183
155
214
238
240
244
187
254
181
130
206
197
152
229
192
231
171
211
249
165
240
211
180
294
236
195
224
266
132
201
214
189
197
193
202
225
219
147
206
228
219
157
199
223
165
206
178
101
179
151
232
239
278
155
197
218
212
129
197
199
154
171
222
265
214
232
167
244
214
246
168
178
239
161
193
212
201
202
145
151
173
261
205
231
187
242
200
232
234
194
166
247
145
183
210
176
198
183
197
160
241
202
218
205
242
172
228
198
216
242
206
172
137
134
199
131
254
176
200
167
163
214
139
232
251
199
194
182
163
196
172
159
124
212
276
232
191
200
231
236
135
184
165
254
180
188
223
226
237
163
158
179
200
241
203
232
188
218
205
231
235
192
190
208
133
217
203
226
169
173
151
157
246
206
216
225
242
250
225
270
196
160
178
223
159
272
201
168
147
225
191
162
241
169
222
234
214
198
185
198
194
252
195
218
167
160
197
224
203
222
115
187
206
206
219
159
188
201
180
141
176
169
163
178
206
124
150
174
169
229
189
201
177
133
180
231
272
187
154
206
202
212
146
176
212
188
146
160
188
231
170
221
168
200
182
254
207
175
249
184
197
212
132
149
232
252
202
162
229
204
169
239
141
231
194
162
145
165
141
204
221
250
100
189
212
236
167
242
158
175
177
194
231
268
213
250
172
202
181
187
236
186
216
202
246
228
186
176
184
227
211
210
176
192
222
178
204
239
173
173
220
169
227
169
178
177
208
222
175
249
112
148
231
161
219
140
237
170
182
173
173
272
192
164
251
187
233
203
233
165
170
277
148
204
223
203
202
237
160
220
163
177
170
146
174
198
182
175
262
227
236
233
238
172
230
209
226
179
194
161
182
225
244
270
240
226
232
173
172
211
166
222
222
222
219
230
196
218
140
227
184
160
242
162
209
200
180
171
180
186
133
207
159
185
255
164
195
230
209
230
252
210
173
208
207
219
145
167
226
119
222
173
151
228
186
236
215
141
228
179
201
226
236
234
226
190
168
169
179
131
217
183
195
140
193
149
148
142
201
238
204
224
201
170
182
161
203
156
161
154
192
103
175
219
230
260
230
223
164
223
187
183
212
238
245
208
183
126
208
197
183
194
159
156
278
239
189
181
204
198
184
215
195
138
171
197
160
144
256
218
196
218
196
209
177
222
216
186
176
229
239
209
238
212
215
204
204
223
229
171
187
195
168
197
166
261
156
139
220
215
163
177
171
202
231
172
198
177
110
172
216
204
211
222
211
213
171
159
233
195
237
206
220
192
182
194
176
197
206
209
203
205
216
178
191
142
205
200
210
183
226
235
226
219
196
180
221
125
235
202
236
152
248
207
241
205
206
110
180
206
136
244
236
178
186
227
250
239
241
236
191
169
121
196
189
190
101
220
221
197
199
233
271
227
166
181
197
181
167
241
189
199
177
186
178
150
189
202
188
241
245
217
219
172
207
137
210
199
197
239
206
162
226
160
160
229
190
216
162
205
177
247
243
240
199
176
268
198
168
191
204
211
248
212
217
216
216
183
229
160
184
190
185
206
149
158
179
201
176
208
212
247
156
218
227
134
188
224
211
199
209
185
216
247
139
184
202
234
150
183
213
196
179
177
208
167
209
193
284
243
143
276
206
187
186
204
266
164
118
221
258
182
190
179
175
161
198
209
182
191
217
194
163
194
187
140
192
207
248
222
162
241
167
196
201
202
217
161
201
160
164
189
172
201
189
150
205
174
209
214
111
214
194
159
231
189
243
184
200
212
239
218
202
204
188
193
203
159
207
146
236
231
174
246
204
206
275
203
121
242
167
164
189
196
213
191
148
224
215
199
226
184
154
189
226
235
194
233
187
195
241
174
199
261
172
204
181
201
202
242
173
204
274
217
220
163
235
217
205
155
153
194
223
188
176
196
188
223
221
110
227
191
228
254
193
189
158
205
193
144
208
189
185
191
150
196
171
202
222
165
179
187
133
211
216
217
231
138
209
231
217
203
218
191
188
229
148
215
241
227
234
178
249
214
167
239
214
162
252
196
194
202
198
188
196
248
241
228
181
176
191
162
258
196
246
257
130
174
189
200
194
223
289
165
177
208
185
231
182
231
260
214
231
227
218
230
222
216
187
182
214
166
189
232
189
152
212
217
306
148
192
237
260
163
207
201
188
185
241
222
212
236
183
163
197
228
177
147
217
225
241
170
180
196
177
129
189
193
144
192
230
202
224
167
199
251
213
237
217
223
183
211
230
225
209
150
174
209
172
138
176
168
219
241
191
219
175
182
236
201
192
172
192
112
210
155
219
239
125
223
197
215
176
184
209
209
219
248
176
198
171
232
270
250
228
195
187
199
230
178
203
200
224
219
193
190
167
291
148
259
173
187
248
151
217
209
134
222
154
193
217
147
270
181
180
177
146
142
227
178
145
146
200
214
217
191
120
227
210
213
191
104
182
208
240
238
221
180
184
245
210
133
203
185
167
131
156
229
218
223
205
259
203
204
191
247
239
151
196
174
206
200
149
260
209
196
169
255
177
187
124
199
166
207
164
229
202
250
249
142
212
247
186
178
171
243
220
258
227
201
211
210
165
180
188
186
190
207
213
183
162
212
119
168
181
227
275
211
248
172
193
263
212
191
159
195
273
201
201
197
196
125
189
160
234
282
239
202
178
219
244
199
164
124
174
217
167
212
125
191
197
220
215
212
164
185
187
176
279
180
188
198
226
189
160
195
189
257
210
213
194
213
183
205
198
242
207
144
167
206
155
185
260
250
174
201
161
221
220
206
243
241
218
163
173
222
232
151
193
209
199
186
194
171
178
196
205
231
183
175
198
190
228
164
219
183
117
191
190
154
193
141
162
248
151
204
151
206
189
200
188
186
229
198
188
103
159
243
182
194
206
226
223
185
187
204
211
249
205
177
244
200
208
177
173
195
210
155
274
195
216
176
157
201
219
286
177
202
196
182
132
185
184
188
193
177
190
178
217
208
242
223
204
183
237
137
205
158
194
182
197
178
208
178
210
225
220
184
235
201
232
206
188
164
213
231
171
219
127
204
216
190
244
156
185
157
143
197
214
186
175
175
233
273
239
195
230
143
208
267
185
257
269
175
252
249
174
173
214
191
212
136
216
218
206
188
163
209
176
164
226
165
164
259
185
174
224
175
163
204
151
175
143
198
221
216
223
228
219
211
194
198
257
183
191
221
249
142
201
180
143
205
190
138
222
198
174
215
234
171
172
138
201
248
174
213
184
200
176
221
161
246
213
174
223
161
196
174
230
226
192
239
209
221
223
190
196
177
192
211
206
100
218
221
125
258
182
192
244
200
200
187
199
187
172
202
206
210
251
218
218
182
168
157
219
127
242
235
183
221
218
192
194
159
173
171
132
205
215
282
162
210
211
227
194
172
217
178
234
158
157
229
219
225
170
218
234
197
219
240
156
139
263
169
149
206
198
140
283
162
198
136
219
216
161
217
182
218
221
197
197
210
213
200
214
225
224
256
176
215
222
220
217
128
236
225
150
209
253
174
223
208
175
195
210
240
139
202
196
212
156
121
190
198
185
206
290
131
169
186
237
221
163
235
132
172
149
216
264
236
171
183
176
204
269
158
195
201
228
171
208
229
193
180
109
144
175
237
227
267
151
160
233
192
215
226
211
226
220
205
230
203
234
226
163
202
170
197
231
169
190
208
265
216
207
180
211
222
149
210
231
206
193
193
199
216
164
178
203
189
191
194
225
207
186
221
207
242
140
216
252
224
151
190
184
211
168
241
209
205
250
234
208
209
125
246
144
158
229
222
225
179
207
227
159
244
137
231
183
234
249
184
164
204
240
252
153
169
240
213
218
237
233
198
226
240
187
207
210
230
165
229
153
248
219
202
234
174
200
180
222
178
226
201
226
194
164
185
199
203
185
207
179
192
253
170
206
225
242
204
233
218
217
157
242
202
214
176
203
277
269
189
179
181
196
218
180
250
214
168
196
181
238
225
228
250
194
201
215
282
202
202
195
188
212
223
238
146
197
163
206
188
210
235
217
158
209
171
219
258
147
146
161
223
157
137
217
228
185
233
225
214
195
215
247
224
227
211
202
177
203
215
240
200
197
291
196
134
227
138
278
200
143
233
196
229
243
168
243
145
231
165
250
167
189
214
234
193
234
223
126
190
210
185
217
164
177
199
240
167
183
230
227
246
177
129
160
226
190
194
196
201
198
197
201
235
239
234
130
189
140
261
189
165
193
168
191
196
191
191
143
214
255
217
224
206
230
222
199
172
201
156
198
158
181
191
221
196
141
186
231
196
189
256
205
233
243
175
211
220
194
152
223
193
248
226
216
204
130
214
250
211
254
145
239
123
128
232
150
229
223
217
222
177
224
168
224
220
169
197
205
247
183
207
186
226
192
182
245
160
226
190
237
231
132
197
208
297
186
180
187
245
131
200
230
212
159
198
224
210
170
212
190
249
220
154
216
216
189
179
200
179
249
200
148
199
179
151
237
203
170
207
248
186
180
178
225
224
172
241
226
174
149
250
218
195
163
206
149
174
183
176
181
191
192
228
169
118
175
249
216
160
157
276
197
211
166
188
184
214
242
197
199
175
151
195
189
226
249
151
257
242
207
174
210
241
253
201
215
164
154
164
201
168
215
216
185
197
251
157
213
256
225
241
136
164
228
239
184
204
108
258
169
185
164
219
137
258
254
203
157
198
246
210
224
167
211
241
200
157
229
195
202
163
174
225
157
204
221
236
200
233
198
218
190
185
181
182
201
176
237
218
211
229
255
219
186
166
162
189
172
131
183
176
215
124
166
250
230
173
165
231
163
167
254
212
194
128
180
182
211
182
141
183
238
167
125
227
230
272
183
201
224
248
176
248
262
182
217
247
149
237
234
219
211
198
190
268
153
110
200
192
213
152
190
158
209
215
241
242
178
234
202
220
200
218
242
227
196
166
244
192
212
155
188
176
169
244
127
235
243
199
195
204
222
243
254
224
149
179
214
231
161
180
198
211
241
215
191
190
148
154
152
222
188
208
180
207
210
164
245
240
221
260
178
138
194
224
254
208
194
188
206
219
232
181
219
260
189
239
213
228
200
226
248
157
214
244
213
247
245
207
161
190
230
169
213
191
224
169
174
227
207
226
199
188
212
239
177
232
162
249
243
189
151
159
207
193
216
221
227
196
182
294
183
181
240
188
254
189
184
119
243
166
138
175
221
203
210
242
183
193
166
162
210
186
178
204
212
173
251
254
200
193
235
225
201
193
155
266
211
180
178
192
232
163
246
189
193
152
223
216
213
168
222
213
222
157
199
223
220
231
236
247
200
255
227
177
180
185
230
252
237
212
216
212
168
176
214
170
185
243
256
144
201
205
236
170
176
234
235
202
249
195
194
171
173
217
171
216
194
232
197
168
196
209
224
205
194
237
221
214
220
218
178
214
189
181
126
159
186
174
206
183
193
233
182
274
223
267
160
178
220
217
204
247
224
228
205
128
255
216
191
190
233
205
235
224
155
251
182
215
217
204
169
207
198
197
216
235
241
219
232
125
154
193
197
259
228
210
151
255
216
265
178
157
174
143
203
221
232
180
228
144
148
175
266
244
198
171
208
171
224
193
190
203
203
141
233
159
219
151
229
207
226
219
200
237
208
170
242
214
153
156
207
184
213
229
187
176
235
182
169
225
146
220
172
214
166
179
211
183
159
224
148
139
257
220
250
184
229
286
201
213
192
142
168
156
219
223
185
200
195
180
198
230
183
158
157
129
217
201
162
177
124
161
216
207
169
212
154
214
186
217
197
148
170
220
179
242
168
223
211
163
237
242
236
242
197
201
142
175
292
189
190
165
151
213
219
224
291
231
231
283
217
228
221
230
175
217
241
166
199
211
211
158
206
115
158
194
139
204
275
243
261
227
194
168
194
148
206
162
279
229
167
207
182
203
270
163
201
199
121
159
212
248
202
185
237
141
191
187
244
183
252
237
209
263
189
205
183
200
227
143
224
184
192
233
203
213
204
211
178
240
262
218
244
171
153
238
211
275
203
202
165
172
144
195
221
191
220
131
158
255
121
226
117
150
191
126
179
182
230
238
182
203
160
182
206
162
237
161
177
227
205
178
281
149
231
207
176
198
196
216
203
172
213
203
218
253
256
133
172
219
195
151
237
243
274
182
166
220
190
166
257
229
206
194
248
227
109
218
151
181
211
170
183
176
213
172
199
131
205
241
251
233
159
250
186
194
173
165
221
204
229
176
179
192
290
222
201
163
187
213
187
211
173
237
224
193
223
222
242
222
218
281
187
200
227
246
232
173
191
217
150
249
116
222
239
201
157
202
252
184
218
224
176
235
172
172
166
246
193
152
164
178
164
185
210
222
243
186
296
147
158
182
225
194
212
245
204
136
158
198
214
210
231
242
191
234
208
217
136
193
160
178
189
234
169
151
285
198
162
226
240
235
231
180
189
246
227
264
176
127
206
198
187
162
276
217
170
203
196
268
168
227
202
155
195
191
187
145
226
195
177
190
186
171
253
264
166
174
205
172
213
166
198
202
233
188
173
164
208
235
252
196
174
174
234
227
171
188
207
194
202
198
156
198
219
191
234
197
225
159
192
172
237
200
247
185
227
188
221
162
179
190
219
239
172
220
179
220
235
216
241
189
208
205
192
219
192
192
225
89
160
167
214
235
230
221
182
186
143
213
175
196
189
272
202
206
249
191
221
204
154
160
224
258
235
149
206
133
209
187
236
216
161
187
162
190
196
227
249
208
196
209
243
174
240
219
177
230
184
185
245
212
182
172
236
193
210
211
198
201
188
235
133
216
273
151
175
195
185
237
176
215
198
215
158
151
201
193
208
191
185
257
188
268
195
199
236
222
207
133
223
245
242
217
212
213
200
164
242
197
190
216
176
128
192
252
206
189
178
143
181
205
209
217
224
159
177
155
146
218
150
180
191
245
245
191
179
135
213
136
210
213
279
214
198
249
179
225
184
206
229
143
152
188
174
225
204
227
192
186
258
202
193
202
212
233
188
192
246
212
204
205
235
169
243
195
222
251
190
158
252
180
192
200
198
206
159
281
241
221
240
176
179
161
231
209
188
218
193
135
151
174
176
224
213
201
221
194
180
222
258
259
139
263
203
173
209
175
168
228
160
269
216
182
259
217
201
172
159
202
149
202
190
236
184
160
232
210
216
152
237
224
238
211
198
190
184
188
189
188
198
185
227
167
207
216
198
213
176
171
204
196
213
178
192
198
167
204
248
241
203
250
268
148
192
224
216
229
225
252
180
136
244
241
241
138
168
189
150
232
239
259
145
193
232
220
153
219
234
216
177
176
226
168
162
174
188
235
239
153
241
149
168
169
206
275
206
186
184
180
230
190
167
127
221
244
118
188
191
208
258
203
258
177
219
202
242
206
224
222
233
221
243
204
170
165
187
163
262
202
226
189
120
199
167
242
190
177
142
228
182
159
188
192
210
217
208
181
166
239
177
230
185
216
201
117
156
215
216
199
215
208
184
211
248
186
240
179
223
177
203
158
135
183
186
265
195
182
226
166
242
209
213
204
198
140
176
166
225
138
269
167
201
247
200
220
233
233
200
169
216
233
190
138
197
229
210
242
195
222
240
260
182
199
243
215
221
205
254
187
192
187
240
211
185
186
207
237
197
176
249
147
168
189
166
223
216
186
154
260
228
227
246
273
235
168
189
227
219
184
185
163
107
172
185
170
234
159
252
174
201
118
181
204
184
180
163
224
225
211
247
217
189
255
190
145
215
239
179
225
227
218
196
216
269
251
150
130
137
218
291
241
239
197
165
193
158
212
192
201
201
144
152
183
207
135
180
211
191
232
226
249
155
216
227
196
224
234
202
208
253
182
259
179
175
246
217
170
157
179
160
197
186
240
233
187
206
181
239
199
240
269
172
262
181
193
194
295
129
187
209
210
172
235
222
158
217
232
205
167
254
218
244
205
150
273
182
148
198
216
170
209
124
206
190
156
234
172
158
137
112
190
163
181
239
175
192
217
216
181
185
228
174
210
196
225
203
209
227
184
195
217
217
178
213
219
174
264
139
231
154
252
168
150
229
140
214
183
189
149
219
165
157
191
187
221
224
279
201
175
189
209
224
136
220
214
263
224
146
226
244
215
188
168
211
187
270
170
182
231
198
148
191
197
203
213
170
267
173
224
209
179
182
138
239
188
234
152
173
228
263
113
244
202
189
188
203
207
127
180
197
166
271
176
171
236
222
134
230
147
161
223
186
166
156
254
185
208
186
197
210
200
229
241
204
202
219
198
235
191
185
185
152
258
210
182
175
173
226
171
205
178
221
194
195
219
217
180
236
213
191
229
173
166
136
207
168
264
192
276
213
175
191
203
200
139
210
239
179
209
234
188
167
197
232
225
189
234
246
224
179
158
116
280
208
262
206
192
211
179
270
161
231
170
218
127
242
201
137
273
172
242
156
177
172
185
179
176
164
201
211
251
216
166
207
203
190
207
243
227
193
214
173
144
214
184
199
231
218
252
195
199
212
224
218
191
170
245
174
195
241
201
127
210
185
178
167
159
160
213
202
104
232
170
232
208
199
126
191
252
155
147
187
238
176
232
253
224
190
196
211
146
228
231
227
188
230
189
192
215
231
188
236
230
218
189
190
189
249
210
128
143
253
229
177
161
139
191
254
214
167
270
170
208
103
202
192
163
180
249
214
167
236
184
211
203
192
199
88
176
228
267
242
230
142
204
164
171
224
241
230
182
237
239
242
133
203
183
207
215
215
202
240
238
202
223
199
194
177
200
207
242
179
250
207
254
239
194
212
204
118
213
229
177
144
179
187
189
210
230
200
215
219
219
185
191
228
175
118
197
221
210
197
244
219
234
196
161
201
193
182
253
207
222
231
185
161
239
116
172
182
163
232
188
200
201
226
190
215
192
209
202
193
182
238
190
215
177
178
217
188
227
238
244
222
216
193
169
212
161
205
165
227
156
180
166
194
264
245
242
221
174
215
213
217
185
190
227
169
142
209
213
151
228
190
228
180
195
215
178
185
217
185
245
211
197
219
202
205
240
166
163
201
158
256
236
205
184
174
190
244
189
224
199
180
222
199
192
238
189
236
220
161
226
184
168
189
189
137
203
236
215
245
233
129
243
128
179
232
225
139
234
177
247
259
242
237
220
122
157
189
168
175
152
263
250
160
197
201
243
183
217
212
232
174
142
196
193
177
131
196
200
204
235
245
204
186
216
195
142
259
114
237
188
233
226
204
219
122
221
217
203
236
256
196
158
182
197
221
207
212
214
172
234
181
193
199
182
189
221
229
202
180
242
211
192
189
177
160
234
218
204
185
195
234
212
227
189
194
244
152
245
146
244
155
239
208
163
163
145
248
215
185
221
203
122
259
180
196
210
188
205
223
186
196
126
219
224
184
180
234
225
154
217
207
202
194
164
227
219
275
248
209
145
130
229
283
192
217
229
171
218
186
133
215
156
182
231
206
255
142
171
212
240
209
207
213
207
144
181
229
209
233
197
238
222
172
207
150
204
254
200
204
139
206
218
161
139
224
198
187
196
225
224
241
198
224
278
165
201
154
245
188
160
183
216
152
140
231
201
213
150
183
162
202
184
272
192
204
175
154
170
163
250
203
224
247
197
184
211
275
177
219
188
124
248
241
200
186
253
188
221
256
192
203
212
204
162
141
215
209
222
249
193
216
202
202
210
159
243
169
170
163
197
234
211
284
150
219
169
153
161
118
177
198
206
207
210
156
135
214
188
141
163
224
264
234
225
190
168
185
146
209
152
126
212
182
213
192
216
175
199
141
213
140
190
179
157
252
181
239
249
219
212
201
154
160
226
180
175
255
199
176
255
230
236
268
180
269
222
220
211
143
202
255
182
228
212
233
184
256
185
190
167
202
205
246
223
199
222
232
247
197
248
124
203
235
147
194
276
141
204
193
192
229
199
222
160
179
153
230
213
237
217
227
232
167
145
179
130
219
168
158
210
177
167
243
279
75
179
217
176
254
173
236
175
217
190
226
184
235
186
156
209
251
158
223
212
194
171
240
223
163
150
216
251
183
181
234
149
232
213
227
213
220
185
134
203
156
170
188
231
168
224
222
166
183
203
174
205
257
225
170
252
226
159
175
249
238
189
197
232
208
202
236
204
166
239
207
133
182
210
232
248
242
231
191
138
213
190
163
179
180
164
202
201
202
177
226
204
208
230
200
201
156
188
161
171
194
176
162
204
225
150
203
198
193
243
103
263
157
169
174
248
227
220
186
199
238
208
220
227
170
183
167
222
216
186
167
195
202
256
274
218
205
205
161
214
181
168
181
217
202
242
198
213
201
176
222
156
180
235
200
220
179
181
176
260
244
127
154
129
238
214
235
167
193
163
195
228
221
214
214
207
161
224
218
225
232
262
127
138
236
182
253
199
195
219
133
171
249
225
152
192
199
212
202
242
199
239
236
203
182
208
207
212
198
193
200
229
220
204
161
228
181
253
231
198
216
198
250
206
146
203
223
159
236
244
246
176
137
183
178
189
189
230
196
200
147
182
230
184
190
175
201
166
171
273
251
202
226
246
180
115
219
236
222
215
186
245
236
240
180
199
236
202
166
165
238
205
213
190
235
241
187
215
132
200
167
220
226
193
228
146
231
202
141
203
185
221
234
201
201
240
165
111
148
256
162
227
195
184
161
200
152
274
208
188
221
204
249
202
164
210
192
208
198
172
160
184
209
234
244
239
216
280
192
219
143
185
165
211
155
215
167
225
210
201
193
209
230
212
190
223
163
220
187
181
219
161
207
184
170
224
185
241
187
184
200
239
228
194
206
243
242
217
192
231
253
182
133
211
201
183
254
218
230
243
262
209
199
167
190
148
185
239
130
179
134
251
152
244
181
215
204
215
188
235
213
197
236
209
176
214
234
189
118
170
134
130
183
193
170
152
225
163
224
252
215
208
198
197
131
209
238
224
230
216
197
148
226
205
259
160
167
238
222
177
173
190
178
227
190
206
178
223
160
250
204
198
179
158
167
226
234
182
209
178
199
187
263
187
165
227
184
246
141
201
190
251
209
236
274
172
147
240
202
178
236
193
193
201
164
209
251
223
229
242
158
237
177
192
194
236
211
193
171
174
194
146
237
151
145
232
177
175
216
224
151
199
206
211
251
194
243
202
219
157
243
179
222
186
171
225
214
217
236
151
213
170
206
205
206
203
246
150
180
254
224
206
250
112
274
161
197
174
160
151
153
164
207
222
251
228
191
253
208
153
226
205
200
129
206
207
205
194
212
239
226
193
189
189
195
162
188
164
231
165
176
190
205
165
177
208
236
245
208
212
270
224
202
122
206
221
194
196
207
170
170
162
150
237
172
189
184
147
286
181
202
228
181
197
208
127
210
210
187
190
245
196
221
236
201
239
227
191
269
283
214
205
277
199
170
226
284
202
227
183
210
171
216
108
267
147
155
201
200
241
182
166
150
219
178
172
217
177
246
186
219
167
161
166
122
213
159
220
210
154
208
160
213
145
183
208
264
191
212
212
255
179
159
201
206
96
204
184
169
174
268
191
183
216
232
178
183
208
220
166
176
217
204
173
263
245
145
176
190
182
186
251
147
196
193
258
151
202
174
201
132
206
237
172
153
184
192
239
156
180
200
230
211
189
221
122
182
114
212
218
192
212
179
224
224
160
205
230
226
163
197
239
170
127
162
175
164
205
160
235
147
164
195
176
197
226
154
186
183
190
137
201
199
162
255
186
172
224
172
241
224
212
226
197
179
186
198
171
225
212
152
220
214
243
176
170
166
235
191
213
214
157
235
170
236
136
158
182
192
205
212
186
258
236
190
196
193
219
135
235
200
191
208
200
165
148
151
225
177
204
198
143
203
188
207
208
183
177
171
223
185
181
240
240
216
142
255
188
186
185
167
253
232
229
254
225
182
203
188
180
202
164
202
198
148
183
172
222
194
148
193
161
187
236
199
168
228
196
245
189
222
210
247
201
189
189
117
250
195
217
131
203
192
149
267
152
205
236
191
185
195
177
180
181
213
207
145
252
177
192
133
237
192
194
225
217
219
218
190
245
218
197
201
216
203
193
243
192
264
228
190
200
165
221
199
109
191
155
275
240
201
225
209
175
152
220
147
228
199
228
238
274
223
212
225
149
148
223
177
224
181
224
214
151
207
177
189
213
175
169
195
200
243
198
173
217
244
176
246
227
177
231
171
162
223
246
162
217
250
186
178
209
160
223
199
192
215
278
136
207
191
206
144
200
242
172
185
202
228
265
242
182
179
189
215
238
136
215
182
252
240
232
146
163
194
184
153
221
211
216
259
262
127
188
207
162
226
218
255
160
188
224
189
189
216
184
194
271
213
214
190
149
205
210
214
144
168
165
208
130
211
151
181
121
144
230
186
233
222
261
162
183
229
203
222
129
221
219
210
199
164
215
277
128
207
178
303
197
164
259
208
173
213
198
206
139
165
184
179
228
208
196
186
189
138
212
224
186
220
131
247
279
150
223
220
152
184
261
228
181
193
229
255
225
248
236
197
193
212
185
193
197
260
213
157
250
182
173
218
160
222
144
194
174
245
228
201
193
242
155
166
208
236
198
235
218
202
195
240
178
237
212
237
160
187
233
169
244
228
171
178
167
221
184
220
188
190
210
147
219
232
183
220
157
232
148
189
230
214
156
213
214
156
198
184
179
140
230
192
225
211
174
198
187
210
269
211
198
219
204
272
125
218
265
209
219
261
243
162
180
197
208
153
187
177
217
126
209
193
196
241
238
203
191
253
206
202
229
241
173
200
170
204
241
217
154
90
276
209
181
212
254
204
128
225
201
157
158
211
222
255
210
188
251
203
173
196
238
165
169
176
197
277
175
241
219
219
199
227
213
238
177
216
166
182
193
212
141
225
148
145
202
221
165
166
197
201
225
228
223
234
249
194
184
218
140
259
159
168
217
175
197
212
159
170
196
194
225
219
134
215
190
145
142
234
183
215
158
185
166
175
178
240
196
204
171
190
180
206
173
227
231
166
220
237
230
267
224
252
162
183
187
214
214
256
230
207
197
215
261
160
200
155
132
212
193
211
207
209
209
166
175
183
203
226
226
148
195
213
206
184
224
174
163
196
136
212
177
251
207
190
183
185
154
244
196
197
202
195
218
200
160
202
156
178
203
208
200
193
194
201
198
230
195
175
217
203
202
130
215
212
213
214
188
258
165
269
238
162
211
252
234
231
236
183
162
203
219
208
218
238
210
261
156
198
219
214
172
179
253
237
261
201
202
197
212
224
154
195
206
160
207
182
136
215
223
238
209
203
229
161
206
243
216
178
202
215
192
138
173
246
258
181
181
238
258
179
184
213
229
228
214
191
162
212
183
211
203
261
221
213
220
195
227
201
206
233
160
182
193
209
170
242
184
197
182
224
224
230
208
214
216
170
259
166
156
204
202
191
171
204
178
304
218
166
184
260
182
235
275
135
218
240
232
155
165
225
198
229
193
122
177
143
186
174
176
235
128
188
230
178
159
224
288
196
161
203
212
215
209
187
235
229
231
209
214
202
149
179
199
203
232
241
178
150
212
231
210
180
187
219
224
176
181
215
214
222
265
214
238
243
189
188
197
213
186
228
321
223
188
201
203
263
204
213
220
161
181
214
247
159
230
205
246
192
177
236
169
276
145
203
186
208
230
211
192
253
221
245
225
166
212
232
192
212
160
251
237
174
265
156
216
230
217
206
188
233
186
264
203
215
163
219
217
203
184
172
145
199
199
147
213
260
192
170
162
161
207
177
192
220
200
214
140
183
199
169
293
180
228
287
239
216
175
202
211
238
176
208
167
270
236
207
217
186
180
203
162
222
173
218
246
210
176
206
241
107
168
199
153
182
231
194
245
224
206
180
188
231
189
223
263
251
167
235
182
155
191
204
179
180
258
214
233
163
163
272
234
299
236
228
195
181
216
132
210
147
147
142
192
188
216
206
185
239
303
210
211
217
189
213
193
187
174
172
234
169
250
219
225
239
197
214
240
159
212
214
200
227
201
201
193
183
173
167
172
165
226
182
194
192
131
190
213
213
223
200
229
173
176
205
156
255
268
211
150
190
194
182
219
158
216
161
201
206
185
189
220
255
195
186
218
219
234
245
211
189
134
141
216
201
186
252
244
187
194
153
198
196
256
178
256
244
158
178
205
177
223
224
189
251
193
189
188
258
167
216
162
230
218
242
168
162
197
119
212
242
203
163
212
202
145
159
160
234
230
179
203
174
228
206
213
147
215
182
206
214
251
167
194
240
153
177
239
234
233
197
242
228
162
191
210
244
173
281
202
200
211
221
205
181
188
250
191
210
231
152
151
168
235
167
137
221
205
230
211
180
206
200
251
173
161
193
241
188
163
246
236
257
178
200
202
252
183
141
174
227
169
215
220
161
188
146
200
208
164
245
153
199
224
232
185
154
179
142
207
201
208
157
230
251
169
226
171
171
205
176
204
183
198
235
188
169
257
222
160
185
200
227
182
178
247
236
153
279
169
240
203
121
184
194
171
226
260
209
135
227
202
202
254
156
255
161
225
218
188
238
140
149
243
169
205
225
192
133
210
159
160
254
200
180
245
198
211
225
235
208
173
198
166
196
188
232
254
193
170
223
258
204
239
225
235
199
185
168
204
150
146
177
197
209
250
204
150
196
141
209
172
174
198
222
168
203
173
217
199
225
133
205
195
241
220
231
190
266
223
165
204
182
177
204
167
143
204
275
173
181
215
218
144
182
253
189
126
204
185
241
219
146
184
203
247
189
246
179
244
247
175
242
222
194
249
206
218
248
207
179
237
182
207
189
186
260
247
187
221
177
237
153
204
237
163
186
254
158
238
204
219
217
241
200
214
99
224
197
197
198
240
155
194
206
148
169
203
192
163
224
196
216
222
132
263
243
173
150
218
159
171
261
198
228
116
164
205
285
193
262
187
230
187
200
249
224
182
218
229
192
195
190
147
208
258
239
215
194
251
207
193
165
238
151
225
191
138
215
206
218
211
137
172
163
174
251
204
205
195
205
230
157
193
192
194
201
183
169
247
179
157
145
130
172
199
131
157
213
205
226
187
142
244
248
185
193
235
201
210
123
193
190
273
159
212
231
192
185
225
196
160
137
216
258
168
169
210
185
224
169
207
230
162
210
188
165
196
218
152
227
149
216
220
210
202
219
181
224
232
195
206
230
220
191
190
260
164
153
216
176
173
144
173
233
155
253
214
247
187
206
281
187
245
254
176
166
215
237
188
234
169
158
232
186
147
176
162
202
191
200
214
208
246
157
203
211
242
203
220
216
160
242
217
176
173
181
229
281
169
163
273
200
227
201
224
263
198
218
229
126
141
220
197
229
204
162
202
193
222
258
219
189
247
233
248
143
185
228
152
265
202
226
243
188
190
155
162
178
227
227
231
184
187
186
240
244
228
191
181
263
274
147
182
159
212
239
191
211
222
192
276
214
201
185
220
226
183
166
198
223
196
180
230
224
176
161
211
188
208
212
222
200
190
230
156
205
195
213
199
213
252
235
229
215
241
169
183
241
209
251
190
175
170
157
173
191
219
205
255
112
221
208
228
212
184
232
158
221
176
180
227
201
105
239
220
220
220
231
221
200
197
178
183
222
166
166
235
244
141
204
192
215
170
179
205
167
155
205
208
133
212
276
170
163
241
216
194
148
147
216
208
139
160
178
261
205
161
195
216
191
192
177
160
239
212
202
192
188
132
216
209
210
240
224
170
198
226
234
195
159
191
189
185
165
219
121
211
270
169
188
108
229
119
171
222
244
181
194
201
183
209
167
206
202
238
222
219
146
271
235
209
212
254
229
237
227
158
183
203
171
200
200
186
207
208
263
176
177
205
195
250
227
193
232
220
243
223
203
158
200
184
240
145
236
177
251
192
233
270
175
210
211
214
173
151
183
176
186
170
221
225
230
128
223
224
198
234
189
214
192
159
225
255
181
197
168
138
146
195
166
191
198
176
222
230
161
187
213
126
212
216
169
194
257
201
220
196
212
236
146
180
146
185
269
124
195
221
179
241
190
206
196
163
235
216
243
261
188
159
176
209
173
260
183
199
228
217
251
253
190
203
203
248
107
179
202
165
183
146
166
188
231
205
179
197
227
230
279
203
170
171
167
224
184
216
193
191
206
223
183
251
198
174
202
189
174
169
236
250
263
197
181
195
195
207
234
190
196
199
193
162
153
196
189
173
139
157
228
197
204
219
209
188
156
179
223
252
227
246
200
170
213
218
219
204
253
156
246
212
211
254
234
206
182
212
192
217
190
214
171
213
190
127
186
111
242
206
189
219
174
221
218
175
274
220
166
210
223
234
149
209
223
231
180
188
171
139
189
230
183
157
184
223
216
231
160
220
157
187
202
174
206
193
199
184
173
237
230
144
187
152
233
190
138
212
198
131
234
200
207
188
210
209
204
177
170
217
221
224
237
275
222
184
194
192
149
212
188
150
235
212
190
206
200
186
217
215
223
186
214
161
242
190
188
207
220
217
223
202
199
231
223
156
189
222
220
181
154
228
186
218
190
181
179
160
180
240
189
213
196
193
214
192
249
251
177
148
197
187
210
261
218
188
244
145
225
163
184
234
236
164
217
241
137
155
262
176
252
228
218
184
188
157
188
191
223
183
137
184
182
215
200
104
166
233
168
201
145
259
177
250
193
175
145
205
188
193
220
192
188
198
173
190
192
205
122
149
175
178
142
218
185
222
207
215
219
247
199
242
192
196
231
206
195
251
172
183
262
179
166
141
221
209
230
180
184
225
130
247
221
216
200
263
157
171
213
172
222
183
214
251
230
188
195
233
201
184
164
248
195
145
214
228
171
190
199
260
257
228
198
172
177
246
210
199
193
105
211
204
209
203
137
194
203
168
196
237
167
222
199
250
190
202
227
232
178
173
198
168
215
217
192
209
242
220
250
166
205
230
202
196
217
178
188
161
164
212
208
188
179
170
149
174
225
226
208
178
170
215
204
241
135
166
221
176
135
178
180
201
209
186
206
191
216
186
193
214
166
211
169
200
120
231
158
268
239
213
163
155
236
161
222
213
222
218
195
220
242
223
185
235
198
229
210
211
115
215
156
206
206
218
215
211
189
228
170
272
220
123
183
192
175
194
227
237
229
205
218
256
204
225
139
189
218
208
203
243
186
215
182
230
234
228
141
143
129
227
155
202
157
236
182
211
203
250
177
172
180
195
156
178
241
177
235
182
213
224
175
153
255
194
128
193
164
194
203
223
224
214
180
247
203
186
202
186
169
223
155
173
197
217
200
220
177
221
162
171
235
213
177
175
205
222
231
208
243
237
203
161
240
158
215
217
117
123
260
255
210
191
277
179
174
217
214
200
215
190
210
227
130
160
223
157
216
208
171
261
226
192
171
190
157
230
162
228
131
179
189
244
196
213
222
233
154
215
196
217
177
228
204
227
244
170
195
201
227
210
126
174
218
159
183
138
232
219
224
210
202
127
198
231
186
198
189
160
174
179
219
253
193
162
183
219
172
210
200
192
181
156
184
151
209
220
143
229
169
295
193
225
134
182
202
179
220
213
261
189
164
216
197
193
99
246
213
243
118
236
250
196
216
257
191
199
168
236
247
206
225
193
159
159
205
166
160
257
232
225
188
179
216
215
249
255
259
179
195
221
155
240
122
210
157
221
145
202
176
221
164
214
209
234
232
190
180
218
259
227
189
163
232
208
146
218
202
221
150
185
218
227
139
190
190
198
203
174
242
279
195
210
129
248
249
158
180
201
187
218
180
253
248
158
174
236
249
216
140
238
226
222
197
175
211
192
215
196
233
176
151
210
199
214
196
231
176
177
235
221
235
160
209
192
234
194
207
174
204
231
169
166
228
158
192
177
268
200
236
172
232
190
135
186
228
239
174
230
160
164
160
207
270
257
234
217
242
260
195
263
197
221
175
160
134
225
224
214
167
215
214
219
186
158
158
212
199
197
206
250
226
245
205
176
163
218
219
233
207
194
204
131
221
202
189
236
186
134
209
161
206
243
175
186
231
196
225
181
209
214
230
235
153
231
242
234
220
177
159
202
159
258
212
183
149
269
197
187
178
153
205
132
201
140
199
211
228
135
224
203
231
244
147
222
194
187
209
168
151
236
185
215
259
245
241
201
254
169
160
238
169
217
173
166
170
168
220
196
161
170
179
214
202
199
215
190
170
164
175
207
225
224
188
165
213
232
195
198
198
121
167
192
275
170
218
168
147
268
226
161
183
212
148
207
206
172
138
188
196
152
159
223
175
150
166
207
159
233
144
190
150
169
222
220
250
215
218
205
196
146
235
234
153
217
218
132
169
162
184
236
172
200
207
191
116
206
238
240
177
191
235
173
198
178
216
176
179
173
226
174
241
183
204
197
174
195
217
219
189
157
239
172
226
248
239
184
207
247
165
172
213
239
186
172
183
262
167
246
264
183
178
234
177
171
224
188
165
150
201
192
229
216
221
184
155
164
216
115
235
220
163
198
217
229
191
209
202
222
223
186
154
202
147
269
271
164
194
143
205
239
235
129
207
205
154
249
165
195
163
188
208
115
187
221
258
163
191
165
264
178
153
202
249
171
194
180
205
158
162
210
237
204
237
223
224
176
206
166
213
179
177
226
209
149
178
254
190
129
227
217
199
191
167
158
244
245
193
168
248
181
164
213
139
233
162
162
268
192
241
220
259
208
182
184
117
206
246
266
247
245
181
181
234
274
172
226
235
230
128
263
189
193
245
211
203
194
215
235
140
184
261
219
174
186
137
158
160
138
209
157
219
242
194
235
208
237
200
164
245
197
200
247
184
186
166
205
203
204
180
229
211
205
217
198
157
135
181
193
174
201
240
207
223
148
242
233
188
175
162
219
194
147
200
220
219
205
161
185
179
162
150
176
263
199
173
201
141
217
182
200
213
260
220
170
204
210
153
216
221
215
197
164
181
219
227
206
235
215
190
254
174
219
166
151
232
185
222
197
165
209
250
221
223
204
175
183
215
137
154
209
169
226
203
218
206
269
169
217
114
167
224
171
216
212
235
170
231
220
215
221
253
188
228
187
175
138
163
223
197
223
236
194
211
214
180
226
155
266
200
222
132
141
221
194
214
212
184
175
203
150
138
230
207
234
162
226
201
213
239
194
258
192
187
181
235
222
192
195
185
211
222
135
235
240
221
255
197
185
198
231
163
204
159
223
202
208
207
188
162
191
199
184
215
207
176
158
229
268
204
176
288
211
136
234
178
209
215
181
201
211
230
216
160
205
182
247
191
205
166
190
265
244
244
164
149
189
176
141
199
188
211
184
202
220
201
234
233
213
182
141
137
179
185
182
219
203
240
240
178
192
245
179
221
204
225
149
205
236
212
224
211
230
216
234
181
229
152
143
129
221
187
189
189
168
246
226
192
200
237
205
181
231
250
183
184
237
237
173
211
206
149
204
200
179
220
242
157
197
162
170
245
225
235
226
151
208
169
233
185
183
174
145
166
145
175
258
223
226
168
199
190
238
158
225
170
180
257
243
182
232
156
149
161
200
219
210
122
213
258
185
176
195
197
160
246
235
201
217
184
203
179
227
201
185
217
177
195
211
195
173
171
238
205
205
224
180
139
171
160
192
222
228
225
180
170
206
237
231
193
164
245
145
177
258
136
210
209
243
220
150
211
259
212
162
222
164
208
143
186
223
181
202
180
205
189
144
219
167
208
221
261
239
271
188
245
220
206
160
205
227
239
180
220
252
253
163
236
208
189
217
214
193
174
219
253
203
248
152
222
225
237
213
206
234
148
177
197
213
202
215
168
193
195
242
182
185
227
242
183
239
212
207
189
221
138
163
154
180
199
221
226
213
198
180
207
201
179
229
174
216
136
198
181
153
153
174
148
208
181
197
189
159
214
198
182
198
158
140
177
188
171
212
205
249
252
191
240
228
188
212
220
265
195
155
194
180
173
226
197
223
164
157
221
199
202
232
219
210
200
135
192
216
202
161
226
233
165
194
162
197
196
198
249
164
200
293
220
217
278
169
186
160
232
241
268
244
209
162
215
178
198
213
189
183
164
217
280
246
224
217
238
171
197
191
130
156
233
183
175
137
247
184
207
232
206
139
256
150
165
188
250
220
196
184
177
237
207
176
199
209
205
188
183
138
194
276
197
240
184
208
258
180
186
196
170
267
224
189
225
170
223
242
205
215
229
167
246
223
203
232
243
231
221
233
150
118
192
140
251
193
176
209
186
150
179
250
174
200
173
180
225
156
240
205
222
186
239
196
208
192
159
262
252
190
194
173
206
233
178
218
166
172
277
171
236
189
227
219
196
260
255
216
222
214
285
145
180
243
239
260
161
188
202
250
232
172
182
219
203
244
192
199
126
208
215
141
239
158
141
242
206
264
214
193
232
171
240
162
177
181
183
203
179
223
212
228
199
269
203
232
229
172
167
178
137
203
194
253
224
225
158
219
210
244
266
222
178
179
184
216
258
208
209
176
214
223
192
214
152
181
206
175
195
152
186
225
174
201
272
266
182
261
192
225
232
208
206
108
189
284
156
220
181
209
201
186
208
213
195
139
185
229
212
218
163
175
201
181
188
176
188
232
236
169
232
213
192
169
203
160
251
205
208
212
196
163
184
171
199
273
220
193
236
173
197
213
185
197
202
195
232
173
229
208
153
217
194
182
190
203
214
185
167
214
287
243
157
190
253
190
240
219
216
202
210
199
200
183
242
150
171
130
220
184
187
244
234
226
215
267
131
239
244
211
224
257
76
159
182
230
204
232
135
254
207
237
189
244
194
202
154
257
208
233
217
140
198
229
160
262
164
255
256
161
193
202
179
220
231
150
271
204
140
135
153
169
176
207
238
219
197
214
193
255
128
180
207
137
208
207
239
163
168
131
178
164
202
225
208
209
173
202
219
236
210
203
256
208
208
113
196
222
252
183
185
169
208
219
208
249
125
193
168
233
225
168
210
203
197
244
208
216
188
195
183
231
162
229
248
177
240
202
274
248
244
248
166
153
188
241
193
240
189
205
251
239
199
131
249
171
201
197
244
178
222
139
254
219
208
195
250
206
245
153
232
149
227
225
216
178
164
236
251
172
218
211
217
245
160
209
169
247
154
236
215
217
189
178
197
191
144
149
200
173
158
170
181
190
256
205
235
183
198
172
234
206
258
251
159
245
195
159
196
195
172
229
233
209
171
222
140
205
160
215
196
197
231
175
183
192
174
190
196
116
233
159
167
209
232
229
199
273
225
158
256
253
229
166
160
202
163
210
215
198
158
207
177
172
232
229
148
187
190
216
193
197
164
245
203
166
213
234
226
196
207
195
187
187
172
214
172
195
171
175
228
180
227
255
249
201
133
223
204
278
243
182
165
157
177
187
221
194
249
173
218
217
210
194
179
216
247
219
266
252
231
225
199
154
182
227
231
207
196
214
229
136
175
212
196
209
210
192
201
203
225
238
222
179
234
232
211
136
139
206
196
236
137
165
224
176
157
255
201
214
220
135
146
153
237
255
176
167
185
231
186
177
227
202
223
204
150
185
157
153
178
156
172
163
202
187
214
170
217
188
237
215
177
204
152
237
211
229
220
180
143
173
267
220
206
225
256
199
162
244
202
232
215
191
141
197
181
258
222
174
205
252
187
166
185
177
231
256
257
148
227
226
216
144
237
191
220
206
212
195
244
181
217
233
212
263
213
255
170
215
184
193
229
207
217
250
210
242
217
174
196
219
252
200
248
152
220
211
191
178
172
203
191
226
183
165
171
229
216
256
232
183
226
215
237
251
205
234
210
233
162
224
233
237
137
223
137
184
185
200
237
169
244
244
204
220
196
213
253
216
236
161
211
204
125
185
241
231
270
164
163
225
227
204
235
230
130
205
204
169
190
197
209
227
244
287
271
172
189
215
158
194
154
240
254
207
205
255
162
245
190
221
163
245
231
226
166
222
166
199
213
269
181
194
156
270
180
208
193
232
216
166
238
179
241
232
220
206
145
191
150
247
212
203
208
152
170
249
191
215
205
211
197
204
213
130
176
220
187
172
187
216
227
169
196
232
215
158
191
215
216
133
181
183
197
202
160
238
164
205
233
259
262
142
170
183
221
144
255
197
206
251
196
174
178
204
215
215
185
218
229
217
142
224
200
195
225
198
233
156
184
220
125
230
194
192
244
172
214
177
169
206
226
284
198
263
178
186
182
234
291
202
236
158
165
185
216
170
153
231
256
190
165
204
238
189
213
156
202
157
127
171
166
228
199
203
244
155
198
173
115
194
217
192
217
121
237
176
201
187
184
165
245
176
165
227
173
181
248
196
157
245
210
215
233
148
218
267
204
212
279
236
207
272
194
229
185
202
189
181
133
231
219
246
230
208
228
213
159
230
216
239
228
195
168
188
130
272
226
237
216
221
227
229
165
243
215
189
152
144
191
119
210
190
218
220
175
191
170
185
223
225
176
207
120
192
234
142
225
158
137
253
228
162
234
246
205
156
207
250
190
136
212
163
144
142
194
224
178
192
196
207
174
173
193
223
195
177
134
227
263
223
237
232
242
222
205
198
160
167
247
141
238
202
202
224
161
234
285
265
282
182
187
202
255
174
190
192
200
166
170
199
216
198
178
191
208
144
195
171
192
187
209
161
223
215
210
118
205
156
158
251
188
163
275
246
166
131
175
219
207
138
176
186
213
195
214
242
162
207
224
205
218
185
164
232
200
266
222
188
180
197
217
217
209
148
210
178
200
199
226
226
211
149
170
164
256
208
173
222
201
131
200
161
169
187
197
201
209
243
92
183
151
203
225
171
161
163
177
216
213
161
260
216
247
235
176
186
207
167
184
175
242
195
166
180
169
254
150
204
216
248
184
229
199
249
178
203
187
183
235
147
170
247
196
245
200
229
258
250
155
246
179
173
193
190
238
156
215
204
172
217
208
212
231
177
244
210
219
208
163
179
199
173
140
163
205
255
228
180
246
146
234
223
200
184
197
140
197
246
248
199
183
257
245
193
193
294
168
205
226
203
273
240
199
155
184
184
215
241
212
210
205
212
227
181
184
195
203
180
209
139
138
233
185
187
221
229
206
243
221
223
186
245
219
243
170
181
172
203
186
235
249
179
246
174
210
160
186
208
136
205
269
218
223
245
161
209
170
227
173
226
244
144
239
169
255
181
252
214
218
216
230
219
214
219
152
134
224
227
137
239
254
242
215
217
234
178
158
241
170
223
204
238
201
225
147
211
196
212
228
185
231
209
203
200
204
185
195
240
241
236
239
228
223
202
212
195
188
215
211
218
193
191
224
208
256
190
237
210
209
240
220
216
203
243
197
168
244
194
142
215
166
200
187
118
202
224
168
242
157
206
231
199
223
236
228
199
214
158
142
158
230
253
210
220
199
216
254
217
253
221
228
230
123
214
249
241
162
163
172
142
225
217
155
187
198
215
198
184
271
208
253
211
153
163
164
184
192
206
198
220
180
120
117
161
163
227
202
189
214
186
217
216
203
178
183
235
128
164
146
193
154
241
225
212
201
207
223
271
182
192
190
232
151
240
222
126
185
204
232
139
210
213
121
222
136
244
129
156
185
221
156
144
157
198
231
209
222
200
271
183
218
250
174
214
207
226
180
213
149
209
177
189
210
168
161
167
267
207
128
216
216
197
193
205
212
216
117
259
182
136
208
235
211
103
194
251
192
234
230
166
198
216
195
238
190
253
162
173
212
212
171
225
218
214
190
155
159
177
159
248
167
240
164
184
217
223
206
237
161
115
227
215
207
142
171
174
209
203
208
252
231
271
182
192
220
151
184
194
188
218
169
167
233
188
205
159
187
231
220
178
196
247
196
219
141
199
214
244
258
148
165
111
175
210
176
207
191
132
208
221
201
290
202
222
175
163
192
182
168
164
203
172
208
182
261
235
182
120
152
189
165
164
214
223
202
185
163
135
182
183
146
169
169
222
189
238
230
255
193
244
208
208
190
159
177
193
152
214
234
191
180
177
202
228
207
196
240
268
260
177
232
224
217
138
216
163
259
172
210
215
201
254
260
225
234
164
152
152
206
180
228
169
237
178
210
277
227
214
204
183
256
243
224
173
154
155
181
217
250
177
132
207
192
230
168
191
161
187
262
168
184
197
212
220
209
220
177
199
256
174
219
166
213
193
252
265
208
246
243
222
234
138
200
187
196
158
193
231
231
244
276
164
210
198
228
194
211
203
140
204
204
110
222
248
147
165
189
211
199
156
234
181
249
163
137
198
178
234
199
220
197
210
186
164
180
190
206
174
147
211
165
228
188
182
218
205
234
173
227
130
221
241
195
224
201
163
234
288
214
224
193
223
260
111
173
198
204
178
239
170
198
217
163
283
178
172
195
234
132
126
175
231
209
122
189
259
291
210
199
183
172
166
216
203
256
216
217
137
228
198
192
218
207
192
225
241
238
174
231
223
222
224
205
190
221
218
217
259
258
219
255
185
229
154
217
268
163
242
256
154
146
199
227
225
185
222
270
220
291
180
196
222
101
210
188
205
171
206
161
227
188
188
239
172
199
262
196
209
177
222
182
205
193
178
250
181
122
144
222
175
198
164
198
168
191
187
222
220
192
199
229
215
180
192
209
176
230
201
149
209
146
221
211
232
216
175
255
230
209
219
148
196
265
190
218
219
234
189
253
204
235
229
187
215
221
235
191
252
176
201
197
173
155
175
189
197
202
191
228
220
232
164
239
250
229
217
193
256
201
245
161
168
206
182
244
216
192
235
236
159
262
193
189
161
150
143
160
174
224
209
244
249
269
207
220
215
169
251
201
167
227
169
189
162
161
184
233
209
180
219
166
209
228
242
182
125
163
207
251
215
219
198
254
213
258
185
233
192
176
213
178
201
131
148
214
214
240
239
181
157
234
195
172
169
231
177
163
231
180
146
212
228
194
185
232
133
216
246
253
209
133
191
180
257
160
256
219
159
256
134
232
218
99
204
172
166
220
227
185
223
219
266
188
174
172
168
153
223
205
192
152
207
164
203
225
208
201
182
212
252
242
194
165
183
232
204
194
277
230
194
168
208
149
203
152
186
181
226
211
261
153
194
189
221
198
170
207
206
255
184
233
203
161
208
242
215
214
243
87
181
198
146
203
240
223
239
167
213
153
252
158
237
215
226
167
196
150
161
238
225
254
180
181
236
234
198
147
164
209
182
206
138
196
234
199
149
175
152
143
246
180
164
220
154
195
233
179
208
245
220
195
256
202
197
192
237
212
208
200
144
195
138
228
183
244
232
185
188
186
225
168
195
198
184
166
228
225
225
207
249
218
209
217
236
207
242
86
195
170
234
231
224
222
183
184
172
214
220
162
178
223
274
163
214
212
222
224
154
222
169
170
151
233
182
131
229
196
246
193
228
220
220
225
247
203
238
237
218
175
144
211
221
217
195
150
222
199
249
230
109
168
211
220
171
203
160
256
162
266
231
271
222
206
180
209
222
211
185
209
221
161
228
211
148
179
197
199
189
169
228
180
222
190
252
188
172
212
243
247
217
214
156
185
226
124
227
190
272
193
250
212
226
126
196
156
197
157
187
232
169
167
186
195
173
184
175
219
197
247
235
179
131
169
215
201
213
191
206
203
142
220
142
212
206
178
160
173
179
112
207
235
197
193
210
188
169
191
248
196
149
267
227
174
158
186
228
164
238
220
179
201
205
209
251
174
183
160
187
221
205
197
196
177
228
136
143
201
179
189
233
215
183
201
210
249
181
197
160
152
206
154
214
207
220
199
147
211
191
172
200
129
172
250
213
212
184
250
197
194
188
217
191
177
185
241
216
232
221
216
194
228
180
178
172
176
206
209
222
209
217
215
243
144
114
271
205
169
194
220
197
193
245
234
161
129
233
155
171
222
142
189
214
234
215
164
168
189
201
237
197
235
211
182
157
191
247
187
264
200
232
208
209
200
176
146
212
218
221
181
226
242
255
209
263
101
175
155
191
219
189
192
259
222
222
226
183
199
183
232
170
236
195
182
142
248
170
194
213
223
205
172
230
259
218
276
166
223
140
175
214
237
215
178
205
210
235
206
206
174
213
111
167
186
214
158
248
197
219
246
221
201
231
197
217
230
221
214
225
215
210
191
185
221
167
191
231
164
229
162
133
180
204
180
236
198
180
184
230
228
206
262
251
173
115
221
149
193
231
260
218
169
170
197
143
240
209
195
160
187
214
151
196
212
230
200
175
195
200
172
240
171
223
215
168
185
228
140
203
218
249
215
182
149
186
199
260
206
179
145
214
185
167
157
235
194
146
150
218
145
221
160
236
198
188
194
187
218
244
238
274
270
174
149
168
163
206
205
193
247
170
189
243
194
141
225
155
199
244
132
160
217
198
243
192
213
218
187
264
143
232
210
129
220
170
225
209
194
147
212
184
188
127
155
207
200
169
199
208
196
180
200
198
213
257
222
196
90
181
158
170
240
206
166
238
183
204
125
234
201
231
160
185
240
176
126
236
273
163
221
169
218
231
242
107
180
210
207
225
155
255
195
183
170
238
188
193
165
223
122
213
193
177
198
224
234
215
235
216
169
224
218
190
190
230
144
173
216
174
195
209
240
158
230
222
233
235
212
207
147
171
231
215
163
222
230
200
221
212
182
254
234
163
199
197
168
197
227
208
124
218
213
161
232
185
156
226
255
201
299
161
226
230
241
258
211
245
165
148
187
123
245
170
239
153
229
177
211
190
174
226
159
203
205
245
116
190
159
241
232
222
137
203
199
228
180
240
200
190
205
246
211
193
199
213
177
167
155
160
198
199
164
224
213
168
171
178
240
261
194
209
173
203
247
226
175
207
233
211
168
145
243
170
221
212
218
177
216
194
177
211
251
232
219
179
232
190
189
146
207
274
163
208
138
154
192
177
279
196
264
233
219
231
211
242
232
187
216
135
169
217
246
146
250
215
177
179
166
218
266
237
212
190
216
234
177
177
181
213
249
230
178
187
259
183
171
195
190
213
183
206
173
238
217
220
121
156
247
187
204
130
161
208
216
193
174
229
197
235
221
186
152
207
217
183
184
170
238
236
189
171
174
161
179
156
206
155
223
183
238
148
207
225
221
184
225
161
169
210
289
225
206
179
230
212
187
147
150
251
162
235
224
194
181
216
197
200
242
213
146
199
155
238
241
236
206
206
245
172
159
200
226
180
197
218
181
229
216
159
259
209
206
223
179
201
235
183
254
205
215
162
167
198
248
220
136
221
192
197
197
194
185
194
235
230
186
221
233
203
244
241
204
130
231
211
258
196
165
148
187
264
239
208
143
198
198
180
161
152
229
226
197
235
166
206
151
209
232
187
256
217
188
226
227
233
239
178
177
212
215
297
186
160
182
227
248
123
199
239
151
163
192
221
204
144
219
242
252
185
200
215
246
219
173
185
131
167
168
177
174
254
179
165
194
184
225
193
202
223
225
184
212
188
272
235
211
158
213
254
208
166
216
187
216
196
274
149
192
210
219
169
206
247
167
212
189
253
230
184
182
193
183
197
185
201
183
191
191
175
222
173
215
178
202
188
253
202
185
212
112
163
129
187
193
192
157
179
211
216
167
202
264
166
178
160
275
212
215
227
243
218
216
185
223
227
134
249
223
187
253
184
142
185
160
222
167
153
227
228
199
165
202
198
229
235
230
172
181
216
163
268
189
199
164
223
244
173
199
175
226
224
163
195
235
222
147
180
229
196
183
207
154
159
210
240
202
222
187
214
184
255
179
215
224
154
238
240
142
234
219
137
208
196
173
202
201
209
203
281
189
248
206
193
176
195
209
141
165
214
145
142
183
214
251
232
217
246
244
217
244
234
227
146
126
250
233
194
174
177
203
177
177
179
190
159
174
169
187
167
296
202
230
203
247
181
233
201
195
159
198
187
261
134
222
245
122
185
232
175
179
264
162
238
166
172
209
171
199
193
249
283
160
180
112
248
150
253
135
199
169
231
205
216
160
209
188
195
142
228
223
234
255
189
211
168
274
203
186
238
209
218
210
231
233
227
122
189
258
180
241
206
222
133
222
211
217
219
203
270
206
186
176
182
250
219
246
235
188
190
235
184
208
166
213
184
210
252
232
200
218
197
228
165
270
175
232
192
140
229
182
242
228
223
180
194
180
231
175
146
168
184
179
236
215
194
231
194
214
202
228
169
122
193
161
179
212
181
175
261
168
139
256
140
219
224
138
246
175
174
222
193
189
218
209
157
127
180
188
239
234
143
208
229
235
295
223
192
245
220
212
165
247
139
237
168
241
193
182
146
242
225
218
189
205
224
188
200
179
189
193
183
186
238
186
175
203
154
206
228
224
168
168
163
224
180
187
232
224
188
240
160
216
197
206
197
200
265
123
257
214
214
183
213
217
165
223
164
201
156
175
197
199
183
234
203
238
229
266
95
160
178
125
238
204
186
237
233
235
232
180
226
140
168
249
179
170
254
228
193
165
211
159
178
199
232
170
203
185
177
193
196
172
182
232
229
261
132
196
227
184
219
267
264
244
186
206
213
218
213
225
218
206
232
229
217
208
217
160
156
153
160
213
149
249
212
183
196
188
205
215
222
216
169
198
195
222
169
214
180
153
173
266
191
180
194
173
151
213
215
208
195
142
261
241
192
208
148
215
219
190
193
224
162
208
174
189
184
183
226
222
282
272
179
186
238
154
179
194
160
234
124
182
165
213
164
196
252
255
144
208
164
210
173
225
257
178
158
266
168
154
226
194
163
197
170
228
204
188
205
172
153
222
189
219
181
224
209
149
242
186
129
213
151
188
186
157
140
187
171
202
279
205
213
211
223
209
217
216
202
213
262
229
135
125
148
222
204
238
191
177
242
208
217
232
200
198
132
149
171
189
235
138
218
176
244
172
168
248
234
185
257
129
215
158
227
221
171
194
176
219
186
162
218
123
195
203
170
212
195
189
188
202
228
213
233
184
223
265
218
177
232
196
138
242
208
206
123
255
214
223
152
202
215
246
171
185
177
129
208
165
254
136
207
184
249
247
166
172
179
175
180
242
183
222
196
150
195
260
164
181
234
197
223
218
162
237
189
192
167
163
215
214
244
203
206
282
183
197
226
177
218
230
195
174
234
236
219
241
158
167
189
244
232
142
82
174
209
254
215
184
250
212
154
203
159
231
203
187
181
204
241
221
199
245
212
191
152
175
189
246
236
185
255
170
256
187
254
200
168
233
157
125
233
235
158
169
163
246
218
141
219
177
170
277
226
186
235
196
237
165
180
146
115
225
202
239
187
173
252
212
176
157
229
222
145
177
231
160
128
190
168
183
232
227
208
217
196
171
175
175
216
231
170
199
206
171
188
225
180
162
266
216
191
183
217
173
225
149
201
219
195
221
236
228
218
191
234
246
196
207
199
180
180
251
266
163
106
193
201
267
249
192
233
194
268
170
176
206
251
225
206
206
201
88
178
201
246
220
180
186
177
207
139
231
146
213
162
207
249
167
228
228
168
186
181
161
181
217
167
148
183
203
214
180
215
196
181
122
246
238
162
239
203
267
210
173
225
170
178
230
179
228
218
240
152
162
224
229
235
173
215
218
212
212
257
176
206
202
186
197
221
173
115
169
215
211
218
113
188
131
180
238
229
193
220
198
178
252
255
227
177
185
180
191
269
182
173
199
149
224
192
215
181
204
159
224
195
205
191
181
251
174
118
237
204
157
224
246
201
180
220
146
185
92
213
231
174
164
153
155
236
225
172
256
219
158
169
244
172
210
156
174
207
245
200
217
169
202
197
174
185
164
158
212
236
135
254
201
225
226
192
187
259
208
171
207
216
186
250
193
180
146
199
164
190
225
234
137
188
214
184
138
214
225
134
209
251
150
218
187
154
198
247
216
225
210
279
179
225
226
261
181
178
156
118
142
267
225
259
189
237
232
278
210
237
201
255
167
191
236
232
201
221
185
237
238
227
191
189
222
186
172
195
200
257
205
188
154
84
205
176
191
230
187
150
159
152
279
240
180
219
229
162
229
188
194
240
195
232
222
161
179
172
209
183
221
228
194
224
199
259
190
209
155
211
236
190
214
207
185
200
211
221
205
177
213
189
244
167
196
178
220
180
205
245
199
212
194
229
121
224
186
130
142
225
242
214
266
248
206
165
124
235
205
242
249
223
238
226
197
234
179
199
206
259
218
191
195
212
235
172
168
161
201
190
247
200
155
227
198
208
222
219
190
220
243
239
235
150
140
242
202
193
184
172
166
202
156
139
133
194
190
232
183
146
234
189
234
177
193
183
161
168
253
223
158
145
142
233
236
165
226
273
233
201
194
180
173
233
243
196
204
261
226
159
180
77
205
192
214
108
213
194
234
259
255
199
208
235
157
210
191
246
243
158
197
198
245
226
192
242
134
226
157
191
229
235
164
199
195
114
240
191
212
137
206
127
213
204
208
243
189
186
214
236
263
238
160
139
194
171
195
177
200
149
191
137
182
200
214
169
166
116
233
149
185
232
231
227
146
204
221
254
204
223
208
185
238
181
164
211
198
179
239
211
188
176
189
144
187
209
187
206
237
214
233
153
246
218
215
187
178
223
260
165
213
181
161
210
263
193
223
213
204
146
160
133
136
169
179
185
254
232
194
219
199
215
251
189
207
276
202
299
239
250
124
266
196
227
193
237
251
212
173
215
178
96
218
172
137
191
222
191
222
198
172
153
205
205
209
215
164
168
250
216
164
269
184
199
164
144
221
196
240
223
197
195
206
203
149
245
229
191
229
230
224
218
172
142
228
213
191
193
175
253
188
146
189
207
182
121
150
187
186
153
188
201
195
228
165
207
203
268
213
222
111
188
139
238
241
189
254
209
216
249
232
200
219
229
279
182
200
182
178
174
208
121
157
247
226
155
206
168
238
172
175
196
197
191
210
125
174
223
239
157
196
170
190
190
216
257
256
158
146
173
167
224
216
191
211
261
150
172
192
186
154
247
189
161
181
192
153
181
213
136
182
140
221
226
216
265
160
126
198
198
200
232
196
213
209
148
208
204
252
131
244
282
205
264
219
224
206
207
230
223
213
155
211
223
223
176
227
187
203
220
230
219
241
175
197
191
253
174
206
198
219
260
201
224
185
177
205
203
180
201
206
199
201
202
202
200
215
180
162
155
195
178
225
184
198
200
196
192
212
194
165
241
191
142
203
247
221
266
244
270
198
207
219
196
236
205
189
215
243
176
230
205
225
207
222
163
206
245
168
183
264
206
190
174
211
206
221
244
174
189
227
191
187
183
189
192
159
155
222
173
166
152
211
250
183
178
248
205
198
149
132
246
216
218
234
216
189
181
185
228
182
179
177
153
141
205
218
85
199
252
197
224
237
187
213
168
200
167
221
264
168
245
233
187
238
202
244
210
209
226
205
153
179
267
233
258
226
203
147
256
222
261
216
185
209
188
227
190
262
267
177
172
195
163
161
192
235
225
222
185
221
224
172
159
238
173
233
185
194
241
193
213
206
197
199
196
197
162
193
270
184
165
205
133
143
145
217
216
239
235
152
204
205
217
181
169
141
205
223
214
243
191
163
186
171
165
246
206
175
185
205
236
159
228
256
184
190
164
222
202
231
248
151
223
223
175
202
265
215
249
135
223
248
223
237
188
168
229
182
182
231
226
221
184
209
216
218
164
204
186
260
209
164
252
235
193
225
158
144
194
160
171
209
232
203
208
180
200
181
175
182
223
200
127
233
205
200
172
176
176
184
239
220
243
191
190
215
232
148
250
210
184
199
211
225
168
254
227
212
215
174
214
152
217
144
154
183
154
154
154
195
198
206
177
211
239
207
260
235
214
183
200
183
227
213
237
221
143
179
204
212
223
222
216
223
180
175
176
226
265
220
195
244
174
216
218
189
203
273
156
211
138
288
215
201
161
187
176
221
253
217
215
154
157
179
187
180
245
214
178
217
202
235
177
210
189
227
206
252
257
176
145
225
169
172
226
154
197
176
190
214
175
127
178
225
232
203
199
188
188
224
236
206
173
167
215
158
178
211
227
160
226
212
162
141
177
138
273
176
193
209
171
220
178
269
199
220
217
197
269
182
172
188
173
240
174
214
220
222
165
181
192
165
235
186
164
306
158
109
199
246
237
240
140
212
207
220
232
239
161
255
151
183
175
169
240
190
248
196
215
176
222
248
177
271
215
205
241
203
251
211
208
199
165
194
154
138
230
129
157
144
188
261
198
176
203
236
189
213
217
221
193
221
184
115
182
251
201
206
133
224
201
229
220
215
222
175
218
219
221
140
171
215
209
169
207
186
179
228
194
196
166
219
211
192
235
209
283
207
197
185
174
245
196
186
175
225
183
162
165
191
247
187
189
241
172
217
245
233
215
248
203
197
211
209
164
179
199
221
204
162
183
171
174
195
205
241
244
220
121
151
167
217
237
247
173
200
206
282
270
215
194
213
200
247
201
175
185
206
169
249
150
202
217
167
237
197
214
169
163
239
177
128
122
182
195
167
183
259
269
268
186
186
233
259
231
169
140
161
222
204
212
264
196
261
232
195
237
194
214
159
154
155
259
210
177
194
226
215
198
206
179
182
257
131
176
251
205
179
239
257
188
248
257
191
243
111
203
125
113
228
251
211
185
135
209
167
206
194
206
196
175
166
199
195
118
206
192
130
222
218
233
270
179
216
188
187
209
153
153
174
159
206
196
203
169
170
159
174
149
200
187
130
218
151
139
281
236
227
189
226
232
194
165
183
217
175
203
234
231
146
204
209
187
244
239
159
254
201
215
212
225
192
148
176
172
261
225
176
188
207
139
226
186
202
168
237
210
238
168
210
226
228
250
183
208
198
236
252
162
159
159
215
226
178
220
219
185
165
233
179
173
204
221
188
194
202
228
209
172
180
168
213
200
214
217
219
281
147
211
167
211
218
232
210
214
172
201
170
221
155
156
171
229
240
175
191
199
212
145
235
165
178
134
189
199
164
183
157
167
170
200
243
219
227
177
190
174
222
191
199
210
150
226
206
263
137
219
167
250
129
190
209
171
199
213
217
215
188
172
225
153
179
210
175
166
185
236
226
242
245
241
188
227
242
109
207
219
194
165
176
193
251
229
172
260
137
214
214
236
171
177
271
162
151
184
192
256
238
186
181
185
198
191
233
168
176
189
229
200
257
238
227
195
161
186
228
262
260
183
228
205
216
164
236
205
241
274
156
141
188
200
223
148
118
243
222
186
214
170
166
259
237
226
173
228
199
190
244
187
172
208
152
190
104
153
235
218
206
205
213
189
249
180
157
201
170
194
225
213
207
216
156
206
190
192
190
192
239
200
197
216
191
220
160
249
178
138
191
222
105
215
224
238
192
222
210
185
228
181
167
145
186
157
209
262
192
273
220
203
208
171
130
228
162
192
205
218
202
190
200
166
188
204
233
178
218
195
130
216
194
149
203
266
202
227
166
217
175
264
242
211
211
189
187
214
195
153
237
216
244
210
201
212
165
188
235
129
236
207
198
204
228
205
160
198
181
239
186
193
202
219
183
180
169
161
232
192
190
248
213
230
267
236
259
250
211
180
187
176
167
190
158
161
204
167
113
246
265
199
139
208
195
225
249
241
248
226
189
103
143
139
215
188
163
230
161
188
142
226
205
239
253
182
198
209
231
232
236
167
186
191
161
216
235
129
215
145
201
150
227
177
248
184
151
174
184
231
194
201
217
274
234
196
219
218
195
221
165
171
256
184
171
235
178
191
197
239
159
249
159
227
164
219
242
199
225
173
233
261
195
174
215
193
205
246
177
233
159
219
269
189
231
209
213
192
167
189
218
258
213
182
190
193
243
208
179
191
232
140
219
197
133
223
239
225
202
146
239
204
193
197
169
259
227
208
167
188
244
191
196
224
150
133
244
239
160
270
220
225
238
169
209
260
179
194
271
173
242
277
203
212
234
169
260
265
183
245
149
210
175
174
183
149
182
217
229
248
178
185
239
142
201
203
253
167
182
231
206
198
157
145
212
245
202
225
207
275
191
238
210
234
236
228
216
149
182
193
243
156
180
225
207
126
170
239
188
203
192
189
102
212
232
169
206
168
199
150
249
154
154
245
203
242
223
205
219
198
215
133
258
202
209
185
153
213
223
147
208
210
189
223
260
199
215
175
232
107
211
256
252
171
202
116
250
169
180
243
238
180
229
212
189
191
150
201
147
206
279
227
151
216
233
219
183
185
182
145
225
276
246
163
224
223
221
245
167
182
225
255
211
188
218
183
145
164
188
223
193
229
203
205
158
197
263
241
183
196
190
269
257
189
204
171
252
237
196
218
161
149
176
180
188
238
179
242
232
220
216
164
209
193
213
234
231
202
275
155
246
203
194
169
211
243
180
177
159
171
174
204
175
203
111
224
212
197
157
150
222
219
234
239
203
208
197
238
177
198
270
210
193
203
171
173
181
217
247
220
228
221
188
174
151
201
249
138
179
204
204
193
210
169
143
210
247
214
198
175
141
231
208
165
126
247
229
175
153
156
228
192
207
199
264
190
212
178
252
237
189
188
217
204
210
217
202
202
183
247
238
228
151
163
273
276
192
145
200
259
219
182
192
218
186
216
234
137
217
205
149
223
197
143
219
213
213
254
225
192
162
198
153
231
189
131
243
161
175
204
174
252
178
193
138
236
195
269
172
144
186
176
242
224
132
175
207
210
204
188
253
191
166
162
200
178
208
192
189
255
235
190
223
184
169
181
210
205
153
214
211
189
229
194
235
210
167
239
190
241
158
233
216
249
192
182
193
233
187
195
193
191
263
180
214
199
175
251
173
145
237
234
223
229
244
173
275
171
187
182
199
256
203
235
120
205
177
178
260
254
218
185
265
254
256
209
228
243
185
215
218
144
259
194
194
218
126
193
152
189
166
253
206
219
186
142
144
227
168
174
222
199
224
198
188
230
171
219
199
273
284
235
190
213
224
194
183
194
150
216
260
207
178
191
270
160
200
212
225
210
176
219
221
185
158
183
224
190
241
221
242
176
253
165
196
216
214
251
233
182
233
218
207
204
231
216
198
174
157
201
190
177
206
201
124
218
254
258
249
214
216
182
210
223
213
256
219
226
208
251
145
228
188
117
186
188
205
181
247
239
189
175
232
219
161
248
244
236
196
175
224
225
200
184
162
194
159
199
242
187
223
222
222
159
237
254
149
207
226
233
173
206
163
174
192
156
144
234
242
152
213
232
169
211
185
210
253
215
233
225
210
213
237
167
190
229
151
198
185
198
206
197
260
190
149
202
126
206
252
232
225
199
228
216
227
188
161
197
245
170
167
163
238
139
158
113
166
197
186
285
172
207
131
195
144
194
178
169
222
167
162
227
154
135
164
201
173
224
163
173
259
195
166
227
236
218
277
192
207
192
159
155
195
185
168
163
241
224
212
234
199
214
229
183
217
186
185
195
153
197
216
127
208
250
224
198
233
170
228
195
176
235
137
147
167
203
260
173
191
235
216
180
265
170
221
247
178
229
155
160
178
201
208
154
199
212
228
134
170
209
197
159
204
218
254
177
204
218
248
178
197
234
191
146
261
181
192
211
231
210
230
206
162
156
152
245
219
184
211
264
226
151
184
153
174
202
165
264
146
178
218
256
164
173
205
177
209
196
226
112
205
198
138
226
189
209
173
182
196
201
200
194
124
215
182
202
206
180
233
205
189
251
198
187
207
146
246
219
224
230
215
191
201
205
242
236
160
199
190
229
170
239
139
240
225
144
197
226
232
211
186
167
190
232
171
295
203
180
169
174
218
202
245
179
183
216
140
188
190
180
216
166
245
253
227
245
207
217
185
175
226
215
225
239
218
165
173
161
184
168
264
195
213
178
227
238
186
167
236
210
182
175
176
224
214
163
181
156
232
183
178
218
266
196
190
178
195
220
255
185
170
143
162
232
157
192
168
223
205
197
217
236
272
151
185
172
149
145
212
183
220
182
255
244
206
252
258
201
267
169
217
205
125
186
191
219
198
152
268
215
240
167
245
226
167
192
211
167
116
214
159
227
163
215
227
189
211
147
266
180
170
197
184
236
170
226
231
180
162
204
182
205
228
233
220
188
227
172
180
155
200
172
240
226
178
172
165
190
182
113
221
211
208
174
193
281
172
187
236
202
164
187
225
167
222
226
212
256
210
184
192
219
235
215
195
222
212
279
212
222
150
186
151
195
225
235
244
165
257
137
233
215
188
189
204
162
167
211
211
203
192
199
190
182
208
144
264
216
229
216
177
258
216
249
234
172
196
231
167
226
196
213
161
205
258
188
176
152
126
208
174
154
278
223
220
250
198
201
242
216
172
179
186
222
173
174
205
193
181
222
222
153
177
221
207
225
183
199
201
249
170
199
241
208
144
208
230
221
180
176
214
259
204
213
205
215
172
228
195
197
182
254
256
195
201
252
119
246
225
186
245
168
161
194
149
172
170
207
188
197
180
225
201
214
138
227
146
195
170
176
171
183
243
152
192
234
230
159
195
182
207
233
136
206
237
188
227
186
140
138
220
205
114
213
247
251
139
226
204
248
227
207
241
178
167
169
136
202
216
189
216
201
195
180
147
164
180
203
190
182
145
205
208
161
122
276
215
255
218
227
190
240
172
171
138
123
167
252
267
206
155
182
210
224
170
228
188
192
171
172
214
245
249
174
239
257
259
219
225
204
217
209
202
203
144
216
216
269
147
218
163
239
156
140
165
212
186
250
157
240
240
169
139
175
193
221
166
204
220
191
162
180
235
270
202
177
144
203
199
206
195
200
179
146
183
264
124
283
215
221
241
200
236
174
162
229
196
198
187
178
199
175
215
207
174
176
246
198
270
181
213
226
261
211
152
168
155
168
165
178
220
246
196
202
136
243
163
227
218
134
219
189
194
177
185
204
148
196
252
194
159
211
157
282
211
178
204
182
200
224
225
148
224
188
194
191
221
183
228
239
191
244
237
204
199
233
190
168
215
226
170
179
212
225
227
225
229
97
199
181
222
209
257
238
211
206
204
185
172
210
199
161
235
204
218
204
196
191
229
258
140
188
206
232
233
211
210
229
216
241
242
237
238
152
242
176
159
190
152
172
260
165
175
206
186
202
166
129
174
174
232
139
156
160
244
220
258
190
225
192
235
179
218
195
214
228
159
163
220
225
179
251
195
162
209
221
145
186
173
213
158
178
201
230
187
174
231
198
258
184
205
206
187
233
185
218
240
234
189
206
150
179
233
230
176
183
221
189
230
200
132
192
146
202
254
220
232
180
227
204
138
194
129
183
195
245
148
198
172
233
98
132
182
243
183
213
251
204
193
186
214
215
202
177
165
208
202
171
222
251
162
228
210
276
199
200
209
175
206
159
172
136
197
126
149
217
231
136
223
202
213
195
215
162
244
218
193
232
153
164
167
202
208
227
235
249
206
160
228
219
150
181
235
168
217
144
165
217
209
226
234
223
149
242
203
184
199
232
260
218
175
124
216
166
117
252
153
231
139
177
251
214
228
181
236
179
209
253
253
197
153
233
205
171
171
153
211
221
241
225
193
137
197
268
219
151
250
153
235
176
222
142
209
119
231
210
209
237
236
271
247
170
219
110
229
121
231
188
247
219
177
176
260
146
202
203
245
236
174
177
133
212
176
128
230
209
169
174
184
229
158
239
133
176
244
199
245
213
219
239
265
188
169
202
169
238
150
128
139
163
188
185
213
195
240
175
117
215
226
228
187
224
172
240
229
199
247
218
221
132
160
153
204
175
213
231
257
227
246
203
207
248
245
209
166
209
254
140
160
201
229
160
143
238
199
270
197
189
172
255
210
278
225
236
185
260
160
196
199
179
210
262
183
214
169
164
188
215
186
179
241
199
231
196
198
198
123
235
156
156
245
251
183
174
182
256
183
167
185
213
154
209
176
227
222
164
206
227
203
188
204
165
153
223
152
140
234
222
231
168
228
204
251
247
192
207
180
269
217
174
250
161
178
222
113
175
159
265
154
176
235
173
132
259
183
222
235
212
173
242
126
175
254
214
215
232
220
227
225
190
235
173
155
192
225
250
201
191
201
181
178
208
181
261
178
187
229
98
179
248
259
249
227
196
216
190
158
203
137
201
204
184
212
161
193
199
187
215
130
192
162
145
206
172
239
238
198
227
176
163
240
206
209
176
282
233
233
198
256
225
198
178
224
224
174
224
182
189
143
172
224
196
197
158
117
185
152
226
158
233
198
232
171
175
217
212
170
215
213
130
192
194
202
194
206
211
196
194
232
204
196
184
208
143
226
183
157
190
175
241
138
189
119
200
251
178
201
168
201
229
204
225
207
224
181
251
228
193
224
176
209
166
183
195
196
238
156
227
205
200
196
191
218
182
183
212
178
242
212
195
232
210
224
252
184
191
197
191
184
143
207
166
169
121
173
180
186
189
236
252
235
190
184
199
228
156
174
228
174
167
192
251
211
219
215
154
171
229
212
259
230
125
162
133
256
129
147
249
165
239
229
238
220
241
225
226
222
216
187
196
197
224
220
170
193
141
190
300
264
172
183
187
185
166
223
207
212
241
166
150
177
164
222
217
239
205
245
235
226
213
165
222
151
208
147
165
202
151
263
200
175
249
176
146
212
168
154
175
179
191
249
203
221
166
221
213
208
231
207
234
213
220
191
218
207
178
253
148
200
152
217
200
219
223
230
191
210
223
209
224
203
206
228
246
192
241
262
241
198
200
175
242
207
149
197
235
209
245
237
213
178
171
201
258
204
180
239
188
205
203
203
170
171
218
196
212
208
233
240
215
204
228
149
221
190
248
220
215
177
215
228
167
197
195
246
191
220
180
187
223
202
153
185
158
168
218
217
129
246
154
272
202
181
188
227
135
171
95
203
221
200
235
182
236
256
233
158
219
165
277
193
208
226
176
126
204
228
167
215
217
193
187
194
252
161
245
180
155
229
199
203
210
200
152
204
237
261
197
203
202
236
211
182
220
243
141
215
217
160
215
171
207
216
193
175
172
190
259
218
166
208
191
184
244
160
202
201
159
164
188
207
232
235
212
183
173
178
281
189
230
168
247
217
251
167
251
253
211
132
200
202
242
217
260
207
157
271
249
208
184
167
256
211
223
147
215
138
218
220
145
183
255
243
222
208
225
166
244
222
229
221
201
183
171
189
261
229
150
230
195
168
261
119
181
201
254
218
203
143
159
150
235
226
197
180
228
164
216
202
213
151
215
158
185
204
258
221
209
199
222
211
176
221
262
216
189
181
114
204
175
104
165
145
156
191
207
221
229
171
224
237
239
198
228
244
168
192
143
171
215
215
213
178
215
239
200
242
176
145
192
191
214
186
258
177
183
182
225
170
161
176
178
190
187
153
185
222
194
174
260
165
232
209
213
240
226
200
188
203
220
179
248
218
209
209
215
185
212
206
196
215
240
191
167
181
172
268
208
244
221
188
223
196
202
220
140
223
243
209
205
249
195
234
178
185
214
228
202
242
219
259
191
237
209
166
165
220
259
182
214
155
171
150
194
179
254
232
205
241
237
183
239
167
163
144
216
205
191
165
168
184
223
244
200
241
214
190
148
195
191
204
207
156
204
197
170
225
250
224
218
208
233
180
142
180
177
190
211
252
200
127
202
216
170
185
163
236
241
100
225
187
230
222
190
204
199
187
240
266
200
191
211
162
195
166
209
171
127
191
179
254
256
178
184
240
214
236
214
203
179
263
192
257
215
199
120
165
176
189
178
144
217
164
152
176
193
125
241
198
173
218
228
191
183
223
169
181
242
196
230
153
271
198
158
240
195
261
184
220
214
203
202
247
257
188
152
183
259
204
195
124
182
143
217
246
213
244
208
200
212
180
206
214
241
245
197
236
215
226
224
125
234
218
257
208
178
159
113
235
233
162
188
184
184
208
210
208
183
186
163
189
214
208
205
162
197
217
192
217
215
215
210
202
232
231
140
194
217
211
228
147
237
170
157
184
187
246
265
192
188
180
117
191
176
255
196
263
143
218
176
207
248
252
207
171
205
205
191
167
177
209
202
199
212
199
225
226
209
204
175
210
172
249
205
219
173
239
265
215
136
123
234
207
195
200
223
169
196
214
198
169
186
247
192
215
221
208
256
210
289
233
188
194
220
227
225
208
193
293
205
195
141
216
172
230
173
163
187
160
211
191
209
144
244
214
218
159
254
200
132
170
220
252
205
243
222
266
185
216
221
203
243
204
263
151
171
209
238
205
195
241
208
210
216
217
250
188
153
208
182
241
199
152
157
186
185
245
195
228
241
158
210
214
177
227
113
240
171
171
167
178
142
212
184
250
150
228
214
173
246
233
204
184
137
190
151
206
194
245
193
185
167
191
240
184
228
226
169
235
149
242
179
211
215
198
201
234
124
137
191
181
169
239
218
233
192
185
191
198
188
206
224
189
216
141
188
223
169
184
209
240
174
230
158
202
222
190
159
216
213
173
227
255
233
264
196
265
212
204
159
190
186
204
122
251
170
144
188
254
208
147
179
193
236
210
246
219
145
238
169
183
242
214
224
212
241
226
195
153
153
215
188
266
224
202
172
227
207
186
189
189
174
177
200
229
221
225
217
210
194
204
194
240
189
232
258
218
208
154
210
178
214
209
183
240
238
226
184
246
221
239
172
251
153
228
246
171
169
225
197
195
248
232
157
220
198
193
187
198
174
170
191
216
224
194
196
189
253
176
197
252
171
201
223
143
226
215
222
203
173
217
204
188
134
195
241
226
197
245
212
209
211
191
214
175
168
210
223
219
265
197
190
213
239
195
190
162
196
218
219
198
206
161
277
208
211
198
197
199
204
229
245
182
189
164
232
241
181
208
183
166
262
150
202
183
182
205
276
223
172
190
196
192
199
169
199
165
168
211
188
243
211
158
225
246
231
165
193
193
215
220
234
185
202
223
191
179
170
178
201
241
257
223
225
189
231
162
239
234
212
168
193
190
205
237
153
215
167
207
212
221
230
181
264
201
156
231
215
179
230
176
194
229
247
178
219
207
232
229
198
185
227
210
204
154
210
151
206
159
138
208
194
186
221
177
194
160
211
207
166
180
200
150
145
169
194
180
178
141
218
204
142
196
223
249
89
143
196
217
224
227
239
226
189
203
195
193
155
203
185
172
201
229
261
183
205
294
158
222
239
177
170
250
195
209
182
189
206
197
162
216
223
265
198
215
151
216
204
215
196
189
196
187
204
227
185
174
225
217
165
204
234
189
188
222
211
196
164
220
197
183
231
179
201
175
183
206
230
259
190
207
179
191
156
226
154
234
146
224
209
253
223
236
191
158
222
191
211
235
219
188
150
200
221
199
246
193
185
197
190
208
197
215
206
194
222
233
187
164
196
239
267
166
219
233
187
196
211
156
227
170
133
170
180
206
211
204
162
222
221
198
263
132
203
155
209
151
149
199
201
210
208
221
198
185
178
256
211
214
216
182
220
224
154
230
175
219
241
277
233
182
222
231
187
206
219
254
214
212
217
204
206
222
186
221
198
212
146
153
231
240
220
173
218
189
189
212
205
229
173
192
245
204
246
215
178
219
176
208
217
204
192
212
205
203
214
204
210
165
153
161
200
227
258
205
208
130
227
163
196
192
177
221
237
204
210
206
230
177
242
225
202
221
198
201
246
159
178
153
190
193
229
167
112
140
208
196
221
178
251
222
184
170
241
140
181
141
165
194
186
183
244
203
184
195
226
149
208
208
249
253
214
201
204
273
264
234
217
197
180
161
195
179
178
208
206
165
185
183
146
272
177
194
221
196
215
222
165
163
225
229
168
200
167
197
211
220
208
233
204
177
250
188
230
196
153
167
193
208
249
183
239
237
188
163
203
245
214
209
234
170
161
202
88
142
156
136
191
238
154
186
188
204
201
227
250
249
186
221
216
133
223
210
202
193
227
204
187
257
188
219
194
217
143
192
244
159
193
202
198
143
172
168
245
220
225
198
150
255
210
189
172
184
210
198
222
232
230
187
195
248
239
173
233
192
202
224
212
170
191
194
199
218
241
173
217
232
171
246
206
248
221
212
227
85
229
257
214
230
225
264
241
235
105
199
254
216
181
180
217
200
174
167
200
191
198
185
256
164
178
228
196
164
212
178
185
191
199
143
193
201
258
250
159
196
177
190
177
236
199
167
195
207
215
157
203
163
262
215
183
178
183
248
225
228
233
203
154
213
193
213
172
205
232
192
185
176
153
124
217
193
243
208
210
193
236
250
192
174
209
188
184
199
133
158
175
172
172
207
228
186
154
177
181
180
192
147
239
202
201
207
249
165
233
203
204
207
142
196
153
151
246
136
172
162
211
223
191
195
218
193
229
243
202
183
143
244
157
179
243
201
214
208
205
168
217
221
186
192
244
204
146
136
252
204
248
226
237
190
251
215
170
214
216
227
186
193
195
176
149
173
168
156
213
209
165
239
204
205
181
161
215
178
162
242
195
173
235
195
212
239
160
240
221
206
209
211
221
165
214
210
193
212
205
195
192
264
196
198
158
197
198
173
244
180
212
226
160
250
172
189
181
200
237
258
239
214
222
212
222
266
176
212
130
223
220
175
176
194
227
139
193
189
235
230
185
182
178
224
221
142
164
131
190
278
226
220
200
210
174
209
161
193
238
195
254
196
199
216
195
254
214
184
145
161
244
184
165
241
221
186
197
243
218
273
206
164
206
170
191
172
251
198
235
220
243
198
214
264
259
267
234
147
199
259
243
232
207
230
168
228
181
199
196
198
212
145
198
215
191
169
189
178
238
231
206
215
246
226
182
224
146
207
249
188
225
225
196
245
206
173
179
240
201
255
120
234
212
218
253
222
177
254
144
214
200
196
194
234
136
183
196
188
167
212
197
175
214
215
221
142
258
176
239
163
264
165
127
206
167
153
193
197
131
172
210
172
230
214
212
199
157
237
194
245
172
199
205
167
259
200
228
240
249
159
174
232
206
171
200
202
177
215
191
160
245
156
208
149
168
206
221
198
226
180
189
192
187
176
214
218
154
123
126
178
267
193
165
217
134
205
207
170
177
224
137
223
240
189
226
184
144
211
232
190
99
165
208
173
234
196
227
237
178
202
200
140
160
249
203
195
131
201
228
218
172
252
161
226
238
193
211
196
174
218
137
188
191
220
173
150
241
155
218
141
177
210
191
179
171
207
200
191
244
219
236
167
200
178
242
243
130
124
209
164
100
214
216
236
194
207
213
206
215
194
246
192
174
219
192
178
166
118
155
178
191
191
198
217
232
201
166
192
220
214
241
252
166
170
159
206
259
209
243
251
231
157
225
193
214
195
261
169
233
155
229
245
179
246
216
158
198
227
203
144
192
231
202
221
203
236
199
280
197
170
208
192
233
192
222
187
240
189
189
223
180
275
251
240
168
179
133
159
249
314
258
205
208
228
238
238
255
147
245
205
212
159
161
219
179
187
193
159
195
191
185
204
203
165
140
203
222
195
194
174
145
184
209
172
218
199
183
226
200
178
163
254
197
213
253
206
211
174
207
205
241
221
205
216
258
213
219
166
201
234
193
159
203
249
169
205
221
259
201
185
160
147
137
133
188
242
175
136
168
249
165
210
135
158
186
181
231
212
168
179
178
153
240
209
249
170
187
193
178
136
233
218
220
207
185
179
217
183
210
179
141
249
113
241
229
167
226
228
289
200
210
271
219
228
225
188
215
214
171
189
170
201
218
189
219
188
195
155
211
217
209
223
176
135
211
201
196
228
209
184
215
224
160
177
188
291
149
208
249
229
269
247
226
171
215
182
214
182
155
159
209
239
221
212
194
177
209
173
257
186
132
233
186
207
182
132
156
201
210
208
222
269
145
247
186
238
177
211
166
217
164
212
181
243
172
168
256
235
237
177
190
146
217
220
175
194
200
185
182
240
260
205
204
227
236
165
183
181
184
191
186
180
154
202
190
175
264
194
197
160
210
149
240
238
187
200
215
166
180
174
132
187
163
200
176
213
205
210
173
206
162
237
163
149
220
124
174
145
268
181
194
178
227
226
207
160
215
137
233
225
208
213
230
224
155
222
200
230
193
164
229
209
158
155
178
182
278
169
234
155
215
220
239
204
205
199
211
160
212
153
120
154
214
194
180
209
150
227
116
196
142
224
161
216
217
233
168
197
165
162
128
182
219
190
236
188
218
233
208
244
243
231
206
202
205
209
183
193
150
119
162
219
203
206
234
160
175
226
258
172
174
131
206
230
149
248
179
190
190
217
191
257
225
198
216
224
196
166
163
211
215
201
212
230
203
172
209
230
166
119
176
192
169
205
265
225
148
204
193
183
201
159
177
171
177
146
202
241
241
206
181
133
205
201
130
242
257
197
193
199
162
172
217
266
246
178
199
217
238
244
209
213
217
232
242
186
194
245
213
274
211
178
217
205
229
143
152
195
220
202
186
181
147
235
217
105
155
189
238
230
170
166
205
226
225
202
186
224
171
198
192
207
177
240
258
243
193
180
194
177
192
192
153
148
159
164
200
220
139
253
199
241
212
186
209
173
238
201
213
188
201
180
136
253
193
284
200
225
178
180
284
181
161
158
120
198
175
150
174
241
252
196
268
256
196
258
147
167
195
235
317
172
142
164
205
274
172
189
132
218
126
185
192
211
211
204
164
187
175
237
183
192
206
222
220
245
214
170
187
135
240
227
175
165
283
163
213
191
168
153
211
188
213
204
241
178
161
178
205
200
201
224
162
245
214
198
159
214
170
242
178
208
257
110
239
239
175
191
206
242
247
171
185
196
199
188
212
189
202
216
232
173
207
214
186
231
213
215
165
252
228
223
235
196
232
189
176
236
195
217
208
170
217
223
224
151
193
210
172
254
175
124
213
126
222
150
175
151
198
207
197
146
219
150
166
173
156
166
171
155
181
237
204
186
232
140
178
207
199
223
156
225
133
234
238
152
222
164
215
179
208
150
238
143
212
95
184
210
230
212
169
199
188
185
225
204
225
196
239
170
203
256
201
170
184
205
204
246
146
230
159
162
233
282
207
153
209
164
171
196
220
193
147
242
186
280
165
187
228
251
151
212
148
177
111
208
194
204
239
169
199
163
207
210
230
204
166
260
175
204
192
187
204
195
203
237
224
224
216
226
205
204
140
205
181
170
155
214
184
160
132
216
197
184
221
184
215
194
209
170
167
186
191
174
217
185
221
275
220
249
159
192
131
169
206
256
120
214
207
207
192
241
186
199
211
237
166
226
232
252
214
176
264
169
210
161
199
215
256
226
232
211
210
215
219
242
197
147
199
232
168
237
174
197
253
148
234
261
212
247
158
182
189
213
194
168
153
193
211
192
235
149
190
198
161
201
146
196
176
230
183
129
195
183
214
187
171
265
220
188
188
245
205
230
227
207
211
189
219
170
223
220
207
257
210
211
206
229
188
207
186
185
150
235
235
175
142
219
225
231
214
209
227
199
221
177
168
180
218
168
196
167
231
217
140
176
148
161
251
214
182
207
191
224
148
220
206
182
205
157
207
137
162
201
176
197
239
135
261
231
269
135
223
145
195
229
259
175
205
153
241
226
220
180
213
226
158
182
214
224
209
206
214
226
198
218
205
156
191
223
212
223
151
194
166
230
230
168
235
225
181
176
256
142
277
178
192
249
218
133
226
186
144
207
222
213
198
145
220
214
225
211
175
190
238
225
234
225
184
223
205
220
238
154
200
258
196
215
221
253
151
207
225
209
237
203
159
241
170
181
213
167
205
122
227
189
176
225
221
173
221
142
222
202
171
250
188
187
259
241
160
197
201
157
217
185
191
225
186
190
159
212
229
170
203
241
175
206
203
168
237
197
75
251
195
197
295
127
200
183
194
183
208
215
181
275
200
233
196
202
174
244
177
210
229
160
237
227
195
153
216
203
158
219
187
191
187
202
155
212
207
231
208
208
181
161
186
216
200
232
248
164
226
216
221
156
181
260
184
229
202
209
188
176
190
138
219
236
231
212
224
199
153
151
251
137
200
200
161
225
242
215
262
165
193
193
240
200
143
146
177
243
216
262
208
218
237
175
223
203
217
172
202
91
236
136
145
185
201
180
215
276
196
236
214
225
182
173
153
202
152
210
174
185
197
259
183
85
175
150
236
220
232
204
209
222
237
219
199
190
180
242
203
208
207
157
237
236
212
252
177
213
223
207
209
184
245
198
229
211
182
226
203
208
219
151
180
164
161
176
170
219
213
223
195
170
237
223
206
166
193
210
208
200
265
156
107
165
183
200
196
177
258
217
150
240
229
200
186
274
222
205
177
195
254
225
213
261
140
201
262
205
199
213
208
188
194
209
141
178
203
248
152
195
134
214
242
160
213
171
190
244
228
162
213
149
265
194
173
255
130
197
200
202
177
167
186
244
174
192
110
189
233
149
240
179
248
165
243
222
173
234
234
190
189
204
224
209
235
248
186
213
229
253
212
184
183
215
113
219
148
187
204
190
169
148
173
193
213
174
203
185
222
193
210
195
171
159
176
174
162
212
227
204
201
167
207
206
205
178
127
147
201
210
178
197
187
230
218
229
280
175
163
199
199
248
152
215
159
238
214
191
220
202
179
214
208
209
166
223
201
182
134
234
217
252
172
204
238
208
224
189
230
170
190
232
174
150
262
155
165
261
184
211
229
186
201
210
217
139
227
221
220
249
202
230
181
147
155
176
162
140
205
262
162
215
142
245
205
266
227
222
246
211
192
224
236
177
220
185
178
224
199
272
213
159
172
218
179
177
195
195
123
155
166
184
185
206
228
162
156
154
201
204
182
246
233
172
182
206
227
161
192
196
254
137
202
184
191
163
156
170
261
225
154
238
185
204
230
201
193
138
131
258
245
228
190
219
191
249
160
176
209
177
111
193
188
156
179
225
218
225
100
214
157
193
189
266
187
179
218
170
180
245
224
198
157
210
203
240
177
198
187
181
225
155
213
145
206
234
212
211
217
177
242
138
218
189
235
251
215
163
246
210
166
179
136
192
181
214
256
181
249
278
237
204
238
162
211
210
183
174
185
231
158
234
193
156
159
208
98
202
198
241
168
274
204
228
260
227
239
229
214
194
182
202
166
184
217
233
215
233
140
220
209
221
188
218
212
118
199
248
193
208
130
194
193
178
127
288
240
149
210
224
184
221
202
176
163
196
231
191
184
168
231
240
233
191
204
190
186
162
228
174
176
193
201
162
206
185
145
182
209
126
185
135
201
238
136
154
215
275
191
241
192
138
187
169
158
177
196
230
257
226
189
216
187
170
207
150
172
219
185
223
175
249
203
247
173
231
207
180
219
166
211
146
197
212
178
213
179
213
147
185
188
128
224
259
202
222
195
194
158
229
222
171
181
215
204
180
211
195
181
214
197
187
215
257
176
153
202
202
146
254
150
213
236
188
243
189
206
194
188
257
111
191
210
248
224
203
216
244
157
203
127
191
243
231
216
200
223
185
193
194
154
149
200
232
166
194
188
179
224
209
205
223
177
199
239
225
217
196
176
167
182
154
255
284
177
237
243
139
152
173
200
134
165
193
228
151
218
175
242
164
283
189
245
192
234
262
230
250
188
162
204
158
200
205
186
200
232
186
214
164
201
190
167
242
221
219
194
178
251
180
234
151
231
190
200
209
244
253
220
172
190
130
249
135
146
234
190
198
195
214
245
182
198
221
196
195
214
190
181
270
259
165
178
198
205
186
199
248
265
162
219
152
245
228
188
152
173
202
216
228
228
245
224
163
238
192
175
208
188
199
182
261
224
217
136
216
212
252
160
234
157
140
134
187
168
206
234
209
119
175
168
152
177
209
176
181
225
200
206
206
177
208
204
225
214
236
183
203
198
239
224
247
219
221
210
125
208
166
126
168
265
179
235
166
201
196
229
254
225
177
189
204
257
269
234
188
208
195
246
214
268
175
169
221
229
169
162
207
178
179
170
221
245
205
205
195
181
206
164
177
200
245
109
181
196
183
163
155
197
294
175
169
187
165
113
217
219
181
204
187
203
168
219
201
200
232
89
198
158
213
167
193
255
187
171
241
202
232
196
202
183
215
157
228
192
223
151
191
155
186
277
190
175
247
166
201
252
161
247
195
187
217
181
178
204
161
214
160
169
249
206
138
148
255
166
273
226
198
231
182
246
145
140
166
164
247
255
233
157
226
232
255
274
203
223
216
165
214
199
162
230
164
258
220
232
229
170
191
183
129
192
175
221
236
225
217
204
199
172
246
213
215
212
197
209
228
187
180
148
244
179
153
230
227
227
202
206
165
196
198
213
235
186
204
229
171
231
181
153
206
216
235
194
188
192
171
204
176
275
196
184
244
182
176
181
207
231
168
236
146
198
143
223
184
183
179
238
205
171
260
211
199
190
170
215
75
149
191
230
235
243
221
156
152
197
219
215
188
201
213
281
175
190
158
197
169
223
200
181
179
154
185
216
212
261
233
228
177
243
119
142
201
158
197
145
213
260
223
233
201
146
216
180
194
214
166
226
147
193
186
183
206
186
170
200
202
265
187
176
210
150
185
220
234
179
159
192
234
179
201
186
182
187
207
207
226
235
205
167
189
167
230
182
160
230
202
174
167
240
264
168
167
238
169
195
203
213
209
251
237
125
243
236
154
191
209
188
207
161
212
214
192
246
198
179
139
263
145
167
122
234
208
258
202
163
166
161
215
205
212
169
280
203
187
206
157
150
101
206
172
210
188
195
217
142
216
187
170
200
220
208
212
212
229
220
190
156
198
200
223
210
234
210
215
181
179
196
205
174
193
196
169
174
250
214
195
217
268
195
203
164
238
201
243
234
173
161
201
147
150
210
199
223
201
149
157
152
237
243
216
193
231
146
275
211
196
159
213
247
191
186
115
231
170
156
194
263
250
211
200
248
144
121
128
167
246
219
153
223
262
155
176
238
199
189
222
203
260
208
180
186
215
212
213
174
165
170
175
139
224
160
229
177
210
253
178
219
196
180
157
145
257
232
170
168
174
138
167
166
157
178
197
174
218
231
172
183
188
192
185
221
173
177
213
180
152
173
230
166
211
190
235
199
214
197
183
183
201
177
223
200
233
220
182
131
217
218
190
194
213
153
187
159
189
212
206
178
244
190
180
268
231
237
201
227
165
250
203
164
184
189
216
172
199
245
217
161
158
164
166
163
154
189
242
225
192
203
278
259
155
195
261
110
239
174
216
171
236
171
152
233
152
250
261
175
178
171
276
192
195
244
110
210
215
172
191
206
199
195
188
157
215
244
172
148
231
160
211
239
96
202
216
168
177
260
219
264
199
144
145
228
188
183
151
153
174
134
260
154
207
201
228
279
254
220
202
157
236
213
217
200
197
175
199
183
231
228
223
233
160
212
246
255
225
188
247
234
187
199
209
228
173
182
182
233
186
199
250
140
162
160
218
178
255
185
133
254
210
196
210
230
187
234
259
206
192
219
214
187
148
224
199
224
217
183
220
206
241
243
139
179
157
181
166
227
158
225
185
264
173
198
124
197
185
148
138
156
240
192
140
172
236
188
191
215
146
103
240
174
167
221
233
261
202
207
245
194
252
198
214
183
206
143
224
242
157
231
219
174
205
217
117
212
170
242
174
129
204
210
212
172
152
251
256
188
188
182
142
203
255
158
186
216
200
170
172
234
234
236
176
218
158
123
203
208
222
181
215
231
223
229
165
234
218
162
215
222
167
243
171
249
194
184
227
137
174
238
177
239
268
224
208
211
151
196
198
220
192
220
220
140
165
164
228
194
226
214
168
198
203
235
172
210
198
142
228
199
165
202
180
222
239
247
264
180
192
186
180
175
215
193
259
155
163
147
188
166
248
163
175
199
191
227
100
174
275
178
203
248
127
238
173
247
215
135
200
240
203
216
217
214
178
177
221
210
117
223
235
182
184
213
198
185
250
195
141
239
165
163
263
186
182
186
227
242
234
252
205
187
188
206
191
161
219
192
248
192
202
154
190
198
204
221
177
220
224
212
178
166
228
181
166
215
199
148
201
186
227
126
212
194
187
175
157
207
200
223
214
216
155
203
217
249
248
222
203
199
235
265
216
205
229
205
210
285
196
191
197
264
149
249
207
240
199
168
215
219
224
234
231
198
214
215
215
211
196
175
192
242
175
117
214
251
163
156
238
214
175
162
245
141
202
193
212
173
236
211
216
220
207
247
213
154
201
239
180
160
186
156
178
189
202
130
208
202
192
181
219
128
167
192
206
205
127
158
113
221
140
184
258
213
260
225
183
153
291
199
137
173
216
187
202
167
257
192
230
221
167
135
233
203
198
221
208
159
167
160
180
130
225
185
154
158
179
235
151
218
255
212
221
196
240
208
159
238
198
178
206
221
183
167
199
204
185
196
214
185
201
225
204
190
211
218
208
218
184
202
212
255
246
241
280
221
242
161
194
179
223
206
211
199
187
169
198
190
201
227
211
220
208
219
195
203
177
195
204
132
220
187
176
140
247
187
209
240
239
222
218
166
213
217
150
182
251
156
185
232
177
228
131
212
251
247
220
277
179
101
291
231
159
253
198
135
199
187
245
156
169
173
217
154
214
164
204
195
192
240
208
209
238
220
195
187
178
282
180
140
161
238
219
215
226
204
185
220
265
214
216
232
152
238
155
273
171
159
204
209
159
191
206
171
198
248
239
187
128
164
211
200
175
217
188
233
198
155
251
207
242
264
237
192
205
201
255
187
273
213
212
240
145
275
205
92
240
216
236
200
205
189
227
173
179
162
192
146
193
214
227
205
211
235
227
201
259
249
198
191
242
176
223
166
165
193
274
193
215
118
139
237
176
176
170
121
154
188
185
195
212
167
223
232
249
222
232
194
231
140
196
224
159
165
219
164
217
176
122
245
158
200
211
199
225
216
135
198
222
188
241
220
151
204
136
214
156
93
205
243
171
168
237
208
217
207
200
148
218
220
199
204
232
202
250
186
256
200
239
229
240
194
174
144
260
231
193
187
172
237
172
167
267
140
186
196
217
231
238
227
189
186
167
225
199
149
231
176
211
185
191
176
199
168
193
210
186
144
226
178
172
210
202
182
203
208
207
179
197
204
192
151
166
203
218
156
202
172
204
224
118
226
171
166
191
189
203
225
180
182
172
218
247
224
175
233
148
183
196
213
217
173
114
144
178
120
226
214
192
184
244
192
246
216
190
181
177
147
176
231
173
207
215
252
234
205
216
213
234
234
127
200
176
226
233
237
268
178
221
232
232
155
182
226
197
157
259
115
168
217
163
245
222
165
210
187
185
257
183
181
205
188
158
216
192
183
197
252
206
187
170
167
218
245
214
173
172
248
254
184
163
182
215
208
211
180
163
250
205
193
193
264
187
164
196
212
198
277
189
252
229
246
185
188
110
212
166
269
240
240
224
151
178
176
153
223
182
266
164
173
195
219
186
296
241
168
207
221
244
191
225
207
249
262
227
157
262
187
176
215
219
169
223
214
259
192
221
205
247
175
196
236
187
169
203
228
200
198
200
161
215
217
226
228
212
227
219
187
236
129
208
246
231
249
231
189
230
217
195
210
204
220
220
268
203
225
218
169
195
199
271
233
205
194
200
225
193
217
165
216
196
176
265
171
234
190
218
229
242
163
245
286
197
215
232
205
183
116
197
236
185
172
227
188
240
205
205
276
254
142
224
215
185
143
188
172
184
214
195
218
163
204
232
243
232
201
194
213
216
163
205
209
240
218
201
188
214
158
160
232
273
212
209
204
241
161
249
115
126
182
197
159
165
168
92
155
204
150
240
205
196
234
184
199
182
158
179
232
156
193
206
238
222
237
201
198
142
203
263
264
237
228
178
187
188
128
224
173
189
167
154
177
178
150
167
212
160
203
166
201
189
173
222
199
209
167
218
269
202
265
192
210
118
210
177
186
160
242
240
159
147
222
201
178
180
202
201
204
169
209
174
229
193
207
184
218
123
111
196
254
221
205
155
214
184
240
252
197
218
176
153
184
146
196
209
225
204
253
195
267
156
184
216
245
261
248
188
230
231
237
175
143
273
211
135
218
198
197
232
223
202
158
215
223
164
224
152
206
173
118
252
168
212
253
158
159
184
227
206
171
218
172
261
192
186
117
252
169
219
206
256
210
221
181
191
221
255
189
238
264
197
244
191
149
243
155
201
243
220
170
218
187
167
197
166
255
194
202
208
216
156
185
244
194
202
231
235
175
143
212
156
165
186
129
238
219
191
161
170
143
216
146
167
180
159
244
187
261
202
237
234
206
193
199
247
201
234
204
236
256
188
191
217
188
131
180
248
197
219
214
210
180
171
197
261
202
234
212
237
204
241
180
208
272
218
188
181
241
240
238
198
171
199
160
202
214
212
167
228
254
168
226
196
240
182
204
189
179
237
155
168
196
251
146
231
212
245
189
193
137
193
152
202
179
185
178
164
194
186
175
208
175
183
262
203
238
259
112
191
201
251
187
173
143
237
243
203
204
181
255
190
195
240
150
169
158
235
224
222
231
172
216
155
204
211
222
211
153
195
216
224
169
158
198
273
218
186
196
189
255
160
198
218
207
180
225
257
252
239
217
254
235
159
191
223
142
240
177
189
215
166
204
219
211
123
194
195
181
238
246
239
243
220
185
158
221
223
208
223
194
215
181
204
214
211
198
235
187
146
163
214
179
258
241
185
226
217
190
150
225
187
196
169
225
176
170
211
165
186
204
252
199
210
204
207
234
192
170
266
213
234
242
149
250
198
234
168
217
209
206
208
230
207
249
234
201
221
167
225
222
198
187
199
214
222
221
198
240
218
252
167
188
163
220
260
155
129
255
169
225
190
192
239
234
215
229
198
233
138
169
197
222
239
178
175
201
178
199
228
210
168
166
223
211
209
144
209
172
179
166
186
238
300
222
179
218
240
212
213
216
254
173
168
118
230
199
220
205
207
201
199
212
222
245
204
170
198
260
193
209
117
153
219
205
161
180
223
215
225
252
135
221
187
204
188
216
170
159
206
204
156
187
176
143
223
227
191
145
225
172
239
183
236
229
192
247
211
248
166
182
147
261
202
151
214
215
167
237
182
207
173
215
167
174
158
176
220
197
141
189
224
201
220
207
237
168
283
144
188
174
203
184
135
168
199
177
186
228
252
130
193
153
193
182
232
197
232
202
210
192
181
218
134
142
217
240
174
230
265
156
215
142
165
200
269
147
213
186
206
186
209
227
256
160
152
275
243
225
173
214
150
208
206
172
258
195
119
219
190
178
185
164
197
234
192
196
192
190
182
242
227
193
207
263
217
248
156
241
255
207
183
192
147
235
196
252
230
201
198
144
242
195
250
175
275
265
241
165
146
246
202
171
161
184
186
179
250
169
175
187
239
200
225
238
257
156
170
190
267
270
222
159
194
212
182
146
148
222
216
198
136
210
223
173
155
217
226
194
199
203
238
208
208
229
227
265
203
196
207
225
195
185
189
200
166
141
168
231
272
200
199
202
179
207
178
180
185
216
198
199
235
236
224
145
173
296
162
203
218
131
176
209
105
214
185
242
206
183
201
185
168
227
242
257
229
183
193
252
220
213
192
171
231
182
208
207
272
208
180
179
172
165
188
199
211
230
165
186
176
254
191
183
179
241
214
177
234
113
208
180
116
263
217
244
187
214
200
232
189
240
211
224
184
185
172
165
203
152
195
163
204
246
191
180
234
145
244
216
238
197
187
208
212
177
227
159
188
130
249
194
176
212
192
221
174
208
201
186
225
197
244
176
205
229
199
170
229
142
206
167
239
206
203
211
167
213
267
268
221
237
214
188
217
165
201
156
166
180
211
185
191
210
198
221
200
204
215
180
199
182
212
277
186
179
169
211
148
179
170
161
236
214
234
185
217
236
204
226
235
196
181
182
235
182
208
108
172
227
183
217
202
160
241
188
254
223
177
211
160
189
177
177
207
179
198
229
212
229
166
224
228
188
284
172
243
250
187
188
187
234
207
222
209
243
213
149
202
216
107
219
158
247
250
244
235
202
205
189
165
216
234
220
239
152
248
188
200
189
212
165
209
190
215
255
157
167
231
180
145
270
225
165
188
217
154
209
194
241
197
224
195
196
196
201
142
205
237
220
187
206
199
260
174
243
156
196
204
223
252
192
177
205
189
235
232
253
226
207
192
214
222
140
162
217
217
191
209
207
157
210
173
161
135
232
211
187
234
157
246
184
167
221
204
189
168
219
147
170
194
245
208
235
254
219
196
210
197
134
192
202
155
184
135
239
229
191
219
244
149
210
232
206
161
224
176
186
237
171
204
248
195
225
202
244
224
198
240
123
282
239
190
207
220
126
210
208
251
233
232
229
221
192
279
197
202
196
260
197
205
228
244
262
219
236
192
248
199
196
233
186
197
173
201
230
200
136
186
170
182
219
179
218
209
174
216
234
172
222
224
197
214
168
148
192
181
118
236
232
178
273
182
146
202
224
206
171
191
198
205
227
218
208
182
229
147
258
209
195
214
174
186
237
180
212
180
177
180
138
245
181
229
188
169
229
244
190
233
228
276
217
232
169
298
226
235
185
180
201
172
236
194
201
209
278
173
253
229
236
221
210
155
239
193
159
229
137
195
168
170
164
179
175
192
217
186
196
245
201
216
145
174
163
214
193
110
188
245
212
174
182
147
220
230
249
239
149
223
224
181
230
219
237
202
165
150
171
177
163
200
238
207
193
196
213
220
215
215
220
252
206
159
188
212
210
240
168
175
218
255
197
183
222
231
184
201
211
253
161
196
179
202
131
224
202
203
187
234
208
182
284
177
207
202
124
181
172
203
194
235
192
156
282
207
209
211
196
149
247
197
228
211
240
169
188
164
169
229
276
213
131
271
186
144
243
184
194
244
173
186
244
237
281
201
199
152
196
244
143
205
236
151
242
203
189
206
164
133
176
226
206
189
257
221
203
248
217
277
117
163
215
206
173
219
174
183
184
208
206
213
172
140
168
219
148
261
203
179
205
160
178
199
176
201
191
168
210
231
199
193
176
193
126
244
206
209
193
197
248
199
194
205
237
241
217
254
167
228
194
203
216
206
146
249
180
241
161
196
227
265
189
208
258
225
191
209
225
176
179
224
205
258
153
150
187
227
168
235
234
218
177
196
185
210
166
196
230
202
185
216
168
185
179
119
200
225
154
231
189
203
242
176
215
238
185
225
140
178
200
173
248
296
177
185
206
269
163
204
205
236
163
219
177
267
167
123
215
200
171
208
196
238
173
230
237
168
192
189
170
179
164
190
200
166
183
223
233
202
232
144
193
198
127
153
162
210
208
196
213
200
227
150
211
181
258
211
246
213
194
193
226
239
126
210
221
196
172
167
223
193
211
203
165
246
228
191
258
237
221
191
274
177
240
233
203
217
176
203
179
192
240
259
168
215
224
205
162
242
187
218
202
206
221
246
199
249
211
191
136
235
248
219
228
222
168
155
200
232
222
210
161
210
250
202
247
202
236
214
166
242
242
158
210
171
238
203
200
182
206
205
206
231
214
110
222
225
190
219
153
212
240
172
240
173
227
242
135
194
216
168
201
243
230
136
221
277
163
221
222
176
221
216
186
244
211
219
190
220
175
169
219
216
213
166
200
152
194
191
239
182
214
203
162
226
200
241
183
157
171
204
155
194
194
207
202
148
153
209
184
270
203
157
183
257
175
192
183
132
250
163
194
196
192
212
190
192
151
179
196
195
220
197
184
210
156
280
205
178
217
164
278
184
185
192
184
219
210
203
173
202
258
180
234
189
243
198
165
159
205
197
242
151
138
163
172
253
252
145
191
221
229
176
243
232
159
170
225
222
146
156
161
236
124
221
178
190
214
218
172
172
237
261
237
145
206
244
159
162
246
234
245
158
207
226
225
255
228
198
253
218
291
204
223
180
205
169
166
203
145
280
211
217
245
149
229
188
197
173
205
148
191
184
188
126
168
260
166
168
215
179
194
152
215
233
238
199
226
240
149
216
183
177
190
174
145
131
220
243
253
157
213
204
246
224
149
203
279
257
226
280
180
231
158
218
204
236
195
179
251
197
220
162
179
175
182
220
257
198
252
222
235
174
175
226
150
193
212
254
225
163
198
188
187
180
198
248
188
230
265
205
220
163
227
211
242
158
245
213
178
262
198
238
245
206
192
187
107
204
192
191
165
149
272
229
248
198
239
189
228
173
186
173
158
221
154
223
211
184
222
259
181
252
155
270
211
166
176
192
168
167
199
248
212
171
246
199
166
188
195
216
233
213
229
151
209
168
177
210
196
180
196
174
226
236
272
182
197
148
201
161
206
190
182
251
219
239
188
189
240
233
251
217
219
185
190
196
201
216
172
163
213
184
195
179
153
228
186
186
212
218
220
213
212
203
167
188
262
206
163
210
225
237
241
143
239
248
157
171
194
231
199
248
226
132
202
243
165
185
186
218
202
206
182
180
224
227
212
166
206
203
204
275
159
231
245
206
242
162
195
177
239
209
258
218
131
214
183
200
201
196
160
240
153
216
225
247
182
206
209
207
238
156
205
203
163
202
186
256
178
216
235
170
250
171
204
204
222
203
183
205
205
196
143
186
203
214
229
223
246
205
192
207
206
208
205
195
246
182
186
195
221
218
188
199
201
139
204
174
241
234
188
170
238
194
186
213
246
145
232
259
224
172
160
247
197
196
224
173
180
180
171
160
182
182
183
195
242
142
197
187
152
232
190
184
220
214
253
197
226
279
185
217
232
245
175
151
185
157
230
208
178
188
186
175
257
173
189
205
234
190
201
211
182
164
168
172
271
108
116
226
214
202
237
142
237
198
187
162
199
232
212
214
180
158
186
226
228
291
208
164
183
165
225
195
192
166
195
221
214
168
264
174
199
203
210
223
159
194
227
222
221
227
202
224
201
221
154
222
203
220
173
174
153
223
182
202
207
231
211
211
167
208
152
227
219
213
213
146
190
228
239
162
148
194
191
216
171
174
229
155
216
250
178
158
218
219
180
213
179
182
220
167
148
267
153
162
230
151
220
172
180
156
183
112
138
173
225
155
143
169
199
225
245
245
212
150
104
221
218
140
212
161
183
256
243
148
214
163
240
175
215
228
171
230
173
197
167
200
217
224
146
254
207
200
220
205
218
190
208
212
172
245
234
148
176
269
186
212
195
176
121
213
203
165
220
186
236
192
217
207
212
198
232
191
193
162
252
227
171
243
172
175
210
186
202
219
189
229
252
199
189
175
233
189
239
247
238
173
253
204
217
225
111
245
199
213
205
155
231
173
231
210
193
180
174
206
182
210
157
166
186
159
189
224
230
194
189
220
241
258
189
235
218
236
202
177
199
199
254
213
217
206
187
165
203
216
193
206
204
204
170
235
158
169
223
253
159
222
228
218
157
183
190
208
248
196
204
199
201
183
191
211
198
137
238
190
253
249
203
212
215
192
198
182
216
173
166
193
214
222
172
179
191
219
246
166
210
220
123
185
195
187
192
206
275
247
260
225
196
223
224
275
206
201
209
156
248
166
189
202
184
142
228
212
225
187
229
208
217
155
182
202
211
176
193
197
197
197
176
107
243
212
180
162
187
209
210
262
210
230
212
197
225
205
175
215
151
206
164
239
164
239
237
241
222
178
189
196
282
146
198
290
152
211
182
215
224
235
241
211
212
239
244
211
200
161
232
235
211
230
195
222
159
227
229
205
214
141
250
223
230
206
183
153
153
147
188
195
185
211
260
258
200
179
256
219
174
250
211
181
227
276
89
192
194
163
169
202
265
213
243
205
208
146
264
185
187
265
287
221
216
214
224
209
206
206
269
204
135
206
208
205
186
135
171
233
241
223
233
226
139
218
190
194
186
166
195
254
198
248
294
180
244
192
183
204
183
200
221
238
195
155
219
156
195
164
263
141
187
182
143
225
114
143
212
203
196
148
146
225
191
198
202
200
241
218
165
168
204
201
236
162
217
177
166
266
202
178
192
210
171
193
194
191
207
207
196
220
198
260
149
277
197
275
219
206
202
217
162
196
207
193
178
233
169
210
289
138
174
192
225
202
213
192
211
198
201
222
189
197
202
175
215
260
181
197
200
179
235
251
215
175
208
190
106
229
219
235
200
204
205
206
203
163
225
194
178
194
209
236
158
190
157
173
216
227
177
215
152
193
252
225
228
184
247
156
221
151
168
237
228
199
202
257
168
185
212
230
207
168
207
193
233
176
220
201
212
178
160
195
203
156
184
189
123
156
186
182
239
182
185
161
260
187
230
221
230
223
185
203
156
200
165
164
223
174
232
202
207
213
159
224
220
201
257
196
149
180
148
213
183
240
184
245
156
210
205
215
169
281
203
229
192
207
192
255
196
201
163
185
151
240
261
201
203
191
186
208
259
205
238
156
211
228
263
198
216
229
194
177
162
210
179
201
218
156
204
206
261
203
152
237
157
206
243
216
197
198
178
172
192
243
219
236
195
216
184
163
242
212
273
247
219
217
143
227
161
217
192
201
225
189
168
221
184
211
192
197
159
183
222
177
141
105
286
228
180
191
248
160
192
165
173
213
212
172
174
227
211
226
175
246
153
214
229
225
183
197
255
186
178
172
169
188
205
210
224
212
197
152
229
221
224
271
227
258
187
199
154
144
176
174
244
174
235
210
175
180
243
217
178
221
179
238
158
184
210
253
149
240
194
202
173
264
214
201
195
182
224
162
184
139
180
171
201
186
232
202
176
124
198
145
247
210
185
195
147
206
211
204
195
199
258
182
217
209
193
232
240
153
193
156
150
219
233
224
168
152
209
244
236
207
200
147
196
199
257
182
231
125
136
179
178
170
239
222
220
211
154
214
188
147
218
254
197
185
189
190
242
129
207
225
234
172
243
191
226
144
145
241
150
218
132
206
161
142
170
245
198
189
250
206
215
229
155
181
190
213
152
245
219
206
210
136
203
218
184
224
98
150
207
246
118
242
298
196
216
119
270
236
238
174
215
194
231
242
256
259
183
218
178
231
259
164
233
201
197
275
218
224
174
234
193
206
136
205
115
194
237
200
221
251
173
200
257
282
203
210
250
189
226
223
214
177
242
139
143
212
187
198
146
279
191
184
188
209
211
197
210
189
208
160
272
190
212
180
208
177
163
194
163
94
233
207
241
191
232
186
222
139
214
198
235
156
130
189
211
234
177
208
231
244
206
237
223
144
202
156
243
176
197
88
214
171
238
203
217
176
257
175
219
152
226
206
235
161
189
223
232
253
158
223
197
195
223
222
191
236
211
177
218
235
188
160
235
210
184
207
224
221
212
206
202
224
241
246
130
132
180
239
233
204
135
217
175
238
178
236
206
149
158
187
230
174
185
187
242
172
213
240
232
167
242
200
210
226
190
211
172
187
253
224
180
205
208
246
252
151
270
212
159
215
254
197
190
177
236
208
262
199
184
183
206
202
215
200
215
210
207
248
200
212
170
215
178
227
228
236
138
177
202
166
169
193
202
189
137
200
135
220
208
202
191
203
231
186
103
208
213
204
191
205
212
208
198
126
235
196
204
246
267
218
203
157
266
167
238
225
194
217
206
234
201
200
182
184
181
242
208
197
215
201
228
189
206
149
200
195
161
226
256
249
196
232
232
200
206
170
197
163
141
247
216
175
198
200
146
165
126
198
210
208
153
263
179
252
185
214
167
229
209
237
179
225
253
220
235
270
171
175
267
201
214
170
154
150
188
196
206
237
228
206
187
215
179
149
219
189
257
213
208
198
275
185
165
183
179
168
162
164
200
192
176
191
173
213
186
284
191
190
162
136
193
215
167
211
187
218
173
249
222
170
194
206
218
134
208
221
275
182
203
204
236
215
182
183
149
210
152
224
190
198
236
200
157
200
239
183
237
170
229
201
217
200
198
241
181
206
194
186
261
185
258
140
187
205
186
230
120
180
233
184
188
272
250
207
182
219
133
268
261
226
250
198
240
202
213
192
204
231
154
215
189
207
252
167
256
208
208
169
252
260
175
214
216
161
278
234
143
215
144
191
220
224
147
221
209
142
245
255
243
182
173
167
148
182
244
175
224
215
216
198
204
192
206
176
209
181
139
191
171
224
208
152
220
226
141
156
222
128
207
217
134
219
167
162
170
159
179
181
193
177
162
212
166
221
222
190
236
203
208
196
192
207
221
229
182
190
176
171
169
195
206
206
233
193
201
188
240
217
214
198
203
109
211
185
159
209
138
166
168
244
195
209
214
161
181
182
192
168
151
151
171
180
209
200
207
218
242
223
188
252
227
172
174
198
180
233
205
205
210
253
203
186
187
146
132
204
214
194
204
214
234
206
241
221
242
249
190
181
220
207
202
287
199
194
178
203
216
187
236
177
245
249
185
162
174
250
137
196
198
220
154
186
147
168
170
176
195
207
206
225
200
171
149
212
230
235
220
210
231
124
217
241
186
164
236
172
189
221
197
243
229
176
185
229
194
253
181
144
155
212
208
160
205
203
178
188
216
192
192
191
193
155
163
169
158
237
189
220
230
237
145
235
203
233
171
235
264
161
152
219
203
184
236
196
219
201
197
220
168
203
130
169
200
160
170
203
221
241
229
238
208
187
207
188
204
254
196
243
164
192
236
162
228
197
165
204
263
236
253
251
227
107
216
178
186
198
150
227
172
225
217
196
252
128
203
175
150
222
194
167
187
182
212
207
201
239
221
244
218
198
239
195
178
209
187
206
203
220
186
217
138
218
267
216
170
213
160
204
198
250
233
232
232
250
227
233
203
191
265
179
224
186
155
169
207
146
285
195
224
221
175
237
153
180
232
138
214
170
230
222
218
235
164
178
159
191
141
243
239
188
134
200
178
229
197
167
234
199
174
213
271
186
234
197
170
179
204
221
118
220
220
203
272
216
232
166
220
233
168
157
219
190
250
216
171
244
201
180
213
199
194
205
240
222
155
233
190
229
204
186
153
220
247
216
200
149
204
197
175
179
166
174
237
146
205
203
189
177
246
177
229
180
276
157
220
140
226
194
237
204
203
226
219
183
124
189
243
176
211
202
140
226
213
149
195
209
185
222
208
201
197
171
208
245
183
120
169
239
228
205
175
169
237
112
186
218
178
234
188
230
169
223
201
214
223
217
214
208
165
199
210
180
185
224
193
153
223
199
172
252
183
184
179
179
217
193
234
183
173
129
216
178
179
246
259
208
230
221
199
236
226
127
231
179
179
193
210
223
211
206
197
194
180
266
223
198
253
142
219
195
217
154
241
168
183
154
219
151
157
186
253
189
176
175
189
183
195
202
244
181
220
220
192
244
230
177
243
205
191
174
210
181
278
198
157
159
167
190
190
199
239
184
177
183
216
145
224
141
139
193
210
137
208
224
216
199
168
257
231
212
218
175
160
257
219
209
173
206
186
180
221
252
189
180
231
184
243
270
137
208
199
212
239
171
212
211
227
200
173
238
186
204
199
191
219
219
192
233
150
224
228
187
160
179
191
162
149
191
214
187
185
200
180
197
237
244
217
217
251
258
175
148
222
174
211
173
190
199
208
133
195
192
165
284
248
189
208
238
243
198
188
220
208
244
213
148
187
247
181
245
223
202
226
204
242
196
195
144
146
218
242
193
220
214
151
169
158
164
238
237
190
212
195
233
192
181
236
247
190
163
193
155
180
166
222
168
207
180
194
172
213
221
184
196
194
224
203
172
194
194
213
273
142
236
126
263
234
234
171
179
174
259
132
195
170
171
223
173
154
224
205
243
236
203
274
150
133
155
229
188
196
145
227
234
195
254
195
225
160
242
200
266
269
227
216
216
191
204
179
221
208
167
186
201
245
253
212
252
190
238
219
174
214
216
223
257
202
168
156
202
198
158
213
138
199
225
242
167
227
214
173
214
133
205
260
203
180
135
166
191
173
212
230
180
213
170
183
220
233
281
155
209
144
195
211
220
251
188
216
245
157
209
213
114
203
173
195
245
202
207
203
131
188
267
261
184
215
171
207
201
121
194
144
200
193
177
198
211
194
211
264
138
173
163
216
157
205
192
121
203
228
193
222
230
220
151
209
232
161
238
173
232
248
192
233
184
175
210
175
230
185
190
138
197
154
203
229
232
180
186
229
232
195
147
250
179
214
211
164
176
210
180
185
220
214
144
206
238
238
184
236
153
180
181
216
193
168
239
223
279
176
228
228
245
220
172
190
197
218
161
182
191
177
168
182
148
191
171
168
250
200
205
203
227
163
249
216
184
193
227
174
238
235
251
158
229
228
201
209
183
221
195
210
155
238
249
207
231
236
168
265
192
215
256
193
187
219
173
194
191
232
242
218
238
199
229
253
194
240
172
180
223
227
193
201
170
217
227
188
193
187
233
188
213
135
131
197
181
141
194
176
206
186
172
234
175
194
158
249
210
261
170
197
214
239
188
140
172
174
246
242
185
189
193
211
222
188
167
215
263
215
245
223
180
249
220
194
205
168
233
126
186
205
252
230
218
246
227
233
200
195
214
188
168
229
220
207
193
203
116
157
195
137
138
160
214
249
264
161
248
168
230
169
170
246
229
214
178
176
172
155
269
209
146
176
184
206
208
249
226
180
221
218
246
205
232
250
259
242
209
119
228
181
159
239
131
175
151
261
211
162
184
182
260
130
203
254
180
228
210
204
134
182
190
138
143
177
193
228
202
261
178
215
151
219
177
111
223
216
240
172
225
211
193
213
195
193
236
175
199
207
259
232
238
218
262
215
204
178
183
176
212
145
235
211
172
170
256
208
199
205
153
216
206
204
250
196
255
236
113
180
238
224
198
211
217
197
188
225
197
133
230
241
169
212
208
215
192
181
213
190
202
208
175
134
166
124
224
233
222
259
230
205
240
185
109
214
226
181
247
203
233
210
240
184
191
189
268
199
196
169
216
206
156
201
178
158
159
231
216
191
183
158
209
206
199
147
222
220
91
229
205
176
196
230
143
207
222
177
171
200
241
177
236
219
163
180
190
202
198
193
150
154
222
179
234
187
213
237
218
223
185
188
239
259
249
170
228
162
224
182
147
243
248
188
206
244
232
230
252
182
254
199
198
210
191
194
106
141
214
216
187
256
244
179
205
186
234
222
161
251
208
150
163
164
256
149
244
205
223
222
180
164
231
255
207
253
236
279
229
171
182
208
175
204
185
157
192
225
200
211
241
186
222
191
193
216
232
181
246
159
142
229
182
242
245
121
201
114
134
191
239
224
186
150
187
234
234
237
192
236
232
218
201
153
201
202
152
132
224
226
174
183
171
119
127
248
226
144
228
199
200
188
153
211
216
238
84
266
226
188
164
198
154
162
253
210
222
185
221
206
239
178
184
190
153
248
220
214
209
167
213
218
225
243
202
228
201
230
172
179
212
196
214
207
208
213
137
236
211
230
247
252
126
182
244
180
243
201
225
200
153
216
191
177
212
248
196
233
150
224
195
170
128
193
170
195
197
184
229
157
144
186
210
214
203
274
209
277
161
128
163
182
239
204
202
195
172
180
238
201
247
200
197
181
254
187
184
226
176
203
230
203
183
171
203
219
197
234
170
228
158
206
228
224
194
198
155
197
159
228
201
157
270
124
264
168
192
145
231
254
199
152
230
188
159
240
230
184
128
243
232
115
211
203
197
112
210
182
229
201
204
163
191
209
185
146
199
170
237
231
218
203
203
196
224
228
176
176
217
239
155
195
242
226
184
205
208
246
229
209
196
203
211
174
220
194
295
181
239
255
159
228
232
245
238
170
176
181
212
185
178
193
182
197
249
224
151
160
233
211
214
190
202
166
212
217
195
231
200
182
223
171
240
212
218
236
152
230
146
165
213
196
198
202
205
240
219
196
257
207
168
198
171
255
196
177
173
180
229
224
197
254
174
182
195
171
165
209
230
277
195
234
170
181
222
210
135
193
137
226
185
225
186
202
192
190
186
154
235
216
210
201
251
221
185
247
180
216
138
155
192
207
193
205
200
177
202
211
142
252
187
179
186
135
216
224
186
216
212
164
197
165
216
194
223
213
237
180
206
173
203
263
158
208
209
188
198
144
206
232
236
190
181
196
238
185
216
226
156
192
177
234
200
243
228
223
153
204
212
144
198
192
177
204
210
183
269
239
179
239
184
180
241
224
265
173
126
249
209
227
255
207
197
207
157
232
171
131
131
232
267
186
234
246
164
271
180
207
216
219
190
202
214
155
163
173
199
165
152
196
221
191
225
196
211
184
192
147
175
235
219
256
112
197
223
185
199
192
207
228
116
235
252
207
258
192
241
240
224
204
207
128
213
244
240
189
199
220
200
159
185
207
231
184
164
212
197
214
230
250
211
249
224
197
179
199
177
289
217
230
180
240
206
172
160
215
222
184
211
222
196
223
187
196
218
243
204
195
214
202
153
176
144
191
204
208
130
184
200
218
220
188
212
207
104
223
186
209
217
215
190
228
247
148
222
150
209
187
130
185
224
261
197
197
238
206
253
227
198
170
190
257
243
245
244
206
241
234
185
211
180
208
182
181
161
156
213
226
242
231
203
179
223
206
243
158
230
185
248
217
208
161
181
211
189
234
280
154
206
230
222
226
193
174
217
197
231
183
191
180
213
142
149
204
160
200
180
213
206
155
163
194
204
183
205
194
182
176
226
186
212
187
169
147
248
109
233
233
234
135
209
168
238
165
216
198
235
193
237
201
184
190
230
251
204
243
255
181
114
244
215
168
196
232
187
224
168
224
168
244
153
174
238
208
251
183
223
200
157
207
204
192
169
192
242
124
170
201
213
218
214
238
217
199
204
159
156
221
169
200
179
162
142
261
267
197
197
195
224
215
147
173
155
210
177
216
179
199
219
185
238
217
218
184
234
235
180
210
224
279
211
273
227
210
182
226
204
205
153
227
216
218
221
217
159
204
222
212
203
198
175
161
229
175
208
143
150
129
223
222
205
199
144
239
156
231
194
248
165
235
226
219
199
163
205
237
236
236
196
122
265
215
134
276
206
238
142
220
190
189
182
233
254
183
198
224
224
262
172
201
177
197
136
238
177
212
253
184
143
178
234
176
178
181
239
186
194
188
202
153
214
191
226
220
209
232
259
265
162
151
233
205
177
188
195
204
238
203
201
197
134
198
174
193
244
180
224
179
192
211
286
202
229
193
157
177
175
155
174
230
225
164
188
204
217
159
222
291
222
222
215
138
223
140
189
171
203
149
220
161
223
263
196
182
183
191
183
202
241
220
205
148
174
134
174
193
239
237
265
197
184
211
245
232
186
221
209
238
188
170
197
197
159
175
220
197
250
185
221
191
154
210
207
141
171
163
210
169
190
247
244
201
197
219
192
207
149
182
215
170
229
228
224
274
240
189
190
230
224
243
188
272
199
211
174
235
210
226
200
172
159
238
199
195
235
178
199
240
207
227
139
167
183
285
226
179
222
198
224
165
252
208
188
233
185
216
213
171
173
211
177
215
161
142
221
210
172
175
160
184
198
241
185
174
182
189
188
217
203
205
205
180
195
225
224
196
191
201
192
174
164
226
258
198
166
191
192
206
206
189
245
225
207
214
169
240
187
180
177
167
208
219
186
233
215
235
196
189
183
206
228
217
217
163
197
213
214
181
195
202
185
222
150
187
160
203
262
173
241
168
152
233
165
226
186
277
162
257
252
192
217
259
185
184
222
208
202
171
189
297
189
239
201
227
182
231
148
216
248
226
198
263
209
153
197
268
185
85
194
156
125
218
228
202
171
167
199
183
182
195
225
177
218
216
241
237
212
171
157
187
198
303
181
200
295
172
214
220
175
181
243
185
196
194
219
175
181
185
176
185
207
235
167
278
193
193
189
260
245
184
221
165
160
255
216
227
186
206
193
191
235
224
197
236
236
194
185
167
176
167
188
206
238
249
185
141
240
199
217
238
178
191
256
163
188
233
265
240
224
234
222
204
158
201
194
263
180
210
195
191
220
191
170
202
245
203
172
213
155
202
228
173
209
157
167
162
199
213
188
244
232
172
199
178
168
230
284
182
171
212
206
197
157
180
220
241
212
173
175
203
263
244
188
162
160
151
153
218
224
210
241
205
213
111
148
246
207
259
251
208
220
216
179
183
228
225
164
269
183
160
182
243
166
245
177
153
215
208
227
212
172
193
222
225
179
191
177
199
202
126
166
227
226
190
232
167
174
220
182
183
203
232
187
226
172
171
129
177
201
199
147
200
227
165
163
172
234
212
189
186
244
220
248
196
210
226
112
235
166
214
207
155
214
241
190
239
164
169
231
204
166
168
191
221
178
244
242
162
202
207
244
178
198
156
198
184
209
242
232
168
146
172
173
219
169
214
191
200
152
216
198
241
241
167
194
198
239
166
184
204
230
184
222
229
303
198
186
186
129
191
206
227
187
195
182
157
275
207
161
183
201
210
224
153
135
175
223
176
202
247
128
247
210
165
285
201
197
182
168
221
222
188
240
262
209
181
224
167
174
195
149
217
234
224
177
223
191
235
195
138
262
140
193
216
247
219
188
261
180
167
167
187
142
218
193
195
185
178
194
193
214
229
198
183
188
187
170
222
233
209
163
241
208
202
202
275
219
191
231
203
151
218
145
241
176
247
143
207
205
188
225
276
143
233
229
136
179
223
158
206
221
134
197
218
163
153
184
242
238
219
207
198
192
186
186
142
257
139
204
256
178
166
187
258
157
174
217
181
144
193
213
241
197
223
209
156
232
217
190
135
230
203
158
194
174
158
211
201
226
201
211
195
225
162
172
161
191
235
157
181
136
154
150
196
233
170
184
245
199
190
198
224
232
172
203
162
175
192
219
224
154
199
201
234
174
215
244
210
137
228
232
206
224
180
247
204
225
227
177
171
178
147
247
161
193
229
265
199
176
213
230
134
206
256
196
171
256
202
161
224
262
128
210
228
202
261
165
178
121
193
224
271
196
192
158
180
257
188
169
176
97
190
192
264
217
193
180
176
240
170
207
187
244
206
224
187
236
194
212
216
222
221
213
170
132
233
200
264
259
197
170
262
233
223
246
166
253
206
271
206
189
238
189
234
203
221
222
189
154
139
145
213
181
217
198
166
207
243
233
175
207
212
272
238
197
233
219
216
177
189
214
230
181
222
184
158
201
229
211
223
220
155
152
150
201
261
212
196
236
196
237
202
189
213
166
229
177
191
185
230
207
214
261
112
219
156
177
155
271
197
248
190
165
247
222
160
225
175
137
175
201
148
213
172
199
216
189
183
234
248
159
270
231
188
217
218
225
241
234
169
204
196
125
153
221
193
175
205
258
210
197
160
137
222
224
270
233
222
196
212
140
267
215
197
192
211
198
254
230
200
202
183
165
201
226
183
224
240
216
182
217
211
272
181
190
221
189
159
237
122
191
225
224
166
162
229
193
227
256
187
204
232
234
193
169
203
141
190
205
243
178
249
218
160
194
158
221
198
212
185
247
163
179
222
214
188
260
162
163
172
233
169
199
242
207
244
229
186
188
165
243
180
209
201
199
247
219
246
237
260
259
151
169
222
201
175
188
219
218
243
169
227
92
224
225
247
204
203
165
267
231
180
186
189
211
225
203
272
186
152
193
188
169
192
267
180
224
100
221
156
251
190
248
148
179
180
243
220
261
234
215
188
186
246
214
203
235
250
192
196
231
250
134
162
199
186
163
188
222
148
284
189
219
223
212
114
132
232
168
162
209
206
248
198
210
178
213
245
224
221
195
240
164
226
180
169
232
245
209
168
184
198
206
222
236
164
227
230
173
179
187
216
173
183
255
255
199
173
197
210
145
192
168
190
222
213
176
216
207
206
190
182
236
201
216
162
152
195
203
156
212
266
182
258
218
241
204
180
248
221
189
213
178
243
231
189
169
259
227
175
216
239
227
254
213
232
231
164
230
216
177
261
210
104
145
208
265
218
184
163
223
223
152
199
198
112
175
252
184
165
195
154
185
149
232
195
198
234
216
147
206
219
199
202
238
184
217
159
230
194
231
208
180
223
243
153
268
182
172
233
169
217
211
186
177
219
195
253
185
264
210
176
187
145
169
203
288
252
179
221
223
216
156
203
193
193
252
161
250
197
161
198
201
235
223
194
195
199
243
157
213
228
180
160
265
207
166
229
218
221
201
252
184
194
183
173
216
207
158
216
218
216
139
184
235
203
187
171
231
202
155
234
195
238
194
216
222
193
283
170
208
138
200
187
182
233
232
248
248
245
110
159
214
212
217
192
237
210
207
154
206
267
202
188
232
214
216
249
185
181
303
217
236
155
212
225
191
191
210
243
225
210
232
204
168
138
166
225
129
132
135
171
122
246
164
165
188
214
162
233
136
198
204
198
137
133
114
202
194
147
153
181
177
174
251
135
187
191
161
252
213
225
188
173
222
126
180
214
237
185
250
159
189
174
194
249
286
208
196
203
191
208
200
131
175
257
161
180
187
179
200
231
196
205
206
243
215
224
229
224
181
212
197
201
181
219
252
150
224
152
204
215
151
200
204
222
213
235
193
210
199
214
175
239
167
156
264
163
208
219
172
183
190
193
230
195
191
234
193
190
164
213
200
160
142
158
220
207
224
155
211
153
186
203
157
215
219
204
191
227
233
250
162
188
143
172
223
181
171
223
206
222
174
219
195
145
224
222
221
245
175
180
191
262
202
225
147
184
242
145
182
189
150
237
225
209
203
194
221
224
179
240
222
128
215
220
157
199
251
175
176
229
226
176
175
203
205
241
106
211
177
150
221
134
207
205
215
229
165
193
224
211
258
208
214
182
171
145
226
192
205
226
110
250
189
216
205
188
238
235
177
221
205
188
170
220
231
231
172
221
283
198
200
182
224
194
269
194
229
209
226
203
178
171
180
156
190
209
195
221
231
209
218
233
206
178
201
187
176
166
227
214
205
187
187
213
218
102
243
187
142
197
170
227
174
225
157
165
251
298
170
225
225
191
247
220
213
249
165
182
164
140
259
204
242
205
234
169
213
216
229
208
237
171
167
210
197
173
221
217
210
117
176
177
204
238
182
217
175
133
216
190
105
143
201
158
196
192
187
158
198
221
167
161
189
216
170
201
208
170
209
197
211
183
157
182
229
115
197
166
190
217
222
166
234
161
199
192
232
276
304
248
235
206
227
188
184
192
190
118
143
190
187
198
219
197
192
192
253
128
174
194
205
247
195
211
198
174
179
207
187
179
217
227
232
166
214
206
162
187
232
208
223
192
202
162
183
209
168
172
181
207
238
178
179
262
171
169
165
178
156
201
197
163
200
223
239
207
200
178
200
195
234
177
186
192
211
197
186
179
223
215
227
242
170
196
253
232
216
189
193
228
184
214
212
217
168
192
168
159
249
232
169
164
191
192
219
267
247
115
173
273
190
209
234
211
139
233
207
198
194
147
250
197
199
177
147
213
142
225
193
220
201
234
195
199
190
263
191
219
267
174
222
216
188
198
237
200
201
168
218
160
210
216
208
180
153
186
201
217
215
231
234
215
259
202
170
226
217
175
175
206
146
233
254
158
227
204
238
185
212
196
278
182
217
201
142
156
240
210
210
209
251
202
215
243
189
164
194
227
213
129
240
249
204
199
190
188
230
180
201
160
220
143
171
143
170
183
236
200
195
192
205
214
184
169
240
207
246
176
230
166
214
232
186
225
166
197
198
216
208
192
199
180
203
243
192
220
154
197
213
223
143
190
178
231
160
223
165
240
214
226
189
211
217
184
226
187
240
166
251
215
126
172
201
198
200
139
208
175
196
235
216
190
196
216
177
246
156
226
243
187
127
252
188
206
162
182
191
271
226
273
218
254
217
159
192
156
154
221
208
215
230
167
214
212
206
153
190
198
189
160
212
253
172
196
159
188
226
181
160
199
260
216
245
157
169
195
177
182
235
242
131
171
237
247
180
254
248
223
187
211
188
135
132
257
194
153
180
240
231
237
148
212
190
181
218
204
177
181
206
230
195
166
180
239
237
193
216
228
219
220
224
191
200
204
199
246
220
270
236
199
273
216
199
177
211
160
179
214
198
208
240
234
228
203
215
184
247
191
196
227
224
192
181
159
229
207
181
229
141
185
240
182
208
212
208
192
234
143
158
171
209
231
219
178
207
216
229
215
246
223
213
148
259
227
245
218
194
238
189
165
249
159
228
220
228
175
163
183
148
199
202
265
182
212
204
221
187
175
219
242
252
154
154
202
139
256
209
182
173
185
221
179
150
223
154
214
196
220
139
211
227
243
255
216
196
209
217
250
235
192
162
161
218
208
218
175
216
238
189
159
203
261
145
203
211
203
194
178
214
192
205
196
175
176
188
197
197
210
172
266
172
162
253
238
169
231
212
221
165
251
229
210
182
189
83
206
197
172
233
194
198
188
229
247
157
237
256
248
143
227
178
192
230
198
188
253
113
235
157
239
219
169
140
214
193
161
246
186
180
208
192
214
180
200
250
184
225
205
179
155
175
237
175
207
180
219
211
175
243
206
174
160
243
232
222
206
253
213
216
175
183
230
121
156
254
226
213
210
251
247
140
183
189
206
234
164
139
244
198
212
184
254
127
214
198
225
259
129
194
241
188
138
247
162
168
247
238
217
214
208
213
187
174
194
245
200
162
217
174
195
189
211
201
185
217
205
205
204
243
171
229
219
255
166
246
188
249
255
227
156
176
183
154
199
218
170
229
210
249
220
164
197
298
177
227
179
245
180
197
260
209
211
179
242
218
182
224
227
214
188
183
250
257
210
222
145
201
195
198
253
184
228
156
216
168
108
143
263
224
189
253
207
228
298
187
195
174
181
215
257
179
179
239
217
171
197
195
237
195
242
266
181
218
193
220
227
222
230
213
206
212
196
209
230
213
213
219
242
230
192
210
195
243
181
228
240
216
213
224
252
125
208
191
175
175
205
246
180
191
171
231
210
154
171
190
148
201
148
172
210
181
201
216
248
225
205
182
243
164
139
166
145
160
211
237
247
152
194
123
167
200
185
228
205
185
213
117
235
204
186
214
181
207
142
230
180
156
264
170
204
166
217
205
221
190
209
209
232
185
131
193
183
263
208
217
257
184
227
253
183
213
201
140
155
177
224
262
186
112
252
246
186
242
214
170
179
240
188
193
198
193
214
212
171
264
194
178
170
234
191
173
170
190
196
230
199
213
232
164
182
204
234
178
214
197
231
219
175
177
215
180
244
236
147
223
186
207
190
144
196
204
238
218
223
123
220
181
256
228
240
244
179
203
198
190
176
236
201
258
206
211
221
201
214
221
261
174
216
175
290
156
256
239
261
258
227
281
257
135
188
181
264
191
170
153
255
172
246
154
173
162
157
242
240
239
231
221
217
162
177
227
261
199
220
184
160
176
193
212
170
200
163
210
217
216
126
225
117
193
147
188
221
243
140
219
255
275
165
215
194
233
196
256
156
159
207
237
210
228
239
166
237
270
200
197
226
242
179
146
209
245
162
244
154
146
248
265
207
226
212
209
260
178
196
256
137
207
174
143
190
212
240
187
174
176
220
192
205
159
173
213
213
259
214
243
282
239
253
168
202
205
148
275
200
148
190
191
125
198
171
202
231
178
190
199
183
213
172
233
217
142
144
131
182
190
181
198
231
139
205
206
236
198
205
214
169
241
247
153
222
170
116
212
224
191
154
228
240
193
250
169
200
155
165
266
156
221
176
203
219
215
136
203
227
204
233
196
197
248
263
260
190
196
212
191
188
232
206
240
191
199
179
218
276
185
123
223
226
147
205
196
266
225
212
233
184
187
148
239
135
199
221
275
226
195
220
196
149
184
194
104
149
249
234
210
246
182
184
275
169
216
189
217
224
179
172
239
223
197
252
210
240
181
201
156
237
188
222
223
199
191
196
220
212
215
178
260
211
189
263
186
222
203
227
239
172
207
233
213
175
248
155
240
153
202
218
111
226
253
175
207
283
189
119
129
189
204
254
231
233
213
184
175
186
113
177
222
182
251
172
218
186
181
217
211
231
184
193
267
163
130
141
232
199
173
157
274
235
206
158
186
222
243
263
212
167
252
194
255
206
124
227
242
186
241
169
186
209
183
195
153
204
220
217
183
271
167
174
208
148
245
226
193
236
224
233
250
197
190
151
263
209
190
204
211
247
237
263
199
187
210
211
198
181
214
187
215
237
148
221
188
216
157
205
206
239
184
171
210
174
230
273
201
207
205
169
161
145
233
239
188
152
238
237
134
222
190
205
185
198
255
170
171
251
208
229
170
174
247
198
184
210
192
224
116
215
212
165
231
190
197
212
209
235
145
199
212
218
219
154
137
182
236
174
248
231
207
182
204
142
168
206
196
269
210
199
208
153
201
180
190
172
155
174
170
132
252
223
153
234
199
207
146
264
192
201
156
202
145
215
160
257
231
209
198
190
225
190
248
212
204
228
169
211
147
231
126
202
145
154
227
159
197
287
185
173
271
185
136
204
152
179
198
158
186
190
227
230
175
170
235
154
257
226
216
213
196
205
221
189
165
227
210
200
217
206
175
224
141
246
148
228
152
217
226
203
235
142
225
218
199
218
201
204
220
156
218
185
228
257
156
184
206
239
182
275
224
211
211
288
171
191
218
159
231
230
223
236
187
117
243
181
194
225
233
143
194
196
269
168
232
232
189
196
238
186
156
212
242
223
205
211
207
207
204
213
216
233
177
242
190
232
250
213
138
192
199
210
293
249
138
177
217
195
250
195
217
174
261
196
209
185
231
203
176
199
210
214
145
241
174
243
183
259
263
199
191
224
169
205
200
136
164
260
244
239
251
252
153
135
239
220
156
264
227
214
223
187
194
178
148
163
210
177
201
221
214
189
201
167
178
238
211
178
259
225
218
165
221
190
177
186
117
228
274
194
185
170
164
185
198
211
223
212
232
191
199
251
164
218
139
225
111
182
199
204
228
197
257
267
197
219
240
258
197
222
229
216
194
174
183
180
241
196
163
195
199
164
219
133
167
264
110
185
221
185
239
217
227
284
185
193
153
203
212
170
96
189
217
231
182
173
183
178
172
240
192
172
157
191
221
165
162
191
198
203
153
197
227
198
197
225
199
156
259
222
262
154
184
206
206
234
221
205
205
181
224
169
124
173
254
170
187
204
214
197
211
238
167
197
165
176
231
207
141
195
131
138
218
164
246
251
213
214
198
184
171
250
225
203
142
184
225
179
185
181
195
190
241
190
206
200
179
243
199
217
208
221
132
225
106
198
288
231
152
97
179
249
226
200
214
180
192
207
186
257
195
153
173
130
177
222
236
273
212
192
224
265
219
198
225
186
206
196
201
259
218
252
191
175
160
105
219
263
215
193
210
206
141
262
234
186
114
165
217
208
173
211
228
202
221
163
187
188
195
173
248
231
218
198
220
180
111
207
206
169
230
200
200
165
126
184
203
242
164
272
190
157
229
211
217
190
228
184
179
146
154
185
215
197
156
148
232
191
199
137
243
221
169
215
205
190
211
220
138
197
161
149
185
120
195
156
221
176
189
198
177
227
134
175
195
205
220
185
204
225
222
240
222
242
236
262
222
268
216
246
236
151
207
194
198
241
169
137
170
154
239
160
238
198
133
204
166
257
188
282
146
177
262
182
208
192
199
175
188
184
208
169
243
260
178
167
201
247
227
191
225
260
195
195
206
138
144
163
246
194
167
162
273
199
174
226
154
204
186
226
186
183
275
201
178
209
229
216
238
228
274
157
243
169
249
236
218
256
159
211
120
197
165
230
236
223
250
220
227
114
225
214
201
183
236
173
228
176
169
140
220
203
247
210
183
233
200
162
216
232
201
230
126
174
196
231
183
213
209
229
179
163
176
161
215
181
164
236
178
137
179
236
171
166
178
239
171
272
240
214
220
205
198
211
147
201
290
171
226
224
272
268
203
174
193
192
197
232
184
169
195
198
134
201
200
178
190
145
254
250
243
166
218
214
189
123
271
176
240
180
219
215
155
211
205
178
178
234
210
210
209
178
186
246
142
168
215
165
231
208
196
165
218
189
182
212
206
226
176
251
193
181
241
221
168
206
220
161
206
196
221
194
230
193
148
109
241
242
265
127
220
227
213
179
168
217
204
233
220
193
200
220
221
162
180
182
170
227
183
202
179
185
196
172
188
227
195
166
159
159
220
191
106
194
131
228
268
207
211
162
240
260
216
210
194
229
209
197
195
171
228
284
231
246
172
252
185
183
215
121
152
219
287
159
232
205
264
203
232
207
184
213
155
205
256
181
224
216
199
273
255
225
153
154
242
215
154
157
147
171
228
204
185
151
207
168
240
255
184
175
160
186
218
151
256
160
180
171
236
222
247
158
217
201
200
214
215
219
243
243
179
213
173
218
224
174
199
294
204
225
177
242
178
236
232
187
205
237
199
160
179
241
120
196
182
203
203
213
271
170
260
213
176
232
177
220
198
158
172
235
223
151
219
234
173
217
162
130
199
187
226
226
170
199
234
152
267
206
237
231
190
230
243
91
189
233
181
169
222
177
191
247
208
167
195
256
176
263
134
211
275
220
205
194
232
282
159
170
190
182
164
240
160
137
192
203
189
186
199
264
180
216
254
250
250
243
177
233
236
201
211
200
193
204
191
246
199
277
205
192
191
205
207
209
267
225
232
234
138
179
207
222
152
175
245
200
168
256
265
175
213
168
211
195
227
194
168
184
252
177
130
232
194
166
248
202
195
116
172
136
152
233
195
172
217
169
198
163
173
152
173
130
209
192
227
125
132
145
138
163
223
200
251
202
215
217
189
172
185
190
248
222
193
260
224
181
232
173
166
182
227
208
176
212
203
224
242
237
215
213
127
207
181
195
111
193
145
178
169
231
194
187
166
163
194
179
209
228
173
243
212
184
181
170
182
213
181
243
213
218
201
199
190
233
203
178
197
246
149
204
171
180
201
202
134
233
240
222
202
156
214
231
249
159
185
163
274
135
232
181
212
203
140
216
247
214
249
145
218
120
210
204
219
137
206
168
184
218
165
231
95
222
212
248
202
188
181
195
178
219
190
199
166
156
159
246
183
210
186
192
217
190
231
260
190
221
198
189
213
164
192
165
178
185
189
267
183
211
238
174
214
215
182
187
228
184
228
189
270
122
207
199
138
244
270
180
177
221
130
249
197
198
239
231
185
241
196
182
204
171
216
151
187
208
182
246
222
256
207
259
220
182
205
211
197
150
217
204
191
165
174
218
200
228
253
174
190
264
250
236
177
157
207
243
195
258
191
255
184
162
195
218
175
202
150
214
182
233
223
174
218
191
247
206
176
197
235
199
196
217
210
220
210
210
247
214
247
205
197
167
230
266
221
206
169
253
252
186
175
243
200
174
184
200
163
215
180
233
218
231
203
199
222
138
168
197
183
188
245
203
174
190
198
222
248
218
188
194
208
250
228
271
192
221
240
162
226
200
202
174
196
215
199
228
240
197
221
149
275
194
199
189
167
216
234
187
219
199
171
232
200
161
190
176
158
230
164
197
229
162
168
219
250
206
165
225
193
215
155
201
205
200
156
168
183
203
202
184
191
253
187
238
217
183
182
208
256
191
191
208
182
222
181
221
190
212
174
193
245
224
204
165
190
239
208
134
147
218
240
161
164
189
208
185
197
156
192
159
150
152
198
193
219
156
194
166
175
177
190
221
249
212
132
189
186
206
220
223
106
199
179
221
160
202
189
185
148
186
217
220
185
206
179
211
241
158
200
202
185
231
226
178
188
165
139
230
150
152
171
250
158
197
201
235
189
197
226
210
225
211
224
129
152
208
244
160
264
207
210
183
163
208
217
219
217
204
153
179
234
174
181
236
231
191
201
188
235
228
180
196
220
203
196
225
188
201
184
186
189
221
196
151
205
237
209
200
210
175
206
149
178
130
256
206
186
162
145
220
143
200
210
225
265
178
214
174
219
194
169
134
236
195
212
219
171
169
172
233
142
233
197
203
256
239
154
200
167
160
252
199
149
195
172
230
174
190
187
159
163
224
204
212
205
204
197
197
197
180
202
209
196
167
213
151
153
224
156
216
209
194
187
146
111
142
234
194
196
169
198
173
207
257
201
170
117
226
207
200
196
146
190
210
150
241
251
218
190
222
220
205
177
248
157
209
137
181
244
187
230
217
251
155
249
174
190
210
237
153
180
200
148
267
143
185
216
169
186
254
178
232
268
146
251
227
193
136
170
230
185
250
238
183
258
232
179
197
167
229
170
179
140
176
191
183
163
217
123
189
160
193
213
220
192
204
207
172
231
190
271
199
215
178
231
150
149
154
160
197
175
155
202
195
194
174
246
231
152
201
223
209
186
213
265
172
228
206
210
168
145
199
155
208
193
140
216
156
215
231
210
220
148
214
236
235
220
195
173
143
199
209
222
228
163
189
192
214
193
173
196
227
272
193
209
205
160
204
249
267
269
159
234
220
201
187
242
204
193
216
212
220
195
152
210
233
222
233
183
162
157
180
217
170
214
169
239
227
160
216
224
204
202
192
229
214
205
196
211
202
220
251
232
193
204
213
239
200
205
188
141
188
181
234
199
263
172
196
181
197
164
169
211
230
223
208
184
192
233
211
160
208
207
241
220
205
183
214
219
219
174
234
260
241
213
170
188
159
238
174
192
196
220
148
213
163
263
222
234
154
242
226
187
223
197
226
226
224
178
132
199
182
143
234
248
214
197
159
219
217
178
199
125
238
197
232
227
196
245
182
171
218
248
253
216
173
173
207
207
219
219
178
220
168
192
189
158
222
231
210
214
239
217
218
248
227
173
187
222
172
239
241
178
239
206
143
203
210
224
223
174
188
146
278
161
273
226
219
232
195
127
190
236
195
133
167
208
198
177
141
259
163
177
206
211
267
230
177
190
219
232
198
165
262
221
270
250
167
203
169
162
203
223
205
254
181
214
168
209
182
182
199
136
182
220
249
207
242
263
229
189
219
234
194
243
202
200
247
229
188
191
202
205
221
222
205
163
184
232
202
196
214
225
215
234
204
182
122
207
179
205
177
204
152
175
186
219
167
214
198
158
175
153
187
168
118
212
237
217
168
224
185
236
200
259
190
178
202
216
220
175
209
162
287
215
157
232
204
182
184
260
230
248
209
236
249
226
245
187
178
207
230
254
193
197
303
173
264
140
200
247
202
228
203
234
194
226
143
188
234
210
268
242
184
156
186
173
216
228
168
187
188
281
203
213
235
195
238
249
247
188
204
199
139
170
215
211
211
162
251
174
189
190
186
239
218
185
201
214
217
191
249
210
232
227
221
230
187
199
210
189
198
124
229
205
184
235
251
225
195
225
187
199
219
241
243
208
219
201
204
208
248
215
235
139
215
164
161
210
233
195
179
161
249
188
271
153
187
223
153
177
179
201
274
184
160
234
196
160
157
254
179
204
194
142
226
154
242
199
195
141
176
226
164
176
245
200
159
226
213
176
197
184
217
253
249
184
228
242
208
163
254
238
212
176
174
237
164
192
162
214
210
280
256
195
172
135
244
226
232
196
181
179
170
237
210
209
211
172
142
216
159
184
173
192
194
217
161
183
190
219
150
225
229
208
203
215
159
164
240
198
250
248
214
209
139
170
135
152
218
130
161
156
204
218
199
232
150
184
233
152
201
240
202
207
176
206
181
200
169
198
201
259
224
207
244
215
98
200
191
251
202
226
212
142
208
217
159
123
167
220
203
195
157
151
246
186
204
172
234
196
231
225
210
211
135
204
193
211
153
243
194
201
204
131
247
194
198
184
141
202
160
253
228
212
219
179
223
224
211
227
235
220
168
195
213
210
193
204
260
198
182
199
165
194
197
171
228
231
245
175
254
219
255
248
201
129
209
207
185
234
223
123
186
165
234
180
211
207
206
215
206
233
210
238
166
181
252
192
149
197
153
176
228
221
242
248
181
205
183
230
221
184
214
252
190
186
157
163
281
246
169
156
227
163
282
169
197
170
149
198
199
174
203
218
222
253
215
177
215
226
162
206
186
208
135
217
203
216
209
269
203
173
231
194
142
199
148
150
182
254
159
155
211
200
109
208
172
156
225
249
268
199
262
189
191
212
186
252
146
200
188
194
191
198
147
205
158
232
208
177
194
248
238
224
219
212
240
199
147
258
209
252
176
143
218
206
207
141
242
189
125
197
94
202
274
166
248
239
197
226
198
214
179
203
186
160
184
165
255
247
187
220
184
256
219
226
193
203
224
220
202
140
217
205
210
231
158
134
155
201
180
185
180
206
222
231
112
154
276
205
177
181
204
227
186
189
190
196
204
249
213
179
137
207
131
196
226
242
163
212
177
148
201
170
152
220
184
128
238
176
257
184
228
217
222
172
234
190
178
160
181
204
178
205
247
208
189
240
152
198
161
225
166
178
177
225
201
143
155
236
200
189
196
217
158
217
239
122
207
263
188
277
106
135
226
231
178
224
224
183
190
256
252
243
176
155
268
264
212
231
223
198
202
207
171
155
201
239
251
223
189
199
243
151
218
157
195
178
166
234
187
196
212
185
190
165
217
262
256
234
199
139
230
225
144
218
248
261
229
171
259
149
172
178
204
218
201
163
202
195
249
145
240
224
141
171
248
248
231
238
185
184
222
183
160
261
223
160
205
205
190
204
192
163
173
164
218
200
152
171
259
212
221
184
231
205
242
233
175
157
219
189
136
208
236
201
223
212
250
193
208
167
182
178
240
132
187
191
151
190
263
177
184
244
211
214
131
138
240
230
217
203
241
162
174
257
190
241
157
244
220
239
198
154
156
88
225
228
190
120
243
226
212
218
166
146
230
216
169
224
225
196
218
238
197
194
221
194
198
233
220
205
228
148
217
243
258
206
219
244
229
200
189
207
154
212
235
208
218
147
215
201
193
153
162
165
217
178
254
206
168
192
194
193
191
254
148
226
209
203
202
249
254
261
178
198
147
199
239
210
192
236
112
109
216
161
148
241
178
183
215
163
193
176
158
149
220
228
227
223
185
190
144
206
180
196
124
232
192
161
193
224
202
218
189
227
252
181
210
234
215
251
224
187
280
223
223
149
237
220
222
207
151
199
160
162
233
211
111
161
264
159
223
141
216
171
288
172
247
184
268
192
189
226
276
201
196
236
247
187
210
149
163
251
193
151
213
196
195
184
156
236
224
209
218
176
212
206
220
209
165
195
239
202
235
184
261
231
228
188
200
175
148
233
200
263
226
205
198
213
221
180
188
185
211
212
195
145
253
263
248
227
263
171
210
241
190
194
177
209
182
223
182
196
230
191
150
146
164
218
170
220
174
214
248
180
235
212
281
247
129
177
280
166
230
246
176
185
225
230
203
200
133
231
203
180
259
264
153
163
215
198
158
249
213
168
160
173
160
165
247
219
209
232
172
223
193
170
220
250
240
214
157
154
192
226
248
188
177
213
139
214
190
255
166
211
172
213
161
252
194
145
219
243
137
226
232
180
190
242
237
200
190
265
241
200
242
215
186
193
201
247
145
197
219
193
214
182
188
194
181
222
239
204
245
145
218
228
158
185
211
229
215
200
218
192
203
245
225
217
211
199
180
181
156
213
222
159
238
268
203
157
224
229
172
162
231
185
202
121
230
179
192
231
205
226
221
165
213
172
213
187
221
143
210
224
250
228
120
179
196
229
199
230
210
191
207
172
260
216
243
170
274
241
189
148
136
142
177
145
191
177
235
220
194
229
172
228
192
182
163
169
248
218
249
181
267
183
195
211
158
228
211
195
169
228
192
202
164
232
225
155
240
184
163
156
236
229
215
199
241
185
234
129
191
205
265
215
198
230
252
170
195
177
209
170
192
198
167
151
173
195
169
222
214
179
232
204
158
205
143
194
244
147
210
211
202
231
153
144
187
175
227
235
189
145
180
173
186
214
190
277
199
182
218
236
139
240
229
257
176
183
251
202
218
178
249
165
237
185
231
269
175
208
192
209
210
237
233
219
232
242
170
247
216
220
252
236
143
223
239
206
225
210
146
218
208
239
205
193
227
276
214
180
174
198
223
191
253
268
267
202
202
222
173
222
242
245
213
195
209
197
187
158
242
234
206
141
148
205
186
222
190
164
145
212
169
200
192
257
226
235
186
214
193
172
177
175
167
219
209
190
145
253
191
144
221
203
205
238
272
169
207
198
232
178
152
164
174
208
239
200
177
231
206
218
183
134
201
211
255
208
198
171
161
216
234
224
260
250
173
173
155
253
250
239
252
184
207
189
209
241
194
204
200
198
184
208
229
121
201
216
156
188
265
120
201
118
176
168
247
147
242
221
203
244
244
206
231
247
150
233
192
172
201
196
201
181
264
229
124
184
159
196
243
128
148
215
219
216
214
216
246
185
227
182
208
260
211
229
245
213
236
256
194
218
186
230
222
159
170
270
97
269
192
169
226
209
126
153
209
226
222
180
249
239
266
192
202
189
176
202
225
168
246
187
216
202
217
182
230
234
159
219
159
246
205
169
194
159
192
255
209
219
204
192
196
236
195
170
176
274
198
237
209
114
241
197
188
150
233
191
158
163
184
153
232
216
194
247
229
214
168
132
204
205
216
199
168
203
167
253
239
220
188
199
176
191
201
224
215
216
133
135
230
211
117
203
185
115
196
145
189
268
271
199
129
162
155
223
239
179
167
126
139
186
202
212
184
166
211
221
177
163
243
188
235
208
172
187
158
151
191
149
240
178
207
187
185
208
187
243
190
238
192
168
195
215
124
192
186
270
228
274
191
213
147
205
246
167
112
169
158
168
211
230
240
208
254
161
226
162
205
197
186
237
216
199
119
243
177
181
247
138
194
147
216
259
161
218
263
180
188
176
239
188
204
177
221
202
211
208
191
223
216
223
176
198
264
184
232
219
221
153
178
225
213
170
190
198
180
249
161
252
172
169
180
208
189
207
222
239
204
249
209
218
249
211
224
219
178
240
222
209
214
210
180
164
267
219
195
214
179
248
200
149
249
240
216
178
208
165
211
214
205
236
191
227
155
190
152
188
238
256
206
221
226
218
218
223
176
210
222
171
201
212
168
172
201
178
202
245
216
175
148
206
187
190
150
180
175
201
246
132
151
202
275
180
236
244
131
145
214
211
254
193
162
191
138
230
131
155
190
229
143
148
157
247
161
209
248
237
184
242
183
249
217
177
178
193
237
184
257
219
176
193
142
212
265
244
199
216
179
178
150
215
173
233
177
233
179
187
168
217
190
224
247
213
254
237
217
170
195
257
131
200
132
227
170
197
232
216
169
185
182
214
240
208
200
177
225
175
208
233
205
189
165
182
196
190
182
120
185
226
215
225
116
190
178
198
151
141
199
208
168
154
181
175
219
209
216
196
178
241
224
213
195
156
198
277
212
144
223
171
191
224
234
258
191
227
227
172
185
171
208
150
187
183
221
240
240
224
233
237
178
227
225
202
205
246
182
195
210
252
179
225
160
201
220
218
230
209
215
214
209
240
236
133
176
208
183
178
154
215
247
169
235
228
260
167
203
168
173
173
161
183
257
227
238
196
220
143
167
221
263
179
199
162
238
192
156
223
180
190
211
230
171
163
166
192
164
191
187
248
178
139
241
231
200
211
154
222
201
100
259
225
241
193
224
237
243
163
163
171
210
200
201
244
182
165
134
243
210
252
197
190
150
203
229
227
178
205
199
143
217
214
154
222
175
120
149
266
197
234
166
214
142
245
145
218
169
202
198
167
204
210
234
132
136
158
181
218
219
118
168
193
188
211
183
186
252
224
213
229
148
196
212
177
213
200
235
192
216
199
226
183
177
155
180
258
235
129
155
182
241
197
238
280
196
176
159
240
246
223
180
208
230
184
228
261
271
219
224
224
198
219
214
208
197
252
173
153
156
210
242
223
176
229
166
169
127
206
192
220
203
168
265
226
232
203
171
183
190
196
158
219
227
168
204
194
197
153
191
212
179
135
218
257
222
249
204
206
276
250
193
198
161
182
186
195
150
175
196
213
222
183
262
198
235
229
237
196
157
226
196
164
187
238
240
213
207
224
209
221
202
230
220
226
180
218
162
211
220
215
252
176
152
190
150
184
212
145
200
194
178
194
217
235
180
214
155
213
169
176
218
264
194
209
197
215
191
142
212
187
186
202
156
239
210
208
196
189
266
196
218
182
229
190
228
243
187
212
223
170
225
229
227
188
250
221
222
196
233
192
161
185
201
168
199
176
213
201
166
148
173
146
190
152
198
126
148
174
233
146
198
230
194
224
205
223
200
185
190
246
238
201
230
190
125
177
205
158
185
168
204
217
211
185
199
254
160
208
244
230
187
217
172
220
136
201
184
183
175
198
121
182
214
166
250
229
217
248
172
197
173
243
230
139
194
164
230
141
128
169
201
161
194
214
236
201
205
209
246
259
247
195
252
227
179
146
166
137
282
176
208
217
165
167
179
210
161
117
224
221
181
230
191
176
182
183
206
161
219
217
222
152
218
161
209
151
178
235
151
147
164
226
192
177
168
178
256
209
255
177
205
159
211
181
229
198
214
187
153
190
173
98
132
205
216
153
170
224
159
222
250
190
206
139
222
227
152
203
221
236
178
191
216
167
230
224
198
185
128
212
166
241
230
222
192
218
182
167
216
221
220
159
165
189
272
187
192
231
132
211
174
198
163
234
210
154
183
192
188
151
168
253
249
159
208
201
145
205
208
212
223
233
215
211
210
192
258
178
208
145
208
247
240
197
222
167
232
201
246
220
214
211
211
217
199
176
217
231
222
178
192
184
220
198
165
264
229
183
212
211
244
219
165
198
168
156
216
184
244
238
269
206
188
178
197
264
248
224
194
165
159
194
181
219
239
176
87
246
167
260
204
172
199
236
168
249
211
222
191
199
98
196
179
187
219
185
169
162
252
214
203
197
223
144
272
182
273
243
182
183
170
173
168
189
148
159
197
157
130
242
161
156
233
165
251
139
206
210
183
215
248
212
189
233
221
190
107
218
232
241
181
205
223
205
193
256
137
238
172
159
213
152
205
196
269
262
171
194
154
175
216
219
203
204
178
199
156
199
180
209
183
140
244
248
216
272
190
186
146
195
212
214
211
159
274
180
200
157
223
144
138
224
213
218
156
222
179
211
188
158
166
215
171
258
168
272
199
180
170
207
160
153
210
193
202
189
199
188
236
159
239
183
213
248
228
214
219
212
219
153
211
159
171
162
194
203
193
174
237
288
188
192
268
211
171
195
215
213
201
232
240
207
188
176
172
199
127
223
190
249
231
191
180
178
243
146
191
168
248
235
243
206
247
255
235
191
264
184
193
198
206
203
251
153
148
136
252
182
261
225
195
155
222
224
195
170
245
167
171
197
110
164
194
166
167
222
281
206
182
193
228
151
234
218
222
176
157
206
186
140
179
205
195
172
223
194
228
103
177
126
221
220
179
162
233
236
243
192
158
264
182
157
244
204
173
200
200
197
215
223
153
209
257
164
179
220
192
208
229
168
258
231
123
245
195
289
131
213
182
213
190
253
178
161
196
178
223
176
226
197
179
195
172
149
230
217
177
207
181
219
195
199
191
209
124
232
212
210
207
178
183
249
190
219
150
239
148
192
169
203
162
215
182
196
152
169
199
211
185
242
250
141
150
143
175
154
169
254
156
179
238
197
188
114
186
221
204
147
230
156
206
198
166
222
225
251
203
185
227
193
179
252
240
265
203
203
229
219
216
205
230
220
228
202
219
220
158
199
223
134
201
199
204
178
203
166
165
158
254
216
204
200
207
202
124
206
134
196
228
215
172
171
201
195
213
230
198
148
146
189
184
190
199
197
197
176
235
176
176
187
248
178
157
211
183
206
189
210
199
131
145
220
277
201
217
246
202
196
203
217
223
212
242
173
224
226
169
147
214
160
175
255
223
237
182
164
236
210
220
243
260
125
150
219
210
223
142
252
231
190
183
237
210
224
193
165
216
225
226
208
219
203
188
179
150
165
151
173
235
208
183
107
194
173
164
215
223
166
154
218
189
183
188
203
260
217
225
205
257
188
234
216
180
222
284
221
226
204
212
127
230
189
201
199
215
214
286
232
192
244
163
153
159
162
126
220
183
231
233
186
233
233
152
130
251
215
185
202
209
155
274
235
172
215
107
147
134
171
209
252
142
246
196
197
155
278
171
163
160
228
149
232
207
184
218
186
230
223
237
236
187
199
142
201
259
168
249
169
174
182
189
247
146
217
181
133
213
250
192
198
211
163
142
244
216
179
194
186
138
220
264
166
244
221
199
215
236
221
215
258
185
218
258
246
217
221
211
193
186
167
254
217
225
241
169
261
173
190
230
197
206
180
227
264
190
197
222
266
210
212
201
256
263
226
229
221
226
217
202
142
113
195
226
230
182
232
246
198
223
213
240
189
239
205
186
128
174
187
232
153
149
209
260
235
217
200
172
180
179
138
201
237
196
221
163
112
239
212
205
173
241
185
176
178
194
221
226
200
203
259
174
212
173
204
245
207
152
166
207
198
191
168
246
221
194
171
175
136
207
223
211
165
185
187
170
168
205
202
239
226
226
218
185
240
160
193
187
180
205
215
169
202
213
138
267
202
201
166
168
140
251
169
247
212
201
191
180
289
198
236
125
137
225
195
233
220
178
164
206
243
251
255
163
197
184
163
182
207
207
147
167
221
113
189
156
238
256
142
151
254
238
197
193
157
191
202
196
155
148
196
208
203
283
276
158
239
170
220
233
199
175
181
209
147
227
262
203
180
206
242
180
218
122
192
233
232
191
233
194
223
181
196
224
219
249
203
203
167
208
202
151
247
242
237
191
201
215
241
188
228
226
190
263
204
192
196
213
198
226
165
184
206
302
265
249
204
199
267
232
205
236
243
194
234
141
157
193
185
161
273
228
164
224
187
194
200
210
248
214
174
166
218
218
220
225
138
232
179
195
220
214
198
211
227
166
192
192
241
209
166
212
197
256
183
185
212
152
276
257
229
189
264
208
211
202
184
215
197
188
224
197
186
197
219
195
238
131
260
110
179
191
182
166
143
243
226
204
216
154
226
200
225
279
148
181
183
173
218
227
233
207
171
214
167
185
200
227
264
262
185
175
225
204
203
139
243
213
278
190
237
223
245
233
221
225
216
173
233
141
193
227
258
219
249
196
187
165
222
174
96
194
218
181
219
139
239
216
234
138
215
234
146
219
235
231
238
226
178
185
197
195
110
202
190
178
209
263
154
247
259
172
174
268
239
176
156
166
207
159
165
160
209
156
224
194
225
242
193
252
189
205
227
187
212
167
144
210
242
170
152
189
249
145
169
126
216
269
235
164
229
191
217
240
169
222
201
242
153
212
265
214
178
193
150
243
201
163
187
163
209
218
187
207
203
190
217
258
216
190
168
259
145
174
150
223
223
189
212
179
238
237
150
160
188
222
167
228
153
184
162
215
221
178
183
227
231
167
234
155
241
141
176
132
176
227
192
184
169
189
217
260
232
233
187
181
173
174
255
144
211
269
204
242
268
132
204
143
275
199
198
163
189
209
262
214
186
207
197
254
276
182
221
216
158
211
150
165
211
212
230
183
200
189
142
176
210
152
205
255
168
188
257
204
216
156
231
217
182
220
258
224
207
195
184
237
246
217
237
151
208
209
201
211
182
128
208
223
206
193
212
220
264
239
267
181
188
227
211
183
157
196
138
178
136
221
161
216
178
212
228
240
195
261
215
127
229
201
184
148
210
270
184
188
191
151
180
215
196
238
250
179
134
168
201
208
240
181
228
183
218
228
254
234
260
198
222
123
150
191
203
244
197
167
211
246
214
266
204
215
250
273
192
186
210
187
154
197
192
140
190
229
175
238
250
177
227
230
205
127
138
195
170
227
177
230
177
289
216
172
194
162
188
185
157
164
218
240
215
215
208
270
255
190
221
136
216
229
233
179
169
150
217
208
198
197
242
209
164
169
256
152
190
213
236
216
259
186
237
237
230
145
202
216
202
196
150
210
205
188
223
185
224
249
266
141
181
251
200
245
230
197
167
246
231
207
168
161
220
238
204
248
220
182
252
226
168
162
240
200
211
196
240
254
227
246
195
162
104
134
188
196
199
149
233
189
137
142
254
171
227
205
167
164
179
147
197
204
241
210
172
225
174
184
228
246
183
140
188
203
203
249
222
202
166
135
166
215
178
139
158
208
170
232
165
173
189
230
169
194
234
248
190
166
177
146
196
210
167
198
144
183
232
248
137
171
169
207
211
219
249
215
224
233
161
268
174
207
164
196
194
216
195
249
180
171
196
169
203
223
184
166
212
225
215
82
194
95
214
228
187
208
214
179
245
187
204
210
195
242
183
214
103
155
211
164
215
206
151
232
192
196
232
224
133
260
251
224
226
186
210
181
252
173
201
236
178
179
172
241
149
189
176
173
193
159
170
195
184
235
265
170
160
200
172
199
166
148
193
204
217
217
216
159
239
213
211
156
166
235
197
195
218
145
167
174
198
211
169
155
165
161
232
236
209
201
193
249
271
174
289
217
207
247
175
239
215
243
204
220
181
160
243
264
212
149
194
214
150
178
193
243
194
191
200
237
261
207
188
106
213
212
214
216
144
238
223
207
240
203
201
116
228
214
159
217
206
171
138
147
185
253
206
233
207
253
203
225
219
169
185
227
210
222
213
147
211
209
192
195
195
219
255
220
159
176
235
222
154
111
197
148
222
281
141
188
201
179
225
246
225
265
197
184
153
208
200
226
210
240
200
269
220
187
202
209
200
232
159
138
173
235
168
199
123
230
215
227
211
155
208
202
190
212
218
229
177
192
207
248
162
234
202
180
247
200
256
213
164
231
241
148
233
213
150
173
169
208
195
208
250
273
256
244
251
192
162
228
194
204
233
212
134
163
190
220
206
234
223
223
179
200
232
174
155
207
172
213
200
239
201
168
165
200
255
152
257
243
196
172
195
246
249
233
179
164
209
162
215
214
221
222
204
248
176
231
203
196
140
226
209
221
203
216
197
212
176
156
219
209
238
132
207
246
158
141
190
197
142
220
180
241
262
213
181
231
80
236
188
225
227
173
161
194
185
194
188
221
223
175
240
221
189
205
203
208
233
219
198
248
208
168
226
205
224
223
211
215
163
174
257
154
189
181
224
190
168
274
230
238
251
179
227
257
192
139
217
226
235
181
194
224
211
148
166
167
195
191
240
192
170
193
198
218
240
136
174
222
172
167
198
179
257
164
201
183
138
213
273
212
259
208
155
202
143
261
234
154
250
177
194
224
214
247
153
208
173
201
201
229
216
209
136
180
186
223
198
266
229
148
188
164
231
194
225
180
156
138
216
172
263
205
245
181
197
156
220
245
174
144
187
168
298
211
177
197
200
160
165
273
180
200
198
162
171
187
244
204
154
186
222
168
178
197
208
117
232
181
194
192
184
216
173
231
236
240
217
184
208
203
196
208
183
189
178
217
149
157
143
182
216
177
259
195
180
177
211
234
189
219
187
199
193
201
173
183
230
206
150
202
247
150
232
221
246
219
213
239
195
192
151
224
199
232
219
166
191
225
182
221
210
237
169
211
209
178
257
265
204
232
160
215
149
207
202
165
214
202
224
254
227
209
270
221
165
195
152
197
196
264
216
160
229
206
228
218
197
191
204
214
170
232
234
175
254
308
235
244
203
203
180
248
238
187
175
221
185
145
249
250
172
224
106
165
221
252
224
197
152
231
150
154
213
171
217
223
225
130
172
175
236
279
215
214
180
160
199
193
224
184
234
220
195
129
160
257
201
180
207
216
215
158
162
204
163
206
172
185
118
195
198
147
185
209
208
189
196
157
170
216
183
190
156
235
154
205
172
153
222
215
190
183
204
183
173
231
210
250
176
201
240
155
270
256
148
232
170
181
216
192
178
259
178
170
126
185
234
233
207
159
257
250
228
209
222
135
133
202
162
184
231
207
256
188
195
158
162
245
186
203
96
216
199
232
201
257
264
231
227
225
241
143
212
215
245
170
191
202
151
172
231
150
212
186
204
237
211
267
184
209
212
267
217
185
193
173
203
193
133
232
194
118
175
156
115
166
192
168
161
220
249
202
192
132
204
221
164
236
187
147
111
202
238
232
210
183
182
145
233
134
156
217
146
211
240
234
226
279
163
103
221
213
242
212
266
210
132
208
247
237
196
233
194
201
213
207
188
202
195
235
201
193
186
181
166
222
247
155
229
168
190
136
175
143
213
225
187
239
172
217
124
231
185
118
167
194
153
176
200
177
164
120
234
173
248
276
210
206
210
193
255
252
175
261
136
198
173
185
205
194
233
172
204
206
174
196
211
153
260
254
145
196
274
169
189
213
222
236
231
221
172
179
168
144
187
192
228
195
266
174
239
227
218
125
227
196
186
174
200
217
147
160
175
151
234
189
166
253
197
252
200
195
239
212
125
209
239
228
179
273
188
197
165
141
261
255
245
209
241
161
210
186
175
231
190
209
190
202
215
206
168
255
243
221
212
262
242
179
263
204
248
194
174
170
233
179
195
166
196
207
175
189
222
183
156
156
263
210
116
140
210
208
236
157
151
212
178
179
127
163
170
169
222
205
213
130
168
195
229
226
212
181
217
196
135
237
255
214
139
208
173
233
166
259
161
230
134
220
196
259
190
120
231
232
229
195
168
197
212
163
238
178
216
134
226
231
153
209
214
187
208
230
205
239
238
247
208
243
185
221
209
224
191
191
221
211
218
241
190
195
202
178
201
166
193
251
217
192
170
159
183
249
141
191
153
196
183
198
188
179
220
211
234
175
215
138
237
222
249
187
171
230
184
181
221
207
169
132
245
181
194
176
225
185
149
194
220
235
111
226
165
199
243
205
170
212
221
223
143
210
205
229
173
212
204
146
184
205
217
208
182
160
176
233
227
209
256
152
215
185
155
215
199
225
219
207
178
151
197
249
185
238
168
231
222
222
179
257
207
204
143
212
203
168
194
203
198
119
211
225
233
197
255
216
207
288
191
209
192
192
106
177
175
151
219
178
218
173
141
257
252
259
252
172
207
164
276
163
226
254
220
190
178
193
211
230
190
253
244
195
163
202
234
229
187
223
174
212
197
226
143
187
206
144
287
182
179
155
244
211
175
228
204
246
164
201
247
257
141
194
252
240
209
80
285
204
237
177
227
198
182
175
231
171
262
234
208
152
271
200
146
195
180
254
165
215
193
164
234
196
206
216
243
151
253
191
177
246
210
215
222
230
162
215
164
205
226
239
176
250
208
208
207
227
247
238
181
216
172
230
203
162
173
225
236
189
248
236
154
205
206
145
222
189
140
165
149
228
160
153
228
233
185
181
254
233
179
246
234
222
205
194
235
168
189
132
195
191
236
203
239
243
218
195
204
181
132
186
258
204
253
186
232
169
163
181
197
190
189
136
193
246
228
219
201
165
194
141
192
210
189
210
224
235
178
190
195
228
168
213
155
200
239
195
261
192
191
221
240
258
181
235
222
170
227
173
183
184
246
209
152
237
183
229
164
175
164
165
188
215
146
171
198
184
218
175
145
228
158
168
208
204
201
197
208
167
191
186
182
195
223
161
168
223
180
250
231
209
207
235
220
200
143
169
236
180
213
205
141
153
181
200
173
190
194
211
185
169
198
180
224
204
152
189
175
191
187
199
200
240
207
239
299
237
246
238
202
220
203
181
233
202
151
230
223
196
154
235
217
148
224
205
200
240
211
205
148
210
192
237
205
197
165
227
220
151
184
213
218
175
209
225
191
242
213
219
194
180
183
202
178
133
208
204
199
176
218
169
249
190
251
254
179
171
197
225
203
215
197
152
167
185
190
211
181
191
200
258
241
130
208
229
231
204
176
179
209
183
155
233
225
199
248
148
257
174
187
222
216
156
197
161
187
202
219
131
213
179
164
159
235
263
204
233
185
192
223
181
208
249
222
180
186
216
202
185
196
217
260
237
180
202
246
163
205
228
223
154
180
194
158
217
252
232
209
207
195
212
217
189
187
191
194
249
214
263
195
232
192
245
196
135
249
153
205
230
154
197
183
163
185
220
252
177
178
183
127
195
187
211
192
126
225
239
186
243
215
223
179
197
214
169
193
199
145
204
179
234
149
204
167
166
237
223
222
176
192
191
172
226
229
174
216
152
196
181
153
169
255
143
215
180
258
158
200
187
194
198
176
232
198
165
181
157
209
130
211
199
208
212
200
199
174
234
169
283
209
186
215
210
162
266
196
225
183
189
214
193
141
111
196
143
192
248
181
199
223
171
220
229
192
275
213
198
199
135
207
222
160
190
221
182
219
215
185
214
165
223
234
227
157
269
265
186
188
226
238
181
168
208
177
192
220
174
177
188
209
228
232
139
244
154
207
189
207
178
163
191
242
195
237
254
183
163
165
190
188
190
179
166
205
241
198
189
204
199
198
215
187
188
225
191
197
231
161
232
142
191
201
149
151
214
252
205
203
236
214
207
222
143
163
251
241
195
229
150
144
262
215
274
183
234
242
218
226
166
160
184
218
174
170
176
201
177
204
170
203
242
220
198
237
207
216
196
236
151
247
229
134
189
132
192
184
193
194
171
181
256
240
234
137
176
231
225
164
211
180
217
167
222
210
134
128
250
223
193
192
192
212
209
162
168
172
165
184
212
185
258
163
165
148
237
233
210
194
130
145
176
221
256
169
198
174
170
177
197
157
268
186
275
164
180
175
156
203
210
235
199
223
150
182
217
196
198
181
240
179
177
244
220
187
178
184
168
206
206
201
220
206
174
169
188
222
155
152
221
175
198
197
237
215
213
247
251
259
198
173
179
166
191
161
118
245
230
178
192
178
125
227
164
204
223
239
203
137
206
222
132
264
223
142
175
197
193
142
259
123
184
239
164
180
150
136
190
183
248
216
192
240
182
262
191
206
180
193
215
219
219
199
254
184
245
206
193
165
138
268
217
234
188
222
240
235
148
122
200
230
193
219
209
210
200
224
248
222
189
167
209
200
229
189
199
154
230
159
224
155
232
174
232
187
168
153
199
159
196
127
178
207
212
141
184
167
212
214
204
201
219
157
250
241
210
179
226
225
200
140
174
165
209
221
229
201
212
213
172
239
253
200
190
245
183
189
144
212
196
181
213
248
206
241
162
221
206
211
264
214
212
189
218
203
207
198
197
259
173
246
202
176
125
214
203
208
174
212
210
221
190
180
218
160
150
222
218
231
243
209
201
199
189
187
187
207
254
167
165
225
187
186
227
240
218
257
246
196
222
245
215
160
220
216
216
127
255
173
179
225
267
256
209
199
214
247
216
236
236
240
227
146
244
233
251
172
156
193
175
250
233
239
224
195
259
244
156
157
225
123
231
209
130
208
167
241
177
200
247
166
161
209
191
202
128
214
202
177
210
285
224
250
171
202
284
196
162
146
197
225
228
206
164
104
161
198
196
178
180
233
189
170
181
200
166
231
228
219
168
162
261
188
178
164
229
242
229
190
232
235
245
162
198
228
225
191
186
189
213
134
205
237
169
195
199
234
194
188
243
185
215
195
196
224
228
247
234
190
171
184
257
228
213
206
237
196
151
212
260
219
228
225
257
168
202
184
129
208
270
105
133
214
154
188
184
183
232
184
211
208
170
151
187
202
213
198
201
217
236
185
212
213
227
183
259
204
251
182
200
221
205
158
193
249
252
190
160
223
197
185
216
198
237
225
160
204
150
170
187
149
204
204
183
194
189
144
221
246
207
194
209
250
189
279
224
253
223
216
236
154
213
174
195
143
217
222
172
162
139
248
190
192
142
218
217
227
197
212
255
190
219
233
136
173
233
132
266
195
223
227
175
144
180
180
235
196
227
240
224
232
247
252
222
231
233
135
239
165
218
175
274
132
175
223
211
237
171
164
152
247
164
180
163
235
173
189
179
187
239
220
185
189
214
172
218
156
213
232
171
152
253
222
245
201
154
179
221
247
236
161
168
174
205
244
207
219
222
213
194
281
182
110
146
261
297
191
153
174
197
177
179
187
207
142
201
234
241
210
180
244
253
199
200
180
225
241
294
232
170
173
145
232
235
169
226
202
145
203
201
256
210
218
189
143
233
243
183
215
213
214
222
184
241
204
272
221
197
213
183
256
197
136
238
211
152
219
174
176
203
180
187
196
137
235
246
226
247
173
176
161
159
202
201
190
154
125
157
195
199
187
205
123
206
209
205
207
218
160
259
181
182
213
184
191
197
229
151
223
188
72
195
221
183
220
173
196
241
112
167
233
270
236
173
179
215
197
195
189
201
208
190
225
241
194
213
244
232
236
217
222
194
201
154
196
278
211
209
184
198
247
229
195
161
160
218
200
285
186
227
227
186
159
253
279
194
227
157
216
194
199
191
162
133
175
185
117
197
177
225
151
234
227
174
150
191
213
227
157
203
191
250
171
257
161
233
220
182
210
190
143
183
179
282
214
187
213
242
237
225
212
216
146
215
209
218
226
298
180
174
152
187
243
219
242
199
201
223
183
204
211
220
160
232
198
264
218
203
232
232
231
290
178
152
194
201
201
153
167
157
190
230
183
224
173
210
148
165
152
216
206
180
261
249
180
184
239
216
186
196
212
164
219
212
192
170
242
153
196
193
142
250
181
193
170
209
216
152
230
195
175
258
166
250
228
186
181
242
207
213
217
277
213
205
272
249
211
224
166
195
147
223
235
215
207
164
224
193
249
169
164
259
195
217
252
223
185
222
253
211
204
200
177
139
229
212
256
219
167
253
168
245
207
205
206
197
212
228
219
192
179
219
210
197
178
213
185
188
237
215
226
224
200
220
241
284
240
238
156
230
132
221
220
187
237
207
142
185
201
187
143
289
206
246
220
144
224
165
199
216
237
203
202
178
188
213
116
131
194
181
247
235
182
265
220
189
216
176
209
182
212
208
198
201
241
121
200
219
173
202
227
195
230
208
159
205
175
203
257
183
222
84
232
128
190
164
148
148
242
241
221
231
226
195
243
182
226
188
148
188
226
220
247
199
198
167
239
192
163
226
187
232
219
175
156
249
187
217
138
228
199
186
255
229
219
147
183
248
211
161
149
177
178
252
231
148
228
200
198
233
239
264
195
187
226
242
247
233
188
219
229
156
166
219
165
147
195
106
174
205
204
179
241
240
216
210
217
227
215
226
218
171
267
248
228
211
258
201
181
228
210
185
181
214
177
190
194
203
149
231
157
175
255
177
289
158
194
184
180
231
220
167
140
244
200
131
177
226
200
208
245
185
200
212
185
197
223
232
184
159
207
201
185
235
179
152
188
211
244
189
139
242
249
163
226
177
167
238
187
182
172
188
189
222
209
172
162
160
147
212
260
227
222
195
194
232
210
206
121
151
150
246
239
176
189
218
144
260
218
207
228
203
225
175
234
176
197
207
199
155
213
252
203
155
227
239
249
175
194
163
138
219
227
197
198
196
175
206
250
273
208
235
204
159
276
190
166
199
240
232
244
181
210
177
175
206
136
179
222
205
160
184
166
230
189
188
201
259
179
187
156
207
246
206
161
185
214
209
179
183
210
157
183
169
245
162
230
205
159
209
162
200
234
193
211
150
186
258
203
260
238
173
212
189
185
158
190
199
204
256
172
187
206
242
157
192
135
198
197
154
243
145
161
224
197
175
237
119
180
198
192
201
171
192
173
220
173
211
166
199
206
191
233
188
208
134
203
244
255
230
202
164
218
213
160
213
184
156
199
194
179
133
170
241
119
235
192
262
188
189
250
154
205
143
192
270
143
229
240
215
157
139
170
178
236
215
242
161
163
223
191
239
213
155
226
214
221
192
202
157
187
209
137
240
214
152
202
235
196
207
234
179
223
230
198
180
224
231
213
224
169
227
260
213
219
188
175
192
158
142
119
172
245
215
184
161
215
201
194
188
220
173
227
183
177
231
167
195
238
177
167
94
233
124
241
202
259
181
200
192
191
188
208
177
248
190
186
164
191
243
188
179
150
224
250
198
164
187
217
163
247
200
226
195
204
260
156
180
222
160
206
207
196
211
175
199
162
211
196
170
210
169
223
231
251
135
161
155
195
220
223
205
200
163
171
154
234
181
236
201
198
249
224
249
182
194
218
172
201
254
193
224
181
207
187
217
152
156
188
204
192
182
209
218
163
243
241
205
222
168
261
262
144
137
204
151
162
264
191
195
214
263
200
251
159
198
223
222
116
217
166
225
211
201
219
227
224
242
180
263
262
179
206
255
265
197
254
155
175
183
215
175
219
176
234
179
151
191
166
156
215
239
267
235
165
276
220
234
226
210
175
163
211
272
241
233
148
211
212
245
176
248
170
222
166
244
187
149
176
176
215
246
217
145
229
178
172
215
196
182
183
205
187
181
206
158
203
186
227
232
204
200
216
271
175
217
195
189
183
203
221
195
174
228
221
218
245
189
157
162
199
146
185
229
196
173
254
173
276
166
205
165
201
206
160
202
185
209
157
171
196
188
216
175
193
203
248
228
144
141
208
218
224
192
185
253
204
167
259
212
236
232
207
211
162
97
187
151
211
246
202
165
233
156
156
255
211
233
155
143
203
230
188
168
225
200
185
201
225
228
212
248
205
213
237
197
123
217
150
216
213
186
213
220
227
245
191
226
188
185
197
222
215
107
168
212
197
166
190
182
198
179
198
199
212
215
224
166
192
204
184
175
172
205
185
241
228
183
191
267
251
181
202
214
240
185
159
198
213
269
225
201
260
252
221
230
238
192
176
173
200
203
238
135
163
227
187
199
201
218
225
132
205
176
218
178
106
194
194
186
216
201
153
131
170
189
228
189
191
202
234
221
248
228
172
213
236
202
251
223
199
155
157
177
205
221
197
184
209
211
194
277
217
191
196
133
214
220
206
224
206
215
209
188
232
179
247
183
84
276
233
207
218
182
238
219
203
187
159
215
182
223
144
211
170
245
216
174
211
220
209
257
176
227
190
217
218
181
199
219
128
192
195
237
222
192
237
198
213
173
228
167
138
190
152
219
210
291
128
210
178
191
135
198
233
224
167
152
186
189
198
200
106
157
165
271
155
150
299
209
227
220
218
168
109
198
185
171
224
180
222
222
241
207
208
200
243
173
216
164
155
147
223
159
171
169
182
147
159
204
174
171
161
221
218
150
233
174
156
214
172
234
200
186
219
172
146
138
254
173
267
214
155
214
238
129
232
159
204
150
161
227
208
267
232
211
105
208
204
122
224
205
214
144
207
182
207
237
171
190
227
261
196
184
168
194
163
185
192
188
227
184
170
246
217
199
228
192
178
235
179
225
273
207
210
202
150
259
187
192
233
230
182
193
188
239
231
198
170
235
202
234
242
242
217
188
142
160
136
253
219
202
162
209
159
221
186
246
198
216
198
170
178
207
204
145
193
154
183
173
257
208
219
209
199
176
163
172
218
224
185
211
152
165
226
203
220
181
300
199
213
172
175
174
164
220
172
208
209
241
186
182
187
209
169
149
204
140
188
232
179
213
178
237
263
206
162
257
205
234
199
225
175
141
193
232
227
163
210
185
183
202
183
265
192
212
254
191
211
216
195
213
241
209
198
260
224
196
190
221
220
220
252
165
219
261
198
191
199
235
169
171
131
122
219
118
191
170
237
254
175
172
174
164
208
197
171
206
195
188
177
181
236
161
289
204
225
208
223
201
211
187
177
191
240
222
278
218
229
149
152
200
222
234
284
162
197
217
210
218
245
126
153
214
138
226
227
163
171
228
235
158
204
261
175
125
260
212
227
237
238
233
196
205
193
195
191
142
201
209
244
223
241
201
229
160
207
237
257
231
149
223
275
199
198
146
232
157
188
190
197
213
110
236
182
191
209
129
191
229
224
181
158
207
239
262
242
222
213
151
226
184
177
191
186
225
155
233
207
200
230
206
227
235
142
137
207
205
209
229
246
245
205
169
219
247
194
173
198
211
244
220
199
206
179
161
193
189
118
164
202
199
225
247
190
222
237
196
237
231
220
181
205
170
203
176
227
166
215
186
182
201
215
210
152
219
227
207
152
207
224
161
103
139
217
219
187
240
158
197
182
250
230
208
201
230
284
173
190
170
198
240
186
229
179
169
224
175
237
184
176
184
182
230
232
232
197
208
134
236
109
154
264
212
234
153
209
217
237
204
210
277
246
172
184
158
172
191
163
192
260
108
150
121
196
185
196
174
242
151
183
241
145
198
177
162
203
236
180
197
129
225
196
209
156
159
158
170
166
172
163
284
172
179
176
174
248
191
182
169
224
211
195
123
149
268
205
195
234
192
163
234
220
172
150
220
175
220
179
222
246
193
168
213
182
165
221
113
165
208
182
254
222
241
147
233
158
128
197
174
162
235
252
216
186
242
140
224
200
176
167
134
218
196
211
201
196
181
180
158
252
194
220
219
203
173
205
171
220
142
204
227
192
169
215
205
171
218
139
267
214
164
222
217
196
230
217
190
198
191
203
183
236
181
231
235
190
172
241
216
214
150
189
231
174
192
198
169
264
229
238
187
255
155
267
199
203
263
209
203
256
199
168
219
220
222
220
189
196
217
246
220
155
244
189
154
209
224
212
211
243
218
149
251
170
263
187
260
213
161
210
149
170
189
237
218
249
200
180
194
201
186
176
262
178
222
213
155
218
213
254
203
184
186
232
219
210
181
208
153
140
192
191
144
189
201
227
191
212
204
213
211
225
164
263
220
213
181
188
218
192
255
211
224
198
227
146
106
156
231
179
218
168
186
204
200
222
226
220
97
185
256
135
174
209
216
266
229
183
238
207
257
268
260
195
220
156
223
218
183
194
211
174
188
170
186
170
114
212
196
227
181
252
248
180
216
226
176
242
220
176
234
164
216
196
187
173
213
154
225
186
221
170
150
178
206
191
131
224
232
171
237
184
266
234
243
217
225
246
229
219
196
165
203
205
140
237
245
171
185
208
150
148
215
177
222
190
203
176
231
216
122
181
234
105
200
199
139
203
196
194
196
187
199
168
200
145
201
205
191
245
162
195
198
246
184
236
244
208
202
189
142
164
190
206
218
198
221
240
200
265
220
135
158
152
223
198
210
223
142
169
241
145
178
148
206
231
206
235
262
214
213
173
215
172
209
157
264
193
278
206
272
218
260
185
182
176
188
217
159
211
185
165
192
179
142
186
181
195
187
227
214
223
188
102
242
231
139
231
223
218
179
135
166
182
216
235
215
188
229
209
260
256
193
226
143
228
206
196
193
175
282
109
253
144
188
200
201
249
199
183
217
202
179
218
152
161
171
202
192
217
171
182
141
206
215
178
169
218
185
167
227
166
155
226
142
164
131
193
178
213
232
201
228
190
225
233
221
242
168
189
285
149
183
108
187
200
202
211
151
239
186
142
187
131
188
224
155
202
214
169
219
204
201
228
193
234
235
112
127
265
187
268
185
195
214
203
199
104
201
196
226
266
195
193
162
233
162
224
201
266
212
207
168
221
247
185
220
119
173
255
190
228
124
184
247
240
184
160
153
222
198
266
219
251
121
176
134
158
167
254
219
176
173
217
232
202
193
253
205
174
222
228
205
167
247
228
257
183
167
229
203
246
156
243
212
287
163
210
223
216
194
184
250
156
263
236
192
198
156
207
160
213
208
183
260
198
268
180
220
232
188
234
206
162
269
193
177
185
245
237
159
217
235
162
199
199
167
170
214
184
173
220
234
188
180
182
183
216
188
247
203
254
246
209
228
233
181
191
213
242
171
208
167
208
217
160
217
128
117
205
235
148
178
210
206
188
196
168
189
265
237
229
210
256
219
206
175
217
238
216
177
192
150
243
219
241
188
173
196
167
145
265
205
190
238
168
118
159
281
198
181
167
211
169
151
217
154
164
218
188
195
215
191
206
203
255
213
193
149
200
193
137
252
207
208
192
174
217
190
186
297
184
175
222
185
191
219
223
196
181
196
145
167
226
181
162
244
202
212
256
218
278
226
198
168
216
221
189
220
189
169
207
208
157
262
211
227
225
221
220
200
205
203
219
252
277
108
195
224
194
255
239
197
213
184
219
192
201
192
186
223
195
240
207
181
198
227
160
179
190
193
233
226
157
165
170
233
169
184
227
199
171
216
241
216
203
234
116
219
240
142
240
188
177
222
193
212
196
218
163
239
163
220
229
170
199
253
258
171
220
187
146
226
208
214
173
203
196
189
175
181
231
139
188
177
238
233
212
235
187
263
197
190
229
165
188
123
199
273
199
250
201
189
218
203
266
197
162
237
153
234
216
211
262
240
150
143
238
176
239
208
174
176
166
234
163
211
197
168
206
186
202
188
169
198
176
277
176
190
164
183
205
193
225
189
238
245
191
267
150
228
211
169
172
218
222
163
239
133
217
212
158
245
193
257
172
206
214
180
195
216
195
137
264
203
262
175
255
242
238
180
193
167
220
146
209
202
245
195
252
228
283
189
252
188
188
238
256
175
181
186
116
205
170
181
206
192
188
212
235
145
164
244
186
179
265
173
174
224
164
276
159
248
208
244
145
213
182
133
201
170
203
126
216
200
225
192
190
224
160
191
155
166
220
227
227
199
172
230
244
256
161
257
184
219
221
247
243
236
172
163
261
228
202
245
179
147
224
226
192
171
189
236
183
230
182
212
198
273
187
198
187
252
141
151
244
183
172
208
199
210
208
231
191
251
150
204
183
225
164
201
176
224
239
160
158
224
199
193
152
146
239
228
211
191
222
212
212
213
229
202
163
145
185
179
191
215
167
195
224
219
173
122
283
190
199
219
154
210
237
176
196
176
242
147
195
212
220
248
215
216
210
185
141
142
161
187
249
185
257
239
220
229
215
212
202
168
196
132
163
240
171
183
188
187
192
147
208
224
203
161
215
236
164
193
148
214
188
222
227
267
249
217
154
243
155
136
232
206
205
244
183
217
251
268
217
209
177
200
171
214
237
208
229
192
237
211
218
242
187
156
252
143
229
251
238
209
267
229
215
132
182
189
191
232
164
222
235
196
231
183
190
176
154
180
239
171
103
204
166
200
166
179
215
196
217
176
223
133
205
173
150
147
203
207
198
212
200
159
232
223
110
169
204
187
240
186
149
225
212
121
197
212
139
220
149
194
166
201
233
205
199
163
228
191
166
208
192
207
187
225
230
182
202
253
184
211
194
218
147
209
180
208
166
152
179
230
216
165
189
191
182
174
199
206
226
174
178
222
226
277
155
134
181
205
236
237
243
234
197
178
179
224
182
179
167
212
214
194
226
181
227
220
211
183
230
167
211
205
175
174
147
216
201
234
193
192
243
212
141
190
200
231
188
273
226
184
206
124
199
219
161
218
222
198
131
174
218
216
209
204
228
250
140
135
179
191
237
191
149
210
182
205
239
192
241
132
143
228
208
272
224
207
218
109
214
174
186
254
201
181
207
147
173
182
209
163
174
255
191
213
217
149
189
148
199
175
237
289
174
220
163
171
187
241
235
212
187
280
225
159
225
235
192
176
189
204
109
192
215
221
145
218
187
180
202
176
192
247
230
198
204
179
180
233
235
237
212
197
222
191
267
221
209
179
225
198
223
184
157
186
250
196
285
232
179
194
174
198
233
228
226
204
214
164
179
157
240
195
234
143
206
201
201
238
224
209
219
134
211
139
251
172
166
152
224
142
189
201
224
179
221
165
215
150
235
212
187
178
217
223
191
217
161
130
169
206
134
227
296
122
202
224
190
188
241
187
169
195
202
225
233
156
206
180
148
143
200
228
182
215
229
160
163
169
219
233
226
252
237
223
222
224
189
139
156
199
226
209
202
199
213
202
243
148
186
200
232
243
257
163
216
202
198
216
227
263
256
194
262
236
246
174
158
198
200
141
183
208
180
273
197
193
224
167
217
250
235
176
198
179
202
196
204
205
153
195
198
206
218
182
181
219
115
181
223
192
215
207
139
206
181
141
150
213
240
164
197
230
260
215
173
235
169
206
181
180
174
188
180
196
161
122
185
248
235
223
237
188
223
139
165
195
257
182
211
180
200
204
199
261
259
224
212
205
136
194
204
214
160
175
182
154
207
219
214
268
127
229
212
247
141
180
211
209
205
171
187
240
225
252
212
191
162
168
231
238
158
190
153
172
230
204
180
167
194
238
214
217
169
264
194
205
160
209
245
218
231
253
215
191
228
204
160
147
162
154
202
222
190
207
193
177
167
191
196
257
245
194
261
241
200
185
198
233
185
227
179
222
226
214
233
218
202
179
196
217
174
145
224
233
174
209
170
198
218
180
236
171
225
213
192
222
218
182
211
189
252
193
151
145
281
194
188
125
194
205
146
170
195
190
193
205
208
159
208
208
157
173
231
235
224
209
165
174
175
246
194
187
245
230
181
190
202
197
235
234
230
240
216
223
225
125
253
134
156
195
164
205
158
216
234
214
211
193
224
261
218
214
193
216
223
235
265
226
211
177
242
164
210
222
252
224
197
207
253
171
217
222
217
158
190
236
187
258
201
214
258
190
241
183
169
191
209
155
241
192
191
166
184
177
231
151
254
176
161
160
256
274
164
242
193
239
238
256
208
193
218
203
218
150
138
174
178
213
241
213
169
205
142
116
179
174
226
156
189
241
178
196
119
231
146
181
194
206
181
228
161
262
252
219
268
242
161
209
177
190
175
184
216
146
248
177
214
226
196
199
208
107
229
183
232
243
256
203
217
172
181
177
180
187
191
200
279
234
190
197
170
256
201
213
221
200
213
212
244
191
160
163
174
195
162
186
218
214
134
226
221
224
249
177
203
87
196
231
209
207
219
234
219
242
214
200
168
268
174
136
186
234
189
176
178
230
140
162
166
153
178
168
221
220
217
228
174
254
126
182
236
246
118
203
219
174
117
204
210
217
256
207
224
203
270
233
205
191
232
192
155
153
184
196
168
150
209
223
208
160
291
222
197
143
146
176
209
215
197
172
161
154
137
154
200
192
230
183
179
265
188
243
202
154
201
232
183
225
191
240
190
198
233
189
166
280
228
255
248
206
188
202
189
247
243
158
193
216
199
233
83
192
204
252
167
169
214
239
232
211
226
175
182
211
192
225
265
201
195
142
170
232
219
147
197
163
238
211
205
177
193
229
211
224
218
147
161
156
150
145
158
201
197
185
213
133
215
204
235
194
202
173
179
225
249
177
224
221
215
240
171
273
196
191
177
193
233
187
191
244
168
249
175
244
149
254
195
240
274
240
231
193
251
239
160
193
187
187
167
216
172
229
160
199
204
225
181
238
200
233
146
236
209
144
162
204
200
191
240
135
274
200
188
213
146
276
197
166
224
185
223
221
142
196
197
195
262
225
134
146
162
248
230
181
209
200
227
173
246
182
257
227
175
209
213
213
173
183
200
159
208
240
242
169
203
220
179
274
199
231
225
138
195
187
201
215
188
129
154
181
185
262
186
223
230
214
131
153
210
232
195
162
201
212
187
180
212
188
190
245
205
211
190
211
150
158
175
138
216
224
242
188
196
152
178
170
267
167
187
190
192
191
185
215
165
214
119
201
155
132
224
209
218
250
159
179
233
153
175
245
238
177
205
176
192
183
195
240
205
212
185
143
185
220
177
199
193
189
223
222
190
216
187
216
205
229
157
165
220
183
232
183
188
239
167
221
217
228
206
154
225
160
226
174
158
181
214
215
181
135
210
213
227
241
237
178
229
206
252
224
207
195
185
157
184
201
208
172
136
158
123
192
127
215
221
152
172
127
172
203
201
212
235
243
191
146
199
188
229
189
251
191
228
219
237
286
206
178
194
185
209
276
196
223
229
206
220
206
165
227
186
232
183
158
256
241
211
217
195
268
232
225
261
131
189
213
180
193
240
144
246
186
232
176
275
222
216
226
182
160
222
182
171
171
153
216
173
212
232
220
137
252
207
173
172
197
198
262
153
229
108
206
149
203
262
211
231
223
209
240
277
201
177
205
226
191
200
209
213
213
167
194
210
162
177
169
202
187
168
234
253
196
184
193
230
224
299
266
215
193
157
242
235
205
206
191
173
171
234
273
159
237
177
213
206
247
191
197
162
215
227
223
212
233
207
175
180
179
172
193
185
239
204
248
156
205
180
206
192
219
201
208
215
217
243
228
161
199
223
190
256
183
203
226
178
131
218
252
147
194
212
169
225
230
214
158
224
200
246
165
177
266
220
237
223
167
159
153
208
185
187
218
129
172
166
189
229
219
213
249
219
165
228
241
249
221
128
199
222
179
224
201
162
230
109
158
192
203
219
177
235
182
224
186
227
165
151
168
175
178
197
182
205
145
186
255
224
189
158
190
155
142
208
209
263
244
210
189
204
210
218
202
220
241
188
147
177
138
157
152
214
251
207
223
148
219
167
184
167
220
195
254
220
222
130
217
162
211
206
242
174
211
181
211
155
178
256
199
188
219
131
224
154
205
229
283
240
116
179
138
201
208
225
154
249
132
141
249
174
160
132
201
269
154
175
180
194
216
156
195
181
251
176
140
182
205
127
302
228
159
263
218
137
203
226
207
167
223
212
220
198
201
198
231
124
221
154
172
217
199
154
236
238
214
151
166
179
176
221
194
226
281
253
242
167
240
249
168
242
168
208
197
237
160
187
230
188
230
181
236
200
220
166
253
163
161
264
148
185
188
211
238
221
223
272
249
238
191
223
247
245
253
175
258
235
222
195
250
185
187
300
115
185
178
215
226
198
225
166
185
216
180
192
191
163
214
192
210
250
161
126
202
167
215
156
193
146
199
211
212
170
216
180
220
205
204
195
183
212
145
203
144
174
116
174
195
251
233
190
208
188
155
248
163
144
199
246
171
244
186
155
169
145
208
225
179
170
179
196
196
212
157
212
201
181
201
207
199
229
236
200
236
147
202
152
204
243
174
145
133
199
182
164
157
139
205
245
195
208
162
182
94
134
205
182
185
218
188
236
150
189
183
190
194
215
216
179
172
217
197
212
204
171
180
215
200
195
252
238
184
156
205
187
213
256
193
261
218
195
236
235
228
115
200
254
153
112
183
165
217
249
156
186
232
205
211
183
243
233
264
193
225
202
209
221
174
245
171
240
204
256
213
265
230
233
179
223
151
105
224
209
174
163
208
187
126
180
169
87
229
160
132
169
239
155
218
122
201
215
177
212
223
104
189
205
165
264
188
262
173
243
236
238
212
144
212
186
150
186
237
232
203
238
228
182
156
180
189
220
197
216
206
237
143
198
245
142
249
200
153
231
186
223
186
221
210
144
191
214
189
258
247
208
169
199
179
157
193
176
217
218
176
174
208
240
227
132
110
187
232
187
173
196
245
193
144
188
199
229
219
201
275
239
184
227
226
199
200
240
200
191
198
132
152
231
184
156
212
224
171
141
206
227
163
151
147
181
224
189
210
180
165
189
146
163
171
183
239
97
204
203
167
173
215
185
160
249
170
174
139
215
190
177
192
230
213
163
204
159
243
222
251
209
220
185
215
155
256
175
214
171
190
217
129
200
196
164
232
265
178
220
183
210
217
231
157
142
206
231
213
184
144
207
182
188
208
168
145
203
243
197
174
266
243
254
156
211
213
185
211
167
195
154
167
235
200
219
191
177
204
219
226
208
193
191
221
222
215
189
207
189
260
207
222
228
173
179
223
202
236
158
217
123
174
245
193
120
242
245
222
206
148
193
253
227
229
239
169
212
192
201
203
174
153
204
185
179
223
209
203
201
197
248
264
187
182
157
179
189
180
201
188
245
162
237
206
181
180
193
183
214
173
235
216
180
199
230
205
193
167
177
195
204
250
171
167
213
191
236
182
223
239
188
184
219
195
102
271
211
188
189
231
185
161
183
213
173
230
231
225
152
176
235
210
188
211
195
246
199
258
188
182
204
225
200
187
194
213
173
224
206
187
218
205
241
199
183
184
220
177
203
210
221
248
184
189
222
212
225
191
143
208
202
217
160
149
152
176
177
217
202
223
133
194
204
197
187
241
246
208
178
228
251
199
225
165
225
200
204
185
161
199
143
180
182
211
216
195
224
199
255
174
266
189
173
166
224
209
197
199
203
210
213
193
237
170
210
197
271
204
179
276
170
221
251
193
239
244
212
208
99
188
179
238
220
195
219
204
272
273
261
191
237
260
253
235
209
222
169
177
174
288
178
231
171
169
246
210
260
188
182
297
180
225
224
172
186
261
198
184
183
198
141
231
209
183
226
218
202
146
178
207
193
195
192
174
241
211
252
167
191
205
227
265
184
228
185
190
153
164
215
252
164
261
204
246
175
123
169
172
172
223
231
134
161
135
187
221
175
153
245
187
194
198
225
250
247
189
229
202
183
192
255
224
152
199
131
196
227
191
226
208
208
177
222
149
219
207
214
252
170
182
211
147
240
201
208
220
181
167
208
180
150
207
245
206
137
157
214
177
228
195
229
142
229
190
210
225
174
156
223
270
139
205
156
176
170
231
224
169
240
248
250
200
195
159
120
168
169
195
200
195
254
190
190
188
183
179
115
159
198
191
149
193
229
235
151
222
195
170
281
190
182
123
146
176
153
157
197
164
231
192
191
249
183
160
185
208
101
250
150
208
208
214
151
215
174
216
224
257
267
191
212
188
190
205
168
290
160
188
197
221
115
238
198
183
177
193
144
173
169
273
220
151
203
139
248
232
170
208
222
200
184
191
237
231
203
244
208
238
198
166
156
199
165
222
161
144
212
223
194
170
239
230
196
139
160
198
195
180
260
189
211
262
175
194
167
169
222
202
234
235
167
227
181
215
222
177
262
200
234
230
172
207
240
194
227
216
231
204
171
188
241
187
210
200
262
106
189
197
218
232
177
152
153
125
195
216
246
234
194
217
152
196
214
114
194
219
188
175
147
194
225
203
194
224
182
162
213
176
168
174
179
229
176
179
188
212
231
197
180
266
189
181
145
204
239
200
152
214
201
165
222
229
177
193
225
198
110
212
201
162
242
249
203
185
196
181
241
204
218
204
142
182
169
181
198
167
192
224
222
217
203
242
199
191
211
176
198
209
204
166
211
145
242
209
200
248
219
262
221
191
192
169
246
171
180
213
155
235
195
211
215
196
187
166
221
218
209
187
166
226
165
196
217
153
150
206
249
181
176
198
177
227
226
238
223
204
170
186
240
181
227
216
242
200
209
191
234
253
223
193
219
192
169
185
208
148
208
196
223
194
193
162
233
210
226
197
205
195
180
171
190
261
223
224
218
202
203
218
274
174
204
148
234
240
202
215
189
182
223
217
168
238
116
185
198
178
178
183
173
180
168
183
170
187
184
214
190
200
231
256
217
157
182
244
120
281
153
202
256
197
226
242
249
189
218
239
218
264
228
164
209
242
228
228
202
186
96
237
161
177
177
185
221
153
191
214
229
147
162
118
155
253
169
221
207
205
201
260
231
176
165
173
206
157
238
164
237
129
257
182
220
199
228
194
220
179
169
265
222
149
221
181
185
236
193
145
220
240
196
191
219
198
145
152
203
223
239
214
144
187
178
235
238
217
215
154
143
162
224
173
231
120
202
168
166
210
248
155
177
228
170
208
234
143
166
213
205
203
128
152
162
166
205
144
184
181
158
275
250
218
267
263
223
173
264
245
163
252
232
160
199
200
155
205
177
194
223
207
192
205
185
196
211
172
207
193
234
231
228
159
170
224
256
211
122
159
209
258
196
210
255
165
246
183
248
242
135
212
231
147
244
140
177
175
185
179
144
193
218
204
201
196
156
140
250
180
234
138
173
226
187
145
218
182
257
172
202
208
267
222
262
218
201
176
198
89
195
170
246
220
221
278
211
123
169
188
216
197
217
236
223
250
209
208
132
158
204
182
184
175
157
215
252
230
154
199
263
189
156
193
244
199
249
193
159
205
103
240
164
260
187
169
222
215
219
206
179
164
263
146
133
254
128
165
208
186
224
157
180
204
164
187
176
265
269
181
227
188
225
159
124
212
271
240
232
196
134
110
170
223
277
285
127
122
196
202
193
208
199
165
267
168
196
170
203
208
230
295
159
206
159
122
233
224
215
229
265
211
248
190
201
159
171
214
230
195
207
239
144
217
240
153
257
188
214
209
188
174
226
217
144
206
226
228
231
222
114
177
217
212
158
205
194
205
227
173
191
172
224
181
261
246
190
246
187
163
167
200
227
127
174
202
259
151
259
198
145
194
220
218
227
202
234
197
267
218
237
233
165
244
183
188
212
212
200
240
120
135
237
206
165
216
197
217
222
210
178
123
161
193
199
176
212
190
231
212
221
174
164
253
221
179
202
186
214
206
192
258
244
230
213
173
186
207
162
137
151
255
173
193
172
164
207
176
215
191
195
198
186
202
160
175
159
194
251
222
166
162
160
183
254
252
256
190
245
172
240
173
242
182
155
182
231
204
151
213
172
161
165
191
225
215
217
193
207
194
278
179
189
218
202
179
213
199
228
231
251
147
211
204
202
254
197
258
201
235
178
213
186
192
231
232
191
231
283
219
205
187
302
264
180
206
242
208
254
121
203
202
144
195
188
234
259
189
200
200
170
146
182
223
235
187
148
209
246
223
264
202
167
210
203
243
202
182
242
188
188
241
210
226
196
158
202
146
213
184
173
150
163
213
175
200
182
188
192
190
139
176
170
173
221
233
195
146
219
270
124
165
148
175
194
222
163
146
166
235
225
169
166
168
197
154
232
148
230
264
213
210
227
219
166
225
195
219
147
248
250
206
168
199
194
213
190
217
154
176
204
207
231
165
188
238
174
264
195
192
256
263
238
229
174
148
228
167
209
160
236
238
220
258
197
183
208
235
146
129
184
168
221
221
201
231
245
145
175
198
175
213
238
172
181
160
159
139
174
205
221
211
246
215
181
155
237
210
163
231
247
158
197
212
180
232
188
223
204
210
191
269
204
263
206
147
190
199
279
191
132
202
182
182
238
176
222
210
236
241
261
175
200
184
160
241
227
175
173
190
148
152
236
190
192
203
242
196
225
250
175
234
278
195
192
200
203
238
272
178
207
158
212
183
184
236
217
178
180
193
229
192
256
216
174
224
221
173
250
195
239
244
151
151
221
204
174
233
247
234
220
174
244
198
200
129
161
211
136
190
190
222
188
235
162
164
207
142
167
172
230
138
195
199
245
223
200
167
211
152
181
213
222
239
250
177
202
162
268
170
207
136
275
128
224
163
192
191
243
222
249
177
151
242
257
189
231
140
151
231
198
218
184
162
268
176
157
205
228
206
235
223
195
220
159
167
150
214
237
205
185
212
196
176
166
213
229
184
196
174
202
234
158
243
221
223
243
253
140
235
243
232
217
154
180
195
257
197
159
160
184
212
164
249
244
181
180
161
189
202
252
200
187
222
209
153
241
178
202
228
227
200
167
175
257
196
208
166
229
197
239
230
215
199
188
171
235
238
172
196
176
174
241
180
181
236
200
177
184
227
233
206
226
140
219
245
183
192
154
240
171
204
194
118
245
209
201
165
231
166
205
170
265
188
176
238
91
176
191
200
249
140
176
249
278
150
225
182
189
175
182
278
207
207
177
187
127
176
188
268
187
223
159
149
175
176
163
209
222
251
193
274
148
153
210
155
207
218
238
200
184
194
205
220
201
163
172
259
237
185
226
165
224
216
186
228
252
224
213
240
224
224
270
150
171
195
205
185
204
220
189
185
115
206
202
234
225
206
177
255
158
144
160
213
217
132
192
210
180
143
166
111
235
174
195
218
182
171
232
172
189
189
256
218
182
181
213
214
156
166
172
212
173
189
184
201
127
217
239
178
200
153
222
235
174
173
200
147
231
179
167
232
104
193
179
168
221
166
180
196
205
137
223
272
235
212
239
199
202
233
234
197
191
218
147
209
190
218
197
193
167
202
176
210
220
176
177
248
236
236
203
225
173
259
183
209
223
191
160
242
147
221
129
206
199
212
194
193
201
203
131
201
206
207
229
224
208
213
227
151
168
226
239
175
202
177
181
206
221
124
182
150
203
216
147
233
255
175
158
185
237
128
173
230
181
194
212
177
182
144
202
211
171
208
191
187
179
214
207
179
161
122
202
178
191
261
189
220
207
162
215
256
199
212
194
245
223
176
146
251
217
222
211
205
219
151
169
176
198
170
125
183
175
138
212
182
181
232
224
218
180
211
192
252
154
212
197
156
151
270
214
198
181
234
163
213
166
187
192
196
163
162
200
236
214
199
182
126
155
202
182
178
264
192
173
238
214
156
151
167
228
171
178
164
156
204
230
211
224
191
174
227
233
169
210
215
187
216
162
240
182
171
260
193
209
217
201
242
163
180
247
150
190
224
180
225
139
207
244
223
228
178
192
168
175
174
140
141
229
243
238
197
205
209
115
200
255
235
164
237
155
212
192
148
221
205
188
198
221
137
210
210
228
202
249
245
200
195
224
182
170
210
187
234
209
204
173
167
163
102
229
170
202
215
237
210
238
237
240
172
187
139
222
216
199
184
200
167
197
169
196
190
221
234
216
155
204
209
225
242
177
223
225
293
195
246
232
178
178
167
196
217
178
151
154
210
229
206
207
223
230
146
128
181
214
171
248
176
198
165
191
182
281
251
167
238
184
167
209
183
252
200
185
155
224
210
245
196
169
226
224
217
218
228
224
231
236
189
182
280
186
138
224
162
145
192
279
138
268
237
196
156
201
224
216
224
238
251
174
223
204
141
230
245
206
237
197
221
234
257
212
192
246
218
186
158
202
213
203
219
159
173
182
212
169
205
200
210
191
191
190
245
188
236
162
224
210
230
176
200
114
91
230
190
209
203
213
215
279
224
252
230
191
176
216
226
141
188
166
179
168
158
236
182
168
240
228
172
189
249
185
237
191
185
223
206
133
238
169
236
201
208
175
232
176
191
199
207
201
209
219
187
171
243
202
234
276
246
228
218
210
181
241
200
148
166
177
224
193
213
175
235
136
194
141
159
217
202
220
176
150
217
167
219
123
157
257
243
183
180
184
201
158
203
231
254
206
207
205
258
191
174
225
166
235
185
151
204
185
182
213
186
220
179
197
233
191
204
148
264
187
222
261
177
194
169
239
246
164
221
186
233
181
244
249
144
115
183
146
176
217
213
228
184
159
206
176
212
167
210
198
161
226
243
241
195
178
232
236
210
202
220
215
202
229
251
220
136
246
137
165
153
212
179
189
192
249
219
236
194
218
183
205
222
249
194
243
154
203
120
131
230
209
192
169
207
142
195
238
181
264
231
189
126
180
236
204
203
195
218
208
151
165
197
243
181
232
194
225
192
187
133
224
152
166
167
198
105
216
177
144
188
233
173
140
238
207
248
215
263
246
243
151
229
190
200
195
166
201
241
193
221
171
173
215
184
191
228
213
132
160
199
200
236
165
164
179
273
167
241
212
123
190
264
199
232
163
182
236
244
280
229
228
206
190
183
266
144
190
213
149
203
173
211
212
177
206
202
214
184
213
137
165
207
136
228
178
213
189
225
191
199
236
142
218
245
119
113
225
215
199
235
132
172
136
143
145
124
130
230
300
236
166
166
217
231
266
253
233
164
208
225
217
211
192
194
231
201
213
210
195
196
264
262
175
213
201
179
189
251
178
233
213
76
203
203
172
188
193
227
169
216
227
238
203
179
174
180
210
189
230
197
231
188
180
216
220
237
189
224
263
263
186
220
153
157
221
172
218
185
206
207
172
243
221
189
192
196
250
235
141
171
231
211
255
135
236
218
193
227
147
178
236
161
219
190
187
145
158
194
188
181
198
198
200
176
244
179
246
223
166
237
233
211
156
250
221
200
183
234
230
218
224
243
204
145
292
175
154
164
189
170
193
205
237
231
204
268
119
235
259
205
198
183
202
219
180
198
234
208
214
178
257
270
209
123
136
179
231
209
226
201
185
207
233
178
214
187
240
212
199
199
261
201
166
132
165
170
207
133
240
211
246
243
135
203
188
191
141
161
178
255
248
253
230
182
200
130
229
257
166
273
166
161
239
125
249
175
190
191
136
206
115
143
159
201
244
211
168
166
223
267
246
205
196
126
178
164
241
267
221
180
229
172
146
185
143
262
222
214
216
171
189
201
227
233
194
171
192
201
194
227
239
181
184
197
250
195
220
165
181
202
260
181
240
147
169
166
168
210
201
194
215
172
180
190
200
182
242
152
226
230
200
257
190
205
221
88
243
262
216
186
283
163
170
132
198
136
196
245
196
220
201
201
212
208
184
231
248
206
210
202
248
240
209
187
139
177
220
211
187
186
158
204
189
198
215
223
235
232
213
183
156
214
174
192
174
201
186
250
193
208
171
199
229
228
193
154
172
185
226
226
152
136
241
224
202
198
209
177
147
238
185
186
222
243
232
241
218
211
223
180
167
197
264
173
192
187
206
159
219
211
194
222
200
239
144
146
165
235
184
160
143
172
221
166
217
218
179
210
232
210
171
250
184
222
163
133
226
244
166
223
191
148
171
119
177
217
146
165
169
161
188
239
162
162
224
160
206
219
218
168
222
170
186
139
155
262
211
198
190
178
218
239
230
205
227
175
210
219
179
206
279
217
265
221
165
179
202
218
135
252
134
178
161
259
215
194
206
231
232
234
187
190
188
174
176
180
124
212
264
231
157
200
187
220
230
219
233
187
164
149
189
228
187
205
170
226
247
178
188
263
240
166
145
146
154
188
174
177
188
191
205
235
151
189
204
203
247
197
190
130
159
266
208
157
181
184
214
279
184
178
177
192
118
202
192
204
271
175
219
227
220
289
174
213
177
202
189
126
224
214
208
197
218
178
202
149
232
243
226
227
188
243
196
218
161
250
218
143
212
207
171
243
218
187
243
166
164
166
204
242
205
234
230
226
202
242
174
197
142
228
216
186
190
161
177
204
240
198
199
206
236
151
168
140
196
101
182
211
268
185
180
204
167
225
239
147
167
198
187
214
157
269
211
185
169
209
195
278
156
239
213
202
227
151
177
234
148
258
222
174
214
246
186
225
194
160
199
201
150
186
209
191
186
278
176
180
191
150
197
207
135
119
167
181
188
142
234
171
266
164
157
209
186
157
156
176
285
169
169
161
226
165
185
214
205
215
233
226
173
177
201
227
143
115
181
222
181
213
240
221
180
181
251
206
149
205
231
187
208
251
173
237
256
186
215
252
206
138
208
228
136
171
153
233
229
205
265
183
180
155
177
121
170
101
138
226
205
196
196
194
272
182
236
186
175
222
233
178
182
242
210
170
262
232
178
154
158
227
246
253
193
204
188
223
197
195
177
163
209
202
136
208
243
215
180
226
217
249
209
137
213
222
238
265
261
220
182
173
207
183
112
211
169
158
218
170
213
178
189
206
213
225
197
227
207
186
177
219
217
175
188
198
254
206
265
203
236
198
231
184
199
185
247
178
239
223
203
218
247
230
119
193
190
190
109
195
196
138
266
230
226
158
234
182
185
180
268
196
197
241
163
192
225
211
242
181
215
231
207
298
238
161
220
167
249
193
206
187
221
199
276
192
151
211
215
242
237
177
192
238
173
163
248
136
165
238
137
215
212
240
235
167
209
200
160
204
142
190
171
238
224
222
204
223
165
200
208
201
132
234
197
263
243
213
213
172
110
278
230
189
181
184
117
214
155
185
230
215
244
182
191
184
208
234
174
147
265
200
199
224
172
210
258
185
121
218
190
208
172
198
192
255
178
249
164
192
195
191
193
188
186
238
173
213
137
249
209
167
209
275
105
218
156
209
231
195
173
251
136
177
174
192
218
229
240
239
219
228
221
179
198
226
180
208
209
191
189
179
168
230
238
179
120
153
267
172
142
110
179
171
230
260
221
261
201
237
145
187
191
221
137
267
211
223
157
227
193
169
174
220
151
200
203
196
236
217
199
135
179
229
280
191
242
250
176
195
201
221
263
227
267
164
237
205
190
197
148
135
180
169
140
206
111
215
191
221
225
220
168
218
244
215
162
256
147
153
144
184
283
178
175
215
167
230
142
224
203
191
216
160
201
206
197
230
241
162
218
185
202
117
243
155
199
206
238
210
256
201
217
225
164
189
203
246
203
207
203
180
191
205
221
194
215
236
172
197
172
181
195
225
152
276
188
254
179
225
174
204
214
194
179
223
164
267
212
151
121
198
226
247
231
256
208
201
231
215
253
233
244
214
190
195
266
260
169
269
172
166
212
233
215
253
198
216
271
267
245
226
179
207
156
190
185
215
184
223
249
212
232
208
195
223
152
153
183
233
170
194
151
202
227
271
143
212
246
122
245
213
187
145
176
226
223
203
183
200
220
191
207
209
173
263
243
196
169
258
208
224
170
223
247
207
160
200
255
256
242
239
152
173
171
199
164
197
190
190
156
234
170
217
274
237
241
190
229
169
182
178
198
206
237
205
238
243
257
152
245
176
213
209
234
175
173
177
196
169
168
193
214
136
197
228
187
190
170
192
151
139
263
224
194
182
267
156
199
201
213
239
172
211
244
154
262
216
186
191
224
191
262
166
185
181
186
142
171
175
239
225
213
150
135
206
157
239
280
216
222
225
230
198
175
179
251
194
201
235
236
238
171
201
222
193
221
178
159
189
276
157
215
174
169
110
181
247
230
194
205
197
199
238
187
234
230
204
215
180
198
193
218
190
223
207
175
198
194
236
163
161
291
172
186
179
217
204
261
184
206
239
211
177
143
206
189
226
183
150
172
152
220
211
189
130
177
187
175
172
214
239
194
277
243
194
196
205
232
228
197
231
212
203
204
201
203
170
183
181
234
210
262
180
166
159
187
260
208
190
197
190
300
180
199
256
148
172
260
227
225
163
229
152
242
219
215
257
156
172
232
126
205
167
184
182
255
161
191
258
204
150
225
213
157
208
174
163
178
167
197
260
168
183
187
178
199
196
235
186
210
187
167
230
227
169
181
192
212
279
214
160
237
244
280
165
198
216
203
189
232
174
227
214
263
185
216
166
170
237
179
153
242
171
221
199
137
172
154
214
194
196
211
155
223
210
159
217
168
203
188
188
250
210
245
217
181
208
240
152
155
212
270
149
211
207
187
155
179
222
221
223
125
217
177
162
208
210
118
202
242
257
130
214
187
215
217
219
191
192
191
209
241
203
224
255
174
204
199
174
214
186
170
115
199
160
174
264
180
196
212
207
170
229
193
229
160
200
139
209
218
224
175
192
156
184
215
187
251
212
164
226
212
245
213
190
96
169
119
249
200
171
174
198
234
173
214
169
204
189
225
169
211
226
154
201
253
188
193
260
130
177
245
212
216
206
188
150
243
244
244
213
195
166
199
136
181
153
206
210
222
238
201
235
149
233
144
209
184
206
224
186
182
157
212
238
214
219
180
135
178
186
206
256
270
217
265
221
180
214
223
222
236
221
173
214
195
202
221
229
122
248
230
269
169
145
218
155
153
160
253
168
226
148
202
208
234
208
211
211
171
203
180
207
216
233
166
206
158
215
169
194
143
219
214
210
169
188
224
236
208
209
193
233
194
195
209
180
215
155
247
123
144
189
218
214
166
214
171
206
261
223
152
265
170
249
235
190
188
250
173
214
198
239
264
186
235
214
230
194
156
211
172
206
261
223
204
231
189
220
180
185
288
154
249
217
177
241
219
254
231
172
217
205
184
184
243
190
121
227
200
208
209
152
170
252
272
192
208
231
211
225
242
188
219
239
199
202
171
165
225
262
171
222
231
214
268
263
168
218
204
174
138
210
194
201
183
227
224
234
245
136
198
187
203
218
164
187
244
237
181
173
181
155
258
248
163
150
223
254
230
235
223
188
234
174
143
211
213
197
219
149
207
221
182
183
184
252
189
232
183
184
224
131
256
196
117
210
249
246
151
220
217
150
231
214
174
186
201
148
192
200
142
179
232
164
198
300
196
87
234
206
207
135
240
196
238
223
182
192
220
211
195
196
239
173
188
240
270
232
189
210
171
169
167
200
255
236
215
180
169
234
172
183
179
214
208
190
170
262
227
208
168
156
203
203
234
185
234
157
195
223
236
243
214
191
200
269
170
218
246
189
223
240
208
172
192
156
181
211
165
211
199
252
195
177
227
196
259
190
158
227
203
228
179
175
223
165
209
174
228
154
146
139
194
180
150
197
236
257
236
246
199
236
238
178
202
133
222
233
257
251
204
123
171
177
190
201
141
182
211
181
248
198
179
200
218
246
224
189
168
220
213
192
256
224
147
246
209
194
181
181
192
212
212
272
135
148
219
185
143
171
257
161
209
145
237
219
208
192
203
185
218
199
250
140
265
244
226
189
241
232
262
171
210
188
192
210
174
217
220
177
233
223
195
168
210
153
252
230
248
177
142
243
221
204
235
208
235
200
195
156
151
209
191
202
125
198
217
240
253
274
211
178
233
224
171
172
242
184
122
212
177
217
170
171
217
224
222
237
156
251
203
235
229
146
184
225
250
212
219
253
198
191
197
140
144
155
210
146
214
245
215
231
222
194
230
197
189
213
217
177
214
206
205
211
185
143
170
221
187
178
250
162
206
274
178
175
134
221
179
182
217
233
192
230
187
233
225
186
181
194
220
228
242
227
176
219
197
142
244
174
120
201
254
189
193
187
208
202
234
203
221
181
233
214
166
204
198
198
205
180
195
173
227
233
142
146
163
227
239
219
180
252
197
213
181
168
175
205
245
236
187
217
162
215
187
202
109
227
195
165
170
197
174
153
179
215
186
207
258
166
251
177
230
196
220
272
219
236
177
174
143
230
222
218
208
190
207
205
283
195
204
179
191
256
124
203
230
231
217
197
236
162
231
211
226
205
241
240
181
162
222
227
192
238
208
242
159
209
130
195
144
216
180
213
239
235
236
223
147
181
210
199
220
199
230
197
222
139
205
231
177
152
188
215
221
149
152
243
238
149
248
199
248
204
174
203
148
187
204
200
182
218
202
149
184
166
180
230
241
141
137
189
262
212
171
163
211
222
182
123
162
214
239
197
226
235
171
243
256
207
251
184
199
196
141
191
233
272
218
189
221
170
239
208
214
186
203
229
175
188
182
270
210
216
179
189
253
164
197
149
155
157
163
255
193
230
188
218
260
214
215
176
200
240
189
239
210
198
160
158
190
232
200
236
158
231
178
199
192
151
196
162
234
145
238
204
212
181
191
229
228
238
188
200
118
215
199
153
114
204
177
173
255
176
205
189
219
218
213
173
217
210
142
205
172
248
255
200
209
184
169
175
233
241
229
222
144
255
232
205
266
174
210
225
173
235
237
231
181
198
203
278
240
240
204
198
166
244
207
266
207
195
274
260
200
220
187
187
161
174
248
251
254
188
229
203
237
235
232
245
188
215
194
205
272
159
199
214
245
221
225
192
219
225
219
159
243
217
202
176
191
246
160
200
165
203
187
183
211
250
204
218
163
178
190
185
205
184
237
224
150
185
205
223
209
142
194
220
179
245
174
165
193
252
208
228
218
200
203
177
181
172
131
203
168
136
226
232
93
239
255
208
148
217
181
216
213
187
233
200
251
192
217
249
191
271
234
146
104
237
220
252
249
234
261
179
224
168
184
210
154
151
230
206
212
195
188
202
161
248
187
226
173
215
170
221
186
248
175
230
214
222
173
181
249
149
185
217
196
159
215
163
202
209
187
215
207
248
246
187
170
213
178
166
175
196
212
273
176
196
237
200
217
185
191
225
200
146
279
233
189
211
215
191
170
237
200
169
215
166
196
198
162
147
198
174
237
269
165
205
216
238
237
206
189
241
205
154
248
176
250
199
228
227
175
138
232
159
194
219
202
150
192
169
169
194
172
282
167
201
184
219
212
228
193
148
209
181
175
254
188
225
190
173
205
132
130
205
156
268
190
225
249
213
205
211
200
188
221
207
169
192
176
241
180
217
218
246
119
146
219
193
226
250
234
200
202
199
175
222
236
164
201
185
233
225
196
215
150
210
220
197
195
180
275
157
170
186
236
199
192
235
161
168
267
198
191
220
227
215
156
241
236
170
254
258
232
187
225
151
207
217
209
201
222
212
137
159
234
212
203
300
162
167
216
186
194
165
171
201
244
183
269
184
174
210
217
238
145
208
238
176
233
150
215
184
169
215
187
219
233
151
221
235
234
253
221
262
186
258
245
253
246
191
168
168
191
172
237
205
153
144
196
278
250
201
234
221
193
230
188
256
191
245
221
231
197
144
181
212
184
209
223
237
154
185
211
220
208
187
161
160
242
194
170
197
245
249
170
184
193
193
204
197
234
191
229
155
218
162
200
172
186
178
232
242
224
182
224
169
172
146
154
186
151
187
191
105
185
191
230
172
208
195
196
204
278
201
224
190
220
199
206
227
146
222
230
219
191
173
164
173
170
172
238
191
210
216
219
183
279
168
260
159
219
150
192
159
212
210
201
169
229
191
257
210
185
197
165
182
206
138
202
175
159
191
197
208
207
245
237
200
168
177
209
195
184
169
216
106
234
167
202
164
213
189
176
232
189
195
218
165
176
218
217
165
247
202
193
207
222
242
258
263
238
243
247
269
165
210
208
207
209
227
203
196
252
244
200
234
236
172
175
219
226
227
219
242
225
226
193
120
170
215
162
213
197
182
147
200
183
170
156
214
123
182
187
214
192
241
127
202
194
230
256
191
187
197
226
159
164
190
140
182
157
172
185
162
173
222
201
222
161
205
180
170
258
236
201
180
180
226
169
206
216
226
157
193
265
222
235
176
254
204
203
196
208
217
215
193
163
228
174
212
218
248
204
182
209
218
247
269
219
191
229
229
207
167
171
214
184
209
219
257
180
260
248
187
201
132
240
186
191
254
202
194
157
162
204
170
174
245
205
192
164
272
206
198
268
137
139
199
168
248
203
195
151
209
229
205
178
288
225
218
163
182
257
199
221
228
163
215
181
229
160
103
193
215
244
192
140
142
188
207
211
193
124
222
233
246
184
218
203
196
145
211
182
195
191
147
171
192
189
194
227
155
245
189
229
187
144
179
143
175
259
209
211
197
183
214
201
237
164
114
198
217
260
215
214
202
220
205
273
189
244
218
244
175
208
184
187
179
199
204
240
219
204
235
161
195
156
236
230
172
165
204
236
245
269
232
238
210
170
203
252
172
205
222
127
218
234
258
200
178
204
216
156
176
236
225
113
214
201
181
195
208
159
140
191
211
180
150
192
115
196
217
195
226
146
208
167
171
154
250
179
197
240
285
214
138
191
130
196
196
173
218
180
217
215
242
160
217
230
229
176
194
133
190
192
181
172
216
169
110
241
237
139
242
173
195
161
220
205
188
230
180
185
198
241
187
215
174
204
229
203
238
194
229
242
212
171
189
179
243
158
174
205
186
182
215
206
151
170
142
180
211
234
153
198
184
234
217
233
198
167
228
240
225
201
177
182
172
130
198
116
181
155
222
215
231
196
253
258
190
161
201
168
125
230
178
170
207
263
205
190
181
156
168
146
221
261
263
185
176
179
153
171
188
239
233
177
218
177
200
219
235
185
233
160
247
206
181
232
233
219
199
225
172
204
177
238
166
209
158
216
208
173
167
191
182
221
205
194
219
201
234
164
200
160
109
210
214
181
183
224
249
173
194
181
257
212
208
209
232
218
222
194
214
191
126
169
207
196
240
237
192
219
130
233
161
207
251
247
159
219
190
167
154
180
190
248
217
159
183
173
177
215
210
161
196
146
238
86
203
242
234
213
209
231
198
189
198
186
237
217
223
145
181
245
234
233
176
177
238
143
193
218
251
226
214
199
186
186
251
215
160
186
205
190
189
206
217
186
231
161
164
246
145
186
141
217
162
211
211
272
241
220
175
197
214
218
197
181
224
211
164
242
177
181
184
222
189
157
266
191
257
230
201
209
193
165
162
213
183
190
209
193
219
212
220
196
279
214
155
209
213
225
218
125
144
207
182
248
209
224
211
211
223
202
233
187
209
224
196
208
221
209
175
199
159
124
252
260
238
231
187
268
221
169
213
204
171
215
146
166
207
235
173
222
239
270
197
238
236
262
155
206
144
236
242
196
166
158
197
203
212
253
209
177
172
131
199
263
229
208
218
186
206
232
219
198
295
165
223
187
278
190
223
233
226
261
126
185
191
244
201
157
248
142
168
239
245
145
154
217
173
126
229
163
202
169
204
231
134
140
193
223
241
193
223
181
205
209
199
211
188
257
117
213
182
245
269
190
229
189
277
239
201
236
173
194
235
235
172
147
246
158
221
218
182
210
217
224
124
212
171
190
191
140
240
164
151
200
162
231
179
185
196
198
145
164
208
206
153
208
261
206
243
162
156
175
144
197
184
181
179
244
221
230
227
204
178
211
240
180
211
193
245
164
133
205
198
160
251
257
269
142
167
207
174
187
242
226
274
220
164
265
112
191
215
207
242
187
208
141
183
192
230
181
203
185
218
196
235
147
198
186
237
197
215
186
177
203
189
187
278
209
181
216
249
154
190
188
228
184
255
195
204
166
243
183
159
141
232
209
222
253
218
168
162
183
218
236
215
232
172
200
246
229
227
213
230
258
264
202
241
210
190
202
141
186
158
225
267
246
180
164
245
211
165
189
142
186
157
228
213
206
191
229
217
187
174
138
242
273
139
234
227
226
126
245
159
186
247
258
195
155
227
194
201
191
168
174
168
194
221
159
156
229
141
214
206
165
224
193
179
205
216
157
193
202
179
219
212
207
172
249
201
234
230
244
162
250
259
201
230
191
225
176
241
181
222
250
272
195
205
201
153
276
186
160
209
206
180
195
206
242
254
259
214
211
191
149
186
257
225
205
217
243
247
219
225
223
233
186
146
179
220
207
198
142
164
210
179
202
168
151
187
169
200
147
164
171
172
205
246
241
193
191
271
170
181
154
212
216
211
236
224
230
186
210
163
176
189
178
231
180
190
178
164
241
160
196
214
149
197
212
154
192
230
175
141
204
195
148
195
169
194
250
224
207
188
139
201
146
98
179
214
204
230
180
218
214
217
123
217
211
195
190
180
286
185
143
219
182
176
237
220
236
164
213
178
151
196
191
190
212
233
215
192
233
198
144
241
171
132
142
251
227
208
206
253
226
206
146
245
192
218
134
176
160
139
137
246
138
129
254
179
242
183
191
211
191
217
200
252
198
210
228
209
187
254
159
196
233
202
211
133
198
217
205
190
218
140
202
232
189
217
190
243
276
237
198
213
242
185
207
164
225
237
203
184
174
201
199
126
166
182
277
184
217
196
257
167
204
152
171
178
178
123
185
114
248
171
212
222
121
168
247
248
180
226
160
185
227
219
200
241
170
148
133
263
215
217
204
245
239
194
213
191
248
253
158
223
215
156
149
165
238
182
218
193
114
221
138
179
262
150
160
192
235
188
195
215
187
200
183
227
187
198
201
186
121
174
205
142
161
205
238
133
180
239
209
255
188
172
188
216
222
240
125
164
198
236
274
210
204
166
178
212
225
239
146
163
172
203
208
241
169
246
172
194
285
245
277
207
219
218
178
198
171
222
167
221
209
247
167
161
187
191
189
203
176
222
93
235
159
117
180
230
122
215
272
169
213
251
188
230
205
288
166
188
177
158
264
173
207
215
185
122
217
260
201
178
198
220
233
239
226
240
189
183
216
210
188
197
235
173
213
169
157
213
258
118
193
154
196
188
243
234
283
206
217
259
210
264
207
173
223
219
141
247
178
236
195
203
216
237
132
221
217
204
199
221
149
158
237
191
195
244
219
219
207
180
161
150
197
242
230
209
189
146
205
179
246
220
234
205
180
187
222
239
249
59
245
264
208
247
186
253
224
244
219
221
124
222
202
194
236
159
115
211
246
178
221
140
222
180
197
243
96
216
231
185
245
245
242
191
238
178
193
177
244
210
210
204
143
169
177
130
149
208
171
264
243
214
193
204
199
219
198
175
152
194
215
188
252
111
204
195
169
125
208
221
194
239
179
181
170
169
214
215
141
236
197
255
256
204
233
188
201
194
252
177
169
251
223
137
214
223
151
215
279
198
268
180
228
167
210
209
285
186
239
177
180
239
194
198
146
188
176
145
219
187
233
213
227
207
248
168
192
258
213
212
222
208
226
185
226
203
195
213
217
245
212
157
224
176
229
213
188
208
211
166
233
209
191
192
220
174
160
177
203
196
168
198
194
227
132
208
185
219
218
233
151
165
163
164
290
199
131
254
222
210
239
239
219
213
202
204
192
171
201
284
187
135
146
232
230
168
216
188
206
171
206
200
259
186
247
226
217
220
255
217
186
149
206
229
202
137
175
228
228
202
192
227
179
261
238
208
149
197
194
241
232
208
221
190
254
144
177
229
245
167
193
131
211
243
247
185
176
186
198
233
106
158
163
187
292
191
191
232
196
253
208
160
157
202
160
145
210
225
270
209
182
223
229
219
166
256
173
160
215
193
179
178
216
251
144
200
217
234
176
181
202
202
156
234
220
144
207
209
188
190
133
171
182
205
193
192
213
254
224
180
215
204
219
170
229
192
173
273
200
182
173
213
251
182
188
178
200
146
210
202
128
235
193
205
207
169
205
228
206
233
199
168
163
200
217
143
195
193
213
232
228
173
220
169
253
163
234
234
174
198
203
145
227
225
198
182
251
199
215
221
211
254
212
140
204
228
156
179
222
209
157
210
216
210
199
222
185
144
215
192
150
258
192
229
176
194
227
204
132
238
225
171
272
235
205
190
209
148
164
215
206
186
236
183
183
234
245
243
264
219
219
171
192
127
217
220
180
233
142
159
212
268
193
215
225
187
242
253
227
168
178
194
178
220
271
199
206
197
172
125
187
164
269
191
204
242
153
170
176
197
193
207
180
135
180
219
137
181
228
129
173
236
109
205
160
196
148
212
208
241
220
179
150
266
234
202
194
242
203
222
202
159
142
171
204
159
207
205
182
249
219
235
174
191
155
244
215
204
141
187
220
178
221
147
212
159
205
197
226
218
238
169
148
258
218
256
227
201
224
157
223
235
193
242
192
241
181
234
163
231
161
199
225
245
142
180
265
233
215
204
180
130
206
234
162
161
199
140
214
183
192
209
204
163
187
164
172
126
265
227
177
238
174
222
203
190
163
123
188
162
197
213
139
187
210
161
162
223
171
167
189
147
224
222
152
138
207
181
230
199
142
196
198
241
132
182
184
178
179
212
248
197
192
226
167
189
183
200
157
182
206
242
199
246
163
180
173
232
227
168
117
236
164
110
224
152
220
164
218
171
227
200
150
211
153
150
204
181
231
194
181
217
139
214
228
158
192
168
191
218
193
197
235
159
223
254
139
283
189
209
253
139
140
194
132
125
154
210
242
136
264
183
216
158
215
201
198
211
186
214
239
208
129
178
196
172
200
251
248
197
170
255
247
225
205
175
182
184
203
214
174
160
228
187
212
212
235
155
193
222
205
244
199
259
129
226
246
165
261
201
200
216
232
194
173
221
209
243
178
181
263
202
222
196
211
221
251
130
215
171
169
186
217
206
218
201
193
180
193
182
218
202
160
209
201
188
208
224
152
193
234
237
202
229
226
206
182
203
164
185
171
212
241
209
224
201
192
187
173
239
208
203
195
197
184
185
274
262
183
109
194
160
285
151
241
213
171
159
169
202
162
192
189
211
209
180
245
221
139
231
150
197
201
234
188
232
194
258
110
247
183
211
131
241
240
176
216
254
213
171
124
223
209
209
215
164
163
191
226
243
197
188
203
185
189
210
122
227
173
198
268
210
255
199
254
246
169
177
164
183
178
174
184
229
244
173
219
224
180
172
247
205
229
252
228
225
245
237
239
251
258
195
189
241
145
238
157
214
224
172
158
253
125
170
169
231
182
179
200
200
195
184
156
142
159
237
256
167
230
224
150
163
181
160
149
203
209
171
189
216
213
195
208
134
199
176
185
203
159
173
182
136
226
205
203
173
218
194
216
221
195
199
170
250
266
187
184
186
185
162
217
211
189
233
160
198
241
214
222
202
177
182
199
208
202
182
223
228
215
198
224
112
147
189
149
234
194
280
153
137
213
196
148
151
171
160
168
164
229
224
200
155
160
214
197
180
250
229
194
194
181
180
241
208
145
226
205
212
152
270
152
215
212
196
236
188
236
241
128
174
170
175
155
179
187
219
183
161
242
155
179
196
258
155
194
185
217
195
202
152
150
254
138
212
188
205
205
223
207
226
235
193
180
247
240
303
221
225
214
168
183
219
179
185
243
235
183
202
214
223
215
204
146
158
190
164
202
215
237
220
202
131
216
174
252
182
238
214
244
202
167
201
135
199
172
201
156
217
212
205
174
138
220
219
227
222
181
190
227
265
189
179
121
256
181
236
252
209
229
168
200
176
269
244
237
195
202
217
163
207
219
202
235
254
208
202
247
248
216
248
189
241
197
189
206
163
102
183
171
204
154
176
199
211
143
157
141
151
165
217
256
204
243
209
190
189
251
154
229
166
197
143
188
233
191
162
198
191
159
209
243
216
169
200
242
190
222
218
181
204
237
158
213
181
234
168
209
210
190
203
233
131
233
208
244
190
167
126
136
228
175
159
244
159
200
165
237
215
186
215
195
209
164
209
187
232
171
252
203
173
187
183
226
189
200
205
204
159
173
212
206
123
188
192
193
154
278
230
197
207
222
212
254
239
152
236
213
221
208
204
175
250
180
212
190
205
206
126
181
205
171
183
222
206
203
230
197
206
216
201
166
208
218
236
199
242
196
204
156
186
148
213
179
170
154
196
169
206
173
185
188
286
189
172
221
134
196
137
171
215
195
213
236
204
221
181
197
201
202
204
295
141
200
245
188
167
187
219
228
175
195
227
179
202
215
237
207
182
210
199
204
190
227
179
177
191
201
225
113
177
233
254
240
156
148
204
221
173
212
171
156
205
151
250
225
221
215
246
240
229
151
190
184
214
222
255
202
233
211
226
227
220
220
269
225
180
261
265
201
235
199
193
187
162
245
193
137
168
188
221
267
235
164
216
181
160
182
178
157
230
175
233
189
190
191
161
219
151
261
237
213
222
213
216
222
215
252
227
187
144
147
245
169
222
182
220
146
178
135
178
249
219
244
157
201
211
158
175
224
228
231
147
143
235
249
202
215
168
153
192
241
180
208
196
186
197
171
144
194
224
201
123
160
183
221
222
202
201
259
155
189
187
242
163
240
195
155
232
188
138
190
173
228
174
219
176
171
223
209
219
130
271
146
223
198
233
155
196
192
207
164
173
236
259
200
222
221
232
198
178
172
210
211
250
234
182
151
216
157
201
198
207
208
219
189
222
191
223
175
242
177
206
177
208
187
227
253
198
227
212
206
191
178
157
192
198
214
158
251
205
201
190
235
216
256
182
196
243
208
153
211
250
212
147
280
225
195
193
208
227
175
171
227
193
197
229
208
216
157
209
193
228
187
260
214
176
191
273
261
248
196
196
249
170
248
207
157
213
156
207
175
200
212
201
134
202
197
195
155
207
163
224
166
170
214
189
187
233
226
191
230
191
210
244
209
216
192
178
155
197
163
232
195
242
240
244
187
187
163
197
231
215
231
208
222
231
223
184
163
248
213
248
196
204
266
215
214
223
192
199
183
226
257
201
238
242
183
161
250
139
208
184
162
148
230
194
201
212
227
216
204
193
202
272
254
247
222
193
190
121
177
166
250
189
211
197
259
176
199
226
193
203
233
265
293
214
167
169
207
260
188
228
193
168
166
224
193
180
234
205
219
219
140
217
216
196
210
208
135
186
214
220
224
216
215
231
234
207
155
189
249
279
170
167
242
206
137
179
269
239
182
178
223
211
248
187
201
170
203
98
117
232
195
179
209
255
205
163
200
217
221
208
194
192
182
235
176
189
153
246
213
187
230
163
227
210
210
205
173
239
229
254
168
241
259
202
232
176
236
244
172
171
213
211
247
230
161
204
241
194
165
200
232
209
245
182
211
137
257
207
218
228
221
233
173
270
181
225
220
215
234
138
248
254
234
219
183
188
169
141
208
208
212
205
187
207
220
208
187
197
206
170
122
203
184
177
194
209
111
146
154
212
226
166
108
230
232
191
212
121
190
187
186
209
225
199
204
220
202
218
238
157
184
248
213
220
260
177
174
204
187
179
233
157
202
245
208
159
189
199
271
226
236
178
206
284
193
154
254
220
235
201
245
246
217
209
246
219
211
104
252
224
204
202
237
196
174
218
183
194
208
124
209
225
213
175
264
208
218
196
188
212
212
239
145
138
185
247
160
217
222
195
157
153
134
119
140
193
203
168
156
162
186
223
243
170
209
215
285
193
221
152
139
160
268
221
203
152
218
221
224
216
184
262
141
149
242
164
173
172
140
207
214
179
246
237
210
210
200
186
210
168
115
156
208
199
248
146
196
191
257
228
145
235
181
159
162
169
200
196
168
189
241
211
210
182
197
178
211
255
273
168
148
213
215
180
167
220
252
243
216
189
201
186
183
168
112
289
264
195
192
212
190
173
198
181
242
188
193
180
209
191
190
137
177
179
182
233
194
145
182
226
253
202
194
161
160
172
225
230
178
164
267
152
206
190
275
223
210
199
206
212
187
172
213
204
221
213
290
203
208
161
157
212
197
175
238
239
245
160
253
203
142
154
221
137
189
203
178
174
159
184
249
152
237
166
208
160
221
172
222
221
242
195
222
239
204
240
205
178
202
172
239
234
232
211
273
211
196
170
202
228
185
206
210
179
161
210
194
182
208
207
175
225
186
238
273
171
218
234
153
122
243
134
207
192
195
228
199
214
223
210
222
248
158
252
181
245
207
201
201
162
156
216
193
185
177
176
238
196
155
211
153
193
146
216
152
229
197
173
238
215
246
203
219
124
198
214
171
194
167
216
162
233
196
190
151
147
189
123
254
217
223
218
161
260
177
258
210
181
240
170
245
204
206
218
234
224
227
199
215
132
192
182
196
210
170
148
213
187
195
196
201
173
181
165
152
178
161
205
115
217
226
186
180
240
219
157
192
241
242
193
275
131
256
259
181
176
200
234
162
216
176
171
195
257
224
254
189
193
182
207
259
151
233
304
218
189
245
216
152
192
207
214
226
177
180
225
199
196
159
222
188
141
222
194
230
211
217
251
148
178
218
215
237
205
156
171
214
213
208
229
216
214
185
181
189
148
212
147
201
222
225
234
215
196
211
146
198
182
192
226
257
273
154
233
204
266
239
202
213
146
237
175
230
178
215
186
154
198
159
189
209
219
155
229
173
170
160
208
164
212
113
199
169
203
232
178
261
223
236
245
210
255
185
239
193
126
198
263
225
238
240
208
236
185
142
196
181
139
165
184
212
234
229
195
155
170
196
200
189
159
207
181
197
205
240
227
225
211
252
234
202
242
174
212
222
205
179
195
185
223
168
162
214
132
219
180
164
135
161
187
212
217
228
206
217
178
221
194
235
182
222
233
185
209
255
171
186
193
230
184
163
225
169
233
225
206
223
182
226
224
253
260
158
164
214
176
173
231
193
226
210
195
139
147
209
214
208
202
221
198
133
187
182
210
201
239
164
220
243
210
231
144
234
251
207
239
253
215
249
234
168
207
204
223
186
179
277
199
244
223
149
113
189
170
189
213
175
163
177
184
159
245
265
192
239
182
176
218
220
198
256
160
207
242
264
193
156
212
212
171
240
201
219
247
217
197
156
219
213
154
230
232
184
204
183
210
250
219
207
147
178
157
255
196
192
143
153
202
238
184
123
189
212
225
193
247
224
215
233
259
187
148
230
193
226
205
265
237
262
146
220
193
168
158
176
159
217
174
204
126
221
176
219
220
225
221
179
201
221
205
213
226
173
226
209
243
210
222
196
268
182
163
214
196
189
170
121
184
252
156
187
193
265
197
128
179
175
178
208
179
231
246
188
164
238
233
206
213
228
212
206
264
147
172
144
217
252
193
208
152
196
178
179
152
193
240
197
162
221
213
216
173
213
214
195
250
203
192
160
191
228
279
169
189
227
170
174
221
130
197
196
243
216
158
204
201
188
214
225
163
169
188
167
151
181
197
270
140
203
217
234
154
211
205
170
166
212
233
130
212
239
218
197
239
117
192
198
156
246
216
129
202
150
201
159
120
192
147
217
203
250
215
128
222
180
216
155
225
164
231
230
186
183
168
240
192
194
229
196
198
211
204
195
167
164
219
232
156
164
234
248
180
173
215
199
200
173
195
183
131
199
241
177
228
218
198
236
195
191
250
124
170
86
222
185
218
184
171
176
199
211
196
201
220
199
192
242
193
188
233
165
206
171
194
192
146
168
241
218
246
159
166
177
159
222
234
157
237
257
252
236
265
209
172
167
239
202
230
226
158
188
226
239
141
219
212
171
189
248
228
162
151
235
223
239
173
147
178
193
223
194
144
244
170
229
225
190
221
279
219
221
226
149
198
141
228
203
220
203
214
204
238
237
256
178
204
173
192
237
143
250
204
183
216
266
208
210
259
247
162
175
214
205
199
249
230
147
171
154
185
180
222
236
216
231
214
203
194
201
138
236
244
228
164
190
215
219
190
204
233
220
229
181
184
231
261
200
212
172
170
222
182
205
257
263
226
218
161
153
157
199
173
217
187
193
140
153
247
193
178
184
234
225
180
205
182
184
175
221
158
145
175
184
208
176
142
244
235
190
175
245
141
168
200
238
170
234
128
200
189
184
212
142
228
235
182
203
192
222
207
168
179
208
173
205
240
197
201
224
149
188
239
190
199
183
143
269
202
199
168
202
109
209
155
235
175
170
134
141
220
285
185
201
163
218
221
207
178
217
258
212
203
245
200
190
250
151
161
264
183
185
253
225
224
182
181
217
144
167
200
172
171
168
228
171
240
237
213
223
158
218
253
172
248
215
166
176
197
149
231
210
203
181
244
221
207
189
195
246
240
211
189
171
205
203
177
183
235
154
162
180
189
202
247
248
262
153
152
183
160
204
148
189
192
172
225
201
145
197
124
259
204
178
209
190
239
193
166
229
184
268
188
211
268
195
183
246
148
172
160
210
166
187
186
193
178
199
218
222
206
209
241
226
179
186
160
205
269
196
218
192
151
241
225
222
149
201
180
229
180
223
229
198
199
164
218
132
157
219
191
199
217
189
164
229
214
181
208
210
189
167
220
168
186
276
212
214
202
219
138
208
220
198
209
98
196
162
225
210
218
214
191
178
223
231
240
207
214
225
198
167
224
174
225
264
232
173
198
203
185
257
113
170
249
203
185
188
211
191
193
234
195
232
158
181
202
194
210
189
170
245
100
159
211
230
225
216
122
204
161
145
199
183
240
172
189
165
210
263
254
228
217
244
121
234
183
216
203
129
251
182
208
159
239
238
168
164
200
196
175
163
187
184
193
182
253
136
200
146
180
249
167
156
168
193
134
223
179
179
145
176
196
256
169
191
188
267
233
254
184
214
213
191
202
217
242
219
204
249
207
223
233
126
217
150
247
210
245
231
181
140
225
179
173
235
222
195
252
168
221
223
234
199
178
209
221
152
176
206
178
231
203
132
266
180
181
161
225
264
213
181
152
219
233
224
208
194
252
163
250
202
218
249
183
152
213
136
217
176
243
159
226
196
175
201
158
143
234
203
224
250
202
221
256
140
200
209
215
248
170
154
212
191
233
205
222
235
182
188
241
202
193
207
211
225
272
174
175
205
270
188
197
183
178
171
192
188
173
182
220
195
178
194
236
218
198
194
235
224
201
168
188
151
230
159
233
167
209
203
198
203
168
158
195
157
228
244
219
270
204
152
203
203
186
261
117
223
225
205
193
288
195
225
266
191
101
244
206
244
142
171
211
158
215
125
201
166
178
214
168
209
160
134
194
225
194
208
212
145
187
206
155
183
235
138
202
233
227
230
243
212
231
269
222
205
176
218
207
238
178
196
239
218
175
198
211
197
228
217
197
219
257
256
174
160
241
119
237
235
207
226
207
229
186
180
196
149
161
232
216
163
155
175
240
174
159
224
149
218
163
231
218
211
169
182
211
236
235
213
169
167
206
179
207
152
159
151
288
189
198
261
164
204
193
134
192
151
228
174
203
209
216
220
185
175
206
175
265
160
202
214
176
152
227
169
180
241
212
223
157
223
122
249
171
201
245
203
173
170
204
159
219
171
188
197
207
263
190
219
202
225
194
199
233
151
161
248
157
220
174
177
192
233
170
193
168
171
175
189
197
162
243
202
212
198
154
156
144
216
214
207
197
155
194
216
230
183
212
194
192
170
160
249
161
165
153
252
172
241
212
200
156
231
174
176
156
175
210
213
267
206
254
254
215
234
138
222
202
228
244
242
212
200
214
238
123
180
181
214
256
234
154
200
171
172
159
175
200
190
214
198
233
165
196
222
177
242
180
223
229
239
174
224
228
190
197
219
212
247
189
161
197
252
243
161
248
196
160
207
210
231
170
146
249
218
160
180
178
190
191
200
206
152
192
252
218
142
255
202
205
193
177
226
204
222
243
201
192
194
212
207
254
152
212
234
153
185
252
193
240
230
224
216
193
219
170
197
255
203
214
196
223
253
136
266
154
102
214
210
201
196
215
195
177
182
244
244
199
233
180
132
178
195
238
242
164
196
233
230
143
223
133
187
232
177
175
168
155
202
205
201
199
200
267
105
152
205
201
168
205
218
176
236
177
190
226
158
221
236
244
189
211
166
169
150
200
174
222
188
203
190
245
208
141
221
170
122
211
222
163
234
242
221
197
249
235
217
198
214
155
191
153
163
233
193
201
248
178
187
166
264
240
189
174
195
158
181
158
174
127
199
181
178
153
218
199
182
191
173
164
263
180
203
163
209
253
211
167
219
212
157
189
229
197
181
224
177
166
239
178
257
250
200
168
165
156
161
182
229
257
204
202
134
253
187
171
195
178
242
138
146
181
240
173
254
177
200
188
192
179
226
146
133
193
211
144
144
190
193
232
215
170
177
257
186
199
176
170
184
223
259
143
208
143
193
184
222
207
180
241
193
162
296
153
205
247
139
194
215
210
217
179
202
188
236
208
167
176
199
218
283
163
161
175
191
201
214
212
219
205
160
262
248
197
188
176
127
150
207
168
251
281
249
188
232
209
225
194
184
184
249
198
222
246
192
194
205
235
152
235
162
223
238
195
211
188
201
232
199
221
188
184
163
141
209
226
157
211
198
132
176
181
207
231
137
204
187
236
232
195
203
251
164
207
240
163
175
229
208
156
200
240
233
217
176
152
158
202
189
147
159
248
233
189
160
189
168
208
182
198
250
184
172
225
241
212
182
231
188
236
233
172
214
198
243
202
192
206
184
229
218
249
226
152
249
189
211
212
211
233
163
292
211
182
192
182
167
227
231
161
127
238
171
227
223
247
174
245
181
213
176
211
224
173
226
185
264
154
170
254
215
232
177
187
177
154
202
247
193
221
214
176
192
243
259
250
240
200
248
215
224
212
162
214
225
228
191
212
175
214
181
113
176
172
170
144
226
204
207
234
189
202
200
177
113
130
191
217
251
213
177
171
203
180
165
272
210
258
158
264
213
239
213
172
190
177
218
220
212
226
178
233
252
257
187
243
162
237
114
221
152
129
201
213
167
224
223
208
163
167
207
254
148
221
193
219
235
177
191
246
177
211
177
202
145
222
187
193
158
141
176
190
220
181
159
177
182
214
187
199
193
181
227
177
177
188
204
161
192
254
193
251
217
213
257
226
170
260
161
197
216
193
168
148
199
180
211
222
262
201
203
148
199
205
182
190
221
150
228
211
258
194
188
223
215
209
213
120
221
180
201
240
189
180
186
218
245
190
193
173
271
173
208
174
244
185
152
181
225
227
208
213
235
222
193
167
218
194
136
231
212
166
165
123
187
155
212
205
214
280
182
247
233
176
162
255
190
140
217
176
273
189
200
241
212
145
242
189
222
282
184
266
239
231
116
154
240
249
200
178
187
174
227
198
187
226
246
223
208
205
223
244
199
130
213
234
151
192
188
174
223
209
154
208
204
189
166
218
185
228
218
253
204
263
177
107
212
186
205
228
228
236
211
130
238
218
208
187
242
183
213
232
203
158
173
189
200
175
211
253
147
168
175
200
164
188
220
214
252
263
183
237
231
218
203
273
199
242
199
255
206
165
223
248
233
218
218
261
174
192
197
225
167
188
255
192
253
181
195
148
220
250
255
243
233
223
190
261
250
149
142
177
250
237
111
208
149
240
183
186
205
192
210
227
116
215
195
248
232
210
198
168
210
186
239
214
190
135
199
162
217
159
130
185
242
186
182
195
168
220
206
246
245
205
184
106
178
130
187
220
291
184
187
248
214
196
222
246
244
204
211
198
170
175
204
214
202
244
145
197
201
224
207
245
216
187
227
230
210
247
189
223
168
212
201
174
228
204
214
200
248
160
225
199
209
240
251
210
260
202
223
196
224
205
199
179
212
247
185
184
133
246
213
219
236
185
232
187
177
179
255
172
172
157
215
153
229
185
191
165
202
175
209
198
250
152
211
238
272
155
133
229
210
186
197
244
163
259
222
223
138
224
198
233
121
189
216
203
255
262
234
176
174
169
203
205
168
217
207
214
206
209
231
223
236
213
185
142
146
177
154
266
188
157
137
177
158
209
224
246
193
152
228
175
192
147
202
256
149
163
240
185
198
193
145
207
212
176
155
155
190
212
248
226
256
192
209
184
241
225
213
217
171
196
163
270
241
180
160
224
170
218
231
214
251
198
248
219
142
251
203
178
218
225
256
237
248
194
198
137
225
246
208
225
147
229
181
202
184
228
218
196
222
197
176
214
178
241
210
198
194
184
190
215
227
95
220
232
194
179
169
211
182
145
208
221
229
142
158
219
209
222
172
201
200
251
215
236
191
164
143
225
233
214
219
222
135
168
213
211
186
210
110
187
251
185
207
137
138
181
189
210
257
212
179
172
237
206
210
188
210
165
184
184
213
203
147
183
220
220
227
263
208
218
182
217
162
201
171
208
239
183
221
208
186
208
260
215
197
186
186
223
252
183
193
197
212
229
206
128
221
204
201
204
148
224
218
227
241
136
237
172
220
234
203
225
182
179
229
165
173
127
202
236
212
113
231
219
184
176
232
166
160
232
217
159
209
167
148
196
213
224
152
222
201
230
170
226
176
198
175
181
196
208
192
168
221
222
178
182
150
221
214
227
212
169
193
206
183
160
194
143
153
236
234
127
126
208
247
245
239
224
187
211
199
253
151
189
266
171
127
128
130
178
246
225
188
192
189
130
184
149
247
214
261
191
262
195
183
186
249
162
85
169
223
219
262
212
169
199
272
187
213
224
216
174
165
244
177
186
247
176
225
192
218
130
244
198
193
168
160
199
178
191
180
218
236
281
216
184
253
122
124
171
266
264
223
216
163
195
224
231
191
213
181
233
183
209
211
191
195
196
212
233
225
158
238
163
161
180
197
180
240
178
175
207
208
177
199
144
149
234
245
205
288
238
109
197
144
227
156
190
238
206
260
185
127
159
208
200
234
205
204
240
200
160
180
239
254
160
219
203
188
245
180
203
171
166
232
174
157
212
154
197
179
265
236
203
184
257
173
210
151
208
267
217
213
177
206
260
219
218
193
185
156
198
146
198
194
207
179
218
216
113
171
151
189
170
190
272
209
220
206
201
225
169
94
158
212
212
203
228
187
195
237
290
220
209
242
257
190
242
273
201
246
142
211
216
192
243
234
193
185
193
185
152
126
228
183
243
143
210
155
230
235
192
160
212
192
198
237
172
157
228
234
258
253
154
212
183
254
183
194
181
227
193
184
125
227
216
174
192
200
198
174
203
171
179
209
163
138
231
162
211
143
139
222
177
251
196
176
198
218
221
183
211
207
179
194
242
202
185
270
283
181
214
231
158
174
223
169
212
202
149
194
164
195
181
240
218
173
247
184
190
161
202
250
227
249
244
166
192
220
212
203
180
184
219
156
235
135
228
163
193
188
182
164
243
235
274
204
248
197
225
185
177
196
179
179
177
172
163
194
166
160
209
179
201
189
214
223
129
196
170
175
212
160
197
285
235
257
186
188
203
173
269
182
183
161
204
260
169
191
153
194
247
202
130
263
189
185
183
137
172
187
190
203
199
185
208
204
183
219
155
249
192
203
204
218
232
181
230
160
174
151
273
164
147
187
229
235
181
237
238
236
186
192
157
237
201
148
181
236
175
209
243
264
184
250
223
104
277
198
215
195
219
188
250
167
178
180
237
208
265
197
230
166
195
188
213
249
201
229
159
234
180
128
246
163
192
106
252
178
222
179
158
156
223
189
177
196
269
223
239
194
226
215
149
223
163
233
204
235
196
185
231
201
185
212
172
186
211
203
236
214
171
185
173
118
223
216
222
175
194
225
183
192
146
216
232
166
240
124
206
222
135
239
242
207
165
175
205
209
188
214
211
251
220
217
224
225
224
174
192
199
232
169
229
158
222
222
173
163
156
246
185
237
178
159
144
215
201
165
240
161
174
228
210
228
170
222
210
246
179
197
262
147
170
167
146
186
217
207
214
230
186
246
163
197
206
196
194
180
178
224
152
195
214
226
177
203
232
208
163
235
225
208
155
260
209
176
238
167
242
212
233
235
208
143
222
184
222
198
195
225
216
193
215
255
197
210
110
170
230
171
205
142
235
216
133
240
220
236
248
144
230
226
152
166
229
206
215
171
281
230
136
218
167
163
135
181
239
215
128
198
192
228
152
164
129
227
210
208
251
206
214
231
263
187
188
95
167
138
168
155
187
133
166
160
127
174
225
195
169
194
208
216
204
243
195
255
217
236
174
208
219
256
158
198
189
188
171
160
223
180
241
208
236
236
260
196
165
223
189
227
249
207
207
185
192
201
202
190
152
160
174
255
177
215
164
223
184
141
259
195
201
218
153
190
246
182
216
137
228
191
200
221
154
225
218
233
204
219
252
165
104
211
177
192
207
256
164
151
236
200
181
179
258
197
234
238
180
219
230
162
253
212
274
231
238
242
174
208
175
232
183
134
190
235
173
217
251
188
152
200
205
164
256
168
239
180
222
202
196
242
211
197
183
193
187
203
189
237
233
236
186
229
220
209
217
190
228
185
203
202
179
242
158
203
173
177
205
189
193
222
210
231
203
206
160
163
207
173
199
237
173
156
239
202
187
172
184
169
180
108
240
232
218
214
139
205
213
169
185
224
222
237
166
144
233
171
153
210
179
160
102
202
205
190
131
204
220
237
217
246
225
186
180
188
204
228
172
195
216
159
205
208
198
175
217
148
197
160
203
252
211
198
189
190
158
174
246
186
226
187
212
221
161
233
180
254
199
256
268
210
215
205
206
170
209
194
176
185
240
181
172
239
135
205
160
185
156
180
222
232
209
209
241
213
115
236
205
215
131
225
195
222
203
211
222
151
216
165
205
207
172
180
190
196
237
221
184
178
154
150
178
223
225
187
193
156
217
224
172
202
194
216
160
172
190
241
244
179
237
215
217
221
173
208
226
174
178
179
150
177
250
193
190
145
209
132
197
207
238
227
140
160
234
150
194
158
280
200
169
186
180
172
195
248
138
169
180
158
200
158
160
217
186
217
231
223
202
242
210
162
216
172
176
141
216
217
173
204
207
147
227
253
186
181
183
204
227
185
204
206
208
157
165
175
182
243
114
171
184
237
209
195
153
193
237
150
127
185
185
205
214
207
222
223
147
141
167
181
221
229
180
178
229
168
207
163
167
187
207
185
195
220
180
189
149
255
174
217
206
254
188
186
186
157
224
249
206
216
181
212
162
164
175
259
222
177
147
200
164
147
213
165
206
243
195
200
151
165
160
213
220
187
176
187
238
207
185
176
215
209
216
262
203
236
111
198
203
210
156
210
204
155
196
160
173
185
269
235
213
261
180
202
188
242
185
225
167
290
215
221
180
127
195
192
237
154
179
187
226
193
191
214
214
151
176
161
186
166
204
214
177
193
215
254
156
210
247
273
219
207
247
201
125
126
192
191
174
177
211
197
202
189
217
230
210
219
224
148
167
179
179
237
188
274
221
224
268
179
209
208
179
163
216
198
200
199
150
216
193
172
236
221
136
180
190
223
250
228
193
236
165
279
227
196
239
249
164
223
186
172
149
187
213
174
175
199
200
191
218
241
222
153
157
190
217
209
248
255
155
209
235
163
203
167
151
187
174
218
174
213
214
235
160
220
192
177
164
160
239
203
189
232
203
183
158
206
238
264
136
192
233
199
234
262
212
274
197
211
189
192
218
206
139
165
169
139
183
221
232
165
177
113
241
154
216
218
164
158
227
223
187
241
167
204
239
152
168
185
171
204
271
245
198
213
190
145
212
148
217
198
204
232
164
212
200
203
199
186
185
143
164
206
162
220
177
199
154
230
263
253
235
205
184
194
230
222
256
255
222
168
210
218
186
195
172
140
224
247
137
225
167
172
174
183
196
222
216
221
285
213
258
174
195
177
244
216
205
223
182
170
146
186
188
242
226
169
226
200
202
250
164
255
198
158
197
155
204
175
248
196
243
128
122
229
152
228
258
223
171
238
219
196
201
198
259
195
211
173
206
261
267
225
207
194
153
225
199
244
211
181
160
214
160
171
212
250
201
200
171
254
233
255
211
220
179
224
182
143
179
252
142
198
227
99
203
203
149
180
141
187
199
180
208
197
263
196
218
270
250
194
231
212
211
134
202
214
211
233
229
196
191
264
217
177
250
179
245
184
223
224
240
193
199
239
222
262
219
273
184
178
199
200
245
247
193
199
225
172
171
229
190
199
226
187
257
137
236
231
214
219
240
239
201
178
227
197
271
242
143
236
165
268
197
225
178
263
199
212
220
192
210
254
217
235
240
196
232
199
142
148
160
164
227
221
147
173
223
189
180
146
179
284
241
218
185
204
193
182
209
181
239
200
189
167
207
197
221
214
171
119
215
228
178
156
269
186
190
193
228
204
233
156
142
207
239
192
196
261
211
183
253
185
169
190
137
223
200
178
169
221
154
245
246
190
202
183
153
174
204
155
182
210
172
174
137
280
253
208
190
197
232
226
169
191
186
223
141
266
177
229
138
164
196
214
220
224
216
232
233
265
185
174
191
227
264
238
244
182
219
193
206
190
206
213
170
236
166
133
186
158
239
252
168
224
194
182
184
170
176
163
208
201
181
160
191
222
237
221
181
216
227
259
180
166
205
186
191
166
165
133
224
231
182
266
204
205
240
165
205
248
161
233
237
159
181
175
161
165
168
173
230
193
159
186
293
166
173
247
226
198
177
275
165
239
191
246
184
195
175
246
195
203
243
181
177
182
203
189
145
186
183
196
170
196
192
200
179
180
143
264
198
179
209
191
196
228
179
249
225
230
236
243
285
238
205
184
193
177
201
169
203
234
121
170
226
191
230
224
235
222
171
187
197
210
204
212
117
150
159
228
160
195
278
198
186
208
245
191
144
147
233
182
137
191
170
230
151
205
226
207
219
125
127
162
155
206
240
234
180
181
197
211
194
159
220
149
209
256
203
166
193
240
199
212
184
203
156
225
202
253
197
164
189
198
182
183
203
166
284
201
205
159
214
140
276
211
186
215
191
255
175
209
182
194
169
180
191
223
237
188
208
244
191
213
224
264
214
201
183
228
187
211
194
233
206
183
206
218
183
244
263
183
198
140
175
215
193
228
196
167
220
187
262
256
215
138
222
236
218
169
242
209
250
183
223
214
265
213
183
177
118
256
185
191
255
190
157
173
161
237
202
216
190
167
209
190
133
244
209
182
176
226
148
207
201
187
208
223
219
226
184
210
184
247
219
228
160
213
234
230
219
142
171
158
241
216
191
269
178
193
177
182
238
170
236
201
181
184
116
229
210
208
121
189
180
220
217
193
221
205
200
156
203
156
241
214
198
258
268
155
185
220
163
207
146
242
212
165
200
168
188
201
221
197
183
222
220
184
243
165
225
178
185
185
168
155
236
241
215
137
177
196
213
241
233
133
218
203
160
265
191
158
217
166
240
217
192
153
216
201
257
218
212
175
163
197
188
204
170
125
241
167
247
259
200
186
169
190
239
199
167
192
263
214
229
165
239
198
174
147
200
180
251
142
186
172
132
215
174
148
206
196
163
193
155
213
221
246
201
140
248
185
200
216
202
238
209
219
232
200
282
251
205
222
219
200
191
222
238
151
196
137
195
221
189
183
152
222
219
158
226
194
145
207
216
201
223
201
168
159
211
150
226
142
179
252
230
185
216
205
311
179
196
219
205
189
118
201
207
247
247
209
120
194
200
202
174
160
162
201
226
189
234
185
219
164
175
232
201
198
132
238
189
261
160
185
114
121
191
238
241
180
208
199
228
166
218
289
176
197
184
200
185
177
219
189
219
180
219
154
218
198
168
238
165
250
198
208
197
215
210
209
243
249
184
214
206
191
202
220
146
183
216
174
185
206
257
195
132
248
138
192
200
246
203
240
221
193
206
186
217
212
205
163
198
191
236
163
235
155
214
210
211
168
188
178
185
194
173
248
258
225
147
237
231
196
231
202
238
228
133
225
212
142
195
162
227
196
201
210
198
220
213
238
231
191
204
189
215
195
152
157
176
221
287
218
197
175
168
215
170
248
208
214
208
242
188
220
205
173
158
238
165
132
144
205
213
169
155
137
212
212
182
206
198
198
230
186
181
234
224
119
216
251
200
205
244
154
265
214
224
239
207
196
200
206
109
212
248
190
171
250
225
195
199
222
253
219
215
199
194
216
197
196
124
164
217
166
212
152
221
224
252
132
213
207
254
190
127
219
216
268
168
159
184
222
255
202
244
232
212
192
206
202
185
200
175
109
223
243
200
249
185
231
242
253
189
192
149
147
158
184
232
205
187
200
170
221
247
192
185
224
208
188
194
186
187
171
185
242
224
162
189
198
174
215
243
283
173
217
191
227
226
166
199
247
243
130
257
203
201
147
155
184
238
250
196
192
197
208
197
175
206
205
159
178
222
209
187
217
155
226
247
240
209
230
147
170
226
159
211
233
193
171
258
226
192
85
152
214
289
160
184
171
209
199
211
247
226
212
196
165
212
229
207
238
180
182
179
190
209
195
179
221
195
191
173
151
183
220
205
227
156
179
207
218
186
199
196
129
205
219
209
213
235
250
245
241
143
174
180
210
184
167
232
198
164
215
214
169
180
261
161
176
176
162
251
172
208
251
239
250
193
192
114
138
230
200
202
195
203
194
205
197
141
229
238
147
206
182
175
174
185
282
265
204
185
252
233
226
208
223
202
207
193
175
191
211
277
211
209
247
185
208
169
130
186
192
199
144
182
211
186
239
178
153
262
200
170
255
262
225
167
227
186
174
217
225
203
157
168
176
205
135
194
237
233
211
187
177
231
183
136
193
129
169
230
160
146
253
215
205
182
201
180
179
206
219
256
151
181
174
201
221
195
242
198
179
239
223
202
199
168
261
250
206
239
262
198
235
153
238
228
216
207
164
178
185
189
210
188
203
171
187
235
205
176
239
266
179
217
222
202
196
191
212
198
166
153
211
241
232
177
198
172
261
185
236
201
227
182
171
209
275
237
214
248
203
215
204
254
192
199
157
227
171
200
174
159
212
191
225
181
189
169
189
242
214
210
150
194
244
241
277
226
131
257
250
232
234
221
181
194
229
212
193
182
218
262
184
239
176
165
154
204
234
196
127
148
172
181
185
174
237
189
249
262
218
164
176
240
214
219
232
224
131
132
139
235
193
209
198
158
195
175
149
239
119
214
228
188
164
193
199
225
164
236
235
227
212
226
151
217
201
250
187
180
207
136
247
236
216
244
176
169
203
183
267
224
183
200
244
171
177
210
178
225
204
197
204
241
196
191
208
150
226
241
159
166
209
211
264
131
248
181
125
149
216
223
189
204
215
217
230
263
219
209
186
198
204
179
181
142
228
225
231
213
170
214
168
211
170
194
207
202
198
218
165
187
254
215
194
226
232
223
218
202
287
185
153
249
230
161
221
174
152
190
158
208
168
172
174
232
195
210
224
127
236
230
211
163
187
164
192
223
86
253
231
185
212
197
209
154
167
240
174
180
175
164
215
181
122
216
199
241
246
197
151
208
238
241
176
253
244
204
228
226
200
260
218
177
212
191
172
191
167
179
169
241
184
260
192
142
243
261
239
150
232
151
218
287
186
163
167
196
181
179
214
218
183
265
191
222
267
172
211
196
162
179
136
171
216
210
219
137
190
222
195
198
233
216
196
248
177
226
202
214
161
152
202
210
218
253
189
202
216
173
183
237
215
220
242
187
219
229
180
266
161
165
251
172
203
192
198
215
258
172
215
212
166
208
189
197
242
212
294
181
184
250
221
238
251
205
214
183
291
278
131
232
221
176
232
249
178
136
111
197
233
163
236
209
195
223
213
185
268
211
182
173
157
203
174
194
205
189
218
180
205
165
253
246
172
274
197
186
222
158
137
279
216
196
239
202
207
215
249
267
192
156
223
252
232
194
260
134
205
206
187
215
208
169
182
167
149
175
187
177
192
174
198
204
228
220
175
208
230
188
133
170
166
150
231
158
228
140
224
191
240
150
174
180
239
143
189
198
198
143
215
158
207
170
231
186
211
235
225
223
198
199
262
226
191
172
229
214
190
220
223
175
178
227
236
218
246
230
218
213
148
260
138
167
139
242
180
168
242
208
223
223
121
197
232
180
197
168
220
135
203
197
234
215
189
294
135
138
191
171
196
233
211
154
199
224
159
216
283
241
223
176
167
214
224
221
176
204
192
206
194
229
256
209
167
113
174
188
162
228
209
189
179
187
179
149
272
191
191
215
83
195
203
170
223
189
228
178
213
202
154
142
228
218
186
193
220
295
211
199
187
151
228
223
200
170
185
186
174
194
213
233
223
206
220
182
178
224
221
216
191
262
162
210
196
158
147
211
196
190
194
160
220
208
232
248
211
232
176
255
223
124
125
224
269
156
230
143
175
203
199
219
168
189
150
222
169
205
208
245
194
170
199
193
167
165
207
188
216
230
127
217
184
179
183
235
177
169
179
211
189
189
219
163
187
275
182
261
224
228
163
230
266
159
237
223
222
187
244
224
195
181
185
165
231
181
210
148
220
183
198
154
211
176
166
147
109
220
236
168
239
174
159
206
204
199
227
167
233
195
183
191
192
134
205
226
204
169
196
178
227
172
165
191
165
198
254
225
251
173
189
248
248
167
243
209
181
183
252
188
204
131
215
136
228
161
195
218
248
179
190
112
268
208
194
189
187
226
227
231
164
187
196
256
245
187
129
184
156
218
239
216
199
217
203
196
199
203
215
217
198
178
204
185
216
153
216
143
240
226
208
257
256
182
236
215
139
193
212
215
246
150
121
214
218
199
172
188
187
125
178
220
196
255
257
172
243
197
199
158
199
159
208
259
228
217
162
214
235
256
234
199
244
111
201
211
225
234
220
153
187
210
202
258
156
158
164
193
212
147
192
141
181
214
222
194
220
229
192
170
210
169
226
172
126
222
194
201
206
174
164
231
238
266
124
212
169
238
162
188
142
199
198
194
248
199
216
260
214
191
177
185
210
254
251
192
230
198
160
204
205
163
254
198
171
256
123
199
200
192
237
248
194
185
209
180
216
164
215
211
180
216
169
223
258
204
174
232
192
181
193
239
222
139
184
174
215
228
133
233
212
224
232
149
172
172
176
155
160
156
190
207
178
208
203
182
196
130
211
172
205
180
228
213
203
226
182
228
212
192
183
186
258
156
200
199
212
177
182
182
146
219
266
242
196
188
194
231
156
144
223
245
188
175
172
180
192
177
137
162
186
217
280
226
167
193
207
221
178
223
266
156
193
184
190
240
275
213
141
161
163
235
126
225
204
178
224
174
163
231
201
195
187
223
167
201
170
215
229
198
284
196
185
209
207
245
206
219
165
180
262
186
146
244
167
204
172
233
219
169
156
254
169
203
198
187
168
196
168
142
235
197
208
214
191
204
156
240
203
223
163
215
230
228
219
243
200
173
227
238
199
201
158
284
167
251
223
242
223
193
186
219
196
192
198
186
283
231
243
228
206
206
165
199
226
244
181
194
170
223
188
191
200
257
194
215
227
226
171
251
216
260
179
173
224
167
230
222
175
232
224
246
208
150
288
179
292
162
220
227
176
222
168
208
177
202
175
201
191
208
185
207
156
193
186
122
170
207
182
195
184
185
212
239
260
242
197
220
154
191
222
204
159
179
252
205
234
234
163
151
243
201
203
261
214
205
179
205
173
162
221
242
234
164
123
289
206
207
127
154
225
248
170
217
211
105
257
194
205
205
216
238
191
191
248
171
194
217
171
233
160
211
181
233
250
143
191
178
227
145
208
195
230
115
209
224
196
147
212
227
198
196
275
114
167
191
222
217
199
166
239
232
167
228
168
246
160
257
240
241
173
152
219
194
262
170
199
227
237
159
209
206
169
201
231
177
144
182
212
166
220
187
214
206
159
236
173
213
147
190
210
197
178
191
194
193
172
181
212
160
202
166
161
187
163
232
157
166
208
218
256
149
176
211
194
195
172
245
157
129
225
186
193
230
228
234
187
208
233
221
247
215
206
219
226
199
212
198
224
268
244
181
151
207
187
255
196
180
120
191
228
181
174
211
199
246
213
149
133
185
179
194
172
230
191
190
167
228
177
185
174
139
182
224
237
173
149
187
235
125
183
262
172
200
182
211
227
220
213
185
199
225
186
244
186
186
130
215
212
240
225
194
201
200
267
199
228
184
72
156
140
231
163
146
153
235
176
195
129
196
213
222
191
228
180
176
194
185
166
190
216
268
214
218
255
196
161
239
212
230
214
205
245
116
150
246
197
210
218
183
245
197
214
168
273
196
185
262
255
305
164
183
155
245
241
257
206
173
188
162
191
224
199
186
229
178
200
209
219
214
190
112
158
203
166
283
170
187
236
184
147
233
253
149
214
232
207
261
200
271
234
180
127
193
161
195
227
202
171
238
197
258
240
236
256
230
159
144
207
163
198
214
220
212
192
189
238
229
193
182
200
210
203
235
183
239
172
180
188
185
231
201
201
181
179
204
225
187
153
191
189
146
220
155
174
154
134
209
190
272
244
199
157
163
200
172
231
212
179
170
196
209
190
191
208
126
168
180
195
190
197
239
240
170
199
230
150
176
238
225
188
194
230
204
197
246
186
187
268
235
188
202
221
214
187
207
175
202
221
216
235
249
202
198
177
201
191
232
228
198
228
196
162
215
235
223
205
173
194
195
154
209
234
232
226
185
257
211
253
204
159
189
188
162
243
222
185
239
180
193
157
218
205
191
290
162
258
215
208
163
181
192
190
240
209
222
206
246
213
181
212
166
204
184
240
178
151
212
157
137
230
208
226
231
244
200
181
207
155
173
181
207
154
196
104
136
180
222
210
232
225
171
235
172
213
164
229
194
272
205
214
228
265
208
173
186
220
203
194
216
185
198
169
199
219
247
190
197
159
171
162
199
226
181
139
215
271
208
184
202
191
214
200
259
178
185
163
225
184
211
198
215
213
236
175
226
209
268
242
221
239
196
192
167
219
220
236
230
207
207
174
252
200
193
154
216
233
172
213
200
234
175
177
216
186
217
184
174
167
204
136
276
264
205
198
142
171
206
196
154
179
190
206
159
196
249
206
149
241
148
201
219
222
111
211
205
247
196
155
206
222
181
220
209
209
193
197
168
167
198
238
184
218
241
201
157
263
188
222
225
141
207
158
230
236
178
138
216
287
261
221
163
251
181
236
147
191
209
171
194
186
261
223
188
214
190
205
191
235
204
186
143
166
167
175
213
219
249
213
239
150
193
245
247
206
172
160
195
215
162
117
216
206
255
243
203
225
199
258
198
201
118
180
175
154
141
235
127
189
210
183
183
249
196
184
196
203
204
163
200
203
218
240
185
140
273
218
166
252
133
198
198
209
174
200
237
239
164
205
164
193
185
198
152
207
180
263
177
230
222
194
189
189
203
184
188
204
161
211
194
233
188
95
188
211
210
195
146
221
167
177
227
201
230
181
177
224
216
232
190
159
194
161
224
186
162
215
184
180
188
224
215
150
166
140
207
190
173
235
148
147
232
182
216
236
241
198
207
248
136
146
201
174
213
239
178
218
164
209
291
202
151
237
246
188
187
196
172
279
217
181
199
187
235
140
203
176
181
207
125
170
212
196
189
135
173
218
197
176
182
233
150
177
193
179
220
208
208
197
218
198
216
193
213
223
252
195
148
192
148
197
182
219
224
241
203
211
190
258
157
191
242
208
221
218
187
206
211
180
159
217
191
176
211
239
222
211
248
257
138
164
180
218
203
177
210
235
200
154
131
182
205
258
178
220
214
241
206
146
214
251
206
172
194
183
215
198
202
161
199
215
134
222
154
250
221
215
235
199
161
196
198
173
195
198
186
193
270
162
151
183
187
271
228
242
180
193
157
211
255
190
207
238
184
204
188
188
200
264
190
219
223
208
170
170
200
213
202
146
212
194
224
171
221
209
150
258
206
213
181
246
239
245
226
230
223
236
146
240
139
205
223
204
256
245
191
142
190
226
181
269
211
201
224
206
260
136
192
232
204
276
205
260
225
184
229
192
147
209
210
239
147
135
220
181
209
144
132
173
190
212
258
199
192
211
249
221
154
137
241
177
206
231
194
164
181
194
151
245
223
230
206
234
189
270
166
162
202
136
261
224
230
224
247
214
222
194
191
283
220
215
171
190
159
193
247
142
266
241
166
207
273
177
203
215
229
261
211
180
205
216
153
245
198
170
181
204
204
262
249
167
269
219
217
253
169
200
246
166
247
141
194
233
195
165
155
212
278
233
201
180
193
178
166
228
208
212
233
205
237
191
224
163
249
232
211
228
223
204
197
225
225
187
225
256
265
192
179
201
186
202
242
223
250
205
244
206
270
212
194
224
241
196
178
182
204
202
251
185
260
195
235
210
156
221
231
145
184
187
196
244
183
120
156
232
159
238
185
171
247
241
247
214
254
224
236
199
252
190
94
171
202
225
158
256
199
224
238
218
163
214
188
145
251
140
204
206
189
181
174
253
187
233
201
187
303
218
225
186
179
152
225
201
178
189
221
195
189
196
206
193
181
185
156
204
198
255
202
90
255
219
259
160
185
156
187
259
164
176
186
254
272
200
240
245
196
175
158
210
184
214
203
205
224
268
230
226
192
208
240
204
209
231
273
190
192
243
186
193
165
168
234
217
219
188
195
217
202
230
191
223
161
164
216
172
187
179
197
214
215
206
164
213
177
209
218
227
248
222
204
213
173
183
198
241
158
208
209
228
196
168
127
229
179
231
233
220
243
250
263
203
230
171
186
181
218
194
284
240
206
243
222
178
214
204
258
220
126
217
145
203
217
225
216
244
276
235
182
179
169
168
231
194
198
192
210
232
242
203
172
172
160
186
146
247
183
171
183
214
175
174
204
236
255
218
252
159
223
188
215
206
193
258
236
183
181
230
183
217
174
167
209
180
153
179
226
191
220
204
194
180
194
226
234
199
243
188
203
256
203
252
180
209
132
174
161
194
211
202
140
200
285
195
244
212
192
171
170
192
232
214
206
207
183
249
178
179
182
201
196
252
204
212
213
134
198
198
184
218
178
183
211
225
187
202
231
225
144
172
245
104
192
177
200
213
218
179
199
221
179
157
173
286
206
187
186
186
251
230
194
214
179
225
270
231
211
187
202
243
233
239
145
153
186
219
163
206
202
176
168
164
172
218
180
159
200
194
170
220
167
195
188
179
212
234
210
224
245
198
164
238
266
205
221
235
180
196
204
182
156
127
239
155
214
144
202
231
197
185
166
224
179
254
182
203
140
164
190
177
222
192
239
200
257
183
229
249
172
201
191
203
185
224
206
179
203
193
187
285
218
208
150
186
263
228
252
277
190
193
201
196
193
160
153
138
169
200
234
182
187
221
235
202
248
216
197
209
212
185
222
236
181
209
206
225
201
221
204
205
185
244
149
179
269
173
194
256
234
171
177
172
211
167
242
210
222
177
164
221
178
136
201
153
165
148
115
228
198
155
163
212
236
243
236
238
164
219
258
142
224
185
236
221
125
169
225
220
226
231
248
216
250
222
154
204
155
265
188
180
252
246
207
217
272
237
191
152
187
140
227
264
179
221
187
195
207
223
157
216
191
232
192
246
276
230
183
176
208
172
221
144
140
146
210
166
216
137
175
219
144
175
193
246
106
215
236
221
231
215
191
218
230
247
209
179
153
174
170
119
233
166
182
182
178
222
227
225
239
159
171
184
197
206
167
178
151
254
217
226
246
166
140
177
142
168
238
208
173
185
228
264
161
183
240
165
203
247
197
167
279
241
194
247
233
238
197
225
250
128
177
180
239
195
182
157
214
157
189
229
240
203
179
198
226
191
175
155
201
162
264
167
226
184
188
195
238
228
224
171
219
140
172
226
191
217
236
247
199
183
135
189
211
246
216
130
197
145
133
228
177
148
211
192
271
169
190
294
177
175
153
147
207
204
207
148
179
210
180
207
194
234
229
211
218
200
235
176
202
211
245
178
152
206
204
263
202
231
266
224
155
125
189
169
249
228
222
246
199
248
214
241
183
184
225
146
207
181
199
182
244
213
188
239
193
187
168
160
193
196
226
255
171
276
196
233
201
217
213
203
187
129
206
224
113
209
176
175
243
216
204
258
198
218
210
122
263
169
168
136
244
169
160
228
189
138
191
202
263
236
158
269
129
227
193
249
181
163
126
207
138
235
170
169
188
169
142
239
171
232
186
197
171
227
185
147
149
169
160
164
179
191
236
175
162
262
169
219
203
232
147
194
177
196
176
195
226
294
172
162
160
252
213
214
236
237
196
192
201
206
162
181
190
175
152
176
206
188
213
241
239
115
269
192
171
233
205
143
151
173
167
256
189
136
228
186
171
192
194
225
181
185
208
257
208
235
208
194
204
252
209
197
178
234
227
274
196
198
214
221
175
186
192
180
182
179
227
189
174
133
170
239
231
210
222
179
216
211
221
203
222
144
151
208
192
155
205
186
137
175
128
148
230
203
232
229
169
178
190
228
248
184
192
192
186
215
161
213
179
219
257
236
199
125
142
223
243
216
137
239
147
201
162
208
207
201
195
189
111
225
192
197
159
231
228
183
214
166
238
159
179
276
245
208
132
206
242
205
127
261
168
208
250
220
230
172
189
187
191
252
181
208
248
181
242
159
136
201
219
210
202
214
120
191
250
227
210
201
201
218
179
204
173
168
185
246
255
159
186
181
228
202
194
229
203
215
233
203
231
177
252
145
183
163
193
170
226
177
174
218
230
234
184
208
247
244
163
207
223
198
265
167
203
237
195
231
186
197
188
252
227
179
238
234
206
169
189
253
214
244
217
263
217
257
196
151
223
202
136
206
185
142
185
177
196
210
187
196
221
177
122
204
174
179
224
243
201
206
208
191
203
180
205
253
207
233
197
200
183
174
166
156
162
205
126
232
150
177
184
194
208
241
208
245
217
205
215
188
215
176
214
240
186
177
99
156
233
258
158
194
212
271
225
228
229
174
183
156
226
177
200
161
187
229
255
203
164
134
162
210
145
194
230
155
193
242
258
201
236
174
148
194
216
153
219
184
129
177
191
177
230
212
204
194
220
212
189
236
216
196
190
210
194
235
215
203
145
138
192
179
135
207
203
216
197
212
237
118
149
179
211
238
214
234
261
162
222
207
211
204
216
172
211
162
194
182
184
106
191
224
209
163
218
207
218
201
250
157
200
172
224
219
159
203
177
197
252
162
184
137
224
231
159
253
205
227
225
181
163
147
125
153
132
224
213
178
243
234
247
209
185
190
238
194
151
96
192
183
205
219
217
238
202
240
186
116
171
134
195
161
173
211
190
131
196
230
187
149
140
157
169
207
192
178
203
250
194
189
178
199
203
161
209
237
139
238
230
183
232
205
237
194
191
226
187
214
135
246
217
191
202
205
170
220
222
151
241
198
204
177
228
218
222
196
233
201
184
144
200
195
206
157
246
233
160
225
236
234
205
170
140
216
159
194
235
139
170
232
182
168
201
176
197
157
189
230
160
181
182
198
212
198
153
206
148
232
187
234
262
207
196
212
228
175
232
214
114
187
170
218
201
239
240
134
145
185
220
189
143
154
132
187
242
167
205
237
186
157
255
232
170
198
197
219
177
208
162
150
179
183
230
220
180
204
209
158
181
298
192
199
209
197
202
169
205
194
194
159
190
194
205
217
180
234
119
229
190
159
208
184
256
171
219
196
183
241
192
154
205
215
151
152
213
220
152
127
236
224
136
134
188
152
189
171
203
185
182
212
164
146
181
181
243
164
178
215
170
235
231
237
191
150
157
227
207
237
185
156
221
188
223
177
165
147
233
215
220
225
281
233
203
212
155
194
172
149
165
182
182
178
269
228
182
181
244
233
235
171
245
233
158
186
169
158
194
236
158
169
226
147
188
240
216
147
210
219
173
232
173
227
198
198
197
211
238
147
202
215
260
216
123
161
236
258
179
208
220
168
150
244
172
216
226
205
171
161
178
155
195
193
177
226
195
163
204
212
198
179
191
210
205
159
142
181
134
231
170
225
188
228
186
179
174
230
194
160
213
149
170
151
195
227
249
201
204
156
189
247
170
235
265
198
213
166
221
212
237
236
192
216
142
176
181
234
197
190
183
198
147
192
128
196
175
186
204
232
234
195
191
176
241
237
232
155
219
181
130
201
171
154
216
214
159
229
120
188
232
188
179
164
147
177
233
241
207
245
182
159
194
202
211
215
171
165
232
204
208
258
237
210
160
167
192
266
201
204
186
214
162
171
218
201
166
207
202
211
212
141
154
174
136
195
244
186
208
203
184
236
198
123
235
181
172
195
227
179
186
210
207
205
215
216
201
147
232
178
216
211
167
225
188
205
200
189
165
259
167
193
207
179
203
210
203
159
224
212
189
163
251
188
162
167
239
239
224
201
192
115
156
151
182
238
234
174
204
193
185
206
218
186
219
170
172
209
232
249
211
166
213
212
262
244
182
220
206
187
190
228
176
255
218
212
202
196
206
172
211
195
185
246
205
116
226
212
223
234
221
204
233
216
242
235
205
186
193
251
160
181
215
190
178
176
198
260
183
109
162
216
180
108
196
207
207
223
192
172
201
218
258
217
141
238
237
168
224
198
156
156
193
224
229
202
160
195
161
175
116
246
240
220
219
200
223
111
188
211
170
130
216
213
223
226
184
180
235
184
243
209
160
231
225
219
216
117
148
178
164
206
219
259
206
217
174
200
174
183
197
201
166
233
192
213
167
174
221
192
137
229
186
188
208
230
151
221
180
208
220
218
207
159
186
174
183
270
173
209
202
152
202
170
200
120
270
218
232
191
147
176
216
240
242
179
258
174
208
199
213
148
219
178
236
222
203
247
204
236
165
161
157
116
234
193
188
239
212
195
213
150
157
194
236
232
183
230
222
234
195
213
173
183
203
125
193
227
174
167
233
262
168
163
267
168
180
255
214
184
152
188
147
79
181
263
216
193
172
278
137
245
203
168
198
243
109
161
246
197
214
193
227
173
184
270
172
224
213
186
169
217
230
151
155
214
218
173
245
222
234
192
170
175
186
207
168
207
238
206
224
243
187
193
217
200
231
182
158
199
186
172
243
225
239
134
272
232
195
190
189
208
270
208
194
204
197
215
250
245
190
200
204
181
184
223
186
145
216
165
237
220
210
159
248
201
167
201
140
165
163
253
187
153
209
196
172
193
189
254
202
164
191
162
249
209
161
215
181
224
194
215
217
221
153
127
257
228
217
196
228
173
220
181
190
220
222
253
183
245
168
189
278
189
236
158
141
197
203
182
219
213
234
234
225
204
193
219
155
164
218
154
241
203
175
244
142
240
236
234
161
231
190
181
172
237
186
220
225
264
213
126
252
140
233
206
183
169
217
228
191
246
214
226
201
162
189
154
161
217
232
247
185
194
194
156
220
220
187
225
137
268
202
159
214
200
205
214
217
134
225
230
209
234
283
131
156
195
211
166
207
182
192
228
174
251
223
172
204
238
166
259
137
221
158
246
231
180
125
170
150
222
191
159
235
238
193
224
209
156
167
239
174
214
163
180
210
206
225
217
145
146
223
241
161
242
143
159
172
222
216
191
180
230
172
200
176
181
206
242
173
208
193
185
156
196
211
163
173
197
185
178
206
214
250
124
200
181
176
238
233
214
163
243
179
136
218
154
172
160
254
100
221
222
200
237
271
226
170
184
182
200
190
204
214
209
237
188
209
190
125
140
241
182
183
171
155
142
174
211
192
185
185
236
205
248
152
166
255
153
174
157
197
196
207
225
163
300
219
270
204
201
175
175
132
176
237
200
153
190
212
194
120
242
231
158
213
184
150
108
256
170
184
202
164
149
246
239
175
196
211
221
182
230
224
230
192
218
219
234
232
142
189
210
180
257
206
180
226
193
175
239
168
231
265
225
196
198
134
181
252
213
133
126
212
234
228
205
188
198
205
168
149
219
202
223
189
176
187
194
239
232
203
229
196
199
263
162
169
198
144
216
153
273
175
240
222
192
221
207
214
168
174
225
275
161
180
205
222
243
212
138
260
251
271
242
226
195
246
216
163
185
288
178
170
137
200
208
241
197
182
210
223
193
234
222
223
258
202
239
170
191
202
118
169
202
154
211
218
205
241
183
275
186
184
230
198
164
107
192
242
151
178
188
247
160
192
223
213
250
162
185
180
181
170
176
188
218
140
250
201
173
211
261
214
169
182
212
161
229
223
232
251
181
204
191
172
266
159
216
234
226
185
221
200
166
242
193
190
192
229
228
187
218
198
249
185
151
206
209
165
202
148
160
201
201
190
164
261
203
217
187
151
170
249
211
229
170
223
193
193
194
188
240
188
199
257
173
172
165
194
244
245
187
169
207
108
212
162
177
158
206
216
222
240
158
226
184
191
230
165
209
235
192
208
199
218
178
188
211
191
186
236
277
180
273
260
184
211
236
159
216
225
210
185
216
176
165
168
205
148
195
223
173
201
293
218
185
272
200
149
213
155
216
219
253
263
205
227
236
186
157
189
172
263
189
192
244
182
249
225
210
203
226
247
228
197
239
194
227
162
121
222
205
140
260
258
190
229
221
177
169
238
170
149
162
191
190
128
138
183
202
195
175
145
216
207
166
228
162
168
172
146
203
186
164
189
169
222
149
137
237
187
216
217
199
172
174
209
161
219
205
157
231
194
200
225
152
202
229
168
230
134
205
243
238
132
174
201
174
223
173
244
257
176
231
205
229
223
251
270
167
212
154
210
193
199
157
200
230
154
168
209
230
235
205
118
183
182
194
209
186
184
175
230
223
198
191
207
139
184
204
153
202
197
179
207
183
166
227
196
194
167
190
232
259
202
234
196
178
163
216
194
233
203
235
192
168
207
228
214
186
235
256
203
192
238
199
150
146
225
200
154
160
175
212
123
215
207
262
157
170
196
186
185
177
206
193
201
216
231
156
225
246
143
121
201
178
239
176
169
226
257
238
202
220
219
158
181
178
215
165
193
164
201
185
181
194
164
246
140
253
212
177
245
241
161
228
198
168
261
232
172
209
166
156
212
200
219
227
193
227
90
249
133
212
277
220
251
114
192
296
199
216
201
161
199
216
149
252
173
217
199
191
154
179
178
222
237
188
199
211
260
242
180
201
178
183
184
198
248
221
257
178
256
224
120
141
232
222
170
162
191
175
175
155
150
240
250
168
198
199
137
190
198
213
161
172
214
175
210
148
228
190
216
167
231
134
206
237
205
228
183
233
248
279
165
239
265
200
197
194
218
255
218
195
110
219
238
178
193
185
204
167
169
154
230
168
198
142
219
150
194
218
229
187
266
196
159
289
204
234
147
159
222
168
242
273
124
208
186
216
202
200
220
172
238
210
163
257
128
191
240
241
158
144
216
259
197
127
192
195
178
202
193
220
188
210
235
223
215
195
138
248
177
157
164
211
118
223
185
249
182
242
187
259
242
162
225
183
236
175
217
198
222
235
245
211
241
145
181
129
221
239
212
242
182
209
241
182
189
223
192
140
231
212
239
177
167
178
151
242
188
262
183
254
212
296
127
186
177
158
137
144
200
137
186
209
174
163
144
242
188
188
251
187
155
208
200
190
275
194
166
215
181
195
191
210
208
211
223
176
220
196
176
215
206
179
166
202
137
170
149
220
199
155
176
177
180
192
222
203
183
171
174
185
184
204
215
203
184
247
235
171
226
222
165
197
215
248
181
157
205
107
215
199
167
211
197
243
188
151
181
203
200
217
220
199
239
204
226
222
188
205
253
201
124
210
239
204
150
215
213
207
229
163
230
194
128
201
147
220
184
158
150
210
202
185
189
152
157
201
194
184
218
243
209
144
167
177
258
205
202
206
191
193
238
262
253
264
195
243
131
178
146
228
208
183
215
210
214
134
204
184
191
204
150
192
205
149
228
158
223
229
224
167
175
207
231
215
248
144
126
230
208
199
250
190
147
194
193
193
214
181
133
200
156
252
218
268
236
199
142
187
213
219
172
204
170
161
236
164
171
176
163
178
158
157
204
192
151
114
211
222
156
181
210
161
116
172
163
219
221
171
174
115
181
195
185
214
196
165
210
190
248
221
219
213
172
192
209
187
217
171
214
203
215
175
149
211
229
195
173
191
186
238
165
162
187
252
174
176
183
158
151
258
201
189
223
208
231
198
161
266
223
254
185
182
186
171
168
217
213
148
175
213
189
260
170
172
189
247
203
160
198
120
246
201
123
203
170
225
204
201
187
207
174
142
231
169
212
222
133
232
215
152
206
222
235
144
228
192
279
207
145
271
252
175
130
200
187
164
198
155
195
197
188
158
224
217
235
205
244
160
243
216
168
162
214
216
200
158
215
190
173
243
177
178
236
195
204
190
143
187
153
261
195
199
222
206
209
226
188
209
214
234
150
219
235
133
260
191
213
218
184
193
88
203
224
244
214
176
231
210
251
263
177
225
173
168
195
252
172
240
198
182
162
186
175
155
232
230
192
247
132
202
189
245
231
246
180
181
197
167
183
313
196
239
182
155
197
222
219
248
213
204
263
210
266
178
219
168
195
173
170
226
210
206
208
212
238
234
147
251
157
201
234
256
253
206
201
185
220
240
112
243
175
207
213
189
205
172
220
157
245
178
282
181
207
243
177
183
190
202
201
181
232
235
233
200
232
262
181
238
227
220
158
215
188
227
213
195
222
187
248
210
257
194
220
187
194
183
229
183
184
223
101
204
174
196
264
225
207
266
264
204
169
140
218
245
211
209
233
195
188
126
204
193
239
210
195
208
224
208
148
235
218
178
228
146
235
228
169
241
193
191
215
253
204
243
221
166
144
154
208
168
238
229
247
172
187
200
201
198
198
243
220
120
154
264
139
170
226
199
196
178
262
232
202
202
214
172
169
191
224
174
224
193
188
146
195
211
236
190
159
225
234
140
184
234
219
175
188
117
247
202
188
187
143
189
208
247
235
190
166
123
190
219
247
161
177
180
140
203
182
248
225
210
241
152
158
186
252
233
203
187
194
243
173
147
234
212
235
185
221
217
143
177
170
235
162
174
221
156
141
253
221
207
197
177
170
198
256
213
171
241
165
174
170
225
184
234
196
247
216
227
201
160
205
177
145
276
250
185
186
213
186
217
205
178
208
201
242
205
248
204
219
216
223
207
209
180
172
197
216
200
178
275
213
192
209
220
125
184
179
167
188
251
133
162
199
127
188
212
175
167
225
160
187
218
179
165
181
251
203
122
258
241
181
244
220
209
177
201
170
220
218
184
175
203
207
232
178
211
199
171
203
187
232
151
199
232
205
238
205
173
198
180
192
202
250
216
134
210
211
139
186
234
237
202
212
186
230
218
189
229
169
214
166
184
159
210
200
204
185
154
133
234
223
258
233
161
216
205
250
183
181
220
231
168
224
222
187
118
246
211
178
215
254
159
155
218
215
176
244
174
244
267
163
175
241
218
216
195
125
218
209
198
192
195
243
230
225
223
193
218
220
207
245
184
139
182
206
194
173
203
164
236
215
250
175
182
173
203
166
107
228
141
225
174
204
243
254
180
179
187
154
172
220
228
195
208
199
201
179
204
190
112
228
172
187
222
235
207
194
217
201
217
273
184
179
191
209
160
199
165
169
223
193
208
186
201
166
172
204
214
216
186
196
218
193
218
232
189
249
205
155
169
172
172
245
198
143
240
162
175
164
172
271
239
144
199
203
259
164
191
195
195
145
207
173
192
145
166
162
181
199
220
214
227
223
262
219
160
202
191
181
184
185
196
221
237
208
156
204
147
213
154
216
208
234
185
159
170
264
191
168
186
202
207
202
176
242
213
236
208
221
205
144
206
202
215
275
167
224
174
175
180
238
252
268
159
178
173
244
165
203
170
242
244
197
232
213
128
204
227
186
194
210
174
215
199
155
196
213
178
170
184
240
260
195
166
201
206
186
225
180
159
309
207
211
195
204
254
194
218
192
231
195
253
233
208
199
233
138
207
180
256
214
198
203
176
198
235
166
170
213
207
231
156
201
191
290
189
206
214
189
197
146
206
214
207
135
183
181
255
209
154
213
245
132
223
223
149
177
166
184
183
189
200
272
246
154
168
225
186
233
247
224
198
229
218
166
194
259
165
213
195
203
207
249
204
232
210
163
158
242
214
181
218
190
230
228
212
199
199
137
242
217
195
164
162
216
202
169
197
153
98
215
159
172
238
183
235
227
140
228
175
144
148
166
227
195
145
189
246
227
187
203
229
199
214
227
198
215
305
278
199
209
189
175
205
228
185
156
228
197
231
189
169
210
260
160
200
238
215
203
188
170
133
209
179
253
196
139
226
195
172
149
233
241
221
191
209
176
127
174
200
223
169
233
224
222
102
170
173
211
214
187
238
206
128
217
198
210
173
265
179
199
241
252
199
194
221
268
182
168
203
166
174
170
186
223
200
198
180
189
162
231
236
241
247
189
212
224
231
192
157
225
177
186
106
214
181
245
231
238
173
184
220
167
198
252
242
149
159
162
226
243
199
221
229
176
251
235
239
199
230
169
212
195
233
218
261
212
201
188
188
175
254
223
220
177
196
265
200
224
246
208
235
188
168
192
167
181
166
228
190
185
162
175
233
181
240
211
165
182
175
242
219
174
181
177
211
202
205
184
196
221
213
196
222
213
134
185
191
235
217
211
235
215
215
165
164
177
180
199
178
206
150
199
156
230
176
156
191
247
220
192
179
150
230
218
227
186
194
160
198
170
175
184
240
261
167
207
245
184
180
154
177
162
141
208
205
297
190
240
250
134
177
160
203
192
139
185
179
253
231
212
194
215
242
207
265
222
232
197
213
226
231
243
166
236
148
250
194
197
182
226
211
219
233
206
175
226
212
214
222
211
242
72
210
221
203
245
236
187
168
179
222
194
249
222
252
129
239
193
189
178
206
168
199
254
163
242
226
183
220
223
173
201
240
162
209
225
124
274
184
154
167
209
153
227
203
219
154
159
170
159
235
192
203
197
209
163
119
177
216
207
198
252
233
224
214
244
225
191
199
203
221
171
172
176
272
203
254
175
286
153
222
148
167
224
166
188
282
196
149
165
211
200
276
188
208
158
219
216
216
141
193
185
201
175
280
185
234
229
223
220
177
264
199
218
182
175
133
175
195
191
146
196
165
146
171
231
247
198
255
166
244
247
214
231
215
248
254
228
186
188
236
201
243
191
203
211
183
238
164
174
174
205
195
228
219
231
168
133
165
230
212
198
197
283
155
217
248
229
185
162
180
206
187
215
170
198
174
182
169
171
209
202
227
231
211
239
189
275
176
220
207
195
207
133
223
225
200
182
183
185
177
169
247
222
221
232
207
203
216
230
135
226
201
188
178
228
221
172
224
227
154
197
188
236
211
171
218
220
214
203
145
145
209
171
240
188
163
191
277
220
265
244
174
223
157
218
176
235
236
153
165
155
176
231
244
168
197
241
186
234
207
199
263
185
187
238
216
233
221
249
211
170
207
190
207
240
142
150
180
222
218
210
206
229
268
236
181
230
199
169
198
200
198
237
166
181
187
256
218
105
212
173
235
208
110
196
252
170
120
177
247
188
293
202
184
175
169
142
194
177
267
212
242
203
209
159
188
236
205
205
161
211
196
179
174
144
140
196
223
213
155
138
185
224
184
229
269
203
191
182
204
221
141
219
173
179
172
227
161
166
176
197
164
152
187
207
222
168
205
171
226
207
146
216
191
163
203
188
244
204
229
218
241
229
202
153
229
173
145
194
213
243
202
180
187
190
223
183
208
158
168
203
214
226
198
189
157
171
241
260
246
190
193
171
214
191
146
239
204
228
241
166
210
176
218
170
198
209
195
200
255
204
212
215
183
201
228
227
222
216
144
147
223
211
177
207
160
181
171
173
195
180
177
195
181
206
185
199
211
206
202
211
166
201
173
272
201
211
212
236
154
157
206
176
199
248
232
138
191
156
231
191
244
199
178
211
164
230
164
204
208
238
230
291
193
132
204
161
205
164
211
182
197
210
209
170
255
215
206
101
204
232
204
180
219
203
215
199
183
161
163
171
171
167
252
219
226
179
216
198
227
244
211
219
203
237
229
186
193
222
261
172
217
185
198
188
275
217
166
182
250
230
155
195
179
241
210
185
247
181
175
202
166
185
246
225
225
215
218
194
238
197
193
238
187
193
202
153
124
179
174
237
243
216
166
226
237
242
229
243
179
222
175
187
187
193
211
268
223
196
166
157
215
213
216
169
163
173
188
192
160
150
210
218
175
236
150
140
212
187
302
204
178
216
233
186
126
210
197
184
222
239
193
203
176
191
235
238
166
190
176
217
173
161
212
213
260
233
228
214
142
251
194
202
177
232
202
203
171
214
215
194
224
171
174
196
169
247
213
212
251
223
188
268
207
185
177
233
216
203
240
241
261
201
147
198
233
149
211
198
237
208
241
253
250
169
163
251
190
235
183
191
160
224
206
215
189
127
214
173
243
164
214
222
193
159
225
260
232
210
139
261
157
201
188
232
197
195
147
209
221
245
197
215
181
80
188
257
200
193
185
212
191
135
142
215
213
205
212
202
210
185
251
174
257
177
181
190
170
195
170
233
199
279
232
244
177
246
209
175
147
231
216
223
166
211
161
174
196
160
201
128
209
208
187
227
110
241
230
147
200
218
252
232
151
264
196
188
234
215
115
191
212
200
180
183
192
261
200
186
160
152
199
114
233
139
245
200
160
200
121
181
207
128
205
173
156
174
235
202
203
157
223
167
151
199
181
219
152
194
191
205
173
219
273
215
222
205
217
206
212
218
154
202
183
134
229
211
182
230
246
195
246
172
183
261
226
211
174
237
225
170
237
209
219
206
205
212
148
165
188
233
130
215
204
176
197
127
224
247
196
207
165
168
174
151
169
172
183
224
180
220
151
208
221
202
266
215
230
214
215
159
246
223
167
141
254
151
238
190
108
188
217
206
202
202
168
182
238
247
238
184
215
240
217
199
169
153
187
236
174
206
208
258
191
217
255
151
150
148
234
153
152
169
148
282
222
119
168
154
164
159
178
153
186
197
278
226
220
221
238
122
213
171
223
252
183
211
140
132
187
131
213
226
216
198
219
276
227
192
206
226
212
205
263
248
211
175
234
218
191
147
175
207
223
210
232
220
240
224
243
153
213
191
196
133
213
204
177
218
206
203
176
207
160
189
243
253
179
241
163
204
176
177
281
223
204
225
239
189
203
226
221
151
198
257
211
160
187
211
193
213
141
258
221
170
186
191
223
171
205
218
221
175
203
143
218
169
207
230
185
162
179
251
247
204
192
171
196
200
193
229
142
250
174
186
161
215
191
204
181
189
164
183
162
269
247
170
239
148
127
191
179
188
248
245
178
245
192
234
172
186
197
146
216
259
214
166
186
206
159
241
274
211
234
221
206
211
222
168
184
204
211
215
221
173
219
184
227
207
222
168
228
148
239
201
294
143
195
202
227
162
239
196
185
203
270
224
213
246
222
211
177
190
261
127
226
195
132
205
199
197
192
206
255
214
161
190
227
163
221
179
265
227
263
259
158
127
200
212
210
196
240
201
229
208
198
199
210
248
235
199
201
212
157
220
205
249
140
269
204
240
190
184
192
203
231
165
200
140
252
140
212
246
183
210
184
185
188
172
241
238
218
205
218
172
190
199
206
149
164
256
221
197
238
172
221
252
267
206
217
187
212
187
197
227
222
220
205
159
239
163
193
205
146
211
257
245
221
219
153
180
222
180
157
196
209
224
208
201
233
226
255
199
223
220
219
205
184
176
240
203
191
219
177
189
195
182
227
168
223
152
186
135
149
213
183
172
236
194
191
173
195
223
173
167
232
182
165
182
213
245
213
198
232
251
212
228
187
183
191
132
240
171
214
166
206
177
246
189
204
213
246
187
230
175
147
153
148
220
168
137
223
247
216
179
242
232
218
180
193
265
236
233
195
189
236
232
229
187
216
175
265
161
161
129
183
216
183
122
174
236
165
228
172
171
143
222
186
220
153
197
166
207
211
201
265
218
148
196
166
216
226
237
160
230
192
240
157
120
224
288
219
175
172
222
154
174
176
225
142
189
217
211
174
160
224
169
178
160
173
230
223
256
161
225
160
212
169
156
268
165
196
205
220
225
225
211
275
174
181
150
233
167
205
193
180
227
186
212
168
226
182
251
169
240
194
233
198
158
182
192
225
269
252
189
178
209
171
205
212
165
175
195
233
246
215
190
191
241
191
183
207
150
186
261
215
202
170
178
240
198
152
194
195
252
193
218
223
240
174
226
231
167
172
138
158
207
208
255
170
163
243
260
177
201
205
176
195
237
206
176
245
217
202
191
183
219
135
266
203
246
187
200
213
253
184
233
204
201
169
230
165
186
211
164
185
228
179
184
240
195
251
204
234
156
235
227
165
182
190
271
136
215
216
215
193
185
252
213
135
175
213
201
202
176
160
239
144
228
167
179
194
138
219
213
219
240
218
172
145
198
199
183
219
246
208
207
258
145
189
281
129
227
216
242
180
245
191
223
178
220
152
172
230
207
153
227
187
145
158
164
240
182
166
190
273
212
188
191
242
210
235
230
187
216
194
269
206
224
177
163
223
187
211
267
239
246
225
185
182
239
183
178
252
181
234
131
214
152
186
176
209
267
212
240
164
138
200
187
195
120
233
185
150
212
123
180
172
220
234
193
171
253
209
173
165
152
216
188
226
226
230
200
211
211
211
205
215
184
220
186
157
239
293
213
264
127
159
262
196
200
152
263
213
223
142
194
167
161
111
222
172
165
239
244
178
196
184
189
164
229
208
190
213
239
219
251
192
205
279
168
212
226
185
143
234
180
226
178
188
192
122
203
210
170
184
193
248
223
224
240
246
195
151
235
142
209
250
206
204
249
184
216
268
232
202
194
194
248
198
208
159
271
215
233
246
240
171
192
190
247
168
200
177
161
213
236
128
190
189
210
233
178
231
196
238
171
178
223
188
119
216
145
204
165
247
186
271
234
208
191
197
151
131
198
186
227
254
229
227
119
190
196
206
201
207
180
139
152
195
223
198
205
192
214
211
222
209
240
209
247
167
245
188
201
216
122
157
223
191
220
126
175
246
231
191
172
177
177
235
265
196
163
176
191
189
190
163
200
213
213
223
206
195
183
185
179
192
233
225
247
148
213
240
175
132
229
177
269
187
220
219
202
246
191
175
153
234
204
174
249
185
197
184
253
200
190
142
168
213
214
180
192
131
209
226
194
223
186
192
228
209
215
193
237
138
266
234
221
212
214
193
194
194
141
223
204
220
185
241
243
194
190
266
200
205
287
209
147
220
214
246
191
208
212
232
191
156
198
249
200
211
147
205
257
230
168
269
257
252
182
173
194
174
178
199
188
169
225
225
206
162
188
152
160
256
245
174
231
231
152
226
253
231
123
224
254
208
211
165
269
161
239
200
215
246
236
139
225
173
168
174
221
243
201
178
237
250
177
209
148
206
211
124
160
237
232
175
190
234
212
170
199
197
234
163
205
188
207
219
224
240
171
219
238
260
154
269
243
186
204
172
206
145
220
209
183
245
242
175
193
156
134
274
238
152
150
199
186
184
120
172
171
186
211
164
262
176
209
250
303
210
245
219
233
214
190
217
216
195
251
205
182
158
172
244
244
215
218
172
168
207
168
203
136
199
135
212
164
242
263
192
240
161
181
172
163
222
168
206
189
204
195
183
245
202
239
257
219
167
130
162
189
275
141
178
209
247
201
222
252
93
195
246
238
200
104
191
186
151
193
213
207
214
185
228
133
215
208
175
176
233
243
165
203
212
160
200
171
245
230
182
185
174
119
202
231
208
210
195
179
223
202
174
153
216
233
220
238
200
201
217
215
148
218
187
197
118
181
204
158
226
202
168
275
200
179
210
186
200
250
195
233
203
205
241
254
272
189
158
188
161
240
271
155
191
238
205
240
227
223
212
205
257
181
196
244
171
232
204
199
228
192
186
182
198
180
217
185
220
213
175
138
184
193
198
246
168
190
192
205
240
152
178
213
218
151
213
164
144
216
199
151
189
177
227
178
237
203
238
213
225
191
230
253
234
206
198
165
205
166
185
164
212
263
138
179
131
208
206
210
192
206
205
181
100
250
205
233
248
211
215
188
171
250
205
153
202
207
177
187
157
204
196
169
216
230
199
167
200
197
171
193
194
261
184
158
219
160
206
206
250
211
180
185
194
216
132
179
205
233
145
174
155
224
155
184
183
173
252
196
227
211
198
173
225
170
207
254
203
206
155
111
276
171
243
232
172
187
118
174
184
224
110
213
238
182
171
160
171
189
209
225
148
153
147
157
189
228
191
171
160
187
210
173
211
242
241
225
165
163
184
284
228
204
216
159
203
173
253
217
202
179
210
203
147
142
166
202
231
214
173
236
180
199
208
183
185
175
235
181
179
257
130
216
268
235
213
183
239
240
211
228
165
162
177
182
249
204
150
220
188
204
170
203
245
204
224
170
174
195
211
251
209
258
269
212
211
162
251
253
214
215
175
214
200
217
170
189
217
201
151
142
205
225
197
171
204
234
185
201
170
193
193
190
179
156
169
228
195
204
196
215
265
190
170
179
138
209
160
215
176
178
238
176
196
250
194
194
210
183
194
168
191
237
213
211
141
222
218
190
178
259
227
218
189
272
178
184
280
187
151
189
148
164
114
163
185
233
178
208
177
214
240
197
230
178
141
221
208
252
189
217
175
235
167
168
238
205
184
231
198
253
126
197
225
198
209
133
188
200
182
138
237
257
216
202
218
183
151
211
240
222
241
207
175
155
197
208
189
207
213
193
192
162
244
233
217
209
255
171
203
188
170
255
192
110
231
260
224
184
210
211
195
204
238
185
259
204
178
231
235
203
228
154
131
187
235
236
250
148
244
159
208
216
144
241
177
194
182
240
235
206
193
258
237
200
193
175
260
148
208
165
210
205
233
193
159
239
185
246
210
175
161
189
213
167
186
197
146
147
163
189
197
158
198
230
182
212
230
186
200
215
198
224
181
171
234
177
229
169
222
196
183
259
200
243
154
241
170
214
194
224
131
215
236
242
178
182
202
221
206
238
165
222
233
137
190
202
269
209
188
227
142
241
146
180
181
155
194
164
212
186
239
217
218
224
198
271
202
193
179
231
229
301
201
185
185
177
195
215
225
237
177
157
203
185
139
224
217
206
237
186
269
206
277
117
216
178
202
196
224
85
193
208
131
231
221
250
165
178
183
163
206
198
217
211
214
246
237
227
163
194
196
245
197
207
230
249
242
240
210
263
253
195
176
196
164
174
201
256
198
176
214
208
257
181
237
231
158
186
189
201
206
142
223
194
186
176
208
288
220
218
182
212
183
231
233
205
223
145
182
205
199
233
178
215
182
197
200
161
208
230
208
168
235
169
208
184
228
202
185
210
179
259
181
220
215
177
239
189
197
138
183
189
143
208
226
185
171
159
211
199
175
182
165
201
255
254
197
256
161
160
192
158
203
235
202
173
160
225
205
204
214
212
160
216
189
199
215
144
149
197
172
195
188
207
143
163
217
130
292
155
222
234
216
167
229
229
225
190
144
181
244
178
211
218
237
205
226
177
196
225
161
174
227
193
197
167
128
175
152
219
241
244
227
170
259
234
253
155
216
233
253
228
173
163
165
264
144
219
137
225
164
180
183
236
180
173
210
176
175
230
197
276
242
227
191
196
248
206
198
266
135
172
254
191
138
152
226
199
162
175
246
226
236
191
206
239
202
160
125
185
164
239
168
257
206
252
175
190
209
205
190
226
198
183
220
222
225
175
217
165
198
212
197
230
163
184
248
228
225
215
201
241
203
205
187
216
192
272
207
184
179
205
223
175
164
213
193
213
205
233
177
176
236
229
169
225
239
237
192
151
207
188
200
200
134
165
177
163
188
225
180
244
170
172
221
196
161
254
152
229
190
167
244
149
156
196
177
228
176
192
231
196
145
180
281
210
194
203
153
186
238
179
199
124
223
215
182
256
194
237
196
237
216
124
208
252
257
178
179
223
228
220
229
210
195
170
176
165
210
227
192
233
187
231
253
220
169
150
156
234
185
166
192
212
185
244
111
201
200
197
193
286
185
215
170
222
212
165
192
212
155
252
161
200
163
223
197
208
207
138
177
244
203
183
201
209
227
130
216
210
249
211
138
225
172
191
166
236
138
254
215
167
211
163
169
237
181
208
209
233
245
215
187
186
132
213
128
238
166
211
248
265
168
163
241
225
219
189
155
198
221
211
265
223
195
158
192
168
188
171
217
177
199
164
207
250
212
175
165
198
208
175
170
235
216
180
181
268
216
250
232
117
174
151
214
163
185
145
193
171
219
228
189
203
192
253
169
225
211
203
191
154
216
176
142
211
153
215
250
214
182
164
185
272
168
190
143
206
190
223
249
192
212
186
219
174
234
137
210
266
222
211
197
220
124
152
206
248
116
183
173
193
151
186
138
167
177
188
145
236
239
163
202
136
242
96
211
217
230
182
129
198
177
214
146
265
199
185
264
177
146
179
229
198
186
215
170
165
253
193
212
190
216
220
143
194
195
208
230
169
204
182
219
150
224
132
201
244
166
236
169
216
159
221
240
259
174
252
147
210
201
208
231
238
199
215
198
215
181
122
231
250
148
217
161
113
215
198
231
149
224
216
154
201
150
194
222
174
121
155
223
152
152
203
209
204
188
230
240
146
205
223
167
290
154
186
162
203
241
192
117
234
231
185
214
260
217
238
208
230
196
253
169
197
229
189
206
176
228
250
147
236
231
225
225
120
236
205
231
227
213
236
155
176
262
180
235
166
207
188
165
235
272
216
197
218
247
247
220
175
127
191
135
270
166
164
259
195
161
209
118
224
165
187
226
225
191
128
232
198
224
140
197
202
167
185
100
169
230
175
142
191
199
202
210
209
208
217
224
190
225
199
246
211
197
226
177
146
184
186
178
175
198
210
218
201
207
215
220
198
228
138
243
151
179
211
233
196
194
227
200
224
214
171
202
193
226
212
238
196
258
203
233
234
235
191
209
163
225
190
161
176
246
238
262
164
176
189
208
187
164
222
219
167
212
217
219
207
280
190
193
243
223
231
179
212
162
204
227
176
220
206
137
191
183
187
248
212
210
199
181
241
200
177
191
240
206
213
188
192
185
184
225
221
169
201
223
207
143
136
271
229
213
193
200
219
229
164
194
123
158
225
220
187
204
209
128
153
254
271
230
222
234
184
248
210
191
169
193
210
203
218
163
197
156
215
163
179
221
253
135
243
255
145
202
174
184
223
207
185
160
173
185
209
192
199
234
215
188
161
200
200
146
225
210
188
195
181
110
237
131
139
210
212
189
163
192
192
133
135
209
248
205
201
179
182
140
238
207
196
115
180
189
152
201
201
234
252
272
171
143
212
141
246
177
118
216
196
133
235
229
153
193
263
194
200
240
248
178
243
180
231
185
171
214
158
186
185
182
191
216
236
205
181
213
215
242
166
172
253
177
142
186
181
162
208
247
195
248
247
175
235
199
184
213
223
142
212
180
180
239
129
232
258
223
122
194
222
197
224
242
192
194
240
190
217
171
202
265
210
252
170
171
211
192
195
247
163
155
207
178
147
162
169
194
238
247
127
179
171
221
171
196
204
194
206
274
211
176
242
201
204
219
224
253
114
217
253
122
222
201
163
174
238
207
195
244
220
188
191
210
206
225
167
209
213
174
187
186
160
209
207
190
212
259
208
229
221
195
173
253
252
223
221
157
241
226
272
181
255
172
219
158
171
191
208
91
184
216
143
175
212
184
213
186
234
274
215
237
187
228
228
275
214
207
241
153
219
191
221
207
240
183
221
189
212
145
234
148
196
223
221
224
175
198
207
139
204
178
177
231
212
195
162
147
163
156
230
146
181
202
222
171
239
236
234
163
197
210
239
170
188
209
207
228
233
190
139
186
195
205
183
195
197
212
202
178
226
202
115
184
227
188
252
209
237
165
150
214
134
224
195
250
233
115
145
177
190
152
201
207
175
249
186
217
210
182
136
161
203
157
164
224
206
186
238
222
177
222
256
187
233
193
204
242
150
256
117
220
137
260
218
309
146
219
162
243
177
215
190
230
258
226
205
249
205
244
224
208
184
199
199
183
166
194
220
213
154
152
277
239
197
125
142
182
179
187
222
203
174
224
189
115
200
255
206
159
272
206
189
202
232
152
215
241
171
193
175
235
149
135
189
222
190
181
200
247
230
184
163
193
239
198
191
155
240
143
181
146
178
247
227
199
223
176
190
192
172
236
269
191
215
222
223
184
176
196
187
241
148
226
225
148
238
244
251
216
178
176
195
183
205
210
189
192
190
182
199
201
177
209
162
230
249
198
167
202
226
185
191
195
210
235
155
217
129
214
145
243
215
170
147
218
204
209
259
194
146
211
159
225
207
201
197
233
204
242
157
240
242
217
188
246
219
188
153
190
234
185
204
152
254
163
197
191
109
171
250
243
261
240
235
196
220
183
227
144
193
262
183
183
262
162
256
178
258
182
188
202
155
220
165
189
196
119
219
160
200
249
155
153
202
182
210
183
159
224
225
210
138
160
203
158
235
140
213
192
179
152
255
170
209
228
115
253
204
197
211
163
197
195
176
210
157
207
233
208
147
268
152
205
236
257
181
171
225
228
200
161
201
168
219
188
248
221
189
188
205
195
239
244
120
267
192
195
166
173
199
184
247
202
202
218
205
224
203
205
236
220
227
187
235
202
238
215
221
217
211
154
191
156
179
220
187
140
165
207
228
212
209
249
255
213
271
169
182
220
175
244
178
185
197
209
193
223
225
218
162
131
239
183
221
180
116
153
199
140
235
231
230
90
213
195
169
236
207
221
189
156
135
242
194
196
207
167
166
262
253
186
199
175
237
187
230
227
210
158
225
239
229
204
218
183
206
209
208
187
189
214
220
188
196
258
171
209
154
241
183
206
175
246
198
185
186
171
232
187
202
227
156
249
202
198
205
309
238
225
223
172
238
238
236
150
173
178
159
242
243
226
189
195
180
203
246
251
172
210
126
220
193
194
231
153
147
197
237
214
238
205
227
222
152
212
271
134
232
204
198
198
254
211
202
217
229
173
229
195
223
158
167
95
191
231
241
236
189
221
234
261
223
196
236
146
183
161
212
199
173
183
238
187
185
240
195
269
193
153
195
188
188
188
174
162
212
136
175
176
210
197
212
231
165
201
168
201
260
238
217
133
150
223
230
223
147
227
183
233
174
150
244
212
233
220
221
210
167
222
189
222
212
177
177
133
192
242
164
169
209
217
231
193
199
230
230
197
164
156
233
163
171
234
112
206
163
275
236
222
234
225
170
202
168
216
171
215
244
172
245
277
231
185
192
202
246
127
184
234
173
238
241
229
247
159
214
260
208
238
198
165
204
227
244
226
190
241
232
253
247
207
250
139
185
180
196
189
181
238
207
170
216
255
243
241
221
287
222
199
184
201
212
204
221
210
232
197
171
238
207
220
219
157
166
273
204
176
168
213
197
208
218
189
210
202
162
199
190
169
194
216
181
266
230
173
229
188
185
158
173
152
155
232
218
232
225
173
158
220
184
240
266
179
184
185
231
208
190
167
139
168
214
244
195
168
179
182
197
215
201
214
192
174
187
164
225
240
250
166
197
219
206
203
192
144
174
201
228
165
174
253
215
192
240
224
283
215
227
233
192
223
175
231
192
215
190
182
168
236
204
205
207
197
167
219
154
175
215
209
223
174
242
185
214
187
230
199
263
276
190
209
263
286
216
174
195
143
182
200
118
196
165
188
191
188
161
220
208
169
228
171
293
177
199
242
170
151
157
219
204
148
190
197
159
178
269
235
195
253
194
178
197
238
270
209
182
188
245
185
190
229
149
232
159
224
245
218
223
247
237
228
204
205
225
211
179
221
117
214
221
233
163
206
166
232
169
178
211
203
210
192
176
241
242
226
229
183
286
270
209
148
133
214
264
175
250
251
210
162
214
242
197
245
239
204
262
171
209
211
226
226
151
178
273
214
223
234
169
219
214
223
185
258
251
159
230
198
163
218
190
205
188
207
222
185
189
217
223
223
232
205
147
210
214
225
182
160
183
259
273
126
205
184
217
226
119
206
215
268
223
196
177
229
191
202
151
197
175
241
187
184
207
204
251
278
133
181
220
147
208
221
180
143
185
191
213
196
221
196
203
150
191
214
198
175
209
228
183
241
228
102
238
195
154
168
250
162
222
144
236
153
190
217
156
215
264
229
233
161
200
128
150
229
247
241
250
184
221
189
241
278
223
164
208
238
157
189
144
175
166
189
167
165
219
209
253
228
179
205
212
146
183
162
202
170
228
156
110
227
221
227
213
178
170
201
278
150
220
186
163
219
242
176
169
165
208
194
276
213
184
192
221
214
188
191
249
230
169
219
220
224
164
175
157
166
144
221
178
174
215
176
183
192
190
221
259
194
201
202
198
210
216
172
196
222
267
247
197
181
185
161
247
140
232
209
220
142
197
242
195
189
212
170
157
227
146
210
219
185
166
199
214
196
193
217
201
158
162
217
234
188
255
206
171
162
180
232
174
217
226
190
187
173
161
282
174
170
175
185
143
211
175
224
208
242
220
190
158
211
183
217
206
201
171
236
231
206
220
270
197
200
209
229
202
131
230
192
234
182
213
203
151
206
192
171
237
209
206
198
225
224
212
203
226
223
157
165
147
216
172
240
182
160
194
210
199
223
231
187
138
186
145
191
209
259
291
207
170
158
249
190
206
177
216
231
173
225
179
192
183
227
146
189
252
218
259
169
238
159
221
185
224
196
170
181
192
196
205
181
185
180
169
179
152
242
198
188
170
303
200
202
188
214
220
212
189
204
204
204
195
230
149
226
258
274
217
189
234
234
153
213
234
174
228
117
150
232
254
227
178
218
207
178
155
246
226
197
170
218
189
190
262
199
225
127
186
230
138
231
212
215
213
223
175
206
181
128
156
189
201
192
220
195
207
210
192
236
220
204
117
162
200
205
166
247
204
227
227
219
205
164
216
210
230
199
175
122
175
208
241
223
179
196
190
231
180
184
229
207
203
179
179
155
161
264
150
206
153
220
213
159
168
169
251
181
198
219
200
155
199
194
218
192
183
212
187
180
172
180
225
271
187
250
110
187
189
202
193
174
182
155
188
169
200
211
212
217
222
125
203
171
224
195
231
180
264
181
212
226
204
171
250
203
228
193
237
226
222
187
247
231
235
221
214
208
257
269
140
233
232
185
194
220
167
235
265
199
138
252
242
242
244
181
161
208
199
138
206
258
174
183
200
159
230
260
254
175
178
232
219
180
197
194
232
176
138
222
140
224
213
222
174
218
228
182
239
194
207
198
244
198
169
201
178
149
207
207
231
209
230
152
168
230
214
142
205
192
231
196
211
147
203
179
169
215
150
222
204
242
197
150
227
181
183
228
194
227
147
225
204
166
218
170
229
180
196
136
239
164
186
218
183
273
190
187
237
222
174
215
290
170
257
196
155
146
229
205
226
179
227
220
207
210
194
227
187
197
143
135
181
219
191
170
237
209
159
140
151
225
192
232
177
234
207
291
250
202
196
177
192
194
180
215
239
225
209
169
199
175
265
162
187
175
199
194
253
213
201
133
243
166
198
160
138
200
208
203
163
135
206
228
226
141
173
175
164
198
146
159
223
190
197
187
173
185
225
259
201
189
223
224
220
248
215
167
224
146
224
200
180
178
203
217
246
199
214
190
195
107
184
217
233
254
176
191
266
191
126
158
216
216
241
179
226
169
132
209
173
248
192
224
131
171
185
240
206
179
166
231
204
268
182
184
226
201
133
208
223
158
194
185
268
190
190
133
134
202
229
176
237
214
186
188
182
163
193
175
214
204
267
219
120
187
264
210
176
197
243
261
206
213
179
146
178
266
173
212
166
132
206
189
179
222
243
196
178
176
224
146
234
229
196
180
139
212
236
197
239
256
154
214
196
199
210
198
145
253
172
170
240
176
205
203
195
180
251
204
238
203
187
190
196
118
240
225
131
209
213
272
152
240
202
187
207
173
178
211
186
223
198
234
177
127
232
203
182
239
145
153
186
207
211
249
239
180
191
182
189
200
192
187
219
215
163
174
188
187
154
177
190
244
208
219
161
175
183
192
212
166
186
150
170
153
207
216
199
252
236
210
250
181
244
244
183
208
217
208
178
183
213
192
201
213
211
186
252
208
198
201
204
147
173
228
194
179
236
223
175
149
245
128
222
222
127
234
174
175
166
202
165
229
170
199
224
243
188
201
187
193
195
190
232
238
204
193
204
191
229
173
244
195
171
211
225
211
197
231
237
212
209
179
258
233
222
209
217
173
243
239
196
155
248
247
200
191
143
218
165
248
238
216
214
208
208
168
200
172
221
246
213
243
223
203
137
200
225
204
256
156
221
195
240
270
258
225
221
187
172
183
153
156
166
211
200
178
169
227
184
242
225
172
171
140
168
157
258
181
184
178
175
242
258
250
175
138
153
167
169
216
183
208
200
285
228
254
216
184
210
155
224
230
214
274
192
183
259
189
237
219
242
204
193
247
169
275
193
205
200
206
205
193
187
217
237
221
213
244
184
179
179
265
210
205
262
230
160
227
246
215
134
251
193
230
197
223
200
201
210
196
172
251
237
187
192
102
196
232
177
214
223
204
255
201
168
187
198
204
192
150
227
214
197
132
210
250
196
193
187
202
177
187
195
126
220
225
190
247
163
117
192
163
193
242
219
228
182
219
178
195
186
174
226
178
194
228
162
215
228
251
210
212
192
166
227
188
141
180
220
205
184
156
166
195
143
178
201
171
146
256
189
201
226
173
195
156
222
213
217
239
209
243
175
199
301
242
185
178
217
185
137
226
178
215
200
202
247
210
216
241
231
194
161
240
220
159
154
205
262
181
185
149
187
176
181
225
249
245
202
196
235
181
283
156
179
158
222
198
177
223
204
242
219
238
159
160
219
195
157
251
235
141
231
210
121
189
247
247
159
174
200
207
243
202
144
215
215
181
153
152
214
257
173
191
215
212
219
150
218
201
190
198
241
141
155
201
167
230
156
239
205
249
206
207
204
200
188
145
217
189
204
252
185
136
246
137
238
188
218
162
144
266
246
159
169
222
200
213
240
208
200
181
141
232
171
182
166
171
223
183
150
181
197
212
204
189
205
209
211
208
145
196
274
185
238
190
179
210
238
230
245
148
209
170
131
235
180
166
143
232
201
182
203
212
203
196
214
180
189
210
238
207
203
199
223
161
249
235
216
187
202
201
170
167
231
239
195
207
156
222
164
233
189
250
174
156
208
225
229
182
233
215
173
226
224
229
272
152
233
200
172
164
192
186
244
180
249
205
217
210
188
232
184
236
175
193
260
187
202
205
183
295
212
192
231
179
146
235
169
190
239
192
213
218
197
190
153
254
266
170
218
209
167
223
256
150
153
122
217
230
230
165
213
166
213
175
242
237
160
167
241
201
197
144
187
216
183
203
158
243
224
228
132
232
265
206
196
197
183
187
228
211
217
177
204
211
220
202
194
173
172
220
200
131
130
186
232
167
200
167
202
215
133
143
237
228
173
220
217
174
204
222
166
168
175
188
189
219
189
199
235
247
234
215
255
250
223
235
154
240
189
215
181
204
243
214
232
203
217
187
220
134
215
153
171
104
203
198
200
207
180
191
159
221
165
210
256
181
207
180
195
178
167
255
231
202
192
233
266
251
226
194
186
146
235
211
155
197
234
236
240
197
191
229
176
193
198
203
135
239
246
180
176
260
158
232
164
208
211
207
154
200
181
147
256
163
246
191
214
224
239
212
216
163
186
241
186
197
179
163
192
171
141
148
152
219
177
273
215
240
237
271
214
194
139
201
214
209
212
218
208
206
229
241
187
230
213
195
202
249
147
210
187
160
127
191
172
187
193
232
166
212
140
155
166
215
192
175
193
209
178
194
201
238
136
137
160
174
240
176
219
219
271
199
229
200
193
181
171
216
220
172
179
190
195
190
162
217
200
178
231
187
188
177
186
226
188
185
161
206
196
138
192
154
178
235
240
175
175
179
238
190
197
239
211
130
182
223
228
200
234
176
193
240
203
217
252
199
141
178
163
163
191
208
174
196
171
205
236
166
197
143
239
152
227
287
200
214
195
251
123
216
177
186
234
179
154
161
209
228
221
226
181
210
222
252
229
289
200
197
181
188
233
236
190
251
214
231
211
190
195
235
222
258
242
116
217
248
205
181
192
223
202
172
227
267
220
205
195
200
199
260
218
193
213
218
197
149
199
211
200
171
215
133
196
185
220
124
210
163
244
186
246
229
180
251
198
209
242
210
245
192
265
212
208
213
184
186
237
158
198
228
178
201
196
174
190
205
186
200
171
216
155
142
195
167
210
263
217
212
203
164
166
174
242
194
209
204
179
230
177
252
198
219
224
165
213
223
186
231
238
166
208
232
162
192
221
187
171
183
170
216
216
213
196
161
219
205
272
173
195
254
244
228
198
154
231
254
182
230
190
118
197
115
120
193
179
245
184
199
154
235
225
170
213
220
203
186
243
224
134
193
155
195
211
198
198
242
184
149
220
148
188
222
222
234
152
206
207
208
177
231
204
255
229
225
177
138
227
195
257
236
225
146
231
219
167
176
181
219
255
240
181
215
130
223
211
113
217
211
216
240
217
222
177
229
236
194
171
206
210
194
168
126
209
245
196
254
197
140
225
214
212
160
200
207
237
242
216
166
177
237
197
225
224
243
209
212
183
234
180
158
137
218
225
247
223
225
186
202
190
244
213
238
174
146
191
225
256
198
262
231
175
163
205
222
255
162
138
247
211
190
177
252
287
236
196
182
193
215
158
205
162
248
195
158
246
194
247
181
145
200
170
205
228
227
158
251
223
185
166
219
215
208
244
130
224
228
157
196
220
167
238
184
176
155
220
217
176
145
211
164
201
209
172
234
200
237
139
195
191
224
215
200
242
144
253
232
195
190
181
239
196
208
210
262
171
211
197
203
196
228
184
131
144
170
178
137
191
194
142
125
136
179
195
158
146
190
223
174
175
219
194
183
218
278
204
190
175
146
232
216
163
222
215
115
165
252
216
231
207
202
177
156
181
212
227
190
253
151
212
174
211
142
179
151
217
190
178
278
210
201
209
226
111
210
157
175
230
145
224
137
253
236
199
180
212
208
167
191
230
193
204
133
191
209
219
210
200
135
160
184
215
192
268
240
160
138
196
132
211
195
209
162
148
96
185
152
221
187
203
215
186
242
195
158
246
148
238
245
227
225
228
147
234
211
219
245
190
124
229
221
274
254
175
243
207
176
205
211
195
146
197
189
198
156
141
232
227
135
216
184
207
218
231
203
192
167
158
190
200
195
185
234
221
151
192
166
207
253
190
158
166
214
195
239
169
197
236
140
268
195
231
255
224
271
210
169
143
195
245
218
227
153
242
181
175
226
194
214
240
188
167
245
189
187
260
195
190
177
154
175
119
158
179
207
249
180
264
143
170
216
211
226
170
197
212
209
249
230
148
165
239
184
209
183
215
229
209
171
209
237
198
232
218
164
223
212
177
160
232
176
237
183
251
202
235
226
249
188
194
213
219
168
202
175
195
233
197
210
169
209
224
213
252
262
222
188
277
172
243
212
145
175
239
229
147
254
204
184
199
239
197
199
185
201
174
153
227
230
179
209
180
193
239
253
226
157
144
159
162
250
246
187
162
234
210
225
202
261
186
204
225
198
178
168
218
232
216
109
158
203
198
265
203
225
258
146
204
223
212
133
209
206
270
182
233
230
188
230
233
197
198
227
196
211
122
154
214
235
207
119
153
162
215
281
155
201
181
179
239
196
197
167
237
187
157
170
186
250
166
143
164
122
205
251
179
255
205
177
236
207
185
191
176
168
214
203
270
214
251
228
227
245
232
183
208
174
217
220
268
219
229
209
186
192
161
184
273
249
276
237
141
238
197
245
199
271
157
191
267
170
156
186
222
179
291
234
236
167
208
136
237
162
219
165
230
233
210
193
171
235
175
197
187
247
207
137
275
145
194
173
203
147
212
212
191
231
220
167
227
200
193
214
219
179
153
263
142
169
270
250
194
191
138
182
197
216
269
200
185
234
161
180
182
198
193
241
180
145
192
162
147
175
226
198
222
181
248
198
190
172
232
173
162
214
208
253
210
173
184
96
244
221
179
136
214
246
183
277
168
195
149
199
227
156
215
185
264
210
192
242
184
189
267
225
173
213
208
164
191
188
203
175
270
163
226
169
197
140
207
183
141
134
241
207
143
188
209
237
216
210
235
148
156
207
183
202
161
213
221
217
178
204
225
196
250
194
196
271
268
201
211
263
230
149
142
214
165
196
124
197
197
203
173
204
202
212
212
188
245
176
198
195
224
213
215
245
156
195
206
151
274
151
180
124
191
254
145
190
236
203
224
223
189
204
208
221
207
193
215
136
201
261
215
206
215
192
261
157
225
198
197
194
232
144
160
166
172
208
156
241
133
227
218
176
229
190
236
181
208
200
174
220
175
220
208
131
147
198
216
227
243
196
159
182
251
190
190
175
238
190
181
214
156
212
200
216
120
182
217
231
188
164
218
193
168
229
193
202
243
228
142
197
221
195
297
181
150
204
167
196
136
124
261
139
214
209
215
166
168
226
217
165
143
175
151
198
140
195
219
200
139
200
193
181
222
218
136
200
263
149
188
163
159
228
194
189
150
276
163
231
199
167
223
263
241
230
225
153
156
245
203
206
179
141
205
239
204
163
153
210
200
239
142
242
239
184
189
216
198
201
189
242
207
220
190
165
216
221
233
195
213
169
218
214
206
211
227
204
119
218
138
239
249
239
224
240
205
220
209
140
226
258
152
163
203
235
230
161
227
155
223
217
225
237
187
253
208
253
247
223
172
236
227
164
225
203
204
179
250
258
200
183
149
183
225
230
189
206
250
201
172
209
230
244
214
226
141
250
215
216
196
176
235
192
190
211
228
130
145
245
230
109
228
235
210
174
228
190
224
234
181
182
192
138
181
133
211
226
191
231
184
220
216
216
138
194
248
186
200
182
219
175
164
202
218
254
182
219
238
213
214
216
196
179
216
221
155
213
230
188
171
188
204
222
204
143
229
222
242
181
208
233
237
241
214
148
187
162
208
168
179
167
158
196
174
134
239
201
134
206
262
207
225
161
241
196
178
148
204
213
186
254
224
217
181
205
130
179
168
171
208
196
220
194
201
263
136
184
161
214
209
230
157
198
201
230
182
203
147
239
198
176
177
186
264
177
133
205
201
188
214
220
189
225
243
259
255
183
168
166
183
173
166
242
152
185
189
219
214
172
211
174
247
221
204
195
253
249
136
212
185
211
177
146
191
232
252
210
261
234
239
245
223
198
190
241
164
163
184
234
195
178
221
209
219
234
198
123
193
185
205
248
277
167
206
167
206
198
163
239
153
202
166
266
210
201
176
171
220
219
207
220
195
197
216
227
173
177
171
250
251
225
222
157
210
195
158
217
192
133
183
227
167
206
188
154
209
181
224
165
209
153
160
207
168
127
248
182
189
174
216
221
177
223
200
224
201
204
236
122
231
219
228
143
200
255
213
176
192
194
213
200
273
226
191
170
220
179
182
184
196
174
180
160
221
196
147
195
196
139
182
208
188
165
216
226
218
212
192
235
204
193
259
204
202
235
232
222
182
226
237
179
183
199
205
222
129
181
173
213
188
162
211
191
231
217
199
252
240
212
180
209
207
187
155
241
214
174
241
244
185
208
216
184
195
228
180
266
215
193
213
205
199
181
222
174
163
206
169
204
224
206
209
245
202
167
161
239
180
164
234
201
248
199
235
247
248
180
124
181
188
210
160
224
242
162
190
183
193
246
153
216
221
208
226
225
203
158
200
210
198
251
175
222
227
179
209
201
238
206
207
241
192
206
251
144
164
140
165
155
140
208
253
201
138
216
199
200
204
213
197
188
162
173
198
137
193
227
219
236
168
206
166
169
133
210
233
235
225
183
187
221
183
237
224
152
231
170
194
209
185
152
200
177
195
264
213
146
234
186
248
174
177
216
217
131
183
210
178
175
234
196
201
255
209
187
204
227
167
195
185
226
181
171
197
210
228
212
200
200
182
193
198
229
242
208
168
204
235
185
222
228
231
166
193
206
250
181
198
170
178
150
177
202
211
212
211
257
160
175
199
194
218
191
177
160
253
165
198
173
230
168
218
251
203
208
208
186
228
196
187
211
186
155
236
222
210
216
116
197
204
207
245
200
201
227
194
228
276
196
134
230
142
251
222
174
217
171
191
223
191
234
203
183
228
185
148
237
223
200
222
167
174
203
185
190
231
246
131
178
184
98
242
175
163
198
257
188
203
210
229
168
204
206
159
242
189
264
180
158
140
111
231
211
205
224
145
206
263
184
208
185
177
207
167
220
191
232
205
240
231
182
176
166
158
235
167
255
174
243
207
191
146
185
240
215
237
150
225
265
160
197
198
229
231
204
195
186
208
168
196
195
177
223
251
218
151
220
239
203
213
134
207
266
141
187
231
236
148
171
179
196
125
152
219
199
173
188
199
152
206
193
153
256
190
205
150
249
263
174
225
225
143
238
257
146
179
219
143
243
212
194
187
209
195
171
209
146
186
164
217
253
183
145
153
237
209
181
184
206
199
211
194
198
185
248
228
212
188
221
281
189
227
271
233
217
207
244
241
222
172
150
192
253
205
276
141
193
182
222
189
169
210
257
226
197
181
235
231
239
183
186
159
193
225
162
204
214
198
241
138
256
205
258
236
185
161
216
202
230
172
183
253
255
201
248
165
138
243
188
195
147
228
128
223
198
172
274
167
218
235
246
216
259
225
199
134
206
225
207
193
256
221
252
182
218
221
227
211
254
168
201
248
171
200
195
194
240
233
213
119
182
222
248
199
218
208
159
210
170
192
200
165
162
189
182
212
170
192
271
211
200
208
188
200
253
189
172
233
148
213
203
250
243
176
234
241
251
169
177
207
221
163
181
223
204
139
220
184
195
215
186
181
179
150
219
243
223
134
241
239
175
226
202
245
150
248
231
234
218
216
177
247
273
107
271
154
190
228
238
225
219
242
192
164
204
189
186
195
232
217
278
158
255
173
218
184
204
206
248
184
213
134
235
184
257
252
163
235
190
212
173
274
179
190
230
243
221
159
223
184
215
196
198
164
146
232
234
180
181
211
211
165
217
191
202
198
219
253
239
208
163
218
169
219
215
181
169
214
240
165
224
214
193
292
220
188
230
215
230
257
194
217
251
213
195
210
224
197
208
180
221
207
261
199
173
187
171
276
202
194
242
159
236
164
147
126
180
195
141
207
170
168
173
190
174
278
239
175
243
225
199
145
113
211
206
251
202
253
188
236
188
191
171
216
207
212
182
169
226
236
196
226
170
201
194
216
164
275
174
246
208
193
276
262
172
192
164
220
221
193
176
176
211
153
227
171
158
242
162
237
238
163
220
234
216
150
158
160
231
206
251
260
247
230
180
167
208
200
250
176
232
158
194
262
223
219
168
141
207
200
224
217
214
244
256
196
254
205
216
154
292
225
145
185
190
200
171
223
191
198
200
264
201
220
193
173
218
189
263
173
215
179
257
261
228
203
230
242
188
200
249
209
184
237
181
190
187
216
226
216
191
206
152
182
202
273
157
191
193
164
143
176
217
236
220
207
259
199
170
171
214
241
197
266
232
161
185
224
172
156
223
149
228
237
210
159
241
191
172
224
211
214
212
152
185
169
150
209
188
252
193
169
100
174
211
210
170
125
188
229
253
182
166
172
209
261
233
244
170
238
138
190
202
185
276
145
188
206
181
207
227
164
239
226
122
255
245
200
203
149
169
246
238
145
190
165
164
179
214
277
234
209
262
193
204
201
196
178
242
220
208
209
283
221
239
219
147
229
205
216
122
143
193
188
192
169
210
263
225
254
199
175
252
216
202
206
167
229
207
221
215
200
220
229
250
244
176
266
188
153
197
207
173
219
252
221
174
144
164
232
225
234
208
174
246
187
197
161
193
199
220
222
204
215
191
173
240
209
165
136
223
193
209
176
228
231
135
172
212
179
104
196
265
217
193
169
144
219
249
287
173
244
176
253
175
137
206
254
211
178
231
244
242
207
147
219
146
195
151
202
247
201
174
176
215
245
199
208
177
174
206
269
167
194
201
148
189
241
245
244
213
214
121
143
229
215
238
207
185
152
188
182
188
247
192
216
156
177
224
227
218
160
161
278
207
160
246
178
172
232
204
192
216
159
162
163
175
182
223
181
220
191
186
178
203
152
196
205
186
230
148
215
203
224
236
218
182
197
198
132
240
157
193
170
185
212
212
227
157
205
192
142
162
174
233
170
257
192
203
237
241
241
214
211
199
118
221
230
198
162
225
187
262
134
177
167
217
224
228
211
192
239
143
169
150
236
174
187
197
246
154
240
258
238
237
172
173
230
188
147
234
127
203
178
186
171
191
191
256
163
169
276
218
226
216
233
151
156
242
203
173
217
169
233
225
164
153
164
183
251
200
159
194
220
146
192
175
149
152
226
237
101
242
189
233
170
244
190
239
180
182
229
213
217
200
170
176
204
224
194
181
216
150
236
184
227
201
207
243
169
203
204
137
235
249
222
235
228
160
207
167
176
169
190
221
242
220
204
140
237
134
218
134
204
186
171
180
167
165
203
251
194
198
149
203
179
235
213
267
195
215
236
241
212
225
120
237
166
224
158
197
243
237
202
146
114
197
178
133
250
167
241
193
209
239
198
194
170
178
212
233
155
187
215
207
134
179
263
226
168
215
214
174
182
194
193
185
260
196
253
204
167
205
214
200
222
141
217
207
204
250
211
166
205
153
173
193
171
212
141
197
202
173
221
157
205
193
163
216
145
213
175
118
236
180
246
233
174
216
182
246
229
164
204
242
214
186
246
241
199
186
274
182
253
221
214
204
167
222
180
258
234
184
216
211
201
238
121
203
216
160
232
182
239
196
205
191
200
197
172
268
219
196
162
153
183
201
185
222
208
228
231
204
190
192
191
177
200
146
218
180
229
180
227
203
203
201
188
249
246
250
221
200
190
240
165
204
171
173
184
172
199
169
183
245
265
190
166
216
223
192
247
187
251
177
237
174
225
188
180
196
238
187
215
165
217
180
236
191
206
177
147
217
230
214
211
196
264
265
232
145
215
188
167
194
269
201
175
169
209
244
170
260
220
230
218
186
200
209
187
260
198
214
168
196
165
124
209
249
215
211
186
242
213
185
213
202
217
252
180
205
108
203
137
158
185
233
149
191
185
214
198
258
226
200
184
179
196
197
225
157
216
230
166
207
173
161
195
273
235
217
169
231
147
194
233
159
197
221
189
147
187
122
206
209
203
255
164
225
219
165
231
167
264
205
262
185
125
194
204
191
137
174
224
207
196
240
219
176
252
170
202
168
140
237
157
181
131
162
230
175
277
183
185
185
225
179
223
159
223
202
152
201
228
192
213
308
202
238
150
241
191
241
190
187
226
188
189
194
179
202
154
188
235
211
187
201
188
238
171
145
189
237
240
189
238
225
165
186
203
213
250
206
225
165
268
257
184
141
182
190
169
216
184
227
182
188
217
237
240
191
208
187
280
203
186
152
229
229
214
166
231
170
221
143
209
220
228
264
188
243
219
259
152
228
118
195
231
135
176
173
214
265
169
250
218
173
230
203
215
203
138
232
166
275
192
199
151
215
153
247
227
213
199
190
216
210
190
231
235
247
184
209
209
227
181
181
227
174
243
152
224
176
183
171
225
100
271
202
206
217
253
180
192
192
193
201
272
174
200
195
198
209
192
252
226
178
200
223
207
222
188
240
174
182
203
207
119
241
177
226
175
218
127
204
154
224
238
155
207
233
242
188
180
157
205
186
209
168
190
236
191
196
182
224
239
203
180
186
154
194
175
224
221
187
197
232
138
196
237
154
237
234
176
230
258
212
294
164
192
223
201
275
227
210
177
171
163
189
155
144
245
245
220
152
173
204
130
181
178
198
198
178
194
244
227
208
171
205
224
200
170
226
246
235
165
194
191
200
224
209
219
177
215
175
178
256
231
215
215
236
191
235
183
191
172
211
195
238
224
209
207
166
199
204
212
209
153
258
210
237
257
178
163
224
223
210
174
161
258
156
240
148
176
219
246
172
194
223
189
207
175
206
196
131
123
153
177
249
150
149
203
230
176
267
198
212
245
263
203
205
279
218
165
204
231
177
242
167
184
236
229
165
201
180
240
186
214
206
203
185
181
190
283
284
266
191
202
232
173
223
142
136
231
208
187
190
201
174
183
115
251
182
199
237
222
227
161
179
233
149
224
203
234
217
265
244
276
223
186
188
224
162
197
258
154
158
158
215
202
184
198
192
218
202
209
231
213
179
153
250
176
144
222
162
146
182
182
191
223
165
222
245
231
192
195
189
147
218
180
176
166
218
218
236
132
235
207
181
133
257
199
204
187
251
235
184
153
234
211
201
170
238
222
245
151
169
227
199
218
159
232
184
163
175
257
108
174
111
159
198
266
223
161
202
166
190
238
257
159
195
272
160
241
164
205
206
234
223
238
183
215
248
188
265
208
117
216
199
186
199
221
146
158
236
203
214
161
192
212
255
172
204
209
259
200
184
199
187
247
187
173
209
233
193
181
189
158
187
231
184
202
182
210
204
89
261
146
249
204
213
231
200
209
201
152
247
184
238
173
212
205
231
181
225
201
192
192
154
202
166
197
205
197
220
228
181
239
216
226
188
186
230
130
203
239
163
201
256
217
151
228
161
189
238
190
213
125
233
196
242
170
193
213
217
269
236
192
185
271
176
215
195
205
243
216
197
199
245
203
275
250
225
242
235
114
214
224
191
164
245
171
207
192
187
169
215
211
151
154
185
265
180
174
216
235
223
234
226
179
223
182
206
201
229
190
201
257
198
227
189
166
223
220
247
170
214
164
222
234
228
207
239
209
288
258
203
240
194
158
219
228
201
213
204
169
183
202
241
231
207
198
223
239
172
224
209
194
206
180
250
149
207
202
159
136
188
168
200
184
222
174
248
173
151
231
216
207
97
250
184
240
121
222
147
189
178
211
175
232
210
216
251
201
210
137
155
243
208
224
192
224
194
215
196
225
173
175
204
177
104
225
212
225
150
165
236
190
131
212
134
227
162
226
194
217
172
224
232
175
207
220
196
209
205
197
277
248
196
260
179
195
240
141
205
199
205
170
219
260
158
205
216
266
190
94
261
220
227
180
175
249
175
178
249
221
208
240
264
173
138
270
201
248
211
208
95
145
127
208
214
159
248
164
164
106
120
126
167
214
227
209
160
173
161
155
162
224
203
154
187
250
186
211
238
162
202
165
169
195
250
221
166
252
178
271
227
232
109
234
184
218
242
202
253
182
215
190
263
190
199
207
197
223
207
128
251
191
189
206
191
210
150
170
142
176
220
184
187
230
202
224
250
186
184
215
262
151
212
225
155
155
279
244
197
161
218
205
149
180
127
213
192
198
208
138
201
152
218
207
213
217
254
143
243
179
266
165
186
198
218
172
170
217
248
217
281
208
178
203
167
188
160
201
166
192
154
203
242
219
237
174
226
142
140
174
244
222
250
213
184
141
246
226
207
238
160
237
222
156
122
203
245
209
231
141
201
220
216
191
158
179
123
256
221
202
183
207
306
205
181
207
155
200
207
200
195
188
171
193
158
189
208
227
185
179
210
230
210
223
197
249
209
202
204
182
202
211
184
201
138
174
204
234
205
259
178
196
158
221
219
163
235
138
214
157
240
151
171
231
205
300
166
239
194
235
224
298
250
172
199
156
212
141
179
258
225
168
241
123
253
149
219
246
219
237
182
193
252
222
170
198
192
204
232
215
209
251
219
193
226
172
163
250
209
190
236
207
205
221
210
219
200
255
221
204
193
237
233
263
214
234
174
227
151
181
197
218
162
196
209
207
238
190
223
241
203
193
215
243
142
216
197
178
218
151
215
206
186
211
232
150
210
149
178
150
231
152
184
218
221
238
209
234
215
206
203
232
220
232
155
253
165
189
173
138
186
177
254
205
262
163
152
206
241
250
152
213
156
246
143
256
175
221
157
166
195
170
184
211
195
187
245
177
219
201
210
190
190
210
201
191
178
210
206
208
170
225
220
207
160
184
245
159
181
239
197
164
206
150
179
184
203
232
211
169
210
158
191
204
229
175
132
203
198
190
186
201
205
127
165
181
228
194
180
193
179
195
175
213
234
170
199
177
199
244
153
196
228
210
213
192
235
229
182
231
220
212
156
262
188
220
166
224
222
185
173
223
213
222
185
209
162
197
201
172
229
208
182
147
202
219
223
243
153
190
183
175
196
213
210
277
159
193
174
190
197
225
207
186
228
197
189
158
228
176
209
230
193
228
175
181
147
173
205
127
154
220
169
219
154
194
216
172
246
213
208
127
214
230
193
178
154
201
179
171
204
199
203
203
256
184
167
205
196
204
170
186
218
190
135
180
194
205
205
264
189
211
177
182
252
158
161
216
174
172
187
172
139
208
179
182
208
142
179
142
179
188
249
216
130
169
244
220
239
218
194
224
235
267
268
190
258
224
213
161
212
198
227
188
148
123
232
255
150
222
201
195
200
247
207
223
228
227
234
156
179
214
161
174
220
168
181
223
209
157
221
217
245
253
204
210
217
185
156
183
164
176
199
198
148
210
269
218
205
268
166
269
197
176
194
158
214
196
223
198
210
250
182
254
202
216
223
200
164
191
151
232
202
181
184
242
87
220
190
196
252
163
224
193
204
248
216
230
251
194
187
142
250
128
187
182
238
188
167
186
187
220
145
186
190
200
222
142
219
154
187
229
205
203
162
198
168
146
189
173
243
262
188
182
206
197
151
185
167
175
248
213
118
182
167
230
208
197
235
188
176
133
231
233
212
220
178
200
184
160
237
222
281
182
197
139
187
156
215
198
214
212
261
200
213
161
167
143
237
248
237
183
224
254
222
149
224
173
206
215
200
141
188
254
210
205
193
221
159
229
222
168
181
132
179
231
198
183
279
179
207
214
154
222
254
220
156
219
146
260
264
244
184
199
166
214
257
191
227
191
198
159
248
193
214
188
250
206
201
177
163
187
220
198
188
134
238
199
166
191
199
224
265
142
221
254
257
188
169
214
158
231
200
211
135
252
194
147
217
206
199
212
198
225
203
192
204
226
192
211
155
167
252
242
209
219
183
167
243
149
190
251
215
184
242
197
223
201
140
167
207
231
231
200
138
162
181
190
203
178
195
178
176
169
211
147
163
160
243
221
194
204
184
191
253
207
211
175
214
242
194
209
129
146
150
171
166
210
168
229
197
197
158
225
219
212
161
203
243
219
265
218
206
221
153
213
183
223
222
242
183
199
172
245
195
192
178
217
234
221
239
179
157
199
231
235
219
214
228
203
164
168
177
226
173
202
234
214
231
195
197
187
201
99
206
217
197
239
258
190
184
269
247
167
149
212
196
187
190
174
231
219
221
250
183
178
140
201
159
204
205
232
257
102
253
187
217
215
160
159
176
157
248
225
157
199
206
170
146
184
181
197
242
181
150
164
234
235
127
244
207
200
274
228
227
203
239
181
257
204
223
192
153
238
173
128
233
201
182
242
114
184
227
188
227
195
235
184
161
215
235
183
175
177
251
216
156
253
219
237
209
217
220
217
201
267
232
217
228
193
170
117
166
134
151
178
187
190
235
213
203
199
218
198
208
173
222
168
191
195
199
134
227
232
209
198
165
140
197
179
189
180
142
221
202
275
211
217
149
247
248
231
190
263
214
204
175
192
229
157
232
199
203
201
203
261
276
215
246
263
175
183
198
210
217
215
176
212
177
284
204
236
246
247
214
222
211
176
223
201
240
228
152
219
222
209
206
208
191
230
199
188
218
253
151
159
210
129
188
214
228
223
212
170
176
214
234
174
186
167
230
232
213
229
168
271
254
189
206
208
154
260
133
193
207
156
202
159
191
249
174
229
235
189
141
184
258
191
255
254
215
237
231
197
273
183
195
165
218
192
192
242
159
218
274
189
212
154
186
209
226
190
220
189
175
171
233
184
149
238
189
181
192
179
251
161
156
226
176
174
236
202
154
171
195
215
182
250
272
145
176
150
224
241
186
172
174
184
171
154
191
225
211
187
208
169
165
182
256
224
189
205
188
243
241
234
157
170
240
197
159
212
214
190
223
220
174
196
172
191
215
248
166
194
177
179
177
187
165
174
221
156
136
210
163
281
226
265
211
224
178
230
202
197
227
241
183
234
223
214
182
242
195
154
188
168
207
258
150
195
200
243
183
201
218
197
178
181
211
217
155
186
187
173
194
286
241
129
158
218
165
168
174
180
191
132
171
227
205
253
209
210
216
171
230
193
188
146
139
231
171
226
161
131
156
190
209
226
169
244
175
275
198
237
209
183
138
209
187
129
204
201
166
145
253
195
225
226
154
210
190
276
222
131
231
158
139
159
206
222
218
203
194
198
185
170
273
215
154
160
226
170
228
196
230
223
196
215
250
172
197
198
177
241
217
211
189
198
177
238
184
212
179
191
246
196
256
191
226
175
200
270
194
157
155
216
256
191
197
221
209
282
235
150
219
218
177
125
196
231
214
240
169
176
171
239
198
222
177
174
170
197
219
172
191
205
160
241
142
207
213
269
216
204
237
256
172
240
228
227
186
173
205
206
192
246
132
187
257
175
263
214
199
211
194
218
188
185
202
242
219
272
93
156
205
204
243
186
280
130
212
206
207
223
221
146
173
246
166
262
212
220
219
184
140
222
212
140
202
212
230
212
266
255
184
169
260
191
224
132
212
220
196
240
220
177
213
205
208
176
160
155
234
204
227
236
229
135
192
188
171
272
251
219
239
230
249
144
140
169
169
218
149
102
246
175
247
215
221
185
229
225
212
279
236
153
174
118
183
180
139
227
214
194
166
187
183
262
183
219
220
159
210
182
198
194
239
257
212
173
214
193
180
191
107
129
158
181
218
271
203
180
152
198
274
182
170
151
200
193
213
213
224
205
118
158
226
164
238
201
268
197
241
244
197
194
189
218
193
238
195
260
185
193
124
239
191
176
118
182
273
249
149
142
235
203
212
193
243
150
249
202
248
170
183
161
193
158
196
147
165
270
191
238
242
197
180
242
221
215
203
242
191
163
241
234
253
233
177
150
265
231
174
191
184
171
182
215
216
214
149
238
175
210
157
199
175
143
196
201
214
219
259
249
197
225
204
211
163
164
196
218
212
114
201
185
175
246
229
192
130
238
169
236
211
198
187
255
210
243
174
149
224
232
210
247
194
213
222
194
189
157
231
204
169
201
211
191
171
239
188
208
217
201
273
187
163
148
182
224
159
234
185
162
216
203
188
191
213
177
181
129
264
242
196
159
214
228
204
185
206
217
158
216
195
209
172
200
209
237
176
112
184
213
256
193
225
225
157
164
188
232
173
172
208
203
237
254
208
189
225
220
204
180
189
190
176
178
165
166
237
226
151
195
169
196
233
152
186
178
237
174
224
163
189
203
195
244
213
201
239
212
241
119
197
201
248
155
220
224
172
225
202
147
161
198
223
183
162
130
190
209
162
202
154
254
197
193
189
94
204
196
143
219
257
182
232
233
185
221
196
176
203
155
174
200
184
208
190
181
123
144
150
132
202
229
187
219
254
259
144
218
142
232
186
166
253
226
157
205
235
225
170
235
228
250
174
183
134
258
187
188
266
214
199
169
155
198
200
183
225
177
167
213
154
101
175
199
223
183
203
162
228
180
191
244
186
205
175
188
255
199
231
169
238
198
189
244
210
227
219
180
223
209
178
143
114
187
217
193
208
184
195
141
176
207
220
201
203
127
164
137
178
118
200
172
210
214
206
172
216
161
172
178
171
195
209
229
185
184
208
244
233
205
212
186
284
183
227
245
188
201
181
188
154
164
219
209
222
176
239
249
140
254
210
134
166
239
203
201
225
200
228
143
201
249
210
264
208
202
194
194
207
200
226
202
220
189
227
269
234
161
174
144
167
204
160
262
183
170
155
249
177
169
202
236
238
266
190
196
198
181
220
212
228
184
232
188
172
245
221
230
229
214
195
138
165
206
178
147
183
161
151
206
262
205
245
183
298
203
236
186
164
178
248
190
231
211
176
235
231
217
220
246
152
198
219
228
183
166
203
174
161
147
241
207
232
223
183
194
194
170
205
187
187
238
192
213
181
234
154
235
266
184
208
172
257
198
165
206
206
210
261
210
227
152
199
189
231
186
190
185
228
222
180
197
182
178
231
190
205
208
205
106
198
217
227
239
158
153
204
194
249
214
187
219
214
102
187
198
251
210
197
196
172
219
215
178
181
175
231
214
208
211
209
225
198
182
179
188
234
179
206
225
177
206
223
217
255
204
213
192
227
219
144
142
179
200
228
180
191
210
192
216
273
221
185
155
189
205
216
220
211
167
236
254
184
216
206
219
175
206
198
218
213
200
156
275
179
229
217
171
199
208
200
188
220
202
187
215
215
166
208
155
247
184
217
206
178
152
206
235
184
220
240
212
164
225
223
218
227
192
249
247
181
203
138
170
195
163
204
235
172
159
210
205
188
156
230
213
132
195
220
215
218
187
143
235
233
176
183
277
203
274
237
242
228
203
255
206
197
241
137
201
227
207
222
191
177
206
255
203
249
156
175
221
151
225
221
196
189
207
204
175
236
123
163
224
212
219
200
209
193
192
155
167
168
134
219
228
221
176
235
182
137
136
162
174
167
235
185
217
145
171
154
234
230
173
196
133
142
195
164
163
163
196
202
246
208
258
219
214
245
180
179
165
263
235
184
225
195
200
172
201
247
215
216
183
226
213
234
170
202
208
131
218
248
216
224
214
194
131
262
185
236
208
203
190
231
256
99
201
199
194
149
235
179
226
219
170
254
184
192
208
187
134
233
220
124
226
208
167
169
192
168
123
282
205
217
156
141
223
183
148
156
94
185
191
212
288
171
165
190
181
239
204
155
101
215
140
271
191
211
287
187
200
209
228
194
224
204
232
123
242
164
210
182
128
151
230
220
199
215
183
246
132
200
235
229
251
170
147
194
153
197
253
177
172
233
230
232
244
234
226
201
231
206
221
176
135
165
191
193
199
164
180
177
206
211
114
144
239
216
239
146
213
171
203
148
163
213
150
240
273
212
194
175
244
189
245
199
238
184
143
170
186
248
252
209
227
256
178
167
133
201
169
183
180
177
191
200
243
219
197
158
175
205
181
187
208
163
220
223
250
219
200
198
188
179
161
214
204
202
168
154
183
219
174
201
187
240
162
194
251
186
207
130
260
197
281
132
171
205
218
188
201
176
181
183
187
216
251
164
205
216
214
192
221
171
223
111
141
204
183
209
185
243
209
202
233
223
221
214
217
173
258
176
134
180
212
212
236
246
244
171
158
121
169
219
179
197
223
187
131
262
166
226
219
188
159
235
211
231
165
219
214
238
199
238
196
245
212
236
154
231
205
221
197
175
232
222
204
197
196
260
221
193
276
209
255
141
255
241
259
223
223
153
243
169
229
217
270
197
151
251
122
232
143
245
210
265
225
211
198
226
170
166
210
220
180
221
223
201
228
220
218
236
190
135
240
152
229
242
200
201
204
195
249
177
232
146
186
238
232
229
190
180
208
164
132
205
270
240
239
143
197
129
202
151
176
206
240
202
205
115
229
168
151
177
203
209
166
147
167
214
202
216
154
204
195
199
205
191
194
194
194
231
183
185
221
200
203
255
262
152
233
134
149
203
170
160
175
146
144
190
165
199
185
205
257
246
187
204
181
204
266
208
215
192
171
178
216
188
150
219
242
189
207
193
231
261
208
180
204
128
211
207
153
222
167
236
219
205
208
227
250
224
198
240
202
184
159
198
161
212
248
236
176
197
222
197
184
185
197
215
170
115
176
244
206
215
155
208
180
269
250
221
187
130
187
184
178
222
235
229
125
244
138
246
222
271
164
234
210
217
205
231
223
190
188
196
284
129
186
221
187
207
187
166
227
176
177
214
252
220
179
224
127
178
191
198
162
138
159
236
238
159
190
129
229
214
174
203
178
226
218
239
200
231
197
146
191
225
196
232
207
201
191
135
152
235
167
160
155
227
188
229
155
266
230
148
231
233
229
212
174
204
212
204
160
237
227
154
187
147
238
230
199
189
243
197
146
233
200
213
279
224
203
222
236
220
249
161
295
198
193
188
211
134
157
218
155
179
193
208
265
172
131
190
173
196
183
172
142
206
233
207
206
187
175
159
204
216
187
144
149
225
186
191
232
212
203
280
242
169
184
204
199
204
226
221
182
251
208
177
191
201
254
176
262
165
197
202
198
161
166
199
192
213
195
220
210
225
181
224
222
245
269
164
174
145
261
153
160
198
165
179
204
178
208
178
199
197
221
136
287
243
197
214
230
233
232
155
224
169
177
178
185
236
221
214
238
187
231
183
181
238
212
172
247
177
186
207
214
189
138
232
111
236
235
180
189
187
171
178
175
238
193
192
208
182
140
165
191
136
201
161
178
148
204
106
249
219
197
212
230
232
223
177
234
199
238
228
168
201
200
205
209
188
196
240
245
220
227
159
169
159
208
245
144
169
184
169
120
194
210
221
226
165
189
221
201
174
111
204
136
227
203
227
204
213
158
166
171
158
182
204
177
212
186
235
165
208
197
251
191
169
186
190
165
205
197
201
193
190
161
220
275
171
192
162
159
208
237
207
229
214
242
189
195
213
180
203
102
171
205
196
225
185
264
240
207
190
189
142
208
195
213
220
200
205
196
147
217
166
263
235
219
189
198
197
232
242
239
225
195
134
264
170
184
175
123
199
169
172
140
178
208
170
256
230
184
171
122
261
243
153
239
212
260
228
233
181
212
112
199
196
215
232
193
179
212
245
230
168
130
246
225
199
212
110
213
263
202
113
226
193
183
231
208
245
219
165
173
225
211
239
200
186
272
270
214
206
114
165
212
204
158
191
144
161
224
156
273
255
183
224
164
164
150
215
207
209
190
239
153
182
175
259
209
210
245
184
218
209
225
177
185
243
187
192
184
179
190
219
186
135
203
171
190
245
217
211
192
182
208
244
200
230
181
218
148
223
247
240
235
153
162
220
182
228
164
254
116
251
175
150
221
194
148
215
173
202
228
172
223
238
166
192
271
204
198
170
190
252
204
140
184
232
250
151
202
194
219
195
195
236
198
137
233
219
187
148
195
103
153
224
210
248
214
262
264
167
241
205
228
163
198
222
209
225
145
208
202
244
215
233
166
167
208
259
203
232
149
210
239
264
211
238
278
228
239
213
199
190
211
218
249
163
164
150
153
148
266
161
174
178
202
206
237
221
234
206
237
118
226
198
214
247
235
206
216
246
125
201
164
250
224
213
169
194
225
133
258
220
234
152
205
144
189
198
150
169
241
172
152
149
169
249
193
217
241
227
181
174
218
237
204
231
198
204
206
158
232
254
175
205
207
158
219
189
236
238
183
133
167
240
257
218
249
198
224
194
243
218
225
199
206
130
227
165
168
175
189
228
235
175
191
147
204
186
211
182
169
171
240
188
230
146
190
150
166
209
249
199
247
171
153
230
225
206
183
196
137
228
203
188
258
235
210
214
243
210
199
201
238
235
233
213
188
87
209
246
189
216
214
224
214
155
173
234
228
214
208
167
219
218
216
174
178
209
250
185
186
213
182
240
177
245
161
165
198
199
203
179
150
172
234
255
201
177
164
178
217
215
194
172
232
239
217
210
180
248
244
218
203
130
241
181
196
202
142
163
206
132
165
173
206
114
158
269
206
188
200
262
242
210
160
239
237
218
198
136
209
198
189
252
219
254
203
193
260
159
149
223
217
149
282
139
146
223
238
157
192
190
187
261
194
155
199
217
235
210
204
254
141
225
247
205
224
217
193
172
223
186
225
214
162
235
237
264
193
229
174
146
133
203
159
206
278
229
151
216
150
209
251
234
226
181
227
206
146
250
192
189
197
146
146
187
257
222
172
167
195
181
200
186
188
192
241
155
143
193
179
229
176
195
259
198
196
235
182
159
210
249
167
236
224
115
186
203
163
179
267
252
220
187
143
197
180
234
191
204
251
175
221
196
225
278
210
170
216
152
189
218
228
232
237
166
203
258
193
199
219
253
262
249
208
97
230
231
187
204
246
215
203
174
165
141
209
176
207
151
231
254
209
191
202
225
247
172
126
252
132
231
252
219
200
217
217
218
258
177
209
168
175
201
211
257
169
161
198
180
230
172
243
206
145
228
198
213
250
129
100
148
159
251
241
196
218
180
196
226
179
280
203
212
232
211
155
224
187
213
133
213
215
195
212
173
216
213
250
160
148
214
128
137
160
167
177
189
215
187
172
208
221
207
206
196
225
205
214
147
248
163
171
259
159
213
140
196
221
180
224
229
213
241
195
215
256
213
171
197
205
211
259
180
148
228
191
177
196
242
228
176
237
160
212
163
229
250
206
190
159
200
226
204
234
219
246
170
183
279
236
257
240
207
230
201
222
196
197
238
222
222
227
221
190
201
161
257
161
250
194
173
204
263
218
188
222
199
206
144
172
205
187
209
243
180
183
250
191
243
211
238
218
183
158
208
154
173
162
196
155
181
182
156
170
167
236
213
126
195
180
111
212
220
224
208
251
161
181
196
142
203
207
192
181
140
166
187
161
224
159
168
224
203
211
246
175
223
202
159
220
232
220
221
170
229
210
259
135
260
173
215
252
245
209
203
164
184
230
239
237
242
183
185
225
190
154
258
125
174
178
232
191
207
221
204
205
216
261
147
206
139
189
134
193
212
241
164
165
234
173
226
171
199
196
198
158
168
252
176
137
220
240
180
198
133
219
206
213
169
213
210
147
209
198
192
216
243
190
234
246
211
153
220
214
210
185
205
257
141
225
189
300
166
208
245
192
202
214
190
184
228
233
246
179
202
228
193
163
200
188
219
220
223
190
208
134
174
203
269
268
200
226
272
233
201
171
290
207
176
205
139
199
174
193
158
227
150
163
182
146
123
153
213
208
178
217
195
219
262
211
222
138
115
263
254
188
196
199
177
206
170
241
158
151
225
154
140
191
227
233
196
193
147
163
239
140
185
175
173
202
193
165
238
176
147
163
185
232
223
130
161
189
160
177
166
172
257
192
163
199
191
213
216
216
261
226
195
258
174
186
225
258
175
211
217
168
219
177
184
232
219
148
236
141
166
251
177
226
199
162
208
220
156
219
180
201
255
200
187
206
133
161
236
205
193
254
219
157
253
185
195
155
172
263
181
203
256
214
245
224
222
247
185
238
186
241
208
225
230
140
238
155
162
169
193
207
199
182
170
255
200
174
144
200
167
232
203
206
153
188
208
174
163
204
205
250
198
199
220
219
185
174
154
158
196
159
176
152
192
203
253
235
118
190
152
171
169
221
184
206
222
220
127
244
203
203
205
206
211
187
178
196
185
197
260
238
150
202
179
160
239
219
233
237
228
158
218
134
141
213
206
220
180
216
199
155
239
185
229
226
215
219
134
156
207
199
182
181
178
269
142
214
178
220
237
194
201
229
221
112
189
195
232
205
159
258
172
153
179
215
191
171
178
228
167
209
176
161
183
145
169
168
171
217
221
185
186
210
179
267
229
194
147
224
212
195
212
117
227
206
212
154
242
142
175
206
218
241
160
220
197
150
197
191
177
226
182
210
199
190
182
223
206
209
227
204
119
182
210
162
223
200
138
135
156
207
176
209
160
197
203
224
186
227
193
237
199
166
183
237
204
180
180
228
225
223
193
144
174
240
238
243
158
155
201
226
239
140
190
230
260
226
182
124
203
216
231
201
198
159
161
227
231
199
210
193
181
157
211
158
207
196
174
210
206
223
209
249
216
142
189
185
241
164
247
114
216
152
222
166
201
174
165
208
187
249
190
203
255
210
167
153
156
212
227
220
232
199
190
216
162
238
186
259
154
239
195
207
226
161
201
244
212
248
217
228
172
203
196
223
153
152
173
169
241
194
196
202
147
192
226
235
185
231
205
257
198
225
195
184
194
202
161
277
174
196
234
194
216
211
231
189
155
154
155
201
224
151
223
240
153
171
183
170
224
178
192
245
269
205
185
185
151
243
210
238
162
198
232
139
190
229
176
200
204
147
232
170
172
171
178
203
237
143
193
201
274
208
174
171
228
191
227
192
215
166
185
190
172
243
243
228
189
147
218
213
234
171
232
186
175
191
216
216
183
236
193
197
248
224
203
268
168
245
238
106
251
163
193
150
178
172
199
168
169
223
163
192
207
206
181
187
219
187
180
139
178
193
233
198
192
156
221
175
182
178
229
243
182
244
236
215
133
128
187
134
203
152
240
181
196
204
230
158
189
211
179
245
181
210
159
238
178
211
221
250
190
154
192
257
229
217
202
234
261
175
211
265
162
206
204
193
173
233
247
184
199
247
135
166
244
200
229
188
269
214
177
203
238
219
242
262
249
183
261
218
265
194
246
225
110
140
192
141
200
202
141
115
248
167
202
272
210
200
162
174
154
179
207
220
247
203
193
209
216
193
206
133
170
194
198
201
131
148
162
134
214
179
203
233
165
195
222
172
191
177
221
209
131
213
261
232
160
213
163
164
175
206
153
149
194
234
155
217
177
206
200
223
189
229
229
225
238
220
170
160
203
195
144
225
232
255
198
189
178
112
189
199
219
228
228
221
190
213
217
226
177
240
198
228
200
228
246
264
241
244
158
194
137
229
212
161
192
139
170
144
226
177
216
174
193
235
175
200
162
161
157
161
209
180
163
250
173
195
221
215
209
237
179
200
183
156
216
239
202
245
165
120
184
219
227
160
177
231
126
245
211
180
141
174
217
192
167
196
189
236
189
227
187
192
159
215
103
150
232
129
140
154
218
202
158
205
128
162
186
213
255
196
207
235
211
169
254
196
215
201
186
169
255
236
200
207
207
216
173
183
184
186
193
198
182
180
228
223
221
162
185
258
153
203
183
218
234
150
215
229
179
234
245
226
175
187
193
176
126
159
168
201
188
200
242
198
219
182
208
226
146
240
208
136
165
175
243
201
173
260
108
196
198
250
151
208
194
248
248
165
182
161
237
157
207
253
167
144
197
213
182
196
198
231
255
214
166
144
184
220
225
253
200
248
174
188
202
247
179
220
215
196
223
208
193
169
215
231
157
211
128
231
197
161
223
180
210
143
201
212
237
274
215
224
225
176
236
249
188
258
162
169
219
196
251
157
196
199
234
179
215
228
178
167
190
168
185
141
157
243
181
226
205
177
194
261
191
191
168
269
236
188
217
209
131
201
180
234
173
183
210
202
143
208
240
221
212
131
250
195
132
183
171
152
191
207
240
197
139
164
167
215
164
202
172
164
210
173
168
251
239
207
243
253
197
193
195
254
211
221
237
204
181
127
186
136
227
212
177
221
200
191
190
281
204
177
169
184
212
220
171
219
237
187
152
138
169
195
211
176
193
281
187
186
190
242
203
223
192
226
215
148
243
221
168
182
235
136
235
170
191
189
204
203
227
203
203
226
255
229
177
227
241
130
209
256
235
224
180
181
215
245
160
215
229
154
196
207
212
198
176
181
197
199
197
209
216
226
217
169
167
214
228
189
167
204
197
235
261
204
184
235
239
139
241
188
192
191
210
285
185
187
197
216
236
225
205
146
231
108
191
233
261
209
230
237
228
175
144
141
182
159
200
213
193
201
182
219
131
251
250
153
233
224
164
198
179
207
197
186
230
266
222
242
223
166
208
228
220
206
228
218
221
168
224
139
163
242
195
210
197
175
137
180
139
215
210
222
213
210
166
205
161
215
226
185
204
219
172
210
201
135
248
178
137
201
193
205
163
178
201
150
211
190
241
173
198
188
162
179
204
193
260
275
216
263
232
172
156
173
159
210
223
177
195
211
240
222
214
167
254
238
170
223
244
214
189
228
203
172
180
184
242
148
192
201
139
228
143
187
205
191
202
249
178
151
254
232
199
143
222
167
233
168
202
180
202
200
141
214
202
169
169
214
192
162
186
136
191
169
187
94
258
247
156
208
211
216
184
195
141
216
258
188
184
168
174
219
161
240
217
189
244
201
207
201
249
217
150
170
202
294
245
202
184
230
265
230
221
191
230
189
219
246
234
233
226
194
182
227
230
208
217
177
225
223
250
162
229
156
218
212
224
197
204
225
191
183
198
277
211
247
258
237
213
233
175
188
188
143
177
242
175
208
200
219
268
127
214
281
209
243
178
212
273
223
170
219
211
179
217
204
178
172
213
200
206
219
220
213
122
199
194
246
164
184
191
256
197
171
233
180
198
177
217
209
194
271
200
230
216
220
184
179
268
239
212
158
191
161
209
198
145
140
213
229
215
192
188
164
209
179
259
177
150
230
266
181
221
201
212
268
174
221
204
130
177
213
230
221
156
206
167
260
190
206
141
212
221
219
180
168
218
206
212
308
206
212
209
180
170
144
167
206
189
176
186
224
128
214
155
173
183
199
152
220
180
184
234
217
153
194
150
222
182
239
203
169
201
209
211
189
266
259
165
198
172
188
241
203
204
209
187
162
205
269
189
247
132
195
209
182
232
226
162
219
215
229
218
217
195
154
202
222
189
200
190
152
139
160
205
208
205
224
116
156
244
185
166
222
200
162
168
167
173
190
206
207
256
180
158
164
204
179
194
253
204
216
216
159
266
197
153
233
211
139
191
174
242
160
186
168
189
195
163
171
168
181
195
249
253
157
246
130
196
174
161
175
219
157
185
144
165
188
240
242
206
182
142
172
225
192
198
220
209
185
237
226
203
247
232
189
231
214
216
169
127
170
223
110
185
250
192
233
228
218
193
209
204
149
212
190
141
251
159
231
191
166
134
240
215
190
170
135
184
152
275
170
182
193
151
176
228
169
204
223
197
224
140
188
204
166
150
228
191
186
267
183
240
198
251
212
166
155
168
202
123
204
217
194
217
212
165
179
188
201
230
222
170
199
242
185
239
254
153
221
228
273
179
202
242
174
178
198
141
215
148
179
162
219
260
231
210
193
230
152
211
184
197
141
225
124
234
206
290
165
191
147
213
180
245
213
232
207
244
211
203
201
202
234
233
228
183
276
200
201
197
164
254
183
195
148
260
123
187
231
197
184
191
191
217
228
189
222
146
205
166
193
247
286
148
205
204
222
172
183
153
223
174
229
147
224
206
223
179
186
202
167
198
204
172
207
226
225
155
170
152
207
195
213
233
156
227
204
245
208
259
153
204
215
201
176
181
243
202
273
223
196
194
212
192
236
247
243
203
176
134
255
173
155
233
218
192
178
180
248
207
214
239
259
185
253
178
237
195
139
191
188
226
185
225
217
193
195
265
186
210
186
184
241
253
224
155
182
178
158
211
188
235
201
236
204
173
252
241
214
202
200
186
174
187
233
235
200
241
206
245
194
196
205
157
179
205
235
199
231
197
165
214
280
221
165
130
212
238
181
194
220
274
213
215
192
226
186
228
205
145
262
224
148
170
162
173
239
179
225
205
212
184
190
190
172
180
194
241
189
164
207
200
206
188
182
173
212
231
258
187
180
227
193
183
204
164
236
231
189
193
221
193
202
150
191
287
199
202
205
259
144
240
209
157
187
217
172
181
198
119
195
178
227
213
189
249
160
282
184
155
222
246
172
246
209
191
228
99
170
240
197
257
226
233
218
228
227
232
233
226
224
199
204
217
164
259
187
241
210
145
159
241
186
127
240
183
190
225
209
206
208
234
188
156
216
199
215
164
216
185
200
192
207
177
211
181
110
234
205
204
285
175
201
165
188
259
159
221
244
213
152
148
188
172
215
188
229
201
154
176
167
209
183
156
190
167
200
187
275
207
204
259
242
148
272
206
189
220
179
221
240
166
185
224
213
160
164
157
246
214
256
148
191
247
221
252
170
166
152
176
181
192
226
230
212
241
169
209
186
208
131
159
209
212
231
165
208
228
162
158
267
202
227
174
187
162
176
204
184
229
176
163
165
173
213
199
209
175
217
218
166
218
177
255
121
162
204
190
168
253
185
208
215
183
239
177
180
219
205
195
242
182
210
195
191
164
164
205
176
237
161
190
177
211
177
178
197
185
205
166
178
191
214
170
248
239
166
206
209
174
230
209
158
154
94
196
191
175
187
237
157
242
122
235
219
161
204
183
239
162
207
242
206
184
143
206
214
215
177
215
213
232
125
226
183
240
188
256
193
202
247
215
189
160
138
206
194
263
218
176
208
134
231
184
182
247
270
174
205
209
221
233
210
181
216
243
174
165
153
157
280
213
190
167
168
260
249
167
200
188
217
289
231
193
191
151
203
231
137
234
230
188
175
212
187
162
160
260
204
225
190
255
251
242
202
211
188
198
161
179
218
159
159
184
162
213
274
194
224
220
221
221
233
156
200
242
192
276
190
242
189
202
217
184
192
158
195
130
252
219
210
230
272
214
230
195
244
188
172
218
175
182
237
214
181
166
244
178
228
205
189
246
194
174
204
182
73
184
269
170
268
177
172
242
231
203
210
195
148
130
150
138
137
179
214
168
166
212
183
131
203
141
201
182
186
162
155
225
206
211
267
249
249
189
172
163
230
154
211
177
243
219
235
203
248
182
240
263
189
200
263
163
214
230
204
226
193
245
230
248
232
166
215
241
162
213
238
242
229
164
250
184
188
250
200
130
173
223
266
179
173
184
202
245
171
193
284
234
195
189
233
210
197
94
231
208
242
224
241
261
170
157
235
281
221
211
194
217
171
173
176
112
178
217
225
188
241
180
182
250
203
203
253
215
141
223
173
197
201
197
241
267
205
222
178
188
220
191
217
192
189
184
204
181
210
182
180
156
189
241
186
179
213
162
245
204
232
239
250
202
235
126
144
166
188
234
180
204
235
148
215
178
177
241
174
273
253
163
224
178
212
205
180
280
203
245
151
202
198
205
192
235
177
177
223
246
190
131
211
205
218
191
221
215
222
216
169
223
231
252
187
240
163
180
210
214
201
248
191
199
160
198
257
201
138
205
140
175
252
225
201
167
203
194
240
156
210
226
213
222
149
216
159
163
172
227
198
218
137
210
189
209
190
153
201
212
251
213
168
200
215
217
199
156
205
185
221
253
238
157
169
172
263
152
269
188
167
222
196
230
192
224
244
241
217
205
190
198
204
145
190
167
200
165
172
160
259
223
144
161
192
239
184
261
231
137
225
227
189
156
251
236
179
158
213
218
275
220
163
225
243
198
192
167
238
264
211
179
214
161
196
182
239
225
222
228
214
229
268
230
204
226
226
195
171
203
95
149
184
230
237
138
195
218
209
189
245
221
223
227
195
156
247
184
123
167
162
217
212
225
166
187
257
227
189
226
215
192
190
147
216
221
106
143
135
179
180
194
232
163
190
206
227
191
151
244
238
209
173
249
164
243
177
233
170
208
253
206
184
206
194
243
190
215
162
272
234
240
233
210
193
230
178
118
243
205
206
212
206
196
243
222
218
238
231
199
207
154
159
243
188
276
230
173
205
171
239
173
222
236
224
166
242
203
197
211
227
201
185
208
156
236
250
187
186
195
186
215
188
191
214
176
194
195
208
195
234
200
160
182
183
202
223
208
231
216
201
207
228
160
219
174
155
266
229
253
191
221
158
172
149
182
232
143
178
197
207
155
185
206
205
176
203
215
193
192
240
220
234
171
232
143
232
218
198
218
230
160
173
238
208
231
187
206
188
206
200
209
276
166
179
168
244
236
183
161
245
299
176
214
193
196
166
196
141
152
170
218
237
183
216
209
224
263
165
235
184
170
215
240
207
211
210
159
229
268
178
185
223
206
193
257
205
176
247
186
220
203
208
159
183
165
209
174
237
191
210
219
205
174
180
201
176
237
170
200
225
198
191
218
236
201
195
175
203
298
195
180
226
194
208
198
173
202
207
168
219
204
194
241
228
220
216
174
197
217
238
178
188
257
166
252
177
207
238
193
135
199
203
240
198
166
169
256
205
161
193
217
168
206
159
156
108
233
199
186
226
186
178
232
225
223
162
179
200
206
181
235
227
205
102
230
169
230
189
186
179
183
154
170
151
169
157
267
124
213
178
211
173
170
185
130
194
166
181
154
185
131
193
262
183
238
195
135
219
122
203
244
151
236
188
220
199
223
177
257
237
176
235
270
175
212
234
163
191
138
231
193
176
246
222
229
233
203
188
256
190
228
162
230
167
236
186
250
227
160
205
196
202
181
226
234
189
217
165
128
207
127
170
214
216
271
251
186
183
161
241
183
149
110
206
150
253
153
229
202
200
130
206
187
242
198
233
192
130
198
214
227
158
180
192
211
208
239
188
226
249
241
241
257
198
251
205
151
253
205
200
198
219
237
249
169
269
144
193
225
163
238
192
255
194
161
180
272
180
199
248
159
257
238
137
212
121
135
167
199
230
175
262
226
207
209
195
256
217
230
172
250
245
203
171
161
275
197
121
239
176
229
214
276
238
226
237
186
215
213
212
233
169
155
160
191
201
187
186
174
209
117
160
253
202
232
220
204
171
217
196
172
244
213
221
264
170
187
197
210
161
258
263
217
234
176
164
184
103
221
205
210
153
208
202
147
222
168
186
209
211
241
172
118
139
234
227
203
161
206
173
231
245
153
222
253
206
143
187
208
135
208
231
215
167
184
187
257
158
169
267
134
214
200
186
185
254
177
131
125
250
163
250
179
173
218
144
205
233
179
200
225
210
242
222
193
223
214
172
197
158
255
246
163
195
199
231
237
217
146
235
227
170
129
172
156
278
195
207
230
196
239
164
192
169
187
212
222
267
178
262
157
184
198
155
215
191
181
177
218
187
250
221
216
244
153
184
181
248
218
233
181
175
156
201
189
162
219
178
200
208
225
193
158
193
216
206
241
213
199
202
181
199
219
172
197
162
188
205
171
204
149
263
190
219
179
148
194
209
148
145
175
211
202
223
264
250
161
238
143
167
260
138
203
215
180
193
216
203
182
186
197
263
146
141
198
194
224
195
187
202
166
258
257
160
167
188
250
213
228
165
188
150
203
211
166
175
202
209
215
205
169
202
258
154
209
269
175
147
227
197
233
94
224
177
176
87
223
200
176
192
249
151
94
149
214
195
187
204
196
196
209
199
218
261
163
213
195
234
176
196
195
156
179
215
226
212
166
207
225
138
233
203
181
206
190
262
208
196
225
245
179
221
155
238
171
228
184
197
196
223
170
212
227
173
192
215
175
257
184
201
229
225
178
233
223
190
151
217
251
209
187
154
229
148
142
174
179
176
245
220
265
245
269
164
251
201
231
228
191
203
170
211
183
221
178
210
281
198
215
181
226
220
229
206
122
206
194
120
148
193
217
181
243
249
253
170
227
208
270
192
174
218
157
216
154
214
244
242
165
165
216
200
244
201
179
124
207
202
203
183
206
217
270
222
174
187
169
165
236
177
219
217
211
149
203
210
239
216
130
171
240
230
172
196
204
210
221
135
170
191
245
223
204
152
219
193
233
202
232
200
248
219
267
182
223
210
192
228
198
160
174
191
140
216
176
237
210
191
192
168
204
208
133
213
180
212
167
141
200
170
195
226
189
215
163
210
207
211
219
223
220
212
133
170
240
154
168
186
218
163
195
229
197
247
139
173
168
251
224
176
257
236
194
253
180
210
158
194
247
197
214
206
174
222
194
140
177
186
252
200
232
191
230
209
209
233
206
191
200
207
215
214
158
275
153
195
185
192
264
166
205
162
213
249
195
231
183
191
197
113
159
202
131
185
201
224
139
255
242
289
181
237
215
197
241
185
251
194
189
193
220
184
166
184
185
218
201
232
179
183
179
212
195
211
228
166
195
217
175
146
194
238
258
247
165
179
174
197
181
227
184
217
216
194
173
192
150
203
207
224
132
248
213
247
185
243
207
195
212
220
245
187
200
186
147
185
228
160
242
237
202
208
230
140
102
233
147
197
243
232
212
253
241
195
216
192
204
188
157
148
224
230
219
163
190
189
149
131
222
176
156
196
152
244
208
212
215
229
241
201
225
161
223
280
229
200
245
182
174
236
174
196
266
244
176
168
189
212
239
170
212
242
133
239
223
209
217
183
241
193
218
247
184
236
192
120
169
234
161
144
196
198
204
159
187
155
200
139
217
227
254
238
238
243
199
175
196
194
209
212
258
201
207
181
172
197
199
134
202
203
203
198
193
142
214
238
190
209
200
215
209
153
232
207
229
203
168
171
156
197
138
200
233
218
210
157
250
184
242
222
240
172
176
212
235
209
255
180
204
237
206
181
208
215
228
217
204
235
196
215
238
144
275
196
221
210
193
175
199
192
238
176
203
176
180
236
248
226
204
197
168
217
191
171
163
188
240
164
138
169
194
224
206
224
249
170
196
233
106
199
212
244
246
226
194
169
206
204
176
202
242
129
129
256
187
197
245
211
253
208
233
260
155
200
212
241
233
190
193
133
222
233
193
224
222
187
117
218
199
183
221
174
256
187
204
215
205
222
180
139
219
144
164
165
195
226
161
285
231
237
272
161
222
167
208
179
132
233
254
212
186
174
195
205
191
159
205
205
189
167
176
147
149
225
235
172
260
235
145
221
219
232
165
152
116
225
249
232
226
156
182
197
179
138
207
207
218
231
213
194
206
257
240
194
204
250
197
145
185
175
206
164
223
213
186
185
190
254
206
183
194
266
216
196
198
184
168
237
150
230
205
188
243
147
221
222
208
175
195
140
201
236
201
222
224
198
158
163
129
197
168
221
169
184
183
181
235
168
209
167
215
198
228
252
164
221
175
228
230
182
252
179
217
194
224
224
191
174
163
218
188
186
165
220
229
221
168
248
202
199
175
184
235
262
232
165
188
226
183
211
224
161
178
247
141
146
235
177
246
157
256
260
216
121
230
206
232
184
203
179
169
178
243
246
205
207
200
244
237
249
243
205
173
155
265
188
181
186
241
200
207
237
174
195
184
233
172
178
185
212
190
259
233
184
203
256
194
182
202
208
199
133
131
160
166
166
177
205
219
233
270
251
179
226
211
191
200
228
225
171
194
230
177
176
211
253
108
154
119
186
172
153
207
114
270
213
209
117
240
216
226
161
71
203
169
201
195
221
192
208
251
229
249
247
207
222
164
150
223
217
149
189
165
236
253
205
248
160
174
189
179
177
196
185
200
218
148
171
207
233
180
163
149
223
208
219
280
223
230
124
146
199
223
201
187
204
197
202
260
220
148
213
222
180
244
239
192
138
230
246
160
166
223
222
180
115
216
247
196
122
228
146
171
193
194
237
217
216
183
163
234
219
211
186
229
194
261
225
234
142
204
248
213
202
212
231
182
267
229
185
185
123
229
193
214
207
135
221
189
196
201
249
200
226
217
207
205
217
258
169
163
211
226
175
217
247
193
143
183
251
229
123
195
255
233
273
200
217
204
160
130
270
192
198
209
115
190
200
205
201
208
208
150
237
231
171
119
245
212
251
217
243
222
222
208
133
172
205
255
233
138
246
186
232
165
216
214
238
190
185
246
224
181
196
228
202
195
222
157
189
182
195
166
191
172
208
236
234
216
166
262
204
250
160
165
182
226
222
201
241
198
210
234
140
203
203
234
194
193
188
174
165
201
204
205
162
225
186
202
201
182
217
226
222
234
193
247
184
224
241
213
189
138
178
218
198
174
199
154
143
234
168
202
150
228
241
207
154
210
228
254
244
207
161
163
191
179
253
216
181
189
215
200
206
159
245
212
177
203
231
164
215
168
189
166
237
183
133
149
207
142
212
148
191
175
217
205
194
220
188
221
232
202
172
170
181
152
248
234
193
201
170
244
153
185
159
205
205
165
218
196
172
240
225
127
146
212
191
196
249
188
193
220
217
143
170
247
235
201
213
199
252
141
190
239
229
222
207
155
127
187
205
199
193
181
210
242
213
271
175
159
197
196
133
244
174
146
240
199
234
192
190
214
203
154
124
141
201
241
245
130
191
212
231
202
186
176
245
212
173
150
198
224
193
262
202
182
231
116
169
139
234
242
140
203
160
178
185
256
193
280
222
204
187
170
181
195
166
111
185
270
239
213
232
152
187
236
232
219
250
168
177
259
203
154
130
246
222
190
181
154
240
232
173
172
206
191
204
228
147
138
176
217
198
203
177
149
215
254
185
210
250
244
192
220
215
204
230
268
223
192
150
183
218
157
218
233
203
227
188
212
200
118
205
227
235
204
157
183
183
185
237
178
233
172
170
202
223
154
246
216
208
230
211
205
205
213
185
253
190
207
156
193
228
259
188
146
184
194
184
163
181
218
157
148
240
254
227
206
197
188
210
210
239
194
181
184
218
230
215
253
218
200
192
176
194
184
184
200
244
209
176
189
157
223
148
231
212
184
142
244
144
253
156
149
227
189
236
225
202
171
195
186
196
229
229
201
240
164
159
189
156
86
258
117
217
205
190
260
203
155
205
183
182
159
237
203
162
219
138
232
251
178
214
168
189
233
257
206
226
157
139
216
213
216
159
202
146
183
235
199
202
165
190
211
201
208
161
259
193
124
188
167
217
137
245
255
186
209
198
241
147
191
205
230
181
197
243
217
225
184
264
190
253
175
224
177
165
233
150
211
195
183
253
212
199
182
190
146
228
187
287
187
146
225
187
177
232
217
157
185
187
145
164
196
201
225
238
180
224
239
210
185
229
203
177
279
151
171
131
180
201
154
170
248
166
158
233
206
251
151
166
189
229
230
159
236
206
211
184
192
171
150
219
263
230
204
185
220
194
214
173
142
222
194
192
254
159
245
163
156
222
163
188
198
193
216
227
177
179
178
253
203
187
160
188
228
224
234
192
128
248
174
200
187
166
163
157
162
249
151
251
219
202
199
209
218
172
219
155
205
185
239
251
155
181
235
242
189
268
202
134
169
172
181
168
189
249
200
254
247
149
160
247
257
193
185
265
182
153
219
183
190
195
264
132
159
141
224
156
186
177
182
243
154
235
188
169
238
219
142
194
179
182
233
131
220
226
207
209
197
205
169
199
193
209
231
244
210
130
156
180
217
191
167
247
177
281
211
146
226
223
157
183
231
187
195
214
204
222
251
245
205
201
104
219
178
156
198
242
200
215
161
188
265
172
197
218
217
149
229
200
218
206
306
188
255
182
234
225
273
160
191
252
213
198
199
131
149
220
221
198
171
227
193
143
199
218
209
270
144
201
204
201
136
226
237
116
187
248
210
202
183
241
213
186
185
188
200
206
200
216
229
161
228
260
249
236
183
185
237
185
196
203
229
200
145
204
174
181
191
176
143
208
211
208
217
178
174
236
213
169
208
251
190
143
193
211
231
223
247
118
217
176
247
165
229
225
199
184
226
200
154
102
176
140
222
259
271
234
214
246
180
166
211
172
229
202
130
154
209
208
188
128
206
224
187
242
222
198
218
126
161
217
227
194
227
241
214
191
210
190
181
166
213
206
226
159
142
206
239
154
196
222
210
233
111
205
239
215
146
191
184
188
230
175
175
175
225
169
185
193
191
164
219
251
199
185
252
228
152
191
186
240
164
201
132
166
170
215
265
229
147
211
231
214
232
243
251
212
228
269
213
188
196
234
228
162
136
174
325
167
151
120
187
248
177
236
161
204
242
213
189
230
204
202
231
178
202
230
199
208
203
200
131
225
211
166
167
209
271
155
267
208
191
196
232
162
230
221
204
259
180
219
225
188
222
208
171
195
226
195
196
239
195
194
223
221
225
282
163
271
233
253
239
184
246
130
196
203
209
266
241
220
224
233
208
165
193
229
193
193
168
189
235
203
122
208
259
175
192
213
189
219
203
234
185
182
198
153
187
243
160
217
175
270
149
242
163
176
221
226
146
194
207
257
153
251
225
195
225
172
232
207
244
199
190
153
193
238
161
235
179
224
201
209
211
213
170
199
270
213
164
175
177
109
175
172
185
136
182
153
183
213
207
227
170
152
208
158
119
254
159
147
262
200
200
172
220
228
222
216
193
197
200
227
249
214
209
214
186
233
240
205
202
228
221
142
198
205
204
243
173
214
251
262
155
187
142
196
208
204
170
185
189
172
206
219
178
208
227
210
185
170
213
246
177
162
185
211
212
256
140
164
175
199
167
211
218
231
189
203
218
145
131
193
166
197
215
230
220
198
187
202
152
195
227
260
225
232
170
264
242
236
221
258
178
190
271
223
235
174
223
201
242
212
210
149
179
214
197
196
188
183
232
187
209
185
235
206
180
120
209
196
225
185
210
191
161
169
194
170
200
236
150
216
215
229
233
227
214
208
251
255
179
211
237
141
256
174
178
251
200
237
209
269
171
282
166
243
186
173
173
185
181
200
175
196
172
213
145
195
210
142
181
223
178
230
241
187
195
136
194
209
224
212
198
256
181
190
211
213
125
185
245
249
233
208
232
184
241
191
227
205
211
186
211
254
197
220
160
282
239
212
151
200
188
228
239
216
181
183
230
199
205
196
201
256
167
167
227
204
183
227
234
219
198
208
154
157
174
211
250
190
173
214
175
137
186
160
155
241
208
212
222
203
191
225
153
184
200
233
199
228
192
123
214
210
230
262
245
250
200
193
221
160
217
155
221
255
187
196
199
205
205
178
167
234
187
200
173
167
258
186
239
279
228
146
172
231
214
234
203
225
189
180
193
189
241
208
205
238
165
229
219
200
217
219
225
223
219
236
191
249
228
262
149
224
169
162
240
234
250
236
166
239
199
214
233
188
195
234
258
181
185
195
237
158
108
138
221
201
200
198
202
267
209
248
217
212
210
194
236
192
197
240
231
208
219
218
224
203
200
145
217
203
212
156
177
178
216
195
257
199
232
213
175
223
191
185
219
224
217
168
239
197
171
165
204
173
218
214
193
136
223
179
238
218
218
216
162
223
182
158
207
164
218
187
184
220
156
220
172
187
227
231
230
184
170
260
250
194
207
162
214
195
220
231
171
187
205
140
206
159
208
197
163
265
237
188
215
196
204
218
292
116
140
246
167
223
224
171
203
233
204
176
208
126
248
258
234
157
216
230
198
209
149
122
236
245
202
239
213
209
191
272
235
205
217
145
233
181
176
221
236
139
126
201
196
191
207
219
253
220
193
204
146
133
163
208
134
210
160
176
225
242
163
192
164
210
215
164
219
182
277
235
171
216
131
244
219
206
175
148
189
180
208
161
149
251
212
241
232
223
166
217
148
228
201
184
231
167
152
178
192
219
182
161
173
199
205
177
179
262
224
232
240
224
214
224
198
201
184
203
181
210
210
189
187
167
252
173
204
209
209
163
252
137
185
213
251
121
215
222
173
251
180
176
192
188
246
189
245
232
170
218
237
175
216
219
279
186
216
211
161
197
259
187
211
142
155
204
209
153
211
218
207
191
196
159
151
182
185
191
194
177
264
189
216
273
245
202
208
202
184
228
218
129
208
178
169
235
205
200
216
241
210
236
193
235
230
213
215
226
199
228
176
156
195
241
205
165
147
238
219
191
206
269
168
206
174
238
245
199
187
141
186
151
179
202
221
145
224
200
165
224
190
207
162
185
124
230
239
191
225
176
187
189
268
211
246
201
180
226
252
255
227
162
191
190
238
152
262
172
147
208
170
192
185
246
145
276
211
199
258
169
208
219
204
209
210
232
186
216
176
235
211
221
184
200
234
239
183
203
205
259
236
197
191
258
149
182
195
129
194
146
187
204
205
208
232
214
166
191
162
239
195
257
206
162
274
176
220
88
240
211
154
222
224
225
197
208
197
213
223
209
141
203
235
156
242
197
169
257
197
146
211
218
132
213
205
255
235
199
229
218
239
180
156
185
199
183
166
189
152
149
203
121
224
181
210
115
185
176
242
200
188
154
180
214
220
156
181
177
162
212
233
202
176
206
228
169
201
212
193
174
202
99
179
160
178
160
213
155
224
184
223
176
234
144
157
212
205
222
234
195
214
150
207
217
194
224
191
223
269
177
215
221
236
213
169
214
216
262
219
183
171
192
140
202
181
152
199
173
153
179
184
219
204
243
174
203
222
202
151
228
191
180
258
207
183
196
201
224
92
200
183
254
176
201
247
193
204
229
105
161
199
249
162
227
196
277
143
236
189
193
202
173
183
229
175
179
163
204
208
246
219
249
235
167
200
152
149
134
175
166
189
227
173
130
199
218
228
185
199
153
276
164
205
154
224
172
209
176
184
191
174
171
250
243
196
131
149
195
178
231
177
210
176
176
252
193
197
139
192
239
174
230
261
219
181
213
228
188
190
174
205
227
267
195
193
167
218
210
194
174
217
215
246
168
220
209
201
185
133
158
187
213
189
223
206
171
162
179
148
202
216
207
210
208
179
183
201
217
215
199
143
172
197
179
209
233
189
152
189
188
208
150
142
154
185
199
170
242
199
175
227
150
180
203
142
162
212
158
213
195
233
186
221
224
218
221
225
211
222
227
230
161
224
166
136
192
142
181
186
199
206
241
187
224
201
178
237
241
156
155
238
236
200
175
187
184
247
201
130
185
211
100
166
215
240
226
200
221
221
214
140
200
144
180
220
195
156
220
231
229
200
167
173
215
220
196
191
170
145
175
214
191
199
198
236
172
169
160
232
243
210
177
180
240
215
232
239
146
201
188
212
238
223
240
189
170
244
247
220
191
241
223
190
234
186
220
211
137
216
198
192
117
219
238
194
220
182
194
184
210
267
191
177
154
194
233
219
224
250
163
128
181
198
196
233
210
241
238
133
267
215
188
194
172
254
182
203
196
157
233
183
208
244
165
245
140
216
212
176
139
226
203
238
168
142
111
211
202
112
220
200
213
182
214
157
167
175
231
241
227
208
230
213
156
201
225
190
169
161
249
234
248
187
127
174
191
185
197
170
229
227
218
254
196
156
149
164
244
187
198
196
151
199
166
188
255
216
218
254
181
200
238
197
128
225
234
230
108
200
198
183
199
254
225
172
215
224
211
178
239
210
223
217
176
230
257
141
208
227
187
175
133
223
206
208
188
123
251
159
207
150
219
189
204
239
112
165
256
186
165
184
188
158
253
220
130
189
209
211
260
222
252
215
196
226
163
240
234
188
249
200
156
154
218
165
252
168
149
197
233
191
176
253
191
189
168
141
165
195
151
186
176
202
76
194
217
187
225
229
202
233
211
195
180
218
222
198
269
173
220
127
209
151
175
165
176
159
224
185
188
193
197
158
238
191
146
217
237
230
220
205
215
265
184
231
191
222
184
130
220
250
177
167
197
236
176
253
227
140
213
187
169
222
205
206
173
160
242
168
212
190
171
237
178
180
185
213
220
219
279
149
239
194
172
180
179
255
204
188
222
190
207
242
227
192
174
214
205
231
119
134
208
192
141
220
191
250
113
166
209
202
191
153
203
241
203
167
206
266
186
176
160
210
191
164
168
195
175
256
161
184
170
187
156
191
221
187
122
138
220
217
194
204
241
243
216
208
170
219
227
186
175
188
235
287
217
180
203
207
217
185
217
243
147
232
232
220
140
230
231
180
153
243
226
216
193
220
181
202
188
204
144
216
216
240
245
171
200
274
205
168
197
158
164
217
184
167
185
194
245
188
182
238
267
227
175
217
196
218
227
201
185
210
231
165
198
169
205
185
184
212
180
223
217
208
212
223
146
254
202
217
209
215
168
236
188
172
236
262
171
211
207
204
225
221
177
195
182
243
155
206
144
168
257
222
211
178
212
201
247
234
225
176
196
210
229
251
156
243
194
189
201
216
243
241
177
217
244
203
227
251
169
224
215
217
210
146
192
200
235
222
119
185
215
206
219
227
219
196
231
207
206
212
228
169
235
247
203
146
207
177
204
152
215
194
159
227
177
208
261
202
194
184
150
169
216
245
133
234
188
146
195
220
183
245
196
182
230
222
189
185
154
189
188
201
196
275
214
213
228
257
205
160
240
211
271
212
168
263
219
192
181
199
199
226
129
182
222
190
225
232
133
214
205
215
211
212
206
200
219
204
222
158
204
175
146
230
154
207
240
273
175
229
167
216
171
190
195
154
228
184
206
220
221
187
152
193
207
235
191
188
127
228
227
172
166
176
223
208
256
157
190
234
179
224
233
193
192
196
165
185
170
216
164
129
245
232
162
138
216
137
200
173
195
177
163
219
170
225
172
155
265
218
225
200
197
192
196
196
242
163
217
226
241
196
205
226
140
236
201
136
222
157
190
184
215
148
226
227
211
168
138
248
209
204
190
232
232
207
178
187
211
234
223
177
153
168
161
195
154
212
202
215
163
181
202
237
149
177
161
180
233
215
205
143
133
184
210
193
192
187
208
179
229
229
225
195
210
203
195
142
177
170
156
210
180
166
229
197
112
212
155
276
132
204
177
203
248
139
192
175
192
181
194
208
209
190
223
214
217
222
163
168
251
228
175
222
238
286
190
250
250
214
235
202
202
187
219
201
154
211
197
202
188
200
135
247
168
205
266
181
209
199
227
226
194
213
272
218
199
242
156
178
224
241
207
215
157
234
234
161
155
240
223
202
203
145
142
216
238
199
285
178
174
227
163
160
194
245
164
244
172
211
236
182
199
261
192
161
217
210
216
242
219
171
190
218
219
231
236
186
196
218
250
205
129
215
142
172
130
197
181
216
221
190
228
205
240
183
228
195
224
199
153
234
209
153
188
216
243
197
158
216
212
161
181
187
242
187
205
232
171
196
196
175
227
147
205
184
210
176
153
174
228
200
173
214
210
221
185
263
176
157
142
239
223
234
233
192
230
223
208
189
237
168
163
161
180
219
183
255
211
226
167
206
214
209
227
267
206
192
172
180
214
193
206
198
250
215
145
254
201
146
184
247
276
219
180
135
151
224
210
119
220
182
191
193
200
256
209
238
245
214
217
236
175
214
200
221
162
209
176
194
179
204
248
230
235
170
144
198
210
199
181
249
192
237
182
241
150
195
202
239
155
245
239
219
220
217
194
184
236
163
220
177
207
201
223
222
216
166
258
198
252
147
255
226
181
212
151
187
186
201
133
146
174
178
195
197
233
208
170
231
195
231
157
189
221
250
248
177
265
182
192
194
217
202
223
190
196
225
189
103
242
208
206
235
159
172
182
126
251
258
273
210
192
195
144
195
220
202
126
205
214
236
220
146
200
146
216
167
176
236
193
155
162
212
198
272
226
274
269
178
157
227
168
162
251
145
214
215
186
250
195
232
239
175
231
182
207
204
236
275
208
217
237
144
164
248
183
168
178
241
198
212
200
173
209
135
173
160
257
198
184
195
178
177
234
204
186
200
201
169
252
193
184
203
214
204
187
167
155
226
215
179
244
211
154
224
244
147
204
162
245
156
213
263
229
215
244
221
184
164
179
208
179
162
255
173
222
214
218
204
215
212
174
140
225
190
188
136
212
215
182
240
183
209
213
221
227
239
201
182
233
241
200
262
177
185
199
129
204
167
193
173
212
211
184
224
130
197
218
242
279
163
243
190
178
201
208
143
177
162
164
211
230
181
179
254
139
162
202
235
147
202
171
181
212
153
198
183
175
203
145
162
177
165
186
173
230
195
175
202
205
168
193
205
158
227
234
140
152
201
164
187
177
169
237
229
167
220
233
177
133
171
273
241
156
220
214
218
229
179
197
169
206
161
188
212
178
206
231
242
124
261
220
295
244
220
222
151
209
237
206
211
182
246
142
210
239
234
223
233
194
180
265
189
116
206
231
167
153
225
249
194
220
193
241
197
216
189
145
209
238
253
220
177
293
200
222
221
230
136
215
179
213
189
226
208
188
222
200
167
190
210
198
263
208
195
182
160
176
194
144
200
202
202
207
195
198
189
140
179
223
196
255
217
184
190
190
209
141
210
173
116
147
245
213
178
218
218
188
174
204
224
220
209
187
180
156
199
207
220
188
249
157
209
197
220
190
240
208
214
178
178
180
179
140
172
224
226
220
171
236
169
160
168
153
208
197
153
181
179
254
229
224
251
260
219
167
237
182
131
186
242
224
232
239
222
183
229
149
166
147
219
215
215
142
159
198
183
171
215
189
161
173
202
163
215
212
181
233
249
229
155
234
199
201
205
239
271
213
275
202
184
198
250
214
216
251
282
219
184
164
230
145
181
184
191
215
206
205
155
192
232
188
171
280
204
290
173
128
208
233
209
156
190
207
252
243
140
156
187
175
197
174
182
229
159
196
220
203
180
174
179
196
158
246
278
180
226
252
154
179
220
167
198
244
176
168
149
203
196
225
172
165
218
202
206
204
255
118
199
231
235
225
219
195
215
184
204
202
251
242
187
214
135
213
224
190
195
186
211
248
211
191
215
198
234
167
139
225
188
248
199
267
213
156
177
213
201
237
234
174
210
251
202
223
217
164
223
214
178
181
164
170
190
221
199
262
206
175
141
217
184
166
169
173
217
231
195
219
261
204
171
209
210
160
236
220
161
207
181
237
228
161
221
252
181
220
240
193
231
212
175
193
198
178
197
241
210
215
239
225
154
251
146
254
245
199
223
173
185
205
164
236
171
217
223
169
224
206
205
155
161
163
172
194
201
214
215
194
219
177
245
175
189
157
250
204
173
188
202
146
231
202
176
188
243
217
202
205
216
219
146
124
158
212
182
211
234
171
257
197
206
159
155
159
221
281
216
219
158
138
180
270
185
192
218
207
172
233
305
198
221
243
254
157
174
225
230
212
234
195
208
221
174
166
172
183
183
205
159
196
260
213
144
120
185
172
150
178
196
201
253
175
182
258
213
216
189
219
205
270
228
169
211
223
239
227
200
149
189
199
185
272
181
226
191
238
171
193
238
211
200
188
160
180
217
173
194
178
162
226
181
208
187
205
184
215
218
129
207
251
179
182
194
253
281
215
208
144
188
173
176
227
209
233
144
187
222
238
223
186
149
203
226
247
181
270
187
197
183
188
232
155
126
224
192
152
216
165
231
162
209
128
178
211
230
219
179
123
234
249
119
223
184
205
213
213
134
226
176
192
196
248
193
178
156
251
154
259
169
238
212
213
160
198
183
193
227
156
187
142
192
156
199
149
205
272
198
182
220
243
104
154
206
191
212
100
175
228
211
161
205
146
200
172
241
251
219
237
200
252
195
185
157
259
200
194
201
157
254
179
228
213
197
200
227
168
265
227
263
187
234
248
216
165
162
160
179
206
168
180
199
179
216
220
197
160
257
176
206
229
187
194
213
181
192
267
191
124
160
128
127
254
233
179
173
161
193
198
227
213
224
176
182
210
220
199
188
227
206
253
201
212
233
206
155
180
291
173
225
204
196
246
203
218
162
169
106
199
223
121
170
221
193
153
276
248
193
206
204
182
214
186
214
158
163
228
242
237
235
222
105
194
198
188
219
233
252
203
190
256
174
179
191
177
218
233
177
200
210
253
205
219
139
180
195
264
215
163
204
202
214
217
181
164
188
185
177
209
180
227
176
172
162
191
168
177
207
168
174
160
178
247
226
248
210
219
181
190
219
227
204
264
144
221
174
200
213
225
234
211
224
229
235
198
247
201
172
215
186
199
205
167
158
212
178
127
231
217
174
164
249
216
252
189
157
248
183
247
239
237
208
192
230
199
246
179
233
201
188
229
159
233
161
195
195
215
192
154
184
175
228
225
190
224
190
160
210
177
220
223
158
158
227
201
157
212
207
211
247
188
180
245
158
195
187
149
217
148
235
259
252
204
184
123
197
113
288
224
209
211
166
169
215
189
204
181
191
140
171
230
170
185
163
194
193
263
175
198
191
225
227
240
140
173
211
246
224
219
204
192
204
183
152
178
224
215
215
258
201
207
255
204
196
194
185
205
231
231
132
218
234
145
197
282
230
142
174
172
170
218
178
195
178
218
263
221
202
253
195
224
212
212
156
193
186
195
172
143
265
180
207
211
240
83
221
209
145
230
218
170
215
229
161
204
146
229
148
188
203
239
221
216
201
193
261
185
194
169
184
176
182
192
141
191
224
143
238
185
146
209
220
183
257
142
161
261
169
225
165
195
262
260
221
215
209
189
199
226
209
176
245
195
201
294
207
210
171
235
214
171
198
232
221
244
179
155
247
233
225
163
161
164
230
209
198
172
191
160
196
170
222
231
158
193
205
249
162
168
230
222
195
206
257
187
213
222
242
178
198
205
172
195
264
182
191
125
167
178
254
231
210
215
181
204
192
226
169
192
214
281
255
221
181
253
148
201
231
121
182
197
204
227
223
207
156
224
202
176
153
216
200
243
237
257
131
235
150
197
171
164
134
244
198
261
198
235
246
179
221
206
232
199
217
209
255
147
214
167
184
241
223
177
206
150
200
211
173
129
216
173
127
193
171
226
177
144
163
198
203
155
197
172
148
241
208
210
150
196
257
277
172
223
150
148
194
170
184
224
202
206
215
178
244
170
204
160
247
214
210
225
195
196
208
200
245
134
191
161
195
168
214
189
175
207
236
223
225
215
184
177
189
216
208
213
191
232
227
241
219
237
144
185
213
220
174
220
254
182
268
242
201
160
183
182
168
227
184
213
197
167
236
217
259
180
223
222
190
240
106
177
196
170
201
178
149
169
228
168
167
201
198
212
263
195
165
239
175
195
179
210
156
246
256
183
227
181
238
185
188
217
216
265
228
179
228
133
198
216
165
175
168
117
235
177
223
222
206
225
225
167
212
175
200
215
142
205
196
171
177
254
226
220
216
208
191
188
194
194
205
209
193
238
226
174
191
210
181
169
173
147
183
167
198
174
221
226
205
200
217
216
235
186
187
217
208
162
151
200
212
107
266
150
211
186
208
203
241
205
182
182
197
197
142
146
199
187
184
173
187
149
156
199
248
167
248
228
235
130
197
240
206
166
214
176
187
223
216
141
233
158
176
215
236
206
187
137
267
239
157
236
204
162
196
213
184
229
126
200
164
188
248
228
171
221
109
170
199
182
238
207
148
231
176
167
210
252
246
154
253
190
232
169
134
182
163
172
188
195
257
200
212
160
153
183
218
267
243
224
157
137
196
169
173
239
214
201
199
136
237
164
220
166
193
219
166
183
176
190
151
283
181
135
199
220
169
117
255
273
210
174
199
182
155
180
236
234
145
229
243
242
268
182
189
216
179
200
192
173
174
189
199
179
213
208
263
173
209
225
217
239
222
176
211
199
199
170
180
190
216
166
200
202
191
157
223
183
222
200
221
268
169
169
202
214
227
186
164
171
284
145
143
191
164
141
213
216
157
205
216
230
301
202
148
229
203
174
184
195
188
153
225
259
220
173
185
208
191
193
189
232
181
236
252
230
210
186
197
247
231
201
182
229
151
176
198
134
221
248
212
194
250
237
227
228
190
186
249
152
237
232
175
170
188
134
254
202
245
175
241
200
224
155
167
222
233
133
227
158
195
156
212
259
235
165
200
276
207
216
202
193
256
189
226
205
231
221
199
255
148
198
225
251
209
204
210
221
189
188
207
251
133
207
291
194
237
180
177
149
220
261
207
159
169
187
226
243
170
257
204
212
214
230
242
224
173
206
278
212
186
176
247
214
138
148
233
124
204
148
169
180
260
169
237
230
218
174
243
204
207
141
184
223
201
200
164
232
196
203
254
143
187
236
239
224
180
256
193
137
179
103
205
219
214
181
145
170
152
243
243
178
251
221
192
230
202
204
249
261
138
235
202
154
184
237
205
195
179
209
225
211
153
208
234
192
172
198
214
177
198
262
233
247
216
161
193
200
201
159
146
163
175
222
207
179
178
184
196
168
210
229
196
158
186
163
160
163
230
219
109
203
231
194
145
247
122
153
223
172
252
178
151
102
256
154
165
120
250
201
229
196
183
186
208
160
204
232
217
164
190
179
202
191
201
192
160
194
188
240
221
231
161
205
235
169
184
248
171
236
226
214
201
195
240
194
300
186
274
215
199
185
234
262
233
165
241
211
188
207
205
172
122
241
165
157
204
196
234
114
213
220
246
94
266
149
205
167
205
221
179
208
180
224
210
186
240
235
221
147
185
193
241
141
164
260
155
222
262
232
213
215
225
201
235
181
198
194
130
174
153
108
165
167
192
236
116
214
240
217
210
184
221
160
284
197
186
216
181
233
192
230
181
173
208
209
226
231
172
231
258
154
207
165
176
159
205
228
140
187
195
169
195
216
190
237
178
232
197
198
219
216
201
183
252
125
243
157
184
172
184
270
205
203
151
225
199
266
132
218
203
241
195
158
136
169
243
172
217
192
236
200
223
135
188
192
244
204
111
255
109
130
223
131
184
168
183
205
182
176
183
142
266
195
168
181
206
195
234
195
137
179
190
230
218
190
267
230
192
195
212
218
250
246
155
217
177
222
222
202
179
171
207
212
156
176
164
192
214
171
197
248
221
202
226
145
224
219
217
213
127
145
212
218
164
186
215
131
183
226
183
174
219
160
165
194
194
194
219
194
206
167
172
226
226
132
230
245
178
185
193
223
158
175
231
249
230
173
248
182
193
202
138
200
197
218
238
221
225
180
167
226
161
131
218
147
249
161
155
160
120
197
197
190
195
162
137
204
197
149
215
188
166
168
228
192
206
200
215
204
263
242
125
169
215
215
202
180
185
184
166
253
185
262
141
199
208
202
144
211
168
212
244
205
144
204
202
245
282
201
185
254
199
191
194
271
202
220
169
154
219
229
193
222
139
237
203
223
221
140
226
229
195
152
166
196
243
206
146
195
231
244
262
140
151
242
209
234
198
248
223
199
156
208
210
169
143
189
207
141
258
161
167
220
194
190
193
232
153
237
282
271
200
237
126
237
249
205
270
237
128
199
151
219
147
146
257
161
267
262
261
218
222
186
252
208
254
199
187
193
198
168
207
216
232
226
155
226
199
175
214
171
183
222
161
222
198
214
215
210
263
209
246
209
196
151
179
157
261
183
176
178
200
211
226
222
228
223
185
217
203
250
226
204
154
201
190
162
175
207
205
196
190
190
171
207
193
222
268
166
228
221
226
209
230
227
169
160
186
168
156
159
207
272
149
201
229
232
215
164
203
150
262
190
242
137
215
228
167
193
205
245
206
236
250
220
250
215
188
206
203
131
193
168
225
198
229
196
217
198
170
230
181
186
190
184
265
203
222
228
204
262
146
233
194
183
198
170
208
197
178
169
217
163
217
224
212
229
175
181
214
245
184
217
193
116
197
157
257
209
187
248
220
177
225
157
216
227
155
251
174
163
214
178
200
162
201
205
248
246
218
255
205
192
236
202
175
214
201
204
201
183
166
212
204
185
245
208
202
235
177
174
201
164
279
221
205
238
176
205
226
191
204
61
190
143
208
179
195
227
213
178
247
212
215
198
121
200
228
175
134
184
181
225
180
167
140
159
197
236
185
265
184
235
199
215
240
231
230
139
258
155
188
165
209
215
185
137
178
198
195
182
266
228
202
201
230
236
174
183
185
223
168
215
280
170
174
264
163
201
236
213
151
173
245
228
242
177
196
192
173
263
255
196
141
179
234
181
232
186
191
216
183
154
181
193
203
180
193
217
223
179
178
254
164
215
158
199
194
230
232
185
256
186
175
173
202
190
261
153
243
203
156
205
230
118
178
196
198
190
157
192
168
182
217
200
184
162
225
172
215
240
178
175
238
170
215
188
146
233
206
187
191
193
172
124
236
228
178
184
239
281
226
183
231
227
103
192
211
218
181
198
243
170
213
215
228
228
209
207
201
187
153
167
226
134
170
180
178
185
181
191
198
195
154
202
180
171
129
208
177
163
216
187
246
187
218
216
257
179
220
171
227
246
145
239
176
202
145
217
272
162
281
166
206
143
233
228
225
228
139
180
187
244
137
157
173
213
215
198
144
191
176
210
179
200
208
205
186
242
238
253
217
203
221
166
164
251
172
214
161
170
167
154
232
169
206
211
186
214
210
207
190
214
176
240
239
185
235
162
150
212
197
196
219
231
182
254
208
184
184
203
197
185
233
212
213
188
129
218
186
188
236
208
244
142
161
181
201
179
190
168
206
188
202
224
181
191
192
136
149
193
183
229
171
233
164
217
155
219
218
203
217
189
183
239
217
205
237
196
235
206
248
254
234
234
219
234
177
160
207
197
156
225
230
184
180
190
214
168
210
218
204
219
188
207
170
192
132
241
217
169
195
181
183
134
225
142
196
197
196
207
193
179
143
170
203
197
209
199
196
126
201
188
173
169
241
149
183
204
213
163
152
186
204
230
216
198
233
172
198
187
193
228
208
199
184
230
158
191
183
191
219
189
181
234
161
173
155
164
171
228
251
210
211
154
217
212
179
161
209
223
173
226
202
202
190
225
225
221
211
208
230
191
235
176
258
251
214
248
232
183
195
158
210
215
204
209
130
195
234
233
193
166
247
170
211
218
176
199
189
176
163
212
208
189
197
232
196
145
267
213
155
213
238
209
172
187
165
194
183
214
123
212
172
231
190
262
178
188
190
227
214
232
220
195
254
217
215
185
179
185
201
186
175
139
206
256
238
159
159
257
228
158
213
184
168
171
174
158
190
135
236
127
226
112
166
240
221
216
236
245
166
242
158
151
197
187
169
131
147
194
204
257
141
188
228
200
142
208
245
206
211
263
232
197
205
114
189
190
171
247
228
199
164
149
124
197
255
257
185
199
214
177
135
155
195
261
246
205
167
149
131
220
260
242
221
237
183
210
210
182
247
203
223
216
242
200
216
193
171
210
182
244
183
223
100
223
202
211
214
163
200
177
143
196
265
269
192
128
165
161
207
213
116
198
214
166
198
225
142
171
189
202
170
168
254
170
264
179
160
224
206
155
214
106
190
232
219
166
199
210
290
167
173
210
238
204
223
196
229
219
221
203
201
171
166
223
290
191
206
197
171
204
162
227
199
231
271
187
249
160
178
189
170
184
244
208
184
221
160
242
144
232
213
184
260
183
160
220
173
181
192
194
170
177
208
175
223
165
181
234
250
248
209
225
161
194
140
182
177
192
210
194
172
206
169
209
242
157
162
247
180
213
118
159
173
161
202
186
228
214
152
168
255
270
198
212
263
88
264
170
217
218
155
210
258
222
129
169
204
229
251
167
223
215
226
287
167
169
197
211
196
147
244
177
203
197
178
177
208
169
183
168
221
260
171
250
223
219
168
133
227
194
157
199
199
215
189
146
114
244
209
220
205
209
191
199
241
193
237
176
158
188
162
156
164
189
164
165
146
197
166
178
217
255
220
185
179
166
216
188
160
191
211
213
152
225
195
221
193
228
248
258
177
230
189
176
225
265
227
263
227
206
167
198
225
176
189
200
231
180
169
215
242
193
224
160
261
187
172
182
258
144
163
189
221
190
187
197
228
208
184
232
232
203
251
204
157
182
168
164
193
174
157
180
149
173
206
221
276
140
224
209
184
157
197
255
205
177
223
238
200
233
186
251
218
211
243
250
198
214
187
184
259
195
196
200
175
161
196
215
204
205
160
197
168
236
161
183
219
179
189
185
233
172
149
185
238
201
178
188
188
232
262
217
284
195
243
185
161
222
236
199
184
204
260
164
196
256
162
170
199
256
188
161
165
218
197
254
180
177
180
263
204
155
212
159
215
236
255
268
153
152
235
245
246
94
188
173
182
204
192
235
258
204
205
170
147
104
212
163
226
214
185
163
115
143
220
197
188
231
230
207
224
189
204
186
246
176
220
197
196
265
153
193
214
220
242
148
133
169
189
258
171
200
202
176
189
156
172
213
225
192
161
216
165
228
260
201
213
189
171
224
188
186
177
217
141
198
163
166
223
205
117
218
195
165
163
229
191
198
168
204
232
158
199
208
243
214
215
219
169
181
232
282
238
215
149
165
225
192
191
190
229
202
235
190
235
208
193
209
220
261
143
174
263
202
217
170
215
199
211
167
240
210
190
149
238
218
204
225
264
189
182
178
207
246
220
193
194
187
186
224
189
215
208
185
198
224
161
166
219
232
163
189
233
241
195
150
170
151
195
189
176
220
182
146
275
195
248
211
212
204
185
195
182
224
155
153
193
212
124
169
200
189
211
187
165
213
145
196
141
179
183
165
123
226
229
191
228
219
182
224
207
230
166
167
216
174
240
191
179
192
168
175
174
192
242
208
197
130
172
172
227
231
205
201
188
206
195
228
150
188
239
203
189
215
213
111
262
244
200
222
144
247
144
218
221
175
208
141
153
216
199
159
152
131
222
270
185
241
246
209
193
170
178
228
276
170
188
203
174
194
193
162
210
231
245
146
177
247
235
182
129
227
176
238
198
206
165
186
183
190
204
242
229
155
188
165
183
217
244
190
181
200
246
241
205
176
184
178
187
236
175
219
257
119
218
179
151
243
247
223
180
171
237
211
207
176
219
257
204
203
187
233
191
170
222
253
272
175
198
205
218
193
175
127
112
180
158
164
183
131
222
188
212
206
244
150
191
239
200
217
201
309
210
205
228
211
184
179
139
191
194
138
203
176
157
196
205
149
163
195
148
207
252
117
232
139
220
204
274
159
231
216
232
167
223
197
129
211
180
194
203
207
216
185
149
210
139
230
222
130
155
228
222
206
240
185
113
245
170
226
240
131
159
254
226
179
128
200
231
229
191
195
208
200
227
169
225
178
153
180
179
215
256
204
258
212
195
176
246
220
187
216
165
240
239
216
249
230
227
169
199
246
189
136
232
195
154
211
209
222
180
159
249
234
229
138
181
186
210
186
205
216
204
172
198
213
184
298
125
197
116
208
127
210
173
191
176
230
183
182
166
192
188
227
231
287
202
135
208
186
178
249
186
235
204
201
164
210
238
175
196
255
201
224
212
186
202
168
171
188
168
204
128
144
212
202
182
163
184
209
219
213
236
165
202
177
205
206
212
192
185
200
223
238
200
211
187
194
198
138
198
200
139
200
157
206
216
171
176
218
167
209
155
204
182
215
160
212
191
171
198
147
214
220
206
219
179
213
172
229
262
240
169
134
198
184
248
217
236
191
205
134
207
223
210
194
186
252
188
239
186
179
278
262
182
160
251
178
185
270
194
239
190
180
146
195
175
208
261
182
272
199
195
185
213
237
185
319
198
213
165
178
204
146
174
150
196
234
146
217
185
248
224
264
252
241
167
191
211
169
220
133
256
173
179
167
202
173
266
251
231
135
170
202
199
270
207
190
200
204
253
153
180
144
245
182
154
157
253
185
197
220
123
244
204
254
224
168
220
190
158
134
263
246
241
136
200
241
160
113
142
228
211
115
142
195
170
126
191
222
173
198
153
182
217
174
192
183
192
139
244
234
192
226
160
251
207
186
193
229
186
277
187
181
175
200
233
222
132
150
231
201
235
256
213
190
130
156
201
203
160
149
142
186
195
211
248
182
182
189
189
196
215
166
212
211
233
193
177
230
205
142
219
219
212
173
143
235
207
212
178
206
182
179
214
205
198
207
143
187
266
185
228
243
184
186
243
258
239
218
238
173
182
284
211
209
189
220
215
180
185
277
260
256
239
171
169
197
160
208
158
155
221
194
237
108
188
224
134
186
221
208
165
242
227
157
233
208
186
140
213
140
269
188
196
148
172
217
192
192
217
187
220
239
156
224
200
136
197
237
163
116
160
140
201
137
165
206
130
196
164
186
215
219
198
186
211
164
218
245
139
147
200
179
185
150
106
184
157
185
144
192
175
182
204
223
206
216
207
146
238
195
258
216
238
206
228
257
227
158
216
131
187
194
192
190
183
172
212
114
237
236
170
183
196
228
192
183
149
191
203
166
214
189
177
225
265
167
185
166
236
194
216
201
229
200
227
220
165
156
188
174
205
221
158
191
195
211
180
192
241
160
185
180
208
233
232
227
216
166
163
226
225
196
241
175
201
188
226
223
189
251
208
220
197
184
215
177
217
173
253
206
177
219
175
205
263
216
235
260
170
223
174
180
226
191
194
218
142
217
210
253
185
216
164
213
162
118
195
190
240
155
196
84
217
244
184
204
244
195
177
191
229
274
151
216
168
215
209
174
191
167
151
210
223
208
184
256
220
165
109
199
181
208
220
228
220
160
185
242
253
130
214
204
197
255
234
166
221
207
200
203
239
172
201
248
209
167
195
195
234
222
229
237
218
208
262
235
206
233
176
270
158
199
230
161
266
135
186
229
163
250
190
230
164
211
237
152
198
183
258
238
234
208
183
175
255
253
209
206
239
184
255
178
190
211
135
238
216
213
253
201
208
239
114
197
168
199
249
230
163
226
237
186
174
207
131
209
234
223
222
193
205
238
217
161
172
189
199
153
214
198
195
184
194
188
228
195
239
197
184
203
249
199
220
237
197
202
245
233
227
251
198
277
125
201
186
210
170
203
138
241
212
186
191
245
182
123
246
199
205
280
225
176
229
139
205
258
114
186
215
107
197
200
207
235
236
170
162
219
201
192
230
258
178
246
226
198
159
198
249
182
223
245
196
135
206
228
200
194
197
190
217
215
154
191
133
197
197
240
228
211
160
183
201
228
177
188
177
214
180
211
211
183
197
250
222
249
219
122
142
272
252
151
168
174
177
198
160
205
160
183
219
192
227
188
201
157
220
156
255
215
176
262
211
188
177
212
251
157
243
203
228
206
201
203
266
252
231
223
219
245
231
216
231
179
195
177
170
191
191
212
196
140
165
189
239
263
196
189
237
179
247
218
213
273
196
137
170
160
176
189
260
162
176
140
258
217
134
117
201
238
232
182
232
134
144
212
206
202
224
129
196
214
220
222
204
254
204
212
244
172
213
264
227
191
202
215
180
215
196
211
236
227
157
177
147
222
221
233
259
240
239
114
206
216
203
185
173
107
140
222
229
191
208
176
154
206
231
194
215
294
214
249
228
239
162
200
203
198
164
165
178
179
198
209
217
223
222
191
215
181
249
204
234
120
150
221
198
195
113
188
209
172
192
202
164
203
162
198
205
206
248
180
186
173
186
221
208
212
186
244
206
137
189
236
234
155
113
210
212
202
250
183
166
253
183
198
144
212
239
230
217
193
211
169
229
218
176
249
194
222
218
164
210
191
195
181
224
177
212
195
236
204
210
189
201
191
203
244
152
177
247
176
199
227
117
181
221
171
271
247
230
181
175
171
82
230
189
186
146
197
238
205
194
153
198
174
262
195
179
188
215
201
191
221
204
204
100
187
225
186
249
147
181
219
224
229
208
188
178
203
166
195
239
183
183
248
207
181
208
186
186
170
193
211
149
207
167
225
183
199
218
209
141
203
162
178
261
181
185
162
140
179
165
210
200
217
148
185
223
203
187
151
246
222
181
215
180
241
177
249
231
226
237
206
215
222
171
142
244
257
283
182
230
280
168
216
142
242
204
183
190
175
148
159
242
240
244
198
173
198
188
191
238
235
243
211
198
181
148
206
145
166
219
220
223
209
226
248
237
211
192
278
192
180
156
169
270
201
233
250
232
223
154
200
260
240
168
243
275
176
231
194
207
252
178
166
172
249
164
226
118
233
165
79
272
186
243
259
151
186
256
141
204
259
224
258
206
209
111
188
205
178
226
240
190
190
174
247
225
235
188
160
223
259
188
165
196
182
253
212
224
209
154
230
204
153
225
194
281
211
172
161
210
98
243
150
165
232
187
185
211
165
244
171
193
222
192
194
217
172
160
223
237
195
167
214
172
198
177
260
247
160
181
210
211
184
172
174
219
190
227
195
214
221
229
221
131
203
202
224
199
203
212
195
256
248
155
220
195
232
157
175
199
197
199
220
207
145
196
225
209
192
212
238
215
150
173
293
186
138
206
170
145
245
212
169
152
240
194
159
200
210
220
134
206
211
202
199
220
201
152
201
176
223
207
198
145
199
169
176
203
237
187
239
139
210
221
190
187
192
179
192
249
197
202
119
214
235
164
185
182
222
255
197
153
215
109
221
211
232
232
153
164
215
173
213
245
233
271
211
259
224
152
217
204
193
188
177
182
161
195
214
239
137
204
195
224
225
191
201
145
253
172
269
189
232
229
202
154
253
172
240
223
216
212
249
190
196
166
237
228
144
237
147
182
257
194
217
218
204
229
150
214
191
172
130
191
212
194
264
235
194
196
215
139
197
214
156
147
202
164
186
184
197
183
269
227
198
174
212
239
253
191
221
193
210
125
229
221
223
183
233
216
170
188
187
208
209
206
193
205
226
232
106
212
229
215
236
177
149
111
187
212
178
240
158
199
229
229
210
215
203
185
159
211
202
150
169
181
189
277
234
211
180
149
262
205
249
240
193
234
224
150
183
233
226
220
176
186
248
193
216
220
188
206
184
191
205
200
217
198
124
184
156
247
169
167
256
175
208
230
215
184
228
178
226
198
202
245
264
206
227
221
220
251
212
202
204
237
201
159
167
197
202
167
235
194
206
209
239
224
199
226
215
192
153
222
157
283
191
174
212
172
194
193
185
163
214
168
143
220
193
237
116
146
263
209
204
174
226
213
223
227
157
157
161
212
215
226
236
191
71
155
172
230
196
154
244
185
223
263
273
157
156
192
190
216
184
217
207
137
266
193
241
183
157
176
142
206
176
138
197
188
214
183
239
202
188
223
205
239
209
245
196
163
241
178
161
187
179
235
143
178
199
186
150
206
206
225
230
169
194
189
247
168
176
230
154
222
197
181
215
198
184
226
243
211
265
221
178
207
271
232
171
210
289
214
197
202
246
170
192
228
223
165
219
200
207
171
139
208
216
211
173
205
145
211
166
199
202
160
172
243
256
241
212
172
226
175
192
199
199
208
257
202
178
147
197
189
144
223
226
203
143
171
180
184
187
222
177
200
151
244
145
178
224
142
135
156
208
218
190
212
234
178
217
156
153
219
140
165
159
207
212
190
163
221
190
199
189
211
259
150
251
174
208
173
207
216
181
241
254
232
216
164
214
201
231
207
232
163
186
226
242
209
235
205
223
186
223
231
127
219
254
175
187
170
152
209
261
202
205
167
141
215
176
170
228
236
167
190
194
203
194
176
211
122
219
258
196
172
218
256
143
199
190
211
236
164
197
211
197
205
217
175
252
131
255
208
237
225
183
176
194
228
229
185
183
168
217
199
151
159
184
154
209
170
209
210
199
243
141
229
210
211
175
188
268
246
179
173
208
213
168
189
182
241
217
222
204
183
238
129
212
187
178
161
154
235
186
206
220
241
267
226
220
127
186
245
226
261
240
205
187
243
227
119
187
190
172
226
195
196
227
134
222
165
205
185
172
219
254
170
224
166
225
196
229
207
224
226
218
158
229
229
230
139
242
239
174
233
130
165
177
198
172
180
181
135
187
180
217
199
221
215
217
237
167
149
183
183
214
166
173
188
159
171
239
161
190
193
201
240
219
192
225
198
200
141
200
228
181
204
162
226
196
213
252
193
205
180
271
149
177
198
257
134
191
242
156
175
218
235
144
212
262
182
241
204
219
181
137
230
148
230
205
217
228
176
255
131
189
154
241
214
239
179
206
215
215
193
230
250
121
187
197
229
214
223
183
181
210
172
199
183
254
196
219
217
180
161
238
178
254
158
212
209
209
219
152
248
207
200
223
175
201
206
149
197
172
202
211
189
177
211
181
247
177
192
142
228
244
139
257
197
170
145
212
171
173
213
229
249
180
230
235
203
183
210
184
142
197
205
210
166
190
207
124
232
230
215
204
178
227
152
243
256
248
184
180
223
266
182
184
215
214
198
179
210
186
197
189
127
193
182
215
201
234
189
241
211
263
184
263
123
158
217
157
223
185
243
174
247
153
197
226
221
206
248
236
173
207
142
173
141
181
209
148
165
167
205
215
254
215
193
255
168
197
233
170
222
116
164
128
202
173
175
235
245
224
211
224
244
149
231
209
183
193
260
239
147
204
200
174
211
216
210
264
164
186
195
193
199
223
182
244
219
252
204
248
260
182
186
262
132
260
204
214
171
213
229
236
231
201
192
197
214
219
213
210
143
187
127
173
189
179
166
189
145
230
223
211
215
195
183
233
196
162
222
169
207
143
176
189
208
215
177
219
207
173
161
164
196
219
187
203
146
196
214
167
162
243
192
236
206
281
248
223
220
239
225
214
175
204
195
208
237
219
239
197
201
160
213
149
168
175
172
210
268
232
168
245
205
192
165
85
191
155
161
163
213
206
169
193
172
173
187
176
250
107
239
152
226
178
158
130
172
201
249
181
211
177
199
202
185
143
236
229
191
229
255
191
200
180
185
154
196
228
204
232
183
153
216
188
158
165
245
186
262
246
173
219
194
186
140
220
221
208
248
226
306
229
205
216
214
213
242
167
211
182
187
220
185
230
265
226
155
215
185
245
203
235
183
208
183
180
244
195
199
220
212
235
209
231
208
178
152
270
219
221
213
183
196
162
157
187
196
175
171
173
197
205
154
217
178
177
165
169
206
157
189
200
209
189
183
227
178
223
206
150
267
151
201
120
215
174
210
261
191
207
209
182
181
233
191
213
218
235
217
148
197
147
178
189
256
212
191
138
188
153
179
202
121
232
212
135
214
171
176
232
211
202
212
191
235
208
212
219
277
161
220
189
235
114
212
259
187
173
208
254
277
162
180
194
193
193
191
256
178
176
245
200
181
206
202
178
199
196
238
189
188
169
219
207
181
136
169
228
147
205
134
197
193
191
283
210
174
181
210
250
217
189
162
231
232
156
167
185
177
186
264
186
197
205
185
165
262
226
174
196
223
145
196
180
180
193
273
179
170
235
175
175
267
180
188
157
176
183
182
167
165
233
202
190
233
172
186
199
206
219
196
204
250
243
199
173
172
169
179
206
180
231
196
130
237
218
191
148
217
248
253
232
266
195
181
223
212
198
214
199
191
172
182
190
186
198
161
143
209
263
227
144
209
217
214
188
203
203
233
168
198
200
234
214
231
174
215
210
168
228
180
190
188
195
223
171
171
169
186
170
204
135
237
230
145
218
161
228
126
262
230
153
147
197
218
212
192
180
231
260
193
167
149
197
211
239
236
233
265
210
172
234
145
183
273
204
167
215
165
215
224
134
211
231
249
113
177
228
143
158
196
243
120
215
167
203
230
135
211
189
82
128
243
161
226
250
194
230
151
214
196
164
177
236
235
208
250
172
196
248
221
247
222
200
215
188
204
209
175
194
209
196
151
153
178
175
157
186
253
187
212
251
211
204
195
202
207
219
216
193
162
221
170
218
193
212
227
193
221
185
202
148
190
197
216
205
166
218
211
239
184
194
207
199
220
136
168
212
214
134
193
224
212
194
189
188
242
221
259
170
141
229
226
228
189
133
238
187
179
184
225
189
184
155
209
243
226
205
219
215
218
190
184
178
232
199
160
168
193
249
194
188
228
226
204
149
202
199
194
159
236
152
153
260
211
172
212
123
215
226
159
208
200
215
174
170
144
183
138
250
187
212
208
179
206
210
201
128
269
230
207
189
217
208
225
261
219
219
147
131
163
160
220
169
196
271
260
208
231
195
273
183
189
169
243
234
198
220
189
253
128
203
250
189
187
203
247
166
149
159
176
165
192
233
207
166
225
127
242
211
147
170
163
230
215
220
190
201
218
143
181
159
195
245
229
157
231
175
214
209
221
232
159
258
210
178
244
185
206
169
167
159
232
238
231
158
250
179
205
193
188
182
164
133
203
201
188
186
210
297
184
241
228
169
195
160
241
212
231
185
226
200
212
230
191
172
151
192
190
207
182
182
220
196
193
232
212
247
209
208
202
150
202
227
179
238
158
223
124
192
202
190
259
159
232
268
157
189
154
226
176
237
202
198
240
188
185
178
246
216
166
210
200
187
161
275
180
188
180
145
282
147
181
142
170
123
191
120
228
295
185
201
291
223
280
247
173
143
225
182
168
235
179
183
184
160
204
203
172
164
174
155
244
251
188
208
267
125
205
173
118
248
274
177
198
226
189
127
197
240
179
169
229
210
251
196
176
104
235
200
171
154
206
189
185
199
182
218
167
208
259
185
232
205
229
211
195
237
186
224
249
206
184
133
110
215
167
206
165
175
187
215
220
198
165
243
231
176
205
240
222
211
195
181
140
172
206
206
168
214
199
167
239
156
196
123
230
173
293
227
219
262
164
181
171
187
211
229
225
215
172
167
191
169
225
172
201
231
201
113
128
228
196
200
217
195
190
227
203
226
209
225
248
191
170
139
200
237
230
211
234
183
215
206
226
207
214
219
250
199
226
226
210
210
247
169
150
225
216
238
161
229
157
180
198
202
142
229
215
218
218
212
219
193
176
180
159
170
212
215
163
233
179
223
206
217
201
237
172
209
180
274
229
245
176
176
162
220
226
222
177
235
213
253
198
244
223
204
238
238
255
159
144
224
183
186
243
182
249
224
197
218
218
155
231
175
206
261
140
177
237
188
205
195
224
220
202
187
178
221
243
173
247
250
206
189
231
229
196
176
155
244
128
183
224
198
182
180
193
275
218
237
227
228
209
214
257
148
234
173
186
212
152
188
148
210
207
192
196
175
250
246
207
272
200
202
190
182
189
257
250
177
175
192
219
243
130
255
253
199
222
214
201
215
179
194
241
252
164
183
123
131
190
246
232
190
215
162
208
131
190
177
242
211
240
74
241
230
191
175
244
187
202
160
199
185
232
214
256
151
178
168
217
209
214
205
218
227
232
237
220
214
183
200
185
183
176
171
152
268
189
240
205
240
230
211
214
210
217
113
174
179
164
177
228
175
169
146
201
180
155
240
222
160
191
177
160
222
226
148
148
231
203
221
199
235
196
130
222
140
150
158
145
179
268
169
155
262
170
227
147
200
185
156
218
227
222
173
167
225
276
201
211
167
215
208
238
263
179
171
229
143
192
204
173
204
232
229
171
177
181
229
215
196
222
179
203
161
148
203
175
223
230
239
187
266
183
213
224
286
187
145
208
205
206
199
151
145
241
242
235
178
225
190
257
193
164
197
195
174
142
229
176
207
252
176
234
154
223
262
215
135
175
216
238
243
196
195
173
201
190
232
270
157
211
225
222
167
250
208
226
223
240
245
206
197
200
194
192
214
232
187
252
181
206
180
221
218
198
180
251
192
171
203
216
178
162
235
246
168
211
165
225
177
224
176
226
225
203
160
198
188
202
187
255
206
181
265
214
174
144
178
177
194
258
248
204
168
176
207
221
210
222
216
248
234
253
225
208
194
167
184
200
199
169
185
183
214
223
233
163
204
203
194
209
206
238
191
150
208
238
175
209
209
191
211
202
199
293
209
141
257
243
211
228
205
167
221
141
189
177
178
204
144
169
170
150
233
160
200
221
182
263
186
171
209
193
213
205
196
227
200
117
159
187
157
226
161
163
202
224
175
224
208
166
164
216
171
208
197
217
231
127
281
166
199
139
161
244
243
233
197
216
161
235
149
187
227
202
197
226
191
186
206
192
251
203
165
186
178
183
225
199
180
200
177
202
159
232
178
190
149
200
184
217
160
197
268
252
185
188
215
145
208
180
216
209
279
181
232
270
191
243
120
202
237
210
203
234
197
194
240
191
223
178
173
250
213
197
197
177
181
123
205
235
213
221
161
209
235
200
200
205
265
217
178
167
186
132
191
211
225
255
155
212
222
215
174
170
133
179
133
187
200
204
244
181
242
205
217
122
192
149
196
231
259
248
231
184
225
205
224
171
206
205
187
148
223
275
184
210
205
170
159
253
171
196
299
208
207
95
184
222
195
203
201
250
227
165
169
188
242
206
159
196
195
222
197
221
189
130
239
189
142
224
218
180
183
279
188
253
180
188
160
219
229
234
185
213
125
121
235
189
191
216
206
183
246
155
147
243
212
213
177
186
204
196
231
194
217
242
236
241
220
185
175
245
189
144
174
202
161
182
240
210
157
203
212
270
217
202
243
200
238
189
192
212
209
246
222
150
153
214
234
146
193
239
207
199
193
180
229
200
214
179
166
190
229
212
234
178
194
170
155
192
192
182
123
157
231
235
229
165
229
246
172
201
207
233
153
169
225
198
252
236
134
212
250
156
144
223
163
241
216
190
238
180
159
186
172
162
197
191
232
250
172
243
203
224
215
175
233
177
241
189
191
198
172
193
246
198
176
220
190
199
252
186
144
212
213
201
197
216
213
185
197
196
147
129
120
266
280
164
156
165
235
127
263
264
213
286
198
178
196
215
141
192
220
205
165
184
212
196
238
167
217
179
153
195
255
170
205
165
218
228
181
151
145
203
164
153
172
213
150
222
243
173
191
217
224
159
222
171
224
232
168
216
187
160
220
206
244
204
185
157
203
173
162
170
182
201
195
196
149
258
207
232
182
193
246
238
239
166
251
237
147
228
200
224
196
219
247
176
221
169
162
163
220
192
201
153
241
144
115
241
147
239
199
237
205
170
212
207
185
230
196
123
163
219
186
193
217
244
245
219
224
184
197
204
228
204
198
177
152
168
221
232
175
251
163
128
148
178
245
163
181
250
223
191
199
211
241
157
258
163
218
246
145
180
144
253
146
236
154
76
223
155
220
175
222
245
154
222
215
215
247
139
132
200
189
220
216
173
203
218
205
214
222
197
192
246
187
196
185
194
281
219
135
214
164
213
185
231
191
226
199
228
210
219
247
233
165
193
163
168
176
218
169
203
194
192
204
230
188
194
160
197
218
154
212
218
152
241
151
228
224
157
119
223
274
184
211
216
198
181
237
223
145
210
189
173
205
152
213
187
184
237
210
186
221
117
229
232
246
229
180
206
204
198
176
160
195
227
176
228
148
214
193
256
183
164
134
184
174
182
191
231
207
201
239
220
154
204
254
227
208
222
237
213
209
183
219
236
181
141
269
138
287
226
179
232
177
239
225
207
227
233
171
219
260
170
154
178
175
243
276
189
199
188
206
169
197
243
174
219
178
180
231
250
140
222
240
153
177
213
231
221
132
261
252
237
170
167
156
160
159
170
218
173
214
200
213
199
131
265
208
226
197
203
199
245
191
240
174
214
223
178
252
199
174
185
169
158
150
164
222
205
163
196
193
163
217
253
238
195
246
253
236
199
199
216
207
223
151
198
228
232
170
201
169
149
200
242
184
162
266
166
214
150
197
218
208
168
186
230
206
245
230
221
191
188
230
219
195
205
233
142
197
262
208
142
174
117
156
235
184
129
142
231
182
173
243
249
149
138
206
189
198
221
195
174
189
182
229
224
191
188
153
143
227
215
235
233
180
230
169
181
254
200
169
125
215
217
208
192
212
207
206
180
205
174
194
231
200
201
187
151
170
202
169
256
188
201
219
228
248
198
158
214
219
171
170
183
222
265
124
202
188
241
187
194
208
224
209
255
216
155
205
162
239
117
235
208
169
226
164
186
214
199
235
169
249
245
179
232
215
164
200
251
224
205
160
205
151
90
221
203
248
262
206
206
138
232
142
201
192
190
156
229
126
176
185
231
161
211
258
176
204
193
240
183
214
170
198
191
165
129
178
192
235
166
232
166
189
161
199
230
185
132
202
174
200
145
190
191
215
294
222
248
199
164
172
133
237
196
186
253
215
242
216
197
254
256
174
237
135
195
208
90
223
169
222
165
235
246
254
191
228
167
150
197
183
230
196
180
159
228
202
225
168
226
232
192
190
223
238
209
197
174
215
214
254
190
262
159
177
161
192
276
188
185
195
209
209
198
252
233
157
166
179
190
155
219
219
222
151
244
216
140
237
164
213
166
201
168
222
230
223
231
279
231
197
179
160
231
162
246
204
210
235
188
212
203
144
204
251
200
191
157
249
183
217
186
217
199
211
167
167
240
200
135
236
192
177
172
231
239
181
266
175
204
200
215
233
217
190
134
158
151
191
196
222
239
239
265
142
195
232
158
242
192
191
225
201
186
193
164
280
162
238
189
212
152
207
223
175
230
200
250
206
188
165
211
191
236
211
179
189
160
203
122
177
191
121
232
209
218
236
205
154
210
155
206
199
189
158
177
225
189
178
227
214
181
208
197
170
238
218
201
217
174
228
190
189
155
214
251
163
179
232
224
162
157
226
142
194
216
206
282
221
199
208
179
205
220
137
203
201
159
197
171
269
218
183
174
260
226
195
185
218
254
166
194
236
181
208
134
198
190
207
175
248
187
272
140
203
204
267
176
200
187
173
194
193
205
164
181
201
232
217
182
207
174
266
191
188
188
178
214
179
195
151
212
223
243
155
217
180
157
234
255
222
207
241
126
184
210
244
233
155
169
176
180
214
162
173
216
215
232
125
236
167
159
196
177
213
213
197
248
163
193
188
201
226
219
222
209
126
235
206
208
169
185
155
194
223
124
231
199
192
162
228
231
189
143
183
233
206
171
169
249
221
198
206
210
145
149
229
173
149
281
230
143
196
228
217
202
205
228
250
201
220
190
198
226
179
246
213
149
255
196
214
177
234
164
238
156
156
205
189
224
199
161
263
242
133
202
163
142
207
254
232
227
200
213
209
254
222
178
164
228
184
246
168
184
262
247
237
152
221
140
180
259
160
161
248
238
178
185
258
213
234
129
169
223
177
161
195
245
238
195
223
222
202
151
193
258
208
143
202
178
207
183
259
219
110
249
146
182
233
209
222
237
195
169
228
189
131
205
124
183
233
215
272
218
124
234
184
231
202
216
216
203
204
182
160
169
194
169
142
135
210
170
233
216
198
194
166
153
162
243
172
198
185
209
126
227
220
176
188
203
160
209
184
242
186
250
205
166
210
150
252
225
255
181
221
229
223
207
230
216
211
211
189
183
207
203
289
172
185
222
215
196
172
186
203
228
201
170
218
163
190
150
169
200
290
201
211
158
181
145
167
191
198
172
201
237
224
168
198
164
163
184
217
239
219
96
171
222
194
195
235
212
188
191
198
217
225
202
209
203
201
156
257
224
173
216
175
217
228
240
237
179
230
215
171
280
218
166
275
163
170
203
184
196
160
164
119
157
154
172
223
241
251
268
216
176
177
191
150
179
224
157
185
146
195
220
206
244
186
193
184
237
183
207
147
192
183
204
218
171
210
240
203
221
149
224
265
192
213
161
182
226
207
267
182
96
211
195
195
205
179
218
211
165
220
261
216
266
271
222
206
277
174
183
85
239
190
204
177
177
183
220
192
220
193
210
150
189
248
181
220
198
237
247
226
212
169
177
173
191
238
145
174
178
197
175
174
184
148
238
213
187
203
235
195
169
256
195
243
247
149
212
201
257
199
142
185
231
235
180
205
251
196
178
225
145
245
256
225
230
169
183
203
211
213
227
268
157
177
186
242
187
152
215
177
220
206
239
231
191
222
190
182
160
182
207
202
207
173
192
150
136
202
230
202
111
142
220
271
231
178
131
254
228
249
235
200
194
209
191
195
239
204
208
194
180
168
161
188
251
160
174
218
178
198
251
160
212
182
177
262
198
198
190
238
201
211
235
210
159
190
258
249
173
207
190
250
143
144
204
151
234
199
153
173
234
179
200
210
235
181
250
202
127
198
260
196
160
222
220
201
176
201
249
193
194
245
195
179
249
231
172
195
215
189
164
218
233
241
141
216
158
212
243
269
213
207
193
233
244
205
210
168
270
165
151
171
150
201
189
200
204
147
184
160
187
177
252
215
155
181
205
244
213
157
196
186
188
224
252
190
208
218
182
239
162
180
229
159
211
202
153
186
191
192
212
222
252
174
223
210
212
221
234
190
214
232
183
184
192
215
209
203
115
146
292
157
228
248
178
123
130
175
142
149
169
153
240
268
231
196
142
201
222
192
111
237
224
236
188
212
189
151
169
207
265
171
192
233
181
211
215
276
205
199
215
245
175
261
248
175
126
171
181
206
240
190
161
207
199
150
192
98
187
139
207
184
204
232
154
156
184
260
216
266
210
205
239
159
208
220
152
147
149
127
150
185
189
218
178
247
181
196
209
188
231
230
185
195
227
237
209
175
213
175
180
135
176
198
186
207
242
259
189
243
237
194
207
144
209
240
217
197
143
229
228
197
223
206
261
196
270
212
108
228
197
213
161
181
200
160
187
191
199
143
150
160
162
199
200
190
216
113
226
229
178
197
242
120
207
198
205
220
164
238
102
203
174
186
171
187
215
205
195
165
223
235
164
167
207
219
218
236
185
208
192
196
215
182
229
193
195
230
241
180
173
197
175
167
197
193
221
226
198
193
195
123
200
202
174
257
243
224
171
213
159
162
244
225
223
223
142
287
207
184
188
202
129
185
203
166
239
240
209
187
225
235
144
234
229
172
250
247
185
191
204
209
142
147
271
241
208
181
233
253
171
164
156
240
171
167
194
131
186
249
256
156
140
183
225
164
159
159
198
128
195
175
202
171
191
158
252
197
159
211
206
204
263
192
194
208
203
212
231
214
185
191
211
248
266
196
241
204
127
225
192
204
230
179
214
218
194
147
259
210
240
242
250
167
227
224
193
201
189
145
237
209
228
178
217
224
259
176
220
208
181
186
200
197
210
178
185
174
152
218
218
243
177
175
181
144
247
177
229
136
206
187
218
232
195
123
207
184
266
225
189
176
208
160
204
263
161
209
173
237
200
157
193
215
158
246
219
250
167
156
207
206
167
168
158
147
196
250
209
206
173
189
241
202
227
182
170
204
211
151
213
227
199
230
262
223
222
210
228
137
221
186
222
166
161
228
183
192
242
218
215
249
231
154
160
248
249
206
190
162
209
226
150
285
235
245
216
208
185
220
199
168
243
232
191
174
243
157
158
220
172
251
169
205
284
223
202
221
146
140
173
172
169
199
188
236
233
236
218
192
232
215
176
206
199
182
231
205
169
235
226
156
235
223
155
184
214
112
161
181
243
175
215
191
212
204
218
226
218
185
207
157
150
178
154
208
208
208
178
201
213
132
216
205
170
208
208
228
169
201
147
190
213
187
205
228
201
235
220
215
199
236
236
157
207
182
169
142
175
171
201
230
197
213
228
269
222
118
237
194
189
222
252
180
164
167
243
165
230
240
228
178
225
227
202
184
213
169
159
228
197
215
122
244
279
208
185
189
238
168
176
162
191
159
218
193
244
213
230
204
202
182
231
250
238
197
117
226
189
230
216
179
215
189
226
234
230
173
223
193
167
203
246
187
219
150
195
207
227
171
210
179
179
239
203
215
200
210
153
160
166
157
178
213
176
240
208
213
221
241
219
226
198
231
222
181
198
203
230
180
182
186
218
153
202
209
222
208
165
171
257
208
210
194
172
210
146
205
252
189
226
196
212
224
110
197
183
211
237
192
139
211
253
250
143
204
127
177
165
214
254
178
240
128
246
166
190
170
155
134
176
197
181
132
208
156
223
272
226
195
260
176
194
145
236
195
171
277
234
164
193
154
168
261
234
223
228
159
196
197
156
165
234
235
175
191
236
203
148
204
162
175
218
222
204
208
213
227
208
194
226
211
226
157
246
194
199
239
174
250
183
169
195
197
251
222
213
174
231
215
272
247
238
228
171
237
160
108
187
197
264
148
267
215
165
233
156
162
203
173
202
136
199
202
227
192
221
124
195
236
225
220
213
196
153
154
253
218
229
201
260
199
235
236
230
172
171
194
212
137
184
187
232
211
236
232
220
290
234
250
263
140
202
230
199
247
149
188
176
211
195
225
173
209
145
224
160
242
172
274
177
217
169
191
260
164
152
245
163
162
253
217
205
184
172
201
166
213
220
232
178
157
198
240
240
232
207
224
123
241
226
187
141
190
222
193
241
214
187
161
260
176
263
226
238
206
274
242
180
203
227
255
183
137
160
222
227
197
159
188
112
207
157
173
168
173
215
154
166
223
250
232
259
210
215
193
245
194
179
198
172
204
233
234
153
218
187
172
241
194
179
180
213
178
220
117
213
220
199
200
163
183
191
169
170
184
244
216
206
225
200
232
180
209
241
250
204
192
167
208
201
186
214
222
237
200
212
215
253
182
273
211
145
205
211
162
186
198
205
157
238
186
235
184
192
186
270
228
197
165
190
249
275
241
245
243
200
183
221
192
209
190
174
141
284
136
173
141
234
164
206
182
191
232
184
183
254
181
248
136
147
146
154
211
225
184
176
220
164
208
252
179
180
242
183
188
168
246
207
191
205
236
208
189
225
205
153
210
189
201
225
194
159
230
207
130
209
170
191
183
161
212
183
215
211
192
199
244
233
185
157
245
191
191
211
172
198
256
235
158
208
184
138
201
174
165
183
219
165
248
236
229
126
247
201
175
184
135
218
200
200
252
216
197
246
219
202
160
219
167
216
209
198
215
179
235
173
156
242
222
203
223
213
220
237
175
237
196
177
242
190
223
169
210
269
228
178
166
187
230
233
217
137
172
226
202
197
244
178
188
199
82
237
224
183
155
209
178
146
194
180
180
188
195
153
183
148
224
204
208
190
193
199
158
182
192
134
212
230
226
193
237
222
233
206
240
163
292
246
184
205
180
164
169
238
247
261
183
207
217
180
225
205
146
206
240
261
229
249
240
224
215
178
204
213
204
197
196
246
121
176
183
218
203
190
186
144
223
211
236
201
207
174
200
170
207
184
256
201
198
173
127
247
211
173
206
218
202
249
157
243
141
202
208
179
163
184
151
231
235
201
144
205
234
221
196
244
262
69
172
187
206
227
209
214
160
214
178
214
183
230
179
182
208
217
251
188
170
202
185
213
244
226
195
182
213
203
197
220
211
155
221
187
172
157
238
230
250
133
204
190
180
191
179
257
228
196
211
211
239
186
212
174
217
206
236
192
206
157
164
189
223
180
225
116
220
230
194
238
185
129
185
181
205
298
250
159
159
242
200
212
209
246
186
166
148
163
197
214
208
226
250
191
226
188
200
151
229
194
220
160
145
194
185
183
235
217
168
151
134
140
211
221
226
229
173
184
182
193
240
228
223
210
216
223
179
229
240
205
215
178
185
190
137
247
219
216
265
160
165
206
239
197
280
175
160
190
194
164
208
173
152
207
231
262
193
221
158
157
240
210
282
191
190
227
263
208
221
218
238
178
194
176
215
189
229
212
184
260
182
231
167
232
203
205
244
207
257
271
199
245
157
182
235
161
171
233
222
163
231
201
204
210
175
164
159
240
232
240
217
196
178
208
221
199
229
142
203
203
163
242
185
184
199
198
149
123
231
213
230
200
209
222
161
220
213
127
215
165
209
247
229
241
218
167
155
218
121
221
241
171
241
245
169
183
184
193
201
182
220
227
236
175
219
158
134
133
212
201
210
166
186
215
139
183
213
98
171
175
231
147
228
133
185
207
199
236
186
155
227
203
217
215
226
201
180
230
228
194
210
160
215
215
172
246
162
215
220
222
142
235
191
147
193
225
113
222
186
217
215
195
195
213
221
214
193
155
183
252
196
195
185
251
203
197
258
197
168
230
195
242
203
253
245
214
230
208
197
253
229
220
275
180
200
227
139
271
235
199
200
183
173
173
223
210
208
213
194
200
284
243
236
184
162
212
182
207
212
226
152
192
204
211
239
241
219
136
201
136
192
236
213
157
173
243
161
181
165
154
153
263
180
248
236
232
198
264
182
217
183
228
194
139
253
176
217
236
193
166
208
211
195
233
214
236
183
260
212
146
192
183
247
189
222
176
168
223
174
209
264
138
170
196
239
163
143
220
208
198
216
228
171
230
201
250
203
208
213
219
178
192
200
170
196
209
218
151
216
269
179
150
165
212
168
210
175
235
206
224
179
161
185
174
231
125
203
153
179
175
266
215
183
195
140
218
166
153
171
135
194
197
150
184
210
215
164
216
217
214
239
166
205
180
214
214
191
246
154
186
214
198
259
181
184
125
192
211
206
213
212
126
228
188
199
234
201
197
187
213
240
147
228
229
214
243
256
223
198
238
251
232
180
253
240
201
228
179
158
149
135
194
185
168
202
174
228
175
210
233
214
166
215
244
216
177
153
181
261
197
252
213
235
109
196
193
243
183
238
249
154
216
224
247
177
202
196
160
225
272
243
214
213
208
214
200
223
167
170
283
255
254
231
188
271
204
170
165
166
200
214
247
197
166
269
241
166
204
236
165
246
227
139
148
224
190
186
195
218
173
248
203
208
141
147
201
195
234
201
153
206
188
188
248
258
224
263
181
207
161
205
224
203
245
221
188
179
224
131
200
207
198
185
153
187
236
201
197
176
245
216
209
153
192
211
264
231
251
277
181
238
178
171
237
218
209
168
199
267
168
188
150
212
178
259
202
234
228
180
211
164
156
238
232
197
148
267
124
198
189
198
221
208
164
186
184
249
269
212
186
217
239
191
182
234
153
219
259
175
199
197
224
216
204
238
245
177
181
212
120
206
217
167
182
214
215
188
191
217
229
260
194
196
213
217
225
213
253
164
215
178
145
231
186
208
215
196
140
202
164
217
154
265
151
179
251
173
145
153
182
142
184
184
240
198
197
282
218
140
246
189
191
122
178
241
153
190
209
240
200
172
216
235
201
198
196
120
240
225
208
176
156
199
156
216
217
182
219
226
186
135
287
167
169
175
148
165
219
189
232
163
155
146
243
178
139
215
204
203
253
229
178
225
178
168
190
247
206
142
227
174
184
194
141
203
246
149
255
162
235
218
217
159
254
171
168
223
241
225
205
214
196
155
227
204
212
183
225
211
258
277
131
232
222
245
202
179
211
185
167
205
210
173
232
201
177
230
162
255
154
224
238
222
197
209
237
171
236
193
241
245
136
173
200
205
170
220
230
212
242
207
273
180
216
196
181
149
167
222
176
192
159
217
168
206
211
203
245
157
193
227
137
229
274
216
230
169
211
242
228
233
158
163
148
165
171
186
154
203
205
197
182
184
140
246
173
172
195
251
218
173
196
228
197
183
222
191
203
221
170
191
237
250
220
242
192
257
227
245
234
197
268
231
282
197
234
207
156
193
254
191
177
173
176
170
218
179
161
244
174
239
179
215
163
117
187
187
150
231
219
156
240
250
232
220
216
230
180
201
204
193
253
184
196
225
233
215
200
210
198
164
208
167
192
217
211
255
208
160
232
219
282
252
161
177
236
163
174
186
191
204
250
194
209
277
145
184
255
231
205
196
277
210
180
203
242
189
175
144
181
189
101
203
249
164
246
107
210
232
119
179
214
169
235
159
179
216
282
175
193
227
201
187
270
215
211
208
199
264
251
154
265
174
140
222
191
179
177
198
209
177
188
133
145
219
227
240
199
196
237
243
177
218
184
201
252
114
183
150
257
233
218
183
172
265
218
141
215
279
218
251
167
210
110
277
243
175
243
213
190
225
219
206
171
131
121
177
200
164
172
212
211
129
204
227
228
162
97
233
218
174
235
204
187
197
239
167
250
199
167
154
140
180
166
217
260
189
277
172
205
215
220
135
146
226
192
175
223
191
183
239
205
234
204
201
224
226
172
236
241
172
166
192
210
231
221
234
161
141
178
181
112
120
177
220
178
160
161
120
241
207
222
228
215
159
98
185
234
233
225
257
265
170
173
197
214
252
158
157
191
194
154
214
213
179
210
169
213
140
188
260
220
195
265
176
180
193
210
206
161
231
150
206
204
180
209
196
157
219
152
234
235
269
207
255
215
192
163
247
166
268
193
190
218
156
179
147
236
224
175
236
167
229
267
297
176
198
162
186
163
235
169
203
177
206
231
241
182
113
188
193
231
197
233
152
234
212
193
170
156
256
170
225
200
170
222
179
160
173
261
166
184
179
207
191
184
225
232
278
148
249
235
184
269
243
176
101
201
193
209
186
193
215
272
233
227
210
173
172
225
179
165
201
171
240
137
175
112
222
202
181
208
231
176
198
241
225
211
217
159
241
241
173
192
226
188
238
231
172
205
230
196
201
202
161
204
214
144
183
199
209
204
195
229
233
193
202
204
225
171
214
201
189
239
182
175
195
165
123
206
223
188
212
189
216
228
207
168
241
222
237
138
223
167
218
229
193
176
232
127
187
120
233
220
191
263
156
98
137
204
227
200
224
222
185
152
200
254
171
158
148
228
190
199
138
226
182
203
211
266
226
135
219
248
177
191
245
144
152
230
222
207
200
147
195
156
136
188
144
190
193
161
210
171
206
206
204
219
198
229
219
260
206
210
148
272
140
190
190
207
183
196
138
237
158
158
212
175
209
188
191
194
171
225
190
211
235
236
159
219
230
175
142
187
220
238
163
197
154
199
212
150
211
132
204
212
253
196
205
148
159
219
200
221
221
212
243
203
231
222
149
220
187
167
175
180
170
208
212
177
168
189
183
191
206
176
165
144
250
175
213
253
194
242
136
239
201
228
205
214
167
215
189
237
224
211
186
192
187
213
230
232
152
171
235
251
183
167
174
194
211
236
244
210
196
191
245
229
219
209
193
208
157
214
159
226
215
216
224
215
164
169
203
207
210
208
186
213
232
249
183
175
153
220
210
171
206
255
173
209
185
211
201
142
258
239
222
188
184
223
215
216
182
168
236
224
160
210
179
200
178
155
213
187
272
158
179
194
152
173
166
177
214
264
224
156
209
162
222
226
208
166
183
227
184
208
214
187
187
267
156
199
169
188
208
194
179
163
218
222
208
184
184
245
193
186
210
220
217
175
185
174
166
241
228
193
156
264
171
216
218
225
230
216
240
185
212
170
231
245
169
244
165
264
198
170
214
244
212
220
174
192
231
196
162
170
166
150
244
185
138
191
217
214
277
219
237
208
175
236
235
216
243
265
197
213
159
210
223
213
198
223
217
263
189
248
220
206
220
143
148
231
235
179
182
184
221
252
214
227
225
172
207
197
244
185
231
228
186
194
168
234
178
221
154
231
205
190
194
229
148
206
210
260
103
214
219
189
227
245
126
239
179
239
151
213
175
199
194
172
188
192
209
191
228
207
175
257
269
205
152
227
132
244
146
143
109
165
216
199
216
180
163
170
203
237
170
190
238
220
124
217
227
172
232
195
164
191
195
194
225
159
193
136
216
241
187
152
160
210
240
200
185
218
191
160
219
244
198
156
201
148
223
169
210
194
197
178
184
223
171
240
140
178
194
223
158
194
226
179
248
190
172
181
204
198
264
210
214
270
200
220
198
214
269
211
222
189
215
146
214
220
193
202
183
212
263
170
159
240
168
245
202
217
157
186
239
202
157
265
256
182
254
212
165
201
218
194
170
224
226
224
198
173
183
254
177
154
145
212
200
170
238
237
178
238
158
197
189
236
196
121
252
183
159
235
205
174
163
201
248
194
205
213
223
181
171
179
155
283
202
281
138
214
243
200
150
180
179
192
195
176
225
196
157
235
202
163
259
195
210
188
202
235
221
218
199
227
224
205
136
236
230
273
126
254
180
211
213
214
194
151
194
239
250
167
128
182
167
162
201
248
127
196
226
278
192
248
298
202
187
194
160
165
150
193
197
220
205
252
169
189
198
254
229
150
229
221
234
247
243
203
233
170
188
158
170
185
200
217
181
224
168
240
231
200
136
237
139
137
185
194
166
211
144
194
239
193
159
225
202
229
139
235
179
197
192
157
244
154
194
201
218
161
202
202
200
162
187
235
169
160
188
185
210
211
206
170
233
237
173
171
202
164
194
134
163
185
240
160
177
125
174
253
186
220
140
153
187
127
136
196
192
217
192
225
232
177
201
147
187
175
191
133
251
225
183
165
177
185
276
199
114
154
163
177
143
197
252
206
180
170
220
177
214
232
201
235
180
211
180
209
207
233
156
208
245
206
245
165
194
195
178
153
226
162
212
250
175
198
136
243
187
205
167
197
162
258
251
197
219
194
149
203
181
214
194
238
217
241
208
218
190
115
180
271
173
126
158
180
190
234
135
183
201
217
214
164
254
227
183
213
234
199
173
199
161
208
203
188
183
251
243
173
268
242
196
222
185
180
234
191
198
161
217
197
239
171
191
158
155
222
159
233
239
223
186
180
163
203
221
239
161
223
222
197
159
202
172
207
206
144
165
253
233
209
210
156
171
234
250
252
175
167
271
220
144
220
168
246
229
198
168
216
185
197
239
191
158
207
261
186
140
180
165
156
202
197
228
223
207
137
151
241
119
191
198
157
159
233
165
204
235
190
223
222
213
121
198
165
153
181
180
237
164
148
147
153
229
156
235
151
269
221
183
186
184
145
258
168
233
163
258
186
208
173
174
176
176
203
176
258
232
120
150
177
271
163
204
139
165
214
242
229
178
174
159
196
157
276
231
188
174
230
196
168
206
202
166
226
188
152
245
174
227
188
298
264
245
158
207
250
212
140
152
200
197
258
192
221
179
235
216
219
250
223
178
106
226
213
225
222
231
236
190
178
198
102
157
217
211
200
224
200
204
218
156
232
240
193
178
217
172
216
179
203
233
192
138
208
180
209
194
210
249
200
216
208
203
199
168
158
202
223
140
239
218
198
230
200
185
183
182
189
202
150
130
260
207
232
195
193
205
236
201
230
232
198
172
228
200
193
268
221
180
191
283
130
209
196
148
204
196
184
166
255
248
254
172
242
210
221
122
261
166
176
216
207
224
231
143
196
189
178
180
171
177
253
247
188
209
154
250
229
225
161
171
150
253
219
199
216
232
214
152
159
201
189
188
180
201
144
230
184
217
202
220
203
185
260
104
168
177
245
160
124
164
166
165
223
227
256
226
175
173
146
194
169
207
162
163
198
248
185
189
215
127
159
200
184
189
201
201
202
198
226
180
190
180
248
188
191
240
250
206
191
143
168
205
178
245
252
201
212
130
174
254
209
206
223
210
207
167
151
222
202
183
233
204
168
212
195
259
180
176
199
218
201
188
212
154
191
181
176
202
176
192
232
176
174
183
225
190
225
237
188
207
157
240
231
159
159
194
196
183
171
212
194
222
274
213
239
212
238
225
220
160
194
181
196
185
179
228
193
187
175
187
234
179
241
211
250
222
164
171
199
250
208
208
192
179
136
152
199
184
228
125
177
267
187
178
203
142
269
238
209
225
205
214
183
210
166
149
233
202
174
137
174
249
215
168
164
210
204
238
201
199
232
214
213
169
200
232
196
233
174
219
240
168
129
210
194
195
198
192
180
173
209
154
222
227
246
221
199
236
213
165
182
219
143
228
177
202
188
220
171
124
231
171
244
186
229
146
124
220
161
229
263
246
130
108
222
207
217
203
234
230
225
137
257
186
151
233
211
295
191
235
200
164
160
224
207
207
221
139
237
220
185
199
180
145
224
154
142
201
194
178
250
155
186
182
173
234
172
214
163
222
212
208
253
182
172
234
226
170
224
209
216
241
251
174
172
173
182
239
248
229
229
251
190
161
137
185
233
203
196
191
193
209
212
213
199
183
163
197
199
213
227
165
197
174
240
221
238
217
190
180
225
192
188
157
229
269
175
242
188
209
183
78
146
204
207
243
166
231
228
181
217
163
219
195
205
234
191
193
212
209
181
194
185
213
234
233
261
234
194
147
176
147
133
213
194
223
247
157
196
158
163
199
186
211
221
215
178
230
180
225
221
168
209
181
227
165
206
170
172
189
238
207
218
189
182
172
215
215
195
230
219
204
276
185
197
213
159
195
248
238
173
204
212
143
199
201
182
216
154
212
193
204
187
235
175
203
235
260
173
152
181
200
263
229
226
192
178
184
179
162
213
202
247
162
219
190
221
257
220
192
207
220
190
238
183
250
237
171
220
209
171
202
178
164
194
188
229
230
174
262
144
214
187
193
241
191
251
169
156
192
233
206
204
204
185
163
232
216
113
242
189
208
205
210
213
238
217
176
201
229
216
154
207
170
150
199
187
192
190
190
235
246
173
166
229
168
158
169
167
210
171
198
161
261
247
179
217
251
202
215
152
194
225
198
213
216
196
195
176
174
129
174
239
169
134
228
181
229
192
274
159
209
226
150
199
238
223
186
243
146
190
209
251
220
189
193
176
251
211
208
182
164
209
229
256
154
201
214
250
210
210
223
117
238
217
224
218
153
142
173
183
205
177
195
199
214
202
166
230
210
177
232
236
141
180
213
187
242
177
176
141
223
148
204
205
191
207
183
151
181
224
201
245
176
197
178
186
168
157
211
200
211
189
186
211
228
208
234
194
207
206
245
173
170
219
142
181
199
212
211
182
224
154
201
207
186
190
105
209
191
226
244
177
193
215
200
231
165
206
183
178
242
202
194
164
212
224
194
214
169
160
221
219
179
172
214
230
210
193
194
136
179
169
220
186
230
177
188
180
167
204
228
182
232
200
162
220
221
185
247
163
218
224
202
233
234
188
244
140
179
174
205
186
204
181
217
191
190
184
221
224
215
258
186
178
236
179
164
197
242
149
249
243
195
158
212
178
223
212
235
231
254
177
162
196
194
191
185
202
205
185
198
186
173
223
186
203
224
226
215
186
185
261
179
226
181
248
208
177
224
206
184
225
139
155
156
235
180
209
152
193
215
174
216
212
215
213
197
220
200
173
197
215
180
230
256
252
143
169
184
153
221
226
258
264
218
228
216
188
181
134
165
184
189
254
182
235
217
143
209
186
155
225
161
228
186
179
148
222
262
188
199
180
208
176
203
147
231
222
239
210
257
204
227
183
201
123
228
246
239
227
146
166
248
189
155
194
206
203
246
187
228
178
229
245
211
174
223
173
239
231
185
209
155
195
220
182
204
219
289
183
182
263
188
211
192
243
258
199
219
220
211
203
136
193
224
167
163
150
162
225
184
258
189
263
196
195
175
162
177
192
149
230
207
239
206
172
207
192
209
187
119
195
238
142
216
149
196
185
225
224
237
204
211
163
177
199
220
156
175
242
164
178
231
224
266
254
202
167
254
194
188
179
224
222
164
229
105
178
168
226
169
194
255
179
205
204
224
223
251
196
175
203
259
266
191
212
251
158
192
209
188
189
164
158
212
138
152
257
191
226
131
192
205
191
192
197
195
226
244
184
194
205
222
212
166
204
256
181
224
213
215
158
201
190
209
204
175
190
183
186
165
254
195
285
197
229
177
177
140
190
172
215
207
240
202
184
262
197
240
229
168
191
161
217
144
220
205
197
189
193
175
181
214
177
174
233
221
200
209
239
244
248
100
203
159
210
182
240
209
219
205
231
169
219
217
148
239
213
229
115
163
168
187
218
208
99
186
201
239
152
241
98
221
235
150
220
187
213
206
152
187
133
192
221
174
209
159
144
213
192
154
184
162
175
217
207
230
228
198
179
177
187
187
182
245
159
187
132
163
187
241
188
153
228
192
253
225
213
182
177
214
141
238
238
188
183
224
149
208
177
224
190
223
227
248
234
141
200
176
221
197
235
262
247
126
202
193
161
225
263
160
209
188
154
219
182
165
178
203
235
145
198
203
171
175
193
247
218
160
204
229
201
198
161
144
127
235
157
245
190
141
121
192
218
248
210
234
232
173
236
221
169
244
212
159
242
232
144
264
220
207
238
103
204
170
168
253
248
212
207
211
190
185
200
263
154
192
154
188
194
138
208
210
215
216
198
200
147
109
117
168
174
217
217
178
201
222
236
196
202
228
207
180
222
165
228
231
226
223
249
139
182
214
174
163
207
251
192
218
169
186
215
192
113
163
225
199
197
264
229
197
196
263
267
197
229
213
224
231
230
134
215
230
258
198
192
195
187
153
220
184
137
175
267
236
228
202
160
237
232
159
231
196
144
228
191
200
233
164
183
241
178
205
205
154
187
141
225
205
196
218
159
224
174
171
198
196
165
169
223
154
217
171
193
189
158
223
165
187
173
196
181
129
221
159
176
166
216
250
170
247
156
132
188
228
179
219
203
232
165
193
169
200
204
229
186
200
186
183
185
183
165
230
217
183
215
180
154
205
223
223
244
218
179
231
203
189
219
224
128
158
194
244
215
150
184
212
259
159
171
189
197
165
234
171
227
172
208
219
165
241
219
204
226
191
243
233
210
208
245
208
192
203
192
244
184
214
191
210
268
223
152
208
263
205
173
134
188
253
191
187
198
183
215
224
222
182
219
219
196
175
241
227
180
225
240
193
223
164
146
217
166
226
226
149
226
168
257
205
192
226
251
212
188
202
218
267
211
168
222
197
193
186
237
172
207
252
188
255
173
181
186
186
276
194
242
191
228
176
215
164
191
125
246
196
189
188
227
129
234
241
200
228
177
214
160
230
228
181
233
249
192
201
215
224
188
226
186
159
232
161
211
162
230
224
244
221
175
213
170
167
184
244
163
215
211
193
190
209
179
134
151
198
167
206
159
211
181
220
222
161
174
197
186
207
145
180
217
176
201
219
242
270
235
186
175
197
239
180
218
285
236
171
178
240
158
184
213
201
227
230
200
215
180
242
191
231
188
169
254
224
204
177
157
233
271
140
246
205
129
171
174
162
250
217
201
218
167
167
214
186
253
126
180
221
250
126
169
164
177
153
181
237
174
207
203
241
179
216
225
173
257
264
206
214
152
152
238
147
176
216
242
176
168
212
249
217
160
149
215
222
145
135
209
206
198
267
162
220
171
134
204
199
227
239
192
213
177
243
184
173
149
247
153
228
200
141
167
232
175
125
217
181
181
193
181
181
171
161
151
233
153
201
250
240
136
195
191
216
117
197
187
246
177
199
242
184
174
214
214
222
258
179
189
239
193
196
194
161
195
186
205
213
183
191
155
193
195
191
190
261
204
210
194
158
172
138
245
203
210
196
191
139
163
203
178
120
185
184
153
214
212
206
180
212
204
174
156
239
192
207
192
175
206
179
180
181
161
183
221
256
240
126
193
199
167
234
171
114
196
177
221
196
192
211
248
276
173
150
177
215
229
202
140
183
249
183
189
217
175
189
131
196
165
125
218
227
190
220
198
251
161
159
184
179
166
228
184
179
212
217
193
180
197
215
173
187
158
160
175
220
221
158
182
224
233
179
152
208
218
238
221
169
201
202
174
118
188
219
167
188
195
241
181
191
218
155
173
221
180
165
150
175
237
236
234
163
166
170
201
241
236
178
201
230
171
175
192
175
159
180
245
229
218
215
203
179
145
176
277
202
110
191
171
248
198
258
180
170
266
226
230
189
225
208
116
160
244
163
170
191
190
188
136
200
188
245
230
199
198
174
174
224
175
179
256
215
199
207
195
251
261
251
234
240
201
229
224
170
199
300
243
226
226
161
172
176
174
232
176
205
197
229
243
249
202
187
180
184
205
147
232
208
184
126
197
196
217
186
159
180
199
185
206
199
164
167
123
256
196
215
191
263
244
207
211
183
258
188
133
230
228
211
218
212
192
243
164
253
163
173
210
220
228
172
197
242
205
250
168
242
204
188
181
215
226
174
235
157
231
207
220
173
153
250
122
167
183
198
169
266
234
195
182
194
203
262
139
215
198
238
200
239
184
171
159
158
143
194
240
136
177
222
192
218
229
203
217
165
143
207
193
161
220
243
178
151
189
256
139
162
265
197
176
188
239
190
154
228
230
180
155
180
159
251
225
182
262
240
212
181
210
234
214
181
190
251
182
207
128
267
194
168
205
184
193
163
218
162
144
252
171
213
175
216
198
148
215
260
172
225
239
183
244
277
236
205
204
236
178
186
238
213
232
185
272
252
215
200
211
181
221
190
234
204
217
206
120
246
207
199
220
205
240
229
218
212
240
202
201
209
201
199
185
174
212
216
219
233
211
166
147
165
157
267
238
179
198
205
158
231
178
155
140
183
230
218
177
193
227
216
183
148
204
184
211
210
213
233
219
214
205
215
198
229
212
226
169
195
195
173
198
252
180
211
217
214
226
198
164
218
172
209
118
215
186
231
163
204
226
223
177
193
217
144
256
223
187
267
232
204
200
206
197
266
174
215
202
201
241
252
248
178
165
202
233
181
179
205
189
238
246
206
154
161
116
203
174
116
202
237
173
184
154
182
206
254
197
239
177
160
231
224
224
196
219
177
255
224
194
205
233
179
194
234
138
192
125
173
245
182
228
237
260
198
251
152
215
234
192
221
141
237
220
252
279
192
236
202
164
165
179
245
231
225
194
197
239
190
164
235
236
163
168
240
169
148
214
202
214
136
171
140
220
196
233
135
191
231
203
186
226
194
149
197
208
200
236
172
190
248
219
157
153
222
218
254
197
147
217
118
205
201
205
213
191
247
178
229
133
216
255
186
217
211
230
200
232
194
207
225
196
212
226
241
223
193
175
183
217
176
204
270
283
222
207
232
255
189
161
191
203
222
241
175
131
196
153
234
212
164
167
142
206
222
220
215
178
192
179
191
239
185
169
249
215
206
221
221
230
241
147
211
267
198
137
207
185
214
197
142
202
203
234
152
181
235
203
248
198
190
199
175
162
104
194
167
192
185
166
171
167
211
235
201
104
187
206
218
175
192
228
166
217
179
207
178
218
232
182
229
217
223
153
210
264
209
163
185
153
161
168
209
219
124
190
171
129
204
135
159
250
253
159
214
158
182
223
206
189
118
212
197
227
188
143
223
220
206
163
216
198
195
178
247
144
230
181
172
166
221
220
199
205
263
185
283
206
151
227
234
226
234
133
229
164
276
207
178
210
242
170
153
187
241
236
229
247
162
211
184
238
242
202
217
176
174
235
177
221
157
211
223
196
189
242
236
261
218
182
161
191
252
201
203
173
212
161
249
128
237
208
254
195
262
207
209
160
210
143
236
206
181
155
243
247
194
163
212
233
221
185
248
232
201
198
223
246
234
239
180
205
230
218
162
186
158
183
253
243
202
232
258
110
189
178
211
142
236
212
164
162
226
163
188
193
182
169
168
168
188
186
180
185
216
229
210
177
251
132
275
218
189
175
179
243
161
234
224
227
163
166
157
233
255
188
227
208
247
209
176
233
238
208
222
177
212
175
197
209
218
190
226
155
187
104
239
214
177
211
205
182
324
173
201
190
241
188
118
183
181
170
179
212
211
214
165
200
168
253
194
155
110
162
168
205
257
212
189
210
222
194
157
221
215
203
237
180
211
235
185
236
164
207
222
214
267
179
189
226
177
148
222
203
212
187
219
217
215
159
180
184
206
195
234
202
174
188
177
168
208
174
176
179
173
153
218
189
172
220
243
187
241
253
226
212
219
211
181
239
165
151
164
208
210
209
208
184
239
199
168
225
211
193
149
137
253
208
224
208
188
162
262
247
163
168
211
229
176
206
164
178
145
199
183
180
241
222
200
241
199
211
212
238
215
207
214
177
190
187
222
261
176
250
188
268
215
229
218
257
219
260
203
207
189
189
147
173
170
259
182
224
230
146
151
168
215
218
249
181
235
192
228
157
160
174
204
184
261
208
226
211
238
217
242
200
189
187
156
227
200
219
207
306
210
215
166
217
202
191
181
192
163
231
154
267
229
227
174
240
135
164
241
245
214
189
184
217
164
198
239
247
151
215
187
199
213
238
235
171
158
192
136
225
243
200
123
194
150
199
128
169
207
143
248
214
229
122
186
204
215
161
215
181
233
198
119
176
271
206
202
171
223
222
228
170
232
171
127
167
229
264
174
201
165
236
183
180
235
241
202
168
228
177
130
248
205
195
193
240
214
174
216
175
195
111
183
132
169
230
199
223
181
141
236
211
199
232
195
202
229
175
231
191
223
163
200
156
197
211
193
216
227
194
227
219
143
174
244
140
203
213
239
179
200
207
198
230
197
205
188
257
183
206
117
216
183
244
188
225
177
129
242
224
133
224
168
231
222
239
176
211
119
189
171
204
232
162
220
250
167
228
207
212
202
201
189
211
271
227
132
209
184
156
211
150
189
135
195
238
243
168
167
213
227
252
165
158
180
214
139
153
167
157
240
147
132
240
208
218
231
202
190
223
283
144
160
239
179
181
178
236
184
199
197
235
223
185
251
214
219
182
208
126
163
169
165
220
174
164
248
180
200
203
222
247
171
170
189
203
215
168
242
180
220
190
156
183
196
206
224
216
196
166
257
206
190
199
220
230
209
204
217
219
225
181
211
264
208
219
224
218
145
195
173
176
213
226
199
206
185
202
190
224
219
174
251
220
215
235
173
161
253
244
191
205
233
219
229
212
196
121
177
215
152
161
207
219
217
250
209
242
226
185
251
146
170
174
193
197
171
203
180
191
240
213
238
184
264
125
217
248
180
207
187
210
179
201
210
217
255
160
255
205
237
228
203
240
209
181
240
148
230
170
121
183
201
235
205
169
175
211
247
203
211
209
178
221
153
166
221
186
183
231
261
235
168
184
171
219
211
165
251
220
205
186
201
183
176
172
194
207
254
283
260
196
185
252
140
210
163
159
198
217
208
224
173
200
175
199
183
212
144
198
139
134
188
155
155
233
194
200
194
210
189
211
246
178
272
173
224
224
119
156
218
169
209
223
275
143
212
238
216
232
209
246
171
183
183
216
166
204
202
179
146
201
217
193
214
201
154
192
186
188
218
157
182
198
262
203
181
279
189
150
175
101
190
216
247
200
216
105
234
191
181
163
149
252
192
161
184
258
224
167
141
194
249
192
157
236
206
245
246
224
197
263
248
200
208
212
225
174
153
231
195
218
217
247
228
161
221
163
188
201
244
146
190
220
217
184
158
181
188
227
235
204
174
222
252
188
176
155
241
229
220
246
232
208
201
213
152
246
220
181
206
130
144
137
130
138
198
223
177
191
216
241
157
235
168
154
160
199
201
162
213
194
233
200
227
190
192
216
240
264
184
193
156
209
168
202
172
199
177
257
176
187
247
196
201
188
165
212
217
183
126
195
114
219
160
147
217
227
199
198
193
216
123
236
192
236
197
220
214
194
239
205
208
211
197
195
245
217
237
133
243
186
157
175
200
169
175
210
227
230
198
150
211
208
202
211
170
213
167
216
218
183
245
199
226
218
220
214
160
149
196
209
260
207
182
212
131
226
221
168
129
188
166
158
187
160
177
182
248
198
177
178
254
209
175
178
167
224
186
204
152
199
210
189
170
220
200
216
192
250
170
148
256
221
178
252
113
270
184
183
153
207
181
211
205
321
217
173
218
177
199
212
152
214
214
208
183
209
187
260
181
184
147
183
218
236
245
187
216
212
177
242
209
234
230
195
178
201
195
166
266
170
169
190
189
203
205
129
182
198
207
229
255
226
201
235
161
254
224
193
169
184
206
165
186
200
173
158
218
166
225
239
171
196
184
152
197
186
195
194
163
169
261
188
204
132
233
227
158
237
156
192
206
125
176
140
191
200
159
189
189
212
127
176
219
182
228
234
240
228
205
205
201
226
246
214
209
136
192
266
288
221
180
201
154
197
247
145
219
171
192
197
219
174
223
198
209
231
209
200
142
210
217
161
243
238
195
189
242
237
234
174
123
174
239
203
197
196
222
174
235
155
194
172
232
235
178
209
203
219
244
235
274
162
194
191
159
261
156
175
208
223
282
237
157
179
198
200
158
235
258
214
176
198
103
182
210
214
190
240
252
227
185
181
184
233
198
189
162
187
186
210
237
164
205
213
252
226
214
231
192
234
161
176
191
135
206
117
168
152
200
195
262
129
217
196
119
244
203
180
201
234
274
227
172
162
221
227
232
222
194
188
248
203
225
188
211
234
235
255
234
193
185
182
190
185
234
188
255
224
170
278
211
228
188
200
184
138
231
256
227
144
221
153
161
188
228
207
156
197
157
187
191
294
232
146
156
208
123
125
198
251
168
173
200
192
195
181
226
162
194
169
211
208
148
213
219
225
176
176
160
249
206
231
233
198
152
222
150
206
191
210
145
197
124
201
211
200
230
215
174
205
162
224
189
162
158
175
241
232
204
238
176
158
246
245
156
224
228
169
196
240
258
208
209
211
167
199
212
151
238
149
262
238
163
238
211
160
165
234
145
133
112
212
211
230
187
184
212
148
190
159
110
172
198
173
155
246
176
167
216
212
235
212
201
228
187
190
184
172
176
194
122
191
164
177
250
226
241
210
173
170
264
189
206
214
176
264
200
203
171
135
196
228
241
235
234
124
189
183
204
208
152
198
264
164
216
226
217
198
148
173
249
192
208
183
197
171
265
202
214
145
251
222
209
229
157
185
171
220
175
159
219
203
189
228
223
191
156
225
232
132
231
217
197
181
211
194
231
203
248
228
169
196
192
173
184
172
217
194
199
209
179
183
144
183
183
183
182
227
223
160
210
289
135
183
226
247
182
211
176
185
198
170
234
204
224
196
168
203
204
188
215
193
241
193
219
181
184
281
152
175
183
148
206
152
199
191
181
236
168
237
167
222
234
202
215
254
273
130
242
175
213
237
212
136
188
215
224
223
212
165
164
201
141
169
167
167
206
197
203
191
176
234
230
225
211
215
220
227
170
189
169
162
172
213
166
154
187
171
144
182
186
194
182
229
152
232
212
241
177
212
205
237
196
242
151
232
207
152
163
236
238
190
221
204
200
193
186
159
229
251
216
185
227
221
229
186
206
173
217
190
211
225
200
240
179
163
188
192
126
153
153
247
196
164
181
189
201
168
225
190
149
194
146
134
209
204
256
182
191
216
192
178
197
218
208
221
185
219
263
209
189
191
227
179
187
279
213
223
190
180
196
181
148
229
187
188
234
209
183
151
232
170
240
241
170
243
189
218
213
199
180
188
235
190
218
214
214
192
157
187
196
273
151
197
190
152
224
236
229
172
182
223
197
207
184
181
226
194
176
268
209
148
182
194
220
172
186
194
212
218
250
234
247
214
198
170
202
176
258
145
178
242
213
271
266
243
208
244
157
204
228
249
184
202
214
209
234
158
187
219
231
162
138
187
187
182
244
256
161
191
235
211
181
125
212
235
183
284
167
199
107
165
216
187
168
188
203
231
181
246
222
167
253
210
193
227
259
168
172
177
181
235
196
232
212
218
243
123
110
206
275
227
191
184
197
154
186
249
203
185
211
209
187
205
204
177
186
240
235
174
233
199
161
197
202
199
172
198
261
183
246
187
280
182
214
190
209
238
163
173
215
206
177
159
187
256
295
183
174
201
258
194
150
244
214
186
197
168
155
138
170
157
256
133
203
162
153
204
168
225
217
193
237
215
234
198
207
195
188
209
254
119
193
194
191
211
178
231
166
156
238
221
181
185
200
210
206
176
292
240
246
185
133
241
213
150
241
159
194
252
165
186
231
161
168
198
214
210
171
207
181
146
220
230
188
212
202
199
147
162
174
258
250
113
184
205
154
232
170
187
169
239
189
191
162
184
163
207
217
163
133
165
166
189
205
173
117
221
218
207
203
180
198
175
192
221
214
256
208
141
237
193
211
128
214
211
202
227
212
127
176
188
182
167
196
153
226
149
278
225
208
210
158
125
235
214
211
212
213
254
217
218
155
215
235
286
255
178
143
152
159
176
168
194
199
198
198
248
209
261
176
157
206
143
207
207
167
191
189
209
249
206
205
258
254
239
203
187
157
205
255
233
118
217
257
164
134
178
197
236
187
204
219
180
207
180
201
204
174
224
261
257
187
185
179
118
165
189
215
123
263
236
155
200
149
207
212
181
179
244
183
152
144
218
271
200
160
242
192
158
221
159
191
225
208
240
279
239
174
171
182
164
190
128
201
221
147
234
210
162
207
178
232
210
237
186
208
163
191
196
173
235
136
261
190
214
208
171
223
194
257
258
189
192
165
186
204
205
184
241
139
199
116
195
228
277
186
201
187
233
237
209
204
192
140
168
198
188
194
161
205
205
224
197
225
191
147
151
168
223
197
231
192
218
176
209
276
225
212
249
182
196
184
222
237
258
177
198
239
225
250
235
229
165
222
190
181
245
172
202
151
195
240
212
227
146
230
261
180
204
231
236
235
237
225
195
140
163
235
194
239
201
114
174
212
250
233
200
181
169
268
221
188
206
261
251
246
184
244
204
212
226
128
181
211
139
172
160
236
220
226
199
195
217
198
279
187
185
145
208
221
173
178
136
243
197
144
175
167
237
183
148
243
184
173
181
212
204
136
257
223
125
172
214
187
202
179
263
215
217
174
170
152
140
207
170
212
217
175
184
156
182
186
219
163
208
220
162
192
239
209
248
177
127
261
225
264
226
203
244
219
197
220
176
239
250
143
198
230
180
194
175
225
201
139
267
235
224
235
236
203
180
217
158
208
184
194
253
171
206
163
192
282
163
248
167
228
204
179
202
182
217
196
236
166
212
269
225
209
153
247
119
219
184
190
220
164
238
220
210
179
194
231
224
212
166
201
150
143
204
162
194
174
144
234
201
172
239
133
227
145
167
147
180
230
180
244
139
242
228
206
235
262
216
211
265
199
136
209
155
182
171
223
135
217
218
197
174
230
255
223
205
240
207
260
206
178
211
213
158
208
209
210
264
162
212
233
196
140
238
160
216
207
177
231
209
243
149
173
224
188
191
117
217
196
225
222
228
191
167
184
147
187
194
159
191
194
184
218
249
196
181
174
232
190
203
178
192
201
145
209
171
244
198
192
197
171
185
192
175
186
242
191
185
243
201
193
216
211
193
220
215
157
253
203
188
254
187
199
186
176
172
190
270
230
174
233
197
201
206
213
219
153
214
166
217
204
261
199
195
160
260
266
168
111
234
240
251
204
173
248
218
185
205
219
197
249
103
136
237
195
237
186
240
159
209
255
150
222
208
157
258
200
149
156
228
192
181
167
169
137
258
211
176
197
245
167
238
182
170
203
179
101
217
147
178
143
189
214
259
190
107
141
185
185
185
165
251
192
204
233
214
210
212
204
183
192
152
170
174
183
169
183
218
151
230
185
204
207
184
179
227
208
111
218
242
230
171
148
247
214
198
202
166
186
247
147
190
156
199
266
268
168
191
206
188
131
272
185
206
228
189
204
225
188
281
157
142
198
215
227
169
212
217
178
172
210
167
205
219
219
217
222
139
183
249
233
221
211
240
198
215
199
185
231
180
167
192
219
169
150
221
152
193
223
255
215
195
166
163
178
201
190
202
195
209
233
162
237
248
169
187
204
200
214
193
170
196
200
225
208
95
167
209
197
189
216
200
222
228
191
197
212
254
199
233
200
184
168
219
214
254
193
204
238
217
187
166
155
176
233
237
236
171
265
183
229
198
233
251
261
150
260
234
213
227
241
249
217
235
187
209
198
151
256
167
195
220
158
161
209
232
210
185
261
223
214
119
241
269
126
162
171
160
174
167
211
117
151
147
128
234
167
172
185
255
188
236
216
200
140
183
144
222
177
179
160
229
221
217
173
190
176
213
152
206
189
204
175
222
97
250
194
209
222
179
215
180
164
218
227
203
173
213
108
228
203
185
186
186
182
169
157
188
213
194
194
242
210
187
253
225
215
189
261
219
196
167
201
193
164
133
228
177
159
228
191
215
205
159
249
198
178
189
256
202
232
149
245
252
178
204
205
255
157
251
148
211
166
217
211
224
238
219
253
220
204
164
205
205
222
191
194
247
249
223
246
244
174
215
197
218
259
197
194
272
113
189
179
166
187
183
232
218
278
199
238
191
204
139
185
168
170
228
256
212
169
189
232
254
230
207
201
216
201
204
132
189
198
174
225
119
205
138
226
184
228
198
211
182
215
254
196
145
163
146
247
170
177
163
206
235
198
138
207
224
235
199
216
201
122
175
207
211
226
170
187
193
255
258
155
292
189
176
217
160
156
209
268
180
198
241
212
207
165
198
183
228
193
195
234
216
209
184
226
199
180
198
213
182
191
154
212
248
202
207
175
244
196
234
192
166
223
224
238
172
249
144
188
225
218
123
246
218
259
230
203
140
225
225
176
195
171
242
217
248
217
209
207
197
236
192
205
179
182
239
162
174
105
219
163
176
149
218
159
198
179
222
205
187
209
228
160
209
231
184
189
238
235
149
169
258
235
205
240
172
167
172
190
194
201
239
212
234
267
255
221
154
182
226
164
162
217
238
239
173
203
215
174
243
194
168
197
249
202
182
180
166
188
166
262
256
189
239
156
218
174
229
194
225
185
163
209
144
209
231
214
174
232
195
235
227
188
196
211
216
198
171
142
244
207
245
152
223
235
191
196
176
145
180
160
224
148
235
213
158
261
173
192
226
122
118
187
192
195
188
224
169
170
249
240
94
205
164
192
218
231
244
244
222
256
175
201
206
130
159
232
169
185
240
192
194
191
240
170
234
229
251
226
181
193
211
207
164
250
236
168
240
190
141
195
166
198
158
179
216
199
155
202
187
195
237
253
263
242
244
223
194
207
254
233
228
231
223
150
228
179
219
150
166
207
236
202
175
242
179
232
159
232
248
193
192
194
190
231
156
177
222
168
207
147
241
222
190
152
187
244
157
161
166
237
204
181
209
185
202
193
210
250
168
211
201
215
177
190
209
188
231
181
147
209
226
237
176
265
200
170
199
224
216
225
220
226
241
239
170
181
174
196
153
196
157
201
210
122
203
183
224
195
212
174
189
138
228
174
181
135
181
198
170
200
158
260
215
169
209
195
226
163
216
165
200
193
215
169
205
205
225
118
237
200
256
220
232
257
154
232
193
200
225
246
231
276
219
188
184
241
184
156
180
260
251
214
145
181
193
206
160
158
202
206
277
219
139
214
238
234
206
187
234
166
163
258
234
279
274
212
217
231
210
214
221
248
193
198
250
159
145
150
172
220
211
206
209
211
242
218
248
256
181
185
249
166
168
255
206
253
216
187
204
171
198
246
191
199
203
173
237
158
206
265
208
183
170
220
133
161
246
166
230
207
246
183
233
204
221
179
239
149
183
205
116
142
185
249
160
177
245
172
173
209
162
139
190
203
131
196
180
189
227
259
227
150
214
153
231
172
220
178
246
244
202
228
239
192
194
216
230
173
167
209
239
206
194
217
127
236
152
199
233
210
188
213
112
229
151
204
173
185
178
139
172
239
175
288
107
180
209
226
250
213
169
217
173
204
195
262
221
188
194
203
236
215
196
173
198
228
248
156
217
263
164
245
216
212
205
177
172
208
223
181
171
180
247
231
175
224
204
212
173
193
170
234
251
254
228
221
145
155
154
187
255
172
184
189
272
177
239
203
202
203
147
215
235
209
226
214
191
174
237
171
155
221
269
260
176
167
156
171
198
233
154
192
206
227
170
254
164
196
210
142
180
238
215
250
256
239
231
245
172
182
259
140
177
209
226
185
238
257
225
219
112
142
278
195
221
196
202
134
209
200
204
140
143
204
211
233
166
217
199
231
271
232
186
179
191
176
210
258
218
189
251
199
233
153
287
210
217
175
188
227
187
231
219
218
246
177
213
237
220
201
162
210
173
261
173
178
195
252
220
170
178
208
229
188
215
176
155
238
203
182
187
229
154
186
226
157
164
161
165
228
154
225
147
235
225
195
231
182
199
273
185
252
206
261
186
210
226
186
175
216
229
178
239
168
209
194
209
190
154
146
144
248
223
173
169
174
195
175
166
189
204
186
277
257
203
248
227
148
156
199
206
197
194
184
253
256
150
225
232
192
196
207
200
179
211
244
263
213
243
171
210
171
185
214
200
189
217
141
271
189
191
187
229
183
155
152
219
185
201
188
221
182
245
221
232
237
252
296
131
214
263
179
183
199
199
221
189
181
222
252
209
204
202
166
196
224
209
207
254
228
167
228
169
182
225
209
164
211
238
205
169
202
186
149
208
208
229
187
162
195
241
169
250
184
205
192
249
189
212
244
200
213
179
149
132
164
218
136
214
268
159
247
240
238
137
256
195
140
154
257
185
187
166
269
239
174
195
184
183
139
210
247
153
189
145
152
197
220
169
208
239
218
248
189
200
180
182
205
184
238
182
255
227
238
189
223
183
198
178
177
212
254
194
185
201
263
184
220
227
213
164
219
168
201
199
200
226
185
236
187
236
211
199
237
282
197
232
159
167
221
217
194
223
265
156
166
167
237
219
190
198
179
152
206
229
194
216
257
232
183
225
226
211
193
209
241
223
194
222
176
230
206
221
187
204
205
167
168
233
208
198
141
228
221
153
252
189
240
193
198
207
173
182
163
212
209
197
230
194
161
246
220
200
152
159
191
217
190
210
118
215
185
167
203
153
218
219
171
187
146
267
211
155
247
182
249
204
135
222
228
173
209
200
163
200
152
218
198
193
189
296
192
140
203
159
159
189
210
207
207
183
239
216
219
153
154
210
234
239
190
172
216
188
210
224
133
171
263
196
242
226
184
242
207
190
178
258
188
222
161
210
233
181
188
258
192
198
254
204
213
170
218
170
117
238
246
195
140
155
222
219
171
194
219
165
141
170
208
164
181
221
199
287
190
234
236
212
204
205
189
225
186
177
249
254
227
175
195
212
181
224
163
190
225
139
198
163
190
166
219
137
163
187
180
230
178
198
151
209
152
108
212
186
160
219
183
207
239
189
185
169
199
176
160
82
242
167
200
228
176
239
236
207
209
176
195
175
192
207
193
238
173
212
205
150
228
235
219
227
237
99
213
175
222
194
190
204
189
184
183
225
154
212
140
160
238
211
206
246
186
218
196
179
205
181
217
161
213
195
163
195
205
211
149
196
184
217
211
247
215
103
245
200
154
151
174
230
210
288
186
218
101
246
206
158
213
235
112
222
282
137
152
256
227
205
241
194
245
208
176
200
207
234
261
168
176
184
249
138
226
154
238
227
240
228
131
184
234
191
206
213
184
233
203
252
159
234
193
190
223
191
187
242
246
188
214
155
249
241
117
239
157
232
178
178
213
202
189
192
212
260
164
204
188
197
215
208
253
177
182
265
213
205
176
233
203
168
251
217
258
209
286
179
205
172
147
147
222
228
124
200
145
199
218
231
172
216
232
198
182
202
152
227
116
171
191
180
215
249
204
175
202
172
244
259
218
179
208
166
241
165
173
178
212
256
213
212
216
262
215
104
188
179
239
229
169
229
257
208
134
139
133
247
156
158
183
205
196
179
216
233
203
239
183
245
211
190
226
157
242
203
184
239
222
220
206
205
162
200
162
252
131
200
157
200
168
202
202
180
204
150
212
202
177
212
206
261
195
222
257
199
155
181
260
146
212
204
175
213
231
217
239
135
149
168
138
241
237
165
257
151
199
176
256
228
108
209
180
191
213
205
148
210
186
213
237
216
243
225
227
169
240
206
280
196
185
220
190
213
204
220
187
204
205
225
223
207
180
188
229
197
194
229
142
164
215
204
168
204
204
248
210
166
205
196
278
194
180
218
214
159
238
268
186
213
146
201
151
195
199
250
187
217
191
189
192
169
198
250
242
215
214
222
211
228
207
205
249
214
177
220
185
191
184
163
248
199
231
137
260
250
188
219
235
180
182
187
226
220
217
244
222
178
239
235
175
245
245
211
237
177
191
216
259
178
173
208
194
248
217
171
198
188
131
154
249
181
190
211
116
199
178
172
171
198
198
227
142
224
197
206
179
209
222
171
176
251
166
189
202
203
181
203
198
183
206
191
178
180
217
206
237
166
191
225
203
173
208
278
237
256
163
166
198
240
195
214
205
234
206
218
179
139
170
166
241
196
200
122
195
224
228
221
192
226
276
189
190
207
249
200
185
200
278
129
104
228
169
208
181
202
221
235
210
201
218
155
226
206
246
194
164
167
134
188
245
201
226
205
167
188
244
211
212
117
217
228
209
198
137
239
242
238
219
225
237
182
206
192
146
222
228
213
223
171
190
205
251
165
168
257
190
164
201
249
190
156
181
205
211
209
235
228
215
146
237
256
198
200
217
186
133
213
168
263
253
197
229
209
195
145
189
184
212
226
155
170
171
159
236
226
121
174
217
227
250
217
216
253
194
198
162
184
246
208
141
185
210
217
178
220
225
159
181
162
142
170
220
143
133
256
245
182
239
222
127
144
209
140
206
258
251
175
184
222
199
175
159
156
172
174
216
149
211
226
209
172
219
163
145
212
243
226
231
209
227
267
224
206
150
200
171
203
199
206
250
177
186
171
188
222
127
227
164
241
221
234
211
249
175
183
198
205
218
207
187
247
218
199
164
182
222
152
217
200
130
204
202
255
180
205
181
204
218
151
180
173
153
189
208
181
160
134
229
189
149
205
153
172
220
166
245
211
188
253
176
183
170
180
203
207
287
228
158
174
264
184
188
180
195
203
172
191
221
232
171
191
179
228
238
221
194
229
192
141
212
205
197
238
171
194
227
202
278
163
145
192
139
204
258
201
208
191
204
167
184
183
223
156
147
191
185
182
199
172
152
230
203
245
268
218
198
233
202
171
132
127
212
165
176
206
206
222
193
211
177
226
212
213
245
190
233
200
133
265
192
134
134
198
197
220
184
228
220
140
216
174
259
138
223
205
254
191
247
218
248
202
207
237
176
227
183
207
178
214
242
235
182
223
229
182
263
230
234
178
224
190
236
181
201
231
236
150
195
189
206
187
199
170
169
256
224
249
206
167
182
171
120
228
188
193
177
190
214
222
190
202
183
197
207
188
214
202
176
212
182
164
184
240
166
242
203
232
188
93
170
216
205
207
117
226
248
168
208
190
205
223
196
171
233
174
215
203
195
224
197
212
243
199
232
200
245
177
195
206
223
239
183
251
174
170
184
207
237
148
213
186
79
200
204
249
200
193
168
244
235
182
180
158
205
238
250
203
146
187
201
189
236
168
203
137
126
186
149
202
210
254
149
177
201
153
179
143
173
204
213
234
178
160
179
206
227
176
219
226
230
212
186
192
177
151
294
170
143
229
223
169
150
194
232
224
179
214
189
251
255
152
152
202
87
150
170
234
215
260
160
207
168
217
198
230
177
182
244
183
227
232
81
209
170
220
206
193
142
168
165
224
236
266
171
203
204
248
214
236
180
246
206
168
213
182
146
199
215
149
183
247
212
178
188
200
144
195
209
193
195
192
231
206
195
156
215
257
157
237
218
135
184
254
142
213
216
205
217
137
223
204
173
193
180
202
182
212
224
197
194
237
273
213
153
230
230
193
205
226
193
132
216
213
179
204
141
166
203
280
256
166
184
197
172
223
173
162
166
181
213
250
240
238
162
136
168
203
201
206
154
159
203
172
260
223
260
170
200
240
216
197
184
161
205
222
184
171
203
230
246
207
264
169
159
147
170
228
233
186
143
172
205
212
270
155
209
231
232
255
257
198
213
221
216
203
207
244
136
166
178
185
126
258
162
239
184
250
198
168
223
216
186
182
219
129
215
176
202
190
196
121
185
174
189
156
251
219
188
160
203
191
249
199
188
217
216
192
171
185
209
211
188
198
214
170
192
161
226
263
260
228
188
239
205
206
225
185
162
197
206
259
160
220
189
230
178
208
205
206
241
231
198
183
183
232
220
206
161
243
197
282
169
171
183
233
241
205
199
228
195
227
224
166
250
211
181
283
195
201
228
223
249
187
262
263
206
217
194
192
250
212
200
275
220
190
212
138
194
193
167
233
251
171
191
239
240
136
205
235
234
214
159
240
206
210
227
194
178
243
214
211
217
238
165
216
214
202
239
183
152
230
220
164
176
227
190
205
225
185
192
183
243
162
213
196
165
152
187
240
218
254
205
177
169
147
195
193
212
209
241
125
212
232
196
241
215
206
176
182
243
193
181
134
221
198
211
207
175
177
149
130
183
181
193
192
198
219
214
170
220
235
202
182
203
148
234
301
153
216
182
192
188
233
195
183
203
152
178
195
210
223
197
201
188
166
214
194
239
166
206
145
135
268
186
188
171
185
155
195
252
203
210
213
167
211
212
125
229
179
207
206
176
195
232
198
156
167
142
296
210
252
233
202
194
211
203
242
227
170
229
133
204
174
134
239
160
196
234
262
140
259
181
219
226
225
232
173
223
229
178
159
211
226
192
212
207
221
209
188
182
167
253
192
178
194
263
246
199
220
205
268
144
185
219
227
207
220
226
163
182
181
203
156
250
187
129
227
171
244
191
246
207
229
234
278
213
253
155
165
234
221
141
155
191
215
191
167
272
215
196
199
192
206
233
196
184
188
186
268
200
150
201
164
177
218
203
187
161
216
124
202
190
200
231
190
180
154
200
170
225
238
121
270
150
225
264
256
165
196
181
193
251
245
144
173
203
211
202
206
243
205
163
171
183
191
185
243
240
246
144
200
187
192
185
224
202
199
195
172
241
222
272
246
216
146
196
184
200
132
193
184
195
221
170
235
226
252
180
192
200
191
237
207
238
152
221
285
174
232
246
287
177
118
218
180
157
236
196
255
204
179
177
228
220
220
169
146
177
248
147
185
182
201
264
231
162
222
170
165
176
259
227
223
252
196
174
179
217
212
244
186
183
242
133
288
228
184
243
178
260
141
180
200
255
158
226
195
237
169
190
163
226
188
191
198
188
293
202
191
170
188
198
208
211
155
161
169
255
163
201
223
242
175
191
175
253
212
263
225
141
249
225
151
199
237
183
231
108
194
229
192
256
188
216
274
191
220
185
195
234
221
169
183
161
126
183
256
153
216
199
251
167
225
276
281
118
169
173
191
188
204
195
218
206
172
245
192
236
186
230
179
212
222
172
162
213
250
179
163
179
214
222
138
210
255
198
176
155
217
217
180
200
171
168
253
260
186
192
147
233
179
226
149
146
201
149
195
248
185
205
210
173
191
176
127
205
146
170
220
183
227
191
189
209
227
190
255
200
252
163
171
248
247
172
207
136
183
184
192
170
165
240
181
226
223
217
211
194
158
190
235
131
188
144
198
235
263
202
198
185
228
230
206
162
152
165
211
187
192
206
246
193
217
143
202
183
206
170
251
167
222
247
177
175
156
214
136
219
160
259
213
188
170
224
179
222
134
172
231
230
145
210
238
174
172
182
208
186
223
217
217
168
192
225
196
263
229
187
129
235
207
266
154
217
142
170
222
242
207
247
197
208
140
147
142
235
168
163
196
227
205
159
172
206
187
178
144
135
263
227
176
225
234
188
179
200
199
135
204
114
184
250
219
219
174
241
209
195
209
179
147
202
179
226
223
240
174
146
216
211
241
158
194
220
228
192
227
207
213
211
232
137
133
160
215
193
195
216
281
175
217
178
173
168
257
247
145
241
266
168
200
158
238
133
201
193
173
238
221
204
224
149
202
224
202
225
207
193
197
219
166
259
202
134
235
159
186
238
191
157
170
211
196
154
206
215
184
194
180
211
171
136
245
230
199
217
163
281
187
234
151
227
173
173
238
173
214
156
193
213
159
254
229
209
219
213
198
216
171
170
201
234
233
188
227
173
186
139
275
212
198
183
248
215
181
176
215
218
196
163
222
226
197
214
188
245
226
208
183
181
216
176
222
172
234
183
170
250
230
216
208
204
122
232
189
174
135
245
182
208
221
168
195
219
210
158
249
239
163
195
177
219
204
182
212
259
216
194
183
185
222
207
189
151
156
205
134
157
197
199
268
196
181
238
175
164
238
176
195
245
229
186
152
230
203
165
178
181
210
261
231
183
189
203
203
224
167
214
214
141
231
165
223
216
214
196
173
177
150
171
176
183
200
193
142
186
186
214
238
180
208
177
218
165
166
190
201
196
183
128
200
199
163
124
135
207
168
235
158
250
191
179
199
204
165
229
205
201
226
272
194
169
200
160
218
196
250
214
230
181
167
214
244
203
224
244
196
173
248
199
258
191
163
227
238
183
237
214
209
210
198
190
204
229
254
217
225
255
213
188
263
208
157
187
203
191
169
237
215
195
194
234
253
99
245
160
267
229
232
223
214
209
187
141
168
243
169
234
200
246
162
220
233
253
223
192
114
150
203
157
233
167
217
280
151
171
221
183
134
191
220
154
141
160
179
165
225
214
170
251
212
248
218
198
165
211
174
179
235
175
212
241
216
202
156
231
203
235
177
191
157
169
208
197
200
181
209
237
187
141
142
115
220
150
214
188
180
216
150
173
164
284
199
182
168
217
195
228
185
148
236
159
216
178
230
222
162
256
199
148
191
235
208
184
154
183
204
238
151
250
203
153
171
171
239
170
191
182
175
194
201
220
171
197
210
180
254
227
212
152
209
198
234
192
178
164
208
216
216
252
221
174
219
184
155
203
211
212
190
235
172
195
130
187
124
179
198
216
153
189
196
231
267
172
212
207
250
205
239
206
161
176
225
191
232
198
226
208
188
198
201
176
178
238
183
274
214
223
249
192
228
202
236
167
191
162
224
254
188
266
178
202
139
173
207
230
204
179
182
213
144
179
238
211
182
185
203
161
199
221
168
255
225
232
180
195
247
212
170
158
207
167
211
151
169
199
194
233
154
156
160
268
266
252
178
195
190
206
178
134
226
205
224
174
210
201
202
183
205
226
123
233
181
173
222
135
230
257
148
179
167
208
240
237
246
198
223
199
180
152
234
200
268
145
148
202
197
162
239
209
170
243
224
197
212
223
191
186
216
194
246
189
234
214
240
244
147
209
180
181
206
207
195
191
191
203
223
233
167
176
217
184
197
188
134
271
222
216
159
217
207
222
221
218
203
191
201
168
195
191
218
182
247
185
220
206
211
205
162
162
240
225
173
194
192
189
198
148
199
222
178
111
186
268
197
198
224
225
189
134
205
173
200
183
246
231
126
226
194
227
238
223
214
192
184
191
221
130
219
196
234
174
167
159
170
140
238
187
181
205
244
144
296
190
193
195
194
171
186
239
209
148
183
218
176
197
196
180
205
189
212
241
220
122
232
189
163
217
179
261
209
152
208
261
226
269
131
187
181
226
213
223
204
198
218
208
233
183
233
169
194
145
198
232
122
212
217
158
193
143
256
182
220
230
193
171
184
166
171
198
200
214
157
241
188
196
252
211
181
249
219
200
190
253
224
212
207
119
262
234
215
201
214
227
235
180
172
202
151
177
214
202
213
180
233
252
206
196
253
143
211
218
198
171
211
207
253
222
188
256
209
190
254
247
185
213
203
236
227
239
157
252
167
188
220
171
221
174
198
181
195
177
177
226
227
225
155
218
147
187
172
189
206
206
210
168
249
226
145
196
262
250
155
212
212
214
165
174
211
129
120
217
192
207
256
244
193
195
177
259
225
149
212
215
174
156
225
181
211
178
243
264
171
231
202
186
171
172
203
206
255
142
249
172
196
203
190
194
235
214
151
181
213
244
225
160
177
224
220
132
206
228
175
242
243
138
239
187
171
148
211
184
246
210
185
173
154
174
178
212
190
140
157
219
171
235
215
217
219
118
148
220
205
224
228
196
163
230
208
195
192
187
193
190
202
183
182
204
221
245
234
163
193
236
218
171
240
233
128
232
204
189
149
223
193
217
108
226
188
154
166
142
207
171
210
233
147
226
179
253
196
241
236
211
201
256
228
186
118
133
158
179
206
195
269
190
203
157
227
202
241
221
178
170
235
199
170
194
152
153
146
220
204
190
238
242
128
180
218
221
182
189
210
194
196
253
184
206
180
197
198
272
190
222
224
229
197
214
170
293
238
140
221
237
182
176
239
237
194
201
213
194
206
159
233
246
217
204
177
154
254
248
220
221
230
166
189
162
198
241
251
221
212
137
210
215
110
192
193
274
210
198
187
146
240
187
239
231
190
200
222
164
194
245
153
290
218
280
206
208
221
154
195
215
202
144
140
177
200
189
195
222
207
230
141
148
166
233
173
218
198
219
193
194
204
185
233
143
171
247
195
217
158
248
183
225
192
138
220
160
203
195
102
197
215
233
198
170
209
222
173
239
156
189
205
203
216
269
167
206
255
181
202
202
230
172
250
235
168
237
216
240
249
202
178
175
183
236
206
204
185
221
234
269
237
221
221
227
210
165
185
202
174
186
171
180
223
280
177
230
237
204
186
217
189
132
211
218
239
190
214
212
185
202
196
216
218
257
257
209
241
186
231
225
198
180
130
225
183
196
157
195
226
228
200
215
181
173
270
158
210
199
187
193
171
220
262
166
240
173
193
159
188
135
235
174
147
215
214
145
170
183
176
166
200
201
187
240
203
243
259
222
134
209
188
193
195
194
171
222
191
206
222
251
178
211
244
209
179
231
260
134
182
145
188
94
166
200
179
221
118
175
236
144
214
142
204
200
222
176
212
180
223
201
222
170
180
178
153
196
162
144
184
249
163
155
186
192
231
186
198
241
208
215
212
222
199
207
209
204
222
189
208
173
218
215
202
223
156
182
242
205
138
158
211
269
202
197
175
214
185
192
258
130
270
186
196
213
249
152
210
216
159
190
205
181
131
216
153
144
228
130
178
249
175
225
252
245
237
151
199
209
190
240
216
224
192
213
184
239
236
177
159
199
209
159
237
212
213
168
167
237
225
253
178
248
121
236
221
238
206
150
146
216
237
148
209
263
222
211
197
198
129
225
235
215
217
158
184
242
240
305
173
230
262
161
180
182
214
191
266
172
193
171
169
192
204
180
198
220
228
193
239
220
98
217
230
184
215
239
263
192
173
179
145
213
201
192
193
247
195
165
246
182
131
218
193
220
184
230
189
154
191
187
161
190
204
221
186
204
225
164
195
165
163
179
199
226
190
162
242
260
239
203
236
183
186
183
214
229
228
255
199
192
224
199
262
182
216
191
154
227
235
234
181
176
168
163
180
187
218
114
208
216
221
233
215
154
172
157
157
192
148
213
186
200
225
217
199
182
159
188
172
210
258
219
225
200
175
191
163
163
203
213
218
231
150
212
233
165
173
191
268
230
162
195
206
234
270
233
225
230
206
206
243
216
234
199
273
200
216
244
162
179
239
152
218
191
196
185
226
210
146
161
217
168
188
180
203
214
196
145
188
213
220
234
158
239
246
207
150
250
197
226
196
190
213
253
228
257
233
223
222
163
192
221
226
213
197
199
133
193
208
75
181
189
142
215
97
165
202
232
172
161
153
238
145
217
230
196
212
208
238
272
210
232
245
247
179
199
200
254
226
223
158
196
226
227
184
215
165
228
205
230
211
200
267
225
216
223
166
259
296
165
151
237
144
216
207
226
213
234
217
198
203
180
174
157
229
203
175
203
219
260
217
242
246
208
232
210
161
190
216
223
216
234
227
159
203
210
198
186
226
214
171
134
182
204
204
200
261
159
167
208
227
154
243
165
249
217
184
205
216
235
191
214
256
129
212
272
218
205
135
189
205
210
200
121
180
196
192
179
203
209
226
197
197
266
213
203
282
201
168
250
156
253
224
110
234
208
212
150
192
242
176
222
226
209
184
190
183
169
178
197
184
155
233
215
156
167
154
166
222
230
144
240
180
209
172
238
210
222
176
181
186
228
217
184
216
235
272
167
206
174
189
168
194
225
172
264
279
223
233
192
183
208
207
200
186
212
174
157
232
243
201
166
219
209
206
193
256
210
213
219
230
173
194
169
205
244
150
189
167
181
234
256
236
207
175
222
207
206
188
126
202
204
201
225
187
224
203
178
200
209
167
199
133
183
166
236
232
195
168
218
213
196
227
226
178
219
162
250
169
232
114
164
212
92
163
128
157
235
224
165
220
209
222
201
259
151
223
138
212
196
189
210
192
174
228
185
197
193
221
249
210
189
220
254
161
193
168
239
148
195
251
212
159
206
203
242
173
241
219
141
268
179
159
215
223
225
202
212
187
197
228
261
179
162
216
120
187
166
220
221
158
249
199
194
208
174
171
196
207
170
261
236
181
200
188
167
195
179
261
153
157
174
142
196
255
194
202
172
192
207
187
188
192
199
237
185
219
206
156
217
192
197
178
256
209
183
168
193
271
191
180
226
216
196
243
201
177
180
188
125
170
180
179
228
211
165
190
272
176
199
261
189
231
142
218
202
166
185
197
244
114
203
170
270
224
133
217
202
197
220
216
182
231
187
221
273
159
171
173
194
209
274
157
217
247
140
171
224
176
240
157
221
128
209
229
218
200
221
178
151
196
220
165
153
183
225
245
281
280
192
251
231
146
157
185
225
176
188
218
180
183
191
172
214
211
190
254
168
113
147
194
185
158
220
198
213
231
190
227
161
230
181
145
245
185
174
203
230
199
166
178
147
170
187
256
227
194
247
150
140
172
216
187
144
151
139
276
268
216
183
207
167
206
248
198
206
163
169
192
208
188
114
179
188
250
222
205
198
240
233
121
254
156
239
184
165
188
228
179
160
212
189
236
237
210
271
188
232
195
257
202
200
221
212
156
190
179
214
187
221
275
212
246
269
223
205
199
192
167
146
178
222
177
158
201
209
179
208
151
243
198
174
274
193
155
230
251
234
223
226
204
195
210
218
211
197
223
255
190
191
160
269
221
224
251
234
137
164
235
260
239
258
176
201
143
139
223
196
181
231
227
189
225
193
271
199
247
222
264
184
216
199
183
206
258
211
248
208
217
200
176
194
242
182
208
201
207
194
260
169
192
138
166
227
175
185
183
233
205
184
148
168
253
195
191
199
189
232
151
176
191
195
152
188
181
130
232
185
199
168
205
181
218
210
194
238
192
209
183
208
190
171
179
124
236
213
181
218
208
175
168
200
166
150
191
176
222
186
163
163
218
226
260
197
226
227
181
218
256
212
162
273
251
131
219
223
227
202
201
176
194
142
173
224
212
183
153
224
181
150
147
240
236
126
164
245
251
161
222
193
202
217
230
166
204
179
134
167
231
149
177
160
208
209
179
155
160
217
195
198
225
222
201
151
153
195
184
207
162
243
167
157
210
163
174
176
220
209
210
221
177
135
166
162
243
257
117
166
159
209
246
164
224
202
236
168
179
189
245
181
179
193
174
167
119
195
236
207
248
133
212
192
102
174
166
188
119
194
202
193
230
148
171
174
223
171
211
165
156
210
165
204
226
217
202
212
209
180
229
238
216
202
194
244
212
160
243
236
217
249
156
219
194
224
211
182
269
192
202
219
226
194
172
196
168
210
244
236
158
203
153
255
140
195
183
224
200
205
148
238
162
159
252
251
267
177
182
255
227
252
192
267
210
179
156
223
270
171
246
202
208
201
135
208
214
184
219
220
181
265
233
153
180
232
256
189
121
175
251
203
197
229
230
211
223
234
167
223
243
238
202
169
201
243
176
202
265
181
216
179
241
211
112
151
171
214
196
194
148
181
228
246
238
255
229
201
143
247
174
136
201
260
194
180
150
192
230
161
171
192
138
176
216
201
200
187
260
184
138
150
223
189
218
164
210
211
196
144
214
208
192
175
205
163
203
236
200
160
153
222
198
218
156
226
185
225
202
225
200
191
191
242
205
182
235
162
224
212
189
116
228
194
186
200
154
240
192
186
178
167
120
198
247
236
212
192
230
175
192
216
247
202
172
208
156
220
209
200
220
174
229
215
177
196
231
223
182
239
102
207
183
232
171
205
240
271
161
257
200
231
208
216
254
203
201
205
211
207
214
238
209
190
209
225
240
90
219
151
221
191
214
228
262
206
184
146
155
194
201
180
218
233
212
185
275
183
228
150
216
231
234
191
199
195
193
196
260
177
239
214
207
177
223
239
189
256
222
141
184
245
198
193
165
222
267
212
203
196
199
193
192
196
221
212
207
235
225
184
157
235
174
176
143
219
200
173
180
195
203
202
177
224
219
165
270
216
201
144
254
242
209
206
231
202
239
160
245
196
227
203
214
199
194
234
252
248
152
190
216
240
181
251
165
239
178
190
207
150
174
201
206
216
221
209
172
190
226
236
235
200
202
233
169
203
147
178
174
248
211
210
210
138
190
149
217
211
238
250
193
203
219
202
202
154
250
295
220
216
160
244
199
186
198
207
213
140
198
218
218
192
218
169
181
196
220
207
185
274
144
231
166
137
197
151
210
195
256
142
178
201
206
166
189
192
250
178
166
248
235
176
190
243
251
183
209
180
195
221
237
212
169
179
244
201
175
196
224
206
242
173
166
234
179
206
211
261
206
190
255
183
192
263
182
218
248
139
207
162
201
238
181
189
211
144
192
234
225
220
170
183
170
207
200
172
185
229
177
200
236
188
268
251
160
209
257
256
223
221
214
226
231
143
184
232
168
166
165
231
174
125
170
254
180
183
178
174
222
250
202
220
220
165
248
155
242
145
217
201
168
183
232
208
204
244
200
178
180
181
213
182
127
168
255
260
167
197
181
177
162
248
205
250
126
274
232
174
176
245
223
205
187
208
195
226
235
206
137
136
156
209
195
174
215
176
132
264
198
223
210
254
169
184
267
220
177
192
225
200
207
147
238
226
183
238
189
260
107
234
202
257
216
138
205
199
231
182
209
250
168
113
163
252
205
243
147
193
158
221
213
204
207
211
146
167
166
260
177
224
187
209
204
209
159
203
157
175
212
227
234
183
223
154
129
169
242
204
231
178
203
178
193
220
214
188
187
240
155
173
167
179
162
236
255
187
212
190
223
228
227
243
195
229
152
206
247
196
230
216
199
190
137
172
202
259
232
257
204
159
274
217
212
235
240
195
196
175
169
145
193
180
178
195
263
183
233
193
210
208
205
145
190
209
197
201
107
205
242
183
234
218
209
187
234
220
222
116
184
172
218
227
214
209
144
199
183
173
161
226
228
198
241
243
201
154
183
243
211
222
167
182
141
199
157
156
168
168
219
187
147
150
141
197
198
214
153
187
201
211
239
229
226
170
221
231
225
210
143
178
215
251
146
250
193
215
180
263
248
127
247
243
200
198
226
204
207
251
238
230
153
189
192
207
268
221
272
218
217
261
216
248
182
219
235
266
180
182
190
209
252
219
207
194
177
229
153
147
222
184
233
253
195
214
252
240
164
168
155
194
165
208
226
225
187
202
240
150
175
172
192
224
223
183
200
229
218
259
255
188
208
219
232
160
213
136
207
173
105
209
203
206
185
220
169
217
195
209
195
229
245
205
202
198
175
139
196
169
195
240
191
170
238
223
219
210
238
223
150
252
132
153
231
197
126
127
202
141
199
243
213
145
190
232
190
188
193
177
188
253
232
222
236
240
153
208
165
193
182
148
218
155
177
164
205
164
238
194
167
251
150
163
184
226
204
223
213
176
192
207
188
169
236
193
206
181
218
182
174
173
222
180
209
247
189
145
218
218
232
237
219
222
176
131
160
214
225
192
163
219
194
195
89
200
174
179
241
249
179
212
215
160
194
184
133
215
174
209
212
233
213
194
207
191
195
185
195
187
189
250
221
230
230
198
174
196
273
198
198
207
195
218
185
189
195
170
188
232
169
190
184
220
148
139
243
172
230
151
172
244
178
162
266
234
184
168
195
132
197
255
181
190
172
179
232
160
198
226
199
245
203
160
217
233
207
145
127
255
108
216
245
164
196
198
251
240
192
209
288
220
218
170
230
250
203
193
241
217
218
213
109
196
213
199
164
188
251
243
236
211
217
124
209
181
213
246
198
157
179
179
203
216
217
201
206
138
203
190
219
199
272
169
141
183
232
186
214
188
140
203
168
270
184
179
223
186
224
192
258
226
241
133
203
191
247
228
209
188
237
201
206
220
216
153
204
120
200
227
140
216
180
223
229
266
176
222
232
253
237
228
213
190
124
235
267
250
230
223
244
155
255
175
181
238
168
188
211
240
170
173
159
219
239
232
204
151
193
163
169
160
250
229
162
236
228
173
157
206
233
214
218
221
249
206
148
147
197
193
214
253
200
144
104
193
180
236
271
222
205
233
241
187
141
165
235
198
228
259
210
185
172
216
208
175
237
173
186
247
207
252
214
140
185
205
193
250
219
205
219
226
148
196
159
203
229
136
228
154
247
184
206
148
253
221
181
203
193
214
215
205
210
268
225
175
199
235
235
202
156
248
232
206
201
208
238
151
250
187
169
199
222
167
166
134
197
230
244
220
202
180
193
206
164
278
141
161
212
159
242
228
166
235
173
235
72
198
143
233
244
159
211
223
164
182
213
259
179
171
193
249
198
197
228
155
179
233
221
203
171
215
150
216
221
240
208
227
157
167
208
155
169
226
261
148
245
226
176
192
226
206
275
233
213
216
159
161
148
150
122
146
187
202
139
195
213
190
236
167
231
158
175
238
250
213
191
230
192
134
199
191
225
206
216
176
189
255
199
198
222
163
216
150
228
257
139
155
166
223
161
181
205
176
201
204
182
231
209
156
210
275
220
168
198
122
151
237
179
179
223
179
184
182
173
160
162
200
194
223
247
204
195
203
215
213
231
210
175
154
177
170
229
214
192
186
201
223
180
164
237
160
252
180
195
169
245
189
279
222
165
191
181
225
238
184
222
188
223
176
251
205
199
239
168
241
245
182
214
131
191
232
148
185
233
203
180
284
217
217
186
227
173
237
170
223
134
157
213
163
217
150
169
166
209
234
219
239
220
184
238
240
184
254
223
219
202
264
222
243
226
169
179
140
193
213
215
275
187
203
192
132
169
172
250
156
193
284
172
239
225
214
207
175
246
190
247
221
195
249
170
225
169
223
129
175
175
188
226
197
207
178
151
171
236
182
207
255
140
162
151
185
204
122
131
204
206
169
203
186
173
178
190
250
173
169
225
210
197
138
238
267
172
163
227
244
227
171
185
173
210
173
205
208
243
164
237
208
137
197
186
160
211
230
236
167
242
206
153
201
224
235
227
212
227
209
253
188
199
187
128
264
168
211
236
163
213
260
205
217
212
159
177
226
177
203
212
275
211
160
244
218
219
195
246
187
182
217
217
245
167
165
164
182
221
237
159
205
197
133
237
229
273
141
167
182
207
245
190
225
193
196
237
229
147
240
243
187
160
247
188
214
215
159
148
244
213
225
197
106
221
203
174
176
192
132
209
255
195
235
189
215
178
236
201
163
200
156
217
184
186
233
226
142
244
234
222
150
142
139
221
206
217
212
240
250
267
235
150
181
179
219
162
207
144
217
190
148
240
243
243
178
139
208
208
243
250
151
185
161
145
188
175
200
195
173
141
177
133
217
148
159
211
136
233
207
199
177
148
275
215
238
246
207
251
206
171
222
143
154
137
201
220
149
191
187
172
199
184
149
177
223
263
224
242
148
205
191
166
211
208
227
234
262
252
244
173
307
250
140
184
174
167
250
153
193
271
185
227
215
210
208
207
265
172
161
196
195
137
158
232
186
227
188
121
161
195
215
150
191
138
187
185
169
218
186
154
205
162
213
149
248
258
234
211
198
269
193
188
78
139
212
208
129
220
172
229
219
172
269
208
195
193
133
182
198
210
202
257
244
167
158
241
178
204
226
140
229
199
231
218
185
202
208
185
223
212
203
158
224
228
183
216
242
209
213
181
214
249
245
274
243
201
130
176
203
244
215
169
202
241
222
227
214
178
211
211
209
197
250
175
161
181
171
212
184
149
184
227
207
211
185
182
206
260
203
237
249
196
173
189
167
237
189
225
202
151
163
221
227
242
186
213
191
158
195
197
185
176
218
263
200
194
235
231
211
226
137
198
186
186
214
205
195
198
234
150
280
211
253
204
237
201
214
184
193
224
170
203
232
198
204
230
126
270
149
163
292
185
236
221
217
148
209
246
220
216
211
283
133
227
183
231
196
202
216
202
155
167
255
256
143
212
240
215
152
218
183
211
222
108
182
218
130
152
186
220
267
214
211
190
204
155
157
191
241
214
206
162
231
229
195
222
221
183
161
197
140
290
242
164
215
192
212
134
246
255
199
178
225
178
189
166
213
232
147
148
227
243
181
183
201
258
266
250
254
266
209
200
213
188
225
177
260
128
232
175
240
242
234
194
258
244
238
163
159
200
132
243
150
198
186
213
188
214
199
190
189
199
246
229
268
271
187
87
258
154
170
267
190
183
188
185
165
244
232
208
214
189
124
206
141
184
221
212
243
186
273
179
220
177
162
166
211
192
286
255
249
214
213
194
154
162
194
193
203
239
237
193
181
167
152
213
133
250
243
216
220
173
163
220
251
158
241
123
163
217
123
193
155
254
181
199
161
163
219
261
211
195
191
246
199
210
245
169
156
173
181
246
225
231
196
192
204
166
213
235
222
208
224
225
207
164
163
231
196
170
248
249
168
235
180
184
189
170
188
166
182
190
205
281
167
214
146
229
211
175
194
203
141
277
235
187
221
195
241
199
199
133
203
229
174
117
180
206
203
213
209
186
187
239
187
221
196
261
173
172
194
156
229
169
113
168
209
215
183
220
270
209
141
245
214
257
247
168
188
214
211
172
205
204
219
207
146
189
156
192
197
115
143
201
226
207
262
192
219
200
242
212
186
246
179
146
190
225
209
170
209
192
160
226
215
176
168
215
131
148
199
187
198
275
116
114
185
183
133
199
201
232
172
205
142
240
265
200
170
182
216
207
224
146
212
180
149
131
212
164
233
186
178
181
191
250
224
262
234
201
185
179
219
182
198
165
172
183
229
174
230
125
232
211
255
234
221
203
164
198
179
209
192
242
214
217
232
272
178
122
200
276
250
204
199
204
150
195
123
219
172
216
217
167
180
246
157
146
198
218
224
215
224
200
253
266
206
192
172
263
218
173
254
223
259
206
201
208
192
229
166
240
200
229
170
182
208
196
259
223
146
279
221
205
187
182
199
162
209
209
208
222
222
234
185
170
228
172
236
144
155
180
175
165
156
203
232
200
207
217
206
182
138
223
110
170
175
182
192
220
212
158
139
204
151
220
182
202
229
233
197
192
199
217
214
139
226
196
180
147
209
233
253
134
197
160
187
149
225
235
167
220
202
172
156
131
163
222
204
198
174
209
199
219
259
189
175
189
117
163
179
199
205
170
195
229
165
194
231
159
218
198
222
248
225
201
190
178
203
187
244
178
179
275
225
212
168
203
215
197
189
231
192
220
202
232
204
257
231
172
170
204
218
209
224
203
218
223
174
260
141
265
221
252
184
194
199
191
223
210
203
213
135
156
132
217
224
241
179
197
197
171
260
213
184
146
212
204
171
184
180
188
207
255
127
227
186
154
206
228
201
176
186
211
166
179
211
238
236
163
190
240
141
220
171
241
201
176
215
248
151
231
178
155
102
170
185
208
221
207
209
191
195
205
206
142
225
171
156
169
167
155
245
214
217
205
139
210
213
182
217
138
213
218
168
251
171
249
215
192
174
153
140
237
195
96
241
133
122
252
190
215
203
213
163
239
249
195
172
180
197
178
192
213
224
215
246
258
232
235
119
241
155
208
236
222
185
184
229
206
187
203
186
184
178
190
190
215
207
162
226
271
213
261
209
158
240
180
192
229
197
254
153
204
181
178
208
213
209
109
221
224
170
238
162
193
242
139
190
195
233
185
166
203
182
214
208
162
191
187
122
143
211
224
223
255
179
212
191
161
216
234
188
178
137
244
181
216
154
271
217
238
205
174
196
250
162
192
163
219
188
212
239
162
138
144
285
173
164
249
162
197
208
161
223
240
231
178
156
173
254
195
188
219
163
184
254
195
235
179
202
150
238
203
199
229
208
183
192
206
251
237
245
179
177
218
162
259
270
214
206
199
114
162
229
245
214
202
236
206
216
173
208
162
218
308
210
179
185
94
185
188
143
203
209
207
133
172
222
208
209
217
254
221
136
179
229
181
216
161
157
196
186
182
156
281
276
152
256
203
225
201
140
276
143
176
218
159
226
159
214
203
199
138
249
253
253
232
177
152
248
236
229
195
106
199
240
244
184
226
184
246
218
153
208
137
237
197
223
164
194
209
201
243
211
196
229
182
181
281
190
204
237
179
222
241
190
195
247
207
136
152
208
212
187
184
215
179
276
240
189
176
200
221
224
232
206
215
104
214
204
181
143
174
241
186
137
210
168
195
209
268
212
211
215
169
231
211
225
229
218
183
181
198
230
157
243
262
195
217
249
157
165
212
202
157
152
216
181
253
272
197
129
217
192
237
170
160
227
184
191
132
197
146
155
242
200
233
180
172
177
238
172
194
213
206
183
159
249
236
234
203
200
165
167
219
165
188
194
188
208
243
230
179
200
137
207
176
170
152
176
182
155
218
241
179
250
194
197
193
186
150
249
257
193
118
227
234
227
149
186
223
221
154
207
229
175
208
198
164
232
183
153
185
205
221
207
241
165
238
188
269
250
238
189
199
223
201
187
173
167
157
177
225
168
206
210
270
249
211
211
233
95
218
248
247
183
238
176
225
152
170
211
157
158
174
197
180
226
179
147
162
150
185
215
237
154
186
203
159
244
221
263
165
183
155
188
243
173
143
250
178
131
194
200
176
189
231
175
238
220
216
218
241
175
208
245
155
178
144
149
217
215
168
211
158
161
195
182
132
233
165
181
205
234
238
84
148
164
226
220
215
183
207
221
161
202
236
186
290
215
207
228
214
200
159
229
238
244
201
174
195
172
191
144
159
209
239
274
223
255
180
195
220
166
215
128
168
191
174
178
215
173
207
244
204
243
186
162
174
134
225
177
140
165
219
170
170
155
129
207
226
246
216
172
173
171
179
247
168
163
177
182
123
194
84
158
201
210
165
195
189
176
213
235
230
216
199
142
189
157
233
150
185
208
211
185
204
224
206
202
208
186
214
266
253
247
190
175
239
252
198
228
250
143
180
191
214
248
96
179
227
182
195
209
165
233
200
214
164
124
220
232
220
177
198
190
224
195
229
211
176
120
255
225
178
204
211
258
215
194
181
168
217
173
206
177
256
190
197
227
168
169
240
222
214
184
226
225
127
163
213
186
218
203
219
190
245
216
169
172
174
176
213
208
169
206
184
169
244
160
205
136
213
183
188
247
197
231
194
240
188
192
197
226
185
243
263
142
223
200
169
180
197
265
227
174
181
139
172
167
190
211
191
201
147
210
225
109
164
236
255
230
138
247
214
214
140
132
227
260
166
203
219
214
214
241
198
162
167
204
168
164
207
218
295
217
232
135
182
185
243
205
229
203
221
165
200
213
208
185
155
210
213
209
191
247
201
257
164
224
139
158
245
170
256
225
167
131
220
286
149
209
139
205
137
187
253
231
286
192
200
224
163
203
206
185
260
202
214
202
201
207
196
208
209
240
187
178
233
240
243
161
173
179
247
149
123
205
210
156
158
210
117
159
149
213
181
169
164
189
171
169
178
220
241
205
235
181
179
165
208
241
186
121
215
160
164
168
194
236
230
203
191
113
220
254
271
209
202
216
214
172
196
118
186
248
189
189
172
174
179
173
228
169
215
195
225
199
160
173
167
245
274
152
221
200
125
178
171
156
275
225
235
201
257
229
200
203
220
233
163
271
215
184
187
219
215
243
190
210
217
201
216
198
230
197
193
187
196
229
175
247
150
217
206
223
188
167
246
219
246
240
216
135
170
229
236
179
191
186
201
208
232
256
226
205
215
219
167
191
242
166
174
273
194
219
178
173
215
249
186
214
158
225
196
197
240
247
218
202
170
225
245
165
239
162
189
172
231
270
201
246
217
260
208
232
204
195
184
200
106
158
239
200
246
214
210
133
225
163
250
206
226
151
152
183
166
191
199
231
157
245
160
215
204
190
241
234
214
200
216
205
200
233
211
178
185
226
191
203
147
208
233
182
187
225
178
221
209
173
235
250
207
192
219
222
272
208
218
220
212
218
254
141
227
262
170
196
151
216
237
166
228
197
193
232
132
208
185
241
215
255
170
217
216
139
185
226
201
231
223
194
209
156
198
244
138
214
235
247
186
252
201
177
251
236
251
185
149
170
193
197
242
267
179
175
212
161
180
163
254
252
118
195
188
195
190
215
229
200
234
223
162
199
191
186
193
214
206
210
223
247
222
255
115
216
152
189
223
220
275
210
218
177
213
228
198
154
221
184
256
263
169
208
185
193
177
164
152
232
207
245
231
168
231
129
161
166
195
258
218
192
194
175
190
219
187
193
225
159
257
154
178
217
205
248
230
218
236
211
136
218
166
140
188
203
163
185
256
191
193
141
217
224
210
189
211
166
228
172
199
186
255
202
213
209
178
250
223
143
146
204
245
186
220
174
231
186
229
237
186
241
167
238
223
215
189
232
240
190
174
191
178
175
183
201
200
270
173
230
176
199
246
163
185
218
194
194
235
224
228
163
236
155
222
206
201
182
208
250
213
229
128
251
159
209
232
186
233
233
222
252
219
278
209
190
174
164
230
211
174
154
177
235
185
213
166
229
187
200
251
198
235
197
151
240
252
227
177
206
215
193
184
170
184
201
257
199
158
163
183
179
241
221
181
199
189
195
253
158
263
231
160
217
140
238
199
195
204
161
188
188
200
228
122
200
235
220
254
163
171
203
112
208
181
224
189
197
171
138
216
225
179
216
191
182
199
248
180
177
172
218
197
220
194
193
222
218
167
199
225
105
182
260
152
214
230
183
204
171
185
193
223
225
206
199
231
211
215
216
151
187
192
212
234
192
204
241
194
210
189
205
219
247
179
182
217
183
247
191
161
221
204
141
267
196
198
215
163
198
161
174
118
207
154
234
145
214
194
134
161
189
260
227
212
203
168
141
211
188
222
232
162
168
235
219
187
225
237
258
230
247
223
190
220
191
175
222
232
176
227
180
274
237
217
239
211
272
199
245
267
162
145
167
238
174
234
217
221
157
186
219
126
183
273
123
207
173
216
153
169
175
230
210
217
208
191
181
175
246
222
154
123
200
206
112
226
192
187
179
204
211
211
199
186
169
174
218
210
188
203
183
290
243
160
211
257
225
152
187
231
214
148
220
214
180
145
191
190
228
190
214
175
245
238
201
132
211
209
221
239
256
233
170
236
180
157
196
193
238
177
186
213
205
199
279
184
126
219
184
178
212
177
184
203
205
211
228
163
211
201
222
234
264
200
207
199
169
221
183
215
234
282
171
200
194
156
177
179
232
176
146
187
263
180
263
223
203
228
269
204
249
213
180
192
224
212
165
201
186
160
205
177
204
232
182
183
176
200
135
235
208
211
246
176
188
220
250
125
149
146
203
198
195
227
257
238
167
228
224
225
222
226
240
212
166
182
207
190
213
129
207
172
219
190
184
207
183
247
226
202
183
196
199
246
186
251
138
181
177
179
145
274
207
203
211
251
229
150
206
236
213
235
162
207
205
225
176
222
189
178
208
257
147
115
243
115
167
231
158
271
197
220
130
143
232
153
238
207
202
247
228
160
208
168
213
192
208
169
276
233
220
192
241
260
176
223
165
229
173
192
189
216
175
205
209
150
239
232
210
197
223
231
195
213
208
178
209
171
147
218
192
195
184
210
177
189
169
170
206
152
270
200
175
108
211
285
183
188
202
154
185
177
203
182
150
168
207
196
127
218
254
245
181
189
245
214
202
227
240
230
174
161
222
198
254
179
130
212
219
173
225
189
213
231
164
121
201
165
197
190
216
181
176
281
261
192
155
190
237
237
240
250
228
217
240
248
107
142
238
194
208
143
174
175
212
177
252
204
185
202
155
200
197
142
189
184
204
213
220
239
235
166
138
210
268
211
262
167
170
222
187
136
216
242
207
244
217
198
233
200
163
216
172
184
140
131
153
203
178
162
253
147
166
174
226
181
139
166
246
243
155
227
256
258
226
147
238
174
203
215
226
197
224
233
216
194
216
155
204
158
229
212
188
222
245
205
258
236
227
238
180
169
174
224
176
228
201
180
187
238
221
256
168
210
191
197
157
218
169
250
254
194
205
177
147
213
162
169
219
195
159
172
217
198
193
203
257
157
199
230
204
194
255
187
221
190
193
229
191
161
215
171
181
240
181
249
137
190
197
227
238
169
155
276
198
242
212
161
257
218
119
291
158
190
254
218
247
183
217
156
182
230
236
223
190
213
208
270
222
207
243
175
245
163
248
238
224
254
253
118
184
180
214
194
152
182
172
228
177
177
180
234
212
231
198
244
212
186
221
195
214
211
169
213
220
202
242
169
245
156
192
249
182
203
231
193
276
188
211
231
162
210
223
175
198
209
184
222
144
207
253
167
233
225
181
183
213
208
260
153
242
180
175
205
148
148
238
188
251
105
208
222
256
212
168
212
182
249
208
148
255
227
201
224
207
181
170
203
215
268
153
149
203
190
228
192
254
155
167
134
239
198
194
228
215
228
171
149
239
182
166
256
228
158
149
186
167
198
135
205
207
195
208
156
162
199
187
246
206
220
182
160
237
207
216
207
172
260
218
191
193
206
175
224
166
161
203
170
204
200
223
187
226
150
233
202
205
192
164
253
182
153
208
218
186
211
199
250
208
166
217
179
181
138
129
168
200
241
206
207
255
194
203
172
213
258
186
212
140
246
215
228
206
167
230
187
243
196
197
216
207
188
216
236
207
222
241
189
269
203
241
282
212
168
180
195
234
248
151
250
227
190
189
195
225
219
170
147
159
203
168
175
236
203
168
155
141
159
227
206
197
231
258
238
183
230
150
207
206
213
252
195
228
218
197
151
206
105
213
210
120
204
209
219
232
192
115
207
147
198
131
157
177
217
229
186
176
165
205
171
181
181
203
240
233
231
196
189
184
194
164
231
165
221
254
191
229
196
262
193
198
173
169
219
195
184
233
203
214
213
239
193
166
187
225
211
191
187
185
228
215
185
209
171
208
220
195
173
245
77
181
254
180
165
215
228
218
176
244
165
216
158
196
189
196
196
200
156
181
204
174
200
203
204
193
228
177
138
180
211
152
237
173
197
231
235
203
188
228
178
205
226
137
142
219
173
231
151
223
205
195
230
198
226
136
210
185
246
169
222
179
148
229
255
232
180
161
126
229
265
193
216
144
193
205
198
132
252
210
191
183
251
168
219
246
254
205
212
196
246
191
222
198
256
212
178
210
219
244
219
219
161
173
221
189
115
205
228
204
182
182
225
228
221
167
230
201
163
123
248
190
171
238
204
236
247
278
196
230
154
219
185
256
185
198
179
245
198
194
239
239
205
174
257
181
158
158
238
181
182
178
132
210
164
218
151
241
202
207
219
202
241
157
214
212
244
224
199
198
247
204
183
162
255
209
162
143
187
254
173
246
163
208
209
173
193
174
186
168
180
234
238
176
166
169
198
168
135
210
162
147
155
201
203
253
165
168
247
217
226
245
254
205
271
211
116
198
177
187
236
200
253
239
256
236
229
134
190
287
156
237
177
182
178
208
180
111
192
200
182
202
203
201
209
178
160
211
214
197
237
209
244
139
221
237
164
211
211
170
159
199
132
173
158
238
188
217
153
139
181
199
199
120
233
190
162
255
183
212
173
217
193
235
185
189
248
187
215
233
208
187
198
193
176
211
139
199
189
187
221
141
230
180
189
195
203
208
189
144
147
241
226
207
225
230
220
187
258
192
138
182
188
106
134
217
151
206
172
185
216
196
177
154
163
201
214
211
215
246
222
180
212
201
207
200
209
150
149
159
255
154
248
237
245
227
192
224
200
176
228
181
178
226
225
182
138
206
196
235
245
174
166
183
165
280
210
132
203
158
223
185
225
176
241
226
141
204
243
200
223
175
212
184
214
191
243
243
214
174
160
207
261
212
249
216
209
232
183
197
219
235
129
207
234
238
164
242
208
208
156
205
231
198
174
170
220
225
142
247
220
213
192
191
227
214
170
220
214
128
211
251
239
204
217
212
168
246
176
271
205
147
194
261
156
224
223
136
200
179
206
202
234
221
216
204
243
154
235
274
196
192
176
228
216
215
161
178
224
163
219
224
240
204
180
207
186
156
203
160
186
208
222
222
141
184
254
222
219
207
198
179
224
227
180
164
219
255
153
189
249
221
168
217
189
205
184
226
158
182
159
193
227
180
236
200
227
202
191
169
211
226
225
222
215
187
257
235
223
191
192
245
190
195
127
191
224
160
185
189
187
180
204
215
197
148
206
268
149
227
235
232
254
170
200
171
257
250
207
217
179
226
166
216
170
183
129
186
205
203
171
130
233
162
180
273
195
210
278
195
222
152
206
235
213
220
219
175
231
246
192
236
284
122
185
229
239
212
146
201
198
215
206
262
181
192
209
160
179
167
147
136
234
268
170
245
179
194
228
132
182
196
201
228
178
198
147
170
220
229
221
178
215
171
189
226
182
257
138
222
170
222
187
208
215
188
173
226
204
226
198
179
201
213
188
184
173
199
231
279
245
187
178
198
202
162
200
222
216
123
275
196
268
226
163
156
176
259
158
238
191
201
192
193
180
147
211
195
201
238
210
199
247
223
216
173
249
172
247
187
188
258
114
237
134
211
259
196
239
170
262
201
207
248
168
171
237
157
209
201
192
223
204
250
193
259
189
169
220
234
219
199
191
171
184
190
235
262
219
174
161
192
234
184
202
123
156
202
207
186
208
238
170
169
292
209
214
235
175
205
236
143
226
194
208
205
218
233
188
195
258
190
162
168
215
209
164
226
217
233
199
211
213
165
239
161
202
148
184
242
189
197
222
229
191
231
215
192
167
216
191
172
196
256
215
278
166
263
227
231
192
231
233
179
243
179
164
152
212
187
210
174
184
208
186
186
182
211
248
130
249
190
215
173
145
176
198
189
201
243
174
224
203
160
138
186
190
206
208
153
204
205
254
177
219
224
171
198
180
161
233
210
176
239
254
201
126
209
243
234
212
200
161
198
171
178
211
228
181
213
228
206
244
234
203
300
205
258
212
152
230
188
247
168
198
147
177
228
146
195
235
195
218
189
164
212
201
196
123
243
211
256
199
189
210
205
196
224
178
228
167
196
193
199
171
164
136
233
127
215
197
180
201
206
190
163
195
135
209
189
218
196
199
155
169
176
181
241
253
248
193
152
167
222
197
213
177
204
238
104
196
127
172
144
212
178
233
224
179
191
285
161
195
162
137
168
218
221
149
180
294
216
192
164
232
233
248
221
211
234
130
189
203
258
223
181
236
236
259
246
246
213
185
138
160
219
217
234
188
114
231
260
208
149
218
207
129
238
195
95
246
154
185
162
226
226
239
168
170
177
256
157
245
256
204
220
249
247
208
229
239
168
274
142
207
200
183
151
139
200
166
278
219
239
149
200
242
198
226
181
169
128
208
260
182
169
239
208
167
238
247
186
128
182
169
189
224
199
210
201
182
192
218
178
203
210
230
180
213
219
189
240
153
120
176
209
243
192
220
181
188
177
221
201
168
230
169
189
186
248
239
252
260
225
183
254
159
193
199
212
215
238
185
202
215
157
115
256
204
209
202
146
197
203
209
181
135
265
163
177
284
215
202
153
203
213
210
206
134
212
229
227
247
240
193
211
214
219
251
171
167
157
191
263
162
175
280
134
190
248
229
190
176
198
247
173
238
242
199
210
208
225
177
232
203
215
178
203
221
230
212
245
225
169
175
231
205
223
257
194
247
159
201
229
236
208
167
174
197
253
180
220
214
224
220
129
181
223
175
173
202
185
188
222
247
252
209
223
194
287
226
244
230
134
183
212
174
265
199
204
227
162
261
169
146
205
159
182
155
155
233
237
181
202
99
204
208
199
225
161
206
272
217
188
259
203
198
221
215
204
207
187
178
243
249
233
204
182
177
180
223
161
184
198
185
205
220
206
256
178
198
206
191
226
193
280
233
246
247
247
161
165
207
219
170
211
209
194
167
217
245
256
161
148
172
257
166
187
189
226
181
264
236
235
181
228
176
122
251
173
186
230
260
187
264
223
218
127
195
152
221
218
116
143
192
237
151
193
186
190
236
215
167
238
186
210
150
201
212
199
196
167
220
206
198
165
159
226
176
242
164
237
292
219
227
239
233
180
231
191
224
209
141
133
186
200
249
238
192
268
234
215
161
245
184
170
178
239
159
144
211
184
201
224
160
204
195
236
178
162
184
218
251
194
180
212
169
134
169
236
246
120
232
168
160
183
210
206
209
210
168
204
158
196
269
192
205
169
128
197
176
235
261
224
220
247
204
227
205
182
161
184
200
182
217
168
233
158
190
207
210
197
181
199
203
186
201
179
174
250
154
193
162
193
210
220
250
147
204
195
160
224
213
150
218
248
191
219
129
212
241
169
205
215
179
180
242
179
202
201
218
168
146
230
174
169
165
269
181
183
204
189
190
207
195
153
169
195
216
203
149
189
190
183
283
165
264
208
202
214
152
228
223
189
214
161
130
190
216
176
215
273
207
227
146
205
172
211
169
211
258
238
187
241
212
214
234
231
192
181
173
190
197
182
140
220
194
152
233
224
232
191
167
234
249
203
233
156
187
225
192
176
177
195
249
159
208
150
167
179
163
156
144
163
236
199
263
156
220
199
223
137
173
213
239
217
180
236
227
134
200
228
138
235
232
162
199
204
156
218
212
141
151
221
241
145
225
262
189
149
181
238
195
206
178
219
184
161
163
243
222
220
183
199
193
201
164
181
224
230
201
258
229
228
189
224
170
208
161
193
209
203
175
223
184
208
218
202
231
239
163
200
214
198
189
246
204
183
187
210
150
197
178
207
217
255
232
187
253
195
217
192
231
196
156
217
169
177
154
175
198
247
144
166
180
248
140
189
235
188
207
197
202
227
211
191
246
187
176
138
213
186
198
215
186
178
197
247
204
170
169
213
200
109
170
177
204
183
230
237
208
235
251
168
171
174
189
217
205
230
163
231
192
123
227
195
156
209
190
236
224
182
197
237
174
214
218
156
170
191
148
213
249
184
192
226
193
183
193
220
183
231
214
175
189
221
151
175
235
210
160
223
182
214
205
135
175
244
215
237
171
192
178
238
203
216
210
205
134
195
223
237
223
226
150
215
219
195
247
230
151
290
185
172
195
173
173
193
176
153
139
169
208
238
169
175
268
204
214
164
225
200
192
265
213
208
201
150
247
181
170
254
258
232
224
213
239
175
244
245
147
223
192
180
220
224
130
195
226
184
240
221
152
229
186
192
181
206
252
126
207
168
223
171
194
168
169
226
211
154
172
184
197
230
191
167
135
188
150
223
192
228
147
243
188
195
211
219
141
247
254
200
192
233
164
177
194
221
113
222
141
232
153
209
195
216
125
155
222
199
208
230
185
146
159
214
258
146
176
182
237
182
145
251
203
200
209
219
211
156
211
145
152
165
199
148
178
210
218
187
203
269
197
157
225
189
231
219
259
181
223
182
173
205
177
246
154
201
208
219
193
202
241
203
219
197
196
175
238
232
162
181
192
175
220
183
149
236
249
211
152
231
141
238
198
236
198
213
222
206
166
216
169
137
165
226
170
234
183
235
183
262
249
254
229
188
217
173
290
164
193
225
198
189
210
230
169
145
201
191
188
163
164
230
166
223
229
147
159
135
239
195
187
242
134
254
213
206
204
285
223
193
186
231
231
217
165
275
245
201
272
223
230
203
201
202
211
155
171
201
216
220
164
206
176
150
214
235
187
183
197
210
158
203
196
167
225
234
239
207
205
205
236
188
186
167
155
232
232
146
184
178
249
200
215
145
199
251
193
264
216
222
224
184
228
215
179
223
199
207
220
164
196
201
177
165
187
216
205
214
169
176
220
180
245
251
226
204
258
236
237
231
172
193
170
242
160
258
207
195
241
240
162
230
208
249
180
276
256
242
178
233
123
199
164
199
225
207
209
234
168
241
188
239
185
159
224
218
204
180
184
200
184
217
199
174
248
285
229
213
199
174
201
191
191
180
193
199
224
212
207
222
198
197
157
218
213
210
201
249
217
216
132
191
202
225
245
237
176
169
177
261
224
224
184
203
211
216
139
167
233
222
163
138
214
226
214
208
202
197
214
283
217
97
188
115
186
239
232
230
247
115
179
263
176
181
220
198
234
206
181
176
205
267
221
194
184
168
201
152
224
124
208
292
193
172
161
189
132
195
192
231
185
181
173
177
183
179
212
219
231
220
175
157
150
249
199
211
206
211
196
192
169
232
183
167
185
227
188
210
177
158
249
217
231
187
282
144
232
171
152
166
202
199
240
154
235
190
118
199
269
284
222
228
155
239
279
230
249
163
181
221
175
235
233
205
219
219
165
207
193
195
230
237
233
191
228
209
211
185
203
164
191
174
197
213
207
245
118
228
248
220
175
168
240
123
239
177
197
101
153
208
237
190
227
168
203
208
158
244
136
217
213
163
188
160
181
225
127
204
179
187
176
239
175
249
232
115
218
208
240
235
145
163
186
225
200
206
230
183
221
205
160
200
146
229
191
148
215
218
177
181
146
220
197
190
228
176
149
201
231
205
261
259
142
171
216
201
184
232
170
188
172
271
200
199
180
230
104
169
238
204
195
225
222
168
213
180
163
226
155
210
226
188
199
179
182
203
225
216
168
225
216
255
184
276
248
203
177
222
178
206
183
188
224
201
236
174
216
183
189
177
184
170
221
203
213
171
146
186
218
227
207
216
164
199
264
281
202
198
250
265
210
203
162
221
251
165
191
215
139
251
159
226
218
234
167
139
196
155
245
118
256
249
224
182
214
210
139
217
164
214
188
164
209
193
221
208
218
204
244
123
232
285
137
252
206
190
154
264
146
235
256
232
207
211
212
270
210
252
181
213
221
198
185
176
256
190
192
152
212
238
256
157
166
205
221
160
175
175
270
229
215
154
187
208
183
171
176
159
223
247
168
186
243
189
235
200
194
182
175
160
109
217
237
162
215
217
179
217
232
165
223
172
217
265
201
245
205
172
222
232
188
195
211
162
244
159
198
136
120
164
196
240
179
173
165
167
250
223
226
142
215
179
171
184
180
167
224
128
214
200
239
208
194
181
229
262
208
202
214
192
236
206
204
178
265
196
222
180
292
224
219
165
135
188
173
193
219
216
176
158
215
190
173
208
195
203
126
232
176
190
162
217
176
202
196
202
162
222
179
180
188
177
304
185
239
169
226
131
180
180
256
169
260
159
202
171
188
215
243
200
215
262
261
150
225
177
129
134
236
182
163
189
209
206
201
210
251
179
211
177
258
144
202
203
230
216
258
175
233
190
234
147
179
207
211
202
232
131
209
232
269
190
150
223
170
221
226
229
241
243
230
149
218
195
243
200
199
179
207
188
161
211
174
202
236
221
230
223
196
220
215
208
201
182
212
147
247
204
201
207
259
158
161
217
201
231
218
215
197
209
152
205
247
227
183
219
224
165
230
175
210
191
253
186
213
220
187
181
161
218
165
193
204
132
207
231
171
177
188
214
228
192
219
202
195
230
223
189
159
230
245
121
225
173
193
230
267
286
188
212
294
128
212
195
111
191
235
208
240
149
197
155
200
196
174
206
214
216
208
199
242
225
208
212
142
156
244
228
195
254
178
222
166
218
211
242
202
139
233
155
187
222
139
185
226
200
248
221
216
220
222
177
225
201
203
210
203
176
248
214
212
224
149
156
174
199
194
211
179
171
179
204
213
217
151
124
166
248
224
244
168
224
202
134
178
138
249
180
244
212
222
201
245
270
245
174
195
204
159
217
182
170
239
145
238
186
208
236
208
191
198
160
247
207
188
216
146
207
147
206
164
154
206
224
193
240
184
222
201
223
135
181
207
193
214
236
211
193
199
196
146
235
237
136
227
186
187
200
179
175
193
167
193
194
241
193
144
136
179
187
161
236
187
129
208
192
173
255
252
223
197
203
237
176
207
229
247
206
239
254
230
169
252
214
211
243
209
182
226
182
163
169
199
198
223
167
213
216
239
177
263
177
233
204
162
191
170
141
218
218
163
214
239
203
212
174
148
209
216
242
167
227
166
153
179
158
238
199
213
219
232
182
217
185
188
130
214
160
185
194
207
216
206
161
181
191
182
202
187
181
215
181
190
207
233
139
195
238
216
215
204
249
176
224
171
170
221
177
266
233
249
188
214
205
205
154
223
233
232
233
182
175
237
204
175
180
214
197
202
139
168
246
191
153
184
145
183
178
227
166
268
210
182
149
208
133
249
207
232
217
132
202
238
206
159
210
227
170
189
144
232
200
218
208
211
195
219
193
155
180
235
209
217
212
164
218
195
184
144
136
192
209
199
185
232
213
157
195
191
174
245
229
210
173
120
248
188
188
186
249
240
202
195
204
217
242
220
175
168
193
169
228
192
252
224
195
199
169
218
193
235
193
255
177
231
212
189
217
157
177
204
129
244
173
190
206
175
155
224
142
209
199
192
224
236
228
187
193
170
208
246
224
201
228
238
263
196
164
248
151
244
227
221
200
244
177
217
230
191
225
148
177
260
187
159
197
165
253
213
199
170
190
147
219
201
223
267
189
232
219
218
153
173
128
196
223
187
169
242
152
191
235
186
267
201
260
181
203
227
206
204
185
213
179
188
207
225
187
170
216
244
131
212
210
149
250
191
195
207
196
199
197
172
176
223
186
179
227
209
225
213
212
162
232
208
227
147
154
187
183
159
257
231
231
158
227
219
238
177
225
262
198
247
140
253
236
216
201
176
218
211
195
174
239
202
199
217
121
124
231
174
241
206
217
141
249
238
212
207
144
194
205
207
141
183
233
204
235
191
182
257
187
239
174
210
263
228
223
178
166
199
227
171
207
189
144
200
166
194
227
176
240
224
158
219
234
163
192
198
154
182
235
231
219
193
172
238
220
187
198
173
201
272
217
190
279
212
209
145
121
231
191
172
244
164
224
153
166
250
212
178
171
214
218
199
201
202
211
171
175
171
202
154
239
161
236
240
151
225
194
215
221
192
216
181
215
240
174
209
160
170
237
192
129
251
139
186
222
221
203
188
230
188
217
162
191
221
188
219
171
245
204
250
179
250
203
245
174
242
207
237
169
252
162
197
208
148
204
172
159
273
188
196
192
148
190
213
214
221
163
213
203
185
187
199
215
158
183
191
146
205
208
222
168
206
173
255
197
216
135
177
195
187
165
181
229
264
157
229
217
230
248
199
196
222
220
237
149
157
230
206
151
242
193
206
153
146
206
204
198
179
228
247
189
241
222
234
200
231
246
184
222
194
151
208
234
193
110
208
192
166
232
223
218
174
183
196
204
220
259
146
202
181
183
183
198
198
199
208
246
222
180
167
129
263
239
220
182
257
199
232
233
166
229
242
252
159
267
222
131
254
211
228
186
127
147
201
181
197
190
207
196
186
191
193
235
249
232
170
208
175
230
193
160
262
190
179
211
182
241
237
150
240
249
229
177
178
189
208
201
219
215
181
154
233
152
215
149
195
196
182
188
212
144
228
243
199
232
220
170
174
300
189
198
176
248
241
189
234
207
179
178
163
243
237
186
195
172
219
217
233
254
168
161
245
203
196
215
212
186
152
199
239
231
214
205
180
235
142
209
205
238
136
188
137
201
163
270
224
250
175
162
174
239
170
198
218
128
160
230
205
157
185
171
178
251
182
210
177
172
149
192
263
245
178
192
195
217
186
180
185
201
197
219
174
170
180
138
188
175
234
229
193
198
209
136
168
231
129
209
156
187
102
148
211
168
213
226
212
206
231
163
168
242
214
255
141
233
130
190
253
158
156
255
258
193
267
201
195
221
232
218
135
250
190
169
223
230
172
146
196
185
222
265
177
146
196
243
140
196
101
202
191
123
249
162
130
158
167
202
187
185
202
219
211
225
225
180
183
224
238
216
227
159
211
210
223
238
168
174
189
212
225
207
197
197
131
193
210
134
198
214
198
212
174
196
181
220
223
139
193
227
218
194
187
117
235
199
191
217
175
152
235
175
225
220
232
244
148
235
197
215
188
161
202
216
214
158
223
259
195
200
284
175
206
211
269
221
239
181
164
176
217
168
161
191
206
282
247
163
219
243
229
296
178
195
204
194
167
269
252
240
134
206
211
170
156
231
196
231
177
216
233
218
188
213
171
151
196
196
225
164
205
141
221
193
258
213
242
207
204
253
137
219
184
190
181
261
145
240
171
135
192
176
235
140
184
251
202
244
170
197
187
189
245
233
198
144
187
224
198
236
221
187
237
191
157
179
189
174
217
149
224
248
181
221
260
204
288
260
181
261
173
270
213
203
201
191
211
206
216
220
234
195
185
179
201
124
213
174
151
149
169
168
201
196
174
159
171
191
191
183
249
280
190
196
208
278
220
207
208
212
141
232
213
154
164
168
123
199
223
200
213
203
227
194
259
231
218
226
208
212
197
235
171
207
223
224
180
202
231
196
215
207
216
217
184
237
239
238
227
236
177
181
215
213
170
144
226
212
183
236
134
185
211
226
134
252
193
182
168
150
208
223
227
224
146
193
189
201
240
176
127
168
209
209
196
198
195
211
220
202
235
175
146
225
196
238
164
238
205
180
189
188
196
224
200
149
173
215
190
220
193
198
171
187
160
181
186
249
229
214
216
183
177
137
137
185
147
137
186
198
188
245
190
136
222
193
198
185
196
213
202
116
203
256
119
214
251
196
186
194
175
147
171
197
185
175
217
181
179
276
210
217
268
204
218
175
183
241
195
163
175
227
133
277
168
207
159
160
171
212
168
225
246
164
147
183
211
285
248
214
185
222
165
159
199
218
156
213
210
229
163
259
203
184
219
216
248
188
245
178
225
206
164
230
197
219
239
186
204
207
246
247
205
132
228
194
242
163
250
162
193
180
190
247
182
222
220
196
176
222
199
135
169
205
165
196
167
191
223
190
154
220
148
228
144
181
197
216
171
129
204
247
189
173
223
193
218
145
187
238
178
189
231
218
196
185
117
202
210
186
167
194
242
231
295
228
215
170
248
173
181
205
232
200
172
218
222
209
213
203
228
169
205
134
242
172
233
195
204
206
169
184
190
201
151
234
217
204
211
168
163
133
194
217
195
180
213
231
168
153
169
189
238
139
205
229
199
238
195
217
149
196
215
199
192
134
232
181
240
202
200
148
213
197
200
254
220
177
150
174
176
262
242
216
255
163
232
288
217
147
227
205
167
174
159
195
214
233
188
187
213
250
259
233
181
232
218
197
182
197
246
245
168
220
196
209
198
230
208
275
121
133
237
211
190
141
202
182
158
163
156
188
160
154
220
153
237
225
221
112
234
257
229
237
190
198
210
221
204
157
259
183
194
152
168
192
262
236
137
251
202
185
214
186
197
180
203
251
205
189
193
198
187
196
154
286
172
196
174
156
184
171
234
94
206
254
143
216
227
190
235
223
172
165
170
233
178
210
222
236
206
166
186
255
233
218
193
193
212
220
168
209
218
218
178
267
159
261
213
249
169
251
231
213
163
177
216
206
191
236
186
224
161
229
157
199
153
193
221
144
212
235
134
178
205
158
174
229
166
152
263
194
186
228
113
222
210
212
207
122
252
221
168
218
205
202
259
133
158
171
214
186
236
173
159
227
202
166
199
229
203
251
227
165
225
215
160
227
248
255
135
202
189
168
245
218
205
182
186
181
235
189
211
230
208
179
226
192
187
199
219
213
191
226
216
197
227
200
194
241
259
166
224
173
150
204
227
201
202
239
148
189
212
237
150
192
205
252
198
196
166
195
189
230
212
146
155
179
212
194
220
179
202
216
203
276
174
186
236
201
151
222
262
237
251
150
177
245
202
199
187
219
123
306
222
165
240
207
150
137
201
145
230
210
245
188
195
192
205
197
196
229
207
140
178
167
158
201
202
234
186
264
218
238
251
218
239
193
157
199
122
185
149
122
198
141
232
210
219
184
135
136
192
262
173
165
219
212
192
264
165
222
127
218
198
196
239
218
191
180
210
199
188
179
208
201
232
201
232
203
219
242
127
147
215
244
127
226
217
216
247
185
178
228
158
132
150
225
154
211
209
191
179
161
164
126
195
233
210
201
239
182
163
209
182
246
164
176
200
218
173
206
184
168
180
206
262
201
208
179
181
206
129
210
181
183
220
260
208
168
171
147
244
205
200
198
212
158
139
176
242
167
153
194
206
203
224
212
168
205
170
218
182
239
190
194
185
152
210
208
223
197
220
212
192
224
185
209
212
119
211
194
226
188
173
167
205
180
251
245
199
255
177
183
231
197
208
249
161
231
167
246
254
190
175
146
135
205
208
254
233
153
211
192
223
217
181
213
226
171
250
212
252
211
237
173
208
202
231
217
192
117
209
201
228
174
218
171
180
237
142
288
192
250
163
209
196
215
177
185
141
225
233
231
151
236
194
202
210
219
229
206
193
207
236
203
207
192
213
136
227
219
247
224
236
176
205
198
257
162
183
183
199
182
146
221
216
200
168
212
218
254
183
192
225
174
212
212
193
165
172
191
231
176
200
225
176
256
202
243
269
219
213
196
220
244
181
212
206
243
186
180
158
181
125
135
213
222
226
188
212
188
168
186
248
199
182
170
205
192
186
213
228
183
227
142
201
197
210
226
204
201
259
232
154
221
213
245
218
196
239
203
217
208
256
121
214
213
152
235
238
182
192
266
182
210
240
189
241
200
255
166
199
265
178
175
178
162
157
220
162
170
213
180
205
151
179
190
135
193
179
225
154
145
265
102
215
249
183
169
231
266
182
187
154
236
209
217
243
225
172
242
205
194
244
163
191
213
213
177
176
216
161
193
200
192
221
171
192
199
231
187
214
184
207
240
236
122
246
234
214
218
208
205
259
181
140
197
200
200
174
143
178
220
206
199
254
234
170
166
208
159
256
184
139
213
193
201
213
218
174
128
224
235
193
166
174
195
222
227
190
186
210
234
214
206
235
144
160
252
203
220
207
170
200
252
195
217
203
134
221
223
153
233
178
234
192
215
202
178
171
228
247
277
142
172
182
195
205
205
165
192
213
165
172
187
176
233
223
185
194
177
162
241
206
195
180
231
211
172
211
166
237
170
125
174
196
230
197
199
187
225
190
265
208
225
203
192
200
248
176
205
173
146
163
171
237
241
158
178
235
210
203
222
192
218
198
180
188
188
188
203
145
243
176
223
163
174
197
189
175
226
200
233
204
244
166
187
203
230
269
215
173
175
215
163
215
118
151
129
195
156
200
254
190
241
161
217
220
211
184
198
175
178
226
215
177
161
185
173
186
166
170
220
263
138
227
207
225
207
178
185
211
117
200
162
224
183
243
239
188
181
273
241
262
189
190
157
230
186
163
199
216
145
175
245
197
107
162
247
185
155
190
185
142
169
224
221
182
218
215
216
191
191
229
216
157
200
185
186
243
187
218
159
232
158
265
192
182
190
234
193
203
164
174
184
196
237
202
221
241
215
206
213
205
260
237
207
235
180
243
207
211
187
249
199
233
205
251
208
208
243
233
207
213
194
195
144
125
209
178
196
202
193
185
267
231
143
154
182
185
168
292
152
147
176
201
216
128
219
206
205
169
213
189
179
195
191
163
271
241
224
205
174
178
253
153
199
232
142
202
181
185
208
233
175
227
140
249
195
214
179
225
209
160
174
206
230
210
238
201
193
180
207
211
143
237
261
164
221
195
197
219
168
227
172
194
128
202
189
230
187
243
204
163
259
237
182
184
213
233
172
196
204
222
237
202
266
213
238
236
197
148
196
228
173
171
136
166
174
187
206
177
182
164
207
228
220
142
199
188
183
222
218
253
216
206
232
189
120
233
253
223
273
212
219
272
214
255
218
180
240
179
222
164
209
227
217
260
163
205
161
170
168
157
217
216
138
191
195
230
217
141
227
195
193
199
210
225
197
158
148
223
242
195
240
153
235
182
110
246
266
223
151
227
186
218
201
218
198
239
178
234
193
215
201
224
217
108
208
199
186
207
185
201
169
199
237
170
239
207
247
258
161
192
221
135
238
126
218
192
218
219
238
202
181
149
262
207
157
205
176
225
287
225
250
127
197
208
211
168
212
175
177
182
224
196
170
155
195
205
217
216
196
234
174
200
274
195
221
247
233
215
162
198
188
132
191
241
219
231
235
193
233
196
189
175
267
198
178
236
191
204
228
256
176
222
200
243
204
184
183
204
176
224
215
192
203
176
222
195
235
238
240
190
203
132
167
159
160
170
169
166
165
199
233
172
195
183
165
189
166
182
200
127
225
206
188
194
192
207
124
181
193
193
177
190
217
174
178
219
223
174
137
168
270
204
163
194
164
178
169
196
251
201
250
211
177
208
195
210
230
242
169
196
246
172
240
259
175
242
194
212
199
213
162
156
250
174
197
249
152
211
172
279
202
211
184
233
232
211
193
246
169
187
183
216
209
217
122
244
218
165
219
189
240
205
214
162
244
200
199
218
184
203
234
189
202
228
239
215
230
219
222
210
165
169
160
198
212
227
248
201
189
76
234
209
245
217
235
179
150
229
211
184
189
134
220
181
182
223
161
271
183
210
199
212
217
206
209
198
130
208
215
181
152
251
190
255
214
189
258
188
158
241
155
228
222
229
198
260
305
196
175
161
144
223
143
189
167
205
161
224
189
205
179
225
158
113
215
176
187
216
213
153
175
136
214
156
282
200
203
214
224
243
243
205
236
187
204
242
168
199
159
157
231
178
225
256
203
277
258
125
190
236
218
262
143
234
200
181
208
222
182
182
200
168
198
163
242
228
230
162
147
227
181
206
136
202
272
216
223
225
172
212
202
206
153
208
203
174
180
193
191
251
198
207
161
229
148
185
195
210
220
188
187
190
190
188
240
176
249
193
207
250
221
149
164
225
162
230
185
186
180
244
198
224
253
194
183
185
218
291
141
210
155
177
195
163
194
235
243
223
230
175
186
183
223
307
230
261
180
171
205
226
205
177
160
228
179
174
202
196
242
242
198
223
224
213
202
130
214
250
255
172
174
223
221
187
183
169
236
234
218
172
156
221
182
205
214
204
159
197
254
255
158
165
202
203
233
168
208
232
231
231
223
199
243
201
210
193
200
226
182
233
175
171
220
204
265
159
221
216
198
236
203
197
254
136
252
173
239
185
160
183
253
176
202
201
185
143
223
194
178
172
229
202
202
184
171
220
121
213
243
179
119
214
158
195
184
225
190
209
155
199
246
243
187
166
219
193
236
259
221
202
171
214
264
164
194
244
221
217
250
174
224
169
208
267
243
180
121
191
252
158
199
247
252
160
236
199
196
288
194
242
140
213
247
188
188
173
181
228
223
201
193
252
213
156
176
272
217
160
183
200
217
206
261
203
183
239
198
231
238
157
226
199
163
226
234
217
184
217
176
196
218
181
188
182
204
176
266
169
197
175
200
169
182
215
199
229
202
240
268
183
198
214
216
166
239
161
216
217
129
205
217
188
309
187
208
172
143
186
253
203
231
193
200
168
204
195
253
219
214
190
203
252
167
197
162
174
136
202
232
233
111
217
217
235
251
220
198
192
190
179
247
236
174
246
261
129
200
246
212
210
142
161
235
136
213
216
199
160
241
151
180
145
186
247
199
215
200
167
124
215
180
250
221
182
130
217
198
190
174
270
222
240
188
237
185
223
222
149
203
237
203
209
214
250
162
254
204
212
214
140
143
190
184
129
168
209
187
226
202
239
168
241
170
175
150
249
203
173
235
199
128
208
234
211
275
233
229
221
250
210
251
162
181
190
210
173
206
137
227
154
201
206
225
208
195
222
215
215
188
164
235
177
176
181
244
166
190
200
230
202
185
180
145
192
166
197
206
259
217
208
196
266
179
224
192
114
233
215
244
150
170
277
213
195
237
179
220
155
179
211
206
204
256
188
209
189
211
234
153
134
196
211
232
185
187
139
120
188
215
227
217
243
242
236
249
200
202
199
185
225
186
201
241
183
152
190
228
141
174
245
149
186
146
157
214
232
205
202
129
201
213
207
184
179
196
215
196
205
203
146
194
238
206
211
192
178
201
205
168
206
189
257
175
161
203
244
226
205
263
201
244
224
227
209
228
245
219
196
207
171
166
189
165
189
212
153
203
231
203
234
190
180
224
203
169
239
170
229
223
222
154
237
239
149
258
168
236
218
246
216
226
183
221
190
261
183
201
163
215
232
258
163
214
227
236
158
160
190
176
241
267
193
174
178
209
210
220
179
170
238
201
211
130
195
211
177
252
201
204
183
183
165
205
207
191
191
238
158
140
235
207
152
229
228
245
210
188
222
230
204
154
226
212
155
234
194
230
238
171
203
244
196
224
211
222
152
164
251
200
202
217
203
198
176
184
194
249
260
233
140
228
282
239
199
191
211
179
223
199
182
179
241
207
185
240
170
195
195
197
246
204
195
173
166
159
164
210
167
238
191
213
166
174
176
236
173
223
178
174
242
200
252
208
184
244
209
181
191
237
193
215
172
165
183
193
232
183
182
201
253
209
222
199
183
256
187
167
225
227
161
217
213
276
120
189
199
230
182
195
252
230
223
215
227
174
219
211
157
164
233
236
223
230
253
141
153
252
236
131
150
212
189
231
250
236
213
210
220
220
188
172
207
192
237
216
165
189
199
227
240
195
185
206
210
131
191
193
255
257
209
168
227
175
165
168
211
220
248
173
263
213
179
142
182
150
203
230
199
176
231
287
188
212
233
183
217
232
250
224
238
167
268
162
205
190
123
198
267
233
221
194
226
128
202
211
220
175
233
130
194
179
231
206
166
223
157
261
135
243
221
205
226
195
151
216
234
191
219
222
202
169
246
140
239
201
180
227
234
205
200
224
157
176
219
215
150
205
120
256
241
177
170
202
256
214
213
271
193
185
211
227
251
210
197
160
213
147
199
189
202
214
240
165
208
145
192
144
167
235
83
200
239
216
208
193
217
146
162
213
221
210
156
189
196
133
206
168
196
190
210
181
193
105
228
193
157
190
182
198
183
138
162
230
262
186
150
241
216
156
191
209
213
252
195
263
244
151
236
199
182
213
233
241
249
131
205
182
175
193
252
133
232
193
193
252
218
277
171
175
149
226
228
204
267
152
234
163
192
171
123
146
172
218
139
159
241
219
205
157
203
217
245
208
217
222
125
218
151
148
166
187
248
217
223
241
241
253
207
208
178
243
205
181
218
263
210
231
210
200
224
173
196
221
169
149
217
170
172
210
195
145
196
183
218
214
166
219
174
252
183
190
182
138
143
188
141
122
119
191
206
186
214
199
123
226
227
226
143
202
186
170
249
169
211
227
156
251
239
195
186
251
212
209
264
186
114
204
206
135
182
160
181
233
177
254
152
151
142
171
169
186
202
205
235
233
163
210
234
223
189
189
219
172
171
208
227
192
216
128
257
239
193
132
229
176
245
243
165
139
142
110
217
117
178
185
263
236
142
159
224
245
241
183
230
215
179
223
137
138
119
187
212
211
208
167
214
215
183
176
158
211
213
236
204
162
201
263
190
222
240
218
192
189
262
200
145
215
194
213
261
218
252
188
218
173
231
187
193
131
211
220
188
236
235
132
205
212
215
219
191
215
206
235
208
222
197
197
153
231
243
163
163
154
266
222
130
208
193
184
186
173
200
235
189
175
172
174
214
137
209
226
220
170
214
210
237
235
224
220
213
147
209
207
211
223
179
188
242
249
191
218
237
222
197
234
194
203
215
212
240
182
191
244
204
216
225
212
196
148
211
203
212
212
198
227
215
174
159
187
201
200
183
218
204
179
161
177
140
213
160
231
186
288
178
268
168
230
185
188
203
155
234
274
248
193
179
240
208
212
144
196
209
165
212
172
171
187
215
184
189
248
203
219
229
202
212
168
240
177
190
129
180
177
235
218
205
214
188
214
136
218
212
228
226
210
208
186
152
283
137
229
230
204
119
223
258
227
179
200
225
233
256
209
171
210
245
190
222
204
245
252
266
209
176
227
191
164
194
203
178
135
200
153
169
140
178
208
160
164
236
224
198
254
142
224
191
201
164
201
234
114
236
223
257
185
172
181
152
234
189
249
246
176
224
135
215
197
211
215
215
182
176
190
227
270
191
188
173
220
209
207
224
225
180
193
168
220
258
223
189
176
174
220
142
260
258
217
194
250
218
219
178
214
160
166
166
246
231
209
235
164
240
190
197
209
199
189
198
205
166
154
172
193
197
254
234
236
211
191
217
222
215
239
229
170
216
148
230
160
250
190
192
210
224
165
225
230
187
137
185
195
230
168
234
176
169
180
206
226
203
193
146
259
265
240
221
253
223
197
213
159
228
185
207
262
187
185
190
219
214
184
231
195
199
246
255
229
258
254
221
233
215
163
185
179
187
182
201
200
208
215
183
172
227
240
226
189
219
214
212
159
225
149
181
202
202
160
159
197
200
217
138
197
219
222
251
182
197
183
143
220
171
189
155
234
157
214
199
187
150
220
198
161
194
184
211
124
172
166
144
233
161
211
161
180
191
214
185
241
208
207
173
130
196
130
167
210
236
180
236
135
198
239
180
188
220
214
200
161
223
263
212
207
164
186
156
132
131
197
180
217
179
215
246
220
167
231
165
171
214
226
190
192
233
144
171
216
217
171
215
156
207
172
180
242
161
182
192
200
234
187
259
206
178
148
215
192
165
269
167
158
221
247
217
227
273
116
258
209
270
196
157
198
200
206
145
217
244
168
214
249
172
192
200
251
248
188
226
217
215
228
203
204
190
220
173
120
199
227
130
209
182
162
166
222
189
179
144
212
204
166
184
222
155
200
173
227
219
219
200
151
179
152
225
226
248
204
152
161
121
265
233
209
183
216
200
173
150
222
210
187
207
200
245
211
209
189
184
192
287
174
213
269
127
211
178
236
222
205
204
226
212
178
237
201
156
224
234
205
160
249
183
131
258
140
198
179
214
181
204
198
192
233
200
193
209
142
256
145
234
173
170
146
227
130
232
188
206
242
182
193
139
229
159
177
180
203
225
153
147
185
191
155
182
214
158
152
202
178
215
212
165
209
135
227
143
266
177
165
213
135
227
162
204
168
168
236
188
235
221
267
223
140
230
155
195
240
197
264
162
186
175
193
210
188
170
210
181
210
218
124
185
176
151
219
290
206
177
234
292
171
188
243
183
222
228
245
170
239
196
231
216
175
191
223
229
234
158
228
201
149
193
211
153
251
203
176
207
179
200
183
196
174
190
239
173
192
256
183
211
191
169
239
177
138
263
222
197
234
185
287
140
142
214
159
176
199
191
176
182
245
241
210
228
164
138
179
219
222
183
207
182
244
190
235
215
178
181
188
194
222
250
232
179
254
185
219
198
208
290
220
168
244
186
214
164
253
181
207
160
189
206
196
168
162
229
267
177
190
160
230
178
198
101
255
174
203
178
254
237
192
232
195
233
235
191
190
242
228
214
214
224
243
227
232
177
203
225
182
201
198
205
193
215
235
209
175
238
142
178
191
153
241
112
189
216
234
212
253
232
228
235
198
135
182
145
176
218
229
153
190
167
191
171
160
207
179
254
211
153
158
149
205
243
176
203
232
213
255
232
264
203
184
234
113
218
248
258
204
167
198
166
199
209
221
137
203
211
131
244
215
214
162
225
216
207
156
233
187
152
257
237
195
123
198
238
257
210
184
225
209
188
238
240
240
147
204
220
225
158
184
181
255
158
171
227
204
263
224
207
162
162
183
235
221
145
125
181
192
234
173
187
160
196
208
218
105
155
215
186
195
223
230
222
216
152
220
180
194
245
226
177
226
229
210
204
225
194
171
241
225
217
125
219
188
240
202
238
188
193
156
263
172
175
185
151
239
222
236
264
207
207
219
166
201
193
227
231
230
181
255
222
169
200
179
205
218
202
218
217
200
193
222
166
211
184
216
166
140
163
121
184
187
178
239
227
251
182
200
183
175
197
176
197
172
187
236
211
181
223
205
218
212
173
227
179
191
242
268
229
216
217
242
176
232
169
123
193
184
160
169
214
156
237
225
222
255
180
139
212
207
157
149
220
173
199
108
211
265
231
303
246
196
171
201
214
206
246
182
168
181
233
222
196
178
223
210
228
171
201
259
251
206
218
219
236
220
188
222
201
268
219
257
250
232
164
207
242
155
246
174
222
258
232
212
156
266
211
178
215
223
199
202
192
232
225
178
253
223
183
138
240
212
248
176
150
202
224
179
201
155
236
132
227
225
256
180
178
180
212
207
264
226
180
165
151
201
184
171
193
132
205
190
173
145
198
232
190
146
236
173
209
216
212
193
192
171
200
178
230
185
200
172
161
258
192
242
254
187
196
194
196
264
137
201
209
243
171
154
215
180
176
173
187
236
215
272
187
134
110
244
186
194
250
222
215
170
177
190
198
227
171
159
228
148
276
188
207
190
189
180
219
204
164
166
236
176
244
224
174
164
249
248
189
266
174
219
196
201
233
167
165
194
260
200
202
202
167
197
170
192
179
158
231
212
198
231
224
188
228
187
176
227
246
228
117
215
211
250
186
186
239
187
206
218
197
209
179
171
185
156
259
190
244
198
190
270
240
182
253
217
199
158
211
156
211
163
188
202
222
127
196
178
241
226
229
115
190
222
204
243
206
221
108
144
190
243
143
230
167
146
232
152
243
245
193
227
287
182
183
165
199
201
187
171
206
178
193
168
252
169
213
182
210
179
237
196
198
235
200
235
150
189
191
152
181
253
159
190
216
195
261
201
239
209
128
229
231
216
149
132
220
113
160
183
237
173
210
178
200
170
208
191
169
135
221
245
201
188
190
197
190
243
190
204
207
175
208
182
244
171
163
212
193
247
200
237
213
191
220
201
206
211
190
170
188
192
248
214
234
175
185
190
191
209
250
169
200
232
139
166
198
183
209
228
238
238
159
170
159
145
155
190
214
158
191
192
138
172
159
142
202
186
204
182
158
194
217
203
239
218
201
200
142
245
177
205
288
268
143
157
199
246
201
227
221
150
211
168
173
199
162
206
195
219
224
170
190
228
213
225
232
148
220
186
193
156
191
243
208
221
183
202
201
236
246
167
234
224
164
168
179
170
139
212
273
251
211
177
159
188
240
168
181
259
236
146
231
178
204
151
245
186
171
155
166
187
228
205
210
173
153
122
201
235
197
215
189
77
225
215
189
246
183
188
168
200
221
213
245
167
177
197
219
227
184
176
206
186
225
204
153
215
228
214
169
216
281
169
216
205
192
232
181
187
200
182
173
232
204
198
123
177
177
208
188
263
137
225
179
221
212
151
185
249
200
250
204
244
217
253
223
142
226
246
228
186
216
256
185
184
178
158
154
144
171
185
183
250
255
246
226
264
227
251
205
111
154
185
228
175
186
201
198
198
188
142
156
202
233
132
183
198
172
210
194
218
246
225
226
242
256
188
187
239
199
160
229
219
230
238
204
156
286
164
189
210
213
165
258
242
157
173
239
213
185
207
195
194
198
209
155
213
220
141
216
171
188
224
245
163
204
159
188
201
263
238
199
232
135
208
211
170
216
88
179
187
188
224
267
153
180
200
165
229
183
198
235
161
220
205
236
221
175
180
194
189
184
220
180
223
197
175
195
171
292
170
167
195
188
170
207
154
252
205
211
205
225
185
161
201
162
247
118
209
213
217
204
234
116
211
184
192
186
249
183
215
191
266
185
230
195
189
208
166
252
157
176
103
211
204
125
216
232
215
183
57
173
170
143
183
101
262
242
191
164
255
224
220
258
253
215
195
172
149
256
243
181
181
204
195
238
169
259
211
190
183
209
137
198
151
186
137
211
152
229
162
199
251
120
203
197
74
198
210
156
219
193
229
196
210
177
188
174
193
168
205
172
173
196
246
197
232
185
157
214
219
183
158
241
191
202
198
207
250
179
214
196
220
212
197
223
183
268
122
262
199
250
198
167
216
210
197
245
195
182
126
212
155
192
159
182
215
240
181
214
238
215
237
202
227
224
197
200
143
253
162
187
184
199
238
226
237
258
210
268
223
261
190
235
197
172
225
202
204
198
244
162
221
214
226
158
205
243
256
238
220
204
216
241
232
200
190
221
192
191
185
190
172
245
173
192
272
217
175
233
197
192
230
210
201
212
220
221
216
198
117
233
186
174
243
211
176
251
215
229
235
197
151
204
187
150
196
229
239
216
139
178
124
222
202
175
201
193
147
202
211
261
257
235
232
189
246
135
216
221
196
199
225
233
247
273
172
148
257
176
203
229
147
216
189
154
166
136
165
154
201
210
211
264
235
174
193
166
252
250
222
179
151
171
209
224
248
222
204
173
163
213
231
164
191
249
280
150
267
222
252
280
174
199
244
166
266
203
215
251
191
237
215
223
223
213
207
190
212
250
218
170
166
203
182
167
201
192
279
188
163
116
210
192
179
230
212
191
158
201
190
221
258
179
180
243
196
223
187
180
225
224
207
210
189
172
241
254
108
119
156
209
198
250
213
204
170
171
230
180
245
229
117
210
160
189
173
171
170
221
173
171
169
213
203
247
169
209
260
181
162
150
179
230
180
204
206
187
192
153
255
161
173
172
251
163
199
208
242
245
245
243
157
145
119
179
247
242
204
215
219
203
149
248
200
125
274
144
180
168
203
196
175
177
178
214
165
215
211
123
206
182
215
214
263
160
230
246
184
238
223
161
216
240
141
223
181
192
180
212
198
132
162
220
206
206
206
218
237
204
220
135
196
197
262
138
230
189
217
218
240
137
203
184
230
232
233
197
199
148
204
209
197
176
224
233
199
143
176
184
204
186
220
214
252
260
236
150
173
205
236
166
175
241
195
227
218
166
192
202
268
238
205
241
202
177
222
219
196
204
231
240
249
174
229
240
149
227
215
237
235
216
213
195
142
224
182
219
157
200
233
222
199
209
239
264
230
175
249
231
213
205
210
185
193
214
210
250
137
245
222
208
222
197
181
242
195
181
158
146
198
199
234
150
234
174
139
213
222
212
158
211
193
209
191
167
177
236
195
261
173
219
249
171
203
225
196
198
183
233
189
163
224
240
220
186
238
195
219
217
230
236
171
235
228
285
229
224
279
241
199
208
189
237
149
202
156
90
221
187
144
220
280
182
221
225
208
238
188
251
240
262
204
190
168
192
230
156
242
197
265
125
208
273
267
191
215
292
205
233
251
206
201
176
115
151
206
123
246
214
254
186
190
243
216
143
150
207
176
199
234
199
229
182
216
238
247
257
144
170
212
140
236
227
206
189
197
213
229
161
167
204
192
185
208
189
161
195
151
218
236
171
242
223
227
179
150
208
183
113
213
247
223
175
196
182
247
194
190
228
225
196
224
235
145
188
220
203
172
247
165
219
227
173
214
225
200
162
134
241
174
209
234
251
224
196
183
204
238
196
240
169
175
194
203
187
175
178
202
183
204
155
197
192
214
163
199
149
115
226
223
162
181
154
176
180
157
167
207
194
207
197
225
116
166
121
251
191
202
232
232
162
109
173
142
237
210
180
195
226
193
229
198
208
193
203
202
214
145
178
180
161
238
163
221
187
209
229
224
233
129
154
228
210
186
271
181
200
207
122
220
191
241
184
231
122
207
172
160
178
225
219
215
215
231
245
169
244
177
87
202
283
221
226
189
198
189
198
205
216
202
147
175
215
243
217
209
203
241
221
203
222
171
193
188
217
190
239
210
191
211
186
226
179
213
233
136
238
190
204
160
186
217
200
187
178
204
225
209
236
191
213
215
117
164
182
230
176
199
206
198
189
185
207
214
247
172
204
213
178
191
198
186
159
226
188
211
197
188
263
218
250
190
194
245
256
177
180
189
107
252
211
245
198
201
177
234
190
201
249
225
194
243
130
200
174
217
151
208
219
228
184
225
184
212
188
216
169
162
218
194
141
220
139
233
223
268
226
183
172
210
234
215
262
189
158
251
195
190
152
167
225
164
266
196
253
214
150
231
179
159
225
226
183
276
225
217
240
172
197
173
257
237
162
235
139
206
194
190
193
184
245
248
208
225
192
160
232
181
219
208
232
158
235
198
205
221
230
248
195
206
244
190
235
246
198
206
152
183
206
218
184
195
185
244
230
233
223
141
247
204
234
213
162
243
155
206
196
186
230
223
175
229
200
219
237
232
252
163
218
224
235
176
248
166
249
202
244
226
212
149
215
214
177
254
229
157
201
180
221
241
168
176
171
195
168
219
249
204
230
216
156
192
184
111
146
219
191
230
229
206
197
166
197
201
184
163
220
252
192
141
212
271
188
167
157
184
203
170
248
235
140
192
234
139
250
129
186
200
226
189
184
196
210
215
186
98
174
258
205
224
185
195
195
161
193
189
215
138
195
167
140
259
171
264
237
193
213
140
208
244
169
173
280
170
200
181
182
240
245
227
194
207
208
298
229
134
223
239
172
222
216
147
163
212
166
245
182
244
199
164
163
185
209
207
239
237
226
220
140
228
174
183
171
190
198
168
152
212
217
140
220
117
223
170
268
143
213
171
201
240
279
247
184
224
213
230
189
215
207
201
242
160
226
201
204
227
184
169
241
235
130
181
269
180
161
200
222
216
200
226
184
184
176
249
240
249
211
232
162
197
211
184
205
262
214
167
243
257
175
240
201
187
167
203
186
231
177
246
158
217
234
180
211
162
209
204
186
207
212
186
210
228
211
230
186
145
197
205
250
196
138
234
153
185
235
203
161
200
232
161
187
183
206
209
207
224
211
184
129
196
187
225
211
202
256
204
159
219
204
223
186
180
170
164
208
164
184
202
215
208
196
157
198
210
255
278
218
104
186
236
193
190
134
218
182
236
219
261
178
155
184
199
219
217
223
159
170
251
236
239
188
168
246
133
212
243
233
200
166
180
184
236
229
170
190
128
147
202
192
213
269
189
221
129
166
215
182
168
179
198
172
207
215
243
243
150
213
211
233
230
200
157
208
195
211
242
199
192
218
140
185
231
219
255
200
230
250
169
202
260
175
215
190
131
208
187
232
193
180
189
247
146
216
147
183
198
267
195
261
211
218
288
242
185
197
192
145
130
184
260
124
220
196
154
207
226
250
216
111
203
163
186
223
234
220
245
180
188
141
158
177
224
154
234
226
161
226
184
237
174
231
262
246
164
192
192
232
164
186
149
204
181
258
112
200
142
187
198
172
225
217
253
135
181
217
164
251
183
221
176
152
223
192
227
265
127
217
185
262
197
268
204
245
174
231
200
126
236
189
180
149
176
185
235
202
187
201
240
200
221
195
141
233
198
169
212
237
192
180
187
234
171
259
238
213
240
147
189
225
185
155
259
180
137
214
229
244
148
185
153
212
169
138
199
221
223
202
199
271
170
181
183
177
234
173
201
138
202
197
203
143
182
205
233
172
194
196
188
259
251
145
116
185
272
200
115
224
210
178
238
186
240
145
239
265
227
193
230
186
193
224
222
197
132
227
269
211
214
224
180
253
158
118
227
222
173
152
232
256
198
165
252
211
158
205
213
162
88
163
215
138
186
179
192
251
224
180
249
167
248
158
200
144
243
165
159
171
155
163
191
204
176
201
202
253
240
211
232
218
192
207
184
182
159
194
140
214
186
208
207
165
183
246
163
214
238
178
169
187
209
174
237
243
222
204
168
248
200
248
213
265
269
221
215
213
224
210
241
147
262
219
245
187
203
190
226
193
259
175
198
194
185
190
147
199
183
231
248
245
184
226
228
196
227
166
212
177
221
211
251
188
256
193
227
211
233
213
163
193
236
166
198
217
219
141
224
139
132
159
210
155
192
191
195
167
217
203
185
265
190
235
172
235
135
178
229
221
180
226
170
149
203
222
200
186
207
208
183
167
216
156
189
186
244
220
215
255
197
203
170
178
201
215
199
172
213
204
194
178
217
175
186
236
245
216
164
244
132
149
171
168
196
166
209
190
156
187
222
200
108
204
236
139
216
202
240
207
156
192
201
204
206
116
106
151
145
200
206
199
205
172
254
189
135
238
198
220
181
272
205
200
147
194
248
146
245
221
180
186
131
164
240
234
189
174
141
221
269
232
177
212
229
249
236
205
251
202
188
184
221
200
194
163
228
237
192
157
164
208
207
166
154
160
142
161
170
206
235
219
170
250
244
171
193
232
236
221
191
199
201
185
169
180
219
237
209
248
246
171
241
270
208
200
238
195
186
181
172
223
227
239
206
223
194
181
188
197
212
222
218
238
153
159
194
255
146
237
174
141
221
260
215
135
165
258
215
202
179
116
158
237
228
156
225
223
221
247
251
235
180
211
151
229
231
160
158
201
166
186
189
164
205
217
217
164
220
119
195
193
173
223
197
225
116
224
174
182
166
200
197
187
232
191
151
199
166
225
189
213
251
191
151
160
265
241
188
232
268
187
159
226
164
213
125
215
205
164
239
187
187
222
284
225
210
184
173
189
197
180
159
193
148
176
220
205
236
136
196
229
217
192
254
185
190
258
198
257
234
197
163
172
120
163
246
214
246
185
225
266
218
164
197
210
179
185
234
179
166
236
199
236
242
222
177
150
191
205
199
195
172
226
218
233
224
175
219
188
224
200
213
173
208
222
190
203
211
247
186
204
198
192
207
203
228
170
197
166
228
215
190
204
265
144
202
144
216
238
234
193
201
129
147
238
125
252
177
231
197
203
192
216
203
202
160
154
213
149
232
146
248
188
224
242
173
237
216
225
224
203
211
151
226
259
213
141
159
210
177
173
207
208
183
152
158
221
194
190
181
278
178
249
228
217
211
232
213
206
171
202
196
242
201
249
150
184
218
189
231
233
222
179
158
138
194
219
180
207
227
173
128
178
158
255
219
225
186
202
207
206
156
231
201
190
192
189
218
237
193
215
235
183
188
126
172
218
204
205
152
175
190
199
187
133
209
122
191
188
117
222
186
246
235
222
239
196
164
223
144
217
239
233
217
171
172
250
218
183
166
222
208
182
218
222
199
216
199
144
231
204
215
174
233
184
193
182
139
225
178
252
213
232
213
141
199
195
153
167
199
137
135
187
200
254
175
232
230
178
245
229
172
267
206
201
234
248
148
148
232
210
230
181
224
159
157
207
132
205
203
237
141
199
168
230
220
244
216
164
193
193
249
204
147
187
186
223
191
227
180
108
182
242
231
191
127
164
186
221
188
231
203
180
238
222
137
210
124
232
233
219
236
253
197
187
234
204
227
200
206
219
166
208
206
192
188
225
190
262
223
242
149
192
176
182
157
183
183
202
203
185
176
238
250
146
241
172
207
205
202
178
158
146
233
189
163
258
118
238
242
227
187
143
217
221
232
99
207
224
225
216
214
190
184
186
221
126
195
222
287
238
207
245
181
206
196
196
204
109
189
279
209
153
233
175
197
213
239
171
192
108
227
183
214
231
225
250
141
216
198
151
188
160
234
218
207
194
139
202
173
182
179
175
138
141
189
178
220
106
184
143
202
219
229
210
211
206
215
250
183
235
149
204
238
197
211
207
166
202
224
213
208
224
151
190
193
158
184
224
230
226
256
229
238
202
184
242
216
142
166
107
221
236
207
221
172
169
164
200
162
270
160
214
199
206
195
203
272
189
197
190
245
242
189
219
162
256
220
103
213
207
200
268
184
150
219
194
167
233
179
212
210
196
234
213
160
163
137
230
225
143
262
250
219
172
204
186
227
180
226
151
185
158
187
206
187
153
221
194
142
142
255
231
189
234
177
241
223
189
283
215
194
237
189
165
202
146
249
195
227
181
205
191
179
243
260
163
218
161
237
202
182
232
198
197
163
148
199
151
193
156
217
228
216
234
164
179
187
242
226
151
227
208
233
222
143
215
235
165
173
141
190
201
170
177
183
174
214
201
223
181
123
219
205
209
173
211
181
248
239
214
206
192
186
181
219
171
153
269
193
238
148
247
207
221
254
183
189
233
267
188
229
182
184
225
236
199
188
241
179
156
233
147
258
192
245
187
176
161
156
267
240
134
245
206
205
246
153
241
218
234
226
206
199
120
237
242
194
191
145
167
250
234
206
241
200
200
240
168
210
229
243
209
183
265
206
229
203
197
158
205
201
200
183
166
245
247
264
196
233
185
211
198
190
177
231
108
238
211
159
257
258
160
156
203
255
248
204
180
212
213
189
204
213
220
150
196
206
232
177
242
211
220
189
169
196
113
184
255
182
231
229
164
153
199
200
262
223
149
175
199
157
151
228
150
167
188
134
187
174
157
142
210
182
102
213
250
166
242
249
212
233
193
198
272
156
171
210
265
208
207
238
196
209
175
119
193
170
268
185
159
234
154
192
130
210
225
153
206
144
185
188
244
193
244
159
215
177
243
125
197
251
184
167
175
213
138
186
254
248
198
228
179
185
248
169
211
119
211
180
184
239
204
187
197
236
231
223
180
231
196
223
210
213
184
201
174
114
238
194
200
177
192
253
225
244
201
174
147
238
140
181
204
188
154
206
246
175
248
224
221
262
248
254
175
173
226
263
187
143
197
189
214
240
177
172
261
228
221
203
232
255
219
184
154
189
163
243
244
216
161
213
274
274
192
160
273
186
193
213
169
118
189
193
164
227
194
264
252
222
194
140
173
229
169
240
273
231
215
214
246
212
207
182
149
213
209
182
176
181
221
238
153
203
160
105
196
223
252
215
210
209
174
170
165
247
150
177
149
189
237
170
223
256
209
150
241
183
212
263
216
156
170
217
166
206
170
226
217
229
281
221
231
173
225
168
203
120
156
188
180
213
232
273
210
192
200
196
207
225
208
231
229
205
206
171
135
201
202
134
191
204
224
170
219
217
180
214
199
173
195
217
264
198
207
270
197
216
191
183
224
252
202
176
226
264
164
199
223
245
175
216
179
201
166
146
214
179
190
195
196
153
233
252
229
196
224
288
210
190
243
179
170
205
204
292
255
200
165
200
220
253
206
236
149
209
210
141
190
204
186
195
171
144
241
186
188
234
174
220
167
216
167
226
181
214
221
232
219
186
185
233
190
218
179
164
232
207
238
196
152
202
171
182
173
189
199
254
192
225
233
182
212
187
155
175
201
155
155
170
186
172
247
161
167
195
237
179
210
162
219
201
142
154
232
221
135
209
206
213
184
200
218
177
183
213
175
157
171
194
198
127
220
199
159
169
189
199
268
215
190
155
204
172
217
212
146
186
167
172
274
205
245
185
219
196
214
177
209
212
208
181
108
236
198
169
262
201
200
249
259
215
195
248
220
202
257
200
162
236
242
203
197
239
185
196
194
174
218
187
233
199
187
247
244
215
213
167
228
205
243
185
167
144
191
184
234
223
216
180
141
221
185
229
209
230
190
201
196
190
224
248
215
160
247
187
237
250
203
247
206
223
159
276
163
173
159
220
176
217
195
188
153
143
203
184
233
231
213
198
145
171
209
151
197
235
241
189
240
242
225
201
270
165
209
204
208
255
173
164
233
196
208
159
174
150
262
203
179
242
143
237
210
199
130
216
212
173
224
241
172
203
197
190
217
227
211
238
168
208
207
219
140
187
200
242
190
201
224
245
203
254
154
202
153
194
195
184
255
233
164
215
242
258
242
206
220
213
188
227
222
180
217
233
188
212
190
267
203
247
186
168
197
185
198
200
209
234
187
239
133
244
209
204
146
208
217
204
206
176
232
208
153
254
228
174
191
175
169
187
196
216
171
182
179
207
181
177
242
183
170
218
158
209
187
171
216
202
207
207
192
243
133
195
227
152
256
208
180
188
181
182
193
191
152
157
170
243
136
252
227
172
181
158
145
176
146
207
222
181
185
214
229
209
176
256
200
153
180
166
266
171
215
286
208
190
185
246
201
206
210
132
198
200
209
189
182
182
163
181
205
170
184
166
220
204
232
156
207
196
152
234
250
204
153
260
214
187
230
200
134
216
147
182
178
220
208
195
129
167
203
212
223
185
234
168
214
215
202
165
204
228
158
224
228
278
190
169
294
252
175
193
198
213
184
163
273
186
209
181
201
189
202
190
252
190
128
211
227
160
151
207
201
156
181
225
175
144
194
272
179
287
221
238
233
246
226
167
208
235
297
132
172
174
205
244
221
176
251
144
210
157
207
156
207
234
197
212
204
189
244
163
132
199
157
249
215
167
210
189
151
187
252
191
133
205
247
179
177
227
150
148
234
185
158
214
159
220
246
141
197
219
244
238
231
247
173
203
240
214
236
216
184
207
209
253
217
175
220
230
156
204
143
201
211
196
204
214
224
221
238
173
196
225
227
216
134
155
93
231
155
195
254
205
228
196
257
191
216
248
205
216
253
227
227
251
191
253
170
222
163
249
185
218
155
169
202
167
221
145
183
182
230
220
230
238
240
219
222
131
112
156
212
197
199
234
187
220
182
142
212
240
241
166
209
213
253
190
219
204
201
248
226
227
209
207
188
265
188
180
214
193
187
182
135
244
199
195
232
218
210
219
200
212
172
189
242
193
119
152
222
234
133
203
186
158
161
250
261
158
155
240
154
197
221
236
232
235
212
280
236
231
201
186
244
190
263
179
200
243
205
233
206
193
234
208
228
217
198
193
173
157
233
193
144
172
171
223
199
166
205
163
235
210
196
257
232
193
265
189
212
182
207
250
226
203
248
209
218
240
175
164
232
210
243
224
164
206
146
221
234
149
209
142
203
191
204
218
227
188
191
200
251
228
228
151
179
244
225
182
183
158
216
232
283
226
173
192
177
152
178
237
209
170
268
200
163
239
184
128
209
205
220
240
90
159
274
206
239
197
174
178
208
215
205
173
201
242
221
166
214
212
266
207
184
263
236
258
159
187
205
254
194
159
192
147
183
156
203
151
220
195
170
230
212
155
170
183
209
219
197
132
143
196
191
245
240
149
192
266
244
230
149
173
256
202
220
204
233
207
193
204
263
189
244
111
207
190
160
186
172
255
214
176
171
192
202
241
179
206
201
250
157
212
192
202
222
177
230
276
169
227
180
180
150
183
171
196
176
196
182
174
202
245
190
202
248
215
236
140
182
263
164
218
214
196
143
195
198
226
190
160
181
247
195
155
189
206
136
273
239
113
188
146
173
198
220
272
182
157
207
222
217
203
209
246
243
257
198
143
165
187
147
124
204
161
198
245
182
189
179
148
221
176
203
211
167
171
245
167
208
133
203
196
188
133
212
223
225
200
250
229
184
136
185
190
234
241
150
217
221
213
193
194
196
140
213
191
218
159
213
201
210
237
228
227
169
201
219
162
160
249
137
203
211
184
192
159
251
254
193
217
239
155
240
208
141
190
227
111
193
214
177
220
239
220
162
129
184
219
170
195
243
178
199
223
196
187
196
191
193
210
178
168
191
183
192
186
268
190
163
204
179
229
210
189
219
174
214
216
194
178
194
212
196
142
247
200
232
216
209
190
179
223
246
220
217
172
234
211
180
185
184
174
207
214
199
180
174
159
228
176
168
191
179
260
159
199
183
198
226
263
228
167
188
212
164
206
244
198
216
175
147
219
199
211
200
213
193
245
200
197
163
218
206
187
197
195
235
174
198
207
224
208
256
266
119
219
257
207
209
185
168
242
292
231
209
175
217
191
215
188
179
170
215
152
217
183
179
225
254
204
208
184
198
203
287
159
155
181
204
203
191
164
169
238
195
176
197
214
182
144
262
225
173
192
222
212
199
263
189
194
204
152
164
265
189
219
190
205
192
264
181
199
215
221
197
249
158
230
220
206
214
152
197
199
185
202
234
203
149
272
159
247
184
223
257
223
178
160
232
146
206
246
258
193
176
217
165
169
209
218
195
189
220
140
218
234
201
217
205
197
237
222
225
237
139
225
145
213
177
234
168
214
187
186
156
259
221
183
174
165
231
187
156
144
122
242
187
137
201
194
266
172
197
248
198
176
145
188
204
241
167
191
201
174
213
266
161
227
230
239
150
188
168
174
202
178
212
187
212
178
300
202
203
206
207
231
184
188
222
221
222
236
128
183
252
221
219
128
241
120
165
230
230
161
203
150
223
196
228
94
245
201
240
213
198
212
215
167
173
251
192
184
156
218
200
193
161
225
195
270
176
239
266
199
159
209
184
194
192
233
217
136
213
189
205
156
209
176
209
228
156
229
164
211
214
177
198
190
143
222
196
244
232
179
163
183
216
276
240
257
170
266
227
168
194
232
144
202
171
261
210
222
163
197
244
154
215
199
184
216
221
269
151
177
253
192
208
257
159
180
197
154
209
241
194
262
264
165
222
176
204
246
207
249
207
220
186
209
209
127
109
183
190
166
247
113
208
204
205
174
206
190
158
229
188
156
184
224
118
193
244
223
238
235
244
208
169
135
147
214
258
163
197
167
220
248
186
173
211
188
171
244
164
185
216
180
201
167
208
207
196
175
212
179
145
239
221
245
230
134
197
234
200
198
174
165
234
214
197
228
175
161
200
222
259
193
176
192
204
258
228
194
211
185
229
205
241
230
186
193
233
233
215
156
276
233
224
223
145
156
226
171
230
245
223
212
225
201
193
180
200
226
230
208
174
168
166
252
217
210
190
198
242
228
204
220
226
267
196
227
226
230
147
176
180
218
249
204
163
177
166
227
216
174
201
185
188
161
234
195
223
266
190
247
172
228
220
204
220
250
185
208
179
261
190
187
225
216
167
260
190
251
226
186
194
215
159
208
187
248
252
184
230
227
141
183
217
206
193
230
204
156
175
224
224
220
197
206
164
218
147
205
164
218
179
175
180
184
209
200
223
160
181
195
165
195
176
135
216
167
223
190
247
201
208
206
226
203
174
227
196
207
181
267
218
260
283
129
165
279
227
186
191
161
210
147
225
216
195
215
196
174
169
228
174
200
226
239
170
182
170
166
217
188
216
137
195
175
228
230
215
225
225
205
146
216
226
189
154
231
209
214
156
216
218
206
202
231
162
192
237
177
146
178
144
162
219
197
206
189
195
240
260
171
250
210
185
186
197
173
244
225
226
218
161
148
137
245
243
195
222
163
254
197
233
262
194
236
175
230
202
145
188
142
177
246
188
162
173
194
135
193
216
267
222
220
225
135
253
210
223
208
211
191
262
174
243
223
202
227
203
140
200
238
188
253
247
276
176
149
88
233
217
186
199
143
183
224
177
126
273
121
211
153
256
210
185
166
209
250
178
228
183
234
195
248
236
197
196
201
226
210
200
167
157
166
168
177
221
185
168
209
201
164
261
181
223
197
244
202
169
196
223
197
239
284
205
183
189
121
202
184
200
210
271
218
141
210
188
177
238
243
286
168
235
217
218
138
162
224
265
175
223
203
191
181
204
220
146
199
199
196
189
208
250
185
214
165
229
216
199
175
153
228
196
198
152
202
230
199
120
207
196
177
172
168
170
250
210
237
251
222
237
247
164
209
199
159
213
135
228
209
216
130
185
226
187
237
209
254
246
230
208
236
200
184
198
197
257
183
192
184
193
185
252
166
207
138
225
174
210
217
149
182
221
233
226
211
197
173
227
209
204
221
218
222
174
209
128
216
159
254
133
208
155
214
147
190
215
227
218
220
194
214
216
223
216
229
158
271
233
179
182
222
242
212
145
207
210
268
216
202
188
180
158
188
145
150
190
231
200
234
227
218
135
224
210
197
196
180
177
206
181
175
239
244
213
224
247
191
225
193
253
270
226
234
168
211
244
189
169
176
228
190
195
189
212
193
220
200
169
221
186
235
181
201
205
201
196
166
231
232
172
262
196
141
216
193
150
226
194
249
174
162
196
199
145
189
229
224
225
214
253
186
240
203
230
127
236
203
200
186
185
181
206
127
196
215
197
194
142
237
237
258
221
146
245
163
189
194
213
195
122
150
204
215
236
235
238
231
224
136
204
174
185
118
147
169
228
163
191
175
181
230
177
199
180
224
181
112
225
209
240
172
212
160
253
143
192
199
189
204
166
200
249
231
257
204
178
216
185
188
214
225
240
203
181
197
227
195
189
205
216
190
193
169
236
203
249
207
161
137
196
228
138
221
160
143
171
144
186
163
183
236
250
220
185
172
186
104
166
218
211
164
161
164
189
203
163
221
233
203
240
190
186
209
256
169
153
238
198
204
183
206
187
236
192
161
260
208
121
186
193
210
198
212
199
249
205
178
222
192
175
205
184
159
218
220
214
244
165
196
203
181
246
155
175
221
226
146
197
189
154
192
194
188
223
196
137
217
143
212
228
240
199
195
198
181
267
212
160
170
260
192
193
217
228
214
236
225
249
261
208
196
171
153
231
178
241
205
167
143
251
270
175
192
226
178
205
160
207
187
167
175
166
220
189
172
187
201
140
186
232
198
148
168
143
191
203
213
230
167
211
197
236
250
161
181
231
170
164
169
218
205
210
149
186
209
219
229
157
184
192
195
211
241
191
165
240
245
182
194
216
212
230
249
174
196
152
212
154
218
240
236
214
131
183
199
233
200
218
156
172
182
194
214
182
232
178
179
207
193
190
138
224
217
211
258
168
229
191
168
177
200
220
179
159
151
221
203
91
161
193
201
186
205
223
214
225
194
221
206
229
231
141
204
236
181
215
166
152
155
184
184
163
274
168
184
184
174
228
190
229
139
204
180
191
229
176
179
150
202
143
267
169
187
232
159
211
192
229
168
168
164
200
236
158
196
222
172
221
158
208
176
179
257
210
243
229
173
264
160
202
277
173
168
188
136
204
173
176
179
224
257
228
196
190
237
222
205
256
162
249
267
228
133
209
222
151
194
205
141
191
212
208
165
151
214
142
216
191
194
244
210
218
179
221
183
209
266
136
203
156
209
186
228
170
105
293
240
174
239
183
269
161
211
235
178
251
191
161
171
217
214
164
231
141
236
221
169
184
218
215
122
222
226
235
236
250
213
214
184
174
198
209
233
234
200
253
204
252
251
211
223
183
239
163
238
209
266
204
215
199
212
153
216
150
256
203
193
221
212
239
215
150
189
152
153
232
198
263
240
223
234
215
197
227
168
210
170
188
142
231
211
198
143
242
207
189
234
135
157
255
191
189
271
227
186
195
230
275
157
174
130
152
216
168
148
226
226
148
185
304
221
218
240
172
265
236
190
164
148
179
153
124
231
221
234
183
178
238
159
179
193
208
190
196
251
155
225
153
160
163
164
231
236
246
215
232
169
171
199
211
198
251
176
143
241
209
155
210
160
242
178
232
176
233
217
165
175
168
159
150
265
183
184
122
182
234
189
193
159
242
173
141
178
240
165
220
212
175
222
225
212
173
137
219
152
210
290
165
240
180
143
137
193
178
249
195
213
144
216
198
205
180
237
181
185
206
169
201
180
133
236
215
164
211
229
157
182
240
222
223
177
224
173
209
210
203
240
190
211
235
188
192
227
207
183
177
173
197
210
150
184
257
259
196
224
225
234
215
199
203
274
172
232
177
198
196
233
166
244
244
217
221
189
221
186
204
136
202
234
225
228
167
187
183
176
171
186
218
220
162
181
239
206
269
260
129
143
168
185
193
176
203
247
250
151
232
200
202
252
205
211
170
152
203
199
209
210
206
142
161
218
203
257
219
210
215
277
231
181
214
189
190
248
222
188
212
179
187
211
159
207
153
199
149
159
124
235
226
172
209
155
174
192
164
205
180
184
266
217
232
184
168
229
205
163
255
203
184
153
169
214
244
141
227
237
225
231
168
212
195
142
150
228
241
177
191
251
237
213
204
131
203
221
154
197
173
193
166
218
201
184
144
214
199
214
218
204
215
208
163
169
146
158
185
211
187
160
190
229
176
227
180
261
152
251
146
178
275
199
192
185
240
156
215
200
188
186
236
212
232
175
206
210
221
170
224
223
115
171
208
186
167
202
168
188
236
198
222
124
186
193
147
186
188
214
184
180
231
188
153
237
205
209
256
199
219
211
247
128
186
231
179
248
157
187
141
271
148
199
182
177
215
208
200
174
176
216
209
228
207
137
212
201
205
158
276
162
226
257
238
229
162
164
152
217
204
204
172
228
182
205
170
158
172
246
177
271
228
220
192
146
209
206
231
163
214
182
175
161
227
218
215
181
210
198
181
215
223
233
231
188
245
196
181
230
195
263
225
246
174
175
166
227
237
243
223
155
261
221
195
191
216
186
185
203
232
239
189
202
149
194
252
202
187
201
98
191
180
185
207
195
175
200
186
215
212
262
284
190
216
172
199
239
179
249
191
209
194
136
217
191
192
179
197
220
137
181
191
243
181
163
181
278
168
267
161
235
251
242
143
196
221
230
185
162
229
248
128
219
247
205
246
239
183
261
225
132
159
171
241
170
262
217
230
203
226
261
266
194
207
224
184
215
167
181
232
215
267
233
122
218
213
235
164
158
191
275
216
172
170
177
153
225
156
248
166
221
186
167
171
141
192
197
200
197
168
193
242
204
234
179
167
228
231
269
229
265
191
244
178
217
233
246
168
197
171
145
241
164
162
195
175
192
208
202
200
165
209
249
214
165
132
202
210
249
197
185
223
165
205
204
244
135
157
206
167
161
172
154
214
216
196
171
181
137
288
161
197
188
224
258
206
171
195
153
253
260
169
156
204
142
127
238
190
167
202
220
171
214
234
228
247
176
180
204
160
125
220
240
157
186
188
147
206
217
164
250
194
158
218
198
179
172
198
238
214
242
199
221
223
267
232
186
243
231
238
253
213
149
151
200
180
155
168
246
191
125
112
180
203
193
153
211
262
161
228
176
228
128
210
210
179
266
228
194
277
202
227
191
205
174
167
212
235
210
179
186
238
245
201
240
162
202
218
185
186
207
182
234
209
225
239
206
226
152
174
227
227
166
269
205
234
201
187
176
239
251
212
148
151
191
193
208
175
177
229
204
166
268
191
224
238
217
219
215
205
204
207
236
171
159
181
141
229
212
191
198
217
181
222
241
220
203
233
217
238
181
214
164
212
266
169
198
191
215
201
197
189
193
166
228
187
222
252
201
211
177
162
176
216
265
180
144
205
212
205
213
235
211
158
133
235
193
240
209
186
254
219
159
141
220
214
247
140
225
184
230
167
246
177
250
190
180
140
185
177
223
189
218
204
193
216
180
211
236
232
216
189
235
103
187
197
199
209
196
136
159
228
166
175
196
152
200
215
207
243
194
245
147
146
222
206
171
211
210
179
213
224
228
145
201
197
126
180
168
197
208
196
214
218
174
150
212
210
136
224
254
191
191
235
257
211
231
180
164
167
236
233
240
244
165
193
211
186
188
260
234
213
163
153
164
245
194
194
207
222
212
265
199
172
228
173
181
225
224
177
183
248
168
200
224
224
182
223
218
206
235
229
217
227
182
202
202
270
192
230
218
210
208
240
187
167
196
190
176
103
193
200
216
203
185
165
124
215
160
161
153
230
212
170
220
243
155
180
200
196
102
168
195
218
224
216
236
189
261
224
176
235
218
220
184
226
188
193
226
173
191
153
181
210
213
221
183
193
182
112
215
225
215
165
267
161
243
158
183
153
159
168
141
116
284
208
165
132
198
254
231
167
226
196
168
142
184
170
182
202
171
115
199
228
230
153
210
134
222
229
167
269
182
211
190
106
232
240
209
179
229
218
158
213
115
256
261
266
200
171
167
183
225
226
206
203
214
231
167
188
109
225
223
211
265
179
239
216
176
155
202
235
207
223
198
163
162
144
162
218
169
194
175
200
169
247
181
131
171
217
199
151
244
213
228
181
210
240
218
189
193
228
223
200
212
168
181
185
207
186
192
164
229
231
131
218
168
161
188
126
235
205
188
189
178
269
245
253
164
176
288
247
247
216
238
213
237
213
240
240
220
211
153
237
194
228
165
220
184
145
229
166
168
195
202
253
226
203
227
187
245
202
137
173
193
253
267
193
170
167
195
135
244
205
191
187
180
225
192
237
184
212
232
204
196
175
192
212
120
149
232
234
146
199
185
199
266
193
178
197
176
220
188
192
195
189
160
163
215
184
180
237
165
157
192
220
202
243
199
199
223
268
221
174
221
186
237
156
194
219
256
160
210
228
118
237
172
127
219
213
185
172
168
233
204
149
241
234
217
251
177
175
213
201
258
178
201
162
228
116
207
202
209
216
193
141
127
196
238
158
210
142
191
214
241
179
171
192
200
204
207
198
164
206
145
230
209
195
147
169
186
193
169
135
227
228
229
183
232
185
192
206
189
199
212
164
206
182
229
204
236
172
227
217
167
239
179
148
145
255
226
259
208
160
181
194
234
229
198
202
196
185
235
125
196
216
177
216
241
222
226
248
134
231
176
173
212
155
207
178
220
211
211
242
169
173
232
245
199
195
135
209
178
193
171
187
199
285
229
224
167
201
216
249
254
169
179
206
162
241
173
256
194
171
164
178
184
189
234
194
220
174
184
224
227
223
176
168
194
198
129
162
203
166
214
183
202
221
187
237
169
118
193
212
120
244
146
224
199
210
133
185
194
164
201
147
275
174
212
218
188
206
247
171
231
155
207
252
215
149
213
166
163
182
221
221
251
279
204
149
195
222
250
191
162
241
210
242
263
219
261
212
219
205
157
215
160
151
176
253
205
222
225
189
140
151
189
148
196
210
220
202
129
180
165
197
189
210
194
201
202
242
265
215
145
230
226
189
200
223
195
208
248
202
188
188
190
207
224
233
218
204
245
201
216
177
224
200
226
284
184
202
217
225
194
193
153
240
262
176
268
173
180
235
190
190
190
227
223
196
172
222
161
141
148
204
274
209
195
164
143
176
156
151
161
232
212
249
196
208
230
197
231
247
224
268
254
177
205
163
252
242
243
178
229
213
193
203
199
235
237
253
167
206
202
153
250
237
199
240
203
183
158
137
258
128
223
234
201
252
221
218
139
245
170
184
148
170
168
160
224
209
128
170
183
155
159
183
209
201
155
94
206
158
159
149
226
206
245
178
217
227
178
231
162
215
160
174
190
188
219
150
253
162
170
228
196
140
214
181
193
232
183
222
145
230
242
169
211
200
258
198
192
212
237
208
205
129
198
174
143
217
198
237
262
188
215
147
226
178
175
212
168
242
259
197
213
206
252
126
229
205
198
233
238
237
226
176
158
205
186
167
182
170
244
186
179
238
221
171
195
183
190
190
183
259
195
169
215
215
172
160
124
230
135
150
207
117
178
221
235
214
193
213
164
180
175
170
209
136
246
210
274
148
177
166
144
106
188
158
162
173
234
185
188
229
190
211
209
182
163
161
203
178
137
252
205
127
214
184
168
179
194
187
224
231
174
227
216
188
178
130
218
221
197
129
216
195
201
209
191
185
182
198
234
208
208
189
174
166
212
218
233
211
202
186
120
230
197
188
161
247
235
221
235
183
161
197
161
204
204
115
208
239
143
251
185
256
224
220
203
157
224
188
157
175
248
194
226
201
187
225
179
224
122
190
274
179
301
270
211
164
222
203
256
196
181
248
142
209
180
190
225
190
139
207
182
198
227
223
206
152
228
230
166
232
253
234
192
229
211
166
226
180
237
240
192
209
224
256
199
213
187
166
184
163
220
198
190
242
184
195
237
253
162
173
182
179
188
201
224
215
241
226
180
165
188
235
175
238
180
152
191
116
127
193
191
242
246
181
245
194
241
182
229
199
264
160
152
181
211
173
103
161
118
233
173
189
128
219
163
164
183
208
227
263
219
239
177
222
216
271
215
231
242
177
259
221
176
241
190
215
206
228
210
180
285
277
228
240
194
220
211
202
188
212
231
222
226
126
186
174
234
222
160
192
186
194
232
176
140
290
158
234
226
207
258
219
211
200
212
235
227
203
156
171
215
180
227
237
191
192
211
214
194
186
183
142
259
209
230
190
194
164
250
230
202
168
143
165
179
206
180
280
166
220
188
222
96
199
125
211
201
263
241
166
225
204
203
247
233
234
225
175
185
158
156
186
258
147
186
193
185
264
164
212
160
226
223
211
172
170
214
176
174
145
231
164
194
186
108
180
206
152
151
182
200
194
217
216
186
163
243
170
173
173
240
250
152
200
198
204
179
145
191
205
222
259
243
147
133
229
174
141
166
163
233
162
175
161
212
223
271
146
192
184
176
220
211
211
154
209
144
189
263
206
199
188
277
240
204
175
207
187
179
211
170
161
149
225
227
185
205
187
180
219
178
261
147
211
179
224
268
153
271
237
209
220
206
257
167
192
150
151
175
213
189
202
152
170
189
226
165
222
234
236
241
170
161
159
187
251
188
201
240
190
184
187
207
173
177
168
184
181
204
191
159
157
194
240
168
244
182
184
195
176
176
203
168
261
241
167
204
183
226
221
187
220
288
225
182
152
174
172
170
230
255
247
179
228
179
210
213
189
181
161
156
215
223
200
172
140
179
209
132
244
195
175
141
196
152
199
224
173
225
212
189
219
182
272
216
174
221
294
224
141
225
160
233
163
270
168
251
190
189
238
243
224
162
215
165
166
170
270
255
232
166
251
220
192
175
271
202
216
189
203
161
237
254
193
252
215
248
252
189
180
227
255
209
114
204
242
194
242
200
208
177
169
219
238
179
162
249
225
167
156
198
186
196
175
215
188
183
213
183
161
129
237
213
201
218
188
211
200
161
197
188
210
235
197
220
252
198
222
213
226
184
178
165
140
198
172
189
172
177
183
233
197
196
247
155
175
214
218
230
213
169
165
212
155
184
229
230
175
190
194
182
191
204
227
235
210
199
187
223
224
264
226
156
236
194
236
156
207
181
175
221
210
145
261
221
214
222
177
215
133
227
236
180
232
156
168
241
255
194
221
214
198
207
143
167
224
177
165
198
172
179
174
154
219
193
189
192
213
216
184
215
254
133
248
224
175
159
113
206
214
172
242
179
221
230
152
196
162
242
210
140
268
228
159
183
208
172
186
236
240
144
179
185
222
193
237
175
197
137
151
210
148
223
256
195
229
254
239
166
175
225
231
219
227
195
191
157
185
187
211
153
181
154
226
227
220
216
137
191
219
211
229
213
215
214
231
222
151
180
188
128
176
192
221
208
203
142
170
198
193
224
187
155
220
231
224
170
153
222
209
188
207
213
181
239
166
214
165
246
269
186
229
216
155
266
194
163
135
206
207
227
214
171
199
192
275
168
122
238
134
194
241
212
148
173
206
159
181
191
237
207
179
223
183
208
190
221
188
156
227
210
219
184
216
212
170
185
132
232
216
225
228
168
204
176
200
204
148
184
233
200
237
212
193
197
198
205
180
162
260
201
193
185
217
179
193
176
185
241
183
159
128
222
171
193
109
228
215
148
232
224
192
222
236
205
199
197
205
203
190
134
218
233
219
241
213
153
229
149
235
142
194
210
231
188
201
212
236
259
213
229
168
168
234
119
251
131
238
247
130
180
232
186
199
186
189
199
234
294
189
212
179
234
214
227
199
283
201
190
201
198
231
202
247
234
249
170
165
216
177
189
195
215
185
255
246
222
185
217
228
190
213
200
240
200
163
238
255
233
234
179
185
252
228
162
223
213
229
165
238
138
254
190
228
145
251
203
236
203
170
159
197
179
209
179
146
211
131
235
228
188
127
200
188
246
218
179
158
176
239
227
196
169
214
235
187
209
238
190
255
190
184
143
239
168
184
175
221
201
178
168
222
164
247
221
219
221
214
195
187
195
236
185
157
185
164
218
218
228
152
157
223
201
202
228
252
216
207
250
206
223
236
227
182
209
200
203
205
230
185
166
205
174
229
226
215
274
143
183
249
223
154
220
198
192
125
262
246
178
165
198
142
195
180
259
209
246
229
174
272
136
193
213
162
283
195
164
226
210
245
265
221
146
203
150
206
241
203
225
189
214
157
229
155
242
135
254
228
233
187
263
202
254
210
235
231
260
214
210
230
198
195
188
182
189
163
239
235
159
200
139
158
179
246
173
176
154
228
216
214
210
182
200
220
195
214
179
215
164
206
186
212
186
222
212
196
189
239
221
130
219
213
228
119
254
180
160
201
209
248
171
141
183
190
182
202
219
214
205
246
170
252
255
182
181
174
239
187
240
125
203
256
133
218
181
244
244
223
148
259
291
226
181
234
217
161
197
227
180
161
213
241
174
220
171
197
200
243
254
172
178
147
260
175
159
221
182
191
172
129
192
175
243
242
104
237
216
211
221
270
146
187
197
204
221
247
261
231
209
171
183
236
251
195
155
166
179
202
194
160
152
197
198
189
194
219
228
223
202
254
216
165
171
243
222
265
162
176
221
205
234
213
212
250
241
180
157
197
182
192
188
146
189
184
174
189
195
214
191
201
168
191
223
193
271
198
165
203
260
167
171
156
272
266
247
248
226
217
195
210
140
240
237
246
216
197
180
219
200
228
199
182
216
265
126
229
163
197
141
191
184
193
219
204
260
187
189
187
212
188
282
253
202
203
177
266
227
188
195
257
213
260
177
204
181
193
217
202
203
184
195
188
178
216
172
131
231
192
237
215
191
219
238
180
235
123
133
182
179
256
220
176
198
118
186
233
134
238
200
182
207
194
205
204
221
224
167
224
206
211
266
213
173
242
228
192
213
180
209
108
283
199
145
210
181
232
187
204
209
282
169
154
149
247
248
246
280
222
140
236
189
195
205
203
164
233
219
206
194
241
214
204
175
274
241
204
221
181
164
221
251
277
201
135
251
269
187
263
214
180
264
196
213
206
172
217
154
196
244
254
203
220
199
187
197
232
192
256
198
169
235
184
190
202
212
189
255
175
187
155
186
215
150
183
188
129
178
221
227
180
206
213
203
197
167
222
215
213
221
143
183
282
157
212
258
230
212
191
213
245
164
153
221
194
237
220
153
241
208
246
177
163
198
171
218
213
152
204
185
242
202
128
187
117
188
239
144
266
166
154
184
164
175
242
231
204
212
207
176
157
230
234
173
198
172
253
179
164
166
203
226
232
216
214
209
224
206
190
210
230
216
220
127
198
215
206
183
170
192
208
183
252
209
178
216
209
200
228
200
223
174
182
181
187
166
219
239
210
216
203
173
222
148
245
139
188
239
224
180
240
248
180
230
243
158
188
201
253
209
168
155
152
150
174
198
176
186
206
196
196
191
182
210
176
222
212
210
267
239
236
209
207
177
209
180
172
234
172
277
185
189
202
236
177
206
194
214
162
184
251
177
222
210
231
225
242
172
138
169
234
210
219
247
178
129
252
185
212
211
215
201
193
128
161
246
228
186
212
188
191
226
185
144
211
204
212
191
149
193
249
166
207
100
198
224
195
212
198
209
146
121
279
236
189
192
176
134
233
222
222
227
181
201
207
285
211
182
160
136
239
251
181
184
129
206
239
226
160
273
210
189
188
199
172
204
143
208
220
200
206
200
203
269
237
196
185
197
202
206
238
200
261
234
166
133
228
231
220
246
247
178
123
209
225
187
173
232
216
206
175
204
179
242
219
191
193
173
234
211
208
154
232
145
182
175
177
223
190
191
226
148
174
245
222
262
191
201
215
260
157
175
193
203
216
185
115
223
231
211
223
216
157
235
261
198
156
164
191
191
141
193
205
200
258
260
199
220
216
157
166
251
229
178
218
226
163
178
180
165
209
136
168
201
230
186
215
196
249
199
188
224
193
201
223
198
180
235
192
203
198
226
179
140
155
166
205
180
193
229
177
209
129
216
150
183
184
219
224
214
206
253
226
233
224
161
189
201
168
202
228
242
174
130
225
141
233
236
224
247
198
223
176
169
224
165
189
198
159
153
232
182
201
196
173
234
193
149
196
219
189
205
196
198
191
185
218
198
214
210
217
210
209
241
221
198
189
234
236
214
228
238
186
207
187
221
233
220
202
169
268
142
227
271
272
164
183
126
243
182
196
208
211
110
191
243
185
173
206
248
182
201
239
254
193
185
232
171
183
150
225
137
165
190
210
172
273
184
295
193
219
227
192
238
205
215
141
225
136
202
222
193
177
206
221
236
91
169
233
209
224
256
229
255
206
215
208
144
253
251
171
150
163
190
209
254
190
218
152
127
150
227
243
204
189
158
160
225
219
235
209
185
183
206
198
180
250
187
152
236
209
211
213
202
149
189
182
233
264
213
224
160
193
130
190
181
180
196
172
220
234
209
209
134
208
238
195
227
218
212
193
242
178
237
244
227
246
223
204
250
191
168
216
238
203
169
207
276
169
218
237
218
112
225
213
222
178
217
180
235
210
199
239
237
196
181
232
272
193
171
220
212
195
247
201
154
123
226
217
159
180
254
222
188
204
138
245
197
185
161
234
183
154
206
224
202
238
242
201
254
184
229
226
207
199
147
202
152
174
145
221
123
255
229
185
190
210
191
234
162
197
169
156
174
171
205
221
204
227
216
240
171
173
210
194
188
209
144
218
194
167
209
236
226
194
242
202
151
188
197
154
227
226
200
119
163
171
204
147
112
227
126
208
199
217
177
192
208
206
197
205
196
263
219
247
153
231
233
253
238
217
133
174
171
211
172
228
197
184
176
234
234
194
156
252
198
198
253
194
245
216
232
206
166
207
214
228
223
106
244
192
225
172
237
253
210
176
181
244
196
237
195
210
121
225
179
170
184
213
240
141
181
181
214
196
264
198
173
203
206
185
252
140
227
242
216
211
180
209
157
151
215
169
203
233
241
205
189
213
220
284
179
199
215
246
227
156
210
166
197
194
142
247
203
151
222
189
193
187
184
139
268
261
248
204
143
255
182
215
212
267
169
260
178
180
204
223
263
128
240
194
236
200
178
243
207
201
247
243
252
186
185
237
200
253
208
217
186
178
160
167
150
149
194
183
164
200
198
182
226
248
192
219
208
167
205
176
223
209
145
202
184
190
229
171
148
237
185
210
120
177
198
154
246
180
152
178
190
243
201
218
231
201
193
260
213
215
191
189
234
227
185
206
224
138
143
174
235
273
228
201
256
156
255
212
232
193
168
229
186
186
214
138
180
146
180
211
158
162
214
239
167
160
190
195
232
216
188
169
205
191
161
221
204
164
174
204
161
185
191
269
172
139
208
222
212
208
184
175
213
256
179
253
213
160
160
225
226
198
165
235
219
193
167
178
166
221
215
256
232
207
198
192
214
145
194
214
240
153
158
231
218
209
209
242
280
214
193
179
203
194
149
125
125
194
261
210
246
180
220
176
217
241
217
235
224
209
164
174
190
211
175
180
244
195
142
154
157
176
155
148
196
197
210
213
151
209
195
235
164
207
218
197
209
168
163
219
204
227
230
207
153
247
245
186
236
234
175
183
203
206
211
215
194
168
154
213
231
186
191
215
187
196
198
171
222
220
234
198
229
170
215
199
196
209
241
223
202
224
196
219
210
210
188
169
206
228
221
233
206
156
207
219
157
183
225
222
210
170
232
255
140
136
136
171
191
187
245
144
244
204
115
201
203
221
237
210
221
180
225
218
202
240
237
168
152
261
196
233
245
212
138
203
228
194
177
270
214
235
228
201
205
277
221
163
244
239
252
200
202
208
212
194
203
133
197
272
186
209
140
179
192
255
198
193
183
177
149
173
246
125
179
239
225
172
148
177
203
209
160
169
222
241
171
161
206
176
182
157
139
221
226
251
191
218
165
222
156
187
216
212
187
162
250
180
202
244
177
180
211
224
197
244
187
232
221
248
170
264
209
241
221
214
213
171
179
186
221
160
191
118
227
187
207
189
187
181
212
247
192
226
255
193
241
182
199
201
169
153
290
130
187
181
158
93
199
224
231
160
233
233
228
136
158
167
141
185
187
225
247
210
197
233
193
187
190
183
214
223
180
251
187
241
236
184
220
197
201
167
167
269
227
178
194
192
212
192
205
159
209
217
166
188
225
228
166
224
150
167
123
184
173
219
253
183
180
185
165
204
176
175
214
215
236
177
201
143
172
247
178
211
206
273
190
157
197
173
188
177
165
158
209
185
211
174
145
249
184
209
195
198
260
242
230
146
183
172
175
207
174
160
203
181
173
166
214
174
148
172
201
241
168
248
214
201
210
193
199
187
225
187
219
167
215
176
172
261
194
226
247
169
199
184
191
210
159
209
161
153
223
171
190
182
216
181
262
230
247
190
217
198
162
169
160
186
194
150
160
227
202
173
262
196
184
235
255
198
198
153
246
217
183
195
257
201
206
194
175
164
232
188
154
196
256
165
226
251
178
205
187
233
198
215
214
219
170
161
211
205
217
237
146
222
196
221
185
191
154
184
222
193
203
208
192
159
209
193
155
219
202
241
186
214
230
189
204
265
186
229
152
167
223
212
205
196
226
202
245
162
203
217
250
170
224
249
207
211
200
242
241
197
187
209
224
221
143
233
238
200
209
253
238
149
200
194
158
240
175
209
154
207
150
188
193
176
194
258
198
189
226
223
213
195
179
229
193
198
180
183
163
150
210
181
189
229
132
150
222
212
211
200
180
234
204
180
157
193
240
194
175
205
180
205
221
233
206
196
230
232
257
142
183
212
237
241
158
182
177
149
188
248
190
236
182
210
220
201
205
159
262
225
176
186
191
215
222
255
206
202
255
155
199
245
191
184
263
173
200
141
217
246
212
190
163
199
267
279
187
207
219
216
207
131
201
205
242
228
195
165
166
246
223
241
230
233
154
216
173
144
196
180
251
169
231
201
171
222
237
214
177
213
159
220
191
264
229
226
218
205
270
234
197
246
180
247
188
214
222
193
175
226
203
240
233
177
218
210
187
206
200
233
246
208
235
245
132
170
230
250
175
195
179
198
179
228
185
217
215
203
157
220
175
206
167
175
171
179
204
178
160
217
198
142
158
248
195
218
222
138
217
199
167
190
183
206
145
187
166
213
185
165
203
227
164
212
183
114
167
235
177
149
205
192
130
152
192
129
216
241
129
218
206
251
154
203
217
177
211
211
196
175
169
225
236
204
195
169
214
176
217
147
217
149
260
191
111
190
259
126
276
186
192
214
190
170
192
223
196
180
191
216
150
204
205
179
251
194
202
163
226
189
158
187
146
191
146
199
218
188
237
199
189
163
217
222
184
232
162
234
161
222
230
209
141
175
204
206
236
186
219
230
170
218
183
192
193
221
152
228
167
201
183
151
203
226
249
171
248
238
241
235
157
172
177
211
198
257
203
225
264
209
185
230
221
216
219
172
224
225
223
212
152
205
199
187
271
213
214
207
247
196
226
233
234
163
97
182
161
210
183
236
167
181
177
161
225
224
231
212
214
182
191
186
218
238
271
166
220
261
264
267
151
139
221
189
164
201
212
242
178
157
156
247
228
180
221
239
208
139
111
198
215
214
201
148
186
215
207
143
223
213
160
154
200
217
235
159
222
209
191
230
238
192
181
197
169
159
218
166
221
198
224
177
156
207
134
189
143
143
216
178
202
167
236
208
226
220
208
256
266
239
198
273
185
219
197
211
180
178
226
231
183
189
228
203
213
219
207
221
217
214
151
240
222
226
224
176
181
209
173
143
212
191
248
242
222
155
224
188
189
192
215
254
185
167
242
177
136
218
177
206
184
210
142
200
238
189
191
156
216
222
188
207
191
176
160
217
225
186
224
156
194
211
114
209
236
227
215
131
136
143
171
196
216
188
203
187
218
220
248
97
229
196
176
197
188
200
235
161
166
164
261
155
155
185
159
177
246
230
180
215
121
181
208
177
185
152
206
235
163
222
208
221
160
186
234
182
188
199
203
230
247
199
180
197
158
186
223
153
183
235
137
166
188
191
250
210
176
297
241
208
242
157
188
179
220
209
231
192
120
257
195
244
150
279
209
155
141
220
249
239
193
169
186
267
188
189
221
234
174
201
208
169
233
208
236
204
208
256
236
233
201
138
171
155
111
194
226
220
231
194
172
221
166
167
160
250
154
208
134
164
188
135
217
198
176
176
195
234
114
190
231
201
209
175
161
197
183
212
167
184
163
191
260
231
200
200
161
217
245
169
215
163
210
196
203
113
169
193
204
195
178
154
190
227
226
205
247
162
257
235
175
174
216
216
174
167
244
163
194
187
237
124
214
228
216
230
188
177
194
177
223
237
221
172
267
226
155
200
218
212
213
182
223
132
250
206
174
223
164
190
208
215
216
241
229
235
172
223
153
217
145
223
154
181
195
200
205
187
179
255
209
183
244
164
219
192
232
202
192
217
162
256
211
238
212
214
220
195
223
189
178
217
161
237
147
222
190
148
201
226
223
181
208
236
199
212
202
204
231
162
201
256
261
144
166
216
117
185
174
230
165
171
212
136
152
255
166
128
181
219
173
198
225
209
197
218
210
280
210
194
174
220
204
195
205
186
238
247
242
183
229
202
186
130
216
151
157
228
159
264
251
198
133
245
269
215
247
241
216
164
222
209
257
194
183
213
246
141
193
196
244
121
175
165
163
185
205
243
230
184
167
206
209
237
169
161
227
227
242
155
193
187
191
159
273
176
165
249
183
190
229
212
189
183
235
239
195
226
150
190
158
203
217
231
210
226
225
212
194
154
208
184
264
216
249
178
221
216
259
220
215
227
217
208
144
229
176
159
217
171
207
155
211
234
198
195
194
271
175
236
173
183
180
246
253
171
245
209
120
157
202
139
222
179
278
217
204
165
177
149
152
197
254
245
239
210
194
246
207
275
230
202
228
173
215
175
225
212
220
218
172
185
166
232
186
165
188
192
124
200
187
269
238
193
158
210
193
259
217
239
152
142
177
172
190
236
252
220
201
144
132
224
182
190
233
188
175
229
168
174
168
266
221
201
203
153
171
185
184
236
136
259
137
223
148
254
177
156
218
188
193
255
222
176
231
157
243
184
105
235
246
230
219
241
166
241
208
246
213
235
225
172
265
194
222
272
256
170
182
187
234
202
220
204
169
146
225
184
240
204
145
164
218
160
230
202
149
189
214
252
169
156
223
219
188
238
219
142
185
149
172
213
204
190
186
207
229
196
148
215
188
207
210
197
177
187
126
201
166
201
208
189
194
223
202
254
240
151
100
157
224
246
232
215
153
241
178
234
178
163
183
184
222
251
163
196
192
162
160
145
215
207
263
185
283
242
170
172
221
151
216
171
252
174
135
229
217
193
125
244
127
208
222
222
206
185
228
201
201
200
176
219
197
196
239
193
263
268
173
223
187
191
222
155
204
179
200
168
169
195
216
200
194
205
117
166
269
187
204
164
216
221
154
201
172
185
201
173
223
213
230
177
137
183
178
180
218
187
226
203
225
193
196
173
284
229
174
231
201
163
212
207
163
244
249
222
224
198
229
149
172
215
157
219
207
205
208
163
169
197
223
196
173
123
213
220
177
231
187
234
241
197
194
259
155
197
153
174
186
219
110
168
192
239
190
189
199
138
209
172
194
208
203
228
181
114
153
219
204
176
119
238
187
232
211
219
177
189
193
177
221
159
192
176
222
186
204
169
200
225
178
196
234
226
173
245
190
241
272
206
138
189
254
210
213
202
207
117
206
174
232
214
193
215
155
254
205
191
205
251
253
161
208
189
252
199
219
198
171
171
207
173
282
146
201
183
251
253
240
136
208
225
221
188
252
268
214
157
196
168
163
204
189
178
229
218
189
213
137
219
193
213
207
230
150
155
227
146
208
198
243
152
154
186
206
224
215
204
177
148
152
176
152
189
207
173
192
250
164
152
240
250
225
233
149
198
232
183
180
179
193
202
208
241
179
195
160
161
181
183
204
213
148
231
214
199
212
210
167
177
216
225
118
156
172
191
185
242
189
219
182
256
136
179
214
208
221
144
218
239
196
219
196
184
177
188
191
128
202
172
218
202
174
241
132
159
180
193
194
173
173
194
211
201
167
243
160
188
200
191
194
237
201
184
128
198
133
204
187
163
222
177
214
244
154
217
170
206
200
213
129
199
192
142
244
195
207
227
186
255
230
242
198
235
198
247
185
207
166
186
169
174
243
180
201
226
149
154
103
150
228
149
222
152
177
181
143
204
234
245
279
211
143
227
150
166
162
230
189
123
209
159
251
192
238
197
135
263
254
212
229
235
219
212
169
130
177
184
274
211
230
192
197
249
235
252
241
174
217
196
223
213
203
237
166
214
205
181
158
248
137
217
209
153
226
186
198
162
210
239
181
177
130
255
223
193
161
216
205
171
214
227
182
116
233
236
254
209
218
218
169
229
199
202
152
217
228
200
184
228
215
164
172
179
211
207
165
253
192
167
219
165
240
186
218
153
212
202
198
203
211
246
184
186
189
187
249
160
226
169
249
259
181
223
123
160
209
197
192
212
192
166
234
176
132
223
134
153
180
201
214
186
156
168
265
191
237
232
167
217
157
245
191
209
220
187
222
202
231
212
221
231
233
241
180
219
233
189
213
128
205
210
174
201
213
207
222
216
236
215
198
209
189
244
230
181
230
199
168
229
202
214
270
169
191
166
206
216
211
187
185
202
162
179
219
208
213
225
215
230
256
204
224
230
175
220
221
231
166
189
164
250
181
183
207
200
151
191
195
181
212
209
195
218
139
199
151
172
208
216
176
210
234
165
203
170
187
223
207
175
205
162
185
225
209
218
137
197
140
220
257
222
232
172
253
273
139
176
221
200
154
156
211
197
178
161
238
209
210
113
129
155
171
211
197
169
241
226
248
190
145
231
211
236
247
265
231
184
181
186
239
184
198
167
157
256
204
117
242
204
196
163
172
190
243
198
204
149
120
148
199
167
224
160
206
187
178
233
249
201
139
211
209
286
240
216
218
229
190
158
207
170
222
181
198
220
197
231
240
215
190
220
187
178
181
169
175
183
171
188
219
214
169
215
159
218
193
254
184
190
175
194
219
201
177
227
182
183
217
113
165
155
146
177
132
158
259
245
220
179
225
196
257
214
187
224
200
173
159
219
223
195
236
154
239
204
167
209
251
172
201
245
162
197
232
151
204
201
223
242
199
160
191
130
212
194
143
216
157
216
236
157
254
178
241
233
176
172
114
224
167
205
192
139
176
210
161
201
197
175
213
155
252
248
262
271
215
228
212
152
268
232
202
140
157
191
257
269
184
206
234
196
209
191
189
235
185
201
159
182
197
185
211
143
229
177
177
155
156
174
199
264
229
134
142
223
192
203
198
214
261
170
189
188
183
171
142
186
112
250
227
211
227
254
195
229
254
231
197
211
224
203
272
209
176
184
216
240
227
200
200
214
200
241
124
224
209
234
198
222
239
239
206
258
207
205
243
217
147
220
219
248
208
228
152
250
213
229
204
184
197
199
142
220
155
212
185
214
200
192
173
227
240
169
235
198
153
178
163
249
169
158
217
111
194
207
217
164
189
216
200
253
208
157
183
149
185
253
162
208
149
211
149
227
194
212
220
198
205
221
206
212
223
228
229
181
203
219
240
272
178
185
132
184
223
196
216
231
156
214
186
253
247
191
253
184
221
188
188
228
159
204
208
226
246
203
225
198
192
101
140
187
242
198
162
149
179
215
219
202
212
183
162
163
183
187
184
135
244
176
198
206
139
172
220
199
175
169
181
209
188
150
191
190
169
231
195
262
202
206
179
171
145
241
145
183
139
230
203
187
194
259
184
167
175
167
152
229
174
294
239
176
176
158
189
214
195
229
221
215
171
147
266
288
158
178
222
236
177
217
200
236
162
173
258
168
210
207
215
168
219
210
213
190
230
226
177
184
185
265
211
205
181
187
196
218
184
239
181
231
266
148
117
213
166
213
236
126
180
192
152
188
164
166
208
164
165
239
200
237
211
152
153
177
175
238
167
178
245
261
269
181
188
222
173
262
256
216
204
264
188
195
212
212
222
203
255
242
187
143
229
173
177
166
219
233
189
212
251
257
201
216
177
172
202
205
168
209
154
182
224
234
190
213
256
185
153
124
175
236
167
200
227
145
267
164
199
222
204
185
245
203
184
210
206
221
240
246
228
185
173
226
209
219
201
221
180
199
231
212
231
196
217
159
236
183
171
219
170
195
203
278
199
227
116
213
202
179
190
242
193
209
186
225
207
214
169
198
216
172
244
179
217
201
151
216
182
219
131
205
146
219
227
190
218
188
219
227
142
148
201
215
204
285
234
151
228
229
169
177
204
184
168
196
216
214
153
191
254
198
234
262
200
194
186
188
180
232
205
225
246
237
184
220
121
176
195
231
242
161
173
152
224
182
211
211
131
217
182
152
209
253
216
221
210
231
143
193
180
172
238
241
205
225
197
194
132
260
151
221
257
206
196
166
199
223
217
197
193
189
182
223
185
200
217
232
244
109
132
234
238
159
166
191
198
206
111
125
221
204
201
225
219
224
188
120
145
268
241
150
172
208
206
265
264
158
155
197
247
183
179
213
211
233
119
231
205
178
187
101
162
216
209
190
209
220
150
260
254
240
189
196
190
201
209
243
263
145
226
169
170
260
147
162
180
153
241
151
222
173
192
239
212
213
157
119
233
132
221
239
188
116
212
202
206
258
225
261
149
135
204
201
159
202
235
162
192
236
202
186
219
275
225
186
184
225
238
212
233
171
196
222
207
226
121
156
215
187
145
260
118
231
233
209
173
229
148
207
238
231
280
228
177
167
172
203
158
194
178
206
230
218
219
203
161
225
182
226
180
158
204
201
166
203
184
236
286
213
202
232
250
128
184
177
240
209
255
205
176
217
213
168
205
202
177
142
232
212
176
217
223
177
161
238
90
177
239
239
210
220
212
200
168
243
241
211
194
192
177
188
163
203
175
109
136
185
221
199
190
248
214
193
232
140
202
198
183
209
240
190
175
212
201
189
159
264
190
232
177
237
151
239
204
122
194
170
237
203
239
137
172
167
201
270
188
156
225
199
236
195
187
241
177
212
203
235
229
188
218
219
218
145
244
181
183
260
180
213
167
176
190
179
181
264
154
209
164
134
182
236
126
241
238
162
185
172
217
233
197
244
178
228
248
270
176
141
217
196
189
166
159
171
178
240
157
228
186
210
200
143
221
245
170
240
148
231
204
209
250
214
213
181
274
169
240
178
124
219
224
189
128
113
263
204
192
173
197
194
163
179
142
185
172
188
215
223
154
187
215
232
233
205
192
238
174
243
183
195
214
228
231
229
159
209
211
176
235
220
214
234
234
194
183
181
209
177
152
141
218
131
153
160
149
203
256
234
136
172
212
203
205
168
217
237
193
180
160
206
218
164
180
253
162
235
208
239
215
161
156
180
204
262
226
228
227
195
219
255
231
192
214
265
216
236
217
152
178
166
145
176
161
237
183
216
217
165
207
269
182
188
193
245
165
257
137
237
208
215
149
224
220
210
171
201
187
184
231
199
126
225
188
200
175
216
203
193
274
205
224
180
188
242
239
180
254
203
183
180
168
247
211
248
214
233
230
231
225
158
225
207
177
187
215
228
139
224
210
243
199
229
181
164
221
172
177
153
194
222
192
202
216
216
211
144
202
244
134
209
204
193
205
166
253
191
201
195
155
215
218
189
219
188
239
208
219
210
232
173
162
188
193
143
176
179
198
215
207
195
205
165
230
169
275
259
178
236
213
198
135
225
158
147
260
188
214
188
199
241
251
231
219
227
199
203
235
222
160
184
231
155
176
185
194
308
205
212
176
203
165
220
259
257
191
198
191
223
205
232
241
282
161
199
188
235
168
177
222
161
224
183
271
240
276
251
210
199
188
244
193
190
195
212
213
259
123
146
176
241
194
192
149
158
201
231
228
220
198
228
204
159
207
207
265
206
196
160
169
257
143
195
180
256
175
208
290
240
182
206
216
225
143
224
143
231
196
203
199
187
121
207
145
144
186
194
167
151
153
222
253
188
231
189
203
231
205
229
173
154
200
196
120
172
217
203
223
219
208
194
222
212
280
202
201
157
219
182
147
304
164
230
165
232
158
172
119
178
174
163
156
141
182
205
254
241
184
176
188
243
183
217
247
180
170
233
206
181
194
164
158
205
267
228
234
213
219
241
256
154
201
194
233
118
161
192
170
178
247
181
182
221
221
198
246
157
226
165
239
233
191
261
224
224
175
166
145
186
190
165
207
247
239
266
233
235
144
209
102
197
175
282
258
176
134
189
186
142
216
218
233
227
241
207
185
163
223
202
244
181
225
180
208
167
187
205
195
259
187
223
243
233
131
162
157
213
244
228
183
133
171
213
146
153
219
215
153
207
209
157
276
191
198
209
221
231
173
173
203
154
164
242
230
217
253
154
186
261
162
225
223
190
183
182
128
165
234
184
165
260
210
265
166
176
182
174
208
162
231
224
210
221
194
181
241
199
220
229
194
198
213
224
249
207
183
130
251
172
211
219
165
256
166
218
191
224
159
206
203
192
108
236
239
234
239
186
220
273
201
268
213
122
245
260
236
202
200
208
165
243
238
214
184
176
263
164
271
193
199
175
271
181
207
189
181
210
208
194
213
229
110
209
222
216
202
219
180
196
241
221
175
220
290
225
220
241
148
184
200
188
140
138
172
202
225
183
186
149
230
159
214
142
247
201
118
184
209
155
181
142
195
168
211
234
255
199
171
173
276
224
197
202
189
232
185
173
190
248
207
225
187
196
186
269
207
179
294
180
176
208
223
214
132
174
219
162
228
227
249
211
217
188
216
227
230
216
203
218
215
233
243
166
185
194
160
201
233
209
208
148
212
189
175
238
238
176
238
228
191
168
248
193
194
224
163
235
215
170
145
194
213
198
257
115
160
229
189
201
207
194
168
167
178
160
158
212
217
145
204
171
234
208
198
203
129
195
198
149
239
195
202
169
210
146
242
170
243
236
161
183
97
159
215
211
237
228
217
219
169
166
196
237
175
213
157
186
212
150
284
181
176
244
194
175
197
230
227
216
234
206
226
221
253
279
204
154
283
235
268
130
163
206
197
248
243
172
216
157
185
172
211
238
233
168
230
209
205
185
259
145
156
214
191
157
166
170
239
106
236
168
213
198
145
239
225
174
122
242
164
239
216
186
210
206
169
189
218
218
169
207
148
305
214
164
161
221
194
198
209
198
156
232
219
270
198
180
209
254
253
194
199
212
188
193
211
205
230
176
230
239
168
206
213
212
147
184
243
254
213
218
193
163
155
220
214
185
172
136
212
148
210
181
243
147
249
171
273
195
183
194
227
194
232
173
147
166
195
242
189
157
236
219
158
189
232
178
225
247
212
200
219
257
215
112
165
204
187
245
219
198
212
127
142
208
235
227
177
195
211
242
203
193
210
153
172
213
247
240
235
201
196
175
221
213
183
229
201
167
170
188
222
216
204
187
190
228
205
227
251
161
170
221
196
224
187
185
226
243
256
179
210
145
216
206
248
196
205
226
236
204
200
211
253
186
200
209
184
202
204
225
222
238
187
156
270
201
186
220
197
225
210
188
207
197
224
251
208
285
185
159
236
193
129
225
222
208
193
233
143
224
201
186
209
247
197
190
216
172
177
188
188
178
155
210
186
215
137
196
216
201
212
152
209
240
143
151
199
215
235
251
162
207
237
207
242
175
203
149
152
189
234
110
241
236
268
196
115
181
249
186
187
206
219
179
218
220
169
174
218
214
212
199
223
121
206
226
235
221
221
241
186
229
180
179
177
160
242
167
190
214
218
201
202
190
141
223
241
143
211
224
158
158
207
202
179
186
202
185
191
200
181
163
193
248
238
140
138
173
196
250
141
256
204
201
176
125
223
155
191
223
211
169
243
229
234
176
171
246
193
225
163
192
199
182
168
148
162
176
156
203
174
170
189
220
164
165
262
266
232
190
211
176
262
243
196
233
206
189
224
186
278
233
137
125
165
182
246
220
205
228
238
229
225
218
211
210
108
215
204
233
173
197
267
214
209
239
168
268
236
208
202
196
234
195
220
164
212
178
140
219
182
237
157
169
226
213
218
184
224
165
252
223
228
184
177
147
202
170
183
236
144
227
242
193
234
137
194
203
210
185
194
166
184
242
208
164
206
258
248
249
181
141
186
187
177
165
223
202
168
152
125
165
158
245
212
192
214
194
175
210
226
181
229
173
190
185
193
185
183
167
233
155
256
217
152
243
220
215
221
209
179
163
219
177
230
212
195
185
175
171
236
166
241
202
224
142
169
198
220
199
259
211
219
202
148
165
173
200
157
212
205
196
237
232
225
187
175
254
155
190
211
179
196
131
177
181
262
177
241
144
275
219
230
199
207
234
214
202
212
218
188
208
187
149
177
212
224
239
174
222
184
241
193
146
239
239
211
199
196
248
242
245
178
128
205
121
200
217
218
213
155
195
155
210
223
210
178
247
211
188
229
245
188
287
189
241
232
160
194
212
209
212
218
192
162
258
240
190
248
271
263
117
201
183
119
227
185
263
227
194
198
241
200
170
191
228
157
230
221
222
211
187
203
175
176
196
214
154
176
185
221
213
122
186
210
150
224
204
236
201
248
165
215
190
212
216
190
150
250
182
261
230
222
166
247
193
226
146
202
250
182
223
191
150
139
174
171
175
158
176
200
202
201
157
249
180
241
158
194
164
221
207
216
204
159
235
139
212
212
143
194
182
148
162
237
229
250
144
172
214
247
205
195
169
155
201
218
207
215
213
220
200
153
215
196
225
179
154
214
230
246
226
147
199
242
235
241
193
201
217
234
204
270
190
186
234
199
172
183
161
168
200
224
211
161
196
211
202
184
204
178
181
246
202
224
211
190
191
158
217
267
163
161
206
288
163
218
156
197
226
225
234
226
190
197
240
196
181
191
174
217
156
196
237
218
141
212
185
207
238
204
163
126
209
247
190
176
174
207
154
161
227
237
235
185
183
165
179
239
166
160
169
201
203
209
205
208
202
151
254
217
219
280
174
192
188
236
226
172
202
163
197
242
138
165
190
292
190
210
240
201
220
180
143
209
229
243
181
188
207
151
157
219
135
195
213
245
185
210
230
217
182
195
218
158
203
212
182
169
152
201
192
188
222
216
170
211
168
187
226
174
235
147
204
220
167
219
207
188
224
175
227
154
221
232
200
204
179
253
233
271
184
235
244
222
224
205
241
168
144
164
162
242
192
200
216
178
238
263
155
121
211
257
170
100
231
204
175
203
149
126
216
220
184
209
178
206
240
210
210
224
242
182
214
226
256
213
267
246
217
206
247
205
95
236
225
155
203
196
188
202
262
196
215
217
174
260
223
189
178
217
226
190
170
163
176
130
213
161
190
199
140
203
224
175
215
176
171
150
264
193
178
216
192
172
220
223
239
211
188
187
168
232
198
191
206
148
187
216
217
202
178
153
191
204
231
192
223
174
200
194
160
205
144
205
238
212
253
207
137
199
212
275
143
178
231
213
235
197
218
235
141
185
293
194
185
219
212
186
217
169
208
120
211
212
221
172
216
201
231
175
225
211
178
226
232
230
242
202
220
208
206
239
197
182
234
203
212
235
202
249
226
245
238
216
172
210
235
225
179
198
209
212
185
259
213
200
226
223
201
158
175
169
219
222
222
273
176
218
235
128
193
233
233
214
243
175
176
260
192
203
217
193
212
259
194
190
196
199
212
227
194
195
107
184
225
242
216
209
249
225
185
259
220
164
144
189
239
167
220
200
274
100
196
215
222
244
267
226
144
226
199
154
155
210
213
213
131
269
200
128
228
184
187
153
172
220
225
196
201
143
160
234
182
168
170
196
155
211
177
278
247
197
196
247
239
232
207
263
198
224
198
201
199
137
230
190
170
196
248
167
207
196
221
180
222
224
233
212
167
193
237
155
255
128
255
208
193
168
182
191
253
124
141
226
123
194
210
162
203
273
147
190
224
235
147
223
273
217
188
186
159
199
221
179
209
142
196
146
145
217
249
176
154
187
232
237
244
173
216
205
232
142
184
157
194
162
188
208
252
182
199
185
240
174
205
175
231
200
248
211
176
189
213
203
249
155
212
233
187
230
222
245
177
143
231
211
168
185
269
230
220
193
196
161
174
214
180
172
230
199
146
132
134
200
156
205
182
185
175
160
202
224
162
211
230
220
181
184
159
227
201
182
197
171
208
225
218
157
215
160
218
183
218
184
194
226
177
225
209
205
198
215
215
224
131
181
181
189
134
153
214
199
127
231
224
182
163
201
248
238
224
263
150
221
235
185
188
214
159
201
190
201
237
253
238
215
170
193
208
243
227
216
198
191
192
203
203
232
231
184
210
247
148
216
251
250
197
193
204
115
138
149
136
169
190
240
258
173
185
158
218
151
236
200
155
183
153
149
145
240
213
258
233
184
209
176
146
216
158
197
240
198
179
193
146
217
191
210
205
169
198
250
208
186
134
218
168
246
122
169
160
219
136
173
238
257
215
154
201
167
210
196
210
221
227
189
195
119
137
242
228
201
180
204
249
219
241
222
178
235
168
155
223
244
230
179
216
154
174
153
239
203
203
176
169
208
184
212
179
266
235
247
174
240
274
226
284
202
254
172
130
208
228
218
189
195
146
197
204
173
155
157
170
157
174
215
270
216
216
135
238
179
238
170
158
208
213
175
225
222
216
222
222
207
254
144
199
210
207
182
171
190
231
187
174
230
206
238
198
180
245
186
230
239
203
241
191
168
202
235
149
253
210
217
165
154
192
207
232
218
194
186
182
213
218
199
190
212
231
219
191
207
154
162
180
210
149
201
191
193
207
174
182
241
173
241
176
181
163
202
181
229
192
183
173
237
202
192
196
220
241
184
199
251
137
218
218
220
164
188
209
217
145
196
220
232
173
187
182
173
212
138
226
199
222
227
215
174
207
169
241
211
195
175
169
202
203
179
149
220
184
144
215
225
256
183
223
222
210
185
235
188
157
175
217
152
219
210
211
201
167
201
258
186
227
172
271
197
224
183
182
160
220
118
236
183
233
159
170
200
222
132
267
184
140
173
232
225
228
158
171
218
126
191
238
195
161
198
165
168
186
211
189
210
227
217
223
169
154
192
151
230
250
182
250
192
223
256
156
207
238
118
171
232
196
168
188
235
177
168
162
236
181
215
230
262
207
133
255
237
183
165
245
236
186
197
241
171
194
202
254
211
245
202
165
234
237
154
204
194
239
196
180
216
231
184
169
189
165
160
203
145
205
175
216
213
192
225
192
187
248
196
238
219
214
238
220
160
244
207
183
196
185
220
172
172
191
193
105
205
181
166
238
206
214
232
230
193
227
214
160
190
241
170
237
212
190
207
211
159
165
156
208
199
214
228
165
173
154
210
200
214
230
231
160
214
279
246
213
118
226
249
224
182
209
167
281
172
249
188
192
191
179
194
200
244
220
161
165
193
242
216
244
231
201
181
200
141
129
193
153
163
192
155
239
223
230
191
227
250
201
195
185
250
208
177
240
182
262
172
254
213
221
216
218
220
129
214
212
163
207
207
181
228
203
251
196
168
135
246
214
261
239
228
153
236
206
205
262
215
196
201
219
210
267
271
149
170
177
194
180
198
250
191
181
277
184
187
210
227
164
175
164
149
216
148
207
200
155
204
195
201
213
221
173
161
236
154
236
202
205
186
219
256
203
170
197
270
184
258
192
215
256
180
193
202
198
251
234
294
219
249
195
197
197
169
232
155
124
198
235
188
179
209
175
198
202
192
203
177
171
270
202
198
216
265
170
238
196
192
176
131
237
129
218
188
217
248
214
251
186
156
163
164
205
178
137
240
164
216
141
228
178
249
210
174
172
204
158
220
232
265
185
169
209
182
179
125
126
153
219
211
158
197
201
237
160
183
179
211
201
173
183
151
209
188
152
116
243
179
179
138
169
212
201
191
205
195
216
234
192
208
194
221
195
185
176
244
257
222
210
202
157
241
206
150
187
185
187
202
157
229
213
210
198
170
213
258
128
203
179
240
164
208
238
223
214
195
254
229
238
185
163
232
208
170
204
218
162
219
212
206
237
165
233
210
143
181
136
236
189
161
256
117
212
144
194
215
195
205
158
258
249
220
252
233
198
222
175
222
229
186
187
198
216
174
172
118
218
117
196
238
254
188
122
179
237
236
179
204
196
200
212
259
232
198
224
199
241
189
178
198
92
210
210
205
241
204
209
231
208
186
138
176
198
200
259
200
233
206
177
220
224
222
256
173
188
232
200
175
217
195
192
247
199
175
200
202
219
219
247
277
215
227
179
244
195
246
166
172
225
176
169
184
152
209
197
175
215
218
193
240
238
207
188
225
177
212
213
182
221
161
227
225
217
175
244
131
240
224
170
210
190
239
224
190
214
234
276
179
201
220
242
253
171
201
234
171
190
194
185
193
188
198
172
161
218
163
230
123
146
155
216
206
223
202
150
238
233
263
166
249
169
158
174
216
201
164
192
207
140
247
210
235
268
182
204
150
178
162
162
154
254
165
193
235
173
154
190
224
174
254
203
163
175
211
169
243
119
164
166
201
211
115
184
172
260
220
135
142
135
216
176
292
190
277
175
224
151
236
177
211
188
171
215
168
182
252
153
198
283
220
176
225
219
146
195
272
187
213
174
153
273
220
235
221
99
196
193
230
197
191
210
229
243
163
197
223
238
155
108
193
167
198
164
230
231
187
216
214
225
163
195
205
161
187
199
218
195
218
220
173
207
266
241
110
226
184
181
241
136
241
181
166
204
271
214
177
237
231
164
227
240
167
188
181
172
231
195
228
169
205
186
221
182
220
243
132
163
230
210
191
255
155
189
243
268
194
200
211
234
205
185
215
145
207
185
230
153
211
214
217
230
256
187
228
185
190
257
200
251
224
223
207
205
256
240
156
193
190
199
207
228
192
188
208
182
226
169
194
193
183
188
241
228
192
220
259
226
191
213
214
209
233
191
274
186
192
233
197
203
230
250
161
241
126
209
235
211
186
175
212
142
230
226
237
228
208
245
255
242
203
199
163
176
175
167
234
203
191
209
264
191
183
114
216
211
185
170
241
224
187
204
173
188
204
135
185
203
213
203
214
189
149
256
142
252
151
130
182
135
178
202
230
216
225
210
217
153
192
120
174
239
172
217
158
169
126
159
167
194
179
205
176
205
195
197
178
229
171
204
197
240
211
228
175
187
231
137
212
178
220
266
212
188
203
179
265
211
176
197
146
205
188
228
210
257
168
202
191
115
195
157
237
165
164
179
225
135
190
194
146
247
193
203
176
263
156
185
207
146
227
219
181
213
167
143
211
209
224
145
162
215
255
205
261
166
209
193
237
204
207
244
239
200
219
212
184
221
140
197
124
191
201
164
217
223
158
240
244
225
168
209
183
197
211
207
255
221
151
118
244
201
223
214
233
115
230
263
220
199
162
213
269
111
168
242
241
238
201
222
228
275
221
189
210
181
214
158
180
270
161
152
206
213
254
191
240
191
170
203
183
234
206
229
214
211
233
236
204
198
177
209
182
157
135
181
201
234
174
204
175
190
202
209
176
194
232
207
164
182
235
262
161
199
206
193
212
190
196
197
217
234
205
209
145
220
227
240
199
216
224
246
186
218
171
171
207
169
150
201
233
180
242
252
164
182
223
194
185
190
217
165
153
263
163
197
155
114
261
158
204
211
214
244
140
156
208
231
214
124
227
138
207
247
157
179
185
239
222
261
210
164
167
247
156
211
201
196
142
246
207
198
198
224
198
194
201
195
178
124
216
241
209
209
161
252
203
189
124
228
234
179
155
170
142
231
257
151
130
253
263
204
186
127
171
216
237
221
194
142
229
232
172
208
183
226
207
224
164
237
164
166
213
110
289
231
185
212
161
182
244
231
190
218
220
191
236
162
169
257
181
188
147
173
199
195
190
155
164
144
145
155
193
147
226
186
137
202
208
133
188
198
170
171
230
254
202
187
175
206
149
228
211
231
164
201
177
116
248
168
139
166
232
227
214
232
257
182
206
290
138
275
187
240
199
218
165
220
179
190
140
205
222
169
165
176
221
230
197
160
172
190
152
226
224
210
205
188
217
189
206
143
245
183
215
239
181
156
207
191
185
234
156
183
186
110
244
186
186
172
201
166
175
180
185
196
184
140
146
220
220
222
223
193
253
249
215
211
206
78
190
222
194
208
189
236
202
216
189
141
185
205
208
180
184
166
241
165
269
244
205
237
197
217
206
192
199
204
205
215
198
195
219
196
208
166
179
207
236
217
146
184
180
188
167
217
209
224
187
201
250
220
295
197
195
235
239
232
245
169
203
217
213
211
202
215
220
204
173
204
222
247
256
172
184
163
196
251
192
187
214
210
171
193
257
174
230
198
212
237
181
223
131
185
204
205
193
181
209
171
167
271
166
196
212
218
184
177
100
189
190
209
213
151
196
137
193
195
223
207
165
213
157
211
163
254
200
224
190
220
191
184
198
128
147
236
204
158
203
221
227
191
281
237
198
279
222
248
222
189
195
171
173
194
208
211
200
175
219
171
150
166
207
215
216
177
254
165
262
234
184
158
202
234
240
268
115
218
136
192
281
183
218
208
155
202
221
141
195
196
185
169
131
213
168
228
167
241
203
203
242
259
240
263
259
203
186
187
143
250
167
200
218
191
186
234
183
166
180
192
217
125
206
259
182
127
204
228
183
129
232
194
238
186
194
137
163
219
181
131
211
195
168
217
252
200
174
229
190
230
255
218
247
242
217
177
198
280
108
182
192
165
210
186
202
201
175
225
224
151
225
209
179
240
187
105
207
177
213
183
211
218
200
190
198
227
206
141
221
211
224
199
147
207
219
221
139
181
264
227
167
236
175
221
186
180
222
217
195
218
230
239
206
178
198
215
213
224
137
225
219
267
231
191
248
194
174
148
224
202
247
176
265
187
174
166
198
212
165
137
237
113
239
213
148
209
254
163
205
211
220
271
180
193
180
205
259
235
209
162
203
192
199
234
240
219
215
208
274
271
154
243
264
204
195
160
182
230
171
194
220
264
160
186
197
191
182
230
198
175
187
227
178
161
178
233
215
176
182
219
258
204
204
151
193
204
190
258
203
202
193
156
233
205
206
219
194
188
197
177
221
183
210
234
228
139
163
217
218
159
241
202
233
166
247
204
214
165
167
243
185
223
226
224
224
138
190
168
231
156
233
203
181
230
198
204
153
197
198
207
225
151
149
193
217
242
251
191
218
186
152
139
187
242
223
207
153
192
218
202
178
206
181
192
177
224
187
206
219
210
158
243
205
209
179
170
194
255
243
166
176
205
160
183
198
218
198
208
236
208
165
157
188
198
265
214
200
191
240
197
191
210
197
149
227
175
207
202
198
177
184
181
229
194
252
241
207
217
218
225
212
153
173
108
195
205
242
235
154
173
196
268
198
188
152
204
209
181
205
189
189
164
239
243
191
245
204
186
236
203
210
192
218
192
197
218
230
228
185
183
219
218
223
152
240
221
211
184
144
214
150
194
166
208
203
166
157
249
158
279
223
205
221
223
237
204
212
196
223
209
187
211
182
230
221
123
172
216
166
185
176
244
227
203
229
225
150
201
248
154
215
180
195
230
200
202
231
199
182
190
270
194
224
241
173
193
219
213
195
144
194
247
150
211
207
247
135
182
205
212
163
197
256
126
232
193
176
182
194
212
199
225
183
186
214
237
220
264
181
259
210
140
254
181
186
138
155
176
170
195
177
162
189
273
234
212
224
185
141
205
195
196
162
150
229
205
180
210
184
199
156
217
189
235
248
224
209
215
207
198
129
208
155
199
214
206
195
122
197
245
150
231
198
202
214
207
172
198
216
147
138
198
146
227
218
200
229
173
210
238
190
252
154
189
272
129
235
226
138
150
207
224
220
155
213
236
239
221
194
191
200
219
200
111
192
185
210
187
230
234
141
191
151
201
174
205
228
203
184
212
256
238
146
187
189
213
216
210
160
180
207
256
215
219
205
173
160
155
176
193
210
164
246
232
228
173
184
197
206
169
179
191
207
140
205
215
253
201
169
264
197
194
233
231
193
193
195
243
200
200
226
160
200
253
168
170
137
174
205
167
165
177
216
215
217
122
176
177
173
153
190
237
165
120
136
200
229
208
187
101
196
189
175
214
235
163
246
220
292
217
240
241
181
137
197
218
233
274
212
149
156
246
249
136
223
259
269
205
201
192
171
141
156
194
241
215
195
186
295
178
206
230
114
201
215
197
198
231
215
149
221
192
176
241
231
194
203
123
236
179
110
227
204
185
174
161
219
196
123
214
186
190
168
219
171
178
217
257
256
196
237
203
159
196
198
250
153
228
209
252
214
206
208
113
227
256
223
219
198
252
207
177
215
176
217
208
207
238
169
173
203
229
257
223
140
155
234
169
235
203
190
198
164
219
198
254
220
205
182
154
192
165
154
222
204
211
207
213
199
203
247
234
230
116
187
263
120
184
149
242
196
192
201
212
212
205
215
199
142
225
178
188
256
192
205
212
205
196
206
164
194
175
145
220
172
134
224
237
223
202
168
214
235
219
267
259
218
193
187
233
191
176
169
231
177
192
197
194
276
202
208
260
207
177
224
220
187
268
207
206
192
240
208
206
206
190
211
227
221
187
169
233
143
246
193
273
188
202
238
170
235
218
196
185
198
205
119
196
237
241
164
238
207
156
210
259
162
249
184
187
213
212
182
245
249
204
219
201
205
196
192
208
215
201
197
212
217
197
181
256
208
211
196
179
198
169
208
232
212
235
177
172
216
221
183
256
204
212
183
235
194
191
204
167
220
193
196
177
220
205
238
213
229
161
210
192
237
229
254
225
258
135
245
182
176
231
221
180
197
225
212
183
210
212
189
162
246
158
235
247
138
240
278
199
234
191
260
188
148
223
218
193
177
142
194
243
159
187
167
294
164
206
163
188
211
229
238
220
238
134
140
253
137
243
209
191
209
244
155
208
203
201
191
175
186
219
179
243
163
223
218
200
227
233
187
208
183
226
199
210
191
190
236
215
222
239
202
216
224
195
201
247
135
209
222
173
113
200
227
278
231
181
227
154
202
167
209
171
204
249
166
184
194
123
231
229
189
138
183
155
232
221
203
198
197
182
133
220
168
227
217
182
233
242
178
173
220
216
180
259
202
197
229
159
218
128
224
159
213
199
186
157
202
142
188
169
173
135
175
238
248
166
227
237
230
168
219
226
117
209
218
153
174
237
182
147
158
217
224
159
149
224
250
190
198
175
213
212
179
202
199
196
226
235
213
191
209
246
204
159
203
236
217
190
158
173
193
241
199
268
146
190
186
222
216
198
245
211
208
177
210
286
147
198
190
237
189
152
209
227
190
222
148
187
129
191
283
202
174
156
207
199
211
251
231
211
225
188
200
194
229
183
192
199
274
208
200
214
187
209
222
197
182
233
190
241
226
251
202
213
192
189
180
212
224
231
237
231
200
218
204
202
160
210
248
167
180
231
193
198
219
190
220
173
189
243
232
211
245
216
259
233
196
248
249
187
216
119
227
176
150
245
233
182
207
176
222
147
231
211
167
167
213
176
168
246
289
214
218
170
212
168
178
206
234
202
162
200
194
230
216
221
214
154
235
140
160
148
232
243
193
193
153
189
183
202
172
174
149
174
249
176
153
194
246
205
147
270
208
120
245
274
219
221
187
223
185
159
214
194
158
173
205
176
234
210
231
190
199
165
159
205
227
234
187
248
211
210
228
243
222
191
199
209
240
185
157
219
208
263
207
230
180
231
214
165
137
189
192
244
188
171
240
199
204
253
215
214
155
188
171
251
225
162
216
215
230
181
241
152
193
139
136
240
192
221
168
199
182
193
188
175
205
201
210
176
237
175
214
211
164
207
174
160
227
144
170
175
143
188
239
167
141
187
165
155
196
236
164
132
254
145
252
169
221
240
177
205
243
150
196
276
132
103
231
245
183
247
199
202
196
240
217
131
216
214
205
120
205
225
194
223
253
232
190
217
209
228
187
178
206
143
147
182
149
200
257
230
222
237
269
230
194
233
225
160
199
243
208
253
113
218
213
223
151
245
214
191
197
178
153
233
180
217
206
161
242
178
162
150
214
200
197
191
271
237
202
229
163
179
207
131
103
232
167
122
190
211
183
214
181
132
226
206
175
194
216
177
239
159
227
184
154
234
252
156
256
228
182
193
160
238
256
196
200
189
205
223
231
195
151
190
259
174
255
181
114
224
220
152
160
192
173
213
184
222
195
247
151
201
253
178
132
200
215
251
194
186
219
231
203
184
179
220
205
261
171
206
188
251
176
258
192
222
215
217
203
146
163
202
152
137
178
222
123
213
151
184
220
199
157
224
116
175
154
197
200
241
156
232
248
240
195
206
162
239
227
208
154
256
159
170
195
180
199
222
140
222
189
197
231
170
161
187
216
186
218
231
225
190
270
218
205
242
174
176
133
225
141
193
207
221
140
199
197
191
222
207
187
243
228
153
176
177
231
209
261
253
210
230
185
175
222
140
188
251
227
175
203
203
177
254
179
247
226
164
206
214
170
259
235
151
119
224
235
197
246
207
166
167
226
216
203
277
199
215
187
231
191
173
244
222
255
213
226
180
211
176
186
203
248
114
212
172
218
194
246
202
195
200
170
192
213
173
199
173
280
226
224
189
186
211
172
160
215
185
240
120
205
218
243
234
166
221
188
193
205
207
213
257
153
201
174
201
166
201
227
191
215
225
188
231
204
215
146
185
213
207
208
206
217
204
155
252
180
172
186
218
215
196
240
184
135
189
225
240
261
197
218
222
146
175
251
224
188
214
143
178
212
257
209
192
174
225
222
253
154
209
170
184
281
203
172
262
271
139
234
176
258
215
199
155
228
133
224
156
232
281
193
209
205
162
185
202
249
161
181
198
234
181
173
216
211
154
165
241
184
141
217
224
158
174
237
197
196
248
220
198
156
171
140
225
222
195
232
217
271
152
251
199
209
170
182
181
230
188
212
214
160
171
192
246
169
239
199
201
224
176
282
203
229
169
167
243
153
184
184
263
189
204
142
156
232
176
168
185
200
264
126
197
232
131
141
230
203
206
223
252
176
127
97
231
202
215
183
165
142
228
264
235
170
217
207
154
155
152
209
251
230
113
234
242
186
216
217
159
150
204
225
216
275
207
261
242
156
186
251
236
200
203
217
161
214
214
213
232
219
215
220
251
195
129
207
177
202
187
191
189
233
214
216
226
248
181
168
260
217
223
188
191
106
145
221
250
244
237
260
117
185
150
167
222
191
227
257
202
164
139
194
202
241
195
171
179
194
189
180
183
186
159
198
188
216
151
119
234
205
232
245
242
239
221
230
259
144
212
202
198
195
215
154
262
210
191
223
177
149
189
227
227
177
208
157
234
209
240
180
200
225
240
216
197
213
230
215
188
254
147
218
204
199
131
173
211
254
157
171
260
266
215
168
206
184
251
123
165
248
208
191
261
176
164
132
172
212
235
232
182
215
211
215
241
179
252
263
195
207
203
218
265
189
196
184
206
177
221
219
163
184
178
212
195
242
251
222
217
189
222
231
184
124
221
212
213
224
234
177
173
204
149
196
187
144
227
204
200
181
224
213
213
205
224
267
224
189
202
222
150
200
220
207
219
170
160
151
199
211
240
194
193
148
216
250
182
185
192
252
236
113
173
201
237
283
181
169
236
227
171
178
217
229
161
227
150
205
218
200
147
213
204
218
193
226
241
254
218
190
240
212
219
144
192
153
160
166
183
195
208
236
210
214
192
125
256
130
193
212
170
231
306
233
208
164
227
189
197
178
193
157
240
210
192
240
171
147
146
193
211
197
208
172
178
204
187
176
184
242
218
188
169
242
226
185
246
180
283
236
175
199
188
176
227
179
233
153
211
193
202
171
227
141
237
229
231
199
231
237
219
174
235
177
188
160
168
234
194
190
227
210
211
144
193
234
181
151
161
217
184
182
169
257
244
144
206
185
236
174
239
213
132
229
180
170
186
211
191
203
112
166
213
252
224
182
210
205
159
219
197
254
220
204
207
179
181
173
245
208
213
191
221
203
183
228
184
204
191
209
208
272
188
206
130
184
211
220
241
224
218
247
220
209
209
204
204
193
150
217
207
184
158
241
132
140
190
213
220
181
228
233
226
240
153
201
222
185
230
255
215
200
212
233
158
281
177
224
225
222
176
163
181
252
169
161
257
171
145
147
165
200
193
208
241
227
209
196
237
169
184
218
211
223
217
218
191
186
263
205
150
215
211
203
187
229
207
211
187
182
140
206
228
202
215
222
201
206
235
170
241
156
181
215
176
211
157
186
218
235
220
211
232
211
175
198
188
220
194
171
194
211
212
218
223
153
101
230
193
224
185
178
190
216
232
195
194
224
244
196
228
191
227
165
165
173
170
238
261
149
252
186
217
189
209
195
211
164
129
178
138
230
219
250
129
240
199
189
241
219
146
196
192
192
236
171
189
154
215
184
190
232
160
143
237
220
236
221
191
173
217
179
225
248
136
194
261
259
110
191
165
216
197
192
138
157
177
230
208
194
184
190
200
205
175
155
148
233
217
203
234
218
200
233
222
243
189
207
166
209
213
244
212
215
201
252
180
200
217
201
185
186
159
210
219
178
198
197
157
204
210
140
128
201
184
233
192
107
186
169
199
217
260
172
181
171
227
249
256
234
159
241
233
178
206
202
232
205
203
272
184
228
180
201
185
151
226
197
153
186
210
184
176
232
163
196
229
172
223
174
174
172
178
209
187
213
176
186
231
216
179
192
242
173
277
229
178
214
181
176
193
200
198
239
205
174
208
169
180
232
185
223
233
194
216
139
183
155
198
150
183
174
167
179
149
180
207
225
170
175
204
171
191
160
241
232
167
234
258
184
210
163
192
201
226
182
166
238
158
158
222
167
189
180
256
217
198
111
179
172
167
220
139
268
234
182
174
231
221
214
204
194
215
262
213
168
148
256
147
185
220
254
203
144
201
201
258
178
195
221
236
158
175
154
211
224
225
201
194
157
203
233
224
183
188
206
209
122
210
276
258
183
189
184
241
259
225
223
194
225
176
220
174
175
242
192
161
194
245
199
148
220
214
182
221
212
150
184
200
164
194
230
203
213
241
206
184
209
213
223
233
142
191
134
234
212
195
184
182
234
228
253
206
204
176
245
259
196
236
116
223
206
248
148
160
184
161
232
207
269
209
186
207
198
264
227
204
244
197
195
160
214
276
168
197
209
185
133
207
211
232
227
212
216
184
189
166
195
193
236
190
273
169
200
181
121
200
112
137
181
147
173
195
205
236
207
218
226
160
257
205
236
203
116
222
207
167
201
200
200
172
209
201
209
215
167
196
263
260
171
208
194
152
214
186
211
196
184
243
198
199
207
191
182
216
247
247
144
204
192
154
116
199
231
236
243
145
163
167
210
158
218
172
186
199
180
225
190
161
169
208
255
194
181
256
241
157
176
182
221
182
152
150
157
197
199
172
226
265
221
222
230
191
241
186
262
194
194
205
213
190
190
210
231
232
171
210
175
231
233
175
167
194
237
222
251
241
232
204
166
232
216
255
192
175
174
236
203
201
202
180
182
165
183
171
152
243
233
224
179
169
217
210
208
239
217
214
202
213
212
181
195
194
164
228
188
183
234
197
196
236
146
194
253
218
126
293
163
214
234
131
143
196
222
153
145
225
160
215
184
223
214
271
145
237
158
206
205
139
261
150
197
144
253
173
202
209
217
232
209
234
215
218
160
189
265
204
95
206
157
202
155
259
178
233
197
199
180
158
228
215
172
157
243
247
263
186
187
200
268
108
260
187
185
155
205
206
238
169
222
211
253
218
190
229
185
156
259
192
195
177
262
130
218
130
260
163
224
175
195
215
205
209
253
240
229
243
149
269
216
195
141
256
228
192
155
180
205
143
247
177
188
137
193
184
195
215
254
182
150
223
176
196
201
234
216
150
256
199
182
223
174
197
203
233
212
204
220
181
222
229
181
148
223
130
190
191
151
206
206
231
193
237
174
197
261
169
180
233
180
204
186
232
158
183
222
198
188
175
211
183
239
190
178
192
185
177
214
225
191
156
216
202
189
206
266
181
214
182
193
192
202
205
189
179
191
133
178
221
162
276
221
213
146
240
138
134
269
207
204
225
193
206
233
238
208
156
225
185
207
186
199
165
226
197
240
197
152
179
200
150
233
182
168
164
163
239
217
192
200
205
262
218
208
203
225
141
172
251
233
232
208
237
256
218
150
147
211
200
158
191
212
264
155
247
181
181
235
244
164
201
173
165
153
174
197
174
235
173
168
191
218
188
177
190
175
182
165
203
193
201
183
192
128
192
230
243
204
119
289
257
176
199
185
146
206
243
162
188
209
237
182
242
224
177
195
198
217
219
223
234
238
160
150
244
238
222
189
220
190
159
189
192
211
220
235
211
218
185
186
197
198
243
205
218
156
159
216
234
183
267
236
206
188
225
191
239
203
195
138
119
198
176
163
72
176
196
237
144
191
178
224
179
212
213
125
220
222
155
215
186
189
125
261
241
230
200
223
213
172
197
186
162
185
179
180
114
161
211
243
251
150
165
188
208
213
254
233
218
184
144
215
200
182
231
156
202
200
172
189
199
222
236
185
223
228
205
122
229
185
175
207
167
177
253
227
131
202
232
174
241
213
242
140
224
223
214
216
188
226
186
234
161
235
224
158
195
222
188
233
197
215
208
195
257
186
193
196
205
198
200
258
213
171
194
200
235
154
218
193
185
188
156
227
163
223
186
200
213
219
213
155
183
211
176
189
185
208
186
169
181
188
280
212
158
272
162
134
235
221
183
213
218
217
216
219
261
227
201
198
230
241
198
251
205
192
192
216
186
256
187
176
166
154
200
137
278
235
158
158
184
157
163
226
218
207
220
195
248
199
202
183
248
222
189
210
243
236
189
250
195
219
203
185
206
223
193
213
140
194
198
183
206
175
232
182
210
203
198
181
223
154
230
211
229
181
214
171
162
232
220
230
168
163
242
229
166
191
205
206
170
191
133
218
224
233
260
137
161
190
243
195
231
201
196
174
165
217
257
216
208
200
204
212
240
182
231
181
175
183
139
190
215
223
165
222
259
183
226
248
197
191
218
191
219
195
225
221
184
145
308
230
178
199
185
240
171
258
212
172
148
261
229
201
201
192
214
180
212
212
168
205
246
197
259
167
223
180
218
210
211
180
211
168
136
221
166
188
163
234
186
224
190
237
233
200
165
247
236
189
187
213
172
167
222
215
196
166
191
173
272
167
178
167
217
199
244
209
164
212
188
138
151
188
219
242
233
244
181
193
190
242
252
216
239
238
258
200
150
152
195
160
233
172
160
165
211
190
163
141
258
234
161
179
224
204
215
246
210
211
210
209
227
151
129
266
259
236
223
245
173
117
206
218
196
235
226
200
239
243
203
250
202
220
272
210
177
191
174
196
164
228
194
213
180
153
193
204
164
202
190
193
215
191
172
195
191
180
204
178
190
203
163
229
198
192
257
268
142
142
166
196
204
239
210
250
193
233
239
221
183
211
193
215
160
134
245
239
250
172
226
231
247
202
201
175
158
251
239
179
225
156
121
115
217
219
201
211
210
207
212
168
202
172
138
184
220
187
197
169
218
198
213
201
154
184
215
168
194
206
105
214
183
234
223
231
235
188
193
188
171
212
191
210
206
213
207
196
249
206
211
206
212
212
210
221
171
195
166
236
180
201
220
167
178
170
209
231
189
257
203
209
143
206
210
238
203
202
220
184
196
115
210
211
239
194
217
187
208
222
220
220
215
136
187
213
169
186
217
201
171
151
214
234
254
249
209
188
225
187
182
163
235
232
260
251
246
236
180
195
220
156
189
261
167
180
202
218
233
238
210
207
212
143
133
203
138
225
157
227
231
245
139
211
160
183
187
205
217
191
199
245
218
173
237
224
209
160
192
178
239
233
236
188
205
190
229
194
211
176
206
225
222
218
160
222
157
185
198
193
185
228
234
194
167
242
193
144
218
162
238
253
163
211
247
137
221
209
159
211
237
201
201
200
192
196
178
232
230
76
191
239
150
159
150
159
231
160
168
180
242
178
188
185
212
247
234
231
199
200
232
176
190
256
251
219
197
217
230
184
88
193
239
199
217
198
234
150
191
139
222
155
197
206
169
167
246
199
189
167
120
150
209
193
206
258
160
219
196
159
193
196
181
154
218
253
146
221
215
235
258
180
217
204
157
207
209
225
182
248
189
223
113
233
170
187
258
199
151
225
226
186
182
123
177
254
243
221
193
215
202
210
202
200
188
199
204
217
208
218
206
195
231
221
150
115
182
195
198
186
176
156
176
215
177
237
178
213
205
193
208
249
244
139
174
191
125
250
232
194
255
199
160
148
183
203
184
205
204
150
179
215
210
207
171
196
200
152
230
130
156
246
150
160
267
168
163
171
190
250
211
231
185
196
191
198
166
259
197
159
200
154
207
216
220
191
187
213
186
189
169
153
249
202
232
205
238
237
152
159
219
223
190
249
200
219
211
157
171
206
252
242
227
205
233
226
256
193
158
171
157
183
212
210
184
228
200
213
180
192
223
154
204
230
203
208
251
215
210
131
166
170
224
215
177
179
198
206
170
241
221
215
214
214
176
229
174
198
211
132
228
229
246
167
230
187
232
162
207
179
140
195
167
257
184
241
234
233
184
191
240
241
127
190
123
173
194
119
163
244
206
195
225
174
209
230
202
192
228
247
230
144
176
188
213
221
130
186
192
237
222
224
201
177
202
243
195
202
211
262
181
190
187
187
176
219
173
150
156
163
191
137
271
226
216
236
220
189
250
157
162
204
178
183
241
189
203
132
200
202
197
248
234
190
236
198
180
152
217
174
171
181
221
245
243
169
192
228
153
159
197
189
212
184
197
222
217
208
194
181
194
183
240
159
207
177
251
195
225
187
127
172
239
190
225
224
219
216
190
175
228
212
230
200
246
199
227
216
183
228
247
224
212
192
214
232
165
200
222
214
227
228
199
175
208
152
201
165
176
227
246
240
103
229
217
227
205
220
199
223
187
210
177
204
157
174
299
155
225
182
200
179
232
190
191
198
222
194
207
226
155
160
213
252
212
220
251
238
215
210
166
212
195
208
274
169
250
232
166
226
170
178
216
163
265
215
194
203
247
238
198
240
215
218
153
108
90
232
252
150
220
197
230
195
229
230
175
232
213
208
191
161
232
208
194
159
205
180
171
212
235
213
226
146
161
225
185
231
271
159
249
164
173
196
238
191
205
213
136
182
220
181
190
203
294
233
211
178
148
159
235
264
201
230
162
193
199
192
197
221
225
203
234
171
159
174
183
240
156
242
227
170
173
218
197
159
227
233
190
228
200
179
218
243
213
237
221
147
156
160
203
200
178
155
201
177
196
216
204
252
208
191
200
233
271
233
251
204
248
195
162
184
221
157
236
200
191
229
142
216
245
202
117
160
201
144
189
236
126
247
160
184
196
248
199
197
174
149
202
209
223
171
146
247
183
193
148
165
182
265
231
173
215
210
232
220
181
221
244
217
171
251
214
160
217
131
179
191
195
246
181
258
196
182
205
174
238
158
187
244
209
229
220
189
254
236
182
243
230
243
197
196
256
166
201
133
244
187
208
233
153
139
198
191
162
204
200
187
228
249
258
169
201
151
234
154
208
207
192
190
161
179
186
237
184
184
163
224
203
232
211
220
184
187
226
156
216
239
271
211
179
242
191
153
188
183
230
187
237
216
159
246
223
181
228
158
160
209
210
115
183
220
203
173
205
252
147
192
237
137
153
236
177
195
201
194
174
196
186
214
245
201
217
215
237
202
220
167
232
198
200
211
237
138
158
184
221
233
171
195
261
176
154
185
196
244
204
194
156
203
163
169
249
121
177
216
258
220
215
160
175
195
215
214
185
158
186
272
195
106
177
228
137
225
220
136
199
181
210
202
178
160
127
195
206
216
198
185
255
209
186
114
234
165
231
173
201
185
187
240
175
208
209
215
160
211
203
229
174
218
187
180
218
206
229
165
229
212
198
229
155
254
214
195
159
224
228
221
246
189
224
205
197
186
216
176
223
188
162
242
234
204
193
216
201
110
178
202
155
183
199
205
190
233
169
269
212
155
197
204
203
204
192
197
163
202
200
210
227
168
193
85
257
180
220
185
190
189
194
269
238
178
184
173
221
204
223
148
172
197
284
250
138
228
187
222
237
233
224
193
205
230
179
220
212
217
198
198
228
224
206
156
188
187
172
257
180
224
166
165
194
221
258
195
165
168
161
274
232
140
182
284
171
166
249
235
184
177
178
221
252
208
189
166
133
168
185
206
196
188
201
193
219
230
235
199
182
216
157
273
150
158
150
172
270
213
213
193
142
216
172
219
218
160
203
226
221
153
213
154
184
199
254
161
204
232
189
229
181
216
234
130
233
179
226
246
205
178
241
211
220
194
179
246
165
170
201
187
188
190
202
159
178
235
258
199
173
187
141
135
184
197
212
173
213
145
206
199
226
206
231
192
220
211
244
140
204
209
208
147
226
239
164
161
196
187
236
205
113
160
169
217
221
196
139
138
201
214
189
185
207
180
184
176
204
249
197
194
197
225
274
187
191
188
202
158
170
169
177
175
196
166
228
145
251
248
172
195
184
198
193
248
192
181
176
216
182
199
237
159
135
204
239
173
228
150
228
224
226
140
204
214
176
221
148
214
219
253
143
240
161
190
233
183
215
208
218
141
188
182
186
207
147
178
163
163
189
229
211
185
189
174
200
210
193
189
267
204
212
166
221
159
176
231
200
163
255
201
182
231
225
175
234
171
166
172
94
218
141
198
147
242
190
142
251
168
172
246
159
202
208
121
191
220
192
227
185
237
195
217
142
256
134
219
171
238
210
144
176
252
185
247
170
208
226
149
205
238
183
196
185
162
188
162
147
160
189
235
161
206
221
215
199
186
172
207
226
154
199
201
146
160
231
240
207
266
214
200
262
231
213
186
238
235
283
175
158
152
270
243
218
229
207
158
240
198
231
195
132
201
230
245
162
199
250
216
239
193
219
238
192
232
191
246
261
192
243
221
175
175
199
153
257
166
144
228
210
157
185
136
245
161
196
252
194
223
241
181
263
200
217
189
235
181
235
170
161
183
188
245
161
204
248
187
149
223
174
196
196
166
190
238
213
195
166
183
212
168
216
273
202
274
183
219
158
150
198
165
227
215
217
202
123
198
213
228
126
188
160
218
171
132
162
210
190
241
192
186
169
163
227
183
199
236
214
208
153
157
238
193
158
155
202
242
214
188
179
192
164
234
242
163
200
140
235
168
243
211
164
199
176
166
166
169
230
182
212
207
176
218
122
228
169
212
200
149
147
179
170
217
209
229
235
189
228
207
202
219
207
208
208
215
172
219
227
202
154
134
197
175
237
154
151
205
190
166
247
168
138
191
213
220
180
198
218
207
152
224
177
214
253
181
198
127
212
153
195
247
213
206
192
243
194
227
165
216
207
106
137
228
182
195
196
256
207
161
209
203
185
214
200
224
221
173
166
219
154
229
220
192
183
140
201
224
199
223
230
212
216
131
238
236
234
217
206
218
165
194
250
211
259
221
164
209
217
189
264
183
200
207
172
232
259
264
224
107
154
199
198
206
230
203
164
186
253
191
242
247
227
157
200
216
200
163
290
186
165
161
170
225
199
230
183
203
152
208
180
201
167
257
230
169
264
235
221
131
123
170
152
213
212
163
191
270
208
206
213
209
168
238
184
217
171
155
233
194
208
221
217
221
122
246
226
213
215
225
164
142
226
185
197
229
212
172
207
245
232
194
228
221
133
212
186
216
236
237
180
229
198
203
232
221
159
175
221
223
160
159
203
202
181
215
223
217
219
208
214
253
233
163
141
238
203
199
182
183
187
147
235
238
208
232
238
195
203
219
221
251
222
136
152
185
209
224
165
236
207
140
223
178
239
210
174
207
196
203
224
209
227
225
146
213
183
207
175
163
110
145
226
172
183
186
232
215
149
166
243
188
140
142
214
233
214
234
178
153
214
171
182
264
136
204
176
223
251
204
177
152
190
219
200
278
222
213
239
224
195
139
219
196
203
220
147
226
188
226
201
168
165
189
240
229
243
143
198
200
230
176
147
222
209
187
214
189
222
220
210
189
169
233
222
172
196
198
248
226
192
233
183
235
219
221
227
218
133
174
192
214
172
175
196
244
241
155
233
212
143
195
211
226
211
191
231
159
207
215
123
185
227
272
195
201
199
261
220
179
249
210
150
143
183
243
214
183
150
183
235
256
212
188
200
219
158
207
234
255
149
207
206
239
216
243
255
228
165
171
156
190
222
233
115
208
146
197
202
236
254
203
194
228
188
214
190
244
197
217
215
120
243
149
140
217
193
219
148
129
116
204
245
186
194
151
156
248
176
210
206
142
208
183
155
203
246
192
207
236
201
157
206
186
219
212
191
163
212
249
207
164
212
231
209
216
223
116
213
174
170
172
199
204
157
259
189
197
230
231
155
177
160
224
216
244
244
250
172
214
233
218
173
240
221
140
239
225
216
172
225
225
178
216
275
197
178
199
248
203
208
192
188
207
200
215
210
199
201
219
196
216
250
217
165
180
172
170
197
219
190
186
188
183
182
258
179
213
186
105
205
208
170
287
188
214
235
180
248
196
242
228
200
155
164
188
196
229
169
212
209
220
168
214
157
236
228
173
161
205
197
191
238
196
205
209
215
223
243
246
216
190
202
210
276
260
233
220
220
173
153
239
202
291
208
159
243
154
238
165
228
213
237
237
239
245
177
191
187
99
180
174
191
198
150
173
246
229
227
204
128
163
196
175
217
186
232
157
248
164
194
166
238
162
157
238
203
161
179
216
189
261
223
138
196
221
158
174
181
165
213
227
164
191
152
230
160
178
241
156
221
109
172
217
174
236
244
211
179
263
197
172
215
208
189
195
217
222
207
154
177
198
255
226
251
156
200
191
149
147
170
166
186
253
230
193
203
191
180
171
157
232
167
249
210
116
192
192
251
181
177
179
158
146
223
232
212
186
170
169
188
226
230
239
205
199
160
176
246
234
216
232
220
250
187
192
107
194
168
224
220
161
193
225
243
202
118
205
203
216
203
219
238
162
226
171
193
176
199
182
249
160
197
179
212
252
182
182
158
211
230
264
228
162
211
218
176
212
157
241
248
216
205
180
218
188
165
159
245
128
170
169
193
214
200
210
178
222
198
164
152
150
236
241
219
217
189
244
169
259
204
271
262
254
161
178
203
183
215
255
259
225
207
179
197
242
246
228
228
230
219
174
198
216
167
215
217
192
227
177
235
221
162
130
194
218
219
230
183
219
231
209
201
152
161
154
226
217
177
225
222
125
178
155
175
224
171
119
186
217
158
202
165
208
163
224
131
205
165
204
236
184
243
164
129
196
150
254
185
191
213
222
223
203
196
205
222
152
200
164
193
222
209
221
203
157
140
250
245
143
171
161
205
135
173
212
209
256
218
232
230
192
210
167
267
136
220
160
192
236
111
246
218
184
152
206
223
234
171
214
185
208
210
197
209
187
197
207
179
198
183
200
220
226
188
200
239
181
257
251
187
221
101
222
202
190
247
211
154
190
202
193
208
221
216
235
158
183
197
224
192
143
173
182
250
223
184
204
200
204
172
192
207
273
182
189
196
220
221
207
97
148
172
164
158
219
241
158
206
169
207
240
193
196
212
181
206
222
226
256
243
271
204
232
139
185
259
173
136
193
159
189
173
244
176
210
155
169
149
256
176
165
174
174
191
234
244
201
154
244
238
228
207
205
177
189
177
199
172
195
211
233
151
136
227
192
166
165
262
224
182
204
161
215
157
188
186
169
171
169
147
156
138
246
208
151
181
215
214
171
202
249
237
211
215
186
173
213
129
145
223
150
149
116
264
214
194
140
190
225
111
177
249
186
169
140
212
245
219
208
172
221
194
253
225
210
253
222
231
195
200
188
147
194
270
273
172
246
207
140
124
219
162
193
165
153
173
248
158
207
166
182
192
197
194
183
240
214
228
214
183
133
191
189
158
118
233
228
164
216
199
203
222
170
201
186
158
169
128
157
181
175
210
209
244
204
235
153
179
157
195
211
165
105
200
202
167
165
186
226
234
154
175
223
195
136
157
208
204
222
210
211
204
142
195
233
218
130
227
149
243
187
203
177
230
151
180
197
156
210
217
222
182
222
106
233
219
226
141
201
157
189
205
227
285
228
156
241
204
228
231
236
195
174
192
210
204
209
154
222
264
265
166
176
205
233
182
174
170
116
191
221
225
133
176
190
167
234
253
224
145
187
227
165
205
212
195
175
155
132
170
205
229
231
267
258
127
136
152
229
180
204
196
225
243
186
169
173
161
230
179
176
201
116
220
139
153
225
169
190
169
256
234
225
254
192
207
171
136
224
198
144
130
222
185
302
188
160
173
233
207
221
244
165
237
157
277
224
154
242
156
187
228
175
244
268
177
185
215
145
181
162
225
154
234
165
171
211
208
233
181
231
263
208
227
231
230
164
206
141
180
204
170
209
185
200
197
268
212
144
171
176
271
142
176
198
226
158
201
231
174
220
198
201
172
267
129
149
168
181
199
160
257
202
251
191
220
227
186
210
207
159
191
256
226
198
209
168
175
240
179
169
124
169
195
199
230
203
211
225
211
223
124
205
222
231
119
167
200
167
201
217
246
194
177
211
163
236
201
144
207
192
243
181
95
226
234
221
220
177
153
127
201
151
169
193
229
194
206
116
243
177
179
201
194
213
198
234
195
164
185
247
233
227
165
142
156
232
257
200
235
205
187
183
214
249
150
197
169
198
268
165
127
267
214
217
203
183
205
226
231
265
170
256
186
213
227
151
164
218
231
252
220
177
170
179
201
171
186
231
232
169
191
144
203
230
212
253
228
212
239
226
209
203
208
196
193
234
165
263
212
197
158
143
203
198
147
151
182
213
216
224
254
182
265
265
177
181
219
232
212
249
155
164
211
143
218
151
197
144
224
173
203
209
154
196
163
144
227
174
222
232
229
235
194
227
194
174
162
253
188
207
161
203
175
254
209
210
205
232
204
189
213
204
193
252
141
151
249
204
176
173
190
234
204
246
209
166
217
233
209
183
196
165
268
186
213
188
197
201
240
162
171
203
208
200
232
161
160
179
189
236
207
233
181
189
239
193
234
210
220
200
169
165
133
218
159
215
242
137
195
159
188
184
246
189
251
168
163
194
184
198
193
168
153
197
202
243
226
201
173
160
214
192
198
162
147
245
202
215
223
243
218
215
218
226
190
186
202
255
214
196
128
217
213
171
163
216
179
197
200
175
171
239
219
210
177
224
173
203
218
221
203
165
230
234
190
217
183
172
170
206
230
218
227
224
248
253
199
214
155
157
225
183
225
186
157
177
166
239
235
158
277
220
179
207
117
120
243
207
219
176
191
212
156
162
208
217
245
145
205
253
222
196
217
182
202
234
181
169
193
181
266
176
137
193
205
178
221
173
243
230
233
244
193
218
236
150
202
149
213
191
253
248
193
222
194
130
164
175
167
163
189
188
211
208
158
228
220
178
222
194
204
223
180
106
193
259
148
145
208
238
258
183
221
219
194
163
195
144
204
155
133
188
202
153
192
165
226
198
207
206
183
125
176
202
236
234
245
221
213
206
195
156
143
221
204
259
157
215
160
251
186
205
187
261
239
221
180
216
195
174
160
154
237
241
222
120
203
216
220
218
248
166
154
177
221
249
134
133
178
207
201
204
249
182
221
200
223
231
189
185
252
154
228
192
210
216
203
178
155
221
224
233
178
196
167
216
206
182
218
195
146
227
170
225
196
237
255
215
252
205
198
227
241
243
228
227
245
245
210
199
186
205
249
176
214
203
220
161
230
255
175
269
231
188
163
176
200
252
146
222
210
244
176
173
215
125
220
185
214
216
194
212
178
196
193
199
160
155
222
198
199
200
216
258
147
232
154
204
209
168
197
167
177
203
152
271
180
165
218
176
186
155
179
179
153
228
199
209
205
244
218
225
154
199
160
206
249
171
213
220
200
207
255
236
251
256
189
218
175
216
178
193
244
194
152
202
206
135
229
185
217
173
226
234
226
210
219
167
228
132
248
235
277
189
184
244
224
220
113
193
234
213
242
236
259
163
177
168
182
118
190
216
250
192
189
235
170
140
219
180
212
223
242
157
176
177
168
211
225
197
199
250
190
253
175
182
249
166
214
241
205
193
197
198
145
223
235
237
238
209
177
207
242
151
205
199
190
214
204
132
215
218
208
147
213
197
214
249
209
145
229
189
261
240
224
174
139
222
213
139
171
217
206
250
238
211
218
214
204
279
210
206
159
244
226
175
209
211
147
235
219
236
211
207
172
205
171
178
232
147
215
159
135
222
229
229
212
148
192
186
219
229
265
210
182
206
215
238
221
258
207
208
185
156
171
216
240
214
211
233
181
175
182
214
213
226
158
173
159
135
206
188
203
215
172
161
182
211
186
235
272
188
193
201
231
176
229
173
244
141
170
190
266
192
201
183
178
255
162
203
165
213
215
209
230
183
223
191
232
222
226
223
111
228
136
268
197
160
174
177
204
150
203
181
124
129
233
209
167
187
231
170
236
250
206
201
202
198
128
172
147
228
269
245
286
135
188
278
195
228
201
159
195
192
170
228
135
217
223
206
191
196
224
158
222
191
211
236
254
226
197
218
212
168
178
140
234
163
171
241
178
158
205
186
212
165
232
230
174
211
226
207
182
217
164
238
214
238
229
183
219
183
227
185
166
254
174
207
183
166
222
233
208
230
208
244
245
197
193
259
258
182
242
267
227
165
145
188
212
217
161
161
185
196
154
222
213
136
257
247
178
229
239
232
242
186
223
205
203
238
246
174
181
196
221
267
224
232
139
256
245
205
205
170
184
212
157
185
185
174
279
183
160
161
216
223
139
149
152
185
201
183
232
242
161
161
250
178
215
150
248
218
207
208
178
195
186
229
185
168
204
137
190
236
163
126
201
206
267
212
237
218
226
128
188
232
183
164
182
215
228
140
217
184
224
209
253
264
220
165
200
219
220
204
205
221
181
196
128
182
210
142
214
215
164
167
200
229
199
193
137
230
148
204
173
230
168
143
166
168
226
189
185
211
216
161
193
167
160
152
227
186
233
226
212
211
204
168
179
247
235
217
217
159
221
226
192
229
166
203
193
277
262
170
147
231
204
188
118
165
229
208
178
200
265
237
204
195
194
170
237
251
278
203
158
170
167
252
155
219
234
212
253
254
299
207
156
183
212
126
134
252
225
230
242
146
172
192
181
239
175
192
226
183
197
209
227
163
171
140
196
191
197
230
218
199
221
223
135
147
116
210
259
220
207
216
187
278
211
254
259
196
210
192
185
194
205
203
191
209
152
226
151
203
200
249
194
156
238
220
231
135
216
219
193
232
197
149
286
208
159
163
203
161
209
222
202
232
225
217
98
203
204
234
201
256
214
185
203
164
243
225
177
179
172
249
220
239
226
188
213
199
205
182
246
212
241
201
255
219
252
215
120
154
215
265
265
209
210
167
244
228
190
200
195
245
166
193
171
200
187
250
220
157
196
110
180
230
204
223
166
178
177
194
197
230
226
198
238
195
226
194
148
166
233
189
183
200
263
166
191
289
157
240
226
183
208
190
174
179
186
149
242
211
297
174
171
215
188
203
188
210
246
217
226
215
185
255
188
238
275
167
235
203
201
217
213
168
225
195
194
205
218
179
178
219
182
217
193
191
225
158
243
215
212
196
201
133
216
147
189
152
232
235
213
201
222
182
216
240
214
225
256
204
194
253
234
160
161
174
197
210
181
216
165
230
177
159
224
225
211
248
211
245
230
191
161
187
203
214
185
231
258
234
202
220
213
155
198
224
231
190
194
162
198
194
171
247
216
193
249
224
255
209
160
169
186
201
215
212
208
169
169
146
226
150
245
226
171
157
232
230
228
214
176
181
191
201
163
220
230
108
167
190
238
254
157
218
172
183
219
216
175
176
180
244
174
199
157
232
150
180
182
226
238
239
217
155
233
207
188
197
174
204
238
200
203
177
165
196
173
130
214
190
143
179
221
186
227
172
205
247
249
173
189
218
227
170
160
200
228
201
198
209
186
196
159
218
190
194
213
134
251
166
235
206
210
213
180
230
213
190
146
220
198
123
213
181
200
211
257
163
206
180
187
195
258
157
167
187
153
234
204
202
168
202
216
247
172
220
176
231
238
198
275
185
256
205
247
221
189
180
218
250
161
206
158
128
221
240
146
226
130
197
198
215
200
202
142
214
200
199
164
163
190
203
207
153
255
193
207
127
188
169
222
184
208
146
166
239
277
178
206
214
228
153
217
207
155
135
265
215
169
116
189
186
222
165
235
159
172
226
209
167
133
283
175
209
155
250
231
99
164
158
230
235
234
182
150
233
141
151
234
288
165
210
95
187
223
250
188
279
153
223
135
277
197
181
153
192
140
181
281
199
167
211
233
145
181
205
179
184
181
204
156
102
173
189
167
228
186
206
214
179
177
183
233
199
170
224
215
209
166
172
231
190
230
200
221
206
216
228
298
154
176
249
165
205
204
135
137
282
178
218
195
171
176
209
184
158
211
221
208
148
262
168
212
216
180
184
204
223
221
194
188
138
205
137
249
209
235
224
211
223
177
202
125
140
125
200
180
193
213
204
204
180
147
174
247
199
216
203
142
161
110
132
218
267
206
177
174
247
181
153
222
236
148
184
229
200
226
206
227
271
177
256
179
200
208
207
226
272
156
209
196
219
239
199
149
203
202
227
215
229
198
200
182
229
200
197
97
120
237
172
170
170
123
228
231
147
155
187
226
217
160
203
188
240
183
181
218
196
210
167
171
174
182
174
155
198
128
176
184
231
186
149
198
268
203
202
171
230
254
228
208
196
162
207
192
173
160
246
184
228
228
161
196
203
194
201
236
236
170
157
243
139
196
182
245
200
177
153
242
184
171
199
201
206
204
165
169
182
188
205
198
221
213
247
210
228
200
143
186
237
257
142
230
168
154
188
182
132
213
203
203
176
188
244
211
187
222
215
162
176
228
164
225
214
226
173
174
227
128
217
190
207
208
186
158
213
184
237
209
223
265
203
164
216
166
151
164
193
166
246
186
184
236
199
236
209
228
185
185
195
174
212
158
164
213
213
168
196
220
185
242
213
214
220
156
184
199
203
169
225
205
162
217
260
311
247
182
181
171
169
218
221
219
172
253
186
144
246
255
193
170
217
159
202
162
191
161
175
136
194
186
113
219
249
217
194
211
227
268
182
235
169
215
228
163
210
170
184
236
266
147
218
167
244
233
193
261
230
210
187
141
208
194
210
253
159
209
249
202
162
192
177
154
208
212
136
173
188
192
150
220
161
205
138
182
172
226
253
256
244
170
184
252
213
212
185
185
133
246
241
211
191
226
185
223
224
177
164
201
163
211
265
226
213
205
196
206
163
227
248
230
106
182
173
198
205
206
195
216
237
258
151
148
240
153
225
186
196
209
147
257
324
222
175
232
152
222
192
215
228
226
206
163
197
194
173
206
221
145
163
200
198
166
189
171
249
196
202
225
241
243
176
194
173
185
186
232
174
112
186
159
244
186
256
196
187
145
174
199
165
196
158
188
265
149
203
193
191
240
174
244
224
163
191
197
199
187
155
158
212
180
176
145
222
171
190
164
131
191
216
144
216
195
152
211
242
246
211
183
151
146
193
247
186
222
211
217
176
149
225
193
188
232
193
159
217
237
204
252
214
228
162
227
265
234
169
193
174
223
210
203
214
192
220
202
156
199
185
246
188
235
207
191
199
213
234
239
191
158
224
231
268
265
183
174
239
180
257
256
199
201
201
144
205
166
146
201
170
202
215
184
116
243
122
184
157
160
140
224
120
195
173
206
232
244
211
111
196
215
170
158
183
194
199
150
129
236
166
198
226
223
245
209
203
242
209
188
247
211
160
226
161
232
220
224
195
190
247
243
189
225
245
161
190
180
197
142
202
260
202
270
238
170
154
197
233
179
244
156
231
201
270
196
201
222
155
224
186
206
141
228
202
142
213
179
221
227
209
189
169
136
258
140
198
207
172
211
276
213
254
147
191
164
144
189
191
211
248
248
248
211
179
178
204
230
215
203
208
213
143
220
140
184
208
136
174
195
191
165
196
199
238
215
233
203
183
230
219
201
214
150
254
215
181
163
218
249
214
230
209
199
196
116
210
199
178
131
190
230
281
230
175
181
181
239
209
177
136
151
199
210
176
259
243
201
212
206
164
242
236
190
254
152
142
216
234
249
189
132
163
235
219
225
230
181
201
193
216
122
223
190
202
204
180
187
178
162
152
179
253
197
189
246
174
221
176
244
208
240
196
210
231
153
173
201
212
137
188
176
148
162
277
231
205
241
238
228
166
153
178
193
274
261
189
229
203
114
212
191
197
281
241
195
128
243
234
182
170
179
217
144
143
254
223
253
182
219
205
151
191
245
160
238
233
230
209
140
219
198
242
217
250
212
213
230
270
193
182
205
132
176
207
253
182
178
172
214
217
188
217
239
241
153
203
194
198
248
211
181
173
233
214
204
237
223
224
208
212
286
215
130
236
219
185
196
215
220
176
192
254
207
190
192
245
232
171
248
264
162
231
188
220
205
160
244
190
141
189
154
203
174
216
179
218
236
184
119
186
155
196
165
206
201
220
225
197
165
213
158
185
227
193
183
160
177
244
169
263
197
112
263
202
195
134
230
152
169
122
213
181
214
149
248
209
178
256
224
196
172
162
193
204
243
218
212
218
213
263
171
202
132
146
184
211
221
182
175
178
243
233
232
221
158
227
196
200
211
223
191
209
182
171
202
228
205
218
194
199
174
198
167
232
197
198
176
233
96
190
146
180
211
203
156
220
185
189
201
212
245
154
177
146
206
188
175
201
155
252
202
259
202
194
175
181
164
160
203
153
213
211
207
205
143
237
164
233
257
198
191
199
242
181
217
133
262
199
253
180
221
184
186
193
225
243
214
217
218
205
212
178
182
160
265
202
198
233
142
179
137
154
143
214
217
197
188
159
163
171
218
262
181
240
216
185
207
194
205
232
222
215
220
225
189
188
241
229
166
244
176
216
159
209
248
198
238
189
197
145
184
240
135
175
255
241
189
124
200
236
184
246
183
241
215
225
275
237
229
237
204
181
190
223
271
192
158
209
218
191
198
157
186
203
186
152
122
147
232
188
239
217
212
170
182
157
234
252
209
211
193
167
206
195
125
199
222
203
175
199
205
189
173
202
152
195
254
162
176
164
200
209
256
245
285
207
172
215
198
220
229
200
230
150
159
216
167
215
235
132
220
202
247
211
189
165
196
228
235
236
219
212
183
178
213
179
221
191
197
236
244
181
188
227
234
176
151
192
159
171
246
115
163
235
240
154
170
231
172
231
208
200
172
159
211
207
240
226
160
243
222
190
212
193
204
242
242
196
150
180
161
204
207
194
180
170
259
228
212
146
176
206
151
176
222
187
252
210
266
196
257
189
205
226
238
202
221
228
185
251
212
267
220
211
231
197
240
214
195
171
255
192
179
163
229
249
212
192
177
237
141
238
261
217
243
250
203
241
152
267
136
212
204
259
205
198
236
192
250
212
196
174
181
158
208
228
209
196
231
139
134
138
197
192
232
157
172
201
225
242
212
216
202
202
236
207
203
122
149
221
246
240
208
197
238
163
154
156
159
222
186
233
221
177
198
147
165
199
215
227
188
158
190
184
185
166
180
172
260
259
173
204
207
214
243
175
217
205
198
182
186
183
202
197
226
170
213
196
115
183
173
147
189
175
203
215
179
198
215
178
245
236
194
239
185
243
204
145
207
157
216
163
238
204
164
200
205
219
185
224
185
237
211
222
222
106
249
182
189
186
176
171
214
165
232
200
217
191
216
224
251
207
194
182
253
205
252
221
192
183
221
232
244
190
237
186
180
240
221
225
194
162
203
244
175
192
215
102
157
149
210
229
219
188
220
245
159
256
180
264
181
208
166
215
180
201
178
216
221
228
187
164
207
152
185
192
205
168
174
150
225
187
196
182
235
179
201
213
230
215
250
193
246
187
190
229
164
228
181
161
182
218
195
268
124
212
227
196
209
168
241
237
239
200
205
219
185
170
197
190
205
141
204
153
156
199
174
237
172
216
224
197
188
166
208
237
171
201
215
171
182
214
229
189
225
189
158
203
169
202
177
209
218
125
142
209
259
187
200
200
176
202
187
232
210
229
242
175
159
192
158
193
146
187
174
185
161
195
199
221
228
173
178
202
193
158
232
198
182
240
197
246
239
213
197
177
248
159
169
271
176
194
154
206
206
234
146
219
210
209
192
226
229
168
233
197
184
138
233
236
212
192
236
207
229
220
185
134
138
168
230
219
209
287
192
231
183
144
229
155
201
191
254
240
189
214
273
147
200
216
217
211
231
180
196
217
227
238
213
234
101
233
131
142
199
234
235
202
173
203
192
236
187
202
176
180
204
216
212
227
168
153
163
207
198
203
177
215
212
185
215
167
189
184
186
184
229
175
213
198
130
235
214
202
177
241
182
228
243
200
189
181
259
217
229
241
174
173
193
193
188
170
171
198
274
139
226
190
218
170
242
158
171
252
199
189
230
204
186
182
204
173
188
260
200
168
199
219
172
194
221
210
238
229
200
228
170
171
144
188
231
170
169
215
192
219
225
134
235
233
203
166
159
177
207
140
160
258
215
153
154
178
231
213
132
222
185
136
113
233
224
212
164
183
228
155
167
183
187
264
184
126
187
188
235
259
151
242
213
177
195
239
156
258
176
203
234
204
175
205
228
228
190
247
188
195
233
163
221
247
160
186
163
170
237
218
196
188
180
204
212
162
166
190
235
155
160
251
144
194
164
242
176
220
161
225
227
199
224
190
168
186
203
205
191
188
218
185
198
252
173
240
158
197
248
266
104
164
155
167
217
216
234
191
169
243
211
252
210
105
134
108
168
257
251
267
170
177
210
210
165
239
187
208
179
264
241
175
192
121
194
195
202
199
167
260
207
219
187
191
209
224
112
237
198
243
207
165
213
149
92
239
166
233
152
222
216
212
139
244
206
233
157
254
200
174
187
179
208
177
208
196
201
162
151
213
237
245
220
151
188
137
205
210
240
116
229
220
255
200
145
167
179
140
201
208
228
203
175
189
193
218
171
212
135
206
256
187
193
204
241
206
172
213
212
201
189
196
257
233
214
192
127
203
188
202
209
135
183
226
195
232
173
214
175
220
281
210
181
200
181
254
278
175
175
163
166
193
257
188
209
207
223
220
219
224
200
185
148
176
187
189
172
201
214
209
225
209
172
224
223
196
191
128
120
198
233
160
165
149
197
141
167
229
194
165
237
209
224
182
247
202
146
182
203
235
201
185
168
206
157
167
218
220
247
247
211
207
190
148
207
218
188
220
201
197
273
179
207
232
172
212
199
192
214
177
255
262
183
165
177
117
221
136
148
211
157
213
176
156
216
210
231
215
157
242
196
214
209
196
247
189
208
186
132
160
151
221
192
157
196
199
233
202
194
166
155
220
263
173
257
238
169
182
250
208
171
202
221
221
183
205
176
195
215
202
142
215
145
166
179
239
235
155
245
188
209
255
221
190
164
186
219
249
190
169
187
216
192
238
221
200
225
174
203
253
197
184
209
194
201
191
180
117
206
244
249
207
234
219
177
218
230
170
201
239
223
215
206
209
206
191
227
211
231
254
249
208
192
262
210
225
146
146
130
194
246
138
161
226
203
186
236
200
211
204
286
222
206
177
240
204
175
228
214
218
178
179
190
194
152
228
204
192
185
132
252
238
230
243
182
196
188
149
259
171
177
184
169
197
115
186
195
197
223
170
236
183
188
211
215
208
196
239
178
175
218
160
199
254
183
175
211
197
226
208
202
255
198
234
200
254
115
175
231
222
156
198
114
204
188
203
184
195
228
208
102
224
183
184
247
222
232
231
207
259
125
169
199
218
196
184
226
167
168
184
133
217
204
186
145
218
166
151
176
178
169
250
221
210
206
220
218
224
266
190
160
236
176
220
217
223
170
223
162
234
186
197
165
175
179
142
205
217
239
205
215
235
151
238
214
226
112
200
218
245
207
153
239
176
187
213
174
196
120
191
160
234
214
171
181
197
192
154
185
197
162
223
183
193
213
210
191
198
217
162
213
194
225
239
183
178
262
208
215
219
180
237
253
221
214
217
214
212
170
146
222
191
228
235
160
196
188
193
242
171
249
206
182
191
231
202
194
215
199
167
188
177
170
185
196
162
210
195
262
159
194
173
167
221
150
210
219
240
189
199
256
196
235
217
236
199
295
196
212
202
220
211
151
239
222
193
200
145
179
208
221
176
183
185
223
204
186
205
216
177
199
193
226
239
196
193
226
220
199
240
218
180
218
199
217
195
241
205
271
141
218
237
233
199
231
252
166
169
173
175
226
157
175
224
263
192
172
212
177
219
255
171
190
239
165
207
235
186
214
176
247
213
188
181
208
231
231
188
245
226
200
162
127
201
143
204
255
178
211
189
208
252
193
173
207
207
201
224
174
217
167
145
159
180
196
248
192
209
187
137
185
230
192
199
228
223
152
209
162
166
222
206
151
236
233
251
230
194
181
195
285
223
248
205
192
249
233
186
228
191
237
223
208
170
208
210
250
164
223
150
258
201
152
167
150
169
182
214
204
193
198
244
207
192
170
192
176
247
220
211
207
217
256
222
112
230
247
148
158
187
177
223
199
224
173
249
225
207
140
212
223
198
204
171
170
206
191
168
197
186
154
187
179
250
195
240
242
163
220
165
179
165
240
136
203
241
200
167
168
167
180
238
224
194
130
192
255
234
221
208
288
262
199
233
243
235
166
185
223
194
208
177
177
235
206
206
245
206
200
182
219
234
204
222
209
253
235
214
209
218
194
182
221
234
256
252
208
152
138
210
232
214
229
156
304
128
151
174
203
194
157
246
203
206
209
235
154
256
187
205
254
173
207
194
178
205
221
163
253
172
249
203
226
199
189
210
193
189
200
171
216
182
240
188
234
231
213
198
176
193
178
193
213
154
206
190
128
183
220
169
212
196
195
184
142
267
283
179
173
246
263
187
145
215
246
212
214
247
220
182
206
192
216
221
173
214
213
205
228
165
213
168
236
97
191
165
257
193
165
236
188
142
197
218
171
212
138
202
201
132
127
234
211
233
217
171
192
199
213
207
185
237
272
176
231
219
179
187
159
227
227
205
217
181
219
168
199
184
181
173
238
165
188
171
203
199
207
223
257
250
149
196
257
136
193
147
206
166
264
209
157
248
200
214
212
223
220
173
204
149
165
231
179
217
237
226
257
250
191
168
203
235
204
185
192
195
144
236
239
200
160
217
164
233
195
157
218
186
219
205
213
195
164
183
234
227
214
208
166
230
186
226
186
202
151
131
141
201
218
170
227
224
178
216
245
197
195
239
203
215
153
178
204
231
202
213
241
257
235
209
234
199
169
192
183
258
176
244
240
196
220
245
123
158
238
238
158
165
183
138
188
199
259
181
221
209
213
179
265
211
196
201
149
184
225
185
229
251
212
226
185
206
155
178
205
208
176
167
210
143
229
173
222
224
203
262
259
149
170
234
223
214
207
164
246
200
234
222
218
243
163
193
165
209
175
182
162
208
210
233
242
166
226
205
205
176
211
173
235
152
134
170
239
197
219
172
227
179
203
174
220
217
187
154
180
156
242
162
280
173
243
204
206
193
231
171
207
162
127
210
149
185
175
196
209
204
184
223
185
209
157
206
219
224
255
232
153
171
256
187
245
164
158
190
188
218
213
185
208
154
205
231
168
173
198
235
262
270
166
211
188
227
217
244
207
225
228
212
246
244
239
168
197
253
230
154
214
214
184
230
118
211
224
177
183
234
258
293
199
209
228
246
177
227
159
195
222
213
179
187
249
232
174
227
192
196
217
199
190
194
198
220
182
156
205
232
213
193
191
165
190
187
200
232
173
154
210
211
245
135
183
213
145
287
199
243
196
217
170
223
184
100
192
187
258
209
204
189
269
193
163
195
239
167
240
234
177
126
218
203
234
191
159
182
188
251
223
210
198
232
155
228
185
241
121
198
224
169
215
216
184
163
185
165
171
237
202
189
205
173
224
158
188
217
194
209
242
212
235
205
248
160
215
160
161
190
204
196
148
220
206
228
209
190
237
164
125
247
207
255
219
194
202
213
149
191
218
185
210
184
262
168
192
206
154
207
157
216
183
184
234
149
213
213
257
197
191
228
193
253
232
198
171
203
286
253
219
188
189
181
212
169
169
199
194
174
237
219
164
190
201
162
266
201
151
215
255
234
235
194
180
202
269
245
147
172
241
187
196
163
231
168
166
170
147
220
204
196
179
218
157
214
226
199
137
250
192
192
218
256
177
171
176
189
210
195
198
190
155
180
167
196
179
236
211
182
183
196
235
226
231
264
185
168
212
176
143
147
242
211
276
252
218
163
183
188
163
212
193
235
197
191
186
203
167
220
209
281
166
215
197
205
162
215
183
290
168
232
249
122
136
242
180
188
183
204
218
149
131
220
211
232
192
206
198
235
244
207
232
160
163
211
253
220
166
263
166
189
149
177
236
190
218
166
161
205
243
206
214
209
199
257
238
176
188
239
198
218
188
163
229
248
216
196
179
156
174
180
230
257
208
225
224
255
188
211
231
216
224
140
187
153
231
214
198
235
220
180
138
196
225
200
176
177
127
216
190
176
183
202
198
200
165
167
224
167
160
222
135
256
220
264
211
191
236
192
165
242
204
210
196
197
197
263
165
134
209
186
227
221
240
164
242
199
245
226
186
243
184
207
242
249
251
254
175
282
249
142
200
210
195
227
226
180
242
191
213
241
186
199
254
219
180
182
178
174
178
241
135
186
179
190
179
206
237
227
205
172
222
227
249
200
228
164
186
231
225
224
187
243
174
174
230
181
241
133
185
243
152
198
273
167
176
191
130
187
195
191
233
226
238
212
215
139
113
219
248
224
211
213
138
188
198
247
215
196
174
202
166
222
226
193
271
197
205
200
228
151
207
220
256
204
211
197
156
232
217
155
201
178
196
196
234
203
209
207
258
256
222
140
196
212
195
233
181
208
169
206
206
257
184
187
193
241
196
210
251
171
181
172
161
143
246
234
192
254
195
237
190
256
153
157
199
194
193
213
210
250
215
217
243
245
210
221
158
213
227
261
219
210
231
150
207
143
229
219
212
204
211
193
240
224
224
244
229
201
200
195
231
206
220
169
193
206
182
149
163
205
237
214
137
170
221
214
193
131
222
211
189
194
182
231
178
207
183
183
192
203
190
210
162
207
200
193
208
171
182
182
189
212
219
213
235
233
212
146
194
149
239
241
270
170
212
211
202
161
254
171
155
227
154
219
233
186
181
249
187
229
178
183
181
154
209
220
231
207
168
157
239
187
121
155
216
225
200
138
234
183
243
194
221
220
200
179
217
199
154
125
156
193
186
165
248
202
247
216
222
239
181
211
113
183
191
213
212
226
182
164
255
115
238
187
184
135
216
198
137
134
185
223
227
224
173
226
213
205
227
208
209
174
171
185
107
231
228
267
201
211
192
205
197
205
256
201
210
195
262
200
286
221
241
190
234
236
149
236
210
172
206
113
145
225
194
188
141
155
211
234
178
241
194
194
192
136
239
159
202
182
168
131
171
194
248
197
208
198
234
235
168
254
159
136
147
208
168
203
188
112
215
198
208
151
212
216
263
232
206
173
220
217
175
124
215
197
209
200
178
175
162
222
120
229
158
220
226
231
252
224
232
242
208
219
199
169
199
187
212
206
224
203
186
208
294
244
238
225
210
199
224
222
121
205
237
166
239
187
133
195
182
195
155
144
229
183
113
249
150
149
282
209
124
201
217
227
233
199
209
194
222
169
165
198
186
208
177
177
220
233
251
230
210
193
182
249
118
209
220
210
237
185
216
241
171
199
195
239
236
229
200
210
207
186
178
234
148
122
198
231
190
221
180
196
208
236
185
195
203
213
206
204
222
224
178
161
234
161
189
174
149
224
207
180
191
237
151
195
215
240
194
181
127
237
179
228
189
197
229
243
203
162
223
200
182
172
233
242
172
220
211
180
245
170
142
248
224
160
167
255
223
201
215
160
222
260
194
177
152
246
205
205
289
266
180
120
183
180
226
183
223
309
170
195
171
144
142
196
244
160
219
209
228
216
177
174
211
216
119
199
255
174
183
130
225
227
214
185
229
237
191
161
159
188
206
215
246
178
199
183
227
185
182
200
210
250
255
196
177
180
156
206
244
191
185
165
239
191
168
185
240
239
161
206
208
261
186
206
199
271
228
220
258
272
204
105
224
236
257
194
191
244
234
194
228
174
240
132
254
142
216
212
219
163
247
196
200
227
262
144
236
218
230
192
203
165
174
229
205
217
215
274
232
264
220
166
216
208
169
206
235
249
222
247
174
177
231
228
187
175
203
135
231
165
218
201
175
258
202
200
160
149
155
89
199
195
213
197
205
160
277
232
190
205
254
244
210
246
166
240
183
177
224
163
218
249
221
194
178
132
148
206
198
209
234
258
164
197
209
245
193
205
147
205
266
192
119
199
216
201
174
247
211
183
223
230
194
222
184
166
186
234
254
217
154
140
261
191
213
243
202
226
178
204
208
225
227
131
165
245
234
218
205
221
242
212
198
123
213
183
214
191
187
240
207
181
182
205
144
229
156
205
212
209
174
187
178
167
187
244
159
196
182
222
132
219
172
209
212
198
225
250
210
149
230
231
188
198
196
224
184
162
222
231
194
182
225
193
207
202
168
208
218
243
202
209
190
255
208
204
240
254
206
175
128
225
209
199
196
124
147
254
200
141
228
190
190
120
204
246
213
204
279
197
136
184
218
212
205
193
170
210
219
238
232
201
157
185
183
236
304
174
157
204
288
194
207
229
149
190
174
264
199
223
207
200
162
241
202
181
186
242
179
213
201
213
181
196
219
239
244
192
180
243
178
230
198
148
178
155
182
183
197
237
231
195
219
159
197
139
215
228
177
261
200
218
215
220
191
204
225
162
185
159
202
210
178
258
190
225
232
160
189
259
169
197
180
210
193
158
204
237
178
214
231
253
176
129
213
158
210
177
233
221
209
193
197
147
204
231
231
180
214
209
245
193
220
242
211
177
236
160
184
269
217
194
251
183
211
190
227
227
226
256
264
175
246
176
188
154
231
143
159
201
138
239
197
236
192
184
178
239
248
142
185
129
228
216
189
218
240
220
240
217
222
207
203
260
214
187
215
241
223
210
219
80
226
191
190
236
159
178
224
166
259
244
216
222
239
215
238
122
281
211
148
180
150
180
179
209
302
187
143
200
177
218
208
166
235
157
225
158
238
220
197
181
163
225
210
186
275
165
212
173
185
214
222
168
205
187
171
205
186
171
198
196
244
226
159
216
231
151
232
232
214
247
176
165
200
150
192
182
205
184
182
236
184
207
154
238
222
198
208
180
236
190
119
175
226
180
276
228
220
211
176
221
203
188
210
191
210
166
213
219
176
144
254
217
211
239
185
215
170
214
235
153
282
234
237
215
191
214
153
113
209
271
186
243
221
217
207
226
184
188
187
186
189
194
130
208
246
261
124
241
219
181
182
242
192
232
149
217
208
231
266
274
153
215
221
215
187
193
223
262
213
252
186
211
185
210
173
151
182
232
190
209
188
218
237
256
196
177
198
173
142
197
203
219
233
198
180
151
241
183
225
212
174
194
255
210
127
163
135
192
229
208
201
189
178
139
133
237
161
177
241
122
185
228
171
182
222
215
229
201
246
236
150
217
193
204
234
199
217
175
226
198
240
230
202
177
226
239
218
140
208
203
184
221
230
214
186
190
172
163
215
133
182
176
140
146
195
200
162
212
166
191
160
225
189
220
230
150
240
268
144
128
151
201
158
194
188
204
272
247
216
266
176
220
171
211
182
202
218
237
183
236
187
202
211
211
232
224
228
150
168
243
258
217
236
212
168
241
219
141
143
151
212
208
176
187
226
162
144
158
218
213
225
244
159
189
180
170
256
135
156
168
181
232
120
160
216
217
194
103
207
172
201
126
196
192
209
182
166
163
199
176
223
234
183
158
209
224
186
189
145
192
202
171
146
236
274
282
186
192
167
213
246
209
140
216
204
170
149
241
280
207
174
218
153
186
234
197
244
190
235
187
222
102
163
246
237
238
203
182
249
167
183
182
81
211
243
170
235
186
216
204
230
213
197
156
184
217
192
243
226
225
197
223
182
201
269
184
200
146
188
240
227
188
131
233
165
259
144
271
106
277
201
186
211
239
182
183
186
181
173
212
201
154
227
229
169
196
199
226
154
180
199
235
245
195
247
179
230
225
269
224
195
124
166
221
197
149
242
237
186
205
188
177
198
182
156
246
206
168
193
213
207
43
260
164
241
178
158
195
223
167
172
206
222
156
227
203
189
207
193
212
179
227
237
189
234
225
185
235
193
202
241
219
231
196
220
226
225
228
137
224
218
198
222
180
181
219
246
224
225
194
185
232
173
155
194
149
169
191
167
226
222
185
245
270
180
205
262
218
176
165
188
227
275
202
252
142
199
241
210
169
202
222
167
242
221
177
164
163
252
222
203
169
192
223
187
213
218
218
191
182
254
172
194
209
211
138
233
208
196
222
211
235
192
191
202
184
220
155
113
177
144
221
223
200
159
223
164
243
251
184
207
217
220
228
198
181
213
156
280
127
135
173
151
221
124
224
176
159
172
167
246
225
238
166
203
246
198
164
202
215
189
214
163
166
149
219
185
258
213
147
193
186
250
210
239
272
215
201
208
196
221
190
233
215
223
179
228
160
167
179
231
195
225
225
211
214
188
235
239
223
233
200
159
178
189
224
228
274
191
174
189
184
164
214
220
169
172
194
169
172
227
246
240
162
204
135
156
226
142
205
200
200
184
261
151
216
239
218
214
201
193
189
183
181
277
184
174
195
154
182
198
211
190
186
229
231
254
163
226
195
244
225
224
219
163
140
174
170
175
202
228
265
193
217
181
239
209
212
164
241
166
228
172
193
214
170
257
251
171
176
189
174
219
182
210
175
271
254
208
105
197
196
267
220
155
173
206
200
188
201
203
244
222
198
228
160
184
215
214
246
147
182
206
290
168
160
224
210
203
137
180
204
226
200
192
213
145
172
301
242
186
248
195
238
191
184
249
188
175
222
230
212
266
274
155
156
267
219
197
171
210
198
182
255
175
199
184
245
156
213
243
176
153
201
183
217
270
167
167
228
201
190
226
217
175
246
198
168
213
212
207
191
197
256
208
234
197
141
163
177
206
182
179
202
232
209
181
215
219
231
146
139
179
140
132
233
190
188
247
219
202
182
234
222
198
166
207
216
211
227
202
165
241
217
246
271
250
214
202
242
223
209
231
236
192
181
204
175
201
258
207
177
196
143
224
158
198
185
206
159
175
247
225
147
232
172
228
227
199
239
249
260
137
145
128
238
166
216
127
228
192
221
248
209
205
160
167
169
210
247
178
205
227
202
160
194
211
232
222
245
200
256
191
195
124
111
185
193
189
252
218
237
171
199
202
197
239
204
240
237
224
219
263
166
190
227
165
226
144
179
201
245
241
186
249
258
165
195
176
127
177
209
257
203
251
226
257
167
182
180
235
185
158
248
212
220
285
222
193
184
112
148
222
219
217
224
168
196
223
214
119
219
226
195
198
174
181
169
263
194
221
192
194
245
212
216
143
209
217
185
239
207
192
205
174
186
219
159
155
221
198
137
171
234
195
148
185
177
188
182
191
136
254
173
194
190
205
252
194
263
233
283
227
184
174
192
117
198
172
179
219
171
167
264
238
141
181
249
198
149
205
206
205
214
192
244
166
212
225
177
266
168
203
151
210
228
176
159
184
178
218
192
218
176
209
157
177
238
297
144
176
211
162
195
131
246
187
181
175
246
251
228
173
126
187
231
171
184
201
273
179
208
234
213
207
231
184
221
195
224
217
173
206
190
210
186
232
209
261
149
165
198
268
222
215
205
206
169
203
220
166
171
152
265
213
276
206
229
212
187
217
187
229
229
236
208
208
193
260
121
176
177
225
232
205
249
221
212
190
245
266
161
268
136
201
193
198
183
195
223
155
176
186
219
199
201
232
210
195
187
175
228
215
169
226
166
242
175
160
238
180
232
191
173
203
230
228
216
214
155
184
217
131
220
183
159
226
211
225
231
191
230
189
156
245
243
184
211
238
87
186
166
208
214
233
200
136
162
242
216
188
204
210
200
226
240
218
212
159
180
179
152
211
173
195
152
240
223
231
213
205
227
138
188
131
181
199
179
147
257
246
194
231
230
176
193
202
223
137
209
131
169
223
243
147
218
171
191
231
184
156
176
191
187
235
242
228
212
188
107
160
196
225
163
171
228
190
189
238
187
189
207
232
211
174
131
194
120
203
186
217
168
216
234
213
232
202
182
238
200
269
201
198
153
215
205
223
201
202
207
243
156
245
229
202
257
129
203
186
152
189
144
238
154
257
195
200
197
252
216
199
150
256
210
161
183
177
203
226
186
228
181
257
142
164
156
140
173
176
186
218
203
235
173
228
218
166
194
217
170
250
189
243
236
205
153
153
175
279
129
228
246
161
115
179
209
211
243
239
216
239
277
158
237
121
203
189
182
248
219
162
239
234
153
247
266
223
176
172
153
190
95
286
208
157
212
200
317
235
198
159
181
220
187
206
146
186
206
192
193
235
133
192
210
187
220
97
219
189
133
170
157
195
192
247
187
193
224
212
201
251
144
264
185
217
220
200
148
210
240
217
192
231
215
246
168
219
220
206
258
229
224
295
175
212
168
257
223
151
164
219
266
218
189
176
140
251
215
172
226
228
255
255
201
163
212
132
245
246
190
177
189
226
212
227
235
215
183
236
200
237
199
237
254
203
131
251
173
199
201
219
163
236
245
218
251
235
196
217
187
174
208
224
232
204
222
215
247
205
188
207
237
156
220
141
195
168
211
143
179
216
176
225
235
171
180
173
146
187
163
251
186
220
183
172
206
197
209
203
190
166
157
153
238
259
165
189
228
206
208
129
233
226
121
214
222
211
187
224
178
141
173
157
187
168
244
220
235
161
227
249
204
212
214
201
173
208
195
158
196
234
178
176
169
211
190
171
218
183
200
251
207
146
112
123
226
199
121
202
170
205
145
202
181
262
187
149
185
207
141
193
171
164
179
208
190
141
185
271
212
212
218
146
259
184
243
215
228
199
189
192
217
218
208
222
168
218
251
235
221
191
214
265
175
149
175
218
241
245
182
183
127
185
195
211
175
158
185
186
170
181
140
199
189
215
170
236
198
193
129
238
212
187
203
221
198
199
191
224
238
214
214
97
212
264
164
226
162
223
160
175
202
192
149
210
218
179
197
242
119
203
159
139
185
252
162
182
202
177
175
184
238
230
187
220
152
207
226
256
189
234
149
190
253
229
210
214
194
220
256
145
189
197
227
99
187
159
204
211
207
209
219
202
245
146
187
198
243
195
269
236
195
229
171
190
237
197
227
206
232
198
280
221
201
267
197
167
240
236
237
165
223
231
164
175
228
209
143
286
185
182
246
183
222
158
175
232
310
159
240
214
179
189
253
179
179
181
173
169
229
248
202
202
182
204
180
213
217
177
166
284
248
272
196
124
171
238
167
285
145
169
237
143
144
255
212
185
198
209
284
223
199
162
245
198
161
195
190
132
170
185
221
210
202
192
208
189
222
212
167
229
209
218
173
262
157
219
244
160
243
183
241
146
194
161
170
203
212
252
192
189
146
221
214
259
196
199
246
182
180
229
169
221
179
250
149
209
183
167
128
188
150
202
200
196
244
269
241
232
248
198
197
173
231
195
172
138
244
178
252
196
188
241
255
126
234
184
173
205
159
205
172
114
223
138
175
234
195
207
191
130
210
229
215
242
187
181
119
210
205
221
265
177
238
149
140
216
146
124
159
186
248
241
195
233
190
201
230
154
215
156
251
152
226
178
141
204
171
260
210
168
193
178
244
184
201
185
206
222
146
258
133
193
139
95
173
181
220
247
201
233
286
223
207
224
249
213
242
228
186
194
263
224
207
194
151
158
252
215
182
188
274
188
144
160
205
198
226
205
194
255
245
315
163
203
171
212
195
188
163
203
190
216
232
192
175
195
213
180
185
218
198
215
286
215
170
208
154
188
239
177
225
202
231
193
153
199
240
237
194
218
258
240
255
215
259
167
216
210
251
184
192
159
167
174
189
174
210
222
187
221
191
231
203
150
172
194
171
215
180
196
258
184
214
191
219
219
159
174
235
211
228
176
186
240
173
164
200
214
245
215
202
199
158
166
176
202
188
222
211
142
260
211
243
170
218
275
158
175
212
223
158
271
134
210
264
246
201
197
115
273
211
228
201
182
181
223
180
218
243
239
195
238
254
179
184
168
200
205
215
215
223
227
176
175
191
183
178
182
126
229
208
210
226
239
135
246
191
204
187
243
229
195
166
201
176
143
145
185
172
197
128
263
236
250
224
213
177
203
171
200
221
196
232
208
140
201
251
208
152
215
199
179
169
157
155
230
185
219
210
195
176
224
221
140
257
183
229
267
184
207
189
212
201
216
211
189
183
219
196
246
185
217
241
198
178
195
220
192
129
158
172
139
266
230
168
178
196
135
222
205
147
250
213
175
184
209
200
210
197
218
187
154
193
209
250
160
107
144
228
206
225
256
238
249
204
160
141
241
223
154
206
182
220
251
155
216
168
240
191
177
174
180
136
213
169
257
213
204
169
233
190
175
159
271
237
228
153
194
174
129
267
194
189
178
142
213
194
145
184
263
208
168
208
196
237
135
223
221
187
200
237
218
218
166
162
185
222
158
240
240
128
183
235
130
184
240
178
199
223
219
146
204
189
204
205
168
197
165
246
199
177
241
181
169
234
240
179
147
171
182
233
163
209
182
161
177
234
222
234
211
244
241
194
213
187
171
247
132
163
190
266
177
215
172
187
173
173
192
166
247
223
175
180
236
171
230
161
231
188
188
157
206
165
160
176
197
189
217
159
199
199
233
165
186
247
194
169
174
204
252
228
191
221
231
186
210
215
146
176
194
190
166
210
244
215
141
164
225
211
245
213
218
169
176
172
240
186
213
162
205
256
240
201
172
209
160
214
252
198
210
206
143
223
185
221
171
205
204
193
187
196
152
141
198
216
178
161
151
225
181
203
167
134
260
193
167
220
231
219
267
191
202
181
264
196
168
163
230
239
197
182
175
213
208
198
209
157
215
260
171
189
174
214
254
191
220
189
199
249
167
217
233
177
202
212
258
253
209
190
211
209
197
223
176
263
183
215
178
164
179
177
232
172
152
199
172
216
213
207
183
209
166
150
221
230
184
234
174
260
197
224
185
196
177
246
209
235
172
262
207
250
160
229
176
174
244
167
219
213
207
222
218
204
239
218
213
151
199
211
199
192
225
205
138
172
195
170
226
212
196
222
276
198
183
179
216
163
206
226
190
231
188
263
208
168
143
220
201
139
219
201
229
223
250
231
173
169
160
188
227
201
179
203
217
172
217
247
202
198
141
212
189
172
238
191
235
233
193
201
112
195
195
190
201
154
231
200
213
174
170
244
204
269
211
222
181
229
181
201
218
183
180
230
189
161
208
159
244
197
177
246
258
207
177
171
185
178
184
233
157
202
226
175
238
169
178
162
220
227
180
243
214
232
251
193
232
253
157
200
275
241
219
213
232
128
216
212
233
195
165
227
244
230
196
192
206
241
258
201
115
185
144
209
136
277
209
204
206
179
238
200
249
168
171
195
222
169
229
189
205
113
201
174
204
176
204
236
207
224
180
184
184
223
191
230
198
168
114
225
192
202
190
262
247
166
121
230
247
151
228
218
251
242
172
180
192
193
225
228
243
223
162
189
243
183
269
156
191
117
221
208
227
227
182
211
232
185
210
204
200
190
158
213
225
207
234
186
198
148
176
205
186
260
247
205
156
185
249
211
277
177
214
174
244
243
241
176
198
188
208
207
200
190
224
231
244
220
201
204
217
219
201
248
247
170
168
205
201
213
267
217
198
159
121
224
159
271
172
213
174
233
243
211
195
260
250
258
235
191
238
212
178
190
245
228
206
234
177
244
226
217
204
147
128
210
207
205
210
160
211
186
190
178
168
169
236
198
223
191
211
167
198
132
174
160
174
192
148
147
235
212
210
220
204
255
156
180
250
160
184
193
198
162
184
250
277
176
225
199
128
159
163
193
197
191
210
222
210
177
252
275
207
236
229
211
221
246
194
100
205
162
216
227
205
187
233
213
215
209
235
176
270
228
188
207
226
198
223
165
158
215
180
227
152
285
158
190
226
253
204
150
247
230
207
218
195
179
223
212
172
174
150
224
141
177
164
144
195
282
195
210
227
167
270
187
191
255
221
212
222
200
221
225
140
204
206
221
163
221
182
164
233
167
249
198
199
250
216
206
175
257
212
197
266
138
223
174
219
247
243
173
232
219
161
287
207
157
238
175
204
239
222
210
228
208
227
168
173
186
186
195
228
245
173
201
186
193
145
216
188
215
225
213
233
177
216
221
223
108
230
252
203
195
268
207
199
178
158
240
201
201
174
247
167
133
147
143
180
131
263
203
217
226
194
256
186
172
204
144
113
136
148
174
224
224
196
169
193
224
208
248
206
177
206
220
217
176
197
223
221
164
239
211
250
208
159
189
159
190
206
166
302
255
145
131
254
209
215
198
163
154
193
213
212
231
250
195
307
210
134
231
192
191
173
266
242
188
142
237
165
130
249
163
185
175
165
171
176
195
196
272
222
111
233
182
199
200
225
188
232
233
200
160
202
206
213
199
197
178
246
191
188
225
167
205
223
245
219
220
201
252
232
243
226
138
209
228
151
206
127
259
195
219
215
149
150
220
153
207
231
249
254
140
256
191
205
239
200
202
215
208
188
185
163
215
198
240
250
225
203
126
232
217
207
194
219
210
212
244
123
190
208
200
212
202
212
149
200
217
178
151
178
168
236
170
246
202
169
201
170
188
216
218
192
212
233
228
210
222
232
210
157
191
188
205
200
160
191
205
163
251
201
208
215
155
171
181
232
209
125
209
231
195
226
257
147
199
214
247
172
246
279
142
285
194
120
210
166
192
173
202
212
168
187
195
204
233
138
222
144
183
197
240
154
178
228
213
179
199
217
221
174
188
211
160
188
180
198
172
197
253
199
132
197
214
230
213
211
177
219
138
201
140
183
161
189
224
245
236
186
219
157
239
199
222
237
179
163
178
181
237
207
180
230
228
161
156
253
225
179
197
203
265
204
176
132
149
222
202
206
257
194
183
170
212
203
174
164
172
197
218
170
176
243
170
197
249
253
226
248
166
189
206
189
140
214
187
194
247
200
174
213
242
158
186
158
139
251
216
195
117
199
260
218
215
219
202
220
174
213
226
265
198
211
217
191
205
203
192
213
206
168
256
134
260
195
220
238
205
186
185
197
195
191
233
182
196
209
208
226
222
252
180
190
236
178
214
261
200
191
142
171
209
257
200
180
176
157
187
166
184
189
118
202
232
186
216
136
201
171
238
244
162
209
221
146
233
187
207
178
166
247
251
217
269
133
171
188
206
209
245
214
229
216
157
265
187
202
209
222
202
214
118
204
211
191
177
184
193
191
215
173
220
231
210
244
175
233
206
195
205
179
222
205
220
254
224
119
184
183
208
188
295
144
269
212
185
139
166
289
131
226
199
179
217
203
212
203
190
225
250
215
180
194
142
208
181
212
233
219
221
195
186
214
146
260
159
152
175
208
256
258
237
184
199
162
241
192
187
199
186
112
194
208
187
189
207
209
175
205
202
238
170
199
204
221
224
199
155
252
196
219
221
197
192
178
181
249
210
177
205
193
266
189
182
242
175
238
140
227
229
239
219
171
191
159
202
186
140
154
208
200
204
198
155
224
179
234
180
186
229
211
223
185
216
229
213
239
270
169
176
178
154
187
190
193
184
223
179
247
252
225
186
134
162
190
218
243
214
217
187
244
239
235
256
187
158
147
196
202
166
173
224
289
192
217
142
191
216
194
223
171
205
197
227
146
183
232
219
232
192
220
199
224
122
181
216
189
249
181
197
208
200
224
160
269
242
225
211
188
189
193
191
188
219
216
167
170
205
186
247
219
173
185
155
232
228
175
237
219
256
132
145
189
146
223
218
143
235
231
189
217
204
158
199
185
231
170
180
199
156
132
195
138
220
189
216
204
211
246
189
152
255
237
245
240
208
189
215
159
189
263
172
162
167
250
259
183
237
221
202
193
228
181
166
250
193
236
217
177
224
231
164
247
243
222
227
223
256
229
270
258
209
177
248
195
147
189
194
221
161
182
143
200
186
212
189
239
186
111
207
213
178
161
186
177
189
212
217
183
151
183
227
257
247
184
183
211
272
190
196
159
189
164
165
203
191
193
190
214
219
189
158
210
193
207
185
222
221
184
220
234
151
240
159
189
180
174
233
201
189
254
194
234
190
172
188
219
156
205
206
203
217
154
178
137
172
114
262
162
222
215
196
209
226
148
219
229
196
168
185
171
199
193
216
192
256
194
148
250
234
231
179
267
202
223
201
185
182
183
136
229
193
165
245
189
217
198
220
184
182
244
256
198
205
213
216
174
132
211
219
239
184
178
202
245
218
192
119
216
211
223
226
223
228
190
203
111
149
168
193
191
201
198
168
185
244
243
166
199
190
216
176
176
215
135
214
127
236
204
195
186
176
255
154
178
188
201
207
161
227
226
220
251
190
153
194
183
226
127
203
220
243
262
121
147
168
169
223
197
260
225
242
204
266
116
201
180
215
170
248
193
198
193
209
156
169
287
162
190
212
202
237
211
198
202
212
229
209
234
204
182
232
136
232
288
218
250
173
210
216
225
244
158
194
223
196
209
205
179
222
258
173
192
237
193
199
137
218
160
216
234
231
235
209
209
185
246
159
215
235
267
175
225
191
201
220
207
250
253
198
235
175
219
211
218
207
170
217
162
206
190
260
205
221
166
220
176
275
211
225
225
145
189
261
172
232
201
226
195
136
255
240
269
204
195
185
188
136
220
244
156
226
217
171
142
188
257
233
191
237
177
276
240
155
258
155
170
134
235
216
246
231
231
235
215
174
229
163
236
180
198
234
263
152
183
237
165
232
161
207
255
221
207
167
133
219
217
246
216
185
183
208
196
196
244
182
221
166
231
210
256
246
195
252
179
258
217
177
195
223
219
199
282
262
235
233
214
238
213
147
154
187
273
188
246
194
216
222
194
280
171
246
215
151
168
210
216
127
210
199
197
158
176
231
200
205
193
203
165
190
207
213
208
178
230
179
178
238
203
235
173
165
129
231
202
157
179
275
232
168
260
162
201
200
238
191
221
206
148
227
199
158
156
205
208
238
209
172
196
163
150
244
191
204
219
230
217
110
209
204
222
238
202
185
261
219
214
203
206
206
176
128
195
135
214
184
208
252
201
198
214
204
193
223
219
195
223
151
254
252
222
220
149
202
151
180
153
196
232
168
177
177
234
176
178
167
199
210
288
180
128
231
182
200
242
233
271
230
192
182
231
217
177
169
235
202
213
201
219
191
185
194
236
266
283
218
251
147
199
169
174
185
177
183
224
177
226
194
276
171
201
248
157
250
191
157
219
162
229
194
201
211
174
169
284
250
161
167
202
200
189
162
232
126
210
218
222
222
185
224
246
195
154
182
191
147
182
171
179
189
187
220
198
200
198
208
254
180
190
281
238
216
189
168
222
202
204
209
217
261
256
197
246
205
131
138
220
153
224
263
171
231
240
204
188
246
182
171
225
169
185
139
178
181
217
202
189
201
179
234
166
139
248
165
225
242
212
213
112
194
215
216
165
190
218
234
203
195
196
241
171
197
238
173
179
172
193
211
202
167
230
237
206
187
216
165
198
140
195
183
185
224
242
168
195
181
228
203
224
165
189
177
185
255
192
190
217
197
222
260
228
207
222
207
195
167
181
228
196
219
246
152
192
242
220
201
258
253
159
181
198
217
171
157
232
202
238
243
205
194
165
216
162
214
193
210
157
243
227
154
253
210
184
206
233
184
212
207
190
210
251
152
192
232
251
194
255
197
224
238
130
219
151
258
280
157
205
158
176
183
176
206
257
171
196
230
273
158
200
161
189
209
256
203
186
210
220
220
173
169
206
210
251
184
235
244
202
214
230
238
204
222
246
189
176
143
173
242
199
169
203
153
243
168
215
221
217
226
171
146
241
217
226
217
233
211
171
217
203
191
211
192
165
264
214
192
124
235
208
164
213
180
150
206
197
215
127
233
172
134
134
215
202
231
168
191
168
269
206
194
155
179
195
238
223
241
196
202
198
224
195
165
207
171
179
180
138
179
205
173
192
253
191
235
194
236
198
181
189
196
128
106
233
216
203
181
227
208
263
213
185
235
173
212
155
280
185
199
227
173
235
190
216
177
232
219
198
188
215
119
242
188
252
211
179
211
242
212
208
173
175
234
211
176
181
194
215
204
226
189
244
173
128
225
205
260
190
262
226
198
175
236
214
186
191
220
234
198
257
197
265
206
176
256
175
141
151
175
226
251
204
176
166
238
189
174
182
208
178
204
161
226
243
184
225
270
179
216
239
168
244
214
158
193
211
199
208
248
184
204
183
202
289
187
189
241
176
187
172
167
190
209
166
117
216
265
227
216
268
188
159
195
152
204
238
199
245
224
221
198
166
165
193
164
180
145
184
124
145
193
179
164
180
190
204
166
220
211
205
190
188
206
123
233
213
206
200
242
229
151
197
162
178
230
224
164
211
178
173
196
173
237
277
185
189
208
167
169
141
222
239
236
187
209
192
193
174
254
240
226
229
202
252
144
214
188
234
214
133
179
169
137
254
170
217
131
207
227
191
214
248
162
215
192
184
166
270
175
127
211
177
231
194
229
173
181
204
223
213
185
182
259
181
190
229
182
178
207
222
195
156
198
176
208
182
150
178
211
177
209
188
160
162
116
189
227
237
208
245
228
164
192
208
154
240
179
264
183
194
152
251
171
231
211
205
230
152
214
225
217
250
209
192
207
195
227
161
106
244
251
227
235
166
210
242
240
206
216
210
240
236
236
177
241
173
213
260
269
166
226
143
216
187
217
218
214
218
173
179
206
185
254
210
192
210
185
205
176
207
249
188
178
214
189
174
243
194
184
213
114
263
131
238
154
117
242
194
206
231
235
191
222
245
171
218
242
168
243
188
192
191
198
163
265
186
222
227
235
217
178
274
212
162
226
159
197
118
211
130
113
194
184
198
220
174
187
178
162
212
206
183
235
222
191
228
217
219
194
232
153
241
200
243
223
275
155
170
215
190
165
211
203
204
188
190
233
209
229
185
199
132
208
217
101
220
141
209
183
180
141
243
163
188
174
195
154
181
148
200
197
261
209
232
239
275
174
270
186
212
143
186
230
198
174
200
168
165
285
206
153
213
258
229
193
193
176
165
144
194
202
209
168
287
208
264
209
192
197
134
184
179
189
173
207
227
162
127
212
201
186
188
178
253
241
212
206
240
170
181
193
254
255
258
246
189
162
208
176
222
125
191
204
255
183
203
206
205
177
177
180
190
204
197
187
198
171
223
206
238
210
218
226
153
257
214
156
133
241
190
120
244
229
206
196
180
225
204
224
169
164
197
241
147
184
149
200
211
216
257
204
239
201
288
201
206
265
199
218
157
197
206
229
207
228
146
237
192
260
241
189
200
152
199
222
234
169
222
198
187
257
205
228
171
197
229
187
180
228
234
169
229
157
198
223
216
171
190
147
228
217
175
186
218
207
188
200
229
262
166
205
199
230
225
228
208
182
242
211
166
226
178
156
210
193
238
239
201
186
208
177
186
196
196
182
202
228
207
185
170
179
181
215
193
214
195
163
217
165
200
185
190
204
241
194
248
191
193
176
234
180
231
228
196
242
206
184
179
228
227
198
190
229
225
192
164
167
190
122
231
185
218
158
132
207
230
131
161
216
180
186
187
220
188
195
267
170
238
217
149
273
150
236
235
190
183
213
285
147
233
207
222
192
198
195
174
218
193
270
141
166
230
125
216
143
205
157
182
207
212
244
189
199
229
197
160
212
199
220
239
219
201
234
201
193
186
179
209
176
199
236
235
183
186
200
229
182
136
220
198
238
196
185
197
241
187
190
171
219
196
185
232
194
184
203
136
210
196
182
226
223
226
179
198
202
176
141
181
240
208
232
188
205
199
214
162
194
255
122
230
211
241
222
165
210
232
259
219
174
148
194
210
204
194
236
187
172
219
186
157
195
237
197
213
188
224
208
216
152
171
166
235
246
216
245
204
211
189
230
165
224
188
235
198
223
225
218
189
181
216
181
204
190
172
146
151
218
171
161
144
170
194
202
173
196
207
201
235
188
135
212
184
213
227
155
176
190
179
169
251
239
207
196
178
215
197
202
185
183
180
183
124
218
223
230
174
144
222
238
182
233
224
189
244
221
220
261
151
162
189
155
214
194
183
174
167
201
257
227
187
224
177
208
227
187
216
210
178
185
224
175
166
257
237
158
166
136
186
220
215
199
150
226
190
149
147
248
194
213
207
166
216
157
190
226
207
207
234
220
208
198
162
213
133
202
246
170
192
159
225
217
239
202
195
210
160
184
120
263
165
195
197
208
235
105
188
161
280
203
221
243
185
231
216
239
219
200
197
233
180
227
243
167
156
166
239
189
171
284
231
235
159
175
228
195
171
175
266
151
189
183
184
142
191
202
194
234
204
298
216
156
220
222
265
151
205
190
218
176
187
149
205
204
194
236
232
226
151
201
228
145
199
229
202
230
172
164
168
197
226
282
155
173
268
178
263
204
209
221
221
213
155
194
183
193
247
151
176
252
177
182
274
145
153
212
252
185
221
223
261
219
230
195
209
166
191
228
189
181
199
255
184
222
234
191
173
169
220
230
205
194
228
212
114
233
153
231
221
165
171
173
186
197
182
156
141
216
150
137
125
252
200
207
153
172
191
201
241
156
243
211
162
253
210
191
227
208
158
232
195
206
208
216
215
229
267
169
262
193
216
189
151
217
222
251
217
257
203
193
189
178
229
191
186
158
212
203
138
213
236
216
233
246
195
195
259
224
265
218
183
241
202
192
202
150
164
241
251
247
190
199
206
232
201
144
176
193
246
200
255
229
182
164
200
169
201
196
215
194
182
249
151
217
174
210
229
183
220
176
179
244
151
185
164
207
195
207
216
198
247
227
193
202
167
243
177
218
180
139
219
142
210
218
228
136
147
200
189
191
182
201
201
226
185
181
217
227
207
200
150
145
184
95
179
204
148
224
196
161
214
212
207
177
164
289
206
207
181
212
162
195
139
211
169
190
216
186
185
223
238
209
182
187
292
256
185
144
202
260
201
265
135
138
226
202
111
140
166
154
252
257
245
172
167
244
230
143
245
223
147
229
241
237
260
233
245
258
196
257
211
221
234
149
265
154
186
231
258
163
181
156
207
185
130
237
241
163
183
213
225
207
217
221
124
184
223
197
200
235
205
227
232
231
193
186
218
152
145
242
228
202
192
231
212
164
229
181
204
233
247
175
203
177
213
251
201
226
212
281
228
224
229
248
171
230
238
132
199
224
147
244
222
190
151
202
178
241
205
179
163
143
212
194
198
187
236
165
215
180
196
267
193
145
186
201
244
145
194
174
232
183
239
223
133
249
211
159
223
231
200
220
196
154
239
240
197
125
176
194
142
194
189
189
206
126
135
202
238
273
159
158
186
248
199
158
243
230
161
230
189
251
179
248
172
215
208
168
209
129
201
223
221
171
259
222
162
242
266
269
196
203
204
232
213
157
187
218
188
177
231
225
191
148
245
218
198
179
249
200
193
216
175
212
206
197
139
196
250
166
181
201
210
146
144
206
207
212
154
204
210
225
130
215
195
215
236
220
215
187
192
210
219
224
246
195
212
161
161
207
191
140
197
204
119
220
164
163
141
195
224
158
224
174
148
229
148
174
149
264
215
265
238
155
210
212
222
244
222
205
229
189
227
214
183
202
156
232
238
157
220
217
248
192
221
199
186
192
246
214
177
191
249
239
214
243
227
210
193
213
251
182
212
173
194
195
199
181
207
214
228
166
163
187
193
177
167
196
209
231
227
144
261
220
220
163
199
238
130
227
248
193
130
224
185
244
206
141
152
114
218
210
210
167
203
244
184
185
164
140
150
190
217
213
281
186
167
220
171
144
106
220
273
169
134
189
201
191
229
179
159
164
117
191
233
190
157
229
236
149
175
216
191
131
217
167
185
203
274
183
173
136
156
209
212
148
163
206
166
238
182
209
162
223
194
185
162
202
137
218
233
211
208
224
170
213
193
216
207
220
208
191
157
220
246
231
177
202
137
175
146
174
227
171
151
146
204
249
194
236
114
229
154
186
267
231
153
184
184
148
135
197
152
217
211
173
239
211
239
175
104
223
177
194
158
140
212
235
258
241
215
240
225
174
178
153
198
236
183
226
232
146
188
196
189
223
182
228
227
182
242
214
171
97
172
204
210
198
163
168
185
258
172
200
209
221
219
207
217
214
255
202
162
263
234
223
249
213
225
227
211
148
217
149
231
178
203
166
177
121
244
206
193
236
217
184
181
215
191
212
200
179
206
197
212
193
198
203
199
210
194
217
178
196
203
174
222
136
215
132
223
247
223
144
200
159
192
235
226
152
159
136
232
227
245
209
168
208
224
203
217
229
165
253
157
163
175
213
195
237
133
239
223
195
199
231
230
173
231
186
250
234
125
190
248
197
142
158
204
185
187
219
220
124
236
141
172
158
197
137
196
166
232
179
184
226
173
202
233
201
131
190
191
210
189
191
118
180
210
242
217
189
169
177
185
175
245
245
167
174
263
186
203
163
189
260
176
209
171
168
164
180
228
189
217
218
207
150
232
225
226
230
233
221
242
179
273
243
194
235
208
216
174
200
235
190
187
142
162
207
238
250
211
174
161
194
193
142
187
196
156
240
267
175
205
212
219
194
225
120
178
208
193
203
223
209
165
228
162
196
247
264
188
194
219
152
207
197
202
140
259
194
177
207
138
115
213
137
188
239
189
241
163
233
176
184
149
189
245
133
276
155
256
239
176
193
213
135
186
209
197
158
203
227
153
188
240
170
161
177
211
257
179
218
194
220
233
220
135
205
137
199
187
193
204
235
134
181
212
176
269
161
235
212
216
211
191
193
204
170
176
214
250
199
190
177
169
178
150
179
213
192
205
127
154
231
239
188
233
205
217
259
149
175
198
195
113
226
204
164
165
192
206
160
217
176
192
193
223
197
192
186
170
230
279
173
155
277
172
232
174
221
249
191
167
199
132
215
202
198
177
283
186
239
196
210
217
189
231
225
219
238
192
187
210
156
241
161
169
137
220
199
181
207
162
208
183
180
217
265
190
217
263
230
247
203
156
200
173
206
198
211
133
165
168
220
176
164
200
161
224
217
249
132
197
208
191
212
218
220
217
179
226
190
156
195
127
224
262
173
186
221
227
228
181
164
196
162
230
144
201
155
137
191
195
195
184
188
276
182
160
168
202
198
179
134
172
224
292
177
259
264
179
198
179
202
269
169
180
265
239
141
193
211
265
232
165
200
182
213
195
228
184
187
211
231
243
207
179
237
220
203
142
217
182
214
176
225
221
236
198
171
202
205
138
201
139
254
180
162
234
204
180
230
192
148
198
162
188
208
196
144
245
229
208
229
186
244
217
227
248
160
140
190
173
187
134
229
212
196
196
200
178
319
174
213
215
197
166
252
185
193
207
271
239
203
181
207
165
237
249
220
165
221
194
146
202
197
180
231
184
225
113
243
249
211
171
212
218
206
189
209
206
189
218
191
169
178
223
210
218
195
228
254
196
147
211
188
178
191
174
207
142
199
218
85
171
181
219
219
121
189
204
211
202
226
129
231
219
187
193
159
173
248
206
215
176
194
245
211
174
233
197
192
193
223
271
234
183
223
201
143
215
216
227
164
218
232
252
208
233
195
184
249
198
191
158
232
176
217
169
259
224
200
220
207
154
217
158
191
178
178
189
169
198
272
226
177
211
211
176
167
167
209
184
229
205
231
224
170
236
175
200
188
191
256
214
146
215
239
205
180
171
152
181
201
166
255
216
227
232
189
191
205
211
182
243
225
213
205
141
169
243
191
193
214
222
155
151
188
226
148
187
246
230
150
267
235
175
215
167
175
237
183
159
189
169
207
238
192
218
195
245
196
150
217
236
144
122
150
186
268
162
201
228
206
224
228
170
211
235
218
227
171
180
211
165
145
191
213
173
165
217
203
101
122
208
169
149
221
212
239
203
213
179
174
182
200
208
220
179
240
159
176
161
253
207
125
164
158
220
172
225
190
202
171
231
169
210
193
182
176
197
177
151
187
278
208
198
244
170
242
226
221
224
205
196
172
243
159
227
240
195
208
220
181
238
219
172
196
260
235
207
210
234
262
202
189
226
254
189
172
224
280
222
241
226
174
211
128
224
175
209
166
237
246
224
252
223
170
212
175
275
233
176
216
191
212
229
198
165
226
200
225
170
175
170
241
242
218
219
167
194
222
192
175
166
191
183
200
184
234
221
230
238
216
171
238
154
179
164
183
158
237
139
235
228
192
199
227
218
157
166
167
216
146
137
208
238
193
155
232
161
233
139
176
176
173
172
171
200
252
203
237
166
226
140
262
227
254
190
195
239
171
137
222
246
249
199
235
190
158
166
134
181
241
201
217
199
188
143
237
190
213
158
237
169
159
193
179
220
226
223
149
231
226
177
209
203
174
171
216
223
164
173
190
225
216
226
206
264
191
264
144
174
216
166
193
189
154
244
138
165
222
230
134
124
191
177
174
162
191
223
230
247
241
235
183
208
227
173
186
234
185
196
132
184
198
184
166
232
241
189
236
218
169
163
182
205
246
178
235
187
166
207
228
195
159
205
175
214
147
175
262
234
190
176
214
194
200
148
207
199
162
194
263
145
226
265
198
207
238
130
208
130
149
227
175
251
232
114
221
228
236
192
170
200
231
152
179
191
190
146
150
214
183
183
170
243
198
187
240
196
180
150
193
178
257
204
213
170
258
185
192
156
227
155
222
201
208
219
217
211
200
190
211
187
230
228
168
86
274
215
212
198
258
250
245
205
187
166
238
223
232
197
120
254
192
193
203
214
178
189
212
234
200
200
187
198
177
222
136
174
274
198
242
230
186
189
176
184
237
191
188
228
204
193
196
162
182
196
151
173
208
175
227
191
220
173
183
198
249
186
216
203
213
126
208
214
180
220
198
221
211
192
226
170
151
221
220
184
244
233
222
207
137
134
188
253
192
166
225
160
227
190
234
186
231
159
242
186
197
216
252
204
251
180
202
200
101
166
227
229
161
210
185
188
224
223
254
236
202
178
172
140
175
203
186
253
219
241
159
199
198
220
262
244
206
239
212
239
244
228
186
171
192
136
161
248
199
225
201
224
240
205
250
228
238
159
208
196
192
195
177
228
180
187
157
216
175
245
209
253
195
204
204
233
185
214
224
176
265
239
185
215
208
213
237
190
202
171
204
121
279
159
211
244
229
183
187
181
197
206
244
195
241
122
180
187
191
178
210
123
212
149
223
137
255
226
188
147
146
212
191
187
217
188
226
216
200
235
230
182
180
196
221
200
256
189
230
209
234
255
201
183
188
184
262
242
189
210
131
209
149
230
186
160
263
207
216
196
263
219
196
244
184
207
220
205
160
194
202
193
137
218
214
226
190
191
138
184
167
266
166
187
258
254
82
208
242
173
244
163
166
238
236
230
253
202
224
202
190
184
234
236
207
206
164
234
248
155
230
195
171
201
188
186
252
173
191
163
169
181
209
148
203
239
170
179
134
170
180
189
191
220
190
170
169
205
111
209
246
239
227
199
219
167
223
208
166
191
210
163
174
258
219
175
273
174
208
216
201
223
139
221
252
265
205
242
217
174
220
226
210
235
168
197
209
165
216
192
179
178
213
151
186
277
123
216
179
178
208
260
254
188
170
233
233
232
189
224
176
241
197
178
198
237
245
191
206
247
191
256
186
265
194
176
218
233
171
220
143
154
244
210
158
154
179
207
240
180
210
208
206
171
210
161
199
251
192
171
258
207
201
173
214
182
195
196
227
273
203
215
173
171
235
185
167
261
180
176
177
190
242
192
224
107
213
156
227
135
216
256
176
215
193
211
215
195
218
225
222
193
207
240
209
237
159
232
200
180
215
212
211
195
271
169
241
213
192
150
233
153
207
164
248
175
251
232
213
143
217
147
162
165
202
144
179
246
191
171
227
223
192
183
180
220
222
157
222
185
211
223
230
201
257
194
206
251
165
167
195
194
216
226
189
149
192
216
178
205
160
218
195
198
235
257
206
223
200
171
192
227
214
148
259
175
256
179
217
203
195
270
208
273
137
191
246
211
256
238
237
186
212
304
193
191
246
271
263
128
204
226
193
220
261
172
272
189
225
191
236
177
160
229
194
188
142
162
200
189
233
218
204
171
200
246
145
205
251
213
256
202
187
162
179
175
206
167
213
167
182
205
159
227
214
188
272
199
190
231
208
249
185
207
243
225
201
128
239
193
105
190
189
181
172
116
217
208
166
238
126
142
229
179
217
183
186
268
198
137
218
209
228
216
208
194
184
231
208
164
204
149
182
259
232
160
188
203
251
192
148
236
245
150
224
236
266
181
222
194
177
174
170
164
219
234
207
264
178
189
182
249
192
207
141
177
210
197
203
266
179
180
244
251
207
197
232
199
199
198
230
134
219
164
175
179
157
215
225
221
182
213
91
207
182
167
140
162
259
221
225
220
194
182
199
238
195
153
186
204
209
225
198
126
203
219
179
196
151
250
183
179
137
180
195
196
245
191
243
200
245
188
181
249
132
180
187
186
167
243
158
279
212
187
205
255
243
196
221
168
221
204
207
220
218
247
250
227
156
282
200
200
96
194
174
224
200
207
213
220
174
142
262
240
239
181
189
178
189
271
218
217
232
178
173
201
179
225
187
231
158
238
194
244
160
202
228
210
243
230
210
232
172
194
183
111
88
245
185
201
242
199
158
229
207
172
213
206
130
186
236
159
173
244
177
170
178
207
169
209
199
198
253
222
160
186
212
191
159
177
232
144
163
241
211
231
291
60
193
127
237
196
191
146
236
173
209
178
237
187
176
182
200
214
234
196
202
167
210
192
164
152
156
230
198
222
179
298
249
144
220
234
190
181
206
207
141
251
239
213
161
144
219
208
282
151
164
156
206
182
250
190
165
140
216
202
144
184
191
244
249
169
168
225
168
179
197
137
199
230
112
118
186
252
192
224
165
185
184
229
223
175
173
207
198
216
228
197
211
226
199
229
236
215
204
194
211
184
175
222
215
228
186
165
185
181
166
231
266
188
241
200
228
271
163
191
199
144
159
172
239
196
181
205
207
201
189
144
223
155
188
185
181
173
183
149
160
222
175
193
189
140
247
153
202
241
167
140
203
196
170
172
216
196
162
213
244
186
245
203
179
226
211
227
194
210
220
204
203
189
199
179
230
191
176
167
147
188
193
171
226
185
179
189
208
227
176
189
158
206
114
204
166
203
261
178
240
258
157
236
195
212
209
192
232
191
250
213
190
226
152
128
209
221
206
235
211
198
204
220
229
183
191
256
174
236
232
201
172
166
186
194
218
194
179
189
218
202
196
257
160
183
194
164
189
155
184
267
130
197
192
180
261
220
237
171
163
130
138
165
212
160
163
245
259
198
214
289
157
222
164
263
214
173
114
179
237
174
218
221
211
222
169
236
231
211
231
203
238
157
249
237
256
268
208
291
177
189
226
243
229
222
198
215
197
232
190
202
209
204
158
160
219
213
186
189
167
217
180
236
171
245
176
182
142
280
259
221
190
208
233
197
141
221
169
182
238
207
196
254
221
194
204
200
231
163
152
231
215
190
146
191
261
220
220
233
215
204
242
255
241
193
259
187
187
247
143
214
157
255
235
241
144
164
195
210
217
192
220
197
190
193
210
190
206
206
220
137
154
192
205
179
220
153
238
197
205
200
203
226
230
210
234
223
238
194
209
172
193
175
200
175
163
97
193
204
200
139
260
202
243
240
183
160
246
214
240
198
102
248
218
229
135
265
215
282
186
164
236
217
164
115
240
209
219
145
172
205
147
172
153
203
182
225
142
201
179
210
238
227
191
211
171
221
244
198
164
169
196
193
173
245
135
215
249
201
176
197
243
188
134
197
233
197
254
177
162
216
203
137
168
220
229
142
217
205
201
221
203
182
213
147
223
189
247
226
207
164
225
237
214
197
260
221
169
182
232
211
182
190
209
206
187
224
205
168
246
147
220
153
261
229
234
192
234
213
246
250
254
168
197
152
184
212
217
276
113
205
168
175
149
182
200
256
170
231
226
220
229
158
244
188
243
203
159
254
216
215
178
192
217
237
227
215
218
238
209
206
204
188
151
201
157
199
164
226
166
236
221
215
187
229
171
175
186
224
221
212
173
194
249
208
176
215
238
177
174
236
101
226
171
189
222
228
145
179
192
229
214
195
198
192
187
189
224
210
179
205
134
225
172
224
259
199
173
271
244
191
202
155
162
237
151
179
188
210
191
193
186
203
211
199
201
237
159
221
221
144
223
177
156
164
244
238
144
146
187
220
191
177
232
182
174
163
216
224
264
160
199
207
176
222
182
210
187
183
237
203
155
223
232
246
197
200
253
233
238
206
190
214
190
193
187
251
231
174
221
189
146
163
226
150
198
190
238
219
139
204
212
186
178
194
232
152
122
233
249
163
247
159
216
189
173
223
232
257
222
206
171
196
208
184
250
182
183
249
203
181
227
238
116
163
241
241
179
260
197
146
129
196
154
152
275
161
148
198
151
199
245
238
221
174
136
253
203
174
147
188
184
155
181
225
236
177
208
214
178
165
214
227
206
186
218
211
204
188
225
155
159
217
175
131
243
174
211
209
229
219
192
189
163
261
220
207
212
188
185
216
150
247
233
183
252
192
231
169
188
212
200
231
233
165
226
139
163
175
219
261
206
182
175
188
188
223
200
226
224
146
225
246
201
228
146
162
118
245
152
176
254
211
160
175
201
226
189
235
179
248
200
269
182
215
194
184
207
213
233
223
196
197
209
225
172
215
140
203
238
236
239
185
203
172
169
206
154
254
208
206
181
232
208
234
202
158
184
228
226
217
161
245
188
193
209
202
204
169
159
189
256
155
146
162
196
205
214
210
206
172
249
204
225
210
194
163
254
136
214
135
237
204
219
184
237
216
266
146
157
197
196
212
248
169
245
157
190
189
172
134
237
212
191
190
189
198
183
193
227
164
172
218
243
205
156
219
216
226
187
179
222
232
207
211
213
148
199
152
191
232
205
200
188
196
251
144
181
214
168
225
155
182
219
182
225
210
259
202
171
169
219
234
245
187
250
184
221
207
200
196
221
155
213
196
124
197
197
263
195
201
191
209
167
191
251
252
188
229
167
171
170
139
213
164
170
240
284
244
206
156
213
215
189
189
178
194
165
184
215
148
186
175
182
175
233
209
181
207
167
183
171
227
175
213
145
209
131
184
191
188
145
207
211
227
167
196
228
221
232
246
168
243
184
228
207
199
178
127
234
238
197
173
108
234
183
181
205
194
141
243
166
243
212
215
159
181
214
187
194
202
212
113
234
151
166
135
201
154
223
223
217
117
176
213
184
151
173
190
147
200
189
218
216
183
183
210
172
178
149
194
200
232
187
164
225
229
169
216
178
147
193
204
263
231
198
208
221
173
204
186
187
145
217
219
249
130
206
236
228
223
233
196
244
184
155
168
189
224
206
157
193
174
146
216
195
157
186
172
244
183
241
137
255
213
192
189
191
139
206
180
221
247
211
163
238
248
145
200
209
190
239
198
158
213
228
169
203
177
209
185
244
211
214
213
191
207
157
198
150
202
214
188
253
209
188
153
225
159
213
168
210
261
193
208
168
198
226
180
112
207
172
185
163
169
243
191
152
233
241
216
227
245
191
162
242
193
214
161
214
173
198
185
215
192
229
207
191
200
238
290
273
220
154
191
210
199
228
210
203
194
190
249
245
140
172
189
119
242
188
236
176
149
205
243
163
217
230
179
181
239
185
222
210
193
203
199
199
200
270
144
191
152
245
226
161
169
132
239
193
170
202
220
140
229
161
198
203
185
165
209
185
199
169
184
193
202
234
148
229
139
226
208
223
226
157
187
218
190
214
207
219
189
238
229
223
157
252
170
150
151
188
193
228
224
220
235
198
240
237
226
169
198
189
257
287
163
219
242
220
192
213
187
187
245
170
199
186
214
183
210
227
174
171
202
186
176
236
176
154
156
161
240
170
211
264
244
245
227
181
206
217
152
218
240
212
186
166
248
128
187
261
216
227
196
223
146
172
197
205
249
120
199
242
205
158
225
182
205
210
234
273
219
226
190
232
215
249
219
141
196
229
220
203
192
174
167
215
194
260
159
193
198
191
186
217
188
167
191
203
191
124
197
240
252
214
183
184
223
209
234
166
246
281
227
168
198
180
130
252
145
196
198
213
240
193
197
200
194
145
178
166
237
234
205
217
256
210
221
196
222
208
209
161
222
196
244
229
175
164
200
241
141
216
207
179
197
218
246
180
251
228
190
185
236
210
152
123
207
184
129
229
180
231
162
144
152
229
136
252
216
145
187
244
194
218
199
284
184
200
190
227
237
152
245
141
181
211
196
137
142
184
226
236
229
196
166
254
230
198
175
192
129
246
161
155
196
158
179
199
193
157
215
196
149
202
204
249
227
165
142
231
197
214
185
203
207
211
188
221
204
185
166
150
237
176
235
170
242
150
204
203
194
161
169
220
145
216
177
166
285
207
168
245
212
209
192
223
247
164
229
196
202
259
243
192
215
227
178
198
138
234
226
226
204
233
211
177
198
225
215
218
195
165
213
140
202
207
203
217
205
262
116
219
225
210
245
219
180
220
165
194
175
143
264
231
243
178
194
223
183
158
202
187
239
197
173
265
156
242
206
141
224
221
219
173
207
184
184
130
232
133
213
243
207
189
284
243
171
188
195
251
203
177
204
187
225
195
217
206
237
174
231
172
258
207
223
181
227
208
238
229
211
223
159
193
222
203
218
164
210
173
290
149
239
245
200
191
162
152
184
226
150
197
231
243
139
174
148
204
178
174
201
207
188
195
207
178
226
208
150
172
214
175
198
181
203
234
220
236
155
179
165
143
175
242
236
233
195
137
210
172
222
167
203
214
177
240
169
226
243
190
158
215
181
148
234
158
218
202
228
166
209
262
200
241
221
232
224
170
194
129
207
231
203
197
294
153
163
198
268
196
217
228
198
231
224
238
226
145
222
165
169
212
227
224
157
200
210
142
212
227
234
219
243
221
231
207
164
150
236
134
190
185
220
167
263
245
170
174
149
194
225
241
243
159
215
157
198
174
185
229
250
118
243
186
194
202
261
240
181
244
215
224
252
265
137
204
230
189
214
202
172
149
159
220
140
177
137
183
183
182
204
212
172
241
194
136
220
159
226
210
196
181
199
217
233
203
184
177
168
156
197
219
142
164
173
165
242
190
179
259
309
228
235
214
223
205
223
155
182
179
208
181
144
182
149
178
148
180
191
205
97
198
136
171
208
164
245
214
238
182
200
196
151
203
211
242
163
201
179
255
186
170
191
169
177
239
164
195
206
173
193
212
237
220
173
178
205
202
202
166
212
188
239
239
204
224
155
152
181
160
183
218
191
157
216
175
127
196
242
163
261
200
203
197
243
219
214
220
147
172
150
233
179
195
233
237
180
226
202
215
208
168
244
190
198
224
198
181
181
136
230
248
187
138
217
197
253
227
208
174
208
126
175
208
240
207
258
184
259
190
200
177
231
202
181
270
177
268
145
162
236
131
204
186
212
260
197
247
243
264
250
186
222
137
140
251
193
175
231
176
201
183
265
238
187
203
185
160
238
236
223
122
192
142
220
134
255
204
201
212
209
183
240
214
247
172
224
192
199
243
209
263
214
198
184
193
247
196
197
234
174
187
224
161
180
161
224
190
160
155
207
225
222
228
214
142
217
211
261
209
228
210
125
134
181
174
207
211
256
184
212
161
189
219
250
184
233
250
242
188
156
168
138
163
284
202
231
222
189
161
236
195
200
218
182
175
198
214
242
168
188
213
176
182
183
157
167
210
184
161
202
244
221
178
183
214
209
231
184
213
215
184
161
201
187
228
209
232
177
187
219
195
206
244
154
196
249
193
234
227
151
215
235
174
214
261
252
190
209
140
176
249
215
202
174
214
179
255
240
209
195
226
160
197
204
162
233
163
240
191
148
219
155
231
211
159
201
125
182
191
215
194
214
205
193
179
197
203
100
163
205
211
262
255
214
211
211
243
206
235
171
224
197
198
193
156
182
241
211
178
202
240
200
218
222
285
182
241
234
215
260
199
187
178
156
209
215
225
231
149
225
164
164
231
259
176
254
131
223
199
197
180
220
183
273
219
130
247
144
158
168
198
191
241
260
236
160
198
243
218
147
233
205
219
157
216
246
179
156
222
213
191
154
183
235
224
213
208
209
174
190
253
223
289
253
255
144
253
212
219
228
251
241
173
234
251
226
212
209
241
193
139
226
229
200
163
277
206
220
231
228
226
248
181
183
238
233
199
224
243
231
186
246
211
142
195
169
209
168
220
232
211
150
214
191
167
178
177
187
224
217
192
151
202
179
198
197
199
273
133
220
207
206
204
226
261
222
226
199
220
217
211
190
122
223
266
133
233
176
148
228
232
154
210
143
245
238
204
209
126
210
214
212
261
177
226
188
223
174
218
209
227
199
184
217
145
220
191
221
133
207
236
175
231
174
226
207
226
210
217
195
202
224
241
152
193
178
117
210
122
215
239
189
159
194
208
244
173
200
153
148
194
134
121
170
194
189
184
208
177
252
240
154
154
218
209
176
161
242
231
204
242
153
190
215
203
196
229
214
212
244
229
140
224
142
149
262
197
168
222
212
159
208
129
186
221
174
212
220
183
231
269
144
198
197
173
176
206
184
193
145
175
175
216
245
195
212
151
148
158
125
178
199
199
251
208
253
255
191
179
225
231
225
143
216
196
187
167
171
250
158
251
210
188
210
214
135
204
129
184
200
227
206
184
239
168
233
203
202
227
192
256
223
176
139
206
265
234
239
135
248
241
185
214
224
129
221
166
201
175
182
197
185
212
141
162
243
241
250
192
144
195
252
213
216
182
177
199
197
187
218
182
207
229
253
237
216
149
181
218
223
232
167
150
209
247
158
203
162
213
173
208
111
155
197
213
150
167
252
227
224
219
103
181
233
153
147
247
209
268
170
216
233
198
197
182
196
213
241
207
170
192
180
257
243
226
186
182
217
191
204
188
233
182
181
190
196
135
177
177
239
152
190
186
217
213
136
158
153
224
202
188
213
142
229
249
249
198
157
167
225
247
188
189
248
170
177
244
154
170
223
197
219
148
213
170
202
225
170
166
176
227
180
192
225
228
247
230
209
203
195
230
230
183
176
129
199
196
239
198
224
218
177
180
235
197
202
232
185
246
198
138
150
227
217
206
177
271
191
167
275
232
158
224
118
246
209
258
257
261
184
123
198
237
191
191
178
166
118
248
144
229
173
253
235
181
216
141
154
256
197
163
196
167
257
220
196
193
146
177
280
232
186
230
217
217
252
203
223
183
216
191
250
211
220
222
226
189
161
238
182
182
188
209
139
233
223
171
204
213
188
216
179
196
247
253
233
225
205
260
166
225
165
162
222
200
271
165
200
192
269
216
156
143
218
241
239
243
180
208
153
232
264
242
212
230
158
234
169
196
194
222
183
175
208
165
230
200
202
189
180
211
162
180
148
190
224
150
222
142
131
242
206
191
166
201
191
223
223
198
178
226
285
254
206
220
275
209
196
164
215
226
210
161
232
216
208
140
192
186
142
206
201
210
243
197
181
97
209
207
217
181
217
172
208
148
260
185
254
149
149
155
193
230
206
226
239
194
159
204
217
120
173
191
136
192
195
217
252
209
188
219
198
198
149
217
221
218
224
204
179
197
158
210
200
147
242
178
235
272
204
225
162
184
182
210
197
198
214
236
209
234
172
189
153
216
215
198
129
230
164
247
195
189
179
240
207
158
170
219
217
206
189
194
203
206
205
166
215
173
179
188
244
185
214
175
194
155
193
205
142
214
147
192
171
143
250
207
229
205
183
219
228
195
242
218
254
230
225
254
211
225
228
181
196
169
202
183
217
233
210
264
267
223
184
221
204
253
243
93
224
230
213
164
193
123
197
265
226
172
232
255
167
209
191
184
157
246
188
200
207
220
206
202
160
131
222
151
196
223
157
195
205
241
262
203
271
229
177
208
220
186
199
144
216
195
185
182
242
205
249
203
194
191
203
180
245
225
162
218
189
262
187
191
219
258
199
205
228
232
200
223
139
216
170
199
235
278
205
157
252
202
205
205
250
244
216
168
176
211
187
216
178
212
210
188
218
210
228
209
178
169
177
190
212
183
226
226
133
225
177
235
214
253
144
196
174
201
169
206
186
203
231
193
229
242
125
218
232
163
200
235
246
167
127
266
208
193
223
251
204
174
224
237
201
207
205
205
173
241
227
195
209
267
188
225
263
170
170
197
119
233
150
268
183
231
189
182
202
202
160
116
249
156
142
197
181
260
214
191
213
173
206
106
167
215
144
129
216
224
175
229
137
249
161
251
221
155
161
138
154
160
169
136
219
170
180
180
226
233
155
244
255
193
221
246
203
209
184
241
220
224
164
190
204
218
178
159
182
181
196
198
232
152
222
230
185
195
195
161
209
187
197
157
204
120
213
175
215
234
201
233
213
269
213
177
144
157
159
207
244
167
146
177
248
180
190
182
207
153
184
181
217
216
179
156
133
232
166
242
199
220
224
239
234
148
143
179
222
211
216
238
216
222
263
185
223
203
162
185
204
233
233
204
212
210
159
219
135
214
214
217
211
236
254
147
263
171
241
141
221
225
207
147
206
202
164
195
213
186
185
224
228
173
230
192
132
225
171
173
128
227
218
196
186
167
287
234
257
193
161
244
267
241
232
200
210
208
143
246
257
125
155
203
145
218
247
226
197
232
260
135
215
189
224
248
207
148
251
108
180
182
245
248
229
137
192
157
176
205
185
161
206
203
168
188
213
202
157
228
149
263
211
210
237
224
208
134
212
206
211
252
261
241
187
209
171
175
237
201
253
244
199
216
145
244
170
233
166
253
195
194
195
196
186
222
194
224
185
242
193
251
210
226
170
205
138
226
264
199
207
205
168
232
153
235
206
185
145
127
152
165
217
235
204
160
226
219
209
160
165
218
216
189
193
163
221
189
196
188
206
220
209
212
169
165
174
204
175
213
195
176
199
191
206
154
228
146
208
171
148
225
195
182
233
190
201
210
243
115
230
257
261
186
198
218
179
185
179
229
169
197
214
236
237
169
185
193
204
187
240
253
152
225
270
175
171
209
189
145
129
260
213
229
112
211
242
228
161
215
180
207
198
223
216
272
162
170
236
161
265
232
201
239
201
174
170
186
226
154
168
218
192
191
153
224
228
188
216
233
159
152
187
183
208
202
183
213
241
248
195
222
97
217
231
162
187
211
186
178
248
169
216
130
179
134
246
174
136
278
205
223
129
186
201
213
221
178
173
210
197
163
227
121
178
202
175
159
219
176
208
243
148
190
258
249
183
139
231
141
171
156
220
222
219
224
190
140
217
203
197
218
210
221
154
167
200
187
267
165
174
179
248
148
248
204
148
209
207
235
203
170
210
199
175
165
265
228
220
240
199
186
199
198
246
209
131
175
152
168
192
177
232
175
191
160
235
160
205
154
225
186
201
209
225
188
177
181
287
116
224
178
256
220
222
165
173
250
258
221
248
259
150
223
225
190
229
211
240
195
238
169
222
130
200
175
218
168
203
226
251
167
199
130
243
248
148
182
215
162
170
205
236
163
236
170
225
154
195
236
210
158
167
180
256
259
230
204
140
216
169
213
148
201
202
169
180
227
211
259
226
206
125
195
196
150
197
197
188
219
175
198
250
231
256
200
199
241
241
192
200
195
144
180
269
237
208
178
208
201
225
172
163
167
173
190
220
181
231
244
167
149
190
178
173
201
225
217
148
199
166
179
226
168
185
205
229
229
183
232
231
194
227
163
192
219
194
225
226
171
250
192
208
240
210
211
200
218
245
225
217
180
215
185
206
138
208
232
121
267
189
152
269
179
245
212
200
160
237
179
157
211
238
228
210
200
186
195
195
237
223
168
253
193
177
248
288
244
167
203
209
233
184
220
227
187
207
179
186
176
300
181
244
210
176
215
174
192
220
194
202
180
208
216
210
262
206
163
219
224
166
149
176
180
183
202
203
222
210
237
200
184
195
155
143
158
180
162
150
174
191
211
266
254
192
159
198
227
179
206
192
200
221
221
262
150
264
175
221
172
223
225
206
183
214
218
219
211
200
251
193
145
174
180
244
147
177
195
173
228
194
205
153
182
193
198
238
164
147
259
152
189
218
207
188
145
189
201
146
235
208
184
201
272
189
222
170
320
214
203
231
228
104
233
229
238
223
160
215
164
211
285
185
276
151
138
241
227
193
207
195
253
185
187
140
175
246
204
221
174
272
220
188
235
221
201
253
180
266
193
220
201
249
270
174
194
185
196
133
183
232
229
251
212
217
187
227
190
231
234
216
162
246
230
155
136
217
188
202
177
174
170
219
163
200
207
169
245
182
103
241
204
211
158
250
190
235
225
124
194
197
206
231
263
183
211
176
176
225
185
191
163
210
198
144
249
194
185
204
173
209
143
145
221
199
217
192
202
183
203
180
185
246
197
246
203
206
178
146
182
198
157
157
118
206
178
193
172
213
143
90
202
199
212
169
205
221
140
227
175
204
144
176
148
215
148
232
270
209
234
252
157
239
183
213
196
147
215
140
175
130
217
159
181
225
205
207
187
255
165
206
144
210
214
197
172
210
213
193
182
190
159
220
166
169
162
142
234
183
181
199
156
195
246
256
221
183
224
144
183
241
194
225
215
196
191
159
185
252
240
125
172
224
257
224
153
227
207
258
207
163
249
210
254
211
216
251
190
173
207
224
185
228
128
211
206
269
208
167
170
169
212
211
162
211
185
159
232
255
242
225
229
203
214
141
217
229
231
118
236
197
154
143
224
221
164
229
143
204
126
218
193
171
239
216
205
208
220
154
177
191
152
200
204
239
258
189
193
167
196
250
193
243
150
119
212
155
216
117
186
183
201
228
180
199
200
238
237
165
189
234
151
173
223
209
207
242
187
177
227
264
169
199
159
109
219
176
237
237
184
247
193
192
261
160
223
204
205
174
215
217
218
236
168
168
124
219
207
252
233
238
232
215
217
163
175
202
117
221
192
168
209
201
186
250
204
235
170
181
223
164
207
202
207
190
172
226
241
145
244
162
177
205
217
222
181
169
192
225
228
244
196
205
148
239
195
229
239
215
213
207
185
218
142
247
201
178
216
208
151
198
249
192
203
216
185
253
257
207
201
240
226
215
291
247
227
176
266
251
149
149
149
177
206
197
219
275
200
165
152
190
203
162
232
217
261
164
210
250
239
224
219
203
185
264
202
161
160
170
140
167
127
268
236
142
218
162
215
150
219
217
274
159
231
171
218
185
201
170
191
241
168
213
260
156
214
213
235
203
291
235
147
252
159
163
155
178
193
183
216
243
213
228
191
130
243
206
191
205
212
206
124
202
279
210
188
172
270
218
247
197
202
188
216
191
170
188
227
284
216
235
227
188
231
192
207
200
180
131
163
168
169
230
226
146
198
211
182
151
174
181
163
197
236
191
193
138
150
161
172
169
118
268
196
201
193
173
147
241
138
208
139
232
165
154
156
163
216
175
192
198
220
213
199
165
246
215
188
150
216
161
136
195
181
183
171
194
99
212
216
213
210
241
214
291
175
159
201
133
164
245
213
185
216
199
142
176
236
157
195
134
160
115
256
228
166
197
244
199
201
238
208
197
119
156
165
116
204
211
193
222
151
206
234
232
203
238
198
211
205
174
237
240
176
267
213
114
188
259
219
130
145
160
223
237
229
174
228
198
260
192
212
255
239
154
192
242
164
168
185
158
174
207
182
195
100
230
172
213
199
189
215
190
174
207
253
196
162
297
162
218
193
250
193
251
167
239
173
233
126
226
248
231
164
246
198
214
200
237
229
219
189
240
241
192
239
162
183
202
227
166
121
192
201
225
230
140
198
202
167
239
154
178
176
194
143
165
207
196
225
215
148
185
230
206
136
169
222
186
217
212
191
175
218
219
215
195
201
233
230
179
283
262
143
278
188
236
186
214
208
197
203
191
193
199
190
189
149
247
172
175
184
188
241
209
158
276
183
176
229
226
206
177
217
165
184
210
183
125
144
184
178
184
172
201
222
203
215
222
220
163
100
190
222
181
223
193
178
192
210
191
238
170
166
198
229
218
213
220
188
210
212
234
217
210
252
175
217
173
184
188
202
200
195
240
224
193
192
223
220
240
192
229
212
158
139
174
182
184
150
192
212
191
181
225
244
235
173
205
208
194
242
220
228
184
257
161
169
205
151
215
191
174
198
199
214
209
227
190
187
232
213
177
221
222
176
118
234
232
278
110
146
134
210
200
220
178
222
188
126
167
205
202
189
214
224
168
201
234
172
224
237
160
192
148
200
210
223
193
198
183
203
203
193
166
184
283
176
134
190
219
186
210
226
210
243
171
122
168
248
109
181
203
221
147
180
261
175
206
242
154
147
204
210
224
202
191
190
199
220
248
165
242
237
202
193
153
223
188
178
176
240
231
206
252
132
187
105
199
166
165
236
193
181
227
214
180
222
234
218
200
202
212
240
209
194
169
252
164
215
213
231
204
200
168
214
201
293
172
261
177
141
251
216
180
216
184
220
181
152
216
193
238
211
192
161
204
200
186
168
196
137
233
218
179
197
132
233
254
157
195
201
186
210
231
160
175
194
223
195
153
207
215
190
170
245
193
209
187
206
179
208
221
193
174
141
162
219
250
226
162
194
197
219
217
234
187
168
236
224
232
189
168
181
197
224
202
191
191
173
151
207
213
189
151
185
183
196
270
189
203
218
235
164
139
235
221
185
173
188
202
139
132
158
216
270
219
146
151
228
158
241
189
238
185
257
171
244
165
136
174
224
181
105
172
197
234
232
207
194
223
207
225
235
209
211
223
140
251
175
227
211
269
193
210
127
202
179
204
300
181
162
169
218
215
175
259
202
171
188
232
164
214
172
228
216
177
194
222
218
99
169
204
186
221
187
200
225
177
174
198
253
160
192
150
167
217
253
207
251
181
172
202
263
175
231
274
106
215
184
234
249
231
224
219
205
169
172
213
163
188
195
168
146
235
197
220
242
167
200
306
230
229
254
196
225
168
216
183
150
246
196
197
163
217
189
143
228
95
188
150
218
241
227
107
267
162
226
179
227
130
216
187
209
218
182
231
230
123
234
199
237
213
277
217
196
222
235
162
214
211
213
214
213
254
177
210
251
208
175
191
160
167
216
182
210
220
263
214
146
224
156
226
216
186
183
198
180
235
251
206
224
195
193
201
178
212
217
198
200
252
219
226
232
248
201
173
203
129
194
235
190
200
205
152
191
155
150
208
219
210
235
197
203
192
198
131
202
236
217
177
178
206
212
242
150
201
198
218
195
169
274
199
130
198
208
199
196
169
210
184
147
216
154
204
150
186
189
212
209
204
166
197
270
226
154
199
199
210
130
176
185
208
225
219
170
177
217
190
189
184
240
167
207
191
256
240
202
268
245
135
110
220
193
208
156
145
188
152
170
247
199
214
263
173
176
156
233
209
185
178
141
235
191
189
209
224
176
179
243
164
174
183
225
210
210
198
190
225
198
191
227
215
153
163
207
217
260
180
179
207
198
165
134
152
213
203
220
255
220
211
177
230
209
171
157
201
204
219
206
211
213
202
200
203
175
207
195
178
261
286
193
147
210
200
190
163
220
222
208
207
181
266
192
163
270
142
196
186
200
204
205
248
177
225
228
141
201
205
195
146
193
160
170
195
208
203
190
164
267
197
159
255
207
159
213
211
147
209
234
194
202
131
129
146
103
164
209
236
167
197
171
190
211
201
178
237
203
206
202
153
138
133
151
189
157
257
144
186
174
197
187
224
146
184
148
240
215
188
209
185
165
219
168
201
206
205
227
181
220
209
264
149
202
157
216
229
196
196
243
226
209
169
224
212
212
185
180
209
186
194
203
196
235
167
196
185
226
217
156
287
198
167
188
165
233
104
168
177
170
198
219
190
194
221
157
162
188
196
260
165
212
174
233
143
222
233
220
181
189
189
219
193
159
209
195
187
155
250
201
225
146
177
220
161
176
223
210
232
224
187
207
167
155
179
207
166
210
222
183
187
155
115
186
211
186
218
121
183
159
220
128
203
193
206
158
206
185
211
227
225
179
225
225
208
233
213
264
217
173
226
200
192
180
170
197
193
221
235
244
232
191
231
230
158
217
206
202
282
144
225
231
194
217
166
245
244
183
283
205
214
196
155
251
216
188
225
164
188
198
189
181
235
146
182
283
211
155
239
186
186
174
203
174
205
153
237
219
163
201
214
216
269
190
232
162
177
200
202
206
188
171
154
210
220
123
207
223
204
181
244
196
246
216
272
206
192
176
121
177
180
179
146
197
196
222
131
220
169
185
214
179
257
214
175
247
209
210
230
175
153
173
190
172
145
286
213
229
214
221
188
188
207
207
235
212
245
164
210
218
234
162
153
237
223
231
217
214
190
192
191
154
197
209
117
163
225
219
268
186
165
153
210
159
242
101
166
192
195
158
190
194
188
190
173
208
202
227
200
221
237
112
216
198
181
225
185
177
207
204
184
203
188
222
175
227
210
191
171
186
198
223
158
220
203
195
199
210
209
152
219
157
212
174
194
172
194
177
129
155
237
212
200
216
193
197
125
228
183
211
184
162
195
237
206
183
163
222
232
170
188
261
171
185
201
233
174
208
201
122
274
152
236
161
158
207
151
161
208
156
199
226
174
216
223
218
195
160
167
201
197
219
260
183
192
165
171
184
234
153
176
226
204
273
187
148
219
191
148
278
209
215
187
201
169
213
221
195
159
260
236
220
234
211
204
192
166
177
168
210
244
256
151
138
207
213
280
181
146
210
116
162
165
226
211
218
225
183
223
179
210
242
130
247
210
194
219
259
245
225
170
225
138
229
167
252
183
194
203
230
203
159
220
223
158
189
170
264
188
226
205
210
187
177
251
142
199
179
164
181
245
192
200
212
245
209
177
205
213
187
216
213
222
251
181
249
213
211
179
198
186
243
205
176
156
151
221
212
244
163
179
216
188
230
189
178
254
117
198
199
203
180
220
188
204
192
210
228
138
179
194
222
203
221
172
226
229
205
189
229
190
179
151
172
181
132
198
176
165
182
216
190
245
142
206
198
172
191
257
223
208
176
260
171
184
228
187
174
191
194
194
171
234
175
202
242
123
125
185
188
185
182
152
205
265
245
197
234
222
198
150
240
197
192
216
231
208
233
178
194
135
209
139
192
259
191
253
227
237
141
249
182
229
163
196
263
210
118
238
204
190
221
252
195
186
196
247
205
152
216
161
176
239
233
205
225
214
228
215
199
220
202
182
165
187
152
179
191
180
216
175
212
287
147
227
187
255
189
213
180
239
206
205
210
161
204
172
235
235
221
227
210
175
199
158
180
189
246
236
180
136
207
166
221
283
160
176
195
161
235
209
204
237
203
142
218
266
229
232
232
172
206
181
129
143
234
190
133
241
188
242
254
221
229
272
195
208
248
161
193
145
200
204
218
195
159
153
177
248
200
225
252
200
232
188
250
193
151
244
161
215
209
127
197
270
149
188
184
256
242
142
147
183
201
215
194
122
136
246
196
214
163
201
216
217
245
156
210
142
232
178
166
181
180
160
215
216
159
223
199
156
223
222
132
212
243
130
218
156
203
159
241
213
216
250
214
214
193
280
215
234
219
218
181
196
154
198
257
245
222
226
223
219
176
181
216
187
170
181
206
176
215
151
188
128
219
209
242
219
237
137
204
188
165
209
229
185
186
156
161
209
163
154
180
184
173
234
146
273
265
204
164
229
275
148
165
215
261
260
240
228
172
215
210
158
205
165
196
106
236
191
206
200
210
223
232
209
227
226
182
213
225
249
224
242
181
204
173
224
166
231
215
186
187
217
166
183
234
112
133
232
255
166
159
184
179
217
203
224
207
148
180
238
233
166
251
202
157
213
157
236
231
247
259
215
235
158
238
163
275
178
225
197
231
206
167
225
227
213
229
198
194
202
196
186
227
194
216
233
207
221
208
148
210
261
190
238
226
225
183
156
197
130
190
202
222
82
238
233
209
183
222
163
185
137
157
243
190
228
201
237
251
173
192
227
146
202
173
205
245
239
210
224
144
155
219
217
207
266
169
219
240
241
189
186
187
219
169
208
177
141
168
212
225
158
185
206
189
184
197
216
176
222
182
215
191
212
218
192
205
179
231
208
216
225
206
235
191
179
225
157
139
204
230
157
191
195
187
184
236
236
169
156
202
177
164
165
138
154
217
195
132
173
147
197
147
242
231
242
199
141
187
250
154
218
166
220
201
201
251
165
216
211
240
211
188
187
191
201
192
233
192
190
195
135
237
175
169
222
254
231
264
188
219
222
250
192
130
260
181
187
244
195
229
227
254
189
200
187
216
240
171
242
241
267
148
219
251
208
157
224
208
235
208
280
230
159
231
198
248
150
190
175
194
216
190
207
227
222
176
251
191
220
204
187
188
215
218
190
215
226
222
222
198
189
192
277
204
173
158
226
210
203
215
176
210
177
165
187
213
213
271
197
151
239
250
171
193
201
218
189
160
242
176
168
192
206
215
203
231
207
199
175
206
158
231
228
226
214
202
251
206
203
199
152
227
145
238
271
241
178
178
178
144
256
214
193
219
237
232
231
213
208
190
184
208
209
165
226
204
198
245
172
199
253
225
207
220
112
212
204
220
185
126
166
231
199
180
179
180
163
154
121
175
186
249
183
201
186
192
219
151
159
170
187
120
206
171
227
160
182
201
261
162
184
218
217
229
161
245
169
152
190
173
130
277
214
217
200
170
216
206
215
148
177
215
187
118
241
214
177
216
183
244
229
235
250
192
211
248
195
176
200
243
216
130
202
167
180
183
202
227
217
204
203
242
235
192
205
216
149
110
151
167
192
157
232
230
124
206
252
183
191
234
152
216
185
218
209
250
150
236
214
234
206
263
156
205
199
218
235
153
189
240
194
189
196
233
169
185
225
228
247
152
191
276
239
129
208
173
194
237
258
240
187
120
224
149
166
115
242
208
190
203
198
240
184
210
216
197
166
227
159
197
211
216
167
242
252
94
196
244
211
204
178
170
188
192
262
200
192
202
177
209
185
200
244
159
145
151
194
156
208
168
172
261
204
234
168
188
166
241
218
200
247
234
229
237
157
160
183
184
220
184
179
209
205
223
191
246
213
221
156
138
212
168
214
204
165
163
234
184
174
238
224
254
164
185
200
166
152
207
164
134
128
214
234
227
195
222
152
190
197
264
168
238
188
236
181
197
198
255
220
153
261
183
248
143
209
248
231
178
157
185
204
203
203
162
199
83
186
125
183
213
236
214
214
178
188
112
221
203
194
233
255
223
231
226
142
132
200
175
193
242
246
149
220
235
287
236
165
243
162
235
207
177
227
168
188
217
156
217
221
210
180
199
207
243
228
108
237
321
211
199
176
189
211
215
225
221
162
238
236
157
161
192
165
214
199
204
159
185
181
193
183
185
224
227
194
191
243
207
207
181
154
95
189
156
209
161
174
211
238
201
153
168
182
165
256
230
147
163
164
233
197
172
236
202
237
172
192
240
195
245
203
135
231
184
167
203
186
156
209
192
191
178
232
218
215
229
127
161
221
234
159
185
208
175
247
208
205
185
201
275
173
131
235
241
190
159
134
229
192
157
251
213
198
174
204
169
187
247
186
245
227
161
207
231
223
176
189
240
170
157
239
186
212
126
217
208
157
262
141
244
224
246
267
195
191
226
207
200
265
203
250
202
212
243
223
172
292
228
219
241
215
218
262
219
218
153
224
201
237
155
185
183
253
255
202
149
256
214
212
182
149
250
182
185
199
239
258
183
137
202
170
185
203
187
131
187
176
202
255
169
188
209
200
200
213
241
173
195
185
206
172
180
195
199
182
176
220
168
153
106
213
189
259
161
183
267
253
173
215
225
158
239
168
206
182
228
286
172
233
232
194
184
197
248
180
192
199
206
176
266
214
193
200
193
185
182
111
180
163
217
201
242
293
185
194
208
195
229
102
253
181
162
174
208
226
235
215
229
169
235
228
210
154
177
194
170
186
167
188
211
252
196
186
177
235
201
174
207
202
219
186
170
156
204
204
220
206
275
232
107
208
196
200
156
235
204
244
220
139
203
194
184
197
229
193
123
197
192
237
224
264
207
178
202
220
259
222
120
200
202
179
216
150
229
188
179
181
232
218
221
232
165
198
177
155
196
204
213
209
242
175
187
190
181
189
210
188
161
171
206
181
175
259
215
153
212
215
237
245
138
246
179
245
201
174
178
222
235
180
144
177
184
178
224
187
189
167
220
210
172
217
235
244
158
198
199
165
203
175
172
223
248
262
116
207
202
247
216
236
188
261
166
167
180
270
225
197
161
205
199
191
241
244
146
237
186
237
238
182
197
228
219
191
185
219
166
270
227
138
243
144
176
212
182
196
249
222
230
169
177
179
194
196
210
198
212
151
193
208
209
183
238
223
251
212
154
194
227
225
187
227
152
234
137
188
215
208
201
236
134
224
210
210
224
147
195
214
119
217
156
140
176
160
147
229
169
217
189
268
173
225
161
207
139
232
167
201
168
243
175
240
217
218
196
197
209
208
270
288
211
262
228
185
228
166
244
180
206
227
169
202
195
245
215
186
177
206
285
219
159
205
227
263
202
223
92
221
234
226
219
246
131
234
185
223
177
218
223
161
192
206
231
205
162
157
228
217
184
179
215
205
195
258
211
188
200
229
173
204
218
194
221
239
204
219
233
167
194
212
200
209
221
134
187
205
179
182
199
281
256
258
249
204
181
227
175
186
247
217
214
204
116
218
250
215
187
258
241
236
254
228
145
216
227
199
237
169
247
189
253
168
255
290
159
209
229
167
191
227
174
166
186
137
178
200
154
142
191
196
185
150
180
213
191
154
205
174
178
190
236
168
205
180
125
199
177
264
176
228
199
199
138
176
174
206
169
182
173
227
193
199
138
220
198
183
253
233
189
184
128
259
186
197
169
160
167
161
232
160
179
147
202
250
174
182
186
233
217
189
254
224
208
247
201
176
246
196
214
193
244
190
200
229
190
182
167
238
191
211
198
225
205
175
203
218
187
229
201
163
192
192
150
231
165
214
231
197
218
155
157
190
167
194
186
159
175
206
167
231
185
190
184
243
203
169
234
236
187
182
200
223
189
194
180
191
192
234
172
191
184
161
228
190
174
199
166
170
242
230
207
210
215
190
181
223
211
293
227
186
176
171
166
121
240
252
176
220
239
120
284
172
197
276
170
245
233
197
183
205
196
195
252
190
255
223
138
207
203
206
260
208
198
162
223
184
234
189
185
220
147
197
188
199
180
174
128
144
198
206
197
200
180
202
147
182
207
256
278
189
163
225
192
170
177
211
242
218
246
218
212
156
203
147
182
208
209
166
189
212
177
170
166
210
205
185
223
240
159
161
182
221
203
179
158
227
199
233
235
220
165
228
214
184
208
238
192
180
155
215
194
153
181
211
203
200
170
209
180
197
213
189
168
176
198
195
235
163
174
176
210
209
192
248
204
189
216
203
191
139
192
253
187
218
216
225
171
168
173
193
248
157
225
221
203
158
183
225
242
191
167
240
230
183
192
194
188
254
206
220
160
210
187
239
246
219
269
180
190
159
208
176
233
148
209
216
249
231
146
187
175
229
215
173
174
213
140
205
195
211
188
201
261
182
183
165
221
246
203
193
183
206
212
183
158
208
266
183
200
182
217
188
212
155
166
207
208
199
172
176
237
254
133
171
231
182
192
184
170
226
216
168
166
276
239
214
207
136
181
242
203
241
188
211
251
161
174
244
184
184
131
274
174
257
257
158
233
199
195
162
198
204
219
214
237
216
166
188
161
173
222
231
182
195
148
190
246
181
244
214
287
225
195
141
223
237
208
213
177
213
239
173
246
226
199
205
225
217
228
194
180
228
197
191
215
176
212
223
224
171
224
216
119
209
208
216
149
142
206
167
192
182
145
171
180
147
218
238
146
248
167
180
196
180
230
180
240
174
260
215
196
212
133
221
178
211
128
141
142
189
166
252
200
198
206
189
121
199
185
174
211
126
222
237
232
202
150
241
158
189
279
233
218
199
162
188
207
247
172
227
190
184
237
241
153
246
156
158
174
199
219
149
240
238
234
224
204
125
214
244
228
188
118
230
198
216
176
178
180
245
174
161
193
231
153
144
187
221
126
207
208
156
225
247
207
229
219
200
195
247
147
163
200
221
244
202
220
230
198
202
117
186
199
210
172
247
266
197
256
178
277
154
140
165
231
192
215
232
136
151
227
179
239
218
188
199
178
119
233
256
194
266
157
183
180
164
208
278
274
206
247
207
212
207
252
177
189
236
185
158
205
254
229
161
208
190
227
167
253
227
172
178
173
204
198
204
242
177
136
187
198
178
200
126
247
199
220
256
226
211
235
262
165
216
205
207
228
208
164
239
187
232
203
286
245
215
154
162
228
224
244
206
151
217
160
213
220
180
209
219
217
154
245
250
157
192
250
230
236
246
236
185
217
256
271
157
162
262
139
132
273
170
206
239
158
176
188
187
227
199
230
177
207
178
251
215
154
227
230
210
185
214
174
225
228
211
206
220
151
112
210
184
155
169
221
235
171
154
203
180
131
246
226
194
229
182
247
197
183
246
208
190
274
223
147
242
204
254
200
247
170
275
154
199
183
220
176
199
210
189
246
203
145
191
163
205
192
120
161
255
252
166
185
186
195
98
200
184
188
195
244
314
169
249
181
197
248
230
233
201
173
154
130
229
180
188
149
172
119
227
222
163
292
230
225
182
232
123
177
243
233
192
225
218
218
225
191
204
223
174
217
178
169
175
182
190
210
220
174
167
212
153
178
203
173
171
234
180
260
130
231
212
205
234
227
230
221
231
156
170
220
248
155
100
194
233
266
281
212
179
213
156
154
223
186
146
204
234
268
225
186
212
166
179
199
210
204
215
154
216
165
225
282
172
280
224
273
204
152
247
213
160
249
255
249
224
215
202
252
233
176
165
235
185
220
156
155
227
127
154
140
186
201
187
193
173
177
135
214
229
180
192
189
188
191
196
216
195
216
181
187
190
201
223
163
205
136
209
250
209
117
215
224
223
157
191
189
173
157
155
210
228
177
199
163
215
259
189
230
255
155
249
215
202
223
214
183
195
223
210
121
214
226
185
214
248
192
225
204
151
227
173
215
174
157
234
142
182
146
227
171
231
234
253
206
175
247
191
190
166
200
128
191
123
188
169
230
194
203
155
182
192
210
172
239
194
160
199
218
196
200
138
103
113
201
241
273
217
211
176
164
142
220
237
179
143
133
197
149
208
244
207
167
140
171
162
224
193
182
250
215
256
222
216
157
217
238
162
174
184
175
159
179
164
213
225
168
230
220
239
210
169
172
198
171
226
251
236
159
203
221
164
258
130
228
260
286
207
199
237
144
192
242
208
192
193
184
224
236
154
174
192
180
185
211
212
188
131
237
220
229
188
246
247
173
244
248
213
226
199
174
247
224
193
195
163
208
141
215
199
157
251
237
203
199
229
111
197
204
250
205
235
219
254
194
205
165
176
225
168
179
186
227
235
249
177
219
185
197
262
139
211
189
215
171
155
202
182
194
167
232
146
162
248
218
243
175
241
205
233
182
171
221
155
269
163
240
132
197
210
205
255
235
190
275
190
194
234
153
192
149
186
221
178
141
208
196
197
235
140
234
167
224
204
221
143
131
207
260
205
196
160
192
203
239
146
206
172
205
197
190
208
234
213
177
194
212
214
205
216
264
175
225
197
196
260
186
279
208
209
155
237
186
171
208
199
191
209
159
221
188
147
178
226
221
203
172
205
214
240
189
150
201
217
214
248
208
235
211
207
226
195
220
152
216
193
213
236
179
145
215
216
232
151
153
224
175
203
187
161
211
179
204
243
175
214
221
180
152
147
209
206
146
189
214
220
190
224
213
154
180
218
184
183
198
274
195
217
133
253
173
257
234
235
273
214
217
142
183
218
188
215
237
207
185
228
124
128
155
261
196
190
159
223
152
159
210
223
185
162
160
198
186
158
301
210
140
211
207
214
195
232
153
162
179
158
218
166
194
163
167
230
249
149
239
276
238
188
166
263
162
202
133
239
185
180
204
181
184
178
231
175
150
175
138
201
186
215
186
239
180
247
192
183
226
241
214
229
264
206
210
195
200
192
157
131
189
172
166
178
216
218
204
223
249
166
196
133
149
213
201
193
165
177
218
195
227
217
185
144
175
234
236
224
165
263
233
277
155
257
223
220
167
235
184
202
230
208
192
211
192
269
230
176
199
177
189
150
186
211
198
197
197
198
193
167
191
203
151
192
213
240
166
214
247
112
196
223
192
146
172
237
159
238
239
159
247
230
234
233
190
161
191
249
158
167
223
157
229
209
216
208
184
189
81
156
174
232
191
168
235
186
191
171
172
231
229
186
199
207
240
211
234
195
262
154
168
194
219
210
197
181
199
176
150
207
211
143
193
237
198
180
214
175
213
240
139
166
176
231
184
149
229
224
153
213
221
213
170
240
191
239
207
204
218
156
198
175
224
255
206
181
198
182
202
189
138
197
243
228
252
197
165
190
213
194
224
201
257
227
227
204
190
228
198
177
205
187
223
188
168
192
235
180
186
212
212
192
232
231
165
170
251
210
178
172
126
171
142
192
228
201
239
248
239
200
170
191
258
211
215
235
221
247
222
179
214
231
202
216
183
159
214
138
220
197
173
228
178
250
140
204
191
212
233
146
229
191
228
228
249
191
181
151
250
188
187
151
210
219
222
162
118
172
181
185
289
178
226
214
241
240
188
176
198
194
185
231
267
227
210
216
204
157
141
264
204
196
181
247
224
205
212
216
249
173
195
100
198
240
230
185
219
188
226
213
156
254
207
205
148
233
208
165
245
196
195
219
214
211
211
180
215
163
139
229
188
129
194
224
185
158
254
139
165
240
239
212
218
153
238
169
225
223
179
146
242
168
241
187
222
154
212
185
229
267
258
210
227
213
192
258
206
226
160
207
208
178
175
235
202
215
259
226
172
226
191
129
201
181
227
277
220
216
228
212
228
234
245
259
207
169
174
174
153
231
208
166
191
227
197
265
213
191
148
172
158
163
217
211
213
197
224
249
233
205
188
202
197
189
229
165
180
238
196
209
261
215
211
133
181
178
221
139
225
248
194
169
201
208
176
219
209
166
213
205
192
154
187
215
234
150
192
184
267
142
203
200
197
248
195
108
164
176
221
205
177
193
161
188
232
164
137
264
228
206
175
241
190
184
147
205
194
150
223
177
217
217
152
260
211
74
174
173
179
197
246
185
254
132
245
233
204
203
235
180
209
216
218
199
218
173
180
220
252
227
190
185
196
181
256
200
208
225
181
130
245
158
181
167
246
222
226
227
186
222
186
172
199
174
166
235
201
217
230
241
128
207
178
92
230
253
222
169
144
213
189
162
141
173
166
264
235
229
220
202
261
159
241
206
234
224
176
252
159
178
199
211
192
238
244
261
146
181
222
227
266
214
223
177
133
227
254
200
223
224
222
198
200
201
269
247
203
157
160
207
201
215
147
222
228
211
174
189
145
213
197
154
175
213
228
150
238
169
199
215
249
112
204
229
186
206
237
231
238
273
248
133
180
220
192
266
263
261
187
236
199
181
186
184
235
212
172
231
161
180
267
187
216
229
195
234
220
186
237
242
170
247
150
198
157
168
185
154
172
166
177
197
214
185
160
159
202
237
241
175
185
205
187
224
217
217
164
265
203
197
223
250
191
215
189
192
198
193
179
201
200
252
211
206
187
179
183
236
191
250
193
160
221
278
218
243
208
193
215
174
163
266
192
237
153
156
159
221
158
219
244
137
191
204
162
190
226
215
143
200
216
101
157
158
169
141
220
158
249
189
238
253
218
251
194
253
167
227
208
212
219
238
229
257
173
176
248
207
233
191
238
184
248
190
212
176
218
157
233
198
220
175
207
198
190
102
235
197
147
190
169
216
208
202
156
131
270
272
160
151
229
138
210
216
203
202
170
200
227
186
229
236
219
201
265
242
166
246
149
179
239
217
226
202
214
223
161
223
208
193
180
185
276
198
162
170
193
187
208
239
163
194
207
232
180
202
206
191
217
187
214
226
222
155
198
213
187
207
162
160
197
189
237
278
198
247
220
209
140
218
184
158
238
228
155
128
206
225
228
210
202
221
225
161
152
188
163
181
169
203
223
165
238
295
218
225
166
147
131
222
158
203
165
184
222
190
223
181
206
227
204
195
167
170
187
121
203
179
212
129
201
204
165
213
229
211
217
211
259
244
177
187
246
245
190
131
194
181
211
164
237
139
213
255
203
223
168
204
232
191
254
213
243
216
158
200
234
251
295
214
104
195
186
172
203
188
219
195
206
217
263
192
183
150
248
234
181
209
152
196
215
251
177
174
177
184
230
197
189
177
165
191
230
167
198
209
178
191
125
237
251
237
154
214
141
195
131
224
130
225
188
202
194
209
186
210
228
188
224
241
261
100
210
143
138
122
204
179
199
213
187
153
178
201
234
206
202
207
153
249
170
239
136
242
264
231
228
178
228
161
243
221
228
204
234
193
171
230
229
251
192
189
196
108
253
228
199
183
223
149
211
145
152
220
162
134
188
239
135
234
189
185
196
171
243
212
219
228
205
221
208
176
212
241
130
161
212
127
219
153
210
271
182
154
175
258
237
174
234
213
223
203
242
229
242
206
192
223
243
209
261
211
233
178
241
168
227
185
236
223
197
244
114
205
200
188
220
209
122
241
176
233
200
225
239
198
205
208
213
224
231
190
172
204
190
204
208
215
162
160
199
210
220
141
196
253
221
171
210
140
225
151
196
250
183
231
208
230
199
244
223
218
152
171
169
199
207
171
214
172
229
198
257
243
305
257
201
207
249
224
152
195
208
205
244
184
198
201
214
196
171
207
217
187
173
138
164
164
189
185
151
152
194
224
233
191
190
237
217
279
229
197
177
167
235
172
207
188
225
237
214
248
221
96
216
247
212
227
195
197
257
238
166
168
197
217
129
124
125
240
169
207
199
195
123
154
251
223
172
216
226
152
220
267
222
255
193
217
190
209
241
183
222
231
207
265
215
168
159
234
193
257
195
199
199
171
206
235
193
163
186
189
224
161
210
181
201
174
258
227
174
229
156
194
246
216
159
193
180
227
146
216
193
209
223
190
214
217
197
185
183
209
179
248
198
148
211
251
241
225
206
164
255
157
157
203
270
230
221
224
229
216
209
193
204
207
258
233
152
223
247
184
174
229
230
254
177
223
170
169
199
189
206
233
197
222
193
144
195
198
190
169
224
193
217
207
189
233
221
270
154
222
179
254
230
197
247
226
223
202
172
191
215
164
175
170
203
208
207
159
226
245
178
170
156
213
248
184
184
155
198
217
242
190
177
162
182
224
205
218
203
239
168
198
218
208
170
218
184
260
230
211
197
161
156
236
220
220
169
226
198
170
156
191
197
179
235
227
213
173
244
165
220
242
182
154
125
143
201
180
190
145
199
220
194
209
246
240
211
148
212
178
224
220
194
242
192
203
180
244
214
139
194
133
181
220
199
193
177
171
253
204
105
167
187
215
187
163
198
189
194
136
185
211
233
240
198
123
196
218
194
183
192
185
157
157
169
235
216
220
211
199
200
233
181
184
187
171
237
214
212
241
221
222
190
209
192
178
220
240
233
234
220
234
189
253
144
213
214
210
186
218
219
195
218
244
250
186
248
190
221
206
233
167
240
206
183
175
191
162
220
237
193
184
250
204
210
186
203
207
208
197
248
148
148
227
171
238
182
258
165
160
202
186
144
196
234
239
215
199
195
239
185
203
186
152
232
193
177
186
179
186
282
241
201
168
117
259
195
236
227
189
142
202
207
198
253
196
182
191
178
220
232
176
251
127
184
194
185
158
234
240
260
187
205
205
240
227
167
220
256
130
178
139
210
202
219
196
183
238
184
200
156
210
192
132
220
123
233
254
206
202
201
235
174
189
189
231
196
193
252
191
230
245
228
181
228
222
197
254
182
192
164
216
173
176
193
190
195
204
134
204
125
234
196
192
189
134
206
179
175
223
202
274
155
247
155
209
208
180
209
137
145
232
190
231
238
169
204
246
186
204
245
172
153
254
213
166
220
158
211
247
180
186
174
247
150
196
196
217
238
207
172
184
182
224
193
232
227
201
155
156
196
189
198
207
252
170
234
219
257
206
226
209
245
241
193
181
207
240
191
142
172
132
176
155
223
176
157
189
241
170
158
195
195
153
159
215
186
203
226
251
242
207
139
211
224
183
217
175
139
224
211
182
181
157
203
173
194
166
209
135
160
164
203
180
223
238
218
198
169
109
210
206
181
170
155
157
212
126
212
247
238
149
205
262
212
189
195
170
172
178
169
231
194
218
237
205
197
139
136
166
134
183
193
194
225
206
257
195
227
167
265
139
209
134
198
188
256
228
221
251
143
197
222
227
202
198
240
251
207
181
224
224
187
190
213
210
190
217
197
231
224
176
212
225
198
201
237
213
210
224
159
194
218
175
105
199
200
179
190
154
185
157
151
184
179
257
189
248
205
208
236
218
220
272
159
161
204
215
148
166
226
217
213
181
189
159
154
211
255
255
181
205
215
171
209
197
181
202
216
182
221
202
219
200
183
273
157
187
219
146
250
206
266
141
198
237
253
160
219
236
222
198
198
115
178
209
205
155
152
192
210
213
230
192
237
210
195
222
210
274
195
147
191
201
227
185
112
209
214
238
226
186
171
217
158
256
227
210
223
237
139
203
175
172
157
137
187
224
220
155
196
213
233
171
181
255
196
167
170
231
227
254
225
212
247
206
209
210
215
252
226
200
180
226
246
113
216
214
218
172
195
138
202
193
183
212
256
247
239
239
202
250
182
199
202
200
243
218
221
234
212
143
214
198
223
222
165
238
175
176
215
158
182
201
189
234
175
177
183
195
233
192
190
148
218
230
150
225
152
177
244
152
184
176
224
258
232
209
171
207
262
202
234
139
216
220
200
188
159
280
178
177
186
250
134
169
202
197
183
206
252
163
178
140
191
229
164
224
197
219
245
156
179
257
178
174
193
203
200
191
201
238
166
219
236
217
205
166
211
217
169
225
241
157
165
232
188
221
197
231
166
172
190
174
229
192
200
196
181
229
218
196
196
199
244
186
193
189
240
229
238
157
165
166
260
174
239
174
201
218
211
246
252
174
181
167
259
217
195
257
270
196
247
230
224
200
175
161
166
197
157
220
196
154
216
159
121
174
151
257
215
234
206
243
242
155
254
202
175
203
205
237
218
196
260
220
163
134
173
199
228
134
197
221
273
143
201
169
183
212
211
184
226
169
184
270
153
228
249
160
205
208
204
260
187
189
200
211
258
199
218
160
249
114
193
177
255
161
180
191
207
256
149
178
202
182
178
238
178
171
188
240
221
207
164
165
146
191
200
200
200
240
173
218
265
253
162
269
155
200
115
260
187
246
209
215
189
209
193
214
209
160
212
252
227
167
222
190
228
193
190
163
200
214
210
234
218
156
188
269
197
183
227
210
204
253
258
211
147
184
167
259
210
236
280
195
266
239
218
180
189
245
216
206
193
241
163
221
282
216
242
206
224
213
194
209
210
171
193
184
160
206
183
218
227
200
216
169
228
247
213
239
249
177
171
207
255
241
218
157
168
180
238
192
199
176
194
171
123
246
182
239
183
208
237
198
206
179
145
207
201
256
259
281
196
188
227
231
181
212
182
193
199
205
269
209
247
165
177
235
215
170
224
157
168
224
260
236
187
146
209
237
120
146
204
163
264
213
212
178
234
201
234
240
206
179
218
231
216
246
246
191
238
171
248
193
222
184
208
276
264
214
213
257
230
238
227
216
166
130
215
205
248
218
148
199
210
210
229
215
174
198
203
182
190
143
232
198
171
176
227
211
161
243
216
216
226
187
205
196
204
191
152
214
230
178
185
226
164
227
252
198
205
171
219
264
180
214
199
203
166
149
186
265
268
244
163
181
191
160
222
137
247
217
214
227
140
199
227
228
233
233
216
186
215
265
172
217
188
199
239
241
185
181
226
156
209
161
232
190
189
200
216
269
184
231
161
178
203
199
138
106
185
205
219
157
193
177
252
244
227
223
176
161
206
209
208
204
212
244
207
181
171
199
144
221
222
219
232
258
126
220
182
251
195
170
229
206
175
209
235
204
228
189
254
174
145
261
211
194
209
189
135
222
176
236
191
167
182
185
245
246
181
148
227
238
188
149
196
167
205
217
169
191
232
152
226
192
212
159
219
154
233
153
173
182
202
185
217
232
269
219
175
184
210
180
176
217
186
150
285
135
213
187
151
274
122
145
254
241
197
167
149
149
174
178
182
176
166
133
157
199
232
206
180
194
225
248
164
227
230
244
205
238
162
179
173
278
181
190
226
220
166
202
228
191
199
181
144
189
202
195
205
202
214
213
222
205
206
214
136
232
176
178
182
223
257
162
217
173
200
235
214
167
222
278
166
189
146
194
178
238
155
262
186
220
221
279
227
230
167
131
211
236
230
194
221
142
197
188
179
241
190
162
253
204
185
216
169
244
157
215
183
229
188
159
212
194
237
195
170
243
174
164
216
155
159
168
204
207
104
180
164
223
212
272
243
226
182
211
185
218
217
194
145
251
160
213
249
261
217
219
168
225
201
172
185
243
245
234
207
206
215
182
219
276
176
207
194
186
202
193
169
240
169
193
200
240
220
147
199
204
216
228
162
229
208
195
209
170
258
165
235
222
187
159
208
212
221
189
180
154
246
158
213
216
209
188
202
206
239
216
207
164
204
150
243
182
187
210
136
240
232
234
221
169
246
186
194
180
237
199
209
216
246
258
209
209
256
119
169
213
172
176
171
231
146
197
132
147
214
231
179
177
278
118
169
174
116
198
249
204
249
174
205
156
152
134
181
206
209
266
234
242
167
259
204
228
218
161
233
147
239
217
196
236
168
200
157
214
175
225
194
192
258
203
145
172
195
236
272
210
189
193
164
156
220
165
110
141
230
211
263
129
186
225
236
221
175
217
183
258
198
191
159
184
149
231
202
196
199
186
191
202
257
197
261
207
179
187
197
181
228
250
243
232
202
151
221
219
227
168
221
192
215
193
170
209
282
178
226
287
212
200
191
231
196
241
168
180
211
197
187
223
170
206
109
200
122
212
195
214
199
243
184
158
149
251
272
178
222
234
222
227
186
194
221
178
199
156
220
154
198
242
162
228
187
207
206
170
204
165
197
206
221
227
161
167
186
248
193
158
121
238
178
211
226
158
167
197
189
210
229
218
205
186
164
221
230
190
256
226
151
248
140
220
251
203
190
226
192
173
171
170
180
218
208
182
209
204
228
209
185
279
191
190
200
234
174
178
202
202
242
180
186
91
246
232
203
235
222
208
168
159
246
243
204
226
206
199
221
193
247
230
262
161
214
212
206
215
159
163
239
214
267
200
152
156
253
225
206
176
202
224
191
161
162
286
216
187
203
153
174
157
147
129
217
222
231
211
201
205
213
203
118
211
166
173
199
218
137
191
166
169
167
224
244
192
141
220
189
269
166
224
221
219
215
246
144
219
239
195
240
207
198
240
174
185
185
183
232
197
242
254
216
182
204
168
207
222
223
211
198
229
168
182
215
178
190
212
185
210
208
165
192
223
183
236
205
221
170
218
218
197
223
279
181
214
200
218
151
230
185
177
130
206
180
154
199
209
211
197
221
271
161
187
172
224
161
188
172
215
225
233
246
177
161
218
228
242
194
226
177
171
215
217
206
177
209
179
188
252
181
234
230
192
207
185
241
142
217
166
215
253
245
183
223
207
192
135
237
202
179
222
178
192
147
204
200
226
146
162
192
113
242
96
157
156
178
184
220
202
202
205
227
210
218
207
224
160
135
234
114
149
179
200
222
170
290
221
226
134
154
200
187
119
156
233
225
229
231
218
191
237
150
290
194
192
203
226
195
217
189
161
195
199
216
238
152
215
171
151
248
210
205
187
263
198
199
212
200
229
239
155
246
251
252
181
215
220
201
217
173
228
287
207
239
193
174
233
221
261
116
219
185
161
132
210
192
232
215
216
240
206
159
213
221
208
190
198
186
135
179
184
251
251
264
216
225
186
235
206
180
186
199
174
144
146
124
184
195
107
197
213
187
160
186
222
246
161
234
222
227
203
179
195
202
172
218
238
174
187
236
211
241
262
178
195
208
205
214
254
199
210
147
159
195
197
237
195
175
250
152
192
280
181
172
167
185
162
193
221
194
179
225
247
199
211
183
194
243
209
221
247
221
169
254
232
183
154
217
235
188
193
231
174
242
208
264
207
254
169
205
194
130
231
278
216
158
199
236
246
177
177
172
245
180
109
257
179
188
141
181
207
114
193
219
276
190
186
179
211
157
183
183
87
154
151
167
214
162
180
165
172
249
191
243
194
178
208
184
221
142
151
162
216
218
242
237
172
221
206
232
110
214
202
108
164
212
245
189
210
207
225
139
190
227
200
212
163
250
188
198
160
157
180
216
220
240
220
179
170
195
253
172
182
242
184
263
180
201
198
201
216
210
186
215
207
233
230
160
235
176
229
252
169
190
120
229
141
192
249
173
184
202
216
178
226
222
189
184
273
214
240
182
185
209
158
226
198
184
190
161
206
244
204
172
177
184
121
212
160
204
199
181
177
190
199
201
240
170
278
193
104
231
184
249
204
196
195
285
189
214
116
163
163
180
182
207
184
208
234
225
204
182
180
187
179
221
161
122
152
143
246
148
269
207
199
246
240
190
256
193
108
170
217
256
186
257
197
222
167
221
215
200
113
221
214
226
231
178
246
250
185
215
234
202
214
227
241
184
231
246
221
183
138
205
218
194
173
147
220
187
141
218
212
162
185
243
154
162
205
156
167
189
172
229
164
226
197
184
180
248
200
210
210
242
170
228
159
133
157
146
158
237
200
199
288
194
217
241
229
162
203
200
231
196
203
222
138
150
207
217
191
194
180
210
205
207
144
198
236
146
156
165
179
183
141
230
159
234
153
215
213
227
232
241
176
129
191
214
163
218
225
211
254
228
229
216
218
232
197
174
209
167
254
170
255
240
154
270
228
168
202
163
235
218
205
195
235
196
166
147
242
214
219
166
217
217
194
148
186
213
238
228
164
178
178
161
155
184
220
169
152
204
230
275
182
229
234
173
258
153
225
159
217
156
255
217
254
155
194
196
229
219
242
256
223
194
177
219
146
257
184
152
215
251
159
218
209
219
199
176
198
181
251
162
168
209
188
169
207
171
143
222
209
157
198
171
172
154
191
180
197
128
179
255
184
162
222
224
192
206
167
236
182
280
290
188
231
165
241
207
184
250
203
129
182
202
234
257
166
188
216
228
160
199
186
188
223
153
217
239
186
139
208
209
185
225
207
180
219
198
109
221
172
224
200
145
245
143
185
149
198
224
226
202
132
138
260
200
208
198
169
192
205
145
235
226
223
211
178
169
249
235
199
231
147
175
261
200
207
131
191
205
177
200
192
181
256
161
213
213
158
236
198
227
215
216
186
180
254
199
207
248
188
174
202
129
211
219
168
203
217
219
157
208
244
202
209
242
205
139
150
203
192
267
132
186
206
215
206
212
211
190
229
201
221
150
138
233
140
170
172
110
126
248
190
194
156
186
167
181
166
270
215
221
261
165
194
163
184
240
162
230
194
190
196
261
182
159
196
212
260
209
242
238
220
186
215
156
193
158
180
199
189
193
169
165
253
249
240
230
186
255
180
222
217
256
218
231
183
282
228
185
181
212
220
210
202
245
190
182
135
159
159
228
222
197
136
183
198
160
223
157
184
239
247
186
209
192
191
214
218
204
182
213
240
242
202
170
177
221
215
192
223
255
132
216
199
209
187
148
267
202
256
213
188
179
222
208
166
190
131
174
204
228
185
219
122
242
186
211
207
268
203
170
183
223
251
149
243
226
209
160
199
170
254
178
222
208
246
161
110
125
197
213
165
160
124
136
121
280
157
236
247
164
214
226
189
186
192
188
270
195
162
218
154
215
206
180
168
274
186
163
233
225
220
107
187
174
237
191
211
168
163
162
184
182
184
188
132
204
203
185
194
145
235
215
187
225
217
239
204
204
206
259
230
214
233
194
185
194
195
260
168
190
196
138
203
246
183
181
136
225
212
199
212
229
288
269
244
141
153
229
212
210
280
220
209
119
206
239
214
162
196
156
183
144
197
181
209
205
131
230
158
250
252
236
143
191
153
173
194
258
231
204
199
184
195
247
220
233
133
202
155
234
216
212
188
227
162
230
171
219
253
208
144
171
145
212
202
261
193
256
222
221
214
112
219
171
206
176
212
199
122
262
191
229
195
197
272
145
234
188
207
177
200
204
183
225
240
190
251
190
206
172
187
259
223
221
219
265
172
169
215
185
236
175
181
136
162
217
239
243
200
206
146
246
168
185
223
192
195
199
159
170
241
215
245
183
200
137
207
174
162
246
161
229
235
134
243
227
113
183
231
233
212
207
195
138
164
254
167
259
227
187
224
179
142
193
216
258
164
236
189
214
146
216
237
250
194
174
185
237
190
167
186
209
237
167
218
220
193
238
157
234
148
187
197
167
201
223
152
221
176
228
225
184
149
201
228
258
183
164
184
217
204
210
189
211
189
245
248
154
254
197
161
194
191
185
181
138
170
275
125
212
177
192
192
202
269
235
215
168
200
146
163
226
232
179
182
209
189
187
181
179
163
164
162
199
227
248
279
235
186
193
275
183
182
217
165
237
173
231
182
206
252
220
247
155
177
209
170
203
196
206
192
230
190
217
170
222
156
199
244
202
206
165
179
236
217
190
176
179
256
176
229
179
237
237
194
202
154
233
224
178
256
126
178
179
252
263
229
181
248
181
234
185
245
187
201
194
229
191
197
126
216
204
252
208
230
157
224
160
234
173
155
138
216
183
168
198
225
236
180
212
195
213
167
200
186
172
211
227
204
207
180
227
239
191
182
217
169
162
252
249
187
177
136
220
236
190
199
214
223
123
203
138
211
233
180
208
146
220
245
212
207
103
227
241
174
222
191
202
221
227
226
210
141
252
244
245
191
159
208
181
227
202
199
136
249
183
198
232
245
137
217
186
211
224
188
195
145
246
205
246
195
129
189
194
195
242
256
126
163
182
245
172
149
165
158
163
224
176
207
176
192
242
183
161
169
194
225
250
230
180
185
209
152
176
195
233
216
209
161
174
148
185
165
253
171
186
242
244
186
256
205
193
240
222
221
181
197
158
222
160
220
212
140
231
180
187
188
219
263
168
207
272
238
216
212
224
105
241
231
228
212
206
180
117
192
193
185
161
198
200
251
179
237
177
176
196
185
218
155
200
154
218
263
197
133
214
212
185
228
197
165
164
161
240
172
158
236
196
159
148
210
196
176
174
167
154
187
224
173
252
241
279
233
182
180
207
175
194
183
204
205
172
222
189
165
115
153
261
183
255
164
179
166
159
252
190
219
164
180
194
157
209
221
201
182
226
207
216
207
209
256
179
196
115
191
183
227
253
206
214
218
116
228
223
261
157
260
235
216
160
237
191
191
246
177
177
242
238
173
222
207
179
203
200
189
226
185
195
183
253
167
159
193
211
211
198
215
219
186
148
197
177
146
212
229
153
247
171
180
251
273
169
209
231
185
216
172
196
180
163
203
168
191
201
168
263
158
246
190
217
222
170
147
207
227
157
209
198
241
208
181
186
230
227
240
215
203
202
234
178
123
214
129
204
137
185
231
201
183
210
159
156
129
161
198
258
205
203
158
231
193
169
189
230
199
175
156
191
186
241
228
216
214
213
191
116
183
149
149
209
185
231
181
149
198
199
244
165
161
257
199
247
202
158
224
207
153
169
214
172
146
249
200
202
223
216
203
249
264
201
243
201
210
194
231
207
218
205
132
224
181
177
179
238
218
223
234
219
193
139
211
175
217
122
195
173
223
181
224
154
177
247
241
230
188
181
210
156
169
141
204
225
184
158
183
186
226
147
250
159
179
193
148
216
206
142
225
184
244
197
177
238
199
190
244
208
221
185
169
190
219
189
171
178
115
129
158
121
183
193
228
260
180
162
139
210
215
117
137
225
203
212
252
197
189
193
155
180
279
225
240
212
183
159
183
201
170
207
205
214
220
185
184
204
202
138
205
240
204
180
207
132
154
191
170
202
250
197
229
255
210
237
225
202
234
197
148
208
213
153
255
244
163
226
168
139
152
229
178
212
208
226
219
205
200
178
207
224
145
189
163
267
154
212
130
166
232
201
221
161
164
204
160
201
191
191
223
231
213
235
205
212
251
169
209
147
203
208
206
209
232
147
178
199
215
271
179
180
200
209
231
192
256
228
199
208
211
156
195
196
175
233
174
88
261
192
188
175
192
168
203
226
212
194
119
272
222
213
218
160
176
263
249
210
206
207
210
184
157
243
192
182
181
219
167
176
172
180
227
244
217
171
192
186
212
210
220
184
177
192
161
163
216
231
193
140
217
191
195
233
192
164
161
219
157
205
246
225
176
195
151
224
178
211
139
209
212
203
189
195
173
144
184
246
214
148
225
185
227
211
214
155
202
208
176
219
116
207
238
123
197
209
161
194
245
239
233
189
167
176
199
184
190
197
228
236
205
196
171
185
203
183
200
138
172
211
202
171
170
200
217
255
207
251
236
194
241
214
195
201
191
260
192
214
166
173
158
272
207
208
203
219
224
184
235
174
161
234
161
179
127
200
191
171
203
174
213
192
235
201
235
194
125
196
144
205
238
197
213
155
200
222
228
248
207
194
192
222
224
235
188
218
249
248
196
251
224
208
261
116
197
220
213
244
259
167
183
208
172
159
171
163
248
250
189
141
144
203
180
170
186
236
188
190
232
182
165
227
201
247
182
191
149
221
211
193
149
236
221
215
193
193
190
170
196
207
147
198
151
226
235
136
181
143
213
213
200
261
184
137
210
245
152
237
211
204
191
216
226
212
201
166
197
205
193
240
231
170
177
198
231
206
256
275
233
241
227
186
153
164
272
229
165
236
216
205
196
224
184
189
204
134
222
195
188
175
207
151
257
173
142
218
147
220
164
218
143
234
221
213
236
171
260
192
188
229
149
286
165
129
185
236
248
132
165
203
150
167
248
217
237
220
203
208
193
225
206
189
174
175
174
225
194
214
187
142
108
208
206
209
178
174
176
234
179
197
235
193
176
181
198
209
209
190
131
197
194
205
220
202
184
235
200
263
241
262
237
234
209
158
260
258
188
215
295
173
241
241
207
211
228
200
207
173
236
141
226
195
171
207
242
177
193
176
206
245
232
202
230
206
213
202
225
234
183
195
245
205
243
215
193
237
124
115
194
181
146
206
206
191
187
199
251
189
201
264
244
143
205
144
156
183
210
153
220
215
192
218
171
192
229
228
171
229
167
162
197
125
159
234
200
136
185
218
192
230
189
198
223
164
205
171
185
241
227
164
261
185
214
195
172
218
127
209
234
185
197
233
176
253
170
236
272
210
209
236
209
242
193
172
253
202
146
286
196
193
202
208
192
196
170
220
187
196
188
206
164
190
269
198
224
189
195
203
184
156
188
198
205
156
236
252
237
166
167
206
198
235
238
232
170
166
191
250
224
210
297
168
154
176
182
209
166
204
225
155
178
180
217
240
147
204
222
227
188
237
198
186
223
193
240
197
217
226
193
213
204
149
169
171
203
221
195
109
208
213
196
230
203
204
172
192
215
213
202
152
222
230
206
217
166
142
157
199
249
153
248
172
246
241
188
270
190
210
205
214
225
213
152
219
220
225
153
216
197
173
211
227
146
191
134
174
160
233
149
192
180
200
238
213
220
197
227
265
157
244
199
250
207
192
237
234
173
178
192
221
190
253
221
242
224
186
261
170
190
180
236
240
183
207
188
164
174
243
177
189
190
252
225
161
174
214
141
213
209
258
218
219
274
203
201
175
215
161
200
241
191
202
229
183
174
213
144
256
213
168
199
181
144
163
188
227
181
228
209
246
193
188
220
188
171
231
229
188
157
195
243
188
174
251
198
185
201
218
238
206
214
186
227
164
208
183
250
187
210
152
134
185
200
273
193
173
225
175
202
243
180
187
205
210
229
185
147
195
204
222
171
191
213
260
216
131
238
206
220
173
250
153
119
242
186
175
134
270
183
176
268
163
180
223
175
212
206
214
150
231
235
236
232
110
222
167
219
183
179
230
238
209
167
226
189
207
199
203
167
239
219
242
199
225
205
234
207
182
206
163
178
167
188
245
201
230
196
206
202
253
204
216
161
185
208
176
200
188
189
217
244
233
153
194
267
184
137
159
200
154
207
196
158
193
182
253
232
238
161
167
224
80
185
190
201
197
186
160
180
178
175
211
189
177
223
214
219
200
256
170
167
171
167
198
197
213
187
216
174
201
191
178
203
211
193
190
149
191
218
163
175
191
131
186
226
214
193
233
212
199
157
241
229
243
187
209
191
178
188
143
219
231
208
138
218
150
183
131
191
223
199
165
201
251
270
201
199
224
224
204
225
227
203
195
93
228
183
233
148
200
219
195
192
221
213
245
209
191
256
235
158
212
153
208
195
215
213
200
186
249
189
209
240
216
181
223
159
235
180
220
221
213
197
184
245
236
181
197
228
218
183
232
230
213
188
144
206
172
153
167
188
217
194
194
210
234
166
184
218
218
195
224
209
219
191
234
149
230
170
194
176
263
163
239
158
196
152
251
159
239
204
236
193
158
257
234
225
211
181
204
222
200
162
238
198
200
160
190
208
165
187
184
184
141
146
228
180
190
196
182
173
193
185
218
242
211
146
188
249
231
194
179
136
201
201
203
227
174
214
169
185
216
228
171
242
178
240
200
208
209
254
216
289
202
210
154
206
238
196
235
243
269
213
152
235
217
181
183
174
233
239
239
174
219
141
242
234
179
227
172
213
114
148
178
228
212
237
180
238
207
191
146
182
286
236
213
158
200
176
232
174
240
170
227
188
181
225
230
226
296
157
186
138
221
136
151
187
175
129
168
176
183
162
216
243
193
206
163
156
212
204
249
229
218
204
157
212
188
174
249
155
209
202
195
210
160
164
175
205
151
169
179
175
270
223
189
252
200
199
234
217
208
159
212
211
212
193
155
243
245
184
236
247
129
209
173
138
155
227
192
205
194
207
142
233
202
200
144
236
171
241
224
174
238
267
143
201
206
136
192
230
256
143
208
202
178
250
223
216
151
187
122
180
142
154
183
224
169
230
183
138
243
198
232
167
250
133
195
243
148
232
161
225
198
117
144
180
168
219
151
189
154
226
224
198
160
147
217
199
206
210
173
197
182
256
206
218
221
204
234
144
192
233
203
171
233
252
190
162
161
173
179
238
235
176
235
134
197
198
208
243
187
246
234
214
233
124
161
231
219
217
182
175
256
134
231
228
233
191
166
149
200
218
150
143
206
150
118
185
146
128
191
237
232
191
200
185
172
193
192
223
204
203
147
129
191
222
110
185
263
169
190
126
216
204
194
180
183
201
147
181
251
198
224
188
198
195
231
238
175
234
167
157
210
215
143
196
140
113
270
199
229
221
192
188
253
203
188
237
208
127
165
218
201
153
210
212
168
275
184
184
167
169
239
226
254
241
192
189
181
174
193
245
112
168
222
165
202
226
186
188
248
162
222
189
253
214
176
196
206
133
120
198
173
224
220
235
202
234
186
195
184
198
173
241
223
171
222
138
196
216
217
222
155
224
234
207
270
249
227
130
247
184
133
241
153
131
252
231
199
188
243
194
193
221
231
165
228
169
248
137
164
197
234
270
233
177
195
191
249
118
219
178
274
153
234
244
191
234
223
161
170
204
181
205
207
221
220
245
199
253
217
231
252
247
210
200
191
190
222
220
167
150
207
165
186
210
201
275
131
214
222
187
228
243
250
221
201
197
209
226
204
164
172
182
233
196
263
171
219
188
213
190
214
222
235
235
210
266
154
247
182
208
159
233
137
149
133
195
236
175
153
214
200
183
189
188
249
207
232
226
210
183
188
185
191
183
167
236
156
203
180
219
137
190
168
226
196
208
192
233
206
251
204
191
210
185
183
216
200
247
207
202
215
170
208
213
208
170
133
190
224
217
201
188
204
209
174
176
241
220
228
174
201
231
230
205
170
231
245
178
195
188
181
183
206
214
273
234
238
225
225
215
116
192
196
162
218
267
178
174
176
262
246
213
172
239
196
153
197
237
253
159
137
139
148
193
221
245
164
141
223
164
215
267
207
191
195
162
211
177
176
174
221
222
210
266
179
186
128
163
132
217
174
222
194
179
204
211
205
237
202
251
187
172
144
212
168
226
242
172
179
188
200
179
197
218
192
219
191
204
254
253
186
186
200
212
255
157
202
171
142
139
140
177
208
186
222
204
196
223
206
131
169
248
184
151
184
177
122
213
181
213
179
167
158
184
183
282
201
210
289
246
207
173
184
195
243
265
212
129
198
141
180
229
232
205
210
215
164
204
140
229
152
170
250
229
231
241
157
160
211
192
176
188
204
144
246
221
240
230
186
223
113
199
198
214
211
254
267
219
158
232
164
186
222
200
221
224
227
179
191
221
217
196
174
255
184
203
233
242
189
188
237
164
184
221
240
203
232
237
176
169
236
249
191
190
130
196
130
168
191
231
242
221
194
181
223
211
216
253
208
259
232
160
178
247
196
197
183
196
239
131
164
271
233
205
210
222
250
200
250
211
120
172
195
159
284
201
233
145
210
219
280
142
187
183
242
176
190
148
209
195
178
186
241
170
168
190
198
165
216
215
154
194
212
197
165
203
160
169
160
221
193
108
164
155
153
211
208
241
237
188
239
225
172
162
227
153
194
190
182
193
228
251
255
230
191
166
250
253
232
212
254
159
216
250
191
221
220
222
190
205
169
173
195
112
202
188
175
209
185
150
152
199
166
278
209
211
249
205
238
151
152
162
208
132
158
246
196
184
209
180
148
171
293
217
196
238
194
204
268
262
123
262
226
216
220
126
203
196
222
255
217
215
166
215
180
257
200
188
197
206
185
181
198
224
216
227
179
199
156
199
234
188
172
242
166
157
234
208
150
197
165
161
213
167
213
193
211
232
178
226
186
193
182
217
169
221
219
190
232
184
192
227
189
187
190
164
165
195
186
235
207
177
211
162
242
175
216
237
226
122
225
182
199
230
155
208
155
243
203
175
173
186
247
178
243
213
184
191
196
198
220
230
161
173
195
210
186
212
198
240
193
214
211
204
202
179
216
169
206
180
211
255
219
188
165
247
191
177
185
175
179
195
189
238
190
194
133
257
193
213
195
256
222
232
198
187
211
247
181
231
252
215
129
210
203
250
166
204
176
267
196
215
208
180
207
258
204
206
205
192
223
207
187
226
182
227
169
223
244
237
142
229
209
186
260
152
170
185
205
165
190
204
162
159
241
213
183
176
213
228
215
220
216
251
227
228
155
229
237
196
175
177
203
199
197
192
218
182
174
204
244
187
202
101
156
207
283
189
229
173
205
151
198
243
202
219
184
179
235
228
212
269
170
185
172
185
166
172
164
199
179
226
214
200
189
211
204
201
240
167
206
152
220
181
239
211
262
229
199
217
230
185
162
141
237
213
271
180
245
189
173
187
169
194
185
236
198
214
232
178
176
200
206
174
206
248
142
195
185
177
213
198
239
134
240
211
196
156
141
191
193
230
187
158
246
190
164
200
223
209
219
241
196
191
190
191
245
213
211
238
182
179
162
224
213
231
231
196
226
158
147
181
261
175
223
261
270
173
213
174
237
116
135
206
175
213
221
234
169
151
259
159
199
136
249
238
115
199
169
191
188
165
171
181
204
222
189
150
136
194
266
239
198
184
204
238
196
177
222
246
237
155
197
223
216
261
201
227
158
183
214
201
221
156
204
133
209
225
156
262
206
159
256
199
142
186
200
166
230
202
251
194
220
193
183
219
171
239
207
224
188
218
268
150
222
220
219
231
166
223
222
235
195
195
259
187
160
202
210
246
210
207
234
204
251
204
203
228
151
165
188
213
181
128
245
200
199
130
242
179
214
194
265
198
180
175
216
133
236
254
167
216
226
210
284
252
143
230
236
210
200
181
233
206
272
216
232
176
228
137
173
196
212
193
193
180
178
231
162
255
232
144
195
214
230
227
204
239
153
189
164
168
183
152
144
118
184
228
192
187
242
161
208
196
152
198
201
189
246
233
171
175
146
204
239
200
157
211
200
207
240
224
179
224
250
178
169
202
202
196
185
219
170
213
193
182
184
230
222
185
206
224
261
241
230
212
240
250
222
178
223
232
164
243
207
156
194
194
184
227
195
225
232
227
196
198
200
187
211
199
167
170
236
170
181
194
203
201
187
233
228
234
157
148
139
164
187
228
162
176
238
203
187
199
159
243
181
225
163
132
255
172
178
201
188
252
183
173
201
256
207
254
213
215
236
126
217
206
230
224
255
195
172
213
195
194
221
217
170
245
208
204
219
246
250
177
228
205
203
219
259
237
223
210
193
237
191
175
241
188
212
251
191
192
183
192
240
151
228
271
186
214
204
247
261
190
173
159
216
220
222
171
191
145
270
246
220
189
172
143
159
183
210
191
184
174
233
212
233
171
241
181
224
196
195
182
222
152
127
171
150
236
213
191
201
247
218
221
214
216
116
190
168
186
168
122
231
246
204
204
141
192
237
260
170
140
199
205
150
201
140
229
166
185
189
206
186
182
256
237
242
196
197
202
169
190
221
194
176
268
169
240
98
234
181
232
200
199
242
205
212
202
182
279
160
235
198
182
219
178
184
220
136
211
287
167
190
154
238
260
215
193
187
170
201
260
214
221
97
201
227
193
202
168
198
233
193
198
187
230
215
238
284
174
242
180
263
224
235
177
196
175
191
270
189
187
205
189
175
250
195
207
208
182
175
188
200
242
147
165
163
207
239
204
208
219
164
210
197
227
204
152
198
233
222
203
226
221
242
189
221
182
168
169
192
209
207
199
204
237
204
206
219
237
211
264
145
175
207
264
225
170
219
137
188
213
199
160
199
162
153
161
225
241
201
230
232
259
192
209
231
216
208
160
179
182
184
235
236
218
191
196
209
235
120
138
225
194
255
250
209
210
189
192
181
185
217
231
199
214
185
159
182
198
214
196
196
151
142
188
195
203
157
228
230
247
177
211
180
194
265
162
221
232
247
217
192
177
145
222
214
207
249
196
146
148
219
240
231
186
277
189
219
245
208
258
217
224
195
137
208
152
204
134
182
236
197
235
220
194
254
223
155
202
246
222
232
214
202
244
262
218
129
196
243
196
239
151
245
147
140
264
195
166
190
123
139
157
180
242
142
193
212
228
209
204
201
198
250
175
210
150
193
233
201
211
194
203
203
192
199
220
191
204
193
203
213
178
175
191
158
199
197
195
202
172
200
215
189
240
191
212
216
205
180
236
264
201
218
249
138
180
210
283
245
271
201
225
245
222
173
179
172
292
247
210
216
206
167
185
185
207
193
197
275
244
220
161
163
209
221
164
282
206
131
238
226
174
209
179
172
242
139
171
175
171
269
176
175
213
205
150
197
159
227
195
243
172
209
141
193
195
234
189
197
163
213
222
190
236
136
162
165
184
209
165
104
222
241
175
215
178
170
174
214
161
211
169
144
156
213
247
236
188
233
212
196
242
232
200
193
194
186
217
145
243
215
167
231
188
174
218
260
195
161
170
271
178
210
203
206
202
166
230
220
162
207
260
188
143
166
207
254
159
205
261
255
229
156
251
176
181
233
162
149
219
182
168
221
162
239
173
252
189
161
190
199
182
200
206
228
237
175
197
151
275
244
190
175
201
267
224
155
180
151
216
164
183
218
259
180
209
212
189
134
199
161
183
142
217
212
204
109
153
187
218
210
170
168
222
150
198
176
215
195
208
146
237
194
191
182
171
178
200
238
140
193
196
205
228
96
139
213
185
186
178
207
213
199
201
218
221
214
227
207
239
208
213
152
224
186
198
187
196
210
205
221
226
203
262
182
186
224
199
239
230
196
206
189
192
269
175
198
223
185
236
250
193
226
251
200
181
197
250
180
195
228
223
233
219
222
116
158
232
249
240
226
150
188
170
216
220
197
157
232
184
190
209
198
248
232
241
166
237
175
255
183
161
175
177
156
225
247
223
143
170
169
200
184
213
142
206
216
198
128
181
195
214
177
233
242
290
248
219
242
230
172
251
173
198
210
191
264
217
229
170
229
140
160
214
199
226
215
217
180
120
199
237
154
195
196
134
225
234
206
221
161
152
198
182
272
224
242
249
153
200
222
243
245
192
251
202
208
236
215
159
272
227
222
211
208
155
188
222
224
209
233
174
218
243
163
207
137
235
211
212
161
216
156
173
198
246
179
154
258
250
201
233
206
216
218
245
221
183
203
179
198
155
255
196
215
196
184
226
170
213
225
219
138
240
238
199
216
141
138
143
182
205
207
189
189
202
173
230
203
178
194
224
176
192
251
197
160
254
246
156
194
188
222
202
186
167
169
152
209
162
150
184
196
206
191
157
251
232
216
214
191
212
200
167
166
234
210
207
225
162
250
213
182
183
177
159
207
180
186
222
156
218
235
242
225
199
265
155
196
150
205
205
207
216
279
234
226
223
202
191
164
229
226
236
179
173
220
173
205
210
177
196
221
194
219
176
149
235
195
238
223
182
267
269
202
217
232
270
140
179
214
129
192
185
136
236
238
227
191
218
158
211
155
208
236
189
236
96
247
169
167
229
161
187
153
234
166
184
182
188
158
188
209
217
179
249
210
173
191
204
136
193
202
196
209
252
212
136
215
231
181
179
173
201
231
143
197
197
210
240
112
239
144
180
183
221
206
237
247
217
154
195
259
187
226
214
170
193
182
183
229
242
247
218
177
221
208
229
144
204
250
178
196
205
171
221
209
224
113
170
240
236
182
197
200
260
145
175
241
226
228
179
205
208
125
227
208
171
199
239
202
142
284
222
230
200
174
185
180
152
187
211
219
224
196
244
169
179
299
232
221
224
133
124
191
194
110
252
194
161
219
189
155
196
197
175
153
144
203
172
211
258
185
223
244
199
235
231
206
220
261
223
171
196
156
202
177
184
192
169
186
302
200
227
165
248
250
133
213
192
157
206
190
229
209
191
194
213
242
139
212
238
144
190
233
186
134
128
172
174
174
208
289
150
220
211
233
197
200
196
210
216
191
216
228
198
208
226
153
235
109
224
215
198
156
211
180
214
198
226
208
186
193
266
131
178
215
142
205
237
215
220
213
207
127
191
226
203
117
220
215
257
202
267
198
172
233
264
171
130
193
194
202
202
235
193
252
182
180
218
271
252
155
140
255
174
208
199
189
215
231
205
224
197
229
235
213
238
238
235
189
199
187
168
197
234
191
170
161
137
169
174
238
188
189
207
151
215
247
223
267
251
168
180
170
137
193
215
224
203
261
215
237
239
163
137
255
185
159
205
142
190
222
199
160
164
160
198
217
155
255
192
159
244
169
271
250
226
253
243
241
164
151
192
233
273
206
190
199
231
170
211
158
191
223
200
218
211
185
160
176
180
220
181
221
136
237
220
202
137
151
167
167
217
253
161
259
215
208
233
187
195
251
232
182
225
223
241
133
163
197
211
191
184
172
230
224
219
194
185
203
212
200
175
167
272
197
169
176
163
199
157
238
261
158
199
205
198
207
180
235
284
160
185
197
225
187
195
208
207
168
145
166
201
265
203
226
264
191
235
212
230
230
148
209
300
206
178
186
251
168
172
240
201
261
248
166
185
241
150
210
172
259
213
229
111
228
196
220
209
216
270
175
164
195
147
218
229
123
198
213
147
204
223
228
191
217
203
214
189
209
110
200
158
190
246
151
161
223
194
222
200
234
179
239
158
245
194
190
190
145
191
225
216
227
195
238
189
229
238
182
242
163
142
168
189
180
278
187
215
201
271
212
255
218
217
162
168
169
168
263
208
204
174
177
212
196
230
205
170
174
177
189
214
196
220
218
232
138
213
238
192
180
196
210
254
153
248
187
216
225
81
213
238
150
196
174
145
194
150
143
269
136
181
210
227
273
204
228
213
215
245
219
162
174
182
230
183
187
196
134
198
223
175
242
182
173
193
199
209
235
228
223
141
166
203
210
187
207
217
141
207
225
246
177
220
265
224
193
180
177
198
195
175
221
158
226
242
239
265
139
172
196
194
179
278
196
218
251
246
189
201
229
207
221
202
227
231
118
181
155
160
185
172
180
189
238
175
198
195
251
249
190
188
221
294
211
184
195
141
146
237
201
180
171
129
224
196
164
197
229
211
166
181
224
224
180
230
163
157
128
167
173
159
193
212
263
193
169
220
169
251
220
189
190
152
165
147
242
213
149
173
146
197
133
206
185
248
217
171
214
142
206
214
200
229
181
203
224
234
179
232
178
203
197
219
246
180
194
147
189
186
241
231
216
194
199
142
234
264
199
263
186
179
251
176
198
209
143
219
198
198
132
204
198
183
177
172
173
245
211
208
210
252
156
153
218
194
208
210
221
190
261
262
177
200
144
215
233
203
159
256
162
181
155
202
157
169
201
231
155
224
271
220
230
249
140
216
262
196
197
205
224
118
245
201
255
266
216
229
213
273
162
213
229
260
244
188
218
213
212
203
202
202
147
239
252
237
208
114
235
187
239
191
192
184
244
193
182
213
187
158
180
173
194
195
201
231
149
241
173
166
208
260
179
206
180
263
167
201
184
152
178
171
166
194
255
188
162
209
210
210
200
203
179
218
266
161
202
227
219
198
153
218
203
215
177
226
193
234
268
221
202
209
183
214
198
187
243
183
202
242
158
243
206
205
208
225
170
187
170
236
248
223
199
211
232
184
206
209
190
211
229
210
233
190
224
246
249
254
202
244
176
203
198
181
115
241
227
220
223
254
175
276
206
216
181
173
237
208
217
209
213
202
216
165
246
141
219
244
171
227
168
202
212
229
221
212
184
211
190
218
239
171
167
237
241
237
169
145
189
161
229
151
214
192
226
170
213
209
151
157
180
220
225
184
238
190
206
182
194
230
132
211
221
187
194
193
260
148
196
180
229
176
241
166
192
183
202
193
159
139
244
230
252
181
263
211
217
203
197
177
141
220
210
234
219
246
233
195
204
207
234
243
156
220
167
143
162
184
143
186
223
146
263
241
213
146
205
190
183
207
147
202
220
218
195
198
181
201
247
212
160
240
236
181
196
210
214
199
121
157
281
242
243
204
225
192
242
183
131
220
194
200
180
248
214
192
224
177
189
149
220
198
189
203
204
233
190
223
189
157
204
226
186
239
231
227
226
212
253
177
197
212
178
208
213
188
244
184
167
181
179
196
223
273
206
123
218
228
195
218
164
205
246
208
260
232
201
156
252
200
147
197
266
248
153
98
170
240
216
217
225
216
115
164
213
179
229
206
184
255
211
166
232
177
191
272
161
205
201
192
155
200
170
214
201
238
237
221
247
141
237
204
164
150
222
237
240
176
222
94
266
181
252
160
147
190
259
227
184
177
157
255
226
173
171
222
173
212
161
216
122
177
223
197
182
240
218
182
197
223
210
241
110
290
215
129
159
235
233
248
160
192
159
242
148
222
250
183
245
227
229
207
217
207
248
254
199
133
221
195
135
238
243
202
264
207
124
309
227
202
269
237
263
236
205
215
189
166
252
180
112
173
213
212
199
218
218
194
239
165
163
227
223
227
243
172
146
236
196
224
259
205
171
253
197
229
252
225
233
176
183
172
158
210
226
188
221
184
225
175
165
199
218
230
189
213
250
210
162
219
145
145
230
184
223
216
200
170
180
226
202
235
291
206
165
261
205
157
156
233
203
201
194
221
196
210
191
275
124
213
171
268
248
201
193
189
229
205
137
208
167
250
210
175
237
199
202
221
183
147
189
235
201
169
150
182
151
174
142
201
231
155
196
271
176
212
262
204
202
214
157
175
198
181
204
229
246
181
299
160
255
247
215
241
214
179
265
158
200
179
236
229
190
175
269
164
223
154
210
191
165
237
218
169
148
175
177
261
206
217
148
155
199
152
192
227
257
151
257
228
254
195
167
187
187
190
170
247
221
177
130
246
176
250
177
182
156
193
220
208
245
230
264
228
223
210
251
225
162
206
157
229
235
193
185
230
173
170
167
245
175
152
221
232
215
248
206
195
216
194
182
190
231
268
232
159
175
178
213
182
207
189
171
212
209
162
176
229
181
209
172
168
155
207
228
205
227
245
199
175
185
173
212
256
198
189
167
206
181
252
173
189
201
220
253
221
184
242
133
165
227
169
158
176
281
164
185
203
199
161
234
249
263
159
193
224
200
197
219
125
100
239
188
204
195
179
210
233
189
210
191
126
164
179
211
254
220
240
218
233
184
160
241
174
240
216
233
185
230
195
190
158
153
203
191
188
237
223
216
158
286
199
97
173
184
238
174
174
204
215
196
259
206
190
171
178
237
140
236
185
209
266
207
218
227
169
245
202
191
206
220
208
235
145
188
158
157
205
215
176
211
209
161
203
199
187
226
269
216
170
243
251
160
165
249
192
178
178
185
174
163
143
194
207
194
166
210
250
189
204
211
243
174
214
197
242
230
209
110
225
233
215
257
158
124
154
216
205
129
203
253
182
198
195
195
196
166
208
195
189
225
231
187
239
277
212
175
147
197
224
150
231
236
156
198
206
216
211
194
170
164
155
205
170
197
188
196
230
224
312
227
218
294
210
192
184
203
174
172
200
188
189
173
216
209
230
204
180
188
185
175
214
204
135
191
189
201
235
224
150
236
145
213
207
222
213
187
225
202
204
204
210
226
160
74
229
196
170
157
207
192
212
141
183
221
208
178
177
187
158
200
244
202
176
250
198
122
129
242
173
171
199
166
220
205
190
243
176
240
150
250
257
163
192
225
244
122
177
235
219
207
211
169
236
140
212
228
195
223
229
239
212
233
203
167
246
242
213
192
134
169
217
224
183
135
128
197
174
220
180
152
125
225
185
222
210
196
150
258
208
229
252
249
123
207
239
151
257
182
202
256
215
202
166
187
177
241
229
217
161
154
233
223
162
282
236
258
151
191
172
248
176
245
181
159
221
200
161
191
171
196
168
265
278
189
194
159
256
183
157
195
224
230
190
213
204
195
205
159
223
218
212
240
148
196
218
165
131
216
182
185
194
214
176
195
163
181
169
222
192
224
199
188
263
177
209
217
240
178
210
168
248
180
195
196
187
162
146
169
189
179
172
241
245
214
212
277
165
231
186
241
193
212
246
191
172
177
221
209
149
136
198
239
274
142
160
204
103
228
188
203
182
113
236
161
232
205
189
226
249
212
208
237
216
163
219
227
229
242
199
231
191
180
175
184
234
232
212
235
228
149
247
115
151
234
230
182
262
109
224
230
194
179
222
189
196
172
220
235
179
169
234
168
127
193
174
221
195
162
185
161
261
158
198
186
216
259
190
163
202
236
242
194
160
216
159
227
178
177
184
240
216
173
220
187
163
213
165
194
198
151
192
193
165
220
213
187
210
220
174
228
199
210
198
251
206
280
200
219
187
234
205
188
234
156
188
122
231
215
181
208
221
210
226
178
182
231
201
216
191
245
252
185
158
246
220
222
237
239
252
164
130
247
205
157
196
201
166
230
147
169
197
191
206
190
210
208
220
172
261
143
209
243
208
177
159
189
229
200
209
155
171
239
191
212
275
162
253
249
183
239
191
180
185
173
151
142
229
221
185
187
163
251
223
229
185
230
230
199
181
233
230
184
153
265
156
209
233
242
240
165
203
181
224
191
212
217
120
220
194
181
130
233
236
208
222
214
225
212
172
219
190
159
186
160
152
159
176
231
155
198
228
209
193
275
245
218
216
170
137
184
166
134
204
239
224
216
204
165
213
204
182
168
197
217
143
191
201
228
224
158
198
168
146
236
248
204
178
205
174
193
157
214
245
228
224
170
185
218
178
175
186
182
195
191
121
232
200
141
223
226
222
169
209
193
153
188
222
240
173
154
147
151
204
213
177
255
146
208
209
218
129
258
230
140
228
150
251
162
172
189
248
145
215
183
215
230
173
237
210
202
172
208
178
175
264
195
191
190
203
133
250
222
209
242
193
209
179
253
161
221
185
209
214
221
173
198
253
157
191
132
221
211
150
259
201
178
155
215
199
201
180
194
207
102
124
167
230
173
225
170
230
146
229
266
162
201
159
255
170
122
207
229
220
129
236
218
169
238
205
161
211
200
173
216
190
209
211
238
215
259
216
165
175
224
200
245
133
124
253
187
171
245
203
258
219
192
155
240
246
226
161
225
213
251
199
180
217
210
197
248
253
172
194
207
281
186
192
146
213
174
196
227
220
235
182
182
226
192
159
174
159
227
225
226
239
203
192
235
227
201
179
244
107
232
152
275
209
183
183
191
175
228
141
203
181
238
198
185
135
205
219
258
137
136
229
158
207
238
202
183
186
185
218
269
195
149
215
153
216
190
204
163
209
183
187
159
270
215
195
205
234
241
239
228
204
195
177
232
191
150
172
193
140
166
166
221
195
212
169
219
258
203
226
238
249
199
191
212
241
235
196
188
221
195
110
205
188
199
205
213
200
183
210
236
204
239
218
175
237
228
182
226
210
230
279
199
135
213
178
223
181
227
174
121
225
230
210
226
211
209
238
194
185
220
232
221
177
233
214
197
180
206
197
169
234
167
247
240
215
185
197
243
239
229
165
155
256
145
169
212
239
175
214
211
193
187
208
199
175
116
165
219
236
234
212
174
200
168
213
259
200
208
196
187
171
196
238
205
168
278
250
191
222
186
182
218
182
113
198
180
210
178
138
168
208
194
228
223
155
248
185
228
179
185
151
266
208
192
187
238
205
248
195
114
221
177
239
226
219
123
177
189
150
209
186
242
151
188
155
192
275
180
221
209
175
174
191
202
247
243
191
228
112
240
187
162
193
174
194
187
252
202
225
166
211
159
153
173
157
200
186
211
209
181
197
236
203
191
257
232
158
194
237
255
233
217
268
187
184
170
203
245
206
160
258
181
204
222
231
238
179
181
212
178
262
182
160
196
240
213
235
203
202
232
214
154
252
198
200
188
224
216
152
208
251
202
181
229
235
261
195
216
175
219
211
205
187
149
209
188
226
186
273
267
205
238
211
241
239
193
144
197
271
181
177
225
209
165
212
205
176
202
189
154
267
186
239
194
233
184
192
216
167
216
193
220
269
217
213
198
245
177
233
242
174
212
207
210
192
176
212
162
189
227
207
239
206
210
181
160
179
253
187
194
182
175
171
140
155
204
186
251
179
213
147
186
211
135
149
196
219
235
224
195
212
248
191
231
183
205
193
201
292
181
225
213
209
223
195
170
253
208
115
249
209
162
247
222
172
159
134
176
189
180
217
115
216
200
134
177
193
196
215
180
158
267
241
188
189
218
217
236
210
169
142
262
179
155
248
246
220
234
199
163
153
209
230
216
230
214
208
194
182
192
208
190
142
192
206
155
205
206
156
184
167
177
167
223
224
209
223
242
207
220
222
220
157
187
219
222
221
210
206
167
235
284
201
210
226
242
219
241
122
192
219
179
250
204
228
218
180
234
149
225
135
168
168
211
249
264
200
194
230
214
165
192
221
147
175
121
242
201
214
233
193
252
199
204
191
171
235
199
145
176
194
218
177
193
216
195
182
211
186
225
191
196
230
192
125
177
173
171
236
124
181
252
162
205
254
243
228
236
237
225
217
150
200
214
221
196
177
196
191
206
237
185
174
160
151
250
185
180
182
242
169
170
206
188
187
213
232
200
85
247
192
226
163
170
226
220
201
204
220
187
124
181
238
173
212
199
203
213
224
173
220
192
237
177
181
191
175
221
217
245
129
171
221
239
226
164
134
198
149
209
253
107
181
181
208
189
214
164
192
206
239
198
230
159
208
212
210
219
193
189
208
178
214
222
222
198
234
170
232
259
183
199
204
188
208
175
153
207
228
184
176
182
177
176
184
225
158
194
183
173
208
134
144
193
173
186
234
98
206
167
132
246
225
219
225
242
192
235
158
178
161
209
208
228
114
197
223
180
242
198
207
157
193
162
221
193
243
216
172
215
263
132
244
171
246
153
209
206
188
188
205
167
198
195
216
242
201
209
218
179
224
235
224
199
182
158
208
234
209
203
193
240
214
264
192
208
179
183
140
227
141
213
147
222
204
261
151
228
158
211
193
182
137
188
272
220
148
185
174
239
179
211
192
245
233
120
169
179
224
207
200
217
216
204
202
162
203
231
174
169
168
194
119
242
138
167
172
214
223
247
194
164
122
163
219
198
184
233
131
117
181
235
188
210
198
267
165
200
173
214
190
223
183
180
177
198
231
116
229
209
213
186
182
224
258
172
175
156
200
224
266
170
206
228
230
198
247
192
192
168
242
205
271
241
165
261
165
163
196
189
243
179
141
213
242
231
246
209
232
197
233
258
206
215
213
164
220
220
175
216
176
216
163
209
226
212
168
203
191
211
200
200
187
192
167
230
149
159
196
171
189
175
258
196
249
224
258
181
215
214
215
231
237
165
158
200
161
197
177
220
160
218
188
120
216
174
195
273
254
186
259
182
201
232
189
251
230
191
166
243
186
192
151
210
224
203
244
182
206
238
195
220
196
116
238
208
183
190
228
243
125
234
223
179
226
150
199
101
231
150
182
190
203
199
251
205
185
190
215
229
199
190
198
174
230
160
260
199
203
237
163
222
119
220
190
224
217
220
208
213
214
204
150
204
233
230
211
227
178
196
185
193
224
169
221
181
201
218
252
247
156
170
210
267
182
189
220
223
178
227
218
186
197
178
237
205
164
210
194
216
207
262
282
160
256
189
169
158
220
149
172
223
252
263
186
194
196
203
194
209
205
310
221
220
186
156
217
265
261
237
164
179
221
144
218
215
163
194
121
172
164
166
163
228
165
211
183
192
211
150
206
215
169
225
234
142
180
203
150
221
239
199
214
247
201
236
183
226
176
158
184
152
193
182
191
188
188
175
196
201
152
165
152
168
123
165
210
150
169
188
217
147
198
174
195
189
174
254
201
237
208
191
200
180
181
221
206
184
180
162
208
164
176
236
195
193
195
191
180
174
178
177
190
203
241
226
245
181
204
192
203
196
200
242
194
234
245
219
194
192
159
251
235
225
221
223
194
174
221
201
227
182
191
150
134
246
181
229
231
221
167
183
253
204
198
237
192
199
208
229
182
230
199
202
188
140
235
189
225
175
178
189
247
215
188
240
209
207
210
252
166
208
141
145
235
226
252
202
160
183
153
176
242
217
228
223
243
205
174
234
125
212
221
198
200
171
205
225
222
211
221
240
239
180
165
196
198
291
279
246
244
228
192
207
192
235
205
200
186
219
195
201
163
241
197
200
235
187
176
175
172
257
214
238
171
246
236
140
187
198
250
167
230
166
241
196
191
220
122
172
270
249
192
187
180
144
221
223
270
230
183
171
213
218
197
253
239
187
184
242
187
190
195
252
207
237
180
142
228
186
205
203
215
245
261
206
194
127
126
189
208
160
261
244
180
181
197
136
236
212
228
262
200
251
156
205
164
271
210
227
201
193
226
161
193
191
204
202
155
187
243
215
243
135
226
225
161
173
218
184
204
201
230
210
165
212
177
117
139
191
195
142
197
213
151
178
249
204
214
214
162
259
171
218
199
233
261
248
256
205
234
209
251
159
260
215
217
198
229
177
166
178
138
233
269
120
182
124
181
194
169
230
166
147
217
232
170
217
190
237
156
193
182
195
200
207
210
192
186
130
244
205
226
205
223
194
156
217
227
187
208
218
240
236
141
235
219
186
162
239
118
211
243
159
202
256
188
212
220
178
193
250
253
221
163
227
225
198
173
220
230
177
224
189
253
185
178
169
213
172
226
216
183
214
229
208
189
177
226
226
129
214
134
172
167
176
198
175
197
155
166
215
135
192
202
228
265
210
238
214
168
149
137
200
250
240
184
215
161
270
230
189
209
159
210
234
222
173
196
197
205
184
260
244
225
156
164
187
212
186
207
258
127
177
166
173
190
255
183
204
205
213
186
175
175
195
158
163
208
179
222
218
163
143
177
148
137
281
215
147
244
224
162
193
199
167
188
212
180
215
225
171
147
214
234
205
222
233
234
234
205
180
193
262
242
198
161
265
233
206
211
243
172
211
189
217
235
226
222
225
207
220
205
211
227
224
191
141
251
166
195
266
165
184
184
150
182
185
221
171
187
217
199
252
233
215
228
194
225
164
170
240
201
212
198
196
185
248
193
168
192
222
163
221
205
196
177
208
236
189
211
199
170
207
232
189
225
235
242
240
186
214
221
175
228
215
196
182
189
201
177
243
216
220
179
218
298
205
166
144
205
237
159
204
176
248
208
174
185
257
186
132
198
264
156
185
213
215
134
205
212
258
234
156
144
198
234
195
152
207
219
203
220
266
171
178
196
140
240
221
227
203
173
189
217
185
222
169
228
171
197
213
218
195
196
240
187
252
194
181
152
232
181
167
240
242
228
196
196
221
183
204
230
188
171
208
227
187
265
211
208
159
202
232
190
207
208
196
144
224
175
246
107
220
255
172
168
194
200
209
216
193
219
253
183
162
160
252
204
182
190
216
156
215
189
201
208
238
122
201
256
191
140
117
148
204
247
189
185
179
173
181
228
151
245
235
187
219
209
259
156
231
211
198
162
185
235
194
212
171
241
217
164
218
177
213
181
206
167
214
221
162
233
209
238
149
192
183
221
149
174
214
201
179
132
179
126
220
211
210
266
217
169
188
190
224
233
248
269
237
206
227
224
211
215
140
190
203
215
230
207
208
225
190
197
228
239
174
226
173
162
264
227
164
213
211
159
229
118
208
157
186
226
161
227
229
175
242
181
170
168
200
245
113
122
201
232
194
195
194
203
190
209
184
209
176
153
204
217
188
205
231
216
205
187
174
234
213
106
244
241
176
224
233
133
246
151
242
224
143
236
220
161
206
180
149
240
168
206
202
174
179
191
173
175
171
173
230
221
230
202
230
260
258
178
220
203
181
225
187
208
186
215
175
237
224
157
198
171
218
150
221
196
185
215
184
189
158
236
170
183
214
163
230
200
206
222
197
153
201
186
208
207
212
214
204
192
239
243
211
210
181
126
177
178
285
204
178
168
217
226
184
210
140
217
220
200
207
208
190
220
169
167
204
228
197
206
135
179
243
245
227
215
200
240
195
186
251
132
189
194
222
222
211
158
207
152
180
187
179
178
225
216
202
172
187
171
218
164
215
219
228
247
244
239
205
208
246
206
157
193
199
182
212
187
225
231
261
218
218
164
233
223
194
207
199
185
209
155
245
258
178
147
204
183
167
156
229
241
266
215
192
191
241
237
234
210
208
251
226
209
219
194
230
163
213
136
182
222
232
172
227
226
202
260
201
217
211
215
220
205
205
212
189
184
158
214
215
187
244
183
193
163
179
234
204
244
180
205
145
179
202
203
194
154
230
269
166
221
232
206
204
180
190
180
198
237
179
231
200
187
223
204
140
248
255
239
248
231
198
151
185
250
245
256
143
181
226
143
197
231
190
203
214
159
257
140
181
241
200
161
191
217
227
223
259
210
200
166
221
162
196
252
242
193
224
165
179
267
189
236
175
251
182
172
169
147
219
243
204
223
169
101
192
223
183
132
188
190
244
259
152
181
154
161
206
175
197
171
238
222
225
195
158
194
241
187
165
214
240
226
192
213
176
172
190
227
259
223
209
270
249
208
215
197
170
203
162
153
215
166
147
174
139
191
214
157
183
206
193
230
160
192
233
206
217
219
238
146
248
247
174
197
214
191
210
194
235
156
106
245
185
224
170
129
233
254
206
145
157
192
258
220
197
188
233
169
233
249
204
228
253
183
216
185
205
249
250
108
234
176
181
161
172
201
196
176
207
136
183
182
210
157
216
202
182
256
239
142
161
177
245
197
115
159
168
269
195
236
205
201
234
242
164
247
184
279
219
227
189
168
180
240
214
210
228
187
193
227
181
174
188
237
189
200
188
184
228
260
192
212
226
110
152
181
188
207
252
190
247
187
232
239
157
149
220
129
179
223
185
225
251
216
253
200
207
176
227
225
206
191
132
168
193
184
226
191
217
178
136
181
232
235
242
116
145
246
159
173
226
200
192
214
225
175
117
193
165
191
248
172
222
199
173
214
239
149
154
222
193
200
173
260
201
193
195
196
217
201
234
224
202
204
129
183
230
246
222
165
235
174
212
239
198
233
193
188
193
214
229
260
244
206
203
245
250
200
214
158
213
191
201
141
182
189
170
217
163
203
198
202
200
197
226
184
173
111
204
185
168
224
149
207
256
198
224
269
208
208
198
200
232
207
199
196
192
218
191
263
300
251
206
160
206
259
207
197
234
206
177
227
224
183
229
130
198
152
164
188
205
193
148
184
145
242
176
150
225
210
194
205
205
168
227
184
228
194
136
210
212
129
203
232
179
230
181
208
162
182
224
226
175
217
190
219
161
244
192
198
276
160
171
262
162
199
187
176
208
157
161
192
313
161
210
244
184
217
189
250
157
200
255
220
236
190
168
183
259
234
187
222
195
223
241
194
244
250
167
209
218
261
199
203
163
191
161
240
204
189
151
197
220
219
249
218
217
216
174
188
253
253
192
133
191
168
277
220
256
185
176
193
231
151
149
172
209
234
243
192
194
214
176
239
216
201
181
190
213
209
226
205
149
180
226
239
247
219
239
184
252
188
184
247
217
221
241
268
147
215
167
123
194
219
215
203
240
190
211
209
163
205
152
156
179
210
246
261
252
243
195
195
130
228
179
174
193
204
192
188
196
196
240
245
198
194
203
203
208
191
257
237
156
131
190
211
178
251
172
213
271
218
187
212
180
152
174
229
255
184
212
199
190
168
182
202
212
207
225
144
167
185
196
219
262
195
188
210
159
156
180
226
252
224
184
200
243
154
244
223
254
208
226
195
146
174
223
225
212
238
147
198
171
203
231
247
148
225
106
184
109
129
219
129
234
150
203
202
173
178
187
162
231
232
191
149
216
166
234
170
153
202
189
142
219
157
150
218
213
259
253
207
184
128
186
242
174
250
222
174
163
220
146
137
227
173
202
210
243
169
219
197
213
199
169
164
220
238
241
211
189
232
171
196
217
247
196
186
253
194
207
256
200
195
161
204
199
207
141
251
168
223
224
258
172
253
130
253
195
231
200
213
196
188
218
184
207
238
217
220
110
195
195
208
211
158
209
220
187
203
246
209
242
174
154
197
163
179
241
177
167
210
249
243
162
167
166
189
218
160
237
191
223
168
219
159
157
170
206
200
225
197
177
201
215
204
226
229
197
148
239
123
162
175
167
233
241
215
224
153
232
231
157
202
202
179
227
179
155
169
240
124
162
220
235
150
191
153
253
231
127
175
185
236
222
229
189
173
190
211
182
262
218
254
258
191
209
230
207
204
144
155
189
264
120
149
200
161
232
243
288
253
206
166
237
162
231
205
195
202
179
157
238
237
282
167
201
277
237
228
171
230
223
214
226
215
195
167
219
189
178
228
117
155
185
244
182
126
259
284
193
217
226
232
173
163
200
238
190
217
154
204
207
162
239
170
174
188
195
227
179
180
158
267
194
226
213
213
189
205
255
236
195
177
154
173
212
198
168
222
271
243
201
197
197
177
193
198
235
220
188
162
218
195
249
228
172
210
228
212
168
186
167
206
176
201
228
155
178
145
224
193
183
174
238
227
220
181
120
240
252
203
233
249
212
260
150
194
229
220
197
234
196
232
129
131
138
115
200
215
242
202
210
150
190
243
223
167
188
180
204
182
209
241
214
201
225
177
163
203
222
120
158
192
209
248
188
198
211
245
227
225
215
175
253
172
193
247
164
235
133
209
191
169
236
222
179
189
149
203
226
180
246
247
168
198
164
261
169
244
224
179
160
178
199
196
224
251
172
201
217
233
199
196
135
245
222
199
223
225
204
173
233
186
168
191
257
268
201
190
161
198
203
162
283
182
241
206
240
202
211
249
227
256
239
125
263
146
202
231
175
200
189
232
157
202
252
190
197
163
153
238
169
216
273
211
153
171
92
173
215
194
260
223
182
228
253
197
237
218
201
213
189
212
200
246
203
211
229
278
175
204
191
185
240
168
170
123
133
143
229
201
238
177
204
200
181
158
236
169
190
202
182
243
169
185
278
96
178
184
256
219
174
232
162
186
216
185
221
185
207
153
192
180
146
230
221
256
217
228
199
170
189
160
217
114
204
155
192
207
217
244
254
186
214
198
177
248
256
172
189
162
192
172
191
190
197
171
189
168
216
204
159
245
179
235
247
232
213
194
135
214
262
175
252
192
174
179
205
242
209
246
220
207
193
180
154
231
218
217
200
141
205
162
177
208
237
164
158
156
208
197
180
180
204
213
232
243
200
182
204
197
210
250
278
176
236
203
203
233
185
189
118
218
221
152
219
177
240
202
214
168
258
165
230
215
207
230
110
187
183
161
170
179
243
193
173
162
182
272
203
180
237
238
224
217
202
227
168
166
153
231
193
146
206
169
190
194
150
230
201
156
159
164
168
126
206
201
178
175
192
169
231
175
210
239
187
185
132
235
206
189
195
244
212
216
173
195
136
198
222
190
171
197
222
230
262
229
205
143
221
233
203
218
174
224
230
160
154
158
191
172
221
138
234
222
222
237
195
238
201
134
186
254
251
255
176
164
237
168
183
244
199
157
162
185
201
242
159
231
154
211
152
219
195
207
188
195
169
172
176
208
208
236
160
230
206
200
205
140
208
180
209
229
220
228
249
225
278
217
123
190
180
198
229
251
256
208
276
224
184
266
224
175
199
267
195
211
255
203
254
190
142
259
175
227
186
221
225
230
159
192
222
203
197
174
151
223
196
156
234
202
189
187
237
219
210
161
209
228
203
228
212
196
175
192
205
192
214
215
235
221
162
204
269
202
194
186
209
177
189
179
221
247
206
212
255
236
194
212
256
258
170
226
172
205
151
175
177
166
237
177
241
207
230
193
188
173
149
183
220
167
163
204
170
258
250
259
172
242
214
210
216
299
216
253
156
218
206
177
224
189
244
198
186
175
180
211
194
211
224
184
160
184
163
251
256
171
188
195
223
199
204
189
209
227
219
123
199
234
132
113
164
260
203
156
105
187
194
210
248
194
188
159
210
208
228
203
210
160
175
226
199
216
189
196
180
159
229
229
180
193
277
193
174
153
172
291
176
248
176
248
212
221
168
185
224
216
202
228
187
135
233
179
171
185
266
176
215
218
202
198
222
179
241
183
167
224
262
270
190
200
228
188
173
217
241
216
189
196
228
181
148
249
250
233
203
240
256
225
236
231
224
228
209
249
185
188
218
196
202
187
220
225
202
268
231
217
182
200
202
207
159
121
216
215
200
141
218
105
215
237
211
220
183
202
220
199
189
227
189
166
252
201
159
213
195
188
177
86
114
258
242
211
206
125
158
217
149
183
180
162
220
204
214
223
123
172
243
172
212
216
225
240
202
147
218
178
221
193
143
232
202
208
250
216
194
164
208
227
203
200
243
223
179
183
111
211
177
207
181
254
230
164
257
190
248
181
189
146
219
153
224
188
221
212
198
223
161
219
202
159
165
229
237
175
199
200
233
188
159
222
214
207
192
188
176
218
162
151
169
144
250
262
227
224
176
186
206
236
245
230
171
179
158
140
188
227
210
200
193
273
158
213
177
178
239
148
233
151
191
180
240
184
199
212
189
160
242
215
227
251
208
177
207
170
186
235
218
264
153
119
264
177
176
207
162
201
208
178
171
166
207
244
203
236
161
199
215
202
258
185
227
135
243
191
233
182
204
249
208
215
154
217
159
173
178
143
206
158
206
204
208
199
211
196
196
139
154
234
185
166
220
168
159
153
207
152
215
218
230
212
243
208
194
175
232
247
196
92
205
181
143
157
183
213
211
157
179
226
179
185
255
169
208
230
157
184
188
176
190
163
218
174
204
197
251
159
197
176
237
220
153
266
168
241
170
151
141
185
223
229
229
199
223
303
176
214
170
173
257
216
208
197
152
243
207
129
188
233
283
212
210
180
206
238
211
96
184
268
224
172
209
228
144
172
208
165
205
190
238
197
170
233
206
162
155
175
175
192
185
233
201
261
166
227
202
229
183
231
129
217
192
187
195
209
130
271
207
199
183
174
178
212
253
249
196
224
174
219
269
196
215
214
197
170
150
207
159
206
181
233
163
238
152
168
204
195
185
194
220
154
189
225
230
232
177
179
161
236
194
239
186
167
192
218
184
195
257
200
238
255
217
175
214
168
135
144
267
228
113
195
201
229
240
180
184
259
240
193
171
186
191
156
190
200
201
224
212
198
183
220
164
190
241
211
187
203
188
218
197
178
175
226
188
249
180
220
209
196
203
224
116
164
188
218
205
176
157
171
193
213
237
217
137
214
241
218
176
136
248
206
224
208
200
209
251
208
246
206
242
200
192
187
154
221
185
156
186
191
241
193
171
190
235
186
201
275
231
218
175
260
199
183
194
234
187
240
221
164
219
283
220
174
138
199
188
198
248
127
217
174
196
207
159
197
275
248
184
190
223
167
217
190
231
225
194
250
202
249
222
171
184
196
167
229
197
179
157
199
218
210
190
165
214
283
238
158
193
182
210
206
191
183
236
236
192
172
183
177
225
229
200
202
172
284
256
197
226
213
241
181
227
179
147
210
159
206
218
230
195
226
163
189
203
203
208
238
132
212
230
250
225
171
235
233
200
234
166
177
182
237
268
268
208
220
106
177
238
218
246
198
202
201
187
149
183
142
264
235
251
206
221
143
204
231
217
208
153
222
213
183
169
154
202
201
161
197
216
197
220
222
206
230
228
178
270
213
241
240
242
254
228
240
250
148
220
217
194
127
180
224
202
164
163
207
181
197
207
191
205
239
229
242
185
195
188
119
213
174
199
173
184
198
272
211
201
241
233
187
181
199
148
164
240
228
173
211
151
140
206
171
197
256
208
177
203
224
188
181
159
209
148
215
246
196
227
236
265
181
189
176
224
196
211
168
204
240
193
198
215
190
117
197
204
232
168
208
214
256
188
151
188
169
153
170
193
264
207
246
201
148
196
181
247
244
219
189
227
153
214
208
179
182
232
139
168
149
236
232
207
226
213
159
221
174
138
220
155
219
182
183
202
187
204
189
181
223
220
207
229
262
201
272
217
204
203
183
206
223
179
175
180
224
178
151
200
223
241
181
203
257
240
248
191
280
249
199
185
241
157
201
256
245
150
237
197
229
174
217
223
139
196
255
246
210
186
253
253
230
272
194
213
219
302
250
214
169
203
161
164
212
160
192
175
157
160
176
212
171
198
240
202
173
251
187
214
233
187
189
237
231
191
206
202
182
184
183
218
206
177
162
211
175
224
269
188
181
156
167
236
211
252
219
167
211
179
252
101
231
191
201
174
278
168
223
182
151
179
232
210
247
177
164
233
199
232
226
191
224
186
164
152
122
185
171
183
196
210
219
177
222
264
151
206
201
149
251
208
207
170
202
184
256
237
84
202
198
235
189
189
187
151
203
180
261
185
225
158
206
244
148
268
188
187
246
170
191
150
202
244
219
238
132
202
161
263
271
206
157
235
182
188
200
217
172
244
267
174
139
215
146
209
234
239
237
243
148
172
200
157
208
203
206
247
199
189
131
210
169
219
172
153
197
212
245
228
191
230
180
196
228
222
209
287
208
177
192
252
237
194
189
196
205
188
189
232
199
182
210
173
187
250
224
219
219
180
280
219
243
206
214
167
211
221
180
247
178
221
183
218
176
254
205
188
238
225
180
215
291
218
230
159
169
184
202
193
195
162
210
139
250
177
203
242
272
204
120
245
269
180
153
266
173
195
141
148
227
189
167
184
168
220
249
164
186
224
227
275
222
172
196
144
233
202
228
226
250
164
166
152
212
228
146
221
187
208
157
186
186
203
242
235
183
212
196
159
145
208
186
203
119
231
256
171
168
191
162
210
224
140
217
158
201
178
175
178
195
146
203
172
230
226
130
225
181
140
181
184
190
186
150
205
171
215
253
160
210
248
163
201
144
207
181
191
186
250
228
216
130
212
182
200
190
119
175
232
271
237
214
261
189
206
226
217
212
200
232
201
220
209
221
218
227
202
172
205
214
257
230
200
144
146
213
265
160
189
204
221
220
168
252
159
186
249
231
257
173
188
151
136
122
165
171
179
277
216
166
225
231
264
239
243
185
203
159
201
179
245
195
235
241
252
223
195
231
174
159
190
206
224
218
152
229
237
189
251
135
195
168
222
266
137
225
181
226
168
217
205
193
213
225
138
197
203
243
191
225
245
196
213
270
240
156
139
209
216
190
169
171
213
178
147
177
217
207
207
190
246
151
144
140
229
186
195
263
178
202
233
172
203
149
222
148
193
248
236
236
165
171
191
189
188
201
266
160
201
205
244
218
187
161
203
213
213
214
171
221
174
178
139
216
197
216
253
162
174
171
229
226
210
167
188
166
145
201
155
159
190
216
184
187
204
234
214
270
251
185
189
239
197
221
172
215
224
156
169
247
204
210
210
266
211
207
212
203
206
212
218
203
206
146
249
213
233
215
219
200
181
215
176
254
239
201
206
203
190
210
247
245
205
237
159
176
194
206
117
176
160
152
208
200
258
109
233
228
145
208
171
164
219
200
217
210
195
227
190
232
207
220
229
203
163
169
162
159
169
206
262
199
205
218
217
228
259
131
253
229
190
223
186
192
170
229
217
187
200
177
159
198
262
153
216
207
187
223
121
127
234
199
165
229
230
262
188
198
236
135
182
153
246
172
219
221
227
176
225
260
241
157
173
199
149
234
172
190
218
228
209
156
221
224
240
184
194
233
267
255
178
201
217
274
196
263
171
200
171
158
255
233
232
195
196
209
258
224
206
219
167
224
256
221
231
141
145
240
181
193
133
164
207
168
176
234
218
174
173
215
187
249
221
168
164
220
160
181
164
226
185
209
194
209
220
172
174
200
213
254
218
203
172
177
158
192
210
192
253
239
177
250
228
167
194
165
132
214
239
214
172
154
215
170
160
244
195
137
194
197
238
177
197
179
231
163
192
265
193
179
233
189
181
235
195
219
212
234
180
203
229
215
174
246
219
161
237
158
214
177
230
177
197
175
188
186
265
202
199
194
154
249
191
128
198
234
231
237
218
209
201
223
173
151
226
218
293
230
170
116
214
190
124
248
219
193
218
236
194
157
168
166
175
194
187
184
185
217
207
244
192
126
193
209
203
172
232
248
163
200
156
197
173
228
210
202
156
230
166
216
180
204
171
159
226
155
235
165
232
198
175
177
235
178
171
222
265
209
204
197
199
207
162
206
156
219
200
221
184
177
183
156
245
251
211
174
175
216
115
225
247
153
198
183
206
221
211
213
188
184
196
224
205
182
216
171
250
156
187
248
192
191
227
179
212
167
173
220
215
228
213
211
217
230
217
182
221
237
154
182
230
230
247
217
236
231
200
189
193
187
166
235
162
203
209
172
169
127
211
195
190
173
216
178
191
211
165
233
184
199
233
203
214
232
248
178
225
228
199
182
220
247
189
205
279
145
231
255
178
192
193
237
186
168
243
205
180
152
233
156
232
175
199
224
230
189
232
187
226
155
166
207
222
188
204
179
229
193
192
214
155
190
277
177
212
231
177
191
172
174
138
264
158
241
196
184
249
202
169
214
228
190
159
259
173
201
95
205
171
247
190
225
221
117
215
251
192
196
126
296
200
197
187
198
234
236
155
191
249
172
198
147
153
266
163
143
204
139
167
197
264
215
211
158
174
176
171
198
208
153
164
233
169
185
213
196
187
214
202
235
170
206
227
208
254
167
232
216
146
164
222
163
148
245
228
248
183
171
227
257
261
209
205
213
211
213
177
241
267
193
272
193
205
171
289
168
146
187
186
220
199
223
202
264
219
179
123
291
175
209
217
239
205
165
215
213
222
192
252
217
237
221
191
233
208
214
214
245
192
203
222
261
215
144
222
240
178
151
269
200
221
199
222
199
200
160
228
193
245
169
192
228
253
195
152
218
224
207
173
167
184
216
229
175
198
147
183
251
179
236
194
232
134
178
156
227
263
164
202
172
240
168
246
228
213
195
171
164
198
239
225
170
201
233
200
212
205
125
188
227
254
220
182
232
219
258
206
203
184
214
214
203
195
191
179
214
228
184
252
199
165
178
236
206
177
175
208
231
202
186
232
138
218
259
203
197
170
212
195
217
240
191
197
226
204
171
148
212
171
117
251
180
151
185
220
211
197
141
158
197
204
219
209
215
216
149
146
206
187
246
241
222
190
183
187
243
196
177
233
174
172
155
179
173
142
234
183
218
213
223
171
176
246
118
229
210
234
182
192
246
254
173
202
207
201
228
230
237
153
183
222
196
145
198
222
260
206
159
166
227
194
120
151
246
179
164
263
214
169
205
209
207
192
224
201
246
245
255
216
218
173
272
139
258
191
181
237
197
123
188
221
225
219
183
199
207
145
233
218
119
188
191
239
210
170
210
226
241
194
167
214
196
224
167
223
123
167
203
183
153
203
196
222
128
228
222
177
184
255
145
226
176
199
139
191
193
222
159
199
172
227
187
198
204
210
212
163
207
237
237
219
190
254
263
231
200
197
225
192
153
237
166
195
170
184
187
145
233
195
216
189
227
215
186
188
261
154
200
237
164
242
232
193
182
191
208
253
227
186
231
206
165
216
210
180
202
175
212
227
92
278
173
207
91
201
150
178
218
259
238
186
194
170
264
187
208
256
193
188
173
244
161
197
147
205
221
213
225
155
142
253
248
221
181
214
115
180
259
198
242
259
117
237
211
214
128
222
200
152
215
168
207
195
189
213
155
227
201
188
229
202
214
220
172
164
170
159
142
217
230
249
249
101
218
207
181
96
192
123
197
108
213
189
195
207
228
228
224
227
206
195
195
270
167
161
190
184
241
210
191
165
162
214
236
212
224
209
247
266
168
132
150
188
156
247
158
201
226
232
197
180
203
246
218
195
264
234
204
222
211
199
143
291
169
225
151
267
213
203
144
230
196
204
213
245
171
291
215
209
160
234
274
221
227
163
167
196
185
226
179
215
207
213
121
204
208
190
237
262
167
223
270
180
157
242
156
141
225
216
148
215
271
127
233
198
171
229
173
218
209
299
168
189
186
242
247
171
262
149
209
145
181
245
199
235
204
208
230
137
150
189
195
208
195
234
268
154
183
184
172
212
189
200
208
238
242
253
174
228
145
193
139
194
206
256
165
202
174
249
247
190
220
166
201
136
146
233
161
191
207
226
236
221
239
163
182
256
210
177
144
181
197
178
268
213
176
231
218
197
277
190
189
197
170
206
198
131
224
195
209
206
237
251
205
108
185
165
146
211
201
163
163
213
239
232
181
137
198
241
203
229
209
252
180
151
188
266
172
211
137
217
201
243
236
227
249
202
194
222
171
204
218
171
212
204
201
139
218
142
186
287
252
157
222
293
167
198
230
204
151
136
241
198
186
170
169
217
169
215
197
331
237
229
177
184
190
148
176
168
197
247
179
254
202
182
253
182
204
148
182
232
280
203
245
186
180
211
206
114
162
201
215
163
179
168
205
155
170
180
161
250
198
280
160
183
231
183
186
204
206
254
255
221
201
190
197
170
207
196
217
193
265
135
150
239
139
159
229
256
203
181
238
216
137
227
161
199
258
229
153
243
212
194
197
189
157
230
170
171
236
162
157
250
137
135
216
172
234
183
180
183
198
237
157
223
249
231
182
286
177
171
202
178
169
219
172
189
185
188
186
241
207
239
186
185
194
170
206
214
241
246
202
127
233
201
246
190
239
179
185
160
164
161
163
216
211
189
233
202
246
220
265
200
196
202
197
211
211
201
249
217
210
250
238
178
205
178
187
224
234
197
225
191
198
182
194
233
181
236
285
163
115
259
160
204
206
188
239
230
226
214
240
193
197
198
184
225
257
151
191
194
239
220
223
112
208
292
229
224
190
173
139
253
203
193
182
268
240
188
161
142
209
221
154
228
257
214
218
209
174
236
208
194
168
157
261
199
166
116
211
183
219
160
179
174
200
216
238
191
161
231
266
228
176
167
219
202
244
214
138
130
232
238
244
158
242
172
228
126
113
167
228
202
160
191
210
150
176
200
139
226
223
241
183
164
200
156
187
172
199
211
179
204
270
203
251
257
238
215
231
223
189
221
166
191
274
186
217
215
201
152
301
185
226
162
215
255
195
209
184
156
250
195
172
217
225
200
235
206
223
253
263
188
168
162
168
153
239
138
174
269
268
244
209
233
171
215
128
198
150
224
233
239
201
177
235
242
225
226
215
167
151
269
263
178
201
241
247
168
191
194
211
246
200
189
155
160
209
196
179
170
198
229
173
204
238
194
198
182
167
201
170
177
156
207
204
246
227
136
197
192
130
180
188
102
204
193
192
189
195
149
182
248
235
154
229
185
225
232
192
198
209
225
201
167
108
172
162
209
180
200
190
209
223
159
275
200
184
186
221
190
172
155
146
224
267
234
278
247
216
156
191
178
206
180
201
177
200
127
204
168
251
254
255
191
242
199
253
193
234
198
170
178
215
168
241
195
210
208
242
184
191
151
178
179
236
205
218
186
152
151
175
155
186
195
207
216
225
207
107
190
232
165
177
191
222
220
200
192
182
184
157
242
167
203
230
224
201
224
234
148
214
213
175
215
200
217
133
193
184
239
210
178
241
176
237
152
127
112
171
177
205
227
260
160
223
216
191
148
203
186
233
222
212
162
200
162
194
212
232
235
208
250
181
228
206
223
204
244
231
230
216
236
186
262
176
209
164
261
193
202
195
266
254
245
193
227
205
190
223
183
214
189
197
170
180
225
176
214
235
197
182
146
207
182
202
180
230
239
171
218
207
227
180
157
244
215
253
173
183
176
186
236
205
178
252
188
157
181
189
218
262
270
140
239
260
209
221
216
189
210
239
198
248
170
246
232
244
217
208
249
205
187
231
192
157
172
205
203
208
121
230
197
202
253
236
172
177
244
203
187
233
227
218
234
167
238
207
313
169
206
217
216
201
167
235
182
153
228
178
246
179
170
139
191
179
241
284
219
223
201
187
203
163
220
223
170
208
240
185
156
118
194
159
201
233
195
141
181
147
225
179
198
204
184
261
188
222
138
235
224
175
201
226
106
168
204
183
190
226
214
178
177
208
245
251
185
195
237
266
219
242
220
198
205
175
236
186
179
219
230
305
204
246
215
204
211
192
245
175
228
246
188
145
209
188
191
159
222
220
195
214
170
186
195
148
236
138
177
193
158
190
172
183
153
215
292
239
181
192
160
233
206
226
243
234
220
275
156
195
227
205
201
179
211
210
224
184
189
193
197
204
217
210
195
242
261
227
176
259
178
188
221
199
209
183
190
239
203
222
162
183
197
298
221
167
156
205
179
242
207
206
164
178
139
241
190
248
256
195
176
186
275
193
214
158
188
228
218
185
233
187
219
194
210
217
175
177
255
221
151
201
201
184
177
231
158
195
208
171
192
184
231
215
175
230
146
223
224
230
219
224
145
155
223
242
229
177
241
156
212
207
162
226
263
185
195
197
238
173
214
153
204
248
203
183
196
165
211
184
174
168
165
218
209
181
205
166
159
196
251
189
160
184
277
216
203
273
206
197
213
278
234
202
245
222
225
218
176
216
204
175
198
158
156
168
223
213
212
191
265
146
218
253
192
184
211
203
228
225
223
228
180
214
208
161
211
221
204
236
167
208
189
179
156
240
181
188
210
191
195
248
246
195
217
229
223
233
229
209
184
235
189
244
160
224
204
198
276
251
196
171
214
195
211
181
179
176
171
219
234
217
152
288
183
242
210
203
242
176
148
178
210
166
132
157
142
238
169
206
199
194
147
216
235
112
216
162
191
159
211
197
186
180
220
197
241
182
161
172
203
152
179
126
180
218
150
228
256
200
207
147
209
184
219
175
206
171
157
220
141
188
181
210
209
207
186
196
241
129
230
196
207
196
238
181
197
195
170
236
192
255
202
211
183
172
227
185
242
133
169
189
178
222
183
169
232
165
191
185
219
249
227
237
223
248
114
186
223
257
233
191
209
207
173
156
219
174
145
190
185
237
228
194
281
192
204
192
256
231
162
202
147
216
219
212
208
220
160
225
208
224
216
206
265
249
176
247
261
144
203
147
124
201
212
199
201
185
197
174
214
255
240
176
193
242
244
142
185
202
228
123
78
134
180
122
232
169
206
188
170
222
217
195
154
216
196
209
108
205
192
184
194
152
214
171
170
221
194
141
191
185
220
222
245
216
212
144
239
209
189
159
256
175
203
189
228
102
250
135
227
176
215
202
179
203
178
204
208
202
168
181
193
233
166
190
182
195
213
204
213
198
133
202
193
184
220
148
130
203
174
264
242
195
177
253
254
143
155
191
226
220
261
179
244
242
162
184
172
185
166
165
156
191
267
181
194
199
174
209
152
247
200
189
209
231
217
151
201
143
210
166
225
168
216
180
240
250
170
211
170
222
245
186
148
138
229
161
235
163
220
213
265
204
243
209
183
209
203
196
206
261
180
193
230
202
187
207
195
214
181
192
184
210
164
160
214
229
189
234
204
154
211
181
233
186
188
152
167
189
172
221
268
210
237
214
175
196
234
206
182
217
202
188
170
145
191
185
245
203
220
243
193
204
186
219
155
197
262
202
189
200
207
111
209
135
172
176
197
197
198
224
184
206
222
139
222
147
217
200
247
195
171
244
206
271
196
184
188
181
208
173
174
237
179
250
229
206
196
170
250
172
193
138
192
146
121
223
256
248
210
179
213
209
243
176
187
172
176
212
256
136
160
187
164
209
201
164
214
149
220
210
211
189
213
190
196
174
217
213
185
212
167
250
214
208
211
145
211
223
144
186
185
185
206
221
215
195
235
280
126
220
178
213
200
199
186
210
256
160
176
240
203
187
232
173
144
232
169
205
223
251
235
230
258
203
198
267
202
217
228
212
133
201
186
150
184
195
145
183
223
209
228
184
191
157
214
199
150
236
283
149
133
157
258
245
231
265
173
197
139
214
185
199
233
232
243
184
195
145
185
142
225
222
184
192
194
238
201
184
149
170
220
164
174
206
298
193
252
241
214
193
182
210
214
231
181
155
200
216
187
137
183
178
191
193
257
261
161
145
193
217
224
230
164
197
191
109
279
151
203
137
111
124
222
144
213
230
191
208
230
200
176
185
215
87
176
148
229
217
125
192
187
193
188
199
177
281
162
215
237
169
167
217
196
218
183
232
181
202
233
167
218
112
289
151
101
161
188
219
172
218
217
196
223
242
253
224
229
226
230
197
189
273
219
114
245
115
202
207
171
222
203
243
175
169
223
211
177
155
204
161
136
218
230
178
162
249
142
193
161
213
144
230
201
142
212
222
192
239
241
213
210
234
172
190
161
192
162
201
200
167
178
215
218
196
283
212
206
186
249
178
211
181
152
166
169
189
207
213
223
210
211
205
201
231
222
195
187
211
155
162
219
166
195
215
147
181
202
183
204
127
124
209
199
219
221
200
207
217
229
210
168
177
204
217
166
206
174
269
205
224
191
182
237
214
212
216
221
228
245
151
213
199
175
200
235
200
166
150
234
223
216
191
144
206
255
221
252
158
203
247
190
247
175
203
126
197
206
178
126
202
198
208
203
239
210
235
190
194
203
200
216
183
244
207
186
224
262
156
137
221
210
253
185
266
219
166
160
230
212
194
169
152
208
178
170
165
200
285
230
223
207
194
173
167
202
203
207
223
218
248
175
159
214
186
199
247
239
212
188
277
215
198
224
170
175
211
189
192
256
213
211
241
202
226
209
228
152
239
254
217
234
134
173
260
213
208
216
185
223
207
198
236
178
170
190
183
186
196
189
250
212
201
214
234
178
152
194
209
197
196
200
208
247
232
228
212
201
198
215
209
182
231
239
241
130
246
199
222
214
200
230
275
213
215
163
169
177
180
167
223
183
178
149
156
212
196
210
209
226
237
213
215
156
205
261
156
207
176
120
231
205
229
249
208
188
193
141
232
218
161
234
214
189
204
247
182
174
268
236
201
227
195
191
255
204
226
209
176
223
172
136
145
188
146
209
196
231
216
149
185
199
139
205
167
200
225
235
219
181
145
226
173
210
158
216
150
222
168
183
229
160
257
194
152
191
156
172
257
204
185
183
184
238
199
168
204
204
186
184
225
218
162
165
181
187
195
189
224
169
189
188
233
124
166
176
187
178
218
194
237
206
131
242
195
226
179
212
199
249
263
176
206
203
175
182
130
214
209
173
225
221
207
230
175
167
234
202
226
239
225
204
156
119
226
169
181
223
227
169
226
206
166
239
194
159
203
238
149
146
190
228
153
177
176
206
140
284
155
150
232
111
215
245
205
243
188
217
197
194
173
267
253
233
204
221
174
227
207
220
257
195
233
148
188
137
248
179
159
256
169
192
163
243
195
247
222
213
216
223
153
204
221
206
213
129
235
119
162
231
205
214
174
187
155
210
200
194
204
191
165
230
196
192
224
220
204
212
242
246
179
285
179
204
159
184
165
179
224
160
176
228
221
149
195
211
217
182
223
197
135
181
194
207
255
173
190
149
164
264
241
164
184
221
212
226
203
195
190
195
171
256
111
247
181
176
245
245
177
171
250
165
149
180
170
119
262
262
244
168
208
175
194
140
238
200
214
184
164
221
232
186
159
204
256
157
160
151
175
175
205
240
155
215
192
234
127
237
173
127
230
220
144
170
218
205
209
186
190
264
161
176
186
152
249
224
197
208
249
242
159
170
248
272
248
180
204
217
219
237
166
274
189
210
158
163
212
152
264
282
154
232
174
194
242
223
217
249
227
185
179
187
235
175
209
186
181
175
197
192
215
180
242
157
221
258
171
268
235
217
142
153
219
184
185
199
252
185
238
184
195
193
235
160
243
191
214
189
218
186
184
234
159
211
250
156
237
247
208
226
205
240
187
219
211
186
174
145
200
233
246
235
156
169
170
210
207
191
239
187
185
151
221
158
216
189
191
199
170
207
171
115
269
204
132
218
256
238
131
216
184
197
236
144
165
228
246
235
181
192
212
196
242
207
254
156
221
212
99
183
212
268
185
260
219
181
193
213
193
194
255
218
221
225
164
177
151
211
224
228
239
186
237
195
245
201
197
243
180
224
197
192
166
196
226
181
258
184
208
183
178
178
155
209
199
192
182
184
220
168
212
188
190
222
149
228
191
188
214
177
208
192
237
191
209
126
180
155
127
151
199
208
173
153
178
129
141
168
249
182
283
208
155
140
197
211
163
221
162
212
231
217
226
177
163
172
168
186
216
223
176
243
249
270
173
166
142
240
207
207
231
177
251
227
205
211
197
202
170
240
244
211
186
184
176
218
211
240
157
208
223
188
142
198
274
108
215
205
168
214
203
192
193
207
231
177
232
228
190
179
175
209
179
229
173
196
214
202
202
175
140
182
239
233
240
184
241
239
172
214
168
215
111
237
215
219
163
210
243
172
241
173
192
229
241
231
152
220
186
190
197
224
166
166
227
256
223
206
236
221
198
175
199
89
208
195
230
157
195
199
185
174
178
220
215
142
230
198
275
186
217
188
174
195
201
204
245
224
174
203
107
183
200
168
241
184
170
241
151
225
225
180
217
205
195
191
210
197
141
176
144
162
159
219
188
249
189
196
173
192
202
185
199
195
246
203
260
209
241
255
257
231
214
195
176
202
207
144
196
227
218
157
188
210
270
227
212
189
210
241
253
247
179
165
193
217
176
212
138
163
162
229
240
252
219
182
189
154
170
157
190
111
199
224
157
175
231
221
196
190
183
177
238
175
222
234
144
264
207
194
191
177
170
218
211
186
200
204
150
191
170
278
230
224
175
193
256
209
214
211
192
157
210
196
121
159
208
175
226
264
225
202
200
168
201
168
215
156
199
258
210
265
235
240
192
120
195
237
221
221
136
159
180
223
216
92
245
189
225
127
144
197
210
207
206
265
226
166
170
236
267
224
166
173
178
208
230
218
238
213
213
187
158
218
271
165
181
122
178
131
168
247
241
168
201
225
226
219
207
186
192
236
226
221
212
189
228
223
155
229
253
196
191
129
253
163
187
199
241
162
216
219
228
167
228
188
180
217
232
195
213
222
255
175
241
202
204
115
232
164
163
184
184
213
212
173
239
180
213
136
234
191
213
168
223
251
168
192
263
178
207
162
223
227
253
219
176
233
209
288
227
197
170
184
200
219
192
241
204
184
207
201
221
179
168
162
168
183
206
192
172
279
233
182
255
199
180
189
208
176
206
237
180
212
217
284
164
236
185
227
247
245
240
154
278
251
162
218
222
158
188
160
203
205
202
221
208
225
183
218
178
191
176
207
191
201
231
245
200
198
243
218
293
149
209
159
177
211
187
177
151
165
196
92
188
184
203
188
209
214
227
190
220
233
219
238
170
211
170
242
229
232
220
155
187
251
168
245
171
208
177
124
234
209
195
231
254
200
167
201
224
175
125
132
174
197
221
228
170
183
187
180
200
239
173
208
253
245
260
224
159
241
161
184
186
247
216
189
178
203
161
235
206
159
139
211
204
99
164
181
219
213
165
198
147
249
224
262
149
213
192
166
246
222
180
192
121
156
197
165
226
202
178
229
217
257
209
251
166
178
115
174
209
200
206
156
215
206
219
171
232
211
224
218
188
204
239
216
214
209
214
196
232
151
256
258
248
146
163
112
97
259
197
223
227
243
188
99
202
192
263
255
150
215
248
198
228
239
205
155
139
176
185
237
222
225
156
212
171
247
252
188
169
204
177
199
197
288
198
201
191
163
214
172
138
219
174
184
178
171
171
172
178
205
164
145
202
229
188
179
203
198
183
187
170
217
190
215
212
220
201
214
168
226
179
262
177
181
178
202
206
232
245
204
162
184
204
203
155
210
160
209
160
168
144
264
214
253
203
206
218
203
171
226
161
140
209
225
213
216
186
234
234
225
132
215
219
181
159
229
206
175
192
163
204
216
196
269
213
195
184
171
155
205
230
264
129
162
214
217
190
194
154
181
172
236
162
158
123
202
258
225
226
163
196
180
142
212
238
161
214
245
192
242
214
192
213
241
184
180
199
202
224
204
179
235
211
203
165
123
211
226
224
227
179
194
212
253
171
173
243
210
189
192
182
217
211
212
217
238
220
258
227
239
187
209
168
173
192
170
201
216
246
171
164
202
225
169
249
221
225
149
210
188
202
262
202
227
196
112
248
183
234
163
181
223
163
125
202
192
198
147
172
227
205
190
230
200
235
177
229
255
239
228
213
166
235
151
260
270
146
196
210
174
155
246
186
182
143
186
209
253
154
212
208
163
225
160
166
243
134
200
208
218
203
160
196
235
211
217
242
189
216
233
244
235
190
181
204
225
118
197
184
249
190
168
182
225
253
201
218
250
216
237
173
206
259
201
160
203
188
152
144
189
185
194
213
216
167
237
124
205
222
216
257
139
252
176
218
210
186
166
237
150
207
208
190
228
159
168
230
270
265
225
255
210
150
254
249
173
119
231
200
216
201
208
197
174
216
169
178
210
224
170
210
231
262
183
244
239
179
180
184
208
208
199
179
176
172
170
188
226
139
143
99
209
195
219
229
188
259
185
193
256
248
213
199
199
190
231
254
213
228
201
226
183
185
260
192
225
256
172
280
222
174
231
221
175
220
191
232
205
201
172
173
236
125
235
194
230
227
194
172
201
190
161
186
189
122
208
206
192
205
230
221
234
242
196
204
246
123
141
166
218
194
175
194
208
220
148
211
217
162
247
207
242
204
262
166
217
227
224
161
155
181
204
229
210
220
178
190
193
181
219
206
197
206
157
281
236
194
241
199
160
130
196
215
230
233
189
234
170
171
214
165
145
203
234
222
226
270
207
178
177
185
240
199
193
240
214
181
150
221
223
257
127
223
192
246
215
232
133
200
191
170
161
182
178
209
208
175
154
237
187
208
129
189
230
190
199
151
183
145
214
226
187
173
259
203
129
230
245
220
236
172
183
242
243
231
217
195
235
209
193
240
213
203
236
187
191
266
156
140
192
211
211
216
220
242
223
162
225
216
190
234
176
210
226
221
236
179
203
250
206
250
164
222
248
205
196
196
153
191
230
173
237
183
199
186
208
276
206
238
222
198
200
147
217
197
203
156
216
178
267
225
177
200
228
174
208
194
210
278
213
276
243
161
195
119
238
244
147
206
181
43
172
177
215
222
157
253
155
159
193
248
191
223
188
160
231
224
142
200
173
182
159
234
212
185
237
202
125
182
193
197
162
208
201
215
164
200
215
238
188
148
192
149
186
229
208
219
226
193
198
197
175
193
205
232
199
201
182
220
151
177
177
210
211
219
205
225
179
206
184
206
206
188
206
189
145
276
208
169
161
189
266
179
211
216
210
118
176
237
200
179
171
227
176
208
179
200
138
221
181
189
257
141
152
164
210
214
249
153
260
191
194
177
176
163
228
218
191
270
166
216
163
231
199
214
241
203
163
236
200
157
230
215
224
205
190
146
188
228
140
195
219
237
183
154
163
130
247
224
158
189
149
154
195
198
220
168
190
222
196
172
197
207
211
273
196
170
228
203
216
169
172
195
250
238
178
228
210
217
208
167
217
187
222
193
186
181
168
204
207
199
164
247
215
154
145
192
180
173
165
176
209
250
153
244
215
197
215
180
167
218
141
177
201
226
219
201
219
205
192
197
178
177
129
217
198
214
222
242
149
209
226
170
180
233
205
263
192
180
182
232
201
196
155
167
211
245
227
137
222
176
182
173
163
213
197
181
173
222
223
174
279
246
187
212
233
216
205
210
210
230
233
137
213
168
148
249
154
166
209
184
236
236
217
166
174
238
196
197
183
130
208
224
198
237
160
141
238
288
257
204
221
161
199
154
198
167
164
210
240
260
194
183
239
225
181
176
179
185
201
247
161
162
180
202
178
222
224
259
167
219
164
171
205
233
120
159
263
122
188
215
239
225
140
249
180
245
174
144
216
154
251
181
228
211
160
213
241
183
193
194
209
136
194
155
157
215
181
217
207
202
242
243
238
175
168
204
234
237
222
262
156
269
165
214
180
213
231
232
199
220
153
215
196
129
197
223
217
197
202
167
165
192
203
188
194
196
195
220
143
170
170
182
191
200
171
212
151
213
211
154
236
208
207
168
198
247
228
178
227
254
159
260
193
185
235
247
230
211
132
177
234
199
199
259
183
182
238
156
268
234
217
218
186
149
205
156
139
196
196
147
179
200
200
189
228
189
198
203
210
188
265
196
231
179
244
202
228
201
220
167
138
183
205
215
246
263
176
198
116
221
204
214
221
250
221
167
206
152
251
187
178
207
153
208
199
215
154
242
219
273
175
169
167
189
170
218
174
207
209
242
174
250
165
198
217
215
246
173
225
144
139
181
198
187
239
269
135
162
222
209
189
204
195
164
276
214
189
187
170
151
252
162
202
196
239
237
181
210
139
142
224
205
206
233
214
166
173
204
194
194
251
268
160
183
206
226
190
203
195
243
231
225
138
168
236
126
153
231
142
261
221
156
211
172
176
213
263
239
132
231
180
198
185
224
238
215
202
246
182
239
179
175
154
120
159
206
169
194
195
217
207
201
204
167
135
180
231
227
235
189
208
238
228
159
182
247
216
160
250
147
161
166
230
201
180
156
126
193
250
258
184
173
202
214
211
197
176
208
146
216
224
254
193
205
219
176
175
187
177
197
218
183
225
205
200
252
213
179
192
204
211
171
209
232
255
211
210
204
120
211
211
260
191
165
163
157
220
215
238
202
186
180
208
270
194
164
165
201
192
206
201
218
208
214
220
249
217
236
166
163
205
164
208
184
245
225
142
177
223
192
199
201
186
202
188
262
150
265
174
202
141
165
121
202
246
191
230
115
175
255
185
227
212
208
195
242
235
115
225
189
247
279
192
152
210
244
120
191
161
120
230
218
219
266
225
160
119
214
206
246
174
212
229
210
173
235
154
221
135
184
166
120
182
234
159
226
210
234
181
164
167
170
218
136
172
154
246
210
222
257
182
177
178
171
171
175
221
213
190
222
174
167
175
211
232
256
148
199
182
142
200
196
234
184
203
164
213
163
237
235
175
198
205
275
176
181
188
180
225
186
250
206
183
205
144
162
195
252
116
186
128
178
247
190
212
198
189
211
218
218
215
243
201
180
140
162
216
100
90
210
188
217
240
205
232
156
231
174
180
154
248
168
230
202
186
179
253
222
213
168
189
233
202
232
184
223
150
131
169
307
235
180
180
181
181
183
195
237
257
225
178
242
243
178
202
185
211
227
250
236
131
194
177
184
122
165
197
183
247
213
191
186
267
210
223
194
198
148
228
235
162
188
175
136
153
156
177
183
223
261
193
217
141
118
209
130
154
201
184
226
233
204
233
200
202
214
211
177
207
209
204
227
144
246
142
212
218
198
245
154
157
189
175
188
191
227
222
253
175
173
226
243
134
251
170
225
156
274
138
233
180
170
209
206
194
196
230
235
158
242
238
237
188
213
192
225
246
166
183
204
192
194
198
221
138
193
192
163
157
196
228
147
227
180
242
219
261
147
214
239
207
233
250
170
163
173
143
158
176
218
158
197
180
200
207
220
144
148
194
225
236
164
204
175
215
199
175
223
186
180
145
209
208
191
223
142
211
180
211
174
232
206
251
153
179
218
210
217
196
158
151
179
210
224
206
227
193
203
139
136
183
209
176
222
199
283
208
194
146
223
192
249
219
217
180
252
167
190
198
136
203
195
157
221
242
220
188
142
256
171
213
226
137
236
208
222
192
174
215
195
134
210
172
221
186
199
215
205
246
221
224
269
259
98
161
189
218
173
227
236
231
202
180
250
240
185
149
151
162
116
205
211
250
139
212
176
267
157
226
185
176
213
209
202
200
170
168
223
162
217
237
215
180
220
176
251
209
198
230
233
128
184
189
199
197
138
176
224
175
210
150
194
187
140
206
173
185
204
247
185
263
191
197
210
229
218
222
313
224
180
170
185
234
229
223
237
258
156
238
155
209
222
196
215
206
215
224
188
174
199
177
226
215
146
205
163
217
94
199
179
209
191
249
183
204
228
205
182
204
229
157
207
156
198
221
182
138
240
221
183
226
204
209
135
248
257
227
203
260
242
226
185
175
200
165
147
218
195
146
112
252
211
224
218
240
248
162
253
255
219
203
222
165
231
228
266
201
201
199
181
194
188
204
173
202
206
240
187
139
245
180
234
155
219
245
224
207
272
214
193
176
233
220
213
262
213
152
216
165
256
222
254
173
200
191
237
175
258
215
211
227
262
215
235
144
230
245
155
211
209
234
234
220
165
228
211
177
179
187
204
221
199
147
158
225
245
215
216
218
222
163
204
133
214
216
198
192
178
197
176
237
245
158
159
205
171
219
185
209
156
225
254
141
181
193
239
210
218
236
191
188
212
235
181
156
175
217
218
104
212
250
192
198
212
163
297
246
187
191
204
278
150
245
227
227
111
210
170
179
183
204
234
226
207
281
181
193
204
226
197
212
244
267
197
209
202
241
178
210
237
195
155
253
221
221
240
187
147
156
187
234
194
216
185
160
216
201
226
168
206
225
234
240
181
213
223
217
207
221
147
207
246
163
254
199
247
134
228
267
193
183
228
155
167
190
195
204
203
201
175
196
203
112
235
216
213
212
192
177
179
110
234
199
251
144
230
187
237
203
251
184
170
131
200
156
178
193
201
159
140
213
113
230
211
208
254
221
206
219
128
225
185
197
222
220
146
192
243
191
257
193
154
244
193
190
187
185
170
200
242
139
234
190
209
202
210
187
166
219
175
243
246
175
258
203
214
197
199
185
198
170
245
210
228
210
212
214
192
210
239
179
172
179
144
223
206
144
213
235
199
175
190
170
220
266
161
188
237
239
175
228
205
143
184
197
128
207
146
183
228
199
141
210
202
242
265
178
254
213
230
163
196
215
201
167
207
229
184
208
225
219
184
253
166
153
193
189
258
217
206
219
210
235
224
186
151
187
241
287
200
239
217
211
247
171
231
175
267
187
185
194
214
168
189
170
210
145
202
173
145
210
175
183
144
176
185
193
156
198
191
193
246
122
182
199
193
185
232
205
150
196
168
184
178
166
222
253
132
241
167
203
211
225
207
206
171
166
229
213
218
212
170
188
219
164
186
169
164
236
279
206
250
252
213
167
168
235
209
172
260
230
139
213
220
173
179
220
129
230
194
162
183
202
222
190
222
143
267
171
234
218
138
228
148
173
232
203
194
211
164
192
212
216
225
226
226
130
206
242
191
166
215
184
165
133
188
218
252
180
187
195
218
180
203
208
241
207
150
225
212
233
188
160
246
189
230
199
184
190
258
184
250
186
176
220
195
288
220
240
187
143
212
145
201
187
175
230
197
268
232
165
183
250
196
193
263
199
221
187
236
211
170
157
252
174
252
246
212
259
208
181
236
196
197
244
216
207
146
213
217
207
213
193
185
195
209
189
202
187
231
296
173
208
155
223
197
211
189
225
225
233
238
203
176
179
188
241
240
204
171
224
244
248
123
222
195
190
166
223
218
178
216
201
195
225
153
212
126
192
198
157
138
175
157
150
178
209
151
165
173
163
198
177
132
204
191
187
179
219
144
202
212
174
156
231
198
250
189
189
139
199
195
182
217
214
273
275
237
180
205
214
169
155
175
117
221
170
160
174
174
240
156
174
196
198
148
208
246
206
215
192
278
168
163
241
177
190
204
218
234
217
199
234
218
148
207
212
221
225
186
195
142
170
251
165
194
195
249
194
204
216
217
207
211
225
226
222
221
114
187
172
218
235
241
198
205
210
202
198
233
208
99
168
276
193
189
176
130
234
146
204
218
127
194
224
181
191
140
191
204
182
214
174
199
175
251
207
167
218
180
182
182
192
161
166
209
171
182
145
180
226
198
179
147
185
179
149
222
223
211
172
165
194
192
221
191
231
213
109
217
205
211
183
125
258
242
186
164
213
195
255
194
217
229
235
220
214
213
176
255
210
260
230
221
102
219
213
218
215
191
217
184
203
208
183
222
281
236
182
227
242
212
173
178
184
252
163
197
238
131
162
225
153
201
193
170
208
172
163
153
177
230
226
191
233
191
165
201
219
157
191
203
198
198
235
252
239
195
220
101
240
258
205
183
239
209
242
203
223
191
224
199
199
185
198
189
177
202
227
185
223
204
216
210
129
223
218
207
209
150
249
164
165
252
182
176
235
187
188
177
193
242
188
259
221
249
248
201
179
230
241
219
172
225
196
220
179
173
241
191
167
158
266
213
242
183
195
185
180
242
204
140
191
198
219
245
153
207
260
175
195
185
167
279
211
257
224
206
210
290
219
195
200
161
133
135
180
188
196
236
236
241
196
174
209
216
215
221
214
235
197
211
219
188
202
221
240
198
255
217
243
242
167
157
146
204
227
184
150
185
254
233
234
236
126
162
176
174
228
190
236
219
165
139
173
216
185
190
204
196
191
145
146
161
188
133
225
213
174
201
238
220
190
126
133
200
244
212
166
198
204
125
212
167
214
213
129
163
191
196
207
192
179
214
231
180
203
174
253
209
196
178
155
239
232
197
223
151
235
146
205
217
209
188
149
188
212
112
244
189
232
232
239
163
179
168
193
239
228
256
211
189
150
188
243
225
238
194
157
210
210
191
207
216
167
123
222
228
177
213
211
247
215
158
265
205
243
245
206
203
238
170
194
239
165
201
224
203
150
137
165
221
192
261
220
188
201
220
275
269
191
240
191
175
202
150
163
190
207
202
208
202
187
209
243
193
251
251
235
248
227
152
207
216
276
185
164
242
223
154
234
260
135
212
245
190
169
203
194
249
164
175
239
239
176
192
181
247
213
174
218
275
197
272
79
185
186
179
172
174
177
187
133
246
197
168
248
162
213
189
254
198
167
247
200
163
187
184
211
196
245
199
225
197
248
197
153
123
233
239
208
185
204
189
225
199
240
230
208
184
261
207
175
175
202
237
236
183
178
230
205
213
200
171
178
111
163
187
154
222
203
171
197
170
230
190
224
228
195
174
140
223
188
170
154
128
264
200
233
162
218
260
172
220
248
190
238
239
170
208
147
138
173
208
202
129
197
216
185
245
162
228
226
164
223
186
242
173
125
153
147
196
171
235
145
197
150
235
232
193
199
141
187
225
137
188
127
242
234
227
219
155
245
210
213
245
210
226
158
178
211
181
237
189
253
183
220
224
177
211
196
197
205
247
181
209
203
178
186
161
243
184
226
163
221
194
216
257
210
256
260
223
181
251
184
264
174
229
155
189
225
161
165
194
249
181
154
267
144
228
173
225
169
183
170
154
241
254
191
179
174
184
161
263
229
245
270
151
163
142
178
137
218
188
238
136
159
222
211
214
224
175
200
246
196
212
205
204
193
203
174
217
234
261
230
212
187
211
231
248
229
254
253
160
207
169
242
228
243
179
239
213
240
207
231
211
243
240
217
164
222
218
193
232
231
180
215
193
194
207
197
205
225
143
266
209
145
231
151
145
243
233
203
225
114
183
134
236
175
215
251
185
178
201
217
158
146
223
239
173
217
212
258
200
187
270
197
130
238
149
183
276
151
204
193
178
196
214
184
172
140
263
215
217
252
198
180
147
176
184
164
224
266
207
213
227
159
215
179
289
161
198
169
279
238
161
188
222
256
215
190
180
195
167
265
193
209
173
213
195
227
199
187
186
239
148
202
241
167
247
205
135
212
227
200
162
171
158
273
235
207
263
251
216
250
227
169
221
218
192
208
201
219
172
186
227
183
246
152
216
265
225
208
171
222
232
199
224
246
129
208
162
246
201
246
204
212
216
226
208
187
205
222
228
166
198
218
123
219
235
202
188
210
229
135
199
169
179
224
252
228
179
192
211
250
222
189
228
218
192
162
166
259
159
209
218
191
203
166
201
225
211
185
209
174
200
125
219
123
211
179
223
259
262
196
169
171
245
133
217
184
183
213
214
254
182
145
232
249
181
205
269
208
218
188
219
262
239
198
223
174
221
242
191
213
213
227
200
253
189
152
243
210
229
202
212
187
229
208
219
168
181
185
130
165
186
175
200
175
154
197
231
145
204
265
119
192
164
210
100
167
171
155
227
201
179
182
247
207
186
241
211
170
210
246
205
218
192
211
200
170
142
224
275
186
201
213
182
134
212
169
157
192
156
230
222
184
195
106
223
264
166
186
201
129
188
196
186
220
227
172
205
124
223
254
221
171
173
273
187
202
202
171
172
209
195
200
226
205
243
201
191
230
211
266
135
224
195
197
236
194
195
167
188
208
165
200
189
213
238
224
218
156
271
219
145
206
230
223
178
213
250
255
182
167
156
147
138
174
255
221
186
164
196
129
254
220
188
170
149
199
254
209
254
201
203
196
250
201
146
165
158
171
211
185
222
206
160
197
215
227
151
225
250
275
218
155
198
121
251
226
206
226
207
196
132
189
178
234
215
131
190
149
191
161
267
235
219
186
220
179
157
129
195
241
195
150
211
192
139
214
173
243
212
148
168
153
200
171
131
238
215
228
193
190
206
252
248
168
149
232
165
178
199
164
164
191
192
195
215
226
178
204
207
128
192
184
203
184
171
202
253
168
200
221
205
134
228
211
273
174
230
151
133
234
180
208
217
250
187
208
175
257
238
175
240
236
159
171
189
212
196
209
136
245
149
259
213
186
196
174
234
228
161
214
191
238
175
218
186
210
229
240
207
200
138
129
210
201
215
169
192
218
199
206
230
186
217
178
177
203
232
157
237
188
247
186
192
149
250
196
207
217
205
214
164
201
252
245
174
157
230
192
145
155
159
151
226
183
249
178
194
232
159
159
178
206
155
135
219
205
215
208
216
209
232
249
154
198
254
194
199
219
244
197
170
160
262
202
175
164
233
202
221
211
173
205
199
190
192
175
234
257
197
185
200
225
202
133
221
197
228
209
126
231
166
152
180
226
273
182
187
239
115
198
225
182
177
202
214
237
172
172
145
221
137
194
186
213
206
220
191
220
202
248
177
93
159
172
167
192
186
200
219
172
191
247
149
175
196
145
214
141
186
180
195
228
240
192
240
204
151
188
184
135
161
155
191
241
236
226
198
186
183
182
213
164
209
237
187
173
265
194
130
193
170
111
244
224
166
227
234
139
161
140
211
210
202
202
183
220
165
164
220
207
172
204
241
187
208
191
234
214
184
253
191
193
186
218
161
205
178
187
85
212
145
237
187
210
230
208
215
270
135
210
198
177
225
194
175
212
189
187
203
159
234
209
196
176
181
244
233
177
162
193
191
194
229
209
126
204
253
153
209
215
144
167
183
169
240
211
152
180
179
242
211
183
191
159
233
212
182
169
257
216
217
219
225
211
203
155
172
150
202
212
174
208
189
139
167
180
216
236
173
154
177
220
224
250
184
117
266
195
219
251
184
259
174
206
173
168
217
261
178
205
170
127
211
138
223
187
196
197
202
202
225
202
262
243
207
226
180
240
198
152
191
117
183
203
185
187
145
169
179
214
149
226
162
220
160
112
213
227
228
228
209
177
201
216
222
235
198
169
123
179
194
222
207
241
254
179
218
209
155
190
267
200
148
222
161
178
212
198
211
208
197
218
248
194
252
150
143
195
189
170
244
171
177
189
193
176
185
194
230
230
209
160
187
226
188
232
199
215
217
172
199
231
201
185
218
208
170
192
210
176
206
178
215
190
242
199
199
229
182
221
165
245
209
186
181
211
205
230
215
213
193
166
221
248
266
161
181
142
169
173
172
202
169
250
153
181
170
207
254
154
209
169
191
194
251
167
176
196
150
229
179
205
204
157
213
150
206
145
269
229
201
219
185
223
169
215
191
106
218
242
211
202
148
222
224
195
187
153
160
171
163
199
199
221
258
200
207
155
205
174
182
180
184
226
195
230
177
214
219
186
240
206
207
164
192
179
229
220
211
208
189
228
217
191
162
126
189
215
255
217
245
165
220
172
197
204
134
214
126
173
174
210
227
206
220
257
187
160
238
198
233
189
199
148
236
208
198
211
195
191
163
182
230
239
202
256
210
242
233
223
212
236
237
190
148
226
207
243
215
210
238
236
178
163
149
236
189
194
195
227
171
221
198
208
217
207
213
234
196
190
181
168
190
161
249
166
134
150
163
222
233
130
244
263
215
221
179
204
176
204
167
201
182
205
122
208
172
219
262
159
226
215
197
190
217
178
206
189
223
176
184
175
163
159
169
234
198
135
122
213
262
187
116
187
178
266
143
171
162
234
179
206
135
208
142
261
261
192
148
205
234
251
255
217
145
186
160
199
164
162
215
215
252
133
206
172
177
186
189
217
234
199
209
230
189
177
178
120
211
196
165
220
207
216
183
197
193
207
201
187
234
160
298
234
227
203
243
228
187
245
230
258
201
248
206
235
243
257
240
213
224
119
185
168
240
259
173
243
238
243
192
157
182
181
181
200
231
189
201
160
225
214
212
256
185
242
152
216
270
199
217
242
189
212
200
251
170
214
144
256
209
125
179
209
159
169
208
218
195
266
203
124
180
261
211
180
234
253
179
190
221
237
230
124
192
182
155
248
229
184
194
169
170
224
149
214
263
222
156
218
223
195
219
170
239
176
165
190
195
225
180
211
205
209
175
197
222
201
198
215
136
174
258
215
182
189
231
179
176
121
195
127
169
150
211
124
232
168
202
153
166
170
249
204
224
208
177
201
117
209
261
229
186
197
249
228
127
196
185
217
170
219
233
220
212
256
206
247
222
234
188
206
200
210
197
236
198
258
156
228
194
207
142
215
235
233
145
265
185
185
220
191
187
266
255
177
238
187
242
160
198
186
243
220
208
242
209
189
147
140
223
187
176
144
235
189
110
120
188
191
175
155
141
156
188
174
221
254
216
173
212
181
200
187
191
173
219
168
147
186
123
192
212
263
227
200
211
244
200
285
96
282
187
154
202
159
184
233
195
185
258
219
239
177
202
228
233
192
247
180
211
216
123
200
198
217
227
182
165
257
195
214
138
173
181
200
213
197
166
226
231
222
174
164
235
217
126
167
217
169
177
211
222
179
244
168
142
138
167
238
198
236
225
153
220
209
196
223
200
182
229
280
213
185
135
268
263
205
195
238
177
231
222
236
236
146
250
222
201
208
190
183
230
195
196
181
212
174
199
186
226
227
220
203
221
179
202
156
196
135
238
191
195
198
253
196
193
196
221
213
135
128
193
181
215
167
114
215
201
119
216
230
142
294
213
198
209
238
138
159
234
175
264
176
161
202
217
165
217
224
229
156
175
169
208
177
211
181
178
178
242
180
220
225
229
158
192
208
195
169
156
163
201
254
247
157
244
180
213
230
155
223
176
255
143
251
210
179
203
225
228
202
178
208
212
207
266
175
172
171
164
213
212
267
166
218
256
184
197
253
163
170
199
212
213
159
189
248
160
227
166
164
164
247
206
186
165
212
229
169
168
144
173
269
223
203
233
203
216
119
170
136
175
214
167
179
205
204
212
183
213
164
132
208
252
149
223
130
133
160
182
223
252
159
212
235
215
223
229
171
186
205
186
149
222
178
240
139
211
170
172
187
215
233
192
197
205
204
187
185
205
219
193
178
252
192
228
255
221
213
213
260
235
210
163
151
173
213
268
153
249
136
221
205
226
223
228
259
214
212
172
159
259
241
183
199
218
177
225
212
160
155
201
241
171
198
219
206
243
152
205
241
196
223
219
166
192
218
184
219
159
140
261
181
147
224
130
188
157
211
184
167
253
177
184
193
241
240
189
199
231
187
207
209
170
212
185
188
218
174
205
221
200
206
199
178
185
200
215
184
144
146
253
233
252
247
165
225
185
162
205
186
141
218
180
222
238
223
205
172
223
155
146
150
171
185
141
210
188
170
182
184
180
162
179
161
209
119
227
148
229
159
180
213
175
217
236
181
132
205
159
257
209
251
123
212
204
164
181
220
190
193
201
224
173
223
225
195
210
199
177
263
216
151
204
224
221
151
243
136
154
247
147
204
232
261
223
194
197
198
231
212
207
179
197
218
190
112
218
178
211
169
259
195
137
251
260
238
221
146
212
187
143
170
259
178
230
247
233
242
250
159
197
185
269
174
162
199
177
208
220
144
219
211
188
234
226
239
204
176
198
228
256
198
185
175
234
206
192
188
227
255
157
217
259
205
127
156
216
170
235
195
142
185
178
218
170
219
195
154
203
230
189
240
253
207
207
200
144
238
235
187
223
162
258
240
208
239
136
182
228
169
188
242
181
220
204
212
278
217
220
182
125
169
220
226
212
171
204
202
173
258
225
212
198
159
184
156
202
122
215
151
240
176
165
212
248
209
208
210
189
216
244
136
229
179
205
180
87
263
196
223
204
170
184
153
169
220
171
213
158
162
225
183
240
205
205
227
234
243
141
244
168
179
236
218
171
210
166
229
183
181
194
232
160
258
178
168
215
214
167
155
181
233
192
188
197
195
145
224
169
226
172
209
196
95
203
182
224
179
241
163
204
203
178
227
234
201
257
185
236
219
198
232
179
216
188
214
210
241
150
165
168
171
192
208
213
222
232
239
162
240
175
239
159
242
216
201
218
203
228
226
186
218
205
157
261
209
165
178
218
142
168
124
155
223
225
273
220
178
145
199
244
177
177
277
211
237
182
224
208
192
181
126
156
184
202
143
223
183
243
168
261
211
231
141
228
168
203
176
229
201
247
206
180
212
188
164
231
209
234
208
214
239
219
222
224
229
230
161
248
214
183
269
213
185
253
233
163
220
199
214
216
162
193
194
190
181
200
142
196
172
205
190
228
211
161
231
197
197
199
185
215
166
226
242
212
192
214
236
225
178
160
223
159
150
161
177
204
184
225
257
154
144
205
170
220
225
225
186
246
179
236
129
225
226
179
158
256
197
207
216
221
139
163
233
203
191
230
232
280
177
166
151
247
161
147
98
206
232
150
269
175
211
245
219
241
171
162
166
173
209
200
202
137
229
195
212
151
146
253
210
218
213
183
211
191
245
217
200
188
225
172
192
174
190
152
245
153
240
196
186
216
162
194
195
222
214
229
255
197
173
180
185
264
165
239
221
194
175
189
225
213
283
221
205
172
185
125
198
179
276
176
228
250
244
139
184
186
216
282
162
154
228
207
160
203
219
160
233
151
242
195
189
268
260
197
193
180
182
230
202
163
195
161
207
166
207
236
168
170
195
237
223
189
225
269
253
205
196
160
155
205
173
258
196
172
210
173
203
157
180
211
199
228
234
176
212
199
165
207
186
232
233
241
221
250
217
249
176
212
204
220
278
221
136
225
192
131
235
195
190
211
169
241
200
212
176
222
252
162
91
187
178
212
199
108
229
253
163
243
159
154
217
171
133
163
252
222
226
225
194
197
198
158
172
180
139
275
124
193
187
200
207
201
154
200
181
128
189
194
255
181
211
205
154
150
186
223
175
206
176
176
223
232
176
227
217
163
150
188
245
155
256
215
147
174
198
285
196
215
143
224
215
139
209
202
147
150
195
205
193
188
194
222
206
254
219
168
176
202
127
141
173
163
214
265
155
222
126
198
204
165
153
187
193
192
175
175
234
197
241
238
256
175
260
164
212
106
159
219
215
246
222
204
204
242
151
180
192
194
223
247
197
175
187
218
149
145
197
255
210
187
206
217
237
232
144
214
215
226
165
209
172
214
155
221
205
186
196
223
214
187
285
199
252
199
191
199
263
205
118
198
264
186
182
253
213
229
210
248
202
239
221
241
204
181
232
237
178
208
252
239
193
203
211
255
167
271
210
203
167
143
188
171
229
238
217
187
158
246
157
149
170
190
243
262
228
169
226
188
178
202
266
258
248
200
195
197
177
164
197
243
223
148
208
272
173
225
209
206
237
184
206
245
193
162
215
260
181
215
268
204
186
196
192
253
251
220
187
211
191
254
179
256
219
194
165
141
219
173
166
155
247
197
222
185
185
226
233
247
195
278
265
260
158
151
211
227
232
248
230
131
204
139
251
201
167
161
146
148
118
159
236
160
164
250
205
228
230
194
252
179
138
223
201
252
243
162
219
217
218
219
246
237
169
154
213
191
235
183
236
232
181
166
212
224
176
178
203
162
184
178
229
253
156
206
190
153
156
234
162
171
172
228
173
228
246
179
183
228
203
202
235
220
168
134
213
189
210
239
210
198
201
208
178
165
146
188
187
235
122
163
227
138
213
207
180
141
212
184
153
206
150
238
222
249
141
222
182
188
198
208
203
240
230
220
188
230
195
181
206
184
186
243
249
204
202
149
166
282
203
238
171
161
197
229
176
201
173
226
252
208
211
212
148
204
165
139
145
157
258
190
157
183
246
206
187
200
201
224
174
187
189
177
215
205
163
208
258
217
136
197
207
186
163
249
179
232
200
235
242
171
162
223
179
243
174
158
176
141
181
166
189
132
265
177
180
168
234
203
217
213
151
191
181
187
190
208
176
205
169
193
228
209
218
153
205
176
236
127
173
150
140
216
227
167
203
248
218
210
171
170
194
256
206
204
170
238
228
235
227
178
161
208
216
227
210
198
128
207
197
243
199
216
260
218
187
260
150
233
185
163
217
217
223
181
231
144
189
204
219
230
225
208
191
206
210
171
197
201
227
246
134
204
178
170
223
255
262
229
205
231
208
206
216
193
143
166
174
153
206
217
122
188
199
197
167
197
210
234
173
248
141
224
186
251
198
210
182
214
160
170
248
254
201
227
187
177
164
195
233
234
195
258
199
187
258
157
168
247
222
247
226
218
137
239
202
174
153
222
179
115
190
199
152
184
176
210
241
213
161
234
222
243
226
204
199
228
187
146
202
129
214
170
272
172
178
289
217
194
228
209
205
207
161
141
197
186
179
268
200
144
249
227
208
254
219
180
179
228
134
227
159
284
206
225
212
185
256
261
197
178
198
240
230
183
250
180
174
189
220
226
170
238
200
197
237
200
212
183
205
136
193
184
210
243
189
191
150
199
207
170
171
211
154
231
163
245
102
183
188
153
226
255
205
235
184
204
217
191
261
185
167
180
159
235
236
214
234
223
193
195
172
151
206
203
205
197
211
179
123
177
172
189
167
204
244
225
258
229
208
223
232
212
213
220
167
149
212
237
183
238
244
153
183
142
139
164
164
240
171
245
179
176
205
158
210
164
274
225
202
233
203
149
138
259
206
260
207
265
171
222
199
138
152
166
227
174
222
177
238
244
228
228
205
221
198
210
158
216
249
229
189
189
192
172
247
204
246
205
191
233
210
286
235
224
168
266
148
225
196
154
153
150
196
233
168
196
234
139
185
225
221
182
225
183
233
172
239
223
212
209
214
158
220
234
231
155
250
205
202
190
200
223
181
199
201
165
226
172
272
69
167
164
181
272
200
206
217
177
239
202
191
204
245
208
146
275
217
214
212
185
149
221
171
241
241
230
245
260
208
194
229
153
191
192
242
235
195
185
220
126
199
204
186
198
237
209
209
201
199
208
181
234
165
216
199
202
176
98
164
184
204
188
200
181
163
250
214
213
256
186
154
160
181
240
260
191
203
182
208
231
257
238
228
252
216
135
177
150
244
247
194
190
207
199
207
204
209
245
226
171
214
175
177
228
233
187
164
221
238
205
175
241
178
191
258
229
209
149
174
194
221
184
217
240
197
165
197
155
226
212
193
227
254
236
178
161
192
172
199
221
154
221
174
240
192
178
153
220
167
240
192
222
142
215
183
197
214
227
207
178
225
192
231
233
199
242
233
182
155
196
216
266
151
147
238
246
232
215
198
162
215
154
159
189
225
118
223
202
187
249
167
170
185
174
225
154
191
182
208
160
243
215
182
240
195
194
199
179
193
256
254
236
203
222
165
196
174
170
210
190
135
169
178
201
180
208
208
167
222
269
161
218
158
268
189
213
173
191
226
222
201
272
187
228
158
186
197
174
245
199
198
244
253
134
230
234
163
167
189
200
192
234
151
181
193
208
207
255
170
201
229
214
229
177
173
188
168
152
195
193
189
247
189
204
222
176
223
194
223
197
138
195
186
259
153
142
187
158
205
156
259
135
151
178
142
201
225
202
135
167
233
214
246
235
149
171
196
162
245
155
215
145
209
275
247
196
235
251
187
231
203
169
193
186
166
143
198
228
124
209
195
212
233
145
205
149
189
241
180
151
261
251
153
179
209
221
189
183
226
227
149
187
162
202
188
209
240
256
207
224
251
250
205
205
120
188
175
224
159
156
149
246
239
247
212
258
172
250
245
170
225
224
239
208
229
160
190
225
254
169
201
174
234
199
189
183
226
187
233
233
134
205
190
141
156
173
208
211
189
260
255
241
170
230
182
190
189
227
169
182
171
211
179
214
191
213
132
236
176
234
242
216
164
196
200
248
213
194
206
186
225
148
191
241
140
184
156
174
210
138
207
212
225
196
239
220
207
176
191
181
184
179
244
267
228
108
180
260
185
206
175
219
169
204
192
191
149
198
179
115
237
209
216
231
225
132
209
221
241
181
232
247
202
240
214
188
188
238
224
183
228
230
269
240
174
142
186
202
199
214
183
199
240
217
242
205
192
175
156
250
226
171
225
218
227
252
244
179
217
220
195
262
226
248
153
171
132
176
225
166
277
214
215
174
175
255
195
165
145
230
221
211
199
215
161
157
216
208
224
198
187
170
206
221
224
196
190
206
264
176
256
236
121
95
190
236
172
165
235
208
150
198
163
244
221
242
201
272
226
175
268
204
173
203
185
166
197
216
141
178
242
194
228
173
200
188
203
216
153
200
224
243
183
245
215
121
203
260
175
209
212
167
248
212
278
203
176
243
206
211
141
191
240
197
252
204
248
169
191
239
254
106
170
232
180
246
185
185
198
184
209
197
150
209
216
151
231
168
213
203
238
260
185
214
250
189
181
230
287
154
211
219
211
200
161
222
221
194
218
224
168
224
222
228
167
203
214
242
272
216
194
200
247
189
229
187
145
156
208
217
194
207
159
236
219
195
141
203
198
226
212
216
204
151
173
150
246
243
196
163
230
166
152
248
186
241
249
161
255
236
218
222
120
235
192
205
210
173
200
190
197
232
164
225
183
207
220
228
198
193
223
184
244
133
245
247
170
258
216
172
150
209
167
218
246
155
204
173
232
216
202
194
196
187
212
245
153
159
165
225
184
190
201
181
246
241
216
230
206
212
188
225
238
228
138
235
162
150
242
117
235
212
247
164
154
253
216
158
195
225
182
196
182
202
206
169
205
232
222
214
171
163
172
263
239
205
183
229
192
159
193
113
214
217
81
227
139
196
207
154
187
198
148
197
218
167
225
215
276
223
171
234
214
182
218
140
255
247
240
207
244
185
185
162
135
147
186
211
189
142
241
163
203
222
168
201
238
160
217
181
215
161
218
164
192
195
254
209
148
165
205
227
198
225
198
191
218
186
198
196
227
204
171
232
150
247
173
206
206
201
262
177
191
238
209
181
125
180
203
187
163
201
214
236
193
290
213
145
197
168
141
192
156
206
158
186
184
200
224
240
232
213
234
179
226
208
245
200
194
193
196
238
198
214
240
221
203
219
215
225
167
238
268
159
204
194
196
163
185
138
258
225
186
204
209
179
225
154
180
205
190
194
188
216
205
221
269
202
210
250
263
146
173
160
195
186
212
176
147
191
221
150
153
167
197
221
242
193
248
187
210
284
215
243
208
148
132
163
166
191
209
212
187
167
199
208
180
224
217
250
209
217
150
196
222
167
173
201
211
184
223
171
219
171
164
177
207
207
258
208
184
195
207
138
198
193
135
165
142
159
180
164
206
193
252
242
258
204
201
259
227
210
238
225
243
225
208
211
193
249
162
181
223
257
198
216
213
204
196
251
211
135
183
213
199
201
185
229
234
183
214
187
210
196
224
193
212
221
270
227
234
196
187
209
226
253
206
211
173
176
197
165
247
216
216
208
217
200
220
213
178
178
217
219
150
144
196
199
236
177
163
184
227
192
226
186
169
247
161
245
255
204
208
184
211
266
208
179
180
141
179
192
184
226
195
202
154
213
212
222
205
166
200
179
199
194
213
216
231
205
157
142
218
202
178
201
163
260
189
150
196
258
172
148
179
193
179
196
155
213
237
226
262
171
191
211
239
178
251
157
196
238
204
215
247
186
226
197
162
190
229
237
186
153
227
222
172
177
163
246
197
222
209
260
216
174
261
233
190
193
191
214
241
230
187
285
188
218
270
144
205
224
153
210
164
220
161
248
169
186
192
234
236
247
272
240
174
204
178
206
247
166
141
143
207
220
245
189
205
212
177
239
162
165
255
186
165
207
96
189
237
233
219
182
199
211
211
221
197
147
196
233
127
154
220
203
210
189
142
176
170
247
171
240
174
163
190
202
188
151
192
208
282
174
234
170
179
275
174
213
208
194
195
239
234
225
176
233
133
158
240
224
184
200
167
187
171
147
193
206
234
158
151
200
186
211
217
201
158
253
177
200
135
227
196
174
177
180
219
249
269
207
200
131
236
202
191
158
151
255
232
140
249
167
242
175
164
153
178
196
221
165
203
192
123
154
172
201
220
174
150
210
185
241
270
231
159
195
180
218
201
241
217
204
156
161
261
200
173
136
239
124
85
216
130
188
207
191
146
187
189
205
172
154
229
210
200
184
157
207
173
195
231
174
165
152
193
246
224
196
147
198
195
244
182
203
102
254
230
193
238
190
216
205
205
182
210
238
194
198
263
234
213
159
90
229
244
238
146
176
163
196
192
242
172
147
192
167
126
195
233
161
221
179
189
189
185
202
222
257
200
206
166
201
215
197
198
269
249
251
197
198
173
219
181
210
170
216
198
222
231
274
172
171
258
167
225
155
231
170
209
221
254
229
206
252
139
252
228
132
196
223
131
221
234
150
214
231
185
212
194
184
220
171
213
235
209
164
170
229
232
139
195
258
160
208
207
210
178
200
179
216
216
191
216
245
211
217
217
170
259
158
230
218
143
183
194
200
225
192
255
191
189
188
186
200
166
250
184
139
194
183
161
198
251
251
199
204
182
185
207
198
162
156
247
193
134
182
230
234
214
204
267
221
263
191
212
206
218
239
179
217
195
141
211
177
233
207
134
202
172
167
215
214
139
209
217
263
212
238
184
226
194
184
236
175
167
215
169
180
155
159
213
211
191
244
157
132
175
196
211
197
179
234
203
188
162
105
206
254
207
211
189
190
235
184
183
205
221
185
196
167
162
135
205
147
188
125
201
209
231
188
251
155
108
152
186
221
205
195
216
182
167
215
203
216
99
183
200
163
190
174
177
177
220
108
205
175
193
216
172
231
160
188
152
186
184
224
207
227
246
224
173
135
229
204
224
208
191
181
264
168
122
186
183
150
212
196
200
222
208
206
220
223
206
217
203
177
185
147
177
191
166
175
138
222
260
177
185
138
219
174
169
207
224
178
130
164
243
209
295
247
242
255
143
194
218
209
255
186
196
117
201
225
201
162
242
170
232
164
254
208
196
198
215
186
145
226
197
196
163
198
177
163
191
183
156
208
231
168
214
191
223
229
187
201
189
239
206
245
240
239
186
194
224
230
177
185
205
226
205
232
166
223
169
175
240
210
189
179
171
181
142
227
259
170
218
179
153
166
239
193
176
216
195
187
191
159
239
134
189
223
231
239
170
234
154
173
263
215
231
200
163
246
134
247
235
206
183
252
125
223
203
210
196
196
216
150
213
202
171
127
230
179
253
187
189
207
167
215
247
188
179
257
148
165
155
221
207
200
214
171
158
218
150
196
219
161
232
259
208
253
235
198
205
222
132
214
245
213
183
203
189
210
211
215
187
252
247
235
106
219
216
195
219
189
200
147
196
185
139
206
149
231
187
201
214
201
175
230
169
189
174
230
198
179
179
168
223
245
146
180
213
184
226
115
219
170
216
161
201
165
160
176
218
194
210
157
183
180
235
212
189
235
200
188
179
205
222
198
174
142
195
194
197
191
266
146
163
154
199
244
230
128
220
198
206
233
228
248
252
154
236
180
235
120
231
221
240
269
221
231
187
210
217
217
197
135
228
178
197
246
194
198
206
276
223
204
252
222
179
192
247
217
250
225
220
136
247
233
181
214
204
223
203
214
219
218
221
205
179
232
205
204
199
233
167
202
254
194
241
178
184
166
192
146
183
201
250
237
223
164
216
243
162
204
265
221
261
194
263
132
224
196
240
184
201
232
140
225
237
211
221
240
196
190
220
198
231
197
261
153
198
202
160
193
272
208
197
210
178
254
164
149
169
206
135
143
159
213
170
229
195
221
169
161
252
195
216
190
218
209
170
214
173
216
197
162
244
265
145
205
214
201
219
259
187
235
236
196
182
160
152
133
256
184
171
214
232
241
199
193
204
181
261
240
208
205
207
210
154
184
220
197
178
155
197
171
239
271
130
228
260
191
235
193
179
256
210
231
163
190
153
213
187
178
139
202
189
181
178
160
200
219
174
171
162
232
216
201
223
246
187
212
218
243
256
174
231
191
180
202
236
211
148
190
261
159
126
201
167
185
190
143
202
221
177
183
180
225
194
215
132
239
207
187
242
120
197
237
204
208
214
177
162
175
164
247
210
179
116
204
154
214
176
101
223
115
226
187
136
190
179
203
205
237
147
205
167
198
205
197
210
208
177
225
230
232
258
181
151
125
141
154
141
214
154
120
185
271
205
235
256
238
182
233
211
268
229
247
155
126
198
216
217
203
212
182
213
191
253
241
209
212
184
102
208
162
212
210
216
220
172
175
226
239
106
180
211
197
130
242
206
233
231
228
228
220
197
212
193
200
133
184
227
202
209
190
189
212
130
131
137
242
278
276
199
165
194
280
237
198
189
222
183
181
235
201
205
148
261
210
221
110
188
192
227
183
168
245
192
203
238
130
220
124
208
211
223
199
113
248
238
159
256
188
230
253
182
165
140
207
156
196
236
186
213
172
256
209
196
130
155
166
188
215
300
188
214
161
215
202
210
180
255
171
201
221
239
186
186
142
251
192
302
147
222
233
152
167
225
194
208
182
190
260
197
181
225
146
213
175
230
187
240
173
191
202
180
243
284
303
230
225
207
150
156
149
211
189
238
156
210
166
195
199
157
199
176
229
252
265
216
222
205
193
170
165
233
211
190
190
227
183
192
185
168
170
220
255
255
239
165
186
208
252
201
141
204
222
192
218
211
194
236
200
196
126
247
177
175
147
158
171
225
185
192
188
147
227
157
171
206
191
158
177
187
156
169
135
200
239
247
252
190
185
204
240
186
258
212
241
176
220
202
169
158
257
205
144
194
269
220
176
135
225
212
211
164
228
165
204
212
215
218
204
238
237
179
253
218
194
122
220
162
206
188
208
216
175
168
195
239
256
166
180
199
154
138
215
227
204
230
247
261
201
210
180
126
252
240
217
204
154
174
256
206
194
215
186
174
169
177
190
223
197
235
192
253
304
203
226
223
219
197
230
187
208
243
164
186
183
174
172
241
216
189
222
123
225
155
258
211
201
211
183
150
227
192
158
213
122
196
235
202
220
226
232
168
232
133
188
124
202
158
196
132
222
160
270
219
265
187
208
183
246
182
232
205
197
194
173
204
259
219
217
216
150
219
176
222
149
163
184
201
253
183
183
228
279
173
253
230
221
168
186
138
128
201
204
250
182
203
249
210
213
186
239
206
247
225
220
183
269
195
196
208
204
200
228
187
206
195
175
161
142
155
155
202
214
233
219
201
199
197
236
208
197
185
152
226
180
216
186
117
236
213
212
165
195
206
227
203
215
191
222
219
232
186
198
182
187
235
188
144
181
235
180
246
183
231
192
159
174
202
155
175
198
137
151
201
186
240
217
176
177
168
245
158
181
183
212
187
162
231
205
239
203
225
96
198
228
205
222
184
170
233
153
200
227
217
165
208
199
150
264
225
211
213
211
251
252
189
207
235
149
185
203
177
187
185
243
207
218
200
196
184
197
255
202
193
184
223
214
259
191
168
225
205
170
194
216
149
156
223
175
245
227
172
213
205
183
244
175
177
215
196
187
212
195
113
172
220
181
154
252
161
190
167
203
220
152
156
210
226
217
248
190
204
204
215
195
216
162
177
211
217
210
179
258
180
185
202
233
146
156
218
212
148
209
183
193
185
179
190
183
196
193
211
167
234
267
248
140
178
211
216
238
235
159
240
235
181
240
163
226
159
222
155
178
201
211
202
235
168
177
192
179
243
234
236
207
243
149
221
109
259
211
247
209
217
174
198
211
247
207
231
186
222
190
195
233
223
199
204
163
204
227
229
212
102
191
228
241
229
187
217
252
173
176
169
216
151
153
245
122
171
252
170
198
212
211
192
205
190
241
167
191
175
142
250
179
228
148
214
141
188
131
243
149
230
196
186
243
235
264
233
207
222
159
144
209
176
253
179
259
254
210
154
226
159
170
218
212
196
265
223
248
153
236
153
197
154
270
230
183
132
238
161
199
196
286
175
174
209
195
215
222
187
242
204
194
197
199
199
178
236
185
226
235
227
167
237
131
156
197
230
223
231
215
237
156
206
193
197
200
140
195
199
167
143
154
202
173
151
191
227
233
245
248
172
179
177
243
236
286
226
198
223
180
203
163
229
216
197
142
214
222
211
204
175
237
249
287
205
154
203
166
250
230
193
178
216
221
220
171
260
256
138
210
190
192
171
167
207
196
199
195
238
199
240
216
163
198
173
147
249
185
200
180
216
164
195
153
177
204
180
217
184
196
265
187
249
239
247
177
213
163
129
211
189
245
192
213
242
205
207
172
199
251
237
238
221
245
241
191
148
164
163
237
198
198
223
159
148
192
183
214
199
170
198
142
160
182
206
202
191
192
116
195
282
207
285
172
140
187
197
178
130
209
159
185
168
202
224
182
172
260
192
211
151
187
174
202
222
191
180
184
174
237
233
237
144
183
141
189
194
214
180
266
201
214
180
221
203
195
207
137
188
179
169
175
216
193
186
197
200
197
173
192
219
229
186
209
257
163
250
146
180
267
216
174
187
209
186
255
142
194
173
239
216
204
268
263
211
170
198
196
252
186
204
121
191
246
236
235
154
185
176
141
174
210
263
115
199
203
194
181
239
169
223
239
227
207
245
188
196
189
207
225
168
149
219
217
174
194
215
192
211
193
132
180
188
180
252
225
253
207
230
190
147
206
181
181
155
213
199
206
227
214
135
194
244
227
219
175
206
158
219
219
181
233
231
162
200
208
191
212
182
185
154
248
175
169
238
254
226
216
134
138
210
229
188
275
230
211
152
186
202
184
207
157
196
174
231
177
233
187
162
251
196
201
231
206
203
160
191
199
187
112
198
254
170
229
252
174
239
236
169
161
182
259
216
191
223
167
143
225
157
169
190
164
230
139
240
190
201
110
265
250
204
229
139
201
244
242
219
224
205
201
232
238
182
191
235
162
209
246
225
179
113
175
184
199
245
205
179
185
206
220
143
156
202
191
211
227
137
195
213
171
221
213
232
172
201
169
246
210
206
193
227
175
197
201
192
197
174
245
181
208
196
231
169
225
218
234
175
217
222
138
186
223
190
176
201
184
196
207
225
261
162
232
219
149
228
264
167
228
161
159
243
235
204
223
168
209
230
215
230
281
221
251
188
192
182
215
176
254
183
214
243
161
231
188
273
194
211
206
209
207
229
193
193
180
142
150
237
140
176
204
204
229
190
198
166
258
192
185
211
192
126
222
155
205
250
217
183
276
193
183
229
156
188
162
135
172
235
162
170
172
173
194
232
218
201
223
198
183
218
191
225
222
162
140
229
149
213
218
190
150
208
250
159
221
133
206
146
167
211
213
212
245
167
241
247
190
208
212
166
249
186
201
228
183
212
193
242
198
234
216
205
123
182
202
204
225
210
174
239
217
203
240
263
155
179
204
215
143
206
202
146
222
181
265
220
178
178
236
224
210
157
195
121
154
227
159
212
232
164
215
176
272
254
201
200
256
196
201
207
143
180
160
219
232
208
217
204
208
215
198
239
206
250
220
226
193
224
242
220
135
265
187
179
160
196
162
208
235
167
170
194
187
189
227
135
237
209
168
175
149
188
205
226
238
198
250
221
256
197
224
157
181
185
253
284
215
197
234
237
160
170
224
141
229
161
205
219
176
229
231
219
162
245
239
141
228
215
216
206
190
236
202
189
192
147
191
219
159
135
221
199
169
220
144
143
187
215
196
184
154
203
253
190
175
158
142
209
208
160
280
258
221
184
203
195
191
196
181
257
199
199
176
187
207
179
172
153
209
205
211
210
172
199
192
163
174
215
240
196
204
216
235
218
235
189
186
214
171
211
154
221
188
194
200
235
240
247
184
202
173
232
206
211
212
171
187
174
175
230
225
204
224
202
194
215
220
116
188
195
138
179
224
240
191
175
197
206
193
252
234
214
187
251
243
170
155
172
178
148
182
239
123
235
285
203
218
145
196
177
190
191
191
223
269
214
187
202
186
176
201
225
210
175
191
234
221
195
149
189
171
219
194
170
174
191
176
239
177
225
255
197
166
233
214
237
186
189
239
216
267
222
152
199
203
220
166
186
210
184
174
202
207
170
214
185
241
188
212
185
224
137
246
165
186
243
158
201
240
265
241
154
240
201
239
138
216
202
197
191
184
236
226
167
176
194
166
238
192
194
174
262
180
217
137
248
215
278
216
179
249
232
229
246
219
170
187
155
193
206
243
182
175
175
220
191
290
245
247
172
192
185
229
237
201
184
228
206
152
157
192
244
226
215
222
163
220
188
215
176
237
183
185
163
221
249
200
154
161
205
180
210
211
167
169
240
217
170
214
153
277
205
216
236
236
184
206
204
224
141
214
186
133
219
251
230
184
206
212
138
151
240
125
208
281
125
177
162
164
232
194
195
234
243
163
196
175
144
218
265
192
157
208
196
137
216
187
154
215
194
234
233
240
167
171
170
210
252
218
214
219
238
137
262
170
175
196
162
266
95
239
139
216
163
209
106
197
157
198
215
216
254
189
202
261
272
191
221
198
201
193
201
236
211
186
229
285
194
171
215
167
220
225
231
143
213
186
138
174
243
228
210
190
180
228
166
143
195
257
281
166
185
257
226
224
208
122
199
257
210
233
222
210
186
223
238
180
140
198
182
217
231
221
185
229
224
204
173
172
238
146
194
232
190
218
184
192
205
219
198
189
221
169
205
201
182
244
157
159
209
172
190
223
276
186
184
135
231
184
213
287
187
209
213
90
211
223
235
224
168
232
192
179
161
215
221
213
203
161
256
167
141
208
201
190
189
178
166
228
241
242
200
166
111
223
181
201
226
130
213
207
232
225
200
190
248
184
267
202
152
231
170
232
225
214
209
261
260
192
192
211
141
184
259
219
225
244
151
203
186
264
221
227
252
212
221
197
238
233
159
213
161
189
258
263
184
257
227
166
229
263
165
148
198
232
124
174
235
249
207
161
203
198
149
148
208
211
180
165
152
206
173
172
221
235
149
212
231
194
245
198
210
212
212
197
142
293
232
220
183
228
226
126
223
163
211
203
173
201
235
221
199
148
138
165
187
165
217
158
173
150
250
252
138
177
157
189
199
226
199
220
163
201
186
216
223
221
193
186
217
249
235
164
227
179
221
221
189
189
199
173
177
247
220
203
239
230
193
226
207
196
182
219
193
170
196
194
211
135
266
222
206
133
183
197
220
231
204
247
172
200
252
247
197
167
177
269
212
149
241
238
182
96
249
213
270
222
170
228
221
176
194
185
202
220
208
218
169
229
232
283
166
255
137
267
236
181
220
212
285
194
193
210
252
219
195
190
130
194
170
154
219
213
194
169
207
233
216
209
190
212
151
235
199
178
194
170
141
200
207
204
167
210
188
152
182
195
208
211
206
183
229
271
198
176
189
201
243
206
223
174
219
209
158
225
208
197
229
250
128
176
244
211
211
175
251
205
223
180
157
232
167
204
173
229
265
213
236
177
212
204
219
199
157
167
184
128
176
230
241
154
214
219
208
196
212
183
145
189
183
238
210
211
201
198
246
261
190
156
217
230
192
241
222
167
224
215
218
233
166
230
206
236
225
178
167
237
222
172
169
163
232
190
211
208
176
212
201
207
196
239
209
220
212
229
207
153
165
188
154
195
150
221
200
199
214
230
246
221
262
200
231
194
181
204
185
221
189
201
223
196
162
192
208
223
159
227
213
235
221
178
198
261
237
179
202
185
269
189
143
221
185
164
269
216
227
240
217
223
204
188
232
143
212
231
225
257
170
190
216
103
185
227
189
235
250
218
153
251
177
182
201
237
196
227
240
230
200
223
183
207
261
253
228
171
164
178
225
206
213
207
207
164
223
182
174
138
257
228
160
198
199
161
111
164
234
209
239
202
152
244
104
164
176
239
241
189
164
178
178
214
242
184
205
213
160
239
204
224
258
226
207
159
143
193
163
171
225
228
269
203
192
119
277
222
189
247
223
202
196
195
221
257
217
237
207
128
191
251
162
191
183
168
182
228
177
188
242
211
236
142
196
217
163
201
173
238
169
221
181
236
231
253
149
179
153
236
164
129
193
185
221
199
158
224
178
179
203
262
146
202
163
191
177
202
238
164
191
146
229
278
195
212
266
189
203
177
199
229
182
165
252
106
153
167
151
287
224
183
200
241
186
170
267
160
205
201
183
211
211
216
118
163
201
233
231
287
195
158
262
169
158
176
228
242
193
257
187
192
202
157
256
185
195
149
140
210
150
220
215
153
220
181
236
173
200
227
217
200
217
167
255
198
172
197
122
166
116
170
208
142
214
178
219
121
194
149
180
190
177
126
109
174
260
210
136
210
192
201
144
232
194
186
204
187
234
216
225
164
181
187
223
199
188
216
175
180
171
189
183
202
228
248
209
233
194
183
176
184
198
248
252
101
188
159
218
188
267
193
196
223
220
191
206
159
187
176
187
159
258
201
256
159
197
201
199
151
208
234
169
202
210
141
141
152
155
189
201
226
200
172
221
153
216
250
190
201
165
191
214
213
132
170
158
235
182
240
164
180
188
222
207
184
166
235
163
190
224
231
153
183
196
172
190
201
170
200
192
249
187
210
147
170
187
200
160
203
218
199
193
157
192
125
236
178
187
235
168
154
215
145
235
217
116
217
190
231
199
218
156
81
181
213
216
233
241
231
219
136
174
200
226
147
187
252
206
246
202
132
246
231
173
156
174
204
161
227
182
263
257
201
182
149
183
181
222
143
178
183
182
266
237
179
168
188
84
200
203
172
225
182
207
226
245
206
187
198
180
119
171
206
177
226
154
207
222
200
191
217
216
149
209
224
193
199
180
202
200
213
167
175
198
210
189
201
159
262
275
204
224
193
177
193
266
222
164
218
217
151
111
225
212
200
189
238
181
205
203
213
192
271
240
213
166
219
253
174
191
172
226
175
184
209
202
264
212
202
211
171
203
189
195
143
194
250
194
185
250
161
218
200
201
197
173
230
160
190
168
191
238
163
255
201
210
204
268
200
225
177
217
242
195
173
212
209
164
167
245
174
231
260
171
186
183
194
189
234
162
211
194
170
163
160
234
229
246
173
208
216
191
167
185
268
182
188
206
197
188
248
285
197
238
202
187
212
154
191
161
172
158
204
162
198
179
173
203
255
208
133
221
254
194
233
237
205
212
201
200
201
188
254
187
240
228
168
204
139
220
234
243
261
267
186
254
231
187
239
246
229
209
195
170
183
235
182
203
237
214
186
224
169
105
186
176
168
192
155
263
190
237
176
183
176
155
201
233
240
214
190
235
164
181
238
191
176
204
235
122
195
183
237
215
181
182
230
156
197
209
186
175
162
203
178
203
228
183
252
228
248
201
167
222
236
197
218
207
204
205
172
177
161
155
257
162
188
222
195
217
226
176
185
167
235
193
212
175
261
152
205
196
232
149
232
172
192
182
230
212
249
191
196
195
203
164
229
219
167
220
247
103
156
177
191
218
182
186
121
214
195
111
192
229
181
238
170
198
195
186
219
115
237
223
239
209
159
257
221
170
229
212
226
177
186
167
212
217
203
255
245
193
145
202
187
168
190
186
252
210
193
171
209
198
215
267
221
202
185
209
164
217
160
173
232
204
216
237
163
209
203
242
228
207
185
228
243
137
220
177
243
158
190
197
245
117
190
160
196
166
218
212
216
194
179
224
192
172
158
250
226
203
177
219
224
205
217
230
194
227
228
218
225
164
208
212
198
208
203
197
243
175
271
219
209
191
171
172
148
240
233
217
188
157
170
202
183
139
185
215
184
164
205
217
179
238
150
201
190
163
228
201
196
221
160
171
214
147
172
181
178
187
199
231
192
245
188
219
239
218
209
192
138
205
227
210
194
225
186
166
177
183
186
222
202
214
247
163
245
223
200
174
178
251
219
184
208
240
191
214
207
257
190
156
229
191
159
172
157
201
251
175
151
199
190
189
173
167
171
265
237
272
199
190
201
194
139
200
146
153
220
142
130
196
190
249
204
200
230
193
248
261
196
187
262
227
192
205
235
187
263
158
229
124
256
215
167
175
226
192
157
293
221
147
196
239
177
185
247
163
146
200
222
231
198
133
170
234
145
149
241
210
172
256
140
211
238
201
226
171
284
185
184
196
227
191
210
158
160
194
212
166
212
193
164
214
185
123
193
238
174
213
163
217
193
197
182
193
195
221
215
244
222
177
207
223
178
169
256
153
265
202
222
212
203
187
218
203
231
178
211
240
219
184
207
185
258
235
217
228
218
171
172
180
185
219
272
239
202
227
143
200
182
203
170
225
187
232
185
164
212
181
175
241
145
153
184
216
126
247
266
204
203
235
197
228
245
284
194
107
218
206
199
209
98
104
190
182
198
195
215
215
136
171
204
167
196
219
144
180
222
180
220
166
172
263
210
173
219
194
217
128
123
180
203
234
221
181
157
174
146
226
219
256
204
231
211
154
243
249
159
181
241
173
188
175
200
179
201
221
192
153
208
134
235
181
193
220
198
243
164
281
226
219
202
175
159
201
206
217
208
221
140
256
127
178
266
106
220
219
201
238
204
131
205
214
208
174
160
158
274
228
177
271
147
188
161
197
179
264
212
192
206
128
196
222
170
227
185
144
209
160
184
153
180
295
207
195
178
176
185
268
157
202
215
191
104
156
184
189
218
179
184
213
197
219
217
228
174
217
202
166
241
187
220
210
188
180
127
157
129
172
201
202
236
212
232
126
199
192
183
233
180
253
194
217
187
206
198
157
213
224
199
168
168
250
149
229
219
205
162
215
187
218
192
224
245
160
192
185
218
212
175
221
172
158
199
223
133
181
176
210
125
225
196
220
113
223
175
176
230
189
239
233
234
156
179
175
189
221
212
223
179
212
196
189
174
238
183
198
221
129
190
197
191
190
190
210
193
210
213
274
252
173
186
175
277
230
202
237
213
198
237
176
235
230
241
144
248
239
162
158
164
209
211
275
185
244
228
205
194
225
202
141
189
247
214
162
187
231
224
230
191
151
142
159
160
195
236
154
175
203
168
223
197
193
241
207
206
170
136
198
194
183
118
99
177
218
231
227
198
159
241
230
184
229
155
229
122
237
181
210
213
231
210
180
237
249
219
170
210
168
185
170
189
157
159
246
196
172
148
190
211
167
232
211
257
207
215
175
215
181
146
246
222
255
198
155
154
182
241
266
270
223
223
239
222
238
161
179
180
231
137
83
258
188
220
260
271
177
269
215
244
158
238
189
192
249
224
197
169
122
200
207
139
186
212
198
183
196
187
259
184
192
207
201
236
245
234
218
193
156
221
235
234
202
255
212
226
202
168
186
220
114
200
126
272
162
283
226
189
259
95
230
185
181
190
209
199
210
165
238
239
201
219
215
187
195
242
207
149
149
241
183
179
210
221
181
220
212
254
193
228
186
244
181
145
156
207
111
177
186
229
222
179
191
227
186
214
210
215
159
137
193
212
193
141
180
180
243
186
202
187
178
201
171
232
134
171
258
256
185
168
170
178
172
152
207
255
140
218
199
182
203
206
210
234
227
214
208
227
153
273
219
239
230
261
228
238
214
222
151
152
208
203
189
190
203
149
188
128
238
177
192
176
142
164
247
199
224
225
252
218
247
172
169
219
147
230
218
247
226
184
222
203
119
195
292
224
246
244
188
197
218
176
176
166
199
236
237
141
171
145
149
220
191
208
157
211
240
163
213
172
197
229
285
170
200
210
176
183
255
246
189
167
199
216
266
188
223
169
206
203
237
238
208
163
222
222
217
192
228
230
217
149
283
136
234
227
197
238
264
211
180
179
176
197
249
200
173
161
247
222
102
175
230
165
187
234
221
249
223
173
172
187
181
197
191
146
175
136
99
240
210
235
172
148
194
218
167
174
229
219
248
191
223
219
212
226
220
163
153
216
188
232
151
157
152
164
188
208
260
149
150
190
219
232
199
193
193
165
271
182
216
132
185
189
224
218
210
186
187
210
112
220
236
239
217
231
179
226
187
193
213
253
170
141
188
201
183
295
187
197
213
183
134
174
194
214
192
150
170
186
186
165
222
213
201
208
210
190
148
219
222
162
254
187
246
185
147
168
226
227
232
179
193
202
162
204
152
242
174
218
224
181
221
144
231
156
201
188
215
201
177
135
203
218
232
216
218
201
223
233
173
213
148
151
159
217
205
191
169
154
191
239
209
152
142
186
182
148
184
182
171
213
168
200
169
262
192
268
187
258
108
199
269
141
236
188
256
194
239
161
230
165
150
172
225
224
198
233
160
221
189
242
168
186
195
200
254
174
220
216
232
197
167
172
190
208
207
180
239
238
179
216
150
198
168
202
201
222
194
176
191
163
228
156
157
207
127
181
192
181
214
185
239
235
168
219
195
178
201
259
191
244
225
198
241
198
245
219
253
196
135
206
125
159
187
234
218
235
186
205
213
221
181
223
178
161
160
164
197
240
229
210
231
195
207
212
99
192
169
155
210
223
175
185
230
258
190
182
148
226
218
181
153
138
229
183
244
142
149
239
238
149
153
227
227
228
184
217
130
159
295
199
203
167
167
172
171
162
204
180
241
191
212
178
232
118
227
189
208
225
200
138
224
199
190
169
174
227
258
146
219
163
224
206
158
229
185
164
175
268
221
129
224
254
222
207
161
202
169
199
216
255
212
185
168
148
193
184
192
191
221
267
192
155
149
215
169
162
201
187
175
198
163
169
219
140
211
231
224
199
183
212
222
260
242
168
113
184
186
261
191
255
220
212
186
202
137
204
194
190
183
209
220
201
219
208
227
193
188
193
194
180
177
257
221
246
157
253
210
122
238
270
189
126
231
254
227
180
191
218
251
176
240
185
239
149
259
177
155
223
186
262
225
126
169
160
228
133
228
191
233
219
251
195
137
198
241
201
207
200
205
182
228
179
184
235
153
191
177
257
167
234
202
134
193
170
247
255
247
222
229
177
134
248
177
198
157
192
175
192
194
221
260
154
178
152
184
157
156
120
218
202
201
212
195
174
226
189
142
221
176
181
198
163
232
206
190
246
228
230
192
157
211
223
221
169
239
213
161
206
234
188
183
234
233
200
188
231
257
161
125
193
263
237
198
230
190
201
203
160
168
177
236
174
144
208
188
245
226
234
204
174
267
200
171
188
199
133
187
237
199
230
234
251
251
226
121
128
203
189
169
218
221
212
186
195
221
226
208
229
186
209
166
182
210
127
123
237
232
223
206
178
156
218
215
236
211
162
216
195
234
246
230
211
259
206
207
176
179
230
187
278
144
203
110
176
161
248
178
237
175
239
189
144
257
227
206
186
161
269
150
216
247
249
206
175
171
168
197
229
189
191
197
210
211
204
190
218
205
168
124
169
218
175
182
215
278
230
221
208
226
215
212
155
149
157
208
153
238
168
196
185
239
203
205
152
237
222
191
243
165
180
177
173
231
252
207
193
231
205
186
162
158
172
217
251
237
142
186
283
195
236
200
226
205
240
250
146
135
152
199
230
269
205
250
155
216
214
212
216
204
169
169
219
190
212
218
220
163
191
193
260
156
209
202
225
249
212
172
190
177
176
185
180
243
159
207
256
206
208
139
138
188
214
151
194
184
246
180
158
176
242
221
184
182
236
187
123
213
218
216
171
142
254
136
164
183
172
248
253
199
208
249
246
246
233
117
211
221
188
238
159
214
148
186
154
172
219
202
247
226
257
218
208
238
223
230
287
216
217
187
201
171
230
213
220
214
269
206
190
224
226
170
198
194
203
159
142
252
191
189
216
259
221
260
132
232
213
280
124
221
203
203
200
237
220
240
142
237
198
185
204
151
180
244
217
217
137
256
241
175
192
150
233
204
218
187
218
236
255
173
177
202
227
290
169
171
225
224
205
151
267
182
192
140
158
161
212
214
195
208
164
215
224
175
274
197
230
151
197
188
217
202
178
213
229
198
183
247
216
210
162
224
194
172
294
202
127
184
186
222
194
199
196
148
161
241
204
188
145
259
169
284
198
184
218
257
165
157
228
181
152
187
200
155
167
159
174
225
177
171
187
233
170
160
245
214
218
213
187
188
178
208
165
149
160
159
205
208
213
204
155
180
150
219
207
187
214
168
228
181
155
177
200
200
208
190
224
211
228
224
196
233
170
171
164
160
107
160
208
300
184
243
158
188
169
206
210
232
285
218
264
179
179
221
177
201
225
180
162
166
259
168
213
153
208
171
168
200
194
181
214
201
156
237
205
221
197
169
222
176
149
218
241
189
182
156
197
263
155
234
195
232
233
170
199
181
221
212
217
169
170
230
194
198
170
253
189
184
240
210
159
167
181
137
159
210
173
215
166
189
164
251
224
222
202
250
210
192
139
205
189
205
183
190
276
227
168
183
210
194
235
199
254
197
207
200
220
202
211
184
223
240
109
204
232
200
171
187
195
213
175
200
179
213
168
194
150
127
252
197
224
219
180
220
187
184
211
231
250
219
263
224
157
187
200
268
197
249
192
127
203
169
224
257
194
185
168
200
230
124
214
199
199
208
171
239
151
196
197
162
209
190
214
156
178
182
162
244
154
176
216
207
232
179
206
172
197
214
196
164
179
200
198
199
240
198
216
200
232
252
251
175
212
206
198
207
223
231
181
208
213
182
178
204
182
261
252
215
153
168
196
167
187
230
147
186
189
169
217
206
155
293
233
188
196
181
168
186
160
206
215
178
255
184
187
217
246
211
184
193
211
184
237
179
199
254
165
170
197
196
208
237
188
210
189
196
249
157
219
224
232
229
165
209
197
204
198
134
239
194
244
160
193
158
138
213
167
190
183
220
251
210
199
183
239
172
137
226
174
203
213
190
191
157
154
222
179
182
158
199
172
213
152
261
198
176
133
204
199
228
120
193
222
198
197
111
229
235
158
204
197
213
175
243
197
209
163
177
198
217
178
189
231
197
185
187
208
190
167
161
207
190
216
209
220
216
228
146
219
242
221
239
220
223
185
108
159
144
223
209
179
212
148
178
168
234
254
200
122
171
237
223
272
227
226
228
228
189
199
202
192
210
248
189
249
182
208
234
150
214
172
250
168
182
194
205
223
157
193
206
205
245
218
202
241
217
204
129
125
233
175
225
220
217
117
190
253
210
188
152
222
206
187
178
206
260
171
185
224
202
197
245
165
230
236
162
145
164
179
191
163
220
200
212
162
144
155
183
204
183
158
196
284
162
233
230
186
170
183
199
178
209
186
221
136
212
242
211
193
238
214
228
143
210
210
200
177
69
202
196
178
153
145
205
199
236
213
204
206
198
205
215
143
257
189
235
213
223
115
175
242
199
215
186
240
185
239
143
181
182
204
166
174
218
148
182
195
187
182
164
232
248
178
198
182
211
236
180
190
158
174
184
207
187
190
220
223
161
211
241
189
190
261
187
208
195
238
211
200
214
194
188
216
227
159
169
197
193
197
157
128
212
122
232
241
147
190
230
267
122
209
181
252
233
186
163
247
237
233
196
187
156
259
204
243
138
156
186
216
165
215
281
272
154
122
121
250
159
148
145
196
211
200
202
224
241
198
241
202
146
232
163
186
188
198
257
251
172
172
137
209
224
180
174
253
230
150
153
236
230
187
227
242
222
171
233
233
221
203
224
186
167
187
192
200
194
200
206
199
258
229
231
225
203
217
217
218
204
194
211
198
158
197
203
149
172
177
257
186
181
143
190
256
143
180
224
195
259
202
196
210
255
192
219
191
172
248
185
218
196
204
193
200
228
175
213
215
131
206
262
246
210
234
203
181
174
162
235
169
247
239
241
154
228
174
180
221
223
155
214
186
237
234
198
211
196
197
213
214
176
216
245
213
197
242
215
237
254
246
224
205
213
180
230
207
221
197
206
177
231
197
226
206
214
167
161
174
184
135
217
207
120
214
225
153
197
227
237
182
217
199
202
164
256
221
176
228
227
200
185
195
204
221
166
203
236
225
201
212
185
219
200
206
279
139
147
171
147
215
229
203
195
170
149
217
204
166
240
217
181
239
154
222
170
207
234
172
198
233
158
183
187
181
187
193
153
137
166
205
178
199
156
180
172
255
255
245
167
243
212
165
185
217
132
176
199
156
196
203
249
147
230
163
214
135
207
189
260
170
152
230
232
243
182
173
199
223
247
224
193
166
250
249
185
241
248
220
208
197
195
203
251
147
250
211
128
154
194
195
225
248
172
150
229
180
187
202
251
209
163
249
160
203
256
184
227
256
129
220
213
235
184
250
179
164
255
210
200
269
197
259
236
184
236
222
230
148
165
181
224
126
201
226
201
188
223
181
155
158
242
246
195
221
258
185
186
206
246
211
223
213
205
246
212
183
181
204
174
235
225
168
153
188
246
183
159
212
219
205
242
192
155
194
182
175
164
218
221
203
214
129
130
195
240
285
236
193
181
206
225
202
186
186
176
226
254
220
186
182
155
231
235
176
154
123
225
265
264
190
167
226
251
189
192
246
214
150
115
267
146
166
240
175
153
184
223
256
208
127
261
286
258
197
244
223
182
152
177
210
192
209
228
206
232
276
237
196
161
243
283
215
199
181
209
205
163
160
124
209
182
210
187
172
237
230
164
148
188
182
164
219
188
210
250
238
220
196
162
202
175
194
175
202
190
226
188
169
187
177
190
186
245
176
192
187
230
211
213
206
178
259
172
198
158
150
176
175
184
233
149
173
210
226
223
176
224
236
199
204
223
206
178
189
190
232
173
123
210
225
215
234
165
249
260
189
214
174
218
154
194
205
241
181
222
217
138
250
196
132
227
215
237
151
164
195
170
172
257
213
200
267
110
178
218
214
222
134
179
268
176
210
270
224
238
160
180
176
166
216
207
166
242
228
206
183
184
232
202
188
183
224
212
200
144
215
206
144
232
259
223
176
193
203
202
189
142
239
230
237
167
243
202
184
273
176
195
179
187
175
201
204
229
159
157
233
224
205
212
180
132
214
214
233
184
145
198
265
236
257
187
188
111
183
151
180
207
172
214
209
170
228
205
220
217
190
165
239
208
229
221
138
268
218
195
195
218
193
205
291
213
265
214
225
150
144
250
189
158
189
217
168
188
204
151
182
248
156
262
127
187
233
176
193
131
216
169
190
139
198
204
137
216
233
179
257
183
233
213
204
230
175
88
139
183
188
156
191
147
197
216
182
161
201
210
155
173
218
191
200
219
247
180
258
176
267
226
201
220
132
150
240
205
230
173
253
259
207
181
210
207
220
189
206
211
190
149
231
220
203
163
171
242
203
208
183
231
207
216
164
207
202
239
187
210
238
209
140
218
190
257
184
209
263
194
165
215
252
181
228
262
162
184
189
167
145
171
198
179
195
180
227
186
189
210
155
222
172
157
256
204
225
217
187
219
170
232
221
150
166
228
207
227
188
135
202
172
124
218
221
226
158
227
224
157
206
141
154
175
269
182
208
205
211
155
156
174
188
225
202
226
243
183
234
216
185
246
265
250
150
179
173
245
171
233
148
130
192
241
256
192
169
168
229
232
183
201
193
192
212
223
216
182
139
229
193
180
187
212
174
246
272
256
190
136
177
222
223
159
158
233
193
241
272
229
235
169
190
174
216
192
210
221
210
274
156
208
168
149
183
210
141
210
153
146
200
222
135
221
152
213
130
154
226
180
205
245
158
186
223
224
188
204
244
187
184
132
301
157
217
191
234
230
167
232
139
219
212
218
155
190
198
193
194
190
194
171
217
250
173
177
224
183
163
207
222
195
195
226
224
259
198
223
194
193
276
212
204
204
212
185
175
168
213
202
195
224
200
203
203
206
148
232
221
209
210
208
153
178
154
206
244
200
223
202
213
268
229
223
180
144
206
173
207
199
207
124
178
195
242
201
226
190
275
199
242
238
206
176
150
229
153
192
193
218
251
257
169
179
233
184
179
237
184
207
213
228
176
190
220
218
145
107
249
202
143
239
189
155
228
173
151
199
159
198
195
188
215
193
227
210
198
199
238
205
246
240
233
184
201
151
217
278
194
228
185
214
194
183
236
177
211
160
159
222
224
138
199
163
195
241
200
214
223
144
196
170
148
251
238
174
246
173
221
208
223
239
165
201
205
209
200
228
265
216
163
196
155
219
193
227
192
246
168
124
184
259
238
213
128
198
181
183
260
239
231
177
177
126
227
186
159
168
171
197
202
210
178
179
213
247
229
254
223
185
211
196
154
218
258
235
169
221
204
174
173
198
125
205
194
178
203
179
224
200
203
213
184
156
218
182
184
161
175
201
262
223
188
169
252
241
185
223
174
214
189
213
250
294
263
214
185
218
201
190
138
214
172
167
211
256
221
235
234
196
209
222
161
193
225
229
163
224
134
210
174
207
184
191
233
169
138
263
237
168
176
151
218
159
194
190
130
159
194
161
198
235
262
248
228
282
232
205
164
178
225
209
185
201
244
154
166
157
213
245
250
206
185
197
204
194
228
204
184
231
128
189
180
183
199
216
172
149
213
197
213
136
218
205
223
243
143
194
229
229
157
227
254
183
257
203
193
194
138
142
169
226
182
125
186
219
222
240
209
210
182
177
190
223
160
227
235
241
176
223
212
159
222
107
230
221
217
201
156
285
173
219
156
187
206
216
191
177
212
171
203
178
219
247
266
181
163
183
197
163
223
201
192
164
247
212
224
160
211
249
187
217
232
166
177
203
266
198
160
196
185
196
202
186
249
197
244
150
189
171
217
183
204
227
138
192
217
161
202
192
235
217
217
188
193
227
129
194
226
120
224
218
223
162
258
202
112
198
235
162
214
211
194
204
207
282
207
113
205
228
172
268
179
188
180
214
171
239
179
177
197
214
156
190
195
179
234
253
185
190
174
201
250
182
184
258
232
220
167
237
206
194
194
243
165
138
198
231
167
128
176
151
215
170
297
223
234
303
198
186
224
209
206
281
211
181
231
163
199
255
164
225
212
172
222
201
189
214
168
228
185
208
214
198
241
214
205
145
225
191
170
176
190
190
216
158
196
263
176
197
224
221
235
194
181
179
241
173
246
150
202
166
235
185
208
231
278
219
227
240
225
194
220
174
159
212
194
209
167
182
202
203
214
228
208
160
146
232
251
251
257
149
137
261
201
134
234
250
169
186
216
192
148
127
253
204
175
180
207
165
195
209
199
188
234
254
172
211
178
214
165
235
170
202
162
222
150
226
203
180
231
123
205
176
168
211
163
217
216
194
162
251
227
251
224
137
136
259
194
194
210
160
209
180
192
212
220
150
200
233
262
172
167
195
212
192
198
189
183
105
224
208
171
150
243
187
221
231
160
202
179
205
164
149
232
158
254
229
294
218
187
132
159
184
267
232
191
227
137
102
253
202
131
197
159
202
177
167
202
155
187
236
213
237
186
189
149
256
258
269
236
209
196
188
216
169
154
227
233
229
193
193
220
210
184
212
173
224
181
202
206
167
164
180
178
162
269
205
200
213
191
216
207
196
183
156
206
209
156
172
235
233
219
180
244
187
208
198
215
167
228
236
215
197
157
194
254
186
178
247
205
288
195
256
272
218
193
194
182
178
211
255
187
244
199
160
174
219
249
149
216
202
208
219
159
252
202
182
201
185
158
257
217
208
218
167
168
218
207
164
225
238
271
207
152
187
229
191
217
232
162
162
278
133
209
188
215
218
222
211
227
187
139
229
158
150
181
202
166
239
191
162
171
241
264
201
115
181
223
202
247
196
199
194
168
178
253
199
145
213
191
184
121
248
225
167
246
235
182
144
125
218
218
193
207
203
236
161
171
261
176
196
207
200
163
229
242
230
218
202
169
184
205
243
163
229
229
97
211
236
152
133
197
191
162
231
178
160
250
230
170
203
194
193
211
191
233
258
137
178
162
138
169
145
186
181
237
251
221
196
182
212
264
234
242
223
153
190
235
179
204
203
221
169
151
215
208
148
213
165
257
194
142
208
219
233
225
199
269
128
185
188
194
215
182
199
182
162
201
212
188
160
202
156
224
173
155
199
173
197
221
220
202
202
189
153
176
195
200
232
203
199
202
199
166
217
115
153
190
217
198
211
178
229
223
206
164
202
219
228
253
148
132
229
202
287
262
180
260
212
214
240
194
125
161
238
219
241
229
253
223
274
149
171
216
124
253
188
163
220
195
233
155
218
236
205
148
253
208
165
209
221
220
206
158
232
198
243
177
261
157
185
227
244
215
190
173
206
175
221
257
137
212
180
239
213
169
249
199
169
205
229
203
244
143
195
127
171
161
214
148
194
146
127
253
157
200
207
243
172
207
160
204
180
210
140
209
230
163
181
201
227
231
213
205
177
176
163
187
189
212
141
190
162
173
266
223
226
161
118
190
256
229
195
203
188
148
178
145
212
215
267
194
215
224
199
278
231
215
255
221
201
215
182
148
196
146
255
179
207
182
201
235
167
228
206
185
163
251
173
182
222
211
141
185
237
213
238
233
233
158
161
232
191
252
208
221
176
180
207
239
137
222
227
162
210
206
192
221
221
225
137
248
213
226
207
198
171
197
212
151
200
224
213
186
194
167
195
254
185
212
167
173
219
206
181
173
232
215
220
203
144
159
246
170
243
200
213
195
246
248
180
244
174
154
185
173
245
228
245
241
214
210
233
181
211
201
271
158
244
186
160
213
172
227
167
210
199
210
200
142
231
169
143
191
145
199
203
195
206
210
168
240
256
219
215
241
233
174
220
213
216
237
181
212
159
116
175
168
158
162
197
240
237
231
192
211
196
257
206
212
197
175
190
241
201
177
213
236
159
221
226
178
252
182
202
220
227
186
217
178
218
147
186
227
153
159
227
199
208
217
215
182
148
199
223
150
210
121
195
219
189
185
200
158
214
143
200
241
218
160
212
207
220
175
166
224
200
203
199
170
223
192
209
114
196
237
227
176
184
129
229
176
191
253
155
217
205
210
232
235
168
219
174
252
205
193
187
211
246
227
191
211
164
152
179
182
166
192
239
136
209
177
268
207
174
192
249
165
155
213
192
212
229
178
158
245
210
218
254
171
232
221
238
207
239
213
224
175
188
222
193
204
230
266
206
240
236
152
161
264
236
210
244
223
201
160
184
113
283
188
220
268
167
209
181
216
221
223
241
184
162
224
184
230
208
189
249
205
160
216
122
221
178
234
251
195
146
227
240
151
171
170
137
215
207
223
182
206
238
165
270
240
224
281
173
192
209
251
243
210
204
204
192
231
232
144
203
200
233
191
195
236
230
193
161
154
176
174
117
202
174
188
167
205
154
221
223
171
210
156
153
178
220
176
256
119
225
178
210
245
194
184
181
228
214
295
201
180
121
255
208
116
251
173
170
191
188
252
246
215
210
269
257
149
225
201
145
177
227
227
255
201
201
161
222
188
209
227
193
232
195
222
171
193
200
176
207
193
245
238
170
142
192
207
134
170
212
148
158
177
219
212
201
198
239
221
206
221
176
189
229
184
154
214
197
234
247
160
216
212
248
227
210
189
173
172
211
262
220
191
194
191
153
210
216
231
106
204
180
194
206
175
196
182
257
150
190
232
227
225
195
192
199
145
236
240
136
203
206
213
204
174
200
200
182
215
168
149
183
174
166
199
221
259
151
254
171
194
230
203
231
224
217
190
149
189
280
143
214
236
212
159
233
145
189
211
200
200
207
196
150
198
219
261
240
200
210
211
230
234
211
205
181
187
239
197
162
212
246
168
139
221
147
180
179
165
214
238
214
232
192
214
189
242
137
244
188
162
176
126
256
233
131
171
209
175
209
210
151
215
200
195
192
183
180
153
257
179
224
188
205
193
228
217
228
248
166
127
232
185
238
208
184
195
221
206
234
189
205
129
197
216
140
173
180
258
173
216
219
222
152
160
222
236
209
209
199
169
145
223
248
210
195
199
214
250
217
221
267
240
139
156
194
219
242
231
226
217
212
218
187
200
167
211
193
174
138
195
213
170
234
270
131
213
189
212
157
191
155
186
243
242
214
145
230
169
220
225
244
231
180
233
178
130
158
195
205
221
202
194
156
169
239
191
122
217
217
183
223
238
190
244
271
215
184
188
197
191
229
195
269
254
224
221
175
182
126
149
231
169
146
221
160
233
179
156
261
222
226
156
173
202
180
158
133
181
222
188
213
235
183
182
187
180
197
128
174
224
239
140
187
224
243
161
201
183
154
241
227
197
205
195
220
183
155
237
189
141
198
185
215
214
181
174
184
170
207
133
173
131
187
217
229
185
225
242
205
221
190
185
219
246
293
201
174
240
178
180
217
196
254
139
240
182
220
211
171
201
194
140
155
185
180
140
210
207
242
198
158
252
227
205
218
166
169
181
175
218
169
166
180
249
199
201
152
231
203
216
191
166
148
179
218
141
265
163
144
244
136
197
160
265
211
274
204
266
207
206
259
173
174
184
179
205
146
135
228
163
220
133
202
198
113
216
247
237
221
218
175
212
213
191
247
231
170
134
226
194
219
147
159
271
189
210
193
237
210
167
216
217
198
152
226
285
172
200
199
201
152
174
188
217
195
234
191
193
242
242
204
217
147
246
167
197
226
213
166
155
226
193
195
220
152
152
220
164
137
215
186
206
264
259
254
193
190
188
202
283
214
157
227
225
210
176
204
174
160
221
171
166
226
200
230
197
248
219
184
232
214
172
215
222
257
253
204
168
213
208
113
166
207
193
231
200
168
243
177
175
121
182
256
123
253
195
206
236
191
187
232
260
224
213
155
239
168
238
209
241
174
227
198
186
121
207
219
175
292
244
212
209
106
231
264
192
166
215
213
246
224
227
196
189
203
173
212
155
179
248
205
169
204
191
234
231
220
170
206
133
213
225
186
219
151
207
128
202
236
248
197
239
203
140
179
210
155
197
170
224
245
162
170
246
135
233
180
256
212
201
178
161
200
158
256
171
244
242
228
202
209
215
206
187
232
248
175
259
233
201
229
207
181
170
234
147
205
115
192
179
246
223
210
164
239
172
185
228
213
173
232
201
259
175
154
215
215
218
221
215
222
219
163
243
171
209
214
232
206
188
152
182
175
184
193
196
166
200
262
248
206
189
223
162
279
177
208
250
162
208
202
225
179
265
191
197
222
145
197
211
196
142
184
181
268
160
227
161
213
200
211
242
243
221
237
227
231
251
140
193
211
228
199
242
157
198
170
175
218
209
249
164
228
216
220
186
167
183
168
194
167
177
190
178
223
245
233
256
230
192
147
239
209
249
193
222
178
192
233
216
233
177
195
125
150
223
162
161
225
153
241
220
178
181
226
183
238
174
217
225
201
202
170
159
146
196
191
202
242
188
183
180
148
257
188
253
208
210
199
206
165
248
183
198
230
152
202
218
165
259
234
199
176
205
203
187
205
177
207
188
187
226
221
183
160
200
173
237
192
186
198
245
174
245
188
200
170
249
158
164
237
168
214
231
147
159
210
114
173
193
260
161
207
245
184
167
194
219
215
230
220
209
229
223
133
145
180
180
208
204
195
190
185
255
150
172
169
174
197
160
187
208
227
177
212
216
174
177
206
250
135
225
153
211
211
157
196
238
164
190
234
209
192
192
194
197
173
175
212
180
227
205
214
174
254
173
206
270
201
150
218
205
188
195
143
149
204
162
168
164
168
183
185
207
167
217
222
225
179
212
205
128
253
218
209
225
205
149
142
246
245
271
192
158
176
202
193
194
231
266
206
199
222
163
210
172
166
225
229
242
184
251
223
163
203
193
207
186
214
169
182
240
181
147
274
192
170
179
202
225
209
220
193
228
261
148
169
208
189
209
165
232
222
195
144
285
171
142
225
209
194
204
241
186
201
236
181
219
261
117
237
255
180
241
186
230
189
184
148
250
197
216
233
201
181
234
204
184
169
207
237
232
194
180
185
227
234
223
198
153
231
185
217
284
213
159
269
220
157
166
258
137
240
157
144
195
187
247
240
182
164
187
232
238
180
192
223
191
185
255
218
165
235
203
231
176
177
267
191
219
265
238
205
250
208
193
210
224
183
246
214
231
218
201
216
262
152
185
214
191
188
219
174
208
140
191
145
211
166
234
193
219
194
170
261
233
206
219
231
131
216
232
209
207
224
256
248
232
173
182
205
194
221
212
279
262
184
226
252
237
241
195
114
170
211
214
154
222
221
200
256
153
152
209
185
240
151
166
264
191
255
197
185
192
194
158
196
225
245
157
158
241
262
166
265
204
202
224
130
169
226
185
219
181
185
206
203
237
195
162
181
196
181
174
153
279
180
184
150
249
137
201
223
236
194
197
133
202
232
225
244
186
194
263
139
237
173
253
245
177
198
156
245
218
233
182
184
164
129
193
177
198
178
254
227
250
206
151
218
173
230
207
284
216
242
197
214
247
166
202
226
147
190
241
256
227
182
249
243
212
169
187
145
206
188
165
195
180
209
162
174
108
187
193
122
150
188
146
203
263
171
237
239
175
200
147
227
252
171
188
187
259
158
222
118
212
199
187
182
243
198
236
233
224
151
180
189
229
163
151
214
211
223
207
216
250
163
190
213
167
176
155
281
213
177
195
178
283
246
211
229
158
164
152
231
177
224
179
262
205
219
202
192
189
191
215
178
152
234
144
216
263
161
236
132
179
216
220
120
277
169
186
129
203
175
164
196
146
254
163
196
251
193
197
238
182
223
186
196
181
153
174
171
241
132
163
245
204
232
181
217
206
235
205
252
212
199
175
155
210
226
194
194
210
195
162
199
245
209
214
251
154
165
243
144
206
211
182
163
175
199
178
213
173
210
164
249
193
187
149
189
146
181
282
184
165
264
283
221
216
189
220
136
239
198
267
261
228
193
159
142
196
206
172
179
263
250
213
152
156
190
202
210
200
235
202
180
190
221
154
191
232
196
190
199
239
224
187
166
196
255
147
191
260
218
211
149
196
206
216
193
120
209
167
139
257
179
267
199
197
170
197
206
166
215
185
179
182
233
172
166
208
268
204
255
163
236
136
200
272
229
190
160
242
247
224
205
190
187
241
224
171
208
234
212
204
204
234
155
199
168
232
199
223
161
205
152
234
209
227
140
150
165
190
229
174
211
143
237
226
154
221
179
217
191
251
243
191
172
229
212
156
229
216
129
160
211
173
211
226
140
197
205
201
158
249
191
180
136
186
183
206
206
197
228
192
207
207
237
181
236
200
104
200
167
193
134
234
165
188
163
249
180
217
222
231
193
219
149
189
187
202
189
171
194
125
206
165
222
191
220
248
184
144
117
186
200
229
206
205
169
199
151
198
242
208
211
222
199
206
214
257
154
158
184
137
190
230
230
215
183
209
179
182
158
204
174
255
175
230
208
268
188
231
212
215
227
255
172
178
185
197
142
224
203
266
143
237
156
189
265
181
210
197
193
178
235
151
162
182
199
219
195
169
190
188
211
156
187
266
179
203
203
211
161
260
220
178
179
222
155
216
149
229
105
236
204
193
235
147
177
231
178
198
192
217
182
181
191
197
216
223
197
215
129
189
238
213
221
195
190
192
208
182
256
210
199
177
188
218
218
185
178
198
297
191
143
217
182
221
107
210
190
143
191
236
192
256
174
228
213
197
181
205
245
167
187
197
198
111
190
160
144
157
214
201
179
207
180
195
249
210
196
193
212
199
177
239
179
203
164
159
174
286
195
206
194
185
209
195
237
172
169
236
231
139
181
213
211
196
188
280
231
226
206
182
133
147
254
168
265
133
262
264
149
237
195
195
236
156
201
188
184
178
118
189
193
218
213
194
192
228
225
183
191
190
164
113
180
233
175
213
159
215
212
229
224
242
185
169
245
221
218
213
208
238
162
206
264
164
235
189
186
195
183
153
176
247
193
249
212
169
261
184
214
174
183
88
235
201
194
250
204
193
232
224
161
254
226
176
236
225
196
193
241
161
182
221
226
235
219
129
233
221
196
137
141
239
181
180
237
221
180
196
147
287
139
210
220
224
144
281
266
199
241
205
185
208
260
212
210
185
194
231
171
184
219
234
206
146
191
204
198
150
209
116
200
169
191
182
239
173
197
138
151
205
165
230
160
182
185
149
195
231
211
253
155
201
195
208
191
249
223
253
163
212
246
194
192
214
181
187
248
183
209
205
164
192
225
191
155
175
251
269
190
194
201
219
243
270
222
235
196
203
191
226
150
202
195
232
244
188
216
166
149
217
255
195
189
230
199
285
209
231
187
212
225
225
165
280
186
179
158
166
208
225
194
197
147
229
159
194
152
132
166
171
199
175
168
171
164
202
151
131
214
199
201
231
227
226
203
192
223
173
207
154
163
122
235
219
265
212
224
206
142
192
232
242
230
183
172
214
178
193
213
196
123
224
266
197
226
217
229
210
186
243
207
141
240
191
175
238
210
191
207
200
193
185
188
267
155
182
229
186
185
205
192
229
241
213
159
195
182
154
145
149
237
190
145
168
199
146
238
202
202
222
162
233
135
210
224
187
201
220
273
192
178
200
207
177
159
248
240
224
246
262
222
140
145
173
232
185
202
170
206
248
173
152
155
222
179
134
194
220
229
182
216
246
161
200
179
189
214
200
223
205
187
134
218
207
177
206
263
212
155
187
218
173
200
117
246
220
175
177
166
191
235
231
168
191
177
163
136
185
175
189
187
209
137
212
174
273
209
270
143
196
222
232
201
204
148
190
142
195
251
212
170
189
210
197
190
243
132
223
255
264
182
226
240
247
174
207
221
190
212
246
171
220
206
204
163
165
182
291
187
194
153
150
266
249
133
184
247
170
136
249
227
170
223
184
201
203
200
255
191
161
186
196
207
235
207
180
247
237
159
159
158
176
224
177
206
262
235
212
203
191
257
138
182
228
213
262
226
284
196
184
179
190
229
137
267
244
200
191
185
206
228
162
198
204
197
196
256
227
249
271
197
188
218
181
194
220
245
233
181
228
140
208
239
252
149
223
174
176
161
224
213
204
160
226
204
215
233
171
206
159
224
180
161
213
263
191
212
160
231
190
263
165
177
196
262
194
195
193
162
215
249
183
188
181
258
198
210
255
180
130
212
183
228
226
129
238
177
204
202
215
206
220
200
208
175
133
164
231
185
211
206
198
218
198
194
115
214
169
192
195
208
226
253
252
229
154
220
158
211
221
175
175
209
231
236
160
151
277
207
241
229
245
221
223
219
197
226
179
156
207
199
237
247
222
235
176
142
214
274
206
178
223
218
169
216
204
168
200
164
175
171
213
187
199
245
206
195
178
270
274
244
168
162
181
215
200
176
135
220
173
195
207
201
141
270
206
222
146
272
235
237
167
210
271
227
191
208
189
175
196
137
186
158
213
165
203
139
144
236
208
129
126
139
191
239
166
175
234
178
167
170
180
245
207
232
192
264
149
245
189
205
221
257
180
184
222
122
141
181
191
194
191
212
210
236
250
237
200
239
225
188
202
163
213
244
184
204
196
207
215
210
256
239
107
182
229
214
194
148
165
235
184
191
255
237
236
210
174
163
228
150
205
170
195
125
235
227
250
205
207
253
243
180
202
118
134
174
222
193
138
224
148
214
221
160
145
248
204
136
185
203
251
196
215
168
168
193
272
156
205
239
194
183
238
194
202
208
207
204
171
217
204
203
156
271
168
166
202
192
208
242
186
110
237
188
198
190
243
223
218
173
186
166
169
176
274
231
228
177
225
150
109
155
252
252
184
143
166
243
182
174
168
169
246
242
128
203
173
184
121
210
252
255
187
224
228
197
191
132
194
244
206
155
197
222
160
194
151
157
167
164
195
150
195
216
208
136
229
158
188
231
155
152
163
192
214
156
177
215
214
125
173
141
200
182
185
191
171
226
190
226
173
260
240
217
178
204
236
193
298
247
241
153
146
195
178
220
182
262
192
175
174
145
207
229
240
153
234
256
172
198
200
230
228
205
230
174
207
237
169
151
175
171
264
179
175
194
179
196
209
181
209
218
142
196
191
205
182
142
174
170
202
170
174
184
227
188
210
256
156
202
272
202
225
256
199
182
195
172
140
129
229
231
228
188
162
210
226
144
206
185
203
168
197
200
219
198
220
250
149
196
205
195
252
156
216
215
227
176
207
210
208
211
221
248
244
213
196
185
132
217
224
144
236
195
235
228
168
136
192
209
201
208
124
226
149
222
176
133
178
176
156
204
183
203
193
168
199
184
190
195
220
163
239
229
181
143
192
188
196
145
118
242
213
191
219
172
247
216
227
135
197
195
233
190
218
254
229
228
178
206
206
137
238
219
155
174
178
222
204
210
195
200
244
208
192
226
188
263
230
220
168
186
205
141
181
213
255
158
192
127
245
240
153
230
190
198
181
257
196
155
206
210
151
185
212
222
171
134
178
177
252
206
202
148
155
164
164
206
165
152
161
190
265
126
197
169
223
212
181
199
172
180
135
167
202
196
227
210
188
129
201
205
182
217
251
223
216
197
184
191
274
191
192
257
177
174
229
216
190
158
144
203
216
241
187
187
229
213
172
187
198
185
221
227
198
173
157
185
172
187
221
206
125
179
268
233
215
223
197
197
185
198
194
169
166
234
194
218
196
211
223
202
208
219
203
209
219
177
183
163
170
147
246
153
136
211
130
223
228
147
216
255
247
237
190
166
172
253
108
208
204
179
177
191
237
195
207
157
203
126
179
229
190
144
214
197
188
154
242
200
181
207
230
204
193
254
206
195
176
212
235
229
156
156
193
204
224
173
229
196
259
179
241
175
196
246
239
170
178
203
259
221
251
240
196
200
187
231
215
191
158
184
242
182
256
207
194
256
232
216
143
188
217
222
278
280
190
199
228
181
188
165
207
195
138
156
215
146
265
236
253
186
244
227
184
200
190
191
226
210
192
179
177
231
231
124
245
170
270
212
151
201
137
141
217
214
254
175
166
235
179
226
275
228
184
189
165
232
188
187
149
207
169
201
241
200
249
214
214
218
178
209
189
170
279
186
170
243
189
247
214
261
173
225
255
231
220
216
168
186
246
198
201
173
128
174
170
185
257
223
208
187
100
120
252
206
212
240
262
175
192
209
237
247
218
261
189
197
195
204
213
165
204
209
243
214
221
224
127
214
181
202
201
236
167
261
158
180
208
203
179
212
196
180
194
242
167
201
181
187
227
221
218
178
268
147
177
248
240
148
235
164
212
222
241
219
190
203
166
244
185
193
188
179
192
218
202
167
203
180
219
189
217
253
187
195
157
210
163
173
220
193
172
237
161
194
199
210
149
190
197
170
169
212
203
161
215
125
232
215
201
227
260
247
218
197
223
202
229
208
192
161
209
219
264
181
174
218
199
212
182
222
168
222
174
206
197
186
162
183
184
194
200
199
217
143
182
202
235
220
266
193
231
233
203
124
124
213
169
161
161
188
159
176
240
231
186
154
209
214
216
186
176
156
202
208
216
121
200
187
240
211
199
204
168
156
189
198
201
204
207
198
237
182
200
193
164
228
199
128
205
154
237
193
211
248
237
219
238
195
130
257
205
141
232
154
256
246
148
171
248
98
196
193
231
252
204
242
215
205
209
211
149
172
166
204
194
202
195
240
165
201
212
225
130
183
144
154
223
185
166
259
255
238
151
191
181
234
266
232
284
209
185
269
220
184
173
221
149
233
205
182
163
242
152
206
225
221
221
207
198
172
249
236
206
223
175
186
208
193
191
214
196
184
144
229
164
206
188
244
237
182
203
184
178
192
207
199
207
214
165
227
181
220
185
155
166
159
187
258
139
153
161
135
244
254
224
229
215
170
150
154
177
224
203
165
166
189
206
235
188
210
133
194
256
209
154
217
171
240
203
233
171
244
219
218
202
204
172
202
237
151
198
171
192
180
192
182
185
183
196
201
129
189
231
185
161
130
224
223
254
225
210
199
226
210
182
199
255
245
171
180
230
189
174
168
158
204
211
242
214
177
193
166
226
170
150
216
225
206
183
204
246
263
226
229
219
171
199
108
205
188
233
264
215
186
267
172
160
241
245
218
204
215
146
175
214
182
192
134
216
189
212
221
279
208
153
180
199
178
177
196
173
237
191
266
134
191
184
193
162
113
175
177
236
206
220
204
180
233
146
213
213
201
228
243
247
238
149
244
180
199
161
162
218
188
187
185
178
217
234
239
204
159
184
201
199
144
275
212
195
193
190
207
220
162
179
248
215
137
132
169
230
166
167
188
220
165
142
154
194
192
265
215
157
213
181
189
214
212
249
200
190
191
209
267
149
233
219
221
209
211
228
188
159
283
278
263
197
211
239
268
192
178
148
218
197
162
222
231
196
213
173
188
267
192
133
215
251
251
134
267
204
257
168
167
179
225
256
249
201
210
170
242
199
218
144
243
227
220
127
167
230
165
152
164
274
227
214
210
223
169
226
205
195
196
237
244
237
209
243
162
144
207
128
202
184
211
257
198
181
212
210
228
210
260
184
180
208
224
165
238
176
157
216
176
247
203
168
220
248
194
239
163
255
221
186
215
200
123
227
189
202
206
178
134
225
212
185
204
127
180
242
227
202
173
206
138
181
222
222
206
220
220
155
233
154
206
199
224
232
151
171
198
190
220
242
217
183
193
266
147
209
190
165
200
187
228
162
163
156
201
140
200
176
188
182
184
212
262
199
203
213
196
189
212
238
175
171
153
192
195
187
197
195
217
185
190
175
207
197
133
238
136
192
257
181
226
161
215
203
222
196
252
167
207
257
208
143
213
199
143
248
137
187
180
195
282
222
174
199
201
243
236
209
147
208
155
204
211
225
233
193
216
175
135
266
123
223
212
185
202
179
165
194
211
214
183
138
177
212
247
220
185
228
202
225
201
183
157
235
196
227
113
208
214
175
230
185
164
182
227
199
152
245
172
212
173
242
138
217
237
230
229
155
225
172
229
259
185
197
216
203
174
214
179
132
217
210
152
258
243
194
211
216
174
227
183
185
183
179
248
211
148
219
189
165
191
181
208
255
159
211
280
211
229
165
217
218
221
129
103
158
210
178
262
203
254
158
222
214
193
190
234
159
181
187
180
193
187
202
166
208
261
241
237
237
240
196
252
235
200
259
205
214
247
209
221
230
183
232
170
199
192
197
193
180
248
191
160
213
266
195
197
210
193
174
272
216
224
236
178
264
216
143
236
128
270
187
242
161
243
210
210
197
179
188
183
223
172
206
173
125
212
236
220
120
239
199
160
153
219
175
204
197
209
202
243
186
239
161
250
157
260
140
250
172
193
241
193
266
187
215
211
247
137
234
217
156
239
238
216
182
250
111
156
125
204
203
161
244
157
233
172
177
172
178
240
204
188
233
244
119
231
143
209
162
204
105
241
154
178
163
231
211
215
169
225
123
206
191
175
152
200
165
246
247
188
180
206
197
217
234
245
231
236
250
205
174
168
173
223
244
223
185
213
182
217
224
225
141
174
201
179
223
193
207
218
164
211
166
203
224
159
133
133
218
136
135
219
195
237
128
252
192
187
177
128
198
167
198
170
208
160
225
196
211
152
204
217
159
235
167
233
165
200
187
259
190
247
182
234
168
235
216
250
212
274
199
194
178
208
282
233
193
223
179
232
242
197
194
175
236
221
231
205
250
102
209
218
148
195
252
127
251
253
189
216
223
143
193
217
189
199
196
206
144
192
200
172
136
217
159
196
139
256
208
217
179
160
165
228
249
220
219
202
159
179
222
218
196
216
179
221
212
211
195
230
171
141
240
216
214
251
185
209
140
153
159
177
218
194
203
238
213
196
192
204
120
217
218
211
216
176
204
213
180
186
190
242
234
170
254
178
196
232
208
243
235
186
227
243
224
194
135
219
189
189
183
207
158
202
195
205
196
204
207
245
241
112
195
268
238
172
174
171
155
177
192
200
154
209
283
173
226
216
163
195
269
226
180
148
171
141
134
223
211
209
221
209
269
192
214
221
169
246
176
228
156
260
146
179
237
174
220
225
215
241
248
162
201
200
156
116
231
241
183
189
274
230
154
153
161
168
167
204
233
151
252
168
222
193
265
239
175
145
257
199
230
162
186
172
140
171
191
124
225
232
136
160
191
207
167
255
227
163
220
146
201
174
170
202
241
259
228
171
262
214
198
210
165
215
196
203
257
183
211
186
134
205
159
211
214
241
217
184
169
229
188
237
193
242
175
115
179
223
246
188
163
147
203
158
148
237
219
134
205
195
182
203
146
223
238
189
212
206
170
177
211
199
213
259
192
238
158
218
181
230
137
169
222
145
160
267
213
178
153
210
210
229
118
235
225
115
209
194
188
154
212
165
202
210
173
200
216
261
180
204
203
139
177
217
150
180
208
217
211
175
141
205
202
233
168
119
140
169
191
222
212
190
224
189
242
178
160
211
207
215
227
217
216
184
169
178
210
210
190
245
202
241
229
106
202
240
203
221
254
207
235
252
137
240
170
172
168
213
224
172
227
175
189
219
211
166
192
236
167
218
203
132
210
253
167
147
242
182
208
196
177
223
238
139
232
201
178
139
156
175
243
258
181
204
231
227
193
240
189
195
228
179
209
226
150
183
129
148
160
180
222
222
216
185
170
222
220
161
185
219
207
112
203
246
191
251
272
249
216
175
280
229
228
211
174
203
228
179
195
220
249
215
257
259
188
119
198
232
250
244
203
149
206
234
229
125
154
190
176
217
137
216
217
194
208
247
221
184
155
162
151
238
173
148
181
187
163
231
213
208
231
237
184
259
195
177
151
221
222
198
222
205
140
198
206
123
216
204
157
162
234
167
244
216
212
151
169
240
188
223
229
227
210
225
199
164
187
207
222
220
190
250
228
193
234
190
204
192
139
222
170
154
220
171
210
192
188
220
151
220
117
192
241
222
184
213
215
229
233
243
224
197
145
198
190
217
168
187
171
142
160
216
194
182
211
227
182
230
179
187
249
173
231
257
164
277
207
222
231
175
221
207
189
239
185
199
189
157
203
219
245
151
185
180
237
178
236
198
175
155
241
239
140
184
192
261
238
176
185
171
277
172
183
214
169
199
224
235
148
200
239
178
187
121
211
255
190
235
240
147
172
200
201
169
265
192
163
249
188
231
209
221
154
196
182
228
276
144
187
161
212
201
225
195
245
185
211
206
151
141
115
214
151
232
199
179
162
253
223
180
216
206
211
159
165
197
152
179
214
218
262
187
179
165
184
235
209
143
194
176
250
215
238
198
230
232
204
226
219
247
240
170
184
215
182
222
191
205
143
253
206
160
211
146
191
225
197
236
158
105
174
204
216
209
199
173
180
224
200
208
148
199
185
207
169
183
257
183
238
248
181
205
151
199
219
246
174
185
161
180
195
182
161
202
195
203
214
229
236
191
262
128
218
178
251
233
216
221
234
259
169
216
209
232
212
216
169
169
193
208
190
212
151
193
247
123
146
215
189
205
170
281
240
193
129
214
151
147
187
178
223
241
165
182
223
215
221
272
245
164
240
226
196
189
194
194
197
194
157
160
201
231
161
180
136
195
271
167
241
206
164
247
227
226
175
158
187
249
204
165
248
99
205
225
144
216
179
257
203
200
185
182
211
220
237
270
211
157
182
204
236
200
136
192
190
237
180
156
205
251
158
204
171
256
208
199
182
195
162
198
250
182
174
227
148
192
163
171
228
166
234
191
199
221
169
201
230
137
222
186
200
206
233
193
173
96
174
129
207
212
198
183
196
205
216
183
207
209
176
234
256
248
200
237
193
196
209
227
203
210
206
246
243
184
165
190
193
194
188
230
150
256
179
224
246
200
183
180
207
192
209
144
243
218
226
265
170
229
206
205
194
221
189
176
174
222
263
187
171
224
213
195
200
227
186
158
242
207
207
208
236
232
264
192
265
202
217
263
186
223
171
216
206
188
217
168
268
201
271
152
197
152
187
231
155
155
158
180
143
230
185
174
283
176
271
248
231
176
201
246
199
172
166
234
195
171
182
179
125
200
200
261
194
218
222
195
189
220
228
165
201
192
174
172
187
183
156
97
180
178
202
196
249
161
200
229
158
137
176
169
221
212
242
236
221
238
229
217
229
232
154
150
169
228
233
247
207
169
157
163
201
171
233
186
221
277
224
208
184
166
215
158
184
189
207
178
174
199
170
207
238
170
158
239
159
202
122
157
235
184
200
184
189
222
198
162
147
200
254
146
180
260
201
187
216
165
248
238
172
262
227
201
226
223
198
229
215
144
171
207
178
216
218
185
185
205
193
175
182
137
256
127
207
200
183
199
206
169
137
159
206
214
216
188
168
207
143
178
161
180
207
159
207
200
248
203
204
142
254
202
161
245
259
243
151
218
164
187
160
227
245
146
193
207
204
248
218
164
203
199
239
184
183
200
171
260
229
139
197
228
190
167
217
150
195
173
193
259
170
194
164
187
205
232
236
203
171
200
210
200
137
257
205
194
218
230
145
238
200
161
97
213
211
203
112
213
228
183
217
188
229
265
189
184
228
210
183
161
212
220
206
172
196
238
234
156
193
95
145
239
201
204
184
262
212
218
184
173
206
199
217
174
248
223
170
166
223
161
210
198
239
175
207
150
223
191
227
167
210
136
202
162
202
147
234
195
230
183
197
209
220
209
204
245
220
185
179
265
213
207
222
222
136
216
190
184
227
221
151
169
200
236
248
207
211
272
159
193
173
220
203
241
221
167
160
148
221
200
195
254
209
191
204
156
150
185
249
201
192
172
214
196
210
164
206
225
184
182
246
220
153
199
208
133
211
197
223
199
247
157
198
181
129
171
170
192
223
178
265
198
193
205
172
183
238
196
205
191
225
208
211
253
192
147
147
201
148
200
243
202
209
169
225
231
174
213
150
212
259
205
254
202
174
202
185
219
171
149
201
146
227
219
209
178
180
257
187
237
164
222
195
181
195
184
188
185
202
214
236
228
231
213
190
236
192
149
206
205
223
193
231
198
202
147
225
221
209
144
215
242
198
170
187
258
220
266
203
158
276
211
223
204
165
170
214
277
172
233
180
237
176
177
264
206
252
221
197
192
185
186
223
214
191
136
153
185
188
258
172
170
226
146
208
141
170
172
185
187
175
231
194
145
165
208
225
239
219
194
196
174
200
225
188
187
276
207
241
176
190
254
182
171
201
229
134
220
219
202
188
197
218
175
188
152
149
174
201
242
229
199
229
202
196
178
206
166
202
211
174
220
208
172
254
213
200
240
217
258
188
243
173
274
253
217
173
214
270
229
240
240
199
243
159
222
269
180
176
198
148
205
185
212
206
223
224
235
156
142
252
141
209
213
144
190
181
182
250
205
162
206
220
175
204
216
194
243
219
148
165
205
251
203
233
142
178
232
163
195
198
233
139
220
150
218
210
184
130
208
216
191
166
216
205
249
187
236
204
198
192
221
214
217
205
214
227
222
169
225
170
244
201
238
184
217
229
126
239
195
140
253
275
154
225
211
130
272
257
212
203
195
188
229
272
224
184
203
200
162
186
166
192
146
151
171
145
201
157
229
193
188
197
155
193
192
181
182
267
206
182
201
182
238
213
189
183
162
133
205
159
182
217
216
230
206
195
144
220
186
217
182
179
210
207
151
199
150
142
182
121
238
210
261
173
228
241
246
157
209
157
201
204
152
167
174
218
182
206
181
204
189
254
194
258
250
171
242
196
177
252
148
206
189
188
211
172
213
205
173
174
190
246
178
243
193
176
227
162
220
185
175
249
218
216
157
163
217
224
191
206
190
187
227
195
161
192
174
265
151
233
171
228
227
214
203
171
162
207
236
170
224
196
148
235
189
257
190
223
166
165
175
171
225
173
264
241
269
192
191
155
199
161
192
203
207
265
166
231
279
125
153
165
202
183
182
191
199
158
246
165
237
209
240
204
215
196
208
213
285
186
235
254
175
188
146
129
222
223
154
173
211
170
253
175
180
110
234
102
216
240
170
188
212
192
195
210
210
244
153
237
202
237
149
180
150
204
222
165
229
182
195
219
176
207
243
208
179
118
140
203
234
221
249
169
170
229
168
182
186
214
213
196
184
182
270
192
188
127
219
218
157
239
180
196
188
210
213
156
213
179
159
186
185
234
191
184
171
260
169
261
192
178
204
191
215
189
218
176
184
145
228
176
226
212
218
194
160
250
149
195
219
164
211
175
239
255
231
173
177
238
207
211
200
226
281
181
221
211
137
200
232
197
229
225
205
118
179
231
208
235
209
251
203
172
201
164
202
229
194
266
150
245
194
174
182
208
183
191
201
257
175
241
203
132
227
180
191
240
241
203
217
223
199
241
220
212
187
184
209
262
219
171
170
156
167
161
259
150
187
240
269
217
133
120
129
208
220
238
217
177
193
175
182
216
210
182
205
224
170
158
153
166
179
213
168
169
205
209
237
207
215
211
246
254
179
215
221
171
212
187
168
165
226
240
198
205
152
192
254
206
209
207
241
146
218
177
179
155
108
143
269
196
187
197
211
226
232
209
164
201
234
200
189
140
210
223
206
155
217
189
226
203
147
260
184
233
196
248
109
235
189
216
172
209
189
232
214
199
211
222
169
173
216
127
189
188
216
179
197
177
226
148
207
145
160
231
250
224
261
224
226
222
214
155
199
246
172
210
250
198
194
231
167
179
190
247
225
183
149
225
223
156
230
214
178
179
198
165
190
217
227
186
194
161
215
207
218
181
249
174
207
157
204
223
175
240
180
206
197
190
184
153
205
236
232
198
163
195
165
189
187
162
230
107
256
251
158
189
192
161
200
169
228
118
228
240
141
203
228
237
183
133
165
189
177
223
223
185
202
181
266
203
219
213
164
215
164
163
207
132
173
175
241
136
191
270
123
173
209
194
223
188
231
196
146
220
225
198
203
192
201
148
235
205
134
243
171
168
191
215
222
198
217
194
182
174
194
213
221
176
202
209
196
178
164
240
210
221
160
217
173
180
220
212
164
183
190
203
208
231
213
221
216
255
190
217
196
141
139
252
232
232
254
201
229
209
199
155
263
178
193
212
220
206
232
184
159
255
195
187
193
214
209
201
161
142
161
142
177
207
200
188
128
227
247
151
204
181
160
254
242
162
158
165
172
234
254
257
207
143
200
191
235
165
207
227
189
126
275
157
166
139
227
196
236
122
228
225
219
204
252
162
162
203
174
182
264
192
149
207
190
181
190
220
203
173
186
198
209
195
232
220
202
180
233
220
219
178
180
162
218
211
197
263
238
205
236
144
189
212
202
229
185
175
249
202
153
233
211
193
201
217
251
244
175
175
109
87
157
187
196
180
220
171
209
225
252
128
163
154
158
214
179
185
170
192
148
229
220
221
180
200
175
171
183
220
198
203
209
202
270
178
179
213
163
227
217
259
201
196
212
216
233
186
233
225
203
144
226
189
207
188
238
158
228
182
174
198
193
208
247
174
180
195
231
124
108
180
161
217
135
221
244
233
232
197
160
166
193
192
165
241
181
249
191
254
216
171
181
211
193
219
242
207
185
213
186
208
206
155
151
178
228
166
193
217
214
231
210
204
233
191
174
213
158
220
183
156
201
208
172
239
189
129
178
175
187
189
222
186
198
193
201
227
245
207
246
212
247
227
207
241
187
173
244
202
186
165
191
219
220
192
177
209
199
221
182
172
224
181
188
239
203
200
238
169
201
213
174
231
212
181
225
172
231
193
213
194
195
211
184
208
220
165
209
207
199
240
232
240
168
144
164
199
229
146
222
231
183
177
218
186
235
234
170
220
171
270
206
137
154
221
147
196
175
171
213
163
220
185
233
252
239
181
168
193
177
130
255
230
214
199
149
192
221
160
183
174
154
220
213
199
151
209
202
115
195
195
193
201
205
199
195
188
270
254
187
171
240
192
220
216
214
198
233
193
191
194
236
212
213
217
220
246
218
198
176
212
186
218
282
189
145
186
222
210
246
222
235
194
201
223
238
197
155
231
176
194
127
232
195
195
221
267
230
171
153
259
191
202
171
246
230
238
172
224
231
193
210
175
124
211
235
196
255
229
165
235
221
155
217
178
207
189
209
225
227
186
204
204
130
150
207
169
149
228
236
240
167
223
178
228
203
229
196
163
220
185
216
160
150
226
236
236
218
185
202
189
203
197
159
246
167
225
223
268
153
135
182
257
153
189
229
179
266
143
190
219
212
186
183
205
228
281
193
189
134
149
273
199
239
210
169
162
172
200
159
186
151
127
196
170
120
156
205
203
170
139
197
203
138
248
202
214
173
189
269
211
186
204
192
186
218
228
170
185
213
195
199
150
260
249
232
234
234
231
207
199
215
138
143
167
214
142
254
180
181
200
189
212
245
172
230
199
167
171
183
204
172
176
170
157
189
246
252
234
210
185
145
182
215
230
228
135
214
168
215
249
217
187
208
212
168
258
164
223
168
242
216
211
188
247
177
215
188
212
148
127
182
172
216
211
167
168
199
174
174
147
191
210
180
265
204
216
254
260
230
123
206
160
215
182
188
195
213
218
206
197
203
174
193
249
129
135
213
203
137
157
156
159
246
175
179
218
226
225
230
210
245
170
181
132
163
177
207
202
170
185
167
184
164
194
182
224
156
248
223
152
246
140
255
230
204
173
207
213
241
187
196
218
159
207
217
150
195
204
192
196
100
198
238
176
124
187
192
177
166
238
257
264
248
257
176
227
197
193
207
184
213
151
175
173
162
158
203
163
185
233
197
250
142
187
215
217
247
203
214
216
198
227
261
167
241
206
239
206
159
235
189
189
221
191
239
178
197
230
210
233
154
203
237
203
171
214
243
229
190
202
198
198
226
207
214
152
203
211
176
199
197
145
184
207
219
109
189
193
223
175
161
225
211
184
201
225
181
189
228
189
187
212
159
194
215
193
153
188
189
195
211
159
253
298
225
210
230
238
266
250
257
195
171
206
209
186
161
223
166
232
191
202
199
251
218
150
221
192
142
186
201
189
107
202
220
234
191
208
169
190
183
200
217
215
211
214
195
231
189
255
136
232
221
190
211
214
168
220
243
190
185
186
160
203
263
228
268
236
170
236
256
229
209
215
192
203
216
214
170
223
219
195
173
245
203
216
159
216
212
239
243
196
165
199
231
213
192
221
210
182
171
221
298
228
245
182
250
169
214
169
191
164
183
215
249
180
199
181
237
225
174
177
190
207
152
230
165
196
193
224
178
209
202
200
181
216
199
164
203
237
201
192
220
175
197
163
223
162
168
225
187
169
168
223
206
241
214
167
226
235
186
166
225
200
188
222
173
159
203
257
193
256
265
255
223
247
221
203
231
207
225
218
247
233
134
250
234
215
209
198
199
192
239
156
210
226
198
212
242
148
192
194
232
171
191
209
206
235
230
159
177
214
140
216
188
235
212
206
246
202
175
113
124
158
187
127
204
266
173
214
167
205
166
144
150
178
194
215
168
221
228
163
237
206
178
253
247
181
190
193
163
215
221
164
194
192
163
161
169
187
269
210
211
245
199
226
228
157
209
162
165
187
215
198
194
227
244
169
197
145
221
166
260
204
158
184
259
185
170
207
210
245
200
179
243
86
221
186
199
145
186
221
209
205
188
178
204
188
222
213
171
210
145
227
213
210
180
182
216
107
181
174
186
183
204
164
188
202
160
225
162
230
224
179
235
194
229
193
107
219
157
145
159
221
197
172
148
189
170
241
117
224
164
222
104
114
196
185
171
232
207
215
225
212
264
213
211
176
196
153
166
206
168
214
207
166
268
197
222
303
138
210
155
199
161
246
221
188
225
183
155
252
198
215
201
201
226
202
192
200
183
169
239
153
223
162
221
235
200
178
172
220
164
225
190
156
214
263
168
193
206
208
203
205
171
165
224
203
222
217
171
168
125
163
265
249
176
157
161
197
190
218
222
154
163
198
246
190
204
217
149
249
206
180
242
197
218
167
240
212
131
195
156
196
217
220
190
199
198
156
179
229
151
176
225
216
186
191
185
158
191
162
242
161
215
203
187
210
179
267
224
248
181
221
159
220
196
258
183
181
221
218
205
177
193
190
205
224
209
168
279
239
157
182
224
247
196
213
192
260
176
255
251
180
206
234
182
201
236
154
219
210
151
236
282
217
217
186
211
225
183
204
158
228
200
178
158
233
231
163
204
219
181
215
239
112
177
197
252
167
202
170
227
238
224
165
187
181
134
257
234
229
215
207
152
227
192
173
189
226
184
197
188
276
242
251
249
151
184
218
179
190
218
158
181
190
188
225
70
219
149
155
156
203
230
207
230
204
223
173
269
255
219
179
212
192
126
202
221
167
173
223
235
198
270
215
206
199
198
149
173
231
232
142
197
170
225
210
192
162
182
206
233
239
226
197
163
223
200
185
206
217
218
228
177
210
243
240
212
173
198
217
230
153
188
246
181
186
219
170
185
221
169
179
177
155
228
224
188
192
196
155
215
229
207
156
227
156
257
210
210
191
181
178
193
166
162
217
131
204
238
197
243
191
207
213
154
193
197
252
247
172
255
221
192
213
256
220
197
249
199
223
169
158
241
179
182
208
193
215
181
132
235
233
175
175
194
175
206
214
206
198
207
158
221
177
179
187
211
134
180
181
183
187
203
146
139
155
204
123
266
225
207
201
253
193
280
208
209
214
183
208
232
161
248
204
222
202
193
181
131
277
201
201
215
238
160
211
206
177
192
203
180
199
149
213
185
217
184
197
188
233
215
208
228
217
160
254
205
186
177
199
197
179
200
226
152
280
215
234
170
214
172
202
204
200
204
216
208
193
232
210
275
209
208
242
186
198
223
228
254
208
233
180
218
229
211
253
244
277
212
186
162
204
195
180
204
253
258
129
191
194
169
225
237
238
186
252
218
167
217
250
169
236
178
226
244
186
247
252
211
189
219
198
150
233
195
167
194
207
239
228
215
134
126
224
234
177
192
147
264
199
238
166
204
203
213
220
169
232
227
267
160
192
254
190
222
263
154
144
234
219
214
114
214
237
174
190
195
193
189
214
193
178
192
161
192
205
189
231
140
182
198
192
121
149
193
155
143
171
228
197
242
219
173
259
225
264
185
189
221
163
202
203
151
170
198
177
198
146
182
178
212
173
152
202
133
190
222
199
199
228
228
191
160
286
185
250
266
208
167
164
200
200
205
237
251
180
229
190
248
202
281
181
193
182
225
183
227
123
183
151
254
156
210
209
206
203
254
192
270
167
229
234
190
169
184
200
214
181
192
233
223
218
214
223
206
204
205
206
191
183
129
226
209
174
171
213
206
121
216
111
190
205
242
246
266
164
232
220
189
176
137
211
189
269
176
171
243
187
155
147
220
186
216
173
203
186
130
267
194
227
249
220
199
281
193
225
205
139
188
206
177
207
242
194
197
199
214
184
258
203
139
186
205
252
177
150
172
195
198
199
185
173
218
225
201
184
228
190
226
159
167
196
250
185
240
201
235
134
263
212
188
170
206
222
206
233
143
187
155
194
136
215
219
250
85
212
151
209
218
184
171
183
151
232
143
206
216
217
196
256
221
173
231
209
197
257
219
264
255
276
147
215
213
209
130
231
179
163
205
171
215
207
197
214
232
194
169
185
308
210
236
229
169
212
154
228
167
256
174
170
225
254
246
163
199
208
219
175
202
180
222
202
179
177
162
184
196
136
245
208
171
206
249
194
198
211
178
150
198
189
196
187
173
251
227
188
157
224
185
167
193
148
164
268
271
241
194
219
221
214
206
184
167
181
219
186
159
227
153
168
183
218
222
161
205
259
167
169
190
147
90
178
232
223
196
178
169
182
244
194
211
197
237
132
170
235
256
197
182
231
153
259
204
176
220
195
191
185
180
173
258
183
261
178
280
253
209
224
272
203
243
256
165
134
142
207
236
186
226
245
188
152
179
265
213
179
201
198
213
232
204
222
182
219
234
150
265
246
187
204
162
217
166
231
188
183
251
215
190
172
217
172
219
193
189
192
194
245
255
251
229
184
197
184
193
167
188
174
206
193
245
179
192
211
227
188
186
178
232
118
200
214
252
234
232
160
176
201
208
153
262
167
179
225
247
217
192
212
206
264
224
216
214
185
209
209
199
130
169
214
215
229
229
180
194
223
161
243
227
221
211
181
194
237
173
181
208
151
176
213
177
215
235
203
232
165
203
128
239
266
149
220
212
179
250
225
272
212
185
251
203
194
213
214
194
145
157
212
175
195
203
170
203
257
157
159
222
136
187
181
225
192
238
171
219
219
194
157
193
226
157
138
228
196
201
153
171
280
174
140
183
214
177
215
199
194
192
144
205
205
221
151
210
196
250
200
196
146
170
163
257
168
206
245
214
242
205
194
167
230
226
210
156
244
254
217
265
182
209
200
161
256
210
166
173
184
262
173
224
214
226
199
166
199
221
177
204
205
220
193
210
212
173
249
229
205
164
163
229
237
218
233
213
204
182
208
187
241
179
189
223
172
186
236
207
204
180
202
227
147
185
181
188
199
165
218
201
238
162
216
246
225
197
174
212
238
242
178
160
209
149
209
189
161
184
198
241
115
237
232
193
254
135
193
244
178
183
226
245
175
173
256
224
221
232
254
174
187
226
193
214
176
202
182
193
171
229
211
140
192
187
156
233
248
164
228
256
269
188
185
154
213
217
185
241
234
182
220
277
180
199
211
179
132
194
124
174
217
223
196
198
247
196
193
142
215
196
157
229
173
237
165
238
159
171
237
213
226
205
136
227
222
198
159
223
156
196
220
206
286
184
153
183
159
168
174
233
131
176
173
220
176
209
150
158
160
204
173
215
225
216
224
207
182
193
203
181
157
145
180
199
200
190
223
163
240
218
209
188
197
189
247
234
126
182
182
171
168
138
245
158
176
245
200
208
230
254
199
228
225
212
187
200
215
241
167
135
186
249
198
170
190
192
179
197
160
207
184
194
202
181
194
234
151
191
177
217
254
167
205
232
207
234
186
151
172
241
246
163
228
208
195
169
160
197
162
210
228
196
188
163
222
184
237
166
196
180
162
154
170
179
194
134
191
206
159
199
213
204
172
173
142
188
243
211
225
126
236
215
154
176
194
132
200
192
151
146
241
188
221
189
226
193
171
262
212
189
161
193
148
177
234
170
147
220
198
133
230
197
210
190
204
254
177
203
128
216
215
207
163
201
180
144
187
164
164
234
145
182
173
179
197
239
177
201
187
175
140
194
195
231
150
183
196
251
216
166
204
187
214
173
209
215
180
153
254
265
212
207
171
217
211
180
182
199
229
197
191
238
199
213
185
207
174
171
192
147
212
221
226
256
199
156
239
273
185
198
197
183
204
149
198
156
180
172
185
226
221
178
240
173
166
216
210
202
176
259
175
193
119
211
245
142
199
190
212
200
191
201
212
182
219
187
207
203
198
232
232
214
192
194
208
179
189
274
243
252
235
185
198
205
152
223
182
247
218
204
230
219
191
177
235
231
217
128
228
150
180
228
183
224
231
161
236
187
209
194
194
243
209
166
151
212
215
233
220
172
199
171
204
217
239
240
216
218
176
200
207
275
190
221
197
231
203
150
153
162
146
177
139
180
219
183
159
240
185
215
142
139
218
172
224
184
165
225
197
232
183
193
204
182
224
149
218
187
200
212
131
209
134
180
226
231
238
245
191
215
206
206
177
217
211
179
165
291
192
189
248
163
141
241
211
188
221
237
168
202
192
194
235
213
198
224
166
230
231
211
231
142
236
228
263
208
271
214
249
238
212
157
168
193
172
220
220
247
249
228
216
230
167
178
152
192
172
159
221
148
262
142
250
249
212
238
203
180
215
171
217
245
206
255
188
238
172
224
180
241
169
198
201
153
177
216
211
214
147
181
181
197
157
218
253
212
166
211
171
181
223
132
177
222
233
174
176
182
204
147
208
259
208
253
200
182
197
178
169
202
211
194
197
192
183
229
218
236
224
206
215
169
190
197
218
290
209
240
257
151
181
135
199
229
229
163
189
207
254
114
247
258
176
196
133
128
207
133
195
172
185
212
156
177
179
189
213
246
175
223
175
172
198
174
214
176
194
136
200
220
222
177
234
208
159
204
198
210
157
153
205
233
215
209
219
162
230
217
151
191
168
247
230
179
173
203
228
257
208
158
217
171
176
144
164
177
187
206
185
187
262
142
240
198
166
168
181
161
229
239
211
172
169
141
118
250
198
255
223
184
218
193
266
205
217
273
246
201
227
187
200
201
158
205
172
255
208
200
173
198
232
185
193
238
169
217
196
256
200
189
241
184
200
212
147
234
189
218
216
236
214
192
107
208
228
223
263
232
239
197
178
259
238
177
206
177
162
163
186
182
180
190
141
249
157
243
145
226
175
188
226
211
243
177
197
210
180
224
162
166
257
145
234
206
170
256
263
173
223
141
188
212
152
188
176
224
215
209
225
228
208
208
230
208
208
240
191
180
193
155
237
218
186
166
168
230
170
199
166
228
179
239
207
174
215
162
246
219
256
188
116
239
230
233
232
154
231
193
117
205
205
169
150
205
193
206
170
195
197
235
176
191
200
169
201
202
269
187
249
222
218
176
205
223
167
144
210
234
197
250
200
191
202
204
228
186
235
127
145
248
187
169
179
169
181
232
162
222
252
249
164
170
191
203
183
216
231
211
173
186
165
200
199
169
211
160
234
169
177
145
173
230
190
216
222
223
152
166
202
265
251
168
216
161
175
250
198
230
137
158
230
132
149
187
143
170
189
166
202
181
158
222
188
159
189
141
207
171
211
244
162
198
182
253
266
147
201
189
216
217
216
173
231
200
190
179
159
184
126
189
261
157
195
169
179
226
223
188
205
223
254
201
212
216
238
244
193
273
240
206
195
155
198
208
213
186
250
194
223
168
210
214
244
152
188
178
204
199
223
193
200
202
159
224
245
213
205
151
192
238
236
189
215
197
216
192
180
156
259
186
174
129
231
223
225
227
209
187
174
201
119
231
204
260
139
167
230
145
188
148
254
214
169
257
181
211
212
206
254
211
156
212
254
176
214
206
196
186
153
144
250
190
255
145
193
179
187
258
187
151
183
241
158
162
191
203
195
206
171
186
224
178
204
229
164
252
247
185
179
231
209
264
207
204
180
201
156
227
223
172
237
177
223
179
209
133
239
238
204
216
185
190
197
194
241
194
182
170
181
192
166
176
229
171
203
202
196
187
180
228
165
243
151
208
210
212
230
156
228
177
182
238
226
181
197
173
258
173
189
172
185
208
173
167
247
199
255
200
182
167
196
225
172
176
214
94
188
124
187
247
170
209
141
205
247
102
182
239
194
164
200
197
177
141
169
223
220
137
195
214
190
201
241
186
194
220
256
228
250
172
155
249
224
259
177
242
230
261
152
194
230
227
197
186
182
220
241
227
238
192
249
164
246
210
121
215
232
185
176
206
243
230
198
225
197
152
194
158
256
209
244
203
218
182
200
175
216
238
217
166
183
171
167
205
104
178
242
238
192
186
273
218
244
205
229
205
132
179
197
234
190
220
193
227
222
203
185
209
204
157
138
237
228
174
261
199
132
247
252
183
216
196
151
157
165
202
197
229
144
244
171
160
108
202
154
192
148
193
272
191
144
238
222
160
222
209
165
216
128
258
150
229
233
172
174
200
148
154
237
211
228
215
172
226
167
242
169
193
240
230
228
201
228
218
177
265
199
220
255
236
178
194
214
219
245
194
237
263
176
170
210
157
191
226
205
136
245
183
212
226
269
191
234
214
189
154
227
228
240
201
214
197
140
233
215
220
147
249
206
177
155
211
209
195
258
239
210
210
204
218
207
178
178
216
209
198
208
149
238
180
235
179
162
229
202
208
161
215
146
235
231
161
199
185
148
127
239
198
225
227
130
178
192
239
284
222
180
179
212
186
187
228
198
189
159
254
249
200
238
232
196
212
194
160
249
224
211
139
166
151
246
203
250
125
271
174
175
224
230
171
173
134
212
213
215
186
181
164
128
251
200
258
235
226
172
217
155
222
200
206
175
231
124
275
245
176
206
191
202
222
239
190
169
209
220
185
161
252
221
159
157
225
245
205
217
217
179
192
161
237
187
203
198
194
218
225
241
230
228
219
214
197
148
180
241
179
280
208
179
225
183
175
184
206
229
177
161
216
192
240
164
177
186
191
173
193
158
232
187
205
208
203
184
163
190
270
160
159
147
172
228
197
198
271
179
148
159
124
224
238
168
227
202
177
199
205
235
198
168
204
198
232
257
217
178
193
168
220
252
211
209
166
176
179
198
245
196
201
206
180
235
145
197
266
231
250
247
157
174
199
206
193
179
129
156
166
182
182
215
195
169
244
253
277
136
210
251
155
227
198
192
149
144
244
176
176
192
161
121
236
226
154
175
224
217
234
182
222
116
203
187
239
217
213
197
182
198
225
166
177
222
278
258
161
198
224
230
172
197
165
195
154
238
183
173
214
196
201
189
258
187
183
206
214
239
209
219
181
200
162
146
203
187
185
160
196
128
216
170
155
243
196
200
201
142
237
213
209
204
222
197
236
156
168
199
174
132
230
218
180
181
170
119
169
199
268
157
152
208
226
193
190
138
174
225
234
266
205
172
241
194
220
250
235
252
203
206
221
111
204
222
214
233
241
174
207
194
185
224
154
220
181
254
215
151
214
212
226
201
262
208
151
248
157
176
189
215
191
189
215
223
197
235
183
203
160
266
205
217
162
236
230
198
217
216
181
230
209
208
181
193
248
211
180
196
175
241
246
196
162
211
183
206
209
276
275
249
246
239
184
174
197
212
122
202
281
177
206
143
161
265
177
249
168
123
136
202
178
178
221
275
154
187
155
183
226
170
229
217
185
185
200
178
209
213
178
170
189
227
192
179
191
220
212
231
207
229
91
241
169
244
117
238
135
213
143
195
219
212
183
165
171
224
146
248
193
190
115
134
217
230
204
158
231
140
243
199
183
186
233
200
164
179
182
218
220
219
217
206
197
155
172
201
191
144
179
143
200
171
190
158
202
166
171
185
189
226
205
176
163
163
170
211
137
211
235
244
155
213
232
197
203
190
178
156
179
146
196
244
210
177
191
224
189
132
199
191
230
146
195
251
211
249
179
224
185
237
194
232
251
184
204
204
150
211
150
169
152
195
268
261
267
219
228
173
150
209
190
229
215
196
218
216
168
238
260
202
224
218
215
194
211
232
171
132
252
225
161
194
244
217
209
136
152
164
189
199
208
165
164
184
250
207
216
192
193
233
190
170
198
146
215
224
125
186
188
161
186
204
216
158
225
249
160
230
177
223
232
195
226
145
155
230
116
209
179
203
179
213
228
163
265
206
265
192
238
195
118
246
178
271
222
227
202
225
182
237
244
189
256
225
224
201
243
202
248
200
192
198
159
242
177
121
192
184
194
248
190
277
149
155
145
193
157
237
158
185
117
194
223
172
237
261
208
270
177
235
169
167
175
214
180
140
234
159
220
214
152
204
201
260
230
205
168
215
218
210
211
160
199
176
261
164
217
138
207
201
222
202
208
223
233
212
230
162
158
254
188
193
104
226
209
211
189
209
209
191
249
203
188
182
253
201
205
181
218
160
188
169
242
222
244
265
189
225
223
128
275
194
183
291
178
225
187
212
174
166
191
225
176
172
183
205
173
171
186
179
206
205
156
164
226
185
188
229
178
99
143
235
216
170
134
174
189
187
161
212
185
206
164
183
184
213
183
193
177
185
162
174
239
245
194
226
155
202
194
169
218
204
202
208
267
160
252
214
197
213
210
249
218
240
165
197
219
191
101
215
212
195
206
235
196
206
173
153
132
195
118
222
212
161
220
146
181
254
261
202
197
186
207
221
221
214
173
185
159
170
240
150
176
226
193
182
230
191
205
188
247
195
243
217
197
240
202
151
225
187
96
242
175
141
156
206
200
223
226
146
220
153
214
154
195
216
225
241
223
252
179
229
216
138
181
193
185
232
203
254
157
162
160
132
210
185
228
204
231
263
166
234
241
166
256
193
190
213
193
167
174
224
148
194
238
234
243
204
216
239
196
167
171
257
222
171
240
197
214
179
176
200
233
247
251
196
182
229
240
167
168
200
259
153
210
247
157
206
162
176
198
226
168
233
197
153
155
213
217
212
235
271
221
184
228
178
213
221
166
244
188
247
173
222
141
187
214
197
152
201
184
167
168
211
193
188
189
210
156
247
210
232
301
212
167
213
213
184
220
171
290
204
246
235
157
251
227
186
200
237
193
224
138
177
220
210
243
248
162
253
205
294
144
285
209
238
208
262
239
218
280
260
213
207
206
244
232
195
195
244
238
178
213
241
142
214
184
236
154
173
250
171
228
186
170
163
241
197
223
281
184
209
184
155
269
130
192
255
181
174
231
197
194
233
221
212
187
139
241
215
148
191
225
187
207
202
207
197
198
205
184
188
170
219
144
148
231
197
193
157
193
169
205
169
208
189
173
176
264
233
264
197
177
226
159
179
202
174
233
197
147
155
186
244
197
263
210
181
224
200
215
170
212
167
134
179
213
222
225
211
199
172
142
176
203
187
232
224
186
245
251
140
199
179
148
225
166
220
188
249
143
169
200
182
181
237
187
188
214
217
174
221
191
238
199
272
171
202
191
217
196
226
216
143
247
156
249
213
231
261
245
184
192
256
208
192
228
211
186
206
180
178
161
215
213
193
183
185
208
256
205
159
250
184
168
201
212
173
204
227
214
203
219
160
201
248
210
217
168
194
128
226
147
216
259
191
209
179
202
193
159
205
193
165
236
201
160
239
237
169
141
174
205
173
239
196
260
230
185
230
162
156
232
232
234
178
273
212
221
186
190
217
177
209
202
237
196
247
153
198
201
212
225
209
206
172
232
172
235
184
212
148
247
128
179
218
164
117
238
217
158
182
203
177
166
195
225
214
189
224
196
204
167
226
239
203
230
132
204
201
169
270
211
180
215
205
233
187
179
175
196
216
230
183
190
224
196
191
214
120
142
146
204
217
165
241
212
170
278
220
203
266
165
262
215
105
248
141
154
250
204
214
211
198
232
161
224
202
143
211
236
241
269
210
213
191
260
211
227
213
199
142
216
244
208
238
259
228
233
188
156
214
169
244
230
263
179
241
224
143
170
227
146
161
188
202
211
216
129
192
175
211
149
244
184
228
186
183
257
213
160
207
192
173
192
162
172
267
174
155
193
228
189
225
161
158
184
158
207
167
215
158
181
158
177
202
157
179
214
200
177
208
182
253
186
189
245
142
207
208
228
154
164
221
158
279
189
186
170
219
210
202
183
218
247
211
236
181
176
237
235
193
247
203
197
165
209
258
218
239
185
142
166
209
167
205
140
182
198
155
220
173
183
207
195
190
164
174
195
246
183
210
166
209
135
184
211
264
205
203
176
152
204
206
248
181
254
197
158
189
223
264
208
179
224
171
203
177
259
150
168
178
221
211
226
181
186
211
177
245
179
215
203
241
216
189
260
228
217
154
244
212
123
178
199
200
171
145
214
189
165
171
216
215
162
188
155
229
204
228
218
194
249
160
190
187
259
209
223
239
233
145
195
238
147
189
211
220
192
208
216
183
207
217
207
169
154
245
189
143
192
201
214
253
206
216
205
240
210
187
138
220
142
246
168
287
189
173
160
196
151
156
153
178
250
210
198
240
213
220
226
175
195
228
258
167
219
252
261
182
210
192
197
257
193
186
224
172
200
242
198
261
151
201
226
226
247
258
197
170
184
237
112
217
221
217
234
222
173
210
144
209
138
187
264
165
125
206
239
224
167
178
197
163
207
243
185
151
203
197
202
218
210
198
195
214
216
228
176
184
175
207
179
266
197
173
237
239
238
192
217
218
246
202
229
242
241
223
202
257
161
165
185
190
199
191
189
154
182
182
201
134
246
251
214
224
202
242
263
186
251
228
202
233
201
169
145
131
179
196
183
214
165
176
164
169
206
219
177
187
259
243
169
242
140
203
238
238
162
198
232
224
179
228
221
165
193
209
176
219
248
201
275
257
163
248
150
210
249
222
193
209
161
199
181
149
206
199
265
229
259
193
266
199
235
187
187
203
231
204
223
222
206
170
184
225
124
233
164
195
219
234
198
176
216
195
182
198
176
169
195
196
185
222
136
187
142
211
149
179
170
131
186
212
233
225
123
232
226
159
249
211
157
178
185
166
195
194
194
207
176
128
158
214
198
178
183
234
105
223
201
136
226
211
251
283
134
236
236
259
166
231
175
240
146
155
147
301
222
225
194
139
149
227
180
255
163
181
192
192
199
161
143
168
207
244
229
216
185
207
222
190
211
215
190
182
168
208
154
208
214
238
221
158
125
193
212
172
225
165
252
204
200
175
161
163
195
159
182
212
163
146
211
201
190
122
174
177
242
230
193
244
240
179
169
138
213
190
225
240
146
151
199
189
197
179
187
204
178
237
186
193
228
278
236
139
204
244
257
258
193
236
169
238
216
218
212
237
259
251
272
151
212
202
225
229
165
230
198
212
174
149
207
228
216
216
180
252
248
212
199
173
216
232
187
191
161
228
147
171
227
192
205
311
169
190
210
213
205
143
182
214
196
216
224
239
174
239
204
221
220
134
236
194
222
168
151
167
215
145
184
180
190
216
174
195
208
152
214
193
187
199
195
171
241
172
165
196
215
147
113
150
173
171
249
196
206
239
200
219
224
195
200
120
239
216
117
224
186
130
158
219
195
195
211
264
151
265
166
187
256
94
251
204
227
230
157
198
206
219
177
204
209
233
178
157
200
199
212
181
209
134
199
100
246
193
212
210
141
241
190
216
176
228
195
172
252
201
241
224
151
198
197
269
181
260
245
239
169
233
205
236
156
212
184
266
165
217
183
189
152
192
228
207
241
165
218
182
194
164
203
154
256
237
238
201
194
225
180
181
227
199
176
145
206
158
283
194
205
227
149
213
170
179
227
245
223
220
238
190
128
178
198
213
180
240
196
212
178
185
236
191
210
173
190
194
173
180
168
191
261
214
165
194
218
180
172
162
223
156
128
232
183
196
191
209
277
217
170
236
179
183
210
167
240
214
200
155
226
233
151
210
159
178
172
222
216
200
212
216
214
167
188
216
213
177
230
173
229
235
240
253
158
242
207
205
201
190
186
183
166
182
209
152
246
160
223
136
211
236
131
180
259
183
229
253
226
203
152
184
210
224
143
204
205
246
258
183
207
221
196
189
185
200
225
239
187
217
165
228
203
179
201
204
173
216
183
169
199
189
184
175
223
141
198
234
222
240
242
197
169
172
201
169
194
254
179
224
175
201
266
169
176
167
153
218
241
247
181
211
196
197
142
161
167
168
227
192
281
244
256
195
207
136
197
210
131
166
218
226
160
211
190
221
169
252
190
108
183
205
224
148
225
207
245
199
179
164
210
217
153
134
202
198
203
239
106
216
214
225
186
222
208
201
186
247
187
163
183
165
202
250
216
181
211
209
193
221
223
222
161
242
171
244
253
207
186
220
229
226
172
197
175
193
225
254
221
231
271
179
205
226
187
211
217
193
222
132
179
169
209
189
184
168
201
160
207
163
199
212
171
195
209
184
179
197
247
226
213
244
200
155
249
269
221
138
189
191
242
160
144
166
174
165
230
189
256
181
220
175
200
204
176
166
262
227
177
163
177
178
180
156
238
171
236
159
219
184
204
195
151
170
126
163
180
216
181
163
169
211
186
233
191
231
204
192
233
157
189
182
170
229
135
229
193
215
172
209
209
148
177
133
222
203
193
163
199
185
224
201
204
170
227
216
209
165
157
192
187
218
158
186
195
186
227
163
153
241
167
217
130
166
72
254
169
153
205
194
216
213
135
187
240
210
217
253
216
230
213
213
195
188
282
182
189
171
177
210
196
198
187
204
176
206
205
191
214
253
258
244
262
227
197
221
133
182
202
170
185
158
179
201
258
217
216
174
189
185
196
219
179
207
243
195
240
184
225
188
162
165
238
198
176
199
205
185
202
245
192
216
251
204
178
178
192
202
201
206
254
149
235
189
195
187
185
197
243
198
136
160
203
208
195
189
197
225
150
182
202
143
172
245
204
111
193
245
169
162
312
166
204
222
193
200
252
186
186
165
121
227
237
168
248
170
230
223
219
170
208
179
224
274
233
178
179
240
187
244
205
203
198
230
220
227
167
251
227
214
195
230
244
219
177
137
203
214
146
171
156
205
155
159
181
257
209
186
213
241
272
232
162
255
175
238
229
170
242
186
183
166
251
163
180
222
242
169
187
220
129
219
194
154
193
209
146
201
183
164
175
196
200
146
168
222
240
188
249
206
141
199
205
211
186
170
200
263
211
265
215
232
87
185
190
188
137
222
197
154
253
193
224
208
137
191
172
171
196
196
186
165
227
182
266
137
163
166
223
212
187
188
218
208
225
221
200
200
175
229
181
202
228
192
235
163
216
195
258
190
226
150
172
213
184
268
228
118
188
225
144
214
145
237
244
239
224
212
157
122
159
200
234
189
148
224
241
161
201
229
186
195
178
157
219
206
222
237
173
198
233
163
219
175
255
180
216
164
211
169
207
255
199
209
181
236
180
177
197
224
164
204
187
169
214
258
226
198
246
180
180
238
121
145
203
190
179
198
153
270
151
201
255
166
200
205
211
196
168
129
208
142
240
183
153
150
174
189
117
212
197
238
204
214
219
188
222
202
111
181
212
174
169
186
164
180
185
238
220
169
187
158
153
202
239
138
221
185
225
189
203
208
156
134
259
206
181
235
214
207
224
173
214
247
209
234
190
225
220
176
196
199
186
208
256
207
167
155
203
204
165
66
211
215
206
200
180
195
157
183
238
218
218
212
222
147
202
191
191
175
190
213
221
233
235
187
203
248
229
141
237
250
220
253
215
206
264
193
246
183
191
204
171
172
239
186
198
168
224
206
173
209
199
258
247
233
206
173
247
217
199
198
163
236
211
150
189
271
248
165
203
143
237
246
201
244
144
184
208
188
205
212
204
168
186
182
191
229
182
208
191
238
213
227
173
156
226
241
203
248
178
189
181
215
163
136
186
196
245
236
203
244
172
165
180
205
228
176
155
198
205
214
181
155
222
219
224
179
197
209
175
183
179
234
231
218
215
205
170
232
175
214
241
232
249
214
274
228
204
206
202
240
194
201
138
172
122
121
196
175
149
214
177
216
206
213
129
241
237
169
232
215
238
244
193
143
222
141
145
207
170
179
248
243
218
229
155
173
188
194
266
197
201
189
213
219
142
224
194
234
234
266
209
199
172
166
208
258
239
269
212
299
161
209
209
134
185
207
248
214
175
188
187
174
192
151
251
200
192
220
185
200
207
212
217
207
171
169
179
220
226
225
206
223
230
187
261
226
209
195
186
169
221
191
234
155
180
166
237
229
244
216
183
196
221
166
212
182
171
225
194
229
145
199
218
162
217
127
230
218
233
134
205
123
215
156
170
166
221
227
205
250
162
267
145
209
215
183
115
187
232
196
119
185
141
199
231
255
175
200
219
166
202
204
258
162
211
208
170
241
139
183
218
262
200
198
214
236
275
135
203
200
200
224
208
183
208
218
159
249
248
239
164
203
188
203
225
212
144
135
204
163
191
220
198
143
222
220
218
183
196
249
151
223
215
201
210
272
213
112
168
228
208
183
199
233
238
185
163
212
164
170
196
228
243
176
191
270
225
189
194
207
242
243
140
241
229
205
174
264
231
172
218
192
184
250
201
115
275
153
178
176
157
245
250
172
257
129
203
251
248
203
217
182
251
230
226
195
243
92
238
186
171
157
228
180
146
207
134
232
206
190
249
244
233
239
237
253
196
245
161
200
165
220
189
247
236
184
181
211
184
206
224
194
239
155
196
258
204
219
212
174
165
199
213
204
197
181
205
193
216
204
224
246
165
198
168
200
215
248
210
160
168
156
212
166
196
185
221
174
195
197
193
170
207
176
136
221
158
213
188
226
214
229
154
138
222
180
224
173
208
218
217
234
193
203
243
243
230
195
210
170
230
177
142
216
237
194
187
216
204
155
227
214
264
211
156
218
185
181
111
212
242
223
236
189
160
230
138
219
171
200
209
133
177
180
219
161
180
173
252
143
189
178
116
195
149
213
183
181
209
168
189
121
136
196
188
215
132
151
236
204
223
170
185
208
153
224
213
186
192
259
240
228
192
127
242
227
229
182
188
185
239
173
167
162
165
111
154
148
182
280
217
164
191
172
185
210
229
274
243
206
153
196
156
146
271
203
175
225
158
120
186
207
160
216
237
187
247
215
209
235
202
152
244
185
159
209
187
215
171
223
157
213
185
204
229
250
200
189
223
251
186
246
226
210
216
212
185
190
169
237
163
184
268
209
213
218
166
189
242
206
229
162
230
191
192
187
154
179
283
191
236
273
142
170
188
213
216
213
212
181
216
126
237
214
196
158
205
171
200
166
179
193
148
208
174
222
249
244
215
239
193
212
148
229
217
261
199
211
209
220
205
175
195
277
205
185
270
247
248
166
180
226
262
250
207
189
169
188
202
219
192
174
170
196
167
197
241
176
150
273
201
206
216
159
228
191
221
261
191
149
186
215
162
227
276
258
178
206
235
183
246
185
181
218
206
185
189
179
203
225
210
201
147
197
200
211
207
205
260
203
139
191
220
204
169
181
159
177
214
169
232
198
179
203
238
274
207
153
196
187
239
210
249
179
220
215
271
235
234
154
214
211
224
211
246
189
194
171
222
183
214
246
188
225
179
194
118
170
202
247
176
178
224
148
238
215
178
185
212
219
208
175
216
231
215
172
209
211
194
239
115
224
143
229
170
176
181
214
233
148
182
184
162
148
262
219
181
178
225
196
253
194
188
191
166
164
225
194
225
129
157
229
200
170
174
163
113
199
147
245
216
163
267
216
170
232
186
270
166
170
191
257
228
179
183
235
185
249
215
224
231
232
208
173
184
166
159
251
157
216
233
247
226
152
182
228
220
207
236
206
161
217
163
153
219
278
212
256
244
225
196
273
202
207
178
188
198
163
242
172
209
255
164
208
236
215
220
215
180
151
223
280
183
236
221
156
187
191
200
215
252
211
255
213
160
279
238
208
194
204
181
238
162
174
212
229
195
201
206
182
173
192
201
237
189
249
146
169
164
220
196
164
178
175
153
159
175
125
165
198
180
229
227
253
219
143
229
177
203
173
219
200
184
178
185
164
180
210
176
181
194
151
189
211
179
148
194
218
151
256
191
230
211
195
131
237
165
139
241
223
192
212
170
201
191
159
247
191
182
212
234
263
210
216
205
246
228
175
200
152
249
221
227
222
203
211
191
231
177
210
118
197
207
151
202
177
148
169
228
198
159
217
218
197
199
235
166
248
255
183
258
191
182
201
138
164
212
232
206
157
200
144
177
246
203
115
190
217
243
165
214
217
209
202
169
183
204
143
193
206
195
156
214
192
186
239
140
197
123
192
183
208
211
155
198
229
170
258
152
183
234
196
227
261
227
193
244
189
210
224
194
248
193
180
225
134
222
198
160
241
168
239
252
185
228
255
201
161
206
173
239
266
215
222
260
240
234
227
164
168
210
161
133
139
148
195
215
224
196
215
218
253
172
196
142
222
212
209
224
204
176
160
186
186
243
173
167
182
189
142
246
192
197
176
253
176
199
222
159
200
196
201
157
199
146
233
174
178
267
226
250
204
197
179
198
232
221
214
268
200
236
200
178
192
122
210
181
230
154
217
141
215
198
191
143
228
178
155
165
113
156
232
137
148
243
262
244
190
192
214
117
201
240
215
235
210
193
232
166
208
191
226
206
206
186
187
192
133
169
142
131
240
163
188
260
174
192
253
227
232
187
141
150
239
199
168
167
230
200
230
215
187
178
192
175
177
235
213
168
194
189
206
234
151
226
176
223
240
269
239
216
174
232
222
228
185
218
135
128
189
207
203
224
216
171
233
241
134
163
181
218
127
239
138
139
194
199
168
224
253
171
178
206
232
239
183
185
236
253
161
214
188
161
216
157
201
253
211
210
201
162
222
122
169
191
219
195
157
240
245
214
248
263
202
174
210
209
200
181
143
215
202
201
218
230
216
262
218
199
191
213
204
235
119
244
239
156
193
218
239
235
154
223
214
243
165
219
204
212
164
203
218
236
267
201
213
197
197
178
218
215
196
201
239
253
195
245
232
195
186
186
185
145
173
220
227
255
223
219
206
138
223
264
202
205
233
241
149
205
171
166
226
176
179
213
180
227
194
251
165
187
198
196
223
184
194
250
250
258
231
216
226
173
232
185
236
133
188
144
231
199
220
242
215
155
222
199
267
246
240
179
308
199
136
196
241
234
195
123
229
235
192
206
201
179
267
166
148
192
244
187
146
184
173
149
247
172
203
245
213
192
247
233
183
203
222
221
200
166
147
217
243
235
212
159
214
182
263
224
194
222
159
180
257
212
230
225
145
216
232
156
166
151
225
148
251
266
152
139
171
228
183
224
145
160
200
195
224
173
163
158
167
257
215
164
137
190
246
126
169
206
182
190
108
174
171
223
215
150
209
209
200
161
224
174
172
219
149
136
164
212
213
225
271
168
235
206
184
240
239
187
183
217
252
218
240
247
163
174
197
206
160
182
165
185
210
191
237
169
184
204
217
185
149
247
215
194
192
222
199
222
181
204
147
198
246
211
200
209
209
216
216
165
221
179
185
161
149
230
247
230
248
241
208
194
200
195
256
214
185
206
244
175
221
182
223
163
202
198
172
198
189
163
214
228
253
220
221
224
209
209
182
141
165
241
239
121
228
216
195
195
210
195
146
212
165
162
182
182
217
206
131
158
157
203
189
167
152
231
194
183
150
188
193
160
251
189
208
232
181
250
165
182
179
203
254
209
259
220
210
232
184
211
240
229
222
247
229
218
172
203
186
225
194
194
204
207
218
200
186
219
201
223
212
193
197
243
202
235
200
201
157
175
183
183
148
258
145
190
183
218
161
229
202
253
206
227
211
177
236
152
244
243
210
236
271
202
197
219
215
220
173
199
181
173
261
184
222
223
269
230
238
194
166
223
237
215
185
213
172
182
159
212
189
214
224
117
232
173
160
187
150
229
197
226
211
216
186
187
244
169
231
194
170
252
189
244
212
249
158
218
190
222
214
195
160
154
219
225
252
220
200
168
217
242
242
221
188
216
226
213
193
244
195
153
166
224
228
188
181
216
196
172
214
244
141
199
118
148
211
204
132
208
224
214
229
193
153
236
173
172
166
210
254
225
146
182
180
233
222
123
211
202
173
216
155
193
245
170
139
170
209
223
189
184
187
187
163
255
207
221
230
208
207
216
204
195
195
215
200
191
189
218
210
237
207
122
246
196
141
184
138
161
191
200
173
226
237
206
149
211
180
235
238
193
184
186
145
229
192
165
209
186
247
231
127
204
206
146
234
252
190
248
192
203
222
228
213
174
142
189
212
188
235
248
204
202
223
195
160
228
223
176
175
234
243
200
192
166
230
220
221
263
221
207
241
226
247
221
173
217
199
244
150
222
193
236
162
197
200
183
212
171
216
182
207
212
160
235
235
145
211
249
151
236
249
189
193
255
170
177
214
186
222
176
206
161
230
239
225
206
191
210
237
205
211
218
182
156
172
117
202
207
220
188
195
224
207
169
189
200
194
190
189
214
172
202
154
185
188
177
200
193
235
199
227
244
131
212
246
202
212
246
197
196
175
186
147
228
225
259
114
212
230
147
255
269
276
199
183
196
245
238
206
174
260
204
226
212
176
258
160
193
156
169
186
201
197
223
174
189
189
188
177
248
226
209
166
231
181
184
193
181
214
179
163
211
117
200
208
200
186
200
261
190
243
163
306
167
255
198
197
180
246
209
259
130
192
142
191
196
193
237
158
222
192
182
196
154
213
218
201
142
170
148
191
160
220
258
264
182
217
242
252
252
188
149
157
193
153
198
242
217
165
255
227
150
212
212
188
211
196
149
212
213
160
164
201
235
164
193
216
189
156
272
177
160
189
194
218
219
179
167
208
249
224
228
246
178
246
201
246
204
206
193
148
128
197
218
240
219
150
195
214
201
216
167
236
218
212
246
214
215
216
185
188
161
231
216
159
215
229
224
175
213
250
211
223
167
223
191
244
223
205
209
227
218
233
202
150
220
228
206
189
207
232
196
172
214
142
250
197
222
186
249
191
199
243
174
217
261
193
216
168
239
227
211
160
208
276
226
195
172
202
150
223
257
214
231
216
173
152
207
240
200
223
200
199
216
275
193
181
169
184
224
204
226
212
261
207
250
230
218
195
152
136
152
146
210
198
188
273
252
214
187
199
170
242
185
225
179
223
207
197
218
156
226
126
132
159
189
196
149
215
194
176
164
220
159
232
205
177
168
255
234
216
164
195
157
177
181
200
260
234
190
231
156
290
175
233
180
233
187
237
164
208
253
252
222
213
208
156
199
183
184
209
221
145
197
190
169
200
161
224
182
220
197
271
194
242
200
194
225
225
191
255
224
218
239
205
211
132
186
257
178
199
215
226
240
239
217
231
153
191
173
223
185
221
230
215
151
212
159
253
214
204
173
175
155
171
200
189
250
191
163
198
185
223
172
203
180
242
151
174
140
234
184
145
139
277
223
199
185
168
245
197
196
203
219
204
206
207
172
229
215
174
200
237
254
221
235
225
171
231
198
222
215
246
178
206
186
188
183
247
228
107
194
202
173
131
215
163
125
187
253
201
177
188
204
237
195
132
246
177
212
222
241
224
149
271
243
133
159
161
153
154
255
170
183
247
240
187
218
170
203
165
246
224
199
120
265
206
235
246
114
233
144
224
194
216
190
170
194
189
187
179
255
186
159
201
203
162
184
217
249
188
204
206
240
124
184
211
204
183
166
176
229
176
200
239
221
257
225
230
173
151
204
221
158
279
221
241
172
220
206
214
207
242
207
223
161
238
201
234
153
128
226
210
158
261
178
213
256
207
161
144
189
147
181
175
235
236
214
248
157
225
187
257
230
217
230
168
267
221
207
211
230
163
237
154
217
219
176
252
211
173
175
165
209
239
267
226
241
188
251
221
212
156
199
189
208
168
192
171
228
240
147
214
209
193
215
200
143
152
247
188
213
229
167
248
206
259
201
246
225
251
260
258
219
230
244
233
204
208
204
226
192
203
215
224
210
227
221
155
164
278
232
171
257
222
244
178
241
195
188
171
213
213
188
174
221
181
167
195
193
158
156
197
189
221
233
237
184
174
250
181
201
243
252
214
198
193
203
244
218
163
214
223
171
198
180
159
175
195
139
152
146
238
168
230
218
197
156
213
244
198
273
137
195
194
165
241
193
222
176
232
221
170
202
215
167
240
241
204
222
177
250
152
253
204
172
185
206
241
234
200
222
249
185
191
195
214
126
179
194
168
240
239
256
161
197
227
298
162
165
254
243
146
233
253
249
186
170
190
157
240
245
154
226
205
233
182
217
236
122
195
229
215
226
184
217
149
211
205
235
229
213
220
203
202
190
215
207
118
182
216
164
231
183
246
197
220
275
150
154
190
169
233
165
191
196
191
138
217
196
198
231
146
205
226
238
180
183
268
196
190
178
198
161
217
252
180
141
227
197
182
258
109
246
223
202
212
208
188
218
204
199
113
174
203
220
219
205
166
197
145
229
268
185
261
119
198
160
211
227
197
260
199
237
271
188
226
183
208
177
187
206
254
141
157
220
246
134
216
200
181
228
196
236
134
210
190
208
237
184
169
203
229
227
179
211
239
198
164
156
225
187
258
196
155
194
203
170
202
158
148
137
200
219
163
189
208
211
182
227
188
131
124
152
207
244
234
221
177
252
229
237
148
205
267
205
256
194
252
178
213
191
190
152
230
218
230
261
168
216
182
180
146
224
207
224
178
164
140
213
249
175
223
179
201
157
188
189
164
138
242
190
162
236
249
241
193
238
225
144
189
184
192
234
200
225
222
209
193
231
162
183
100
184
211
151
204
140
237
174
189
202
193
193
124
209
199
174
195
186
229
224
206
137
176
192
212
221
187
193
233
211
245
207
230
196
219
217
212
192
230
216
227
193
243
209
213
201
215
222
250
219
110
226
246
164
187
195
215
154
236
220
255
205
201
204
255
187
153
219
212
146
167
219
191
195
175
227
203
186
139
197
169
220
234
220
211
234
199
197
222
175
197
259
225
172
133
158
224
194
185
236
122
205
214
153
182
237
185
230
197
187
200
152
213
168
165
173
168
202
167
152
228
195
167
204
208
191
216
179
240
197
245
251
211
191
203
178
251
200
206
217
189
202
197
208
202
127
191
223
191
205
203
172
190
174
257
199
201
186
238
190
200
117
131
251
189
165
224
170
167
200
226
213
222
202
183
184
124
189
175
190
254
232
224
177
153
210
206
182
194
74
216
167
157
231
169
175
231
238
231
227
264
205
264
229
239
235
141
200
202
235
175
158
207
252
174
167
238
149
197
173
250
244
197
197
224
190
159
204
138
147
155
118
204
170
205
238
103
258
152
138
217
168
190
124
201
166
207
195
264
131
173
252
228
232
161
233
142
244
214
160
164
181
208
197
228
141
187
175
175
205
231
207
139
158
196
201
182
233
227
276
127
148
201
168
127
198
186
192
163
177
195
137
213
186
253
235
180
268
177
221
150
202
177
223
202
203
110
244
107
168
260
139
182
198
137
196
166
207
241
271
189
241
199
190
188
216
176
225
145
219
213
190
228
249
235
238
187
194
164
161
257
163
198
216
135
227
209
237
246
214
198
197
134
208
196
226
253
211
266
188
228
161
259
192
225
177
160
197
241
152
184
155
264
201
85
171
123
212
209
220
252
258
176
173
273
206
195
184
101
178
212
219
279
153
244
147
246
202
223
190
186
239
171
214
171
200
197
205
218
138
218
170
219
186
181
156
181
197
213
160
170
186
238
141
134
222
226
235
211
180
189
190
178
216
207
180
250
195
200
192
102
311
229
194
230
189
169
215
157
180
196
179
256
146
237
156
219
208
183
198
221
197
244
191
247
205
224
181
164
163
236
125
194
204
207
201
237
223
210
203
123
197
139
252
186
221
235
230
223
268
212
117
178
172
190
197
201
216
219
221
229
245
217
228
122
171
237
206
213
184
205
185
206
191
190
203
239
228
173
234
206
220
220
203
221
229
198
193
184
293
123
205
208
218
163
163
189
207
231
171
213
209
201
211
249
208
172
208
181
220
197
200
233
168
239
147
127
226
164
229
237
213
245
207
198
214
160
210
228
185
170
180
177
181
202
114
183
201
197
221
225
212
205
214
194
213
197
143
203
207
168
204
194
226
212
183
166
177
209
169
234
241
196
214
190
262
175
229
210
236
221
184
233
191
248
163
204
214
225
123
177
203
188
154
201
207
172
197
241
225
144
184
142
218
232
167
228
93
167
194
196
231
196
175
134
189
188
164
254
156
230
226
175
190
189
254
171
182
169
186
214
147
250
223
211
257
239
190
227
204
230
127
277
169
204
202
162
247
149
192
166
192
209
177
211
176
221
246
244
179
240
155
187
224
219
218
202
265
206
220
145
226
156
199
202
200
182
236
206
211
176
238
252
262
211
196
208
185
181
234
162
210
227
237
174
218
198
167
179
207
202
242
242
238
174
127
200
226
191
229
150
241
219
264
153
250
154
147
181
213
211
218
187
211
158
172
173
263
208
209
198
231
187
162
180
275
163
213
151
206
261
145
203
207
204
234
230
263
191
209
198
230
201
226
212
171
188
144
191
127
263
203
228
151
215
168
245
200
234
210
166
214
277
194
181
233
174
200
243
229
149
203
185
210
231
224
221
187
219
250
140
218
266
232
194
245
201
191
207
185
142
245
233
211
178
166
201
161
174
277
253
223
244
206
208
217
233
227
192
231
186
167
193
215
228
197
239
148
229
214
232
215
229
162
204
231
248
244
196
215
199
155
167
170
193
162
225
224
233
209
186
185
198
191
217
212
249
199
194
232
201
243
161
247
170
205
246
192
200
202
162
177
211
201
213
211
223
195
223
201
190
245
117
227
190
205
164
202
222
205
115
177
254
142
233
180
166
176
167
261
236
257
139
222
223
195
168
229
214
141
216
167
269
198
219
206
126
207
189
192
204
169
215
150
185
217
197
216
180
181
181
194
208
220
245
222
227
144
203
227
276
206
207
231
189
164
156
261
179
196
159
217
177
204
206
171
268
208
143
170
179
180
214
216
227
212
228
224
241
219
221
202
99
198
202
171
200
247
189
240
269
220
155
169
177
244
111
140
155
203
231
160
191
220
204
190
193
157
204
258
221
93
176
200
223
220
247
189
204
188
190
254
232
208
193
129
125
153
209
177
224
170
220
230
236
204
228
235
228
212
208
171
185
179
190
254
229
254
168
242
226
209
199
160
195
170
214
240
228
196
183
207
204
229
262
212
246
223
168
205
205
117
202
205
185
195
198
139
183
175
218
190
188
148
199
225
192
179
173
199
190
227
182
182
197
199
221
220
195
212
232
174
193
216
210
171
230
230
208
202
161
186
132
254
193
182
245
256
253
221
228
163
258
255
173
218
170
176
210
233
275
168
229
154
177
170
205
166
197
151
264
167
223
263
261
190
185
248
234
198
193
226
119
196
175
181
193
220
238
210
235
214
157
216
245
196
192
218
191
195
185
186
229
229
164
178
276
240
228
177
139
225
186
247
225
183
186
206
228
219
242
166
174
245
283
260
162
222
212
181
238
165
157
220
233
276
180
142
224
201
206
148
144
207
220
199
189
192
183
149
235
183
253
194
189
277
165
216
220
203
215
295
133
190
141
239
192
205
215
222
217
162
165
202
229
188
193
216
177
195
195
183
159
214
154
207
210
229
162
215
164
191
173
204
198
217
230
133
231
235
163
221
212
207
221
194
222
207
195
135
201
182
172
200
235
172
129
205
198
175
186
221
255
223
250
247
247
221
232
181
248
191
218
207
141
261
234
167
210
187
184
199
211
160
202
203
137
179
254
222
210
207
199
161
214
229
199
167
238
220
219
231
227
245
143
194
278
234
208
227
259
207
222
233
158
234
184
214
252
223
231
175
204
174
132
209
175
259
197
229
239
167
230
182
208
194
145
196
230
199
224
228
212
200
186
217
224
254
179
231
218
148
168
153
172
195
277
149
205
202
193
251
168
217
150
162
172
199
261
193
169
285
160
264
181
190
204
172
256
141
210
171
223
230
176
160
244
224
152
214
197
262
233
147
219
181
146
154
184
199
232
160
232
208
259
239
214
198
268
245
189
213
230
195
179
256
225
176
161
200
245
229
207
196
199
202
180
216
227
186
233
216
147
184
215
190
192
182
228
188
230
223
206
247
165
198
260
168
165
186
180
252
254
171
174
209
232
198
262
222
267
174
229
227
231
233
178
239
162
171
210
192
244
213
203
173
169
181
237
230
218
162
230
216
249
174
199
221
178
227
219
251
218
278
248
260
230
193
241
223
229
243
195
168
221
223
201
154
230
214
215
198
233
210
231
236
180
237
149
237
162
156
219
235
174
193
260
226
205
197
181
190
208
185
161
186
198
221
167
173
231
223
257
219
218
202
182
232
194
154
192
214
176
217
221
166
147
192
224
150
189
161
225
169
193
210
200
225
187
257
232
198
202
203
150
145
124
225
174
160
257
213
201
103
197
233
260
190
211
207
157
148
204
135
213
155
252
150
171
239
181
204
220
190
222
248
177
213
192
195
117
174
196
181
270
237
174
130
245
157
177
184
216
157
273
214
234
223
140
159
198
197
180
230
199
235
131
269
197
133
208
174
223
243
258
235
195
252
178
181
138
218
214
281
218
152
223
218
190
213
188
191
92
181
206
259
281
171
218
142
193
195
216
238
175
166
199
249
203
237
97
183
208
168
209
166
193
255
202
208
171
174
195
229
198
215
100
169
238
199
172
222
270
202
197
170
144
255
189
176
229
216
231
205
154
143
215
230
205
169
214
210
191
142
120
205
213
246
202
196
178
143
229
164
209
212
224
179
163
169
206
156
197
114
199
205
196
191
223
212
207
265
220
212
195
238
163
254
192
227
228
203
180
280
174
152
138
219
177
187
243
167
188
187
175
182
217
219
197
144
209
253
195
227
169
232
245
239
176
205
177
248
167
201
213
231
134
147
218
204
203
197
166
225
210
153
249
204
233
217
202
134
241
236
142
236
193
196
178
218
159
213
178
227
178
233
235
148
190
219
140
176
220
172
244
197
140
154
262
184
190
158
233
138
203
241
217
165
215
195
174
213
224
142
180
238
204
160
196
238
199
193
132
160
227
219
163
148
190
216
188
155
133
194
246
221
250
193
258
177
241
184
131
199
166
234
176
219
261
239
230
189
208
228
230
170
200
225
226
194
226
215
213
220
194
147
219
187
232
283
198
216
205
190
220
234
198
245
242
269
191
249
200
224
176
155
194
206
249
196
188
166
199
106
191
189
243
238
208
189
204
148
231
259
217
241
224
176
185
265
159
231
194
175
189
203
175
163
255
228
298
200
220
171
185
190
249
133
184
166
137
191
145
229
267
206
166
132
228
244
208
221
204
182
161
219
248
161
174
145
201
238
153
227
248
247
169
154
239
183
292
158
201
199
192
150
223
242
145
142
179
210
179
210
244
152
209
175
221
181
242
182
247
198
128
112
185
143
194
249
152
221
195
171
122
203
223
192
189
159
173
141
192
182
230
139
212
208
207
270
218
194
173
232
203
179
246
224
259
262
207
268
215
257
193
189
173
191
208
189
229
131
232
177
204
233
136
240
206
206
196
234
255
166
259
210
167
245
142
172
244
229
180
210
239
226
180
249
289
194
232
218
170
235
202
241
183
168
176
223
182
187
215
258
227
290
284
180
151
214
155
147
202
208
129
231
185
274
178
183
174
234
213
159
209
191
198
233
215
206
215
218
222
192
155
211
194
259
207
180
232
151
184
200
189
258
255
184
200
264
208
251
243
190
183
234
168
208
251
225
150
216
192
201
180
145
207
214
260
261
200
217
221
199
149
149
206
163
200
219
202
227
215
228
175
234
162
231
241
251
135
218
249
219
177
201
200
198
226
179
186
190
214
205
142
220
212
156
197
137
195
235
256
248
212
162
208
169
158
167
176
152
157
207
234
236
178
166
128
168
184
198
268
242
191
168
241
141
215
157
205
175
213
163
203
180
204
153
150
164
250
167
225
203
155
179
172
229
148
244
246
158
170
259
219
216
170
241
209
191
183
133
201
140
216
165
222
229
152
150
217
149
118
176
181
198
170
219
250
239
241
240
170
182
152
261
208
168
164
225
249
265
115
220
208
189
211
213
249
248
237
244
166
239
142
226
142
146
235
166
273
183
267
199
203
202
176
181
207
221
187
230
275
174
179
257
243
212
216
203
172
216
222
260
194
152
155
165
200
158
227
267
136
241
253
198
197
195
187
173
219
220
214
197
152
198
188
223
201
194
266
185
224
161
265
206
162
162
200
199
230
203
252
147
257
258
229
207
204
200
204
209
188
107
221
198
228
182
209
171
171
168
179
187
223
245
206
254
239
243
274
269
217
225
143
141
189
200
172
233
196
219
248
224
142
190
243
157
216
209
179
179
182
164
186
245
186
132
170
182
189
217
197
200
192
234
161
173
155
231
159
202
186
181
273
190
169
129
219
188
176
251
231
233
236
197
128
197
189
236
158
177
186
200
243
190
229
190
180
204
201
192
184
200
191
155
271
103
168
197
157
253
210
252
236
167
169
199
201
219
194
149
162
149
116
212
183
216
206
235
192
202
143
176
140
174
177
218
188
197
169
243
216
156
185
200
218
205
197
186
168
139
145
131
200
186
206
196
172
176
193
213
204
229
159
199
235
225
183
243
209
234
117
196
206
173
166
214
209
226
219
256
188
226
228
146
189
197
250
146
214
185
244
247
170
235
177
219
231
223
224
167
183
187
214
221
231
238
215
203
249
106
212
204
231
171
249
231
232
226
170
157
205
181
223
264
214
178
182
224
147
195
208
174
179
170
166
194
196
195
199
152
199
253
233
202
232
217
249
125
242
199
177
189
235
239
189
203
223
206
179
204
236
168
219
218
198
175
177
220
229
154
155
215
267
225
188
234
209
202
215
185
206
164
209
223
202
199
165
215
177
135
181
232
194
144
220
223
224
173
195
172
151
229
202
171
240
212
220
249
188
154
157
225
198
188
242
174
172
235
178
178
175
200
180
208
235
224
132
180
218
197
177
197
198
181
163
215
126
192
228
195
210
178
158
254
206
237
227
229
176
199
141
227
200
237
218
215
263
171
173
207
229
191
174
187
177
158
134
204
216
218
168
252
217
248
238
198
183
175
178
218
263
241
212
223
183
177
165
150
111
169
243
172
218
197
205
201
208
204
183
176
192
241
174
175
164
262
170
186
229
139
179
169
255
206
177
204
201
178
224
248
210
163
157
193
239
217
210
212
248
189
170
203
200
252
153
207
246
216
215
254
188
199
231
244
235
179
204
199
168
234
174
179
201
198
185
259
134
168
244
149
266
259
200
174
245
162
139
186
149
228
230
211
148
215
174
204
198
148
158
214
180
220
236
236
164
195
265
223
270
255
228
195
200
215
177
186
213
140
204
241
220
231
169
145
245
253
221
232
166
238
202
174
217
190
173
248
225
186
164
235
192
221
184
151
188
198
165
199
228
292
258
229
176
191
154
229
172
202
275
248
216
146
211
155
161
154
197
254
265
239
180
223
112
174
206
175
216
206
206
194
220
207
164
161
170
195
219
187
251
218
198
189
205
188
231
213
179
222
175
152
232
227
127
271
231
224
165
228
159
188
188
120
208
160
197
204
230
180
164
219
214
177
258
193
235
191
180
186
196
197
162
238
141
169
207
230
241
206
187
222
241
234
180
162
234
229
173
185
226
267
261
229
188
134
201
100
174
174
249
155
190
285
233
200
273
226
156
244
179
132
239
216
167
189
113
192
142
180
168
163
165
243
161
197
177
171
195
151
221
255
185
238
194
144
170
226
177
264
241
197
171
212
199
226
216
295
146
189
238
210
183
188
172
229
203
132
198
183
178
201
214
162
150
149
158
205
204
287
182
220
235
274
200
210
203
211
196
276
179
206
189
244
196
166
164
199
160
214
155
217
171
192
215
195
217
235
172
200
153
222
197
205
186
251
209
222
219
180
201
241
146
220
235
157
203
191
250
177
234
191
220
195
238
217
256
215
208
196
194
156
183
240
213
228
138
141
179
171
171
239
212
241
228
255
200
234
190
204
208
180
210
150
207
152
211
147
178
217
210
202
204
195
209
228
242
180
134
231
232
159
212
174
158
211
187
242
260
196
170
223
184
216
192
172
211
176
170
207
143
178
221
195
198
151
169
151
166
239
264
226
216
186
163
272
268
195
148
201
220
243
203
242
184
229
244
187
184
177
232
187
178
125
240
225
204
195
181
173
236
256
138
223
102
234
161
169
234
234
198
252
199
258
157
150
204
227
144
205
208
222
197
188
225
162
185
240
222
270
179
216
137
215
200
220
214
171
263
141
204
170
222
223
212
219
250
108
141
178
187
154
194
254
179
191
170
136
181
219
180
215
194
214
164
142
226
230
174
181
233
189
166
170
275
187
173
231
255
254
215
195
223
212
269
206
187
164
174
164
157
177
166
175
199
211
157
200
165
208
199
268
141
209
215
201
248
194
133
266
197
216
226
194
175
185
180
203
128
248
242
219
144
232
124
214
225
161
200
251
258
250
172
206
222
161
213
238
239
188
234
195
200
235
233
197
221
231
212
181
244
191
175
232
185
184
232
264
261
220
258
169
106
206
201
239
258
179
183
223
182
233
138
216
179
174
198
219
257
216
208
170
105
171
165
195
236
163
249
205
153
225
267
196
221
221
201
117
219
148
198
156
182
226
151
201
235
181
228
182
171
210
194
209
183
256
192
209
197
193
253
175
238
194
231
186
231
210
252
162
192
185
272
173
249
129
181
224
121
227
179
216
230
266
189
231
214
164
190
184
208
158
226
175
163
259
230
241
191
197
231
150
164
205
178
167
154
159
211
169
189
219
151
232
212
237
205
237
230
225
176
223
216
186
192
239
219
167
225
165
194
140
190
210
160
229
187
229
107
161
233
146
271
227
192
150
209
176
230
206
233
164
205
206
228
210
212
220
201
202
157
165
190
192
197
179
221
226
228
241
214
218
201
197
224
210
178
216
216
169
195
191
143
166
219
185
233
204
160
207
174
253
144
184
187
238
221
219
202
243
200
160
191
255
221
178
222
197
250
191
181
239
149
196
203
179
178
219
234
187
162
177
134
202
187
224
148
206
194
173
235
206
185
141
211
237
220
224
169
240
168
254
154
193
196
194
235
142
120
250
201
209
229
168
228
219
177
195
116
177
209
195
267
217
169
169
222
211
247
252
201
159
250
250
243
194
236
141
220
214
208
181
189
193
203
148
189
202
200
200
178
148
211
163
154
227
186
194
208
234
181
127
166
279
231
165
187
178
191
149
143
219
179
209
180
233
216
172
217
228
190
164
222
171
167
183
230
197
200
216
209
242
239
206
207
161
218
196
228
171
215
192
247
139
229
249
228
121
215
212
191
223
200
173
184
232
213
260
176
209
187
215
197
215
186
230
226
192
207
225
169
213
168
194
157
215
168
175
172
196
224
240
147
194
210
233
175
171
220
203
196
208
212
131
178
213
146
229
176
157
243
196
211
231
151
224
197
183
194
247
164
246
187
261
201
160
203
158
152
190
188
216
216
170
153
229
216
186
207
217
193
202
198
196
186
137
242
160
198
198
207
196
192
178
203
232
177
158
160
187
135
238
173
223
232
171
132
191
173
213
199
189
185
213
199
122
227
109
223
240
163
253
201
178
180
210
204
191
209
154
234
197
195
210
138
202
182
183
208
257
196
160
270
253
212
190
206
114
256
255
132
256
210
209
218
271
137
156
139
188
142
219
227
240
174
182
199
218
305
177
134
203
202
184
256
195
194
197
192
164
170
202
174
242
146
179
226
167
208
232
214
204
168
198
221
224
177
181
174
240
190
209
199
212
193
170
241
217
178
185
202
152
96
227
160
245
195
175
180
186
137
197
183
194
200
211
204
236
225
259
249
184
193
231
162
214
196
200
205
205
217
232
146
205
207
207
161
241
208
208
202
187
185
251
213
222
231
213
192
160
228
140
120
208
234
220
181
208
195
208
197
183
159
222
174
224
242
229
163
178
177
216
197
239
247
171
225
229
151
186
204
217
192
221
155
200
198
172
112
212
204
204
233
174
201
208
150
192
266
128
179
187
258
157
267
173
196
193
167
201
149
201
143
142
212
232
230
180
204
193
205
129
195
219
133
230
226
244
240
198
198
205
221
198
215
227
134
218
209
207
178
189
203
191
185
191
168
211
228
166
208
147
184
228
172
200
164
231
240
200
266
186
215
181
169
205
231
221
209
175
213
180
240
202
148
152
203
177
192
175
183
174
213
203
172
217
191
193
206
181
166
182
223
243
202
194
163
177
132
202
283
226
171
164
241
161
186
160
197
177
205
148
223
177
253
157
132
156
230
217
228
186
214
231
223
181
149
163
161
236
230
174
206
218
193
197
154
226
192
218
239
165
157
165
207
205
170
186
230
176
171
221
167
171
185
174
221
147
205
217
253
160
194
181
209
203
255
211
194
260
224
232
162
187
162
201
198
191
192
196
245
229
176
166
181
208
212
151
232
173
154
202
218
128
171
153
188
199
165
162
228
217
236
195
203
218
161
216
194
153
166
137
263
201
182
187
240
181
209
195
173
128
183
177
165
235
255
197
116
233
192
216
196
223
147
176
216
212
217
178
202
167
204
163
231
196
244
200
231
177
125
186
271
174
242
209
192
237
187
233
183
200
141
165
261
189
220
266
142
111
175
204
187
207
229
109
180
201
162
185
184
240
196
201
150
210
231
180
182
202
152
201
232
189
190
164
238
175
232
269
228
185
203
255
150
163
112
210
199
188
185
192
196
226
212
152
144
184
172
189
258
185
155
205
156
209
231
213
210
178
230
155
150
170
213
223
180
179
193
174
161
132
246
248
192
251
185
198
181
126
200
223
175
237
166
250
180
226
216
225
150
260
166
173
201
149
193
204
220
187
157
225
198
183
209
173
259
231
186
205
236
244
232
208
225
170
191
228
205
233
245
166
234
194
194
192
190
190
205
124
194
244
209
177
155
252
166
220
232
224
148
175
215
225
162
179
174
223
149
184
233
207
274
175
175
202
213
191
131
199
212
209
157
196
199
201
220
119
156
177
240
187
168
192
219
257
215
176
209
187
230
174
167
163
229
225
149
182
167
243
131
201
239
232
174
144
180
199
227
114
223
195
209
189
194
210
224
211
178
109
206
178
217
179
224
176
235
234
226
246
187
154
202
199
191
202
250
164
173
201
211
221
226
233
157
158
138
220
177
127
151
181
226
175
158
144
169
215
223
201
186
158
133
220
193
220
151
146
180
243
233
201
223
189
184
140
258
162
283
173
194
179
151
186
204
257
104
170
239
155
186
179
196
203
220
164
191
201
182
174
159
183
163
146
200
213
188
211
165
237
190
215
232
211
229
193
213
162
182
244
206
246
197
197
168
213
201
201
199
206
234
177
166
215
220
173
191
220
224
207
204
189
200
230
175
229
176
191
193
230
141
192
186
245
182
193
172
179
189
239
253
213
248
235
208
186
182
229
199
185
247
160
198
259
215
116
204
266
124
211
188
197
226
210
250
166
203
222
235
211
156
223
192
262
129
246
237
198
187
185
228
195
210
238
225
244
161
173
210
190
181
185
200
201
119
171
228
263
158
215
221
179
213
137
201
214
152
205
226
219
170
181
181
223
163
215
186
198
254
222
221
156
198
210
150
180
175
187
224
171
213
203
163
224
193
128
168
177
173
200
211
199
161
214
174
218
157
181
178
151
155
182
193
239
156
211
233
212
245
233
162
226
189
213
237
246
195
257
203
205
250
180
127
209
183
151
163
249
223
154
187
208
187
213
206
194
247
194
191
139
226
224
198
230
139
233
201
226
221
173
217
181
208
155
223
213
199
137
169
204
145
200
170
217
188
249
171
187
180
240
214
197
187
185
166
134
146
193
194
165
146
235
217
214
139
195
219
268
213
248
202
159
225
175
195
190
222
233
191
174
206
160
177
174
259
138
186
171
169
255
240
145
223
220
224
211
202
155
187
183
248
205
219
185
184
254
178
269
210
219
221
132
180
212
226
171
165
192
197
172
263
165
171
170
159
208
158
209
175
232
205
160
253
200
240
223
180
216
148
222
175
217
183
191
136
198
164
232
255
223
187
213
234
161
221
147
195
205
173
215
212
217
280
158
170
117
221
245
187
194
239
234
240
178
165
129
137
158
198
187
162
229
171
207
190
211
174
152
220
175
146
191
206
226
228
194
216
224
182
180
196
246
223
192
193
130
211
225
199
187
219
232
188
256
145
186
181
256
182
171
202
202
222
161
225
166
187
219
125
197
266
182
240
211
190
193
245
194
219
219
246
131
213
163
224
225
266
201
167
197
212
242
201
245
250
175
220
185
214
236
217
210
197
274
209
242
204
190
181
174
144
221
267
259
110
210
258
162
240
213
190
206
225
265
205
186
218
166
186
229
184
253
177
159
222
144
180
217
193
234
170
206
211
270
190
251
192
175
178
179
220
236
249
187
139
242
213
232
174
223
208
272
198
222
237
179
210
193
249
192
200
207
180
221
216
237
198
205
194
216
237
197
168
186
155
130
222
181
218
216
204
261
160
174
191
223
241
165
209
161
230
206
218
162
243
199
225
121
201
140
189
237
220
185
199
224
217
223
160
265
228
200
192
230
205
157
197
206
255
152
182
223
200
197
162
225
221
196
177
181
139
207
246
230
230
193
163
216
197
205
201
215
230
284
214
233
170
260
139
146
231
208
192
174
231
196
150
191
172
205
214
239
238
219
191
226
170
207
219
195
201
277
231
190
187
214
254
186
243
213
217
193
149
262
220
207
136
235
218
154
186
142
182
196
221
237
230
153
230
218
233
154
238
253
233
184
175
165
209
220
116
229
228
180
201
207
162
225
205
154
145
192
242
223
226
217
171
150
222
220
159
221
248
127
230
252
140
257
192
224
91
246
183
206
159
176
149
233
233
168
125
199
200
236
151
214
235
236
144
234
206
229
253
159
226
170
168
192
186
217
211
148
234
211
179
180
219
209
191
160
182
172
187
208
193
198
226
202
227
216
175
186
193
151
185
204
231
236
199
192
258
239
198
152
217
275
243
175
208
155
169
236
168
259
186
179
235
219
226
221
235
226
179
177
242
216
211
151
166
189
193
240
178
195
148
215
227
233
171
230
215
187
239
183
128
220
231
196
235
154
228
223
216
172
239
216
208
245
211
229
177
172
199
205
159
227
182
199
189
207
269
192
276
235
157
165
240
191
222
209
211
195
185
187
236
138
178
201
219
181
241
233
170
225
141
203
226
237
238
208
187
233
190
183
175
204
223
181
188
227
174
221
214
193
244
188
207
172
219
256
251
156
246
181
169
217
243
172
188
219
168
250
171
213
212
167
202
190
175
240
207
185
185
148
135
220
179
216
210
202
225
297
203
208
210
172
253
178
194
202
219
261
217
231
225
250
194
242
262
130
213
219
194
205
177
265
244
152
143
215
255
209
196
192
205
155
209
193
235
138
185
201
171
221
219
258
210
181
263
177
237
261
223
154
179
187
182
193
267
244
199
242
178
225
198
166
182
142
229
245
215
175
165
200
206
224
200
207
213
129
173
268
169
238
205
273
196
156
185
158
216
197
187
208
188
202
221
241
191
113
231
191
137
278
259
216
176
158
175
191
217
168
191
251
179
239
204
173
186
198
180
198
171
143
200
148
169
180
188
159
135
201
158
228
180
172
233
126
244
148
175
166
182
204
188
221
176
220
182
207
224
217
184
197
131
245
216
171
180
198
239
200
151
244
155
172
150
162
259
220
153
272
175
149
224
246
195
244
171
225
206
184
222
161
199
197
164
125
196
232
185
191
228
144
205
205
236
180
174
155
238
230
166
161
157
149
189
173
253
187
138
251
205
176
165
204
185
248
232
147
223
119
169
280
148
205
197
199
168
221
202
206
173
173
177
218
145
184
194
177
235
163
185
208
194
200
210
180
165
237
222
164
176
213
260
105
195
228
207
242
195
192
233
220
170
251
175
211
170
197
212
183
175
161
230
176
259
186
195
221
197
155
192
202
184
252
211
209
154
196
175
239
209
247
243
247
215
188
228
184
277
207
226
232
219
169
243
161
177
215
154
225
207
189
174
180
232
159
234
152
233
238
241
224
214
175
180
221
194
253
199
156
230
238
210
169
173
180
161
182
218
231
214
187
208
183
215
222
103
238
185
220
210
239
242
198
235
248
208
201
148
128
232
258
162
170
214
193
250
211
219
186
173
231
146
142
250
208
210
184
167
140
243
188
159
159
225
248
148
191
217
247
201
224
160
213
191
137
197
192
197
190
237
173
189
257
179
176
181
226
167
193
218
202
214
196
268
256
235
185
236
231
175
193
216
184
199
284
264
271
240
202
236
170
190
169
214
217
206
250
226
202
198
170
199
151
147
176
190
169
197
148
188
164
172
212
196
182
180
161
174
134
218
203
187
152
151
205
188
205
205
227
138
177
186
195
204
206
229
198
182
241
143
192
200
174
205
183
181
165
146
164
203
185
140
144
222
220
191
120
191
233
248
168
194
250
271
241
165
174
171
231
183
300
187
145
221
228
243
170
258
207
190
153
145
176
181
209
193
195
204
202
225
211
186
194
222
170
277
180
202
217
201
218
193
209
213
222
200
166
186
151
227
222
184
196
220
185
228
190
191
211
255
170
144
211
161
227
247
209
209
202
161
231
200
237
205
229
245
236
148
221
150
248
171
196
233
242
243
175
174
270
228
189
268
205
205
259
226
166
189
169
209
165
182
173
245
242
189
234
259
238
178
251
132
196
250
252
161
200
180
153
220
175
220
211
238
238
177
141
173
218
209
185
211
262
249
216
226
188
208
177
219
225
151
175
227
240
159
240
178
188
229
143
157
209
253
253
214
232
213
230
174
217
188
201
211
157
204
170
178
177
261
190
197
224
193
131
221
234
222
205
225
174
242
169
227
192
203
247
232
208
169
179
200
242
173
207
156
170
172
197
227
212
171
178
276
153
218
190
202
202
215
203
237
224
210
172
180
242
248
154
224
224
168
177
159
151
183
212
189
225
181
207
159
148
215
154
216
161
207
268
144
156
235
238
196
148
206
223
253
199
200
151
217
194
245
211
265
176
163
177
161
216
167
243
250
218
208
224
228
203
243
257
173
179
212
149
182
253
175
218
199
255
197
217
171
238
238
189
187
167
215
211
257
208
255
109
206
159
254
179
193
197
209
217
195
251
201
191
207
136
222
131
217
179
166
178
229
191
247
200
213
238
218
218
163
225
111
183
256
199
166
248
168
181
192
192
170
240
249
232
218
232
245
157
142
186
135
182
205
218
180
194
221
176
155
152
246
195
204
232
200
194
202
238
197
196
157
260
181
190
218
215
199
230
176
229
213
161
137
182
158
188
211
277
198
192
150
172
258
143
165
173
179
174
137
194
228
176
192
186
206
172
191
181
222
130
217
204
182
167
200
183
227
209
234
154
241
232
222
174
240
195
172
192
247
208
183
248
260
184
178
238
158
226
173
134
182
231
175
158
183
107
180
206
170
139
121
134
208
176
137
260
204
181
193
173
276
178
169
196
147
172
154
172
168
213
154
180
206
212
167
244
143
259
248
187
181
185
184
167
207
214
148
202
213
184
172
186
148
190
221
156
270
178
206
181
154
247
143
214
215
193
228
152
196
209
177
184
205
223
229
187
164
200
221
202
225
225
232
177
262
177
155
179
161
171
150
239
156
227
227
211
239
168
197
209
194
171
139
223
226
216
195
261
161
224
211
159
187
197
191
217
227
294
207
227
187
196
216
215
222
251
197
204
208
249
199
201
252
193
193
223
187
193
173
195
164
184
199
188
198
174
197
194
166
127
199
132
218
150
212
230
191
240
132
235
127
156
142
212
199
253
158
214
184
224
251
249
207
148
212
215
232
178
241
137
156
207
162
170
187
248
211
219
197
196
215
169
164
145
227
203
181
172
227
210
252
205
171
218
163
176
224
234
250
137
227
260
142
223
195
155
159
227
198
204
196
190
194
159
233
164
226
225
258
187
194
177
207
204
193
183
207
149
165
189
232
233
254
150
157
220
110
190
223
191
219
178
213
169
197
207
191
227
172
280
191
180
128
109
277
202
136
164
196
207
198
214
184
170
202
214
158
216
206
184
184
253
238
189
184
189
248
205
235
202
124
222
169
227
210
198
184
163
156
235
190
217
154
218
183
190
195
177
231
185
188
202
171
197
165
222
245
183
234
192
127
233
164
217
161
122
145
159
276
163
217
241
218
120
173
167
222
121
227
200
222
221
227
197
235
206
130
256
173
173
115
190
116
219
149
255
182
119
134
240
159
238
165
156
152
184
231
183
238
150
165
156
130
191
167
164
166
206
268
179
154
240
206
239
204
158
169
239
204
136
240
155
224
253
182
192
187
142
199
213
156
143
128
204
206
193
223
212
124
199
246
195
123
232
187
292
191
267
170
213
236
197
213
172
236
168
203
255
180
246
205
221
149
255
242
162
186
205
211
193
262
192
198
169
266
198
194
198
183
161
207
179
248
232
273
222
242
142
207
208
167
196
189
200
207
188
214
201
210
259
191
175
207
118
178
245
173
187
191
227
161
150
232
184
255
156
231
174
246
208
158
189
146
137
148
180
185
211
136
188
244
115
164
244
146
132
171
236
172
273
118
194
214
180
230
215
198
135
240
152
277
241
197
208
255
179
234
208
247
116
211
217
226
162
234
190
246
164
212
167
246
198
182
253
222
197
236
159
224
182
245
207
188
201
226
245
218
205
190
184
199
170
165
160
188
217
188
141
223
256
185
245
162
216
172
203
217
165
240
185
145
164
252
153
227
217
157
186
188
210
226
245
140
183
103
191
243
193
235
236
147
201
196
206
212
186
200
195
187
217
249
192
213
221
193
218
185
247
165
176
153
234
206
150
229
218
187
147
179
231
182
238
162
190
268
196
181
204
212
215
195
237
215
183
234
262
200
175
224
288
239
169
244
161
217
184
187
144
170
227
216
203
207
162
237
189
246
254
107
189
242
175
171
212
253
240
169
191
130
213
138
223
136
251
114
210
187
234
215
251
183
202
196
205
211
240
197
227
178
202
259
145
217
194
203
170
242
210
189
217
200
174
96
164
228
250
218
143
173
192
230
165
134
207
197
173
204
226
192
161
195
195
206
225
257
184
178
174
141
162
241
141
174
246
193
201
249
287
190
287
258
230
169
183
208
216
131
189
262
220
212
236
207
181
201
195
152
188
173
140
176
226
209
216
171
173
178
195
233
187
182
176
192
174
188
186
183
211
211
219
173
219
262
175
168
172
206
183
198
196
209
221
195
235
214
195
216
245
187
169
125
220
225
217
276
157
243
166
190
192
157
200
212
239
218
184
217
210
164
207
232
233
169
187
245
172
212
215
195
215
173
205
192
230
243
220
161
207
216
189
195
212
174
182
187
201
244
176
226
162
168
256
231
237
194
184
141
235
204
209
138
243
231
199
262
223
197
249
219
182
187
208
176
108
230
259
232
186
243
206
204
165
220
221
161
185
145
169
200
290
169
175
191
158
183
176
254
181
223
263
191
163
266
170
206
197
199
181
194
237
230
153
228
198
235
228
211
224
181
192
185
196
165
173
273
247
215
189
231
233
237
219
158
224
226
187
144
268
254
240
100
110
187
187
196
193
204
225
171
189
241
195
161
239
154
208
134
201
189
241
175
200
199
189
193
151
244
208
229
207
247
159
171
246
235
190
201
175
205
204
245
179
174
194
244
204
209
241
146
254
242
182
191
130
176
160
137
119
236
160
179
216
191
239
191
167
237
197
243
204
201
241
263
226
196
214
227
247
208
246
212
208
229
160
190
159
203
205
227
223
207
180
170
198
205
202
216
202
203
209
180
285
182
193
217
147
217
242
189
236
269
192
174
180
193
178
242
167
152
146
284
196
203
224
188
193
212
219
150
172
189
193
187
196
229
196
211
206
240
236
185
174
160
269
197
198
202
167
204
233
214
157
238
166
212
215
184
225
211
187
190
211
151
215
184
181
124
183
158
246
260
225
173
190
212
181
195
171
183
225
236
180
141
205
189
166
181
124
198
212
184
188
208
229
273
137
138
248
186
230
191
195
177
207
194
251
196
205
201
212
198
208
242
197
213
206
232
185
175
203
161
233
177
197
132
163
218
233
122
245
253
225
187
184
167
251
171
194
114
164
222
184
234
215
211
218
238
248
166
222
163
163
204
208
222
122
194
204
179
242
218
269
245
128
178
181
186
133
217
207
153
216
228
208
173
242
133
101
184
119
256
214
145
190
197
200
241
145
152
202
188
222
189
182
247
239
209
252
154
210
211
231
205
181
229
239
165
185
240
158
191
188
201
187
244
188
210
162
225
198
206
247
107
167
198
179
177
248
235
170
209
215
103
209
177
283
175
176
168
203
206
257
162
176
247
219
202
260
242
151
221
259
221
200
246
194
228
165
258
150
199
157
136
181
192
207
165
217
227
172
188
225
141
247
134
110
225
166
178
213
214
230
241
205
237
223
129
235
174
178
206
185
237
203
259
145
221
191
196
213
213
207
188
189
230
199
187
187
175
212
207
252
121
150
148
163
225
206
205
191
178
215
119
182
221
195
260
161
165
272
152
195
277
215
228
184
249
184
245
204
184
193
245
115
234
186
227
260
241
214
187
217
201
216
196
221
217
125
190
208
165
181
255
196
198
185
186
223
197
146
237
137
171
158
177
236
189
212
197
203
204
196
204
233
213
175
198
141
171
200
184
195
194
180
191
276
173
198
208
228
182
163
217
160
212
201
262
156
194
143
236
214
237
188
191
234
243
218
203
216
177
172
222
174
276
191
197
211
220
204
217
177
208
230
186
200
228
192
241
195
232
168
240
174
150
197
207
120
206
126
189
242
197
134
183
252
257
246
115
209
137
155
174
200
111
210
223
96
250
234
234
194
196
196
135
182
191
174
175
225
199
155
174
190
205
173
229
196
201
221
192
161
197
214
139
224
221
197
232
188
228
152
203
172
200
227
110
225
152
212
163
144
143
227
161
212
204
209
182
201
197
176
226
210
208
165
190
164
197
228
250
135
214
193
149
218
136
188
191
230
172
229
233
130
202
161
189
248
125
230
200
174
152
198
210
166
224
197
235
218
280
181
152
188
184
237
199
168
142
192
261
237
206
209
157
205
205
248
218
230
161
225
194
149
208
167
134
214
276
222
154
209
186
147
191
248
197
230
192
183
180
176
266
206
156
215
151
211
198
226
184
209
245
194
193
180
214
206
86
219
241
228
155
249
196
218
172
188
258
241
258
251
260
187
249
223
123
225
238
186
236
190
218
263
172
151
201
252
178
218
210
185
217
210
235
237
165
244
173
206
173
184
221
251
220
190
232
289
278
149
233
178
235
197
178
198
185
184
206
200
164
177
180
183
149
192
222
182
186
217
239
207
203
184
244
200
201
211
192
209
193
210
227
146
203
200
232
211
186
195
240
191
195
188
219
154
240
201
236
256
212
222
152
204
192
240
165
210
206
199
213
242
156
249
236
156
241
188
208
201
247
138
245
129
212
208
244
207
143
187
218
221
235
155
199
200
248
203
244
243
233
188
211
152
239
152
183
236
208
178
199
186
196
167
190
225
200
200
229
202
233
198
174
120
222
162
215
138
193
229
191
243
253
225
231
263
243
216
248
162
164
209
178
192
189
215
185
193
271
237
258
206
242
152
157
199
217
138
180
209
249
215
230
220
230
171
216
239
211
199
201
206
186
224
138
210
178
146
176
169
204
194
171
254
211
216
135
193
227
219
244
192
247
186
217
170
235
201
172
263
132
161
150
150
203
178
226
249
187
160
205
187
187
199
181
225
221
191
215
175
176
202
160
216
176
260
164
173
232
229
227
239
224
223
194
221
223
184
133
183
193
142
195
206
176
176
182
229
232
235
205
259
207
223
159
219
171
189
138
207
202
172
232
176
145
223
210
241
257
240
241
178
201
263
182
202
221
204
215
243
177
218
264
216
174
183
196
261
201
246
202
165
258
225
201
262
234
222
143
165
171
278
173
180
218
176
160
175
160
268
116
207
239
146
211
197
230
184
153
162
134
172
198
222
233
193
233
231
184
230
168
211
173
211
220
191
173
212
210
155
194
200
195
181
166
197
128
183
221
215
230
181
202
201
165
246
173
218
216
202
259
223
292
242
159
214
216
264
217
191
164
214
186
191
230
226
237
187
205
175
248
188
246
198
177
236
242
185
199
187
227
190
201
244
147
165
224
205
196
147
230
176
228
202
186
242
194
197
244
223
190
251
168
235
229
253
207
209
251
210
184
168
253
202
193
218
151
270
266
199
239
256
171
246
224
196
209
172
208
242
212
185
180
207
201
174
127
257
189
209
158
218
250
240
245
167
194
177
185
164
154
211
191
235
170
223
205
253
212
228
156
189
197
254
231
142
221
237
202
213
187
175
203
233
149
154
156
189
210
227
248
223
146
142
184
274
205
211
173
240
243
216
210
116
254
199
208
178
213
161
200
217
228
158
155
236
215
173
208
244
250
189
172
241
248
178
111
219
186
223
196
173
155
208
181
160
205
201
207
238
207
183
156
191
269
169
244
201
225
156
204
253
196
106
198
263
228
197
229
145
204
227
154
185
135
228
195
204
159
162
188
223
220
153
207
149
234
159
177
208
125
209
177
182
136
217
180
208
214
185
157
253
234
193
171
206
150
184
175
140
216
158
232
196
215
167
203
221
207
213
170
210
236
170
207
198
261
180
206
193
154
216
193
160
220
101
183
260
205
279
216
147
201
207
201
158
182
249
139
249
215
120
135
229
204
198
196
206
212
188
208
156
167
173
210
130
181
188
195
193
242
184
185
196
202
167
200
218
189
134
192
133
198
217
203
243
184
207
179
197
243
188
253
183
176
169
170
138
153
222
202
197
213
182
175
242
180
142
217
208
217
176
225
192
204
231
203
247
179
199
178
159
156
235
211
130
253
247
214
194
223
198
136
249
154
262
183
225
174
203
187
186
157
151
158
223
190
253
168
174
188
213
202
172
142
209
174
231
211
212
208
212
259
190
211
174
172
222
157
203
180
212
169
185
191
220
158
244
274
206
240
205
201
239
257
166
190
204
246
249
147
215
177
194
178
227
201
159
203
190
145
169
157
180
253
186
231
229
223
167
230
165
270
216
209
206
196
230
299
130
182
177
225
190
220
208
276
170
212
210
239
196
265
233
246
179
226
212
245
220
195
158
156
201
179
200
247
276
212
216
226
231
207
184
175
200
203
192
210
155
127
208
183
234
208
195
160
191
252
182
248
201
239
201
231
152
176
231
186
209
213
172
203
168
198
235
228
169
171
209
141
234
245
184
230
257
208
217
196
233
180
190
132
219
195
219
245
222
202
214
189
252
208
181
207
237
243
136
195
200
174
220
226
212
153
182
128
150
224
198
252
197
214
187
176
233
210
180
184
228
164
169
207
190
232
164
210
166
228
168
163
121
227
188
286
244
230
231
222
222
251
214
183
235
162
229
223
187
203
178
160
219
251
189
202
154
233
160
172
155
190
152
212
153
251
267
203
134
227
231
192
185
177
203
152
154
201
174
199
135
218
231
273
179
241
236
236
252
192
219
186
182
208
177
200
255
179
182
232
220
267
191
176
238
199
219
223
222
184
211
216
230
230
215
153
195
249
177
163
219
150
231
250
147
208
165
131
207
231
203
240
198
209
222
211
213
209
201
184
214
183
157
228
127
222
209
173
190
225
144
182
201
240
230
173
255
162
222
254
187
136
223
277
185
213
222
217
304
249
246
252
196
172
121
169
218
175
166
187
204
233
144
213
178
215
208
171
179
191
193
249
211
197
169
193
162
149
209
211
257
196
235
173
229
287
133
267
209
193
191
227
176
172
201
170
148
116
208
222
211
194
242
148
205
211
267
194
191
193
170
210
198
188
179
198
176
213
231
225
217
192
239
132
241
211
226
216
175
173
173
167
204
218
151
226
247
194
176
181
194
227
210
194
216
252
153
229
213
211
232
166
242
204
206
199
186
177
249
216
209
187
214
196
225
206
170
238
119
133
201
166
205
188
195
246
213
200
170
186
226
183
233
245
214
224
175
131
229
168
163
118
195
256
216
230
205
132
214
192
177
162
177
217
198
206
205
227
223
171
172
164
263
202
164
177
203
245
173
162
160
173
223
192
216
228
184
195
168
176
227
203
198
213
117
161
226
164
167
187
231
216
155
185
243
211
184
226
216
262
164
180
243
200
214
195
214
196
199
240
122
221
155
262
181
229
172
172
155
231
176
167
242
250
168
122
224
186
179
204
214
225
201
202
205
222
192
232
252
226
213
222
179
203
152
225
166
93
198
155
204
224
193
164
240
207
202
210
184
242
228
215
193
184
213
229
224
196
226
171
253
183
188
159
248
193
142
232
230
177
172
239
168
175
218
225
228
206
201
206
214
172
194
250
192
261
169
135
182
210
71
156
216
264
239
201
227
232
215
211
216
224
192
233
264
167
198
191
163
283
223
181
199
213
218
227
192
219
181
179
210
220
193
189
212
206
164
167
246
125
181
166
224
145
175
212
202
183
213
189
215
138
204
217
236
188
166
197
251
190
202
174
212
222
235
147
187
213
183
199
210
201
171
235
240
191
240
245
237
219
157
164
223
216
227
230
219
237
234
200
225
253
219
201
185
106
250
208
191
199
212
206
240
227
208
238
212
183
218
154
228
226
261
243
199
182
185
239
158
179
230
177
230
235
233
167
179
262
193
197
163
159
192
182
211
206
221
258
161
232
206
197
205
203
163
161
210
180
184
155
198
220
185
184
213
225
192
182
149
213
163
184
233
193
193
235
145
251
170
206
204
143
234
137
204
151
127
214
161
207
204
198
223
225
205
178
168
194
246
236
202
117
148
224
180
177
239
235
165
170
246
154
136
185
168
201
195
188
232
190
220
225
171
167
206
238
206
211
174
161
164
182
241
259
229
207
231
257
181
180
176
176
192
197
232
223
243
196
166
135
124
176
251
105
159
154
139
191
179
213
193
232
212
250
246
176
213
158
190
153
202
239
193
172
238
199
143
179
199
209
162
207
249
176
218
145
193
224
202
208
194
216
170
188
204
194
261
250
251
152
203
156
185
213
223
200
266
227
160
220
218
163
168
127
192
188
231
243
149
240
233
156
141
192
228
224
183
157
187
165
204
180
192
209
202
198
170
150
136
184
219
173
152
217
151
265
109
215
160
147
229
191
160
233
208
226
157
191
230
156
142
207
129
217
202
189
215
296
151
158
177
241
139
207
151
254
246
209
191
194
157
188
175
206
166
201
217
139
274
147
193
162
205
188
167
219
190
211
202
234
216
192
226
194
183
271
242
216
177
142
242
199
235
215
183
220
208
196
201
232
202
134
197
222
175
242
261
222
249
238
166
256
211
256
188
218
155
181
184
186
142
214
239
145
184
232
186
134
162
217
227
248
180
226
197
161
177
184
208
190
194
158
183
223
219
175
249
188
153
243
223
196
219
250
205
203
174
241
201
176
217
208
218
203
210
217
166
193
213
114
161
262
239
128
190
159
213
198
234
163
213
233
147
224
247
174
214
215
215
199
250
223
183
254
197
125
255
243
203
198
232
201
124
166
232
121
191
247
169
199
234
193
128
228
247
197
168
215
200
212
222
158
216
221
200
204
124
133
238
162
249
228
170
211
181
212
247
194
174
167
219
190
176
225
185
141
245
274
214
224
166
189
233
178
183
160
255
212
184
207
205
205
174
247
199
196
210
170
223
171
228
201
200
156
233
169
175
260
199
153
179
189
243
164
142
233
201
243
249
234
172
229
189
261
192
186
218
208
173
258
65
130
236
207
212
287
163
215
203
251
252
191
217
146
278
182
149
135
162
221
170
233
215
198
160
197
206
211
217
224
198
223
167
309
213
205
226
226
203
170
184
186
184
178
163
244
174
242
194
225
174
223
180
201
258
133
206
183
204
200
205
165
224
196
189
160
227
259
202
200
199
208
147
268
203
265
163
191
221
152
230
176
192
198
219
126
192
165
210
249
241
123
190
127
197
203
209
239
239
217
161
180
169
183
159
244
196
219
233
134
190
149
249
243
197
215
105
205
167
189
197
178
185
181
179
249
207
111
230
228
167
203
193
176
209
189
264
183
189
280
191
220
230
169
225
247
189
188
223
177
153
156
230
153
184
279
231
192
151
215
255
206
204
220
197
187
158
232
219
182
192
183
216
179
258
234
216
182
172
261
252
182
197
210
186
202
237
193
192
203
203
195
201
174
250
225
222
164
220
197
197
255
200
191
234
202
162
200
211
192
227
218
193
174
194
215
167
262
174
180
220
220
147
244
201
232
218
229
157
250
205
246
243
237
218
165
219
162
161
246
221
210
197
179
219
180
232
248
230
202
218
208
225
212
161
200
222
187
226
214
179
209
208
188
174
177
204
210
143
219
253
207
156
232
194
181
234
218
237
178
259
186
199
179
204
223
193
156
195
214
218
160
144
201
227
194
236
178
241
227
179
192
210
224
185
234
153
275
187
216
196
170
264
163
181
203
196
140
166
230
219
240
176
211
217
212
176
173
202
138
133
237
202
197
161
165
232
229
198
172
158
183
204
230
197
307
133
217
207
223
181
185
216
222
154
217
142
176
119
220
201
156
181
255
203
185
215
175
194
163
200
205
221
141
181
237
207
181
264
155
126
205
231
211
231
165
186
219
163
156
201
187
151
189
216
202
221
206
225
208
235
142
188
238
208
208
193
198
205
215
205
168
165
226
188
187
229
264
256
135
176
157
225
207
208
230
271
207
143
176
209
204
165
184
172
177
251
223
181
209
167
164
168
168
232
195
197
247
188
130
178
194
133
157
201
182
185
234
192
187
202
134
192
265
202
183
161
157
144
183
248
227
220
137
153
160
200
207
214
192
180
190
124
167
248
210
173
221
215
195
203
254
225
170
206
190
177
174
187
224
186
188
255
205
170
214
170
235
178
226
234
197
161
136
206
196
198
235
205
238
227
214
232
169
204
229
147
218
182
227
234
191
234
118
176
237
134
150
194
203
238
206
247
172
171
167
142
165
240
226
240
220
219
212
192
156
137
211
205
182
209
249
240
185
219
223
173
193
201
179
184
179
137
178
147
225
115
223
133
185
233
145
211
180
203
186
191
150
214
135
186
172
228
232
150
205
236
199
201
145
226
218
198
229
181
208
212
173
183
214
172
221
149
203
204
227
236
226
222
287
195
156
166
226
210
207
245
179
214
162
227
210
194
217
208
162
208
268
177
189
217
151
199
183
232
140
123
138
147
235
253
218
184
205
168
201
233
197
147
175
204
159
186
139
148
185
195
250
129
155
217
225
168
240
181
209
199
225
223
182
139
186
238
206
246
220
164
156
241
183
181
192
207
163
264
210
138
263
243
202
139
178
228
235
173
179
194
180
208
159
186
192
236
235
189
232
204
215
230
233
263
173
170
238
251
227
176
210
190
243
219
190
199
228
238
170
218
177
155
226
207
195
198
238
198
310
185
174
170
173
196
143
202
210
150
214
220
281
186
226
161
230
199
151
244
175
144
186
243
234
221
205
193
256
148
254
245
203
194
227
245
227
209
216
217
183
205
206
159
140
160
209
242
193
159
230
221
236
171
179
193
151
230
207
213
194
202
220
201
210
227
225
177
184
150
174
147
242
225
246
231
150
240
140
163
215
179
232
236
232
137
178
174
212
199
249
178
144
227
178
126
217
119
245
147
178
250
212
221
220
218
254
227
119
194
196
178
239
141
221
194
240
193
168
231
196
237
169
206
188
216
200
231
226
163
173
235
270
255
207
162
170
171
124
188
147
170
223
220
197
274
234
186
240
231
180
135
181
182
246
195
170
248
245
159
176
258
235
218
207
201
158
268
178
263
148
254
264
159
220
123
264
162
229
152
206
193
214
249
223
204
149
202
208
209
160
231
248
192
233
238
260
264
210
194
126
175
242
184
171
125
197
194
219
249
205
274
204
201
228
190
184
222
171
225
218
173
198
216
158
159
224
207
207
173
220
186
153
174
230
133
233
166
200
203
236
218
263
183
188
160
175
206
165
216
186
190
226
186
213
187
224
249
163
230
199
217
230
209
159
210
219
257
192
190
188
237
118
157
255
223
211
169
215
212
188
190
275
215
214
157
182
215
197
142
240
225
176
231
252
192
180
197
171
253
181
172
195
138
193
241
228
195
227
229
214
176
211
181
201
175
195
221
228
275
204
199
193
250
183
154
146
187
229
200
225
131
227
195
113
243
171
245
156
196
201
224
226
180
189
203
277
136
220
205
133
176
237
148
230
224
218
119
177
236
242
229
230
230
226
162
195
223
217
213
224
159
202
149
214
240
184
162
191
155
213
136
264
149
217
122
142
172
179
203
206
238
178
107
238
183
251
160
213
227
202
200
201
234
218
201
191
198
193
210
199
213
161
182
261
227
229
240
211
158
232
138
121
196
142
206
162
182
220
191
132
198
184
193
191
161
237
181
203
238
256
213
201
226
224
233
193
235
220
175
190
192
217
186
145
148
221
102
206
191
211
185
195
185
201
192
201
161
145
217
179
208
186
212
210
248
159
214
187
147
165
175
231
184
172
160
218
270
194
191
250
211
227
212
150
244
165
234
210
183
211
118
255
171
222
235
189
140
268
248
258
229
193
237
215
130
200
163
137
190
143
124
180
229
199
163
239
201
195
235
217
218
156
181
221
191
219
219
184
206
222
202
215
218
234
241
224
166
215
196
209
231
245
202
214
196
190
199
167
205
210
195
211
243
156
172
230
254
205
192
179
213
225
194
239
157
167
239
183
217
203
118
215
208
176
175
272
212
262
182
201
228
221
182
151
229
198
206
149
192
171
217
188
214
186
158
216
142
213
216
183
223
163
183
194
193
181
200
208
258
222
171
196
160
171
158
160
136
206
161
170
212
212
145
229
233
194
189
248
135
229
237
164
231
202
183
177
142
181
143
200
261
200
217
152
169
179
161
227
150
166
177
185
145
234
163
273
239
223
242
197
180
195
169
216
230
119
213
230
198
180
204
218
217
207
159
244
176
239
154
248
156
235
200
188
210
225
172
215
203
199
268
192
195
146
237
121
163
209
182
206
110
257
176
225
222
251
202
212
254
197
207
195
182
222
134
262
260
194
186
180
224
189
210
151
177
172
192
174
199
241
150
215
159
182
200
243
158
182
164
169
246
206
193
148
184
187
234
186
142
199
226
171
162
269
179
265
139
166
172
221
202
212
177
237
191
158
230
201
149
176
171
179
222
163
208
168
188
265
192
175
159
231
119
214
188
136
201
216
156
213
228
174
246
183
235
211
177
217
192
167
214
160
180
176
133
182
219
254
126
136
154
178
276
191
198
195
172
189
236
175
205
211
248
214
140
214
212
184
208
180
184
232
230
175
196
144
218
203
189
183
254
213
180
202
97
178
158
224
178
129
176
271
168
259
203
200
202
194
220
154
188
176
191
228
188
186
212
192
177
192
171
213
228
198
235
193
225
211
116
201
231
185
192
187
252
204
220
208
213
181
251
155
246
222
187
201
180
238
211
202
143
182
216
191
205
231
216
192
201
192
184
185
204
165
190
199
239
216
173
194
207
217
217
167
212
190
205
215
145
188
233
217
230
216
243
142
130
235
256
214
180
252
223
171
254
189
264
179
139
188
202
180
148
229
144
174
246
244
236
219
176
196
196
209
177
231
154
230
210
252
185
169
203
170
207
188
243
167
171
233
143
175
226
209
220
168
214
212
223
200
222
179
164
173
205
231
257
250
235
190
176
182
215
274
229
244
186
142
225
194
245
161
203
172
248
178
234
177
208
218
234
272
254
260
186
212
178
201
206
192
169
214
162
184
209
191
187
218
178
226
181
274
179
160
204
236
154
228
211
178
242
211
202
240
207
180
171
144
193
244
234
202
198
121
205
156
202
233
242
239
188
167
263
165
228
163
231
223
202
152
186
164
175
197
182
217
162
159
217
193
215
179
162
140
228
228
238
172
156
161
201
155
222
230
153
204
138
173
209
124
171
220
211
233
220
231
231
251
222
158
173
163
258
219
191
204
119
224
136
191
179
192
212
148
258
196
238
208
215
214
188
249
249
166
201
243
225
235
211
208
137
149
202
153
189
167
177
149
210
222
224
208
181
158
263
242
180
216
172
202
219
212
156
199
217
205
163
214
211
187
235
171
186
235
193
153
164
210
207
241
189
164
183
180
214
236
270
181
235
186
193
179
238
213
143
166
157
152
193
185
258
178
208
241
190
183
170
213
185
171
242
189
262
230
214
179
233
237
260
174
260
134
228
185
183
165
196
196
189
164
176
162
176
189
228
216
231
186
197
206
223
261
201
181
207
231
183
160
225
180
160
182
175
204
217
122
264
266
178
206
259
165
199
203
168
108
211
224
189
235
199
230
225
228
190
225
194
165
219
239
170
186
157
120
180
241
144
199
188
135
194
256
184
260
205
185
249
197
173
196
185
194
212
261
179
147
234
167
242
198
164
167
163
173
176
213
186
158
234
202
246
211
164
243
131
233
115
191
215
240
216
235
173
147
215
238
172
227
221
215
180
242
137
202
165
214
233
156
218
169
153
201
156
226
210
159
206
213
207
155
253
247
225
158
157
163
150
197
235
158
220
251
237
213
240
147
200
227
206
226
203
255
196
170
197
250
160
207
182
255
157
213
238
161
233
160
177
199
258
216
184
208
162
232
237
245
210
129
221
170
184
199
151
244
205
174
234
248
129
223
232
205
208
223
248
225
125
198
249
113
117
199
210
218
218
158
243
141
202
247
150
207
245
207
230
234
266
226
201
148
197
195
210
199
276
166
169
207
188
219
206
189
199
193
215
206
244
129
185
178
191
187
210
191
200
205
168
209
210
178
165
219
274
180
242
214
269
200
234
138
210
210
191
228
192
223
202
173
240
256
170
168
215
188
216
211
198
197
237
170
209
209
215
163
206
188
191
195
182
203
238
212
252
235
186
241
217
238
200
242
202
205
177
200
229
183
214
158
256
147
198
153
176
244
230
188
230
117
225
173
232
178
178
238
221
188
219
244
220
182
246
177
204
182
153
236
138
171
198
270
182
169
209
193
171
238
219
197
182
212
172
198
181
214
197
188
150
196
151
238
252
255
217
248
263
249
211
231
217
222
214
224
225
254
155
180
224
209
171
185
190
160
121
192
141
212
182
273
209
193
193
182
187
176
220
181
173
227
191
195
206
266
207
185
224
177
162
202
223
200
203
256
215
166
144
179
178
205
201
182
263
184
189
168
228
229
195
227
223
207
216
216
196
197
185
182
174
212
208
196
194
200
173
171
255
175
196
201
252
198
152
230
225
157
200
151
263
209
195
151
227
196
151
202
266
171
180
200
167
208
231
235
193
201
228
151
239
258
215
217
188
225
214
183
194
229
216
205
185
186
215
209
202
197
205
211
205
215
234
166
226
173
186
207
197
218
288
183
197
173
197
123
155
209
147
158
188
213
251
138
168
202
208
206
180
217
178
224
179
252
172
207
243
214
247
213
196
204
184
190
212
222
245
245
200
215
186
216
174
144
210
162
209
190
167
150
207
207
168
203
156
195
215
211
127
241
192
216
181
138
212
244
204
199
193
225
246
263
145
186
232
173
209
126
218
197
213
203
166
180
264
181
213
157
171
177
173
234
210
246
232
146
151
204
139
159
201
177
174
232
213
213
242
187
183
179
259
219
159
191
228
177
194
189
187
180
234
223
226
223
206
216
162
234
175
150
184
281
248
193
183
227
219
210
210
199
170
176
164
143
218
192
176
164
209
154
222
241
164
167
210
171
171
192
215
210
171
164
137
205
228
216
214
215
161
241
279
133
204
235
204
215
218
180
189
179
188
219
187
214
204
276
206
232
176
158
150
196
150
181
181
236
255
279
242
217
227
218
181
127
164
191
129
156
212
177
210
179
216
195
206
233
249
191
233
167
168
150
225
177
153
176
199
212
169
169
243
146
186
160
143
226
179
171
184
130
137
181
194
211
214
205
190
238
167
240
133
220
190
174
175
188
177
192
168
219
182
171
210
205
126
218
185
228
241
239
228
197
233
254
213
230
238
195
167
110
172
166
161
186
139
169
238
195
222
168
234
268
134
199
241
292
234
178
239
238
247
243
266
190
160
170
158
235
183
155
166
201
196
235
198
164
214
148
148
177
179
214
160
195
196
176
126
264
198
157
137
216
184
261
213
221
136
191
160
194
218
247
213
222
214
185
210
235
200
192
244
194
194
194
180
230
228
274
210
198
115
205
203
265
231
247
193
223
232
226
144
169
170
190
156
219
198
230
183
170
224
177
245
216
263
187
208
222
180
211
226
227
180
172
207
235
176
137
224
231
215
216
227
184
192
191
248
285
157
215
219
212
219
152
201
201
205
241
177
146
235
177
204
285
177
164
200
173
193
166
133
157
213
191
200
140
193
165
219
236
168
256
185
222
200
195
202
164
244
235
227
212
222
278
166
285
188
208
221
152
240
183
178
224
194
224
238
196
226
175
150
148
188
189
233
212
253
133
209
191
247
188
260
201
220
141
214
239
200
189
195
216
198
147
165
160
177
184
210
206
157
189
198
191
167
235
205
208
245
232
222
190
166
235
165
251
195
169
228
129
227
243
232
127
257
200
180
180
190
216
177
177
209
201
191
197
205
168
171
176
245
176
236
166
176
235
170
253
224
195
146
118
186
211
158
201
221
235
198
205
206
220
188
190
244
210
222
94
234
253
170
167
153
189
225
182
181
194
189
178
188
201
167
215
186
201
174
200
228
172
174
224
204
141
235
221
192
244
245
167
283
225
170
223
187
160
212
157
248
169
208
168
224
209
182
185
264
198
234
148
207
191
217
232
202
165
239
216
215
197
199
233
207
154
192
214
216
206
224
168
176
178
180
231
205
146
230
210
172
112
228
181
187
215
244
252
208
174
206
189
220
211
206
168
215
269
207
222
221
221
159
197
186
236
196
215
151
151
217
276
212
162
181
199
228
169
199
237
238
121
151
195
178
210
173
209
177
165
197
248
143
221
191
209
198
245
194
134
269
205
224
187
178
204
214
191
148
182
186
248
178
153
232
179
153
141
137
153
233
259
193
179
223
223
206
196
229
235
210
236
168
238
189
215
211
252
275
217
190
239
178
206
185
281
165
195
231
154
227
158
224
165
207
189
151
225
243
228
188
187
206
236
177
224
194
200
176
156
240
183
221
206
187
173
229
204
247
224
207
206
202
205
199
220
139
163
193
200
221
211
179
181
193
248
224
220
228
203
235
203
197
201
141
199
225
162
202
177
287
206
222
202
239
229
183
243
213
217
220
169
158
217
167
206
244
246
133
255
239
224
211
186
201
173
188
212
193
267
227
238
262
178
184
150
204
198
216
171
270
206
285
207
225
103
177
205
117
198
191
238
205
270
225
187
126
255
178
178
222
231
168
198
229
168
257
227
186
103
129
145
117
169
199
233
192
246
227
195
225
218
193
157
188
108
196
166
261
233
198
249
260
222
129
235
174
216
219
198
156
187
250
266
130
199
208
180
236
170
215
219
209
240
205
183
251
206
213
255
186
149
224
182
180
217
231
175
206
175
189
196
134
211
186
239
238
149
178
218
216
167
185
208
200
224
216
215
239
216
171
184
162
225
250
142
247
211
178
170
254
197
215
178
232
215
223
196
191
264
244
175
178
221
178
214
230
217
194
264
170
184
142
214
219
171
242
243
201
247
187
149
216
216
251
228
221
203
276
171
183
173
274
206
216
158
182
143
245
230
195
169
184
161
190
213
251
177
162
246
212
202
186
214
171
180
153
143
211
181
207
141
220
233
156
144
162
154
217
233
233
157
246
239
196
171
163
225
201
208
217
200
172
231
246
170
207
136
221
217
250
191
213
168
221
239
231
241
196
237
179
185
135
261
193
182
178
174
182
217
201
216
166
154
207
258
226
244
192
194
222
177
178
160
212
127
231
217
212
109
236
214
227
221
261
163
201
204
206
229
230
225
193
183
180
181
118
164
180
248
195
171
202
182
215
159
231
200
119
188
228
133
253
195
208
182
184
213
246
203
242
143
166
250
260
219
172
149
220
181
210
179
170
227
232
201
159
233
157
149
213
173
208
196
147
176
160
218
200
249
148
281
150
213
181
163
138
183
180
152
123
198
203
241
267
272
233
203
217
210
198
166
205
247
163
175
205
252
124
276
225
129
208
180
182
177
241
233
151
249
133
215
187
175
200
217
168
186
195
169
215
232
145
193
207
233
165
246
231
228
267
228
197
199
199
188
245
216
276
167
217
179
213
237
252
191
215
272
220
240
214
154
218
192
229
215
203
167
173
165
173
141
238
174
209
160
256
188
265
188
234
197
220
111
155
188
199
228
200
224
238
228
202
217
239
243
193
154
158
257
179
182
224
210
219
239
142
249
213
187
219
216
195
223
187
171
180
231
249
172
249
148
186
216
252
208
206
197
194
258
224
166
233
165
239
248
224
186
183
268
235
183
221
225
135
242
239
248
222
227
198
170
167
230
218
163
214
140
194
213
222
185
193
191
234
197
221
233
220
218
178
200
232
157
178
177
136
199
166
261
194
172
207
155
209
151
210
252
195
154
218
204
258
176
281
185
188
242
227
219
248
173
288
224
213
173
257
164
231
223
193
181
152
156
190
185
201
220
211
242
127
149
223
229
223
194
204
163
162
174
281
180
159
220
224
184
254
165
166
220
230
194
159
131
154
231
210
210
221
192
186
209
224
156
223
157
201
187
189
205
203
245
153
232
140
219
157
191
195
153
191
178
194
211
188
179
213
208
224
206
153
212
192
199
223
136
142
188
218
265
125
166
245
256
251
177
193
171
201
222
189
273
181
218
238
183
225
194
179
223
266
201
206
204
132
224
210
227
239
164
229
165
215
158
221
244
221
229
196
160
240
217
199
188
239
176
151
200
183
177
186
118
205
154
200
118
232
202
185
169
197
205
209
186
219
171
164
234
170
234
182
191
159
198
112
202
197
215
148
214
211
198
209
257
165
238
139
244
209
251
260
171
241
223
208
220
215
210
233
183
211
131
266
260
208
196
187
159
208
114
213
195
174
201
153
236
271
215
166
255
224
165
235
210
224
165
242
136
202
228
230
254
229
248
235
153
134
241
167
201
193
201
223
191
216
210
181
235
205
226
212
218
231
205
150
261
201
194
147
172
194
228
162
159
199
174
202
253
234
151
201
169
163
245
171
213
191
163
201
228
213
202
186
219
189
166
231
211
199
235
253
225
161
155
203
190
95
176
251
215
187
217
238
199
190
273
234
153
194
185
199
198
224
179
140
171
182
303
148
199
208
240
172
216
181
221
186
180
249
227
223
251
149
204
261
232
180
187
227
191
152
194
160
248
175
177
253
254
211
160
178
266
183
251
195
167
259
199
199
193
156
198
193
150
166
149
141
239
203
212
167
218
163
230
248
220
135
242
153
199
194
210
214
148
206
232
271
263
250
220
228
269
223
220
192
184
195
188
259
123
171
174
185
233
140
236
228
156
201
221
180
205
151
223
206
126
247
243
215
228
246
227
202
219
158
145
208
238
126
211
190
137
199
169
250
177
173
119
199
210
217
207
151
231
183
147
145
203
237
222
182
168
197
169
249
236
198
196
232
114
138
210
236
129
177
194
209
151
204
217
205
159
204
210
223
198
176
203
124
217
201
222
241
202
187
123
224
213
145
223
196
268
152
211
216
190
212
169
211
192
176
241
181
180
213
162
235
192
120
175
189
229
229
256
212
136
195
178
188
160
243
235
224
250
242
210
171
195
194
142
263
143
256
172
223
169
194
192
164
193
214
159
150
195
174
220
247
196
165
205
181
162
245
222
250
210
241
201
142
214
202
160
207
169
231
199
195
238
171
176
246
233
152
161
205
193
181
263
157
181
179
201
174
228
210
243
224
131
168
140
155
265
200
216
197
198
222
207
203
173
161
201
215
168
197
172
109
232
189
200
137
162
253
167
263
197
222
163
209
221
170
205
192
122
178
224
191
159
210
201
251
197
271
189
191
191
195
210
184
179
184
182
86
218
133
174
216
202
181
181
212
205
169
251
218
181
180
236
151
275
218
159
162
203
149
226
223
222
219
195
243
151
162
168
162
218
187
115
199
197
246
228
209
182
195
270
209
217
166
182
221
193
195
170
216
186
236
207
220
174
211
190
247
88
249
238
196
193
205
263
194
230
120
212
203
171
190
196
188
223
184
116
253
147
190
192
213
208
243
246
186
194
205
229
254
201
169
240
202
192
209
230
189
231
212
213
183
214
251
196
238
120
220
201
230
192
143
189
245
169
189
202
237
184
244
141
224
122
164
145
185
271
230
188
192
166
196
248
272
298
218
264
161
176
288
224
157
242
217
198
197
145
224
205
244
217
221
195
170
230
229
125
121
190
210
162
209
220
221
260
220
183
233
169
184
213
238
181
222
213
232
207
240
137
204
232
244
183
226
168
141
174
194
241
206
173
167
224
157
167
183
121
235
270
227
137
153
209
178
182
156
192
195
178
211
163
178
180
178
159
219
233
206
234
146
190
191
181
139
206
177
190
204
243
208
226
157
157
245
181
202
215
195
224
163
208
201
259
174
245
232
185
236
139
167
158
186
212
117
177
143
208
197
236
237
137
251
154
208
199
173
249
230
178
168
220
229
233
222
181
197
229
224
221
208
145
232
179
211
212
201
206
193
177
205
179
200
198
263
176
252
205
234
305
240
158
173
166
226
238
133
182
153
185
210
186
217
281
193
200
189
208
208
223
145
193
189
110
168
204
166
186
209
164
178
264
180
114
208
212
183
159
247
217
233
173
273
154
172
157
203
178
198
270
191
155
255
143
208
212
175
253
199
198
182
231
163
241
225
143
235
190
253
230
238
229
255
227
166
235
134
243
196
188
220
207
185
202
198
233
167
172
182
203
191
198
202
209
231
209
189
204
181
186
194
196
179
169
237
188
211
205
215
197
244
193
252
255
239
165
219
128
154
203
226
133
194
280
206
190
178
257
172
204
182
175
163
202
209
232
185
194
205
225
201
186
127
161
176
228
219
238
124
282
189
240
189
165
193
147
182
189
188
131
175
196
194
198
194
136
255
209
135
230
226
229
230
166
88
203
240
194
244
213
136
203
223
172
250
243
180
194
238
212
180
178
186
213
217
256
274
179
184
163
248
154
279
210
199
154
183
199
258
254
210
193
164
197
231
124
158
210
248
173
175
206
224
235
194
234
253
240
192
148
212
193
196
275
205
167
187
181
217
271
194
202
216
223
155
193
187
224
254
155
197
227
179
186
163
252
188
205
231
211
246
185
247
217
177
228
186
236
215
188
231
184
218
251
239
264
201
179
174
257
199
201
194
178
235
220
233
210
218
250
226
131
278
225
216
213
166
177
148
187
185
258
196
216
194
234
194
187
211
237
215
243
151
169
177
199
245
223
240
278
201
197
132
225
177
211
206
212
244
189
197
226
257
172
200
199
181
172
209
211
169
257
245
163
240
249
179
211
214
176
147
218
264
202
250
224
174
170
226
183
128
161
243
180
204
162
170
225
185
182
174
183
202
251
181
169
209
200
229
185
118
252
235
228
198
201
139
173
210
170
177
220
177
157
136
183
286
200
213
168
191
193
223
191
219
171
144
190
187
170
215
153
203
183
196
207
153
219
223
199
190
217
193
99
167
220
232
157
206
213
209
183
227
242
185
207
209
217
240
185
220
225
175
190
198
181
196
214
240
233
225
218
176
196
236
214
213
221
191
230
204
230
181
239
201
226
224
177
196
197
206
208
226
220
151
192
211
173
218
193
262
201
229
208
151
212
185
187
162
166
206
149
206
227
194
249
212
264
223
179
221
183
215
246
178
140
222
222
170
262
216
190
171
203
148
267
209
182
135
188
198
119
232
161
199
161
282
195
164
172
249
231
205
209
230
198
179
182
142
137
222
189
213
208
181
171
215
164
213
207
182
209
193
151
209
170
198
202
226
166
196
188
249
216
232
237
204
185
220
226
189
219
174
195
210
204
251
219
144
186
235
191
155
206
150
159
229
169
164
198
182
209
197
162
201
201
192
219
158
204
179
237
229
242
201
222
219
144
236
165
154
220
165
195
198
218
202
240
238
189
267
166
199
206
173
153
187
221
104
196
162
175
215
193
150
250
217
180
190
285
267
246
240
209
183
191
210
196
204
165
183
124
222
163
209
180
216
157
194
203
178
183
187
165
196
152
200
139
236
206
186
145
240
223
255
183
194
281
223
154
165
237
211
208
175
170
162
111
188
285
219
206
183
237
251
235
181
179
137
283
143
207
170
232
182
201
197
214
117
189
157
237
159
256
232
195
213
183
234
159
180
224
111
206
173
246
252
205
214
147
154
175
173
173
305
207
162
168
281
208
203
203
169
227
230
171
225
145
245
187
215
214
192
180
188
254
112
225
149
226
228
195
178
201
248
236
220
145
238
197
189
201
190
189
198
191
178
208
164
198
172
258
287
236
206
242
264
183
174
209
167
222
227
260
259
227
189
187
183
182
172
208
161
213
172
216
246
206
208
140
188
232
173
209
218
213
169
164
245
226
177
236
192
246
220
229
237
264
159
207
153
140
178
253
190
217
244
167
194
250
180
192
211
179
206
170
195
210
214
196
196
251
192
189
158
202
208
177
233
204
144
209
180
184
236
200
217
209
164
164
201
214
244
244
191
210
203
192
206
220
180
203
284
217
204
206
238
190
206
197
237
182
256
201
228
205
247
211
199
247
257
181
210
215
257
181
231
150
214
233
129
181
240
238
195
242
164
164
163
165
141
128
250
231
236
163
245
180
178
219
213
226
198
187
236
210
224
201
184
150
160
142
223
199
232
176
200
146
231
216
184
230
160
199
217
232
156
119
194
168
159
155
216
232
163
232
140
246
228
234
272
221
239
206
259
230
174
151
174
221
167
165
242
144
250
224
182
198
227
185
208
143
184
235
168
196
226
146
173
212
200
236
244
229
201
235
168
177
163
193
229
154
199
251
133
119
192
203
196
161
251
246
184
215
213
236
267
269
156
185
190
191
193
241
213
230
150
201
160
256
133
202
200
126
207
193
199
194
227
224
169
184
243
233
241
220
159
199
211
228
219
193
232
256
127
221
174
238
223
211
190
235
187
229
171
281
172
180
231
206
181
158
175
197
218
167
225
228
201
249
200
184
179
154
140
124
287
215
150
212
223
213
229
180
205
167
144
244
176
212
216
216
231
251
248
174
219
184
176
208
266
210
148
176
185
220
243
232
240
197
243
165
199
254
223
239
189
164
214
173
220
228
260
207
178
186
159
241
198
163
256
251
168
189
210
174
222
149
232
248
204
219
198
218
238
237
203
157
258
188
199
248
166
221
158
232
192
212
222
254
196
162
231
216
209
198
247
274
189
234
261
187
261
233
185
224
168
218
235
199
169
193
162
197
182
168
175
203
214
222
222
178
249
185
274
202
258
146
224
222
178
227
218
215
203
231
296
234
142
260
152
240
199
160
198
227
203
198
219
172
280
272
157
199
192
172
153
169
205
167
219
158
210
167
202
185
247
219
165
146
199
221
254
182
194
222
258
198
237
199
185
163
257
185
167
234
213
159
259
278
262
248
190
247
246
172
163
219
148
272
151
213
245
162
234
235
168
207
208
235
204
188
235
244
210
240
235
191
200
182
220
188
166
195
177
161
236
197
263
245
166
135
187
213
216
162
204
192
176
283
194
195
233
213
154
187
208
191
222
169
210
197
229
173
198
170
196
170
164
204
232
241
164
253
187
205
203
157
234
173
179
191
166
209
208
196
218
190
224
198
186
244
121
181
200
163
198
201
138
153
224
193
198
176
211
186
230
210
202
161
150
212
186
231
197
227
178
234
231
192
209
206
173
176
149
138
216
198
221
271
194
190
148
222
187
189
197
161
178
212
223
191
267
230
187
203
185
236
233
147
233
200
191
204
194
193
169
177
176
185
191
230
193
190
206
228
169
216
192
188
229
238
209
160
174
227
197
222
191
157
186
173
191
238
238
181
247
192
166
222
233
209
176
189
205
209
284
205
244
267
225
161
219
282
222
223
221
185
196
225
224
144
224
193
152
238
158
214
180
151
171
249
215
194
163
190
184
168
178
150
172
161
128
140
150
192
128
207
142
185
181
144
206
232
178
178
182
185
204
163
223
236
140
257
202
204
154
196
224
204
146
170
296
207
167
181
164
235
174
139
214
171
189
157
174
216
200
242
166
221
162
192
181
177
182
146
195
204
213
223
158
188
280
209
162
199
220
201
171
158
215
208
189
163
179
134
231
225
170
172
234
217
200
166
203
235
184
175
235
219
227
193
230
149
259
198
197
222
192
202
225
248
179
166
176
189
221
174
241
203
244
205
193
172
207
212
241
217
213
214
204
180
223
200
235
191
149
244
191
269
142
148
206
203
185
221
236
128
236
208
176
206
166
241
227
191
133
225
205
155
230
261
167
197
150
152
214
250
202
197
200
146
207
186
223
167
127
219
233
211
215
180
154
208
151
222
173
193
156
224
202
218
162
225
248
237
157
185
207
123
198
215
251
255
174
180
149
251
190
183
196
214
199
184
185
154
210
223
289
162
187
195
165
241
215
198
162
228
211
202
194
204
238
187
196
210
205
229
198
159
193
288
166
166
230
143
254
209
196
185
197
231
195
210
234
203
158
203
161
221
213
268
219
196
209
213
182
232
185
231
229
258
233
217
185
151
204
198
204
226
158
207
212
189
240
232
146
240
182
203
211
148
185
158
203
145
232
242
184
198
202
237
193
170
216
159
214
220
231
263
165
197
118
198
225
233
212
177
187
207
166
227
245
170
223
220
215
215
206
241
178
239
252
197
162
184
214
242
213
276
208
152
179
212
195
208
247
176
217
193
286
163
155
158
234
239
207
288
193
233
205
196
168
215
195
196
177
244
165
229
179
199
154
241
158
210
226
214
242
219
205
273
219
236
206
268
171
177
165
197
167
215
236
173
276
181
222
263
237
212
174
184
183
174
234
191
236
151
161
209
208
169
171
174
238
233
175
213
186
229
226
239
229
165
139
162
185
123
189
256
220
188
175
151
195
193
207
152
161
235
229
127
143
173
172
136
212
210
217
208
210
201
162
207
205
183
218
204
164
239
224
192
242
218
251
209
193
192
177
151
219
204
210
215
147
232
176
222
215
176
208
195
245
242
222
146
160
212
139
200
217
256
207
200
186
144
227
218
218
172
205
203
171
217
210
195
207
225
151
243
171
269
130
198
209
181
196
197
247
158
217
205
210
110
245
265
177
197
136
250
250
188
215
163
181
135
178
261
219
190
202
148
277
215
169
186
248
179
223
212
197
142
173
180
191
202
194
194
184
194
195
251
117
184
187
238
231
216
265
152
193
223
235
133
235
204
176
224
262
226
166
132
195
228
225
222
226
209
241
241
187
138
159
132
259
218
225
183
260
161
220
212
213
217
232
198
162
173
207
167
192
224
200
232
210
247
184
228
221
153
195
197
160
214
207
181
135
190
223
204
198
228
220
159
189
138
205
206
212
156
225
171
183
235
245
273
224
166
179
193
240
210
228
235
197
239
213
202
150
189
164
206
172
261
188
232
170
249
166
233
233
211
233
169
188
250
217
224
182
295
218
184
161
156
213
230
248
187
271
201
182
218
208
203
189
142
166
252
234
166
196
184
137
247
275
209
227
200
233
222
224
245
238
195
108
223
224
194
158
223
244
214
182
227
181
184
149
196
195
187
206
192
255
227
262
181
191
219
176
201
168
218
157
153
168
209
189
232
178
165
223
252
231
144
259
228
184
186
193
190
187
166
198
195
181
162
224
195
177
228
249
222
155
278
154
187
182
214
218
195
147
139
162
223
155
161
234
156
234
205
207
250
227
195
213
91
159
219
166
282
210
224
206
258
194
208
187
180
224
260
236
166
241
162
170
201
240
253
206
212
264
202
186
168
160
228
157
161
236
186
188
195
243
173
178
218
187
227
194
212
198
206
200
199
217
197
138
199
151
206
232
219
222
230
184
284
173
227
210
198
173
187
183
177
154
215
155
232
175
234
228
206
212
202
167
165
181
182
193
202
125
210
227
226
173
189
278
248
175
220
209
190
175
212
221
252
223
157
151
180
182
224
223
234
213
211
153
161
197
206
212
183
152
197
210
203
135
189
198
220
188
150
232
239
166
216
192
157
221
242
135
197
119
171
182
173
243
187
185
183
156
187
217
158
177
164
240
189
188
183
211
194
182
181
250
229
222
195
213
234
253
189
226
207
238
212
196
233
195
172
232
164
215
221
172
210
171
198
215
218
250
184
211
254
202
270
168
201
246
199
232
211
207
172
207
209
172
213
174
222
222
245
193
211
198
191
182
171
277
196
204
160
242
198
175
187
222
214
214
224
183
235
176
179
180
255
155
186
193
215
197
178
192
205
216
196
130
188
176
218
235
138
240
163
158
275
215
226
164
155
151
175
177
196
164
217
178
208
169
196
134
200
184
243
208
184
228
199
139
262
220
198
162
177
201
202
163
174
176
201
206
173
211
172
272
223
187
150
181
217
226
238
166
183
164
173
242
239
237
221
227
177
124
252
228
224
194
194
205
224
255
183
193
169
268
219
200
186
207
175
241
204
242
216
138
216
174
252
138
185
159
170
205
217
168
237
163
186
233
228
169
151
179
157
167
205
243
206
189
195
215
217
242
174
190
255
190
223
224
231
199
236
293
190
190
152
243
125
230
202
234
171
234
202
166
193
184
223
198
247
224
114
204
147
174
170
205
240
170
195
226
134
115
223
193
118
191
164
206
236
176
163
212
200
178
232
171
216
187
179
155
162
189
219
204
136
180
193
190
212
242
221
230
168
227
239
268
205
171
216
234
229
179
170
182
191
188
178
207
170
214
210
203
234
213
182
156
174
162
241
156
226
204
224
224
249
195
239
143
176
189
162
274
152
229
237
184
202
200
163
198
142
219
171
249
185
226
216
176
199
164
220
210
248
185
251
210
222
197
165
205
201
220
186
253
225
232
173
178
196
179
176
208
244
152
176
208
173
201
213
151
190
211
168
165
189
158
144
216
164
188
143
200
195
143
211
176
163
206
220
176
162
184
155
188
230
201
261
162
239
260
159
239
185
104
236
237
173
227
166
164
193
189
149
224
138
210
209
172
202
192
242
202
199
235
214
233
236
221
177
174
218
250
232
184
199
154
241
168
172
242
170
202
123
180
174
182
226
211
245
246
227
135
192
174
240
199
148
164
164
244
195
229
229
230
255
185
215
207
219
152
162
175
182
170
193
197
172
204
201
199
150
114
267
226
204
187
233
234
137
237
141
180
196
156
196
163
261
235
168
132
236
157
231
259
222
165
165
169
118
192
237
218
194
206
163
227
210
188
200
157
204
277
209
166
203
192
233
253
148
203
145
235
220
160
169
228
175
169
118
161
179
234
182
211
202
157
225
254
156
209
202
193
173
228
186
186
206
204
235
188
212
152
245
241
191
143
200
174
187
199
190
222
186
163
248
178
195
144
236
198
146
211
210
164
227
200
187
176
131
232
156
192
225
228
148
243
187
204
194
191
175
173
177
192
239
185
199
140
234
181
190
166
164
205
221
219
218
178
240
189
200
203
181
134
250
196
114
193
178
128
247
183
215
181
207
158
225
178
242
227
214
160
148
233
145
199
252
210
136
169
177
219
239
166
192
199
177
195
201
192
181
188
176
232
156
194
190
201
194
210
233
171
206
228
256
193
214
251
211
248
119
221
181
187
226
247
157
188
160
193
175
248
244
192
214
178
237
252
236
205
252
168
182
237
169
191
239
187
248
177
158
237
169
223
169
176
206
227
176
215
178
217
108
161
116
239
142
141
188
187
201
203
153
186
154
198
247
193
223
159
222
214
187
145
189
201
229
235
209
227
219
185
158
183
257
240
200
242
224
183
229
210
199
217
180
180
149
202
199
192
246
252
188
200
176
175
214
234
208
212
239
203
178
196
202
157
191
218
205
213
171
225
234
223
134
177
196
209
222
191
211
242
200
190
229
222
217
237
202
131
235
180
167
211
212
174
205
217
200
143
236
219
245
184
229
184
179
250
249
213
226
211
131
214
199
242
290
164
276
172
237
188
184
194
212
133
213
124
204
207
198
223
255
240
261
215
189
197
220
168
198
144
214
222
203
172
199
193
196
163
196
191
252
252
172
259
168
251
228
178
234
193
202
251
240
180
210
245
208
225
151
221
198
175
213
222
216
239
180
190
171
184
176
169
157
168
169
180
154
258
119
284
192
182
144
228
170
209
181
194
154
201
185
145
141
214
173
253
156
228
253
177
188
227
236
160
169
241
188
137
187
203
221
203
145
228
170
192
194
263
227
172
178
230
163
248
251
174
155
199
163
211
183
263
251
201
222
202
192
185
141
220
261
223
196
153
167
203
126
217
246
243
216
222
223
191
207
209
167
274
186
186
207
185
187
224
223
186
167
229
249
183
174
268
246
243
209
254
109
217
201
148
211
228
241
230
177
191
168
180
227
229
271
121
215
135
146
271
169
226
204
189
214
176
157
231
215
227
143
167
201
219
185
206
129
219
182
144
226
241
129
221
189
273
182
154
232
235
128
187
225
159
165
145
245
178
231
139
197
122
235
170
224
183
244
218
194
144
206
183
228
127
242
214
189
210
193
216
204
196
179
218
201
212
260
226
123
189
171
198
203
218
177
230
166
234
229
228
204
191
207
234
215
205
152
117
162
145
190
191
194
193
165
196
184
188
171
188
145
176
213
176
185
147
183
201
197
203
192
226
240
247
239
188
180
137
151
159
198
118
240
130
259
239
197
200
127
202
177
201
161
259
200
159
225
178
234
170
188
194
239
167
230
251
177
230
208
224
133
226
202
218
162
195
192
146
215
188
216
237
150
223
220
148
228
239
196
116
245
243
162
239
275
166
202
220
185
216
218
222
205
170
197
226
173
259
223
209
167
145
176
174
174
224
240
144
230
214
225
233
193
218
145
126
198
205
198
178
210
176
266
121
147
180
227
197
214
231
166
211
222
228
215
190
177
248
200
190
170
230
254
235
199
219
172
224
236
225
197
271
226
140
203
161
187
213
222
159
152
158
230
233
197
222
192
182
215
216
177
157
186
186
209
216
177
192
215
223
253
237
261
155
231
241
257
152
228
180
227
189
181
240
201
162
183
186
205
158
176
176
183
139
201
216
195
153
179
143
172
220
201
217
218
175
278
223
244
204
268
246
256
206
212
247
177
240
177
193
227
171
219
224
206
244
213
141
216
241
221
210
244
188
190
170
233
250
203
224
192
178
187
199
188
211
195
148
140
199
265
253
185
210
223
240
185
198
247
204
233
200
254
197
173
199
144
144
126
234
168
187
211
211
205
160
225
171
207
169
176
228
206
176
212
201
204
208
250
153
249
196
222
135
208
193
167
222
263
144
212
248
213
208
131
138
246
195
231
243
179
227
159
184
162
201
221
216
186
229
157
182
159
163
205
190
175
216
167
134
245
167
260
131
246
194
176
249
209
206
220
198
171
253
199
194
203
221
171
205
211
169
231
180
139
179
208
231
212
279
220
268
201
164
198
234
216
190
152
213
193
186
184
245
215
199
173
133
201
144
233
277
214
181
149
208
244
255
189
207
192
222
147
172
231
255
228
164
236
222
202
254
230
233
194
174
202
213
224
221
274
164
171
243
219
200
238
153
191
232
185
165
205
198
223
173
223
170
214
162
156
136
202
152
204
193
158
176
255
240
180
166
182
145
147
191
185
116
202
200
266
193
113
172
130
174
219
252
160
239
198
194
174
234
186
266
263
175
195
163
196
225
176
223
188
111
188
204
201
128
182
251
186
145
196
209
196
170
205
242
212
204
172
205
262
224
225
252
202
134
228
230
196
239
116
198
193
160
205
179
214
239
171
210
193
202
189
202
212
182
194
259
186
188
257
237
249
195
147
229
196
203
207
169
160
226
164
164
196
223
198
193
216
155
161
183
157
183
223
182
174
239
235
235
189
145
227
238
212
189
178
244
198
192
230
211
188
218
201
208
215
181
201
217
179
136
244
175
254
199
229
217
181
194
203
222
197
150
169
235
137
185
202
195
242
183
195
243
152
202
217
196
176
184
233
175
130
179
153
243
208
202
215
196
147
189
186
167
211
231
160
148
202
222
192
214
183
224
161
253
172
156
191
186
256
178
189
243
147
200
235
196
210
227
207
269
168
233
179
146
157
219
196
221
241
221
198
217
194
196
244
262
243
203
151
205
216
192
246
165
172
218
209
199
206
260
265
166
246
166
204
202
129
251
159
215
150
188
161
171
175
201
205
212
157
241
178
192
195
259
188
208
151
198
173
236
213
223
220
160
229
270
167
187
197
176
212
182
152
174
169
250
205
229
164
148
171
218
224
176
182
198
197
175
152
251
216
186
218
172
189
222
115
191
193
213
169
114
216
196
194
209
170
159
192
182
203
141
240
211
192
187
205
183
180
243
212
203
202
234
212
150
205
195
182
194
171
242
206
226
178
197
164
247
172
182
149
177
194
163
214
200
204
129
187
247
195
196
206
160
218
165
276
179
178
184
143
220
199
183
163
237
135
200
172
133
234
248
146
148
187
139
154
221
220
185
200
133
172
172
193
275
149
191
180
211
206
220
179
188
257
248
152
244
184
203
178
157
186
214
193
205
191
167
187
209
252
237
140
212
211
217
249
194
188
196
168
188
224
207
222
197
247
179
211
209
170
257
205
124
194
205
214
205
204
240
167
196
178
180
209
142
196
209
217
216
199
225
209
119
144
226
210
123
181
230
236
193
184
171
215
222
223
193
206
216
174
196
202
134
219
246
218
215
229
238
179
243
223
191
179
198
191
186
160
227
167
199
224
202
218
168
156
217
163
216
237
180
239
167
236
186
173
243
170
205
188
206
238
224
210
179
234
175
221
207
210
225
115
281
178
145
174
213
185
196
184
237
179
154
228
197
246
178
163
203
223
156
205
168
254
174
225
213
208
243
153
253
247
237
171
218
212
207
194
185
154
191
178
187
219
252
202
182
277
181
205
185
163
206
216
239
226
177
181
192
109
161
148
176
177
187
191
243
249
168
176
212
188
206
193
235
199
257
170
124
199
211
227
188
119
204
216
209
199
238
222
252
189
226
206
129
212
164
223
237
140
272
154
198
186
262
283
244
190
183
144
183
195
199
206
189
216
234
181
172
160
238
233
245
180
141
222
134
214
138
207
222
217
216
179
223
174
188
156
179
162
182
210
193
180
174
166
235
190
148
225
206
195
166
176
240
244
254
173
232
190
218
200
153
261
207
182
241
164
237
193
209
156
204
189
219
159
259
215
219
298
223
161
201
166
182
232
247
218
212
238
169
145
252
249
214
203
219
176
186
237
235
147
210
239
228
213
138
227
215
199
189
193
184
227
213
214
169
236
211
228
183
155
204
222
170
198
177
226
197
169
223
197
236
228
223
182
229
175
207
209
243
186
173
189
197
146
181
257
184
259
229
192
212
170
178
218
173
148
217
179
158
153
200
237
191
193
198
208
160
196
181
188
250
116
208
175
187
166
202
208
231
229
217
199
245
164
130
201
228
196
177
162
147
212
184
222
133
195
204
181
234
231
191
205
186
167
213
192
236
179
174
215
165
250
226
170
188
210
232
100
201
184
193
249
172
242
209
253
155
205
244
194
246
233
177
153
177
197
149
248
220
162
251
162
136
213
199
199
240
195
183
153
175
158
185
155
214
146
206
161
157
230
169
178
188
147
183
227
199
232
200
162
264
206
152
217
172
203
274
188
208
182
241
164
204
217
170
211
202
155
228
217
152
233
134
220
233
216
174
183
236
227
246
198
95
188
79
222
194
220
180
181
147
230
197
183
198
192
173
232
195
207
197
222
169
197
135
177
157
144
168
192
188
224
265
201
207
203
157
192
201
208
225
198
215
196
238
178
176
156
201
213
221
210
190
159
230
158
221
244
192
245
158
170
191
163
176
159
224
191
200
238
212
166
166
194
204
182
212
261
226
240
176
215
224
219
174
154
187
147
161
183
223
262
214
282
166
209
260
199
174
220
196
198
225
197
161
236
167
250
257
265
184
180
195
189
177
128
224
179
212
187
184
237
228
121
180
202
192
196
176
140
186
157
185
199
155
172
146
203
156
231
184
173
276
180
242
200
226
140
189
244
195
236
153
217
157
257
214
177
175
244
236
201
259
201
214
267
234
236
201
195
174
199
211
187
207
187
206
168
192
213
213
231
180
127
170
261
207
214
168
195
167
143
224
225
211
186
249
151
225
148
178
233
178
206
165
136
222
246
179
215
241
262
220
251
274
158
246
188
221
256
194
214
149
243
165
201
206
212
216
189
213
196
207
200
203
219
179
169
220
229
180
198
166
170
147
212
183
190
192
124
152
174
190
238
188
265
282
179
232
287
203
216
223
210
222
232
243
185
184
205
186
214
190
216
273
158
208
222
158
158
158
182
216
164
202
220
225
184
185
209
221
173
196
222
197
225
188
223
190
134
195
172
182
216
216
196
220
142
193
225
173
180
164
185
195
213
186
169
118
203
178
153
188
164
121
131
156
186
185
242
237
212
176
241
114
258
216
184
212
245
208
182
179
190
250
161
212
111
195
181
221
205
240
201
188
216
241
161
193
197
220
217
231
205
203
266
275
174
260
101
205
236
218
184
173
211
231
166
208
177
149
185
215
161
242
217
224
173
275
197
201
236
145
238
283
229
223
280
208
189
202
250
164
224
169
230
246
230
223
155
138
205
234
166
212
199
202
158
157
166
192
137
211
247
192
194
213
187
204
166
202
190
169
217
166
192
200
129
153
213
239
173
207
178
155
207
243
136
205
177
233
206
195
210
219
250
171
195
227
221
177
179
210
192
176
133
188
150
203
209
131
246
197
164
174
162
193
218
241
202
205
242
182
232
214
238
214
197
189
159
207
259
211
219
222
171
216
251
215
239
232
208
252
171
188
232
155
193
178
214
242
181
248
170
204
150
235
210
235
252
145
184
234
216
162
229
225
197
190
241
156
166
234
220
235
132
252
178
242
288
255
227
122
255
182
219
199
219
191
133
177
198
197
236
175
145
203
225
167
197
167
252
234
209
193
138
118
184
196
217
258
201
213
202
196
223
180
212
231
176
231
219
167
207
199
223
215
154
143
228
182
226
141
207
251
194
176
153
161
176
262
211
213
169
173
160
209
255
217
252
183
233
210
215
148
179
197
175
180
187
189
154
185
298
220
216
165
102
160
216
242
199
180
194
203
228
229
220
225
224
197
169
183
210
253
192
236
222
232
195
179
220
220
201
164
175
208
151
235
231
143
253
160
182
219
215
177
208
173
191
193
185
143
229
189
199
154
125
219
179
200
194
197
206
276
223
211
171
236
163
276
217
139
215
186
205
169
189
136
244
236
276
215
214
297
227
204
168
134
161
209
96
227
163
205
187
247
197
162
219
247
191
184
156
236
244
235
206
244
213
232
235
220
197
79
212
234
202
233
253
222
217
188
200
290
180
177
163
189
238
158
228
234
202
207
172
179
155
234
195
202
198
132
197
206
200
167
184
198
236
188
253
160
256
220
183
148
175
238
164
169
202
162
222
193
141
129
144
220
239
224
197
199
231
221
193
230
208
178
208
171
205
166
191
221
231
260
224
185
231
221
212
240
231
128
252
208
162
147
159
171
216
242
226
187
208
214
217
219
206
216
233
168
163
192
198
213
193
180
192
203
214
209
161
198
238
191
201
157
187
159
188
209
197
222
179
179
177
213
211
227
211
238
177
195
192
153
86
193
185
212
204
215
170
159
138
213
173
160
196
162
190
187
149
202
167
205
175
215
167
202
164
225
177
235
182
214
209
180
187
276
258
212
130
202
189
256
156
168
144
271
247
246
192
211
187
115
211
173
208
210
144
241
232
204
211
216
189
167
199
259
206
219
188
184
213
164
236
259
202
171
173
202
204
184
232
217
220
268
190
177
188
179
182
114
201
210
195
212
233
210
208
250
185
126
158
166
210
121
171
205
208
232
183
235
186
217
232
223
223
199
231
185
233
202
146
127
211
231
185
203
168
211
180
171
152
162
198
199
192
225
243
159
194
188
138
194
172
155
146
146
132
180
174
192
228
213
198
244
189
219
218
119
194
143
228
212
192
195
168
235
176
190
234
187
193
238
191
194
246
205
210
236
184
140
188
198
195
223
232
213
223
207
178
189
187
222
209
189
179
206
182
220
126
249
108
245
127
194
197
174
206
193
114
188
160
151
118
225
111
229
197
153
203
200
207
272
251
221
243
208
189
142
241
200
118
214
229
181
174
238
199
192
209
198
213
207
188
199
236
141
140
180
163
221
176
160
205
210
227
180
183
205
162
206
222
210
277
172
187
240
229
208
210
202
259
240
210
136
201
239
214
241
216
208
225
215
192
216
252
187
197
184
227
236
187
145
187
147
217
233
196
206
144
197
254
195
252
217
238
199
207
239
188
200
216
240
243
250
249
209
249
202
197
185
139
209
214
219
220
242
201
188
235
217
172
104
184
218
166
222
206
195
252
134
181
174
136
179
189
153
153
238
227
200
206
208
195
184
233
222
209
183
129
228
187
211
203
221
208
228
237
192
204
213
162
231
260
166
210
218
238
223
235
186
188
209
227
172
239
214
140
191
223
181
246
251
218
248
179
292
132
192
196
273
205
257
229
174
229
220
141
226
183
209
174
172
223
182
164
212
178
235
234
147
219
266
227
216
215
183
190
237
208
185
217
114
222
184
236
145
181
188
148
248
155
189
184
149
202
201
209
207
217
175
203
192
160
161
204
210
184
206
176
196
166
183
173
266
243
166
217
194
156
200
258
249
229
193
170
191
199
214
205
191
223
174
188
123
150
247
159
181
168
184
174
178
153
178
268
177
189
147
174
206
159
229
280
146
236
185
196
169
208
211
262
192
202
155
185
178
108
186
190
213
179
247
154
183
163
202
181
112
221
170
248
189
247
226
202
203
200
213
204
255
215
124
207
195
188
186
187
135
238
187
240
164
250
204
254
205
186
145
162
156
217
215
179
177
148
152
224
254
160
208
184
234
198
226
150
182
153
143
206
203
170
251
193
202
186
207
194
151
149
216
171
183
238
232
203
205
172
234
175
209
221
185
232
207
174
191
168
170
210
277
210
246
235
243
147
264
155
167
176
173
246
160
199
112
238
258
126
198
269
186
233
262
246
157
172
224
235
178
215
142
234
148
192
198
220
241
181
183
192
204
202
240
181
199
255
247
214
162
180
151
133
201
209
254
189
218
260
234
185
248
233
215
152
233
202
161
215
199
155
253
179
184
177
222
176
188
218
182
182
161
238
186
251
219
129
216
167
155
215
181
180
226
189
241
151
190
227
127
189
234
213
246
187
126
251
177
242
127
189
205
248
252
230
227
198
205
185
189
211
219
203
161
207
194
178
237
200
186
248
121
184
256
151
185
221
225
215
191
198
207
196
226
117
205
205
236
226
222
251
161
240
131
172
172
186
244
213
200
190
209
199
203
273
276
172
167
181
242
231
232
196
262
178
223
168
141
198
171
221
204
222
252
247
270
228
176
132
230
213
188
183
166
199
170
231
247
213
183
220
164
230
208
176
182
193
176
174
155
166
173
240
223
143
170
228
178
200
172
216
154
194
192
177
262
243
208
220
177
186
178
179
177
191
216
154
217
205
242
261
200
201
181
235
211
197
297
206
198
146
166
242
262
233
221
185
230
230
188
176
218
128
190
208
212
193
236
214
177
167
170
229
216
205
165
258
229
208
184
230
229
233
166
233
163
189
154
183
234
173
227
224
206
224
201
186
208
185
158
190
160
162
224
213
194
213
201
232
170
191
211
244
156
168
197
273
190
237
221
255
188
232
200
249
193
214
186
217
179
262
208
184
202
175
156
213
162
242
163
162
233
224
253
164
163
191
191
233
214
179
161
240
216
216
196
227
225
170
231
198
176
194
223
248
185
180
193
219
235
180
185
211
189
218
198
217
202
165
197
194
213
263
222
229
171
202
188
164
215
174
183
181
248
207
169
188
166
176
225
236
214
217
210
208
215
189
219
179
269
206
207
197
193
236
197
183
219
180
239
165
229
192
203
172
183
205
189
193
211
210
176
175
165
197
232
225
154
228
235
149
224
157
208
246
139
232
228
147
215
193
208
208
156
186
240
276
276
245
203
177
136
233
216
216
224
166
144
253
190
192
209
176
200
192
247
253
160
159
223
163
204
238
203
188
155
90
186
176
237
223
151
204
200
217
162
282
191
247
226
224
221
227
154
141
184
163
269
176
249
170
196
174
201
250
219
139
189
162
232
235
216
224
232
208
286
206
169
231
140
198
213
196
213
198
189
184
226
166
218
213
200
234
189
176
216
230
167
200
277
229
228
172
187
191
228
206
180
218
215
217
245
216
174
166
175
200
209
175
159
241
223
174
244
222
211
178
210
245
213
93
235
203
225
213
190
224
223
185
202
211
211
198
196
226
122
204
241
220
172
194
220
240
203
213
180
230
146
212
190
205
135
231
197
152
220
186
231
239
167
159
218
192
127
261
214
165
244
184
227
194
202
193
170
176
254
212
187
187
190
190
124
211
253
213
208
177
190
251
167
273
198
87
148
177
215
182
229
195
217
192
221
245
242
150
201
207
224
191
256
213
151
218
200
199
146
250
229
198
196
174
185
175
155
144
211
202
202
202
229
224
209
233
244
212
292
236
194
150
204
180
232
188
186
203
196
235
170
195
196
127
194
202
180
230
145
199
218
182
148
143
214
215
178
208
217
128
148
189
233
224
204
183
204
248
176
204
200
227
157
225
205
179
174
181
197
224
193
214
192
271
223
185
217
167
267
170
242
179
208
262
219
201
201
171
142
234
200
195
261
227
204
179
302
150
246
175
197
208
237
176
204
136
201
242
153
187
166
124
198
185
221
243
162
225
200
180
190
220
217
213
151
226
189
224
266
214
231
194
173
191
150
214
215
219
165
142
208
224
217
204
231
146
149
252
248
192
165
198
175
110
204
267
137
202
180
161
212
202
179
212
199
199
163
137
191
220
166
159
188
173
199
198
190
181
234
220
194
149
172
117
176
186
130
226
212
197
200
216
197
204
210
242
206
204
269
209
233
149
179
220
205
182
128
190
205
192
181
154
176
155
163
218
221
237
191
178
219
151
150
236
261
239
206
202
173
168
183
196
249
212
157
186
172
153
225
235
223
151
140
192
150
212
177
184
229
237
221
207
206
192
130
163
189
173
183
163
242
154
240
210
221
141
233
227
201
214
205
175
227
235
145
287
141
225
205
239
235
201
210
198
173
162
257
206
205
185
241
226
193
185
193
239
198
260
128
204
155
217
191
209
116
196
199
208
207
238
243
172
241
168
217
182
224
224
172
197
197
238
181
207
241
226
237
236
234
168
270
206
132
210
242
191
239
172
191
190
186
174
223
181
193
201
162
180
186
173
158
160
204
217
184
229
242
172
248
151
174
178
203
184
187
233
236
203
174
215
218
172
232
215
173
148
215
192
243
157
232
252
208
240
224
169
174
214
208
245
198
187
245
190
230
186
211
225
199
143
176
257
169
203
212
181
228
217
210
244
220
238
295
186
198
141
187
189
241
206
257
219
148
236
212
254
219
239
214
188
187
215
126
205
185
243
171
190
165
147
153
190
210
182
159
177
219
224
177
175
173
180
208
201
113
204
229
242
125
202
230
227
185
203
217
121
220
249
195
181
196
178
210
216
225
217
134
219
137
187
209
129
189
236
206
198
220
182
229
174
253
200
199
156
172
219
217
173
259
248
206
223
219
164
242
211
189
231
184
186
164
163
224
167
126
199
234
158
235
195
178
217
155
209
250
212
213
184
214
187
194
178
193
180
213
160
202
243
178
183
208
201
220
215
214
144
169
204
177
187
191
185
233
221
229
260
209
137
167
214
183
187
155
186
213
232
167
202
156
189
204
227
202
156
176
174
182
235
255
214
187
176
147
244
216
170
197
138
242
251
189
245
225
190
234
153
200
199
252
195
239
248
221
263
233
196
274
214
232
233
183
199
177
157
198
180
157
185
157
229
247
223
239
169
150
221
247
201
207
248
144
188
231
189
244
194
170
212
220
137
218
229
184
175
195
162
113
266
228
144
260
158
139
213
198
190
181
231
245
164
169
174
189
166
167
231
214
254
185
213
217
136
199
174
164
214
219
167
203
237
225
167
226
159
229
191
185
215
250
170
213
162
148
222
211
204
211
204
191
151
137
178
239
144
184
271
191
195
196
190
146
189
188
190
199
207
229
199
203
262
226
192
202
168
170
248
178
230
166
234
190
201
195
200
168
216
208
214
192
105
180
168
203
213
128
172
202
196
164
197
130
163
182
162
215
172
208
146
166
112
215
250
168
140
119
200
182
229
195
195
167
178
188
189
234
233
240
140
173
174
217
177
195
146
202
228
217
219
272
210
208
230
197
138
171
179
223
237
210
191
189
188
172
237
197
243
221
241
186
218
220
152
185
142
153
184
196
226
186
233
206
214
216
164
232
215
212
215
231
215
155
197
253
194
235
179
220
231
207
191
192
188
194
158
186
157
169
234
218
193
211
155
193
238
156
184
179
173
203
206
224
190
200
182
197
146
172
197
234
203
162
172
149
224
247
134
261
175
245
206
286
198
183
244
242
237
202
192
208
191
147
248
246
226
155
198
233
230
180
215
243
193
249
191
251
206
193
229
172
224
204
184
192
151
127
206
147
206
167
178
258
235
238
202
192
210
215
189
209
203
199
197
202
209
208
220
188
167
270
206
206
165
248
265
161
218
143
166
148
200
169
198
227
252
200
279
183
207
163
256
196
109
148
256
214
210
242
218
203
217
126
231
227
201
201
196
172
185
134
165
230
204
220
166
204
202
223
172
225
249
116
274
260
215
91
218
239
214
198
192
206
213
164
235
238
174
250
102
207
181
185
193
175
219
169
218
187
202
205
184
176
153
139
200
197
169
190
229
193
227
178
187
204
266
139
194
204
204
165
208
169
216
179
174
173
137
211
185
184
243
228
253
234
226
168
240
233
221
149
217
199
193
212
216
229
203
169
196
200
222
222
173
179
113
190
120
203
204
203
193
160
205
202
219
171
241
213
160
186
192
238
246
192
209
209
181
157
134
240
183
179
132
176
280
239
230
179
211
204
169
155
197
164
204
219
162
181
248
154
225
282
219
147
181
190
213
232
201
157
212
152
226
198
198
251
193
207
209
230
218
211
110
154
163
205
217
186
168
230
160
220
199
163
161
204
188
207
232
246
174
193
164
206
230
165
141
256
237
235
221
167
174
173
198
227
184
241
187
184
184
206
228
223
179
98
213
152
210
201
232
193
196
174
240
217
261
257
214
182
229
217
263
201
235
174
218
179
150
219
186
189
165
198
206
185
160
175
184
213
252
214
174
200
167
188
166
182
191
300
152
155
200
166
180
216
228
221
206
192
272
140
203
211
164
197
168
195
239
114
138
184
212
170
208
211
199
165
263
186
179
207
185
173
204
161
186
140
183
214
210
156
168
212
172
177
214
189
201
213
185
208
163
194
176
226
205
235
208
197
185
214
153
240
234
225
190
117
217
166
205
228
183
220
194
246
246
190
154
182
199
124
262
205
169
193
236
254
170
231
229
231
230
207
225
177
224
170
227
243
202
225
225
258
199
218
178
173
150
260
180
143
156
165
235
223
165
114
249
159
111
197
209
261
219
214
193
224
191
144
205
197
206
200
243
264
191
247
173
221
264
223
218
207
147
198
130
150
178
152
191
252
214
187
155
241
203
184
155
217
236
217
218
181
195
220
223
175
116
223
196
214
197
233
175
202
171
158
201
237
178
284
241
210
216
179
198
265
189
139
100
207
216
169
194
218
180
190
155
206
234
180
194
162
192
249
212
264
227
163
205
254
146
123
205
213
179
194
234
171
208
181
209
224
132
212
192
194
184
197
160
202
169
171
240
213
152
240
234
148
195
220
226
208
215
198
230
176
166
223
186
223
228
207
269
199
203
163
193
203
206
236
137
228
274
186
184
212
200
205
231
200
248
198
162
205
169
226
195
154
281
226
181
238
229
226
222
183
274
181
178
180
182
217
163
248
238
179
202
248
178
178
239
205
234
146
175
233
226
197
196
191
173
227
173
175
172
207
228
201
135
189
228
192
268
184
177
227
212
232
265
253
148
207
189
229
139
220
203
148
185
213
175
250
233
208
185
201
179
140
197
169
198
165
244
205
182
201
177
215
182
160
250
204
269
188
190
234
176
196
250
204
245
191
198
210
236
209
162
182
230
203
263
186
161
208
168
207
234
261
226
192
172
151
159
209
234
253
212
205
248
159
157
233
157
129
173
142
201
243
203
204
215
186
180
164
207
152
219
200
239
187
208
161
257
225
165
211
231
186
216
172
165
234
214
214
162
184
202
209
186
201
220
155
182
205
168
191
225
272
206
207
233
194
171
125
244
239
241
210
210
196
224
191
177
190
208
165
191
212
177
199
210
152
274
159
191
201
178
256
203
163
231
151
198
202
222
217
232
119
192
216
192
146
208
256
189
222
236
180
195
231
212
247
231
194
209
190
155
211
240
169
188
180
227
231
144
187
219
145
169
216
179
198
193
198
202
227
186
182
172
180
160
139
242
154
228
242
274
218
195
157
259
223
141
224
160
191
152
137
184
206
195
205
181
230
223
250
161
160
213
175
212
181
131
194
254
248
254
142
265
221
154
149
216
242
180
160
156
219
196
144
190
213
189
207
209
163
187
174
204
212
173
213
207
206
181
186
202
205
183
163
212
194
195
196
234
173
212
236
194
194
182
249
172
176
201
197
241
225
203
196
228
208
292
175
174
156
271
222
282
216
179
221
68
204
203
181
239
258
190
184
181
185
228
203
202
219
166
204
198
169
227
151
165
230
234
232
164
201
188
224
230
223
195
265
177
225
199
217
144
124
188
210
193
154
209
254
185
193
167
210
204
191
262
138
169
190
187
213
185
168
225
215
143
149
192
188
213
197
211
163
256
170
254
165
249
171
284
251
218
216
133
222
208
211
204
158
183
216
162
224
176
225
224
142
232
202
237
203
213
193
165
194
183
230
222
183
187
178
264
225
219
263
229
211
218
237
217
232
248
189
210
230
176
142
224
176
266
205
200
146
211
251
236
209
267
195
182
225
127
231
195
188
238
164
208
217
209
241
226
230
231
228
194
203
186
185
152
240
192
231
233
203
229
153
228
162
252
216
250
254
174
203
229
206
159
201
168
232
215
258
175
215
285
182
213
196
202
213
158
182
225
259
230
268
221
255
180
166
172
229
181
186
160
170
180
219
175
196
188
224
203
186
232
247
229
240
213
152
185
181
178
252
224
230
252
152
212
224
183
233
285
148
226
262
187
166
197
176
119
213
202
142
188
228
173
210
203
217
223
207
206
168
187
195
211
190
194
181
214
260
195
196
212
175
200
201
184
194
223
222
212
249
184
119
183
264
241
205
182
160
204
242
177
257
136
189
155
222
220
191
223
122
221
222
119
177
204
170
204
238
146
154
203
181
178
159
167
163
146
212
156
169
286
242
197
218
252
242
220
190
173
214
181
145
171
177
215
224
217
227
175
172
296
197
208
161
187
184
216
191
206
159
188
179
192
204
173
197
241
180
214
211
182
216
171
225
207
231
202
244
221
131
184
206
188
236
220
202
221
191
142
216
219
223
183
241
226
208
237
217
194
210
211
196
172
232
228
216
215
192
216
148
191
201
189
157
196
119
177
207
180
198
229
215
205
239
247
202
168
197
231
155
201
160
195
202
201
234
198
192
260
241
198
193
231
225
240
202
149
260
222
224
246
223
204
245
234
180
146
172
156
284
192
158
144
156
157
180
222
226
217
229
207
175
119
219
210
180
215
186
221
188
191
273
193
185
189
214
180
146
198
255
195
196
200
203
190
181
228
199
244
215
219
142
246
210
220
194
269
197
200
149
158
206
240
215
213
219
186
225
234
242
176
165
226
156
160
230
197
203
163
163
168
167
183
209
158
215
242
219
274
206
275
193
108
179
212
212
206
205
213
149
185
175
251
203
259
219
180
124
211
242
244
200
195
212
185
160
223
251
227
207
232
197
213
228
212
177
198
215
194
198
200
233
229
190
233
215
202
178
196
161
184
162
235
238
221
204
235
189
201
219
209
156
208
237
228
182
252
151
183
214
177
184
214
211
297
162
192
246
218
215
207
134
221
218
257
205
169
186
206
223
187
206
218
212
140
161
260
157
190
238
184
215
220
180
188
247
202
267
192
130
240
196
237
193
265
191
239
240
195
195
259
213
191
187
232
195
226
210
188
209
263
223
177
209
274
183
203
230
170
162
193
152
171
173
226
215
197
181
302
182
235
239
183
236
217
211
232
159
196
168
234
195
200
249
199
223
140
235
202
150
214
198
194
99
208
184
216
255
187
234
231
180
230
286
256
206
217
235
260
181
265
159
269
288
203
260
118
236
172
159
238
209
221
185
192
210
203
249
224
188
253
174
204
263
224
218
165
164
237
214
250
167
246
196
212
194
203
173
235
172
260
239
169
190
177
212
171
169
202
212
166
235
250
230
178
282
194
163
219
131
267
230
170
166
156
207
254
201
195
215
208
193
163
241
236
210
200
155
186
218
240
203
127
245
152
244
204
199
187
192
225
132
185
172
237
212
181
219
170
205
240
235
257
215
181
226
178
236
209
138
131
205
180
241
217
176
234
194
231
141
170
159
248
189
187
238
192
215
133
195
142
292
261
225
221
170
153
175
278
219
259
134
207
240
157
214
195
215
184
166
238
176
206
248
210
246
250
227
234
200
244
114
183
182
203
205
211
231
241
182
223
240
225
223
181
163
169
185
238
199
231
163
180
200
219
190
258
163
215
205
224
141
190
197
175
251
172
170
267
208
208
128
221
167
214
198
222
207
229
200
171
172
223
206
238
218
204
196
202
214
185
175
127
168
190
210
193
190
181
195
247
227
227
199
160
229
273
214
233
162
190
245
210
161
172
188
247
229
183
187
224
241
113
229
253
125
208
207
144
254
215
206
241
221
223
181
264
211
164
200
169
204
158
234
191
182
272
205
174
199
244
189
251
209
224
232
236
222
215
217
241
156
132
179
231
197
231
190
203
247
201
229
198
244
179
207
192
222
151
249
220
223
204
234
209
212
185
144
152
192
200
218
254
199
208
234
201
185
196
267
170
213
217
150
163
220
202
187
201
198
110
218
173
161
177
168
211
201
236
238
169
148
166
178
181
148
237
212
211
213
256
194
235
156
144
297
134
204
220
183
160
210
171
167
189
245
156
193
183
194
202
234
168
207
171
193
206
165
254
209
147
208
96
200
204
191
208
167
246
164
277
221
259
147
202
231
169
241
189
283
228
182
221
188
258
169
255
145
270
195
221
177
213
162
202
225
193
219
226
205
216
131
257
197
210
195
150
202
265
195
214
234
201
243
174
273
211
179
209
222
234
222
197
184
155
228
241
210
188
194
208
242
243
219
200
228
214
233
229
211
235
215
158
227
216
161
215
230
208
202
153
193
236
168
169
194
217
185
210
258
215
197
227
200
228
207
178
167
202
255
234
188
251
211
216
251
179
136
176
167
216
166
232
194
221
220
223
165
197
218
235
157
223
172
120
205
210
195
182
230
168
185
217
176
180
171
242
248
283
158
158
156
206
190
246
166
186
177
158
131
184
178
173
207
190
250
213
181
174
178
213
199
170
211
213
191
218
213
249
194
236
197
211
199
212
165
179
233
201
197
218
147
181
185
144
220
172
178
222
239
169
212
250
241
206
227
168
151
236
201
193
209
218
199
180
238
222
191
206
208
216
191
245
249
229
181
236
200
214
257
249
156
229
150
184
172
154
253
146
210
240
256
279
174
146
148
140
156
171
207
176
191
179
133
136
265
220
213
190
154
214
194
209
205
190
177
195
190
182
208
248
182
127
234
189
187
207
205
253
189
223
186
208
225
197
223
174
207
231
204
174
179
236
257
223
164
172
261
162
182
181
212
168
191
250
199
219
222
138
236
190
144
194
179
188
142
161
216
208
221
199
171
136
185
239
198
206
218
212
180
227
183
222
212
180
167
232
207
144
164
184
211
165
198
207
238
180
224
198
176
202
194
168
217
193
239
171
166
121
139
193
183
165
281
173
231
196
184
162
157
229
209
195
212
220
229
246
169
169
198
193
248
236
207
178
201
155
165
213
253
175
200
149
204
192
205
184
227
209
142
201
257
223
213
222
225
206
245
236
172
168
227
198
262
255
210
181
189
118
206
227
120
197
198
196
227
225
265
204
228
255
175
225
237
247
180
247
229
187
215
168
249
233
177
205
191
191
198
234
210
224
230
195
197
291
144
213
177
172
203
118
228
238
178
208
229
172
192
176
256
171
179
202
246
194
169
249
198
221
191
215
194
208
152
216
232
182
237
207
231
185
230
194
248
129
211
213
250
207
217
253
220
215
179
188
169
176
166
263
225
226
139
167
231
212
176
224
227
220
195
244
183
158
210
253
258
218
181
167
197
150
134
251
169
230
165
221
120
187
229
199
244
242
191
214
224
190
168
167
202
206
244
156
231
186
217
190
224
205
163
214
266
172
179
173
225
237
279
218
234
177
229
226
226
249
265
212
207
198
200
224
206
203
218
231
141
257
103
248
251
269
210
238
234
191
226
200
237
161
230
255
242
198
168
163
136
188
230
260
154
197
191
258
237
213
225
226
201
178
152
160
200
180
127
216
173
216
181
190
245
258
157
151
233
215
181
186
209
192
210
225
174
179
198
167
138
225
224
205
193
220
181
210
131
217
242
232
167
192
122
210
190
133
208
178
236
226
187
165
216
232
211
257
177
213
230
186
192
208
179
237
213
191
210
173
205
184
215
264
192
220
174
165
225
219
201
241
206
196
188
229
184
216
191
217
235
222
229
122
213
233
228
128
244
185
256
158
220
258
171
171
250
180
201
167
199
134
217
222
129
217
200
232
150
219
202
176
234
212
185
166
198
219
216
139
136
242
158
203
164
177
191
141
230
197
186
195
177
204
226
156
202
197
220
153
177
156
208
157
193
236
231
197
258
225
119
126
138
221
190
230
214
201
257
206
202
226
227
217
235
208
211
205
180
205
190
208
155
215
199
227
178
227
254
184
193
245
181
198
179
211
196
232
207
149
188
173
240
171
230
201
260
163
219
216
129
212
198
215
209
183
176
207
173
234
219
237
148
183
200
240
209
130
160
190
120
197
243
224
183
169
183
234
243
190
293
189
164
241
246
245
194
283
179
173
174
256
206
169
222
181
168
188
272
192
213
218
201
121
224
199
245
197
129
227
210
182
169
175
218
199
202
239
227
232
163
242
253
155
202
193
224
241
187
229
214
185
207
225
220
199
135
212
215
247
167
225
159
224
204
206
169
171
208
209
138
196
83
222
225
200
219
195
165
215
235
165
169
223
255
190
166
207
280
210
212
194
195
200
173
177
200
172
207
168
242
222
200
165
230
213
180
203
161
195
215
215
209
137
232
205
147
200
158
265
249
191
169
244
197
112
234
220
238
183
243
150
159
228
184
219
232
228
147
176
202
170
202
160
181
203
239
200
144
202
226
192
154
205
232
235
158
181
233
199
211
178
179
164
197
209
76
220
204
175
245
180
176
147
255
267
199
206
237
224
191
195
177
201
188
176
197
204
188
217
219
221
191
186
195
231
212
178
240
160
197
203
188
221
185
229
208
172
164
151
221
201
105
141
273
175
199
150
210
259
247
217
243
190
173
187
284
166
189
185
179
215
227
225
182
269
170
202
179
196
213
164
211
229
179
254
220
165
258
279
131
195
253
234
164
216
216
186
241
193
163
102
207
164
198
174
193
257
225
263
215
284
226
234
188
143
235
239
130
224
204
222
254
154
204
215
131
155
261
205
205
174
225
120
176
157
280
184
186
235
198
174
237
220
219
210
159
202
248
155
231
219
153
199
208
173
174
156
233
237
178
240
281
234
260
202
221
202
184
165
157
148
221
211
223
175
236
216
185
175
209
236
267
170
223
204
116
161
180
183
210
200
215
183
201
188
223
243
242
224
172
273
232
275
213
183
164
230
168
141
191
173
190
222
164
211
221
201
168
206
219
157
241
170
234
166
152
161
266
183
237
193
182
194
155
190
143
161
192
198
192
210
160
219
186
193
219
202
213
188
170
217
260
184
230
252
195
234
180
153
214
223
245
199
164
222
175
142
246
168
232
191
156
184
205
215
222
172
210
157
199
288
139
155
231
178
222
199
134
204
123
213
199
179
168
303
234
217
189
190
205
158
227
222
201
215
132
246
164
224
152
221
132
149
206
243
169
151
198
228
176
177
169
187
230
210
185
228
243
194
225
209
223
187
217
162
205
149
187
143
227
215
185
178
165
164
159
223
180
222
143
101
198
172
222
233
143
169
239
230
254
192
232
152
193
231
138
174
218
163
179
215
238
161
230
250
251
177
155
218
179
185
209
158
197
208
183
202
185
208
169
210
196
210
190
241
229
269
156
188
192
108
222
193
200
233
218
210
223
108
190
237
257
193
201
203
247
243
202
232
208
258
244
200
226
259
278
235
261
153
184
163
223
222
175
237
178
183
235
184
184
207
174
178
181
187
161
221
201
244
212
197
195
105
185
181
208
230
218
206
178
223
164
166
206
183
160
251
234
202
226
151
190
180
176
230
218
229
237
209
210
220
213
228
165
186
163
236
275
201
243
155
249
230
188
186
159
185
175
228
191
187
209
215
237
168
180
194
209
214
241
223
157
225
185
201
182
205
183
161
150
177
233
128
192
224
245
254
221
228
143
179
224
238
148
174
229
200
163
208
209
186
195
192
149
172
159
165
220
199
135
196
224
181
185
165
160
256
167
218
181
181
292
189
209
254
250
253
186
167
209
233
215
209
199
204
187
204
251
165
190
167
209
155
166
141
214
210
212
190
155
200
218
203
162
233
206
237
279
202
212
218
231
199
211
201
203
188
274
225
163
251
231
219
191
221
217
160
208
154
240
237
200
223
186
150
189
227
234
211
195
159
193
153
217
226
181
191
197
217
192
171
172
193
204
184
249
215
202
229
205
239
181
163
168
202
168
191
130
178
174
200
226
203
216
157
164
179
182
186
174
203
171
161
205
247
219
185
218
253
245
220
208
152
201
195
153
176
219
164
239
284
264
261
206
251
202
195
138
189
245
253
173
171
167
206
176
133
173
206
169
274
166
187
207
164
186
220
133
243
221
178
226
187
122
167
173
143
189
299
153
261
211
157
163
189
241
213
223
196
227
175
218
219
262
184
166
268
154
243
209
245
187
232
202
192
166
210
179
156
153
247
200
215
210
181
230
177
189
263
194
203
188
239
202
206
185
190
239
196
272
196
225
178
242
215
207
147
257
176
145
222
226
198
144
170
177
121
193
202
217
198
247
196
174
230
140
265
206
207
210
261
172
191
213
238
249
214
162
198
172
238
202
235
157
184
211
169
207
172
179
165
187
217
220
198
217
156
225
228
216
182
215
231
170
218
169
181
242
195
202
213
244
157
202
178
228
240
195
185
167
179
197
139
174
171
183
240
176
199
241
184
192
193
167
183
228
231
180
232
235
207
161
201
216
216
274
218
238
229
177
249
250
189
161
211
233
203
160
168
151
227
170
201
191
203
192
200
199
233
148
131
182
247
181
195
236
172
262
208
204
191
178
280
113
193
205
168
159
261
188
215
241
227
183
199
178
224
241
196
198
177
167
199
260
211
193
191
253
214
147
178
187
163
241
242
243
186
214
192
196
232
213
183
226
207
241
182
189
234
192
157
185
171
185
218
168
224
219
193
193
228
175
230
220
226
233
228
155
219
237
202
198
184
230
251
158
229
229
241
237
159
166
199
215
183
120
136
252
152
247
212
189
282
236
196
251
201
204
183
265
221
183
199
175
124
217
215
204
159
229
188
141
190
227
264
216
207
251
263
144
146
251
163
194
179
189
155
182
242
152
159
209
147
229
219
193
213
198
213
198
181
240
206
229
180
225
153
189
240
206
211
183
219
211
208
254
205
203
188
230
259
151
230
184
145
205
166
216
244
162
163
198
176
210
155
201
222
138
214
208
219
224
224
233
193
205
219
128
171
187
184
193
196
230
165
207
200
204
200
177
112
137
246
100
220
222
227
256
158
210
125
231
239
171
230
186
176
190
181
228
182
158
180
187
221
187
195
166
279
196
127
250
179
189
191
155
246
248
248
188
183
142
256
202
181
185
205
200
245
216
203
233
199
233
202
225
244
207
240
148
242
218
205
160
285
243
234
243
207
167
232
194
220
217
250
192
174
204
189
262
230
174
248
202
212
229
187
233
162
201
168
213
258
229
220
161
199
179
225
241
221
257
245
252
151
220
150
225
205
195
233
212
245
213
127
191
170
196
238
235
142
227
229
160
213
214
223
220
221
190
129
203
122
185
209
168
134
270
234
252
227
122
259
196
190
199
199
174
197
235
175
280
102
205
219
227
200
146
175
181
206
203
241
131
197
208
197
217
213
248
234
209
207
175
144
195
197
162
170
179
169
210
181
223
126
234
212
211
298
220
195
265
193
197
219
285
258
149
209
228
179
232
206
172
206
219
193
192
203
195
234
227
156
210
225
241
216
186
200
257
164
194
221
178
179
188
182
231
253
228
129
177
240
176
199
193
195
225
256
250
172
161
182
199
163
169
207
230
233
135
215
223
207
202
215
158
206
135
187
174
198
163
147
209
208
127
227
188
232
208
155
234
173
195
188
179
186
240
100
235
139
184
209
183
149
142
230
219
156
198
255
185
185
191
135
212
147
235
197
201
166
224
176
190
175
152
173
194
189
215
206
204
255
204
153
196
224
152
210
238
226
229
205
242
174
169
171
158
213
169
186
140
234
194
241
212
219
159
190
199
218
207
172
196
242
213
194
212
214
162
181
215
176
197
158
212
205
170
151
244
231
160
244
171
211
179
206
243
215
206
161
205
139
197
266
242
251
230
199
212
209
226
206
247
236
183
226
166
115
184
197
212
217
151
218
208
229
223
227
206
224
208
178
125
213
156
195
129
245
169
224
210
277
190
231
279
222
232
235
190
174
209
208
203
176
203
253
205
188
205
172
205
194
256
216
216
159
127
216
196
175
210
226
199
234
236
171
190
189
234
212
252
261
199
196
226
162
174
207
220
196
207
152
249
190
214
214
227
181
157
189
216
236
185
224
177
240
198
236
163
203
150
242
191
225
152
185
214
153
180
195
212
230
258
194
185
231
232
236
150
253
219
192
219
185
226
204
269
183
158
157
244
233
136
182
151
233
155
233
207
172
159
161
206
180
228
215
188
197
181
243
232
246
210
238
235
223
190
185
244
187
287
209
167
166
178
179
179
206
208
200
161
217
163
179
220
173
204
182
197
183
189
180
224
217
189
142
258
203
180
182
157
169
196
211
191
242
222
206
228
194
169
193
232
168
126
164
227
212
224
219
228
201
211
176
114
174
194
193
194
186
230
147
220
233
187
136
182
181
217
157
221
201
217
275
243
188
209
222
217
209
134
184
218
203
166
157
185
170
143
254
192
190
215
114
160
172
177
220
136
211
187
181
171
247
190
173
153
205
141
177
252
261
210
210
188
241
146
189
198
174
240
164
191
182
206
205
138
241
149
201
220
196
264
222
222
229
193
186
236
207
199
170
235
160
199
144
192
189
189
249
199
191
234
159
200
170
209
206
194
206
229
260
207
218
234
260
179
208
249
208
195
208
206
182
206
212
174
165
170
174
112
219
181
192
238
240
221
206
214
191
231
186
150
215
216
179
229
202
188
132
189
240
214
200
266
235
175
166
300
186
220
204
245
171
201
170
171
203
188
207
259
186
224
165
181
200
159
167
163
176
178
175
173
211
251
209
259
221
261
216
178
242
228
171
146
157
172
231
155
222
210
173
164
199
190
250
213
201
179
226
197
236
189
151
244
223
139
247
157
199
194
183
185
184
195
157
161
188
176
177
160
176
177
138
214
198
211
183
141
238
125
197
152
194
197
190
222
187
244
243
287
174
201
190
145
163
157
224
231
229
174
232
213
251
184
158
200
218
167
239
247
248
216
190
212
248
215
228
214
189
132
197
232
171
207
262
185
255
274
184
131
235
209
235
193
150
201
183
181
199
262
146
212
200
176
251
198
201
193
177
209
165
224
146
220
183
160
177
235
266
219
249
208
177
206
152
209
228
229
194
183
196
240
230
182
248
227
157
169
223
187
254
246
194
224
234
219
162
236
180
194
270
226
143
202
197
226
230
188
208
252
199
146
230
219
211
153
170
203
264
182
187
256
274
181
155
212
168
208
223
243
225
228
130
175
200
206
247
282
181
170
169
180
208
258
129
225
236
186
142
244
204
193
185
168
251
200
173
164
212
130
185
207
138
205
180
169
186
192
199
203
214
199
223
179
191
165
257
191
199
206
209
233
242
249
204
341
184
232
181
199
221
178
262
174
132
169
183
213
249
210
198
220
245
164
207
216
169
222
198
176
262
214
211
212
205
215
206
232
128
221
181
199
185
157
212
209
261
182
238
301
203
196
176
192
239
196
209
195
202
210
224
217
269
169
198
198
267
216
224
142
187
228
234
171
247
177
226
226
227
157
198
202
222
186
206
210
207
168
226
220
179
222
158
138
149
201
167
180
193
157
153
205
195
184
208
212
215
208
257
203
192
210
244
241
161
163
236
148
162
221
226
239
212
230
206
199
191
181
205
175
215
253
217
262
150
177
169
159
228
198
243
126
163
194
234
200
157
164
219
104
169
226
181
184
204
242
211
202
204
212
194
236
229
183
204
167
221
176
200
150
187
161
184
208
187
222
177
181
203
183
228
222
230
175
136
214
261
222
164
230
196
211
192
185
210
222
214
159
232
203
159
159
259
150
260
206
191
178
145
225
153
194
190
206
158
197
233
200
216
180
206
174
173
271
185
233
230
196
224
164
202
208
178
181
242
203
241
109
182
196
220
169
171
181
153
250
258
259
187
153
200
227
226
204
202
224
183
192
264
199
243
188
253
243
243
212
215
199
209
208
169
173
211
220
225
215
230
220
189
221
184
222
256
196
142
143
195
204
181
216
189
225
220
165
134
171
111
238
181
179
234
214
171
188
196
165
187
238
151
212
187
125
190
182
205
204
188
229
154
129
245
134
208
233
211
186
203
224
147
169
223
206
224
216
123
211
198
211
223
171
214
207
166
183
164
186
136
143
160
247
199
191
144
186
180
222
246
217
218
205
180
188
230
214
251
204
161
216
235
219
162
131
230
210
169
197
182
249
231
225
197
207
172
231
118
166
178
222
208
172
242
199
164
217
210
195
217
244
125
206
185
232
171
236
243
202
204
160
172
174
198
191
186
222
209
177
253
242
179
242
195
185
221
201
221
161
238
225
274
241
210
238
111
209
177
246
215
200
216
188
220
209
160
243
160
174
127
231
188
161
201
153
230
183
226
157
207
230
134
185
248
231
217
176
237
217
225
201
238
176
209
255
184
186
181
208
169
220
224
229
221
244
204
202
173
176
224
256
139
185
178
165
233
231
147
201
180
163
193
180
155
118
231
227
163
205
171
138
287
209
243
222
211
220
198
204
193
224
222
164
163
194
238
195
219
266
191
235
226
140
242
247
226
183
250
203
190
106
212
174
192
238
135
202
211
142
208
135
146
226
203
179
160
194
219
206
228
181
186
234
186
154
199
214
198
211
236
207
219
157
211
172
195
131
185
219
191
214
162
182
134
209
179
227
241
217
241
252
270
196
182
209
226
221
210
110
209
169
171
145
207
202
205
237
249
186
189
193
193
224
146
164
184
181
201
143
213
229
193
122
166
165
168
156
251
165
201
216
199
231
185
216
162
211
179
152
161
209
216
231
200
233
218
195
151
244
215
171
258
193
205
142
212
190
217
257
253
202
190
196
257
270
172
138
158
238
201
222
182
142
153
240
266
244
176
228
203
147
229
163
156
229
209
209
178
217
235
222
197
252
196
197
178
211
202
219
192
173
154
201
200
229
227
167
145
214
219
242
244
194
212
196
221
143
161
157
142
216
259
241
202
264
201
195
160
186
251
213
184
266
178
268
251
207
203
193
128
195
244
205
216
230
184
209
227
220
209
166
191
178
254
245
241
205
210
241
220
174
124
234
181
172
205
286
97
129
175
224
207
193
182
151
200
203
244
192
179
199
182
213
210
233
219
223
226
240
173
222
211
227
196
212
220
234
190
231
176
152
158
233
279
233
281
241
209
216
215
219
161
233
241
241
192
224
161
197
162
249
211
173
202
219
216
204
202
185
212
193
224
224
197
188
209
204
158
147
178
196
173
182
145
182
198
151
205
168
229
241
242
173
162
170
141
204
219
161
185
166
226
164
179
176
170
193
150
222
194
171
188
233
190
246
199
174
212
171
198
235
162
225
181
180
227
160
185
216
162
230
188
181
183
166
219
256
236
249
151
175
205
197
227
203
232
188
159
255
147
156
163
227
203
203
226
184
245
209
216
217
205
189
204
217
177
175
178
148
126
238
174
238
228
174
160
169
190
253
203
257
182
225
277
166
217
185
163
171
189
208
180
180
181
216
153
200
250
220
213
245
235
237
237
217
216
248
142
187
217
146
171
215
209
240
209
185
227
258
192
206
122
193
271
127
204
182
210
174
169
199
239
191
177
155
206
227
181
157
211
198
235
179
189
133
238
220
183
208
223
190
139
193
166
197
173
170
220
181
167
208
214
179
215
146
207
163
251
236
210
192
231
207
226
204
224
184
252
182
197
218
240
245
171
164
139
287
214
152
254
191
201
238
232
233
249
213
155
141
221
182
246
147
208
154
185
199
225
207
198
188
198
197
194
282
175
189
242
181
278
265
180
144
187
234
207
223
207
241
116
121
150
205
223
235
221
194
239
198
238
258
196
182
199
262
245
209
235
219
240
187
181
214
181
198
221
210
232
202
158
206
180
172
161
190
160
170
186
230
234
251
210
203
135
175
145
181
145
197
244
231
208
167
175
234
216
188
227
150
195
259
215
204
199
206
255
128
174
246
173
258
225
236
205
169
224
183
209
249
189
232
228
217
167
165
228
215
225
211
145
210
181
177
223
186
218
203
133
186
138
248
199
237
240
165
204
195
221
192
171
201
219
189
189
247
245
242
190
221
188
197
166
211
204
186
239
200
163
216
242
201
244
170
212
177
226
232
236
169
208
208
145
186
246
169
190
194
235
197
199
199
288
181
188
183
199
160
189
180
263
171
184
243
178
164
161
241
152
186
170
202
152
210
227
193
214
251
223
236
180
132
206
124
205
165
198
180
190
192
252
268
206
224
236
199
241
192
168
202
259
137
201
180
160
224
201
203
185
165
235
200
209
175
161
220
200
263
193
196
221
121
191
207
184
166
129
144
199
200
249
214
184
226
224
234
121
168
287
168
164
195
211
231
200
202
235
174
175
158
140
255
131
281
205
271
224
234
218
202
166
215
220
169
207
242
198
188
164
218
218
224
222
217
181
201
200
175
192
187
196
212
164
246
178
218
233
174
216
259
229
151
195
201
258
171
239
180
153
206
211
136
164
206
246
189
268
168
160
211
179
268
167
161
192
190
173
164
173
244
165
144
180
205
159
219
207
155
193
163
205
197
205
226
117
228
216
123
219
189
203
173
188
248
278
163
200
185
199
187
185
199
239
205
145
159
210
172
188
189
226
213
193
215
190
133
295
192
190
214
203
224
173
223
242
190
160
218
167
137
229
178
164
197
184
210
197
223
201
219
234
269
142
197
210
275
189
210
241
167
246
228
167
216
148
301
208
178
242
166
266
245
132
208
175
160
177
204
176
177
113
258
198
179
165
141
213
201
198
186
242
266
150
204
207
249
178
206
162
214
224
196
196
188
184
246
222
178
179
208
189
175
216
187
169
194
168
239
220
219
184
206
198
202
191
228
209
175
159
214
222
197
188
258
244
168
226
285
205
270
230
223
208
144
229
219
259
202
174
196
252
152
181
237
170
212
190
181
193
268
205
270
248
163
185
182
255
221
190
213
153
157
191
227
257
232
161
230
234
263
205
245
250
119
197
214
231
185
126
154
224
231
162
221
180
173
207
191
243
211
167
167
200
220
211
211
119
176
257
161
157
153
221
232
178
154
183
176
173
200
197
213
193
195
230
214
226
174
89
186
219
242
240
236
280
226
179
148
159
211
191
208
244
158
197
151
232
203
176
191
155
220
218
165
163
208
96
231
152
214
203
219
163
199
269
176
243
216
191
197
206
201
225
276
183
143
203
178
186
217
194
188
152
205
210
235
214
201
227
178
164
157
214
243
116
237
184
121
166
212
180
249
196
262
228
220
214
172
191
208
210
162
242
196
233
204
144
185
217
171
264
205
249
159
228
188
216
177
219
176
219
153
285
195
177
169
210
228
206
232
209
162
194
170
162
205
205
241
170
181
244
182
247
228
216
248
193
245
212
201
185
224
196
209
221
194
197
181
188
148
200
176
204
211
224
230
217
233
260
156
180
150
213
201
243
246
187
127
193
242
215
211
173
207
158
108
191
222
201
178
226
178
208
223
170
251
251
196
182
255
225
153
278
151
226
126
259
233
176
219
169
232
219
149
181
224
166
181
160
230
183
232
193
165
176
240
232
226
263
185
228
183
192
208
169
235
158
157
146
188
188
182
179
177
238
238
207
190
180
201
216
191
221
217
231
253
188
197
146
251
242
229
153
207
166
182
218
126
245
168
156
204
176
244
229
217
170
181
162
263
208
216
184
157
229
164
226
219
187
183
179
151
208
210
207
200
254
166
200
213
261
180
241
170
212
220
190
207
207
225
188
217
205
167
189
196
232
269
236
170
193
260
255
177
162
246
199
203
162
173
198
93
209
107
209
219
183
201
210
231
209
222
189
258
175
204
169
254
101
195
209
217
181
185
159
164
198
267
227
200
162
262
236
147
215
200
246
237
242
215
197
183
241
173
245
225
265
177
217
206
242
241
199
222
213
250
214
208
207
166
204
188
213
199
213
254
207
177
216
99
234
205
221
238
190
219
223
210
198
247
187
211
244
196
175
199
204
176
170
147
189
200
227
194
233
199
209
192
190
201
197
188
235
207
243
265
253
208
167
203
235
206
157
240
223
179
258
156
175
197
181
200
219
195
237
214
205
211
235
156
182
246
171
204
145
161
220
205
110
176
112
254
229
240
239
199
138
195
201
136
177
205
178
145
244
138
237
204
179
164
156
195
199
213
168
237
198
189
254
179
196
221
181
224
212
225
157
192
189
252
263
247
164
203
227
216
196
245
185
216
209
144
184
192
251
148
229
241
176
152
146
173
233
215
173
186
232
178
225
216
204
205
215
195
214
193
180
161
210
193
173
221
175
133
258
241
184
188
201
195
197
223
176
199
186
241
194
200
236
202
187
293
248
223
248
184
169
225
221
219
182
183
192
201
193
187
204
156
195
195
205
192
178
147
207
224
163
202
176
235
259
207
179
197
152
210
191
172
166
175
200
144
150
246
194
203
220
179
171
235
152
222
161
223
186
250
250
215
169
254
198
177
263
116
276
215
211
210
220
172
220
223
178
225
218
150
230
169
210
138
152
248
227
248
197
249
190
271
214
236
211
154
180
247
202
237
232
222
95
188
224
169
214
166
134
221
197
240
187
223
242
262
193
234
201
210
176
218
208
183
208
192
246
160
219
221
209
215
206
176
213
232
236
201
233
169
239
239
245
238
154
186
206
213
215
224
185
198
168
207
194
207
159
208
181
187
197
170
233
186
211
251
197
231
189
272
209
254
136
210
135
169
164
185
154
147
223
210
209
243
171
224
190
196
198
203
119
185
177
176
210
282
173
251
135
213
186
169
132
260
159
178
193
250
156
233
238
228
235
279
213
166
249
167
212
175
266
212
250
207
199
224
186
150
223
224
226
222
139
172
168
249
132
168
193
259
166
219
243
261
170
198
200
213
203
239
191
226
189
260
165
226
228
190
202
178
182
254
155
166
219
259
215
257
211
172
159
179
193
208
205
151
238
180
152
233
161
206
173
228
112
194
232
181
185
239
209
147
161
189
256
184
176
177
211
154
169
234
189
244
208
228
242
183
238
190
241
168
170
181
239
215
229
192
174
215
209
197
180
151
251
183
207
209
229
205
221
199
191
181
237
226
218
152
175
172
255
166
155
193
268
264
183
202
177
174
181
194
194
230
191
218
129
230
192
207
222
247
200
175
207
194
205
163
233
192
147
203
217
150
240
181
251
164
199
201
181
147
194
204
187
234
222
230
169
162
233
181
180
180
166
222
189
218
184
207
218
196
180
196
213
183
171
276
199
209
173
223
176
224
165
233
175
205
197
211
183
201
213
210
187
183
178
192
161
205
211
228
238
205
172
200
246
194
194
186
193
216
226
233
238
214
215
202
234
177
154
247
180
208
265
175
147
160
201
237
191
191
229
176
203
197
197
205
179
251
196
153
157
187
221
227
167
234
221
167
138
166
213
216
216
180
182
212
243
186
205
181
213
183
179
241
183
223
154
216
186
245
190
184
260
238
184
194
174
237
247
200
156
204
195
218
191
201
169
191
180
209
204
199
248
182
219
146
238
167
188
223
184
204
237
220
256
158
162
199
240
172
142
229
232
211
227
199
221
159
219
208
189
202
183
201
229
181
188
195
192
203
185
239
175
215
236
169
234
183
231
259
209
200
203
201
270
164
226
186
205
232
220
187
207
205
129
217
186
176
257
204
200
155
118
176
235
219
221
168
144
129
170
253
170
212
228
195
267
173
181
220
234
206
191
180
196
180
208
226
170
206
181
208
246
204
174
212
212
183
166
236
206
262
244
281
175
175
257
166
173
200
195
194
198
194
304
217
183
159
251
187
243
247
237
183
211
166
164
239
199
218
152
237
213
202
254
228
236
233
227
219
165
209
229
170
200
233
154
200
193
208
210
216
185
194
229
216
205
179
172
215
211
240
195
215
153
152
215
213
231
201
219
203
190
195
258
183
227
195
161
169
204
206
197
209
228
161
168
155
151
229
243
195
142
191
161
219
114
193
190
190
189
181
163
259
195
206
211
229
157
136
192
178
168
225
226
178
199
169
214
172
161
198
211
250
208
266
200
230
208
225
181
244
208
206
187
116
185
199
122
193
215
192
227
227
160
239
265
220
211
245
214
191
185
203
180
176
218
213
246
186
219
192
239
252
231
191
251
232
211
181
235
163
241
217
223
255
129
193
233
185
228
225
129
282
185
170
187
204
247
221
232
236
140
200
176
232
129
168
205
131
203
242
198
210
198
243
227
194
204
199
161
284
159
230
237
212
234
211
144
210
210
214
254
202
168
239
226
193
211
132
217
280
185
273
208
115
253
185
193
243
258
169
192
221
219
166
164
160
178
158
206
181
193
225
151
190
208
201
232
154
230
226
191
233
206
172
148
230
169
216
165
143
216
190
288
217
246
150
213
248
238
185
199
218
218
225
264
123
213
168
170
204
210
248
216
224
214
220
182
194
186
155
140
238
178
227
162
189
163
175
174
226
193
217
199
190
225
155
208
170
189
213
177
212
154
97
266
219
191
219
177
219
206
218
143
168
190
190
242
211
248
121
198
200
231
242
222
215
199
230
203
215
243
235
216
217
209
227
227
155
156
165
222
238
264
162
242
203
113
165
212
170
166
194
169
198
156
185
172
210
211
204
209
215
215
167
195
191
217
223
228
220
158
205
159
127
288
186
280
245
200
203
192
193
128
185
228
164
180
244
193
193
248
214
213
223
132
239
173
231
235
206
202
195
118
161
175
180
175
217
215
229
218
233
237
236
193
196
205
232
248
186
217
225
196
161
162
208
233
173
155
178
238
181
149
160
205
156
154
184
192
144
165
173
217
187
227
195
202
222
210
224
245
190
180
266
144
199
226
228
181
143
182
197
239
220
158
196
174
151
133
200
159
252
223
201
169
113
189
240
171
174
220
178
252
240
157
175
161
236
186
203
223
236
190
202
206
201
196
223
237
168
211
167
181
173
167
215
215
196
214
221
206
148
241
162
157
164
165
213
159
187
181
139
195
194
218
100
209
203
190
192
187
157
158
246
174
216
187
137
179
236
205
247
155
210
276
210
202
225
203
216
220
208
117
191
191
232
153
230
148
186
204
236
155
247
225
225
205
198
182
194
258
212
238
262
192
240
203
220
233
174
230
204
200
262
134
205
224
212
226
232
206
145
218
249
207
196
189
185
223
215
200
208
187
215
194
227
166
217
210
217
185
218
231
225
196
152
201
225
169
259
202
230
235
253
240
224
193
172
203
164
127
136
195
192
234
187
234
228
185
171
109
224
129
142
144
210
205
211
205
224
229
213
169
204
202
188
267
232
178
218
209
210
167
182
209
253
144
250
156
206
233
257
183
238
150
207
188
181
185
188
173
220
175
170
165
224
193
193
181
188
199
156
256
222
164
202
168
183
202
213
168
176
192
113
244
194
247
156
144
169
166
224
168
262
217
209
184
195
140
221
149
195
183
249
256
189
126
220
197
197
229
202
191
202
197
145
238
277
182
185
230
224
211
220
183
180
241
150
213
182
142
177
197
151
215
166
251
168
239
184
200
216
247
229
217
182
179
117
192
261
305
122
269
225
237
221
221
188
200
246
225
196
218
192
146
201
148
199
244
116
161
201
181
158
215
148
195
194
200
142
175
223
182
207
156
234
206
217
239
144
226
208
222
305
227
231
188
154
163
186
134
186
227
134
219
202
222
154
195
197
209
243
207
255
201
183
166
167
222
207
284
195
217
249
202
230
158
191
191
214
181
202
161
216
166
182
174
170
220
185
183
209
246
226
189
202
160
188
214
202
146
178
221
201
166
212
215
120
179
194
227
213
173
204
199
217
205
268
129
170
167
186
158
165
187
283
196
160
256
209
203
188
195
129
184
243
250
191
238
206
233
192
232
160
194
226
252
200
138
262
233
197
252
220
222
223
132
156
213
232
210
189
204
149
242
190
201
266
154
208
206
233
169
192
231
223
274
159
274
231
120
256
166
174
193
183
191
148
229
257
234
220
243
163
215
214
233
213
208
166
137
206
207
210
231
223
211
259
193
250
198
147
198
249
164
220
201
222
188
204
183
214
202
211
201
174
223
203
184
187
244
193
171
139
235
231
222
183
213
226
202
183
171
173
148
180
203
184
240
209
219
132
215
229
226
170
266
197
184
242
179
152
213
254
190
179
253
207
138
228
163
173
202
190
205
222
193
183
196
198
250
236
244
200
146
220
158
224
182
209
216
248
131
211
170
207
138
222
154
190
177
225
223
203
239
263
230
195
222
160
222
222
194
173
228
142
231
167
208
203
227
223
131
215
213
154
203
191
184
190
202
216
251
170
216
135
212
156
172
235
174
272
238
169
241
253
181
193
122
175
135
244
173
217
186
211
255
151
179
204
192
188
248
271
226
159
231
177
166
196
170
178
131
158
118
162
224
137
229
212
218
187
225
197
146
204
155
132
253
241
228
208
187
217
229
101
213
219
205
220
201
225
225
200
218
171
194
189
115
182
203
208
275
178
190
155
269
195
228
162
162
217
239
240
164
177
197
234
187
201
212
241
205
200
239
200
185
181
160
234
175
249
236
230
146
271
161
190
202
216
160
201
193
134
218
252
174
250
208
195
201
158
196
199
271
203
223
199
170
206
250
171
172
227
193
165
220
205
160
221
189
246
204
183
174
239
238
203
174
227
159
253
178
243
227
156
134
198
132
229
156
177
201
225
248
193
234
235
162
239
196
226
211
148
190
239
114
215
212
207
216
207
212
214
244
147
163
176
241
238
221
196
222
220
211
215
184
199
131
236
218
168
181
175
262
197
231
195
194
270
263
188
169
184
133
136
201
152
144
227
219
168
195
230
208
245
199
181
219
219
275
207
219
221
179
161
268
212
150
234
222
154
221
183
148
226
248
217
243
201
208
203
148
269
148
168
183
200
157
253
227
194
180
205
217
174
159
240
198
198
190
172
266
198
206
207
241
182
232
240
212
197
140
249
146
230
192
181
161
261
183
188
192
191
232
228
194
213
147
155
248
197
182
242
227
221
160
257
232
179
247
181
240
143
239
172
191
181
205
238
157
252
195
218
177
278
178
214
199
196
195
143
140
184
150
183
192
205
234
228
177
159
187
188
236
195
185
185
202
265
153
188
253
220
180
185
193
203
238
193
205
194
235
204
191
226
241
227
180
204
170
181
195
168
153
196
260
193
196
170
238
231
238
232
183
254
183
147
159
240
154
165
208
275
163
236
241
141
179
251
209
205
208
126
140
226
232
163
207
269
221
167
246
153
208
269
257
165
152
192
204
183
232
159
190
176
205
202
239
243
216
169
237
202
198
181
223
201
226
234
229
245
124
205
175
224
194
197
206
155
172
168
215
258
161
168
204
135
245
143
211
228
202
145
147
207
162
226
194
245
172
227
235
234
197
175
163
254
220
239
176
268
179
191
255
204
201
233
248
221
164
216
231
170
227
206
219
179
185
206
187
191
222
174
181
154
160
232
172
228
232
133
191
208
157
188
180
192
247
187
207
220
203
160
207
188
166
165
216
146
164
222
159
204
137
238
200
200
214
246
282
186
149
208
204
222
206
220
182
244
142
190
222
155
201
119
185
175
182
183
154
190
198
175
187
200
256
194
181
218
234
249
261
183
171
157
194
208
230
158
136
230
159
162
180
209
159
157
201
209
250
211
183
198
194
259
192
203
208
215
165
240
191
188
196
164
192
180
179
232
251
155
156
212
211
189
218
175
144
258
122
220
225
166
275
177
256
209
203
225
218
195
136
166
170
183
188
216
147
229
207
200
200
178
190
217
218
209
234
212
189
197
233
205
236
157
209
217
250
255
214
203
212
273
190
231
135
150
233
208
198
173
197
183
227
222
148
148
212
174
213
150
228
176
189
165
130
165
122
250
198
196
154
248
179
250
283
195
224
203
188
258
204
202
270
229
162
262
227
183
168
182
218
249
207
216
230
170
234
266
169
168
175
181
238
236
201
188
138
227
188
232
168
111
186
142
217
212
217
194
198
180
181
194
220
180
229
195
177
214
197
194
215
211
247
194
209
277
251
178
190
174
238
217
196
223
283
231
236
184
232
161
201
234
141
235
199
156
166
163
218
188
205
139
148
213
188
196
237
170
181
218
207
224
186
219
259
305
190
209
215
236
195
231
196
132
273
251
204
266
203
115
188
159
231
233
177
203
232
155
212
221
218
195
258
188
220
194
160
209
169
195
153
188
144
115
234
226
153
120
196
238
268
167
187
195
207
180
139
280
205
237
186
209
253
176
211
151
139
192
121
161
163
151
190
155
210
250
147
200
210
141
182
236
238
158
215
200
184
241
215
195
193
250
185
229
197
198
176
220
206
231
203
211
226
116
207
234
214
204
173
261
226
205
102
186
176
196
179
166
172
193
203
217
241
193
196
205
145
196
185
152
243
139
190
209
151
156
177
219
227
205
157
222
170
223
275
167
221
199
177
216
155
148
257
208
140
189
173
196
267
246
204
192
219
197
149
216
187
148
208
205
212
128
210
236
190
279
179
238
167
158
250
208
201
210
194
129
178
223
236
207
157
222
239
239
260
224
171
253
219
192
247
245
201
211
192
186
165
125
184
211
139
127
195
209
230
212
220
243
157
209
250
245
206
162
183
122
182
138
218
199
227
198
217
198
224
155
182
141
167
179
224
184
209
196
152
203
206
154
230
228
193
171
150
219
223
264
237
186
193
187
230
163
214
257
134
136
203
212
168
195
182
239
209
166
218
179
174
257
229
176
205
178
202
249
161
203
125
191
263
217
159
228
167
171
220
177
213
212
216
220
239
188
253
196
246
185
199
154
187
247
154
169
190
190
221
211
252
184
170
175
142
216
138
185
160
251
200
148
261
152
246
175
212
196
178
227
225
177
167
222
234
171
224
201
220
166
205
196
224
126
189
223
222
155
262
239
248
193
210
216
161
229
196
177
200
250
205
271
228
225
158
194
170
164
217
142
224
217
206
204
200
201
262
145
247
264
193
193
223
217
224
185
252
165
151
192
222
204
228
273
205
194
265
181
248
244
259
131
174
174
224
176
183
223
165
240
224
152
172
242
214
255
176
196
199
141
236
235
172
232
160
227
209
197
248
211
163
168
156
291
257
174
254
219
223
186
149
188
204
234
263
185
260
206
168
130
235
206
172
247
183
175
243
178
249
200
213
222
187
162
206
229
219
253
228
225
185
128
274
222
199
213
249
222
136
179
201
243
163
210
195
155
182
196
231
186
253
211
144
208
134
226
181
211
162
248
158
229
173
210
151
192
147
221
171
192
181
155
242
210
188
176
152
222
219
246
238
200
253
239
224
219
177
194
188
218
184
206
182
187
154
188
211
193
205
218
196
161
254
138
184
211
184
178
265
187
213
235
141
137
178
210
228
186
230
236
170
203
182
180
231
182
152
230
185
159
173
200
180
237
219
208
264
198
181
235
248
173
128
220
256
188
166
188
237
173
246
206
177
230
236
202
206
207
253
153
151
195
183
217
205
212
157
258
200
112
222
205
152
168
147
168
141
246
181
214
191
136
209
250
252
186
229
117
164
223
184
170
178
187
210
137
164
169
167
203
249
219
263
189
216
165
242
233
254
245
148
204
199
207
244
201
222
184
187
176
213
134
158
155
246
221
231
251
140
206
116
169
248
190
189
176
195
227
233
139
177
220
199
250
215
233
229
223
223
205
239
159
166
194
186
162
249
173
183
206
205
207
197
167
226
150
209
207
217
188
191
171
152
239
188
226
200
193
162
207
207
123
174
207
221
200
198
230
245
180
166
206
189
214
180
151
251
201
241
155
240
206
158
213
233
186
212
173
184
230
161
143
187
163
214
148
246
166
234
187
182
251
240
143
208
137
164
242
195
168
214
230
186
219
189
191
227
160
170
166
132
220
190
239
135
147
217
184
207
260
150
144
229
145
263
187
235
193
152
167
206
187
207
192
208
206
170
144
222
187
196
213
230
218
179
155
181
167
239
168
148
193
183
145
201
209
139
189
178
165
179
208
194
152
207
195
257
191
235
216
186
190
245
178
264
258
157
220
256
190
143
261
193
248
238
161
179
208
149
243
178
231
265
187
186
170
244
162
174
221
192
211
200
222
207
226
200
225
177
171
196
194
125
215
175
188
229
206
148
201
257
219
193
195
237
192
160
173
173
177
156
186
183
176
194
190
187
217
219
166
163
173
204
211
217
141
184
204
152
148
214
231
245
257
222
179
240
161
189
173
236
152
208
257
179
187
240
189
204
195
243
212
160
188
211
247
191
232
211
190
178
186
216
232
232
186
169
201
246
206
156
231
185
206
182
241
209
160
242
250
191
238
196
239
147
249
186
207
168
232
266
197
198
155
253
193
213
202
176
189
197
199
181
201
222
197
236
164
184
209
237
190
233
208
210
148
232
169
204
232
86
185
212
215
171
180
275
203
226
206
186
196
197
212
206
170
100
185
131
194
164
180
230
238
227
253
190
155
204
178
236
214
198
204
211
173
144
181
247
206
179
210
209
167
129
180
229
178
132
195
170
223
189
136
181
182
209
195
221
207
191
152
173
179
259
88
216
190
258
209
215
185
162
237
202
229
157
180
154
143
172
191
221
212
159
220
188
227
210
154
221
169
270
180
108
215
168
160
144
163
194
226
220
188
243
213
185
139
208
236
180
243
204
170
217
180
128
216
239
172
148
148
239
159
142
234
163
183
209
171
186
160
221
159
200
129
157
187
171
142
207
256
186
244
130
157
196
258
219
196
226
228
211
158
207
215
239
254
202
162
149
228
276
175
151
225
214
225
219
199
155
164
199
217
204
248
246
80
201
233
193
232
201
159
179
195
214
225
161
239
205
243
201
137
119
205
248
145
162
191
220
169
192
215
245
179
212
250
237
209
196
204
199
188
191
202
148
174
233
196
97
138
217
234
229
194
231
165
211
233
156
168
233
213
167
198
143
235
164
147
251
183
232
215
151
245
199
197
211
242
194
180
203
200
229
225
238
226
234
197
214
204
115
167
211
153
145
233
173
195
230
196
175
199
260
181
169
179
238
211
176
208
244
216
232
185
165
232
255
225
224
203
215
205
167
240
159
218
155
216
218
199
176
297
195
161
146
232
208
198
243
211
161
272
243
174
224
199
185
241
246
175
161
132
164
224
155
197
220
222
224
186
222
161
203
151
226
124
194
224
209
198
221
182
168
208
226
176
164
171
193
187
207
176
148
188
198
209
188
207
195
231
172
146
209
231
153
225
198
260
183
205
196
215
232
209
227
206
278
236
248
248
219
172
207
205
245
197
224
168
149
213
147
177
189
200
204
189
192
233
163
227
260
127
188
221
185
156
190
247
190
213
191
253
218
196
226
252
203
190
166
201
249
175
177
245
262
179
233
272
171
269
194
200
190
219
207
147
247
190
276
184
168
235
186
196
172
214
208
154
131
163
186
142
222
164
187
215
198
188
221
232
281
249
197
163
217
209
189
172
191
207
191
206
215
201
220
166
233
219
215
172
169
196
232
186
267
257
186
225
217
185
201
225
200
215
208
192
212
244
262
256
211
236
203
216
229
210
147
238
191
205
259
185
233
225
186
156
211
189
190
197
206
177
184
193
207
175
175
186
262
231
189
180
214
171
179
165
220
212
186
129
268
203
253
190
186
209
212
231
247
227
228
241
184
169
171
184
169
184
219
195
222
157
211
217
146
162
172
201
274
241
258
238
208
138
225
174
178
221
240
160
220
178
214
219
168
228
227
244
194
191
176
184
239
245
225
131
229
181
236
175
195
189
207
208
130
239
184
231
162
238
224
259
269
213
177
224
245
226
184
230
231
154
188
226
236
279
190
238
205
207
210
210
213
195
242
224
172
197
201
193
172
182
151
153
207
223
202
198
221
186
168
228
216
196
183
209
196
165
234
143
264
221
199
145
232
225
201
181
204
200
181
99
212
227
231
146
203
232
153
203
240
210
186
186
210
163
240
242
203
233
195
180
161
206
265
192
222
209
224
222
240
193
204
153
225
195
164
176
155
184
138
182
235
172
222
194
215
123
152
200
214
160
186
155
189
145
179
211
187
228
199
144
210
188
235
206
190
176
219
229
179
260
192
215
165
137
183
256
184
238
204
162
232
213
178
241
241
248
228
221
246
142
240
157
258
196
221
225
118
212
190
148
200
163
164
206
223
212
241
150
237
112
168
211
205
232
235
273
220
225
153
194
218
163
258
185
173
223
166
219
226
201
156
245
200
200
232
183
270
169
231
221
225
227
250
185
198
174
235
198
207
160
137
191
225
199
238
256
189
229
182
209
218
183
150
206
193
178
193
252
172
209
224
220
158
183
175
203
184
227
196
247
182
144
264
155
164
216
227
215
172
192
271
196
211
194
195
186
172
249
216
194
198
168
234
205
190
236
222
212
224
175
244
213
214
179
171
161
156
194
180
267
162
144
217
199
195
221
211
242
187
152
164
175
190
193
259
227
258
199
197
200
276
176
214
128
231
188
227
219
138
184
183
216
232
233
228
217
186
179
248
188
215
254
172
244
232
184
211
182
199
265
183
187
235
265
229
203
229
223
199
247
258
256
200
147
197
168
210
228
224
205
203
229
146
234
249
166
244
225
230
190
201
193
222
204
211
221
179
273
198
202
172
101
202
202
196
246
221
211
146
168
228
187
185
224
196
165
237
209
204
187
196
199
197
216
175
151
124
135
210
181
238
179
244
193
176
193
135
157
168
183
213
220
215
203
221
163
211
233
208
166
145
226
175
259
179
204
161
210
170
192
215
210
211
228
202
211
199
254
168
231
167
150
191
142
193
198
155
201
185
189
213
223
196
194
224
153
189
251
220
193
164
205
209
237
231
192
185
196
145
204
204
199
180
206
192
210
200
233
199
216
150
244
172
194
158
177
249
172
239
112
205
169
187
211
233
166
233
178
188
189
154
153
227
296
235
204
197
187
198
168
237
233
227
214
195
225
183
168
186
229
164
169
199
233
175
161
235
223
224
213
146
157
210
106
214
176
205
322
199
229
220
183
250
209
197
194
223
156
182
244
187
246
145
254
233
243
231
129
202
165
136
153
247
178
284
134
116
249
178
225
236
232
170
184
178
239
203
178
236
227
212
263
237
208
247
254
206
105
211
151
180
209
259
176
200
187
152
279
160
145
166
212
193
216
222
221
293
238
187
219
185
223
248
183
204
202
230
175
185
198
267
187
223
174
217
212
218
207
215
231
247
244
179
180
223
162
165
253
169
238
237
276
245
159
216
232
235
171
178
204
187
230
228
229
155
250
281
172
238
221
180
147
264
176
196
196
252
224
205
221
165
177
223
195
213
191
176
182
195
251
204
215
214
193
212
224
239
194
214
195
197
159
213
207
263
196
132
175
201
196
205
184
215
190
159
189
197
168
173
168
168
230
185
216
153
222
300
186
170
215
209
172
225
186
163
208
160
265
268
248
155
162
217
189
209
192
119
184
204
219
180
217
228
137
192
194
198
231
196
144
159
220
99
189
201
195
234
171
139
198
145
214
139
198
186
204
277
235
257
169
158
214
217
126
214
228
247
229
242
251
262
190
209
152
278
277
168
224
164
229
184
236
205
204
216
195
211
212
202
201
215
227
176
216
151
174
223
243
255
107
126
243
227
202
185
155
255
213
221
194
167
180
165
250
209
164
234
161
172
196
175
285
244
167
195
185
241
245
266
203
232
195
128
180
210
197
231
233
160
216
157
195
182
159
160
214
200
215
212
176
161
288
169
214
233
179
245
226
209
202
275
154
221
176
145
204
141
247
163
202
226
248
241
208
223
234
258
230
180
233
149
210
195
257
269
235
209
242
175
197
197
185
195
232
218
208
203
220
168
229
281
239
167
193
201
166
199
177
219
218
230
175
198
259
171
159
171
196
188
192
209
254
203
212
190
188
249
253
173
160
177
193
207
241
229
213
229
229
207
169
191
178
236
198
165
204
144
247
134
176
149
226
176
203
239
178
204
233
188
203
164
211
161
199
218
192
166
193
200
149
164
161
177
228
223
200
202
268
221
170
176
203
236
225
220
249
196
164
235
183
235
223
210
215
185
209
194
170
105
206
257
165
238
187
129
224
177
207
221
197
183
217
228
225
184
165
204
259
187
221
155
204
235
236
184
203
219
189
171
228
145
234
217
173
216
184
258
188
177
214
189
221
209
227
203
193
143
241
185
153
188
227
236
167
118
209
196
151
168
228
224
169
202
167
195
165
191
214
203
223
200
212
161
167
168
200
181
218
183
199
216
244
222
154
215
163
213
243
137
211
167
221
270
211
115
117
177
279
227
215
215
199
158
201
224
208
188
163
239
200
213
241
191
234
161
181
245
195
194
163
171
165
239
115
238
195
173
253
198
181
213
256
148
219
210
176
199
213
157
177
228
178
199
212
209
177
226
215
219
160
196
184
220
195
237
164
220
217
199
145
206
188
178
161
199
191
220
193
211
154
175
197
201
275
246
224
260
217
217
219
218
122
165
156
171
254
244
222
210
193
152
170
221
171
197
162
185
215
153
174
226
202
231
192
173
205
186
232
229
209
150
239
224
200
253
246
227
225
237
228
189
223
235
225
195
143
243
203
201
171
181
165
201
211
216
210
205
239
205
171
171
179
174
202
202
201
225
179
94
155
198
182
194
229
173
248
181
207
165
195
226
239
210
185
119
230
256
241
234
194
213
145
151
212
229
152
197
207
252
218
266
227
176
197
166
225
164
180
213
156
208
181
162
232
236
202
175
227
226
193
198
120
158
200
132
195
166
175
220
210
250
265
199
159
237
135
178
151
193
173
190
187
221
171
201
186
158
222
180
169
263
203
121
195
212
248
191
213
205
215
171
168
159
172
176
171
205
215
183
205
186
174
230
245
176
162
167
194
203
158
235
191
180
159
174
188
200
200
179
193
175
198
173
207
241
184
233
216
217
219
164
256
226
194
212
156
253
205
206
137
240
205
194
224
145
167
197
152
238
256
224
158
175
214
219
200
163
147
160
168
198
184
168
194
237
187
228
227
193
151
217
198
159
206
242
181
281
139
203
232
159
162
193
236
284
244
179
198
194
154
252
174
206
241
252
247
127
217
187
172
205
206
152
123
198
284
189
162
225
225
124
212
169
182
179
232
206
213
194
205
146
243
215
176
246
193
135
180
176
188
254
250
202
218
233
232
225
205
189
215
122
162
174
232
165
216
271
185
205
196
216
170
200
219
190
230
191
234
151
220
244
192
226
274
206
219
163
196
133
166
202
242
207
173
257
168
205
190
230
220
248
228
169
213
261
201
227
193
181
226
211
229
195
139
234
213
100
215
203
205
254
217
228
234
227
153
247
182
230
253
230
263
216
164
154
192
202
172
246
216
164
165
234
206
218
157
203
231
138
224
195
208
235
160
140
151
146
225
281
197
209
228
196
232
152
179
147
173
232
207
172
219
162
238
141
269
263
201
229
235
176
257
183
228
275
200
160
155
165
188
246
212
150
230
182
220
231
210
240
223
223
149
201
171
251
226
230
195
174
219
178
220
171
206
218
176
175
253
239
216
230
194
195
151
170
115
192
216
180
180
256
191
275
157
208
176
209
159
243
232
203
172
277
181
220
200
183
167
234
227
196
215
188
212
193
197
192
183
219
155
232
195
154
225
241
249
189
204
154
141
214
231
210
179
185
233
224
181
156
252
277
160
119
251
191
136
171
191
142
183
180
193
186
239
175
160
165
168
216
239
246
212
138
165
160
194
243
231
186
220
211
136
235
238
163
221
212
278
171
128
193
191
204
183
180
167
178
210
240
174
235
142
194
139
226
172
233
174
214
222
159
173
214
176
202
195
241
190
223
229
164
214
181
170
236
207
183
243
214
200
162
132
134
217
182
216
229
218
278
240
205
175
159
163
213
190
214
208
185
210
190
173
145
198
247
163
226
203
192
187
226
220
165
193
186
234
207
198
206
139
230
221
222
225
217
224
188
149
197
212
132
186
167
170
147
231
188
220
191
225
204
207
186
280
244
199
240
207
122
197
240
181
233
218
194
203
191
214
224
209
198
220
246
271
225
217
137
178
193
178
205
190
201
162
241
200
203
273
212
208
216
159
205
242
200
202
254
190
209
217
184
266
217
198
192
200
194
157
202
188
216
229
165
151
196
209
216
200
176
175
254
137
207
151
220
167
211
278
183
216
158
177
245
161
122
273
201
251
242
237
165
219
203
125
134
198
108
230
236
125
228
147
171
211
203
247
167
206
226
160
161
219
219
225
252
170
125
202
161
231
251
176
203
191
255
202
178
187
210
221
211
169
226
197
176
230
214
226
222
244
174
211
247
150
235
212
157
236
199
208
218
200
171
189
131
252
166
180
123
195
200
260
204
232
168
229
178
228
263
185
200
166
150
229
161
180
204
177
201
191
218
170
181
209
221
215
160
232
286
188
222
213
200
216
179
206
163
172
218
185
239
186
178
170
191
257
213
162
221
114
199
169
171
242
147
183
172
188
154
223
213
203
214
159
230
196
222
132
146
204
284
264
196
187
240
169
218
254
202
209
218
224
143
276
178
225
238
259
216
213
178
190
222
234
203
159
180
180
202
219
223
214
177
134
190
218
213
174
165
227
232
209
144
183
216
197
203
188
175
140
217
215
218
279
232
223
184
185
260
219
181
170
211
197
242
153
162
184
232
163
185
162
191
238
228
202
190
246
188
167
203
199
219
248
177
251
210
161
244
125
220
189
181
204
244
188
185
197
172
202
216
171
240
96
201
170
223
212
111
154
158
229
224
140
232
199
214
203
208
199
254
206
169
203
232
196
190
191
145
202
235
202
231
235
249
214
245
160
210
180
165
270
155
153
261
184
178
244
224
132
196
266
169
157
120
227
184
224
137
233
162
166
267
227
192
179
236
174
220
156
241
205
207
175
232
187
147
188
222
264
183
218
208
214
174
244
189
139
192
153
169
221
255
226
212
164
172
188
213
252
228
272
170
221
242
195
213
179
179
187
255
240
186
185
211
145
220
214
158
227
233
244
143
149
207
212
231
213
212
156
219
122
151
255
179
217
193
225
182
204
164
244
201
181
170
164
229
187
230
204
177
167
198
152
156
165
155
234
249
213
181
246
156
168
165
207
171
228
210
254
193
210
226
181
181
184
141
229
242
185
199
148
169
217
231
250
219
156
128
201
221
223
243
205
194
136
187
203
181
231
138
189
254
144
194
196
211
155
249
108
240
205
173
204
196
188
183
284
224
221
198
249
219
134
207
256
230
121
173
213
118
181
207
187
249
208
210
169
176
174
215
146
204
197
180
211
199
213
188
234
132
207
273
258
215
165
214
230
174
193
189
214
257
197
192
212
182
159
176
178
186
217
194
215
241
183
211
209
161
185
182
230
270
190
241
195
225
252
205
203
166
179
225
227
194
115
125
182
231
157
242
145
210
179
202
171
153
200
187
201
204
123
168
202
198
253
188
164
232
243
202
201
129
220
227
260
242
88
219
129
229
201
229
173
210
191
191
199
242
241
215
258
177
183
190
224
176
161
197
233
194
255
223
183
150
165
249
215
201
224
222
166
206
199
223
154
224
212
194
203
156
203
237
194
235
183
239
288
194
226
239
169
184
180
191
184
238
219
157
225
167
206
189
197
244
183
208
221
227
198
214
181
229
197
179
234
180
162
191
207
214
250
193
303
153
137
230
191
187
162
178
165
197
204
205
200
92
204
159
181
200
198
190
249
186
212
242
195
225
220
271
223
172
228
187
177
219
197
214
243
155
205
236
172
245
146
199
174
240
212
195
244
179
171
191
204
179
202
158
264
152
248
123
241
212
189
185
243
199
157
217
160
185
212
219
176
230
204
228
269
160
218
154
199
195
201
165
179
190
204
204
186
195
222
246
201
195
180
146
199
191
185
231
202
190
232
175
182
227
161
229
231
189
187
208
265
258
209
256
187
185
140
215
200
248
199
254
179
203
187
239
231
226
250
237
232
238
226
211
204
229
195
253
256
176
178
271
212
215
235
255
154
218
249
110
152
170
207
197
187
245
204
160
209
165
194
213
231
176
251
202
186
223
203
108
174
237
124
183
234
174
214
256
183
151
170
265
218
161
237
180
177
142
193
198
177
226
204
177
216
190
232
194
244
202
259
159
209
163
196
284
189
160
174
143
194
161
225
246
192
182
139
233
171
220
299
213
213
222
200
151
197
165
222
202
218
125
212
215
168
265
218
189
206
249
245
164
219
234
226
190
236
196
199
224
155
165
206
216
167
235
185
152
235
228
246
244
175
263
214
228
186
194
245
221
248
215
163
271
214
177
233
259
227
189
136
179
214
244
213
219
180
212
214
180
187
172
204
213
196
192
191
233
210
183
167
223
188
150
171
169
196
229
248
238
154
238
194
193
224
186
165
193
195
207
259
239
148
176
172
213
213
146
215
199
239
233
182
257
194
193
206
197
197
125
205
227
192
255
167
178
198
224
204
150
184
196
228
157
167
209
225
215
196
224
287
269
218
223
210
235
258
244
232
197
219
197
245
190
180
264
252
195
228
226
184
246
192
236
202
232
200
194
180
213
224
204
221
150
193
182
196
193
129
254
136
247
209
263
209
186
185
240
169
245
176
170
220
247
264
213
226
216
225
183
233
211
213
240
185
202
199
123
198
175
250
161
200
148
173
199
182
155
233
200
237
149
217
222
165
156
259
253
184
186
221
228
195
198
242
224
188
198
207
242
262
157
178
151
176
192
163
146
188
173
191
194
196
196
163
161
238
153
179
164
234
197
242
232
199
235
157
195
168
175
200
216
185
178
217
186
215
263
233
245
218
185
188
156
161
188
199
220
237
222
180
210
154
179
168
224
203
223
212
205
169
253
234
234
186
193
220
190
184
236
216
185
179
127
171
192
287
205
195
217
178
134
209
238
226
155
248
157
198
197
182
236
208
248
224
256
171
207
207
192
208
208
173
173
228
216
206
176
176
207
156
194
170
229
211
195
219
204
180
194
172
198
222
220
209
233
148
176
201
209
232
203
179
203
198
179
118
195
187
255
203
222
162
220
232
258
208
210
226
164
211
158
201
229
214
211
267
228
234
172
164
158
217
176
165
201
193
136
178
248
224
278
212
249
134
204
206
146
148
209
233
229
202
185
241
249
218
197
204
173
107
212
182
222
168
189
190
191
195
222
207
195
202
231
161
209
268
250
168
224
205
198
195
204
167
176
200
110
242
205
170
193
219
198
278
238
166
154
186
164
162
143
182
186
251
178
176
211
165
177
204
192
217
162
149
223
207
164
168
193
174
157
173
181
252
215
172
208
133
174
142
178
226
243
215
181
211
144
183
204
231
214
259
136
210
196
231
239
160
236
175
165
225
200
179
212
153
219
219
184
182
221
164
206
193
175
263
141
199
158
186
250
182
170
204
193
176
175
192
179
221
179
177
188
243
198
161
200
232
223
189
237
269
203
189
200
269
223
168
204
147
154
212
178
173
180
252
195
208
194
207
202
236
141
197
132
223
214
268
238
208
117
138
201
220
161
210
197
190
215
200
210
202
195
185
220
212
151
236
224
233
190
202
246
215
177
176
140
218
232
236
185
169
252
190
141
168
156
191
198
174
257
227
216
183
177
200
186
240
175
165
170
198
178
198
244
224
183
250
187
166
197
127
154
166
298
181
197
131
149
219
228
236
184
142
223
155
218
189
234
168
199
226
218
177
192
159
226
223
234
191
169
154
177
177
123
214
204
198
233
212
217
191
235
189
169
258
190
193
193
221
199
227
254
175
222
182
222
197
171
174
236
163
228
190
237
213
244
199
261
261
204
217
190
181
229
226
169
163
240
202
158
221
172
227
233
189
140
197
216
162
134
201
177
210
189
204
174
169
201
193
141
218
177
213
239
187
236
242
194
151
192
168
244
134
179
253
174
212
153
237
179
162
161
197
235
172
154
217
211
172
210
248
208
258
234
163
203
223
185
252
209
181
184
189
217
195
221
250
215
211
245
202
199
208
154
215
146
136
250
191
189
224
167
201
207
178
233
144
173
144
203
198
225
199
185
222
190
212
219
202
188
209
203
241
196
193
193
199
260
172
186
221
165
213
161
206
229
205
140
128
110
265
176
154
159
263
217
166
218
207
165
215
217
240
266
186
247
252
257
235
200
202
206
220
220
212
156
225
289
215
183
111
147
222
246
235
190
242
252
198
223
224
123
224
211
228
172
180
210
174
171
226
127
237
232
166
166
176
237
202
239
142
229
222
198
154
101
171
156
172
230
210
187
154
224
161
197
166
245
184
236
229
140
220
208
186
181
128
159
246
173
228
256
206
194
164
219
220
208
209
223
154
199
122
184
211
156
204
246
250
256
252
160
165
168
239
266
196
179
204
164
154
193
218
237
182
227
206
222
178
258
238
231
205
238
191
244
179
206
219
213
198
230
224
184
165
182
216
201
200
185
180
190
213
230
157
210
126
216
185
237
234
126
208
191
160
188
166
177
226
133
228
205
200
150
164
132
161
181
266
180
212
181
178
272
245
211
252
261
226
232
202
219
219
208
191
224
260
266
175
258
186
175
222
247
254
197
167
221
187
200
149
228
137
214
197
204
180
202
186
166
261
182
284
187
210
236
158
185
196
185
196
112
259
144
213
155
174
204
185
222
162
232
180
223
200
270
211
240
258
196
200
153
204
254
112
177
250
163
199
151
214
162
194
205
173
253
277
160
234
200
270
217
237
177
238
261
224
216
157
158
238
211
253
227
211
194
191
216
229
215
201
231
195
229
172
183
158
188
197
212
160
223
186
220
237
147
198
231
166
188
177
203
131
185
206
224
147
154
224
186
160
240
211
265
164
165
160
164
225
210
267
170
197
141
181
249
270
219
237
221
155
214
136
136
222
229
217
185
218
214
159
177
259
224
255
189
163
119
220
153
234
186
166
184
199
151
265
182
191
238
225
213
201
184
209
189
181
185
189
214
181
210
215
139
164
183
208
214
262
237
242
226
199
174
135
183
193
192
212
169
177
197
233
189
166
161
219
177
231
122
215
269
242
132
190
206
215
231
222
168
192
244
183
233
177
233
153
153
219
202
182
199
235
217
189
210
230
153
265
201
163
242
177
212
258
213
188
227
158
175
235
188
182
231
173
199
193
262
202
197
159
208
220
179
219
140
160
197
147
235
246
155
217
171
218
199
229
182
213
171
213
220
149
186
166
228
139
212
239
194
182
124
138
188
204
232
188
188
164
225
237
189
197
153
190
159
184
176
195
125
199
243
185
160
208
198
234
262
251
161
241
172
170
209
215
159
199
161
183
236
234
230
205
180
177
196
134
194
245
192
258
224
236
201
154
198
223
202
191
229
176
178
187
237
255
251
169
221
240
223
179
202
166
177
201
121
229
180
233
254
218
248
168
224
230
177
198
197
242
221
251
132
171
146
124
219
217
234
164
197
196
185
185
176
256
182
189
203
242
226
218
202
221
234
138
246
186
224
207
182
191
228
241
114
116
248
216
155
189
287
221
203
161
248
207
145
182
273
238
228
131
182
162
149
242
241
185
218
230
172
195
229
251
222
176
202
181
149
174
211
212
214
220
176
227
257
147
168
166
235
187
212
208
128
164
125
215
151
278
215
221
192
194
104
232
233
196
222
171
182
175
242
241
204
208
225
195
210
235
230
189
161
246
222
217
251
247
175
243
292
232
161
177
207
187
160
104
236
174
251
236
225
273
207
218
258
223
174
166
210
186
194
186
146
172
247
141
187
174
243
226
200
218
193
227
182
247
155
247
223
213
210
207
184
197
235
235
205
219
148
197
234
186
217
203
226
198
183
221
197
224
195
162
205
259
154
268
188
228
237
165
215
208
190
254
177
249
239
198
259
217
209
235
167
207
150
204
158
227
225
238
166
202
128
224
226
137
224
212
182
242
169
235
189
258
180
230
210
178
144
219
191
219
221
215
163
284
179
245
234
220
226
208
204
195
181
200
165
183
181
196
218
219
205
187
250
183
207
201
228
233
208
177
216
140
213
228
181
168
260
230
185
147
206
178
184
203
226
161
191
164
116
159
193
213
199
173
236
219
222
183
140
178
231
255
237
166
128
197
193
152
219
120
195
162
172
216
203
229
144
151
206
229
170
164
200
194
135
241
205
221
108
244
221
148
182
191
208
206
204
145
267
206
208
218
188
178
207
202
173
174
121
267
231
211
216
206
194
213
217
240
236
186
179
223
178
183
211
174
200
135
265
190
212
186
207
188
214
207
259
232
186
177
158
227
219
167
200
257
144
232
215
181
124
167
202
201
235
192
176
160
204
188
240
205
229
207
165
194
130
227
209
271
204
236
204
170
193
197
164
236
225
212
204
192
179
196
205
218
190
257
195
197
225
204
217
189
230
199
215
161
172
218
173
263
194
219
181
213
187
237
193
194
242
231
190
238
273
145
269
237
165
173
228
157
194
137
211
145
151
145
221
220
161
191
184
219
197
184
220
233
237
168
241
232
221
179
234
207
250
211
97
212
180
155
235
191
195
232
220
183
212
192
196
188
232
191
148
167
227
223
237
227
229
155
166
168
146
185
186
192
253
206
195
216
230
211
173
252
212
150
166
228
173
179
197
184
221
179
252
132
189
239
195
218
166
270
194
152
227
206
253
158
184
206
234
195
235
192
206
250
218
221
184
187
182
176
236
129
205
207
152
191
201
199
190
178
228
252
188
166
260
225
192
167
197
165
159
187
210
149
233
151
150
216
209
198
212
208
136
207
228
196
206
191
199
217
214
215
207
160
180
231
197
263
169
163
184
127
182
254
199
187
247
208
167
220
169
206
235
184
222
208
208
170
210
228
193
187
220
174
197
160
148
193
199
211
175
185
210
154
185
204
205
166
192
158
200
147
193
192
210
111
192
169
253
205
149
148
179
187
187
219
253
215
210
210
148
178
196
237
166
256
206
178
235
214
165
147
149
212
171
185
223
259
249
171
176
200
204
204
161
148
163
175
207
165
207
196
266
151
236
163
202
208
189
209
239
195
235
169
207
220
193
205
189
122
211
164
183
226
230
198
214
204
192
216
198
192
201
239
226
176
190
101
204
260
185
199
235
168
178
187
208
146
189
196
145
243
228
239
168
162
228
227
258
190
180
206
184
211
193
166
248
233
247
214
188
182
157
153
147
221
210
240
189
206
188
189
199
182
244
185
211
182
211
187
265
245
229
187
233
173
208
167
166
190
209
217
198
154
253
257
167
207
232
146
192
237
230
110
188
153
221
211
242
217
173
176
215
183
273
269
183
214
175
263
182
259
210
215
190
220
147
201
248
172
195
160
182
188
244
176
133
170
212
189
188
148
245
194
208
244
154
200
190
241
205
201
199
100
229
159
183
161
285
219
202
236
153
210
221
159
218
232
115
131
198
148
190
199
217
167
202
248
177
227
221
250
235
160
212
177
191
190
217
226
246
173
144
194
184
182
211
219
198
227
247
207
133
189
251
252
160
274
176
185
214
184
187
195
192
188
216
240
165
218
207
237
227
232
191
147
217
219
203
173
135
185
217
179
180
178
190
176
143
232
200
193
207
213
211
176
171
193
231
222
223
148
194
247
146
221
195
208
136
263
182
142
233
164
180
198
211
135
140
204
182
229
198
165
219
175
241
216
161
140
218
190
222
220
173
132
190
200
172
265
204
213
191
147
139
223
224
183
249
274
208
156
182
238
224
187
186
220
145
230
144
212
213
202
215
189
118
173
207
199
178
157
197
162
227
195
217
219
212
155
142
182
221
235
158
177
237
221
160
206
205
216
235
190
197
198
185
198
217
210
223
199
228
158
197
259
221
245
138
212
188
202
210
210
239
233
201
227
198
187
157
242
212
180
257
216
198
198
127
244
194
179
180
215
182
154
215
247
198
201
217
181
203
114
165
132
219
199
236
160
269
161
250
140
169
255
159
268
201
150
131
197
252
175
190
230
168
197
252
204
195
249
239
234
246
203
180
206
209
202
203
206
214
121
209
226
200
170
242
202
168
185
252
160
136
227
149
234
180
110
207
265
130
172
231
221
238
180
187
170
194
208
191
212
169
214
236
139
174
213
251
189
197
163
209
204
167
251
205
146
175
229
134
236
182
176
237
183
207
208
217
270
198
260
176
238
216
233
175
225
186
197
174
228
183
211
160
196
189
223
188
173
214
251
222
238
199
183
180
220
232
245
183
205
215
195
217
224
86
161
129
219
177
137
185
162
223
216
211
198
250
174
209
205
128
220
272
198
235
194
172
184
149
236
208
200
163
164
221
201
270
271
218
263
164
140
220
203
270
208
218
183
202
219
240
208
222
136
187
245
203
200
240
253
225
225
192
189
225
213
212
242
227
119
136
220
207
238
250
203
190
229
188
163
212
196
127
301
249
147
206
204
209
184
193
217
215
195
182
184
178
216
237
239
220
192
229
195
203
179
192
182
215
148
191
212
208
248
222
210
265
164
281
160
182
180
173
219
253
238
296
193
155
177
171
204
234
196
205
226
257
184
199
179
213
236
215
219
209
236
174
173
219
162
256
202
209
120
197
170
238
194
168
233
154
201
201
162
190
221
248
269
143
183
190
148
241
216
217
208
188
199
166
175
116
177
212
220
230
187
142
235
229
252
228
179
197
202
160
232
233
246
211
160
203
179
160
199
182
194
141
198
170
170
211
207
234
225
165
229
206
201
204
157
109
190
121
157
183
198
220
212
204
162
193
236
150
141
181
175
189
207
147
179
229
227
196
180
248
221
258
167
161
239
247
162
167
206
213
249
195
212
176
232
183
208
246
153
180
242
231
167
206
227
257
209
251
200
182
250
289
169
163
226
180
187
204
258
185
195
214
169
242
210
218
181
231
194
211
193
185
222
196
202
200
164
202
143
212
176
221
197
222
170
186
145
217
162
195
192
201
259
165
250
201
197
165
194
196
178
212
188
156
216
214
235
194
191
192
227
208
198
181
175
234
157
223
194
211
193
184
233
254
145
144
148
248
212
189
179
186
181
209
211
148
244
181
233
200
211
224
207
280
178
194
245
255
147
212
181
225
179
166
188
230
257
214
197
194
218
195
188
193
215
172
164
238
201
239
159
205
225
192
199
231
196
265
210
224
189
179
176
193
196
194
244
144
217
270
162
228
207
167
247
203
206
194
219
173
206
154
212
231
167
199
182
217
129
224
147
187
261
163
249
234
195
180
207
235
245
241
205
198
237
116
152
165
195
203
192
225
193
203
202
201
236
233
152
200
195
224
193
172
168
217
213
192
155
212
162
182
199
197
229
238
170
165
184
182
233
168
200
259
203
193
245
123
229
196
155
249
172
179
174
242
186
180
176
225
175
182
264
223
216
181
204
186
187
197
200
201
174
190
185
162
167
237
160
191
208
270
275
243
182
189
199
200
183
213
176
196
182
222
202
165
170
138
164
220
223
169
252
184
145
138
202
205
201
214
145
142
227
169
117
257
191
173
187
203
188
198
216
197
117
219
262
211
220
193
213
224
201
230
216
167
264
190
160
184
164
183
216
241
251
231
199
141
162
191
174
166
173
226
203
243
213
185
217
197
222
154
147
172
156
244
186
202
207
264
216
244
153
206
212
240
202
170
180
178
219
242
180
191
213
128
252
202
271
178
196
260
190
237
162
153
228
157
246
209
203
163
175
225
212
224
215
210
234
271
219
184
174
200
215
175
186
192
282
238
218
159
238
173
209
239
187
165
260
253
164
156
161
209
184
195
143
191
149
202
242
176
211
174
190
205
138
158
163
198
190
234
235
225
182
262
225
206
154
200
214
187
208
211
200
177
176
208
202
189
195
196
274
156
196
189
224
214
288
222
206
171
225
241
195
244
230
166
194
191
176
236
193
223
156
200
229
154
229
131
184
142
205
224
216
238
195
202
210
241
270
240
159
256
258
216
204
246
155
230
208
160
255
254
138
155
224
216
174
201
240
219
236
106
221
220
199
188
229
237
217
218
196
212
130
236
152
225
232
223
161
217
148
159
246
251
174
162
190
274
196
176
235
209
191
175
195
171
213
218
235
283
242
181
221
193
243
151
191
199
215
199
181
179
202
213
184
205
235
189
213
194
217
211
152
196
219
215
241
216
198
237
214
225
242
180
187
218
199
163
154
177
157
237
255
144
221
165
144
183
211
130
173
218
207
238
203
257
263
253
165
204
257
223
248
198
205
159
223
155
238
192
192
202
196
117
159
238
191
221
137
209
255
223
180
267
175
241
150
211
197
216
256
175
188
163
255
238
190
210
182
200
202
225
147
187
200
217
214
201
217
184
158
181
241
210
214
204
173
251
182
222
119
170
222
211
208
223
203
207
240
229
164
175
184
192
215
198
248
202
173
147
194
240
194
161
214
218
132
217
155
175
242
149
228
188
163
161
232
253
267
201
202
223
140
181
229
232
202
170
167
228
154
184
195
232
152
211
203
266
193
203
178
207
155
218
252
200
178
209
201
203
161
207
172
190
161
247
238
200
251
238
239
194
144
195
205
226
196
168
215
251
215
194
188
221
198
174
221
179
206
191
211
184
226
172
226
234
206
176
194
235
190
189
245
217
199
168
214
153
241
127
235
193
171
268
210
219
184
228
199
205
164
195
200
176
233
216
176
248
139
168
227
192
180
243
135
161
172
174
175
196
219
184
211
175
163
176
217
208
186
194
241
197
150
172
167
173
193
191
267
253
200
233
143
176
198
174
165
194
239
217
178
194
214
207
234
189
238
163
235
215
246
230
208
262
205
230
227
206
259
199
159
223
151
188
201
195
252
138
187
226
284
179
254
190
240
182
188
202
184
198
247
211
167
226
204
257
219
113
176
259
193
238
243
234
195
181
218
190
189
254
223
214
162
193
213
225
249
200
204
177
200
99
258
209
209
228
202
226
139
206
137
244
149
173
208
204
166
238
131
223
220
202
268
157
214
150
202
193
161
253
170
181
232
187
159
216
204
223
200
211
156
279
188
170
157
206
244
188
191
218
181
182
193
185
246
217
181
175
151
176
232
269
208
117
217
152
235
223
186
210
223
211
244
139
226
235
172
205
216
230
214
238
204
199
250
169
190
206
165
226
217
221
204
203
184
227
215
207
203
250
216
187
216
207
167
194
172
235
215
239
189
150
188
216
177
184
195
184
196
201
205
222
204
227
232
218
234
192
177
164
212
182
152
144
114
207
239
190
117
154
241
196
173
228
173
183
225
196
201
182
212
178
229
189
258
245
205
219
212
190
198
225
204
182
250
246
223
196
248
192
224
191
211
140
152
212
208
215
170
182
189
247
210
197
222
212
209
208
189
163
181
207
182
238
217
175
182
170
212
185
147
186
226
238
199
199
241
213
210
259
179
236
176
238
216
127
202
122
227
195
170
169
185
209
213
220
177
217
178
163
224
279
183
160
198
132
194
121
210
182
217
140
167
163
179
215
225
274
210
211
220
211
204
192
183
197
187
198
161
241
224
242
229
193
182
219
163
206
217
201
217
168
229
273
184
235
181
212
219
213
179
188
203
150
207
233
225
195
196
149
306
162
191
247
238
237
147
161
113
226
160
222
234
182
195
210
232
182
176
181
221
242
185
239
180
239
223
230
213
184
204
147
266
153
204
202
263
189
238
241
215
181
222
202
248
228
89
202
242
212
201
217
235
202
189
204
198
189
201
176
207
156
173
137
219
201
212
215
157
189
241
173
216
233
194
219
155
179
223
162
183
230
250
147
249
257
181
199
166
203
201
219
165
219
241
221
258
225
214
219
203
225
206
193
215
201
204
174
186
224
223
103
147
216
151
135
210
155
215
198
169
233
146
214
196
254
199
167
220
196
187
195
202
246
178
172
201
221
217
237
138
192
172
210
211
262
236
155
199
253
208
224
202
177
179
192
187
142
247
148
133
187
180
186
162
154
204
235
206
202
236
249
197
186
186
181
154
238
143
178
257
242
242
154
207
186
173
150
231
171
138
198
198
211
143
214
171
228
260
123
187
212
154
256
140
175
190
266
227
191
207
210
212
201
222
224
240
243
325
208
184
168
194
242
272
176
178
233
203
194
216
210
178
175
180
198
144
191
223
217
161
233
223
162
227
225
217
153
202
182
206
210
170
253
269
167
225
168
198
225
246
174
194
140
244
186
209
80
203
275
261
219
199
236
229
256
148
227
185
192
213
224
240
189
164
202
180
153
182
223
189
203
147
154
140
232
95
169
196
222
262
159
155
209
147
220
181
160
214
169
233
221
197
140
208
229
213
255
196
178
164
191
248
172
183
194
224
206
150
215
218
181
180
227
189
191
178
250
198
212
179
224
211
173
214
238
180
229
173
242
161
111
251
139
181
160
175
206
174
191
186
218
205
237
169
184
227
196
218
173
193
226
168
153
227
141
201
255
132
150
179
195
266
206
185
166
162
153
228
180
205
194
195
209
192
162
193
199
175
218
207
154
276
221
229
166
228
244
222
250
150
176
155
157
191
199
173
231
178
177
145
251
235
186
194
150
240
239
168
184
241
249
186
181
255
206
201
234
197
243
237
220
202
196
185
192
189
184
208
173
186
236
225
156
212
185
202
196
230
189
182
206
190
145
168
118
168
228
196
187
209
205
253
169
205
161
275
199
218
221
179
138
223
231
184
244
214
172
216
219
199
265
178
166
181
196
267
132
199
224
168
157
221
132
163
148
218
221
178
216
180
224
152
171
216
210
212
151
215
169
232
218
244
218
234
237
162
140
211
194
199
222
175
197
274
209
222
240
193
160
172
204
204
253
223
164
199
185
181
174
204
174
189
171
230
171
229
197
190
160
189
236
199
121
211
259
178
175
227
248
150
162
181
171
209
176
233
179
222
221
219
160
246
182
171
197
237
211
251
202
226
204
235
235
218
119
173
202
204
227
154
223
172
250
222
235
213
198
132
215
186
181
267
145
279
144
153
200
232
230
170
204
199
192
174
73
174
236
184
154
238
230
178
249
218
177
185
143
222
208
225
208
244
212
271
199
159
201
221
216
160
222
201
154
211
219
195
217
169
181
261
195
190
238
222
250
158
194
218
230
182
251
177
143
209
162
223
245
205
206
247
205
232
148
189
177
184
253
168
203
210
214
203
246
213
252
140
270
206
204
211
203
185
189
192
271
193
193
210
170
154
124
170
259
212
154
207
213
207
215
246
249
161
178
201
232
198
156
179
243
180
201
246
222
211
234
135
196
201
247
183
216
141
224
165
220
246
166
230
189
150
189
235
195
188
211
192
191
211
166
242
189
202
205
185
164
160
174
194
215
210
181
228
180
201
174
163
185
260
158
147
144
223
212
185
201
250
231
170
202
217
220
165
262
179
236
221
198
205
227
206
186
214
208
225
210
219
196
203
236
219
213
192
205
267
172
201
184
183
166
228
210
201
199
224
208
205
266
210
191
191
157
200
242
215
216
180
200
200
167
192
212
190
181
191
189
186
143
181
195
208
191
155
235
209
170
173
198
178
178
207
223
198
203
242
211
195
255
182
212
138
220
147
267
193
186
157
185
147
236
240
193
230
212
175
208
245
152
163
191
132
167
227
174
215
236
212
173
184
216
194
192
194
212
238
152
212
273
188
241
240
183
230
192
190
181
205
146
233
180
126
166
241
206
177
255
200
147
214
183
142
188
97
248
175
175
194
176
280
149
157
191
235
192
198
176
189
182
222
197
199
189
215
176
127
198
186
167
164
233
217
190
225
190
249
194
233
220
156
230
218
196
199
158
243
226
144
221
194
244
218
204
278
140
213
213
139
234
166
169
257
185
170
224
204
240
206
211
145
176
219
189
161
135
224
162
231
240
231
163
190
180
179
162
185
261
173
213
226
170
187
186
158
215
170
292
201
127
198
186
261
155
237
173
183
231
137
246
125
186
210
210
222
200
184
220
231
287
211
198
205
178
203
213
187
174
134
170
230
231
193
214
180
193
152
186
228
214
174
226
156
220
197
143
183
198
206
211
200
238
219
208
108
183
186
194
190
174
222
265
178
131
210
229
273
186
211
208
237
207
195
188
223
220
210
163
234
213
266
190
224
262
180
207
179
243
188
249
203
188
184
201
246
222
272
230
138
221
231
137
137
231
195
193
175
227
221
215
199
148
234
224
196
183
215
184
184
150
262
212
150
236
119
170
170
263
206
223
205
193
199
143
244
178
178
235
208
202
260
215
209
182
187
215
231
210
251
243
191
213
168
212
234
223
210
227
174
238
184
214
184
234
240
172
187
228
168
134
202
163
163
173
232
272
216
207
218
256
186
119
119
230
226
234
206
186
177
176
171
218
238
239
210
200
243
242
156
210
227
202
229
102
225
201
191
183
244
242
275
238
213
197
180
224
157
227
192
163
137
230
176
202
246
172
133
202
195
159
197
201
267
149
194
156
204
109
197
198
198
201
189
270
215
243
183
189
269
167
183
176
240
176
217
211
230
270
205
240
144
139
188
194
214
205
185
230
227
202
206
194
220
220
192
242
212
169
249
160
149
202
132
276
248
176
207
131
280
222
218
226
170
257
217
195
187
171
251
152
206
185
236
194
164
142
215
195
193
229
150
172
178
144
204
192
211
160
199
248
209
192
181
191
236
193
198
205
204
219
262
231
204
217
182
158
186
143
161
193
170
247
231
159
187
182
162
187
214
223
221
300
251
243
204
231
150
239
188
160
210
152
239
142
244
187
200
171
213
187
165
196
216
172
190
210
231
145
178
199
196
150
187
187
256
186
245
214
203
197
187
168
271
255
217
198
221
176
244
220
169
180
176
176
180
159
163
233
175
248
124
166
202
175
136
253
260
185
107
181
177
180
189
247
146
151
134
149
202
234
194
181
198
233
232
209
212
150
184
176
162
235
180
202
211
214
190
248
144
144
204
221
200
214
147
249
225
214
202
183
197
174
176
224
197
181
203
217
242
212
217
184
204
248
190
250
167
195
204
230
208
196
140
215
185
204
254
229
173
229
227
101
268
176
183
221
180
212
200
244
249
162
198
213
155
212
185
255
167
173
189
180
224
248
188
188
165
197
186
192
209
171
217
185
253
215
151
178
205
189
206
167
209
186
241
207
192
232
180
192
178
153
162
233
185
232
216
245
225
186
139
160
198
210
157
199
177
196
177
197
230
225
214
196
171
205
179
241
183
233
190
247
255
208
203
191
148
240
197
180
192
229
219
179
232
200
227
179
191
173
195
224
144
215
119
212
223
145
192
155
219
146
172
247
198
157
244
265
142
174
229
128
131
191
179
199
242
179
244
216
190
194
187
247
166
194
142
213
214
155
241
160
184
195
198
206
129
174
208
232
172
245
186
218
147
200
223
169
165
186
204
196
219
158
242
172
254
218
197
233
194
188
205
141
265
248
183
250
227
207
202
195
240
189
214
237
174
228
216
158
233
193
211
231
178
235
197
186
157
203
207
199
175
224
231
146
222
168
192
165
243
213
156
161
166
153
206
133
164
219
228
211
170
232
166
233
234
181
188
209
171
247
221
185
253
157
225
228
219
253
230
229
241
198
250
204
260
187
222
219
217
241
202
241
144
236
148
179
253
193
245
233
195
178
211
153
199
172
167
185
232
183
272
243
162
206
257
119
117
173
199
201
200
194
177
176
142
187
215
147
204
186
243
217
215
191
204
184
171
164
227
190
214
203
220
155
224
191
273
240
219
215
165
165
192
202
228
180
246
237
178
139
165
226
225
241
181
180
185
253
147
211
223
181
249
244
184
207
201
265
203
221
193
143
169
214
240
209
188
254
212
214
229
226
243
211
136
161
181
226
192
195
186
232
143
171
213
170
189
250
253
151
202
184
166
236
197
203
255
217
232
200
172
177
194
225
236
247
231
190
212
191
191
139
201
182
143
202
163
214
181
228
176
204
237
270
175
225
219
228
216
231
195
213
223
190
143
164
193
255
246
196
220
203
229
119
210
222
198
186
226
173
195
211
248
156
224
223
145
236
207
185
182
187
184
225
221
217
246
206
168
179
200
192
176
207
164
220
208
168
156
192
245
238
213
242
252
185
174
162
175
216
202
225
171
154
254
176
180
200
148
196
182
154
150
225
205
176
223
144
170
207
192
224
188
147
231
143
247
162
162
221
245
202
192
224
204
241
235
177
239
162
206
205
153
167
221
178
227
240
216
206
248
127
183
226
234
146
237
211
210
204
242
208
180
197
195
221
221
202
203
209
228
106
188
220
205
182
116
202
192
192
162
233
165
186
255
197
194
239
238
132
236
233
158
223
150
188
216
243
229
186
161
246
189
194
197
226
182
216
240
152
131
227
158
210
184
217
254
163
197
172
210
200
155
231
245
226
179
264
190
249
229
174
224
182
180
200
173
237
175
195
215
187
205
250
163
186
214
233
184
178
201
200
224
239
230
189
182
216
276
182
167
151
198
142
172
128
172
245
253
207
244
148
246
218
193
134
221
183
239
138
187
160
164
243
210
206
197
169
203
189
239
240
204
135
131
187
192
208
185
194
281
202
200
213
153
231
194
222
199
201
246
257
172
199
165
174
246
232
120
231
198
149
257
217
233
200
167
237
208
228
165
203
233
257
170
207
191
150
176
202
276
224
149
200
209
177
293
234
212
186
180
221
155
129
209
180
194
164
174
156
196
196
231
256
220
161
105
155
214
206
278
210
213
184
187
210
203
236
185
224
215
196
233
159
183
167
152
202
171
244
153
195
213
172
156
188
220
245
140
225
196
206
173
167
158
218
179
214
195
212
203
181
206
181
215
173
120
182
120
247
201
220
223
204
192
247
205
187
186
199
168
276
196
190
210
133
162
260
225
203
217
184
139
206
226
227
181
208
204
197
216
238
197
148
191
174
169
205
234
202
267
184
235
242
187
167
179
142
184
160
236
177
229
223
237
196
208
198
253
223
185
154
199
231
194
189
170
231
208
176
199
197
232
230
212
207
228
211
202
177
185
180
177
198
197
231
175
193
260
230
213
244
127
201
185
224
223
171
249
215
158
199
244
182
215
157
216
192
238
228
155
186
194
165
192
223
293
241
200
215
215
178
197
236
156
223
189
240
206
216
189
268
207
221
205
172
259
180
181
230
233
150
187
250
226
139
197
231
187
200
213
226
204
268
234
223
212
190
125
196
175
194
152
213
256
208
235
269
187
167
228
163
190
230
225
239
211
218
163
190
230
185
186
172
238
264
240
211
201
262
233
142
179
176
197
159
158
162
201
200
226
109
181
240
207
257
239
192
197
204
215
203
222
207
231
251
203
131
140
125
202
186
228
150
173
193
129
211
205
240
221
172
205
261
191
211
214
204
215
137
247
120
128
170
223
226
178
259
178
264
199
174
242
184
183
180
201
207
225
214
203
247
234
214
202
150
196
193
191
223
232
154
212
205
190
163
193
212
185
199
226
219
186
260
258
203
163
152
255
213
201
182
218
192
190
154
203
163
230
239
249
198
205
157
164
219
217
190
229
194
163
153
189
252
188
247
144
204
157
155
231
198
226
216
162
210
158
211
220
203
199
118
210
228
191
186
252
197
211
235
242
180
195
190
261
172
218
215
229
177
166
133
192
229
192
229
174
196
197
200
209
204
283
266
143
192
220
104
173
225
185
196
197
208
155
198
186
136
192
206
182
246
166
123
199
191
249
199
145
249
188
160
186
208
199
231
163
241
234
184
235
196
171
240
221
137
233
212
198
192
172
205
190
177
196
182
227
188
222
196
167
213
249
227
169
192
170
188
224
194
184
199
245
166
222
194
199
205
206
257
192
192
184
235
211
235
194
161
287
230
219
163
166
183
233
194
245
149
224
223
214
233
200
168
232
204
215
182
173
161
192
223
204
177
225
155
203
188
235
231
186
224
190
181
254
236
260
207
174
168
196
217
226
193
227
169
177
183
158
183
197
188
229
197
218
208
202
176
175
175
152
249
261
156
193
281
212
161
182
227
131
158
161
193
139
181
185
206
254
194
182
186
239
232
191
165
218
219
222
225
220
227
214
227
230
194
213
189
80
151
196
176
151
156
230
196
185
208
211
188
210
131
142
221
218
170
196
248
201
214
141
168
236
180
227
135
197
98
148
202
220
170
139
190
134
202
230
216
213
161
171
263
217
165
264
213
192
241
271
223
223
200
208
150
203
232
208
203
203
197
232
228
155
166
235
177
176
215
201
172
192
203
215
194
202
211
164
148
203
215
193
176
241
210
175
193
268
189
177
202
187
182
190
237
188
205
208
128
187
257
234
322
169
231
239
254
205
172
228
222
192
196
232
183
196
141
182
191
144
205
203
205
214
248
202
183
178
190
200
148
219
209
253
163
128
278
173
207
200
217
186
243
193
220
178
218
180
179
204
209
214
210
171
155
230
186
230
218
168
136
207
170
230
148
174
218
239
241
154
164
227
237
161
211
126
249
191
208
227
242
222
153
248
280
184
141
183
150
205
194
216
145
169
179
144
193
187
214
172
193
196
224
97
187
202
103
184
177
228
237
224
227
172
161
234
147
223
191
214
216
227
214
190
217
195
150
211
169
173
214
207
237
221
186
180
205
232
215
147
153
159
217
188
183
218
234
166
251
193
121
173
220
167
272
228
205
211
146
209
181
189
182
191
184
151
219
168
176
257
171
177
227
200
274
185
154
234
200
212
168
191
223
155
260
202
194
200
229
198
136
244
182
137
184
211
191
212
190
166
178
206
295
170
207
179
217
213
237
193
262
177
122
124
193
223
159
186
258
144
186
233
242
201
208
217
242
170
181
189
175
193
190
127
153
190
192
183
189
263
148
206
201
159
240
150
134
169
144
191
175
194
236
141
239
219
187
202
129
183
221
230
183
233
231
202
223
146
191
259
206
120
243
242
208
159
177
209
195
193
226
226
171
230
237
206
219
185
195
239
214
212
207
138
181
180
188
184
179
171
249
181
216
262
149
169
190
242
224
163
185
189
231
174
219
166
158
220
202
159
259
155
261
210
174
209
204
179
227
215
179
155
212
162
172
234
132
145
152
175
207
214
181
250
226
185
207
201
220
267
214
215
136
168
199
204
175
236
236
265
147
231
199
157
165
185
172
137
235
180
172
205
249
204
180
199
160
168
159
204
192
162
222
184
222
231
224
143
207
182
202
229
254
228
234
268
169
214
203
227
159
148
194
241
153
191
224
208
192
217
172
254
185
225
186
170
207
190
155
232
235
220
193
224
203
212
230
239
161
221
230
218
234
217
210
251
129
203
221
227
123
200
237
198
180
179
222
191
214
248
231
218
181
226
183
196
218
172
176
147
249
153
166
244
194
185
225
207
188
224
171
243
168
222
195
162
254
134
199
233
126
225
200
238
238
232
254
204
179
176
224
179
155
192
159
210
192
160
223
213
222
156
211
228
197
202
223
161
218
237
225
178
222
223
222
202
233
200
208
260
169
203
173
185
144
196
156
227
235
171
153
274
205
206
230
234
176
205
244
212
171
228
233
169
136
127
153
265
212
223
215
209
180
231
218
231
220
174
177
230
193
200
114
191
165
222
166
192
214
240
194
155
216
217
186
189
263
199
200
185
154
188
186
226
226
221
188
228
221
159
219
162
166
269
217
205
229
223
179
148
183
169
206
191
198
226
215
259
181
215
243
204
151
208
190
211
238
230
158
208
209
183
151
232
181
216
235
142
164
194
194
207
191
133
203
234
214
203
197
262
161
189
268
172
224
170
222
154
232
160
218
213
187
263
193
240
183
244
227
249
216
174
227
234
181
185
177
246
193
272
176
282
205
220
194
208
251
168
233
180
176
262
173
194
193
225
217
190
193
170
239
199
224
218
180
190
216
220
253
216
195
169
243
269
206
226
167
208
216
259
183
203
220
223
154
179
192
237
197
153
229
223
144
123
172
233
186
260
159
200
219
278
189
226
227
178
198
209
193
227
196
203
289
160
156
157
221
217
181
207
116
241
243
164
176
132
164
181
199
207
186
198
204
182
214
230
142
169
167
189
247
199
166
190
191
242
177
163
170
162
282
235
192
214
134
168
207
211
212
212
242
242
235
187
257
198
197
183
176
209
238
149
206
216
159
216
181
258
193
207
159
275
187
229
204
250
193
244
204
162
220
155
206
226
171
173
224
159
118
170
190
186
206
242
244
258
180
169
262
171
193
171
184
230
252
252
182
207
163
144
188
240
159
187
162
217
200
241
145
203
190
181
254
211
160
177
283
140
187
177
232
197
164
203
162
187
187
211
180
209
179
189
180
232
234
148
218
187
193
186
230
199
214
191
138
215
221
197
163
190
183
192
255
236
200
195
213
143
246
150
151
201
186
136
234
198
199
227
188
197
184
219
193
204
216
172
150
186
232
183
205
180
180
207
176
230
154
240
216
226
171
185
192
95
183
180
244
182
163
188
207
179
176
225
178
215
181
176
183
239
139
232
268
225
147
211
161
241
253
157
142
241
225
235
199
201
246
185
163
213
173
170
154
163
195
223
147
254
192
102
154
203
265
192
239
175
222
167
213
177
238
218
229
192
212
196
252
181
191
265
198
145
182
214
215
228
125
128
167
192
178
146
163
206
149
225
229
143
252
233
165
189
253
253
189
166
189
188
148
173
205
186
249
163
180
194
189
191
200
210
208
175
173
174
230
249
208
196
177
167
169
172
205
163
168
249
255
168
174
157
188
179
137
223
131
220
141
220
256
227
228
191
160
243
198
188
281
198
196
179
208
234
237
232
175
219
243
96
202
167
170
186
175
218
204
137
192
230
218
214
239
223
206
145
198
192
227
210
202
249
201
229
249
220
218
202
213
248
198
222
205
286
199
181
216
266
208
183
121
201
221
158
207
209
204
234
142
232
195
166
166
209
171
192
215
226
133
221
197
219
214
167
194
155
168
219
245
157
188
207
179
185
223
241
166
234
232
192
194
213
212
187
237
283
178
219
205
184
153
217
195
240
228
276
204
206
232
210
250
220
207
208
171
224
239
173
135
237
213
151
177
189
215
241
169
201
223
198
174
189
201
200
209
193
204
207
161
210
187
141
250
202
214
247
233
271
177
235
211
134
168
181
199
250
130
160
154
197
161
263
240
246
172
241
151
224
224
237
178
156
258
195
255
215
226
195
189
205
229
193
154
129
164
124
251
212
215
187
222
176
185
257
203
134
275
176
243
197
251
220
209
217
230
205
230
234
203
220
191
171
176
200
227
206
176
257
195
167
205
171
144
168
253
200
206
239
210
226
239
223
173
153
205
184
204
219
146
189
216
118
232
184
241
212
201
187
135
195
206
161
237
196
196
182
224
238
201
198
249
253
218
154
194
196
235
213
244
204
217
225
229
222
225
214
201
248
156
193
218
269
215
202
179
180
175
172
255
198
172
177
215
224
193
216
216
201
196
243
269
240
201
173
212
201
192
232
113
225
254
210
189
231
196
170
235
246
221
230
203
179
240
154
215
141
220
233
227
188
177
149
212
230
192
173
257
240
231
203
260
175
236
192
196
137
225
159
176
175
190
227
185
226
150
190
205
202
168
188
230
214
167
147
247
154
195
220
165
194
205
192
176
137
150
219
228
183
232
210
185
289
143
152
166
237
172
148
149
159
265
186
196
238
169
230
188
216
199
168
213
193
164
187
240
137
200
203
192
200
212
223
180
182
182
246
227
199
247
200
167
207
194
209
273
199
238
187
160
208
216
243
149
233
196
236
230
228
187
275
251
203
199
143
221
193
207
187
172
193
193
126
214
170
195
238
158
220
233
153
199
168
189
226
156
172
126
189
223
216
183
253
172
226
153
213
230
191
276
153
187
184
195
248
226
195
178
127
155
193
192
202
137
244
253
192
164
182
176
246
175
240
224
215
210
203
246
154
221
149
231
195
168
193
215
105
190
235
203
211
153
197
140
193
224
237
187
182
207
194
167
186
183
194
165
250
194
204
214
126
185
219
196
202
255
254
260
235
135
182
198
180
221
158
197
191
233
234
241
174
229
223
159
203
243
204
195
149
189
190
181
222
239
238
203
206
147
185
162
174
238
168
187
160
255
266
213
230
236
180
193
220
183
159
195
256
136
138
225
175
173
288
200
146
198
229
239
217
181
218
196
267
236
220
196
170
191
208
225
183
152
191
147
153
189
211
160
107
201
240
239
229
280
176
163
180
215
293
194
132
193
178
222
269
162
201
143
214
181
193
217
238
166
141
167
237
219
222
207
142
229
182
213
130
194
212
174
128
222
70
167
187
242
226
217
164
271
200
177
203
287
218
204
222
194
232
142
238
203
211
241
184
206
224
166
206
188
180
196
215
198
238
183
241
187
220
181
229
228
202
214
229
167
209
190
205
198
176
182
164
220
226
212
165
196
174
241
222
167
240
219
244
186
215
227
172
212
205
231
189
207
206
205
134
194
229
186
172
176
146
197
192
168
190
230
185
252
134
234
242
241
212
186
210
212
212
204
171
228
205
160
208
195
173
210
243
139
176
195
253
237
178
192
178
206
188
191
214
214
162
200
255
251
151
236
204
226
169
198
210
165
176
216
169
249
216
242
150
180
227
227
205
171
204
158
226
219
178
197
212
198
201
184
177
182
212
151
214
167
222
186
140
175
200
193
230
176
203
124
201
209
198
209
222
166
124
258
197
221
238
206
138
150
220
244
245
218
190
180
196
159
169
245
189
286
206
171
207
202
188
213
234
157
284
182
211
237
228
188
212
144
169
200
228
239
198
155
203
229
226
155
193
211
188
161
133
215
231
207
194
161
229
233
227
247
260
215
246
227
165
114
193
174
203
196
193
112
222
177
195
210
129
217
198
195
198
184
169
214
216
186
178
148
144
225
253
132
215
170
220
178
215
169
182
246
187
228
102
231
238
147
160
191
151
143
229
175
164
202
189
139
194
199
120
209
193
234
153
213
205
175
241
249
232
175
223
212
188
221
120
230
236
175
203
228
235
173
235
190
206
187
190
220
268
232
205
191
181
186
244
265
248
162
186
182
225
241
200
198
161
224
222
275
177
211
149
199
238
185
221
223
156
251
198
259
223
184
256
190
285
195
216
225
237
147
203
203
194
277
211
198
160
137
208
218
159
190
203
176
159
194
201
242
223
213
197
209
222
195
196
203
155
142
189
212
223
234
272
173
209
203
191
155
165
214
215
196
222
188
257
136
190
188
194
182
196
150
184
209
234
238
193
204
222
200
257
226
158
201
177
229
220
191
199
220
155
197
248
243
228
231
229
169
233
236
235
220
239
201
199
188
213
153
185
246
192
205
181
203
199
210
167
220
157
225
226
212
200
208
174
203
256
219
186
221
209
198
209
232
163
240
202
174
265
180
179
205
231
224
169
182
276
168
225
184
196
174
226
259
187
186
186
164
192
200
208
177
197
229
199
164
164
202
184
209
256
240
195
202
183
193
227
206
211
216
170
233
142
279
161
204
162
167
227
189
212
192
260
171
186
170
206
197
238
204
197
203
210
209
141
188
248
193
212
219
214
165
197
241
165
164
227
215
146
227
194
187
168
171
199
248
143
196
195
145
231
208
198
195
207
245
193
188
218
166
155
180
246
202
207
242
186
247
219
190
194
227
177
231
164
187
153
238
243
89
259
215
219
203
189
205
176
178
266
194
232
201
223
238
233
161
231
134
223
165
217
191
181
210
181
247
198
186
138
164
211
235
193
176
202
198
238
221
208
156
168
215
168
157
220
156
141
200
279
227
251
173
179
234
180
125
192
192
232
207
244
244
218
109
167
97
155
167
175
220
225
217
232
166
225
241
208
270
220
193
215
193
166
224
251
204
222
152
169
207
218
158
196
208
217
202
208
225
172
222
189
171
146
202
177
173
205
281
184
266
193
156
210
170
210
185
228
174
214
225
162
211
202
171
196
144
234
172
198
248
165
200
220
229
236
215
206
249
194
212
213
185
193
205
196
211
224
185
221
184
220
217
174
242
225
243
184
185
220
211
185
224
221
175
220
234
158
245
204
182
223
203
226
210
159
220
214
209
215
150
136
220
245
188
199
140
205
230
230
175
216
165
227
239
206
188
261
175
236
181
159
249
216
231
208
255
206
171
196
214
116
225
242
225
214
192
211
147
178
131
246
243
203
178
218
215
172
204
187
195
165
223
189
243
172
177
254
207
145
203
194
258
143
247
252
193
195
184
196
114
263
219
144
214
179
223
191
258
213
226
207
200
237
244
195
199
194
250
223
194
261
185
200
199
208
211
223
270
219
173
196
197
177
240
203
221
269
181
204
162
228
138
246
233
201
143
194
161
227
206
273
239
185
209
140
224
231
121
147
145
184
185
197
201
160
196
154
231
229
240
215
177
154
229
261
178
260
214
205
195
191
217
189
168
204
207
207
195
197
200
179
186
180
229
235
166
160
178
197
208
207
217
258
138
251
139
183
244
213
257
235
189
138
208
225
190
216
166
196
204
216
201
157
245
183
236
182
184
245
220
244
209
184
184
225
182
222
244
274
205
212
226
200
222
230
177
183
201
209
170
220
187
130
191
246
213
148
137
191
195
241
238
159
198
172
200
263
192
206
162
239
196
236
156
219
199
243
288
255
208
216
206
241
253
238
187
206
192
189
191
212
171
231
237
179
204
252
207
161
176
248
228
129
199
221
206
219
229
207
243
233
237
172
158
181
126
179
222
257
222
218
200
157
200
172
184
124
190
195
210
141
199
124
154
226
112
209
182
192
223
291
193
205
205
149
132
225
131
215
235
239
185
169
167
211
189
166
266
132
238
166
209
145
289
174
212
169
212
263
185
233
180
231
225
199
148
158
199
193
239
193
212
192
185
183
237
170
181
176
233
184
244
196
199
164
222
187
238
261
196
238
165
204
159
134
201
180
187
197
129
211
209
244
262
185
198
163
168
199
167
196
146
191
123
125
202
224
202
194
213
212
228
222
256
187
230
175
181
189
235
203
162
247
254
261
199
195
187
142
214
182
186
233
241
149
192
225
173
180
218
240
204
218
173
141
232
210
181
151
230
192
189
197
206
181
173
164
138
220
237
204
203
176
248
194
168
188
176
192
216
226
183
136
192
240
150
161
209
200
177
274
236
183
203
221
257
211
159
201
243
245
187
222
177
182
163
229
132
180
225
218
202
143
160
201
138
197
218
151
251
225
212
210
128
175
174
187
220
95
224
185
166
210
175
163
244
226
122
196
228
162
212
241
147
240
223
231
164
176
272
194
176
157
111
228
214
190
218
169
240
218
150
178
193
207
246
150
210
253
194
168
168
203
175
171
240
234
212
223
171
163
188
254
182
227
190
138
216
233
164
181
157
245
191
183
180
241
243
239
179
217
218
225
212
104
205
160
211
217
167
234
181
188
209
211
203
194
200
209
182
190
157
164
210
176
278
202
241
236
119
242
237
198
178
194
218
239
223
152
184
191
122
262
209
233
219
207
196
255
259
173
249
233
240
185
196
228
199
251
222
241
96
259
179
212
194
208
246
233
230
220
153
205
141
188
154
204
169
257
200
243
225
214
252
193
288
200
194
216
222
215
198
247
225
191
164
157
220
245
218
128
204
216
164
169
186
227
239
203
221
142
203
143
219
170
176
188
233
254
193
203
162
210
209
131
244
215
171
211
184
176
211
222
237
221
221
237
227
159
218
222
230
167
176
254
220
186
225
166
160
161
187
175
169
167
170
197
255
223
204
219
193
246
208
203
200
239
249
275
222
188
180
204
194
238
185
163
148
166
258
227
210
221
244
175
241
185
222
213
275
141
218
238
148
224
186
218
235
184
179
224
175
248
208
250
167
171
170
191
190
163
202
181
166
174
157
205
176
256
195
263
220
247
208
172
243
183
239
141
248
220
181
173
222
190
124
216
192
181
269
214
189
227
220
204
150
221
168
254
161
175
228
212
162
221
206
237
174
272
167
225
213
206
191
250
172
211
188
166
127
240
234
224
230
260
125
212
192
213
216
188
129
176
176
119
189
173
159
189
208
237
212
252
175
185
232
141
172
178
119
196
210
151
171
240
216
214
205
248
162
212
215
245
190
225
182
207
266
191
178
272
229
225
248
196
246
205
200
151
236
148
198
212
204
195
135
153
188
185
233
210
178
232
219
214
177
218
200
221
212
158
204
252
234
154
160
148
193
187
229
245
174
186
223
207
211
240
283
195
205
284
187
174
191
226
176
209
181
220
201
208
241
242
242
220
231
131
206
153
271
253
230
217
238
199
222
177
258
201
184
239
160
183
237
209
236
124
198
247
261
206
262
209
236
142
176
249
173
207
214
101
196
204
247
248
201
181
249
222
199
234
186
188
191
202
192
229
219
153
204
237
127
221
221
199
214
208
211
229
183
213
221
211
174
227
235
124
174
191
198
195
256
263
189
187
254
194
244
295
176
142
208
194
226
232
231
212
217
192
144
177
206
218
250
271
221
187
241
184
161
196
129
226
110
207
180
231
150
262
239
149
233
162
238
201
231
140
192
247
199
197
225
208
236
168
264
184
116
144
157
146
153
169
191
138
196
206
196
234
172
169
207
226
207
189
191
194
206
223
181
248
186
243
174
250
217
261
276
194
177
226
170
175
183
140
202
210
167
208
145
217
192
231
259
182
166
239
223
229
207
178
163
157
202
219
246
145
202
233
176
239
178
182
217
158
144
216
181
190
211
251
220
223
211
240
143
205
196
181
218
216
196
170
217
205
212
204
164
183
160
201
205
228
216
216
269
252
125
191
168
222
177
155
178
188
196
186
257
161
151
217
177
212
231
202
226
183
261
186
210
192
229
215
131
255
240
211
281
228
177
195
225
179
194
253
233
173
228
189
171
190
212
217
176
200
168
229
214
150
222
176
220
218
179
187
196
197
165
127
235
195
222
201
232
212
200
239
178
196
230
143
229
157
219
280
193
200
121
170
195
264
209
183
302
213
216
171
164
240
213
186
245
182
162
190
158
213
209
245
246
218
248
211
226
190
211
242
204
222
188
176
187
222
125
258
192
152
262
180
266
165
176
214
210
168
186
241
187
215
218
201
148
250
187
194
215
202
219
212
197
196
222
157
175
213
170
206
185
187
181
242
193
230
234
229
258
181
278
215
217
172
216
184
140
147
227
207
235
202
192
226
224
187
155
204
196
200
214
256
265
201
210
198
204
197
243
208
198
234
160
227
225
246
187
204
248
205
214
231
224
222
203
166
213
242
189
237
199
179
189
171
200
221
204
224
175
193
190
276
173
147
191
175
159
162
257
189
195
243
196
171
198
230
207
219
220
203
215
197
135
238
189
208
219
157
234
232
244
257
204
246
123
159
234
199
256
251
190
223
200
148
220
203
199
242
228
140
198
156
140
176
155
216
204
242
187
184
173
222
160
262
223
147
181
193
261
209
184
243
207
256
233
141
157
197
171
149
215
268
177
181
135
222
156
183
246
159
125
281
226
201
175
154
231
186
161
200
207
208
178
218
202
209
152
266
108
243
219
168
212
188
180
226
171
214
190
200
201
211
180
222
154
196
149
155
200
239
213
212
144
197
204
142
235
203
200
170
154
221
220
180
183
280
166
189
248
216
158
195
188
157
238
230
225
120
188
178
200
223
251
241
195
192
256
221
181
213
136
250
152
204
170
172
174
226
200
200
219
229
223
195
201
196
179
246
187
245
218
191
236
231
147
226
182
136
179
212
159
171
168
162
160
238
165
237
192
187
269
152
243
225
261
161
209
253
203
171
175
211
202
218
182
256
247
228
229
189
175
233
201
117
215
184
202
221
206
243
178
216
195
223
234
167
229
246
168
202
161
212
137
239
236
269
144
180
195
179
186
224
220
171
168
213
242
201
244
168
195
222
183
226
155
220
227
239
232
251
235
189
269
223
161
156
218
184
197
212
264
283
181
107
292
223
217
195
201
250
224
143
220
166
197
221
216
196
196
216
223
198
131
217
184
244
237
224
194
201
181
173
231
223
213
206
150
181
122
221
215
247
183
206
201
226
179
221
226
162
279
225
144
166
238
206
189
181
218
140
195
176
189
177
186
187
206
205
192
174
252
268
188
212
109
148
227
234
115
189
249
148
240
243
258
235
233
192
244
183
275
216
227
178
237
199
216
225
226
208
225
212
214
182
178
168
173
209
158
198
210
232
152
189
173
244
174
222
223
169
204
130
204
256
247
207
169
186
180
210
155
183
232
178
218
162
246
183
211
199
158
127
211
147
238
220
259
169
189
230
178
188
201
152
165
222
227
231
223
196
202
233
219
215
174
229
239
253
182
152
210
239
230
194
236
124
241
176
157
158
234
299
224
190
192
136
222
189
162
229
204
203
168
228
197
229
187
198
166
302
231
195
211
243
267
201
195
207
221
223
174
137
217
185
254
170
228
219
211
199
145
229
189
247
250
216
148
180
191
209
182
157
149
248
253
210
221
221
262
157
247
215
194
224
205
232
161
211
168
153
222
157
180
206
214
123
128
210
191
187
215
156
199
147
250
217
229
229
166
121
221
182
226
266
149
184
198
193
181
196
235
167
121
172
169
202
273
226
218
194
194
183
106
235
246
215
206
190
186
113
215
226
178
249
203
165
202
235
217
211
235
196
169
213
243
181
276
211
191
200
170
159
209
139
169
194
227
195
172
156
241
185
192
237
177
226
181
232
174
222
256
212
240
167
208
206
209
159
169
189
157
199
194
145
267
101
144
186
228
169
245
259
219
243
137
218
228
222
214
232
162
243
218
222
210
136
206
248
148
167
208
219
159
188
191
166
158
207
266
230
210
133
238
186
249
240
198
210
125
181
239
180
194
215
266
218
186
165
158
182
206
228
240
232
201
173
209
228
254
252
202
243
139
242
227
208
186
176
121
168
199
136
268
186
164
133
183
204
236
239
174
227
135
220
218
256
230
224
173
107
163
198
246
223
228
230
174
245
236
235
223
208
159
228
204
232
230
234
233
179
147
209
220
251
197
132
205
196
226
170
183
183
273
150
174
170
233
190
248
206
241
252
215
179
206
187
244
252
157
167
173
261
240
143
141
213
147
192
165
185
217
185
195
254
248
197
212
206
182
224
167
239
198
174
182
184
189
211
165
231
197
230
229
194
194
173
229
155
236
185
162
261
213
191
208
195
210
177
223
158
143
181
156
216
186
210
210
144
224
194
237
181
288
271
244
175
215
179
164
235
179
207
210
179
247
214
221
225
182
179
152
211
107
179
162
207
236
226
246
197
139
197
245
193
238
267
255
238
221
255
223
167
269
199
206
175
141
159
203
229
204
215
222
181
212
201
234
247
214
300
173
234
216
227
160
207
173
178
204
226
221
216
184
222
238
288
204
241
201
272
159
160
221
289
212
199
222
239
218
224
229
230
243
229
220
222
199
206
179
201
209
194
171
216
188
173
191
242
267
245
151
164
224
195
191
156
222
191
188
194
175
205
232
189
168
217
172
202
205
169
135
216
219
201
216
188
271
231
222
153
150
200
181
205
233
193
225
187
282
203
230
192
217
230
219
153
223
202
265
146
168
194
204
132
152
277
230
122
267
182
222
204
188
268
191
167
203
220
166
195
165
210
208
174
218
199
168
200
198
249
123
205
197
163
188
174
248
185
204
213
217
204
236
224
171
216
214
191
234
245
203
213
221
186
189
151
224
160
208
153
208
190
197
192
186
245
142
150
196
163
188
149
192
231
198
226
161
185
251
187
172
180
224
227
214
252
136
189
169
154
161
180
200
154
211
201
268
206
220
204
172
178
198
183
204
137
186
205
171
215
209
201
159
253
210
164
236
252
220
240
147
236
203
231
166
237
223
168
203
195
240
98
214
221
224
180
227
276
186
204
223
221
195
146
140
193
150
202
235
205
172
167
239
163
224
193
200
172
265
181
207
148
184
144
194
263
157
200
204
222
284
209
205
198
176
163
224
202
213
210
164
133
195
231
261
218
222
244
249
227
188
128
146
186
201
172
219
227
178
134
219
193
163
150
200
255
191
157
242
207
145
243
229
216
252
188
175
277
260
151
247
267
136
225
149
247
248
241
235
225
223
182
255
214
148
255
169
194
200
238
175
203
270
198
163
233
267
235
167
239
209
183
196
133
143
234
119
182
216
239
214
201
159
159
181
174
159
247
156
187
243
204
180
197
228
170
170
219
221
225
223
264
176
181
223
209
131
197
216
129
156
228
187
156
198
196
177
238
216
244
200
245
209
187
219
210
198
255
205
260
213
151
251
209
216
190
199
182
133
206
166
181
180
202
157
218
209
203
203
252
165
139
182
146
248
234
118
181
166
238
206
195
194
193
228
225
252
224
222
175
202
211
137
206
214
251
124
186
232
230
168
233
184
235
221
180
177
231
215
184
235
191
210
240
199
147
215
149
164
177
209
267
180
265
195
180
236
181
217
249
159
120
251
225
178
143
167
245
205
184
178
214
195
222
242
172
189
169
173
188
212
186
232
137
141
255
208
189
243
188
175
229
234
119
186
210
206
184
192
211
159
198
222
210
171
200
207
226
132
175
177
175
219
190
243
225
155
251
132
224
223
187
151
211
182
174
172
207
259
178
200
207
231
157
177
238
163
184
106
199
251
131
234
224
198
166
205
193
254
175
179
132
237
203
213
166
225
177
197
182
181
172
227
248
242
162
208
208
236
203
188
261
202
240
228
250
227
168
228
215
197
221
221
208
149
184
214
206
240
188
166
194
236
192
139
215
217
167
134
135
161
179
133
193
136
237
238
211
179
168
119
214
201
277
162
191
210
197
158
122
254
111
190
187
200
183
175
246
196
195
182
183
208
230
231
161
196
185
153
225
177
227
256
205
172
236
196
206
241
210
213
140
200
240
234
173
173
177
222
187
233
231
193
159
147
188
225
197
265
248
180
168
175
253
232
218
239
187
179
187
225
155
201
218
236
229
168
223
197
282
198
211
215
128
163
197
175
192
181
173
140
267
226
188
183
156
208
135
206
252
247
140
210
181
133
185
235
225
189
175
194
196
173
161
160
237
202
223
197
205
189
218
167
226
192
168
189
186
195
159
173
257
226
270
219
159
158
179
260
216
226
186
171
137
181
237
265
268
204
121
168
193
142
154
184
214
245
181
256
223
142
202
238
214
242
211
180
229
145
209
216
195
172
252
155
227
250
200
204
254
220
260
200
187
194
223
182
194
191
156
181
182
223
186
271
174
210
214
211
206
207
207
264
217
180
230
187
212
211
239
185
156
223
227
254
248
152
241
231
135
173
235
249
194
241
216
188
173
167
139
172
177
171
149
197
213
224
205
243
137
203
158
221
234
203
202
188
168
215
150
209
176
232
234
232
164
170
218
185
243
258
226
206
207
111
211
202
198
230
196
260
202
214
249
209
240
235
224
219
168
253
98
242
205
188
130
210
120
223
191
148
117
181
219
189
150
229
224
256
261
168
239
223
199
227
216
195
220
220
201
218
215
239
247
216
188
203
212
206
185
222
207
110
130
205
216
237
123
164
231
258
207
177
155
161
194
173
180
192
190
212
234
209
277
167
194
194
185
238
170
209
251
207
204
209
195
174
179
173
185
191
137
253
116
240
221
228
186
294
249
203
235
188
240
182
182
211
244
166
214
230
119
166
231
187
193
181
210
231
204
210
193
142
200
211
178
197
196
241
203
195
195
162
171
204
222
183
273
232
211
256
189
186
160
189
272
213
279
158
222
244
187
137
143
235
263
204
179
191
209
163
217
254
249
215
209
213
153
282
202
231
158
192
124
216
143
197
232
112
279
149
190
131
152
229
180
184
169
164
178
225
195
220
271
207
194
140
214
223
210
209
175
193
194
155
177
145
208
272
260
192
238
194
278
194
212
204
254
208
158
163
245
255
216
182
175
191
188
191
225
251
208
180
162
150
167
246
193
211
217
184
152
200
233
208
249
243
207
174
231
185
160
209
172
212
222
181
255
189
242
194
171
223
161
242
210
206
242
225
221
183
102
252
161
167
237
177
265
223
239
256
196
192
153
196
210
214
236
195
194
194
192
158
225
156
239
183
224
189
215
183
191
216
247
229
219
219
189
221
220
198
183
254
164
194
219
181
171
209
234
246
238
180
213
209
129
162
209
187
254
161
177
219
205
193
187
250
263
171
195
166
267
170
213
130
218
196
177
185
204
240
263
176
219
230
194
123
199
204
214
224
290
153
195
181
175
227
211
167
196
244
165
176
206
208
238
263
198
212
228
222
161
162
222
268
141
171
242
181
244
253
229
146
249
186
183
197
210
201
233
207
199
210
148
192
185
206
152
249
195
189
237
177
215
195
231
215
217
236
170
255
265
200
192
220
207
242
205
257
132
256
234
215
256
225
252
203
227
195
153
218
208
213
194
184
211
188
198
203
258
111
226
171
176
180
168
157
212
199
197
89
214
184
185
213
156
238
223
228
170
202
211
184
158
233
167
253
206
264
249
152
167
198
147
152
146
221
193
202
144
197
173
282
198
237
210
255
205
205
224
217
192
188
207
201
205
220
229
234
217
204
277
217
179
237
152
221
227
172
245
269
245
188
258
178
147
188
197
179
191
222
187
146
128
181
255
131
142
207
178
218
231
83
151
246
206
256
228
184
155
155
268
176
210
205
156
253
218
207
168
168
166
235
210
174
173
206
234
228
205
211
255
234
148
236
141
200
222
184
193
260
186
258
171
212
258
184
231
180
159
175
172
179
209
198
237
202
242
199
186
246
229
214
267
185
242
188
143
122
228
171
164
192
237
219
181
142
144
188
217
132
139
207
222
209
234
199
206
157
195
248
255
217
220
273
208
144
180
201
204
175
250
209
235
163
240
224
190
200
176
273
241
234
193
252
215
246
104
225
221
170
205
201
151
233
163
202
253
183
240
218
247
209
244
159
200
208
249
226
156
201
209
136
206
153
191
234
242
173
199
235
169
206
270
236
255
150
200
163
187
204
222
181
188
159
127
210
243
142
219
224
186
163
231
236
193
198
202
137
258
149
157
258
221
179
176
261
262
141
195
148
174
212
136
235
203
193
230
157
187
234
201
240
249
236
231
214
202
238
251
170
94
134
137
214
192
237
158
216
212
144
193
247
244
222
184
230
159
229
172
119
185
221
129
110
184
190
174
206
155
197
201
163
211
223
204
193
144
139
201
162
154
234
142
201
175
166
162
245
203
202
189
237
213
243
238
228
225
243
174
121
185
199
155
198
195
181
240
158
138
190
251
206
201
183
245
180
225
238
240
209
215
217
157
222
286
199
262
108
221
216
189
272
214
182
219
212
211
250
141
204
209
263
191
218
202
248
205
174
180
190
226
244
231
174
253
183
207
171
244
208
214
145
249
228
206
179
219
132
183
149
106
131
217
202
192
190
270
211
152
226
210
107
195
232
205
158
196
179
173
242
194
244
232
239
209
220
199
215
180
241
250
236
233
174
174
234
193
238
246
191
186
162
214
209
154
215
245
218
225
205
244
219
189
208
255
206
249
157
169
150
166
153
212
186
173
192
235
189
221
233
235
216
214
217
204
201
186
169
170
205
124
182
203
199
242
212
238
228
160
257
208
262
200
220
195
209
276
166
254
237
130
270
232
208
200
193
171
244
202
215
175
184
203
251
211
181
213
196
179
218
188
243
195
189
200
205
238
208
186
198
174
222
233
165
214
187
183
203
222
230
219
236
151
158
218
204
226
194
158
208
200
146
234
198
202
157
209
161
171
219
150
233
194
198
224
249
125
215
249
231
146
217
250
199
201
203
217
262
246
234
219
217
143
219
215
193
179
215
182
241
225
165
169
150
207
203
191
183
180
196
206
227
201
248
215
231
210
178
140
200
205
203
192
182
251
250
214
202
180
176
172
185
206
198
227
168
162
263
167
135
236
216
184
252
186
241
241
187
267
220
237
197
197
173
161
212
149
211
199
218
253
179
226
246
141
280
166
177
156
210
198
184
211
198
206
173
170
160
189
223
165
169
201
201
184
230
223
220
189
167
214
178
191
183
236
195
158
192
195
167
117
244
164
252
194
248
238
164
205
214
182
125
197
233
251
227
160
217
176
220
180
223
175
244
222
190
207
178
229
227
109
248
245
169
175
182
193
258
196
178
185
236
150
139
220
234
190
190
210
269
222
193
173
251
195
264
209
250
192
225
184
203
247
197
237
220
182
149
150
191
174
180
200
183
168
246
189
233
223
165
213
200
136
238
183
224
228
199
237
144
236
202
210
180
265
172
212
188
252
173
218
181
176
167
253
254
193
160
204
238
196
145
223
162
195
245
264
250
228
243
258
194
164
153
241
187
248
192
199
229
213
195
222
125
188
237
233
228
219
206
238
148
217
210
233
291
126
182
168
164
185
204
166
214
277
233
240
217
167
240
147
236
206
230
224
179
151
152
188
216
256
226
200
210
187
134
216
216
180
195
204
173
195
190
162
184
202
179
232
216
241
179
154
226
177
226
194
255
200
135
210
206
170
178
185
135
197
234
180
162
190
216
199
153
192
174
246
184
219
144
211
242
241
235
216
187
194
218
169
215
190
186
200
203
194
197
163
240
171
189
199
184
174
189
253
191
223
167
172
183
129
240
234
172
167
244
206
233
193
200
207
205
252
179
197
145
211
142
148
189
172
139
206
211
180
223
156
182
135
196
188
172
222
141
180
179
182
206
231
146
171
203
218
271
156
175
165
210
146
192
235
212
228
179
191
194
226
234
196
222
220
163
224
196
232
219
230
206
186
248
213
259
210
150
217
147
215
156
139
210
244
223
199
224
229
231
153
222
153
198
205
172
161
166
167
204
191
242
279
235
206
183
177
133
181
221
251
152
131
206
183
256
212
188
191
199
200
156
171
228
192
229
178
181
212
209
228
237
194
199
191
191
153
241
247
225
206
204
198
150
160
192
229
174
179
248
196
212
202
220
203
157
158
263
169
183
194
227
215
290
207
203
167
200
214
189
248
167
205
176
237
184
238
184
165
206
96
159
195
191
172
192
213
211
178
212
176
268
209
169
147
219
225
194
232
215
194
235
191
185
267
214
154
200
187
196
152
276
188
166
232
243
166
174
126
211
220
169
213
250
165
219
195
172
205
192
186
130
217
193
176
209
146
171
196
155
245
232
247
205
193
203
215
246
212
205
219
208
155
199
156
228
129
165
217
180
236
188
257
207
239
185
205
173
195
203
186
183
237
257
132
236
212
216
218
173
135
192
128
208
157
219
178
201
227
192
162
197
212
172
206
283
213
214
181
239
190
192
185
192
248
242
242
239
170
262
156
178
231
227
160
236
199
157
248
203
217
240
295
239
189
170
197
158
181
178
171
187
231
179
190
196
235
207
221
200
217
180
236
217
199
250
219
178
175
194
268
208
200
255
209
235
214
144
239
157
204
207
193
127
193
163
144
184
158
146
199
238
115
194
150
174
229
177
221
222
194
167
126
208
217
236
241
221
198
152
202
225
132
258
167
189
191
199
206
229
254
194
273
203
187
151
178
231
214
146
215
195
170
134
150
204
165
172
220
190
244
167
181
206
222
248
203
177
222
228
191
188
231
246
214
200
193
254
208
192
217
206
140
193
179
257
247
169
190
212
205
167
196
147
149
197
201
263
142
185
138
196
161
223
206
254
184
248
169
173
186
228
206
132
202
244
135
182
245
143
234
258
256
218
212
212
243
224
170
187
217
152
232
270
237
235
210
189
169
157
229
234
198
203
177
237
211
221
203
184
243
161
160
154
200
237
182
156
247
204
200
183
264
214
226
114
205
226
203
187
224
202
234
148
215
251
186
214
215
176
189
258
188
226
230
236
214
253
282
258
169
219
207
217
126
211
264
239
183
181
193
272
165
177
200
163
199
278
199
158
142
123
161
177
215
209
220
203
239
182
218
206
236
194
172
122
162
226
165
198
157
219
171
262
170
235
212
179
178
226
180
228
284
206
199
282
138
186
199
190
181
226
156
192
252
156
177
224
241
172
210
232
129
228
194
188
206
193
219
161
195
202
255
194
172
232
161
237
199
221
188
202
217
232
197
219
185
272
244
216
143
180
215
243
227
182
145
246
217
222
188
206
244
222
180
180
223
178
236
210
207
249
132
231
184
192
276
164
178
178
144
248
241
178
231
225
182
215
186
197
211
254
211
190
227
236
265
218
183
209
212
201
235
143
263
249
236
133
223
239
188
235
146
211
208
245
191
161
181
233
256
209
198
180
230
224
194
202
163
208
240
195
192
187
236
191
192
228
197
196
213
207
238
137
186
197
210
187
211
181
204
226
143
229
242
142
213
160
223
177
216
156
175
195
128
243
213
238
164
219
205
215
153
195
195
221
186
256
191
151
205
202
231
183
204
206
166
224
199
192
264
175
193
191
190
206
245
137
230
199
147
185
175
135
274
228
187
131
207
88
114
268
202
209
247
185
173
195
175
214
166
208
208
247
194
232
237
173
223
211
192
159
268
124
204
218
184
187
206
193
228
231
244
171
176
237
208
230
176
220
192
204
235
169
231
227
204
202
194
184
217
178
234
198
214
191
219
170
200
166
220
185
219
207
242
201
220
236
190
230
155
138
214
252
264
180
213
181
177
245
216
220
153
255
145
198
231
203
204
222
149
214
236
216
211
175
165
272
254
195
243
188
114
220
231
261
216
147
182
198
203
241
168
215
174
263
227
197
190
177
235
191
198
229
153
187
216
143
172
198
168
198
180
199
218
238
206
189
194
249
224
165
155
227
109
224
182
130
158
152
129
147
233
146
173
235
185
187
140
216
185
203
230
226
114
158
239
230
193
189
180
206
204
228
273
211
152
213
216
218
242
235
205
145
154
222
240
169
210
199
197
206
145
183
212
209
243
178
192
217
179
149
203
208
253
265
169
184
233
180
236
193
230
198
214
195
198
197
150
188
217
195
148
172
224
158
197
142
180
269
206
211
185
172
194
229
189
162
212
211
240
223
189
206
199
251
182
198
197
220
232
183
271
133
146
167
238
197
220
207
231
206
192
212
240
181
165
166
232
213
231
191
242
154
221
171
244
124
182
171
230
198
182
210
218
204
229
225
187
194
232
162
190
164
217
168
231
201
178
233
150
147
209
224
181
248
174
180
238
250
203
274
149
209
204
156
195
154
154
187
198
179
208
210
160
231
214
145
219
223
210
110
157
218
190
137
185
240
228
228
177
200
209
199
209
173
155
165
166
211
221
212
212
178
223
180
210
155
186
209
255
195
172
157
277
196
193
210
162
167
244
212
219
252
201
225
152
266
213
181
201
212
226
209
202
188
191
179
157
247
170
215
240
193
167
213
174
178
228
192
229
229
239
131
131
215
278
190
182
256
216
139
147
175
226
147
225
211
177
136
256
138
185
158
229
237
215
211
183
240
212
220
171
221
163
204
173
214
234
118
194
118
154
199
193
206
164
192
188
196
148
180
188
133
219
208
204
248
198
179
166
209
221
174
234
156
206
249
209
243
139
207
155
148
197
159
171
214
165
181
209
161
157
142
170
192
128
260
210
187
224
214
165
163
185
215
118
195
192
242
208
194
189
184
141
202
214
217
191
119
204
166
205
134
256
228
176
219
231
272
200
207
159
210
183
224
155
249
160
176
183
200
196
257
144
174
197
159
248
222
199
234
114
243
223
230
193
214
235
233
174
209
154
159
203
221
202
205
186
211
230
191
229
201
203
217
198
235
217
193
271
161
178
207
203
200
236
161
205
179
184
158
230
191
178
174
156
193
225
170
203
199
231
250
260
221
261
222
137
188
150
201
184
258
235
231
223
162
277
144
182
178
206
207
199
230
178
172
167
243
151
199
172
199
186
152
179
224
191
182
232
211
181
158
210
191
172
266
150
178
174
219
164
164
219
145
226
211
225
236
151
147
208
192
193
224
178
203
203
225
208
184
172
181
249
200
188
215
149
187
165
160
160
187
266
137
173
226
185
208
191
230
148
219
218
205
237
73
185
200
161
239
201
201
151
176
183
174
183
212
183
232
250
223
195
195
177
199
223
165
191
173
257
191
177
219
191
139
227
210
188
174
196
221
138
108
125
177
279
173
203
204
235
210
340
270
172
181
161
185
195
227
255
231
206
220
221
146
126
131
226
234
215
159
248
164
202
217
139
162
252
156
172
161
284
196
121
222
216
238
245
148
144
191
199
206
202
233
209
217
219
159
204
261
261
219
161
196
129
213
267
202
190
254
237
163
217
186
231
157
215
181
122
173
173
250
193
210
226
199
159
205
240
235
162
169
211
151
202
205
211
246
189
239
207
227
194
231
197
212
163
233
206
185
183
195
220
266
202
226
180
245
255
225
208
221
121
234
212
213
174
171
191
241
235
169
250
225
205
188
200
195
201
175
206
189
202
175
222
208
175
224
196
165
236
158
163
140
253
225
173
264
176
194
175
155
230
204
223
188
220
249
125
256
169
227
222
193
160
226
179
283
183
221
223
228
186
140
195
170
235
183
206
243
219
154
165
208
183
157
231
210
226
183
226
131
180
211
208
213
190
167
195
142
141
183
153
120
195
176
208
150
149
182
176
193
190
250
229
186
243
202
231
121
202
233
207
186
187
190
243
174
179
183
173
162
230
156
124
256
193
173
199
230
205
180
166
195
210
166
187
205
113
193
206
211
119
192
219
220
213
250
223
237
199
201
207
197
219
167
215
228
187
229
156
130
211
169
213
248
223
197
205
200
168
192
222
196
234
178
227
194
172
247
198
234
175
207
196
178
203
182
229
181
116
192
161
186
186
211
218
125
205
222
176
241
248
174
227
172
200
234
167
182
253
207
189
148
214
162
171
199
230
141
156
182
145
198
180
201
203
218
174
219
265
220
211
186
254
145
271
252
199
268
184
172
185
219
229
217
162
179
212
222
248
186
199
231
242
250
202
190
202
132
170
126
182
148
276
227
251
225
201
204
163
206
258
163
159
213
240
190
202
145
199
179
242
230
213
194
217
176
170
173
219
242
254
227
180
209
225
187
268
254
195
254
120
138
161
246
156
211
238
190
190
238
224
224
218
167
207
133
184
225
170
129
216
163
198
233
189
221
182
180
263
212
222
217
182
215
220
250
178
190
249
239
186
277
201
186
252
140
101
206
170
218
218
187
236
214
179
178
153
216
143
124
231
221
228
188
169
149
221
197
133
132
208
145
246
189
203
211
211
195
197
168
246
212
160
209
194
154
206
181
181
193
187
214
210
227
162
184
171
147
176
148
221
222
180
175
232
185
176
221
172
163
162
220
226
201
192
208
216
217
199
123
199
155
220
192
116
230
164
218
239
245
157
227
203
217
215
157
218
152
152
155
235
207
220
202
230
206
182
170
182
247
225
184
180
180
201
209
160
175
206
209
150
193
173
236
200
199
183
259
201
188
154
158
230
171
221
153
200
203
234
238
171
185
279
212
156
236
200
206
197
112
234
206
199
148
196
135
264
213
222
234
226
243
188
235
182
103
160
151
157
161
247
185
230
223
196
189
175
195
181
235
194
190
171
208
215
153
149
254
256
155
225
226
185
165
183
168
252
164
230
168
189
204
200
161
168
148
122
217
184
193
202
199
182
230
152
180
164
254
198
229
220
204
185
186
273
224
182
182
195
151
174
173
196
197
218
199
197
126
221
146
248
189
206
181
200
178
136
222
158
174
235
209
219
165
193
166
216
234
189
217
149
185
170
200
216
182
193
227
204
221
187
202
200
223
124
194
165
174
203
214
196
207
234
164
159
240
213
154
227
244
137
174
179
167
159
123
190
161
273
163
199
190
191
205
238
166
199
147
241
248
242
216
230
186
180
146
142
243
242
211
177
262
213
179
134
249
169
167
228
174
145
230
207
220
199
185
154
219
232
182
196
191
175
243
100
216
262
224
298
132
240
260
202
207
230
181
153
192
113
165
195
207
148
217
205
155
194
291
248
115
167
194
190
298
218
206
228
196
242
232
190
191
217
205
263
241
222
254
209
199
171
243
174
129
201
158
213
151
196
222
195
182
234
164
199
188
213
219
188
185
241
223
170
210
235
182
231
191
238
152
147
236
208
258
237
205
238
273
217
274
183
182
186
197
169
176
157
190
166
182
244
215
230
217
213
210
159
149
210
234
237
168
257
210
265
195
199
235
150
195
164
215
176
151
221
201
236
211
153
175
208
187
212
219
190
218
216
248
210
167
183
212
167
164
259
258
240
194
235
180
180
194
183
219
152
221
228
245
226
162
238
229
159
188
154
190
131
229
168
219
185
193
220
203
136
192
211
153
215
127
126
197
241
200
188
210
216
177
212
225
235
205
170
226
161
134
207
185
149
233
198
301
197
160
197
172
154
226
196
198
193
178
170
258
230
232
232
214
155
146
209
216
205
235
175
194
132
206
175
191
175
161
156
209
265
201
249
203
207
202
227
251
247
180
239
211
97
190
207
223
168
158
162
179
172
201
274
186
189
160
185
218
203
192
193
247
192
174
174
219
214
235
171
263
194
106
222
244
143
232
214
178
189
215
169
124
173
234
150
205
154
154
157
213
207
190
176
165
238
206
187
200
182
227
192
224
255
235
205
180
193
250
217
179
224
202
162
220
231
176
191
117
201
240
204
157
215
180
111
193
179
288
228
174
205
224
193
202
203
138
215
181
170
273
174
223
202
188
202
217
155
223
207
91
184
113
201
216
272
157
212
176
230
243
157
213
167
135
242
197
177
267
249
226
234
202
182
239
236
208
204
166
268
187
273
145
212
158
174
179
216
224
219
196
202
205
197
175
130
227
215
172
192
150
209
197
202
177
175
219
195
221
194
204
224
203
180
207
148
152
200
212
233
209
208
200
215
199
182
200
258
181
213
169
195
214
183
233
245
239
162
251
183
153
254
216
148
184
199
190
176
211
176
199
193
102
191
245
232
181
192
195
210
151
216
241
178
134
260
139
156
164
179
166
244
222
141
169
213
195
254
185
178
233
150
168
178
217
182
229
259
204
127
253
252
236
230
162
201
224
218
216
133
211
172
167
195
214
251
180
143
204
206
265
228
186
200
233
265
137
231
196
174
223
189
268
210
130
237
191
148
177
231
183
238
150
258
157
229
194
205
158
200
211
213
173
256
140
201
227
248
179
142
237
201
159
235
197
227
243
273
161
210
250
132
212
180
243
232
201
175
160
173
189
223
261
174
219
169
172
227
205
211
109
219
184
215
191
174
204
198
170
192
182
140
204
199
208
191
261
243
240
270
230
171
158
185
201
263
202
238
186
180
196
241
142
237
184
156
167
190
149
188
246
226
196
184
192
202
205
220
199
129
190
192
172
202
178
152
243
205
151
214
201
232
177
199
201
231
213
266
196
241
215
184
230
193
180
278
225
188
161
207
193
233
224
238
147
155
209
190
231
235
205
211
215
192
226
247
191
123
168
215
217
158
226
166
131
185
244
210
220
252
139
187
191
214
216
182
231
182
238
204
167
176
127
249
204
198
207
194
180
170
207
135
195
201
276
218
189
177
172
233
201
210
214
211
170
228
213
200
205
185
168
252
172
168
218
182
204
230
229
181
251
184
180
188
145
174
189
170
185
143
187
225
186
149
209
223
170
212
200
107
212
171
183
201
223
150
213
182
209
93
211
195
185
205
246
186
204
218
210
168
215
189
149
223
246
217
251
208
212
251
207
224
210
226
202
255
129
208
172
210
217
225
147
212
227
215
250
168
248
193
233
200
194
236
162
244
166
183
169
175
113
215
223
254
208
158
199
153
216
235
116
188
209
165
210
178
207
160
187
188
185
216
171
130
244
211
212
161
205
177
245
162
185
173
221
198
205
211
256
256
229
262
203
226
257
206
161
225
239
147
213
195
204
196
136
239
248
167
176
150
223
189
128
268
202
148
208
233
231
168
243
206
212
174
179
219
197
201
227
176
227
178
158
189
190
197
256
195
142
164
188
233
179
229
114
199
221
225
216
174
214
165
187
165
133
207
211
211
147
160
189
201
204
230
236
244
189
185
171
187
209
220
175
179
202
205
181
190
213
225
221
195
115
219
200
200
275
191
208
188
223
180
225
155
156
195
150
162
210
232
211
238
205
226
224
207
163
239
202
156
181
208
263
161
125
197
195
235
257
181
253
194
256
233
146
206
246
250
167
213
180
195
155
176
188
233
209
262
198
134
197
221
236
228
181
239
186
231
190
198
176
209
236
186
217
187
153
217
192
134
198
192
163
192
176
253
222
183
187
232
202
239
186
216
206
199
234
119
241
165
186
163
178
189
192
166
248
238
196
220
192
235
213
215
173
184
209
225
152
213
158
232
214
208
247
207
168
227
208
169
211
224
137
234
151
217
119
243
234
157
235
167
156
174
215
121
169
127
221
189
242
214
154
213
209
237
252
145
232
176
203
234
234
202
293
212
141
201
182
138
189
221
209
240
199
206
264
176
152
231
184
186
178
214
226
237
247
203
226
225
179
209
162
166
190
214
122
194
190
188
250
194
202
188
159
162
187
213
146
188
176
225
175
194
184
210
143
167
244
226
153
222
252
212
222
202
185
227
212
233
223
194
179
196
213
218
201
230
191
217
178
229
256
207
187
153
208
140
183
198
160
195
236
240
184
155
226
197
220
217
230
187
183
235
100
229
240
243
137
189
185
181
231
194
141
197
223
190
213
194
156
234
187
260
268
249
248
162
182
219
231
209
168
164
234
147
162
215
262
202
158
239
166
188
172
168
180
287
244
244
208
145
158
214
189
195
196
235
170
225
186
231
221
199
207
203
235
198
205
245
178
171
197
222
212
173
126
269
172
204
178
162
227
160
161
242
180
175
257
217
194
173
238
251
157
206
270
139
220
191
209
200
223
203
227
263
173
217
187
158
238
265
200
175
202
220
199
210
186
217
198
164
245
239
111
147
179
250
206
206
191
184
248
213
161
186
189
180
241
140
212
164
161
146
230
194
256
202
234
221
203
197
172
225
230
205
221
177
223
227
171
232
187
228
169
198
202
149
228
190
175
163
236
176
155
214
179
192
219
205
212
214
122
193
172
201
168
170
181
189
203
254
174
104
216
253
160
191
236
190
162
221
176
259
187
259
219
314
200
138
183
152
173
147
202
201
244
217
187
172
269
209
248
179
238
243
223
213
152
135
159
215
158
181
155
173
191
264
138
267
220
152
245
236
245
230
213
207
183
215
275
188
197
183
202
161
196
241
270
205
236
219
218
247
258
226
196
161
240
211
232
219
152
207
169
177
172
234
229
203
207
194
215
186
156
209
156
208
208
246
207
209
286
157
179
167
244
211
220
216
209
187
225
193
253
214
230
154
233
149
203
185
250
237
193
197
161
234
191
208
253
196
219
201
242
173
229
155
160
176
150
254
160
187
129
240
193
164
214
250
219
247
187
245
138
244
112
188
226
158
190
203
194
200
134
161
195
237
267
188
220
142
194
241
163
242
157
199
189
173
225
196
172
252
215
177
215
200
130
149
133
151
140
179
195
164
241
244
259
224
223
166
171
235
175
223
260
160
203
159
203
198
131
155
161
238
206
222
159
255
222
255
240
111
135
224
204
182
222
167
136
199
188
164
211
160
217
211
214
136
221
195
206
205
158
220
248
111
139
229
216
253
197
233
202
218
188
190
242
246
176
229
247
199
197
203
199
186
156
215
158
231
196
190
224
214
277
225
193
195
190
248
150
206
180
181
179
222
227
187
139
172
239
252
218
264
234
203
194
215
234
162
199
154
140
149
196
224
241
222
141
208
181
241
222
184
179
147
220
190
151
178
152
248
163
260
181
248
242
221
197
226
168
242
180
190
166
210
201
167
235
198
196
204
210
192
147
171
210
190
204
189
209
211
246
163
182
163
168
238
204
213
228
220
266
213
240
243
173
246
194
205
187
234
194
218
219
215
187
162
216
246
221
198
181
189
136
153
234
190
203
200
192
221
126
217
180
227
187
218
192
205
221
184
191
204
118
211
234
244
200
187
172
185
180
188
201
175
170
181
217
202
173
186
166
142
168
194
202
221
216
207
147
217
203
173
178
207
221
185
210
258
185
166
254
205
235
185
291
148
163
178
209
226
241
142
157
198
179
274
133
224
217
127
222
198
190
224
120
218
196
222
217
244
276
201
224
191
192
213
212
192
208
227
232
237
240
159
191
218
165
147
179
228
226
201
225
235
237
241
196
183
147
204
180
193
186
213
250
246
200
196
198
180
152
242
172
212
176
223
236
210
156
199
178
193
235
225
247
235
230
199
215
195
230
171
185
170
173
146
183
238
191
221
174
230
242
251
265
259
180
201
223
194
116
157
183
144
219
139
212
180
167
211
218
192
196
191
194
183
175
184
193
231
152
246
150
190
199
160
254
178
219
244
199
159
201
165
172
173
152
166
143
232
197
199
215
175
231
206
191
206
186
221
204
169
181
137
176
206
204
240
192
192
156
192
211
185
208
187
208
200
204
195
249
160
139
182
151
250
177
239
215
223
213
246
166
164
190
137
162
243
248
233
233
224
228
249
200
230
159
237
187
214
168
203
208
213
206
169
156
166
242
211
201
150
235
246
178
199
158
262
175
171
222
245
153
183
187
217
192
155
253
125
218
220
223
197
218
229
206
206
251
209
247
222
222
233
226
203
155
214
182
250
176
250
222
224
232
146
185
253
220
206
205
130
134
189
273
179
139
229
255
274
220
175
197
212
207
201
182
178
222
212
193
215
211
199
197
218
209
218
175
151
235
231
208
166
160
171
241
247
198
217
258
175
148
159
147
203
220
228
189
236
216
210
215
261
221
199
215
126
237
141
195
234
208
218
187
168
237
219
253
201
236
190
207
223
165
162
239
249
213
177
209
199
214
230
187
189
170
201
229
278
229
208
167
186
165
227
171
277
223
202
181
125
221
167
220
133
164
221
171
183
126
140
197
163
202
210
255
89
189
197
208
192
145
132
171
214
215
92
269
194
198
194
234
164
223
165
160
194
162
238
195
229
201
237
180
236
221
230
218
183
211
230
216
195
232
200
220
210
214
216
167
223
260
179
227
214
245
220
222
194
140
208
212
239
141
268
145
162
257
224
160
161
194
140
235
186
170
199
229
214
176
193
173
175
241
225
170
239
295
237
217
162
195
200
207
168
222
175
173
202
186
214
156
166
195
198
193
192
182
97
209
205
208
229
208
200
207
206
202
205
236
149
165
214
257
189
226
182
220
227
192
217
222
192
193
239
186
184
159
175
190
201
189
200
248
184
214
186
223
226
195
194
221
159
169
165
223
202
198
155
218
243
215
187
165
220
193
194
226
229
193
178
159
184
186
188
146
211
186
182
229
208
186
223
161
222
188
202
231
205
110
177
204
185
135
129
140
225
212
211
216
166
210
205
193
190
254
162
203
169
175
147
216
203
105
128
166
156
163
224
196
185
150
206
197
219
219
171
228
202
205
253
217
171
249
185
198
249
193
230
221
164
191
157
261
191
184
158
236
132
198
222
205
166
187
204
167
221
245
235
235
153
150
208
203
194
190
212
180
232
224
183
242
213
209
225
155
214
190
166
107
242
238
183
175
186
261
220
170
233
251
216
212
212
248
228
202
188
174
216
197
251
158
259
208
190
156
175
187
180
181
232
235
180
109
211
193
247
215
265
187
272
237
224
233
252
187
208
160
218
134
190
218
152
148
192
222
217
237
158
199
197
216
163
202
263
162
157
222
203
242
179
235
232
276
174
167
130
186
208
169
237
237
216
155
146
170
235
213
193
247
187
204
231
217
200
207
211
232
203
188
233
142
222
199
203
203
186
205
167
171
169
220
218
128
233
162
189
197
197
151
155
234
210
210
186
233
185
237
271
190
190
191
181
186
206
121
217
199
241
263
203
250
177
152
213
181
208
239
179
228
170
220
186
213
191
244
208
251
149
165
213
179
150
161
138
259
222
178
242
199
232
187
153
229
184
211
220
207
168
156
126
178
110
218
147
219
208
236
183
253
231
198
197
211
144
187
229
274
222
220
176
168
204
215
177
226
185
263
151
188
176
267
241
158
179
189
172
200
156
153
163
136
236
177
190
223
199
228
206
230
165
212
228
132
219
203
183
243
191
165
195
183
234
187
189
206
189
245
190
228
199
224
140
187
177
200
174
262
166
159
189
191
211
202
144
205
187
160
181
166
164
179
211
176
196
136
159
212
230
214
155
172
167
190
203
183
172
252
190
207
160
198
224
213
161
160
207
237
199
215
215
186
235
246
216
230
92
239
227
185
191
227
213
197
193
208
180
219
150
220
213
150
198
227
257
179
218
182
144
198
232
193
179
205
189
198
196
225
221
224
194
115
187
195
220
176
156
215
204
233
233
225
192
145
225
231
163
221
228
209
226
202
216
159
163
211
223
242
207
176
150
202
130
228
184
193
194
174
161
200
185
267
221
125
175
173
229
198
202
237
182
203
240
202
206
227
172
216
212
191
194
215
204
207
202
169
242
220
186
189
216
182
134
210
199
202
181
183
223
187
140
145
217
159
207
192
159
246
202
191
147
207
181
143
192
192
166
169
265
209
233
192
185
151
194
187
175
132
174
211
220
226
243
177
180
179
163
194
195
189
230
152
218
213
190
93
248
222
159
193
214
205
176
198
242
176
276
233
218
160
134
231
203
196
174
245
198
217
205
140
257
212
169
229
199
136
221
185
216
109
218
234
209
176
147
170
144
137
235
186
214
219
200
215
192
159
244
175
218
199
206
209
194
168
193
193
260
163
215
166
157
227
199
190
248
139
192
213
231
170
178
237
228
181
200
199
189
210
181
221
120
211
175
217
218
213
262
202
236
227
223
204
185
214
182
202
161
176
214
270
208
209
147
184
205
158
161
211
192
233
157
201
218
188
245
138
211
148
181
164
229
229
204
193
230
174
222
241
209
191
269
177
103
190
213
143
229
153
197
125
187
174
195
224
204
122
249
195
197
180
219
241
233
191
194
210
162
165
172
208
184
156
227
250
186
164
153
250
233
224
181
206
178
122
200
217
171
179
153
229
228
200
196
194
246
198
154
241
201
262
238
148
224
222
209
182
193
174
210
204
229
193
210
192
243
215
227
223
232
189
242
213
159
239
217
272
180
204
165
208
100
168
183
194
138
239
216
212
165
268
232
213
216
236
151
203
229
225
237
228
213
205
245
201
200
253
161
200
148
244
182
212
149
219
248
237
153
164
223
146
193
155
164
171
209
178
219
203
202
142
187
204
207
180
230
172
197
168
219
199
182
141
171
211
248
165
192
282
230
202
237
231
178
166
184
214
229
229
219
206
185
150
181
214
242
170
189
211
140
214
178
232
208
240
113
168
225
212
204
247
182
167
160
212
188
193
206
168
253
175
128
133
213
194
218
224
231
240
254
219
204
249
139
172
204
222
164
189
253
252
203
179
144
196
227
160
258
166
191
197
148
214
250
196
225
175
227
188
225
191
169
260
200
235
198
162
258
147
263
146
176
184
212
208
257
198
197
186
161
252
242
214
207
185
244
245
218
212
175
189
209
225
257
197
180
178
119
215
218
199
228
193
189
203
250
212
248
235
205
175
213
244
154
195
182
197
199
196
242
212
253
180
195
216
226
183
178
190
222
226
184
181
158
234
150
267
193
174
188
178
208
173
210
202
246
137
218
199
218
172
224
224
183
174
160
236
180
153
137
198
259
229
240
227
180
172
231
210
201
222
168
183
203
241
236
193
189
251
238
197
209
215
229
233
217
142
177
123
204
233
214
270
205
197
156
213
189
189
171
234
219
170
146
141
160
141
232
153
141
249
248
183
276
223
273
260
194
223
205
203
221
175
213
156
260
213
238
202
194
276
208
152
200
213
177
167
181
153
177
158
189
188
179
156
197
183
148
178
172
249
201
176
137
194
179
179
234
229
215
232
239
196
205
187
216
234
145
175
188
205
173
227
266
191
169
152
246
225
178
265
174
211
218
154
168
187
228
217
216
199
193
212
151
129
198
230
189
205
191
156
146
191
158
200
197
204
188
162
226
231
182
210
216
205
183
215
235
240
222
250
128
207
213
227
236
247
204
138
153
203
137
192
203
219
221
240
212
213
174
211
182
188
210
250
200
214
188
141
198
179
180
168
248
261
204
198
134
231
185
216
224
220
169
158
241
242
192
195
210
226
185
112
203
180
202
203
257
205
182
211
179
207
155
157
171
266
162
237
232
247
164
167
163
205
188
193
234
155
169
176
149
182
197
199
244
219
182
152
251
218
215
227
217
195
203
247
161
218
122
150
180
242
243
245
197
239
214
218
213
215
209
198
238
184
247
200
181
163
146
244
203
187
235
228
188
186
184
193
249
194
143
189
194
177
162
174
243
255
167
204
292
143
149
205
198
202
200
142
170
172
253
141
195
249
173
250
144
193
239
201
233
183
229
162
177
228
180
174
199
158
148
130
257
211
131
161
203
149
231
184
237
198
205
242
232
219
262
196
218
248
180
244
246
259
177
140
151
182
234
191
200
185
224
225
235
187
223
219
211
255
197
196
250
268
215
160
211
164
229
190
190
187
125
183
157
167
190
178
200
262
222
164
167
258
185
233
167
204
174
172
222
226
146
152
185
181
240
234
196
146
255
155
222
194
188
251
236
243
203
245
157
199
139
197
219
158
201
217
172
142
196
231
169
133
193
218
225
143
163
156
161
198
235
121
195
203
215
247
216
192
180
156
211
182
190
202
214
169
156
176
179
194
199
209
213
175
233
174
169
261
264
217
203
267
207
168
202
151
183
156
190
208
220
151
161
168
190
230
176
206
226
169
219
161
206
217
241
254
228
183
225
220
172
184
158
164
211
266
188
243
196
227
152
248
274
192
247
234
160
193
221
185
271
256
227
210
202
200
210
229
226
204
224
142
197
229
192
180
190
206
228
221
206
193
158
194
192
227
216
208
220
239
173
199
170
244
198
250
217
171
207
212
245
200
215
199
170
280
213
187
163
122
136
190
171
148
189
224
247
187
208
191
232
242
144
199
126
160
186
235
184
186
195
202
235
239
236
154
213
209
228
199
226
253
258
184
143
181
208
166
175
256
176
252
197
216
170
241
225
158
164
157
165
155
172
189
185
189
224
168
277
260
181
230
215
217
207
181
185
225
231
213
216
217
224
170
182
190
197
159
249
258
184
178
171
225
216
225
190
237
149
219
245
176
185
166
210
234
214
279
234
245
215
197
164
250
197
188
258
165
175
223
165
168
238
141
204
198
190
213
228
181
205
162
267
192
239
162
225
193
199
181
197
121
200
215
203
165
166
211
204
212
179
229
171
156
216
211
194
145
197
147
236
174
218
146
115
255
252
213
167
228
188
103
225
204
213
168
192
208
205
160
208
234
181
215
217
135
172
256
226
167
167
236
161
200
263
233
254
161
194
190
190
256
157
180
207
162
174
192
194
263
185
147
150
265
176
168
193
227
184
215
224
221
211
232
175
191
167
182
192
201
185
275
174
160
232
247
236
165
185
184
206
133
199
189
229
208
199
245
202
222
144
165
208
178
111
192
228
161
227
171
254
225
182
247
205
276
263
192
215
185
223
243
206
139
232
193
216
249
216
185
193
148
220
124
184
240
212
196
114
92
220
156
143
153
223
198
208
271
136
260
262
255
254
168
117
165
202
178
247
227
253
228
229
243
192
217
204
193
233
291
164
182
236
258
198
184
292
145
180
180
202
202
218
216
201
257
196
176
194
128
188
180
224
172
223
233
194
187
225
210
168
208
149
250
214
147
161
229
213
156
220
219
207
190
182
186
176
206
166
237
216
251
145
216
200
206
200
197
197
193
203
187
244
205
189
222
205
202
161
199
211
239
194
180
234
160
251
229
171
211
213
182
162
198
182
237
222
195
205
266
202
220
145
202
170
206
171
192
184
243
198
172
164
179
214
158
180
184
196
209
237
184
269
168
175
221
216
224
243
253
195
225
187
280
214
179
178
199
145
201
205
184
210
242
214
177
168
209
244
232
159
166
217
221
217
193
225
186
192
207
213
224
201
207
239
263
208
217
216
167
184
232
202
188
141
154
215
216
193
256
147
231
236
260
235
215
186
224
180
228
213
188
224
193
172
235
215
198
193
192
198
230
214
163
182
146
218
243
216
229
245
179
164
190
199
226
180
193
161
201
188
209
210
195
218
173
188
225
167
196
285
208
241
219
121
250
188
190
171
162
187
240
250
153
185
223
227
195
187
227
210
225
209
197
212
263
210
182
251
203
184
161
230
236
159
115
221
198
196
206
255
160
196
154
240
248
205
208
245
202
230
230
113
228
150
184
197
269
185
145
262
200
181
170
230
245
194
175
250
235
166
207
149
212
213
214
188
204
161
246
284
147
110
146
221
190
115
198
232
203
200
174
215
246
217
217
182
209
206
119
231
203
233
149
138
203
229
220
211
223
237
185
238
245
244
203
135
226
165
164
194
205
181
191
178
199
158
182
197
151
179
180
178
208
179
207
212
184
238
204
183
169
195
234
190
219
196
204
185
178
210
241
210
155
211
250
186
147
186
179
154
213
222
218
236
221
194
190
169
159
202
212
186
145
189
175
214
181
163
230
178
181
194
235
230
193
196
208
175
194
193
191
192
233
183
224
102
260
221
236
194
178
236
189
179
193
294
197
242
216
176
209
176
221
223
218
196
231
237
170
220
249
214
153
230
188
217
199
180
175
214
234
190
219
212
124
178
159
232
217
241
210
105
186
225
219
152
196
238
220
233
184
213
148
154
173
176
281
186
206
203
190
177
205
225
234
161
179
224
215
182
169
174
236
252
197
211
208
216
232
182
200
278
193
210
161
190
209
261
204
241
217
186
165
197
286
162
198
173
221
189
156
192
205
196
221
219
228
257
123
215
153
274
161
268
227
191
166
222
215
197
186
256
273
258
191
256
257
192
238
223
222
111
184
171
242
197
240
239
189
197
188
208
225
220
163
204
236
182
208
173
172
207
241
156
202
186
174
161
144
215
232
157
208
173
185
166
188
220
188
227
244
168
198
183
188
135
196
219
185
166
209
221
132
200
188
235
184
215
231
211
250
226
226
215
163
294
252
187
195
201
257
183
205
226
213
219
247
191
191
187
169
197
238
235
205
164
130
207
204
201
204
205
240
209
227
206
160
215
201
242
161
181
234
228
199
204
187
202
196
167
166
197
143
150
227
187
226
212
224
201
193
212
91
214
202
230
221
182
179
211
197
239
171
239
191
175
154
223
269
192
215
243
241
168
178
193
221
188
185
185
190
180
209
147
222
160
196
230
230
209
190
160
213
209
144
204
190
158
168
213
202
228
179
259
145
231
142
234
129
210
172
208
217
201
225
195
205
139
211
190
228
244
227
189
232
251
150
176
172
167
166
176
150
185
185
169
147
203
213
197
202
241
224
208
259
170
189
215
181
233
212
139
190
237
193
190
222
166
121
155
176
255
170
244
189
185
160
132
155
155
220
197
165
205
176
148
185
176
183
205
194
232
250
149
202
225
200
271
183
223
223
231
163
171
193
217
153
251
122
236
206
239
168
179
190
223
230
157
189
215
233
207
224
242
212
202
165
221
217
233
215
204
255
245
155
164
112
155
155
219
201
222
166
201
203
258
221
258
209
204
130
122
164
218
157
227
159
239
195
169
194
215
222
147
203
219
172
222
202
208
190
210
207
196
212
214
138
228
194
206
198
172
220
240
242
234
276
267
161
199
123
145
211
202
136
233
143
227
200
221
208
209
209
100
220
228
234
139
233
217
199
180
215
194
195
200
173
175
162
169
157
174
141
175
155
120
243
179
242
276
188
169
249
142
173
159
222
182
190
227
158
205
198
227
210
178
210
224
208
207
234
195
263
165
228
195
231
239
247
200
198
194
170
164
263
193
178
147
193
212
234
202
240
198
186
182
192
215
171
234
184
180
196
194
163
195
210
176
161
211
232
242
155
228
206
146
159
268
229
199
197
138
202
159
247
157
176
270
217
184
142
152
182
240
154
256
223
172
240
209
205
106
220
145
247
160
175
203
265
150
174
213
207
169
178
237
222
183
206
195
214
145
159
259
153
220
196
185
182
248
236
180
161
224
218
266
170
267
208
181
218
221
168
209
205
185
263
165
184
229
218
229
231
199
197
266
163
152
224
190
186
186
177
163
207
223
217
203
226
186
191
216
232
219
225
202
177
184
127
162
257
223
211
148
197
169
210
194
140
214
231
204
206
215
224
252
236
206
219
183
200
240
205
192
205
162
175
194
203
236
175
151
147
205
198
155
182
192
186
192
289
229
268
128
151
178
132
190
195
207
185
212
179
201
239
276
180
207
181
218
243
196
180
213
184
222
211
195
193
199
254
213
220
161
260
152
206
228
257
174
153
244
240
207
214
207
166
169
183
226
219
188
179
151
236
213
211
201
203
204
219
213
205
226
157
188
197
156
254
240
192
181
198
240
259
195
153
205
202
188
213
189
209
198
247
125
207
230
186
158
212
215
222
220
251
187
213
160
191
167
160
246
176
211
225
214
185
158
215
170
238
195
300
224
251
233
224
235
138
258
174
156
194
149
164
190
214
153
190
190
237
178
237
232
150
187
168
216
244
243
186
186
161
141
230
210
198
248
202
181
205
227
169
227
233
101
197
258
204
186
158
266
230
143
185
216
190
212
189
250
202
211
186
251
236
198
201
225
191
240
237
202
174
217
220
175
177
203
176
257
190
175
176
234
259
166
225
174
216
211
231
257
240
123
236
159
233
151
153
255
199
168
242
223
209
192
243
262
194
186
235
191
222
191
244
150
218
194
183
206
186
208
187
176
181
225
206
191
179
241
192
186
202
148
243
150
252
200
218
114
214
174
226
219
276
269
229
172
212
214
153
216
202
166
203
229
195
214
193
164
204
258
143
248
215
198
150
200
193
178
165
215
158
229
241
224
220
193
186
165
219
229
223
199
187
232
194
126
240
153
96
286
209
224
161
189
209
199
232
162
252
122
191
148
166
167
254
197
207
200
157
208
216
159
204
192
124
226
149
169
229
210
189
164
139
150
233
228
185
142
180
193
230
195
203
195
202
225
214
216
190
202
187
182
197
243
153
195
166
137
258
217
227
180
117
258
176
219
163
224
195
265
203
202
214
176
242
205
264
175
186
242
167
235
192
167
183
145
198
168
188
209
250
151
184
184
227
259
156
182
191
212
211
150
197
196
160
136
231
179
208
211
171
168
231
209
211
212
196
214
253
202
187
199
182
195
169
144
219
168
151
201
196
200
245
243
237
219
197
247
239
211
197
197
214
156
262
175
246
185
183
187
221
146
195
224
250
111
237
192
128
198
206
184
261
212
285
257
154
209
262
177
198
205
216
198
179
166
148
187
221
216
213
211
237
123
216
241
231
220
176
232
235
193
209
184
246
208
171
145
154
148
146
167
253
222
202
193
214
221
230
140
174
172
205
215
168
206
181
223
127
219
135
184
236
255
183
241
215
290
205
190
268
221
197
220
208
216
250
256
243
208
210
185
224
269
195
175
181
218
156
177
228
191
125
208
242
152
177
207
217
230
213
184
178
214
225
280
223
207
268
205
185
183
170
225
183
222
151
226
153
205
137
217
195
183
177
172
141
254
174
166
114
208
175
228
224
207
189
228
246
202
205
149
197
176
125
191
188
240
169
217
174
229
212
218
209
167
182
164
175
173
205
216
213
210
211
197
185
229
164
211
220
152
229
181
244
190
162
203
200
263
153
196
176
208
232
183
173
227
248
173
215
215
185
224
222
216
208
223
243
184
220
180
210
195
283
169
235
185
203
179
235
197
151
181
170
205
239
189
175
207
169
263
139
195
183
192
126
227
230
155
200
224
269
125
157
236
184
135
249
204
194
239
182
222
264
200
183
231
201
271
147
232
265
220
239
191
264
191
213
230
199
226
142
189
270
185
253
243
249
216
188
125
163
178
139
237
208
208
226
238
177
176
226
204
111
151
206
215
222
184
214
241
176
201
227
257
208
248
227
174
211
270
194
187
204
192
240
180
169
207
178
189
176
232
204
153
160
163
174
233
234
164
191
192
224
265
192
221
163
204
163
255
162
186
213
207
197
190
189
186
226
207
248
210
163
236
230
189
253
200
162
267
230
197
232
236
193
156
194
204
211
192
232
191
198
149
193
213
192
182
192
214
177
176
240
212
136
233
203
229
168
166
204
176
215
191
170
141
139
197
172
161
195
154
192
179
239
178
221
234
241
228
145
166
179
203
177
261
231
151
235
205
189
205
223
185
214
148
148
171
183
264
155
159
155
224
158
153
184
213
183
203
165
208
204
116
206
195
221
168
232
207
172
206
200
199
238
174
174
264
210
148
203
229
175
192
192
202
169
230
273
144
196
169
156
185
195
185
191
162
241
174
163
224
222
207
186
155
173
251
161
226
160
224
177
238
174
201
234
219
184
226
253
199
202
193
219
193
195
196
209
280
240
216
207
222
252
214
116
202
200
234
219
194
203
266
219
170
209
207
277
230
201
175
179
171
191
177
207
181
192
156
189
154
132
194
246
228
146
189
282
182
201
187
189
259
239
205
193
210
159
130
190
222
232
208
177
179
233
188
234
173
223
162
228
193
181
239
194
150
220
216
172
205
229
133
238
237
147
234
106
196
166
239
251
237
213
191
206
181
145
195
135
173
230
246
232
236
197
203
235
218
208
204
84
197
186
175
238
183
155
205
190
151
174
249
218
173
195
261
205
195
221
232
189
247
240
185
262
197
169
272
164
194
194
236
210
205
249
233
177
241
154
115
210
207
198
171
217
149
141
204
128
192
181
201
227
157
213
220
252
232
236
201
216
231
259
225
221
229
194
223
228
257
152
215
226
232
182
226
193
194
161
203
132
223
123
170
200
225
260
196
239
197
244
219
187
213
217
168
192
258
185
201
170
193
246
293
225
165
175
183
209
135
286
249
196
194
202
191
197
234
202
213
180
186
231
193
151
115
186
151
221
209
231
211
163
184
248
177
156
222
120
232
190
182
125
253
199
236
208
197
242
169
197
170
239
219
264
127
208
151
134
227
169
154
225
216
202
206
218
247
120
177
206
173
235
247
232
236
177
208
168
236
167
105
144
164
172
202
216
221
185
186
278
225
205
227
219
233
131
128
217
97
169
221
211
214
182
185
147
188
224
195
162
172
148
221
225
225
206
153
202
165
142
200
219
173
216
236
251
232
104
227
224
226
140
236
145
180
237
211
182
146
230
205
233
257
211
124
163
232
173
210
166
243
225
168
141
205
264
253
169
149
246
214
237
109
199
235
229
194
207
168
131
189
170
249
213
242
167
180
235
192
152
188
185
202
204
202
184
157
204
214
238
236
243
158
256
228
207
180
226
236
178
212
231
257
249
154
203
160
167
229
253
189
188
231
249
182
240
195
205
201
187
200
247
203
154
230
220
241
217
158
225
187
181
206
192
141
210
195
138
250
220
230
191
140
198
226
218
274
143
237
197
90
215
255
169
212
240
216
233
168
172
192
217
195
174
178
199
166
232
194
161
192
181
212
192
170
228
204
190
262
182
213
232
179
281
197
159
187
157
172
172
148
220
192
134
301
225
202
155
196
214
216
232
193
238
226
198
233
204
280
169
218
222
251
226
219
196
216
209
189
190
172
157
168
201
189
211
235
140
175
193
241
162
181
225
205
213
180
147
200
225
214
221
170
213
225
187
158
135
179
224
158
224
190
176
189
142
175
243
143
157
192
144
230
198
149
246
210
132
220
175
181
173
254
188
157
207
188
264
219
150
198
161
242
156
159
175
159
200
222
221
215
232
204
223
198
219
231
163
236
189
171
182
170
170
164
172
213
244
246
192
178
174
122
201
230
201
227
142
220
244
197
196
274
213
158
222
176
214
196
191
179
244
233
190
183
240
165
205
166
175
155
243
170
189
187
184
158
195
216
180
220
146
221
191
235
246
197
266
228
242
213
168
252
169
160
126
141
155
215
200
253
159
165
160
181
217
174
152
231
170
208
188
216
181
162
149
185
152
152
226
184
189
209
194
250
213
206
237
175
239
186
170
231
247
183
268
142
182
175
241
194
159
189
176
170
207
203
214
220
184
188
240
244
166
199
240
175
269
115
212
199
192
214
216
234
207
243
198
170
217
226
137
206
186
227
231
208
117
217
200
270
157
165
149
187
132
218
178
225
171
170
231
220
244
230
198
249
230
203
184
225
202
220
231
212
192
180
188
243
236
229
228
171
192
230
244
222
199
233
159
193
245
224
204
148
153
125
203
201
211
238
147
206
225
179
192
160
223
214
176
237
243
224
217
241
212
186
235
178
260
141
214
219
206
169
169
210
164
183
227
206
179
222
218
193
221
256
235
190
247
209
244
179
198
181
210
224
184
271
251
229
196
209
215
243
115
177
238
230
192
158
211
198
194
188
244
253
236
204
276
183
214
228
233
278
219
253
193
162
203
131
219
164
185
197
178
129
170
200
229
210
183
166
214
224
183
225
197
135
194
188
209
184
239
179
274
205
208
218
161
221
233
239
246
271
167
217
267
181
204
214
215
174
205
178
173
166
268
210
183
239
250
180
256
101
170
212
154
169
174
203
216
193
204
246
205
240
196
210
256
218
179
214
188
243
293
242
155
192
250
110
198
130
247
223
216
183
209
193
263
161
206
179
149
183
184
219
176
234
228
212
208
212
225
250
218
264
208
261
248
198
256
243
249
219
221
218
198
166
228
161
227
252
227
242
257
210
222
177
146
220
181
173
194
141
270
253
241
246
260
227
203
256
165
202
182
200
183
219
178
230
233
191
214
234
121
208
251
231
192
166
221
231
167
209
155
173
193
129
230
236
160
197
182
273
198
235
157
167
220
184
249
225
181
218
202
185
158
244
203
202
176
187
247
131
178
197
217
252
139
189
214
185
141
133
209
225
176
155
252
149
203
212
181
162
207
184
163
207
151
274
199
166
182
176
249
195
163
166
208
196
213
201
184
232
261
238
204
171
218
172
183
199
222
276
170
202
212
168
200
203
204
161
160
175
192
201
205
212
197
192
177
177
191
203
243
187
165
224
255
232
183
223
230
221
215
222
155
215
198
209
209
220
189
161
135
210
229
247
133
191
215
186
186
216
214
140
205
227
229
179
174
242
188
245
161
186
191
168
176
232
231
190
177
189
172
238
166
168
213
195
175
230
188
216
243
127
209
243
233
214
187
173
230
199
180
225
258
153
190
197
285
156
243
216
214
178
162
243
206
220
182
193
155
187
212
191
215
190
137
170
208
216
211
247
235
209
273
183
226
164
245
232
229
194
188
248
230
188
226
212
240
183
236
240
102
197
158
158
226
158
155
210
259
248
179
216
185
144
249
256
164
164
247
241
214
207
162
184
184
210
189
218
116
249
223
156
182
185
218
154
213
247
246
211
199
194
229
213
243
143
240
245
226
210
194
199
218
209
177
238
218
166
231
247
193
189
200
231
187
254
153
143
234
222
188
157
157
249
237
230
201
219
175
221
225
165
150
210
208
222
163
205
230
145
239
218
178
209
178
175
221
209
270
186
161
171
163
201
223
178
175
221
160
209
129
180
206
185
184
184
123
245
195
160
211
198
257
186
243
202
193
222
212
244
199
162
177
179
249
154
216
253
196
192
243
205
229
236
221
226
181
216
205
155
176
153
183
240
139
206
193
255
182
195
171
256
218
149
230
166
171
175
204
234
206
142
161
249
243
248
169
148
225
138
169
241
254
207
197
175
200
208
205
263
169
221
191
266
216
206
166
234
210
145
242
237
215
215
234
208
199
210
183
239
230
215
179
188
169
272
232
207
185
208
133
213
276
170
122
153
202
201
174
206
210
179
177
224
145
161
246
184
207
248
200
175
181
132
295
217
273
203
206
176
214
230
185
194
163
162
201
182
159
220
212
140
197
205
177
260
255
170
195
212
239
205
240
226
197
220
238
257
238
152
256
246
205
166
255
233
231
165
142
229
212
218
218
276
205
147
220
187
228
216
219
208
256
207
232
165
221
149
237
239
282
165
193
231
214
172
183
126
190
176
147
150
201
153
191
191
147
139
141
192
242
109
163
195
150
219
213
251
148
146
163
281
166
147
237
247
127
209
238
185
140
191
202
193
181
192
240
245
234
227
201
204
256
182
183
179
188
145
175
252
216
222
144
170
211
188
205
130
232
265
191
202
261
206
171
166
216
163
217
200
225
102
225
185
166
137
182
148
190
144
214
244
236
254
206
225
209
198
156
188
214
211
135
232
242
239
178
182
183
167
173
197
173
207
225
175
230
274
229
249
211
218
171
247
223
230
208
213
195
242
230
245
244
239
162
174
242
252
148
200
188
198
153
131
185
187
252
203
220
264
225
205
245
217
217
157
222
226
194
188
261
204
176
161
251
203
194
195
165
193
221
195
198
157
158
218
228
155
194
213
198
191
200
213
210
228
216
204
259
193
91
202
219
198
203
262
194
272
149
231
202
247
212
247
173
210
214
224
174
225
186
171
193
223
195
209
170
243
210
187
166
158
243
240
246
194
198
158
163
181
208
203
231
218
243
189
153
170
215
165
217
189
196
215
196
196
229
193
217
208
208
206
213
193
170
258
208
181
227
196
221
181
201
253
158
235
249
224
235
234
252
123
211
240
224
190
237
136
216
217
234
204
156
243
216
246
195
212
210
203
176
211
183
221
221
151
126
192
233
198
206
184
188
210
244
193
161
184
245
197
158
126
169
197
190
207
157
234
189
135
219
207
169
220
146
246
173
167
240
200
152
214
228
197
138
261
129
218
202
228
262
255
184
210
214
184
165
210
184
176
179
245
215
219
273
188
166
174
231
185
177
184
201
184
224
109
218
215
246
233
230
206
193
260
129
219
179
191
154
185
213
122
259
233
211
218
222
220
144
251
187
198
114
260
242
167
192
172
169
203
196
147
204
183
218
270
219
160
212
202
266
181
205
139
258
202
168
187
244
255
234
166
235
254
229
184
146
208
189
206
218
116
202
204
209
185
242
244
216
213
220
190
198
192
256
237
174
207
173
183
204
199
180
142
203
231
160
189
229
217
247
231
175
193
226
234
212
214
217
214
172
163
217
164
127
139
156
202
231
223
195
254
176
256
142
193
192
174
220
226
156
182
251
243
225
197
171
244
174
188
137
188
191
225
124
205
177
208
171
123
235
170
125
227
221
203
212
190
237
223
168
172
165
220
167
203
135
238
180
242
218
164
171
230
181
224
190
195
175
263
158
210
195
252
227
98
188
226
230
249
223
264
240
173
190
173
268
202
199
228
186
203
205
234
216
179
118
199
214
218
169
206
178
219
198
202
240
208
188
172
227
207
169
225
208
207
168
212
246
216
229
246
161
245
243
231
196
179
178
229
248
143
246
210
205
204
232
206
180
218
196
262
203
215
206
161
228
272
148
171
223
235
192
234
220
188
214
186
270
163
205
261
184
184
162
193
191
156
155
178
242
206
257
191
228
236
186
208
194
209
219
236
183
165
160
218
206
203
215
259
202
203
156
224
167
177
161
262
197
184
152
149
188
133
239
180
162
225
212
162
188
298
244
182
158
255
171
208
256
181
195
236
163
220
183
232
190
198
209
249
277
267
186
242
179
220
216
164
223
210
248
180
161
170
175
265
275
214
202
155
278
215
199
161
222
153
225
142
216
202
173
168
176
179
214
219
186
212
231
179
218
185
187
114
204
191
219
235
243
227
215
177
152
195
235
208
235
285
232
183
224
202
178
243
158
223
202
214
162
149
185
211
172
220
190
214
261
196
212
182
229
239
246
231
148
247
202
168
169
246
204
183
197
233
266
204
206
202
245
181
220
257
227
185
210
228
164
184
207
221
175
227
216
246
198
157
161
198
157
251
202
217
214
285
236
151
197
230
141
236
153
238
185
185
143
234
248
209
173
218
201
272
272
266
235
236
228
175
193
189
213
189
173
263
236
248
165
184
214
216
103
167
190
210
224
197
154
223
174
270
222
151
208
220
201
263
181
239
181
194
203
207
228
176
171
251
237
177
188
202
246
226
150
192
156
211
195
166
209
169
224
232
228
210
190
180
183
233
211
223
236
244
155
114
235
203
179
203
204
237
267
139
182
213
243
109
232
218
196
220
209
200
185
218
213
247
201
191
200
154
167
237
170
197
222
214
124
213
197
143
201
234
213
236
211
192
146
175
184
131
240
147
221
193
238
255
182
171
210
176
195
265
198
217
192
200
204
180
244
156
173
146
154
215
234
135
211
212
192
214
186
261
212
235
202
169
170
184
216
217
102
151
179
176
184
166
229
207
210
224
224
176
168
174
226
236
188
196
186
183
171
201
232
279
225
206
253
173
225
232
211
222
217
225
255
177
258
213
138
170
214
152
203
201
195
231
190
177
190
212
250
224
187
130
171
204
235
242
226
202
187
195
194
180
184
258
184
190
192
227
217
220
237
220
246
240
215
231
182
192
192
179
245
157
155
169
218
199
188
138
213
254
180
206
254
212
271
178
263
218
192
185
200
141
213
270
170
216
199
223
196
200
203
230
181
199
201
160
246
226
239
234
259
171
179
163
260
222
175
226
169
207
219
230
256
260
158
219
209
171
189
177
235
202
247
227
104
182
206
214
136
189
224
239
173
206
224
191
239
161
228
154
165
176
156
216
158
158
189
150
230
151
184
219
236
161
174
234
194
222
209
219
237
164
203
223
184
187
223
232
148
228
167
170
213
260
191
155
221
197
179
196
224
197
227
187
234
290
142
207
218
126
244
90
200
114
185
236
190
216
178
192
196
211
222
210
215
253
216
235
223
202
247
221
222
166
240
211
209
150
186
240
224
176
157
212
181
200
275
202
226
257
221
230
221
219
186
135
214
250
237
174
206
238
216
217
223
241
178
239
218
258
229
206
199
205
225
242
258
243
202
267
212
155
157
227
243
213
190
141
232
227
206
131
247
275
214
241
147
215
166
182
252
224
218
191
212
146
166
202
255
239
150
268
143
163
181
209
215
257
208
178
226
211
228
203
107
196
135
190
142
189
190
259
186
172
157
221
188
154
195
150
191
163
187
181
151
317
221
173
185
189
167
216
195
106
256
196
198
238
214
226
257
258
174
192
203
171
249
210
189
197
182
210
231
234
192
220
173
128
162
218
218
125
203
232
252
281
92
199
222
243
190
218
182
155
184
166
209
201
211
217
239
207
228
207
220
194
171
177
229
230
199
207
156
207
205
197
167
179
272
188
194
226
202
215
215
132
141
171
159
104
240
209
266
210
234
223
154
245
222
131
174
184
193
241
206
167
183
219
226
212
179
224
220
167
189
251
242
221
230
134
244
260
204
208
231
216
176
213
214
286
259
249
245
180
204
231
265
247
224
175
144
155
174
217
245
253
274
228
216
207
260
245
265
205
161
186
244
243
163
189
190
129
203
176
172
157
138
195
207
218
177
181
243
170
266
194
204
207
167
229
178
214
227
140
184
248
197
266
185
196
198
190
232
162
222
202
179
172
248
220
229
217
238
167
146
247
244
176
191
136
181
216
155
192
181
133
201
148
188
195
211
213
167
231
204
171
170
228
198
242
157
255
156
182
187
191
145
173
157
241
218
109
219
197
177
208
210
205
154
211
197
220
268
138
192
156
136
164
144
211
228
273
174
210
155
202
250
221
217
204
240
243
183
179
120
205
181
244
197
187
159
214
225
215
243
227
177
171
197
205
235
224
266
213
165
256
219
181
244
235
226
202
197
229
226
196
236
217
231
178
241
194
219
184
210
268
217
198
225
148
163
167
219
152
165
187
149
148
258
174
181
213
153
174
159
213
191
143
184
146
146
182
217
212
259
181
181
202
165
191
263
177
130
149
219
243
200
188
241
226
221
222
221
143
224
135
206
201
230
181
187
204
209
171
239
187
259
197
187
160
210
235
277
197
209
172
196
201
196
221
198
210
194
201
197
226
214
241
217
171
206
154
210
247
151
223
222
175
154
205
181
147
247
178
180
221
224
217
188
127
136
276
170
139
186
227
201
204
169
215
205
241
187
233
118
174
189
206
243
215
199
206
213
162
139
119
190
193
233
256
225
236
199
218
191
198
232
248
188
247
235
213
160
212
233
207
143
231
176
200
217
205
200
175
172
218
189
194
139
209
233
194
131
205
229
149
270
131
236
216
167
225
174
224
181
308
244
219
235
188
180
200
176
146
247
169
201
236
170
235
247
267
171
198
192
197
244
253
155
219
231
222
235
237
202
193
184
234
210
186
139
221
180
223
196
223
193
228
285
237
225
215
223
161
186
196
211
204
224
252
159
226
171
104
229
193
186
258
167
208
151
229
208
211
191
200
226
258
207
218
226
233
209
182
156
233
237
227
219
184
208
180
181
227
179
171
198
180
144
213
191
217
177
146
143
148
204
188
207
162
182
174
209
150
252
184
176
175
223
220
193
196
149
230
215
189
225
174
208
192
184
147
203
222
168
200
190
192
219
171
153
209
155
221
243
175
210
247
187
175
181
161
174
159
199
172
181
150
202
262
189
213
204
222
204
148
213
147
182
175
206
154
173
216
237
201
167
158
227
180
197
229
182
168
135
206
258
200
151
209
201
169
211
232
146
226
179
219
243
189
183
166
245
194
231
223
177
172
200
233
227
151
188
256
211
233
227
206
226
135
235
204
210
219
195
197
222
238
227
179
199
222
198
200
215
191
215
191
144
262
138
208
216
175
241
245
145
216
222
148
248
173
168
213
221
210
257
152
192
258
258
234
202
163
219
200
208
192
231
196
237
168
194
202
188
190
189
162
101
254
153
200
251
246
240
236
209
240
116
166
144
159
189
179
207
250
209
219
243
229
151
224
137
229
211
202
242
233
175
170
206
276
216
251
201
218
220
228
167
196
124
227
187
173
246
169
154
160
214
218
189
163
250
214
193
189
236
163
178
233
188
197
163
168
190
217
197
268
196
198
199
197
202
224
173
251
143
211
205
208
230
246
164
168
225
213
185
244
175
194
188
180
146
189
197
135
217
250
184
239
198
104
170
220
251
172
185
174
228
226
194
156
206
225
165
205
282
209
198
153
168
238
201
148
247
136
217
246
151
225
215
201
227
219
125
199
225
188
119
175
208
176
258
233
111
181
217
181
207
199
176
136
167
195
243
152
182
208
186
167
170
226
205
108
241
151
156
192
199
105
251
227
175
216
219
179
188
290
175
185
183
176
253
173
189
211
162
237
214
157
241
129
182
157
169
198
211
182
205
255
230
241
198
225
217
205
191
173
137
229
209
195
174
161
179
237
105
208
237
140
232
207
212
182
205
165
280
145
196
249
266
190
126
200
186
169
208
255
126
187
159
249
222
230
231
227
196
233
189
188
176
243
212
149
193
222
195
252
150
201
238
192
213
186
171
194
226
213
178
200
189
177
164
212
201
171
218
172
195
173
207
141
188
106
237
172
248
180
255
146
140
213
277
243
205
224
230
216
131
194
174
155
223
217
242
260
223
203
216
238
184
227
225
215
153
218
223
190
183
210
194
238
173
251
173
168
192
243
172
244
198
181
215
165
196
194
240
149
209
211
171
175
264
151
173
225
217
155
190
146
175
206
229
158
219
192
234
109
203
170
167
181
213
237
243
171
164
209
178
180
200
203
171
196
257
149
211
246
206
204
123
196
239
210
195
159
187
192
180
203
217
189
198
185
196
183
245
121
189
208
197
221
186
204
182
171
185
162
201
199
193
198
201
138
150
236
246
231
194
225
258
193
180
175
174
194
160
205
209
160
209
211
209
210
206
196
216
227
213
247
173
177
194
194
155
174
164
231
196
232
143
193
268
208
247
174
251
154
207
185
226
217
151
188
208
185
166
132
244
212
170
235
179
155
134
205
171
231
221
214
195
194
249
183
203
197
190
260
185
215
182
193
168
180
167
156
209
156
208
248
220
206
174
180
225
233
181
229
248
194
151
207
127
168
203
233
195
232
258
138
176
170
157
200
170
201
213
195
227
192
197
205
205
220
214
233
180
180
301
195
188
242
213
247
125
162
232
173
241
182
187
161
243
146
183
220
238
200
164
173
221
204
273
171
208
176
193
177
226
190
218
154
187
230
229
174
232
155
207
240
198
225
195
163
218
191
166
188
167
176
211
187
198
188
192
178
211
199
243
242
192
176
234
238
225
232
191
188
168
198
224
177
169
148
252
196
108
198
199
173
225
242
251
283
187
159
181
164
215
272
164
172
181
198
177
102
222
154
254
201
194
143
188
204
169
151
239
238
185
193
170
250
145
114
173
222
263
168
224
183
179
208
216
189
250
214
148
188
204
244
178
183
130
100
132
186
199
213
209
177
205
239
187
230
161
208
198
168
233
138
159
201
189
214
231
206
170
242
262
254
206
236
155
162
184
183
236
148
200
238
154
238
226
185
161
203
214
253
228
188
169
245
160
231
195
124
214
220
226
244
225
266
172
256
172
199
200
230
207
162
195
219
138
216
248
181
236
156
227
167
206
242
186
220
225
217
217
198
180
211
167
177
242
174
218
278
193
181
167
171
188
162
178
193
201
165
206
160
216
204
247
200
178
257
184
172
209
246
169
192
190
244
175
255
156
213
202
150
169
200
149
255
208
211
171
179
222
191
185
154
242
220
151
252
205
195
139
209
199
208
185
234
203
165
209
145
227
218
195
199
187
145
251
237
157
246
177
253
267
197
231
142
145
246
183
127
228
112
241
188
157
223
197
239
235
226
159
230
212
181
218
254
243
130
156
217
165
266
242
181
203
196
214
191
211
195
177
172
179
214
204
151
191
257
224
154
143
187
166
162
127
226
216
142
163
213
155
172
182
195
202
199
167
176
222
196
223
221
177
217
247
195
206
247
174
185
213
127
234
186
156
152
243
207
208
204
196
220
153
191
205
222
186
240
210
169
216
174
129
116
237
218
198
184
188
208
196
240
218
253
141
168
158
219
235
152
164
224
133
147
226
227
182
220
157
216
194
226
242
186
238
189
191
140
207
177
252
176
254
156
155
221
177
256
248
188
214
240
199
230
174
255
189
195
228
133
133
118
183
197
228
167
149
190
199
241
185
169
211
160
186
275
193
129
186
192
233
218
173
158
200
159
239
186
194
219
250
255
170
223
197
153
189
236
207
197
156
186
168
200
207
213
137
158
181
219
221
256
208
128
257
256
151
245
201
157
141
177
209
203
253
242
183
190
218
157
245
254
200
189
173
220
216
278
175
238
222
138
112
201
208
207
200
227
239
218
182
233
186
206
202
210
196
219
183
116
251
244
202
134
228
167
192
254
219
169
140
106
205
220
253
226
211
206
179
232
171
122
183
198
169
248
141
156
184
188
174
204
292
208
228
215
226
189
143
198
212
179
234
226
194
220
169
209
204
161
199
185
169
223
218
152
228
254
173
208
139
156
204
226
197
251
169
209
244
143
204
154
178
150
238
218
200
227
229
230
193
254
232
227
277
169
247
186
190
147
149
192
188
221
223
185
213
191
194
221
207
204
231
187
187
228
189
184
186
249
242
142
177
182
168
246
128
186
206
163
180
194
171
214
228
198
187
260
212
192
239
244
178
175
261
218
225
197
200
198
203
241
181
151
207
232
167
216
196
211
260
206
214
199
149
149
280
213
225
184
159
241
221
212
183
216
126
177
187
212
211
203
263
268
226
222
153
199
228
220
145
264
150
185
204
222
192
255
179
166
203
153
246
221
180
235
205
175
262
247
114
198
247
167
144
200
213
145
230
170
221
205
214
168
251
250
238
252
202
174
247
228
159
238
233
231
222
206
198
243
214
242
205
113
157
147
191
223
191
176
162
198
206
218
256
226
202
179
211
174
216
193
254
213
283
227
234
159
225
195
164
231
198
231
203
185
179
199
200
282
187
198
216
231
226
147
182
189
259
244
138
200
126
182
179
180
174
238
236
152
194
218
184
140
206
219
209
211
173
251
197
206
215
238
244
238
186
190
234
182
186
143
213
253
247
195
238
269
197
178
204
182
253
185
247
196
229
144
241
271
258
203
219
251
220
228
197
206
199
215
220
164
172
133
158
207
160
236
182
200
269
271
242
192
190
224
189
212
133
138
178
235
195
213
217
178
247
139
231
180
192
180
174
213
193
188
146
168
209
205
271
221
223
191
247
225
215
182
198
169
201
271
167
188
233
227
116
166
162
213
109
175
197
188
169
236
180
195
218
229
233
162
202
231
212
215
191
148
217
135
245
185
202
198
175
245
241
212
166
257
212
234
217
196
150
195
169
197
126
174
209
185
170
199
250
198
164
217
211
173
166
173
161
176
254
255
186
169
204
173
194
285
184
217
145
180
160
179
294
136
265
212
220
208
173
194
167
180
252
173
233
206
198
241
187
210
211
238
223
92
253
185
208
214
224
203
157
209
197
138
237
180
178
184
168
274
202
235
255
188
163
167
216
211
201
170
200
213
204
192
176
160
185
208
239
173
137
248
188
269
215
206
153
207
192
141
235
193
198
196
216
155
237
226
208
167
197
236
223
207
230
232
210
221
165
205
257
186
209
205
186
131
273
230
194
152
213
254
174
158
189
205
218
263
240
221
252
183
168
187
122
178
161
159
192
184
273
239
230
220
249
186
163
214
230
247
258
246
213
230
198
184
103
160
268
170
185
188
276
185
230
196
141
120
156
243
196
248
232
202
247
145
170
181
117
151
234
246
217
194
212
163
142
197
208
175
205
250
215
211
230
274
216
181
208
175
202
180
225
182
208
210
220
162
221
263
241
193
166
168
151
162
188
164
216
233
238
273
176
128
207
220
222
259
270
223
201
198
162
184
234
211
228
159
200
215
222
243
189
142
242
181
192
183
214
130
250
248
231
216
238
168
163
141
225
191
225
231
252
165
228
264
160
195
219
189
196
233
180
190
210
199
261
233
144
173
218
183
169
168
182
257
221
175
202
206
245
242
178
237
164
213
192
232
230
194
174
169
163
178
251
162
202
207
182
174
250
201
151
205
263
232
209
229
216
216
245
232
125
222
170
174
173
212
245
223
235
165
227
191
229
183
162
216
187
231
207
229
219
224
213
209
264
170
193
271
226
210
257
192
178
225
214
185
185
191
243
221
215
172
142
117
241
246
192
176
263
234
198
222
229
240
209
220
198
202
188
252
159
228
203
173
257
172
189
176
158
226
188
233
174
215
182
280
222
195
220
151
192
215
190
228
161
129
205
229
258
127
175
129
215
200
182
176
192
215
176
185
296
197
237
190
193
241
208
221
190
205
197
219
190
185
196
246
177
172
151
196
186
215
218
201
216
207
164
157
225
212
146
181
174
206
142
212
227
138
209
213
205
178
195
223
170
206
240
195
204
220
226
191
207
155
205
200
275
172
211
183
198
208
190
173
235
123
226
212
185
219
218
184
245
183
152
171
170
191
156
209
166
206
213
200
224
238
283
183
212
238
202
210
143
222
201
157
203
251
163
138
170
142
252
215
208
194
161
230
216
198
177
196
222
244
184
147
197
149
165
173
203
201
203
190
133
247
181
243
213
220
182
211
206
218
165
243
156
198
234
187
170
119
167
155
174
193
173
190
200
205
180
215
203
199
228
169
165
195
218
201
210
235
182
191
229
194
243
239
170
191
151
134
226
240
176
208
224
215
225
176
154
221
199
244
174
165
174
202
225
178
227
145
207
201
161
178
197
176
226
222
231
217
168
200
193
229
113
241
199
185
202
204
188
189
160
210
224
188
181
229
213
210
159
198
204
188
187
196
146
235
142
202
229
244
202
273
253
171
212
254
163
235
206
225
228
272
150
231
240
261
251
244
209
241
118
206
151
148
226
181
238
209
149
232
194
151
205
251
226
203
198
271
196
151
155
230
252
195
160
131
167
122
230
209
151
202
195
190
256
239
174
279
235
177
142
189
287
211
161
180
144
208
247
155
203
252
146
226
173
209
231
203
184
236
252
196
221
216
187
212
194
253
176
168
284
233
212
191
252
219
197
190
213
171
224
271
229
170
142
151
139
233
273
193
162
165
243
184
193
201
203
253
197
173
175
194
177
149
214
185
218
207
138
211
201
218
213
187
239
211
88
155
224
223
276
239
151
183
202
228
243
172
146
184
129
214
298
167
217
173
205
168
236
161
197
218
231
125
212
197
277
179
120
181
119
171
190
219
194
162
174
163
221
242
234
155
235
115
225
169
153
195
172
208
229
244
212
176
202
232
181
184
164
186
235
167
213
155
187
217
177
193
263
211
229
172
190
221
206
204
152
199
204
240
227
167
226
174
183
196
214
175
156
178
220
161
203
220
184
246
170
214
242
252
173
277
166
253
196
198
222
173
221
171
259
183
154
266
187
184
205
166
192
246
189
228
134
236
256
211
235
227
251
178
138
200
233
224
205
180
221
202
195
144
211
186
224
193
206
255
203
207
179
137
217
216
167
191
166
173
173
221
185
198
193
243
197
192
208
224
127
221
242
190
188
187
186
253
206
224
206
190
164
229
208
212
176
196
184
248
205
189
206
210
211
263
163
196
189
274
215
180
202
192
197
207
200
221
237
196
229
169
197
162
222
173
155
200
223
220
215
236
246
189
180
152
209
189
220
224
165
273
230
206
196
206
166
203
186
179
200
193
181
196
238
220
199
207
228
187
187
232
239
209
196
185
220
191
185
127
188
227
202
210
219
204
171
217
208
139
158
220
170
209
170
164
237
185
188
203
197
222
158
152
160
182
215
281
158
215
225
252
169
189
275
227
222
166
221
185
248
211
184
185
235
210
142
144
178
203
228
208
222
185
253
172
156
193
224
141
200
209
183
268
195
173
263
129
162
157
167
197
200
170
188
217
188
181
224
164
177
233
155
242
218
249
227
217
180
221
223
202
163
236
233
199
193
200
142
183
257
207
150
176
250
238
282
234
256
226
226
233
276
184
239
192
195
227
169
169
188
168
200
204
200
221
148
202
242
223
182
147
181
284
219
227
184
165
202
210
257
188
169
187
161
169
216
260
124
212
230
193
186
204
204
177
176
145
208
203
141
233
227
231
191
233
220
167
272
204
206
189
144
182
174
189
207
242
199
175
237
218
219
226
167
191
267
182
229
197
195
224
191
191
229
239
210
228
194
237
156
190
101
175
143
140
240
135
207
279
172
249
205
211
184
176
133
190
153
239
119
133
242
239
149
203
195
245
157
204
253
167
154
205
197
202
159
215
161
221
265
212
237
207
235
167
188
232
238
230
184
191
190
195
165
210
264
232
182
190
198
264
240
188
201
213
99
260
228
199
235
261
246
143
203
204
167
197
203
171
151
217
200
165
183
172
246
227
215
175
211
170
189
204
195
205
218
159
227
162
176
203
196
198
169
176
155
187
191
179
189
226
193
198
236
133
191
122
165
196
215
201
253
184
223
249
230
196
159
184
223
179
231
219
228
200
220
153
253
239
164
138
214
204
224
203
208
143
246
235
127
133
201
219
213
241
219
159
169
179
154
212
217
174
199
253
209
189
200
189
164
204
159
209
250
153
248
223
210
239
216
256
223
162
221
199
247
215
210
149
211
276
209
217
189
181
234
163
218
183
240
237
173
231
239
225
178
158
146
267
161
212
155
204
217
215
202
199
224
239
212
165
195
187
226
198
165
189
179
206
202
214
239
232
125
211
204
170
205
212
179
164
218
217
174
226
141
187
227
223
208
219
134
210
283
220
213
238
228
241
236
191
164
169
261
150
219
263
232
201
224
229
244
101
171
253
153
188
215
265
261
199
194
209
227
242
242
195
191
202
169
229
200
190
223
220
194
193
263
228
223
171
197
258
136
158
252
177
165
189
222
184
172
236
185
221
202
212
213
162
206
261
150
168
140
221
211
181
124
200
156
200
191
196
202
182
156
181
159
216
193
196
237
223
265
201
206
172
245
191
237
144
187
230
172
181
187
207
221
232
185
196
185
193
174
158
190
211
224
179
260
208
226
238
228
239
257
250
254
195
231
248
244
221
211
157
155
168
155
204
270
207
211
231
150
263
211
231
236
209
185
172
174
164
164
177
260
240
179
198
234
172
241
212
197
162
277
242
164
211
158
167
86
227
195
173
231
191
168
198
219
237
178
184
206
204
140
222
177
179
220
217
153
272
143
234
199
177
233
213
204
192
194
182
225
164
225
219
222
146
204
143
232
167
229
198
212
252
176
193
256
188
175
229
170
170
186
172
213
183
223
165
214
180
181
212
217
167
239
210
190
249
209
178
263
123
228
193
208
203
242
227
163
208
196
133
225
199
147
169
191
173
184
170
197
197
160
218
157
242
183
163
170
172
213
197
128
148
196
150
254
194
179
135
218
158
185
212
223
198
203
217
199
206
198
222
261
203
226
221
177
234
191
223
140
189
176
257
195
222
256
259
170
151
204
226
160
165
172
166
191
263
222
212
151
262
184
101
260
162
208
237
213
158
256
193
215
229
245
237
194
227
199
210
247
191
187
271
237
227
167
177
203
170
193
172
179
241
197
208
210
201
204
246
195
238
158
215
197
220
192
188
217
228
231
204
259
168
168
198
144
199
199
175
226
211
218
127
194
231
190
264
201
242
210
222
157
202
215
261
156
190
186
213
192
238
223
159
171
184
147
170
191
290
150
181
144
144
207
162
154
203
145
204
176
226
200
229
185
185
198
186
196
203
157
213
154
186
258
232
188
228
257
144
176
190
205
243
214
110
257
157
134
187
91
200
183
203
185
240
195
182
260
215
233
207
148
183
187
192
189
155
227
229
175
217
231
197
222
210
192
220
178
211
183
242
150
240
187
180
201
250
149
205
160
209
241
166
241
230
282
148
286
223
216
190
191
222
167
193
186
192
211
216
251
118
197
223
191
151
195
215
162
220
245
218
269
207
165
230
128
199
210
142
173
255
266
155
197
209
205
265
230
217
182
216
200
215
148
138
217
190
235
220
193
227
211
195
207
142
250
181
150
241
171
195
218
197
235
225
263
160
182
193
169
212
178
260
196
206
224
215
228
232
205
188
170
196
177
158
151
168
230
185
202
258
187
132
237
201
177
142
209
193
211
197
235
240
218
208
248
201
228
186
150
240
209
184
176
221
207
233
201
204
138
242
167
180
213
220
223
210
228
213
247
218
134
146
186
210
169
178
158
183
218
164
249
259
202
193
215
214
120
192
148
215
178
229
213
252
211
199
232
211
219
179
199
123
226
250
206
188
209
170
200
253
223
196
216
140
194
222
209
191
216
206
227
228
199
228
220
180
234
234
212
210
246
200
230
243
131
230
191
179
242
167
209
222
185
206
223
221
227
218
148
211
212
211
182
214
149
157
221
207
171
183
170
214
220
166
227
174
233
253
197
201
161
141
203
164
224
223
209
207
225
239
177
260
175
176
170
175
164
138
166
174
184
223
189
208
176
219
183
177
175
193
242
180
180
207
196
168
234
217
175
157
161
229
248
191
248
203
277
231
220
217
227
213
203
233
217
224
250
258
216
169
219
227
203
224
174
169
246
186
180
196
208
184
166
222
169
200
132
219
194
233
271
239
238
170
246
201
234
180
244
220
190
243
224
180
172
240
168
198
181
266
138
195
214
240
237
215
231
157
174
151
199
226
195
144
189
139
231
198
214
206
252
224
194
278
205
210
221
159
204
205
238
157
243
156
203
212
239
231
186
181
163
197
188
217
183
223
257
222
221
253
161
246
226
178
220
191
185
204
157
151
286
260
228
237
192
212
198
212
224
233
132
167
256
239
151
185
267
186
211
188
202
211
181
219
215
222
130
179
123
159
210
135
189
121
230
210
190
181
199
260
166
182
137
200
110
211
205
204
183
139
198
175
246
165
193
146
211
147
217
217
228
189
202
166
224
185
244
210
198
194
159
225
188
187
179
185
149
222
163
203
132
217
178
224
234
224
187
253
239
172
226
201
233
240
192
206
190
245
211
219
230
159
178
179
196
189
257
225
210
203
175
190
245
158
204
256
212
227
208
224
240
221
167
168
147
211
193
177
158
222
179
244
196
206
192
229
205
248
230
220
213
199
168
195
172
184
185
147
207
142
207
237
159
200
224
161
217
230
197
189
222
171
220
144
191
227
225
204
174
159
209
194
245
202
222
210
274
200
214
246
204
178
228
224
248
171
212
179
235
167
174
212
217
179
235
201
175
244
201
210
232
214
196
163
240
224
169
205
188
233
245
240
170
224
253
163
250
183
180
212
187
164
222
209
167
219
171
190
200
162
209
168
230
193
218
167
186
173
197
245
225
183
220
153
165
231
252
224
207
238
237
195
232
84
208
149
248
174
194
129
180
226
146
155
160
182
185
164
188
283
182
173
175
196
230
199
133
274
165
236
242
203
241
111
213
217
204
205
186
195
198
190
189
210
243
249
231
205
233
227
186
201
191
134
130
161
233
204
218
227
153
254
193
185
235
229
212
196
237
227
216
245
198
200
169
201
214
233
192
219
173
196
161
196
166
129
183
166
266
189
189
259
189
195
219
180
182
219
167
272
186
195
231
277
194
209
212
231
257
205
200
190
238
240
260
217
233
149
191
233
212
170
153
164
139
236
191
209
210
227
146
188
205
210
164
218
190
243
177
191
157
173
198
254
194
188
199
229
248
147
109
206
220
201
244
201
211
158
161
164
216
232
222
185
200
224
259
228
164
199
157
225
247
142
201
172
234
242
249
190
183
183
225
186
259
185
243
187
192
149
142
229
258
205
201
147
182
192
201
175
124
156
214
137
150
210
235
165
219
164
168
200
209
204
191
228
198
109
224
237
208
172
263
223
174
203
136
228
128
214
187
191
182
189
237
156
225
209
156
152
258
249
196
147
211
286
178
215
260
222
213
185
182
177
287
229
203
199
200
186
228
167
265
215
157
202
225
223
172
228
146
226
192
283
243
150
246
214
221
138
145
192
182
198
229
184
147
182
200
176
158
220
199
222
162
201
151
164
131
204
272
160
140
173
147
187
143
253
223
181
159
216
231
236
111
238
178
216
165
212
239
239
178
191
185
153
211
151
184
194
270
261
195
192
207
155
158
200
170
171
233
208
150
172
239
196
158
208
223
216
203
204
209
176
197
196
235
236
185
214
164
221
230
232
197
253
181
172
212
160
184
224
167
232
224
199
224
249
255
186
209
200
215
232
188
143
214
211
206
227
158
196
115
233
190
222
152
236
210
200
226
175
178
235
204
265
239
214
175
238
224
220
228
155
173
182
131
212
152
211
197
199
274
205
147
190
168
151
251
237
243
195
171
154
264
160
166
209
197
185
157
237
264
259
211
165
206
164
248
154
238
221
232
155
218
247
186
224
189
229
221
209
160
203
240
146
209
196
184
234
240
190
135
165
236
221
214
164
228
229
178
153
204
215
221
183
231
200
182
234
216
200
175
225
213
199
261
229
177
147
211
220
190
180
230
264
225
216
180
101
221
179
269
200
164
216
219
101
152
244
237
202
175
215
256
159
145
139
202
200
155
202
239
231
163
188
205
197
213
169
195
223
223
208
158
221
192
146
217
223
200
202
258
177
235
174
232
136
193
199
224
200
225
259
221
248
174
223
197
212
231
194
225
164
214
151
214
243
170
170
202
231
198
189
224
218
187
147
265
167
195
155
197
216
184
158
179
206
206
170
160
219
265
179
185
155
183
252
217
167
188
207
188
209
185
244
177
192
208
182
198
184
188
147
189
184
244
178
184
147
136
192
207
185
227
243
206
117
165
219
216
223
193
203
195
214
175
230
216
174
185
211
199
209
165
180
174
154
207
225
224
273
166
209
167
181
214
175
179
259
177
192
216
173
187
217
202
192
263
183
243
201
190
182
215
190
233
235
161
197
195
202
183
224
193
209
201
212
160
163
202
249
196
248
237
156
170
199
213
134
217
240
216
167
187
215
202
203
197
227
249
164
251
188
189
188
126
194
237
173
187
188
131
253
220
169
188
235
151
173
198
202
198
236
162
190
221
203
195
169
217
178
167
224
226
205
244
252
159
214
265
215
203
193
179
171
240
212
143
210
138
219
210
223
175
181
200
180
184
192
199
181
113
226
238
229
177
264
188
206
173
227
207
232
223
180
160
163
288
242
194
228
243
141
181
149
213
202
183
199
197
195
221
214
170
162
206
179
183
165
200
127
240
165
188
203
151
218
235
245
218
221
174
179
176
227
210
213
184
202
235
188
236
243
228
208
85
214
244
194
218
181
239
271
134
198
194
177
210
207
198
254
235
161
188
193
285
190
208
151
162
173
190
192
217
172
178
207
185
192
209
161
190
153
216
182
219
239
232
207
144
154
197
193
168
192
228
215
200
191
178
270
197
200
202
238
185
222
227
199
164
175
212
197
232
288
187
153
197
172
195
231
237
236
163
179
150
210
206
209
216
211
252
215
151
245
215
180
161
180
203
206
225
186
216
237
235
215
197
207
210
184
154
194
214
218
241
186
252
226
99
155
220
209
168
216
215
170
184
239
148
266
177
249
191
206
136
204
229
228
158
227
222
227
265
176
187
177
183
248
179
172
181
185
236
219
247
185
163
158
218
187
195
176
170
215
206
189
191
148
257
199
172
179
215
237
156
202
224
190
190
199
262
231
148
241
203
159
178
136
205
257
250
187
233
195
224
198
176
222
240
187
199
245
202
215
218
175
194
261
188
209
218
193
188
244
168
245
219
157
187
157
192
185
190
223
150
213
222
221
177
184
121
198
184
263
179
236
195
222
192
193
143
145
256
186
145
186
154
172
253
222
176
187
117
211
210
256
241
210
146
264
236
242
193
168
235
184
205
183
196
261
222
237
175
166
220
233
227
164
160
207
192
156
178
223
256
180
243
221
189
151
186
145
244
225
228
195
205
202
159
171
203
194
173
188
205
230
242
227
189
216
169
196
233
160
191
186
210
239
225
192
240
188
230
237
209
184
240
190
209
210
198
159
194
214
185
186
205
187
158
220
182
222
201
198
204
165
170
206
185
207
207
184
148
197
197
223
226
196
138
249
211
186
184
153
170
157
227
212
185
187
223
169
241
142
210
212
170
222
171
176
245
126
246
235
244
221
200
236
177
234
195
146
192
164
141
209
177
204
221
163
235
204
160
188
220
210
237
221
249
193
174
189
160
179
246
129
201
209
254
195
219
202
210
221
171
222
246
228
143
222
186
223
183
188
135
194
197
253
151
177
194
181
203
202
184
164
291
151
251
228
216
209
191
216
201
290
271
157
133
228
197
214
203
238
230
223
178
185
103
230
157
205
206
150
225
211
184
192
159
208
114
219
206
239
191
203
143
189
130
229
172
142
159
210
239
250
240
214
219
162
189
206
164
212
214
207
195
198
228
205
216
193
147
245
198
225
221
253
134
172
199
174
217
196
258
220
205
221
153
203
197
159
211
221
224
175
193
216
209
186
128
160
221
223
209
175
140
216
259
220
221
233
174
247
191
201
137
188
227
188
215
192
234
218
215
219
191
182
177
237
215
208
199
182
211
225
229
181
189
219
225
205
190
227
198
185
173
206
157
165
175
178
249
232
226
183
169
252
227
223
191
206
162
202
186
228
225
198
151
190
215
191
184
223
219
154
192
206
210
198
170
166
173
148
192
232
190
171
206
167
228
163
195
249
236
219
227
172
202
259
227
219
186
235
170
169
249
287
219
218
255
173
236
197
255
189
214
209
213
169
176
238
183
164
189
201
188
152
224
190
177
193
141
222
210
241
204
183
174
187
198
209
191
206
242
291
208
195
198
172
190
209
262
177
161
163
235
177
197
223
169
221
233
178
186
203
200
178
171
258
159
149
158
154
238
198
207
216
169
222
197
218
139
128
160
244
152
195
203
184
172
214
208
206
252
151
148
161
166
205
166
227
198
180
154
218
211
199
185
224
216
233
176
301
225
268
151
180
233
196
232
161
124
181
222
196
193
223
212
204
155
223
159
219
184
193
193
225
186
243
199
187
191
229
180
237
199
179
206
210
181
249
197
223
179
179
192
231
238
208
164
232
170
218
172
170
235
169
215
114
258
203
171
183
233
263
205
146
193
183
200
186
135
190
163
249
229
186
213
223
219
209
256
132
190
235
172
116
219
218
217
236
278
186
158
254
225
167
166
204
196
170
196
178
199
170
240
230
201
224
226
263
239
245
229
197
171
165
175
206
212
187
212
185
231
155
230
154
235
177
211
172
167
223
218
209
172
176
204
151
254
222
217
197
214
234
223
178
200
221
160
276
241
188
222
194
177
236
187
243
222
221
133
172
251
127
247
240
170
208
147
260
195
180
205
182
183
241
230
238
135
156
242
193
192
213
234
211
183
224
223
196
235
169
173
227
191
159
169
192
180
164
192
208
215
168
215
166
240
248
180
194
225
217
238
152
224
160
161
145
139
185
196
176
203
130
239
162
201
246
209
216
219
119
235
241
152
252
242
190
235
253
221
179
208
253
180
205
167
153
198
204
234
154
254
187
231
192
280
217
185
221
218
246
184
201
236
251
160
178
201
156
196
129
176
233
169
241
299
190
205
250
227
204
228
255
161
180
209
227
227
152
139
221
176
245
166
198
172
204
166
172
221
216
184
178
136
236
258
212
265
139
146
211
183
217
180
216
211
185
238
216
225
222
197
141
148
181
238
151
185
224
239
188
181
203
166
185
178
164
202
106
173
198
236
201
209
235
206
248
111
198
216
191
166
180
144
199
191
190
144
162
204
290
233
234
219
216
219
161
235
200
202
210
176
223
196
236
243
149
161
211
229
205
167
178
219
196
237
203
240
157
228
259
183
285
152
236
194
256
191
256
196
203
178
225
218
146
127
160
203
262
148
222
177
210
233
134
216
191
173
187
194
175
157
215
290
164
207
214
180
200
238
172
251
215
207
194
210
207
187
178
215
222
183
205
196
227
170
172
223
188
167
161
223
170
237
145
215
198
140
190
182
164
207
183
214
241
202
192
170
177
220
175
179
188
279
176
178
169
183
161
241
199
212
125
193
222
236
160
150
212
197
198
170
235
251
204
210
166
233
145
186
206
191
216
208
234
198
233
217
244
199
184
249
171
240
254
193
231
173
250
155
225
178
182
234
238
175
172
238
248
161
239
182
173
210
238
293
169
193
249
236
129
195
254
223
208
187
149
156
209
207
160
192
176
172
165
156
177
260
151
166
179
235
251
139
252
240
215
206
155
243
200
207
266
254
191
209
188
241
186
196
188
181
143
205
178
210
159
215
223
170
240
246
174
206
136
198
194
244
244
220
180
156
188
243
146
253
180
147
173
160
184
194
197
157
175
177
146
255
193
168
178
194
154
191
272
259
102
230
203
235
194
204
190
200
221
228
233
206
203
187
190
190
207
247
189
155
149
193
172
203
173
229
237
167
223
258
212
192
211
176
131
154
203
203
184
233
245
223
186
247
165
224
196
228
188
215
197
184
146
195
254
176
152
186
192
177
226
237
196
206
220
230
162
192
234
194
263
211
178
189
226
190
140
140
217
221
211
243
220
224
196
149
182
207
202
169
231
207
183
135
158
196
226
138
132
165
236
141
162
189
273
198
249
193
220
180
257
214
187
123
211
192
218
184
228
186
166
219
176
197
221
232
184
187
194
217
202
258
210
180
238
117
175
215
198
193
199
191
214
185
173
208
220
183
195
217
250
188
228
140
138
250
177
180
214
197
161
237
164
237
242
152
159
235
234
108
224
213
186
231
218
193
171
168
166
202
255
252
192
255
186
186
223
213
207
174
219
167
200
193
198
222
253
254
192
222
176
144
211
236
237
170
251
215
261
244
223
255
207
228
259
233
244
199
171
205
240
248
201
127
206
186
132
245
200
150
189
252
205
203
211
222
217
178
259
233
244
199
247
197
211
276
196
249
212
208
174
244
184
264
260
221
190
249
168
221
238
228
197
190
206
139
128
186
176
160
154
204
222
189
159
223
118
193
156
174
183
126
208
211
162
253
246
263
235
206
205
124
155
202
165
168
194
175
190
242
233
203
142
178
211
244
223
144
207
208
211
250
225
191
215
200
171
200
162
226
191
218
221
252
175
243
201
127
183
247
185
193
228
223
219
212
219
214
205
152
196
247
208
200
206
208
199
241
236
226
297
221
175
218
173
176
214
186
204
191
176
192
153
176
212
221
236
220
181
194
172
225
208
244
226
181
190
146
204
230
177
226
162
197
222
273
166
215
214
196
203
224
199
187
147
202
192
185
165
164
147
164
205
220
231
154
232
209
232
211
194
150
160
175
198
162
164
222
205
187
194
154
209
202
259
218
180
197
156
137
216
194
183
199
189
236
189
140
169
214
197
154
192
139
170
149
224
170
244
243
289
222
170
190
234
207
222
223
167
177
216
127
154
241
192
203
207
221
163
155
203
218
175
176
221
209
214
184
194
192
265
168
232
166
206
226
247
244
141
176
191
282
172
175
290
207
246
144
254
178
183
187
206
223
177
188
173
226
218
210
176
177
165
204
183
215
236
193
180
203
160
225
238
205
220
231
207
199
174
226
199
238
127
177
149
184
179
248
179
205
156
195
156
175
170
250
179
140
223
168
251
188
232
153
233
248
218
211
251
191
214
181
170
170
249
203
221
207
219
242
246
233
167
203
144
153
189
146
224
207
224
226
171
182
192
188
226
189
202
261
208
170
194
195
185
216
215
187
158
261
241
144
218
214
199
187
215
270
263
193
212
282
172
249
209
207
194
265
236
157
220
159
182
192
240
209
241
251
197
225
248
215
301
223
202
195
232
238
193
200
235
211
204
225
155
214
142
135
220
233
99
195
194
251
243
177
207
188
252
184
211
204
161
248
260
186
258
253
152
238
194
125
247
246
249
168
197
242
152
237
185
255
243
210
175
233
200
169
158
196
224
251
221
268
218
213
113
149
187
220
211
215
211
213
185
183
162
219
159
244
183
278
133
168
225
159
183
139
202
160
162
245
212
249
227
195
204
204
203
175
221
250
146
183
199
258
233
150
209
210
169
226
200
224
278
254
233
163
148
192
164
200
279
219
180
203
217
201
184
211
224
201
235
214
243
232
191
207
200
234
162
213
224
249
208
164
147
167
176
146
212
173
206
181
200
242
217
230
170
193
210
173
199
169
211
217
208
275
212
242
208
201
143
202
173
110
201
259
208
163
237
202
267
196
223
193
197
234
138
187
249
205
153
205
235
206
238
235
232
203
199
194
214
185
248
231
175
180
245
188
230
207
263
247
236
196
169
205
212
184
181
231
190
213
218
246
228
221
197
129
201
195
199
196
192
196
179
185
219
227
164
208
224
166
149
156
156
189
156
222
231
227
152
203
236
173
173
210
196
175
165
197
243
204
174
229
219
215
179
181
217
196
236
227
193
201
148
241
177
156
182
239
181
143
221
139
166
220
170
148
215
186
232
215
208
230
138
210
160
235
160
183
163
208
226
225
199
211
177
164
227
239
204
183
207
224
238
206
234
196
265
204
246
164
170
249
257
190
134
198
170
170
215
184
226
167
180
241
96
264
211
165
209
199
201
197
223
119
175
229
203
201
182
212
207
230
193
212
208
206
196
248
253
200
203
195
165
214
184
199
244
216
205
204
204
205
268
232
214
221
231
207
134
168
275
208
239
185
230
245
178
162
228
248
172
194
220
206
164
182
156
143
191
260
265
204
241
196
218
216
165
231
223
146
176
212
133
181
222
181
225
211
210
206
163
193
248
206
203
203
254
194
198
204
108
195
243
244
155
186
192
158
240
247
191
176
181
157
260
244
219
120
230
183
148
164
191
223
176
230
183
171
232
157
260
178
251
121
240
191
250
208
221
245
222
167
156
215
197
154
228
196
172
257
164
243
233
220
243
191
162
231
235
189
207
206
182
242
250
235
225
217
188
173
140
244
215
206
238
168
253
196
209
204
206
184
198
193
237
234
205
202
160
199
215
222
180
195
200
176
205
151
187
230
237
182
203
174
157
188
220
187
268
190
221
214
244
144
214
188
126
261
209
243
188
195
208
170
228
192
237
151
144
206
178
194
126
182
176
159
265
229
171
126
187
186
187
234
184
213
172
230
249
202
211
201
235
179
193
130
215
193
209
170
281
231
199
222
230
190
222
180
199
155
254
195
221
248
222
154
232
214
174
206
192
220
173
145
169
141
200
134
168
218
225
213
171
192
232
237
235
193
181
161
232
150
178
173
151
191
207
199
172
225
208
164
227
239
201
214
184
186
262
177
124
191
231
210
160
237
217
189
217
228
201
176
167
211
254
223
221
222
185
230
266
237
175
203
177
187
179
243
204
202
234
220
214
260
180
246
171
151
216
124
200
240
130
191
253
221
163
149
168
183
234
175
119
188
139
170
215
220
117
184
184
178
225
247
265
199
186
165
182
167
151
256
155
220
163
197
198
156
179
216
265
237
197
185
201
219
177
178
196
217
201
224
196
125
155
151
201
212
183
201
233
180
199
217
194
203
195
126
206
189
188
203
203
224
220
228
197
177
179
99
182
237
206
262
217
195
233
239
220
147
199
256
207
112
239
185
220
168
202
199
146
226
242
204
191
185
180
175
229
201
252
176
218
173
222
235
171
189
239
242
260
190
192
231
220
192
227
226
266
166
253
182
181
225
177
211
212
134
222
216
237
193
155
221
186
201
221
169
135
231
226
178
186
153
241
202
240
207
250
247
186
239
240
232
174
167
183
253
226
249
242
226
209
139
264
209
234
203
151
226
232
200
202
138
213
175
218
239
230
169
219
240
222
222
253
141
230
169
261
228
221
193
197
206
190
184
182
214
238
198
195
204
259
152
222
190
182
216
112
188
225
209
218
185
174
228
204
188
186
192
153
250
177
211
200
165
236
256
187
180
238
202
253
245
147
158
212
179
212
155
187
160
142
155
175
202
220
129
196
221
188
177
209
159
175
140
164
198
171
127
231
229
237
224
217
173
216
209
218
197
249
161
185
181
224
175
206
215
218
243
218
237
219
198
189
282
223
174
181
249
184
129
169
190
163
174
233
185
190
177
162
233
228
209
188
214
197
207
203
161
230
184
246
213
149
152
222
177
215
214
193
103
252
252
178
173
191
257
241
178
186
195
158
158
222
218
167
194
195
152
188
248
155
249
229
214
213
145
264
210
250
228
275
176
176
190
175
209
186
261
215
266
189
210
193
257
163
218
162
154
163
197
191
235
184
220
214
134
165
155
218
249
187
203
179
195
97
179
210
196
254
227
205
251
219
236
153
250
150
220
254
182
141
140
208
223
245
125
194
187
190
164
232
128
212
200
188
151
191
243
181
232
181
227
174
167
237
204
228
233
205
190
176
198
236
201
291
180
103
261
226
232
239
219
244
264
234
217
279
220
236
242
259
154
184
215
236
199
247
219
197
206
169
264
242
240
164
208
177
198
192
216
285
231
183
286
194
199
209
151
204
222
242
233
155
163
197
230
213
242
182
214
151
217
90
163
207
171
218
216
237
167
183
185
233
227
186
222
187
195
212
218
221
257
207
159
179
219
256
257
209
196
194
225
109
191
187
231
216
175
193
199
223
188
175
253
205
242
175
206
242
227
215
220
201
218
256
228
209
177
157
184
233
209
216
300
169
197
198
154
249
120
170
197
239
201
202
209
182
211
155
198
204
193
185
211
216
206
225
178
157
221
221
226
243
179
195
191
240
175
196
276
200
268
263
161
228
215
225
230
261
228
159
215
226
157
153
216
215
186
201
162
120
156
154
182
154
207
191
225
216
229
175
163
241
210
179
211
214
193
225
218
232
233
164
178
194
202
186
214
249
218
194
240
211
227
203
175
189
208
193
208
203
221
239
200
194
162
210
158
144
248
193
178
152
139
185
164
219
221
172
180
215
205
198
153
187
209
241
185
242
243
243
227
133
179
142
259
233
201
208
191
168
184
246
228
133
219
186
222
197
197
199
241
250
144
201
224
208
228
256
171
234
227
254
259
178
182
205
216
203
204
217
194
162
193
249
237
192
202
227
231
212
174
242
154
174
219
173
214
137
218
229
154
206
202
167
193
191
226
251
227
198
135
220
241
156
199
176
167
221
172
146
193
224
202
196
187
189
203
103
187
160
181
211
164
215
247
181
220
246
225
203
213
198
220
229
201
153
202
190
171
167
243
190
222
202
193
166
150
172
199
196
192
187
130
226
278
239
191
256
203
200
242
176
171
178
251
176
187
198
203
236
187
244
256
180
168
149
187
189
176
193
199
224
153
158
169
127
223
205
204
193
177
225
169
251
206
162
164
199
194
126
182
186
198
145
209
194
170
248
209
219
206
157
125
166
252
254
191
204
202
239
200
181
184
161
183
196
221
189
241
248
200
222
194
196
169
170
166
178
139
206
191
164
223
229
243
193
139
244
228
232
238
131
291
197
229
215
244
147
171
177
228
157
194
182
163
203
217
178
169
191
255
249
168
213
161
227
238
191
177
157
205
213
259
180
196
221
186
205
203
176
133
192
237
189
148
183
219
227
197
233
207
273
229
216
240
171
132
195
166
172
227
204
226
205
187
147
162
194
183
219
215
195
245
182
127
201
118
245
206
222
221
147
142
176
239
208
238
222
245
220
242
219
168
204
263
242
266
127
194
187
195
232
288
211
209
225
213
224
237
170
200
161
204
177
190
186
227
171
235
218
213
175
242
280
231
188
204
199
190
215
177
252
236
177
186
263
132
215
263
196
213
160
199
150
161
224
212
223
279
244
197
214
176
247
236
223
180
184
214
209
192
224
180
140
214
126
224
263
171
209
221
184
237
153
251
238
218
229
197
120
228
186
190
221
153
159
246
246
210
203
143
163
258
234
156
214
176
266
241
167
205
154
271
215
206
138
130
134
216
263
156
233
252
149
141
167
221
272
172
261
175
185
180
237
221
156
175
203
205
204
166
212
188
242
178
195
247
150
242
220
192
180
213
225
206
169
133
205
207
162
229
180
191
225
240
234
216
138
182
164
255
157
180
202
141
204
187
192
184
204
171
224
166
233
223
200
217
244
215
232
202
141
219
186
210
186
151
150
184
144
162
188
125
257
142
175
193
145
182
198
237
228
154
212
152
239
259
226
198
213
232
176
186
144
217
232
170
233
219
242
194
215
250
250
178
270
190
185
200
260
178
250
234
169
253
155
192
232
180
161
210
215
244
182
204
191
198
158
251
155
234
187
176
240
169
225
171
162
229
239
223
195
206
240
239
177
214
164
201
189
134
218
206
223
206
239
192
133
251
189
214
225
196
139
202
189
173
226
225
210
245
180
204
176
210
150
214
222
226
236
253
144
205
189
184
190
145
121
221
175
224
249
258
181
194
193
220
198
116
177
231
175
265
218
240
193
213
215
255
173
167
217
212
198
208
189
188
219
175
242
238
193
233
189
188
220
215
203
221
197
153
171
230
202
215
241
217
258
168
194
252
203
208
165
150
204
151
185
231
199
252
178
173
169
207
174
266
281
130
232
206
206
192
183
257
179
202
243
234
188
186
226
168
190
125
190
263
197
206
140
232
184
171
252
151
200
185
231
240
246
187
208
155
217
192
166
146
174
231
160
217
175
145
182
217
170
206
259
189
182
182
158
211
181
244
239
230
151
188
228
244
212
138
145
214
184
178
167
234
304
248
214
218
191
164
230
168
217
235
221
151
176
197
184
261
205
148
221
230
147
137
161
156
170
150
166
208
256
194
221
202
146
228
236
160
244
234
182
172
210
227
190
208
199
206
200
218
128
195
221
152
166
193
164
205
246
153
229
249
253
185
235
214
185
219
253
219
218
183
201
178
219
194
148
203
183
157
238
222
205
217
199
228
200
146
160
224
219
237
207
244
195
175
204
200
199
203
173
174
178
161
180
227
180
210
203
170
168
267
219
169
217
256
194
152
203
207
216
165
246
237
221
222
166
215
160
192
226
189
192
219
234
149
129
184
169
148
156
196
234
220
175
124
245
187
219
234
162
250
249
201
201
159
248
204
187
188
211
189
242
234
158
216
247
183
189
214
231
209
206
158
196
101
241
140
212
155
165
237
194
185
158
181
192
198
142
167
189
186
234
223
244
210
173
187
207
249
181
185
240
122
188
220
206
233
209
267
165
239
220
285
208
211
223
164
185
269
194
141
209
256
185
154
164
196
192
299
176
169
192
156
183
182
193
151
217
189
172
192
196
218
152
176
202
231
214
221
221
211
162
243
211
216
172
185
122
203
197
212
235
142
169
209
245
236
256
139
196
209
278
201
161
217
174
253
199
197
170
208
172
237
224
198
202
175
168
262
187
221
168
134
207
274
215
165
83
240
214
205
199
218
191
189
221
162
196
148
192
207
130
189
204
197
166
209
225
171
193
234
188
206
235
205
230
211
220
202
220
219
172
226
182
236
135
184
211
183
236
248
219
209
248
125
247
211
215
221
217
159
158
274
119
213
191
154
210
204
204
167
186
225
273
172
239
218
209
147
201
216
159
165
178
215
270
203
191
203
237
114
165
192
155
186
224
199
203
175
136
195
218
158
193
192
168
240
209
244
238
247
216
255
139
135
218
189
194
180
179
254
174
190
258
213
243
235
162
221
204
227
181
235
225
173
241
208
204
245
198
285
170
193
250
183
234
167
217
185
183
186
239
234
153
190
159
232
165
160
268
188
213
201
229
172
192
202
197
234
225
167
147
254
191
255
237
223
183
222
212
228
235
230
206
285
241
249
193
214
120
219
221
250
208
210
215
196
215
209
99
190
160
158
209
154
246
246
169
206
215
206
196
226
177
178
133
189
242
207
178
201
197
218
203
175
235
273
176
133
194
182
221
185
221
186
224
238
237
167
223
186
228
210
192
188
203
223
256
150
232
198
122
222
238
262
172
149
195
233
149
257
170
163
228
128
183
219
127
211
234
203
200
218
265
143
237
194
219
177
174
179
170
161
212
241
186
233
196
224
219
250
217
192
103
181
121
203
170
138
211
217
154
173
196
175
234
211
161
215
152
234
204
238
159
201
178
173
182
252
206
166
169
287
160
129
251
175
242
223
221
202
150
211
210
240
220
188
211
176
171
202
240
132
190
216
254
158
199
206
258
237
169
223
171
206
215
238
206
160
197
190
192
262
266
202
248
286
162
197
278
200
222
190
233
210
167
238
207
226
185
180
251
231
239
187
240
166
214
170
196
236
160
207
127
253
199
159
244
222
158
199
206
240
211
156
226
236
184
174
225
208
181
233
143
237
174
154
215
175
222
157
160
232
252
170
190
231
183
185
243
189
156
219
188
139
204
207
235
223
225
174
183
210
234
214
276
171
243
190
183
203
219
184
172
180
182
226
209
249
160
162
175
208
185
232
121
224
194
228
102
179
225
154
139
225
162
212
215
162
243
164
232
225
212
212
214
267
195
192
204
185
232
163
216
174
180
216
225
199
193
253
203
241
179
197
203
183
197
275
175
218
191
228
145
241
209
195
227
167
192
251
206
188
155
249
189
215
156
196
207
207
113
232
248
175
232
236
196
186
176
227
140
120
164
198
283
231
158
195
194
197
175
167
221
170
199
239
173
177
240
224
191
224
158
220
159
226
176
232
199
265
162
161
196
272
194
171
214
227
241
181
270
202
131
200
187
141
179
167
222
211
177
149
173
164
189
121
165
191
203
151
223
129
182
110
187
168
186
271
142
207
212
228
179
202
208
263
260
198
203
232
207
174
218
128
179
193
169
219
241
174
216
190
154
236
265
198
208
227
230
210
188
222
177
221
203
173
181
170
193
155
136
164
173
178
207
228
205
223
244
161
185
190
184
247
197
216
231
266
166
156
181
127
179
214
171
209
213
158
156
254
195
188
240
224
111
176
237
158
178
212
234
234
146
200
196
179
141
189
209
200
142
251
232
194
236
181
281
223
153
208
207
276
221
250
213
156
234
223
193
179
157
255
213
225
171
205
192
232
175
245
184
140
171
154
190
184
179
166
245
198
222
174
243
186
178
211
178
175
176
187
206
170
224
175
161
230
252
172
165
174
195
200
154
169
219
133
212
200
178
205
183
273
238
238
181
204
254
190
214
154
209
199
241
203
266
141
200
189
215
265
235
194
196
161
209
214
198
226
209
239
243
264
245
169
195
204
202
184
162
117
228
182
216
213
124
216
245
210
204
253
164
212
120
187
199
250
150
215
205
244
207
214
247
237
184
241
208
206
151
262
172
222
218
171
228
182
210
212
253
221
213
243
216
189
188
230
244
179
246
198
222
167
216
222
181
191
238
179
225
255
202
198
244
212
173
195
199
187
157
260
187
210
218
219
244
194
199
204
256
189
271
224
159
198
147
170
180
216
159
132
220
225
233
206
223
121
224
262
171
204
185
168
213
183
144
156
258
214
187
211
194
223
197
198
170
244
196
229
228
160
173
212
201
172
214
229
248
222
190
210
171
187
217
195
138
137
184
199
158
226
247
149
187
155
198
175
194
149
182
280
260
152
205
174
174
209
236
203
199
180
252
199
226
152
138
168
244
126
176
137
155
218
182
211
152
182
228
165
247
178
235
276
184
217
170
249
198
208
126
206
176
252
144
207
236
187
182
203
229
179
206
201
192
223
198
233
173
245
209
176
219
191
239
202
187
209
215
149
183
229
181
166
150
236
233
203
262
176
238
194
167
184
231
186
208
156
198
160
225
224
171
210
208
177
173
194
219
163
263
199
178
172
185
231
210
199
152
188
207
217
238
247
230
154
235
216
156
231
132
238
201
229
196
181
215
181
195
209
246
143
195
221
180
184
272
165
171
231
166
154
233
258
263
240
187
173
215
200
211
215
147
203
195
208
180
215
214
189
178
225
190
194
233
237
243
154
264
215
167
182
214
201
178
160
218
225
168
224
206
209
148
199
164
172
227
210
204
270
180
217
178
216
204
190
213
196
160
185
159
192
213
213
178
240
198
127
216
191
215
180
178
175
156
183
224
164
152
194
262
207
230
211
180
220
240
207
238
221
218
197
268
180
200
158
201
136
248
176
207
175
218
182
221
199
184
189
166
159
196
167
186
219
162
253
175
217
201
192
142
229
205
231
272
141
187
225
195
232
231
252
176
206
225
245
266
182
159
143
246
146
210
140
193
217
223
217
242
164
165
245
230
206
121
224
194
159
230
137
187
174
205
190
202
231
227
203
145
148
238
237
215
160
223
232
256
216
202
185
155
170
263
247
184
199
237
215
165
215
190
184
183
183
193
222
230
192
211
272
241
179
167
216
226
163
225
176
205
193
120
239
235
214
232
227
191
183
257
143
140
151
152
208
228
183
150
172
140
149
174
181
167
248
198
200
229
202
262
162
247
194
134
207
245
150
210
182
183
191
244
195
168
184
193
188
215
209
182
154
197
215
179
210
163
206
190
252
215
219
209
204
186
212
242
252
186
153
197
183
187
181
221
175
177
192
199
265
152
172
246
205
192
245
232
154
240
246
224
223
202
276
214
174
207
132
165
166
200
210
224
148
224
228
230
154
184
206
116
216
211
184
256
237
205
248
259
184
151
171
184
166
212
220
223
159
186
224
213
165
169
226
233
272
198
231
250
219
191
217
256
216
223
260
213
134
229
226
185
148
195
152
208
217
170
230
121
237
205
115
230
182
181
205
160
218
230
154
200
165
147
183
195
251
234
203
207
161
177
168
172
220
133
218
177
156
169
163
186
234
236
220
181
203
184
235
227
230
214
161
227
157
163
231
175
191
242
157
223
142
175
170
214
174
166
204
252
146
205
170
181
240
161
232
216
232
213
212
247
254
144
211
126
238
200
240
244
204
212
188
157
267
216
148
250
187
214
187
216
164
238
122
204
186
234
196
190
203
237
204
252
158
185
246
143
98
147
184
186
152
177
231
140
158
232
196
139
196
211
215
229
200
246
209
210
156
161
207
215
103
215
191
194
210
222
249
163
209
204
204
209
172
200
190
242
213
212
161
170
198
209
218
167
236
188
146
226
208
275
205
266
252
202
160
146
170
205
276
231
217
186
234
214
241
239
187
185
221
213
194
200
203
191
220
195
234
215
203
171
239
205
257
248
169
149
235
167
223
209
186
226
206
188
209
175
223
200
272
217
161
252
191
130
183
273
169
210
266
157
234
219
198
196
200
195
202
225
202
245
159
190
194
221
251
187
217
171
209
214
208
248
193
257
179
224
208
207
213
252
228
230
169
212
194
188
179
165
258
261
240
154
214
175
167
204
226
260
219
250
191
195
199
180
202
211
246
217
226
216
176
154
194
161
235
212
179
230
225
200
171
281
181
190
191
180
194
222
220
185
180
217
250
283
209
218
211
230
215
196
235
252
130
147
204
194
205
168
225
174
159
191
218
217
220
203
198
237
194
239
238
192
215
214
218
208
194
231
132
203
164
188
219
200
218
148
112
192
225
247
204
232
144
236
207
233
113
226
199
223
156
224
236
187
149
238
174
216
169
171
221
229
252
204
219
152
222
199
205
221
216
231
210
167
259
178
212
202
234
218
236
185
187
196
184
214
219
184
204
208
134
211
171
204
209
126
156
232
235
271
223
216
211
217
252
206
241
173
171
264
155
223
135
220
216
155
173
173
173
162
220
197
222
232
167
181
167
198
235
201
179
241
196
186
244
275
201
175
212
185
156
184
202
154
180
159
164
236
175
268
216
223
182
179
197
147
209
205
226
221
221
241
149
135
207
183
188
229
208
241
161
203
231
224
209
200
225
210
198
234
202
230
219
160
242
270
196
102
244
187
178
193
177
143
199
231
173
273
196
201
223
224
196
144
201
214
246
217
219
219
200
205
272
225
191
169
252
197
132
199
185
183
197
192
132
189
168
266
137
154
138
197
208
186
202
205
230
232
157
186
158
240
184
257
160
207
124
261
174
207
222
225
181
266
247
222
241
167
219
227
223
196
227
242
187
146
190
221
263
156
226
165
236
199
198
162
193
145
246
242
156
154
240
188
190
186
282
153
275
179
240
213
230
184
242
162
242
224
168
223
240
189
214
192
220
233
197
140
176
223
217
203
207
186
210
189
213
190
182
180
251
177
197
216
199
251
192
230
204
173
225
210
200
152
225
242
237
242
189
162
196
230
205
171
214
160
202
196
212
199
190
147
154
188
234
148
232
216
260
278
156
187
178
218
247
242
228
177
236
184
216
217
214
244
231
144
184
220
179
203
202
185
210
190
221
211
227
190
209
183
226
168
204
174
230
161
221
150
148
210
196
205
251
211
202
199
97
245
254
198
163
200
222
181
190
242
214
259
219
205
179
214
146
203
193
215
232
184
121
224
222
189
218
210
215
173
221
210
254
206
244
190
227
231
135
190
193
169
219
159
159
174
183
178
141
218
200
197
250
175
180
159
241
215
232
180
234
218
118
176
206
214
187
152
258
146
204
271
210
195
234
179
152
161
247
206
227
167
170
212
154
152
192
207
226
209
241
200
133
82
173
211
191
230
145
238
216
167
216
151
215
243
220
188
199
180
187
211
171
249
171
181
201
232
165
197
214
195
142
206
173
207
215
180
267
199
252
223
152
213
197
185
210
187
146
234
202
231
191
209
162
218
166
265
113
223
215
223
181
240
214
235
188
197
188
184
199
218
214
207
189
210
243
248
192
240
249
226
162
221
193
236
192
118
189
213
250
171
263
170
207
209
231
148
233
226
161
250
186
201
129
203
223
216
120
222
189
247
212
201
179
218
239
215
177
153
213
201
174
169
212
204
205
215
224
126
214
200
158
202
176
212
269
201
180
217
163
179
179
239
246
207
253
202
195
261
195
210
197
154
183
203
189
214
220
210
253
211
243
255
188
194
205
214
238
195
182
195
158
197
214
173
217
162
250
203
209
248
187
159
270
180
134
138
232
239
199
188
195
151
175
198
129
240
164
255
173
222
187
233
200
194
259
219
181
248
168
202
210
180
168
162
248
233
195
190
198
211
173
225
227
213
242
230
191
207
228
175
252
223
182
196
193
211
197
200
241
221
219
150
145
225
112
170
194
207
253
209
160
238
128
190
213
235
183
221
189
170
170
159
224
222
182
198
239
132
220
152
205
249
233
180
240
204
165
204
197
198
197
198
223
170
166
162
205
185
167
201
236
159
186
221
206
221
173
274
191
154
181
124
217
239
156
153
183
177
223
190
171
171
178
199
157
144
169
227
195
219
201
180
155
241
167
253
146
213
175
155
207
245
107
178
240
202
241
185
184
222
195
216
191
181
246
238
212
168
221
184
132
110
161
163
175
231
197
220
163
175
202
200
169
200
183
190
242
203
206
177
211
183
221
209
231
210
170
203
184
152
262
165
159
187
218
184
158
185
242
202
189
226
168
174
170
194
137
145
217
176
170
221
252
234
234
215
195
192
216
194
158
254
149
208
191
221
143
243
220
213
230
177
196
136
246
236
208
122
198
197
202
213
222
189
192
229
203
147
238
172
228
198
207
218
211
124
227
233
163
150
215
178
179
183
210
178
217
191
262
243
209
276
282
226
209
187
202
207
191
213
145
238
215
238
210
194
210
202
188
190
206
242
227
224
182
180
207
127
276
166
195
195
184
154
158
240
199
196
207
231
213
199
174
212
198
269
158
198
228
229
216
174
164
153
115
225
160
172
180
238
216
183
214
172
206
185
226
259
171
177
173
151
231
211
169
190
195
237
268
242
208
215
196
219
185
164
172
236
136
246
225
172
173
199
239
223
177
154
193
218
217
163
120
144
194
203
215
264
220
239
215
219
169
182
185
216
175
161
199
208
212
197
198
157
204
222
194
202
239
220
190
196
223
153
186
191
259
264
242
206
228
175
197
176
181
246
214
245
229
191
238
159
189
157
206
189
214
185
223
195
190
181
209
247
153
218
130
197
180
160
192
208
180
197
250
202
212
176
212
194
240
254
248
219
212
180
133
221
204
219
189
237
221
212
171
227
263
180
151
159
140
230
219
136
146
242
207
242
199
224
189
268
171
204
175
207
224
175
173
204
184
191
199
154
183
121
283
201
208
237
212
168
233
165
178
216
153
186
213
200
190
247
162
221
201
196
166
199
196
205
217
190
241
209
147
235
249
230
166
229
180
222
258
180
235
235
254
214
228
169
222
149
224
152
205
234
204
179
240
208
191
215
224
231
191
273
242
213
171
195
212
176
116
246
159
148
202
197
237
96
241
204
251
221
169
200
180
173
182
240
214
165
160
188
206
215
206
181
227
228
176
202
159
231
197
223
233
191
227
239
159
186
238
233
225
173
168
164
228
238
250
172
222
146
210
190
219
179
230
197
188
245
162
179
167
219
224
224
168
247
247
224
221
202
144
202
223
207
238
170
193
167
202
231
169
191
163
219
187
182
214
216
132
200
116
183
220
202
251
243
173
196
183
135
184
181
182
221
249
258
241
216
224
226
216
203
240
148
209
181
238
223
168
160
133
230
201
132
181
227
156
203
227
186
196
261
217
175
236
201
227
174
167
188
226
201
236
269
176
241
199
249
136
178
246
203
203
151
236
171
127
231
219
174
183
186
164
182
219
202
232
260
232
214
173
283
249
251
234
239
169
218
238
194
211
229
139
208
227
226
173
236
158
235
175
209
245
204
170
194
188
237
130
198
201
188
237
205
239
200
150
200
209
204
238
248
256
222
214
222
229
154
233
243
194
218
216
246
197
193
241
182
200
209
140
218
232
205
167
294
181
169
178
250
226
108
210
232
247
175
149
168
224
186
205
214
217
183
162
220
205
203
180
190
204
189
250
195
236
165
254
203
242
176
198
164
242
186
203
166
134
171
167
174
191
251
242
236
194
167
151
192
213
149
214
209
206
222
217
186
184
235
195
241
175
228
160
212
223
227
99
215
254
119
208
160
215
221
206
206
180
213
227
254
218
172
260
209
196
215
170
200
213
135
198
188
215
248
209
180
169
197
247
236
216
173
195
218
157
220
233
166
218
208
222
171
193
182
179
205
209
245
134
171
172
209
115
182
193
245
243
177
172
224
199
190
240
168
214
222
229
215
205
191
253
175
148
232
216
248
248
203
216
230
175
214
194
172
142
185
158
205
219
246
212
228
133
152
216
204
146
184
182
132
195
171
163
236
210
188
213
236
148
206
254
183
205
204
214
218
239
161
269
161
250
232
246
139
212
250
180
144
250
188
239
205
209
246
216
211
195
189
236
241
170
198
167
243
211
179
239
120
172
209
172
205
229
193
210
229
223
182
203
227
204
189
111
146
211
259
194
205
186
197
277
196
210
180
203
227
205
212
249
163
280
230
223
240
177
169
148
177
230
194
228
206
230
240
153
251
170
202
185
187
203
206
205
178
138
206
175
198
180
220
178
221
210
185
181
213
184
178
229
161
180
138
192
132
164
225
160
177
259
212
207
209
220
157
182
198
213
232
215
242
189
191
220
153
155
158
275
195
184
232
205
208
208
198
165
212
234
210
228
113
224
223
170
157
180
204
196
156
176
173
161
179
249
243
148
240
162
183
154
205
181
193
170
150
191
237
190
189
136
232
235
245
230
234
157
229
185
197
194
228
208
190
162
208
189
183
197
233
206
224
213
212
164
154
187
231
153
198
246
177
196
229
150
204
178
198
188
166
157
148
245
183
232
145
139
259
182
198
172
166
195
171
186
226
159
201
194
230
178
151
233
209
167
205
221
187
237
203
153
228
181
194
196
221
189
252
206
272
250
222
176
231
201
161
193
223
166
172
225
273
212
201
225
200
192
246
201
154
179
229
194
181
243
235
235
221
170
153
220
249
140
204
269
220
204
178
260
195
188
199
166
191
232
228
187
199
170
221
161
157
221
245
196
155
238
192
189
198
184
140
188
222
176
215
244
209
146
237
178
176
217
196
228
288
176
198
236
164
153
169
229
197
269
157
201
193
155
198
156
135
141
184
231
209
176
141
200
186
197
201
146
242
220
197
144
175
190
213
200
255
228
134
253
230
202
200
184
189
207
263
191
220
190
165
195
208
147
210
231
191
135
249
132
222
193
178
148
210
203
240
170
132
157
181
227
169
165
221
259
232
230
256
212
171
223
140
216
217
140
143
218
187
145
243
136
227
180
145
205
209
199
202
229
219
147
294
215
205
240
166
198
194
226
243
189
136
141
201
181
218
197
166
145
189
187
236
214
274
158
235
202
226
208
200
224
237
211
228
225
210
154
240
151
202
206
223
189
224
199
178
195
298
143
168
211
250
235
200
198
268
130
223
249
179
274
219
139
201
219
146
149
237
159
206
210
202
171
240
190
203
196
193
231
207
170
225
219
137
243
269
182
201
230
237
155
235
154
99
264
145
243
180
197
232
185
225
253
207
191
181
201
244
196
227
180
222
197
203
219
176
167
220
190
153
234
221
64
182
181
224
190
235
222
217
199
195
194
214
212
121
216
211
128
167
282
252
224
293
189
191
195
172
222
140
194
163
159
169
209
168
176
238
243
214
181
191
115
203
231
177
247
148
189
201
240
256
146
225
114
223
279
208
181
177
185
260
160
242
223
212
226
150
181
235
112
158
230
153
231
143
187
157
211
186
248
124
187
202
204
203
149
201
189
235
242
220
191
151
202
228
167
144
182
197
209
247
211
128
227
208
224
218
254
167
256
205
140
259
185
179
262
246
230
157
242
237
200
227
208
188
226
229
214
220
222
262
159
180
140
215
275
105
236
195
197
241
251
158
181
193
154
221
175
218
189
190
251
139
208
220
220
206
180
139
251
193
151
191
234
250
227
175
195
260
190
216
177
223
223
208
187
199
202
216
149
207
214
178
200
187
213
191
172
168
184
238
171
137
218
193
120
161
228
159
259
228
157
213
188
241
209
193
231
226
235
248
203
147
177
135
139
160
176
218
191
238
112
223
240
190
167
292
172
240
224
161
219
150
189
208
178
184
180
198
209
135
230
192
221
215
177
225
229
212
150
256
186
198
192
247
170
229
209
133
190
214
169
209
232
237
195
174
223
152
192
236
241
204
225
200
245
186
149
203
193
238
230
269
245
146
157
233
214
154
165
134
227
214
220
166
160
260
185
244
212
235
178
183
151
146
178
215
226
251
240
248
185
181
161
195
232
195
230
248
178
178
200
211
238
254
157
191
202
173
185
192
203
201
168
211
220
130
262
205
205
224
208
197
199
189
235
177
169
163
198
155
257
184
157
232
188
223
214
243
225
210
215
185
84
206
196
172
191
186
242
205
197
158
214
180
189
177
227
161
195
201
150
174
200
154
183
186
185
211
176
259
202
201
164
231
224
217
195
180
139
187
217
213
180
181
225
143
176
173
179
252
142
217
216
243
221
197
192
269
139
211
194
265
227
191
210
216
245
159
231
203
227
146
250
229
222
217
236
184
111
236
264
247
250
146
205
203
247
196
178
181
219
173
286
235
184
199
139
195
224
224
126
138
202
199
236
218
179
224
228
224
184
208
224
220
171
226
193
183
253
226
227
178
209
209
169
170
230
203
213
153
202
182
233
118
182
196
216
195
198
251
263
145
219
264
152
201
193
233
238
193
215
164
157
231
218
195
163
215
188
222
212
146
171
196
149
190
211
233
211
173
241
189
163
155
193
244
178
226
195
160
180
184
234
237
171
167
186
249
178
225
211
169
209
257
174
194
177
209
186
182
205
224
219
244
220
198
223
124
251
212
175
174
222
210
210
186
193
210
208
151
179
151
202
259
208
246
174
184
224
251
154
144
182
194
156
236
221
252
220
228
204
160
216
232
209
201
207
186
226
192
211
143
190
211
192
205
210
165
162
249
169
224
190
185
159
168
212
204
232
258
193
173
212
175
257
230
247
192
221
251
169
203
257
218
191
218
209
150
246
182
231
255
221
183
218
175
213
270
209
169
193
184
114
226
186
240
240
189
183
208
215
162
165
201
202
222
175
174
195
191
184
191
243
198
243
139
212
265
254
186
189
190
213
251
214
191
156
227
213
246
200
192
151
227
229
141
199
198
189
243
175
173
138
223
228
190
210
200
186
201
233
248
265
185
213
230
227
187
181
204
173
240
156
225
188
189
266
208
164
173
240
228
197
215
179
233
167
217
217
232
201
161
208
257
199
223
268
134
132
140
188
102
251
132
178
235
207
244
237
260
172
226
218
191
236
250
244
205
225
142
226
237
245
242
202
168
235
163
175
211
186
267
185
243
153
208
161
208
219
163
163
214
198
185
237
203
138
159
181
226
143
235
223
193
185
136
156
242
210
259
196
152
164
201
178
243
193
244
149
156
212
244
192
171
153
237
110
249
171
258
256
196
244
172
222
183
216
214
227
177
165
162
211
197
230
153
119
229
244
140
279
206
211
225
211
199
208
234
217
215
192
217
198
246
155
224
256
133
235
232
208
175
158
133
229
164
182
212
195
196
232
135
154
213
239
188
175
191
247
249
249
214
197
180
159
227
208
188
251
185
280
199
219
232
195
187
173
238
206
154
209
132
252
265
267
206
205
173
219
211
235
134
223
144
213
223
242
159
198
150
217
183
190
227
150
252
217
214
170
237
230
206
237
230
173
185
145
203
220
238
236
189
220
184
161
209
180
125
140
231
172
137
205
195
162
189
247
180
236
218
260
185
208
230
199
215
187
248
148
227
231
263
236
101
176
201
259
214
138
208
219
248
220
266
174
238
221
114
139
195
168
196
200
264
225
253
179
125
215
140
223
207
227
192
251
272
148
147
217
229
150
244
180
200
207
214
252
257
146
275
183
218
202
243
169
147
158
224
132
219
185
227
150
221
180
239
248
224
199
225
225
178
198
263
177
198
248
249
187
131
211
196
194
150
273
145
175
137
258
209
228
237
232
227
148
199
150
195
214
171
161
149
187
204
167
212
214
206
235
196
152
193
233
278
244
164
236
142
276
238
152
182
213
189
142
223
137
196
206
171
169
188
184
220
208
200
207
177
194
169
145
191
228
210
167
166
210
229
183
188
216
220
188
170
185
205
256
145
255
218
145
245
249
208
199
182
170
143
153
217
149
211
216
168
170
236
254
230
195
217
233
174
193
209
227
227
215
280
224
265
203
229
170
173
177
179
198
175
203
193
169
181
192
206
216
189
173
171
177
248
251
205
133
176
223
131
181
215
239
248
225
147
224
231
191
187
176
188
213
193
244
174
213
259
146
180
180
215
155
176
139
223
198
196
151
229
204
228
208
200
241
229
212
259
192
178
213
148
189
231
224
131
220
162
193
244
193
175
177
215
207
234
220
216
210
261
146
207
198
226
186
124
179
184
210
227
189
169
226
206
230
256
207
210
255
222
103
226
143
136
231
204
270
234
168
234
201
233
175
224
169
94
229
158
182
192
110
208
171
197
242
97
226
154
222
164
242
193
205
122
200
184
191
207
137
237
248
133
197
230
251
220
224
223
253
196
206
183
156
249
242
217
196
223
171
254
245
260
238
232
169
235
236
251
221
183
184
204
209
193
172
173
266
231
132
199
220
162
226
163
218
211
201
240
170
235
203
227
113
182
188
241
216
132
201
229
239
208
172
231
220
203
243
247
148
226
199
238
213
178
241
120
183
164
191
236
186
227
162
178
231
218
192
174
210
228
220
172
205
182
206
225
177
252
85
252
215
207
215
188
152
110
191
167
230
202
169
220
227
218
144
224
152
188
240
142
150
168
157
207
162
174
239
236
160
184
163
178
190
235
205
202
232
210
206
171
206
117
226
144
139
179
207
251
107
249
203
238
240
195
220
184
224
174
187
181
231
190
266
199
161
107
108
129
145
148
189
139
236
171
262
203
292
209
179
147
217
225
183
230
232
223
218
195
213
228
251
195
256
218
214
124
195
199
185
201
204
166
220
186
203
235
181
137
236
203
141
220
171
169
182
234
264
236
161
232
140
204
266
153
228
178
181
249
147
140
191
147
241
236
159
234
216
193
201
131
202
129
134
258
238
193
147
184
145
139
177
132
240
215
193
166
210
176
249
234
185
223
168
228
154
163
167
232
168
212
181
156
232
205
246
191
192
152
217
249
232
185
161
211
169
242
223
165
170
180
199
218
219
179
155
235
233
172
225
164
207
169
193
201
145
149
181
172
198
147
238
161
181
164
267
239
185
226
190
269
201
231
145
212
209
257
216
179
246
159
170
177
191
218
176
231
147
218
205
232
239
174
107
172
223
198
219
247
178
192
224
222
175
118
198
234
213
253
200
194
196
225
200
174
235
166
196
266
214
189
163
178
182
191
233
207
253
205
261
205
249
206
252
223
171
172
174
206
209
154
131
220
182
145
141
245
224
219
231
190
201
194
168
203
214
192
121
193
202
170
183
149
196
186
164
192
244
241
193
187
157
192
215
222
175
273
183
181
190
230
208
173
113
215
219
146
240
219
182
221
217
245
200
208
187
246
256
235
120
214
183
169
182
236
183
209
273
271
212
199
213
213
209
194
216
208
190
224
224
245
197
208
178
144
223
275
237
195
184
233
192
185
152
175
185
237
209
151
186
151
219
200
201
150
241
124
132
245
212
197
192
169
176
218
168
191
175
183
201
199
221
245
211
232
206
205
187
236
209
142
206
259
241
211
267
240
153
186
156
125
212
202
157
193
246
188
216
156
144
203
205
189
199
213
180
203
255
201
240
90
191
127
163
187
209
190
206
160
209
216
159
229
183
215
179
196
187
191
209
182
192
224
233
181
226
218
211
239
203
206
221
207
191
176
200
227
254
131
232
253
206
195
167
211
238
192
200
191
179
234
205
115
202
211
162
219
249
120
154
202
159
195
214
218
126
200
181
204
219
183
225
178
202
198
205
228
182
173
241
131
214
163
135
254
224
155
198
239
141
202
266
186
201
193
266
170
181
195
168
173
186
181
245
184
201
194
146
219
214
165
220
143
180
203
225
181
160
216
191
180
207
199
185
237
255
165
127
153
186
248
179
210
192
215
221
130
208
171
162
201
261
164
244
141
232
237
142
188
211
166
192
168
156
117
248
201
191
229
195
176
245
207
251
196
172
235
204
174
197
178
214
156
304
236
192
213
159
243
142
179
173
256
240
212
110
160
137
182
203
147
137
202
201
204
185
145
176
191
153
220
207
179
242
180
187
241
227
204
227
156
159
164
212
206
224
232
196
210
167
253
248
235
195
169
207
239
158
192
106
214
158
195
273
213
242
173
161
221
189
226
158
252
200
243
214
196
189
171
200
218
240
210
273
221
186
216
193
202
175
244
223
184
163
262
198
174
208
234
240
198
170
211
193
210
195
248
225
174
163
230
167
211
254
230
220
231
217
184
197
197
169
218
153
223
251
157
206
214
230
196
150
194
141
232
169
230
218
221
142
219
190
243
183
231
128
174
181
167
218
212
167
228
139
215
219
211
198
215
186
193
203
257
97
198
205
239
157
195
241
243
189
227
150
184
242
183
223
185
181
231
174
174
148
189
184
183
184
158
225
204
251
240
191
192
187
226
235
213
217
196
168
175
219
223
180
225
182
169
201
169
197
217
184
212
148
159
150
144
254
231
193
167
180
153
192
212
197
219
245
253
212
185
217
272
160
222
222
173
221
132
247
231
221
259
254
223
196
149
229
155
221
192
126
242
176
218
225
224
185
195
191
314
252
256
205
291
206
140
113
85
248
139
222
176
171
207
192
254
219
201
209
135
152
222
213
172
185
160
208
156
150
207
260
181
173
187
230
196
171
209
180
152
203
217
177
199
248
179
253
214
201
187
180
140
202
164
161
197
181
239
208
212
197
151
203
262
194
224
257
191
284
218
192
221
206
232
185
161
198
169
177
180
208
195
157
238
203
199
178
231
172
206
251
180
144
201
176
203
186
194
189
238
185
261
184
244
170
249
194
152
158
213
141
147
203
264
195
212
196
125
154
181
154
227
198
250
243
204
203
142
250
135
248
189
187
197
211
162
210
221
205
171
204
227
116
185
213
213
186
175
227
169
187
210
226
159
160
259
171
180
214
171
192
205
217
231
185
196
165
165
243
191
179
177
231
232
194
235
227
257
203
210
168
225
199
241
204
172
223
185
197
142
227
233
233
240
149
206
211
239
184
184
209
170
229
208
191
208
225
213
197
206
196
234
221
185
179
228
243
195
193
165
212
210
191
242
232
253
200
243
204
198
223
225
189
261
179
195
130
207
193
159
175
207
253
258
206
231
216
118
167
249
241
233
197
209
188
192
211
214
159
252
206
211
206
216
250
220
177
223
212
156
253
223
214
205
140
156
218
228
228
175
171
225
178
232
219
108
260
208
209
193
198
224
217
221
251
194
191
171
215
217
168
111
238
217
188
216
221
147
184
278
234
183
138
147
228
158
191
229
189
190
238
189
197
228
220
209
171
203
215
223
204
219
146
195
232
222
234
220
236
273
150
189
202
160
150
253
174
209
180
212
184
203
165
211
159
220
223
151
185
226
220
180
154
195
228
227
221
200
161
128
174
223
208
169
239
232
203
195
215
237
248
175
174
118
216
187
224
198
208
262
219
222
217
195
245
209
227
124
323
171
236
213
146
210
228
205
190
169
201
264
224
198
215
193
174
210
186
229
216
184
227
182
139
98
190
205
229
224
190
231
262
232
219
150
237
206
151
218
238
236
142
263
160
267
248
235
239
232
209
201
236
181
182
172
156
211
217
237
207
134
249
261
249
195
166
199
181
181
188
199
202
210
204
184
180
212
285
161
198
122
206
184
154
203
150
132
241
165
207
185
161
210
151
249
228
203
258
215
201
217
245
221
201
214
225
257
211
214
236
141
177
200
145
205
221
212
233
241
180
199
231
226
188
239
206
265
194
217
195
191
220
126
219
191
220
183
231
202
186
208
269
155
262
128
226
169
191
193
124
174
224
189
247
238
179
255
213
253
218
216
195
206
195
231
151
210
229
224
171
212
181
200
174
185
184
234
225
193
122
206
190
200
171
252
204
147
206
204
207
208
195
201
192
211
143
234
140
189
215
183
215
214
194
230
173
215
139
198
162
200
165
216
248
203
188
232
213
185
200
181
211
231
197
244
167
234
230
213
144
165
200
172
235
201
209
205
226
203
217
199
243
216
253
180
154
202
223
197
175
216
178
187
181
235
217
211
203
148
138
227
234
201
149
222
163
161
190
188
165
275
196
229
203
158
227
150
203
239
266
239
220
259
232
200
131
190
205
196
200
266
230
192
222
195
180
184
165
126
215
221
189
208
195
222
233
207
191
149
228
203
134
249
195
228
150
267
196
203
219
253
192
196
180
205
235
205
223
247
189
234
184
213
242
192
247
220
181
228
233
221
170
186
149
144
223
243
172
253
217
219
199
203
205
202
212
165
216
194
149
196
152
178
223
142
178
201
210
227
254
177
247
164
167
176
264
185
206
177
237
202
216
200
142
228
169
191
222
197
197
218
191
172
251
202
219
262
228
227
227
184
179
239
239
230
198
181
237
173
71
216
208
226
183
201
253
213
237
205
216
200
176
233
214
158
168
197
212
198
218
208
215
179
186
179
207
222
226
165
246
196
170
211
204
260
203
184
220
150
190
221
185
147
195
232
248
200
238
163
145
244
247
260
194
229
217
211
250
214
163
171
203
227
156
155
164
265
149
184
175
191
219
221
226
195
209
218
166
233
192
222
144
205
242
206
221
189
231
190
219
239
190
185
233
237
224
181
223
226
198
206
225
205
185
171
220
237
246
172
170
165
234
221
145
214
202
120
162
209
174
136
255
220
210
168
204
169
155
203
259
143
215
161
181
220
177
232
138
205
223
166
173
171
145
208
162
146
148
208
228
178
227
249
144
223
167
199
190
222
162
178
167
226
210
226
166
229
206
155
178
185
183
251
244
165
240
226
154
157
136
222
177
198
202
155
167
201
188
229
183
243
176
184
219
179
250
232
192
209
125
253
219
165
239
249
179
257
203
215
168
182
151
221
236
165
173
209
245
231
254
163
147
203
163
190
125
236
245
242
157
131
248
186
229
202
232
153
199
175
168
219
170
221
213
165
238
205
214
170
187
207
148
259
198
187
223
171
188
183
242
221
175
165
197
170
265
198
199
236
185
227
173
213
167
194
158
246
180
236
173
251
198
158
248
171
231
212
187
252
199
215
175
172
222
197
228
263
238
233
186
135
212
192
223
179
207
208
166
161
177
188
240
149
241
180
195
109
124
216
226
233
221
168
152
231
188
255
199
164
229
247
232
170
224
250
201
190
236
182
258
182
185
178
183
224
195
191
212
234
162
190
131
167
166
131
189
183
242
186
226
161
272
167
210
87
206
176
213
181
196
203
191
248
212
225
188
149
184
181
192
128
222
159
191
209
234
208
258
257
251
236
181
245
200
200
176
161
229
169
213
177
195
160
243
178
204
191
191
233
216
261
232
232
240
118
175
186
163
173
235
195
186
191
201
252
191
130
144
178
201
206
158
189
232
173
217
185
237
173
178
217
239
158
209
226
198
210
246
165
259
240
136
209
200
181
189
155
262
235
203
224
197
230
241
203
227
215
207
233
174
208
228
197
167
207
230
214
184
224
144
254
225
193
252
272
225
217
134
235
215
134
240
202
244
220
205
164
166
249
139
234
169
196
163
181
189
192
176
235
178
243
181
153
203
213
259
145
212
206
214
244
195
205
241
224
160
180
184
251
143
217
217
212
200
205
195
153
175
165
160
262
246
217
252
225
136
257
170
201
177
130
222
215
224
147
198
223
163
187
169
222
219
152
185
236
159
180
169
198
264
183
237
176
214
132
180
161
232
214
193
220
219
230
193
112
205
182
145
222
220
135
221
230
201
207
262
159
250
247
154
259
191
215
153
282
190
199
235
184
206
170
202
198
193
125
224
216
150
183
163
133
140
155
235
254
182
198
222
215
245
204
138
253
180
172
227
156
207
198
201
183
173
211
156
194
197
188
211
220
141
201
218
273
174
211
237
201
103
176
175
238
206
182
207
246
196
227
240
206
241
161
183
201
281
288
256
230
170
188
239
132
236
165
193
226
170
252
208
233
241
224
179
234
161
247
229
217
165
190
252
178
200
220
210
243
230
245
210
233
262
263
207
198
218
106
235
192
161
224
202
235
237
255
236
226
150
276
232
223
174
137
168
196
150
196
213
149
176
236
112
212
185
212
219
194
176
183
155
224
188
121
208
164
202
150
225
157
274
204
208
204
199
262
248
190
214
185
242
215
201
198
186
155
238
208
171
169
217
187
175
141
204
215
261
224
224
236
196
169
235
253
213
175
208
182
196
170
129
188
204
224
126
255
203
203
242
211
223
240
216
163
205
210
175
246
245
120
194
202
216
228
183
186
214
241
187
204
160
192
192
168
237
134
237
250
139
175
244
163
267
124
229
195
176
253
226
289
268
198
244
187
191
177
277
242
178
160
244
177
202
128
182
263
205
238
189
253
183
163
159
261
246
190
238
206
209
214
247
160
238
192
185
192
226
272
196
141
158
175
253
165
200
198
221
199
212
236
195
132
201
185
282
190
177
224
235
189
227
228
208
223
202
181
210
203
170
196
238
165
157
159
225
137
248
159
144
206
218
184
208
154
249
266
230
249
249
176
163
165
166
166
162
184
232
194
205
242
205
149
205
203
260
197
216
159
176
196
179
223
182
145
210
227
250
236
190
217
272
196
204
167
223
114
106
196
213
155
219
168
174
175
241
181
190
177
169
167
204
162
191
138
143
135
119
237
233
183
219
278
170
148
203
214
222
241
164
168
215
199
167
261
190
235
220
226
134
224
124
216
180
163
200
200
199
227
184
213
165
190
161
239
220
236
184
274
185
226
221
230
196
179
157
191
132
134
139
138
210
265
265
189
214
220
194
245
224
183
147
147
103
162
189
219
218
215
211
233
151
266
248
226
169
236
197
186
240
265
187
227
178
202
176
188
229
136
234
192
201
162
223
191
256
226
181
179
195
220
208
147
135
224
169
193
238
224
192
203
220
194
229
193
172
185
204
203
204
229
181
221
197
157
182
203
235
197
181
209
254
153
195
171
206
181
222
149
136
98
190
219
157
211
235
226
178
200
232
154
213
229
209
249
190
226
177
231
200
180
202
194
250
182
268
186
177
244
123
215
180
212
176
224
120
160
247
219
170
180
191
221
191
213
239
217
208
221
193
170
207
205
157
184
183
186
240
214
225
229
217
287
191
244
270
259
178
203
162
136
153
197
231
212
168
154
184
207
265
155
248
269
188
196
127
214
234
274
160
181
236
157
175
240
224
172
182
191
188
168
218
196
251
155
213
137
181
184
200
221
220
175
188
149
158
216
230
256
192
245
212
104
197
242
172
174
146
258
139
257
179
207
170
271
198
229
162
193
164
122
189
229
226
179
198
152
210
156
224
214
174
233
250
137
196
242
195
184
243
181
241
202
225
204
207
215
152
287
230
233
183
239
213
205
172
158
218
248
92
181
219
181
233
209
181
243
229
171
228
183
132
189
233
151
152
212
230
173
212
202
180
212
264
202
191
192
185
220
217
240
210
183
197
236
204
165
181
181
127
211
220
174
173
197
209
218
176
203
222
197
135
211
249
218
189
184
157
216
198
172
211
185
232
205
175
151
166
210
188
164
224
166
247
202
216
204
261
225
167
198
189
242
149
156
214
219
189
218
166
180
197
157
187
183
151
242
238
161
218
248
255
139
205
133
81
184
156
188
222
164
201
206
246
182
278
161
217
180
224
256
233
152
201
220
179
262
185
206
184
190
208
177
221
199
145
166
204
225
201
226
193
185
186
222
245
237
252
142
132
205
221
206
221
226
184
205
234
203
245
227
181
206
190
180
165
173
202
252
200
212
183
247
239
187
181
119
201
214
159
159
201
222
234
176
235
218
216
218
231
198
233
134
220
213
184
264
222
215
245
194
181
186
253
237
188
174
238
166
215
240
184
210
195
194
220
259
115
217
164
180
194
195
188
182
175
214
226
233
214
207
210
174
232
179
217
201
242
169
191
165
192
203
251
210
177
191
171
166
187
137
189
194
154
231
200
182
200
168
224
209
201
205
209
229
170
246
160
209
274
222
182
164
159
181
257
239
229
195
243
199
135
164
108
189
168
144
189
208
195
206
257
210
225
139
224
154
212
125
208
211
251
188
237
199
175
134
247
216
162
185
200
171
193
208
250
185
173
195
114
208
97
204
234
181
249
198
234
163
212
165
188
215
230
170
221
200
154
220
185
195
163
246
205
169
176
193
168
168
213
200
204
179
190
170
200
221
144
243
188
172
228
263
228
282
222
148
205
174
180
241
196
162
175
151
231
230
230
185
207
221
221
195
213
205
198
216
264
191
225
196
226
240
231
236
247
219
221
174
229
171
227
172
246
176
231
150
170
140
207
189
209
217
281
244
229
248
194
164
194
192
212
198
180
211
208
149
230
230
214
189
194
214
223
190
246
178
193
175
201
216
264
234
180
188
150
175
211
183
246
172
207
194
145
224
140
200
196
267
203
164
157
127
169
176
190
202
162
199
236
185
178
195
193
199
198
182
168
185
120
238
257
164
259
253
138
156
235
231
243
226
141
193
208
246
221
167
240
159
243
143
196
165
160
165
179
172
173
229
183
176
204
225
261
151
240
221
218
116
231
163
236
218
290
245
194
159
188
176
197
154
232
206
169
278
126
210
212
90
255
131
140
177
206
237
220
167
205
212
170
221
185
229
239
215
248
196
241
223
251
172
237
214
238
216
227
216
184
201
170
186
194
247
249
241
247
230
174
204
232
233
221
230
147
201
216
197
248
271
205
208
186
269
222
187
202
204
246
227
129
201
147
216
255
203
200
209
190
218
244
159
172
168
205
151
163
210
198
212
228
243
199
249
174
194
235
237
191
180
201
236
222
222
153
194
176
231
263
259
214
222
206
235
183
298
194
171
169
161
218
185
200
201
254
180
171
280
209
147
228
150
183
221
159
201
191
296
136
114
166
241
173
201
212
232
221
186
277
191
244
165
142
182
186
206
273
233
104
197
179
247
194
201
171
215
178
185
207
202
163
179
241
207
192
178
223
204
205
163
207
207
235
163
252
222
238
218
234
170
179
155
183
181
194
163
179
138
149
134
194
227
284
209
163
166
205
247
100
230
119
232
217
180
257
226
196
188
151
220
214
203
187
168
212
108
157
195
215
249
207
178
227
203
229
203
230
219
252
154
239
221
177
173
212
215
239
169
199
191
163
208
161
223
195
253
167
272
217
194
210
148
195
204
140
273
206
275
243
216
230
199
131
170
177
214
176
196
234
225
202
222
221
203
186
204
210
187
219
202
226
153
168
235
222
228
238
213
185
216
249
204
271
166
155
238
192
237
147
180
229
205
163
203
225
179
237
220
236
237
224
223
228
230
166
158
157
163
141
197
174
169
265
187
163
267
164
197
176
200
168
203
147
192
221
157
204
172
194
238
223
235
185
175
208
238
134
187
153
222
203
213
208
231
209
164
202
231
220
188
196
241
195
181
192
183
179
219
176
145
183
220
251
211
180
242
196
273
196
195
155
204
184
215
223
210
226
155
173
216
251
239
209
176
158
175
201
185
243
240
204
179
170
204
186
224
204
155
246
244
129
233
141
171
205
198
164
181
183
156
203
237
151
221
214
193
121
233
236
174
269
149
241
175
166
207
189
265
177
244
158
207
240
191
200
203
208
232
239
173
197
209
241
202
239
237
198
185
200
204
230
189
205
162
177
141
235
242
257
235
181
174
211
237
156
193
173
197
200
255
244
239
184
171
223
230
188
237
224
265
179
236
253
202
241
164
211
200
221
232
213
115
268
193
208
165
203
240
194
216
189
182
158
172
209
237
220
216
205
165
217
233
186
166
225
252
234
250
199
178
175
234
205
187
223
187
155
181
235
201
177
165
218
251
149
170
164
199
168
199
220
179
167
217
227
224
210
170
166
176
193
288
200
199
165
213
184
91
179
192
243
191
207
225
169
204
193
191
155
136
273
195
210
230
238
247
200
168
219
151
127
138
180
181
126
203
233
214
161
180
247
238
162
170
204
137
187
222
170
159
196
200
228
210
187
199
171
237
205
268
220
178
201
220
179
195
167
191
187
227
238
190
196
158
187
208
204
208
210
167
125
189
224
169
186
263
216
209
235
251
172
208
154
177
183
255
136
255
221
200
227
238
209
211
206
152
212
216
215
222
242
264
185
192
167
190
209
178
247
185
172
176
189
115
252
165
193
154
118
221
180
189
162
155
125
263
176
208
138
266
128
222
174
193
206
212
176
221
187
240
188
235
217
174
144
209
200
227
224
175
218
193
190
161
227
178
196
210
194
126
208
168
187
243
157
239
254
227
154
190
158
180
213
231
227
172
204
142
220
123
217
182
204
179
229
176
220
252
237
216
169
231
214
240
252
180
198
216
207
206
227
192
218
213
242
198
271
216
140
100
198
181
203
186
238
232
130
246
167
209
222
242
203
199
239
243
190
202
266
255
160
151
232
190
172
169
178
232
234
196
214
133
229
194
214
169
193
226
196
244
194
124
153
259
105
229
239
214
195
257
170
211
204
231
208
216
181
104
229
245
168
202
195
266
194
174
127
258
247
191
227
265
202
194
185
243
260
229
246
219
183
227
188
200
179
168
142
231
225
174
196
133
158
166
250
197
263
147
230
212
190
189
214
183
270
200
185
165
273
163
161
117
272
193
173
122
181
193
222
211
204
187
232
192
228
145
204
205
246
163
259
157
167
230
169
208
220
214
172
257
146
204
249
265
185
157
197
133
212
222
189
249
203
227
252
230
198
161
245
212
242
191
198
195
180
184
197
197
237
173
194
191
193
151
213
191
215
222
211
206
215
192
260
254
171
184
234
226
194
219
177
253
196
207
243
141
239
190
237
191
211
218
278
199
274
178
207
201
239
218
215
233
125
211
215
267
205
207
234
224
192
182
134
157
206
163
177
221
239
182
238
192
178
225
190
214
144
190
208
252
151
227
170
161
118
214
191
193
246
179
210
182
128
134
223
194
169
268
228
163
182
199
260
174
167
169
166
193
119
191
170
185
216
136
145
233
199
213
217
209
245
183
170
195
216
243
139
231
171
191
210
136
241
185
197
184
218
162
254
191
180
253
177
165
193
161
226
219
166
215
171
236
203
191
227
180
174
205
208
236
209
223
139
258
200
189
233
209
235
154
192
211
247
167
213
187
190
232
229
250
240
192
213
188
111
273
229
217
218
214
198
176
181
207
256
218
184
197
265
170
155
177
230
194
146
149
160
184
196
144
210
158
158
234
172
198
196
194
264
196
170
204
199
208
138
236
218
221
264
225
138
125
225
183
197
219
227
197
223
155
186
237
179
156
192
183
158
213
167
209
215
197
209
172
222
185
173
157
150
291
231
215
186
191
203
190
263
153
195
227
140
255
259
207
230
241
212
216
197
146
181
234
132
179
186
189
143
239
182
209
212
209
205
218
237
202
196
224
190
105
164
221
259
245
202
251
209
180
234
186
167
217
178
259
250
198
208
123
233
252
194
206
165
190
211
157
166
174
182
214
193
221
214
162
209
172
153
193
235
195
189
227
136
250
206
210
246
291
205
159
185
165
201
246
243
183
261
166
255
108
251
246
171
155
192
144
247
230
184
228
218
254
162
237
136
184
232
240
221
195
218
217
211
158
191
227
175
208
249
163
179
213
215
181
211
196
234
186
158
213
207
242
219
263
220
176
223
170
265
215
181
198
222
223
153
225
247
219
164
223
219
240
197
150
200
173
244
173
269
166
172
217
249
231
196
238
231
215
183
182
175
154
195
149
183
242
242
128
178
186
160
250
248
219
187
197
202
266
222
220
229
224
234
179
195
175
210
177
217
201
223
212
203
202
174
183
200
189
206
252
189
218
178
239
195
217
204
249
223
210
220
192
196
173
160
194
172
171
182
183
244
207
219
197
192
222
201
214
232
195
236
158
182
202
249
245
205
241
153
226
204
202
204
263
230
169
215
229
218
192
144
163
258
188
183
237
189
218
207
204
246
197
190
199
196
199
195
202
249
223
260
170
201
153
173
261
218
189
177
209
205
179
180
234
176
182
175
269
176
244
167
191
163
261
178
177
134
172
201
205
219
194
241
174
241
173
176
198
203
239
172
214
180
178
235
192
229
162
194
198
199
184
190
248
169
170
168
175
186
204
176
177
238
214
209
233
168
216
165
160
209
209
277
229
218
166
178
231
176
207
216
204
181
117
161
241
213
219
255
230
187
195
232
183
200
214
226
228
208
187
217
196
170
272
232
213
196
183
202
213
222
179
254
209
105
248
238
203
227
204
202
184
208
169
246
224
230
159
178
183
224
191
213
281
207
147
170
186
181
183
237
151
197
193
185
211
202
166
236
125
182
209
218
196
175
227
195
173
181
205
201
249
114
243
236
194
256
178
238
195
145
144
219
149
236
207
146
239
138
163
201
169
266
193
232
172
200
246
187
217
185
184
110
270
195
181
252
198
165
207
137
136
196
163
198
187
194
235
217
149
254
209
204
154
223
238
161
155
191
187
174
209
207
276
236
163
184
180
195
176
115
187
232
203
183
216
170
185
219
223
230
180
143
172
249
242
233
230
164
198
227
213
226
179
244
219
209
204
194
240
204
182
146
169
203
208
184
233
225
220
240
127
187
188
184
187
194
230
193
178
195
184
250
207
215
233
219
205
167
202
201
263
214
152
207
240
201
188
211
191
244
233
258
185
232
301
203
210
203
248
191
205
168
253
286
147
242
191
201
211
168
183
208
229
193
190
235
200
225
177
180
221
195
195
201
249
241
168
162
166
217
229
252
174
204
214
210
158
184
219
203
190
219
284
202
190
264
203
264
208
207
203
296
230
158
156
218
209
189
255
164
213
201
163
168
196
207
241
197
234
219
192
235
187
214
147
156
243
220
185
237
234
205
262
199
196
135
147
161
215
223
257
193
285
168
167
180
173
213
178
207
267
191
211
222
245
184
214
209
206
247
131
258
170
185
231
246
172
199
237
145
223
208
143
242
204
203
200
106
218
213
213
188
240
149
192
257
261
151
184
228
257
231
201
227
201
199
140
174
193
171
177
218
186
114
227
174
201
207
221
231
169
220
162
267
219
154
201
125
265
183
190
194
243
223
243
225
138
201
195
228
243
187
228
242
214
215
224
199
224
197
242
220
223
222
217
184
237
252
212
263
164
180
257
179
294
225
248
151
204
205
232
212
279
161
164
158
190
204
216
225
235
76
241
211
240
180
183
218
225
218
216
171
191
259
208
201
204
183
164
216
229
240
123
192
222
218
193
291
171
199
240
180
221
165
198
162
223
237
211
190
213
221
238
234
205
163
245
147
194
224
134
188
214
209
205
150
220
177
196
212
182
122
224
180
206
235
200
178
212
141
221
246
185
114
253
209
193
193
210
212
152
213
223
220
226
208
233
270
198
174
148
221
227
189
251
206
155
163
221
226
240
207
237
227
218
192
203
240
221
207
214
244
203
249
216
186
159
165
214
193
244
187
203
241
181
171
215
210
201
205
231
115
111
260
189
168
216
145
222
183
232
182
223
122
196
233
208
123
241
217
242
121
131
149
226
175
160
156
203
218
178
179
277
212
187
212
202
149
198
144
182
186
205
242
201
187
196
160
227
224
162
122
158
178
195
201
175
237
227
154
193
228
234
168
136
243
176
196
234
247
290
227
228
204
245
210
162
211
207
216
202
173
207
182
244
165
171
220
182
144
208
221
166
215
260
233
170
224
172
163
207
175
193
206
139
234
184
225
190
213
154
241
171
254
196
224
204
215
200
253
166
230
249
160
243
190
179
137
160
141
146
230
197
236
210
242
217
198
230
260
158
183
246
226
146
163
198
237
174
264
143
263
153
202
151
192
213
238
161
215
217
178
227
241
188
163
159
221
116
205
174
168
147
176
136
177
163
150
210
172
129
166
179
138
143
246
210
143
256
215
218
194
256
149
180
174
184
188
231
258
217
221
164
265
257
151
182
219
211
221
238
271
204
214
219
188
245
225
183
172
212
250
194
246
154
184
146
228
185
198
248
189
267
204
177
200
213
161
161
240
232
220
271
233
175
266
165
191
205
180
215
208
138
211
238
209
175
189
176
214
186
240
173
225
180
180
163
193
185
227
202
226
213
165
223
201
172
220
189
240
298
219
174
215
228
200
200
202
202
196
136
237
203
217
227
112
234
222
268
265
219
115
205
225
164
243
156
213
154
242
174
234
203
208
252
269
214
174
177
189
181
249
191
123
217
241
167
147
231
188
190
208
198
229
206
214
227
219
155
210
215
190
186
143
232
195
263
208
151
204
144
259
179
125
229
206
145
199
222
215
122
189
233
237
157
170
193
187
237
167
204
230
162
178
229
195
214
149
224
230
209
180
227
254
163
175
222
184
162
224
156
249
204
173
201
189
195
158
189
162
217
229
222
224
141
182
227
200
257
225
224
262
209
203
154
218
178
117
227
188
230
200
212
236
167
209
185
192
203
172
175
200
190
177
153
178
232
189
146
239
153
221
202
181
250
187
183
182
236
237
178
208
198
188
149
210
228
153
195
235
249
229
165
205
210
209
235
177
225
160
180
213
202
248
180
208
204
218
173
216
206
219
154
236
189
220
166
207
209
195
208
247
206
115
179
198
172
248
191
246
239
224
213
178
241
178
210
265
252
252
228
189
200
196
232
197
267
235
218
173
148
150
176
191
202
222
163
181
178
221
222
262
158
247
225
178
160
253
161
227
204
198
197
152
196
230
189
179
168
217
253
174
181
196
215
182
214
252
235
245
251
243
227
205
157
221
218
130
179
194
169
247
155
224
138
192
233
217
189
131
232
164
186
227
186
179
255
153
254
184
214
268
155
263
228
201
241
200
184
181
104
192
247
145
213
206
175
172
183
142
181
158
164
239
172
197
210
167
269
182
195
170
195
174
192
228
206
247
263
213
237
236
234
231
213
185
156
155
259
244
201
182
182
229
174
136
237
228
235
211
199
217
185
221
197
207
242
181
204
233
230
142
200
190
206
124
188
232
179
223
193
200
118
212
163
230
240
204
211
195
198
219
230
185
204
243
166
206
226
219
204
201
231
222
129
176
218
201
208
174
188
140
242
170
183
205
205
135
214
228
174
130
223
198
251
163
168
185
187
271
199
202
168
163
161
212
221
158
156
194
200
194
198
157
222
242
171
176
182
184
204
217
210
225
171
185
208
220
188
163
219
196
186
214
209
251
184
244
168
219
190
198
111
238
158
271
213
210
241
235
107
174
158
211
170
152
231
216
219
199
199
172
168
215
142
216
219
189
164
178
235
202
223
141
238
186
164
167
207
251
179
183
188
251
194
164
197
195
205
210
224
220
206
274
181
211
208
225
169
203
184
258
181
257
203
172
172
190
201
233
136
201
200
169
219
240
205
198
225
132
184
199
270
214
220
183
166
193
230
204
205
155
199
242
235
165
219
127
192
258
172
267
242
254
231
221
194
224
172
232
197
218
243
225
168
222
220
223
192
193
250
225
192
211
175
219
204
208
190
236
259
190
197
192
225
234
174
164
203
167
155
164
162
165
168
125
193
219
228
171
242
183
161
233
144
206
145
174
193
145
156
181
209
210
233
188
198
178
205
223
208
224
234
220
194
202
238
183
258
189
171
214
182
150
234
239
272
159
171
201
233
174
214
166
178
253
193
232
100
220
182
168
163
149
217
156
160
245
224
220
237
284
233
222
113
208
170
158
175
183
170
197
185
232
166
198
203
183
160
191
233
231
175
222
152
138
212
149
244
209
188
215
197
237
213
195
246
183
179
232
200
186
202
174
243
206
234
228
184
205
220
198
224
146
225
226
231
212
215
196
220
158
226
213
188
139
208
236
217
185
251
135
145
164
205
217
138
185
167
199
199
235
234
202
175
216
192
219
195
213
191
197
149
203
220
224
247
172
209
249
175
177
136
178
222
187
235
131
181
242
205
185
207
182
158
246
218
180
214
199
186
186
232
170
178
262
199
221
167
208
159
197
203
204
279
183
183
186
206
202
252
253
238
156
257
234
169
235
214
221
200
238
158
154
171
181
216
203
186
218
143
167
193
177
224
254
236
197
270
231
254
262
237
207
187
162
209
229
256
182
233
186
204
184
233
165
221
211
181
175
213
193
211
127
222
200
173
255
210
193
215
148
192
186
206
226
237
171
247
219
200
214
216
212
226
159
171
241
182
184
252
167
185
200
249
261
190
257
187
203
155
191
191
206
245
145
187
222
222
200
215
166
140
216
230
254
174
207
171
182
153
160
202
224
229
218
218
167
188
231
165
230
214
202
154
147
225
251
138
105
249
239
197
216
182
213
226
226
194
183
191
217
195
178
177
240
154
210
167
181
183
224
209
141
193
172
181
237
198
229
227
214
167
188
169
217
173
215
260
172
256
122
242
199
173
166
203
205
244
219
210
97
278
170
166
201
122
208
182
241
186
185
149
178
220
221
196
113
211
128
231
167
229
228
212
225
212
223
237
171
207
182
209
222
229
137
251
215
152
211
184
185
197
143
201
204
196
272
216
199
226
222
149
232
147
162
216
148
217
226
275
218
214
250
173
203
249
157
220
233
210
182
148
196
195
190
164
228
197
153
212
218
152
267
170
185
181
220
226
206
150
262
170
225
218
215
193
273
143
262
187
208
119
161
188
248
233
139
205
245
154
184
181
139
205
210
231
230
168
252
203
242
195
198
212
220
194
201
170
202
166
179
172
233
201
195
175
196
184
198
172
181
245
153
264
149
200
208
141
174
221
256
248
225
273
176
179
226
224
229
168
218
220
231
207
205
190
193
197
197
208
198
160
205
187
213
218
257
181
283
216
195
212
186
220
204
246
212
208
181
251
170
244
182
204
206
204
221
168
173
229
182
168
228
194
184
147
167
217
168
233
223
237
244
191
208
132
186
159
217
204
218
261
211
229
189
284
188
195
180
205
186
270
250
173
121
209
201
272
192
207
224
195
197
190
259
110
212
201
192
138
173
221
203
161
178
215
228
249
150
193
195
171
235
182
228
228
249
250
225
199
243
240
158
245
220
289
202
261
218
184
199
165
208
220
137
262
175
210
266
168
189
173
230
184
220
184
201
224
186
253
233
160
235
174
153
186
236
225
188
144
204
221
198
148
216
192
162
232
182
260
211
176
269
231
215
206
225
233
194
173
192
271
254
233
179
215
178
222
249
244
175
214
225
189
194
190
183
190
151
167
179
228
152
204
129
166
144
189
147
191
234
232
240
172
223
265
217
179
169
183
230
140
177
227
157
148
151
186
210
223
164
235
176
171
187
184
126
157
200
184
145
294
174
244
148
193
209
155
210
177
183
231
153
145
156
241
238
240
208
213
171
227
184
184
216
187
229
184
184
257
198
191
197
175
197
139
230
169
159
236
162
187
201
208
198
193
169
210
171
186
192
208
166
201
197
185
202
138
155
97
218
187
256
157
158
236
226
229
157
183
260
228
227
246
195
186
216
253
155
135
173
234
199
150
204
152
212
223
241
252
185
250
221
229
183
271
142
180
233
224
217
205
231
163
177
210
193
238
204
194
169
181
192
188
229
176
203
258
200
265
232
189
168
273
174
206
218
141
223
199
226
180
189
256
174
218
216
167
258
175
201
211
184
229
273
179
213
248
226
144
220
116
201
249
231
233
225
146
202
231
150
249
209
199
205
231
187
212
231
162
184
170
234
211
182
189
227
195
179
191
173
179
171
226
155
191
215
187
214
217
223
218
234
144
247
184
248
218
255
170
212
287
213
245
201
244
173
182
170
159
186
200
208
221
213
209
167
230
187
205
159
213
173
197
173
188
203
227
200
153
238
229
207
219
182
210
182
209
220
199
197
217
189
209
199
237
205
220
200
247
192
222
164
191
191
181
135
161
192
214
164
228
154
181
179
183
219
207
178
179
157
173
200
243
208
151
227
132
211
183
233
192
168
143
232
197
149
161
180
183
238
230
176
227
209
209
148
245
188
175
181
198
246
206
213
212
189
239
282
211
188
241
164
164
157
192
217
267
228
202
212
179
176
222
214
225
93
197
194
187
249
200
204
214
179
220
238
257
192
274
197
158
217
181
199
187
244
264
215
225
197
237
197
208
233
194
205
203
189
159
187
170
195
198
208
143
256
230
181
211
179
188
132
199
171
214
220
153
191
248
238
186
150
202
202
246
214
121
220
197
213
183
217
258
248
170
278
209
214
246
189
268
194
230
227
190
200
209
176
222
192
208
264
194
175
183
251
195
173
238
168
222
157
179
163
237
204
246
226
224
256
188
213
191
212
194
131
193
241
184
202
165
237
183
142
259
173
198
185
254
218
252
174
159
208
202
136
178
235
263
179
180
243
252
207
245
193
208
215
176
265
172
275
203
237
215
219
155
171
249
191
203
208
190
227
239
244
192
171
277
234
166
252
220
218
118
193
141
188
180
199
170
152
203
231
217
196
244
187
189
169
206
242
193
174
240
171
206
192
221
239
197
168
174
157
271
232
182
230
230
156
231
152
172
184
211
210
230
184
253
224
160
213
205
192
217
186
194
120
202
211
181
228
223
193
185
140
196
180
254
198
189
170
193
148
194
201
174
185
178
221
198
263
208
199
229
153
237
178
204
191
197
202
191
202
201
210
212
158
177
166
182
198
149
182
159
247
184
186
227
227
211
213
208
176
200
202
234
231
225
209
174
187
189
186
142
211
194
246
187
176
187
240
206
241
139
218
231
144
154
215
244
244
201
188
225
230
176
233
225
172
217
224
161
193
235
192
250
233
196
199
209
217
220
207
199
202
242
203
166
195
213
169
206
272
162
180
169
208
190
137
219
196
171
229
246
248
212
212
162
186
201
171
216
155
228
148
229
234
188
240
259
258
134
176
245
232
204
212
239
223
189
197
215
227
179
244
146
162
219
169
234
161
201
138
228
227
183
186
129
233
180
231
247
213
178
124
202
231
224
146
178
207
151
227
151
152
195
142
290
221
137
209
235
198
280
172
209
200
167
181
191
199
228
199
224
243
244
260
245
150
239
200
228
224
257
198
230
151
179
182
235
157
195
109
164
238
186
209
171
203
200
175
246
219
238
234
204
193
188
121
197
185
139
152
196
147
155
250
195
233
232
223
200
206
285
227
239
197
244
139
246
200
234
233
176
152
263
239
284
124
199
136
202
237
184
222
238
197
153
183
173
231
222
198
190
226
185
203
201
217
163
223
200
220
234
183
178
191
213
196
191
173
207
241
195
276
225
207
255
201
174
244
234
230
198
174
150
211
185
203
209
144
231
176
161
266
199
215
171
225
191
210
218
202
191
207
199
174
175
197
244
238
224
226
217
216
210
231
219
181
210
105
137
254
199
226
228
220
204
166
235
237
214
185
237
149
188
181
137
213
147
167
189
219
206
170
255
145
263
179
261
215
221
157
214
201
162
174
189
174
194
178
199
219
178
199
222
169
192
176
185
227
239
229
167
150
190
242
174
220
194
205
146
147
194
203
165
231
233
275
148
250
156
207
207
232
188
209
132
237
226
198
177
246
254
233
222
171
264
198
138
212
192
166
210
173
242
171
196
203
207
171
236
163
211
193
195
108
160
190
176
216
180
209
267
192
224
206
157
246
212
147
170
241
186
226
187
144
235
170
186
164
244
206
184
169
215
242
202
147
240
180
163
186
182
266
225
193
228
232
155
218
216
227
224
159
175
195
187
182
220
215
127
115
174
201
178
244
190
221
185
203
193
181
233
227
259
175
163
172
185
182
211
160
209
246
189
231
251
110
215
185
144
200
227
231
214
142
137
230
186
134
244
197
197
234
175
177
200
164
194
211
225
175
209
191
151
226
197
164
226
218
216
184
195
210
183
204
137
169
235
141
159
197
192
235
226
176
206
174
259
183
150
168
199
117
188
222
184
119
248
227
172
159
245
272
229
158
177
214
202
192
198
177
207
194
174
227
136
172
149
197
213
188
216
214
214
184
207
140
226
154
173
123
216
225
219
220
114
203
216
186
220
158
159
272
150
235
204
243
201
241
208
190
217
181
221
176
155
222
172
206
173
204
125
225
233
186
223
193
243
223
217
242
220
181
183
218
248
162
163
236
200
207
174
185
182
168
175
218
168
249
179
132
127
197
187
229
258
166
210
226
270
253
148
207
227
202
239
182
224
227
197
162
185
194
209
247
122
194
222
171
177
191
235
239
225
270
191
227
156
256
207
226
184
163
220
228
171
132
263
191
224
203
240
196
228
215
169
244
208
194
210
187
215
181
272
225
198
241
168
212
192
245
158
192
208
185
208
207
255
272
216
164
258
162
223
226
183
188
238
199
143
221
199
144
178
193
146
243
206
198
178
278
216
195
216
206
204
195
244
200
210
186
197
193
133
189
191
188
168
242
256
162
276
177
191
162
218
173
139
265
210
188
162
191
255
154
166
189
225
180
190
169
215
244
163
216
126
247
171
207
163
172
183
247
220
176
222
183
210
187
202
208
190
195
265
248
212
251
210
241
194
220
122
255
227
227
177
210
254
168
195
174
192
207
141
165
218
165
232
205
127
171
237
198
175
160
211
158
198
236
195
209
178
145
230
196
187
177
215
193
186
213
207
226
159
266
145
209
196
160
178
107
155
175
191
196
176
252
239
177
170
204
192
197
197
190
173
243
219
214
233
230
245
190
191
153
152
217
240
240
189
211
143
192
166
210
216
145
155
169
170
216
253
219
190
244
239
202
163
184
230
225
196
206
218
221
199
155
213
184
215
162
214
169
174
186
174
231
243
210
206
216
193
262
198
186
149
168
194
254
178
274
189
140
233
239
282
218
208
200
224
186
180
217
244
242
186
186
216
198
203
226
233
251
165
202
149
207
127
259
262
235
186
222
167
191
188
148
147
174
211
162
155
173
215
146
210
131
192
189
246
260
173
186
157
174
196
193
245
158
251
195
195
201
102
247
171
241
207
203
234
143
218
260
102
212
253
263
210
221
209
181
240
189
254
118
240
226
154
203
191
254
260
214
210
251
156
237
171
193
227
199
163
159
166
172
186
257
239
141
168
176
239
244
212
200
173
185
160
157
226
215
232
170
218
233
187
219
237
220
241
251
204
222
204
210
140
207
273
220
247
255
177
143
143
194
200
152
214
201
215
190
168
161
193
227
223
219
179
208
237
247
178
255
192
225
198
254
266
213
196
182
218
238
176
230
193
224
176
193
193
220
224
160
211
216
181
152
233
228
196
227
188
216
179
214
128
291
241
157
194
164
166
169
205
202
179
234
183
211
231
232
245
196
187
247
214
252
192
183
187
228
187
235
121
214
204
234
204
243
234
172
194
194
166
218
225
172
190
193
236
218
229
267
227
179
145
228
197
223
231
245
247
223
190
196
271
228
238
203
195
189
256
188
175
215
211
198
223
189
241
186
175
159
231
121
152
199
191
221
178
155
116
230
210
198
220
221
181
211
195
184
254
156
165
156
216
163
246
212
239
227
221
184
223
233
167
227
238
190
165
149
218
199
162
193
206
224
195
195
216
183
182
214
276
175
194
209
218
240
206
242
207
202
156
159
228
188
209
217
221
130
194
182
189
158
167
215
188
223
232
161
214
164
213
212
205
244
203
203
135
207
174
235
169
158
146
209
249
169
198
202
214
220
161
188
205
188
243
167
206
151
167
222
200
160
196
244
243
118
200
226
186
223
187
122
262
140
199
162
209
220
204
184
147
240
169
217
190
215
267
239
224
181
156
244
230
167
215
194
176
188
218
210
225
182
167
216
238
220
225
195
217
243
222
205
169
148
205
237
271
154
208
230
201
199
206
201
173
176
194
194
181
243
212
220
194
202
242
203
261
267
240
185
203
183
245
239
232
215
244
258
235
192
193
214
124
184
175
180
201
152
226
191
230
175
223
259
222
144
207
254
208
169
203
227
248
222
227
180
235
249
174
272
231
200
219
230
210
182
163
193
224
226
175
173
222
206
258
202
169
200
201
199
143
262
210
207
192
126
246
233
186
224
172
166
243
203
234
235
167
199
233
159
239
176
246
130
201
203
159
178
199
232
279
223
194
188
219
205
237
194
215
186
201
207
116
230
222
181
186
222
167
167
186
177
192
216
244
140
196
244
233
238
176
210
248
210
247
174
235
267
177
238
189
133
208
206
176
174
219
241
212
161
198
199
177
222
198
176
179
216
250
220
179
142
178
144
192
168
216
207
173
217
174
148
203
235
168
200
159
205
175
124
233
196
223
167
196
204
145
220
165
198
232
147
145
180
236
162
249
207
160
161
235
177
225
191
140
198
219
185
143
247
199
162
205
208
237
265
207
186
213
172
205
218
185
150
219
186
189
203
197
200
175
187
160
291
139
208
240
192
229
195
166
265
223
247
221
246
138
178
171
177
198
136
171
222
247
115
158
249
121
270
172
258
185
249
221
195
151
218
210
146
168
240
229
177
166
229
197
223
197
194
233
227
193
153
194
227
240
228
231
148
258
180
210
228
218
208
205
186
242
261
186
176
196
221
201
239
208
283
198
191
176
199
182
186
162
202
214
210
154
134
230
248
248
200
190
251
159
262
157
256
183
136
201
169
253
230
194
180
190
172
210
121
163
216
190
200
151
192
170
237
210
215
190
213
189
200
216
173
266
200
232
173
215
219
199
147
207
254
203
204
195
197
220
179
240
199
208
192
192
181
168
243
195
181
244
270
197
198
241
198
189
179
113
209
234
191
240
165
169
269
211
216
186
237
155
218
186
238
240
165
257
206
212
213
134
160
216
261
188
165
183
166
227
247
210
221
222
200
213
228
259
189
220
150
184
172
181
185
145
194
239
209
217
131
167
190
215
166
184
200
192
232
220
152
191
218
146
186
168
241
175
173
157
109
221
189
246
296
252
171
164
139
212
192
199
225
180
215
193
199
226
218
220
191
152
227
201
259
207
236
218
201
186
256
157
187
159
162
191
216
220
233
205
180
275
205
153
213
198
168
222
222
135
171
220
169
154
215
229
217
223
171
210
259
208
203
177
215
259
159
215
251
257
183
181
198
211
140
169
275
217
237
192
162
225
250
151
180
267
233
182
169
261
124
213
194
224
206
208
231
226
213
199
200
221
216
214
230
207
189
194
137
256
169
205
216
214
240
238
145
164
223
214
184
202
172
193
205
199
168
202
265
164
170
140
194
252
215
273
200
184
172
161
234
225
182
174
223
242
234
163
244
131
206
214
218
180
222
176
163
158
191
212
179
182
171
159
219
191
201
212
177
240
169
180
201
213
266
164
241
188
186
229
208
159
171
239
268
201
195
202
189
229
177
143
164
242
183
221
183
199
197
224
145
224
216
181
192
183
209
213
203
203
206
172
245
232
180
214
192
185
249
179
203
255
144
210
209
174
178
221
258
169
178
194
187
208
204
192
219
197
151
212
200
189
222
175
207
209
228
222
123
250
236
140
241
192
194
179
246
197
156
179
203
183
285
182
190
170
237
151
241
196
164
175
177
218
242
224
223
216
176
203
227
185
233
255
207
223
234
139
174
215
140
177
147
269
166
230
170
188
225
196
216
186
251
172
256
209
222
183
161
187
167
203
198
160
195
215
181
212
179
209
173
234
165
229
195
208
176
144
239
238
157
217
234
208
150
204
227
213
169
168
262
182
133
171
208
208
215
164
197
163
255
189
225
245
208
199
191
202
230
224
209
260
216
155
195
202
249
192
191
210
171
162
183
185
190
195
144
140
194
199
119
162
182
184
240
196
148
202
237
219
227
181
227
223
247
188
101
202
109
231
168
165
225
217
209
269
208
199
238
280
192
237
209
250
236
196
203
182
155
212
264
213
171
254
192
233
193
170
216
96
285
211
150
206
208
222
138
223
216
245
186
222
197
224
259
194
118
153
174
242
103
221
153
202
152
218
171
151
213
236
266
220
162
181
241
159
223
191
252
134
197
161
172
217
175
259
220
204
198
208
195
221
172
137
176
203
176
192
256
206
153
236
221
192
191
160
156
208
165
183
175
266
197
243
238
151
150
161
203
159
186
163
191
223
176
221
222
207
209
211
202
210
176
223
138
191
174
222
127
200
218
161
188
223
175
183
162
274
170
180
240
183
227
211
194
228
208
193
137
191
233
212
198
206
148
189
210
228
220
121
154
145
170
194
196
216
234
234
223
242
154
183
232
132
239
182
217
190
240
155
224
224
159
247
210
189
216
222
164
191
222
198
237
231
213
167
220
203
154
191
185
231
208
225
198
126
157
193
214
210
204
186
134
222
204
142
162
213
175
207
216
166
178
194
218
203
208
244
215
238
160
174
163
138
237
207
231
149
236
184
193
162
189
170
193
213
214
189
148
188
231
186
199
205
211
192
173
202
205
192
211
175
159
172
181
173
169
237
227
206
210
208
146
229
198
157
183
172
159
236
226
195
204
187
218
248
248
203
207
208
196
164
169
190
184
229
190
222
264
139
202
220
198
224
235
169
132
222
223
213
175
203
226
115
191
198
195
219
225
143
222
233
145
231
173
98
160
235
227
176
170
159
167
255
222
219
222
184
182
165
195
197
201
195
212
201
233
163
226
251
213
248
194
205
200
259
221
178
279
214
216
272
228
242
170
248
228
160
210
223
200
218
180
201
215
205
198
195
236
270
208
266
129
172
239
194
129
226
236
219
153
189
156
163
213
226
202
208
254
219
214
295
148
204
153
159
127
203
183
237
202
147
215
228
269
165
199
190
220
194
225
245
242
219
241
125
191
205
170
177
197
216
190
258
230
233
179
156
211
262
221
174
228
164
191
185
204
182
194
216
195
181
225
164
220
200
143
165
225
210
181
189
215
225
200
244
227
224
137
222
219
193
220
199
146
155
218
225
254
226
195
240
184
222
106
252
130
197
192
193
231
130
159
180
226
219
169
219
193
189
218
224
242
192
200
233
226
215
237
195
255
222
241
170
279
246
214
186
181
138
221
255
191
190
163
270
262
197
187
222
195
223
150
223
222
176
184
204
219
229
243
273
231
217
167
194
199
197
256
202
231
186
236
182
193
167
210
151
171
220
144
192
210
220
267
203
191
204
230
230
163
170
186
220
188
191
199
188
275
203
183
183
174
208
208
229
183
183
139
184
158
186
206
180
272
196
214
200
223
231
227
231
166
193
176
179
171
170
117
204
234
222
234
214
173
240
202
239
167
131
255
235
215
251
180
194
233
152
246
254
185
177
183
178
170
190
248
232
202
184
242
214
223
226
271
214
192
219
135
227
200
232
204
238
158
123
175
179
208
216
210
220
189
212
96
206
203
256
216
264
231
246
209
218
174
210
161
224
239
181
193
168
190
201
213
163
201
184
180
265
219
172
224
175
254
164
237
257
195
224
159
229
181
158
219
191
202
247
125
196
193
238
146
234
232
139
172
191
150
178
199
156
252
196
175
179
256
187
228
236
258
258
146
189
202
174
226
181
255
197
177
148
225
187
167
223
170
195
197
228
227
162
214
259
215
229
214
213
93
201
277
204
150
127
150
199
168
213
205
168
255
209
188
210
193
160
176
223
206
194
182
200
177
170
190
261
185
189
135
206
201
155
192
140
213
160
178
180
198
210
154
194
218
195
170
214
166
238
225
222
156
223
184
238
188
163
214
202
245
214
166
153
182
137
172
225
189
192
247
210
219
187
231
227
167
183
225
172
168
216
228
219
256
182
178
200
243
204
194
115
170
191
192
216
188
122
242
168
197
276
233
207
167
117
212
150
135
247
217
180
225
165
180
190
185
147
171
201
214
240
166
212
165
135
189
248
148
232
201
206
179
233
138
200
247
149
121
180
235
204
189
232
193
216
199
186
216
272
157
243
140
196
246
208
192
208
221
230
213
200
161
175
256
230
181
193
168
210
159
141
213
212
198
213
211
147
183
157
196
194
214
232
192
213
188
142
188
183
195
205
192
163
158
226
175
151
169
157
218
192
132
242
223
248
96
140
182
232
169
215
137
220
197
159
168
186
208
207
236
174
137
182
153
197
244
187
198
230
188
209
234
223
214
132
239
143
192
256
128
227
264
164
237
179
160
177
230
152
215
216
156
171
194
108
196
193
180
180
192
204
170
218
248
202
268
180
213
237
218
186
118
182
183
199
263
218
194
202
195
264
196
192
225
172
191
203
186
124
102
189
224
209
239
181
227
56
215
254
299
218
189
191
220
225
211
226
223
167
196
178
239
246
237
163
267
195
195
221
173
220
163
166
224
200
172
228
234
154
226
200
186
202
227
194
199
208
264
187
222
204
170
210
149
199
215
181
246
155
266
190
186
173
205
185
211
179
209
211
198
223
230
199
236
182
216
258
172
181
241
232
147
129
183
228
229
252
198
167
216
170
235
221
258
171
133
173
179
170
109
204
242
186
216
223
200
222
218
214
255
178
264
228
149
217
206
178
209
174
225
244
247
185
244
175
162
163
188
183
146
204
268
241
223
167
233
205
174
174
154
183
179
238
127
195
210
149
166
195
186
206
210
237
224
207
109
236
178
217
252
202
175
200
188
211
169
208
198
233
213
208
189
253
177
235
214
207
222
134
246
131
182
209
199
244
182
171
174
114
198
188
240
191
197
172
181
189
177
220
239
136
202
241
86
208
217
186
217
259
186
191
224
189
162
153
153
172
185
171
175
152
206
180
225
224
161
212
203
200
211
189
188
237
155
247
230
120
188
276
262
176
255
184
229
171
194
226
167
202
183
260
192
186
162
230
205
277
219
218
188
157
218
138
162
208
277
190
194
168
211
218
131
190
200
245
215
215
192
146
202
161
172
215
226
216
178
198
172
212
104
257
217
250
222
169
229
232
210
159
222
137
232
197
208
153
203
206
183
236
218
224
278
255
253
144
163
157
198
147
202
255
193
176
222
232
215
224
164
200
263
252
196
122
242
188
190
221
161
201
167
240
216
170
190
190
140
200
181
161
245
208
237
180
209
239
197
178
224
200
220
270
175
245
163
208
227
221
211
184
195
187
203
201
191
256
204
224
148
174
192
134
231
149
205
232
127
222
173
184
262
198
168
231
190
185
167
233
237
260
242
194
183
238
229
208
211
191
214
223
220
130
245
197
213
206
162
223
227
183
172
149
157
168
171
214
177
220
227
146
220
164
223
161
201
160
167
219
141
246
194
199
188
196
202
261
204
158
185
200
236
240
221
257
202
236
226
205
223
185
196
158
259
200
215
221
131
200
253
209
155
141
186
210
182
211
191
205
166
254
249
230
228
181
163
267
239
208
223
165
166
164
205
159
189
185
192
150
205
255
203
233
160
160
184
236
215
224
182
175
229
213
218
218
233
230
284
242
172
201
219
211
187
214
206
209
230
187
135
205
188
133
167
241
134
240
168
198
273
228
181
148
239
241
246
194
214
194
206
240
237
187
198
202
219
214
134
170
232
174
141
173
199
154
168
195
249
202
174
178
178
200
157
208
222
174
192
245
258
157
248
224
169
226
278
259
163
191
206
243
222
184
225
177
241
230
209
228
179
182
147
199
194
207
134
259
163
208
145
223
265
200
220
196
198
164
160
276
139
259
232
253
159
210
221
140
244
178
177
217
187
199
173
212
165
205
213
183
172
177
277
221
185
206
191
203
231
136
172
194
189
207
163
198
188
219
258
191
129
263
225
224
160
198
221
190
180
205
191
179
150
141
189
179
253
225
171
187
225
185
217
168
153
135
209
196
184
227
184
248
189
136
158
193
167
171
228
191
157
221
219
228
210
241
236
146
239
174
198
222
212
192
202
208
164
207
226
188
238
167
226
229
224
191
195
161
194
164
226
259
182
228
255
185
258
154
165
167
206
185
173
210
220
221
127
234
211
197
197
220
199
171
227
217
190
208
207
195
236
172
162
260
189
251
192
239
190
227
140
231
195
207
96
166
223
236
140
140
206
207
218
211
202
236
129
181
229
262
245
218
226
195
209
173
208
239
205
217
136
186
206
167
190
166
215
221
136
193
234
268
192
155
134
253
211
189
214
147
210
188
214
250
193
176
165
186
202
147
241
175
180
226
186
210
228
185
142
193
205
167
197
174
187
136
235
218
215
232
231
242
159
158
180
214
211
213
189
227
174
189
201
249
173
222
131
271
192
261
197
180
206
269
208
228
221
159
187
187
249
217
188
199
150
219
219
208
200
198
233
218
160
136
257
254
219
241
156
189
147
151
185
204
189
192
244
222
207
170
205
251
200
175
170
174
214
206
273
201
154
234
189
196
230
172
174
126
192
225
222
165
204
212
124
156
182
185
288
157
230
174
202
137
190
155
144
222
236
153
218
194
180
194
196
224
156
161
135
279
227
226
252
167
212
160
219
213
186
231
196
186
201
196
215
206
190
195
148
122
194
204
199
211
226
176
217
180
214
187
274
218
231
255
219
167
237
205
246
177
211
193
231
154
219
176
187
171
243
159
226
177
179
186
205
240
147
117
223
214
181
175
167
189
175
164
238
233
249
209
215
220
174
173
193
212
151
219
147
151
192
169
139
202
123
231
187
152
172
162
149
230
207
165
196
202
247
187
168
193
266
206
231
167
199
219
190
173
178
175
233
173
161
187
175
253
166
245
212
120
196
131
215
200
215
216
240
203
217
175
262
212
190
195
215
159
157
197
190
174
201
210
193
189
179
197
200
204
228
122
183
253
127
150
173
261
240
230
227
191
223
241
220
164
189
229
203
172
215
214
205
243
215
173
181
198
178
209
285
230
198
224
254
210
155
234
209
176
182
188
221
157
237
196
165
243
207
178
192
182
256
160
189
160
202
176
149
206
178
240
170
186
139
248
235
184
227
189
212
162
217
204
200
209
241
202
225
159
187
193
222
167
187
144
165
244
153
168
214
206
260
210
192
201
222
230
172
200
216
238
215
220
179
254
189
216
210
195
207
250
147
191
226
203
200
192
242
196
180
103
245
187
179
180
151
220
231
191
248
161
128
175
245
203
171
162
220
187
217
204
243
193
194
214
210
232
267
123
155
247
211
247
169
186
178
199
196
202
159
226
172
255
201
197
214
193
149
171
227
195
232
237
237
187
171
134
176
188
203
217
205
182
132
206
141
224
201
223
246
209
211
192
241
226
215
196
211
152
198
175
250
229
238
186
276
249
191
170
226
227
135
241
209
207
136
264
175
195
225
282
132
260
190
208
238
218
185
186
147
150
222
242
257
169
231
193
171
161
205
201
207
249
266
236
209
163
166
179
171
201
220
217
158
169
166
213
238
152
230
195
257
204
186
154
219
184
240
118
196
184
164
191
121
176
160
140
203
198
196
216
189
144
241
125
188
268
165
238
198
228
215
240
183
191
200
221
279
219
230
265
216
175
172
167
133
186
183
162
231
188
219
151
213
203
197
264
157
181
198
202
226
144
203
232
224
234
218
228
205
207
154
205
243
239
202
235
194
193
262
196
214
208
244
238
206
148
161
215
214
221
195
178
153
158
166
192
229
165
207
166
188
141
172
136
230
185
214
171
195
228
188
164
259
211
241
256
267
198
142
242
213
187
179
192
287
219
222
180
174
221
189
223
215
157
194
194
171
140
216
152
183
203
193
222
226
201
239
241
192
228
177
201
181
210
220
172
232
210
221
142
214
190
192
201
151
262
199
189
230
229
223
199
205
190
227
167
171
166
202
179
194
208
226
251
211
222
198
165
128
129
192
227
200
236
193
185
170
226
177
162
135
208
200
208
189
169
224
201
192
178
166
187
261
189
216
184
216
219
232
162
205
255
203
192
151
161
193
184
226
200
209
220
238
206
203
167
208
237
132
242
222
165
172
194
180
159
207
184
198
156
215
226
218
235
275
199
232
125
191
230
232
137
207
215
247
213
192
228
227
207
206
189
236
169
179
170
216
271
173
200
221
204
146
213
274
221
247
230
123
168
163
165
147
195
230
176
151
187
247
206
181
183
178
179
231
264
210
163
217
199
181
202
234
148
147
229
191
140
137
166
144
220
288
161
235
214
190
173
170
232
207
221
209
197
167
249
204
193
182
205
202
215
240
252
109
223
255
150
212
168
250
160
160
164
185
179
166
268
150
160
175
203
267
208
183
173
229
164
133
247
208
138
223
238
176
184
222
150
211
115
219
256
170
210
180
188
196
218
219
224
128
169
213
179
225
124
169
181
215
134
200
210
232
214
163
233
230
200
189
194
208
185
128
243
171
116
192
230
239
246
210
195
219
226
216
260
160
136
203
187
179
235
190
184
147
253
183
230
182
203
178
242
168
212
173
188
223
206
170
238
237
167
236
159
222
217
246
222
135
167
234
152
199
266
215
238
185
193
191
176
189
156
188
182
199
124
192
162
198
201
166
210
156
146
248
212
192
261
195
163
230
178
168
262
215
223
223
205
234
253
171
218
185
216
174
213
139
141
267
197
202
211
200
245
165
167
228
198
233
211
165
172
213
239
180
183
205
224
204
184
165
210
161
244
196
187
130
185
206
189
229
112
172
225
195
194
242
187
201
212
203
187
219
179
256
161
131
201
175
205
157
200
135
190
202
188
254
235
275
217
210
199
194
195
190
130
186
254
243
146
193
215
188
198
205
219
252
155
183
239
212
236
203
154
275
180
166
248
175
153
182
220
173
197
203
181
151
239
234
264
194
247
191
198
220
155
181
228
162
247
205
159
209
159
210
194
203
223
141
191
242
249
207
241
238
262
185
233
230
230
142
160
176
200
220
225
246
196
186
246
228
210
207
227
259
211
232
225
246
231
196
223
170
209
172
193
217
160
208
209
141
198
185
193
254
257
203
240
177
255
178
179
171
176
243
255
260
210
212
197
194
198
226
135
209
276
219
211
202
218
178
172
179
207
268
208
218
194
170
174
244
169
163
159
229
201
182
239
286
222
176
191
197
148
216
201
156
221
242
211
188
225
226
181
192
186
244
162
185
176
209
216
165
267
227
238
191
142
200
247
189
195
181
244
144
202
208
172
186
216
197
191
179
201
224
182
262
236
237
198
181
183
191
140
291
171
180
183
107
174
139
179
187
223
226
185
146
246
163
271
203
193
263
215
267
231
191
209
172
200
202
206
252
176
217
188
206
212
222
187
233
219
180
238
224
184
222
178
154
209
150
210
170
213
193
173
205
187
204
182
174
203
249
202
207
221
144
211
198
187
221
200
230
193
164
184
149
190
220
176
161
198
219
200
204
226
120
258
187
224
150
197
147
239
183
218
154
187
223
254
168
187
232
223
241
174
196
213
175
229
245
202
218
188
187
189
195
177
143
192
210
206
169
125
179
209
247
162
147
133
240
161
234
217
170
183
200
175
179
250
253
204
209
230
196
230
176
204
161
145
199
231
198
225
119
191
193
184
124
202
205
179
183
252
211
190
301
195
216
238
210
216
179
172
214
198
178
173
189
226
195
228
172
144
190
243
153
237
184
246
235
226
269
182
219
204
197
192
188
191
215
170
203
228
134
190
180
162
199
209
167
190
215
153
209
206
228
231
223
242
256
137
224
206
204
184
155
224
133
215
209
158
235
171
220
210
130
258
217
251
231
163
231
141
211
269
195
238
161
165
208
216
112
159
248
190
196
231
197
178
217
195
236
233
182
165
171
231
210
195
233
248
193
172
224
227
261
249
189
140
150
191
197
203
235
158
267
164
208
189
256
192
149
217
167
223
194
218
219
175
219
182
163
176
165
210
174
125
174
225
209
206
229
169
183
221
141
227
222
196
226
191
195
248
198
207
248
212
213
216
202
216
230
252
236
177
158
169
156
153
119
251
162
209
177
224
152
234
135
217
227
205
224
242
185
193
219
234
233
182
222
216
224
208
211
133
194
199
158
232
214
219
249
207
265
142
191
250
270
239
168
235
174
247
179
236
242
218
197
190
244
239
101
188
180
252
204
166
120
105
211
272
141
162
191
224
238
172
230
215
179
211
188
199
243
202
202
208
146
203
195
239
194
221
288
208
213
197
264
195
194
205
176
254
186
169
234
245
228
203
212
144
184
247
179
194
232
241
145
238
212
210
201
181
211
261
180
192
159
200
200
174
214
121
189
193
143
238
223
187
185
190
194
208
177
196
172
138
155
120
218
210
207
240
203
235
226
181
169
200
261
159
229
183
162
155
200
186
202
172
173
217
210
192
211
140
217
119
191
203
224
124
243
193
228
228
240
115
224
221
131
188
178
205
161
225
216
199
216
247
196
224
225
243
177
239
120
161
215
202
277
156
201
235
185
177
238
200
144
235
109
136
233
274
105
173
208
148
249
226
181
237
167
184
247
127
126
127
163
241
216
213
199
226
185
184
165
127
191
252
198
175
120
145
191
150
188
192
211
174
206
200
218
202
230
197
228
207
237
213
196
215
211
249
176
205
178
247
184
207
198
160
160
221
201
118
214
211
192
238
233
188
149
154
213
201
226
179
263
240
138
224
184
198
198
161
197
160
222
106
133
221
237
207
178
128
248
191
223
212
201
177
198
238
200
226
178
207
204
208
222
210
195
173
275
212
208
215
216
166
135
153
168
197
225
186
172
173
162
242
204
197
248
213
164
157
216
251
131
191
237
270
178
211
202
248
161
226
114
210
213
229
139
185
161
176
247
205
165
227
189
231
196
273
152
221
207
214
205
210
169
212
227
200
259
276
186
159
191
164
144
206
210
226
199
189
223
192
194
223
159
223
229
236
184
201
119
204
215
157
176
211
146
149
209
214
221
238
208
180
169
202
224
153
223
171
157
143
194
216
214
202
208
147
249
240
162
238
224
252
183
262
198
151
202
141
182
222
156
183
221
233
173
250
152
195
235
213
216
199
211
225
188
205
227
199
208
225
148
244
223
203
210
247
197
213
203
228
181
194
211
199
174
215
204
255
191
220
166
189
222
235
235
229
199
226
222
214
257
197
171
170
170
204
212
254
236
221
188
215
96
218
244
193
237
298
165
179
182
181
99
231
166
183
238
151
274
218
116
206
223
177
224
207
261
232
176
211
290
262
169
232
172
246
221
180
214
257
223
214
200
155
136
186
263
212
189
222
246
211
203
179
211
206
182
250
138
260
195
225
267
215
196
176
177
200
319
171
223
191
285
198
213
171
228
204
193
195
228
140
222
230
214
204
174
211
192
151
247
206
115
250
219
164
156
211
207
202
198
189
242
188
167
219
212
218
156
212
156
207
203
213
187
201
185
198
145
186
226
215
276
147
197
215
187
221
223
199
200
217
183
194
146
188
178
259
200
217
203
205
132
189
233
239
213
174
217
196
200
227
172
171
208
209
214
204
140
212
202
259
167
131
205
145
269
151
218
214
188
152
245
175
210
156
166
160
172
169
234
150
154
166
199
175
209
190
199
195
210
253
232
181
252
217
203
182
185
213
218
204
206
221
171
197
161
183
227
214
178
234
150
163
183
206
173
107
209
171
170
216
151
199
156
172
157
160
125
157
230
186
193
283
230
151
230
227
179
200
174
231
195
242
211
226
248
206
184
170
243
180
242
160
164
176
214
158
186
195
202
217
232
171
224
174
196
189
204
239
233
188
247
247
214
230
213
236
190
214
179
229
175
187
189
193
187
173
200
229
147
175
211
182
210
179
167
223
259
170
190
220
143
165
197
178
162
226
181
232
209
238
179
155
207
200
219
213
206
204
198
164
135
208
115
201
166
183
209
261
197
213
158
224
266
210
226
201
249
228
169
186
206
226
135
211
170
283
187
186
114
172
237
152
223
229
159
195
193
160
149
207
234
117
248
249
233
221
128
177
180
232
160
251
195
217
237
160
174
187
201
156
154
260
263
192
157
200
181
157
160
185
211
231
217
187
199
173
222
255
153
170
201
188
190
226
180
187
156
219
227
188
202
237
228
229
183
201
194
225
203
212
241
238
151
209
248
210
228
217
202
196
179
234
187
224
149
260
210
223
159
275
173
195
156
160
205
239
224
200
182
215
183
177
205
226
202
170
152
232
214
156
185
301
238
212
185
184
238
217
183
195
194
216
245
203
174
213
214
197
210
158
147
182
165
189
201
227
251
203
148
277
139
205
201
226
160
255
159
208
253
207
213
255
276
213
202
129
211
187
221
260
140
221
186
210
243
176
201
170
246
179
123
227
209
211
221
221
170
219
166
195
191
232
214
190
239
194
208
238
163
259
176
234
220
174
192
205
186
252
187
188
240
159
202
188
199
216
149
181
190
165
200
214
204
220
192
219
190
236
216
176
148
180
168
225
214
226
252
178
162
217
259
210
166
254
153
180
262
229
153
227
190
216
173
204
240
190
169
169
177
212
198
178
182
151
184
205
222
243
246
219
201
194
274
211
202
178
170
176
168
150
150
180
137
190
235
221
218
199
216
241
199
169
204
204
171
198
168
206
238
213
190
258
206
206
229
229
213
222
202
202
134
196
210
196
158
214
171
162
220
220
221
211
230
222
185
156
205
238
201
251
128
177
190
111
190
227
179
223
237
247
211
231
136
211
254
142
242
165
225
210
197
141
193
188
225
241
219
208
232
196
162
147
220
193
226
203
223
222
231
221
171
209
165
189
224
227
111
208
212
247
221
182
228
256
218
186
218
213
235
229
175
155
236
151
172
232
203
177
178
209
215
209
184
160
265
164
182
197
183
194
218
193
199
245
150
224
181
213
178
199
233
229
192
147
187
189
235
218
128
241
259
178
248
210
184
200
189
232
189
185
222
193
224
170
205
192
214
147
217
194
169
215
202
219
164
254
223
246
191
194
225
220
227
195
242
259
248
200
195
185
215
169
187
197
213
202
223
199
256
153
241
190
170
148
231
157
217
242
273
233
226
144
195
220
189
159
226
226
178
183
115
172
188
125
291
132
236
194
176
140
186
228
207
212
185
199
272
184
145
148
204
156
232
184
133
179
180
230
211
207
219
227
231
215
205
201
178
245
161
197
185
176
229
172
215
200
186
250
210
230
229
230
235
154
196
211
249
171
210
177
249
183
153
232
255
220
211
195
188
171
199
201
209
148
193
191
243
174
225
183
214
233
187
218
167
239
213
183
218
168
149
177
178
221
199
191
174
240
202
237
228
160
186
206
210
172
157
206
227
186
166
240
157
198
182
190
206
130
217
212
191
149
207
190
290
219
147
160
191
234
192
199
162
167
132
185
206
140
172
149
169
193
170
194
246
172
215
276
236
178
205
221
232
155
266
244
215
224
109
207
188
205
168
197
132
196
173
226
252
151
160
257
159
199
175
148
212
194
200
141
149
188
227
188
231
195
169
221
189
260
256
183
150
207
188
221
154
256
278
196
200
237
187
205
136
199
155
213
192
232
209
197
276
168
223
194
196
187
172
213
175
224
140
239
277
221
183
215
237
165
200
231
184
212
188
214
184
220
216
199
175
166
219
207
189
179
171
237
212
147
223
283
230
171
181
224
249
244
246
203
192
222
133
215
196
171
212
211
232
177
194
219
256
215
270
163
185
247
192
255
226
173
175
163
176
135
228
242
235
199
155
230
203
174
241
195
217
230
149
149
156
220
246
224
204
224
180
250
218
199
238
200
188
232
180
193
198
195
200
203
214
203
223
153
179
148
209
216
175
195
232
231
143
183
249
185
251
167
240
212
225
232
181
232
203
169
190
213
190
203
212
179
239
211
120
218
250
244
241
237
203
176
182
200
134
171
197
189
171
272
254
220
228
196
149
191
201
215
166
175
184
206
149
162
198
192
175
222
176
221
202
160
219
223
189
185
189
229
212
187
225
212
116
233
147
207
169
161
196
215
160
181
182
203
220
192
221
246
214
178
219
185
231
184
229
184
164
190
212
201
238
176
178
160
209
90
198
209
177
237
220
204
158
203
132
186
194
195
138
122
200
159
216
247
225
198
167
211
261
193
218
197
210
181
194
196
199
187
135
220
161
198
157
201
224
235
209
153
213
182
177
152
157
186
219
265
184
219
241
213
191
153
217
195
198
202
237
188
171
220
249
204
169
239
166
190
218
223
225
144
223
161
183
151
247
186
168
187
242
258
257
192
231
214
223
251
216
191
222
124
176
182
248
237
196
187
206
133
169
201
194
206
179
169
173
146
182
223
135
183
202
151
115
203
214
260
215
223
134
147
232
232
189
196
226
184
277
216
152
191
173
229
213
191
212
242
151
273
210
159
229
236
224
195
221
229
211
222
174
262
198
138
201
173
239
212
180
219
185
206
182
97
255
208
219
217
227
211
187
244
165
174
213
150
266
287
227
161
188
200
210
287
168
197
124
182
221
221
268
182
276
197
225
175
228
235
199
180
223
227
190
173
184
197
220
191
217
228
198
158
177
152
231
208
235
227
224
194
209
221
178
201
203
166
218
263
221
205
156
206
254
200
234
195
152
214
188
258
191
201
191
208
184
166
179
189
200
172
200
193
223
188
215
151
215
184
262
151
246
222
116
201
208
202
185
206
239
180
175
178
199
253
241
110
159
246
201
222
170
255
174
292
247
211
191
221
211
189
250
139
221
201
212
173
213
190
176
189
237
220
235
173
254
222
210
194
214
243
206
245
151
192
172
253
224
189
221
219
172
263
192
218
231
256
221
228
240
185
175
147
206
174
208
230
189
221
202
260
225
231
219
128
193
182
195
192
208
207
208
235
178
175
262
205
205
229
191
183
219
236
204
192
222
255
187
180
214
189
178
220
155
236
182
182
215
242
137
192
224
174
202
240
98
194
233
225
183
183
169
168
175
195
220
164
180
189
147
187
220
175
206
146
192
221
202
219
219
235
243
200
147
159
170
201
231
128
258
234
244
199
185
203
219
205
188
182
193
208
275
220
147
200
231
205
193
152
181
246
231
173
171
211
224
248
216
214
165
215
195
219
207
265
213
183
206
162
181
178
156
150
224
232
204
207
223
207
253
171
163
173
212
178
152
173
229
166
241
216
203
177
209
205
230
207
170
235
206
202
119
226
230
196
242
215
232
108
207
236
156
189
206
205
192
203
143
159
148
191
240
231
211
218
204
193
152
248
217
144
270
169
159
195
180
225
139
202
242
182
213
176
181
244
222
201
270
249
151
199
188
208
219
254
191
211
206
180
215
192
206
231
197
224
228
225
205
198
213
191
190
180
262
271
258
159
132
178
233
177
203
182
190
222
202
160
219
200
205
164
205
209
130
200
227
248
261
181
204
135
180
210
186
230
227
187
186
233
208
156
251
218
179
210
189
166
235
147
172
167
209
182
180
213
210
164
187
203
229
172
243
187
175
205
260
223
195
197
234
221
153
161
251
238
264
219
248
227
220
208
258
207
190
221
219
208
212
154
147
188
269
218
203
217
203
257
237
237
150
198
204
206
168
215
238
189
209
232
234
187
213
195
191
246
208
173
176
191
204
143
204
178
183
149
221
203
288
208
154
203
235
141
179
244
196
235
227
255
242
194
208
229
193
216
157
216
161
212
205
238
199
162
222
205
192
138
183
137
147
163
191
209
229
223
189
236
176
238
217
197
243
232
259
187
239
180
214
161
252
248
223
176
162
173
189
142
137
144
202
186
239
170
122
192
167
181
215
179
223
273
237
158
187
166
196
192
194
216
227
202
233
195
189
233
210
239
255
198
155
234
154
233
219
213
156
254
181
180
179
161
243
237
201
161
177
174
175
183
209
177
228
208
159
220
189
154
192
236
191
192
169
206
197
219
181
210
192
216
181
227
183
194
162
144
199
107
262
231
106
173
209
216
228
237
154
208
160
225
156
212
199
186
204
148
213
188
247
140
266
148
242
222
237
190
250
227
192
207
184
172
181
197
178
228
212
200
169
220
215
276
107
202
182
259
234
192
113
148
228
166
192
227
218
202
235
165
262
206
161
204
214
178
219
208
155
227
255
234
218
169
219
76
158
152
232
196
217
202
200
204
229
252
190
210
165
238
166
153
255
218
193
197
161
203
189
209
187
215
209
216
222
232
198
258
176
243
235
128
238
180
134
220
233
157
196
238
194
193
189
194
267
184
166
141
195
161
231
176
262
203
178
194
168
251
206
188
208
194
165
261
228
242
140
242
233
249
168
222
200
178
205
133
194
163
182
164
258
266
211
229
218
192
167
221
257
247
162
227
237
227
271
177
209
184
154
233
193
130
238
235
193
169
226
200
179
235
173
247
232
269
129
182
182
197
147
193
225
227
209
163
159
221
149
201
195
197
162
219
203
199
224
206
272
217
145
236
180
190
231
211
188
156
205
137
220
201
212
159
161
257
209
210
137
174
158
213
206
144
171
175
221
231
235
142
166
186
174
179
161
182
230
165
190
188
218
171
226
201
227
218
228
126
221
152
215
155
254
188
178
144
216
185
180
234
184
173
172
209
183
210
193
195
218
216
197
215
210
198
253
210
167
177
201
207
278
213
209
175
157
197
163
200
227
225
165
182
211
170
210
181
223
213
168
152
168
181
209
181
230
271
254
247
190
166
198
219
180
191
198
193
253
183
209
215
190
244
243
238
231
152
170
167
195
188
185
186
257
274
210
179
153
202
188
220
186
205
150
197
186
201
262
184
193
193
250
220
185
210
185
163
130
194
217
218
241
137
178
211
227
234
243
191
212
217
170
256
144
153
172
214
203
218
134
264
213
165
208
158
215
185
221
160
187
212
157
150
226
259
229
181
237
233
184
228
286
217
185
198
211
152
229
237
213
238
172
212
210
252
143
176
221
217
225
218
128
230
207
182
240
143
212
196
142
149
168
150
205
261
179
195
240
207
211
222
178
212
204
174
191
271
233
164
259
187
204
221
222
170
199
210
158
209
192
222
247
204
206
214
212
226
230
187
190
175
197
192
237
156
235
234
220
251
228
149
205
200
209
205
248
195
232
188
171
190
231
186
242
248
232
238
226
229
198
267
248
242
178
212
196
167
126
255
231
173
180
187
174
232
247
221
221
262
197
207
173
202
189
216
235
150
193
201
210
174
234
223
162
197
160
145
228
171
230
166
247
139
199
212
183
151
202
177
208
169
205
266
257
230
216
143
220
214
234
191
197
205
159
202
219
116
235
223
221
170
237
161
138
226
142
180
169
261
243
218
186
159
247
152
166
154
196
135
215
259
219
257
162
251
166
251
206
194
215
183
141
209
126
259
219
189
178
185
191
242
199
148
178
202
153
183
207
212
215
259
228
179
251
252
166
220
184
160
217
207
239
177
208
209
208
213
181
184
195
249
182
181
193
200
250
216
210
186
148
154
153
208
208
145
227
222
184
148
261
199
165
229
157
227
125
153
232
211
176
228
204
168
244
177
225
114
217
226
150
240
162
211
228
162
196
120
257
215
189
174
155
154
170
169
218
238
246
172
163
264
181
186
159
179
215
160
182
172
233
172
164
146
214
211
193
290
195
226
233
247
275
211
226
211
210
217
173
159
219
112
179
213
164
213
173
218
224
205
203
148
253
179
222
191
157
182
217
191
210
199
216
149
219
228
240
238
173
193
151
143
289
232
208
252
216
186
265
184
217
178
202
125
237
181
215
239
216
197
201
228
133
188
220
175
244
210
226
236
148
199
172
214
200
170
169
221
208
253
171
195
147
154
190
210
191
145
167
269
174
206
198
187
236
216
209
166
147
192
177
131
176
153
181
200
281
197
225
155
162
154
207
153
142
236
243
253
233
121
252
204
206
167
128
272
216
221
263
134
193
247
225
108
211
236
144
231
240
197
243
205
194
210
148
181
206
173
191
206
192
202
196
253
183
267
165
200
139
196
206
202
116
216
211
180
214
192
216
176
240
136
142
285
156
200
195
173
168
184
210
156
177
190
193
245
133
230
154
232
248
201
119
172
140
218
187
234
217
148
171
193
237
179
205
209
149
198
282
208
173
205
262
154
223
194
212
253
233
230
214
160
254
205
224
228
177
227
200
201
178
274
246
172
193
205
219
164
230
220
159
204
251
156
217
101
183
231
155
219
176
220
192
243
224
147
156
206
188
204
226
200
232
163
195
283
177
215
164
234
145
183
216
209
146
167
219
214
209
183
266
212
213
190
208
209
196
159
145
260
142
230
165
152
225
208
223
170
157
135
229
190
219
234
166
156
198
198
207
242
187
184
212
201
237
223
211
169
230
213
261
128
220
199
222
187
194
185
164
181
202
190
175
222
270
160
177
238
223
220
206
159
206
147
202
209
154
203
270
213
156
169
167
226
210
169
128
187
239
151
165
226
148
227
211
179
268
170
226
111
255
278
221
165
176
237
209
192
185
189
277
232
183
175
198
242
195
212
207
254
230
217
178
217
181
259
242
207
246
257
190
192
175
163
201
193
182
217
230
227
184
206
246
196
230
245
214
141
212
221
215
165
193
166
197
193
197
198
240
210
246
132
236
193
97
205
143
260
201
193
161
235
212
198
220
179
184
206
169
177
189
254
233
208
194
196
126
216
177
214
181
207
285
158
189
192
216
161
193
210
187
194
180
168
182
199
240
111
228
218
185
257
216
249
265
179
203
197
217
182
236
199
182
227
192
274
212
184
188
188
258
182
139
151
180
177
213
123
156
234
190
189
200
178
227
256
200
213
138
208
187
173
156
241
188
163
222
211
122
179
181
116
173
271
158
190
161
219
145
198
209
215
235
265
182
231
194
211
186
261
202
205
234
117
168
182
202
212
210
238
157
251
191
212
211
221
132
256
243
172
173
147
220
277
221
218
186
228
228
179
223
183
217
214
227
181
203
206
160
233
97
160
200
233
170
184
200
222
200
231
176
262
257
227
207
203
175
205
172
207
168
225
225
147
262
240
127
231
149
213
240
203
210
174
202
242
240
188
180
205
214
179
227
202
230
233
239
147
184
215
235
162
192
147
195
203
218
235
204
228
156
198
188
191
107
180
194
222
166
160
261
259
245
215
220
197
219
152
191
159
178
232
200
222
266
184
137
204
138
263
165
158
235
189
194
193
238
235
113
212
239
193
203
230
245
194
190
208
225
181
218
216
222
184
226
257
191
231
240
253
228
190
179
257
179
173
225
204
191
150
143
279
196
212
204
146
194
205
196
269
174
228
134
133
184
185
163
176
168
156
205
220
261
250
190
204
129
161
217
140
217
247
254
254
185
215
221
189
181
200
195
205
174
195
223
134
227
209
188
177
170
204
187
160
201
179
197
237
211
251
268
163
232
265
141
175
184
149
225
186
234
144
200
232
232
233
232
218
234
240
219
215
234
250
207
221
217
181
182
210
144
182
192
201
138
205
233
218
218
220
198
178
205
209
173
178
202
231
189
227
253
240
214
207
187
182
213
203
203
151
199
242
202
149
237
250
198
225
159
195
222
261
178
203
217
192
179
188
215
160
213
229
219
181
214
200
159
246
206
165
249
197
195
184
182
157
218
139
230
200
149
198
229
154
188
209
222
169
171
200
240
211
182
163
194
149
244
184
211
223
192
155
152
222
204
142
185
181
214
185
229
201
198
237
227
207
155
145
206
182
184
256
163
251
120
246
248
190
230
217
161
198
268
154
173
145
197
205
152
205
240
243
167
158
241
130
252
214
194
210
264
205
198
132
159
158
242
228
201
237
213
207
154
196
288
115
179
212
215
156
166
246
179
181
203
214
197
184
210
211
173
197
175
179
240
210
224
206
163
207
218
208
224
259
172
256
214
209
218
175
235
201
179
219
132
226
239
191
196
198
198
198
221
221
214
227
202
200
212
219
218
231
186
144
226
226
219
223
133
224
160
199
188
206
162
243
234
162
189
205
194
188
240
166
209
245
176
212
256
220
201
229
265
194
239
235
171
215
250
178
214
157
272
150
190
215
180
203
183
278
225
210
167
164
221
208
247
182
225
208
214
203
200
262
174
156
221
168
199
169
211
240
149
228
187
176
171
179
230
247
155
215
194
251
209
186
178
158
254
173
125
202
214
172
169
224
207
243
242
176
185
185
227
251
195
182
241
223
208
218
108
201
182
208
173
181
191
196
149
162
257
160
204
179
233
200
188
141
99
162
248
209
127
235
188
229
122
204
230
213
192
216
248
224
216
178
238
196
195
160
220
177
162
168
137
175
94
198
278
242
198
193
182
187
186
230
171
204
163
239
203
191
156
202
182
161
175
225
159
246
130
225
230
141
232
234
178
226
170
156
172
180
234
133
216
199
224
216
225
222
138
176
237
150
202
165
217
172
187
146
214
203
170
182
124
208
165
205
201
191
206
164
140
245
221
263
195
237
182
180
179
211
199
210
140
190
177
187
226
145
156
218
182
224
193
168
162
210
195
215
238
250
280
192
238
238
262
184
224
151
205
168
172
213
222
207
230
235
193
221
206
174
196
182
202
156
275
205
166
243
227
256
156
174
214
154
172
172
165
172
236
184
180
233
267
157
211
138
176
235
208
223
138
229
215
187
245
142
160
189
174
150
204
190
200
210
136
178
172
200
199
166
234
209
190
238
216
206
235
207
96
206
260
157
158
155
171
145
203
123
223
112
190
262
121
220
209
212
172
178
220
172
232
223
220
173
172
205
242
185
254
227
158
200
196
271
227
213
214
234
171
207
216
112
207
181
171
199
198
213
211
200
238
246
257
279
245
189
251
175
231
177
177
220
192
214
262
194
198
185
231
222
238
171
226
196
231
156
179
250
172
296
264
231
204
197
185
235
194
197
267
216
266
206
208
211
236
275
218
204
207
124
180
167
192
178
171
255
150
231
192
209
149
182
179
190
208
141
213
165
192
203
216
144
172
200
150
217
196
191
182
113
181
216
143
163
156
166
210
182
184
229
186
179
211
221
258
247
159
232
217
165
236
174
217
228
189
258
242
218
181
144
247
242
184
127
158
222
215
128
191
220
189
179
245
189
141
229
187
187
206
242
232
133
214
244
124
171
172
253
168
195
237
122
273
231
199
187
232
186
253
220
199
211
239
213
211
222
192
195
198
196
120
199
173
234
258
202
162
200
138
175
213
250
229
170
204
244
204
232
214
235
178
121
181
253
204
188
184
176
205
241
189
197
206
178
164
206
182
254
171
170
182
198
133
151
160
233
249
227
125
182
146
233
164
148
233
230
264
176
183
199
207
177
157
246
182
223
137
232
280
193
194
195
203
216
257
194
137
212
207
191
221
181
233
235
174
253
186
196
229
214
270
209
176
212
201
166
147
255
194
237
188
230
216
222
238
149
199
193
224
214
217
234
250
180
212
234
180
201
225
255
234
144
215
200
131
189
218
220
106
202
86
217
236
187
213
209
189
137
225
220
215
172
165
180
219
258
205
194
247
222
203
199
228
191
162
211
224
199
193
135
219
197
206
199
161
145
220
183
212
191
252
194
221
160
228
264
198
257
186
242
216
178
194
161
203
223
152
198
212
215
105
163
231
222
160
190
211
230
175
100
213
196
224
186
220
192
224
162
197
165
239
261
239
191
239
213
146
197
214
134
154
164
190
234
261
179
203
207
206
139
214
147
250
217
157
213
203
199
239
194
208
214
142
212
162
220
140
262
170
180
239
146
210
117
223
170
213
209
242
175
232
155
227
193
213
256
194
182
226
159
124
193
251
226
217
148
219
171
208
218
184
137
174
248
170
144
187
194
218
213
169
210
199
181
219
254
170
202
174
210
229
225
141
138
209
195
198
170
121
198
193
120
186
224
216
156
158
168
211
157
213
174
189
184
165
244
215
226
160
212
152
226
190
252
211
194
268
190
246
204
206
236
191
236
255
151
173
164
178
148
285
201
215
174
223
191
250
201
181
152
236
178
156
167
119
241
186
240
203
131
184
293
235
216
174
243
197
181
222
148
267
276
121
224
180
176
180
161
169
204
222
255
254
132
176
226
217
225
193
243
198
234
191
182
247
239
206
225
195
242
216
249
165
182
193
153
155
150
247
125
191
253
220
220
224
167
201
193
226
216
218
206
194
153
166
260
234
184
200
236
219
149
178
180
205
206
230
244
173
136
159
184
170
209
206
199
212
172
203
134
188
237
234
230
189
172
213
223
226
207
205
182
222
239
219
219
223
152
239
212
239
224
254
211
170
168
255
213
238
191
208
236
208
223
224
174
149
232
283
246
212
129
175
204
172
190
175
171
202
189
206
160
208
183
251
168
228
193
274
236
181
267
195
249
173
80
158
189
225
224
233
201
139
197
208
211
166
232
240
259
235
229
184
200
213
192
166
259
139
208
259
173
202
134
205
210
168
159
155
254
242
209
220
261
230
178
166
173
205
207
205
269
172
239
125
223
197
126
217
237
232
161
164
225
248
164
217
229
146
202
215
182
175
153
230
186
143
200
179
199
230
206
141
205
200
220
192
243
228
196
156
215
213
208
212
167
209
214
175
174
232
194
202
179
244
181
215
191
170
236
150
189
204
246
163
243
142
198
183
207
214
157
240
197
172
209
208
176
257
221
202
95
132
199
209
209
233
164
170
219
189
118
220
204
210
178
230
179
197
293
220
210
273
207
177
196
208
206
193
163
225
180
164
182
205
191
219
267
159
184
246
168
157
147
193
202
222
171
186
225
176
170
193
188
212
214
190
217
248
176
224
176
245
201
113
173
202
170
204
142
177
195
214
194
231
204
195
193
215
130
239
166
193
179
214
117
257
187
130
190
175
187
195
237
256
220
184
144
179
223
235
212
205
195
113
225
202
168
159
238
149
186
222
206
164
231
250
228
231
242
181
203
220
212
257
159
215
160
162
176
198
168
199
226
228
167
210
216
230
229
172
185
195
141
198
205
154
172
256
168
201
246
194
196
178
166
254
204
228
198
205
244
190
216
207
222
217
223
172
213
174
128
201
209
206
197
208
256
228
214
181
168
208
192
195
167
228
192
169
192
149
217
176
217
193
212
203
225
167
220
179
195
190
233
198
146
225
177
219
219
195
217
175
176
263
188
230
126
234
168
248
262
217
196
205
196
218
250
140
202
183
238
180
192
205
250
199
204
202
213
215
192
167
182
219
154
201
183
231
143
102
228
249
217
161
244
166
245
148
199
157
149
149
201
253
124
210
257
242
155
220
170
178
234
202
256
216
244
226
235
232
221
173
250
216
182
210
262
201
209
237
261
177
180
187
218
182
198
244
220
160
179
141
191
187
172
216
181
197
182
224
242
246
180
153
176
207
209
190
198
194
143
228
200
201
214
206
244
247
170
193
276
237
146
201
177
210
232
199
161
179
198
224
130
167
220
197
212
183
295
193
220
231
178
197
217
216
201
197
215
177
215
122
201
245
181
208
152
222
158
201
154
167
224
157
174
221
220
173
191
203
207
246
192
193
168
212
169
216
198
182
206
207
179
246
208
209
189
219
228
176
166
176
207
261
220
216
219
214
222
205
201
184
199
140
259
126
208
211
154
242
224
223
194
239
182
190
200
191
170
228
250
156
203
259
157
163
116
168
182
206
169
183
196
196
195
199
271
227
178
142
193
210
206
132
213
183
173
218
246
233
166
218
200
209
242
142
237
212
189
178
115
236
148
196
230
175
198
182
214
245
204
223
212
170
190
219
237
178
175
189
203
246
201
208
149
178
132
196
179
218
207
218
125
210
204
181
256
134
257
180
195
156
194
188
198
156
208
174
208
169
228
236
157
227
199
219
181
226
195
240
136
243
224
172
177
213
176
176
207
169
194
217
161
178
223
212
189
173
181
245
199
242
158
271
196
209
175
222
221
203
235
236
117
245
205
198
218
174
192
158
178
222
188
193
222
154
134
142
173
218
246
214
250
252
192
218
203
209
211
156
200
237
135
210
167
213
134
215
158
161
229
141
193
225
154
243
193
238
294
150
206
200
216
135
232
238
243
200
164
160
190
187
253
282
214
192
178
206
111
132
157
205
187
187
196
216
202
200
262
164
172
242
205
196
209
243
248
250
173
170
221
197
214
217
151
217
88
266
149
197
179
182
169
188
237
146
187
248
207
190
167
182
220
201
216
235
229
177
169
192
162
197
179
155
217
173
182
171
180
219
166
136
221
249
191
221
217
209
172
161
164
215
172
211
154
210
156
228
239
218
184
210
209
207
180
204
223
204
181
238
177
212
219
155
200
277
215
310
201
186
200
272
174
188
230
172
188
246
241
155
234
161
236
216
152
164
204
216
211
232
222
207
175
230
139
214
246
156
200
220
212
213
237
217
175
176
241
204
164
203
166
201
158
180
197
189
159
189
177
197
206
243
204
186
234
237
225
156
182
228
124
197
238
171
192
178
208
241
208
178
190
180
180
208
203
254
158
192
182
181
229
220
196
154
254
281
249
209
161
168
186
231
211
185
139
227
206
184
193
260
176
202
224
178
237
140
213
275
136
153
242
133
135
163
203
232
160
227
190
146
172
197
205
184
254
248
158
257
224
225
233
171
232
224
139
197
212
272
248
231
158
171
221
252
181
164
223
210
219
194
178
193
180
184
235
161
173
170
190
184
182
243
142
181
180
170
204
178
173
184
183
157
242
214
262
248
129
243
214
220
227
146
207
179
216
203
194
178
168
243
188
197
140
208
210
181
196
200
208
245
214
199
218
171
150
208
217
198
187
166
172
191
208
267
234
189
247
227
207
192
155
203
137
194
200
223
220
218
178
210
224
188
204
161
165
201
118
233
171
219
169
168
243
231
168
201
222
199
236
212
170
195
161
227
197
229
239
178
230
198
257
190
187
257
191
152
231
224
197
255
231
206
163
199
187
244
230
216
169
197
162
216
196
214
180
207
167
240
188
147
178
192
244
159
248
191
228
221
192
149
212
225
207
210
180
207
177
219
225
184
216
184
184
272
221
213
134
167
192
179
191
223
226
192
165
175
214
180
212
253
215
228
212
204
194
258
193
213
132
153
166
215
233
213
233
207
197
236
183
143
225
160
228
168
175
243
261
251
243
242
200
249
257
212
182
184
179
196
216
198
183
161
203
255
190
226
185
179
169
191
189
124
191
214
195
201
205
189
163
247
171
205
189
211
159
246
222
192
218
214
178
125
156
179
206
155
144
248
209
151
247
189
218
234
216
178
246
134
183
174
217
310
162
139
150
270
182
229
288
201
198
197
204
221
183
201
160
205
170
225
178
177
192
181
233
173
230
187
208
176
212
226
261
197
157
171
221
188
248
178
174
192
236
191
247
196
236
197
203
182
161
270
195
205
203
210
222
215
225
225
240
163
161
188
164
164
238
194
186
191
226
230
119
142
190
159
198
202
150
138
166
273
152
229
174
218
247
168
240
187
197
216
178
197
215
212
142
126
138
269
183
218
179
140
188
249
238
198
174
189
198
227
214
210
206
211
165
160
233
163
231
209
193
182
131
235
175
156
176
199
179
176
201
127
231
195
267
215
148
193
225
245
176
200
141
148
153
286
206
198
268
165
185
208
271
196
220
164
199
243
169
232
230
190
202
193
190
251
168
161
188
253
160
189
201
225
228
152
147
173
230
183
108
224
162
211
248
207
203
137
217
136
163
233
224
192
191
197
238
219
241
203
188
201
198
286
191
177
173
222
132
170
195
163
225
165
218
201
226
181
201
224
233
176
264
207
258
168
200
212
258
292
200
217
177
191
166
214
161
214
214
212
221
168
207
200
154
182
195
140
220
213
254
196
239
177
192
257
174
232
177
234
195
237
179
191
179
208
226
226
269
187
235
195
212
192
174
227
235
215
250
228
277
226
225
286
162
132
150
215
174
146
208
249
254
153
221
199
218
168
216
149
233
166
196
206
183
161
279
222
222
152
201
218
230
222
190
154
187
221
151
204
208
235
175
211
209
221
209
173
214
214
181
213
171
222
241
121
208
124
209
172
205
150
230
169
182
233
166
187
236
210
224
255
211
206
149
231
114
186
188
195
190
170
204
219
201
198
256
227
193
169
235
196
176
227
161
181
190
181
141
137
197
177
146
181
258
183
295
188
203
148
182
169
205
139
175
207
194
163
206
210
202
193
191
156
239
215
172
222
234
248
261
188
220
264
203
210
174
191
192
232
196
256
181
214
177
160
121
176
134
241
186
232
202
226
254
206
178
224
142
118
163
240
141
164
206
241
129
210
244
220
148
202
151
190
230
243
190
212
168
168
103
152
183
235
199
228
205
236
198
198
188
235
233
206
229
159
197
217
185
217
170
148
187
167
166
196
200
196
212
180
196
159
217
149
227
203
194
143
222
199
208
237
272
220
236
203
198
224
181
195
221
228
180
247
201
199
224
221
207
218
173
259
191
229
192
181
201
176
201
209
160
252
203
133
229
200
212
159
169
222
217
141
216
246
184
171
193
169
155
178
191
205
192
254
171
223
268
217
211
172
238
145
224
192
215
191
179
216
197
197
230
235
213
203
168
199
218
235
237
172
234
240
171
182
182
256
212
231
189
176
192
203
152
265
252
197
210
153
230
207
280
197
180
166
213
192
307
167
243
170
225
251
231
230
175
204
158
172
190
160
201
199
222
167
178
205
244
218
212
209
270
122
206
190
177
188
129
151
224
249
141
187
190
220
198
196
203
284
270
206
208
150
215
207
215
214
204
166
222
216
230
243
211
205
181
223
219
154
235
235
205
230
138
162
196
134
182
196
158
246
203
222
216
166
122
192
147
206
167
115
198
168
212
229
191
195
118
146
217
221
196
228
186
164
195
211
242
147
167
278
159
206
194
179
186
221
185
245
203
197
233
262
206
158
186
164
155
155
231
165
182
172
197
219
202
232
225
167
219
161
238
225
226
206
224
197
184
237
246
213
197
186
200
176
149
195
213
132
188
229
229
170
220
129
154
236
175
194
211
228
161
192
244
194
188
202
219
226
224
221
147
195
242
200
137
179
187
207
268
249
230
224
208
197
221
246
230
145
219
171
157
254
215
226
225
238
197
165
170
215
199
201
220
189
207
221
160
267
256
195
254
227
251
226
203
241
209
213
216
198
210
227
183
142
226
134
188
253
236
189
116
218
162
239
136
221
173
183
171
231
162
217
244
196
215
259
252
150
197
298
199
185
207
227
172
206
211
219
148
151
223
133
244
186
212
197
216
188
150
169
207
218
208
175
211
235
225
154
237
166
170
247
194
203
170
204
263
252
183
191
198
186
225
275
195
161
195
168
214
178
177
209
176
151
213
224
177
213
216
250
242
204
222
227
238
271
163
293
229
207
278
185
152
250
189
259
181
151
222
204
260
244
200
119
197
239
193
207
203
168
169
190
199
166
165
205
241
191
223
211
185
226
128
197
140
172
223
196
220
190
187
175
135
246
148
110
202
278
222
156
173
241
189
168
152
195
222
202
232
204
233
185
170
160
200
175
199
207
202
218
199
167
173
224
183
195
156
194
231
158
215
268
254
228
211
177
173
183
142
197
247
191
222
231
193
239
184
255
225
207
170
242
227
158
253
186
145
203
214
174
237
243
203
174
143
240
160
237
241
169
149
211
197
176
220
232
172
293
161
157
184
163
283
205
226
140
212
182
228
206
213
147
181
178
236
200
195
181
175
236
222
232
178
200
142
222
198
185
204
223
211
206
183
222
208
215
271
187
211
172
217
186
179
221
209
224
159
218
225
205
201
230
199
168
196
171
195
135
156
221
225
212
202
157
135
208
209
212
192
216
222
165
223
186
200
123
202
218
146
220
142
199
148
187
222
198
225
203
177
237
250
151
195
182
174
214
158
231
212
247
237
180
237
228
167
153
199
248
176
183
211
186
222
232
217
231
266
206
214
183
156
128
174
204
234
168
230
154
240
135
230
238
197
229
268
178
181
206
283
201
217
194
200
209
118
202
203
205
148
223
182
162
200
261
255
213
210
147
248
166
222
224
168
204
211
269
221
216
207
242
191
196
200
210
217
198
173
200
192
237
133
209
204
238
215
80
175
231
158
207
195
174
162
247
163
200
142
231
195
258
197
220
211
146
181
155
168
218
233
268
194
145
236
216
166
161
208
233
238
177
189
176
223
245
236
247
241
206
182
216
197
236
184
246
237
204
216
156
181
224
161
187
190
147
197
244
238
202
170
184
223
158
93
257
205
148
182
155
147
203
159
233
234
214
157
211
165
179
184
247
208
227
196
148
184
185
160
164
154
173
238
204
240
230
238
222
216
161
232
158
254
218
199
199
226
217
216
224
231
150
193
260
247
183
145
169
237
191
174
184
207
191
221
185
186
213
245
242
244
203
201
240
252
220
191
205
155
190
171
116
183
233
259
226
202
142
271
175
176
189
180
187
170
235
214
197
154
174
144
258
208
227
281
199
238
166
171
211
216
195
191
246
210
159
213
214
180
175
171
146
208
201
163
225
245
182
158
202
197
122
149
227
163
191
190
170
182
208
194
203
236
197
160
226
178
245
204
234
114
186
224
161
208
236
226
265
201
192
226
190
189
206
208
173
188
180
209
190
229
160
204
274
219
212
158
191
219
197
181
148
210
200
160
248
232
169
154
152
215
178
225
244
171
180
204
195
192
195
151
166
233
182
186
194
196
177
212
208
248
216
221
227
222
215
185
199
169
219
165
170
211
201
259
176
205
171
203
169
156
208
184
220
206
185
199
129
190
191
192
251
182
217
198
238
226
176
223
220
161
245
195
197
192
224
201
189
224
225
229
185
220
179
216
201
205
208
221
196
267
243
185
178
161
193
213
206
196
160
185
194
195
187
161
166
213
243
170
262
186
248
153
163
251
223
145
223
230
198
189
184
179
240
226
195
239
232
270
235
219
115
188
181
235
209
222
230
202
184
217
204
182
191
234
155
241
168
159
208
191
262
241
178
200
157
186
213
225
143
195
181
184
251
127
266
228
182
219
175
235
212
183
242
162
196
179
210
192
196
187
198
229
192
212
196
213
215
166
191
250
214
174
209
207
227
270
224
149
206
233
147
258
152
240
210
189
200
261
201
201
188
156
288
238
247
202
195
158
142
225
170
167
220
157
201
227
218
177
155
213
228
261
184
217
218
201
181
238
260
111
227
231
202
217
191
162
265
199
231
210
151
194
202
208
236
191
185
257
202
195
223
155
196
190
151
251
206
146
180
225
192
214
178
210
147
216
204
236
228
159
166
240
188
248
158
224
226
171
202
236
171
187
225
229
124
159
214
196
172
135
191
214
240
138
180
203
204
252
245
170
201
169
221
201
182
230
154
222
194
219
189
221
266
172
226
233
211
214
235
203
176
175
214
217
228
269
149
241
212
183
232
224
215
249
164
230
207
233
154
221
240
244
167
122
266
187
237
196
213
206
223
213
246
228
127
211
177
184
192
223
236
182
189
159
147
192
186
255
166
167
149
196
212
213
189
218
265
217
198
167
187
197
189
137
237
192
209
267
255
203
209
200
220
213
274
119
178
252
160
173
147
113
209
204
219
228
164
204
211
233
204
233
226
252
206
200
178
224
210
195
169
206
217
203
168
163
259
181
175
253
212
154
116
139
236
152
100
220
132
129
189
155
219
182
206
169
251
183
197
172
244
202
249
219
240
201
187
196
205
166
219
207
166
171
223
201
217
174
237
230
192
260
207
180
238
187
203
171
174
131
221
244
170
158
213
259
220
206
206
183
268
244
228
212
211
246
213
205
190
176
229
232
208
245
184
264
212
144
192
200
185
189
213
194
190
177
206
223
204
228
169
202
158
228
169
207
208
225
154
202
209
212
215
194
191
237
159
176
196
180
182
162
173
237
209
220
170
211
202
189
171
128
131
189
204
193
163
217
216
216
224
213
195
169
204
234
210
157
262
185
128
167
191
211
226
197
247
213
168
225
227
207
211
188
225
147
185
160
167
207
126
199
176
199
228
167
253
180
226
221
222
180
142
197
176
228
147
210
284
267
253
232
257
166
150
196
151
178
200
226
188
220
219
181
105
239
126
241
229
222
208
166
211
185
190
168
127
162
184
213
190
187
214
214
194
170
210
210
228
159
244
239
140
223
180
211
174
160
215
200
188
171
249
217
197
178
217
195
249
197
232
202
243
219
168
124
282
185
166
218
249
208
205
207
261
208
184
215
178
190
154
240
164
238
219
196
236
211
194
178
156
194
177
239
245
194
182
223
233
120
106
129
157
181
251
214
194
172
180
199
224
235
215
256
235
251
184
241
218
177
209
176
200
232
247
158
200
220
179
237
235
237
203
231
156
193
242
200
228
213
199
190
166
177
222
264
232
227
121
145
190
218
165
171
207
125
178
230
193
227
236
217
235
213
154
241
234
189
239
106
246
213
187
119
196
274
232
242
170
211
186
237
201
197
118
186
204
154
239
232
177
214
271
268
179
175
160
240
228
169
181
224
193
165
167
246
213
219
250
197
196
213
194
150
202
209
199
175
223
181
213
237
184
252
232
180
227
143
177
127
223
213
256
216
202
263
260
197
215
154
230
201
204
173
199
236
183
189
193
215
263
222
196
168
185
195
173
206
242
218
142
133
176
162
149
218
178
161
190
201
178
205
206
190
204
144
154
249
227
179
222
213
205
214
230
193
137
148
232
127
160
202
250
190
182
263
237
186
227
238
219
197
232
234
213
242
209
200
210
202
200
213
244
183
210
231
186
188
246
231
214
216
210
138
192
204
187
245
146
237
93
186
123
244
188
153
233
175
222
176
220
219
206
199
252
136
196
229
257
193
208
253
241
221
196
196
222
167
209
188
207
214
235
237
232
193
152
220
208
149
203
225
180
198
209
176
210
217
186
200
203
210
209
186
281
159
206
212
209
169
187
290
147
162
200
239
229
205
242
246
160
217
187
205
285
206
184
186
218
233
243
109
154
229
172
199
157
190
189
151
216
234
225
245
215
178
223
236
172
186
239
255
177
178
197
210
261
161
167
233
230
211
179
222
190
203
190
195
264
167
182
153
186
131
193
222
241
203
193
204
239
141
203
165
238
244
235
242
232
209
163
190
189
219
247
122
220
183
224
189
216
207
208
193
170
182
165
208
198
180
156
242
166
162
171
213
244
220
183
170
190
194
222
229
230
195
251
145
172
179
223
165
207
203
205
211
273
215
212
205
176
237
163
209
238
126
240
222
217
145
141
197
167
213
211
234
209
135
205
241
147
139
228
114
172
172
178
136
142
195
188
207
153
199
189
238
212
216
235
184
224
228
196
195
142
267
209
181
194
113
219
184
207
225
221
194
218
179
199
176
177
83
191
227
161
176
217
194
223
149
244
222
202
208
206
173
165
165
187
175
160
223
195
243
236
192
216
262
207
172
228
215
144
221
192
227
171
237
159
116
255
193
180
189
131
213
208
167
254
152
147
226
174
205
233
197
130
174
199
192
213
144
161
235
210
195
209
173
181
195
225
222
177
186
177
271
152
175
183
173
159
216
182
219
205
201
214
217
223
219
195
218
292
251
220
175
218
193
261
144
155
272
190
187
218
166
135
181
159
163
239
210
204
157
191
155
238
206
176
141
243
195
183
199
187
224
208
150
180
210
205
181
238
192
155
191
214
186
189
186
225
103
215
134
190
170
234
163
201
221
241
248
231
175
151
206
144
189
189
174
229
255
230
104
196
232
232
219
212
137
183
153
210
146
230
204
206
125
234
227
152
137
219
171
201
234
224
166
240
257
195
190
209
216
228
245
185
224
223
235
122
133
206
249
163
209
192
185
227
210
176
211
168
217
178
207
204
232
181
229
169
202
202
287
233
216
187
223
193
216
151
186
214
229
220
153
185
208
195
249
148
218
191
166
164
230
170
184
183
239
262
210
229
179
126
186
213
184
162
157
202
210
186
176
259
191
222
186
173
208
187
154
234
230
187
198
194
166
220
197
213
155
168
217
151
179
227
204
199
193
186
252
214
273
183
219
175
171
158
197
235
198
210
188
242
188
173
175
157
187
178
238
184
161
201
199
234
242
193
187
234
250
212
168
135
203
180
174
197
219
230
253
225
210
186
125
189
259
187
203
135
231
204
224
187
198
177
217
205
192
170
226
223
161
175
195
153
200
195
209
179
207
238
172
162
202
134
222
189
165
223
91
191
230
217
215
219
171
214
198
228
171
218
206
185
279
208
166
174
164
241
147
178
133
248
164
267
137
223
232
196
222
197
189
176
185
173
157
177
215
206
284
178
169
216
173
243
258
224
232
210
178
119
197
212
179
203
193
197
281
186
212
215
140
222
226
137
250
244
178
140
236
110
191
98
160
176
201
221
183
193
170
196
152
176
176
224
209
207
199
151
186
189
153
157
248
249
199
195
241
183
167
178
232
225
239
221
229
155
148
218
201
182
146
162
153
263
239
196
188
199
184
235
152
201
211
221
208
207
192
231
194
227
204
209
163
184
199
133
177
159
236
209
235
213
181
251
188
209
240
224
184
200
230
266
163
227
215
195
218
225
195
176
265
201
189
166
221
252
112
226
204
188
214
177
214
156
203
235
249
199
154
170
226
232
176
184
174
212
147
234
208
201
186
201
207
249
199
214
218
138
162
220
154
198
226
170
201
172
201
220
162
166
237
248
179
192
191
196
231
203
166
204
222
186
217
182
218
235
188
182
227
154
194
235
209
173
206
120
130
177
214
220
225
176
185
212
115
204
202
223
193
186
274
188
160
222
177
226
180
231
225
195
221
213
238
221
189
276
250
180
215
231
187
156
173
223
230
197
198
156
179
193
184
168
188
278
189
236
245
155
225
151
190
232
183
201
229
238
180
196
275
179
217
213
212
192
161
274
166
238
194
224
175
218
206
147
194
179
199
182
188
208
243
240
193
196
202
215
236
183
228
168
200
214
202
218
186
151
205
185
199
217
166
191
168
217
229
214
205
125
228
167
191
204
223
199
212
207
167
208
222
237
298
203
190
254
204
187
254
202
189
208
256
190
133
221
186
188
186
204
159
194
204
159
267
157
152
214
205
226
248
184
218
152
92
246
235
212
180
256
167
234
168
153
161
205
233
192
248
177
257
214
227
200
153
157
209
238
217
190
252
190
199
195
200
184
187
267
212
140
194
149
253
195
175
218
214
165
227
281
171
182
195
147
186
126
162
200
238
208
203
266
220
284
186
236
123
201
245
208
223
194
183
189
192
197
181
225
210
207
210
145
171
233
208
218
209
182
151
221
133
256
211
246
144
192
190
213
141
199
163
144
195
158
193
221
176
140
153
139
241
201
247
161
261
210
187
203
206
241
212
191
152
214
226
187
177
181
225
223
270
188
220
242
180
192
201
162
253
204
173
192
188
236
192
187
181
249
201
178
189
260
193
200
184
238
241
220
197
189
198
191
226
157
225
227
258
184
226
220
206
180
242
159
162
126
167
162
182
221
178
169
217
197
180
255
239
254
149
161
181
211
198
169
226
190
187
186
197
229
177
185
192
269
102
254
198
236
214
198
199
174
261
165
191
142
151
213
197
232
276
224
133
173
233
190
205
211
212
242
198
238
206
173
234
179
226
187
259
207
220
144
175
201
143
192
215
209
279
192
108
157
235
203
173
192
218
171
135
244
211
195
108
200
200
232
204
151
220
186
172
213
159
186
162
217
271
210
251
177
212
139
160
202
203
220
235
161
224
209
195
236
231
229
190
199
165
191
197
167
182
176
165
238
115
132
203
183
208
183
163
249
130
197
212
150
249
244
221
223
239
187
186
153
139
222
195
166
264
194
225
167
169
193
219
162
185
270
124
199
195
164
169
198
146
135
190
201
225
148
156
235
153
244
222
212
281
201
190
240
185
193
242
258
218
225
213
247
228
168
222
211
195
154
208
154
158
207
191
179
202
255
184
237
211
223
225
219
144
173
224
230
182
193
196
211
230
170
241
188
185
163
159
178
183
216
211
236
199
151
115
173
194
159
157
266
245
166
138
221
223
161
197
102
207
206
202
247
251
243
240
186
196
203
172
240
198
187
218
207
202
181
207
152
240
200
261
227
202
221
237
210
180
194
238
221
209
209
214
187
192
191
190
237
224
222
230
189
166
246
168
144
193
220
246
166
200
148
173
177
170
251
157
205
206
208
151
212
261
189
206
242
209
159
228
248
246
205
192
197
217
212
222
166
238
221
208
173
225
190
193
117
158
161
190
227
209
234
194
199
129
146
248
264
228
189
185
197
162
178
169
208
151
185
231
235
178
160
195
224
207
209
209
209
209
210
160
160
191
225
227
187
156
185
199
154
222
251
236
204
235
224
270
172
169
218
181
230
234
189
139
229
182
236
126
213
205
187
250
161
231
198
223
174
189
183
241
182
181
193
194
191
220
216
188
231
157
259
196
230
230
165
228
196
204
156
148
221
220
207
222
209
206
256
223
185
218
222
222
222
211
189
181
227
188
198
181
213
131
252
245
163
180
226
161
163
178
190
213
183
213
234
194
254
234
185
242
243
197
187
230
246
210
204
174
188
217
215
182
125
162
190
227
210
197
212
158
210
124
183
251
181
221
212
245
235
144
227
210
197
236
153
198
195
247
198
223
202
213
222
236
198
156
258
175
187
217
255
207
217
189
202
165
165
215
190
234
172
251
176
136
152
200
197
140
211
182
180
207
150
218
254
214
194
189
225
208
207
265
255
226
262
167
221
200
202
231
242
239
212
260
96
165
285
182
263
229
222
181
246
229
225
196
248
198
261
161
133
260
207
186
185
183
187
231
196
216
282
180
194
191
258
194
227
169
219
172
207
223
202
202
133
203
245
237
213
177
182
193
195
187
199
170
199
189
177
199
232
212
175
239
216
243
175
269
206
215
161
204
166
93
192
166
194
155
222
140
207
248
232
182
226
171
164
177
196
224
237
240
222
147
209
206
208
176
203
182
185
139
211
246
213
160
211
153
220
207
237
164
224
177
236
189
233
156
151
149
211
233
170
238
222
190
173
221
250
221
155
172
203
158
233
256
220
224
176
135
139
261
192
232
221
181
185
228
180
157
246
180
193
122
191
143
185
104
218
198
184
220
184
229
188
216
202
187
227
212
220
232
206
121
213
136
149
237
208
188
180
190
208
212
246
227
199
198
153
232
262
199
143
174
168
257
185
231
160
212
250
173
250
144
163
186
189
220
234
217
165
196
157
182
166
230
210
185
201
215
184
191
213
253
228
197
140
202
175
204
255
191
224
216
154
182
185
176
161
132
196
279
182
191
257
215
224
222
176
219
199
233
213
150
244
177
250
149
183
128
183
172
229
173
115
221
178
158
209
186
193
253
199
167
242
208
223
177
223
241
273
205
183
181
139
247
206
230
220
200
204
186
284
254
213
181
204
176
196
140
202
210
236
225
203
210
155
207
230
234
214
197
238
251
167
225
214
195
115
160
200
192
214
193
231
197
181
178
252
100
246
197
184
214
244
235
224
179
171
221
218
140
204
163
245
209
205
233
188
232
233
205
191
278
134
244
159
128
160
209
233
199
220
147
208
189
202
160
192
200
210
172
213
153
224
169
205
235
175
202
241
234
234
230
185
183
201
194
155
211
178
220
213
226
238
193
204
213
220
239
257
234
102
216
217
219
197
252
205
260
233
235
220
228
201
212
105
188
162
214
206
249
212
153
217
177
179
171
148
163
212
209
198
227
228
156
161
149
165
164
199
217
245
159
245
122
168
229
201
222
156
176
184
188
278
222
200
187
182
197
140
197
258
213
160
140
207
242
129
156
185
195
262
230
156
237
212
144
223
190
209
150
241
163
243
194
197
178
236
251
219
253
136
195
303
262
216
219
131
210
230
199
180
207
236
164
205
184
138
175
259
174
226
226
143
227
231
149
138
183
219
158
237
194
244
219
243
257
238
166
192
198
226
265
178
231
193
229
182
176
195
202
173
187
183
229
141
168
149
212
196
246
208
202
195
145
203
163
211
214
219
169
185
196
147
195
237
148
261
174
195
165
222
153
188
258
177
181
221
208
143
198
191
252
223
223
196
135
172
181
207
236
166
174
181
224
228
148
174
230
258
215
189
140
187
161
147
203
236
246
159
196
241
164
140
207
186
188
231
190
200
238
224
269
196
185
252
193
191
147
235
254
144
185
173
266
216
185
203
182
173
172
202
183
180
184
213
148
93
242
220
165
222
199
248
194
220
150
204
228
186
226
213
131
232
306
210
232
167
238
179
183
240
201
243
259
202
223
281
163
237
199
198
153
182
145
176
200
181
265
118
142
219
204
255
233
196
278
215
203
184
142
235
207
110
198
224
122
137
139
181
243
194
161
215
160
237
275
180
209
207
161
216
203
227
252
154
241
201
189
218
156
196
191
213
175
240
226
143
184
213
229
205
196
187
145
148
224
218
146
133
234
97
176
188
220
206
215
168
174
242
167
132
176
231
205
185
252
196
171
224
209
186
235
209
234
155
131
245
139
195
205
218
192
191
133
204
170
130
235
225
122
160
272
217
161
208
206
207
229
263
248
201
180
231
182
258
174
284
208
222
212
201
231
194
230
152
195
242
217
238
165
230
166
272
217
234
196
212
205
203
282
164
171
229
216
257
198
191
162
246
172
205
185
232
169
130
175
223
189
163
165
256
157
195
149
229
103
189
226
174
190
107
184
218
221
221
210
185
196
194
200
262
184
213
160
118
238
246
213
229
221
203
192
175
233
209
205
201
229
170
201
153
253
230
154
180
317
244
202
178
185
162
267
187
212
105
238
157
156
159
208
197
234
272
124
218
209
198
204
177
154
160
193
187
178
191
226
182
196
179
181
186
226
144
203
216
227
208
189
181
196
148
221
233
200
163
151
185
146
195
238
186
168
178
254
219
215
193
201
169
226
164
208
198
275
208
224
180
238
212
221
216
206
191
236
204
183
229
211
240
199
150
204
218
145
244
204
210
204
211
130
186
234
192
199
182
186
189
165
209
113
111
170
155
221
137
253
201
232
206
218
167
250
180
129
139
233
187
184
270
170
248
162
175
229
153
168
205
173
227
253
146
262
214
188
206
232
258
170
201
144
185
219
198
218
163
224
199
253
228
124
219
203
176
170
231
166
196
192
182
198
210
193
218
202
168
189
255
198
190
239
276
145
130
179
166
222
161
224
228
211
218
179
282
202
230
157
221
239
221
229
195
203
172
136
190
207
195
224
203
204
239
235
204
158
206
170
249
235
191
209
135
133
192
203
222
208
168
233
240
156
139
173
217
171
211
157
228
201
172
212
217
197
147
196
230
212
218
157
173
259
180
218
170
168
197
176
206
167
204
215
223
210
137
251
201
245
193
216
245
220
197
236
202
213
181
254
160
227
245
186
183
242
216
214
216
166
200
296
196
169
179
175
176
204
171
201
180
238
242
186
178
236
200
238
171
224
224
189
194
150
205
224
187
167
111
186
154
155
181
206
231
212
174
224
156
161
154
181
250
150
246
237
174
265
169
217
188
179
164
233
251
223
206
218
184
182
218
170
219
267
203
203
253
121
196
252
189
190
200
221
237
231
217
180
201
201
178
211
205
124
204
205
224
225
128
250
210
251
149
233
207
208
146
164
217
200
212
260
149
235
217
151
183
190
219
271
174
225
213
181
240
195
176
189
232
254
206
164
220
159
206
228
190
199
174
222
208
161
189
218
183
171
274
168
245
211
207
181
188
225
175
181
236
216
231
210
237
198
181
199
220
252
242
205
209
221
205
165
166
227
214
228
162
210
191
201
192
204
231
214
196
182
179
115
226
198
127
222
250
228
187
223
221
150
191
203
226
153
184
256
250
176
167
195
237
227
220
223
250
174
180
164
145
237
237
193
247
238
226
210
127
230
167
201
216
236
198
188
165
171
132
230
209
203
226
151
281
194
226
153
186
190
222
251
176
180
162
230
235
187
188
118
197
223
188
157
159
193
215
205
290
169
196
129
176
229
245
247
160
230
204
144
236
247
216
198
221
203
132
184
205
244
267
172
154
246
196
202
188
202
196
210
202
193
116
179
224
233
204
165
233
198
189
236
240
210
192
162
155
177
254
179
183
270
215
162
275
182
183
145
187
196
202
169
227
229
240
236
187
190
228
189
209
166
204
168
209
174
176
212
208
180
218
239
215
215
209
200
224
121
108
191
179
244
156
143
138
212
204
217
128
190
182
200
178
238
136
193
186
231
208
194
176
182
246
204
230
175
243
178
183
187
158
214
158
226
219
149
178
255
206
169
137
219
199
247
173
194
181
238
161
213
176
231
206
239
185
199
169
199
122
214
236
170
107
165
221
199
190
200
213
182
186
189
201
237
191
171
218
211
182
156
175
162
186
215
237
271
202
221
188
279
203
201
237
232
220
269
150
229
224
227
157
234
195
213
186
216
219
239
229
226
172
230
190
219
245
223
231
167
138
197
184
221
191
196
254
202
190
193
188
214
209
241
220
180
165
197
197
185
218
166
226
230
222
236
209
130
168
248
192
213
176
230
257
269
166
221
183
165
203
216
247
195
197
195
142
243
253
248
200
245
149
234
173
181
204
215
183
201
191
163
225
209
215
149
184
230
180
265
235
176
193
184
203
206
233
212
197
206
250
207
209
245
166
215
231
213
206
163
226
168
193
241
241
251
161
186
187
196
154
140
150
248
111
205
164
193
176
237
255
249
154
194
277
212
189
194
190
265
224
229
153
216
243
219
257
159
199
187
264
164
189
225
247
184
157
157
232
204
195
255
197
139
156
181
216
194
237
208
168
208
198
135
244
186
228
250
167
223
125
227
154
223
257
234
188
150
189
213
170
244
213
166
164
232
201
172
206
178
208
201
245
188
220
262
177
177
209
179
196
190
206
153
227
170
273
143
154
223
237
193
213
274
247
206
199
227
199
152
223
165
172
117
206
159
211
182
88
242
235
148
208
196
169
160
189
239
195
206
207
225
227
220
247
227
194
212
242
139
226
182
235
186
248
235
211
236
208
253
220
256
221
228
237
281
190
187
218
182
224
239
175
150
220
219
204
239
203
233
245
189
196
214
202
202
227
268
225
261
171
104
192
173
205
227
215
208
193
225
181
177
218
172
142
208
216
149
286
218
170
208
237
191
223
225
191
270
204
181
150
158
176
175
223
231
174
191
215
141
149
201
135
168
188
211
244
227
248
159
176
199
137
252
194
216
185
213
209
225
233
143
156
217
218
213
198
205
224
255
156
274
173
240
220
237
239
231
199
169
150
161
136
227
156
282
235
209
119
199
255
242
242
164
141
197
168
243
246
178
189
167
225
225
202
154
190
239
173
217
224
169
243
180
216
262
256
199
254
166
183
267
214
203
223
208
196
177
173
124
155
198
173
180
217
259
175
189
225
146
227
264
206
256
214
191
176
187
184
239
190
188
246
191
206
209
187
219
218
200
201
251
229
169
219
240
187
179
242
205
182
158
157
221
156
195
146
197
192
164
147
209
180
142
231
107
264
220
185
228
169
224
174
189
121
201
230
179
251
164
222
183
158
213
155
167
209
229
185
247
239
174
153
215
163
177
224
186
213
109
141
200
161
208
185
194
146
185
187
202
226
199
199
250
172
186
231
190
197
216
199
241
237
205
196
204
135
207
183
160
276
139
230
199
232
148
221
224
297
229
214
221
187
224
167
293
148
176
174
160
223
212
240
192
144
170
188
193
199
171
244
180
229
210
169
196
238
225
238
177
204
223
255
224
140
215
204
229
182
192
194
183
198
224
167
190
244
219
136
205
234
205
215
128
234
143
199
208
144
184
184
241
173
155
192
261
196
174
230
203
258
202
217
227
191
207
239
164
221
189
223
184
135
154
202
163
195
187
228
247
203
256
142
220
242
139
203
207
192
150
171
243
213
235
183
240
85
252
161
240
175
188
215
238
230
250
220
269
240
230
212
250
242
206
195
120
205
213
188
203
238
153
195
194
199
210
237
240
192
217
213
148
127
226
146
196
286
186
195
166
234
225
176
206
207
180
146
238
229
219
138
163
184
241
202
242
179
222
218
207
190
165
219
141
159
195
220
187
206
252
264
204
233
166
162
219
176
179
190
244
172
141
237
231
203
189
210
180
223
254
185
237
161
181
188
186
194
252
164
242
241
226
229
185
239
240
181
224
173
199
158
101
209
225
194
189
228
240
226
108
267
230
202
169
180
172
186
183
242
170
209
190
237
185
217
181
226
186
147
164
179
154
195
236
230
245
222
179
182
180
249
210
181
183
175
207
154
224
179
190
207
196
186
218
199
163
253
219
245
261
208
139
227
261
223
201
215
220
188
182
236
224
129
134
247
165
305
192
226
239
249
156
165
165
232
151
181
179
240
157
237
126
269
109
110
161
242
166
186
191
232
206
133
264
152
228
213
219
174
207
154
234
186
217
151
172
155
188
226
187
170
248
199
157
176
213
229
247
156
163
179
144
177
205
195
212
200
206
221
214
194
211
223
188
202
126
214
173
223
165
223
189
197
201
205
216
212
201
181
234
241
243
161
189
195
191
191
207
186
183
210
181
151
218
151
211
142
156
195
187
181
179
217
191
152
174
230
241
188
217
243
158
222
209
216
230
176
219
216
189
172
200
233
195
198
158
236
221
247
236
253
243
190
206
184
201
183
232
196
210
186
260
211
203
237
157
147
216
135
181
172
216
187
188
229
239
170
236
162
185
258
228
202
130
166
238
247
216
164
202
219
204
212
218
166
217
172
122
233
232
228
160
246
210
188
236
190
183
167
187
199
243
211
121
253
213
187
208
213
169
214
156
201
258
200
136
204
239
181
193
219
216
228
233
209
176
221
237
225
229
221
211
178
212
198
150
170
181
165
215
175
195
186
239
221
186
165
207
165
203
233
193
173
164
171
196
207
152
238
210
238
211
166
196
171
207
200
189
174
195
160
241
221
179
157
228
192
157
232
201
195
210
231
165
219
214
178
161
245
159
225
173
195
215
237
227
165
264
148
185
216
222
266
213
226
200
216
163
214
198
268
204
209
218
208
207
132
188
229
216
191
183
205
202
199
233
178
232
202
176
226
253
190
211
145
214
118
137
201
208
192
233
201
130
144
177
163
256
193
170
266
220
162
233
134
152
197
147
202
218
209
232
126
162
227
231
251
168
192
225
204
221
211
171
242
120
177
200
242
146
186
195
189
241
167
283
260
231
248
202
184
161
151
219
240
186
244
213
196
193
200
166
167
245
195
173
219
215
200
187
212
210
228
182
188
212
183
197
186
232
269
219
154
170
162
208
212
214
130
219
209
162
143
173
186
242
230
201
111
203
173
187
155
212
219
236
191
237
221
182
216
195
196
245
236
212
232
219
202
144
214
162
178
215
198
224
214
219
210
209
177
198
220
204
203
215
159
224
236
209
209
241
224
239
132
195
248
208
189
178
157
157
175
240
246
189
268
203
122
175
229
239
185
176
227
156
197
240
156
248
203
203
177
229
220
258
245
188
180
235
208
233
202
196
212
216
205
208
159
205
186
196
183
189
181
187
175
212
190
244
209
237
197
223
205
153
173
127
200
225
183
168
193
171
184
292
197
186
203
170
205
203
169
253
208
238
199
208
166
192
211
256
116
153
147
211
177
169
141
224
231
231
236
245
202
229
163
214
233
234
199
219
186
251
157
172
232
271
201
121
225
219
216
201
224
228
197
135
194
222
154
188
207
159
178
238
235
232
222
142
208
175
210
205
228
116
113
165
139
154
153
188
245
211
218
206
169
205
201
175
206
227
204
134
170
167
229
154
213
245
195
202
261
214
191
186
192
241
214
185
213
229
204
217
183
207
268
190
189
241
194
159
243
233
174
186
174
196
144
220
205
228
150
131
212
185
150
201
188
216
157
148
180
199
218
173
204
197
275
210
234
195
200
223
265
205
263
258
225
189
178
148
198
183
216
199
148
148
193
187
216
175
162
217
226
253
170
184
166
220
229
161
213
154
191
203
236
184
185
205
158
223
179
126
254
178
202
246
187
192
186
200
168
167
233
270
232
207
144
187
248
191
120
218
173
207
219
241
189
228
248
184
210
179
217
238
194
204
206
230
192
200
219
222
212
194
157
250
215
142
261
244
193
196
195
228
263
200
230
132
258
194
225
154
188
215
186
193
206
178
236
186
180
205
210
210
191
213
202
208
185
210
241
205
202
183
243
236
160
139
207
238
194
168
192
197
217
175
235
164
215
222
230
206
218
161
201
178
218
145
164
189
211
165
219
197
240
222
202
221
200
237
174
182
188
169
159
215
132
265
222
141
210
157
188
260
219
170
208
168
144
201
188
222
272
230
205
248
176
248
191
224
196
253
166
207
185
223
199
233
184
204
187
216
215
177
196
208
226
219
206
143
239
208
157
184
159
196
247
217
257
223
178
203
173
170
228
167
280
131
210
214
181
198
217
193
229
178
211
179
149
209
163
191
195
171
242
235
182
138
194
241
228
181
198
129
177
183
202
234
253
142
205
245
197
193
202
260
234
218
145
181
198
209
233
229
215
140
184
194
133
138
240
180
203
182
212
201
218
168
238
180
236
225
180
183
211
193
223
229
153
200
186
188
195
202
237
204
227
214
182
211
182
152
192
164
164
204
146
201
158
192
205
260
120
222
198
190
213
201
223
205
204
227
229
205
191
151
228
164
228
173
195
177
192
148
170
191
210
195
217
198
233
169
161
188
233
198
228
148
212
223
155
264
184
212
199
184
169
156
182
252
180
198
209
191
186
216
173
196
177
198
204
231
223
148
206
184
127
135
172
183
181
167
231
226
244
162
255
145
206
225
197
201
209
234
221
212
230
197
194
193
182
224
198
195
174
258
193
234
211
181
225
259
186
243
232
232
253
188
182
184
202
210
275
249
246
190
221
193
165
140
154
206
240
217
133
157
236
169
169
202
194
147
150
229
213
257
200
159
242
192
168
140
176
188
220
203
186
211
200
238
115
210
228
166
91
166
187
100
182
198
169
201
170
204
268
162
209
225
190
191
187
213
203
217
206
154
154
182
216
219
240
165
232
169
203
187
172
214
202
213
176
204
196
155
186
215
155
174
184
162
260
199
195
211
208
202
201
251
182
239
137
178
176
206
205
197
236
148
198
214
204
165
210
232
197
237
212
173
219
233
243
200
195
187
210
170
284
184
215
232
184
182
179
210
194
242
211
206
228
176
190
262
135
234
192
178
188
162
233
182
160
217
185
134
251
172
175
170
188
193
182
192
160
198
184
198
162
131
229
238
219
218
184
142
174
208
188
143
262
225
217
196
221
206
222
231
200
197
220
180
176
180
173
176
214
239
173
233
214
193
158
225
214
152
191
170
227
162
244
234
209
148
235
191
200
209
264
223
154
165
195
187
238
199
235
258
231
178
248
157
224
147
275
185
257
264
171
167
229
220
141
227
222
256
169
216
211
259
102
145
199
267
222
235
224
188
199
237
173
155
192
184
228
275
237
187
227
193
213
207
261
221
101
203
194
257
173
205
227
147
221
214
189
242
233
205
256
171
186
176
175
235
189
224
207
203
217
200
198
253
226
185
226
186
215
256
198
238
201
204
193
192
204
200
226
201
201
202
211
166
183
266
250
246
229
203
233
221
223
145
239
230
263
162
211
235
191
224
194
148
189
267
217
244
212
197
161
171
179
222
201
263
236
118
186
195
205
161
175
192
231
222
201
213
182
96
182
211
176
210
202
215
167
217
216
175
209
206
202
174
215
186
132
219
181
158
179
198
166
173
203
261
232
190
238
183
144
169
130
216
243
231
186
234
152
153
246
181
231
258
209
222
183
166
230
184
231
176
214
173
235
168
216
142
190
240
200
190
209
146
211
202
204
177
201
251
143
196
149
172
143
207
239
218
164
189
219
160
211
230
205
269
240
263
221
209
161
152
202
216
204
234
207
167
218
200
226
162
198
217
248
176
264
142
178
206
134
237
220
223
195
235
213
188
216
206
210
200
192
252
195
191
159
150
207
234
183
216
186
181
215
261
208
166
206
165
260
218
134
270
143
224
217
126
170
214
197
164
227
188
157
218
228
201
214
227
224
239
226
178
244
215
266
216
212
179
177
199
190
250
220
156
258
212
193
206
228
181
147
219
142
266
154
198
242
230
171
213
238
237
256
240
262
223
172
159
219
234
124
120
193
250
259
249
175
227
229
264
228
205
201
182
186
213
233
237
202
235
216
235
213
174
205
171
181
196
198
198
177
254
193
198
228
213
245
213
183
154
193
191
197
283
160
238
186
225
145
236
214
201
186
217
159
213
245
138
211
189
157
174
123
191
148
232
225
148
229
250
211
208
176
148
218
208
213
218
181
210
203
240
188
223
269
169
216
245
153
260
212
160
181
183
204
210
222
217
214
174
161
194
225
220
230
268
170
229
100
192
216
107
146
222
189
290
161
215
180
194
172
226
124
197
169
207
274
174
221
203
167
226
201
144
164
208
189
176
203
192
240
267
160
225
150
179
202
161
234
171
206
197
199
279
217
180
182
171
168
191
160
102
241
211
269
223
242
246
158
192
159
213
208
202
160
234
151
178
241
208
261
170
213
171
198
233
239
217
164
228
225
246
203
268
117
216
202
205
238
213
178
240
147
214
219
204
189
195
221
110
175
192
208
159
206
201
126
167
173
219
275
284
142
209
209
190
138
244
158
128
123
197
236
187
230
230
147
198
185
256
147
254
205
196
148
182
237
213
217
148
234
206
260
196
117
199
218
187
151
191
174
225
212
234
225
192
221
182
178
210
216
200
198
211
208
257
182
154
200
217
201
167
197
165
213
239
138
134
192
214
246
205
158
168
198
137
227
244
79
221
177
192
192
177
141
186
188
224
147
220
229
148
219
211
143
241
153
198
204
164
211
238
221
219
264
166
216
278
185
241
241
225
210
222
134
163
197
194
193
224
175
214
199
199
228
176
267
80
220
181
209
237
204
212
137
169
183
156
155
143
234
236
146
230
184
173
208
212
255
153
194
190
144
187
230
194
205
220
187
181
163
163
188
181
150
156
239
215
195
192
186
148
170
274
217
148
179
209
159
249
171
206
228
217
221
187
235
223
204
158
195
266
140
250
217
208
209
174
217
272
137
227
184
215
179
207
228
207
192
135
204
199
168
181
202
187
170
212
172
239
194
155
215
173
144
212
177
202
215
215
202
194
234
215
180
193
209
154
209
207
215
195
240
222
92
205
185
182
225
224
183
244
158
208
188
203
188
186
167
203
211
201
133
131
186
232
211
144
131
152
194
125
207
247
198
220
241
234
214
161
143
215
172
217
130
191
182
253
238
188
196
180
215
234
173
269
220
162
226
275
178
218
257
161
178
197
233
193
178
259
220
218
191
232
154
149
198
232
206
240
190
174
216
259
235
251
208
219
236
218
219
183
146
188
189
188
228
236
220
143
235
208
213
182
192
223
191
187
171
254
238
181
206
241
214
152
164
140
222
244
206
156
197
172
166
187
253
99
134
152
229
155
212
242
213
239
268
210
192
177
163
201
213
173
126
227
184
184
171
193
212
246
188
231
219
168
197
258
197
245
261
181
171
238
215
219
226
215
237
240
195
227
206
221
229
215
229
191
231
117
202
241
204
238
193
194
287
165
163
134
190
179
156
152
171
193
208
161
110
189
170
170
182
226
197
219
210
203
185
237
243
208
212
200
117
228
145
187
184
142
232
175
214
194
224
232
117
156
295
187
232
220
171
211
167
179
232
208
124
180
250
182
176
229
178
197
220
204
169
185
194
204
223
214
202
189
208
220
171
219
192
166
230
226
246
204
241
222
236
199
181
250
190
229
138
196
164
204
154
263
227
215
153
210
224
204
269
277
237
221
229
186
230
189
165
190
153
192
212
180
215
212
262
244
178
254
226
157
186
178
248
207
242
201
272
194
252
173
138
154
213
181
233
200
220
248
172
184
226
149
242
167
221
199
175
193
211
200
202
251
205
240
214
243
200
179
175
168
190
175
139
192
173
155
253
243
232
186
173
198
227
168
189
132
193
250
234
169
195
247
169
229
188
219
220
224
209
170
184
236
200
218
209
223
177
180
141
229
167
245
236
188
200
215
212
203
214
120
201
213
177
142
245
270
169
187
193
240
208
212
172
184
205
159
251
205
245
241
182
222
184
128
169
249
142
144
187
178
229
217
247
206
170
248
225
192
197
224
136
204
244
195
192
217
206
204
237
198
204
157
166
94
208
217
227
190
267
225
210
212
174
181
248
219
179
160
148
141
234
230
184
167
188
246
217
216
194
193
182
169
154
163
238
231
150
201
236
150
152
225
174
254
236
168
193
237
122
199
167
252
155
222
242
231
266
240
220
213
195
220
176
151
235
178
144
180
209
269
215
216
225
233
190
235
212
217
176
264
182
203
201
206
235
246
190
216
239
176
150
229
239
161
263
220
232
182
192
190
225
235
191
186
193
250
167
189
205
174
191
211
176
162
231
226
205
173
190
185
229
217
189
225
197
120
178
149
198
184
252
224
156
236
195
149
210
225
246
214
223
220
145
180
197
201
233
211
128
188
168
184
190
236
134
188
217
218
203
182
220
192
191
231
187
179
184
224
216
120
167
146
225
160
201
188
203
217
212
267
219
231
205
242
170
241
196
171
214
155
202
107
267
240
147
185
197
180
239
168
188
204
230
194
266
250
220
200
240
205
221
234
215
200
158
238
197
211
222
223
239
204
194
202
175
259
179
149
230
248
212
197
165
185
236
222
263
225
196
143
188
204
217
161
279
188
253
211
240
219
202
223
214
157
253
163
169
277
193
179
241
183
230
154
208
181
185
194
177
139
192
163
110
186
170
219
242
196
227
213
248
187
152
201
245
180
203
221
163
178
207
190
236
165
217
202
193
188
142
230
230
177
188
201
182
249
209
222
270
232
179
222
223
221
198
156
183
156
202
195
175
140
247
235
190
196
224
199
193
201
198
150
179
208
170
244
199
217
202
225
220
191
225
228
210
137
148
220
206
223
238
165
182
211
209
194
259
221
211
238
228
245
166
147
191
195
245
167
193
179
154
229
133
197
214
146
239
212
176
187
177
173
202
183
206
160
165
191
197
215
194
225
192
194
206
162
182
235
186
229
170
180
178
260
250
159
243
216
205
202
210
176
249
158
159
261
233
231
189
227
218
262
189
238
220
223
210
223
215
156
177
219
165
245
193
136
135
260
163
184
136
187
219
201
258
261
233
165
216
194
170
188
110
181
204
244
240
238
169
217
203
211
178
205
225
160
180
216
251
213
208
178
170
90
209
193
167
186
171
184
192
186
195
228
221
193
116
150
158
164
246
207
198
208
175
201
209
206
166
156
190
237
182
253
246
134
185
226
177
159
199
151
253
176
161
227
202
166
196
232
159
220
242
195
216
202
229
216
166
199
142
227
203
219
195
168
244
131
154
222
203
207
169
262
220
220
233
232
153
215
209
179
173
130
192
258
217
197
184
209
182
199
220
197
162
232
189
199
193
204
249
202
213
176
175
161
197
161
204
233
172
248
202
173
168
181
220
224
189
228
244
227
169
251
203
155
196
150
178
165
247
204
151
191
215
247
174
206
178
219
185
190
234
172
223
177
197
210
212
216
200
214
237
159
200
239
163
202
192
244
173
131
207
204
210
232
163
195
203
204
235
184
218
209
219
196
216
237
174
257
240
166
169
246
246
221
104
190
190
174
199
226
188
221
219
142
213
192
184
143
204
257
186
163
172
203
187
212
148
224
168
189
247
269
211
205
183
197
168
229
203
221
170
217
190
213
226
222
237
221
195
229
221
145
227
199
209
139
171
248
217
253
121
202
256
216
194
181
235
275
199
206
277
191
196
245
240
270
149
192
236
204
193
210
185
191
179
225
203
183
211
175
192
207
222
200
192
223
191
259
204
216
156
232
199
185
180
183
202
207
159
233
186
186
252
176
238
205
205
186
160
269
232
125
256
230
212
212
219
211
234
182
185
189
136
171
203
238
253
200
209
190
176
194
243
168
188
166
220
246
200
191
235
223
189
202
217
221
238
186
150
182
231
194
105
207
232
141
211
230
236
212
241
139
197
195
201
173
220
183
164
176
215
164
183
223
194
217
181
209
244
191
252
147
227
180
175
167
174
211
188
145
198
146
231
183
230
169
259
167
246
229
214
156
211
217
176
169
228
159
218
217
188
252
264
192
232
162
131
218
145
204
251
192
249
174
214
129
264
112
172
186
174
213
241
152
197
174
237
225
228
149
229
214
126
222
122
157
210
163
179
184
195
213
219
212
265
235
229
192
210
196
231
199
246
178
180
203
155
161
263
212
197
173
207
202
234
215
213
141
239
160
154
173
174
216
169
201
226
188
243
197
201
136
249
239
248
252
209
257
186
222
152
173
196
198
221
188
165
133
210
246
242
152
223
176
152
238
164
202
239
233
172
186
195
272
188
189
181
162
252
171
214
241
190
227
238
273
244
164
207
143
215
257
208
195
179
112
237
174
220
180
158
219
165
164
237
169
162
271
238
221
146
213
254
243
199
114
167
205
222
202
210
168
159
187
222
221
200
254
228
233
252
184
269
115
155
187
194
154
263
202
172
112
155
180
173
172
213
212
206
155
142
225
213
164
211
181
260
156
182
160
158
218
210
189
195
250
197
259
212
252
187
192
194
150
267
244
230
237
240
166
189
220
221
197
225
187
183
182
211
192
230
261
137
237
210
208
198
276
200
168
165
234
173
203
157
225
199
192
212
221
240
209
252
214
183
263
200
189
214
222
232
212
202
215
162
276
156
163
183
216
213
184
247
205
223
226
231
232
198
214
226
180
238
194
149
202
172
172
235
257
220
184
272
182
155
219
190
146
153
242
166
211
198
188
147
220
155
199
212
226
250
156
222
199
194
230
230
138
226
230
186
186
110
165
190
172
210
188
164
195
147
225
195
201
209
249
231
203
257
215
267
210
174
176
216
206
233
182
201
156
216
244
201
176
171
180
155
167
182
197
223
225
207
133
129
257
214
185
169
192
214
249
238
206
231
233
180
182
218
187
193
171
235
234
214
167
246
218
247
175
157
217
200
228
217
235
181
218
185
173
152
180
182
209
261
205
233
173
209
194
223
200
204
172
215
195
150
226
204
189
264
226
179
224
194
238
216
218
202
187
194
189
197
200
177
249
204
229
173
196
181
213
159
154
184
214
149
224
178
194
143
185
188
203
195
223
220
211
242
193
219
187
208
181
279
226
196
226
193
234
173
192
201
156
184
171
272
205
150
156
262
215
157
223
196
179
159
162
197
212
197
194
210
204
203
198
171
182
174
247
178
159
180
159
213
258
185
254
225
209
237
185
191
190
208
241
213
193
206
238
193
253
189
210
232
167
241
221
192
214
227
182
224
169
199
188
200
227
213
202
206
157
191
250
133
208
252
215
187
187
216
184
237
177
202
207
209
252
205
159
227
134
216
159
262
210
178
188
163
186
198
185
144
217
181
187
199
194
214
137
213
139
182
174
175
138
149
213
216
206
243
221
216
178
232
226
192
246
156
168
207
154
237
260
256
193
241
143
259
215
247
233
192
207
174
216
196
239
191
202
172
179
215
265
223
166
232
188
199
204
164
253
182
142
190
221
236
218
160
264
151
193
165
267
207
251
228
213
265
213
153
225
164
183
196
233
201
173
182
178
164
194
141
169
193
223
205
248
194
202
216
274
250
271
269
150
238
246
226
200
182
202
221
173
258
153
195
152
245
186
190
145
183
183
241
233
231
158
201
140
211
213
172
271
183
239
245
191
232
167
167
227
231
174
267
196
221
263
178
178
172
217
201
138
186
202
144
169
204
153
151
151
99
170
228
258
204
161
240
176
191
126
190
224
196
173
168
198
214
189
229
226
222
226
190
220
189
239
215
185
191
187
200
157
184
192
225
161
187
120
180
146
229
256
209
166
221
203
193
196
227
197
221
160
139
217
226
230
171
154
230
246
250
220
246
193
217
203
201
241
237
208
227
149
200
227
189
200
207
160
151
248
181
205
204
212
128
184
220
251
247
178
85
214
218
201
182
211
168
162
199
209
175
280
221
221
202
214
196
169
187
198
197
278
140
246
169
232
221
151
186
221
240
198
178
185
212
224
158
171
203
188
157
243
238
167
176
179
281
203
191
219
179
179
205
245
244
196
228
252
282
226
161
241
195
149
247
199
214
212
216
191
202
231
212
208
222
156
145
176
132
220
179
226
249
193
234
153
232
203
176
175
255
255
244
221
226
252
225
219
198
204
202
195
171
140
193
195
222
207
224
194
257
211
179
267
230
170
268
258
208
169
230
227
187
176
191
193
226
175
202
185
221
226
173
164
148
179
223
198
205
186
206
203
193
180
151
272
226
239
228
245
225
229
237
240
177
206
181
176
184
192
188
186
191
210
211
187
211
204
198
196
199
206
178
197
216
214
175
188
182
178
219
182
226
213
183
178
160
202
201
250
161
164
200
215
239
229
214
177
245
192
193
142
206
206
247
230
212
136
165
169
239
163
207
241
202
163
201
213
175
168
223
226
208
199
217
243
170
189
242
171
206
142
235
168
234
148
147
218
167
234
232
188
156
231
189
155
195
231
167
220
236
201
164
197
178
192
210
180
174
266
234
232
133
231
198
224
206
214
165
274
213
160
216
135
249
185
174
225
256
185
201
163
198
153
223
247
215
222
204
258
233
233
217
182
191
206
197
221
165
156
177
201
218
217
238
288
174
230
218
118
216
164
213
219
225
220
166
182
164
208
242
205
228
264
196
225
257
213
168
217
125
182
212
242
188
134
151
173
177
206
233
151
178
157
154
225
188
180
234
198
163
232
140
172
173
161
256
258
251
207
235
228
181
228
130
214
208
213
171
222
172
185
186
198
228
202
161
219
227
203
250
242
244
159
204
162
207
239
195
233
184
229
237
250
210
176
176
188
223
164
259
208
236
251
265
205
132
210
192
194
195
219
205
210
247
221
247
182
220
179
202
171
233
201
165
117
169
232
207
206
222
215
173
126
200
182
204
196
196
201
211
212
202
159
234
202
159
185
180
221
198
215
204
168
152
170
167
225
176
190
200
246
139
170
149
224
157
251
194
214
234
208
220
143
178
209
210
177
234
202
222
178
192
225
199
196
202
218
219
190
173
230
229
187
204
260
192
238
238
197
222
209
250
126
231
208
168
176
244
219
225
243
187
135
260
231
220
199
264
220
174
190
176
136
204
196
204
166
185
168
253
266
146
223
202
170
212
163
185
152
199
189
168
206
203
220
187
164
249
167
150
212
206
163
133
197
132
236
205
184
230
241
170
201
234
194
247
145
190
154
170
246
229
213
177
188
221
197
232
177
224
165
209
223
135
298
146
205
203
219
233
199
225
222
184
259
153
204
244
187
251
134
162
179
239
212
204
221
222
191
166
189
250
136
202
235
269
189
194
215
137
201
168
112
219
245
165
197
184
189
165
185
232
162
221
132
195
258
179
190
206
212
214
191
223
205
206
186
235
180
181
198
268
177
169
197
177
228
178
224
216
167
139
192
255
251
215
193
192
204
200
195
234
212
231
262
239
235
209
182
218
220
186
226
203
199
170
179
187
158
255
233
242
225
228
203
211
206
210
212
209
223
176
204
150
228
168
221
212
159
243
183
237
209
188
206
234
184
197
180
230
208
197
242
154
204
211
196
123
198
222
277
225
239
206
211
201
237
155
202
182
246
251
158
203
234
212
125
258
194
185
162
177
221
233
201
233
155
259
173
212
198
178
183
233
209
216
193
196
119
191
213
181
147
159
182
260
181
224
168
192
97
197
195
257
175
224
238
143
287
169
264
157
140
203
212
158
217
203
217
227
208
200
142
178
175
226
211
249
171
192
254
186
200
288
196
151
264
185
196
217
224
197
249
197
239
219
213
218
215
187
223
132
235
214
208
220
243
292
221
183
211
158
260
187
116
248
208
212
226
187
185
163
243
187
222
195
184
190
175
115
203
180
211
271
182
266
168
170
176
202
179
164
168
191
232
230
247
240
132
188
194
244
111
213
225
200
253
211
196
201
236
179
156
229
211
179
218
218
234
201
162
218
180
146
239
180
168
195
102
293
229
206
150
238
206
164
165
145
128
174
212
262
256
212
203
178
182
220
140
233
213
248
170
243
200
215
150
213
204
186
195
183
225
293
235
234
239
202
227
164
205
174
215
188
208
241
173
203
214
259
190
225
141
225
255
121
214
170
194
171
234
213
193
234
225
240
209
208
235
208
148
174
126
153
209
190
239
204
133
237
204
234
218
155
230
131
227
196
177
159
224
214
235
158
154
224
208
155
181
194
189
200
252
204
198
210
183
162
216
246
227
229
212
209
189
211
201
222
225
217
170
175
177
188
191
230
192
156
148
187
186
213
158
243
188
270
198
278
190
242
219
222
188
209
244
228
223
181
215
240
190
246
201
188
182
194
114
182
241
130
219
200
204
159
207
185
189
229
190
172
171
244
167
176
225
160
172
212
201
148
179
239
214
251
198
261
182
190
195
185
217
234
231
232
164
180
210
183
152
234
238
260
177
170
245
209
256
234
189
220
220
202
208
242
197
265
179
228
236
248
168
220
178
192
184
214
200
218
178
208
146
111
166
183
173
255
199
269
213
199
145
230
173
247
187
185
218
226
117
213
220
208
184
213
234
199
254
201
211
233
173
249
175
215
237
178
169
165
225
203
176
169
273
201
129
153
151
151
208
217
226
260
233
182
207
199
192
224
172
206
144
256
249
220
241
192
175
199
150
184
256
181
198
214
233
192
159
121
186
152
271
190
203
234
209
180
180
168
189
186
206
175
212
220
192
161
157
224
199
216
149
213
156
165
209
138
210
220
166
161
250
212
268
203
258
239
226
179
168
225
189
237
236
196
176
200
230
187
213
253
263
234
230
185
208
211
194
163
221
212
193
214
176
214
188
168
236
195
254
147
166
161
210
174
186
267
244
214
171
225
210
214
194
209
193
150
195
114
127
225
187
239
217
193
220
139
226
189
178
153
200
183
231
207
179
217
184
227
163
206
217
196
199
224
170
127
166
176
247
208
228
253
202
165
215
162
214
230
182
137
198
238
213
206
175
181
192
182
197
184
208
171
137
215
236
151
215
212
235
228
221
197
205
221
209
207
196
231
202
248
209
208
205
179
265
183
210
193
203
213
233
152
237
219
205
212
211
266
209
128
174
253
187
180
240
184
190
190
197
194
218
202
207
262
226
240
170
224
151
218
141
188
209
182
184
212
196
232
184
209
207
204
217
223
192
191
191
247
232
166
154
213
247
212
254
229
242
168
191
132
202
221
152
138
253
205
163
171
180
176
254
155
211
252
167
134
167
235
207
178
234
248
189
204
201
183
259
251
232
246
232
212
219
194
189
189
230
191
204
220
187
225
124
251
196
225
181
210
177
186
199
210
167
215
213
209
189
203
243
186
232
228
273
173
156
270
215
140
190
155
120
199
222
193
210
164
220
185
220
188
190
211
214
214
131
177
178
174
142
200
74
186
216
213
209
192
176
170
186
176
147
191
211
177
237
210
223
189
160
220
224
187
192
150
216
225
230
184
184
253
249
255
206
180
159
129
219
236
163
158
138
184
273
159
187
179
170
229
182
191
170
185
215
167
177
204
159
177
172
199
210
170
203
204
215
155
228
245
202
192
194
166
192
163
224
220
243
225
201
205
204
226
247
182
200
233
241
219
225
196
226
187
153
247
192
152
224
197
186
213
267
197
223
196
170
180
188
171
234
215
204
236
175
240
240
225
194
236
175
189
137
202
227
163
163
182
199
168
182
218
166
118
230
247
165
162
162
148
173
228
142
253
191
170
194
251
183
205
151
191
124
216
182
227
196
202
172
228
183
181
157
232
212
230
213
206
233
177
190
235
217
213
97
237
232
146
166
158
181
217
137
197
134
218
195
212
226
210
178
194
226
235
229
186
224
149
235
159
152
186
225
180
190
233
157
265
190
145
192
191
176
208
107
217
189
191
244
218
167
235
220
181
168
169
181
198
186
179
211
187
164
189
130
171
138
195
149
151
152
172
165
182
234
191
246
190
175
176
203
240
180
217
273
209
230
188
189
209
199
176
240
166
177
166
209
207
194
215
235
211
189
199
124
235
204
190
220
241
159
174
204
205
227
212
207
166
247
232
185
164
218
187
185
217
156
140
226
256
166
162
212
182
217
208
157
234
257
142
191
191
152
187
191
252
229
226
260
232
180
156
167
208
244
216
206
220
224
227
212
147
152
246
215
220
209
184
217
212
198
221
238
223
203
242
183
188
196
178
244
208
229
234
222
210
229
196
116
191
159
135
163
253
136
207
239
193
197
237
170
206
200
213
173
163
242
206
209
180
191
209
153
199
129
219
200
203
187
254
260
195
183
166
181
185
149
180
247
263
201
186
218
177
153
191
217
262
228
175
248
204
215
213
191
224
231
177
205
270
221
203
204
181
224
210
195
217
193
190
211
242
195
198
224
181
187
263
234
200
158
219
176
207
139
224
175
260
161
219
140
208
159
157
228
229
205
194
256
175
249
197
213
202
257
251
152
210
196
217
250
169
192
212
229
195
236
241
215
150
228
165
204
177
163
139
230
175
262
149
185
197
172
115
193
165
160
237
188
239
207
182
186
269
206
259
242
229
307
201
182
155
269
191
233
209
260
228
175
234
164
241
194
193
210
243
181
149
189
211
150
186
245
217
221
191
197
220
206
179
139
165
215
195
221
211
196
212
213
212
188
202
187
239
261
185
202
176
249
247
202
260
151
182
253
214
173
177
211
190
241
215
266
182
153
185
208
211
197
185
207
160
177
244
190
192
255
176
221
154
207
227
259
158
202
178
172
189
201
282
230
177
226
217
148
206
213
244
182
124
217
167
220
198
171
205
259
225
260
201
213
192
158
240
180
175
161
142
141
269
226
168
246
160
214
230
197
251
245
214
259
181
247
224
241
251
133
179
236
224
182
188
176
152
223
157
202
186
204
190
227
255
168
304
186
164
230
213
200
211
195
159
164
183
201
158
131
232
195
121
157
226
162
220
208
165
204
202
221
160
204
201
142
235
150
219
242
211
234
193
165
131
205
237
170
211
175
181
196
186
196
179
254
221
196
198
199
175
241
182
211
156
202
202
221
157
199
130
198
236
173
235
175
144
180
215
196
201
183
163
203
203
189
217
257
167
197
225
221
130
128
205
212
220
190
241
163
220
153
191
184
170
230
219
189
170
191
172
137
236
163
240
199
167
202
190
165
204
142
211
290
259
192
144
216
142
172
171
170
212
187
209
237
178
218
235
176
127
204
151
232
230
214
174
180
112
147
230
163
225
221
199
130
193
223
209
238
203
153
179
202
184
242
210
158
178
227
188
185
241
214
198
189
251
206
224
212
221
108
245
144
199
245
220
212
206
186
224
155
259
234
253
157
149
164
224
210
186
265
218
168
252
194
176
183
172
257
193
165
133
190
246
179
194
222
179
229
197
229
228
212
218
174
193
119
203
195
182
227
175
220
220
217
147
147
180
243
163
243
219
185
175
208
212
155
235
231
171
230
234
240
219
232
146
166
232
227
229
218
150
102
202
201
231
195
203
205
177
243
224
230
212
165
121
133
181
186
235
170
186
216
130
227
222
144
183
169
185
192
215
284
185
217
188
187
219
217
229
226
177
177
251
164
244
187
211
193
230
233
160
207
205
268
217
158
241
193
200
164
183
238
189
177
193
209
221
189
215
279
189
188
155
228
118
193
229
171
191
202
189
228
237
170
200
227
161
230
252
223
214
174
156
262
241
186
214
212
194
193
223
215
249
188
226
194
209
277
206
132
165
201
194
168
136
255
140
279
170
237
249
198
178
211
197
198
141
205
199
195
192
158
215
193
93
165
178
210
231
222
214
166
163
185
216
248
231
140
160
203
114
203
208
166
184
181
224
209
176
227
178
162
269
177
237
157
218
164
137
228
196
210
187
219
242
139
142
190
280
185
148
165
254
183
246
253
191
147
159
243
229
194
215
192
181
200
244
205
183
231
242
108
220
208
245
198
224
173
179
221
117
236
202
192
227
255
190
208
236
183
101
171
256
205
197
182
210
200
206
225
199
177
236
166
126
196
169
186
187
204
249
144
210
176
210
196
133
209
207
153
217
186
198
234
183
139
234
232
201
249
226
180
145
233
255
204
212
197
231
192
151
187
124
154
226
234
242
212
149
187
178
219
178
213
186
194
206
237
237
200
173
173
126
210
255
211
188
172
213
252
214
229
167
165
262
259
173
244
243
189
157
260
228
235
159
205
148
164
128
232
209
207
183
148
239
224
224
187
233
209
131
165
156
119
184
255
229
116
231
278
102
196
202
211
204
150
219
178
196
154
207
234
230
171
173
191
208
188
218
196
227
249
212
194
139
243
186
162
228
201
168
195
247
240
165
225
172
227
177
240
158
226
191
186
178
215
212
201
239
108
202
137
227
236
225
187
208
152
176
244
200
190
187
228
194
183
237
173
162
240
192
230
204
175
227
159
218
217
199
206
165
206
190
274
234
128
244
256
198
234
318
181
169
234
245
193
216
183
189
225
177
209
249
225
101
191
233
164
181
193
253
253
160
221
162
234
226
232
129
233
248
152
200
223
204
185
162
241
209
212
156
232
139
166
186
162
188
165
215
150
244
211
202
172
220
177
191
203
163
189
218
197
150
240
167
164
245
161
162
193
206
213
214
163
187
180
222
219
218
234
223
198
235
265
262
249
209
222
165
237
159
167
227
203
172
202
206
215
217
235
194
221
231
209
188
201
195
238
171
209
221
130
192
190
228
189
157
132
176
186
210
207
244
207
240
197
203
209
154
175
246
267
195
176
172
206
160
153
180
260
199
205
223
193
150
189
212
208
197
210
178
209
233
180
204
229
245
157
199
229
201
213
232
202
266
188
153
249
271
218
221
235
168
192
186
151
175
229
181
259
185
197
154
231
255
143
158
236
233
205
249
236
192
187
259
226
171
166
223
176
219
204
240
131
227
129
251
201
198
182
293
212
207
177
103
168
189
146
194
189
170
162
215
208
155
151
224
171
184
231
222
194
172
229
216
207
249
188
225
234
196
168
178
214
160
204
259
227
210
230
194
218
162
240
262
195
205
207
229
202
228
167
173
228
229
195
217
166
228
168
207
105
208
169
150
215
220
207
269
172
203
205
199
215
189
179
204
176
262
198
228
205
273
140
200
166
142
187
176
197
154
215
233
196
181
194
257
227
239
202
202
218
168
144
230
205
184
169
249
197
239
208
163
169
225
176
166
140
174
143
214
210
198
183
196
172
160
197
180
160
196
151
205
217
227
254
213
206
150
241
154
139
274
265
179
153
179
215
134
239
186
223
162
121
221
213
177
125
171
160
183
215
188
238
188
252
199
186
232
211
149
177
197
202
211
221
196
181
159
278
173
187
184
241
198
212
220
186
192
219
205
195
233
153
228
195
181
203
160
192
222
219
193
250
243
262
191
190
208
187
242
210
236
209
141
246
177
196
227
165
204
235
191
233
198
225
197
166
163
222
253
197
205
217
223
143
211
207
134
227
222
165
220
231
239
254
241
146
217
181
186
210
213
215
231
237
252
206
205
230
212
215
156
163
230
174
247
105
191
201
203
148
184
260
204
221
225
171
197
259
166
184
245
180
196
223
240
244
231
201
121
206
183
177
209
191
184
200
198
201
176
175
207
217
195
149
157
199
181
212
249
171
248
183
179
239
157
233
176
224
181
190
232
229
183
208
204
263
217
160
198
151
128
191
178
159
197
137
234
201
207
149
157
204
182
182
170
177
238
85
204
156
181
236
188
197
207
133
198
197
168
226
199
131
208
273
226
150
184
271
204
214
173
215
173
132
174
223
244
198
193
187
219
171
219
214
222
180
204
219
221
233
215
132
200
169
180
179
168
208
212
185
155
177
90
186
188
248
166
195
202
165
230
209
180
174
166
219
222
219
148
229
213
217
177
150
217
150
214
147
233
248
193
181
230
277
265
193
192
249
210
170
149
134
181
140
215
184
230
151
196
167
168
186
202
264
231
188
187
191
266
203
184
232
245
242
203
140
198
232
210
232
223
226
240
264
177
212
222
247
160
205
196
119
254
171
176
185
238
274
228
215
163
249
291
214
241
187
220
175
230
221
186
227
205
243
99
246
169
190
231
209
215
230
230
198
202
170
201
208
260
234
201
267
170
218
175
204
224
200
195
240
162
219
177
245
208
205
156
148
184
221
254
208
173
133
228
205
127
213
180
169
202
151
224
220
214
218
222
175
212
186
174
166
181
245
212
192
251
203
249
158
236
181
219
226
137
216
251
190
209
123
232
165
207
145
197
197
155
182
247
166
171
252
261
236
157
247
219
236
141
169
221
183
223
283
125
147
221
210
141
231
214
149
230
189
183
243
226
248
223
137
221
188
191
150
268
219
212
263
165
180
179
239
203
151
165
147
194
201
110
172
199
220
176
181
241
224
228
162
202
170
201
200
196
218
222
187
184
252
155
185
240
237
224
223
182
197
198
184
188
206
206
236
214
151
168
158
192
175
211
193
185
180
179
176
187
170
234
184
205
213
208
151
180
171
219
192
218
219
212
264
227
252
208
240
203
223
136
200
229
184
185
191
168
239
222
204
252
232
210
203
230
152
163
210
200
178
237
211
195
195
224
216
263
208
217
254
208
163
228
202
155
221
257
202
203
199
196
186
220
218
224
171
176
181
229
183
191
210
170
232
142
194
169
231
144
223
238
139
198
176
210
141
189
242
227
246
154
230
174
193
218
196
173
217
232
149
181
189
170
202
129
183
244
190
244
184
233
229
226
215
174
208
190
186
259
267
249
189
239
199
185
141
194
217
155
207
194
205
245
245
141
228
204
205
153
150
224
221
208
213
154
180
241
201
146
211
203
180
246
324
183
218
165
234
151
205
274
126
201
162
172
222
170
164
238
200
212
213
215
242
219
203
239
217
133
203
207
222
254
188
169
210
163
205
236
254
175
148
194
245
172
220
181
202
156
209
244
150
173
227
266
198
261
218
182
195
182
262
171
244
191
177
231
175
281
246
216
260
177
154
201
205
129
156
262
267
193
156
210
201
192
203
243
213
224
192
156
188
255
187
210
239
184
127
222
201
160
179
205
199
219
211
228
159
200
242
155
203
189
164
228
182
176
176
172
141
187
209
175
146
233
225
186
128
171
259
201
192
221
217
229
189
181
186
199
235
190
250
199
244
196
208
162
186
179
211
204
187
126
206
197
191
174
183
221
229
167
192
168
184
255
257
187
208
241
178
193
218
166
160
215
212
216
141
130
161
206
225
243
173
215
194
225
230
171
218
194
219
211
232
188
227
236
174
208
151
171
192
253
195
209
208
170
185
237
226
166
173
183
168
187
137
152
201
169
254
191
134
205
208
211
224
188
157
155
139
218
206
256
165
236
213
241
205
150
162
197
160
158
186
213
223
213
143
139
193
161
181
179
210
242
253
249
206
125
218
218
150
163
205
177
205
237
206
216
159
163
217
222
240
193
170
223
118
191
148
127
166
213
129
202
199
177
189
234
251
191
214
208
169
183
267
232
248
223
193
176
214
189
242
150
170
242
222
240
129
193
172
232
246
204
149
249
233
212
223
265
122
182
206
241
187
122
170
219
202
219
238
196
157
113
166
169
234
188
249
177
213
226
183
194
196
194
143
194
205
156
169
188
121
186
187
139
173
213
242
194
202
158
208
191
99
244
188
165
227
201
181
229
184
183
202
204
140
218
190
181
231
222
219
181
210
205
227
186
162
209
207
161
224
177
215
169
285
143
225
266
223
212
208
207
210
261
157
198
207
236
158
213
203
232
177
256
216
228
210
139
255
190
218
319
178
276
245
237
171
199
232
209
255
194
201
214
200
199
137
172
156
178
205
216
254
212
246
181
179
220
180
143
174
133
218
210
217
177
157
156
205
239
212
169
193
183
228
244
275
194
279
174
143
183
248
186
243
229
195
204
228
180
221
190
142
230
226
232
271
201
175
183
221
240
238
220
230
110
114
244
249
252
151
199
197
211
187
181
112
143
153
192
205
200
196
215
208
160
152
245
233
218
232
230
231
182
210
179
149
149
182
161
157
256
243
173
225
196
143
207
187
185
186
218
178
264
259
192
169
165
237
225
201
177
214
234
253
206
227
228
218
199
173
199
201
143
234
208
243
173
196
228
213
215
222
200
212
139
125
208
142
206
182
215
251
163
182
200
218
164
168
183
201
196
161
185
175
210
216
222
144
125
196
223
198
203
196
192
204
216
221
230
281
226
198
146
144
200
170
185
204
163
228
192
187
236
193
188
245
209
185
176
232
248
240
182
141
242
215
189
164
173
168
202
169
162
153
110
190
164
158
135
161
252
217
175
154
213
182
154
171
241
135
253
258
178
201
183
186
149
192
194
161
221
152
201
176
191
156
183
232
164
209
221
174
183
209
208
207
243
193
203
196
198
265
127
205
202
172
199
234
158
172
161
191
193
189
187
215
169
173
207
257
210
201
222
123
234
221
279
218
211
171
201
251
229
217
212
214
169
249
165
232
258
161
195
247
177
249
210
206
198
193
145
189
242
200
211
207
231
177
154
211
181
213
252
215
188
182
191
194
245
215
165
234
177
165
92
251
249
191
247
238
172
200
212
195
165
271
207
145
136
203
274
175
230
166
217
260
167
187
188
247
265
246
150
204
146
154
225
273
165
169
201
162
222
216
200
201
225
211
180
238
220
177
236
207
245
169
218
159
274
188
199
182
171
224
225
203
167
215
206
177
213
190
197
162
186
254
218
143
145
213
180
315
246
233
216
293
196
102
188
136
257
232
108
278
230
208
239
214
189
196
269
141
230
158
237
260
218
230
160
196
210
210
220
186
240
214
248
228
208
197
243
252
177
220
179
216
204
167
198
170
140
128
204
211
220
187
192
211
260
185
181
247
154
227
196
217
237
210
209
247
107
198
165
207
228
212
155
214
253
204
226
180
225
163
231
170
224
162
199
197
189
193
215
242
216
224
243
168
242
178
223
173
247
173
227
176
189
167
222
152
196
117
186
229
187
224
267
196
169
190
198
213
143
204
142
225
160
189
170
205
222
164
226
154
176
194
216
206
198
242
211
178
235
180
235
233
202
122
204
223
263
241
155
219
203
233
236
211
245
207
185
186
201
214
222
218
180
245
159
236
211
219
157
233
233
196
240
262
193
220
192
210
233
232
242
218
201
165
198
229
183
288
215
193
207
155
226
146
160
241
196
202
163
180
214
231
168
237
256
198
190
196
251
225
155
222
123
183
201
226
187
233
202
206
254
226
204
227
198
159
169
184
188
175
236
262
235
232
225
203
195
184
198
194
189
238
139
215
261
153
175
172
110
238
131
177
161
240
258
198
260
225
192
160
176
196
192
246
138
208
155
242
233
195
226
158
188
234
221
188
167
216
214
228
177
234
234
196
140
218
262
146
232
251
220
214
180
238
213
169
187
232
192
258
160
228
195
219
237
195
172
194
226
188
246
180
197
155
221
222
228
194
219
188
187
264
149
240
207
178
147
245
171
191
205
199
211
196
131
172
183
207
215
164
218
228
211
174
219
194
249
189
224
156
211
215
219
268
167
230
177
226
249
247
208
218
189
163
218
216
208
191
239
254
257
200
191
213
237
157
217
166
189
207
199
187
223
152
140
144
168
242
213
214
212
172
195
250
163
144
212
134
200
233
232
191
232
150
183
222
212
244
191
201
141
165
195
227
187
194
183
152
239
209
204
162
211
238
208
211
203
209
178
212
168
224
235
239
239
200
175
201
204
130
189
217
218
190
201
195
186
113
252
220
208
130
165
198
213
162
216
230
195
201
196
166
212
216
184
205
186
252
232
195
193
247
187
224
193
232
201
243
288
206
208
192
186
257
200
232
205
173
212
181
190
279
216
219
165
276
200
165
207
170
170
203
165
200
206
196
192
219
215
236
180
240
202
177
150
142
238
242
180
189
232
194
168
227
188
194
121
200
188
232
248
286
232
265
207
177
187
187
129
198
165
181
212
191
166
216
176
197
234
156
248
189
215
215
111
179
240
245
201
153
132
218
242
226
244
232
157
157
195
237
211
191
192
270
262
174
172
262
128
195
164
201
210
229
151
222
229
216
246
166
87
202
177
188
208
216
144
189
217
168
105
225
242
247
210
221
233
227
189
242
189
179
191
200
225
189
218
203
232
187
217
141
159
207
210
222
268
164
182
209
211
212
202
170
188
144
257
221
210
202
212
201
202
182
188
207
159
166
167
225
214
258
169
174
203
194
174
193
203
189
133
221
172
172
221
201
187
135
212
224
236
201
217
197
124
181
213
227
183
222
223
144
177
238
214
145
246
177
171
221
231
198
220
191
204
210
155
221
188
208
220
232
221
204
178
225
179
261
239
177
165
207
159
165
244
209
220
174
223
155
214
226
177
171
174
268
193
151
205
210
228
215
213
261
196
215
245
199
185
178
205
207
193
160
206
223
203
218
180
171
160
126
197
169
193
272
200
203
161
183
131
163
174
253
195
206
177
226
173
203
125
209
191
139
170
165
186
231
238
240
224
257
168
205
158
235
201
229
177
215
156
166
201
259
190
224
196
216
207
218
213
188
202
213
165
201
191
235
141
181
209
216
238
250
203
211
236
233
238
179
122
202
163
177
246
178
223
204
196
182
169
162
249
216
238
162
171
148
250
191
225
151
208
165
178
186
221
240
146
190
240
113
237
250
157
181
193
201
180
192
205
218
213
146
210
261
266
179
178
226
202
206
175
215
138
161
220
202
185
201
256
184
195
189
121
151
247
213
210
190
213
155
200
232
191
205
241
229
243
210
212
191
241
229
189
145
190
192
144
157
249
226
209
208
280
222
249
129
198
167
193
229
194
204
192
198
234
172
201
146
194
267
209
178
157
212
202
202
189
245
228
252
153
159
221
201
188
193
224
144
200
178
231
211
244
209
216
236
232
189
228
186
174
192
232
233
206
188
179
166
190
230
274
173
225
144
235
185
223
108
209
216
150
192
235
212
222
194
218
214
189
184
237
190
156
262
154
131
172
180
224
213
199
229
199
241
207
165
196
203
170
261
246
186
192
196
202
188
184
254
218
137
203
229
158
231
127
175
244
157
173
189
192
172
143
208
249
190
207
208
192
258
203
197
221
206
191
124
182
254
193
141
196
214
229
216
221
177
187
214
203
217
209
159
218
267
216
199
243
99
190
193
206
225
138
215
203
193
151
200
196
247
199
231
204
201
238
150
204
208
141
153
203
233
208
235
210
227
222
233
146
205
177
202
229
175
200
209
189
266
237
229
201
249
249
193
212
221
136
214
205
230
231
190
185
196
260
195
209
142
240
222
201
207
202
209
206
216
198
200
154
194
197
190
194
188
177
262
177
221
181
170
171
249
242
138
273
191
240
150
216
240
135
185
168
208
229
180
170
185
234
214
174
252
221
237
219
164
107
187
178
175
217
211
222
181
200
204
189
256
233
214
214
176
234
229
228
176
216
208
187
170
134
227
156
221
205
147
232
209
260
207
275
165
221
168
254
181
185
230
156
175
204
199
229
217
158
172
210
196
232
194
185
200
229
157
227
210
162
253
211
233
251
216
203
111
205
159
187
194
186
125
213
199
183
198
192
256
190
206
244
176
208
181
152
214
244
254
181
189
225
219
203
198
213
189
222
188
198
203
173
196
222
187
179
247
210
207
218
197
212
196
160
196
187
210
194
191
171
183
235
184
163
192
218
178
257
134
229
209
100
166
155
191
184
263
121
194
231
149
154
159
213
223
215
180
225
234
163
207
194
176
185
223
205
227
108
188
227
160
185
187
261
220
207
162
181
269
141
189
209
168
194
290
134
187
222
210
177
222
160
232
216
258
201
250
199
186
182
220
148
118
175
260
171
179
194
121
236
175
253
247
228
214
233
214
216
239
227
185
203
186
191
202
199
212
182
165
228
188
235
151
273
158
211
233
201
228
123
210
201
149
190
249
190
261
230
200
206
200
152
255
217
146
210
208
222
252
192
217
194
94
180
118
150
211
234
235
227
176
233
231
198
179
234
184
167
159
220
232
197
180
199
211
185
178
212
157
201
192
251
226
247
141
201
214
181
161
209
155
243
163
194
240
148
239
153
190
209
196
132
182
168
183
167
190
211
187
216
224
234
178
132
239
189
235
255
207
177
212
216
148
220
199
237
202
215
183
179
204
195
210
199
197
142
197
198
229
220
148
220
198
221
153
175
193
204
186
182
154
202
154
140
134
260
224
219
203
207
185
242
205
200
125
202
143
229
191
189
184
182
202
199
211
227
129
138
201
180
191
258
236
215
207
206
200
250
180
200
208
130
214
195
212
200
229
162
229
210
193
169
240
233
181
171
189
202
252
155
200
199
263
211
202
155
182
183
189
140
198
172
221
102
221
136
266
178
218
212
173
205
220
179
200
228
185
254
209
182
211
193
198
187
184
189
165
202
187
174
122
188
223
146
219
171
243
238
163
236
270
259
146
237
216
205
190
218
220
216
209
184
252
150
224
168
230
151
192
223
242
154
176
247
240
251
111
220
277
227
210
174
147
149
154
233
159
198
201
184
231
197
217
186
210
218
180
269
220
270
183
156
196
144
264
189
207
217
184
111
152
182
189
164
190
220
200
163
244
193
236
246
241
189
163
196
152
229
123
220
230
229
231
159
197
138
222
174
210
241
195
161
206
181
214
133
192
181
249
213
254
224
159
172
199
183
205
185
241
183
210
279
187
212
230
196
165
165
216
161
177
229
275
181
191
215
210
206
270
146
193
134
177
239
211
214
201
110
240
153
213
175
181
173
135
207
215
206
217
287
144
231
198
160
174
197
191
172
204
215
191
242
189
161
184
184
179
202
165
152
119
233
157
263
208
220
228
231
187
207
211
165
177
219
225
169
128
204
232
203
200
230
196
234
220
159
161
249
160
230
190
136
103
190
201
215
153
166
197
216
127
241
262
136
217
208
248
215
206
188
186
180
272
209
225
227
219
166
268
183
259
260
142
199
151
191
163
145
181
227
206
164
243
169
167
197
226
205
227
220
245
140
245
175
293
186
168
170
158
240
178
192
226
229
224
247
228
211
167
197
155
232
216
190
206
151
224
192
209
185
146
256
192
115
173
237
125
191
188
194
155
197
183
172
226
184
125
191
214
204
226
220
193
253
211
237
249
204
265
243
183
176
189
174
176
111
203
211
164
153
190
174
245
232
192
169
285
233
231
199
178
195
219
179
260
154
232
179
198
174
218
212
237
164
191
180
237
258
181
245
188
151
155
195
200
220
209
261
225
214
207
227
198
233
194
144
190
176
198
166
261
218
194
214
172
143
189
187
241
148
81
223
266
190
178
230
194
163
187
190
182
215
146
216
203
206
217
204
206
186
201
241
242
177
166
193
218
231
159
270
101
203
222
204
216
155
244
253
211
210
202
197
172
226
166
230
189
174
190
159
181
160
237
195
220
203
228
239
161
146
178
201
134
207
218
170
178
242
120
206
212
227
228
185
172
227
132
209
142
241
213
212
190
131
133
174
262
183
196
182
228
235
269
230
214
231
198
171
186
218
125
187
207
264
206
198
201
206
200
210
188
141
190
150
231
287
220
215
222
179
174
252
179
178
132
208
189
155
155
141
207
180
241
248
200
214
163
219
192
218
186
273
160
200
233
214
193
234
222
152
208
203
199
216
194
187
262
233
214
140
191
208
202
223
195
202
197
244
182
193
208
140
218
271
222
230
196
132
257
128
189
242
210
167
214
119
244
197
235
211
262
186
161
187
165
202
210
222
166
137
229
254
166
196
208
214
253
182
201
172
181
148
180
251
253
219
260
179
193
192
222
165
187
184
220
149
243
210
200
194
189
241
134
170
131
204
203
226
189
230
196
224
231
236
140
220
228
210
211
200
192
239
191
242
201
149
207
193
220
171
207
235
158
242
201
185
213
195
203
214
262
214
263
174
185
276
266
203
178
232
162
125
218
144
264
207
203
227
194
251
187
205
181
256
274
262
216
203
226
231
126
232
188
125
149
144
162
224
157
149
179
227
195
259
217
169
213
197
198
165
177
236
195
189
125
130
258
182
211
159
194
147
218
179
234
230
235
202
201
215
198
173
207
189
235
218
215
174
188
202
120
178
149
273
272
212
190
198
198
211
178
185
197
192
135
144
178
147
186
209
234
198
239
206
191
255
201
204
201
248
238
178
173
201
155
133
195
208
235
204
179
203
168
101
284
185
215
189
197
211
185
259
203
191
172
161
185
220
201
193
187
217
204
210
199
251
144
188
173
118
215
163
122
195
171
239
259
232
162
216
170
155
243
187
266
175
191
211
177
227
261
263
214
233
172
240
203
242
190
186
207
242
190
186
236
221
208
210
181
251
241
186
227
217
267
201
208
147
208
168
241
201
143
202
170
146
221
198
219
212
241
209
247
192
231
227
218
232
187
176
165
215
249
140
222
191
228
184
196
165
258
170
177
208
162
160
229
201
227
150
234
191
193
175
228
189
234
259
207
193
137
227
191
192
154
177
150
208
213
212
208
241
191
169
208
204
205
238
143
213
177
222
217
214
220
166
171
238
161
227
154
185
200
187
205
219
243
251
154
202
201
223
185
198
246
223
226
199
238
196
205
220
144
202
209
183
162
166
240
251
244
171
119
181
158
218
175
229
215
146
169
203
240
188
186
253
156
231
237
176
241
205
178
197
173
204
234
256
210
223
194
188
144
177
223
177
232
261
160
222
179
202
247
237
180
237
208
152
166
154
217
221
204
211
149
147
161
209
139
223
161
201
193
154
171
232
206
201
179
187
237
233
206
245
223
227
216
221
204
191
265
202
220
170
218
252
212
179
174
187
199
193
239
232
184
198
180
256
231
191
214
145
216
188
209
187
223
188
162
152
195
192
176
237
220
228
126
235
218
208
204
191
161
136
227
161
206
211
203
182
201
251
206
168
210
261
192
162
232
197
212
187
161
177
215
179
210
243
210
175
227
268
174
264
195
167
262
153
193
190
236
207
129
187
140
202
163
172
204
218
208
266
183
222
227
257
164
128
210
215
191
149
176
201
181
259
192
271
255
235
239
219
213
174
240
231
204
228
206
220
147
195
197
213
206
207
277
258
191
220
201
202
241
199
188
254
202
221
74
173
188
199
180
245
180
179
247
183
149
197
175
204
183
185
199
185
245
134
206
233
163
193
210
234
250
290
215
161
147
178
192
240
225
188
239
166
244
269
192
205
222
204
276
208
190
209
221
245
206
197
254
235
184
208
270
285
145
240
243
185
188
194
261
164
237
245
144
214
215
166
183
228
151
170
136
197
212
201
194
162
208
212
241
196
180
169
239
213
242
185
177
198
235
192
241
275
177
197
170
216
208
186
200
209
207
241
253
190
172
189
230
227
223
210
190
196
156
198
224
214
201
182
232
173
233
217
194
229
217
184
178
201
195
171
204
226
224
167
196
195
244
233
218
275
229
148
160
231
270
225
177
183
112
187
174
241
132
211
246
262
203
175
160
219
239
196
208
220
252
223
257
170
236
192
190
166
165
210
121
192
191
191
189
249
240
221
169
247
201
194
242
231
157
218
231
162
116
213
203
186
232
192
186
227
154
169
179
237
186
170
223
180
198
230
267
209
194
149
266
210
211
160
164
199
199
212
193
229
233
154
150
243
229
220
184
209
225
252
187
202
205
232
271
222
207
246
215
232
279
184
213
180
185
195
261
200
215
153
225
192
226
191
216
241
196
171
226
212
250
186
175
182
252
147
190
187
175
180
154
180
286
180
211
224
247
210
190
180
227
241
179
255
217
225
213
165
248
202
180
159
186
210
166
188
249
178
157
246
180
221
200
169
186
173
198
188
184
165
213
202
204
232
205
189
223
89
219
187
163
183
212
233
121
210
191
190
259
180
175
238
252
197
198
154
208
164
202
149
184
196
153
145
194
215
223
176
205
221
245
254
131
154
162
184
192
193
217
235
215
170
198
122
129
220
235
219
178
204
173
244
178
190
188
138
207
143
240
170
212
217
211
115
86
208
250
213
184
199
229
241
193
209
200
198
171
149
263
220
188
93
167
223
122
232
229
258
248
260
176
219
232
238
189
253
156
229
209
119
224
154
174
158
210
194
233
196
160
175
197
204
209
216
159
160
205
224
201
175
207
222
218
203
185
178
191
191
184
241
197
216
177
224
205
244
242
178
216
187
198
181
165
178
202
209
219
222
210
205
202
256
200
250
218
220
159
128
178
187
208
154
176
188
212
238
210
179
152
145
189
241
251
234
204
212
201
187
152
256
183
202
186
260
163
139
180
237
192
210
219
212
213
263
210
231
186
183
238
211
200
181
223
200
221
160
232
142
195
193
157
261
223
219
229
273
191
205
248
231
241
207
185
204
253
234
207
148
259
207
242
215
155
211
135
190
176
199
226
218
172
238
204
155
229
212
136
262
210
156
229
223
187
210
271
216
236
194
204
221
185
207
212
210
164
192
177
225
196
163
228
199
183
194
121
180
228
183
188
189
192
202
211
216
143
239
174
218
233
211
225
194
185
167
125
188
262
245
187
169
182
167
151
242
170
172
230
218
168
191
223
283
196
175
256
237
191
195
232
260
219
180
235
224
226
221
186
208
197
196
166
209
178
178
182
124
162
203
230
202
200
214
204
182
241
176
183
194
253
221
185
169
183
174
210
154
220
177
171
202
187
275
221
212
146
209
174
252
191
254
190
190
220
215
186
158
103
189
202
218
202
213
221
255
211
164
212
190
140
208
184
198
236
188
183
223
74
254
152
196
191
226
208
230
153
194
174
171
142
262
209
185
163
250
223
250
230
149
204
149
188
236
209
219
190
215
196
171
208
250
155
141
202
196
184
184
182
149
178
254
210
220
198
159
96
169
180
186
177
210
158
169
179
250
241
223
192
219
211
190
138
200
224
222
222
184
153
258
214
201
235
189
218
251
260
226
199
216
155
182
203
186
251
203
197
189
261
212
135
178
146
211
245
176
105
185
223
167
196
223
155
240
194
166
146
180
235
219
199
232
176
186
217
146
158
158
207
176
234
264
134
211
173
190
168
246
245
161
187
188
147
232
224
148
173
202
240
181
200
184
238
208
216
169
249
214
240
124
174
244
163
259
202
232
210
162
216
238
194
215
235
172
279
197
202
166
220
176
201
124
239
263
203
189
222
237
213
175
171
128
196
199
186
102
169
225
188
178
211
205
201
229
245
193
227
228
230
185
222
227
167
202
272
171
163
207
234
212
162
192
148
197
221
157
238
237
211
166
193
201
212
243
164
150
246
134
245
251
275
215
211
182
226
219
252
147
195
169
212
141
237
198
163
185
205
168
266
229
227
190
235
202
167
229
226
189
227
198
182
190
180
242
197
243
235
198
240
196
230
200
227
253
198
194
160
200
252
227
101
222
183
135
181
203
155
253
208
250
252
205
167
163
212
225
242
228
163
216
223
228
207
183
202
171
162
190
213
172
184
212
180
223
198
173
233
146
192
237
162
167
163
165
180
252
178
197
223
178
208
219
228
176
155
189
187
230
221
213
132
213
189
227
179
154
261
201
238
144
261
237
248
172
129
162
169
228
160
158
129
236
219
210
191
190
172
156
142
232
246
134
221
264
180
258
201
181
213
206
177
186
221
157
200
202
203
122
225
250
220
153
210
159
240
238
220
259
135
282
214
178
234
201
234
172
214
225
177
234
206
157
250
213
253
214
155
186
227
204
208
248
206
235
170
195
211
220
185
210
229
213
217
154
175
210
134
224
142
164
240
201
152
166
247
189
195
153
158
139
223
173
202
180
235
213
193
189
189
217
201
228
186
154
146
186
149
191
177
189
102
232
242
220
198
165
200
150
159
221
276
143
205
186
215
213
193
213
207
146
187
222
102
151
143
204
150
245
241
192
205
177
204
234
127
209
148
222
185
235
188
187
197
234
168
198
215
168
179
209
193
231
179
198
145
167
211
251
198
205
195
234
243
176
165
275
181
147
141
185
198
248
145
158
249
148
164
188
109
178
168
215
230
216
211
179
199
199
161
252
169
216
194
197
214
195
203
176
214
155
144
228
189
243
238
172
215
203
221
234
174
160
199
166
162
192
167
171
263
206
137
221
189
208
223
251
235
234
187
200
217
259
213
189
233
243
244
207
184
210
208
230
183
204
239
195
153
175
248
223
245
147
211
147
197
199
202
230
171
180
182
263
138
217
178
211
170
211
192
132
206
211
203
222
208
159
170
163
184
232
193
194
162
204
184
175
226
176
181
259
207
177
209
177
188
233
184
178
168
187
196
233
244
243
185
189
212
217
197
247
156
184
242
153
204
201
126
176
220
160
180
176
177
208
237
215
188
162
193
232
148
198
202
191
277
210
181
204
206
177
210
244
210
231
169
181
190
196
252
190
243
123
232
221
220
229
272
254
169
192
274
209
192
269
241
242
231
127
216
210
170
172
248
205
240
184
159
222
207
169
198
222
240
158
223
250
228
253
187
188
241
194
200
234
251
190
283
180
188
167
245
167
134
244
202
177
233
228
179
203
164
201
177
215
156
217
139
254
248
256
192
160
243
191
121
171
197
201
217
154
241
276
229
143
158
184
215
215
287
176
231
185
212
156
264
127
179
212
224
243
197
226
196
152
185
242
160
219
229
183
221
224
183
192
242
138
241
247
269
205
153
206
153
221
236
146
207
227
203
181
189
214
190
220
186
258
173
228
206
223
234
233
258
205
217
257
165
219
178
196
138
185
140
174
199
240
267
141
246
238
180
201
206
156
212
236
196
216
173
189
248
177
237
195
219
261
239
158
211
179
217
266
205
168
191
162
153
194
166
153
244
245
179
200
210
207
208
91
146
204
203
225
215
180
241
258
223
207
200
207
178
188
177
258
207
174
195
164
244
234
211
134
246
254
223
142
218
203
167
202
244
248
243
239
204
167
210
212
201
222
180
221
199
217
169
221
169
207
230
187
241
198
185
226
198
156
201
235
166
229
180
156
154
203
188
198
206
193
188
190
237
147
264
194
214
223
173
175
189
152
204
263
200
243
231
172
238
153
203
245
165
234
166
215
236
226
200
157
189
272
112
176
206
160
238
210
260
252
202
158
164
186
251
170
175
218
244
111
193
197
213
168
188
181
211
236
214
192
201
192
119
255
196
210
211
225
217
218
199
225
210
147
266
126
207
230
108
211
176
169
117
193
204
170
168
264
181
251
215
175
173
225
137
227
183
224
204
196
159
202
247
182
170
206
176
215
123
210
209
189
165
220
216
227
160
220
227
199
215
209
184
224
193
212
229
206
220
186
164
197
207
180
205
180
173
238
242
182
163
145
150
242
204
192
145
157
211
233
169
213
230
195
212
261
196
223
214
207
126
252
219
212
227
263
226
206
168
229
223
267
266
175
208
215
157
110
198
138
208
216
191
197
223
197
182
230
201
212
191
140
198
219
191
249
217
107
214
260
194
204
196
156
202
208
193
133
174
265
172
211
244
185
228
218
177
246
238
208
209
216
250
176
164
163
182
201
231
226
254
186
189
130
157
165
199
184
201
193
219
197
144
236
145
208
209
245
230
218
149
168
203
192
191
229
201
171
215
220
143
266
223
193
179
147
151
198
127
161
225
224
257
196
128
192
203
230
201
201
217
191
242
198
191
241
234
167
238
231
193
250
199
143
135
251
230
193
277
262
193
138
206
218
179
221
209
187
188
232
200
151
232
192
224
219
223
230
241
243
159
228
211
188
215
218
214
242
166
202
149
158
165
237
193
181
198
255
177
158
195
179
180
95
132
227
130
173
236
215
128
248
212
172
168
247
173
196
204
197
204
192
206
246
207
186
147
220
193
216
207
209
171
201
195
288
171
181
212
144
161
194
220
202
227
201
217
162
213
229
160
242
279
208
281
166
180
256
219
175
213
152
213
211
160
223
147
185
178
181
260
240
250
176
208
197
169
156
135
233
257
219
213
191
187
220
156
174
178
156
246
167
221
185
211
214
194
158
192
283
180
198
168
206
160
168
223
242
220
185
194
177
240
184
212
237
182
225
200
225
169
211
163
253
205
193
174
193
249
250
198
198
164
183
213
209
216
248
237
179
164
184
131
181
186
172
240
207
184
224
226
221
208
157
176
191
198
237
220
225
201
257
212
198
203
183
122
152
190
238
228
154
209
161
155
247
173
180
237
211
205
180
236
182
208
211
207
191
139
221
192
194
211
250
185
171
223
188
199
218
195
200
235
180
159
197
237
203
153
168
184
257
195
152
163
211
198
219
195
209
191
248
165
211
280
187
193
233
268
215
242
209
217
177
268
211
127
185
215
162
186
220
180
189
175
122
233
174
207
174
248
152
148
153
209
181
220
139
239
262
169
188
196
219
210
255
202
224
243
205
252
166
183
216
241
208
217
198
183
195
217
179
177
241
210
219
219
181
245
193
204
203
262
196
156
292
216
197
193
188
208
212
218
191
220
175
182
216
258
187
230
203
190
231
206
157
162
140
178
235
270
192
192
225
235
230
147
224
182
189
276
205
226
242
196
236
192
162
146
130
131
235
167
193
196
197
166
227
147
219
259
188
256
170
189
240
156
258
195
218
175
139
167
209
141
261
192
160
184
187
198
222
155
236
143
202
185
250
210
184
179
223
208
178
210
218
266
199
250
172
180
194
176
231
284
202
184
188
196
191
174
172
195
207
227
175
186
174
214
165
137
193
226
249
220
240
224
191
177
169
201
158
259
265
175
243
145
172
198
148
215
214
159
187
233
202
152
239
124
160
179
153
182
190
233
179
194
156
215
181
168
197
217
187
216
119
140
234
209
121
164
246
181
247
158
210
232
232
237
220
165
228
146
214
196
238
114
243
194
190
190
191
231
192
171
212
190
219
167
277
179
243
231
218
187
226
150
202
191
192
211
185
235
208
247
166
168
123
132
159
248
169
206
164
159
188
189
170
201
219
191
261
223
213
213
186
151
207
217
192
186
219
235
185
217
192
209
236
151
190
211
224
256
189
173
190
153
180
183
199
191
178
205
208
229
177
155
185
219
231
195
218
193
208
177
211
140
205
165
142
184
194
216
167
242
167
220
203
188
214
210
243
227
218
151
217
210
170
231
208
239
181
225
206
219
172
167
204
200
265
235
244
175
165
151
187
253
170
203
172
112
180
222
145
176
201
232
169
215
184
160
211
183
175
195
264
118
187
246
288
155
200
200
257
238
145
176
253
216
227
235
229
261
227
179
209
162
156
156
183
235
237
225
168
189
240
153
258
276
185
220
209
257
175
219
165
216
203
265
178
161
214
187
205
212
201
226
233
214
242
214
174
252
216
168
202
177
181
168
283
198
251
227
181
184
211
215
229
230
215
199
195
227
208
161
226
186
237
214
203
196
185
211
118
202
199
231
234
190
201
221
207
211
191
187
197
178
195
161
224
213
157
146
173
169
225
255
262
200
192
170
203
127
237
274
203
246
181
180
243
220
195
146
121
228
249
156
178
266
152
151
147
212
192
219
214
248
151
206
162
153
217
160
214
244
198
192
231
242
148
185
172
223
193
224
195
200
219
286
237
158
223
203
245
182
250
190
203
226
79
200
222
203
179
195
139
227
186
144
206
194
162
201
75
212
268
162
163
208
204
239
237
163
239
132
147
118
195
281
133
212
257
184
188
244
219
227
183
260
161
157
135
203
185
252
193
181
185
253
220
194
150
226
226
214
261
203
223
210
199
246
197
147
183
211
184
153
234
181
205
217
246
217
243
237
205
212
183
166
180
186
190
199
215
281
219
200
228
248
231
148
234
165
227
202
195
212
167
181
259
172
231
223
188
269
168
196
239
157
136
211
196
264
206
190
216
140
248
219
114
133
185
221
208
212
169
207
142
258
208
264
268
154
197
234
142
177
175
213
196
167
251
237
215
260
207
170
248
223
230
193
214
176
149
154
228
152
245
158
229
215
209
224
250
212
187
191
179
178
224
170
154
272
156
178
194
189
200
218
164
224
190
207
201
243
203
192
206
185
228
198
200
272
199
232
205
216
248
205
205
182
253
175
197
217
166
175
232
238
234
209
197
141
182
152
160
226
205
175
175
220
219
197
187
180
270
162
209
210
187
239
208
183
216
218
211
188
219
234
269
203
138
258
205
193
172
218
197
181
208
190
235
215
221
216
193
233
230
210
158
191
173
211
223
188
249
156
200
232
200
182
227
212
216
253
218
198
200
141
216
206
165
148
208
210
236
204
205
146
194
218
181
255
276
135
219
235
202
189
247
246
167
223
199
184
186
124
209
184
157
186
257
208
208
229
244
218
183
211
187
236
216
221
195
165
194
215
227
245
233
183
184
163
197
234
209
216
167
212
210
235
191
264
237
182
209
207
240
193
196
196
213
222
205
221
214
203
201
247
158
197
212
200
191
198
156
234
164
199
269
180
146
207
253
224
198
217
260
210
183
186
251
197
244
184
237
253
162
175
181
246
165
207
159
196
209
189
142
235
212
190
168
219
203
165
193
241
178
239
190
245
160
183
151
213
184
208
181
235
227
218
212
218
148
185
249
188
233
193
195
226
215
182
152
188
219
233
247
179
165
204
222
203
139
143
155
237
250
212
181
184
207
211
228
187
202
191
209
150
132
176
238
191
192
179
174
211
159
236
238
177
190
249
251
182
167
250
207
206
190
212
253
241
253
215
213
136
192
235
190
219
203
183
210
185
233
162
201
137
199
155
192
200
237
208
241
243
161
255
185
197
193
188
255
210
236
214
148
167
269
227
206
170
244
173
182
221
212
239
234
236
253
248
248
205
198
198
171
162
187
258
167
171
221
195
152
204
239
219
243
222
190
216
242
255
203
142
193
237
208
216
229
203
187
257
154
170
267
175
207
171
244
184
218
256
180
193
266
175
186
212
221
211
196
137
222
178
170
170
258
226
131
182
195
213
202
194
185
244
173
242
190
165
215
224
219
222
177
253
215
245
197
244
169
219
187
220
207
187
171
216
245
186
154
228
159
186
169
220
149
178
125
141
202
146
225
198
266
223
187
185
164
222
181
206
260
145
176
170
167
169
231
161
241
158
162
209
200
234
160
227
168
188
206
183
264
208
240
157
198
158
212
149
123
144
211
210
187
217
186
187
196
221
246
187
258
158
173
183
209
181
180
204
181
255
263
194
200
204
227
201
221
245
145
172
263
206
157
239
241
239
223
167
246
169
278
193
219
232
219
153
211
261
169
158
241
133
210
146
102
175
193
171
175
148
220
138
256
183
173
222
137
184
185
204
203
222
203
233
224
230
232
259
189
179
253
201
232
184
215
226
182
181
216
175
225
184
210
256
205
186
275
266
158
217
192
176
182
168
209
171
167
191
169
149
212
142
161
190
145
201
191
192
251
157
215
221
215
222
214
172
173
179
150
235
213
180
197
145
184
148
163
187
198
205
170
196
219
159
238
183
208
120
195
198
244
234
234
209
250
201
200
176
142
226
267
193
138
190
227
236
212
251
204
136
201
234
220
215
263
219
219
273
220
207
209
169
196
175
269
227
145
203
237
245
191
224
271
201
213
244
213
166
136
188
172
229
246
135
160
158
177
202
205
204
249
225
232
206
213
193
228
207
168
256
135
192
172
148
217
249
157
165
220
207
174
220
180
210
206
230
230
231
194
192
186
190
181
131
219
192
182
227
210
181
182
234
203
197
214
224
193
197
218
203
212
194
177
228
234
215
168
202
184
232
208
195
153
229
186
228
221
231
246
224
227
151
173
132
193
187
165
155
194
213
207
252
161
164
260
160
215
222
208
195
142
231
174
236
210
230
157
139
218
186
205
271
242
162
190
169
201
158
197
209
152
177
243
166
186
242
199
193
220
227
176
210
198
248
153
263
133
193
137
254
218
171
167
150
136
221
213
130
182
170
202
207
181
155
234
204
235
237
205
200
237
213
144
198
175
137
189
225
205
194
192
247
231
118
181
167
209
228
232
197
135
222
207
206
225
219
170
216
261
171
194
232
221
228
157
274
241
224
115
244
205
209
223
207
198
220
164
191
140
171
178
240
246
211
219
140
188
171
232
192
184
151
260
243
207
222
178
215
217
196
148
218
201
212
215
156
245
160
241
185
183
227
208
237
210
196
199
199
164
213
174
216
228
112
230
159
211
211
233
149
255
243
205
166
214
213
247
188
197
176
138
159
167
203
183
225
229
197
164
174
214
208
185
174
208
181
211
173
231
270
268
210
201
197
166
201
231
156
219
202
190
183
203
232
216
170
219
198
210
237
167
254
233
244
164
225
190
249
196
193
170
145
222
174
180
194
159
225
258
106
222
168
231
201
177
188
200
177
296
218
172
249
196
177
184
164
166
203
113
128
206
161
207
261
275
184
202
202
264
175
230
237
161
179
186
200
217
203
212
210
223
128
166
206
228
200
225
215
166
197
237
175
253
196
205
273
198
197
186
254
193
267
227
213
143
155
210
201
179
207
200
183
180
199
220
212
222
238
216
190
249
181
212
222
178
218
248
177
279
214
157
152
209
216
220
226
166
197
223
121
198
216
213
163
165
232
203
240
226
182
175
185
149
227
250
178
225
159
169
167
201
125
180
162
210
177
272
183
231
234
215
228
202
295
202
168
187
199
229
248
196
248
205
168
231
192
225
169
173
204
187
232
193
170
200
150
278
246
149
180
202
160
243
267
210
208
209
244
176
163
208
190
154
196
236
205
239
172
254
182
211
186
294
173
208
149
262
189
230
203
192
162
136
201
186
218
185
134
186
170
171
161
258
195
168
212
214
269
202
234
243
206
204
131
240
188
279
209
166
173
191
240
233
164
218
186
189
226
171
219
190
186
192
224
144
184
200
227
231
222
190
165
210
248
246
242
161
206
200
168
185
154
187
270
243
193
205
257
232
204
197
145
189
209
213
229
272
233
222
254
241
178
186
218
191
242
235
158
268
126
183
267
171
219
231
165
215
239
137
214
173
223
213
203
210
241
175
265
224
164
207
234
222
236
217
205
181
190
161
215
230
261
208
211
204
265
189
218
255
226
163
197
211
203
252
201
191
252
218
177
182
210
225
209
193
201
279
171
209
220
187
217
199
164
219
192
141
242
192
206
201
167
184
249
203
187
217
174
246
180
213
262
227
240
227
233
170
228
137
211
230
217
208
211
241
237
241
133
190
221
270
211
197
188
212
212
212
185
214
229
195
199
161
202
186
198
216
221
167
157
139
170
196
172
159
158
176
213
189
132
168
180
166
204
193
216
233
139
277
186
201
187
181
164
183
176
175
178
204
244
215
223
181
167
166
238
231
216
224
255
166
203
221
155
193
193
220
219
222
171
201
193
168
193
204
183
217
158
184
213
182
206
220
211
227
210
141
211
185
129
277
189
225
235
251
101
151
228
240
203
171
226
166
183
179
196
210
144
209
257
217
221
200
219
202
195
196
187
272
244
131
255
133
188
200
206
185
205
246
200
222
198
197
258
257
174
215
174
219
191
166
278
190
258
176
215
250
190
120
175
219
240
204
238
135
256
237
185
250
186
215
189
228
206
227
225
168
255
178
178
121
206
208
205
230
164
188
160
169
245
193
226
151
211
232
228
245
171
147
166
220
194
214
221
184
230
226
242
224
172
218
169
145
152
166
221
222
217
226
193
87
192
204
183
257
184
229
159
175
210
162
193
191
170
256
193
190
155
184
141
151
181
226
260
297
164
191
170
203
175
182
230
218
227
165
207
221
148
227
225
215
192
217
205
166
184
161
167
209
194
215
222
172
153
192
236
221
160
234
173
188
202
202
186
216
262
209
174
215
192
170
195
225
184
208
185
189
181
156
183
276
198
241
111
201
203
233
179
184
169
183
231
212
165
229
121
156
216
246
194
175
135
205
179
217
176
202
188
242
283
151
195
171
232
247
195
226
214
213
183
175
233
175
227
255
117
186
226
205
206
155
164
147
227
170
227
230
188
264
191
200
204
140
224
229
183
212
208
172
206
232
263
178
133
197
162
203
218
176
262
226
223
178
208
251
169
186
187
178
144
229
246
235
119
200
259
215
232
214
176
229
208
189
233
213
171
178
155
177
171
164
165
172
218
210
210
203
186
237
143
216
159
186
210
163
175
187
215
244
192
259
192
235
181
178
207
172
231
231
237
221
195
233
178
188
213
162
242
135
164
165
199
276
116
146
158
194
163
212
181
233
195
220
209
199
187
184
155
167
222
192
184
165
171
208
218
198
206
171
204
248
134
149
207
206
156
200
155
201
248
205
206
121
165
192
153
134
212
255
214
210
215
211
206
195
185
210
198
213
204
192
197
245
189
244
224
260
241
191
182
189
214
192
218
258
159
204
215
159
219
194
189
247
206
163
250
145
253
165
183
122
216
199
204
249
183
218
167
207
185
191
204
210
230
247
232
182
185
139
222
197
205
197
189
155
240
192
156
165
219
239
192
242
207
158
234
174
175
146
159
244
239
200
210
165
165
207
165
196
206
234
142
152
198
200
248
186
204
209
123
144
191
231
218
195
178
243
253
276
189
198
205
211
173
214
179
176
144
268
151
189
186
179
187
204
171
248
198
180
166
157
228
253
206
189
273
171
204
238
209
235
242
206
168
244
212
174
256
203
135
216
208
224
236
213
254
210
149
182
252
215
218
166
162
173
220
177
225
188
163
195
164
182
148
150
211
162
182
130
184
164
212
152
254
224
212
265
189
203
213
189
185
203
166
144
211
147
193
176
233
206
196
252
232
204
213
247
226
189
238
193
229
217
207
260
174
168
181
275
192
184
258
208
186
194
186
244
196
219
255
188
171
174
198
196
168
235
250
247
252
166
187
141
200
238
164
237
177
193
159
214
162
178
179
181
189
175
184
160
203
206
197
170
153
163
152
157
252
194
207
278
191
156
159
235
206
234
151
215
193
229
172
211
183
205
269
253
174
192
269
228
191
172
219
185
187
222
201
229
225
151
176
257
183
172
200
177
237
201
195
275
220
183
192
159
201
159
191
221
209
249
203
207
233
253
250
165
172
162
175
221
223
169
188
226
146
152
168
207
229
172
214
168
226
189
208
241
198
213
209
192
172
170
168
250
228
200
227
191
171
172
141
207
128
173
159
216
192
217
165
197
237
232
217
254
209
226
240
208
198
182
184
215
201
174
184
175
259
165
159
197
196
191
198
125
200
193
210
241
206
216
231
195
171
201
145
155
210
238
234
215
212
158
195
238
266
230
237
205
167
248
207
145
192
232
248
194
141
105
227
239
149
206
220
228
192
190
241
176
204
203
225
213
193
188
161
138
179
183
172
152
176
213
232
168
187
190
183
238
222
249
222
185
157
232
177
275
150
251
216
258
202
178
173
268
200
155
211
196
179
211
227
195
243
139
210
245
165
176
197
242
255
180
160
160
191
190
234
222
230
237
217
178
205
228
222
198
261
180
193
230
129
200
213
206
163
156
210
258
260
217
172
266
139
163
147
150
188
169
197
269
187
267
128
230
227
177
205
164
199
251
235
234
176
212
174
222
194
112
208
218
230
194
162
197
135
239
200
179
181
163
193
187
213
194
218
220
252
242
222
175
217
169
144
218
255
151
243
246
253
213
205
233
176
180
180
221
241
182
148
203
205
166
150
198
224
210
252
197
138
141
232
207
148
199
236
182
225
180
171
177
211
210
188
164
207
219
176
196
164
213
230
233
195
177
242
212
213
183
159
214
171
193
184
223
168
212
190
210
179
138
193
232
208
189
110
186
195
150
236
203
217
203
218
166
139
191
177
189
224
266
143
174
237
239
182
177
252
216
196
233
190
227
150
229
253
106
187
220
203
273
170
224
203
190
160
160
223
214
170
158
158
196
215
169
217
267
167
176
211
162
258
168
145
171
218
232
200
221
212
187
113
197
120
141
207
141
200
165
169
195
151
195
210
216
199
235
229
227
204
206
197
174
193
245
250
177
143
168
122
212
235
187
203
158
190
215
215
149
174
189
219
148
238
206
183
173
212
233
184
153
177
221
167
237
113
179
226
187
209
216
139
232
258
150
195
221
224
195
125
212
152
204
209
202
223
192
186
188
177
212
162
210
252
232
227
158
175
212
236
236
253
194
210
155
200
125
179
133
206
187
241
150
235
228
161
175
207
182
218
211
223
149
228
210
210
218
139
196
184
216
234
237
159
203
167
184
209
199
227
166
220
217
203
237
170
227
191
224
158
146
169
225
215
220
278
245
140
219
198
200
177
173
173
167
226
201
153
189
229
175
174
235
162
176
199
221
184
210
170
148
231
265
238
188
194
150
241
234
194
114
212
164
170
193
257
211
243
236
258
222
201
195
175
169
183
263
212
234
288
181
195
215
216
200
201
247
172
209
178
266
196
296
205
221
200
222
202
128
181
243
196
247
180
191
216
270
216
242
156
231
219
237
241
126
200
180
143
147
277
174
205
158
195
196
219
133
164
217
207
279
203
155
177
205
212
221
255
183
234
197
172
192
183
158
211
254
227
160
197
206
223
168
220
147
275
275
201
269
240
233
213
222
183
174
175
208
185
181
199
218
202
206
171
157
218
168
244
238
202
211
206
167
221
252
173
208
182
236
175
219
215
217
188
213
217
196
186
149
175
172
184
211
252
135
173
170
163
227
242
199
197
178
232
228
187
237
144
178
196
219
224
238
230
155
143
192
201
227
239
208
126
201
213
233
244
168
162
212
214
146
204
188
192
262
143
185
210
216
179
171
263
198
206
200
243
232
214
243
173
209
179
210
238
175
243
198
226
208
233
143
218
186
213
188
229
187
189
193
174
224
199
209
181
191
195
247
206
250
185
201
122
188
186
232
209
177
162
232
192
218
210
264
195
236
208
121
123
193
179
166
242
156
226
172
221
214
273
223
211
186
189
203
171
172
238
162
243
199
183
193
160
239
194
168
236
212
206
146
277
223
154
280
235
167
216
257
172
222
154
199
201
198
188
120
176
197
223
222
157
222
158
216
193
241
238
217
204
143
238
231
124
229
131
189
229
242
138
142
217
193
215
220
222
191
194
166
167
222
188
181
174
146
163
211
226
238
196
215
212
202
237
232
159
208
243
152
189
176
176
224
198
205
233
173
203
218
224
169
216
222
223
186
215
218
206
197
280
209
186
194
204
159
226
189
259
206
186
154
180
227
247
211
190
164
149
204
228
276
211
214
271
212
214
196
131
185
176
222
221
193
255
192
188
247
200
188
198
148
261
189
239
210
150
202
249
204
208
224
223
220
245
241
216
147
201
179
199
133
170
215
122
206
212
251
263
214
245
252
240
196
234
202
143
229
250
206
226
225
204
209
179
202
219
206
189
202
159
223
179
144
226
189
166
185
171
138
202
202
181
200
230
173
196
219
214
182
229
217
168
245
245
190
192
256
197
238
196
187
179
172
181
234
239
200
182
208
221
172
165
222
183
163
228
186
212
176
219
144
174
171
214
191
138
228
164
187
160
273
240
230
227
223
209
200
267
172
216
208
210
157
232
178
183
255
192
200
252
254
246
295
185
158
201
212
254
223
219
160
180
243
201
157
177
190
223
179
232
198
189
207
206
215
196
188
140
229
202
239
289
198
198
187
242
159
197
177
178
174
186
232
213
241
217
201
186
273
206
241
128
242
179
231
218
187
161
193
206
192
207
170
131
212
243
169
185
253
155
212
197
185
177
198
252
191
195
195
209
159
278
250
154
170
176
157
175
250
172
167
224
183
176
211
139
256
162
238
159
241
219
237
278
190
152
180
158
168
210
228
178
192
249
183
249
143
151
229
246
210
218
192
224
170
153
219
206
204
141
221
239
204
162
286
165
134
184
183
229
228
214
223
203
176
227
143
153
171
197
129
214
199
218
127
147
191
218
169
209
215
192
264
177
188
232
223
190
242
169
237
175
203
194
166
207
218
186
248
193
143
160
205
191
121
190
182
210
187
218
214
193
176
155
171
211
194
189
250
184
239
173
197
230
133
172
224
151
263
180
232
249
165
190
209
120
187
205
148
225
213
205
240
222
211
136
202
175
139
234
167
180
188
158
257
237
204
217
163
127
213
218
180
216
252
235
233
203
177
205
236
221
199
213
163
216
227
192
169
183
261
173
194
238
154
229
217
191
215
184
163
211
176
201
163
179
217
154
202
211
166
234
229
235
156
187
247
226
188
229
229
140
184
131
172
210
199
217
172
204
259
195
256
191
229
208
194
315
185
173
225
199
181
236
213
171
168
232
239
189
193
242
155
143
183
226
190
240
151
204
201
154
254
188
206
196
229
220
167
246
131
276
165
219
201
125
190
218
191
137
205
150
181
197
161
200
199
240
172
208
194
210
195
124
121
233
212
154
226
184
199
242
184
195
185
142
166
215
218
220
236
192
232
169
172
254
224
174
206
198
182
195
208
179
233
211
217
195
237
196
255
248
187
143
246
232
162
187
223
196
198
168
195
186
228
203
256
248
232
201
193
246
174
189
165
208
179
233
211
286
221
150
150
209
219
211
212
227
225
158
185
204
198
217
201
235
186
236
223
170
224
129
198
208
179
208
159
210
207
214
236
246
176
241
153
190
194
214
284
208
193
175
198
168
236
240
194
181
191
212
161
122
190
185
236
191
171
181
157
159
200
109
198
204
210
195
166
214
169
149
237
168
125
136
202
226
261
224
195
220
259
175
245
158
176
226
211
210
209
202
242
147
212
141
220
191
155
195
184
179
118
160
223
211
202
180
161
222
152
175
171
263
190
211
208
214
161
167
139
191
242
208
141
195
199
225
174
191
208
248
178
175
205
237
135
278
217
202
248
189
190
175
225
152
182
206
267
199
196
197
215
173
176
234
177
185
160
211
240
233
105
196
147
267
167
173
229
207
180
163
274
229
189
211
226
201
204
203
203
242
196
209
182
233
179
230
219
141
237
256
175
218
174
170
251
231
199
201
219
173
197
194
203
203
224
246
175
226
230
135
227
239
197
189
224
219
233
149
190
185
178
226
179
192
206
211
136
155
221
205
172
224
143
165
161
156
225
175
204
180
230
205
210
283
133
220
214
175
211
144
140
178
227
153
224
250
238
210
144
268
185
205
233
201
214
221
157
237
190
199
208
232
206
258
234
199
162
233
163
189
179
194
169
213
202
183
265
193
136
193
182
207
196
166
236
220
155
222
148
248
263
185
232
232
253
254
214
202
204
161
199
174
223
203
205
194
239
181
138
232
217
215
200
208
184
206
190
251
245
155
141
187
148
195
184
183
220
198
153
180
191
152
250
166
222
226
220
207
130
200
188
163
184
208
187
215
198
183
203
255
143
210
170
211
194
208
194
182
221
226
217
181
203
204
180
211
178
182
197
232
239
230
213
161
140
210
212
215
147
204
145
174
203
170
221
120
213
212
229
256
155
210
233
215
199
182
192
233
217
285
231
258
215
200
217
106
168
174
202
253
194
193
191
195
206
138
160
218
192
265
223
175
215
240
210
222
214
139
226
243
239
217
234
222
222
214
228
180
235
275
119
141
211
206
139
160
209
176
215
208
221
163
158
185
199
194
268
232
238
176
234
187
217
168
180
191
191
206
239
230
290
205
185
258
242
202
206
258
161
194
225
221
206
211
208
157
238
165
196
198
151
245
156
144
205
211
208
217
181
190
196
205
279
195
126
233
216
234
202
197
242
190
175
263
175
178
188
188
206
212
192
231
226
244
200
156
195
222
175
241
183
247
267
184
204
157
216
202
164
189
223
180
174
236
278
179
173
247
187
245
230
153
230
243
185
145
180
159
261
141
196
123
185
214
153
200
133
184
254
177
165
204
210
185
196
182
170
178
126
223
207
194
159
215
203
171
224
229
207
237
239
202
235
219
251
136
232
169
162
203
265
216
194
196
175
201
217
153
193
198
198
211
205
202
194
172
203
243
234
183
246
212
254
227
230
203
224
133
152
218
238
224
164
182
224
235
229
204
198
173
223
206
207
216
180
185
135
214
187
159
221
209
180
151
181
178
213
195
217
209
171
200
164
224
165
204
214
192
181
228
213
173
163
101
179
260
109
233
201
193
200
195
225
249
160
204
202
221
238
231
215
170
173
179
162
245
149
155
216
192
200
135
180
202
214
244
188
215
188
233
248
215
145
252
213
174
210
186
195
225
220
221
164
211
222
237
178
219
204
201
180
218
201
190
187
210
285
237
229
214
181
258
185
208
203
169
214
151
233
242
285
164
232
236
178
157
186
168
222
153
175
174
183
138
214
256
126
123
238
243
175
256
194
213
214
158
223
207
227
236
190
203
168
182
209
220
196
216
189
212
224
267
213
195
190
241
196
198
221
202
137
136
209
197
246
177
189
152
243
213
202
201
212
179
147
173
246
193
241
208
195
200
153
218
254
165
235
222
189
179
198
213
193
226
207
142
240
203
226
274
197
209
234
221
159
166
211
148
177
237
225
244
204
167
165
184
246
150
233
162
211
187
196
193
218
189
194
191
234
227
180
198
205
173
247
162
256
154
162
225
153
200
248
248
201
201
202
224
271
220
255
167
180
221
208
155
192
155
191
229
169
127
137
183
188
226
177
207
185
199
218
186
216
177
196
209
236
174
184
185
214
155
179
239
248
208
198
190
222
173
247
210
160
245
198
212
235
221
248
228
176
196
233
238
228
164
150
93
168
202
251
205
243
191
114
171
274
224
245
207
157
145
132
151
198
168
214
205
202
250
163
206
243
180
233
164
271
222
213
196
196
153
178
242
241
190
199
171
216
175
229
200
212
172
212
160
166
177
201
158
234
188
189
188
216
133
168
222
184
214
168
210
221
191
180
175
227
154
165
222
179
176
182
231
231
159
238
196
212
252
200
221
234
223
213
215
196
109
230
254
194
183
191
133
262
204
217
249
192
253
257
226
119
241
188
204
202
195
142
216
247
235
239
161
210
158
214
200
238
199
282
140
202
176
206
219
216
152
181
248
189
237
249
218
169
190
223
179
151
198
185
194
209
200
201
132
165
210
170
229
197
234
126
180
217
200
250
223
175
189
173
218
207
234
188
265
161
217
236
201
166
218
222
189
219
155
231
184
223
217
199
251
208
131
175
192
236
245
205
182
176
257
177
263
151
240
222
191
186
201
176
190
207
91
158
226
208
198
184
225
221
247
210
234
157
144
189
199
226
229
177
212
215
215
230
168
204
206
224
265
248
149
166
130
202
202
151
255
219
237
243
167
130
197
196
197
250
270
173
236
234
229
178
190
221
199
184
212
185
202
255
193
253
203
243
189
173
212
167
225
220
247
210
180
195
153
198
157
193
147
222
200
186
212
206
167
176
253
227
174
188
121
195
153
196
212
215
195
185
215
200
258
219
169
266
204
235
179
137
213
211
207
247
212
179
234
201
224
226
162
162
190
184
205
220
189
173
219
194
225
130
219
196
236
220
142
228
219
115
268
201
249
163
208
169
189
241
206
167
175
248
212
204
162
166
237
189
242
255
222
203
196
199
278
172
176
150
206
250
199
202
237
202
211
176
168
234
241
188
210
123
162
233
171
272
240
267
176
219
177
234
183
194
189
235
251
200
221
168
214
201
128
194
171
185
127
216
207
142
190
182
198
178
177
244
170
203
219
129
158
173
196
202
200
212
134
235
177
220
175
242
118
219
158
180
137
215
185
142
189
224
158
137
211
188
197
206
159
204
206
227
189
179
194
220
254
270
232
205
185
209
176
176
229
239
193
231
209
199
231
191
250
200
247
194
204
253
164
208
158
230
124
241
214
194
285
164
253
170
195
265
233
207
230
155
186
192
192
208
165
163
159
170
187
200
202
202
215
162
241
154
213
272
192
225
200
195
253
163
155
179
147
235
185
235
142
244
222
189
241
161
139
234
252
209
201
209
193
178
199
226
257
223
157
191
193
204
163
201
225
217
223
247
173
207
129
167
231
153
192
223
215
143
262
251
226
68
221
226
218
157
163
256
204
140
223
186
194
225
223
177
208
234
183
182
182
227
165
193
183
227
230
209
218
203
119
177
267
250
182
215
203
242
182
215
164
223
168
169
192
184
244
189
232
236
225
163
183
272
245
183
209
250
159
222
244
175
166
178
267
262
210
201
171
214
149
204
233
163
193
149
199
223
176
204
202
239
209
228
194
150
221
214
217
194
220
243
233
196
218
186
229
219
244
230
144
211
213
222
219
207
198
245
210
177
223
197
201
216
246
215
211
230
224
143
185
261
227
230
189
212
170
256
218
171
197
206
191
183
207
190
218
254
216
172
135
155
249
224
190
189
163
187
165
144
215
215
179
193
248
151
208
171
275
232
163
171
242
176
191
215
205
225
153
206
221
216
203
210
221
253
155
190
201
204
192
199
189
177
226
182
217
180
199
205
271
205
205
186
193
179
238
193
216
157
180
201
262
166
151
122
208
193
191
153
166
221
216
146
144
190
234
253
223
205
152
228
212
177
198
246
204
179
180
216
180
196
218
186
162
226
199
205
245
222
247
173
273
205
130
186
191
244
230
235
204
221
199
221
195
182
217
190
185
180
240
228
189
147
208
250
204
222
153
162
190
250
178
218
197
209
190
205
188
186
174
170
135
191
164
205
159
194
217
204
253
178
190
197
206
243
222
202
172
153
195
247
115
172
229
286
244
205
230
217
233
216
224
244
189
157
165
219
244
223
259
165
167
182
205
155
225
244
241
179
208
256
251
198
193
215
263
188
157
176
231
257
249
254
159
206
154
220
195
253
251
127
239
209
218
216
222
183
239
226
180
199
191
187
233
193
164
162
209
206
211
236
205
231
206
221
216
198
184
224
181
219
191
173
198
201
144
221
201
214
180
201
150
187
173
189
176
127
177
245
168
266
226
178
230
158
218
217
215
213
189
161
180
132
225
239
241
172
182
130
231
239
227
230
198
211
197
204
244
189
231
203
185
181
251
178
236
184
224
185
214
215
167
232
185
254
228
156
229
174
227
216
163
210
218
142
267
152
228
258
197
185
227
164
179
175
241
185
216
164
199
169
143
124
171
240
220
178
204
209
248
231
198
216
179
138
179
223
182
197
147
219
170
210
171
239
227
214
265
200
178
235
226
210
249
208
151
140
189
200
220
223
183
256
230
218
119
145
192
253
178
183
196
188
191
249
244
236
203
248
158
185
212
226
182
221
247
214
211
234
167
187
197
182
173
220
229
158
252
178
241
193
161
184
235
166
221
254
194
195
172
190
224
198
155
177
166
197
200
165
218
209
170
202
267
181
202
135
144
248
209
205
199
227
139
233
231
199
249
184
154
217
181
213
203
266
200
207
171
154
220
248
168
161
224
179
227
208
214
200
109
152
174
234
184
173
185
247
164
226
244
207
192
167
230
170
218
186
166
224
178
213
176
231
159
196
181
207
190
230
194
207
226
242
211
240
195
148
160
173
192
211
193
188
205
205
188
192
197
168
204
213
186
211
191
156
163
226
226
153
227
192
112
184
212
244
221
200
198
199
214
208
124
281
250
185
229
209
165
241
220
218
147
234
204
193
112
253
250
153
189
179
185
232
215
181
205
220
163
207
231
204
208
152
216
144
214
129
232
177
145
185
184
183
201
213
235
170
237
242
195
224
184
286
180
212
174
191
147
223
217
104
260
208
177
174
240
242
212
151
198
213
196
201
223
255
146
231
207
241
155
188
210
241
189
137
175
195
156
154
185
182
221
209
116
224
213
217
266
261
165
157
169
190
183
172
137
188
151
169
146
193
187
224
245
166
130
184
207
206
220
218
217
187
222
209
162
163
183
180
180
177
254
198
263
139
225
262
271
134
206
236
141
123
94
239
238
171
179
196
218
167
185
207
207
226
149
235
166
232
176
180
214
175
213
221
229
238
201
233
164
181
232
187
126
165
234
213
201
265
219
205
227
258
189
217
182
234
158
189
244
170
187
189
224
226
232
160
198
208
268
187
202
213
207
194
160
239
207
254
210
185
242
194
197
155
211
225
228
234
232
231
255
237
196
229
236
176
273
314
213
217
224
258
228
233
165
251
186
222
263
177
218
251
153
157
219
242
246
237
225
258
211
191
273
258
229
177
103
279
203
206
241
211
198
237
189
171
186
185
249
193
185
195
218
174
176
165
190
193
211
174
259
222
181
238
225
229
206
182
224
194
160
243
264
160
217
187
202
221
221
186
157
245
174
231
182
202
138
238
178
210
250
241
194
157
248
171
129
173
248
189
172
222
147
192
199
188
242
175
150
173
189
175
151
233
205
226
209
157
216
173
207
224
188
199
252
155
183
181
204
178
159
185
164
226
198
211
193
216
199
206
186
187
159
161
229
218
233
212
205
238
223
191
193
171
216
247
236
212
225
207
206
221
189
182
157
217
222
190
232
199
205
247
239
203
217
227
234
212
188
184
174
203
164
219
246
257
171
174
196
135
279
207
172
187
206
255
258
256
137
168
273
210
183
206
189
198
197
199
249
166
197
214
114
214
176
166
196
248
212
187
184
170
165
165
171
195
207
186
222
222
141
212
182
182
205
192
247
212
207
132
214
207
139
231
196
216
223
227
203
150
199
175
270
251
237
261
215
177
202
197
197
207
231
183
199
155
179
187
267
235
201
180
202
160
195
234
124
134
216
135
205
213
246
177
239
139
253
193
218
186
207
264
211
187
165
140
146
170
157
262
249
210
218
165
231
218
156
152
239
237
162
225
258
221
216
137
150
180
207
195
230
215
193
156
243
272
200
226
223
186
138
173
150
204
243
192
205
214
185
205
217
160
170
218
171
173
167
187
96
198
263
189
172
199
247
212
227
196
182
177
220
200
211
226
185
227
165
204
194
188
144
202
226
220
191
195
166
145
161
206
259
251
209
194
173
223
227
175
224
195
187
224
211
234
182
211
237
181
234
146
194
137
217
125
158
166
152
245
207
246
167
240
175
178
169
229
203
190
252
204
196
190
220
228
172
167
198
139
171
149
235
185
217
211
192
267
169
190
180
198
153
206
229
132
202
230
236
210
206
145
143
160
223
213
196
218
196
154
235
154
199
122
160
183
202
152
215
150
165
216
235
200
196
177
210
106
275
170
137
237
204
218
173
236
278
220
214
240
252
191
180
233
220
212
156
228
196
168
110
209
266
183
172
110
127
152
239
253
200
203
131
285
170
224
203
156
243
170
234
170
190
168
149
184
213
257
200
172
207
152
180
200
241
228
195
186
204
214
232
256
236
193
132
213
186
174
208
197
246
165
196
199
246
194
176
176
173
212
135
194
215
163
196
216
186
249
243
246
149
185
173
218
206
177
209
226
175
189
186
236
220
167
162
201
250
164
215
250
213
174
168
154
213
182
199
189
157
203
215
214
245
201
201
183
181
212
203
194
204
222
217
144
218
223
203
175
226
148
266
147
190
182
240
156
179
192
209
225
149
256
231
227
184
147
241
224
220
211
224
226
119
237
171
219
204
248
183
206
257
235
202
159
205
195
220
203
231
199
192
204
205
190
225
197
197
176
180
176
173
196
229
216
193
193
224
215
197
158
204
174
244
156
186
218
279
250
248
209
236
149
157
251
246
235
176
218
231
159
199
166
233
157
142
196
146
205
180
190
210
176
116
149
194
161
237
207
208
217
183
177
209
261
230
174
232
181
161
227
195
212
156
192
159
183
196
169
218
157
98
227
165
203
135
214
93
138
221
197
200
256
148
164
232
204
209
229
193
192
233
157
205
222
195
193
217
175
184
174
243
161
242
204
228
211
204
221
208
229
200
210
176
214
170
195
252
188
178
188
219
241
133
241
247
184
235
179
210
234
219
131
205
230
218
151
178
208
252
244
208
150
174
148
171
215
210
219
202
152
132
221
180
253
137
201
204
198
153
244
200
197
233
200
170
198
155
189
197
168
195
206
165
147
249
186
212
203
202
236
190
207
175
164
167
153
216
206
155
179
228
224
178
185
195
210
177
245
147
170
196
174
148
216
205
163
209
174
228
231
172
259
199
172
206
194
160
191
198
136
176
214
148
158
245
201
169
198
184
192
226
224
263
210
224
210
175
163
209
158
184
154
178
201
162
188
148
216
190
165
149
223
181
207
205
171
217
170
201
203
195
269
177
149
180
270
212
214
251
179
160
197
175
188
178
176
200
119
201
204
210
222
189
228
197
189
173
196
224
166
136
191
139
227
214
235
208
192
227
175
239
229
117
189
219
250
151
171
129
178
195
151
177
241
213
207
170
233
205
164
180
169
184
169
214
231
240
191
209
208
249
184
212
279
142
230
171
167
152
195
173
221
198
160
197
162
242
145
193
173
187
169
225
201
178
182
183
170
172
160
173
175
232
240
227
197
177
152
188
213
201
141
179
231
168
173
164
178
171
190
193
154
196
178
195
241
199
264
251
207
207
180
211
175
168
195
206
225
155
180
175
199
210
171
203
160
184
165
128
203
203
192
217
193
106
196
181
217
199
125
254
209
174
209
215
230
156
178
234
153
204
205
237
253
194
149
141
206
206
212
226
183
173
160
214
227
216
191
187
168
279
176
216
232
234
244
205
206
219
200
182
203
195
180
170
208
211
205
180
192
204
240
216
240
204
205
165
213
195
222
225
175
286
192
189
196
250
226
258
173
132
242
221
181
236
173
170
183
237
199
138
222
211
189
206
160
219
187
79
184
143
194
194
201
156
197
211
221
143
167
211
253
214
204
224
225
153
167
217
243
197
210
191
205
191
165
215
232
151
123
219
201
205
176
164
232
219
201
207
222
240
197
220
146
175
191
239
220
183
255
171
225
172
168
199
206
227
159
242
236
144
188
174
205
190
220
206
227
243
216
133
200
202
209
219
170
210
249
169
163
259
185
183
141
218
228
249
174
231
160
143
186
188
205
187
184
150
209
214
164
148
256
229
294
198
114
226
279
192
214
204
243
149
230
186
180
184
255
144
155
238
239
192
213
163
222
181
166
195
258
158
160
184
149
168
231
191
174
195
234
179
223
189
124
147
170
180
210
236
213
178
210
255
232
190
204
181
136
213
185
210
164
141
221
235
216
191
209
212
180
189
214
165
177
223
271
238
233
254
213
191
164
177
203
239
164
192
169
248
230
212
176
226
248
200
203
188
217
229
112
219
222
212
169
225
216
210
195
242
225
179
272
186
193
219
197
252
196
204
216
235
248
208
219
232
145
204
211
240
255
156
285
182
176
192
211
239
196
186
189
132
223
144
231
187
149
212
143
189
232
234
117
260
194
147
196
267
168
231
201
182
219
193
208
145
218
234
275
211
172
211
196
220
240
186
184
237
220
198
140
227
224
164
265
251
217
163
214
221
155
195
218
233
233
184
175
199
144
173
188
233
192
171
237
218
201
176
200
234
202
213
237
248
162
113
192
282
185
248
181
220
197
205
232
182
254
208
192
218
194
161
207
200
192
230
203
235
262
243
214
167
234
195
205
208
252
189
169
142
181
198
257
210
181
197
133
179
146
236
171
136
215
229
195
228
164
190
237
249
176
185
166
203
163
202
265
211
278
157
232
195
208
185
174
172
192
194
246
242
225
222
186
216
208
221
211
230
196
219
165
193
203
253
222
232
199
180
212
175
199
188
248
173
175
247
195
232
216
188
241
203
250
293
153
176
193
196
167
238
179
256
164
242
209
184
222
215
171
223
218
207
202
252
208
198
197
217
141
207
163
239
248
185
226
211
211
233
190
207
248
250
211
179
181
172
294
190
211
199
190
142
191
200
229
206
235
166
202
207
182
236
161
248
161
260
221
212
220
198
243
210
238
207
184
210
211
176
155
198
190
257
216
183
233
249
175
236
203
252
174
203
240
165
251
203
248
266
262
172
193
175
207
253
199
155
222
181
135
181
201
215
229
172
212
215
238
194
248
199
251
205
174
210
237
193
212
204
199
233
234
199
187
180
213
207
208
200
205
239
285
231
200
189
161
169
200
262
185
256
155
235
191
259
193
240
193
173
191
199
105
215
231
227
210
212
194
201
130
204
234
177
203
179
174
194
178
196
187
167
212
143
196
144
232
191
207
177
194
202
198
242
190
179
202
171
222
183
247
192
245
128
175
190
233
123
200
197
150
190
235
197
219
148
179
156
168
250
212
195
233
179
182
176
203
183
150
199
198
225
183
191
238
187
239
252
198
251
168
155
245
193
134
246
176
224
199
221
169
203
251
211
192
209
212
200
219
146
191
215
184
194
181
176
225
253
223
155
202
203
203
166
242
227
148
197
193
160
194
179
199
251
236
233
143
194
128
143
146
204
159
222
154
202
239
239
184
193
172
271
173
205
159
153
194
211
245
165
178
195
232
223
211
286
215
230
228
195
206
198
214
185
233
203
228
171
224
224
250
129
240
157
154
222
218
203
277
214
255
230
142
185
254
182
217
212
230
174
190
182
220
201
211
210
239
195
238
198
218
148
248
217
159
142
241
156
198
213
212
251
165
192
129
190
219
237
158
192
257
136
170
140
226
201
176
259
163
192
247
192
162
220
161
205
234
236
162
204
216
194
214
205
232
173
233
190
233
189
110
191
195
157
183
260
155
191
245
237
249
234
244
196
164
156
160
197
219
212
191
206
220
249
192
241
231
184
251
199
236
121
151
229
173
164
202
154
222
232
219
215
177
205
219
274
156
190
210
255
225
235
160
205
217
275
200
201
223
207
216
155
134
182
212
173
188
217
240
233
213
251
159
213
202
226
208
193
239
210
245
217
209
184
223
254
187
193
194
230
194
262
199
232
274
186
119
191
238
240
233
180
185
280
253
170
195
238
229
210
244
139
237
214
249
195
175
225
227
157
164
195
205
180
180
167
224
217
168
185
209
252
226
231
179
227
203
224
221
251
189
231
227
200
174
159
167
223
220
214
195
174
174
138
194
212
275
231
248
201
166
210
181
234
179
203
192
167
265
186
266
219
203
204
214
179
211
209
225
256
194
232
193
171
160
178
223
242
231
188
244
104
210
218
222
220
106
159
231
188
205
200
153
227
211
158
214
184
206
225
178
162
185
194
220
193
240
209
233
216
218
267
118
239
145
134
205
200
204
234
209
216
221
199
225
200
217
222
165
282
158
257
187
204
148
246
164
156
220
235
184
196
219
183
148
144
204
161
101
191
264
212
184
212
142
204
224
219
202
217
194
169
155
174
224
134
244
229
269
140
197
216
193
177
209
191
203
249
214
241
239
216
201
218
239
165
211
209
178
234
196
147
220
170
213
216
170
175
234
170
212
201
143
186
180
224
210
197
233
257
238
207
162
206
169
182
118
197
161
204
234
249
168
187
237
162
259
169
219
156
175
151
152
221
208
196
218
265
241
182
166
143
190
156
221
177
200
187
205
180
223
224
234
154
203
224
232
150
186
219
221
193
219
237
197
200
191
154
249
227
188
227
146
177
183
127
166
226
192
96
213
184
219
173
215
226
227
156
198
206
265
223
198
184
220
203
187
255
228
134
252
206
244
214
229
247
201
226
236
243
218
166
180
167
194
236
190
171
166
189
264
221
208
203
134
237
263
239
198
178
200
174
268
191
192
252
189
165
174
240
219
174
176
229
210
222
185
206
255
202
254
234
158
202
172
193
172
154
213
196
228
229
228
159
215
213
229
139
225
210
199
251
213
164
153
172
198
189
148
190
207
193
229
188
193
149
189
257
124
200
151
213
185
200
283
182
253
211
202
204
174
241
216
189
178
171
228
124
164
246
207
193
166
227
207
150
155
188
224
177
198
233
235
192
233
168
192
234
166
187
171
246
175
190
170
246
207
211
200
237
176
220
210
217
250
266
239
227
188
181
188
277
261
180
218
137
258
177
258
242
197
221
172
203
249
246
147
211
204
257
230
164
238
233
267
153
158
196
190
221
255
192
244
164
233
216
244
208
237
235
178
132
175
241
255
242
177
165
195
223
243
232
194
205
226
251
260
199
139
209
204
188
165
179
184
190
229
232
226
217
143
160
189
176
229
231
244
198
179
220
147
205
214
205
179
203
232
201
197
176
161
237
130
183
156
231
159
200
198
171
216
159
238
159
148
179
178
256
248
187
176
168
239
235
196
182
193
177
212
226
184
140
212
136
212
208
208
213
248
245
184
198
200
213
228
274
193
181
226
200
254
227
236
169
166
153
226
239
174
182
213
239
197
213
256
153
212
266
225
254
240
203
211
204
178
233
215
201
202
233
239
247
219
186
218
136
191
197
128
247
229
171
199
180
167
202
168
200
186
259
202
251
231
198
213
206
222
181
195
185
193
191
199
218
150
209
214
242
261
261
181
212
242
192
195
247
154
199
205
226
201
200
247
128
158
206
260
202
219
218
207
132
233
206
225
271
156
257
193
243
186
224
190
211
198
217
224
244
195
210
215
211
161
213
153
151
202
220
185
200
207
126
220
221
251
196
174
183
195
255
212
198
240
265
220
207
206
208
209
227
185
210
234
169
180
159
236
256
184
156
158
174
203
176
187
220
169
217
204
229
197
91
217
227
190
140
246
255
203
227
149
220
176
196
217
232
196
192
159
181
165
242
212
243
126
185
200
157
222
216
211
154
174
172
215
181
187
128
220
140
180
214
243
254
186
203
241
182
220
181
237
242
188
153
182
180
224
252
171
226
209
190
192
230
212
190
206
237
192
223
231
245
248
248
215
179
186
202
176
178
222
213
226
227
237
211
209
190
231
213
165
207
209
238
163
212
176
245
152
193
157
198
260
159
178
209
210
253
178
160
229
194
221
184
226
212
262
216
127
208
202
209
183
196
224
205
257
240
216
256
219
255
158
203
226
148
232
227
226
215
236
171
232
221
231
169
196
204
145
232
216
256
223
213
166
138
231
256
230
176
191
185
186
268
229
220
243
171
213
163
123
236
201
221
144
209
226
221
224
231
213
162
211
190
177
138
163
210
224
221
181
202
210
176
178
221
229
234
177
218
209
239
177
226
174
227
230
223
218
209
177
193
200
124
218
176
245
188
191
217
182
227
212
193
175
261
192
160
133
247
208
200
184
133
259
212
204
170
168
211
141
175
202
204
164
228
197
183
230
225
193
228
194
206
229
178
169
222
169
166
172
214
173
205
171
221
216
257
213
251
190
158
262
175
164
201
186
203
243
217
242
125
206
135
192
248
197
201
213
207
198
156
217
185
185
240
196
213
140
169
202
232
237
148
192
221
175
186
269
243
146
170
180
237
236
196
211
203
123
184
262
211
232
291
270
229
154
180
190
234
194
146
210
196
164
197
207
225
163
143
184
178
225
197
132
143
194
204
201
230
162
176
234
168
172
202
220
186
145
163
199
165
216
212
159
198
203
166
217
193
220
167
194
162
213
226
214
177
225
204
270
206
211
243
170
252
205
205
244
202
209
221
181
174
202
220
189
301
102
178
191
227
246
162
206
210
183
208
201
152
214
221
191
167
243
224
137
206
211
150
214
192
214
252
196
214
230
226
162
171
277
195
178
232
122
160
181
214
211
224
280
268
165
223
232
215
187
197
169
212
210
158
207
190
146
141
201
198
178
209
234
264
180
168
180
162
216
170
275
175
239
175
186
230
209
279
256
199
116
164
222
260
168
211
236
153
234
187
139
183
205
215
208
147
151
201
247
257
161
178
216
166
215
196
237
239
192
217
199
190
165
164
192
152
204
229
173
245
139
200
137
216
211
236
198
161
179
220
220
193
249
204
183
189
195
229
253
206
212
208
166
232
208
237
178
139
205
244
189
208
118
210
245
262
178
188
175
222
192
173
149
154
223
228
253
244
125
199
229
206
196
206
144
120
157
188
180
212
163
221
175
146
166
179
202
194
181
245
129
234
170
161
212
146
235
198
201
253
122
137
240
214
224
166
183
198
192
211
217
207
184
189
217
171
228
171
169
189
211
205
237
232
259
160
212
195
236
265
204
196
184
142
212
252
171
127
218
183
192
189
211
275
159
238
194
212
237
213
198
205
201
235
208
188
195
249
228
174
238
184
198
164
128
261
208
204
151
190
173
200
257
117
234
175
166
216
243
154
181
264
233
263
210
242
152
226
197
233
146
218
173
210
245
148
222
161
221
224
167
140
189
186
157
209
174
230
206
171
178
166
204
224
171
218
200
158
232
191
171
242
208
217
183
187
160
169
214
261
180
215
202
194
193
191
228
181
234
240
179
233
264
161
255
230
263
194
197
204
210
164
154
225
208
221
210
228
164
205
257
157
211
128
156
168
186
255
273
204
259
208
203
205
152
214
183
226
223
168
138
266
182
180
150
236
212
217
230
250
191
178
238
189
155
219
184
200
183
187
209
232
197
201
166
229
186
173
184
224
158
231
220
191
233
208
203
212
202
201
219
211
251
252
163
194
190
225
230
148
164
237
206
167
188
180
244
162
205
239
214
151
199
229
189
225
178
222
274
230
175
196
197
243
231
143
175
195
202
256
180
160
176
208
167
165
240
186
172
196
193
204
177
221
181
231
215
212
147
225
126
259
152
153
161
239
199
225
242
206
205
247
151
243
195
117
155
241
215
251
199
153
212
277
261
229
177
170
189
229
197
218
228
203
211
157
172
203
176
194
227
127
203
192
133
183
238
217
134
195
124
172
156
192
196
177
186
253
162
240
175
221
176
129
154
179
184
181
190
160
148
233
213
242
232
198
181
232
167
172
268
215
190
189
189
160
182
179
232
242
224
243
226
215
216
227
165
145
184
213
191
185
243
241
181
243
145
207
192
241
190
225
210
204
232
251
176
226
199
150
204
203
142
217
170
209
200
197
162
238
161
206
239
198
217
188
183
157
181
184
241
202
185
186
282
219
230
226
233
226
210
223
204
174
289
108
196
196
172
188
188
218
245
217
180
237
208
208
171
217
221
214
202
164
233
186
201
206
208
196
158
159
205
151
191
222
260
243
226
171
221
214
233
233
226
134
240
120
230
247
175
209
229
187
192
165
235
194
192
203
202
204
191
196
210
207
260
252
245
183
222
247
176
181
183
216
216
138
209
187
185
173
166
159
122
183
196
199
232
250
221
146
123
229
222
205
184
251
202
190
230
130
169
157
140
180
180
144
137
156
208
155
219
202
201
205
125
218
203
236
208
205
192
176
135
210
170
179
160
221
204
165
229
208
131
156
171
195
165
176
195
215
186
222
204
142
160
207
219
209
199
130
248
217
201
189
196
148
236
210
221
157
189
189
208
250
217
128
235
232
212
133
151
190
185
185
256
205
212
191
208
172
215
192
175
189
121
222
180
195
226
192
176
197
220
183
205
254
223
195
259
227
231
211
197
278
229
205
211
165
184
180
209
212
203
212
213
148
228
147
155
195
192
210
170
215
261
237
142
119
171
188
269
207
211
221
182
207
196
215
227
184
156
209
169
154
289
241
210
184
198
223
208
225
226
251
197
187
167
219
198
220
168
215
226
234
255
170
217
236
202
201
256
175
214
223
219
169
180
177
195
170
236
159
169
191
216
145
206
199
211
209
178
195
225
148
180
160
237
213
248
186
231
211
202
199
201
185
233
223
202
217
172
220
167
204
211
219
209
207
190
80
154
194
213
218
242
221
192
135
235
193
211
211
236
208
198
200
238
171
183
171
239
149
188
240
241
137
162
228
190
210
113
210
221
222
233
196
229
197
159
150
219
193
155
175
218
235
189
235
140
161
198
226
145
187
215
190
184
129
197
182
143
237
236
227
181
178
214
159
182
206
164
232
207
256
155
159
209
207
198
208
173
194
196
223
154
206
204
189
213
184
212
213
240
194
115
226
248
206
239
161
270
260
194
189
169
203
237
195
201
179
131
196
211
183
204
203
201
201
222
198
158
235
247
189
193
182
201
224
251
159
235
185
214
215
182
111
238
172
228
251
139
247
158
198
183
195
198
185
263
171
139
232
231
180
218
214
192
274
173
125
194
205
208
230
183
207
231
161
194
218
178
198
157
172
125
218
202
208
144
222
190
230
217
163
210
163
222
232
194
221
207
239
196
192
208
219
129
177
199
241
223
183
239
184
226
186
262
158
230
192
156
187
195
265
240
279
176
184
206
222
208
185
179
185
228
276
222
155
142
205
159
185
193
271
214
167
199
241
201
202
198
161
263
170
223
204
225
154
165
196
211
167
176
181
232
206
176
196
221
190
207
212
248
200
210
158
207
239
214
179
235
222
227
221
207
217
153
171
219
183
201
202
201
155
231
200
228
101
182
217
232
226
154
252
207
171
199
184
180
222
202
165
205
172
221
216
212
207
187
200
199
205
272
181
230
187
184
192
190
190
239
190
203
247
161
261
206
193
116
160
210
205
200
176
163
181
224
194
237
258
209
173
232
219
149
218
193
227
247
229
134
253
134
188
160
203
224
231
207
250
147
228
228
226
235
271
163
244
184
226
246
168
200
211
211
228
208
211
212
266
176
208
249
252
205
216
236
210
223
184
202
213
235
229
196
139
201
232
179
220
275
261
233
123
181
239
180
213
242
139
235
141
252
181
225
217
179
185
235
226
145
177
165
136
183
223
217
206
241
240
102
227
156
239
225
257
225
205
163
251
211
203
236
217
221
202
199
208
205
180
207
100
136
180
243
190
247
213
179
187
153
166
177
219
192
168
205
210
179
161
183
232
137
147
204
194
218
180
119
153
253
270
186
201
209
184
170
191
160
211
207
192
215
273
219
118
187
155
176
197
187
117
214
284
198
254
231
176
182
212
170
137
193
273
243
151
174
179
157
205
250
211
212
151
233
180
172
281
269
153
195
178
231
277
187
192
179
197
201
205
138
180
210
231
189
205
184
212
223
212
253
193
161
202
201
216
177
191
218
192
215
259
158
270
122
221
168
197
163
237
241
133
241
127
176
226
213
184
240
178
177
210
215
162
162
241
205
210
231
204
194
223
165
187
186
171
201
214
162
275
218
226
192
165
223
175
218
242
213
240
159
142
198
239
218
166
183
140
167
237
235
165
237
159
168
209
171
218
253
127
178
149
204
176
182
212
179
182
187
191
234
166
238
217
237
208
200
207
161
259
247
223
274
247
243
187
272
180
220
164
200
171
159
140
210
242
206
199
192
193
224
165
192
202
190
209
219
210
181
158
177
199
176
166
238
147
199
184
156
175
139
150
161
238
202
187
231
256
188
208
135
184
272
207
198
120
182
193
218
197
163
174
153
212
187
205
191
144
181
227
232
182
208
198
188
180
139
212
220
193
221
241
162
209
165
202
191
241
139
235
211
197
291
189
255
150
223
243
135
232
172
223
194
170
221
183
161
180
197
224
170
203
181
259
215
189
184
254
187
201
228
198
228
215
209
250
187
223
225
186
188
237
170
168
189
229
217
166
211
186
206
109
247
218
213
143
206
237
180
255
160
200
239
105
180
137
198
161
196
192
201
259
231
183
176
172
230
259
165
237
197
185
181
248
166
159
213
192
196
182
257
193
232
182
249
250
186
178
211
221
227
215
222
218
172
192
201
203
192
236
210
203
185
237
193
209
262
207
149
117
265
235
192
184
178
226
208
223
92
145
205
165
315
217
200
204
129
207
225
212
226
196
186
226
214
121
190
190
195
256
214
192
194
239
225
189
192
226
144
210
180
101
216
223
216
238
201
217
192
233
214
184
162
217
135
240
238
201
185
205
164
217
151
257
175
194
186
196
204
187
185
232
195
125
219
195
216
189
182
232
211
252
249
208
189
243
256
213
224
222
181
141
193
228
222
204
179
183
118
184
193
154
249
202
204
252
214
171
138
152
161
250
129
234
197
215
191
173
163
206
209
186
193
205
114
262
202
172
179
181
215
210
262
233
187
235
166
292
217
188
210
244
171
214
245
232
120
196
168
195
129
228
248
157
225
232
267
191
261
202
172
253
144
143
229
193
222
198
174
193
248
193
212
157
247
166
169
272
206
197
183
215
220
154
205
186
214
198
236
205
215
154
212
211
206
161
200
220
156
155
175
220
183
220
187
188
205
147
157
210
260
202
231
184
189
181
215
247
189
274
172
235
180
226
192
235
209
213
158
148
171
223
163
241
144
226
168
226
251
143
223
185
217
220
179
155
181
227
173
216
265
251
245
195
219
186
209
255
188
186
193
208
106
116
227
157
210
191
203
226
205
189
172
272
225
179
261
260
257
211
120
215
209
210
221
190
209
223
148
185
179
217
252
185
117
190
176
174
210
201
209
179
178
221
202
194
168
239
192
183
140
122
224
185
145
206
186
208
210
260
217
127
222
175
212
164
225
214
189
256
166
247
223
227
130
217
197
203
174
226
176
164
212
208
230
234
216
215
215
183
141
191
218
188
194
182
196
171
287
206
148
159
203
188
163
214
202
139
205
165
182
172
156
230
246
161
183
132
201
208
206
202
139
222
257
261
191
240
191
227
235
231
227
103
218
181
155
222
207
213
221
208
255
234
169
224
193
142
230
172
227
173
221
236
205
202
126
151
158
139
188
227
185
200
230
209
222
199
228
188
217
172
245
270
152
246
187
242
220
216
183
225
221
242
232
175
250
164
190
179
194
189
150
253
203
180
169
185
173
232
210
172
221
212
197
178
199
222
197
157
211
195
255
200
155
168
273
111
208
225
182
135
214
159
148
259
215
245
150
216
221
202
224
217
187
172
211
157
186
227
192
227
244
240
131
218
179
189
172
240
191
179
217
224
193
181
184
167
192
193
227
200
185
246
153
195
230
256
205
208
248
238
168
255
196
227
281
234
243
194
207
217
193
207
175
269
219
133
164
181
200
176
165
149
205
175
195
218
177
248
205
204
188
180
165
199
207
141
221
214
238
191
153
249
177
226
140
186
233
205
133
160
234
202
215
207
166
230
118
219
205
174
196
181
212
178
189
194
247
274
213
225
222
161
218
201
189
198
194
244
120
200
194
213
165
206
120
193
232
155
250
231
239
210
189
198
178
207
256
173
236
212
181
219
273
191
153
224
235
212
198
208
167
191
234
191
188
167
128
201
252
217
153
227
194
179
172
208
191
226
197
221
219
150
154
161
105
169
220
190
220
226
191
231
145
163
211
208
180
188
218
233
227
212
239
202
191
180
204
184
230
250
238
236
179
209
255
206
167
216
235
184
249
186
217
108
221
187
234
224
169
203
209
191
205
96
209
222
189
234
205
216
154
217
219
212
189
191
231
259
176
195
216
214
231
221
217
201
216
234
214
177
208
199
217
211
222
197
206
215
210
157
239
217
213
173
244
249
251
205
187
280
232
227
186
134
202
217
157
241
180
227
210
203
259
229
212
180
217
199
197
230
187
204
226
238
146
235
210
208
232
161
200
202
223
189
246
196
162
174
169
218
239
169
165
227
217
219
143
212
227
150
217
153
196
219
229
196
242
217
214
236
167
224
198
211
232
199
234
193
208
234
211
225
206
242
240
218
162
213
156
187
238
183
229
226
219
200
238
189
149
225
251
198
237
207
157
262
228
168
181
191
244
189
213
159
195
134
181
157
167
237
245
154
199
78
205
222
186
231
169
196
215
214
206
170
221
220
233
223
220
211
135
218
217
164
192
177
248
202
274
191
166
175
207
235
187
207
206
189
194
220
170
249
202
177
176
149
239
176
192
204
235
188
146
205
192
170
212
220
245
188
204
209
237
168
193
181
230
241
181
185
263
145
221
178
199
214
191
186
187
211
173
191
156
176
142
236
162
238
144
218
274
216
136
235
140
95
231
168
207
196
259
219
215
183
169
180
175
226
201
142
178
186
177
217
196
137
222
179
198
267
225
201
171
187
162
161
248
189
178
233
254
243
198
231
154
178
241
220
219
253
211
243
209
213
207
156
172
207
273
254
188
186
223
177
172
157
219
209
193
223
158
220
213
151
203
186
199
180
199
238
198
275
190
208
215
216
183
204
272
248
147
175
234
139
225
200
186
214
194
193
204
178
215
245
233
148
224
196
216
174
229
169
209
223
212
163
210
205
200
206
105
194
133
176
216
228
213
167
196
199
178
279
192
188
195
106
161
141
204
229
148
215
248
209
245
170
203
217
250
235
199
173
196
168
158
148
161
208
133
209
207
205
204
176
159
184
186
268
243
166
238
217
257
211
180
177
223
172
189
175
188
211
146
247
248
165
197
219
278
197
176
217
174
239
251
197
166
195
172
143
180
222
149
221
189
266
185
205
227
255
265
177
184
198
194
173
252
219
224
208
214
234
184
250
182
217
181
193
194
200
207
177
156
196
202
237
150
168
159
140
208
246
221
189
191
218
166
129
224
205
238
149
194
197
212
177
193
241
221
232
182
210
151
194
218
160
188
216
226
201
139
277
219
188
284
207
210
231
211
188
124
196
165
164
189
204
189
204
199
179
152
182
190
141
210
184
190
164
203
193
246
192
142
200
194
231
232
229
177
114
228
236
170
207
186
199
209
216
202
167
205
236
209
187
209
209
240
200
198
208
229
168
265
205
179
222
204
227
190
204
196
130
214
202
178
165
245
222
196
218
165
169
183
123
188
189
256
144
202
243
253
178
175
214
222
241
198
195
206
168
188
227
251
253
213
240
171
193
151
216
179
154
191
263
245
137
236
147
174
216
209
177
177
191
125
247
168
234
133
191
186
198
188
248
188
158
183
169
226
171
174
210
142
208
249
215
166
131
241
196
198
212
236
221
143
156
169
205
186
248
187
107
255
187
175
192
205
246
194
179
202
238
174
199
179
234
177
188
193
218
220
189
201
140
108
167
170
251
193
209
159
203
235
156
166
223
171
271
247
238
205
201
234
177
190
197
191
212
247
218
217
162
202
237
196
246
197
171
137
257
190
192
184
210
202
215
155
153
237
252
183
265
205
244
235
189
174
232
252
234
199
179
227
219
206
182
187
200
224
180
217
233
237
176
240
196
192
233
157
228
228
237
182
173
154
210
219
206
204
172
212
198
202
246
194
206
211
227
243
273
184
249
194
189
253
206
204
170
217
278
179
203
247
250
145
244
221
166
157
248
193
213
210
230
235
165
191
200
179
185
156
220
218
123
274
145
235
180
182
190
77
216
229
295
206
179
303
261
172
171
214
253
192
213
226
205
178
199
173
199
221
220
213
166
145
177
164
203
172
154
205
202
241
185
257
129
145
150
172
259
129
217
237
217
158
244
230
177
188
160
195
182
232
201
260
169
226
221
183
246
216
229
140
214
233
142
193
262
204
209
242
231
237
203
226
207
159
151
227
165
214
232
212
262
245
217
192
257
126
238
211
117
200
191
231
220
226
227
158
170
216
158
188
175
243
156
204
229
175
194
155
225
177
306
180
276
231
208
208
189
173
168
223
229
240
138
192
185
216
221
183
228
177
212
199
227
226
150
214
172
195
154
200
205
236
128
174
197
229
246
204
217
171
239
216
172
116
214
192
226
229
187
183
231
182
169
189
223
188
200
183
246
259
185
217
201
165
213
174
215
200
215
210
124
256
259
170
192
187
201
189
191
170
185
197
262
185
145
198
166
256
137
240
193
263
234
153
197
148
238
182
145
151
219
246
198
211
227
192
205
222
187
228
259
202
273
205
197
204
214
215
157
258
207
257
241
194
181
244
217
121
206
218
274
201
227
172
219
140
225
250
232
228
296
185
191
138
171
205
231
220
230
198
207
131
217
220
199
200
176
151
164
230
189
192
179
167
180
123
209
243
140
241
177
165
191
203
185
170
208
203
163
145
208
140
214
185
220
184
213
219
216
207
207
152
207
233
151
181
239
215
168
211
212
166
182
199
154
213
226
153
195
266
118
219
185
162
213
241
271
174
139
200
235
164
239
207
167
192
172
224
158
184
179
213
182
213
186
126
263
173
250
207
215
282
197
224
155
142
171
225
186
220
227
151
187
256
201
193
186
141
209
228
220
231
222
226
120
181
259
228
236
220
208
200
231
199
229
197
199
169
175
193
163
260
239
248
180
151
187
190
150
212
185
202
235
194
192
196
199
144
175
177
128
226
142
252
192
185
181
205
207
220
135
185
165
189
262
220
204
149
247
257
129
172
216
181
177
225
211
182
214
185
193
201
180
186
213
203
216
208
184
242
154
171
196
196
236
191
203
176
217
256
173
265
237
237
119
191
199
197
186
196
222
167
189
188
222
210
253
168
189
161
177
218
211
216
206
225
183
152
196
264
230
191
202
144
205
169
172
170
275
263
230
246
189
214
243
250
219
244
241
257
228
188
210
210
226
163
184
233
217
181
158
207
270
132
240
198
178
161
199
254
189
180
225
139
261
165
174
166
220
187
166
242
203
229
259
188
146
252
190
253
136
142
231
190
162
220
167
220
217
146
167
149
141
204
146
170
204
224
230
201
274
182
187
224
225
167
235
226
259
262
179
256
192
200
202
155
220
175
130
190
180
168
132
257
214
177
178
224
190
255
264
165
213
235
178
247
249
206
145
213
198
215
139
167
174
208
175
243
252
186
195
211
196
237
223
174
157
210
225
147
248
230
202
163
172
173
203
232
211
221
251
217
174
179
250
165
206
174
147
150
232
201
198
178
191
180
217
213
176
214
214
219
204
215
215
235
193
210
195
200
217
171
224
225
215
211
246
210
245
171
140
179
188
155
194
161
193
230
184
166
182
199
258
213
243
183
193
265
215
210
184
185
255
223
184
167
202
156
160
141
218
216
135
198
136
170
157
169
230
203
198
233
223
221
124
215
199
224
226
202
223
251
215
218
225
171
231
217
202
196
225
229
149
159
185
178
227
207
117
308
226
172
171
158
198
164
244
193
169
231
125
170
168
212
228
224
205
196
187
184
217
204
205
248
231
238
197
220
233
221
203
205
276
239
217
178
234
210
232
167
193
185
111
215
158
188
221
185
109
143
169
109
199
197
195
191
169
201
180
156
229
195
203
247
183
206
227
202
219
175
212
178
241
228
214
226
211
159
182
188
219
229
254
228
167
181
232
195
197
215
254
191
181
191
189
205
252
176
240
172
174
210
223
230
199
214
213
224
251
233
149
181
180
238
243
209
221
217
223
197
215
214
188
141
170
269
229
220
242
205
230
247
151
157
213
232
220
199
222
194
207
208
203
182
228
124
150
184
195
211
189
179
222
205
164
195
240
214
223
166
145
218
222
268
211
171
221
235
210
183
188
128
208
182
187
197
171
167
148
174
235
141
195
180
201
247
210
202
191
243
215
202
250
243
162
215
177
189
180
214
146
178
214
217
199
246
165
135
185
218
211
195
262
201
234
241
232
161
258
190
198
178
208
157
230
218
208
133
167
223
254
168
193
235
228
196
149
196
211
168
205
191
174
162
218
229
230
191
145
186
164
223
228
152
240
146
223
214
225
244
211
244
156
217
187
216
210
241
234
210
217
203
226
178
189
195
198
182
161
226
196
173
222
153
208
187
234
223
167
204
226
172
270
135
214
213
219
212
216
248
186
135
226
158
201
181
282
165
141
200
227
257
221
171
205
220
256
170
120
189
275
199
182
212
215
196
198
270
202
261
203
195
177
148
180
255
237
253
236
204
183
191
233
140
212
248
214
204
128
156
219
149
190
189
192
194
176
194
203
207
188
137
257
172
200
235
196
172
161
183
260
219
120
211
297
204
217
215
234
262
181
250
157
213
172
191
188
282
212
246
166
190
261
189
209
177
238
245
130
193
225
234
252
202
225
180
173
206
194
211
171
140
242
188
176
226
177
207
191
206
199
253
201
148
214
161
211
209
162
245
164
163
229
194
127
191
205
187
170
210
215
238
194
187
248
177
249
201
239
201
200
210
244
216
177
160
193
219
228
231
215
179
170
242
181
132
180
171
215
239
103
176
192
210
268
214
202
168
222
292
203
236
208
248
195
230
220
179
146
206
228
187
179
189
238
227
188
174
162
221
248
183
206
174
197
248
227
204
208
238
176
194
199
234
210
240
156
179
205
154
223
142
197
193
197
205
238
175
163
220
242
189
200
182
223
181
180
94
218
207
185
165
160
203
166
173
207
192
216
181
148
219
220
164
245
220
181
213
191
162
212
139
172
198
148
155
207
146
187
198
168
232
245
177
131
233
201
185
209
161
241
220
216
230
178
212
217
234
212
194
180
215
210
176
255
199
214
184
179
209
177
184
199
232
227
250
204
264
184
214
235
180
224
196
142
183
224
165
257
267
195
243
177
166
182
212
249
190
203
218
207
176
194
200
252
167
189
201
219
146
216
123
148
231
199
187
177
224
278
211
168
181
222
232
164
174
172
167
156
195
193
221
151
205
157
175
214
181
198
181
199
260
136
182
171
156
187
221
183
103
238
222
160
217
203
204
228
192
264
160
162
186
251
215
155
204
184
160
157
258
200
256
199
139
178
192
171
186
197
164
267
219
203
155
200
167
173
223
193
162
161
189
209
185
220
263
161
232
213
172
195
205
146
119
234
155
181
210
205
234
176
143
196
171
157
229
193
120
165
181
145
232
203
155
196
196
177
245
201
200
179
208
215
182
209
183
188
228
269
145
229
194
193
246
160
196
153
178
151
170
181
229
188
192
174
238
203
211
158
221
229
212
257
206
243
207
191
236
192
162
183
224
218
201
216
222
218
235
217
231
221
184
172
244
203
127
195
174
179
204
213
265
200
191
220
215
213
214
185
176
141
212
272
184
110
153
171
200
198
189
251
207
196
203
235
184
226
179
184
198
193
176
147
237
139
222
199
185
211
225
217
144
216
270
192
157
172
293
221
234
164
189
195
240
205
201
220
256
200
164
191
161
247
161
262
166
147
217
241
217
153
133
266
180
180
234
152
204
168
214
183
236
178
208
183
218
122
171
188
123
183
243
179
129
205
295
198
207
191
255
246
109
212
224
184
154
201
187
228
180
219
140
220
228
232
207
216
170
245
142
174
178
217
217
177
215
224
239
183
176
184
207
209
196
251
184
183
134
214
289
189
260
186
177
186
213
170
213
177
204
145
259
164
210
268
216
188
228
249
191
230
188
222
212
110
178
194
242
236
187
167
200
170
218
210
200
205
161
216
236
153
223
174
235
192
192
231
181
162
156
204
250
127
187
189
219
284
238
159
210
211
210
191
255
220
176
170
193
215
215
244
218
177
160
213
211
226
244
230
214
226
230
251
211
248
235
155
144
211
223
209
210
256
146
179
218
153
193
193
227
158
174
189
140
209
212
215
157
166
173
209
193
195
222
233
171
239
243
188
231
225
215
199
181
243
192
163
196
242
198
204
132
171
209
225
230
227
218
214
169
168
258
220
204
217
267
176
195
184
205
199
233
186
212
207
240
214
166
225
225
233
204
181
250
143
165
246
193
153
146
140
201
173
173
204
223
180
216
167
245
239
191
242
262
224
125
165
136
190
202
234
179
228
213
249
232
210
202
217
160
165
205
200
169
199
184
163
159
204
132
271
247
164
249
243
211
184
245
216
234
190
202
223
178
282
213
265
201
198
210
245
218
211
200
182
160
207
152
189
210
168
207
212
197
240
163
208
175
208
187
233
153
168
187
249
235
263
207
176
136
205
232
189
190
172
226
211
172
199
179
162
156
195
190
219
223
159
233
237
126
195
223
203
243
253
200
221
158
212
219
208
225
226
235
187
254
209
184
238
219
242
211
206
188
206
211
249
218
234
165
191
238
227
201
243
167
276
167
220
222
203
190
218
227
110
163
122
193
206
194
203
223
216
216
199
219
183
242
167
197
190
183
283
213
229
230
206
240
189
167
202
135
229
142
236
206
201
191
211
172
223
190
226
124
164
292
230
186
262
238
208
240
217
91
205
196
239
213
199
151
176
217
211
197
228
206
227
235
260
223
108
111
194
170
241
236
234
159
137
148
214
189
170
197
260
192
258
200
247
211
211
154
121
215
161
189
192
157
196
235
208
214
184
221
225
207
253
216
161
185
183
187
164
177
202
195
249
149
189
237
219
229
141
231
171
207
168
245
211
195
258
193
242
239
146
221
246
243
189
211
195
171
163
172
229
235
240
199
147
213
210
226
221
202
236
190
198
264
209
178
224
196
132
218
211
268
221
169
177
216
255
146
257
210
198
162
247
235
215
223
163
197
203
200
249
250
128
200
191
185
131
186
190
160
239
171
199
192
175
217
226
199
163
275
176
269
232
240
201
221
206
292
287
272
187
188
214
212
156
247
207
248
196
235
231
194
222
193
178
251
208
153
173
256
218
191
219
212
191
210
216
217
244
200
192
251
217
203
197
198
208
205
200
222
184
224
248
219
213
227
217
227
232
170
161
213
143
186
224
136
145
207
221
176
144
238
217
259
192
160
214
217
132
216
195
140
177
220
170
187
210
212
202
190
124
202
186
183
175
168
204
216
205
219
186
216
218
185
222
237
197
165
160
246
207
204
197
222
195
157
231
176
204
165
180
210
246
219
170
154
197
175
247
114
190
193
179
236
219
146
197
105
216
203
201
179
223
207
205
151
192
144
243
172
221
205
267
195
179
228
195
205
221
210
242
154
176
182
177
178
141
148
205
210
191
216
245
228
166
233
197
242
173
240
230
255
177
231
194
196
229
198
213
171
187
189
122
177
195
213
223
205
241
215
148
176
227
237
230
202
236
224
185
172
219
231
116
240
217
213
286
161
225
184
134
191
226
247
212
126
162
257
189
183
166
201
230
190
173
155
184
180
177
137
193
163
176
193
236
230
163
210
224
248
160
180
232
232
176
231
155
225
205
247
109
235
175
204
215
165
243
173
213
212
185
191
155
243
200
217
242
170
185
167
199
194
170
225
157
180
207
146
188
240
214
187
210
253
199
187
249
179
223
198
194
207
254
138
159
190
167
153
141
197
121
206
219
127
153
216
228
274
213
103
203
157
210
151
235
229
173
187
194
229
232
189
192
211
136
184
93
234
258
246
184
241
209
171
222
183
187
247
182
246
162
217
213
247
171
269
106
211
199
182
265
151
208
165
190
199
247
214
167
192
199
232
214
224
210
266
240
223
180
181
208
172
221
251
224
150
133
178
212
167
185
104
190
238
179
283
180
169
230
188
178
178
175
190
215
211
136
176
190
192
187
144
177
199
183
209
239
150
263
192
212
247
186
179
166
254
218
178
184
246
233
216
161
201
155
217
151
187
199
179
167
239
256
188
211
170
199
182
211
142
215
130
197
167
210
124
198
120
258
200
222
229
193
214
194
191
238
285
177
97
194
172
151
199
180
228
217
223
211
180
210
195
215
150
175
183
217
180
142
199
212
266
191
217
232
238
168
196
228
137
190
206
286
198
156
231
277
181
196
183
150
196
207
220
126
211
206
213
226
236
201
201
196
263
187
190
219
274
170
197
191
255
231
186
180
175
157
244
202
171
189
192
248
231
246
218
228
158
248
245
245
228
200
238
167
186
227
211
234
200
187
187
152
214
237
201
177
242
184
232
142
183
214
210
207
149
183
178
161
247
141
278
199
197
189
209
195
119
205
213
243
259
226
172
212
177
218
161
152
190
180
194
209
185
267
139
193
216
200
161
184
261
240
138
184
170
202
179
228
206
198
181
145
193
257
201
197
185
226
98
152
182
200
203
246
148
190
148
171
212
226
179
262
186
183
217
317
254
226
199
161
239
131
247
222
155
170
168
197
240
204
175
183
196
175
142
232
189
174
185
172
160
232
177
163
196
210
189
166
179
253
238
160
219
116
122
210
218
219
204
234
285
255
179
177
119
221
180
199
226
173
210
156
178
217
154
255
251
149
187
246
167
235
259
214
201
231
137
214
264
202
246
242
237
191
193
172
169
230
191
158
196
199
175
136
207
102
215
219
169
192
219
173
257
154
236
201
240
221
225
212
207
209
240
222
193
218
179
231
240
227
199
195
217
222
180
216
143
180
159
199
132
254
280
249
172
193
250
181
180
206
211
206
243
219
188
187
221
194
251
251
220
244
134
200
148
186
232
112
177
247
294
149
155
181
222
199
201
248
246
121
127
156
197
202
161
203
180
263
234
133
208
231
184
147
203
195
172
126
167
169
223
203
240
240
184
179
241
226
246
185
212
142
218
206
286
271
130
229
184
239
124
191
206
190
185
265
201
190
210
121
222
198
193
223
152
143
184
231
202
223
174
165
235
232
267
105
169
158
235
220
223
259
155
203
227
205
147
233
130
261
167
202
188
194
125
169
250
136
203
186
248
197
168
228
225
247
212
243
195
195
185
238
113
140
223
210
172
240
231
213
243
131
159
200
194
226
208
230
244
259
253
230
245
172
205
152
222
192
199
211
179
180
270
144
204
194
214
134
236
178
166
231
138
211
184
212
225
186
243
148
227
169
225
232
233
157
181
231
235
209
165
203
167
219
169
170
182
175
148
171
188
214
182
230
186
186
155
185
228
187
194
207
228
145
198
224
219
191
202
202
158
183
197
232
181
201
232
161
127
181
169
130
253
159
228
221
200
277
212
225
212
236
226
231
178
180
177
188
199
182
210
218
257
214
248
171
191
155
197
193
213
217
168
232
191
165
172
174
178
201
194
244
159
182
279
225
191
151
184
191
238
223
183
211
264
265
233
201
236
214
159
229
239
197
198
229
286
215
179
219
278
217
159
244
226
258
226
188
136
217
249
237
169
227
253
243
191
162
197
169
196
239
183
168
195
210
199
220
241
160
218
235
267
248
201
211
202
175
155
235
187
199
236
221
200
217
223
179
210
210
150
141
197
239
216
218
210
136
196
197
172
182
208
189
216
235
223
158
225
181
136
267
216
222
193
206
182
180
256
188
196
101
197
214
222
187
217
173
271
171
239
213
217
202
215
191
153
195
239
211
198
208
134
236
200
170
220
199
237
212
241
175
210
203
164
186
215
210
172
198
188
217
222
214
221
242
252
168
183
222
212
165
231
195
191
154
276
228
182
207
158
202
211
217
198
195
214
195
202
214
162
224
124
196
172
148
215
204
190
206
271
180
235
197
215
157
135
196
237
180
181
93
180
122
220
175
194
178
214
181
207
178
217
213
241
169
155
190
189
140
111
244
141
223
188
184
226
260
216
126
153
217
157
209
209
208
189
169
201
181
233
188
215
242
186
243
189
152
183
219
196
245
212
185
242
185
174
224
172
187
250
199
209
165
228
213
211
197
229
268
257
188
157
218
206
242
162
169
159
208
248
166
150
202
228
175
174
185
177
226
238
192
180
179
203
229
202
156
179
232
239
256
137
134
204
172
204
215
159
196
212
208
216
221
238
221
178
248
214
211
152
227
160
215
189
192
264
193
239
192
159
245
198
206
287
178
193
261
210
177
190
187
222
207
249
210
170
272
183
189
215
195
195
294
254
206
218
230
186
186
208
177
183
225
133
200
198
198
202
160
138
232
205
190
223
159
138
157
177
84
196
250
170
241
203
153
182
181
203
186
234
173
261
226
174
199
170
165
169
183
146
173
190
184
161
196
172
167
251
223
199
210
153
220
220
226
186
167
204
226
166
172
255
238
200
133
183
163
177
166
141
238
201
181
189
167
181
146
206
208
227
178
194
224
211
212
225
227
210
239
146
205
201
271
105
178
191
236
269
233
199
169
227
137
188
241
153
260
127
197
150
163
198
155
141
203
210
211
224
211
219
198
177
144
186
240
145
187
249
172
198
214
173
196
189
201
232
217
103
263
133
146
175
140
195
144
130
164
158
197
235
221
172
192
216
204
153
217
154
170
152
196
191
145
192
224
169
206
205
252
211
245
207
162
219
212
181
208
264
206
159
212
235
187
187
205
218
189
182
212
217
218
206
234
245
207
184
296
217
217
227
226
185
155
150
192
164
217
202
229
213
175
236
247
222
240
234
203
228
189
192
117
148
220
208
203
135
210
153
138
224
192
224
276
240
225
112
159
212
255
199
146
159
255
219
203
201
250
185
215
178
209
219
216
185
211
181
199
174
212
173
182
200
220
242
184
116
186
206
215
183
189
206
180
202
220
236
142
157
191
261
205
209
225
217
236
190
201
207
213
244
207
183
156
248
164
203
199
229
137
287
231
204
127
151
238
236
194
182
194
141
243
184
248
209
201
202
233
176
186
157
188
188
209
201
185
155
157
194
233
115
203
166
180
243
251
220
214
157
237
171
181
212
206
240
195
228
194
201
245
201
237
147
238
182
179
241
213
217
228
178
206
279
170
215
207
137
239
185
142
197
228
224
166
146
183
223
211
245
265
203
208
206
202
208
192
178
195
222
254
224
165
227
230
198
247
174
190
234
159
220
225
267
152
190
213
174
240
129
218
196
164
209
236
244
167
198
185
192
202
244
192
261
196
146
147
191
236
209
224
209
213
194
195
251
247
194
171
199
173
212
177
190
253
224
238
139
200
187
206
240
133
187
223
150
152
236
181
224
186
202
145
244
119
190
192
241
232
194
211
210
170
255
179
188
238
161
191
197
222
245
227
281
199
209
146
213
201
172
184
224
203
218
214
192
147
120
214
171
216
197
231
226
219
159
177
182
214
227
169
174
212
205
197
238
221
161
230
173
221
219
193
241
145
154
144
211
163
162
191
274
178
141
201
216
157
199
261
239
135
219
186
188
215
246
184
233
165
191
221
194
172
241
220
218
146
195
200
151
241
195
220
265
158
228
232
243
238
180
211
262
183
215
184
124
197
201
197
285
233
151
248
191
181
288
161
213
204
188
234
233
205
165
174
213
208
241
210
159
230
261
212
133
186
230
241
246
252
217
133
150
237
239
177
238
192
231
241
171
245
122
214
164
229
134
157
225
211
187
184
224
171
193
171
186
270
126
140
216
199
175
193
219
164
199
182
187
172
214
154
222
220
206
178
230
156
223
245
194
199
288
151
217
216
253
200
261
270
192
102
243
199
176
180
253
235
125
162
177
201
220
176
203
185
221
156
207
152
193
222
231
230
199
148
159
213
160
245
196
255
204
176
245
175
166
188
180
276
171
145
167
158
206
103
209
194
193
251
137
232
203
204
198
191
201
229
239
180
187
166
200
228
158
136
184
217
203
239
206
173
257
203
234
214
140
126
226
174
198
218
219
247
173
145
197
214
175
185
192
146
206
217
170
226
256
176
131
209
266
182
266
193
178
85
241
222
256
249
210
239
217
141
231
216
264
219
189
217
153
166
191
143
201
195
246
170
235
166
143
228
180
194
187
243
229
210
249
169
236
182
260
209
213
206
197
225
189
103
165
231
214
177
172
146
202
138
190
202
204
220
200
158
199
234
235
218
199
215
241
156
251
218
210
198
201
223
212
203
207
194
176
187
156
183
197
143
213
197
206
194
168
184
184
202
156
263
177
149
214
213
214
173
191
180
245
177
171
231
158
187
175
217
248
187
183
245
216
203
184
197
220
179
209
268
220
160
153
170
190
168
254
266
172
220
195
209
215
179
190
201
205
159
215
202
217
252
202
233
173
185
218
194
224
178
224
221
210
145
247
217
197
154
165
162
204
126
240
204
210
232
210
197
193
247
208
181
236
188
151
201
177
184
115
195
172
204
159
160
248
224
107
212
212
235
164
183
200
151
225
158
271
206
185
202
155
195
96
167
247
205
159
180
137
235
189
232
231
197
182
200
227
223
175
200
177
115
198
157
188
244
233
188
182
224
248
206
235
162
165
207
195
249
223
207
178
215
254
182
146
229
130
195
208
214
189
239
218
233
244
203
170
220
213
242
213
130
182
219
226
154
225
224
212
186
203
184
224
199
203
187
219
185
223
151
152
230
224
164
201
252
153
178
131
236
242
227
200
198
224
207
197
221
256
202
213
175
230
229
200
199
245
171
209
190
150
218
243
205
196
251
169
232
209
248
184
267
214
226
160
216
202
192
200
201
206
162
189
106
195
197
206
228
152
194
201
214
176
173
215
258
211
189
193
222
167
214
152
220
193
142
162
185
188
185
266
204
241
186
189
159
197
178
171
181
207
265
160
223
288
163
205
235
165
195
127
189
245
181
120
234
188
140
190
183
166
186
270
252
239
246
196
230
223
155
86
232
181
223
203
209
146
220
203
152
143
233
194
211
216
206
230
183
204
244
147
200
217
185
196
245
168
237
230
228
200
232
205
139
193
183
201
194
188
185
231
222
263
177
196
189
175
196
205
214
221
265
187
222
145
168
158
229
133
220
193
193
210
152
253
213
227
246
213
166
192
170
172
178
238
181
177
157
173
188
236
261
203
190
225
216
215
218
211
244
157
169
179
246
194
242
213
178
226
181
195
184
266
177
167
225
214
154
185
200
215
218
163
195
191
209
160
153
231
216
212
261
210
256
174
154
234
232
223
233
159
250
227
246
214
248
240
190
224
208
197
191
183
220
201
162
226
239
192
201
213
142
191
189
172
173
249
208
215
214
156
182
222
212
231
237
229
198
155
195
175
188
211
194
210
275
228
199
188
242
133
218
202
237
273
172
224
168
159
218
176
149
235
234
129
256
207
206
167
220
263
177
231
172
218
171
209
207
186
166
162
238
241
181
188
202
144
226
175
232
177
185
160
271
202
174
176
232
220
153
258
217
159
234
221
224
237
224
167
214
181
151
241
205
188
244
245
202
169
168
220
254
186
134
196
141
200
222
198
172
228
206
123
179
217
180
199
216
250
239
238
209
208
146
149
200
154
233
204
142
207
190
217
168
194
177
266
176
215
177
199
236
226
218
244
149
160
227
167
245
229
182
167
167
174
191
193
221
202
204
198
200
202
269
199
250
205
204
220
206
153
246
230
201
230
202
206
240
152
229
278
242
223
202
222
163
216
194
195
211
200
172
237
189
233
193
221
175
253
185
167
204
254
184
228
195
193
255
196
179
209
159
223
233
205
151
215
238
208
226
186
155
244
214
184
195
183
149
248
160
263
227
149
242
227
185
195
198
149
159
206
201
226
196
208
215
198
186
204
199
167
189
215
197
211
169
209
230
208
214
169
151
236
198
183
181
221
187
258
255
213
206
214
217
221
208
130
224
126
175
216
236
246
123
211
204
136
220
176
213
232
206
187
163
250
167
178
158
151
189
242
118
115
179
236
206
160
195
193
175
129
177
215
210
183
196
221
295
236
156
148
195
197
160
206
262
197
168
177
202
216
190
205
243
160
157
196
220
193
191
261
161
126
169
208
251
252
170
174
209
164
225
209
232
208
145
198
188
222
196
170
186
218
165
224
199
158
175
174
129
204
198
202
227
172
209
223
198
210
192
233
201
188
228
173
230
171
172
228
219
236
180
189
226
223
238
169
227
161
260
182
203
244
211
166
172
201
222
204
216
179
170
189
234
231
183
191
165
116
206
225
272
136
169
181
266
210
189
144
180
188
192
256
203
259
167
212
170
198
219
224
159
177
235
187
230
205
246
201
190
197
232
227
274
159
191
188
199
222
254
172
246
222
218
172
145
212
199
127
213
227
242
197
260
185
207
229
226
226
237
173
184
172
236
171
154
220
175
178
208
228
214
213
182
191
171
166
136
168
224
198
183
215
195
152
231
153
224
118
163
180
193
169
216
258
156
247
230
226
172
170
154
166
157
185
206
225
191
240
193
179
249
256
173
203
174
224
165
186
237
186
203
183
194
180
265
217
212
230
226
179
193
185
186
146
200
190
238
244
223
185
184
185
220
199
232
213
193
201
125
216
136
186
196
219
158
179
166
139
186
180
183
220
150
189
184
178
206
220
233
228
248
151
160
178
195
235
239
173
190
240
213
221
184
218
201
172
233
169
198
192
304
134
201
193
250
233
175
221
231
218
249
221
249
238
167
161
206
176
156
162
220
191
250
203
164
185
225
146
207
220
201
209
218
174
158
231
182
244
203
202
197
210
211
209
200
209
197
227
215
159
196
223
187
219
188
201
150
175
190
179
217
216
136
214
228
229
200
158
183
155
224
235
224
185
209
192
189
224
195
193
190
181
206
179
166
130
175
265
198
255
232
188
177
137
180
200
198
212
246
233
210
243
253
130
185
225
277
167
203
196
220
209
174
202
189
151
230
170
226
182
199
178
185
200
212
213
152
214
151
246
230
189
225
251
171
226
202
177
210
253
178
222
206
161
227
177
209
233
120
208
274
176
201
209
141
255
181
231
234
180
163
184
222
215
244
129
179
269
190
202
221
196
216
185
174
218
203
186
250
258
178
223
207
148
250
222
208
227
166
243
168
223
261
122
206
204
200
199
236
217
147
155
195
239
193
222
258
194
240
150
167
227
187
204
171
176
139
219
184
223
188
205
182
203
208
170
216
216
131
153
262
219
251
194
169
135
202
255
191
212
192
213
211
251
204
180
161
228
208
180
194
174
189
140
194
227
211
165
220
170
248
223
198
209
205
240
186
213
148
262
209
178
219
257
170
242
227
204
209
186
181
212
155
189
174
207
189
169
196
165
181
235
121
187
188
162
137
217
203
224
175
159
279
193
194
220
222
154
231
140
203
213
263
190
247
168
187
157
224
209
217
165
246
211
165
253
223
183
144
139
204
195
221
145
138
192
205
195
222
208
225
155
174
224
169
244
190
220
194
212
249
162
163
163
171
150
180
204
232
190
202
204
218
223
228
180
157
227
242
231
198
237
185
219
183
183
173
200
233
226
120
182
191
183
110
196
150
202
193
171
190
189
149
204
215
266
159
218
230
242
210
196
156
211
279
229
260
224
199
229
197
219
160
186
164
194
242
218
252
253
266
226
221
181
209
170
220
148
175
195
234
153
194
139
210
214
219
237
162
220
182
218
180
183
132
190
159
225
263
231
217
186
206
140
168
136
177
184
189
195
158
223
220
205
207
205
203
221
193
268
234
174
239
243
175
178
204
184
158
209
162
202
207
130
174
199
243
211
200
195
184
113
216
205
166
194
193
257
226
205
234
193
178
255
201
216
208
207
168
212
222
224
177
230
214
158
240
178
250
177
222
191
169
203
178
110
155
217
210
199
269
222
170
222
236
170
168
221
227
231
188
176
128
169
168
253
194
223
235
203
196
196
225
212
158
166
182
183
173
195
247
170
184
233
185
245
202
191
242
151
188
212
229
190
233
229
170
178
190
172
150
209
237
223
239
170
152
184
205
149
165
184
212
233
201
247
213
250
224
170
243
191
240
233
226
163
187
237
172
172
231
205
227
206
252
180
241
204
219
219
230
192
183
220
155
186
123
218
202
201
215
225
222
235
255
274
140
210
236
130
251
195
213
179
220
249
225
174
240
159
210
199
213
186
219
157
121
171
254
143
256
201
180
176
232
205
208
224
194
220
187
236
190
210
133
238
186
126
176
175
195
202
221
200
229
170
185
209
237
157
225
164
164
198
235
219
190
230
253
224
194
252
147
188
244
208
216
116
212
179
191
214
209
171
211
259
209
194
230
192
236
195
219
163
166
199
197
148
240
144
173
179
183
187
214
169
189
184
199
128
223
199
181
171
130
168
253
183
215
150
205
199
208
173
216
225
203
246
186
217
173
229
218
237
178
240
195
211
278
135
191
176
230
238
217
239
135
207
144
118
214
185
151
158
151
130
201
243
221
223
143
236
276
144
251
271
186
219
211
217
205
160
211
223
129
199
172
149
232
201
125
173
147
148
231
239
200
211
182
239
164
248
200
193
176
269
197
225
206
155
199
189
206
217
225
184
185
168
237
198
178
185
185
193
246
202
166
147
184
208
168
166
237
209
174
228
229
176
207
132
188
209
180
152
211
171
191
226
222
166
151
118
180
203
191
212
285
198
179
192
212
194
229
172
191
236
158
152
165
225
171
213
202
234
238
180
193
231
173
177
165
210
201
200
234
243
191
164
198
198
203
207
221
223
161
172
222
178
185
198
211
205
168
255
196
250
198
182
187
201
168
170
211
206
176
188
186
209
187
159
147
226
206
182
198
254
240
178
126
171
186
243
193
208
231
200
213
228
206
204
208
216
188
180
216
199
235
245
147
156
204
177
184
174
202
151
266
216
245
182
256
170
214
192
212
171
156
262
159
208
175
265
214
207
247
198
190
211
218
195
229
213
199
233
214
220
256
237
152
184
227
191
184
271
270
248
205
197
195
197
241
138
284
138
202
184
184
230
233
199
232
184
176
208
189
180
172
248
180
201
202
198
174
211
255
223
246
137
177
167
184
226
223
169
171
132
207
196
221
243
181
247
164
203
158
144
138
134
203
255
122
268
247
234
232
189
175
162
217
143
131
188
219
244
202
256
197
156
174
184
171
236
193
193
208
123
236
182
204
225
223
159
138
220
161
127
227
244
127
235
247
276
230
132
188
184
172
250
229
231
212
210
156
208
226
180
146
195
258
162
176
247
151
217
188
212
215
221
213
259
210
179
168
170
168
170
176
208
219
225
228
181
195
271
188
256
232
218
229
183
130
187
213
214
235
216
172
252
188
237
201
198
161
212
183
208
194
223
204
160
153
177
192
191
186
217
196
181
194
228
204
216
232
217
195
242
237
185
169
190
174
181
195
236
154
207
260
163
230
233
132
154
218
200
224
167
231
236
229
240
228
204
214
212
156
172
193
178
220
261
191
196
159
188
272
217
148
144
233
203
269
202
202
225
269
258
173
194
287
191
138
185
210
166
193
176
165
220
199
137
234
243
231
228
207
212
187
208
202
135
181
135
194
220
198
181
226
244
210
201
166
191
220
188
222
177
220
237
125
205
190
145
121
227
253
257
197
173
198
239
127
208
160
174
198
197
199
213
213
186
273
174
194
205
189
211
198
181
205
242
230
168
196
216
200
213
198
222
237
194
156
211
139
182
161
181
234
167
210
208
194
172
175
246
210
166
152
255
212
200
282
181
203
191
196
225
181
170
221
168
194
238
167
191
192
167
222
193
132
220
160
181
152
179
215
270
215
243
166
214
161
177
147
186
260
211
159
176
153
190
208
174
185
198
160
196
213
208
187
138
219
188
211
192
173
132
227
242
246
249
243
232
204
166
222
78
165
173
214
167
222
281
135
182
155
218
174
268
133
201
192
197
172
202
214
198
249
231
229
242
249
186
193
192
147
183
182
165
194
281
217
187
212
215
197
244
219
220
179
184
214
236
231
209
169
246
201
211
203
185
279
230
179
217
173
227
216
189
175
205
246
236
198
206
229
212
119
204
276
179
152
130
175
155
213
182
221
219
190
164
242
191
229
205
117
237
241
165
157
169
222
210
190
190
188
185
198
233
130
203
229
210
236
233
159
282
210
216
228
232
163
224
181
213
209
169
177
228
166
164
141
222
158
214
223
249
152
136
261
223
202
163
222
144
174
245
204
178
177
184
211
207
192
119
209
208
201
148
204
163
218
172
246
182
213
162
244
181
210
143
207
206
216
207
240
187
178
193
148
175
190
173
196
231
247
211
179
188
238
269
114
285
203
213
177
205
183
184
159
182
205
184
203
164
228
191
243
175
249
222
244
218
177
241
212
203
222
169
208
193
203
173
220
192
234
177
173
164
237
187
169
252
238
161
192
213
190
234
173
139
196
178
202
176
199
227
225
254
231
238
187
183
197
145
223
234
211
210
207
147
227
215
225
206
224
212
197
215
158
246
143
182
131
162
187
221
212
248
148
138
216
184
250
199
220
182
216
205
191
208
213
188
211
164
226
125
165
231
151
238
191
198
158
223
251
185
215
183
220
165
169
145
168
233
222
250
232
227
200
211
238
234
161
197
212
203
209
235
189
243
137
210
235
198
190
262
186
237
224
218
180
233
196
220
223
260
225
244
244
216
240
207
212
206
205
220
220
209
241
196
210
208
202
154
253
250
214
210
246
163
225
169
222
200
200
208
212
219
182
197
191
218
193
233
163
202
180
215
246
224
215
185
235
192
174
187
188
251
194
147
82
203
243
267
269
181
160
160
212
230
182
151
151
168
166
255
141
150
233
197
142
248
174
170
177
150
165
251
189
156
174
162
183
182
141
154
248
171
220
213
248
190
182
213
185
210
165
182
231
183
166
166
236
240
186
193
242
236
170
193
158
194
186
172
213
178
134
218
159
254
190
212
177
191
217
237
248
153
206
167
180
227
177
115
171
209
139
137
210
254
166
242
211
252
283
229
174
175
223
173
246
185
156
222
154
247
203
236
128
251
244
145
156
239
197
196
219
195
194
204
236
199
233
218
158
194
233
198
156
117
217
214
244
176
161
216
234
180
234
151
242
149
178
219
234
228
172
215
203
196
140
200
153
291
206
148
211
258
138
175
252
194
215
178
200
238
158
199
180
181
211
203
180
251
184
184
220
161
169
229
204
245
202
198
236
209
228
243
258
190
220
196
220
232
233
211
232
162
171
240
181
235
209
221
247
173
173
216
240
156
227
252
217
177
176
239
235
148
157
197
178
228
250
137
191
246
257
241
153
173
204
237
206
216
224
168
198
238
170
175
209
248
209
134
210
231
257
271
234
230
192
213
229
189
244
175
212
173
241
204
189
230
120
171
176
184
184
184
194
221
129
203
189
173
253
236
231
188
181
131
184
177
164
163
252
126
172
188
140
205
195
200
225
204
169
210
217
251
260
195
157
169
179
170
188
195
248
167
227
222
205
222
216
240
217
214
133
185
210
186
224
217
218
204
230
161
202
183
224
236
205
158
203
241
171
231
267
169
223
211
196
209
258
160
256
241
210
206
238
175
186
205
207
189
211
196
161
214
235
148
219
216
191
175
179
208
249
202
210
195
142
189
187
174
178
225
210
259
207
217
211
210
190
223
195
184
205
239
213
231
157
231
150
250
159
209
240
173
255
206
162
205
163
279
198
195
205
167
130
204
201
156
250
194
157
239
167
257
145
186
208
223
216
160
224
223
120
222
153
216
129
191
182
191
177
170
165
220
161
191
222
194
244
181
150
211
201
189
194
238
187
136
168
241
204
193
230
160
238
209
222
188
171
236
193
150
224
224
199
245
262
214
254
192
199
232
172
153
163
140
239
159
208
245
187
227
232
165
193
207
202
161
190
223
160
236
167
211
244
195
208
235
179
201
217
231
242
277
203
154
155
237
200
219
170
267
259
229
214
213
181
177
219
207
230
203
170
210
183
259
192
207
211
198
249
110
228
221
221
209
168
194
203
246
209
175
237
177
196
229
206
181
202
191
193
185
191
186
223
161
178
99
183
148
193
116
179
230
201
219
161
156
213
175
168
180
213
230
206
220
147
165
214
221
200
266
134
221
192
225
222
159
155
264
177
261
267
157
164
209
155
198
255
138
101
236
155
199
191
209
198
207
194
189
208
217
145
209
224
196
190
242
191
181
215
197
124
162
166
188
229
204
194
190
242
228
143
236
209
174
185
243
239
164
169
190
249
177
219
189
158
231
224
225
136
222
243
159
197
168
207
131
201
222
202
250
247
212
134
192
153
187
169
215
223
177
219
161
182
221
214
191
160
185
226
157
129
245
165
192
255
208
147
181
228
203
252
226
221
184
221
224
157
150
152
199
198
160
240
201
240
233
199
206
184
230
179
225
270
219
199
260
215
197
134
141
198
216
225
178
187
207
238
200
175
229
255
257
213
248
218
246
152
171
169
186
181
201
222
162
197
217
239
118
219
212
244
214
185
205
186
238
177
159
176
158
199
231
194
244
242
149
144
225
152
135
138
203
213
185
178
150
223
191
209
218
154
164
141
269
246
211
183
200
225
207
203
219
256
152
165
241
230
138
183
232
163
192
182
214
219
153
282
167
207
196
181
211
192
221
186
190
128
204
220
199
228
212
158
134
242
177
136
212
214
232
162
185
190
281
216
148
169
174
246
225
197
168
232
158
198
237
238
209
227
180
184
160
188
206
221
190
129
216
242
265
165
235
206
172
212
153
170
261
211
198
192
223
133
218
252
226
153
195
180
171
164
176
234
182
113
234
110
178
192
260
184
160
210
168
186
149
205
152
232
235
182
141
215
150
182
217
221
151
209
136
193
218
174
219
204
239
183
192
174
184
166
210
238
253
170
230
118
195
169
212
231
220
204
255
223
186
194
167
182
215
212
214
176
220
247
225
178
191
217
238
213
209
282
244
267
186
252
216
236
193
200
172
267
142
208
229
257
230
199
227
217
211
220
170
245
220
166
137
156
156
154
209
247
192
180
145
186
166
145
221
168
221
250
145
178
263
205
213
244
200
206
177
157
232
159
224
144
210
207
204
189
229
215
219
192
208
167
196
210
158
151
232
172
148
216
213
236
242
208
229
193
241
166
250
186
218
185
195
176
168
226
150
200
195
240
203
175
191
182
172
222
158
132
184
164
241
196
186
222
217
157
240
148
184
217
117
154
192
146
208
206
155
240
186
257
171
223
240
180
202
172
229
220
161
167
217
144
188
168
185
150
155
208
207
223
142
124
223
193
166
214
170
176
248
224
219
224
230
246
197
202
276
137
170
204
266
253
202
212
234
167
222
221
195
135
168
234
213
174
152
207
188
246
203
182
87
178
119
195
222
178
221
168
161
207
229
209
154
207
229
188
222
214
127
248
213
217
176
227
254
207
193
169
212
189
208
228
219
187
220
217
145
170
220
166
167
200
174
223
159
152
179
233
258
166
184
206
171
195
284
225
192
208
190
235
226
234
227
184
178
229
233
210
221
179
171
238
137
196
202
199
251
196
239
197
186
250
249
164
202
172
154
245
157
230
196
219
198
180
224
185
201
255
189
166
143
182
198
175
153
266
155
244
179
170
239
233
163
204
201
210
188
166
124
189
204
242
211
211
207
159
188
241
182
278
225
168
192
186
235
235
193
161
223
172
184
222
202
174
261
174
144
218
143
214
211
203
162
218
244
214
185
237
208
149
114
303
221
264
311
224
176
164
195
208
175
182
94
231
166
209
234
188
169
137
194
251
185
241
234
211
201
181
218
218
196
201
190
135
284
183
217
214
146
149
242
171
138
171
250
194
216
216
195
172
196
217
134
222
186
195
176
202
222
252
212
194
254
223
183
139
160
165
185
263
170
203
183
228
155
133
215
181
214
232
188
241
184
207
197
204
193
205
190
201
214
163
196
191
205
183
204
176
176
207
179
206
136
186
166
218
189
204
218
237
147
236
179
201
183
215
187
227
160
193
189
183
174
162
211
240
236
217
252
257
200
221
187
214
181
189
151
222
190
189
192
184
175
175
189
218
167
188
168
190
247
215
246
142
167
172
156
285
196
126
180
201
242
152
181
146
187
195
175
204
233
86
214
231
149
220
231
223
166
208
232
273
229
215
187
256
231
131
129
213
182
222
195
186
177
192
200
202
170
123
191
213
189
180
150
257
181
239
167
203
155
156
202
188
242
196
177
226
163
189
205
226
174
221
197
217
167
221
233
171
224
174
191
208
211
201
164
230
160
198
206
215
188
195
186
240
212
172
132
192
228
174
204
165
198
164
210
178
112
177
231
148
137
186
223
182
189
168
204
199
190
214
187
177
189
197
196
215
256
156
177
183
176
208
173
228
259
183
129
243
207
203
155
147
184
148
185
111
183
190
162
180
174
146
184
232
198
131
135
182
169
253
179
168
207
147
225
218
198
192
193
180
259
217
223
215
215
156
254
217
159
228
151
133
177
296
224
100
191
201
218
208
141
226
153
165
192
202
202
218
246
159
184
211
236
254
202
244
227
190
137
196
168
183
278
149
205
179
175
231
184
124
230
222
198
169
241
131
175
253
132
247
221
174
114
203
179
181
231
237
195
243
159
141
205
200
216
159
164
200
178
180
133
193
226
191
211
184
226
195
214
187
136
227
213
178
234
239
210
171
167
194
218
195
176
161
199
198
226
218
172
171
194
167
154
229
185
245
208
209
202
180
217
149
214
171
190
203
189
219
236
270
191
179
289
179
259
206
152
254
139
176
181
197
221
223
252
235
267
204
138
173
221
224
229
209
263
153
202
173
231
173
200
217
167
225
204
269
243
183
197
190
164
163
179
217
142
236
157
187
211
154
227
225
206
189
194
172
198
192
180
233
192
172
223
118
185
248
148
125
180
168
168
178
168
251
214
276
173
244
189
217
238
222
223
238
207
241
223
175
153
214
176
265
203
183
181
232
209
184
239
216
184
204
147
173
282
200
228
252
234
188
166
213
251
177
173
215
202
184
201
194
209
248
250
231
202
170
236
184
197
237
171
194
182
202
235
262
227
190
252
266
224
208
248
226
136
168
247
205
196
192
181
217
168
222
163
216
183
188
174
257
160
235
239
159
205
219
203
148
234
259
128
149
217
168
255
202
215
260
250
211
130
225
212
207
191
232
220
163
147
208
184
132
236
238
236
195
208
183
190
187
147
256
131
239
159
224
187
238
211
209
211
161
153
204
215
226
216
219
199
209
201
176
195
190
208
223
170
218
235
221
208
230
199
170
147
238
173
257
164
221
214
231
219
212
211
166
132
183
162
193
226
135
201
213
215
214
214
172
236
206
213
199
244
235
213
195
237
159
176
199
213
212
243
289
149
199
145
255
167
249
248
157
183
198
196
233
197
186
243
147
113
158
229
242
200
223
222
181
187
191
173
219
183
264
180
234
283
274
217
196
219
196
197
260
182
202
137
209
185
236
216
249
214
182
165
144
236
218
215
185
143
192
193
216
191
225
221
180
203
204
122
172
220
167
212
200
151
242
261
160
208
237
183
168
232
166
202
197
219
192
171
239
284
163
170
197
231
171
148
199
194
201
222
187
232
236
203
202
238
149
233
266
189
175
244
237
241
258
218
224
191
241
239
201
245
197
225
180
204
187
129
205
166
268
266
163
180
172
143
230
210
200
201
206
123
210
248
239
265
206
181
212
167
196
190
164
222
194
208
205
210
195
247
223
194
208
183
196
196
213
121
241
161
122
216
204
170
174
201
136
172
192
165
188
220
145
157
169
156
221
215
119
239
240
116
222
215
211
252
179
262
217
191
174
173
206
177
203
210
166
219
236
98
172
128
194
190
212
208
147
176
248
175
151
151
129
217
201
167
237
180
215
157
245
146
230
219
212
214
276
177
210
255
165
196
138
210
182
162
182
228
247
167
234
152
157
186
180
211
129
167
153
190
152
160
204
245
239
181
153
204
185
201
146
202
182
230
195
239
212
199
221
189
279
178
166
236
239
209
195
219
220
206
143
190
188
205
190
205
223
204
204
136
210
208
160
211
174
173
189
174
213
148
147
260
194
137
226
243
213
179
197
215
238
208
300
209
186
212
246
193
183
220
166
200
199
219
257
270
205
194
198
102
195
197
218
171
195
167
212
261
232
234
214
165
234
181
187
202
189
177
142
240
205
178
202
218
193
253
134
181
225
199
192
196
148
252
253
175
243
171
213
186
205
115
181
166
245
227
214
194
195
174
195
198
229
174
271
223
172
142
197
275
198
116
186
262
224
223
162
182
255
198
245
204
212
174
221
160
205
232
180
195
213
267
236
177
156
186
265
272
184
256
130
223
193
246
222
212
200
228
204
182
237
135
222
224
171
207
143
207
203
162
242
134
226
138
189
186
218
146
166
261
167
173
242
225
220
207
254
144
208
236
284
204
265
193
177
211
138
236
192
211
203
140
269
156
246
204
239
245
203
207
138
221
183
193
215
152
159
160
192
210
208
133
206
165
181
195
208
209
211
191
196
212
240
149
180
190
231
236
129
197
233
209
149
157
199
193
117
178
184
169
247
221
276
242
155
208
240
182
213
117
192
152
171
206
209
186
254
191
196
232
281
257
163
200
187
133
167
279
211
196
206
191
216
239
193
189
205
213
240
173
207
210
171
197
214
219
182
184
248
169
224
271
167
203
195
258
143
217
232
235
231
215
255
205
196
161
178
216
213
185
205
238
143
153
264
216
230
223
201
168
146
145
194
201
213
195
136
198
150
205
176
221
142
167
214
195
182
164
175
144
276
208
200
248
238
179
231
245
230
207
202
230
201
168
211
197
199
183
175
173
243
199
232
199
170
207
184
203
259
173
255
231
165
176
130
245
245
169
146
152
217
191
205
161
219
157
237
197
207
217
185
181
219
183
256
263
165
186
163
169
193
191
179
204
192
128
184
157
184
210
209
220
222
231
184
163
234
158
232
232
151
239
159
203
168
159
117
222
233
217
213
234
171
135
192
150
197
214
95
252
112
170
218
265
168
141
157
260
223
225
176
188
175
240
239
212
167
211
206
270
222
243
193
171
173
264
191
199
174
230
206
219
178
188
237
201
246
193
179
202
139
178
139
175
130
190
198
172
179
185
172
200
229
197
131
184
214
206
213
209
185
215
178
227
163
147
190
244
187
146
191
205
155
174
190
193
164
233
192
188
210
197
94
190
194
159
235
206
229
199
211
262
187
217
197
185
238
194
244
159
136
187
211
261
242
230
212
209
158
192
258
175
260
137
178
234
171
190
255
252
254
215
254
209
178
198
210
195
206
242
226
193
198
181
138
266
165
206
212
236
219
108
183
230
179
157
176
208
139
181
219
162
175
195
153
234
209
177
212
153
239
206
124
210
200
133
189
260
274
179
207
224
154
238
194
172
260
230
217
172
144
207
209
163
220
157
176
212
259
227
222
159
148
192
201
187
176
213
233
223
254
258
180
230
191
178
174
238
201
194
136
221
216
222
215
204
202
211
194
236
218
201
174
185
193
255
210
198
190
245
192
223
234
274
185
197
227
172
215
190
237
222
181
220
201
206
222
170
259
249
171
126
191
165
170
225
182
255
186
175
176
167
186
242
143
231
146
200
174
173
225
164
214
154
226
180
215
223
200
195
205
205
205
204
228
152
205
161
218
216
185
192
240
221
246
203
169
190
150
206
175
201
227
187
209
152
233
251
230
174
161
225
186
173
222
186
197
157
207
248
219
189
177
204
250
187
218
159
282
235
168
262
199
172
218
192
178
210
80
148
219
230
212
192
167
247
195
232
185
160
238
219
194
222
140
179
210
185
238
164
182
210
189
253
162
216
153
216
251
203
149
190
190
175
222
185
185
218
239
225
238
173
155
239
250
224
216
185
201
180
203
225
196
210
169
152
184
206
262
244
219
166
220
196
162
286
232
233
199
198
217
231
164
155
186
219
217
192
227
206
215
204
204
215
239
176
187
274
229
210
212
221
194
180
215
207
199
208
228
196
108
168
236
213
226
205
218
242
206
160
260
180
221
247
201
223
179
171
198
206
245
244
179
122
167
184
204
172
207
179
198
194
165
204
212
218
201
183
226
216
263
216
187
223
227
210
200
213
184
209
176
214
221
228
187
226
186
195
178
224
227
257
177
201
189
197
178
206
188
129
241
213
170
231
179
204
175
246
264
188
219
216
235
170
145
174
203
240
248
247
212
145
194
198
231
171
236
170
161
173
154
220
218
191
236
222
149
252
193
206
156
194
253
198
251
172
191
265
206
228
143
183
161
244
262
178
225
233
168
194
259
175
267
173
184
108
198
187
222
188
257
190
221
228
192
230
236
178
204
295
218
213
237
164
173
147
269
224
209
173
246
196
203
212
245
222
144
225
225
226
186
197
158
196
173
224
190
184
203
212
195
162
241
236
237
195
205
232
207
183
240
203
190
200
209
140
172
210
180
280
227
149
190
201
160
191
179
180
243
214
171
243
200
191
258
193
214
192
193
134
227
205
171
196
128
192
235
211
217
168
246
235
129
171
156
208
217
165
183
194
181
111
172
202
253
217
229
191
201
130
205
198
198
231
251
153
199
262
163
192
152
183
178
207
260
233
175
168
245
200
274
102
208
227
192
213
200
243
199
273
235
166
239
227
191
217
250
170
191
172
193
198
245
209
163
173
210
237
167
126
214
186
192
177
206
211
210
196
192
176
212
236
210
206
188
231
209
177
189
98
198
208
214
209
252
176
210
215
208
156
184
212
152
216
186
164
143
200
187
230
197
245
179
190
166
242
203
186
181
215
121
129
174
258
237
220
152
242
181
162
228
252
190
188
199
250
269
173
182
156
226
186
202
187
172
167
232
231
193
208
169
213
203
199
253
203
211
187
226
154
220
185
195
192
205
241
166
220
206
227
155
180
232
134
172
270
212
179
140
159
187
218
115
234
228
192
126
176
126
249
204
168
194
228
155
180
194
140
220
194
252
200
244
96
184
167
192
239
162
207
155
181
215
211
210
258
298
195
225
165
186
194
199
232
234
228
230
202
239
111
172
164
156
175
180
173
207
207
201
250
225
112
292
169
209
204
205
268
260
251
218
161
179
258
225
241
189
186
242
191
207
243
223
201
195
194
204
204
219
176
247
129
218
183
197
243
209
260
214
140
176
179
231
183
197
198
220
246
211
183
228
186
155
159
297
174
220
217
221
225
228
180
213
95
220
196
221
174
187
264
239
246
198
163
125
231
167
169
225
240
250
189
190
169
218
235
220
222
147
184
171
198
218
262
170
230
213
199
178
189
173
207
228
228
228
236
155
212
242
172
156
176
142
217
245
280
167
282
229
235
236
207
215
188
241
215
171
232
104
163
223
209
222
236
193
186
191
186
180
208
165
228
246
222
182
195
180
222
179
234
190
248
178
196
173
210
171
246
240
174
236
198
207
205
157
105
222
135
159
246
102
240
159
196
164
187
219
188
235
211
172
193
177
194
209
223
194
168
142
178
267
204
272
189
282
190
149
197
186
236
210
203
204
159
152
232
152
198
233
157
209
248
217
161
215
179
148
233
173
209
234
210
204
237
252
200
219
256
203
113
232
203
192
168
183
174
228
157
226
242
201
185
256
199
210
223
201
102
241
198
193
209
196
214
192
164
237
208
157
233
175
220
228
196
189
160
172
202
147
180
186
176
144
196
227
167
147
251
238
238
206
199
183
227
205
185
242
183
186
165
248
232
153
260
259
216
161
175
206
198
126
182
231
198
210
197
193
231
162
230
173
219
231
217
206
252
213
155
252
248
266
189
189
179
170
197
219
214
209
236
221
243
188
231
217
149
196
152
235
217
186
254
191
151
249
206
200
191
241
198
192
172
229
153
181
170
246
196
220
241
199
185
159
194
243
130
189
184
144
206
232
182
217
238
132
192
273
187
221
194
172
159
208
219
199
190
156
212
203
196
245
207
212
252
160
204
235
174
178
131
126
207
228
215
164
197
216
265
237
182
198
205
179
230
154
189
193
251
164
196
183
202
171
156
157
237
223
76
188
266
196
254
165
245
182
221
221
191
142
226
246
171
181
237
245
231
168
214
214
201
202
177
218
224
250
175
217
188
243
203
244
163
232
178
187
240
166
217
218
236
149
192
194
236
173
180
136
199
191
239
217
252
240
259
166
202
179
154
202
197
235
219
216
219
242
224
211
243
231
230
180
212
181
219
195
184
225
240
187
178
184
233
251
237
157
152
219
170
235
190
159
232
117
218
156
206
223
232
219
174
173
182
240
205
185
149
198
194
262
195
217
233
214
160
188
169
184
168
201
208
249
189
223
274
150
187
171
238
189
184
181
151
184
197
243
163
195
222
215
152
236
238
119
227
183
161
184
186
167
208
241
178
169
150
162
128
172
158
244
216
234
184
230
234
248
148
235
194
245
212
164
169
193
227
174
205
177
183
272
193
239
184
189
190
209
172
230
169
224
195
222
206
103
173
180
173
221
247
196
181
173
223
233
242
227
241
209
197
164
234
161
186
250
187
178
166
199
177
181
199
178
173
154
160
232
175
86
165
203
229
197
226
189
136
248
158
202
168
209
185
183
262
204
167
239
197
233
220
166
197
205
153
217
203
215
228
167
252
155
155
238
195
222
210
189
218
242
209
184
258
210
143
193
185
205
201
267
141
209
204
237
234
242
168
156
208
200
248
193
207
226
153
244
184
149
215
223
202
205
187
119
173
208
279
155
184
209
194
191
101
256
225
185
186
230
166
153
190
203
178
184
161
201
215
216
200
177
164
246
210
198
201
220
249
217
224
196
200
182
211
208
194
209
237
205
170
197
207
186
175
249
198
188
202
231
159
137
217
183
193
235
221
229
213
168
247
217
181
218
197
216
224
229
238
221
198
206
196
177
196
161
228
197
233
198
205
173
197
215
254
224
220
245
174
214
209
173
200
192
199
169
245
170
222
158
172
151
180
201
197
203
220
216
208
187
218
233
179
177
211
186
170
159
190
186
233
203
179
232
137
208
194
208
170
209
219
220
234
154
222
208
230
189
199
221
161
195
195
235
165
248
204
251
239
212
224
167
156
211
193
226
220
225
225
247
197
205
272
243
134
217
167
191
187
177
173
206
245
208
254
202
199
209
230
212
253
215
230
197
200
205
228
133
166
270
167
139
224
237
168
249
230
196
188
181
223
219
214
189
199
211
186
202
207
223
171
200
145
189
187
231
280
196
234
172
205
172
209
211
179
208
191
245
227
173
135
214
202
228
184
182
202
142
160
186
232
246
203
156
248
222
199
177
174
240
258
211
207
211
136
202
166
188
207
207
162
213
166
212
210
208
262
187
178
219
186
189
189
187
96
226
239
184
205
231
231
234
150
141
200
148
204
251
180
196
150
218
266
210
203
184
207
219
203
197
203
200
223
122
154
160
192
168
226
255
203
205
167
223
219
268
148
179
247
195
233
192
178
211
164
211
227
248
210
241
173
199
250
177
181
193
207
210
198
217
211
191
238
228
188
185
138
225
178
234
228
152
219
235
215
182
160
244
236
145
151
199
123
230
215
184
230
162
214
217
226
186
154
223
234
172
185
136
172
179
247
140
193
245
220
244
169
174
155
178
142
176
259
198
158
180
203
212
199
158
178
99
172
179
99
200
261
177
177
282
227
191
225
193
174
237
188
217
154
200
208
232
244
146
263
152
226
190
214
251
152
218
242
175
191
246
215
196
202
206
202
234
187
188
219
264
146
142
144
213
173
219
223
210
183
204
217
169
198
218
182
215
236
222
175
244
200
135
193
192
211
240
207
199
204
197
201
179
248
215
224
263
222
237
162
164
203
167
173
130
173
111
220
190
212
202
176
190
151
188
235
214
200
146
230
243
242
225
229
229
198
202
177
198
171
221
209
193
106
216
213
201
219
199
238
218
186
180
199
183
218
255
150
239
208
200
133
219
204
171
151
251
207
188
209
172
135
224
167
257
115
216
204
200
109
216
241
217
149
224
204
166
231
220
168
252
230
180
163
247
224
258
224
240
243
197
186
205
206
259
178
175
192
177
167
193
170
206
230
246
234
200
208
210
180
171
158
180
241
217
207
191
209
251
204
181
220
233
249
170
229
229
211
229
222
189
163
170
261
191
162
199
193
178
197
178
283
149
191
214
220
221
209
245
260
191
167
171
203
230
228
163
218
171
188
291
149
185
200
148
244
143
202
253
169
267
182
134
135
173
162
198
226
215
187
142
256
183
144
291
204
166
163
204
219
192
183
189
181
193
197
212
214
190
200
197
168
221
209
181
193
214
141
159
285
184
244
229
191
207
152
205
195
224
244
198
237
248
217
171
155
227
235
217
176
189
210
180
247
168
192
193
192
260
172
146
164
235
204
180
172
235
223
177
177
199
258
229
178
247
221
142
215
174
152
227
217
193
222
223
243
258
229
243
218
219
207
167
241
130
172
178
193
178
261
203
156
218
217
200
237
168
187
241
245
131
229
144
227
202
217
216
174
195
225
242
183
248
275
234
231
224
250
253
188
179
219
178
165
200
214
236
199
160
216
165
240
183
181
209
192
137
205
261
193
142
176
241
201
183
197
188
273
172
238
164
239
205
237
142
191
140
165
164
192
182
246
158
277
207
236
141
184
178
189
198
183
186
183
234
149
200
220
185
205
172
234
215
180
262
155
228
202
233
195
219
188
194
259
248
184
169
230
152
248
268
195
226
219
177
164
146
186
217
161
118
209
265
158
192
192
225
181
204
218
112
201
245
207
164
216
261
241
157
202
200
234
209
220
202
197
185
161
218
251
188
146
171
242
199
213
248
221
186
165
216
239
142
142
149
193
173
179
240
232
212
238
225
169
203
150
183
207
279
194
201
212
212
193
222
186
176
237
229
213
250
228
259
208
204
173
200
268
179
268
190
200
203
222
173
231
247
192
249
184
200
170
258
219
176
274
245
245
194
165
201
224
206
180
210
255
204
211
256
218
219
233
230
228
230
200
189
181
192
238
151
166
206
199
129
215
254
175
219
156
200
198
218
153
238
191
200
227
172
182
201
176
202
206
203
174
202
237
236
218
263
243
168
246
174
166
206
151
225
217
175
189
192
217
233
212
167
226
197
206
229
243
174
217
233
138
168
217
250
233
209
185
225
218
206
224
156
264
177
261
202
190
217
223
230
237
222
197
197
195
191
252
126
180
229
199
192
194
237
213
221
229
206
245
203
225
200
225
232
206
226
237
175
190
197
197
241
201
205
247
203
178
197
227
237
189
210
189
131
161
224
238
209
211
173
156
223
162
237
270
232
233
182
178
252
177
160
195
248
237
145
234
208
203
202
162
116
207
167
221
187
167
233
171
232
181
181
209
185
229
284
242
183
230
187
234
222
179
197
220
235
197
206
155
226
172
186
191
200
238
167
218
124
227
224
228
231
263
184
244
183
196
226
217
194
172
235
203
178
157
199
204
126
121
193
206
199
199
211
176
220
191
200
267
172
227
143
187
205
211
216
229
139
176
232
157
211
227
215
188
261
223
177
299
201
219
189
257
221
202
180
220
221
208
156
227
231
178
215
218
192
93
257
252
197
96
232
238
198
237
209
146
229
198
155
207
206
172
141
221
193
230
191
187
174
125
228
241
210
236
167
198
203
281
212
218
162
251
153
213
186
201
226
196
220
234
180
164
197
166
226
217
219
232
210
188
210
178
133
156
158
141
178
205
192
234
220
225
198
180
266
216
244
162
185
200
160
184
192
198
279
186
192
141
238
261
157
201
183
197
160
248
199
154
175
185
212
280
186
185
225
199
208
212
200
228
234
198
201
242
244
198
231
272
242
209
167
134
208
170
248
204
239
190
263
173
173
221
226
193
175
144
215
209
159
219
147
122
226
232
171
171
226
257
153
244
204
254
108
257
145
196
184
192
211
268
166
171
242
211
228
198
184
220
187
189
204
194
217
190
192
214
193
139
198
162
181
229
235
199
155
227
225
185
153
185
128
240
214
192
199
188
233
222
131
259
165
193
208
243
216
164
214
190
131
184
155
176
194
184
207
151
252
216
199
209
222
211
223
165
209
218
162
179
273
228
216
251
176
191
91
153
246
226
228
175
164
179
240
184
178
199
170
198
197
194
173
154
221
219
206
169
235
294
177
220
182
236
234
220
184
157
160
276
204
202
211
206
187
224
161
159
187
166
212
276
210
224
294
126
181
172
192
226
191
224
222
159
179
209
214
239
191
177
211
215
222
184
211
227
206
187
201
204
151
181
215
188
225
173
223
201
148
169
171
174
180
249
187
245
255
253
154
176
245
205
174
141
214
139
183
233
201
209
227
230
190
246
148
230
132
229
196
136
182
208
156
152
150
133
209
156
180
218
243
260
239
149
229
194
206
235
210
233
211
206
178
265
205
143
208
168
141
191
166
225
126
178
202
215
192
197
204
206
162
131
246
182
183
161
210
226
213
213
189
140
217
235
171
248
198
175
202
220
202
157
194
255
176
221
157
201
255
201
215
233
180
192
229
216
260
225
168
250
236
174
246
194
186
214
231
185
199
178
190
183
154
231
200
192
188
216
230
178
203
183
206
159
217
260
193
196
224
232
222
233
171
190
180
183
199
126
174
148
220
182
259
245
211
201
187
222
219
190
169
209
161
171
233
192
207
217
206
197
180
163
178
243
196
206
165
202
96
169
207
264
159
213
182
232
214
174
163
219
215
248
184
222
237
148
205
214
223
201
163
262
269
276
189
182
191
202
193
223
174
230
187
159
208
210
209
225
248
171
193
221
149
189
145
114
206
206
209
228
229
174
236
154
201
152
224
195
215
232
161
221
252
206
172
231
288
223
140
185
192
211
275
241
269
241
189
206
247
181
224
203
156
194
199
197
253
154
277
236
211
203
238
221
104
219
200
197
278
200
159
192
203
187
213
232
205
210
197
248
216
209
178
243
154
242
253
180
183
228
181
239
262
174
192
243
207
168
187
171
165
225
194
220
205
183
235
236
239
175
201
194
210
206
248
203
161
185
246
230
241
234
210
195
204
192
227
199
201
209
277
193
206
226
151
220
144
231
207
160
168
222
179
228
195
190
163
186
171
229
258
197
215
154
234
185
224
224
193
202
240
221
198
213
212
258
153
186
251
272
259
294
235
230
200
212
215
207
184
160
204
208
271
222
274
202
219
210
193
144
191
187
226
185
194
220
247
143
169
192
172
250
173
209
214
155
219
237
85
238
111
158
194
172
158
167
170
211
234
164
182
185
192
186
284
182
230
242
243
182
227
220
228
226
215
203
197
132
214
202
224
144
190
171
173
190
170
230
193
234
183
190
173
231
213
188
160
182
223
236
217
187
198
215
205
222
193
297
235
193
192
144
169
241
203
145
152
241
231
222
232
192
209
170
232
193
176
144
203
181
157
206
246
221
221
201
190
182
201
255
213
202
245
190
184
217
206
199
183
208
225
147
277
183
193
210
232
162
146
206
180
185
196
189
152
258
188
246
172
196
170
206
264
196
236
213
196
168
200
257
217
190
211
246
217
206
209
123
283
224
196
219
207
247
203
174
179
191
172
222
197
220
260
183
237
138
157
191
222
253
219
223
204
190
217
194
154
183
168
225
184
222
190
250
233
164
187
208
225
228
175
185
230
257
229
245
198
206
190
153
187
272
262
184
143
252
183
260
217
236
198
182
137
192
228
243
212
196
252
168
191
199
163
230
168
178
202
225
149
202
206
202
222
232
178
199
207
243
147
172
189
210
213
215
162
206
225
190
227
200
162
214
225
209
189
275
178
204
158
249
147
229
190
182
193
156
127
156
185
211
170
194
131
202
257
152
224
233
179
265
115
164
220
180
170
171
237
118
232
207
190
212
161
254
119
181
217
233
250
191
168
234
168
163
178
186
218
235
200
208
175
143
176
182
154
203
106
204
209
264
141
159
194
200
176
143
206
166
181
222
204
213
216
195
207
192
193
216
186
212
174
184
174
244
208
208
249
169
203
173
145
252
247
205
201
176
224
186
159
171
159
237
171
181
187
172
162
182
216
186
260
127
178
244
232
208
189
218
208
217
256
112
248
223
229
234
229
262
175
176
222
218
240
158
172
217
214
216
152
213
262
228
130
196
157
130
178
188
211
208
171
219
203
153
181
284
276
186
225
214
246
115
188
180
224
239
187
167
150
194
176
181
194
217
150
184
186
193
166
176
144
176
211
176
268
195
271
172
178
223
182
270
182
173
247
229
168
140
177
201
123
209
144
156
188
233
233
218
149
157
168
194
214
136
169
161
149
192
177
189
225
171
233
268
260
222
179
199
196
179
193
190
148
186
236
161
128
188
168
156
234
237
143
201
231
217
121
191
221
202
174
167
158
246
239
171
199
178
231
246
236
205
181
221
217
223
257
156
201
152
248
188
190
165
206
195
191
241
195
187
249
188
205
251
200
268
213
225
231
225
230
155
215
160
253
245
193
162
190
146
226
211
191
202
185
224
230
183
206
190
225
201
114
232
255
186
187
179
146
250
210
203
193
176
208
215
182
239
209
269
242
154
198
179
140
233
214
191
183
125
196
157
254
195
205
162
240
248
206
200
224
145
194
131
206
250
236
208
217
188
229
177
235
226
183
202
189
185
265
226
261
201
245
183
224
191
196
239
151
173
206
242
201
173
206
136
217
233
168
229
230
199
141
182
145
215
140
129
183
234
203
202
208
179
169
162
175
248
171
169
209
204
162
170
234
150
174
183
249
235
221
225
142
232
205
158
270
155
187
250
219
232
210
147
122
192
247
203
207
200
170
272
286
235
203
214
198
198
232
117
234
209
143
247
144
194
153
233
230
168
221
216
203
208
269
227
158
198
120
211
183
278
227
165
212
184
121
188
160
200
246
200
195
204
221
205
208
229
120
189
150
210
205
226
210
253
207
185
205
145
220
167
206
137
252
196
219
237
215
159
128
252
187
209
193
194
166
170
172
196
206
191
154
261
204
158
182
250
182
182
234
156
199
211
188
168
183
190
242
165
170
190
239
165
111
189
229
209
261
239
187
219
241
225
176
228
194
207
206
198
175
225
216
183
149
234
184
177
213
160
203
223
200
245
181
143
208
199
200
289
234
207
210
225
196
233
160
192
204
147
217
183
224
228
211
203
219
208
184
175
152
218
222
220
197
161
181
212
226
158
222
154
176
205
181
263
232
211
186
218
158
132
216
240
232
265
218
204
186
165
167
238
122
211
157
213
241
161
215
174
98
243
215
192
240
233
182
280
182
170
247
152
216
200
241
198
248
190
204
200
171
242
151
160
155
231
240
161
190
167
214
213
166
202
215
229
184
223
190
221
281
188
136
169
243
241
213
238
178
237
213
179
218
210
206
179
202
184
150
180
189
211
183
165
162
224
254
147
142
188
224
190
204
215
206
247
229
230
159
195
276
193
150
211
154
184
258
223
244
229
242
193
199
149
174
158
245
199
151
180
152
200
199
179
130
254
188
149
175
150
223
156
236
205
130
216
227
189
219
219
126
213
190
133
208
184
232
240
190
226
166
194
148
190
202
171
203
227
221
173
188
205
158
170
189
185
243
190
180
214
174
232
193
213
232
210
227
181
226
197
203
202
178
156
193
199
184
167
187
174
192
253
196
220
227
99
218
217
206
192
233
195
206
201
193
159
171
207
182
202
191
219
172
248
230
192
220
216
246
187
206
117
186
194
236
244
178
175
218
180
253
220
188
275
207
181
187
204
194
217
147
237
225
251
182
198
169
230
108
279
185
216
187
148
240
175
222
220
126
229
221
221
191
181
228
218
240
200
174
188
145
194
199
167
226
161
235
201
154
191
253
129
256
211
251
198
225
197
187
197
218
221
207
271
197
217
233
217
247
187
225
222
222
212
184
230
163
235
276
232
224
184
173
243
181
211
216
195
198
178
175
154
194
240
216
212
177
253
252
230
186
202
160
239
201
199
224
195
140
183
198
243
135
218
177
190
224
218
197
201
221
198
209
205
281
177
172
130
196
219
207
188
147
215
218
233
162
171
227
191
192
211
207
205
213
197
216
131
186
162
225
197
244
187
224
163
214
280
207
234
208
212
264
227
200
184
216
207
235
249
217
161
188
224
220
241
201
142
119
230
203
196
231
180
230
231
187
213
252
185
161
185
190
221
256
205
249
195
185
249
165
159
241
226
218
152
239
243
222
181
230
199
214
221
169
159
200
189
234
163
201
190
159
253
149
133
195
194
189
216
240
230
243
207
227
217
230
179
204
216
254
177
213
215
154
188
195
139
247
290
242
197
111
249
203
194
166
276
196
221
243
269
229
215
208
184
169
162
178
212
208
178
190
215
182
185
198
208
193
224
149
263
185
259
251
224
192
243
184
206
234
218
216
232
180
155
185
169
226
231
248
209
222
188
210
197
156
212
164
157
222
195
155
122
128
221
215
184
201
169
184
240
196
276
177
218
225
154
176
168
241
158
166
230
204
262
178
182
168
228
236
199
246
148
174
221
212
196
153
193
283
210
174
222
196
163
244
257
242
205
186
110
246
240
216
169
182
164
158
219
199
140
271
210
172
173
149
248
159
233
158
210
166
182
274
196
265
219
196
233
199
126
196
197
171
218
219
201
264
250
250
161
176
214
157
180
194
175
174
225
230
244
218
231
196
243
147
251
193
205
244
216
194
249
177
279
258
278
242
205
161
208
203
179
159
186
121
211
163
249
200
191
210
216
197
213
211
185
226
172
201
200
146
218
138
230
256
234
185
252
219
206
244
228
223
190
235
197
209
189
169
209
213
157
222
162
243
159
189
197
225
259
186
179
205
164
162
218
196
237
216
176
264
204
205
143
213
238
216
151
211
166
162
178
231
171
193
173
160
203
202
117
178
179
236
194
151
217
154
260
223
171
192
149
210
135
203
138
239
229
224
223
245
206
186
206
206
224
262
169
192
183
153
207
154
205
209
160
191
127
207
149
195
259
220
191
196
207
257
264
233
214
220
183
188
215
192
217
182
196
143
216
183
169
180
233
207
196
167
267
232
246
219
223
169
206
222
243
267
222
204
216
248
180
209
250
161
261
227
174
224
215
205
231
193
108
192
197
223
177
221
264
219
244
217
167
220
225
216
207
207
194
252
207
250
188
262
229
167
194
194
206
135
161
148
287
188
207
218
198
190
205
207
220
225
237
243
181
221
212
191
174
235
229
211
233
198
178
171
195
252
268
185
95
233
208
182
226
215
253
241
168
245
152
223
227
200
179
211
184
158
234
197
160
142
210
154
208
179
234
242
210
163
218
191
224
240
170
184
221
183
267
195
158
254
214
215
249
253
186
230
205
215
230
230
219
179
219
236
231
159
198
136
161
157
204
214
191
189
220
155
210
175
215
220
210
216
215
215
138
230
169
214
178
194
163
243
205
102
264
213
216
170
169
243
255
162
152
203
191
218
199
223
220
241
203
178
245
194
164
214
204
219
201
207
259
232
265
246
196
217
198
186
198
135
148
222
168
241
146
248
179
205
217
190
247
257
219
196
148
252
205
259
225
185
202
164
221
222
191
201
227
144
178
251
230
253
184
151
175
188
168
240
228
250
227
268
216
138
168
242
200
175
207
258
211
149
222
239
245
189
229
180
182
134
215
221
165
205
196
236
214
197
267
210
213
183
234
220
226
194
215
237
222
208
185
224
231
187
198
168
165
256
239
188
217
207
128
255
148
198
252
187
195
218
245
216
187
169
183
193
261
244
133
211
230
219
202
224
166
203
239
196
185
224
235
166
168
141
208
174
207
137
174
220
218
258
115
224
225
223
164
236
185
226
229
168
221
150
146
201
225
196
179
178
196
150
246
183
243
209
229
157
180
178
168
167
143
178
235
225
247
205
139
205
186
204
233
238
201
156
244
238
239
174
175
246
176
199
197
253
253
186
211
176
223
177
179
214
223
233
254
241
233
203
217
214
231
226
194
189
214
252
191
169
220
231
188
189
186
267
207
172
244
253
220
264
108
209
155
164
170
206
203
184
202
135
206
202
201
222
157
222
235
243
215
192
236
207
180
231
124
232
193
250
148
172
188
210
197
218
254
211
228
166
193
220
201
243
242
220
163
210
182
216
185
233
222
214
193
181
184
250
201
174
218
231
198
191
229
293
163
196
230
172
263
194
232
94
187
221
174
262
220
190
228
201
204
198
216
253
265
203
242
174
177
213
161
246
189
164
219
221
217
300
207
244
192
217
150
191
244
236
184
169
196
224
201
220
193
174
218
137
226
212
117
209
179
126
157
172
187
214
173
229
233
210
195
242
144
223
223
186
173
204
158
208
241
199
244
182
212
204
195
274
240
184
156
176
192
107
158
170
204
164
175
184
189
207
249
175
163
211
219
186
142
216
174
200
222
222
174
183
194
180
218
174
248
104
113
226
197
195
189
158
186
204
264
219
138
188
217
180
185
169
170
215
282
234
257
230
189
183
228
281
211
173
208
283
205
191
201
221
125
246
201
225
148
181
203
222
192
183
136
237
213
188
226
229
216
202
155
191
253
190
133
163
99
208
226
200
252
181
230
208
228
187
190
196
209
170
206
220
187
207
183
185
147
249
213
163
158
182
210
204
216
193
102
138
164
178
226
200
143
176
184
201
179
196
147
241
192
168
201
210
189
269
215
164
215
225
194
227
125
174
201
204
163
134
155
224
244
99
271
204
131
208
201
212
235
173
212
202
238
121
224
153
158
165
225
161
173
147
185
215
227
227
225
232
152
205
168
236
128
199
206
123
163
190
219
196
132
195
147
163
163
217
158
190
196
219
238
201
209
245
178
183
211
166
198
214
186
254
194
191
211
219
232
184
218
149
210
167
199
212
236
155
222
172
224
173
187
207
195
229
227
171
201
256
158
218
184
150
134
228
168
209
250
201
195
194
170
211
190
217
186
214
235
177
233
216
195
226
147
243
251
198
218
238
196
170
108
231
185
241
154
180
230
136
189
201
169
218
167
221
223
167
157
166
188
196
212
210
144
212
180
223
127
198
228
141
189
173
214
231
212
249
171
207
181
193
234
214
234
224
144
232
237
178
216
199
186
220
157
207
180
157
252
194
207
139
159
171
155
176
256
149
170
225
214
222
178
168
169
149
194
212
232
186
199
245
224
219
230
179
260
183
216
229
163
168
216
255
169
181
202
176
207
184
166
221
216
203
211
217
260
218
209
180
150
231
139
196
206
206
178
255
191
243
204
241
208
172
191
241
251
203
165
179
188
204
136
182
175
212
160
146
166
226
179
187
177
206
154
141
170
213
175
207
214
181
240
207
125
191
172
148
198
183
210
123
246
210
192
157
222
211
215
239
172
141
240
202
175
188
216
219
141
203
245
177
191
194
237
197
200
227
166
206
235
107
243
146
197
95
203
164
198
229
230
221
197
194
207
205
294
190
259
214
245
211
122
202
239
223
193
241
233
167
228
202
223
193
242
166
189
182
234
237
226
192
164
234
209
131
196
242
223
234
176
275
177
193
243
189
221
90
219
136
194
213
169
203
204
249
185
269
213
241
281
205
154
194
159
186
247
213
242
176
181
167
191
213
160
190
187
201
213
223
222
217
188
191
177
204
244
176
157
180
178
161
227
201
170
185
251
175
222
263
228
141
157
166
249
200
273
125
206
210
227
190
166
193
200
217
194
245
186
172
166
161
191
188
188
229
191
163
211
192
257
209
261
217
151
239
109
162
199
154
174
206
220
212
205
293
184
204
161
164
172
206
269
190
188
159
168
213
182
231
188
242
200
196
193
170
277
231
251
213
245
220
260
195
173
221
193
215
219
197
128
243
222
254
178
137
237
157
213
201
229
260
178
236
146
260
233
208
139
195
248
200
209
176
203
200
186
165
214
225
218
112
244
229
233
216
234
275
228
205
225
199
245
162
197
184
208
195
150
175
256
153
259
188
252
180
200
209
136
234
171
224
212
221
262
221
194
176
270
174
236
171
181
236
206
169
230
247
169
204
215
176
187
246
138
169
253
201
239
178
175
244
177
160
209
176
172
111
227
201
131
205
259
169
246
258
178
167
226
267
217
170
117
232
196
231
239
161
192
243
179
232
158
205
196
226
181
184
164
201
226
172
186
187
154
178
145
197
188
283
209
222
187
172
214
153
201
207
133
155
232
103
240
150
196
248
128
190
178
206
178
205
255
144
221
219
248
270
209
272
188
233
194
124
186
180
133
211
153
188
218
201
197
204
184
150
196
185
201
225
230
226
162
202
219
261
202
189
222
138
193
240
210
214
206
169
223
249
162
203
187
181
199
174
172
231
250
178
127
271
166
220
213
216
186
233
191
236
180
167
244
159
198
199
199
207
238
171
153
230
190
253
231
248
171
226
215
232
138
220
263
231
178
218
158
240
222
274
180
215
136
153
206
217
161
183
208
206
232
202
247
188
211
137
148
204
234
164
232
115
216
275
220
208
240
161
156
174
184
207
240
216
133
196
157
164
240
252
180
199
211
247
154
200
225
186
238
188
177
212
176
217
254
203
226
257
173
235
210
211
146
245
196
147
164
195
232
200
202
210
211
227
224
172
202
256
184
222
226
208
180
174
221
182
216
160
166
138
194
176
202
220
236
215
210
167
211
197
188
184
180
165
208
203
191
213
189
185
211
156
198
181
192
190
166
215
222
219
221
213
185
205
211
192
246
168
159
196
156
229
170
219
145
205
142
209
213
161
140
162
182
196
215
231
210
202
173
210
212
236
213
160
142
241
243
207
240
226
235
176
188
117
148
227
219
172
264
208
222
165
190
238
237
217
209
167
209
209
222
232
178
213
208
204
162
230
191
264
266
151
209
247
197
226
298
214
213
162
204
158
155
213
220
191
201
134
239
235
239
186
192
175
253
184
227
189
205
171
177
155
158
259
113
165
158
176
198
184
206
194
173
257
232
252
217
229
260
238
234
184
223
208
209
231
135
154
170
171
154
259
249
190
216
219
137
175
218
236
178
133
240
175
202
204
236
200
193
199
259
117
188
200
140
217
246
198
216
158
191
146
176
230
220
225
160
186
205
201
252
236
189
182
156
195
195
227
221
217
245
184
250
220
194
190
191
209
174
174
171
209
196
160
233
251
168
179
226
217
207
191
218
276
162
243
234
239
211
174
180
227
191
188
201
202
156
220
247
230
140
206
145
193
200
190
229
226
189
185
222
219
194
242
184
201
173
169
159
228
194
211
236
212
253
169
215
173
223
212
247
179
216
202
172
182
229
194
222
253
178
220
146
180
213
239
266
246
227
211
193
203
148
197
131
123
207
217
164
247
191
222
156
243
213
227
123
213
175
202
193
253
235
217
115
113
264
211
248
247
189
226
194
219
231
274
213
244
174
171
219
196
257
169
186
260
206
233
143
264
176
215
246
264
203
273
207
217
237
165
227
208
217
145
152
212
209
262
235
161
228
212
213
173
197
223
226
199
201
184
231
191
169
224
221
133
216
166
156
133
191
246
159
249
213
141
233
227
170
187
215
227
186
187
170
136
253
205
145
239
205
212
212
179
175
203
173
240
186
262
226
193
159
149
172
195
252
212
245
166
164
200
166
181
243
215
205
220
187
260
217
240
237
270
207
211
188
169
219
173
170
144
185
201
209
214
187
188
206
218
200
196
114
227
201
218
161
189
228
224
158
219
250
155
216
153
201
230
170
231
215
195
138
193
218
199
241
203
212
206
183
167
248
258
262
196
179
172
182
183
224
207
211
212
199
240
187
248
206
207
223
206
185
235
234
225
164
218
214
173
216
141
245
171
191
195
234
231
122
176
161
157
169
217
212
214
186
202
132
234
166
123
204
197
227
225
198
203
225
178
182
161
197
203
175
221
233
215
200
171
203
131
227
158
202
148
208
216
242
178
168
190
197
220
191
206
238
238
218
260
236
212
216
236
193
225
179
220
266
221
201
168
206
196
194
227
207
189
248
204
180
119
210
205
198
221
258
209
221
185
175
145
269
229
216
197
230
222
139
131
157
220
182
213
206
188
192
234
247
173
236
242
176
216
195
236
169
138
208
165
184
277
226
185
260
278
182
176
250
196
162
135
182
142
233
180
236
200
202
213
218
235
143
266
267
222
191
171
164
160
286
199
172
246
257
190
214
236
260
188
205
214
192
244
132
190
174
214
184
237
238
209
236
161
195
157
170
165
164
181
245
215
143
229
219
187
182
201
134
200
193
192
223
145
198
145
159
174
225
185
226
157
204
282
136
208
195
196
138
218
171
237
144
225
171
139
181
163
157
179
190
205
181
287
212
201
203
194
170
213
208
238
205
227
208
131
169
197
208
194
222
217
225
168
157
242
195
238
225
173
204
234
180
152
155
189
251
167
186
165
203
246
199
207
208
204
171
182
230
262
180
200
215
210
166
223
187
131
251
245
235
243
211
246
205
221
201
236
201
136
177
171
228
204
185
183
201
267
229
162
227
221
150
159
194
191
172
224
163
266
231
174
212
215
225
225
186
172
195
133
257
140
201
162
148
267
181
178
175
160
191
214
170
212
220
246
200
205
229
211
257
215
259
194
205
221
196
208
265
248
221
199
130
155
117
240
171
174
220
164
240
220
193
215
190
258
223
227
156
203
231
182
221
185
186
213
176
142
216
232
191
130
249
216
123
205
195
182
225
233
115
164
264
184
245
168
223
213
227
214
197
214
162
211
169
204
225
207
193
252
197
228
244
187
200
212
181
219
142
115
221
196
163
179
179
214
127
145
196
230
226
272
230
234
207
169
130
223
212
177
197
222
142
191
168
274
149
199
238
201
211
226
248
183
177
196
177
201
222
160
216
115
190
208
217
235
271
189
198
234
193
230
182
208
240
153
199
249
122
191
240
260
181
181
190
228
214
163
219
242
216
158
143
218
193
248
182
132
217
202
117
270
206
222
170
217
248
149
213
189
181
260
164
203
210
259
212
246
172
211
148
202
190
215
188
187
154
235
129
217
158
261
175
208
192
235
231
150
153
279
211
233
173
191
182
235
159
218
198
199
224
188
239
223
254
191
238
111
136
223
209
188
234
223
209
188
152
209
136
210
155
213
159
210
218
207
213
192
170
168
202
226
261
159
163
142
196
200
217
192
140
159
237
182
224
267
213
146
202
216
199
212
273
174
200
185
242
173
189
229
209
251
197
216
235
195
203
170
180
215
145
184
171
163
189
164
197
186
146
210
214
236
161
234
172
171
221
164
244
138
218
212
224
199
161
244
211
142
207
203
208
255
109
220
204
250
201
181
226
159
204
215
194
194
191
185
194
261
171
215
191
214
237
229
231
242
219
168
219
194
160
196
266
190
232
220
214
172
167
195
205
204
241
176
184
238
172
166
172
187
218
186
213
190
247
152
192
196
199
263
180
169
177
226
223
106
223
195
244
226
190
185
142
212
205
178
181
228
160
196
247
208
147
187
178
133
198
179
158
207
200
258
212
225
216
150
190
186
158
141
170
177
202
220
144
190
128
164
139
161
184
234
132
248
278
198
175
237
193
224
174
194
202
224
209
255
262
222
159
213
178
197
202
196
158
177
174
133
187
187
198
205
196
239
144
269
183
253
209
235
164
227
238
275
216
196
202
200
174
217
228
129
199
149
189
202
256
186
177
172
288
199
199
228
208
179
200
252
227
218
144
200
173
152
256
186
153
201
220
209
197
172
185
164
201
244
175
274
182
192
172
240
221
179
178
187
178
206
194
213
230
225
177
233
238
188
191
176
218
203
195
239
217
185
175
174
184
232
187
166
212
179
195
200
254
241
289
239
242
186
229
210
207
216
189
260
231
213
191
207
185
230
221
252
230
238
166
240
252
219
206
242
211
196
214
198
216
247
151
173
240
155
214
164
226
168
190
213
179
179
157
238
203
261
178
175
194
202
240
182
233
231
172
146
204
209
217
132
222
233
122
236
155
243
209
197
114
177
232
216
173
207
209
224
203
221
197
248
192
179
170
232
241
199
206
150
194
188
207
184
207
202
196
193
240
168
217
126
241
158
155
197
249
198
209
189
238
156
181
244
217
231
195
185
234
162
146
124
198
134
168
176
254
220
195
226
257
187
153
216
165
244
262
242
221
166
163
217
153
161
207
198
232
192
187
178
211
178
189
228
190
237
182
186
187
201
180
199
187
262
220
230
203
198
170
196
179
186
172
242
189
263
195
156
179
198
176
168
158
151
236
209
154
245
204
206
199
144
234
231
206
231
225
206
170
223
167
150
224
179
144
258
216
222
204
272
151
232
265
192
235
194
192
204
181
228
157
227
220
138
238
185
251
236
254
178
165
266
240
230
224
134
124
186
218
227
232
156
150
208
228
206
227
219
241
208
204
180
209
253
185
225
191
228
239
246
244
172
235
213
199
148
184
270
185
164
166
119
206
197
261
196
201
190
236
223
250
188
209
201
227
245
194
187
243
227
210
155
192
170
181
205
150
138
159
150
215
160
166
165
226
179
223
214
192
215
149
174
218
207
187
168
149
174
189
108
127
175
211
203
221
215
158
167
204
220
164
217
221
158
229
138
157
213
206
209
224
169
225
141
253
169
207
271
220
179
199
240
203
253
163
250
193
165
200
153
175
209
179
208
209
181
212
193
224
227
205
245
175
202
154
211
206
170
269
260
142
164
252
233
225
207
223
140
207
220
201
179
243
205
193
220
167
231
267
225
217
243
165
160
218
116
183
194
156
202
249
201
143
253
159
182
200
205
184
175
157
229
260
150
201
213
216
232
175
99
242
177
264
170
164
188
234
193
184
168
232
228
154
155
192
217
217
179
196
203
149
253
221
140
207
166
182
233
185
116
238
187
265
135
161
211
217
182
249
158
215
153
229
210
235
212
213
238
232
190
230
214
228
223
189
196
172
197
185
228
228
249
89
175
186
164
168
224
200
161
253
227
212
173
235
265
202
243
172
176
208
217
176
197
235
194
223
166
238
267
162
193
162
176
185
229
240
219
163
238
255
188
133
223
205
132
242
191
227
211
208
257
182
204
219
171
222
194
198
188
241
192
179
214
220
149
178
230
164
113
173
223
202
187
216
227
175
235
162
168
189
176
187
186
203
114
214
192
226
201
174
235
231
215
197
176
182
124
247
208
205
157
196
151
175
272
231
182
223
194
254
224
170
225
173
176
181
200
248
175
190
254
190
238
240
214
268
228
173
139
219
150
167
226
253
211
217
208
139
219
167
170
233
242
249
188
230
219
118
202
227
192
229
181
177
206
176
267
217
202
191
213
203
177
217
177
200
250
238
217
219
210
173
194
199
175
216
219
185
150
234
161
176
210
157
219
148
190
189
159
197
221
226
221
144
199
204
225
198
226
240
213
214
128
182
162
212
258
210
217
236
175
140
214
117
106
167
205
214
187
150
192
192
183
179
173
214
209
198
192
175
187
219
229
212
182
180
215
159
164
191
223
139
170
232
157
242
215
205
184
177
247
143
225
207
205
214
165
118
216
205
234
172
197
227
215
181
196
206
148
173
234
158
233
200
218
231
206
152
150
208
254
166
200
145
190
279
239
211
160
180
228
166
256
258
213
137
230
181
199
211
170
126
228
148
181
189
256
133
221
217
199
209
136
156
173
224
219
181
213
263
189
203
202
225
178
253
242
204
221
184
216
219
158
213
200
210
179
189
220
143
207
215
115
284
242
158
180
156
215
257
164
149
219
204
250
182
201
184
154
239
180
235
192
236
190
237
257
218
173
183
184
190
128
171
209
186
158
214
135
241
133
203
226
188
153
216
199
216
244
199
213
246
236
227
250
203
199
183
136
210
198
204
211
188
221
199
136
237
233
244
225
190
231
195
191
192
192
144
245
189
208
199
282
111
196
214
159
254
169
193
179
239
139
201
221
164
229
234
207
171
185
206
242
185
209
195
155
237
232
179
213
197
158
158
202
208
210
162
192
182
197
249
199
213
184
193
165
190
225
267
229
162
170
189
209
194
231
186
136
227
188
156
182
154
225
216
195
227
240
191
147
194
248
217
210
193
223
194
226
216
176
228
207
244
174
173
293
215
195
229
182
195
241
189
219
201
111
210
221
193
201
204
156
257
210
161
210
192
200
212
172
165
182
180
165
205
211
189
208
251
199
204
191
234
258
259
237
218
229
224
173
228
176
142
217
153
220
218
260
231
188
167
164
255
171
145
197
171
192
190
222
249
204
255
250
137
158
224
220
210
207
208
180
154
137
239
216
186
163
194
201
169
192
243
241
194
167
207
182
236
221
220
216
217
166
257
131
245
183
143
196
274
161
197
242
141
213
175
224
224
238
197
169
195
216
111
270
249
160
243
161
173
219
160
157
244
162
181
248
182
177
217
149
196
231
185
191
188
142
179
197
208
180
282
168
240
173
104
224
242
235
191
202
220
220
168
200
200
199
171
144
150
187
156
201
268
246
196
146
232
156
206
158
187
197
234
186
221
208
219
195
176
270
231
261
235
218
187
185
221
247
221
220
225
226
162
232
146
207
142
179
249
240
177
195
195
281
154
200
214
231
89
196
197
236
195
194
222
137
225
190
169
142
145
211
242
166
200
196
276
205
233
210
222
119
131
199
154
172
181
198
230
219
247
247
180
171
182
259
188
142
158
210
185
184
223
198
230
129
148
180
196
165
221
212
146
194
187
230
141
161
205
218
206
146
172
250
161
229
250
160
171
222
190
188
129
158
207
167
188
205
179
171
176
131
219
193
225
203
146
145
186
195
218
122
149
188
205
187
231
224
229
231
156
152
199
227
219
187
167
181
140
200
226
161
224
153
182
199
239
220
272
170
224
229
174
245
210
183
202
250
172
191
215
237
215
265
192
146
152
251
163
179
170
222
220
231
198
263
197
223
228
171
192
209
174
272
176
216
148
196
248
207
202
247
167
240
214
217
199
187
170
176
154
223
200
142
187
213
211
216
166
185
164
144
279
211
188
113
194
181
230
226
206
236
198
217
218
187
192
197
200
238
197
221
243
238
171
251
183
254
181
215
218
223
217
228
209
182
174
206
268
198
164
261
234
237
189
207
121
205
166
270
145
225
194
222
202
214
155
288
172
230
239
237
198
194
196
183
248
239
180
205
196
188
234
199
190
187
216
218
232
184
219
180
204
210
234
206
184
225
219
211
197
230
153
161
181
177
209
185
135
235
135
238
204
95
242
181
188
196
227
185
164
278
166
165
170
229
226
178
179
215
177
253
180
201
198
208
197
229
283
221
80
235
172
161
253
251
214
159
212
231
156
226
210
147
278
220
189
205
241
222
246
202
216
203
191
241
176
199
177
230
189
206
213
226
156
208
278
247
230
229
163
155
220
234
219
185
196
172
159
196
179
197
155
139
213
267
230
249
214
223
215
187
181
208
193
212
202
170
195
265
218
251
187
199
222
190
175
215
271
149
221
222
185
192
263
156
155
215
173
203
173
261
141
190
212
212
129
199
220
165
217
206
185
239
189
190
199
257
289
195
221
197
157
123
157
212
208
154
230
227
210
243
173
222
156
202
231
216
179
184
182
227
173
181
251
238
111
184
178
238
284
113
188
204
173
237
179
167
155
199
254
225
207
256
142
201
155
247
140
247
184
232
252
172
217
170
168
186
150
131
156
128
175
154
204
225
197
188
206
164
201
224
202
211
244
201
189
221
148
150
183
202
240
158
219
189
155
174
177
231
177
235
132
217
186
275
214
146
223
190
203
233
253
226
217
216
195
161
205
218
291
216
235
206
169
202
156
118
164
214
213
192
169
178
123
187
240
186
228
252
267
157
201
200
242
224
233
187
180
234
123
169
173
258
230
173
181
199
185
248
242
218
172
234
172
196
231
171
275
191
175
202
223
193
180
247
198
187
206
209
231
261
207
179
211
221
141
173
207
199
216
207
180
215
224
171
192
226
170
230
242
173
212
171
238
149
264
228
181
210
207
163
164
160
242
219
220
183
181
196
166
212
161
207
236
191
142
259
192
186
158
169
275
195
187
225
191
188
256
151
228
181
156
216
196
259
227
228
147
180
204
248
153
253
189
191
198
217
218
212
235
243
170
229
146
136
235
208
232
205
185
227
205
222
235
230
243
178
199
249
181
162
183
196
220
163
206
141
218
211
197
227
139
169
196
246
179
159
193
131
172
212
189
206
235
221
230
203
128
239
153
206
124
236
171
155
170
192
158
185
140
204
197
186
225
289
233
219
178
131
149
183
212
188
179
216
181
211
192
218
220
213
213
102
242
194
175
219
279
191
213
215
174
167
200
178
205
173
102
236
214
216
242
153
205
189
246
177
229
207
158
218
212
219
253
190
250
212
168
211
224
145
218
250
239
161
204
209
161
239
219
180
240
182
175
266
259
229
139
215
263
201
252
226
213
209
213
198
212
205
221
236
122
258
170
237
197
234
216
237
156
161
258
221
198
154
188
156
202
181
181
226
200
190
195
199
192
189
176
200
153
281
197
192
210
191
213
197
175
162
257
229
216
165
263
163
190
182
170
192
235
254
159
159
189
218
154
232
201
186
173
241
178
152
217
209
210
196
171
208
217
133
260
187
222
163
221
254
121
219
223
239
185
218
214
177
228
183
222
232
159
250
193
199
186
225
177
259
239
207
169
130
194
216
213
119
241
182
215
197
225
256
150
181
241
204
211
171
197
221
143
222
204
239
165
171
174
181
188
140
160
209
219
227
207
215
183
194
225
169
198
165
180
227
190
210
165
161
170
174
189
242
133
200
218
180
236
149
200
183
143
237
179
193
156
243
222
275
203
231
172
213
164
155
249
234
214
215
235
199
178
175
195
205
202
212
184
180
189
218
214
258
208
168
189
181
211
192
241
195
235
199
224
183
218
165
120
202
226
187
242
197
218
174
192
203
259
153
227
188
168
248
213
194
172
181
188
235
136
194
199
243
228
256
164
136
184
164
185
231
115
237
207
263
261
203
120
192
202
218
188
205
221
192
130
186
191
167
186
245
197
170
184
179
178
162
159
229
216
219
181
233
189
193
171
169
237
194
190
202
182
179
174
265
197
256
157
183
170
226
243
203
197
169
202
143
200
179
216
199
173
197
206
165
152
190
204
203
158
224
210
160
128
185
188
150
230
224
200
234
144
240
227
172
221
198
198
171
151
276
207
168
159
172
196
233
209
202
107
266
176
182
211
186
195
208
289
214
189
215
137
208
151
126
228
222
223
195
182
223
191
223
167
241
180
231
225
162
175
201
180
251
269
169
261
204
208
180
191
207
237
276
176
212
148
242
187
211
213
175
232
203
201
216
167
188
265
204
209
165
212
194
228
179
151
246
182
224
170
186
256
245
220
181
186
145
196
189
217
139
126
177
130
253
181
194
248
166
242
222
201
210
188
207
220
186
149
204
200
180
180
220
189
241
232
216
192
223
218
154
192
182
171
205
210
184
189
158
235
217
239
235
197
176
230
161
187
206
190
246
193
184
200
226
250
257
205
188
217
227
186
213
217
132
162
181
201
152
248
196
165
150
277
205
211
229
169
155
216
194
148
219
203
164
149
262
164
223
260
223
223
185
205
198
258
208
202
183
143
188
179
198
208
185
168
256
186
227
227
258
196
216
185
244
181
154
206
202
200
145
219
198
212
176
158
260
218
198
174
159
190
201
148
122
153
174
182
212
207
197
234
200
185
180
207
206
225
184
210
190
219
137
195
153
254
221
215
186
131
197
160
201
197
261
203
212
212
272
206
233
249
194
178
212
207
179
221
251
203
170
164
163
208
159
193
227
237
223
139
188
256
271
190
206
199
192
197
156
212
182
154
240
171
192
202
229
255
277
193
130
197
211
185
239
217
235
190
187
266
237
192
181
212
235
168
162
214
168
201
205
264
130
221
175
253
194
195
222
186
161
148
200
175
204
191
238
147
188
187
212
251
206
212
237
198
156
197
198
187
233
198
190
269
166
149
152
213
183
212
215
173
282
244
183
181
206
141
171
268
206
222
146
250
186
179
252
234
284
190
210
160
191
227
146
181
256
161
172
208
206
177
180
247
184
168
220
208
191
225
202
198
171
151
229
172
234
164
181
136
246
262
192
176
213
190
186
208
221
219
165
240
216
208
212
123
163
173
181
152
238
162
188
213
166
256
185
175
141
158
164
200
184
218
132
237
203
206
227
211
190
177
173
194
169
237
142
242
262
207
236
188
204
155
254
203
226
194
176
217
161
156
263
204
234
203
185
241
164
214
218
231
231
141
227
114
221
161
208
250
220
174
199
226
253
195
209
143
177
236
192
180
220
238
240
220
190
270
204
136
195
214
204
233
202
181
252
205
198
191
207
177
131
218
176
174
249
124
158
181
189
178
126
168
207
197
235
207
180
194
215
283
205
227
175
243
220
191
209
199
227
168
180
137
145
210
225
191
230
262
218
221
195
193
235
140
204
180
190
195
154
270
197
211
136
246
172
197
195
211
242
268
179
197
203
231
205
141
239
192
173
184
174
176
207
188
190
273
200
219
205
216
203
174
238
216
117
226
218
209
228
217
244
214
172
197
186
252
145
173
137
148
194
154
225
266
196
244
215
218
205
224
207
227
215
228
186
197
233
205
189
231
197
212
195
224
218
193
209
140
150
266
161
236
204
223
254
224
133
239
205
280
181
206
191
206
197
243
202
212
217
148
153
172
192
229
218
188
147
154
226
199
208
218
184
221
221
177
238
278
233
139
186
219
221
225
201
231
176
209
247
222
230
206
208
243
243
209
183
200
211
178
169
244
195
194
173
209
191
113
251
191
245
237
205
207
247
202
227
199
205
232
193
196
207
238
169
155
228
182
209
240
189
244
144
181
238
167
208
223
171
154
248
203
213
209
218
132
159
191
164
264
237
241
184
173
234
254
216
235
239
196
216
145
211
243
219
207
226
128
188
247
179
210
223
167
189
196
182
172
236
199
205
169
205
184
131
191
259
178
182
158
232
171
191
190
238
191
228
198
170
197
190
167
163
199
264
185
203
241
227
203
211
167
195
186
200
211
192
207
207
169
169
130
191
252
153
160
167
200
169
138
269
211
153
172
220
234
180
251
255
262
178
228
183
211
176
229
206
187
192
264
197
185
221
224
193
147
197
190
230
154
175
232
204
220
200
167
243
161
225
219
175
207
198
183
201
228
222
227
255
213
270
215
173
225
260
169
216
216
198
129
189
225
188
275
178
230
134
161
214
284
207
224
129
234
125
219
219
220
198
198
195
155
185
211
249
165
208
207
269
210
228
214
169
171
224
218
127
155
227
198
167
195
190
245
238
250
232
232
213
204
233
227
202
164
154
139
171
201
187
236
178
204
177
154
207
138
236
117
206
222
196
190
254
180
226
235
237
124
168
221
205
156
183
179
243
180
262
182
155
204
186
113
177
197
168
252
204
160
222
200
205
192
177
226
235
242
229
171
183
192
237
140
171
174
229
144
193
211
214
272
198
229
206
259
188
257
280
133
283
245
221
138
167
208
223
234
179
177
163
184
203
187
223
150
213
243
209
211
207
216
203
197
181
204
204
190
143
177
157
222
203
222
183
236
241
255
199
147
179
233
212
226
197
217
221
254
232
172
218
224
218
173
177
186
187
220
219
224
238
152
227
182
188
162
196
171
189
167
215
188
232
212
249
132
175
248
196
210
188
191
241
196
181
209
131
213
205
195
182
135
158
134
180
211
224
280
190
162
175
172
167
212
126
173
211
233
214
230
228
197
270
150
232
134
152
197
184
194
186
212
225
204
166
180
177
215
192
249
227
166
236
220
157
230
222
245
221
177
199
158
183
165
191
150
200
187
171
186
216
154
172
204
185
257
198
210
228
193
205
226
165
219
211
144
134
212
197
178
199
203
207
199
236
173
179
220
240
177
161
249
255
181
245
184
233
180
209
173
185
183
207
185
200
232
240
194
203
239
172
203
184
162
211
188
170
230
229
186
219
232
173
204
199
198
150
185
189
180
215
171
202
131
248
217
269
194
168
227
177
180
259
261
244
176
227
206
170
232
131
178
186
231
237
169
179
245
200
210
199
257
168
135
278
229
206
203
191
146
166
173
235
211
172
202
162
213
242
186
192
194
163
227
241
208
191
233
237
195
190
195
212
202
183
250
213
173
214
127
159
139
207
219
201
139
186
150
242
182
216
203
187
216
184
205
226
208
188
168
171
250
203
169
207
192
199
235
182
170
222
154
181
246
225
222
211
219
251
163
207
193
202
218
215
173
277
136
186
241
211
186
230
226
174
239
193
185
218
225
214
225
239
195
179
215
155
179
211
216
138
217
188
244
188
184
190
190
198
169
215
128
143
228
184
185
225
212
221
167
238
259
224
198
199
153
199
159
243
215
168
177
197
149
158
143
227
181
204
231
142
175
227
291
118
201
213
202
235
252
176
216
256
179
236
179
234
173
98
169
225
210
229
201
214
145
236
220
149
152
207
204
193
216
254
160
266
248
219
244
134
230
263
121
162
228
195
234
216
176
212
198
207
177
201
143
225
108
182
222
211
195
172
239
165
233
180
247
167
205
187
237
178
231
177
227
203
193
202
164
181
257
180
195
203
224
218
173
235
116
223
227
163
157
206
195
156
212
210
163
245
177
263
193
240
193
153
180
186
218
151
210
205
240
230
148
178
178
197
148
169
242
229
223
202
218
164
209
246
253
269
139
235
135
189
175
199
218
172
158
219
203
208
208
236
197
207
225
247
202
124
207
192
190
157
207
190
160
141
216
187
141
228
175
148
239
195
240
124
219
237
193
155
191
148
147
146
188
167
172
227
129
217
159
171
171
142
166
172
167
216
195
196
264
159
235
254
220
190
170
176
158
167
168
191
148
213
157
187
171
198
192
227
188
140
195
221
110
195
213
174
194
145
208
195
152
232
226
180
139
177
185
159
119
219
185
248
189
219
166
207
199
200
126
195
225
203
189
183
216
274
175
162
231
226
203
198
201
206
204
195
131
220
178
173
144
188
201
127
245
228
201
179
160
201
160
207
191
177
240
221
171
196
200
186
207
240
146
181
219
163
211
156
223
209
216
247
216
121
191
199
181
215
221
145
199
208
231
172
187
220
228
204
251
234
200
209
207
230
223
192
160
223
237
206
227
161
146
270
169
218
138
221
247
210
177
201
167
186
190
221
267
183
221
237
184
224
161
157
195
178
225
157
172
196
239
173
254
207
186
211
228
194
161
206
187
141
227
208
244
166
202
181
241
143
233
201
163
185
174
256
147
149
200
209
218
200
233
218
182
233
167
201
111
178
205
233
180
183
263
239
183
178
206
216
224
185
270
157
153
109
185
175
189
170
192
203
213
252
190
198
175
224
172
221
234
168
159
173
236
202
213
191
201
198
165
192
158
209
167
220
266
182
184
143
285
154
233
174
141
149
165
236
174
185
161
213
225
227
143
170
233
197
231
185
162
179
241
139
196
201
115
261
196
219
150
153
175
212
194
160
213
247
155
152
166
182
194
173
204
232
217
203
162
267
211
228
218
176
173
282
197
227
164
189
164
198
146
176
169
222
206
191
232
212
183
155
215
228
160
195
208
256
157
241
235
207
246
202
222
227
219
235
193
153
187
198
205
150
220
206
193
208
216
207
159
265
211
162
159
206
182
184
249
249
193
163
210
181
201
214
174
198
208
206
175
205
198
145
211
212
210
271
146
267
187
214
223
167
208
208
201
251
161
224
260
258
136
168
254
230
203
211
151
196
232
206
153
237
191
130
205
201
156
180
156
210
194
176
186
162
175
226
200
196
269
200
190
215
206
181
227
201
216
216
213
199
246
215
172
192
206
192
216
121
159
225
216
214
173
245
199
216
146
134
184
236
219
273
226
236
162
216
152
170
175
229
200
183
254
178
182
175
200
261
121
227
166
252
216
208
191
183
247
172
224
136
195
174
197
193
199
175
225
157
212
170
187
156
195
179
242
216
213
143
237
227
130
183
227
128
190
201
209
176
192
167
216
184
246
225
178
177
172
206
243
203
226
206
151
218
179
180
217
236
219
210
163
160
206
142
231
207
174
199
202
189
159
201
202
199
222
152
219
217
175
224
245
241
238
247
233
186
172
218
234
212
231
127
163
197
193
203
238
214
207
179
191
200
243
170
199
173
196
190
203
199
204
255
207
238
161
175
215
217
236
209
201
203
268
242
192
120
129
199
239
180
206
182
178
155
238
210
237
264
158
131
178
161
211
145
245
178
223
154
193
168
209
196
201
193
161
196
240
149
220
152
207
207
190
190
222
171
172
200
233
223
234
226
232
157
199
188
162
223
206
175
251
265
123
191
200
150
179
241
249
183
244
202
172
171
201
106
243
221
152
161
156
234
231
216
257
240
168
248
228
244
164
193
188
194
174
146
167
224
146
231
166
231
238
197
256
188
238
226
148
170
177
115
186
214
198
180
129
235
236
255
243
142
163
234
262
241
272
212
202
207
219
143
219
202
190
225
195
234
217
207
135
156
207
145
249
220
167
178
213
192
184
181
243
192
182
213
210
147
168
198
140
245
215
220
190
257
233
194
184
244
148
146
165
215
240
208
133
170
165
202
177
187
242
205
265
215
251
163
193
196
175
240
179
237
208
213
97
196
224
180
208
203
157
181
212
215
179
277
152
141
155
220
147
196
167
186
173
189
226
222
142
225
210
258
219
170
178
162
234
210
213
146
210
205
188
291
202
216
235
161
186
210
206
140
154
227
135
171
115
227
123
192
160
211
241
171
200
217
186
245
169
208
182
230
162
243
133
220
208
225
286
250
188
238
248
248
215
165
124
217
210
170
227
213
247
234
190
203
227
244
227
223
177
232
197
217
277
217
227
265
157
185
185
90
261
219
239
167
256
185
192
194
250
204
243
164
165
173
200
226
212
178
227
175
184
193
200
202
236
175
176
222
153
220
244
205
230
287
199
223
161
151
218
264
230
220
145
211
205
216
222
260
132
250
238
201
267
169
226
239
220
195
217
187
239
200
218
133
216
232
220
169
145
228
180
249
170
245
226
198
184
195
206
218
180
246
219
111
176
195
170
235
228
194
213
164
211
275
162
176
263
195
238
205
221
286
178
206
226
265
230
192
185
184
227
236
217
148
146
217
233
171
230
241
191
199
221
230
149
189
179
253
180
244
217
187
200
212
137
196
210
165
249
198
108
222
217
198
132
181
199
260
193
186
191
188
196
213
196
222
203
228
198
156
184
154
196
237
236
227
153
155
233
237
187
168
250
175
240
202
298
155
213
159
255
180
177
173
256
206
221
169
221
194
127
177
178
176
128
176
199
209
221
191
173
220
212
256
253
214
197
189
219
173
216
170
203
213
235
192
204
207
217
195
173
254
258
201
171
224
218
135
212
232
159
287
103
220
188
194
187
149
237
164
236
239
199
177
264
277
234
269
231
209
226
166
171
194
228
158
209
123
192
174
166
252
255
193
210
212
150
246
209
243
186
184
193
194
167
173
156
159
198
212
255
194
207
210
215
192
175
226
204
162
194
137
152
205
152
154
223
190
196
219
228
180
215
205
133
187
137
219
251
227
242
216
178
229
243
242
167
258
149
183
226
200
194
106
181
196
182
256
255
191
158
231
201
269
193
129
157
259
226
174
259
184
237
247
238
195
160
185
179
227
208
187
247
231
269
173
224
239
205
226
241
205
222
201
173
219
241
222
222
162
159
177
214
131
179
241
184
261
213
186
179
259
199
230
175
215
157
220
158
195
193
215
236
183
198
200
196
228
191
244
217
230
217
138
173
192
188
176
214
166
203
163
194
201
245
182
184
207
193
265
196
184
146
215
183
172
105
200
175
229
205
211
133
147
183
176
250
221
246
209
198
186
186
235
166
189
177
205
237
140
176
150
192
169
207
152
263
197
236
229
189
149
236
253
172
226
203
241
213
168
114
179
226
201
203
137
165
183
190
237
184
235
208
214
219
221
261
215
196
164
210
173
233
238
165
200
165
219
211
193
141
207
174
184
174
255
225
179
240
221
253
183
184
268
209
236
236
194
226
202
178
173
156
219
166
205
189
94
131
191
195
218
227
173
159
177
196
225
204
184
239
224
178
233
185
219
214
224
248
147
148
214
193
244
175
185
164
219
242
238
236
137
148
218
156
243
235
248
120
217
196
196
171
183
222
182
213
182
181
236
206
211
202
232
209
219
196
264
254
204
191
189
221
270
175
200
202
200
193
163
158
202
231
236
217
217
197
196
150
209
170
214
259
160
189
224
244
161
206
185
173
208
189
225
165
242
223
201
125
171
172
212
232
188
205
232
148
192
210
181
200
228
177
156
212
206
214
187
225
199
175
148
222
166
184
201
169
211
180
228
194
217
121
244
232
218
164
186
165
222
217
217
226
240
223
238
193
134
173
203
218
192
171
186
213
160
170
179
217
143
205
232
236
230
248
231
185
211
157
172
195
243
193
233
181
182
196
190
221
183
220
250
184
165
202
197
207
199
285
218
143
235
202
197
176
175
189
197
204
187
152
176
247
161
247
214
175
183
168
220
195
182
218
140
229
209
184
177
237
231
212
230
168
214
187
200
232
244
163
164
187
150
169
185
211
199
234
201
144
235
192
200
179
240
143
167
230
240
219
150
150
231
194
241
171
181
177
246
118
222
156
232
206
201
227
221
148
230
215
147
204
210
177
187
200
234
185
253
180
220
143
127
174
179
208
214
149
195
220
192
269
199
180
152
186
239
208
233
210
218
210
212
171
183
235
221
303
172
208
146
163
142
142
210
200
146
237
199
185
250
212
203
211
158
210
210
235
199
227
232
230
120
210
208
249
263
159
174
182
197
242
215
248
220
248
138
196
168
225
128
172
242
147
241
223
227
230
173
184
144
165
204
218
187
149
189
235
224
205
183
202
229
184
209
179
162
173
196
163
205
249
182
185
229
210
131
243
156
228
220
178
247
215
163
221
212
132
257
190
166
223
220
236
191
156
214
236
160
214
233
152
197
192
157
175
150
237
242
209
203
235
249
181
233
180
192
256
189
208
201
189
239
228
195
202
208
160
210
178
174
155
217
202
190
212
208
143
218
136
220
251
185
273
193
195
242
211
235
202
268
171
182
267
226
210
223
217
145
217
201
227
205
192
216
234
188
200
205
211
181
202
139
174
208
234
224
242
192
248
218
257
156
216
196
180
237
174
178
213
213
158
261
217
173
209
202
206
248
211
205
171
250
193
166
212
146
194
164
243
178
176
230
243
223
210
220
186
262
175
196
234
183
253
118
248
261
246
192
209
226
171
144
252
196
175
149
229
256
182
225
205
198
165
244
167
223
168
214
233
183
159
157
172
219
190
222
175
203
184
149
231
224
235
247
171
267
230
201
198
224
160
151
150
229
174
216
229
223
198
160
220
210
161
168
202
193
170
115
191
220
183
181
217
213
245
210
206
189
250
181
182
226
118
191
257
168
229
213
160
215
225
146
163
192
146
204
208
193
203
189
215
175
171
170
194
161
228
241
177
207
208
189
190
220
198
188
223
179
194
190
211
178
149
184
145
186
145
202
161
189
184
249
248
209
187
171
197
193
198
221
215
197
155
237
200
238
158
240
192
232
154
212
254
206
173
173
213
209
197
214
190
251
226
196
247
165
202
235
230
203
214
221
203
157
178
201
182
157
211
159
124
256
221
194
247
216
218
155
236
267
209
186
232
194
159
172
242
227
183
188
237
238
215
220
186
232
167
236
112
221
209
209
226
191
214
104
219
216
199
130
240
210
173
151
192
146
166
262
215
216
154
183
228
198
206
227
215
156
176
159
109
203
173
183
269
174
178
205
186
183
187
179
179
211
230
256
233
171
197
185
199
177
168
267
206
250
175
229
196
220
148
170
180
214
166
263
224
228
164
164
135
180
254
147
187
170
249
221
156
226
248
147
221
182
149
231
216
205
188
172
216
246
246
269
211
238
199
214
222
211
168
197
230
224
247
169
206
188
229
274
168
159
199
179
230
176
195
195
194
216
161
202
226
168
190
172
209
139
155
193
153
259
245
223
158
186
255
185
140
199
165
244
196
191
212
163
168
223
193
221
171
233
236
184
235
216
181
93
210
196
189
195
185
186
151
128
230
124
121
193
217
188
229
150
144
191
213
155
194
234
170
145
199
188
185
188
255
248
212
173
241
235
222
228
175
226
190
271
205
220
208
166
170
209
212
182
196
227
162
207
155
208
249
142
186
202
194
204
216
170
214
167
202
166
202
189
193
199
219
239
275
178
223
216
128
208
212
187
172
172
256
176
160
218
110
182
221
257
221
194
244
222
220
227
212
235
206
153
227
177
210
186
230
160
251
204
218
171
167
201
233
179
184
155
215
206
253
150
159
190
199
191
233
161
199
236
169
216
203
201
246
223
114
206
234
227
235
191
173
183
195
235
175
175
220
240
228
240
173
258
201
232
205
177
231
206
218
190
208
193
233
203
172
279
194
248
195
208
202
206
197
180
153
210
117
201
223
216
112
164
217
205
225
258
156
209
199
195
228
217
229
173
257
193
277
203
195
177
176
194
259
233
204
232
151
215
214
215
199
176
161
168
168
165
228
180
231
209
206
132
180
190
246
257
198
157
223
163
144
152
174
237
193
147
194
221
180
132
147
179
180
236
236
253
232
224
135
207
205
255
162
260
172
167
208
206
229
224
147
219
178
243
176
153
141
172
229
182
153
184
246
221
168
201
193
223
184
188
213
240
168
196
204
207
234
167
263
191
249
176
184
179
226
211
160
155
219
146
188
195
223
169
253
207
216
191
144
173
148
200
229
201
214
160
217
226
225
216
230
170
224
184
274
214
204
204
226
247
168
186
238
221
227
171
125
142
159
169
161
211
161
204
231
224
245
216
204
201
207
203
225
167
173
272
182
220
212
233
199
218
185
155
219
120
171
201
178
185
209
185
160
239
228
230
195
162
171
223
239
200
230
178
202
175
163
266
164
198
207
245
208
208
174
220
201
142
200
202
258
175
146
171
197
210
237
231
208
227
158
224
235
189
294
252
162
182
195
166
226
209
172
276
190
251
160
208
247
127
148
195
147
178
177
255
189
185
154
209
150
151
233
230
170
220
190
156
229
227
240
174
223
138
248
232
265
224
153
210
204
172
216
160
211
200
207
177
204
171
211
149
184
182
196
209
194
281
205
189
160
211
216
256
255
181
235
253
250
152
180
191
166
246
214
178
212
231
211
198
203
189
205
242
184
242
138
122
131
169
175
179
200
218
257
158
223
195
208
170
224
235
256
191
227
211
157
225
207
168
200
243
217
229
199
114
180
208
241
151
237
192
181
221
159
209
226
212
212
255
235
239
195
240
259
183
163
218
194
162
262
163
224
210
229
105
149
179
215
254
155
201
250
148
189
148
250
205
161
246
200
187
195
144
228
173
193
224
210
209
176
214
183
206
233
246
184
252
219
178
206
160
235
171
178
183
179
235
236
210
226
195
256
216
166
202
227
137
229
142
176
244
185
169
243
260
206
190
254
227
219
161
175
185
169
207
180
188
209
179
221
238
230
168
172
198
151
270
229
167
187
139
181
159
178
272
233
171
225
178
195
204
204
187
137
168
244
254
210
175
214
161
195
166
191
86
203
119
251
158
181
157
236
173
207
209
222
183
221
196
193
230
209
221
206
197
172
184
188
201
161
128
256
169
199
218
224
191
234
253
186
143
201
218
202
244
224
152
203
199
207
216
216
240
253
196
159
206
167
177
231
150
229
154
227
185
176
207
179
169
238
225
245
200
247
232
203
174
206
195
145
226
198
210
219
139
244
148
224
116
225
158
181
213
136
183
257
203
159
189
189
205
248
232
238
198
230
170
192
163
194
132
191
234
210
189
252
222
238
188
213
238
147
196
256
203
189
222
158
215
184
249
176
114
178
108
157
157
171
176
215
204
185
205
181
153
212
258
199
191
209
154
215
172
159
111
175
211
215
129
199
188
236
168
255
161
181
231
249
196
200
245
225
190
278
178
140
231
239
176
266
228
164
244
180
211
173
176
173
199
147
248
204
148
207
277
156
248
238
187
204
212
164
200
228
205
221
178
208
234
185
156
179
240
247
231
188
198
202
220
175
176
97
176
207
218
186
199
169
201
205
207
193
172
195
196
143
175
191
229
237
189
204
204
205
222
208
184
186
134
211
164
235
231
176
213
209
183
187
241
221
140
199
220
269
194
167
210
254
161
195
148
212
259
280
238
195
179
192
166
184
190
237
248
225
275
175
231
194
154
155
128
184
239
245
223
152
153
188
217
158
187
202
204
267
236
167
149
216
174
177
224
198
131
155
197
182
239
235
183
183
233
160
181
158
225
242
244
229
180
199
206
194
169
215
219
120
215
211
206
181
177
223
228
182
245
238
202
218
204
175
222
194
186
167
196
142
197
228
181
190
206
290
107
223
188
215
215
237
185
179
173
224
226
198
172
225
254
137
266
208
234
165
199
215
202
175
193
213
184
163
207
223
193
177
255
171
220
206
228
213
260
202
180
211
240
287
211
223
223
123
206
261
197
195
195
166
180
240
203
169
197
129
227
230
150
202
234
221
168
230
159
238
180
194
170
229
155
180
216
260
190
251
168
232
196
100
157
194
182
182
232
185
155
237
222
266
238
187
215
160
188
169
187
213
223
264
213
245
228
200
200
218
192
182
252
173
198
224
189
222
229
194
267
150
210
233
196
175
223
174
168
166
184
210
216
222
207
151
197
206
174
225
197
185
186
251
209
214
145
218
196
158
230
164
231
250
180
197
198
204
150
264
254
137
146
204
215
207
198
183
245
239
139
191
246
180
195
208
239
197
158
156
153
133
181
246
200
205
265
230
165
193
159
221
155
161
200
253
225
157
174
189
174
177
209
169
241
114
174
244
232
188
239
251
252
201
214
222
179
227
244
167
229
164
169
155
150
187
204
186
230
196
158
216
204
173
189
181
197
174
180
176
222
183
237
197
225
190
187
213
182
233
212
230
197
203
194
255
162
186
222
209
191
205
159
175
262
244
252
192
230
171
228
189
252
199
233
163
248
199
170
202
188
191
210
234
154
150
175
195
117
210
194
187
167
222
227
261
196
189
200
228
280
173
168
208
211
193
197
197
265
151
196
219
214
197
198
147
186
211
205
217
193
222
228
229
187
209
187
202
234
159
178
205
178
236
204
199
198
157
186
199
147
166
257
273
164
226
172
165
215
209
254
210
228
204
190
200
214
186
184
252
218
136
162
215
176
234
222
201
183
206
116
237
205
212
231
130
136
234
168
169
205
154
262
220
200
200
209
200
164
182
117
171
176
204
193
208
139
209
148
140
233
176
220
191
195
205
158
145
237
202
228
183
194
242
206
231
206
279
178
215
214
234
139
140
132
127
236
169
137
183
190
172
106
144
186
186
228
198
256
228
247
236
211
170
239
206
178
195
147
173
228
238
193
188
195
164
198
165
202
174
194
157
225
252
183
158
207
182
170
187
223
197
263
198
190
144
200
229
235
215
181
186
197
188
186
175
248
260
184
189
183
239
232
187
156
257
263
256
161
199
178
222
117
240
219
200
167
225
169
144
209
204
172
233
203
263
240
170
202
173
172
223
205
185
224
218
201
205
237
216
167
216
270
229
223
217
184
221
247
176
151
229
247
207
214
213
211
219
171
227
195
222
218
178
228
206
206
173
209
197
248
172
230
197
197
239
148
171
201
189
176
251
262
254
205
151
236
199
165
232
157
216
159
202
133
203
269
186
212
189
188
218
177
233
184
183
188
198
155
222
249
219
189
190
242
220
250
177
206
256
202
177
309
202
198
202
201
239
209
241
218
215
220
229
158
165
181
227
212
252
211
176
207
192
187
155
173
221
173
177
161
270
273
188
174
188
144
168
242
219
256
206
178
215
216
165
191
138
201
175
227
158
203
228
240
208
142
174
176
205
216
193
184
216
175
192
220
204
267
163
262
233
191
195
230
181
159
217
195
180
163
186
180
162
178
210
190
227
222
210
204
229
172
247
155
210
183
234
209
212
231
213
189
178
205
231
219
225
177
126
239
207
177
179
125
154
154
155
216
172
188
191
214
234
253
75
207
222
204
137
239
231
247
216
212
190
185
245
152
223
169
153
208
210
260
195
170
234
201
260
211
155
188
194
206
234
210
230
215
175
157
175
129
238
228
222
172
117
156
254
188
174
181
190
208
187
187
157
170
218
257
215
151
226
175
186
216
201
134
151
188
163
262
229
164
225
231
198
183
177
187
194
229
214
216
125
183
217
211
224
206
253
246
236
183
131
198
160
186
176
140
246
157
219
242
196
242
200
189
171
248
197
157
201
267
245
188
248
134
231
166
161
180
201
271
216
137
174
223
237
233
152
188
188
242
256
252
225
185
214
197
199
217
191
137
264
184
187
223
150
144
243
246
239
228
267
241
243
205
199
177
131
219
244
193
206
186
199
230
234
207
216
208
217
216
163
165
237
155
201
193
226
191
197
113
196
217
204
212
162
218
226
193
227
249
243
160
191
172
172
263
267
225
182
180
198
169
244
117
185
210
205
215
225
149
190
178
234
184
238
168
247
186
189
179
197
191
167
270
204
196
210
183
210
196
207
188
244
186
258
164
182
241
168
226
169
165
219
226
223
237
186
208
185
235
178
199
189
138
253
182
192
199
125
228
177
189
253
268
178
195
251
181
263
212
164
230
223
236
129
215
172
223
164
224
136
205
232
190
187
175
170
183
208
245
137
183
218
182
228
169
237
255
207
126
234
236
239
172
221
251
177
167
173
150
116
218
276
210
242
190
160
219
234
192
230
211
168
214
175
233
205
175
206
224
241
230
209
230
167
204
212
171
185
243
233
208
204
270
233
241
201
213
210
203
205
293
248
236
216
186
267
207
176
184
262
230
188
156
181
218
202
204
209
248
173
154
206
229
201
215
203
254
146
204
226
146
185
149
130
205
211
208
191
208
238
229
222
233
203
186
216
258
282
174
227
210
234
209
261
200
188
258
120
231
240
166
191
189
216
167
160
193
215
225
177
262
184
196
214
206
186
225
203
259
195
151
250
260
153
115
179
224
200
177
209
231
225
216
166
201
222
169
198
199
228
207
241
232
256
217
242
184
130
195
211
208
126
225
179
209
205
197
198
218
219
214
258
218
204
225
242
165
222
147
173
181
188
195
188
216
198
218
237
222
184
234
220
216
217
203
215
222
174
221
186
237
187
199
218
154
237
229
238
233
218
128
180
257
235
201
196
224
241
210
239
151
280
166
211
219
180
239
214
185
226
149
227
135
175
273
260
224
293
212
177
224
131
216
180
191
250
247
195
183
271
252
270
205
264
203
196
192
255
198
229
235
162
233
248
186
143
216
129
192
221
162
186
224
175
236
220
192
208
162
245
233
214
169
144
226
190
212
179
208
238
184
199
147
184
230
221
182
221
73
201
160
208
227
202
199
254
270
234
195
191
230
166
157
189
177
156
243
210
183
184
219
200
174
140
189
264
169
237
223
173
206
182
224
161
152
181
205
217
154
160
289
262
228
226
245
148
228
143
197
154
202
190
159
230
221
143
180
164
222
276
178
233
234
193
202
173
227
221
238
224
197
183
118
217
204
218
220
186
198
149
186
253
177
159
160
194
224
144
205
233
192
228
189
182
166
199
218
151
179
218
263
187
144
153
170
170
109
216
185
222
207
180
227
171
136
234
277
174
215
205
259
190
211
164
154
233
172
230
185
192
239
258
154
196
204
235
166
214
195
152
221
182
213
226
211
228
183
235
236
157
193
217
195
212
218
128
224
178
247
187
157
165
239
177
224
201
164
191
151
93
197
209
155
143
172
170
148
235
184
261
199
161
192
242
208
249
204
160
196
179
224
230
247
163
168
173
210
252
235
169
217
232
207
195
159
242
212
167
169
222
190
193
195
151
171
192
239
142
207
181
187
178
189
242
212
241
165
260
105
190
234
198
161
258
200
191
168
189
220
190
159
307
206
208
254
225
214
147
214
224
223
200
200
172
191
222
274
210
231
152
280
218
187
181
144
180
168
241
192
222
215
233
153
205
188
199
211
157
215
203
235
211
178
221
235
168
228
188
266
151
249
168
260
210
138
184
165
263
115
111
119
222
164
246
208
183
301
213
216
181
192
220
279
199
187
264
181
149
175
247
219
199
187
173
224
222
171
206
210
262
140
157
230
185
208
204
202
168
221
159
168
180
218
270
194
185
235
238
231
153
219
211
206
161
199
172
219
187
251
175
226
196
183
153
213
230
221
218
223
128
195
214
114
198
224
213
164
221
152
233
238
214
140
241
161
254
149
130
218
170
213
207
213
232
208
211
199
210
228
198
239
181
221
220
162
230
149
150
199
241
210
189
171
214
204
198
259
270
184
185
246
225
240
206
233
154
144
254
225
230
187
168
187
252
226
181
155
110
184
257
222
152
210
210
159
213
200
188
149
238
188
225
238
194
181
265
168
225
226
251
140
204
174
237
185
183
183
178
204
239
198
242
179
234
154
198
191
261
194
189
156
214
150
174
199
142
240
218
183
157
193
190
199
190
268
236
238
235
218
214
208
194
186
201
204
203
166
181
144
108
234
187
191
224
154
235
179
172
221
240
159
149
198
157
212
127
179
223
231
206
224
191
215
227
158
179
185
194
166
283
212
256
203
192
225
183
220
180
224
191
211
201
218
224
223
261
141
184
200
205
188
247
213
190
134
210
251
194
218
258
228
229
182
241
218
205
253
195
177
211
230
263
166
239
190
218
159
211
168
223
241
192
190
154
226
174
243
236
162
237
137
233
272
165
145
175
164
203
217
107
156
201
304
181
159
235
205
140
170
205
216
174
179
227
165
203
202
222
137
185
246
199
227
205
222
113
147
192
127
150
262
223
184
213
186
225
172
181
155
183
182
178
115
231
175
253
165
178
196
190
227
214
204
209
213
199
170
230
216
160
210
241
181
196
201
159
183
199
215
200
186
230
197
183
231
227
192
180
220
236
148
205
262
244
189
205
215
224
190
205
211
193
205
204
239
245
188
230
181
208
211
212
186
226
228
208
196
196
239
181
214
183
187
180
204
205
223
273
198
192
240
227
181
187
263
237
221
154
183
224
228
209
215
224
180
235
193
181
246
180
191
170
197
172
200
220
211
202
217
217
222
218
181
131
192
210
219
122
178
207
228
230
229
208
197
201
217
170
195
256
196
203
211
217
175
149
228
288
181
129
179
185
161
252
237
249
168
220
198
231
168
188
181
261
190
225
188
227
181
121
247
153
154
228
193
212
206
221
190
221
248
147
229
230
137
211
221
293
163
185
175
215
167
215
190
257
153
140
185
272
209
193
187
217
221
207
184
240
189
190
215
193
221
243
181
193
225
150
215
193
162
203
223
238
195
212
222
192
144
143
124
206
202
160
226
182
199
222
160
173
185
244
159
240
171
224
229
162
177
214
153
226
238
242
172
221
219
253
192
220
242
199
210
173
177
201
233
163
233
225
158
206
205
161
147
215
246
198
194
230
227
203
211
169
168
231
209
228
182
206
176
157
213
215
227
201
197
135
109
262
201
162
224
217
152
184
192
217
194
237
199
205
201
206
192
203
206
184
184
154
152
151
187
158
168
208
191
55
277
193
110
138
192
222
151
186
224
168
231
224
163
212
211
181
196
174
147
215
207
228
201
172
186
144
164
216
230
177
169
185
235
206
210
221
188
158
196
234
249
202
175
202
187
181
181
186
196
212
147
193
246
177
160
199
215
217
198
210
183
181
205
183
211
159
151
118
179
222
165
227
90
254
207
257
239
191
240
178
176
195
250
179
231
246
212
223
220
160
219
223
136
179
209
234
198
164
174
211
176
191
223
201
214
206
212
190
229
187
241
255
193
210
224
215
209
257
238
190
212
261
214
216
121
217
165
213
187
200
182
217
215
183
203
227
205
181
229
160
213
213
195
247
190
210
167
192
204
139
233
175
248
213
228
220
156
224
177
259
187
164
186
184
240
175
182
231
191
212
197
188
246
196
183
205
204
170
175
124
207
204
217
161
202
216
226
189
169
148
124
165
198
184
186
167
237
198
192
182
239
211
170
216
178
219
221
234
176
201
192
192
111
242
192
234
214
228
195
180
263
233
196
193
202
159
129
141
176
224
202
161
138
233
195
217
197
192
163
216
146
213
184
212
220
219
248
172
223
198
229
190
194
248
169
218
170
257
171
117
205
264
248
136
209
212
184
212
173
141
159
175
256
195
237
193
221
136
186
197
136
227
159
227
240
189
207
192
184
212
225
212
124
216
242
192
246
150
236
221
211
180
174
244
191
208
215
167
187
190
161
188
243
204
187
186
162
233
235
226
217
196
133
182
146
266
186
213
198
238
176
228
187
166
163
297
215
197
196
139
218
170
260
163
204
187
207
215
233
213
176
229
141
201
230
265
219
244
273
169
226
187
194
191
213
210
160
189
217
211
178
177
162
160
224
225
213
198
197
192
252
238
268
200
242
191
208
148
204
222
208
187
195
177
190
243
220
97
208
184
200
238
164
224
235
251
166
243
247
236
199
159
171
199
234
194
235
227
197
249
169
183
209
162
171
236
160
170
151
240
230
229
251
209
200
184
249
203
132
176
220
199
227
193
230
159
184
233
207
176
160
200
187
214
139
156
199
200
258
166
257
198
191
125
209
143
214
188
239
247
139
226
195
197
232
184
169
204
254
216
181
236
186
210
148
224
166
139
176
154
247
264
189
124
244
165
213
185
172
201
192
245
121
225
117
177
186
214
231
148
136
216
257
251
233
223
221
122
170
204
223
221
200
189
145
215
202
230
172
154
234
202
177
173
220
184
205
198
204
223
283
180
242
190
220
170
247
218
198
217
234
187
167
160
193
179
198
300
281
210
163
195
163
177
243
232
219
220
229
243
157
224
225
173
163
208
252
175
206
179
197
195
198
164
208
209
219
240
225
194
246
199
210
168
165
266
206
217
133
244
214
202
200
165
154
150
217
171
171
187
183
193
186
163
179
190
222
189
189
169
236
144
170
181
203
180
163
197
196
187
183
237
154
203
205
201
152
199
160
188
154
199
199
257
188
150
211
216
256
193
221
250
196
227
221
186
164
149
226
197
257
178
252
210
229
190
203
215
182
146
234
210
223
182
242
245
189
162
241
229
241
217
170
208
205
221
178
190
199
234
206
242
254
245
201
270
256
168
235
222
244
163
195
166
191
193
312
249
253
200
190
214
150
184
241
249
177
225
234
135
239
213
199
168
194
207
253
166
228
224
241
241
178
186
173
205
268
244
198
228
127
185
166
194
196
168
202
169
208
214
232
148
215
206
209
248
182
223
218
188
204
157
209
295
175
152
168
255
214
225
239
215
194
188
227
225
234
223
188
129
164
253
156
197
165
191
137
162
162
222
225
197
189
126
168
240
240
226
153
198
200
229
195
241
175
215
180
221
103
217
223
251
197
173
130
206
226
202
200
205
256
191
161
255
200
193
203
166
228
150
231
253
235
148
205
241
189
175
168
167
198
187
222
209
240
220
193
228
213
177
161
212
215
215
221
172
205
170
201
185
209
231
258
213
223
175
233
274
239
275
172
240
208
188
185
183
155
146
207
186
220
174
208
173
191
165
163
140
182
240
222
181
167
184
240
162
158
215
153
176
209
224
209
244
213
188
178
220
186
180
182
228
160
217
185
168
236
127
197
118
182
242
211
145
194
139
209
219
168
216
200
172
247
161
203
196
151
200
215
169
222
138
224
161
179
238
219
245
201
187
193
220
209
125
215
187
282
222
194
181
181
245
162
218
248
112
183
174
209
233
225
171
173
206
197
210
242
205
122
195
214
169
189
263
201
216
184
243
237
221
230
211
186
271
216
166
182
223
254
196
155
194
188
213
235
164
151
257
153
166
155
233
202
267
178
166
234
198
204
163
158
195
180
188
232
252
192
188
180
223
199
203
187
243
190
221
203
203
174
228
205
226
221
162
185
168
196
194
185
174
246
148
199
207
192
233
258
234
159
191
217
137
201
164
190
165
212
211
256
221
213
216
115
206
241
222
235
228
214
213
187
184
172
217
173
192
177
202
170
226
271
153
235
206
203
286
275
256
137
235
187
212
155
153
209
193
236
182
225
249
226
225
170
170
235
191
148
246
206
198
225
255
176
199
183
134
150
229
193
235
165
163
177
163
160
138
172
196
238
165
270
224
148
263
276
272
203
224
187
196
177
229
201
105
211
186
202
221
201
135
237
208
217
233
226
172
189
199
205
222
265
180
222
244
225
164
157
147
208
210
204
136
196
219
200
242
229
192
152
203
222
245
234
187
257
204
148
212
255
245
197
176
177
208
253
237
261
157
175
165
112
205
186
198
222
145
165
264
224
199
155
235
198
255
208
238
220
196
181
189
174
186
179
188
191
188
160
119
128
185
180
173
223
216
219
187
159
201
211
177
203
216
156
255
200
215
144
130
169
188
173
187
169
224
238
144
185
240
163
191
202
238
148
257
228
182
156
248
184
158
180
150
224
230
185
187
240
217
218
261
195
195
147
155
271
185
271
205
203
221
152
190
138
211
248
234
232
201
242
194
174
215
187
217
156
209
218
197
174
205
277
223
229
200
218
175
214
220
156
186
177
197
214
207
216
199
216
158
190
157
180
212
191
215
201
182
214
192
233
171
190
183
220
159
181
148
192
170
244
221
168
231
208
201
201
172
190
215
219
248
214
209
222
248
226
201
187
257
175
161
141
215
222
190
205
176
157
177
193
218
214
212
164
206
188
223
162
207
135
170
214
204
187
227
256
208
241
168
249
188
138
137
255
219
195
192
190
239
168
187
218
155
201
168
211
229
240
212
115
263
229
149
214
186
182
206
186
184
155
222
243
256
162
168
253
265
206
169
190
166
178
203
223
199
139
232
163
229
202
185
204
157
213
188
161
156
272
206
184
166
201
220
208
256
247
234
194
192
231
206
259
183
156
188
223
228
229
126
235
172
163
136
148
155
166
208
171
210
257
145
135
169
192
262
221
191
177
235
201
227
216
154
163
153
218
230
238
218
208
205
134
210
254
233
184
204
205
189
257
221
196
188
226
203
171
171
242
163
192
221
156
223
208
244
168
163
177
221
222
182
179
194
212
234
238
233
198
168
240
156
190
210
187
251
205
153
206
141
218
142
231
199
174
235
211
213
175
222
217
167
193
255
208
154
181
190
128
220
221
181
174
194
184
140
213
206
198
212
191
168
188
209
142
220
158
203
162
174
227
245
149
197
228
159
209
190
167
175
256
200
242
149
138
178
205
218
208
179
218
195
184
229
155
187
174
129
247
219
152
177
212
179
184
222
195
169
212
260
179
188
164
195
183
186
126
185
248
237
195
226
215
212
210
214
191
163
178
231
155
255
198
160
174
184
260
146
213
194
160
184
158
190
145
251
212
148
226
172
197
216
148
243
235
249
150
259
222
130
232
169
244
218
226
228
201
140
203
209
231
160
253
203
228
140
172
168
173
181
136
227
216
174
214
178
217
206
218
160
233
151
217
245
259
214
173
184
170
237
247
183
188
251
178
201
206
146
148
203
213
229
174
151
260
218
232
216
135
212
172
232
228
245
202
109
230
171
171
227
179
208
217
195
176
216
245
251
211
195
183
268
179
194
205
210
205
176
131
217
224
237
189
241
153
238
212
169
182
215
206
222
196
155
226
183
174
211
212
243
264
200
147
223
195
198
214
191
129
191
257
195
239
227
207
196
186
200
243
213
247
193
214
233
220
225
229
189
178
163
212
201
239
181
203
188
161
238
196
199
215
144
217
184
179
212
197
139
176
236
110
182
162
235
184
149
199
160
252
210
239
195
250
196
164
189
211
203
214
172
195
154
201
206
203
185
270
185
255
173
188
223
182
238
231
176
238
200
155
155
154
167
170
188
199
225
246
189
175
180
151
185
181
214
222
206
253
208
201
164
263
166
206
165
151
143
224
208
230
183
208
194
195
142
196
203
202
192
187
200
251
222
170
266
241
139
267
227
231
202
151
150
207
273
265
232
205
206
233
192
219
196
176
235
160
185
241
214
199
197
250
239
210
205
195
213
150
119
233
172
222
231
139
216
165
180
231
225
188
192
214
229
196
193
174
222
223
185
229
198
192
213
138
174
195
216
175
170
181
265
174
259
214
245
213
218
160
240
102
220
193
229
211
178
153
261
230
228
162
151
173
209
172
101
200
238
204
179
110
246
272
201
217
255
187
196
163
261
157
155
215
191
238
165
162
230
165
165
227
183
166
202
207
158
136
217
236
231
218
170
181
201
162
258
161
134
188
204
166
155
186
213
213
141
212
251
126
203
135
189
259
164
210
192
221
227
196
220
244
260
194
146
183
192
220
172
222
188
168
171
237
192
195
228
202
241
148
142
212
225
191
186
255
219
204
189
244
236
246
241
162
226
251
173
207
158
245
225
204
235
220
263
175
167
199
196
213
246
214
187
212
192
183
173
207
217
145
185
209
180
205
189
256
221
239
221
189
198
198
150
185
97
187
208
201
206
231
204
225
186
235
193
168
239
168
142
277
213
224
229
240
207
228
206
144
253
219
174
225
181
185
173
198
221
184
187
150
195
170
136
199
172
109
161
184
208
196
201
226
200
226
146
181
256
229
240
201
162
175
188
259
212
173
143
264
227
196
238
241
184
230
251
202
247
190
271
217
187
180
240
174
258
236
182
198
162
236
271
233
154
219
163
174
164
206
189
212
188
261
247
222
167
217
257
181
179
204
223
182
198
255
202
151
196
232
179
192
193
220
247
169
187
219
190
201
161
174
159
180
137
205
216
151
193
142
218
171
170
209
141
223
236
239
233
206
219
216
188
169
142
255
202
152
197
180
241
184
181
209
215
185
225
185
170
164
195
201
219
182
245
202
234
156
188
213
242
120
169
248
207
182
258
200
192
174
183
211
228
201
192
164
206
188
210
231
205
172
212
260
208
213
208
187
212
198
225
192
235
167
249
185
227
162
179
184
182
211
231
191
151
194
128
182
171
237
214
165
208
189
202
189
159
236
208
179
245
224
189
138
224
242
178
198
148
202
217
214
236
203
144
188
214
195
202
231
196
252
201
164
173
226
206
194
185
130
268
158
208
190
174
179
224
238
168
253
205
227
199
212
269
149
183
209
194
181
175
240
276
207
232
168
202
246
172
177
175
149
230
175
194
194
206
193
211
209
257
173
209
211
220
186
213
235
275
134
182
151
195
142
233
235
206
155
204
215
159
199
166
179
178
205
152
261
186
300
166
209
230
143
205
227
204
210
246
223
215
188
189
184
203
212
206
196
166
131
137
163
233
209
256
170
206
209
253
190
262
198
239
195
219
194
216
198
213
212
197
258
192
253
229
253
272
178
212
169
196
199
168
193
197
261
207
231
174
152
219
257
201
182
249
206
192
187
195
193
280
242
240
208
217
215
246
170
275
174
192
211
165
156
201
179
183
192
201
189
111
236
204
199
179
164
145
273
235
179
190
214
209
159
213
233
211
248
219
204
158
253
243
164
216
229
179
185
180
123
247
129
248
179
189
219
202
175
175
156
257
207
206
150
214
174
180
187
217
140
156
232
212
188
223
170
126
256
217
156
200
238
189
158
183
212
231
149
186
177
161
219
196
165
142
194
224
151
228
154
223
151
225
200
238
158
268
171
221
228
217
160
169
213
227
139
216
180
147
245
185
217
234
193
183
220
198
93
204
181
147
213
182
214
187
190
135
219
190
247
251
214
192
228
202
220
214
279
224
176
227
229
143
174
185
241
145
139
160
200
162
193
216
231
170
191
167
183
240
200
201
193
210
230
240
207
194
191
202
200
190
177
196
163
167
214
204
203
174
218
217
228
191
239
275
209
182
176
176
150
164
215
148
238
226
186
169
249
236
132
190
212
174
192
141
182
231
234
219
184
207
191
139
169
213
190
200
269
188
235
236
228
160
179
168
240
183
224
192
148
136
193
155
167
252
133
149
179
182
208
255
193
183
218
200
279
202
224
216
245
160
136
196
233
257
178
206
158
237
189
219
274
190
300
169
187
245
224
241
202
173
248
146
219
141
180
236
189
120
231
190
179
158
221
174
203
261
159
230
196
172
238
237
215
228
190
208
165
201
226
209
190
228
249
228
214
216
201
217
246
179
166
173
213
224
205
222
199
231
225
197
172
175
186
190
176
194
223
228
192
173
231
208
194
181
198
224
203
188
223
197
177
260
262
207
235
214
177
220
183
216
193
134
253
215
256
235
163
164
144
213
154
254
235
240
221
221
179
223
210
155
165
163
156
192
194
211
217
229
175
145
196
160
270
151
252
157
192
228
165
235
264
234
243
217
199
220
244
187
188
225
177
170
193
199
176
184
215
197
182
209
187
207
161
210
236
215
173
180
162
248
235
230
253
226
173
238
236
259
223
191
265
175
176
189
234
155
206
213
241
165
150
182
204
277
135
159
226
125
191
176
183
200
237
203
193
240
178
155
219
243
197
276
187
154
184
222
103
117
182
174
208
212
227
184
187
179
207
220
202
154
223
237
198
183
286
141
218
136
194
185
251
179
193
195
218
223
192
172
220
196
128
260
176
183
204
203
204
188
184
158
241
242
203
185
244
188
193
189
232
137
202
190
188
256
235
167
219
236
212
205
201
222
254
142
208
229
227
219
171
220
212
213
196
181
213
213
261
166
227
189
230
220
203
153
180
207
207
166
220
206
146
151
109
265
172
187
226
192
158
160
179
193
216
180
161
243
259
211
198
203
189
186
208
236
206
226
213
233
242
153
249
198
165
168
181
143
234
204
156
200
230
178
148
212
141
197
198
188
214
245
219
198
204
180
198
263
149
191
175
249
206
238
238
205
194
226
182
245
209
197
223
125
184
191
203
137
219
233
173
125
224
194
217
165
209
260
270
206
248
203
242
124
223
237
169
231
229
199
180
261
233
220
163
198
216
213
155
228
190
236
178
185
265
178
195
230
157
225
212
191
211
187
208
187
204
194
183
211
188
211
149
215
208
183
225
222
271
198
162
186
239
197
183
215
205
244
222
223
217
189
142
164
234
236
166
192
212
220
203
172
153
154
249
202
211
182
242
219
190
132
194
158
217
161
240
168
245
175
237
196
217
219
203
208
195
166
240
192
200
271
204
205
232
228
184
214
232
201
246
221
209
183
126
188
217
260
218
179
157
204
199
163
168
204
184
190
171
187
236
241
165
147
167
214
221
224
207
255
226
200
220
226
156
220
209
193
221
204
143
178
225
250
182
232
183
186
226
176
165
235
200
213
215
262
199
201
184
265
175
188
204
175
159
182
199
249
208
133
255
244
212
210
136
219
160
263
252
201
191
171
192
217
253
225
240
185
199
129
198
181
219
179
213
219
202
179
122
186
210
238
160
197
146
243
198
208
227
221
180
207
211
200
192
199
175
197
191
203
254
207
269
161
159
204
174
276
208
264
262
192
206
169
166
122
189
195
184
171
135
239
202
194
196
215
212
154
252
174
165
239
160
226
236
205
175
196
215
205
166
218
137
201
166
168
206
168
198
177
158
194
214
160
244
202
146
171
159
175
191
148
110
172
205
182
213
236
187
117
212
163
248
159
172
232
195
247
138
195
203
185
255
188
159
218
239
173
144
245
230
254
226
157
208
229
203
229
173
177
203
151
169
186
170
220
225
242
177
203
204
217
207
215
220
183
222
181
192
166
185
235
233
223
159
189
175
176
165
188
218
199
241
161
220
180
236
235
205
176
181
187
197
204
210
242
208
152
167
218
165
236
244
161
173
209
205
181
193
182
187
142
158
198
157
226
172
141
150
174
234
208
243
241
134
202
282
154
233
131
259
233
205
216
180
178
244
232
142
141
220
211
184
214
233
186
146
241
231
263
185
197
249
158
171
193
157
158
151
138
235
206
165
201
92
163
170
191
147
214
201
195
201
252
177
192
194
188
261
222
225
212
145
175
182
126
139
198
142
182
213
200
213
228
218
219
194
157
270
279
219
191
182
203
179
204
283
197
199
175
186
233
220
220
223
233
190
217
143
226
200
196
200
160
146
220
215
143
175
262
200
226
227
145
210
169
194
274
169
194
177
212
204
186
189
176
130
221
181
159
181
272
202
262
154
170
194
228
156
137
229
165
170
170
224
262
189
196
215
264
184
224
135
209
193
200
242
247
169
257
185
247
178
215
198
205
149
245
169
189
202
172
200
113
193
227
154
210
236
168
214
199
202
215
253
167
220
199
160
177
217
196
186
199
160
186
227
219
241
237
227
227
201
194
196
208
183
167
176
204
220
170
233
191
219
258
184
133
224
204
199
197
144
191
223
200
210
243
128
189
185
170
192
242
198
215
207
203
164
237
204
241
221
200
201
190
197
93
210
239
159
175
185
207
157
208
208
205
235
220
153
234
146
289
225
202
210
204
217
195
154
223
200
226
221
242
214
225
160
253
163
188
192
223
187
225
184
189
230
176
203
264
159
228
282
233
167
209
196
176
182
215
222
190
224
209
195
180
219
195
196
240
212
235
213
136
230
204
233
245
172
167
170
196
210
225
244
161
203
241
184
221
258
141
219
170
191
200
195
198
184
201
194
209
144
206
199
144
169
239
225
197
212
161
202
233
254
234
184
240
160
178
210
155
208
204
163
179
250
146
177
184
219
210
212
217
132
249
223
114
256
284
174
174
207
240
157
206
182
209
162
164
168
150
229
212
169
200
205
187
223
176
219
166
216
217
234
224
153
239
176
237
189
210
220
190
183
234
220
238
217
182
183
215
177
211
242
164
216
152
243
222
190
200
290
167
150
246
185
120
171
216
137
267
246
218
176
158
202
192
197
215
235
204
151
185
213
170
240
133
198
161
150
217
160
270
245
224
213
201
195
158
287
201
146
187
285
259
209
147
203
171
168
188
203
183
198
231
192
244
142
206
226
222
156
238
238
179
229
198
206
246
185
181
235
269
172
218
207
215
185
223
159
205
240
211
172
184
166
238
236
213
216
245
221
234
204
190
154
191
174
188
179
180
184
208
138
189
172
214
218
167
158
204
140
201
210
162
182
227
253
197
178
258
211
242
215
206
204
218
231
213
237
206
171
171
207
250
236
234
201
179
236
195
186
272
198
194
212
211
190
199
209
153
234
209
210
226
160
191
231
192
172
144
188
163
152
196
151
239
245
239
204
188
201
189
217
211
166
194
203
170
232
197
176
218
211
205
226
231
165
228
204
190
167
226
200
131
250
148
197
208
172
211
187
188
175
235
188
220
188
215
172
186
180
179
195
188
177
221
211
187
169
226
242
201
264
196
169
237
207
202
229
198
176
183
209
212
245
179
191
160
164
186
278
95
156
177
190
182
244
213
266
185
226
249
239
186
217
229
219
198
219
240
155
273
190
201
144
195
248
214
210
180
194
167
178
238
238
239
131
249
229
140
239
181
157
220
180
185
164
195
201
180
201
127
208
234
220
192
263
158
155
213
161
181
245
194
192
161
169
173
170
237
230
213
71
165
217
199
161
211
257
220
218
182
210
171
164
107
217
240
163
142
143
149
232
167
237
232
208
191
156
193
183
181
177
184
258
259
227
204
174
244
196
199
211
193
240
180
174
267
161
189
237
230
125
204
250
241
253
225
187
225
211
209
214
185
220
207
194
250
200
143
216
194
164
270
216
184
184
233
196
229
243
237
181
169
248
173
216
227
200
188
257
179
198
259
151
270
182
231
172
201
219
231
224
178
142
240
184
151
251
230
186
153
221
215
194
249
249
160
233
228
202
230
228
152
198
201
188
189
200
136
207
150
186
232
217
240
263
211
239
200
144
202
193
203
286
186
183
246
183
190
244
163
228
200
204
265
212
212
230
211
253
206
241
246
186
234
227
197
144
241
159
282
189
237
168
225
137
204
188
240
191
197
207
188
222
205
160
270
252
213
202
130
230
269
196
146
205
211
206
194
217
242
191
194
149
252
176
192
151
172
222
205
178
206
175
226
208
239
217
215
212
164
273
179
190
135
124
164
171
228
205
183
143
143
250
178
220
175
211
176
151
183
242
229
251
125
235
172
184
199
204
215
215
199
138
146
168
146
159
115
197
216
238
234
213
222
214
173
244
196
211
209
190
219
220
191
206
223
188
229
214
262
265
174
171
195
246
276
170
218
235
199
193
254
173
215
240
196
147
234
167
180
235
191
232
169
171
200
135
214
134
247
256
166
157
183
195
179
194
209
216
196
176
222
231
251
176
188
172
211
196
150
240
188
194
220
245
228
152
206
211
188
238
185
258
220
159
242
207
219
122
220
186
122
170
180
194
201
245
209
129
186
235
229
112
145
202
227
195
271
276
256
256
246
172
190
208
214
243
259
144
178
212
256
126
132
216
182
156
150
196
171
219
195
133
208
226
151
211
180
189
154
265
148
208
150
203
239
233
194
221
202
203
122
207
201
195
235
212
183
210
199
246
266
180
172
222
212
190
218
194
209
228
161
213
229
255
215
167
224
164
161
219
256
162
221
190
241
222
209
188
192
199
165
163
123
207
212
238
203
197
222
259
227
157
217
174
221
136
237
197
200
154
214
221
173
205
230
196
211
222
164
202
178
231
239
227
258
209
197
233
239
174
162
232
174
203
182
120
194
153
174
195
254
225
262
249
213
184
210
259
184
196
152
182
163
228
249
193
176
166
220
257
190
212
206
175
242
235
174
181
161
173
181
176
153
267
197
232
200
174
199
194
213
224
115
220
225
219
179
182
242
227
271
231
182
201
159
154
295
217
208
240
247
200
181
202
235
150
183
142
222
187
161
184
163
231
223
165
221
216
179
171
148
200
211
219
235
268
211
228
232
200
162
196
162
198
164
225
213
165
159
243
209
193
246
157
208
220
216
163
237
205
227
194
222
230
179
164
265
156
146
173
209
182
183
147
192
241
211
172
196
184
210
211
198
212
241
135
213
220
226
239
177
180
234
129
198
199
247
239
211
190
245
212
242
221
167
237
298
121
228
211
174
205
84
158
227
228
221
220
198
222
200
234
162
194
201
190
245
124
194
273
197
178
201
223
229
160
196
164
204
228
172
236
208
209
233
205
173
199
145
244
279
95
274
197
196
259
177
225
216
195
197
204
123
196
154
194
215
218
169
179
217
208
148
197
169
158
161
237
230
174
211
186
230
228
242
209
165
276
203
167
181
220
185
224
186
249
153
209
224
245
176
230
156
148
239
245
235
229
197
197
168
212
247
207
233
155
185
253
181
209
123
217
235
265
175
205
209
221
200
195
214
224
159
190
165
205
206
194
201
183
216
143
174
185
182
142
187
239
231
219
157
205
190
170
247
198
182
246
214
190
154
185
192
202
219
200
231
164
127
192
202
200
169
216
164
179
175
266
155
191
170
278
258
153
166
227
198
139
224
147
212
208
205
171
157
162
247
227
196
174
156
184
240
262
246
156
213
217
235
188
195
249
190
194
210
200
212
234
249
210
169
230
210
171
220
175
163
224
184
196
197
168
170
208
209
218
169
163
220
204
239
166
195
169
273
199
254
222
168
174
243
227
172
212
173
261
248
228
230
263
206
211
203
201
204
176
180
267
218
205
211
230
165
160
190
213
184
205
219
212
241
209
193
244
155
165
174
187
182
245
176
202
165
210
224
163
182
198
229
234
203
219
218
188
171
208
225
188
251
238
249
190
180
145
133
186
207
227
243
129
277
111
220
191
185
143
165
239
221
238
127
178
222
258
206
180
215
264
206
182
157
216
180
238
129
146
176
240
246
130
160
156
212
261
181
253
256
163
194
178
215
209
220
188
182
153
190
187
238
141
205
218
189
204
164
195
197
172
270
157
171
192
223
246
255
190
200
224
230
205
235
285
207
196
188
274
213
158
235
232
227
218
248
196
220
217
240
223
307
194
193
164
196
197
187
191
235
135
98
247
205
213
258
193
206
198
196
197
165
175
206
233
176
235
194
197
190
231
224
181
145
269
205
233
139
234
272
252
224
191
210
116
116
209
173
191
182
181
210
217
224
190
152
218
229
211
197
166
159
215
170
199
197
201
203
209
130
246
204
173
194
171
122
161
231
178
166
180
195
185
160
170
205
165
232
176
211
204
239
229
164
249
186
197
182
266
177
141
266
232
190
181
173
206
151
181
234
149
162
283
203
142
224
225
198
212
159
135
208
183
215
206
237
157
223
250
200
202
183
241
163
146
179
218
161
154
158
249
143
177
230
234
222
182
198
240
201
218
239
194
208
215
146
122
266
195
196
196
202
184
212
239
236
232
168
194
199
148
254
141
195
204
187
216
219
228
197
234
142
172
262
188
225
183
154
173
110
245
234
183
218
159
212
190
231
206
237
142
235
172
199
234
176
142
195
126
237
250
200
235
179
168
150
220
185
156
195
220
174
200
162
218
163
132
205
249
213
188
223
239
225
151
232
176
179
199
177
135
181
246
175
172
233
191
213
216
220
214
189
228
214
177
208
193
132
161
204
172
266
231
266
171
186
225
221
176
205
193
250
243
154
176
221
253
209
226
165
203
212
168
167
164
155
187
228
232
239
230
113
198
179
187
224
182
204
168
208
117
151
213
238
210
253
236
229
219
245
189
258
214
177
192
236
205
172
171
241
187
188
227
170
211
180
177
240
201
157
184
258
231
225
191
201
191
206
190
233
228
165
193
188
216
199
238
210
250
198
171
195
187
129
225
262
191
214
223
195
220
245
170
165
150
168
238
211
197
228
157
218
185
230
230
161
182
148
174
246
207
207
189
121
149
142
261
200
211
199
267
183
211
175
233
125
209
145
249
175
195
174
262
285
140
114
227
162
227
149
171
204
160
149
210
199
171
271
202
213
205
174
201
194
238
224
208
201
197
182
198
142
147
212
226
242
195
188
176
197
205
153
268
211
220
183
196
239
187
209
219
223
219
231
192
200
171
170
165
178
161
134
259
151
123
210
240
227
192
204
205
158
220
184
200
177
158
140
194
175
273
235
198
199
257
213
184
173
192
201
196
151
260
176
205
217
199
199
204
274
171
165
206
180
204
183
266
195
180
206
205
189
204
213
209
226
161
137
177
195
248
166
174
204
239
186
253
208
199
163
206
207
232
237
204
165
177
219
180
236
204
173
236
238
200
246
234
233
237
163
171
246
152
250
182
200
231
159
214
237
186
213
198
159
197
224
186
265
217
273
190
153
162
231
178
249
191
243
180
210
204
219
172
224
246
225
235
208
184
217
191
222
267
142
209
156
215
189
231
172
162
264
240
216
195
152
215
203
163
158
159
224
148
224
188
205
260
162
190
267
175
260
203
150
262
116
225
224
182
216
204
167
147
230
233
221
144
143
186
185
215
180
264
145
141
187
242
197
175
232
249
167
226
175
187
239
171
262
164
237
222
169
198
203
185
173
183
220
193
182
244
257
207
230
186
257
187
192
210
139
199
202
177
183
133
245
160
228
207
201
144
203
227
195
168
231
221
210
228
238
231
204
237
171
266
223
209
261
229
250
118
231
133
206
211
179
140
177
219
174
213
124
203
197
216
231
170
222
167
259
261
210
261
219
150
187
192
155
226
156
228
219
184
223
226
206
218
251
164
152
254
207
279
197
224
169
135
184
150
230
168
228
232
172
169
229
196
213
246
158
138
229
219
178
191
182
192
190
211
165
155
90
186
190
176
197
190
214
199
179
239
228
259
197
288
142
197
199
223
159
159
160
197
140
180
241
240
170
243
285
219
209
255
236
199
238
221
230
185
220
194
191
227
227
228
181
190
175
204
212
253
191
191
193
209
202
201
255
182
212
216
212
260
236
168
206
218
213
214
206
160
176
219
219
104
234
238
194
181
184
221
220
168
210
210
243
213
182
243
236
212
234
200
219
148
211
274
180
251
209
218
177
160
162
166
242
168
250
232
119
248
249
155
166
201
173
262
162
170
184
217
175
201
186
216
175
238
217
182
244
166
236
186
212
278
226
235
224
206
222
198
197
183
176
176
218
245
82
180
238
181
193
147
206
273
195
218
216
168
208
183
217
199
239
218
231
270
187
199
160
247
192
164
227
208
204
187
269
233
196
152
214
185
220
148
182
228
145
248
217
232
122
210
185
183
175
196
154
125
226
201
245
175
168
213
207
222
199
247
175
173
171
198
146
199
170
155
130
208
220
224
235
208
178
151
203
219
193
234
198
213
216
187
231
248
196
190
175
189
250
172
237
226
173
235
143
170
165
261
96
232
201
190
212
184
197
212
215
108
251
185
179
218
161
207
259
248
200
129
240
219
221
209
204
159
239
202
238
181
235
193
198
196
176
257
203
230
216
245
195
142
209
197
207
231
215
200
159
171
175
197
238
259
100
169
209
205
209
186
205
195
245
230
197
193
130
194
214
214
185
203
197
164
208
229
304
224
224
153
251
206
233
155
144
227
136
249
126
205
213
196
210
207
222
148
150
221
235
212
218
202
203
198
239
174
146
188
210
208
195
230
136
261
236
245
228
219
199
229
122
173
217
250
104
171
190
185
192
185
240
223
169
164
205
189
245
185
201
221
187
213
221
188
212
218
134
162
217
209
271
206
177
271
152
190
224
197
203
193
201
229
160
198
171
174
229
180
203
184
220
228
214
208
221
202
250
216
173
212
259
135
209
198
201
194
176
208
160
231
183
194
198
231
142
181
120
199
205
145
187
233
175
243
191
214
145
233
178
197
160
188
190
214
206
143
187
185
159
173
207
245
224
227
159
181
139
209
152
190
210
206
170
202
205
170
242
173
156
132
178
166
210
157
164
218
232
173
202
182
154
206
184
232
167
217
245
160
254
193
227
198
184
229
250
204
169
208
235
180
203
215
219
189
167
171
207
172
197
206
148
239
226
214
191
154
183
206
195
226
216
227
243
197
192
197
207
241
195
235
202
229
160
205
221
220
263
211
233
177
187
228
173
204
230
230
246
172
188
142
204
212
192
240
188
172
205
254
251
200
247
213
262
198
158
140
219
168
221
250
181
242
218
230
197
175
202
153
240
158
193
155
234
166
241
177
230
182
201
159
240
218
168
201
248
209
169
235
132
164
221
219
133
228
116
201
215
185
218
260
147
168
167
192
211
196
204
178
182
238
188
261
178
207
215
179
155
209
274
161
196
179
234
251
168
173
206
243
229
185
192
209
175
237
182
171
211
199
226
173
243
198
193
260
229
167
217
195
249
208
228
206
218
191
171
175
162
135
197
290
201
188
208
244
213
215
202
223
250
250
246
243
192
227
142
228
217
208
159
155
213
124
188
216
211
255
209
163
231
152
188
187
236
191
223
191
203
171
171
219
158
219
193
171
188
140
195
236
197
217
199
208
166
233
201
193
238
252
130
162
155
173
201
233
209
262
201
183
231
251
206
192
168
233
209
207
179
213
233
210
220
153
226
224
149
122
206
184
138
151
205
174
292
202
225
238
193
232
203
224
275
191
236
188
171
224
217
166
167
207
268
232
150
199
192
223
124
200
205
224
129
204
224
210
170
188
117
137
212
219
237
131
227
221
143
180
209
201
213
160
212
221
243
177
222
240
187
286
134
162
157
166
208
271
208
146
204
138
163
190
168
235
151
164
203
154
186
224
173
214
175
203
171
196
145
230
222
210
204
168
203
165
153
146
237
205
237
159
234
201
225
154
250
213
242
183
212
212
247
164
246
184
137
210
253
195
179
217
177
255
133
242
230
128
246
230
144
209
208
256
233
125
214
201
232
221
186
187
174
236
243
177
171
172
125
168
179
209
205
183
245
174
262
148
217
216
174
186
220
201
200
172
167
219
183
144
161
188
208
260
223
196
174
218
206
162
138
212
160
182
179
188
187
224
216
232
218
173
170
159
134
135
187
193
216
121
213
195
209
228
227
161
194
209
177
211
191
239
166
209
127
226
312
237
220
224
182
107
213
214
196
213
228
193
211
192
200
176
240
149
241
189
235
182
142
212
243
214
205
223
202
174
175
280
255
138
163
228
201
187
189
212
235
209
129
171
238
221
186
187
170
230
174
206
185
254
238
240
231
229
163
206
182
213
221
112
223
117
208
206
217
256
114
156
179
184
219
245
214
200
206
158
165
173
234
197
220
162
170
212
187
202
148
171
215
247
239
191
221
137
158
184
214
185
187
252
200
185
182
179
189
227
263
248
191
185
194
251
187
212
229
201
203
142
255
230
171
227
203
188
172
116
202
136
194
215
219
193
159
217
219
265
257
252
273
182
195
242
173
196
141
239
227
256
224
216
191
199
202
219
189
169
266
244
175
185
196
193
180
195
222
215
221
201
124
198
203
194
175
225
171
236
177
199
223
134
187
170
226
254
236
219
178
208
119
194
206
248
227
217
177
182
200
152
214
185
230
259
192
192
152
183
197
236
169
165
168
167
165
171
183
226
177
211
221
223
173
247
238
237
175
174
217
191
200
205
197
221
217
127
193
221
215
188
236
161
213
205
201
249
185
172
208
173
156
184
140
170
232
192
180
241
181
170
292
197
264
206
95
251
165
298
158
206
242
196
179
192
167
229
221
264
224
276
189
227
205
203
218
258
180
179
191
179
245
209
209
209
211
243
195
197
170
236
255
168
261
148
203
190
165
224
167
253
206
155
258
208
187
224
243
146
193
263
202
195
150
119
117
111
172
132
205
138
213
164
163
240
163
160
241
204
172
190
187
195
244
214
203
196
241
267
266
154
106
177
210
220
183
177
230
240
213
196
125
188
134
237
158
156
161
165
206
234
234
214
150
165
203
228
246
214
182
228
232
217
235
148
248
186
220
217
192
142
190
213
218
188
124
203
228
193
169
185
193
231
160
187
245
200
206
223
191
213
244
204
192
219
219
197
233
211
190
114
197
245
187
199
128
120
190
220
199
167
186
169
208
191
170
182
186
246
206
168
199
223
193
218
260
242
224
214
172
247
214
204
180
182
232
179
225
198
248
217
97
165
147
221
190
186
148
167
233
203
226
216
229
227
228
231
209
234
220
205
260
166
219
142
193
169
170
210
199
195
214
210
215
161
144
197
168
183
229
119
239
155
242
182
161
153
184
186
248
235
138
229
185
185
181
192
222
172
224
187
189
211
174
155
184
196
175
137
206
131
226
189
190
198
182
247
235
227
136
150
170
257
166
217
163
197
229
231
208
218
214
237
215
239
233
188
208
235
215
139
139
201
155
260
165
247
173
231
218
181
192
136
227
185
224
185
229
178
187
165
212
183
166
202
177
158
180
199
217
242
188
151
163
239
244
206
179
185
230
243
219
198
206
187
224
179
183
190
215
219
223
215
206
203
244
149
181
228
180
235
173
194
137
219
238
197
198
152
221
200
240
208
153
256
240
198
237
242
198
226
187
190
199
213
177
137
249
227
225
195
207
174
200
245
211
158
262
214
159
197
196
87
145
208
214
175
192
196
214
217
202
164
146
183
152
213
191
247
214
224
153
207
231
148
104
123
246
159
233
206
181
164
204
179
204
155
201
227
120
213
194
251
234
224
191
156
189
196
193
142
215
231
225
211
134
238
250
200
225
173
157
186
176
205
184
184
211
128
194
260
177
131
189
184
196
212
223
172
212
181
178
216
226
174
179
235
213
240
212
205
245
220
238
174
222
167
193
151
187
232
153
265
203
218
233
242
147
202
217
248
170
210
213
120
199
178
168
206
217
234
218
233
208
176
216
227
181
212
218
185
258
202
218
233
234
169
249
233
256
226
176
168
242
149
176
200
167
195
239
233
225
200
129
183
198
189
215
245
176
208
277
199
236
188
179
244
174
164
236
213
239
262
212
198
208
147
208
241
230
178
211
242
142
218
181
194
188
166
206
224
184
221
223
182
245
253
149
218
241
165
123
296
179
169
180
190
177
269
198
200
230
224
123
183
234
179
209
228
277
235
150
229
209
221
207
258
153
254
261
263
263
159
202
214
220
211
204
187
191
252
224
208
237
210
178
169
140
260
139
228
187
165
218
187
198
199
200
254
244
209
221
178
207
155
237
151
167
200
235
177
242
192
225
114
193
184
262
210
256
150
192
194
181
220
216
171
219
148
237
234
254
203
221
183
226
146
208
266
182
178
228
220
217
204
213
159
210
189
190
175
180
226
128
195
244
228
129
168
223
196
257
211
200
195
221
150
208
183
151
203
168
181
229
238
218
182
185
202
193
229
190
158
228
242
187
162
238
233
205
163
156
236
208
213
200
185
257
241
209
190
202
206
105
268
256
195
135
188
202
242
234
202
219
212
233
164
208
116
190
184
250
180
238
213
207
111
212
252
235
201
213
185
214
154
174
174
155
257
207
232
235
222
184
208
180
179
176
178
166
261
171
202
191
249
188
230
187
199
194
226
235
223
168
165
184
230
246
198
154
172
130
184
224
169
235
208
196
253
180
183
189
227
175
217
217
125
236
239
155
233
240
179
177
240
126
198
163
192
195
235
136
158
241
228
182
206
202
175
240
216
206
169
184
201
168
220
195
164
199
260
227
217
165
182
198
235
222
207
208
231
260
181
189
206
187
185
193
156
188
229
205
212
141
183
180
166
205
244
153
172
186
195
221
183
208
183
125
246
198
248
227
217
124
161
207
217
180
184
191
193
148
109
253
250
143
147
205
199
183
256
203
228
162
223
183
201
232
172
205
156
192
215
170
174
227
199
189
252
226
233
235
216
185
218
213
257
215
224
228
224
197
250
224
231
246
240
245
163
213
150
215
226
180
225
137
201
197
171
157
182
139
187
225
180
234
225
239
228
216
253
208
251
252
140
197
183
217
231
176
138
174
193
218
173
173
111
225
134
232
197
183
192
172
203
156
208
242
225
229
159
183
174
185
154
170
133
198
241
187
160
201
112
168
157
179
158
206
229
243
205
227
182
229
220
201
145
196
143
200
221
179
185
226
246
140
214
182
192
266
200
191
185
249
248
214
174
230
181
192
221
190
275
166
198
226
190
238
173
221
231
169
199
179
198
223
195
242
163
173
218
259
157
216
201
223
248
185
132
196
220
167
234
208
231
173
228
207
208
216
179
210
168
204
154
227
213
206
164
220
249
226
174
220
169
203
236
144
235
185
193
166
265
201
189
221
223
141
210
179
213
208
227
211
229
150
188
194
179
168
199
222
223
190
263
163
201
187
217
132
260
134
192
225
144
148
197
170
202
213
182
156
190
169
184
272
236
291
206
284
241
186
256
219
182
223
198
220
228
229
220
203
185
186
173
194
174
192
196
225
177
187
192
216
195
234
158
164
241
191
192
193
180
255
213
203
226
176
240
162
152
252
118
192
190
225
152
160
157
198
185
228
171
204
248
183
222
157
144
224
201
193
225
245
164
230
260
215
172
175
194
195
276
199
188
225
189
173
187
185
220
245
170
127
199
192
237
227
216
185
245
193
183
218
220
205
170
171
188
217
147
180
228
142
249
248
149
196
194
191
165
184
237
238
192
214
235
220
171
224
193
205
211
195
225
154
199
163
184
259
221
183
225
235
184
201
149
236
207
199
178
214
191
189
211
218
252
162
229
224
209
168
161
256
179
180
220
185
226
201
157
227
229
208
193
205
180
182
198
178
181
191
260
251
122
180
207
193
190
146
216
217
256
215
207
224
161
253
164
213
151
196
185
195
235
251
173
180
218
185
256
201
195
186
219
259
234
249
212
203
173
211
198
238
142
189
192
243
181
250
182
235
182
203
198
150
158
184
208
203
201
236
233
193
173
233
183
224
186
180
144
169
209
202
242
172
232
177
187
214
225
253
204
206
208
149
262
190
134
189
220
167
195
210
242
218
216
258
222
226
193
174
116
169
191
183
202
158
206
241
172
176
210
212
227
211
206
180
190
219
241
209
207
283
199
198
219
121
251
186
172
151
184
200
232
194
217
160
224
185
198
264
221
211
244
219
234
191
254
187
188
217
213
239
214
232
244
224
150
173
163
185
213
230
242
201
226
121
206
158
129
278
225
255
227
234
200
188
213
241
194
247
248
213
193
180
247
166
190
178
168
224
158
169
209
236
163
170
220
233
136
165
148
231
170
187
155
157
206
253
202
216
186
213
223
246
208
223
187
203
139
193
179
119
212
120
225
244
180
202
198
230
267
224
224
260
244
233
228
245
243
204
207
132
160
245
228
202
219
247
186
141
220
184
207
220
245
196
179
208
140
136
204
186
220
174
234
152
204
241
212
276
220
248
160
265
213
214
195
204
268
250
191
269
192
209
128
238
159
160
175
245
211
172
168
212
137
203
181
221
202
160
149
206
184
228
200
231
205
213
145
150
178
203
168
168
248
230
185
238
188
172
130
248
173
162
204
167
244
210
205
149
258
220
263
211
162
207
216
186
236
196
172
164
188
192
218
188
224
214
160
221
169
199
190
203
232
220
222
177
121
207
216
228
195
226
218
180
135
197
163
189
176
180
211
226
162
225
148
204
239
207
200
262
174
232
184
154
197
118
219
245
217
226
205
215
254
125
231
182
308
211
272
211
251
197
173
182
156
211
188
187
221
239
214
199
209
223
246
212
123
236
151
230
211
217
216
188
181
178
215
167
196
206
154
190
131
210
157
257
225
161
204
223
191
172
208
215
260
199
162
183
241
206
228
203
219
257
171
184
193
192
214
193
248
224
241
158
256
173
197
174
184
186
154
220
118
223
169
203
202
209
217
242
158
237
137
201
134
169
200
192
211
158
181
197
163
213
177
193
158
132
207
189
249
189
237
168
195
221
258
224
229
237
200
170
217
204
233
243
188
222
257
210
184
206
180
168
234
227
218
208
226
207
203
199
208
226
195
203
186
189
188
201
222
152
202
200
217
165
235
193
231
266
182
205
190
196
181
254
165
205
195
254
214
204
142
262
176
236
235
226
168
233
223
212
182
124
221
163
164
190
214
191
199
198
210
192
227
193
210
198
215
173
175
174
200
177
202
186
263
205
261
219
203
211
216
174
175
207
205
229
174
236
198
216
177
186
221
223
165
177
155
183
240
190
224
162
184
205
223
199
185
196
242
239
208
260
223
241
274
228
241
196
219
196
226
155
159
238
247
151
170
205
201
143
198
222
133
258
223
212
189
168
170
149
206
204
211
240
198
163
173
167
188
263
212
233
141
175
179
215
69
184
214
214
178
264
198
226
238
285
187
254
209
205
260
211
193
225
243
210
186
167
162
198
236
280
152
217
211
191
194
222
151
185
174
236
239
179
229
189
195
203
239
221
184
217
191
159
218
137
200
186
131
177
129
242
194
226
200
143
189
198
216
214
233
170
180
190
203
164
177
169
175
153
225
213
202
216
183
150
226
258
177
162
234
200
189
190
166
243
200
212
186
204
187
196
213
134
206
131
176
213
203
179
143
170
198
199
137
221
216
198
191
205
212
171
207
180
187
174
184
255
189
220
182
162
181
135
201
183
206
144
141
196
220
196
163
243
232
163
240
232
163
192
154
201
216
206
253
229
229
191
226
234
208
194
192
241
192
163
179
231
227
197
227
238
157
150
193
242
265
203
265
168
184
168
191
175
155
177
210
223
229
197
224
199
238
174
223
207
246
261
232
162
226
155
229
146
245
174
184
172
193
242
234
268
204
195
217
263
229
195
159
192
133
204
214
266
202
186
212
204
237
200
154
197
204
144
228
223
253
173
157
220
263
192
208
151
209
217
194
160
217
195
226
195
199
280
128
201
203
141
226
168
178
238
182
167
181
175
204
160
156
198
238
189
147
216
227
200
199
183
199
212
200
171
199
251
222
211
243
179
194
214
164
263
162
235
183
187
219
269
227
230
210
211
217
247
150
182
153
196
210
273
188
227
166
176
202
173
235
189
198
168
225
249
192
217
164
166
171
240
266
231
189
213
162
204
155
250
160
200
236
263
247
219
196
188
236
248
220
170
171
235
221
233
142
177
212
233
183
174
149
193
228
176
231
111
270
216
184
189
224
182
201
201
222
183
207
186
205
139
192
243
163
176
169
233
220
146
212
252
186
225
221
198
198
236
162
248
198
121
164
198
233
283
182
155
190
108
222
267
170
192
184
183
155
200
182
250
209
209
204
174
215
234
232
166
133
257
199
243
215
194
208
206
246
252
209
226
163
159
252
244
185
158
247
145
198
213
227
284
155
160
240
131
212
192
219
263
224
194
231
198
145
155
145
209
265
115
231
190
166
214
170
167
198
215
171
182
189
234
213
223
182
190
210
242
192
241
205
151
132
217
239
147
258
246
200
214
165
132
191
180
174
183
212
229
198
165
287
139
172
192
155
173
251
186
160
105
164
213
194
171
251
211
242
128
179
201
165
253
198
224
164
220
125
214
132
198
249
225
118
185
205
180
248
187
187
219
228
227
233
204
229
223
234
233
211
239
221
207
193
228
233
200
201
188
185
203
184
122
195
134
176
187
210
177
210
183
188
199
200
272
201
169
227
259
241
237
231
249
223
176
197
237
199
184
189
184
190
222
199
173
240
213
223
160
207
199
131
184
193
215
210
169
203
167
180
202
178
206
241
201
141
245
151
175
195
242
139
93
192
215
183
206
229
279
256
215
197
177
231
184
223
190
185
137
234
238
195
214
195
222
180
223
230
211
167
252
221
239
215
199
202
202
162
181
160
137
143
186
185
116
215
203
214
227
192
294
244
188
178
176
144
209
149
228
205
146
226
173
193
196
188
202
161
212
188
195
152
183
212
220
175
218
220
177
145
189
247
246
269
158
180
202
161
217
192
202
195
174
214
184
139
190
178
217
220
178
161
225
234
188
200
203
148
195
244
214
248
183
218
220
241
187
133
184
177
207
162
189
248
171
197
175
263
168
276
201
139
168
258
267
242
191
172
189
254
192
183
202
224
183
181
227
197
225
220
200
216
209
184
155
143
204
177
209
243
216
239
245
206
206
226
213
233
235
202
168
121
187
162
186
183
190
189
206
165
214
190
185
196
228
239
210
249
254
169
258
174
189
228
208
232
169
221
206
161
249
205
226
230
201
160
286
229
237
215
226
234
188
246
121
151
148
201
241
208
251
200
219
159
223
257
180
171
214
188
228
245
136
221
188
185
222
191
193
192
195
263
214
233
201
246
230
191
168
234
230
170
237
237
225
250
235
210
168
246
187
198
187
227
234
173
212
205
222
238
214
193
205
173
225
226
229
211
210
187
170
202
177
152
234
225
255
217
247
160
214
221
218
162
168
211
190
214
223
194
201
197
187
217
199
207
230
162
226
251
202
165
248
222
206
238
234
142
192
220
214
160
201
223
153
213
155
183
208
170
144
237
198
190
198
173
230
252
187
163
195
188
181
230
158
217
220
174
207
210
163
208
182
204
255
176
239
186
188
223
216
170
226
195
199
190
223
239
208
204
173
259
203
138
216
154
248
192
188
225
173
174
216
137
190
216
223
149
210
215
218
209
184
228
195
193
200
180
172
152
229
212
138
240
204
186
192
239
236
126
165
188
187
202
218
177
212
223
238
224
210
219
229
217
232
225
198
156
176
222
178
173
191
236
172
216
221
195
230
146
241
209
234
249
257
218
175
226
251
231
152
166
182
194
224
288
209
206
161
179
175
199
209
198
169
189
215
216
239
205
224
221
232
161
254
183
202
182
203
184
209
232
213
236
183
197
224
202
266
181
207
217
194
197
191
226
186
283
231
204
207
150
205
176
162
213
252
196
156
230
219
245
230
142
241
224
169
181
176
185
231
230
233
192
172
186
225
187
142
245
219
190
183
194
222
207
206
159
201
200
146
157
184
160
208
218
128
227
245
169
159
198
180
191
220
187
190
224
235
206
206
202
201
241
208
197
165
199
172
158
221
214
157
232
190
231
148
183
203
207
200
188
234
212
240
228
212
234
146
219
191
227
209
201
234
180
249
194
180
201
261
248
167
164
213
210
229
211
123
215
221
143
131
174
183
186
173
243
196
201
224
252
196
243
227
176
209
230
147
198
221
209
207
234
237
163
248
184
153
194
204
178
206
273
177
187
113
118
149
182
186
280
177
191
223
187
178
192
260
227
216
182
207
226
255
181
251
189
160
193
193
236
181
155
184
176
190
207
214
194
185
129
180
175
199
278
182
217
248
252
220
207
208
203
143
225
197
179
230
207
208
141
230
223
210
174
257
205
174
172
170
213
201
202
179
204
228
199
209
175
177
178
170
225
127
189
150
183
251
205
243
139
176
226
251
261
203
209
125
148
206
182
219
203
271
173
195
242
133
225
178
237
250
239
202
138
136
187
93
182
214
258
188
195
163
147
172
151
197
150
188
242
208
190
245
180
195
218
232
188
211
226
216
198
158
235
184
201
238
229
231
209
126
209
208
194
286
177
161
191
235
153
247
200
209
143
206
195
186
201
242
235
212
133
216
166
200
236
219
160
215
198
249
255
210
171
160
161
193
161
276
173
192
187
188
217
226
138
216
191
185
211
120
231
224
198
203
176
224
220
255
242
175
240
135
146
242
226
166
206
162
238
179
237
161
229
201
174
216
213
197
148
183
151
167
185
195
89
261
172
268
154
217
189
211
176
233
206
224
221
198
229
198
239
233
194
137
229
186
217
239
204
165
186
191
201
181
249
170
232
185
213
164
259
213
201
151
223
169
167
211
196
151
179
206
167
162
216
211
161
197
194
225
180
222
169
189
162
136
170
210
160
215
204
160
203
111
170
184
191
241
231
225
189
195
233
178
204
155
142
229
200
193
257
151
198
192
212
219
158
209
231
219
193
224
245
226
241
159
160
216
151
169
211
196
227
195
193
217
191
199
229
217
236
185
167
188
215
167
246
199
158
179
171
157
242
193
230
261
154
224
219
181
212
128
234
199
210
234
152
194
261
208
175
174
212
232
250
149
182
239
219
198
221
167
213
221
187
224
208
225
182
277
211
240
213
211
201
181
204
214
215
204
205
229
196
209
154
161
195
202
217
213
212
205
157
207
135
220
221
233
201
235
202
230
224
183
199
182
242
205
238
159
189
222
173
269
183
162
276
235
230
243
239
224
244
207
225
262
229
237
205
165
254
199
196
231
193
173
208
195
150
159
190
192
174
208
125
233
149
221
180
229
237
252
202
170
221
196
220
206
180
199
208
242
191
187
228
171
226
168
186
205
264
250
229
228
204
234
180
177
235
259
188
167
241
266
227
249
193
213
208
178
199
233
97
244
189
183
181
229
210
151
266
246
183
175
158
263
205
198
232
209
225
235
223
206
160
142
168
154
202
237
154
190
216
227
224
239
160
203
210
205
241
194
226
239
151
190
175
226
226
171
179
227
231
237
132
172
262
179
213
263
218
235
259
187
203
177
166
164
225
171
170
219
167
179
209
157
206
225
175
243
183
208
190
193
160
204
192
188
190
159
175
214
214
181
230
172
228
186
175
213
154
236
209
182
240
247
189
156
205
159
207
164
204
160
178
188
236
256
188
214
196
217
179
202
223
231
236
210
123
235
175
194
211
171
230
180
221
234
212
245
208
191
246
218
261
248
181
232
249
194
188
286
203
189
137
178
208
161
240
206
233
158
206
179
173
131
172
208
228
239
135
178
196
216
171
251
202
186
225
208
250
202
194
249
198
243
192
224
213
196
227
262
179
181
191
191
203
179
180
204
204
125
147
181
231
190
221
201
257
175
266
226
203
215
203
220
205
241
173
182
234
165
234
155
198
199
193
174
173
189
201
143
180
147
180
179
227
215
183
215
176
218
204
214
237
165
182
125
169
223
136
220
187
203
214
230
200
212
207
231
252
207
241
153
240
196
260
189
252
200
204
190
177
151
199
181
204
230
201
267
241
202
165
216
208
184
135
189
159
237
232
208
272
167
184
165
215
167
158
173
200
162
174
262
217
207
198
185
170
158
202
210
240
196
217
193
180
155
197
252
173
166
217
225
243
242
256
150
153
177
199
204
149
181
134
180
219
195
206
170
207
225
141
217
273
168
214
176
204
258
203
172
228
144
224
237
157
230
127
203
167
207
225
243
247
180
176
184
168
198
235
238
201
211
171
163
157
206
242
200
143
160
264
152
130
197
201
152
223
210
219
183
253
200
209
187
204
260
212
203
251
168
205
224
197
193
194
244
192
239
221
257
232
180
206
179
230
212
153
247
221
177
260
135
208
174
209
213
202
143
235
157
193
220
183
210
160
178
157
263
210
166
181
189
116
205
198
190
123
208
163
255
172
236
178
161
188
217
197
155
210
140
239
210
185
166
238
224
117
244
204
197
156
189
144
155
218
183
237
194
185
182
228
204
146
235
189
207
236
194
149
208
206
162
198
191
154
234
208
183
290
189
174
245
147
239
190
169
204
198
198
189
177
233
192
230
201
199
169
178
219
153
203
176
250
237
216
224
206
236
207
225
167
211
227
153
202
235
204
191
179
246
180
162
208
206
224
152
269
192
150
236
230
133
225
212
150
261
159
229
207
157
181
233
179
190
220
266
260
156
214
206
197
160
183
252
187
161
148
196
237
228
217
169
204
135
174
230
182
172
281
210
256
240
276
157
258
152
145
181
235
217
227
149
189
189
215
231
144
189
238
240
219
236
169
194
209
196
229
255
193
183
151
239
193
203
166
225
214
221
174
165
196
212
242
255
240
200
193
200
225
160
186
189
184
179
170
153
182
166
229
167
173
175
169
235
151
223
225
195
253
166
242
193
164
182
225
178
171
213
194
225
161
229
269
196
168
199
148
224
202
197
170
234
188
206
222
235
234
165
197
249
170
129
170
250
185
109
174
198
193
221
159
189
165
207
212
194
196
241
263
189
206
205
162
229
175
215
218
194
175
209
184
175
162
218
173
221
234
187
213
205
166
177
241
193
186
200
189
191
194
246
140
162
256
197
183
178
176
212
238
232
221
219
216
174
189
160
243
183
222
225
207
219
211
188
228
214
222
151
240
226
213
156
178
211
201
195
213
236
155
225
220
221
230
174
98
262
176
185
204
223
198
191
143
163
202
236
213
148
181
167
207
200
221
174
242
180
202
152
195
177
200
236
237
167
219
205
165
234
220
199
210
178
187
218
217
214
155
188
181
146
250
143
238
197
227
193
226
202
168
166
225
227
191
151
189
264
258
185
177
233
237
155
213
226
238
262
210
155
195
178
227
152
138
175
246
208
230
204
227
237
177
182
234
147
205
166
211
233
214
202
194
142
191
202
188
218
239
168
133
205
232
188
213
182
142
242
275
149
192
159
187
198
146
199
208
221
203
139
184
213
154
207
208
217
186
206
185
172
162
120
209
199
270
210
188
190
197
278
250
219
200
206
104
236
236
228
211
146
212
149
244
269
187
189
249
170
189
189
242
216
205
150
230
228
210
208
209
179
218
170
158
220
144
133
171
216
229
180
187
207
197
176
233
184
139
154
201
166
190
183
238
151
194
201
176
230
179
172
206
232
147
224
234
176
213
94
177
175
224
201
211
198
165
204
173
287
209
197
212
208
179
115
181
143
186
217
194
250
215
217
218
290
250
208
203
267
140
216
198
207
147
201
171
169
243
193
175
258
208
200
171
187
178
228
186
206
228
211
145
233
228
169
207
195
210
139
180
203
146
198
196
161
164
179
212
191
240
157
155
182
236
216
145
169
143
195
225
239
184
246
225
205
211
173
196
217
215
238
196
205
212
236
204
247
213
221
184
127
222
216
171
212
211
192
217
190
166
163
171
238
210
229
215
176
225
214
245
211
216
197
197
136
255
175
137
237
164
200
187
204
169
182
196
192
160
169
223
207
228
165
228
220
172
173
192
222
203
172
176
217
243
219
197
255
215
153
140
226
232
166
174
185
197
225
193
179
200
214
169
114
206
226
208
227
122
260
174
160
190
207
233
169
152
251
227
180
191
217
219
148
231
144
154
214
227
214
163
156
146
174
235
239
176
195
232
202
201
211
167
205
183
183
228
260
224
192
206
149
202
176
207
188
190
243
194
170
190
195
247
291
262
153
187
253
206
188
155
222
240
182
201
234
184
137
199
201
246
199
161
146
203
244
170
212
185
202
225
232
157
219
174
229
133
201
164
172
240
152
177
207
178
203
186
221
176
233
172
245
159
132
224
201
181
193
236
141
205
242
235
189
172
235
220
229
252
255
186
185
236
232
151
225
242
129
167
190
187
156
226
203
250
252
243
210
216
206
235
156
155
166
155
156
218
210
153
193
188
152
224
210
253
254
180
136
186
203
191
193
187
149
240
244
206
271
237
172
173
145
160
189
160
176
242
199
231
167
242
253
243
203
199
173
200
146
241
241
204
210
220
260
227
167
194
274
179
221
198
181
196
243
213
211
175
208
176
263
179
210
190
167
148
275
223
165
223
195
195
162
220
142
154
226
184
236
137
202
173
226
211
241
209
191
215
193
135
207
191
219
179
119
171
201
235
184
192
176
150
246
129
186
169
220
168
218
163
205
163
210
182
177
189
212
229
255
142
221
213
232
219
168
221
195
164
176
220
136
136
193
216
179
268
237
228
214
149
168
219
161
153
266
241
217
208
220
200
236
226
228
184
183
182
224
198
230
290
200
194
97
202
157
140
192
141
190
142
184
146
227
194
191
228
169
198
222
231
229
239
148
207
183
138
199
236
214
256
195
222
125
211
207
240
206
224
183
193
189
222
164
247
210
176
186
197
268
109
188
208
180
206
161
145
214
264
194
205
169
221
198
238
215
228
138
293
250
173
218
197
184
211
238
161
141
219
194
168
264
256
236
228
187
230
213
176
187
202
211
118
184
176
212
200
208
184
221
221
210
164
190
180
177
119
206
224
245
201
245
113
189
212
242
188
202
221
257
234
172
192
186
205
206
185
183
177
200
221
185
201
202
228
208
247
203
180
144
156
204
193
215
171
172
216
194
229
201
221
208
155
194
160
181
238
210
158
241
210
259
230
165
179
166
228
176
194
179
190
211
199
245
253
99
172
194
210
242
245
163
215
224
169
191
213
258
173
194
231
249
232
240
172
171
248
252
172
185
202
259
129
255
154
232
157
193
189
242
220
239
255
256
238
166
179
270
198
166
215
183
170
246
171
225
91
200
180
202
193
207
207
194
103
217
223
208
221
176
248
149
139
220
240
166
219
211
204
176
205
202
203
206
206
205
163
231
155
197
126
174
225
191
217
200
186
138
213
169
270
257
274
169
208
184
199
168
242
190
187
245
193
228
226
205
151
247
227
167
249
191
212
210
151
207
216
228
256
328
205
213
256
162
220
271
219
207
238
184
193
262
232
175
228
151
213
178
184
217
220
182
168
171
169
212
194
170
230
200
197
170
214
181
241
195
238
242
215
241
155
186
219
242
196
214
168
233
201
198
176
211
170
153
228
260
235
224
217
194
226
200
216
138
210
206
223
207
138
297
191
138
192
205
222
237
150
166
163
153
172
239
206
189
127
260
193
183
198
168
234
200
197
200
183
188
230
187
187
165
187
219
242
236
233
209
210
207
185
242
245
203
213
175
133
209
212
241
246
200
261
181
240
230
216
151
175
236
203
222
239
142
207
230
183
163
170
169
219
201
189
174
225
205
153
226
193
180
234
180
244
233
180
207
216
174
230
198
174
210
173
216
232
207
161
193
176
220
158
215
172
177
199
263
244
202
180
209
166
207
188
245
136
223
245
177
233
214
189
192
205
200
187
208
211
209
191
215
207
218
270
223
221
232
248
243
224
211
154
212
159
204
237
171
230
253
184
233
218
164
190
218
202
201
223
182
263
234
202
180
184
150
245
223
235
215
251
215
266
246
230
192
207
265
204
119
200
222
236
156
149
141
213
199
250
168
170
243
156
175
246
181
200
224
201
173
193
197
268
181
204
160
171
132
188
225
210
179
250
162
229
154
200
255
205
205
164
143
262
264
205
159
154
160
228
221
213
218
211
174
163
194
169
250
155
161
153
204
180
199
199
178
254
203
205
235
131
241
204
221
139
195
142
229
180
235
250
198
222
176
197
176
242
189
166
209
204
257
220
232
197
214
240
193
200
136
204
223
210
191
235
169
197
121
183
176
214
237
216
210
179
172
174
191
229
181
260
152
205
200
258
219
182
277
204
224
208
206
243
171
214
230
164
238
141
157
227
260
211
216
212
229
146
191
202
184
201
229
228
147
212
207
229
198
239
230
201
213
174
244
217
191
170
211
230
178
272
227
238
108
271
155
218
201
232
222
195
199
195
176
208
220
196
213
216
161
224
109
200
189
137
224
201
187
182
251
179
175
171
177
170
135
194
186
174
168
159
168
204
161
179
194
198
170
189
217
164
215
199
178
194
168
143
211
239
234
272
186
252
184
153
178
164
206
165
197
230
227
221
243
240
230
169
205
203
217
237
189
202
246
218
192
229
158
210
240
193
226
247
202
231
169
235
168
228
195
173
239
213
263
189
159
234
173
247
208
177
122
189
269
202
197
148
200
176
193
177
138
169
153
207
265
192
162
158
167
151
167
269
191
192
198
141
211
202
167
211
214
217
196
221
232
231
155
227
230
166
161
254
194
242
233
177
181
239
230
205
230
196
180
223
190
177
201
181
234
225
195
188
236
202
206
112
253
212
148
232
204
223
197
222
208
132
217
234
230
186
230
248
173
198
192
207
209
184
154
239
187
197
211
169
130
229
142
197
157
238
150
164
259
169
259
254
192
218
201
144
187
255
153
232
205
174
228
174
249
193
191
218
234
123
181
188
208
208
160
266
148
220
204
233
180
148
164
162
189
224
164
175
175
196
202
170
224
209
221
223
228
249
201
226
240
126
220
229
176
126
210
216
167
263
261
164
190
177
195
232
249
185
216
214
205
283
204
225
240
227
204
217
171
168
179
217
191
239
239
173
146
211
206
228
227
149
215
186
188
201
212
219
168
180
164
260
197
240
200
224
179
203
181
161
214
207
232
139
236
183
169
168
197
229
163
223
216
226
189
181
158
205
196
216
255
241
224
215
185
169
207
168
177
190
142
189
231
143
270
238
201
166
211
209
226
177
179
170
224
208
126
219
157
218
257
186
202
187
238
235
237
204
183
176
256
163
208
142
212
161
191
224
209
240
219
138
171
194
233
186
260
231
187
173
201
190
214
174
158
224
137
195
195
245
204
192
253
179
236
231
167
220
225
146
158
187
169
236
194
126
215
125
226
216
189
202
223
195
207
105
286
182
213
195
172
222
207
196
238
218
148
244
214
189
244
215
183
234
229
236
260
205
182
222
233
178
170
220
158
173
214
242
238
156
191
143
242
204
195
156
200
250
203
194
222
175
226
162
182
224
228
185
164
186
240
219
211
235
160
178
232
100
160
182
225
138
264
164
185
164
215
187
268
231
188
184
217
155
217
170
243
179
209
250
222
256
220
184
187
211
227
223
208
189
215
260
205
191
184
119
246
227
210
170
220
204
179
227
243
172
228
182
242
205
265
178
176
193
219
170
235
229
216
211
211
227
213
261
202
242
174
197
250
161
277
191
231
163
177
217
225
231
244
157
131
178
206
244
191
172
217
184
246
203
245
161
138
163
164
153
195
182
195
147
268
116
265
274
265
254
185
242
197
240
213
124
168
254
255
172
183
190
208
173
248
130
143
222
170
211
122
191
250
209
210
221
248
189
193
202
242
171
229
132
229
246
151
179
244
179
244
172
142
197
177
207
193
149
194
195
192
247
201
174
226
191
254
215
199
290
166
208
233
155
208
204
126
223
229
153
149
185
213
231
174
195
198
253
216
203
246
193
213
206
231
197
213
229
152
218
170
231
207
199
158
196
200
178
265
192
229
238
172
176
209
268
207
208
221
269
180
185
244
201
170
219
197
214
193
218
168
167
245
260
193
253
198
230
142
228
227
162
166
173
226
208
237
188
186
180
232
234
177
237
201
200
163
192
254
179
176
179
83
179
212
208
201
205
195
241
150
187
246
168
149
169
184
223
202
197
111
210
163
205
260
198
210
152
131
218
174
206
204
263
191
181
216
262
155
206
224
209
210
181
204
193
209
177
225
204
265
231
211
157
226
147
198
226
252
173
149
210
191
203
238
194
208
205
240
224
166
201
159
195
159
265
172
218
157
210
222
157
210
235
186
128
159
237
174
212
183
222
202
213
161
211
186
167
160
227
210
238
207
183
211
146
236
227
161
234
202
220
199
184
162
195
197
179
237
187
176
191
174
207
167
269
189
234
169
200
220
151
233
165
187
228
208
140
238
242
160
235
249
197
185
201
213
198
227
152
184
234
227
207
178
249
204
272
223
136
249
235
231
160
214
184
209
269
199
266
156
197
125
216
193
269
215
184
186
208
247
197
195
126
188
222
204
225
234
211
211
198
236
188
170
174
151
227
243
207
171
240
188
263
195
149
237
176
234
185
143
202
161
182
227
169
261
180
192
143
188
200
237
185
180
171
208
204
223
158
159
227
143
191
198
213
193
157
207
276
185
108
183
158
189
209
161
253
188
197
196
162
220
183
151
221
109
151
213
170
246
210
208
209
93
190
123
200
205
162
177
221
255
226
121
207
236
210
173
205
189
234
157
229
135
174
248
190
173
120
161
168
202
213
197
183
212
168
207
213
218
184
197
161
178
244
245
207
202
199
178
231
137
223
159
203
245
134
186
259
173
169
201
197
188
194
170
215
244
215
175
181
210
180
244
265
199
258
196
121
223
185
174
185
220
224
229
211
185
173
183
227
231
257
183
237
237
157
201
124
174
261
152
162
233
244
259
208
219
220
201
217
127
189
143
163
198
234
228
183
234
173
219
223
154
253
223
174
226
154
203
137
157
233
285
249
214
152
239
171
214
246
201
186
168
219
250
149
227
213
192
181
187
200
155
148
208
224
231
174
182
209
156
141
185
205
202
259
278
115
171
179
163
194
253
164
193
218
177
187
185
242
206
225
167
146
181
198
175
211
196
225
195
170
189
220
131
192
216
165
257
214
179
179
188
148
230
197
219
239
184
168
217
191
159
235
131
181
143
218
229
167
217
263
170
277
181
225
180
184
242
230
215
112
226
229
204
182
206
239
168
262
183
239
228
196
124
180
191
172
169
186
182
199
199
204
213
218
229
148
193
252
191
239
205
145
175
198
179
158
216
192
198
209
225
165
211
227
199
226
173
156
135
219
175
210
188
195
170
175
205
176
180
204
110
253
182
179
147
260
183
245
237
192
190
107
163
143
197
184
217
215
122
153
189
202
183
250
192
227
201
170
165
235
212
253
153
211
156
104
216
195
196
201
215
229
174
164
201
255
224
218
197
256
176
209
173
252
216
147
241
261
225
205
196
220
233
198
220
169
243
188
267
262
239
174
281
214
165
207
241
253
182
237
233
241
223
266
244
209
176
254
203
188
246
180
160
201
196
230
132
184
220
230
175
241
262
236
211
192
189
229
157
209
152
189
232
191
209
158
182
220
157
195
193
166
155
197
184
224
263
190
179
118
233
232
186
208
243
161
177
160
168
156
208
254
257
172
188
217
221
237
190
203
172
193
175
267
130
217
209
254
231
162
166
230
211
208
235
196
259
187
228
230
256
231
195
234
224
149
159
145
230
238
240
190
197
217
190
187
244
169
171
214
198
191
278
164
216
183
208
234
176
243
163
232
203
197
174
156
232
162
193
193
219
192
195
156
204
231
179
184
186
197
218
189
170
154
139
182
186
133
252
160
266
227
205
190
139
181
229
140
217
218
186
193
142
225
181
206
276
185
146
134
227
134
178
159
201
170
195
238
277
242
200
186
224
189
172
205
231
180
226
211
240
175
150
279
177
203
155
154
210
264
164
240
175
190
129
159
166
298
214
127
224
196
179
224
155
268
220
170
196
233
164
179
233
97
236
189
149
211
203
221
126
190
187
207
209
248
193
267
192
218
273
133
190
232
242
255
208
119
241
179
218
228
227
203
126
180
236
262
216
174
156
185
197
223
198
119
260
210
182
173
212
205
231
202
211
173
225
232
210
179
209
226
177
157
208
233
205
209
207
258
266
173
197
256
233
211
178
204
161
198
187
157
200
265
234
190
228
206
229
193
179
148
207
163
235
152
210
203
189
210
175
238
175
253
237
231
203
246
184
208
214
247
209
144
229
222
172
206
140
201
147
201
156
179
194
218
161
220
201
246
199
185
182
233
234
163
189
226
207
219
198
182
185
227
175
206
226
240
217
203
187
179
240
251
233
203
230
202
238
216
290
247
245
207
199
206
266
203
190
166
175
207
149
198
197
240
185
173
180
208
214
213
204
175
204
215
237
152
196
162
217
181
189
233
217
264
182
121
215
156
216
139
230
175
204
193
227
171
195
200
164
192
202
219
222
193
221
177
257
217
224
187
240
248
181
166
150
225
222
201
219
221
222
259
148
214
246
164
254
231
191
195
145
236
169
220
225
201
258
207
232
194
236
175
168
189
152
188
223
217
205
224
173
241
211
165
207
216
173
155
186
180
215
196
218
163
165
198
202
157
192
235
188
163
191
211
204
206
220
200
172
181
165
253
133
226
217
157
195
235
211
249
146
236
153
198
225
106
247
158
194
209
235
217
186
232
214
200
231
155
221
252
206
226
238
193
172
223
169
202
192
173
179
205
152
111
244
213
222
144
196
173
155
195
177
212
179
227
179
147
180
173
186
237
219
161
212
222
262
216
161
244
189
167
204
156
188
231
239
202
128
149
230
147
133
238
192
165
189
263
121
235
242
157
217
262
148
210
186
214
212
209
174
234
215
204
194
210
189
162
235
177
186
201
239
149
178
199
260
247
191
177
187
186
196
165
196
118
225
207
190
168
196
191
177
148
183
237
228
220
180
222
213
137
189
241
197
175
219
252
189
162
168
193
126
157
139
221
140
150
233
233
231
147
211
180
206
165
299
235
156
208
240
214
214
134
265
198
204
187
193
234
191
202
206
188
215
178
164
178
237
203
221
205
236
198
154
199
200
171
156
262
283
181
241
234
186
177
163
148
241
243
195
233
239
207
190
215
222
182
214
201
166
190
186
204
194
236
135
143
221
189
197
167
192
189
202
200
200
163
243
194
203
167
185
178
171
185
243
167
233
229
229
165
214
192
213
97
248
142
186
165
190
206
187
212
193
210
210
233
164
198
298
213
186
172
230
154
203
213
206
196
245
126
202
197
156
204
155
210
217
197
222
221
198
220
217
254
150
202
191
228
203
209
193
123
213
148
192
253
176
263
191
218
226
209
144
273
218
194
236
207
237
234
144
226
160
206
238
176
189
188
176
237
195
182
191
213
214
237
213
187
221
215
197
242
205
183
185
204
234
144
186
216
149
255
164
199
205
196
165
212
233
157
193
172
192
224
201
203
129
251
220
140
150
193
200
249
195
208
206
205
189
146
256
205
240
274
181
240
175
130
228
222
177
228
219
183
167
206
188
167
270
189
140
236
123
219
238
187
253
129
146
285
138
194
214
191
180
170
268
188
143
170
177
193
223
179
207
217
187
201
243
233
179
207
235
249
164
186
129
147
197
153
207
189
199
241
209
200
196
194
199
162
235
185
238
260
195
248
171
128
151
215
257
270
196
155
183
202
227
209
197
236
218
142
127
210
208
203
182
223
172
150
212
154
238
230
236
216
228
169
122
144
211
201
191
228
215
181
197
237
196
232
214
196
224
130
151
142
200
183
221
253
213
216
215
178
219
211
226
254
193
141
197
249
127
172
197
229
203
192
215
234
224
138
157
207
217
176
223
203
232
203
187
226
194
189
266
165
187
113
233
180
216
202
237
199
214
171
191
202
177
199
220
188
191
164
142
165
164
212
231
151
169
208
183
193
222
197
225
184
175
235
191
224
202
232
186
216
237
178
243
193
188
162
221
154
243
241
221
209
191
180
182
207
222
192
173
210
210
197
175
197
214
208
208
237
222
137
207
213
173
162
234
259
119
107
239
220
203
236
198
158
239
191
211
179
211
201
204
208
234
118
203
236
163
169
219
109
242
157
129
170
258
213
204
161
187
236
153
151
178
199
210
167
190
169
182
258
243
237
160
188
271
166
230
187
208
168
237
139
175
239
207
198
197
176
263
160
196
254
234
186
218
154
220
215
259
214
223
223
227
256
221
171
226
196
263
219
227
247
224
233
178
248
221
240
221
182
149
155
230
212
215
221
194
191
195
206
229
183
218
153
216
222
193
198
230
185
167
153
211
209
221
232
154
197
185
188
212
199
245
173
202
213
162
153
230
265
141
202
168
196
237
188
165
182
173
192
241
217
193
170
248
200
150
207
208
199
215
159
187
241
205
211
250
189
243
216
194
217
192
186
191
240
167
177
157
181
154
190
265
233
251
220
244
126
184
176
159
163
203
247
131
259
182
196
161
163
143
216
249
198
183
167
216
207
191
147
137
263
173
218
191
146
248
229
165
132
211
188
191
215
238
180
239
225
249
206
197
244
222
227
182
164
281
201
176
199
240
191
251
177
136
188
193
191
155
189
211
206
196
199
224
172
219
286
167
157
212
208
222
215
196
164
251
167
204
147
113
197
218
163
209
241
254
174
205
187
157
230
236
214
180
175
190
186
249
193
222
189
165
185
205
212
170
165
202
253
240
207
192
158
206
203
196
229
219
170
193
196
240
195
188
175
236
155
251
157
229
149
202
197
240
187
208
233
142
247
216
215
223
238
226
165
145
214
195
148
175
239
137
190
243
254
204
130
188
204
185
229
196
146
169
279
189
221
230
229
256
252
187
221
142
243
228
219
160
203
208
168
189
180
160
179
209
224
122
143
255
168
169
122
153
256
178
185
179
166
217
275
224
197
226
214
198
157
137
227
207
225
165
166
225
192
94
197
227
207
183
222
176
220
176
215
149
267
253
207
208
231
179
225
223
157
193
207
206
175
197
217
224
163
216
205
172
206
125
211
244
203
209
236
157
172
199
183
207
193
241
260
185
248
182
229
209
205
160
221
147
203
166
140
212
200
223
168
219
227
200
198
247
201
191
203
190
186
217
158
193
191
190
258
185
256
228
215
182
217
250
185
202
153
175
183
165
197
227
232
186
214
149
150
170
222
185
183
232
229
259
192
203
224
190
198
229
138
202
235
225
204
141
136
199
250
207
187
185
270
161
188
212
196
137
229
220
264
228
211
177
232
181
181
237
181
185
147
198
186
219
233
136
207
163
259
243
198
221
199
181
154
235
194
182
246
139
207
136
171
212
188
189
206
124
181
205
192
181
200
224
246
224
269
196
142
168
217
144
206
200
208
224
153
170
144
175
235
129
271
183
179
157
196
190
183
169
230
158
181
220
239
245
183
139
188
264
174
260
179
168
195
167
166
225
261
228
106
211
194
259
224
237
210
223
202
192
186
226
186
169
187
198
215
225
189
165
173
209
226
172
172
183
166
138
123
255
175
267
159
256
188
194
167
237
164
216
215
285
196
190
190
188
200
112
218
193
216
212
221
214
253
186
184
179
211
199
226
209
248
192
210
215
190
179
216
150
173
247
198
182
229
171
177
244
231
158
244
167
217
217
193
170
162
249
213
224
142
197
243
176
154
162
178
225
128
279
253
165
199
184
215
258
178
165
216
137
231
182
233
219
213
229
197
199
208
132
144
161
201
167
208
225
201
159
195
221
156
187
225
162
229
258
160
191
160
166
178
234
153
241
195
219
262
178
189
222
196
247
143
164
271
203
189
191
255
216
221
181
278
162
189
168
203
214
201
179
204
151
176
182
213
113
167
157
196
125
254
190
205
144
188
182
186
239
212
231
241
178
203
221
191
175
175
155
193
167
171
218
219
144
249
206
208
117
157
193
224
162
174
189
192
233
139
133
232
242
233
223
193
225
181
228
251
203
234
202
234
255
204
141
181
174
232
130
136
152
193
196
230
241
255
220
157
133
181
193
211
140
160
224
224
170
230
217
228
193
257
249
142
185
153
249
183
183
146
176
218
210
151
197
169
262
206
175
220
194
266
193
229
152
214
203
182
200
244
205
177
249
209
155
220
196
183
207
211
182
199
160
246
216
193
192
248
212
197
204
237
222
185
177
188
218
232
261
184
228
252
202
143
167
160
212
189
196
191
185
166
181
220
241
158
186
212
142
154
185
161
178
189
250
236
155
199
225
196
168
211
205
222
248
243
230
210
176
265
231
168
217
232
233
156
202
193
201
168
172
155
263
193
202
159
248
243
192
205
218
195
219
239
157
258
178
221
233
221
232
214
137
248
251
197
199
237
267
160
196
176
161
189
179
251
238
204
133
149
223
231
203
196
193
147
216
221
209
208
206
214
218
189
213
170
190
195
202
217
153
162
217
241
230
198
185
135
229
127
213
225
127
96
251
262
229
198
180
247
207
169
197
219
93
240
128
211
228
237
188
185
214
220
247
161
214
131
255
198
219
165
188
152
184
179
223
185
270
241
205
146
134
187
204
180
239
222
198
205
225
214
202
223
162
178
146
221
223
230
259
262
226
187
199
218
171
200
213
198
172
113
180
168
148
196
137
190
222
183
200
241
261
240
133
203
232
143
223
163
221
217
159
235
150
178
225
150
181
178
161
236
197
183
217
195
151
117
201
190
254
160
184
276
165
144
208
235
173
178
170
199
226
235
171
143
230
272
181
206
197
187
234
179
221
242
253
144
218
174
188
170
201
219
200
146
177
181
223
165
222
202
201
253
178
143
213
182
215
186
170
257
229
176
234
194
197
160
180
238
215
236
149
185
209
227
228
228
263
197
202
215
172
229
215
151
155
197
222
172
179
228
217
228
210
162
170
211
199
175
221
273
222
182
234
212
262
243
244
217
155
197
263
241
201
191
177
261
157
165
156
205
248
211
182
228
259
230
252
190
139
220
190
182
149
187
222
232
236
211
232
187
217
181
247
188
258
233
251
169
201
111
140
165
186
219
134
234
240
140
181
163
220
176
170
267
260
158
254
217
218
243
151
186
201
268
188
182
157
210
186
216
175
175
166
198
230
214
175
203
145
205
218
207
205
210
183
297
213
159
189
275
221
106
213
212
210
205
223
213
220
200
218
231
221
202
204
212
190
215
223
174
244
237
172
214
170
205
155
147
247
185
238
221
236
220
223
144
204
129
248
176
229
233
213
187
208
214
175
178
236
194
238
177
218
236
192
157
227
188
205
210
237
246
187
172
166
185
239
257
182
228
232
144
173
238
208
153
186
214
182
188
223
257
220
183
187
203
201
190
204
267
238
177
235
207
154
241
156
239
196
238
219
202
246
191
178
251
218
154
232
207
277
207
183
225
174
230
195
257
206
240
127
216
177
203
180
224
215
211
231
163
166
158
227
219
248
192
123
191
222
174
252
226
218
204
238
262
198
213
210
242
200
242
157
224
231
217
199
218
205
255
233
237
184
214
171
191
242
210
238
196
147
199
214
222
202
205
203
210
231
197
201
196
159
210
153
183
184
160
153
105
153
224
203
223
198
196
242
255
226
197
166
175
215
224
229
185
201
224
191
222
162
198
159
179
170
198
248
64
226
160
225
205
233
279
209
227
211
203
221
170
205
199
131
172
232
199
246
200
226
214
202
237
202
181
198
196
208
189
154
187
200
199
212
208
208
137
202
209
253
202
200
199
238
217
217
250
137
227
236
201
223
236
215
196
267
202
182
243
203
137
230
173
209
185
170
222
171
144
192
246
218
180
201
135
148
172
245
192
230
205
119
144
247
159
174
241
215
226
120
272
232
238
203
179
235
225
164
182
218
190
188
132
207
195
188
256
163
150
172
215
187
126
129
220
238
237
284
201
242
231
155
207
188
141
135
196
213
147
178
173
225
182
187
148
186
248
222
150
237
216
246
191
235
182
195
237
213
220
171
230
220
253
166
154
176
173
116
234
242
146
198
166
182
155
201
164
218
165
223
206
175
176
222
206
175
204
218
220
232
181
246
222
193
194
206
156
173
233
250
161
281
185
180
149
171
190
211
216
209
213
202
145
204
180
218
283
153
210
264
213
180
157
191
225
214
182
218
198
245
249
182
100
170
208
266
157
157
167
199
250
190
197
144
154
212
237
221
192
211
205
215
193
201
177
179
247
194
162
179
170
215
205
220
236
204
185
154
231
190
233
189
198
233
193
206
160
209
223
185
185
179
204
191
217
226
244
164
213
255
257
166
180
239
233
217
226
170
203
230
195
225
216
157
229
195
196
197
190
159
217
189
173
186
214
157
211
192
181
180
212
232
233
268
158
177
226
167
227
205
209
170
210
230
229
156
200
193
148
158
232
212
170
213
175
201
191
229
240
141
196
154
228
198
170
191
157
199
254
248
229
173
246
168
153
177
228
195
113
236
237
194
229
170
222
196
195
189
188
200
189
216
170
197
193
271
230
199
166
185
228
185
157
217
223
219
228
223
119
252
227
226
163
157
208
157
225
160
184
229
235
201
211
176
115
196
170
228
199
199
217
207
205
185
197
176
188
226
194
133
198
212
202
206
175
229
187
220
193
150
212
182
169
227
209
203
184
167
189
258
164
245
168
160
131
186
171
190
269
210
170
216
185
195
151
188
194
184
188
199
158
137
200
164
202
260
210
265
146
179
243
235
227
182
158
216
207
177
198
258
207
208
270
231
195
182
191
232
153
222
201
158
252
164
144
214
199
201
208
244
253
173
188
234
179
209
193
168
182
225
200
211
184
257
252
267
235
227
205
217
236
172
214
199
156
197
160
229
222
179
238
179
178
217
161
215
215
206
208
226
249
228
237
180
227
200
180
210
216
205
210
186
199
236
185
286
219
196
209
228
209
250
145
221
202
206
210
241
219
205
213
210
95
173
184
221
165
204
256
206
202
155
189
188
218
245
236
217
216
216
191
178
226
198
222
204
214
220
167
172
262
184
230
116
199
174
214
184
276
213
205
233
218
211
170
162
205
222
215
217
219
199
211
232
219
244
160
181
187
185
239
178
164
193
220
242
201
213
245
145
204
133
151
183
171
152
229
141
190
210
245
96
148
127
225
150
185
230
216
147
144
241
207
208
93
225
255
259
182
193
170
135
167
161
209
229
189
179
171
162
140
158
219
199
199
202
234
166
172
251
225
195
204
180
165
158
177
231
202
189
248
185
190
133
154
162
199
185
217
184
226
189
206
180
193
210
168
227
196
222
223
232
218
233
204
157
163
225
172
223
149
193
204
214
229
187
215
214
233
201
171
216
136
211
207
166
200
211
175
218
197
207
144
197
183
183
238
221
205
218
202
218
250
233
152
249
249
149
244
210
251
166
172
125
189
207
200
175
179
199
227
238
221
213
210
205
224
145
215
171
209
231
180
261
235
122
230
201
229
184
185
149
171
230
200
195
160
202
185
220
212
190
173
180
187
272
203
169
195
177
212
254
192
190
215
133
180
263
248
205
233
131
165
178
214
236
173
274
178
197
207
216
141
235
221
238
171
207
195
257
188
184
175
210
214
197
208
176
201
267
216
262
180
241
232
125
209
246
256
228
230
204
211
210
181
271
219
212
173
214
171
159
175
224
186
202
208
131
179
211
256
182
191
218
202
202
156
199
202
160
188
209
204
222
135
208
182
194
202
173
252
240
210
258
209
198
136
293
222
196
229
247
194
220
194
202
190
228
192
256
243
152
181
261
245
232
133
205
188
186
182
245
241
208
202
190
202
175
204
231
242
158
274
213
255
212
240
210
149
281
202
217
199
198
172
178
172
155
228
158
228
261
246
242
241
152
209
262
218
158
183
221
258
196
236
208
116
179
212
199
147
273
177
222
211
182
226
179
235
202
217
182
218
178
248
174
246
254
197
164
235
273
161
170
239
223
201
196
138
180
231
188
159
166
212
207
255
203
222
306
231
194
261
188
194
204
194
211
203
168
201
249
239
240
238
224
170
188
186
180
230
198
161
267
187
238
231
215
215
179
173
161
204
222
204
229
205
211
161
174
223
222
165
157
187
239
246
216
222
173
171
160
199
194
244
175
195
132
133
242
184
272
193
204
200
233
186
251
222
162
265
202
178
204
148
191
168
229
179
169
132
200
197
201
189
232
183
198
211
240
193
224
179
216
190
165
235
193
187
185
185
204
228
197
199
166
169
163
180
223
171
188
222
209
227
232
165
181
251
200
212
194
185
119
155
189
202
238
190
234
261
181
184
182
243
179
249
188
152
153
165
179
189
204
229
237
274
184
163
179
199
218
186
145
141
174
183
216
181
206
192
223
196
152
169
233
193
224
170
227
255
229
218
168
141
196
207
173
193
164
234
230
173
217
216
130
161
159
254
233
114
195
145
233
192
256
238
135
190
210
253
246
195
203
197
219
187
228
220
190
188
210
184
214
175
177
181
179
215
145
221
209
185
238
196
221
138
259
190
239
205
230
235
202
236
157
188
220
240
212
206
225
241
226
157
159
185
204
233
184
229
228
125
229
159
231
128
251
200
238
187
251
222
248
233
269
174
188
140
269
220
264
174
205
192
197
201
170
187
248
227
214
218
169
199
196
275
223
182
213
230
272
137
228
120
223
217
215
198
245
221
172
151
153
229
183
194
213
123
155
220
213
186
133
178
264
193
224
193
194
165
255
201
185
222
170
128
217
186
196
207
171
262
247
188
215
217
192
227
216
201
284
208
168
201
202
269
254
180
172
174
171
165
206
189
223
199
174
180
148
137
257
244
240
210
179
180
235
177
175
183
175
177
228
219
214
153
251
268
210
178
169
167
178
211
167
265
208
150
213
187
149
203
213
220
194
279
144
210
228
233
264
110
193
154
200
208
200
177
243
218
171
187
186
238
231
158
147
152
217
176
119
196
262
163
183
189
201
147
210
163
191
179
184
165
182
194
192
241
178
246
116
227
185
241
212
167
229
195
156
223
187
202
200
187
157
191
218
170
194
189
238
284
209
144
223
194
171
184
204
241
199
194
171
208
146
169
211
195
216
170
163
196
223
258
183
203
249
192
219
128
226
204
211
204
198
173
266
226
230
182
158
178
205
161
210
189
218
198
148
214
268
166
279
225
146
256
136
243
196
227
216
209
206
226
220
193
186
170
247
198
235
203
173
198
204
237
232
194
174
197
172
201
176
199
229
176
204
235
248
183
243
217
227
186
230
219
156
198
231
168
161
208
232
209
227
222
194
234
217
175
113
246
165
240
187
91
235
229
215
194
161
222
186
151
240
198
179
210
203
223
203
278
256
240
233
241
184
157
161
252
188
254
174
257
189
172
245
154
171
159
208
206
165
196
146
131
248
176
253
252
212
175
146
203
212
190
247
249
249
152
267
143
233
221
184
228
225
180
234
224
207
145
170
237
204
220
142
175
207
202
230
234
204
238
184
198
233
223
158
168
144
139
223
174
215
213
213
180
235
245
250
235
243
188
153
139
160
147
233
222
224
172
144
224
231
233
206
234
256
215
215
216
194
186
223
221
235
134
209
218
199
168
202
188
226
172
213
173
215
213
195
149
260
225
204
176
193
185
195
210
218
162
196
177
219
217
178
190
191
256
229
181
176
225
185
196
265
187
202
209
169
208
134
186
282
194
129
223
198
171
141
180
155
163
199
142
179
164
187
190
200
219
199
167
211
224
236
263
220
171
242
199
260
225
182
146
150
159
247
222
178
195
198
231
145
192
115
168
164
191
153
154
179
228
190
244
210
175
189
183
187
207
193
258
212
190
169
236
214
165
182
231
241
189
145
194
241
195
207
238
214
187
191
226
125
184
269
207
272
218
246
205
130
212
208
224
226
284
153
191
176
214
275
191
182
221
167
231
242
184
188
301
223
228
211
178
162
294
247
182
196
224
196
195
196
179
198
184
166
240
210
163
254
213
146
235
201
173
161
221
181
213
162
200
211
198
201
180
189
179
231
229
153
231
215
229
184
181
235
201
237
145
208
252
220
219
210
169
190
232
200
171
173
233
156
205
180
217
135
168
180
215
248
163
177
149
203
179
196
147
202
238
147
208
161
220
183
189
164
183
180
264
234
172
195
191
211
170
237
215
226
206
216
174
240
226
231
136
179
163
208
246
147
236
115
222
168
244
168
207
184
216
165
162
194
196
215
243
239
230
207
202
202
153
180
164
202
106
172
260
140
228
218
235
178
262
184
172
196
240
268
217
192
194
229
188
155
161
182
221
159
209
196
227
152
261
213
245
206
239
207
164
198
194
191
185
210
189
230
215
197
179
131
227
216
241
208
155
228
163
166
206
179
153
215
209
173
185
169
183
181
182
172
192
189
184
234
169
244
195
269
247
206
186
194
244
251
208
228
224
179
219
194
189
263
191
250
182
227
144
187
232
225
255
179
208
185
207
270
200
173
222
218
197
222
183
181
243
220
227
172
192
187
205
211
209
208
289
212
175
210
250
147
244
173
194
164
147
231
229
271
230
194
226
251
187
152
177
145
242
219
173
176
203
143
196
267
134
178
183
195
188
187
284
150
195
175
153
228
259
154
174
238
177
221
217
184
188
171
216
174
209
201
81
185
176
221
201
221
194
237
217
176
194
144
182
181
249
214
224
204
154
195
104
209
251
235
200
225
157
168
193
262
217
224
163
227
198
183
165
206
263
169
217
216
144
194
233
137
136
219
202
203
235
203
183
223
224
261
224
184
231
193
213
222
185
137
186
215
219
247
228
259
231
154
195
202
212
134
225
159
192
216
212
167
214
206
169
164
175
194
183
244
158
243
205
197
135
210
217
235
213
191
199
128
161
240
143
174
211
145
164
160
151
171
119
173
163
160
166
226
191
227
184
216
163
245
208
199
239
238
240
252
220
249
163
152
168
227
210
203
219
182
145
162
196
238
248
242
236
170
167
204
240
131
214
219
215
206
262
192
219
162
265
246
179
180
221
170
224
205
206
190
216
196
197
144
157
238
181
171
180
187
204
173
241
215
245
223
237
203
176
225
261
179
204
217
228
228
218
236
169
189
203
217
197
156
183
178
113
162
202
222
189
222
236
169
262
228
235
198
148
168
176
212
249
170
202
198
149
208
215
227
160
208
183
174
224
142
232
260
187
247
240
202
206
212
207
210
186
209
191
200
188
136
207
199
131
189
180
235
230
136
275
196
198
166
214
207
104
145
198
228
220
189
227
209
188
207
186
165
160
211
173
158
181
175
211
235
221
196
174
209
130
164
187
194
166
178
208
208
226
179
196
234
198
155
207
223
223
205
171
234
190
218
212
239
255
155
160
202
220
234
232
168
254
215
214
184
217
203
151
178
234
144
174
260
180
163
175
174
192
150
245
184
205
265
187
180
203
159
190
202
204
216
234
168
212
216
138
209
247
255
190
177
238
176
160
278
190
208
172
134
182
167
231
190
270
238
203
174
179
182
200
221
262
224
213
223
223
169
130
192
208
221
193
221
106
165
179
220
209
261
173
229
225
173
162
218
237
240
187
214
193
183
236
165
137
146
211
176
214
221
186
154
203
164
227
237
120
194
181
203
166
202
205
233
176
177
168
232
202
201
164
199
256
219
223
223
202
237
217
209
247
190
146
162
220
200
195
124
119
175
211
186
196
184
135
198
287
147
164
199
193
244
188
164
173
167
259
206
249
165
190
239
174
214
232
179
203
134
257
271
227
203
237
208
136
149
199
191
181
179
187
221
153
202
252
199
157
231
219
245
234
236
165
224
173
169
224
211
215
214
167
241
226
195
153
150
238
230
153
203
181
237
207
158
230
169
214
209
196
238
179
222
149
214
262
189
276
247
228
203
204
206
217
150
206
202
248
162
198
187
187
236
160
189
167
179
221
191
257
232
156
179
193
238
124
243
271
182
204
209
184
204
206
185
176
212
213
210
216
247
203
122
143
167
144
177
160
193
214
221
165
227
170
229
177
159
164
238
196
218
153
186
204
215
227
126
248
203
186
185
211
193
186
267
240
185
225
198
141
176
182
154
190
185
239
120
196
228
199
196
191
237
174
202
212
214
175
225
177
172
128
211
205
139
171
212
206
152
187
193
238
175
219
231
246
211
194
174
114
213
191
209
178
224
258
200
206
221
231
198
217
249
139
181
239
215
273
236
223
230
202
213
221
205
210
189
159
149
146
179
209
227
235
110
200
230
171
269
147
248
177
230
58
162
212
218
253
196
152
161
238
245
227
171
250
224
156
177
201
262
234
137
207
226
217
206
159
210
233
213
198
214
228
214
188
232
210
118
191
268
245
161
272
187
153
135
204
180
251
217
206
173
198
206
175
155
198
211
219
228
150
201
225
216
214
212
140
165
208
134
172
260
134
187
254
198
265
208
147
147
116
251
226
217
183
208
182
207
203
189
201
129
174
175
225
135
199
172
231
239
245
186
176
228
182
225
221
210
235
191
204
250
180
193
228
223
206
229
253
257
195
188
206
229
158
194
217
118
200
224
186
242
166
228
144
266
214
216
160
208
205
152
193
198
234
221
215
200
165
166
248
290
205
180
198
211
113
221
169
187
185
198
210
173
187
200
230
237
186
199
189
207
175
232
195
240
243
182
231
221
216
206
143
208
181
198
182
219
153
225
220
180
209
187
266
152
243
224
206
197
213
226
222
155
192
190
208
234
205
210
193
168
173
192
257
267
206
209
171
187
142
191
197
247
219
206
153
197
232
149
176
216
185
153
198
157
236
200
263
224
257
142
255
241
215
114
254
197
197
252
216
188
164
209
187
235
223
145
176
248
186
190
231
278
213
173
105
171
217
233
236
208
160
160
166
177
187
171
163
203
187
220
147
190
202
214
167
181
198
148
226
132
110
249
118
150
185
200
226
180
234
195
185
207
207
255
230
235
207
200
216
163
222
238
250
174
213
181
161
134
229
248
197
117
277
161
212
292
197
228
204
256
165
148
233
206
223
276
183
212
249
166
205
203
179
203
228
171
196
161
234
241
225
172
207
211
190
218
170
216
179
190
216
185
206
221
228
207
181
169
195
153
199
229
205
206
200
202
241
156
201
204
193
192
199
154
169
192
225
153
242
188
163
216
164
201
172
216
252
211
185
214
234
236
235
229
201
191
201
229
260
203
210
176
220
144
180
181
221
248
149
160
178
234
140
183
227
233
245
254
200
266
181
210
124
157
175
181
137
196
223
143
179
289
230
157
219
240
221
202
245
209
209
238
188
239
209
129
212
198
265
249
229
201
201
246
171
185
201
131
237
189
149
198
212
224
147
210
206
216
194
190
213
191
173
221
221
191
150
190
227
191
163
250
193
193
214
171
231
192
193
178
221
150
197
155
200
165
205
187
249
183
242
198
239
201
185
197
164
187
184
208
175
130
248
205
202
223
200
156
221
246
214
189
239
256
222
219
207
167
216
190
144
134
239
228
191
171
144
215
197
161
159
206
241
227
135
200
140
189
189
166
149
161
220
190
191
190
203
245
261
169
159
174
149
188
190
190
210
203
212
152
194
159
156
282
205
153
195
183
181
252
216
175
189
192
251
133
160
167
171
173
246
234
193
225
217
221
185
216
227
187
233
232
248
212
169
261
182
236
152
172
200
216
145
220
161
228
201
231
268
176
229
161
238
142
208
233
256
248
206
247
236
204
182
186
262
210
131
152
263
229
169
229
224
207
163
176
187
209
156
174
234
208
231
174
154
166
218
252
150
179
231
205
233
203
272
181
225
178
133
230
244
223
193
212
257
204
234
217
197
239
184
159
282
230
254
233
244
151
282
252
228
197
167
167
242
254
147
218
211
221
195
260
237
185
184
180
171
234
212
180
186
142
185
193
247
162
166
187
162
197
174
180
195
243
303
180
185
227
173
197
130
217
150
220
213
134
236
206
208
232
160
232
171
242
148
148
227
224
198
203
173
155
192
207
159
231
167
151
222
195
147
217
225
232
226
181
234
196
205
193
162
219
219
222
195
206
206
240
183
167
245
140
169
207
217
226
235
167
234
261
243
203
211
204
181
195
168
202
202
178
201
172
199
247
224
177
223
193
186
232
239
156
210
217
156
150
215
209
224
181
204
172
217
225
221
137
194
184
184
188
209
137
236
223
216
194
228
263
221
188
183
228
210
234
210
232
195
202
156
206
134
227
197
225
171
185
291
188
222
230
255
273
216
235
170
203
164
255
123
131
216
245
214
163
228
213
130
237
182
186
172
208
199
268
213
211
216
243
220
145
180
218
243
206
191
220
227
214
209
146
256
231
211
199
207
222
166
209
143
234
205
202
168
163
179
206
235
197
199
193
222
155
193
202
207
267
231
189
193
225
150
213
177
193
172
221
175
193
194
159
292
186
215
204
184
178
214
237
241
206
160
203
166
288
228
212
175
184
288
230
171
170
97
153
203
204
162
167
215
148
193
187
158
160
184
181
232
164
198
218
212
221
227
230
178
261
150
246
200
234
211
216
210
193
176
231
238
162
193
178
239
208
255
195
216
190
199
195
173
203
190
236
195
243
218
211
192
159
136
208
191
177
228
211
265
177
165
150
229
175
218
229
231
219
218
203
224
198
214
187
239
156
195
220
120
260
215
185
275
220
143
175
211
234
147
161
168
176
213
209
230
183
216
136
170
268
256
148
209
130
263
173
242
237
224
220
192
181
183
238
213
167
217
196
215
220
228
170
185
134
165
198
197
227
219
157
157
188
187
236
228
293
181
187
234
188
181
177
242
192
259
135
212
161
198
265
205
243
127
155
201
256
249
207
259
252
221
202
177
215
131
225
151
231
177
229
162
218
205
157
248
203
234
177
192
158
201
221
215
198
154
160
201
164
172
131
227
188
180
182
193
201
224
197
254
219
267
159
199
157
216
202
165
236
184
177
156
201
259
216
194
113
228
181
232
179
224
141
229
186
193
171
241
244
211
145
201
130
216
155
231
183
195
193
175
158
203
196
176
154
262
159
230
228
109
213
109
238
211
200
157
223
221
277
192
188
254
156
234
189
163
251
191
194
194
196
172
196
251
207
130
175
169
140
187
187
247
160
259
168
236
139
202
198
230
218
173
216
237
222
209
189
261
197
189
152
198
142
180
221
209
214
229
201
252
181
239
219
146
192
203
267
218
102
199
184
198
166
179
231
232
193
166
165
240
257
177
212
230
171
158
245
229
170
240
221
157
216
214
140
210
178
150
143
166
147
208
136
214
175
244
279
259
153
187
199
261
184
228
233
231
197
153
236
247
210
207
196
195
258
130
169
204
232
207
198
168
200
221
317
190
181
228
182
187
167
250
157
199
164
277
197
252
221
190
106
153
137
192
184
218
211
209
145
265
215
110
189
188
184
257
193
198
204
114
168
193
215
198
246
207
219
216
244
242
202
231
169
191
281
177
196
190
207
196
207
130
241
210
208
193
228
206
119
188
212
223
196
187
163
171
241
263
185
229
272
200
196
202
187
215
193
188
223
221
244
153
211
210
189
223
193
161
217
194
179
192
184
256
188
211
214
232
200
213
164
248
204
212
158
196
175
128
215
181
189
179
237
219
208
241
166
240
199
167
238
188
162
224
138
167
231
196
167
158
193
247
231
184
204
183
191
204
186
164
213
187
214
211
182
252
140
232
127
151
206
170
214
120
141
89
243
198
151
243
177
204
190
152
211
199
181
266
136
209
211
215
274
183
246
232
236
218
210
225
224
196
170
199
248
191
197
194
216
184
282
171
234
249
182
204
179
239
206
235
169
176
145
188
223
226
219
221
233
165
184
170
185
228
256
208
141
212
235
271
221
187
196
184
122
192
161
197
217
222
202
207
209
206
195
275
222
251
229
237
152
246
167
158
257
218
217
192
215
251
220
183
173
243
118
208
230
233
166
161
167
138
218
197
220
192
173
180
182
236
114
160
208
193
177
210
211
241
203
206
246
190
225
252
237
210
176
191
148
201
224
159
173
178
223
188
204
215
163
205
256
233
154
131
153
246
245
168
184
174
168
260
174
153
250
165
225
209
190
216
261
232
219
161
215
244
236
180
184
160
218
197
209
196
281
222
239
272
200
133
211
234
187
270
163
198
244
157
189
195
182
198
184
154
212
167
158
237
188
250
253
183
191
228
245
283
234
175
237
180
212
176
248
252
180
185
197
225
198
203
187
259
210
210
235
161
184
214
238
199
197
204
156
183
224
200
191
174
217
187
193
207
168
246
199
108
197
202
148
217
202
208
165
204
203
203
206
241
243
175
197
153
222
249
131
208
216
217
238
266
203
210
182
172
266
224
218
202
176
208
149
181
161
203
210
225
198
223
155
160
190
191
216
173
200
209
153
139
276
208
185
205
164
196
213
182
249
184
228
198
190
206
125
146
213
214
214
207
180
205
257
228
204
241
143
220
167
200
170
216
252
214
288
165
195
231
212
228
182
129
208
202
127
202
214
216
232
200
170
284
208
200
158
221
194
149
170
137
178
131
167
197
246
230
209
127
167
236
250
227
206
225
222
188
217
159
198
166
101
197
174
219
236
161
220
196
115
183
202
203
196
138
145
99
161
225
182
137
249
225
200
141
218
245
176
177
226
143
194
150
161
279
176
221
202
191
218
142
255
213
240
119
235
184
177
234
210
179
201
224
178
144
223
257
238
148
194
244
219
237
219
197
180
189
165
188
189
182
281
233
252
274
216
235
198
260
185
228
211
181
251
190
157
182
172
178
172
147
205
214
166
226
238
182
212
192
176
194
187
197
240
190
186
213
270
253
218
168
201
200
211
157
160
169
223
205
186
178
202
196
217
222
213
211
164
144
223
213
193
232
222
225
170
258
135
192
155
163
275
130
230
260
206
213
247
201
193
217
188
142
198
276
222
223
171
212
173
208
194
126
173
228
252
235
239
241
157
178
134
178
193
206
147
242
250
198
247
248
253
145
228
180
204
245
229
201
236
176
181
202
130
199
261
227
212
212
200
229
206
217
166
202
150
141
195
181
151
221
173
199
159
215
140
229
222
249
176
198
244
196
229
214
221
135
207
188
250
260
158
177
246
142
256
124
236
132
234
148
214
160
142
178
164
181
273
220
202
267
195
164
163
189
167
225
184
267
203
197
179
239
220
167
218
176
177
144
187
171
212
188
208
222
206
194
197
256
187
226
192
106
216
233
198
156
195
147
216
235
181
247
201
212
227
227
280
177
180
219
188
245
185
176
112
252
185
222
156
155
173
179
230
263
179
237
191
179
187
192
238
164
216
220
186
190
179
136
218
182
211
235
252
223
164
237
170
194
151
265
186
187
201
165
199
227
177
237
152
185
213
254
157
166
223
272
185
212
202
276
209
202
237
140
194
234
248
244
187
161
213
194
165
216
228
215
178
251
200
142
230
243
200
153
240
214
243
240
214
204
212
212
169
167
215
177
200
205
191
139
191
142
159
222
158
226
262
215
157
150
213
202
185
264
206
136
233
247
197
143
170
190
225
132
266
216
257
211
241
256
214
219
253
248
183
177
164
141
142
222
174
171
156
230
209
231
167
200
251
252
140
240
195
228
259
203
183
199
212
194
149
214
176
255
143
198
182
203
222
174
156
209
212
237
238
200
198
174
180
208
228
204
256
206
169
145
211
250
146
275
195
240
240
179
211
205
205
209
239
188
204
218
164
195
199
228
157
261
159
233
213
212
191
167
259
152
196
249
157
190
212
188
183
212
200
159
192
207
175
171
205
166
166
216
213
198
215
280
194
232
263
181
232
142
169
262
134
186
133
194
166
186
219
165
192
192
193
199
162
202
174
210
165
224
230
209
167
253
229
182
186
219
260
236
209
220
158
169
193
205
227
132
175
262
213
189
240
194
174
231
161
219
231
209
159
216
179
194
186
216
165
190
181
284
208
232
239
220
186
235
186
210
193
196
194
185
194
283
228
70
225
237
204
185
202
132
134
197
177
167
190
167
95
168
153
167
227
192
163
209
224
184
226
234
212
176
142
268
204
197
191
189
254
173
196
227
224
208
188
193
172
182
123
187
234
186
218
227
238
168
216
175
220
212
203
160
168
234
240
197
217
178
247
195
147
198
135
185
177
216
195
156
164
195
158
253
245
139
231
219
160
225
252
225
200
202
197
187
242
167
155
174
233
205
213
216
211
237
185
187
192
125
237
185
148
263
177
207
168
239
243
223
179
142
214
195
247
182
199
226
216
189
181
191
216
210
233
237
141
203
251
197
196
189
178
161
228
203
237
197
133
274
215
159
191
218
218
225
222
184
279
191
213
232
230
209
214
215
223
181
205
180
232
207
136
237
189
217
225
193
187
212
202
197
200
264
201
188
196
191
243
208
274
169
255
191
209
215
225
216
237
153
229
241
231
204
207
269
257
180
203
222
158
182
190
227
208
240
214
174
220
152
215
222
237
161
235
225
147
205
252
181
212
194
209
220
189
177
199
232
196
139
244
209
166
190
196
180
156
166
232
208
173
231
208
201
224
220
237
167
175
228
199
197
211
168
243
197
224
194
175
199
218
161
183
153
173
158
199
226
205
236
189
140
137
175
224
221
227
215
191
128
186
172
228
209
207
280
206
151
234
257
223
193
166
244
213
162
216
212
260
170
162
167
182
177
203
190
220
177
251
185
242
209
166
221
148
166
127
189
207
195
173
202
195
190
149
241
201
187
220
223
176
237
205
215
156
171
229
211
238
142
178
219
241
224
189
224
232
205
178
221
167
212
195
210
178
149
206
235
165
163
221
230
214
201
189
233
258
245
158
218
195
176
224
240
182
233
278
212
244
173
169
234
221
166
221
181
211
202
183
211
225
201
255
167
226
209
195
277
122
149
181
220
218
217
228
173
220
217
177
227
226
213
177
186
265
187
234
210
230
166
204
178
152
200
210
128
208
234
202
163
233
203
174
220
218
189
173
133
202
140
226
236
210
169
187
183
294
190
214
164
141
153
216
176
203
185
148
217
158
181
216
218
273
169
199
133
230
161
159
174
184
146
202
226
218
226
237
203
184
204
244
225
147
160
167
211
230
251
179
162
208
263
189
229
179
261
165
201
247
139
153
247
192
223
229
151
249
253
161
198
199
170
204
196
233
247
220
144
210
219
144
175
191
215
224
157
198
129
222
155
205
237
173
259
176
173
157
192
175
167
159
172
172
196
254
209
225
214
140
141
169
251
209
185
272
162
237
195
172
214
185
195
215
222
132
219
181
212
227
265
213
187
186
203
202
203
144
238
229
231
137
198
228
223
159
187
215
207
256
179
272
129
252
217
222
230
257
205
198
172
208
230
152
214
182
166
199
230
150
245
216
201
167
228
242
228
219
194
191
225
222
276
196
227
142
193
219
206
190
257
210
178
188
178
168
225
177
129
211
218
209
228
248
214
257
196
222
179
211
235
189
231
204
192
184
143
194
233
308
219
273
196
141
253
186
203
241
271
192
199
202
247
110
246
270
127
237
201
195
224
207
169
205
222
187
195
164
201
190
239
168
215
180
124
159
213
161
237
228
164
198
185
199
204
223
194
256
255
227
201
163
168
217
251
163
217
207
244
197
196
210
155
236
259
220
188
160
191
218
221
179
176
207
154
177
216
153
246
194
201
193
168
178
186
267
253
218
210
244
237
235
152
209
177
182
234
199
191
147
237
183
178
210
252
157
232
231
198
179
134
202
218
237
219
150
169
224
267
168
224
165
165
187
210
127
224
170
162
241
169
222
202
220
220
200
186
229
177
157
143
144
166
240
199
181
180
232
179
211
147
188
226
239
222
223
167
248
164
250
282
180
198
161
179
204
179
208
233
243
197
215
144
167
234
180
183
189
179
180
228
207
206
191
228
184
247
121
140
214
166
193
190
216
223
221
251
210
190
179
219
158
255
164
221
188
210
202
225
190
208
133
189
232
185
215
189
121
228
156
158
244
129
131
172
160
169
203
232
246
158
214
242
190
205
170
162
164
155
201
212
199
193
265
198
178
166
169
176
198
213
161
173
223
199
226
206
164
227
212
179
218
170
213
171
164
188
204
189
230
158
218
198
187
181
149
183
218
230
202
198
208
197
206
194
160
204
183
175
118
185
178
161
214
186
176
205
89
240
273
159
227
259
216
212
173
209
181
211
155
204
180
181
201
196
188
187
189
221
158
224
160
195
163
240
176
143
158
249
161
166
229
257
257
221
202
195
242
220
221
248
176
198
142
200
206
173
215
212
150
233
199
157
240
196
177
179
245
238
240
233
189
184
165
176
183
187
130
167
108
236
200
262
180
140
110
152
243
188
214
243
130
199
248
245
209
194
186
180
179
187
240
235
172
134
239
223
232
135
144
153
155
236
196
252
227
162
218
241
195
208
151
191
207
163
169
166
248
214
181
198
209
225
216
243
201
221
185
144
165
138
201
219
194
245
184
200
176
178
225
237
227
249
212
259
205
238
262
201
215
253
161
199
226
219
175
190
208
149
250
205
214
214
141
194
216
204
201
207
193
231
151
233
204
189
262
195
203
208
218
153
225
179
146
239
222
205
198
190
229
184
202
203
223
234
217
236
151
211
229
199
241
181
275
130
243
184
187
186
187
199
217
184
238
167
177
244
176
174
261
202
237
161
266
176
236
147
232
193
223
233
244
168
177
236
241
220
142
176
230
162
178
241
194
198
201
179
233
164
193
217
177
197
161
257
144
148
202
186
240
211
176
157
192
182
191
173
213
264
236
243
187
220
141
143
177
189
203
177
191
209
114
167
190
162
160
214
196
226
195
252
205
201
227
201
231
245
237
216
184
217
222
163
222
233
166
270
157
202
157
195
237
219
161
164
218
184
212
194
114
134
263
150
185
205
222
137
195
178
246
197
214
223
237
157
203
221
140
163
181
217
183
186
144
169
185
238
236
227
163
244
185
215
198
176
256
258
191
231
169
204
174
213
238
222
207
253
205
184
206
207
250
141
248
198
185
146
216
203
177
190
143
204
210
175
201
193
225
183
251
167
233
194
195
222
212
144
201
185
196
140
244
216
116
236
194
169
217
195
166
175
189
204
176
178
270
221
191
156
219
134
250
188
154
270
169
210
271
171
246
189
134
237
174
165
204
234
155
289
199
261
220
198
187
211
201
187
239
247
156
200
213
182
231
226
192
205
221
186
199
227
200
193
243
210
199
199
185
154
235
161
211
154
238
208
208
181
219
254
231
171
182
235
248
163
252
125
219
254
206
273
188
184
192
196
173
187
130
226
213
173
131
159
140
230
167
254
259
191
216
227
156
240
237
230
226
195
186
180
130
212
191
229
232
158
201
203
194
249
251
211
176
258
230
175
199
196
216
194
196
195
180
128
177
183
201
206
173
177
191
212
218
185
165
206
155
254
192
159
169
188
182
202
195
189
195
192
176
111
271
239
190
178
209
206
220
222
249
229
228
201
164
209
193
173
126
197
192
198
184
218
176
206
152
165
193
213
233
199
215
257
175
171
170
134
208
187
170
204
237
190
216
193
140
217
208
192
205
195
165
220
141
250
155
167
184
210
184
155
204
195
224
223
259
219
224
239
229
231
232
234
257
187
186
166
176
150
158
184
188
186
144
153
229
198
195
189
172
200
194
247
159
176
192
208
180
197
163
159
149
184
144
249
212
239
224
240
228
235
175
264
160
164
196
193
161
196
267
191
214
148
201
248
243
190
195
221
196
209
204
239
199
220
242
194
165
222
113
250
199
190
242
235
96
163
191
215
231
195
253
260
205
190
186
168
199
219
174
180
155
199
178
230
260
196
178
251
248
202
234
198
136
210
209
219
212
260
201
163
208
151
198
186
228
177
180
194
219
159
233
196
172
196
206
251
215
197
198
151
201
122
169
194
198
225
187
223
182
209
178
247
247
214
206
146
192
292
176
220
139
219
179
265
214
187
168
230
187
196
265
214
230
236
178
148
167
145
201
154
139
187
204
132
270
161
178
205
178
150
163
233
196
195
208
160
215
244
151
162
179
200
157
162
181
210
168
177
215
260
228
138
205
152
234
245
224
233
255
213
202
162
211
258
214
202
236
221
223
226
206
187
173
134
183
219
214
206
158
203
237
198
205
191
201
182
218
214
216
211
212
228
169
183
172
238
214
208
229
261
201
218
190
221
260
218
254
181
256
170
146
247
219
238
219
202
221
204
145
226
203
214
161
211
197
210
243
192
194
164
162
204
213
214
202
204
190
105
236
208
221
164
174
184
112
219
210
212
233
204
219
219
175
192
179
230
210
148
181
187
213
177
176
253
216
198
179
192
230
259
191
164
182
171
174
181
230
208
208
197
216
228
239
269
227
213
204
180
139
164
155
221
216
177
202
154
229
245
206
219
206
241
182
171
260
233
237
237
163
191
215
192
195
234
260
204
155
195
233
222
187
172
221
238
218
137
199
256
195
216
204
187
223
223
248
170
224
241
200
227
208
226
161
226
161
192
165
202
141
236
198
292
218
205
221
211
205
182
212
234
231
187
175
235
165
193
134
267
204
199
146
135
168
249
235
208
199
177
184
242
163
276
199
204
177
217
123
173
186
217
235
167
260
228
180
155
165
219
197
231
195
181
172
192
256
202
224
233
185
214
211
203
109
230
286
229
198
188
151
232
187
202
193
160
241
222
163
257
178
241
123
224
229
127
206
161
187
222
141
167
180
218
151
156
115
232
236
160
198
181
193
229
153
229
153
158
190
175
244
165
211
179
249
170
155
193
200
116
269
198
191
129
195
212
210
167
179
210
249
146
197
147
188
153
217
236
247
187
217
196
248
190
149
162
180
160
201
178
134
240
201
166
217
187
189
163
191
223
183
211
182
219
221
228
139
177
189
200
220
175
179
207
173
198
226
170
244
191
191
161
229
233
224
195
214
225
192
162
172
218
177
168
190
247
198
201
223
232
168
184
196
157
186
174
180
102
250
243
187
207
179
166
172
238
191
202
223
158
214
125
191
195
180
224
130
229
147
208
195
181
211
166
198
270
228
170
140
209
157
214
207
201
219
241
174
207
244
184
192
256
172
173
149
195
234
203
262
152
174
186
210
203
195
177
198
222
207
215
212
182
157
187
134
184
235
196
188
195
255
184
230
228
223
206
192
195
218
187
221
192
189
185
160
228
205
198
173
195
193
184
229
241
209
215
214
183
150
222
213
157
143
237
228
127
215
172
235
216
216
164
234
233
208
196
180
228
196
152
235
236
174
201
173
198
174
223
170
207
204
246
175
162
218
203
195
229
176
171
258
202
183
184
204
173
238
168
151
235
208
157
223
185
236
228
260
260
144
244
232
175
256
192
240
227
214
179
175
85
240
193
154
198
225
202
224
196
276
178
212
257
236
257
231
217
197
276
181
209
175
202
183
136
160
223
229
140
126
206
208
181
187
237
172
217
178
182
220
179
182
201
237
235
166
192
180
207
188
178
236
225
170
222
177
198
173
189
200
247
244
143
184
198
121
210
242
222
262
302
179
203
228
170
203
169
178
173
119
245
157
179
164
182
198
198
157
170
195
172
173
175
226
167
185
141
208
195
178
247
248
221
188
180
181
219
203
189
219
218
271
210
217
247
242
242
202
191
191
216
216
209
179
196
211
227
163
197
173
186
247
216
162
188
225
201
252
234
221
206
157
216
192
145
144
232
191
176
121
212
170
181
224
215
234
172
177
216
256
196
250
207
239
190
167
227
227
231
244
134
154
224
206
198
166
201
190
144
141
225
220
204
141
182
185
135
181
276
147
161
207
215
187
219
192
236
182
211
223
96
176
176
203
178
204
229
252
208
152
183
234
222
180
174
251
194
164
174
185
139
185
238
216
148
190
221
195
241
176
251
232
221
186
146
252
202
99
183
244
88
232
203
237
209
216
277
199
157
211
255
195
197
175
216
199
203
168
156
228
203
252
139
147
131
154
223
247
129
197
238
199
258
119
201
238
238
190
178
195
222
219
250
225
274
205
236
202
220
154
248
205
230
221
200
228
224
210
228
217
202
108
242
138
200
204
246
203
144
178
192
161
179
155
199
235
186
203
227
271
239
202
222
189
153
165
279
204
205
264
223
193
161
240
153
179
241
197
139
159
219
167
187
170
165
232
197
188
198
179
189
156
251
264
212
166
242
198
177
224
218
217
232
218
210
261
185
162
201
193
204
241
231
200
130
183
204
194
211
163
166
215
191
282
250
226
211
217
195
219
189
189
215
169
166
150
182
177
205
195
193
199
231
184
198
223
143
245
218
215
148
194
171
173
246
240
168
212
210
261
215
145
250
191
189
228
115
210
233
169
228
190
242
224
162
240
213
143
187
212
195
225
201
197
198
171
186
183
240
213
197
180
215
232
220
202
221
241
191
246
204
203
172
246
175
185
231
143
161
128
257
228
216
257
233
198
207
170
218
243
115
235
251
139
215
207
172
179
136
166
196
175
155
147
229
173
183
227
151
187
254
127
160
219
193
209
172
193
135
187
238
236
211
166
164
184
195
235
230
201
165
215
238
215
159
227
209
218
200
191
184
219
212
216
211
221
234
155
157
227
140
211
244
158
164
212
238
220
209
135
196
226
189
201
225
229
184
197
174
224
204
196
249
190
159
212
221
258
241
169
230
199
196
184
179
175
167
153
269
184
170
149
226
174
193
188
224
166
223
193
243
155
117
150
148
163
256
187
230
165
188
171
220
238
202
225
194
150
210
161
234
213
214
215
162
207
161
120
175
206
204
188
218
231
213
227
224
178
144
202
109
216
196
193
172
179
217
197
194
154
131
204
215
199
176
180
146
198
187
180
253
225
230
237
172
230
204
203
206
271
224
214
174
255
211
183
154
165
150
184
230
222
155
184
193
191
245
214
141
228
174
164
179
217
220
205
151
238
219
172
231
159
192
247
183
193
212
187
167
240
162
266
173
171
201
247
190
183
174
164
261
256
203
183
208
233
197
169
177
175
185
221
257
182
142
300
178
226
170
196
214
139
232
215
254
193
195
246
222
222
218
274
223
198
216
182
213
233
190
183
225
134
168
117
162
244
232
258
237
183
208
211
200
226
213
142
237
230
230
215
210
151
203
168
209
161
222
185
223
165
220
182
255
211
224
217
306
185
203
248
240
125
172
211
184
198
186
230
140
202
221
145
188
129
226
192
203
212
234
229
145
177
212
132
200
209
268
176
145
200
193
209
185
223
214
197
219
210
212
175
236
142
232
240
144
199
226
176
214
171
186
185
240
197
208
187
249
237
219
220
251
272
187
241
148
211
232
168
247
183
233
201
240
156
211
156
225
237
177
159
205
189
176
213
189
246
203
190
167
216
157
190
211
172
208
236
259
218
251
193
198
223
228
163
192
223
223
204
187
155
203
249
227
203
173
190
271
155
122
196
147
207
194
253
190
184
263
249
174
210
248
245
230
207
209
196
152
165
277
201
195
215
150
183
236
173
209
186
139
213
176
175
228
234
236
226
169
102
227
192
227
253
174
213
156
166
179
143
186
202
217
182
177
257
216
226
243
183
168
191
158
188
193
200
163
165
179
170
207
240
159
179
159
139
162
182
117
231
177
258
211
236
228
174
177
152
185
186
195
210
158
238
227
152
124
182
228
277
216
232
198
237
256
195
206
186
192
172
169
193
169
172
186
162
174
218
165
187
205
219
219
175
280
178
160
200
214
183
200
207
148
233
254
265
183
205
182
228
182
199
248
225
217
238
230
224
226
234
122
239
235
182
231
248
148
205
216
229
198
194
218
174
197
214
165
263
240
229
197
244
226
215
238
161
205
213
265
241
219
257
156
183
200
187
218
187
235
280
128
205
162
147
226
132
195
209
263
197
254
198
166
220
203
209
208
267
218
202
213
209
237
235
154
137
161
176
224
197
206
230
172
252
239
206
225
179
211
182
243
240
228
254
137
194
168
221
135
154
201
153
175
170
230
150
189
281
177
213
220
225
173
249
154
176
166
184
162
154
205
222
144
222
172
173
124
267
231
228
255
251
200
106
207
255
193
248
160
196
254
263
190
189
195
244
202
202
157
173
219
204
239
167
184
211
217
224
188
197
203
235
244
127
165
113
209
226
250
189
220
228
194
189
208
231
225
249
210
149
214
182
145
241
258
230
218
197
192
196
193
198
214
190
189
167
215
172
142
208
181
172
232
216
207
230
212
265
186
179
235
246
232
240
178
207
192
191
208
195
193
210
206
183
222
225
183
151
214
175
191
159
183
153
215
258
163
157
206
246
205
171
253
240
243
173
209
180
217
216
248
189
212
215
174
115
229
126
177
232
152
187
238
268
185
177
197
234
220
233
152
248
173
234
145
183
190
146
153
168
167
240
235
182
204
186
216
147
162
230
219
129
170
207
245
156
219
192
235
178
211
189
203
208
218
247
290
179
222
189
221
253
199
217
228
160
186
208
153
239
220
220
238
133
164
256
195
204
220
202
184
164
202
194
245
137
197
270
173
171
209
188
236
210
202
225
208
168
239
131
195
294
174
204
167
238
167
206
192
232
164
211
166
226
203
188
161
136
218
205
145
191
161
233
224
272
256
136
173
132
146
233
219
252
203
190
193
153
159
188
230
182
164
150
203
194
198
226
220
187
205
239
210
147
131
220
267
239
250
222
264
228
192
234
210
234
259
211
209
271
178
244
228
230
234
197
179
183
247
186
215
228
180
211
180
230
187
211
182
242
194
234
133
222
182
150
221
197
182
221
185
210
206
183
188
166
217
187
211
201
212
218
177
197
242
187
247
215
141
247
209
241
236
201
199
139
170
114
182
220
205
208
259
182
213
184
146
205
197
180
241
229
181
197
201
133
254
247
198
187
227
186
201
125
167
144
146
165
250
171
166
200
188
202
162
189
178
192
182
138
165
185
167
195
180
168
211
120
231
194
211
199
229
258
163
239
232
229
256
188
229
156
201
210
190
271
212
216
165
204
195
251
182
156
206
173
195
235
196
184
222
216
262
178
237
181
208
224
217
243
173
179
150
237
204
176
188
219
226
168
210
206
258
213
220
226
214
215
243
264
192
186
195
248
209
244
201
153
256
199
152
192
215
280
105
188
157
213
194
191
220
211
215
220
205
189
204
236
170
223
153
204
143
224
200
241
179
200
231
216
244
197
205
160
147
221
220
182
232
256
185
183
180
188
229
178
193
205
250
160
224
190
168
209
159
231
230
228
197
212
178
177
240
252
129
183
141
180
147
118
171
220
250
199
211
173
185
187
190
234
218
189
248
229
197
229
172
198
163
196
119
243
237
171
216
213
183
184
200
243
181
168
193
174
136
208
208
240
210
190
177
186
212
223
223
199
242
246
193
155
244
247
150
178
208
139
212
191
160
217
227
239
250
224
250
185
197
175
195
171
197
208
191
217
256
206
249
227
181
219
237
160
191
187
207
210
275
229
193
178
225
200
253
174
139
216
177
222
179
194
229
212
196
238
209
193
201
210
244
144
160
289
231
235
259
182
96
192
214
194
190
211
197
198
199
178
172
154
251
208
225
269
158
261
237
94
212
154
218
222
199
193
204
206
246
206
236
152
199
259
161
196
179
203
179
195
204
209
237
185
159
244
187
241
185
214
177
180
213
173
229
245
130
235
145
202
147
234
169
230
197
200
230
146
279
166
176
164
204
183
185
190
153
231
186
243
241
228
218
198
133
202
239
142
135
186
151
191
227
268
154
217
184
274
193
196
262
173
135
200
175
217
208
191
230
203
150
178
226
230
169
206
211
252
173
244
205
202
241
217
236
213
170
181
215
236
200
204
263
193
225
206
186
204
199
269
165
207
182
197
205
141
170
213
207
173
261
159
249
233
185
232
223
185
211
230
225
176
198
170
248
152
270
205
156
203
233
197
250
227
226
173
214
194
237
195
225
267
190
166
192
177
266
248
232
143
234
222
239
198
183
192
210
155
161
217
210
167
184
219
116
208
139
199
199
244
186
170
173
202
245
140
163
199
175
222
220
155
194
199
267
158
252
230
248
160
210
237
205
215
176
242
228
188
257
187
222
189
270
148
169
202
214
222
250
172
136
206
225
174
186
249
207
236
245
296
204
215
231
180
187
269
205
216
198
201
142
157
221
194
216
233
159
198
196
212
255
187
221
226
160
205
163
160
173
193
187
204
228
159
207
217
214
190
211
238
256
173
236
147
171
171
174
135
201
202
201
192
228
240
237
174
251
216
200
217
207
244
249
210
279
201
238
165
198
197
214
194
243
174
185
124
248
206
175
162
179
191
207
117
194
201
183
159
157
191
153
206
229
273
214
194
193
241
261
256
117
252
213
217
183
240
181
197
166
177
214
215
216
124
202
195
231
216
189
209
171
213
244
193
230
142
228
193
219
228
236
188
136
126
181
126
225
226
169
265
241
192
162
212
185
260
258
140
250
209
169
198
179
206
230
104
210
193
209
191
228
226
170
187
203
145
239
253
193
219
194
248
230
135
176
235
234
230
240
144
158
151
215
145
195
244
232
252
211
199
205
267
191
215
180
196
218
196
249
194
150
244
250
214
194
260
203
175
175
210
179
268
206
215
150
203
190
217
213
203
170
210
214
198
202
253
154
168
217
164
194
195
136
249
234
197
228
233
182
194
226
171
214
193
210
194
217
217
197
160
163
138
168
209
178
195
216
240
216
245
189
217
222
184
211
193
195
206
207
200
162
151
174
198
185
188
237
204
187
247
182
258
167
205
227
201
210
140
237
217
172
220
194
173
174
173
173
158
150
198
267
219
233
234
164
136
246
211
205
210
238
201
155
200
194
209
170
163
191
196
218
183
200
250
199
172
140
183
273
171
234
211
173
189
148
153
205
165
207
218
168
169
189
252
204
223
155
224
183
180
148
204
225
148
142
193
200
179
171
177
237
175
225
254
224
226
253
184
264
181
225
204
199
241
210
180
184
185
283
211
235
191
204
213
194
258
191
196
148
158
245
168
191
211
184
228
253
184
193
193
199
271
236
165
244
229
227
116
204
194
249
220
190
177
202
195
235
208
183
192
190
225
208
206
150
182
203
164
172
208
147
160
233
151
195
227
197
112
142
149
181
207
262
221
205
215
170
249
220
215
209
220
186
193
232
204
196
176
140
240
191
187
165
165
238
146
194
136
183
227
187
174
236
215
178
240
192
241
239
186
224
138
218
237
179
201
188
200
182
199
151
189
185
143
220
158
158
134
219
201
144
211
173
214
179
160
179
193
133
153
172
239
207
230
219
193
196
247
144
185
227
209
188
205
209
205
177
216
145
226
203
154
221
221
213
280
200
214
202
226
197
225
236
133
185
149
246
215
190
189
132
167
147
191
269
161
199
207
228
223
243
162
204
158
232
190
230
175
186
218
249
230
272
196
226
211
232
195
220
236
225
171
205
223
199
228
223
186
191
166
260
247
250
189
134
171
215
209
92
239
197
184
164
198
212
214
178
177
208
259
193
224
138
203
204
223
139
248
167
243
193
255
185
200
199
131
161
126
184
201
133
177
227
166
231
169
218
225
161
191
250
205
259
136
171
248
169
196
267
225
180
238
270
197
237
237
227
213
249
196
219
152
204
194
189
171
266
220
113
185
240
227
228
172
203
241
136
189
150
238
175
217
191
166
231
206
181
177
264
167
256
205
201
209
155
211
191
144
191
206
175
178
149
177
177
232
192
234
198
163
196
161
149
241
173
125
211
231
160
225
220
216
169
175
161
166
231
161
141
197
198
201
190
243
229
184
236
225
174
146
197
231
206
183
241
228
194
169
227
157
214
162
243
155
241
185
171
178
212
248
196
212
258
156
201
200
207
193
251
177
189
257
186
176
235
173
205
223
208
253
183
183
182
174
194
229
185
177
162
186
210
226
236
164
217
209
211
130
259
201
198
241
191
249
220
200
219
199
157
180
243
137
242
176
207
219
152
171
175
201
225
208
188
222
235
189
214
231
249
157
188
200
244
198
215
206
202
146
207
218
232
158
189
210
171
260
140
190
179
197
136
197
149
219
187
190
222
218
224
178
235
202
191
186
160
186
230
177
187
134
142
271
155
140
204
204
70
176
159
200
188
214
133
180
184
196
224
233
168
213
240
216
151
242
179
188
198
166
175
195
141
207
227
182
251
222
211
192
206
158
136
257
189
202
175
224
227
216
238
133
205
261
192
192
198
217
196
192
165
192
214
202
231
246
194
187
190
219
165
220
140
166
216
257
185
234
206
194
170
214
228
244
167
195
168
145
212
192
268
212
246
172
171
189
191
177
196
203
152
164
274
160
220
184
205
242
206
225
182
204
190
117
186
214
121
216
211
164
152
234
129
175
158
257
234
142
210
193
191
173
193
196
207
104
116
172
211
260
291
212
175
213
233
240
224
229
209
243
133
200
154
250
155
243
143
165
189
234
200
253
280
179
171
191
189
143
187
177
240
192
206
185
192
130
254
238
204
134
224
263
213
222
187
193
203
201
204
191
198
227
166
171
144
215
260
193
184
198
211
257
179
215
231
120
210
137
221
228
230
165
236
206
218
201
154
192
226
183
160
149
205
175
119
164
199
210
228
196
221
199
187
228
189
198
244
203
241
174
223
200
227
192
225
198
211
176
223
134
195
143
174
181
192
271
215
180
212
181
262
220
176
151
234
211
229
239
137
151
114
164
178
186
142
226
176
224
233
146
249
245
167
174
157
214
184
229
208
215
205
215
162
255
187
143
235
179
230
192
212
219
172
191
262
204
247
186
158
224
223
171
230
190
185
164
221
202
223
180
223
120
190
204
225
191
228
268
177
180
205
139
213
223
237
231
177
234
233
186
161
236
125
211
209
252
155
193
181
185
253
222
140
204
203
180
227
210
199
188
192
218
177
223
165
192
196
222
196
211
225
176
203
193
166
208
133
193
215
233
196
181
245
195
228
172
162
207
200
225
219
231
214
159
217
183
174
172
236
210
221
228
165
193
219
214
221
231
170
184
213
223
171
205
224
261
212
219
157
161
195
232
150
206
201
136
218
216
167
211
200
155
187
166
226
166
145
184
198
241
260
235
230
140
174
233
207
192
189
183
217
228
172
213
195
161
142
177
200
217
154
191
232
244
155
181
154
180
155
150
226
205
205
205
247
214
233
186
225
170
200
177
242
203
238
159
203
191
183
183
252
242
227
269
231
258
214
208
164
228
168
237
170
257
215
210
174
197
207
199
177
223
198
242
166
177
189
299
235
176
180
203
227
173
173
177
158
226
199
210
314
218
223
231
224
211
270
225
233
203
194
167
176
272
222
194
235
219
223
216
163
209
191
179
208
180
271
201
232
202
159
191
179
193
233
252
204
221
168
149
147
200
176
175
202
145
204
194
170
186
261
194
164
237
170
164
235
193
221
229
207
211
222
162
216
210
158
278
242
213
226
193
189
209
172
199
210
213
185
164
208
223
154
222
214
202
208
201
174
149
181
217
219
156
172
168
205
220
199
210
195
216
192
174
212
239
209
173
239
164
204
172
240
242
221
170
211
160
168
114
161
220
297
217
256
175
169
163
172
209
148
112
222
187
233
179
213
145
209
237
193
257
220
234
153
160
246
162
229
201
232
217
200
243
203
181
159
193
181
182
150
176
210
287
214
211
219
192
202
226
219
256
161
231
222
195
133
126
217
219
171
214
206
220
171
237
164
158
186
221
243
205
228
227
175
194
245
175
227
175
195
192
206
158
246
144
219
235
172
179
188
178
213
226
135
203
252
249
197
240
223
206
172
220
157
157
191
145
239
148
189
183
187
214
260
186
177
202
201
235
175
179
203
170
181
166
170
199
193
199
206
220
172
233
232
193
194
221
267
184
225
211
202
200
210
194
200
144
206
192
197
196
184
191
175
238
187
190
153
243
177
197
187
179
256
198
239
240
202
229
202
143
205
169
224
253
160
199
171
177
217
209
239
267
184
268
218
173
164
184
264
207
153
236
190
187
249
251
228
242
205
201
218
129
161
222
211
148
252
202
215
176
205
235
205
228
152
230
139
197
181
172
176
156
160
170
215
176
164
194
161
219
159
190
270
177
255
203
206
278
170
192
125
234
138
207
197
266
236
242
248
131
192
164
199
205
178
204
185
218
203
220
216
180
234
174
188
237
210
182
205
231
183
167
76
186
189
212
202
206
186
230
219
224
202
225
219
193
148
192
214
157
210
179
212
163
234
160
248
232
208
161
207
215
195
176
218
212
199
217
232
151
166
161
168
176
179
225
162
264
234
258
221
227
180
180
178
221
222
185
226
208
183
196
204
224
140
212
202
261
202
245
226
182
156
196
253
179
153
247
233
161
212
246
231
195
234
157
191
142
206
248
245
194
186
234
256
281
192
217
201
217
232
155
221
185
168
246
213
211
265
260
175
156
203
280
267
237
156
166
207
210
173
209
201
193
210
214
214
253
187
222
170
177
228
155
210
237
208
175
131
189
186
173
222
200
160
230
201
100
198
190
174
177
159
177
181
191
216
227
203
254
221
250
210
151
245
194
191
205
197
258
163
209
202
223
153
212
223
180
115
154
169
162
192
185
198
110
220
140
266
257
225
213
247
291
233
222
221
207
197
175
194
201
202
145
215
211
242
240
165
190
211
214
272
150
245
229
186
225
206
211
146
190
186
167
193
201
177
190
162
159
175
229
245
213
225
235
228
225
184
186
182
182
191
259
276
177
210
196
172
241
243
255
203
157
189
165
223
243
231
202
193
179
167
204
207
231
242
120
180
236
110
119
189
239
248
155
227
212
243
177
176
141
212
194
233
198
132
227
230
91
268
228
218
201
181
213
234
224
185
195
124
181
223
195
190
246
175
177
232
227
192
188
227
249
187
213
220
156
256
210
250
186
201
176
225
223
218
259
219
235
232
187
206
221
168
166
194
218
245
191
207
227
152
167
170
169
219
214
244
262
171
174
181
213
202
249
235
211
191
204
260
178
162
142
137
169
213
203
194
175
165
231
230
203
235
230
203
204
175
215
165
198
235
172
184
181
157
225
234
256
204
192
199
170
168
207
186
207
224
249
218
188
197
229
213
215
109
197
243
200
214
230
199
230
210
217
192
227
187
226
250
149
249
163
246
162
182
204
265
215
201
185
225
224
245
177
172
170
240
242
128
170
176
203
208
144
182
189
248
143
232
171
235
208
202
146
227
186
195
254
233
180
188
226
227
200
237
231
172
173
197
201
129
212
196
272
243
252
196
211
145
244
232
249
171
207
195
222
208
228
174
181
165
181
204
188
144
245
217
186
237
196
192
137
213
227
257
125
243
222
226
212
175
133
217
204
206
229
207
205
189
189
177
215
224
208
237
159
203
200
213
208
239
269
223
143
160
192
237
227
210
202
209
264
193
163
197
145
199
209
173
198
214
170
148
211
202
226
196
190
288
173
156
224
191
187
172
240
221
256
190
157
204
198
200
196
198
175
149
179
221
135
209
157
193
211
161
191
214
206
202
167
197
167
224
158
204
172
179
207
245
236
164
233
221
174
232
190
157
192
243
150
201
242
240
181
230
189
146
186
186
169
200
206
277
167
149
231
147
232
141
246
220
231
246
260
199
189
185
223
192
213
163
207
211
200
195
150
172
150
130
207
159
214
184
177
138
246
160
224
205
170
183
230
113
208
187
210
176
188
225
192
151
218
228
238
224
141
185
201
206
205
232
172
155
220
244
114
135
160
195
214
260
250
190
237
251
153
192
189
171
211
148
181
182
228
216
223
222
252
186
213
197
126
172
203
168
181
173
202
95
229
254
211
175
214
165
237
218
199
204
214
144
218
202
197
240
228
228
210
234
217
191
173
197
126
146
169
166
232
178
195
170
227
162
193
174
226
200
174
173
218
172
180
190
225
190
171
164
206
174
181
244
191
249
177
207
208
122
155
204
139
203
261
229
226
217
195
152
204
265
193
236
264
170
225
213
249
214
251
170
186
195
214
196
207
197
196
208
216
217
206
243
174
240
217
212
216
199
201
247
212
179
192
192
208
215
168
209
209
228
178
165
197
164
208
202
228
158
193
167
259
246
230
246
215
184
237
193
177
164
242
256
216
161
244
161
166
190
172
234
189
150
195
233
219
213
160
206
221
157
172
160
246
209
260
149
271
215
177
206
248
227
155
248
142
145
186
173
156
212
225
248
230
159
236
239
224
272
124
216
218
236
230
142
160
203
191
188
138
143
157
230
188
128
199
221
156
221
161
184
157
228
230
229
222
180
180
204
207
232
102
273
223
247
237
238
190
269
196
155
214
160
192
254
204
209
244
211
195
180
156
220
158
202
185
227
226
235
202
226
264
187
207
154
189
193
204
233
105
204
250
166
228
197
191
234
233
192
167
216
151
210
260
198
194
197
157
202
176
208
198
208
158
136
249
210
188
217
180
179
190
236
165
225
203
164
129
188
177
260
168
217
208
151
211
111
237
223
160
233
208
231
254
237
234
189
138
214
203
244
230
250
207
234
171
257
200
150
172
269
206
147
174
93
194
196
211
222
256
234
211
122
252
244
185
266
113
217
219
157
216
210
198
224
187
228
225
209
196
162
218
175
168
175
184
168
249
225
199
180
200
187
226
218
190
173
176
153
179
198
248
135
224
241
159
217
226
199
221
182
206
243
185
169
165
198
172
199
166
176
199
208
170
238
193
178
162
159
199
232
262
191
183
219
150
153
159
180
213
256
259
201
218
168
240
243
207
206
196
197
234
220
175
194
128
168
138
221
194
184
245
202
156
225
203
182
145
190
247
148
229
277
257
232
243
204
225
183
182
221
224
231
258
191
192
219
224
194
120
226
216
241
138
167
144
226
279
220
177
171
259
98
227
111
165
138
198
210
193
160
234
176
204
232
197
224
186
165
151
205
161
192
191
225
237
236
241
201
235
176
204
175
191
187
227
164
211
222
152
222
190
224
188
226
187
145
143
132
196
202
263
210
106
199
181
143
205
192
242
210
258
213
209
194
190
182
253
236
183
209
194
201
173
294
206
221
235
219
215
183
208
182
181
186
209
203
254
240
202
250
148
210
230
238
143
237
152
122
129
193
227
200
151
194
241
161
214
183
223
150
157
181
202
145
249
191
229
208
202
205
201
174
233
204
219
225
222
192
159
239
206
143
124
208
233
183
149
216
278
155
186
186
229
267
174
170
275
228
179
204
169
249
170
243
162
157
241
220
166
208
156
179
232
198
237
179
162
245
162
200
171
186
238
259
249
125
189
220
202
192
208
200
142
235
166
154
146
210
152
223
225
244
235
152
218
207
188
196
219
146
219
152
195
194
141
184
193
150
223
175
197
186
188
213
183
213
213
186
199
223
214
152
162
175
212
175
200
153
173
152
199
171
194
213
228
201
174
159
236
214
201
201
211
132
169
181
201
262
180
178
238
261
181
232
213
223
184
217
193
202
145
248
195
231
265
155
193
167
159
239
204
258
203
253
200
176
148
189
148
191
188
225
243
190
140
184
227
206
211
208
208
228
164
204
210
99
235
223
234
169
231
154
148
184
256
148
178
221
195
192
156
162
212
182
180
234
259
228
215
192
175
183
250
251
174
160
197
202
207
197
153
220
212
155
272
250
210
263
147
161
229
228
205
196
180
211
259
188
165
131
192
122
151
222
223
211
208
150
256
239
210
270
210
188
212
259
230
217
159
163
226
166
162
172
130
224
249
188
222
228
227
202
187
239
198
187
231
172
132
205
199
247
211
161
177
246
139
213
180
137
181
212
241
180
226
281
234
171
229
202
211
246
148
174
240
185
164
248
227
232
169
131
188
149
160
188
222
182
209
209
206
263
252
192
219
236
251
176
194
200
216
192
164
246
199
235
206
223
223
263
223
210
238
232
155
224
174
223
184
198
201
167
225
187
171
249
245
235
185
207
236
244
177
109
240
243
189
211
220
177
235
227
234
190
202
230
210
175
156
222
243
205
185
201
217
182
149
194
201
195
168
154
189
188
233
209
186
221
186
196
213
187
257
245
220
226
246
171
191
210
174
233
240
132
183
96
233
128
208
212
195
170
217
200
230
257
191
206
191
176
142
205
200
237
153
243
268
122
195
221
178
161
167
131
228
229
189
207
205
249
222
206
149
219
237
179
218
224
181
160
158
220
172
156
193
188
248
211
222
181
248
215
170
160
178
184
184
206
202
170
232
261
269
141
150
197
236
164
221
155
128
240
158
182
222
184
205
222
220
172
216
219
180
237
251
191
217
225
192
201
162
192
270
215
153
198
239
192
198
230
239
210
196
211
199
202
188
192
187
194
194
205
217
174
142
194
203
205
256
181
211
203
191
194
264
188
207
175
194
151
202
178
225
167
198
177
182
219
180
251
181
185
160
203
187
157
221
143
222
209
166
216
215
183
200
218
241
243
221
268
143
173
234
250
201
209
131
183
247
131
196
201
207
185
183
205
215
210
169
187
248
249
248
195
240
222
167
266
200
181
162
200
197
249
154
203
208
235
167
238
193
208
240
197
251
186
216
226
230
192
256
200
191
240
186
249
203
156
170
247
167
132
224
203
230
248
210
167
167
228
246
198
244
228
194
203
243
217
178
167
153
207
217
263
234
231
259
196
243
199
185
239
224
183
249
158
230
200
227
244
168
216
179
207
262
164
137
198
198
165
149
239
199
211
165
179
214
208
142
285
144
196
219
236
231
207
189
216
235
215
197
169
132
211
173
133
256
179
226
199
203
249
214
181
165
170
202
168
141
160
225
230
181
171
153
176
241
274
192
266
202
183
184
215
194
194
139
192
211
185
159
203
197
165
175
192
241
172
195
181
218
141
113
265
175
200
168
164
200
181
203
181
198
183
179
142
162
154
192
238
194
192
198
182
141
209
155
194
251
178
220
274
225
198
233
159
238
273
212
169
221
152
224
191
168
198
186
141
166
258
214
107
227
244
174
160
226
156
211
188
160
186
160
222
207
205
218
212
257
164
241
185
255
180
193
204
212
155
138
172
226
191
219
137
247
224
194
240
187
193
174
159
242
206
235
221
190
209
208
198
200
177
183
231
212
206
252
177
218
227
177
254
166
187
211
183
224
194
183
153
179
189
177
186
173
195
236
212
204
214
154
210
207
195
227
241
176
206
213
255
169
187
192
211
252
179
203
163
160
134
245
189
179
216
176
171
138
213
234
213
191
244
210
187
161
146
218
260
250
151
149
212
210
164
190
200
97
181
159
210
220
158
233
126
195
214
193
157
202
280
222
252
254
227
169
216
179
185
210
224
244
221
258
248
227
205
192
151
220
181
216
227
229
225
176
219
209
195
165
206
208
227
237
192
258
222
163
166
232
154
182
233
162
229
251
172
156
187
207
184
245
264
208
186
191
257
219
221
171
187
215
124
181
227
197
167
131
247
180
174
194
268
197
250
193
201
226
207
214
180
255
207
217
139
219
159
211
194
200
191
230
199
230
178
148
224
175
237
196
193
161
188
220
204
196
210
148
246
216
125
220
82
223
210
233
157
205
219
179
177
188
169
253
170
229
177
182
253
286
134
284
210
215
241
242
176
195
138
185
199
218
172
145
152
122
154
268
241
207
162
197
171
179
180
251
219
129
238
256
258
198
272
205
238
176
136
178
198
158
192
185
250
178
179
222
207
206
212
160
232
231
206
223
167
162
218
230
156
254
200
229
223
153
231
199
214
170
164
237
169
222
220
117
228
188
188
168
191
183
178
222
192
237
250
191
179
180
120
136
197
165
187
270
119
198
190
202
226
157
221
225
145
182
190
220
134
186
168
220
210
185
191
200
229
179
168
165
226
224
241
156
191
199
184
195
156
180
220
171
258
158
204
237
188
181
187
189
189
233
203
229
170
208
175
159
228
120
216
173
253
208
152
156
252
182
185
138
211
204
184
215
236
181
184
194
199
219
204
215
151
198
245
173
202
225
192
224
211
292
196
153
126
247
169
226
257
192
137
177
176
166
196
232
215
205
199
194
180
210
210
220
177
215
154
205
179
220
131
176
225
159
181
176
183
173
234
218
193
186
273
213
181
248
236
188
152
225
159
181
232
165
266
202
200
219
121
167
165
151
215
192
209
216
240
229
172
118
183
203
162
225
231
195
151
223
272
215
251
215
224
211
153
174
179
162
165
225
195
211
208
223
161
219
166
225
155
200
218
249
245
190
243
191
214
249
138
173
268
240
213
197
219
244
224
181
207
227
214
239
233
198
126
163
169
169
193
277
255
188
152
156
185
209
239
200
243
223
177
196
215
267
177
182
236
207
218
135
209
173
161
185
226
179
184
223
204
218
239
198
187
229
228
180
217
257
166
230
172
189
227
187
174
185
213
193
208
128
185
242
205
168
196
152
233
230
224
215
186
222
124
187
166
237
200
203
248
237
218
225
238
192
202
239
194
157
244
208
228
207
233
206
226
221
178
216
181
179
268
178
190
173
255
200
233
178
219
223
174
189
204
195
183
182
160
188
162
184
203
183
261
259
210
214
207
203
216
217
160
202
207
219
208
207
195
223
195
162
175
220
149
211
180
216
239
209
180
250
238
161
219
168
262
175
208
192
181
227
188
99
208
201
194
225
192
218
239
169
220
171
214
181
272
193
223
153
202
221
159
183
180
175
236
214
236
171
236
223
197
136
155
214
135
160
153
213
238
207
196
204
168
221
176
211
225
241
166
233
251
243
182
201
213
214
168
143
210
166
189
182
198
161
190
190
237
226
195
250
215
171
179
197
232
200
269
214
290
201
244
155
188
219
218
188
141
252
197
149
172
200
164
226
222
196
152
160
172
158
222
110
116
220
199
194
190
216
171
162
201
201
192
193
187
187
205
213
244
178
177
267
225
177
199
191
168
230
175
160
164
195
262
193
235
217
236
243
177
179
130
171
126
193
203
185
211
205
164
231
215
287
239
188
220
198
242
190
227
172
188
191
195
187
219
170
192
224
237
234
196
177
223
142
148
180
245
237
194
210
197
218
215
167
220
197
244
228
231
257
152
186
185
161
115
217
200
157
224
182
241
140
219
222
221
215
209
222
170
201
227
195
210
166
241
221
146
239
193
214
109
225
180
204
232
215
178
156
193
197
225
250
207
152
155
197
233
203
182
203
179
207
247
138
182
214
258
202
158
122
287
199
164
203
213
206
203
165
217
222
206
214
219
182
247
179
225
193
227
224
184
176
209
182
231
159
190
221
200
159
162
230
216
161
192
204
160
214
213
146
187
201
247
129
229
225
169
200
217
185
148
243
188
181
217
254
184
216
187
271
251
192
208
169
247
214
246
173
191
196
197
178
238
217
213
165
181
189
189
179
193
221
255
175
206
205
238
180
231
191
148
228
214
300
257
180
156
172
211
150
191
201
175
220
223
153
224
192
257
204
180
203
183
223
199
206
190
203
195
237
191
228
200
187
160
259
197
167
170
186
188
177
181
152
186
214
184
140
180
200
153
245
223
193
206
161
189
183
208
210
191
200
199
186
230
187
213
208
150
141
257
162
176
219
157
176
256
194
164
191
167
164
163
224
171
198
291
215
128
252
188
230
217
241
212
220
222
192
174
141
256
142
197
199
239
184
182
152
173
252
186
210
196
219
155
192
204
236
156
232
275
268
184
219
190
234
161
181
173
205
206
265
222
221
154
222
250
248
230
172
151
222
139
191
207
204
186
211
222
240
245
244
219
189
241
200
198
256
165
225
231
225
227
172
243
230
166
196
231
179
251
284
179
221
159
254
155
226
223
219
231
178
216
190
226
175
226
216
236
228
206
155
208
166
116
191
208
225
201
166
155
204
194
180
210
179
232
244
175
160
150
177
213
204
186
214
217
194
163
227
187
168
227
229
213
193
234
179
172
262
166
209
299
191
281
203
177
180
214
186
244
213
185
241
240
216
240
167
188
232
182
187
135
154
204
225
259
126
178
214
198
240
195
193
234
205
156
159
186
263
244
186
213
213
198
199
234
172
227
245
223
205
238
260
196
270
254
200
156
215
177
153
195
232
258
238
122
247
255
218
211
159
238
147
146
162
152
205
205
179
186
268
162
199
134
138
198
135
204
264
207
215
199
252
147
165
202
207
153
247
185
175
227
223
177
195
223
231
238
203
209
184
153
190
278
157
188
187
219
155
189
169
206
247
250
193
255
114
263
183
202
169
150
127
165
238
142
174
189
188
137
251
190
189
174
194
195
231
226
175
217
147
194
165
229
238
210
212
224
125
235
166
193
211
165
190
216
218
229
189
157
250
197
224
167
153
152
197
224
221
196
151
190
236
163
171
191
220
200
263
127
182
258
255
210
205
113
225
220
191
213
233
261
139
195
202
169
201
178
193
181
137
223
170
205
169
214
211
175
200
190
197
141
235
223
223
235
161
214
265
262
217
225
175
193
160
221
200
190
196
216
190
238
136
143
233
203
160
179
154
221
154
231
227
225
161
193
199
259
232
184
161
125
234
173
195
182
164
178
159
246
151
211
176
186
160
210
131
182
238
182
169
230
207
235
224
159
202
179
172
220
184
228
177
217
230
187
163
177
154
177
147
186
200
211
195
101
257
244
124
257
274
220
122
250
158
206
195
219
180
149
194
197
188
149
179
263
269
214
123
209
133
170
252
165
212
205
176
224
265
174
249
160
186
227
199
186
213
268
203
129
186
182
185
199
168
171
248
259
193
205
181
107
189
138
204
223
168
209
167
231
251
165
167
175
210
174
174
205
178
202
213
242
230
220
183
223
167
156
178
270
262
203
240
167
179
170
183
254
240
224
181
163
244
128
163
140
205
152
151
197
231
178
230
207
185
246
156
204
205
191
174
163
248
206
160
218
149
184
218
155
172
214
207
244
199
205
194
171
208
218
175
241
214
168
224
230
225
181
158
240
126
143
224
168
217
163
233
249
210
194
185
198
138
154
161
185
144
205
223
198
222
255
201
181
230
239
152
248
233
156
208
170
207
169
228
202
249
223
185
211
221
210
209
235
202
179
195
209
225
215
167
180
184
250
206
172
184
186
170
267
223
159
190
198
239
160
196
149
196
164
199
211
188
187
176
203
221
213
181
268
184
182
229
182
167
217
265
193
222
193
192
212
162
174
199
228
164
197
150
226
194
149
212
271
241
156
120
211
165
270
125
213
229
215
228
212
195
184
181
236
165
186
181
150
132
180
212
204
227
225
269
239
270
142
130
152
211
244
204
193
192
178
156
240
206
187
166
190
202
177
248
189
192
185
248
196
217
233
194
213
212
242
215
205
217
251
196
169
184
258
250
223
244
287
210
150
235
188
228
246
206
187
225
222
235
191
140
232
124
242
280
172
156
204
141
161
140
206
157
216
199
266
162
148
160
194
213
192
212
164
250
114
189
208
172
161
166
222
173
208
161
194
228
175
206
240
255
189
170
179
237
208
187
207
144
225
226
167
203
204
142
191
180
215
154
186
147
179
172
221
195
220
236
205
236
212
228
204
193
251
169
193
155
232
220
211
216
244
171
191
248
227
202
215
228
222
239
191
170
219
186
221
258
177
240
220
188
162
203
232
151
210
225
213
228
179
197
181
159
252
203
143
213
142
203
143
156
166
214
152
166
186
204
177
205
151
225
196
233
162
235
186
187
173
234
243
196
156
197
177
224
190
184
228
221
218
190
214
240
193
193
177
179
215
228
193
199
188
158
192
246
237
237
172
166
247
172
187
198
235
152
191
202
216
185
147
177
198
164
197
185
219
240
199
237
179
217
196
263
177
235
171
136
187
163
184
223
164
227
175
181
179
219
127
224
201
221
198
182
178
161
164
221
242
119
255
181
218
173
201
177
200
118
214
165
177
184
239
226
203
288
243
219
121
210
146
195
140
159
165
197
162
216
233
227
180
287
211
261
214
236
194
117
199
194
245
224
185
212
222
193
212
159
213
201
279
246
195
121
159
181
182
175
247
202
225
220
265
270
219
153
184
192
176
194
181
280
222
182
249
218
205
169
209
250
211
201
128
242
222
194
233
177
175
116
215
151
202
177
228
233
192
197
169
263
188
178
249
213
193
192
196
199
143
195
181
183
149
239
230
242
237
211
214
192
233
205
190
187
213
194
172
152
245
173
192
181
242
204
135
207
264
228
212
206
222
198
219
178
215
194
228
191
197
191
244
162
250
223
224
197
132
216
213
198
174
173
179
185
163
194
206
178
173
194
173
232
234
167
247
211
240
208
236
186
187
233
252
164
221
187
218
174
259
201
201
164
175
195
197
220
214
179
226
210
214
233
181
191
208
205
237
199
141
200
224
203
177
252
158
262
216
197
227
161
168
216
148
237
223
206
202
163
183
233
201
171
241
200
206
201
203
219
206
183
198
150
137
140
205
239
168
177
115
190
143
223
180
249
233
201
217
221
195
197
198
191
180
210
201
215
188
143
155
201
150
169
188
238
249
266
217
170
140
194
180
222
222
268
223
265
226
177
258
222
196
221
258
209
204
137
229
253
148
190
163
142
183
228
218
208
222
214
154
227
201
206
206
180
191
250
191
167
201
233
181
208
152
237
181
248
236
219
208
125
241
198
233
175
178
228
231
240
215
213
184
198
226
249
218
258
160
186
208
198
194
163
156
212
146
169
213
227
240
223
225
258
242
242
236
192
262
184
233
178
234
216
124
231
155
196
286
137
213
149
178
167
203
227
178
236
136
173
191
166
207
204
216
240
164
209
196
197
233
135
200
223
235
188
198
206
164
164
237
254
148
249
188
202
235
202
167
229
198
208
237
183
211
223
264
170
182
178
250
171
224
244
252
196
175
269
260
260
184
249
187
191
205
166
156
147
261
179
197
193
150
243
218
143
223
155
207
185
141
227
203
208
235
211
189
250
154
224
191
131
235
172
218
224
156
187
198
176
176
186
158
158
220
165
212
135
202
225
228
192
178
219
197
220
182
235
211
182
260
194
223
216
234
204
189
140
216
207
233
175
216
230
221
197
189
217
205
193
193
229
199
150
181
185
204
166
234
208
274
204
223
134
165
276
177
163
212
216
179
190
182
255
226
131
162
168
175
201
241
233
171
159
184
121
181
174
205
193
226
165
236
172
198
262
150
174
171
166
194
235
184
122
230
201
233
192
192
185
234
200
212
241
197
257
214
201
183
194
174
199
180
210
149
246
168
260
227
196
199
207
250
246
183
175
177
194
145
243
226
174
195
210
132
207
197
195
210
160
188
223
150
259
228
249
173
171
229
199
243
200
154
186
236
245
225
179
229
195
208
247
203
220
199
173
195
180
201
228
205
118
181
224
234
160
248
194
155
192
204
221
278
189
257
142
220
232
204
209
199
178
247
250
210
186
213
195
208
177
233
143
223
220
204
249
167
227
194
244
223
137
159
179
183
203
156
167
173
213
204
162
216
218
207
174
241
194
225
188
227
211
231
204
194
189
243
187
122
234
142
221
250
171
232
208
232
220
168
205
218
223
165
207
188
197
175
193
208
266
176
190
220
218
181
195
168
170
213
159
251
192
157
223
168
172
169
200
243
191
202
176
226
224
169
204
157
200
137
177
172
212
169
140
179
167
205
209
116
210
152
196
199
237
172
196
144
241
199
178
185
189
185
217
140
194
253
206
167
208
207
189
211
164
219
206
176
184
210
160
191
240
114
172
158
212
148
196
131
204
234
201
205
117
206
204
275
189
196
176
274
205
176
238
160
201
209
250
219
225
150
219
131
248
155
243
141
161
193
218
226
265
241
202
153
186
216
260
216
168
230
199
199
246
210
223
180
169
138
181
211
161
209
225
180
182
229
189
224
211
250
121
202
199
168
206
146
203
184
167
163
159
171
199
227
160
155
142
239
172
226
227
228
189
174
198
218
231
181
182
212
190
195
192
180
194
232
271
132
169
202
156
217
167
195
260
212
226
194
176
244
237
188
197
190
178
228
185
202
204
193
174
238
170
185
226
240
225
211
145
132
191
230
182
144
159
227
213
167
181
144
187
201
174
238
234
151
258
207
215
256
176
146
230
184
224
247
136
203
176
228
210
197
213
212
207
242
171
148
191
214
236
181
168
161
218
154
164
235
170
150
239
191
196
194
234
210
140
172
230
192
213
177
206
209
202
219
189
213
228
257
159
227
216
190
244
211
222
194
173
190
158
216
180
200
256
210
154
212
188
166
226
208
257
157
246
151
160
160
149
174
236
186
180
184
128
202
201
198
236
180
213
219
189
180
232
249
138
226
245
235
180
246
161
196
197
167
207
227
175
208
231
262
188
133
259
237
187
186
139
169
204
211
233
122
222
226
219
262
242
183
183
210
226
194
204
158
194
226
217
196
187
189
177
126
203
165
228
179
237
205
223
230
208
272
237
226
227
228
212
200
158
196
184
191
223
261
181
190
210
174
153
237
171
213
180
177
157
177
198
147
175
251
203
185
147
226
176
197
236
252
187
174
244
224
249
178
196
266
167
253
244
207
169
235
163
174
224
178
213
231
131
175
186
201
169
200
202
210
150
209
208
178
244
230
206
188
230
163
234
264
221
240
263
249
250
212
169
236
150
159
197
166
233
249
230
215
220
202
135
198
222
203
199
132
247
191
195
223
183
244
207
202
234
181
253
191
235
192
240
232
248
235
199
191
249
210
189
161
220
140
253
224
255
191
181
215
249
195
162
138
221
186
220
167
181
153
208
238
165
155
175
163
175
146
196
236
190
183
141
229
207
160
198
198
194
209
245
213
228
146
195
196
183
155
193
227
187
196
166
159
139
170
188
198
194
164
159
171
181
235
146
146
182
237
195
211
144
147
182
180
132
216
220
245
152
226
161
147
131
223
188
225
213
223
144
205
229
150
213
203
214
217
210
183
187
162
228
183
176
220
219
173
195
237
205
258
210
254
193
241
182
221
199
137
202
194
213
216
235
211
187
212
174
224
132
166
221
221
203
275
210
191
268
212
201
193
210
261
204
167
234
193
184
173
201
225
157
211
143
182
180
188
232
165
212
184
193
225
152
205
219
232
243
151
214
291
250
179
193
198
173
264
211
143
234
161
215
248
198
174
210
148
233
159
150
195
226
196
226
240
171
180
176
194
220
228
207
164
246
142
213
207
185
96
187
207
229
157
186
214
268
245
137
196
228
178
223
227
185
197
240
115
99
236
224
224
215
193
148
222
232
163
103
180
218
199
226
209
220
253
210
250
173
208
228
238
212
175
201
193
198
214
202
236
225
167
161
269
181
224
224
151
198
239
234
285
211
253
160
166
211
213
169
239
161
181
221
160
219
283
162
189
231
212
240
227
222
195
185
134
186
203
209
205
223
113
189
237
204
203
219
203
216
195
282
139
151
224
201
191
167
236
172
254
235
219
215
276
189
190
207
199
203
230
180
196
202
178
206
154
220
196
225
199
151
214
221
230
221
164
188
222
222
238
236
205
238
244
188
235
192
271
208
192
239
181
222
230
245
258
225
239
229
194
245
253
233
187
213
146
178
238
211
163
134
199
177
230
169
140
187
159
188
186
212
153
207
183
235
201
195
228
194
167
202
238
184
255
156
220
235
226
212
190
195
176
167
192
198
229
161
210
212
213
189
167
201
222
191
247
199
165
151
228
201
267
240
224
175
222
163
250
203
203
262
181
256
186
213
209
117
236
229
128
181
229
240
210
150
235
234
203
209
153
207
218
240
201
176
176
203
223
210
117
186
194
252
205
218
184
201
211
252
237
209
225
172
225
217
172
213
102
166
239
226
212
221
167
218
243
144
217
117
228
233
252
183
289
150
241
196
262
190
216
141
200
171
231
254
228
136
199
217
247
239
212
202
239
208
200
213
170
244
184
230
240
240
198
181
201
235
176
202
250
118
172
261
195
232
243
196
188
180
149
140
192
175
248
225
160
210
263
237
203
161
181
149
219
223
203
177
178
160
82
150
184
203
165
189
165
124
213
190
193
237
214
208
181
210
130
124
126
206
237
169
173
183
191
237
196
232
229
227
187
201
196
178
237
149
249
209
233
167
216
181
182
153
197
212
117
154
128
191
211
215
175
238
253
236
287
130
262
198
184
187
176
217
213
196
200
187
176
120
189
257
168
202
212
231
157
186
222
201
203
187
153
168
201
196
189
217
162
260
240
216
179
218
168
198
192
193
158
155
209
237
245
167
155
195
243
192
210
169
185
202
133
213
221
237
142
221
255
172
196
200
264
231
217
233
208
224
227
134
225
200
152
139
158
250
139
224
174
212
157
190
170
232
224
187
238
243
205
180
217
117
164
242
205
247
209
208
169
159
230
172
160
178
220
147
202
204
236
265
189
154
237
186
215
227
211
254
226
195
235
222
227
205
222
173
216
229
206
232
238
185
170
249
288
213
197
228
160
260
213
224
186
264
191
198
252
261
259
171
192
245
220
164
195
129
157
218
237
101
208
232
218
228
224
187
217
215
202
183
238
169
177
189
140
124
154
202
212
169
185
224
167
185
245
255
216
245
208
151
204
199
142
240
186
188
253
202
205
181
230
201
241
187
183
182
191
208
169
131
181
198
174
145
214
264
152
205
221
217
205
182
277
227
227
180
215
153
178
216
250
228
222
216
168
212
189
199
154
211
118
207
214
225
190
188
188
238
181
208
188
194
243
251
211
173
214
181
188
224
161
200
166
157
194
238
249
172
251
167
178
195
209
257
230
186
246
214
235
212
200
229
158
222
210
160
177
251
193
251
220
161
230
165
223
185
168
262
203
125
212
171
175
180
184
256
228
214
162
257
243
229
162
240
131
184
211
245
138
208
191
217
199
231
152
174
225
215
230
162
250
234
193
173
208
217
200
196
161
192
208
175
232
158
212
217
173
177
203
188
178
180
212
188
209
183
198
193
150
243
211
210
186
147
254
216
125
234
187
192
187
194
246
217
244
184
192
172
218
131
247
176
205
201
152
190
237
242
182
177
246
218
229
155
184
180
227
208
193
190
193
243
224
140
242
196
232
161
197
212
128
196
214
215
251
284
193
243
240
113
253
217
187
245
184
255
203
260
239
185
198
189
95
216
182
195
247
153
212
165
195
194
236
249
238
142
211
235
192
144
183
238
188
191
186
242
259
159
187
162
173
193
161
161
215
206
191
221
202
186
155
162
180
201
179
173
228
264
159
188
251
202
225
158
164
226
278
208
232
206
194
232
163
240
113
207
158
224
176
196
224
180
260
146
153
211
180
176
167
210
196
203
211
210
200
120
252
276
178
212
220
235
215
113
231
130
195
200
214
207
189
216
176
200
284
222
163
245
192
141
160
249
159
218
183
192
170
139
163
205
224
229
210
221
181
207
165
294
180
218
260
240
149
197
212
204
181
240
205
222
204
263
210
181
199
242
230
169
244
176
174
233
195
163
206
183
183
191
203
268
191
199
199
226
201
184
182
206
196
174
187
211
227
189
236
225
186
270
250
171
198
193
247
199
165
178
196
236
266
239
169
157
247
235
198
166
165
235
180
219
230
229
239
159
199
191
195
153
167
227
215
185
230
217
190
189
239
242
165
240
230
178
220
214
214
166
163
239
182
229
155
145
182
207
154
205
160
199
237
200
198
261
165
205
215
243
198
227
237
204
187
178
210
241
209
254
138
174
229
224
218
207
268
139
164
194
168
160
180
213
194
178
181
198
197
165
199
232
191
237
166
217
181
178
212
230
209
184
242
179
180
122
201
150
198
186
157
235
145
253
254
207
194
167
110
219
211
221
247
227
191
238
240
194
179
149
190
266
187
189
195
161
264
207
169
223
247
196
155
142
231
147
213
184
179
169
209
158
201
222
211
232
187
218
206
151
231
167
170
199
151
220
188
183
210
250
235
202
220
142
240
220
212
116
168
248
173
185
155
196
135
191
209
243
212
174
183
200
231
226
220
173
178
218
249
197
224
255
250
177
201
186
161
219
205
249
273
212
161
191
79
178
196
221
181
174
187
247
211
188
226
278
217
141
175
190
145
235
241
197
174
221
253
170
191
239
160
123
197
224
183
196
235
136
190
241
201
196
201
247
154
223
235
183
211
188
242
208
218
189
204
223
241
216
242
186
216
240
190
190
211
215
242
139
183
183
201
167
196
159
235
167
206
228
195
229
232
98
235
239
164
197
239
221
228
162
196
195
240
141
208
204
147
234
206
158
181
116
204
176
151
163
141
173
144
213
211
202
253
253
202
203
241
248
157
244
179
166
199
159
194
230
163
191
151
180
117
225
167
166
207
181
235
171
199
189
155
198
202
203
175
172
235
200
205
204
200
238
205
177
185
232
207
239
148
217
183
245
239
195
177
200
137
206
123
223
220
229
204
174
132
187
227
207
200
216
164
152
158
213
193
239
233
187
175
246
162
252
182
232
207
191
217
234
202
191
187
165
154
203
177
221
237
196
208
123
219
211
201
155
147
173
179
193
221
122
260
180
185
248
167
154
220
196
215
229
264
187
172
202
203
200
208
220
218
206
156
156
221
214
224
209
189
168
153
241
253
159
203
120
198
191
233
129
249
166
210
197
259
215
212
219
167
245
249
207
222
190
195
209
163
180
198
183
210
169
214
149
192
226
179
252
182
174
271
198
158
232
146
249
157
150
228
169
183
218
191
206
161
159
159
241
146
178
194
248
216
143
177
218
191
211
163
183
216
229
177
190
149
221
152
203
207
213
181
228
209
202
224
252
189
210
211
198
260
256
168
198
236
168
211
177
238
210
160
249
227
203
227
175
233
193
179
220
189
219
202
205
165
189
248
162
212
219
220
219
179
254
168
207
231
177
266
168
166
214
178
118
271
223
227
232
229
184
218
169
157
188
170
205
157
145
232
228
227
219
197
204
140
274
234
115
219
196
191
183
233
159
114
162
160
167
216
225
198
228
192
215
161
257
209
176
268
232
208
158
243
173
256
194
204
227
226
228
228
274
196
228
199
206
173
213
194
216
204
179
262
240
190
127
226
218
246
231
205
114
176
223
205
178
125
249
151
234
194
163
248
157
157
193
161
187
219
174
195
213
204
199
182
204
207
144
229
186
198
265
210
187
214
230
180
209
204
231
208
170
235
197
261
183
226
199
195
219
195
240
215
173
198
164
211
203
176
143
228
201
220
143
192
226
201
234
282
123
219
214
254
180
125
190
232
247
171
227
225
156
231
213
172
187
224
199
194
179
182
204
208
210
191
192
229
222
117
173
155
224
199
173
237
204
148
225
123
141
252
225
130
159
202
131
191
159
183
195
173
182
210
167
248
175
235
195
227
204
196
225
193
168
100
211
229
208
207
174
176
210
230
181
177
226
208
211
294
162
196
227
195
186
218
220
160
183
234
221
195
178
199
218
205
185
259
224
208
176
170
183
242
175
128
236
205
210
169
223
171
231
175
153
267
172
205
197
212
111
223
227
254
216
194
224
199
251
136
209
170
207
184
259
250
190
215
197
208
190
176
232
223
149
189
179
158
193
209
212
216
140
268
167
248
221
205
126
224
229
198
187
207
228
176
188
204
195
232
190
212
206
206
193
260
262
194
178
221
259
207
194
217
155
175
177
180
203
138
145
204
197
192
160
244
255
237
159
292
226
116
200
223
174
241
124
222
235
161
204
226
183
205
227
208
179
266
222
218
159
258
222
262
224
187
191
205
156
218
150
203
169
196
166
219
224
207
188
193
176
229
203
206
172
264
173
168
144
149
239
220
179
193
212
222
130
199
202
250
224
160
235
227
213
170
188
218
159
156
235
274
196
232
234
157
224
222
205
85
175
212
228
186
204
224
259
215
156
205
260
185
240
185
197
116
180
225
262
192
225
248
220
211
213
199
213
194
252
250
167
180
195
234
191
169
194
254
222
223
208
235
221
189
169
171
205
155
196
243
250
193
143
173
159
165
187
194
225
148
141
202
236
194
157
213
214
256
138
271
212
195
170
231
129
177
197
178
192
162
173
219
172
212
276
165
191
157
144
163
183
203
230
216
164
250
180
238
167
215
138
145
222
217
229
139
191
198
196
198
178
198
163
216
206
217
243
246
116
183
180
209
200
171
197
239
187
153
251
216
198
199
143
178
261
179
226
209
240
189
152
190
202
218
198
177
168
154
157
276
219
119
221
236
220
216
239
175
266
211
268
209
188
135
198
178
164
135
210
166
228
138
180
251
196
225
175
127
191
193
175
203
194
287
202
230
191
251
228
161
224
242
181
194
221
135
200
222
214
226
149
219
206
197
216
171
217
198
234
177
253
193
211
203
210
202
160
199
225
238
216
186
156
212
213
221
163
190
159
192
179
241
137
187
190
198
224
203
227
145
233
217
191
257
211
175
202
228
207
169
207
203
212
163
211
235
210
108
170
192
247
203
167
198
176
270
168
219
217
188
130
205
214
259
227
148
177
215
172
218
182
189
231
258
205
218
201
203
212
156
209
230
197
206
237
176
179
170
214
192
213
156
236
156
196
227
167
197
227
145
258
240
232
220
204
182
242
191
176
164
169
221
213
214
184
123
173
242
153
187
169
212
203
188
141
177
198
149
208
197
228
225
173
220
228
247
210
226
186
174
139
210
212
167
223
212
265
183
192
214
221
224
214
197
174
213
227
164
212
187
134
188
142
194
192
131
188
182
168
212
124
209
175
204
209
189
237
216
194
186
182
205
222
208
211
212
244
200
159
228
169
186
160
210
252
183
209
234
178
266
257
198
168
268
167
174
187
165
142
158
216
211
209
228
166
226
148
223
213
214
243
211
242
162
245
202
201
184
209
204
134
220
192
245
260
226
189
164
198
217
189
231
158
112
251
222
201
196
238
219
212
158
253
167
197
234
238
241
184
236
144
150
167
237
83
222
230
208
155
268
271
238
193
167
186
201
180
193
213
214
200
217
188
243
208
271
198
229
189
230
180
189
197
227
208
188
154
172
198
198
233
209
169
190
219
206
227
258
272
234
200
220
216
208
231
207
213
213
153
190
236
260
205
167
169
219
266
181
170
172
211
169
242
211
181
214
211
201
210
264
228
211
165
192
216
219
140
187
152
216
146
176
228
217
139
182
223
190
124
221
167
114
183
148
197
163
154
161
143
187
191
230
213
168
157
259
178
122
178
199
225
207
210
177
154
183
222
215
189
202
231
203
259
216
190
201
216
206
191
223
221
231
133
173
238
163
205
118
191
189
171
192
203
218
140
189
149
208
236
192
216
180
187
166
276
201
255
210
170
242
203
205
211
201
170
250
171
173
275
187
196
199
231
254
259
242
155
181
224
234
243
204
206
250
218
195
181
162
176
225
156
227
202
223
236
189
259
200
190
218
192
193
217
192
160
252
198
188
250
213
211
195
230
239
169
255
227
172
208
234
210
201
207
160
201
168
192
231
257
228
262
167
210
215
244
241
217
202
221
147
158
165
235
210
182
185
206
225
170
171
226
221
225
221
180
203
248
186
183
251
218
203
188
185
183
149
235
176
235
189
252
199
182
155
200
258
156
133
240
174
235
209
148
171
164
228
196
183
241
241
142
185
166
293
196
148
128
236
183
224
148
182
203
145
215
201
215
154
171
201
162
248
246
210
201
205
217
223
217
172
249
171
210
167
179
233
207
225
160
217
211
202
226
184
175
216
216
192
242
177
230
198
175
252
232
204
169
182
222
233
193
205
256
253
214
209
198
191
247
239
194
160
202
185
184
205
243
162
213
187
166
214
203
228
169
194
133
164
207
158
198
171
168
251
175
178
187
220
183
229
147
193
217
231
241
182
158
249
205
162
216
197
168
198
164
213
193
143
160
235
258
147
204
126
151
163
191
204
199
233
232
188
198
213
135
155
192
196
222
159
196
159
167
138
230
221
215
255
187
265
218
194
215
195
182
156
182
185
131
226
192
264
128
201
232
207
192
135
205
195
223
195
281
226
145
257
197
254
252
181
175
213
219
192
112
218
224
161
184
205
245
163
195
210
246
209
164
138
243
218
218
145
201
225
244
200
138
209
213
162
218
232
146
207
112
197
227
104
134
134
203
170
239
169
220
181
228
226
161
218
182
223
189
235
145
198
168
176
215
224
218
253
222
172
229
261
193
183
191
221
149
225
139
214
172
255
152
209
181
195
260
166
220
142
155
249
235
211
214
225
185
202
182
274
168
133
176
257
208
188
236
178
166
165
223
204
271
174
235
210
176
226
211
261
239
191
208
251
220
162
200
231
185
123
248
178
188
146
237
207
158
181
218
191
221
184
230
184
255
242
196
166
236
219
226
146
172
210
182
144
214
208
250
247
232
223
256
227
165
220
255
223
236
256
182
195
187
224
236
166
186
181
190
170
198
194
239
227
204
227
193
224
203
113
206
224
142
156
282
192
185
167
179
213
220
220
166
189
203
238
197
215
230
253
235
196
165
224
161
265
129
192
184
163
172
183
243
243
183
160
188
218
218
204
169
127
193
146
218
194
213
182
212
225
178
237
112
236
151
218
164
163
190
206
218
161
182
167
195
240
221
104
213
223
196
249
239
153
237
199
169
198
237
233
200
161
150
232
275
233
247
184
250
183
208
179
157
249
236
158
132
208
216
212
245
204
161
161
161
192
223
207
221
203
168
242
140
241
180
220
187
252
245
228
141
194
229
188
202
187
241
248
265
182
183
163
208
212
230
164
142
201
208
246
197
245
198
247
236
176
188
225
181
211
204
238
166
201
183
190
182
183
185
193
205
252
211
227
202
205
256
201
211
210
193
227
224
202
206
160
206
258
191
156
251
186
215
184
180
165
227
138
138
205
225
213
219
190
197
172
270
181
208
204
233
189
193
254
191
248
245
177
211
174
237
196
219
143
145
195
208
228
240
162
258
219
239
197
169
233
241
174
200
168
234
162
218
236
225
206
211
211
240
235
163
179
274
178
170
185
197
230
161
188
156
190
216
230
229
180
156
203
187
248
169
169
199
174
197
179
203
186
228
173
268
273
233
177
194
183
218
223
251
181
191
217
151
187
192
253
259
228
191
244
221
234
210
226
227
203
214
208
196
247
227
174
195
236
233
162
243
163
204
186
200
234
176
203
207
140
193
205
219
184
174
139
273
181
200
182
224
212
220
215
240
201
201
214
269
210
179
215
238
188
201
194
178
232
227
230
214
261
191
195
229
181
180
234
202
147
189
269
249
233
209
282
238
181
217
175
277
161
164
220
219
163
274
184
196
235
177
157
245
233
173
203
234
191
195
193
223
244
188
255
194
194
194
223
176
153
197
217
194
231
199
203
152
227
231
162
142
221
183
256
223
134
193
187
244
190
140
204
198
188
227
261
104
173
230
151
232
265
207
222
207
179
249
200
158
153
253
210
281
205
206
181
208
181
242
158
160
158
213
179
126
232
184
216
236
222
175
203
232
257
199
152
224
166
181
192
222
200
223
187
206
196
121
142
247
151
200
154
187
193
131
209
178
237
155
182
192
245
215
201
179
270
152
167
176
225
193
201
220
214
126
245
200
124
220
210
195
249
223
236
158
251
150
186
188
223
244
212
195
179
151
187
190
236
209
170
210
234
215
203
128
227
207
179
285
197
234
200
165
227
234
206
156
197
220
234
218
173
91
188
190
201
219
210
213
239
160
276
119
232
185
223
220
155
196
216
215
140
189
186
225
183
191
220
237
229
186
238
170
188
255
216
205
245
218
196
188
197
111
151
222
224
182
153
171
222
196
193
184
238
195
231
231
211
186
167
177
260
202
237
213
196
180
180
226
197
167
184
221
198
121
252
266
197
219
178
186
216
244
206
214
205
219
197
196
231
272
237
180
183
207
189
175
227
153
241
228
138
238
165
236
175
233
165
191
215
198
212
219
197
177
221
234
210
189
205
259
200
197
154
198
183
185
209
228
194
181
167
167
202
210
204
257
203
186
205
211
217
210
187
200
288
236
218
185
162
229
164
199
250
260
235
207
192
192
221
182
262
265
188
256
197
199
241
205
233
184
226
224
243
248
146
237
261
163
231
237
216
231
215
194
246
229
210
192
183
175
238
235
214
217
236
178
210
201
209
153
195
262
189
196
218
190
153
232
157
265
184
257
247
233
200
202
160
166
222
149
196
258
178
216
191
164
201
261
243
242
234
188
224
195
151
200
245
260
160
195
200
171
231
239
155
209
244
174
192
206
278
160
164
180
238
219
163
138
226
200
206
190
177
198
193
250
229
231
188
199
232
185
182
171
228
194
223
245
155
97
194
195
222
164
167
226
223
215
214
260
268
198
153
233
184
178
187
187
166
175
237
286
222
153
209
235
147
198
228
189
171
216
227
195
173
196
258
242
183
161
190
292
212
162
188
260
232
201
211
173
167
164
218
183
189
154
275
211
235
167
169
147
148
218
256
206
161
184
177
227
260
158
217
229
215
175
188
167
208
205
224
179
205
197
191
210
174
159
191
186
211
231
210
147
201
211
118
255
182
229
216
222
228
189
258
178
172
196
177
214
257
213
176
145
178
285
178
190
181
200
179
259
222
213
151
179
212
212
176
214
220
210
190
167
198
213
236
252
246
237
223
186
202
159
188
212
220
179
150
224
217
175
192
133
183
169
145
226
234
207
234
213
183
211
265
143
188
172
198
221
237
140
165
173
203
197
216
234
181
190
155
244
141
216
200
166
214
153
129
188
166
221
188
162
185
172
208
228
189
126
213
192
202
199
146
195
229
183
248
180
216
198
186
188
167
234
198
196
177
156
131
223
188
201
186
197
268
179
184
172
204
212
207
173
159
171
158
251
179
153
178
199
289
147
200
180
148
260
172
190
212
198
158
215
227
169
226
217
140
231
210
232
241
187
276
205
196
169
138
181
272
242
231
246
157
152
180
224
227
160
171
217
231
197
224
234
231
168
133
187
117
168
169
172
216
169
179
199
190
216
180
174
233
197
155
212
246
205
197
185
226
185
199
185
191
160
168
223
206
251
239
194
222
239
249
237
211
196
181
247
238
219
266
206
246
120
238
194
227
231
162
187
207
259
239
252
211
168
182
174
257
190
158
190
169
197
200
230
218
155
239
188
229
189
184
217
234
209
210
209
230
196
159
210
206
190
196
173
179
222
200
189
184
179
178
183
223
164
150
231
203
227
278
157
115
248
171
206
215
165
190
208
221
169
226
201
175
223
220
252
206
185
209
243
171
211
218
175
202
254
267
137
178
204
135
214
255
187
178
198
225
147
225
199
144
159
181
209
237
162
217
144
176
192
191
256
190
156
199
84
249
158
193
206
244
193
185
245
175
234
185
176
156
167
138
226
182
179
167
199
188
183
224
166
221
206
283
189
126
259
198
224
194
247
210
203
221
201
191
165
227
231
218
200
205
190
181
170
182
248
195
212
204
246
187
190
233
239
172
217
229
228
185
180
197
188
180
201
153
148
185
216
232
188
233
204
228
204
138
216
178
194
242
227
139
201
198
212
269
263
210
231
162
196
253
288
142
237
197
161
215
132
169
224
212
175
145
298
221
209
228
196
172
163
167
158
131
240
171
187
182
178
129
134
177
156
207
185
184
231
240
131
183
218
226
213
238
198
229
186
224
229
198
249
220
210
187
195
219
259
163
158
162
225
199
162
224
171
178
180
224
227
247
220
205
139
165
226
202
146
236
256
191
218
216
216
242
205
219
173
204
257
174
181
208
137
152
212
150
144
179
195
207
188
200
213
228
234
143
134
194
175
197
133
189
230
220
177
119
214
168
156
225
206
186
168
228
187
243
240
165
176
170
171
233
213
189
203
171
153
246
192
163
112
184
200
220
152
232
228
161
133
124
130
254
210
237
247
193
196
134
140
261
246
213
189
220
149
201
145
173
135
230
195
178
193
178
167
231
184
192
223
184
169
251
220
194
174
206
241
213
241
173
225
162
261
178
167
180
213
155
239
240
209
197
172
160
177
212
52
214
236
224
224
208
212
193
205
158
239
192
187
225
210
188
205
206
179
171
255
238
229
210
205
164
203
147
152
200
165
196
200
154
265
205
193
208
231
210
214
188
185
181
163
239
214
193
265
200
199
258
162
214
141
180
220
135
205
188
174
213
205
223
171
221
159
230
130
221
193
172
230
218
271
236
191
247
193
175
148
222
189
189
190
220
244
168
246
159
217
207
214
237
190
256
199
178
230
202
182
199
188
209
206
190
227
263
215
203
202
206
239
153
153
165
188
233
219
164
161
190
257
216
231
188
272
242
207
255
180
203
234
186
243
143
131
209
158
236
213
158
232
215
231
163
227
288
259
188
240
259
178
191
184
159
199
226
263
223
214
188
172
162
210
280
137
149
212
248
209
194
186
186
226
201
220
258
274
233
237
239
238
161
206
208
141
201
176
246
165
128
186
215
202
193
239
196
246
150
218
238
217
170
192
186
195
267
216
204
204
204
164
238
200
235
219
193
204
199
186
246
189
254
264
173
192
207
161
146
269
210
149
218
191
252
128
222
218
106
196
206
185
165
111
269
210
217
171
182
226
209
190
229
173
197
211
186
222
217
169
225
236
112
99
172
215
257
215
178
170
226
237
242
168
216
256
222
194
146
246
214
185
257
264
238
208
169
156
220
223
213
202
195
196
196
219
170
214
224
214
139
191
201
201
114
262
234
168
235
135
180
235
219
139
244
167
150
128
236
202
192
203
153
214
208
244
238
143
167
194
203
224
153
161
136
172
169
226
191
181
241
242
197
202
238
218
168
194
176
191
180
208
194
248
195
235
212
183
214
197
254
206
148
228
258
217
180
214
179
145
185
195
194
176
234
215
174
163
178
238
230
175
173
181
191
200
177
233
205
156
178
184
178
224
237
271
182
174
249
137
221
198
203
191
190
173
273
184
219
214
158
203
197
213
183
165
228
236
226
247
227
130
215
147
225
231
261
217
170
229
202
236
231
197
195
219
184
177
203
234
181
230
206
197
217
178
205
180
187
185
231
251
149
144
194
168
191
213
147
160
164
147
161
265
194
204
203
174
202
223
218
233
228
181
175
195
226
202
199
260
154
199
183
228
137
237
159
207
237
191
228
197
159
218
187
191
210
207
212
197
93
110
189
195
206
227
156
245
192
226
210
230
198
178
219
154
219
178
204
192
255
167
242
226
184
210
203
209
167
226
229
262
206
107
204
183
179
186
220
169
255
251
256
202
250
246
232
138
179
196
180
182
194
214
169
265
221
135
219
235
192
187
165
178
212
160
163
242
149
141
158
211
182
202
222
245
166
214
225
259
182
252
215
209
199
205
255
243
244
166
182
234
249
197
213
167
194
182
211
254
228
256
227
155
175
214
226
206
142
143
172
231
212
149
185
240
155
191
169
171
203
220
198
208
151
184
240
222
256
164
230
222
167
172
208
256
193
248
232
259
179
232
170
234
176
181
206
206
186
183
150
206
198
220
207
174
164
249
207
185
174
212
216
229
226
178
157
174
168
189
197
197
275
193
181
159
263
214
211
193
176
203
237
209
221
164
170
191
213
198
186
200
152
213
193
188
215
182
225
200
219
249
121
211
232
191
124
236
208
177
122
166
279
226
194
209
163
213
213
229
189
188
209
235
262
150
249
191
222
218
154
296
216
196
197
182
243
173
224
232
190
189
202
178
145
237
195
195
234
124
198
235
279
162
246
151
240
193
160
175
160
205
193
221
195
165
235
267
214
227
254
190
257
242
179
115
174
182
203
246
152
215
221
207
199
211
252
238
211
170
165
180
193
196
127
188
152
180
201
195
164
101
192
193
196
254
258
156
198
240
219
222
233
214
192
240
183
163
176
187
146
221
215
151
193
190
194
218
175
114
169
195
290
226
185
224
191
223
225
237
213
156
195
225
221
213
230
146
201
255
232
212
189
163
147
112
216
160
205
204
194
238
260
162
170
244
197
227
137
166
186
210
158
318
198
227
197
187
234
224
182
172
203
196
201
184
137
215
177
211
273
216
121
156
200
159
195
229
185
189
237
196
190
192
192
259
177
220
150
204
202
161
204
144
200
235
232
257
197
207
189
180
180
198
252
211
166
184
268
180
176
205
205
229
135
230
191
182
160
188
200
199
227
171
205
173
169
128
213
149
295
145
216
181
224
186
228
197
220
179
180
193
221
219
177
157
168
160
213
216
191
216
238
221
146
175
197
216
201
236
195
182
170
224
180
201
226
204
183
136
179
228
199
183
209
163
278
195
240
261
133
219
245
254
244
244
186
161
180
163
236
196
219
214
189
160
190
198
188
161
230
185
185
206
216
200
197
174
196
199
193
271
232
174
198
139
201
172
192
198
232
220
207
222
212
183
169
204
152
247
203
213
214
219
169
167
227
193
256
170
239
227
202
229
171
273
213
245
199
237
278
246
186
168
209
215
172
237
228
173
155
212
171
162
190
271
153
220
219
217
213
149
191
202
185
189
189
119
103
210
177
244
226
230
196
192
141
212
192
209
221
224
224
182
226
153
186
260
215
206
159
143
158
230
217
155
219
137
119
172
196
152
195
170
248
273
190
210
209
223
248
181
185
212
237
182
209
160
229
236
169
192
193
196
248
248
219
208
237
139
216
217
217
155
216
202
174
235
238
203
154
230
213
231
148
170
156
190
195
195
199
199
179
238
228
220
205
224
103
264
210
224
117
221
249
124
285
204
251
209
230
180
183
192
180
164
171
172
166
215
235
273
178
202
230
230
172
206
184
181
205
215
136
177
166
194
241
223
205
212
173
240
227
222
219
135
207
228
141
176
285
200
159
218
217
171
159
182
232
214
138
225
225
216
206
140
160
188
222
184
209
193
206
219
124
207
150
210
156
213
211
211
176
171
197
131
198
191
289
255
203
254
215
231
229
201
210
190
181
247
215
207
237
204
254
243
175
167
215
213
187
221
227
226
190
238
218
200
168
174
191
186
187
201
240
229
184
232
241
161
189
171
229
200
230
176
141
211
199
171
137
203
223
232
198
204
223
205
145
178
176
212
175
272
193
218
166
196
179
124
161
247
146
194
224
192
217
222
246
218
201
158
218
175
187
255
215
198
184
231
237
174
176
207
164
237
89
200
214
195
167
291
204
236
219
220
177
190
212
267
185
235
147
177
179
195
290
217
213
175
206
175
149
246
236
178
218
240
189
160
215
192
186
210
197
128
252
220
201
197
164
268
218
203
100
172
196
215
208
224
168
174
160
185
119
264
230
175
234
230
236
130
226
240
182
267
182
240
199
200
214
236
215
211
210
191
259
206
216
257
195
180
153
195
235
218
219
215
216
232
204
260
148
245
249
173
158
200
191
157
232
222
210
206
174
178
237
217
213
152
188
166
188
214
214
181
208
270
177
166
210
226
213
204
167
241
143
173
212
203
239
222
203
203
197
192
221
231
174
213
216
192
224
175
217
187
196
158
230
213
215
242
166
164
217
222
137
186
221
224
220
158
215
219
207
212
195
238
257
210
293
182
229
174
259
200
173
225
197
213
225
180
166
210
200
121
210
200
208
228
169
189
179
262
223
238
164
208
153
143
139
238
218
229
171
188
127
216
165
237
224
220
237
208
202
243
217
196
210
220
166
115
151
228
229
249
239
260
227
255
207
143
197
234
205
232
230
280
115
165
206
239
187
189
215
254
231
185
176
211
266
217
175
170
167
222
216
219
203
197
183
179
177
188
166
209
164
180
205
247
199
170
221
156
151
228
233
253
194
230
178
214
271
202
224
253
281
137
206
238
125
179
193
181
203
205
190
228
198
173
169
182
166
203
218
226
212
196
173
176
236
162
182
166
151
241
208
243
232
219
232
176
172
241
235
177
197
241
189
234
194
205
209
154
170
125
171
148
229
193
236
190
157
242
199
225
160
201
233
206
94
209
208
118
149
227
192
205
202
164
167
193
214
152
219
158
254
176
212
192
216
191
207
211
217
166
203
257
212
143
222
165
231
222
222
228
251
202
222
181
243
199
96
242
195
197
202
203
167
237
208
205
220
165
228
166
223
225
164
256
199
205
193
190
183
231
191
159
188
236
218
161
211
179
173
204
225
209
243
218
215
210
214
158
253
180
199
225
189
130
193
199
212
220
224
149
193
264
213
254
189
149
210
226
161
246
225
199
215
194
209
157
172
236
166
235
235
159
196
209
166
198
218
196
200
210
180
227
176
213
230
207
248
166
223
193
228
155
180
168
208
221
199
234
166
168
200
212
241
149
219
226
188
194
165
212
226
168
212
164
202
196
210
181
209
213
245
105
222
134
174
203
199
156
158
228
129
125
261
211
235
243
262
246
158
201
210
180
215
209
113
218
220
210
156
193
231
239
198
167
205
209
201
237
175
178
194
240
207
202
211
210
171
206
178
184
213
239
240
225
143
261
166
209
225
223
264
204
182
256
170
199
195
225
179
201
226
194
236
199
196
193
181
231
237
210
174
205
128
207
207
229
197
205
149
149
187
180
155
185
221
216
150
224
186
214
224
197
188
131
277
195
222
221
154
179
207
267
234
195
239
236
206
129
163
139
221
160
181
230
180
180
187
237
179
223
230
167
204
201
187
247
158
237
150
184
198
243
249
233
207
210
237
217
175
213
169
241
165
156
200
220
183
221
180
186
193
209
170
208
278
236
182
195
222
214
285
151
159
228
207
180
207
175
166
233
249
100
149
230
194
240
191
159
231
189
213
168
143
188
209
196
208
138
202
224
208
234
205
161
246
192
167
182
157
264
235
236
184
190
195
196
137
198
192
187
179
215
203
200
240
162
235
192
165
251
176
181
217
200
146
228
264
198
261
224
170
177
134
204
235
247
201
243
193
168
197
174
187
214
199
193
182
189
191
226
177
198
197
168
188
192
191
243
189
200
155
222
223
213
159
219
204
185
217
226
242
246
198
185
207
215
252
211
153
198
204
202
124
172
166
219
267
213
223
155
212
220
198
203
165
217
194
213
210
156
156
263
148
212
234
234
220
211
238
213
178
182
216
184
190
181
219
160
196
215
165
192
221
159
203
213
150
192
238
267
137
209
214
266
262
181
209
200
216
208
249
219
224
222
126
219
214
202
187
220
169
268
228
190
291
227
216
177
194
161
268
174
216
221
190
173
125
206
191
216
254
245
205
195
197
200
178
161
185
202
238
190
220
251
222
214
236
224
216
216
196
233
226
180
180
210
184
226
172
142
280
285
170
154
197
178
207
191
187
225
163
169
209
169
139
218
199
225
232
215
237
164
271
276
127
232
141
234
191
197
217
186
258
168
180
252
245
186
153
173
190
166
179
188
234
158
208
197
186
150
259
206
144
170
189
254
197
213
201
185
198
238
197
190
121
195
143
248
146
238
281
285
193
215
237
168
221
202
164
165
206
200
190
224
225
201
145
204
223
161
197
243
148
256
215
127
256
137
190
231
195
222
176
172
241
180
135
233
181
222
182
155
185
204
207
205
234
135
213
206
244
200
147
207
212
207
167
242
122
179
198
199
215
229
198
199
235
257
106
218
193
178
143
199
179
247
169
195
194
194
166
140
190
178
210
202
210
176
233
172
208
216
162
215
215
161
225
217
228
150
156
192
209
157
208
256
208
212
177
169
189
224
188
215
228
266
193
204
151
214
179
242
187
234
236
182
223
268
209
170
219
210
158
268
219
167
178
196
167
173
219
240
203
181
187
150
237
237
152
230
200
207
256
230
211
216
250
209
142
154
218
157
250
210
161
219
220
208
192
196
237
212
158
243
201
247
218
208
165
195
153
219
212
184
171
233
202
186
213
211
240
259
133
139
250
170
177
218
220
95
206
171
223
178
243
211
134
220
184
116
209
222
233
250
212
205
189
201
232
208
179
223
195
185
187
219
258
159
235
210
218
217
230
192
190
157
178
191
181
207
197
178
202
192
199
263
173
203
123
239
206
167
183
180
243
195
224
189
190
194
209
202
204
178
193
198
153
203
229
161
164
177
193
223
228
212
200
203
196
212
214
140
161
136
194
174
246
151
168
204
182
233
218
176
194
183
220
137
233
231
226
237
170
207
223
177
211
190
190
153
222
193
153
204
196
129
238
173
165
255
219
181
194
125
148
197
224
198
225
258
161
155
249
250
188
220
137
214
203
191
179
223
172
235
197
198
207
190
228
159
273
154
179
258
233
201
140
196
179
204
172
208
234
218
257
201
183
162
168
216
255
242
186
202
218
227
192
211
220
145
173
177
206
213
217
247
210
189
235
227
179
169
212
213
243
197
220
193
207
216
183
192
239
230
207
217
178
167
245
161
208
211
219
192
227
240
166
145
235
259
212
191
246
170
236
185
179
172
191
248
273
154
189
242
212
191
218
219
207
173
171
230
200
170
153
213
204
220
235
261
146
139
233
219
163
155
160
214
160
236
241
154
282
192
236
177
191
167
207
188
260
153
211
163
188
136
157
204
192
185
156
187
251
202
129
209
236
233
222
236
222
269
168
182
211
255
169
204
123
223
171
188
239
169
211
177
207
163
83
214
234
222
226
182
178
138
222
232
190
175
226
168
206
168
214
245
167
224
183
191
240
181
196
234
221
245
113
209
230
211
197
198
194
193
188
130
197
198
217
209
204
177
219
169
198
215
224
251
204
206
213
168
202
188
252
205
173
231
257
186
217
237
168
190
207
216
169
180
197
217
187
195
214
233
174
189
145
193
232
133
220
197
162
206
205
249
179
189
244
188
216
223
203
237
198
228
194
242
199
154
218
165
232
242
195
155
192
249
263
224
205
253
182
235
261
189
253
224
190
201
259
268
248
240
200
250
255
202
220
205
208
121
169
169
227
195
208
218
212
262
225
243
215
226
144
212
181
152
138
173
188
208
179
257
175
215
175
183
172
171
209
196
182
229
195
190
197
245
173
188
207
168
190
205
170
230
155
189
229
165
224
253
210
222
210
247
215
147
173
204
213
187
221
194
234
214
156
247
236
186
192
202
176
133
168
227
242
273
201
184
239
162
222
203
262
245
220
226
225
185
223
200
151
159
206
194
212
196
175
215
221
125
201
172
220
106
180
164
142
220
194
230
176
232
207
175
169
219
231
188
192
224
202
190
225
185
186
210
226
187
225
201
220
199
143
210
200
182
213
236
244
130
153
258
258
187
238
173
153
189
214
167
248
200
195
176
208
145
218
141
218
179
201
215
234
220
214
194
181
241
274
233
258
111
242
167
212
212
222
208
219
161
203
184
237
195
243
212
207
239
235
224
206
189
213
149
145
241
245
237
104
200
195
191
242
170
168
215
186
210
237
230
142
189
222
200
169
255
232
207
196
259
188
166
221
236
198
225
172
208
148
177
182
260
158
214
266
192
130
224
193
233
228
115
244
182
196
236
172
188
191
265
214
256
249
211
225
214
210
179
250
232
178
95
163
187
212
134
223
220
205
209
206
229
183
222
169
256
240
197
212
178
181
218
196
183
236
196
174
166
241
167
201
117
201
250
235
196
234
221
234
190
266
179
249
227
249
176
217
235
219
139
235
160
266
214
174
161
176
192
225
163
227
203
223
208
141
209
190
217
177
210
197
135
164
117
204
180
243
165
191
228
217
256
121
205
225
246
196
184
142
140
252
166
213
208
177
217
217
192
218
183
196
164
224
195
195
132
132
198
208
235
192
139
185
208
166
221
215
224
163
233
205
160
191
250
180
185
250
237
229
269
228
238
239
173
219
177
218
261
245
254
206
241
197
115
221
223
150
190
234
165
255
232
127
194
191
263
174
205
202
205
167
236
245
235
237
191
180
235
154
175
147
148
230
208
248
195
167
163
202
202
220
192
288
179
195
189
241
143
164
143
107
188
209
226
154
138
228
239
190
159
201
233
158
166
200
167
167
186
207
232
246
195
170
272
196
151
261
158
185
191
236
206
199
215
186
213
217
166
145
191
185
196
234
138
221
255
196
196
192
204
184
140
267
229
256
190
152
170
203
230
263
239
216
229
153
201
159
236
175
191
200
191
238
180
165
213
193
185
203
277
191
259
231
232
229
156
185
210
258
250
196
210
254
228
238
242
216
208
254
216
193
273
222
223
176
171
253
231
230
181
212
185
168
177
187
199
260
222
185
193
161
229
181
220
225
204
245
217
137
179
175
275
172
174
241
228
196
181
173
207
179
113
170
206
161
166
152
211
203
210
160
208
249
180
215
166
251
202
260
216
238
177
211
212
138
200
243
164
231
241
172
225
201
253
165
190
245
189
193
174
219
232
247
167
248
255
164
187
261
136
168
157
179
185
271
201
164
173
96
215
200
143
213
206
218
184
217
215
262
262
202
187
159
194
208
141
185
198
199
202
165
215
158
209
185
152
205
195
219
220
203
260
171
252
180
216
212
202
253
205
188
169
184
247
192
225
183
216
245
212
221
212
196
170
180
208
178
235
198
189
188
180
203
183
217
200
222
212
253
235
210
214
215
207
200
188
141
216
202
203
189
270
211
177
163
292
228
228
217
194
212
230
192
185
242
253
190
258
218
178
197
187
130
128
235
165
200
124
209
191
245
258
193
196
211
165
213
219
210
220
161
175
206
180
178
133
254
203
192
234
139
196
191
207
219
219
238
202
150
241
178
232
156
187
211
142
180
231
176
225
241
168
202
206
174
199
173
189
179
189
290
232
260
183
208
208
217
218
222
218
207
220
181
199
244
170
230
234
225
243
162
208
218
187
191
222
200
141
145
209
180
268
192
158
249
156
183
128
212
257
228
210
229
245
214
183
212
204
222
159
234
115
218
150
247
148
155
204
175
213
241
214
161
231
108
244
209
187
203
147
194
148
224
208
204
224
173
189
186
205
186
205
258
193
206
207
193
237
198
113
252
207
251
185
184
220
137
189
221
185
220
189
172
232
194
165
210
237
171
149
174
236
196
174
238
172
170
239
196
230
225
186
218
171
248
174
198
228
168
149
253
139
280
146
178
167
164
191
173
249
181
189
237
217
223
235
203
247
187
209
169
181
204
203
161
216
206
152
205
152
205
184
139
233
190
149
197
226
192
223
239
228
217
190
221
187
199
164
220
161
231
171
216
245
261
207
215
241
214
294
159
231
202
193
191
147
160
240
226
184
166
158
207
139
238
171
223
259
158
247
216
123
195
266
191
236
207
173
186
230
238
220
223
166
130
279
201
192
212
278
215
219
191
189
209
209
227
181
164
317
234
286
204
189
160
185
144
249
217
260
213
220
197
228
200
261
238
237
194
189
157
214
181
183
234
219
217
205
218
212
222
190
177
213
203
227
170
262
231
201
143
209
103
199
238
169
197
127
175
151
256
206
219
191
182
164
222
232
122
216
168
197
140
135
317
195
152
192
207
185
178
237
173
235
176
218
149
221
242
172
231
250
227
243
181
215
210
179
139
185
166
199
185
238
186
154
186
198
266
168
240
216
235
228
152
216
180
200
230
150
209
200
202
176
175
159
186
197
147
165
176
206
194
225
182
217
176
161
213
222
185
212
138
229
178
184
176
193
200
271
259
225
257
190
203
233
193
213
200
165
184
191
214
159
193
167
206
227
175
203
214
188
235
166
240
233
192
220
145
226
174
185
230
212
171
203
181
109
186
191
276
225
240
202
207
203
210
188
228
206
190
197
208
236
225
174
172
169
233
246
206
238
256
213
181
129
211
183
218
180
193
240
152
225
167
184
213
185
226
216
184
256
160
208
212
178
207
183
210
251
201
293
218
122
180
186
188
194
191
160
171
185
193
207
186
172
194
183
194
157
258
161
170
207
181
153
182
188
174
231
161
215
210
242
227
200
198
170
221
221
176
207
141
209
244
226
204
217
243
163
266
160
113
143
211
135
166
168
211
244
268
184
171
187
223
225
181
184
204
211
246
260
167
220
188
168
161
177
214
154
233
237
176
156
186
178
192
194
238
216
215
186
216
170
186
242
194
174
204
246
223
131
141
259
244
229
180
113
165
177
201
211
211
190
206
162
177
185
198
215
203
125
247
205
216
133
262
250
240
201
237
187
179
177
259
181
197
259
211
173
236
159
171
209
208
182
205
246
110
229
207
233
199
247
225
237
243
186
177
159
178
201
231
202
152
230
223
232
189
211
213
192
176
211
207
155
188
199
168
206
134
255
190
212
163
223
124
231
188
207
197
183
223
214
170
211
196
240
260
174
255
165
215
236
171
141
270
224
203
185
117
187
218
160
160
275
222
233
217
192
171
243
157
196
207
177
176
206
249
161
221
212
231
216
212
210
197
253
193
174
214
195
167
183
160
235
175
120
240
193
232
147
180
224
208
156
228
217
181
220
141
168
190
142
145
204
185
217
201
207
187
200
249
198
214
232
233
195
214
170
235
128
248
220
162
278
198
202
263
220
173
177
187
219
234
172
201
273
175
180
267
130
152
245
189
237
230
205
202
172
242
217
216
232
230
142
135
204
170
191
244
195
218
213
207
213
163
213
242
183
278
212
133
189
206
125
135
221
267
242
249
156
159
241
216
202
203
172
190
167
188
183
213
250
160
209
284
168
162
231
159
212
247
197
155
207
214
207
165
236
280
269
179
217
164
264
154
200
142
180
218
243
209
202
210
218
214
199
157
217
166
250
171
209
232
252
218
156
195
246
170
209
199
169
216
186
191
203
100
267
223
178
229
220
224
213
161
195
198
196
199
225
183
207
191
136
137
206
233
115
239
206
199
166
177
200
161
210
201
138
218
149
150
180
177
172
148
170
159
234
212
200
231
211
224
152
198
196
165
190
160
180
183
257
155
226
198
244
197
186
192
213
194
208
217
252
199
224
253
225
147
141
225
199
227
118
160
195
215
200
183
148
233
226
133
212
198
173
199
202
183
237
241
254
173
159
183
165
172
175
205
172
211
240
205
230
146
201
265
201
263
212
242
213
220
209
155
169
195
195
201
232
212
210
200
214
157
244
178
183
210
192
174
180
228
189
221
155
206
180
195
231
252
240
238
224
175
170
185
174
180
200
186
189
132
207
200
164
267
219
203
170
191
176
136
253
176
196
184
208
276
199
193
247
201
229
183
180
233
157
195
186
239
216
173
185
209
173
178
222
235
132
160
216
136
226
178
174
112
255
162
193
205
217
196
171
210
179
215
244
205
213
152
194
224
208
195
182
177
220
195
242
216
121
209
194
241
127
272
217
205
202
245
248
220
207
247
206
180
237
184
211
83
210
239
198
172
243
198
208
222
257
167
187
207
220
164
163
245
259
285
154
182
223
167
232
227
213
184
230
133
203
180
158
168
281
221
139
154
189
179
165
241
172
274
184
261
205
271
272
239
232
198
142
215
188
163
100
216
193
201
190
174
202
166
238
226
203
249
201
202
217
205
194
244
209
254
170
203
222
204
216
181
201
189
142
161
244
211
196
134
131
225
183
198
144
153
188
184
170
251
199
163
213
249
197
263
265
223
201
215
201
177
220
200
202
227
219
224
238
179
196
148
162
234
201
202
227
189
213
212
228
150
236
192
246
212
166
253
187
224
224
193
170
199
221
159
177
166
220
187
210
225
211
142
239
209
146
197
206
194
226
195
138
164
213
213
169
231
277
191
171
178
149
157
150
241
204
199
218
285
163
190
244
264
208
209
231
257
173
214
260
222
239
239
230
176
167
194
219
218
183
234
194
184
224
245
193
168
227
225
167
246
207
139
206
130
203
227
218
207
187
160
197
187
176
194
178
221
174
160
213
211
103
223
134
206
240
185
207
221
209
133
215
231
162
194
193
212
176
225
209
149
239
213
186
195
237
233
223
223
201
177
231
144
197
175
158
238
246
174
190
159
237
232
186
232
270
281
148
121
195
210
187
194
253
185
198
205
191
195
195
238
208
198
225
199
250
246
261
214
210
169
209
141
211
213
234
177
151
239
202
240
180
230
215
197
191
164
197
205
199
221
188
178
178
291
162
185
171
207
212
167
275
218
199
211
191
253
177
172
130
222
212
174
242
230
212
169
190
289
112
207
237
189
224
211
207
254
201
217
176
184
138
202
241
175
194
200
262
208
186
218
154
164
221
178
240
203
184
172
153
164
228
220
235
184
205
254
157
147
162
243
229
248
213
210
130
182
169
262
235
232
172
221
236
189
208
209
152
178
187
180
221
190
240
202
200
213
191
199
246
216
147
180
151
175
241
174
226
256
210
169
194
240
146
265
226
259
261
209
174
223
222
210
158
153
202
161
215
211
218
167
175
150
240
194
252
270
212
190
246
119
195
262
238
201
220
207
188
148
210
178
134
139
231
218
145
212
225
245
188
214
258
179
197
193
244
189
234
204
180
210
230
188
224
247
220
200
196
223
221
245
226
145
246
187
256
201
189
246
204
236
219
184
180
185
230
196
241
172
122
143
219
201
161
263
202
159
133
236
280
202
194
156
252
158
223
168
171
199
236
201
201
185
203
221
208
193
137
254
169
177
183
169
205
233
205
167
219
190
218
233
183
209
202
195
180
228
213
214
198
206
224
164
211
136
173
163
225
210
248
187
152
227
172
199
202
192
196
249
231
195
209
129
246
175
215
191
168
267
186
256
193
167
174
211
180
210
224
191
170
179
162
183
146
198
159
190
166
195
150
215
219
253
217
238
239
195
212
203
154
174
197
214
233
234
215
257
217
266
202
134
164
111
238
269
148
165
200
207
165
301
231
246
188
172
149
263
145
242
245
255
243
179
218
182
197
139
189
211
218
262
208
168
213
225
156
162
255
217
169
224
237
265
183
184
240
211
204
216
209
185
249
193
158
190
172
263
116
211
165
200
223
217
176
172
179
153
186
170
247
180
147
203
236
208
127
148
153
178
203
213
237
150
213
217
198
151
203
236
231
215
203
234
171
250
186
211
207
190
206
197
263
168
214
194
254
252
212
213
225
279
169
140
228
145
188
262
164
248
232
186
199
163
196
207
194
227
221
203
272
202
138
243
194
209
159
185
241
217
236
219
238
249
175
171
175
192
165
217
217
164
230
239
173
243
238
274
129
172
165
195
182
233
270
232
177
139
273
156
251
159
243
194
237
247
229
202
213
169
145
221
215
190
197
224
128
233
232
260
230
199
179
126
149
274
191
225
233
177
136
197
212
194
181
228
237
238
171
250
232
155
199
163
188
231
228
168
136
242
165
185
205
193
170
250
244
232
135
245
169
209
154
263
237
191
199
206
167
175
223
208
157
206
211
237
235
284
185
240
185
186
253
153
252
205
255
205
155
199
197
218
263
169
217
187
196
179
152
255
152
205
190
221
212
255
210
184
168
198
187
208
196
169
230
124
243
253
191
214
231
106
206
185
127
219
230
213
143
178
229
167
178
187
236
214
209
241
235
176
118
165
192
199
175
165
264
215
214
226
185
170
211
203
181
199
210
185
185
207
187
227
208
177
192
209
243
186
176
239
179
204
239
288
201
230
267
201
161
178
247
211
222
206
187
206
245
230
175
209
147
206
238
165
159
267
202
159
202
203
220
241
229
227
147
195
207
214
218
124
198
204
238
247
250
172
200
185
249
191
179
234
183
209
159
184
247
187
128
221
233
180
198
223
142
220
218
196
174
190
206
159
203
185
186
136
235
212
228
212
98
128
180
205
221
201
228
183
206
227
168
181
170
215
161
188
235
237
201
262
230
197
149
228
216
182
242
215
228
221
165
187
214
206
175
212
214
150
232
171
154
199
248
216
161
199
130
218
145
114
233
170
225
226
155
222
230
168
198
186
209
194
202
180
266
148
241
208
186
176
199
216
232
215
187
228
176
170
254
155
231
144
158
214
224
173
192
203
149
124
199
156
248
202
193
145
169
257
210
220
143
184
253
246
257
226
274
160
231
221
162
205
200
150
170
212
173
188
256
141
182
190
249
182
210
233
210
149
213
144
147
221
163
186
208
146
163
224
233
174
237
175
215
264
144
233
196
174
206
186
187
277
262
208
196
174
189
212
197
226
203
203
205
184
199
242
224
235
182
218
239
162
198
202
197
223
179
177
175
187
199
164
185
164
213
194
183
182
148
194
173
254
183
284
225
184
177
150
158
251
208
240
156
213
259
187
171
226
136
229
184
230
147
234
195
194
192
157
158
217
166
197
159
223
165
160
146
251
173
196
247
247
206
213
213
192
207
150
243
170
235
210
249
158
222
195
189
205
250
181
228
196
157
194
247
218
179
189
221
165
192
214
183
269
170
229
225
182
175
238
222
166
196
191
221
200
223
219
247
218
197
204
263
201
207
190
195
186
211
188
162
243
217
204
175
240
278
157
185
172
232
227
197
230
196
164
232
193
267
223
155
157
224
225
190
159
196
244
222
179
209
215
179
199
221
232
211
204
156
259
205
124
257
112
211
180
142
132
267
212
229
207
206
255
182
180
240
228
234
199
159
235
191
233
238
230
241
195
165
191
192
218
184
260
208
186
218
213
202
122
277
209
167
183
192
191
193
188
230
132
198
216
177
291
221
238
173
196
240
234
116
177
231
234
142
201
193
221
173
204
246
189
232
178
176
174
223
187
258
205
197
226
202
150
212
269
203
242
189
210
249
207
200
173
262
197
140
164
174
163
194
177
234
267
209
214
199
147
189
165
175
192
214
257
242
210
243
176
201
240
259
151
209
238
233
244
151
173
214
217
212
217
237
227
180
223
182
229
161
216
182
242
161
233
213
258
212
228
228
180
239
186
214
232
154
222
258
209
172
193
207
223
253
213
198
275
200
135
204
130
199
199
246
193
164
228
230
119
173
226
229
242
214
265
244
199
183
205
207
130
215
154
209
138
211
260
179
179
186
186
225
219
218
106
208
252
189
205
180
203
246
169
196
238
179
142
139
154
154
237
202
173
225
189
178
171
158
182
210
242
208
212
210
218
224
160
185
169
170
209
206
197
170
214
169
184
203
192
245
211
242
156
227
230
218
196
251
210
188
134
208
185
145
152
168
229
197
223
219
188
149
181
199
198
120
183
222
190
237
268
205
177
203
223
210
215
225
143
231
184
216
239
203
193
232
158
211
221
217
220
172
168
227
199
220
196
162
154
155
244
217
203
190
203
157
245
202
186
201
224
214
207
279
190
231
201
121
210
153
203
188
214
148
252
234
240
147
187
285
162
141
219
229
153
249
245
168
247
233
128
230
194
267
257
171
170
222
201
250
244
237
104
201
190
251
205
189
186
214
139
167
229
180
243
270
219
246
216
193
215
186
215
154
238
191
177
207
139
172
233
215
130
111
185
199
198
181
160
201
230
213
167
178
253
237
220
213
226
171
161
192
211
201
172
240
193
147
188
144
236
159
179
157
223
199
216
186
210
186
138
206
119
192
198
170
199
231
227
170
223
280
214
208
198
145
210
239
178
252
258
190
188
227
199
250
163
232
183
178
148
251
207
220
225
187
184
231
209
214
198
194
203
187
193
199
230
199
229
241
246
230
221
292
192
146
204
238
100
215
210
160
212
174
242
207
211
261
195
221
133
157
226
183
190
199
184
223
231
210
189
233
166
211
238
184
206
212
279
233
258
217
256
196
246
228
227
213
133
217
110
218
143
229
216
184
187
216
181
200
240
181
140
207
137
167
227
241
251
265
170
186
207
182
269
220
181
219
141
242
200
193
157
165
205
205
230
197
215
210
265
177
188
178
221
179
199
159
165
181
158
254
197
205
196
188
212
191
215
161
229
285
200
235
204
250
182
163
179
174
146
185
149
236
184
239
168
188
220
214
241
210
233
206
207
176
140
271
203
221
231
150
238
193
262
223
207
178
174
188
231
198
229
143
220
163
229
210
209
161
195
202
222
200
177
144
213
261
227
192
196
207
241
215
215
207
255
178
222
172
197
184
220
175
215
135
178
232
227
239
206
231
168
97
254
157
199
279
212
230
259
194
145
242
204
232
225
239
166
246
187
130
209
113
165
184
170
174
164
229
135
251
208
200
228
222
210
227
179
201
144
222
214
222
190
173
204
182
204
241
142
215
196
234
163
261
245
246
211
270
218
139
165
190
223
238
201
193
147
228
221
178
226
198
148
191
241
240
172
243
155
211
191
175
196
187
231
205
187
234
222
221
231
217
157
173
126
207
198
254
181
199
210
134
160
174
194
158
210
219
150
245
218
219
225
160
220
191
189
206
220
215
263
183
228
159
216
159
126
233
197
159
236
123
156
197
220
205
160
190
204
270
231
139
176
160
264
232
202
171
234
222
206
164
234
211
268
234
194
158
202
183
213
207
236
222
178
233
211
179
170
218
182
225
226
174
183
147
263
228
248
200
215
215
201
158
179
155
211
248
136
179
148
175
241
251
194
199
240
207
189
124
209
207
225
225
209
233
194
165
130
179
204
209
194
214
214
194
215
226
129
226
157
248
205
226
254
223
214
258
204
181
215
187
149
192
166
205
222
184
212
202
257
229
169
246
194
188
180
201
140
225
189
189
258
208
180
168
262
182
167
143
227
217
231
123
248
198
217
203
217
230
165
227
245
146
213
166
181
181
236
236
204
164
146
200
231
173
180
217
261
226
216
217
180
213
171
233
241
156
203
218
243
247
238
164
253
195
162
180
219
138
176
252
223
245
174
170
177
206
182
202
177
218
175
181
222
204
255
165
203
243
202
199
174
168
198
201
195
137
231
199
164
209
238
184
205
217
159
198
195
164
201
182
204
167
201
157
194
171
207
162
187
194
242
201
267
247
194
210
183
170
144
161
180
159
233
193
233
182
173
156
177
233
244
187
152
175
152
187
101
231
182
207
244
243
173
158
234
143
201
257
168
210
152
167
187
175
214
226
189
275
181
221
225
216
159
163
150
221
170
158
204
190
199
191
209
213
170
237
167
257
195
159
224
163
178
113
275
224
115
170
167
249
176
156
175
183
191
196
211
198
168
213
230
191
187
155
225
225
113
211
179
206
195
193
184
208
188
206
202
226
216
205
244
197
199
199
207
217
181
231
203
203
157
271
157
173
144
192
176
168
174
232
245
136
212
230
212
169
197
172
193
209
229
141
188
199
127
274
171
219
131
186
245
202
212
192
201
232
226
224
197
174
173
141
204
201
289
142
173
179
202
127
174
209
217
198
115
246
201
168
200
174
164
216
251
274
187
175
253
205
110
191
213
204
171
241
133
187
202
120
222
170
213
184
215
224
168
228
198
233
153
218
179
202
175
174
167
222
137
170
264
223
215
199
153
224
181
175
239
193
187
242
190
209
240
219
181
185
227
145
222
241
173
178
154
169
137
242
178
135
185
91
259
197
231
173
185
201
176
158
185
153
187
251
195
214
237
176
148
184
187
231
179
200
246
224
181
209
227
200
127
203
271
172
230
201
214
197
220
181
185
251
210
254
140
215
172
159
197
220
205
183
204
276
264
177
212
275
204
243
254
185
157
222
127
223
228
189
214
196
249
224
244
232
260
216
151
193
183
111
244
229
214
205
273
219
140
184
239
170
196
242
250
226
180
214
158
152
233
200
163
204
234
209
247
237
207
220
229
234
164
174
214
182
181
143
158
145
145
214
195
188
221
191
148
210
202
176
161
192
167
213
215
248
172
164
134
201
191
154
188
180
249
180
183
241
230
222
227
266
190
244
199
216
137
257
181
200
175
214
239
225
230
218
232
221
237
204
272
186
109
131
213
178
203
226
206
129
242
197
187
189
236
255
196
193
167
184
204
215
173
225
104
206
261
213
212
166
235
172
233
167
212
146
164
191
167
225
192
217
191
224
195
197
188
170
195
200
221
148
226
180
256
224
187
141
220
268
200
227
240
203
183
138
227
231
153
136
228
160
187
163
167
222
222
229
157
194
212
260
188
157
178
175
196
262
184
238
147
230
256
146
189
163
207
201
208
156
173
182
189
208
160
169
223
230
216
199
120
220
226
204
157
228
212
244
160
218
239
184
191
147
145
247
186
210
227
186
176
184
200
166
153
206
152
217
150
215
210
143
224
184
157
243
228
212
201
179
243
201
223
203
196
241
262
160
201
236
211
229
219
179
220
210
183
210
184
184
167
153
209
213
195
225
222
247
240
240
178
221
156
189
205
202
281
190
137
239
126
192
245
193
175
121
208
187
168
214
199
156
167
274
219
168
210
177
184
167
173
170
189
235
178
151
138
239
216
191
179
197
238
170
150
191
228
128
270
244
204
144
218
174
237
209
193
223
178
162
229
162
220
200
177
193
194
224
174
182
228
148
184
239
246
184
214
207
231
183
191
193
128
231
249
235
201
243
215
160
178
188
201
194
196
203
239
177
190
221
163
183
197
226
250
201
180
248
139
189
243
123
216
228
161
270
232
178
234
233
239
194
201
163
267
167
194
163
212
240
174
228
193
162
157
104
227
210
190
232
216
192
176
205
150
190
213
162
152
206
234
204
164
218
156
197
182
173
267
146
189
217
231
217
198
184
204
224
239
154
225
164
215
235
226
236
169
243
225
175
223
200
174
182
137
181
142
202
240
222
202
247
196
143
254
181
228
177
189
165
217
219
198
210
209
194
227
213
276
228
157
251
156
211
254
197
236
174
169
207
208
148
160
167
214
262
214
150
184
212
187
199
234
252
169
146
209
225
260
176
181
247
259
125
179
154
240
215
213
274
232
244
199
200
199
171
205
195
144
203
161
228
175
208
189
208
206
180
175
235
188
183
255
204
243
210
181
180
219
206
247
215
223
240
210
162
214
189
161
189
183
246
233
220
219
191
199
168
177
194
153
183
180
165
196
224
219
210
201
241
218
146
222
180
202
239
263
219
275
233
191
173
184
208
246
162
226
202
184
144
139
101
110
214
204
194
168
240
199
179
196
226
171
175
223
176
203
198
248
182
183
213
235
164
169
200
171
250
239
191
186
224
175
179
187
195
211
213
153
178
178
245
169
174
272
121
176
243
208
131
211
191
224
167
223
207
221
216
173
197
212
158
233
240
190
264
192
225
241
215
234
227
185
173
225
191
219
229
226
195
122
240
144
201
214
153
202
180
203
182
233
161
225
170
219
208
241
252
209
208
226
169
262
238
230
216
252
201
237
187
166
216
149
177
206
225
240
159
119
130
166
195
257
222
139
231
216
214
228
179
132
182
208
161
199
234
177
203
182
224
212
215
183
213
266
132
193
195
197
198
198
139
231
241
181
207
249
232
216
162
180
191
168
230
202
210
125
246
221
218
220
186
242
249
196
271
232
174
269
198
141
175
221
248
210
199
193
251
181
215
242
167
188
201
207
203
234
238
177
214
157
222
186
234
214
213
212
172
181
226
248
243
171
203
229
193
220
153
160
213
233
169
205
197
249
196
182
154
155
228
151
187
226
192
163
211
204
208
222
236
170
183
196
213
260
158
254
138
204
180
228
172
219
193
224
167
187
167
212
162
217
203
239
206
202
225
195
151
221
176
207
232
187
182
228
201
220
178
218
169
216
223
196
178
169
190
168
192
173
228
231
169
227
264
223
200
190
211
227
193
152
146
186
196
130
247
149
241
151
151
161
236
226
166
222
182
210
153
134
191
171
220
218
249
239
169
129
202
173
220
217
222
222
156
226
151
197
204
190
221
190
179
229
213
227
198
143
194
190
248
211
208
266
202
180
159
195
190
225
194
238
202
233
215
212
198
240
225
255
245
132
222
187
218
134
173
183
305
180
254
191
199
211
198
173
217
193
221
217
179
140
257
187
173
221
146
124
168
207
195
200
229
211
194
207
220
199
175
210
210
229
239
187
230
239
220
264
174
206
93
139
137
257
141
247
221
202
234
181
187
139
225
192
218
192
266
239
158
289
164
200
194
205
181
137
185
178
181
164
264
233
234
148
211
196
223
215
184
184
207
168
205
238
232
178
174
276
117
227
208
194
210
219
158
204
151
172
293
165
171
176
186
211
207
203
184
180
136
200
187
177
239
215
196
243
187
205
181
194
268
203
240
250
200
149
179
178
242
233
229
145
183
167
158
132
97
222
204
158
235
167
216
234
199
206
194
193
269
185
227
163
220
170
237
156
235
167
273
233
222
183
248
163
182
177
178
227
193
222
133
228
208
253
174
150
153
246
237
132
203
203
195
212
215
191
199
140
144
123
195
201
175
175
246
200
199
207
243
215
208
259
256
167
195
203
197
228
246
263
231
161
208
180
225
158
220
250
199
189
194
212
135
214
204
192
168
169
168
215
137
159
178
161
180
225
235
188
195
177
171
192
172
205
205
235
251
224
239
165
201
164
221
131
228
206
166
181
163
257
206
208
203
196
216
217
224
155
237
218
183
187
192
230
210
207
180
195
178
205
231
261
184
214
161
155
197
289
172
218
155
154
220
241
236
244
210
213
202
151
193
244
210
202
238
184
226
161
205
169
192
261
110
211
199
200
229
218
199
192
188
192
167
204
261
209
177
228
153
259
266
188
224
192
250
178
241
196
207
153
253
217
168
225
195
151
188
222
186
226
226
244
166
225
237
196
176
201
205
184
180
266
214
124
219
217
177
196
177
169
252
198
226
220
229
219
202
200
193
193
220
218
229
232
186
233
117
211
237
257
223
239
196
225
169
275
188
245
240
146
171
125
200
250
165
213
253
210
134
230
179
245
184
197
234
241
193
200
226
181
183
179
159
189
196
137
183
221
238
206
168
183
186
158
202
193
220
201
208
185
176
178
239
219
188
213
174
200
242
226
239
198
187
223
161
209
172
216
202
162
254
192
177
197
184
228
152
157
182
209
207
197
185
226
165
236
217
196
225
230
194
172
213
242
191
229
268
148
210
191
280
223
179
136
230
275
192
173
194
230
171
234
206
227
162
125
182
191
231
201
172
167
202
180
224
205
171
214
130
197
186
237
203
179
125
207
176
179
232
207
156
209
178
146
209
171
193
209
279
180
172
218
206
177
192
118
113
201
242
241
233
234
201
214
206
159
139
202
206
205
106
216
200
189
235
197
215
136
170
227
155
230
225
249
216
163
191
175
159
222
161
149
216
177
168
245
219
215
206
214
270
223
192
222
246
202
237
217
218
178
145
193
200
172
199
230
128
210
159
229
196
187
187
233
196
238
176
252
140
215
202
197
170
179
224
228
239
168
229
259
188
156
213
188
231
152
194
138
157
216
229
169
194
257
192
165
216
231
189
247
191
245
145
176
243
193
176
181
174
227
188
250
241
250
182
227
188
234
183
198
192
208
207
231
150
251
186
186
249
196
129
247
189
229
243
226
213
146
246
220
211
157
239
204
194
221
259
199
250
197
198
168
221
175
175
201
160
197
192
177
239
208
175
215
225
75
228
221
232
242
248
205
192
159
216
172
195
193
140
194
238
237
180
246
233
213
188
228
169
218
208
165
215
234
155
186
232
195
185
183
173
239
199
204
166
208
189
201
185
207
227
198
216
174
225
257
210
224
166
149
240
151
243
173
199
223
183
241
151
202
222
101
206
222
237
161
192
218
147
218
203
164
201
163
213
229
248
234
192
137
174
226
175
211
180
230
160
216
202
246
254
236
176
194
116
231
149
193
239
151
206
210
229
201
200
223
233
235
232
174
97
180
264
165
196
166
195
188
193
212
239
141
213
179
173
209
211
202
204
257
168
224
186
214
159
237
219
217
180
224
115
213
140
213
201
226
177
207
261
215
222
207
205
226
131
173
188
161
200
184
222
220
223
138
201
174
219
156
234
198
262
154
184
155
200
235
167
131
167
176
230
260
299
194
126
189
134
266
186
157
171
170
195
265
221
239
172
207
192
162
225
210
192
219
157
182
199
225
207
228
224
215
168
179
159
226
236
163
231
179
195
172
219
248
116
166
219
169
182
170
153
228
184
221
224
180
163
240
116
160
153
261
212
212
218
220
188
217
250
254
239
216
180
199
186
192
232
225
187
132
155
181
230
204
139
219
203
256
145
225
188
128
202
225
233
154
151
184
231
244
172
196
266
205
201
165
273
195
199
165
181
196
186
240
201
163
224
201
223
248
170
174
200
239
143
172
203
242
202
210
208
154
163
213
173
169
182
190
157
203
235
203
189
263
220
205
183
169
179
178
143
260
241
277
176
161
201
148
159
219
227
163
226
166
243
210
130
189
219
146
157
155
225
242
266
125
220
213
202
239
170
181
156
203
254
162
235
188
240
150
207
233
200
200
156
141
167
216
267
178
239
192
176
268
237
193
196
236
183
251
178
133
207
196
235
222
195
210
176
197
231
196
249
237
218
189
169
128
240
172
225
202
211
217
210
211
198
172
193
238
151
162
200
255
211
244
235
176
262
209
188
170
199
186
254
215
230
209
225
196
171
264
203
196
234
204
138
241
201
210
238
195
203
209
150
260
208
201
205
229
206
248
199
205
217
209
164
240
211
176
184
151
165
189
206
232
197
137
171
247
221
228
175
234
235
220
198
286
230
191
182
192
247
227
203
186
200
181
177
200
170
185
180
186
239
162
191
145
206
172
228
174
226
151
172
118
203
193
214
198
193
199
224
240
190
239
227
159
246
205
166
157
228
207
184
201
236
254
231
248
205
252
246
257
235
139
155
189
200
209
201
244
187
160
205
194
199
206
180
225
233
174
197
184
199
204
205
276
196
218
152
145
223
244
180
217
182
193
234
249
250
229
209
219
195
141
204
243
218
202
192
210
206
231
159
205
171
194
234
185
210
240
193
149
232
267
172
185
241
237
157
222
225
174
251
204
186
235
192
205
190
151
178
254
182
196
214
230
301
282
194
168
238
253
161
257
203
225
205
200
253
121
194
183
252
220
256
245
190
239
206
156
205
172
186
228
240
151
208
237
221
232
219
222
265
180
149
215
202
191
164
200
241
182
200
240
215
233
198
214
157
166
269
233
191
239
221
164
201
217
213
210
156
234
262
182
215
237
198
190
107
252
233
184
247
191
235
191
271
213
246
267
240
224
243
228
151
165
198
232
214
202
132
191
262
210
230
208
150
202
210
244
177
251
280
170
228
246
247
155
192
221
175
197
225
185
213
172
203
190
116
148
174
259
176
185
169
209
177
180
217
218
157
168
226
191
215
200
260
214
276
191
214
204
238
177
186
173
215
205
223
175
222
202
145
169
155
181
230
188
226
213
190
186
184
168
255
196
240
133
168
162
286
219
153
245
193
160
191
150
189
202
187
194
266
188
138
206
193
188
243
160
193
219
175
228
214
121
199
197
188
193
196
198
163
174
163
180
213
176
211
171
193
214
227
214
218
209
205
200
214
149
236
189
212
228
187
274
157
193
153
173
233
213
156
215
252
205
251
227
255
193
213
237
187
213
233
213
207
237
232
236
239
225
215
225
226
166
215
195
217
246
212
231
207
231
223
202
242
214
189
157
217
136
244
265
226
247
226
173
193
235
170
252
174
209
100
107
223
229
259
189
136
229
197
219
148
191
250
210
196
182
184
235
248
258
152
295
192
180
203
232
151
243
137
282
175
211
216
234
215
132
245
184
243
206
241
230
215
205
188
199
210
196
132
167
183
165
186
185
164
210
169
152
167
275
233
224
260
178
173
177
212
233
185
193
197
183
213
237
221
187
175
209
190
263
140
233
199
130
249
201
188
149
145
249
182
178
250
223
224
175
180
233
217
207
150
228
212
220
186
250
129
249
194
181
180
241
159
198
203
178
210
178
216
251
213
197
202
211
200
233
164
188
191
135
219
265
222
172
190
166
139
198
230
216
230
145
220
206
160
163
187
182
228
206
211
179
175
184
247
243
168
197
204
218
189
238
250
195
205
172
194
230
131
219
259
211
171
171
113
202
175
191
144
197
218
177
136
212
233
180
159
213
230
230
220
208
207
159
205
154
223
180
238
249
240
218
256
191
180
172
189
203
195
164
261
214
145
212
190
214
237
241
198
211
217
187
96
200
212
178
145
172
182
198
196
211
216
227
207
212
193
220
224
195
176
164
192
176
162
193
204
227
123
182
276
216
198
233
197
188
233
185
161
173
139
184
186
136
169
215
82
221
234
211
233
154
208
179
177
149
206
212
142
246
175
208
187
123
256
258
181
150
214
144
151
165
175
252
230
247
195
228
201
221
232
187
227
187
203
165
210
207
227
226
156
196
274
287
222
210
233
220
208
202
227
168
175
233
178
265
213
191
261
189
177
222
238
203
185
164
188
184
229
233
162
224
219
201
170
260
247
189
234
170
121
201
199
167
223
170
193
244
198
195
193
154
214
245
189
216
186
195
178
219
181
226
166
266
200
199
116
131
158
166
240
215
257
192
164
207
224
182
247
218
130
204
187
174
184
215
191
286
152
119
216
203
237
223
197
193
150
220
210
185
188
253
221
226
154
223
180
185
179
165
253
251
220
175
152
195
156
189
205
179
200
247
227
183
197
214
214
208
152
202
148
214
202
169
230
202
181
272
229
171
197
146
199
219
195
220
191
259
250
161
171
215
217
177
194
179
181
174
225
241
188
234
217
218
227
220
153
209
195
217
119
132
211
184
196
224
169
217
193
191
136
164
205
203
150
201
185
211
153
160
215
205
209
225
219
254
209
161
98
232
189
207
211
229
269
159
231
186
256
160
165
219
196
255
177
170
180
232
123
187
128
143
169
178
194
141
146
138
154
235
153
156
205
239
184
169
240
208
183
258
226
209
177
170
126
158
241
223
168
153
152
207
270
156
146
157
217
172
190
191
176
209
156
236
209
221
225
153
195
277
185
194
148
215
255
197
165
251
165
212
210
175
254
200
216
256
186
184
161
146
237
201
216
255
201
207
200
257
161
118
216
201
173
253
225
172
181
198
216
228
215
219
128
175
226
134
138
260
183
196
183
207
233
261
197
191
216
192
231
223
142
178
224
189
186
207
212
218
249
211
202
231
221
140
234
184
177
239
219
253
191
218
225
217
129
202
211
183
175
106
208
195
161
204
283
185
216
193
215
204
215
238
136
194
195
155
200
186
167
241
149
200
182
204
243
253
229
233
177
241
203
188
157
244
177
142
222
197
188
166
227
142
162
101
246
203
166
199
257
173
167
186
233
198
114
208
228
215
162
263
141
254
191
161
173
154
209
168
209
274
189
274
217
235
195
199
194
183
181
111
193
167
190
227
155
227
224
193
185
236
230
154
274
184
154
252
274
184
208
130
202
171
193
161
207
201
242
210
237
139
197
204
200
170
186
155
218
227
181
252
169
189
221
200
149
225
221
237
172
214
154
173
218
256
183
234
210
192
175
164
175
156
253
216
218
206
207
189
222
156
242
241
214
251
184
194
178
236
209
172
247
273
183
248
240
194
218
172
254
237
244
143
159
241
193
165
139
225
233
181
238
260
179
220
218
137
206
186
181
193
214
205
127
182
255
235
259
129
189
206
221
201
237
195
178
220
149
203
223
207
131
226
294
178
214
135
189
139
184
151
173
182
188
207
233
172
228
156
231
257
117
167
238
174
225
124
221
219
172
181
198
172
180
182
170
214
222
224
293
192
191
238
162
213
225
158
164
208
149
196
191
241
252
182
231
226
188
225
183
228
228
203
135
297
142
172
165
232
172
258
232
210
186
188
227
179
259
230
221
178
274
201
233
177
204
189
188
237
251
185
222
245
158
211
174
177
229
209
241
237
167
224
170
155
192
182
154
222
217
181
218
250
181
192
194
106
184
274
113
199
173
228
171
181
256
219
191
170
238
247
140
247
204
194
211
183
196
185
219
189
226
120
205
213
193
150
146
201
204
170
205
205
213
257
232
166
200
176
144
201
203
243
110
182
228
192
195
229
231
322
203
167
180
178
137
242
213
205
200
189
212
210
159
211
208
230
169
213
176
153
176
270
214
165
182
258
252
163
204
159
204
216
235
221
200
232
166
224
204
253
198
231
214
190
248
225
134
172
186
227
252
218
148
210
214
251
206
219
236
228
273
237
208
173
221
221
201
208
244
192
296
219
206
166
175
163
166
206
225
229
127
156
243
183
175
189
251
227
139
178
232
193
181
217
216
222
247
191
203
219
228
192
246
178
182
190
214
239
194
143
176
251
234
168
166
181
193
222
167
167
269
257
175
230
177
243
241
184
166
193
192
242
153
123
208
218
161
144
154
179
206
293
185
217
251
191
243
197
164
134
215
254
190
228
228
196
167
176
185
208
103
209
205
206
151
255
207
183
225
223
198
113
167
220
167
248
209
247
262
231
202
200
241
222
164
183
186
215
204
190
172
130
166
264
225
231
220
222
202
172
209
135
198
200
243
223
230
187
208
208
175
233
146
200
262
193
208
192
236
185
211
143
164
155
237
255
214
197
152
177
208
175
197
189
242
187
161
240
199
178
183
187
206
209
178
253
180
178
213
147
201
206
139
219
264
197
214
248
153
213
176
160
203
161
177
185
226
169
191
193
250
183
194
221
181
264
189
147
190
173
200
214
210
221
210
236
220
208
152
173
202
175
231
178
212
198
181
156
251
243
183
191
155
188
140
169
227
188
189
201
193
231
214
177
167
186
130
212
196
179
197
240
200
188
218
187
206
228
162
198
190
182
196
207
226
210
182
177
189
220
149
228
173
204
282
233
205
229
171
201
191
227
206
248
211
167
159
151
216
187
215
230
141
201
205
210
156
183
169
194
218
171
179
264
251
184
239
224
174
154
224
205
177
255
186
222
241
243
187
278
220
179
236
166
201
277
190
238
199
160
137
238
224
226
167
149
152
220
241
209
208
176
216
192
119
231
122
271
187
162
234
157
183
243
216
223
241
186
236
174
193
197
199
205
225
146
219
188
189
232
157
182
197
224
213
215
294
204
248
192
246
239
243
218
200
207
132
196
255
211
200
201
215
207
207
204
155
145
214
232
178
227
152
215
220
206
229
140
176
286
211
180
199
172
220
229
231
184
219
248
233
215
239
188
218
254
181
182
234
207
230
147
220
211
234
217
187
195
176
191
191
218
209
133
136
184
179
178
158
138
235
219
200
188
167
265
247
178
199
226
233
195
191
183
212
236
157
165
230
212
213
228
134
257
146
180
208
229
216
169
166
171
199
194
162
219
183
247
145
245
211
156
223
236
204
193
199
231
220
198
233
175
160
189
131
222
219
270
174
216
139
243
187
182
160
205
207
206
177
226
154
168
123
189
247
153
182
216
209
209
215
227
203
196
182
226
234
207
158
213
152
228
228
207
211
190
193
155
225
165
171
156
226
173
227
208
158
239
198
174
209
206
229
160
216
232
254
230
233
198
220
224
254
248
216
189
202
221
216
196
189
151
174
183
222
227
175
247
185
203
150
228
182
192
212
207
219
239
191
139
276
245
176
172
199
235
220
165
180
201
254
170
192
211
209
161
175
233
224
180
142
140
199
208
162
192
218
164
246
189
202
206
172
200
246
176
178
303
201
251
157
202
135
156
193
220
186
248
224
226
151
212
203
140
257
223
209
193
185
219
211
203
227
161
235
202
177
227
200
188
203
163
215
152
177
149
145
191
245
255
238
170
211
162
212
214
166
155
210
204
175
195
216
227
262
177
143
179
212
215
216
229
207
222
237
221
262
216
205
238
166
252
184
201
127
273
208
182
147
170
228
195
214
121
180
163
159
186
206
200
185
224
214
208
131
184
191
229
247
211
217
213
214
204
150
191
208
264
188
169
184
257
151
198
226
188
198
206
244
184
177
194
181
178
218
225
206
216
216
241
155
200
240
200
164
184
145
253
145
215
260
148
181
201
238
206
201
176
231
200
217
250
223
205
191
186
127
231
156
166
261
209
224
158
219
264
205
175
236
216
167
212
203
218
151
174
223
211
198
150
201
186
167
182
196
226
168
233
182
163
147
237
180
218
198
195
248
189
225
164
259
193
181
210
206
225
196
204
192
230
240
167
212
242
199
190
213
188
230
227
252
209
177
164
237
180
198
238
185
215
181
245
217
189
141
219
152
184
146
211
154
230
167
197
237
229
230
216
235
203
234
136
212
257
151
179
216
176
163
184
132
188
170
131
260
159
207
219
161
203
162
173
218
188
183
201
212
170
244
255
146
218
197
155
214
232
239
180
216
166
244
153
200
158
222
234
155
197
223
218
248
186
160
158
224
248
225
166
185
195
205
205
176
147
182
166
226
233
189
176
184
227
262
178
164
238
207
132
263
186
196
170
277
244
219
198
107
239
163
198
219
95
188
211
208
160
183
214
150
264
211
215
210
228
149
185
150
167
253
144
222
214
215
169
188
185
193
161
121
244
173
197
201
185
130
189
197
219
253
146
245
185
194
169
210
207
188
208
290
212
146
191
171
205
252
236
203
155
170
198
202
202
175
246
237
241
195
211
188
143
170
160
179
231
160
185
236
217
204
210
189
184
180
218
173
181
203
226
158
192
201
182
187
154
171
236
209
155
167
174
198
277
218
226
158
179
229
169
235
224
200
182
270
197
246
232
202
213
210
179
274
123
111
183
195
151
173
155
234
162
158
205
229
150
170
186
167
174
152
221
214
133
179
142
186
203
229
222
193
230
205
203
252
183
213
193
223
183
252
202
152
163
255
234
204
261
224
154
239
181
225
182
194
191
182
252
208
235
185
156
208
208
124
204
211
197
203
183
181
228
217
232
245
223
206
233
225
258
228
165
200
166
184
229
196
144
199
220
278
158
209
202
152
227
229
231
255
173
218
218
199
248
186
206
234
184
203
231
185
180
206
178
249
263
206
214
197
257
188
175
166
222
212
241
182
208
247
182
166
204
202
225
233
193
230
242
186
195
168
188
274
217
185
210
184
200
193
247
193
151
163
122
289
235
203
243
163
211
221
238
206
179
200
203
222
229
229
180
126
203
134
170
225
192
195
169
218
200
170
217
160
235
251
271
146
167
218
154
205
287
144
180
181
205
206
235
234
183
148
191
227
202
175
251
191
240
188
173
171
278
202
245
206
150
237
208
181
181
205
195
216
293
195
148
211
168
226
244
169
197
202
181
256
198
187
218
224
216
168
148
152
268
236
261
253
255
187
237
185
221
208
175
201
187
178
230
151
273
251
197
215
201
204
203
163
259
226
198
210
172
211
153
172
187
160
147
260
252
163
171
176
185
228
240
206
165
257
161
267
250
183
205
200
211
212
150
204
249
231
155
271
201
224
239
255
159
174
195
174
194
184
206
244
198
271
196
168
229
266
176
244
228
243
180
208
191
248
211
197
187
241
239
212
200
144
220
179
288
194
258
229
222
137
189
170
186
223
246
192
146
179
140
232
234
197
176
181
214
221
193
206
203
162
154
198
213
203
210
211
203
116
219
203
200
233
167
201
134
160
241
258
194
181
184
232
195
192
229
184
200
176
234
144
209
197
175
209
246
228
206
179
182
234
216
212
206
201
219
198
187
189
223
208
164
202
106
210
191
214
240
141
152
209
178
179
152
178
171
228
128
237
168
223
211
263
215
183
221
215
302
166
209
230
184
139
122
190
226
189
214
192
113
145
208
189
229
184
156
115
177
199
199
242
253
213
219
198
190
176
191
191
208
137
221
196
227
242
184
140
225
170
164
206
269
253
157
178
161
192
176
237
156
140
223
184
177
209
212
175
158
262
199
250
186
202
187
225
147
219
139
137
211
227
210
270
165
189
223
213
188
171
220
125
212
184
125
201
177
164
224
173
133
126
232
255
196
145
221
208
175
208
240
205
214
234
218
212
229
248
247
239
269
189
164
209
236
144
220
248
235
144
169
286
210
196
179
229
212
165
219
220
215
166
200
167
227
186
177
134
207
178
151
162
212
226
121
151
198
270
214
217
288
223
161
186
197
227
234
156
246
195
225
230
289
208
166
230
210
185
200
235
211
256
173
196
225
204
223
214
154
154
151
176
214
202
221
220
141
231
221
222
174
238
166
164
174
212
211
193
212
169
229
205
180
175
219
199
186
161
160
216
191
143
163
196
208
164
217
219
140
170
171
128
252
189
267
187
167
221
227
193
168
196
187
181
178
139
197
154
299
210
172
135
213
224
152
218
177
215
152
158
176
212
241
244
199
156
200
198
260
196
198
159
201
221
148
216
211
201
219
147
197
207
215
206
194
171
250
172
243
177
176
203
183
188
144
267
161
139
185
179
188
209
159
214
175
188
220
200
195
161
236
197
219
175
158
219
203
198
158
181
252
248
177
204
271
193
130
205
195
205
180
173
249
166
210
200
219
266
196
222
224
222
289
192
146
180
251
150
176
185
239
150
167
207
163
202
209
184
121
223
219
152
150
178
239
219
238
233
165
165
249
236
241
238
193
192
187
207
213
269
205
241
186
203
182
129
179
210
199
202
186
191
142
221
199
180
197
181
224
195
194
154
179
215
189
246
163
150
224
190
238
273
186
168
141
195
195
229
220
257
278
185
222
174
206
229
227
222
220
134
213
189
139
203
208
196
174
217
229
192
261
171
239
205
235
204
217
210
236
207
218
260
248
246
203
210
195
222
212
185
191
194
192
214
170
173
264
269
168
164
274
192
165
161
208
162
192
235
192
178
253
228
173
169
192
226
190
212
108
185
112
195
169
227
192
220
149
192
164
262
215
193
199
252
183
213
191
188
246
167
193
216
197
206
132
207
177
188
249
205
195
158
171
218
184
159
202
161
137
197
209
213
163
129
217
268
224
149
263
191
130
172
204
183
180
197
247
217
194
232
159
265
171
200
215
169
292
239
243
189
237
250
216
143
184
189
227
174
228
208
246
205
215
200
262
151
177
181
225
194
212
158
219
199
242
213
183
202
176
204
195
151
205
169
231
198
226
252
170
204
197
214
221
111
194
200
183
227
137
156
192
156
133
217
173
184
217
244
148
224
193
191
227
205
142
214
186
172
180
232
237
238
202
242
175
192
252
246
201
236
252
260
171
196
237
234
214
202
199
177
202
240
183
208
205
151
182
148
260
203
190
220
210
279
206
196
207
195
190
208
215
198
189
231
228
213
148
239
170
233
218
265
165
155
242
107
214
169
188
249
194
238
232
230
200
191
173
235
213
160
216
258
173
171
222
202
179
176
226
172
203
202
125
271
266
205
216
135
149
190
205
257
129
172
184
226
171
207
195
249
178
115
178
189
215
219
235
228
128
217
260
186
206
191
242
234
279
184
257
108
203
185
240
196
255
167
197
247
177
197
157
192
250
180
170
177
174
134
217
150
177
224
181
222
154
151
227
222
228
226
189
198
199
201
184
225
201
197
156
220
164
191
206
191
173
173
192
214
246
224
167
182
235
169
216
195
121
208
183
256
220
151
216
229
228
222
180
138
218
229
180
186
188
210
222
128
209
194
199
221
158
168
203
212
190
220
241
228
180
195
159
195
188
172
175
237
116
234
176
209
159
269
195
152
225
227
163
155
245
215
244
199
208
201
186
197
167
255
235
218
193
148
210
238
151
230
181
171
213
213
203
175
184
180
210
187
208
166
161
154
261
200
205
170
178
100
231
212
202
193
235
240
130
275
253
176
202
181
241
191
262
186
226
171
186
219
177
222
183
149
217
177
213
230
164
138
222
162
200
200
243
181
154
159
183
243
155
206
263
198
243
159
219
278
194
169
215
216
225
225
222
185
196
171
217
260
173
243
200
195
238
231
159
256
252
95
183
177
250
244
185
180
193
196
199
230
153
180
163
176
163
188
182
204
178
151
229
183
192
206
154
229
200
145
138
209
273
255
180
269
183
199
200
251
247
218
148
167
249
213
189
243
130
118
160
285
223
187
235
156
213
260
215
150
189
213
163
261
156
221
177
111
167
201
173
162
223
179
148
201
186
151
52
203
178
221
176
218
223
235
255
228
198
185
155
213
172
188
202
158
257
193
202
124
176
142
195
159
225
140
225
161
253
184
167
212
256
141
202
229
220
235
124
163
196
215
248
185
201
206
203
227
260
185
196
234
248
217
242
223
174
155
146
112
197
163
188
195
163
176
209
181
154
267
212
178
211
213
152
213
208
143
167
111
238
112
254
177
184
216
254
212
136
160
227
211
194
235
164
205
183
217
171
241
225
174
188
265
235
194
216
198
222
191
226
213
179
189
150
244
252
149
223
174
180
212
224
192
180
191
175
151
204
200
206
184
162
206
206
231
246
242
270
220
172
205
192
222
216
209
177
225
150
172
185
172
254
190
212
251
173
188
215
182
148
256
184
174
187
265
194
151
260
189
236
169
177
149
223
208
213
226
242
200
132
224
190
252
211
174
235
199
244
176
192
218
179
144
191
218
164
177
206
187
203
196
235
167
231
212
203
270
220
224
247
156
193
146
225
263
225
186
170
205
177
191
204
210
246
185
179
248
196
147
128
225
189
279
237
199
226
214
192
207
200
225
232
244
245
194
218
192
212
167
161
246
214
156
149
163
215
126
208
194
189
177
163
260
139
143
191
200
168
225
211
206
221
247
144
201
223
163
186
198
192
273
143
229
206
219
227
192
169
204
187
175
197
123
195
208
199
140
234
213
153
239
217
255
237
222
192
126
239
229
190
179
235
153
213
193
215
172
215
143
226
214
206
244
263
205
180
247
217
253
172
226
221
214
194
233
192
236
215
203
221
238
207
197
147
221
289
152
232
151
184
128
194
175
194
205
287
148
231
228
179
211
187
216
222
200
213
186
216
212
210
173
179
249
195
242
163
261
186
210
244
273
212
228
216
140
191
219
222
183
170
232
200
197
232
242
223
206
225
188
180
222
137
218
192
175
194
187
200
178
213
229
191
289
210
170
161
161
227
209
181
222
148
178
222
196
195
167
254
194
159
257
217
178
173
233
244
207
216
207
144
218
190
160
192
162
152
236
178
259
134
172
235
178
200
230
187
201
208
251
211
217
208
225
211
252
213
165
148
208
227
204
169
251
193
152
153
198
232
133
248
214
161
198
243
135
248
244
264
213
231
247
213
170
236
235
221
238
184
200
218
159
124
207
160
241
209
187
251
247
193
181
208
227
183
204
118
163
252
251
182
199
174
195
178
169
153
198
165
155
154
181
187
254
181
213
243
175
191
205
221
209
262
190
205
214
196
203
165
191
131
189
162
245
168
207
199
223
245
210
178
247
209
188
152
200
188
165
168
192
237
239
237
195
240
173
227
268
235
222
208
148
153
231
180
225
172
222
214
227
222
149
249
204
225
189
162
157
251
186
183
192
226
205
190
178
229
210
193
169
193
191
169
196
164
238
201
150
207
200
222
238
146
238
222
193
192
182
291
154
227
194
216
148
191
240
225
157
249
125
145
219
217
197
226
110
164
203
157
204
175
233
243
172
243
131
217
171
141
213
145
181
221
221
235
221
178
244
186
255
182
185
251
273
176
236
245
183
212
230
232
210
139
239
127
225
213
169
163
221
135
202
189
211
156
197
222
159
184
172
247
170
153
266
183
185
227
258
220
157
217
110
204
174
199
199
166
206
178
142
186
159
225
124
169
176
171
174
174
158
180
156
199
225
239
245
167
186
224
219
146
163
260
166
222
182
192
155
197
209
240
130
166
179
189
165
190
229
190
178
171
164
172
230
170
253
187
232
195
235
294
190
169
190
203
221
237
229
179
186
219
149
189
187
152
193
276
221
177
240
266
182
193
195
235
203
205
166
206
213
190
218
194
112
221
223
206
240
188
248
240
192
227
186
199
200
209
283
218
237
196
193
133
210
268
278
200
205
247
220
190
190
155
216
194
173
148
203
169
233
278
168
211
189
179
246
150
247
272
205
235
146
166
219
194
186
128
240
243
225
159
190
222
158
238
148
275
231
217
220
182
224
270
188
170
216
165
212
223
136
238
265
208
251
118
214
271
164
206
260
199
255
183
180
176
163
228
154
245
202
216
183
157
232
209
244
211
237
187
217
202
208
183
213
178
124
160
216
277
208
175
177
218
204
244
227
263
192
242
210
251
236
169
172
182
171
178
208
188
229
180
190
225
191
134
166
204
211
181
185
217
187
208
203
198
116
167
113
240
174
227
266
241
239
203
137
193
191
163
229
246
228
177
184
222
221
163
172
209
206
157
177
203
170
178
224
274
124
196
226
195
252
202
180
218
235
185
183
164
235
162
210
143
178
182
172
210
147
202
205
199
192
161
212
177
212
205
110
219
201
207
187
199
173
251
199
212
187
197
243
201
202
190
195
94
210
215
206
200
194
195
183
241
164
205
223
271
179
225
195
201
166
191
218
186
230
221
209
172
194
238
217
179
201
179
207
125
147
172
160
177
201
214
199
157
234
183
218
220
228
244
224
174
188
223
188
182
150
180
229
238
227
199
207
147
166
191
217
196
172
138
221
238
201
254
201
173
166
127
153
208
201
165
199
169
174
204
180
216
216
180
224
226
237
171
256
283
162
144
245
243
252
159
187
263
204
204
206
175
208
200
219
184
173
138
277
185
173
227
160
202
183
246
233
214
123
274
184
213
201
203
160
122
259
239
196
166
229
157
221
182
210
209
152
198
205
183
190
210
182
162
222
235
291
194
158
251
197
186
188
170
233
218
181
161
189
197
185
200
163
275
180
205
175
210
187
198
201
129
198
232
202
156
216
236
224
146
266
188
182
234
188
245
210
228
266
137
184
175
236
147
183
178
198
217
194
213
199
173
139
186
213
241
194
232
167
162
203
190
222
205
210
219
182
179
105
178
228
169
175
189
229
236
202
260
198
185
194
191
220
201
221
267
203
235
212
237
217
205
165
197
228
165
180
118
204
167
269
247
243
188
259
215
255
198
190
176
223
190
192
214
184
181
241
256
214
223
195
179
186
105
176
198
199
210
200
188
220
247
219
202
175
233
238
178
186
260
213
208
187
181
163
245
172
199
237
150
188
198
204
213
146
162
214
242
151
165
214
185
118
204
219
194
215
172
221
252
219
186
203
199
196
165
196
196
234
178
146
141
217
136
252
200
240
204
172
249
220
152
228
202
264
194
202
162
174
170
194
210
266
151
127
171
190
202
189
217
202
208
219
232
264
167
202
213
182
176
152
202
272
208
196
239
193
174
210
167
248
279
201
248
144
218
203
241
183
225
215
204
198
167
196
154
215
188
264
263
227
151
191
224
166
157
250
241
228
219
200
138
247
232
144
199
223
188
218
183
176
205
189
186
174
230
242
214
216
167
224
242
211
261
182
208
202
160
230
163
223
264
198
207
185
190
225
229
162
174
170
148
227
247
237
215
192
199
115
160
190
190
179
116
173
245
201
195
172
237
276
160
196
256
234
195
209
207
223
250
230
250
170
210
156
138
200
144
223
165
229
233
161
184
247
197
220
159
204
206
208
161
188
130
219
173
216
192
202
234
197
200
191
252
197
208
202
230
210
189
215
230
218
218
174
153
130
190
195
212
228
130
141
201
186
182
178
201
189
219
229
193
209
192
231
151
146
232
201
243
251
235
252
198
237
194
175
246
170
148
185
216
166
207
228
197
161
97
208
196
166
174
167
216
206
210
183
206
228
177
194
187
195
201
151
145
184
228
203
205
225
168
220
220
223
224
205
214
177
213
142
190
245
193
211
203
144
194
209
239
151
197
245
251
210
240
200
193
199
217
190
231
188
240
146
172
156
226
191
174
210
216
251
218
291
159
232
194
221
193
211
247
187
247
141
194
237
294
188
184
167
282
178
244
213
165
217
177
215
195
206
174
164
173
169
217
249
217
227
227
204
164
228
222
232
179
200
178
222
239
168
235
210
190
213
228
160
186
180
189
227
207
284
219
148
233
220
175
206
179
157
192
186
163
207
146
198
252
211
181
182
181
224
250
215
260
205
233
187
225
163
150
179
179
186
247
194
141
157
250
202
272
176
241
188
182
156
216
204
229
121
172
196
182
203
166
230
222
153
179
240
183
234
173
192
187
217
246
212
172
192
172
164
219
195
185
139
141
200
144
226
217
273
163
123
184
217
207
153
211
205
178
251
211
212
220
186
186
206
260
205
214
184
157
122
232
275
187
179
171
256
141
208
209
172
178
188
236
218
248
145
205
147
222
243
187
157
212
187
236
157
198
205
163
138
245
135
247
179
230
178
215
252
185
239
167
242
173
151
224
202
217
246
183
179
207
201
198
238
238
199
205
179
250
222
232
150
240
151
193
182
212
208
266
199
227
245
114
219
186
194
212
230
214
179
226
212
186
272
209
191
234
239
179
163
195
209
212
139
184
193
225
256
148
111
173
181
184
166
161
159
169
176
199
208
249
186
200
181
158
210
197
210
169
183
178
204
197
225
259
123
214
226
194
172
178
194
222
191
182
190
157
199
231
183
209
176
178
166
146
110
217
208
219
269
184
202
221
213
221
146
197
192
162
180
130
160
251
247
196
217
239
185
125
225
164
218
214
143
171
190
159
218
222
162
213
232
238
188
257
166
184
160
199
152
201
192
210
178
203
215
233
137
225
205
197
206
215
185
145
135
204
198
248
219
224
226
161
165
173
253
258
198
186
195
189
261
178
168
210
224
197
193
239
140
211
220
203
262
165
214
224
210
207
219
178
193
206
246
194
203
155
192
156
210
207
175
243
193
157
247
215
213
165
197
226
173
230
248
179
207
240
189
118
231
204
225
180
157
266
210
112
219
201
207
207
238
209
158
198
223
193
159
199
211
203
203
229
256
225
155
173
244
205
236
213
216
201
183
236
208
226
229
246
265
196
223
212
160
201
214
242
265
220
194
198
204
248
230
179
209
180
205
154
157
154
210
180
224
220
189
134
211
271
181
188
224
212
238
232
238
245
199
198
241
203
205
190
200
133
187
202
186
238
223
254
170
187
193
127
209
220
238
197
163
226
207
207
190
244
167
189
246
211
153
216
133
161
211
188
281
214
208
211
229
201
189
157
188
231
107
223
153
219
241
141
237
268
248
215
223
246
128
182
226
196
164
236
167
196
171
166
277
197
168
217
207
222
216
186
149
199
257
205
244
208
232
192
207
203
217
178
215
191
197
222
189
208
215
152
178
220
230
234
192
206
216
191
175
201
205
245
165
238
212
210
235
253
248
192
216
154
234
242
165
193
222
172
140
207
203
201
218
242
231
185
221
210
207
203
140
195
184
265
174
245
209
235
206
213
190
173
184
223
186
145
205
227
206
145
156
135
208
193
260
167
217
185
218
187
170
140
147
280
216
199
131
190
214
185
192
223
163
220
163
162
222
171
152
206
204
180
200
200
172
205
229
203
241
165
196
198
153
175
240
245
238
158
227
142
187
180
179
211
226
253
229
151
206
232
128
115
182
155
230
132
194
200
168
200
259
190
137
169
195
241
212
196
168
215
184
163
172
198
240
187
197
239
166
252
191
188
214
139
211
257
191
251
218
246
206
245
264
79
222
233
239
245
198
223
261
177
201
186
233
214
168
219
151
190
187
206
228
185
217
232
248
177
220
241
252
187
218
202
243
202
176
213
243
239
175
205
202
222
199
224
157
266
189
226
251
210
228
216
176
252
188
243
224
232
200
184
135
165
210
178
188
162
222
157
165
235
161
237
126
166
199
181
231
188
174
203
250
212
246
218
177
184
157
230
222
181
265
168
182
228
138
199
166
251
218
214
244
228
263
185
220
213
282
190
198
171
153
200
200
151
206
169
256
144
171
138
257
255
311
253
236
233
224
211
199
184
171
175
219
188
219
201
247
236
200
263
264
188
159
211
174
202
227
204
228
277
235
170
201
232
238
222
201
195
175
180
221
182
215
218
161
199
153
162
144
183
214
194
213
188
232
217
170
170
284
192
239
167
197
239
236
218
187
174
155
210
162
184
199
279
179
201
140
240
214
148
179
199
216
206
224
227
179
204
198
143
223
167
214
199
199
244
253
156
276
180
219
210
223
194
154
253
215
204
222
207
217
156
146
214
188
176
233
176
234
168
166
197
239
195
216
238
228
169
205
201
244
219
169
204
240
227
193
229
200
260
222
217
228
157
246
226
201
200
204
144
211
195
181
233
139
228
239
192
163
173
215
216
209
180
228
162
188
150
183
252
239
179
129
250
208
201
176
218
217
199
238
130
188
110
173
254
252
191
189
224
130
222
211
175
232
243
200
173
146
174
199
174
214
244
207
175
188
192
170
209
176
176
184
194
181
153
211
186
242
213
218
173
145
205
193
242
225
200
195
213
213
171
156
175
210
151
241
151
171
239
159
197
150
207
165
199
121
174
144
233
189
190
234
216
248
195
201
201
142
238
191
186
232
197
181
182
208
254
182
139
213
174
209
236
170
232
235
231
187
193
223
211
175
208
217
180
138
248
210
180
192
205
194
183
219
225
200
217
261
161
115
197
228
183
168
156
136
155
212
207
188
221
160
179
172
238
245
161
150
142
230
161
218
211
211
177
215
203
199
172
124
176
210
199
153
236
164
189
207
191
203
163
156
145
206
236
197
197
239
218
203
179
225
235
206
161
205
236
157
160
218
195
254
249
186
229
240
221
184
216
174
156
247
183
194
206
243
198
245
174
191
254
180
223
223
225
178
153
201
130
238
204
213
234
225
228
219
177
225
208
171
212
226
242
109
249
264
247
174
259
141
180
243
180
237
189
196
179
155
161
264
246
221
190
153
173
149
192
167
207
127
276
185
195
194
172
249
235
128
173
206
223
263
233
187
197
171
220
229
141
252
171
217
214
117
152
194
204
238
175
204
189
162
161
213
209
235
214
237
230
154
226
108
232
170
259
179
180
222
229
245
184
180
158
258
212
203
172
160
174
231
204
209
207
222
162
235
154
163
183
120
229
209
165
185
241
179
192
180
189
203
183
238
196
176
213
242
228
188
241
216
209
233
134
237
149
233
202
142
202
231
213
246
182
161
197
200
198
202
96
166
198
206
266
214
181
198
209
149
210
235
219
180
152
225
224
219
145
228
218
212
225
119
163
239
133
213
150
226
166
228
204
164
198
242
284
196
160
134
197
248
166
215
224
180
206
219
205
198
194
175
151
179
215
186
181
183
188
156
159
231
222
223
199
214
150
188
229
220
229
204
243
247
211
176
171
197
260
235
267
163
192
199
182
242
180
215
150
187
223
156
155
190
170
224
174
192
168
188
180
187
232
221
165
204
199
163
211
180
222
199
203
164
166
210
173
199
206
172
210
165
176
213
219
211
216
215
177
233
229
215
246
151
178
234
147
178
201
239
191
175
198
250
229
239
240
211
207
167
167
169
227
213
190
189
154
215
176
218
232
130
189
153
202
197
187
244
240
179
188
185
193
135
250
137
216
216
178
234
181
219
207
230
146
235
218
111
193
217
206
185
167
198
244
269
200
126
167
219
247
235
138
182
191
228
241
152
228
166
166
192
213
200
230
233
184
227
188
195
193
173
198
190
223
199
163
227
214
224
195
180
210
189
168
162
181
229
258
185
256
238
224
218
205
196
220
206
251
188
189
152
249
237
180
243
198
209
260
189
225
174
250
222
196
245
244
225
218
221
185
203
227
197
184
192
242
212
194
222
168
111
210
244
178
200
190
223
197
164
227
161
226
159
206
222
242
252
201
128
201
302
201
272
135
250
208
92
231
117
234
206
236
186
214
196
208
232
201
172
168
157
169
221
215
182
214
207
168
177
223
184
175
188
221
276
193
168
163
203
197
178
172
146
212
202
215
233
210
250
220
205
122
221
239
180
208
178
222
187
163
247
173
226
149
215
253
152
218
196
169
227
159
200
187
254
206
225
218
206
112
217
143
176
199
276
251
163
160
159
167
183
157
207
188
225
138
204
189
229
199
250
207
165
188
183
267
222
145
238
178
207
184
234
208
193
217
187
219
211
229
241
140
230
119
184
198
209
155
180
240
215
201
191
170
153
209
204
197
231
263
199
209
239
226
198
205
239
218
167
231
148
184
169
200
137
167
177
112
182
186
232
219
234
222
195
201
192
165
246
219
204
184
157
205
182
209
157
265
213
180
255
132
182
176
175
220
185
229
224
231
237
211
208
192
132
225
187
205
213
220
167
235
212
177
205
184
151
195
190
224
175
150
209
213
199
225
230
202
198
232
166
242
164
151
209
154
243
203
155
170
140
235
235
216
170
154
124
191
210
288
228
154
195
177
187
192
178
239
180
218
207
195
226
231
205
209
139
159
208
196
196
243
218
209
178
202
197
145
196
271
249
174
165
274
224
198
207
224
220
281
214
202
187
203
263
171
195
147
184
259
226
222
216
219
223
230
249
256
151
222
229
241
190
222
208
222
201
132
175
184
194
245
225
222
235
197
187
170
175
144
188
214
201
260
177
207
223
134
224
188
200
158
154
181
232
220
261
201
195
231
177
170
227
192
197
184
173
179
188
223
190
216
173
183
204
234
171
229
208
217
255
171
196
142
198
116
161
232
227
137
187
197
222
217
220
224
192
177
255
150
207
180
194
210
250
261
160
168
133
151
173
219
196
168
287
227
152
163
177
231
165
186
152
208
226
179
221
201
208
237
206
199
214
133
184
234
171
224
216
216
201
259
140
180
181
187
176
259
223
196
219
204
177
166
180
189
283
224
159
251
181
181
171
158
193
262
140
206
226
204
205
209
204
189
154
169
232
245
229
223
175
158
242
272
173
137
178
228
208
187
239
204
231
265
242
232
210
239
222
222
222
160
222
204
231
225
210
200
183
242
204
221
228
177
152
135
176
138
220
220
189
220
233
163
236
181
186
169
196
165
193
185
190
220
210
159
152
171
220
199
259
232
180
185
199
172
179
211
259
192
219
191
225
177
205
198
265
180
200
204
210
140
197
211
185
219
161
167
221
203
216
140
182
183
221
188
235
148
209
211
189
183
148
209
132
225
180
229
184
197
173
221
202
188
221
196
275
212
210
184
162
275
187
151
173
212
200
225
119
226
223
157
181
220
133
193
214
210
169
190
226
213
177
224
200
165
237
189
205
188
209
250
199
239
221
188
204
138
193
185
269
212
211
169
181
173
240
224
189
221
242
176
183
180
237
221
209
234
213
229
212
190
214
161
176
159
194
226
224
194
204
160
161
209
215
250
254
130
222
155
198
164
186
218
223
189
220
266
192
200
232
184
212
251
185
216
247
218
240
209
201
198
186
252
190
160
172
197
173
182
230
256
237
223
166
189
227
170
159
229
225
240
179
227
221
195
134
189
273
197
171
182
230
168
208
172
220
221
213
239
208
225
193
184
164
164
192
199
182
199
226
161
262
184
190
210
206
192
213
210
185
199
211
242
238
262
255
199
190
222
142
185
231
150
216
204
197
240
116
242
248
214
148
171
241
135
169
177
234
271
199
176
247
186
205
227
197
243
163
162
239
234
199
189
181
144
210
224
192
186
184
225
166
248
129
172
188
233
169
213
235
229
217
226
201
199
242
239
211
151
258
141
152
170
192
178
159
240
182
225
217
182
207
171
232
195
215
242
120
233
205
195
222
213
198
187
198
198
203
173
229
212
189
179
186
179
252
256
172
187
201
186
189
203
193
172
120
203
219
198
217
241
206
213
181
227
200
144
142
241
203
224
248
169
196
98
186
198
221
189
192
263
251
164
181
182
141
196
214
234
214
181
249
152
179
170
236
208
159
184
246
204
194
239
118
245
204
172
154
154
201
228
149
215
178
234
165
206
213
156
248
191
201
183
175
201
216
183
93
245
216
166
199
211
171
194
177
250
218
173
178
200
263
149
171
211
156
200
162
139
195
185
176
148
210
190
162
219
245
174
235
225
191
177
222
171
165
160
208
171
211
204
264
178
206
212
184
209
239
197
195
194
226
209
210
180
236
174
154
191
196
192
236
179
204
208
246
207
176
158
170
188
210
251
196
216
156
190
191
228
175
201
263
139
210
204
178
178
200
224
184
191
164
233
212
189
139
213
124
207
217
161
234
248
225
263
182
196
195
218
245
138
259
188
189
264
234
177
224
248
203
208
209
135
135
174
184
213
199
164
181
215
201
220
185
162
222
218
224
193
170
213
181
243
212
218
218
208
207
199
157
143
270
220
218
193
192
196
223
239
217
205
187
207
188
182
212
177
251
237
208
267
300
175
177
259
168
198
108
186
245
181
227
253
206
256
169
212
235
222
195
191
162
145
257
198
193
267
213
251
227
210
192
199
221
282
181
232
191
166
141
254
193
225
240
138
190
241
137
217
198
182
185
133
169
215
145
225
183
248
212
165
186
194
202
152
165
209
207
141
172
125
155
220
178
195
258
240
152
172
196
152
181
182
154
173
182
204
236
222
203
199
281
226
262
262
229
177
201
191
113
202
192
218
172
147
243
160
173
156
131
187
252
213
224
231
216
131
167
183
174
222
236
189
182
217
238
241
179
165
203
238
133
217
265
214
244
183
172
215
226
189
167
221
234
225
259
209
153
232
187
187
197
232
214
240
232
172
180
117
228
123
275
110
204
139
124
181
144
181
141
196
185
211
172
142
201
237
221
213
124
243
150
227
176
193
282
204
145
102
216
246
211
156
262
164
152
218
247
233
184
237
218
128
181
170
184
209
180
238
234
227
201
147
176
198
166
176
211
187
211
250
252
163
218
157
193
190
242
163
196
241
190
226
210
186
215
189
220
229
197
150
212
204
211
153
191
187
227
186
151
263
201
235
229
205
217
171
128
257
194
211
296
206
149
239
168
141
207
196
206
206
187
221
184
201
179
192
209
210
190
217
252
224
279
151
205
224
217
219
183
225
236
263
148
219
227
202
195
182
150
191
194
170
220
197
188
218
190
212
157
214
172
180
150
202
246
176
206
201
224
173
202
228
187
218
223
192
179
262
200
186
262
280
225
242
147
178
193
205
155
193
178
241
234
247
221
195
207
234
189
193
210
190
181
219
206
150
225
219
188
175
222
230
196
158
211
224
142
151
219
190
212
164
173
221
186
213
170
187
155
218
222
252
213
220
228
227
171
209
178
213
196
186
273
158
221
226
215
148
189
207
143
222
169
236
183
203
193
227
203
260
249
206
254
170
242
226
172
216
241
249
257
205
218
169
229
196
242
200
149
193
227
145
204
198
266
222
263
204
239
185
227
208
154
236
215
154
234
209
261
265
208
185
171
190
177
237
223
204
112
139
166
249
184
203
198
218
225
163
258
217
215
256
192
239
189
188
168
249
227
203
182
123
195
209
174
218
213
218
207
222
225
184
172
227
228
257
252
250
194
200
176
195
241
191
165
196
180
168
190
234
256
183
146
179
255
251
278
204
198
161
223
201
177
222
251
189
217
227
167
197
239
237
196
255
162
201
191
223
197
230
211
211
218
221
152
128
209
137
260
254
203
162
205
146
213
211
132
160
236
231
219
240
188
197
259
205
228
169
237
172
217
234
202
234
271
207
148
117
171
245
143
180
233
200
245
203
273
206
196
199
223
211
138
184
255
144
183
219
184
191
210
132
170
265
193
214
198
241
200
154
153
267
228
222
254
220
201
210
236
223
196
241
214
258
179
195
146
225
275
207
217
267
164
242
211
209
209
207
154
158
228
214
219
246
250
136
232
250
153
166
223
185
250
179
172
108
188
178
160
205
240
136
246
209
193
216
208
217
268
212
215
181
192
256
198
180
187
139
182
205
90
211
236
183
219
242
149
204
242
184
267
217
154
213
222
230
246
216
232
145
168
217
148
198
192
158
236
216
201
178
195
172
191
205
192
214
201
207
195
179
190
176
237
193
249
206
221
194
243
233
191
165
210
138
221
230
185
189
191
146
136
156
219
203
232
122
206
203
220
265
160
165
209
227
153
240
206
261
227
188
162
232
222
220
219
122
240
223
197
228
172
191
178
203
250
215
222
216
237
179
233
241
187
165
221
211
227
231
157
290
204
169
223
198
253
226
205
189
204
239
176
212
186
145
181
203
181
190
181
186
210
168
201
198
178
180
194
189
259
224
201
208
208
245
231
235
214
187
198
227
175
236
255
198
225
210
234
151
205
193
243
206
199
221
258
224
254
204
230
168
249
92
206
202
171
140
256
157
216
168
210
128
260
209
178
191
206
246
206
221
194
234
162
242
217
185
184
217
203
185
176
237
176
255
184
223
157
197
191
285
190
160
276
224
144
187
201
168
203
206
167
236
246
205
200
185
196
230
223
203
176
204
123
219
230
153
231
179
217
191
227
253
194
142
143
279
199
153
182
192
222
275
219
196
180
190
214
247
191
130
240
251
256
152
173
200
145
226
214
220
127
144
227
197
195
198
260
155
191
223
204
170
207
181
184
164
158
204
190
209
223
189
174
176
122
175
223
178
171
197
177
197
149
227
216
170
161
202
238
226
226
209
162
224
157
161
199
183
205
231
219
199
241
139
212
175
197
187
186
230
222
195
158
245
191
213
187
176
204
234
251
192
175
216
239
157
179
157
150
169
144
171
205
234
154
189
197
223
208
234
180
170
222
203
240
166
148
188
186
175
181
213
160
251
199
188
209
200
182
152
225
205
236
204
161
175
208
157
180
231
212
158
168
251
192
230
186
226
229
174
206
218
220
224
223
204
186
240
152
224
277
228
213
184
189
147
226
226
244
194
253
180
224
212
188
215
194
194
184
237
179
218
227
202
217
227
221
234
200
192
240
223
245
138
153
186
194
172
219
188
207
142
187
180
112
173
220
124
192
179
167
212
218
187
130
168
257
207
233
142
164
229
210
185
235
150
219
214
146
210
142
199
214
211
202
227
212
162
250
230
154
156
243
158
197
188
255
202
237
154
189
233
216
202
221
139
252
226
181
213
232
219
220
186
183
220
230
219
169
157
149
159
207
161
221
191
142
197
224
199
155
194
191
189
218
255
195
196
196
228
162
205
217
179
208
140
163
183
187
154
189
222
202
170
244
242
230
238
185
214
153
298
173
244
190
209
167
205
210
198
202
167
191
271
227
242
208
123
203
236
212
215
242
141
205
192
77
112
166
174
196
248
186
200
209
263
194
178
199
173
236
194
180
243
249
186
225
215
184
186
168
251
166
129
137
213
190
242
204
143
184
167
196
137
186
223
173
130
192
207
144
226
233
220
152
187
235
198
227
202
174
220
179
177
146
220
169
212
203
193
144
273
159
220
194
241
122
230
240
149
213
286
181
183
171
223
204
186
136
170
230
146
239
176
150
218
208
250
221
237
185
166
208
210
232
188
196
166
157
185
215
178
149
174
213
164
199
253
134
249
265
166
200
196
138
215
232
179
217
204
146
264
193
171
134
200
191
196
151
205
230
196
171
198
184
164
181
252
187
192
193
226
219
256
178
232
205
178
202
199
225
179
219
202
187
191
176
179
168
210
153
158
198
198
231
253
191
110
194
177
219
194
197
175
212
190
177
173
191
176
149
196
225
195
170
207
199
187
193
227
215
203
210
155
187
182
179
233
245
186
179
243
194
209
188
169
179
207
189
206
197
213
221
199
232
253
168
159
163
160
165
213
222
251
196
172
260
220
223
261
213
248
229
199
155
200
259
206
231
222
227
218
204
215
193
217
189
270
215
187
177
200
176
168
194
202
211
179
215
202
131
205
232
186
256
166
215
189
162
225
180
236
231
162
177
178
252
195
164
178
239
183
239
156
247
141
192
167
192
219
200
199
231
210
177
155
181
250
194
143
246
169
153
244
127
222
183
240
232
175
213
161
161
167
196
193
138
170
144
159
214
257
227
215
212
245
237
189
242
158
207
156
224
193
184
241
159
177
214
237
219
165
142
189
240
182
225
173
191
218
237
157
158
250
202
158
152
206
253
221
158
179
142
134
257
220
225
235
145
140
183
198
171
203
242
192
164
181
211
164
161
213
188
167
234
178
204
186
194
247
167
186
204
218
163
214
177
230
142
194
178
164
161
186
235
237
246
159
250
229
165
253
209
178
175
184
173
208
214
302
195
210
152
191
168
246
196
235
141
217
154
218
184
137
231
211
260
182
209
201
222
196
200
153
216
233
208
223
231
205
189
210
205
199
131
210
219
217
186
250
232
170
219
210
183
176
226
214
171
215
201
269
233
161
217
252
222
156
233
217
183
196
236
206
211
224
206
208
215
203
250
234
162
207
243
223
162
193
194
168
217
231
193
217
194
175
212
214
183
236
170
186
239
237
283
203
136
239
214
222
184
202
182
184
148
190
232
195
248
227
196
301
180
156
260
265
194
214
204
190
188
219
197
196
204
172
212
200
227
175
211
161
186
191
242
162
219
231
233
176
185
236
195
298
212
193
252
190
203
171
249
216
198
226
209
203
203
212
208
226
231
202
138
191
197
267
267
271
183
159
154
221
162
232
184
233
164
186
145
226
170
220
220
221
194
207
177
224
170
248
183
181
200
178
196
258
245
139
216
230
199
221
212
220
148
217
219
219
184
223
174
154
197
213
173
166
224
196
197
215
134
243
250
178
230
189
234
206
200
199
197
216
207
157
228
254
176
188
224
193
206
207
166
231
175
216
263
170
256
163
253
278
144
191
226
169
161
159
181
206
180
163
188
169
176
210
101
196
189
230
144
145
167
209
177
243
187
176
215
246
248
222
207
208
185
166
258
238
183
172
176
196
206
213
175
213
196
191
231
223
220
214
213
203
181
184
187
224
193
215
167
173
242
250
162
249
219
154
183
217
215
166
181
215
237
191
206
230
133
192
209
224
215
188
205
125
196
174
218
207
187
172
188
147
156
178
204
138
167
230
252
263
146
231
197
167
193
227
216
163
239
177
205
149
206
244
235
161
167
198
258
229
230
224
176
162
214
202
174
199
199
180
204
201
146
164
170
162
197
238
167
179
178
179
176
185
228
150
231
261
252
151
226
195
238
232
202
146
210
206
244
233
196
235
200
182
207
169
235
184
250
180
236
190
200
218
110
175
209
236
220
179
178
221
225
105
181
180
233
190
239
229
161
198
146
179
251
198
189
251
225
153
233
273
183
230
219
294
209
227
233
247
180
205
188
237
237
177
171
213
246
207
277
209
257
221
277
201
251
169
186
191
172
160
120
168
186
241
215
202
177
210
149
187
136
219
171
190
203
196
187
154
178
201
241
216
146
208
187
183
145
221
187
166
181
231
225
232
216
191
254
189
255
211
212
260
196
221
217
143
172
215
196
194
200
165
215
268
183
212
235
158
161
233
236
227
136
256
190
199
205
145
250
192
160
129
181
185
211
207
156
235
200
161
184
237
235
145
143
237
210
134
190
220
262
235
168
184
183
163
207
250
226
203
214
182
188
148
245
192
226
268
297
168
211
184
197
245
194
169
158
246
151
264
250
222
206
189
171
158
140
180
161
178
194
201
218
216
229
268
188
117
241
227
151
228
186
240
188
235
213
299
188
244
236
194
248
195
219
187
150
249
153
218
260
148
225
163
197
246
165
189
216
251
201
194
133
234
229
203
204
250
240
136
249
195
225
167
224
234
245
227
135
264
174
180
255
132
180
181
207
140
177
254
177
217
235
211
235
216
220
228
215
184
174
207
263
191
219
155
167
279
220
173
164
151
186
209
205
149
150
233
171
232
224
261
155
214
231
188
220
182
215
255
161
184
179
193
237
220
171
241
213
149
209
200
211
258
213
166
159
174
211
245
174
158
172
183
128
160
202
127
193
186
196
221
192
203
159
235
226
148
240
230
157
243
203
217
224
207
191
228
172
138
171
182
183
170
187
216
250
133
238
193
199
155
163
203
193
237
189
256
259
233
214
220
166
227
174
243
212
232
202
234
224
183
114
114
183
167
207
225
200
229
232
223
218
135
234
213
138
116
148
208
243
207
202
251
271
202
216
234
182
184
205
183
196
164
177
131
237
260
209
216
229
249
243
184
196
133
205
193
220
175
109
245
215
144
181
193
175
232
175
219
204
202
217
163
244
257
150
209
170
220
195
120
205
202
218
171
160
257
152
178
247
227
205
172
223
247
242
170
170
213
246
158
166
198
271
217
223
193
214
149
185
201
199
212
151
118
238
151
194
153
203
214
244
199
262
229
201
199
186
108
213
151
226
197
214
154
157
256
228
223
173
138
125
189
246
209
183
170
223
178
199
169
255
233
203
198
157
208
293
196
261
166
228
163
202
220
194
257
236
217
193
253
208
139
160
244
173
174
200
194
167
226
236
165
278
207
199
164
197
145
229
147
250
220
254
141
236
234
202
166
232
201
213
228
170
196
181
154
228
180
188
210
139
195
188
199
138
167
171
127
194
201
162
215
175
114
167
225
241
197
204
197
221
204
225
148
195
216
246
165
226
222
160
225
200
134
153
220
220
180
241
189
237
183
196
211
163
142
159
226
184
235
77
252
186
202
241
166
208
217
192
185
234
212
207
217
206
178
218
208
179
251
272
210
184
230
196
200
202
154
200
253
186
209
167
236
209
194
135
220
207
136
229
165
178
151
202
184
227
209
238
219
170
192
155
186
210
172
197
187
161
198
165
176
167
185
196
154
224
228
218
178
138
154
195
214
219
127
229
256
205
191
146
203
217
209
201
204
192
156
186
212
196
250
220
225
184
170
228
191
255
162
193
221
257
273
273
234
205
157
196
243
186
214
93
202
166
167
243
221
174
198
218
144
204
222
212
195
249
234
182
210
206
197
219
159
208
198
145
265
249
207
216
176
116
172
204
183
254
202
191
191
223
215
262
178
229
242
221
191
202
230
222
241
200
223
218
233
194
217
204
206
206
201
205
219
228
180
218
185
232
214
273
182
248
192
212
170
197
135
183
222
197
238
197
180
188
138
230
173
251
178
209
170
184
245
228
216
186
199
226
202
187
163
168
218
228
180
183
214
183
187
222
212
109
270
221
173
224
183
142
215
214
207
256
194
232
229
238
194
186
164
84
168
162
241
174
214
141
210
145
242
181
235
208
167
103
220
168
166
178
151
194
231
178
201
197
173
212
200
231
210
186
171
233
191
204
241
213
199
206
145
211
173
198
169
165
197
213
174
214
194
220
229
217
225
189
175
170
155
221
204
197
189
208
172
227
212
205
175
190
169
205
227
173
265
113
201
218
264
160
215
203
231
231
157
184
212
178
224
216
187
207
190
243
136
213
150
184
184
182
195
186
164
271
165
219
188
183
139
240
184
186
184
200
157
204
173
219
186
250
198
147
241
236
221
241
206
186
218
138
157
145
206
220
166
196
209
202
209
194
206
181
197
149
184
204
257
217
236
132
173
166
169
258
248
179
200
153
261
174
114
186
192
209
264
216
215
187
215
187
186
226
185
227
237
183
216
204
212
227
182
187
154
227
210
211
220
211
205
235
159
163
154
176
209
195
210
199
210
176
261
236
182
142
203
198
173
186
182
130
139
193
241
178
210
215
175
199
131
157
170
210
203
123
230
145
174
166
183
245
171
205
122
170
184
204
164
181
195
236
239
138
210
207
155
220
160
170
183
178
172
205
212
211
252
199
206
153
269
221
185
217
241
226
244
273
231
237
252
163
245
217
219
184
186
176
209
235
202
204
201
225
155
206
132
171
154
175
175
222
265
234
243
176
195
218
186
189
154
151
226
145
258
218
206
166
153
183
152
235
216
223
258
205
258
212
202
248
174
240
209
133
196
187
158
168
174
175
241
182
226
211
195
162
241
243
162
163
223
234
158
189
186
215
235
174
247
175
180
215
205
214
236
199
233
237
184
168
156
179
197
171
199
217
190
203
175
236
209
205
185
140
247
223
248
164
121
188
206
164
193
202
263
185
228
196
287
180
147
137
190
293
150
216
215
226
160
184
185
253
239
156
232
133
241
214
185
188
192
185
187
215
208
183
180
208
259
208
222
149
193
104
167
193
242
228
218
182
196
175
249
253
170
241
180
224
238
161
217
185
199
154
234
203
202
173
198
200
214
202
183
166
265
203
198
210
155
209
211
187
162
202
218
209
223
154
141
219
125
224
227
174
211
218
183
126
164
163
275
219
211
224
168
259
211
136
182
214
192
231
176
183
163
193
232
226
183
193
223
200
181
198
211
171
201
156
249
263
183
231
185
264
204
184
206
173
248
243
200
150
193
245
230
243
267
252
187
148
189
276
191
195
250
175
218
236
232
253
196
254
238
168
183
249
169
210
212
178
177
184
235
176
226
171
203
209
186
237
180
192
239
184
225
155
204
278
150
265
206
199
211
229
118
174
170
253
187
166
142
199
131
234
227
211
245
207
186
199
164
190
205
160
198
208
160
188
161
165
301
127
194
201
249
135
118
177
203
217
219
168
154
250
220
205
215
193
190
187
209
278
228
192
224
189
160
144
289
180
206
157
190
237
186
217
199
202
191
223
195
248
215
144
203
181
95
186
144
232
184
192
147
222
194
225
170
144
196
193
262
137
250
184
177
181
256
226
207
213
217
205
168
230
188
189
201
213
216
286
222
179
170
215
245
199
196
301
178
187
208
253
266
213
240
258
154
225
193
154
203
162
205
239
218
223
191
210
188
191
241
235
130
145
112
189
218
159
194
142
244
168
258
266
172
212
195
137
241
210
190
178
233
229
213
217
156
181
235
207
236
178
249
252
229
164
168
231
209
224
203
283
190
165
245
238
197
174
146
190
157
189
171
178
137
242
182
194
141
191
209
225
166
177
178
127
208
235
215
217
137
226
241
234
203
212
124
203
173
230
264
182
230
207
245
193
204
222
157
205
187
180
198
133
168
209
207
233
229
193
167
214
261
226
221
194
142
206
162
216
176
193
227
213
217
239
171
253
145
220
195
193
186
184
173
222
216
222
188
205
242
267
197
164
223
206
244
236
192
165
127
219
202
217
171
189
188
205
164
155
182
189
230
171
151
210
236
206
244
192
174
165
131
212
243
188
212
197
228
197
166
218
167
223
199
271
190
192
230
174
212
215
134
133
183
216
200
130
212
264
176
162
234
200
185
220
217
215
174
188
187
162
176
204
240
188
190
227
217
165
254
179
174
233
213
228
182
281
177
157
234
211
208
233
209
208
156
215
198
162
221
248
232
169
205
276
152
159
145
178
229
202
192
226
163
181
226
197
176
187
206
171
197
206
158
242
249
180
160
171
222
185
249
160
218
187
154
176
195
206
232
211
246
210
232
205
232
188
201
173
134
218
207
150
186
183
217
206
233
188
167
173
269
216
217
257
200
233
146
246
216
115
202
197
187
206
209
166
208
187
144
230
171
192
195
227
156
199
189
223
231
254
155
196
179
211
193
222
226
220
228
209
179
191
261
195
202
251
237
220
273
166
171
199
186
182
152
190
201
194
217
184
157
198
151
191
281
240
210
255
200
214
247
167
195
179
276
137
214
197
185
194
171
205
147
244
89
211
210
112
246
276
201
231
233
220
201
251
153
188
203
240
149
250
138
246
246
197
192
218
220
177
165
175
131
163
210
250
196
174
206
176
234
257
135
204
226
126
213
173
180
202
223
233
150
155
221
193
198
168
229
154
243
147
190
128
155
115
263
174
174
179
185
228
212
191
180
240
237
176
232
196
235
183
174
219
224
207
257
194
212
246
167
193
187
149
234
189
255
181
173
179
195
206
212
149
181
209
185
170
192
160
251
241
171
223
206
150
256
192
256
202
204
181
168
247
225
215
168
224
182
215
186
206
158
218
188
240
226
210
183
240
189
167
206
135
207
208
214
166
189
208
211
230
163
167
224
194
225
201
189
197
258
166
164
219
243
210
210
253
217
224
179
216
209
240
228
161
146
213
208
148
233
198
229
229
170
220
189
210
182
223
213
170
179
184
225
223
183
163
204
208
213
243
156
237
173
171
233
181
206
158
223
215
229
235
143
217
233
271
180
238
260
222
174
186
167
182
173
226
213
229
209
230
169
229
243
138
204
210
209
217
260
232
225
223
158
141
147
163
208
228
193
215
200
206
222
150
172
134
150
161
213
161
200
241
165
224
205
267
191
234
229
234
195
157
213
217
213
190
232
198
240
272
170
134
166
191
232
228
212
227
209
184
175
209
190
161
263
238
218
164
215
201
213
143
153
139
184
148
197
234
170
170
216
210
248
260
183
152
212
183
243
203
200
221
239
187
178
101
179
230
115
185
218
216
184
162
206
194
264
202
202
191
185
198
221
228
235
234
164
221
191
196
204
218
174
201
231
266
175
204
177
272
203
190
241
175
223
193
243
209
192
181
232
167
193
181
234
219
173
194
163
189
261
181
181
242
194
180
200
232
205
227
189
171
228
199
207
264
176
209
261
210
173
161
165
223
196
255
177
148
212
199
229
216
196
154
185
210
205
254
133
237
197
213
167
202
212
84
213
237
184
165
255
206
214
212
205
175
171
162
199
181
196
120
149
183
239
279
165
178
128
168
148
248
174
205
283
190
164
185
234
202
202
189
231
193
185
118
194
196
251
152
261
177
207
172
230
190
187
174
160
231
218
234
198
168
207
187
230
224
162
185
234
242
170
168
158
199
186
172
204
181
200
156
165
203
150
217
237
190
216
187
219
170
125
167
243
218
253
250
147
223
214
210
232
179
234
159
157
180
227
125
173
215
155
210
219
194
129
191
127
207
206
200
170
201
250
250
190
225
208
215
201
232
188
157
218
189
210
175
273
238
178
208
197
206
201
172
223
200
222
176
188
128
186
211
232
167
237
265
232
205
247
197
216
156
182
200
177
254
273
172
206
223
216
169
133
275
229
168
139
156
187
158
208
244
196
183
238
235
176
184
168
210
173
226
203
188
267
188
195
217
199
230
151
157
128
229
207
242
205
127
220
196
167
186
218
208
195
155
180
201
192
155
139
196
171
133
219
186
229
215
266
191
248
282
201
224
166
201
204
218
192
214
151
199
195
218
218
197
254
215
209
172
161
145
117
170
176
224
183
227
154
222
164
181
155
183
205
192
267
150
152
174
198
173
224
202
159
158
187
162
164
204
236
177
209
207
205
135
208
246
243
214
237
171
240
157
176
201
197
223
186
253
199
200
266
211
174
234
183
231
206
166
269
184
273
238
198
248
129
199
201
213
210
202
152
256
202
163
227
195
202
188
208
245
244
228
211
200
290
219
217
195
175
183
217
209
265
217
192
232
210
211
175
248
201
239
219
179
125
199
121
177
140
170
155
247
246
152
253
258
233
171
256
211
154
218
247
139
283
149
267
214
168
138
230
222
203
209
204
145
225
206
147
252
225
216
261
177
243
222
253
225
165
209
253
162
195
159
208
215
243
127
267
179
246
207
243
166
215
150
225
188
250
165
206
227
217
270
189
268
179
182
191
205
185
159
141
142
210
121
177
200
226
108
234
226
197
167
227
171
146
188
159
178
231
176
147
212
220
187
252
243
173
250
201
116
235
209
192
160
200
169
180
190
202
203
162
197
198
190
214
237
211
226
189
197
237
157
267
219
240
195
184
227
223
191
220
225
173
210
235
256
169
251
205
235
234
172
222
159
175
149
227
141
165
202
222
176
180
171
224
172
185
154
198
222
183
178
203
188
178
131
208
293
165
220
208
199
257
234
151
189
203
243
217
238
189
168
215
239
251
200
204
205
245
235
245
230
261
207
160
189
236
206
207
233
223
139
185
203
205
225
231
161
167
231
198
156
239
159
224
192
259
208
200
175
254
221
190
152
122
179
184
208
185
195
218
203
229
195
204
146
192
226
211
199
185
204
162
181
213
195
241
243
173
193
224
163
243
211
268
211
222
182
201
244
202
204
150
234
194
204
196
150
205
151
179
218
213
262
178
218
224
257
240
127
223
196
219
218
182
192
210
176
226
201
243
165
266
211
167
202
247
218
195
268
224
219
166
249
151
196
202
246
257
144
164
201
196
221
190
173
153
175
235
171
195
246
219
200
225
205
230
198
195
164
140
193
262
225
199
205
222
244
183
188
166
193
233
210
138
192
255
240
194
195
169
203
159
227
234
219
236
156
205
206
236
187
201
123
188
241
231
159
145
247
219
211
194
230
202
252
243
173
195
203
242
170
174
155
207
280
206
242
162
260
247
235
202
152
218
135
244
196
209
226
207
212
215
200
189
202
155
227
223
223
264
189
213
223
226
255
172
231
232
240
187
188
201
229
250
201
153
172
147
167
184
185
225
189
177
254
199
176
230
160
203
182
149
158
232
161
239
145
157
172
158
236
218
185
252
239
234
215
238
201
196
189
189
202
171
205
160
241
208
213
164
181
249
147
217
234
173
225
193
228
277
161
199
200
210
200
180
146
182
160
209
178
194
233
163
177
238
261
235
173
216
200
207
190
192
209
227
262
133
266
238
206
215
230
196
207
184
222
179
212
117
195
163
256
197
219
184
215
224
166
251
182
199
179
180
126
174
148
213
201
156
223
167
195
240
163
243
140
198
294
171
170
229
217
213
193
301
232
169
201
161
191
219
160
164
155
166
276
171
171
168
270
158
174
165
191
229
126
163
267
150
249
213
197
231
236
185
178
260
215
156
261
257
260
198
175
214
229
200
187
230
220
186
191
189
188
224
210
232
181
193
193
175
219
179
174
174
161
207
180
264
186
227
187
182
212
183
235
178
176
201
164
176
180
187
205
159
156
123
219
184
170
194
196
198
257
170
246
143
213
199
214
180
157
178
168
152
204
202
188
183
266
199
206
161
158
228
221
273
193
203
152
228
235
218
214
207
176
252
218
180
211
171
224
196
208
222
198
188
193
178
213
163
214
160
213
223
180
188
174
224
237
224
199
140
215
166
124
187
186
212
211
109
178
177
201
203
192
241
230
210
240
189
195
208
207
163
243
209
217
160
257
159
232
235
216
141
214
250
131
207
208
276
233
153
225
232
200
183
219
212
194
211
158
187
210
197
265
198
183
107
158
213
217
176
209
243
191
172
181
219
215
205
223
144
246
214
190
244
190
149
226
224
160
210
198
167
200
193
217
181
182
207
168
185
182
266
170
191
203
183
237
127
243
201
181
212
223
159
205
206
163
123
214
188
209
252
188
155
216
209
217
210
244
163
221
224
236
189
153
243
145
166
243
197
131
190
168
249
250
209
144
147
214
223
193
159
166
205
173
184
234
205
180
215
279
222
170
266
183
238
259
227
166
296
218
190
199
168
227
200
147
126
211
216
162
248
165
175
188
199
195
218
191
189
231
227
228
210
184
237
254
196
213
201
157
209
243
234
204
180
234
141
171
227
174
237
222
190
152
214
201
211
204
243
188
202
189
208
195
174
228
192
181
211
222
209
210
204
194
205
202
223
169
141
230
170
240
182
195
184
156
138
188
254
257
237
230
230
241
224
132
102
226
151
172
187
198
148
203
153
200
144
171
177
183
199
214
166
226
156
197
218
148
194
217
208
237
202
157
176
176
237
185
197
213
241
260
228
219
166
185
227
189
193
147
127
229
237
205
276
214
197
124
215
156
182
166
181
212
234
183
224
244
202
244
225
198
217
262
182
197
172
157
180
191
186
187
169
193
198
172
229
216
226
237
226
245
207
214
197
174
231
183
179
195
175
216
199
176
133
151
180
252
207
194
219
252
262
211
200
191
193
146
163
201
227
229
170
243
275
231
163
211
234
224
148
216
137
228
205
226
214
179
231
172
177
223
252
227
169
275
218
132
159
176
121
132
199
212
178
195
146
190
231
202
168
265
183
237
221
223
187
174
219
159
206
169
184
175
218
176
156
238
230
250
175
202
182
242
218
163
182
242
159
205
194
163
174
170
157
206
152
127
218
159
197
252
213
263
188
199
189
231
191
225
225
160
222
181
198
142
160
193
214
226
192
198
201
172
274
205
207
220
213
208
199
209
214
159
252
203
150
148
240
199
234
159
200
207
129
172
220
184
228
220
249
161
230
153
209
243
243
178
129
252
177
232
212
206
229
228
137
141
169
183
200
207
253
239
231
194
238
213
256
181
191
195
239
194
211
192
130
239
231
183
154
179
194
218
224
187
202
220
192
189
222
211
156
141
199
249
205
220
221
189
230
244
197
224
203
189
171
250
235
215
242
231
137
200
157
195
154
280
193
247
259
167
248
227
243
178
250
237
180
168
231
203
209
264
220
198
223
223
203
234
201
215
193
194
189
200
233
248
232
194
240
226
186
237
136
198
186
230
234
167
119
179
251
162
197
231
144
215
254
217
168
211
255
227
204
208
153
226
162
200
211
151
211
220
237
248
247
154
221
234
223
164
210
179
247
208
200
226
243
169
192
176
158
220
244
156
220
196
200
156
222
168
180
237
187
189
221
180
225
240
226
180
220
238
189
262
168
223
204
241
174
217
224
217
204
218
167
234
202
223
228
219
226
229
232
216
181
177
148
219
253
180
219
190
178
163
259
247
221
212
166
231
205
202
150
223
235
219
187
198
166
229
240
203
210
174
179
264
246
194
159
230
170
176
272
232
218
201
222
173
194
189
198
170
230
208
186
205
153
165
263
169
223
153
186
211
197
233
163
189
197
217
182
211
236
199
192
195
198
131
115
217
241
132
215
207
222
263
159
210
169
261
165
195
190
239
183
157
182
154
237
199
236
201
212
222
196
226
214
211
221
204
161
169
193
176
208
170
164
219
258
170
196
180
203
242
170
228
148
182
206
148
194
211
208
254
165
147
230
253
261
187
183
202
216
173
163
201
215
240
212
161
117
247
210
228
168
171
233
168
177
164
271
162
178
190
202
192
245
134
235
231
151
145
185
138
212
191
218
162
271
188
197
120
202
191
193
176
237
215
144
221
142
268
196
231
264
287
213
201
241
169
153
205
244
229
182
157
200
219
231
190
172
170
147
212
163
231
244
193
290
98
195
241
246
256
189
183
192
238
135
233
192
139
184
250
220
202
205
235
177
196
233
194
230
143
236
224
135
195
249
186
197
217
142
242
205
200
159
175
232
242
187
234
179
132
218
161
176
207
212
202
198
213
242
203
173
219
157
185
221
219
177
238
159
224
182
199
190
162
242
175
169
148
166
301
180
271
184
212
183
169
153
146
214
154
240
200
122
229
159
193
193
217
190
161
243
244
196
128
218
211
239
166
225
200
205
176
187
218
202
184
205
222
157
170
208
268
255
151
202
190
149
240
260
136
148
166
180
165
204
271
253
212
210
176
231
109
202
193
238
154
145
179
217
142
150
136
224
229
132
179
186
282
225
221
256
176
217
192
179
156
257
115
209
171
253
218
193
203
173
194
130
225
203
212
215
195
198
239
206
138
235
221
197
245
169
201
228
209
158
194
219
148
139
207
183
197
222
168
193
263
234
213
176
163
158
279
179
242
192
193
174
191
241
178
190
207
164
247
221
189
203
179
219
209
206
212
146
189
175
209
184
211
228
198
181
202
166
156
189
179
211
190
180
142
147
263
197
231
172
188
188
207
197
181
227
276
206
230
117
173
204
167
220
237
213
228
214
209
210
239
185
177
161
153
206
186
222
187
147
218
196
220
206
155
156
180
156
218
202
219
169
170
201
217
157
239
238
207
224
244
193
135
196
214
221
240
222
140
213
195
204
185
253
207
206
144
208
156
239
232
235
198
211
190
187
201
207
212
253
184
217
186
202
228
202
188
186
248
228
227
201
183
233
237
213
201
211
163
207
226
133
170
197
218
253
146
186
177
127
170
192
202
185
249
236
223
222
123
166
176
219
264
240
257
282
240
252
204
175
184
207
244
197
197
174
200
217
159
176
245
226
194
211
222
274
205
197
141
286
182
122
214
167
162
205
269
159
149
169
153
223
132
162
155
163
205
206
238
235
192
211
156
216
152
276
228
230
250
172
198
225
171
174
188
177
197
267
170
172
217
241
157
204
148
193
214
135
244
220
185
242
140
157
178
200
180
201
229
191
162
170
216
228
198
163
204
185
211
208
182
207
189
217
245
214
159
264
132
214
178
192
212
180
231
171
236
187
174
204
240
162
255
196
167
222
247
212
243
215
203
201
215
217
189
222
171
143
205
140
199
193
195
186
245
159
202
186
213
202
297
162
273
217
195
235
195
245
195
259
212
224
163
217
207
151
216
277
197
206
196
207
233
170
193
234
173
166
207
185
185
173
229
242
186
218
211
278
157
215
217
212
215
209
231
183
185
133
253
224
164
217
174
173
241
211
242
181
185
213
209
269
198
217
181
201
188
175
170
200
191
211
153
181
201
229
216
169
181
208
119
159
172
188
224
187
183
192
201
156
158
229
236
177
188
214
201
202
207
221
253
226
227
151
149
216
193
239
228
221
150
204
221
212
154
252
227
203
253
165
216
180
149
176
178
205
178
238
167
202
207
241
213
169
226
212
237
178
248
175
161
216
250
175
140
211
222
217
185
200
252
205
190
191
224
253
208
143
198
193
238
213
178
228
190
188
208
197
183
203
218
179
196
217
258
215
190
169
196
177
200
216
226
171
165
188
239
216
229
158
248
202
250
194
188
255
254
220
242
226
195
174
262
188
174
197
207
233
183
160
163
167
229
217
175
223
180
226
252
260
239
165
167
147
155
171
208
169
244
239
204
149
151
236
302
134
162
215
222
231
182
183
168
296
221
192
162
153
254
182
230
169
228
158
215
172
140
211
221
145
193
190
193
212
152
180
189
230
109
199
179
202
183
197
191
225
148
230
228
171
218
249
220
231
142
191
173
161
200
204
247
198
214
196
179
198
164
246
292
198
187
242
191
158
227
210
264
211
210
226
214
184
172
238
197
206
239
237
164
204
206
176
221
221
158
196
203
207
233
166
198
199
187
190
255
216
184
205
208
197
127
174
212
194
195
189
257
216
184
167
214
125
188
243
199
137
203
207
184
182
230
217
204
272
124
158
194
156
163
194
132
231
215
152
229
223
117
127
242
224
194
155
197
197
159
225
266
228
222
253
164
238
253
213
207
174
169
219
145
216
201
229
182
247
190
229
171
166
238
215
245
154
218
185
208
162
284
197
123
177
172
226
227
211
146
227
195
205
217
137
181
210
202
129
218
239
239
188
207
226
184
189
174
193
176
217
104
155
199
215
140
195
201
136
147
232
163
182
187
236
181
167
265
201
202
129
165
179
196
242
210
213
216
212
206
202
224
169
254
245
259
202
237
191
222
239
123
207
244
259
232
206
230
269
249
224
215
214
164
149
211
196
199
223
220
210
254
219
234
141
192
231
222
265
211
188
207
179
156
232
168
173
152
176
183
273
185
201
211
240
211
249
210
225
170
200
225
236
237
222
199
236
203
233
200
187
166
205
214
203
258
201
174
243
167
167
186
200
269
138
224
161
231
248
292
217
215
251
151
263
211
201
193
183
151
163
184
143
224
203
223
181
165
197
164
214
214
160
207
172
184
195
209
185
165
217
206
176
202
230
193
234
163
174
192
250
226
150
174
187
201
227
227
145
221
198
222
237
179
252
186
158
171
231
200
241
189
179
172
164
225
199
159
252
220
124
265
215
217
227
211
199
181
163
247
203
193
176
239
143
147
223
164
169
147
159
175
190
192
240
152
253
198
226
245
212
158
213
212
217
157
180
198
183
172
218
206
167
266
197
194
193
161
163
163
116
241
200
203
220
204
202
257
224
182
249
141
232
201
207
215
181
141
158
124
199
203
233
218
195
235
239
211
127
216
216
249
246
187
186
215
216
243
204
281
198
210
185
189
178
187
193
201
182
198
217
254
142
179
170
237
245
193
269
207
203
156
191
184
245
159
213
177
205
147
234
207
216
182
230
199
185
181
230
188
214
220
196
145
185
172
199
218
204
176
161
180
199
146
216
238
244
233
286
136
184
238
217
255
243
189
247
189
194
105
159
206
209
207
269
175
153
194
221
161
194
184
213
181
223
173
202
184
245
193
204
213
237
195
126
180
226
247
262
187
234
215
140
217
176
143
200
180
200
193
233
164
173
208
196
204
207
209
198
213
130
171
237
231
198
210
145
165
195
254
181
206
182
178
212
204
217
212
247
206
163
238
169
208
228
180
170
212
223
235
274
188
210
193
202
156
137
159
179
140
205
173
206
167
136
197
137
113
202
190
202
255
171
176
204
212
215
185
160
191
161
218
193
221
164
205
166
217
253
139
154
205
236
191
243
256
222
129
148
205
155
207
185
215
115
238
145
167
180
171
248
171
114
209
212
171
266
178
234
183
211
216
218
155
150
254
209
231
176
222
198
244
174
148
198
149
171
160
159
225
159
172
157
237
209
241
229
165
184
221
148
178
142
205
174
205
233
226
138
102
250
208
170
222
214
131
176
222
204
247
187
245
185
250
203
196
203
183
171
174
239
205
155
201
184
170
210
223
218
189
165
210
200
203
208
217
149
200
134
156
211
179
202
149
182
184
225
181
242
265
132
195
141
249
202
147
141
153
244
188
122
244
197
216
218
185
177
203
187
178
191
158
212
168
172
262
198
203
165
195
190
260
230
196
198
235
158
146
227
166
182
237
229
129
167
196
163
176
216
211
250
110
223
144
268
206
224
187
183
261
217
147
189
250
224
178
251
253
195
208
149
135
194
227
217
177
239
212
213
220
200
204
148
217
180
115
197
169
124
241
216
179
235
168
235
211
237
215
163
236
211
195
162
212
165
176
199
212
196
190
139
121
218
212
212
222
151
178
219
162
167
253
149
165
159
222
262
191
186
202
215
209
161
240
204
218
197
251
182
212
204
204
233
158
204
162
219
183
185
217
184
210
232
263
166
193
177
186
215
179
161
234
185
175
180
125
231
223
202
167
184
199
159
154
177
233
169
268
228
208
158
211
163
191
203
203
124
203
142
254
188
186
193
208
198
141
152
218
211
192
222
198
222
202
207
232
147
199
141
222
151
186
138
198
231
190
222
185
164
206
243
133
201
195
144
188
193
215
150
227
213
226
211
160
172
192
216
207
189
250
242
228
202
165
178
174
185
152
166
262
223
209
245
202
130
237
184
226
221
231
134
241
208
205
167
185
206
277
123
179
163
189
163
237
197
131
230
230
213
244
193
205
241
167
246
256
220
221
184
259
237
170
252
129
202
181
204
190
239
162
152
223
185
187
165
176
147
222
142
254
180
241
259
188
213
202
228
131
174
266
184
135
247
189
246
250
220
242
181
177
252
161
152
172
258
203
208
190
216
118
179
161
249
250
189
162
194
224
217
146
181
198
179
217
205
197
168
196
213
187
261
175
201
158
226
172
168
194
244
204
218
200
213
217
214
152
215
133
224
158
186
210
155
195
189
264
189
171
289
222
168
212
197
200
138
174
153
150
73
212
216
215
251
170
214
228
125
245
172
226
175
242
155
190
251
179
152
240
203
170
171
197
231
229
223
179
219
176
195
230
167
223
203
183
241
231
199
138
141
218
199
254
265
258
171
169
251
226
200
198
200
231
252
157
209
151
212
196
224
162
247
188
185
181
200
153
228
273
192
180
207
222
146
207
184
105
160
199
166
213
190
233
215
189
202
241
184
176
219
170
178
196
196
228
230
164
246
168
155
184
189
140
141
269
196
177
292
141
210
193
233
169
214
160
281
173
211
130
172
207
199
197
188
225
152
168
172
155
168
187
277
174
159
148
244
205
215
208
213
142
197
194
165
199
153
212
189
186
128
172
188
234
204
149
228
198
219
222
234
242
176
228
222
206
212
223
210
172
239
188
197
195
201
177
165
203
225
200
172
223
139
227
213
227
177
290
250
183
192
181
185
179
135
183
215
125
204
253
144
232
146
197
193
209
170
186
187
173
244
225
207
203
190
240
194
182
220
162
159
209
173
210
268
224
209
236
150
193
166
211
184
239
211
192
177
198
177
193
177
126
194
236
186
247
168
188
154
232
214
243
227
207
169
179
177
229
166
130
162
221
168
215
188
229
204
218
247
285
182
184
219
103
237
246
234
151
296
224
194
128
248
215
192
177
184
162
246
182
189
205
163
206
192
221
143
162
228
168
202
227
161
191
189
227
236
241
201
174
165
189
201
181
131
254
150
224
157
180
167
192
186
184
257
204
244
191
213
165
203
242
216
236
196
221
187
221
196
212
176
179
174
255
246
154
201
175
247
214
212
207
185
256
191
240
183
226
212
186
215
216
158
208
143
220
193
189
221
162
145
212
138
141
229
225
170
228
211
201
167
184
248
217
261
153
270
190
260
228
118
237
201
137
227
238
168
166
191
183
232
142
208
235
210
161
229
159
199
262
195
156
193
186
217
247
194
158
202
208
156
201
231
233
121
187
200
187
210
199
265
188
200
215
216
200
199
131
195
192
179
168
230
235
241
216
144
226
203
204
213
239
193
172
152
172
230
190
180
249
206
250
169
168
162
225
212
205
256
202
231
203
188
204
265
187
196
208
211
196
227
210
206
239
256
197
201
193
168
212
181
167
228
195
208
211
146
176
265
194
162
178
181
161
214
213
167
190
229
157
192
249
249
260
185
186
224
268
181
266
200
215
272
242
193
214
199
187
248
216
229
274
239
161
195
172
297
138
212
220
192
221
191
174
197
164
174
169
150
220
256
169
214
263
213
186
226
187
171
131
232
192
228
187
210
225
246
205
154
232
220
176
235
167
202
173
221
181
167
159
214
247
214
193
155
221
241
227
240
254
235
168
182
257
211
241
257
201
245
252
127
110
190
200
117
182
225
181
137
203
244
253
182
237
240
230
199
213
209
184
235
186
194
187
217
151
180
192
169
278
198
218
221
235
221
212
144
223
210
249
241
188
146
181
179
220
198
225
146
132
205
191
195
193
235
220
224
235
197
184
204
252
146
148
248
216
207
182
214
224
153
265
273
179
260
202
199
229
250
232
195
205
220
241
219
225
240
248
215
154
158
156
176
175
180
218
188
172
208
214
214
232
218
150
156
123
255
200
154
203
213
230
208
168
208
265
207
209
204
197
171
134
220
195
200
236
200
189
178
210
210
167
196
192
175
237
180
217
246
193
172
243
240
154
166
222
224
261
181
172
202
224
257
231
194
218
163
129
216
217
199
203
243
256
215
185
211
158
199
239
187
239
216
171
191
241
178
213
250
226
200
230
218
149
283
184
167
170
220
225
223
156
193
189
170
177
219
217
180
236
254
232
224
271
181
147
184
150
215
213
235
236
289
162
119
174
190
154
149
210
148
222
182
177
207
180
245
216
180
252
192
199
186
199
214
173
206
205
207
157
154
265
233
248
237
218
140
215
224
231
197
194
181
266
128
246
201
159
217
195
164
182
235
174
143
150
187
222
188
216
220
153
170
186
190
241
205
240
270
122
162
241
209
193
210
181
221
231
202
150
141
205
155
165
132
175
233
222
103
193
243
177
143
197
197
252
209
188
240
165
162
239
204
170
197
213
208
143
127
208
165
136
204
219
168
240
213
167
199
213
172
196
183
246
202
249
179
195
174
172
177
236
198
210
185
160
173
252
213
196
175
210
255
188
257
210
178
153
232
170
175
225
234
167
225
260
202
144
281
232
262
169
215
159
211
166
160
202
194
176
240
221
204
156
243
293
173
209
155
271
230
242
246
234
167
198
135
244
181
219
234
212
191
160
185
192
213
232
177
185
145
192
201
172
237
217
278
219
169
238
199
198
226
167
214
214
210
184
176
239
193
159
192
215
153
185
204
172
155
234
223
185
233
169
182
203
249
200
243
157
218
177
196
200
231
242
187
215
257
174
231
171
269
224
282
204
264
193
170
205
196
214
213
203
161
165
195
170
284
233
239
241
208
217
216
229
177
163
247
208
229
192
198
207
186
189
185
207
187
189
224
201
184
165
204
214
206
193
190
180
226
218
204
183
200
225
170
210
170
197
184
220
224
188
100
228
233
203
211
212
246
257
173
218
207
197
231
203
174
151
271
237
184
228
186
233
241
187
214
198
206
199
222
233
136
169
279
182
132
251
254
257
207
190
250
224
190
169
179
143
187
220
181
216
147
198
149
168
185
190
201
218
186
169
145
188
224
229
261
237
166
74
221
222
204
164
154
177
166
172
171
179
204
212
162
264
204
181
203
210
240
237
210
196
147
248
193
262
234
158
245
126
202
165
172
217
141
195
277
184
194
142
212
193
243
197
271
224
168
229
204
201
219
216
230
169
204
248
232
182
239
145
261
201
207
215
225
157
179
222
203
142
231
213
210
215
209
244
166
177
223
215
229
140
173
190
204
145
186
175
218
125
195
171
251
197
249
178
199
176
208
196
176
229
144
210
220
191
236
194
172
229
197
207
223
211
250
175
189
160
227
205
180
228
180
197
215
196
264
202
247
178
250
162
267
150
208
222
221
219
198
187
173
184
166
218
199
196
154
222
215
237
281
255
167
184
182
163
222
154
168
222
127
225
168
171
224
202
184
145
169
258
236
185
205
213
158
190
214
207
213
251
238
170
187
215
229
185
203
160
196
287
242
214
263
205
224
210
250
192
208
150
110
195
219
207
227
221
196
165
207
189
225
170
244
202
168
188
216
176
263
198
168
213
188
186
192
177
178
184
159
189
200
223
274
239
207
174
194
228
225
232
256
190
209
204
172
241
158
188
231
198
221
182
214
192
154
227
168
177
197
224
219
209
212
222
208
264
146
215
253
218
242
160
171
218
196
164
180
229
205
183
189
239
155
145
126
183
194
206
154
222
274
188
191
176
189
209
171
199
217
260
179
148
223
178
216
157
229
248
213
181
165
187
189
101
162
251
212
221
152
224
143
209
153
126
212
173
213
229
178
196
209
178
169
216
191
180
230
180
217
201
218
259
250
145
179
213
197
201
208
167
183
171
192
242
243
176
210
171
264
183
173
240
165
146
136
148
198
200
193
174
164
214
260
151
226
199
184
193
118
183
250
194
254
232
211
159
207
179
254
194
204
196
172
174
242
179
221
219
257
232
230
238
135
167
269
232
205
201
166
236
191
252
220
233
196
260
217
271
214
182
188
219
199
192
210
180
188
263
184
220
155
176
195
178
180
224
225
229
197
160
207
200
215
185
170
216
253
191
225
154
228
188
211
203
204
204
240
260
282
160
221
218
283
188
204
181
174
247
176
271
206
107
230
142
173
101
203
171
150
232
190
180
234
179
203
242
211
172
224
239
207
240
197
210
224
222
229
258
170
225
140
197
180
220
145
170
222
183
187
267
192
202
260
203
146
164
222
162
224
136
150
211
161
168
219
223
274
155
222
189
201
215
230
154
145
190
144
207
179
234
188
187
197
263
255
209
232
166
151
148
213
220
217
202
202
150
157
211
172
169
154
166
184
248
217
158
176
195
214
211
201
194
225
205
128
194
232
235
224
193
226
183
164
113
196
240
166
160
198
222
247
214
160
125
219
150
191
176
129
172
226
163
168
174
201
151
217
167
258
179
192
222
207
182
189
200
195
162
213
207
201
178
248
173
225
199
223
191
234
168
229
193
158
187
260
262
229
197
223
216
209
148
201
125
192
221
190
214
233
217
207
242
216
214
198
173
272
167
116
191
186
197
204
204
216
191
187
163
242
204
211
213
198
234
160
251
191
143
195
221
171
251
197
159
144
189
220
238
215
254
143
169
177
194
226
222
245
277
220
236
142
229
187
217
198
179
211
139
251
170
185
201
188
211
181
249
196
194
234
151
190
185
240
271
228
221
219
207
193
191
203
170
239
220
226
271
198
159
202
215
230
219
258
236
186
236
237
176
251
211
210
216
179
226
214
224
238
203
143
173
178
136
220
190
183
254
207
249
130
227
243
222
188
202
208
188
199
233
176
211
219
166
157
218
195
259
205
181
185
181
237
234
180
192
150
160
264
180
241
189
224
168
189
244
201
218
190
239
153
193
227
146
272
159
177
214
166
121
252
221
168
235
221
276
168
266
228
215
273
185
192
196
102
241
231
141
197
267
229
259
216
216
161
188
158
194
216
222
212
201
147
236
160
247
214
174
108
205
184
244
212
169
159
224
137
263
263
208
168
260
196
193
156
207
169
210
222
194
210
200
172
176
207
246
243
157
226
218
231
219
190
168
178
212
239
168
222
167
195
204
130
250
229
209
229
199
194
231
183
207
195
166
203
180
166
121
163
190
217
236
217
182
187
228
198
189
164
202
157
215
229
258
153
176
175
192
207
207
209
244
224
231
219
198
232
206
244
150
205
240
234
190
207
202
234
139
235
206
224
155
206
208
154
253
139
201
234
210
201
213
186
230
249
146
166
139
229
194
229
173
196
150
197
215
179
207
276
177
243
193
269
238
171
131
268
236
165
143
157
241
253
172
147
193
164
226
197
207
227
228
255
194
157
212
209
206
189
176
193
212
203
189
153
182
201
177
200
195
210
196
192
301
142
284
148
224
188
242
205
180
210
91
203
147
213
205
204
197
227
247
132
159
222
166
191
157
198
254
215
178
265
177
184
249
196
177
203
206
150
152
183
193
206
199
206
199
161
153
131
209
191
204
200
208
130
171
258
213
197
247
222
205
185
205
181
197
130
271
192
207
253
193
163
242
226
168
162
211
148
186
202
200
191
182
233
107
147
93
261
184
215
217
237
170
148
250
187
296
213
175
234
202
212
154
181
187
146
175
220
193
187
205
215
221
183
226
248
204
212
209
244
172
194
184
212
241
159
259
228
176
125
219
243
229
214
238
235
134
194
149
200
205
231
165
181
172
178
235
184
268
231
183
197
235
247
236
219
185
175
244
167
158
186
177
145
217
227
199
248
186
144
189
164
232
156
176
240
182
184
137
236
179
169
160
277
127
162
131
191
148
199
199
182
166
206
226
221
186
242
190
197
165
215
204
196
135
228
211
193
168
195
217
227
215
210
212
197
227
196
144
196
181
279
157
218
191
144
235
246
164
234
259
161
199
162
190
258
230
230
196
148
150
233
224
209
218
215
196
172
249
211
230
217
214
254
202
198
180
200
225
213
198
187
238
251
236
292
240
151
206
192
167
237
249
196
209
158
171
201
192
182
256
177
189
172
192
181
173
192
149
230
169
198
210
197
251
155
193
169
210
214
155
200
230
152
223
221
208
191
160
194
285
211
169
194
196
188
207
191
214
184
256
231
199
199
183
228
202
132
188
152
190
143
202
205
197
150
213
160
178
222
237
194
216
214
199
212
204
182
205
198
152
273
170
173
180
188
203
195
191
231
178
205
251
214
140
231
248
216
192
186
179
222
252
209
219
202
186
217
162
184
170
217
164
176
228
251
215
205
203
243
207
182
230
200
172
195
197
160
191
229
194
198
200
134
200
197
237
157
180
163
210
151
178
247
265
206
251
158
148
175
202
248
216
194
217
232
186
240
234
217
225
160
221
186
180
250
135
142
245
222
222
221
198
196
203
242
219
220
120
168
201
127
201
204
200
208
151
163
215
202
216
180
195
193
177
142
197
196
194
227
173
203
272
177
184
156
176
221
228
206
209
193
235
222
135
221
147
225
171
178
190
198
252
231
179
222
131
193
211
214
207
247
228
199
170
209
209
204
187
238
226
194
156
140
190
204
155
170
179
195
185
210
253
178
234
140
226
193
203
171
210
154
199
203
242
234
211
205
161
226
223
222
238
167
188
224
255
191
221
247
251
169
200
213
208
199
197
197
148
142
260
210
190
215
223
158
193
233
226
153
245
169
153
188
214
273
264
163
194
237
166
150
213
180
244
258
168
193
210
200
199
194
196
197
245
269
189
225
142
175
207
174
272
195
262
242
206
199
253
212
184
231
206
193
147
173
161
175
208
173
154
218
196
184
158
83
218
244
215
201
244
218
263
249
223
249
148
181
212
197
199
226
233
142
209
185
225
234
226
138
192
128
179
199
189
218
208
265
149
238
186
196
200
208
220
169
207
239
203
238
188
151
219
206
277
175
180
217
181
221
203
148
120
235
244
265
207
196
199
224
238
163
213
162
226
164
154
132
205
160
187
207
236
198
214
216
147
166
221
190
134
178
207
194
146
239
146
215
217
178
235
213
179
204
226
226
201
225
203
183
231
188
156
254
197
195
185
223
228
193
209
165
216
160
252
186
204
228
183
220
196
211
207
200
153
233
242
239
250
181
222
193
190
185
273
168
161
190
214
144
197
198
201
212
201
258
152
264
245
191
235
236
205
210
221
192
185
210
155
180
144
184
226
204
156
207
213
174
168
158
216
204
191
169
167
211
172
223
166
185
198
201
209
163
176
219
231
195
243
222
227
171
145
159
232
223
188
177
186
245
162
214
170
206
190
183
164
248
198
184
193
129
207
156
150
197
211
167
180
194
180
178
186
255
183
256
177
155
129
253
168
224
192
121
205
227
180
201
240
162
182
171
129
203
139
203
226
209
213
182
212
164
193
216
189
189
192
163
195
222
185
197
143
181
190
266
208
240
265
214
267
217
180
193
248
243
164
258
186
194
219
199
171
165
211
167
140
168
218
221
212
229
191
244
164
159
143
212
239
200
207
159
245
175
198
206
172
191
248
134
203
227
145
184
213
268
288
116
231
232
218
227
234
229
154
176
234
226
181
256
162
189
253
189
218
166
215
236
174
225
193
170
142
200
195
217
201
185
196
215
210
180
200
238
157
231
267
154
196
200
184
201
213
232
246
119
258
215
174
142
237
214
174
247
210
190
182
203
220
238
229
192
155
209
240
195
208
227
221
190
190
231
191
252
218
181
194
166
214
256
121
171
227
272
138
263
208
170
176
220
189
137
159
174
196
194
196
268
195
236
112
192
209
192
189
139
186
239
182
224
214
245
200
209
154
239
221
185
223
225
209
173
214
232
183
227
225
182
200
224
121
200
231
183
239
260
170
268
205
184
242
197
182
176
175
181
284
190
240
275
126
150
265
224
184
168
216
178
191
198
173
219
122
214
213
176
221
202
212
207
226
170
138
173
179
129
220
200
251
257
217
230
267
182
189
249
205
184
167
203
169
224
239
135
179
134
250
145
158
181
193
185
190
168
206
175
214
243
223
151
206
283
192
144
183
272
185
188
249
215
240
194
199
238
191
189
226
221
212
159
246
183
140
234
225
241
196
192
214
151
168
218
153
209
196
208
284
178
207
245
206
190
205
240
164
216
234
242
274
259
166
136
184
239
222
273
257
235
230
269
206
208
191
188
232
211
138
231
175
234
222
105
183
192
270
207
227
159
190
99
167
207
240
147
221
174
136
207
233
274
209
222
159
204
217
206
152
163
203
236
164
154
173
223
191
240
273
250
187
227
202
188
222
224
271
229
169
200
120
143
230
263
209
210
247
150
206
209
172
172
243
191
237
244
221
172
212
250
98
148
191
269
209
264
181
213
177
275
184
207
242
228
220
239
220
199
214
173
196
211
228
160
213
197
217
229
158
183
253
200
156
180
212
226
203
172
268
170
214
219
275
169
204
214
225
176
241
190
241
197
266
134
187
170
227
206
240
232
123
196
183
187
180
181
191
202
200
188
214
165
170
219
159
166
226
150
236
188
189
209
160
195
174
241
214
145
179
240
144
182
206
238
231
248
175
153
177
193
167
142
225
194
107
173
208
217
215
231
224
149
216
244
125
153
230
179
176
196
223
215
201
230
212
181
234
260
177
189
212
175
248
247
208
211
217
201
187
195
168
219
170
196
226
213
253
159
206
221
206
181
210
257
211
224
184
155
199
189
177
183
234
149
213
261
196
178
198
129
206
195
196
208
230
193
228
142
233
148
220
168
191
235
251
167
205
229
217
142
208
238
199
150
211
186
207
183
233
208
247
173
191
212
176
149
179
255
237
180
231
197
207
182
110
230
178
187
210
170
178
197
190
239
250
256
221
225
200
201
226
219
165
230
194
180
219
210
140
233
241
254
166
196
192
175
122
120
196
182
199
180
177
195
226
209
230
198
139
184
203
230
181
193
195
231
187
188
204
197
148
207
243
215
224
169
261
212
261
230
221
160
162
176
206
229
189
231
158
173
222
219
164
149
203
236
157
235
240
172
253
193
208
240
194
218
205
207
221
219
171
217
190
178
142
200
161
252
235
183
215
174
171
241
147
209
217
246
186
166
162
241
227
192
224
232
207
230
196
77
203
218
185
214
245
127
220
227
228
175
223
222
139
161
182
248
171
169
208
228
173
163
160
193
238
220
195
195
231
279
200
205
147
230
191
190
248
240
147
172
170
180
167
220
191
168
196
202
225
217
198
216
129
178
247
193
181
180
245
225
175
178
248
127
150
179
198
214
179
207
192
231
243
224
237
241
265
186
223
187
238
160
205
204
157
196
196
200
238
173
159
166
258
235
226
176
164
215
236
186
248
198
226
184
216
164
144
200
207
208
208
152
183
215
246
213
248
162
191
225
229
239
215
249
148
228
203
218
239
202
176
265
257
225
232
173
177
152
195
200
229
132
198
233
180
207
165
169
227
245
218
226
257
189
174
199
259
236
163
223
223
226
183
164
225
205
264
236
162
150
198
219
126
255
210
203
233
211
119
204
130
172
201
209
213
222
171
230
190
147
214
191
206
177
183
147
236
222
210
183
199
167
122
222
185
186
145
183
212
228
210
139
145
241
179
221
180
230
180
181
223
176
163
249
177
177
162
225
189
187
188
240
225
155
174
225
160
222
220
172
185
201
238
185
163
242
127
197
199
216
211
181
196
181
223
213
201
175
163
173
206
186
220
265
154
250
147
191
194
232
133
166
203
232
143
228
223
223
206
202
182
146
227
165
214
208
198
200
123
231
235
217
266
150
238
181
241
173
191
239
214
175
167
210
219
189
183
127
196
206
258
206
225
187
200
217
192
271
204
190
203
206
200
214
218
163
217
234
197
209
182
154
189
271
204
157
267
198
187
187
175
172
181
232
278
219
219
232
217
151
204
212
263
255
237
231
175
157
245
220
250
233
228
183
224
211
309
226
153
154
90
243
210
198
218
239
222
250
196
200
144
213
212
247
197
181
235
211
217
210
211
173
221
155
227
235
200
207
220
173
211
212
189
156
194
104
164
247
220
149
206
260
236
200
252
216
187
161
175
140
235
167
188
223
201
241
192
209
160
193
201
207
246
193
207
238
154
198
250
241
195
168
186
180
230
217
197
194
198
222
156
211
199
238
244
209
148
231
176
187
264
198
259
172
208
198
216
194
197
193
205
223
226
180
230
224
210
177
208
163
202
191
240
202
178
264
201
199
261
260
187
178
160
183
208
207
178
195
185
170
210
216
243
224
167
152
232
223
256
203
202
196
235
229
219
175
251
215
220
169
172
212
177
163
178
199
199
203
197
161
182
193
188
194
193
183
229
218
234
117
183
185
218
203
201
208
156
170
208
214
167
206
202
198
222
193
163
217
245
161
195
146
222
214
167
153
201
215
256
210
254
185
221
198
190
218
191
166
182
188
294
182
215
186
223
212
191
197
216
188
195
208
198
245
175
140
222
212
191
210
206
166
186
161
219
215
217
237
233
240
248
182
187
175
175
158
193
165
210
174
198
240
178
210
180
161
194
198
188
204
233
183
220
207
218
200
220
195
209
191
208
217
166
167
180
195
239
192
244
219
203
221
194
144
194
192
146
144
227
234
240
200
137
191
213
167
233
156
288
227
138
232
212
129
196
219
191
198
185
227
165
148
279
215
181
192
180
225
241
211
204
217
204
231
189
198
153
238
263
238
161
190
182
193
184
235
229
211
246
175
193
141
192
195
197
243
185
191
218
203
177
249
210
219
203
224
270
179
189
217
204
173
231
197
203
199
249
178
240
220
244
195
220
161
155
239
229
211
202
138
197
213
190
179
191
236
243
234
184
241
246
217
188
154
242
196
182
252
231
206
231
175
215
231
266
226
132
211
229
145
180
223
256
238
228
195
212
244
215
220
177
172
234
232
201
271
167
122
178
236
180
185
261
228
218
174
109
199
194
242
172
186
229
166
174
222
182
247
168
177
148
211
272
162
251
264
214
214
214
216
206
150
236
125
184
243
219
152
231
188
213
181
217
169
249
258
173
168
225
175
186
220
211
154
174
112
232
214
234
242
171
184
192
194
220
246
205
189
219
215
192
190
230
196
173
218
205
219
211
180
199
258
202
226
196
194
184
196
162
170
235
96
147
199
232
157
248
219
163
194
206
187
203
217
191
227
204
155
219
180
238
224
168
163
182
215
206
205
179
232
274
183
155
191
201
246
166
235
204
196
127
238
174
252
163
201
169
189
235
160
241
142
221
247
179
170
208
213
162
201
204
213
211
167
201
201
156
229
155
247
207
180
181
223
172
176
213
207
204
218
194
142
205
241
195
178
183
185
212
173
213
239
177
187
219
210
163
248
194
239
210
164
155
124
220
174
179
123
175
177
196
203
169
243
199
199
199
184
122
237
192
234
220
175
173
205
181
196
230
260
206
231
163
262
250
272
198
199
216
188
187
227
203
193
162
195
195
220
206
276
243
200
230
220
206
169
237
166
254
222
125
181
232
175
183
162
174
199
162
230
171
163
206
139
247
211
227
256
194
169
257
254
222
178
181
245
241
148
150
231
246
186
155
239
199
169
242
189
157
224
223
226
157
267
227
206
170
207
178
213
147
177
148
221
209
176
272
188
180
260
204
203
196
258
205
98
167
195
253
209
180
224
168
161
191
175
206
176
168
202
243
226
278
205
189
240
185
201
257
197
229
200
274
213
223
211
194
222
236
196
198
156
185
179
200
180
230
225
205
221
243
261
196
198
208
105
217
225
237
197
181
168
176
203
157
160
196
209
155
199
117
237
154
164
176
212
222
285
205
230
196
208
183
198
153
250
203
235
189
222
197
167
194
224
258
257
184
263
193
207
199
224
195
208
223
236
246
219
239
245
212
187
230
155
191
210
222
195
206
204
180
216
197
102
196
224
183
265
204
218
221
198
234
236
140
240
241
255
183
219
183
151
196
126
142
232
187
160
204
198
201
253
228
164
155
198
182
148
183
248
183
198
182
225
194
236
194
258
169
210
229
198
226
149
224
171
199
213
128
202
160
142
157
234
224
196
186
152
167
138
226
214
222
198
226
187
190
250
181
227
257
220
200
190
208
203
231
196
268
210
193
168
213
226
224
177
235
162
216
239
185
203
213
206
207
197
235
139
214
205
275
177
186
160
153
118
228
209
182
200
197
194
164
184
276
189
144
159
228
191
222
182
265
223
237
223
197
202
220
204
201
262
137
191
255
192
255
208
133
187
247
222
251
239
207
214
201
237
187
225
120
256
210
187
194
226
246
148
161
237
197
190
169
190
206
163
196
173
226
228
235
176
209
167
178
196
180
219
185
156
122
273
208
200
197
227
233
168
211
197
211
145
181
149
242
177
193
156
166
243
131
225
177
240
184
157
179
124
174
217
169
198
150
179
211
134
209
229
174
194
128
177
135
176
205
199
221
237
206
236
217
158
165
207
187
207
230
196
166
204
121
252
189
147
226
206
212
228
221
213
188
242
176
171
237
213
193
161
198
197
186
234
228
261
196
146
204
220
246
212
194
129
206
179
211
208
162
214
219
138
167
264
168
270
198
145
196
190
156
260
162
206
193
143
141
183
149
165
119
174
225
177
188
162
169
228
149
266
155
167
213
213
162
167
194
237
238
202
243
138
156
209
177
152
221
186
232
194
177
263
117
222
199
175
195
255
157
232
203
275
144
200
249
171
160
214
180
208
198
165
155
194
212
127
179
275
190
171
184
237
190
160
216
149
261
154
180
171
179
205
193
234
171
214
197
153
187
217
260
215
219
223
197
209
158
209
202
216
254
226
178
166
179
183
195
137
259
245
188
213
234
165
167
199
187
256
167
156
181
178
198
236
197
186
196
176
179
196
194
251
162
144
274
164
191
238
179
164
194
249
200
153
191
248
200
240
201
165
197
206
188
226
195
203
210
216
169
290
201
191
242
227
179
207
194
203
219
164
170
214
244
224
240
161
207
203
167
243
198
245
210
163
219
190
209
168
150
233
151
186
188
145
241
215
212
278
249
188
227
161
197
202
224
201
224
182
236
224
198
189
209
192
257
184
256
144
180
235
211
228
269
202
193
203
201
183
269
294
202
179
159
212
221
213
212
141
115
209
102
248
207
235
180
251
190
183
272
227
187
211
211
189
174
242
191
193
202
160
181
204
238
229
174
166
179
233
193
171
171
216
183
182
260
258
216
199
231
157
224
165
250
211
183
178
212
185
199
236
85
168
222
129
240
183
217
160
211
175
199
205
161
266
203
222
242
246
174
158
196
170
145
248
204
206
223
212
101
210
166
214
190
174
228
239
295
201
227
203
265
173
144
182
240
247
196
164
155
196
121
120
205
197
205
154
208
123
205
156
240
243
185
164
228
176
184
224
239
213
136
142
228
230
184
175
190
154
118
168
208
198
155
197
225
244
197
198
171
199
189
232
228
147
168
149
264
227
156
244
180
213
190
142
259
232
216
247
277
225
174
237
208
151
214
189
194
198
142
215
251
237
208
201
211
220
149
206
162
223
245
241
137
179
249
188
217
132
198
208
197
144
229
217
219
238
256
232
237
244
217
256
182
181
221
151
223
171
173
202
199
211
160
237
156
171
160
153
168
190
195
207
220
129
232
210
208
163
200
239
151
190
168
206
147
200
209
180
206
209
196
206
200
195
219
211
216
230
193
188
223
251
204
207
203
271
247
196
145
197
226
211
229
158
217
151
254
208
151
274
163
238
154
160
172
201
183
95
202
182
161
180
217
228
143
149
233
169
239
246
160
229
286
192
173
188
218
182
176
165
176
178
192
206
239
160
189
236
116
189
228
182
196
211
151
113
242
165
223
206
191
178
185
178
186
234
224
150
207
233
274
210
190
203
180
208
174
134
255
251
203
217
276
227
229
211
214
216
190
217
189
184
241
198
283
200
154
166
228
112
202
198
267
203
215
192
216
170
198
189
203
227
249
218
233
238
227
224
206
161
175
226
219
142
233
127
194
145
246
184
174
178
195
218
208
208
173
183
253
179
219
196
213
210
266
196
198
222
205
203
228
173
199
234
216
178
196
203
229
259
153
217
227
189
141
252
169
213
130
125
189
258
215
221
221
170
151
209
202
203
122
218
206
231
243
180
221
166
175
228
253
183
238
192
247
209
224
188
191
213
194
161
201
153
253
214
195
179
194
162
169
153
210
225
231
213
189
273
243
188
216
231
233
126
243
214
131
244
171
140
217
184
232
147
219
177
219
186
214
192
249
259
143
131
215
270
223
201
242
197
206
266
156
238
220
224
207
201
188
211
157
177
158
203
246
171
228
265
179
143
154
228
292
210
107
241
187
160
162
227
229
190
188
225
231
173
189
211
171
252
238
279
184
206
144
211
223
206
183
225
171
206
208
239
259
237
248
180
243
204
207
200
269
190
247
150
208
164
237
160
205
152
213
181
211
221
145
168
176
239
139
198
185
231
181
129
211
104
219
176
251
131
185
221
247
199
189
194
206
168
192
187
180
248
171
161
148
162
231
119
156
145
175
164
160
183
190
193
240
182
213
192
183
150
191
233
211
197
237
174
199
150
193
257
145
174
258
215
189
239
133
176
175
183
225
176
196
201
216
213
201
172
234
150
194
193
245
229
131
209
204
169
201
179
237
162
201
199
193
199
181
157
257
186
204
196
229
137
139
245
232
196
147
180
242
184
198
191
184
246
208
150
217
144
195
143
244
182
220
274
235
155
78
198
173
169
196
206
246
185
173
227
229
169
228
153
227
210
218
255
142
204
209
202
213
201
197
243
185
204
207
267
194
179
210
177
153
182
167
188
209
190
209
167
242
186
198
230
199
207
210
127
212
163
196
147
199
173
227
208
194
150
249
158
191
284
214
208
222
207
206
126
199
270
172
151
238
254
230
215
228
229
186
122
248
229
255
196
171
150
205
155
206
236
157
187
232
204
190
256
191
267
170
194
253
218
196
184
222
172
188
174
205
148
140
250
215
239
219
196
181
209
224
207
127
202
204
182
201
192
215
199
178
187
201
167
172
194
216
229
175
137
190
263
183
148
180
202
219
274
224
180
225
162
165
212
166
242
183
180
182
180
226
212
195
198
145
199
186
180
245
229
191
195
229
241
178
239
216
202
216
179
235
204
165
229
240
208
203
194
194
170
177
261
193
138
210
162
276
213
238
215
176
176
211
206
172
162
219
166
157
189
206
191
239
215
239
203
105
181
280
274
218
160
211
188
224
161
220
219
179
196
194
146
156
162
211
206
200
199
274
193
181
223
236
196
165
203
216
174
226
169
134
239
225
259
241
201
228
159
165
209
211
156
221
206
190
279
190
142
229
189
241
161
243
234
195
185
188
228
210
213
238
189
194
225
168
211
214
230
288
146
217
172
237
206
200
192
210
207
234
219
252
199
221
213
230
233
240
194
202
172
203
221
198
199
238
150
116
235
181
218
226
172
238
188
196
265
218
192
164
230
134
259
236
161
145
171
193
195
260
191
168
203
209
192
193
153
211
151
173
215
178
155
157
233
179
206
220
148
155
186
208
225
169
206
170
179
222
157
168
247
198
246
266
175
213
145
212
195
173
216
213
184
221
200
226
174
250
209
134
206
131
204
188
194
125
252
219
160
188
192
282
186
258
239
129
279
221
177
253
141
259
230
171
160
189
192
219
167
172
130
210
171
217
170
235
161
178
241
190
219
214
176
204
226
168
172
209
240
231
229
177
131
276
238
199
142
170
218
208
141
251
243
233
194
197
195
208
220
212
229
226
129
245
237
204
155
152
226
203
189
259
215
210
247
242
210
230
194
185
220
217
120
144
138
170
263
174
186
249
177
238
262
192
203
141
152
194
230
176
252
209
173
139
213
196
219
227
165
216
163
188
186
180
213
225
155
261
241
186
198
133
212
246
170
221
198
199
160
160
226
198
231
248
216
180
294
210
216
172
158
221
249
235
164
197
200
186
245
222
176
177
237
230
197
181
170
211
242
230
207
197
221
199
159
238
247
228
187
207
225
272
201
196
182
210
201
272
142
215
185
201
216
240
152
142
219
190
182
218
242
193
184
235
208
174
191
230
160
210
179
191
154
200
173
213
178
170
145
165
154
235
198
200
186
241
222
116
236
226
213
185
213
193
191
177
186
183
192
185
177
157
178
173
158
188
254
227
232
210
203
225
184
184
195
204
164
144
208
224
186
213
186
241
185
252
178
227
179
260
191
131
253
197
197
251
179
186
221
85
194
209
209
183
221
132
125
170
234
210
175
198
255
210
183
189
208
242
136
168
264
150
227
235
228
142
172
159
218
236
116
200
219
178
216
203
264
286
246
209
185
202
153
220
151
218
185
172
182
233
227
178
235
170
180
211
152
169
173
228
240
212
196
247
163
185
270
237
176
239
190
214
228
215
206
205
227
173
227
240
198
170
152
218
140
201
186
199
190
113
205
224
157
172
160
173
200
217
208
224
194
182
230
155
146
158
194
231
186
235
177
209
195
231
149
194
201
181
209
130
127
229
160
216
180
179
186
205
191
200
183
244
219
219
190
163
168
225
217
225
228
226
263
209
172
144
156
216
268
254
203
196
213
131
213
181
169
226
172
219
195
246
178
170
239
196
192
144
181
251
214
205
167
214
224
239
189
151
165
230
217
225
229
187
238
231
236
168
205
198
170
102
139
207
202
74
200
203
233
196
195
201
117
187
259
161
195
235
183
218
208
228
188
221
173
205
158
234
119
161
189
263
205
195
221
194
261
177
187
222
212
195
136
269
230
222
245
210
198
176
179
176
213
166
240
189
132
208
216
253
141
194
131
229
144
130
151
237
179
140
155
133
247
237
219
179
245
170
168
197
221
211
244
157
205
181
231
215
190
186
181
214
203
199
152
168
188
193
151
159
237
158
216
177
141
211
206
228
235
186
185
181
247
238
225
198
221
192
229
142
183
190
223
216
189
169
219
168
197
190
223
177
239
252
242
199
210
223
188
255
259
195
142
215
196
238
203
210
215
227
229
258
163
214
257
211
203
197
196
250
197
217
193
179
184
209
200
179
175
210
206
258
203
229
159
139
158
203
201
274
196
219
177
236
121
207
204
255
182
184
160
181
227
198
120
196
148
212
219
148
212
189
171
207
230
198
192
190
206
191
218
277
171
259
258
120
197
168
225
202
197
214
195
165
211
178
236
166
249
199
208
138
220
164
237
179
195
165
214
211
167
246
173
177
205
186
231
163
208
186
191
205
239
198
204
132
162
196
234
210
222
194
231
168
181
210
192
203
154
208
177
193
228
220
200
181
160
236
214
181
210
185
250
191
161
256
172
162
172
190
225
225
183
242
198
226
254
216
201
229
165
177
185
231
188
192
227
231
129
164
172
191
262
206
171
195
237
202
188
177
196
209
215
194
145
261
150
183
221
181
224
187
187
138
221
183
204
214
209
149
220
143
282
156
167
204
214
177
218
149
161
226
229
268
176
231
282
208
177
204
194
209
160
212
173
194
233
180
242
214
157
205
171
178
209
168
168
190
183
208
219
218
208
190
237
229
223
233
184
128
200
198
148
238
217
277
164
222
232
169
164
200
202
275
250
127
243
175
190
272
204
233
175
228
184
173
175
179
183
250
166
201
202
227
208
187
241
217
227
231
190
191
225
198
233
166
145
239
211
194
148
175
284
153
246
164
197
198
244
132
200
250
191
262
177
203
227
143
235
236
199
219
188
141
240
206
202
201
201
196
218
217
270
221
186
214
179
177
205
210
176
184
177
192
196
136
253
137
204
220
182
194
160
238
241
144
162
201
255
190
197
189
206
230
178
265
199
213
190
214
208
179
216
182
175
219
204
140
210
205
208
228
178
180
209
204
179
221
238
237
187
250
190
173
123
181
188
195
192
173
209
183
268
212
205
96
136
198
215
205
135
181
117
208
194
179
216
189
193
203
202
207
200
216
206
209
158
199
195
145
190
172
123
196
178
251
168
206
167
214
225
179
214
229
165
259
170
296
192
195
188
146
210
230
205
232
177
230
200
212
188
208
204
214
192
179
184
176
191
227
213
218
228
205
233
131
207
184
136
233
202
154
211
180
179
185
188
239
198
215
217
191
229
200
225
223
199
201
239
241
198
209
143
228
227
209
130
149
222
255
216
216
257
224
245
236
226
238
228
196
229
127
216
181
157
185
211
206
245
207
151
211
214
235
202
250
215
139
199
185
223
183
283
223
243
212
245
128
169
184
229
163
208
210
266
167
137
208
246
152
197
207
192
181
245
203
194
234
270
213
269
253
221
230
262
169
181
189
195
198
230
178
180
240
212
197
198
229
219
167
168
178
222
186
167
237
155
161
199
163
153
199
241
157
232
152
186
194
186
253
167
165
177
200
214
215
224
159
187
210
223
138
176
176
200
221
149
217
223
202
159
176
243
185
265
208
233
202
167
225
188
168
195
169
195
203
217
206
147
208
161
174
201
228
152
229
173
181
229
229
207
158
195
174
198
214
215
163
213
169
194
208
156
171
189
231
236
177
125
164
212
195
192
177
269
270
147
250
233
179
198
170
216
172
254
215
213
245
199
221
231
194
197
154
145
177
236
215
188
169
148
201
243
229
242
173
196
228
199
184
202
136
219
245
193
164
211
225
257
186
212
207
219
201
184
215
189
217
198
220
212
234
122
288
221
248
227
181
210
190
149
199
200
131
227
252
188
225
189
214
203
176
172
210
204
201
226
178
201
198
250
219
219
179
193
196
142
189
131
224
151
187
212
257
152
198
173
235
170
149
233
180
214
147
235
219
166
172
198
149
220
179
211
271
177
191
220
129
153
250
234
181
245
228
241
274
204
162
249
219
225
224
144
178
235
252
184
175
220
171
220
195
214
90
211
249
205
195
255
202
188
145
202
190
279
230
221
215
219
240
213
237
158
215
177
197
202
168
180
162
213
163
199
165
237
222
164
232
207
191
124
192
219
199
119
223
219
141
192
176
219
150
200
220
157
251
211
153
181
208
179
228
126
159
192
234
193
177
225
268
199
107
218
252
244
218
243
225
171
193
235
207
239
208
181
185
178
210
181
213
222
158
168
234
172
137
160
249
226
206
232
225
207
273
230
186
163
229
221
178
247
191
214
213
167
216
192
233
206
205
186
292
138
220
228
252
214
203
233
197
240
212
235
214
181
234
173
196
168
153
235
163
264
242
197
244
221
284
143
163
182
205
165
199
215
137
251
191
226
197
265
174
215
220
191
221
215
266
219
163
138
186
234
129
205
181
193
205
226
166
257
156
148
204
243
239
216
163
187
217
188
213
207
187
202
171
244
250
215
214
182
206
226
239
128
158
209
201
163
227
180
233
144
257
207
176
239
198
201
234
162
194
253
204
213
147
198
202
186
265
226
253
195
215
223
192
281
193
195
255
205
188
153
173
225
195
194
258
204
200
149
200
143
176
168
242
243
219
202
252
164
126
180
223
180
194
211
254
215
252
214
210
226
231
188
246
240
203
163
193
176
209
124
201
249
186
156
211
197
241
203
225
218
208
181
199
220
250
239
198
213
235
255
281
214
218
209
232
234
191
178
136
234
236
232
175
205
179
209
195
181
220
186
212
252
207
232
191
237
230
216
144
220
185
167
208
178
181
188
218
225
168
224
189
220
217
196
240
215
213
239
224
203
214
230
219
200
175
167
163
180
192
235
166
183
169
146
216
175
194
179
218
158
212
215
192
210
229
169
163
169
294
181
164
211
267
201
222
180
202
255
171
242
159
211
152
200
208
173
184
252
190
157
176
189
192
192
192
192
199
233
104
219
215
221
218
275
216
237
190
203
213
193
219
219
181
150
245
166
204
199
215
169
197
158
222
239
170
195
270
128
227
222
113
183
183
224
216
264
192
259
217
182
178
234
233
219
192
226
171
176
186
205
201
193
171
205
167
158
178
229
207
204
214
211
180
186
218
168
185
192
134
213
195
195
224
147
177
252
225
167
181
205
267
107
184
215
235
176
207
241
134
198
173
198
185
252
178
155
165
180
130
277
186
190
242
209
162
202
234
116
175
175
173
221
148
237
110
177
206
160
162
197
210
190
153
216
188
191
213
108
231
195
222
190
204
237
176
126
158
203
179
203
199
145
147
205
204
131
207
271
277
218
251
215
178
226
188
219
202
231
169
211
213
211
226
208
197
202
151
216
198
168
262
163
168
209
156
211
170
174
232
202
218
231
190
210
235
247
193
170
199
146
193
193
187
185
263
234
194
214
154
182
201
160
161
195
159
268
201
181
168
244
219
188
290
207
189
175
167
160
191
138
208
207
173
224
173
251
280
181
193
181
195
221
233
208
134
195
223
244
213
256
228
131
217
167
211
158
244
206
144
194
207
174
175
221
215
223
182
166
167
184
227
167
197
200
191
212
220
232
186
169
228
218
212
250
199
215
252
203
230
236
182
197
173
236
210
213
257
181
208
225
243
176
193
274
190
197
158
205
200
205
192
162
162
188
116
226
218
215
254
210
185
171
139
201
153
207
272
204
203
197
196
159
184
174
211
157
225
196
285
153
205
198
201
219
171
193
137
180
167
194
240
255
222
190
188
254
196
132
217
187
169
178
217
257
154
199
220
203
178
193
195
213
143
176
231
211
232
201
165
178
226
232
184
210
193
228
217
208
163
241
241
185
166
229
169
212
232
202
183
231
185
170
197
190
219
166
228
181
178
180
210
254
247
200
190
236
213
216
191
252
212
141
145
189
184
148
238
185
192
249
230
183
221
151
197
171
236
227
223
189
201
235
221
171
196
224
174
225
223
240
163
249
207
189
206
212
144
168
175
192
218
166
245
216
221
192
172
200
143
162
187
211
177
119
172
242
254
220
299
154
233
244
262
216
180
186
231
232
196
231
180
266
196
187
210
213
212
218
151
236
187
200
201
183
172
194
177
190
178
188
243
198
196
206
126
225
111
211
209
152
203
188
150
244
165
235
254
185
244
223
164
180
260
256
166
230
268
194
183
199
162
137
202
206
184
251
241
201
213
217
201
199
174
239
187
168
163
170
163
203
180
204
191
137
240
209
205
215
208
184
212
200
133
150
176
241
239
232
294
246
256
199
181
188
257
170
262
153
131
260
182
227
203
199
179
204
243
218
193
246
134
152
196
216
221
226
194
223
241
219
194
234
221
162
220
214
263
227
235
139
300
204
168
222
210
176
203
180
173
203
150
206
117
170
229
195
185
213
186
154
240
200
163
260
275
229
167
206
175
120
241
251
191
275
203
188
218
148
189
207
155
215
236
173
156
226
240
222
210
143
156
188
206
172
162
141
254
184
245
222
201
143
199
203
164
197
208
155
227
196
197
210
206
205
173
200
212
175
211
162
222
220
208
185
276
200
228
212
243
136
194
242
196
175
198
188
188
167
178
234
163
237
226
130
196
191
191
243
185
167
170
234
206
236
201
236
182
293
188
178
162
176
194
190
218
183
201
185
161
165
171
210
195
197
256
187
158
197
179
205
168
266
242
219
166
206
227
154
230
206
196
238
224
217
183
224
210
226
222
276
142
138
178
171
211
203
170
149
206
170
235
238
187
197
209
197
213
183
189
276
208
238
218
217
258
228
183
160
132
193
151
229
179
168
113
276
201
174
234
197
233
246
211
180
264
200
208
188
197
200
210
236
189
177
165
149
176
204
231
185
205
139
200
238
194
174
167
166
155
198
201
170
202
233
181
191
176
140
248
202
206
188
192
205
203
216
182
176
207
205
164
191
161
161
235
218
202
173
217
217
242
271
188
215
176
137
148
217
240
243
119
210
164
207
172
249
180
167
204
206
175
285
199
241
208
184
170
187
211
210
187
281
217
193
180
234
160
197
130
202
269
181
192
167
210
221
224
182
167
230
225
203
186
186
209
116
228
223
162
168
229
189
205
194
206
245
180
185
174
169
232
201
191
239
204
142
202
195
201
120
155
193
188
179
161
230
157
226
190
157
191
170
180
159
188
167
213
184
247
200
176
195
203
204
210
203
214
169
198
197
171
226
228
179
185
110
219
235
156
204
172
249
244
200
229
189
228
186
257
236
166
225
269
205
177
213
188
177
182
205
165
206
141
261
176
246
210
211
159
185
233
241
230
142
194
181
162
267
221
216
221
200
135
188
192
235
220
115
205
218
218
153
202
177
187
229
216
179
212
166
199
185
228
272
144
198
193
177
177
203
197
135
188
181
203
177
213
207
182
201
187
198
224
181
202
142
186
257
243
244
211
176
206
197
185
245
219
219
118
178
216
228
201
209
198
173
230
188
227
234
231
171
151
156
190
154
212
201
154
215
156
194
171
191
188
238
197
148
138
176
253
173
179
250
200
145
167
210
172
194
191
213
178
224
230
239
252
224
195
211
227
236
242
205
213
129
130
184
195
207
194
190
221
181
176
176
187
188
162
200
199
156
168
144
196
188
167
181
227
185
211
162
223
172
253
178
163
208
159
228
226
267
166
240
159
135
210
192
209
285
230
207
189
153
178
223
188
237
198
198
180
183
246
195
192
212
226
249
198
224
244
193
234
233
209
172
154
178
235
240
203
170
209
212
152
180
208
231
180
232
186
241
180
203
171
218
189
227
160
207
193
244
216
177
171
194
212
218
215
199
203
212
242
159
167
205
185
209
142
197
247
154
184
162
221
234
224
169
176
205
221
173
173
244
189
194
162
183
196
169
171
191
212
191
175
140
186
215
180
270
196
120
213
218
217
164
219
181
218
190
190
208
144
176
142
242
172
186
150
231
203
142
247
192
171
170
229
222
263
218
185
170
179
195
212
222
183
140
161
184
175
253
175
175
243
230
194
210
191
185
211
262
213
164
179
203
154
185
187
181
144
162
178
210
191
156
171
159
169
218
153
216
231
188
183
175
143
263
121
216
231
256
191
172
225
175
213
193
191
203
277
173
201
144
166
200
203
213
210
167
186
244
185
205
218
180
165
193
179
158
169
179
170
192
246
245
157
209
197
199
216
144
212
233
203
197
221
117
183
231
167
191
150
261
180
152
191
215
198
208
227
121
143
214
181
247
190
159
132
206
234
228
155
257
239
267
165
201
169
231
220
196
194
239
195
248
190
164
259
174
192
210
258
170
166
255
162
238
184
198
214
184
232
209
206
225
211
203
126
155
168
144
175
186
192
217
184
233
173
187
219
230
176
170
218
181
209
182
170
214
245
185
136
239
219
206
223
188
118
210
187
210
234
200
199
229
140
204
249
186
192
153
235
137
219
184
231
180
227
231
229
227
144
187
228
177
226
200
167
210
209
168
201
181
129
144
243
162
187
239
188
184
203
207
157
171
237
114
223
149
233
151
185
174
198
206
156
128
230
237
265
187
188
232
226
189
276
157
188
212
218
199
225
174
167
204
196
155
175
199
195
193
223
240
243
171
201
193
164
228
206
162
210
205
237
209
219
256
239
259
209
224
187
249
233
127
196
191
205
192
162
221
229
208
247
148
208
185
175
202
150
196
141
193
223
150
156
200
252
191
172
159
237
221
211
227
200
212
193
201
148
233
230
182
196
125
161
184
192
204
195
214
154
169
158
176
197
162
205
232
210
236
211
223
252
213
203
262
191
198
220
241
176
236
144
182
210
182
178
202
189
162
233
212
167
212
146
122
174
169
156
188
194
182
226
246
229
250
205
206
190
158
173
184
193
209
183
190
222
249
291
236
156
250
206
268
209
233
215
212
207
164
204
188
150
194
196
243
231
208
199
192
167
182
148
227
244
165
197
171
141
173
207
157
148
215
221
203
259
209
164
179
231
243
201
247
167
273
195
186
232
258
161
220
210
201
229
175
194
254
217
188
111
196
207
222
184
165
191
212
193
190
222
155
209
196
212
221
176
209
182
215
206
195
214
255
212
175
237
207
169
233
180
185
124
219
210
226
148
219
210
248
173
253
212
191
188
183
194
184
199
160
183
230
201
231
223
166
236
229
180
172
202
193
207
205
239
176
180
202
252
191
204
151
199
216
222
197
135
199
217
153
144
204
182
191
165
164
192
199
169
215
183
188
237
215
185
208
240
219
170
236
178
152
202
261
212
227
228
151
175
244
161
238
128
203
139
208
170
225
147
195
205
120
169
175
148
231
296
217
171
199
191
219
202
141
244
215
160
231
188
144
139
215
250
195
247
202
230
221
234
209
224
237
228
192
142
100
167
151
206
168
250
221
192
197
209
218
218
178
196
280
208
190
254
268
256
195
209
255
273
182
146
190
243
209
245
241
212
234
207
247
208
206
219
179
172
203
216
138
228
199
176
212
167
207
146
163
240
190
176
205
193
255
133
222
223
268
176
126
204
222
205
226
199
187
223
226
254
209
181
145
168
218
194
202
253
148
214
220
254
162
171
198
214
160
185
237
171
238
209
250
139
218
211
209
186
109
164
170
164
190
273
184
179
194
259
161
189
144
265
253
159
129
184
238
209
170
192
146
214
255
173
267
135
206
214
189
206
168
193
175
210
226
278
243
181
173
182
228
201
212
224
211
197
233
249
205
188
248
245
195
245
224
211
211
142
229
214
212
207
242
190
192
202
207
213
214
248
219
270
211
235
205
189
185
178
152
223
180
170
160
192
185
211
218
134
214
228
189
216
193
227
199
245
223
201
234
253
170
207
240
199
227
180
192
208
201
195
212
209
208
160
179
200
261
246
210
186
188
261
203
230
193
175
158
205
223
220
177
258
198
198
211
210
168
229
202
150
223
230
209
232
207
257
232
214
188
197
248
153
210
179
204
200
188
235
232
254
150
151
207
194
211
217
172
189
141
202
220
270
145
195
223
278
219
232
203
236
262
163
208
182
199
170
260
167
267
264
176
206
219
176
149
224
185
146
176
139
197
210
198
203
207
191
248
192
253
253
180
247
232
131
221
213
230
159
239
184
214
217
203
175
230
86
173
223
163
164
208
157
174
182
268
211
195
154
190
149
223
237
167
204
186
238
200
156
159
206
170
223
197
196
172
223
244
211
164
195
178
247
244
270
129
209
137
190
147
214
194
233
158
167
184
207
163
153
210
154
151
209
212
258
219
229
183
253
273
256
165
195
256
242
250
227
213
192
207
182
132
172
210
181
189
280
197
253
215
216
201
197
204
169
175
249
189
201
184
217
214
257
159
245
184
193
153
150
214
235
181
212
228
132
142
200
229
194
208
218
188
214
175
152
220
261
210
195
206
238
237
107
175
213
174
234
208
207
217
237
227
194
178
193
199
184
223
132
160
113
103
173
162
247
243
142
177
235
213
215
210
142
215
188
199
182
213
179
208
189
182
228
163
194
196
221
234
169
212
107
185
157
215
202
179
287
168
210
227
242
191
209
202
188
179
136
242
153
229
157
247
240
235
194
165
213
238
170
98
164
182
174
216
209
139
186
137
212
154
180
257
251
140
238
238
165
234
226
166
189
231
196
189
264
210
159
199
245
205
222
129
188
165
192
226
128
157
175
208
156
214
215
202
171
162
261
212
189
189
192
205
126
234
155
183
172
256
219
126
225
188
233
226
131
176
208
187
180
164
162
171
203
193
235
247
212
129
193
191
133
197
165
148
259
155
200
126
193
213
249
169
173
210
253
209
201
223
181
198
239
194
221
174
195
233
191
176
198
223
226
161
228
224
175
176
243
124
215
196
175
238
200
234
153
226
216
210
139
184
209
206
217
204
201
180
214
158
228
178
187
197
200
197
215
187
162
180
273
161
248
210
155
230
218
256
198
236
236
236
233
140
197
240
208
222
116
215
193
153
227
227
266
195
260
166
224
198
197
143
244
178
170
238
245
201
186
202
224
233
197
184
188
220
152
227
193
154
118
232
279
172
188
206
207
103
179
188
140
122
177
192
163
143
257
195
208
184
219
236
228
172
170
105
190
134
227
204
192
188
198
244
214
143
222
187
246
224
185
206
192
206
191
167
181
183
205
254
272
225
195
203
196
232
252
236
213
171
139
195
212
203
223
213
175
126
190
173
205
235
328
186
183
248
220
126
172
197
239
210
209
185
144
140
241
152
248
221
194
194
191
263
179
183
210
264
165
180
204
230
186
177
152
224
214
238
249
189
186
194
217
191
192
238
184
213
191
153
154
228
145
197
208
214
218
200
184
206
289
177
211
210
236
202
204
199
209
177
190
174
157
243
170
266
143
195
160
211
171
218
207
202
171
152
183
249
216
219
265
166
201
206
190
182
273
147
251
195
166
190
237
226
153
179
202
210
167
225
242
211
215
233
176
181
190
151
234
200
182
257
200
260
173
217
189
208
204
221
262
194
198
260
146
219
237
203
227
193
220
212
178
219
252
208
210
108
219
207
215
200
218
231
206
181
143
233
168
228
204
188
201
240
228
205
177
193
232
201
231
230
141
178
195
218
206
206
184
163
198
208
191
201
199
195
153
210
211
219
241
191
208
206
163
182
131
156
197
188
180
268
202
208
152
223
228
193
230
203
247
242
185
219
200
197
203
197
199
224
223
170
192
217
237
222
235
126
179
241
223
281
212
189
194
136
185
199
193
186
211
240
264
134
229
190
199
163
170
165
211
158
159
226
242
237
194
259
214
254
158
172
223
216
202
251
126
197
167
204
199
222
183
221
191
259
237
188
229
210
201
219
199
208
241
236
212
211
198
173
187
233
238
175
195
228
181
195
259
185
204
220
253
218
146
165
225
166
261
180
180
178
203
191
255
212
216
205
150
243
202
192
162
161
154
162
153
196
199
273
204
180
159
237
239
223
221
174
161
140
196
189
170
187
191
216
212
194
228
189
297
153
159
193
176
226
166
206
218
164
222
164
224
153
199
158
192
232
168
234
217
215
204
226
220
233
223
149
170
185
204
225
233
175
268
202
207
230
185
198
210
199
190
187
149
211
192
191
215
228
233
235
188
270
190
290
202
187
164
264
130
223
209
230
160
177
231
236
108
220
230
195
251
222
201
200
183
188
181
180
214
158
206
184
223
157
205
238
184
209
222
212
183
173
161
169
261
160
185
238
198
184
222
210
162
210
189
171
212
231
197
198
203
179
142
189
176
200
180
149
217
173
257
191
202
196
163
211
243
260
156
211
245
174
229
223
166
203
214
249
235
179
209
147
233
171
248
203
227
227
159
181
201
122
186
210
182
193
160
183
177
161
219
191
192
212
223
195
118
203
186
234
266
186
170
168
172
194
178
240
227
178
247
194
173
185
207
230
209
212
236
198
207
201
234
192
196
216
235
198
143
201
205
176
215
208
256
243
255
210
183
227
158
205
163
260
198
175
151
234
233
190
272
223
167
167
177
212
204
197
182
226
186
202
256
170
252
186
229
168
236
161
205
141
163
237
236
164
199
189
205
198
137
202
135
143
218
237
186
186
210
125
190
171
171
207
237
194
226
208
282
179
162
88
160
195
200
213
154
188
222
231
211
229
166
193
159
227
242
223
225
250
188
187
207
124
208
189
200
237
234
151
171
135
214
208
166
208
201
151
164
161
268
167
164
227
223
217
221
167
174
153
227
182
269
216
178
180
241
241
181
186
177
193
202
203
263
222
206
186
278
209
169
258
168
225
186
170
211
226
181
259
240
153
205
176
136
155
240
112
147
134
200
196
241
223
202
189
201
233
225
181
185
221
265
228
146
233
177
140
210
219
227
158
234
195
176
223
215
214
174
189
202
224
177
250
174
244
247
184
177
153
204
221
247
138
180
163
196
160
196
283
257
236
186
147
175
215
112
208
247
257
145
229
261
183
184
208
158
246
149
181
176
167
188
114
144
177
247
194
176
179
220
174
201
162
192
218
249
192
217
185
240
127
238
171
189
167
232
210
205
222
212
161
237
178
197
190
207
169
184
299
142
198
222
167
228
181
201
192
260
143
237
203
165
232
198
226
225
168
217
214
201
206
195
127
162
196
199
236
172
222
233
207
176
233
123
218
213
120
192
250
172
264
200
166
190
180
220
148
153
130
176
238
220
201
162
223
225
213
274
171
194
187
233
135
171
183
224
237
164
248
214
179
190
189
148
222
204
212
174
217
218
188
174
176
131
171
179
157
207
141
243
148
175
202
261
220
201
213
179
227
159
227
230
205
208
138
130
199
197
183
169
245
211
206
116
240
177
254
247
198
174
258
187
189
216
204
183
252
240
146
183
135
199
179
231
235
172
185
248
167
228
256
164
220
143
228
148
167
146
195
159
250
165
160
177
181
212
161
224
199
209
214
178
168
256
182
164
155
235
202
182
244
125
248
173
142
148
139
241
194
172
200
191
174
274
206
214
222
229
134
159
251
192
281
108
128
152
239
273
196
160
263
172
190
187
234
188
182
260
123
248
217
203
166
175
256
217
188
207
222
165
231
200
191
281
218
203
224
204
205
149
199
201
212
181
246
154
189
157
164
189
223
178
151
177
233
235
174
198
203
171
124
190
188
209
218
240
195
271
165
219
245
187
190
209
218
273
244
231
249
196
240
199
170
282
255
165
149
184
218
221
166
246
246
206
218
278
214
191
209
196
216
194
219
188
204
214
180
226
170
241
197
156
259
213
168
208
250
236
267
185
213
177
151
227
188
203
176
224
173
200
243
205
198
187
206
246
192
256
182
193
210
198
167
253
211
242
200
181
255
157
271
142
191
196
222
175
227
229
210
211
206
228
207
179
113
171
264
223
186
178
169
218
187
246
223
218
219
251
253
244
203
188
210
194
199
196
210
165
220
187
122
228
159
204
197
205
160
224
201
162
197
190
225
199
156
195
148
221
191
247
256
239
244
211
221
144
206
208
220
228
210
157
214
205
208
167
196
248
251
245
252
156
256
204
180
247
227
211
204
170
144
191
214
209
210
187
219
200
192
212
244
201
150
239
230
228
176
225
169
170
249
161
186
287
194
253
215
174
244
249
218
156
175
250
181
201
195
199
215
139
191
172
141
196
215
258
244
148
172
273
226
183
195
192
237
250
212
234
184
209
172
195
197
237
151
212
189
144
276
216
245
142
211
230
184
199
226
292
177
221
171
183
226
191
187
221
205
213
217
190
143
217
146
237
202
178
172
187
219
257
225
201
290
175
175
185
184
175
225
159
178
211
214
244
195
188
180
149
186
232
188
182
213
188
205
176
220
183
187
177
256
218
254
199
174
215
132
177
255
156
251
226
169
156
193
195
229
197
237
181
170
187
228
232
205
206
196
213
179
207
216
180
179
205
162
260
242
200
199
167
129
195
187
192
200
203
150
177
224
253
212
231
156
207
247
154
241
177
193
168
235
224
232
169
236
170
235
227
182
208
248
168
156
192
154
242
217
194
174
142
227
261
163
246
136
181
127
221
235
200
226
203
197
242
242
164
240
194
139
240
149
209
244
186
175
217
250
164
181
147
201
211
186
211
175
226
207
129
187
192
221
220
129
216
261
191
198
199
227
161
170
214
237
222
228
231
233
211
157
169
185
249
206
179
196
211
201
203
183
232
243
98
258
213
223
177
224
190
225
140
173
170
254
150
225
212
205
140
171
260
196
161
205
184
185
112
195
162
183
256
151
139
235
172
162
242
207
206
192
200
216
193
184
256
191
175
253
161
196
197
226
146
223
209
238
179
175
175
208
195
197
212
188
224
121
81
179
182
148
199
183
201
227
262
205
205
185
187
197
111
168
212
242
173
112
231
228
194
213
162
156
127
248
209
173
194
211
207
165
189
223
226
204
265
242
192
198
211
203
243
165
260
258
231
219
136
164
162
202
176
195
254
162
200
291
131
266
226
143
239
214
224
232
187
213
255
199
230
189
181
209
222
202
128
171
181
237
243
217
151
271
159
243
215
159
198
186
241
229
173
156
189
159
233
211
214
192
192
209
176
131
214
230
157
193
218
192
228
219
215
205
219
206
225
170
187
163
249
210
175
219
150
226
184
160
190
141
170
204
192
300
247
210
204
178
273
231
209
169
178
207
205
185
204
218
132
173
132
184
176
179
179
193
258
186
205
215
233
202
176
181
166
185
188
239
178
218
218
219
114
239
184
153
228
229
169
193
199
145
210
156
243
185
133
205
169
171
233
194
214
180
211
208
179
239
161
197
226
98
262
233
223
159
211
156
175
212
172
171
206
215
212
228
222
206
178
228
169
205
192
198
204
237
219
153
178
207
244
215
213
210
213
199
148
210
209
235
154
232
168
148
192
227
196
173
214
211
193
178
150
198
154
187
169
255
178
190
213
231
207
246
247
188
179
192
252
270
133
186
174
224
185
214
197
216
182
168
176
157
242
191
211
199
216
205
177
209
215
122
207
216
191
168
164
124
223
233
196
174
180
251
164
242
279
220
212
229
199
212
128
199
166
169
169
172
213
218
210
148
195
211
211
213
209
214
175
210
235
213
230
208
156
221
244
208
195
166
209
184
144
207
142
155
226
146
214
152
218
230
219
202
207
245
122
235
224
211
197
192
217
250
165
211
166
187
108
243
208
188
233
222
183
219
200
209
265
243
238
210
174
239
227
191
151
252
278
212
250
214
160
197
203
245
232
116
228
209
234
124
215
215
159
240
249
161
214
187
160
215
261
206
162
248
207
205
220
173
241
194
182
218
210
227
258
199
152
176
219
178
180
222
211
242
183
194
182
192
254
163
166
174
194
240
129
180
140
166
106
222
151
214
177
239
189
240
208
193
199
194
200
174
225
199
156
166
186
287
240
190
260
233
212
267
229
233
218
222
129
195
252
214
217
196
271
167
163
190
232
120
132
183
174
242
197
221
136
188
181
187
151
205
166
273
252
244
221
258
219
195
227
203
190
200
120
198
218
189
167
208
181
204
191
228
153
167
142
156
231
193
187
256
184
220
203
272
225
211
104
244
207
145
159
189
211
233
182
144
206
235
164
174
218
233
177
175
202
173
154
213
135
225
149
174
127
235
160
218
186
242
154
119
191
196
167
173
217
173
159
233
177
191
215
194
208
187
151
184
273
219
167
217
198
189
199
230
158
182
214
188
179
219
204
183
182
230
186
224
200
212
201
203
256
197
213
239
252
213
243
160
174
220
201
181
215
233
158
237
169
164
219
250
225
242
268
151
211
215
184
207
183
217
232
228
213
153
224
176
152
182
200
173
214
177
227
172
204
191
167
239
142
243
113
199
187
180
171
223
220
190
133
193
192
187
142
154
182
200
216
242
244
145
208
234
193
200
227
212
220
167
222
159
211
168
184
212
211
220
186
219
178
252
173
198
237
259
204
164
172
260
216
245
157
239
177
187
241
219
190
168
159
167
214
175
157
235
220
196
145
179
225
241
186
225
215
178
233
197
224
208
239
154
192
239
143
218
156
192
185
145
210
172
223
202
234
208
212
165
212
187
217
152
196
187
238
237
203
156
212
190
210
232
226
181
180
152
217
191
215
199
174
247
196
220
209
188
225
156
236
207
192
236
284
231
252
149
215
250
172
223
204
211
167
246
176
224
176
195
165
265
170
191
196
245
224
231
192
255
190
172
150
167
214
228
214
234
141
204
258
183
158
209
236
146
258
207
202
185
217
198
188
259
184
199
211
169
166
186
150
276
195
168
215
183
225
137
198
166
166
183
160
181
202
224
230
206
251
187
248
160
235
207
127
202
185
166
236
221
137
163
161
216
241
228
186
187
155
233
213
202
197
152
149
216
181
143
228
166
180
208
142
180
224
165
186
227
186
221
207
231
234
165
223
233
194
216
211
213
236
157
227
165
178
193
222
110
208
158
213
168
189
157
230
205
210
239
223
154
220
174
172
173
274
131
233
216
244
214
232
132
276
206
189
231
187
166
163
239
201
197
177
168
144
218
273
166
214
263
178
261
213
246
214
225
277
190
223
220
165
232
170
198
159
251
211
225
210
204
186
158
162
218
277
203
242
174
182
222
198
184
132
203
244
126
169
149
221
236
146
206
189
208
183
233
237
210
176
235
159
214
203
234
169
217
214
206
218
218
215
145
195
236
251
224
144
159
258
182
188
128
232
234
196
182
241
190
213
237
209
183
168
195
184
203
225
183
195
213
256
262
183
208
194
234
187
190
191
162
104
232
195
149
178
158
237
264
206
210
204
155
221
208
188
158
173
150
218
190
157
191
166
198
199
132
213
243
180
215
176
204
191
192
206
215
200
207
196
194
225
197
122
207
215
183
181
264
164
169
171
194
184
218
190
177
183
176
208
197
182
127
227
189
174
223
138
187
196
212
191
203
232
184
175
184
212
236
187
212
174
165
173
177
245
232
227
183
180
221
156
136
244
157
215
274
196
178
191
174
237
227
222
182
149
196
218
238
201
197
182
205
155
144
226
193
229
184
158
179
220
195
220
190
222
191
192
269
198
176
143
189
188
222
181
195
142
123
183
129
179
188
180
222
251
106
177
175
251
194
208
161
194
197
277
221
160
169
190
216
181
205
192
206
201
210
150
211
195
204
184
172
145
193
214
212
249
210
155
201
141
177
211
209
177
227
226
196
195
237
219
200
240
144
203
204
258
209
231
214
183
237
225
194
215
223
216
197
213
229
212
182
116
208
215
154
160
209
249
189
174
193
138
210
135
206
176
248
157
164
189
177
235
226
253
142
176
197
217
227
220
206
173
169
229
245
251
250
236
256
173
154
236
221
210
138
194
171
223
214
205
136
199
213
192
73
188
163
143
147
182
164
159
217
192
222
178
184
245
196
134
235
226
193
163
138
185
202
250
179
179
136
217
147
244
176
241
224
214
248
298
156
181
221
188
164
157
125
156
260
212
261
212
167
209
187
200
261
189
235
218
165
156
209
250
199
157
129
182
204
153
209
246
203
161
174
174
225
237
172
189
198
150
231
223
193
194
157
141
225
166
197
182
211
221
218
171
187
250
165
163
162
247
159
239
195
225
218
174
243
179
265
214
156
239
164
164
201
174
145
251
171
282
225
219
218
204
226
155
168
232
213
209
148
233
216
166
227
144
202
196
200
182
159
193
162
149
210
193
208
161
179
230
235
211
227
246
157
238
222
206
176
156
183
190
226
176
242
211
214
235
189
213
190
190
216
172
231
193
205
213
162
188
176
214
278
222
134
197
169
142
256
238
223
213
226
240
208
215
206
214
173
173
194
176
152
209
189
163
186
253
220
232
200
217
159
200
203
97
158
205
226
217
207
138
191
288
213
175
209
236
158
185
208
141
178
199
198
209
246
168
200
223
143
208
210
191
199
196
176
282
186
219
143
169
236
187
155
162
183
213
248
197
156
154
195
168
154
172
233
153
210
215
182
195
209
156
170
159
230
220
166
184
230
171
129
197
208
232
228
177
261
180
183
197
226
230
185
221
241
170
210
208
243
218
204
181
196
203
258
210
165
193
211
195
199
205
215
201
178
228
156
220
154
207
189
244
172
185
176
240
221
205
172
223
158
228
204
167
180
184
215
206
226
168
215
190
175
171
252
206
132
238
260
184
194
187
164
206
182
176
227
198
231
168
192
161
229
148
195
181
129
166
242
145
237
195
275
160
188
200
164
207
221
193
178
118
237
241
212
182
166
240
244
178
221
191
207
174
188
220
258
186
154
109
231
219
130
270
226
221
166
157
250
197
217
125
210
196
206
191
268
206
194
131
208
170
226
258
215
235
227
194
188
209
206
179
254
166
213
140
165
142
233
229
203
185
199
230
200
283
207
222
148
268
156
196
204
213
181
209
138
209
243
201
146
196
192
173
224
200
158
216
180
188
132
194
195
193
231
153
177
235
137
175
208
132
200
196
223
166
260
233
194
190
173
191
141
137
269
163
151
207
245
252
206
183
219
196
220
211
151
178
231
228
197
154
134
177
240
169
182
261
219
183
191
183
207
232
187
227
191
218
224
155
215
195
189
235
206
197
133
244
213
220
198
277
239
150
184
245
137
192
194
260
188
210
216
220
158
202
215
266
193
228
169
184
216
172
205
206
212
201
257
176
204
166
180
221
175
176
246
168
200
145
164
181
218
208
146
196
195
228
285
198
250
181
176
150
178
273
189
242
158
195
123
210
156
209
155
208
194
190
176
196
205
213
215
149
192
193
246
220
268
167
209
241
201
188
218
176
250
229
184
113
163
206
170
203
168
262
197
190
157
298
159
220
214
236
237
163
189
195
144
126
173
181
203
249
192
222
208
226
164
239
211
178
195
161
174
213
225
163
224
217
236
187
166
201
204
209
224
232
218
228
196
251
157
177
247
206
203
206
231
184
157
147
243
242
268
157
226
238
175
206
199
167
160
248
161
184
199
219
149
174
162
175
193
209
187
210
226
264
168
198
212
207
182
159
173
201
196
185
205
257
210
222
227
253
226
202
178
138
186
223
190
171
188
233
186
155
214
131
186
160
203
196
168
219
195
223
258
224
132
208
184
214
267
192
162
126
173
120
234
126
224
209
259
239
182
238
163
207
171
178
205
197
170
137
218
137
240
267
214
158
162
151
239
150
231
157
181
181
189
194
126
226
146
242
198
163
204
145
176
170
219
190
215
176
205
194
177
258
199
171
236
201
208
164
167
183
174
225
189
173
202
180
208
191
223
236
220
214
197
240
196
239
133
200
196
198
159
258
197
216
240
192
207
272
244
208
207
162
231
127
183
236
165
206
166
176
237
289
210
133
217
190
186
248
187
226
167
190
169
213
248
281
170
206
201
150
188
226
256
234
199
202
212
168
172
162
233
218
186
195
209
208
196
234
274
195
208
240
204
199
236
212
215
158
186
162
257
267
197
178
218
187
198
186
222
201
166
162
221
141
156
202
187
158
192
206
220
190
269
209
204
193
240
195
149
214
230
184
224
234
177
231
174
184
210
207
240
178
178
195
228
197
243
230
186
178
254
193
170
223
185
212
195
263
256
241
188
206
204
189
198
175
225
174
172
205
205
191
204
165
225
236
189
140
208
252
206
167
207
236
276
248
268
223
191
235
180
201
232
217
159
199
179
134
231
175
183
188
262
216
217
159
240
220
224
223
165
180
238
221
119
168
255
217
219
213
148
194
226
200
190
173
230
220
146
190
264
237
140
204
170
246
184
223
189
238
197
169
178
180
213
168
144
231
130
223
189
189
283
164
129
182
163
208
127
221
241
175
243
201
152
143
197
191
230
170
202
175
182
203
180
175
105
238
194
244
222
253
174
232
211
213
158
189
172
201
153
141
220
210
143
208
254
246
234
208
157
179
195
208
210
156
180
158
181
170
259
191
175
201
217
231
211
173
243
189
175
186
194
206
211
201
162
238
178
222
223
178
217
215
237
171
197
134
101
148
264
209
164
202
206
198
215
188
210
222
264
269
180
181
245
145
287
236
140
153
198
229
204
230
174
228
204
213
191
196
190
234
217
198
156
200
165
148
246
239
236
230
226
211
187
126
235
218
209
151
158
180
160
182
176
163
199
177
158
205
159
178
196
210
163
139
230
200
170
157
187
193
200
129
229
242
131
197
250
166
207
182
159
165
198
220
142
177
240
152
164
225
216
194
222
167
172
191
117
195
207
209
236
216
248
155
192
208
276
147
194
222
182
163
227
252
185
192
146
153
171
228
195
206
202
272
198
161
197
149
174
141
193
195
194
201
229
191
206
188
205
212
219
163
206
159
152
217
159
193
204
163
215
190
168
171
200
167
200
198
167
222
183
187
163
232
156
180
242
212
108
206
197
201
197
237
262
232
236
164
195
147
188
202
213
163
190
225
173
161
144
195
223
242
208
103
210
214
229
202
193
212
201
235
178
176
193
249
221
199
255
129
230
270
264
224
212
191
229
231
157
191
175
140
224
187
201
166
184
211
220
174
230
277
153
160
164
181
229
229
203
220
233
241
248
216
204
220
121
220
171
192
204
242
201
163
217
250
189
236
228
210
194
199
238
241
207
151
119
242
186
252
215
182
188
226
207
211
185
162
197
118
259
172
213
223
196
194
177
170
158
188
136
183
253
191
188
264
223
244
205
203
215
153
137
173
190
188
238
204
255
168
245
213
175
230
268
269
181
221
255
213
126
223
175
161
221
209
206
151
208
173
206
176
222
179
171
149
229
151
217
237
201
196
177
172
182
211
207
103
223
154
211
213
204
228
230
188
185
233
230
182
207
234
238
153
264
158
95
129
257
147
156
262
215
191
172
195
195
188
225
197
244
195
233
191
199
249
179
245
186
202
241
169
180
141
211
189
189
191
200
250
215
213
169
239
195
192
232
194
174
259
192
220
198
183
225
234
245
251
205
237
193
175
216
233
161
234
223
207
184
258
168
198
185
204
253
194
216
236
180
170
220
279
252
213
209
181
184
227
183
200
185
164
209
166
190
217
150
284
201
235
206
116
203
191
219
188
167
202
181
213
193
232
233
192
153
178
207
224
238
218
214
226
177
181
267
207
207
282
178
144
184
195
171
228
176
222
209
134
175
165
225
249
211
189
197
228
216
147
222
214
213
135
174
256
181
240
180
185
185
229
114
210
217
220
220
171
199
225
220
259
160
200
207
215
180
191
219
163
220
204
221
220
205
194
188
208
266
231
192
218
217
181
186
175
215
176
171
209
239
195
215
241
215
224
211
158
256
183
209
213
216
132
235
235
174
229
254
214
205
207
243
190
159
207
164
205
211
199
228
210
200
254
204
184
224
211
161
182
238
195
175
160
184
135
134
180
150
198
162
223
239
145
293
193
223
166
216
163
168
230
116
217
254
209
171
190
133
132
249
255
242
195
185
234
260
225
160
226
213
241
188
188
186
215
171
184
136
235
223
177
186
187
165
169
208
173
192
159
217
237
239
191
213
218
138
203
203
241
164
233
255
252
214
238
178
217
156
191
143
226
172
192
223
250
161
244
144
148
203
275
242
240
179
183
208
207
151
232
218
213
238
170
228
241
233
191
269
193
192
185
103
189
190
276
198
223
223
155
213
169
209
244
212
208
172
217
211
211
216
259
210
269
183
200
182
221
223
227
226
214
159
192
213
143
131
202
233
122
180
171
191
186
208
268
183
190
165
244
215
138
208
202
188
215
198
194
257
167
169
224
186
169
150
157
150
204
223
218
204
220
147
261
204
211
190
243
228
175
172
229
236
235
229
149
146
130
168
190
200
191
233
199
214
170
219
137
179
225
166
232
216
203
200
233
255
158
129
209
288
214
200
179
205
242
243
170
175
163
222
209
207
311
232
166
160
270
159
241
172
247
121
261
206
239
251
208
174
242
202
199
192
209
192
171
146
189
156
189
200
230
167
215
181
222
231
238
183
186
119
201
181
162
161
158
183
161
185
220
199
216
148
220
249
206
227
181
143
234
181
210
202
221
220
160
225
181
251
265
173
186
241
217
247
152
187
171
239
193
261
238
211
215
195
237
127
217
163
237
162
215
201
257
214
239
210
234
248
245
193
238
244
207
233
146
236
217
190
183
175
173
223
260
221
241
215
213
233
181
205
235
241
224
269
177
271
174
222
211
185
112
164
275
213
248
185
204
231
211
225
214
234
221
195
192
150
227
226
166
251
238
158
184
207
252
151
250
181
216
235
170
214
214
184
244
145
201
144
193
160
160
250
161
242
176
174
169
237
250
242
231
164
201
217
202
262
221
139
225
178
256
272
146
198
197
214
139
240
172
192
219
177
186
227
194
271
264
158
179
229
240
192
214
170
183
142
206
245
136
229
172
195
200
258
200
190
242
184
234
215
113
256
221
167
206
169
189
212
244
211
181
168
238
157
176
247
194
173
182
209
240
141
237
136
185
166
210
197
258
228
216
202
181
171
181
201
211
231
124
201
184
138
225
122
252
177
280
206
206
175
254
195
243
228
162
259
152
201
173
197
197
186
202
182
230
174
179
168
217
155
177
171
179
215
162
200
200
191
217
227
203
157
256
210
140
197
187
251
201
193
101
247
162
231
165
148
173
213
151
182
272
166
250
225
154
168
210
141
220
193
238
220
171
235
200
185
225
209
221
224
208
206
171
192
180
176
191
132
192
223
190
211
201
180
168
251
235
210
190
174
115
205
229
214
209
198
221
213
186
172
187
157
179
205
212
225
209
172
217
188
196
201
179
219
228
230
234
214
219
210
201
162
177
208
238
215
189
202
212
165
206
197
234
237
207
122
200
235
181
198
199
206
216
211
217
207
107
163
164
182
195
223
196
190
169
186
223
203
177
166
252
145
234
221
197
234
232
250
203
182
155
209
172
158
177
192
152
225
178
148
149
120
165
175
126
238
217
272
150
173
172
195
219
186
210
267
258
195
228
199
206
193
165
225
198
211
254
197
204
195
130
224
188
190
149
239
243
213
109
182
221
223
189
177
173
167
170
175
201
243
186
167
193
201
296
217
174
219
242
283
233
215
215
238
214
187
233
150
205
212
208
212
175
237
165
202
226
199
248
239
227
249
159
185
121
195
184
190
114
175
197
225
235
150
153
230
287
184
254
194
183
226
208
224
263
180
194
196
176
202
224
201
117
184
241
248
171
156
224
214
234
225
181
225
203
204
156
230
169
198
173
229
206
182
188
153
232
202
220
219
250
198
136
247
196
195
238
166
230
238
173
226
149
181
135
180
203
219
201
170
232
198
167
172
277
244
204
212
190
153
175
201
194
198
205
182
203
203
191
217
181
187
211
156
197
187
227
221
225
186
198
224
243
193
230
215
145
191
289
208
233
201
219
233
281
199
243
152
198
203
196
137
193
140
195
237
246
253
156
189
151
232
198
271
152
193
163
202
205
218
164
179
214
227
271
153
161
258
198
183
172
161
182
223
242
191
219
199
198
181
176
251
217
202
210
170
215
167
237
176
202
230
155
136
262
173
229
184
213
222
232
196
196
202
137
219
188
174
189
227
176
218
144
197
200
210
196
154
164
123
236
213
222
226
183
262
172
224
170
166
179
199
253
229
212
221
239
94
138
248
199
208
177
152
236
195
206
263
203
224
212
180
116
230
172
167
191
212
145
151
194
242
219
187
189
221
202
179
193
224
224
231
247
185
212
185
188
161
174
184
186
217
215
219
185
157
208
202
171
233
211
141
164
147
253
141
206
254
228
91
233
203
219
130
174
225
181
209
196
240
244
282
189
177
163
212
204
257
130
215
224
214
148
213
241
160
172
148
207
201
220
212
230
194
181
214
230
190
260
181
165
230
224
216
238
172
146
170
184
215
207
133
202
170
258
198
167
161
220
157
208
151
221
199
142
217
116
179
160
170
189
232
168
176
209
242
186
146
177
237
248
152
168
222
201
144
224
250
238
181
191
203
227
249
178
186
157
236
172
233
154
195
157
228
106
127
200
234
179
194
179
202
160
212
154
219
187
230
195
152
148
223
164
131
139
208
201
189
146
206
187
210
191
194
221
235
187
260
201
183
189
168
191
199
228
230
169
232
194
138
140
136
168
196
200
188
242
188
203
209
247
214
198
222
241
247
251
186
186
231
285
171
204
208
193
232
176
189
187
157
136
267
168
221
203
199
165
225
195
238
194
176
182
157
209
216
220
200
274
239
173
205
194
214
225
166
178
211
169
209
227
218
165
188
178
201
163
207
202
205
175
183
185
236
178
198
243
137
213
178
217
141
198
180
203
250
179
194
196
196
146
186
207
259
237
189
227
196
226
254
214
181
183
207
193
208
194
191
194
213
237
183
207
217
129
141
232
214
265
208
192
219
191
237
215
185
155
214
210
201
144
216
214
216
200
178
256
170
211
168
227
210
207
212
215
204
164
194
212
187
193
194
224
188
199
200
248
226
154
195
214
174
252
275
194
188
250
179
184
215
196
192
256
194
240
183
222
187
187
163
211
223
192
220
155
212
227
243
231
275
277
234
208
237
228
209
223
199
176
188
204
232
177
244
242
257
195
140
179
168
195
194
200
229
224
186
166
135
245
240
218
210
280
217
194
196
189
214
173
197
182
227
167
200
217
154
181
184
219
187
211
145
235
147
206
208
202
189
141
186
204
203
151
243
202
210
175
146
222
167
212
168
185
259
240
238
218
230
197
270
204
141
246
211
275
213
146
204
227
154
256
213
218
169
169
196
243
154
177
222
183
213
210
225
205
175
194
210
166
215
219
218
174
160
247
213
175
186
214
214
227
233
222
234
157
191
176
227
178
194
165
155
188
208
186
218
247
207
239
162
211
220
223
195
204
222
177
237
215
215
217
203
197
170
228
129
187
191
156
212
243
235
254
238
165
240
172
185
230
247
194
184
224
205
223
251
170
233
254
177
155
134
152
227
202
203
223
196
175
160
173
202
196
223
121
217
210
203
251
200
213
190
202
183
173
166
210
251
176
165
244
148
243
202
230
257
149
195
222
189
224
266
179
207
177
171
156
205
231
231
222
196
218
213
226
167
187
140
182
199
157
174
214
145
190
193
205
229
231
169
215
158
169
202
173
216
249
152
156
217
222
229
184
243
204
215
171
199
183
214
197
154
213
239
219
229
206
219
227
224
203
177
181
228
191
201
132
188
194
169
194
141
230
198
223
230
247
230
210
200
197
208
211
217
233
187
185
206
181
184
177
221
189
189
162
170
159
239
196
196
209
198
133
239
171
234
112
167
192
214
209
246
235
228
221
167
172
193
148
118
184
242
260
244
188
183
222
155
168
246
185
233
193
271
137
186
160
178
250
223
212
220
160
177
175
222
243
223
171
257
275
253
225
168
222
208
258
167
215
217
200
159
215
152
195
217
206
243
169
221
176
141
237
147
230
231
216
223
161
242
241
176
247
215
183
167
268
194
191
233
182
167
202
230
195
98
147
196
182
200
221
167
217
214
195
186
172
180
253
172
164
172
173
139
146
236
181
229
191
211
165
237
233
189
171
236
173
238
163
279
230
254
197
190
200
250
174
191
176
162
209
233
194
176
234
263
215
233
237
214
151
211
217
178
177
270
195
193
176
163
164
202
252
268
198
186
245
221
154
232
191
233
207
198
231
222
151
262
227
218
183
207
197
129
201
222
185
225
186
209
257
214
179
234
193
264
157
227
243
203
159
206
177
252
203
245
126
267
225
214
251
219
230
194
269
166
216
182
218
220
202
184
115
214
255
243
192
194
218
212
183
229
210
152
174
232
177
224
190
178
184
237
240
232
162
212
201
202
146
176
173
167
214
164
194
220
207
210
153
206
194
213
234
174
212
205
178
186
199
201
207
211
227
265
207
191
218
151
188
162
203
259
179
259
211
72
161
221
194
243
212
251
238
192
268
173
165
175
171
180
229
227
193
236
167
198
196
172
230
189
182
121
221
190
198
188
248
198
223
170
184
174
212
250
232
179
153
194
205
228
200
220
229
220
199
139
164
236
292
200
175
282
181
238
182
250
182
260
226
218
185
171
197
228
191
222
197
156
213
172
190
187
235
194
212
131
206
208
174
190
245
181
165
247
177
218
192
159
149
189
243
247
236
219
156
275
146
198
183
177
273
183
170
240
138
148
248
215
256
236
171
117
157
213
211
208
222
202
190
230
232
199
260
185
236
144
218
198
199
197
212
200
206
218
179
197
193
228
227
194
154
187
171
144
232
138
215
224
214
186
229
201
207
237
182
244
256
185
156
206
185
128
248
257
167
231
148
186
130
222
189
112
191
236
186
177
175
197
227
230
177
196
233
211
144
243
217
224
211
239
183
148
169
249
216
149
222
225
134
213
173
147
218
198
209
202
234
265
197
184
232
214
196
227
173
255
224
119
174
238
160
211
244
169
116
167
155
255
242
219
228
214
220
170
205
195
219
259
185
149
273
176
218
190
220
231
245
251
197
257
226
228
199
235
232
171
223
222
166
153
207
223
228
220
178
224
251
183
182
192
214
234
199
252
145
237
212
251
190
132
240
272
175
226
241
189
200
241
189
210
167
204
228
222
183
189
186
180
199
157
170
246
120
183
160
206
176
188
202
186
227
243
197
199
137
152
294
207
186
227
274
257
189
205
198
197
182
241
222
228
213
231
200
199
198
221
194
190
182
201
171
222
227
223
235
164
216
161
196
170
182
203
258
186
166
224
165
206
161
151
213
213
217
150
150
237
254
196
208
137
174
195
146
230
155
188
233
204
206
210
208
165
245
162
160
269
157
233
184
138
193
162
292
163
227
195
167
254
223
207
182
199
229
180
190
181
171
198
231
209
191
192
245
233
196
215
161
201
126
179
219
217
205
95
181
191
172
183
156
120
196
176
241
130
215
163
232
207
200
248
156
218
175
156
235
146
164
171
249
145
220
220
126
203
247
154
128
206
188
167
195
199
251
215
196
219
149
227
185
243
207
242
157
189
190
188
170
196
258
193
182
188
177
212
240
188
145
197
174
239
221
146
172
224
178
227
172
220
235
208
165
212
206
230
188
166
205
257
160
234
199
148
188
190
149
183
212
208
161
145
121
216
165
233
214
187
177
222
123
221
180
177
246
210
212
221
171
227
209
133
232
231
171
216
155
209
230
150
220
181
199
217
206
234
219
226
195
164
224
166
254
169
150
199
171
197
217
189
202
173
243
232
205
196
176
196
198
245
305
148
237
217
153
210
223
218
162
202
184
190
238
206
184
246
123
239
170
220
232
131
155
154
185
203
166
199
225
172
236
201
287
201
190
224
148
172
235
282
174
227
216
219
188
211
203
225
126
231
145
219
209
233
145
215
270
170
202
153
210
247
168
224
224
210
278
139
167
141
234
250
216
214
159
190
201
159
190
180
188
206
261
170
146
208
199
224
217
221
251
211
233
220
192
172
188
214
200
224
226
182
180
220
159
145
184
208
231
174
132
154
183
192
218
178
226
175
177
255
198
153
193
181
150
224
199
230
159
186
196
209
227
182
198
182
159
226
212
200
275
189
248
222
184
180
198
94
225
218
296
169
216
200
242
157
153
184
251
204
130
233
183
179
208
190
253
219
143
245
176
224
236
179
250
197
218
189
172
188
219
189
224
205
235
184
240
166
182
175
266
245
186
147
228
167
147
167
221
178
178
280
193
214
233
224
232
193
228
196
176
194
172
222
177
181
184
164
170
177
167
178
225
222
255
157
163
197
145
206
147
163
215
186
278
155
179
187
170
196
213
209
215
185
244
216
253
213
201
225
259
205
171
200
176
169
229
181
152
239
222
209
185
215
217
201
197
198
220
170
257
184
178
166
183
193
152
201
207
246
202
217
170
186
194
206
205
201
187
209
154
184
196
221
176
218
171
174
235
183
184
244
270
227
162
174
146
166
176
255
260
227
176
200
270
276
239
163
177
197
256
189
175
189
236
187
167
223
234
215
245
139
176
227
222
207
154
177
141
178
231
150
173
232
223
209
194
145
162
246
200
174
219
263
218
227
202
186
168
233
201
203
196
163
196
215
201
184
204
272
154
184
160
218
199
220
178
174
183
148
158
181
114
221
123
192
232
216
199
202
185
176
192
197
155
171
202
133
186
197
228
176
201
182
233
224
204
237
238
201
158
275
119
207
214
245
232
196
154
246
238
199
188
275
191
189
241
230
167
301
157
208
181
217
192
166
189
202
205
210
188
212
193
139
220
253
185
218
210
212
209
226
164
193
219
184
165
123
188
228
163
155
184
185
215
207
216
229
213
179
164
255
221
228
161
236
202
216
167
270
235
180
235
212
171
214
144
184
204
260
165
243
213
210
205
189
205
189
188
156
181
166
230
212
217
155
185
207
223
143
187
221
203
197
169
144
200
148
271
212
187
249
249
250
120
223
202
215
175
209
216
219
232
178
235
197
230
112
205
247
215
183
213
215
218
201
179
174
239
190
165
172
208
186
140
144
215
175
214
178
198
193
257
236
211
212
212
236
157
228
240
163
153
220
195
174
178
182
258
211
214
246
252
192
120
240
209
156
162
149
181
199
245
196
216
173
239
165
190
191
268
192
215
209
227
142
149
152
166
210
136
229
199
207
170
150
216
201
283
271
120
256
236
198
191
123
207
225
133
218
231
223
228
222
210
229
192
168
208
174
113
212
119
242
201
198
242
182
196
210
199
241
202
210
197
202
222
207
228
215
243
177
205
184
189
191
226
159
174
206
152
198
180
183
225
159
171
189
184
204
134
179
200
200
207
226
206
187
156
200
120
196
164
153
237
186
177
162
229
213
189
182
237
163
115
266
172
232
186
286
211
274
145
171
130
241
205
164
214
206
148
176
153
292
143
149
188
211
194
96
176
193
251
205
226
144
204
158
163
224
210
227
116
234
221
209
243
241
142
154
176
131
180
228
215
252
163
190
155
227
226
208
160
273
209
196
242
191
249
147
147
231
193
173
179
257
169
168
191
149
182
225
148
206
201
189
250
229
220
191
250
232
249
237
190
222
194
265
208
176
191
157
195
188
209
246
194
173
225
203
244
203
172
212
224
224
203
163
210
193
170
198
164
196
144
213
181
165
160
198
216
218
181
207
206
225
196
200
227
111
158
193
222
227
223
211
189
219
181
144
161
235
211
234
239
211
270
196
260
183
224
164
224
133
149
101
225
168
231
189
225
204
156
173
236
219
247
228
172
222
195
193
127
174
151
145
186
235
261
245
219
208
156
224
132
185
147
217
221
214
223
226
161
257
202
246
163
220
233
193
252
213
201
186
192
230
212
234
197
273
159
197
191
193
167
182
234
247
204
192
196
198
146
189
231
177
205
201
184
224
217
213
152
214
251
123
206
209
206
193
163
197
165
230
201
220
204
208
154
261
248
195
163
167
158
183
146
197
180
214
229
218
195
169
211
251
215
222
209
157
192
162
230
192
176
227
209
183
175
141
150
218
184
230
189
186
236
144
296
205
229
166
221
228
188
283
126
147
186
162
204
187
219
217
215
205
195
227
234
233
224
169
221
191
274
223
180
184
199
215
203
168
206
190
172
175
159
177
262
216
236
192
170
253
199
265
223
191
167
228
165
200
184
133
201
264
162
191
198
201
195
241
203
213
79
215
226
272
227
245
174
221
224
227
175
172
195
214
198
192
200
133
225
241
236
173
187
267
243
159
178
205
220
225
212
171
232
248
176
233
172
141
187
206
178
184
216
216
226
211
202
248
221
200
283
200
170
157
220
150
175
167
251
198
225
189
192
205
239
179
216
128
171
163
213
197
256
228
198
213
235
196
198
172
217
190
160
226
207
242
208
182
210
201
209
187
218
265
184
153
227
238
175
217
238
169
181
180
152
143
165
198
197
219
218
271
229
168
189
183
188
260
171
213
188
210
209
282
212
161
218
175
206
157
156
157
189
213
199
187
183
209
102
197
221
161
224
142
219
252
213
185
151
210
193
213
195
254
200
137
217
160
187
192
164
220
163
140
237
166
150
177
157
232
236
187
224
244
217
184
199
217
205
200
189
219
229
238
197
270
163
210
223
203
231
244
241
168
155
198
202
233
169
218
183
168
216
215
212
255
214
193
182
215
260
158
120
194
179
197
203
122
179
258
204
251
214
219
185
193
261
179
172
151
208
232
189
191
215
188
240
180
222
187
180
189
209
250
249
183
179
178
144
155
156
180
271
202
109
245
184
201
244
151
215
163
186
235
233
224
270
216
236
169
197
278
227
180
219
192
245
277
225
167
151
162
208
178
239
186
200
213
227
201
174
212
172
194
189
199
171
163
192
209
106
186
163
277
194
263
287
174
213
222
218
169
143
235
221
261
223
92
169
246
199
143
205
199
210
241
188
150
180
175
149
170
243
178
214
257
182
209
143
211
196
221
168
243
211
240
234
200
235
244
212
212
201
208
239
245
231
200
160
239
209
204
204
172
186
122
212
205
106
202
213
248
243
220
225
207
265
257
203
224
202
228
183
152
219
187
243
202
172
196
246
233
218
223
156
205
236
186
141
168
236
164
167
162
237
225
131
182
196
168
207
229
184
189
176
214
201
200
228
221
152
207
161
205
182
218
201
217
188
213
186
245
195
235
137
213
193
146
193
223
201
156
179
209
241
173
162
133
199
251
193
194
105
214
194
129
187
209
201
164
195
203
182
215
192
201
205
152
241
245
235
230
220
187
231
173
200
210
167
230
190
198
222
224
189
238
180
160
132
173
159
130
231
212
226
244
210
196
214
249
177
220
142
216
242
145
223
243
207
210
209
188
194
200
258
196
192
171
186
167
197
161
182
194
201
219
234
189
214
236
205
223
251
187
201
250
232
212
213
177
200
224
208
253
166
222
136
226
230
235
138
212
155
166
194
244
235
251
265
151
186
225
163
214
147
169
228
202
191
266
218
225
256
198
183
171
168
195
171
170
178
152
169
226
246
200
195
196
131
262
179
200
149
111
208
246
155
231
156
176
164
219
145
172
250
232
195
234
193
145
258
114
219
215
236
187
180
207
207
172
231
178
208
163
213
193
218
163
195
200
207
192
215
206
214
250
174
260
162
170
233
109
225
212
180
178
185
232
259
206
206
208
198
215
145
215
280
211
230
174
195
170
209
145
234
171
223
201
226
192
175
239
172
133
229
252
197
242
244
138
177
201
241
238
192
194
252
173
186
212
260
170
168
124
170
204
203
216
146
226
177
125
160
164
256
180
202
230
252
188
221
248
217
197
123
219
172
218
216
227
252
202
172
199
232
248
238
225
216
168
188
195
180
144
165
168
176
108
157
189
212
218
143
244
239
158
208
216
213
217
243
168
207
173
193
131
225
237
182
266
242
179
208
210
132
271
204
224
216
173
239
154
274
207
186
164
238
239
270
238
189
156
207
180
171
152
206
162
233
230
200
211
270
226
212
251
206
231
136
195
165
209
197
244
174
198
188
210
159
239
151
233
130
220
182
199
197
162
243
130
235
214
164
210
138
209
92
195
235
249
223
170
254
291
200
192
158
207
258
241
204
266
168
173
193
226
202
224
135
262
205
192
261
162
241
170
285
141
173
192
213
178
143
209
236
224
214
267
216
201
164
170
207
221
184
199
146
161
165
192
167
170
135
210
176
222
199
201
225
156
198
254
228
225
230
169
164
198
197
160
172
196
242
178
185
195
187
167
199
228
124
210
144
199
184
218
144
119
172
248
178
203
165
255
259
151
174
190
157
191
177
258
240
188
157
182
188
147
192
199
172
201
203
193
186
192
172
266
142
190
173
202
156
212
195
189
207
212
161
263
146
237
188
238
223
139
208
223
183
235
170
210
208
228
185
232
244
228
217
220
247
211
200
153
120
227
157
222
196
128
151
194
263
208
166
150
162
178
182
213
213
267
173
224
177
205
215
223
223
190
199
204
257
184
121
227
228
201
247
225
224
210
137
253
213
198
192
191
205
146
218
245
208
237
244
151
206
181
186
244
202
238
200
190
131
210
136
125
205
215
237
177
202
162
252
170
231
151
237
183
189
180
213
199
212
190
204
119
195
198
262
222
217
112
212
239
204
186
230
180
163
247
137
161
193
166
248
189
215
162
173
163
212
246
181
205
156
233
205
258
187
208
207
254
244
226
201
218
226
237
209
203
178
204
211
196
185
164
173
231
221
200
164
168
170
224
230
192
172
152
207
207
167
183
216
248
197
217
91
168
215
244
210
207
267
204
203
188
170
245
226
219
162
176
170
201
243
178
271
221
185
194
179
237
219
237
185
214
203
186
164
196
166
240
212
239
214
222
286
167
153
153
188
210
214
150
179
232
155
242
217
212
220
100
262
154
239
186
210
174
219
242
186
229
179
241
180
184
164
200
210
176
178
187
269
204
195
251
186
199
212
237
175
241
241
209
222
212
196
236
223
182
203
170
234
169
201
194
166
174
236
185
146
179
262
217
163
143
209
218
236
195
186
180
129
212
118
174
237
261
194
188
202
211
157
211
265
178
239
195
213
193
209
213
165
139
248
247
129
220
204
192
234
208
145
210
168
163
203
179
162
247
198
223
233
167
227
259
267
233
172
185
242
239
167
163
195
213
211
227
233
192
190
226
148
205
168
171
189
225
219
213
203
193
194
193
163
241
169
212
151
132
175
166
125
252
180
120
178
204
184
248
161
206
221
247
225
214
139
217
180
217
251
168
201
186
231
175
156
212
204
159
268
163
239
131
202
175
215
232
223
165
173
164
157
213
220
188
197
198
184
156
240
154
138
214
178
163
177
155
194
243
228
238
261
210
184
283
179
220
231
230
216
185
162
220
192
211
168
188
197
233
147
241
194
161
191
187
220
174
186
164
216
170
226
242
216
176
185
200
194
180
148
216
173
163
191
170
155
211
210
203
149
219
161
235
198
274
173
163
214
232
248
246
202
176
188
203
211
204
152
222
182
160
181
192
149
225
219
155
165
239
151
199
239
227
115
187
212
141
132
193
159
219
246
207
154
228
213
194
208
187
181
223
274
195
163
176
204
262
243
221
145
176
163
249
195
204
188
177
190
264
151
167
263
212
180
244
177
198
233
177
148
184
184
258
175
214
167
185
224
243
197
194
188
162
229
200
144
240
227
207
174
202
189
179
181
217
182
170
172
207
215
168
214
184
195
187
236
206
257
269
169
178
114
167
232
162
192
233
207
206
229
251
127
200
198
212
222
192
182
236
181
209
215
219
234
227
210
227
217
234
169
244
221
227
195
217
249
221
181
198
179
183
192
171
175
226
153
234
180
229
261
173
210
198
226
165
197
232
181
237
221
167
237
232
163
176
199
129
200
171
202
183
202
210
164
278
177
194
215
143
200
156
192
184
184
211
174
220
202
171
189
253
225
203
184
135
174
228
222
147
203
180
134
219
207
218
224
246
149
195
200
247
229
219
169
211
183
192
188
232
161
219
191
189
149
137
247
223
260
116
169
161
222
218
190
243
242
180
167
209
225
148
213
166
147
262
169
167
231
167
201
194
203
234
215
200
161
204
209
182
203
199
235
194
175
139
270
174
196
186
212
180
187
201
167
239
226
200
249
189
200
169
288
202
179
152
180
195
213
169
137
178
178
119
200
197
145
256
206
184
198
256
182
215
187
231
143
143
193
138
287
134
215
201
173
153
197
203
182
144
176
203
180
220
186
179
143
205
218
217
160
196
260
227
215
200
193
135
211
221
178
170
222
211
254
183
247
225
216
167
231
166
179
189
200
180
224
182
229
222
214
190
202
245
215
211
181
166
203
227
156
232
192
234
161
188
216
127
193
180
150
191
234
197
163
181
241
218
177
209
216
169
131
226
176
182
226
203
248
225
211
150
233
241
189
226
212
219
193
210
196
244
190
222
212
212
174
244
198
214
170
171
244
202
189
184
205
172
187
205
211
136
231
160
171
176
187
249
176
257
186
238
178
212
193
179
178
207
216
197
195
181
193
104
202
222
269
160
223
256
237
196
227
173
195
185
233
184
203
210
235
196
164
197
230
182
162
246
144
206
237
109
164
163
239
219
232
192
164
196
214
206
203
167
178
179
226
196
216
187
192
172
238
158
238
197
202
188
241
129
157
140
110
181
215
236
189
228
246
169
165
155
257
194
314
186
227
182
258
188
215
162
251
166
137
197
182
181
208
188
219
141
215
158
234
228
183
209
272
257
180
251
191
177
161
198
132
164
212
271
230
240
181
221
170
170
208
189
121
250
188
185
223
243
225
220
228
194
193
191
235
141
172
179
188
254
213
247
204
209
162
165
191
205
171
187
155
255
227
165
200
185
189
144
253
157
189
151
208
211
234
160
174
159
159
220
159
175
165
176
222
169
211
256
211
228
247
225
211
216
246
270
177
192
262
223
205
230
187
172
172
142
191
163
141
216
142
174
239
207
212
169
230
195
158
181
170
213
159
198
277
227
97
235
196
152
184
178
129
238
250
177
214
156
182
268
218
172
165
149
227
210
188
199
152
219
270
221
185
166
188
220
228
233
220
239
157
192
199
208
247
190
185
273
205
185
193
193
220
211
189
146
189
206
283
164
234
198
213
230
143
152
167
159
228
218
187
155
123
176
211
247
191
221
207
198
182
259
172
191
186
230
215
238
173
200
201
149
158
178
223
168
196
237
207
175
180
178
148
237
155
193
215
210
253
182
170
207
194
162
205
210
208
231
197
235
267
170
206
196
163
200
148
212
159
195
216
208
214
215
249
227
149
246
156
159
191
226
243
235
217
171
164
224
220
174
188
149
143
190
215
150
204
181
173
279
242
186
204
217
219
188
169
182
219
241
172
199
166
160
218
186
163
203
226
209
199
205
190
170
189
204
226
156
205
204
226
239
209
226
257
138
224
208
210
236
201
247
211
256
233
254
234
197
247
147
218
259
219
146
207
172
196
172
218
188
162
204
233
224
226
204
202
215
232
225
225
172
193
225
181
225
182
213
163
209
168
208
201
242
154
245
175
204
256
195
255
251
182
258
197
213
209
189
195
167
183
174
146
236
154
190
192
178
161
225
223
244
195
184
219
219
168
255
187
210
203
184
181
248
218
222
213
164
278
188
194
207
280
178
177
152
255
176
201
199
199
222
201
128
231
145
215
164
205
231
179
207
208
166
181
131
208
173
206
238
198
224
254
203
251
196
121
237
192
306
220
179
185
163
149
243
260
194
193
188
190
184
153
227
216
203
217
182
255
195
204
155
148
194
216
194
243
226
169
186
189
190
204
199
177
200
209
201
198
209
206
238
162
175
224
211
214
234
200
200
188
170
252
237
254
155
210
214
213
168
195
144
200
143
259
161
184
213
158
178
238
201
185
219
170
175
212
265
200
173
175
203
183
254
215
159
238
196
202
133
184
183
215
116
228
194
153
198
186
215
172
253
210
205
184
189
238
206
251
150
203
160
197
196
197
246
192
228
182
203
229
242
202
187
210
180
208
149
173
191
216
145
156
252
152
204
165
268
230
197
183
201
216
207
201
185
201
266
226
225
189
193
222
193
249
208
203
225
219
232
232
207
217
146
194
233
196
230
172
237
215
166
173
224
157
189
229
200
189
220
169
229
220
202
187
209
232
177
185
232
257
158
168
248
220
219
160
211
204
232
178
260
277
230
249
201
217
186
197
229
179
160
161
229
210
189
185
183
223
204
91
166
167
159
260
156
256
197
201
253
178
218
201
209
211
260
154
202
202
148
217
213
171
219
234
190
185
145
234
214
190
240
177
216
213
170
216
233
204
180
256
230
212
291
197
254
259
200
224
238
160
214
118
175
193
175
192
165
180
203
212
152
180
208
251
229
222
181
211
181
209
198
213
197
127
221
183
172
165
288
137
208
215
225
176
239
175
261
211
192
145
208
258
146
110
229
173
206
177
243
228
265
155
166
123
167
200
160
201
255
199
146
238
217
226
240
230
178
194
196
238
182
162
124
140
214
256
199
172
206
176
211
155
148
224
295
210
132
193
234
209
196
217
242
223
168
188
205
202
207
187
176
235
161
212
236
218
198
197
198
209
194
215
147
206
158
169
181
242
235
212
246
215
221
234
218
225
218
267
227
196
204
152
196
213
236
148
207
268
205
224
245
198
249
150
233
133
158
189
229
187
124
243
203
196
219
224
169
164
225
173
209
179
160
203
214
164
181
194
149
196
196
159
206
181
209
229
190
212
173
215
198
187
132
152
223
201
190
195
193
235
201
230
182
159
225
193
253
213
206
237
219
199
165
212
189
236
198
186
179
253
182
176
184
234
194
236
166
193
176
99
202
216
224
197
155
222
204
258
208
178
234
175
199
185
183
233
218
205
177
141
236
134
206
184
182
189
198
142
209
87
128
229
177
117
132
177
118
241
259
227
194
202
239
183
156
203
232
171
255
196
176
231
190
186
192
162
194
144
143
214
197
178
275
199
170
163
166
232
200
222
204
168
209
183
205
195
230
247
210
211
240
238
188
191
188
180
230
180
172
173
194
289
185
137
283
221
185
122
182
223
204
222
113
253
159
195
272
231
193
163
156
130
164
139
128
214
195
135
215
186
166
223
236
215
227
241
236
259
188
212
157
195
132
141
175
199
200
222
178
262
218
182
196
253
245
211
165
244
246
211
221
280
249
118
218
209
228
203
185
239
205
184
159
217
197
226
227
206
163
214
210
119
234
220
190
265
190
270
209
227
187
180
192
245
201
170
251
189
164
231
197
229
156
224
209
155
159
224
171
170
232
219
202
224
230
208
173
246
191
175
158
199
210
168
186
183
206
175
147
189
238
181
245
217
164
192
153
203
254
170
172
250
142
165
202
182
141
225
154
243
199
203
195
158
267
192
195
179
295
210
237
197
197
219
156
225
231
183
249
183
222
193
249
191
218
181
142
191
267
185
224
251
172
192
197
211
187
197
176
166
207
241
172
216
149
184
228
218
203
172
125
238
214
194
222
138
158
223
180
183
215
208
171
229
199
202
141
212
226
175
192
219
192
196
176
232
182
230
228
226
183
208
224
234
164
217
167
239
205
226
220
150
237
202
183
209
186
183
185
230
166
161
179
191
156
169
225
176
165
220
158
260
210
243
190
213
230
212
272
180
186
223
185
181
138
192
210
169
269
224
191
153
117
171
151
239
197
199
280
249
231
180
204
210
186
182
185
171
185
215
168
161
231
188
225
243
146
234
218
229
217
256
215
248
214
197
170
177
192
217
215
225
208
174
192
210
142
202
168
197
242
215
157
250
242
222
171
161
187
170
213
157
198
216
200
193
170
190
176
226
145
174
184
264
177
199
281
174
211
250
167
181
211
245
209
246
180
234
247
174
176
229
197
192
202
177
251
189
166
228
187
141
124
222
225
172
264
216
235
167
123
161
196
230
110
172
183
245
228
210
213
200
147
169
204
225
200
233
217
209
209
231
193
172
258
239
194
201
226
199
198
261
237
165
226
197
229
240
193
140
174
224
251
272
164
203
136
179
168
185
205
190
160
255
215
201
223
168
229
216
148
157
172
207
165
228
270
245
238
228
244
193
231
176
183
131
228
140
219
209
178
211
166
209
184
202
125
257
198
180
184
173
212
177
194
255
204
171
198
241
256
172
222
217
166
201
261
202
206
238
224
247
102
213
157
200
180
215
139
181
202
226
170
234
217
244
203
146
224
226
208
175
202
214
153
117
132
202
229
263
181
218
208
249
180
182
180
212
258
189
218
254
215
173
219
205
231
248
182
166
202
220
191
183
210
161
255
270
211
187
167
149
245
201
170
209
211
238
211
230
196
218
174
192
197
221
227
224
177
234
200
192
262
260
229
192
152
202
214
164
197
210
193
197
216
224
181
174
225
138
247
232
221
189
163
173
240
173
204
226
203
246
188
219
190
178
255
208
205
217
185
214
223
152
155
216
200
219
224
205
224
198
230
188
188
281
136
228
272
221
144
214
233
227
186
165
257
162
194
157
206
217
132
260
244
157
188
172
221
230
175
156
185
174
181
225
130
202
225
192
209
174
184
213
232
181
209
167
166
127
157
131
244
226
166
247
262
230
240
163
166
167
217
186
177
216
246
253
158
185
239
193
222
207
151
134
181
199
240
182
191
235
203
168
201
201
217
273
154
205
212
227
169
152
193
224
218
232
223
196
222
173
232
160
201
239
223
168
148
166
205
180
187
195
272
171
226
185
234
200
230
238
173
205
200
206
184
204
256
244
218
176
256
227
197
227
182
187
218
197
174
177
230
229
208
177
169
184
258
165
212
251
283
195
209
265
191
216
165
218
201
211
172
207
153
179
176
230
176
211
195
143
177
183
210
215
232
238
200
162
148
132
184
224
180
193
183
220
138
165
153
281
177
172
162
240
143
238
223
184
222
158
264
220
216
199
261
264
252
234
206
199
248
218
214
141
174
212
160
232
223
216
274
166
135
274
160
225
229
239
144
225
203
204
203
231
228
271
165
193
158
205
199
181
213
152
179
191
231
181
232
158
180
211
201
190
218
154
225
201
150
192
177
232
234
208
208
191
168
192
215
223
173
238
208
152
199
147
106
239
213
222
158
211
197
167
185
161
227
165
223
134
202
192
225
172
193
178
228
166
137
189
218
191
160
167
206
242
198
171
176
130
222
212
215
191
207
200
201
186
203
155
240
199
147
172
198
178
194
223
225
158
219
169
236
221
211
148
175
219
239
215
218
172
180
168
159
211
214
179
112
203
178
142
212
175
180
114
214
205
191
187
140
215
253
242
160
193
118
197
194
193
187
191
227
218
223
266
161
239
176
209
168
196
146
228
212
213
203
176
226
195
165
162
234
141
179
180
175
215
196
196
201
196
174
214
188
246
182
196
125
204
158
204
198
177
199
196
214
238
182
225
174
189
216
250
128
234
174
156
264
160
205
186
214
135
189
223
165
256
181
185
168
190
255
177
223
142
221
185
265
215
189
218
196
200
222
178
175
168
229
182
258
251
244
201
221
186
232
155
162
154
212
252
153
224
233
177
211
242
196
184
172
188
188
205
255
207
189
228
135
215
235
203
184
260
181
189
202
248
236
249
190
181
253
198
199
196
221
210
254
180
236
208
205
149
206
195
266
196
175
224
213
171
244
163
165
241
176
238
183
240
208
189
184
235
193
235
184
221
221
239
188
139
145
165
264
243
248
244
233
263
191
185
188
241
143
162
184
240
203
255
191
154
176
227
162
229
217
203
227
179
215
211
183
220
189
196
218
162
178
257
201
194
188
197
256
129
172
200
264
207
117
201
179
186
172
196
224
158
255
197
231
123
206
208
178
249
252
148
119
207
196
246
213
195
258
163
201
202
199
159
171
259
201
246
241
190
217
193
196
122
186
288
197
222
196
182
241
181
216
159
188
217
229
193
138
253
241
246
235
223
222
252
209
208
233
202
148
258
166
225
216
169
219
201
207
228
176
207
188
244
228
178
176
192
259
193
127
110
195
159
168
213
192
196
165
204
240
193
180
132
255
200
256
228
173
209
181
184
233
161
185
187
213
156
194
182
206
225
242
199
256
209
206
198
166
190
186
172
227
238
178
212
158
216
204
208
259
196
194
266
181
218
243
159
181
170
206
224
244
165
234
247
158
211
173
214
206
214
234
199
232
205
212
147
220
223
221
183
195
178
198
240
261
193
163
167
152
230
222
217
193
187
253
221
226
180
211
203
243
180
185
157
246
133
220
193
177
193
201
156
201
199
200
209
212
188
202
147
205
161
187
242
253
241
214
252
204
273
144
193
240
197
173
186
213
173
230
213
184
251
69
172
142
217
172
198
236
143
192
167
198
206
220
186
212
207
198
214
143
241
183
224
193
246
208
173
185
170
180
212
163
231
196
87
256
261
214
200
220
233
167
196
215
157
222
164
236
154
272
218
155
166
222
270
211
176
191
226
141
205
239
115
229
190
179
141
217
221
203
205
223
233
147
269
196
212
202
205
205
200
194
199
234
232
260
243
164
189
171
185
240
246
198
217
196
213
183
116
180
202
186
215
262
193
196
242
204
181
258
187
190
183
215
185
141
168
209
222
153
133
144
121
151
165
219
252
182
189
202
230
199
202
186
264
131
172
238
182
221
146
198
188
141
178
217
275
199
204
285
218
228
138
194
218
219
193
178
179
189
215
167
182
205
157
180
174
253
204
217
180
156
200
170
242
190
251
203
125
230
239
204
208
169
237
202
177
166
175
176
154
192
134
202
209
189
189
183
138
214
169
173
209
139
220
158
243
183
222
142
192
160
148
143
175
139
179
253
198
150
170
244
192
220
258
171
239
155
168
231
192
207
159
182
204
212
231
229
241
180
225
121
262
256
229
238
180
155
201
150
234
175
198
196
190
193
240
244
153
236
253
179
236
260
136
230
187
232
215
211
153
189
226
193
184
211
219
250
188
149
246
179
218
189
172
193
230
206
210
212
205
219
182
187
164
176
196
163
194
217
159
216
192
223
151
129
205
249
241
171
246
198
217
203
175
165
211
146
126
210
189
143
229
194
210
235
220
171
222
178
208
193
232
210
250
182
220
202
223
169
159
203
249
238
184
150
240
188
222
202
206
179
208
190
195
225
183
254
104
131
179
272
190
177
231
168
182
257
155
232
219
206
197
191
238
226
142
167
189
229
157
190
221
202
241
228
193
251
158
201
199
226
147
147
171
191
208
163
163
204
215
158
201
220
167
254
222
141
234
182
173
229
216
194
228
230
158
191
191
187
171
292
117
192
162
188
153
199
156
205
172
191
156
207
193
193
128
182
171
206
224
172
224
253
191
220
164
160
190
247
167
149
207
142
171
220
93
174
210
206
183
183
213
168
177
188
130
151
188
206
237
236
170
194
179
179
214
186
271
215
174
231
199
177
199
202
149
209
204
266
101
148
181
177
243
244
232
222
208
212
210
211
194
177
181
254
171
181
167
148
204
194
162
223
232
250
266
174
232
226
239
194
236
216
210
138
230
178
218
223
159
249
227
196
213
214
233
155
160
173
249
253
221
169
186
213
131
198
198
201
224
233
220
245
191
241
202
145
196
227
207
217
182
169
255
233
199
213
271
231
201
166
154
226
206
223
174
174
200
201
122
176
204
183
209
199
181
157
258
144
245
206
183
192
225
212
199
168
190
170
172
208
236
202
211
204
147
275
250
213
247
252
141
191
273
209
195
183
180
206
155
206
140
163
232
153
189
192
178
174
288
191
192
173
215
193
197
220
191
152
178
221
224
218
221
213
283
218
234
169
195
219
194
208
186
167
145
232
179
215
176
170
237
196
214
232
211
190
217
173
164
154
159
188
206
181
199
190
177
207
153
139
152
258
229
214
242
249
203
246
133
212
168
231
164
192
257
154
179
162
204
253
166
247
172
243
228
191
208
220
179
166
168
262
264
153
137
225
218
237
217
236
198
187
252
217
125
208
179
216
209
224
182
207
183
218
193
242
207
168
221
180
193
226
165
255
248
170
213
237
198
213
167
206
229
194
214
126
157
233
160
239
236
206
217
197
104
187
240
245
151
204
270
199
181
241
202
237
203
214
225
183
215
267
179
194
207
210
135
217
217
166
231
175
201
236
202
248
194
217
184
238
177
142
188
250
218
203
218
235
160
250
210
130
175
194
260
230
210
193
176
221
268
219
165
258
208
162
223
187
195
242
193
162
194
193
199
234
259
154
158
190
202
229
144
184
230
201
143
276
144
136
199
209
143
208
200
233
175
104
204
232
210
190
194
152
170
246
157
160
246
125
163
169
211
168
178
177
214
216
241
235
195
197
254
149
229
160
182
182
197
175
188
181
184
203
218
190
195
181
242
150
193
198
232
192
230
203
223
197
226
250
234
222
215
232
226
168
185
253
257
216
201
189
182
207
166
209
172
155
212
177
184
142
122
208
201
171
206
179
180
211
158
188
181
157
204
203
250
262
231
222
191
228
224
214
186
171
213
251
135
218
157
167
141
220
192
220
140
154
176
101
183
182
265
217
230
230
242
214
244
248
205
170
176
187
172
170
188
218
257
188
260
227
220
136
178
154
172
293
185
201
159
270
250
244
217
197
176
248
179
188
206
158
194
225
196
219
248
194
170
227
222
207
212
237
173
169
172
187
220
142
179
190
151
182
216
181
189
179
188
270
293
167
211
233
204
169
165
274
197
222
202
257
249
226
251
193
146
237
166
180
78
253
134
164
209
106
169
157
173
154
191
170
198
169
227
264
203
266
178
142
225
131
195
120
205
219
233
225
205
193
210
209
235
197
223
175
196
205
178
178
163
237
154
190
193
173
260
209
202
233
135
229
224
229
165
217
200
185
116
157
186
200
212
257
253
183
158
170
196
239
153
209
240
244
155
170
250
168
206
244
206
205
161
197
184
190
221
217
243
201
234
199
164
181
185
196
239
258
206
181
159
213
145
232
192
207
140
218
211
221
221
172
209
174
161
220
136
193
186
220
246
176
242
209
243
177
153
162
194
147
164
152
148
207
226
217
202
157
227
249
247
204
208
167
177
217
219
192
223
203
243
217
248
185
188
160
183
175
205
202
258
196
204
239
191
139
242
209
185
111
225
200
182
224
237
186
236
245
237
220
214
191
238
145
237
170
185
248
219
186
250
145
171
229
170
132
207
217
189
209
270
209
199
188
201
253
176
245
196
202
194
238
182
217
186
187
185
138
175
216
274
208
213
177
158
146
217
202
166
214
141
178
91
189
176
140
137
228
193
190
209
236
228
123
131
118
199
226
147
188
205
218
173
273
258
215
199
191
163
196
173
185
201
223
199
215
148
214
186
153
201
219
195
251
151
172
200
152
223
225
222
183
156
191
169
175
183
159
217
187
202
244
226
240
249
148
191
244
190
258
189
174
177
155
161
233
219
160
212
205
222
203
202
204
212
177
238
234
227
250
195
210
213
209
200
187
244
188
194
208
182
189
214
220
194
267
210
206
180
183
199
232
188
152
197
234
205
202
195
158
159
172
205
176
138
188
183
231
201
205
220
275
237
188
243
197
163
236
229
207
242
228
172
195
213
203
246
196
163
135
209
150
167
175
127
158
218
271
114
171
236
212
183
216
167
230
201
221
197
182
184
223
239
169
159
233
219
192
212
236
226
179
204
212
262
220
213
217
237
179
166
204
236
245
165
117
192
222
207
160
160
261
205
162
223
181
199
169
195
163
156
215
180
156
225
187
224
239
241
249
181
222
249
190
189
201
164
153
125
218
188
185
183
183
200
128
161
193
149
189
229
220
235
158
162
196
206
177
192
251
194
175
214
171
247
147
193
166
102
173
203
196
182
205
218
199
175
175
267
197
200
210
167
209
182
189
236
206
150
230
222
211
175
233
239
218
185
182
170
190
151
180
133
228
135
222
154
180
121
244
228
214
195
218
194
187
176
203
227
221
184
201
184
148
200
170
181
164
235
240
192
205
266
215
234
196
164
218
108
244
205
206
193
237
191
163
195
191
172
179
188
200
192
233
197
236
147
181
294
230
191
192
139
209
236
152
182
140
198
194
241
226
182
173
187
179
190
282
223
187
148
159
140
207
254
199
227
174
191
238
165
188
176
213
232
196
249
222
232
228
235
227
188
243
198
132
157
185
173
199
173
231
229
166
180
228
175
191
143
176
205
222
168
229
163
118
184
214
246
225
180
191
225
185
219
216
174
192
268
211
197
231
220
187
205
244
245
209
161
192
243
203
166
186
187
213
156
198
215
238
163
260
196
245
231
143
248
216
164
208
186
247
227
182
238
192
219
240
176
221
157
235
121
193
240
199
243
200
141
125
222
185
176
180
226
228
218
268
215
223
201
164
188
210
190
206
219
203
174
233
219
180
194
204
239
153
206
236
187
169
227
190
117
217
113
232
214
155
196
189
216
193
204
204
156
229
220
188
218
239
240
218
152
253
213
223
206
246
208
237
219
237
200
198
241
160
207
265
260
200
159
209
156
196
148
191
207
213
156
154
221
204
174
206
194
233
204
183
245
214
221
213
212
214
182
214
196
174
190
246
202
231
164
195
221
146
161
203
140
213
169
182
175
205
230
208
184
173
138
208
132
199
207
167
189
244
214
174
192
207
185
169
198
198
178
247
161
236
241
243
209
189
195
240
186
157
215
153
181
220
216
160
236
175
240
156
188
164
199
190
257
232
219
178
180
203
224
160
156
151
185
250
225
156
206
228
168
205
153
175
166
207
200
229
154
186
227
238
202
210
179
181
213
214
159
206
200
170
204
210
152
215
179
152
182
162
196
189
152
143
199
185
189
121
180
139
186
198
223
240
253
208
200
157
185
183
230
271
145
140
170
164
242
254
213
230
202
187
115
219
175
198
218
155
224
163
171
196
189
190
173
228
211
140
222
228
124
185
202
196
180
204
177
244
195
192
211
185
181
173
206
215
218
266
208
208
238
197
130
228
251
243
271
164
287
196
225
234
205
157
219
154
225
152
215
230
191
201
205
192
224
182
184
195
141
222
224
287
191
191
242
230
241
199
215
210
198
186
203
191
210
174
214
177
143
212
204
226
185
210
253
212
229
186
181
212
206
169
185
222
189
181
198
237
155
197
156
221
218
209
210
179
194
181
203
191
257
201
208
231
181
227
157
190
198
184
213
208
225
203
215
220
241
206
233
181
215
148
198
261
203
215
210
194
217
151
209
173
249
239
209
176
232
209
132
200
193
201
259
217
171
194
245
234
251
200
152
249
206
228
190
260
189
253
161
157
212
199
241
213
233
202
240
143
172
268
155
269
172
174
201
196
178
219
152
188
157
170
241
237
193
221
239
170
152
257
242
208
244
226
149
243
191
226
136
195
178
229
243
217
195
176
219
210
244
101
260
222
256
191
138
233
238
175
171
238
128
186
210
207
173
235
229
178
197
209
195
243
250
176
163
202
205
157
240
148
125
178
204
185
204
268
158
201
154
131
194
168
152
186
174
166
198
226
172
196
274
218
154
218
184
211
171
165
249
225
205
205
178
210
213
203
193
235
177
176
168
247
207
237
194
181
109
154
177
207
134
164
168
264
225
193
228
213
177
211
227
140
197
187
198
223
186
205
168
234
211
187
231
178
212
245
159
183
243
181
190
228
228
256
241
233
199
221
204
216
189
243
239
246
210
135
194
223
212
186
232
176
240
181
208
189
256
160
208
195
229
161
188
207
223
221
171
221
128
189
208
222
198
170
140
148
197
223
216
237
207
149
164
210
236
243
230
244
274
223
205
202
288
226
215
204
157
186
251
185
145
207
196
190
239
168
145
213
186
216
192
252
218
227
234
217
197
243
147
227
141
231
177
230
187
226
164
124
191
183
214
177
184
213
211
198
171
238
201
200
213
177
208
180
164
221
174
245
190
179
217
233
226
233
152
218
185
195
186
201
188
171
212
194
207
250
160
224
228
181
205
183
186
202
181
239
213
128
185
146
110
177
121
258
145
164
241
178
226
197
214
218
159
193
160
177
206
153
201
204
180
217
215
203
116
188
246
190
215
193
233
246
189
256
201
134
197
209
185
78
227
188
217
141
204
194
202
158
222
218
192
202
193
174
188
166
208
214
193
213
198
249
196
181
170
259
169
188
203
188
232
200
226
229
140
227
200
220
175
231
174
202
217
221
220
191
233
194
212
202
184
186
197
146
258
243
186
242
227
246
202
191
131
172
177
159
195
143
159
185
170
149
174
194
215
190
197
229
200
183
209
137
239
161
208
145
193
196
200
207
150
236
161
181
174
199
158
123
183
208
151
245
157
132
160
201
209
211
164
261
248
194
202
167
143
205
171
239
164
228
283
226
222
222
227
245
232
171
286
205
263
184
187
256
169
192
191
262
213
195
225
182
195
142
247
161
164
191
212
175
218
262
221
185
208
142
153
271
172
217
193
213
165
235
185
191
209
259
211
179
275
225
220
253
191
203
144
233
195
212
224
167
155
206
266
174
208
140
179
174
206
181
202
163
212
246
203
251
190
284
181
172
207
187
257
223
201
273
184
111
193
218
254
149
170
187
174
214
254
221
262
227
215
217
233
205
151
212
229
174
175
206
241
188
173
216
226
154
242
246
231
213
188
181
196
178
154
203
173
207
134
170
184
62
232
200
236
203
140
167
180
208
223
191
205
192
171
203
157
187
205
205
199
235
217
218
279
264
123
237
213
221
191
179
183
189
228
207
206
158
109
210
211
170
222
203
209
162
214
163
204
168
202
157
203
217
205
173
207
180
164
219
183
201
117
141
212
179
148
164
194
192
178
227
240
246
182
198
171
182
241
213
236
175
193
219
199
233
192
164
210
252
154
168
176
261
219
192
207
200
230
153
167
251
199
213
196
281
253
176
183
226
213
220
166
214
172
211
187
178
167
179
209
182
157
237
203
178
241
221
222
227
240
141
231
175
167
213
183
192
154
266
228
223
204
174
274
244
229
234
188
198
174
182
138
170
222
251
211
235
218
223
209
209
193
212
182
169
196
177
190
190
248
224
200
218
180
216
192
207
139
187
175
178
214
149
191
243
197
136
177
241
146
257
163
225
160
191
135
186
202
265
181
222
199
219
191
150
207
210
210
218
215
194
231
215
204
255
228
211
240
168
199
189
238
217
183
226
128
184
231
239
134
179
174
218
241
233
254
200
164
193
159
224
219
187
199
238
206
229
183
217
190
175
196
224
198
192
139
190
191
207
210
193
229
197
183
264
232
198
213
160
149
207
167
224
196
237
146
166
228
230
201
159
210
132
219
220
211
179
211
196
225
245
237
214
234
224
264
172
224
160
205
207
243
202
240
189
216
199
197
264
212
111
199
208
179
171
210
194
220
260
230
252
200
199
191
201
202
200
152
171
215
266
279
214
149
194
191
195
196
153
154
160
212
222
184
210
192
155
260
186
204
233
255
187
216
214
215
214
178
223
198
222
128
205
151
247
144
151
234
202
254
201
222
192
145
216
257
186
210
203
257
161
145
198
224
242
238
246
201
212
152
257
188
234
161
170
161
213
111
204
249
189
310
204
246
212
192
131
268
248
220
182
148
167
128
202
235
245
180
168
243
209
216
180
155
134
201
191
178
192
192
188
230
178
197
205
173
102
241
207
193
258
171
251
194
251
209
216
235
239
273
179
205
185
214
163
213
188
213
158
240
212
217
225
207
212
268
211
163
198
240
159
200
168
153
281
185
218
193
206
182
193
174
204
237
223
147
143
244
271
194
244
260
227
240
220
193
188
230
232
159
135
154
240
185
188
197
161
235
177
166
231
194
257
165
233
183
185
236
154
206
249
203
199
242
202
151
223
210
201
250
215
203
176
168
212
247
241
179
168
236
226
242
171
234
236
165
204
173
187
188
211
215
186
204
176
230
157
166
259
195
164
169
220
214
161
189
164
215
226
229
245
206
224
198
149
176
219
172
231
250
209
279
224
169
213
196
212
206
266
195
165
208
203
193
240
210
209
176
198
227
215
215
226
188
143
205
210
251
155
226
177
194
144
164
188
134
232
204
180
182
206
205
211
211
202
212
189
267
151
155
200
214
156
248
139
217
228
199
191
179
242
171
234
204
188
202
240
258
263
166
218
188
242
212
266
195
176
234
174
219
191
219
208
190
240
201
182
202
178
169
234
248
181
227
176
177
165
211
204
225
185
228
248
191
218
204
156
180
233
245
208
190
213
145
207
218
140
182
147
167
130
248
218
176
207
208
194
181
148
164
248
250
266
226
233
219
192
186
161
251
189
182
249
188
197
186
224
227
171
191
207
173
215
254
238
178
299
171
181
209
225
213
227
163
179
175
195
227
203
208
199
198
132
219
173
230
226
153
230
228
232
252
221
192
222
152
203
144
227
142
213
255
197
227
193
191
234
225
198
239
242
261
242
184
174
232
167
163
110
179
188
230
186
165
274
202
178
223
232
247
253
234
261
195
227
189
231
189
202
202
183
176
237
211
290
156
214
189
211
187
180
224
207
215
186
249
252
267
210
116
197
173
195
134
190
223
160
236
237
167
215
146
192
165
182
201
152
221
185
190
187
185
216
165
196
167
226
193
192
215
186
203
185
248
199
202
164
205
197
245
169
232
206
157
231
167
213
240
236
190
166
198
197
242
164
186
225
228
201
203
216
181
175
156
167
249
242
153
195
194
197
211
177
239
264
202
140
215
198
213
230
170
219
132
283
208
166
192
223
211
230
215
180
123
153
227
147
264
210
178
267
201
222
210
164
221
223
221
201
250
185
192
224
191
221
217
228
166
235
186
175
199
221
173
251
184
231
156
174
228
190
207
217
257
191
194
192
141
173
197
163
242
209
223
182
219
219
228
247
205
186
136
243
226
210
220
143
197
180
194
176
146
202
154
233
148
253
271
206
253
178
165
212
219
153
176
249
249
237
214
217
206
172
152
223
262
217
186
208
181
220
182
230
233
270
197
168
201
187
169
223
178
254
174
193
178
167
183
215
152
187
200
190
196
168
208
182
275
247
157
204
238
138
227
173
167
202
191
135
225
248
189
241
235
225
229
224
156
183
160
118
168
227
197
185
187
218
240
251
181
145
255
177
207
191
179
208
197
232
226
129
176
246
213
224
227
252
184
151
243
275
219
195
184
204
156
212
251
188
201
211
216
231
202
154
223
154
224
183
103
215
133
231
217
233
220
181
214
145
173
212
296
229
199
199
195
159
157
169
192
175
175
216
198
283
201
181
249
222
222
180
159
203
229
231
177
204
181
268
163
202
192
159
218
147
175
136
210
221
186
218
181
174
246
180
259
135
207
223
175
213
178
265
165
171
220
225
191
186
156
143
161
243
200
218
224
127
239
170
126
189
283
235
207
295
178
188
235
218
191
229
222
211
218
207
209
226
192
204
269
202
168
153
223
194
190
199
192
180
234
212
200
177
264
192
222
202
180
189
200
204
207
183
233
233
158
255
218
204
179
152
158
205
246
209
238
151
174
219
244
182
187
246
226
184
162
226
179
157
218
233
212
207
179
224
146
230
154
212
162
252
280
175
231
197
265
188
106
202
190
256
146
208
207
236
178
196
227
219
201
242
274
194
173
257
153
267
166
212
197
193
159
180
211
197
204
189
231
209
227
227
245
257
196
215
170
229
165
200
228
209
225
186
157
203
182
143
121
229
232
172
205
215
179
238
216
246
233
195
230
263
229
200
145
233
222
166
217
203
196
290
203
239
182
163
225
182
200
278
169
123
210
207
173
200
251
149
206
195
212
135
206
149
214
230
226
210
214
181
223
187
180
241
230
160
211
270
199
210
185
122
178
216
195
220
254
198
217
262
190
182
233
118
210
131
156
205
184
189
237
192
228
186
217
154
163
186
231
212
208
176
175
180
236
168
179
181
198
208
297
225
237
137
228
271
177
198
193
277
208
228
187
190
155
212
229
199
112
199
158
215
255
164
278
149
198
193
188
251
123
242
193
195
224
249
200
228
169
231
199
180
226
179
222
202
191
121
157
224
184
166
209
235
175
254
226
193
219
216
162
251
208
192
243
252
210
220
187
208
199
137
220
231
251
225
166
175
183
197
168
178
190
202
136
159
235
227
268
206
205
155
146
185
241
239
205
220
167
154
214
207
172
188
177
207
180
216
190
217
215
194
224
201
196
100
149
186
158
229
189
170
160
169
137
189
239
221
222
144
214
216
241
208
210
224
172
214
223
146
224
203
251
157
230
226
239
224
151
184
227
173
215
221
231
190
82
203
207
205
256
183
167
194
168
195
177
252
183
210
172
205
276
191
226
234
193
229
192
237
167
189
112
197
273
155
187
252
224
199
258
128
225
173
220
195
199
219
235
212
153
198
217
134
203
212
253
239
191
198
226
206
206
119
208
215
243
177
227
129
240
198
216
167
244
211
168
203
177
208
243
188
267
192
196
183
161
160
179
257
161
223
220
157
199
189
178
169
215
217
177
232
275
179
217
257
184
187
235
241
165
238
237
255
235
173
213
223
178
207
179
241
218
190
212
211
192
182
173
193
214
141
269
213
175
227
242
235
170
238
186
222
202
214
164
172
133
223
199
226
252
217
210
208
175
142
275
210
140
222
192
250
250
187
208
199
199
187
134
185
224
230
141
128
179
228
234
164
243
165
185
256
177
224
196
157
201
172
212
213
233
192
123
176
202
182
215
228
217
241
190
149
191
207
239
157
101
239
139
191
218
187
190
202
170
213
229
182
169
150
179
219
213
211
220
187
249
217
172
203
185
208
216
208
228
115
225
226
198
191
187
183
187
216
242
169
236
178
154
121
201
182
214
214
182
158
216
162
178
209
167
227
204
158
175
259
219
204
211
200
223
209
209
159
183
234
150
190
234
165
175
199
204
207
189
224
256
154
236
207
193
204
215
145
276
185
232
202
262
184
224
169
191
206
200
227
150
231
252
190
237
165
162
218
170
182
229
183
203
211
230
192
203
211
205
219
150
184
163
172
214
182
179
220
158
187
240
163
201
207
229
207
238
234
165
175
169
139
196
166
209
189
227
226
212
199
219
217
207
245
237
182
213
118
252
203
254
244
139
253
220
177
126
209
217
155
132
182
177
197
193
205
171
210
167
199
185
262
218
208
195
153
182
197
213
207
210
196
136
173
196
214
189
218
192
266
224
233
204
166
210
182
170
189
182
202
209
205
247
183
298
153
191
229
175
159
184
205
235
179
136
192
206
188
194
190
183
231
217
165
215
202
231
155
176
211
236
158
189
176
238
193
258
249
233
198
217
196
164
149
213
231
202
187
205
136
196
205
213
214
202
220
207
196
231
223
226
248
166
188
164
233
191
227
156
190
173
232
232
196
169
266
222
231
136
166
270
126
188
252
221
246
217
216
197
231
244
229
222
186
207
241
227
235
177
121
220
239
223
190
139
183
145
147
192
198
192
159
206
185
194
207
257
265
211
215
187
166
238
144
215
145
196
165
197
244
199
226
190
164
173
181
182
149
241
188
256
254
202
191
191
239
263
167
199
162
251
179
199
192
197
191
245
186
186
169
166
180
209
162
206
171
161
200
195
195
205
167
201
182
189
175
204
151
180
209
142
173
205
183
229
158
203
129
172
227
174
174
229
194
209
145
169
128
211
227
206
193
154
214
226
200
204
255
167
117
254
234
194
177
205
198
239
217
164
175
235
217
185
192
218
159
165
210
197
209
183
201
169
221
221
146
180
212
115
223
214
167
220
210
156
203
207
173
199
192
202
180
239
129
212
190
138
169
138
218
174
187
153
203
199
238
203
211
205
242
233
267
142
202
136
198
164
265
197
193
167
250
206
242
159
171
207
181
187
213
187
158
173
242
271
217
212
180
130
142
194
140
225
163
171
236
240
213
170
194
171
190
235
185
136
171
236
213
166
185
178
183
239
175
167
176
194
170
206
127
174
222
182
216
154
216
184
211
185
158
207
240
189
172
249
193
259
194
163
166
191
179
236
149
234
132
208
145
256
211
208
201
154
230
243
147
232
157
182
185
234
239
229
132
195
232
249
201
169
222
266
188
205
222
206
198
166
232
181
141
154
227
183
143
185
227
231
187
201
182
188
182
136
232
206
202
263
222
210
146
171
129
150
179
227
136
175
216
191
160
200
217
225
184
227
244
251
176
288
266
156
203
227
150
137
181
179
216
182
164
229
197
194
250
207
239
148
222
233
210
250
235
211
214
211
235
199
210
236
210
175
196
175
228
221
159
182
239
186
143
249
213
128
179
237
206
225
255
214
236
200
223
190
222
203
147
136
203
236
196
154
181
274
228
201
215
200
172
262
231
172
209
187
139
264
220
170
136
213
144
197
155
216
178
184
204
186
197
131
226
188
188
227
184
186
219
188
172
166
234
250
190
254
188
253
232
205
130
218
162
246
197
228
203
180
169
98
229
205
102
252
210
210
231
239
212
224
151
204
204
205
211
174
241
224
165
182
242
176
181
221
191
186
224
198
212
247
174
192
169
250
200
222
186
172
191
196
161
162
168
157
250
215
224
163
185
170
249
228
198
205
253
204
206
200
215
232
219
221
168
195
237
233
263
237
236
248
180
150
212
190
190
249
212
248
251
148
177
188
238
173
225
191
277
183
209
194
256
126
218
160
251
188
195
190
211
242
213
189
137
212
192
198
204
212
209
231
220
207
216
234
203
127
186
216
183
238
175
206
225
175
281
230
220
254
168
203
164
227
191
269
184
209
195
210
227
161
195
157
184
179
270
257
238
201
188
234
173
201
183
201
231
228
233
223
226
178
221
213
136
193
218
179
247
179
219
208
196
212
231
219
211
219
190
239
143
172
213
202
233
198
190
201
206
265
227
208
140
189
190
215
202
180
203
178
211
237
134
211
213
159
174
195
251
199
233
253
246
184
204
212
189
186
170
215
184
187
231
192
234
237
192
246
235
183
190
206
194
187
202
201
167
184
192
187
182
239
208
140
222
200
228
171
135
172
207
196
185
239
160
179
210
217
245
178
210
174
263
229
222
223
190
186
179
160
178
239
226
205
234
196
228
223
149
112
161
268
191
226
178
188
195
238
141
145
194
165
215
184
223
196
177
173
222
216
136
186
200
161
275
162
188
230
180
225
207
177
179
225
183
182
213
158
221
184
244
194
254
200
233
171
153
283
212
149
217
225
219
171
224
157
216
190
223
175
189
170
167
177
166
225
182
176
271
252
180
207
291
193
195
208
250
256
225
260
225
194
179
187
195
240
150
201
197
202
199
187
207
213
209
148
126
153
294
192
220
187
173
114
199
168
215
260
192
226
195
263
202
224
199
248
247
233
173
186
230
146
151
194
224
221
215
196
226
259
172
182
240
209
188
177
168
168
244
177
187
258
170
212
174
205
172
225
150
240
174
93
167
218
222
158
205
156
233
243
166
230
184
284
224
206
139
154
145
214
200
208
161
216
171
143
186
231
211
195
179
231
220
294
194
164
194
215
182
169
208
220
233
150
201
209
247
187
212
218
228
166
174
217
218
222
159
148
237
177
189
138
232
259
179
238
167
173
188
175
213
209
216
214
176
216
244
172
200
200
216
217
195
181
263
180
200
202
196
223
171
197
175
212
161
239
187
182
267
230
224
166
258
194
241
220
228
196
181
232
184
148
199
280
190
197
194
204
140
219
110
132
202
222
224
193
216
241
170
247
209
164
177
182
160
160
160
229
178
218
197
267
197
225
237
175
159
216
117
197
219
216
210
278
199
230
250
198
132
205
172
187
225
177
218
189
252
234
233
237
174
215
151
206
222
194
186
148
222
185
184
174
194
177
234
230
173
220
193
236
166
152
227
218
210
223
244
211
188
202
156
199
196
203
201
163
204
192
221
234
207
206
180
168
192
186
167
191
224
168
273
228
165
195
183
302
197
165
229
212
190
250
193
131
225
174
266
205
247
231
155
173
150
216
218
167
185
194
196
266
180
244
194
192
170
206
202
214
223
230
230
230
208
172
181
215
167
167
168
213
215
128
175
213
227
209
236
146
231
181
218
202
167
178
135
218
154
106
217
229
185
163
173
225
206
162
252
224
270
165
198
179
184
205
258
144
216
114
209
199
123
222
215
190
165
132
184
228
173
224
234
194
218
200
254
211
199
227
223
169
180
231
230
225
168
250
210
154
184
201
219
206
195
236
160
227
182
177
228
197
144
227
215
204
234
179
204
245
246
250
182
236
203
190
206
151
192
164
207
205
210
191
194
167
193
245
173
158
187
176
189
223
173
231
257
203
173
233
161
192
142
178
243
234
181
218
187
240
218
183
183
242
146
227
227
131
166
210
192
199
187
191
161
220
220
189
253
207
174
183
228
103
143
206
216
221
199
211
192
193
261
205
182
211
216
155
188
173
206
179
208
217
142
174
196
197
137
152
248
236
160
205
196
177
218
235
148
142
186
138
158
178
213
141
210
213
138
247
192
208
151
185
209
215
217
189
161
208
186
227
226
261
200
181
216
179
164
172
206
123
259
174
183
230
203
187
193
216
259
253
208
194
212
228
212
204
176
224
181
181
268
182
216
210
186
215
169
163
175
270
185
196
210
224
203
185
228
217
259
216
177
184
205
196
153
158
179
185
213
236
250
195
157
203
167
168
259
249
255
207
205
179
206
189
156
186
202
199
263
230
184
152
214
176
207
234
201
188
189
197
191
232
259
160
229
186
188
228
210
231
160
219
234
155
219
244
209
247
206
224
147
208
175
215
211
219
224
172
179
204
225
187
206
251
206
185
181
270
178
187
201
164
241
188
187
208
172
212
116
188
243
212
231
162
182
162
169
173
264
268
197
227
200
196
197
200
174
229
219
222
132
132
177
196
211
189
209
233
198
157
189
248
122
210
174
225
201
210
154
265
128
171
199
204
194
179
193
178
169
235
188
196
202
264
249
100
182
185
206
221
176
195
182
170
179
222
188
182
221
234
222
174
195
292
195
272
166
195
195
219
242
220
241
222
229
217
126
181
225
210
135
203
187
204
208
169
158
158
192
243
209
177
192
198
199
239
194
251
245
199
246
259
175
145
254
165
147
166
195
254
161
194
168
201
213
283
214
175
127
239
250
194
191
172
241
220
177
198
166
225
177
235
201
156
171
215
215
244
145
258
221
167
207
211
189
228
215
234
209
140
163
170
266
211
160
192
192
204
194
241
232
117
160
199
261
161
189
182
175
140
141
204
201
212
176
207
212
239
241
223
276
191
268
190
195
187
154
244
156
151
179
146
210
225
104
234
207
110
179
185
239
167
173
222
280
162
245
208
242
182
245
216
233
223
222
142
222
235
172
187
188
143
243
208
214
242
226
208
207
149
223
196
124
145
162
224
227
162
179
233
188
215
152
176
172
196
161
176
190
240
219
193
193
164
149
177
214
213
206
197
227
182
253
168
210
226
259
242
270
201
236
186
133
198
252
210
131
181
214
217
127
223
188
236
197
203
195
166
198
232
262
160
229
203
176
184
254
273
155
243
202
173
158
207
132
230
266
181
95
236
184
160
194
168
223
203
150
194
155
165
183
193
224
212
167
247
235
232
270
227
183
110
210
211
182
158
178
229
222
202
193
239
214
192
260
190
118
228
198
127
188
166
150
211
202
196
245
208
138
155
259
192
224
134
153
175
203
213
217
227
180
240
226
209
215
220
183
188
276
289
177
131
155
184
247
195
241
186
238
196
207
141
168
218
228
185
192
302
211
189
228
206
229
244
201
197
187
225
235
155
227
204
239
186
150
209
248
206
230
238
208
197
208
162
248
174
282
179
236
212
183
135
216
135
149
175
226
187
245
169
181
170
206
175
217
182
133
151
185
172
204
205
176
230
194
195
278
202
191
192
251
218
243
206
230
210
163
209
187
142
217
173
185
166
255
166
194
255
238
139
214
146
211
155
227
152
203
204
189
226
240
185
234
213
173
241
250
194
210
200
159
203
237
203
201
210
237
170
227
204
221
224
209
211
209
165
256
237
241
163
231
187
194
218
218
160
179
180
203
219
160
251
183
217
202
192
153
212
217
151
188
178
166
248
205
230
209
132
255
237
205
206
209
189
255
185
244
185
239
136
196
143
220
181
222
207
186
145
228
231
202
231
170
205
209
178
199
179
175
200
204
212
158
178
157
216
207
177
264
192
163
257
201
131
239
192
219
218
139
171
229
255
232
176
219
227
222
249
198
211
217
207
222
219
254
213
228
143
216
213
218
168
180
176
193
183
220
234
145
191
210
212
162
198
192
170
185
185
217
128
167
197
225
194
106
184
165
201
165
157
196
188
206
119
225
236
163
173
263
212
164
257
213
225
168
202
246
271
256
180
108
185
225
140
167
220
260
151
213
143
174
209
181
186
228
205
144
182
171
144
175
205
225
186
225
194
142
201
230
220
185
157
211
194
256
174
219
198
181
275
177
211
211
223
221
227
184
126
190
244
205
200
177
187
220
184
214
201
256
223
159
226
229
139
161
205
216
203
199
154
181
211
203
170
200
227
210
204
195
201
115
123
183
192
172
228
251
193
172
241
204
185
207
189
208
145
160
192
225
254
197
155
165
204
229
174
198
228
197
195
216
252
257
257
219
199
232
198
189
252
231
220
184
245
152
193
195
179
203
153
212
146
221
225
199
203
217
241
228
178
219
189
210
205
137
255
149
220
206
196
169
189
233
134
257
208
174
150
201
187
199
200
145
226
210
163
144
252
259
229
224
170
172
180
215
226
148
195
195
182
203
217
175
202
228
209
198
181
217
198
308
180
240
226
186
156
211
144
219
250
223
249
205
218
235
197
254
227
164
206
173
189
233
185
202
177
171
161
187
248
177
187
156
254
159
164
202
220
210
198
186
215
202
213
254
95
219
187
238
189
176
217
175
147
224
146
213
211
259
225
129
194
174
189
177
198
199
185
241
186
178
255
261
233
165
161
241
196
245
160
201
202
162
197
232
185
229
195
230
155
124
203
155
184
211
225
268
188
160
181
222
193
194
209
152
226
217
219
176
270
217
204
149
184
197
190
193
190
182
188
221
156
252
212
185
206
156
208
179
184
234
176
142
180
185
198
250
176
244
144
200
173
148
220
197
143
193
222
208
197
228
235
211
207
186
260
195
180
202
176
210
184
210
292
212
218
196
172
166
182
196
165
220
201
247
128
174
195
235
247
223
152
217
184
224
171
186
137
241
204
181
200
213
202
252
170
148
173
236
182
193
260
196
207
147
232
171
223
165
217
166
211
173
195
148
261
183
161
182
186
200
177
166
223
214
210
197
185
193
212
207
198
143
145
197
183
166
224
246
229
206
190
197
264
195
192
207
175
182
256
225
220
139
179
172
135
233
243
228
228
219
183
151
240
184
179
169
192
148
213
219
198
236
153
178
145
198
189
228
221
142
214
193
138
216
191
188
190
226
199
270
234
232
204
252
226
169
229
109
204
246
130
220
199
200
210
241
188
248
184
167
247
226
199
247
160
216
193
204
190
265
238
170
146
227
173
158
178
197
147
182
244
192
196
214
136
274
213
218
200
145
194
216
181
238
193
216
183
222
241
236
172
212
162
209
196
178
256
195
217
295
176
163
163
226
227
206
197
173
234
126
213
153
109
170
190
202
198
204
262
264
134
191
211
223
181
147
179
239
205
198
214
253
135
230
208
232
182
173
209
172
160
227
224
177
222
175
269
221
223
174
182
161
244
193
200
248
236
259
226
187
222
262
212
228
236
154
190
256
215
183
106
189
215
230
156
123
186
191
169
216
232
184
193
204
197
216
233
241
219
214
141
186
170
161
144
199
173
165
171
159
283
255
195
203
144
238
193
185
200
265
178
274
191
216
200
125
182
207
172
232
231
206
215
233
203
181
183
230
198
143
230
160
222
230
219
191
205
214
88
272
186
187
205
197
241
222
223
211
177
128
183
143
244
247
203
171
184
213
227
192
235
160
168
275
191
135
213
214
175
154
203
254
172
175
221
201
204
172
228
264
238
213
193
188
160
200
178
222
187
171
158
181
185
196
209
206
220
250
174
209
254
224
205
233
172
178
199
229
274
238
229
206
153
209
195
141
222
175
211
242
261
194
157
228
188
263
260
214
218
199
199
229
158
277
157
224
145
196
169
203
141
228
201
219
234
183
229
217
212
204
198
170
156
219
255
132
198
178
218
220
200
173
188
209
228
233
237
223
237
208
232
225
194
205
178
210
178
202
171
171
205
192
278
203
245
209
215
208
166
223
146
161
178
172
133
229
222
201
207
105
274
171
205
234
211
173
221
154
252
214
187
216
176
194
177
235
218
175
213
227
191
105
181
129
160
272
167
174
214
198
182
187
205
212
261
202
157
213
191
199
191
183
191
189
197
174
194
227
225
198
192
206
238
217
167
211
252
188
191
190
258
188
282
170
246
184
202
238
197
224
217
203
181
122
261
182
237
207
197
158
216
183
208
159
196
187
166
205
164
204
229
176
187
176
208
199
189
133
127
154
227
210
147
185
270
233
211
213
213
211
192
185
150
189
252
205
227
190
261
237
219
178
151
246
199
212
220
204
222
184
152
216
214
177
228
189
193
238
250
226
190
234
204
195
218
203
206
230
198
221
240
145
237
189
225
187
203
198
208
141
202
224
245
263
223
164
242
187
213
233
203
196
163
161
173
166
263
214
261
237
245
202
211
177
165
183
194
157
187
208
170
226
171
149
155
230
236
209
224
178
195
184
215
242
226
209
135
181
164
278
92
227
247
240
147
206
225
158
221
252
210
195
238
215
203
221
195
131
150
214
213
203
156
129
176
255
261
269
103
228
230
190
204
140
255
226
189
255
215
117
213
167
225
207
147
210
247
202
190
198
184
239
240
255
185
240
237
235
245
136
173
198
151
200
200
190
167
250
230
191
201
175
211
200
188
229
202
172
240
196
134
239
174
238
216
224
165
251
162
208
263
166
212
181
127
167
211
197
254
162
213
250
184
164
135
247
197
158
160
180
221
142
218
270
197
179
260
223
208
185
132
173
170
165
209
193
231
184
219
229
190
170
214
170
149
188
249
204
220
224
222
206
220
183
135
207
225
215
194
177
170
199
208
243
117
143
232
221
215
234
179
211
191
198
202
170
209
194
234
182
258
202
143
210
223
172
250
240
155
228
203
194
201
150
168
229
234
161
157
217
219
206
221
177
158
217
227
175
172
143
246
173
144
243
166
213
241
208
158
201
189
164
193
247
170
165
149
266
214
144
206
147
210
220
194
217
204
154
175
187
171
234
236
191
192
192
178
232
195
236
208
148
181
200
227
216
179
190
173
238
170
149
237
191
208
227
234
186
202
172
219
166
224
192
147
232
173
182
220
136
208
152
188
174
197
227
234
268
246
175
193
217
179
202
205
191
216
209
205
210
193
173
200
185
237
192
228
224
140
162
177
208
190
114
190
163
212
168
193
199
217
203
214
227
191
167
180
156
157
219
219
188
195
241
120
227
182
185
133
239
178
256
219
184
176
212
166
163
204
260
181
239
209
177
187
190
233
116
240
209
182
172
201
256
207
171
256
190
147
221
163
189
176
203
175
226
179
179
231
233
168
212
225
229
211
161
226
194
177
201
186
157
237
225
205
191
183
192
205
223
197
230
254
186
172
236
119
186
283
178
185
177
116
95
181
263
136
216
211
247
181
211
175
234
242
141
188
200
185
279
221
235
153
127
204
254
220
137
273
204
274
187
130
172
182
188
157
166
222
182
225
234
146
213
178
179
172
244
211
210
196
183
205
204
227
220
195
218
207
208
256
192
204
251
271
145
239
174
192
198
160
160
240
202
185
192
194
262
229
164
149
83
258
199
165
135
269
182
209
159
147
224
240
229
257
149
234
231
237
222
181
213
213
216
218
166
186
201
203
223
238
249
217
200
175
211
147
265
234
221
164
178
254
209
171
204
207
210
206
237
153
206
207
247
232
190
222
266
210
158
148
207
193
219
176
180
237
179
218
174
172
185
156
167
178
221
193
141
226
137
209
258
214
180
204
210
186
186
224
139
227
193
212
215
221
241
179
272
183
213
226
184
183
241
178
223
214
200
183
165
189
168
243
185
169
222
223
233
138
220
171
256
184
212
167
195
248
157
191
233
144
189
200
162
211
210
199
211
162
206
201
153
183
155
178
195
161
168
212
182
193
225
208
176
204
179
185
154
242
206
159
229
199
168
185
184
194
177
194
129
210
246
143
163
186
231
223
227
199
168
195
192
151
215
237
252
216
180
215
146
218
147
231
191
261
223
223
226
203
230
188
217
144
163
162
208
236
214
248
259
198
245
156
154
121
169
173
155
202
169
207
199
141
201
197
180
214
212
146
203
213
159
187
210
128
223
199
242
226
246
193
192
154
188
209
210
295
180
206
220
232
223
212
90
182
205
154
126
192
130
229
201
212
227
187
208
241
216
191
194
178
255
128
183
213
217
154
195
244
220
226
202
246
239
212
123
228
245
220
221
163
225
173
238
187
199
219
246
213
257
225
218
177
113
201
270
270
227
216
175
178
224
199
205
181
208
196
182
258
256
243
227
140
217
251
188
181
175
230
258
156
190
161
195
193
175
243
205
210
234
221
175
231
186
175
167
274
146
265
211
178
221
235
250
270
174
224
216
220
211
186
205
194
210
183
260
247
258
258
221
224
177
248
183
225
212
149
210
150
203
192
206
183
169
170
197
215
197
183
243
147
223
210
235
245
179
186
187
244
210
153
184
253
276
141
175
148
229
225
195
226
198
115
189
187
163
180
214
252
218
225
190
180
239
199
225
183
167
156
232
232
249
205
258
231
158
186
224
99
141
265
181
247
228
191
203
224
254
234
248
198
174
186
189
221
225
265
246
229
163
183
195
138
247
210
148
133
199
199
155
223
229
158
131
138
238
197
239
225
235
227
185
237
164
208
147
244
207
159
243
217
147
158
152
199
197
168
149
214
210
230
171
174
137
160
135
267
193
200
177
168
160
170
140
204
210
215
168
226
274
224
176
195
217
231
210
228
218
210
219
229
153
145
241
273
198
213
151
197
259
166
237
219
167
155
143
205
164
244
188
172
213
114
181
230
194
217
203
191
245
200
174
198
172
144
170
183
217
257
204
219
169
228
228
197
228
193
228
148
235
136
235
197
164
167
188
238
250
190
181
224
185
182
182
211
213
164
166
179
192
243
246
217
142
188
133
169
174
236
205
143
248
210
115
188
207
210
161
190
200
224
168
214
187
192
193
114
161
179
182
195
153
203
204
180
147
229
176
142
177
160
196
229
156
190
189
155
238
238
202
215
273
239
209
238
223
218
223
166
228
184
200
251
209
151
209
238
180
100
184
190
280
161
236
225
245
177
189
265
237
215
236
104
203
258
214
219
216
193
222
194
166
223
231
198
148
178
154
210
164
162
196
193
242
200
151
164
242
206
176
187
221
270
209
188
186
238
192
237
161
203
199
171
203
200
199
191
205
205
181
186
75
192
282
122
226
200
271
224
176
203
251
165
244
204
212
238
201
237
261
209
191
212
214
209
245
230
163
187
245
225
201
210
175
240
218
214
226
255
237
176
170
209
186
235
134
154
233
207
204
141
245
204
232
222
220
165
203
241
147
132
184
183
181
241
200
159
202
209
194
162
169
185
194
276
165
217
232
192
118
179
194
225
180
225
236
257
180
200
171
157
184
150
199
238
171
207
178
209
205
225
196
177
206
234
184
173
257
199
222
199
179
204
229
255
159
160
151
196
190
213
136
148
209
226
167
211
177
174
223
166
185
167
185
170
182
218
163
245
227
190
205
167
207
217
203
204
172
204
209
194
188
193
217
184
218
210
204
216
173
139
193
256
251
169
220
162
158
263
219
184
193
211
147
193
206
168
167
181
230
229
221
190
146
153
191
198
227
198
170
267
173
199
216
176
191
218
177
184
172
165
180
222
181
164
221
213
180
215
201
233
216
186
213
165
198
194
174
193
154
213
208
167
206
200
216
222
169
201
174
190
241
201
188
188
202
217
174
192
190
228
161
228
271
220
190
237
238
186
204
218
181
189
203
184
237
133
134
215
163
175
183
175
224
189
158
259
226
181
89
249
187
259
183
178
152
162
216
195
254
193
210
196
184
155
185
165
268
190
200
154
225
232
243
204
178
240
235
148
143
203
124
224
195
247
183
192
146
203
211
212
196
171
168
193
202
210
186
160
195
261
233
205
215
170
243
225
135
202
156
211
223
170
225
252
207
202
227
184
286
218
185
137
238
216
167
251
203
179
152
181
232
216
194
238
202
122
186
202
223
234
165
205
196
188
191
147
228
190
221
209
148
205
237
154
216
182
202
189
225
208
176
230
182
183
153
223
221
147
243
270
195
226
220
194
167
207
264
256
196
199
260
114
170
235
229
222
245
221
227
281
197
242
151
183
206
189
216
179
211
231
140
128
190
189
199
205
195
221
172
247
242
243
211
232
146
228
214
224
245
208
210
190
254
138
192
207
152
252
158
198
110
218
170
181
246
188
144
186
152
177
224
212
146
266
173
165
223
211
251
254
122
203
200
221
216
194
210
206
175
144
257
222
177
181
245
250
175
255
141
196
182
198
216
168
198
159
184
194
178
147
177
250
236
191
174
177
199
238
187
205
188
188
275
175
186
256
212
207
212
156
276
228
258
224
163
215
216
208
247
231
242
199
115
224
208
161
203
206
189
201
204
193
166
181
135
139
211
162
179
264
227
153
302
250
282
171
155
182
247
191
178
261
191
188
269
223
196
273
237
247
240
230
159
219
234
197
256
210
230
245
165
213
234
179
211
270
218
203
150
201
189
181
225
250
237
203
187
218
197
235
233
164
250
206
249
245
199
297
169
156
274
226
230
212
250
178
171
212
204
279
207
180
236
166
228
116
186
221
200
146
259
258
181
184
233
199
208
233
185
228
260
228
219
201
211
155
259
174
246
224
191
199
93
193
181
158
245
158
199
251
191
167
220
256
200
236
235
171
160
193
191
242
186
99
235
183
208
198
203
155
187
246
227
217
207
229
225
173
209
222
223
223
218
238
188
165
218
176
152
249
176
235
194
212
152
216
174
207
237
160
241
168
175
193
226
155
221
233
228
160
213
115
238
225
181
171
172
238
203
111
211
186
174
191
180
190
220
212
186
220
241
246
157
237
196
163
255
176
172
130
248
186
237
205
212
229
146
181
150
235
230
218
156
227
216
235
160
228
243
215
195
164
188
211
244
220
214
185
192
226
202
231
223
223
210
194
152
120
194
165
177
185
160
171
111
220
226
158
163
239
176
211
196
116
178
194
195
212
175
256
197
204
221
206
231
171
216
224
208
139
200
168
139
199
187
201
182
205
196
225
269
130
209
191
228
162
165
215
202
199
176
188
245
165
204
143
176
182
284
148
291
214
205
215
209
189
233
197
273
201
234
190
231
146
182
167
207
199
233
193
204
220
214
173
234
144
239
127
222
238
196
212
201
211
169
246
197
162
221
194
190
184
192
146
215
231
202
231
195
161
185
255
180
155
208
177
236
211
200
185
193
196
188
164
219
184
220
205
185
213
211
121
220
152
198
210
144
217
185
227
238
244
210
199
185
189
216
261
175
203
131
235
222
257
128
227
240
141
197
204
235
236
153
189
229
177
213
229
292
242
177
114
239
262
225
137
191
176
205
198
270
170
185
233
204
219
244
128
107
144
233
218
162
182
151
206
202
134
197
205
258
233
182
162
215
193
151
145
247
174
240
245
239
197
241
221
188
195
165
224
214
211
245
257
149
213
258
158
189
207
260
200
206
186
199
196
193
233
239
234
183
213
261
234
172
235
168
223
148
189
96
255
243
214
229
192
161
195
176
285
253
187
235
274
151
209
233
184
193
223
221
204
168
187
245
188
195
171
194
204
227
170
168
239
230
204
249
170
145
191
233
154
230
121
153
242
201
196
194
251
216
200
240
237
154
253
205
231
170
195
259
219
179
162
176
165
220
200
143
187
234
169
197
257
196
168
195
230
262
190
227
223
163
224
177
181
222
213
138
194
221
214
170
231
243
223
222
181
161
230
238
198
234
178
192
209
227
176
161
232
171
189
206
202
201
258
207
171
214
212
173
159
158
196
239
188
253
178
225
211
260
209
162
212
188
183
171
150
217
211
195
199
249
204
225
201
225
270
232
173
226
186
204
168
186
217
208
194
143
179
211
230
186
259
193
202
208
233
206
193
188
138
193
154
226
138
235
162
198
211
231
203
240
196
177
186
175
201
200
181
232
171
263
243
179
171
144
202
223
159
211
196
204
231
206
184
225
151
226
224
223
136
204
231
227
183
201
190
222
170
211
191
240
166
199
192
195
228
268
186
227
226
201
215
234
229
143
173
238
210
169
205
206
152
196
155
211
196
232
258
223
206
229
226
179
204
184
259
164
205
181
196
182
154
245
201
252
209
139
190
229
182
263
189
170
195
211
239
175
184
206
226
199
191
225
259
178
192
170
190
247
159
168
132
228
246
196
219
235
188
202
207
221
230
217
196
153
155
180
208
181
184
208
186
214
168
255
239
201
266
220
187
205
224
257
246
269
191
272
253
246
210
153
151
200
222
231
189
280
200
160
193
207
239
182
146
248
199
155
219
253
194
278
234
212
216
205
175
230
109
204
211
148
164
182
237
225
225
215
167
120
187
223
176
259
155
236
234
214
196
258
216
231
220
174
166
271
216
212
255
222
205
226
179
181
205
234
193
208
238
284
226
187
214
204
173
228
184
184
148
204
156
154
201
266
228
234
249
170
236
192
238
264
166
204
138
174
162
220
142
163
213
177
251
247
211
208
184
240
217
224
181
185
222
185
178
195
248
187
191
169
168
179
176
243
169
234
242
246
176
181
191
208
204
214
181
187
154
254
223
134
156
237
201
260
145
180
139
234
174
189
192
187
162
230
219
258
230
220
186
173
209
197
187
184
161
173
208
234
229
228
195
206
241
218
198
233
216
159
227
259
246
221
189
214
188
209
166
219
192
195
261
183
196
225
163
201
207
189
209
172
219
263
249
273
191
122
237
177
165
232
180
180
255
162
157
173
223
191
225
234
252
197
188
251
263
213
183
219
224
220
183
201
235
237
239
214
122
190
254
235
184
235
218
168
143
185
251
143
196
222
91
221
191
239
193
213
179
233
205
206
234
195
223
175
208
177
164
222
179
210
191
123
174
226
241
179
213
173
183
179
230
214
160
232
149
190
204
203
202
177
233
195
253
220
194
205
191
211
214
169
218
159
213
200
197
163
265
206
233
191
149
218
209
223
184
228
158
213
239
138
248
261
238
176
167
129
204
172
216
198
243
222
248
208
242
130
205
179
214
238
172
248
230
248
157
230
195
163
187
159
265
191
139
188
152
146
261
242
208
156
243
210
240
198
213
120
225
251
241
179
230
158
170
150
150
218
233
185
192
213
154
128
198
226
201
205
216
217
180
226
194
109
156
238
174
168
224
188
245
171
189
236
205
220
155
275
177
215
193
178
264
178
200
196
158
214
188
196
126
178
142
124
174
224
197
249
236
201
142
201
192
152
152
214
195
259
199
207
199
153
164
265
151
115
213
187
255
203
205
186
176
220
202
193
169
224
160
165
192
206
214
231
149
125
152
216
215
231
264
244
174
217
185
198
167
214
183
198
129
231
191
135
185
192
174
159
240
177
217
232
220
183
118
201
204
229
180
138
187
210
234
125
200
243
233
144
213
196
176
205
175
142
167
176
194
197
203
232
222
234
168
212
228
147
241
199
184
151
107
118
214
196
246
226
184
158
243
166
220
182
205
228
242
112
259
266
257
187
222
205
177
216
185
217
187
235
192
203
191
215
236
233
207
161
190
186
245
185
183
136
207
152
229
239
236
191
155
182
195
194
238
218
158
206
202
275
231
223
127
210
231
231
151
188
176
185
190
286
229
142
173
195
266
208
217
250
166
220
246
234
209
224
170
187
200
185
211
173
166
164
181
203
240
181
247
212
180
146
211
199
243
246
180
146
198
188
206
109
189
194
229
220
128
217
249
198
176
221
206
231
208
196
221
168
203
148
206
258
225
215
162
197
239
215
189
188
252
205
172
247
255
107
290
189
192
205
201
248
262
194
220
214
224
178
240
199
173
290
207
224
172
132
172
168
252
232
192
167
175
191
183
206
168
169
166
183
225
172
168
130
256
202
195
203
210
217
199
156
99
197
253
215
214
234
201
168
213
112
155
155
215
216
186
183
224
161
220
185
136
233
184
153
208
231
152
244
163
209
165
159
214
175
145
185
179
222
170
182
247
224
184
154
242
209
203
205
206
124
233
153
229
208
285
197
222
221
255
203
225
227
213
148
196
197
169
265
237
181
192
212
192
205
169
187
146
194
183
141
198
184
231
275
240
196
230
227
164
214
219
245
198
208
190
183
240
203
197
174
229
225
192
236
243
214
196
207
181
176
219
226
254
181
235
199
211
138
204
215
191
207
236
170
228
202
150
208
135
210
168
180
134
184
151
162
183
236
179
169
265
115
200
203
195
197
171
223
247
172
180
238
160
235
172
186
204
239
199
210
213
216
225
153
216
168
220
208
157
259
189
197
224
194
282
168
136
226
185
188
236
189
190
144
193
232
181
149
136
221
199
176
221
191
238
209
185
216
261
181
194
156
173
226
187
203
202
210
154
116
226
208
162
216
198
169
188
243
160
153
216
199
248
246
223
186
182
210
183
239
239
143
213
159
218
202
193
155
226
179
210
143
193
208
209
198
212
153
247
152
170
209
169
153
196
203
220
237
170
201
182
244
238
220
205
152
168
195
200
198
194
153
208
216
214
231
213
167
178
201
151
150
205
181
180
232
183
247
213
221
279
170
157
153
183
228
170
241
182
174
193
185
214
227
181
142
276
164
224
225
242
227
213
194
153
217
201
184
213
203
225
179
242
217
229
230
181
225
181
212
176
225
235
201
283
184
266
194
177
182
182
279
174
219
233
233
176
227
161
212
225
201
195
239
238
254
160
164
205
234
174
231
114
157
232
219
204
205
200
237
221
181
198
293
192
235
175
264
173
263
173
244
241
165
199
230
142
213
178
175
223
254
207
156
193
184
212
217
149
165
217
174
255
202
214
193
115
235
174
162
178
168
196
179
199
222
210
231
212
197
274
186
112
172
237
199
150
195
245
262
174
201
205
244
176
219
159
196
179
214
221
194
202
189
214
125
224
182
166
204
232
206
260
216
202
175
202
193
160
237
192
239
169
209
195
195
186
222
217
225
168
217
219
169
220
183
247
174
260
203
215
241
205
235
251
200
229
132
210
264
148
233
256
241
207
236
175
181
213
169
233
197
266
201
170
211
228
231
215
209
197
201
170
178
163
179
225
219
220
229
120
214
192
186
151
220
193
170
175
147
249
184
229
197
230
223
272
237
187
211
176
178
266
132
208
136
251
214
188
157
180
162
167
208
166
229
213
206
230
223
226
205
234
223
203
188
179
231
191
155
224
211
180
250
206
199
170
223
236
166
194
169
192
226
224
203
175
168
263
186
212
220
189
209
282
207
188
169
152
130
173
207
204
156
135
249
200
134
237
263
156
218
161
197
203
239
194
225
189
156
118
212
193
223
197
108
174
239
194
214
174
158
212
205
152
205
228
183
207
200
162
259
168
230
209
192
159
194
201
198
192
233
207
211
170
209
176
205
212
177
218
200
184
204
224
174
219
220
194
220
198
190
168
235
163
226
264
189
174
231
282
189
165
177
184
231
218
193
158
235
195
219
201
235
202
215
193
170
172
224
185
146
180
184
238
234
227
195
252
222
198
177
200
136
171
218
181
223
190
186
142
253
266
227
174
211
238
230
247
164
119
190
212
180
193
135
226
173
267
176
149
153
206
127
229
208
217
156
152
240
207
210
150
201
196
174
193
228
228
244
255
203
200
225
187
194
229
225
188
216
199
229
171
199
255
208
164
228
168
226
191
153
244
190
130
204
228
197
181
219
219
174
181
168
205
207
251
194
232
234
174
164
161
157
251
231
233
236
173
143
181
239
107
199
226
128
238
229
154
180
227
218
274
187
184
180
206
205
266
228
193
240
233
215
171
229
211
185
214
207
203
159
206
175
207
262
183
140
228
221
205
225
228
261
192
168
236
177
228
182
200
208
172
242
199
187
173
186
236
190
227
194
200
197
234
259
207
261
194
197
213
133
162
204
241
140
139
176
205
246
233
240
200
256
192
200
211
195
213
227
261
235
167
199
225
217
191
195
207
236
195
174
138
230
183
219
215
187
139
154
250
293
202
273
182
184
237
163
210
236
215
213
188
179
144
213
178
207
272
214
256
175
215
221
243
171
213
197
181
158
116
193
203
208
235
150
172
144
204
186
196
232
232
206
204
215
225
198
243
181
229
227
181
217
218
205
181
220
212
179
206
217
246
141
211
187
212
187
244
237
150
234
176
177
205
210
219
218
234
140
226
169
229
184
189
199
200
187
141
269
237
243
230
232
201
226
208
167
180
188
191
210
249
249
150
177
136
155
180
219
241
182
213
160
238
194
167
182
253
164
181
263
226
197
223
168
175
231
201
231
207
227
115
174
205
207
178
180
199
247
251
182
181
193
236
175
236
134
244
191
170
253
264
209
194
199
210
175
189
193
162
116
217
205
221
192
194
195
228
216
226
186
186
190
165
199
206
207
205
235
204
191
163
143
174
178
195
138
232
197
203
198
180
171
117
238
185
158
212
192
196
230
227
208
181
197
144
209
199
168
199
122
176
234
184
182
186
235
295
173
219
223
236
256
216
171
176
239
222
194
232
228
183
182
235
162
148
196
210
176
245
173
227
217
208
163
217
200
241
174
172
237
221
222
209
178
160
222
235
156
177
167
224
234
183
217
157
193
268
237
170
220
209
230
258
254
190
176
183
181
201
207
208
225
198
208
118
233
179
223
197
196
120
172
157
184
267
182
209
187
194
207
121
165
239
231
227
193
234
235
192
194
243
223
206
186
267
169
208
189
232
176
209
157
146
210
147
198
189
259
230
262
202
200
195
238
220
175
223
183
161
228
279
172
256
241
203
178
198
287
190
246
232
258
249
154
284
210
199
214
225
240
207
228
213
231
236
169
238
164
242
213
141
246
131
189
131
222
163
230
196
154
166
163
187
225
182
201
122
252
160
208
239
202
214
185
211
203
218
214
177
267
149
245
180
225
203
232
284
190
201
205
201
247
217
186
280
229
241
141
198
238
244
185
192
141
215
255
255
229
191
239
212
211
200
207
257
226
181
214
264
189
206
203
251
165
190
165
249
213
192
176
225
176
135
187
251
216
201
220
216
183
217
223
139
190
260
274
164
231
203
189
224
224
177
196
194
219
212
244
193
179
228
192
213
234
209
215
165
230
234
230
257
174
215
233
185
222
161
226
188
137
185
170
171
268
146
191
204
209
186
181
243
146
112
254
178
213
249
217
201
252
192
178
203
155
180
205
261
177
153
209
210
195
217
167
224
244
259
220
205
224
174
188
208
205
278
204
136
177
162
167
222
220
177
149
178
170
222
236
146
199
141
239
208
182
201
157
209
205
150
188
177
214
242
194
131
173
140
184
110
224
147
210
147
167
208
214
194
123
253
235
179
193
139
199
188
240
244
195
223
221
230
195
161
201
139
195
199
228
168
258
126
194
261
225
177
175
149
177
218
188
192
180
209
174
232
194
207
234
256
207
135
175
210
168
193
133
264
231
167
229
234
217
124
124
213
212
149
209
152
221
195
207
194
156
240
214
205
182
258
166
233
200
229
264
117
201
206
198
227
220
220
210
185
190
166
199
208
175
214
162
176
166
228
183
162
180
230
206
185
180
178
175
229
252
250
183
214
210
155
254
192
162
254
184
221
188
207
243
209
191
186
168
142
163
132
213
243
191
132
189
168
175
211
266
176
236
196
227
209
240
215
193
167
158
186
206
197
164
245
195
187
197
250
268
182
179
157
234
203
241
192
129
207
226
189
175
202
157
163
245
252
173
171
225
247
220
199
204
165
241
186
184
180
172
204
103
186
190
189
224
195
199
232
218
197
215
181
168
197
183
164
182
153
175
185
223
257
169
156
206
214
238
240
187
199
168
178
202
177
244
155
179
167
210
151
164
247
288
199
188
239
184
146
166
132
256
168
193
170
210
228
200
244
224
232
272
154
130
209
206
202
247
162
201
164
264
126
263
233
230
194
218
189
153
194
200
198
182
178
252
189
201
236
155
196
157
155
162
184
180
189
207
194
187
183
222
185
222
257
235
252
169
181
199
245
183
103
238
239
180
227
175
219
213
222
162
225
216
219
280
191
135
242
179
129
192
234
169
164
156
225
188
152
213
129
148
200
131
195
234
177
227
191
160
198
167
216
193
219
159
224
154
247
183
143
224
181
212
211
208
220
162
202
221
292
231
235
224
218
187
217
179
204
178
253
193
229
251
172
247
224
191
249
189
174
182
219
215
164
167
151
190
178
223
272
256
139
103
199
241
205
185
177
178
228
220
245
229
219
181
195
207
202
180
177
133
176
208
126
155
106
181
238
204
232
227
230
158
192
234
212
257
210
155
202
221
222
206
199
244
175
199
284
277
265
181
264
120
227
280
252
161
156
205
167
197
144
169
175
222
161
176
222
167
211
191
170
203
242
149
184
191
169
198
219
231
145
216
221
180
202
203
218
211
190
180
252
251
182
197
174
202
196
161
106
198
189
203
191
237
123
156
213
252
225
171
198
197
220
243
175
158
149
198
175
167
146
212
260
154
153
235
230
192
156
234
153
188
105
219
203
224
213
233
134
172
196
203
235
173
217
262
196
226
160
219
212
199
182
194
262
258
168
194
143
262
200
176
255
218
243
208
224
166
234
244
228
183
174
189
198
192
202
152
229
225
197
223
243
241
194
223
196
143
176
196
216
234
181
185
243
220
215
159
228
267
164
204
169
231
193
209
219
221
191
178
153
213
200
198
278
192
172
218
227
125
178
192
198
175
231
196
246
180
205
193
240
198
214
227
144
156
151
189
242
150
239
178
235
191
244
146
176
161
207
204
258
241
160
176
257
163
205
129
196
201
229
152
213
238
195
239
188
271
192
152
160
226
196
252
164
222
186
221
166
215
198
219
228
260
250
200
231
126
227
201
239
189
152
215
174
242
180
178
207
255
250
194
126
200
176
184
226
208
184
228
172
167
179
206
238
205
170
193
205
209
154
177
203
152
156
236
231
185
227
235
195
168
205
182
190
140
122
210
242
216
210
220
231
237
244
187
173
183
238
236
212
244
173
235
231
155
173
132
113
157
230
179
210
226
204
188
206
210
220
181
253
167
137
194
182
258
239
265
209
192
179
214
239
204
191
200
200
274
241
207
156
184
241
154
195
183
233
203
171
204
211
206
163
201
203
185
152
215
204
214
215
198
232
181
172
166
204
169
195
168
207
207
168
194
195
249
185
240
150
235
199
221
183
171
254
174
211
190
143
160
159
184
263
176
212
97
200
183
251
213
237
248
179
187
206
193
181
179
219
170
242
166
204
238
176
177
209
223
237
209
180
209
239
189
233
192
211
233
217
183
161
209
194
140
180
171
194
216
176
175
220
193
156
225
179
204
236
206
250
168
160
254
206
167
233
214
202
217
203
203
256
203
176
259
190
190
182
188
197
214
186
229
223
249
199
239
167
192
161
214
199
197
211
205
220
192
287
185
153
148
191
172
150
145
127
224
242
152
290
235
207
207
205
155
210
187
169
157
204
205
200
141
172
200
179
202
208
220
241
217
195
250
215
243
214
147
254
228
170
140
188
231
205
240
197
233
189
244
152
196
171
192
141
165
203
209
171
174
229
202
177
149
220
157
221
204
241
176
211
212
231
171
179
207
132
160
193
209
208
211
218
194
215
192
198
178
162
212
196
242
186
199
155
211
188
155
137
138
161
184
117
199
181
199
200
217
196
219
218
200
199
218
176
201
181
262
169
132
179
193
174
257
200
182
183
156
212
215
200
222
226
178
175
163
132
239
243
187
184
212
202
169
236
204
249
164
241
224
231
169
154
154
188
202
171
221
251
225
227
209
163
192
165
203
184
175
187
167
178
174
169
216
223
225
228
195
187
224
193
230
187
169
183
150
205
162
260
134
214
231
241
270
176
202
209
215
215
174
221
191
196
194
245
254
183
159
227
208
134
237
198
204
192
236
155
128
200
192
201
226
209
196
222
165
151
172
178
217
184
230
226
149
190
187
222
222
180
132
231
171
207
207
161
232
233
135
211
228
169
187
133
188
169
131
212
237
195
222
224
195
265
177
220
207
169
208
222
108
177
183
178
197
187
174
207
153
170
214
210
114
170
251
195
258
211
172
204
181
197
167
216
206
184
190
195
249
227
207
143
169
164
146
212
185
194
260
211
168
161
199
224
197
211
209
159
197
167
217
204
183
270
220
234
175
153
225
206
193
222
210
166
183
168
175
189
247
186
238
188
173
225
136
189
207
218
221
210
251
191
204
247
188
171
209
254
186
189
203
211
184
236
242
149
178
209
240
188
237
187
233
154
272
245
168
228
280
196
208
207
275
206
131
146
170
182
241
181
178
251
175
211
269
164
217
206
167
201
195
196
243
220
164
209
252
173
239
203
201
78
195
233
206
163
187
176
224
218
177
259
182
198
247
184
182
207
207
250
157
156
190
178
200
204
191
181
154
194
244
237
172
164
171
183
179
214
215
226
183
224
185
156
223
250
214
195
141
146
223
227
206
200
216
214
232
235
160
185
213
170
170
214
201
203
234
213
229
199
201
233
207
182
179
218
179
230
208
173
167
221
153
223
194
226
218
193
187
178
199
210
148
195
151
240
173
197
196
179
237
162
197
208
268
185
207
183
188
222
202
212
199
141
157
191
198
216
181
170
201
202
209
176
163
165
251
102
258
183
205
188
226
178
155
172
183
196
205
188
264
227
193
188
219
252
203
227
248
166
157
196
173
224
200
179
192
212
177
224
272
207
220
200
234
163
195
173
171
141
253
183
160
194
198
245
206
183
204
172
179
165
230
222
271
166
195
224
297
169
166
241
206
267
223
214
167
178
165
244
191
167
237
201
209
229
208
243
235
160
195
179
157
158
195
194
209
100
214
227
173
181
208
228
227
211
205
228
172
211
197
198
188
192
209
212
235
123
120
182
175
213
194
216
210
211
172
180
152
232
189
131
173
183
184
207
151
174
184
205
160
229
208
255
189
267
249
196
175
213
154
198
174
187
162
233
162
180
261
225
219
185
222
127
144
220
191
233
165
188
150
242
194
168
235
151
187
241
268
185
177
221
225
189
184
169
194
179
232
219
193
221
188
251
176
257
183
235
205
203
250
203
216
147
147
231
219
115
220
242
187
175
139
226
196
233
140
179
173
187
210
211
188
183
220
208
223
198
244
243
177
242
212
229
239
219
218
275
211
197
184
174
186
216
171
221
261
257
211
216
152
204
177
218
219
258
211
203
205
203
128
226
186
197
239
149
193
219
221
220
182
166
161
203
169
173
106
192
205
236
214
170
224
206
168
218
193
214
203
182
167
199
190
155
223
216
250
207
256
263
171
247
110
211
204
209
179
233
271
194
237
164
164
276
193
234
197
159
176
170
162
248
165
162
213
215
225
213
168
212
227
185
144
148
195
217
226
161
198
220
204
232
166
238
256
218
227
237
182
149
202
136
132
138
206
184
158
187
239
185
163
252
169
159
155
201
200
160
160
142
217
159
184
176
199
196
237
238
242
203
252
211
207
156
168
223
182
234
165
193
156
171
171
170
214
228
263
160
235
248
141
226
191
204
165
223
185
212
194
216
163
161
197
164
229
124
200
174
266
187
184
202
206
210
179
240
193
200
177
238
188
178
187
202
169
195
194
263
201
212
176
129
161
164
163
196
216
246
186
213
227
192
246
138
250
260
195
198
266
208
269
184
198
227
147
122
201
273
222
178
243
254
188
180
223
213
124
143
182
201
180
211
164
173
214
219
244
194
255
182
220
248
157
207
223
201
242
232
166
155
152
207
192
203
217
168
275
194
172
189
235
208
203
263
204
233
224
203
194
214
212
193
248
284
212
243
261
256
172
221
154
236
206
168
175
220
189
275
251
215
175
120
222
201
224
186
211
207
233
184
186
144
171
261
229
222
168
184
191
224
245
162
190
176
218
236
199
199
169
203
226
224
258
196
232
196
191
187
208
254
167
180
251
177
220
181
212
213
142
203
160
239
208
212
226
189
156
195
210
168
157
200
177
212
206
224
147
265
212
241
184
225
161
230
262
173
179
252
238
249
156
193
223
195
194
231
234
199
230
199
156
184
178
182
172
214
164
198
222
283
218
234
212
162
232
191
226
238
192
180
205
178
191
226
207
151
218
178
172
183
247
218
239
233
145
212
231
177
298
219
192
218
241
205
200
215
177
157
152
220
170
200
152
255
213
256
195
212
163
145
225
155
156
237
241
167
168
115
190
196
150
227
234
250
209
299
227
169
181
151
197
201
164
138
173
167
203
236
162
219
234
232
168
162
230
199
172
260
149
216
222
201
130
176
217
229
192
163
209
181
186
180
169
177
190
226
189
259
160
165
206
222
228
144
247
204
216
191
232
238
261
251
239
169
239
264
222
186
167
202
153
194
156
202
209
200
298
136
218
203
184
210
230
171
184
211
187
186
198
183
227
174
241
201
132
257
177
239
152
230
222
168
252
134
236
191
172
206
156
220
228
181
267
220
190
185
243
217
193
164
152
197
228
235
212
224
141
120
169
188
169
235
266
139
208
193
229
190
242
217
175
247
142
198
189
176
125
139
225
191
159
211
193
241
202
153
197
125
171
223
172
212
180
199
159
132
170
184
171
251
161
226
228
167
184
268
223
181
155
146
195
159
218
166
213
180
223
196
244
200
176
165
166
177
224
216
183
250
184
225
221
215
193
184
215
240
225
209
148
208
197
196
197
216
135
247
200
137
259
202
209
244
246
188
227
195
181
225
170
248
167
163
219
221
277
198
158
222
219
200
204
210
179
252
221
201
167
223
195
187
129
224
239
192
178
158
209
196
225
219
178
163
226
195
214
223
164
194
208
177
209
262
198
220
251
230
190
236
249
211
232
167
169
173
243
175
127
215
155
239
120
199
216
214
165
225
224
225
202
157
167
202
185
214
162
203
199
151
242
222
161
189
176
262
220
226
201
239
190
161
140
186
210
171
203
219
188
205
187
195
224
221
238
206
262
177
170
262
194
178
224
202
196
178
201
198
205
190
279
216
241
167
192
208
172
231
186
182
150
230
194
200
210
187
157
200
158
234
243
248
148
254
200
219
162
170
217
165
183
180
278
189
198
209
192
201
190
254
209
190
200
195
242
237
132
248
166
143
156
190
184
264
191
247
196
237
199
204
241
298
184
224
193
237
174
158
225
224
190
177
166
247
100
168
184
238
229
221
225
213
204
200
246
174
199
248
222
192
209
185
177
279
187
171
170
254
171
231
222
221
231
193
164
204
181
182
204
233
158
180
174
200
124
240
220
193
192
233
246
221
202
208
205
215
186
190
263
203
234
205
201
227
197
173
151
222
177
216
181
242
213
202
175
221
228
155
159
209
243
161
190
177
194
223
230
188
188
150
190
169
184
186
205
219
213
221
195
203
204
194
225
236
209
179
227
197
248
245
161
235
194
131
182
195
240
204
193
226
157
140
166
201
230
165
221
160
227
152
231
210
216
194
231
169
215
212
197
189
247
215
129
233
166
240
218
224
210
162
270
177
195
182
217
168
209
161
211
275
188
227
188
265
242
202
229
182
172
217
226
170
189
173
198
254
210
166
181
211
233
146
196
211
261
197
263
216
201
199
188
204
185
211
247
234
176
189
220
199
145
266
248
201
186
242
202
198
163
157
246
145
176
198
193
188
185
165
185
183
167
195
198
223
187
187
169
218
210
166
202
209
188
203
151
185
197
227
258
168
190
235
207
221
197
173
177
223
207
172
196
196
254
201
204
208
150
173
189
163
246
208
220
182
181
172
232
140
184
170
238
185
174
222
220
194
167
153
242
242
158
231
246
217
169
127
222
261
224
280
213
213
244
175
180
221
218
228
175
182
237
243
223
200
190
165
178
194
191
220
224
207
195
209
196
207
249
180
212
257
187
146
222
200
255
207
232
208
192
221
153
190
154
173
217
233
151
244
184
270
184
209
188
228
206
167
216
187
163
257
174
236
182
210
162
180
199
211
213
179
198
203
274
194
230
197
201
206
251
206
223
228
226
227
189
265
195
234
252
231
209
231
229
143
193
238
130
219
215
182
244
226
138
139
161
215
170
164
262
205
152
147
154
216
237
247
124
167
180
187
157
244
193
194
157
174
210
219
173
189
200
270
179
160
213
197
203
213
154
215
195
223
191
202
201
183
164
218
186
256
213
248
191
184
266
164
202
172
154
187
231
218
247
233
203
180
246
198
238
172
260
179
246
146
210
97
228
117
224
170
208
172
174
172
220
172
231
239
234
193
210
257
221
177
154
201
200
211
205
187
118
221
153
220
219
185
172
234
199
229
241
184
254
256
197
181
205
182
231
181
191
202
193
232
192
202
233
194
154
156
220
253
176
221
209
175
205
220
169
199
209
236
185
288
160
155
225
231
231
209
169
172
185
178
273
180
215
164
215
224
232
227
219
223
261
179
202
216
215
158
274
152
208
138
169
210
259
168
179
152
219
195
227
132
161
242
240
215
174
203
261
249
203
168
280
203
192
199
186
209
213
259
203
179
187
196
242
218
239
250
206
201
203
196
219
229
208
186
231
217
220
133
250
154
108
167
211
178
192
257
211
130
195
208
166
237
187
202
252
194
158
211
190
223
250
191
180
170
186
239
260
144
237
161
150
225
206
227
152
240
214
249
178
182
200
142
240
231
182
184
156
232
172
250
240
234
250
204
216
234
243
183
247
293
200
177
272
177
175
161
116
139
223
193
169
221
239
138
232
138
173
237
177
160
239
170
197
249
183
229
198
245
237
226
176
201
196
203
228
240
233
176
181
244
214
204
250
252
252
184
262
232
233
179
124
176
245
218
195
207
198
246
221
157
225
223
233
188
195
192
204
251
192
156
264
248
229
192
104
193
162
173
172
243
190
183
201
195
192
192
209
181
183
154
204
206
250
195
195
147
203
236
221
179
237
208
198
235
219
201
228
221
196
185
166
228
218
231
179
215
167
210
165
210
213
203
234
177
167
229
233
159
196
244
194
164
192
230
199
209
164
166
210
158
168
216
189
199
204
244
155
207
177
167
186
192
204
226
167
195
251
167
225
149
199
115
213
225
206
243
124
211
230
220
214
196
158
212
175
185
195
196
227
177
262
174
238
225
182
157
227
186
185
184
207
226
232
206
173
213
273
212
242
232
203
201
245
203
237
126
222
180
187
225
159
223
226
211
205
213
133
185
187
264
235
183
233
242
208
170
190
198
206
220
246
217
191
241
199
276
210
225
203
223
219
210
148
200
214
251
210
247
165
193
189
216
280
238
184
225
231
219
176
230
204
213
156
205
178
206
184
216
164
290
228
225
152
161
166
156
213
167
249
185
251
195
229
181
219
202
160
207
218
224
221
223
262
239
250
233
189
242
204
221
150
233
249
182
252
244
212
229
212
169
191
196
214
214
225
179
185
191
213
187
210
226
203
212
201
189
185
213
201
216
173
241
233
175
162
161
177
206
153
270
207
246
231
223
222
257
183
132
114
161
173
132
162
209
169
140
266
207
230
208
191
202
264
231
153
177
210
275
182
225
236
256
184
140
156
202
192
190
190
174
237
238
181
186
188
135
182
271
213
182
221
229
221
219
225
157
226
208
155
204
187
216
189
214
156
248
236
217
236
230
160
214
137
162
203
181
256
208
236
259
214
184
162
219
222
246
228
205
224
198
223
208
169
224
167
208
129
227
252
198
201
186
226
159
213
227
208
199
136
176
206
210
215
238
154
173
197
113
231
211
244
259
226
195
118
221
194
204
222
226
175
183
221
243
224
202
231
221
285
210
160
241
167
136
228
235
129
193
188
193
191
188
252
229
205
167
202
173
209
247
164
127
182
173
166
157
210
247
173
174
151
214
183
178
223
194
187
149
169
225
192
174
215
175
212
220
186
199
200
225
216
269
146
206
135
148
151
187
192
266
221
195
168
227
215
177
197
203
215
241
265
167
177
161
228
219
203
215
191
204
246
235
248
219
151
210
219
218
174
187
216
220
209
247
152
209
170
137
200
162
240
214
194
137
194
204
144
276
131
196
247
241
204
187
173
239
218
190
146
204
217
211
205
171
170
209
240
194
172
250
135
209
177
232
133
172
273
200
225
190
177
145
180
234
170
132
225
201
224
203
243
202
248
210
222
218
188
232
199
247
194
160
161
229
209
262
205
216
148
237
189
197
168
185
242
239
207
228
219
139
228
179
192
170
192
206
143
149
254
135
173
172
189
237
188
207
157
196
180
255
203
190
231
247
258
164
155
208
181
189
206
236
217
246
185
192
223
187
155
186
207
184
225
175
192
184
213
222
160
272
220
212
165
175
160
239
229
182
222
235
206
141
212
217
176
227
243
213
218
214
219
217
226
193
214
185
165
213
203
255
184
161
234
217
193
193
204
178
138
176
199
225
258
187
235
216
210
211
163
209
144
222
260
148
192
196
154
254
147
158
207
149
236
193
162
191
224
238
225
242
187
251
194
177
194
159
143
162
209
212
255
259
185
257
145
196
183
207
162
179
139
198
154
125
189
208
242
223
195
196
220
252
213
222
205
193
159
232
175
197
144
189
265
222
188
241
232
178
257
239
175
153
203
198
184
211
212
202
174
184
210
200
171
202
223
199
180
242
173
246
159
177
200
213
154
196
191
214
196
226
231
159
171
188
208
180
243
217
156
197
184
205
176
255
174
238
225
210
163
163
249
201
152
179
165
262
148
169
208
172
263
229
136
168
245
125
245
253
279
176
176
267
180
198
226
148
187
158
174
194
159
248
146
211
245
202
102
191
253
149
256
171
135
199
206
244
186
224
244
213
215
127
188
179
181
193
218
170
229
168
246
196
129
189
234
265
216
182
173
226
228
197
177
248
178
248
250
194
189
201
171
174
192
159
190
182
201
181
218
169
269
152
206
173
183
175
179
211
118
159
182
204
207
159
206
220
191
260
214
212
193
222
203
190
216
240
232
247
213
201
221
198
187
253
183
210
260
189
157
213
157
180
171
174
203
156
251
222
104
162
213
182
165
226
140
196
230
163
198
231
272
121
145
274
213
214
122
130
198
145
207
156
141
190
202
162
212
167
192
209
196
143
177
228
212
196
243
218
220
161
164
139
169
182
220
162
224
121
175
216
210
239
237
217
164
226
266
181
210
214
153
207
238
209
247
238
194
190
172
218
173
244
132
219
142
155
203
186
230
219
145
154
190
166
136
149
190
166
166
170
184
163
186
189
228
187
230
260
167
184
192
219
265
195
258
127
202
208
210
163
247
205
235
236
203
242
194
198
244
200
208
179
245
216
191
178
257
243
167
162
157
195
175
239
230
229
242
190
118
182
199
199
208
123
249
250
185
186
158
244
234
188
213
217
198
221
184
258
214
155
200
209
170
172
169
183
160
238
200
208
209
166
174
192
262
215
145
200
202
264
151
248
225
149
140
225
167
189
217
187
194
234
181
191
216
232
248
174
200
200
196
195
185
209
169
186
238
157
162
275
274
128
198
238
221
189
222
220
268
216
221
258
121
238
219
156
166
146
169
223
214
128
215
203
225
192
211
224
210
192
188
209
194
241
185
190
220
232
147
246
241
213
257
169
241
170
220
231
158
125
181
154
179
199
203
208
209
235
201
219
134
217
237
249
195
181
189
250
176
212
158
200
232
176
200
215
201
185
171
210
205
211
223
212
252
240
169
189
241
154
115
189
218
138
216
239
234
220
217
219
235
200
218
226
177
184
197
170
171
217
148
202
131
199
202
192
168
291
208
179
139
284
290
206
201
209
224
201
206
246
224
220
149
195
239
216
194
174
198
191
225
213
132
210
243
165
229
247
236
251
229
140
233
235
263
208
217
202
104
251
148
150
101
163
199
135
246
223
249
244
179
168
224
140
205
219
190
153
174
222
197
187
183
182
189
191
185
216
234
228
212
184
151
174
173
175
188
170
228
153
192
154
231
220
211
181
227
184
122
228
237
252
135
181
185
213
246
185
202
163
237
135
199
147
152
197
291
193
168
201
196
183
137
249
199
183
213
209
179
219
229
200
135
221
165
140
180
241
261
196
132
244
253
194
163
247
161
200
173
212
222
228
179
154
216
190
134
212
191
261
190
219
190
211
190
240
217
184
207
248
167
148
226
194
246
199
210
213
115
191
184
151
195
138
212
223
164
208
186
233
155
168
182
211
200
223
202
159
204
229
235
277
235
217
178
218
171
210
259
202
203
208
161
145
181
161
210
225
193
145
185
205
127
194
161
184
191
185
197
135
193
195
223
211
221
178
237
172
217
233
152
172
243
230
248
221
199
228
243
159
179
178
202
208
128
243
158
170
238
193
179
209
187
187
209
238
233
193
191
267
236
163
185
259
175
179
207
218
213
222
163
185
197
178
207
248
198
198
227
244
242
206
194
171
202
184
227
176
278
227
209
207
222
180
207
214
246
136
215
259
194
221
175
148
180
225
201
210
267
231
211
243
194
130
172
187
181
171
229
203
220
225
213
207
228
163
180
222
181
193
182
215
191
112
193
221
198
214
220
167
194
194
210
255
183
155
190
173
151
211
260
191
218
176
205
252
149
196
181
186
232
190
186
163
229
113
231
246
237
199
188
171
186
163
162
250
266
202
232
184
229
167
237
183
224
201
146
224
182
199
164
229
239
222
245
204
192
259
242
218
174
182
156
199
229
236
199
227
223
164
118
187
230
240
202
172
148
248
218
203
260
139
234
221
170
227
175
189
193
218
256
262
164
202
197
220
155
165
146
203
214
179
196
128
166
271
194
176
161
169
161
214
172
172
178
120
261
192
204
203
218
238
189
216
238
167
165
188
252
201
211
186
205
149
177
273
187
142
180
200
191
183
213
180
209
207
170
182
166
176
151
210
227
215
195
223
220
216
245
218
218
256
190
181
230
134
143
211
231
219
194
243
226
212
229
179
233
201
239
198
174
219
204
255
173
223
200
203
211
183
174
162
245
170
237
176
243
233
233
222
219
171
234
176
220
227
227
179
205
252
214
158
247
271
213
155
255
208
199
156
183
203
237
225
159
239
185
235
183
121
233
193
199
209
169
215
158
109
191
174
207
190
220
210
158
234
198
121
231
228
215
252
180
172
235
223
178
219
216
212
200
178
190
213
186
154
177
228
254
215
271
209
137
217
185
182
168
198
209
211
191
158
163
215
231
221
205
196
149
175
202
235
235
191
140
124
218
244
205
201
156
201
220
255
216
200
173
125
180
277
200
139
195
202
256
216
252
177
211
228
140
191
186
172
239
202
248
193
277
179
190
201
144
250
150
248
226
193
205
216
253
245
237
244
229
224
229
199
228
221
162
188
198
184
142
198
254
218
209
221
106
153
176
168
202
217
221
220
158
179
175
169
266
172
195
195
263
271
207
176
165
232
246
185
197
216
265
159
242
209
177
222
205
227
257
219
164
241
211
184
205
215
184
131
223
167
202
175
271
194
238
238
186
183
204
196
225
192
182
197
170
238
148
227
167
180
168
204
262
187
205
186
194
214
166
189
200
112
204
179
230
167
154
199
133
119
172
199
222
230
170
186
216
233
196
200
248
164
217
214
198
169
117
220
208
142
228
118
209
222
165
204
217
256
153
212
187
233
145
243
231
200
161
212
186
248
129
165
180
243
148
215
163
203
141
212
194
195
194
233
154
155
177
175
218
181
171
199
191
178
172
188
216
116
269
207
222
158
251
162
208
144
188
205
128
240
156
230
168
174
211
110
270
155
190
196
207
165
174
177
211
194
197
189
161
171
156
250
265
266
192
165
206
241
240
175
189
196
211
214
239
213
250
172
178
183
205
218
244
183
258
151
161
169
120
177
201
191
180
163
216
113
211
236
204
151
235
198
269
119
186
203
189
138
183
212
223
188
188
226
193
165
211
186
149
162
275
205
169
236
172
209
153
162
282
237
225
260
250
187
178
127
160
205
195
266
233
208
183
190
171
246
226
187
248
236
215
187
207
244
184
271
191
196
177
207
203
140
188
238
206
155
169
173
214
242
221
204
174
201
255
201
243
251
206
166
233
188
246
187
243
176
202
198
214
264
205
205
196
226
201
167
203
189
218
176
235
158
204
188
151
167
204
249
134
169
160
205
164
180
138
182
216
199
213
161
173
185
228
214
187
249
214
234
199
228
205
169
167
202
189
152
218
104
171
180
168
162
169
263
223
204
167
203
230
215
217
134
183
234
236
232
225
241
230
230
206
172
183
188
169
218
196
199
240
158
219
181
193
184
128
192
207
239
222
140
137
217
262
219
145
164
133
169
171
154
206
197
213
157
183
214
166
226
202
218
217
202
104
194
223
184
163
164
197
251
137
225
174
147
248
254
110
205
213
212
210
202
208
168
166
236
176
147
221
192
198
163
180
215
230
220
204
144
267
234
117
160
215
193
137
168
247
179
169
197
160
224
253
231
146
180
247
192
217
236
147
184
245
174
177
221
208
225
190
254
242
224
220
169
161
179
205
173
203
175
165
172
219
124
166
212
171
175
226
200
249
152
199
215
190
237
255
220
181
215
232
284
160
154
288
172
166
151
196
206
218
249
150
242
205
134
239
213
146
253
189
255
188
174
211
231
190
251
213
221
236
262
179
234
156
196
224
240
187
259
229
216
166
177
193
229
214
161
202
217
211
182
146
217
221
178
277
157
200
237
134
173
189
257
205
184
192
139
235
156
204
223
189
186
174
167
210
228
252
215
170
191
168
233
158
236
210
244
197
212
167
165
162
207
171
184
211
210
161
175
173
211
212
160
198
175
193
181
235
204
179
207
196
170
220
134
136
176
199
215
208
238
133
161
183
159
217
147
211
192
141
190
177
174
245
206
212
172
167
219
127
227
193
216
149
207
186
262
226
202
163
205
254
251
145
218
211
158
153
222
240
187
134
176
182
194
253
210
180
215
177
237
215
192
145
218
240
257
255
269
160
146
205
202
241
115
218
199
185
232
157
176
208
173
231
177
258
213
236
236
232
236
223
201
172
204
176
238
187
162
168
165
256
187
223
168
183
162
166
188
216
217
220
173
210
107
220
186
186
147
192
233
194
157
139
233
184
211
204
265
221
210
180
187
167
242
131
141
230
227
155
161
230
191
167
197
214
134
210
232
220
153
248
148
130
224
200
173
235
203
178
214
225
268
186
195
187
173
237
198
170
192
211
160
209
179
184
212
179
200
201
190
185
197
208
185
206
229
164
222
245
233
216
221
185
251
242
198
241
152
138
204
216
216
124
179
282
223
194
164
93
223
207
185
274
247
206
154
193
250
245
152
155
107
229
245
164
111
219
244
178
199
238
208
199
253
202
133
200
201
176
165
178
194
221
186
212
167
175
234
244
164
182
197
200
217
202
269
122
169
251
216
198
147
179
179
269
173
198
261
251
201
182
229
222
150
246
210
140
260
128
185
118
235
215
252
199
141
205
214
202
193
244
231
255
246
237
164
184
197
178
197
185
210
123
226
249
208
212
217
186
223
172
160
192
254
244
116
147
228
183
226
229
177
202
168
192
197
196
226
259
201
206
174
158
227
200
210
213
229
197
168
216
227
222
129
279
193
164
220
230
214
241
224
182
250
180
207
228
226
181
209
205
184
258
185
229
190
200
196
164
198
208
173
207
154
164
176
252
168
194
214
188
232
204
188
204
202
163
171
135
272
209
230
154
204
213
240
211
236
147
183
172
175
237
207
270
174
201
160
167
208
193
152
217
191
208
219
179
227
116
244
242
184
235
224
179
181
239
218
215
142
208
230
179
222
215
169
201
268
202
241
154
137
206
144
222
166
139
199
197
187
203
114
149
232
170
164
159
224
246
155
201
241
206
191
172
186
210
214
197
235
187
219
166
189
205
248
210
205
160
256
222
142
236
228
174
176
168
178
217
213
161
194
189
182
197
190
164
127
188
219
180
223
192
219
215
181
185
255
190
239
172
270
238
218
162
230
200
180
205
181
247
259
232
229
209
175
211
239
246
180
151
164
169
192
144
247
188
255
156
176
139
204
194
197
223
137
204
183
167
170
168
197
172
228
184
228
186
216
196
221
240
152
195
235
215
185
232
225
243
160
241
233
193
169
205
199
200
192
170
193
185
212
240
245
153
171
172
187
227
210
162
213
174
195
230
197
223
167
217
238
202
192
199
247
250
190
201
257
254
140
228
203
201
149
145
192
202
203
179
146
225
151
213
247
232
189
203
235
170
203
171
188
210
219
222
205
167
183
142
187
173
221
168
205
207
151
259
243
165
135
289
221
170
216
200
214
169
180
199
147
251
203
228
167
170
172
196
232
212
200
263
207
229
209
177
219
232
233
170
232
139
297
198
202
176
174
218
228
208
164
200
143
153
183
204
229
209
202
169
246
225
169
212
194
204
265
153
208
179
213
222
193
203
212
198
219
153
242
153
230
236
165
242
139
235
176
136
178
113
211
206
225
172
189
172
206
172
179
156
173
228
179
188
167
208
202
257
258
175
167
231
171
206
119
183
202
204
198
234
225
244
275
160
184
247
193
125
226
244
245
206
197
247
241
199
174
243
252
206
164
224
224
259
237
189
221
228
246
209
209
236
181
199
229
147
222
208
244
216
195
137
200
210
186
181
208
174
182
193
203
212
122
159
239
145
236
207
149
213
235
221
173
202
182
177
170
186
176
204
193
190
146
232
168
154
238
229
254
165
189
228
218
151
163
110
270
203
143
220
216
182
188
189
214
126
175
204
199
229
191
211
168
154
198
188
161
193
238
183
197
234
234
184
191
217
218
216
275
253
200
138
203
195
222
187
247
174
200
167
179
191
184
215
232
191
147
239
180
277
180
170
207
166
192
180
198
146
182
161
193
171
187
222
182
205
272
184
153
188
257
215
165
157
126
242
276
137
200
171
145
235
185
219
242
157
177
199
231
210
245
268
186
222
187
255
219
233
225
252
134
216
147
200
207
203
161
199
161
194
174
206
202
252
146
207
264
165
171
185
169
209
190
220
194
225
163
151
202
165
198
195
267
208
183
213
178
229
168
202
166
209
244
155
204
206
218
216
182
187
161
155
226
71
211
213
190
212
210
173
245
220
209
179
216
142
215
168
171
171
196
180
255
185
209
227
253
185
255
155
236
200
224
166
269
198
221
214
143
230
209
206
182
184
199
214
216
265
217
233
190
240
197
174
256
188
173
139
163
182
271
274
117
148
237
204
181
130
187
195
149
134
240
230
208
241
205
198
216
181
141
207
228
224
193
253
147
242
161
233
248
213
235
189
197
172
108
214
200
128
176
142
160
191
189
176
178
201
246
173
190
247
129
199
215
255
230
226
237
219
237
124
213
191
119
220
191
254
203
191
168
206
216
134
181
242
210
151
154
202
198
236
204
257
191
122
193
196
186
136
181
124
202
191
221
250
198
192
269
194
172
250
194
145
189
167
186
258
209
248
145
218
234
167
133
214
221
226
158
178
194
98
206
209
207
238
111
209
183
231
205
150
196
229
221
153
195
210
173
238
262
241
226
198
243
233
145
186
194
200
232
221
170
148
196
254
136
183
215
251
174
147
205
206
190
250
246
205
144
120
161
180
216
201
258
234
196
201
198
254
186
245
137
132
179
164
216
117
214
158
253
230
235
150
210
229
218
266
198
135
226
245
195
174
106
207
271
174
235
195
179
197
205
237
197
245
200
198
247
260
220
206
255
188
201
259
186
175
203
213
243
271
188
226
277
216
214
170
149
212
199
236
265
241
215
198
174
215
165
151
220
186
181
104
223
230
245
179
168
176
156
244
190
232
180
192
244
192
270
203
264
232
193
245
229
144
168
125
217
177
220
120
237
158
168
195
245
202
222
154
176
196
226
255
192
204
188
246
244
243
128
173
227
281
201
240
201
229
160
289
269
197
204
164
161
230
165
144
176
208
188
190
228
179
223
232
274
223
207
178
196
210
194
231
249
141
202
236
150
183
124
218
199
220
208
143
202
198
180
166
232
149
233
193
204
207
206
153
225
244
260
186
231
175
196
150
166
156
184
198
263
226
177
162
250
194
217
181
194
211
264
225
124
191
229
237
181
247
196
233
133
159
190
192
227
214
200
202
213
214
136
250
218
197
231
197
118
239
155
182
199
206
183
272
255
200
164
221
215
201
221
201
214
189
251
212
241
171
244
217
256
184
155
132
194
177
199
244
236
144
178
194
213
244
218
187
256
198
223
281
206
227
146
217
235
204
211
181
218
219
188
172
234
232
254
204
191
205
197
256
185
154
207
263
181
161
225
212
212
224
212
192
233
177
128
229
196
105
244
210
232
208
212
192
229
239
178
237
178
229
231
182
237
135
162
205
207
238
163
223
124
168
147
225
152
149
210
230
233
228
176
240
203
192
171
265
237
154
232
180
270
158
206
226
150
157
240
165
207
192
174
127
223
202
168
169
197
204
176
270
199
200
216
179
158
190
185
194
169
251
176
205
269
219
160
210
201
183
162
217
201
231
222
229
251
241
157
149
236
188
209
183
190
163
219
195
224
267
160
162
191
220
237
147
211
246
220
207
179
198
198
169
266
192
204
200
139
198
239
206
158
204
253
213
147
198
224
220
203
217
169
210
189
188
173
266
223
226
234
177
164
196
218
159
174
152
182
170
178
226
193
188
172
255
122
235
232
198
184
146
187
190
199
234
260
146
208
213
233
180
189
156
174
215
192
227
232
231
272
173
184
178
196
194
183
217
190
231
185
210
206
211
196
165
232
216
180
209
178
214
187
204
257
161
121
244
147
247
224
260
238
172
188
178
145
274
212
177
232
240
243
241
208
120
198
219
244
210
208
239
173
204
147
206
202
193
226
233
188
163
194
168
159
139
191
197
239
170
222
199
198
242
233
182
170
186
212
256
116
234
202
220
194
225
153
221
193
231
242
159
144
142
200
200
175
164
222
136
182
134
174
230
248
183
145
226
182
264
216
204
131
186
184
224
168
173
211
172
245
230
215
166
169
207
261
199
201
228
227
235
200
202
209
208
165
224
188
213
212
163
205
243
147
161
249
154
230
183
137
158
179
209
188
178
223
149
167
223
223
240
230
219
224
92
167
154
241
215
253
166
188
255
209
225
215
206
190
172
191
242
143
204
183
220
186
203
197
202
191
197
203
148
196
171
192
173
261
128
236
224
199
223
272
217
209
240
202
146
184
153
220
217
246
260
217
206
190
193
221
196
176
124
156
222
163
208
215
199
218
230
155
174
196
164
172
166
226
237
204
151
215
243
248
197
195
152
224
225
169
215
181
194
212
247
241
237
244
177
200
134
222
194
196
217
185
155
199
161
222
207
265
134
223
220
219
208
173
228
218
210
159
239
253
188
176
226
198
194
198
231
161
200
138
247
176
161
270
126
178
270
227
192
222
188
195
155
202
233
229
160
228
210
171
188
264
189
187
142
267
146
150
220
222
218
199
169
191
198
177
254
198
178
228
198
169
238
197
225
97
228
194
208
156
168
185
217
158
222
204
228
133
206
224
219
179
160
183
209
216
194
157
199
196
230
240
163
208
177
203
178
175
175
204
207
221
150
205
193
186
212
171
201
230
223
146
195
207
174
222
152
176
216
128
223
194
183
211
186
116
202
155
272
246
171
168
198
211
223
218
169
220
200
184
263
164
174
205
209
217
191
190
186
172
189
208
200
167
206
186
182
219
247
198
217
205
157
226
197
178
173
161
213
240
182
267
213
202
228
260
267
206
234
278
189
246
198
197
193
198
205
194
196
163
179
97
188
185
233
237
189
188
198
197
172
172
222
228
208
229
222
249
247
249
232
185
225
177
216
262
210
217
189
189
160
220
213
206
207
216
226
184
241
133
183
201
171
209
190
201
154
197
179
275
219
205
250
231
237
177
207
166
243
174
186
194
223
236
229
219
206
166
210
228
136
233
227
214
245
170
124
220
198
208
229
195
166
191
194
200
157
157
214
239
194
271
154
114
174
147
247
167
214
190
155
237
216
143
247
222
150
258
196
182
170
180
191
221
202
212
208
253
243
174
187
174
128
190
181
220
225
218
222
209
176
177
190
250
219
152
167
146
163
180
254
186
226
200
263
171
219
217
181
207
242
221
252
217
152
226
181
213
238
152
184
236
239
139
222
187
190
163
253
242
188
193
161
201
186
230
181
223
163
224
187
200
192
181
247
166
151
226
243
226
202
212
198
198
157
183
197
285
256
198
206
211
237
193
186
179
177
245
195
208
243
222
230
168
206
195
158
207
181
242
256
212
211
195
150
221
159
195
206
187
222
212
212
194
229
262
228
184
220
248
170
259
195
270
212
237
202
235
210
217
234
262
192
159
237
235
250
196
158
240
214
150
277
195
215
252
184
181
192
210
187
188
224
274
250
231
150
177
214
257
229
187
226
234
218
240
236
245
234
207
216
135
221
199
199
193
173
263
193
262
193
245
174
202
212
185
142
202
215
204
193
167
247
149
204
162
229
179
140
150
198
192
188
266
138
213
172
229
185
185
196
167
190
208
207
206
194
119
187
189
216
169
119
219
188
181
167
134
151
247
208
161
234
210
271
178
214
207
162
217
167
281
186
258
231
220
214
182
200
236
185
157
195
210
222
225
227
163
220
208
169
151
201
178
199
195
225
186
257
186
264
185
173
167
199
234
211
212
217
191
152
148
147
248
194
206
181
158
184
167
203
146
198
197
257
154
145
258
177
206
206
223
211
130
188
240
193
216
193
176
199
190
220
206
206
186
242
247
250
207
229
240
207
181
219
256
196
196
201
222
212
220
213
212
161
259
229
217
203
217
181
232
200
167
267
197
164
242
192
218
154
129
130
234
197
233
247
210
240
169
189
167
223
213
226
171
233
199
235
240
191
227
149
205
243
231
187
197
203
201
192
160
195
193
214
163
161
226
193
168
256
185
147
183
182
214
163
147
247
218
143
218
195
197
130
205
252
206
234
131
210
213
198
172
250
239
181
208
174
214
172
207
255
216
213
202
142
205
212
137
218
194
168
196
139
184
220
209
140
182
206
162
171
174
182
206
198
174
145
237
273
213
230
210
175
208
175
212
216
212
175
192
130
226
203
279
215
207
186
249
213
196
176
229
210
235
119
188
223
203
188
226
131
195
211
226
215
169
161
133
168
257
237
231
173
213
207
176
211
227
215
140
177
171
256
170
150
208
135
191
198
195
202
217
209
182
234
176
181
179
176
215
191
165
182
234
135
163
198
237
200
171
187
242
158
223
174
194
173
131
140
244
183
201
257
238
196
231
140
183
162
209
231
171
188
157
229
180
215
272
213
205
228
248
240
192
136
179
203
216
222
195
249
164
202
250
172
204
180
175
174
177
199
246
225
205
223
213
154
248
181
171
166
134
232
250
194
145
200
244
203
212
160
260
235
188
221
239
162
237
148
162
179
211
119
118
233
238
163
234
234
220
195
189
169
143
255
185
159
201
232
200
189
168
206
212
178
216
206
148
260
238
197
222
185
224
245
186
222
157
224
228
199
174
148
186
191
229
258
219
166
222
186
224
247
156
148
215
210
201
240
183
166
238
206
230
257
224
231
230
205
235
210
190
155
205
199
206
175
163
206
164
135
166
157
228
191
241
185
180
185
171
142
256
233
152
243
175
220
217
142
181
208
130
205
205
159
156
195
227
218
163
186
230
125
138
168
181
169
161
196
181
214
190
192
286
158
216
157
134
202
218
162
147
219
202
194
171
234
183
211
212
197
232
209
209
188
219
256
260
231
237
178
235
238
200
180
163
157
202
197
179
209
216
270
235
171
229
203
226
191
166
239
205
206
266
198
148
189
254
207
250
168
161
262
282
204
211
164
214
117
166
209
209
243
228
216
144
213
207
192
196
247
187
200
182
229
240
171
226
153
207
172
313
214
152
228
202
168
253
233
178
238
168
189
169
187
214
124
219
155
257
169
179
206
203
171
213
191
162
253
160
192
219
160
159
248
176
246
206
240
283
170
178
205
165
260
232
190
240
157
183
232
208
194
199
163
155
209
171
237
203
153
135
173
190
202
221
216
155
193
211
259
192
208
254
198
237
211
166
193
214
160
213
188
223
217
249
215
250
232
198
164
97
214
140
243
233
277
213
228
177
209
149
226
222
198
213
221
195
204
122
230
240
153
219
209
193
214
228
223
116
177
182
272
254
185
214
217
217
209
158
169
162
117
243
232
188
211
133
200
247
236
239
163
196
272
226
184
221
242
177
184
224
193
204
264
228
141
188
163
178
225
183
212
191
253
169
231
230
240
184
230
184
212
228
227
148
249
216
216
250
199
167
201
200
200
203
181
230
186
218
184
176
186
171
231
187
223
203
230
172
163
113
172
197
166
141
206
196
242
190
135
185
192
178
184
183
194
224
208
170
248
124
216
144
199
210
191
159
228
187
255
172
215
232
182
160
202
202
149
245
197
236
135
172
130
179
239
177
196
232
261
224
218
265
215
227
214
224
212
156
230
212
259
230
238
169
246
274
248
223
259
255
233
274
172
196
232
172
259
208
160
192
217
225
184
208
211
237
171
175
179
219
224
223
187
176
173
139
136
135
220
267
211
219
199
195
187
195
220
219
211
256
143
258
241
171
215
161
226
222
212
150
138
202
175
251
260
232
199
133
169
256
184
232
161
232
234
134
220
244
208
201
276
229
240
196
195
183
219
116
185
252
199
233
185
227
254
186
158
183
170
231
173
192
216
244
193
214
204
200
155
230
196
212
253
247
163
179
265
215
139
245
215
227
246
243
209
269
179
157
217
212
180
269
204
172
163
201
190
160
255
254
236
245
181
212
205
178
228
194
258
184
209
197
247
212
201
126
265
163
146
212
190
170
273
245
211
207
231
203
150
197
195
230
184
179
141
194
208
193
175
167
202
152
250
226
222
168
208
214
251
193
157
172
220
194
187
177
173
259
223
227
237
169
212
241
223
201
191
131
197
214
185
143
214
155
238
180
212
222
177
181
200
215
238
180
234
230
187
217
164
177
123
174
190
185
191
195
130
199
250
201
249
141
211
173
250
203
222
158
253
159
208
192
217
201
202
180
151
202
179
180
176
184
176
121
245
186
222
192
222
228
212
190
237
188
269
187
115
262
187
137
262
136
158
226
258
131
200
158
222
189
234
225
216
178
164
183
189
132
221
231
159
187
152
170
170
230
261
249
219
145
201
205
207
238
221
217
211
229
218
272
249
168
146
243
193
164
149
219
168
231
222
161
271
171
164
220
232
230
229
252
154
191
206
255
167
116
244
234
229
228
200
149
206
250
121
224
228
180
217
247
142
209
226
229
162
202
203
174
207
245
217
183
205
244
180
217
139
167
203
191
175
169
268
199
201
159
175
198
207
211
208
207
217
207
179
221
192
215
181
257
242
253
214
187
225
145
168
134
248
198
201
218
226
173
235
263
206
227
228
245
199
161
225
204
189
219
204
211
196
226
167
217
283
199
221
190
188
192
190
215
173
197
271
196
225
195
255
187
237
246
231
168
191
225
235
255
220
161
240
221
209
167
114
245
163
171
235
152
216
224
142
234
200
255
212
132
204
180
233
220
181
220
187
194
287
175
211
192
169
180
185
198
218
206
267
129
178
207
229
222
226
162
213
288
221
239
248
184
153
158
190
192
219
194
226
204
236
213
176
204
197
243
163
194
196
164
225
183
175
175
171
178
204
264
136
241
179
178
263
185
250
237
211
198
242
201
168
182
181
254
201
132
181
171
259
216
191
175
208
193
227
242
202
173
165
178
203
239
184
207
170
238
185
197
192
200
137
191
224
201
209
255
175
171
230
187
233
186
266
176
164
224
174
236
268
216
201
206
225
226
180
204
229
189
233
172
184
182
198
205
235
218
204
197
197
189
210
215
139
198
205
189
291
156
172
189
181
233
217
215
202
228
214
209
192
207
159
208
241
209
227
183
239
171
190
169
152
191
195
229
226
203
195
196
167
224
198
212
231
167
264
213
232
224
212
221
200
149
146
148
212
179
155
201
165
193
258
191
145
187
191
189
126
168
139
164
178
152
193
203
206
192
168
182
193
230
194
187
184
122
191
170
201
164
199
225
186
106
176
217
209
171
231
222
187
152
247
202
232
187
166
238
204
167
212
163
225
177
234
186
162
195
220
218
170
194
224
182
137
129
146
222
193
234
177
237
220
179
250
205
205
219
124
185
187
201
256
212
234
192
133
191
174
229
239
223
208
215
266
237
208
180
190
226
214
161
169
189
188
215
187
142
158
180
197
152
187
235
160
180
248
202
198
174
237
254
234
245
239
185
200
192
240
239
156
185
181
158
250
143
194
281
184
165
231
223
218
261
167
222
193
203
239
194
220
157
270
217
173
229
175
173
206
168
205
156
291
207
191
173
212
214
197
153
179
154
208
180
129
264
235
210
210
153
235
253
187
221
185
267
150
220
229
177
164
195
226
166
140
249
236
189
192
221
209
123
218
217
194
217
216
216
129
235
242
152
217
167
162
205
150
236
240
225
156
192
214
294
249
251
200
155
205
232
208
163
228
234
179
199
225
180
187
139
207
186
190
172
218
180
249
216
241
188
155
198
240
156
213
230
162
266
259
253
164
194
242
178
227
187
192
181
256
198
230
173
221
154
219
268
189
209
185
195
192
195
211
225
284
179
201
209
231
201
189
210
179
206
165
204
207
211
192
155
215
189
235
220
201
195
192
212
227
184
195
150
165
259
217
165
240
167
202
155
235
209
209
159
235
193
174
168
181
199
212
258
142
176
191
222
247
200
227
222
194
194
221
176
150
168
176
139
255
231
214
172
221
229
254
190
179
221
201
230
232
169
127
171
162
233
198
199
164
261
193
225
202
228
129
202
217
170
183
181
167
163
220
183
139
228
197
186
277
228
210
140
196
212
193
255
212
220
238
222
179
223
181
201
266
239
246
199
235
182
228
237
167
217
213
123
227
209
175
187
184
170
202
190
251
236
174
161
200
244
186
219
172
236
178
216
155
209
205
183
133
165
212
189
241
259
143
197
183
168
134
229
148
195
227
216
201
208
209
187
228
211
116
199
209
137
238
228
164
242
169
193
250
184
220
187
173
247
191
208
187
244
202
222
188
202
213
216
225
229
186
143
208
233
171
143
246
224
178
185
184
190
238
250
175
180
145
214
192
225
243
221
255
251
188
197
197
242
223
237
211
195
182
250
195
189
199
190
157
195
221
232
197
246
148
148
160
166
214
181
149
215
215
185
232
176
177
218
150
271
213
185
242
123
236
221
175
153
181
157
253
163
174
191
174
185
209
246
176
224
204
167
153
279
230
154
221
263
184
228
238
204
208
215
147
225
210
177
235
226
213
237
218
224
184
236
138
182
158
185
211
198
204
150
185
236
244
178
210
168
157
210
191
224
216
180
163
179
217
218
162
170
141
208
176
164
192
188
239
217
161
179
226
237
216
244
203
168
203
200
200
181
110
202
164
235
238
274
207
202
217
169
238
196
208
215
205
110
194
164
231
257
191
220
183
168
208
195
218
206
196
185
257
208
187
224
131
174
165
224
221
214
155
182
244
169
239
220
201
194
247
180
206
192
202
229
224
146
211
237
177
182
167
189
218
168
230
184
222
153
210
225
228
189
217
258
151
207
143
194
228
228
190
171
201
146
249
226
231
187
223
214
194
183
216
228
227
248
241
175
145
219
241
222
178
280
225
183
192
207
170
223
163
144
166
165
237
221
183
154
199
174
129
224
252
239
161
191
231
152
170
227
247
175
195
218
219
202
192
177
192
129
269
201
231
244
228
186
165
243
148
233
286
165
138
178
204
231
205
208
191
177
217
184
262
197
251
192
136
235
228
259
187
165
122
216
203
184
179
198
152
211
159
152
199
164
274
238
173
163
172
265
158
171
243
209
174
156
164
164
210
169
185
158
248
195
198
142
223
131
225
185
195
187
135
176
173
222
195
186
178
194
151
157
188
207
220
241
188
147
262
156
155
197
203
206
230
167
175
220
168
176
186
168
199
226
168
194
133
229
207
208
218
219
225
218
205
185
177
167
197
159
215
224
185
204
106
265
204
229
227
209
190
247
150
231
230
188
205
239
204
241
224
205
234
222
227
279
221
221
151
185
208
207
199
245
165
218
117
188
194
193
191
153
157
165
169
214
190
226
168
160
227
210
225
131
203
211
227
175
254
214
220
195
227
162
163
185
241
240
158
129
209
165
136
171
194
174
247
157
169
231
169
152
261
207
205
248
211
133
292
167
199
186
136
221
225
192
226
161
203
153
184
256
207
263
172
155
173
241
196
208
160
223
214
204
194
184
252
158
164
225
215
212
142
228
215
228
208
211
232
210
159
177
219
197
258
218
212
196
239
155
227
206
320
172
239
222
188
246
213
174
177
244
198
190
243
158
253
195
182
197
245
229
171
194
198
163
235
235
207
152
154
191
184
167
203
230
197
196
103
200
185
183
165
213
224
163
261
190
227
151
190
173
157
265
225
142
166
139
173
219
237
215
152
231
241
199
252
219
169
226
187
223
165
240
201
177
225
245
250
192
199
213
206
209
236
164
176
257
136
249
169
227
175
163
205
178
219
228
230
156
233
193
186
250
244
151
224
219
159
193
182
222
186
187
180
186
180
120
132
203
154
145
235
150
247
126
213
166
182
193
176
202
199
189
215
203
180
234
204
191
211
163
226
153
180
195
199
243
170
168
196
212
196
205
226
169
173
240
171
216
242
229
191
254
202
213
221
228
230
214
159
158
177
194
234
203
193
180
205
240
203
152
185
162
203
204
193
193
148
208
192
207
208
228
219
221
217
195
152
218
228
143
183
184
265
232
179
229
215
189
195
237
194
188
198
200
222
144
156
185
272
215
188
243
224
153
156
237
205
184
228
218
212
118
208
227
188
237
254
182
218
177
178
220
193
158
185
150
245
167
162
191
241
164
212
174
241
220
172
247
165
245
190
229
248
210
183
205
182
215
209
185
216
204
186
190
260
234
161
168
220
174
169
191
214
215
211
189
190
212
248
188
219
242
214
182
232
182
163
196
220
223
198
210
193
224
273
143
202
216
244
210
232
217
252
230
182
196
224
198
182
145
169
193
244
252
224
250
161
194
209
189
212
126
222
207
228
196
206
223
189
215
171
143
202
204
170
193
236
239
157
162
141
221
255
197
139
138
140
171
183
238
221
205
240
176
164
176
147
186
149
186
215
191
259
238
245
236
166
162
129
239
152
201
173
205
182
240
228
249
242
196
244
214
207
259
218
228
221
207
198
213
221
229
245
250
167
256
229
212
180
201
197
256
253
181
239
168
195
274
255
173
220
175
206
160
277
155
204
235
158
228
227
250
226
226
237
182
177
222
204
221
189
211
228
243
212
177
202
210
223
212
196
205
213
218
215
207
231
168
151
214
173
220
220
222
219
202
203
205
231
212
263
230
225
223
210
203
223
241
240
192
193
187
216
189
245
193
166
179
147
161
141
201
210
197
241
203
183
254
154
245
215
124
219
201
170
262
209
182
205
230
150
189
189
205
217
234
157
201
149
185
216
216
229
170
142
201
165
219
195
264
177
157
204
242
123
220
138
139
187
232
220
136
146
188
200
268
210
155
250
190
232
185
183
218
160
168
217
198
221
198
254
275
187
173
176
166
157
177
176
221
198
175
229
229
148
187
188
199
254
172
204
188
157
203
220
195
176
210
254
236
221
211
180
145
182
233
266
199
158
192
200
203
179
153
248
182
225
230
235
250
185
122
210
180
194
221
208
190
207
160
217
243
220
280
193
230
96
189
133
230
208
207
181
199
180
245
216
234
240
158
212
191
239
236
239
228
225
205
119
206
202
216
185
163
288
250
212
215
130
232
197
197
228
192
181
242
232
209
203
234
153
189
246
225
230
202
158
184
219
168
212
236
188
204
165
193
255
119
222
176
241
197
130
249
209
261
155
182
168
206
214
180
172
225
228
244
207
164
191
234
159
212
212
195
217
218
207
268
213
252
281
255
174
169
254
202
119
239
161
135
212
191
191
153
134
207
203
188
204
193
234
172
175
237
233
155
183
243
266
166
152
195
206
178
152
196
197
224
168
189
242
216
222
256
199
285
246
165
212
254
186
162
253
203
193
239
218
219
218
212
221
212
205
190
184
195
227
200
176
155
188
136
209
164
241
181
209
194
224
209
147
181
136
234
208
170
153
224
220
164
182
165
259
191
214
186
256
212
189
197
260
167
218
186
154
164
238
149
198
198
228
220
163
191
162
209
152
165
210
179
227
155
232
210
203
177
282
210
218
145
141
240
225
237
186
218
171
178
219
180
189
157
204
232
150
182
277
212
206
232
190
147
207
239
194
197
220
193
198
225
122
158
194
206
145
186
242
196
186
207
206
251
192
204
177
228
193
210
212
200
179
199
192
164
240
183
226
169
208
108
204
158
205
241
194
217
170
220
160
176
175
223
120
149
191
189
203
204
198
183
134
246
180
161
208
159
196
195
191
193
181
236
211
167
235
169
221
179
201
184
211
212
137
222
191
208
249
271
222
211
192
235
255
203
263
202
138
206
199
163
247
236
217
224
194
144
200
146
249
213
200
196
222
128
250
194
211
231
258
194
156
217
178
223
179
191
181
195
153
195
249
172
225
194
202
154
179
164
213
255
194
222
215
225
172
206
233
171
192
226
178
167
175
205
179
236
160
185
245
176
151
165
167
193
190
150
185
204
205
218
173
180
209
254
195
221
216
207
203
259
268
250
226
255
212
216
231
210
236
216
157
217
198
208
203
175
192
208
205
156
121
177
233
180
201
207
171
196
218
273
234
222
210
168
205
226
211
261
176
193
227
230
192
247
189
194
185
245
173
199
153
142
158
187
198
213
250
221
240
193
232
215
185
193
172
213
204
211
225
127
183
183
206
236
232
172
130
202
220
255
199
187
231
257
187
225
170
196
193
180
175
241
278
192
177
197
202
235
250
213
167
168
206
234
230
226
183
203
201
215
267
278
229
179
158
186
221
152
186
205
193
148
164
225
189
206
224
215
172
159
213
219
193
167
226
215
193
220
203
197
218
186
213
185
137
217
274
150
218
268
218
179
206
201
241
283
176
175
271
191
148
189
190
233
217
228
213
193
174
127
187
200
263
201
190
163
220
191
193
262
215
214
234
246
209
218
226
219
200
239
250
189
107
164
235
183
167
209
227
126
186
248
230
195
232
233
96
237
192
217
266
199
137
168
201
171
156
205
156
194
212
244
180
163
245
261
224
227
249
238
176
192
215
119
203
204
204
190
229
213
135
168
266
180
257
209
178
178
176
225
222
242
180
238
107
218
175
176
149
147
170
200
146
108
254
225
178
170
202
198
151
205
198
186
185
185
210
159
141
177
205
195
163
192
184
182
213
145
207
234
189
227
200
237
259
155
249
241
172
225
238
236
213
226
196
182
137
147
245
191
192
221
232
183
210
173
187
170
163
176
181
207
213
206
131
192
181
131
180
170
208
193
187
130
258
192
156
230
228
152
226
223
228
281
141
207
222
188
159
194
142
198
221
231
235
167
227
209
222
172
144
148
150
207
225
223
244
164
221
184
241
220
236
267
199
186
223
198
155
150
165
210
230
232
180
211
249
198
178
174
214
172
213
225
208
131
229
205
222
250
168
169
173
192
160
209
218
214
188
180
245
132
249
209
188
151
196
213
196
239
233
219
182
200
252
188
167
231
148
150
189
176
141
219
195
179
223
183
242
182
217
218
194
166
160
224
209
195
253
258
180
193
188
241
206
252
194
146
206
161
199
152
183
229
210
154
219
222
184
224
196
206
202
184
196
149
259
196
188
250
190
173
175
209
183
169
156
216
171
238
191
205
169
194
172
174
142
207
271
229
246
205
172
173
172
201
204
128
237
238
197
183
230
224
247
157
255
194
215
232
192
213
221
128
222
186
236
196
188
208
185
310
201
147
201
208
228
165
216
206
185
232
193
189
204
212
237
199
171
163
246
173
190
226
235
253
256
259
171
157
130
266
140
200
204
249
266
219
173
129
217
216
203
225
208
203
235
259
202
217
184
209
163
235
193
203
219
242
207
176
232
138
209
205
272
158
218
146
188
215
214
218
166
223
138
169
104
246
141
213
190
185
220
215
224
195
179
173
207
228
190
207
226
220
222
171
191
169
245
157
175
231
227
228
211
235
200
153
209
208
143
191
180
124
171
185
179
253
203
200
180
271
244
196
176
156
219
192
183
200
245
120
247
230
251
234
181
234
204
240
187
188
232
160
208
153
188
216
182
237
212
231
173
181
186
199
152
180
223
202
185
231
188
181
214
213
187
222
247
256
155
207
244
198
232
163
205
131
206
252
223
192
239
187
197
219
215
217
185
264
212
213
204
117
188
234
228
148
213
142
249
243
224
227
170
196
162
184
192
154
208
124
192
175
217
220
201
247
183
208
175
226
240
176
227
201
179
214
204
150
205
161
258
120
181
266
169
218
196
207
207
180
182
200
168
248
233
182
214
224
253
128
238
165
179
188
229
200
153
200
232
137
201
147
203
199
201
226
232
261
222
127
256
195
182
228
206
167
151
153
231
214
168
233
201
258
243
240
205
147
156
262
174
201
168
203
245
177
182
181
152
275
242
148
192
163
274
186
213
202
214
131
269
180
256
261
147
232
244
172
255
169
241
205
203
182
217
222
193
209
204
220
204
173
200
211
243
214
157
156
188
236
133
218
182
198
144
162
180
171
236
177
231
213
194
123
230
200
221
166
161
244
186
189
167
293
233
193
243
202
215
240
202
218
191
226
108
184
207
218
214
154
160
208
209
244
145
253
202
231
196
172
180
166
178
270
112
200
215
198
182
200
146
151
228
174
264
186
174
223
147
203
160
212
226
154
180
243
139
204
168
184
164
192
220
224
210
190
211
231
175
229
183
201
219
169
216
142
217
222
156
183
219
209
153
237
251
240
195
210
264
192
246
122
237
142
190
196
226
176
217
205
192
199
240
180
195
155
208
255
186
168
193
210
223
218
237
151
163
236
117
172
192
189
235
262
203
163
160
218
224
158
155
176
185
160
216
212
184
177
211
176
196
239
229
208
217
186
189
154
117
188
194
257
216
172
218
174
198
184
148
226
175
199
231
136
243
192
244
173
153
187
120
205
180
157
240
191
190
147
176
212
201
213
153
169
178
216
179
183
202
218
206
204
215
246
190
177
209
199
159
159
185
218
203
210
209
206
231
226
209
242
158
185
163
191
188
168
182
152
217
214
270
216
244
180
206
181
224
212
245
212
171
152
183
219
175
209
187
243
200
220
158
201
182
211
206
160
198
208
227
211
172
235
248
171
206
182
178
146
191
214
171
215
177
220
98
184
166
190
175
197
230
191
159
248
195
191
186
237
132
253
151
226
211
264
198
230
247
217
171
193
226
254
289
182
170
227
176
237
216
195
183
220
157
178
258
198
212
172
204
175
198
271
175
136
242
178
200
150
258
208
235
199
260
173
145
211
219
276
241
149
158
217
205
191
219
204
190
226
220
179
228
217
231
198
209
216
176
206
178
221
150
215
201
223
95
218
217
217
238
187
265
213
201
255
240
215
254
243
227
202
205
187
184
214
217
203
200
195
202
203
179
204
252
183
184
279
224
222
211
177
194
196
234
134
220
209
243
215
191
133
252
276
166
235
217
168
148
201
167
161
193
210
212
241
235
242
188
227
201
172
161
218
200
220
143
129
175
186
243
226
170
220
146
161
151
137
204
186
229
221
165
176
217
196
235
199
266
219
216
150
189
205
183
181
159
199
190
164
187
200
144
174
239
235
123
187
243
210
264
175
166
206
194
151
227
218
208
206
279
225
190
212
207
230
154
289
220
203
215
180
222
220
190
248
231
227
229
193
187
222
149
256
196
157
154
268
201
159
160
148
223
253
210
216
245
136
165
182
247
190
218
235
172
176
213
264
239
216
194
156
197
204
216
246
209
189
154
177
179
163
247
239
235
221
193
156
191
211
164
208
205
192
196
251
223
202
144
183
220
205
188
182
189
234
214
272
182
192
147
150
171
188
187
226
175
158
204
179
229
160
199
242
219
133
225
227
172
184
219
248
226
194
175
190
159
217
246
224
234
155
164
222
255
166
261
229
134
230
240
208
275
261
173
200
176
146
207
208
215
199
271
195
152
182
129
193
211
170
221
204
198
142
178
206
270
198
194
147
206
174
176
198
184
203
218
202
166
245
250
208
199
209
228
213
218
217
188
191
266
211
247
162
209
151
196
188
147
150
197
192
145
243
185
130
206
157
228
238
136
217
201
241
184
152
198
219
274
226
203
162
232
259
154
188
165
205
233
180
158
194
251
194
167
265
119
184
170
155
220
206
192
226
208
256
152
248
190
264
180
244
169
185
165
197
207
226
131
238
181
184
189
210
182
264
210
200
157
213
161
200
248
209
229
268
124
197
254
143
144
205
198
129
237
156
173
228
173
124
229
208
265
189
194
252
242
184
266
205
190
147
194
145
200
233
142
255
179
243
214
126
178
196
189
231
232
160
158
127
191
179
197
180
151
146
190
207
189
219
181
227
208
167
192
183
213
250
243
223
151
212
197
220
155
211
195
163
219
204
213
192
216
211
233
156
189
235
238
262
249
78
185
188
198
175
260
175
199
215
254
183
210
262
213
140
211
203
208
242
232
224
204
246
216
211
221
190
193
140
227
217
204
281
213
179
154
212
165
184
245
159
224
167
250
219
208
251
212
167
195
218
162
118
182
213
199
163
174
200
187
197
173
243
241
190
99
243
241
193
152
244
244
220
235
136
163
168
230
229
230
177
219
213
164
171
236
203
215
218
184
234
175
193
135
150
220
239
253
217
192
221
183
241
208
250
138
243
122
125
184
218
236
217
221
218
195
239
160
234
176
193
245
144
270
231
160
239
220
222
195
216
215
220
143
120
202
220
201
223
182
222
196
194
282
215
203
214
180
218
211
136
192
79
217
169
220
193
203
249
267
190
233
215
196
179
214
238
197
177
205
199
210
210
130
158
183
208
170
185
202
200
176
214
208
228
224
186
211
211
216
204
212
180
171
227
229
211
197
181
188
245
153
165
229
136
163
225
194
241
164
225
210
190
231
192
179
189
213
195
224
168
251
127
203
212
222
241
216
202
224
263
173
193
173
166
223
196
233
118
188
194
214
253
222
191
205
173
231
182
221
204
209
211
221
74
192
246
197
191
180
224
293
221
257
186
215
209
175
182
176
233
160
157
235
204
213
247
171
182
197
207
174
147
229
225
205
199
222
169
242
227
280
246
204
204
192
214
203
212
219
206
159
165
179
156
204
184
224
188
201
189
141
194
203
225
185
257
216
182
206
234
208
204
212
159
198
209
167
232
187
198
122
171
134
193
245
155
151
194
199
183
193
163
210
194
142
160
184
196
204
174
201
249
202
240
225
220
223
200
190
212
163
175
180
172
262
222
218
161
185
189
229
203
249
211
154
148
195
216
183
217
225
180
207
223
243
214
203
194
162
239
178
197
213
269
157
187
229
151
171
226
182
177
244
185
252
166
226
177
201
208
166
235
206
212
190
185
202
203
168
182
212
155
220
209
199
226
231
217
180
169
176
121
267
260
206
216
210
233
174
223
204
216
225
256
197
252
253
122
196
263
146
170
261
167
187
217
246
175
194
192
162
165
195
164
158
227
134
178
180
122
220
183
172
203
205
154
206
250
177
204
148
249
196
185
194
175
163
212
233
167
127
218
154
143
196
202
226
214
154
232
166
230
227
195
171
216
243
144
173
195
237
242
186
206
213
184
178
152
250
214
243
195
159
163
164
226
198
153
226
174
220
185
241
177
218
162
261
214
225
175
190
81
219
227
198
215
234
185
130
182
138
264
143
213
226
179
132
239
174
176
214
145
195
210
209
205
180
234
194
233
202
141
222
240
160
198
202
165
225
210
162
170
245
210
196
186
219
153
160
166
206
233
217
202
204
147
235
206
205
237
186
240
178
162
160
247
248
233
222
180
211
157
244
179
182
242
166
222
215
224
222
212
196
221
269
242
215
230
227
247
213
167
221
225
192
174
223
203
225
155
154
232
191
214
233
213
150
240
171
116
239
166
213
230
209
177
136
237
160
218
203
254
186
212
215
192
231
260
226
223
269
223
187
190
236
159
128
171
241
234
146
197
239
245
213
117
161
198
207
119
197
173
226
247
241
232
181
186
218
239
201
230
194
172
189
182
247
249
196
151
228
189
158
194
188
160
175
130
222
214
170
171
211
251
196
180
183
188
193
189
139
165
219
219
146
223
118
193
199
162
182
248
222
214
254
135
173
143
194
187
243
188
216
221
277
231
198
209
206
199
237
241
130
275
156
155
165
199
230
237
178
209
183
141
202
176
212
198
153
179
275
260
182
174
212
197
167
135
219
142
207
174
138
172
162
206
229
177
210
215
157
196
178
154
268
261
223
187
154
216
212
220
255
220
266
159
164
229
195
183
212
163
183
220
200
192
211
220
174
201
162
202
213
200
192
226
169
159
188
193
223
210
168
190
248
274
216
263
257
204
124
199
241
213
199
250
221
182
157
235
142
167
195
229
191
183
121
175
189
200
141
141
171
200
138
217
249
183
205
181
225
219
211
166
219
243
262
172
147
224
128
233
192
237
182
215
232
214
245
217
195
253
198
201
222
200
206
239
179
180
229
186
188
284
225
229
237
246
239
188
205
190
259
206
165
211
154
234
244
197
200
242
200
153
167
206
209
223
244
191
283
185
187
214
233
207
162
190
205
246
212
202
217
185
220
157
252
192
256
188
177
188
192
235
166
153
175
241
213
126
236
199
205
199
135
151
229
262
151
225
242
157
137
227
132
168
187
154
198
167
201
226
239
159
156
227
163
181
177
170
182
208
233
177
222
200
224
260
197
177
187
207
262
193
189
196
153
242
232
161
221
182
159
196
179
149
251
212
234
205
222
123
202
147
138
231
230
221
192
225
197
217
207
229
191
159
210
183
225
216
131
196
166
205
234
218
178
205
193
160
236
191
217
166
183
179
236
218
174
188
214
152
281
199
246
269
223
235
173
189
225
257
197
195
255
201
201
283
207
191
192
184
214
106
222
178
209
190
194
157
163
115
218
186
180
218
131
250
242
246
197
147
263
181
226
175
178
193
243
217
208
264
243
193
192
176
136
207
224
192
177
251
243
141
113
118
191
153
199
192
159
172
175
218
210
198
185
127
154
219
221
194
233
192
192
201
212
148
214
226
241
231
163
234
240
186
226
140
198
224
174
195
175
191
207
216
187
160
182
181
219
212
200
229
215
185
149
214
177
227
227
198
176
211
219
170
190
222
206
231
122
194
157
187
192
229
165
195
238
205
228
224
158
206
230
201
209
161
218
205
160
151
184
227
151
146
146
248
195
140
188
242
170
170
160
202
186
212
200
178
199
118
212
210
194
213
201
224
217
150
208
209
220
255
202
175
188
218
194
200
179
232
214
225
198
164
203
193
175
200
156
233
201
164
209
150
238
181
224
249
242
166
142
272
90
228
185
216
186
229
186
225
179
147
156
201
182
261
134
190
159
209
113
159
183
265
218
206
207
207
174
202
235
201
196
164
164
180
167
224
124
186
126
219
274
228
247
224
256
225
230
191
163
176
211
205
225
161
229
188
245
186
199
220
225
255
220
230
178
212
190
179
207
193
255
159
248
210
122
166
181
169
138
189
197
199
235
150
211
184
147
198
184
229
149
173
218
241
172
196
230
191
185
178
192
189
245
142
256
156
163
224
180
173
220
211
99
153
187
222
232
203
185
203
188
195
139
159
198
219
186
240
209
171
201
233
212
209
231
213
160
170
269
160
196
245
162
161
185
199
219
186
148
162
180
203
188
145
207
135
176
178
169
206
199
185
228
214
192
222
112
249
194
232
113
230
164
194
176
169
163
204
213
185
225
215
180
202
230
235
249
135
187
302
218
230
140
218
250
142
213
220
167
183
141
190
168
146
220
272
179
148
234
241
179
174
164
169
163
198
225
142
171
221
214
209
253
236
199
192
165
200
213
225
185
194
160
224
195
143
128
172
203
238
218
195
197
213
155
172
187
190
162
194
203
254
146
231
246
159
236
210
232
227
177
215
186
191
268
167
192
205
224
180
201
151
227
200
209
221
165
181
177
219
147
287
238
132
121
234
183
191
178
203
282
181
181
144
215
188
191
178
188
186
236
238
131
268
238
175
188
173
182
228
248
181
223
188
198
186
169
119
248
179
209
197
155
150
205
134
200
189
184
136
166
163
200
278
149
171
189
253
225
258
202
193
203
248
174
234
236
195
187
194
196
163
180
254
260
208
170
238
205
219
212
215
172
159
189
213
182
191
247
265
171
157
178
178
177
209
137
235
249
233
159
229
205
234
220
175
183
205
195
157
227
227
205
217
178
211
228
173
200
185
166
156
152
157
149
202
245
202
203
183
199
166
123
165
241
246
156
240
196
226
198
258
190
212
183
223
240
175
225
202
224
211
166
184
192
242
186
191
261
151
156
220
213
168
227
158
197
218
226
190
164
184
230
182
181
231
186
182
214
264
199
125
281
191
124
211
243
196
180
177
210
256
204
203
202
140
175
223
210
208
196
223
140
184
205
178
202
197
217
194
213
219
162
208
204
199
238
138
203
255
177
200
163
201
167
233
175
232
204
236
242
199
149
148
130
236
145
185
221
217
234
212
254
195
238
188
214
205
148
224
176
202
214
157
199
198
165
161
230
255
249
270
183
203
158
189
236
214
170
192
242
202
180
171
137
266
187
186
170
186
214
162
215
148
244
210
218
190
150
238
215
152
215
158
185
206
175
168
135
216
179
232
228
186
247
142
172
193
211
175
180
238
182
199
217
162
244
191
205
210
170
170
162
235
235
184
198
192
151
156
220
176
137
185
220
191
201
250
205
189
215
196
247
211
259
216
173
193
221
225
181
173
210
184
221
234
169
208
194
145
175
215
210
161
232
166
179
107
126
191
211
199
216
164
208
243
148
222
159
215
230
134
186
226
186
223
264
213
202
213
196
184
229
220
169
266
197
247
206
247
156
258
193
200
173
244
230
221
204
196
236
227
203
182
209
195
227
202
213
169
165
185
204
172
184
223
235
202
228
219
187
180
209
210
100
142
158
139
245
211
209
224
242
233
194
183
210
211
178
178
171
184
166
223
196
181
187
190
213
140
172
200
224
203
188
221
249
179
217
157
186
197
237
190
239
193
184
189
218
211
286
121
239
217
184
156
240
216
187
155
214
219
190
199
221
158
218
184
188
196
167
253
213
139
208
171
214
221
233
201
165
204
197
262
209
192
224
191
136
207
226
182
182
167
231
163
143
229
198
217
144
160
185
206
181
246
154
166
227
205
223
172
146
228
209
171
126
140
186
183
193
238
198
89
155
153
191
154
153
212
248
226
226
202
179
154
151
196
191
186
201
230
201
186
247
239
197
211
228
238
182
175
203
205
198
242
262
220
247
174
246
189
208
203
171
230
187
244
184
215
185
164
155
207
225
263
215
191
218
188
182
218
177
160
215
155
189
175
200
201
154
200
228
221
213
243
207
184
152
197
204
148
255
203
276
161
243
249
249
155
235
202
190
186
208
222
173
194
187
177
185
172
184
217
154
239
244
232
221
182
231
286
147
214
166
212
242
192
172
236
219
228
142
226
181
167
243
252
154
236
151
184
181
205
199
199
229
248
172
187
166
226
224
168
165
214
254
215
238
197
179
218
192
290
188
227
136
123
165
150
208
211
208
143
224
228
220
168
211
246
192
240
256
201
194
220
204
249
226
195
265
227
187
150
205
141
185
173
230
161
207
216
212
180
177
229
191
264
175
238
276
194
127
177
202
159
176
187
259
259
142
208
203
229
232
176
170
223
184
219
147
238
155
226
260
233
127
153
205
177
159
198
213
149
213
197
207
243
191
186
232
203
192
150
198
239
195
182
184
153
170
160
142
179
254
170
173
166
122
213
186
202
229
173
185
178
193
223
177
93
222
192
204
182
219
185
128
256
198
181
156
176
193
205
214
203
207
188
149
148
194
183
190
229
191
226
171
150
243
227
149
175
218
152
169
233
192
195
183
227
188
132
202
237
215
219
219
230
194
165
205
184
230
225
243
161
237
189
193
158
208
145
145
174
165
204
222
246
199
170
288
217
230
212
248
148
168
227
220
232
252
261
228
235
175
154
204
211
260
233
180
200
195
237
125
187
261
250
204
213
207
216
216
223
225
238
215
194
196
187
182
151
211
169
198
252
178
192
132
231
160
183
169
228
186
219
209
233
251
193
257
170
177
232
184
218
158
211
173
204
137
209
248
222
165
252
152
249
196
205
174
156
223
205
188
160
146
226
157
202
244
189
252
182
232
198
197
257
208
201
232
203
209
117
156
192
167
211
205
224
252
159
178
236
136
234
179
262
238
209
224
191
223
210
184
174
197
154
190
179
188
265
194
251
117
118
164
257
251
183
229
221
233
208
177
151
208
188
175
212
207
215
238
232
185
198
164
152
231
225
225
190
220
240
171
269
182
211
196
204
196
243
213
226
177
259
174
218
241
242
186
218
204
166
237
176
236
189
136
165
197
175
236
188
200
235
154
235
212
216
139
200
231
239
210
209
156
152
221
170
192
215
235
186
131
159
211
189
175
191
171
201
239
170
197
233
243
141
205
154
225
155
262
184
221
157
170
199
115
217
242
217
221
246
194
179
167
185
117
217
207
146
165
155
197
154
209
193
193
214
204
167
224
172
196
198
180
188
199
188
233
216
248
198
166
182
167
185
136
206
242
156
195
160
223
223
182
229
171
128
200
131
199
156
222
226
224
168
165
184
214
192
147
227
235
236
239
217
120
239
199
197
205
174
250
169
223
208
181
203
231
172
241
203
188
179
219
202
220
196
210
248
187
144
199
216
198
208
158
249
229
209
220
200
184
209
159
168
237
162
164
231
149
182
215
185
174
122
292
235
179
240
209
262
248
120
197
148
247
197
222
156
173
220
224
221
193
168
220
158
195
194
214
164
249
153
194
178
233
227
137
176
222
227
193
170
200
185
193
200
134
191
136
103
130
243
252
197
211
250
164
224
207
221
224
175
232
272
225
156
203
191
178
166
228
192
180
245
147
214
194
278
207
173
200
177
227
215
176
176
216
184
188
189
161
243
227
151
201
220
188
192
159
166
164
111
158
194
186
216
159
184
195
284
224
210
184
176
223
195
177
201
226
172
226
219
210
251
218
235
188
308
246
192
230
209
206
150
183
222
167
232
204
206
206
169
199
235
212
219
128
249
225
182
209
210
235
222
194
143
248
200
173
285
201
184
204
279
178
149
193
186
257
193
140
172
215
201
212
211
212
223
156
246
195
191
136
180
221
148
180
189
239
230
164
202
207
224
190
188
146
224
235
211
224
162
208
193
255
205
204
199
189
242
222
234
249
146
203
259
174
117
179
183
177
151
198
163
190
171
186
251
191
197
194
192
185
142
94
190
151
169
234
153
212
243
174
219
175
196
184
180
213
175
194
174
226
191
162
248
226
237
249
154
207
191
230
230
177
184
206
192
141
211
157
198
183
266
258
196
224
133
143
227
161
115
187
218
213
160
231
212
157
149
230
168
222
207
231
145
214
218
133
149
169
195
225
204
160
186
197
236
232
229
234
197
230
211
241
213
166
228
194
212
240
218
203
209
246
220
127
244
231
203
115
186
247
152
213
230
241
212
215
260
246
247
171
206
230
158
177
255
191
207
141
194
192
159
227
212
262
248
122
243
204
247
179
233
195
188
162
202
266
171
182
174
182
214
160
208
238
178
208
171
177
190
230
182
227
182
186
252
195
185
153
165
186
168
184
211
158
204
224
222
210
180
167
191
235
144
239
206
168
172
136
257
221
158
176
152
207
246
178
176
229
174
190
209
149
268
219
210
153
174
259
221
233
222
234
238
151
233
218
218
180
193
168
169
202
223
204
167
202
171
182
195
193
221
221
171
163
147
185
203
262
193
214
219
245
183
201
216
194
191
176
179
166
192
210
215
230
180
206
199
140
190
161
190
225
199
173
176
134
227
225
172
207
167
195
176
175
180
192
180
213
167
168
237
215
224
155
172
251
220
256
219
248
147
249
234
256
175
159
165
183
223
209
194
173
175
234
254
141
192
159
165
175
238
261
182
238
232
182
197
183
227
159
214
199
192
206
141
225
224
175
213
215
212
184
221
125
158
174
216
236
199
188
208
261
205
201
226
209
178
252
240
191
236
229
193
167
159
212
168
176
216
204
215
167
237
214
177
232
185
187
184
127
195
174
158
221
201
231
263
210
233
215
202
159
197
180
228
220
165
223
206
153
219
188
221
182
160
167
250
206
241
121
204
164
169
203
177
239
199
204
171
241
240
263
217
209
169
182
151
131
213
218
146
231
202
178
145
238
179
226
261
182
237
256
264
200
189
188
228
145
202
192
176
166
213
150
247
208
191
244
224
189
129
214
188
196
173
227
155
142
177
258
181
157
173
221
206
200
206
197
237
201
247
243
230
247
202
210
201
170
228
201
161
152
211
251
179
205
215
266
248
176
214
200
186
221
158
143
208
227
227
255
118
177
206
221
222
237
265
168
200
108
223
222
202
220
169
220
210
189
185
185
202
214
195
167
208
200
123
223
214
181
173
230
220
207
196
174
182
199
194
171
213
189
176
171
202
202
252
221
191
190
234
226
226
196
127
188
177
155
166
262
109
185
215
158
233
206
247
254
207
209
237
222
196
261
199
218
207
250
173
162
192
244
263
215
167
206
261
209
172
203
201
198
150
246
200
205
181
142
203
228
179
226
140
220
152
275
176
198
263
202
175
147
229
200
168
225
209
233
194
232
121
258
243
193
172
178
180
189
174
209
212
223
187
251
190
208
146
171
189
234
130
181
131
143
185
175
179
215
235
211
169
229
211
216
146
256
217
198
219
190
202
183
185
164
201
189
219
265
240
180
156
189
201
196
131
143
114
138
228
206
212
199
202
207
153
184
186
232
199
208
203
210
163
243
221
217
185
163
164
212
212
189
211
202
128
184
190
243
263
181
147
172
215
180
245
198
203
224
168
183
118
244
248
221
198
224
234
208
180
226
205
197
165
225
189
181
206
266
227
173
186
235
193
170
225
217
223
206
169
253
197
224
235
196
250
237
236
263
231
177
226
184
234
216
240
182
224
217
225
197
202
209
227
237
238
200
192
176
204
216
275
228
172
228
214
273
153
183
219
221
166
229
247
253
200
232
178
204
194
232
250
173
169
169
139
195
248
213
161
227
223
218
257
157
199
214
175
187
206
213
202
176
209
179
151
178
148
251
184
197
129
152
237
247
218
120
151
192
237
143
200
184
241
203
173
193
204
198
210
218
181
196
179
138
218
167
172
230
218
217
244
192
190
225
234
195
149
176
181
199
188
224
225
230
232
182
162
242
125
179
249
187
206
159
154
221
233
206
217
167
172
245
181
218
210
172
198
236
174
174
197
196
181
227
272
218
195
202
168
191
224
187
218
255
168
222
158
175
154
142
163
244
186
161
195
206
237
212
198
187
198
198
220
239
216
211
141
170
170
236
205
288
212
259
172
234
146
197
232
189
222
116
231
121
226
197
211
185
225
217
213
175
193
188
204
195
236
221
128
225
221
167
240
228
204
202
165
226
151
221
209
284
181
249
216
263
172
221
166
260
172
244
223
130
220
193
273
154
238
244
207
203
225
184
203
193
172
214
184
236
208
223
197
267
197
134
256
203
202
198
175
157
182
173
238
210
236
235
251
216
166
245
192
159
193
191
224
236
135
243
240
197
193
227
252
212
173
240
205
224
164
113
208
180
186
178
232
202
182
149
223
236
190
168
215
187
199
235
230
200
131
219
237
226
195
154
175
134
159
175
170
212
213
210
219
218
190
185
245
196
216
188
131
142
150
212
171
201
225
205
218
211
193
236
195
165
176
247
192
214
204
232
221
189
155
153
204
263
225
219
251
187
159
158
134
172
185
239
221
236
140
185
195
221
185
214
199
208
171
225
180
157
148
175
158
222
244
245
125
172
105
193
108
249
213
230
233
175
210
196
225
176
259
135
208
225
175
186
223
165
125
133
196
207
178
165
232
213
192
227
182
172
152
200
231
194
198
193
191
192
176
190
149
183
139
219
199
198
218
156
175
255
240
162
195
266
239
175
207
157
168
232
187
202
239
228
202
222
180
207
195
190
173
192
236
211
176
174
255
217
210
177
179
233
164
260
260
166
222
180
217
223
173
187
171
256
209
185
208
206
195
196
240
182
189
190
213
112
247
224
152
209
94
225
127
177
231
210
239
166
227
290
238
148
167
227
208
172
214
229
187
167
154
188
180
237
198
232
199
223
207
183
145
241
126
218
175
170
158
216
219
160
173
171
166
140
240
271
241
239
162
199
158
229
237
264
200
173
207
160
138
186
213
178
154
224
192
191
277
253
200
216
132
155
208
168
214
174
238
192
244
203
210
210
240
232
169
193
191
191
203
219
142
173
180
207
158
199
214
134
197
263
159
198
193
250
208
175
163
257
148
208
197
244
169
238
175
140
165
196
228
167
233
246
140
242
190
199
242
163
183
159
207
227
150
248
201
225
196
200
204
191
249
183
180
233
257
212
161
153
227
188
179
242
149
240
219
239
222
194
213
235
162
198
225
218
169
96
220
194
197
188
166
188
246
141
209
155
197
149
219
171
197
140
233
282
164
225
192
199
206
211
190
128
163
251
218
125
205
105
221
175
131
249
194
217
184
197
217
229
197
205
181
265
180
200
178
204
146
227
141
230
141
205
232
198
246
282
226
206
117
170
281
215
223
158
174
203
227
184
241
216
276
287
155
189
197
252
207
154
240
265
238
226
151
218
213
160
203
220
203
188
217
222
254
243
165
225
208
168
138
194
195
169
196
248
223
199
170
215
234
170
179
203
208
202
173
228
189
239
150
176
151
227
249
207
171
236
176
199
201
201
200
141
195
210
190
226
157
172
235
150
226
178
245
202
118
196
177
242
216
255
198
296
225
191
190
171
219
212
247
180
214
175
124
152
194
230
157
288
247
190
224
286
206
213
218
192
186
160
176
203
146
206
196
221
209
266
190
202
243
156
188
221
228
214
215
213
201
197
199
124
193
189
247
229
166
146
233
228
146
189
164
166
213
203
189
183
218
163
205
229
232
207
217
250
234
166
247
159
203
180
196
219
182
187
167
196
183
171
225
156
170
229
208
203
172
290
184
193
198
208
208
192
196
195
161
154
203
234
195
199
205
173
216
179
197
206
164
195
218
237
212
219
210
182
183
187
222
215
233
219
249
243
178
187
220
193
266
182
172
182
190
213
228
251
229
219
240
185
187
178
226
126
232
244
265
190
200
225
211
204
187
275
165
198
281
228
119
202
181
214
246
180
148
181
206
256
218
256
225
185
190
216
204
158
183
139
212
181
164
181
268
190
189
246
232
203
231
207
190
166
110
251
184
181
189
189
183
138
285
217
252
187
205
214
216
277
206
213
187
159
177
96
238
173
187
157
158
199
186
173
194
191
180
193
177
233
176
258
226
228
186
145
227
239
210
134
256
241
160
214
162
171
172
173
196
186
254
205
163
174
138
199
221
193
225
214
187
165
225
197
287
209
161
203
187
214
222
206
145
181
256
159
186
214
163
173
171
196
235
217
190
241
174
127
136
178
172
153
176
250
245
132
249
220
221
237
228
218
134
197
200
196
255
195
260
179
199
192
216
233
174
221
201
147
170
191
176
232
223
221
246
186
192
144
256
214
259
211
200
217
147
220
177
221
181
198
203
157
197
206
220
187
191
193
205
189
252
182
259
186
88
177
218
195
174
155
204
239
201
243
150
198
129
139
223
225
177
221
219
171
162
222
171
134
205
223
201
184
226
232
201
211
194
235
217
239
215
192
198
175
182
201
189
178
169
233
189
200
229
225
219
148
228
281
190
170
170
124
228
174
187
257
161
238
212
202
162
190
157
155
198
220
198
193
226
172
203
223
238
166
231
181
223
129
224
201
209
152
195
157
217
112
161
214
178
245
252
232
204
235
227
187
224
227
204
224
205
205
167
248
217
204
224
180
196
252
250
223
262
205
180
221
182
211
139
202
221
157
194
181
262
223
187
151
124
221
188
176
177
200
195
185
209
241
80
208
227
206
160
201
246
232
202
138
238
164
223
193
197
210
154
183
196
143
225
131
206
239
229
195
170
139
202
258
234
140
208
217
244
216
193
231
236
269
198
204
228
256
188
149
196
178
202
193
233
131
228
264
225
202
169
204
170
167
264
175
235
192
194
123
184
182
236
193
249
227
175
187
176
156
225
189
184
203
174
253
212
230
185
184
234
209
217
208
176
231
168
236
196
193
225
206
204
210
221
152
169
198
209
235
191
239
191
196
158
148
143
238
180
207
222
177
172
162
208
151
243
158
184
168
180
134
180
151
204
160
192
228
174
151
238
215
168
184
182
205
155
232
214
259
198
243
180
175
199
148
196
217
240
167
140
239
188
228
211
245
185
148
174
208
211
189
187
223
174
216
195
182
238
200
200
170
231
266
210
207
178
189
170
204
260
199
223
236
188
250
199
154
136
197
176
171
249
206
196
204
164
190
164
180
174
172
205
189
160
184
205
210
201
151
163
131
214
220
133
119
197
196
170
224
197
202
237
207
175
180
224
214
137
167
175
180
240
197
178
264
154
218
219
212
213
209
221
203
185
199
197
219
241
216
263
170
198
86
163
233
159
169
163
156
246
148
269
196
272
232
231
177
214
195
215
178
186
210
224
212
215
160
188
128
207
223
186
266
221
124
208
225
190
139
208
235
268
223
133
151
155
158
256
220
233
203
232
221
228
166
223
219
235
232
187
118
183
195
217
205
146
245
184
169
237
213
197
223
219
175
191
209
190
239
223
236
152
217
192
194
170
207
220
202
156
188
112
209
185
155
276
224
225
223
211
232
202
206
207
134
234
232
230
192
236
196
146
212
163
165
164
277
157
184
161
233
206
190
227
246
175
227
129
232
238
198
210
178
240
210
274
203
190
204
221
206
196
130
236
121
219
252
213
259
190
207
208
251
163
204
171
141
174
216
210
198
195
246
157
198
255
199
207
253
255
252
269
282
157
210
153
253
158
233
164
217
234
215
167
186
225
194
185
139
199
145
232
187
195
177
253
178
178
157
162
220
173
235
159
147
202
176
204
184
195
185
159
160
225
228
204
177
172
219
134
190
129
207
215
154
267
200
211
213
232
190
207
225
223
157
148
237
183
182
255
210
166
160
192
213
239
173
174
220
171
187
244
163
194
214
216
207
197
201
177
204
263
226
238
180
231
223
148
236
175
210
218
170
187
223
217
208
265
249
165
168
194
237
234
167
219
175
178
156
193
187
220
182
181
194
183
188
192
203
128
178
191
200
218
153
210
215
232
185
233
136
193
190
189
182
161
258
195
65
206
231
138
182
184
245
245
163
251
218
197
172
208
224
217
146
200
224
245
172
246
214
165
223
162
209
170
247
154
178
209
193
239
178
201
254
234
166
204
192
246
215
218
246
74
205
186
156
251
221
206
198
208
184
220
143
212
221
176
211
210
156
231
181
244
255
189
165
208
214
245
209
166
156
222
194
158
198
178
184
185
206
197
221
183
211
104
171
247
226
153
204
241
248
246
161
118
215
210
160
210
168
200
179
202
150
171
213
150
205
209
193
213
196
221
144
219
219
170
285
184
198
237
241
243
262
229
176
202
171
228
185
177
165
243
223
221
193
198
199
209
208
197
244
189
169
186
197
233
138
256
209
164
208
264
234
213
239
133
189
232
187
228
226
208
224
182
248
253
185
255
221
242
254
180
224
167
228
171
110
221
241
182
243
127
148
214
203
218
193
225
213
95
172
139
215
196
183
208
238
254
151
141
194
189
217
184
257
128
141
223
242
198
243
305
209
192
237
186
111
254
172
186
181
230
210
163
210
244
129
182
164
186
167
177
176
206
214
215
154
148
216
175
163
193
210
222
197
202
188
109
161
193
122
201
179
191
223
193
177
212
202
207
229
213
215
192
210
141
172
201
203
167
149
184
243
189
264
196
171
235
217
262
203
132
169
239
236
175
218
216
221
224
219
150
273
183
264
158
253
193
219
221
194
171
198
199
189
160
128
174
242
169
198
179
148
214
194
181
212
174
208
193
217
122
175
164
214
126
203
155
211
177
242
155
177
206
201
186
278
175
220
211
268
187
141
185
138
214
177
210
223
196
210
211
235
171
240
140
223
235
211
173
211
104
192
201
196
154
238
202
171
252
216
179
133
219
209
158
231
206
133
166
195
151
196
253
214
180
250
236
214
186
169
210
220
244
223
176
220
176
203
148
223
210
149
154
167
253
184
228
143
207
242
138
183
194
159
218
189
220
206
205
173
256
266
233
209
229
164
237
271
207
223
152
164
204
253
168
243
211
218
221
187
197
259
140
167
272
178
154
198
183
247
134
188
127
277
232
190
236
215
234
152
203
269
175
133
134
183
238
236
244
136
164
256
215
233
194
157
170
207
217
216
202
178
205
173
149
181
219
216
221
114
212
187
208
192
162
226
210
197
248
195
184
205
147
131
174
184
232
209
205
201
199
154
182
162
193
194
260
229
168
212
183
240
262
179
273
211
235
156
171
178
198
210
190
293
247
101
181
201
218
150
170
235
194
182
165
131
234
255
208
178
178
171
141
214
208
216
214
260
228
172
261
264
209
215
122
271
217
201
128
162
197
158
151
207
172
173
201
271
203
242
153
187
202
240
199
240
244
243
214
218
160
170
248
273
161
164
175
190
172
217
217
120
217
231
171
199
160
214
203
273
216
176
190
213
160
158
177
246
207
154
224
212
221
129
190
207
243
191
229
165
237
138
201
228
215
166
199
158
170
242
146
213
205
233
199
208
182
176
227
202
184
126
226
180
177
196
171
231
222
159
192
200
233
164
156
257
165
196
223
178
186
146
198
231
237
206
250
157
182
273
196
142
221
205
238
171
188
198
276
213
206
260
210
248
161
195
200
224
242
184
182
183
250
176
173
208
159
174
153
188
237
206
153
218
205
215
240
141
180
211
198
221
149
208
218
227
191
222
177
215
232
237
233
192
178
178
222
115
125
195
223
221
226
119
225
207
158
263
242
255
193
194
123
239
178
152
180
160
248
267
213
171
237
168
248
221
201
257
269
181
177
232
198
191
172
215
236
232
149
139
223
201
207
190
195
212
164
185
134
294
170
203
206
199
231
248
209
145
195
226
233
220
185
194
173
238
236
214
235
271
232
230
236
221
124
165
148
244
245
235
200
222
234
161
221
200
180
178
234
186
197
240
187
189
182
212
202
242
251
215
177
232
211
175
177
249
196
198
226
208
159
229
212
171
163
231
174
220
163
195
202
249
195
194
134
202
197
155
246
226
197
176
226
260
216
254
134
206
185
168
235
281
199
206
180
171
186
192
215
169
165
176
144
239
151
185
186
232
203
198
160
156
192
127
148
199
121
189
230
258
203
173
237
202
171
136
183
168
222
230
187
130
230
179
170
205
186
181
225
208
195
203
208
219
221
257
176
205
210
207
226
186
198
195
183
237
245
193
220
146
210
178
193
176
176
175
186
233
180
205
183
190
157
244
181
99
216
165
221
201
260
242
184
193
245
239
257
213
218
255
123
206
194
172
173
198
135
211
132
171
181
146
185
208
225
198
204
168
220
231
231
230
259
228
240
196
217
176
195
151
235
233
225
192
253
194
175
254
118
222
111
191
161
146
179
232
190
181
217
138
182
221
219
206
256
214
201
208
212
164
154
234
236
191
234
156
142
257
208
178
198
214
205
210
223
194
182
250
145
202
228
229
204
214
205
229
127
197
201
209
261
192
209
146
228
165
253
229
273
244
203
153
229
252
217
232
198
184
187
228
190
206
233
220
204
183
232
249
132
225
223
195
216
235
157
213
209
182
194
213
206
260
168
179
205
217
224
203
218
218
206
241
227
175
178
205
215
188
215
172
156
228
175
252
102
228
198
208
160
219
209
211
223
206
236
175
205
162
144
140
191
238
234
200
211
200
187
159
199
256
171
235
214
215
214
183
207
202
278
231
235
184
261
172
150
205
269
256
227
226
214
191
202
179
200
171
241
174
144
229
187
196
197
177
235
109
181
209
226
187
183
200
186
211
253
201
145
199
164
220
179
166
219
228
227
141
204
161
212
194
180
230
226
193
227
227
196
275
283
265
198
191
204
225
163
190
206
126
218
161
177
200
218
194
192
220
215
162
178
187
190
201
136
225
198
139
128
227
229
209
170
179
246
182
246
248
222
205
211
103
146
243
252
157
223
193
175
230
210
162
209
160
196
225
218
165
243
185
285
152
200
137
138
197
147
159
174
208
222
154
214
196
199
174
213
265
228
202
152
208
181
267
214
242
221
191
200
211
237
255
200
197
230
139
155
120
204
241
205
213
173
252
184
254
175
153
167
152
166
186
204
218
239
155
214
149
258
161
242
198
176
241
222
213
191
134
216
172
207
188
185
237
211
189
198
161
209
245
152
215
183
207
163
194
212
212
162
205
237
143
165
124
235
191
230
187
209
167
168
228
158
140
217
174
157
212
181
265
227
207
185
214
203
249
217
155
196
203
229
253
159
235
175
267
140
154
155
207
195
182
208
209
238
143
183
253
136
218
206
205
187
204
183
231
228
240
167
178
166
161
227
215
143
150
197
170
227
201
183
169
197
157
227
216
210
108
255
230
182
140
174
189
186
199
182
209
247
217
207
234
219
197
210
204
198
189
160
205
225
252
203
239
223
178
209
259
179
228
209
188
151
288
232
191
111
175
206
229
227
171
205
213
165
201
171
251
181
178
145
235
200
165
145
226
227
199
205
149
150
184
252
179
292
164
183
236
226
176
253
171
194
162
164
159
148
168
217
180
201
210
201
240
195
238
199
210
196
202
216
241
213
207
184
191
126
180
170
208
209
152
159
217
159
205
213
131
205
245
167
242
215
120
222
216
204
208
217
116
154
239
212
131
189
200
191
239
220
207
199
143
128
148
211
175
173
254
224
160
206
239
186
195
178
198
188
162
203
271
150
170
193
204
230
216
245
208
245
181
142
262
197
241
282
209
252
183
200
175
165
135
142
111
245
218
215
222
217
253
237
151
217
200
156
240
222
176
172
241
154
233
211
230
156
202
198
214
162
203
236
189
158
269
147
167
159
195
235
158
199
177
206
197
193
186
222
105
148
218
209
206
154
200
218
190
181
186
243
200
223
200
170
228
218
234
184
227
210
203
104
177
210
150
229
218
164
153
204
246
211
233
171
257
235
181
201
143
235
199
230
212
204
215
158
172
201
182
221
228
225
226
211
151
240
172
166
141
184
200
196
164
217
203
205
173
206
228
231
193
210
234
235
238
156
252
195
216
160
237
215
188
186
212
169
192
212
250
223
194
221
198
272
167
246
117
244
130
201
197
217
213
174
190
209
206
207
211
153
200
227
155
250
178
236
232
229
184
174
164
157
209
192
223
176
237
207
197
144
239
190
183
170
225
245
224
190
180
244
183
198
245
165
168
153
159
238
247
233
194
212
167
231
236
114
171
235
215
150
199
198
190
154
207
213
216
234
235
187
191
205
210
189
203
228
209
135
201
218
204
144
212
198
263
195
134
148
171
187
196
147
169
200
185
226
186
203
211
241
213
159
239
197
149
193
213
168
222
214
223
222
204
204
111
231
237
253
234
193
186
235
191
169
222
235
157
177
173
170
235
229
268
205
200
203
192
218
156
196
199
197
178
216
144
214
134
198
235
205
248
230
191
220
207
240
172
173
208
192
265
193
200
227
174
182
164
227
263
220
218
216
196
203
274
199
224
169
207
215
216
213
180
232
169
200
239
178
139
216
243
203
152
189
231
255
224
153
189
234
192
147
205
193
183
139
189
177
199
224
163
155
156
207
223
221
165
238
224
219
151
172
183
209
104
247
148
235
194
145
146
225
173
226
263
197
256
175
169
242
225
179
244
166
207
212
143
293
177
209
251
184
200
181
165
189
260
219
204
221
191
160
193
194
238
225
227
187
270
205
202
226
186
130
212
187
178
253
199
152
197
127
133
154
160
178
159
188
205
202
188
171
199
222
223
225
188
229
119
189
166
104
193
230
220
230
249
233
244
178
94
210
188
138
223
163
159
176
210
173
199
152
204
214
241
202
212
163
214
155
190
218
168
181
271
210
239
212
221
236
156
264
277
247
175
281
235
244
224
142
162
225
230
172
145
216
230
198
235
103
191
190
176
188
192
213
192
183
227
240
194
160
190
180
145
163
243
193
190
221
172
189
255
157
177
226
188
231
177
175
146
167
223
189
200
169
176
133
174
172
154
179
231
154
207
235
196
205
189
185
191
199
241
223
138
130
194
163
208
207
222
179
197
158
168
235
190
172
232
187
196
259
265
205
240
182
198
194
157
226
230
229
210
174
189
210
133
219
180
195
234
197
247
164
164
167
216
167
224
203
246
213
163
173
219
125
161
250
215
215
206
239
170
171
215
208
166
158
159
181
205
230
174
155
229
182
187
197
192
240
152
217
223
197
202
220
242
202
193
217
202
152
179
175
176
209
215
169
207
190
245
205
184
188
199
117
180
168
222
177
229
177
207
248
246
235
166
179
262
167
169
242
202
140
200
190
130
153
195
216
126
144
242
208
264
194
214
259
190
145
181
242
213
191
196
188
183
216
161
248
255
134
137
197
222
174
198
194
213
164
228
158
169
193
218
199
222
193
219
219
139
129
196
213
170
212
224
153
238
112
231
237
162
220
225
256
226
200
217
202
271
199
237
180
202
226
167
202
218
224
208
201
231
171
237
251
205
222
192
215
157
209
149
123
190
219
157
238
210
200
193
238
188
246
230
188
229
201
188
233
150
156
189
201
182
219
156
169
140
173
231
205
190
214
212
223
200
217
244
214
276
130
218
227
166
256
251
162
194
238
182
152
211
201
191
241
155
288
205
186
227
187
173
151
176
132
197
177
220
259
204
199
243
91
229
213
223
230
196
221
220
233
210
191
176
161
214
182
208
169
236
195
148
232
196
199
158
200
211
248
237
195
241
230
174
235
231
226
173
140
137
182
201
203
207
188
226
200
180
213
169
169
166
229
178
199
166
203
226
176
187
200
205
228
214
141
239
215
171
214
213
134
166
225
230
214
158
169
251
237
235
165
167
212
223
242
187
184
239
173
241
211
183
202
221
212
163
211
171
228
213
165
188
225
197
247
227
222
148
260
170
158
156
216
187
193
166
198
206
238
175
208
196
208
168
286
212
245
213
185
234
209
184
189
206
171
173
175
236
253
212
221
205
150
235
203
190
227
124
198
243
213
193
211
234
159
233
194
215
206
162
176
249
202
167
183
169
225
197
197
277
201
233
223
244
202
154
123
177
185
186
239
150
241
170
183
161
154
183
177
220
182
231
177
153
242
169
147
210
208
189
237
169
141
182
194
201
190
147
138
266
176
200
151
180
197
119
170
204
228
178
165
218
198
208
250
189
178
118
174
153
220
220
219
163
233
239
197
231
218
177
220
208
135
177
212
175
226
188
235
137
219
213
155
278
233
170
161
166
156
137
158
177
135
172
159
167
245
222
251
135
191
161
208
203
207
182
171
191
224
188
232
156
188
225
166
253
190
210
187
195
154
159
207
227
126
166
187
184
172
181
208
202
223
228
200
171
242
179
174
205
160
226
215
200
139
250
217
186
147
208
159
103
217
186
231
169
185
199
184
250
209
192
222
223
162
207
201
208
181
193
180
150
122
212
240
161
230
156
220
236
180
191
188
196
212
222
228
156
164
147
255
249
258
205
238
148
139
241
181
189
167
192
263
189
227
213
209
150
196
203
211
193
213
182
221
193
245
249
186
242
176
288
231
179
273
227
199
186
206
218
183
213
195
257
137
120
212
194
255
242
230
161
175
188
193
220
199
212
225
155
221
195
184
242
194
184
191
226
185
154
173
240
253
223
193
187
155
216
239
229
210
172
180
227
256
202
155
228
236
231
213
189
193
208
177
163
215
244
163
219
182
187
146
179
173
200
185
204
164
195
247
161
192
139
168
192
232
171
214
220
131
222
127
200
225
190
284
251
212
209
197
264
202
159
172
216
239
264
209
198
167
218
231
175
234
146
238
209
205
228
187
201
206
198
183
215
177
190
208
164
220
216
169
208
205
178
214
241
141
185
205
188
169
264
207
195
187
169
198
174
242
201
243
220
176
135
281
243
219
215
205
255
218
153
183
214
237
166
190
147
217
176
168
123
218
192
169
195
255
204
175
170
177
208
159
243
236
168
244
214
242
196
228
212
113
167
209
220
212
237
178
180
179
181
260
207
159
187
215
249
177
270
218
212
200
197
193
209
199
176
198
172
208
192
213
189
273
246
253
146
175
172
241
210
180
216
164
195
251
214
200
186
179
280
215
208
268
181
225
184
236
256
199
169
228
237
267
130
149
223
189
200
167
201
210
236
175
208
199
198
175
212
232
217
230
123
276
178
206
179
211
202
174
225
205
206
210
215
206
242
150
215
188
206
170
222
209
182
211
123
219
161
154
211
183
180
219
206
154
171
175
165
183
200
176
245
182
150
205
206
206
157
211
245
211
229
207
169
198
170
219
222
269
175
183
169
135
206
193
201
225
197
203
246
204
155
224
238
203
245
167
245
206
209
204
236
222
214
209
176
217
216
204
236
211
187
198
196
200
175
208
232
153
256
180
186
227
178
178
142
164
188
222
161
195
177
214
297
181
207
178
276
186
224
173
194
137
190
167
114
181
212
187
159
211
200
235
150
118
187
258
171
184
181
264
221
207
226
174
202
208
229
125
202
187
278
204
226
240
205
197
221
184
231
205
162
180
202
211
248
190
160
219
221
200
228
180
214
155
168
241
244
245
176
153
163
170
170
220
225
173
202
163
234
247
259
230
172
185
178
297
278
167
196
154
188
252
180
220
207
175
245
219
232
164
198
135
221
221
286
220
208
180
202
197
199
208
172
210
161
214
185
252
179
208
153
227
177
206
196
242
215
232
130
187
194
168
188
117
218
210
192
187
182
184
200
191
194
162
194
177
192
247
186
163
207
231
167
196
178
190
202
154
245
121
127
245
270
199
134
216
257
180
253
243
166
184
231
228
174
184
177
175
205
156
210
234
173
240
267
216
259
205
163
206
207
230
219
212
209
157
231
240
219
198
187
188
196
174
181
182
183
171
156
232
218
198
215
263
222
208
209
131
200
184
177
157
170
201
187
239
239
188
223
179
201
233
216
154
165
171
196
256
200
221
192
216
192
192
130
163
231
201
184
196
227
213
143
223
214
169
219
232
241
201
223
186
223
286
115
205
207
241
241
188
190
219
185
149
208
214
129
158
234
226
217
199
182
206
272
250
204
255
219
233
184
268
185
199
254
163
204
209
208
231
219
190
183
203
256
202
201
158
207
226
226
233
154
161
221
188
207
211
229
214
204
199
151
259
189
220
182
238
200
157
249
250
216
162
166
184
211
177
173
175
250
170
218
161
180
115
207
218
171
220
217
269
204
181
153
187
225
174
163
187
220
203
209
118
178
193
243
160
181
207
187
165
238
188
230
208
198
174
180
289
208
154
292
174
185
167
239
174
181
183
196
221
212
213
202
154
235
164
205
187
177
254
169
206
179
159
141
168
216
160
177
252
217
200
163
223
143
217
196
141
229
206
189
199
210
198
226
176
220
237
138
139
219
147
210
189
184
140
157
199
211
210
175
268
176
232
199
240
147
162
230
258
230
205
250
215
232
267
213
186
221
213
189
217
244
210
212
196
259
233
142
243
207
186
221
123
211
184
228
215
185
189
272
178
176
214
157
203
233
183
159
188
194
189
223
178
186
231
151
260
233
227
209
173
177
188
209
183
195
191
179
237
230
233
157
200
170
215
209
161
186
179
192
242
220
164
246
217
149
182
206
198
153
128
181
206
189
144
189
173
150
213
157
188
153
135
155
198
185
230
217
241
112
171
178
214
136
135
139
237
210
231
214
135
214
221
205
229
173
259
227
269
184
253
217
227
229
198
194
236
181
234
194
187
260
226
180
171
193
202
195
185
236
212
170
176
202
187
203
207
205
190
200
196
191
198
207
139
166
260
222
220
180
274
232
214
206
264
222
234
247
150
254
145
185
240
258
206
202
264
214
224
209
208
178
225
228
200
187
240
201
223
230
140
236
187
208
178
214
269
167
219
212
141
181
276
148
214
139
155
193
181
222
201
123
146
251
191
180
160
236
146
230
204
204
198
257
258
153
178
215
261
177
279
217
153
274
208
145
159
177
215
214
209
220
214
192
246
176
157
231
181
233
123
207
237
210
154
189
200
246
226
187
234
218
239
184
193
163
162
198
206
145
160
242
208
199
204
175
199
191
197
167
194
145
180
171
185
207
191
222
180
185
258
204
166
197
162
160
199
177
223
223
187
171
235
144
201
136
181
214
191
134
222
227
232
166
189
259
238
209
201
213
122
116
197
181
211
113
240
183
204
192
186
186
182
203
209
172
254
152
204
215
187
225
295
194
170
205
251
191
268
173
214
153
193
189
227
168
163
202
171
191
192
209
214
186
220
182
162
214
222
211
143
154
185
175
201
210
231
195
200
189
200
167
197
203
215
160
212
220
162
238
180
153
208
250
140
146
222
155
174
166
207
157
150
211
222
190
184
193
237
256
147
179
231
258
245
226
236
245
199
143
199
230
150
213
183
188
249
158
159
220
222
286
137
178
203
208
258
197
209
218
260
217
193
198
102
248
178
191
222
216
204
205
228
142
213
179
146
180
212
253
186
217
215
190
266
209
200
170
182
202
162
207
178
179
262
168
241
235
168
183
234
220
227
169
223
178
205
228
178
199
160
211
211
235
224
216
201
157
196
173
213
214
166
208
173
227
239
177
198
199
198
193
244
205
199
183
213
203
182
176
240
159
180
184
194
219
197
215
209
260
203
208
236
258
190
189
171
199
141
231
212
199
216
171
188
185
233
210
208
219
243
185
217
181
244
220
177
197
216
178
227
198
171
228
138
220
189
240
191
193
201
190
200
143
200
190
175
122
175
232
162
226
178
239
227
215
237
210
157
193
125
188
204
226
220
235
219
275
189
185
147
187
207
218
150
231
238
180
185
250
149
257
242
152
229
190
274
179
184
147
174
242
222
238
188
164
227
146
278
194
245
164
204
238
198
155
170
177
163
153
206
178
230
194
147
168
190
148
137
248
181
234
183
210
158
241
281
169
162
255
182
200
159
197
234
154
181
237
213
198
197
220
201
152
159
119
246
200
155
157
207
168
218
244
202
151
250
211
211
164
192
200
245
254
137
248
190
200
236
163
207
241
235
264
183
240
182
242
144
197
161
189
157
168
175
194
198
183
159
213
194
190
188
242
235
162
172
202
206
237
219
201
201
181
161
179
160
208
213
179
235
180
246
177
216
192
223
225
177
197
172
152
192
221
167
199
173
176
184
233
251
226
191
207
238
171
160
181
197
239
186
261
188
201
197
159
174
156
238
189
160
151
165
206
223
249
146
196
206
228
136
134
170
232
254
183
186
155
207
209
232
205
251
224
199
185
230
208
245
206
196
198
160
248
183
217
135
120
186
137
218
174
199
176
180
212
230
151
215
222
206
126
137
240
189
196
214
138
154
157
254
243
157
236
196
174
244
158
174
192
201
205
181
114
180
164
203
154
214
227
237
137
167
218
194
200
184
201
240
238
228
263
182
199
222
188
229
185
184
242
179
193
229
201
218
182
246
187
175
208
194
140
179
172
183
242
207
259
200
258
195
195
165
195
222
179
263
178
235
264
183
207
217
266
262
161
203
231
185
224
217
189
243
207
182
267
227
191
206
200
204
188
212
151
195
237
242
171
197
170
187
206
169
237
240
238
229
181
194
167
260
143
207
215
200
213
222
222
236
220
261
158
179
186
221
251
195
218
193
147
208
220
208
191
251
217
183
208
219
237
234
199
163
241
256
170
170
240
222
194
164
192
190
215
254
154
230
222
219
182
201
209
204
201
189
223
267
263
168
161
149
250
187
192
238
180
213
153
232
181
283
210
203
197
158
263
147
217
200
209
174
205
224
185
111
236
157
207
213
214
226
234
168
174
154
222
205
203
168
199
146
202
210
197
221
208
144
183
196
184
198
238
240
206
168
81
244
235
185
229
216
212
205
130
178
232
213
178
126
185
217
176
202
253
164
210
235
190
244
234
214
219
176
230
202
140
248
196
139
198
180
176
181
202
172
228
202
165
180
173
150
191
222
220
212
161
216
166
153
206
234
181
185
186
218
241
234
251
232
280
256
206
176
184
180
236
195
217
189
180
183
190
217
139
183
231
150
216
171
160
221
254
178
215
196
207
254
204
210
169
223
231
187
207
243
125
240
249
177
206
205
249
248
191
200
216
174
225
150
116
205
242
243
174
195
195
196
191
158
160
221
227
185
221
231
194
208
187
141
187
181
265
184
165
207
133
165
237
223
268
199
162
215
179
122
198
202
172
249
197
180
140
188
181
249
154
174
157
144
209
188
162
211
225
166
177
125
212
168
187
186
172
269
201
172
242
202
191
174
116
160
182
225
235
169
239
167
254
172
229
208
227
220
212
171
211
241
201
218
241
222
155
214
212
200
221
165
204
257
200
249
201
190
232
164
208
201
263
221
116
163
264
239
191
237
233
176
213
182
228
251
225
201
169
250
144
218
208
222
225
181
192
185
196
195
213
212
205
188
144
152
145
196
183
166
217
213
202
193
145
212
190
184
196
196
204
219
223
233
194
202
205
133
218
220
182
214
157
215
193
250
205
141
183
228
191
171
164
142
182
205
216
185
214
201
210
220
207
198
199
231
200
275
217
207
194
195
205
194
236
214
249
228
109
167
168
183
223
164
225
227
271
103
239
216
79
177
190
200
251
154
217
156
235
181
232
200
220
208
196
183
185
218
244
219
129
207
181
257
217
196
165
191
213
252
203
232
224
199
192
231
225
233
213
194
207
187
209
152
192
232
176
218
218
168
205
134
207
220
224
173
247
202
217
187
184
211
207
169
236
176
197
151
177
274
164
190
193
162
217
227
196
198
211
179
170
220
167
166
180
196
203
225
155
240
139
209
170
204
226
230
215
218
246
200
187
155
165
216
234
230
223
198
197
172
154
197
230
184
186
127
225
206
165
126
199
231
153
220
236
234
195
150
230
153
199
199
197
115
201
151
147
189
226
199
240
151
162
191
183
216
231
162
185
179
210
207
232
184
206
212
191
266
225
213
190
163
230
230
188
269
203
169
256
201
253
142
170
177
243
204
207
199
127
220
149
205
210
162
208
209
183
195
215
147
237
209
239
171
218
228
148
193
184
141
196
154
212
263
183
240
251
126
215
184
201
227
179
140
195
187
195
191
197
246
199
203
150
186
215
165
189
238
192
218
205
154
182
249
260
159
191
279
127
169
175
192
205
204
203
248
252
225
129
182
187
143
250
194
130
249
207
153
219
175
204
132
151
262
221
175
163
246
217
226
239
227
189
245
210
253
178
213
245
226
232
204
188
193
222
198
160
261
172
209
148
206
180
140
220
211
212
206
169
233
206
136
208
185
199
219
196
211
157
157
229
198
218
244
181
149
222
200
252
185
236
204
235
189
186
156
231
171
147
234
227
242
200
133
204
185
202
228
221
201
170
273
150
252
194
140
141
264
166
159
208
181
249
165
213
199
216
258
206
190
232
170
167
228
175
218
238
225
220
174
197
166
192
215
218
198
151
208
130
163
167
196
213
217
194
249
203
250
222
103
224
161
221
199
209
205
214
227
230
208
232
163
167
224
198
171
214
236
195
212
183
165
243
207
204
204
78
188
212
222
181
181
176
186
163
188
206
219
188
171
204
198
180
228
172
145
145
171
202
146
199
162
209
129
229
105
184
210
175
209
149
213
189
183
144
243
250
157
196
150
224
123
231
200
224
217
155
146
172
198
246
297
175
214
181
204
180
245
200
154
244
187
231
159
181
180
190
145
131
218
265
112
231
136
176
206
177
217
179
188
96
218
206
230
264
185
239
218
145
197
142
200
231
148
163
202
181
220
181
228
164
143
157
104
182
199
262
177
186
148
149
216
247
218
198
167
196
188
179
196
270
230
210
103
186
169
214
126
213
199
240
202
163
174
222
220
197
166
184
214
163
184
187
192
195
165
199
173
162
226
270
224
122
153
222
84
175
190
144
184
189
203
181
221
250
189
201
147
222
219
123
223
155
217
207
219
185
169
227
230
169
172
159
246
179
178
266
201
197
223
115
225
165
213
235
187
200
214
197
185
194
185
222
230
158
207
152
246
176
247
197
167
247
164
207
209
157
212
183
228
251
211
162
180
208
143
235
210
172
170
159
260
180
257
176
262
193
163
161
199
167
247
201
180
188
178
221
212
195
202
226
216
195
223
189
183
175
213
173
202
225
222
185
283
128
211
207
135
203
238
200
214
218
182
167
212
239
176
144
228
178
183
213
218
236
233
211
261
211
224
140
286
180
210
152
135
224
267
138
222
208
225
227
214
200
225
156
266
149
136
248
202
186
192
220
173
217
229
207
232
207
161
208
194
227
208
197
155
189
199
228
201
215
218
187
225
163
258
214
163
183
249
152
249
195
180
233
225
207
163
195
181
225
233
175
198
224
174
181
207
207
212
216
229
256
203
202
203
203
205
210
223
239
144
181
231
194
215
245
165
249
118
206
184
193
204
204
171
162
161
164
214
243
226
232
200
208
209
198
178
238
181
183
184
203
226
206
151
248
175
184
259
181
231
145
211
230
176
220
176
168
223
233
155
244
218
221
169
131
279
155
191
206
163
228
186
209
221
242
195
194
172
165
172
198
248
162
205
206
206
243
256
208
217
228
194
174
219
233
215
158
210
201
173
223
183
179
207
166
199
199
265
171
258
203
209
199
199
149
226
223
216
194
243
196
209
117
198
155
166
164
187
137
224
200
240
249
196
254
178
198
181
201
200
230
196
241
231
224
198
205
225
110
189
237
177
202
245
143
222
196
174
213
190
247
231
184
104
215
185
239
202
196
186
116
198
169
213
189
214
186
227
167
162
187
211
87
146
174
174
158
230
170
130
217
192
154
165
182
258
253
166
230
198
256
213
189
207
233
197
199
237
149
246
209
161
192
220
209
246
244
121
197
223
193
211
209
253
233
204
223
159
184
239
201
215
179
223
239
146
180
273
198
203
166
244
192
187
210
198
162
207
216
162
205
160
246
220
207
217
210
241
174
216
191
267
178
176
154
233
231
154
211
193
180
238
90
172
234
188
231
216
182
175
231
228
179
245
243
203
229
253
214
178
178
167
222
197
208
223
212
168
232
184
160
197
183
189
209
180
120
220
259
180
186
229
223
233
273
219
154
225
218
257
170
177
208
255
250
208
215
161
188
181
240
199
204
153
165
218
223
203
208
206
228
223
217
162
174
194
223
199
171
216
224
177
244
166
227
199
190
194
148
263
193
259
186
248
222
235
215
197
204
165
167
168
223
227
201
176
200
175
225
217
174
241
245
246
221
193
240
202
187
205
228
205
139
203
184
215
242
123
236
199
205
232
298
224
241
203
203
149
197
205
159
221
184
205
159
181
205
210
197
195
214
141
160
197
243
210
196
160
186
223
200
223
185
166
209
222
171
153
208
211
156
153
224
157
178
180
217
186
167
220
162
199
231
150
167
185
233
184
226
215
161
265
236
169
289
184
223
153
209
261
184
215
176
188
233
204
203
150
166
197
272
144
176
174
150
178
201
222
196
210
211
176
151
210
229
155
248
206
206
165
207
155
268
200
141
281
190
245
153
213
200
209
220
184
162
165
198
256
196
254
185
185
182
111
179
249
186
179
194
113
177
201
183
191
188
256
194
182
169
173
178
258
237
229
256
250
229
192
192
182
242
183
191
151
233
205
229
276
225
239
215
188
230
180
162
161
176
229
214
244
226
188
195
210
187
173
211
158
190
275
197
228
198
206
192
204
221
186
203
240
192
144
77
202
199
245
214
168
206
219
249
195
248
161
182
146
186
191
165
168
235
203
182
168
210
192
123
197
220
182
234
211
210
239
262
168
163
240
208
186
220
195
204
156
174
215
223
190
190
209
195
139
140
211
239
191
235
205
238
215
218
202
219
124
177
102
228
186
147
157
203
221
156
212
242
204
226
179
257
197
184
196
159
245
127
179
208
200
161
209
183
216
184
214
188
213
234
174
188
206
173
193
174
158
236
185
140
174
190
204
220
267
152
179
226
156
203
203
216
159
233
157
197
225
259
240
202
180
162
158
187
172
205
246
224
207
135
278
227
175
243
206
215
193
247
141
163
144
170
224
197
209
195
157
230
224
244
163
154
257
223
128
233
211
179
138
211
210
210
165
170
204
214
211
193
189
231
212
201
199
158
253
207
200
223
227
202
215
248
194
169
249
193
213
198
219
150
272
213
212
220
145
166
214
168
228
213
198
145
146
194
218
213
185
210
194
177
190
160
196
212
250
199
225
227
161
215
233
231
196
218
184
226
182
176
125
220
217
175
204
189
205
141
170
203
170
226
211
238
168
221
136
139
130
244
211
172
233
218
214
183
202
191
233
195
237
242
228
218
214
191
194
223
177
206
157
255
147
214
192
154
183
139
161
198
170
200
127
226
127
207
214
187
213
156
129
193
208
200
242
207
179
209
125
179
239
214
222
221
225
186
252
170
191
141
134
224
226
198
189
150
187
195
231
222
190
218
191
214
251
218
232
192
213
171
236
228
175
165
142
188
267
184
198
172
173
239
210
143
251
240
195
172
186
174
194
210
155
163
236
244
149
238
222
189
194
175
176
188
219
231
168
221
228
256
248
218
222
147
212
208
229
244
187
236
226
172
199
164
186
195
214
155
190
195
218
229
231
239
130
213
185
243
204
178
144
234
195
163
156
234
206
214
188
208
234
206
205
202
172
192
156
226
219
208
217
138
193
178
192
202
128
203
174
202
160
211
206
208
133
177
157
178
170
131
218
180
197
219
207
172
174
203
162
185
239
192
237
229
153
222
194
213
182
183
165
214
204
149
273
182
238
236
229
211
155
227
167
198
171
215
152
204
181
164
194
225
171
170
239
207
232
197
163
231
204
225
234
197
190
192
176
180
156
164
149
192
264
186
201
173
167
235
177
192
176
212
178
255
228
177
171
205
231
224
205
129
119
258
196
164
250
260
175
193
177
191
207
238
214
189
210
178
246
208
214
183
175
193
181
199
217
228
165
196
167
186
165
202
198
181
190
236
207
170
179
233
159
198
175
190
253
182
218
190
229
209
270
211
196
212
156
208
193
192
254
191
221
191
236
240
201
191
230
204
206
192
192
200
205
223
155
175
244
161
121
186
155
187
211
194
170
196
256
202
198
184
191
207
194
235
144
216
184
217
196
169
198
203
194
136
223
230
108
273
198
210
196
219
211
278
191
187
206
222
229
89
225
177
228
200
242
177
273
260
180
209
183
195
189
182
248
188
209
174
157
190
175
135
216
194
190
229
176
218
228
187
192
183
217
245
178
213
190
195
258
237
166
190
224
260
235
182
253
210
221
234
188
165
186
147
229
258
150
129
233
192
232
172
219
167
116
155
145
206
194
119
205
219
215
128
196
213
232
220
172
239
242
208
261
193
161
117
233
182
187
165
201
247
217
201
223
192
125
224
186
173
112
203
178
185
202
268
223
213
179
259
255
193
243
207
206
150
191
206
180
229
171
169
227
230
219
206
191
209
220
168
156
207
185
181
294
168
194
184
186
183
209
157
155
245
198
213
205
183
157
199
203
207
205
197
164
191
148
241
196
227
207
245
238
238
159
184
270
161
211
181
218
280
229
172
107
172
212
181
196
224
182
172
177
234
190
182
198
234
208
141
219
197
196
201
217
188
172
199
278
205
198
255
221
244
160
168
232
116
225
152
201
154
230
211
221
201
167
171
162
244
201
255
162
238
203
191
209
221
236
236
169
244
205
200
216
193
208
215
237
212
186
245
237
230
238
211
158
140
215
197
160
242
221
245
163
169
255
196
181
244
197
209
227
205
200
164
134
257
157
166
207
199
228
236
194
226
228
150
209
211
243
164
147
197
227
166
153
203
225
207
171
231
185
170
226
165
175
190
213
183
176
243
279
221
287
184
230
210
190
246
140
208
200
137
221
202
180
152
243
231
177
145
224
212
213
178
89
209
183
190
258
202
210
231
214
235
229
164
228
247
147
228
137
227
171
220
205
226
186
245
221
205
232
187
137
202
228
152
217
180
202
220
190
221
161
142
183
150
201
229
169
215
187
179
216
179
191
207
181
228
170
192
143
196
177
213
185
173
172
233
209
176
190
187
225
206
249
207
221
205
173
172
190
187
240
190
174
225
224
234
262
233
269
201
193
185
248
192
233
196
161
229
200
248
205
166
229
172
240
223
246
213
207
178
277
224
183
219
215
178
176
181
174
223
178
196
196
208
201
183
185
136
209
156
182
159
212
192
155
227
185
296
148
241
172
187
206
149
194
193
172
222
163
204
186
171
181
225
204
145
171
181
227
163
163
185
161
202
153
193
215
157
237
159
192
221
233
119
187
196
211
255
175
170
148
198
179
152
175
241
230
171
193
205
198
143
157
218
167
176
260
212
197
180
189
127
267
193
227
231
169
210
180
194
240
191
188
167
228
200
174
232
229
231
132
214
281
240
220
197
207
189
126
260
191
229
210
128
222
190
148
254
183
204
256
184
130
225
217
206
214
257
205
165
264
177
198
183
159
138
182
238
183
175
188
221
227
202
220
167
233
165
196
177
237
244
186
216
198
135
143
250
194
185
249
225
137
182
151
174
227
195
215
154
146
219
185
145
189
245
196
197
214
226
212
229
136
179
178
201
188
186
188
268
202
197
150
223
215
209
212
184
254
189
199
146
166
230
269
141
221
193
244
217
173
260
199
237
164
175
204
160
187
174
199
211
216
219
208
161
228
188
160
206
146
244
201
248
188
216
223
200
138
250
209
139
223
255
229
193
194
210
224
233
211
177
228
236
203
198
252
191
131
163
209
205
250
147
142
167
253
173
72
164
272
192
140
132
243
185
205
103
130
203
198
142
234
248
118
182
202
238
163
214
232
187
156
226
221
176
186
213
250
196
191
176
146
249
157
177
183
233
214
179
258
146
195
250
124
194
200
213
168
224
145
222
196
236
229
157
281
150
224
220
236
175
240
208
122
161
212
256
267
238
219
203
260
179
222
170
221
238
194
174
207
209
221
167
198
238
222
179
186
147
144
221
209
225
237
207
174
237
220
245
161
180
171
239
159
208
199
192
184
160
192
228
258
161
216
230
217
156
239
190
187
165
182
159
199
189
210
155
233
229
248
241
229
208
168
157
204
237
171
174
239
260
193
212
151
254
177
198
212
204
209
221
304
237
186
219
213
208
158
226
133
216
210
192
250
259
245
180
213
187
239
194
264
266
178
220
193
174
158
179
242
155
191
159
206
211
207
193
218
228
252
220
222
149
149
216
230
211
159
223
226
205
206
214
164
252
140
164
214
205
236
238
225
249
183
181
187
216
221
240
195
195
214
197
189
191
204
271
217
180
196
250
228
204
160
174
242
187
197
151
140
164
196
228
165
174
169
192
175
180
190
207
166
233
199
209
175
234
182
204
264
186
176
217
104
188
161
177
204
239
207
215
165
211
228
241
226
205
226
219
212
235
176
151
152
238
200
241
256
247
227
208
185
232
190
136
126
260
204
238
205
199
169
230
157
207
204
179
224
194
182
217
145
179
208
199
199
244
167
195
213
107
203
163
161
197
226
168
201
153
167
237
155
210
189
186
212
174
216
194
205
240
187
191
172
179
221
220
296
76
235
194
221
198
209
182
189
157
211
162
221
242
208
153
231
228
195
198
158
196
173
168
212
194
218
218
206
182
148
177
260
236
188
166
226
165
207
219
182
214
193
185
186
165
260
193
181
195
258
264
197
174
230
159
158
113
166
246
174
242
215
255
235
189
261
215
227
164
220
119
189
204
180
228
210
171
303
175
258
137
218
189
227
191
206
193
184
172
212
208
232
166
207
171
162
222
126
176
229
247
144
178
158
167
173
157
189
190
182
221
189
202
210
202
154
161
229
275
215
159
180
230
217
186
238
171
209
284
210
195
213
171
179
155
244
179
204
220
245
200
194
256
191
172
243
218
171
195
138
162
200
212
228
187
177
256
184
141
173
167
191
208
167
125
275
202
230
216
186
179
227
229
169
144
202
203
254
190
181
260
159
257
238
185
227
219
227
148
151
190
250
155
239
213
183
203
199
209
197
239
214
232
227
215
221
200
246
200
227
170
169
258
247
234
251
243
183
174
219
212
268
273
163
248
215
229
181
231
208
227
228
169
268
198
178
159
186
264
264
242
259
174
146
285
204
209
226
225
237
187
227
152
165
198
158
226
200
188
217
192
147
152
197
214
236
212
247
129
222
241
198
185
180
148
191
230
147
219
141
227
205
216
229
281
217
196
199
197
225
227
226
173
153
188
150
227
253
262
134
189
212
124
172
238
191
205
208
172
200
213
222
124
235
221
226
294
132
206
223
135
172
243
241
183
250
220
194
190
243
233
202
206
213
192
181
182
157
190
222
182
134
210
162
194
189
203
183
204
194
170
119
180
253
219
226
212
197
214
264
182
164
246
156
175
258
176
161
163
164
161
228
158
248
200
179
225
175
212
210
141
188
180
217
195
213
241
217
151
164
175
247
221
180
208
163
210
243
200
202
170
207
192
236
196
191
206
262
169
198
197
159
283
215
267
214
175
238
196
167
181
144
161
201
206
233
244
204
150
220
186
214
159
204
217
172
213
149
168
177
209
174
253
113
238
192
178
236
233
179
161
171
197
245
177
207
222
184
200
187
269
249
159
179
215
247
211
180
187
180
217
200
212
187
151
187
158
200
210
210
151
166
194
118
176
232
203
170
186
170
163
199
184
224
221
181
181
207
262
215
162
222
245
190
200
229
222
240
244
206
230
240
200
197
203
236
183
161
194
134
209
140
235
157
208
212
152
205
212
205
177
193
189
242
115
111
186
165
124
239
169
212
198
215
183
161
227
221
165
215
225
251
223
275
228
200
154
209
154
169
90
186
152
166
207
185
259
235
206
195
214
185
203
180
187
193
185
228
227
255
210
236
206
265
211
196
129
230
208
187
184
186
153
253
253
208
230
246
248
203
210
187
230
142
205
159
260
250
163
166
136
187
204
161
195
106
240
179
221
267
141
244
159
232
162
180
190
200
167
231
242
233
216
186
214
259
257
187
228
257
214
156
235
160
226
185
204
169
207
170
196
200
173
183
169
163
160
243
179
216
227
215
254
171
205
194
213
206
204
242
136
220
221
264
214
229
222
217
233
224
185
95
159
185
211
215
214
257
178
221
209
195
150
183
173
151
177
230
204
214
236
204
178
173
161
204
249
106
211
205
203
199
221
148
158
260
219
160
203
166
157
193
140
260
195
207
204
202
207
192
209
181
226
202
181
197
185
248
173
196
143
203
197
281
180
198
193
241
270
208
267
179
238
226
213
160
244
152
247
162
213
202
192
165
181
170
223
228
143
196
173
291
196
141
183
181
225
151
194
151
271
196
169
192
194
153
170
231
221
196
200
233
218
207
199
195
192
179
193
202
192
237
107
205
201
134
205
264
238
181
166
183
231
187
233
207
127
202
227
142
205
207
187
186
216
148
247
219
175
169
238
184
168
231
254
192
148
152
230
183
212
159
152
185
238
207
189
185
205
210
182
192
208
137
247
132
200
197
153
166
148
174
274
173
234
222
242
205
142
183
204
215
168
194
197
176
200
183
172
213
178
215
291
220
195
180
197
191
191
115
212
205
243
187
181
225
193
182
187
197
249
226
225
184
197
190
241
216
216
184
194
260
239
222
237
215
251
169
203
210
188
262
209
174
220
171
227
204
161
227
186
229
206
129
172
146
214
202
163
166
186
142
252
143
207
148
201
185
260
195
259
238
141
250
229
183
201
202
135
218
159
221
154
212
169
157
249
215
169
127
287
159
157
184
166
199
110
232
195
166
228
234
115
202
205
246
196
166
142
161
245
223
238
221
260
186
243
161
160
148
86
137
170
252
117
200
182
219
232
228
188
239
243
182
200
177
210
209
178
217
210
221
214
165
172
146
186
203
148
202
157
252
160
140
185
207
157
267
201
219
182
200
150
194
150
197
237
186
211
219
163
159
161
258
238
211
178
178
192
205
209
269
231
196
192
204
228
243
227
173
194
202
191
171
195
245
219
196
245
172
152
145
220
175
185
226
177
175
251
180
221
161
180
236
190
238
220
196
273
173
153
149
206
225
233
249
213
232
160
203
150
150
203
203
193
176
211
188
228
213
214
275
177
228
191
205
177
170
184
145
203
176
252
201
217
136
214
146
171
265
248
154
245
188
179
187
176
214
200
193
253
186
242
224
233
237
166
159
226
229
234
180
174
147
199
150
215
173
229
193
209
258
207
177
219
189
150
214
255
241
211
162
210
192
211
208
204
209
235
245
187
214
161
194
220
147
252
239
164
137
214
150
210
212
203
161
158
204
214
215
174
214
142
220
177
268
206
234
214
154
230
232
240
176
228
93
222
211
182
210
164
223
172
239
189
212
181
188
237
184
174
181
217
208
155
230
165
163
192
206
151
215
212
191
184
191
145
192
94
173
208
195
204
211
249
215
186
196
193
160
120
222
256
213
249
137
162
184
147
195
190
159
164
169
212
155
248
215
216
193
197
242
206
195
172
222
232
232
213
209
165
204
163
174
219
205
204
204
153
190
208
198
210
175
194
243
188
217
178
146
173
220
228
180
212
198
219
111
203
179
252
177
170
204
133
224
196
213
180
130
206
144
178
185
204
264
191
169
174
220
175
195
174
227
203
234
173
264
171
214
175
193
255
219
200
136
154
205
238
281
205
242
195
190
156
176
223
154
212
238
181
163
237
204
200
188
182
161
251
201
177
176
204
238
224
217
162
168
167
198
134
214
190
132
289
148
168
193
226
199
179
234
208
231
208
161
195
216
156
189
194
225
188
236
194
168
188
218
164
178
206
238
223
261
238
191
223
135
226
184
217
213
216
229
246
212
263
229
203
171
198
213
182
211
169
182
231
185
186
220
188
228
173
232
190
264
204
215
150
217
148
188
152
201
224
175
198
222
209
196
251
130
237
241
179
218
249
200
221
149
186
214
199
201
167
175
186
247
132
142
143
261
205
176
199
251
200
155
143
220
152
149
182
210
230
195
169
174
184
194
220
261
245
176
218
192
180
186
202
184
239
176
189
208
213
199
268
227
166
194
205
236
172
217
163
209
163
226
189
220
181
233
236
186
220
226
183
247
247
180
223
150
177
222
225
210
275
149
213
122
156
163
134
198
223
230
182
195
201
224
160
235
255
206
256
198
170
222
246
213
155
175
203
267
199
188
185
209
213
219
178
207
101
227
211
217
192
164
198
213
249
165
177
181
214
145
249
221
198
230
210
202
217
157
239
117
146
168
228
235
153
229
169
193
158
250
214
156
188
227
219
220
219
150
185
212
155
164
142
206
208
250
138
198
236
187
181
219
248
198
200
251
160
214
209
145
183
174
235
180
198
182
237
166
124
240
127
155
116
224
212
227
232
167
236
122
225
214
206
186
196
229
162
211
208
236
184
203
199
116
177
231
166
211
182
209
201
181
172
278
205
196
235
268
202
222
178
247
120
182
242
138
225
241
224
213
185
223
227
194
117
227
201
195
210
135
215
202
214
203
233
265
182
227
181
210
206
250
171
199
219
193
168
152
132
189
207
163
128
165
227
180
253
195
246
205
230
183
154
145
203
195
228
202
201
152
152
226
222
219
190
265
242
195
264
242
235
198
195
197
214
209
165
177
187
259
243
234
180
184
209
206
174
229
202
228
227
219
104
189
196
240
204
149
236
191
234
222
200
153
140
208
222
167
223
219
242
192
211
221
150
217
212
168
193
212
166
206
238
256
208
206
213
159
192
237
176
160
159
172
179
256
226
251
172
240
249
214
227
170
193
181
233
256
164
190
204
202
148
274
117
166
232
250
180
164
155
164
190
283
296
184
230
213
186
200
172
224
220
221
197
215
244
210
162
237
165
198
264
168
231
194
171
192
164
223
182
192
168
182
140
226
188
244
256
214
222
198
211
134
187
245
205
241
173
256
180
209
158
251
155
185
123
246
168
193
237
204
141
204
124
215
175
222
141
107
183
242
183
165
213
193
183
246
181
248
179
250
189
197
233
214
213
161
149
235
182
242
219
214
163
193
232
138
235
199
207
147
257
210
209
193
190
217
219
209
191
188
193
166
167
209
164
197
196
164
159
154
222
233
208
203
194
209
184
191
227
165
202
203
178
210
204
143
229
254
232
238
140
174
168
192
225
246
257
231
177
201
224
163
164
175
204
213
139
195
267
169
220
221
219
198
125
186
262
196
142
245
208
182
179
238
120
191
217
135
189
200
210
188
206
135
179
262
209
181
242
133
179
174
235
240
222
207
190
256
150
160
205
226
183
194
161
168
154
151
235
220
233
235
238
256
159
149
156
149
141
256
186
91
188
220
173
201
195
179
279
204
170
200
226
265
218
191
206
145
240
195
253
193
200
208
238
218
186
214
225
201
230
215
126
174
210
178
226
212
238
215
231
236
224
171
207
201
230
245
206
131
209
208
135
178
141
247
215
200
165
213
223
159
225
177
237
246
253
202
232
186
251
188
154
147
193
192
209
171
214
202
179
211
174
223
158
180
198
171
188
175
258
178
178
222
193
158
210
250
227
215
190
165
126
268
178
197
253
222
217
218
263
247
186
190
314
212
199
217
167
205
167
261
206
234
197
245
200
184
215
244
264
188
202
192
188
139
241
188
146
186
203
225
161
226
156
178
185
201
156
193
243
233
172
215
160
252
122
210
212
242
210
218
168
217
149
217
203
272
168
192
199
204
237
157
281
168
193
184
215
108
191
257
202
207
237
216
159
221
175
170
216
181
125
210
244
208
221
198
164
167
178
220
211
137
185
197
180
197
270
178
224
216
148
201
201
213
246
194
218
188
192
224
203
183
250
174
221
150
260
234
158
194
232
240
215
184
256
225
248
196
215
222
194
149
208
197
260
159
198
228
219
175
183
156
204
187
223
206
193
193
173
186
228
208
166
198
283
203
213
206
199
196
193
222
185
226
207
162
190
207
197
184
181
249
196
158
186
234
155
254
212
197
181
172
249
180
101
182
155
225
180
188
184
208
233
205
200
187
204
183
195
169
232
139
228
157
257
237
270
269
226
225
199
204
151
162
247
225
193
160
307
212
234
138
235
211
183
181
195
234
239
188
202
150
216
228
198
184
153
161
207
242
230
190
232
227
169
248
133
187
152
213
200
172
187
214
196
124
255
196
232
204
212
170
218
236
145
246
197
209
210
217
236
203
239
184
209
162
176
204
180
230
193
151
216
230
188
152
156
185
185
178
142
177
196
169
156
178
119
200
209
234
169
163
228
229
173
174
218
202
185
178
195
172
190
165
175
174
206
154
251
226
146
184
241
200
192
225
116
261
200
203
201
219
171
228
163
246
165
257
249
195
178
226
241
183
150
145
224
190
188
142
145
115
221
199
207
186
228
184
201
188
220
185
192
141
180
197
160
235
228
241
242
256
187
137
227
197
220
218
188
188
202
240
168
162
199
226
210
155
196
210
113
207
247
258
208
147
234
170
216
160
202
237
250
169
195
193
172
204
236
238
251
181
164
242
185
209
195
236
219
159
177
204
235
251
156
204
220
255
269
192
193
276
208
153
202
201
237
140
131
227
210
176
148
235
177
178
209
204
211
171
189
173
174
159
194
238
196
237
213
174
174
188
244
174
213
188
172
226
191
236
252
195
227
230
249
238
188
189
229
223
213
183
256
159
229
212
248
161
220
175
192
237
192
181
259
273
168
194
123
244
232
181
183
232
186
222
224
223
155
188
186
209
177
196
175
145
139
151
99
226
231
230
224
201
189
222
182
154
209
264
130
222
230
122
257
227
169
237
186
133
185
139
207
187
215
131
241
199
196
163
186
188
156
252
152
231
218
180
228
171
285
201
120
187
156
254
192
161
194
197
246
159
193
185
173
206
152
167
183
239
230
219
208
194
215
193
214
223
202
216
156
208
218
203
204
232
186
222
157
155
182
202
175
151
237
244
185
155
154
206
245
165
203
192
189
176
202
182
272
245
136
217
213
143
247
191
215
184
201
173
213
188
190
155
147
236
172
160
189
183
202
148
159
174
219
228
211
149
198
189
228
144
234
151
209
250
216
209
214
250
196
195
180
197
172
202
207
185
133
197
214
231
189
251
139
280
189
214
181
182
246
176
151
172
95
256
267
201
226
177
230
229
192
229
239
159
220
158
202
199
188
165
288
274
198
149
200
219
166
211
208
170
140
260
213
174
188
233
140
211
219
214
219
160
238
228
220
265
196
175
255
192
111
190
228
170
149
183
222
170
222
232
167
226
181
226
175
140
257
181
237
185
250
210
207
304
222
185
227
235
203
185
156
196
205
241
203
284
188
174
201
198
132
237
178
195
190
165
242
178
215
259
221
248
166
186
236
215
159
122
230
206
215
234
181
175
246
187
204
154
249
208
189
176
230
218
207
194
189
209
165
225
157
165
220
215
196
225
192
229
205
177
169
232
234
143
259
242
168
192
222
204
133
221
178
188
234
175
177
223
197
230
166
219
163
181
201
231
191
197
204
182
216
231
199
201
198
208
144
198
197
188
233
223
126
211
179
193
142
200
163
237
125
191
212
197
234
232
189
198
248
152
149
195
232
233
181
197
188
175
206
234
175
232
174
254
161
173
158
217
232
164
220
166
219
166
231
195
153
192
178
190
225
208
191
223
221
170
228
209
184
198
181
233
207
167
226
169
143
153
242
228
205
218
200
225
269
169
139
249
210
219
220
174
151
183
227
237
231
157
167
212
203
257
217
243
210
162
286
175
213
186
150
196
138
243
129
185
135
202
206
196
214
185
244
164
206
170
186
203
253
133
220
201
255
227
188
162
203
190
205
227
214
189
227
221
164
164
207
207
153
211
197
197
215
203
185
270
242
146
233
232
150
289
217
153
228
257
108
177
191
241
247
245
183
237
132
161
205
228
197
179
199
229
165
209
230
222
227
201
208
214
240
175
251
146
240
200
241
155
179
217
247
193
191
156
200
193
198
222
220
232
186
259
239
199
183
254
212
193
209
109
190
239
157
226
228
190
118
202
186
240
212
227
187
213
117
244
180
200
201
230
205
227
149
215
223
208
226
225
219
174
159
200
213
211
175
186
220
212
242
215
163
180
212
168
162
229
111
168
147
163
219
160
157
192
176
195
246
226
223
206
242
197
231
232
145
232
191
194
252
198
139
153
245
168
157
143
184
166
184
183
141
116
188
240
221
241
259
208
171
183
236
177
250
220
199
151
203
169
144
150
203
170
167
209
214
162
173
237
210
141
244
277
216
153
185
236
153
200
231
189
197
137
245
301
199
196
257
173
192
271
181
195
272
216
166
233
199
163
254
115
171
238
196
250
196
276
201
211
177
125
215
188
241
150
208
202
180
203
177
176
156
244
178
203
227
166
158
223
230
243
154
161
192
199
204
134
177
222
221
219
188
211
217
168
214
173
262
174
232
184
122
193
243
185
263
186
289
124
196
216
185
215
215
160
243
194
181
183
176
284
193
193
162
188
267
129
198
232
173
216
236
197
190
191
230
147
213
204
183
195
207
199
186
229
272
196
209
232
163
206
170
182
163
170
173
216
186
163
210
176
202
155
224
199
259
191
183
176
110
187
240
151
223
166
192
155
235
263
226
163
206
100
155
205
216
180
198
202
177
201
190
182
198
204
249
249
227
213
223
280
207
195
231
232
259
197
208
229
169
218
202
245
140
182
181
143
181
147
268
222
198
141
194
199
149
199
209
185
198
149
171
208
154
198
185
153
281
171
171
222
239
189
204
203
205
188
200
149
191
205
201
177
195
223
132
206
262
215
221
228
163
220
272
154
184
212
239
175
193
163
197
183
240
145
202
214
169
130
247
209
200
168
188
219
229
218
209
222
141
143
188
219
162
170
210
168
143
221
144
172
141
195
179
212
223
152
252
197
161
220
251
225
165
221
180
160
206
208
214
193
222
176
123
195
144
276
188
143
250
125
179
173
176
171
231
219
188
240
222
257
144
138
228
220
236
227
188
191
221
181
156
236
231
203
170
196
195
199
195
240
240
183
255
204
176
183
121
204
219
91
176
227
208
177
176
161
174
181
238
216
177
152
154
195
251
198
158
151
121
178
262
286
168
143
217
242
248
184
265
260
186
172
240
188
175
163
262
171
190
196
191
182
198
212
215
233
217
325
165
245
223
198
202
261
180
185
206
200
219
221
211
198
216
210
206
169
150
255
213
227
155
236
202
230
152
192
138
210
189
240
196
223
210
176
183
249
155
170
238
219
214
215
177
191
246
297
232
235
223
211
170
183
172
221
199
165
240
181
196
238
141
169
170
228
178
163
158
141
193
196
238
211
174
138
226
196
223
225
257
184
206
214
196
191
173
219
181
104
233
209
174
148
197
215
201
212
190
270
215
203
224
173
221
231
234
238
234
175
140
222
185
234
197
256
257
148
177
198
230
250
130
209
194
162
168
216
190
167
234
198
139
191
130
179
230
242
180
246
166
213
237
151
218
154
217
215
240
243
113
184
180
183
228
153
202
216
221
177
215
216
213
184
204
190
186
239
243
194
201
220
278
193
225
166
139
276
181
209
281
191
200
181
222
200
190
214
220
248
133
154
230
295
154
219
216
232
119
180
170
219
141
143
196
139
214
240
172
214
240
190
202
197
224
146
195
216
187
204
260
241
206
169
183
176
233
195
171
156
225
99
211
220
153
239
211
176
208
219
182
154
200
216
219
180
237
200
133
193
238
200
244
122
232
164
238
182
194
231
272
181
190
210
245
174
183
174
209
209
199
185
264
234
173
195
259
200
245
215
206
226
224
231
126
224
236
198
222
153
215
150
177
132
211
159
216
144
219
191
217
159
237
133
181
180
201
271
189
228
194
153
180
138
231
263
235
190
220
186
169
233
195
215
155
214
237
213
169
207
226
167
199
218
217
139
211
199
146
194
210
132
183
127
182
222
246
228
203
210
123
229
179
187
150
129
238
124
197
202
229
189
215
179
188
195
99
208
264
212
245
140
219
192
223
197
235
176
217
158
162
243
200
224
239
246
177
210
301
149
214
201
230
168
210
236
249
199
184
177
213
129
203
175
221
182
197
275
153
186
215
174
198
182
202
174
159
166
134
190
227
202
264
242
208
212
179
204
180
175
201
218
174
156
229
187
220
218
237
228
174
273
195
221
217
244
253
187
243
178
189
236
202
144
203
248
224
168
166
257
161
280
205
182
221
130
259
216
175
192
202
203
284
239
203
200
234
174
187
217
235
175
221
163
170
206
212
187
189
200
212
181
208
175
181
174
200
211
185
232
194
199
169
227
187
218
181
253
225
219
213
197
213
246
191
235
174
256
199
151
174
205
180
225
179
219
173
178
230
244
144
178
186
221
180
203
169
236
160
212
189
264
157
194
169
220
195
187
215
228
162
239
156
247
185
193
209
152
186
182
246
175
228
210
177
200
258
177
140
219
180
212
228
245
214
219
227
171
160
134
152
230
179
212
242
171
192
161
202
242
164
173
255
217
217
264
192
208
201
216
248
212
205
250
179
188
226
200
264
145
198
196
182
213
187
217
250
217
172
199
244
220
162
214
157
241
173
172
200
221
186
194
193
166
197
220
152
215
182
203
215
231
139
209
224
191
223
225
186
255
132
252
250
219
169
216
183
196
201
194
177
187
234
229
224
230
246
215
213
194
156
178
210
215
248
239
212
164
221
169
239
170
176
171
211
203
199
271
252
140
234
224
196
200
208
167
169
190
208
272
154
259
239
159
155
195
203
159
148
193
165
215
149
238
214
195
196
134
169
234
163
205
184
278
218
199
183
229
196
238
179
148
223
170
247
179
208
233
243
170
178
194
171
254
187
195
108
215
194
171
220
235
227
201
235
189
181
183
229
150
164
183
176
168
173
212
260
274
204
206
252
187
193
188
219
168
243
207
194
170
216
221
225
239
228
215
260
239
176
256
232
171
165
107
192
173
218
199
206
191
231
179
153
225
220
217
232
242
222
252
158
191
199
220
171
243
200
179
161
182
158
204
181
139
218
244
159
190
201
150
188
163
234
161
183
221
183
218
194
152
176
171
195
169
231
213
185
215
255
261
189
196
193
264
235
239
219
184
183
196
238
179
253
204
265
170
179
152
256
176
180
209
242
152
242
155
184
191
146
192
202
188
246
115
229
212
205
251
271
226
213
259
212
177
197
190
231
182
229
235
176
214
204
233
214
269
195
197
170
211
184
217
177
218
163
228
139
208
177
176
222
140
198
218
161
140
200
171
194
186
202
212
207
185
153
204
235
191
161
163
205
171
175
167
183
208
186
208
210
141
187
243
176
235
167
199
213
153
231
195
206
188
181
237
187
134
138
208
203
201
260
181
210
248
199
214
213
227
123
183
148
259
187
261
245
174
219
204
178
143
173
137
252
148
205
181
150
207
219
182
253
196
141
200
183
194
225
199
181
180
227
251
209
187
236
187
164
197
161
174
192
192
219
228
188
191
153
230
190
180
211
158
172
168
239
160
264
176
159
193
251
196
163
187
193
153
245
164
220
175
226
200
183
237
260
198
271
247
235
165
274
170
201
233
177
216
209
236
233
195
223
226
231
157
184
197
241
205
265
219
152
214
213
211
251
147
200
201
193
199
220
238
187
205
176
244
171
183
175
183
253
190
182
161
178
187
112
253
184
127
180
194
134
176
211
151
183
218
229
180
266
184
176
236
240
227
187
211
193
167
229
158
191
142
203
179
196
205
171
185
219
203
178
216
161
172
211
241
216
118
224
181
239
221
206
170
223
186
217
158
138
234
197
202
145
214
220
220
176
219
186
230
148
226
186
259
190
223
188
209
238
194
183
240
206
172
198
203
174
129
197
225
178
172
171
169
236
192
188
171
150
244
229
187
142
275
249
235
177
231
189
214
174
190
153
201
188
193
202
235
201
179
234
213
123
181
143
195
173
253
210
182
211
213
167
228
146
248
206
168
154
183
212
215
156
161
205
224
173
210
203
205
155
294
218
159
161
228
172
228
206
211
249
172
153
142
141
170
186
201
166
250
262
171
190
221
208
252
247
173
213
244
199
169
232
185
190
213
201
184
187
283
179
250
177
241
203
184
172
205
171
221
235
199
221
221
149
242
216
134
210
226
170
170
234
219
129
151
201
199
152
169
236
189
201
252
180
243
240
238
235
185
189
156
202
219
113
254
198
144
201
179
161
152
246
244
202
211
192
218
180
207
244
229
165
240
232
187
235
214
214
167
189
204
175
172
126
156
207
162
216
170
201
213
221
245
217
185
196
155
153
192
239
215
194
194
210
222
162
169
190
213
145
252
263
152
211
198
140
214
237
216
171
179
249
186
203
244
161
189
163
176
263
238
200
211
182
160
175
139
188
190
200
185
208
221
275
216
209
201
214
181
167
232
180
223
210
118
252
133
261
207
200
220
178
203
183
204
166
164
152
193
185
219
227
179
209
186
226
240
202
253
200
180
154
232
150
188
121
206
167
188
195
261
221
205
204
140
197
198
227
232
186
227
204
257
173
188
138
186
272
161
210
142
175
243
192
171
211
243
221
164
116
244
208
193
208
261
199
241
192
236
232
186
189
186
207
192
202
169
212
156
135
224
211
196
227
205
171
175
183
235
203
205
180
245
220
197
195
242
211
240
235
243
198
118
208
210
163
200
167
210
152
213
202
289
158
180
187
181
144
207
228
151
240
223
198
179
210
163
274
202
225
198
228
155
200
144
134
239
209
269
196
170
195
178
185
218
169
185
194
134
168
195
233
184
217
195
225
223
195
156
188
160
145
246
215
161
202
113
222
125
194
199
190
140
267
178
185
177
203
129
180
255
179
200
225
186
215
189
189
222
276
159
218
262
179
176
229
243
219
234
170
186
204
117
202
178
242
216
170
252
244
171
214
235
153
205
261
273
205
133
233
208
158
190
270
153
159
204
187
200
206
214
149
186
240
285
175
225
209
114
185
154
271
188
191
187
230
195
179
272
174
166
199
224
153
201
183
191
214
190
244
246
216
215
205
232
205
210
141
161
179
150
287
180
188
218
216
269
166
214
146
215
241
205
195
181
219
208
175
174
153
191
179
199
240
179
276
209
174
198
212
121
176
141
191
240
206
106
198
159
192
287
199
189
204
195
155
187
244
266
231
133
179
182
186
218
218
197
205
196
204
251
197
190
232
220
170
240
188
200
259
157
127
205
222
144
172
198
162
241
196
251
235
212
140
180
157
182
203
176
221
203
207
172
222
203
239
252
197
192
220
211
176
222
194
120
205
220
188
193
202
197
251
217
166
191
225
165
239
187
215
215
152
165
222
270
234
260
235
122
120
235
162
203
205
218
193
183
166
141
180
213
165
203
174
178
195
205
175
149
266
205
225
166
206
165
188
242
166
222
176
137
206
159
203
172
208
190
219
182
203
131
238
187
213
164
198
240
225
193
121
213
181
208
158
220
209
237
214
179
188
215
245
157
185
164
188
181
185
247
134
184
205
251
201
151
176
175
193
128
218
186
132
219
187
186
249
195
150
224
188
144
265
185
192
250
188
176
147
216
191
224
200
142
211
235
198
153
226
172
152
185
211
241
187
246
130
173
194
151
220
206
254
187
169
199
234
237
199
215
172
139
225
207
233
126
223
177
233
249
141
202
209
234
248
190
175
237
214
164
229
159
197
228
175
182
143
191
191
184
224
221
226
235
195
223
197
187
173
163
242
217
179
158
246
177
252
206
187
250
218
159
166
246
155
206
206
199
227
189
195
205
190
195
187
164
199
224
185
223
140
186
218
213
251
233
178
202
159
182
181
232
275
169
207
162
208
127
169
176
213
230
239
190
241
100
166
232
223
185
258
221
229
227
176
206
186
167
168
234
186
183
155
221
232
161
191
196
142
157
179
264
239
165
218
194
198
232
211
164
198
201
165
248
164
147
177
214
185
164
222
213
178
124
247
226
238
179
216
146
218
176
247
172
207
196
243
186
194
177
221
201
221
231
210
158
183
241
205
200
213
245
230
213
173
178
194
207
222
204
226
176
181
211
253
181
194
203
149
222
153
202
190
178
213
171
220
200
159
159
196
175
218
183
175
190
169
230
148
200
205
198
245
244
104
190
207
196
193
183
213
230
220
216
214
130
224
261
156
239
199
164
149
174
219
231
165
278
262
160
221
222
216
221
225
218
161
193
227
231
273
202
207
277
169
214
175
223
211
213
201
196
209
192
178
210
178
190
210
236
224
148
212
265
162
188
217
215
189
241
192
208
149
196
209
256
205
193
241
238
219
198
201
192
175
195
204
209
184
193
245
234
180
209
179
223
158
232
218
184
178
245
191
228
185
278
204
236
192
208
261
204
219
220
189
205
175
214
255
203
193
188
177
202
236
206
194
268
207
165
275
191
226
197
225
208
177
232
201
202
213
176
183
180
110
196
225
214
199
251
197
210
225
225
212
204
166
229
206
193
178
244
220
165
173
219
240
212
191
234
168
143
209
196
145
242
195
194
213
240
163
164
238
228
204
183
168
173
261
209
237
244
203
163
188
134
203
222
220
238
226
174
214
128
117
175
203
177
195
195
136
175
246
191
230
193
201
256
226
218
222
134
210
158
177
227
186
246
165
272
197
189
229
158
177
133
159
202
181
211
273
215
220
176
201
222
182
223
231
230
211
210
185
166
192
214
191
181
222
221
184
165
194
173
146
237
246
181
232
205
263
213
213
179
210
218
192
174
223
221
212
171
248
176
219
169
187
225
195
214
146
179
98
148
203
244
171
173
216
115
198
135
203
233
210
214
245
183
175
221
169
198
219
225
169
188
132
162
196
188
168
216
179
205
181
268
220
178
203
273
243
181
221
230
193
228
219
188
267
212
229
155
248
247
176
229
169
211
197
164
203
281
208
203
164
162
192
247
220
173
168
172
154
196
218
155
240
169
202
244
195
231
187
290
223
271
214
286
163
204
245
216
227
198
212
212
147
177
221
243
231
183
172
235
221
203
252
213
156
190
155
236
189
219
174
216
218
249
191
148
202
206
165
226
192
196
166
174
130
238
156
192
141
235
188
202
212
232
159
201
198
188
210
246
154
204
229
199
246
247
227
184
206
205
137
192
190
224
245
117
150
175
238
182
192
228
240
235
222
183
250
188
175
211
199
163
230
241
250
190
256
272
249
212
185
176
197
112
224
167
121
170
138
211
211
186
205
168
201
212
242
181
182
176
229
203
269
175
224
170
181
184
260
189
198
224
199
248
181
266
176
199
170
106
227
225
204
179
192
203
224
222
215
220
259
169
183
208
122
226
120
233
208
216
204
174
189
184
160
174
201
219
173
144
129
250
211
199
184
248
207
201
173
141
205
220
201
197
208
209
257
172
209
219
163
159
256
149
157
231
226
184
225
134
175
168
235
212
223
239
205
247
139
240
173
221
233
197
188
187
173
194
177
199
243
193
179
258
185
167
235
164
205
227
145
225
206
180
286
187
200
188
228
217
180
268
222
171
311
245
194
200
194
237
169
206
218
214
229
278
176
174
190
205
235
254
199
191
215
207
227
239
235
222
185
193
223
179
192
232
182
190
174
169
241
262
175
207
167
210
208
192
202
143
178
139
202
193
188
198
195
222
168
150
199
234
171
149
197
260
194
140
174
197
217
207
209
215
179
268
276
216
236
201
214
161
234
239
261
172
207
252
175
191
229
217
224
198
232
193
262
191
191
223
146
208
210
242
176
96
192
247
143
136
229
188
214
238
171
207
237
227
183
179
230
222
201
143
208
215
223
211
189
224
253
180
260
222
209
198
159
243
156
158
198
202
191
176
202
227
222
187
157
207
276
256
212
225
217
206
243
236
248
253
179
204
102
174
203
159
170
249
206
153
185
197
194
203
246
231
205
181
168
249
231
204
212
200
186
239
217
206
213
191
232
175
207
248
168
152
191
216
202
187
206
205
145
175
236
212
120
175
176
208
207
180
224
165
179
203
204
231
230
173
254
212
199
194
200
169
204
172
261
233
218
152
158
229
226
231
184
220
188
208
132
212
199
169
147
195
202
109
168
232
164
215
204
234
134
236
210
182
214
166
118
154
235
153
246
226
180
231
222
155
177
152
231
227
183
204
251
245
235
236
178
222
190
204
219
212
178
235
150
212
261
184
212
177
198
211
256
201
231
233
226
166
172
214
219
264
180
271
188
238
195
180
238
184
208
203
194
250
258
179
196
214
231
252
223
196
185
227
150
227
209
201
180
168
205
249
161
166
171
199
216
214
213
199
128
221
258
173
222
195
218
170
206
202
124
202
190
205
197
169
158
238
241
324
213
214
172
189
226
116
256
237
140
159
181
200
200
241
181
235
228
213
218
152
223
186
207
252
237
214
138
163
204
224
166
117
201
204
165
255
195
210
162
231
190
190
170
211
194
238
214
208
229
161
174
263
204
226
216
193
269
236
183
200
184
151
199
252
164
205
219
169
126
226
247
205
232
177
249
207
183
185
189
203
175
220
206
187
195
220
215
187
181
216
176
227
233
140
197
223
162
187
198
229
223
173
139
216
210
186
207
184
182
165
231
240
136
195
191
194
168
196
256
222
238
239
169
233
191
215
194
159
223
169
181
206
143
278
208
181
128
185
269
265
222
192
209
229
198
189
245
230
202
213
156
185
223
195
207
180
195
188
216
161
200
194
244
209
218
222
223
180
154
213
226
182
132
191
195
202
199
159
160
131
233
234
184
278
219
187
248
238
191
204
145
153
224
220
172
178
193
233
163
244
193
276
202
199
184
152
189
204
212
191
138
198
200
247
188
152
188
210
193
227
217
231
233
236
200
232
236
168
172
256
167
212
209
188
144
141
159
163
190
217
211
223
221
166
258
187
197
198
260
260
269
165
237
193
169
117
226
254
202
190
154
197
179
187
180
180
181
141
205
185
172
99
232
176
213
206
229
159
175
169
160
211
81
238
193
180
194
230
113
228
198
215
194
242
252
269
158
235
202
222
143
210
177
173
178
235
207
226
204
148
194
195
165
218
228
242
211
139
214
181
152
109
212
208
126
211
218
191
205
229
193
204
93
206
203
221
186
215
154
229
191
202
197
251
211
161
166
220
185
238
214
232
211
141
241
186
205
189
197
199
184
276
261
195
176
169
211
213
108
263
216
180
251
147
215
265
206
183
172
144
197
240
239
223
199
189
248
181
198
213
244
181
233
221
167
218
267
175
188
160
187
178
206
178
221
215
140
170
233
205
193
216
191
269
159
167
199
192
221
199
212
166
209
256
236
224
175
210
221
177
136
154
238
220
198
184
219
191
209
144
215
223
264
226
225
186
200
210
186
203
199
159
184
266
234
204
197
235
154
220
236
153
172
190
221
237
186
199
168
208
191
180
137
224
200
189
157
181
184
185
217
245
181
223
149
187
187
180
231
202
182
154
192
179
175
127
189
170
168
200
127
165
187
153
207
242
224
154
213
160
201
202
213
228
198
232
265
250
195
200
197
196
220
180
241
243
175
211
164
209
219
222
231
233
171
198
162
242
235
136
252
190
244
200
146
176
160
198
213
192
169
264
181
173
183
188
157
170
230
211
184
169
178
189
231
238
219
157
187
228
166
187
189
254
180
253
239
187
225
173
180
187
158
250
191
196
231
164
178
185
206
181
207
207
178
192
190
241
206
259
211
177
190
236
178
186
195
219
153
250
166
249
222
106
216
232
181
196
70
175
225
159
136
197
163
168
185
192
200
211
196
158
218
196
195
217
199
175
235
184
179
224
185
261
260
288
195
192
180
218
234
219
240
194
199
300
185
141
234
223
180
213
212
229
204
276
208
148
203
241
164
153
213
229
204
214
165
269
265
148
210
163
208
177
157
230
155
126
168
218
181
194
206
241
141
216
206
205
199
162
253
229
207
261
131
181
255
218
199
176
194
153
177
201
189
207
222
171
252
232
119
162
177
181
194
290
193
219
216
156
226
255
235
227
190
154
192
208
166
171
248
233
167
173
188
203
184
238
173
216
163
191
197
194
194
214
231
208
158
187
203
191
248
138
159
174
271
225
221
198
251
187
173
205
222
248
226
237
214
167
154
225
169
176
219
152
199
172
246
246
167
174
156
131
201
178
196
179
206
230
155
148
221
154
212
189
223
202
245
161
198
219
235
209
207
177
175
154
152
211
227
248
224
212
176
200
204
195
203
196
208
171
188
130
239
176
219
196
218
199
198
193
231
190
209
193
197
186
214
213
245
180
136
157
242
175
206
220
210
239
183
215
238
239
186
245
209
150
159
174
248
127
229
194
160
185
185
184
189
238
231
151
243
186
146
193
188
204
227
184
175
186
211
180
212
229
215
217
200
232
258
243
173
202
180
222
195
153
165
240
218
199
236
164
215
184
272
204
120
237
241
191
214
255
250
210
229
202
188
197
170
219
205
175
186
256
186
170
249
154
184
239
201
197
188
199
252
179
202
199
179
215
129
182
254
161
203
189
189
114
183
204
155
188
253
222
246
179
194
199
132
181
214
255
210
150
209
239
182
182
165
173
223
163
208
198
160
180
175
183
227
135
160
236
151
226
179
270
221
200
164
233
213
204
187
142
223
172
180
205
189
215
190
220
200
247
192
181
227
145
173
182
220
160
204
156
219
160
176
210
151
222
190
176
231
175
235
149
176
198
202
250
208
172
174
169
157
199
227
188
165
216
263
225
131
199
166
245
229
172
199
161
208
107
230
200
215
162
147
146
155
265
203
213
231
233
168
150
217
222
192
147
190
220
98
178
194
194
251
254
265
242
216
193
219
156
225
217
210
253
237
190
253
177
217
190
198
174
193
189
232
174
202
187
186
200
222
211
162
120
220
193
180
191
113
189
184
199
217
180
210
231
220
210
180
178
152
179
179
230
227
205
180
164
138
226
202
198
164
189
233
184
103
149
179
223
219
231
187
154
229
139
231
211
196
159
205
212
152
235
146
230
163
181
212
133
185
221
127
220
125
219
236
228
229
188
207
125
195
234
186
166
204
197
219
198
208
234
218
145
202
210
256
213
183
266
196
185
123
273
227
241
228
175
233
117
254
225
238
237
190
175
157
240
180
256
146
206
164
224
178
224
208
251
183
220
216
223
191
244
193
180
188
190
218
181
227
147
143
200
204
165
224
162
194
180
181
178
207
223
244
146
191
189
186
149
205
202
164
147
210
127
234
204
237
214
205
232
136
191
202
196
210
142
200
217
234
224
188
131
211
214
205
185
244
166
170
171
175
243
169
236
156
223
154
259
176
189
164
208
233
241
116
222
212
198
206
215
206
176
193
210
202
234
234
255
177
176
244
170
194
244
136
145
140
192
249
102
241
232
203
182
257
195
159
159
210
155
192
221
173
251
195
198
133
137
277
244
157
147
193
244
201
160
277
131
149
234
240
268
179
226
174
150
230
192
238
253
235
229
221
195
157
221
176
254
316
203
204
203
242
133
177
187
188
206
213
242
176
207
222
143
175
158
194
216
179
165
195
234
202
173
164
234
186
225
190
270
197
225
252
214
197
181
225
248
156
211
214
214
205
180
185
270
240
189
133
157
221
204
221
182
237
196
205
238
204
185
241
234
137
216
210
232
211
234
183
207
201
198
215
192
159
212
184
258
198
164
209
253
188
204
212
161
168
228
153
197
197
228
183
187
226
215
208
260
202
256
217
148
220
144
127
244
201
182
191
205
143
153
202
252
232
168
219
159
202
222
168
194
184
208
223
119
183
192
204
246
258
201
132
182
192
175
201
223
237
249
200
202
143
231
196
151
173
245
219
261
149
193
226
179
155
212
202
121
260
253
194
200
189
172
142
169
263
170
144
184
200
239
185
207
225
224
165
141
196
233
243
173
139
177
218
206
219
129
249
253
184
198
215
159
168
238
255
193
214
226
198
216
199
220
241
213
170
199
208
225
122
172
203
213
187
217
213
176
221
221
190
169
131
212
198
183
210
208
189
191
185
211
200
165
226
232
186
201
199
164
204
190
162
253
261
262
151
141
227
186
216
199
162
200
242
218
180
193
179
154
202
207
188
167
243
187
209
235
178
200
221
204
222
255
205
219
205
184
207
164
220
234
196
238
275
259
164
236
209
167
199
165
201
247
186
157
227
163
210
165
237
177
159
196
222
232
186
271
242
194
152
211
182
173
159
220
172
235
190
181
150
245
209
268
241
126
207
169
248
227
212
198
210
189
209
199
167
210
251
141
185
204
226
146
207
215
246
196
227
240
106
193
216
214
164
170
248
233
174
210
193
182
239
228
255
171
184
212
248
199
170
187
255
202
179
199
205
225
120
218
258
192
246
219
156
201
197
211
235
232
188
181
178
168
157
230
229
165
232
153
182
193
180
165
161
230
242
236
217
142
202
175
194
222
196
209
247
179
134
175
216
222
155
147
196
168
254
210
237
149
172
202
185
213
179
175
255
195
283
146
144
179
191
199
193
192
148
237
192
155
176
194
145
145
183
203
228
172
219
247
230
181
162
257
182
254
225
266
250
228
144
233
242
169
225
260
247
269
238
168
200
208
214
188
176
237
195
256
162
216
193
237
247
221
238
213
199
136
163
189
217
185
249
281
172
185
193
223
169
151
213
207
154
171
188
187
196
155
191
320
211
166
181
203
182
176
230
181
186
175
204
207
152
234
221
211
172
147
177
183
198
233
187
155
152
150
177
225
150
144
152
200
161
186
230
223
255
205
168
122
234
196
187
194
178
233
221
233
194
167
179
189
249
177
222
168
246
207
259
178
188
155
222
178
230
215
227
215
167
255
225
196
128
245
170
266
236
169
181
214
239
237
191
169
130
180
195
191
221
261
224
244
169
219
206
172
217
246
185
161
134
225
240
184
241
183
217
195
229
185
184
186
155
219
135
119
212
129
230
206
238
69
168
187
168
128
211
204
157
238
228
155
214
179
259
229
197
235
273
141
182
199
218
180
240
230
216
187
215
256
156
165
183
192
176
211
281
207
115
215
214
215
156
171
200
165
255
143
177
184
206
199
215
232
253
254
196
202
243
177
205
150
182
215
241
110
201
199
217
248
174
173
193
168
174
242
154
238
197
264
107
171
188
238
216
143
198
195
209
151
234
212
128
226
186
195
230
224
135
181
194
160
172
214
266
241
250
177
190
210
238
213
197
163
196
247
207
209
168
194
205
182
203
187
244
262
236
209
164
168
230
200
185
181
250
240
225
196
173
152
209
179
211
200
250
246
175
285
201
190
223
193
261
261
270
139
208
242
166
210
200
200
256
268
204
209
231
193
227
195
205
147
211
174
200
198
173
248
139
190
230
157
154
236
244
165
169
193
266
177
203
229
224
183
146
132
246
176
157
224
232
293
183
122
250
178
197
162
224
208
246
182
223
200
182
153
139
235
193
181
245
165
221
151
202
188
219
234
203
196
202
237
237
162
229
222
154
179
187
168
199
205
199
167
206
251
159
184
190
220
173
247
226
238
273
236
231
204
212
171
231
240
228
212
161
192
188
181
156
267
235
207
219
136
217
216
215
155
173
271
187
174
212
186
179
188
224
255
180
172
263
196
184
145
176
209
114
210
190
214
227
216
194
142
251
185
207
145
134
176
190
219
185
205
175
174
234
221
178
195
151
153
189
264
230
259
162
157
215
158
251
223
155
157
174
192
246
153
198
203
193
192
180
215
165
179
143
118
181
138
217
143
269
125
177
165
198
175
165
205
205
164
229
179
168
185
189
171
214
194
184
198
221
191
208
218
249
231
190
130
203
221
171
204
214
252
231
258
223
198
195
200
222
176
234
176
202
155
236
175
223
214
206
229
262
137
116
166
221
218
180
232
165
196
251
236
182
178
194
208
251
240
191
216
161
271
206
80
192
124
165
209
226
257
240
208
239
260
195
176
177
241
192
186
189
208
234
132
229
161
171
202
148
243
229
177
161
209
226
178
164
238
157
276
257
201
225
214
206
264
255
188
236
175
258
147
171
194
284
169
194
136
252
201
223
195
181
212
206
211
241
235
185
147
198
176
124
200
157
170
184
162
112
216
233
187
219
198
195
259
165
188
195
213
134
200
188
191
170
166
170
175
188
207
203
188
203
229
201
206
110
192
217
241
172
169
183
172
169
210
233
144
128
270
177
258
161
215
223
218
170
290
213
156
170
210
226
194
160
206
206
164
171
224
246
168
219
187
229
226
199
185
177
189
283
232
143
139
183
164
226
194
212
142
263
180
253
224
139
246
241
169
234
236
233
208
229
172
195
226
182
145
149
124
175
202
91
172
220
187
215
173
229
234
191
229
189
204
204
170
216
223
180
224
192
141
180
196
248
201
202
246
216
250
189
232
207
223
211
206
216
219
132
230
226
213
212
197
208
255
192
228
232
208
227
196
190
252
172
173
264
213
154
273
234
236
215
215
213
239
193
200
157
204
183
202
206
196
179
181
272
157
240
168
241
186
192
92
188
185
277
204
213
168
181
199
205
219
255
199
187
215
197
232
220
170
183
249
247
175
155
154
194
224
154
190
167
197
163
188
209
170
216
222
227
197
235
258
212
257
227
204
183
282
189
132
220
210
265
144
214
245
184
206
203
192
178
227
169
187
220
226
170
218
206
203
182
222
224
166
226
185
221
212
202
181
176
236
255
193
179
185
212
234
166
223
224
198
153
194
159
203
216
173
221
127
155
227
193
191
178
204
217
232
178
172
212
150
198
239
201
208
180
209
194
184
198
228
192
149
148
204
206
225
193
241
154
207
152
172
179
223
220
174
207
136
192
192
192
180
146
166
232
248
256
232
167
225
119
190
160
198
175
210
147
183
205
144
160
253
194
258
192
210
176
225
199
181
237
194
203
269
199
283
172
244
201
143
184
194
198
228
201
176
137
185
173
219
180
125
194
273
245
243
176
201
219
144
160
228
235
196
196
197
99
242
184
235
214
203
231
283
175
195
203
215
196
181
226
224
187
228
184
168
230
236
174
212
195
132
210
210
184
226
205
211
198
157
186
219
213
205
193
184
175
218
184
170
191
190
153
214
220
247
188
188
254
223
172
168
248
231
212
283
120
206
246
190
152
223
154
163
176
213
230
199
192
183
154
236
148
212
232
168
219
195
160
180
229
182
176
220
177
188
248
171
252
184
160
231
172
169
185
143
201
233
196
270
207
109
227
211
164
183
225
192
196
201
175
243
253
184
208
194
177
248
162
169
223
250
137
145
149
181
208
237
239
241
185
146
205
139
294
249
220
192
199
211
205
234
171
232
192
176
160
180
232
248
235
189
186
249
247
183
143
156
213
237
185
218
183
227
200
205
239
199
172
183
200
229
243
229
171
203
178
188
176
241
193
215
206
171
153
206
163
188
154
223
191
232
228
203
217
168
163
162
159
229
241
215
229
219
158
189
231
205
182
164
190
236
225
215
214
149
233
196
236
188
220
206
211
231
219
182
205
139
197
195
201
181
194
208
229
127
203
172
246
254
132
153
180
227
211
162
188
145
252
143
215
192
131
209
151
169
212
205
190
137
226
200
218
153
154
125
245
161
166
181
133
102
217
234
206
242
228
258
171
182
206
230
173
197
192
208
158
205
174
203
171
231
175
187
191
199
213
264
238
134
157
259
236
212
258
188
202
249
189
162
204
229
212
175
223
220
164
165
209
268
201
254
172
212
181
201
172
198
206
206
192
142
256
248
219
212
235
207
265
258
241
200
193
184
246
185
137
235
194
234
237
209
226
246
133
226
197
174
204
219
155
243
169
167
128
221
233
154
227
141
195
226
237
233
210
228
240
197
232
246
205
223
227
135
191
208
228
197
215
192
184
202
218
234
250
192
221
178
195
124
203
208
179
179
115
176
186
161
206
226
181
137
230
245
170
194
187
176
188
142
218
157
200
197
175
211
166
191
146
159
235
158
220
204
167
171
197
199
151
213
128
228
180
132
180
175
229
194
163
209
218
237
172
156
178
193
219
249
144
188
151
176
179
124
201
203
206
280
193
180
152
212
259
187
214
134
190
174
171
269
170
162
159
218
155
194
221
185
140
169
155
213
189
206
171
234
218
204
206
173
264
159
186
145
229
184
232
242
203
159
198
162
242
135
202
223
192
213
174
189
167
254
193
167
209
211
235
144
273
221
174
156
137
165
246
252
211
222
213
169
219
149
171
180
130
160
197
140
282
239
212
228
141
151
217
205
189
223
198
168
220
225
207
200
203
179
205
121
188
221
255
241
201
136
167
120
223
235
161
207
248
240
200
213
222
225
237
129
202
209
148
197
200
140
208
147
187
209
231
225
233
198
202
232
196
205
212
211
227
210
216
144
200
225
200
214
274
226
217
176
225
222
182
133
91
213
188
204
197
170
133
192
253
138
187
205
190
219
215
200
214
188
141
214
232
224
184
167
217
182
249
191
165
187
210
192
161
123
213
176
211
201
115
191
195
212
245
222
188
197
245
210
137
170
224
229
176
265
210
180
168
213
162
214
199
240
220
255
160
175
188
254
210
220
138
227
205
178
195
208
253
192
171
159
217
177
198
144
190
166
177
198
192
186
196
173
200
184
233
189
191
212
207
205
212
231
236
182
185
202
176
152
230
201
236
267
171
165
206
206
148
201
216
181
265
181
210
203
244
230
217
207
237
245
162
193
249
174
226
180
247
206
204
152
262
131
197
275
148
222
240
182
125
226
256
218
231
165
159
177
170
174
201
205
205
246
167
221
206
216
208
243
180
182
164
161
171
175
229
189
162
211
183
209
163
195
188
222
192
228
213
176
220
211
196
229
255
254
152
220
220
240
177
219
167
188
174
170
253
162
186
226
211
192
213
175
194
240
197
221
183
223
147
173
145
216
227
227
213
194
208
212
263
207
256
231
184
230
224
197
219
181
194
159
222
116
182
189
261
178
247
220
189
262
132
177
219
248
173
208
186
241
210
219
217
158
231
214
218
214
222
211
210
213
211
201
265
218
237
185
213
209
172
121
179
215
175
184
213
212
125
203
260
186
143
255
193
217
231
206
186
170
178
164
164
167
192
153
218
193
187
207
161
187
257
206
170
107
217
220
204
155
244
174
213
188
187
225
213
238
232
232
242
140
210
187
178
213
217
177
218
234
221
143
207
181
176
217
216
214
170
195
190
214
221
223
193
192
219
216
175
182
266
184
222
233
195
261
259
197
197
190
256
215
193
163
207
162
205
203
214
240
203
201
202
199
198
224
220
220
194
177
211
148
265
238
234
225
183
217
221
205
256
151
229
214
225
169
230
147
194
184
197
166
199
150
224
203
188
132
217
262
272
194
247
219
209
192
180
215
254
190
207
186
196
209
192
207
274
229
264
183
184
216
237
166
195
168
187
167
221
215
214
178
196
171
222
220
151
168
274
176
224
222
186
261
246
241
178
223
234
235
174
172
231
271
161
238
189
175
204
225
212
126
209
199
226
216
172
201
170
172
262
179
174
221
191
257
155
170
219
162
246
214
169
212
256
125
188
150
188
209
170
153
248
248
165
245
248
176
216
176
195
259
221
208
195
197
179
222
197
297
214
166
235
239
173
191
140
246
225
205
171
176
205
188
231
179
256
169
181
173
201
168
234
106
190
160
218
240
154
278
214
191
270
161
195
189
106
203
202
183
147
219
236
265
208
224
163
214
201
169
225
200
192
222
139
208
198
219
247
214
154
185
234
167
176
260
206
234
225
227
198
232
179
189
160
230
181
156
173
193
145
195
224
221
225
275
259
225
233
210
215
211
204
227
169
151
205
188
220
177
229
246
169
183
246
212
226
223
188
150
225
209
164
223
190
144
236
178
159
216
178
191
184
178
253
164
192
188
186
175
182
180
194
230
181
198
208
174
138
175
195
192
232
219
198
265
151
155
197
133
212
189
194
226
215
160
158
228
210
227
221
234
215
178
208
182
219
231
173
198
225
243
212
193
178
228
193
214
239
205
191
251
212
211
259
166
216
238
187
223
232
208
203
218
161
194
212
226
232
216
134
190
219
234
202
209
192
144
205
190
174
169
226
163
198
190
203
210
246
230
206
208
164
145
231
172
168
258
203
274
205
197
185
240
166
201
149
233
196
157
165
191
175
170
216
225
164
175
197
214
193
187
176
211
263
148
197
229
209
211
241
198
181
184
170
216
192
161
216
212
218
217
205
206
144
228
229
217
152
164
247
265
204
210
211
195
199
184
240
213
188
238
228
188
226
193
242
234
206
195
179
202
122
255
159
192
176
161
170
146
234
210
247
240
189
200
243
234
190
248
115
206
204
186
208
190
189
218
120
173
197
138
118
134
160
256
152
194
177
223
283
214
135
215
210
190
195
229
110
270
209
204
210
202
197
158
180
180
192
200
236
207
208
235
131
188
260
186
180
160
182
187
171
251
239
166
175
247
203
133
193
178
140
181
171
196
198
173
210
157
227
217
153
198
222
204
189
223
218
214
145
238
223
193
268
186
176
130
155
182
168
192
199
152
191
171
168
179
173
262
221
180
211
224
232
227
169
178
140
243
228
137
212
175
216
193
215
215
205
191
264
235
218
253
271
219
209
202
222
165
262
154
234
204
189
288
181
187
155
124
257
220
275
210
242
219
188
170
196
253
297
207
212
209
145
207
210
189
256
216
135
224
204
123
191
170
151
201
158
214
142
131
223
201
201
244
177
169
221
168
225
141
224
197
176
209
192
208
117
119
182
195
218
249
190
211
191
202
189
263
251
148
158
257
184
227
141
203
212
213
178
230
240
230
262
252
190
171
209
154
208
205
215
225
201
182
154
173
227
219
177
229
173
226
189
153
190
178
175
227
245
250
238
192
213
114
194
232
229
177
214
286
150
168
215
159
154
262
233
219
253
164
287
193
112
240
199
228
154
181
199
171
171
199
232
156
205
228
223
249
212
183
210
208
226
134
259
169
198
156
207
176
185
191
189
185
218
185
209
212
233
229
174
205
174
261
207
214
248
267
236
276
209
165
255
233
193
209
159
178
186
244
205
236
254
221
246
225
165
216
207
242
194
227
159
141
207
247
197
216
193
189
168
236
216
211
179
196
220
238
181
228
180
200
178
180
218
196
172
152
179
239
164
228
227
146
175
162
193
229
214
214
192
169
216
262
296
223
242
155
191
218
233
219
186
218
189
253
141
226
256
220
234
179
176
183
164
172
200
196
239
182
229
181
193
202
203
197
208
185
195
192
88
189
194
172
187
212
245
276
226
235
205
149
230
187
216
238
209
222
194
236
261
175
142
273
193
225
195
189
223
217
211
180
168
181
247
240
239
156
263
173
210
100
194
219
276
188
223
220
277
198
218
258
187
241
215
139
234
241
206
182
186
173
218
238
172
198
139
176
192
219
243
196
206
144
194
222
221
167
197
155
138
223
228
218
244
213
231
230
197
205
234
245
215
187
165
143
276
219
165
180
246
189
232
177
204
191
235
192
251
158
227
176
210
178
278
204
261
187
177
151
197
270
163
176
195
166
219
223
229
165
208
128
189
187
176
206
213
194
263
221
218
250
180
193
198
163
184
145
251
192
174
251
145
215
237
173
216
230
233
208
170
204
214
206
220
241
162
239
219
180
221
205
175
196
165
226
183
127
214
230
200
224
219
162
246
154
224
164
237
233
163
226
202
186
167
232
193
213
153
133
238
207
163
229
245
250
157
210
205
192
265
224
155
205
177
212
200
221
180
234
221
163
233
192
170
154
215
236
181
191
221
159
197
270
240
223
154
158
228
184
227
189
193
154
236
173
205
188
189
145
221
204
210
245
170
180
166
180
182
158
204
257
234
185
245
224
231
229
222
184
120
224
241
213
216
211
192
222
224
202
165
251
221
216
218
215
204
218
235
172
243
160
236
240
223
187
262
169
191
269
215
228
146
252
252
182
206
173
146
217
259
133
158
249
202
221
216
137
245
180
262
252
206
221
180
189
145
169
153
218
186
152
178
182
200
200
156
135
215
212
177
208
253
164
162
254
167
158
190
248
229
209
174
162
184
164
233
220
252
218
221
261
179
231
218
211
233
246
235
203
246
110
185
212
261
191
237
163
242
228
284
154
198
222
163
210
180
183
182
201
233
214
171
158
232
209
191
166
151
177
211
240
251
265
180
233
233
109
153
232
162
205
204
204
273
205
224
181
242
219
204
183
130
138
183
159
200
187
259
149
121
189
211
240
259
187
177
193
211
193
196
206
207
213
147
160
199
227
226
259
224
212
190
194
206
143
201
220
151
247
235
209
133
229
219
245
173
138
188
145
230
139
136
209
161
215
163
257
234
225
237
179
213
185
216
186
184
185
197
141
211
180
227
130
250
202
185
182
218
257
251
229
212
205
168
229
225
205
242
156
153
234
208
210
170
211
172
212
160
184
192
191
235
222
198
211
160
175
232
217
212
206
213
190
206
156
207
159
168
252
228
247
194
217
211
167
226
235
176
171
190
216
187
209
195
220
213
247
179
238
194
208
166
223
190
203
151
157
178
210
200
231
191
204
213
233
151
210
225
209
203
243
239
194
193
163
151
218
217
184
166
219
180
225
246
240
136
161
151
130
241
128
184
102
190
171
193
189
196
190
195
150
176
175
228
213
185
237
133
240
235
165
122
205
243
195
200
162
214
194
210
221
201
223
184
241
222
155
203
184
140
230
187
204
235
258
224
136
170
148
164
207
174
199
267
214
272
182
202
131
233
238
237
194
189
203
195
198
208
203
239
203
221
216
261
149
192
157
213
209
182
196
191
181
183
228
181
188
234
202
163
155
185
237
224
214
173
146
205
205
152
200
192
127
185
174
206
234
155
176
215
226
232
155
221
279
198
177
214
216
193
140
198
211
191
184
176
244
239
181
185
206
212
200
154
209
193
188
201
220
169
203
274
200
209
139
239
270
177
200
160
192
175
259
258
215
192
247
188
131
262
149
171
188
182
211
228
131
156
178
110
151
176
193
236
282
166
233
232
207
182
203
176
130
207
190
161
261
222
222
198
156
196
168
254
249
245
164
215
171
258
109
191
184
158
161
177
223
205
189
216
237
192
262
253
158
193
156
261
189
205
247
215
208
282
199
222
195
173
221
197
261
187
202
140
191
223
186
202
225
205
156
251
178
141
197
255
205
193
250
216
191
193
183
263
175
193
305
184
213
170
189
137
250
190
156
130
279
163
244
253
225
200
217
132
208
194
175
199
233
184
231
233
206
156
221
208
166
186
227
165
215
227
178
191
226
265
211
214
156
247
230
188
214
228
225
124
222
187
291
225
200
205
158
228
157
212
225
248
235
268
234
239
132
160
191
205
177
219
204
206
235
151
236
175
183
193
178
195
191
138
245
250
208
204
214
203
204
262
233
194
228
140
176
191
196
163
199
188
223
254
188
225
214
215
195
250
205
190
198
196
207
204
145
119
226
185
210
136
218
199
147
219
219
208
247
155
203
221
145
228
227
165
216
216
187
246
237
125
205
218
212
220
165
155
209
222
221
222
151
240
205
192
214
196
111
242
198
162
186
218
222
139
148
208
198
201
158
241
216
166
225
223
193
195
178
206
243
184
240
228
145
272
242
217
236
180
187
175
197
209
170
182
180
172
143
173
124
218
215
217
177
221
214
211
163
235
200
235
215
178
228
167
195
207
205
187
181
233
223
179
189
219
197
202
220
191
169
197
269
210
180
135
186
271
237
169
210
207
210
296
210
181
213
180
229
188
210
253
230
222
244
178
222
157
238
230
190
183
218
237
187
175
221
175
269
202
146
205
253
216
229
220
225
197
177
226
145
177
142
196
197
202
191
201
239
245
213
236
163
166
203
217
232
142
183
160
192
184
238
213
229
213
227
161
184
219
241
172
211
160
154
176
206
171
214
204
231
207
154
256
226
204
222
223
239
145
201
160
192
233
226
252
183
164
165
165
235
214
175
231
282
205
193
217
188
169
236
197
243
205
197
182
218
205
202
154
169
211
227
217
192
253
109
252
176
165
246
199
212
277
167
237
156
199
208
176
206
184
167
201
136
201
188
161
178
206
140
225
92
162
225
203
212
202
249
205
109
187
190
200
219
190
234
188
248
179
205
129
282
200
225
243
191
227
147
228
253
179
233
219
175
242
204
196
222
210
271
224
211
202
227
238
228
229
173
184
228
188
252
212
170
226
243
181
227
213
179
136
245
194
168
161
172
133
249
221
260
249
187
213
184
178
225
203
186
160
215
221
200
185
180
221
166
176
214
265
176
166
228
207
197
229
186
249
168
237
262
147
136
184
113
241
214
139
201
201
160
219
196
220
209
214
248
232
120
235
146
205
182
183
227
133
248
221
206
227
239
170
194
253
205
167
215
235
233
180
192
242
209
217
162
248
193
237
166
195
279
210
215
248
187
219
232
257
140
168
190
239
218
252
174
219
296
131
214
184
224
269
229
167
182
210
240
227
223
190
211
178
229
166
142
193
171
176
221
211
177
181
181
207
284
240
210
219
196
243
162
190
253
205
189
211
313
194
172
224
196
225
215
157
239
196
223
243
181
141
232
222
257
225
201
153
211
173
275
173
218
214
188
203
174
169
161
253
149
145
135
206
213
226
182
147
226
205
221
155
166
151
250
196
243
157
155
239
156
194
163
252
202
219
201
236
180
223
242
137
216
162
177
181
180
174
231
202
200
186
278
224
222
180
160
129
168
156
263
182
195
240
170
249
193
152
157
199
174
237
224
225
126
200
224
224
217
167
204
147
170
171
102
152
169
240
224
236
205
190
236
231
239
232
242
185
181
166
210
210
168
207
159
174
196
180
222
237
192
155
169
203
218
214
155
197
168
214
209
242
216
185
238
209
201
209
183
192
143
164
205
218
141
246
182
256
177
203
189
209
216
236
191
188
208
197
235
168
175
199
203
179
187
163
231
216
124
187
127
192
179
185
233
255
139
191
198
168
134
242
214
227
172
155
235
184
197
254
222
194
188
246
197
233
161
176
257
229
173
232
190
198
233
226
158
220
241
160
157
180
239
230
249
228
153
238
171
179
208
155
196
213
265
277
192
235
235
247
224
206
223
198
226
199
198
151
185
253
174
221
229
197
221
234
204
208
235
189
224
188
154
169
201
216
196
155
174
245
199
165
276
238
171
207
226
204
226
234
220
246
120
185
216
252
210
124
147
183
231
208
202
115
134
179
186
194
152
224
173
217
203
162
170
158
143
230
233
201
222
174
263
240
188
219
193
213
149
196
238
212
211
127
194
192
196
243
157
204
228
150
208
218
194
231
208
222
230
172
189
204
198
216
195
196
291
161
209
242
247
226
127
235
191
223
190
158
189
232
222
195
199
148
201
297
208
214
174
230
237
227
228
191
209
175
216
258
196
200
232
169
213
166
184
280
212
264
231
225
170
264
171
213
222
228
188
216
196
222
156
171
203
132
267
165
202
215
144
285
150
208
215
190
291
174
212
238
207
179
243
199
275
203
290
183
223
234
178
181
161
225
179
191
174
197
182
222
171
229
225
245
214
188
222
228
245
131
201
186
195
245
115
181
217
228
168
228
191
207
220
199
106
135
163
223
185
238
172
191
204
220
125
173
170
226
241
142
201
215
218
204
178
141
197
234
249
186
178
213
185
259
213
270
212
267
139
176
189
171
161
218
221
186
225
228
182
193
168
192
195
220
236
179
222
204
230
208
153
169
175
121
263
259
214
231
213
267
171
198
201
251
261
217
277
155
175
205
160
275
190
153
196
173
184
138
147
167
165
221
211
230
186
139
246
255
265
234
202
219
193
259
253
217
226
199
150
200
174
172
178
258
196
222
245
244
167
255
205
160
118
177
150
234
151
160
168
205
245
226
215
242
221
161
241
234
184
204
180
196
200
209
224
191
243
197
208
244
179
186
186
152
213
214
159
211
117
183
251
162
226
199
237
182
164
140
179
221
200
168
241
218
148
174
202
202
219
230
175
179
213
199
151
248
208
239
159
223
199
112
124
206
196
243
177
238
203
178
146
191
172
236
192
237
200
115
174
199
157
175
238
155
212
148
213
241
150
224
223
213
227
136
140
228
228
186
224
202
180
208
192
201
156
224
203
169
198
249
271
162
212
220
256
207
215
238
180
232
162
200
151
212
215
197
214
152
194
216
184
182
250
192
163
163
240
145
226
243
245
179
260
159
228
215
137
210
189
235
248
207
170
246
205
219
211
251
217
183
170
220
211
228
224
196
256
172
199
186
185
232
158
159
212
182
145
233
203
184
202
202
230
217
173
192
166
152
220
249
195
205
197
174
170
181
204
206
172
198
240
208
140
200
194
237
178
179
192
197
159
162
182
232
252
141
203
135
187
188
220
200
212
186
234
205
190
218
201
146
132
205
168
226
160
207
187
270
262
220
259
243
224
143
201
181
144
163
181
213
193
229
174
169
228
183
240
205
202
147
215
158
212
174
174
230
228
194
142
207
161
253
184
250
233
170
190
228
150
248
215
232
229
146
223
187
185
257
233
188
189
183
251
165
186
274
185
171
240
239
224
214
164
186
255
139
118
235
207
166
212
257
221
205
172
211
162
207
177
181
156
205
211
193
193
196
235
204
151
190
203
220
188
208
117
233
271
158
146
201
182
221
266
219
160
217
273
204
205
231
202
201
244
203
218
170
241
193
197
160
263
196
270
221
202
147
217
262
150
238
180
198
232
184
175
214
169
181
149
200
208
200
219
189
251
147
192
227
168
159
225
190
209
103
227
195
238
171
211
176
216
215
196
210
205
192
172
178
189
178
150
181
189
202
209
151
234
193
157
174
111
217
135
233
241
248
217
194
213
201
199
163
170
224
165
162
203
176
177
155
177
227
234
236
198
180
192
185
277
237
191
139
172
257
110
207
239
176
182
183
185
212
169
209
233
166
214
204
229
185
195
216
173
171
133
182
239
215
231
208
197
243
146
238
239
208
167
266
152
264
219
207
268
222
154
191
160
172
220
248
228
211
285
221
183
216
197
216
171
206
104
207
204
200
225
197
190
178
163
170
225
195
254
131
199
177
163
146
194
272
176
131
225
184
165
202
237
238
171
226
138
231
172
221
201
208
161
213
275
292
217
178
155
158
198
159
210
147
177
236
230
232
219
203
151
216
214
142
214
124
234
198
185
240
120
212
202
222
175
127
254
196
200
169
170
105
177
119
142
203
126
201
187
230
134
170
206
252
182
215
233
227
222
209
180
147
217
252
149
220
164
135
256
180
265
211
211
200
193
134
181
151
224
221
216
197
229
196
195
210
212
224
218
249
184
186
159
203
129
172
176
218
148
196
224
209
230
125
168
180
221
180
192
178
234
188
253
240
201
196
219
137
220
170
205
217
157
152
162
219
199
165
219
207
212
176
176
191
217
160
215
165
199
163
181
192
139
226
238
186
190
231
186
163
165
136
222
247
197
192
180
234
198
191
167
164
194
212
220
120
159
242
205
191
118
198
201
155
246
254
187
191
137
164
208
227
136
160
208
171
190
214
163
198
152
249
194
188
202
199
158
212
162
157
221
176
180
220
165
164
199
161
243
151
156
212
231
159
200
165
165
209
196
188
194
137
167
240
206
216
194
184
173
149
218
231
160
197
250
172
178
241
166
242
185
223
172
267
243
174
250
234
166
186
222
219
257
231
175
164
303
185
205
104
181
209
221
196
237
266
215
150
202
200
137
163
230
178
201
209
191
192
147
208
215
253
196
146
167
175
227
156
220
177
263
188
145
228
163
235
215
204
140
218
253
269
190
134
227
240
177
240
234
226
169
155
204
214
190
230
251
188
203
219
187
173
151
206
186
255
173
209
141
167
230
147
180
154
148
236
185
198
214
166
189
155
154
243
183
227
115
179
209
212
217
211
149
216
220
138
219
165
186
122
162
157
196
198
247
232
234
276
194
224
152
186
166
256
208
288
241
240
255
220
271
153
234
164
207
159
184
170
240
141
204
200
252
233
167
170
171
183
197
230
168
219
196
159
230
194
256
194
222
180
163
211
146
200
149
197
201
187
182
193
195
143
206
226
208
223
254
227
207
154
144
213
209
157
250
232
157
195
146
199
187
174
160
152
212
244
210
154
170
211
194
142
193
209
233
205
193
195
226
238
228
156
180
163
254
212
170
179
196
237
183
179
213
194
281
191
170
169
189
237
172
154
199
216
193
201
197
171
200
171
240
161
204
209
210
231
254
202
156
236
205
201
249
249
196
245
198
228
236
203
235
252
224
194
308
190
209
172
238
130
194
254
117
210
192
241
217
228
228
151
208
220
192
165
219
191
169
178
220
175
110
152
188
128
239
182
210
179
252
218
137
164
177
198
226
182
212
208
203
187
221
220
179
117
197
168
173
201
198
197
238
220
169
256
152
220
227
192
243
255
225
178
245
204
242
183
215
177
238
172
220
197
192
200
188
214
191
184
213
211
227
220
197
191
250
265
191
232
196
195
180
183
218
239
177
151
174
192
246
203
230
168
190
196
243
194
250
208
189
204
189
194
194
177
223
212
222
162
207
231
226
242
229
218
199
173
190
190
208
184
183
205
220
226
216
221
177
129
240
214
253
139
216
199
188
246
222
182
243
261
137
214
238
210
224
208
118
138
197
251
180
182
172
181
264
131
232
208
240
181
214
200
166
193
195
211
204
169
186
160
225
197
225
206
178
189
217
185
188
278
194
155
168
154
235
218
238
133
254
204
162
178
177
201
180
178
242
238
197
216
184
230
202
189
233
209
173
240
115
214
161
126
147
148
224
144
273
205
241
202
174
184
226
174
145
204
236
192
161
206
250
204
228
272
248
195
192
186
170
241
162
254
242
198
184
209
224
183
210
231
194
248
180
239
160
168
181
208
205
200
147
176
225
150
224
234
194
194
206
248
212
223
207
241
174
154
161
234
233
226
220
206
278
263
180
224
194
215
216
235
211
199
188
214
236
203
240
201
154
201
287
195
214
255
231
223
213
202
216
201
194
191
254
213
166
185
242
188
166
179
168
201
198
190
250
151
232
145
196
145
238
177
139
183
204
242
201
208
233
190
190
196
141
211
178
231
156
214
239
229
157
154
191
103
193
167
228
194
166
203
164
203
169
228
157
168
190
191
179
149
269
215
216
208
70
154
230
189
132
195
269
186
224
230
193
193
221
217
143
234
181
235
206
231
213
225
199
212
169
194
226
241
181
200
189
212
255
230
199
175
226
168
202
257
207
214
188
217
186
267
187
146
204
223
239
273
203
235
163
200
172
220
137
152
231
248
208
139
179
159
215
182
207
156
168
243
180
190
180
209
158
203
256
163
169
221
185
199
185
239
184
208
212
204
200
181
207
216
235
219
186
193
228
186
202
177
209
202
187
252
231
193
150
213
214
245
214
230
224
140
236
192
176
154
147
159
165
198
225
184
212
209
178
227
208
241
182
233
248
217
118
269
138
148
182
154
157
140
237
169
212
231
228
184
222
226
177
144
181
204
219
209
178
231
162
199
168
257
194
241
262
226
199
241
199
192
178
222
120
132
257
219
160
245
220
271
209
118
200
133
210
196
134
188
196
231
184
211
237
185
178
255
201
227
184
197
207
162
211
201
150
236
240
190
177
135
206
98
244
225
203
276
194
179
170
185
207
191
163
215
145
189
169
199
221
173
152
174
174
210
245
196
253
158
218
260
191
216
176
210
206
223
211
123
192
199
186
199
202
212
227
233
218
155
244
180
178
178
229
230
198
114
182
211
189
270
222
251
199
264
163
169
154
216
131
217
204
198
199
190
189
174
155
169
201
209
187
237
161
177
266
183
172
144
246
180
141
214
228
201
249
116
177
167
224
144
241
144
224
214
222
130
151
188
231
156
169
153
130
200
168
158
188
214
208
187
215
228
214
148
204
153
238
204
182
204
224
212
246
230
182
208
211
203
173
230
218
206
149
253
205
227
201
203
232
195
260
223
184
202
184
197
202
282
235
205
263
164
169
205
253
237
226
276
243
207
221
196
203
233
184
177
146
212
256
193
189
193
164
180
194
179
159
202
158
198
134
200
217
195
177
204
176
152
241
176
231
210
220
176
227
203
156
186
233
256
209
256
137
244
223
194
259
236
247
176
127
219
170
226
207
242
198
179
165
154
230
137
273
183
232
190
174
133
228
223
228
166
234
212
193
137
246
170
169
232
223
220
245
228
154
214
160
180
234
245
196
231
159
122
196
229
262
218
215
159
245
215
199
187
196
143
205
186
179
184
228
210
226
186
219
223
153
234
224
192
212
226
205
254
229
196
219
209
244
179
226
155
213
234
174
188
198
238
171
229
186
189
203
205
167
245
257
199
170
184
163
247
207
209
180
141
215
228
237
153
214
143
180
202
236
208
196
182
226
203
195
187
233
203
194
162
177
213
223
223
208
153
186
135
113
209
208
148
152
189
230
235
159
158
190
191
233
227
251
246
140
147
171
220
151
167
209
204
206
193
147
171
206
198
151
215
190
173
223
215
248
190
218
227
168
219
234
223
221
183
211
264
188
134
206
219
176
200
202
142
202
208
217
218
152
242
123
195
208
189
245
142
218
210
218
275
235
160
123
171
183
174
228
277
210
197
199
238
185
175
245
182
229
128
255
220
154
201
188
197
225
241
170
224
216
193
193
180
160
235
229
217
220
117
243
137
169
180
220
193
191
232
184
184
189
199
211
182
189
188
176
221
186
193
176
152
231
170
157
155
231
151
127
220
222
209
176
227
203
186
179
155
133
219
224
282
173
203
192
228
151
238
243
171
290
239
242
222
216
184
209
213
200
238
189
222
212
115
220
249
216
194
241
151
235
110
205
176
233
159
211
183
203
198
177
227
250
200
202
214
138
229
230
157
175
252
247
248
217
205
191
210
131
214
267
179
228
196
182
250
171
178
201
185
221
221
182
151
186
156
225
214
190
188
190
186
171
211
262
174
182
179
163
223
189
147
171
221
142
178
209
201
170
174
244
147
208
224
221
208
181
141
180
242
231
190
232
163
217
181
227
180
225
216
188
266
208
188
257
206
165
226
194
199
162
140
193
250
161
219
172
283
223
157
175
154
207
225
224
163
203
184
170
205
125
150
196
220
200
179
247
181
197
174
220
177
232
201
226
275
185
193
204
204
147
104
167
156
238
193
130
176
254
105
141
150
209
212
199
182
196
158
204
211
131
167
198
179
220
162
175
157
135
186
178
230
206
189
174
218
162
257
245
163
210
198
229
156
222
160
223
197
217
208
201
208
209
204
247
263
203
258
241
173
225
171
208
224
134
223
207
185
130
184
199
188
165
178
189
158
247
121
225
176
214
209
201
216
237
180
198
258
192
174
231
262
187
227
239
158
220
150
180
206
195
189
118
216
242
202
210
221
152
205
153
186
204
246
237
223
217
183
214
237
181
156
218
207
204
221
219
189
200
168
154
224
234
241
182
213
229
120
193
236
187
179
155
233
160
200
175
157
209
224
167
169
163
198
183
189
239
242
144
187
218
155
200
196
228
263
127
207
211
186
237
184
225
228
202
203
225
186
189
247
191
168
197
136
121
175
238
224
245
140
200
195
246
210
213
229
210
235
237
211
231
174
193
206
119
224
188
209
201
153
171
188
175
144
202
193
166
217
237
150
107
265
151
204
191
233
194
175
181
167
196
214
152
235
201
223
244
114
205
194
223
247
137
221
190
203
209
127
183
196
242
157
227
210
215
234
204
157
231
228
236
219
248
180
226
215
210
164
247
190
213
231
241
223
235
266
201
207
160
176
209
183
228
241
251
198
199
132
155
135
214
233
157
186
183
255
228
176
147
238
171
257
170
210
149
224
183
207
225
230
211
158
264
179
191
202
191
293
195
152
162
242
250
179
228
199
235
282
256
150
230
175
217
175
213
144
176
204
130
167
169
171
238
205
177
115
250
209
169
171
172
222
261
216
165
147
167
262
208
198
187
135
156
170
171
246
189
198
167
193
186
224
249
237
189
185
230
233
211
212
233
222
193
185
202
207
177
188
134
203
182
166
189
169
214
212
260
221
193
196
203
231
190
243
200
253
245
179
203
233
220
194
256
172
290
243
197
198
225
175
259
215
187
170
220
210
214
148
222
242
144
222
239
202
205
217
219
205
165
208
171
188
206
245
160
146
176
193
223
190
231
262
159
234
183
226
163
173
198
216
258
229
218
210
196
209
219
213
163
278
249
156
195
151
145
273
186
251
250
171
214
188
237
240
205
241
214
163
214
202
215
156
159
173
182
202
194
206
145
223
200
211
206
235
159
154
159
196
237
233
216
256
201
265
228
264
254
187
239
145
123
189
229
170
134
208
257
251
229
142
200
242
200
234
201
216
164
175
141
158
196
220
171
188
218
188
246
202
188
210
250
185
172
168
222
150
174
95
184
163
152
171
224
150
264
184
226
178
220
185
188
172
233
173
209
201
183
271
196
194
211
231
223
157
204
218
180
220
182
167
164
202
203
224
213
190
154
210
108
239
202
221
257
210
227
150
210
180
189
158
198
258
217
228
244
173
213
225
215
252
165
168
179
204
192
166
208
259
166
168
223
169
174
191
245
179
190
242
197
158
213
228
192
238
185
238
167
183
211
228
170
158
210
232
214
147
153
219
191
182
204
228
154
210
212
180
225
244
183
211
142
206
230
212
159
188
215
238
230
184
205
221
155
198
193
146
204
248
191
201
177
220
155
207
184
198
159
231
222
209
170
214
192
231
169
142
222
230
194
188
198
210
207
220
221
191
217
210
196
187
185
229
241
254
163
141
226
216
191
211
173
223
201
163
187
228
235
246
182
171
130
285
145
220
106
210
153
270
230
192
212
196
148
220
186
182
168
187
225
233
193
160
226
270
165
192
223
222
179
180
207
201
236
217
183
213
176
259
150
150
168
190
131
128
199
200
185
193
161
221
203
220
172
178
209
219
245
140
212
203
199
140
184
247
209
199
180
175
187
229
164
233
230
174
136
212
132
203
223
181
232
186
207
230
251
243
241
204
199
211
179
226
144
214
249
172
234
209
248
237
248
183
191
223
263
201
229
218
166
193
136
201
193
206
207
205
169
202
244
226
258
181
218
195
131
168
194
171
199
141
215
162
159
221
124
237
213
166
244
193
253
196
194
184
161
225
187
215
196
140
218
219
216
204
172
250
203
192
187
191
198
175
193
195
176
226
157
245
195
213
164
205
231
158
213
253
158
265
160
154
156
132
184
255
225
167
267
174
241
187
197
205
227
210
218
207
237
184
238
235
213
134
208
213
226
185
187
186
208
171
245
204
141
234
199
205
200
182
141
210
258
225
228
193
216
245
242
188
192
172
207
214
250
201
192
167
160
183
174
170
191
125
180
190
163
213
213
174
208
151
176
158
227
197
144
228
239
220
245
237
212
230
133
174
209
167
158
220
188
247
224
160
226
112
194
227
212
150
222
214
140
149
156
183
231
253
214
183
208
218
158
180
196
272
184
262
215
137
219
260
196
284
218
219
201
195
171
187
217
251
164
172
195
140
179
239
212
129
206
145
184
259
251
142
232
204
266
199
230
257
216
230
172
234
227
182
242
146
184
220
160
230
267
237
174
111
227
223
192
247
250
231
212
234
218
188
205
216
130
182
177
207
162
204
184
235
252
209
177
229
234
200
148
200
218
203
245
214
174
178
165
206
224
190
198
165
165
149
197
176
230
175
128
181
217
222
154
174
227
160
190
162
231
149
140
171
164
230
222
159
186
172
197
194
246
191
153
143
228
216
221
225
203
222
189
227
244
211
164
196
226
181
222
226
202
226
182
195
232
199
197
161
222
200
196
208
186
197
178
186
182
201
258
173
216
184
175
198
226
191
202
173
220
211
173
79
218
169
144
187
171
169
288
183
214
239
188
184
242
167
240
175
184
228
170
157
200
186
220
216
226
187
261
177
185
164
243
170
172
202
261
196
186
204
182
204
230
155
178
163
154
167
144
197
235
231
145
242
167
163
156
223
255
245
198
191
208
169
179
178
199
211
178
140
194
247
206
190
153
229
233
178
180
163
218
203
224
245
171
146
182
198
215
147
250
170
248
180
184
235
212
183
130
227
202
145
230
186
187
211
224
210
178
201
163
203
182
212
179
236
234
126
201
186
193
186
166
232
246
223
153
168
202
134
202
202
201
207
152
171
190
169
211
221
212
180
200
237
173
247
139
194
228
255
252
185
141
199
237
231
193
210
272
201
230
176
225
196
117
221
154
184
203
178
194
151
241
188
228
186
248
198
185
211
219
158
249
155
227
249
205
244
203
137
117
170
174
216
154
141
179
167
194
184
187
246
195
187
239
205
174
226
207
196
173
226
128
189
230
186
187
129
223
177
230
149
204
186
213
197
206
203
250
257
240
262
192
187
202
207
172
243
269
243
122
214
193
229
199
204
177
147
248
222
166
208
241
205
191
270
194
147
205
241
242
162
99
199
174
230
181
139
234
164
174
154
175
228
219
212
204
233
140
235
185
148
177
165
192
152
220
225
186
238
147
196
172
187
230
177
177
185
267
166
202
171
181
172
226
194
210
181
125
229
196
203
208
217
190
203
254
135
271
188
176
212
269
272
202
156
124
181
187
230
251
214
212
251
157
228
219
227
198
174
239
160
225
225
146
130
207
216
178
156
187
205
198
231
203
236
165
177
229
178
233
206
215
175
167
200
227
184
184
149
185
211
179
215
217
224
221
219
171
198
224
177
243
155
150
210
177
155
253
224
204
196
79
198
225
196
217
183
255
223
255
131
192
206
312
198
226
203
140
225
165
216
184
221
184
239
155
114
183
157
173
197
235
240
194
175
280
250
212
169
235
175
234
157
210
184
185
224
215
228
183
203
189
152
173
230
157
139
194
223
186
206
235
167
204
234
202
225
177
186
216
185
170
145
146
165
205
268
217
209
194
109
242
200
215
190
205
213
232
186
227
170
190
185
150
236
214
179
251
220
193
216
240
178
194
207
175
166
218
160
225
198
162
222
192
137
156
222
222
173
185
191
175
222
244
245
229
192
186
99
111
172
196
201
229
171
118
207
212
127
196
154
252
137
120
217
147
146
149
219
254
157
153
205
226
215
237
198
204
236
211
170
217
226
163
206
260
201
190
145
207
213
220
190
207
222
217
135
160
155
214
214
285
167
275
137
182
204
220
252
244
167
117
171
210
181
229
152
223
162
192
219
192
184
200
199
200
153
77
227
239
161
226
222
207
268
193
147
157
262
177
168
230
219
228
213
211
177
230
185
170
190
215
152
223
180
215
211
235
258
144
243
180
247
155
233
219
181
168
151
187
239
231
213
210
143
151
205
179
165
177
164
214
196
221
169
205
187
146
183
180
165
157
198
185
256
155
192
158
215
166
159
242
170
267
144
227
236
238
143
198
208
218
226
204
225
198
240
207
214
208
138
190
244
189
226
187
146
221
231
186
183
193
171
157
224
167
130
212
247
165
198
186
176
216
233
184
165
211
233
227
197
200
201
206
252
262
240
167
203
190
167
184
215
226
177
198
210
226
166
155
200
199
163
236
206
241
158
179
238
275
172
166
141
245
161
222
218
163
192
194
249
189
186
146
207
178
163
247
166
156
179
208
186
218
180
213
197
219
210
204
164
218
225
187
244
200
233
209
206
103
192
168
165
198
159
191
195
152
201
172
159
218
222
166
172
222
227
201
198
202
173
196
212
176
158
194
231
203
257
178
193
119
189
211
182
149
218
214
181
219
179
184
214
211
215
201
237
194
142
167
187
169
184
206
180
238
227
229
192
161
204
165
245
210
205
158
182
185
150
213
137
222
175
185
228
181
212
224
169
222
165
192
248
259
231
196
206
210
194
249
196
207
227
230
232
150
172
211
183
171
190
212
216
228
169
210
187
188
195
164
208
227
167
245
184
209
172
267
239
232
273
157
183
221
216
186
204
195
248
153
234
236
221
212
171
242
200
256
210
153
228
220
215
175
190
233
112
213
234
192
234
195
145
135
142
227
210
199
199
166
221
247
199
215
244
203
235
188
200
210
192
186
198
197
221
158
244
187
205
228
228
180
201
148
204
211
145
197
195
183
199
210
216
212
237
178
146
208
208
203
175
233
253
188
184
220
222
170
203
166
186
152
223
174
212
233
191
176
254
230
193
223
204
262
221
263
220
221
175
164
116
242
178
211
185
235
215
164
243
135
200
198
261
158
249
237
206
182
254
163
217
198
203
235
189
258
191
222
186
163
214
232
193
247
188
220
203
197
190
160
232
156
134
214
192
170
225
224
127
178
218
149
206
265
277
191
208
160
167
149
221
225
104
159
221
165
212
210
160
165
187
220
181
208
185
186
175
227
193
234
171
150
189
186
249
147
203
204
150
246
254
204
218
183
193
215
200
238
177
188
204
162
170
161
155
151
181
184
186
155
276
154
188
233
210
246
171
210
169
172
153
270
131
204
138
186
232
208
238
257
196
196
216
159
185
247
231
225
181
153
202
206
195
141
190
181
262
208
186
228
206
210
242
223
210
207
224
230
221
166
157
181
248
140
150
190
157
200
215
207
201
195
252
197
191
206
186
182
219
173
200
206
172
184
258
153
208
208
180
246
250
192
221
121
219
232
135
142
225
219
245
213
217
221
236
253
210
209
215
206
232
171
160
187
238
243
177
248
206
198
167
226
170
194
157
229
248
178
220
220
237
261
205
248
146
211
203
168
210
208
188
260
158
214
187
177
255
238
130
223
189
211
238
185
194
173
259
311
248
162
212
217
198
178
194
168
153
185
218
190
219
181
163
178
256
173
176
176
208
202
198
195
219
221
233
250
247
219
235
201
203
173
215
242
163
227
267
175
162
217
216
235
171
260
167
177
182
217
267
269
175
144
211
157
207
210
198
249
204
166
151
178
234
174
187
188
209
177
172
160
205
191
231
219
210
172
207
216
197
194
241
264
190
214
237
196
204
171
217
221
183
209
223
247
239
206
183
189
213
194
226
157
211
124
186
196
155
218
222
214
202
250
191
165
227
248
162
235
213
195
177
227
199
179
204
155
196
191
222
177
258
167
156
225
134
191
222
120
173
250
235
196
183
158
119
203
247
208
186
168
235
193
227
188
233
208
220
215
176
221
238
186
196
242
202
206
168
187
241
221
169
224
226
167
229
129
179
223
209
170
225
215
214
255
187
257
236
201
220
182
189
262
133
160
212
192
144
238
198
160
196
191
184
177
229
226
198
227
120
226
191
173
181
215
153
228
226
216
194
240
258
206
198
208
197
237
199
176
129
186
209
192
171
201
142
212
228
185
178
242
189
162
167
202
226
271
211
169
224
169
167
185
163
163
167
227
278
233
212
195
147
200
194
197
170
189
198
201
176
142
232
164
181
200
207
273
193
189
183
226
210
159
209
196
209
177
245
179
193
180
184
161
248
214
191
136
234
242
159
212
249
221
185
219
185
215
146
183
209
210
182
159
206
267
184
214
211
150
193
230
212
224
174
198
206
158
256
195
135
183
229
172
221
211
254
205
141
152
224
223
221
196
192
155
200
222
243
237
201
243
225
175
221
212
102
194
209
161
170
188
234
218
238
171
153
151
222
210
175
224
262
246
271
221
213
201
214
249
252
195
215
205
198
257
108
207
187
246
195
205
205
218
239
183
201
243
250
245
227
233
240
193
133
228
212
214
234
190
201
167
182
216
187
227
174
245
244
193
204
207
190
151
167
225
180
236
250
145
165
177
196
192
209
195
180
172
244
251
156
228
158
176
258
218
175
244
198
183
213
165
198
184
199
208
171
200
243
231
199
226
217
178
223
173
212
257
198
198
205
223
190
231
181
154
225
184
134
179
219
233
204
112
190
200
197
139
178
185
252
243
233
188
150
198
170
161
204
181
212
190
173
224
174
189
155
176
184
198
215
124
159
213
238
127
202
196
197
176
183
245
216
212
197
186
222
209
204
251
183
199
205
176
180
170
216
146
248
228
165
201
206
195
251
216
203
187
145
143
215
195
176
214
214
169
235
196
202
197
196
171
189
198
142
261
159
193
172
208
235
152
179
234
213
236
226
194
204
194
291
233
226
180
195
255
227
172
227
252
252
195
227
208
200
165
221
152
223
187
186
225
212
200
174
183
105
165
188
162
164
246
210
199
212
237
181
247
207
163
217
135
185
226
151
191
199
249
196
155
202
210
229
212
221
237
237
228
198
228
156
222
210
209
208
205
256
190
205
156
216
278
149
200
227
211
204
155
186
164
174
205
241
199
206
189
185
165
239
209
264
232
184
203
184
257
250
150
214
244
227
148
254
201
208
203
251
159
198
172
221
198
238
179
152
223
254
178
215
268
155
178
159
121
199
176
148
126
217
233
193
200
211
186
231
206
187
133
233
172
213
185
215
207
148
185
203
211
258
170
185
144
230
154
187
175
176
195
210
200
254
267
205
211
212
185
218
233
170
185
291
199
210
224
226
165
213
219
182
241
201
202
195
251
202
136
248
224
185
179
209
153
139
168
195
238
155
222
155
235
189
200
167
244
190
194
209
160
269
172
212
209
196
201
185
181
232
184
165
205
261
159
185
208
235
214
134
158
169
213
186
156
174
252
254
198
214
170
231
217
177
132
192
144
242
212
196
173
165
223
228
206
234
208
220
224
175
203
220
264
197
237
203
186
177
206
176
229
162
151
198
261
228
182
157
210
188
214
168
169
168
231
180
249
215
213
234
234
135
202
225
91
250
152
224
242
174
167
198
193
203
164
205
229
221
208
185
228
193
174
240
200
158
248
197
195
228
221
166
208
155
162
231
200
163
145
195
247
179
178
194
205
149
272
199
196
183
225
162
246
175
189
161
226
230
234
201
214
176
159
237
247
234
201
225
266
169
201
219
206
211
181
237
247
224
216
185
176
223
219
251
214
180
204
198
201
245
258
184
196
250
203
171
241
199
163
184
194
211
183
235
185
206
217
167
181
143
191
215
219
249
186
148
160
170
146
247
193
209
178
185
203
247
170
206
186
198
242
122
203
214
262
204
203
208
240
169
195
169
183
194
174
206
188
220
243
187
163
161
221
208
194
236
233
259
126
154
216
174
169
231
183
219
203
172
205
235
210
173
199
216
189
150
206
215
211
175
169
206
175
175
191
213
252
113
177
235
178
215
156
112
239
238
226
177
247
196
226
207
171
187
238
190
146
228
225
171
175
242
269
223
188
228
169
211
132
173
212
222
197
208
185
225
211
189
220
250
205
209
256
189
197
222
173
258
204
243
211
175
178
228
127
192
204
205
196
167
223
225
265
248
173
215
183
166
207
199
120
207
196
197
181
219
288
208
204
155
222
189
204
202
180
201
216
177
162
205
221
273
172
232
169
152
236
192
170
218
168
135
252
243
201
213
167
224
214
214
195
179
267
197
204
184
222
153
228
163
209
203
205
156
215
250
174
203
231
244
221
182
177
200
189
189
207
205
232
237
209
206
97
152
252
173
221
198
185
187
159
204
224
210
242
234
209
177
194
202
201
159
200
216
155
189
203
187
227
180
176
229
171
198
217
228
209
185
156
175
247
223
217
189
240
154
259
212
130
239
211
204
263
204
161
231
224
194
144
153
178
248
182
153
203
118
176
220
229
221
228
210
249
213
128
216
251
199
193
172
231
268
240
246
193
194
212
229
212
245
203
233
156
152
204
207
139
231
197
244
245
210
185
226
254
190
191
210
187
207
188
143
215
240
250
190
224
222
208
165
187
209
179
231
187
183
201
175
210
203
202
182
114
247
225
180
173
155
189
184
133
207
217
168
149
186
119
181
233
182
171
226
196
211
204
197
188
165
177
155
196
149
233
188
203
205
263
242
217
202
264
224
196
218
258
165
226
201
240
183
209
199
237
229
247
212
227
197
206
210
216
209
251
227
218
251
201
230
189
247
131
217
222
191
151
164
147
212
189
159
183
149
223
239
231
156
192
206
264
229
164
213
234
242
269
136
245
199
175
228
230
208
205
165
214
219
207
234
230
197
164
180
196
238
225
193
257
263
210
168
220
198
195
188
202
278
228
182
130
190
171
96
198
189
162
209
196
227
169
222
238
236
149
159
258
210
219
223
206
211
196
210
190
190
194
171
184
193
148
137
184
182
165
197
143
220
185
134
216
235
202
146
182
171
189
227
189
185
211
211
201
199
176
177
142
261
217
220
162
198
206
240
227
185
231
223
192
218
182
222
171
215
265
192
172
164
212
187
226
196
228
164
235
219
156
153
255
233
221
189
185
201
246
231
260
170
230
184
194
233
224
195
219
201
183
184
186
133
216
192
247
206
150
173
185
204
211
218
211
165
179
129
229
179
244
203
217
269
250
225
130
167
152
174
261
173
202
250
161
255
240
132
220
210
235
204
201
172
188
126
194
240
227
240
251
138
203
194
184
238
236
182
176
198
190
239
145
167
201
160
173
208
187
180
157
204
188
156
245
212
235
234
181
213
213
215
246
181
232
204
184
195
153
211
165
194
203
139
127
234
272
184
218
182
199
181
165
252
183
206
270
151
195
241
162
178
262
186
200
137
203
174
184
210
231
267
220
158
155
239
215
202
232
216
173
180
191
167
204
169
155
244
198
237
200
220
252
248
188
193
174
188
202
215
158
148
214
272
215
219
158
168
209
157
219
196
236
239
183
208
194
188
196
224
222
236
269
174
234
216
166
244
228
178
237
228
220
236
208
250
164
164
189
205
201
189
248
203
213
234
228
195
166
264
165
226
162
189
191
200
225
234
191
270
236
220
202
247
223
220
209
177
160
178
124
244
165
194
214
226
214
191
202
204
205
212
265
246
204
209
226
183
184
242
249
198
251
174
218
178
231
164
187
179
242
147
174
242
157
248
250
173
228
163
198
162
237
162
171
203
131
210
185
187
202
225
227
217
207
221
243
232
222
220
135
133
211
243
228
246
184
162
178
209
174
139
199
235
209
107
190
166
187
191
237
198
145
137
141
262
191
163
188
233
229
251
238
202
199
170
214
166
234
184
160
167
199
266
211
198
225
256
209
288
184
184
245
147
162
173
175
208
249
170
224
209
193
206
232
211
196
182
203
219
192
229
174
199
226
166
263
177
238
211
199
216
158
246
182
229
205
161
195
190
214
259
148
212
160
218
150
199
209
130
194
170
196
215
181
164
190
147
177
202
212
187
174
178
171
158
261
214
198
199
170
248
222
246
224
257
205
224
259
229
248
181
240
204
200
187
240
207
218
216
223
224
201
205
206
176
169
175
160
207
215
207
292
207
144
182
208
259
206
220
199
198
163
217
265
172
214
213
189
187
239
260
102
232
219
172
224
213
161
195
217
134
271
127
239
133
240
169
176
177
207
228
200
232
229
210
201
166
228
223
172
225
204
163
249
198
220
152
137
208
202
233
158
230
124
193
205
178
216
189
176
240
220
245
212
220
212
204
223
221
209
153
174
157
215
211
189
212
201
219
217
183
211
151
234
220
237
233
200
171
229
198
267
234
230
166
202
222
150
208
226
149
185
165
127
198
195
240
186
203
193
229
218
129
145
239
211
167
206
195
225
149
183
189
136
214
194
177
201
206
190
238
230
245
243
160
192
206
179
181
250
226
186
187
146
165
133
197
201
249
190
226
140
179
235
136
166
186
157
233
177
204
231
184
253
204
199
244
145
188
205
166
185
238
235
196
210
147
197
180
231
224
240
164
249
202
152
229
161
205
215
206
206
196
186
202
154
175
184
241
184
200
183
198
200
261
281
179
231
222
168
211
210
197
192
159
155
261
262
224
188
226
248
200
245
200
175
217
187
137
139
212
251
178
139
266
221
192
176
164
199
224
160
205
197
232
210
214
211
210
220
221
242
155
168
186
239
242
235
196
186
303
209
204
252
221
242
224
179
260
175
277
270
276
248
199
152
208
216
262
177
175
226
243
190
168
215
150
161
158
205
186
202
229
252
182
180
209
215
127
179
223
227
258
179
207
168
246
181
228
171
199
190
207
211
188
211
108
212
202
248
220
141
213
281
219
204
255
205
225
168
261
170
137
165
110
166
207
211
173
202
186
165
199
235
243
211
170
153
207
233
149
175
152
195
171
168
216
212
210
195
169
226
137
287
172
156
188
246
221
134
230
200
183
190
228
210
164
231
261
215
152
232
181
189
189
175
202
248
208
262
161
244
302
249
210
220
233
127
213
185
211
258
233
224
158
219
236
124
227
212
174
209
247
199
185
188
173
229
180
225
239
272
166
162
210
266
200
155
199
206
199
247
209
268
212
153
168
206
250
154
135
176
242
227
197
248
139
205
193
244
216
164
168
143
208
252
178
175
207
207
192
215
251
180
151
247
220
217
209
185
169
198
172
148
176
209
193
205
215
237
196
200
235
201
215
233
204
206
138
189
175
224
204
229
185
177
206
132
248
179
178
187
223
253
187
186
221
116
170
211
173
200
156
221
231
231
174
239
185
151
199
170
172
178
225
225
249
206
223
199
222
134
190
148
205
214
254
161
223
196
194
193
193
185
229
186
209
150
232
218
137
223
200
173
140
213
245
235
128
196
236
172
177
220
195
195
257
131
200
252
212
134
247
229
206
134
208
232
156
217
173
185
232
178
161
208
212
151
210
174
207
199
240
152
183
200
182
190
153
217
115
203
157
207
200
183
239
159
213
221
182
156
198
183
216
165
271
210
217
161
197
202
200
230
116
216
182
201
238
204
165
214
232
194
201
149
177
203
208
202
217
224
210
152
225
192
201
197
227
151
203
278
242
222
220
148
209
190
212
237
262
156
181
242
218
205
175
275
242
213
188
196
219
168
195
265
188
213
187
128
135
197
222
276
206
166
254
107
194
276
249
225
190
225
207
262
198
180
160
232
204
187
145
180
204
165
189
209
201
198
198
226
197
157
153
157
215
99
226
202
254
253
174
160
178
191
178
214
199
192
210
167
201
244
158
216
242
206
177
256
228
210
265
210
267
225
234
243
185
180
158
186
215
155
191
216
232
202
141
206
151
228
126
241
209
144
152
164
160
129
153
172
191
148
217
203
212
116
190
195
259
241
264
224
155
140
227
236
192
268
227
270
146
229
143
242
207
200
193
191
228
169
221
288
218
186
125
177
159
159
197
222
177
155
255
184
228
207
166
209
226
222
192
219
159
193
243
178
166
151
204
172
196
219
184
226
201
206
247
242
154
223
186
216
212
228
192
208
215
198
215
213
142
237
197
135
197
192
236
172
224
212
189
270
223
226
267
172
218
233
205
259
181
212
152
198
123
186
215
188
207
163
124
282
260
251
214
184
216
194
208
92
212
187
205
154
219
248
236
246
192
144
216
270
207
167
137
139
231
221
207
198
169
158
243
210
234
214
237
228
223
219
211
223
251
195
249
171
167
264
229
209
160
229
261
92
206
164
207
229
225
188
249
180
197
245
191
243
191
252
206
196
222
220
250
178
230
211
149
203
229
148
236
143
185
200
170
177
174
140
145
206
222
230
232
139
170
230
217
222
241
204
202
222
207
271
215
186
193
197
224
177
210
210
185
247
216
133
105
220
182
245
205
191
185
206
201
180
208
220
187
152
225
180
115
146
197
237
248
140
215
248
240
208
188
193
190
168
203
187
167
203
212
204
235
233
218
217
142
131
197
216
260
196
161
162
237
230
207
236
192
186
208
217
211
223
222
222
172
174
232
186
184
178
256
172
150
200
222
148
170
234
192
200
129
221
212
229
180
250
189
167
197
162
167
213
252
169
207
190
213
138
214
207
237
173
193
207
165
174
208
217
238
271
141
155
194
194
260
183
269
210
191
144
191
210
189
194
188
157
181
170
214
195
199
147
219
209
144
175
199
263
218
202
165
143
182
233
183
258
189
235
164
127
222
217
210
133
226
174
168
96
216
190
264
222
181
127
228
188
193
199
147
142
179
229
185
180
163
220
198
238
187
199
250
194
196
200
252
183
234
149
244
138
191
151
202
212
247
209
230
221
235
241
230
224
212
226
215
249
179
221
252
202
178
219
167
216
162
227
152
219
215
167
223
230
144
132
199
208
277
231
193
196
205
249
229
213
188
152
208
167
244
200
198
200
225
173
195
254
212
253
150
247
149
151
242
211
235
166
147
215
182
215
234
131
208
167
225
203
174
200
151
152
211
169
161
207
154
179
185
184
243
214
216
196
167
157
178
235
175
124
226
210
247
191
208
163
222
205
147
206
158
197
193
181
179
270
169
186
214
193
134
232
141
271
158
178
223
223
175
195
133
151
176
158
207
211
160
215
206
170
130
173
201
227
155
270
237
260
172
185
183
192
191
221
172
243
209
197
205
234
269
175
238
235
181
169
200
206
174
221
193
207
162
184
229
244
166
214
176
227
226
145
173
243
213
188
206
181
230
236
196
167
218
248
203
181
156
182
183
161
196
220
139
155
141
158
220
183
128
196
244
229
188
252
216
200
196
200
242
116
196
244
239
223
189
165
261
227
244
234
171
206
213
179
196
174
183
200
224
213
225
281
206
150
173
205
213
179
181
242
165
254
234
218
211
193
247
198
231
157
253
261
250
168
249
202
172
238
181
258
177
224
187
181
248
187
191
147
189
191
267
238
252
159
115
156
212
225
180
223
176
255
182
199
266
198
201
250
212
169
197
194
214
262
156
182
254
189
220
200
231
211
155
198
193
234
210
127
217
194
185
225
189
183
191
240
197
159
226
171
164
170
150
204
197
225
157
198
199
254
232
212
165
173
192
191
134
202
201
254
167
197
171
223
211
167
229
224
251
169
241
229
229
189
214
174
183
253
222
178
170
177
193
208
218
132
142
207
197
205
244
207
289
225
183
257
234
194
190
212
202
201
189
219
242
207
220
195
179
193
237
219
136
156
211
173
244
234
218
217
195
188
174
201
221
220
143
251
197
264
226
273
190
145
231
166
169
230
235
206
143
186
187
166
221
274
187
201
199
206
168
198
227
139
228
172
164
163
108
265
220
186
164
232
166
265
207
201
238
154
162
250
185
174
191
184
217
178
219
202
170
173
206
242
207
147
256
187
165
159
197
167
196
255
252
184
234
173
204
193
161
191
199
198
235
194
164
217
188
211
218
173
202
200
256
181
186
209
162
135
173
146
115
152
120
235
157
171
260
233
280
171
239
176
170
188
198
221
263
221
145
223
204
171
177
184
164
197
190
176
217
238
202
202
226
191
200
149
176
212
215
123
209
165
254
231
208
170
173
187
234
224
191
162
244
255
223
226
168
166
201
166
197
214
178
249
194
224
213
221
191
225
176
222
190
163
211
209
183
214
126
228
194
161
229
186
209
208
239
178
163
162
252
204
227
214
206
159
240
254
213
183
274
183
220
117
165
214
152
199
207
183
198
177
182
192
228
261
204
227
211
240
238
244
182
228
213
202
211
228
228
210
222
174
241
242
221
246
174
175
204
174
216
239
144
142
190
241
174
202
230
195
238
142
202
199
153
176
221
157
192
136
214
197
132
155
218
245
200
192
232
144
233
201
141
243
214
179
186
227
252
146
169
179
182
217
198
220
202
157
166
213
194
188
262
178
191
213
261
189
208
183
177
235
168
182
217
163
210
227
175
197
118
206
190
201
193
194
146
242
241
222
226
231
198
283
259
214
208
185
195
266
187
221
219
160
257
152
179
169
225
177
182
128
190
193
179
195
244
165
159
251
159
235
240
139
246
128
163
270
198
209
211
203
234
247
233
193
244
203
234
183
194
218
218
164
226
199
181
136
203
169
232
209
219
215
219
244
199
183
191
176
203
151
187
180
219
220
208
200
200
155
171
174
201
240
143
246
191
221
218
177
178
171
194
212
247
223
201
155
159
242
184
202
170
168
151
204
204
213
218
158
186
220
175
243
157
196
224
239
109
221
225
249
213
229
195
237
179
157
247
156
195
188
184
194
182
218
134
237
183
202
229
257
178
194
195
246
209
161
169
130
212
130
206
205
165
203
178
188
226
161
186
192
168
206
155
223
168
208
177
195
189
228
159
239
180
210
179
159
185
172
216
215
214
152
213
285
221
236
198
152
174
209
165
217
234
200
205
135
217
249
185
212
242
196
236
165
153
193
237
205
207
215
200
216
160
210
186
213
250
174
161
244
247
219
192
158
185
202
241
104
154
195
215
187
194
254
209
221
208
201
135
163
238
192
196
186
198
195
199
177
206
194
261
220
261
171
218
208
208
147
153
236
200
200
140
170
185
198
202
191
242
211
149
256
270
171
201
258
272
229
257
170
202
207
216
204
151
245
256
221
206
204
149
189
226
230
181
205
239
224
165
169
181
225
230
189
172
260
225
212
167
183
165
227
227
238
199
180
254
183
212
207
202
205
158
173
140
261
206
229
215
175
197
248
189
166
257
169
201
152
250
178
173
259
163
184
218
178
188
193
170
202
200
197
198
210
203
149
168
172
216
220
189
154
117
171
218
235
208
251
176
249
159
291
163
233
192
294
223
153
172
220
225
145
180
152
214
200
190
253
224
192
169
213
196
190
165
194
226
223
168
229
101
223
217
231
167
202
230
177
188
205
234
230
168
207
205
228
261
209
170
155
220
213
186
164
206
236
240
194
208
245
187
250
168
197
144
139
195
225
176
230
259
216
202
159
232
234
229
159
220
230
209
170
178
164
261
177
173
249
198
118
262
230
127
209
220
148
232
177
165
127
166
188
231
170
205
189
270
200
232
193
208
205
214
230
231
189
110
218
206
230
216
212
143
173
259
193
131
225
145
208
173
189
208
171
278
254
168
183
179
186
218
226
200
222
207
226
198
138
245
230
186
237
267
210
218
211
206
151
218
172
198
191
205
191
223
244
174
195
230
171
180
140
202
229
228
161
186
210
142
285
162
221
171
229
152
180
249
231
151
181
253
253
179
166
244
237
199
240
195
143
206
242
155
197
195
186
262
98
199
149
169
234
107
176
228
227
195
220
176
182
224
215
188
179
108
222
186
229
174
209
172
175
121
240
227
238
159
250
201
139
243
254
166
172
188
213
181
174
106
185
219
173
133
268
207
233
147
222
162
278
192
124
206
252
160
228
139
199
216
191
257
171
205
273
198
214
175
205
248
299
202
243
212
208
198
167
190
168
211
274
197
155
174
215
224
184
213
224
220
209
218
254
189
211
177
217
235
287
219
254
230
249
211
226
234
236
215
224
193
201
190
240
209
136
169
250
218
200
205
244
191
248
210
225
228
186
219
225
215
245
229
232
162
258
201
187
195
214
167
167
174
179
190
212
150
224
194
156
236
232
165
191
204
194
151
183
240
218
233
196
169
169
267
283
148
240
261
196
248
175
247
198
186
198
152
232
176
186
211
210
223
205
183
208
213
139
205
161
215
182
207
191
155
112
193
165
207
223
192
224
236
222
233
279
222
265
153
234
249
149
210
133
121
254
280
256
155
173
271
224
221
196
240
198
212
249
150
202
235
189
222
210
169
172
151
192
215
191
190
169
188
209
160
195
179
193
163
169
165
198
221
263
160
155
211
206
163
220
220
194
220
171
197
182
156
211
202
228
206
209
194
183
197
231
202
210
251
213
275
145
237
186
217
242
214
201
252
169
195
204
181
210
197
135
103
162
166
180
146
162
205
237
217
157
166
195
124
200
169
198
162
203
186
151
211
225
244
235
171
128
148
196
163
147
229
217
196
143
127
230
217
207
255
182
216
175
209
230
123
181
226
183
152
201
146
192
281
216
219
248
164
142
224
192
143
162
188
250
228
222
211
193
245
221
150
160
157
235
190
209
159
135
238
175
158
218
194
227
220
129
218
201
139
247
208
221
212
165
267
190
218
208
225
209
178
175
149
170
190
227
153
254
205
215
224
183
243
165
170
206
186
132
223
177
207
165
213
242
187
203
227
183
225
194
148
173
184
187
186
147
163
180
183
155
212
164
224
153
219
164
135
174
153
128
170
202
226
272
172
241
232
199
174
226
175
202
167
217
221
235
225
167
115
167
172
220
235
244
140
228
226
209
252
233
151
208
152
156
217
230
167
144
152
171
243
184
214
166
233
141
186
179
228
203
191
173
189
208
161
207
143
193
194
219
144
167
202
190
229
196
207
174
199
223
201
215
177
233
160
208
202
179
203
174
203
195
180
244
164
190
143
204
202
180
146
139
256
241
129
157
167
200
205
178
169
236
205
273
267
201
116
207
168
156
213
238
225
158
124
225
242
206
213
213
194
156
236
192
182
185
239
210
184
171
238
201
175
246
176
210
281
178
235
209
223
216
175
218
194
171
201
200
225
165
234
211
180
211
191
163
146
233
206
229
188
247
205
209
266
248
199
274
200
197
260
216
236
181
219
194
202
233
203
159
183
220
252
171
209
213
231
130
219
187
197
199
201
208
278
207
229
162
162
215
176
185
245
133
183
207
205
207
207
207
157
141
208
227
248
226
242
168
199
176
206
200
204
182
206
213
183
226
176
169
152
223
223
195
214
245
211
222
203
189
216
171
172
237
203
201
203
163
183
189
149
249
202
196
166
196
184
197
198
235
219
291
156
203
161
209
171
176
136
167
244
160
213
252
210
232
212
217
225
236
171
203
224
250
199
199
187
176
240
228
139
184
243
194
216
184
184
199
238
229
214
224
160
248
232
249
214
200
205
110
192
184
221
131
177
194
221
284
266
191
185
206
212
121
232
175
206
147
191
243
159
171
225
223
191
255
153
168
153
228
243
172
209
204
168
200
171
158
186
181
179
204
190
198
191
223
222
164
180
158
186
228
265
150
142
178
254
192
191
203
212
193
138
220
173
166
266
189
200
159
183
153
215
240
156
179
189
226
231
244
221
193
214
148
198
170
234
157
208
195
197
182
167
204
131
186
256
189
188
173
190
213
197
205
196
162
196
214
180
152
228
257
168
210
168
247
270
231
223
222
185
205
137
170
266
209
142
149
194
185
220
195
174
171
160
171
231
198
179
234
220
181
216
193
164
173
180
194
188
237
203
179
176
179
163
264
176
142
205
168
187
197
151
192
148
177
263
261
199
222
164
167
204
223
189
191
163
253
238
209
195
212
217
209
170
218
227
196
175
215
240
189
203
259
189
209
202
166
214
151
113
144
210
198
177
215
178
185
173
190
233
173
192
196
148
214
236
194
195
195
125
239
198
190
232
177
191
209
171
229
204
199
177
225
158
199
250
203
181
185
211
209
168
193
202
221
229
233
233
225
236
181
164
186
209
233
186
82
180
260
235
200
162
212
182
219
202
243
206
206
250
229
211
195
178
216
219
170
198
189
198
191
230
199
244
220
176
163
157
188
154
221
209
245
176
188
256
221
141
225
233
156
224
221
233
198
209
165
208
193
170
218
226
234
252
171
194
228
201
244
188
214
264
210
159
219
215
194
210
210
206
274
204
211
168
218
239
242
140
174
198
196
244
197
236
180
174
256
202
199
251
266
166
175
236
143
229
146
234
204
189
109
203
224
246
237
237
249
271
205
200
168
216
174
260
264
215
239
171
196
166
112
211
224
223
224
182
239
228
267
141
193
228
204
201
244
221
190
223
120
217
205
255
202
222
189
224
184
233
212
200
187
197
212
222
147
163
221
211
166
207
239
240
217
228
202
187
223
193
233
225
205
202
253
210
93
222
200
194
203
234
184
243
194
291
188
242
220
139
185
223
130
202
238
190
221
218
184
214
234
220
247
269
185
219
230
167
190
177
228
173
152
180
178
216
209
169
255
188
155
240
132
234
243
198
232
189
129
230
193
211
192
204
215
261
166
249
217
199
186
148
232
184
199
202
238
227
186
163
233
198
209
137
118
157
202
229
173
180
175
142
157
207
222
198
224
263
226
166
241
186
222
161
233
207
216
203
145
208
171
244
168
215
203
214
145
219
196
159
206
178
152
223
267
246
228
178
186
219
231
179
238
234
200
243
189
173
214
214
216
213
200
132
190
138
230
211
236
259
211
201
115
189
200
219
196
163
213
187
222
255
175
250
196
188
185
215
191
170
188
247
184
222
204
202
161
215
234
183
259
215
166
179
250
222
204
170
202
178
137
194
175
208
200
181
239
232
222
183
181
208
174
211
181
148
191
218
170
176
140
236
205
240
176
218
159
213
231
140
185
196
215
214
209
190
210
229
222
162
189
224
237
216
145
254
191
141
271
168
194
167
223
211
250
205
220
176
157
136
236
136
242
223
234
188
187
183
149
270
172
169
219
198
229
219
230
237
180
152
242
191
217
193
223
164
212
185
220
214
173
123
166
201
226
202
237
240
239
197
190
235
184
204
186
174
227
242
205
251
182
162
196
241
197
190
213
238
124
160
213
218
194
162
205
227
192
211
254
271
167
151
168
163
210
197
222
200
266
193
165
213
161
215
203
196
161
199
211
123
172
156
199
178
172
142
185
157
193
242
136
220
225
144
226
241
180
173
238
217
245
208
193
226
195
235
192
214
183
163
263
215
186
267
260
164
235
197
157
240
253
211
211
147
198
182
204
203
193
200
170
171
151
265
214
206
204
124
208
232
224
210
266
191
223
132
233
185
178
251
193
165
184
248
242
230
237
221
213
257
201
212
140
180
108
213
195
157
226
199
180
194
143
172
160
161
161
189
210
246
133
155
255
261
135
189
179
188
183
150
203
233
195
162
162
208
234
222
203
200
235
122
217
208
192
200
267
233
134
180
195
229
206
167
243
130
200
131
253
198
235
190
227
263
193
164
195
204
142
204
138
232
191
218
195
188
144
151
191
211
197
224
233
236
161
191
167
198
246
216
175
243
180
177
218
178
211
265
190
236
193
212
201
184
236
195
197
210
101
188
242
245
205
222
224
215
228
178
127
279
137
235
255
235
208
209
191
243
272
152
165
200
213
226
153
186
161
201
180
179
197
268
192
209
192
180
181
186
216
212
156
255
211
196
222
231
190
168
225
201
163
227
194
178
194
174
168
232
234
208
189
201
197
119
165
233
151
210
229
212
218
204
181
219
168
249
200
240
168
184
223
215
252
145
193
189
173
167
221
174
199
186
193
236
183
163
198
174
161
158
234
255
192
211
197
151
215
196
201
144
213
154
225
184
178
177
238
227
196
179
184
164
219
204
236
199
232
190
185
249
211
202
214
185
249
198
247
198
181
206
189
205
221
217
227
177
220
243
191
204
234
160
178
166
202
183
198
217
195
246
152
178
123
158
198
219
136
204
183
174
198
167
255
160
130
247
238
227
177
250
238
216
191
194
145
236
206
205
223
203
202
150
163
141
135
255
148
235
203
217
175
214
184
210
250
197
236
232
204
282
192
144
185
179
230
209
197
252
261
189
219
226
254
218
143
163
173
214
178
187
244
206
154
234
237
185
262
194
211
212
148
148
258
239
281
200
214
172
226
171
137
169
169
247
158
233
200
186
228
168
175
179
178
241
240
194
173
199
201
113
161
193
198
218
203
193
260
176
228
155
192
158
146
216
120
240
192
199
239
166
166
171
169
209
169
200
93
192
224
212
230
220
209
184
185
207
182
205
255
194
189
194
146
223
280
217
153
262
170
228
221
218
187
213
206
240
159
245
139
171
250
222
192
229
217
202
221
210
233
191
181
225
187
164
195
133
210
283
161
156
220
179
220
250
200
225
223
223
193
153
186
214
163
267
206
174
179
188
232
188
164
210
229
241
189
164
226
196
183
195
134
200
161
183
167
197
231
225
212
205
181
171
176
190
164
189
197
167
204
209
200
180
213
191
197
164
189
171
224
219
209
163
136
213
236
186
206
170
228
214
164
207
227
206
127
186
125
202
191
217
138
226
181
188
204
251
249
192
250
251
243
184
198
153
213
186
194
186
259
203
227
238
230
210
208
204
234
205
205
190
246
224
252
191
230
174
202
161
205
236
247
206
210
169
201
246
249
222
194
192
190
222
201
140
197
177
229
156
198
227
153
203
203
217
139
199
172
263
199
205
185
182
196
146
167
164
191
136
190
248
173
271
149
251
149
190
232
263
188
250
247
205
164
208
180
173
170
187
159
137
256
183
179
180
181
200
228
138
152
214
195
237
198
209
219
189
214
164
234
132
176
256
177
224
250
198
229
216
142
180
201
259
220
244
205
171
219
207
203
155
233
245
180
174
197
221
193
155
167
211
207
136
240
166
242
155
208
201
183
149
188
201
208
207
176
159
187
220
141
247
196
171
153
225
188
221
211
156
193
143
255
251
219
200
204
199
213
190
213
233
168
245
288
230
188
167
226
179
174
207
208
177
174
243
206
185
170
214
205
283
220
165
187
189
142
190
236
202
279
220
211
173
180
215
165
181
204
280
207
205
170
208
180
162
230
224
169
175
261
167
246
239
170
108
181
189
198
221
239
201
151
155
144
222
147
213
191
252
197
168
185
205
210
198
195
153
248
210
125
189
215
166
244
246
232
186
200
229
144
212
191
194
200
218
202
201
205
174
143
214
136
148
228
167
206
243
219
199
158
163
227
206
205
188
210
209
207
150
190
198
191
185
188
235
237
157
193
190
187
231
129
217
237
161
226
145
241
163
175
169
207
234
239
259
209
234
196
167
241
195
205
200
214
156
175
266
200
206
200
269
224
262
213
252
112
214
216
202
203
110
243
255
218
180
198
208
229
248
150
248
182
169
201
184
243
215
184
199
248
189
200
189
173
186
212
168
229
164
223
209
194
200
273
216
183
205
146
205
194
215
225
174
202
216
199
203
162
162
202
138
219
237
240
185
241
172
188
192
247
238
206
173
196
186
162
178
233
203
185
229
200
150
129
179
219
233
212
202
208
186
218
214
205
154
215
212
209
239
154
253
280
176
218
213
206
174
230
167
186
223
213
148
208
107
171
220
229
227
198
190
206
126
213
194
203
204
166
168
270
203
234
219
166
135
220
224
259
172
231
66
208
203
135
194
214
209
209
236
99
223
229
240
212
198
185
211
163
160
204
234
165
202
242
234
227
235
204
204
207
182
232
193
255
196
174
252
190
177
211
186
156
207
169
166
200
150
227
222
256
240
217
217
198
245
180
174
224
184
176
171
166
219
215
230
209
241
188
130
233
228
200
179
206
236
197
141
224
205
213
213
197
183
191
157
183
237
147
203
189
241
230
170
169
234
165
194
252
151
201
194
111
233
188
224
193
220
180
232
184
123
191
152
169
238
160
173
156
205
204
203
177
130
216
204
212
126
249
209
140
175
259
236
222
192
185
189
213
202
226
164
234
229
172
226
190
183
207
215
176
204
202
201
214
231
133
189
232
152
224
284
219
255
176
181
198
194
158
174
203
249
195
251
124
177
160
252
160
255
247
199
145
203
192
198
191
249
208
231
213
166
232
190
181
217
218
247
221
230
175
197
240
199
146
181
197
222
143
251
190
255
187
206
248
203
175
219
210
203
143
222
145
236
222
144
115
182
216
167
139
259
243
196
188
183
147
152
241
228
211
155
193
231
201
133
260
266
205
256
254
268
168
167
275
213
228
195
199
209
190
138
198
244
257
232
162
60
197
199
239
210
218
212
203
230
164
229
163
210
192
233
148
179
225
268
253
229
242
151
215
191
217
190
165
132
216
188
258
248
191
219
208
171
202
204
244
243
192
222
167
197
202
211
189
175
235
183
181
200
224
139
220
178
225
268
225
167
156
222
167
175
195
159
183
175
236
214
201
198
192
186
165
171
242
199
179
231
178
181
132
188
258
185
218
231
203
152
163
169
180
196
185
177
147
189
210
194
232
197
206
148
221
209
256
179
185
154
195
175
228
237
172
161
233
183
215
153
193
174
182
231
199
138
200
209
167
150
122
205
211
158
241
175
215
201
114
158
206
181
163
159
232
199
230
207
235
193
236
140
209
217
225
187
231
222
213
201
194
194
165
243
214
174
229
144
174
141
224
129
220
221
226
185
207
270
178
210
188
251
198
230
188
180
196
197
200
186
172
180
234
171
217
159
159
160
187
258
211
236
174
159
218
159
196
278
207
234
182
226
225
181
123
202
220
266
216
187
146
155
167
239
223
263
214
229
190
185
129
217
271
208
189
180
214
186
198
175
223
164
184
197
194
169
236
203
173
241
197
212
213
215
201
253
208
180
197
179
164
255
194
228
210
199
198
185
209
149
233
185
222
243
225
227
189
193
199
248
205
156
219
210
232
188
202
178
221
165
178
182
195
200
206
254
247
143
210
204
177
197
193
174
160
277
228
250
152
223
210
169
244
170
185
220
173
188
210
196
286
179
189
236
266
188
209
235
225
251
186
217
208
171
209
195
136
217
240
219
239
166
173
135
171
172
246
193
195
180
275
211
235
181
208
190
226
179
203
160
244
260
168
212
155
177
190
223
188
155
200
197
214
249
228
154
212
219
161
215
220
220
227
200
211
211
246
251
115
186
216
246
214
155
168
235
214
227
223
190
186
170
203
198
172
128
213
224
166
215
241
214
207
178
182
214
197
158
165
237
206
173
222
194
242
235
163
223
213
194
208
155
162
177
262
272
167
197
169
244
211
206
183
209
226
196
195
224
215
189
217
255
147
248
233
181
242
136
87
250
219
212
227
228
143
183
210
201
169
220
198
153
175
173
221
257
214
155
182
220
235
285
159
196
258
176
154
256
242
155
218
193
217
206
205
208
243
178
203
156
238
182
187
262
188
208
221
278
190
276
237
214
185
203
184
214
246
162
246
218
227
200
241
216
194
202
215
181
167
213
206
263
197
196
219
121
157
212
208
181
176
179
149
224
200
201
137
216
225
210
207
251
173
183
180
179
168
203
141
217
242
211
177
208
180
208
165
212
207
205
156
154
194
190
215
234
211
203
186
223
192
203
264
207
215
193
208
164
180
239
184
178
219
185
178
150
244
248
163
228
168
226
206
158
200
200
190
181
222
215
178
168
223
186
213
156
172
171
183
173
222
240
211
230
177
194
205
212
200
203
172
179
203
212
215
154
210
206
166
201
154
198
148
193
243
226
193
241
212
269
168
193
200
189
205
230
203
203
203
158
186
225
275
220
173
153
161
189
214
186
128
201
206
202
165
238
197
157
171
226
164
216
164
193
191
175
166
167
173
170
182
212
138
224
169
190
175
215
278
121
192
183
227
177
248
204
224
235
196
225
195
221
213
258
193
201
187
144
177
209
180
190
210
238
272
205
156
146
235
230
163
199
204
198
149
223
171
182
203
182
144
146
229
248
156
214
156
119
209
196
144
239
178
189
206
248
237
228
195
203
239
163
226
186
194
206
198
193
139
210
184
227
197
250
212
196
170
209
248
155
207
184
240
148
190
183
141
182
203
220
167
247
241
243
186
239
192
211
243
190
141
134
188
155
199
199
226
225
198
189
167
187
203
167
181
173
225
213
199
166
188
230
237
178
173
219
209
175
154
260
219
208
211
236
153
215
186
166
150
268
151
134
201
212
204
211
174
242
192
190
275
304
247
223
139
145
200
199
177
192
167
269
171
218
134
259
186
210
203
183
149
187
159
148
268
159
124
166
181
199
221
212
198
192
209
200
195
178
228
199
171
191
184
243
187
164
254
258
282
209
212
211
194
238
168
221
246
204
235
145
188
262
175
163
190
217
174
162
164
175
225
160
234
235
203
183
218
206
188
234
219
171
131
222
149
164
132
141
164
94
176
199
209
149
238
201
184
190
268
201
224
234
247
193
217
174
157
132
223
200
225
231
216
229
200
246
133
202
185
267
191
213
192
199
181
159
191
247
257
192
202
190
201
153
174
234
197
207
185
234
187
239
221
155
150
157
216
240
197
147
225
185
193
179
265
212
147
150
183
249
234
124
183
226
172
158
259
173
211
153
200
195
227
140
178
215
161
185
247
235
216
236
181
210
181
182
206
260
135
198
230
166
231
172
167
202
227
221
243
163
170
204
226
124
249
242
185
219
224
239
230
193
197
161
260
222
219
200
203
156
200
199
183
233
199
201
234
159
177
228
204
245
168
219
203
176
207
168
194
220
218
214
192
180
188
181
247
202
218
184
222
160
176
207
161
150
175
191
210
232
231
201
148
229
216
175
199
182
158
157
197
220
212
229
261
203
235
206
262
200
265
223
194
221
155
203
213
254
267
198
180
181
233
228
238
186
190
220
183
199
202
179
174
166
148
157
280
233
220
178
143
248
152
165
179
205
216
189
152
231
224
256
233
139
250
171
186
188
133
236
142
243
262
233
155
216
180
192
211
159
187
226
194
216
234
163
241
184
218
248
192
164
171
206
188
189
221
227
201
187
176
234
115
176
222
151
257
129
171
294
223
167
259
207
229
256
213
152
172
192
195
242
165
180
177
171
203
242
222
223
197
234
221
162
177
177
235
199
188
209
231
248
221
242
117
221
206
146
235
160
180
213
173
164
134
233
260
194
207
120
167
185
212
200
192
289
186
168
195
200
138
165
158
193
229
165
235
256
171
224
191
198
216
213
255
154
171
223
138
173
169
230
272
251
194
178
233
229
212
188
183
251
154
170
159
175
152
249
174
185
172
177
173
180
186
220
198
233
216
220
169
171
226
241
154
212
180
216
244
166
228
191
158
178
184
220
203
250
187
260
147
188
188
179
206
183
144
196
185
214
190
250
208
243
203
166
235
170
206
151
213
217
181
220
225
210
181
167
248
218
230
232
216
130
187
197
211
197
243
251
168
207
150
169
156
237
175
258
219
169
199
193
178
200
196
226
170
196
196
209
253
225
166
251
144
213
217
245
215
223
178
220
204
212
163
215
166
190
150
196
167
213
150
192
194
142
168
173
120
145
131
231
130
176
229
248
161
198
196
211
217
139
172
225
236
193
224
198
211
174
154
232
193
162
170
219
236
239
167
162
219
171
213
223
198
256
195
212
215
197
198
190
206
219
165
233
186
201
203
146
271
204
198
226
159
179
201
199
208
254
232
168
245
187
175
207
226
176
241
165
138
229
160
204
164
213
163
182
242
180
198
211
208
224
179
247
182
249
178
202
235
220
216
213
263
170
184
260
201
176
225
224
238
204
172
164
241
243
149
217
162
212
245
235
288
177
217
185
164
234
86
218
252
156
186
230
216
222
182
215
226
227
205
153
147
160
194
250
224
241
191
197
188
184
206
210
195
222
240
237
141
274
223
248
191
146
226
192
265
228
164
177
212
262
202
187
212
229
205
235
171
141
167
98
230
227
195
203
206
176
226
165
134
201
186
278
205
248
197
210
151
245
168
216
202
216
190
202
177
163
125
227
200
187
218
165
208
217
160
214
160
212
166
235
176
193
180
159
288
171
197
210
230
200
244
200
174
229
206
165
231
172
152
164
227
197
223
173
228
223
169
225
120
192
193
152
224
188
196
189
201
236
211
187
209
194
220
212
260
192
211
223
204
186
226
133
210
190
207
164
143
227
178
175
132
193
231
128
177
234
190
216
207
239
200
198
199
193
170
170
244
173
229
187
197
185
201
213
215
239
207
238
160
149
261
212
210
265
212
137
201
202
205
203
165
182
170
176
152
186
224
214
216
136
178
238
181
252
176
229
210
114
213
213
259
183
178
264
226
236
217
157
211
178
193
219
226
188
190
233
199
242
162
220
236
198
224
204
179
214
160
239
220
256
195
233
279
206
166
220
181
245
248
173
208
176
169
238
232
205
278
209
215
165
132
254
177
221
216
195
178
201
200
208
113
227
205
195
148
198
235
161
139
190
172
178
221
246
257
214
156
154
151
181
180
245
214
215
168
209
132
200
207
170
148
265
252
231
163
209
201
183
233
245
215
164
238
224
250
200
161
207
229
198
217
147
195
193
175
131
252
234
233
137
239
200
201
257
186
247
133
182
201
174
237
178
250
206
222
169
184
235
167
289
215
202
279
196
192
169
230
227
200
236
276
214
161
170
232
156
259
225
207
171
260
170
243
255
217
213
172
182
235
255
212
240
209
191
195
155
178
173
186
195
230
196
207
149
201
184
169
235
94
247
179
165
130
131
194
209
218
231
163
136
258
198
181
196
239
181
147
137
199
218
227
225
187
253
146
183
143
196
195
181
254
223
194
222
184
193
254
233
211
175
195
231
198
184
154
220
219
191
186
261
196
211
200
195
184
224
245
259
227
156
244
166
206
180
207
188
164
165
217
198
198
198
249
226
187
245
216
231
205
194
210
220
207
100
165
220
207
198
179
162
178
217
182
230
242
175
187
185
172
174
220
184
195
205
235
195
249
206
132
227
191
200
181
178
222
175
199
276
123
209
252
197
137
192
194
159
164
136
163
193
151
219
185
132
230
212
171
187
226
231
281
201
209
248
220
160
128
200
226
281
192
176
241
249
187
244
171
207
248
171
232
225
232
229
198
213
167
199
224
232
225
225
192
218
287
208
211
145
234
236
176
148
202
238
181
199
163
258
227
194
208
205
219
221
197
187
205
234
180
198
164
137
203
210
189
215
140
185
167
169
152
195
194
146
241
212
266
170
236
205
184
216
231
178
245
147
251
209
180
251
205
216
221
212
213
181
185
153
248
247
193
190
166
135
161
179
165
234
238
279
226
225
224
171
204
231
193
162
196
159
215
180
209
194
256
163
236
250
198
234
149
170
190
252
180
213
212
161
198
155
230
213
211
187
196
137
242
194
200
238
223
268
152
165
224
199
222
191
190
119
205
226
227
233
187
194
204
237
242
240
152
230
166
116
230
172
144
160
253
129
222
195
186
217
230
196
190
222
149
130
197
235
189
184
149
158
153
234
244
206
248
190
232
215
238
211
178
194
214
251
191
167
200
234
164
222
122
204
144
162
236
184
211
127
179
233
236
196
170
185
194
241
169
170
153
194
155
237
202
194
223
215
173
186
211
214
187
255
199
234
259
186
189
246
206
246
216
194
209
232
231
245
214
216
182
257
185
206
177
124
230
211
210
199
190
236
212
221
161
176
235
221
240
231
232
199
222
191
251
158
181
217
260
225
228
182
188
236
258
127
195
212
205
221
201
176
210
189
236
175
211
205
235
146
227
181
209
175
224
268
240
175
255
278
206
182
244
211
206
121
198
149
209
146
206
208
192
160
186
229
211
212
190
241
189
153
185
180
193
162
263
243
156
189
151
248
175
185
249
209
207
171
155
203
157
143
205
198
163
157
174
201
211
203
216
180
187
221
149
220
188
223
146
183
160
219
249
203
232
205
215
188
241
197
183
177
166
228
134
235
231
224
233
203
213
237
208
238
182
193
200
128
141
236
202
200
167
217
197
179
84
214
209
190
233
178
204
211
184
232
157
190
248
242
186
180
182
237
219
177
213
272
145
192
178
143
195
215
243
224
192
197
200
230
221
216
200
233
233
206
175
170
153
213
214
127
224
184
241
193
146
217
226
147
144
181
218
217
184
191
186
206
160
190
157
183
226
194
211
247
254
206
185
188
229
223
247
241
220
238
192
230
253
157
167
178
228
200
171
209
160
239
219
195
189
197
208
243
186
200
190
171
185
151
206
198
186
200
253
217
186
222
162
186
186
182
185
167
258
198
185
229
234
244
189
228
228
197
117
242
212
229
143
196
259
154
142
251
203
177
186
211
233
179
171
199
194
196
215
158
210
180
221
171
220
225
220
224
214
212
134
186
235
208
237
218
175
220
248
227
165
128
253
184
238
177
188
230
208
220
161
233
200
160
192
242
273
214
184
270
119
216
202
239
230
195
210
189
237
245
147
205
134
290
167
236
226
188
223
174
220
155
218
210
232
194
177
221
127
202
252
255
237
151
233
127
158
231
196
148
239
162
176
187
180
196
183
201
244
157
187
191
175
196
239
207
220
208
251
218
189
205
160
180
235
211
230
183
231
161
167
224
226
237
210
194
155
122
179
164
175
192
214
249
196
143
266
201
188
254
147
208
172
153
230
230
267
201
180
216
194
168
167
208
251
225
135
156
178
192
214
187
190
202
168
171
197
221
230
212
185
197
215
183
171
216
210
222
212
201
244
234
218
191
233
225
200
213
218
189
186
195
178
184
273
204
201
249
134
148
235
246
238
128
202
165
257
216
185
200
250
133
139
178
260
187
228
230
218
197
178
230
161
208
199
174
178
190
178
206
245
197
119
199
198
229
145
237
193
198
210
134
167
229
232
236
187
216
280
189
154
201
279
282
220
158
246
208
185
131
212
231
242
262
202
232
187
226
159
244
170
237
225
175
149
230
205
204
190
205
103
182
181
230
200
141
175
174
222
160
148
160
202
255
188
223
228
188
208
202
221
216
192
212
207
225
209
136
176
244
209
190
236
188
180
156
208
191
220
155
136
273
243
206
212
147
179
206
159
190
258
223
201
186
223
229
171
152
176
228
187
167
239
227
215
134
200
251
151
264
216
166
184
274
203
277
225
142
228
165
242
161
232
241
179
276
141
225
145
219
214
187
252
243
158
185
160
125
225
165
142
189
163
263
246
214
191
197
140
194
204
213
131
180
219
190
188
184
138
200
178
192
167
244
146
252
165
193
223
220
204
126
194
233
195
223
252
210
171
203
222
245
181
213
194
211
260
199
200
216
198
232
185
202
198
215
212
237
175
208
205
199
201
165
212
254
225
159
125
215
203
190
265
210
192
162
132
203
282
182
264
169
221
213
200
210
229
247
205
169
182
182
154
201
176
200
158
198
217
173
221
184
175
202
263
186
215
164
203
254
175
158
150
191
239
260
181
172
258
223
214
191
177
186
150
154
196
180
163
242
182
238
186
238
199
178
164
168
186
157
209
223
159
182
200
178
212
197
137
153
228
227
224
268
241
161
149
224
199
243
168
200
200
238
155
133
169
206
170
240
151
205
205
226
234
211
186
194
160
257
142
209
208
209
189
194
154
247
217
206
231
248
181
157
202
167
211
256
222
223
184
156
229
223
223
219
206
179
290
202
174
167
173
236
172
243
244
235
230
235
183
212
230
206
170
235
176
209
196
239
218
190
213
163
178
219
237
196
247
163
216
237
233
172
214
238
173
170
225
191
157
224
179
203
234
217
165
197
230
203
211
140
237
159
150
229
196
204
253
187
160
191
155
224
131
211
210
169
248
223
264
145
175
180
234
112
137
217
164
248
192
150
260
157
191
214
147
189
252
239
225
227
171
198
175
155
162
214
162
196
235
162
186
225
187
252
180
216
243
170
161
227
215
168
185
179
172
113
177
277
219
285
199
194
244
174
186
231
206
211
203
206
141
198
230
192
204
194
179
165
218
230
218
210
227
216
220
104
209
257
197
164
198
222
183
185
167
170
149
172
199
132
168
238
163
214
189
170
150
192
165
216
217
235
281
213
192
190
133
183
219
225
207
183
219
174
162
164
201
183
196
228
236
238
230
200
198
199
238
126
208
236
250
173
197
184
172
218
141
213
160
202
213
213
207
235
249
210
216
143
219
197
280
225
205
230
235
255
156
207
242
158
177
273
217
215
192
195
156
232
225
254
317
175
189
220
194
209
216
204
227
222
270
217
220
196
158
214
213
241
235
188
206
232
222
217
155
231
231
211
227
241
233
213
233
237
178
140
214
206
226
171
162
242
215
245
251
164
226
219
258
235
241
200
181
244
182
214
143
204
236
200
180
213
204
226
191
207
172
213
200
234
221
206
193
189
203
140
161
247
153
149
155
196
168
184
229
252
200
166
236
204
211
228
214
197
219
188
235
209
194
197
219
229
178
229
208
207
208
233
274
179
136
193
186
222
219
170
271
223
152
154
234
219
235
188
223
267
195
169
199
219
229
232
232
203
172
192
231
201
202
198
200
200
235
186
157
161
146
178
226
180
172
258
176
212
242
213
225
201
196
189
226
227
206
258
239
223
261
205
197
204
163
204
161
234
167
267
181
208
229
179
141
164
224
184
182
222
189
169
159
248
186
254
97
238
178
215
155
172
255
227
182
142
226
172
214
208
149
189
177
192
217
218
209
238
199
146
199
195
157
243
261
253
209
185
212
235
224
235
193
218
230
170
220
194
217
210
243
203
256
104
186
286
91
170
258
194
163
245
209
211
158
202
220
198
183
250
185
130
196
169
151
197
190
201
154
233
237
177
213
167
172
193
152
238
195
170
183
199
170
162
264
186
171
195
166
221
190
177
238
196
204
185
221
231
169
248
221
210
174
262
208
214
196
186
193
188
128
247
136
242
204
196
198
173
224
188
184
159
173
234
156
162
227
178
259
211
252
234
223
206
239
232
232
165
164
192
226
224
131
186
158
255
274
207
232
232
182
151
208
226
210
279
183
225
186
204
206
172
190
160
105
176
187
214
185
208
217
216
170
232
264
219
182
192
157
157
216
239
207
225
229
155
188
220
150
177
214
215
199
229
197
248
215
187
235
201
197
170
224
207
202
217
171
175
208
157
184
201
217
194
146
192
200
199
119
169
142
266
225
300
186
180
230
200
202
217
257
211
161
175
189
231
182
227
191
160
196
215
153
199
209
267
244
151
246
225
245
163
196
214
199
203
199
190
202
229
219
220
169
205
132
233
214
215
235
212
202
226
177
205
257
192
195
170
200
224
214
228
212
250
254
160
212
220
258
176
206
236
222
210
164
163
126
149
155
214
184
227
208
157
186
253
176
235
197
211
174
226
223
188
204
231
225
187
219
196
211
233
211
214
224
176
217
167
196
245
201
241
195
163
269
202
251
159
233
218
274
189
167
203
205
207
180
229
234
252
220
240
189
197
211
229
164
168
136
292
221
152
203
205
174
183
162
234
160
256
241
209
184
254
209
181
182
244
165
214
241
176
175
206
156
199
197
179
174
205
161
112
220
169
248
185
178
168
176
234
135
236
218
215
251
204
203
182
275
141
239
266
201
243
190
215
196
153
227
186
273
257
191
191
183
251
205
199
180
201
214
162
151
184
217
190
192
258
236
163
190
163
217
220
176
195
165
96
207
158
196
185
192
167
227
196
211
247
247
215
226
199
130
209
273
255
219
128
105
136
192
199
210
248
215
195
242
258
235
160
196
197
193
218
196
203
213
169
207
252
210
286
219
209
193
211
183
205
210
180
219
197
225
201
149
227
236
223
224
156
174
278
157
119
169
207
183
170
204
159
212
232
239
225
191
180
251
166
186
154
201
137
240
179
146
193
180
192
246
151
256
217
167
207
241
264
239
139
252
186
171
207
149
162
217
190
200
181
211
188
226
233
233
184
183
197
277
223
253
183
198
221
169
239
159
190
198
192
207
119
242
158
216
212
215
182
259
175
161
218
184
179
247
221
271
177
181
238
195
209
129
197
238
241
178
214
182
177
244
186
176
168
187
214
136
210
182
198
245
251
149
184
204
237
200
224
237
227
108
191
190
216
153
187
220
192
230
243
238
274
169
116
201
183
171
202
192
231
191
204
184
211
151
213
230
224
203
228
163
234
166
174
156
230
222
129
224
135
195
209
169
219
193
258
179
176
235
250
205
197
196
200
189
140
221
214
166
143
163
246
242
133
120
185
206
265
259
275
163
193
153
285
185
213
159
251
219
155
172
269
221
203
223
204
206
186
203
206
214
207
182
183
211
222
198
214
182
183
210
141
150
208
170
243
178
127
159
222
214
283
178
222
242
172
209
227
207
212
176
265
243
167
158
184
245
197
236
201
173
172
175
203
167
173
201
238
198
198
111
175
213
223
222
203
208
221
239
222
181
204
213
192
213
215
225
177
219
201
198
218
205
183
241
264
169
225
232
182
260
189
223
213
231
169
153
239
244
195
149
183
204
217
226
229
154
175
215
155
231
192
161
238
205
189
267
172
177
252
270
176
238
189
202
157
105
274
151
203
199
243
209
202
208
190
243
164
161
187
195
236
215
216
248
173
225
194
179
171
259
192
156
177
168
176
161
182
151
264
221
238
197
183
230
189
198
182
157
224
228
185
207
202
221
191
177
197
215
190
234
166
187
185
240
144
128
179
219
190
243
120
180
217
239
186
215
183
153
182
184
195
171
240
273
226
254
168
221
253
157
217
200
183
219
173
106
157
210
226
190
204
171
172
199
259
228
234
201
235
183
302
146
189
167
202
126
189
206
219
154
165
218
265
248
138
206
212
248
220
176
241
170
230
199
174
247
195
232
216
154
221
158
239
103
219
144
180
149
250
227
218
206
247
152
204
166
253
230
216
235
217
232
234
181
246
167
166
189
183
173
145
107
166
237
221
155
240
175
182
172
199
187
225
190
244
203
192
202
163
208
266
184
187
186
214
178
158
214
221
160
216
226
254
175
169
199
201
177
207
161
214
180
210
240
189
205
140
197
159
222
249
174
190
205
131
200
230
216
219
130
208
169
163
171
231
164
234
162
210
274
182
190
225
203
176
205
250
248
142
200
215
241
196
189
185
260
205
179
221
227
148
203
169
201
180
192
129
117
165
178
195
225
212
203
178
151
187
208
210
205
164
238
247
256
201
145
188
265
207
253
210
235
198
183
237
209
202
177
242
192
225
190
191
227
218
198
218
139
235
230
203
202
184
175
227
182
231
167
184
137
185
234
209
238
169
193
210
225
160
176
242
193
178
122
212
234
227
206
161
251
228
195
190
188
203
192
190
149
248
136
193
198
229
199
150
242
192
208
232
208
211
220
171
162
228
204
161
181
163
196
226
229
165
222
135
167
230
184
208
182
262
246
262
142
204
212
185
213
236
202
226
222
211
168
184
187
264
147
176
202
225
161
229
187
187
269
210
234
173
181
219
250
201
211
249
214
132
201
163
144
231
218
239
202
255
170
198
162
265
205
180
203
230
169
182
159
220
183
226
227
213
188
188
206
179
135
227
226
168
214
238
187
176
161
205
225
226
233
203
172
232
188
212
169
209
237
193
195
192
181
151
228
199
256
196
238
213
195
225
192
254
186
253
177
180
224
201
221
214
195
148
244
196
225
186
240
172
163
182
166
184
220
214
158
219
187
208
253
237
240
184
198
211
206
229
160
211
234
168
199
244
185
162
268
96
251
181
125
189
182
223
154
227
189
220
212
228
253
212
214
222
210
185
185
205
282
179
149
221
238
259
148
253
179
204
167
202
248
212
206
140
234
232
208
226
254
193
246
218
210
129
175
188
172
131
272
161
263
195
161
244
231
201
185
165
212
204
196
195
264
189
215
273
224
223
215
164
204
269
207
253
157
223
200
223
193
244
188
220
245
157
172
220
183
254
244
212
223
171
164
218
248
183
151
219
205
236
194
224
179
186
180
209
170
179
240
244
202
195
173
168
231
221
238
230
190
190
240
256
275
230
224
195
137
164
155
216
199
206
211
246
230
157
235
177
161
180
238
189
182
198
200
188
217
181
170
221
224
199
202
211
208
160
225
260
197
180
191
212
261
199
182
257
216
202
213
200
195
167
244
200
173
145
217
148
162
161
204
228
222
225
124
165
178
247
180
243
213
188
189
240
127
166
202
224
235
216
194
153
134
216
191
152
232
166
181
216
208
198
167
187
243
181
184
248
240
125
166
248
222
215
158
172
191
151
188
141
224
241
194
172
272
196
265
195
180
192
230
161
216
148
241
203
192
121
226
216
191
181
170
206
235
186
224
192
185
218
240
195
154
221
197
244
214
181
176
197
214
221
251
259
101
198
205
208
199
191
186
197
230
169
192
187
201
212
209
168
119
260
205
202
201
178
136
194
197
259
190
201
144
172
198
209
212
207
253
227
203
261
164
134
194
189
180
226
187
240
227
191
176
237
125
146
244
210
209
233
220
241
249
230
275
216
163
218
257
215
143
160
223
172
192
174
149
284
253
201
222
250
154
258
199
176
224
201
197
153
229
139
149
254
203
232
211
170
246
183
174
226
205
203
197
189
142
202
192
177
200
215
179
162
246
216
185
209
284
219
150
161
125
194
184
228
243
174
150
143
187
255
173
180
212
217
179
229
235
235
245
240
268
215
183
190
226
198
200
130
190
208
221
198
251
227
213
165
207
241
192
197
174
201
243
200
201
245
220
234
239
125
171
243
141
185
199
280
220
225
249
192
233
190
209
205
228
244
238
172
153
202
232
215
120
201
237
208
262
224
240
239
230
202
202
219
222
187
212
218
172
161
130
181
188
219
131
184
239
169
201
222
231
207
217
166
186
283
195
158
223
211
214
158
248
230
146
238
237
227
175
190
179
187
178
196
235
248
216
169
201
228
185
233
218
249
192
215
106
226
178
207
178
187
230
196
268
189
204
225
174
157
221
174
212
256
215
262
154
230
186
177
144
171
145
234
185
172
174
193
188
215
185
180
159
173
138
223
205
178
255
158
208
229
200
199
268
228
231
211
255
186
253
234
176
169
219
207
168
134
246
236
154
206
183
183
210
159
260
185
180
213
197
136
231
208
202
216
170
214
194
223
188
233
211
215
177
153
162
220
149
196
169
163
247
234
202
181
179
232
164
226
243
193
177
162
237
170
257
221
231
154
193
180
179
198
199
243
193
168
142
157
243
163
173
130
209
150
170
171
198
205
215
165
255
218
228
228
189
205
211
154
209
151
185
161
190
211
249
231
194
209
276
226
249
204
194
218
248
206
242
153
200
208
182
260
156
189
171
170
242
241
199
212
236
192
166
196
128
189
183
179
200
250
189
212
205
227
180
186
198
184
207
208
222
192
210
193
196
219
193
281
213
176
169
190
191
194
219
104
243
238
158
233
215
204
202
212
171
223
196
167
256
177
205
164
185
164
204
239
218
152
226
237
237
155
213
239
205
205
126
149
228
93
238
225
175
209
225
161
219
220
245
233
211
175
148
173
178
100
207
185
125
220
178
228
199
251
227
192
189
226
207
217
201
239
178
219
209
239
217
151
248
156
169
246
118
161
179
218
220
235
186
220
164
212
239
198
153
196
256
147
150
263
251
154
224
176
187
231
180
220
195
165
209
222
227
226
207
162
229
179
233
177
170
206
224
242
188
169
196
184
182
202
184
239
188
221
158
180
262
200
161
187
199
237
230
130
159
175
156
179
229
221
197
195
213
239
184
255
249
223
213
255
198
191
263
179
234
259
186
179
193
197
202
168
158
194
202
205
191
187
206
213
215
185
203
200
194
193
301
157
181
230
166
187
244
205
231
185
263
194
234
249
202
132
145
97
221
153
180
135
212
250
254
222
132
216
226
232
193
226
171
198
228
242
163
170
189
178
196
183
232
211
211
165
239
170
205
232
272
172
178
217
184
203
166
190
173
223
186
193
189
240
229
206
185
179
157
248
202
261
225
229
165
122
242
233
226
223
202
181
243
152
200
236
231
172
170
239
148
140
139
246
198
211
149
209
173
179
195
152
216
195
172
182
198
201
166
220
252
240
206
218
233
197
205
195
233
194
268
190
231
198
161
213
204
193
237
218
252
172
212
158
164
203
217
279
178
180
253
170
155
225
225
184
192
215
201
213
175
123
249
140
251
169
223
208
141
188
186
213
191
124
212
260
193
160
197
240
183
227
210
204
229
221
133
156
174
218
203
190
236
206
164
178
203
218
218
254
196
148
167
179
211
191
173
146
262
208
175
166
173
206
200
200
204
218
165
199
264
147
242
175
204
182
165
222
149
247
161
220
221
191
192
211
202
219
188
204
167
191
187
191
207
208
245
270
244
164
255
197
163
198
244
196
232
273
248
185
205
207
217
220
208
171
229
202
153
216
204
172
186
216
171
166
195
191
185
192
234
198
220
115
212
212
205
209
198
164
145
179
188
214
218
178
235
171
204
208
186
224
202
249
201
192
211
187
188
182
157
206
161
285
140
215
179
232
202
233
228
227
244
195
216
161
145
201
206
200
167
225
184
248
215
258
216
121
219
203
180
136
271
175
225
194
162
191
201
225
165
201
227
202
242
209
156
277
233
201
213
220
224
207
193
179
190
158
151
189
220
207
141
176
217
183
160
168
210
178
249
202
216
185
155
267
164
161
154
208
225
203
157
234
213
171
165
211
183
245
234
206
227
210
174
136
257
207
206
167
171
185
184
234
217
209
148
167
174
143
243
181
174
208
232
175
184
242
219
200
127
138
143
223
248
229
209
212
180
177
194
166
225
235
265
206
247
203
143
148
165
197
146
86
216
223
202
183
104
215
218
178
162
157
189
165
163
158
188
225
168
244
235
203
169
225
179
163
147
168
179
203
162
171
161
246
234
206
153
242
145
267
229
276
188
211
167
179
222
173
181
230
233
165
179
202
215
217
219
224
236
239
135
217
168
179
196
227
239
175
174
190
242
172
171
138
149
218
195
150
219
214
269
231
205
238
179
273
199
170
156
220
180
178
249
156
215
176
170
216
211
182
191
211
220
193
187
200
237
277
244
188
179
196
200
175
185
132
245
244
153
232
143
242
170
210
139
202
217
294
157
205
194
190
188
237
232
94
227
216
179
181
167
246
196
167
289
170
209
133
200
251
233
226
160
169
203
182
147
99
234
232
231
166
240
242
187
167
190
91
164
219
198
183
195
244
201
154
207
233
188
197
217
228
215
261
214
212
214
232
173
79
193
263
169
130
133
183
188
208
108
230
180
207
224
161
178
165
228
200
189
165
227
234
157
217
108
189
231
169
160
241
243
187
209
252
183
215
158
238
231
190
177
164
200
212
183
141
183
223
243
182
189
228
266
239
215
260
210
177
262
135
195
185
198
252
199
128
201
191
192
222
205
187
191
200
232
242
208
230
186
193
183
160
204
212
198
219
178
211
102
230
268
205
179
192
212
186
218
237
197
194
215
245
203
223
251
196
202
227
230
206
231
161
237
181
206
227
268
232
136
225
173
238
147
163
198
199
205
214
234
192
141
188
228
251
203
202
234
205
217
206
203
167
188
195
109
221
216
211
214
166
123
165
212
236
205
205
202
230
229
143
156
214
180
215
218
184
221
281
161
180
229
205
254
203
219
151
168
199
251
216
267
227
162
228
219
187
194
167
218
254
189
205
175
211
234
203
175
232
197
166
167
236
217
236
208
165
198
212
221
197
181
170
191
197
198
226
239
226
152
160
236
221
184
130
184
204
217
203
183
219
210
177
180
235
175
97
165
169
220
248
204
154
160
226
220
169
254
193
167
201
230
175
190
226
146
165
226
220
152
163
221
196
248
207
229
199
182
250
237
218
191
169
207
259
211
199
206
200
197
169
172
128
201
218
210
206
226
202
251
184
208
202
206
193
185
216
223
234
167
164
211
191
237
139
226
250
204
177
196
206
149
174
187
202
221
227
117
183
203
196
114
164
147
177
195
213
219
249
222
207
282
197
187
177
173
157
244
190
238
155
207
186
157
169
196
171
163
203
170
197
150
226
183
208
136
171
223
258
200
224
204
263
178
135
170
246
253
221
245
226
194
174
184
169
230
170
140
187
180
248
183
255
192
194
157
202
207
225
206
253
272
221
238
217
190
166
265
212
173
251
120
226
171
235
192
171
191
173
180
214
204
189
190
208
211
237
151
201
230
220
240
248
199
214
256
274
263
214
224
162
193
233
234
160
180
226
241
171
210
169
265
253
206
138
165
258
225
164
199
143
223
216
151
204
300
248
162
128
167
131
209
230
183
210
212
223
236
174
184
226
218
263
188
173
196
231
208
167
183
208
180
210
183
175
193
160
187
256
192
149
210
191
199
135
220
148
203
229
174
212
182
217
190
251
181
245
179
232
216
170
146
154
210
262
227
225
136
186
185
176
210
193
182
190
197
209
196
177
199
230
239
190
172
269
142
203
244
234
216
254
225
206
168
213
140
141
164
214
188
251
224
199
105
196
191
193
215
187
213
205
226
181
224
178
220
218
176
203
221
200
205
205
149
169
188
253
187
182
159
194
132
167
232
225
190
184
127
104
217
253
201
156
162
216
183
238
187
174
167
247
252
239
226
168
165
184
194
248
202
152
182
135
174
142
176
175
184
169
134
162
192
240
204
166
241
214
241
182
193
228
179
203
214
160
249
179
187
222
142
211
167
174
234
231
212
178
190
196
167
258
164
196
168
152
196
170
203
221
127
204
178
166
215
223
200
169
232
151
189
155
212
225
203
240
172
181
259
246
201
162
166
259
234
210
212
226
191
257
217
149
232
194
235
191
185
208
198
188
235
254
239
174
191
186
218
229
220
189
212
173
143
182
222
130
189
223
151
119
239
209
242
208
215
204
232
203
220
191
232
210
257
178
191
102
234
199
180
214
200
205
230
158
269
206
231
169
204
160
182
164
203
181
186
183
216
202
124
220
216
169
209
229
184
192
243
183
148
170
214
235
188
193
186
217
198
140
233
173
179
188
204
204
223
159
230
171
97
207
169
173
213
232
137
141
203
185
228
196
224
240
249
219
216
158
208
205
156
189
220
179
182
198
230
160
181
221
179
185
146
215
152
218
260
195
170
200
208
205
218
227
163
212
228
215
252
216
199
190
199
172
217
181
157
203
228
262
211
181
173
216
217
219
179
214
207
269
265
178
151
206
263
209
146
196
198
189
209
227
176
139
141
172
201
169
186
195
201
242
164
211
198
217
249
185
192
207
213
232
208
190
167
217
144
231
140
187
204
207
122
185
251
255
203
215
159
232
214
154
200
204
179
157
279
218
245
181
213
202
220
157
209
154
177
269
240
175
225
222
254
208
248
240
230
207
221
264
228
271
197
238
233
174
203
202
223
195
263
186
217
184
169
233
263
193
234
187
215
195
204
215
220
147
199
211
213
274
203
191
155
242
238
224
205
196
222
203
178
214
164
190
205
212
145
132
227
189
162
182
187
161
182
227
216
141
203
228
244
206
189
236
212
201
235
235
234
175
176
213
188
145
192
198
205
174
162
233
192
191
229
205
181
262
206
188
229
206
191
218
252
130
177
233
222
200
117
165
191
241
158
132
211
159
227
192
201
207
238
214
206
205
236
256
230
195
200
184
208
187
201
246
231
258
127
206
138
219
147
241
219
242
213
178
182
147
167
160
151
259
249
188
179
202
185
163
241
248
185
285
172
221
206
148
225
264
202
154
221
215
172
217
193
217
246
222
167
196
207
175
194
226
198
208
217
172
202
220
191
184
198
181
210
214
247
221
227
235
170
161
196
189
209
148
153
253
216
304
157
262
180
211
216
242
217
194
236
162
185
165
215
147
251
220
230
249
240
273
156
255
202
133
168
177
182
172
152
213
175
230
224
147
105
160
173
193
202
239
238
199
256
170
217
185
169
134
187
148
217
220
182
160
185
223
177
185
198
134
163
164
214
156
248
161
178
149
165
183
180
275
217
165
217
183
127
231
164
234
190
198
229
215
169
225
139
234
217
226
150
189
249
132
200
181
199
267
221
178
205
142
199
178
186
171
165
198
202
148
240
197
204
176
152
173
183
180
149
154
149
118
198
191
203
254
250
217
176
193
243
259
185
209
182
184
165
209
205
248
220
197
190
195
239
218
179
172
162
173
232
225
222
185
247
213
153
158
186
186
149
161
227
179
217
197
196
159
156
131
179
232
195
243
219
257
135
210
180
177
164
201
174
187
188
166
150
165
173
174
266
187
239
225
205
189
184
161
199
191
228
187
176
222
158
233
209
259
156
168
218
235
230
205
218
162
186
198
220
153
184
170
190
188
229
230
260
142
190
182
196
128
208
154
221
175
187
171
154
233
239
212
151
223
211
122
198
208
204
134
148
211
165
259
175
183
197
197
213
141
232
128
170
176
231
156
205
215
220
215
163
213
209
242
235
156
247
235
197
251
182
258
218
181
241
236
252
186
224
263
172
228
195
224
159
178
199
240
173
242
202
161
235
181
272
179
197
228
170
231
221
255
248
282
188
159
230
222
218
154
186
184
233
190
195
230
236
148
225
185
172
224
280
212
214
256
158
235
222
173
218
200
193
175
143
215
175
189
211
275
261
235
169
174
193
171
164
176
235
196
162
159
184
208
205
261
186
226
264
188
184
196
156
226
221
162
159
128
194
160
169
204
178
193
138
216
222
221
168
239
223
174
177
202
212
244
178
186
228
146
176
174
228
185
199
233
216
208
184
200
122
210
207
203
215
204
209
231
213
264
197
229
235
233
173
195
169
122
141
237
191
250
190
199
239
197
199
204
203
199
197
204
215
195
239
163
257
136
205
190
245
211
210
194
209
305
232
131
222
245
185
215
194
217
189
188
236
200
180
158
170
125
147
247
186
175
134
203
211
168
158
204
156
235
191
163
224
170
194
205
138
211
143
216
228
206
171
249
212
182
244
178
141
207
193
239
164
242
201
175
193
176
197
230
185
208
214
191
184
208
186
231
202
282
117
207
254
208
191
190
197
176
195
179
181
176
152
220
174
212
228
191
185
159
157
183
209
157
208
199
181
189
239
185
243
284
236
192
221
227
262
210
183
216
197
207
168
141
183
231
252
207
192
155
221
185
204
182
190
224
178
170
247
245
212
195
160
167
199
197
153
116
205
215
218
222
191
156
137
204
133
243
207
238
184
244
172
242
170
247
221
260
203
216
216
224
195
243
181
201
154
162
245
193
207
180
165
218
146
142
215
157
186
141
189
249
194
164
223
172
181
237
217
164
218
224
161
123
159
215
232
244
165
178
216
194
135
253
163
174
189
156
197
217
200
199
236
248
195
125
257
165
203
227
177
196
172
195
201
240
219
215
214
186
244
151
118
219
208
238
197
180
180
188
179
183
228
194
195
258
230
194
166
192
210
205
235
219
132
167
210
240
170
195
160
224
138
178
174
204
206
179
156
215
220
115
138
200
196
184
221
146
269
166
196
152
247
172
220
196
218
174
186
226
162
224
155
211
216
208
208
204
157
195
159
151
200
223
226
231
274
190
252
155
221
217
232
212
181
210
180
257
155
186
168
177
189
159
138
223
198
152
200
233
138
240
227
201
210
195
215
238
181
197
203
227
154
183
240
229
198
211
237
164
234
231
224
194
210
210
166
151
206
178
184
209
182
215
163
211
207
196
191
207
138
174
223
182
144
200
249
179
145
243
273
186
246
258
218
219
185
219
175
174
209
215
259
211
220
190
226
239
202
163
242
220
176
229
162
241
180
174
158
207
173
260
178
195
168
211
210
235
213
237
215
196
155
190
184
246
177
195
236
196
186
214
201
144
227
230
179
154
138
233
148
186
167
212
154
237
204
197
224
235
171
244
225
157
167
160
228
243
210
248
145
259
211
223
160
229
202
209
299
143
179
186
244
197
238
177
253
215
239
212
144
194
182
221
162
211
248
229
93
177
138
211
199
266
162
228
154
258
186
170
192
183
192
237
203
217
153
216
255
191
199
209
182
225
217
178
301
214
140
202
176
193
232
174
211
194
238
116
139
235
181
214
207
183
184
213
252
236
210
177
183
228
159
136
78
234
204
209
153
183
243
228
116
194
258
232
253
191
140
231
217
192
213
216
203
225
188
213
195
173
174
202
201
184
262
246
218
198
205
186
209
188
172
233
229
198
155
186
184
209
204
213
175
182
136
232
213
215
247
180
229
256
211
193
180
287
166
229
225
203
164
170
214
185
162
203
162
178
161
157
204
242
232
208
177
181
150
208
188
191
226
185
206
254
209
205
189
153
192
158
228
186
205
162
212
181
237
220
212
137
184
174
181
268
213
202
200
196
191
269
148
173
207
145
203
212
206
147
205
182
230
172
211
191
213
177
252
227
163
218
219
206
197
184
203
180
203
172
189
150
202
266
214
171
183
217
220
223
141
185
276
212
167
281
220
165
223
196
208
168
188
238
186
191
215
209
198
228
135
166
247
169
260
174
217
204
170
171
169
238
218
196
204
211
206
173
218
249
173
232
202
205
159
142
201
189
214
227
172
186
200
252
206
214
152
157
176
204
218
217
240
141
216
193
202
204
222
222
203
223
191
220
276
216
235
217
197
198
194
215
197
245
217
189
179
214
188
226
219
185
256
249
175
143
144
128
241
231
184
222
212
224
180
242
183
196
153
212
169
253
198
192
134
245
189
185
166
219
162
215
203
229
237
121
160
233
153
228
116
169
206
223
239
211
236
212
162
202
206
221
230
212
215
168
206
201
177
180
157
230
252
193
185
170
118
151
174
193
210
208
174
252
228
212
190
220
211
194
235
187
269
178
211
183
148
133
188
189
239
156
227
210
229
172
190
161
195
222
211
185
235
156
178
184
143
249
226
263
195
207
145
252
206
166
243
247
235
153
221
170
183
187
217
218
228
201
166
215
214
210
204
194
270
189
217
144
187
239
225
231
153
214
195
210
146
241
165
283
253
239
173
230
227
184
235
149
247
190
174
148
239
154
150
206
139
200
184
223
152
244
188
186
190
244
217
174
204
164
195
225
237
191
174
155
208
202
230
215
184
181
174
159
192
226
247
201
245
184
166
219
227
194
174
182
209
246
193
195
268
145
150
121
179
197
221
176
164
253
187
255
212
201
219
226
206
191
253
194
235
260
149
255
148
250
210
187
196
197
254
160
171
135
206
240
177
178
218
176
173
237
262
220
253
240
220
214
166
161
217
247
165
180
189
230
238
124
216
220
216
213
235
136
123
229
183
218
159
174
204
196
191
199
215
181
207
194
224
199
194
200
127
230
213
192
244
214
146
171
148
179
183
204
254
222
244
155
191
182
175
152
203
187
188
80
160
186
265
253
157
186
240
153
230
254
215
133
180
212
207
181
139
175
223
209
213
239
187
199
206
204
148
167
203
219
202
150
182
223
194
173
233
165
153
146
165
208
239
184
108
249
143
152
260
193
216
214
205
246
212
161
258
175
181
197
159
267
160
225
181
199
271
183
224
171
204
236
245
173
227
172
217
125
236
239
177
198
122
191
152
233
212
228
236
175
206
245
172
237
183
253
180
188
237
227
110
210
206
241
152
243
243
170
198
253
193
190
160
186
188
180
220
184
215
119
160
195
228
229
192
207
219
204
167
197
176
236
223
249
217
142
202
232
228
124
197
226
196
186
217
276
208
208
200
247
221
181
210
203
213
199
199
202
194
171
240
192
162
171
252
174
159
249
214
209
197
189
196
207
227
251
155
219
201
192
214
184
141
209
193
142
215
215
225
186
230
241
255
209
193
203
174
168
156
170
169
189
209
166
192
213
154
215
190
198
200
193
123
164
173
233
210
243
190
143
213
156
181
209
191
250
179
213
145
232
213
183
253
294
182
192
121
197
173
200
159
248
163
242
186
185
184
160
196
201
246
221
150
224
194
169
161
177
227
155
217
224
216
211
170
222
224
212
183
170
203
190
137
271
240
212
180
239
216
155
204
214
211
192
177
189
183
221
226
223
159
208
183
179
205
236
206
253
242
210
190
222
197
209
218
175
171
197
216
226
141
146
238
218
208
185
191
195
222
212
129
176
179
206
223
189
190
168
145
130
225
175
206
206
135
225
245
205
175
223
141
147
237
206
189
245
222
167
162
157
90
216
160
186
231
239
234
199
194
153
218
174
213
236
183
185
151
161
221
150
161
135
177
255
189
213
180
211
191
220
152
191
202
155
232
230
138
206
201
219
221
195
192
170
220
234
192
161
253
131
197
149
215
228
206
205
136
180
244
193
192
280
161
237
183
227
232
222
204
205
211
196
201
206
137
264
247
151
225
204
221
196
186
178
181
213
170
167
192
144
177
195
206
165
215
193
249
174
195
241
186
230
211
213
184
148
173
173
178
177
233
141
153
134
160
171
204
136
114
219
202
201
146
97
218
219
135
226
189
173
205
100
223
169
151
207
188
178
197
234
177
246
235
169
247
214
217
241
182
196
223
228
219
202
217
225
169
200
218
192
229
162
176
199
186
257
208
220
236
209
148
246
215
138
198
208
203
184
161
151
248
209
178
195
169
229
219
243
207
240
227
211
193
178
239
184
199
180
225
221
221
176
183
229
151
204
182
241
189
264
182
149
192
214
204
173
251
221
238
141
143
195
171
209
164
200
228
186
159
173
187
183
156
211
180
247
190
199
197
202
190
202
229
220
187
168
178
185
239
161
248
230
171
151
268
224
199
254
162
155
187
239
215
177
211
217
158
231
214
212
167
165
210
147
235
191
167
174
207
238
262
277
159
237
191
228
201
197
185
134
237
213
184
209
193
198
255
211
203
155
229
255
231
156
216
149
239
238
179
191
203
223
184
209
201
207
186
155
186
222
220
183
167
183
216
209
188
156
202
170
225
222
245
181
130
230
196
165
231
224
205
175
189
218
151
202
244
223
231
199
262
196
207
237
180
198
208
188
192
166
120
228
198
255
198
196
177
202
161
189
202
178
239
222
221
141
225
291
216
234
220
217
227
180
219
233
191
225
180
186
242
206
240
215
200
186
208
120
256
176
189
181
183
212
221
151
160
167
210
210
114
238
204
196
162
197
260
184
137
232
183
178
156
204
212
167
124
181
173
235
169
242
168
175
181
202
220
253
150
191
268
202
181
245
169
187
93
198
228
138
244
206
184
235
235
190
203
201
230
210
249
211
192
194
180
158
191
223
236
166
198
174
157
192
199
210
229
199
204
216
256
220
178
180
213
153
160
220
200
178
167
110
158
213
117
161
235
174
202
200
202
236
162
186
161
196
228
232
256
225
157
158
232
234
213
204
179
174
239
216
253
172
250
180
165
195
199
127
247
165
163
174
199
213
220
232
231
224
224
259
203
151
183
216
181
208
147
173
208
232
236
130
260
201
200
157
227
157
174
120
195
197
210
163
205
236
195
218
180
172
245
145
172
185
184
177
220
151
223
215
220
191
178
239
231
196
184
175
247
225
173
180
167
152
189
160
249
227
216
191
220
168
171
186
217
183
193
205
253
222
166
205
229
212
192
217
199
176
240
177
160
234
175
257
137
200
230
198
233
206
197
246
187
210
195
244
224
179
245
239
166
199
157
139
201
236
139
203
214
160
218
211
273
252
145
236
240
138
184
180
160
193
153
227
229
190
196
151
166
221
261
176
202
242
210
222
224
208
186
188
175
223
230
256
191
239
280
248
201
222
242
210
201
239
234
236
245
274
217
176
157
263
180
246
243
218
168
165
191
199
198
206
195
160
209
198
166
172
180
163
201
228
175
225
224
190
230
251
241
178
179
255
247
191
215
214
183
229
190
203
217
153
169
169
227
189
255
194
276
205
234
268
211
98
155
222
172
192
180
223
190
206
253
245
212
244
217
211
201
194
184
202
148
170
205
228
197
219
159
209
212
230
182
202
182
216
190
219
169
158
157
188
138
207
235
251
200
231
210
155
215
178
91
138
215
226
185
209
186
240
142
172
224
202
184
243
128
241
142
250
220
203
221
192
244
198
193
226
174
201
153
217
195
250
169
182
235
180
193
217
219
197
213
203
188
165
244
211
243
196
169
217
186
179
142
178
104
228
163
156
208
170
146
162
191
210
264
182
174
137
167
217
185
209
239
202
117
210
179
189
207
211
207
208
248
244
191
230
202
211
164
227
150
185
164
208
202
159
224
155
124
212
216
217
225
161
170
229
237
131
197
199
191
189
141
178
153
181
167
139
252
193
226
225
212
182
125
231
215
173
196
267
210
219
185
189
237
186
192
207
258
222
176
199
209
227
224
233
230
224
232
152
224
260
187
168
177
212
218
198
219
229
203
114
193
224
235
179
205
192
174
219
108
219
220
158
198
213
252
243
201
214
248
220
223
177
165
236
163
203
102
223
192
241
164
181
199
132
159
181
219
225
152
188
213
228
214
184
221
209
160
191
171
169
227
240
205
173
279
242
194
204
257
247
254
148
233
233
201
212
163
215
194
184
181
141
202
195
174
147
186
160
223
198
263
231
231
189
213
258
169
193
236
128
200
179
224
227
150
196
222
198
195
227
209
113
212
202
203
216
196
252
241
183
209
172
204
253
186
182
249
221
173
209
172
131
215
194
171
172
229
175
197
165
202
208
234
230
265
133
145
196
225
175
213
234
231
233
223
229
203
220
133
225
234
188
203
137
205
224
179
213
198
165
177
170
164
224
225
245
203
195
177
186
124
217
171
190
168
267
206
214
210
189
175
179
190
184
150
246
219
203
194
212
188
185
204
164
166
214
235
228
264
189
214
219
197
127
251
224
171
238
122
252
221
172
192
205
195
199
226
207
171
221
202
189
193
246
174
215
207
172
227
252
184
214
179
268
189
227
216
186
168
186
242
214
229
217
181
206
229
263
231
169
243
252
208
210
202
164
186
182
231
164
244
227
160
180
253
208
194
142
239
154
235
191
180
210
154
244
216
120
170
187
189
199
218
157
250
221
248
208
179
227
165
203
218
177
146
145
105
219
230
187
149
183
181
175
178
191
176
208
186
179
200
204
207
276
188
215
216
207
175
176
218
214
207
211
223
112
169
202
212
191
211
121
211
182
142
137
196
208
183
179
231
208
183
174
159
237
274
209
223
212
195
175
208
249
174
188
205
141
227
162
232
219
187
214
194
207
153
240
244
199
232
210
191
231
143
232
209
222
172
205
257
177
136
186
165
260
234
181
173
235
162
175
179
185
168
235
190
181
210
196
235
169
231
152
160
234
215
140
200
230
168
134
203
201
249
217
195
275
223
176
269
200
180
178
174
243
205
194
185
213
195
185
157
170
234
231
209
241
214
193
262
179
275
170
178
147
217
153
191
184
141
223
225
219
210
229
173
170
194
197
251
209
142
222
244
163
176
188
207
187
178
166
183
172
229
201
223
214
216
121
195
267
236
189
186
146
223
185
143
155
228
187
217
138
184
172
201
153
246
204
180
230
177
252
164
233
182
246
208
226
192
171
204
192
226
214
256
234
195
213
234
227
175
134
193
180
217
166
264
212
243
224
158
179
188
216
188
152
218
213
190
221
215
177
227
164
175
180
208
117
186
213
236
227
222
222
197
154
220
173
164
237
154
218
227
185
233
207
143
224
212
188
190
214
182
234
201
212
211
264
223
245
162
179
221
209
221
221
157
209
165
220
215
212
188
213
200
227
169
177
207
243
208
198
188
147
181
233
205
216
247
224
273
177
188
206
215
214
186
193
156
215
266
178
165
138
202
246
158
207
178
226
196
247
206
185
219
218
205
198
205
226
160
230
152
154
153
159
223
216
231
185
179
207
211
253
242
151
291
215
210
236
206
261
190
163
170
177
172
182
230
178
211
242
205
207
198
240
139
121
211
158
221
168
222
211
136
184
222
231
116
222
157
160
169
173
202
160
204
230
122
180
242
228
234
187
248
231
204
150
207
190
185
234
189
268
231
247
202
124
218
196
112
201
226
121
208
177
209
151
194
229
223
207
213
239
138
234
197
229
163
178
196
175
227
158
121
136
252
153
237
207
194
246
204
185
142
242
151
195
211
198
211
265
209
209
198
127
235
162
209
191
174
158
183
220
230
217
170
257
215
164
198
224
221
230
262
219
143
184
223
205
215
112
236
157
165
176
176
273
194
203
153
241
210
235
199
218
216
175
135
150
160
189
212
181
198
214
257
186
159
204
182
178
171
182
110
182
144
259
205
207
186
170
190
206
151
237
214
197
151
268
198
167
199
221
196
163
190
306
182
146
176
148
184
193
237
156
211
217
256
231
218
111
113
236
233
247
223
189
174
143
186
204
289
205
138
196
252
186
181
223
256
201
215
151
148
222
112
242
213
212
250
229
211
183
172
215
244
213
194
217
170
195
235
155
208
203
209
168
189
189
149
159
150
216
222
248
236
254
253
205
176
269
197
165
208
221
217
193
252
186
225
224
206
173
220
225
251
183
218
197
190
229
236
250
218
295
177
202
155
178
201
193
203
262
251
194
224
220
176
229
178
179
169
173
199
197
192
160
295
222
185
250
182
195
161
198
187
200
160
216
216
156
177
238
262
216
183
194
207
234
209
145
181
204
245
215
228
164
161
238
183
214
230
211
211
197
197
259
233
231
242
209
107
204
198
292
162
184
186
160
246
228
220
194
179
238
194
205
224
270
203
266
191
169
222
203
206
215
200
209
162
242
226
196
177
226
192
190
240
249
203
209
183
154
167
200
156
250
220
155
248
170
239
164
186
254
218
242
156
156
185
223
162
212
147
184
166
207
229
173
205
185
217
166
189
159
208
250
164
217
244
153
269
234
184
182
265
167
227
139
206
258
245
206
183
182
209
213
193
188
190
229
205
214
188
164
226
217
196
164
239
144
187
191
194
240
180
173
182
157
163
206
233
189
190
257
243
239
233
223
232
110
255
229
183
131
202
258
235
234
237
214
225
207
213
237
219
125
202
199
167
225
214
243
226
203
183
228
113
191
173
157
187
207
233
165
273
224
239
252
227
191
177
186
163
260
114
176
179
217
129
178
145
220
269
191
201
192
204
175
190
167
212
167
198
170
166
213
240
173
166
216
193
172
201
203
248
187
218
151
180
179
114
175
195
226
179
193
196
206
171
229
248
185
218
208
202
207
248
155
175
201
178
255
217
239
260
196
238
182
200
154
194
242
197
199
243
184
180
199
221
130
178
245
245
205
246
260
199
128
153
153
159
256
219
181
209
254
225
186
165
210
163
195
179
185
205
252
206
241
193
238
220
154
159
201
206
214
185
170
205
169
151
176
246
254
167
136
211
211
179
214
240
217
219
180
213
198
143
137
238
189
215
201
221
215
232
184
114
203
187
193
219
173
223
164
241
204
187
262
218
73
211
266
205
167
159
183
245
193
228
201
141
203
200
198
241
220
203
189
237
200
161
187
182
231
186
218
202
216
226
167
207
221
233
215
220
254
253
164
194
199
203
149
176
200
202
248
180
263
217
178
186
183
176
218
214
176
183
209
183
162
196
241
238
249
236
243
156
205
177
170
160
227
222
193
186
219
139
248
219
183
224
244
251
241
170
200
198
197
244
188
210
173
190
124
190
178
172
181
192
180
165
189
215
212
226
135
179
232
188
177
181
177
181
177
220
186
205
226
178
267
218
167
199
230
211
184
222
251
255
161
225
178
174
181
201
220
233
208
195
210
194
208
211
178
216
183
160
224
284
231
189
200
250
226
174
194
211
225
204
169
161
237
163
188
221
174
248
211
205
226
189
189
235
206
228
190
139
228
228
176
156
138
200
139
190
179
167
238
162
154
204
217
212
158
229
227
232
197
207
190
239
219
227
193
207
135
175
185
209
154
194
193
203
195
153
196
162
228
220
186
199
163
180
254
186
225
205
156
211
183
278
216
201
189
186
210
229
216
207
206
183
225
202
238
194
195
194
259
247
241
163
179
223
193
173
222
279
203
215
193
214
209
241
241
227
234
203
234
193
139
208
253
249
251
217
223
175
199
179
139
211
163
160
199
150
138
189
228
203
134
219
199
157
157
232
248
185
212
190
204
184
228
142
170
212
192
166
161
199
228
203
218
229
237
266
188
277
162
262
203
237
211
205
184
209
225
259
158
151
227
221
263
192
136
238
222
169
200
279
207
154
194
203
163
187
154
268
188
156
285
212
169
200
203
190
216
228
250
182
164
168
156
219
179
229
226
169
196
223
178
150
120
186
210
212
202
208
234
209
200
214
183
198
217
234
215
203
246
86
241
212
145
229
228
207
188
207
228
188
244
232
244
190
149
207
178
191
151
203
233
241
122
208
172
238
248
224
185
188
240
223
191
240
181
176
164
210
136
232
187
196
208
214
245
225
217
194
219
178
192
241
154
195
229
121
125
213
130
193
249
205
219
216
188
210
212
163
184
178
154
236
212
172
219
189
175
242
205
239
171
154
222
206
162
190
215
265
173
251
184
270
253
177
254
166
263
254
183
196
154
175
239
185
177
268
252
259
195
175
160
221
203
154
175
135
164
238
199
185
197
219
174
196
204
181
171
180
185
263
249
256
252
215
160
202
174
186
146
191
194
226
196
230
193
183
259
222
141
230
202
250
200
253
222
226
228
198
131
239
215
189
245
160
180
167
152
176
207
229
290
153
164
220
216
207
122
215
184
186
147
255
160
185
203
194
199
216
172
187
191
130
163
238
222
187
182
219
216
168
153
179
189
151
212
199
252
177
181
139
124
218
261
178
188
183
182
245
150
220
157
214
179
278
260
147
197
169
191
210
169
210
178
221
197
257
199
222
244
186
189
247
224
215
214
193
156
203
240
188
234
271
116
202
198
168
199
188
190
185
223
196
217
214
249
189
204
213
185
193
198
153
229
227
185
195
199
191
158
248
191
204
271
184
175
241
177
180
154
224
190
213
206
162
151
208
271
177
192
186
185
160
203
219
205
207
212
243
233
177
228
187
213
200
203
190
190
214
160
258
152
224
179
217
168
228
166
201
206
244
156
198
161
215
132
207
273
201
217
230
156
229
213
191
162
186
186
202
201
244
194
230
149
121
180
201
240
204
225
192
202
184
280
180
166
162
206
175
181
242
139
192
273
268
134
197
169
121
193
181
229
109
230
141
168
207
191
206
191
238
272
216
219
208
210
203
208
194
184
135
268
211
177
179
227
177
191
228
204
199
179
195
220
213
147
203
205
188
201
221
233
191
209
216
213
176
229
189
172
226
167
195
240
235
235
174
236
187
209
188
195
217
207
188
224
213
136
183
197
177
268
188
166
177
188
159
200
186
191
227
187
207
217
216
224
200
235
237
226
221
115
278
182
189
204
164
177
178
222
200
230
200
194
168
213
199
203
184
174
199
269
196
196
183
210
276
196
198
136
260
261
171
225
144
180
154
185
181
163
242
200
145
232
176
229
206
170
157
222
214
197
228
152
170
192
226
240
236
182
127
216
228
180
227
238
255
185
208
273
174
190
280
277
206
204
197
222
206
184
239
207
199
185
227
220
194
168
164
193
171
228
229
203
233
214
97
195
250
175
207
174
251
159
168
216
226
241
186
235
175
218
193
201
169
213
151
207
110
240
232
151
141
226
162
222
207
206
214
272
204
183
243
257
195
113
189
161
179
173
169
191
185
225
181
196
209
173
179
158
146
178
190
163
178
238
202
173
248
152
228
169
253
228
155
195
237
205
224
218
217
198
211
214
229
130
206
162
184
223
163
224
268
172
166
192
209
221
207
168
244
200
182
170
165
208
151
175
178
191
141
218
194
189
212
180
227
199
212
141
208
172
156
177
261
130
163
199
180
179
220
221
176
185
261
247
185
231
175
223
213
183
202
218
233
191
216
128
199
182
228
260
146
241
251
203
181
198
252
247
166
241
254
219
249
192
171
252
213
219
169
225
181
191
149
229
143
201
133
141
196
195
176
192
228
194
184
225
207
193
150
184
225
209
186
200
167
191
176
125
233
202
243
215
281
166
183
208
240
173
229
205
239
230
241
244
214
223
129
137
194
178
229
217
174
190
268
228
192
187
182
189
171
187
212
195
211
191
198
202
243
165
201
229
243
213
205
241
233
173
220
204
215
219
188
188
196
269
228
205
241
180
194
182
204
127
185
206
190
247
146
150
214
162
276
241
265
231
173
214
178
169
167
203
202
178
168
243
211
203
206
203
186
223
154
167
185
154
152
153
209
170
140
177
255
166
178
148
194
182
153
203
191
232
256
158
241
197
179
184
211
167
139
216
183
176
233
221
157
206
226
247
109
185
183
167
229
217
139
186
219
195
242
217
184
143
180
238
244
191
215
243
213
187
219
201
246
141
198
219
215
167
197
254
169
214
145
177
188
193
236
275
177
190
231
217
147
212
206
163
226
253
166
169
170
183
235
189
221
261
199
167
224
172
210
241
214
222
214
141
194
155
191
203
235
241
114
222
200
234
263
211
219
198
200
174
126
217
192
195
168
241
164
209
179
237
231
283
206
188
136
213
215
210
155
229
206
202
226
171
174
209
172
228
236
194
189
197
141
232
210
182
226
138
203
134
216
215
149
223
267
227
228
193
197
195
231
83
214
173
217
230
174
217
201
215
192
274
190
206
153
237
155
219
198
212
201
229
231
185
238
218
199
220
222
246
192
170
222
216
179
185
242
170
211
217
202
203
153
173
152
266
217
174
207
181
224
190
263
211
210
218
183
159
203
207
218
190
156
215
157
189
203
210
196
220
203
222
114
230
181
191
208
201
196
232
297
154
260
177
200
153
230
179
198
269
214
129
170
195
207
214
175
231
211
208
241
199
218
244
209
162
192
186
214
206
197
122
212
178
201
195
193
302
150
228
177
206
202
239
208
220
229
189
212
179
186
205
176
241
248
195
203
176
217
183
232
144
190
192
234
218
219
184
192
226
230
149
193
169
194
205
205
210
188
270
217
198
220
227
225
257
166
238
171
188
220
205
200
195
212
185
264
180
167
148
236
175
191
230
150
205
173
177
244
208
176
230
214
226
270
218
236
164
180
171
168
178
230
214
229
219
170
202
240
166
170
262
187
226
168
160
208
190
229
222
208
119
217
210
187
198
159
229
231
231
163
209
237
200
186
225
217
179
258
228
251
185
157
201
185
121
217
229
110
193
209
202
232
281
233
251
135
192
235
211
159
210
202
157
235
149
137
161
216
197
146
255
209
102
249
189
218
241
180
204
233
200
186
229
262
181
271
133
152
223
265
202
217
179
178
248
200
175
167
204
211
143
181
146
202
191
184
178
176
166
242
174
220
178
213
257
261
194
246
231
178
237
197
179
215
219
239
170
210
194
233
173
230
249
230
195
235
207
245
259
185
226
205
177
194
190
222
113
172
228
227
219
222
228
200
162
231
222
192
200
197
189
206
139
280
219
231
227
181
204
215
173
203
179
256
207
216
182
202
207
249
215
197
205
189
205
233
225
257
195
230
187
184
171
168
191
201
148
201
132
208
237
170
134
209
171
227
204
223
246
186
221
219
169
172
169
229
164
193
200
184
174
241
183
212
219
206
184
188
242
192
167
219
195
201
131
140
165
159
214
201
183
196
282
167
248
139
182
147
204
179
158
160
196
216
270
206
279
205
242
223
147
202
157
212
230
167
190
206
240
168
209
192
187
196
169
202
196
163
237
217
220
217
211
199
202
180
209
237
159
203
236
194
101
182
175
212
160
215
217
225
162
143
230
213
214
179
236
191
179
217
146
177
156
213
170
196
166
205
203
138
209
211
223
145
205
221
177
202
168
193
196
205
238
207
145
191
138
152
250
183
229
179
193
199
169
154
193
182
275
241
259
198
223
201
130
234
230
276
182
165
135
166
219
175
227
222
179
172
121
209
145
191
255
204
182
229
202
203
272
176
207
237
184
173
167
169
181
184
203
246
157
190
169
268
213
180
244
131
215
237
231
184
177
231
275
223
160
175
122
229
229
194
213
264
238
193
247
190
224
183
163
181
201
213
152
186
188
216
223
229
227
158
187
227
195
185
194
163
222
194
207
216
176
241
221
198
209
189
207
250
171
220
219
219
196
197
195
170
155
223
184
227
178
196
271
265
233
216
146
247
238
274
222
269
160
210
203
231
211
166
173
231
161
221
184
219
153
180
184
182
207
223
177
120
200
209
214
239
227
167
211
215
176
228
229
202
134
203
235
195
216
192
207
242
136
174
203
243
179
207
211
161
229
167
182
185
204
189
203
235
265
186
261
213
161
227
188
176
205
237
169
237
226
210
237
278
169
113
156
116
231
189
284
170
220
219
192
155
165
225
191
185
221
189
196
236
206
208
177
204
232
169
230
193
144
169
231
207
269
197
190
239
201
215
222
189
181
223
224
143
115
207
169
212
205
196
250
125
246
148
197
188
237
205
237
220
217
243
197
202
173
210
203
158
236
204
229
199
243
244
224
240
155
137
232
185
174
195
164
210
227
173
249
193
178
241
227
238
180
104
239
190
187
195
229
188
199
253
210
215
196
229
227
150
195
200
228
178
176
225
211
223
109
222
177
240
188
266
181
200
195
171
248
184
113
218
227
267
206
162
196
193
199
157
177
228
168
168
196
263
220
132
153
223
184
254
194
211
220
233
191
205
202
188
198
226
179
223
215
236
202
179
261
179
172
220
199
228
207
241
224
139
176
168
210
223
204
186
181
176
176
128
245
209
197
181
231
163
210
147
194
200
151
183
126
184
215
198
198
170
203
192
202
138
208
175
197
169
208
194
197
172
225
205
191
232
156
124
227
239
155
184
255
213
184
184
216
189
156
270
179
156
167
240
248
201
166
178
199
132
183
179
234
237
210
240
228
208
210
192
216
245
195
226
204
239
139
219
204
201
200
140
211
243
163
194
180
263
210
207
116
173
164
195
191
251
162
208
223
240
200
224
175
245
237
207
206
181
159
270
189
94
212
141
181
211
124
182
240
221
213
217
193
179
223
138
141
209
147
204
251
225
135
197
218
217
205
217
180
303
206
174
234
216
210
228
209
161
209
180
197
204
175
236
209
168
117
234
220
143
223
251
140
228
234
168
177
220
247
209
180
151
180
272
162
196
196
147
185
205
170
190
183
209
118
226
208
194
152
215
153
213
189
152
186
149
203
224
187
161
173
230
173
140
143
219
212
187
159
214
216
223
193
175
203
232
161
189
247
220
180
235
211
189
195
188
243
188
187
192
239
161
216
254
136
225
198
183
240
176
210
200
164
161
194
243
246
149
166
173
228
253
195
232
133
226
167
229
191
157
218
235
250
164
219
186
176
255
227
198
191
160
215
258
159
203
180
224
248
223
236
217
222
216
225
196
233
198
193
169
257
182
192
173
211
152
224
206
181
242
163
226
250
192
189
243
238
192
213
127
194
150
240
156
180
199
217
215
232
206
189
226
174
212
133
211
187
215
190
180
270
192
239
161
205
256
170
218
220
194
246
175
129
198
175
210
191
197
227
184
211
144
180
207
202
231
272
131
158
205
248
213
218
239
198
232
152
227
205
203
210
258
216
216
215
180
231
245
203
169
232
241
235
202
171
159
204
180
168
197
216
223
220
252
211
254
201
204
207
187
172
234
237
159
168
206
181
220
194
139
237
206
184
204
193
142
223
176
202
239
206
165
207
218
203
182
220
222
169
181
249
216
248
245
208
194
169
182
210
178
168
196
204
219
177
179
236
210
199
166
159
195
219
195
242
252
230
132
127
200
205
220
179
225
154
234
200
204
137
216
214
169
154
202
173
158
182
178
146
227
174
193
191
184
218
185
231
189
207
172
187
200
200
222
154
120
138
196
247
155
232
218
158
239
190
254
209
144
216
229
205
221
144
176
210
227
193
239
220
257
212
195
193
174
159
153
199
235
166
123
193
191
160
207
252
197
171
192
178
143
168
201
232
183
165
201
178
207
206
192
205
214
187
157
132
203
237
221
234
186
148
244
183
261
199
185
190
213
156
238
206
199
175
226
186
199
190
246
173
170
168
184
150
225
178
154
163
217
213
145
211
237
182
202
133
201
230
162
161
215
246
165
218
211
206
154
153
182
217
176
158
154
156
165
157
170
217
174
180
167
203
228
220
170
205
242
191
155
141
212
159
234
218
228
166
188
215
161
197
265
231
133
234
239
210
180
158
246
208
238
200
183
219
192
180
211
218
143
202
234
230
193
178
138
203
231
178
206
212
186
223
211
228
130
206
195
222
199
189
222
226
186
214
161
203
151
186
240
218
182
194
217
216
152
154
208
200
184
199
139
213
227
205
174
179
207
122
209
280
203
223
240
114
166
214
184
225
251
239
187
157
178
146
227
205
180
203
189
190
203
164
239
229
238
209
174
190
252
244
191
244
236
150
268
230
213
227
195
198
203
194
198
193
190
177
188
230
200
220
195
188
240
239
212
160
204
171
189
233
190
170
225
139
257
218
148
169
219
204
227
205
219
189
228
178
187
145
190
195
172
188
232
151
244
200
169
168
246
174
225
197
152
222
150
227
188
197
203
141
155
208
226
237
191
202
162
242
210
248
130
236
211
248
210
209
248
153
155
181
193
208
215
198
219
197
159
175
222
216
213
207
186
230
239
182
123
180
164
261
161
157
158
144
230
159
148
167
205
235
201
163
204
227
221
199
200
183
231
206
215
243
188
244
231
266
213
230
230
135
232
200
225
210
178
224
196
258
175
173
243
233
202
95
210
282
178
209
187
135
161
241
218
189
204
264
198
224
257
212
202
187
254
192
305
262
237
166
161
196
237
151
191
282
173
169
239
176
184
193
152
143
204
215
165
212
221
218
202
213
267
226
122
211
163
183
220
184
198
183
174
208
229
272
265
266
230
169
236
174
191
167
244
210
152
186
203
181
164
224
210
180
240
210
146
210
224
237
157
236
225
186
236
194
184
235
188
193
201
161
219
189
165
202
222
172
223
195
216
225
169
219
181
227
217
179
205
152
162
160
195
146
226
170
185
245
239
213
132
234
197
252
216
199
171
229
148
206
142
178
226
143
161
223
198
250
248
156
243
177
174
142
194
204
136
265
235
212
192
222
183
174
182
220
163
187
165
253
192
156
235
216
179
193
262
189
216
207
219
178
251
224
194
235
162
196
219
175
212
200
198
232
176
184
232
150
264
127
176
184
197
173
148
229
215
190
233
173
260
230
155
224
188
213
176
236
244
172
210
204
192
229
110
234
248
209
185
180
88
117
166
199
239
201
173
226
223
220
211
132
237
218
210
177
221
199
194
230
173
217
201
243
244
186
191
251
229
295
186
198
231
211
235
221
226
146
197
168
214
222
188
191
197
195
161
239
187
230
170
168
196
185
152
147
218
245
208
237
181
250
143
242
202
195
225
144
147
134
197
253
244
220
261
126
230
213
209
202
248
216
178
224
191
201
191
178
140
122
156
213
223
151
203
164
155
149
229
253
235
141
261
199
227
218
175
183
195
206
210
137
224
188
184
143
241
194
136
175
175
208
228
241
171
232
225
213
215
211
252
200
144
222
157
264
176
195
215
192
202
229
222
202
156
205
231
203
239
222
205
204
184
211
177
194
183
251
177
122
224
221
170
282
225
194
231
173
231
186
164
206
162
223
131
193
176
167
151
227
198
197
187
198
174
167
190
244
205
163
193
252
187
177
155
208
243
207
209
163
228
197
208
189
210
191
223
179
182
127
145
210
212
190
196
133
221
191
217
231
193
185
138
202
185
154
180
181
181
210
210
197
238
247
203
204
201
159
173
254
199
179
261
233
202
237
213
184
177
254
252
183
188
130
194
196
214
180
137
218
199
208
197
179
160
212
212
195
245
256
208
182
186
137
241
161
221
231
230
205
208
116
165
180
182
192
170
172
252
228
169
161
193
199
183
183
188
236
235
165
227
177
197
166
216
228
164
234
200
188
203
220
212
170
238
189
187
235
151
238
185
182
163
169
163
236
235
210
189
237
166
179
252
169
221
165
148
237
168
228
217
181
240
177
202
209
157
222
205
196
194
202
143
169
153
172
269
188
187
182
129
198
236
158
186
236
201
221
217
206
218
202
176
186
148
150
180
166
169
221
160
180
162
171
273
155
231
183
175
200
193
223
160
207
187
204
168
170
234
195
199
148
147
209
128
180
229
185
215
224
166
181
176
194
175
182
234
223
155
241
185
282
220
199
239
170
205
201
202
244
164
184
156
228
124
175
208
199
201
157
172
246
189
257
225
200
268
263
219
198
233
179
219
250
202
232
214
189
179
139
191
192
169
152
177
198
194
200
146
224
218
172
220
122
157
204
178
171
245
152
221
200
215
187
151
202
221
192
185
227
251
195
217
200
184
141
198
245
135
214
220
174
192
234
261
139
146
185
229
276
129
212
168
202
180
210
132
169
190
243
206
205
205
195
236
230
220
179
126
229
207
173
174
246
236
186
177
210
232
166
194
161
222
207
189
220
217
133
193
188
258
141
167
174
210
190
230
229
237
241
235
194
127
201
192
238
252
181
174
265
229
226
267
134
207
141
219
191
178
138
255
223
201
202
242
245
216
177
187
217
255
181
186
157
191
167
160
195
249
190
135
184
239
245
192
208
215
186
157
197
173
231
218
197
171
148
221
147
251
249
230
201
178
215
158
180
177
197
217
181
276
165
257
264
161
176
153
214
159
208
206
215
222
177
170
202
214
191
222
200
186
237
199
140
195
156
174
244
216
225
187
107
161
255
189
193
188
199
153
228
213
184
179
236
185
180
150
208
141
217
245
134
211
193
131
136
228
168
192
185
241
187
223
210
177
237
201
191
187
267
232
230
182
218
166
209
171
179
225
213
214
184
199
237
158
260
228
193
156
208
230
191
215
213
238
218
222
195
182
195
163
269
213
177
207
158
180
153
181
224
205
203
239
206
215
178
214
206
208
214
225
185
191
207
150
219
200
205
216
199
246
213
206
161
203
164
234
172
174
211
210
226
183
161
195
180
200
280
232
210
200
191
204
134
181
201
232
187
254
208
248
197
200
187
127
188
134
201
174
244
196
150
173
229
194
215
157
155
125
228
246
159
177
199
217
189
269
148
228
209
245
184
228
207
262
208
216
193
184
221
190
166
251
224
205
206
242
143
206
199
166
196
145
167
245
246
170
167
234
191
232
204
217
217
199
192
136
192
174
222
199
183
217
189
164
184
200
177
222
235
186
194
277
151
203
217
179
193
211
223
183
201
184
195
183
232
175
156
184
206
163
168
195
188
206
268
236
254
197
239
174
234
154
179
220
208
201
177
224
229
172
224
219
241
178
192
159
186
246
215
206
204
193
179
133
174
213
227
205
251
185
243
169
178
186
249
164
230
189
198
197
178
133
175
199
180
219
220
140
143
193
138
239
256
232
222
200
205
274
190
194
241
236
253
207
220
229
165
213
266
208
118
156
192
163
220
193
228
177
190
212
227
192
185
230
225
137
251
203
201
243
188
206
185
234
179
196
224
177
218
196
185
203
217
254
185
222
174
213
241
205
200
199
128
216
163
202
214
213
247
241
198
195
197
170
236
194
180
180
215
206
200
211
205
206
240
254
199
238
205
224
262
173
192
170
251
226
196
248
202
222
215
213
196
237
233
230
226
230
204
196
214
200
172
218
220
239
178
225
212
179
176
207
205
152
234
203
175
181
246
229
218
178
204
240
199
247
189
265
203
177
237
280
185
236
199
198
256
170
226
216
222
237
234
210
195
232
244
173
177
212
232
177
128
232
214
225
214
172
243
230
205
179
232
147
136
251
161
203
200
199
226
164
240
186
217
198
243
239
228
168
187
177
219
123
208
229
174
137
234
233
244
126
231
178
214
236
131
205
175
226
171
225
234
181
194
139
205
138
212
190
217
175
217
224
153
272
173
200
201
176
167
257
237
206
179
223
127
159
258
163
227
236
192
159
247
222
180
202
201
209
170
229
222
231
147
234
192
200
211
174
224
261
231
176
166
176
216
247
222
208
212
181
171
229
246
124
173
153
222
227
188
197
269
228
172
129
186
157
206
251
205
221
213
218
198
196
219
254
155
220
191
191
248
197
159
235
198
224
190
191
235
149
239
180
265
198
183
207
176
209
188
177
174
204
221
170
197
188
192
206
156
209
233
164
157
175
218
163
158
233
241
192
180
183
185
162
104
230
259
198
234
147
164
237
159
176
143
189
235
226
252
246
164
239
243
192
225
140
206
180
188
230
267
192
182
209
251
204
178
220
202
247
224
210
204
209
220
231
189
219
207
176
141
210
221
237
201
202
200
191
212
175
161
175
213
174
198
186
216
184
199
218
237
305
218
179
198
220
276
229
173
208
211
140
199
157
177
236
265
231
232
163
218
207
177
207
218
229
265
146
175
169
173
259
220
209
223
195
222
218
249
190
185
230
206
118
190
221
191
222
284
171
246
237
198
163
230
179
221
194
226
177
248
142
181
150
228
175
229
222
159
139
249
209
189
220
265
200
251
119
177
202
210
176
165
183
170
198
220
224
168
196
212
156
221
217
189
204
159
243
192
174
173
191
262
266
176
248
129
186
186
168
234
199
203
171
235
269
155
210
178
174
195
248
181
177
163
206
234
166
136
165
198
256
219
155
197
166
222
236
185
213
183
207
203
219
235
160
181
186
204
183
221
147
166
226
177
198
172
211
212
137
92
201
261
190
226
214
168
274
191
200
205
241
179
245
189
209
220
225
287
247
240
142
183
206
278
202
120
231
223
153
236
176
166
225
170
204
152
221
175
199
220
200
195
211
228
214
167
218
283
152
198
276
222
200
188
167
206
217
169
158
213
168
220
154
243
214
223
193
169
203
132
207
240
172
214
238
115
213
176
156
195
205
167
159
245
134
178
184
208
176
180
208
178
197
228
237
193
234
223
159
204
183
184
158
174
210
217
216
202
195
159
155
190
226
184
179
260
240
226
154
196
240
149
189
228
203
196
203
186
144
245
207
263
165
241
240
254
208
189
225
181
156
281
199
229
140
210
169
230
244
236
250
149
167
184
184
238
156
133
196
189
214
281
219
174
199
183
214
209
215
266
212
188
164
194
257
192
202
213
227
187
187
197
210
222
181
120
211
138
166
225
251
194
182
183
212
244
255
278
186
219
154
210
122
212
204
180
191
222
258
245
208
205
147
161
188
198
177
243
189
252
208
181
207
201
179
223
180
163
237
205
135
209
228
166
236
227
231
213
180
170
162
180
172
197
233
210
199
186
222
246
236
222
159
160
193
214
195
152
162
218
219
232
248
252
183
237
195
114
172
183
191
152
205
220
167
151
208
186
216
262
193
225
174
194
187
181
187
177
222
193
163
255
263
198
180
224
230
235
172
247
250
194
239
187
187
144
186
147
234
214
243
120
188
214
146
285
206
248
240
227
193
225
198
264
243
226
202
152
261
221
174
251
214
220
244
272
207
161
232
176
157
192
165
219
234
203
260
242
188
237
209
188
211
163
176
232
214
189
173
198
220
180
251
225
200
219
245
194
238
211
243
222
184
182
213
150
151
235
200
237
205
184
186
189
174
133
147
236
229
176
213
210
166
201
202
207
213
114
223
235
183
247
204
258
150
241
188
199
204
156
135
184
191
224
169
217
217
154
218
187
217
171
162
245
224
197
264
158
230
202
140
239
231
210
201
222
228
179
165
224
230
220
176
184
279
185
180
251
239
238
230
196
188
192
218
236
211
234
258
244
175
193
183
180
187
212
238
202
193
246
198
163
195
180
218
161
192
152
181
190
160
252
186
234
197
204
136
198
247
186
163
227
199
185
194
209
193
223
174
219
156
157
173
216
225
270
222
166
209
182
209
211
211
280
153
222
226
223
206
209
207
184
129
199
208
175
143
212
194
206
181
156
202
166
232
219
181
211
224
209
172
204
218
178
209
186
191
210
142
205
183
233
132
175
175
160
189
203
228
184
224
131
184
201
199
293
196
209
230
175
222
214
224
179
188
183
228
209
196
182
206
230
217
215
177
184
206
133
244
233
214
179
225
185
171
216
192
172
232
221
126
259
192
168
241
250
195
258
157
183
181
219
203
220
203
223
162
184
173
173
184
172
177
179
224
173
187
249
208
266
236
179
224
261
281
195
205
190
221
194
203
147
215
159
207
204
216
214
235
196
200
140
166
188
213
217
125
177
168
216
237
165
208
260
238
225
217
242
182
129
213
233
208
180
173
213
162
222
247
233
218
263
214
228
220
223
254
147
215
212
300
173
250
145
209
219
206
216
172
214
188
185
164
196
166
198
240
176
194
165
237
246
235
143
241
179
167
138
150
222
165
258
208
242
189
213
227
238
164
225
182
196
221
170
211
165
217
181
222
171
174
122
172
224
232
224
209
183
162
256
227
229
224
231
139
215
266
152
221
203
149
170
133
168
184
134
204
202
232
224
248
97
172
181
225
228
183
188
227
155
208
199
197
217
221
180
149
263
226
188
186
219
191
127
145
207
172
209
237
157
227
196
266
200
219
209
189
230
199
182
201
195
218
195
164
191
218
208
231
190
227
278
235
195
201
129
196
194
191
207
215
172
188
190
189
190
183
178
193
183
185
156
204
210
205
186
175
173
247
248
181
263
197
212
201
221
227
138
187
229
152
155
191
209
212
214
208
233
236
230
191
198
136
174
193
163
185
210
226
160
183
180
145
158
224
199
213
259
262
137
238
213
135
230
191
218
196
264
210
176
188
194
208
215
230
176
241
194
192
218
227
280
263
182
220
240
218
190
213
208
180
175
180
174
190
207
159
159
211
178
222
178
227
220
186
264
206
260
254
207
205
239
206
256
139
208
214
258
215
201
223
183
249
250
243
200
185
214
216
174
236
148
163
190
249
218
220
214
212
228
244
198
227
225
272
190
246
170
204
176
188
143
208
158
135
212
214
198
181
210
270
228
165
194
203
232
233
154
158
240
118
173
161
189
215
185
231
215
171
188
189
169
176
226
206
197
254
189
137
175
140
235
239
235
187
168
119
162
244
243
212
222
193
193
132
140
223
138
170
215
209
204
221
241
211
197
175
172
216
246
177
183
188
167
181
244
193
199
214
266
195
151
214
221
199
244
204
214
175
238
212
193
175
150
212
196
186
227
221
256
195
206
195
204
198
185
232
194
143
204
185
170
203
226
246
155
152
211
235
222
160
148
254
200
194
287
178
205
195
166
180
160
236
213
212
219
227
157
246
239
252
150
240
214
259
177
234
215
182
172
214
187
210
178
191
204
212
203
164
242
166
187
166
197
208
221
230
259
165
197
208
161
186
216
262
192
232
227
234
244
236
231
248
217
154
196
211
226
155
197
200
205
274
160
240
202
198
197
212
206
228
226
186
251
262
123
192
125
195
190
219
218
265
150
209
162
192
218
178
210
277
157
206
151
206
180
192
167
140
218
178
266
212
175
231
272
218
204
238
121
201
200
204
148
276
153
138
133
193
185
193
230
175
149
224
148
252
153
240
213
179
246
191
190
209
243
164
224
229
195
240
137
221
194
185
221
211
184
234
215
127
177
246
235
150
242
154
206
171
260
178
231
185
251
217
159
221
184
257
253
152
200
171
186
182
255
176
211
96
244
206
177
171
172
230
212
186
219
224
182
226
156
172
149
194
270
217
231
201
232
192
198
185
178
214
179
188
235
199
215
217
216
246
208
261
158
140
185
205
260
192
140
209
187
203
196
206
236
197
211
133
238
237
192
221
219
222
226
126
221
235
158
172
240
217
226
254
156
223
201
192
138
142
188
185
224
221
138
182
237
198
196
115
206
186
233
261
236
165
184
220
218
204
206
206
183
170
176
153
200
113
216
217
187
181
169
141
167
195
171
243
177
180
224
203
187
220
128
177
270
228
164
189
106
175
186
169
207
202
251
146
239
210
216
213
209
177
198
239
187
154
244
228
176
174
158
179
216
249
191
201
195
201
222
172
205
249
194
215
204
166
250
207
162
147
195
177
216
187
204
203
133
248
250
199
145
128
210
221
179
189
215
142
159
191
134
194
162
193
206
251
215
177
209
224
202
138
184
176
139
180
155
131
218
233
256
199
260
254
152
179
186
169
209
146
187
239
173
243
218
214
200
247
200
209
235
183
166
255
212
140
212
170
230
208
239
191
251
182
181
163
224
175
220
151
199
139
207
143
146
190
223
164
206
106
196
203
198
145
235
166
217
227
212
196
200
176
176
197
204
201
135
207
210
160
164
127
200
181
241
285
174
183
206
146
204
243
188
213
253
234
175
215
193
243
188
194
231
194
210
248
156
148
201
135
225
234
214
212
159
189
234
154
210
156
207
138
266
179
201
223
154
224
204
128
139
133
224
169
196
234
237
225
193
179
204
195
184
184
197
151
194
249
242
183
162
154
241
236
220
206
254
206
193
218
217
167
247
162
236
211
238
224
258
280
221
170
162
228
202
230
161
183
222
214
221
242
182
210
200
237
208
183
199
228
187
162
162
219
225
183
161
157
151
186
206
193
199
177
175
249
201
187
162
215
215
138
174
164
230
180
251
269
113
178
182
248
259
172
175
205
181
225
210
211
202
144
197
168
169
166
205
219
285
201
249
213
164
196
220
187
180
220
200
248
217
134
147
236
248
170
247
180
212
189
246
274
167
156
188
251
206
275
183
197
138
196
223
175
230
160
232
155
167
175
146
209
130
174
178
240
204
237
223
240
140
228
227
157
183
176
196
186
252
168
221
191
163
223
240
188
178
150
237
200
220
193
241
240
157
207
202
208
262
169
181
166
163
210
171
190
210
188
229
208
213
263
179
256
188
239
209
220
195
173
177
257
215
125
229
197
167
257
160
227
262
159
206
155
215
181
171
231
209
226
130
228
246
178
160
202
195
229
169
262
206
246
241
180
254
212
223
192
201
187
221
173
194
173
178
139
194
195
222
208
264
237
228
210
168
190
216
213
235
243
199
175
171
186
199
195
201
186
220
177
235
232
190
185
192
184
226
181
234
168
201
219
241
164
179
232
218
191
212
191
141
265
206
175
152
187
213
226
223
202
247
151
217
170
168
213
164
194
179
197
192
217
164
175
215
175
254
163
277
280
234
177
146
214
206
174
223
195
221
157
175
173
228
221
232
264
219
236
262
156
175
219
163
212
179
174
205
220
146
174
223
199
190
266
233
227
225
183
237
148
244
173
226
227
89
231
129
177
185
199
220
176
204
184
144
232
194
226
255
187
194
196
220
215
214
199
183
230
244
213
173
283
199
231
251
247
176
249
230
211
236
189
202
149
153
163
235
250
208
199
213
230
222
282
267
172
194
238
186
178
179
242
213
178
257
214
201
186
229
226
200
207
183
205
167
162
202
188
181
119
167
201
189
166
230
173
210
143
188
213
236
166
218
197
202
257
229
218
198
129
222
185
208
148
181
225
218
149
176
241
227
119
218
223
229
221
164
150
207
229
141
186
163
184
249
191
158
176
221
215
210
173
266
177
242
203
249
239
209
235
171
258
236
213
215
211
182
278
205
169
214
233
190
201
248
161
259
194
195
188
232
192
226
167
183
189
213
254
181
104
210
178
203
232
246
145
233
198
183
173
216
229
214
232
191
197
172
232
227
195
208
237
186
184
211
154
227
241
260
222
164
222
234
226
204
159
178
188
159
253
171
199
163
201
191
189
149
236
209
255
228
165
228
215
166
221
229
202
114
213
190
196
187
259
193
206
147
190
132
193
192
200
168
146
198
212
251
226
236
223
218
166
215
235
242
191
256
199
210
160
209
235
169
178
168
179
187
228
236
232
141
198
236
222
189
241
269
211
177
240
202
168
206
249
238
201
208
213
179
214
130
169
209
190
144
207
192
174
229
195
157
155
238
165
174
201
160
222
136
138
238
191
218
220
153
205
162
169
208
209
230
184
185
195
224
229
157
211
101
217
183
156
287
138
182
252
197
197
138
258
194
232
202
216
201
222
158
204
191
193
204
196
242
211
207
229
220
180
180
170
191
174
201
214
167
224
123
134
111
193
168
164
222
214
178
243
137
211
169
170
182
87
233
220
214
203
206
242
195
157
219
239
185
190
168
191
207
151
233
214
149
261
224
167
176
169
176
255
217
209
196
204
239
159
199
253
176
177
190
202
209
265
112
206
281
227
171
218
185
245
185
194
206
197
218
195
164
170
246
198
217
236
194
194
249
153
200
167
196
228
208
164
160
172
183
235
240
222
259
234
150
184
219
223
155
191
177
239
205
141
132
196
191
196
225
182
227
210
155
198
202
137
188
169
225
185
157
163
244
172
153
247
177
155
178
243
243
202
197
221
170
154
218
227
184
204
214
192
197
219
194
204
158
204
181
262
273
219
180
134
187
160
282
195
218
191
163
159
198
176
167
205
167
244
300
243
154
214
191
223
182
190
176
100
226
171
212
197
153
171
234
123
176
277
172
185
222
219
145
219
132
226
130
121
222
219
146
196
212
247
168
226
199
200
204
228
200
218
188
174
187
250
147
201
215
223
111
165
179
139
207
193
231
240
163
224
233
189
202
180
184
185
207
158
196
207
189
272
175
228
182
190
202
192
174
166
244
236
199
194
208
177
194
121
221
174
228
221
138
225
184
96
249
188
152
236
213
258
155
185
181
237
275
223
205
162
195
132
231
180
184
168
276
194
159
191
167
186
213
187
198
177
219
229
214
139
209
184
179
189
205
212
201
262
138
194
221
211
260
240
239
207
219
228
260
259
223
155
240
182
189
224
247
162
182
200
210
161
167
208
188
178
212
236
166
175
178
220
224
219
194
247
195
237
207
191
270
170
266
251
219
233
182
194
255
146
192
215
185
276
146
173
228
190
220
240
161
143
231
212
153
198
163
174
179
208
199
175
204
160
244
153
144
171
231
224
200
266
176
233
265
196
143
176
250
229
106
215
171
217
224
203
225
185
186
185
174
233
145
174
210
171
153
217
188
223
290
143
235
181
166
217
219
161
174
146
236
231
160
140
204
233
270
208
225
173
216
191
211
216
213
210
195
195
266
224
195
174
260
217
263
190
187
213
127
232
185
145
199
192
245
195
183
180
132
221
213
192
203
197
231
212
201
241
191
189
175
233
178
182
196
259
168
239
200
169
232
281
186
214
96
280
199
186
188
213
235
200
193
177
213
224
197
200
205
169
181
176
202
174
190
141
232
244
173
149
165
173
229
257
204
245
242
210
250
160
222
206
128
208
217
204
144
230
195
164
196
164
175
183
150
265
185
203
186
221
232
207
225
201
194
149
221
167
177
183
160
248
135
229
205
113
155
199
143
152
266
168
238
214
179
199
181
188
177
214
200
194
211
252
158
228
198
157
249
213
236
237
258
236
190
256
212
171
191
196
202
255
209
204
194
199
239
179
166
220
218
256
209
161
216
185
177
196
242
216
178
253
158
125
180
185
195
143
236
272
176
225
157
224
207
162
181
204
229
207
160
220
210
239
229
114
194
168
180
174
159
246
136
142
242
145
166
200
214
193
192
233
202
265
254
173
247
251
245
216
200
258
184
216
157
169
164
208
185
243
248
218
169
257
228
184
221
212
196
166
205
157
157
219
166
235
252
207
252
127
149
231
210
190
234
187
190
157
196
178
169
222
258
171
126
215
158
227
261
113
161
170
186
155
160
176
199
175
176
175
192
231
174
189
97
203
238
182
211
123
166
167
255
219
166
205
243
188
187
217
196
192
197
247
256
252
204
226
233
258
218
217
177
205
194
253
220
229
172
196
202
177
244
184
158
197
203
216
155
152
216
203
151
293
213
194
175
238
229
195
168
212
259
150
262
215
248
191
176
246
185
219
227
155
237
208
199
191
144
229
154
215
234
241
220
243
228
188
210
231
253
213
129
245
210
250
223
166
195
190
278
219
222
217
133
241
170
178
165
206
179
205
137
200
152
213
142
237
218
177
202
198
170
279
255
280
194
132
155
193
209
214
245
249
242
221
152
257
198
205
223
128
177
184
171
203
248
189
143
216
223
196
263
204
210
203
187
163
182
212
190
256
260
212
250
125
207
210
168
199
179
191
183
188
157
208
204
106
227
161
183
210
207
176
195
208
218
226
157
170
229
220
148
171
225
230
147
168
216
234
197
203
217
254
216
203
224
218
189
171
181
217
208
261
253
222
218
146
242
198
223
162
244
230
208
176
167
218
240
244
203
176
189
212
180
205
202
245
217
209
267
213
196
209
151
242
184
239
140
217
199
170
239
198
171
217
168
155
181
235
209
214
298
196
251
261
224
213
195
169
177
240
132
141
201
211
236
209
198
178
185
233
202
148
217
201
191
202
210
186
138
182
240
161
247
212
250
254
189
160
177
204
155
193
219
243
188
200
192
201
213
252
214
164
231
191
187
219
281
236
261
186
156
136
218
179
189
217
151
136
170
195
228
174
241
196
203
223
204
230
303
256
192
231
146
118
166
248
196
153
170
161
201
271
134
238
221
201
170
208
215
243
221
209
199
153
223
222
164
194
163
165
201
238
192
217
214
175
127
192
152
180
158
207
220
175
150
183
217
157
223
243
194
234
203
221
207
162
240
186
149
223
111
222
175
179
160
192
224
129
246
224
263
191
192
206
235
218
254
164
219
177
133
191
194
177
176
182
226
198
167
156
153
184
248
280
210
215
189
161
206
181
178
209
230
234
190
198
163
170
241
181
121
204
217
139
179
145
209
231
246
223
190
233
209
191
217
191
225
244
237
120
151
241
168
170
154
229
231
182
214
176
215
189
226
166
206
257
247
173
237
224
181
100
191
181
236
218
194
199
166
213
254
181
221
181
213
271
190
263
236
200
141
135
248
244
197
211
168
203
248
199
204
270
216
200
152
116
152
160
159
229
247
221
273
203
179
182
180
218
246
214
188
213
153
216
221
230
224
217
152
194
223
225
249
220
106
162
223
220
197
245
229
185
154
154
194
180
170
170
141
172
143
213
181
226
186
186
244
182
195
253
230
239
151
196
186
217
221
189
237
206
197
233
207
184
177
256
210
154
207
180
204
235
206
154
203
190
237
199
169
245
199
189
160
209
179
201
262
162
242
254
226
217
247
250
159
155
197
196
197
191
190
240
200
258
147
217
216
253
209
161
167
150
221
211
228
107
205
219
210
202
228
182
198
218
148
197
241
143
152
208
214
257
209
223
184
216
251
141
211
213
179
248
196
171
239
211
232
255
195
175
256
175
150
188
192
199
176
226
156
206
183
140
184
224
226
221
199
227
137
198
197
188
176
119
181
151
235
174
181
243
163
245
219
173
242
241
136
214
240
165
156
187
193
230
238
263
207
160
241
231
190
200
238
148
151
250
240
208
215
139
201
173
188
230
197
156
179
158
251
198
214
174
182
117
223
187
205
186
199
125
220
228
229
233
126
225
152
229
226
127
227
182
193
266
178
226
212
190
178
189
138
223
196
242
147
245
190
136
228
151
242
179
170
262
203
186
125
217
201
250
197
167
232
151
151
220
212
211
201
160
195
227
189
187
183
207
216
217
215
194
215
175
182
185
119
192
204
222
185
186
214
186
211
223
193
300
201
216
263
170
220
144
197
177
204
159
191
192
238
175
237
138
198
238
226
184
191
230
215
192
195
225
220
158
245
240
173
180
196
207
202
212
190
225
136
186
220
164
237
196
204
223
179
257
178
208
230
187
164
178
233
168
252
181
143
142
199
188
185
205
173
237
162
166
197
219
210
237
212
184
249
216
199
164
186
247
204
206
229
155
230
187
183
168
181
166
159
149
222
198
215
181
201
165
210
244
177
188
161
209
203
216
167
230
239
244
220
204
170
220
191
205
198
241
210
206
209
186
147
181
252
239
185
165
204
239
135
168
196
166
240
218
193
249
187
184
216
200
230
192
185
223
191
226
244
213
197
194
160
175
212
207
241
272
201
182
163
218
222
160
175
253
219
204
211
209
232
179
216
170
260
199
240
174
177
169
175
160
229
168
180
218
234
258
144
144
196
218
256
166
255
228
220
196
169
215
185
130
191
167
123
211
241
199
213
245
209
141
216
221
190
171
175
177
193
194
143
193
160
189
160
162
267
220
196
193
187
184
237
192
221
156
200
224
190
204
258
171
206
136
156
210
248
215
167
181
160
248
192
169
148
224
220
177
214
186
198
228
204
214
151
192
177
187
224
215
112
267
186
229
158
191
190
175
229
221
200
201
201
253
211
262
246
252
195
176
281
232
228
161
143
203
232
163
171
203
212
229
167
156
200
198
167
226
183
229
197
229
231
235
203
198
217
184
251
226
159
217
177
215
189
275
221
181
201
206
211
161
207
259
197
217
158
213
227
187
192
137
213
161
214
192
147
170
194
239
225
158
191
244
196
200
191
232
227
255
212
230
192
207
181
188
235
213
238
158
235
241
133
207
167
139
156
153
212
268
183
221
157
215
228
192
220
167
213
164
298
225
247
163
183
229
182
214
233
183
207
167
200
219
214
169
208
210
178
243
242
174
198
224
249
227
223
219
222
208
190
181
218
172
184
167
264
265
182
196
214
168
217
250
212
232
181
233
208
240
252
153
243
192
140
189
171
256
229
240
225
205
168
194
210
201
200
153
256
175
166
242
200
141
175
215
175
233
174
161
236
217
226
204
216
211
188
188
190
186
188
167
191
218
232
224
166
262
220
216
202
211
248
192
200
261
149
171
213
193
186
180
103
119
216
196
243
196
249
186
139
209
246
253
212
191
143
198
140
157
219
218
242
240
162
219
209
226
180
202
187
158
177
186
156
211
237
218
203
239
193
179
175
196
242
193
227
190
152
158
213
190
226
193
173
205
172
229
211
259
251
188
133
139
196
192
229
154
213
235
183
236
193
239
199
186
207
180
196
173
219
216
166
188
220
204
243
164
166
224
211
198
241
206
235
161
242
213
171
177
223
171
125
208
160
188
194
255
195
250
238
104
167
255
214
186
188
172
194
278
230
231
210
263
222
178
166
246
283
218
227
239
240
253
283
194
161
181
221
192
212
165
151
217
232
230
260
193
177
178
199
255
123
130
198
212
173
214
130
226
183
205
149
205
252
212
208
218
208
204
167
267
160
190
231
229
174
192
156
190
104
251
161
149
201
161
216
222
164
158
214
205
208
189
220
233
140
210
240
176
166
145
154
148
172
211
185
211
232
225
133
239
222
209
177
195
182
227
179
217
189
205
207
174
208
207
184
183
146
239
186
189
215
168
165
202
227
231
194
207
228
185
220
155
208
231
216
233
182
192
202
227
231
196
198
199
274
228
143
265
193
229
196
252
133
226
248
202
216
219
143
196
204
232
177
192
195
202
251
268
199
237
243
268
220
177
241
237
190
151
157
156
164
193
205
225
140
226
170
187
168
218
187
206
122
186
218
210
156
193
212
228
222
240
207
173
253
194
136
221
216
139
190
206
211
181
180
190
150
203
202
171
191
203
275
195
239
185
191
224
191
227
211
174
148
155
243
241
204
146
226
236
251
251
187
198
263
167
240
154
171
224
185
191
166
267
227
252
132
221
278
205
185
242
194
213
173
235
200
224
143
219
211
238
238
158
181
198
250
250
232
203
170
232
175
235
218
244
155
206
211
212
236
202
208
186
207
209
269
185
218
179
180
212
252
218
250
201
218
160
208
242
190
239
229
131
179
211
239
199
193
167
279
244
259
194
210
216
218
162
159
181
205
275
209
170
176
85
209
232
197
196
219
241
185
110
131
216
197
190
214
235
173
205
192
236
185
176
148
197
224
156
179
125
241
183
206
199
168
181
182
223
210
209
173
192
231
192
196
125
196
199
204
220
206
228
154
270
180
152
202
181
189
207
218
187
203
229
201
155
172
204
253
159
169
176
225
175
202
243
259
210
187
197
211
166
154
163
239
219
215
198
195
205
230
209
229
185
233
151
230
211
243
179
201
196
198
170
194
210
233
200
149
187
220
182
233
262
156
227
233
221
254
252
242
172
173
164
228
240
221
239
186
255
248
207
195
210
249
247
196
189
190
149
180
189
221
191
127
226
165
239
185
217
113
205
198
202
181
201
202
281
169
162
185
184
171
192
125
188
253
217
250
152
204
154
197
212
251
188
258
216
210
200
223
216
212
226
220
198
177
226
268
157
244
151
226
164
235
172
189
219
187
190
189
182
197
135
206
134
243
212
237
189
174
186
232
229
220
208
226
193
195
191
195
163
163
195
217
240
177
244
183
198
177
116
173
210
179
190
191
251
231
231
208
180
232
215
202
172
258
199
174
139
208
185
202
256
235
228
202
213
204
186
216
187
197
109
173
239
168
226
224
237
208
157
214
137
238
211
259
130
165
184
216
205
241
203
189
171
230
152
148
242
195
198
206
246
241
183
209
171
234
191
133
188
228
228
202
191
163
201
113
205
129
254
243
214
203
197
167
261
249
161
198
215
217
149
168
234
161
226
192
216
148
175
259
191
216
181
239
243
176
182
242
217
232
204
184
237
227
249
221
143
152
186
198
257
149
173
197
186
214
236
221
121
183
200
264
193
219
181
149
243
228
193
198
198
123
260
261
161
217
246
203
199
155
132
225
187
221
184
182
244
173
166
186
270
202
245
170
203
175
169
199
237
258
157
183
246
211
219
171
269
156
177
222
220
153
181
203
186
195
191
224
169
178
189
210
120
221
170
264
168
174
254
192
192
192
209
214
208
244
172
145
173
202
219
149
204
154
233
164
200
257
149
199
250
151
205
172
120
211
201
190
210
205
191
208
189
173
245
200
232
212
180
219
221
211
192
202
155
175
204
206
237
216
183
261
122
208
218
171
200
211
151
185
158
188
158
149
191
237
237
273
179
214
169
200
235
236
238
238
219
155
204
190
161
222
217
222
210
238
210
163
118
181
153
187
164
168
205
185
158
139
178
168
171
225
143
204
174
166
145
167
220
167
198
246
195
228
217
188
192
225
218
194
174
227
156
210
288
222
158
155
210
204
210
222
222
160
245
275
201
208
202
249
174
214
203
204
205
151
123
142
243
197
208
214
179
192
237
219
234
278
193
146
134
284
175
189
152
178
216
202
177
227
226
260
182
233
223
196
198
176
244
229
252
183
223
201
168
182
163
247
222
219
135
159
210
165
187
222
208
240
192
235
220
266
222
192
269
165
258
193
224
159
175
200
272
271
175
197
196
210
160
223
211
210
247
251
194
153
216
200
158
188
204
180
236
124
173
137
253
218
218
243
186
238
169
158
180
188
206
198
198
250
191
185
215
182
201
198
196
159
256
229
191
98
232
284
194
199
135
192
139
235
186
193
138
158
212
127
257
209
137
249
173
155
221
194
208
211
212
221
216
234
165
193
149
225
206
277
190
136
224
120
170
155
143
176
124
197
183
152
211
173
158
155
227
189
172
160
197
184
178
202
190
236
211
177
195
234
169
208
218
108
195
230
224
224
173
244
160
265
211
215
261
221
206
184
182
242
204
282
191
155
290
256
223
205
173
192
286
80
238
255
214
222
176
234
280
215
195
231
192
183
155
233
167
195
272
173
176
214
234
230
208
158
146
222
204
137
172
241
141
258
229
138
212
179
238
174
177
126
188
225
172
223
233
125
218
235
156
150
193
246
136
148
216
217
199
197
177
244
231
226
164
166
219
179
292
214
192
224
141
252
213
168
214
183
203
222
186
204
143
210
217
216
209
168
166
109
198
180
187
212
165
202
268
174
147
233
226
176
235
211
146
156
187
220
170
239
210
247
182
148
207
179
117
188
155
214
140
212
192
261
170
179
238
185
200
190
209
207
211
227
162
202
197
211
201
202
196
128
195
161
220
177
173
180
179
195
240
209
237
211
192
231
196
211
167
165
220
150
165
215
220
158
189
160
169
169
181
222
227
257
189
177
272
173
180
206
186
179
203
170
270
180
205
211
216
213
214
244
209
204
179
239
218
195
172
170
196
195
134
185
217
219
137
187
222
245
189
278
205
218
235
157
177
195
168
223
218
235
187
142
154
245
230
212
220
207
154
212
225
212
188
234
216
202
224
178
191
185
164
196
234
153
206
199
172
194
222
146
244
168
223
197
199
204
210
179
180
210
167
224
218
181
185
173
197
253
169
147
116
186
151
173
182
227
175
176
204
254
188
157
245
227
241
152
159
161
232
195
232
190
213
257
288
246
228
179
176
158
222
161
191
130
161
157
228
147
203
120
223
142
160
218
178
198
170
185
247
260
244
207
190
231
253
166
207
230
171
222
240
225
156
268
211
183
233
238
255
191
246
195
220
230
214
203
247
198
222
181
210
205
176
245
190
224
239
241
224
211
199
183
208
225
156
219
230
197
155
173
206
175
181
172
197
173
178
134
174
198
164
163
123
154
216
188
220
193
117
173
221
274
218
220
186
283
190
146
229
189
247
173
216
212
169
210
186
143
193
198
109
195
212
222
198
183
196
206
222
193
177
198
212
158
186
157
216
171
107
191
223
196
238
198
192
220
259
184
180
227
164
173
184
205
148
129
198
131
233
233
194
160
172
257
238
188
211
191
230
212
214
206
267
148
164
204
170
193
262
186
270
127
233
225
228
245
190
209
230
214
224
137
199
230
190
172
146
183
157
118
196
152
228
224
200
129
157
185
190
194
162
188
129
190
224
245
187
236
240
222
201
152
218
213
233
165
263
221
175
146
193
149
197
198
223
200
202
197
224
184
254
243
120
157
150
215
231
267
200
191
218
204
217
187
172
203
140
155
179
177
156
189
207
179
182
130
242
173
218
181
204
222
221
227
210
231
212
179
175
204
191
192
169
246
181
300
190
189
134
217
209
196
165
229
197
191
213
214
256
221
248
244
211
161
248
228
184
287
184
193
154
121
252
236
189
190
141
186
200
206
190
249
259
165
195
198
162
209
214
179
240
178
151
219
172
192
181
185
224
178
154
199
252
292
202
224
160
258
207
153
210
217
163
170
219
184
217
207
175
252
213
113
193
202
164
225
210
182
234
224
214
162
256
237
170
215
212
238
168
193
182
184
215
173
232
205
218
225
185
235
187
164
176
225
199
172
191
156
264
92
222
228
201
141
195
262
198
218
145
197
185
215
204
208
140
238
171
139
104
226
244
223
213
180
240
182
246
219
160
157
215
183
160
246
211
161
124
232
194
221
187
229
206
209
197
246
179
240
209
185
214
222
156
270
203
158
147
197
210
211
217
207
162
207
151
185
237
206
199
220
176
174
177
276
182
260
189
249
220
137
182
155
255
212
210
197
205
188
166
223
219
236
258
184
179
200
204
193
221
242
199
191
210
278
223
225
175
201
233
181
267
201
184
191
256
224
213
230
237
225
192
148
215
171
222
245
203
169
217
245
189
121
193
162
166
152
217
166
170
199
244
183
145
214
253
204
203
215
173
231
111
196
235
234
232
171
258
198
221
181
239
219
198
201
199
227
202
211
156
221
188
186
160
224
225
248
145
218
173
182
198
188
219
180
251
238
186
216
213
239
173
143
241
182
175
202
205
133
198
231
168
174
176
208
228
225
199
204
154
254
196
199
164
186
178
221
235
201
204
184
216
147
191
239
167
221
205
199
216
221
192
293
199
202
220
191
216
123
161
208
258
209
177
168
222
129
220
213
146
159
221
92
259
159
217
150
242
226
182
231
163
197
179
248
222
184
187
229
220
159
169
241
203
195
205
215
203
152
183
255
161
223
229
204
255
285
164
223
227
186
188
227
178
201
245
200
142
278
222
176
203
207
240
217
204
224
160
264
191
179
151
194
165
211
188
199
189
181
195
238
214
171
172
224
257
183
201
194
195
245
167
181
121
246
261
224
180
152
158
203
178
216
199
173
209
253
168
166
206
214
175
222
139
210
284
215
176
271
229
146
244
175
241
232
226
204
166
193
229
138
157
188
230
203
205
251
262
203
226
249
145
166
197
255
177
165
157
183
209
250
187
169
164
133
237
161
200
211
186
145
183
252
217
228
194
218
252
211
277
193
155
181
211
153
240
207
177
200
229
191
251
122
230
259
168
234
197
207
214
222
217
198
226
211
227
217
170
186
241
179
147
176
183
147
206
171
130
198
145
203
184
218
155
163
220
190
198
143
139
250
150
216
181
157
222
209
175
239
191
216
183
213
276
206
184
134
161
212
217
260
227
196
163
175
152
202
256
172
198
207
165
223
160
198
186
132
203
198
190
191
217
190
225
254
205
241
235
162
138
182
258
211
156
180
210
256
109
171
178
207
239
182
173
224
215
166
144
189
185
182
213
129
222
212
208
267
229
257
271
161
187
251
233
150
223
223
205
172
200
214
199
237
211
158
201
110
223
254
241
252
249
142
194
189
214
212
209
237
265
221
187
218
198
180
207
208
177
259
186
213
190
190
269
238
216
188
252
183
213
200
225
187
199
187
187
230
171
211
180
147
219
220
246
246
168
242
220
202
210
233
233
258
171
158
194
196
178
236
160
205
137
172
191
205
167
219
208
185
216
211
223
188
203
215
137
260
145
209
222
225
125
188
207
209
169
206
195
249
192
196
181
208
225
230
162
189
213
197
197
175
235
200
200
227
189
204
211
195
242
207
217
212
188
216
183
260
161
203
266
190
207
225
250
202
173
200
192
141
197
150
214
208
219
213
190
221
220
174
172
138
205
213
163
195
145
153
191
202
156
182
175
216
189
208
232
147
118
194
217
248
171
216
224
170
221
243
261
186
162
218
184
208
159
260
241
187
186
216
192
191
213
169
229
225
183
265
141
229
166
181
184
185
180
225
224
245
195
180
202
220
139
220
183
125
150
199
151
254
262
253
192
242
174
234
191
189
189
160
223
257
134
111
249
129
231
190
151
223
212
160
149
204
185
206
233
193
249
234
217
230
231
227
162
250
238
149
173
242
176
153
165
188
204
210
255
189
249
124
217
221
175
197
226
212
193
209
207
173
208
205
162
177
198
220
197
222
236
203
170
247
182
245
171
138
249
201
218
207
199
185
184
220
199
215
226
154
207
164
193
203
231
154
194
152
189
221
214
225
192
155
148
230
205
234
168
188
211
136
179
217
240
241
189
145
232
215
191
201
237
192
237
205
208
174
214
259
267
197
211
264
151
196
198
196
237
153
183
174
199
241
208
198
91
174
202
234
141
206
214
270
223
214
193
214
232
237
275
232
165
236
208
208
186
241
205
238
243
213
249
206
264
182
223
153
163
246
217
191
219
203
218
227
157
162
221
164
230
197
233
233
176
175
185
191
173
231
126
248
197
241
168
167
210
198
191
193
205
150
245
201
210
230
169
170
180
139
175
235
146
200
209
197
162
192
179
246
187
226
218
208
181
252
175
250
168
208
218
144
230
125
227
266
206
167
219
210
216
197
119
233
216
177
233
160
194
210
266
197
217
142
197
161
183
186
183
211
186
269
185
191
231
227
158
198
173
217
207
168
225
129
244
144
133
225
216
173
158
219
181
130
187
225
215
216
243
226
158
181
241
188
244
206
164
255
160
226
269
190
181
239
237
194
177
152
223
158
148
220
200
218
253
207
158
255
201
203
156
177
153
232
223
236
189
253
240
183
174
187
116
216
237
240
252
247
192
212
154
143
208
214
194
204
194
234
236
249
210
197
212
132
198
218
284
174
245
175
208
159
225
182
213
137
188
184
267
177
175
204
205
230
183
187
240
168
212
233
192
173
204
174
232
230
277
204
272
196
182
276
203
172
167
234
177
157
199
167
223
208
193
223
159
286
229
183
146
206
212
221
201
237
131
207
185
225
232
218
168
160
164
264
192
175
217
193
244
224
169
219
228
258
220
225
179
175
206
195
207
227
135
212
180
195
178
186
177
218
291
250
150
182
148
195
206
218
182
146
184
209
201
193
192
214
169
191
218
189
183
241
219
177
180
220
170
197
178
183
196
199
190
174
216
137
227
172
264
164
180
184
230
185
221
161
173
207
186
210
216
198
176
194
232
227
175
248
152
217
155
194
187
217
172
179
167
148
206
153
186
170
185
205
221
193
173
248
215
201
227
205
162
230
233
247
202
193
192
215
206
204
130
209
205
217
220
251
196
203
214
191
147
181
204
220
154
173
208
184
203
153
191
171
195
272
164
224
164
211
164
227
191
117
200
221
283
220
251
140
232
192
120
205
225
261
207
187
166
223
192
216
195
203
196
150
174
184
219
203
203
220
229
190
193
149
233
169
171
125
179
222
234
177
200
181
198
203
247
196
177
199
166
190
192
196
206
179
165
232
196
236
152
184
166
180
217
216
204
192
238
172
182
178
277
228
241
213
223
226
200
203
183
151
214
245
131
218
200
226
206
111
178
222
217
167
189
216
207
244
171
206
190
232
162
242
210
256
233
155
148
200
184
290
214
166
195
151
170
188
195
208
203
180
173
213
218
151
220
180
170
173
237
196
231
177
202
123
259
193
219
215
192
264
202
183
188
156
152
204
194
208
156
180
173
235
152
203
272
205
233
199
163
276
187
217
250
214
195
125
180
142
191
139
260
173
172
142
173
153
177
186
167
233
231
242
177
126
194
151
204
195
263
178
279
175
152
167
188
248
163
110
194
164
209
175
192
235
201
218
202
202
268
192
199
199
216
177
221
239
203
231
193
212
165
197
189
211
177
207
221
175
233
215
238
197
175
221
191
196
175
181
201
176
227
262
196
179
206
204
222
199
226
197
224
209
178
224
213
233
216
189
186
189
249
218
158
155
112
197
193
145
210
165
251
167
163
188
204
195
221
140
196
185
216
154
217
259
219
217
251
188
233
211
243
152
187
232
206
268
229
218
199
254
154
222
251
150
162
176
181
221
163
158
188
216
242
152
204
207
212
221
173
194
131
199
229
248
202
188
152
179
213
239
180
210
180
247
286
194
184
173
198
230
165
228
161
203
151
218
166
240
239
88
220
146
180
150
206
253
226
158
188
172
209
220
176
200
205
231
242
182
184
98
183
193
121
194
186
220
202
174
206
286
193
245
208
241
184
222
165
176
192
226
168
238
228
227
224
199
236
195
167
219
261
208
178
176
181
232
174
202
212
153
242
150
181
158
238
223
223
150
178
250
161
204
189
254
195
184
149
170
225
178
218
207
188
210
203
186
220
165
129
197
179
183
231
190
221
177
173
207
182
205
120
196
158
242
165
243
212
271
178
225
208
253
209
155
215
205
248
165
169
242
159
194
229
200
209
141
222
163
161
187
211
195
278
233
208
218
185
193
167
152
143
176
218
206
156
244
222
203
268
214
177
170
153
183
193
226
189
244
210
151
248
263
244
123
265
180
225
209
202
212
231
158
201
122
244
201
198
196
265
195
166
222
196
181
175
172
255
181
169
243
213
238
226
186
199
207
145
192
217
214
221
243
183
165
152
293
241
187
228
179
220
204
198
218
202
236
167
190
201
237
197
196
238
190
211
167
247
203
258
215
199
175
203
204
259
210
190
220
236
198
270
219
241
165
148
210
186
196
164
120
179
265
150
173
172
215
226
205
241
141
178
190
256
229
162
194
246
202
239
224
226
226
230
227
186
147
162
178
240
127
171
266
194
204
235
199
211
214
220
215
145
204
172
198
247
165
198
169
185
138
192
231
197
199
212
158
141
207
149
169
198
243
160
201
211
205
214
199
191
177
152
164
220
181
216
202
198
208
175
240
163
211
233
181
198
174
182
208
152
246
171
215
240
197
192
199
222
180
226
193
190
219
234
224
193
238
188
214
185
187
208
162
290
188
202
251
239
226
192
180
179
245
244
186
153
241
201
172
198
215
145
205
172
208
217
249
248
192
235
100
200
241
172
183
223
112
185
189
200
190
177
126
195
181
155
219
220
214
228
132
201
205
158
187
221
166
235
263
164
214
232
188
181
174
232
230
232
206
232
167
204
173
179
221
174
143
188
220
246
270
168
172
175
202
220
228
256
221
199
197
260
205
196
187
168
237
200
171
215
210
180
215
217
167
140
202
165
231
129
205
205
199
153
208
227
193
198
242
176
252
171
233
203
183
215
180
272
218
215
155
242
239
210
205
148
212
169
151
207
174
261
159
206
189
224
232
149
182
184
189
143
170
241
165
150
223
188
224
165
191
179
226
165
225
252
267
243
233
260
147
261
216
215
186
215
173
146
156
240
214
248
156
196
210
192
188
206
185
204
259
148
216
154
171
169
207
133
158
275
205
195
201
218
223
219
194
226
148
271
241
238
173
168
131
112
215
181
212
167
228
202
184
198
183
195
151
241
147
248
239
193
178
202
182
172
178
221
178
235
186
206
204
163
224
225
216
205
238
171
245
227
203
189
141
162
213
161
207
210
202
221
248
195
205
172
224
193
197
168
235
220
249
258
258
212
169
224
232
254
197
212
250
192
247
203
138
191
213
256
197
243
261
159
203
195
131
215
262
221
200
229
240
205
119
277
243
249
164
203
206
173
131
226
245
235
215
271
235
212
168
200
150
201
222
90
193
255
199
270
149
224
181
279
213
240
223
234
192
205
168
156
174
227
236
194
165
209
140
225
210
224
216
225
155
155
199
199
175
166
207
173
194
253
228
183
233
162
239
258
203
272
190
170
206
265
168
200
202
243
213
161
243
213
183
186
214
221
205
135
196
163
212
179
226
187
241
222
198
192
221
239
117
147
236
203
209
170
190
197
179
172
208
212
227
205
175
238
241
164
222
249
162
168
144
171
224
239
176
178
227
168
216
173
181
203
171
251
156
219
216
170
146
194
174
201
200
221
242
193
166
223
229
186
197
266
254
215
182
221
176
197
194
160
152
195
201
212
244
180
191
217
194
179
198
231
231
235
157
225
173
150
230
153
147
146
140
224
190
201
236
174
209
237
184
185
219
209
200
188
225
213
121
217
182
260
207
180
247
146
191
222
272
171
230
190
160
191
253
179
210
236
232
213
196
219
220
173
226
221
171
227
254
210
206
178
186
179
236
245
186
188
179
182
178
213
180
173
215
214
200
227
182
249
210
140
193
184
267
238
215
171
203
221
244
192
219
212
270
217
230
216
218
201
172
171
250
178
188
237
246
190
168
195
134
162
233
194
179
170
215
173
159
201
172
170
198
238
167
175
184
176
224
141
181
183
263
183
158
206
204
201
178
250
181
203
153
233
188
208
278
148
186
229
223
232
154
226
231
188
235
224
231
192
150
155
179
210
256
147
255
238
201
159
195
203
225
192
228
204
218
205
200
185
221
246
195
209
181
223
193
245
192
171
202
249
240
189
201
169
213
184
172
179
214
160
236
216
242
246
228
213
203
165
164
223
180
213
106
193
207
240
205
204
241
143
185
198
224
226
205
166
231
155
194
188
168
221
244
210
137
271
226
124
197
221
183
215
247
228
217
210
183
233
192
188
177
239
205
166
219
161
160
264
232
243
201
160
204
170
236
186
218
214
197
184
241
229
170
209
205
205
156
164
184
203
183
169
171
211
184
220
222
174
216
223
233
271
215
194
199
195
219
221
256
179
228
142
229
228
201
248
266
235
187
246
165
166
155
200
234
112
206
169
217
241
212
218
199
203
178
200
218
185
192
178
231
219
185
248
206
190
160
209
225
249
114
241
261
191
180
217
220
212
193
240
195
235
173
188
232
174
194
185
218
204
260
131
204
178
143
255
188
223
180
214
147
200
212
114
202
226
171
187
216
192
104
209
172
234
195
220
205
197
187
209
198
217
206
156
243
213
251
173
172
196
206
227
193
127
239
183
230
165
173
234
235
233
199
175
185
243
253
261
153
223
191
204
186
210
229
230
198
247
228
269
197
219
217
215
219
103
221
169
241
233
201
195
253
197
239
204
178
189
221
200
239
171
153
228
164
157
206
269
256
255
182
184
161
144
233
140
201
172
186
159
228
191
161
202
205
238
202
239
219
259
159
223
252
225
216
193
183
206
248
180
218
232
232
152
198
158
218
177
244
211
143
190
206
195
224
196
183
155
207
211
248
202
193
232
221
173
173
148
137
179
200
207
205
208
217
156
229
130
222
226
168
213
171
186
163
231
156
210
194
207
216
122
165
209
206
226
195
192
188
193
211
141
204
199
241
205
196
176
195
219
261
185
216
169
180
217
179
240
195
199
187
158
241
184
209
226
107
220
197
209
208
176
187
222
188
118
219
153
235
245
198
167
142
176
197
247
166
190
213
154
187
192
240
196
193
176
211
180
206
266
167
225
204
220
202
204
207
183
170
136
200
189
181
182
210
210
234
212
186
204
219
163
187
254
189
214
209
284
244
122
212
180
223
157
187
259
206
180
179
204
152
209
207
218
191
200
179
196
177
244
163
198
166
222
165
180
199
202
205
236
225
171
218
150
240
241
226
212
219
139
221
168
222
239
211
190
245
176
157
282
167
179
208
168
206
207
223
167
164
137
190
157
243
190
115
157
194
213
193
211
139
214
248
167
225
261
181
220
236
201
175
244
193
171
190
174
227
186
189
209
204
230
271
246
233
198
248
197
195
207
233
226
194
236
167
216
156
204
259
229
232
164
165
239
168
207
181
193
166
193
182
149
163
223
184
183
226
235
197
187
174
195
176
233
174
165
258
180
201
198
194
220
194
207
232
228
209
219
271
193
197
258
190
216
177
197
235
160
190
212
177
215
217
177
265
222
242
176
219
205
248
239
198
166
239
238
170
212
157
261
211
187
131
154
192
166
165
179
269
266
194
214
213
181
221
190
160
202
261
186
156
239
194
138
156
257
187
205
217
207
156
191
202
132
254
189
203
207
248
141
195
193
214
156
200
139
211
243
85
254
207
122
241
214
240
191
225
260
199
207
214
212
262
273
229
180
181
112
201
138
191
151
203
235
256
176
197
151
161
238
223
211
172
248
228
237
173
223
206
221
161
154
244
267
207
169
159
185
185
65
216
167
226
233
214
168
186
208
209
227
234
143
176
186
218
178
263
200
173
225
190
236
162
231
229
189
168
175
233
185
117
158
147
241
240
197
191
149
135
146
164
204
165
218
177
277
193
214
245
213
210
170
201
239
159
215
191
144
161
248
181
214
171
251
234
247
168
205
271
204
157
151
159
165
202
217
228
201
199
200
184
174
194
228
219
252
146
204
242
169
199
222
216
142
179
270
193
228
144
197
103
242
171
235
211
204
152
235
255
247
222
284
183
206
158
211
168
206
232
204
193
156
212
143
175
239
208
289
88
219
198
182
196
215
256
198
198
236
231
229
171
206
187
161
193
204
181
137
154
228
229
260
245
246
224
171
162
156
209
220
171
170
189
254
157
212
206
213
200
115
231
202
255
194
210
184
196
223
196
219
218
191
184
168
257
214
201
201
200
196
194
164
192
202
217
148
190
204
134
198
185
226
176
226
269
212
166
229
219
176
161
173
203
233
180
224
221
233
197
178
199
225
214
227
207
219
234
305
188
223
214
183
184
162
183
213
166
152
203
218
226
252
177
185
177
230
205
227
217
201
199
228
206
195
255
134
227
195
253
135
148
193
213
142
226
139
221
191
219
202
198
159
163
184
240
175
178
232
157
185
223
204
249
183
223
198
188
217
242
210
208
166
162
186
206
200
133
217
185
90
239
196
233
234
201
248
212
187
121
170
168
232
138
217
211
233
187
207
242
194
243
205
267
203
205
226
214
167
231
255
164
183
186
186
226
261
188
206
122
181
184
218
197
169
190
146
219
209
167
188
214
167
152
227
151
255
208
180
247
226
200
165
210
155
211
182
236
168
204
200
194
157
167
192
237
188
184
174
211
184
198
262
214
207
216
188
199
174
220
229
207
191
205
183
223
252
242
211
200
214
192
151
188
221
244
171
196
173
201
192
245
182
249
224
251
221
212
206
175
200
143
161
170
204
288
203
213
175
139
165
225
196
178
181
191
181
220
159
169
200
176
252
145
199
200
206
251
167
216
215
168
191
173
241
150
227
164
257
193
228
215
252
197
230
197
194
186
223
243
243
161
206
211
191
226
218
195
256
159
203
284
115
222
174
206
221
251
182
212
156
182
211
165
204
161
178
210
279
162
151
166
198
178
209
245
216
205
186
217
171
227
204
252
182
191
241
214
171
207
189
199
194
233
146
123
214
238
236
216
232
219
197
195
236
228
174
208
168
193
180
209
267
198
188
226
220
249
122
199
222
241
250
200
218
141
191
223
230
200
175
185
162
193
160
238
222
254
203
206
181
168
175
168
224
268
241
251
224
195
205
190
194
186
178
225
187
166
187
217
220
184
200
153
149
175
229
189
237
186
213
216
227
244
198
185
142
221
152
222
231
221
187
169
176
226
232
186
205
231
218
241
203
216
261
206
188
206
134
219
191
269
212
159
119
178
192
203
224
223
229
146
235
192
198
190
143
216
189
194
189
262
150
222
253
171
176
269
89
241
208
156
173
190
244
241
203
169
166
102
122
174
232
155
229
192
185
138
177
270
150
244
147
150
213
133
190
210
232
250
256
170
186
216
226
207
230
279
174
233
190
168
249
271
225
182
210
271
234
239
159
204
168
161
210
218
178
156
151
158
191
205
156
241
194
245
164
154
226
209
151
183
143
214
227
242
253
180
191
189
202
206
203
199
221
214
234
242
160
179
259
189
165
219
229
204
182
210
227
219
251
203
204
218
236
247
214
177
235
187
138
223
108
219
214
177
207
213
200
196
158
255
184
145
145
217
171
164
218
196
211
215
185
192
220
145
255
198
228
195
213
237
226
191
195
188
234
217
236
169
214
226
215
205
168
215
183
136
181
189
148
251
200
200
179
264
174
198
228
251
183
193
254
244
195
190
182
279
142
111
188
212
197
112
251
191
181
220
194
226
195
195
217
155
228
118
213
217
207
197
193
230
212
193
151
176
186
221
197
281
236
187
190
180
188
169
221
187
208
121
195
200
195
240
181
232
197
134
178
226
138
100
238
199
153
218
208
175
207
152
218
191
200
201
192
217
181
193
212
255
268
181
180
175
148
243
229
223
169
205
147
251
268
205
229
185
170
224
237
181
206
193
210
189
205
203
241
132
185
217
198
218
172
213
205
202
195
185
222
234
238
254
222
242
154
230
211
177
182
178
131
220
223
223
174
226
153
192
206
240
217
194
204
171
219
192
165
220
229
138
212
226
205
208
226
206
245
207
201
210
217
192
248
166
205
153
166
194
222
178
221
182
235
106
187
146
231
191
185
144
201
176
222
246
175
255
227
187
220
199
243
251
176
218
168
188
189
200
214
282
193
216
182
170
226
221
221
139
167
212
212
205
266
138
228
287
151
212
184
272
208
214
242
179
229
170
224
155
173
215
136
179
227
236
169
125
221
215
233
225
260
196
239
216
231
263
192
234
223
219
156
240
173
166
137
198
196
229
173
161
182
164
240
164
215
218
141
199
158
189
153
245
195
154
219
197
182
161
203
210
177
207
190
206
171
200
221
167
241
257
254
199
204
137
164
252
151
219
213
229
221
217
176
253
243
182
199
229
186
218
177
163
151
186
214
171
227
237
199
182
177
165
180
258
222
186
205
234
203
212
187
228
219
164
168
215
167
208
190
213
190
167
153
187
254
195
218
141
228
148
197
230
154
209
248
192
197
190
118
210
152
178
212
141
238
216
177
211
197
153
259
201
250
188
150
122
132
198
200
225
166
272
178
191
232
175
172
147
185
178
226
197
204
241
172
153
273
172
190
220
155
243
229
226
237
233
211
197
287
192
274
171
247
206
175
182
170
185
166
156
177
187
171
240
137
237
236
179
218
247
224
194
208
193
189
125
229
139
182
194
190
130
250
290
195
129
197
205
207
150
188
214
199
239
145
219
185
264
264
142
212
214
303
289
219
204
196
186
233
128
140
241
152
199
211
195
211
177
212
170
170
192
250
205
178
135
173
192
132
229
168
174
214
189
239
168
174
178
200
181
201
215
245
198
235
222
275
269
162
174
174
165
226
206
185
200
208
248
210
220
194
218
134
207
167
241
231
153
233
181
179
209
204
222
166
172
182
226
201
190
184
186
234
184
227
205
241
176
209
180
166
193
187
243
209
163
198
218
198
139
191
177
227
243
169
213
238
213
174
190
139
177
254
126
171
191
164
201
190
159
143
194
170
187
254
216
235
84
213
184
191
158
241
198
242
145
221
232
229
154
165
125
156
169
216
153
188
245
220
213
223
208
227
247
188
220
200
197
165
237
197
193
165
206
230
191
126
209
182
172
241
178
210
194
196
197
204
207
175
214
218
206
225
190
229
230
227
155
174
192
192
191
189
149
202
185
142
170
156
205
195
237
207
230
153
198
222
160
150
170
154
178
206
187
154
155
186
165
203
238
236
176
263
208
203
205
221
147
168
197
232
129
205
258
213
213
115
165
235
246
185
148
216
266
241
166
185
185
229
164
260
225
208
173
222
217
198
209
190
201
180
184
201
203
223
180
200
200
221
244
197
237
242
204
247
126
221
245
198
180
191
230
276
146
195
180
215
248
202
205
261
250
249
155
185
258
154
217
216
173
192
243
215
169
211
195
256
237
262
212
137
188
199
172
198
191
210
198
223
176
222
227
217
214
198
181
180
178
215
229
214
199
146
114
180
221
190
214
208
197
216
189
232
180
220
192
147
221
177
191
148
157
212
165
239
237
218
216
209
189
266
196
164
252
164
147
154
216
205
238
137
211
248
208
185
178
233
197
217
204
289
233
228
230
149
233
149
161
217
196
206
241
116
121
187
257
191
243
212
249
216
158
213
248
223
209
224
177
171
245
249
137
208
171
196
169
169
201
167
222
132
223
241
151
205
253
228
178
186
198
144
155
233
166
203
140
206
210
166
196
163
232
206
228
180
200
238
194
205
191
246
222
239
156
208
250
189
276
172
207
253
179
208
183
164
214
200
232
180
194
255
142
147
205
205
240
226
179
173
158
163
136
286
213
135
210
167
138
237
220
181
245
234
158
226
178
241
153
273
224
223
134
198
196
152
196
178
210
285
252
231
207
243
211
178
209
218
220
228
109
217
234
255
214
176
220
146
166
121
192
189
147
187
203
259
219
245
217
194
183
167
234
149
204
239
215
203
233
263
175
152
205
173
189
168
149
186
209
210
222
205
179
182
215
195
174
155
227
221
180
201
188
154
226
210
231
155
178
171
187
145
228
250
154
176
117
212
207
180
176
176
159
182
217
156
217
173
212
187
244
146
245
167
177
202
257
207
208
246
278
244
134
193
147
178
197
185
193
232
214
223
190
199
229
246
180
221
270
227
216
240
187
193
206
201
241
181
210
172
205
144
143
177
211
167
195
141
155
230
171
236
215
164
165
249
240
224
183
221
231
159
216
153
188
174
159
187
185
257
145
181
202
207
222
172
194
206
248
157
146
225
179
183
147
176
163
173
252
214
179
183
167
185
304
203
155
206
251
195
279
217
201
173
240
201
183
218
190
246
204
214
211
243
193
216
219
226
194
228
192
247
239
176
223
146
198
211
241
199
154
196
225
213
185
207
202
146
218
273
200
213
195
171
157
246
209
232
198
215
225
188
229
118
251
205
212
223
226
152
224
227
194
151
213
230
191
193
227
157
229
144
245
179
238
225
221
184
141
225
215
146
153
170
260
197
216
230
222
247
216
194
217
233
210
170
187
220
242
212
229
193
251
243
205
170
228
234
236
274
209
196
211
256
173
240
182
252
242
224
177
246
237
190
196
190
219
214
244
248
209
157
163
250
173
222
207
228
208
187
197
240
226
224
195
169
156
246
209
176
262
205
226
209
212
152
222
236
245
201
215
204
175
229
200
203
180
180
166
236
231
210
212
167
208
158
250
215
207
225
238
186
218
248
206
160
201
222
210
214
197
186
235
219
150
158
207
172
211
213
214
217
227
161
199
176
149
263
200
221
168
174
215
247
183
223
157
172
228
194
196
191
265
229
180
191
287
159
181
175
267
164
207
220
197
172
249
155
150
215
165
216
248
201
170
189
224
215
204
184
223
166
219
176
179
220
277
212
157
143
143
147
206
183
199
248
147
171
179
171
178
172
236
190
192
219
229
253
169
224
186
158
247
204
239
236
217
203
160
175
179
201
173
219
214
213
228
178
170
177
236
188
226
256
232
201
132
250
259
220
166
222
183
191
188
168
220
141
211
182
171
236
214
198
214
145
157
198
158
171
230
205
212
256
244
140
209
146
243
209
239
146
205
183
147
183
206
213
263
195
207
261
216
143
199
171
237
214
227
262
163
218
154
280
148
145
226
197
164
203
189
163
234
181
258
222
226
152
191
205
154
213
198
174
185
172
191
215
159
251
195
196
159
175
221
160
134
211
136
197
214
135
210
214
256
270
252
199
274
213
200
182
238
188
189
207
215
199
176
219
232
253
235
230
205
213
181
242
199
202
174
250
126
247
198
232
215
205
160
146
182
221
216
196
238
250
248
143
200
254
153
243
255
196
248
190
149
122
166
207
181
232
162
191
221
214
202
173
212
242
175
228
184
203
192
157
224
136
218
121
245
186
200
217
203
182
198
220
164
243
187
211
207
219
205
178
96
222
163
233
179
267
242
211
209
182
147
189
145
111
203
243
148
216
126
216
180
206
203
244
216
208
231
168
240
169
141
199
275
194
258
201
173
264
157
248
227
198
200
203
172
213
201
183
197
247
177
186
219
203
122
196
132
126
215
260
135
244
191
156
193
173
201
253
262
255
203
208
215
234
189
226
231
172
180
187
188
149
194
202
143
236
225
182
206
207
228
236
163
219
275
152
222
209
232
253
215
222
245
173
221
164
214
226
227
174
185
233
204
187
133
201
206
203
171
232
188
217
150
202
163
239
199
187
299
204
201
235
170
195
170
220
172
209
167
216
255
270
180
228
169
195
171
183
209
158
259
215
148
211
236
137
203
173
135
208
197
194
218
95
122
253
167
189
226
234
231
193
171
195
209
167
234
165
177
258
239
191
188
172
207
271
197
242
190
200
204
200
175
195
213
229
237
195
229
214
203
219
275
184
141
223
232
197
197
180
233
245
213
166
184
205
230
217
178
178
208
181
200
209
218
194
210
222
175
198
191
238
211
146
192
217
208
210
189
207
180
228
183
145
155
196
218
144
145
195
229
224
183
217
212
261
244
217
229
218
179
225
169
134
206
256
241
245
249
189
194
139
206
116
216
177
233
234
142
202
197
128
187
244
269
223
189
175
214
240
203
262
121
188
182
219
221
178
198
222
193
172
196
229
301
174
151
259
199
168
221
234
194
221
190
204
194
201
174
178
205
206
189
237
227
155
209
237
134
184
202
242
229
198
179
173
215
207
198
178
204
196
244
163
126
228
216
175
152
179
204
152
214
218
166
254
237
195
157
210
200
190
198
207
167
235
190
246
201
190
196
280
243
179
166
151
191
188
144
209
231
115
180
230
187
258
247
218
171
240
160
201
169
228
226
209
219
169
289
190
196
184
205
202
169
232
222
212
180
194
228
262
260
269
171
230
232
188
231
221
222
195
163
217
193
198
166
205
221
247
146
239
166
206
185
235
137
202
164
246
226
149
218
86
157
171
261
201
237
175
251
169
187
217
215
152
248
136
167
213
176
221
229
229
224
226
132
192
186
195
268
176
166
156
238
218
153
170
207
261
236
225
203
216
204
211
248
151
229
183
213
217
262
278
164
209
201
262
178
210
201
223
196
258
214
197
263
210
218
194
201
245
203
189
163
229
147
160
157
128
199
208
174
215
242
201
167
230
189
275
228
196
181
232
256
260
192
224
187
210
204
212
209
223
208
209
130
222
163
252
193
215
228
202
214
224
196
193
246
147
162
219
165
191
153
198
237
186
218
194
206
257
206
232
209
222
208
236
197
170
222
160
235
206
256
257
165
197
205
202
276
153
178
179
184
203
191
124
257
234
161
253
216
194
209
214
204
212
208
212
222
232
119
232
171
221
177
170
200
174
216
168
196
238
263
215
179
223
171
180
163
183
201
245
243
169
195
171
201
233
198
208
170
214
213
158
151
206
144
216
208
137
214
181
195
230
234
198
198
212
171
162
226
196
215
211
193
222
171
205
166
222
258
189
158
159
192
161
177
198
217
210
182
190
133
164
126
190
198
221
197
156
185
203
168
182
224
174
168
147
233
250
169
231
235
167
206
185
174
222
174
252
191
200
152
257
225
165
145
163
241
225
256
208
134
152
219
140
237
192
169
252
244
243
221
224
222
200
147
206
142
202
235
150
150
245
191
192
150
129
188
245
163
184
130
163
216
162
160
240
171
215
155
218
205
240
116
199
170
278
182
250
239
196
234
233
225
214
261
146
166
224
255
195
203
151
224
224
191
215
191
204
202
171
187
211
248
240
212
213
249
205
219
184
195
170
158
167
228
237
245
216
220
271
100
204
222
145
217
239
243
185
219
245
118
222
210
159
208
209
195
217
217
214
118
190
131
226
202
250
209
224
192
141
194
156
184
186
230
194
250
227
170
233
151
200
220
203
205
226
179
209
244
197
180
254
186
191
197
179
233
132
186
189
191
170
181
212
218
225
158
209
171
189
215
169
224
204
169
212
206
147
178
206
199
152
246
196
167
210
165
190
182
176
221
236
227
184
188
161
203
209
178
202
220
176
185
188
244
197
187
225
255
179
270
189
208
182
122
180
225
224
226
155
237
247
191
237
188
256
121
248
208
177
209
208
229
243
213
247
231
199
161
222
270
171
106
156
167
208
245
226
195
248
262
220
170
236
234
156
197
246
268
213
146
154
230
147
229
184
187
223
151
187
156
176
290
266
252
212
213
151
184
187
173
191
163
257
195
210
209
168
213
236
200
175
178
202
211
181
205
171
250
211
202
201
214
229
166
220
207
239
177
141
191
247
187
239
252
168
241
174
218
244
234
240
192
170
183
222
211
192
240
209
203
168
194
225
179
227
238
180
147
184
261
209
212
173
260
174
240
209
216
258
191
256
199
239
146
196
211
239
260
281
196
195
255
188
145
189
193
172
204
231
204
97
261
197
193
178
199
128
170
271
184
198
185
175
239
202
225
176
187
164
169
181
142
201
214
206
177
157
249
232
202
183
212
161
168
211
225
193
225
201
250
230
231
206
134
206
247
173
252
187
261
232
244
189
219
188
232
229
276
182
164
186
224
230
230
240
153
171
220
220
225
167
232
209
213
183
217
213
190
171
247
198
203
262
253
221
192
204
199
158
212
180
142
231
210
220
148
197
229
222
168
245
195
205
226
223
176
203
197
233
92
217
130
190
235
216
156
213
212
219
188
180
210
222
234
204
249
213
192
102
241
167
204
200
163
153
198
164
236
249
205
207
189
163
178
244
235
165
240
184
296
184
204
221
122
210
186
136
188
209
249
197
256
206
263
120
195
154
173
195
263
163
206
197
245
171
148
202
176
163
295
198
155
149
111
239
234
222
211
179
239
210
257
236
225
181
200
201
231
172
153
168
186
129
192
217
185
190
191
236
183
174
172
229
187
181
226
219
148
144
185
186
173
217
182
170
196
202
152
234
221
249
170
177
162
131
202
164
150
241
170
260
261
206
189
245
250
172
228
174
183
177
221
128
246
205
234
179
243
198
243
231
157
235
202
195
191
155
212
236
244
162
177
123
179
215
208
198
185
185
172
169
244
206
154
216
225
167
188
183
253
164
177
175
160
145
175
205
137
208
261
143
175
247
167
204
99
240
217
246
217
228
253
207
174
255
236
194
253
186
204
191
173
230
169
230
221
255
185
232
168
148
210
236
178
213
216
170
262
186
217
246
216
229
223
192
249
206
122
240
255
136
220
129
177
180
170
208
253
158
244
175
210
218
124
266
240
154
192
185
196
161
204
177
150
200
201
178
158
219
220
162
226
228
177
212
168
171
144
228
234
222
220
245
218
228
169
169
191
249
230
172
198
255
270
145
163
148
200
146
205
232
191
219
230
179
198
234
212
214
118
155
175
236
251
171
208
228
168
198
209
185
229
202
199
164
152
220
186
198
185
152
222
207
255
221
205
170
176
188
232
203
252
200
228
287
213
261
233
186
220
215
180
218
219
171
176
226
204
223
238
209
236
187
258
224
231
285
180
205
183
223
192
211
207
205
194
230
181
173
201
174
270
190
195
140
170
169
223
276
202
217
196
242
169
198
240
170
219
195
130
175
199
178
191
244
153
247
223
151
184
216
219
171
168
207
157
206
165
118
227
154
180
230
162
181
163
173
211
205
205
216
214
179
219
162
188
191
163
204
196
218
195
191
193
112
136
202
255
204
152
244
150
242
177
190
234
218
262
201
180
215
203
265
184
267
167
193
239
105
174
225
173
166
142
200
274
202
149
210
208
164
228
175
190
227
148
210
274
181
235
228
180
169
178
220
183
236
201
208
259
178
166
164
207
235
205
169
192
186
204
173
243
141
210
165
169
181
175
186
240
190
172
190
143
204
221
218
191
251
240
207
193
169
156
213
128
256
145
181
235
205
228
214
177
155
230
282
211
216
245
188
217
209
192
246
242
208
226
154
274
167
258
211
250
216
252
221
259
190
217
201
179
180
214
198
182
155
202
198
249
152
193
142
176
213
216
159
248
269
179
253
174
253
236
170
181
214
190
218
222
170
221
181
186
151
255
181
214
227
205
243
229
208
187
210
154
239
197
199
199
237
183
173
171
244
223
249
239
101
135
176
214
264
165
246
217
233
223
232
211
246
226
245
221
241
218
191
199
192
192
204
249
188
235
239
175
206
228
190
231
211
252
230
195
221
222
212
216
165
244
101
220
192
216
216
206
149
165
160
196
172
139
187
169
212
165
218
159
163
228
205
243
199
237
238
201
194
254
198
222
236
213
189
214
203
214
210
198
191
162
158
126
146
206
140
188
205
220
218
202
230
186
225
212
204
207
110
156
169
217
235
217
180
160
212
187
202
133
210
213
239
219
269
225
246
269
228
178
159
213
204
203
212
210
213
207
200
173
209
194
206
155
213
151
174
160
197
116
212
219
268
287
193
193
228
221
182
249
196
276
175
160
175
198
190
215
214
201
194
175
156
224
215
230
171
260
215
230
167
196
225
216
186
193
211
163
210
225
208
148
189
243
234
214
274
211
236
179
230
213
158
233
202
178
192
142
192
212
186
198
197
192
233
196
195
233
237
187
199
229
214
168
194
200
234
227
216
211
151
159
150
254
200
175
184
183
140
236
187
208
208
263
210
170
184
234
177
175
238
174
237
219
277
203
209
176
175
175
171
239
196
244
187
227
207
188
181
181
200
163
177
208
223
190
209
213
242
137
259
147
197
139
203
196
210
212
186
219
172
194
215
191
286
247
222
115
212
218
197
211
189
158
154
206
219
203
169
211
208
196
201
233
168
130
208
204
215
132
177
231
238
240
114
165
157
165
170
179
208
149
184
198
196
146
166
243
199
226
172
186
159
189
205
229
229
204
206
257
270
239
196
222
221
220
193
187
212
225
203
205
263
212
202
223
188
234
211
229
200
199
213
272
171
188
194
166
175
213
214
221
236
178
143
217
191
142
202
202
217
216
208
216
128
225
175
154
226
219
176
176
226
231
240
166
184
223
194
163
183
138
163
222
226
251
190
196
246
228
174
227
257
271
230
217
210
220
187
205
202
251
157
234
184
244
189
209
184
250
197
217
221
210
202
200
199
261
149
193
205
213
196
234
252
187
198
193
210
232
195
241
166
183
274
207
168
202
237
254
196
216
170
207
230
219
227
120
227
206
202
222
216
181
219
170
165
145
259
178
181
199
166
213
105
171
191
230
239
203
192
196
206
129
204
168
227
178
224
190
210
198
182
201
166
159
129
203
194
179
202
179
142
241
192
245
224
201
206
115
178
194
226
223
231
176
189
130
180
194
156
203
231
234
134
179
216
231
223
239
210
159
175
202
180
241
232
251
213
195
196
208
282
241
230
174
173
198
219
186
184
209
162
231
156
214
198
223
209
212
243
185
244
189
242
176
217
181
239
209
154
229
291
140
173
255
259
204
253
126
190
176
156
144
146
189
198
206
190
232
112
163
173
106
200
200
160
194
181
222
216
196
202
256
186
202
195
170
177
203
214
244
211
264
212
173
187
241
245
242
263
155
218
210
202
148
229
143
185
207
212
196
167
246
226
227
165
180
278
218
199
260
181
256
194
210
136
215
242
191
190
188
180
207
280
182
221
161
144
184
202
215
163
128
215
222
216
256
216
255
231
228
228
164
176
267
136
186
146
209
170
191
236
180
220
207
230
222
166
173
170
202
194
180
206
233
146
215
256
254
201
204
95
230
179
212
179
195
192
209
160
227
169
162
198
207
202
204
206
181
138
231
237
246
147
223
180
202
244
207
233
200
212
214
177
209
202
141
224
150
187
225
185
243
218
161
191
218
159
189
217
147
207
195
201
194
219
208
200
217
207
182
185
249
206
268
191
167
210
245
130
219
152
169
203
203
227
203
162
263
196
212
115
232
154
239
223
187
271
171
173
214
171
203
204
215
234
155
239
179
114
248
178
224
217
190
219
243
254
233
264
252
216
213
229
246
194
253
192
190
237
253
179
193
212
196
212
204
215
223
259
183
148
216
231
183
192
207
160
260
227
198
204
198
190
159
134
195
187
262
213
209
244
209
196
244
188
256
288
187
195
253
199
167
245
258
190
209
252
184
125
158
142
225
184
165
247
236
222
152
188
182
139
185
123
187
134
194
218
189
160
179
181
189
191
223
216
180
185
243
218
165
195
186
203
172
171
200
189
184
187
224
141
178
212
158
181
181
172
209
187
213
120
186
205
250
251
162
178
248
226
235
201
161
226
207
227
204
243
181
226
192
177
178
189
212
167
198
195
262
212
157
209
164
223
249
232
167
227
185
184
224
206
228
194
241
242
192
190
195
123
195
220
243
168
183
179
145
133
193
246
202
183
146
246
227
201
203
234
192
214
147
153
133
188
231
211
212
221
235
209
211
165
132
219
206
162
235
186
250
207
146
195
246
171
176
166
220
191
237
207
212
194
270
218
169
210
170
225
218
210
194
188
188
163
199
207
186
151
167
150
193
198
231
227
288
219
199
209
182
146
155
175
181
137
144
238
252
182
227
163
219
185
167
132
125
132
264
190
218
194
169
147
180
168
232
223
149
256
252
178
161
146
203
206
137
208
178
203
187
190
186
197
244
198
157
132
234
188
264
214
264
216
217
120
198
162
219
209
217
190
180
199
223
236
162
251
173
192
179
198
213
128
259
237
178
245
183
123
234
168
141
185
233
197
217
220
216
178
217
235
214
206
153
168
220
235
318
193
238
156
257
162
165
219
155
236
208
190
164
192
223
198
189
232
237
156
218
212
180
161
115
163
75
153
179
219
156
238
236
172
137
179
181
137
165
196
162
235
222
139
217
186
198
206
184
190
212
205
184
180
199
176
215
248
248
217
233
194
156
198
176
203
196
221
193
199
191
201
191
203
248
171
203
184
187
249
219
124
193
251
152
212
193
219
206
253
147
213
255
192
222
169
222
211
223
190
265
190
245
194
195
230
189
195
163
188
167
227
230
251
160
126
208
175
259
169
226
189
171
276
211
239
189
168
179
225
203
197
234
209
199
234
257
148
168
211
145
243
201
218
208
169
255
199
223
232
216
271
215
193
167
233
196
249
232
221
198
169
220
180
270
190
263
147
168
210
152
242
215
215
172
175
157
172
224
229
184
188
213
199
164
217
200
185
168
189
222
185
191
237
158
203
196
173
188
168
156
124
207
180
217
277
235
202
211
196
293
165
194
166
217
293
159
191
262
239
191
152
162
175
179
218
178
182
194
194
252
193
183
197
161
184
199
186
148
219
230
202
197
138
257
216
135
244
201
259
173
187
254
143
159
188
207
204
238
218
173
208
256
184
146
191
200
134
225
191
241
206
224
208
183
126
172
211
147
132
266
200
239
218
162
194
204
221
194
208
131
198
184
244
257
242
210
183
129
292
273
236
167
199
198
229
184
215
200
225
212
179
227
266
148
232
224
207
226
133
179
225
187
230
210
179
139
162
218
192
255
204
232
235
200
191
235
181
185
179
250
161
160
180
241
207
267
157
202
182
199
203
230
176
179
220
189
172
215
247
225
212
158
133
212
191
215
184
172
78
143
235
193
233
146
174
201
229
168
230
263
241
188
160
228
224
239
241
195
142
181
192
168
282
189
233
146
124
222
163
182
216
167
122
195
180
172
236
201
229
208
249
183
242
224
223
220
237
235
216
194
195
184
165
248
170
237
154
203
189
166
193
194
262
236
177
216
235
207
191
202
176
233
158
247
188
233
177
196
174
148
214
169
184
229
251
247
258
226
262
133
187
221
129
152
164
260
213
156
203
173
176
152
174
184
161
226
220
206
210
177
205
199
202
203
135
187
189
169
251
229
248
141
181
239
163
273
155
212
183
191
206
230
234
163
202
195
170
165
210
196
193
175
106
219
207
232
188
148
149
193
190
257
217
223
227
223
162
223
229
177
247
210
219
177
184
178
185
231
247
248
172
207
167
191
216
217
214
205
112
204
155
245
189
218
192
156
221
249
232
215
201
123
227
202
238
191
216
174
194
183
167
220
225
255
157
182
252
193
233
221
143
155
203
169
208
220
212
242
210
162
180
205
190
179
232
187
206
207
213
197
210
155
200
241
225
201
130
201
218
203
224
293
153
196
230
186
166
228
238
195
178
213
196
223
167
174
154
185
202
203
234
207
212
201
221
189
217
243
172
161
219
224
220
186
206
180
241
206
181
155
220
181
169
184
147
128
187
232
197
178
223
205
139
239
244
254
208
167
193
211
228
228
181
172
182
241
221
221
224
218
245
210
176
125
227
260
200
204
169
233
208
190
202
266
193
150
219
172
251
198
205
251
231
242
216
161
176
220
243
197
263
224
200
246
158
221
162
186
203
191
215
185
203
202
191
220
215
142
175
163
183
189
192
204
249
166
187
199
187
131
161
199
209
179
186
200
144
260
220
207
209
149
170
239
226
183
252
230
226
190
191
144
188
189
181
183
189
194
199
177
136
193
211
220
179
137
196
176
231
260
162
254
226
217
91
198
203
149
254
216
192
216
162
221
252
216
220
223
245
155
168
126
227
244
246
211
226
227
213
213
238
174
154
216
271
198
129
248
211
216
187
219
216
117
221
200
231
134
194
229
227
242
250
230
206
230
264
199
145
185
172
174
189
194
192
247
157
211
165
172
233
191
238
231
189
223
199
183
243
211
214
239
222
195
206
250
199
270
180
196
191
183
218
197
165
241
188
200
195
246
200
228
161
162
183
158
126
232
239
241
158
175
215
249
226
204
232
181
203
258
186
239
183
235
197
224
187
190
186
192
186
194
119
226
190
263
165
231
181
171
160
215
128
181
223
236
147
152
226
195
201
181
170
203
256
215
164
123
176
174
160
172
252
213
222
281
253
204
219
235
172
184
227
245
199
200
191
200
165
212
226
212
214
252
178
229
153
212
165
270
191
178
112
175
220
154
129
205
265
153
205
205
168
221
215
237
159
176
165
171
231
196
194
192
173
179
212
246
256
177
257
96
201
197
177
267
171
239
222
168
246
268
199
227
207
176
153
202
190
201
230
243
202
178
190
170
184
207
206
212
244
178
192
200
204
195
160
192
172
176
171
170
165
175
207
233
124
173
196
175
179
215
179
188
199
206
234
233
225
198
200
192
242
152
241
168
220
238
255
223
208
216
218
218
226
187
213
207
245
255
271
181
155
223
235
220
252
255
216
170
197
180
183
175
210
166
196
216
140
152
128
187
221
192
242
181
225
214
222
251
274
178
211
253
189
189
256
188
192
159
244
203
201
189
203
262
157
207
298
287
186
188
220
240
243
175
167
169
165
255
182
169
224
160
217
200
198
167
237
187
183
214
228
153
217
203
155
209
202
266
179
199
210
243
239
98
195
237
199
189
239
232
229
201
249
193
189
166
202
225
238
195
243
198
219
236
258
146
174
201
230
248
161
255
141
212
218
134
162
198
222
273
221
206
230
206
180
183
243
200
172
189
241
203
211
185
217
119
166
172
214
201
191
207
204
221
205
165
233
228
210
194
145
159
185
204
217
186
240
180
203
228
240
248
233
158
168
232
228
162
207
214
236
192
189
245
180
195
233
235
202
135
183
255
188
217
246
174
129
185
231
197
279
214
209
239
155
220
184
177
185
169
225
200
232
225
193
215
175
217
214
183
222
154
180
167
139
168
181
225
149
222
195
229
248
205
257
223
173
220
144
208
245
185
154
197
225
268
185
159
196
231
211
106
184
182
210
223
180
278
165
195
195
169
146
140
247
228
199
257
211
201
164
160
140
161
242
256
157
241
214
219
207
183
238
181
117
242
236
153
201
220
167
251
194
224
118
231
212
217
249
170
234
193
182
215
184
161
204
204
220
168
160
177
203
162
228
212
186
224
195
249
243
111
250
192
145
180
164
201
217
182
214
159
210
223
163
245
164
214
266
214
163
194
171
169
185
114
171
227
205
269
249
210
215
181
220
173
236
221
219
210
187
194
192
145
193
181
195
185
248
182
200
217
230
212
208
235
205
196
167
178
211
217
190
157
184
173
145
240
211
193
243
216
191
233
201
234
147
235
157
229
220
166
161
192
231
184
241
241
204
239
223
247
196
201
219
219
182
170
156
199
187
199
144
210
190
197
276
219
194
240
242
161
187
271
182
204
153
190
193
188
200
199
193
145
197
192
230
160
212
203
184
203
162
191
225
174
220
232
177
170
225
179
188
185
211
185
161
182
190
256
247
184
252
221
240
198
226
176
235
198
169
219
200
207
173
199
208
204
198
176
248
219
188
208
211
220
216
143
200
204
155
253
171
231
166
183
265
215
216
171
173
222
239
223
136
203
124
177
215
207
146
209
192
216
165
191
227
209
225
139
167
194
201
210
140
255
199
178
185
156
124
178
202
209
247
245
212
178
266
220
212
179
228
235
268
234
206
176
205
163
228
213
222
146
177
118
281
178
148
239
235
180
187
189
176
198
188
180
158
203
241
248
192
169
199
229
184
219
221
211
201
187
175
165
236
222
230
161
263
140
153
209
207
213
220
191
186
209
200
177
212
228
220
189
261
238
188
203
176
174
206
221
150
273
250
198
192
201
178
223
208
169
224
183
208
213
243
191
259
185
175
195
236
208
237
186
242
181
183
196
183
188
222
221
172
184
116
203
241
200
145
160
229
185
160
184
267
168
178
194
241
126
216
214
162
211
193
219
184
192
210
150
211
205
245
172
134
195
230
282
211
108
254
225
209
158
135
234
206
233
244
217
196
182
195
195
206
151
209
212
244
174
175
238
213
185
255
161
235
208
220
210
218
266
228
147
167
185
204
191
201
239
207
189
168
237
212
257
192
189
216
212
247
201
159
207
197
218
199
171
217
216
199
234
203
201
179
191
248
172
227
172
150
146
166
183
176
187
250
198
143
255
178
160
146
242
169
177
163
137
177
148
176
154
192
244
222
199
231
211
132
153
233
196
167
237
209
188
197
191
188
176
173
262
205
259
202
223
177
200
224
194
177
259
241
189
248
171
204
238
181
155
199
199
159
183
228
150
227
189
192
224
150
189
174
183
175
220
150
238
202
238
252
184
131
237
186
109
250
243
252
202
153
264
205
215
239
192
236
181
186
134
214
128
238
161
191
134
158
209
179
169
247
219
260
156
204
201
191
192
184
251
268
250
167
236
187
260
190
191
222
224
227
163
271
200
144
197
244
173
274
261
154
113
176
138
245
236
149
232
146
264
190
191
140
170
186
215
139
130
169
229
214
202
190
237
220
177
174
175
185
191
222
249
189
204
183
260
205
195
210
146
224
253
190
186
159
146
196
199
189
165
211
158
213
127
211
267
170
221
206
168
142
244
200
220
232
191
163
224
180
259
183
283
206
195
188
160
234
180
181
204
204
153
179
214
222
169
200
163
233
208
245
134
153
178
174
200
249
159
174
212
210
192
212
203
177
173
144
136
209
200
245
229
213
270
225
217
221
219
245
142
207
196
199
183
102
219
217
251
171
225
214
201
182
221
167
170
213
250
232
199
218
204
286
181
166
218
184
219
243
198
195
190
232
163
199
136
202
228
218
225
205
208
249
190
223
167
189
224
177
189
205
256
209
160
252
209
174
205
161
224
196
205
154
199
183
167
250
181
243
201
210
142
195
144
175
197
206
149
166
213
207
256
210
173
166
166
233
205
211
138
262
175
216
225
200
174
242
191
138
177
266
180
254
193
117
172
247
228
194
197
248
177
239
221
218
254
189
233
211
244
170
220
204
238
177
221
135
222
132
168
196
191
242
193
225
206
204
194
176
220
229
164
195
225
207
128
121
176
237
222
235
261
184
237
190
171
243
232
229
200
245
237
202
233
186
271
216
190
154
166
171
217
227
246
276
165
223
188
204
277
201
259
191
201
225
174
207
173
137
233
213
151
220
198
180
180
157
194
137
172
157
215
257
237
191
169
194
188
223
156
199
143
254
165
217
188
144
189
180
208
226
221
144
188
137
242
160
188
177
209
189
202
228
208
228
173
241
222
237
287
215
199
164
214
224
199
187
188
181
239
184
210
187
177
239
154
155
191
217
181
186
236
203
146
181
194
145
183
231
173
148
186
162
146
191
123
134
231
191
182
241
225
221
190
201
199
198
214
194
242
234
170
211
160
155
186
227
181
205
217
282
287
217
154
188
192
236
241
230
161
250
234
224
177
159
189
144
221
181
168
158
236
147
185
168
182
220
254
203
198
250
218
201
186
289
232
184
235
259
184
244
255
189
154
251
202
197
220
233
133
200
242
256
180
209
184
249
261
194
232
244
190
185
278
192
184
235
208
223
220
216
204
233
221
190
241
161
272
229
173
223
166
181
168
192
236
206
203
140
193
192
197
181
219
193
188
224
266
222
228
239
230
189
257
225
229
211
202
263
185
114
177
227
214
217
204
181
237
223
190
208
191
255
162
217
183
211
200
222
231
173
222
175
138
250
196
267
189
278
267
230
247
213
194
205
125
178
181
268
197
191
211
190
232
167
200
167
234
171
164
183
231
173
269
209
195
208
190
192
215
184
216
195
172
197
200
230
226
171
140
145
198
221
222
231
216
178
138
177
177
198
173
203
201
256
198
171
241
141
139
295
189
174
226
183
230
200
210
272
236
236
199
184
218
180
175
176
183
197
240
174
241
189
197
204
206
227
192
193
191
220
210
272
240
151
177
200
187
135
235
232
170
168
215
188
108
220
246
131
199
197
209
188
231
192
205
223
142
203
145
267
237
219
207
212
155
196
231
208
224
226
157
195
138
240
222
266
207
207
221
235
166
193
183
223
204
167
178
264
135
243
148
191
248
129
180
198
172
244
180
223
185
135
249
151
203
224
176
219
228
169
178
193
224
275
273
159
225
197
279
158
207
220
172
216
199
245
176
140
127
230
213
176
197
137
225
211
137
230
233
144
234
180
182
269
182
156
245
201
229
198
205
129
141
224
201
207
233
179
176
197
178
221
199
237
182
184
189
242
226
148
248
210
206
206
201
204
176
198
218
249
260
185
149
225
127
202
220
84
207
199
187
186
148
181
157
171
204
247
209
199
181
192
169
227
178
192
236
235
257
204
208
181
250
222
222
235
241
244
201
150
198
159
201
189
228
152
263
154
228
200
245
169
228
206
180
244
209
128
193
207
256
147
186
156
196
163
197
213
175
217
136
139
195
194
242
211
193
188
229
172
235
225
203
219
215
239
182
202
263
234
223
243
194
215
238
232
169
198
142
166
151
182
189
274
128
149
178
174
246
197
205
197
230
220
166
178
180
196
188
229
191
188
204
196
202
167
226
178
209
195
230
198
218
230
160
206
176
205
199
187
204
199
192
233
153
207
190
221
189
188
223
164
212
195
186
180
220
190
190
170
288
242
269
225
212
213
200
234
240
219
156
208
155
197
242
190
200
231
234
203
165
210
246
170
262
238
248
214
123
206
228
207
146
176
255
118
163
228
241
187
162
245
222
238
257
212
260
102
237
176
124
237
252
248
181
257
208
224
208
224
220
172
201
224
182
230
195
219
221
237
179
205
130
234
185
203
159
192
231
168
165
174
246
252
189
159
190
169
229
217
188
217
221
182
176
173
189
141
271
193
175
195
200
176
132
136
184
231
243
222
169
251
176
162
279
177
139
161
220
179
191
236
201
203
217
212
243
213
177
220
253
178
145
206
201
222
274
228
208
164
155
158
187
256
228
234
193
211
221
226
183
178
235
243
175
150
164
244
157
201
252
203
210
158
138
206
217
156
202
226
146
230
199
222
191
248
207
138
155
200
229
134
222
212
159
223
192
179
245
165
156
160
182
234
174
277
170
173
241
185
203
180
155
209
196
205
132
195
137
202
218
247
269
158
167
150
162
199
243
241
201
194
264
141
149
138
190
222
193
195
195
187
197
254
179
158
193
194
187
176
250
195
236
188
195
187
190
161
204
145
192
208
107
183
207
218
175
233
180
229
256
114
146
251
189
224
225
186
200
241
235
164
208
130
165
166
178
223
203
228
189
190
220
217
170
240
203
184
221
192
241
157
175
278
201
203
223
231
246
224
180
171
166
213
121
190
153
141
197
184
255
185
253
158
234
181
188
201
230
198
194
211
254
171
210
186
245
182
181
216
188
222
231
202
189
222
214
231
170
190
227
149
235
167
168
230
228
227
195
169
188
171
228
200
205
128
233
208
147
197
240
190
206
210
155
219
151
182
237
210
156
209
234
179
195
176
212
171
231
231
252
217
192
210
186
183
234
178
260
181
183
184
91
238
209
221
172
192
265
264
183
204
199
249
155
161
226
191
226
133
200
214
147
253
214
188
217
219
177
168
234
219
203
171
195
229
192
188
207
192
213
207
155
214
203
234
192
161
190
230
196
209
140
146
212
180
188
195
199
179
217
131
218
236
256
310
205
178
185
144
206
240
176
168
168
193
195
145
237
160
210
260
132
168
208
197
175
252
169
225
216
248
200
233
205
244
222
222
232
230
231
194
199
219
242
179
158
255
151
183
207
222
207
218
200
252
125
195
188
193
218
171
261
248
169
195
236
227
173
164
206
212
219
191
245
236
257
186
189
211
224
285
199
190
206
261
199
193
198
182
175
223
209
171
164
139
199
155
192
181
207
185
143
209
257
220
209
170
175
215
169
268
181
211
258
196
237
197
167
216
194
236
252
163
173
203
188
153
128
173
232
221
194
227
206
258
211
152
223
185
206
224
210
203
231
193
185
205
262
205
203
187
211
191
240
202
193
220
154
233
269
229
215
217
189
213
224
194
240
198
242
232
165
255
198
199
196
183
209
151
229
201
199
142
202
231
155
185
198
179
205
174
165
205
190
183
258
199
226
175
142
174
206
161
184
217
172
204
241
165
237
211
228
222
184
223
250
112
191
178
173
299
231
235
233
175
167
256
216
197
244
187
248
242
152
230
166
235
173
202
179
142
200
209
205
264
210
194
175
180
182
253
155
168
149
166
227
213
194
204
261
199
180
223
236
198
242
215
181
220
183
191
229
191
227
262
170
153
218
219
206
248
181
166
208
243
146
195
264
256
174
201
179
189
162
195
215
209
247
197
172
178
230
212
162
153
245
215
264
202
206
175
224
206
206
199
236
193
214
190
237
183
150
232
192
210
184
220
165
223
215
247
181
235
242
180
198
205
111
206
211
220
213
248
243
264
210
185
211
236
223
192
235
180
194
183
177
211
239
149
179
185
177
174
215
227
139
202
180
187
191
222
218
208
141
186
135
217
178
198
229
159
192
257
231
249
191
260
209
195
181
167
209
204
206
170
196
246
207
252
207
218
219
154
229
264
131
209
231
202
206
156
192
247
170
218
268
186
160
248
251
230
148
246
208
275
227
191
226
176
189
207
232
245
158
183
217
181
185
204
186
213
197
142
222
219
156
187
163
226
186
196
105
266
198
150
199
257
237
196
239
143
243
152
247
217
193
202
205
206
242
190
171
238
239
139
216
193
205
182
193
136
187
159
155
230
253
163
155
248
176
162
157
183
203
167
237
235
208
224
190
219
203
240
230
252
183
222
159
179
139
219
223
263
228
214
209
208
184
223
149
129
197
202
133
201
205
274
203
130
191
207
217
234
231
219
198
237
230
236
171
204
201
236
182
266
190
230
210
180
168
192
225
163
181
228
199
240
145
198
236
176
220
206
215
219
191
205
238
174
203
221
249
205
210
171
222
201
246
257
210
238
146
212
189
144
195
196
138
253
205
174
244
221
154
140
191
190
193
168
218
194
250
215
159
178
233
214
245
213
177
188
198
216
188
237
243
130
149
116
261
149
195
169
226
185
146
182
181
269
189
239
230
161
209
205
204
179
238
215
239
231
233
196
201
224
193
255
157
206
213
223
134
193
273
190
178
232
240
227
217
186
184
249
216
153
125
198
183
171
109
237
226
213
198
115
266
156
222
232
192
99
208
186
255
214
212
222
174
183
199
130
185
187
186
195
213
210
196
201
164
191
243
191
218
191
258
143
185
195
200
144
217
170
157
219
244
198
172
202
217
213
187
187
198
152
191
227
224
202
189
179
150
252
190
218
170
215
230
151
232
232
219
218
185
185
196
231
177
213
212
244
199
186
199
207
168
208
171
170
203
188
219
202
216
169
145
172
221
226
187
232
145
175
219
213
210
166
238
161
210
210
207
122
167
160
203
172
215
138
185
215
166
193
237
191
230
296
230
181
192
183
204
175
196
166
125
114
217
197
248
179
203
241
168
207
198
203
169
188
167
206
179
241
234
258
235
221
232
219
201
239
202
193
167
194
228
166
216
204
241
255
210
257
232
248
196
211
158
170
201
189
194
150
208
206
173
182
148
185
188
200
150
153
187
226
220
215
266
209
215
183
139
185
169
139
182
192
241
169
212
196
194
179
209
229
199
150
235
197
244
161
193
171
203
207
199
192
249
206
180
231
211
186
229
213
172
228
235
195
153
164
215
203
143
144
201
176
212
192
175
162
218
161
143
250
161
147
204
205
172
253
193
215
220
171
209
214
213
167
172
184
166
206
198
210
170
224
177
207
222
192
227
234
185
253
171
194
163
191
214
186
172
163
139
199
220
249
163
222
200
201
182
192
173
233
191
251
197
227
177
176
180
188
207
197
208
174
201
218
246
173
199
125
223
255
183
247
216
187
111
193
213
150
251
208
194
216
188
184
244
187
222
229
188
229
219
275
223
178
206
253
211
195
185
170
209
223
193
214
228
193
189
192
172
174
218
142
155
183
188
230
210
234
178
240
257
208
228
209
255
202
189
252
219
210
200
236
252
199
211
243
243
139
220
189
228
289
187
218
203
203
219
202
193
194
210
203
188
186
208
265
204
176
144
233
164
185
205
177
167
208
196
169
209
143
220
184
180
185
209
257
210
208
216
226
269
213
183
186
165
139
230
171
169
208
224
216
235
214
207
228
227
205
278
157
149
115
202
252
247
235
196
209
153
222
168
213
147
179
200
169
204
194
171
210
207
124
171
216
155
218
97
180
210
205
124
159
236
225
183
224
211
154
233
150
214
164
212
194
179
207
179
235
248
235
228
192
219
216
236
228
192
178
211
287
156
208
264
183
220
222
188
165
177
165
240
208
191
230
170
194
234
209
158
234
218
195
199
238
237
225
217
186
246
189
179
196
208
194
253
194
231
172
224
182
206
204
198
212
158
243
238
192
219
176
149
146
202
187
175
199
206
202
169
268
178
189
241
210
190
194
214
158
207
176
254
167
162
158
217
192
223
164
198
158
109
222
119
175
252
169
212
243
194
164
170
189
168
178
178
208
177
241
219
234
247
219
231
234
229
226
236
186
171
175
232
184
243
199
238
208
197
165
212
175
187
174
168
204
179
116
236
182
151
263
213
204
191
220
243
189
254
232
187
194
233
188
209
224
172
172
154
221
188
216
238
180
185
221
227
193
228
182
239
218
177
210
211
216
248
232
230
227
175
202
234
156
227
144
220
144
194
139
193
195
195
198
170
199
215
194
182
226
179
153
182
186
228
170
163
218
178
168
233
185
199
199
237
216
130
135
239
147
191
183
196
233
186
250
169
218
217
164
179
213
189
191
214
184
161
172
192
186
229
191
123
169
141
213
193
284
228
231
251
204
207
195
212
205
173
225
251
247
151
227
208
188
167
133
167
189
228
164
240
198
195
159
152
186
221
236
208
217
187
235
189
156
187
247
266
237
194
220
197
179
260
238
188
230
212
209
224
210
184
126
202
258
134
257
127
171
167
246
255
233
189
157
212
151
203
219
150
133
173
146
204
199
253
233
247
213
210
236
171
214
289
218
268
243
242
139
207
135
173
208
246
223
229
165
144
218
221
157
233
277
188
198
181
242
144
193
172
198
204
195
204
213
205
166
223
225
165
178
234
179
198
163
234
197
223
246
175
252
187
228
157
185
237
145
211
232
203
157
175
182
229
182
218
157
194
151
229
186
208
175
197
234
236
227
239
200
294
194
148
207
161
193
177
195
193
217
244
170
200
215
182
192
217
195
247
212
179
201
239
232
135
226
179
203
213
149
214
157
181
219
216
176
228
189
162
194
275
229
263
221
220
236
200
165
228
250
263
224
235
159
216
268
194
175
224
240
217
182
202
161
230
148
243
125
208
187
254
156
197
224
185
242
209
194
150
208
200
243
197
176
200
174
172
132
118
186
230
219
175
241
211
185
118
194
150
209
230
230
222
221
177
218
255
158
164
174
194
197
225
171
211
195
217
201
228
227
196
230
164
253
185
186
192
164
222
208
266
255
159
210
166
210
236
194
243
194
209
172
198
223
175
213
222
202
189
220
228
190
215
174
265
213
238
162
197
150
244
219
195
123
147
255
228
168
250
206
208
231
172
210
201
226
259
207
227
225
210
181
218
207
251
215
181
200
230
174
242
213
174
150
137
160
221
255
207
169
227
151
213
286
190
175
259
188
182
134
190
188
160
248
204
202
176
210
211
257
204
183
198
150
168
168
169
193
202
243
231
222
189
179
158
206
182
245
245
223
130
228
201
166
173
245
168
268
208
183
189
243
239
223
156
170
145
227
194
188
226
217
211
159
250
190
189
204
155
203
260
203
207
194
210
192
210
217
150
206
200
245
211
251
201
214
212
187
247
219
228
180
176
222
172
183
202
213
222
193
201
218
279
245
234
211
228
199
188
240
245
222
241
271
161
168
188
155
183
212
151
176
201
208
168
174
206
164
223
219
160
205
205
118
133
226
206
248
225
216
186
228
182
269
154
205
215
143
171
133
171
160
215
225
147
237
251
142
197
171
219
218
168
163
223
199
221
202
187
179
171
229
201
203
183
142
249
208
209
166
139
191
139
204
260
253
139
217
194
256
200
254
215
159
150
152
183
191
250
164
204
168
170
192
90
164
188
151
165
189
222
188
206
185
201
125
237
216
201
149
184
221
194
167
236
268
218
198
232
212
226
229
218
228
206
251
187
189
200
186
177
289
196
190
233
253
132
192
178
162
216
149
189
202
186
218
268
226
253
218
234
159
269
254
176
210
163
216
216
197
200
227
263
183
186
163
274
208
228
234
233
219
178
192
150
166
158
198
190
175
182
197
204
239
188
209
210
203
214
162
204
198
155
146
205
217
208
228
222
223
146
181
213
222
208
219
231
205
242
158
217
152
208
142
189
211
240
193
231
148
201
152
240
195
195
281
198
249
167
214
242
167
231
198
207
215
172
231
163
162
188
228
196
198
206
225
148
152
132
212
174
151
118
190
192
236
236
203
152
227
154
222
208
207
175
221
198
151
207
155
172
197
196
180
185
153
232
194
138
203
224
168
185
187
241
214
237
198
171
189
200
176
235
227
162
215
269
202
215
225
165
205
228
185
175
187
252
175
189
173
190
183
174
195
156
222
254
214
230
202
209
207
186
167
157
212
192
139
129
205
190
201
231
183
229
185
212
167
163
239
240
190
159
185
174
167
236
200
142
262
157
192
185
211
187
165
223
255
221
192
144
147
152
238
182
204
213
160
153
203
158
175
198
176
216
211
212
208
181
208
117
215
172
174
193
187
222
161
172
209
198
186
230
191
190
121
200
216
231
176
143
269
188
163
246
241
231
228
188
143
179
243
144
128
213
247
213
240
221
219
186
206
188
194
218
199
167
211
180
248
194
264
250
191
238
168
201
155
183
229
190
107
208
157
243
233
241
237
186
203
213
201
266
197
260
185
204
207
203
204
206
236
172
200
153
249
173
182
176
182
184
206
199
185
198
213
198
232
233
201
165
235
236
209
195
191
232
252
272
163
247
220
197
243
184
265
179
211
168
253
251
184
272
204
231
215
147
190
156
184
208
242
173
219
204
212
188
167
157
232
208
214
182
238
179
237
182
227
219
130
177
171
161
133
185
186
170
192
201
197
165
192
206
230
242
197
248
255
204
236
199
251
218
199
173
195
189
187
122
174
177
202
221
187
137
245
202
131
189
182
159
170
199
170
210
193
158
108
239
170
242
118
238
237
246
200
182
187
219
257
101
254
179
208
206
189
152
231
188
160
136
169
176
156
262
251
224
213
170
173
211
242
207
234
202
208
152
152
137
144
186
237
190
249
171
180
200
195
220
273
243
198
200
237
155
181
226
136
138
158
242
205
129
250
222
231
232
192
174
221
275
215
186
201
191
207
183
197
205
251
181
182
210
232
207
250
200
190
171
222
227
225
216
206
194
245
248
200
250
211
162
130
184
173
147
204
179
196
177
212
186
202
177
182
195
232
187
242
223
143
197
132
199
166
244
180
200
203
202
269
167
115
176
199
188
220
223
204
163
184
261
239
136
176
166
165
165
215
208
166
215
197
195
160
170
200
214
122
188
231
188
130
158
181
201
218
166
237
147
203
141
183
186
152
212
195
193
178
128
233
207
173
197
210
187
231
225
141
181
145
275
155
180
229
183
241
221
177
209
243
260
238
161
164
231
227
216
198
133
172
232
249
202
212
196
145
191
212
232
239
164
180
187
155
174
214
187
171
204
211
148
229
210
234
219
240
155
197
168
223
184
216
178
226
232
182
196
215
192
178
235
165
183
127
188
156
208
206
201
219
226
152
176
195
228
210
219
147
173
217
187
198
243
224
156
171
81
166
224
217
248
176
162
197
177
186
182
167
167
222
131
220
240
180
215
172
205
141
223
229
219
212
170
231
244
217
190
222
228
189
252
203
207
193
228
208
204
221
167
199
221
166
240
162
215
249
230
204
180
184
170
288
194
164
225
232
193
240
222
203
242
238
236
206
189
220
206
173
196
194
192
172
260
207
148
192
192
200
211
221
217
188
224
156
228
209
242
178
206
195
218
237
194
200
220
230
238
169
158
276
102
148
244
247
265
193
228
242
188
192
198
171
133
187
170
179
199
162
220
135
161
182
231
183
249
165
199
206
223
158
169
167
135
194
174
229
221
172
209
273
177
216
173
204
220
192
204
177
191
172
142
218
196
175
181
214
192
231
172
194
216
177
190
155
220
195
244
189
220
245
279
204
189
179
190
160
227
195
222
224
258
177
225
235
242
288
234
193
141
200
236
135
178
162
168
192
203
182
232
209
188
221
194
187
172
210
205
203
209
167
164
201
194
169
259
205
170
242
189
146
184
203
178
247
175
161
202
209
161
268
194
244
161
182
164
221
184
203
188
246
169
197
164
203
139
198
152
189
229
222
196
213
228
214
206
204
201
148
161
229
203
155
188
253
183
216
189
238
190
198
263
164
197
193
182
230
232
236
211
159
179
264
166
150
149
193
158
208
269
218
254
247
207
204
202
237
173
195
193
219
147
185
259
162
162
196
206
210
231
204
228
230
189
164
207
218
246
253
216
201
210
207
204
189
231
189
164
173
199
114
151
226
189
185
200
213
210
150
206
214
165
144
156
211
192
174
155
195
160
209
221
219
243
169
222
228
222
197
197
201
178
239
175
227
185
209
215
267
216
249
234
244
241
210
212
213
256
244
189
280
186
218
147
209
205
119
247
203
236
246
225
208
215
191
177
217
177
242
230
216
257
228
194
196
199
217
171
139
191
202
200
217
160
176
230
280
231
172
211
196
178
155
248
197
235
181
181
209
204
218
221
216
192
240
223
185
232
223
210
143
211
186
219
211
201
192
217
170
172
199
174
149
209
195
214
233
165
265
189
292
222
196
225
191
201
207
205
200
226
174
171
193
176
218
187
221
248
214
169
254
217
197
205
185
198
114
222
189
192
198
146
179
181
185
193
161
167
162
236
138
183
188
159
165
223
183
245
199
192
202
201
245
251
206
175
168
232
194
186
199
197
172
188
183
211
205
153
192
158
206
168
238
220
208
184
150
232
171
222
166
181
180
142
209
167
166
197
135
213
199
162
187
183
209
180
276
180
215
162
195
193
223
230
170
198
232
213
166
235
188
191
173
184
215
235
294
265
214
202
182
244
202
235
199
163
155
243
229
225
228
182
201
187
192
233
256
124
153
181
204
245
175
172
234
160
191
251
173
183
227
269
207
167
256
182
168
182
181
198
178
222
255
181
258
172
200
139
203
223
223
178
206
208
249
149
216
149
253
187
216
227
170
177
205
227
199
218
191
216
143
219
206
252
196
225
237
162
263
152
121
101
196
237
217
236
219
212
268
154
250
191
185
220
173
211
169
186
235
215
208
217
245
241
190
189
210
259
174
173
154
242
178
244
195
184
216
160
236
215
190
157
167
170
171
221
187
149
253
170
194
178
200
149
201
207
244
151
189
202
199
170
230
201
231
226
186
172
265
241
239
183
202
178
195
223
196
208
205
211
254
186
170
200
271
173
245
186
181
127
175
166
205
164
264
225
198
249
208
163
161
180
201
159
225
179
206
185
207
188
236
212
176
248
221
275
239
274
221
179
167
219
247
244
240
139
201
187
157
196
228
152
145
182
168
246
226
226
218
222
170
234
171
191
168
232
231
187
163
215
168
239
188
135
234
172
172
212
172
230
221
160
251
215
221
205
222
115
217
212
258
226
243
184
224
193
201
254
219
259
208
131
166
192
228
189
200
189
206
231
199
168
215
243
229
187
204
221
198
102
227
202
243
208
239
130
243
165
228
223
168
224
233
213
199
163
235
190
208
221
201
160
174
132
247
168
233
221
225
216
235
206
197
249
203
227
235
145
224
229
227
209
212
185
186
219
237
139
193
243
244
177
225
142
139
211
251
191
180
250
225
197
165
242
230
208
161
180
277
256
209
264
218
184
156
231
236
156
187
206
182
210
125
169
204
220
260
167
131
205
216
242
194
176
215
212
174
214
146
204
255
212
170
170
156
187
196
256
216
185
192
243
190
200
208
208
197
178
220
127
196
214
192
126
212
152
205
153
221
220
191
226
234
178
226
236
259
227
200
214
156
177
181
256
229
233
201
218
203
193
204
196
199
194
192
167
162
178
168
237
198
160
183
157
219
203
209
190
184
218
173
248
153
171
197
214
264
221
236
157
163
178
197
201
166
124
216
221
173
231
204
232
225
193
188
211
185
168
124
207
243
212
145
230
197
228
265
187
174
258
223
206
262
160
245
191
263
222
265
220
223
191
219
285
158
133
270
242
217
284
234
225
209
178
186
203
218
248
248
181
185
191
219
186
149
200
111
194
146
197
254
187
177
212
108
234
223
218
87
238
257
175
209
182
207
208
251
240
198
206
191
134
158
246
164
194
128
228
260
249
229
199
217
213
149
237
172
210
216
197
245
215
192
156
212
200
152
210
134
191
208
241
226
171
182
189
145
131
201
200
183
204
240
148
178
194
207
243
182
112
205
191
183
205
186
225
154
253
169
148
218
164
251
160
175
208
204
141
132
185
117
265
148
206
233
160
202
280
160
229
182
195
224
187
164
187
192
241
100
182
161
168
231
232
196
180
265
218
196
190
197
235
178
195
246
173
193
140
149
176
218
188
208
229
228
202
225
223
183
221
277
196
179
177
266
185
169
216
232
204
189
197
140
201
194
158
176
229
205
208
209
195
181
140
231
217
211
213
217
138
79
215
233
205
239
258
207
199
224
176
226
136
150
152
179
210
243
239
196
230
183
162
193
169
228
197
217
157
218
164
228
205
173
238
167
159
258
205
156
266
231
236
220
223
212
226
134
232
219
202
156
228
189
212
259
168
180
196
228
204
219
212
208
149
200
149
160
194
235
226
161
228
229
166
224
237
203
242
274
225
232
167
170
206
198
142
213
218
175
196
227
146
224
208
270
273
183
224
185
228
252
188
248
229
148
193
215
194
206
196
253
239
222
267
250
244
197
239
162
137
208
178
184
247
211
148
142
193
212
223
203
193
180
202
122
194
168
215
192
234
217
223
164
194
210
217
198
216
245
208
161
197
232
190
146
203
176
192
221
176
197
179
220
145
172
193
211
209
195
209
220
173
226
132
198
193
185
250
218
232
195
194
205
175
249
187
229
198
254
217
201
222
205
219
132
253
217
183
235
190
179
197
141
226
185
228
154
245
162
193
284
175
189
227
216
170
164
164
210
230
167
228
194
245
202
190
161
256
233
144
229
244
213
207
191
218
177
206
194
209
254
218
161
243
169
140
175
227
147
194
205
222
172
214
187
180
211
198
174
194
225
193
130
190
226
255
152
208
212
186
157
261
163
216
182
219
215
173
228
153
217
237
180
160
234
183
228
206
185
181
188
204
232
189
244
143
232
129
233
226
214
164
205
137
237
171
205
179
208
150
188
225
234
176
248
188
130
229
199
215
191
201
178
231
202
244
180
164
259
199
199
192
198
210
182
248
240
229
246
186
192
205
210
241
109
241
227
214
212
215
184
177
245
204
190
267
200
152
240
221
228
246
202
210
225
211
150
195
203
171
212
217
193
184
250
164
207
220
214
192
210
208
162
208
239
195
194
213
204
237
205
287
222
183
197
164
200
195
156
222
159
178
235
205
167
175
194
196
136
179
208
179
138
239
251
190
219
259
215
135
181
191
220
162
202
178
185
199
168
227
195
137
176
168
200
253
247
189
179
233
205
186
180
127
194
163
217
174
235
164
140
166
200
172
215
232
171
214
173
189
173
189
184
222
188
217
245
179
131
183
213
119
117
132
189
193
218
163
248
223
206
225
156
183
179
151
213
207
197
190
132
194
183
204
208
180
157
237
237
228
178
168
113
227
174
206
173
228
223
166
247
165
216
222
196
215
248
160
250
142
207
198
193
176
185
209
231
185
187
122
244
226
187
250
179
156
182
177
170
216
135
253
254
189
182
137
127
207
225
221
169
187
145
225
180
183
227
276
220
150
222
225
220
172
192
154
184
182
237
186
174
181
191
125
211
240
150
263
175
212
204
172
222
188
207
214
146
169
147
201
189
169
166
149
196
233
223
211
275
229
193
156
210
196
207
178
232
184
244
212
245
175
159
230
147
218
197
185
233
173
253
217
231
207
150
182
274
167
255
169
227
238
201
251
191
229
236
149
220
262
225
222
196
224
184
142
195
193
163
262
109
214
263
147
234
228
219
258
193
239
177
177
207
153
232
197
203
166
169
205
242
165
218
194
220
215
179
266
224
183
81
177
131
212
160
200
230
213
156
215
186
254
228
97
231
264
245
197
182
217
201
242
230
188
155
216
183
180
185
250
156
172
237
137
224
197
262
211
188
200
267
227
182
187
94
196
259
166
293
166
186
161
209
185
130
212
183
202
216
209
174
243
151
213
173
225
221
163
235
226
214
202
169
199
201
150
175
198
194
244
201
167
177
168
218
218
227
176
227
128
180
229
192
199
230
195
217
150
206
262
170
168
169
214
155
175
189
209
164
216
181
164
193
122
236
221
215
240
262
194
210
196
244
172
227
225
238
208
209
230
231
206
236
229
212
206
229
217
204
209
225
151
211
139
145
242
188
189
174
159
260
170
195
137
239
214
182
163
151
229
188
220
162
204
231
231
184
209
237
190
177
220
190
240
248
234
207
113
236
198
191
182
203
172
173
212
163
208
185
185
177
220
209
253
233
192
227
190
205
204
194
184
160
186
140
186
263
178
214
204
246
172
202
202
161
237
157
208
194
180
137
213
175
227
201
187
262
197
241
202
166
204
217
190
203
210
206
208
236
241
208
229
170
202
278
236
202
182
192
220
223
203
221
234
149
202
173
258
225
120
202
144
191
213
225
140
220
152
202
209
207
192
179
178
174
222
194
202
194
198
167
208
189
156
194
204
221
241
223
198
224
238
215
172
244
179
229
209
188
193
178
205
217
189
201
213
232
116
170
200
261
197
185
201
228
201
177
195
183
212
147
192
175
209
188
162
182
254
190
278
194
211
191
263
188
147
159
141
243
206
137
188
273
153
182
145
131
179
229
112
235
177
238
178
198
134
216
272
213
199
233
260
230
152
193
253
218
210
217
205
220
198
207
227
175
151
197
126
149
264
202
218
172
201
234
237
207
131
210
201
252
186
230
153
242
269
231
187
182
182
177
248
214
197
216
177
180
171
179
177
232
202
103
196
242
207
199
233
212
211
236
184
225
163
156
174
201
168
182
221
196
154
182
201
176
143
180
122
190
222
178
178
207
196
180
243
199
170
189
197
154
217
187
185
261
166
184
210
186
170
189
180
163
230
215
278
185
183
215
220
153
208
235
198
210
230
181
216
192
227
136
165
218
210
186
196
194
219
214
166
198
296
209
143
239
222
218
195
207
161
176
145
212
164
215
176
166
150
187
254
224
242
266
185
158
206
165
265
270
227
205
204
211
171
235
156
231
133
212
245
224
247
204
168
186
243
181
219
182
217
243
217
216
188
223
200
204
211
248
179
234
189
257
146
233
243
182
192
233
139
231
166
217
193
203
132
166
160
184
236
161
229
168
227
215
171
134
215
226
191
208
242
221
180
200
204
136
229
201
92
244
204
189
241
214
219
227
257
192
178
188
187
245
199
172
150
217
248
219
145
151
194
204
194
200
214
162
232
176
208
191
256
247
183
136
217
250
169
218
141
209
217
253
153
160
221
260
137
148
199
163
221
231
255
168
175
152
182
147
181
224
165
219
197
234
168
198
261
191
201
236
193
228
191
148
251
151
176
242
184
225
169
235
189
136
250
248
154
195
158
202
263
210
194
170
233
261
230
176
188
210
203
233
207
213
189
200
305
225
190
190
122
175
223
183
145
238
153
184
182
225
207
210
195
191
184
188
188
211
196
222
217
213
205
219
201
198
141
224
165
161
192
158
232
214
273
160
137
242
198
170
181
149
170
208
188
196
238
200
188
159
192
260
236
208
204
186
167
192
141
222
175
185
201
242
184
189
181
211
198
179
212
159
234
210
226
143
186
133
250
204
171
154
223
277
191
226
160
217
235
189
123
170
164
218
229
137
132
164
246
194
187
180
149
227
216
160
198
190
191
241
248
165
217
147
220
230
154
181
158
212
215
163
207
138
219
222
207
165
222
148
221
226
263
196
189
168
224
206
192
226
247
218
223
241
233
243
198
159
159
203
232
214
227
250
218
196
258
160
248
268
203
272
194
275
233
169
257
200
188
213
207
164
157
177
201
213
199
202
220
256
207
172
219
157
181
132
159
141
186
198
152
210
147
174
194
191
188
168
168
198
113
181
215
259
126
177
218
178
200
254
189
208
221
225
217
279
213
171
229
212
233
154
125
201
212
175
187
242
249
199
216
155
150
150
197
183
167
201
252
178
191
224
237
210
149
237
204
187
199
228
110
193
248
184
201
210
237
160
190
237
165
244
164
167
185
215
220
177
220
153
160
201
162
176
101
212
153
203
148
208
207
149
161
236
249
162
149
192
215
204
222
214
235
193
210
204
194
225
127
257
199
210
215
213
200
241
265
129
125
204
241
196
207
191
193
179
171
241
242
184
176
181
213
183
209
203
110
175
213
237
206
262
239
208
193
195
194
200
194
169
174
171
190
193
255
159
175
190
181
211
224
211
234
116
172
212
179
258
231
186
182
235
264
225
138
188
168
216
279
195
208
169
146
146
204
248
193
216
200
219
231
190
208
123
279
126
216
168
253
204
174
222
261
173
228
217
182
213
189
130
195
216
180
251
220
267
227
205
164
199
123
161
265
178
127
223
252
236
178
202
210
184
236
214
163
180
197
186
183
116
195
222
167
201
183
199
218
170
133
164
167
235
210
154
258
172
169
185
128
220
137
205
184
187
221
249
173
230
221
143
237
174
181
242
190
216
158
207
244
256
231
188
140
249
201
230
189
192
169
255
218
169
230
228
183
170
234
176
184
154
264
209
153
229
259
192
198
229
246
205
179
224
240
186
220
225
235
188
202
202
235
196
242
188
185
218
223
164
191
174
185
230
220
204
136
147
188
192
231
152
156
222
171
214
209
212
213
221
182
206
181
175
171
268
200
179
218
195
206
142
248
212
126
176
211
177
172
198
176
183
161
225
141
193
183
208
179
153
183
180
196
159
281
136
157
165
197
252
141
133
173
200
193
215
224
244
207
179
183
231
170
222
192
248
182
151
175
213
180
189
160
251
162
156
178
249
205
218
204
141
202
223
193
218
165
160
223
241
200
216
201
172
208
148
191
164
186
152
220
211
152
212
209
199
198
180
221
239
236
204
222
213
161
244
192
142
231
248
220
179
220
159
167
219
177
212
206
182
197
242
223
158
183
215
158
124
247
203
223
142
216
260
206
203
177
184
131
204
221
258
194
226
240
214
247
226
120
217
240
166
262
221
143
200
131
261
215
230
205
252
247
194
239
175
160
196
239
200
171
182
187
165
230
161
219
247
138
176
218
222
183
223
178
159
123
153
169
156
270
256
179
200
202
206
244
210
171
194
186
184
206
210
190
229
254
220
149
203
161
186
209
193
192
194
248
221
155
179
211
178
188
217
207
189
152
229
174
247
233
185
204
166
132
172
208
187
243
164
199
238
142
233
259
171
232
243
230
186
267
182
220
175
214
202
230
195
118
207
175
197
167
226
186
189
190
192
225
201
213
191
230
178
239
197
251
141
164
211
201
150
185
215
249
224
152
177
214
187
168
181
165
182
256
193
236
201
227
206
160
207
133
239
204
184
197
193
164
219
199
213
201
225
209
193
200
156
172
273
237
150
239
190
185
199
195
159
217
191
217
193
184
173
202
217
171
214
202
242
250
176
146
244
228
172
136
184
230
169
168
198
225
225
161
154
167
198
240
167
206
193
212
185
211
230
215
181
185
202
223
198
143
166
215
227
235
122
232
188
258
217
236
159
212
205
177
137
232
229
188
132
139
157
245
158
233
174
209
205
156
158
237
218
242
186
239
188
171
192
101
180
218
205
140
232
203
198
213
202
193
203
132
168
145
195
123
255
201
178
224
202
196
186
210
270
135
242
221
228
188
187
134
243
211
246
190
237
196
179
206
220
258
187
191
207
164
185
200
223
212
243
187
179
146
220
181
178
232
178
196
221
211
169
168
237
153
279
217
250
193
187
242
195
173
206
169
235
168
213
146
175
229
214
228
257
228
162
225
181
157
214
225
229
215
181
183
187
175
164
267
171
195
199
183
215
146
179
206
139
222
218
232
105
179
178
219
127
198
193
239
216
202
246
190
273
229
226
201
220
183
162
155
177
239
199
184
226
129
195
233
149
183
191
216
171
169
196
195
184
175
209
240
202
141
188
192
217
165
226
176
243
259
208
171
210
167
235
239
165
212
240
251
177
232
229
215
186
232
201
172
248
193
181
226
145
192
153
195
231
192
265
213
140
218
221
191
214
227
236
244
199
198
205
201
190
179
150
258
155
191
218
150
239
238
200
232
182
220
184
143
142
112
238
244
241
249
148
177
176
164
137
175
216
236
263
177
241
184
153
192
217
229
159
226
232
178
224
251
177
159
177
267
211
219
174
190
232
233
237
213
202
183
187
181
235
224
249
161
159
178
150
219
217
246
222
189
184
184
171
191
181
203
193
200
221
201
173
172
216
196
197
168
255
231
198
173
183
207
198
202
237
194
187
234
223
213
143
206
197
177
186
208
159
218
195
215
231
149
239
197
183
163
172
156
182
189
186
153
210
197
230
163
210
211
184
207
184
212
194
200
221
179
222
180
246
217
185
139
207
153
248
202
193
233
184
232
221
199
234
150
229
179
235
191
129
121
150
158
167
239
201
252
216
224
191
168
172
175
188
221
170
222
179
194
166
128
212
213
240
189
265
198
271
210
229
236
182
249
232
168
203
170
219
234
153
187
207
226
189
152
174
188
219
185
142
230
195
180
120
226
167
196
164
176
168
159
219
202
217
221
171
199
231
197
246
231
234
230
228
245
214
199
183
121
212
206
239
228
160
243
161
211
188
200
231
177
173
190
169
189
214
198
223
152
208
241
151
226
201
141
217
239
244
203
242
134
139
188
151
133
194
206
225
198
202
150
188
211
188
213
104
192
238
174
217
244
196
163
265
232
175
221
126
158
236
162
217
193
141
253
269
180
142
251
220
140
197
155
234
235
226
238
218
233
140
180
191
177
210
259
111
169
250
190
161
180
143
229
195
225
211
183
217
255
162
238
201
254
209
162
260
206
157
166
246
220
189
223
124
247
254
229
144
250
183
239
177
225
221
133
191
172
204
213
186
209
164
139
176
182
246
193
193
194
249
232
193
252
281
242
204
218
237
194
201
239
221
196
209
203
189
216
175
176
202
244
174
227
190
276
199
193
224
249
178
206
174
138
192
226
216
188
232
224
202
250
188
179
196
240
237
214
178
217
170
215
137
168
220
211
150
205
174
183
164
242
204
228
242
288
257
194
180
170
263
151
225
250
216
131
264
186
217
209
180
195
240
215
181
202
237
160
226
195
191
276
258
189
219
252
199
227
240
135
149
190
235
198
181
213
274
216
218
220
181
210
208
206
189
195
224
204
197
202
211
201
218
195
194
207
234
172
226
174
218
224
231
169
154
172
209
207
200
201
194
185
190
156
206
217
203
172
201
238
188
213
235
209
228
171
222
168
203
247
190
232
227
224
170
184
217
116
166
215
198
139
224
209
224
214
236
207
189
184
200
235
181
206
215
204
157
168
159
149
148
183
225
247
179
233
149
160
208
215
197
132
182
177
168
198
212
215
150
169
210
220
187
196
159
225
208
137
234
232
212
258
250
221
105
168
106
219
186
240
189
251
276
215
217
240
251
227
178
196
160
235
234
188
251
168
123
215
210
236
155
202
247
202
217
224
285
226
213
209
194
225
232
201
198
196
204
167
230
166
166
216
213
248
238
182
200
227
165
229
176
214
186
118
179
115
216
195
189
201
224
203
193
177
174
217
208
159
226
150
228
151
241
272
267
244
192
131
216
169
239
159
202
209
206
168
147
229
153
205
181
269
187
179
209
199
173
210
148
169
235
183
258
172
212
180
228
187
171
266
148
178
267
200
166
188
141
260
204
184
191
152
185
202
242
116
256
248
226
224
226
166
191
249
260
196
189
178
192
250
251
204
233
239
184
209
155
212
165
168
217
225
224
184
192
211
184
214
194
238
219
201
167
158
195
169
159
187
240
154
198
207
235
220
200
179
205
167
144
243
213
260
187
159
207
182
168
279
211
96
259
156
171
246
254
204
187
195
167
201
174
243
163
205
221
185
165
240
222
211
148
200
212
165
173
177
225
226
229
215
233
149
246
198
219
103
205
227
180
184
181
169
209
209
206
196
203
203
211
196
247
221
225
233
214
213
191
181
203
157
259
199
273
194
221
186
146
208
199
233
212
272
163
199
189
230
211
266
219
203
224
183
222
191
236
187
182
217
198
239
234
185
198
204
158
231
131
207
184
144
181
244
239
154
215
168
150
201
184
260
228
198
219
234
197
209
227
245
187
276
180
216
186
201
166
270
134
131
144
151
211
178
210
178
197
226
226
206
221
208
132
233
255
182
181
204
215
218
177
181
220
144
209
268
202
234
195
192
173
233
228
121
188
203
163
123
170
202
189
261
218
254
250
224
152
185
201
197
260
175
190
184
256
185
189
185
207
133
248
177
189
221
191
208
220
234
189
196
216
203
182
181
227
149
295
154
168
241
164
246
198
201
210
224
198
204
202
156
255
200
224
226
213
248
213
208
204
157
221
198
220
220
190
201
213
218
187
206
222
110
201
227
266
207
194
228
211
237
140
196
249
166
208
234
154
190
172
169
227
208
252
210
161
214
158
193
227
207
206
159
228
255
216
241
225
223
178
162
183
200
221
243
176
195
215
189
135
214
151
172
170
226
179
234
216
183
221
167
223
262
193
199
172
186
204
254
210
185
192
237
213
197
288
178
243
258
191
225
164
199
183
228
194
174
113
185
134
198
187
240
200
244
183
205
124
204
191
217
218
189
168
236
171
149
190
250
234
272
149
229
218
222
206
179
238
233
204
250
234
203
242
200
197
205
225
188
257
194
157
217
165
145
220
180
163
199
210
210
168
210
149
203
222
171
244
195
200
212
183
214
192
200
166
139
246
265
265
183
225
222
224
212
124
230
169
232
188
230
216
266
190
166
212
201
220
181
175
184
178
220
180
195
177
213
196
213
221
226
164
235
191
261
216
202
245
205
234
201
169
196
229
250
197
140
197
235
155
192
187
172
176
232
146
201
142
251
220
219
133
209
188
248
223
170
233
217
190
163
224
174
180
230
241
228
219
181
256
225
182
199
244
195
195
236
215
222
206
240
219
195
171
192
132
268
188
248
216
176
224
195
215
158
212
206
148
239
203
160
191
230
225
168
236
241
210
152
243
199
209
190
220
260
165
213
190
226
208
168
240
191
175
217
218
198
258
184
213
196
211
246
182
168
223
180
229
181
167
194
158
199
156
170
230
208
199
239
190
197
203
207
135
195
207
230
225
182
216
227
209
178
177
208
174
143
227
224
208
181
156
209
222
199
176
231
170
191
214
166
201
181
187
177
166
188
193
216
221
125
184
193
240
174
179
183
149
219
192
179
248
206
189
212
212
108
219
179
209
225
151
230
140
221
188
227
187
126
208
183
221
225
194
182
264
182
195
222
209
222
218
149
219
204
181
154
244
211
172
199
190
184
203
169
187
123
279
202
171
231
259
166
187
142
223
210
126
186
173
158
217
191
214
187
196
175
182
161
143
196
223
177
194
138
199
125
204
184
187
232
181
215
211
182
190
220
193
229
203
208
166
158
153
143
172
197
217
194
221
166
216
208
226
230
184
244
230
174
216
156
171
221
205
172
213
236
245
188
183
190
205
198
255
223
163
149
177
250
192
216
239
249
261
183
188
227
264
216
236
240
202
161
189
142
227
274
257
160
231
203
197
186
167
185
195
204
180
230
231
215
261
246
266
155
225
201
170
251
121
238
184
182
223
183
267
186
204
200
249
250
246
220
228
258
139
236
247
211
190
201
212
178
234
151
205
177
201
195
224
206
174
181
120
153
288
211
175
143
162
238
174
176
230
195
184
255
167
246
170
216
239
201
220
170
232
147
213
256
154
246
200
226
189
191
174
178
199
217
151
264
236
159
223
226
188
199
205
219
215
202
108
185
248
209
242
231
205
213
216
147
247
219
235
158
188
169
188
205
142
258
222
198
196
226
265
248
172
195
236
216
192
212
222
156
190
210
168
186
194
194
151
242
208
199
229
249
224
166
169
245
161
186
215
202
193
238
174
172
238
195
189
155
168
205
214
191
225
153
207
184
200
174
188
214
238
156
231
214
206
253
214
195
184
183
190
291
211
213
183
186
153
135
207
166
215
244
191
207
198
214
159
222
248
183
114
211
140
202
146
196
170
209
280
203
137
215
210
218
173
232
258
146
159
200
136
191
195
256
171
183
180
268
201
168
199
224
223
209
175
197
191
220
143
181
174
135
152
162
281
166
247
227
169
229
232
100
211
159
216
224
160
247
222
136
216
268
164
236
247
179
220
203
235
189
212
166
149
179
225
140
232
147
217
175
221
214
194
199
252
182
228
174
181
216
224
199
137
211
174
205
242
180
210
216
261
200
280
181
241
160
202
148
176
233
236
191
177
190
220
174
143
243
249
202
276
174
247
187
237
180
217
118
206
148
181
221
224
274
185
141
177
179
201
206
173
186
115
195
205
146
174
213
227
169
209
183
177
187
177
163
234
192
232
131
146
189
191
236
205
242
179
201
256
173
249
183
228
132
179
199
201
219
217
221
191
229
203
196
169
239
283
265
184
236
158
196
200
193
180
175
192
165
234
177
269
246
198
179
206
209
196
192
187
171
164
209
229
224
213
172
196
283
175
233
243
225
242
193
232
170
192
203
199
247
157
255
253
262
185
230
239
215
200
185
161
251
128
222
194
153
164
177
238
205
233
167
136
252
191
180
212
257
164
245
213
227
174
198
254
217
241
203
193
241
184
226
193
197
240
149
194
206
261
186
217
209
253
257
182
186
197
194
194
210
236
129
172
209
267
140
110
136
214
183
203
226
199
201
136
258
240
179
190
206
180
134
140
222
178
230
187
235
258
214
163
245
126
233
236
191
188
213
252
244
183
211
235
262
209
235
144
163
202
211
189
228
265
148
184
163
201
181
174
191
205
191
168
230
195
220
178
191
209
164
181
226
242
245
208
173
201
190
197
220
186
190
172
204
215
240
163
198
181
222
159
212
220
214
128
196
202
203
230
227
162
235
190
183
246
214
191
176
160
224
134
198
149
146
215
174
141
244
165
184
246
212
148
197
165
250
224
176
237
176
246
182
233
162
159
166
194
281
232
167
224
226
273
223
241
213
161
198
205
263
206
148
162
189
176
245
167
214
213
139
184
156
195
191
243
158
184
215
218
248
155
131
203
186
202
162
239
208
207
108
208
207
192
269
178
136
203
156
211
150
232
195
228
218
224
174
230
222
218
140
267
146
184
218
238
189
209
149
217
204
250
211
201
204
226
214
212
196
208
219
200
159
154
185
224
215
140
176
139
219
189
198
181
200
238
171
105
152
143
132
233
98
196
256
215
228
183
196
174
256
197
183
211
178
202
252
173
171
258
151
246
219
194
203
212
174
220
172
175
188
200
197
230
209
180
227
176
209
156
210
277
196
241
266
204
222
204
243
199
227
210
232
193
248
212
185
220
156
221
189
228
234
188
217
251
282
197
205
212
181
183
203
225
214
233
139
146
208
241
213
210
231
183
254
145
227
217
243
264
200
238
232
159
222
235
175
181
166
213
204
155
166
168
155
148
178
176
182
244
161
216
220
219
219
199
210
227
168
222
208
183
192
176
243
201
261
213
143
178
230
240
177
214
249
233
191
157
204
252
167
201
219
259
145
194
220
212
138
204
205
207
240
187
152
176
242
247
214
211
192
179
187
193
237
263
187
177
198
184
226
194
233
209
230
230
203
216
206
201
152
265
172
151
269
225
254
170
241
149
206
211
228
254
202
203
204
210
239
176
243
254
262
213
111
204
150
268
180
201
187
260
178
250
220
211
190
204
153
141
240
166
182
172
120
175
176
186
241
247
221
217
184
226
184
207
289
216
143
192
235
148
200
208
224
201
211
184
186
191
204
170
218
190
153
246
158
213
209
157
212
191
194
205
222
227
203
227
197
180
204
171
203
245
142
177
201
187
201
177
220
191
204
194
211
240
171
237
224
179
193
146
222
143
241
212
268
173
187
212
160
161
221
248
200
163
124
158
197
219
168
171
233
227
135
172
161
208
207
248
220
229
214
125
158
199
211
224
184
177
217
225
199
207
188
186
148
189
181
175
188
218
192
163
191
252
272
146
213
171
206
197
159
199
198
194
179
218
238
257
158
214
208
211
169
240
201
216
200
208
165
235
225
209
188
238
207
203
164
229
141
171
233
279
190
117
135
191
182
171
211
199
118
213
220
192
165
190
170
148
160
172
237
195
205
191
201
190
241
178
175
259
185
199
186
207
205
199
244
159
203
209
218
141
179
140
178
242
188
221
218
235
291
225
176
169
195
211
162
159
199
189
153
217
222
144
200
197
240
255
226
204
177
238
201
196
215
177
208
247
157
235
198
201
231
193
229
243
221
189
119
183
167
170
202
167
190
174
193
236
267
192
201
99
251
202
204
176
198
169
186
237
165
267
162
183
227
221
194
219
185
140
218
155
252
254
167
213
203
177
240
270
253
250
193
259
200
166
183
202
250
183
275
155
186
249
226
243
168
236
166
204
222
196
231
201
219
214
227
174
241
278
226
201
237
205
199
147
247
214
163
219
187
161
265
282
212
249
207
172
221
243
211
182
202
111
225
198
158
217
162
140
239
193
219
237
170
192
209
230
229
237
212
230
227
221
211
226
195
146
213
172
210
210
141
246
167
212
206
201
185
192
168
248
235
222
161
176
239
188
189
226
232
182
194
152
278
156
229
243
219
105
186
215
163
213
235
167
239
171
187
223
211
243
168
178
172
229
213
145
195
152
176
234
209
183
214
188
117
190
245
197
175
215
196
131
162
217
241
233
235
214
204
226
254
218
204
184
269
212
211
169
264
205
193
220
187
253
225
231
269
177
218
168
229
235
201
171
272
148
216
177
231
199
262
196
174
263
281
239
210
185
209
189
168
191
189
214
266
229
199
173
183
178
253
237
208
224
219
228
222
188
238
205
250
194
215
215
151
234
209
210
194
228
241
136
258
160
226
209
209
199
187
260
227
251
172
207
257
208
142
225
241
174
227
190
231
249
207
210
218
221
199
133
205
220
182
207
262
181
174
185
187
193
231
202
127
168
256
184
200
224
221
214
211
237
183
199
248
184
210
244
140
250
245
214
191
226
166
195
188
121
165
264
202
173
225
147
245
178
138
209
198
230
248
220
238
159
155
260
216
279
214
184
222
177
221
218
260
171
235
237
178
190
206
161
251
239
162
139
184
193
194
212
216
177
168
208
163
258
190
228
213
180
222
247
236
219
179
200
159
266
220
140
233
192
204
222
151
208
235
153
214
205
216
226
200
200
211
269
193
184
210
247
192
203
205
241
185
224
212
214
149
199
216
194
211
217
209
179
241
167
157
143
196
165
148
214
146
165
170
133
266
169
179
182
178
230
213
193
171
161
178
134
161
234
208
236
241
216
175
249
214
199
203
202
238
273
189
206
170
273
184
185
272
180
205
189
202
198
208
222
175
242
212
246
178
166
210
241
179
129
229
158
211
189
162
162
237
236
249
142
183
197
119
200
166
177
171
169
173
213
183
176
247
267
192
181
304
249
189
143
222
197
114
162
167
192
172
230
181
210
233
132
219
223
206
230
197
231
201
259
106
192
242
165
242
270
194
195
234
216
219
181
219
226
227
258
189
219
203
154
256
168
197
236
227
197
221
207
197
191
216
207
192
212
181
143
254
143
179
162
244
162
227
137
242
226
193
221
239
182
181
187
191
177
243
181
197
179
202
205
197
195
223
227
234
220
155
196
215
207
148
147
149
173
128
259
235
160
184
195
175
197
220
130
186
182
141
192
245
251
226
148
220
221
210
205
151
212
125
230
179
161
212
238
163
167
254
207
199
206
243
258
242
154
181
205
214
152
214
165
204
181
190
221
211
205
136
188
200
235
201
235
182
116
214
121
208
261
162
200
230
144
122
229
192
178
212
212
163
193
257
254
248
212
201
139
213
272
120
177
177
236
258
227
182
149
233
229
186
249
227
245
256
141
207
175
157
186
179
206
160
140
213
174
212
213
240
170
189
185
206
173
217
149
198
175
229
213
208
190
197
159
198
224
208
153
145
145
218
161
205
218
203
220
150
224
186
204
163
199
227
237
169
199
182
238
178
239
232
162
258
176
192
190
255
241
122
169
165
205
207
165
197
158
192
178
210
170
151
166
165
240
190
182
206
219
166
251
184
181
265
219
188
244
189
172
129
171
257
180
255
164
219
168
233
205
246
152
183
221
180
191
118
248
232
183
166
219
182
236
186
154
236
240
153
182
173
118
166
225
210
121
164
214
199
221
200
223
253
193
246
267
212
225
159
221
211
223
193
230
151
192
173
195
253
224
191
222
150
173
232
268
193
141
170
259
245
188
176
187
225
249
153
137
266
175
224
191
204
179
241
182
232
218
178
221
257
246
247
212
231
187
249
197
152
256
251
183
203
237
199
228
185
204
164
168
241
206
183
156
191
269
282
159
168
148
226
191
181
236
209
165
123
242
174
177
201
269
248
178
214
108
141
198
149
245
152
190
184
218
181
223
164
199
153
220
186
135
272
219
205
235
186
157
197
245
215
147
219
197
244
262
173
166
171
180
178
236
191
178
162
211
205
201
218
232
271
119
95
210
274
175
223
221
243
249
189
128
231
199
139
160
187
177
201
115
191
208
197
114
166
254
247
231
191
196
271
235
215
114
226
233
171
225
259
124
256
225
236
232
209
225
201
243
237
188
220
147
224
194
201
160
189
188
223
167
179
148
199
212
213
210
171
198
178
198
170
225
143
211
270
184
181
234
180
218
232
230
135
218
216
185
249
176
213
169
189
206
255
258
168
204
216
138
150
186
223
217
238
252
173
269
164
169
195
201
219
155
199
174
192
201
178
167
160
169
200
204
172
218
183
190
197
242
240
180
240
214
145
213
228
235
234
200
186
164
133
193
206
205
244
253
189
240
240
187
190
256
249
141
172
166
188
265
190
170
280
186
256
256
223
183
234
199
268
203
226
178
221
181
184
221
164
174
162
137
137
186
190
156
204
236
203
149
255
211
223
252
121
246
163
136
253
263
218
149
154
189
230
235
183
213
144
174
248
172
185
202
180
123
245
244
173
169
187
154
208
212
255
240
211
203
191
223
244
218
230
191
217
209
213
240
235
207
240
168
219
159
227
218
198
112
209
200
200
152
139
159
174
220
230
185
146
218
234
210
238
193
225
172
184
224
175
125
183
232
159
222
187
183
206
186
200
196
173
130
171
211
258
221
219
238
185
220
202
180
179
199
203
200
196
304
162
216
179
206
160
145
229
146
174
206
242
201
216
227
216
218
158
244
209
218
200
236
195
199
174
234
245
250
181
235
196
227
229
193
188
257
213
208
218
209
179
251
183
254
206
241
260
228
161
185
136
188
176
240
150
235
184
170
192
219
192
150
195
224
265
194
194
239
210
188
169
171
200
244
214
210
143
202
189
197
226
247
168
252
147
224
183
223
228
179
217
235
204
217
151
232
257
205
207
193
201
230
160
181
202
197
184
196
253
204
220
218
147
203
153
201
196
218
164
220
215
249
214
215
166
232
213
257
230
193
160
234
235
210
181
234
224
199
245
155
232
188
246
151
247
227
181
255
168
151
221
174
238
204
197
223
216
180
203
238
189
190
234
186
218
203
181
207
188
168
251
174
214
185
237
205
167
194
180
204
245
192
284
191
179
207
153
191
169
175
180
201
171
219
199
171
222
211
219
246
178
154
187
182
174
206
198
209
170
173
147
215
229
253
212
199
256
207
256
204
185
173
193
196
242
214
160
254
234
209
220
147
217
244
217
190
163
150
239
220
160
164
187
216
201
200
217
220
201
225
188
214
215
188
158
217
180
206
198
204
177
243
172
164
230
194
188
221
210
199
204
259
252
228
189
159
214
216
188
233
185
194
196
229
194
220
216
214
208
244
217
110
153
123
123
186
179
167
214
243
235
254
168
190
223
219
223
143
119
128
210
211
250
283
236
212
192
166
227
132
159
163
156
200
244
225
283
230
168
207
226
205
177
207
223
244
162
176
228
150
204
230
253
166
171
196
225
168
165
213
203
232
209
252
151
239
208
196
133
117
153
171
151
202
207
221
117
199
260
198
224
271
259
275
158
237
217
161
161
242
197
208
226
131
198
244
222
205
238
219
195
185
170
153
177
210
186
194
234
182
193
233
158
156
164
173
207
174
255
179
195
234
181
194
239
145
177
156
225
203
163
202
177
159
201
179
194
171
243
156
219
244
234
201
220
224
169
156
215
243
202
264
176
246
253
238
164
113
228
243
134
179
185
198
195
207
232
169
162
155
211
193
214
162
186
154
159
162
219
194
266
208
222
239
111
227
124
196
244
232
214
187
218
144
179
221
279
149
199
188
261
200
152
156
230
134
200
218
246
155
190
144
159
218
122
179
227
247
156
142
240
284
264
164
221
132
187
199
210
265
255
203
207
245
218
242
224
275
220
231
227
238
220
219
215
132
163
210
245
228
196
256
175
241
280
197
209
163
189
155
168
219
263
214
237
205
251
169
171
181
143
204
155
203
195
193
182
205
229
240
166
223
169
231
153
220
180
204
215
200
227
210
227
146
174
246
133
195
269
200
214
220
214
176
214
189
214
160
141
194
164
184
194
237
235
165
209
175
186
220
165
205
166
260
156
179
221
191
148
158
253
159
175
200
185
180
188
221
139
231
219
212
233
168
131
157
237
245
226
214
239
220
221
206
236
185
174
182
167
187
229
159
192
241
169
184
212
184
267
226
235
235
211
201
235
189
211
167
174
198
151
231
188
200
234
257
212
234
243
235
205
219
193
217
179
232
191
207
225
242
127
131
196
220
219
186
183
203
221
121
179
190
191
193
210
147
235
245
192
207
181
177
234
252
214
211
207
228
179
235
215
203
204
234
199
172
225
189
132
132
225
203
228
171
232
238
143
159
200
191
189
188
242
235
263
216
210
230
144
219
260
269
195
254
146
167
251
152
158
229
229
199
231
153
136
201
167
186
226
258
183
185
203
202
167
238
133
225
241
185
171
193
200
194
275
176
187
181
200
201
217
191
168
175
222
160
149
208
196
221
152
188
188
225
203
181
178
241
188
233
250
176
189
216
230
248
223
220
214
250
173
234
197
194
167
217
222
173
213
175
208
157
243
190
167
199
257
204
176
209
205
223
217
195
251
145
183
194
208
276
173
198
207
216
189
189
204
163
190
205
174
178
220
181
193
145
245
260
171
174
205
174
233
231
255
231
251
176
225
219
184
134
234
168
254
201
252
196
165
140
202
174
207
189
236
230
173
215
176
250
200
225
206
204
193
230
222
198
189
195
199
183
230
188
245
216
158
207
200
224
216
256
166
220
115
234
224
196
141
236
182
258
159
218
202
186
172
231
144
259
204
210
183
264
214
227
243
156
277
219
174
198
171
211
255
229
186
228
191
208
232
129
206
183
190
206
275
144
179
241
243
152
270
213
273
262
200
236
129
177
218
161
232
224
204
186
236
192
185
181
195
270
216
201
197
189
150
206
220
220
143
174
179
216
252
241
184
174
163
189
267
201
229
192
230
212
133
218
193
143
207
189
217
188
187
248
164
219
156
171
220
180
173
176
176
241
147
141
196
201
240
194
228
202
196
225
192
239
177
143
236
228
241
181
234
193
227
224
245
136
215
228
198
169
190
187
145
96
183
225
156
199
203
173
204
235
175
229
219
139
267
239
148
189
241
184
191
215
208
216
133
217
192
195
236
218
224
170
267
136
227
242
141
114
222
193
195
231
194
182
200
204
206
163
168
197
215
248
125
255
214
181
196
151
240
218
187
183
257
189
203
153
228
227
209
162
234
150
195
244
203
198
201
226
242
129
210
192
192
215
204
231
208
228
228
219
175
229
255
148
185
171
195
234
188
171
263
222
180
219
253
193
222
139
212
198
232
284
163
148
244
176
190
217
192
211
177
230
256
226
168
198
194
199
212
242
225
203
229
229
183
232
239
164
131
167
268
188
230
221
138
192
201
193
235
220
189
159
194
260
187
178
198
193
237
241
178
213
221
221
208
233
192
218
259
203
298
146
221
207
220
182
161
219
205
200
203
195
177
158
208
176
169
142
187
184
146
229
186
205
139
264
266
183
210
192
221
220
263
244
246
202
165
164
178
255
141
190
229
233
199
229
219
233
198
199
151
137
287
200
211
224
193
199
222
137
207
143
187
211
200
258
189
124
142
234
214
222
119
234
180
239
174
209
144
173
208
220
233
178
230
165
180
203
249
182
184
142
239
191
196
215
144
164
204
140
211
262
243
200
166
165
224
269
249
164
181
188
191
242
230
193
167
181
221
210
229
195
183
246
232
225
147
210
220
190
140
157
168
219
198
166
198
240
168
196
167
179
160
212
191
144
237
180
152
192
192
217
169
194
202
164
183
240
183
235
128
172
176
223
204
197
136
202
221
230
168
164
219
231
197
184
145
211
269
174
201
261
251
142
187
231
148
225
189
172
198
172
179
188
244
200
185
189
158
171
240
154
223
215
230
181
261
150
146
253
121
238
209
217
219
192
232
207
176
215
226
173
210
152
176
149
169
206
224
218
157
163
173
224
209
207
190
194
198
223
192
212
206
146
178
201
98
123
175
189
197
212
86
233
237
180
165
180
239
127
208
218
211
170
146
176
221
200
192
159
205
173
203
249
159
166
132
219
241
214
213
217
118
280
197
168
202
266
155
162
202
191
239
213
225
208
131
191
203
195
224
177
140
191
265
177
151
159
230
192
180
191
189
141
190
164
172
193
228
236
227
243
228
228
234
203
175
222
137
160
195
219
199
243
196
238
186
196
226
166
153
227
153
253
184
218
147
169
193
164
230
203
222
175
216
153
191
220
213
192
211
146
147
192
265
170
201
210
193
159
137
245
236
188
236
173
238
192
182
169
186
178
240
195
236
187
186
146
202
165
209
129
199
207
212
134
202
149
211
222
169
150
168
162
192
249
228
117
259
187
207
189
241
263
223
216
210
168
184
203
185
195
233
188
149
202
186
194
226
215
219
258
232
242
219
235
242
253
151
200
190
198
214
247
205
162
153
129
183
237
187
200
156
200
151
131
143
255
183
169
201
145
215
261
150
206
251
176
165
214
160
157
259
226
186
192
185
230
164
191
177
228
202
183
157
238
198
187
225
194
189
229
244
232
204
145
225
232
163
169
173
207
150
189
240
237
214
243
241
223
204
179
185
237
223
130
199
201
235
213
233
222
185
171
156
186
161
222
172
243
200
138
188
183
231
226
148
223
179
197
195
182
139
211
205
210
249
220
214
189
222
214
268
195
238
210
205
220
160
208
203
183
187
270
195
129
235
189
230
206
213
202
247
184
218
209
170
201
211
148
197
206
172
157
242
250
202
188
163
225
272
154
169
258
159
144
183
183
176
195
208
264
255
234
165
199
136
150
192
215
209
224
296
192
217
223
232
172
158
267
188
167
231
169
200
224
164
150
177
234
188
194
179
244
203
232
95
221
164
182
142
245
210
211
234
175
173
196
209
170
201
157
196
212
151
190
188
232
171
219
247
276
202
217
214
174
195
248
185
247
205
190
199
144
204
233
199
210
204
206
128
199
182
223
220
185
194
204
282
233
243
211
186
213
155
210
183
190
219
206
238
188
196
158
216
214
92
225
228
206
196
211
177
204
160
194
200
149
236
171
223
196
217
227
197
201
168
215
208
251
214
223
150
270
184
201
200
169
245
173
247
206
179
206
203
204
138
219
251
149
230
186
197
275
230
242
212
190
148
164
221
257
142
218
141
204
166
229
170
173
226
198
180
194
249
181
284
204
209
199
201
198
231
185
183
149
216
136
188
101
195
215
228
224
147
194
216
172
237
221
248
180
162
274
197
178
208
200
224
162
246
152
187
206
171
253
205
201
203
209
239
188
232
172
201
211
197
203
163
149
201
82
286
204
266
173
264
183
271
207
225
144
162
175
197
185
259
225
188
184
215
103
242
167
203
224
204
222
251
252
210
170
188
213
176
191
179
253
222
201
140
196
277
193
226
182
138
207
213
171
241
163
244
180
184
202
162
213
151
166
217
197
131
219
200
194
218
191
259
184
205
192
212
226
179
201
231
213
232
187
258
220
246
229
172
182
232
229
234
237
197
148
170
229
295
133
186
160
213
179
221
182
142
130
261
206
223
188
176
196
207
158
250
209
233
168
241
283
174
130
251
196
232
218
203
165
151
225
189
200
216
192
208
195
194
196
267
232
174
170
187
206
219
204
237
250
160
190
219
201
144
232
221
208
211
197
187
205
183
231
253
162
195
176
194
183
239
191
174
208
175
175
194
214
233
227
241
249
249
169
213
143
202
217
156
188
213
184
241
173
179
147
186
196
228
227
234
198
265
202
238
133
197
181
238
172
193
220
236
219
243
119
138
173
170
268
217
210
178
140
234
200
208
224
198
252
258
188
195
141
178
190
212
194
205
244
239
245
186
214
214
167
184
179
248
267
167
207
209
271
227
225
205
240
126
202
172
131
158
209
186
219
172
214
270
157
148
224
200
206
263
176
269
209
213
216
175
175
175
158
162
164
186
228
186
166
134
176
209
164
228
174
224
226
213
226
267
160
241
170
221
241
216
234
251
227
196
200
199
229
226
143
172
210
152
252
134
217
133
216
181
235
227
191
227
220
185
223
164
184
185
269
212
200
171
219
244
151
208
244
227
148
218
200
283
143
229
221
238
251
192
143
210
182
191
226
163
237
227
184
288
190
223
206
143
208
198
192
227
201
192
215
194
231
209
253
146
221
173
240
204
245
307
194
195
211
173
144
208
212
218
227
251
226
183
210
142
185
165
193
181
177
277
168
203
173
171
173
182
177
172
244
199
148
141
166
201
213
223
257
220
122
195
152
243
244
212
201
218
188
240
237
174
227
174
201
233
255
267
217
143
184
222
156
179
241
149
265
250
207
190
239
198
237
254
183
231
207
165
211
214
193
172
159
222
210
192
205
195
121
173
242
124
213
186
223
237
251
168
219
222
175
172
197
200
255
161
217
165
255
231
167
269
233
174
260
205
226
177
249
204
209
146
240
196
208
229
233
218
182
264
189
233
147
225
148
165
205
241
226
242
187
169
248
160
178
131
199
279
235
201
188
226
168
166
210
214
152
250
151
244
211
201
182
206
145
195
235
208
196
177
209
187
211
177
194
206
225
189
163
204
221
150
186
206
213
191
167
180
177
221
207
245
157
155
181
203
195
170
167
176
188
232
179
187
165
177
168
187
182
233
216
184
214
187
225
205
249
216
199
132
229
262
287
186
222
172
226
219
163
222
204
197
207
220
250
217
197
191
197
216
261
232
154
177
181
219
234
249
235
231
186
206
281
206
219
200
141
188
163
246
258
225
202
201
268
248
263
232
221
151
227
181
191
168
208
216
222
186
219
208
240
177
228
221
188
176
270
199
228
187
236
196
181
159
242
194
124
169
182
217
254
162
161
228
170
220
174
244
215
188
189
156
202
230
200
211
223
156
245
168
213
159
212
212
183
231
234
202
234
246
213
237
179
231
128
192
158
214
256
155
159
252
194
200
222
222
196
208
191
232
164
242
219
184
238
196
124
147
129
184
142
195
218
219
261
169
147
281
152
249
235
171
223
202
235
208
207
233
194
224
185
189
216
188
193
200
180
207
178
202
234
124
170
159
226
229
204
226
144
257
239
214
192
234
212
207
165
206
205
216
187
204
154
194
234
227
212
222
225
173
184
169
201
226
212
275
114
190
202
179
170
210
205
167
230
241
215
191
107
154
213
226
216
202
221
177
235
191
252
228
159
241
261
264
217
147
212
152
198
162
187
228
138
228
195
190
270
192
263
215
135
196
206
203
250
217
200
231
164
143
185
195
223
218
234
175
187
141
219
190
187
221
226
210
232
150
179
144
206
172
166
206
166
248
220
217
174
210
178
209
250
225
183
147
201
184
205
198
271
231
211
197
228
251
241
124
179
215
236
194
226
221
173
192
222
168
167
186
161
215
218
234
239
199
232
240
174
192
212
210
193
218
170
159
228
178
200
240
138
222
186
180
136
200
221
183
167
215
173
167
141
196
241
173
223
197
219
217
179
230
131
219
203
254
178
205
191
186
175
167
150
148
192
192
171
252
137
161
251
248
186
209
208
204
223
206
207
150
185
248
200
258
167
245
223
108
209
217
195
176
181
217
214
164
231
185
190
171
206
112
222
140
235
232
216
193
212
249
169
169
232
224
220
187
184
217
280
234
237
233
255
180
224
189
203
117
189
144
220
226
184
223
259
194
296
236
216
213
207
186
141
208
252
196
162
168
236
219
170
215
178
191
227
215
164
248
151
214
177
163
254
160
239
208
201
253
151
233
193
240
247
185
197
285
181
190
121
210
198
231
156
222
160
219
267
196
206
132
119
259
184
257
212
254
165
219
196
211
223
152
244
225
185
238
214
163
205
241
150
169
202
216
237
212
192
212
204
200
234
254
115
211
189
225
250
149
169
257
209
227
222
164
119
244
148
214
206
179
175
192
251
114
189
203
194
293
199
235
182
243
191
210
192
139
132
174
224
183
168
258
195
253
151
172
195
199
176
217
153
248
176
242
178
242
263
236
210
161
191
210
189
220
225
163
270
182
215
269
204
171
209
166
227
221
190
181
181
198
196
256
195
221
147
244
202
232
192
205
181
136
191
241
217
222
215
212
197
201
191
175
198
125
243
213
180
211
222
220
206
185
171
153
176
230
225
241
228
178
161
184
185
188
266
186
153
191
227
161
217
203
217
203
163
176
177
197
218
220
173
254
211
215
175
214
222
158
254
204
208
170
197
199
218
242
225
211
232
154
146
186
139
192
256
235
159
189
169
230
219
170
197
220
194
161
182
231
186
244
260
201
240
264
223
135
218
227
150
151
208
268
157
181
181
209
193
146
176
210
244
191
237
221
223
249
183
202
160
210
126
219
166
272
207
214
169
151
198
218
269
136
234
197
203
177
221
158
190
163
181
256
217
194
241
230
200
202
233
282
222
229
164
199
200
158
237
194
225
263
157
190
147
178
210
160
241
270
172
211
227
163
194
254
194
170
199
184
232
209
241
169
174
188
248
223
205
221
201
171
133
220
189
216
200
227
203
180
193
221
249
254
224
225
205
206
189
187
267
161
261
204
168
149
165
197
201
196
122
227
221
238
173
223
150
144
278
178
218
129
195
235
223
244
215
197
209
203
166
232
202
247
153
184
170
155
118
257
159
140
222
190
183
195
184
178
240
184
234
173
175
231
119
240
203
180
247
246
264
263
196
206
171
182
180
202
213
166
196
190
231
152
161
164
187
166
182
178
150
223
231
132
193
236
224
203
243
191
258
193
161
235
193
187
198
161
250
184
184
203
199
201
252
194
182
148
268
179
193
206
115
166
177
206
228
202
198
196
155
190
273
207
197
208
170
189
240
130
225
249
212
191
203
193
193
154
201
247
198
201
217
150
198
252
225
243
235
241
207
227
181
204
178
231
164
189
208
215
187
155
188
170
245
216
222
116
171
227
253
168
189
223
223
254
241
258
227
194
145
247
214
258
193
150
97
213
194
211
223
181
196
215
227
159
224
185
209
173
196
206
148
241
224
219
200
276
205
209
191
193
233
145
214
288
220
202
256
145
196
151
218
183
239
203
216
220
243
200
231
237
164
202
214
210
188
228
156
111
215
147
183
203
214
208
273
191
151
226
201
156
196
181
204
184
245
248
198
223
159
195
167
236
197
215
244
239
247
212
221
159
197
182
211
95
228
175
187
137
254
179
206
200
265
190
183
177
249
223
154
187
170
193
243
148
240
170
212
172
272
158
151
201
264
264
265
136
229
185
177
175
260
166
192
207
145
181
183
186
189
172
177
116
212
199
163
185
204
237
213
210
149
254
229
224
206
224
209
208
254
150
174
215
207
203
212
202
233
193
241
235
237
256
199
232
226
205
177
209
217
215
160
253
196
227
189
206
231
196
195
137
224
220
184
225
198
119
139
200
164
228
200
177
213
219
198
179
275
214
190
152
174
199
133
234
231
237
198
243
231
265
206
206
258
189
226
197
189
224
153
150
203
250
138
251
223
266
159
211
213
255
207
222
233
166
190
171
211
200
153
193
207
177
238
185
196
164
203
107
204
214
254
197
210
199
196
209
184
199
173
187
155
141
235
204
170
185
243
222
180
148
192
201
198
248
211
195
190
199
239
177
187
210
244
215
189
243
157
222
195
126
240
215
253
194
227
149
175
227
171
243
185
228
204
188
208
202
221
171
166
180
253
175
204
211
172
179
191
233
165
213
197
251
167
199
179
185
209
232
228
150
179
235
203
185
236
174
165
192
169
121
133
172
244
218
232
266
267
155
145
245
221
222
190
211
188
184
197
203
201
204
185
145
163
143
156
231
155
275
166
180
181
225
248
155
200
152
221
213
173
219
237
142
184
194
181
262
163
191
236
198
200
210
249
233
243
165
206
199
231
249
249
175
210
185
181
239
129
164
224
238
209
157
198
285
172
228
159
169
219
222
194
177
198
113
212
146
203
206
236
242
204
220
190
232
184
190
150
213
176
156
256
170
155
158
215
274
182
222
221
200
211
168
194
208
201
227
188
183
192
252
194
128
228
212
181
238
174
191
133
174
210
152
219
208
142
230
166
237
211
225
180
182
166
239
176
257
163
242
189
204
228
175
238
146
149
185
148
225
176
235
235
236
207
174
242
192
196
232
215
187
207
207
187
196
210
121
144
198
191
204
248
223
198
129
206
141
118
176
192
223
242
157
165
261
163
218
152
184
191
161
205
187
211
220
188
184
209
223
174
187
184
219
219
175
171
233
177
209
246
227
144
212
231
193
209
156
218
192
200
201
194
273
122
196
205
199
199
184
208
214
254
249
252
279
177
159
204
169
181
165
174
178
146
193
215
232
173
205
174
159
236
180
172
223
201
178
165
221
183
187
241
187
171
264
182
273
236
234
233
170
179
214
212
235
229
233
274
176
160
145
198
186
241
208
195
176
238
223
233
172
233
187
218
192
216
192
271
196
244
188
167
228
216
152
248
269
246
185
125
210
233
264
234
192
191
203
174
215
177
184
217
107
194
189
238
188
189
186
194
244
167
182
163
213
137
254
232
144
211
199
202
160
239
180
219
206
182
179
218
170
173
210
226
78
183
173
219
257
230
223
215
183
208
190
166
200
177
228
191
175
177
261
240
192
210
222
190
205
247
237
189
183
135
201
214
252
191
208
209
175
220
204
161
235
244
198
187
155
221
235
186
155
174
215
213
147
228
234
254
213
191
132
234
164
261
194
209
172
187
142
131
232
223
202
167
223
125
262
147
204
178
189
185
188
116
275
254
191
214
197
192
184
215
220
189
187
175
170
136
189
218
148
234
194
216
151
246
226
209
142
149
177
177
177
208
201
202
184
136
192
145
210
200
217
177
221
165
208
181
192
196
185
136
233
145
224
157
249
181
165
157
151
131
206
207
205
180
232
176
246
227
202
208
225
193
184
217
140
191
194
156
161
198
227
234
233
122
234
213
235
185
233
214
210
293
142
195
241
194
195
221
221
142
231
197
88
191
236
219
225
175
207
177
196
218
144
205
176
193
181
217
179
194
208
147
179
226
205
227
236
186
185
210
219
166
268
220
190
210
212
217
183
182
141
200
243
187
187
241
175
169
229
171
180
171
279
254
197
190
160
245
169
163
196
169
212
222
158
177
162
172
182
212
134
213
183
182
228
242
180
170
188
208
189
193
241
236
266
196
114
225
169
197
216
244
261
190
174
169
218
224
180
165
218
196
150
174
169
214
172
179
222
168
170
191
184
195
222
240
190
232
191
227
189
185
143
208
211
230
154
207
165
211
219
252
183
137
223
222
185
163
184
138
170
197
179
210
220
200
191
156
201
168
192
244
176
167
213
201
155
237
246
153
195
220
128
193
220
194
178
197
192
227
160
170
159
220
120
112
192
236
180
173
182
148
141
195
160
218
195
208
210
193
186
187
170
221
195
210
185
163
151
211
232
213
170
226
197
254
210
249
208
177
220
220
248
173
215
245
198
141
221
236
222
206
185
208
179
202
217
167
196
146
173
199
164
178
225
176
190
205
207
228
199
117
254
248
203
138
217
211
215
207
217
243
197
236
195
181
243
210
200
170
201
152
212
206
227
225
215
222
209
172
234
210
131
223
165
211
228
258
162
193
245
226
175
198
189
243
223
216
166
178
219
155
194
142
199
131
216
214
215
242
157
259
205
202
223
227
215
182
213
261
163
129
192
211
204
185
222
203
233
196
182
207
233
177
229
165
191
155
201
173
257
118
182
159
252
188
275
200
241
182
148
208
196
198
236
199
245
198
209
172
132
185
189
175
199
191
237
241
180
215
213
176
211
198
262
217
229
195
195
216
209
227
193
156
217
176
212
204
208
214
230
219
265
223
177
209
212
238
220
262
171
233
224
205
165
191
173
217
232
248
276
174
167
201
183
238
169
229
190
205
214
167
202
205
214
163
181
277
208
252
207
259
204
218
139
190
209
213
212
213
222
176
208
266
166
163
146
191
150
219
152
215
211
218
222
241
196
200
137
235
213
189
217
230
172
161
197
260
171
203
210
173
200
234
197
195
207
202
150
231
226
217
208
232
206
235
249
187
194
225
225
206
212
228
226
231
160
229
178
147
193
190
199
203
164
167
230
248
219
196
180
145
190
271
197
223
173
191
174
165
212
234
234
228
247
219
151
228
220
211
243
242
209
233
219
230
195
176
178
206
258
196
192
179
251
199
212
242
191
170
118
222
182
184
254
160
173
204
152
172
210
279
182
127
223
174
206
233
204
147
205
155
244
198
210
159
183
184
220
199
229
237
184
217
225
168
167
224
201
185
201
236
187
167
229
207
161
157
225
182
235
202
179
202
222
210
177
200
153
184
120
162
220
240
204
178
144
217
169
211
242
245
212
180
215
217
218
214
146
222
190
253
230
216
215
231
228
219
180
176
124
230
179
155
192
268
219
196
156
187
159
218
213
170
264
180
265
200
196
256
233
176
186
268
200
197
174
207
269
216
143
171
256
134
232
202
198
179
159
173
201
237
189
222
187
232
159
198
215
174
199
235
256
251
217
177
244
207
176
184
142
198
200
163
230
191
169
228
261
215
253
176
184
236
247
260
223
142
218
236
228
124
151
168
204
198
179
120
228
200
219
203
201
223
195
112
177
142
195
168
249
191
221
125
183
154
185
206
206
203
217
196
165
251
201
200
233
218
167
196
178
173
198
187
184
228
226
206
206
247
229
202
178
211
228
207
201
196
166
243
131
249
212
165
206
220
210
213
156
237
254
165
142
210
174
209
172
264
239
209
185
223
179
231
240
207
197
181
189
200
160
188
258
266
186
195
196
200
224
203
245
218
134
223
200
231
237
204
192
212
178
236
203
242
135
170
186
201
249
247
187
223
214
189
175
111
189
199
208
130
145
153
206
218
145
137
219
190
198
189
160
181
207
237
235
255
221
245
219
228
138
210
183
219
226
179
191
271
209
216
179
141
220
232
208
221
229
205
178
238
169
213
155
220
168
249
256
234
196
255
195
220
182
227
172
287
141
228
181
188
162
199
195
203
145
183
218
184
178
201
215
223
200
132
204
213
176
187
210
156
159
179
193
164
287
168
174
226
211
222
235
154
183
216
178
149
113
171
293
265
169
210
181
256
224
281
198
128
238
198
241
174
238
246
244
142
231
202
213
181
183
177
196
213
136
196
163
209
225
202
184
168
195
167
197
220
131
190
212
180
196
119
238
181
211
203
119
172
191
235
158
249
202
194
193
145
244
202
181
214
193
148
212
227
189
281
186
219
220
286
185
218
178
234
270
172
233
203
167
167
174
211
132
177
191
141
197
205
196
156
166
226
248
166
243
212
235
193
246
239
135
210
179
120
196
217
231
198
190
207
253
202
230
167
241
195
248
126
176
172
191
191
157
172
263
185
129
160
230
216
206
237
220
234
200
148
201
216
217
199
213
152
238
188
214
199
194
239
189
180
198
182
150
168
195
190
233
144
278
229
212
200
220
182
186
161
142
147
199
219
151
241
110
219
176
191
167
234
179
222
163
202
161
153
259
191
164
219
223
151
167
172
229
206
133
124
239
189
255
217
227
199
166
190
200
206
187
214
164
203
191
147
204
195
183
214
168
233
203
206
223
200
231
177
168
180
165
210
180
219
260
183
240
178
141
154
225
213
210
220
212
192
162
226
189
203
247
139
253
181
252
121
173
159
192
129
214
249
215
245
200
215
204
205
203
207
142
164
194
199
225
228
179
181
169
219
276
195
257
173
198
207
130
186
188
191
221
204
258
208
205
222
185
234
170
233
207
190
175
216
180
191
159
143
249
115
176
204
185
246
205
204
206
149
209
237
181
214
156
229
248
228
224
233
131
247
222
242
232
188
175
156
246
202
200
206
156
206
196
191
191
241
234
275
217
179
211
207
170
181
138
200
137
194
198
193
244
203
212
191
239
163
178
232
185
248
172
240
207
137
244
194
180
191
233
181
177
180
177
96
246
226
184
182
204
273
251
166
202
126
135
207
209
255
189
223
175
205
202
183
254
154
206
222
205
232
114
205
188
208
222
257
155
188
166
240
235
208
146
194
271
189
165
245
159
165
167
121
203
241
160
261
190
117
211
214
216
189
196
211
207
174
243
116
269
252
196
210
180
163
203
172
244
190
228
207
225
251
184
156
191
178
197
264
193
181
185
167
185
208
181
227
202
156
247
148
210
234
282
225
217
180
197
183
195
164
206
205
242
229
180
147
188
188
195
292
173
136
204
191
159
170
227
187
138
240
203
242
150
215
220
272
215
228
228
209
186
205
188
230
206
186
244
196
183
211
236
251
158
224
227
180
184
239
151
227
249
220
247
234
230
282
209
181
171
194
256
208
134
235
211
219
185
201
142
181
136
242
196
147
221
210
238
177
279
113
206
223
177
230
220
197
201
200
200
194
165
201
175
195
239
194
248
215
206
237
231
151
195
214
213
198
191
223
234
225
157
238
233
179
181
196
208
255
196
160
227
239
231
144
217
255
196
205
165
224
185
232
220
199
169
196
184
250
214
173
147
248
205
237
204
180
250
179
162
189
232
243
238
200
148
190
179
222
249
207
217
218
196
220
173
189
195
174
210
219
191
202
241
190
195
204
206
249
223
212
228
180
205
223
210
174
246
212
180
213
179
193
114
162
251
211
216
235
203
147
232
206
202
206
218
175
197
181
194
187
77
193
188
232
178
206
152
261
137
200
171
88
215
172
230
169
162
186
156
241
257
211
257
169
230
194
179
170
215
244
236
182
185
226
198
227
165
190
157
192
203
243
169
198
216
261
160
164
219
185
156
221
211
200
184
264
129
138
184
165
200
216
250
204
179
177
182
221
163
142
180
190
258
274
197
221
228
239
230
204
175
213
256
223
209
240
252
229
228
255
173
161
227
225
197
208
187
188
216
234
249
208
225
260
207
194
257
161
185
201
259
213
127
208
196
207
209
185
206
176
204
216
157
182
181
193
195
233
199
267
179
215
214
134
237
189
220
149
161
247
163
139
209
183
172
178
208
146
224
179
189
227
172
202
255
258
158
208
178
227
190
267
208
215
248
225
207
191
169
281
214
142
219
211
128
227
217
168
156
216
224
168
236
199
174
205
241
233
214
183
274
150
158
169
160
148
162
143
182
202
180
180
210
213
245
144
231
157
159
207
206
154
204
209
185
183
237
208
153
220
207
247
155
191
211
204
121
204
197
226
184
198
197
210
268
181
235
220
179
167
121
235
185
194
201
233
196
204
261
186
162
199
156
224
260
212
237
199
152
204
141
176
231
198
186
190
137
200
175
127
206
175
248
198
161
216
148
224
251
184
173
220
218
189
250
276
207
189
170
188
151
199
226
163
198
166
238
221
197
200
188
237
204
198
204
188
162
216
189
183
205
200
248
121
230
161
217
202
196
206
208
218
185
219
235
226
225
198
240
231
136
143
148
180
174
144
180
234
225
202
222
172
201
249
247
198
224
161
168
220
166
223
238
234
170
218
277
174
187
192
171
175
158
216
194
217
211
184
193
240
155
187
227
234
206
205
159
171
218
183
211
173
199
211
224
186
194
237
171
185
232
156
185
190
206
175
207
188
139
174
210
180
186
141
184
207
217
172
219
190
199
154
146
240
202
224
222
179
222
162
221
235
100
210
150
196
186
248
265
204
188
189
178
154
196
202
225
145
195
205
148
200
128
173
181
243
211
210
202
121
222
222
242
172
201
187
212
173
241
200
231
178
172
248
204
152
236
230
161
213
179
109
237
213
237
224
202
207
240
151
200
211
227
191
172
224
148
248
230
203
212
211
172
170
158
178
207
238
187
223
183
195
247
245
229
192
193
240
176
175
251
171
253
202
247
203
276
204
223
268
179
278
221
181
229
158
175
235
174
129
211
198
231
146
189
219
196
218
221
194
192
236
180
255
192
212
221
233
206
235
208
223
147
214
207
184
194
139
217
161
139
217
239
192
194
156
222
203
160
177
186
239
207
203
135
167
180
214
164
189
219
205
234
239
169
138
170
114
184
171
231
212
205
250
176
245
159
251
205
197
248
192
200
179
250
193
221
207
216
204
219
255
202
218
174
191
217
164
183
180
185
167
188
128
223
181
177
176
152
191
232
239
218
198
194
176
173
188
210
201
227
183
225
189
259
203
225
184
164
241
294
217
145
189
108
228
205
182
215
216
226
211
226
163
244
218
201
217
230
214
231
259
184
229
169
196
277
235
207
230
182
197
126
227
206
209
206
177
207
142
182
243
173
124
215
254
196
167
235
155
194
240
169
153
186
264
157
275
187
224
236
196
195
259
241
215
178
216
203
176
151
245
143
195
158
186
312
159
215
242
190
146
212
213
224
218
264
181
237
229
207
186
181
189
185
247
252
243
206
233
194
224
205
188
182
239
196
205
268
221
206
180
191
190
202
197
226
208
209
116
217
182
205
254
203
254
278
151
250
211
263
225
193
129
218
211
163
165
189
181
142
241
222
243
259
140
201
104
242
203
89
219
186
178
184
207
200
206
220
190
146
225
211
216
152
220
191
227
208
206
238
159
169
215
151
201
194
212
210
154
174
176
186
144
184
200
193
191
212
166
222
214
222
213
204
195
147
225
178
246
208
196
209
145
226
184
167
145
222
173
211
206
170
201
235
233
224
210
220
232
184
150
243
207
234
234
241
207
237
233
198
160
180
211
220
206
209
250
200
232
142
164
206
194
235
193
228
223
226
215
170
200
222
199
166
184
138
185
214
205
224
158
153
206
107
247
199
290
211
203
153
191
210
222
275
241
255
214
188
173
174
217
209
183
194
176
211
175
195
198
203
160
194
219
170
195
169
179
168
212
159
201
188
165
249
226
155
235
221
141
209
239
190
183
189
187
175
219
176
227
169
239
191
227
268
194
146
198
170
173
138
164
236
171
157
212
193
222
211
213
200
137
232
213
218
112
200
233
243
188
177
202
207
185
147
242
222
223
159
170
267
189
211
151
170
214
244
143
186
189
217
230
162
235
205
171
197
232
210
212
174
192
151
201
183
190
174
259
193
230
150
221
206
254
181
208
173
146
185
178
192
158
195
205
232
201
217
225
201
266
227
182
161
185
143
230
191
264
180
94
241
194
175
180
141
181
220
156
227
137
198
218
225
159
216
245
203
150
198
200
221
201
228
229
148
238
160
184
261
153
212
252
203
226
143
220
144
166
212
198
179
263
193
209
184
207
228
143
186
182
174
201
235
130
238
188
211
177
132
205
174
200
223
233
221
123
168
153
173
231
152
216
208
228
247
193
204
199
249
192
201
210
167
196
208
228
197
190
231
228
209
233
244
248
228
193
224
239
161
200
243
217
237
205
132
194
180
74
182
236
214
215
162
201
228
224
232
149
247
206
153
168
193
212
220
145
206
230
175
197
257
159
138
209
212
157
188
160
126
188
228
160
192
199
226
189
188
205
215
213
185
139
176
201
239
238
260
210
224
174
221
180
209
189
173
229
175
217
118
208
216
173
149
159
179
213
241
178
199
201
157
207
210
148
186
196
234
194
211
213
213
201
206
244
256
176
98
177
252
208
213
222
183
199
188
200
253
212
237
255
147
178
234
195
215
97
227
223
244
158
228
209
212
200
185
176
214
207
257
260
208
194
271
236
208
223
165
173
196
214
233
215
246
202
220
157
227
286
227
168
241
198
166
196
176
219
217
159
172
226
215
184
157
234
213
156
247
226
213
225
197
197
178
219
177
266
180
177
198
172
225
125
234
249
123
173
200
188
185
176
122
211
168
127
201
219
251
160
205
203
157
211
194
189
173
257
214
193
260
219
227
227
210
231
164
209
117
197
137
231
180
178
173
218
230
250
177
172
243
237
136
176
199
166
226
236
200
163
168
236
144
184
211
125
140
239
237
173
188
167
211
236
181
231
218
256
212
232
201
179
209
235
240
259
184
189
219
250
206
164
269
233
183
186
222
201
209
240
221
226
226
163
253
215
216
225
172
182
130
186
221
169
203
150
271
215
147
205
233
199
191
159
163
200
224
209
185
177
229
198
224
168
217
158
166
182
172
281
268
206
151
206
235
196
207
200
190
155
223
218
184
244
180
151
140
215
201
188
204
190
172
167
213
160
214
219
183
142
182
176
192
209
142
213
181
213
137
173
203
218
245
197
215
225
219
222
237
177
247
247
226
225
171
197
192
198
241
191
200
164
180
226
178
212
175
147
208
182
197
247
196
188
193
210
226
172
212
183
179
228
177
275
189
157
229
202
256
164
208
189
207
211
126
192
225
150
171
247
251
220
288
156
217
197
174
209
235
146
272
227
180
242
211
191
171
220
217
149
184
213
163
227
215
186
195
140
232
224
179
266
199
226
185
181
201
198
194
168
188
187
219
178
203
154
148
192
264
221
217
204
191
184
209
218
240
234
127
164
199
180
229
244
220
168
232
183
168
243
229
188
219
193
245
228
186
164
215
241
195
184
192
185
222
170
188
145
130
123
243
171
175
166
209
188
270
170
250
207
245
173
217
222
187
177
193
225
205
189
220
224
214
181
244
238
192
203
200
195
199
156
265
166
250
161
196
201
247
219
230
172
160
204
248
237
225
162
215
230
124
147
185
181
215
118
266
253
217
209
212
126
150
170
205
198
250
136
187
145
207
187
187
173
185
177
206
204
219
203
132
167
228
226
213
208
172
206
196
196
240
214
190
224
152
267
210
199
244
226
162
163
195
213
206
189
209
167
184
203
227
241
256
264
253
223
143
159
194
164
188
228
201
172
136
201
208
133
214
218
227
157
234
180
140
232
260
190
186
214
226
226
161
171
217
249
154
175
182
128
199
175
166
211
208
233
115
208
253
225
246
181
168
256
140
135
207
193
231
256
234
212
130
196
144
183
191
226
177
187
215
170
212
272
207
192
180
177
158
227
157
239
234
134
162
207
182
185
224
242
199
203
200
195
222
216
200
208
160
106
180
148
235
183
236
177
207
214
194
178
159
211
236
209
238
197
207
232
224
166
168
189
167
207
153
107
197
186
197
205
170
190
194
185
165
157
146
232
199
250
167
194
153
194
214
211
171
212
135
183
172
209
132
183
166
168
210
210
217
198
176
205
255
179
217
149
186
220
238
263
244
273
224
233
197
195
234
218
199
182
236
239
262
240
219
195
254
247
220
217
161
191
139
246
141
175
168
172
287
197
196
234
164
164
163
187
152
261
145
247
221
186
223
189
171
213
210
158
264
193
202
187
213
220
176
163
266
241
231
216
238
211
225
190
197
176
223
198
242
204
153
104
233
260
184
243
205
165
182
177
165
210
197
202
179
262
236
226
203
212
177
240
196
173
186
152
181
227
205
175
216
195
216
246
209
164
178
189
281
200
220
211
197
208
183
177
158
180
192
160
175
226
207
203
232
234
219
192
193
163
136
193
179
226
174
240
210
218
240
228
160
178
182
220
232
159
181
206
164
168
265
259
202
231
138
212
154
119
129
195
248
147
149
215
177
274
187
225
140
157
167
212
225
223
197
158
221
248
222
203
185
173
172
213
240
160
214
239
168
208
243
218
242
275
208
137
184
193
179
220
169
262
215
218
188
151
192
173
129
215
221
131
198
254
190
234
195
178
203
195
219
206
200
223
218
235
170
185
152
128
206
188
236
207
157
188
207
162
231
208
181
239
192
276
206
168
246
245
213
209
167
199
196
184
167
228
194
203
244
195
208
185
142
214
148
200
194
194
234
185
228
168
243
189
156
228
228
201
202
165
191
215
190
198
184
196
220
193
214
180
175
215
188
225
230
188
161
262
220
255
275
230
249
256
208
155
247
191
157
250
263
209
246
150
215
171
214
196
182
189
231
209
197
259
216
197
211
223
247
219
252
159
190
219
192
235
203
218
265
241
181
229
185
177
252
211
180
170
248
210
251
221
174
153
193
166
177
231
140
144
192
234
237
211
204
168
254
166
232
208
209
250
189
218
197
175
188
190
226
246
213
202
168
153
248
168
200
152
217
167
211
211
149
207
198
250
214
223
123
178
128
206
214
214
192
118
203
208
256
219
228
175
222
204
214
220
235
262
267
222
209
207
243
181
241
184
212
194
189
127
213
196
222
228
177
190
181
198
145
214
188
266
149
237
112
143
191
146
221
268
99
199
193
126
255
187
204
116
164
250
226
197
205
141
193
178
182
203
209
255
180
164
267
230
245
244
174
272
192
179
176
224
197
196
134
235
251
245
218
176
158
182
188
189
194
227
234
170
205
232
237
155
216
201
181
184
178
183
194
268
141
235
188
208
144
200
168
226
212
185
211
256
207
174
152
164
195
123
177
196
229
233
200
154
155
221
117
224
160
200
235
234
207
171
158
180
220
206
214
168
236
239
231
245
186
193
118
219
168
180
280
212
214
244
188
192
253
191
186
201
167
162
208
154
210
198
202
280
163
207
208
171
216
114
149
201
179
223
225
189
189
228
177
239
139
207
240
180
234
221
233
197
202
204
180
166
183
259
173
203
243
159
225
237
237
183
214
156
174
171
230
162
274
179
210
161
242
217
155
213
163
256
171
223
181
197
210
142
220
149
185
264
145
187
200
191
186
189
253
134
276
207
243
222
198
215
162
195
210
186
255
217
253
245
178
236
161
179
226
176
185
220
213
157
223
203
224
231
187
212
230
236
130
181
190
212
148
207
193
188
166
129
198
239
173
225
253
210
164
223
209
203
238
293
216
215
207
164
249
148
215
192
207
204
195
165
173
181
167
188
209
227
189
197
192
181
131
202
190
182
156
191
210
149
192
150
156
258
190
171
199
247
125
218
191
164
212
203
154
184
225
220
173
194
172
245
185
188
114
150
159
200
188
245
202
233
245
195
165
260
252
172
178
242
244
190
225
198
202
150
247
243
224
210
175
236
200
239
179
196
263
176
213
150
177
237
182
177
212
248
193
167
203
191
184
190
147
180
172
319
242
167
196
188
200
246
182
183
209
209
142
199
184
232
226
266
196
172
173
176
193
199
227
208
227
242
231
206
152
200
154
220
277
252
221
209
167
197
165
178
202
223
177
142
185
218
184
211
233
165
149
238
233
228
209
203
164
201
222
183
231
186
163
186
232
200
213
213
207
225
176
238
172
235
168
133
162
191
192
247
160
213
241
212
184
187
201
209
202
237
186
180
204
176
201
159
211
203
188
185
182
234
172
195
207
184
215
198
233
188
221
176
251
252
194
222
178
232
172
190
186
252
175
206
186
204
172
182
139
231
191
200
259
210
258
152
206
182
243
226
241
199
192
193
186
216
220
208
231
262
227
238
173
221
198
226
185
210
250
201
192
191
241
189
160
184
250
145
220
216
190
90
162
162
188
233
194
169
251
137
232
207
181
166
198
236
205
177
201
193
207
139
152
222
175
159
231
257
237
190
146
168
209
154
264
206
255
228
212
141
235
185
225
167
191
216
166
168
201
193
269
243
215
208
196
214
220
163
187
173
215
166
127
136
231
254
198
258
257
195
264
226
169
221
141
213
254
225
284
207
214
203
214
103
201
198
226
163
200
180
238
166
196
200
152
210
173
217
187
231
211
186
222
207
177
261
145
193
235
202
234
252
183
215
163
220
100
227
298
211
206
176
240
222
189
238
178
162
226
169
234
216
216
211
202
145
259
209
215
153
281
172
199
226
189
208
179
192
166
211
274
210
231
170
157
224
183
212
249
203
206
214
241
196
201
184
192
151
216
246
217
217
196
190
218
132
179
203
158
259
159
228
214
186
190
203
225
187
159
158
178
218
270
239
150
185
247
219
192
125
220
242
156
153
208
121
169
216
199
171
186
248
144
153
185
149
212
185
141
180
242
152
146
187
204
176
236
231
192
238
182
149
195
216
203
211
167
137
128
247
180
125
121
249
107
195
253
189
119
217
205
226
181
155
167
168
178
267
200
247
129
206
230
193
158
177
200
145
152
161
194
246
197
216
244
231
218
221
175
137
211
234
226
225
210
216
164
181
154
249
127
202
205
251
207
211
191
198
107
254
179
231
214
222
244
235
158
150
126
167
248
259
204
147
245
230
213
148
254
211
221
161
151
201
173
160
225
253
198
203
192
248
138
197
235
236
188
197
218
171
175
197
117
231
198
207
236
190
181
184
214
227
204
201
209
287
162
185
214
228
248
150
159
206
210
205
191
183
255
174
206
180
190
204
239
240
226
232
237
187
227
226
257
152
205
247
168
271
192
197
236
215
201
220
247
219
210
204
217
215
191
164
184
223
203
147
145
181
171
187
207
215
236
217
167
226
174
222
175
246
212
204
242
201
201
246
267
206
249
229
215
166
172
207
211
224
211
194
250
209
238
231
202
180
205
269
204
231
233
214
171
191
247
230
170
201
286
160
135
204
168
192
218
214
198
161
225
210
189
233
216
162
246
235
234
149
168
241
168
193
141
145
209
221
185
170
225
155
195
204
221
223
229
185
180
275
223
232
215
170
210
136
278
194
250
188
234
214
178
212
232
184
227
157
224
204
197
136
243
174
190
187
210
224
183
203
180
213
213
193
155
210
216
189
206
233
171
176
232
203
152
189
157
187
157
220
263
277
201
187
200
192
230
191
242
219
210
151
215
197
182
227
216
200
193
147
229
220
118
221
247
202
272
237
202
187
195
180
228
177
235
248
196
217
240
178
203
167
234
168
201
200
211
235
175
195
230
187
221
201
190
183
159
197
175
181
216
111
182
219
195
220
238
247
213
200
215
147
224
192
154
224
224
194
227
181
231
167
190
218
203
233
227
139
220
195
171
203
195
210
175
222
256
225
170
178
219
204
177
145
229
262
230
135
131
183
206
134
239
196
220
192
187
214
234
217
237
147
180
167
176
196
248
192
237
234
184
183
197
169
199
234
152
223
189
169
168
205
200
227
239
213
220
173
209
239
168
161
232
201
240
166
182
266
251
142
200
163
161
271
219
177
193
175
149
185
179
145
190
163
193
218
197
243
207
172
272
173
193
189
211
176
217
200
248
156
210
262
196
172
186
155
225
256
167
253
211
158
211
172
194
234
199
177
215
178
149
200
152
188
104
184
259
178
179
184
164
228
156
153
248
148
165
237
171
182
216
168
160
231
205
168
252
227
207
132
216
259
183
221
246
212
170
170
192
231
185
199
247
187
177
208
232
243
222
242
230
181
163
187
136
185
182
234
219
198
174
212
194
222
199
172
141
218
181
227
179
214
189
209
186
248
221
160
272
194
205
228
257
212
210
175
141
214
182
198
162
207
200
243
244
204
215
212
207
164
128
223
199
160
164
166
174
145
196
173
195
191
185
134
231
215
260
166
164
206
244
175
244
173
222
199
155
175
188
182
192
205
244
265
166
207
194
157
150
236
165
244
166
153
182
162
206
219
222
175
204
204
192
209
190
210
240
187
180
283
149
214
214
227
224
137
154
200
176
193
227
238
180
278
214
203
166
236
195
237
143
176
219
238
197
126
236
228
132
234
182
163
165
196
198
197
215
206
166
192
142
214
209
216
227
187
182
153
172
228
126
167
195
249
204
221
206
227
202
224
212
131
158
223
227
228
228
211
149
222
221
197
213
130
182
203
208
124
196
193
184
189
237
146
207
146
184
149
227
226
151
267
204
161
135
227
230
192
219
214
231
169
220
175
242
224
237
129
258
208
208
142
203
254
191
192
268
166
171
263
179
242
229
222
179
228
180
216
212
160
269
236
220
260
226
257
255
164
241
177
172
180
217
188
189
199
122
175
268
175
263
181
180
255
220
186
190
188
217
226
218
173
177
235
195
163
220
218
153
172
216
174
187
213
160
180
151
194
211
207
251
172
195
225
162
191
222
234
205
182
159
212
159
219
197
215
160
251
211
135
195
143
221
203
199
214
199
214
227
191
238
244
246
150
133
221
154
120
213
203
209
223
180
181
186
255
230
244
196
201
149
218
231
169
203
238
188
250
228
186
260
235
184
212
111
225
221
204
220
206
203
193
231
189
224
179
217
266
164
187
259
214
202
182
164
245
224
192
214
150
216
192
228
211
212
176
105
196
207
170
216
174
226
178
163
212
279
194
199
240
207
206
196
237
179
136
215
225
203
175
244
236
164
185
181
178
192
246
182
178
258
108
266
133
266
190
235
248
270
173
239
174
192
243
179
213
207
206
181
199
273
101
160
152
224
257
242
182
210
260
157
297
255
225
245
169
261
161
224
235
231
153
193
182
152
190
189
261
203
261
162
204
214
219
248
197
252
210
201
200
264
203
196
223
216
147
182
156
204
214
201
166
194
202
217
218
283
187
245
208
243
175
171
183
163
177
236
218
234
191
248
245
212
162
205
222
194
179
189
236
180
209
184
218
145
220
211
203
245
175
202
274
183
246
291
282
219
128
207
191
244
182
229
246
234
264
223
138
169
161
171
228
197
230
227
246
158
222
205
190
174
157
240
202
191
202
249
135
170
204
204
242
218
145
187
266
185
182
286
212
254
182
166
206
265
268
170
162
162
171
224
198
176
164
163
175
230
227
183
245
188
125
164
201
190
185
157
144
155
155
156
205
198
199
195
205
248
158
228
227
234
260
245
167
212
207
183
232
163
221
198
234
230
211
263
231
213
186
208
217
202
178
190
183
190
141
168
274
108
218
239
167
185
132
181
244
214
176
110
238
205
184
275
164
235
146
184
243
165
206
255
190
170
226
152
161
230
192
195
205
218
200
162
180
173
238
222
207
218
189
201
140
173
141
200
201
242
151
195
185
230
259
211
254
188
253
238
218
180
230
229
200
210
171
195
225
266
267
217
170
237
208
164
271
176
214
138
250
223
210
196
211
184
291
170
253
137
223
155
194
198
244
208
178
221
174
239
271
213
173
221
191
177
186
253
206
236
240
199
154
229
230
215
189
237
213
172
171
175
215
197
178
173
197
240
205
211
165
222
167
230
238
160
171
251
212
223
182
245
114
278
154
211
107
208
205
226
251
173
222
221
218
161
230
252
127
131
203
173
253
147
163
211
194
223
152
203
160
224
248
163
203
223
177
211
214
202
221
230
201
215
224
186
189
219
204
173
208
175
212
217
159
219
272
195
206
220
182
228
221
275
168
212
212
208
195
220
189
153
235
181
196
194
211
150
182
194
233
233
244
217
195
240
180
201
167
253
204
256
138
163
165
227
193
233
234
149
219
167
237
207
155
208
189
193
236
174
157
239
168
160
168
212
203
197
159
183
217
215
195
213
189
196
132
165
190
187
210
211
175
213
225
204
216
218
189
225
206
225
209
222
210
198
191
207
176
183
214
160
215
236
228
178
198
225
216
214
217
194
231
208
187
201
168
207
215
209
137
202
157
246
212
231
250
193
259
197
161
192
174
184
197
147
164
233
211
229
172
165
278
185
196
211
208
194
159
212
189
237
218
133
178
175
202
192
184
189
209
197
162
183
156
252
230
182
181
254
237
233
191
235
155
195
168
218
197
217
214
191
208
194
198
161
240
189
175
254
231
275
217
197
142
177
202
258
220
183
182
235
210
188
209
176
195
245
183
163
212
214
221
230
196
204
205
158
228
166
259
241
158
208
192
253
203
181
201
201
231
208
235
218
152
151
229
184
184
210
169
195
130
190
158
244
212
218
243
152
180
191
228
210
244
196
239
200
206
215
225
141
223
171
210
253
214
211
155
150
135
232
245
167
167
231
203
136
215
182
168
207
183
213
177
178
213
218
218
222
171
175
226
114
183
233
193
162
162
175
203
199
200
191
239
210
190
162
199
158
254
225
257
219
273
204
213
215
139
216
212
248
203
170
190
195
120
184
251
158
165
184
224
204
188
162
182
192
150
199
209
162
191
240
199
180
230
162
201
221
189
169
129
285
165
192
202
219
154
207
232
182
206
202
169
254
202
201
161
210
267
202
230
210
173
216
246
215
191
172
174
201
209
129
282
185
198
173
202
157
205
181
218
196
190
212
231
176
154
220
202
188
253
210
262
221
254
235
154
157
177
178
225
220
180
228
235
182
224
188
194
162
200
168
207
166
211
211
178
221
222
167
121
212
213
123
242
164
208
180
192
225
221
163
194
181
203
212
155
224
120
245
249
190
189
243
173
180
195
178
214
240
187
197
222
190
173
256
258
182
188
161
224
223
218
161
157
207
172
162
189
212
259
221
173
120
220
188
221
206
162
168
208
161
155
223
289
179
272
211
266
120
220
182
240
172
269
199
243
184
216
167
139
246
149
267
237
194
237
187
214
196
213
193
161
234
187
233
123
218
187
173
164
216
173
206
202
223
201
215
235
205
198
200
224
196
206
161
146
193
196
203
190
174
142
175
190
238
178
171
199
208
190
222
207
246
205
203
172
139
204
154
225
229
261
225
206
186
194
207
234
195
212
218
197
223
227
216
215
227
205
183
158
143
186
215
153
252
141
132
237
165
198
239
211
157
159
228
169
197
198
138
138
196
182
202
181
149
232
219
169
214
202
224
181
165
220
195
139
213
184
167
222
188
145
175
201
238
192
187
166
203
233
222
209
236
190
148
209
231
187
225
189
173
243
170
182
248
228
257
229
261
188
189
198
164
145
224
140
216
175
198
190
157
220
240
192
210
156
193
249
171
157
190
200
260
236
182
156
189
196
158
181
172
173
226
215
215
188
207
239
259
246
151
190
153
228
167
147
189
209
227
164
220
161
141
227
248
228
162
196
218
187
182
215
219
154
146
154
217
217
203
197
233
195
227
160
209
203
182
265
188
256
212
202
216
145
254
172
251
236
165
196
193
183
195
206
251
226
236
163
194
236
152
219
226
208
189
213
155
210
163
213
178
253
224
221
240
213
209
184
267
227
227
128
202
208
198
238
203
256
144
207
246
215
195
216
182
164
169
232
218
201
158
198
222
228
197
199
213
179
188
165
160
181
233
210
250
168
177
222
210
203
189
232
220
184
119
244
211
184
167
248
175
159
227
254
219
224
218
184
163
167
210
200
184
222
238
172
232
175
126
222
209
224
162
224
154
204
188
241
174
167
164
163
207
255
226
241
217
179
238
253
204
183
179
244
184
242
179
182
154
212
109
195
243
143
252
151
243
232
231
174
191
184
187
201
235
208
131
202
236
154
233
176
221
193
221
197
196
207
145
247
149
168
201
241
200
202
169
126
197
199
240
195
177
172
208
228
250
227
179
196
213
230
197
203
234
199
211
131
188
220
173
244
261
183
242
148
156
199
252
199
181
208
185
238
238
202
211
202
189
151
229
179
177
193
212
165
240
179
183
179
122
193
180
207
205
194
222
234
193
242
202
167
222
225
116
205
204
232
236
189
240
233
160
228
167
201
187
124
226
248
161
203
164
151
132
150
128
222
177
198
233
224
163
239
242
256
127
238
158
187
178
275
191
251
132
262
208
160
164
178
257
228
198
209
181
99
210
160
209
166
214
165
210
175
245
235
229
195
190
189
157
234
241
184
216
101
216
205
197
185
181
244
248
202
211
206
205
225
199
160
174
178
221
190
223
195
216
185
157
172
216
171
233
241
141
229
254
183
184
187
231
228
193
178
196
226
229
226
193
200
144
211
184
149
217
161
166
203
239
180
207
151
220
226
242
176
220
222
183
209
167
168
219
199
204
200
201
187
221
205
188
189
161
224
188
172
167
232
172
168
132
197
202
225
188
187
196
209
239
218
173
207
204
188
200
237
225
153
180
219
175
219
211
218
165
187
114
111
167
215
187
234
240
254
150
153
157
217
167
251
139
201
201
219
210
205
199
108
165
204
178
239
197
206
235
197
199
148
226
260
163
260
212
172
180
180
232
193
221
154
194
173
173
220
167
157
212
206
143
203
256
257
183
206
186
182
238
215
193
172
224
198
228
212
183
203
243
133
151
212
193
217
156
237
198
185
234
177
175
211
261
239
225
198
225
174
158
220
190
185
232
180
216
230
201
153
164
150
260
265
186
231
247
206
226
236
189
165
168
182
194
193
232
203
149
246
230
174
252
182
208
200
199
219
176
181
228
199
233
202
137
157
237
181
167
228
172
181
219
210
191
205
208
203
188
257
244
117
191
229
210
151
236
279
247
185
228
221
217
175
227
186
215
209
208
195
256
167
158
206
210
166
182
230
190
242
165
186
157
153
265
158
213
141
217
252
210
194
144
187
262
197
206
214
210
166
215
185
168
210
226
170
206
223
218
122
164
221
227
196
222
151
131
236
214
245
197
166
163
221
213
229
245
203
272
172
161
175
230
187
171
202
194
219
215
252
176
211
232
141
182
189
168
221
175
196
260
219
239
187
280
177
167
189
239
187
137
160
179
192
219
239
238
223
170
233
205
218
219
255
141
252
158
225
234
212
235
233
192
170
196
207
246
249
199
167
208
191
179
186
205
224
222
195
193
219
195
189
223
196
198
167
218
204
180
222
242
182
230
170
182
242
242
209
175
218
169
218
185
237
212
229
147
197
221
232
230
245
227
198
216
199
196
155
196
228
192
238
212
227
180
232
132
216
221
192
233
216
262
140
179
188
150
208
203
110
142
232
178
248
211
239
280
192
182
207
218
234
197
266
191
182
187
134
222
191
233
178
222
247
205
202
183
216
171
266
246
185
163
230
169
246
186
236
160
184
243
167
186
150
244
158
227
235
229
243
196
183
232
229
224
189
161
146
219
231
175
209
248
196
194
199
251
280
217
171
219
205
189
219
200
170
254
185
253
202
244
198
176
181
220
215
183
202
109
234
186
197
161
149
205
181
190
161
249
236
245
171
152
146
178
270
157
217
199
258
223
228
223
185
177
176
214
159
154
145
195
205
202
124
209
206
213
161
190
193
196
232
189
211
208
220
195
193
180
218
218
234
267
176
219
217
228
210
212
99
177
261
143
174
175
257
201
232
205
179
200
215
233
203
182
132
243
200
202
200
178
206
183
185
180
232
228
131
193
154
194
148
222
216
227
255
239
266
217
163
223
236
196
154
127
189
181
247
224
113
198
155
203
223
169
179
194
208
246
200
214
195
195
125
207
238
166
233
216
195
239
223
264
208
126
173
279
121
217
200
209
234
242
247
253
172
201
229
174
242
186
211
232
203
226
211
229
201
264
187
182
222
129
216
192
170
175
148
198
180
229
159
152
220
267
243
257
226
209
231
190
197
203
217
222
208
242
257
170
226
167
212
232
250
212
239
190
233
204
173
197
256
208
168
147
214
185
219
182
210
217
171
197
220
233
231
254
160
255
159
185
222
206
211
237
159
160
249
213
152
214
168
140
205
237
216
229
227
163
208
147
179
220
228
250
199
235
169
209
160
177
201
188
181
230
181
219
156
192
246
137
212
210
268
149
267
184
197
211
204
241
217
154
209
155
185
235
254
226
157
193
210
204
162
261
261
186
126
209
193
261
206
149
206
225
190
208
214
187
238
220
226
216
173
177
167
200
182
220
204
233
239
204
187
171
236
134
195
143
212
223
191
163
151
227
147
197
158
157
216
167
228
164
192
163
193
175
238
190
221
179
197
218
255
177
156
214
216
153
241
261
213
176
146
230
173
155
242
216
227
214
173
174
167
189
193
258
208
166
93
215
121
165
246
208
203
185
205
224
155
211
193
243
186
287
222
176
190
235
229
142
234
184
194
143
179
161
188
156
206
171
226
181
171
145
241
205
185
175
132
181
250
160
161
157
193
150
185
231
247
229
225
178
190
178
233
184
172
178
176
178
241
208
144
165
166
172
190
214
192
135
184
167
227
204
196
218
214
167
227
152
250
212
202
199
240
141
196
228
176
200
246
248
235
201
251
235
276
169
271
229
259
247
209
215
112
243
211
236
212
211
243
215
178
162
200
158
253
171
225
193
248
221
185
253
226
199
176
241
232
209
192
205
209
196
198
205
259
244
206
113
249
206
189
226
234
248
172
238
202
206
222
133
190
225
137
221
136
198
224
184
227
196
169
159
183
182
190
177
214
194
232
112
166
198
276
217
183
191
232
156
144
202
246
161
249
185
203
187
195
249
236
181
176
189
188
199
210
219
196
212
185
205
193
186
176
168
214
203
216
160
182
185
132
221
149
119
241
168
126
193
217
212
227
247
237
198
210
187
232
121
281
226
219
125
210
198
238
190
180
230
150
272
217
228
154
201
193
187
225
165
236
212
221
191
201
271
155
200
191
142
222
234
172
164
154
189
260
245
223
176
175
142
194
207
248
226
189
205
198
260
188
170
168
170
161
188
240
140
243
218
171
244
194
196
229
212
248
208
228
264
231
195
246
271
194
212
225
247
214
246
170
280
141
213
203
244
184
193
250
104
194
243
152
135
211
169
231
160
252
223
153
175
211
208
135
179
187
161
162
188
182
202
177
192
242
198
216
220
270
197
228
197
128
215
256
217
183
212
212
193
223
206
215
252
168
165
186
180
214
191
176
205
217
140
170
229
152
251
203
233
215
219
140
233
190
207
223
197
259
125
238
198
263
238
149
242
215
251
209
149
152
182
188
219
243
216
195
155
214
212
233
165
213
232
138
168
158
215
193
211
193
159
226
204
246
128
189
276
223
175
187
222
207
187
250
199
200
227
184
181
204
214
239
276
243
214
227
172
210
203
223
189
178
175
222
267
216
244
187
162
218
220
193
212
197
236
219
159
172
200
224
215
207
226
212
205
234
201
201
153
253
214
196
200
188
209
175
179
214
148
219
205
234
149
165
180
224
265
234
177
198
194
202
229
170
161
235
186
154
180
198
189
185
216
106
217
236
151
211
156
188
179
235
220
243
247
202
199
201
227
163
160
238
224
204
191
158
224
152
147
185
165
189
201
184
235
213
251
192
159
195
184
169
207
213
233
171
234
125
177
225
189
199
211
215
168
203
153
229
247
152
118
190
129
266
232
226
180
228
254
210
188
266
133
185
219
256
204
185
193
242
202
214
218
215
188
205
203
170
178
215
182
227
223
231
156
228
186
220
214
210
175
168
204
154
194
134
195
216
159
186
214
194
218
233
200
147
126
227
242
248
229
154
146
159
203
217
198
263
219
227
182
247
180
173
149
172
207
255
141
185
169
207
146
223
239
182
187
161
253
244
254
203
220
143
230
186
231
178
190
187
207
221
174
230
252
141
175
230
241
181
168
243
185
150
183
231
211
281
179
187
204
206
160
202
224
220
168
230
187
145
173
233
224
253
173
181
185
179
197
127
208
191
199
232
209
150
159
131
209
195
230
127
219
155
206
189
162
201
243
142
216
133
183
225
168
186
217
147
246
199
191
173
182
239
196
174
196
197
227
226
189
200
166
221
133
213
211
200
230
201
209
202
181
181
253
170
202
212
134
170
199
155
218
265
163
219
216
236
187
194
230
181
174
231
166
227
183
239
226
163
124
186
161
258
164
278
208
221
178
212
160
178
195
212
153
225
190
196
196
170
235
240
218
199
179
199
169
165
162
228
164
146
190
188
191
235
165
219
191
153
161
201
213
187
254
157
188
152
226
134
163
193
193
214
208
131
193
210
212
210
225
208
168
235
224
178
196
235
216
209
244
113
192
202
193
255
179
262
167
128
192
217
236
221
201
233
199
217
180
199
175
224
178
231
233
174
168
175
185
223
167
177
229
222
165
239
188
244
79
229
161
245
255
196
235
180
248
237
189
196
237
152
234
127
99
158
214
245
180
233
222
181
237
253
146
231
150
193
175
252
210
233
188
154
247
164
161
192
232
216
222
195
236
221
247
131
166
226
172
217
157
167
228
217
250
163
232
194
201
165
141
216
228
206
178
249
145
165
223
266
175
192
125
179
264
196
249
212
220
203
185
211
193
167
206
200
254
214
240
227
209
198
156
168
211
178
186
260
182
172
226
256
231
225
191
239
252
213
239
208
221
214
161
251
159
235
231
160
237
215
190
159
225
199
224
257
230
187
212
208
149
221
211
216
283
240
218
231
239
199
142
179
216
224
139
147
140
262
188
185
190
166
194
180
213
191
142
274
210
187
221
191
252
181
202
172
204
133
209
175
133
203
209
175
220
251
218
228
251
149
155
180
244
184
183
225
146
246
203
236
230
181
119
156
224
174
136
213
197
197
262
199
200
213
195
179
239
176
207
167
197
136
207
194
223
142
126
210
213
238
215
235
170
215
186
169
211
182
189
205
194
169
149
222
275
196
164
192
206
202
127
216
217
229
221
243
209
215
202
211
194
126
199
203
196
161
206
208
135
238
205
255
241
227
142
220
256
107
242
232
249
189
208
224
142
243
239
166
156
148
168
181
192
182
193
211
220
201
170
150
141
189
185
248
225
229
249
198
230
220
176
153
212
216
180
191
227
200
217
233
203
200
90
209
228
149
234
174
235
205
214
197
150
236
161
218
236
194
232
198
228
188
241
216
273
175
214
237
227
168
213
218
142
195
182
188
219
166
246
142
126
164
218
235
216
211
173
184
237
116
280
143
229
183
229
190
266
254
182
213
232
173
211
268
166
223
136
233
234
161
224
120
168
246
195
233
212
228
253
187
216
184
247
213
172
199
179
173
142
246
212
211
235
169
188
197
195
205
183
220
245
241
208
168
166
152
190
144
148
201
260
180
233
263
141
258
172
225
226
274
200
232
236
318
216
238
221
216
174
221
255
211
209
205
223
206
165
154
177
178
155
241
239
213
204
154
191
258
194
216
120
196
156
213
192
127
205
198
201
161
225
239
167
218
181
178
214
203
226
188
183
247
215
191
191
189
242
217
240
207
189
225
197
195
230
207
208
168
158
250
177
224
228
198
168
220
252
137
168
193
208
194
205
173
251
235
218
256
148
216
109
209
222
199
210
221
217
183
164
246
200
198
208
210
176
226
142
147
150
214
198
196
198
191
214
214
124
243
223
227
191
193
268
184
156
219
205
241
168
205
218
154
165
237
209
236
198
167
249
189
174
205
230
158
182
184
164
212
214
242
115
208
166
200
187
183
253
188
209
174
232
250
156
200
231
194
145
222
188
142
229
183
188
126
184
263
200
216
226
186
221
177
180
237
225
221
216
191
205
194
159
243
197
182
251
187
212
239
123
218
228
209
193
248
121
233
111
178
210
234
209
189
177
189
211
215
242
204
204
195
261
189
208
159
213
201
249
172
221
244
179
252
212
214
167
276
237
197
238
203
152
204
193
187
190
180
180
239
152
193
225
216
153
235
136
125
227
238
198
259
262
165
240
205
197
230
185
185
214
201
206
218
254
192
186
230
197
254
192
232
153
229
159
208
208
141
178
210
163
220
144
171
218
130
231
206
156
175
202
198
196
175
204
184
194
165
204
255
228
229
231
216
213
186
159
191
215
213
270
201
194
205
186
220
267
185
181
194
182
175
180
172
204
165
208
198
187
214
227
190
230
206
224
217
224
211
155
138
174
185
188
225
287
214
237
232
264
185
200
228
199
237
207
131
182
196
205
216
189
176
194
203
159
201
243
196
152
254
213
221
217
229
142
264
261
206
211
205
226
168
167
156
217
245
261
222
142
225
194
163
159
185
205
161
239
190
183
243
143
209
230
204
137
258
180
194
132
267
240
192
202
127
233
184
209
171
188
202
205
170
206
198
242
173
257
198
157
240
217
283
196
120
163
202
182
222
186
164
187
239
245
231
236
180
203
211
220
212
256
204
231
196
166
212
217
216
235
246
187
202
198
246
192
218
211
210
280
172
209
195
290
213
206
135
203
214
213
197
232
191
179
188
167
144
192
195
210
237
170
253
231
174
175
218
250
214
229
189
225
200
262
233
213
172
185
251
217
185
196
196
245
198
235
168
167
277
233
236
158
223
217
217
194
255
208
227
208
229
288
179
192
179
160
229
187
242
152
187
202
161
224
174
171
203
188
256
238
203
204
241
192
180
213
152
194
184
249
225
239
221
229
133
220
204
234
169
222
226
160
208
217
169
196
205
225
224
228
198
191
211
232
190
217
237
141
217
200
266
212
203
227
187
211
180
231
218
211
248
258
177
218
184
242
212
221
237
176
264
178
198
241
188
213
193
229
163
199
200
199
210
210
179
174
236
208
170
205
174
214
206
195
152
236
196
202
163
169
214
188
198
204
221
242
235
181
219
166
165
156
186
184
238
232
185
194
161
177
189
113
189
196
235
215
164
192
185
126
192
223
189
197
209
258
166
234
189
218
189
182
145
164
139
196
204
194
146
151
178
175
185
219
238
188
196
231
155
211
192
229
193
209
170
221
218
146
170
228
201
163
168
214
257
201
219
209
209
184
175
207
216
184
180
211
229
247
238
201
246
239
198
226
155
203
254
198
187
255
246
177
163
231
199
160
151
236
190
151
163
234
168
214
266
257
196
132
223
248
263
193
214
192
210
201
224
187
171
231
199
209
251
216
192
209
189
180
243
220
225
201
279
181
254
230
187
235
200
162
194
213
148
206
244
218
154
204
254
151
196
235
282
208
202
217
180
241
145
178
190
195
155
249
188
207
249
144
209
192
161
194
210
223
205
254
209
226
205
232
169
166
153
156
190
155
216
163
205
210
171
196
244
210
237
193
205
238
241
153
239
98
259
245
226
210
189
205
244
170
246
181
229
245
167
231
183
191
150
159
190
202
216
228
127
170
153
182
200
206
179
165
186
189
156
202
248
193
218
244
158
253
254
244
192
184
181
219
188
171
167
238
164
204
203
209
187
198
198
135
193
166
181
161
225
200
231
211
177
161
243
218
189
229
169
158
247
224
196
237
205
226
245
247
230
183
193
232
180
189
184
215
171
203
195
220
252
169
181
161
223
253
202
152
231
239
205
249
201
189
174
208
216
198
192
232
261
146
259
214
151
171
190
206
239
211
187
233
220
187
179
169
164
165
173
181
211
218
184
153
208
178
218
218
185
229
199
122
229
161
202
215
208
213
206
232
199
245
169
159
243
213
177
266
204
222
201
173
161
195
142
151
186
198
190
182
232
252
200
224
166
163
184
133
211
252
208
223
212
215
221
220
234
221
173
197
140
147
199
233
196
196
218
294
230
139
168
177
175
189
250
173
229
181
212
168
190
186
184
241
158
202
219
212
162
215
187
164
242
171
216
169
259
168
204
205
176
230
173
199
199
234
187
218
198
134
247
168
260
175
247
154
246
132
200
124
150
190
249
165
198
176
212
178
188
194
209
223
215
217
222
196
163
220
228
206
216
199
238
225
232
193
172
130
213
224
254
175
150
260
185
229
239
194
220
205
216
188
244
182
224
148
150
241
222
247
247
198
216
149
212
250
209
159
176
194
216
200
190
216
254
258
215
184
247
170
150
254
227
201
206
255
226
194
221
201
211
187
129
205
243
172
231
160
229
226
183
165
250
236
200
219
153
214
203
180
192
203
164
154
188
237
214
199
165
223
203
154
176
192
173
202
158
264
250
164
224
150
186
110
233
190
227
203
183
141
190
225
220
167
191
253
188
190
199
214
258
258
206
242
255
260
169
211
177
141
201
222
103
205
175
211
195
206
226
228
184
219
205
194
116
181
200
130
211
181
245
177
214
222
200
124
179
197
213
218
160
195
174
219
208
206
203
288
200
148
147
174
215
179
179
188
206
234
249
214
187
191
212
197
204
164
185
201
193
140
208
194
227
166
183
218
186
160
253
238
161
215
218
207
256
253
192
178
139
237
163
181
228
160
207
139
174
192
230
217
225
203
281
207
180
176
270
203
231
103
224
160
153
134
197
228
176
186
215
207
177
196
150
220
228
169
229
201
261
200
183
203
135
184
230
239
240
162
251
158
234
169
248
239
201
262
162
174
152
248
188
218
199
193
218
206
173
186
215
205
238
161
227
208
204
234
223
206
225
216
188
186
170
192
210
232
207
165
196
209
199
240
219
212
217
226
164
268
218
231
205
209
229
172
183
178
125
210
172
240
122
231
214
229
171
191
212
239
266
201
190
211
195
137
175
153
205
239
180
232
168
163
180
221
170
190
144
208
175
197
136
208
181
221
174
187
202
216
198
203
203
183
189
194
233
198
193
265
167
169
209
202
252
233
203
156
206
211
164
193
199
221
174
209
221
234
104
225
220
160
226
203
216
201
230
223
236
175
187
246
211
205
198
195
224
158
250
192
146
229
157
219
283
204
203
213
239
195
190
149
213
280
189
244
193
210
195
187
246
196
172
234
210
199
192
225
188
176
249
207
185
172
203
203
208
184
215
221
206
230
176
222
156
240
158
219
142
192
197
201
194
249
198
172
226
258
191
208
230
247
120
184
188
174
186
154
145
235
150
147
174
224
226
165
222
236
261
155
199
224
232
188
189
207
231
237
240
136
243
208
212
225
221
207
168
233
204
164
243
154
213
208
175
234
208
218
175
207
236
248
254
182
195
215
164
180
200
176
149
173
258
160
206
185
228
187
224
219
242
197
216
223
217
230
196
193
202
222
175
190
216
252
194
194
202
199
222
258
238
141
192
207
140
201
202
240
235
189
224
156
162
144
185
195
223
209
200
229
181
210
223
208
175
220
199
162
226
197
153
229
237
95
234
227
235
170
192
226
182
169
182
243
238
221
238
240
232
201
186
194
207
173
187
194
243
208
141
191
156
170
198
177
232
208
228
264
257
157
190
240
259
169
239
215
169
155
217
211
198
214
197
187
226
223
227
187
180
190
227
175
185
247
194
198
162
184
196
224
218
180
202
217
220
195
135
223
273
193
235
193
156
154
231
181
133
220
161
226
189
209
163
207
208
153
234
133
261
205
197
201
185
182
181
195
207
196
171
186
205
226
206
161
191
209
180
236
197
231
215
163
224
136
225
199
228
283
214
202
114
262
265
183
239
164
196
209
164
162
203
231
169
170
244
254
192
172
174
190
223
201
190
166
237
251
199
247
195
200
215
135
181
179
254
227
193
207
165
214
216
197
188
167
203
159
221
221
190
229
183
208
182
168
196
212
235
217
240
151
242
213
242
217
208
221
204
174
229
189
197
183
182
204
179
178
200
195
157
152
203
206
251
171
214
220
225
229
243
194
227
158
179
202
204
190
170
202
181
233
199
248
217
261
185
191
191
210
250
238
171
198
215
204
254
172
222
214
261
198
170
167
203
175
233
242
186
193
220
213
185
211
184
198
193
161
221
179
251
216
241
160
262
188
224
155
144
169
228
182
197
267
262
185
193
165
146
227
191
254
202
186
142
164
139
175
192
180
234
165
193
213
206
161
139
220
234
162
154
198
201
192
231
174
226
226
171
218
226
190
194
177
176
199
229
228
235
185
204
271
229
220
273
235
156
160
256
222
228
240
201
168
210
180
207
162
212
234
223
239
122
201
166
235
216
186
202
179
229
184
271
128
164
177
217
227
296
194
159
147
170
190
211
221
124
201
233
191
225
220
194
146
229
231
233
234
126
196
123
209
205
262
219
187
197
222
274
144
240
203
212
206
190
237
250
185
128
146
253
136
225
187
173
171
206
157
155
170
140
180
209
245
201
135
177
176
190
153
225
184
248
234
175
214
187
167
187
207
284
209
140
226
256
195
163
233
205
175
251
120
194
174
173
236
294
179
167
257
144
196
219
198
209
206
228
161
200
244
214
127
182
248
227
192
199
156
178
200
230
237
216
215
230
158
217
217
228
195
172
222
218
162
234
202
212
233
216
222
243
199
180
183
218
203
197
134
202
149
213
226
221
216
229
227
234
194
211
209
247
145
185
191
213
204
283
151
189
230
146
166
227
245
228
228
237
251
248
212
231
226
199
232
125
192
238
255
248
243
218
226
197
224
259
231
199
205
237
206
201
224
213
275
255
185
182
127
219
175
154
134
173
209
224
186
172
241
211
152
201
198
198
242
223
179
196
201
180
205
222
153
151
154
237
179
169
173
225
162
219
223
201
262
151
230
247
158
261
201
202
205
261
282
214
182
214
163
173
171
191
208
182
280
202
216
274
144
227
192
243
202
234
172
206
206
247
235
145
169
165
232
235
188
189
187
229
217
218
212
224
177
217
208
246
184
235
202
212
243
172
245
165
172
174
235
187
177
211
186
137
175
200
162
227
195
233
196
160
227
208
229
194
195
190
172
172
196
274
174
258
185
173
243
170
289
178
182
168
230
220
237
238
221
201
154
211
232
241
166
245
164
117
203
192
199
252
237
249
212
163
186
171
189
237
209
165
202
200
191
242
147
262
186
209
271
203
186
150
255
233
134
223
218
213
157
184
262
251
263
233
207
204
147
126
194
200
203
196
187
207
227
214
226
202
201
242
159
148
265
242
204
221
167
179
206
209
160
166
222
130
178
208
230
202
219
204
218
189
239
234
192
206
227
251
213
128
145
170
177
181
130
154
180
158
215
130
206
210
154
160
177
231
174
163
285
239
171
182
112
214
225
150
176
185
193
193
130
274
172
203
223
210
246
226
187
188
156
201
190
177
190
201
221
119
172
269
205
222
244
214
181
231
205
218
237
200
238
150
265
230
220
154
217
237
170
179
280
185
217
249
238
190
193
230
178
235
172
207
223
198
259
157
275
171
212
249
236
196
160
271
151
237
200
122
200
250
212
161
148
148
127
193
203
223
135
169
188
132
216
159
183
208
199
201
195
177
207
224
247
230
202
162
170
220
187
225
213
179
182
221
246
247
206
217
218
184
127
209
165
231
139
172
206
145
199
218
247
187
191
189
205
180
157
193
225
219
119
171
205
205
180
185
257
217
166
190
172
181
217
252
222
197
238
159
191
212
165
169
228
168
176
193
184
190
169
221
145
192
201
202
182
231
211
168
221
212
238
217
217
191
184
206
244
266
176
182
260
278
134
205
197
190
205
156
213
140
203
140
193
249
185
208
199
197
172
172
192
227
237
205
231
251
254
231
243
241
210
145
236
127
169
170
177
200
220
215
191
177
217
188
171
211
229
221
232
210
201
201
221
184
143
254
216
229
193
214
152
249
209
161
224
275
179
260
202
234
177
167
235
242
194
221
219
143
185
189
174
213
160
191
218
191
179
259
207
170
223
203
208
197
195
234
191
203
163
224
245
213
187
199
162
143
260
166
214
194
173
211
197
165
188
231
206
193
222
200
164
206
153
176
198
192
150
178
140
187
178
220
280
234
248
190
216
266
266
166
204
190
219
210
235
225
169
189
170
149
161
204
262
248
115
244
222
186
193
196
246
174
246
205
195
241
190
239
247
155
187
199
209
262
187
185
254
115
161
189
230
228
174
215
223
230
194
209
237
226
197
206
220
151
169
242
203
210
211
181
157
162
161
217
175
221
163
208
142
199
214
232
227
215
179
177
209
205
172
172
211
218
192
183
222
194
190
291
220
179
241
228
210
176
226
144
227
218
249
223
201
223
157
202
181
184
221
184
205
266
198
192
151
162
197
240
126
216
191
167
204
152
282
226
233
178
169
231
235
187
226
201
242
174
211
120
205
213
218
198
135
147
194
218
194
178
201
236
213
249
200
240
222
247
215
194
180
201
248
179
193
168
175
225
209
228
175
200
187
189
211
180
201
250
176
180
188
217
212
164
238
168
222
184
196
180
181
217
294
169
244
225
201
150
216
195
172
229
151
209
205
226
268
219
222
232
147
256
228
225
187
186
167
183
145
215
205
262
176
140
209
232
154
247
191
239
208
151
241
246
258
206
220
188
250
210
192
188
228
208
206
158
153
189
184
173
169
154
254
228
197
180
173
248
137
148
169
193
197
262
202
252
230
199
155
78
227
207
160
207
184
244
183
227
286
215
165
229
201
189
142
228
187
201
207
162
201
221
165
176
215
178
201
187
223
220
165
170
241
150
202
200
220
170
211
167
216
199
209
196
186
146
201
177
162
202
207
214
227
209
219
184
184
195
232
189
214
199
220
194
194
239
225
250
248
155
197
214
174
238
211
178
212
203
162
192
234
142
122
191
237
247
185
191
185
214
163
230
206
143
196
186
210
165
197
150
235
216
194
211
169
129
201
178
149
165
135
161
250
247
144
185
140
234
226
148
207
175
216
184
185
194
187
204
137
191
162
220
190
183
208
201
241
248
202
164
156
167
223
214
228
180
192
210
199
120
177
191
149
184
213
209
170
230
254
174
226
248
273
246
235
208
246
266
156
146
205
242
180
212
194
128
211
202
154
130
214
199
185
258
222
241
154
159
145
225
248
208
198
237
243
176
254
185
251
252
151
203
216
248
242
228
140
258
235
167
243
243
223
191
191
249
182
227
232
220
198
114
242
152
166
229
213
160
209
185
222
160
154
195
216
208
168
216
162
198
235
187
210
237
203
177
143
161
246
143
197
175
197
119
138
240
228
227
207
240
145
157
219
199
170
233
275
152
202
188
238
177
230
157
209
198
234
202
192
193
178
207
230
188
219
149
197
170
247
177
192
127
214
187
236
147
199
210
161
176
151
182
137
120
184
189
154
204
161
152
146
190
197
246
187
177
209
160
248
193
176
235
234
207
171
258
226
206
158
194
200
179
204
179
255
230
218
230
244
213
202
237
235
191
213
226
180
226
160
249
199
172
223
241
199
203
209
200
219
178
244
185
198
203
211
214
178
223
181
179
186
174
194
186
214
192
208
222
203
232
197
165
225
218
247
213
192
199
177
203
199
184
213
232
240
195
164
195
176
175
233
149
203
229
183
194
214
216
188
127
200
181
194
146
192
238
202
183
238
175
204
218
210
219
169
211
282
221
182
213
192
245
149
218
230
180
212
229
191
182
211
211
187
186
166
211
242
200
239
192
194
159
225
190
206
230
175
189
132
196
151
144
199
203
230
184
244
165
242
137
194
202
203
195
171
213
212
224
212
197
206
179
168
144
221
274
225
183
190
185
147
231
138
157
184
148
152
219
222
196
241
179
192
196
184
205
172
216
183
181
156
121
236
120
186
198
210
185
156
188
235
122
185
184
191
218
203
180
177
233
219
188
205
260
212
223
190
202
198
140
243
219
174
158
248
208
166
202
198
283
177
231
172
239
183
220
206
148
217
219
231
226
180
205
197
173
240
225
170
177
193
208
171
180
121
230
216
233
165
187
172
254
251
143
210
194
238
167
249
227
187
214
148
234
197
193
160
248
235
163
192
248
258
205
166
203
148
189
178
250
193
214
212
226
210
255
207
140
197
156
198
139
177
192
200
200
163
244
242
183
261
228
190
195
236
259
178
186
163
176
186
196
156
209
232
203
141
200
181
208
237
220
202
197
217
141
201
165
172
188
74
234
236
202
199
151
182
254
185
223
188
148
162
202
208
215
217
193
203
184
277
216
156
178
169
222
214
180
281
220
245
196
167
184
212
174
163
228
202
227
265
165
231
249
191
243
202
232
201
215
187
267
190
170
228
200
248
170
250
232
171
224
229
203
211
172
217
224
245
232
211
269
251
197
202
213
301
108
194
213
202
206
206
210
164
176
236
216
239
170
170
184
109
189
204
213
202
235
190
227
217
175
216
146
137
137
191
165
187
260
221
205
135
251
209
228
243
173
202
203
144
189
152
221
229
224
231
238
221
230
228
245
199
160
147
182
189
161
221
261
276
142
203
200
158
226
215
155
232
166
187
215
137
180
216
143
212
237
145
266
187
230
288
233
286
194
191
159
205
215
208
171
172
226
128
165
166
216
249
182
226
216
214
194
186
184
250
241
187
183
220
204
227
114
222
203
163
228
207
182
264
226
209
219
224
252
267
245
271
122
182
168
239
244
164
185
130
243
200
197
188
223
209
216
164
251
198
219
104
197
201
232
220
191
257
172
155
186
183
202
143
178
167
211
161
141
209
187
184
198
197
168
196
204
191
168
129
165
220
179
179
171
189
195
205
212
212
175
183
200
204
215
204
156
186
177
158
228
132
203
206
185
178
153
205
246
179
193
173
178
184
146
187
126
211
264
185
196
199
253
245
208
177
162
199
219
197
204
169
181
201
225
224
245
202
245
226
235
155
221
199
141
208
217
289
202
181
150
182
207
202
212
174
166
233
189
190
227
193
207
256
209
220
199
199
176
187
200
219
164
132
194
132
225
216
182
160
233
216
191
203
232
202
141
149
152
190
217
225
197
239
238
213
200
195
177
202
191
242
121
184
175
192
238
202
230
184
224
263
189
260
159
146
174
209
135
205
206
155
244
238
154
230
227
132
205
202
243
226
206
195
214
212
197
186
185
226
123
196
176
230
201
194
108
233
215
188
176
254
210
171
224
235
152
205
194
236
230
245
167
225
179
183
200
172
178
235
173
190
201
148
176
202
189
175
255
176
242
180
195
208
170
227
198
237
126
185
199
173
149
197
217
165
182
253
295
159
210
186
237
234
191
178
215
183
216
173
154
167
173
211
237
174
205
283
226
201
214
241
266
208
228
242
189
217
228
243
178
169
226
164
174
237
245
211
221
197
199
274
182
167
199
211
217
221
140
240
176
225
211
143
199
224
248
195
225
221
200
173
183
223
229
242
184
174
181
254
205
207
250
233
218
197
240
180
237
233
150
217
235
221
195
221
231
191
208
181
173
254
233
227
222
217
189
215
208
205
233
187
188
190
186
249
154
180
200
221
196
187
194
169
199
211
224
222
261
236
210
229
224
162
230
206
219
287
213
211
217
178
232
201
230
156
185
165
191
177
205
234
198
201
186
213
214
225
221
183
155
222
160
165
225
158
241
273
157
185
190
234
187
266
183
198
245
241
172
210
186
219
237
198
206
218
201
192
159
134
210
187
188
245
206
170
217
216
202
228
185
219
214
185
195
231
144
248
119
185
201
155
148
212
183
199
202
168
208
219
233
191
143
214
203
158
225
164
196
254
216
230
212
142
163
149
171
196
197
204
233
187
219
169
221
192
191
178
184
185
213
141
170
180
220
265
222
241
98
256
142
241
186
274
202
223
133
176
160
193
172
193
223
160
232
170
145
197
164
180
186
205
186
242
147
198
187
223
210
179
232
228
155
170
229
264
224
172
174
248
153
188
145
227
128
179
212
189
195
194
260
224
186
228
176
168
241
222
201
238
229
110
195
221
202
183
217
249
205
171
180
175
200
112
235
153
208
146
168
232
184
176
225
204
173
213
199
229
212
173
227
173
215
190
274
256
222
271
229
201
148
252
186
162
169
189
169
201
212
195
237
220
242
228
218
171
104
180
217
289
196
193
156
185
170
184
172
203
291
146
237
193
212
202
137
226
187
244
206
191
238
207
211
206
245
249
287
206
175
229
189
201
188
184
247
257
234
141
190
215
223
209
198
175
203
188
223
218
261
166
280
156
281
184
187
209
178
239
196
199
147
216
176
215
227
244
141
177
169
201
211
197
218
178
246
225
186
159
221
241
187
221
210
94
220
197
198
218
165
142
203
206
173
230
112
209
193
181
146
235
175
204
155
211
193
224
187
173
214
163
169
195
132
152
242
223
203
151
177
189
237
192
202
208
235
260
184
219
143
140
251
234
194
180
204
214
197
251
147
201
98
210
214
238
191
158
218
237
230
242
150
199
240
204
131
174
174
145
241
228
239
173
262
198
161
215
169
208
213
183
202
184
245
179
199
218
186
197
233
239
233
180
185
215
199
244
184
259
193
170
239
209
163
152
227
207
194
178
238
199
195
252
239
241
153
214
234
198
149
127
260
194
216
210
200
255
133
254
246
180
253
239
152
194
154
102
140
190
204
207
209
178
255
168
172
184
172
162
185
214
245
211
134
189
145
227
219
207
229
214
138
276
210
217
165
222
162
238
191
182
186
152
236
188
199
223
162
196
160
161
160
134
176
236
142
187
212
183
171
193
175
235
181
192
214
210
202
162
226
171
199
197
141
249
218
219
205
210
175
172
229
180
228
212
242
215
264
131
202
147
214
179
198
266
224
191
193
180
172
155
167
196
191
207
206
172
137
139
218
242
213
217
219
244
198
185
154
160
181
208
177
164
233
207
209
274
186
222
218
189
161
218
202
169
131
212
186
157
197
195
166
253
184
195
287
187
236
171
156
155
206
173
237
277
218
178
243
135
111
212
247
185
200
178
242
254
184
223
187
194
231
135
149
256
210
221
155
230
151
239
221
217
173
259
197
198
225
244
183
187
183
160
182
171
185
169
128
223
193
219
222
168
184
222
157
231
158
181
225
165
183
233
135
167
147
157
234
225
217
212
243
178
226
223
160
241
230
201
215
194
196
244
193
202
229
179
205
206
185
155
178
181
192
228
233
222
270
237
209
216
181
268
235
218
177
179
164
201
161
156
154
173
263
173
202
198
168
85
181
225
226
229
144
210
226
130
222
144
272
215
210
198
173
172
217
191
234
160
208
245
203
172
187
181
159
191
217
247
180
250
184
210
172
241
189
183
205
173
166
228
231
214
209
214
176
235
213
210
182
234
144
216
221
173
212
236
202
184
226
206
217
203
232
253
189
242
143
172
214
232
187
226
233
229
203
173
198
258
238
244
238
157
184
251
225
220
220
191
210
223
210
224
161
241
165
215
233
241
246
196
198
242
276
184
135
235
206
172
139
148
163
227
207
165
191
135
188
185
231
174
197
242
225
151
139
256
198
146
121
186
230
217
200
160
218
204
167
221
143
206
195
169
185
109
195
219
187
161
221
219
249
166
236
133
189
215
185
140
246
191
252
197
195
206
210
193
189
242
127
241
190
171
201
226
165
172
183
179
220
163
189
199
176
188
200
229
158
147
167
267
224
152
184
258
261
196
180
185
188
197
200
224
228
202
206
232
206
201
175
200
220
261
171
220
251
243
190
195
190
225
188
192
158
155
190
202
237
186
204
187
173
200
178
179
278
231
207
227
240
247
179
250
182
149
232
172
205
257
206
187
213
247
197
226
220
177
189
183
222
259
195
262
157
252
260
266
212
187
163
191
261
169
200
190
260
212
150
190
132
203
209
185
241
194
217
157
218
204
193
247
199
225
190
193
204
183
222
189
207
198
190
204
261
233
217
181
179
219
150
225
198
232
193
116
227
272
201
235
186
153
253
195
244
202
204
171
194
174
200
169
161
215
238
158
245
200
230
199
146
175
209
211
202
204
174
213
213
203
243
123
214
155
204
214
181
230
239
209
133
120
215
190
194
154
165
237
137
158
191
195
239
249
143
223
206
187
191
219
184
223
218
190
184
149
250
200
172
154
232
267
179
221
215
170
168
160
183
184
189
164
152
258
211
185
189
224
230
207
209
190
186
192
182
183
211
166
132
177
209
137
226
160
286
140
180
296
260
210
211
243
185
190
223
131
236
225
255
230
216
200
173
260
208
187
208
258
167
132
209
203
215
228
186
168
184
172
185
255
267
184
169
165
161
180
144
224
225
217
194
186
233
210
213
279
248
172
219
194
148
222
211
183
190
240
244
202
203
251
196
220
195
230
164
187
266
193
250
211
254
184
242
258
147
223
163
194
220
217
147
215
167
173
144
286
239
152
165
167
201
243
176
221
205
168
188
211
202
246
251
177
155
175
203
194
236
262
229
261
191
280
275
168
179
133
152
244
256
206
185
177
225
143
204
94
225
233
179
197
243
188
197
232
176
166
180
192
213
199
222
198
151
210
138
258
173
212
266
221
160
219
259
228
188
165
187
232
261
211
191
235
156
167
176
166
213
220
176
143
206
215
195
239
214
210
205
230
170
229
212
179
223
272
197
236
201
252
205
201
235
195
208
136
181
144
252
194
216
176
198
189
225
229
174
182
223
192
210
191
161
240
189
144
200
223
172
134
190
193
165
175
188
241
171
135
164
233
196
236
220
198
235
194
194
145
191
200
246
182
143
198
259
199
161
223
191
176
216
221
211
172
208
205
198
182
181
201
195
242
182
216
166
217
140
243
177
186
231
191
182
169
194
213
191
200
241
230
218
192
217
224
237
147
211
220
161
223
204
237
181
237
218
211
224
285
183
262
186
184
210
112
260
213
229
202
208
161
213
207
253
200
148
204
219
188
263
270
179
239
165
194
236
184
126
108
158
148
229
157
221
240
190
180
227
156
214
224
256
218
131
211
141
187
169
236
156
216
209
172
196
198
198
232
142
244
207
285
204
240
202
234
177
203
250
201
203
216
147
226
141
185
284
129
179
181
178
212
128
236
175
221
208
129
215
233
227
164
215
204
204
220
235
121
185
245
195
198
173
184
132
233
171
198
223
153
196
198
226
171
217
227
160
249
211
194
194
192
227
170
208
293
237
167
173
206
190
227
172
214
205
251
250
223
206
153
209
220
178
194
164
213
185
197
253
227
176
228
212
155
204
179
227
128
241
228
275
179
263
249
220
241
206
192
194
130
196
157
195
246
145
187
268
177
198
128
232
186
156
302
243
110
151
207
237
134
226
220
230
167
177
170
255
185
221
209
219
151
198
194
264
194
179
209
213
148
189
217
188
277
212
235
236
236
178
252
235
222
224
232
199
224
177
221
202
161
189
195
167
225
220
204
185
207
219
176
238
237
186
216
226
212
198
220
244
231
141
210
223
224
172
227
184
165
272
192
209
179
218
230
179
199
201
268
183
176
186
238
247
162
169
184
193
225
286
189
234
241
220
248
204
234
121
227
198
177
207
214
228
253
182
191
136
197
201
174
201
137
224
176
223
185
250
226
231
237
197
164
213
275
204
231
214
206
216
202
220
233
220
153
261
168
247
248
175
233
195
159
245
243
205
255
106
150
200
217
226
162
198
242
158
234
250
169
181
153
249
161
165
175
207
203
228
156
246
137
292
189
159
220
148
201
229
230
204
230
207
224
164
159
135
178
201
149
236
155
217
223
216
218
172
254
193
219
230
166
250
286
132
214
216
219
187
165
222
163
149
202
253
230
201
129
168
199
225
212
230
210
166
150
230
232
182
209
238
207
240
250
157
232
199
184
190
189
199
256
159
195
240
230
196
249
235
218
207
178
223
250
185
235
235
184
192
254
268
233
196
228
251
201
185
235
226
142
205
200
233
197
249
227
252
165
219
196
144
184
150
220
240
197
208
226
205
116
235
140
238
208
239
206
166
205
199
208
243
190
184
205
214
133
210
198
205
253
210
206
257
191
207
231
198
184
210
235
205
182
211
173
205
180
272
214
231
221
203
160
174
195
185
124
197
183
177
210
228
195
191
174
229
219
238
174
149
188
143
228
231
168
233
152
242
187
234
227
140
209
172
171
203
216
204
187
246
247
231
211
186
215
259
243
149
197
133
202
230
189
171
147
204
236
156
165
228
137
188
177
239
189
171
153
174
196
224
213
185
171
175
179
187
208
113
249
143
174
217
216
188
178
159
207
175
184
228
177
183
228
213
173
202
150
193
188
252
209
205
217
232
82
190
205
178
231
193
216
226
264
205
206
170
223
225
220
197
163
182
210
228
218
177
194
228
220
180
181
187
179
211
150
210
235
167
190
211
140
247
177
188
259
211
288
170
206
193
196
181
189
177
213
127
164
159
237
183
182
203
187
188
207
161
200
259
184
249
159
209
155
152
227
204
217
202
201
269
187
106
248
186
195
215
245
212
274
217
213
224
213
225
186
280
199
162
201
124
182
163
261
126
180
206
201
175
180
187
195
199
194
234
184
208
171
210
137
191
251
182
293
253
237
222
240
213
211
200
200
208
198
199
190
249
231
227
146
246
185
152
179
154
209
210
265
177
236
229
201
173
212
186
177
217
179
231
186
182
188
215
220
186
224
191
168
181
194
200
201
151
199
243
229
279
236
257
209
209
178
159
199
232
196
240
181
219
232
178
201
190
181
192
190
189
204
228
226
220
193
226
214
215
247
209
167
204
192
158
202
196
248
206
157
180
210
215
238
194
223
168
212
104
219
216
194
154
215
174
120
210
237
201
234
227
244
187
245
213
231
162
187
223
189
235
153
206
202
195
185
173
200
176
174
222
195
183
230
235
234
240
254
192
249
189
176
171
203
207
186
188
213
103
151
227
162
190
236
173
196
138
206
169
155
209
149
222
190
217
191
205
237
198
153
148
233
257
200
188
179
215
189
260
198
254
182
174
197
219
194
201
195
208
208
180
205
225
143
212
210
204
230
203
233
162
200
242
172
217
187
228
238
248
191
223
252
282
245
229
232
213
183
232
209
238
209
194
202
219
229
240
235
185
185
137
166
231
190
163
239
133
154
181
249
150
237
218
247
197
226
205
208
200
154
187
143
204
130
163
198
194
186
178
179
214
207
227
230
170
217
187
209
239
196
164
221
246
159
202
197
229
213
221
154
187
168
203
210
172
223
229
268
223
184
232
184
194
220
248
169
213
231
246
232
189
221
195
188
201
268
238
147
196
225
203
184
156
218
207
174
193
157
196
193
165
165
220
207
229
146
161
190
161
196
240
172
201
237
174
219
190
202
206
263
246
205
209
241
186
196
192
220
255
243
234
169
230
209
165
141
199
197
164
186
215
205
249
247
195
215
210
216
203
199
175
233
200
204
159
185
185
213
199
239
139
192
157
189
207
185
162
197
245
171
150
187
206
172
224
246
203
190
188
182
197
184
181
226
214
228
208
158
221
103
169
242
204
242
122
232
198
150
176
170
226
235
161
170
246
211
210
198
218
149
189
224
219
176
188
174
149
194
93
185
165
148
209
233
233
174
223
183
178
195
226
246
210
231
267
246
124
168
206
197
189
217
188
181
187
223
198
127
176
279
199
211
205
258
176
217
168
192
162
208
204
234
280
199
208
200
156
227
196
219
187
197
216
213
214
181
177
175
205
198
213
149
221
191
163
216
165
237
238
169
111
207
144
159
189
220
258
213
189
118
219
163
199
194
196
182
208
253
183
247
145
247
168
177
226
235
203
172
189
236
159
210
219
204
204
163
182
231
246
168
160
229
215
164
200
201
118
193
214
190
169
229
157
224
204
223
224
216
159
150
174
195
212
227
217
180
162
190
260
200
131
243
171
215
240
215
261
217
187
241
193
222
249
213
209
241
175
187
126
207
212
208
237
186
228
112
222
180
179
205
184
270
195
147
215
224
211
166
131
206
98
255
195
117
205
187
168
179
248
197
216
209
125
288
195
182
215
218
209
160
167
126
191
252
194
153
189
198
202
230
208
207
215
152
212
210
239
225
140
160
160
225
192
242
201
211
200
160
114
168
209
240
200
230
244
206
196
174
211
216
216
233
173
230
177
149
216
153
219
252
203
202
209
157
235
141
236
194
125
199
244
162
167
157
204
241
263
169
235
272
199
158
156
223
171
149
118
310
130
226
188
213
247
166
184
213
221
129
206
191
214
171
142
185
225
242
222
174
259
199
191
217
231
209
180
217
224
237
184
201
197
144
122
271
244
196
248
230
256
236
170
247
220
239
180
238
192
142
178
153
160
257
161
264
191
150
216
244
191
217
141
162
184
214
210
235
182
163
158
179
200
205
137
211
238
271
203
220
190
210
201
210
251
181
209
237
233
212
180
174
203
219
191
184
176
184
235
181
162
174
191
167
276
145
245
236
211
226
164
191
203
207
119
142
204
181
228
222
162
229
239
252
257
206
216
242
195
155
219
211
118
190
162
135
259
170
206
179
198
184
237
212
232
238
123
175
145
167
165
200
190
160
183
270
226
263
239
193
187
188
159
224
207
217
210
231
213
249
154
190
240
177
279
217
173
216
201
226
239
189
205
213
211
179
259
238
216
223
160
214
227
217
179
230
255
217
113
192
186
250
136
265
171
209
204
184
264
179
212
250
232
249
188
181
177
124
242
161
157
256
150
141
210
222
219
207
221
183
181
192
175
226
221
194
130
166
189
165
201
202
217
181
168
193
178
205
227
206
209
172
224
193
185
235
172
227
231
226
151
209
238
219
188
148
237
196
235
259
155
236
195
205
259
230
170
241
194
204
212
223
200
167
155
175
239
225
225
153
191
209
193
190
233
267
184
214
227
151
195
174
176
180
125
225
237
182
255
187
268
224
184
201
155
244
145
212
158
212
214
207
228
222
256
187
204
191
242
234
189
215
176
214
164
180
158
192
162
171
168
192
178
236
155
213
192
202
178
188
198
173
238
187
203
185
237
178
233
207
230
195
125
176
176
153
197
232
193
254
178
160
210
238
237
157
223
210
141
222
176
184
249
229
186
231
198
165
187
208
243
113
190
246
229
176
156
199
235
165
249
191
158
218
181
196
208
173
204
241
160
223
189
240
187
180
190
256
223
184
186
218
167
175
212
205
197
240
204
177
214
206
236
189
201
218
154
272
198
174
161
208
200
131
167
226
165
227
208
189
195
169
190
232
190
246
224
209
215
211
144
141
230
201
204
197
203
156
134
140
175
229
218
195
220
224
165
206
187
185
193
189
192
220
238
277
268
165
90
213
233
188
228
251
240
183
221
215
207
167
181
180
181
176
264
219
199
189
250
186
202
191
114
198
194
216
268
264
194
200
239
207
230
165
180
194
193
218
130
219
244
175
97
219
153
171
155
180
212
257
168
204
155
213
239
212
148
196
190
196
223
147
257
168
150
186
223
229
194
185
221
173
178
205
247
172
185
203
177
169
243
176
178
148
152
195
211
238
192
215
229
207
188
221
181
159
171
218
229
160
172
181
204
219
231
224
237
205
205
220
203
174
244
224
172
208
179
181
162
197
242
161
180
163
195
162
181
189
194
153
256
160
179
182
276
241
181
176
171
209
202
140
173
228
233
202
212
202
204
184
201
233
258
185
165
179
178
202
201
173
235
176
210
254
209
194
219
207
181
175
194
212
168
174
196
174
220
175
212
147
222
133
176
246
199
223
212
174
187
215
203
191
172
213
152
279
222
131
143
228
182
222
243
168
194
249
215
193
202
217
193
174
177
203
146
154
170
176
126
167
174
217
287
182
197
235
139
207
155
250
191
223
188
171
159
284
204
192
190
192
218
226
185
131
170
234
178
276
220
262
220
188
221
182
207
140
157
160
222
171
200
220
171
253
138
204
192
203
210
187
174
236
264
194
176
210
246
206
211
183
212
221
204
202
128
233
169
241
222
169
210
163
242
240
199
146
202
258
188
202
169
211
192
231
196
281
168
175
148
206
181
239
136
209
220
236
184
190
253
216
213
233
176
165
205
244
172
147
154
196
203
160
157
215
181
197
177
235
176
155
195
181
168
205
164
163
161
214
178
184
154
169
194
177
303
174
172
194
230
179
246
148
216
211
224
194
246
193
201
197
257
173
183
196
134
158
253
192
236
188
117
175
251
172
212
166
203
184
234
200
186
179
156
205
232
120
257
181
213
177
194
200
210
260
195
194
144
192
225
161
187
184
176
193
253
209
184
239
243
212
239
220
254
194
189
218
165
205
243
213
153
211
210
184
172
198
145
224
165
148
164
147
206
150
129
216
174
239
209
201
206
202
116
239
130
188
244
209
152
150
145
211
185
221
141
215
215
214
212
178
222
168
191
157
182
215
222
148
189
234
215
198
193
212
176
230
191
213
253
222
197
226
107
158
208
181
212
208
125
199
166
164
197
216
250
200
190
245
187
144
199
207
197
222
125
249
221
214
113
87
182
194
129
166
216
238
199
199
152
227
126
221
255
245
222
158
187
149
136
173
162
200
194
217
200
188
228
258
262
176
190
202
173
155
243
232
216
188
128
167
204
193
166
180
249
228
190
205
184
182
141
188
197
233
236
240
210
175
177
203
212
154
117
168
201
153
211
179
139
179
227
197
118
234
223
251
183
220
214
242
244
245
162
240
217
128
195
229
215
202
206
192
126
238
183
260
137
223
233
204
216
207
182
170
194
200
189
156
187
163
275
197
177
203
266
199
239
224
180
210
174
212
220
219
226
201
173
252
231
172
218
201
207
165
133
214
269
127
191
209
208
273
204
209
232
169
162
201
171
186
218
208
157
205
228
151
172
207
169
198
179
192
204
209
253
226
256
274
160
218
203
194
179
257
275
193
217
198
166
133
177
197
195
227
167
204
187
227
184
212
216
214
178
242
187
131
191
180
227
250
168
221
254
190
184
176
231
210
222
278
170
203
286
256
241
213
205
171
150
155
145
158
182
243
222
196
229
173
184
234
177
218
212
206
225
195
145
184
174
243
174
142
233
232
191
144
196
172
201
230
260
222
174
189
239
134
149
225
212
172
232
202
255
205
175
171
236
191
193
249
157
167
179
182
204
169
156
212
222
178
192
233
201
187
227
159
190
184
233
242
155
189
219
199
227
173
200
213
216
174
155
223
130
270
264
181
198
234
183
236
226
183
226
204
248
194
146
166
156
201
161
247
204
194
240
244
249
237
237
125
214
226
242
237
208
231
220
225
225
264
160
195
242
173
153
189
179
198
203
230
223
231
203
160
186
208
244
254
242
240
207
171
190
113
223
242
170
207
207
204
269
174
197
168
209
212
164
199
272
185
228
173
196
190
198
254
237
168
229
194
201
177
212
198
200
208
252
256
226
158
235
150
232
198
157
197
180
135
207
220
175
176
208
199
218
195
171
224
188
158
198
235
191
228
170
159
205
143
211
211
207
234
203
186
181
206
203
160
223
113
261
233
167
240
250
194
173
211
186
215
236
185
219
234
213
150
221
180
184
203
149
165
185
205
139
180
225
205
188
204
161
235
217
254
196
211
203
195
138
201
200
180
206
207
213
224
177
130
181
231
215
166
176
198
237
169
244
215
235
207
205
199
208
180
241
133
232
216
170
200
176
159
159
183
215
195
225
202
207
241
177
209
134
201
293
171
248
237
216
192
152
205
190
271
207
186
211
206
217
196
257
202
231
149
173
240
181
251
151
220
148
200
218
181
192
215
140
235
244
189
179
177
246
201
229
217
181
167
162
220
182
247
98
191
237
209
183
163
196
202
219
257
242
280
151
221
229
218
223
167
235
115
161
230
182
240
217
185
168
136
248
255
268
172
204
169
205
172
197
162
231
258
236
199
182
266
230
204
221
188
230
126
164
171
218
209
224
231
267
239
234
175
118
219
200
160
185
204
256
208
209
174
178
196
174
196
225
190
211
136
228
171
230
202
178
166
205
182
227
217
197
160
183
220
253
250
207
193
149
229
162
186
141
215
236
225
209
249
169
175
199
232
246
214
189
198
181
224
135
201
179
195
191
181
257
142
246
231
253
112
200
216
251
212
242
221
193
186
241
226
193
168
211
205
204
183
188
235
146
206
206
150
200
180
148
198
202
181
210
122
233
130
240
265
203
202
222
234
285
201
212
196
149
265
219
240
172
135
233
219
224
209
190
268
156
190
234
220
222
186
178
232
169
198
195
184
213
218
182
197
162
216
228
244
254
228
221
197
249
146
181
173
184
169
229
255
164
224
247
166
195
271
198
190
256
140
237
151
209
181
210
199
203
170
205
185
123
142
182
232
220
138
163
170
164
215
220
158
231
235
198
172
182
152
172
169
184
201
224
170
156
194
207
187
205
235
221
152
190
243
246
171
210
173
195
229
172
218
190
191
206
290
161
162
246
172
202
185
190
220
205
216
212
130
196
169
218
151
231
192
174
246
210
169
216
236
240
185
200
207
148
218
177
176
113
218
200
224
201
241
242
251
235
185
171
224
237
172
152
191
228
191
213
105
172
182
155
184
203
156
180
204
242
184
247
222
251
195
200
212
231
236
199
152
187
201
205
272
207
148
223
193
167
241
242
219
232
249
167
219
172
238
159
194
191
229
122
167
175
137
196
202
222
156
143
234
223
250
174
205
242
192
198
171
217
111
198
186
265
212
161
163
235
230
207
246
245
210
206
213
217
186
186
203
151
167
197
220
230
220
210
139
195
212
201
143
112
181
212
216
166
207
134
205
193
222
175
222
216
210
216
222
187
217
279
229
219
221
192
194
154
200
227
185
194
96
285
218
174
154
155
201
165
173
224
228
164
205
266
176
216
193
178
196
200
203
237
191
187
163
216
155
193
159
151
201
245
212
154
205
247
220
155
241
180
217
171
203
261
301
200
205
206
236
201
216
245
185
191
175
224
283
173
226
251
203
224
153
217
173
162
238
200
175
131
193
190
184
149
203
195
220
217
217
172
214
213
215
248
243
228
192
228
197
170
196
212
208
210
172
244
204
212
213
188
228
178
212
203
187
213
299
211
179
252
213
223
162
237
264
217
214
259
182
218
180
200
176
228
182
226
182
129
213
200
134
210
197
192
175
200
208
215
254
215
181
190
173
208
233
145
174
149
162
211
216
201
262
156
213
230
179
153
274
262
167
233
270
177
235
277
222
192
195
237
162
171
210
164
191
197
220
206
204
178
148
194
190
117
184
199
167
166
212
208
220
245
164
186
159
212
264
190
200
246
221
119
230
220
255
157
193
150
224
250
186
190
227
207
240
201
256
158
160
240
171
152
172
128
210
237
257
192
161
218
210
240
220
230
140
185
176
193
148
191
239
234
167
204
223
254
219
192
177
170
195
222
179
257
130
228
218
228
207
244
151
192
254
233
216
280
254
174
233
166
212
205
199
174
211
150
248
245
220
198
201
186
255
289
187
213
227
177
220
206
194
175
243
216
145
206
243
175
208
231
176
185
193
207
226
233
196
290
164
175
168
222
127
263
194
270
168
179
211
144
199
169
253
232
197
204
209
237
213
189
217
180
165
168
139
228
164
181
228
205
208
253
149
204
217
256
227
190
194
207
222
233
165
228
192
187
186
194
193
212
269
167
229
192
234
206
184
147
204
148
171
232
201
187
138
211
109
213
216
220
202
230
241
228
171
173
243
228
228
213
171
255
179
222
187
168
184
211
267
218
240
125
232
188
127
199
184
210
244
213
230
175
185
234
209
196
246
251
230
145
198
225
194
232
195
236
143
227
226
215
235
208
183
190
196
235
187
180
156
237
222
222
181
163
148
221
242
256
238
202
233
232
195
220
175
218
207
213
233
141
177
191
183
220
230
197
226
232
165
180
193
227
244
190
185
172
225
213
174
198
206
158
207
177
227
252
226
165
174
163
196
196
159
219
199
150
177
135
189
215
166
240
183
176
209
157
210
222
212
238
194
256
205
183
194
148
140
226
170
215
194
223
167
146
175
232
265
274
208
180
200
203
228
200
185
240
197
227
224
250
153
225
198
186
229
200
164
160
124
195
208
189
221
158
205
206
216
229
233
224
213
226
183
178
203
150
202
239
207
223
231
172
154
168
255
175
179
150
181
212
188
144
172
208
178
227
201
191
273
198
187
221
133
202
171
220
262
231
186
180
200
177
203
169
253
252
179
192
233
180
190
212
143
189
225
194
218
185
199
161
167
229
209
268
233
276
145
201
224
271
219
167
201
206
222
236
208
180
237
195
199
214
247
197
190
126
199
162
169
212
199
170
196
249
189
241
220
166
228
166
213
216
178
160
171
228
183
168
134
176
215
204
218
218
226
170
230
188
235
187
189
236
193
211
231
194
157
213
201
211
213
179
112
151
264
211
219
208
179
189
248
151
164
173
193
217
215
221
154
175
192
159
215
228
219
198
199
236
198
177
151
207
230
218
199
172
266
164
264
206
209
247
183
203
192
177
207
255
222
290
183
209
185
168
240
191
178
234
264
207
195
182
185
220
228
146
163
187
214
192
175
224
206
213
221
190
225
267
182
106
201
162
215
220
195
180
221
217
194
205
156
218
225
192
191
201
256
205
217
194
217
166
160
204
202
203
209
201
153
207
214
215
115
161
97
241
204
197
234
264
185
226
153
177
213
240
182
169
163
238
239
214
193
209
185
167
176
144
245
166
200
233
219
196
139
244
224
213
214
212
200
188
248
156
206
274
253
140
206
175
238
216
184
185
224
213
191
171
216
170
167
253
196
185
185
178
201
150
161
142
216
233
208
205
224
188
166
177
241
209
204
230
225
216
164
211
223
244
188
179
251
256
176
225
128
173
234
224
252
154
200
227
220
205
163
176
183
164
231
158
248
195
222
194
239
156
281
235
223
188
243
190
228
174
195
179
226
167
193
218
182
239
196
219
188
201
149
200
250
177
241
221
214
145
198
143
179
236
151
233
257
199
213
224
235
234
223
270
207
203
236
156
168
236
249
256
212
177
157
234
181
233
132
259
240
147
145
217
186
132
231
239
261
249
209
197
184
241
185
171
222
213
215
196
185
238
216
211
205
185
207
131
236
197
257
174
211
233
266
189
229
199
200
217
142
207
201
165
168
241
232
196
250
183
224
141
150
175
241
192
227
205
235
187
165
148
195
223
209
210
194
229
181
181
177
182
234
162
183
130
226
260
213
194
233
234
199
228
172
167
261
208
211
203
235
165
254
188
186
216
135
217
266
192
243
168
220
147
190
225
167
171
199
165
154
182
163
175
212
170
198
185
248
147
193
230
166
186
168
202
219
198
167
202
218
224
223
238
211
249
214
231
254
196
212
187
199
232
184
193
172
218
125
236
199
210
186
155
198
208
216
248
208
249
239
135
166
187
248
142
199
262
187
190
188
201
220
283
144
172
233
220
191
184
165
203
169
192
177
200
217
220
158
156
247
184
189
197
219
219
241
161
217
227
266
198
219
237
197
145
224
219
218
142
177
209
208
186
239
157
233
212
181
250
199
193
161
212
222
200
215
236
201
196
203
189
228
223
203
210
250
238
253
223
192
188
224
217
152
224
179
185
271
210
236
175
216
164
211
134
214
217
224
195
225
146
198
216
170
153
173
217
212
214
208
205
210
170
237
223
206
227
167
229
219
284
153
222
187
239
193
223
200
177
192
157
177
203
223
217
172
218
154
161
201
140
155
199
241
191
133
211
202
250
226
196
189
200
268
159
187
179
213
220
237
197
162
220
171
234
180
242
174
194
159
215
216
244
219
195
258
225
210
175
170
261
177
157
115
197
178
187
187
226
161
210
210
247
242
225
247
231
275
232
217
205
232
173
138
210
223
258
202
168
188
141
195
207
218
152
194
193
171
201
110
170
159
104
229
231
164
186
195
204
205
203
106
243
214
183
85
206
247
206
210
190
193
232
186
173
247
224
171
230
184
202
221
193
223
214
208
229
162
140
160
224
247
102
242
265
172
173
192
244
251
176
220
157
220
167
205
194
246
261
196
166
223
209
179
158
206
274
219
209
251
212
222
247
231
212
211
130
229
210
240
221
236
187
157
176
187
205
200
205
170
215
253
190
229
180
166
141
180
187
199
225
236
170
152
249
210
126
156
262
191
189
166
229
156
208
210
197
175
181
201
222
227
213
202
194
139
195
224
174
268
215
195
165
203
200
170
180
152
155
230
191
219
186
232
154
179
215
193
247
211
200
210
238
205
214
186
207
229
168
178
237
223
188
171
166
218
231
197
264
166
169
163
246
276
190
158
210
246
197
237
203
195
200
161
183
240
279
207
170
226
221
232
225
152
171
221
235
180
139
194
234
175
204
228
257
220
171
195
175
147
230
229
136
171
143
187
166
213
260
246
206
197
244
232
246
223
237
175
264
164
143
190
229
195
228
167
234
195
213
242
182
222
189
258
249
163
191
226
216
245
160
202
240
224
183
200
207
189
172
127
245
226
225
198
212
182
167
187
228
227
121
104
196
220
191
188
169
215
172
220
163
130
181
230
217
138
182
201
208
234
183
163
120
173
229
186
189
177
211
226
205
205
173
242
204
243
120
158
210
277
280
163
183
136
182
185
209
259
170
207
178
216
222
220
247
177
178
122
167
234
136
209
187
208
228
212
190
216
234
228
137
165
246
197
201
228
251
230
182
150
262
218
181
221
189
223
113
188
171
178
179
192
149
248
195
227
134
178
152
174
213
200
165
197
225
135
191
179
219
146
208
129
227
158
144
132
169
161
145
227
272
186
168
250
121
226
225
225
270
217
197
234
202
176
210
202
221
236
222
187
229
228
183
248
266
208
232
201
161
252
270
169
175
169
207
203
181
205
246
147
276
161
235
209
272
222
145
225
169
163
184
210
127
188
151
206
179
206
220
166
241
213
239
179
134
241
137
292
214
184
254
205
215
211
130
204
256
191
211
258
237
181
196
221
112
188
172
197
184
210
125
188
185
263
190
247
239
209
144
183
171
139
237
240
180
186
227
263
125
280
164
177
190
197
182
152
199
158
194
196
280
212
190
177
222
162
194
162
197
199
183
187
200
254
197
210
164
104
201
167
251
194
217
233
217
167
200
236
212
149
255
177
199
153
171
207
171
190
166
207
201
231
200
224
173
205
192
200
221
251
206
183
170
203
200
215
272
233
176
264
231
182
252
183
173
158
246
217
170
127
187
188
171
237
120
208
204
186
209
194
251
243
188
158
212
277
152
219
223
211
216
170
142
145
177
199
206
232
218
186
133
202
257
190
207
191
93
190
209
203
226
231
215
263
204
214
193
211
182
226
166
164
212
251
157
238
147
160
193
187
241
297
200
226
184
231
265
142
215
161
209
241
195
199
235
218
165
171
176
140
213
254
196
168
276
197
175
185
266
199
160
178
229
187
113
157
135
242
214
205
227
169
175
248
217
203
170
212
161
256
207
212
177
256
163
172
231
207
160
175
193
223
204
201
216
160
198
275
239
136
234
225
188
210
211
164
170
208
145
167
203
160
182
185
214
214
270
183
234
223
240
160
167
206
208
175
184
176
247
185
139
159
191
163
191
226
254
235
222
171
209
225
215
169
218
207
188
212
236
244
205
178
194
195
226
156
207
220
160
221
214
202
233
222
218
167
214
278
234
200
160
246
177
201
170
190
210
176
213
197
157
265
188
234
205
218
241
290
211
150
171
229
254
227
228
201
192
193
153
193
227
201
283
213
235
221
153
202
200
229
190
247
229
188
206
161
213
193
231
196
131
243
270
207
196
227
158
236
222
251
175
242
222
213
226
262
182
176
304
181
261
219
214
199
231
205
217
206
172
204
201
245
185
214
186
131
226
191
216
209
224
176
201
199
191
193
246
205
246
237
209
192
176
203
119
212
240
192
136
143
228
238
235
230
164
251
196
164
229
207
148
225
204
207
189
224
168
191
231
166
196
216
173
191
211
220
187
222
103
146
197
220
220
189
159
180
175
199
249
235
188
249
190
155
170
227
218
172
226
204
191
214
219
202
246
222
226
230
210
228
141
202
207
184
202
243
219
196
173
185
232
233
250
190
202
189
218
197
223
183
191
199
223
196
204
209
168
192
185
218
208
221
179
207
221
178
188
209
167
146
233
158
201
162
221
248
222
185
195
214
204
156
236
173
264
217
172
179
193
229
193
199
253
232
163
210
207
150
165
235
164
154
252
271
187
227
169
176
188
228
149
163
242
184
213
281
160
219
206
174
206
139
258
175
177
173
266
161
164
199
181
196
248
230
191
234
254
104
169
219
200
245
231
152
215
201
179
171
159
133
138
236
226
226
180
138
172
260
197
192
251
189
159
183
278
216
220
162
201
194
185
173
179
135
221
191
212
162
237
248
202
227
161
235
205
261
197
196
169
276
226
250
225
246
207
213
235
226
219
214
178
218
231
197
220
219
208
223
175
213
151
203
188
205
203
199
217
182
176
177
193
211
223
220
256
230
190
213
229
184
214
193
255
201
241
174
215
154
214
241
168
175
151
208
160
246
226
123
164
204
166
198
172
221
174
192
225
267
167
213
156
142
204
149
195
206
218
212
227
198
167
216
132
175
175
194
181
229
210
209
234
166
134
198
224
248
224
237
155
229
227
224
188
160
219
238
228
251
228
219
211
187
170
201
169
209
147
222
221
170
163
194
259
228
207
215
158
185
197
206
219
220
195
175
197
167
243
179
191
187
307
192
215
150
173
160
193
237
189
200
213
179
213
127
163
244
194
255
168
178
221
198
93
198
227
156
162
234
210
219
256
144
220
207
192
176
205
259
174
208
146
188
186
193
185
116
152
163
214
199
181
211
206
211
200
220
248
230
163
224
225
205
213
194
191
173
210
192
240
197
156
237
234
215
218
200
239
176
181
213
188
192
150
250
215
203
133
220
205
192
278
226
213
239
161
216
266
173
171
150
178
200
256
223
188
181
196
190
191
169
204
223
212
162
233
170
126
208
172
182
232
186
230
192
184
137
201
229
150
225
183
242
212
249
199
191
231
218
250
224
142
229
211
289
162
205
190
207
274
177
185
179
185
147
216
196
197
182
144
212
132
217
200
171
198
163
210
189
185
178
211
204
207
185
213
151
191
123
215
232
196
221
150
113
191
209
191
245
233
203
212
199
163
179
188
215
155
209
197
202
225
211
234
217
247
131
215
190
186
226
221
176
207
187
224
181
188
184
187
237
161
152
234
219
193
206
119
218
222
224
239
236
192
204
134
169
186
232
220
169
204
200
208
215
256
247
194
246
238
172
155
183
204
220
190
193
265
207
188
178
188
231
262
224
217
253
258
189
260
231
158
238
228
197
179
207
187
228
184
256
219
230
208
186
253
193
198
235
228
162
213
210
211
147
240
208
249
191
254
241
196
185
154
183
191
176
194
265
170
160
241
189
137
249
217
232
246
206
261
232
206
184
225
173
181
205
178
205
241
181
194
163
211
239
203
144
168
199
183
227
227
253
266
206
153
230
215
191
233
223
144
229
232
182
181
190
193
212
191
181
226
181
142
183
249
134
197
194
251
227
191
154
183
211
256
173
248
153
158
226
259
258
189
203
238
221
198
190
147
197
225
181
207
227
210
223
142
197
232
202
234
137
181
209
206
142
138
231
209
258
210
193
167
174
156
237
201
190
219
210
172
203
175
224
212
232
284
239
212
201
213
173
213
202
183
125
233
235
228
143
229
230
162
180
108
224
141
128
181
256
213
211
214
211
242
237
230
122
143
224
182
218
188
189
185
129
237
275
202
250
143
149
151
210
101
150
168
169
249
158
181
208
167
195
187
174
165
201
177
200
230
219
180
145
212
243
197
124
138
171
165
201
219
223
235
204
220
183
190
165
242
214
185
191
202
277
168
191
216
208
138
152
243
183
167
247
195
202
161
218
202
235
130
169
147
178
165
211
185
186
206
132
210
195
181
199
154
240
174
174
194
184
269
225
201
188
202
207
182
213
205
180
207
237
258
198
139
224
260
207
187
185
214
201
266
176
201
240
171
218
227
252
142
282
216
216
163
178
248
172
203
177
217
227
155
252
163
174
191
225
178
196
194
208
232
250
210
211
143
150
244
253
172
257
228
199
189
222
152
226
218
212
201
171
164
204
246
94
198
151
200
243
176
189
177
194
214
148
247
192
167
196
142
158
261
171
170
227
238
205
120
167
241
214
251
221
229
154
183
210
196
239
224
212
103
110
250
202
233
222
179
192
165
225
177
223
223
259
157
224
216
226
170
227
140
183
233
183
246
154
136
253
202
207
201
191
159
200
270
183
208
120
201
243
240
189
178
203
203
225
204
153
202
227
118
193
175
237
116
239
230
158
194
165
233
115
191
213
258
196
160
230
233
134
202
248
162
187
235
208
213
198
186
210
170
184
215
175
220
210
163
243
118
161
146
182
186
154
200
201
183
246
148
193
163
209
178
149
274
144
134
172
256
188
193
183
225
214
212
192
235
230
201
173
214
130
244
177
185
222
174
172
232
188
157
193
167
162
202
178
186
183
216
249
201
169
187
221
203
180
210
183
171
198
182
237
175
245
202
173
160
227
174
135
199
234
248
229
185
216
191
226
273
186
161
209
196
191
144
230
146
195
202
174
223
217
224
189
133
210
250
191
223
253
204
192
245
172
227
209
224
214
171
189
196
191
240
223
206
199
152
219
255
252
170
192
151
234
234
202
117
201
214
263
184
212
139
158
185
148
174
204
164
133
184
199
214
209
158
210
198
225
247
235
206
169
209
239
239
190
157
219
209
194
213
190
230
144
276
206
175
206
190
135
170
187
194
204
229
235
248
230
221
238
193
201
152
236
164
199
211
228
196
148
223
114
207
195
181
209
160
157
171
146
214
238
159
183
204
210
238
166
218
179
193
253
171
199
178
187
161
179
255
158
162
263
125
142
213
198
243
232
154
128
190
221
179
204
131
211
234
148
164
257
201
188
135
229
231
277
180
171
194
153
170
169
233
150
200
212
254
189
184
169
185
195
218
161
196
215
185
179
147
246
225
118
177
123
223
211
212
173
223
212
234
205
193
170
167
203
193
225
230
177
141
166
209
160
216
223
162
182
132
226
168
216
203
205
252
188
170
148
216
211
160
183
171
239
334
195
199
241
85
171
214
151
196
182
240
222
219
247
166
206
208
264
221
253
183
195
227
177
226
262
237
197
196
213
176
214
180
222
223
203
165
150
160
142
225
150
135
169
128
215
165
198
216
210
190
168
221
223
228
199
183
201
191
239
239
157
209
224
245
242
243
215
245
208
233
164
199
230
164
228
221
192
224
166
196
255
212
212
169
188
186
225
142
154
235
249
137
205
229
178
223
158
196
153
228
199
129
231
241
187
238
184
168
233
185
248
205
195
202
193
193
185
171
199
191
175
217
106
176
136
262
195
241
227
239
189
205
226
217
222
159
255
130
175
177
171
185
231
167
235
146
202
154
203
216
278
204
147
168
167
193
234
246
221
156
190
171
124
196
239
211
150
157
243
206
226
224
256
192
187
242
227
210
236
178
175
207
153
215
207
193
231
166
262
150
203
157
191
241
265
186
174
161
191
165
226
179
257
184
209
206
182
151
193
189
189
197
150
184
98
175
182
203
219
188
176
217
199
302
180
229
207
191
216
236
194
214
165
174
205
239
204
232
264
207
191
221
197
127
186
268
164
248
206
219
183
215
161
207
159
240
203
171
224
206
262
127
202
268
170
259
191
252
208
163
192
159
251
180
195
169
198
226
183
216
160
214
187
220
203
172
206
204
173
141
190
197
179
217
182
153
226
221
211
202
228
193
220
234
183
199
221
166
199
204
251
199
205
247
203
161
194
190
174
222
201
160
193
200
219
212
228
190
265
218
255
196
138
158
194
198
241
184
222
201
166
136
245
192
207
171
187
198
194
167
235
157
189
228
226
166
180
152
132
167
229
165
238
193
191
200
143
164
105
233
192
240
151
163
207
234
131
151
200
181
177
133
178
177
251
240
151
192
198
170
231
156
127
226
204
194
221
251
224
231
266
183
225
208
194
176
224
200
253
133
204
148
211
198
145
218
236
249
184
218
185
201
145
230
293
222
161
243
235
261
230
182
185
178
233
220
208
206
167
228
225
169
169
176
159
208
239
202
217
184
185
207
241
181
179
242
223
187
122
180
204
162
248
225
213
191
242
264
163
205
252
180
251
198
202
131
237
225
184
234
178
184
174
200
242
216
209
242
200
157
228
131
234
197
203
228
213
247
235
216
182
200
170
217
223
161
221
173
187
215
229
186
143
147
177
155
202
215
237
225
201
174
190
167
192
130
165
222
169
223
183
240
195
214
285
209
155
226
261
202
179
185
248
248
187
218
194
181
227
205
146
164
247
224
233
265
198
230
193
182
222
196
190
113
174
230
228
217
225
191
157
238
251
250
159
158
158
185
200
173
206
203
237
224
255
201
139
191
188
173
186
222
219
205
187
188
172
176
172
160
216
146
198
244
136
252
239
230
200
223
167
180
243
216
172
234
190
209
211
179
153
181
166
181
214
216
202
237
146
152
204
173
193
250
206
248
151
227
234
209
186
204
236
228
153
170
199
218
196
200
212
140
271
241
214
226
156
237
192
256
205
209
219
196
204
200
211
240
223
249
155
172
234
190
221
257
130
233
193
196
215
204
149
249
218
252
167
211
218
185
245
147
196
142
193
246
222
170
208
192
194
220
202
206
120
173
174
205
201
210
186
227
197
229
194
141
154
244
204
183
200
122
162
134
157
240
217
149
221
204
154
198
159
172
168
214
201
194
205
240
186
213
149
226
122
170
210
233
216
166
209
252
173
253
191
184
160
211
151
167
216
228
214
181
262
150
197
182
200
254
234
191
173
247
213
254
187
179
196
129
243
158
173
205
181
213
234
233
241
179
156
194
155
198
192
203
209
211
250
168
252
213
209
230
183
168
210
192
210
191
228
215
257
200
174
248
193
192
179
233
182
249
187
268
157
217
172
189
170
230
218
164
197
133
146
158
187
155
221
184
157
197
220
219
202
237
192
201
185
249
189
178
182
232
197
194
117
178
217
195
201
188
206
192
195
160
228
204
162
220
165
183
217
212
188
167
256
183
209
228
210
172
178
221
144
202
242
235
205
164
179
212
188
160
203
196
199
229
189
213
213
144
251
173
214
237
166
273
190
133
200
220
196
234
178
221
158
209
202
174
191
204
233
209
247
155
234
210
191
185
208
148
216
208
170
223
214
189
186
167
218
229
180
268
201
217
209
155
154
253
145
188
210
198
168
142
155
250
136
107
137
213
236
210
229
188
214
176
158
190
235
266
209
226
205
194
126
192
159
248
267
102
240
182
170
223
247
188
161
246
215
138
181
162
250
193
191
206
215
194
149
244
200
256
210
226
206
96
173
230
182
204
204
208
184
183
186
138
203
188
126
171
230
138
198
200
218
207
188
208
151
146
159
146
227
194
278
169
216
192
178
222
169
155
179
251
228
230
147
165
218
192
243
210
182
208
267
229
194
172
194
196
284
155
152
206
222
156
186
134
208
240
151
145
241
190
210
248
201
161
190
238
199
150
266
175
220
125
219
179
222
208
273
205
224
182
235
158
162
264
181
237
161
133
239
174
177
174
212
220
248
152
276
164
167
184
170
185
211
225
268
180
193
249
213
190
188
242
193
194
247
164
170
206
190
190
225
258
176
170
183
196
203
214
246
168
154
178
223
156
217
161
205
121
225
165
169
261
167
185
211
207
213
221
189
163
188
220
216
201
186
234
168
199
208
196
247
270
205
169
223
189
245
182
159
198
185
161
219
183
222
186
174
162
211
166
207
191
177
169
155
215
206
211
202
266
223
238
222
223
221
191
148
239
186
229
243
225
204
197
196
207
266
214
147
159
165
216
275
212
202
166
234
197
222
184
222
299
161
228
223
214
151
213
230
185
157
216
202
247
134
193
170
226
164
193
240
151
218
239
189
186
251
182
173
176
221
240
180
190
188
202
207
202
219
161
180
184
220
228
194
250
238
241
194
245
233
174
204
219
133
147
210
227
160
227
244
185
201
215
202
176
234
239
171
216
218
236
211
262
193
201
231
191
210
185
154
161
217
132
243
153
202
171
261
241
198
122
202
156
209
175
281
228
260
184
188
198
146
222
230
249
207
188
237
155
166
230
239
166
163
215
192
180
163
204
208
234
198
197
241
204
228
200
202
152
162
198
187
174
166
240
208
167
193
207
171
200
237
231
239
183
226
191
248
223
167
173
200
155
168
209
194
206
244
166
199
212
245
215
204
253
235
183
170
139
173
218
197
179
158
270
246
153
150
254
216
224
189
235
213
212
175
144
202
247
251
226
235
250
232
200
179
189
246
221
239
231
189
209
158
215
122
188
167
224
168
228
173
213
213
207
170
206
228
179
211
189
198
264
189
240
186
175
154
213
183
187
182
186
267
234
204
181
203
187
226
225
177
161
239
150
229
154
251
202
205
171
219
209
236
193
181
183
216
157
139
197
232
273
228
272
184
245
220
180
187
197
127
169
191
226
258
159
277
205
196
165
196
185
227
166
173
191
261
171
189
234
187
152
144
206
157
165
102
165
204
191
142
206
209
247
143
177
166
220
200
242
214
234
226
222
191
193
216
185
218
186
236
175
137
204
194
135
221
203
221
258
227
258
173
219
192
159
201
160
181
182
271
202
160
206
215
249
232
132
127
164
211
187
216
234
196
223
189
149
203
210
218
208
188
208
191
218
238
218
180
158
231
215
239
155
221
211
141
257
194
243
232
165
184
238
168
180
227
218
236
223
226
223
219
160
184
167
187
219
152
185
210
207
219
223
210
177
169
124
244
180
267
183
216
188
234
222
140
194
221
160
161
182
225
142
179
212
165
217
210
170
160
215
161
166
197
200
223
215
235
279
213
130
234
229
210
284
216
159
203
173
189
183
213
234
188
111
192
235
178
174
160
200
241
194
130
168
241
241
247
249
197
193
159
218
178
220
186
215
194
142
180
151
191
278
258
231
172
163
278
209
214
218
153
186
155
205
110
145
163
110
242
159
202
203
150
218
242
204
164
193
181
209
234
175
229
213
176
250
176
196
242
210
110
127
155
212
215
194
168
231
156
184
180
203
189
175
227
152
204
194
251
207
193
197
173
177
187
225
233
212
207
255
209
195
189
202
225
234
197
174
219
194
254
209
217
198
203
220
135
205
225
152
200
233
131
164
183
226
204
196
234
176
237
191
220
182
170
158
222
259
231
190
198
193
177
150
204
184
229
201
194
150
231
170
198
159
185
167
172
189
175
205
204
201
208
197
173
232
204
217
184
173
153
203
234
201
173
164
222
198
232
183
200
208
230
210
182
207
164
192
176
222
221
203
212
244
211
161
201
215
177
115
214
203
222
188
178
192
162
207
244
209
239
134
240
245
215
207
184
215
204
206
200
167
213
135
226
184
162
194
196
214
189
215
197
221
236
152
162
227
186
257
197
191
211
204
208
200
262
250
175
222
166
208
119
208
169
168
227
142
223
185
256
221
161
186
231
161
183
248
252
189
128
246
230
240
239
196
230
238
187
169
251
176
192
140
183
224
291
216
181
149
170
240
232
124
226
226
238
173
165
257
196
265
177
160
228
233
220
198
195
226
133
225
204
223
175
257
221
195
140
206
231
178
179
184
221
243
148
167
194
183
216
259
189
195
227
253
198
186
196
198
132
134
231
253
169
199
201
157
209
152
184
157
187
160
273
168
157
224
132
222
236
210
219
188
195
160
246
227
186
168
231
167
174
225
226
200
213
224
240
191
164
203
215
153
175
199
221
227
170
175
211
137
228
204
178
225
219
260
196
246
175
173
214
200
190
226
224
227
221
190
210
228
231
174
145
169
187
202
156
175
221
190
183
192
162
186
198
194
195
183
190
183
262
267
272
217
225
196
228
184
210
171
205
199
149
188
167
255
152
148
237
209
177
228
194
170
228
185
239
217
156
206
240
156
151
222
157
242
177
151
176
239
93
258
133
205
188
122
205
196
169
214
144
212
127
222
199
186
193
222
210
193
256
223
157
147
160
183
209
156
214
198
219
263
190
169
216
218
184
175
240
190
237
227
177
222
157
169
196
264
177
242
209
245
171
187
164
192
159
200
209
197
208
282
172
210
224
178
201
186
223
171
224
120
150
186
147
193
252
194
208
208
190
213
193
245
238
197
157
190
210
205
215
126
147
237
216
228
178
197
201
202
204
166
210
191
220
187
177
270
188
201
183
188
217
205
190
164
163
192
214
197
232
145
216
208
239
214
229
165
138
147
211
205
163
234
200
238
156
147
285
225
170
265
284
180
205
223
208
209
215
171
208
200
238
238
200
192
171
166
200
177
154
176
146
276
208
245
206
195
161
234
143
189
272
195
181
218
176
210
235
215
161
184
248
197
176
112
104
195
233
272
141
176
161
240
153
174
200
194
231
204
224
199
132
129
140
178
235
132
223
179
218
207
175
250
183
156
224
115
237
224
97
200
264
186
180
202
190
265
143
144
153
172
234
170
250
226
180
152
203
229
227
264
251
237
233
191
242
162
141
215
209
165
226
203
212
193
234
207
233
245
188
277
242
237
207
182
187
254
141
192
205
171
190
164
201
212
253
189
147
241
191
276
251
208
155
196
192
230
154
199
226
203
184
136
241
159
158
236
184
169
251
227
238
219
217
210
147
213
238
157
182
224
185
287
233
179
211
186
252
188
240
192
191
271
178
186
179
101
192
198
212
202
193
223
154
150
187
180
166
170
220
214
199
226
195
237
193
189
199
272
154
211
239
220
218
222
224
194
175
188
236
225
211
209
280
181
169
236
225
231
171
247
215
154
218
212
183
180
202
219
171
170
178
229
219
150
186
242
119
202
160
242
214
216
237
216
257
239
201
207
159
207
186
221
200
206
184
175
194
237
218
275
205
233
200
247
198
251
203
222
187
194
200
250
186
212
228
204
136
167
142
176
234
212
215
208
249
194
245
208
208
211
162
184
201
202
174
251
225
192
160
269
267
134
206
160
196
259
173
171
205
216
204
220
183
219
198
176
209
278
229
151
226
228
193
160
198
224
118
262
170
150
208
197
204
192
202
248
196
265
203
240
129
206
206
174
172
188
162
182
163
273
155
160
190
235
209
219
184
171
106
243
159
198
218
143
220
184
122
200
152
239
183
185
184
166
161
201
147
173
183
201
256
203
175
214
138
211
210
196
150
237
178
106
175
264
228
163
189
224
186
233
189
154
220
227
153
160
163
222
155
199
198
164
266
212
227
189
189
195
168
227
173
156
168
217
217
151
160
207
177
120
194
262
215
159
250
153
158
184
188
155
206
237
247
197
160
137
204
136
253
231
204
211
204
204
157
210
207
213
219
118
171
209
250
152
254
226
198
206
257
194
222
224
216
157
220
180
134
230
239
169
199
190
125
239
186
228
199
185
140
216
166
215
226
161
233
231
216
195
153
217
186
188
233
178
149
221
156
168
261
224
199
135
159
203
233
193
246
208
196
169
218
199
148
211
189
155
196
270
187
260
190
152
146
193
166
187
164
167
220
170
173
242
213
193
194
214
206
165
225
209
192
216
207
179
201
234
182
195
218
204
197
233
217
172
154
216
202
184
190
177
196
212
220
184
238
154
207
179
219
179
224
190
168
177
207
159
273
227
196
189
153
208
221
246
218
167
197
201
212
198
209
239
211
193
208
172
218
125
222
204
169
213
218
235
169
122
181
166
221
232
221
179
203
232
194
149
191
174
232
206
166
220
176
184
221
223
228
245
117
179
210
172
255
241
217
189
140
256
224
284
179
171
237
175
219
178
268
186
191
218
172
243
203
168
228
158
239
189
199
214
236
183
194
202
211
229
180
213
192
121
262
239
208
165
189
267
120
119
192
219
164
234
178
161
172
207
156
180
174
254
200
199
196
190
184
228
221
237
236
211
196
270
186
196
231
195
200
203
220
162
232
223
157
142
214
137
237
180
244
194
144
209
177
186
177
206
205
194
282
180
209
152
228
194
206
225
165
204
246
150
224
206
221
244
193
215
240
143
229
183
198
220
80
199
230
193
223
163
179
235
267
142
252
164
171
203
190
135
237
193
179
161
231
171
213
256
201
135
184
262
229
114
203
168
196
234
196
174
220
192
169
176
214
251
160
253
274
235
166
143
207
186
132
168
220
242
249
195
195
211
218
178
203
171
162
159
251
237
201
247
206
152
151
171
167
252
135
291
242
195
220
265
219
161
129
226
178
178
245
195
252
239
182
145
175
245
238
141
233
209
124
185
253
210
176
202
215
208
191
175
204
188
167
132
188
226
189
144
169
199
159
190
138
221
161
205
222
196
187
183
187
209
171
200
203
215
210
192
171
249
189
107
221
181
179
210
266
169
184
248
225
158
179
208
168
181
208
135
197
232
199
199
204
114
260
162
150
238
165
163
207
192
179
201
190
198
241
197
172
179
168
160
173
193
226
212
232
154
186
187
216
208
200
143
248
181
185
201
182
234
163
188
179
220
200
256
162
183
229
248
257
222
224
178
231
224
195
226
219
196
152
177
171
190
225
171
108
161
202
264
175
160
152
266
222
173
196
142
146
247
207
206
149
225
208
177
156
237
265
236
197
231
214
260
238
206
223
248
265
177
179
224
185
226
214
133
171
203
253
209
150
187
228
191
257
208
224
182
179
238
239
211
251
236
200
231
192
180
150
211
210
239
201
259
198
269
219
221
207
192
205
186
196
194
220
174
120
222
198
240
176
189
150
237
181
129
205
151
174
222
191
183
131
203
195
187
219
240
178
228
228
219
182
168
173
188
206
166
177
150
216
246
179
172
246
216
217
231
262
207
257
231
233
213
175
127
152
191
222
240
242
170
202
177
215
199
222
271
227
139
179
229
205
211
233
209
159
157
114
229
174
153
131
219
157
258
220
217
243
238
216
222
145
272
142
139
178
162
209
227
170
167
228
218
189
125
246
176
220
155
207
212
250
202
175
172
195
216
256
196
192
148
232
248
208
199
235
211
161
131
167
174
171
213
212
184
201
151
193
228
168
181
151
186
202
133
169
212
285
220
229
194
202
203
143
130
199
151
170
193
210
194
141
237
152
216
220
190
214
190
212
232
196
214
212
191
198
234
230
241
220
235
199
190
214
221
209
273
200
202
192
246
186
176
221
194
157
194
173
183
216
183
166
153
198
182
240
178
208
227
176
167
181
144
251
182
206
162
199
206
181
197
247
170
216
215
216
205
151
164
144
235
210
216
186
234
170
201
205
175
216
206
162
219
155
145
177
187
169
200
223
199
220
208
215
152
186
189
127
184
194
180
199
184
191
163
164
151
239
227
193
269
179
222
221
286
192
175
220
229
200
225
221
214
190
231
174
198
221
243
208
133
218
173
216
199
157
211
213
231
222
202
152
191
197
211
181
196
208
211
200
222
202
233
261
204
220
227
148
166
213
274
213
179
184
227
216
226
180
141
205
206
197
207
152
164
213
266
197
190
201
166
241
171
222
199
214
237
123
192
216
211
207
212
164
211
209
249
260
238
158
190
232
206
234
194
154
153
155
241
226
183
211
141
174
172
179
157
227
210
193
203
194
227
255
212
193
198
252
215
173
179
203
221
216
168
217
240
161
208
270
247
169
292
272
229
206
188
244
221
209
164
219
198
184
197
176
230
216
181
177
176
146
207
227
186
229
182
210
263
207
153
190
202
249
178
204
197
154
239
177
201
262
191
186
228
224
174
166
194
256
172
189
175
150
231
224
242
200
154
145
158
236
223
231
191
108
144
187
212
186
150
147
166
170
159
235
169
233
210
156
205
227
226
177
154
159
157
226
201
231
177
187
239
170
240
202
180
257
198
214
229
134
177
230
255
183
183
198
192
223
195
253
200
258
196
134
213
187
143
172
231
179
166
174
172
234
259
248
207
243
197
200
137
258
192
209
162
241
157
171
215
227
229
205
163
239
231
171
159
252
217
151
169
237
175
220
139
200
186
160
190
172
229
136
199
187
201
226
205
233
243
215
141
253
226
228
236
194
232
204
236
221
224
204
186
162
191
192
146
167
273
237
202
127
209
230
191
258
123
280
241
163
174
201
252
163
184
225
201
191
245
250
186
191
210
191
111
169
220
206
216
190
157
218
219
196
231
224
120
207
186
206
205
178
190
235
238
230
208
176
239
289
199
203
223
166
196
154
192
236
172
150
176
164
197
187
227
246
159
178
255
132
178
208
159
197
247
191
207
234
242
165
142
171
125
178
181
206
254
178
200
203
166
180
231
166
238
210
173
158
153
236
192
281
233
182
173
210
199
246
246
122
196
150
259
188
272
175
230
235
296
180
205
207
204
153
241
216
229
228
194
196
227
251
240
179
179
234
157
220
263
182
234
150
215
239
221
182
240
250
203
142
198
188
189
203
248
167
204
205
217
229
208
182
125
147
208
193
179
246
207
221
228
164
219
202
185
175
208
187
240
216
227
234
214
155
188
202
183
207
162
204
169
152
175
236
243
143
183
189
222
145
198
195
204
198
243
187
238
191
203
148
207
210
169
194
220
234
137
173
185
201
238
241
198
197
170
248
246
274
222
186
170
152
256
201
219
191
234
229
200
207
227
220
221
168
258
232
246
157
195
174
179
194
226
174
234
217
181
177
208
209
235
229
166
134
184
161
247
230
179
187
185
163
211
224
219
152
175
229
241
188
209
180
172
191
207
240
196
229
226
230
227
233
194
184
215
180
245
225
209
140
148
192
206
159
190
198
215
210
166
221
261
112
200
202
227
208
208
155
204
208
210
173
183
208
185
158
243
141
193
179
191
146
241
194
141
204
211
189
214
202
216
186
199
164
206
195
222
240
189
204
210
170
226
197
236
234
149
137
250
222
236
156
188
230
168
161
193
147
218
126
229
208
151
168
215
155
221
207
200
205
234
240
230
254
158
189
116
166
244
230
184
134
237
186
151
189
231
206
186
197
156
193
179
188
184
128
209
254
250
171
169
243
253
192
184
190
238
230
219
181
159
226
177
204
240
178
203
260
206
191
201
227
209
201
167
252
189
143
170
245
183
184
149
224
184
136
251
179
247
199
199
189
239
159
177
182
193
184
251
178
232
230
201
161
235
179
157
212
209
176
234
247
171
180
186
243
231
235
209
163
154
198
215
221
147
201
228
235
175
252
127
212
191
227
186
155
241
144
163
184
200
132
171
218
168
237
156
208
172
213
183
211
228
237
135
157
186
163
217
178
194
196
223
283
199
217
162
232
229
169
183
220
199
189
205
119
236
194
224
237
223
164
152
239
178
185
209
186
221
220
182
219
122
216
236
227
105
180
237
171
217
184
231
232
220
177
214
116
184
187
188
216
161
237
254
184
211
160
204
235
189
126
148
202
208
147
229
219
213
208
245
220
190
208
172
215
200
164
142
217
195
193
183
205
198
184
196
131
167
247
200
219
226
162
159
252
212
194
174
214
162
230
194
239
231
188
198
220
248
238
200
201
194
203
211
188
226
166
173
260
243
193
159
109
156
186
105
207
247
114
204
175
223
145
221
168
224
198
173
225
158
206
215
143
229
227
253
194
210
185
146
164
221
159
220
182
225
186
228
157
247
120
234
188
206
111
232
209
221
210
175
274
158
185
192
180
143
177
220
199
144
203
123
232
238
251
172
211
195
269
173
210
227
189
114
216
207
276
153
260
216
212
203
170
172
194
219
217
153
211
162
235
263
176
192
178
205
248
222
191
230
231
134
170
217
282
184
238
185
191
236
232
144
221
105
236
202
234
233
239
226
169
172
260
171
195
204
234
177
177
188
145
258
158
208
192
237
156
149
244
192
184
158
200
169
195
177
140
265
214
165
203
151
192
159
212
174
213
130
173
219
255
247
206
216
253
176
236
156
194
174
218
200
147
140
266
251
233
241
238
264
154
205
199
182
182
273
177
155
205
178
224
161
181
195
203
211
219
242
152
176
198
178
156
180
205
211
244
140
212
174
148
179
213
194
170
165
167
213
147
243
215
222
178
233
185
171
188
226
226
171
200
226
138
212
195
244
196
216
309
145
232
225
212
222
149
190
254
195
204
241
240
131
145
181
183
168
194
148
173
152
183
191
210
231
146
129
201
184
194
190
182
251
243
220
198
177
235
205
187
204
192
208
216
193
217
181
158
181
122
227
223
237
161
227
245
203
176
202
207
177
219
213
263
232
167
154
189
256
191
181
223
166
238
188
259
188
222
189
197
224
254
207
266
203
153
165
190
179
235
204
217
240
170
231
164
249
176
226
197
187
200
165
257
191
232
183
204
192
189
176
220
180
193
185
233
212
245
213
124
202
158
141
216
226
233
228
206
177
195
212
238
250
220
145
171
192
163
210
190
224
202
231
227
198
215
164
139
145
213
229
211
172
183
214
175
256
181
168
193
193
169
227
228
263
175
208
186
219
133
162
181
211
188
225
186
206
227
207
165
190
238
258
206
183
207
196
199
218
193
158
105
236
195
196
196
268
160
203
218
138
237
157
193
137
222
187
198
236
154
119
171
270
213
108
161
170
200
147
183
247
198
169
164
201
207
241
189
229
196
235
306
215
232
169
217
197
195
219
179
141
186
218
236
234
153
136
181
236
238
147
263
184
172
223
149
205
206
164
168
270
218
228
188
173
186
224
182
171
209
178
199
236
187
228
221
188
143
199
224
180
196
226
222
227
256
234
143
187
186
225
203
198
229
243
147
183
231
203
216
219
256
150
166
229
229
162
243
141
184
157
216
250
221
198
218
216
222
220
207
143
147
184
176
226
208
120
171
185
172
230
149
173
220
234
185
221
211
268
166
244
186
239
190
203
191
188
286
212
233
247
229
187
160
253
229
194
255
166
258
206
178
124
187
200
192
175
202
227
203
261
168
177
169
225
227
207
218
233
134
153
216
219
204
243
185
165
222
174
215
243
260
179
171
228
175
272
253
217
189
182
178
249
194
199
196
266
172
168
218
186
241
191
241
175
116
169
146
232
203
179
221
184
241
184
196
161
225
157
236
169
231
229
146
183
229
194
156
219
255
202
228
195
217
198
193
141
179
252
190
194
172
185
244
250
224
203
226
223
220
242
216
216
244
158
220
231
109
192
208
201
153
227
195
218
172
225
128
209
158
188
152
235
99
220
246
181
146
243
241
236
254
190
168
193
200
213
207
173
224
268
223
168
191
211
204
241
219
162
226
190
237
251
192
194
233
277
205
191
232
247
226
261
212
188
221
165
226
157
252
178
249
234
234
218
205
292
184
193
190
226
209
206
168
225
188
178
211
180
229
186
231
178
244
203
203
187
182
179
211
197
161
152
185
226
266
163
251
150
195
158
177
164
193
219
138
214
223
234
240
189
217
184
205
210
182
190
241
186
257
181
233
265
203
197
217
220
160
168
227
194
228
173
166
221
153
246
199
151
247
246
241
219
171
148
131
199
163
168
184
174
217
234
141
190
264
218
193
179
162
199
182
185
241
219
233
199
222
214
190
203
217
225
169
169
215
178
191
192
200
196
127
178
177
236
173
190
209
205
172
194
191
281
210
199
233
129
208
160
252
217
197
178
200
209
166
246
154
227
175
172
196
224
242
169
180
185
194
145
176
126
196
237
215
170
228
184
112
196
248
123
159
262
147
244
235
219
235
213
226
188
175
205
128
198
149
168
158
213
238
260
217
159
173
159
168
231
224
190
229
268
167
201
198
193
146
222
162
180
219
181
132
217
226
247
231
221
172
141
131
211
283
177
143
168
173
255
197
190
197
196
234
214
220
215
192
208
171
236
229
136
151
169
193
133
251
191
222
215
194
222
208
216
198
154
218
255
217
155
179
184
262
181
225
146
215
204
198
203
182
271
240
213
220
200
210
228
169
219
157
206
188
190
211
180
145
205
242
192
184
220
191
217
193
229
204
252
193
156
243
210
230
170
188
177
225
219
218
201
221
248
246
254
186
213
215
237
170
176
167
215
156
178
211
166
175
203
219
162
219
189
171
241
233
216
215
198
150
186
166
211
203
130
147
195
174
174
200
224
174
141
267
217
251
180
207
167
211
219
164
207
217
207
188
211
187
197
168
155
145
199
206
178
260
213
188
163
225
195
232
176
192
181
186
188
202
218
177
179
195
241
181
136
144
235
186
243
221
188
227
198
237
246
257
189
232
165
130
186
225
178
183
125
188
217
175
245
216
140
202
177
191
149
234
178
187
302
177
224
260
219
218
189
199
172
179
197
205
170
187
242
116
163
170
255
178
221
210
174
196
158
221
209
247
236
224
160
146
197
138
234
161
226
199
227
192
202
242
206
181
144
239
191
190
157
220
183
215
216
210
165
216
173
238
220
228
246
175
172
208
215
164
187
209
191
234
219
198
190
224
200
207
170
218
176
167
258
230
180
182
126
215
220
209
241
236
169
233
250
201
189
189
207
197
221
261
167
209
225
231
198
232
218
231
221
264
121
208
166
187
143
195
173
208
216
214
246
180
219
224
198
203
151
269
176
164
236
267
98
154
208
237
173
232
162
145
183
173
277
215
189
239
229
146
210
200
124
201
147
188
124
124
205
198
142
154
189
182
206
257
204
198
246
211
213
233
129
245
169
162
168
213
204
224
209
164
227
197
248
169
169
170
200
166
179
210
155
191
237
173
186
218
219
208
225
183
210
174
163
144
181
197
208
243
212
215
155
143
186
172
184
253
158
225
159
233
202
214
216
247
167
235
182
150
206
154
215
207
226
182
146
164
177
251
202
155
174
237
215
163
160
163
221
219
144
124
203
189
218
168
215
241
160
168
220
219
170
204
172
266
165
222
147
137
269
248
256
177
201
192
248
202
220
210
145
200
221
239
231
166
237
196
191
180
176
237
203
175
225
198
196
217
192
182
194
225
246
285
222
178
230
183
191
206
179
266
174
127
167
194
175
255
182
175
224
166
213
188
237
240
198
222
217
244
201
229
227
199
218
149
182
169
196
173
211
224
191
202
186
265
158
209
148
177
218
203
133
229
238
239
234
242
169
225
267
178
172
220
133
182
228
175
201
210
204
169
226
175
229
169
230
188
209
183
223
241
291
174
254
209
255
250
198
178
237
194
240
235
224
199
188
216
192
174
210
213
230
155
202
210
186
179
175
189
261
198
199
148
222
149
187
235
121
205
261
221
186
203
177
152
186
169
201
269
219
253
211
173
204
192
255
270
159
196
171
215
222
226
196
187
195
194
224
228
190
249
161
166
184
209
157
205
213
172
223
253
221
230
157
192
167
248
162
252
179
199
248
192
208
177
219
186
210
212
233
198
229
177
164
186
183
258
220
172
166
215
200
255
238
230
193
221
212
193
236
168
271
237
249
260
150
216
194
273
209
157
117
243
193
260
279
233
209
192
129
219
207
177
229
164
192
248
182
220
142
217
178
152
215
220
240
145
217
188
180
202
246
261
234
154
229
233
159
181
162
228
237
239
210
164
240
202
150
199
214
220
215
215
237
232
218
233
163
135
205
176
218
221
225
223
245
222
215
203
201
149
169
195
198
195
218
229
234
158
201
208
170
249
265
180
250
221
225
131
175
187
226
196
241
177
153
198
202
178
174
201
213
188
214
125
173
128
156
170
195
222
199
154
211
247
229
201
203
187
225
163
201
187
206
240
249
195
209
176
142
147
174
144
245
168
159
234
249
181
199
213
226
197
168
268
169
206
125
140
178
200
139
225
204
190
160
180
241
192
255
237
270
180
196
202
215
218
181
213
239
230
200
190
159
142
217
184
173
208
210
169
174
153
202
234
256
192
136
171
146
160
175
124
167
189
223
185
153
174
197
185
177
267
237
217
178
216
211
169
240
183
191
249
199
221
259
181
203
148
209
213
240
223
199
209
187
235
187
228
188
297
201
218
245
137
178
197
189
215
185
216
230
181
182
188
133
209
205
189
230
253
201
213
208
178
263
194
172
182
174
194
220
215
177
209
166
207
221
172
251
172
171
222
219
203
236
179
167
185
189
243
230
205
174
253
213
165
246
227
216
204
213
194
228
231
181
154
183
171
144
199
171
204
196
195
216
166
163
258
168
272
254
201
171
233
195
205
179
222
183
161
192
219
183
155
120
212
216
110
228
221
183
214
211
142
168
225
217
182
208
228
141
197
230
165
176
208
227
223
162
147
203
187
215
212
252
178
195
239
183
222
189
218
187
185
246
188
231
221
246
183
266
231
99
213
152
133
179
193
172
183
230
209
162
209
193
202
163
184
182
250
213
211
165
204
229
203
219
152
251
193
201
245
199
181
196
254
196
142
156
257
212
204
198
220
178
238
173
239
209
216
222
167
183
210
196
206
211
190
155
122
177
251
187
154
192
196
215
149
176
130
182
214
238
143
176
150
231
110
193
182
146
234
216
271
197
194
229
255
139
193
159
251
208
265
198
214
245
176
190
201
242
280
171
183
237
199
179
179
215
186
241
161
152
224
227
213
206
252
242
254
227
153
168
234
207
157
175
222
125
207
211
172
192
192
160
212
247
155
157
188
143
171
206
227
180
205
204
225
205
186
211
218
201
229
239
222
201
160
158
179
217
171
250
222
216
164
241
207
207
188
161
190
204
228
163
198
183
193
230
183
189
232
185
173
194
176
194
177
205
171
205
186
217
223
252
196
213
163
185
223
165
156
225
213
160
223
152
194
149
191
203
232
204
253
209
187
224
243
209
155
277
238
229
178
193
183
226
197
163
207
145
192
192
173
250
185
211
182
233
245
207
223
186
197
237
187
170
156
213
268
204
227
171
273
227
189
170
168
195
223
192
183
216
215
156
275
237
161
203
269
144
239
216
189
165
252
185
227
248
233
122
259
231
229
223
257
180
220
92
207
220
202
171
245
137
163
183
149
199
206
186
195
230
220
194
195
203
240
211
219
215
231
224
186
233
199
241
197
203
224
147
268
204
246
221
204
213
139
144
191
173
227
192
210
245
197
264
204
169
195
187
178
181
178
205
166
125
186
219
179
150
175
205
246
157
217
209
228
157
153
235
215
235
177
191
252
169
221
246
198
235
219
221
213
265
235
228
225
184
223
169
203
195
198
224
232
183
237
261
204
171
171
183
126
176
195
189
199
233
259
214
221
270
202
177
224
139
198
172
188
266
202
230
190
227
184
155
205
189
191
204
189
237
215
239
110
265
144
144
167
139
219
216
216
206
239
151
228
158
158
176
185
235
130
161
175
249
203
213
245
215
167
231
180
264
219
258
142
231
187
195
202
166
257
220
196
210
241
254
156
180
220
180
205
253
159
190
161
205
198
149
184
188
188
202
152
210
220
130
249
222
284
158
207
214
180
210
189
235
189
182
194
250
198
206
185
179
176
104
198
209
243
210
238
209
203
176
237
143
191
219
174
254
223
170
249
261
231
194
264
189
159
181
206
230
134
239
275
186
257
226
188
180
199
227
190
243
168
184
188
170
217
208
163
142
203
255
168
181
198
156
225
252
214
185
196
217
160
205
270
155
186
230
206
155
114
156
211
175
190
218
270
216
277
189
241
239
171
181
133
158
202
259
262
196
262
244
235
177
184
184
210
139
160
238
259
233
166
199
198
240
207
281
193
189
176
263
183
201
152
194
160
221
198
228
151
207
178
178
201
174
207
228
206
204
194
227
183
205
198
220
131
202
177
140
176
215
266
231
202
306
215
229
206
216
223
153
230
261
138
191
133
184
258
201
268
228
144
255
226
193
215
188
191
170
189
142
238
206
198
165
214
189
226
211
194
207
159
229
177
178
204
199
227
194
254
210
215
137
229
226
215
185
211
210
193
209
244
164
221
128
219
201
164
228
207
246
166
225
213
201
200
216
215
197
186
158
215
178
177
189
198
243
157
263
181
242
147
131
236
254
238
182
195
148
227
237
258
182
198
205
231
156
196
230
186
228
245
204
233
206
198
192
201
189
217
159
222
215
260
188
144
223
165
196
244
237
201
223
182
220
192
219
194
205
260
162
243
106
210
229
143
210
178
196
171
184
219
190
222
216
167
149
264
175
211
238
188
201
221
201
242
159
227
211
182
236
168
154
171
226
270
161
252
162
198
208
224
205
193
246
185
230
185
223
246
208
209
146
228
242
159
215
207
215
228
150
131
226
230
213
217
200
226
226
161
159
245
160
274
232
161
130
189
201
182
244
158
171
199
242
200
205
179
221
238
237
176
189
146
206
184
260
220
254
238
185
222
213
226
256
190
227
188
167
198
178
154
164
149
225
209
198
172
166
145
211
174
180
271
210
160
229
155
129
116
203
205
251
190
238
214
179
199
272
144
142
211
208
266
240
224
193
256
162
208
202
269
175
241
230
232
157
217
257
244
232
234
226
211
168
278
137
181
161
182
279
191
183
186
258
202
217
261
204
183
228
177
236
160
233
152
231
203
154
225
198
178
207
259
204
217
236
148
193
186
231
194
183
231
254
227
149
201
191
234
195
215
128
178
165
231
167
213
157
167
198
235
197
213
200
193
176
192
208
173
214
217
144
206
190
233
233
221
148
205
208
210
206
130
228
177
242
142
201
193
195
217
213
218
166
205
246
167
144
227
231
118
161
163
171
179
169
188
232
176
211
185
215
197
182
196
192
207
153
194
269
186
179
237
198
204
197
211
171
213
195
256
201
183
226
184
269
135
219
231
165
222
222
131
178
165
249
171
178
195
225
184
161
240
234
135
239
224
187
202
229
212
197
216
161
189
201
219
235
150
212
229
202
251
165
199
177
247
149
219
176
202
208
196
145
221
218
139
267
204
183
173
206
227
237
205
231
178
215
180
253
270
183
230
185
156
183
148
203
223
253
136
205
186
244
217
249
172
146
185
149
208
175
197
182
222
221
177
216
190
223
216
209
205
188
200
144
193
135
190
178
138
179
213
184
181
158
249
204
189
129
169
156
141
204
149
208
226
220
221
200
215
197
169
135
222
236
227
189
216
188
224
191
197
202
182
176
195
258
227
167
255
182
206
197
216
148
190
145
204
205
222
169
215
258
204
265
160
182
238
169
190
205
228
147
189
241
242
215
190
255
211
154
236
203
193
201
124
219
192
214
207
176
213
196
249
175
221
158
187
166
216
168
165
190
219
238
151
165
182
175
229
200
191
208
226
225
271
248
182
181
158
205
213
256
226
206
232
182
174
182
225
247
167
204
210
193
213
234
190
189
235
195
185
231
254
209
198
180
168
194
174
160
110
211
202
213
232
224
211
186
102
215
183
121
235
140
222
174
214
162
231
174
188
194
192
240
195
208
181
228
275
190
190
184
195
221
211
180
187
209
139
258
192
275
211
193
258
201
188
171
214
212
138
202
201
202
196
254
187
193
161
210
194
197
253
253
162
177
132
266
183
213
192
137
179
239
194
204
215
169
223
176
186
197
202
239
220
224
146
206
160
162
203
216
265
243
119
235
209
242
168
175
200
217
235
206
206
227
177
231
212
260
159
230
202
234
230
206
211
194
150
218
188
199
168
194
157
252
198
219
185
189
228
179
199
243
205
192
173
216
228
228
179
190
183
283
240
250
200
179
120
247
165
224
143
206
120
158
201
217
185
177
199
171
201
162
244
247
167
232
202
193
180
236
189
214
186
181
200
183
232
206
153
237
157
198
211
203
227
270
168
160
231
217
200
162
165
213
218
140
180
266
239
181
227
230
248
248
176
173
208
142
202
232
254
160
196
263
199
176
197
236
227
205
291
164
232
251
232
189
178
207
171
263
157
192
226
194
179
183
219
171
159
128
198
221
234
163
238
169
203
183
166
222
203
147
239
161
190
92
232
207
211
221
206
144
192
183
202
179
122
164
248
181
198
208
246
230
180
178
173
245
177
210
265
249
192
211
199
224
182
172
212
305
214
214
224
117
270
199
183
216
221
201
180
178
252
255
212
162
212
224
198
208
205
265
262
210
187
159
226
226
152
183
211
221
189
209
252
203
226
156
245
282
209
194
219
207
191
256
178
225
194
197
218
196
245
262
190
176
214
248
235
184
212
207
197
208
217
282
133
192
235
229
210
178
260
218
198
219
260
195
172
217
204
219
180
192
217
225
170
231
241
242
178
211
246
220
234
224
117
183
205
190
169
223
194
206
200
179
185
183
255
138
176
165
188
194
223
224
231
219
228
219
182
223
174
193
215
241
229
225
191
156
161
214
203
180
248
197
210
212
236
170
203
164
185
151
218
158
274
182
282
236
214
238
228
210
232
210
235
160
201
138
212
232
164
202
235
193
198
245
229
236
174
227
176
141
202
140
144
277
205
210
233
210
182
218
278
177
210
156
169
205
167
216
227
230
202
243
187
225
164
205
182
226
202
121
136
177
198
193
225
175
229
190
206
155
155
211
214
165
249
128
189
123
240
191
207
202
256
196
177
220
249
178
217
184
151
154
178
182
173
204
169
208
174
195
204
141
240
152
191
216
158
191
235
197
213
194
174
192
237
225
203
161
191
150
250
211
192
159
163
252
209
235
202
201
152
168
193
259
182
233
138
212
177
197
228
153
172
179
178
254
143
149
190
216
193
159
173
124
227
140
187
171
184
216
214
241
162
203
214
243
184
206
227
233
142
259
259
219
222
223
124
188
192
206
151
151
184
221
188
230
204
255
218
141
225
226
190
163
232
156
208
210
194
168
247
173
206
208
219
152
205
188
201
143
221
234
131
186
223
220
209
180
230
191
183
120
217
188
216
186
200
160
255
213
167
290
243
155
158
181
238
219
198
166
249
196
245
169
239
236
229
199
233
263
262
266
246
155
190
226
222
181
268
189
249
257
233
222
187
206
199
175
219
210
215
223
135
213
206
203
233
194
234
225
227
166
185
187
147
204
239
226
215
192
244
207
166
200
177
223
198
220
147
200
236
215
156
165
179
254
140
166
210
128
193
167
192
158
205
213
222
192
204
208
178
189
201
290
197
196
240
202
209
297
203
192
260
189
156
203
283
222
245
150
139
167
216
203
219
192
201
169
274
215
211
192
151
190
179
174
224
254
204
194
203
195
192
197
216
149
188
181
218
210
231
199
183
180
164
197
242
258
221
194
231
187
242
206
255
152
219
161
227
184
225
196
162
230
236
177
242
220
237
184
191
184
232
199
215
159
187
177
209
164
160
224
205
193
222
232
167
259
181
234
278
190
225
174
219
162
145
211
152
193
121
188
185
208
228
184
219
226
207
207
169
172
171
202
209
217
244
184
185
194
201
180
216
183
244
201
255
157
224
238
187
110
243
222
159
238
179
241
253
128
199
206
156
202
220
259
201
277
156
226
219
288
219
246
243
213
223
216
240
186
124
175
219
148
223
183
189
297
206
240
227
143
207
185
200
223
166
200
240
160
163
209
233
230
194
258
169
207
199
210
194
122
109
216
156
185
157
230
188
161
202
162
185
154
201
209
182
205
184
180
201
248
186
190
227
192
197
218
133
191
171
204
202
131
243
216
200
281
214
157
205
180
137
161
232
212
190
191
196
164
194
244
266
233
206
198
198
180
219
235
198
163
210
191
195
237
218
238
207
179
164
235
186
175
171
198
238
140
176
212
205
225
203
249
200
217
214
237
218
241
201
247
193
236
215
265
203
199
151
222
223
139
147
209
267
194
188
219
178
146
176
279
174
143
193
217
220
209
263
138
218
213
205
237
208
188
181
116
202
243
227
206
252
225
262
246
262
223
232
193
181
243
217
226
165
194
201
190
190
205
224
166
212
242
147
149
162
187
200
162
223
161
212
199
220
175
228
217
249
205
239
233
215
206
163
185
192
211
219
208
196
214
191
210
204
199
146
242
211
211
162
183
215
164
205
250
214
164
234
202
211
202
178
121
141
197
157
144
225
195
187
206
181
278
208
184
157
160
165
151
226
230
150
186
187
212
203
165
199
240
240
167
186
217
266
156
251
226
214
252
179
245
186
175
246
254
209
170
223
269
230
194
246
213
145
190
160
207
219
252
246
188
238
219
228
180
240
168
161
245
234
272
228
234
211
194
230
200
215
196
229
203
182
187
211
136
196
205
179
193
186
220
174
168
231
165
238
271
237
227
235
187
256
188
229
154
209
136
251
174
229
188
244
189
200
259
217
187
149
242
201
196
198
224
141
174
165
231
199
203
194
257
186
230
179
239
254
191
176
178
208
173
131
193
217
235
282
149
177
202
188
249
251
198
184
184
210
223
116
199
196
237
227
230
228
205
189
197
209
222
166
261
205
191
188
179
147
209
214
197
154
178
144
222
156
195
206
216
206
186
223
182
166
163
244
302
201
183
180
201
165
175
242
227
229
143
217
241
214
101
190
200
221
232
172
286
178
212
218
167
227
234
214
212
203
254
253
182
216
168
243
233
172
209
123
241
218
219
181
255
208
236
296
182
207
159
305
170
160
148
240
247
244
198
122
207
273
162
248
161
148
272
217
184
225
207
245
241
211
173
221
189
212
237
209
183
223
206
146
205
236
199
218
182
79
174
241
158
165
195
84
198
232
216
214
207
204
179
163
219
158
217
221
192
192
240
202
164
236
177
184
173
148
189
216
263
170
156
181
203
214
233
208
220
201
205
211
143
209
260
185
232
220
234
221
181
161
137
213
219
187
180
228
226
167
193
238
229
232
181
266
209
145
213
168
181
208
184
214
176
230
238
213
222
201
220
171
262
195
188
230
180
154
190
286
204
165
183
241
185
230
221
212
161
184
245
219
208
162
155
237
162
195
239
184
182
145
194
197
234
207
206
192
193
243
182
207
184
228
218
153
238
152
161
253
213
200
233
195
166
298
138
207
133
185
184
191
185
224
206
199
211
244
232
192
125
279
189
216
204
206
208
220
177
230
208
240
173
248
229
193
121
165
165
185
160
278
267
224
202
183
206
180
184
235
198
165
144
269
105
244
181
205
184
226
179
167
140
185
213
242
149
176
227
204
223
193
147
211
145
239
187
258
203
196
276
186
262
178
157
182
147
174
180
225
215
137
210
190
213
164
166
198
168
150
234
199
214
205
169
207
232
232
222
197
186
231
226
212
196
224
186
267
207
175
256
215
247
242
238
230
208
233
166
192
188
169
153
190
188
185
194
178
195
220
178
139
154
189
221
182
166
185
160
205
207
173
193
227
124
201
142
155
247
219
160
173
177
170
255
224
220
233
199
218
181
218
183
170
203
232
225
190
181
179
198
254
187
218
190
237
246
219
220
211
247
205
188
221
230
172
180
214
215
112
195
199
179
173
185
176
125
235
264
246
159
163
191
177
226
196
220
188
207
155
225
196
199
167
192
217
234
177
236
147
223
237
204
253
96
209
145
220
226
209
230
204
184
183
231
209
186
183
195
143
187
206
190
199
210
204
176
197
218
175
193
184
244
203
220
174
179
211
200
148
235
230
214
197
205
145
211
199
254
198
231
194
174
238
231
202
176
185
172
190
129
146
167
138
170
199
204
176
188
222
201
178
197
173
221
199
167
188
217
209
253
174
238
178
202
172
189
210
185
164
224
194
165
198
199
194
200
241
193
266
212
162
228
159
154
234
229
245
184
211
197
211
131
133
227
216
266
202
193
210
209
212
185
233
231
171
167
218
158
239
143
188
262
186
163
201
256
165
239
240
228
220
226
182
208
209
248
227
159
186
221
121
146
209
249
178
213
199
204
161
251
244
190
187
204
209
262
229
230
161
190
230
250
189
218
176
199
190
184
181
241
215
250
169
194
225
232
174
219
204
162
235
218
132
206
180
183
237
175
192
222
207
181
206
123
155
277
252
189
229
214
207
267
134
177
210
216
214
235
169
200
206
159
231
231
194
243
200
199
240
133
188
194
211
186
199
219
166
153
228
212
196
202
228
233
118
157
156
207
216
190
219
178
215
160
178
181
250
198
157
228
185
257
186
177
221
231
202
180
230
206
187
172
177
197
151
191
164
181
223
200
253
208
198
209
171
150
212
177
224
216
187
223
218
184
152
244
178
191
187
226
216
167
158
202
144
163
248
190
220
194
187
173
163
206
225
253
203
156
170
197
225
195
187
228
158
188
134
210
147
216
179
198
225
168
224
192
182
112
252
181
218
253
226
199
196
164
204
173
217
222
161
167
216
201
218
164
106
225
220
245
189
189
179
178
204
223
247
176
233
228
132
177
244
233
195
210
146
205
188
163
141
203
228
190
206
220
229
228
222
186
177
239
195
191
178
253
215
204
184
204
169
172
216
162
204
188
220
181
203
190
268
132
193
290
199
178
191
195
217
187
191
131
171
153
220
205
217
216
183
175
154
201
189
221
153
165
229
199
201
115
208
187
177
204
240
203
244
206
231
220
248
174
184
184
206
187
251
142
207
192
216
193
210
227
200
167
160
128
210
151
217
185
201
181
218
227
207
194
249
224
220
166
218
162
219
176
192
208
193
203
234
200
153
172
167
179
216
184
133
224
252
146
283
185
237
201
237
193
211
214
196
174
187
205
249
198
183
211
228
149
186
187
156
214
179
184
261
244
246
165
185
224
214
190
204
184
229
235
215
217
219
228
214
191
137
129
223
224
274
189
202
249
184
224
222
204
181
207
233
198
158
130
226
212
238
201
215
197
213
171
149
160
219
170
216
234
125
178
190
210
184
170
222
196
229
204
187
224
116
192
233
144
190
171
250
183
235
151
214
260
167
187
206
218
207
180
157
200
205
210
171
182
193
229
178
284
193
208
143
167
183
190
240
229
239
218
224
161
197
162
244
249
163
200
220
221
140
190
234
151
209
143
196
260
199
178
282
180
204
248
185
211
186
148
227
240
217
233
149
199
193
187
218
244
175
190
193
200
167
209
222
171
183
254
212
228
144
201
206
260
231
186
152
183
197
213
174
153
161
161
222
165
213
203
258
162
168
164
193
190
131
231
194
196
195
216
175
177
221
215
248
247
171
193
161
223
223
187
202
190
214
215
221
189
198
192
126
199
195
149
218
203
205
177
143
199
197
205
219
274
164
163
210
160
281
240
191
231
203
155
209
176
186
168
274
196
202
179
170
174
176
213
197
220
202
211
161
201
250
162
215
167
183
193
201
127
206
221
202
150
164
179
134
212
250
188
190
185
212
187
205
234
211
156
184
121
215
239
183
172
133
249
236
210
169
168
195
186
245
159
189
231
226
176
192
166
158
219
245
201
220
167
188
173
180
177
215
224
231
117
228
184
261
179
254
149
188
199
195
233
178
187
166
251
193
151
203
181
171
198
169
200
239
187
206
166
181
210
187
189
178
173
197
189
146
213
220
187
258
239
210
180
160
255
246
167
170
198
232
227
195
165
175
179
225
142
173
195
207
178
247
192
210
212
207
202
186
258
224
188
197
235
206
158
162
230
182
220
264
229
193
147
167
226
213
200
233
184
185
202
205
210
238
128
258
140
235
275
225
122
206
231
154
182
225
188
272
163
115
177
257
202
240
228
208
218
227
171
201
196
208
179
241
214
185
189
180
213
141
207
177
186
127
236
144
248
157
172
194
196
220
234
194
201
157
170
223
186
201
183
229
180
264
240
247
184
236
198
235
220
233
210
188
205
197
218
201
155
248
185
220
200
210
263
183
234
171
195
237
211
238
196
167
212
163
273
200
150
232
259
262
201
267
234
205
227
207
188
229
124
215
288
207
174
153
144
214
229
194
181
163
219
227
179
181
211
194
248
195
235
247
226
219
161
221
232
178
210
161
175
196
138
263
195
168
228
251
226
148
215
198
178
186
188
160
178
175
248
220
214
184
220
225
224
228
217
240
215
237
189
283
195
283
185
161
175
203
213
196
198
176
203
207
224
206
253
202
216
229
203
216
226
192
183
224
259
229
195
187
212
130
202
109
231
166
159
210
236
172
182
188
184
189
176
183
228
181
235
244
217
171
219
204
212
205
161
204
199
162
240
195
163
195
203
224
235
231
154
204
193
182
190
182
183
263
234
245
201
181
172
258
209
194
152
196
204
138
207
247
231
143
169
154
243
187
176
179
206
233
160
253
253
191
174
215
193
192
190
233
215
179
213
154
236
237
191
230
161
174
152
188
191
142
218
175
226
228
168
194
226
185
167
183
216
148
152
184
130
235
232
186
214
196
213
201
216
193
100
227
231
205
229
184
185
162
155
225
254
186
187
144
135
187
216
136
177
218
189
233
252
202
168
217
204
240
233
142
224
163
214
239
175
236
243
171
256
214
207
202
162
194
199
168
214
229
208
232
202
181
157
258
203
223
113
231
204
155
210
267
204
180
175
168
169
189
188
158
253
228
191
159
265
194
277
218
231
186
244
209
202
203
183
248
219
197
190
186
170
237
219
212
188
205
196
245
210
200
191
148
202
240
243
167
201
184
206
151
178
223
252
184
212
127
158
232
168
145
193
180
163
211
238
209
142
143
201
184
213
161
206
224
216
180
141
211
162
166
268
165
254
168
155
187
226
250
197
145
155
175
226
133
126
255
246
250
246
155
243
244
218
150
229
154
218
236
237
248
161
252
199
206
209
169
211
155
255
227
199
218
205
140
196
165
218
260
163
262
236
215
231
179
172
173
145
194
162
235
237
196
199
200
192
210
208
160
208
199
239
184
173
220
157
174
236
215
281
191
181
209
216
195
215
168
211
258
225
222
202
119
205
221
253
175
197
182
204
217
181
168
218
167
229
179
229
157
182
200
215
216
238
192
183
153
228
245
220
168
197
193
154
212
201
195
171
230
260
190
176
140
173
206
232
214
197
185
205
253
193
230
233
188
188
176
194
174
203
212
200
216
228
215
206
168
169
198
249
186
188
223
275
183
201
211
199
232
235
248
215
151
151
201
216
210
214
171
237
173
185
164
193
223
205
229
216
241
179
165
176
220
143
252
245
181
175
228
167
184
183
160
163
211
220
215
192
247
129
97
181
207
233
243
203
152
223
161
240
212
203
254
235
149
167
231
194
145
231
206
214
203
203
231
232
122
178
149
187
163
123
222
192
177
192
159
184
185
178
257
221
228
186
122
186
263
264
228
178
185
167
232
191
204
217
154
146
206
182
156
237
235
180
187
171
220
211
212
131
170
209
196
167
255
167
246
170
229
247
196
245
188
205
224
132
228
192
200
212
172
200
190
137
214
258
197
141
211
274
256
147
207
197
184
221
163
234
167
205
188
208
258
214
99
163
161
183
154
211
192
180
205
198
263
110
237
252
174
195
202
237
221
163
236
198
177
191
242
198
208
212
204
228
150
152
210
175
206
227
192
161
220
182
254
229
155
200
248
214
156
208
256
245
213
234
191
222
176
231
222
194
214
183
169
217
192
150
190
212
182
197
221
175
247
204
248
207
123
221
135
222
195
168
169
210
246
181
142
175
207
231
192
167
163
231
212
227
236
240
152
162
254
205
241
179
196
219
196
261
211
166
268
203
200
236
157
201
202
188
174
189
195
237
228
167
234
187
221
154
181
209
244
239
191
161
239
231
229
179
260
200
196
225
223
236
144
147
197
186
189
228
178
252
218
183
198
251
197
232
207
186
130
145
169
259
236
260
197
228
293
230
219
206
200
233
226
134
158
200
184
151
134
117
175
90
206
250
195
275
201
205
231
192
187
237
247
233
250
179
210
207
232
174
238
224
135
185
188
145
244
222
190
202
171
223
203
180
217
216
206
217
171
178
187
224
162
218
199
221
229
248
180
153
171
189
177
241
223
239
215
215
236
202
167
119
190
250
153
193
184
219
201
188
209
119
214
204
215
169
226
176
231
125
246
118
179
210
187
197
140
192
242
220
262
189
250
145
252
271
194
166
194
238
203
197
202
226
223
151
207
214
204
212
181
224
202
252
221
209
148
230
184
225
186
143
204
190
248
199
145
181
154
226
158
191
253
131
263
208
197
210
177
195
218
255
170
210
180
229
204
182
188
199
196
271
201
209
229
203
207
213
228
199
231
202
186
122
196
164
249
213
264
195
154
241
178
186
171
151
226
229
172
166
191
217
203
218
155
171
231
251
191
226
233
232
147
198
201
139
251
212
211
226
111
170
160
169
217
197
198
155
206
166
178
203
191
217
154
140
103
153
218
272
217
239
233
189
215
235
131
233
216
148
264
191
194
205
195
174
186
230
258
182
237
221
150
147
193
217
199
272
152
220
183
236
172
191
151
220
216
248
242
163
223
216
196
232
198
164
211
170
256
227
191
194
243
242
211
219
236
177
173
202
208
204
174
133
191
180
189
211
291
123
248
190
145
199
234
222
163
186
225
190
186
221
207
139
218
275
219
222
187
202
228
207
209
178
127
192
231
201
189
170
174
209
199
179
223
222
187
218
231
173
148
142
219
197
217
208
128
203
203
159
172
149
225
211
182
152
192
267
186
230
195
177
179
158
175
163
197
219
234
175
157
263
178
160
130
218
250
196
175
204
262
154
207
227
235
185
236
233
221
165
140
192
199
204
199
220
227
169
172
220
183
230
199
200
245
229
170
261
167
188
189
225
249
200
274
186
165
202
230
242
188
202
206
211
253
201
207
249
227
257
230
175
223
188
177
193
195
208
191
219
235
191
219
198
187
148
197
204
199
171
171
210
229
177
202
309
210
161
192
180
196
208
212
170
237
234
219
209
205
208
203
195
265
153
187
190
120
154
161
194
142
196
187
183
197
195
242
181
220
218
215
215
248
218
228
183
247
163
199
214
150
231
222
184
166
231
248
172
197
167
235
213
190
254
205
209
238
233
187
214
211
211
148
225
215
154
235
248
187
234
209
177
195
154
169
233
257
218
209
183
152
206
158
148
224
175
189
126
216
257
196
178
245
189
132
116
225
207
221
209
171
143
185
232
201
182
216
243
151
208
174
224
175
209
143
225
188
229
205
210
181
198
171
237
174
158
216
277
183
243
229
130
170
273
203
197
230
204
210
181
185
156
175
227
196
210
110
170
185
185
168
226
223
212
213
118
205
211
193
191
200
203
236
125
145
161
231
239
232
290
161
238
251
194
207
237
194
207
206
217
197
200
244
125
236
223
158
139
173
204
166
213
268
233
243
178
275
232
240
181
222
164
225
200
231
174
221
204
201
200
184
156
215
215
167
202
182
206
187
222
129
121
238
172
236
199
224
151
193
237
251
219
169
198
213
142
215
186
217
145
195
196
187
260
199
232
178
210
231
146
218
203
202
225
202
188
234
169
219
207
246
192
213
201
172
208
249
246
195
234
192
147
211
195
153
242
211
249
187
200
196
255
208
158
178
232
200
213
194
162
165
206
217
189
212
182
196
110
172
200
224
266
188
223
206
184
206
178
250
233
268
161
234
201
191
216
200
208
181
146
173
246
197
194
242
243
188
105
241
209
207
187
195
199
156
153
226
206
204
225
173
147
171
196
187
211
233
165
214
188
208
190
205
259
227
212
208
196
226
231
169
170
213
261
217
245
228
188
214
256
198
188
194
178
241
269
172
242
140
276
185
202
161
206
230
206
189
247
178
172
174
211
196
268
185
231
135
185
249
187
179
171
182
152
190
220
131
194
191
248
194
202
171
201
141
216
158
196
189
168
228
192
182
196
199
170
170
238
224
211
248
169
189
221
231
189
167
240
171
204
246
230
235
208
197
220
202
197
185
180
224
212
264
189
242
168
241
213
205
176
193
189
224
201
218
192
208
270
146
219
185
137
166
216
166
148
210
212
203
151
158
209
198
176
161
202
203
270
200
152
187
181
198
163
265
251
234
185
255
208
225
233
205
205
233
190
171
199
186
139
196
265
221
191
167
172
212
197
203
175
201
219
183
181
165
154
214
138
180
253
261
238
233
218
224
188
233
206
125
172
153
206
227
246
238
204
183
214
206
202
247
205
138
191
264
200
207
203
189
207
228
277
147
159
141
246
200
205
171
181
172
208
250
228
210
164
148
200
176
187
226
223
218
170
203
248
252
228
204
200
191
252
227
209
235
256
227
182
216
193
196
193
155
267
201
221
210
186
239
237
131
223
244
163
243
210
167
140
183
251
142
218
143
165
196
158
228
191
189
168
211
177
219
212
136
175
248
171
169
214
210
233
184
243
213
247
250
217
211
172
216
156
230
195
247
189
180
216
243
246
255
168
256
184
182
137
204
197
244
168
225
225
185
219
181
174
222
240
203
213
236
181
205
195
224
226
163
235
178
196
236
217
180
227
236
178
196
240
197
214
197
159
164
208
163
235
219
226
182
195
155
229
229
225
218
227
205
233
208
175
207
186
213
189
191
269
215
151
228
242
245
256
211
220
236
150
208
239
214
185
226
189
149
151
187
136
166
180
215
239
250
264
180
253
203
193
193
237
120
216
217
214
206
248
239
196
223
209
182
246
235
244
200
201
203
205
190
204
240
249
151
227
239
232
90
228
214
264
165
184
217
208
233
219
241
146
205
212
185
239
199
107
167
203
229
248
203
198
245
212
172
181
192
232
186
177
193
204
219
238
243
186
207
208
225
243
191
153
186
214
194
146
255
157
221
224
225
174
221
257
172
187
198
181
179
226
144
201
221
209
215
233
235
231
209
270
223
218
131
183
160
211
219
206
156
185
215
157
224
221
234
182
263
179
156
239
140
209
243
190
243
204
200
165
203
161
148
207
203
191
211
260
251
203
209
175
143
252
201
233
224
197
198
248
208
183
203
217
215
161
208
182
244
228
180
168
159
168
193
245
255
178
220
223
199
185
220
253
140
193
138
205
162
204
196
226
265
230
242
225
178
168
140
216
206
193
224
249
202
197
257
214
241
156
177
182
236
182
201
109
182
214
188
197
212
246
225
213
212
159
182
211
211
144
249
257
191
231
239
106
154
157
217
184
153
109
236
173
208
85
217
189
150
253
215
196
178
218
142
184
232
140
187
226
200
181
186
162
206
243
239
214
191
207
168
243
181
169
224
233
187
161
186
143
194
159
110
254
187
126
179
216
212
189
203
247
220
270
242
200
165
259
194
151
188
211
213
211
231
184
242
212
235
227
254
161
210
155
214
152
156
235
261
193
183
177
291
118
174
158
115
254
231
178
238
130
127
213
165
247
156
106
183
163
179
179
215
123
162
221
130
197
204
234
221
232
234
242
162
202
204
229
165
182
196
197
154
186
154
235
229
174
228
277
204
171
225
219
231
230
241
222
224
210
236
208
161
253
200
219
201
207
201
178
215
237
113
286
232
221
179
215
208
160
212
216
231
210
188
219
223
176
275
219
218
216
222
240
161
131
250
147
174
140
213
169
198
136
182
240
256
241
199
206
229
215
230
238
130
254
144
171
165
173
228
170
199
158
192
150
221
155
200
239
245
229
196
202
134
179
212
189
213
214
167
189
176
257
159
111
160
193
189
246
187
249
197
227
182
140
222
223
172
211
234
192
203
277
234
190
212
217
125
195
200
209
201
209
209
195
150
171
211
222
164
216
214
200
213
217
230
153
199
221
217
189
167
175
215
220
251
204
194
236
204
243
231
244
238
192
239
203
224
210
195
171
241
245
204
189
174
253
219
180
168
219
209
212
221
167
191
159
167
182
205
181
204
241
175
207
240
209
204
256
248
104
192
221
184
130
217
210
128
182
227
173
243
190
158
193
234
205
200
251
210
233
251
214
262
184
201
197
236
119
189
180
150
151
209
181
208
208
226
208
117
234
185
166
153
242
219
191
193
232
186
195
161
206
201
147
134
170
256
155
195
159
205
247
186
187
254
192
172
187
211
204
217
227
155
176
184
181
229
151
171
253
207
169
177
221
271
182
202
167
168
200
159
223
198
171
179
178
185
211
180
216
224
226
195
182
191
146
163
204
231
240
117
225
198
193
169
208
216
201
121
138
197
134
185
243
158
236
224
212
137
209
243
199
179
267
177
212
157
163
189
231
220
190
213
214
225
170
163
178
216
190
239
167
214
182
216
188
225
226
194
202
259
139
146
289
176
266
177
214
200
196
176
176
251
170
123
162
198
232
200
180
173
131
166
212
195
151
222
193
257
213
201
161
194
220
270
179
230
143
189
164
162
176
231
240
250
232
245
191
184
227
249
175
184
210
176
191
155
174
204
212
147
192
171
191
182
183
169
218
240
200
163
219
201
282
178
216
175
156
172
137
187
215
161
209
230
169
214
180
159
238
179
203
169
173
217
214
211
213
249
219
166
218
221
174
187
226
197
211
157
216
196
178
209
179
238
155
155
163
254
188
222
205
245
161
157
209
188
223
225
180
181
221
210
206
198
239
241
235
202
235
151
216
203
237
163
184
234
168
216
142
226
230
185
190
162
145
235
248
122
188
169
213
227
225
158
175
177
157
185
190
184
266
210
206
204
224
249
221
183
223
187
217
264
249
185
223
154
157
165
116
207
190
204
174
227
148
225
204
210
150
238
232
204
200
192
223
167
184
225
192
162
218
205
139
187
172
183
188
195
224
189
201
220
209
212
234
151
250
206
195
236
260
203
185
196
189
185
193
186
204
165
194
168
213
127
218
208
136
206
192
188
206
177
194
202
233
235
193
229
230
252
171
209
203
216
194
240
203
243
191
205
214
167
223
193
200
234
213
204
183
240
264
233
250
198
185
191
189
225
182
228
220
188
211
208
211
212
273
191
227
197
229
164
187
213
120
227
189
153
262
148
210
156
228
169
218
200
231
229
235
244
227
233
193
210
181
276
228
227
139
174
170
235
184
182
176
191
165
221
197
195
190
251
173
176
172
139
188
162
145
246
216
135
202
201
234
207
233
162
217
242
157
191
199
185
211
198
184
230
227
174
203
179
212
217
227
140
188
161
223
148
187
188
189
250
220
235
183
283
245
196
194
150
240
179
199
193
246
223
151
203
193
213
210
203
221
236
239
197
159
196
199
204
246
130
240
248
238
216
164
236
249
216
201
224
175
217
139
218
167
177
181
209
245
192
184
192
212
181
125
206
127
196
164
146
224
173
250
196
176
169
184
172
265
164
253
236
238
119
215
171
201
223
187
178
247
158
247
203
237
206
180
168
246
247
248
181
161
151
184
162
182
192
249
175
154
137
176
218
149
168
198
205
198
160
187
253
147
178
209
217
212
224
216
224
221
228
156
256
179
213
181
177
146
253
216
242
157
202
265
174
142
211
139
175
204
244
213
199
203
245
225
174
172
202
171
228
243
248
188
176
206
204
186
158
183
217
232
191
252
199
208
229
222
176
139
194
173
217
211
230
189
241
194
214
153
154
190
200
205
232
230
145
174
114
201
181
252
227
267
224
265
253
207
261
159
152
201
302
199
166
257
199
203
228
204
185
177
222
158
265
139
183
191
189
271
168
231
231
218
190
166
175
180
175
201
191
156
217
223
226
178
187
92
222
205
188
155
210
175
132
155
172
188
147
209
135
226
185
196
198
207
183
171
196
211
252
226
242
159
255
185
221
198
161
197
180
135
207
156
124
190
247
232
148
187
204
247
204
90
212
161
222
232
202
182
186
189
182
185
208
210
192
255
159
198
204
228
142
207
215
203
197
179
223
171
154
192
215
197
217
211
202
145
190
191
226
191
159
194
193
207
176
248
159
218
165
209
191
196
248
115
136
209
259
192
175
225
205
207
208
137
220
126
224
148
192
215
222
165
218
205
145
225
203
190
160
173
153
168
217
180
229
205
175
199
115
171
194
196
177
214
218
231
231
191
171
218
233
181
176
178
255
202
155
141
248
229
241
245
164
222
226
219
157
198
247
150
210
236
176
177
207
187
221
212
208
138
209
197
227
178
220
133
236
250
129
162
168
155
219
199
183
256
192
209
202
255
218
213
168
178
151
193
155
207
186
301
203
190
258
208
202
198
186
205
190
188
241
221
177
154
157
218
231
200
265
221
210
187
162
183
237
133
198
132
170
195
194
234
178
148
201
225
223
190
254
206
183
264
246
221
257
218
229
211
213
220
207
284
193
201
269
209
215
189
215
146
221
127
205
205
174
261
227
248
195
174
192
251
219
176
187
221
205
191
276
164
239
224
227
219
206
144
209
209
199
174
182
233
189
225
203
174
239
205
240
212
210
131
179
198
227
176
235
229
154
192
197
234
235
222
223
129
237
248
208
235
242
210
212
168
280
188
209
145
147
175
191
187
172
129
213
161
235
270
217
154
214
245
190
149
259
261
174
182
110
201
179
205
249
144
195
240
244
172
219
248
189
201
201
167
177
230
174
184
226
267
246
209
127
232
199
192
221
222
240
227
129
153
164
265
191
223
251
198
183
118
245
160
221
233
226
261
219
135
243
219
245
207
200
202
196
196
220
222
201
170
267
262
187
158
234
215
214
180
183
211
220
207
240
209
178
213
212
154
246
209
213
240
174
197
180
167
240
237
115
159
188
212
220
234
168
93
250
151
257
205
126
163
194
255
201
188
231
162
208
147
174
218
206
223
169
220
170
238
214
248
227
186
215
170
228
244
218
270
185
236
246
224
220
161
233
119
171
190
223
178
196
164
194
191
220
225
232
250
157
231
149
209
187
215
181
254
195
245
143
219
155
230
215
141
221
188
199
196
210
185
148
206
145
210
135
208
201
189
194
219
170
206
235
186
210
235
274
205
211
187
218
194
223
149
228
177
146
198
181
181
168
192
233
182
221
216
215
192
185
221
227
188
200
257
219
215
252
198
161
141
179
149
187
254
168
166
241
199
183
232
236
199
236
262
210
239
195
170
181
175
186
173
109
193
166
169
189
179
164
164
195
200
199
208
169
168
235
241
180
191
253
216
181
263
186
243
145
246
228
183
238
185
255
243
163
139
186
207
165
185
139
186
170
162
194
275
224
141
146
205
177
174
176
186
193
196
213
222
242
176
179
141
141
196
216
214
243
223
255
188
207
224
194
230
227
178
165
232
186
170
218
188
184
199
147
222
285
235
250
230
247
185
216
171
175
276
206
88
184
166
197
185
232
242
207
213
239
204
223
207
196
182
191
232
214
208
159
162
180
187
179
231
252
199
175
169
175
200
168
153
175
273
138
222
164
186
159
194
206
224
171
191
265
119
162
204
215
206
189
169
119
172
260
198
223
144
206
220
147
170
250
158
209
160
240
239
278
236
234
241
256
128
219
207
170
187
223
251
145
192
192
197
210
128
197
248
223
226
188
148
202
210
186
221
160
177
243
126
221
172
176
199
222
148
220
208
199
196
182
201
191
193
168
194
215
163
211
172
171
223
191
166
257
180
197
155
232
196
167
147
149
160
178
199
191
195
233
206
170
190
196
177
186
204
212
225
182
193
216
255
265
167
212
199
210
262
147
154
248
188
165
197
196
183
300
222
175
266
223
222
237
216
216
143
260
198
193
191
218
228
221
215
208
149
268
240
157
183
165
215
146
154
243
260
198
216
249
175
215
196
168
180
230
174
279
254
207
209
157
256
197
212
207
177
156
162
190
217
177
212
187
179
206
247
218
180
138
195
190
222
188
204
149
223
173
241
189
185
163
179
190
161
251
176
202
229
209
175
230
229
188
225
274
162
223
205
213
187
224
177
144
215
205
231
244
174
205
236
158
143
207
175
112
109
201
248
236
266
125
188
153
187
193
224
216
235
215
167
222
170
233
213
143
214
205
214
214
185
229
202
199
237
194
240
216
257
215
205
158
223
213
173
239
218
232
171
220
200
182
175
201
186
164
198
154
178
161
146
159
215
178
171
154
215
175
201
173
202
183
226
187
194
136
246
216
223
212
222
219
221
214
191
178
186
223
237
237
266
201
161
220
200
241
180
190
181
259
201
175
221
215
225
230
243
152
220
140
213
168
227
126
238
258
218
159
238
220
223
179
219
170
202
220
254
213
207
214
192
267
187
178
267
249
198
154
222
217
235
167
217
173
227
176
261
221
197
177
134
200
164
222
164
255
202
192
276
170
184
163
225
192
183
176
212
214
240
242
211
222
183
191
207
198
284
217
170
222
193
192
191
140
189
196
214
152
159
183
214
181
192
162
238
189
179
149
199
245
152
223
188
177
205
183
204
263
182
168
183
204
137
191
161
203
203
181
169
120
216
175
255
173
185
140
218
254
295
256
183
258
159
197
173
198
238
205
147
152
141
204
191
150
217
166
144
188
158
201
238
223
220
234
161
217
209
204
253
241
134
178
213
172
199
262
270
220
134
147
245
170
216
201
209
194
182
190
215
186
212
186
200
204
211
163
214
216
214
189
168
195
183
245
176
169
193
168
211
149
236
241
196
152
176
255
178
231
223
218
243
252
165
190
208
164
215
188
238
199
201
177
217
210
187
236
200
191
188
202
160
197
173
217
243
232
231
247
243
157
186
218
224
192
203
190
200
225
195
190
221
137
219
257
171
216
177
255
225
206
233
164
217
170
211
232
223
205
225
234
198
197
194
176
216
243
197
164
233
192
220
117
213
236
243
234
187
251
172
217
176
219
229
216
190
211
242
198
162
148
206
220
158
184
248
260
141
169
246
217
201
221
199
151
131
210
188
232
234
246
201
240
189
248
177
215
232
174
210
227
166
201
205
203
247
218
218
165
164
245
161
221
187
193
212
260
181
193
227
199
208
203
203
234
230
154
215
213
194
237
180
211
180
145
264
184
153
220
158
209
208
183
199
164
172
207
235
197
264
181
149
232
238
218
137
202
203
171
235
179
221
141
208
203
188
196
212
154
166
181
220
165
244
170
195
225
216
231
232
217
190
126
243
191
177
216
188
197
152
181
241
200
202
201
188
148
255
263
199
157
176
235
216
226
190
184
239
187
178
150
188
169
260
171
191
253
253
253
254
266
182
148
205
195
171
161
246
250
194
221
250
129
186
236
142
226
266
144
238
154
225
172
133
202
180
174
232
148
213
262
238
204
192
191
149
229
220
183
176
235
219
164
133
186
202
147
204
166
225
239
198
239
229
192
199
232
192
166
220
195
199
229
225
215
185
228
206
175
264
179
179
195
240
255
180
177
226
166
208
222
162
250
224
236
162
205
183
250
241
227
184
185
191
253
205
217
192
155
143
250
195
200
176
191
234
223
216
209
221
216
164
187
186
215
203
146
228
192
258
229
232
169
164
192
184
183
275
224
189
206
122
164
154
191
217
267
136
224
257
203
247
158
203
243
181
195
174
284
224
218
192
220
158
165
206
216
188
286
139
257
181
214
191
210
181
220
160
217
195
200
233
223
185
230
196
217
189
215
205
257
209
187
229
153
171
91
163
227
155
221
192
216
249
202
129
172
208
214
214
108
198
244
187
243
197
190
238
231
209
204
230
263
148
201
173
169
257
187
204
227
167
220
230
212
127
210
222
206
200
140
211
186
200
221
225
241
230
228
193
216
177
220
219
177
233
213
231
234
224
186
178
220
199
180
218
245
202
212
194
195
251
152
201
130
145
180
181
210
212
216
245
182
167
205
228
215
180
169
195
264
190
209
232
269
198
156
215
202
231
185
178
233
251
233
205
232
230
264
162
160
182
154
158
175
183
210
234
202
239
173
225
247
202
244
226
241
194
198
169
225
197
183
213
196
202
184
190
205
123
261
224
208
181
202
258
200
135
238
178
204
205
198
172
231
203
185
142
204
149
260
189
220
175
202
183
254
232
265
219
216
148
197
243
150
212
173
168
210
180
116
205
178
184
279
212
213
236
286
168
195
206
178
252
204
211
219
157
184
239
191
222
259
171
193
183
261
174
158
193
119
217
208
177
173
218
221
174
186
145
210
228
177
233
212
226
178
215
204
218
251
262
227
256
238
102
238
226
196
233
212
146
189
260
255
222
184
227
231
171
168
221
198
215
202
190
202
142
203
223
235
215
259
194
206
250
228
159
216
158
191
229
279
172
198
194
192
166
200
215
159
197
218
211
235
233
220
242
215
153
142
205
202
221
203
193
223
150
151
175
148
148
192
197
178
214
190
223
261
186
187
205
232
191
138
175
221
223
224
156
229
78
208
174
219
183
175
203
190
227
189
178
164
216
174
119
195
218
218
170
256
185
152
238
242
236
283
177
185
281
150
192
203
186
168
190
210
187
203
226
222
178
130
175
240
188
146
206
283
221
218
254
262
181
217
265
220
226
198
187
168
217
157
274
204
225
188
234
217
174
171
214
232
198
187
213
194
172
165
156
219
198
196
160
154
189
269
113
206
225
251
211
207
218
141
254
242
201
215
238
198
194
237
188
185
236
188
177
187
227
206
169
199
161
209
216
234
210
216
220
159
160
185
172
236
211
188
228
185
118
205
166
164
211
225
226
229
190
258
178
202
156
287
167
189
259
174
179
189
145
180
213
194
212
224
193
222
162
222
194
175
236
174
153
218
117
193
235
239
238
165
207
229
164
147
230
169
206
200
256
201
167
206
211
171
183
229
170
248
202
264
256
182
219
211
234
162
219
208
138
197
216
226
218
179
198
230
246
182
227
161
194
170
203
198
199
208
240
172
213
201
230
176
122
171
183
223
225
213
187
224
163
198
169
248
173
216
173
206
207
179
209
268
105
166
186
220
214
197
219
221
160
182
197
201
242
204
186
149
225
137
243
194
119
186
212
186
226
188
172
232
207
185
187
224
172
180
249
237
150
249
223
140
154
215
233
249
195
208
193
118
188
212
221
223
161
222
166
161
157
196
258
202
161
198
212
200
220
172
191
220
133
228
193
187
171
209
194
213
218
201
151
163
219
129
211
118
201
210
246
222
163
207
278
189
300
226
150
224
146
215
236
211
190
246
181
214
211
205
210
178
204
187
181
163
165
219
268
195
181
171
110
232
240
227
250
253
202
239
229
216
247
181
191
245
260
140
207
241
251
217
214
204
158
200
232
183
194
198
219
260
213
257
231
151
217
236
178
162
168
177
219
213
227
229
178
201
187
200
227
242
208
244
203
224
253
232
181
223
181
228
195
159
204
223
214
184
153
240
219
195
188
217
235
154
226
172
150
120
196
226
233
203
227
213
243
194
195
193
252
192
211
272
153
150
189
189
234
234
195
256
96
190
239
209
197
166
204
269
290
235
209
274
246
159
231
166
231
172
241
238
275
161
234
200
228
260
267
214
249
236
261
141
173
254
194
201
235
226
153
164
188
190
179
161
162
151
217
170
217
202
267
184
169
136
264
153
134
210
238
197
185
198
195
208
144
153
265
227
231
166
219
177
273
175
175
217
181
229
198
222
209
203
207
186
226
193
185
206
184
191
140
205
229
161
218
167
215
215
263
180
255
269
173
126
137
177
232
275
223
214
148
227
224
220
220
202
169
190
148
177
201
205
256
230
194
198
195
188
141
195
196
203
165
256
154
163
133
159
248
208
240
150
151
226
139
228
241
185
174
201
179
174
199
193
222
237
145
201
166
161
237
120
136
193
148
197
146
180
191
215
166
224
151
197
163
244
179
190
259
220
213
187
241
216
195
212
251
223
168
201
215
196
200
185
150
172
193
206
183
222
198
230
217
218
201
208
199
222
168
155
167
171
175
247
202
226
209
191
196
227
122
201
205
188
133
166
216
253
237
211
261
193
187
176
135
248
278
199
216
188
218
251
187
262
240
169
209
106
195
195
205
211
149
266
249
182
227
215
267
174
222
139
266
191
238
275
226
207
165
221
215
216
229
204
195
220
204
206
164
219
199
216
151
208
209
123
253
219
196
137
193
279
194
124
176
174
183
196
187
235
182
216
232
167
230
188
163
250
147
234
236
231
134
237
230
241
234
266
142
157
135
260
236
218
160
207
195
188
214
203
116
220
248
192
216
188
227
234
219
195
230
200
161
238
188
209
214
189
278
209
215
224
209
213
255
207
235
145
190
158
223
273
222
226
180
253
204
185
213
200
183
164
201
240
168
249
212
208
224
215
173
232
192
208
196
160
235
177
190
144
272
240
247
195
159
180
236
268
214
172
171
126
193
187
200
204
219
221
125
160
117
180
235
140
230
207
179
185
216
188
195
214
167
245
179
202
174
195
203
198
224
160
198
218
186
178
164
251
205
161
209
192
209
145
262
143
215
257
197
196
172
240
181
176
166
195
172
175
232
240
243
203
229
176
157
225
169
210
150
193
231
182
257
164
235
212
213
220
203
207
199
236
238
242
175
201
159
181
207
223
207
189
185
215
244
125
183
215
138
239
241
229
186
175
251
203
213
183
196
213
201
184
192
205
275
173
194
226
200
146
217
192
234
248
202
200
209
154
212
139
196
194
166
209
179
170
223
233
227
193
235
190
255
220
235
211
136
216
198
253
215
239
220
183
284
224
216
181
225
191
163
209
197
185
182
149
231
252
249
181
224
239
248
247
143
164
180
197
177
172
266
130
218
185
234
172
218
232
241
214
227
261
218
226
210
221
248
220
202
143
241
217
246
217
166
185
211
218
207
220
154
205
192
188
102
243
192
185
201
263
215
134
233
153
140
253
232
252
151
227
227
199
183
177
254
137
183
174
171
211
180
169
202
189
213
238
194
150
172
201
193
233
162
233
154
125
244
238
214
275
197
184
206
215
182
196
174
207
267
180
238
170
225
235
216
231
156
198
188
175
221
131
210
238
185
192
189
164
247
163
199
155
215
261
146
283
213
158
204
179
185
257
230
210
163
210
202
201
242
205
171
216
190
175
233
236
232
238
166
220
167
162
151
219
143
223
224
193
249
231
188
134
223
178
217
231
222
204
177
215
209
214
217
237
225
152
163
232
245
168
240
239
177
113
187
219
148
159
151
217
185
143
213
207
238
210
226
215
204
221
261
173
129
214
220
251
253
192
237
190
160
171
155
196
236
186
185
246
196
174
171
216
185
173
185
178
186
214
206
199
236
209
235
190
229
201
184
218
139
157
177
197
217
193
235
160
185
211
209
222
171
261
239
257
147
198
249
150
202
221
249
202
235
208
198
210
212
181
207
181
182
236
180
180
216
182
205
165
157
168
207
229
253
173
213
234
237
239
251
201
187
165
220
200
202
207
195
162
217
276
189
205
265
167
258
248
216
204
172
208
165
171
209
264
180
191
169
240
234
141
154
190
181
144
203
218
162
222
212
208
221
223
181
251
236
229
202
202
222
199
212
206
147
182
236
216
142
157
226
181
134
185
230
217
216
181
235
197
196
192
170
225
220
167
137
230
207
195
154
151
226
201
164
152
189
218
213
241
181
198
185
158
227
230
227
188
195
141
286
154
151
223
184
229
160
222
150
207
210
227
203
248
182
150
212
213
170
206
187
182
229
184
231
191
211
186
214
196
198
149
224
167
232
160
226
174
241
185
234
187
208
231
190
161
139
198
203
243
182
127
193
163
172
210
229
202
230
245
155
175
270
163
194
190
192
192
190
104
181
215
173
245
212
174
226
213
141
192
241
222
249
222
167
192
176
204
208
169
235
207
217
190
138
209
219
135
231
221
187
184
244
190
236
239
209
221
247
197
175
194
225
127
200
184
194
207
214
232
185
217
166
265
197
208
210
230
166
101
185
167
152
166
186
184
183
191
210
224
222
192
207
216
203
203
214
221
256
235
199
197
138
186
181
235
197
211
179
225
258
183
200
185
163
119
171
200
152
178
173
175
224
189
204
158
199
275
227
207
209
141
272
254
230
159
187
209
261
207
236
181
204
246
209
168
169
204
127
164
243
176
241
208
194
208
184
184
249
287
212
238
209
210
158
236
163
217
217
209
186
238
232
221
196
185
216
174
213
155
205
223
166
165
200
258
151
212
227
207
245
185
272
174
200
186
201
181
135
200
225
216
263
185
258
193
170
188
214
227
210
210
152
213
198
216
219
219
197
219
193
222
209
209
241
227
213
194
224
166
181
156
251
200
187
246
216
211
207
176
251
178
191
186
270
152
227
180
214
187
192
225
219
255
244
191
241
204
219
213
234
264
177
166
216
185
177
205
207
187
204
225
198
231
274
194
203
185
131
209
230
251
220
170
176
128
212
131
257
219
248
217
189
171
246
271
243
189
288
221
257
207
220
257
168
234
212
241
229
212
203
234
170
192
189
223
264
220
144
223
133
186
188
158
279
215
127
201
219
197
230
250
254
205
164
223
219
164
199
128
188
179
177
232
273
160
216
227
177
194
183
167
209
155
294
249
171
192
139
216
218
177
179
174
250
152
165
158
165
203
158
245
184
173
234
231
226
193
126
160
173
229
210
210
207
230
247
179
166
159
195
148
252
221
196
213
251
164
187
241
211
218
166
249
216
181
240
168
196
163
181
219
157
183
225
203
212
195
196
91
163
180
251
155
260
203
203
235
225
97
142
172
146
168
176
253
169
167
234
175
148
193
242
200
194
208
227
194
166
226
212
175
208
215
155
203
207
156
140
255
190
142
118
195
156
200
197
242
220
163
165
157
196
154
156
191
159
221
170
202
178
218
280
189
188
195
199
227
197
238
158
174
261
237
154
234
193
218
236
240
220
190
258
235
234
205
228
184
199
168
205
207
209
228
216
170
124
162
178
213
220
258
240
168
187
295
210
183
197
182
270
158
232
201
201
227
237
205
259
208
165
226
210
205
242
164
229
186
200
124
236
225
206
210
186
190
185
196
235
260
182
199
196
182
200
201
247
229
258
155
219
173
123
168
150
202
203
214
164
185
233
161
207
182
254
178
215
254
150
216
206
197
225
239
221
219
215
159
227
204
191
208
173
222
222
177
182
190
171
188
227
189
239
219
181
225
190
217
212
151
199
197
211
246
196
192
206
215
232
247
275
167
213
238
184
213
206
200
176
266
205
230
253
138
225
229
204
235
143
267
192
226
129
192
218
212
167
266
232
168
131
222
198
195
264
245
200
224
220
200
211
173
259
198
184
189
253
235
237
243
178
222
210
222
225
271
181
241
222
184
184
177
212
119
196
201
233
190
188
224
218
214
233
122
184
165
150
217
235
177
226
222
240
195
170
252
238
211
186
206
217
229
215
184
162
212
244
229
180
225
235
230
183
210
199
191
171
182
147
172
221
157
171
191
181
234
191
229
184
215
164
215
196
174
185
139
257
183
174
250
181
234
233
185
154
220
163
190
188
235
186
205
193
236
163
278
245
197
198
169
216
152
216
204
144
190
235
205
232
166
234
145
237
239
164
172
226
225
225
201
206
277
209
210
217
121
213
192
236
216
181
227
242
164
180
171
124
205
198
187
192
185
252
167
188
204
165
200
239
157
183
165
152
213
249
206
165
197
210
221
228
232
195
260
175
222
196
174
192
187
201
179
212
206
171
254
185
198
190
178
199
204
245
203
208
152
236
197
185
191
192
204
245
193
213
191
231
208
214
192
215
221
98
247
255
207
196
228
236
188
143
131
193
176
185
190
283
260
198
197
251
232
148
201
237
186
190
209
189
204
178
174
221
231
228
212
221
174
201
140
243
188
108
126
233
192
202
174
222
235
230
223
182
188
273
198
227
216
203
227
258
166
197
236
222
172
206
198
259
160
189
208
200
219
156
206
173
202
167
191
218
272
265
113
225
155
169
254
237
208
171
177
173
152
228
227
156
215
158
224
197
252
220
233
125
115
141
150
175
128
196
195
222
204
211
223
190
148
202
149
211
165
173
209
247
215
296
185
254
183
161
153
225
255
196
197
201
228
163
168
246
266
239
157
239
187
140
187
177
154
191
206
155
208
183
224
201
167
205
203
172
185
190
219
236
145
206
219
272
154
225
214
214
257
153
155
260
232
211
219
114
123
203
234
270
169
207
204
199
248
173
152
220
197
262
200
174
141
225
256
150
234
207
207
138
162
211
162
293
161
113
157
153
218
166
182
180
151
139
220
247
208
254
155
204
209
193
263
205
179
206
246
222
173
170
216
197
195
233
195
241
185
140
257
220
237
148
197
225
219
184
192
211
194
163
250
251
183
178
210
172
182
184
154
187
150
215
145
205
211
145
267
210
158
219
220
184
216
150
202
177
237
210
277
235
209
193
264
200
217
259
211
197
159
117
219
175
213
257
116
191
223
233
227
175
131
191
180
226
226
179
228
154
237
207
233
188
219
217
213
236
197
153
187
196
203
218
197
166
258
163
176
225
165
233
215
144
193
119
160
241
173
221
190
237
181
165
232
181
246
233
200
207
223
204
202
156
215
200
168
167
252
218
225
193
253
206
195
182
221
155
227
206
205
243
249
216
278
216
227
210
196
219
126
141
174
220
201
176
192
184
213
211
209
215
217
221
165
191
182
182
221
199
184
232
195
221
213
223
175
203
206
240
231
227
220
167
174
180
192
173
185
240
230
180
199
251
213
203
163
124
125
250
192
177
171
192
182
194
221
199
214
226
171
176
249
169
173
192
202
235
249
209
244
238
245
199
232
213
205
237
280
207
145
236
192
193
197
145
188
215
187
130
152
179
198
185
195
142
203
194
178
159
244
213
187
245
178
217
158
202
249
247
177
132
215
230
124
137
192
200
186
209
220
218
191
211
235
222
213
258
213
192
172
183
195
208
196
270
189
243
160
214
166
224
182
185
187
283
199
188
176
208
229
198
189
189
130
208
245
248
216
195
172
150
203
208
191
213
200
214
243
145
172
223
199
241
156
207
167
197
217
197
185
181
214
192
205
205
184
191
193
179
194
234
255
193
194
152
167
215
182
231
196
147
236
244
120
224
256
175
234
228
114
118
188
200
233
155
236
174
160
216
187
180
214
230
214
210
204
181
154
255
154
259
152
223
220
178
226
187
227
178
216
226
179
227
212
174
176
186
186
185
162
197
216
213
176
200
203
226
257
193
220
128
241
145
194
131
226
248
228
185
227
208
195
160
206
197
198
242
178
195
191
148
256
242
197
156
195
184
229
199
184
209
222
199
205
150
276
239
205
140
164
171
216
210
197
193
140
219
166
172
251
188
158
179
218
250
241
201
197
209
195
191
173
154
178
162
225
205
187
239
189
193
185
244
242
169
229
185
202
213
195
221
222
169
165
204
199
187
167
243
166
179
195
174
168
230
245
204
173
207
235
210
219
201
207
220
221
144
143
238
170
190
195
182
199
186
193
203
173
200
227
224
243
248
184
221
213
185
222
212
211
212
191
256
186
237
234
175
216
238
245
234
186
194
208
211
208
157
205
198
194
190
189
198
172
230
184
173
195
199
238
204
223
202
193
213
167
224
172
177
250
201
196
161
268
211
150
157
212
223
196
194
212
268
141
211
193
193
197
197
253
224
247
231
218
244
228
182
166
210
237
204
167
246
212
241
208
200
255
155
209
173
213
291
182
229
238
252
148
185
143
185
213
243
174
128
214
219
151
201
187
208
215
158
139
188
183
208
226
154
217
204
248
212
225
165
181
212
199
220
145
161
229
241
152
213
214
195
204
180
229
169
135
216
153
156
221
198
207
179
156
229
151
209
202
203
162
241
197
226
229
191
174
224
201
224
237
144
230
230
201
180
187
175
185
199
187
228
175
218
194
170
203
209
187
185
237
194
159
193
168
181
221
204
202
205
244
114
228
197
245
221
235
160
167
189
184
197
171
254
181
203
186
288
209
205
207
187
250
248
221
185
149
183
145
165
199
273
251
140
186
183
158
203
251
257
217
169
236
159
131
139
252
172
166
223
235
238
210
176
176
296
187
205
227
181
160
169
283
229
197
255
119
154
142
186
262
211
175
181
253
128
189
226
238
173
227
229
193
198
174
214
154
215
186
210
109
137
267
168
192
247
214
258
172
247
215
203
143
184
214
218
198
178
269
212
127
232
214
148
180
218
182
223
202
265
242
180
251
184
166
205
207
175
164
190
143
239
197
227
160
164
257
203
239
224
140
203
148
238
276
236
162
176
201
223
208
223
180
242
242
159
195
195
210
150
180
172
173
184
198
209
197
214
254
211
209
188
210
218
203
176
212
238
207
217
199
231
186
236
200
202
130
156
197
266
177
226
312
197
233
233
190
201
269
250
230
146
201
185
154
232
238
208
241
245
178
118
236
242
196
211
237
211
174
132
157
192
216
220
242
242
209
188
212
160
165
258
171
199
234
193
175
155
167
234
238
254
217
236
185
204
172
248
200
135
208
209
189
162
150
199
216
201
215
178
167
172
231
182
194
131
229
222
202
149
194
196
145
209
160
164
240
195
214
186
172
177
188
195
207
184
177
181
247
211
222
149
230
261
217
171
222
228
152
209
269
218
189
230
227
205
160
227
155
143
182
209
243
190
220
168
253
185
255
229
208
153
140
226
293
218
181
189
241
170
157
154
200
157
218
197
224
151
178
230
209
220
178
187
224
213
176
199
190
211
176
176
195
155
121
192
196
195
249
196
232
182
189
159
127
216
206
222
202
184
214
207
200
190
187
217
187
191
188
148
233
238
198
178
167
221
160
224
196
197
175
230
201
248
220
197
153
192
155
183
240
236
201
204
254
223
216
223
218
220
240
223
195
215
173
262
228
193
279
236
277
110
236
229
250
182
196
261
201
189
206
172
193
223
169
144
208
206
216
222
205
199
142
215
205
198
182
223
183
160
204
212
252
214
182
172
180
212
165
153
209
209
211
203
219
251
191
160
233
225
236
232
203
279
192
185
193
178
211
195
186
256
228
176
199
229
160
260
157
114
181
205
170
222
229
230
172
273
296
113
261
224
190
175
193
205
157
222
228
256
190
167
246
220
232
174
230
189
177
162
138
256
176
152
245
238
204
223
129
258
182
205
197
175
231
207
203
211
215
205
236
146
209
259
237
194
247
187
209
194
223
228
228
217
232
191
231
151
243
221
176
209
168
221
228
150
144
156
190
203
185
176
163
251
166
194
203
200
151
196
246
235
204
171
184
198
185
169
239
173
200
216
238
205
186
189
223
204
213
221
177
194
200
253
169
211
167
139
212
153
197
236
242
173
209
149
176
218
231
134
198
193
203
155
239
173
189
190
123
213
145
177
213
111
225
174
169
219
196
229
123
218
124
194
230
137
254
206
189
207
222
209
271
172
181
210
206
176
212
182
205
209
217
214
247
201
176
218
151
161
176
162
209
209
209
212
233
227
140
194
190
243
230
254
255
158
222
255
206
184
158
179
211
232
135
178
170
145
168
197
193
223
244
204
184
153
233
197
197
103
202
219
233
205
219
248
165
200
238
226
263
180
134
190
230
204
168
215
177
219
184
153
200
184
279
218
209
253
303
190
154
190
212
185
209
151
203
217
171
242
273
267
159
237
186
185
190
227
191
183
192
198
163
137
179
176
236
159
220
179
205
178
227
181
246
220
214
170
195
162
163
204
91
164
205
234
237
208
222
183
166
203
132
240
205
165
238
228
247
122
200
249
205
223
154
182
175
198
257
181
231
182
239
210
200
175
184
186
246
194
174
208
210
185
106
250
192
200
214
189
126
130
226
242
121
181
220
207
226
211
215
165
179
228
227
211
171
188
217
218
202
177
272
204
195
150
269
225
173
184
181
217
153
213
201
199
221
218
232
206
152
223
270
203
183
214
136
184
172
163
138
149
232
169
183
182
311
197
251
185
165
124
138
198
202
203
169
257
203
123
276
214
185
203
177
160
223
148
178
244
221
189
201
189
174
125
217
205
180
203
140
137
171
236
161
171
222
159
192
242
154
224
135
166
238
168
183
148
167
228
182
208
219
211
232
255
239
246
189
129
231
181
217
282
171
163
207
121
180
167
147
255
183
225
132
195
184
226
194
140
195
195
265
169
281
180
225
265
182
196
198
223
243
176
214
206
256
264
257
193
219
203
218
206
155
90
163
140
267
186
221
206
192
184
169
236
205
147
198
160
166
145
205
139
209
211
211
195
133
200
234
173
193
141
243
149
241
236
256
178
165
187
175
183
187
169
144
118
161
204
218
129
211
241
200
175
212
221
191
208
198
198
152
137
171
212
243
172
137
220
252
153
151
165
141
282
156
214
194
207
190
265
175
170
209
157
146
150
169
194
273
180
189
171
249
176
172
211
219
251
215
271
188
168
235
139
138
203
205
229
255
188
178
207
172
214
159
209
189
131
146
229
221
201
163
147
219
204
181
219
68
221
191
196
176
119
155
164
180
200
249
211
217
158
184
160
130
218
175
164
227
183
160
232
186
263
212
185
178
167
208
228
257
221
227
190
281
225
241
234
209
138
125
212
217
255
214
220
174
209
235
207
190
153
236
240
252
175
228
250
201
166
167
239
181
216
222
270
212
247
165
213
217
212
199
141
183
216
118
211
242
231
202
176
179
234
257
226
185
150
260
176
151
221
138
211
216
221
170
214
205
157
207
250
166
210
223
247
216
237
187
165
224
188
261
151
192
191
142
165
215
239
252
237
181
240
169
181
264
172
218
171
216
215
165
197
208
230
244
157
180
204
186
238
243
196
218
192
214
249
227
216
179
198
233
165
229
210
171
171
175
226
177
259
198
155
287
178
211
177
231
187
171
189
181
217
241
164
165
162
183
199
211
247
180
164
233
168
205
187
204
213
220
244
241
180
218
184
224
138
199
255
162
211
186
194
161
229
191
160
124
212
168
215
211
192
241
198
223
207
202
172
235
131
170
185
199
301
138
155
216
250
201
230
234
213
200
196
163
200
163
184
196
165
210
178
263
232
191
213
183
272
157
191
163
169
217
216
170
196
219
228
257
204
174
178
199
204
218
221
237
172
213
188
195
201
224
205
227
258
183
238
197
219
182
281
236
230
210
235
207
193
158
218
223
166
189
204
236
237
200
152
200
179
235
136
187
199
170
157
149
154
238
201
131
265
214
159
221
215
205
224
135
236
182
192
201
176
218
216
248
159
200
196
203
193
171
215
255
265
194
188
186
223
194
163
171
209
224
231
196
177
181
156
189
165
120
266
205
180
191
219
152
226
217
194
245
210
229
219
185
244
143
208
237
186
247
192
222
267
206
216
240
262
239
188
214
218
235
199
232
202
215
240
214
197
240
179
146
203
236
215
179
228
247
256
203
179
167
245
230
247
262
194
166
180
242
226
174
138
266
176
148
299
223
229
186
175
229
189
185
219
197
265
237
187
190
189
246
230
141
189
244
220
241
211
201
206
177
192
190
184
198
184
155
227
198
144
202
215
186
230
185
222
239
155
196
210
126
228
223
262
216
167
251
240
166
184
129
192
211
155
214
224
185
192
196
165
217
134
216
212
254
184
234
184
216
204
186
206
136
195
221
239
206
162
211
216
189
222
205
219
191
260
209
233
182
223
164
247
139
228
165
157
253
181
166
224
137
205
190
160
178
217
171
163
196
191
173
203
193
188
254
172
210
223
221
176
224
231
135
180
233
190
194
217
246
169
170
209
202
207
208
187
159
223
210
211
115
175
267
284
164
153
225
160
184
207
230
191
180
144
214
220
167
217
218
222
181
203
171
192
206
168
135
189
186
223
217
252
191
191
164
225
255
249
199
177
259
165
178
199
206
132
239
282
155
210
169
249
193
217
230
221
178
165
218
183
170
177
188
151
241
187
185
248
225
167
202
193
155
193
194
197
137
225
202
222
212
202
217
198
201
227
182
241
166
223
152
156
179
192
161
188
222
279
198
241
193
234
255
180
204
179
186
148
192
225
212
174
151
237
226
238
186
209
298
181
203
168
136
196
256
214
185
209
193
220
204
167
180
222
188
172
131
223
215
248
173
209
243
234
180
222
148
227
246
205
242
229
178
248
205
218
144
238
201
160
229
231
169
253
180
163
205
218
237
241
252
109
190
204
174
201
228
204
251
168
184
245
208
251
242
196
183
259
181
178
153
197
152
223
200
250
191
182
200
209
276
170
215
167
183
196
206
201
170
162
267
228
186
229
173
187
145
210
217
199
220
262
206
125
258
181
177
194
180
179
185
175
184
167
189
227
247
220
190
208
153
204
229
234
163
229
215
190
178
218
174
197
226
193
221
152
139
204
263
207
193
226
252
223
178
238
172
235
197
215
174
217
185
211
143
182
195
220
154
230
167
163
237
164
182
184
198
210
271
203
192
213
224
207
241
188
223
129
170
203
154
214
227
187
245
119
204
190
212
204
237
159
217
166
223
174
174
249
168
227
136
211
200
179
182
197
190
159
153
249
196
261
198
214
165
153
193
236
249
176
196
234
155
218
200
212
229
182
192
195
247
202
261
156
140
238
173
148
230
185
174
168
198
215
204
241
176
208
247
216
190
186
185
180
199
225
214
226
259
117
173
204
75
261
199
206
195
168
131
247
240
187
229
143
212
243
205
240
209
179
214
169
186
253
180
108
200
196
235
190
226
231
192
193
234
247
192
249
204
217
171
214
212
173
148
239
209
249
189
190
151
201
166
203
162
241
176
214
200
258
258
212
232
218
140
159
213
193
213
144
273
217
221
210
207
179
215
164
232
183
174
229
212
138
200
227
214
157
218
174
164
242
190
204
192
188
211
170
215
189
150
206
253
208
149
265
184
109
215
169
270
167
204
232
170
154
207
148
185
176
234
229
190
267
162
186
210
147
183
244
177
211
225
201
144
237
260
191
172
199
253
185
161
204
126
185
165
183
204
244
164
232
231
192
214
182
201
191
176
192
208
196
222
238
154
132
199
202
238
207
163
200
206
163
211
174
204
173
235
171
223
199
198
205
222
225
247
225
172
271
183
216
226
192
175
232
183
169
123
163
216
164
257
220
201
151
145
231
172
253
219
141
184
244
229
149
161
235
136
180
193
175
131
182
192
244
222
235
164
166
155
165
210
145
176
205
193
158
176
159
240
208
206
182
259
184
157
220
230
165
201
120
231
249
180
235
166
220
179
195
115
166
188
224
140
139
175
200
179
197
176
232
231
174
196
196
165
228
154
154
232
202
213
144
191
162
241
227
249
225
240
173
151
223
215
137
245
258
183
211
263
224
239
212
177
125
184
157
186
222
190
269
233
195
212
240
268
234
159
210
151
245
167
151
227
118
153
235
218
201
162
149
199
225
193
223
165
128
197
120
176
232
246
229
184
225
185
183
177
101
190
191
197
215
223
218
246
186
223
208
182
168
181
228
216
213
229
222
209
182
123
183
218
171
179
181
130
195
185
164
184
183
233
254
199
232
211
175
217
158
214
216
176
211
205
198
203
130
180
183
217
197
214
187
184
204
173
191
206
248
190
231
241
186
253
159
207
207
197
208
231
180
130
186
198
215
220
169
219
229
195
185
157
225
172
155
182
175
200
141
203
179
182
190
234
198
226
187
180
175
215
155
144
231
187
240
239
193
256
232
186
186
211
215
269
165
159
181
215
150
195
210
239
201
170
217
171
216
164
205
178
152
213
113
169
185
168
188
181
189
226
233
227
232
181
244
201
176
173
231
142
225
193
295
219
172
179
190
192
187
169
199
214
262
227
207
187
219
238
179
156
226
181
209
179
223
166
212
187
207
187
156
131
227
218
153
247
168
166
178
216
200
116
210
232
253
173
210
268
248
177
185
207
179
167
182
165
211
166
189
160
194
229
200
220
235
255
183
157
179
140
217
178
213
122
181
225
191
230
180
208
152
232
177
191
237
153
187
233
207
232
218
221
205
242
213
169
147
239
165
196
171
183
194
215
232
207
199
167
208
198
169
217
165
204
204
182
238
168
192
181
180
285
253
250
184
171
210
212
211
214
156
151
277
164
141
239
258
209
169
219
124
271
229
271
219
175
233
209
190
152
258
160
183
161
222
178
199
172
215
166
235
178
199
155
215
150
196
242
231
198
191
238
219
160
241
132
153
219
236
171
234
165
223
240
233
245
260
232
183
169
126
239
209
159
160
243
231
153
176
208
198
163
194
209
231
180
168
286
187
206
240
177
134
229
225
171
194
190
198
214
185
193
205
143
232
175
184
258
153
175
159
240
211
176
249
183
184
224
202
217
226
166
235
156
277
219
205
184
196
201
197
226
178
216
204
252
255
238
216
142
195
144
220
253
278
185
212
186
247
204
228
251
243
201
200
250
163
271
184
195
178
273
195
283
210
190
218
158
214
245
228
228
219
178
213
172
125
244
231
232
149
244
225
190
191
211
236
241
185
216
220
206
226
191
121
189
172
198
213
197
216
181
189
221
261
182
202
231
195
174
195
198
215
175
171
189
239
198
185
190
255
251
214
145
205
202
183
173
229
81
141
170
235
209
253
199
167
180
155
203
237
219
245
217
157
212
203
125
205
180
206
215
227
216
170
198
190
228
279
167
208
223
245
226
257
178
221
165
210
193
220
206
159
176
182
235
269
203
228
202
249
164
186
213
237
112
259
187
228
184
172
201
198
178
175
248
245
173
166
154
206
181
189
236
185
149
220
201
148
256
180
132
268
214
153
166
182
261
177
210
212
177
205
182
140
201
206
188
203
196
194
222
235
219
228
161
256
222
212
200
220
222
242
177
138
99
244
229
159
159
141
163
218
220
160
178
195
235
225
210
213
185
206
214
150
194
120
179
209
212
187
160
174
220
209
192
227
182
172
206
204
199
138
198
185
195
219
125
179
118
162
258
214
209
228
192
196
232
202
206
129
272
159
206
151
159
172
178
218
253
215
165
205
167
230
248
227
195
258
261
168
197
200
184
224
119
193
189
209
235
170
221
175
162
176
180
195
161
173
199
206
180
193
235
221
153
204
180
187
155
108
195
239
191
175
183
206
147
181
169
203
182
224
186
204
232
230
234
209
221
182
173
219
159
146
236
200
118
219
225
170
156
217
218
177
202
174
225
233
243
162
187
238
221
214
202
251
173
215
150
171
237
236
217
208
236
206
211
142
221
199
268
271
141
139
191
211
149
228
189
203
258
201
229
171
236
206
189
178
223
179
204
194
204
274
144
168
233
167
155
190
157
211
206
264
198
200
139
193
234
217
163
259
168
188
186
186
228
251
266
213
173
228
219
227
227
228
224
220
237
237
222
239
190
208
142
190
194
166
242
204
210
262
198
191
261
191
204
169
206
138
204
226
218
140
221
268
151
175
179
234
204
163
213
163
226
182
168
149
211
228
251
181
222
192
170
245
156
228
191
253
202
157
162
236
216
217
201
250
168
204
127
169
214
271
180
141
170
176
119
234
218
161
230
215
244
174
219
177
236
163
232
192
231
207
255
245
181
170
215
190
139
202
132
168
226
203
206
184
180
280
233
210
175
214
232
202
182
225
213
157
249
209
204
206
171
177
226
180
172
205
248
228
241
126
211
216
149
220
245
151
308
211
216
194
219
186
227
184
229
227
203
245
261
250
177
232
218
210
107
194
209
229
182
224
169
236
207
187
159
210
205
207
225
228
173
207
202
224
201
175
197
142
191
215
252
173
134
214
236
208
129
200
213
147
220
201
205
212
229
197
192
124
219
215
268
223
204
224
168
228
276
182
218
204
244
157
158
238
162
200
200
162
234
199
170
240
159
164
235
242
194
150
169
151
215
159
198
302
191
213
249
233
233
177
274
296
172
236
227
218
293
211
207
124
181
201
160
200
174
223
189
149
157
169
216
172
216
183
244
188
196
174
156
237
162
152
187
259
234
213
201
237
115
198
233
172
231
162
201
226
251
156
204
181
244
215
205
193
227
217
234
162
233
203
177
205
210
170
169
294
185
205
239
235
201
208
220
185
165
219
191
180
225
173
203
215
177
195
202
214
153
230
195
206
175
243
192
153
241
203
226
240
217
226
213
171
218
247
183
218
177
173
186
214
200
205
164
194
258
212
217
187
196
133
176
146
210
142
226
255
217
242
259
159
156
257
192
184
162
228
241
217
287
242
239
212
233
161
220
197
168
198
201
158
181
213
231
207
150
215
205
205
296
145
218
127
248
164
170
234
220
222
170
206
191
224
188
201
237
184
162
245
212
209
171
226
228
229
192
222
205
238
212
219
228
156
152
206
170
191
220
255
213
201
225
248
237
249
205
206
208
253
187
197
219
235
199
171
208
149
198
217
203
137
237
227
208
215
166
207
161
185
159
228
187
172
167
190
195
185
223
205
152
165
205
195
207
163
148
197
188
183
182
207
157
233
170
218
214
223
204
247
167
120
220
182
249
211
173
219
233
177
236
233
266
212
176
125
219
228
217
173
218
209
194
214
228
120
185
209
217
187
216
195
180
142
249
149
161
139
203
174
230
178
235
196
197
217
147
223
201
174
150
222
181
247
191
230
217
116
185
219
167
201
183
139
166
242
180
241
169
186
216
152
214
178
226
222
214
193
197
185
199
208
220
198
250
157
139
190
250
265
240
252
278
218
160
193
159
197
201
219
209
260
156
191
170
197
184
189
226
267
189
199
121
226
178
128
229
251
222
249
195
224
196
259
188
192
180
191
171
220
243
171
164
204
209
195
202
165
169
122
207
243
203
185
182
175
202
133
182
180
222
203
213
159
150
189
222
190
232
229
217
162
192
225
174
205
212
192
216
214
171
239
244
220
152
200
222
249
221
222
147
228
179
217
253
215
216
245
194
191
252
177
172
210
153
205
188
171
133
204
106
199
194
189
162
186
271
166
225
229
220
209
183
161
192
204
242
123
182
190
168
199
213
151
211
142
280
230
204
257
230
197
246
187
178
230
255
225
133
185
160
204
212
197
201
214
213
183
183
183
229
264
173
171
249
225
199
189
206
195
223
165
227
213
198
148
290
217
238
178
212
195
162
250
223
240
210
155
166
187
162
251
177
189
229
201
203
223
174
201
201
204
221
182
242
203
221
177
172
214
221
205
259
212
171
266
182
203
184
210
190
120
194
269
179
158
249
187
206
228
212
191
144
207
162
155
211
170
190
214
171
135
175
219
240
206
226
241
216
217
100
158
170
225
184
211
187
206
265
200
185
233
162
227
179
208
154
193
160
144
198
215
264
234
178
207
197
212
241
127
211
237
158
213
242
230
134
189
270
223
207
237
195
229
151
201
155
244
196
220
145
226
143
165
218
213
240
140
183
201
211
198
198
203
268
163
203
286
215
199
164
197
170
262
208
225
243
226
192
237
170
171
242
220
222
214
203
156
179
225
162
171
207
251
179
233
223
233
141
241
155
135
197
193
178
138
197
237
214
214
153
243
217
158
169
186
208
217
187
122
191
198
215
170
182
218
177
134
220
152
234
202
144
153
196
235
225
180
174
235
188
217
126
138
227
169
184
157
213
199
211
206
165
149
256
123
184
192
212
138
208
193
179
130
242
160
168
133
156
201
212
183
270
142
239
180
232
226
213
197
230
223
187
258
248
229
165
219
172
238
211
217
206
155
208
223
197
214
197
227
232
216
181
186
182
156
210
231
176
187
188
164
142
184
233
167
244
168
229
181
175
146
191
199
212
194
174
192
213
239
219
192
170
163
194
191
182
199
262
227
165
183
165
170
228
147
193
261
164
182
181
185
188
209
249
79
235
210
250
212
145
218
151
206
164
180
194
175
184
235
232
230
204
179
209
231
195
229
217
215
154
169
177
210
170
174
254
206
207
207
148
207
231
214
183
234
186
153
196
244
190
167
205
171
161
221
227
192
178
231
246
203
223
203
265
144
176
180
123
226
198
194
221
208
195
154
211
205
114
232
137
201
175
226
211
181
204
121
155
189
218
187
202
226
184
172
193
168
224
171
147
200
251
161
180
141
217
224
194
205
145
205
251
195
233
175
174
195
146
192
141
162
178
230
249
152
215
219
192
176
252
225
173
249
234
181
239
213
200
242
252
257
191
242
186
121
214
192
164
205
237
189
140
250
216
188
188
192
215
211
159
174
211
174
168
219
175
174
199
201
246
202
254
231
143
243
253
191
201
179
216
232
197
214
242
206
206
219
215
257
293
223
150
217
203
198
190
162
184
228
215
199
217
162
174
197
258
273
208
164
247
191
188
186
146
133
189
211
256
204
202
176
207
172
197
193
186
179
215
217
164
167
175
199
166
238
153
184
200
182
183
102
218
156
188
180
191
222
173
166
182
235
190
215
237
199
153
222
235
201
208
153
257
215
217
216
176
212
232
210
194
193
203
183
228
207
224
178
206
243
187
193
210
265
138
165
243
188
211
195
205
190
158
99
178
259
212
206
182
243
176
204
118
215
255
221
172
122
237
161
184
126
203
183
235
204
258
184
172
209
184
202
199
172
215
157
235
163
246
179
232
239
220
192
175
193
224
198
222
254
223
218
233
204
227
224
236
175
241
178
190
152
202
176
261
223
269
206
252
195
186
238
155
234
234
198
239
240
265
264
219
277
202
217
205
270
171
227
250
230
216
223
202
214
118
194
194
185
203
229
212
248
268
255
241
160
218
214
188
239
181
155
201
236
233
194
199
202
169
173
204
211
193
183
241
251
226
193
245
294
201
211
146
196
201
160
157
193
224
220
201
127
194
229
211
174
244
213
184
236
233
155
168
168
209
184
225
220
228
177
212
208
193
282
171
177
246
179
227
170
231
138
110
162
186
210
169
219
194
133
202
167
155
163
206
209
236
217
203
172
231
209
202
199
231
199
228
221
194
180
213
254
151
227
155
232
137
195
255
207
262
182
225
184
210
186
180
181
193
182
211
165
213
196
267
187
237
223
182
238
207
138
169
182
162
215
223
175
176
208
177
246
179
225
171
182
226
160
252
237
169
196
189
183
220
233
241
180
172
160
145
211
253
208
215
150
188
177
168
178
238
225
223
254
228
216
169
220
201
237
159
221
128
209
222
185
275
184
200
240
141
230
190
172
153
191
260
266
132
225
167
239
220
153
194
232
197
232
176
253
123
197
172
187
230
182
177
220
276
229
204
220
181
246
135
254
203
204
184
211
154
222
249
181
155
140
190
209
195
166
205
200
250
225
198
141
210
191
185
237
159
172
211
246
155
228
225
153
186
189
242
202
186
234
226
220
225
211
192
197
142
167
178
177
235
181
148
199
190
155
256
220
150
168
237
208
222
225
152
204
113
158
195
233
257
239
181
190
198
203
239
207
203
177
224
97
234
243
178
195
140
201
162
193
274
183
249
207
260
168
207
202
182
188
276
172
197
169
198
209
203
173
236
218
160
147
185
242
181
218
220
221
228
213
200
180
217
135
217
202
211
211
202
132
203
210
161
221
205
221
171
220
160
165
189
228
207
192
204
201
210
121
251
185
203
222
262
181
174
238
203
221
189
193
165
148
225
246
189
159
163
201
221
148
176
227
171
233
171
201
205
195
181
175
199
236
236
181
106
211
247
237
210
222
235
227
232
219
139
255
161
189
198
190
253
123
180
207
192
221
278
208
219
136
230
156
189
191
225
234
235
244
224
241
187
189
252
162
226
233
149
161
189
171
130
156
241
175
192
200
260
145
195
203
230
153
125
166
265
216
208
224
173
189
202
189
186
228
239
250
176
215
260
238
188
232
124
227
179
232
205
226
230
189
201
188
222
236
171
205
233
148
212
184
187
200
181
240
177
229
210
202
201
120
148
222
203
212
103
186
204
256
248
249
247
107
245
197
213
209
145
243
216
281
236
252
159
181
219
175
198
236
229
140
185
181
195
217
230
179
257
261
188
180
127
171
221
184
219
220
205
248
252
166
201
147
205
229
198
215
263
217
181
183
170
178
171
210
206
167
162
291
157
159
165
246
190
132
162
194
158
203
169
210
208
219
184
222
211
216
224
220
197
166
184
258
224
196
246
165
192
170
136
188
228
217
222
251
255
257
222
191
236
184
198
241
210
226
220
180
226
196
177
237
171
194
164
183
208
228
195
206
213
240
216
189
212
169
193
187
202
271
192
111
257
149
147
188
197
196
173
269
238
221
224
225
247
209
140
234
210
225
185
182
162
190
198
200
235
224
170
178
162
201
169
200
181
211
167
177
149
207
210
196
183
193
173
216
247
214
158
226
204
200
268
263
174
177
149
198
229
139
255
217
299
227
223
193
154
168
211
272
205
235
197
216
228
200
216
206
141
164
180
190
212
205
173
197
150
242
217
173
172
160
268
198
257
194
252
166
193
238
181
197
227
201
227
200
146
266
179
152
220
185
233
207
177
182
178
193
193
152
196
157
171
186
156
143
191
215
238
210
146
186
187
200
213
188
179
206
164
175
257
160
150
256
267
200
237
220
164
165
196
223
203
259
205
249
254
202
165
132
228
183
208
167
121
181
134
207
206
194
167
196
158
205
173
201
191
269
165
223
194
256
218
165
185
212
157
204
224
148
216
243
250
208
245
168
215
245
192
241
190
184
181
178
138
160
210
226
281
199
225
177
214
183
221
155
243
221
199
204
148
213
197
227
195
240
232
235
237
209
215
177
236
222
166
216
178
151
206
200
202
199
220
142
175
215
183
232
170
143
216
253
213
231
197
184
245
160
154
226
167
173
147
157
192
155
199
161
265
234
191
207
171
192
251
252
209
141
234
137
145
180
254
165
221
168
160
154
194
162
215
150
234
196
189
253
189
171
239
212
152
239
151
189
178
212
215
179
204
223
249
215
138
186
203
249
214
247
155
222
213
251
219
194
207
230
167
244
177
151
229
189
236
231
214
212
208
210
199
207
251
239
214
198
253
209
230
219
217
228
155
213
206
177
156
175
244
171
114
203
213
200
198
153
166
142
236
192
173
248
254
188
236
209
283
219
199
135
215
207
268
201
153
161
261
195
124
145
209
157
219
223
198
178
158
213
146
213
231
221
154
190
160
181
141
200
156
216
186
245
197
171
162
239
158
138
206
185
181
174
206
232
200
220
215
246
245
167
153
172
235
171
163
142
172
197
177
122
254
214
205
220
257
252
218
186
156
238
158
226
219
105
180
179
180
217
153
161
203
193
147
216
184
181
250
221
163
172
200
253
226
155
247
196
220
175
177
184
218
205
162
173
234
154
184
255
122
148
208
280
173
211
179
231
171
182
183
241
233
162
164
205
206
191
219
188
165
253
201
195
223
171
259
200
216
237
181
180
211
199
132
224
191
192
209
145
243
126
192
245
217
227
189
150
217
203
228
215
249
185
205
187
234
202
170
190
195
203
209
203
166
197
172
194
196
198
163
229
204
187
218
230
132
194
250
196
253
161
215
229
225
135
246
156
218
125
221
209
222
226
229
247
204
238
222
174
92
154
234
149
186
198
179
258
213
231
139
253
162
230
188
182
253
216
227
201
168
253
161
145
131
207
219
185
194
160
225
216
145
195
201
175
224
251
184
208
177
235
234
172
202
135
280
139
181
233
176
216
207
196
170
183
188
206
198
196
205
224
192
244
213
209
232
145
229
200
215
235
230
238
260
198
178
200
217
171
182
227
132
232
213
236
215
56
167
190
244
140
250
177
243
223
154
151
219
208
185
255
212
127
216
184
188
244
215
145
225
195
244
187
190
193
181
237
222
157
209
229
173
204
202
226
187
139
184
183
189
192
224
199
253
226
301
179
187
209
228
214
152
276
144
190
284
136
251
212
163
186
127
231
284
170
216
146
210
200
255
220
208
150
120
185
249
166
181
181
189
211
208
221
161
157
167
216
213
255
138
222
240
206
189
213
178
228
206
146
218
230
241
210
196
191
215
228
228
166
230
163
187
191
133
194
242
266
177
223
233
203
145
173
288
196
226
200
157
206
161
239
229
209
216
188
135
208
208
238
197
234
178
168
94
163
222
252
164
154
207
180
177
264
179
189
216
243
172
172
164
197
227
222
169
219
179
191
149
164
222
225
228
208
199
207
171
173
196
162
214
214
222
224
166
211
214
203
181
255
137
160
138
199
217
226
186
215
165
184
179
151
167
208
226
214
179
197
220
187
195
208
226
210
170
209
201
225
191
158
181
186
198
165
138
192
186
150
163
146
197
214
120
170
184
246
231
182
236
159
212
214
196
214
216
188
190
195
246
202
189
230
185
248
165
198
224
197
215
240
200
214
256
261
227
182
175
230
196
191
253
145
203
203
262
154
179
226
186
204
226
158
132
161
160
271
204
175
188
192
164
147
245
218
136
177
265
156
160
226
150
188
200
223
217
187
183
205
203
193
146
233
233
241
259
188
222
212
201
242
203
151
240
227
233
238
155
188
234
181
189
114
130
160
207
228
266
181
193
153
177
169
193
185
130
170
146
161
257
187
212
252
190
198
280
180
187
253
182
236
217
202
134
185
263
243
170
185
165
143
176
133
261
206
214
141
189
191
180
198
223
207
167
183
240
251
175
198
234
206
162
227
136
256
164
220
134
270
235
215
208
175
235
244
160
171
167
243
168
223
131
229
160
244
183
195
202
200
265
199
124
178
206
224
208
209
172
187
154
147
208
248
222
233
227
180
171
245
238
147
229
150
183
195
156
235
210
214
236
176
258
228
184
189
240
199
187
203
207
195
198
161
164
139
171
158
154
201
149
207
247
201
165
183
149
239
221
185
193
224
223
157
223
160
216
187
206
148
191
224
225
182
240
194
133
176
250
227
114
159
160
216
227
197
239
217
229
197
222
214
195
209
146
263
256
194
167
233
244
191
188
131
229
231
180
215
203
214
193
186
246
199
222
200
171
202
181
205
168
216
172
202
178
238
152
237
173
233
150
244
226
268
226
214
242
207
227
222
205
203
205
210
150
198
246
192
193
223
175
213
248
172
219
130
187
207
153
184
212
194
208
252
180
213
280
158
198
234
259
243
204
235
218
149
154
202
277
288
203
195
105
236
233
239
122
144
189
225
193
191
172
157
180
188
264
229
221
140
202
189
285
210
240
178
204
183
277
212
222
199
232
216
228
201
209
168
179
172
177
251
179
226
194
211
227
185
174
205
244
218
248
226
221
220
171
212
274
243
190
224
198
214
147
234
173
241
204
208
249
224
206
177
252
176
220
174
258
212
211
210
111
182
209
186
212
178
174
206
168
233
232
216
201
227
223
177
195
213
200
154
259
177
169
176
223
173
186
236
193
173
204
154
196
191
216
180
141
258
207
171
185
168
115
207
235
186
133
215
127
234
156
202
232
246
230
236
264
234
221
211
233
214
244
205
228
169
175
207
206
180
199
230
186
215
208
225
228
156
178
244
218
202
218
169
234
207
231
204
154
269
249
162
165
172
187
232
201
254
186
147
216
239
183
206
195
178
196
155
171
156
135
271
239
170
243
155
167
241
245
236
187
183
199
207
198
161
244
250
188
202
197
217
209
157
245
207
246
159
198
181
194
119
189
209
165
202
232
202
294
213
212
263
177
245
239
183
188
168
270
250
213
165
173
151
183
220
251
238
184
242
267
145
238
235
274
247
242
209
190
250
224
118
118
220
203
199
204
236
232
173
89
223
212
138
186
268
223
189
221
182
284
229
173
232
142
191
182
166
180
191
271
204
193
168
224
217
141
143
210
149
177
240
239
216
218
188
221
172
243
167
175
164
173
166
235
239
156
257
205
169
160
174
189
160
164
185
220
226
223
172
165
232
158
178
249
221
217
180
225
184
195
200
162
217
220
203
231
227
159
183
238
226
196
229
214
191
211
219
219
212
177
158
180
232
181
252
167
211
214
228
191
204
217
236
253
188
201
192
179
184
211
200
153
212
224
153
191
198
170
221
158
286
164
226
183
229
233
157
217
231
208
229
195
141
139
185
242
209
211
191
174
225
211
198
172
156
203
215
184
138
236
209
245
186
206
175
193
237
187
163
220
205
201
197
192
192
229
138
205
124
203
150
168
182
205
168
214
181
198
115
175
176
159
239
217
170
186
202
133
141
196
245
188
172
213
114
202
176
189
234
169
219
197
210
214
191
166
230
154
243
221
255
250
180
207
154
170
201
197
174
189
246
190
178
233
157
205
224
231
101
202
174
248
151
204
210
148
185
142
169
165
215
155
169
174
235
227
194
197
189
170
172
214
201
158
238
222
216
155
167
188
178
184
226
181
236
168
219
224
252
215
175
140
180
252
258
181
223
202
213
218
177
193
198
204
151
159
243
234
231
203
176
168
160
128
184
191
130
167
179
188
224
294
214
205
156
162
208
195
219
220
143
165
156
233
212
191
221
245
194
228
182
220
244
217
161
167
161
225
194
229
121
183
271
193
177
187
197
157
232
244
224
224
253
144
177
184
211
215
197
190
251
272
215
189
133
238
174
149
228
238
245
208
249
249
208
212
216
191
213
256
146
195
180
159
178
251
233
246
214
211
181
192
147
181
190
242
238
258
181
211
201
178
143
196
197
200
221
247
172
155
190
207
246
179
205
200
195
152
251
165
183
248
234
238
209
138
188
163
221
143
265
185
187
208
178
189
229
222
245
176
215
167
244
164
254
240
171
193
182
197
232
189
193
241
231
202
197
192
205
143
245
179
152
179
163
164
261
229
196
189
165
283
150
254
167
130
238
184
240
168
195
214
218
187
227
192
174
152
218
221
207
123
144
233
169
239
239
206
150
193
224
175
221
192
290
237
213
155
205
263
118
140
196
246
213
225
189
287
172
207
173
215
175
207
215
191
195
160
210
159
198
224
189
228
176
164
214
164
181
234
177
204
184
179
214
187
170
223
205
151
198
185
233
203
185
148
256
166
157
222
138
254
188
184
105
241
181
147
206
244
137
205
178
165
209
181
253
210
202
181
181
226
187
201
189
254
199
210
192
235
207
253
210
241
169
207
220
207
162
157
209
273
226
207
181
258
162
205
181
205
233
202
201
213
227
194
238
203
169
243
168
232
198
162
205
232
188
217
227
248
213
207
215
236
198
226
224
208
240
208
211
190
176
213
156
203
163
189
237
278
272
185
204
250
182
149
246
202
127
247
187
200
154
132
232
184
169
184
166
213
218
166
180
226
197
235
232
195
198
249
241
201
248
151
236
155
214
198
183
194
225
284
189
179
185
175
204
216
216
219
145
159
242
164
219
222
200
199
121
237
191
203
160
208
236
211
150
209
244
143
194
205
207
214
194
246
145
195
225
212
143
236
159
207
259
131
298
209
246
179
203
182
207
166
152
187
179
188
102
236
242
179
174
198
193
158
275
166
211
206
177
193
229
193
263
142
246
189
196
136
248
233
162
156
191
176
206
234
192
281
144
171
219
157
201
207
238
130
208
127
209
258
208
142
218
200
211
219
222
216
219
159
177
159
221
176
177
230
142
212
155
189
172
190
205
241
109
265
194
179
171
203
229
183
224
205
175
220
202
208
222
183
225
187
163
194
231
256
190
133
221
167
190
212
162
207
193
260
252
208
234
239
203
272
167
235
260
239
191
168
249
196
264
220
136
251
207
153
179
248
131
118
138
192
191
229
229
280
212
243
201
218
150
257
211
211
175
225
177
218
216
173
233
215
207
233
181
200
165
194
235
211
198
165
187
212
181
241
226
187
249
263
227
222
204
192
255
173
181
155
133
248
238
143
179
187
150
164
197
188
164
162
215
207
222
221
207
167
228
174
169
217
220
209
222
201
218
214
240
217
229
178
162
205
172
235
171
208
178
162
188
192
207
215
208
234
142
237
146
255
177
203
177
205
168
218
257
196
166
221
210
167
232
218
112
250
223
208
224
159
254
211
193
211
209
231
131
199
153
141
164
192
175
180
186
135
189
226
220
122
200
236
168
250
198
210
207
248
224
142
146
195
177
186
202
171
257
199
210
186
228
223
216
221
213
110
210
228
127
160
168
214
168
202
170
231
198
189
175
222
172
205
264
209
218
208
124
190
183
196
218
236
189
157
224
152
169
200
173
215
155
263
231
219
240
177
164
236
233
220
244
233
136
233
132
144
160
259
198
233
232
234
232
170
226
184
190
196
197
241
184
186
207
254
199
144
189
222
159
264
243
154
240
195
217
196
199
190
182
192
175
215
183
185
199
156
241
201
236
193
239
166
199
215
172
249
210
235
164
215
219
235
182
203
150
208
210
200
205
167
234
234
202
166
206
216
186
172
191
226
212
204
223
227
171
226
188
159
185
183
217
250
159
209
190
202
263
232
241
235
181
211
198
163
185
251
181
152
199
243
246
185
171
130
227
252
161
167
220
181
167
259
193
241
213
229
219
264
175
189
173
251
236
86
199
220
184
183
215
117
211
212
219
203
252
176
261
201
224
256
162
232
164
221
182
216
214
171
186
178
189
222
257
211
177
164
173
230
187
190
209
161
198
202
247
163
214
182
233
242
269
166
192
245
208
176
188
106
202
136
223
218
192
237
142
152
221
211
241
226
207
221
216
240
170
188
174
248
177
179
279
166
182
201
226
253
137
213
277
184
177
177
126
167
183
192
204
210
114
204
169
214
125
185
172
241
181
253
199
181
225
210
204
221
192
224
175
170
186
265
239
242
146
178
199
185
214
178
247
209
257
223
193
206
201
205
227
171
146
115
202
201
208
171
195
220
161
166
197
235
211
191
206
211
228
235
214
208
190
156
179
202
136
230
219
200
215
223
242
234
230
216
206
219
243
202
215
227
227
213
162
248
241
215
155
254
214
175
235
199
213
167
227
239
241
179
205
171
153
199
211
181
158
195
221
195
268
209
248
162
221
227
173
184
225
212
202
159
167
200
175
216
201
202
184
157
194
165
158
251
200
177
266
186
196
230
143
170
162
274
188
162
151
152
205
196
179
183
150
160
232
226
164
199
205
159
182
282
156
231
158
231
222
215
236
233
196
209
163
216
138
195
203
245
233
208
177
233
253
191
224
239
135
167
208
177
195
154
153
204
169
152
191
190
181
183
276
252
205
149
192
208
271
187
231
155
272
237
241
159
192
224
235
147
212
187
202
235
196
205
131
217
247
217
224
199
242
208
199
213
198
213
212
251
216
249
180
210
170
238
238
144
207
176
225
186
239
159
238
169
184
174
280
260
162
244
183
178
241
188
175
248
218
205
232
156
127
193
186
216
152
208
140
239
201
203
209
193
191
209
163
155
181
219
169
250
219
156
161
222
206
213
184
196
249
161
233
154
212
244
193
118
156
162
129
232
202
163
214
210
151
185
194
202
234
171
176
147
192
165
155
137
187
229
208
238
156
214
211
145
221
201
211
233
225
185
211
205
169
217
173
155
214
195
154
246
200
183
205
219
200
201
120
144
236
208
134
211
187
242
194
200
220
208
254
229
246
219
185
218
205
233
195
142
154
231
196
226
204
146
222
211
197
286
226
191
216
152
238
222
178
211
278
231
224
222
220
157
162
120
201
198
134
201
220
175
182
191
191
185
210
228
225
233
172
209
189
226
190
200
279
166
261
151
134
152
184
191
163
182
185
202
199
192
214
157
273
215
158
162
166
247
177
109
189
201
205
256
238
219
229
209
174
169
159
211
177
227
180
158
211
145
275
173
207
225
214
188
232
177
188
214
196
164
242
194
255
187
204
182
219
226
220
218
206
202
180
226
170
174
162
240
226
195
242
197
168
167
191
267
111
198
234
176
216
176
172
255
221
180
233
223
234
176
199
249
214
208
266
201
141
194
162
200
210
216
206
151
204
218
192
244
255
172
204
175
128
214
268
158
167
187
217
193
151
207
205
248
194
266
195
160
201
185
151
233
208
211
200
239
223
129
215
220
190
214
163
241
233
221
204
204
257
182
152
204
159
218
167
148
187
176
218
226
145
170
194
202
234
205
254
152
220
247
225
161
210
228
175
152
187
185
177
246
209
147
195
179
208
217
201
158
205
174
231
218
243
154
158
191
249
162
185
151
177
186
245
161
236
213
186
177
233
220
212
175
172
181
129
256
231
191
172
134
236
180
224
205
213
211
148
198
200
193
252
225
211
144
191
193
170
222
165
215
201
190
203
170
161
203
210
215
181
197
146
210
198
246
241
169
226
180
170
188
178
243
238
217
169
162
225
209
204
179
199
166
178
189
153
264
255
130
248
230
228
227
237
254
191
221
222
152
216
187
181
213
272
222
197
140
229
225
200
234
202
203
212
204
151
124
188
221
209
204
210
218
182
178
174
210
200
133
236
210
185
209
184
154
224
218
210
232
191
224
166
211
219
142
213
207
167
149
142
242
243
188
167
219
272
201
224
193
156
203
242
192
212
212
181
253
222
207
203
284
225
183
195
156
157
213
164
254
173
216
134
167
189
252
172
199
138
181
226
204
187
154
226
245
195
193
192
177
248
183
199
205
175
219
232
201
222
202
185
136
210
232
223
168
195
178
200
177
223
217
235
138
187
210
238
168
209
187
212
194
234
215
195
234
204
181
177
252
233
180
153
183
125
155
163
203
197
155
187
233
266
186
206
222
208
186
222
228
181
178
240
192
241
203
203
151
196
160
225
157
275
107
211
190
175
175
194
200
181
241
208
215
198
174
250
249
223
164
162
226
214
190
140
270
124
236
188
216
223
223
217
167
190
259
196
186
218
213
255
260
129
221
229
150
226
263
202
220
278
215
126
129
203
209
224
179
261
226
176
180
153
258
285
167
161
150
212
236
154
213
232
231
211
233
207
205
164
208
146
190
174
124
133
229
214
229
246
172
198
202
253
214
224
227
221
217
191
242
238
213
172
195
252
213
228
223
182
229
143
179
242
219
140
208
177
203
216
249
230
213
213
220
162
196
283
212
238
192
206
256
217
177
198
193
227
181
218
244
197
153
136
204
223
213
233
212
172
224
213
181
223
267
227
197
232
109
222
204
240
239
169
234
148
208
161
230
219
167
165
132
154
216
267
184
219
149
192
114
248
189
153
153
243
196
209
182
147
201
204
126
189
187
210
221
169
207
182
142
258
212
222
229
253
239
207
244
135
247
154
258
233
166
131
181
239
197
139
205
236
187
232
212
223
270
202
201
220
161
200
178
226
157
200
130
190
154
233
167
257
189
214
210
205
240
190
192
240
181
206
217
205
196
211
233
243
188
187
141
201
252
139
184
190
250
165
228
199
205
178
206
253
177
215
174
250
224
216
261
248
196
187
172
246
234
92
229
222
218
164
210
215
166
215
217
250
239
189
224
181
208
200
204
193
136
146
173
246
241
179
209
182
146
215
207
215
194
152
169
171
216
211
183
222
225
249
215
209
214
206
145
222
255
209
201
179
189
213
195
234
143
204
188
180
185
231
184
238
244
191
129
177
235
174
205
207
186
168
220
219
123
203
219
259
201
190
195
204
159
162
249
215
211
243
159
195
224
138
207
138
257
200
138
175
225
151
189
257
207
198
204
169
255
204
209
128
224
178
161
234
118
169
237
205
140
185
193
200
222
217
171
209
254
188
205
161
188
208
187
224
224
224
194
163
177
219
224
219
230
207
207
231
265
200
164
198
171
191
139
244
180
136
189
231
212
211
223
170
205
230
184
269
187
201
259
153
114
142
234
191
241
255
189
143
177
209
241
268
178
214
135
192
190
119
212
233
143
177
206
194
209
193
147
147
218
198
99
250
203
199
170
152
231
175
201
229
232
175
188
198
247
215
137
175
162
179
173
180
259
161
184
167
222
237
240
197
158
194
252
146
173
220
227
191
191
196
241
236
243
140
220
202
190
185
227
241
206
177
234
202
185
170
219
216
255
155
236
162
186
140
164
212
168
226
191
199
202
132
225
188
221
211
221
211
143
187
198
112
231
146
232
126
239
273
211
257
159
199
270
198
194
218
212
169
188
220
201
228
177
243
199
232
181
188
201
203
231
199
231
220
225
225
201
135
174
278
190
184
216
203
184
251
190
121
234
144
207
223
218
114
199
202
218
191
211
167
227
256
227
237
157
205
165
182
173
218
187
144
212
188
176
184
253
212
180
190
249
229
113
161
129
156
208
217
167
198
191
212
251
174
232
198
255
221
181
170
211
180
201
199
172
204
237
179
206
253
175
225
171
189
217
213
198
179
182
176
221
208
196
195
186
153
217
228
259
213
185
196
221
184
220
248
207
185
194
176
189
130
194
251
212
167
200
178
125
244
260
201
204
198
158
171
210
247
218
257
266
207
233
178
234
166
168
209
191
206
181
229
197
219
146
191
198
250
155
178
237
215
210
196
232
209
101
201
114
240
216
264
133
213
171
205
188
231
203
216
198
236
168
260
200
188
234
187
195
214
228
99
210
181
220
204
201
190
168
196
224
218
247
235
247
258
240
161
219
251
200
108
197
201
182
166
202
170
139
171
189
220
183
195
176
252
212
150
241
225
212
184
231
197
149
202
185
184
178
159
184
150
165
243
221
157
211
217
176
181
177
207
209
174
156
208
213
214
176
208
218
174
200
153
160
238
174
237
230
281
174
210
202
170
219
226
226
186
211
149
206
168
212
183
152
225
235
198
171
239
235
214
209
218
210
269
286
178
128
157
223
183
210
198
190
210
168
203
211
196
172
143
203
215
206
267
180
173
195
163
207
186
221
204
168
227
221
177
169
238
170
222
178
180
252
203
245
185
206
172
267
223
217
115
241
164
204
194
229
204
245
211
235
239
189
220
249
158
266
170
201
151
205
223
219
210
219
214
191
210
198
173
214
180
199
260
191
211
194
202
161
255
211
185
179
234
244
226
159
279
170
218
233
182
181
185
141
202
222
187
144
200
222
201
159
188
186
145
180
155
252
187
189
229
214
135
178
245
209
119
198
220
151
184
167
193
220
160
202
146
167
224
168
205
184
155
206
250
211
196
244
247
228
188
218
180
228
212
207
210
208
230
234
154
161
208
190
173
209
203
216
216
194
140
200
213
177
223
239
188
191
229
137
153
227
209
178
155
168
262
178
189
186
198
222
205
241
179
253
218
178
164
210
182
214
178
217
183
166
176
200
193
214
266
183
258
200
191
226
124
175
212
153
183
231
216
239
185
154
234
194
197
258
174
124
184
204
162
232
168
165
215
274
201
189
237
215
300
236
199
189
176
215
174
202
243
209
249
151
105
177
169
165
191
207
224
268
228
225
194
165
166
236
211
184
113
197
234
249
230
131
189
223
228
212
210
247
227
260
232
250
138
156
191
212
189
214
139
231
201
176
179
216
222
224
168
241
186
233
198
163
135
187
170
215
189
274
172
222
207
237
196
193
190
113
258
187
144
202
238
215
151
197
224
176
230
207
157
241
177
186
135
233
228
207
265
217
213
195
219
112
185
223
235
206
173
117
165
267
183
203
108
191
222
192
204
256
174
206
188
191
272
224
178
234
203
195
264
200
215
255
259
150
236
192
260
190
217
215
134
163
178
224
216
192
170
259
239
265
216
176
205
196
213
182
192
229
202
237
237
194
185
214
132
180
218
262
196
143
184
167
235
239
226
239
149
178
164
172
147
238
237
238
184
212
199
129
232
206
211
233
172
247
213
215
176
172
142
166
196
220
126
170
189
201
194
162
174
190
205
114
176
187
168
164
238
184
180
175
230
179
233
185
232
215
180
232
232
252
272
191
142
146
212
193
207
170
253
178
171
218
173
187
172
134
135
172
217
199
229
234
150
103
206
220
142
173
232
218
197
199
211
160
229
261
210
185
196
160
192
203
167
222
178
148
183
179
153
218
110
231
157
197
232
150
171
134
226
216
191
181
226
242
137
187
204
169
202
226
218
178
207
165
211
183
166
181
174
216
187
227
231
186
266
210
151
251
170
224
254
269
228
218
229
225
191
135
201
193
192
160
172
192
195
163
234
184
206
176
237
238
249
153
228
209
158
257
210
226
259
252
197
211
216
206
228
176
240
247
200
251
127
228
224
258
227
228
221
167
146
223
174
242
232
243
196
210
230
232
211
148
185
215
195
240
120
218
204
216
206
227
226
152
193
255
229
218
199
211
136
178
171
151
191
160
170
251
137
178
222
209
230
203
268
153
191
208
155
248
240
208
184
268
178
202
167
230
205
213
179
165
173
252
229
192
199
252
213
188
214
178
143
198
202
207
179
188
196
228
198
133
227
212
168
111
217
205
209
174
182
227
227
209
217
207
251
238
168
164
210
145
201
180
246
229
181
199
233
242
167
206
224
266
148
204
139
188
236
238
225
159
215
219
262
217
209
202
272
219
135
201
211
154
210
217
136
199
229
172
185
237
196
162
258
208
214
177
202
152
253
181
134
240
173
275
166
201
231
239
175
211
222
208
147
204
195
188
232
240
228
223
228
235
162
189
256
205
234
168
191
157
209
205
232
221
179
250
201
214
171
182
176
180
191
186
209
233
178
229
206
240
227
226
231
203
168
221
195
153
179
235
221
202
189
164
213
227
229
300
145
195
209
193
208
202
184
238
207
193
257
167
185
186
238
199
184
220
162
235
215
210
207
236
138
219
206
213
202
212
162
198
224
120
183
190
196
210
116
242
202
216
243
201
155
231
212
231
223
182
200
216
204
180
142
245
197
233
112
231
212
148
246
214
158
214
180
145
134
196
230
259
99
236
216
184
180
202
260
225
197
219
240
163
314
199
128
236
193
214
217
185
177
133
139
196
194
200
172
170
100
215
197
211
233
182
174
132
202
206
133
208
205
230
209
237
187
206
228
148
175
200
231
178
199
219
158
192
198
175
274
204
199
179
256
188
133
224
186
178
173
204
271
212
179
156
222
192
166
166
167
171
132
247
165
218
197
209
153
182
207
214
171
223
243
164
179
207
215
193
168
205
192
165
184
136
192
145
195
251
147
192
230
188
219
203
172
194
209
241
181
206
162
249
176
194
217
181
178
226
158
191
217
236
244
254
212
195
181
233
241
196
230
188
176
257
173
179
165
252
188
270
245
162
176
216
207
209
181
145
143
227
137
187
200
170
182
185
230
205
179
139
247
203
163
177
265
245
188
199
205
218
193
219
239
181
220
194
200
212
210
197
225
218
229
141
132
189
266
220
188
212
258
165
169
240
122
216
145
185
139
174
192
150
178
232
186
176
194
213
225
201
194
249
190
176
188
277
244
170
234
178
146
213
142
229
156
187
190
212
215
179
138
191
223
242
178
189
202
173
190
226
174
197
199
160
233
216
149
175
267
169
140
231
157
182
221
212
216
189
233
240
210
134
255
153
217
190
221
163
187
224
229
189
195
236
161
172
205
178
151
164
245
221
183
249
183
232
227
177
185
214
203
166
195
192
175
166
225
201
233
197
187
253
261
188
231
190
225
206
152
207
209
263
205
168
152
115
196
194
150
193
180
165
200
229
239
217
181
189
216
203
236
152
149
227
209
192
195
248
241
150
166
229
183
224
206
213
154
231
218
248
239
192
181
163
199
208
204
292
225
210
184
198
190
246
233
203
245
201
233
186
289
238
211
263
192
176
226
234
158
182
236
202
194
144
175
161
188
211
141
172
272
170
186
202
170
228
183
216
190
179
204
146
167
243
235
176
246
175
184
181
222
204
228
137
187
229
215
201
140
181
215
166
147
235
163
213
203
169
227
218
193
229
159
186
190
211
224
180
198
242
130
238
236
242
215
185
221
192
163
133
202
194
175
152
207
205
194
150
253
232
203
199
185
189
184
230
227
237
175
183
199
200
201
190
98
175
191
172
239
186
213
202
216
243
257
187
215
228
235
183
152
235
236
187
178
227
226
198
240
196
200
229
145
132
208
175
215
179
211
258
235
166
244
170
216
190
160
172
247
179
167
193
169
184
232
209
163
202
261
213
187
206
168
244
151
98
218
182
178
273
146
160
206
167
208
227
209
158
240
196
206
211
258
221
188
196
221
224
199
199
158
218
219
219
237
201
149
231
178
132
159
233
171
235
179
161
204
212
226
227
264
231
198
153
200
205
182
137
238
151
259
202
117
230
166
218
208
174
222
133
174
204
202
131
215
238
197
226
155
141
215
190
234
221
200
197
303
216
205
149
201
153
225
202
212
209
187
206
217
203
264
143
121
202
163
162
202
115
211
148
214
128
141
197
175
151
182
243
268
219
256
233
189
228
261
220
221
188
256
180
223
182
236
157
215
243
188
102
218
198
168
189
232
204
188
249
209
201
160
204
191
199
238
183
231
240
195
179
203
234
200
220
191
172
157
246
228
203
173
171
236
225
243
262
181
173
162
109
190
183
152
219
141
225
236
272
226
242
234
210
195
121
216
177
179
192
155
201
160
214
170
204
160
199
201
247
191
209
200
205
180
267
242
224
183
221
180
170
206
209
266
236
240
153
148
205
183
203
226
161
178
155
182
191
178
208
216
235
266
128
222
249
157
202
193
183
240
163
237
200
238
195
185
177
224
260
193
235
199
207
237
207
208
193
170
130
223
211
252
160
221
196
258
250
165
233
201
211
174
162
210
210
196
242
219
218
178
190
202
226
236
144
226
224
205
213
213
129
200
192
230
222
246
236
186
179
202
191
235
159
173
223
193
220
176
221
288
215
213
148
209
147
168
194
185
211
161
244
167
271
187
153
185
243
133
220
201
210
245
192
251
214
193
250
230
268
219
221
173
199
186
212
242
216
170
201
227
247
124
237
157
191
152
179
148
266
227
232
191
226
186
169
191
303
173
244
214
222
221
186
157
253
173
157
192
202
214
226
188
222
169
193
154
190
219
174
156
176
201
175
245
205
245
184
192
184
111
215
224
175
174
201
233
193
252
189
187
165
244
195
214
254
224
196
168
202
182
219
277
206
155
224
216
178
192
184
239
221
193
190
141
197
220
243
271
193
198
189
233
215
209
150
194
202
209
140
207
212
243
248
183
206
220
175
197
197
257
206
223
168
191
230
169
226
236
178
203
236
182
236
199
207
210
182
134
270
208
188
177
171
256
181
195
139
232
210
145
209
192
207
178
261
201
220
232
203
162
173
169
236
145
258
189
173
112
220
135
154
163
230
200
220
154
192
194
237
233
205
235
190
231
140
220
149
229
209
236
213
241
208
138
238
261
238
198
252
259
149
234
181
223
177
159
188
224
199
213
185
232
187
128
156
238
158
257
185
222
156
192
219
146
144
202
204
185
201
173
153
237
205
170
222
250
180
225
214
157
220
215
260
184
195
231
187
216
222
244
193
217
183
221
184
180
196
196
202
237
229
119
216
170
149
222
218
150
200
205
157
278
207
159
147
267
245
178
146
218
220
149
246
213
179
123
196
249
203
185
200
233
249
192
166
255
167
219
241
187
209
192
176
243
230
209
225
203
259
172
213
158
195
232
200
203
205
234
237
170
110
181
231
228
243
134
179
162
196
176
137
199
213
197
186
210
206
201
224
228
225
212
183
142
207
209
255
198
163
194
209
204
182
163
184
188
253
144
246
244
224
202
227
237
176
174
216
196
231
187
229
267
150
240
234
216
180
184
268
195
154
207
232
208
204
225
237
174
145
192
200
189
184
165
178
227
198
176
172
215
203
196
197
224
189
237
225
166
150
175
183
211
227
177
180
299
194
226
216
238
201
167
218
244
233
204
205
228
115
231
234
162
261
186
281
197
153
263
176
198
219
254
179
205
204
203
273
200
119
101
197
198
175
209
196
160
225
204
194
170
207
187
200
176
217
187
170
213
236
231
205
196
240
286
217
224
172
190
170
235
218
213
182
209
239
212
138
174
166
193
245
252
146
240
169
160
197
255
206
210
203
151
187
177
239
183
197
259
190
173
216
215
244
213
175
196
198
230
156
227
223
184
208
198
237
219
185
209
196
186
193
190
215
176
181
225
240
174
171
164
202
202
233
167
158
196
210
183
168
238
197
173
184
193
205
243
240
211
222
243
239
151
159
229
182
225
215
205
251
177
234
249
189
185
148
211
119
229
218
235
181
212
239
204
163
182
197
218
177
172
236
154
171
166
180
180
251
151
156
201
145
216
208
231
241
226
246
177
181
169
248
201
202
205
226
167
221
232
236
202
180
168
208
228
127
227
199
187
190
168
144
158
257
231
180
232
250
206
182
218
211
187
132
179
192
210
187
277
199
178
225
168
226
243
212
188
162
188
223
189
133
148
170
224
233
194
175
183
212
238
201
196
195
218
197
163
183
168
210
139
264
213
196
273
273
231
222
231
151
228
205
178
156
222
195
244
214
197
200
236
198
173
202
249
185
198
214
178
228
151
201
186
258
236
181
210
154
231
190
217
164
193
241
239
258
169
152
209
189
211
201
187
131
212
183
200
230
248
264
149
253
267
246
187
230
158
261
175
218
250
219
201
168
164
192
223
211
202
222
145
187
225
144
202
185
200
196
257
149
207
204
182
232
266
218
172
218
174
141
188
223
149
162
210
150
197
201
171
242
179
206
223
199
248
218
186
260
219
229
262
173
218
204
204
248
193
234
180
236
232
217
194
150
232
246
205
205
224
219
256
149
215
238
195
188
247
199
181
208
223
231
232
174
212
160
218
196
269
207
180
212
208
164
188
243
269
200
178
217
201
240
133
210
198
234
254
162
218
226
185
257
171
184
256
224
236
202
184
191
192
125
228
201
194
129
141
243
235
185
134
206
213
228
222
197
207
251
202
183
245
214
217
190
241
221
146
221
172
166
190
225
197
188
207
161
207
205
217
221
211
229
226
172
244
199
161
139
255
203
212
275
195
148
155
242
213
202
172
207
213
167
215
163
144
149
179
200
191
243
149
158
201
179
181
187
194
236
139
166
184
191
211
189
186
211
199
204
209
165
222
201
218
180
191
157
229
212
197
157
184
225
189
251
221
207
164
118
227
226
252
225
161
221
205
195
236
211
199
226
227
186
197
189
216
241
196
245
166
133
190
216
190
151
178
208
262
224
238
214
261
171
177
147
198
254
199
168
166
163
155
177
243
224
142
174
278
186
198
165
223
211
207
242
200
203
220
190
218
181
196
216
183
249
162
153
251
196
153
175
199
145
179
177
183
197
149
161
202
243
145
183
167
181
221
198
185
155
213
194
164
185
156
185
119
223
197
133
153
206
151
197
218
205
178
182
157
208
273
192
201
125
197
199
232
194
236
174
192
137
195
229
138
176
148
219
234
177
206
199
201
168
207
162
150
165
179
240
251
186
214
184
221
229
189
206
252
202
170
232
220
156
260
195
208
224
155
236
174
187
194
234
210
249
175
209
182
176
173
211
181
198
209
187
213
151
151
193
240
205
246
197
166
121
169
192
217
206
223
173
209
216
238
127
137
165
212
207
256
148
195
155
249
222
183
200
189
264
247
232
197
135
249
119
237
252
187
216
187
206
212
121
236
254
241
180
185
171
194
224
210
118
248
200
116
155
210
239
179
182
175
159
196
190
146
215
208
209
192
174
249
219
234
181
130
186
205
226
213
188
203
194
229
216
118
275
167
201
169
202
170
244
115
242
171
178
194
195
209
195
195
196
215
176
210
186
203
218
147
194
236
185
182
237
148
218
238
202
170
174
190
174
203
149
160
209
210
184
169
176
186
160
91
169
195
220
299
174
176
178
215
174
228
182
235
242
158
234
200
252
206
216
201
207
195
263
203
289
211
210
207
184
226
193
207
243
188
167
211
182
181
200
202
162
113
242
218
210
197
166
230
191
223
270
259
220
198
181
204
188
223
241
127
218
265
192
231
245
189
126
211
180
155
219
194
171
222
173
187
158
172
236
181
159
205
234
214
248
234
213
148
199
244
240
162
125
145
193
217
119
136
181
174
170
186
180
159
200
207
192
264
287
243
192
182
215
217
182
137
209
198
229
152
182
243
219
163
195
206
174
161
175
192
189
153
178
243
147
201
215
229
214
208
113
214
198
226
223
227
118
196
191
230
217
195
258
185
167
235
237
232
210
255
226
188
186
220
160
219
212
196
177
266
251
208
198
159
208
175
247
214
215
197
224
204
215
218
198
222
138
243
198
209
144
187
229
192
195
157
193
209
127
205
222
191
212
225
170
178
240
196
227
218
228
239
212
167
256
141
185
210
181
182
232
214
224
134
185
198
166
221
165
238
283
177
176
191
223
218
228
208
211
224
181
185
168
234
211
186
212
203
207
182
242
264
198
218
182
139
159
117
213
174
189
196
187
211
171
203
151
176
186
123
216
209
219
181
248
198
154
137
203
216
217
197
178
216
210
233
113
222
162
210
192
218
205
227
224
177
163
121
203
182
273
221
206
159
243
219
172
221
182
200
257
229
182
233
206
232
158
205
235
263
117
179
181
172
197
192
195
234
144
210
189
167
150
244
207
208
217
232
181
259
197
151
262
167
194
187
186
235
194
192
193
257
231
175
271
208
194
146
174
208
244
170
247
214
184
183
199
208
139
200
218
155
238
189
187
145
233
211
179
174
246
249
101
235
171
231
179
222
235
178
214
213
206
175
186
183
237
200
170
195
217
209
196
234
201
230
165
138
210
153
225
200
165
251
223
187
212
191
217
233
160
185
201
216
233
165
221
185
217
194
242
186
202
190
204
204
218
166
158
161
190
222
169
200
234
177
215
269
169
207
260
144
208
259
219
209
192
221
185
161
233
150
282
134
264
237
179
213
194
252
184
223
189
191
202
297
204
207
211
208
138
157
186
208
221
219
207
256
184
225
176
182
230
263
247
296
208
227
190
195
200
171
149
252
174
149
167
211
150
235
230
191
202
233
160
171
157
169
175
233
193
183
178
217
218
249
206
203
198
201
221
103
211
221
213
175
205
233
112
196
206
203
206
260
219
224
226
194
214
198
166
180
201
216
207
262
200
245
275
226
186
165
141
241
204
205
185
262
125
179
223
118
227
181
236
238
248
218
200
127
180
200
263
166
230
217
176
210
210
143
215
189
231
218
246
234
219
201
191
120
152
207
205
189
190
203
201
147
237
165
197
208
209
180
171
257
191
234
246
141
150
169
166
212
197
227
167
186
194
208
227
199
175
262
220
195
152
124
220
213
147
202
202
102
149
282
169
166
213
271
215
146
192
207
229
252
263
246
235
269
146
187
195
234
185
151
157
204
190
255
181
218
179
189
199
164
258
197
241
263
245
194
234
241
193
145
248
192
249
185
226
163
229
161
263
191
159
205
185
213
166
153
264
198
227
196
253
182
186
155
170
243
195
221
232
241
197
167
208
170
249
170
254
222
124
149
194
171
222
204
214
226
200
205
263
169
178
218
219
180
222
125
235
224
210
188
225
200
239
137
228
236
212
201
159
204
266
267
234
153
190
203
242
162
186
220
166
180
148
227
175
168
146
144
171
211
178
187
200
169
215
166
196
226
228
218
204
178
207
205
226
190
246
284
206
223
255
209
190
229
151
254
234
205
167
154
228
203
171
262
221
167
236
202
219
241
151
166
206
224
184
181
235
215
128
244
121
219
199
239
134
196
162
183
165
195
137
208
236
137
153
205
216
207
214
133
200
220
145
209
185
188
199
184
246
159
183
145
166
190
194
203
222
213
128
241
193
169
150
216
182
191
196
174
125
151
176
242
184
223
201
240
209
204
254
196
210
136
172
224
189
141
236
159
241
183
229
228
226
211
223
212
206
199
219
183
193
171
226
171
177
215
234
210
137
229
187
244
156
282
203
225
209
148
250
227
215
159
210
224
225
187
175
198
206
148
253
192
226
207
250
194
215
149
204
186
253
147
245
275
242
210
203
259
197
220
206
205
124
200
186
203
157
245
175
201
244
178
179
210
202
168
164
250
196
129
169
180
199
208
149
237
201
123
211
279
166
153
225
95
209
192
149
197
225
228
184
195
219
243
223
168
193
200
185
176
208
231
122
123
221
157
177
186
223
216
239
229
158
208
111
255
259
271
204
238
234
207
202
242
249
169
170
213
154
224
229
224
223
199
209
216
254
204
179
162
204
181
228
281
240
213
139
164
200
239
213
222
223
195
188
212
243
234
197
250
198
240
195
199
208
211
234
197
205
192
155
182
276
249
170
292
140
209
174
200
226
201
241
257
192
204
165
210
169
180
221
171
213
198
180
196
239
165
237
161
230
176
207
169
202
196
231
198
195
174
239
142
248
249
235
158
167
251
167
258
185
224
191
151
200
221
158
215
167
213
224
238
242
248
195
199
192
274
233
144
162
202
172
192
222
171
200
211
191
169
190
211
189
252
195
214
211
208
222
202
188
171
218
161
231
200
158
239
183
186
150
194
174
173
195
256
173
178
224
232
162
177
186
187
185
190
186
161
163
187
215
195
179
238
191
216
182
175
201
162
198
205
200
227
184
223
173
163
206
175
271
182
252
184
186
198
191
241
231
247
228
153
192
189
265
212
243
203
257
203
273
173
164
192
199
159
248
220
198
219
251
265
201
144
131
240
177
151
199
213
183
160
177
227
155
182
216
203
233
240
188
255
228
169
274
213
195
223
230
205
248
238
212
217
160
252
191
196
194
167
243
221
171
243
275
209
223
183
275
189
244
198
157
278
195
164
191
241
187
183
197
224
204
160
261
148
201
226
253
167
199
171
210
171
195
222
158
238
211
288
227
172
236
179
215
128
154
161
137
153
176
201
185
172
184
168
169
204
186
197
248
106
178
216
251
211
228
143
171
198
134
237
227
163
227
171
202
254
176
234
255
209
155
220
150
237
161
222
249
168
255
169
208
192
211
202
201
145
186
162
194
216
180
160
162
247
214
218
208
150
182
231
207
270
193
235
194
156
141
226
209
223
124
228
212
231
258
176
177
249
277
230
217
199
253
223
178
184
182
203
262
197
183
211
224
217
215
191
155
211
129
135
237
177
182
203
176
209
189
265
181
104
169
227
276
204
224
193
260
185
193
276
118
186
233
159
168
152
134
239
217
249
176
183
133
169
215
188
235
200
220
201
122
159
210
191
174
161
154
178
202
229
104
247
205
232
256
183
163
178
225
149
201
226
185
213
225
140
129
192
195
203
202
283
155
183
159
236
241
172
196
171
207
166
158
136
178
168
177
249
207
183
175
191
159
201
184
228
226
208
264
203
255
221
209
222
163
212
180
150
217
224
202
216
235
146
248
185
169
170
216
199
203
208
210
239
193
193
204
226
171
143
250
218
218
220
202
259
95
242
252
153
133
257
158
181
240
211
220
212
195
196
209
239
185
195
229
188
178
102
179
210
187
250
229
189
234
194
210
152
231
269
196
117
194
238
200
185
252
203
228
195
255
237
228
214
179
167
214
221
202
235
133
173
173
210
190
229
178
212
182
253
250
174
255
193
153
154
211
168
224
212
226
158
154
174
197
276
196
193
158
197
196
195
188
173
250
193
142
214
149
210
189
175
235
286
264
219
205
225
213
199
172
138
195
251
164
273
250
229
240
201
207
235
234
241
132
223
253
247
193
236
286
201
201
213
217
210
231
212
170
153
207
215
221
187
216
174
167
214
232
227
162
163
204
213
226
160
245
209
227
203
207
144
184
156
204
191
145
229
256
238
163
186
205
225
214
142
201
186
161
237
192
158
145
136
208
231
155
171
230
129
184
178
260
170
186
221
246
218
235
154
187
180
181
226
201
207
202
213
206
165
213
200
132
177
195
236
164
258
165
89
206
218
211
195
193
215
207
184
233
201
215
204
209
228
152
260
212
187
197
197
172
153
201
163
155
230
239
216
251
244
185
172
176
150
198
204
188
175
198
224
234
203
132
166
206
117
236
143
176
160
122
194
254
209
267
203
188
201
141
178
210
206
220
171
194
174
207
189
161
194
156
175
186
200
154
154
231
215
131
261
158
178
160
219
178
187
194
194
188
237
184
136
176
166
207
208
203
193
217
202
177
285
193
222
210
203
177
175
156
213
158
199
218
184
220
179
197
174
237
158
155
234
240
199
200
141
225
214
170
229
184
176
229
179
178
189
216
235
211
264
188
210
213
134
166
221
238
238
203
263
213
190
209
216
181
212
209
230
218
156
230
161
234
158
195
197
233
188
163
173
223
140
158
215
244
193
196
202
214
236
134
165
163
181
262
197
235
141
165
201
202
264
170
166
197
212
262
222
249
140
187
162
217
154
194
210
168
233
196
196
200
221
227
168
225
112
207
226
235
230
159
257
195
185
177
217
180
195
216
205
200
207
185
166
251
232
195
225
189
197
233
180
226
177
122
221
151
170
184
218
193
229
206
203
180
246
201
211
208
150
224
212
254
251
183
203
201
186
186
214
253
233
245
162
207
165
173
231
239
152
225
170
249
221
138
195
215
155
244
192
215
114
214
167
191
209
225
179
219
189
148
199
190
171
215
226
187
197
189
235
187
193
240
203
267
239
197
215
272
163
202
189
247
176
175
194
174
212
189
186
190
201
213
216
204
202
225
207
164
186
214
214
201
184
184
126
274
256
226
237
143
146
232
220
185
163
168
160
174
190
187
159
196
165
215
250
192
179
165
232
241
218
184
207
144
232
190
183
213
244
248
216
189
204
178
148
222
215
167
236
188
208
171
222
188
196
172
199
187
193
109
219
213
121
220
240
185
186
210
258
202
199
220
219
263
201
248
221
246
198
138
226
173
132
198
188
218
203
186
245
221
237
239
202
215
215
215
221
136
163
186
214
168
171
195
198
173
206
202
220
163
158
176
187
239
219
218
234
230
166
220
214
310
167
146
161
156
211
203
203
269
214
221
183
175
247
206
288
184
192
215
251
241
200
145
179
203
223
183
237
184
213
235
172
228
199
163
236
192
180
220
240
199
243
244
240
176
232
136
172
249
213
252
269
188
208
189
216
197
199
193
208
226
183
167
200
208
180
198
221
188
222
228
223
257
207
159
254
202
184
213
178
241
173
137
258
226
247
228
243
152
212
150
218
216
227
190
240
204
219
214
223
181
162
228
220
196
269
182
163
216
265
226
221
197
188
135
148
179
247
154
157
173
167
161
198
200
182
178
190
186
195
263
267
199
246
180
203
192
234
232
218
251
215
205
184
219
149
190
169
130
188
212
163
224
211
177
213
148
232
179
198
158
188
228
256
241
112
127
156
194
190
210
242
171
181
174
169
165
236
197
214
140
177
200
147
232
162
189
177
194
223
146
186
190
221
216
189
157
195
195
157
204
188
197
210
208
149
196
204
164
205
229
254
229
193
202
227
189
240
197
186
222
226
223
114
170
166
198
255
227
193
144
171
171
197
138
237
224
212
260
220
188
199
220
198
271
221
167
206
170
109
163
200
194
181
196
228
183
159
137
137
240
198
226
274
160
152
178
204
208
189
197
201
181
212
205
217
256
236
222
182
195
146
235
242
214
231
239
234
230
157
168
207
143
202
233
165
165
212
183
200
214
191
190
240
199
157
222
203
220
156
288
156
184
234
162
163
207
124
176
142
191
185
211
200
211
203
197
124
141
173
136
170
212
217
198
262
190
206
246
126
137
200
238
187
143
121
223
174
161
189
176
172
194
137
194
164
105
209
183
172
214
274
210
219
172
181
146
169
134
221
190
191
205
166
142
212
127
204
181
181
229
231
199
306
218
167
188
198
165
147
214
177
242
212
185
238
248
136
186
117
169
153
239
196
200
174
149
259
184
157
142
220
194
225
179
205
206
199
269
170
249
196
211
221
212
154
164
242
148
191
191
175
177
209
177
191
179
240
208
218
171
190
225
236
204
230
227
164
187
190
197
156
218
203
203
184
204
256
189
201
178
206
201
147
194
142
183
200
207
223
167
214
238
251
226
199
144
229
192
223
221
261
185
165
161
229
246
233
173
241
174
177
119
159
209
178
204
200
234
245
214
234
243
192
218
175
212
160
230
188
217
136
169
240
174
192
160
212
242
202
241
209
231
175
251
214
155
116
166
190
192
243
211
192
173
207
229
175
192
223
195
200
230
230
200
127
235
232
237
181
182
199
208
239
252
223
197
233
128
172
188
164
176
257
206
211
220
194
119
234
206
211
215
169
203
229
232
242
196
218
237
197
177
233
191
155
166
158
191
239
208
233
235
207
175
222
229
173
156
135
181
211
248
180
214
186
209
182
245
146
197
183
163
192
208
187
159
256
235
241
235
214
207
155
117
208
145
200
190
243
223
205
207
222
206
212
214
230
254
161
216
233
186
149
251
156
153
174
196
219
171
225
230
272
237
237
212
187
230
192
211
218
156
190
246
137
184
168
249
216
230
210
158
137
201
205
179
214
163
171
159
205
177
209
206
276
195
241
209
224
187
219
207
150
235
175
210
211
241
206
136
209
185
221
209
205
210
235
204
213
217
245
237
244
204
230
197
180
137
242
181
187
187
185
170
201
174
241
170
195
153
149
171
223
213
229
198
193
201
159
235
210
149
175
133
150
177
150
176
200
143
158
176
246
209
250
120
213
220
196
200
177
244
118
197
227
205
197
170
140
213
219
221
232
266
185
208
252
240
247
167
185
217
211
187
228
193
192
216
197
226
234
212
194
112
233
183
228
146
200
205
245
178
220
160
224
197
134
126
115
152
205
210
229
220
198
188
224
207
241
183
123
216
218
130
204
214
195
226
279
181
200
217
124
256
211
243
248
155
212
212
206
221
162
196
186
187
228
187
251
164
220
118
203
212
238
199
172
235
237
251
198
166
167
211
207
181
258
226
170
133
222
210
220
147
216
177
253
207
217
189
278
149
179
148
144
158
173
249
213
211
168
135
150
196
209
186
184
174
193
184
205
186
194
203
204
232
233
199
202
199
191
215
202
201
235
169
241
200
138
188
223
215
166
180
226
225
239
247
199
198
204
245
90
185
210
149
191
144
149
224
218
161
211
242
207
209
228
214
200
228
190
196
201
198
141
236
237
161
198
212
213
235
236
196
151
130
152
165
221
144
104
178
183
231
197
223
165
238
114
220
216
212
167
188
216
143
218
253
177
230
181
153
176
245
245
169
250
167
214
158
199
145
193
200
197
216
165
114
229
202
193
180
173
206
222
198
182
218
228
207
159
215
214
196
181
218
259
216
209
195
128
221
184
263
253
189
183
206
253
191
150
134
241
200
125
171
229
263
218
170
148
157
243
207
186
159
187
192
190
153
190
187
207
238
180
153
210
198
235
232
197
195
243
213
152
248
215
165
229
220
174
198
156
216
198
160
216
177
184
169
218
246
194
176
191
158
197
220
213
277
153
188
232
215
160
270
165
155
211
225
173
180
173
236
211
260
276
246
188
262
193
215
234
207
244
206
217
234
160
159
206
199
230
168
207
228
249
226
170
161
188
230
225
205
253
158
224
181
228
190
190
185
218
200
184
179
182
211
191
166
242
192
213
178
276
237
228
255
192
167
185
168
236
255
218
281
212
227
226
190
209
150
199
266
142
224
159
188
249
208
206
246
202
166
219
163
267
163
254
245
201
207
175
267
192
215
234
179
235
175
212
214
173
147
255
173
157
143
221
202
201
210
192
224
180
180
157
147
212
264
242
220
191
145
241
215
207
237
259
241
225
226
211
226
230
164
205
235
211
197
163
195
241
218
99
183
153
216
145
218
180
182
211
196
254
160
168
200
204
260
160
157
155
216
230
220
171
191
194
178
219
233
172
150
181
227
175
191
201
174
166
214
162
178
199
241
249
179
201
184
255
267
164
178
197
164
123
230
219
172
201
236
146
156
192
234
213
232
152
214
237
226
142
168
171
199
233
210
217
192
249
157
137
160
181
228
209
206
228
237
238
245
216
236
281
268
137
194
194
207
179
193
152
138
188
194
218
250
224
232
223
194
167
157
148
231
199
182
216
215
200
193
175
257
181
235
184
215
171
236
172
204
257
188
209
206
205
119
120
250
220
234
253
227
146
197
169
167
178
174
265
193
183
185
107
200
220
192
232
203
209
196
227
185
197
241
185
204
184
150
169
155
191
144
215
217
216
209
208
187
166
213
226
168
183
147
201
198
192
139
214
210
156
180
150
222
267
155
258
142
185
218
179
216
207
187
206
227
258
176
215
172
219
209
188
228
223
181
154
216
177
200
190
131
263
156
197
225
213
189
185
252
201
143
174
245
169
167
205
269
211
188
207
219
199
205
149
180
199
210
237
219
206
240
195
206
198
232
251
234
257
170
189
196
139
247
175
124
220
134
214
226
174
252
220
227
208
262
178
194
210
126
163
208
189
214
213
208
182
172
209
189
202
166
201
175
215
218
207
272
204
200
192
200
225
156
221
195
233
173
206
221
242
190
193
224
258
185
222
176
172
141
132
216
264
180
200
215
219
268
187
154
194
182
242
164
259
222
182
158
174
223
200
178
246
193
263
194
245
211
160
133
198
214
227
160
156
123
201
170
183
204
180
169
198
239
272
230
189
165
186
243
191
168
215
224
191
218
211
272
156
196
185
191
220
197
90
137
175
210
224
213
204
188
233
240
211
139
143
222
185
205
217
219
231
125
204
194
234
279
142
186
243
209
204
158
146
245
168
211
205
191
222
245
293
213
162
207
182
253
237
180
128
238
213
198
151
182
160
206
187
199
234
217
221
168
182
266
197
204
194
229
196
233
221
183
198
178
185
184
214
174
199
170
194
129
179
206
239
195
230
172
127
121
166
221
233
181
113
201
185
236
187
151
231
169
157
210
176
166
200
147
163
158
196
233
203
212
186
220
243
226
150
216
187
247
165
198
236
208
224
194
210
193
217
179
156
221
198
248
244
225
254
282
219
166
143
256
190
181
168
120
258
196
182
229
242
196
244
238
208
190
184
204
200
185
233
242
245
215
191
171
142
175
201
260
140
219
189
205
186
215
256
165
219
169
225
242
218
220
185
224
190
200
223
164
214
191
158
206
146
184
224
237
212
223
154
215
245
197
201
204
179
225
232
175
193
182
256
230
188
137
244
230
191
205
226
228
233
188
214
169
179
225
190
208
226
195
175
191
141
166
160
183
198
160
192
196
175
216
200
188
197
191
210
243
148
256
232
207
150
247
214
185
178
157
172
162
178
224
155
237
233
164
204
97
270
249
237
258
231
224
238
147
181
270
180
239
201
234
216
184
243
188
178
202
207
203
209
252
250
179
149
241
137
207
245
242
135
196
195
225
220
212
231
193
138
223
157
195
246
216
191
200
200
174
230
133
180
201
175
218
165
299
177
172
197
215
243
183
198
248
230
249
232
210
217
146
123
201
156
164
131
223
242
176
169
249
255
240
142
220
244
179
225
198
189
216
230
213
213
228
165
177
120
187
214
191
224
206
149
231
192
226
180
148
219
154
216
202
200
197
181
210
111
207
202
286
300
173
185
94
191
242
133
201
207
192
144
207
235
216
204
217
223
170
171
195
188
191
208
166
178
159
185
231
193
189
202
195
183
165
203
239
171
218
203
220
246
177
238
175
149
220
232
143
231
181
257
207
212
141
195
213
203
193
220
196
220
183
202
194
167
204
211
147
189
212
168
207
167
230
194
182
256
162
161
205
153
207
212
237
189
161
239
169
208
252
210
186
194
196
201
188
259
231
189
194
190
242
192
215
193
199
204
195
185
195
210
203
171
192
222
202
220
195
139
179
245
216
205
202
229
189
166
110
224
248
180
276
168
158
167
123
179
177
255
198
226
169
261
173
188
211
175
177
246
187
234
193
293
216
155
256
182
213
162
167
194
124
207
214
197
247
201
203
177
175
188
196
248
179
167
229
175
201
224
195
185
201
199
195
207
233
209
180
236
222
177
216
140
166
133
207
172
102
254
254
180
123
193
165
265
223
211
242
294
186
181
161
225
284
220
244
203
205
175
206
194
169
217
223
202
228
204
174
263
225
208
192
170
163
207
218
193
237
173
242
164
199
207
191
209
161
197
194
181
194
168
160
205
272
181
184
213
183
213
250
167
211
192
164
217
198
133
184
179
243
212
200
167
174
187
191
220
148
243
203
191
195
220
230
188
162
190
222
264
235
187
226
230
231
219
197
182
213
176
190
241
212
263
150
225
216
169
254
200
202
217
250
200
254
216
215
181
215
178
228
210
234
187
163
231
195
203
225
226
275
194
168
229
273
253
213
233
223
240
203
222
187
130
217
226
217
201
194
203
161
149
172
167
187
196
225
209
181
215
224
221
146
136
182
218
233
222
200
172
239
216
232
172
232
157
190
243
211
191
231
196
129
252
241
182
250
185
230
156
206
227
136
178
253
213
205
193
153
185
277
195
186
224
190
230
172
256
130
170
189
145
280
233
201
210
269
216
212
210
231
219
247
209
185
252
171
234
298
249
188
201
210
150
253
171
243
186
220
176
186
225
178
217
159
196
162
204
145
232
230
201
144
165
230
188
164
176
75
158
244
168
276
172
130
238
227
226
221
198
151
126
200
216
228
173
179
154
183
188
209
180
221
191
200
193
233
266
251
239
236
234
215
206
205
200
224
173
195
162
191
161
255
188
184
240
248
223
208
199
167
169
249
145
186
162
198
182
166
275
169
190
219
151
137
231
170
244
232
215
223
184
198
249
152
158
187
154
178
225
253
193
231
140
176
200
201
208
206
135
256
192
244
155
173
202
139
198
201
155
152
217
188
189
286
191
212
249
198
213
191
213
232
183
228
182
163
122
246
175
205
163
232
213
135
221
255
192
223
183
172
241
205
155
159
156
212
201
260
227
243
166
203
197
256
159
222
208
233
238
244
143
246
173
192
207
195
185
192
254
252
230
180
180
167
201
140
223
224
149
170
237
227
242
225
236
224
219
214
253
260
250
174
214
224
221
173
258
190
206
215
157
214
253
150
187
160
179
184
175
233
210
186
154
216
214
242
240
212
148
210
201
214
223
167
193
219
188
168
129
189
205
172
251
206
181
224
204
225
226
127
221
190
144
212
261
214
258
169
184
156
193
244
266
219
182
178
179
205
210
199
202
204
185
231
144
195
253
248
222
261
202
250
205
227
185
179
201
153
204
174
222
160
249
217
188
231
268
238
153
223
219
267
146
199
244
189
182
275
196
192
227
210
137
171
196
192
229
191
164
152
235
209
183
259
203
226
247
235
164
201
178
208
215
177
216
265
198
220
180
196
223
262
147
182
161
198
228
219
189
241
222
131
245
194
215
160
153
179
255
175
164
214
197
266
186
233
210
205
175
238
193
262
221
154
173
169
249
180
178
234
193
191
169
186
216
217
197
220
247
127
193
190
234
210
216
199
212
170
207
240
246
197
136
103
143
181
257
207
174
146
181
155
239
181
199
169
175
193
141
188
171
135
102
222
200
240
196
170
176
219
229
141
262
212
230
234
179
154
187
202
164
152
198
174
179
255
151
214
204
201
157
271
192
155
218
199
221
177
238
183
174
180
205
235
161
169
207
175
154
212
168
170
228
192
198
211
254
174
246
240
229
224
221
193
144
176
230
171
211
203
203
219
213
233
166
208
216
227
265
244
226
236
200
178
261
255
203
212
173
154
168
246
184
169
193
196
141
193
282
195
158
185
247
151
248
262
180
201
230
252
245
200
185
212
209
184
194
169
143
267
245
192
118
211
215
199
209
252
198
203
222
232
189
146
210
212
172
178
220
178
226
229
207
209
181
215
180
258
225
222
225
149
177
247
196
200
191
223
228
141
198
192
174
238
193
231
221
146
238
188
233
180
192
179
152
193
214
151
174
211
163
222
214
205
191
218
251
175
235
180
206
254
185
222
207
171
184
174
220
235
234
207
154
221
153
187
157
226
180
238
175
234
225
260
243
251
246
148
235
219
163
264
180
234
200
232
191
230
228
237
261
222
213
213
201
159
212
235
166
161
213
246
162
210
215
153
191
265
193
197
121
150
189
180
211
166
157
255
213
198
179
194
239
192
144
202
202
233
245
202
195
170
142
138
144
213
156
170
217
193
226
220
170
196
233
254
174
218
233
229
179
175
224
179
240
218
190
110
186
253
148
195
180
257
194
214
211
251
230
191
219
241
237
203
210
194
192
238
241
150
196
170
204
219
167
201
209
161
186
200
254
216
185
252
123
159
211
189
207
219
224
182
181
155
192
245
192
198
172
209
209
210
177
209
202
211
245
199
227
233
197
247
192
127
167
165
218
216
125
199
209
192
189
188
155
130
181
204
239
168
191
235
221
173
184
215
246
203
288
232
137
194
210
164
242
184
183
260
187
268
173
172
153
202
185
143
227
201
221
258
230
280
225
191
176
172
238
121
215
258
206
220
211
198
275
234
253
177
170
129
181
168
168
134
261
238
145
189
178
160
114
145
187
162
188
197
209
122
219
210
158
238
178
195
178
191
182
192
251
202
222
174
222
279
221
176
215
113
191
226
210
187
132
214
234
213
209
181
209
209
225
251
253
193
252
170
184
182
206
236
163
187
180
198
235
177
206
210
225
180
210
221
240
168
220
179
169
252
166
226
227
158
205
223
176
236
145
180
185
204
152
183
227
183
223
211
223
195
212
197
205
270
211
215
157
204
218
228
190
206
214
231
159
235
154
140
211
210
257
228
151
194
174
167
181
211
230
135
253
189
214
191
188
195
191
182
125
143
241
232
209
195
243
186
196
260
161
182
279
170
134
202
246
180
226
239
210
63
179
126
237
208
217
228
199
252
241
176
194
156
227
167
174
237
235
209
183
209
215
150
211
200
107
157
164
196
171
152
138
254
248
191
163
160
231
190
197
178
241
186
183
200
233
180
175
203
208
137
168
206
245
223
216
208
183
176
231
203
191
225
188
180
187
188
236
242
197
211
217
121
261
165
207
222
235
221
203
190
217
210
163
152
171
205
211
203
254
210
188
266
167
207
183
195
204
251
243
192
203
156
204
169
165
219
235
226
211
159
192
231
199
226
172
222
162
216
197
109
195
217
208
199
183
222
211
232
179
195
210
196
244
141
170
182
222
247
232
199
238
219
158
178
168
147
288
198
158
250
239
145
193
121
267
212
173
219
174
202
188
210
191
230
192
186
164
123
255
240
221
248
199
185
202
235
221
243
174
181
221
212
233
189
134
197
211
212
231
204
166
206
99
245
174
165
198
200
184
244
168
142
212
213
230
187
165
243
229
230
201
220
125
210
247
204
210
247
171
214
242
233
156
221
199
153
244
169
172
160
206
208
193
149
211
165
234
225
204
181
207
112
245
221
189
245
164
191
215
214
236
195
191
247
183
262
177
173
208
152
166
213
186
242
146
221
181
134
219
176
183
243
186
197
208
224
196
163
206
191
183
209
245
237
153
151
213
190
201
236
176
163
230
216
161
199
103
246
159
186
185
195
170
177
229
240
205
193
224
223
196
258
247
214
212
150
141
144
228
146
206
202
250
236
182
205
207
181
211
189
250
201
181
111
220
170
244
193
157
143
195
269
201
230
209
223
200
274
212
183
182
235
196
195
207
169
251
182
156
199
215
153
245
186
198
173
222
217
171
230
192
223
197
220
160
199
227
178
203
199
212
232
209
224
182
144
98
144
197
219
153
141
207
186
225
215
237
192
203
180
205
193
160
192
206
219
126
157
179
172
206
161
248
230
209
226
208
219
211
133
203
171
220
184
194
185
184
253
244
168
220
204
191
223
238
244
215
181
168
179
155
167
142
149
167
207
200
184
251
240
140
268
230
185
193
248
203
152
259
241
175
203
138
182
232
189
117
217
230
180
183
165
170
138
211
206
92
219
192
223
192
255
194
191
200
194
201
257
194
223
151
155
241
226
281
207
187
147
121
156
211
152
138
230
189
228
157
218
171
202
205
190
103
188
225
215
203
205
180
133
168
185
249
219
271
129
167
199
265
243
214
200
218
169
183
174
181
184
187
168
176
193
228
191
235
221
220
252
124
208
194
191
140
151
198
226
190
228
213
166
153
214
195
177
199
212
220
220
201
184
186
214
177
176
244
193
158
231
229
238
218
143
188
158
234
165
200
208
191
186
199
228
169
237
164
175
174
258
213
206
224
155
152
218
208
135
218
220
242
200
237
217
246
226
236
272
211
178
174
232
194
191
206
246
214
146
216
217
223
209
211
99
165
192
175
223
206
201
234
183
195
193
239
234
208
207
209
200
222
229
215
260
238
127
178
190
201
170
168
189
204
219
208
151
142
218
215
204
233
222
202
111
192
196
186
162
223
176
179
214
210
242
188
243
251
242
118
244
230
192
151
279
206
148
198
230
212
200
148
202
159
224
213
220
219
219
240
182
233
200
207
230
193
184
222
260
236
206
161
197
165
209
112
189
231
229
229
215
147
208
228
195
234
186
180
176
143
142
227
217
179
176
226
232
165
208
214
166
160
162
143
155
159
264
179
180
176
207
195
159
200
168
174
229
143
169
188
205
198
196
233
254
139
178
146
175
181
174
238
187
217
137
189
205
175
128
236
204
261
232
146
209
219
246
227
178
183
213
198
190
207
248
170
171
161
227
235
195
183
258
193
279
270
238
217
201
199
220
195
212
169
145
189
194
155
178
233
232
210
160
196
208
229
215
200
178
205
178
142
225
194
130
245
181
161
242
136
185
183
211
204
189
191
247
185
220
175
195
231
243
225
140
185
220
161
243
155
201
188
242
230
219
203
188
240
188
255
165
189
183
133
192
158
158
218
187
210
200
213
208
207
224
155
185
237
221
166
157
216
191
210
254
225
191
158
259
165
257
226
224
215
183
197
207
203
174
175
175
170
168
200
270
204
238
252
198
197
193
174
177
167
191
149
260
223
191
184
225
186
195
201
210
184
205
206
197
183
218
195
173
190
195
199
196
218
229
185
205
173
192
144
238
193
217
154
201
166
242
233
229
194
182
224
166
225
252
182
182
210
182
212
131
191
222
169
230
190
218
190
192
238
180
186
198
228
205
214
189
219
191
226
130
218
193
237
227
192
181
209
211
231
231
176
180
180
207
209
166
227
233
213
202
184
205
181
212
200
125
179
165
229
177
219
204
225
245
182
205
184
178
200
209
169
206
178
149
171
238
231
145
218
221
218
183
246
104
192
202
153
203
234
194
160
205
232
187
207
220
235
223
186
251
211
263
145
236
123
207
218
165
206
203
211
219
243
193
161
190
218
155
233
159
210
117
231
234
188
245
224
184
182
233
229
178
151
209
215
187
166
182
210
244
247
240
180
231
166
209
269
236
212
206
204
198
162
154
202
237
163
134
148
199
208
235
216
211
219
261
134
135
225
156
217
197
198
231
217
171
148
142
256
234
246
188
172
224
232
225
265
194
201
161
178
233
180
217
166
215
175
218
198
180
254
220
221
250
243
188
228
137
240
247
164
222
205
176
186
186
198
185
247
268
180
213
252
248
206
160
218
172
196
194
186
248
175
200
188
232
258
195
204
216
195
241
150
211
185
250
159
227
196
230
218
220
247
238
117
222
168
221
176
211
215
156
195
201
228
202
266
273
224
207
223
168
194
221
227
171
193
225
190
210
181
228
233
184
225
156
253
227
193
213
225
236
229
199
225
161
239
158
182
139
141
136
139
144
176
251
165
201
287
241
249
191
137
199
258
182
203
173
156
186
250
228
203
199
164
174
172
183
191
175
148
153
175
267
156
198
166
197
241
187
173
171
226
195
217
106
158
203
214
213
179
210
190
210
118
211
228
218
244
224
183
164
223
227
241
267
141
227
198
190
131
221
105
182
185
268
135
194
236
264
252
198
237
244
223
213
177
219
220
212
216
216
267
198
182
227
208
202
192
232
238
199
193
178
195
186
223
185
188
202
222
213
192
160
237
239
211
216
202
212
211
191
145
231
229
194
192
180
221
243
196
188
224
191
166
237
252
120
179
217
197
259
164
198
201
224
160
245
187
215
185
197
253
176
204
248
291
226
194
178
217
165
153
258
159
222
182
160
205
191
242
207
238
186
158
198
224
166
194
213
223
192
246
152
184
174
227
231
253
237
201
161
259
216
230
210
177
258
201
231
231
239
246
256
199
211
204
166
211
198
214
233
250
175
189
259
163
213
159
161
187
181
236
188
255
208
199
166
165
228
214
231
274
149
178
209
189
216
209
248
186
250
132
184
220
137
158
150
147
221
162
148
229
212
174
189
182
206
181
232
197
257
195
196
214
188
223
189
198
239
220
193
245
219
237
233
174
203
236
221
222
213
241
194
190
248
246
185
197
195
238
274
255
145
215
190
187
196
209
252
168
211
185
108
202
191
206
165
206
179
235
289
224
128
161
251
163
177
250
238
197
221
196
152
217
109
188
227
237
224
214
174
135
235
255
126
235
214
200
207
258
224
188
178
201
160
203
220
225
197
119
144
175
191
182
163
172
261
139
236
220
213
159
219
197
200
223
158
252
223
171
237
198
197
278
184
196
216
201
233
165
156
180
177
147
200
193
185
192
160
230
132
242
155
177
186
214
209
171
153
191
212
186
204
221
208
219
147
180
265
234
127
205
142
157
164
222
253
138
90
217
254
127
198
230
122
171
221
252
152
235
235
158
208
198
244
184
163
213
190
185
242
283
232
215
223
180
212
157
184
187
178
231
198
204
152
161
243
230
137
186
238
201
200
209
144
200
142
230
142
175
181
142
203
168
224
167
187
165
203
161
234
189
221
201
228
137
155
155
237
150
223
194
209
247
269
239
247
239
222
192
167
208
230
171
259
171
223
245
198
218
177
178
179
176
119
203
213
194
167
167
221
186
195
243
192
186
244
231
218
162
218
213
220
225
216
184
153
148
171
204
222
184
126
138
230
198
207
206
248
177
119
219
225
217
198
206
231
217
223
218
120
191
171
198
220
197
213
190
178
237
222
261
174
158
205
221
248
237
200
183
196
235
261
229
235
204
272
168
169
177
195
243
176
196
245
250
131
177
199
128
128
226
154
130
221
150
254
164
265
144
227
183
228
189
150
205
288
197
186
135
185
183
184
181
189
220
210
186
198
226
178
215
207
159
241
244
201
172
254
183
258
203
184
223
270
214
202
176
220
165
213
199
222
152
113
223
195
178
189
184
209
174
231
211
161
196
209
142
203
227
183
172
215
254
236
176
229
196
118
157
202
142
215
200
183
192
205
225
237
212
183
179
218
218
213
179
177
191
126
169
213
239
213
192
187
239
216
162
202
238
216
164
245
195
217
196
154
153
171
233
193
188
157
177
174
177
138
213
177
256
170
160
196
182
197
167
154
216
214
179
171
233
127
215
176
225
266
176
255
125
249
193
302
152
211
243
211
243
184
157
198
285
183
243
166
145
141
243
247
180
156
212
235
223
163
164
221
196
199
219
270
270
209
186
212
200
217
182
237
197
219
134
171
230
219
184
213
161
185
224
168
206
237
212
177
211
146
234
91
192
141
263
246
189
143
246
207
155
186
148
213
188
227
172
229
161
166
201
221
231
197
177
225
210
204
218
264
198
182
262
206
195
176
236
162
223
135
198
153
242
227
179
136
200
222
225
192
202
204
197
199
172
249
158
179
238
204
196
147
217
75
227
195
207
200
171
186
208
197
203
196
216
170
218
202
233
189
252
204
204
200
272
178
228
153
212
209
131
246
220
223
163
213
200
188
165
240
168
185
158
220
140
248
160
212
175
103
130
230
166
198
192
123
167
169
261
222
181
151
168
171
152
216
197
238
141
180
211
185
243
220
247
183
199
184
140
214
173
221
219
224
204
212
189
258
208
186
176
201
195
204
176
246
160
198
204
207
180
240
137
186
234
223
245
157
238
212
209
144
136
229
237
175
189
236
201
166
158
249
227
217
208
223
280
226
130
220
172
261
217
171
156
221
244
148
177
226
205
199
209
189
248
230
186
123
271
107
218
194
208
205
169
226
215
160
207
201
213
243
212
163
201
152
251
141
251
165
261
189
210
93
193
203
225
172
257
185
243
176
201
203
181
202
231
190
135
209
167
244
212
171
209
224
212
192
189
210
225
242
187
154
186
166
164
235
139
208
200
193
243
193
215
187
241
167
176
189
164
171
153
272
222
208
182
231
200
231
240
160
225
196
204
194
175
185
164
158
196
217
220
170
172
227
221
224
240
197
202
215
192
163
221
150
214
170
221
246
179
238
210
172
277
175
233
270
189
173
218
221
237
170
203
149
219
237
176
211
225
207
133
202
185
138
73
269
239
240
132
203
218
203
185
179
184
250
164
229
250
157
231
186
150
219
236
220
202
226
200
182
196
127
237
208
142
171
241
149
127
143
157
191
224
244
162
227
151
224
168
175
204
165
206
250
193
204
193
253
225
206
205
183
228
247
168
218
180
173
195
202
201
183
208
226
185
242
231
231
239
177
174
218
287
183
165
269
242
258
267
231
170
233
187
254
207
172
174
201
184
207
223
250
202
161
215
192
115
182
200
264
221
201
255
220
215
170
144
216
245
228
181
195
194
169
225
227
192
232
176
268
226
190
145
195
153
149
229
214
215
149
210
272
205
177
246
282
235
173
178
193
265
230
163
200
198
216
170
203
207
204
178
227
129
189
172
165
185
189
208
222
186
249
241
168
173
226
232
242
209
213
239
255
182
144
206
232
194
237
181
230
173
209
202
240
191
192
165
213
201
222
189
196
222
253
167
208
202
187
213
162
196
154
209
211
240
224
223
189
207
207
185
184
200
239
188
258
202
151
235
198
191
282
186
210
219
209
218
194
230
229
189
189
188
176
227
199
216
198
213
200
183
184
137
187
238
207
217
179
158
229
173
225
172
223
290
216
191
180
221
209
222
203
227
233
196
131
224
208
279
158
178
215
151
214
275
186
174
211
179
206
192
220
164
237
218
201
221
149
153
241
211
197
244
194
171
144
223
223
189
196
197
160
196
208
145
248
216
177
202
147
192
227
176
243
129
178
238
132
190
231
204
148
147
238
218
247
202
226
272
183
195
193
191
206
181
193
201
196
215
192
169
171
190
208
177
150
261
225
194
138
202
270
233
168
190
302
145
167
223
258
232
166
222
203
184
153
245
175
201
167
202
92
172
265
203
253
154
251
230
201
202
230
159
187
199
182
181
138
199
239
162
155
130
160
248
227
198
212
204
163
209
187
238
146
203
246
229
165
217
213
222
186
248
172
243
236
167
260
236
199
262
185
187
218
178
137
195
247
174
243
185
220
257
251
196
151
218
141
245
198
238
210
187
217
179
146
209
225
201
182
219
220
189
216
233
181
200
202
218
172
178
255
229
253
225
201
179
273
196
228
221
237
217
239
230
207
163
196
199
215
165
107
195
206
190
238
220
169
156
164
228
205
193
257
182
224
137
199
249
185
179
277
182
194
188
186
228
239
137
218
142
210
229
184
207
158
199
179
230
189
213
135
230
193
254
236
181
188
181
241
218
212
181
168
183
242
224
205
204
199
176
169
215
165
212
180
178
200
210
191
200
232
210
241
175
215
205
203
212
196
85
192
218
209
224
169
226
151
174
249
73
243
142
151
163
172
241
209
133
222
172
138
228
284
210
261
196
225
207
214
201
213
212
220
189
250
216
288
219
155
211
257
206
237
214
169
187
212
235
222
156
210
169
206
176
155
186
169
162
202
110
193
143
217
214
135
293
171
188
202
252
207
123
186
254
215
244
183
193
203
204
194
208
218
216
200
248
231
216
154
164
171
138
235
196
175
212
209
190
246
231
202
171
215
253
173
140
171
215
153
204
228
150
209
232
271
216
176
236
164
192
264
172
196
175
182
183
227
219
170
132
213
190
181
188
198
151
199
230
202
192
188
240
225
216
165
184
100
249
222
186
250
222
227
211
250
200
149
199
188
123
206
222
195
207
231
187
275
200
146
180
197
145
174
244
203
195
201
219
177
161
185
184
190
245
213
209
245
209
221
238
244
139
244
231
206
143
223
196
212
225
182
211
185
185
211
221
219
211
152
234
276
244
213
179
202
210
184
210
248
195
163
250
233
178
229
163
191
245
158
208
205
167
248
230
197
184
205
201
233
207
226
221
269
188
148
89
216
187
182
240
237
234
108
198
136
214
279
195
275
252
196
254
197
222
149
184
172
221
212
178
212
198
223
180
210
226
253
200
193
165
263
204
164
168
178
230
205
221
238
258
216
257
208
145
251
201
213
259
235
220
185
149
187
287
183
224
220
206
198
148
126
247
212
143
170
116
155
202
233
168
177
228
213
180
186
245
265
166
227
254
147
199
195
251
212
188
223
158
198
243
162
149
161
247
198
165
247
187
237
225
255
213
200
201
220
166
183
184
215
216
198
177
146
264
194
151
246
177
212
201
146
228
176
175
215
179
186
219
236
209
212
202
226
174
177
175
200
185
210
152
188
139
179
221
214
153
242
186
174
265
208
169
219
182
210
192
170
156
286
226
208
197
176
219
125
189
193
224
273
228
206
190
214
232
207
239
254
130
269
183
200
216
181
199
211
207
253
244
167
207
237
211
162
240
225
227
225
171
190
146
224
200
166
197
223
205
235
264
187
225
176
225
203
210
164
255
162
151
172
246
226
195
193
216
153
151
187
223
234
164
185
166
232
225
156
198
276
217
197
198
275
196
209
169
226
171
211
170
213
215
76
209
132
229
151
236
210
248
124
187
209
178
173
221
199
167
214
175
257
195
185
136
228
212
259
235
276
222
196
178
210
191
199
183
237
268
251
154
197
203
131
130
195
150
174
204
203
236
233
237
202
214
202
234
182
245
160
242
190
196
223
179
151
230
227
171
149
175
237
242
243
180
199
272
190
224
158
246
203
211
217
234
231
229
220
223
208
241
213
233
188
185
186
270
168
178
219
266
157
159
202
143
203
166
199
224
228
168
240
184
216
217
208
183
242
135
207
148
210
188
203
212
199
182
212
146
201
214
197
209
225
185
222
186
232
129
229
242
218
184
204
177
186
234
167
265
225
193
216
202
217
256
189
173
197
198
192
192
229
194
208
162
160
185
99
95
219
183
209
251
244
221
268
253
220
206
179
219
239
155
183
189
191
244
182
236
216
191
218
234
199
164
172
187
232
192
212
199
255
225
223
210
183
136
221
206
227
206
177
212
218
255
235
224
223
126
215
223
205
219
202
211
220
229
217
214
236
233
163
258
227
178
191
238
214
217
162
146
187
213
152
225
188
195
272
201
221
177
167
196
113
232
151
236
242
201
207
226
138
166
206
240
225
194
186
220
153
227
145
135
225
249
229
178
187
205
224
146
228
224
268
175
228
220
165
243
162
207
184
194
217
155
209
213
201
202
136
242
222
202
227
140
221
156
250
240
182
199
231
237
196
221
202
233
172
144
217
208
164
128
221
234
161
224
251
173
225
210
222
167
173
204
198
216
201
242
203
176
223
165
232
198
203
184
189
164
253
143
206
184
258
174
213
182
224
192
172
216
169
158
242
108
198
118
212
208
253
225
205
179
191
171
213
184
201
157
158
214
224
140
219
210
257
248
177
197
162
195
165
231
235
137
202
181
195
232
272
257
261
211
191
197
161
254
187
214
189
182
254
216
186
222
197
147
210
265
203
187
199
176
221
217
180
227
218
204
247
163
180
228
245
224
186
172
198
181
218
156
234
255
170
275
145
196
252
205
233
196
228
280
216
194
234
200
192
234
256
263
192
179
232
204
198
167
180
286
183
195
173
140
202
178
155
172
230
219
250
183
180
169
163
193
161
205
209
191
144
230
200
184
197
168
164
224
241
220
173
191
235
205
233
256
170
199
279
233
202
203
153
98
227
145
229
188
248
216
172
176
248
224
180
216
178
224
203
179
137
185
264
224
186
231
223
288
210
190
143
179
230
183
184
264
168
207
191
209
143
180
198
260
177
230
170
204
162
161
236
192
114
235
156
235
167
225
226
198
176
227
217
138
234
217
167
260
220
196
182
187
223
218
158
214
224
214
189
251
213
215
238
165
198
215
218
245
194
214
189
140
264
227
185
163
221
235
218
254
207
203
157
176
241
221
176
244
240
201
152
206
140
152
217
221
232
204
188
236
180
288
214
221
174
182
242
222
254
286
201
228
222
219
208
168
194
159
233
174
115
232
174
184
235
182
252
214
249
250
233
132
97
192
118
201
178
181
156
178
188
201
239
188
215
178
119
170
135
215
224
187
206
222
151
157
186
160
239
210
231
216
181
208
195
188
199
234
124
195
212
189
227
199
186
179
209
208
182
238
230
186
186
168
157
234
136
216
217
259
237
235
178
218
258
218
219
260
123
177
170
146
201
200
168
200
221
89
212
186
216
173
209
198
183
174
201
202
274
200
206
156
169
212
229
221
154
222
172
103
178
201
206
225
216
194
218
201
168
252
224
219
217
183
250
184
222
239
265
239
193
197
266
185
210
251
202
214
161
169
195
216
167
205
227
168
232
199
187
260
247
240
171
164
237
151
178
175
227
207
224
226
237
262
225
207
131
186
199
191
206
102
192
212
208
219
155
247
210
202
187
125
197
174
256
210
142
227
216
258
238
178
196
241
243
183
229
208
206
177
151
194
209
207
223
159
226
204
221
228
184
232
173
243
171
210
210
193
210
236
160
225
222
191
193
183
199
154
172
247
184
192
249
191
173
221
149
132
196
252
220
200
225
219
187
191
155
162
210
198
166
153
196
206
146
183
245
163
228
214
229
213
236
196
216
202
181
239
165
167
237
253
191
244
244
188
250
198
180
152
123
239
219
167
248
252
224
207
188
222
169
167
254
179
190
187
202
187
133
141
210
194
219
172
179
158
151
214
161
167
197
125
196
227
180
212
212
180
254
163
214
238
137
197
244
185
271
178
211
247
207
195
184
167
210
202
210
216
182
248
222
202
230
205
185
225
211
188
232
217
151
151
218
204
158
191
238
161
169
238
222
165
252
193
188
196
206
242
215
179
273
166
221
178
197
236
191
242
143
227
200
141
197
155
126
182
254
221
222
243
250
187
163
218
177
199
226
167
204
204
168
208
164
192
171
232
240
248
136
215
210
206
179
223
212
181
130
189
164
204
252
201
134
240
269
184
222
258
231
132
162
234
230
205
133
195
234
274
134
235
222
161
192
199
227
191
195
197
175
229
154
216
174
188
266
218
233
203
235
212
116
180
146
159
185
172
215
152
204
191
159
182
190
203
210
122
188
153
213
135
239
202
186
196
226
217
224
218
154
214
209
192
200
177
226
225
197
279
208
176
147
144
154
240
224
266
224
190
196
164
187
220
214
225
214
140
219
213
156
235
268
187
232
159
226
169
149
246
202
206
188
189
175
213
247
199
229
159
192
186
190
202
209
229
237
255
257
234
199
189
214
182
213
159
289
149
140
183
177
149
190
206
178
260
238
178
239
188
246
208
185
202
166
184
248
168
230
146
152
172
206
239
197
254
262
140
234
238
183
178
162
138
256
202
192
230
180
197
189
222
155
217
194
170
213
195
173
169
157
198
226
225
169
197
227
181
239
187
135
192
228
166
204
250
205
218
129
130
216
159
241
203
195
166
193
203
222
214
154
243
234
219
201
180
235
224
242
146
175
184
183
167
194
168
183
241
177
220
184
201
264
220
222
236
174
231
173
295
228
214
149
245
169
193
242
215
185
191
217
177
249
208
169
247
237
180
183
221
218
226
206
219
221
205
219
192
237
226
199
219
185
168
226
164
208
171
213
172
161
237
162
203
217
214
234
199
164
247
210
133
231
128
229
249
149
178
221
220
165
255
233
169
209
191
249
260
202
190
211
203
223
271
145
163
156
120
198
241
254
224
192
165
260
176
206
261
267
220
184
154
200
296
261
156
257
167
191
213
192
209
209
225
142
169
171
179
218
228
229
251
182
194
203
228
231
193
191
152
235
215
222
130
215
145
204
184
226
133
228
215
222
164
143
183
183
175
241
245
196
218
230
197
157
224
244
231
163
166
212
205
182
177
203
235
199
217
216
214
244
214
214
229
171
161
223
173
130
166
197
254
235
171
190
210
161
201
195
225
214
178
210
184
202
183
193
221
239
163
175
192
209
198
120
243
200
246
238
201
174
155
206
208
203
178
195
252
210
217
179
173
240
260
227
210
172
207
182
184
200
243
185
210
163
224
139
167
201
178
178
207
161
242
208
190
156
227
211
298
228
207
199
215
204
193
199
182
180
206
147
193
229
149
179
183
201
236
176
263
245
230
225
259
227
199
143
192
203
168
153
167
186
237
185
185
200
168
174
203
210
215
163
94
210
234
205
212
194
153
204
211
258
180
206
195
199
214
231
249
206
246
164
219
218
161
241
204
268
197
191
183
170
208
193
294
194
215
235
150
231
181
178
179
172
232
234
189
173
229
152
213
190
186
235
247
197
213
254
230
220
265
183
251
223
217
265
183
273
203
237
272
212
208
193
215
195
152
204
224
196
162
202
253
201
283
183
229
213
215
248
233
217
162
147
206
136
232
146
232
202
232
185
219
211
206
234
196
216
113
178
205
209
191
164
168
155
270
167
170
198
166
226
176
141
201
202
168
203
190
235
164
241
190
177
153
185
164
222
209
234
150
242
250
218
176
146
200
121
198
213
161
206
177
170
199
152
199
267
227
239
146
176
199
199
241
205
172
216
191
242
250
218
183
148
244
174
159
167
152
225
221
202
219
232
184
180
191
219
254
177
289
233
180
272
241
273
219
175
207
193
242
216
244
203
226
109
188
167
161
188
250
211
187
246
227
203
246
177
171
236
249
234
197
225
254
232
155
179
228
210
155
192
197
259
200
182
194
204
215
216
221
184
127
227
178
169
198
207
215
188
249
148
213
169
183
208
141
208
189
84
201
194
159
207
229
261
170
141
226
242
217
172
208
264
175
199
186
283
252
239
243
257
176
141
210
182
180
255
224
172
173
146
168
248
178
220
203
183
181
188
181
131
151
207
190
177
159
177
202
226
167
243
231
136
141
203
173
175
227
213
222
135
230
126
213
180
145
220
197
214
190
121
150
190
177
180
246
230
177
115
182
191
209
184
240
160
202
184
206
266
168
218
226
191
164
234
157
190
179
249
205
177
196
197
173
194
175
219
223
229
189
237
165
124
168
246
196
213
203
141
190
238
158
210
159
174
257
265
219
178
184
231
185
192
178
236
172
176
142
167
122
191
222
244
237
170
216
219
217
230
208
191
172
190
197
149
241
144
289
174
233
162
220
211
210
176
177
192
243
155
165
216
187
182
273
210
210
195
185
190
198
184
146
214
228
157
160
186
228
175
183
215
259
190
211
230
239
220
223
256
246
184
226
222
263
208
239
205
241
207
188
179
202
226
175
168
160
250
157
151
205
253
188
255
187
183
204
175
210
286
186
201
214
264
215
230
171
179
269
150
210
204
217
230
174
192
230
211
149
205
176
184
210
210
195
203
251
242
207
230
189
188
200
209
223
178
200
202
239
166
194
208
214
178
141
236
176
225
219
214
245
218
184
245
178
236
186
182
239
126
200
200
198
218
179
247
169
189
257
181
203
136
172
165
162
201
177
199
198
211
153
206
205
232
265
140
170
186
266
189
236
206
220
160
150
210
209
200
196
256
175
236
210
190
211
194
235
206
193
158
240
195
231
205
200
179
226
239
174
210
211
193
240
219
214
199
176
171
180
149
183
193
246
214
167
230
183
128
242
170
132
166
148
200
243
192
151
195
248
279
220
195
177
256
172
191
187
255
208
265
189
184
200
198
246
210
219
207
262
175
206
226
189
138
171
175
220
196
182
224
202
164
172
163
182
239
204
213
214
228
187
204
130
246
133
199
138
187
208
200
239
184
187
221
179
135
242
175
128
170
174
152
189
181
187
208
200
212
152
215
240
162
192
231
129
153
239
196
212
203
188
216
252
156
220
207
128
157
229
225
174
152
159
217
168
171
205
170
166
165
194
217
158
146
171
185
180
253
173
191
194
207
221
196
218
165
238
220
204
219
236
161
223
232
133
203
178
180
210
239
226
213
207
171
248
198
162
193
211
191
174
185
213
191
176
190
226
211
234
244
180
147
238
145
232
228
203
226
220
193
229
240
165
201
201
201
236
242
248
173
268
238
210
211
179
215
194
237
230
193
262
256
224
203
203
207
164
191
218
198
225
190
192
224
164
204
144
199
204
227
242
165
190
153
155
221
177
218
193
162
236
179
127
127
232
207
210
169
185
227
130
251
135
206
221
209
171
183
211
169
216
199
267
217
187
129
280
221
187
186
158
225
216
231
210
142
213
237
206
211
181
205
163
192
185
137
219
279
256
161
176
195
222
234
201
218
208
223
178
216
203
245
215
247
183
158
175
208
197
239
198
251
192
218
298
171
175
260
238
165
149
160
209
198
151
190
213
271
163
219
231
135
215
198
251
229
230
163
230
178
171
192
187
153
165
193
218
249
189
147
203
149
229
198
175
232
205
128
121
193
171
207
183
197
160
244
173
202
210
214
242
174
213
185
219
232
227
158
193
171
147
186
138
159
179
226
203
174
138
239
224
207
225
163
222
187
246
204
214
211
221
183
193
204
158
155
190
181
152
219
200
235
124
172
185
236
215
236
169
208
191
221
188
224
200
193
209
185
244
202
229
175
236
152
221
209
253
191
216
203
209
216
231
195
196
228
162
199
144
246
183
220
196
214
184
218
227
216
163
175
247
231
159
204
208
176
200
204
214
238
210
175
203
190
189
212
216
199
180
233
210
239
223
156
180
182
197
213
168
193
199
199
214
155
190
248
154
204
246
229
233
166
150
167
127
227
189
239
206
177
212
283
232
208
189
203
209
179
192
196
178
166
185
239
224
151
146
216
252
252
188
186
232
223
171
138
195
199
149
146
211
197
228
147
210
230
183
135
169
180
209
177
241
228
122
227
231
186
232
210
253
178
161
107
167
207
169
128
182
196
202
208
268
205
172
211
176
221
221
211
120
193
256
196
196
197
187
262
144
237
225
242
199
175
229
251
140
235
150
239
256
157
175
222
191
222
226
228
145
215
202
209
222
220
250
170
201
178
209
80
232
179
191
175
219
225
164
195
226
191
157
233
198
188
206
176
226
214
157
192
189
176
204
167
168
214
193
182
181
166
238
167
165
150
216
235
198
183
195
185
155
250
223
211
124
236
226
176
225
171
214
223
190
165
142
202
244
120
213
183
244
237
184
140
255
214
133
215
257
220
186
240
186
199
270
199
220
152
191
164
240
204
190
186
149
100
207
198
221
225
152
203
189
191
163
130
283
196
237
150
191
221
254
202
223
215
153
258
185
197
200
286
218
224
237
231
187
233
215
214
205
158
162
192
198
201
183
227
173
203
177
231
238
214
200
276
239
183
216
219
262
171
212
205
240
161
246
216
183
211
168
220
211
199
285
186
210
216
205
176
221
192
203
201
225
217
225
175
237
192
256
212
220
193
133
227
243
186
215
122
185
198
255
212
216
199
210
208
179
151
247
253
205
234
122
220
183
257
196
176
176
124
186
196
209
215
186
229
174
215
207
226
199
204
219
232
179
185
153
218
186
188
226
216
213
214
207
216
187
194
212
150
214
227
197
183
211
197
137
179
155
227
235
200
213
207
113
141
229
185
235
169
191
143
213
207
189
272
252
164
250
241
216
168
161
210
127
215
135
202
208
164
191
212
182
198
198
194
209
208
221
273
178
223
220
202
209
240
225
215
259
201
171
253
117
208
242
213
177
278
122
172
214
171
208
216
187
176
232
198
195
205
185
213
265
239
177
210
222
159
202
172
200
195
204
175
162
198
155
234
150
155
176
174
233
160
161
234
130
200
188
224
227
243
185
228
198
210
244
243
149
255
260
142
208
243
205
191
146
179
226
243
123
181
228
181
215
151
181
207
220
258
162
246
148
223
171
246
186
156
227
139
158
202
159
202
203
266
257
251
236
219
198
169
201
181
165
146
168
223
195
136
234
214
206
227
195
224
200
177
235
225
234
218
194
151
210
177
190
213
151
207
213
248
198
198
223
207
228
184
196
217
221
166
168
219
254
163
186
145
216
194
168
191
176
80
200
210
251
263
163
237
170
236
199
187
184
167
252
262
244
265
192
169
230
208
228
192
187
177
180
175
207
239
230
138
212
174
238
172
168
213
187
210
217
248
128
255
210
160
207
265
243
214
142
176
216
250
255
184
227
231
199
210
224
224
146
215
261
170
226
262
163
203
176
183
177
157
176
177
226
161
193
178
158
207
193
202
165
153
203
179
187
166
251
222
196
193
266
144
192
259
252
212
222
195
184
233
260
178
229
204
191
148
207
271
210
185
205
171
201
212
178
180
222
258
197
199
180
227
188
183
210
212
192
157
186
199
218
222
195
199
229
194
204
223
186
219
154
161
190
121
214
196
138
193
202
282
158
238
215
213
156
257
170
177
177
164
161
181
270
230
197
168
162
245
158
205
191
230
143
219
177
241
134
209
235
163
218
136
192
179
191
195
242
237
186
158
208
219
177
184
193
169
272
160
196
182
166
184
178
156
179
177
177
198
160
199
184
182
252
220
188
176
222
209
151
171
202
253
183
162
173
203
192
252
236
214
241
160
253
207
180
224
214
188
211
214
254
174
162
204
186
233
281
211
187
194
196
273
226
131
182
250
159
255
210
197
211
157
233
190
248
237
247
183
207
242
148
220
189
242
206
226
151
230
134
183
230
155
241
152
193
246
153
183
220
211
157
163
181
174
181
224
160
215
203
231
181
229
208
138
152
219
266
285
203
200
153
187
191
162
175
145
193
289
221
168
206
203
247
259
203
196
196
132
202
234
216
167
233
200
153
109
192
146
200
120
216
110
233
144
198
212
205
187
275
215
204
188
222
167
213
224
211
200
214
199
179
237
213
186
126
232
228
244
207
222
203
183
254
237
168
244
224
183
200
158
229
216
143
223
227
221
201
157
179
240
131
225
164
194
230
211
179
179
181
248
207
125
202
170
260
142
250
203
222
213
193
274
175
174
176
153
206
199
155
260
181
188
160
159
91
136
197
213
194
178
203
247
122
195
217
170
201
194
173
181
197
185
198
213
159
182
174
278
253
225
196
148
201
158
162
211
218
203
238
168
232
237
174
204
221
213
182
214
189
192
180
233
175
193
179
227
188
168
143
205
169
181
226
212
179
203
213
190
179
244
160
193
183
172
223
195
183
184
191
208
134
185
201
210
232
199
213
211
199
208
216
216
266
158
192
262
194
204
200
182
240
216
169
173
171
182
198
183
218
201
209
232
139
271
229
160
249
186
226
189
219
177
197
197
177
227
190
230
152
178
213
180
237
252
230
176
199
204
224
142
217
251
200
181
205
176
172
272
159
220
196
210
208
206
244
203
217
214
175
221
193
208
230
254
131
255
210
195
221
194
217
107
174
224
196
158
177
152
231
205
233
196
147
167
167
175
168
180
160
218
183
204
226
196
151
99
176
250
194
103
176
182
228
186
177
234
170
195
242
248
232
217
274
196
217
211
185
204
216
244
222
145
191
144
235
143
206
190
187
185
200
211
220
182
243
215
194
238
229
243
225
203
208
205
181
214
231
163
176
244
160
194
147
189
279
175
163
181
163
213
198
177
229
166
218
123
200
181
222
228
259
210
240
200
259
255
217
183
219
224
211
210
228
170
176
182
246
198
190
155
209
210
191
158
217
213
251
253
249
235
238
179
273
172
231
157
173
226
172
209
144
196
181
213
174
211
224
230
217
156
221
235
174
296
193
183
231
254
177
222
171
191
269
172
203
158
263
179
155
228
183
158
163
176
195
205
217
204
234
218
184
199
197
234
170
223
234
190
163
123
241
201
210
220
241
191
204
208
247
159
181
184
174
214
191
200
187
169
199
182
216
217
154
221
167
200
155
127
160
219
257
164
193
224
201
178
231
191
116
183
198
245
256
239
198
155
188
176
170
161
138
229
190
191
214
182
242
219
140
238
141
232
148
168
220
211
164
288
191
174
251
156
184
199
265
252
195
220
237
189
235
220
185
203
155
168
213
245
200
208
216
170
178
164
208
168
199
255
209
184
225
201
200
185
251
188
199
235
140
243
188
209
193
196
181
195
196
223
215
199
163
244
219
204
251
246
230
157
195
218
145
179
183
206
198
122
234
215
207
125
214
214
209
229
220
207
177
174
111
137
210
245
200
204
233
152
172
161
193
190
261
214
191
249
241
194
259
183
249
188
218
203
210
174
251
245
229
269
267
177
241
161
212
251
239
192
191
177
246
274
221
267
194
126
189
184
229
157
267
211
183
210
167
218
216
201
207
169
213
184
220
141
192
241
237
181
183
203
282
225
176
227
128
239
194
161
184
211
227
192
193
230
233
201
185
198
204
214
204
188
184
208
212
195
188
117
242
178
201
240
184
197
212
188
221
152
181
238
217
240
159
205
151
166
185
191
256
171
174
266
158
158
191
179
207
245
177
214
173
193
243
138
190
238
228
224
174
229
170
178
231
237
238
208
185
155
195
199
208
220
143
234
259
223
201
157
217
180
167
255
207
180
173
200
230
164
207
219
192
195
206
214
230
236
180
209
191
181
175
214
183
226
260
236
247
229
157
197
171
230
174
161
250
222
188
180
170
240
191
245
186
255
181
216
216
246
193
261
252
156
186
225
202
224
198
249
214
198
161
181
205
144
149
188
170
158
198
166
178
216
208
240
172
197
189
208
177
255
215
193
172
226
173
223
244
173
185
190
206
257
214
194
194
209
151
201
211
159
229
181
284
174
190
182
192
235
213
189
142
238
136
248
190
149
183
200
208
228
224
247
214
235
218
160
164
245
183
208
253
249
129
230
213
214
215
187
213
201
164
273
159
207
167
231
211
202
183
206
275
211
195
216
175
228
239
187
165
100
221
237
261
170
210
268
211
190
187
175
218
163
157
236
161
225
194
270
216
272
211
260
192
240
146
186
237
275
227
200
213
163
128
197
222
160
213
181
187
241
216
208
214
262
204
234
197
209
182
163
173
189
149
124
211
225
132
280
249
208
212
218
229
231
183
212
222
229
268
176
222
237
181
149
236
210
260
200
165
203
177
237
229
177
230
230
225
225
210
162
254
186
266
142
206
256
249
203
160
145
185
248
221
192
217
265
222
204
247
201
203
220
199
128
212
197
205
162
237
239
232
179
185
294
158
228
204
180
178
230
229
197
147
252
206
166
233
251
150
238
238
159
127
202
175
217
140
239
190
249
218
164
213
212
168
273
242
169
153
224
244
238
226
202
192
201
157
260
198
176
202
155
216
234
223
179
175
176
216
214
264
165
265
219
157
205
187
178
212
233
184
193
234
221
217
208
166
133
220
154
230
138
189
173
156
232
231
172
237
213
223
216
240
186
238
171
227
226
194
203
197
220
241
262
227
243
244
228
235
178
213
267
213
254
190
169
195
139
188
211
235
213
150
210
131
211
208
198
211
155
164
212
223
163
184
184
203
191
195
276
218
229
243
185
159
190
239
192
223
211
265
196
227
226
206
220
215
201
241
192
199
171
176
215
168
203
141
179
207
195
191
195
209
147
172
140
178
197
249
270
151
201
143
162
225
223
207
197
167
160
167
127
181
163
181
198
239
218
209
176
229
192
194
207
162
176
232
229
196
164
212
187
164
148
206
217
175
156
185
238
199
200
245
160
185
156
196
176
202
163
179
143
223
141
235
256
185
211
185
174
246
210
239
236
201
186
249
171
239
166
158
208
217
231
217
253
177
216
194
207
168
278
205
229
171
239
249
216
259
164
236
162
156
164
147
170
248
189
257
237
209
146
264
222
230
173
284
228
237
219
174
249
242
151
180
225
195
169
164
177
125
215
187
179
126
217
216
186
192
170
254
127
262
176
163
208
108
146
263
165
158
205
172
180
167
238
223
179
228
203
213
196
229
214
181
257
192
194
224
175
150
256
260
217
174
185
203
199
213
229
212
217
173
215
177
236
226
151
219
208
219
177
205
202
133
227
144
176
214
184
209
244
183
220
212
254
175
211
216
189
204
159
250
245
178
227
179
173
230
217
150
173
174
239
193
192
238
144
249
226
193
196
230
200
144
250
205
143
235
154
208
177
205
216
200
186
193
175
167
216
235
241
207
213
222
190
182
191
255
163
153
114
120
205
228
186
186
209
224
167
211
162
258
245
147
181
139
178
195
200
218
213
174
207
170
227
227
233
196
226
193
154
183
206
259
201
179
201
188
157
183
207
243
207
112
249
194
214
229
206
175
237
214
180
160
279
130
247
155
206
159
242
222
160
154
239
135
255
223
124
162
211
222
176
173
238
227
154
200
226
173
208
239
191
239
183
173
199
202
239
179
176
159
243
167
178
281
137
197
183
158
202
175
247
209
253
177
188
234
190
247
199
200
213
250
197
226
198
219
228
164
195
157
244
224
173
257
233
200
176
241
149
184
163
207
228
246
179
136
165
155
212
178
167
217
146
223
203
222
201
210
192
185
151
238
146
285
227
114
159
169
200
220
219
144
178
155
221
172
232
188
166
208
125
202
180
212
223
183
228
211
249
292
185
158
210
192
253
169
216
193
232
165
172
209
241
205
213
180
215
202
224
171
139
264
170
212
193
214
187
199
134
242
134
145
194
204
186
187
214
199
183
204
126
202
173
158
151
194
198
177
172
182
260
162
135
198
201
215
148
223
170
195
233
125
279
228
165
175
218
180
154
212
218
237
262
242
157
169
208
233
192
227
212
203
183
259
255
191
164
231
196
143
280
234
220
194
173
208
258
177
214
179
208
256
130
180
236
226
202
192
205
214
175
183
188
178
136
155
204
176
165
210
232
221
172
256
109
229
204
165
255
237
174
226
154
217
214
179
196
167
184
142
191
167
203
166
185
205
152
164
169
160
207
210
212
213
171
211
138
179
226
189
280
132
210
170
168
122
305
209
191
242
150
155
214
249
185
199
175
201
185
214
221
194
172
257
130
197
230
193
211
211
238
203
140
187
221
182
180
174
178
162
231
203
217
209
220
182
180
202
215
264
177
217
135
211
198
255
228
145
186
230
128
196
161
208
217
177
253
203
150
234
261
199
224
139
176
186
168
151
192
208
169
175
184
199
254
218
184
189
188
209
237
113
165
112
130
180
201
179
188
242
223
181
236
151
252
214
115
221
232
189
195
167
165
224
198
222
170
220
238
190
176
158
212
234
171
209
190
242
156
175
159
184
203
204
182
152
167
168
219
209
201
177
234
211
166
230
214
149
121
206
221
135
145
265
196
244
181
257
220
170
224
235
173
116
247
191
216
103
247
197
220
198
182
224
188
102
210
230
186
215
221
172
225
203
171
246
179
173
264
184
205
234
152
137
178
203
115
182
145
113
218
209
203
171
194
190
182
276
181
188
229
144
212
224
282
217
145
203
224
224
202
202
214
256
298
215
115
195
160
185
238
178
194
196
180
215
218
188
176
198
172
185
223
230
161
149
235
204
224
264
194
184
185
156
137
204
236
209
185
228
159
128
162
134
179
208
209
173
241
208
209
172
196
229
211
206
243
207
170
131
249
171
222
193
244
205
221
181
96
183
266
189
167
144
195
219
259
162
202
181
216
171
229
204
220
203
210
171
243
238
178
168
259
171
191
169
244
216
238
209
242
256
187
224
145
242
227
171
200
249
253
210
134
184
183
205
219
210
179
237
186
210
218
287
254
177
143
228
159
219
222
184
152
237
208
212
206
255
252
204
216
163
236
189
183
250
196
159
188
246
238
164
144
213
209
169
207
227
241
180
241
213
230
235
198
241
126
182
213
243
214
207
224
235
248
169
247
172
129
232
188
202
192
228
224
210
233
216
197
177
239
209
236
254
208
139
178
246
145
209
218
163
215
198
123
210
156
201
209
231
255
228
105
154
253
160
229
232
161
222
228
222
217
200
186
132
243
162
204
246
181
196
161
168
166
204
192
247
226
213
271
156
217
199
231
151
212
243
270
147
216
118
183
255
261
229
239
205
222
167
201
199
265
149
237
197
193
233
204
165
175
270
160
236
224
183
213
207
214
199
223
226
233
228
211
223
178
265
267
205
170
240
248
179
117
175
134
234
173
174
209
187
177
236
212
147
173
160
175
225
227
247
197
148
145
159
247
170
199
173
179
226
202
184
137
214
127
171
193
151
238
196
187
226
190
174
212
177
171
201
133
198
224
229
200
142
228
228
232
232
200
226
226
204
233
240
197
205
118
196
160
198
143
229
133
181
164
157
128
172
218
192
206
160
216
207
238
148
172
197
185
193
214
218
231
193
235
139
244
279
161
213
219
200
232
205
220
141
225
231
224
193
216
195
274
147
181
197
142
244
174
183
198
198
182
158
193
211
181
271
145
258
188
160
253
204
196
250
220
160
188
244
258
182
174
230
179
201
293
174
203
189
197
202
161
217
171
242
204
173
226
175
206
149
144
187
155
242
225
218
206
166
221
193
191
197
253
219
182
207
233
184
152
143
219
237
223
180
265
244
179
176
216
262
185
198
177
230
163
218
212
171
225
215
257
164
255
238
206
195
196
189
203
221
215
226
160
163
174
197
181
257
184
159
198
137
160
157
203
198
202
137
149
216
146
187
245
217
240
179
248
199
230
243
264
230
227
246
166
197
202
171
192
274
227
196
206
181
226
158
144
208
168
224
228
208
283
182
261
215
191
194
222
224
216
160
231
231
212
176
162
190
156
159
214
104
179
202
235
168
227
193
181
232
239
198
229
219
198
117
210
180
216
233
153
241
146
199
178
190
183
261
218
157
147
185
175
230
163
212
201
186
255
189
216
217
256
176
195
241
224
251
154
173
220
199
182
208
210
175
181
197
228
256
193
175
235
282
196
166
197
163
160
165
221
146
204
250
257
209
160
224
166
126
182
135
175
225
171
209
247
252
161
202
286
222
107
224
230
218
212
216
206
222
249
187
233
194
119
234
156
175
183
192
231
212
190
139
218
210
255
196
219
139
257
128
141
167
198
192
224
234
201
259
206
204
246
163
226
190
264
255
168
235
157
179
192
168
161
242
192
238
246
205
258
258
212
180
241
183
227
223
124
188
140
174
217
211
233
217
210
180
189
170
211
263
179
153
222
218
190
200
181
227
190
258
218
145
203
173
218
212
242
221
235
154
185
175
194
238
212
256
184
215
250
205
196
189
235
178
217
228
176
182
173
161
261
176
243
194
222
215
176
244
196
259
234
183
192
167
192
206
234
151
247
214
174
194
187
236
214
224
189
212
225
269
260
240
174
249
188
161
202
183
154
211
209
263
127
241
199
240
192
175
140
183
162
163
213
190
251
179
151
141
245
235
194
157
210
296
163
181
204
203
221
231
244
214
170
282
190
162
124
189
177
172
198
242
188
214
144
182
173
194
191
244
203
160
259
243
125
217
215
210
156
182
189
214
177
271
163
221
199
211
177
226
174
224
241
225
197
226
218
232
171
173
177
182
186
206
210
165
174
209
167
187
209
203
212
203
200
179
216
146
217
184
220
218
186
216
227
214
168
195
234
184
181
205
217
159
245
247
212
215
225
196
253
154
213
256
177
186
229
185
174
249
202
202
199
162
187
226
219
179
118
185
209
188
225
170
168
232
126
167
250
156
193
260
201
167
141
215
207
182
172
156
192
199
198
114
235
213
192
171
214
229
180
221
134
235
249
258
215
220
185
192
230
216
192
178
199
203
193
154
167
168
216
184
217
243
223
190
166
238
264
205
228
272
230
186
160
215
180
217
179
198
188
175
168
211
233
212
212
148
157
261
224
187
152
148
189
195
203
191
244
227
182
206
179
198
244
226
179
202
200
183
192
220
294
200
198
203
243
170
190
255
149
165
241
233
165
193
185
200
180
198
163
241
214
202
179
217
222
233
234
195
178
160
146
232
141
185
243
132
188
196
207
210
147
257
111
173
155
155
222
183
205
238
160
242
240
247
199
198
229
262
182
178
246
162
202
198
193
166
160
180
221
195
163
231
167
199
138
189
202
219
192
220
195
205
109
242
221
222
170
195
180
223
166
253
184
200
256
139
206
219
167
136
189
166
207
228
235
209
193
190
147
184
201
210
238
192
272
233
216
207
256
207
223
205
204
169
251
223
234
216
189
101
218
258
213
208
165
203
184
195
181
169
162
226
213
173
215
260
154
176
173
232
226
206
196
168
191
179
201
186
174
182
192
251
142
191
168
173
198
244
219
223
178
249
209
205
206
138
235
158
153
183
197
227
188
170
216
156
217
181
232
177
152
252
209
196
206
182
143
226
182
179
236
161
217
186
204
211
234
230
183
149
218
194
179
240
163
195
187
197
261
203
209
219
178
238
255
191
226
167
249
221
180
250
230
218
250
167
191
177
183
216
150
188
220
209
180
206
212
162
140
207
270
237
209
223
220
172
167
203
188
248
228
188
220
184
249
217
159
256
183
135
184
141
214
187
162
152
239
237
188
239
228
157
175
194
176
206
169
187
149
200
271
149
192
238
281
133
196
200
198
191
257
175
253
171
148
176
192
223
163
181
151
206
233
224
172
244
238
158
210
154
231
248
178
213
80
181
145
236
154
193
187
236
181
230
195
152
245
165
258
177
146
207
240
240
185
174
199
178
187
188
220
260
229
166
216
198
201
205
187
171
120
148
186
183
255
224
183
250
200
149
157
155
149
212
208
193
208
222
189
241
291
162
224
185
219
171
195
181
180
226
260
187
245
200
244
273
237
281
170
228
179
173
240
225
196
190
172
208
195
189
196
203
216
153
176
221
179
192
249
204
242
179
185
198
196
122
146
229
223
192
209
102
246
195
195
255
117
233
244
228
162
239
233
175
157
185
231
283
192
230
263
191
213
206
222
216
124
146
210
189
220
212
241
217
181
186
256
177
206
135
162
199
178
186
175
181
202
263
117
179
210
188
198
105
188
183
147
223
225
205
235
194
205
203
263
234
178
192
166
196
212
229
254
142
153
240
228
220
250
268
192
183
248
227
173
220
108
197
181
172
216
224
221
165
233
198
192
185
175
246
160
207
206
233
215
211
67
217
204
269
176
175
193
222
243
146
164
169
195
153
147
190
230
177
141
175
225
209
149
173
206
224
152
148
184
179
210
204
219
249
223
186
178
168
201
243
202
184
197
246
202
227
201
218
130
190
179
201
176
235
217
232
181
163
216
226
182
242
117
175
193
164
224
179
230
228
128
174
189
236
270
211
149
238
208
229
208
171
274
158
170
207
159
165
224
249
263
213
153
178
213
232
171
155
154
176
253
234
213
125
217
169
216
261
178
166
133
218
208
236
228
108
190
204
220
206
186
143
186
204
219
181
180
163
197
215
193
143
190
251
209
165
181
242
136
150
217
162
158
175
108
203
144
149
204
213
219
268
168
174
166
234
183
164
202
170
243
188
252
210
211
221
192
186
179
164
219
164
180
180
184
166
242
197
259
182
218
229
244
210
196
199
225
228
175
180
197
168
176
190
207
241
148
207
210
217
164
226
183
195
197
225
241
190
198
231
184
226
200
233
163
171
185
218
181
251
196
224
236
204
223
171
204
209
204
163
197
240
147
149
194
246
238
198
209
226
220
199
172
151
238
190
216
185
151
172
145
214
175
217
231
233
202
254
195
196
215
221
207
199
188
176
257
190
175
207
228
224
184
183
284
221
208
222
223
268
201
182
188
169
202
219
191
250
220
217
189
185
186
176
190
177
262
175
224
199
195
220
218
198
186
244
172
222
160
179
207
181
234
224
244
207
234
177
205
242
237
219
195
197
205
117
235
202
168
206
183
182
202
198
198
210
203
238
178
184
214
178
183
212
221
169
227
197
209
221
247
194
229
202
200
223
197
185
176
198
209
257
209
186
187
197
185
202
248
139
179
185
195
171
243
254
201
122
248
211
169
225
219
175
247
219
208
211
235
232
237
190
147
202
253
164
249
245
257
205
162
213
184
145
234
198
267
261
139
144
138
179
198
252
200
190
190
198
156
195
196
191
228
231
178
188
233
162
211
207
189
252
227
152
205
237
163
206
179
232
223
146
261
192
199
146
184
206
131
177
169
141
242
226
209
189
251
157
188
231
238
166
191
171
219
207
190
226
239
176
208
173
202
233
148
183
223
191
254
219
163
154
180
158
238
208
165
221
158
241
212
194
176
214
219
164
185
160
202
205
188
199
220
235
203
268
189
239
251
196
109
183
250
164
177
189
201
159
167
254
131
183
186
204
168
221
221
175
169
219
225
245
190
255
189
221
193
162
139
248
197
221
172
134
204
205
195
191
240
200
146
234
200
215
176
262
134
207
215
205
252
203
218
246
252
159
144
149
167
234
239
232
133
184
186
238
195
177
209
130
256
218
185
189
223
154
184
217
197
145
201
198
244
232
238
128
189
181
163
208
229
197
148
163
205
214
170
216
197
208
226
213
162
197
196
240
235
217
205
135
176
214
196
203
160
195
214
223
169
176
159
185
269
206
165
182
171
208
168
204
113
233
179
239
178
212
202
136
176
253
281
151
204
177
166
217
142
224
234
205
222
117
168
171
226
180
265
212
260
240
146
217
194
202
204
184
164
227
172
221
295
226
170
210
147
281
190
198
204
201
164
187
204
130
148
209
175
214
194
202
217
146
102
202
240
181
247
214
205
168
247
198
173
210
164
167
208
168
248
159
163
222
185
230
212
210
179
268
227
259
220
222
194
225
186
175
284
203
187
237
175
191
209
199
218
178
197
189
232
228
137
199
132
213
254
238
215
226
167
179
187
201
192
241
179
164
183
207
216
189
153
155
174
213
108
208
213
171
194
205
176
177
237
178
185
219
229
227
214
236
201
148
174
148
227
214
234
266
209
184
222
211
267
227
194
203
199
203
220
249
195
178
180
192
188
196
119
236
252
195
170
274
209
216
238
209
225
195
205
213
184
224
218
267
158
191
189
232
190
206
160
221
203
231
162
176
196
216
199
160
167
199
214
225
171
226
202
229
202
196
266
226
204
240
220
196
222
217
248
176
230
170
192
218
215
229
214
173
217
167
141
245
188
180
196
219
205
187
197
191
231
207
209
194
153
214
198
224
194
174
182
173
204
217
247
181
201
145
253
222
193
229
201
191
184
185
227
178
147
202
172
219
161
190
184
251
259
215
216
256
156
198
220
258
193
175
164
203
239
206
240
234
201
239
229
253
210
228
230
192
238
227
210
229
122
211
164
224
199
176
212
188
172
261
201
235
201
205
215
173
196
150
194
185
150
268
212
145
147
157
219
171
241
166
250
181
224
226
188
166
221
277
177
245
234
174
204
240
203
194
263
163
262
188
200
193
181
194
217
169
226
108
182
212
213
208
125
219
262
160
180
169
161
234
240
254
195
161
186
166
152
161
184
223
234
149
235
206
141
129
171
227
159
166
191
184
200
156
227
205
225
240
195
171
245
239
206
208
210
194
172
207
199
172
231
235
248
137
192
176
207
226
240
122
270
191
192
160
212
246
147
232
193
179
236
230
187
178
174
227
152
162
186
203
133
247
226
169
219
195
255
139
173
200
181
184
196
218
223
209
206
246
225
218
208
175
223
145
161
180
154
148
250
180
163
201
235
263
171
202
212
228
232
187
148
180
194
181
242
213
263
204
247
241
187
249
207
210
176
205
174
185
227
230
250
155
223
160
165
148
221
180
212
171
228
172
205
164
227
236
141
148
209
205
216
233
195
234
144
171
198
157
229
235
198
219
167
252
255
250
232
256
208
210
180
194
197
204
171
196
177
257
220
179
211
152
205
190
204
173
196
215
262
192
206
231
178
216
203
176
181
211
189
166
223
171
198
239
247
205
183
184
225
201
206
198
200
159
222
207
160
113
159
193
197
252
217
173
177
169
246
207
190
198
166
202
201
182
148
220
224
242
202
189
220
182
109
182
306
217
168
162
139
129
228
203
225
271
234
261
165
151
230
166
252
144
192
238
180
153
218
193
227
254
251
208
178
207
246
252
243
179
156
185
228
218
157
196
231
209
142
161
159
243
151
170
212
211
226
200
184
208
199
191
241
210
105
218
188
220
257
192
199
179
194
211
186
194
126
234
273
212
202
202
164
269
125
197
251
136
225
170
180
209
234
153
215
187
214
175
169
204
215
203
188
204
204
196
207
179
189
188
188
182
205
180
186
221
211
285
209
240
202
250
182
146
226
189
236
194
210
182
210
170
170
182
198
215
223
159
194
224
222
240
214
180
198
196
190
273
211
204
126
221
212
213
219
173
245
169
233
212
217
185
234
180
229
132
172
203
249
192
221
240
165
127
199
204
237
195
195
237
224
210
223
136
141
168
183
212
191
203
156
194
252
231
127
202
200
225
204
208
201
206
188
201
191
223
200
213
259
241
184
143
261
206
228
223
164
205
254
174
124
215
221
150
166
206
177
175
193
218
162
155
189
196
207
197
223
219
200
163
190
206
214
255
232
226
233
226
104
189
204
200
172
203
216
198
204
236
213
164
202
161
137
183
229
186
231
237
246
196
214
226
162
228
199
175
210
196
171
167
223
175
128
163
213
164
180
192
222
181
250
174
201
231
240
246
176
191
175
239
230
260
125
172
243
164
151
179
170
209
135
222
196
228
181
190
130
224
210
224
207
148
240
201
226
146
147
205
192
189
176
214
203
178
249
183
227
157
192
203
247
171
168
218
240
284
184
228
259
190
228
171
231
153
186
205
187
207
198
243
271
230
161
194
212
177
173
207
193
225
199
225
226
185
210
178
175
158
176
182
152
186
236
238
169
183
245
205
254
218
230
223
259
179
215
182
201
150
104
209
194
196
167
171
198
285
179
228
139
235
182
177
196
209
156
253
233
226
173
183
204
207
216
200
191
201
221
180
234
214
186
191
145
166
229
191
199
157
239
205
172
198
213
173
199
188
194
218
160
161
249
205
236
201
219
163
211
210
156
249
196
256
220
230
224
154
203
206
184
225
163
207
218
226
229
210
158
123
156
189
142
197
200
201
220
202
177
147
176
178
191
211
215
275
203
187
174
187
218
240
226
211
188
239
158
186
232
192
207
205
227
209
253
238
182
230
268
226
183
282
205
217
249
196
137
207
185
182
212
213
226
178
235
191
239
187
157
159
249
238
170
279
220
184
145
216
181
198
143
171
188
223
218
165
165
197
189
219
210
137
243
121
243
174
191
182
177
221
209
236
221
105
191
256
227
182
187
204
230
196
231
207
197
146
187
139
232
153
181
259
176
215
190
256
181
207
192
229
183
201
185
230
215
225
207
252
172
177
203
185
221
248
218
167
196
210
266
212
199
167
277
171
207
219
199
147
192
200
179
219
177
168
158
218
230
192
194
207
217
166
226
174
249
189
209
178
160
235
197
207
173
158
221
180
221
197
255
227
130
175
180
197
223
165
250
188
192
165
191
202
198
216
176
237
199
229
153
259
191
250
275
239
221
196
275
211
177
136
218
175
146
202
273
182
215
164
241
142
114
172
229
122
215
213
164
224
200
216
244
205
195
192
208
216
204
263
180
212
199
188
204
148
202
224
182
148
158
192
221
189
195
233
190
246
216
169
211
140
161
259
236
190
169
207
206
205
229
182
224
186
220
195
194
195
188
243
199
150
254
228
179
190
186
184
126
212
182
222
128
219
181
160
179
202
195
211
199
183
186
173
219
179
167
205
180
177
215
189
194
258
161
132
211
215
181
220
194
213
196
202
223
172
191
200
220
236
146
214
191
144
212
197
257
170
212
123
159
217
213
187
262
187
230
196
230
198
201
160
152
167
223
164
207
229
267
206
187
206
207
79
173
229
238
182
254
210
192
189
312
187
232
172
200
289
229
142
197
231
138
233
231
187
210
251
147
197
214
223
164
177
238
255
235
197
217
237
168
190
250
197
252
212
223
159
190
202
163
219
237
206
200
201
215
208
203
231
188
155
181
262
197
190
192
208
209
224
171
220
221
238
178
197
186
228
168
161
236
204
254
206
185
184
242
206
194
252
140
202
178
213
147
138
142
193
136
161
153
168
226
191
230
240
174
237
257
153
196
142
214
202
152
180
224
190
188
192
275
183
248
212
168
247
203
191
202
190
213
194
195
204
252
204
175
256
201
117
261
195
154
181
231
113
246
163
167
227
140
132
194
194
226
199
189
165
231
171
214
229
144
220
221
170
208
186
183
232
177
244
216
204
163
193
233
143
234
221
195
244
209
186
228
271
219
213
141
99
230
262
149
251
157
221
207
150
231
166
210
120
196
240
154
250
185
165
174
179
202
280
121
220
214
282
195
178
194
169
220
236
204
179
199
192
170
213
213
178
218
195
136
170
200
171
197
229
163
204
166
213
228
202
202
203
200
219
168
203
212
196
136
141
208
196
198
169
245
164
178
136
208
197
233
191
281
200
253
177
262
125
242
231
234
185
230
158
198
124
221
224
125
199
221
154
229
210
261
230
181
274
146
241
188
176
222
216
204
193
189
190
151
228
187
215
194
203
243
271
219
206
211
222
177
169
176
266
178
238
222
257
214
200
191
246
242
143
203
166
206
206
185
224
209
202
221
222
223
230
224
218
169
164
199
227
274
153
237
158
168
235
209
182
239
212
172
245
160
184
246
177
154
210
239
172
209
249
216
171
178
163
184
166
159
209
163
235
213
191
226
225
212
235
242
223
124
215
237
186
178
152
149
163
231
208
213
221
183
156
198
248
180
193
177
141
199
170
225
215
140
186
142
199
181
143
170
203
205
193
213
192
224
264
242
163
194
185
169
199
240
119
118
196
196
217
146
199
177
246
234
279
201
181
206
162
158
203
213
205
195
198
194
193
227
210
254
226
166
233
232
221
212
150
212
225
211
236
211
183
227
175
209
122
182
229
203
264
192
209
160
229
173
209
232
99
208
198
204
173
201
249
253
183
230
207
208
257
156
228
139
239
182
190
109
151
165
165
194
188
210
216
179
230
188
186
187
263
254
175
145
229
236
261
260
193
235
160
189
227
223
235
211
236
220
190
159
203
149
242
251
157
177
192
236
290
196
156
137
192
226
228
241
213
215
230
215
236
238
175
215
208
174
184
141
83
210
208
171
180
239
230
211
246
177
242
207
164
178
168
203
210
165
169
174
219
196
230
195
157
233
214
231
201
236
220
177
223
260
227
235
207
171
198
215
208
161
215
162
214
242
238
216
178
261
202
214
211
255
208
210
194
239
235
181
156
164
173
166
188
165
243
163
165
239
184
229
162
136
151
194
190
155
164
177
145
193
242
241
185
178
180
160
185
204
172
192
207
245
187
146
161
146
190
233
182
187
239
223
148
269
227
216
181
188
238
196
223
230
175
233
216
220
185
194
278
190
189
219
178
225
233
206
152
193
272
248
170
174
216
239
152
238
244
251
220
149
229
171
221
157
184
250
176
201
188
183
170
141
193
261
135
185
233
200
240
214
190
199
177
226
149
177
262
148
157
209
213
188
197
189
228
184
199
227
156
263
243
199
213
173
208
207
153
226
187
243
185
260
211
231
190
144
160
218
243
237
164
255
173
227
292
187
153
216
241
185
227
185
191
225
214
97
252
200
180
264
136
213
235
210
193
220
223
207
227
189
202
157
196
256
217
210
196
200
204
184
190
181
234
185
210
249
233
180
165
217
185
180
178
171
215
205
209
162
181
214
234
224
196
199
193
154
165
182
244
241
192
224
162
162
199
183
176
209
221
204
169
205
220
240
180
208
121
226
208
230
179
182
200
171
178
188
250
185
227
233
267
208
195
199
226
233
173
208
189
196
143
198
130
161
202
181
219
224
220
168
209
189
250
174
215
193
182
167
229
242
192
159
166
235
187
162
179
163
216
235
260
151
166
172
201
174
201
190
227
200
180
207
166
198
203
144
234
206
226
208
206
199
197
176
218
220
167
129
234
250
211
207
144
260
213
224
175
189
207
192
150
188
244
168
224
205
159
207
229
150
191
255
248
254
210
202
198
174
195
160
182
235
264
204
221
158
179
208
235
193
259
212
206
187
158
199
217
182
187
218
244
168
177
215
146
219
239
222
199
210
245
189
207
189
234
200
249
175
244
167
205
186
194
267
204
220
245
186
211
229
209
212
181
132
197
274
221
154
129
184
202
213
211
238
239
243
166
201
192
154
147
208
178
231
160
218
196
241
231
223
147
194
170
184
207
202
147
193
130
238
267
205
210
179
208
224
163
195
199
197
197
215
155
222
195
214
189
164
219
205
235
223
237
230
182
186
193
160
204
193
182
185
216
183
218
233
152
248
214
206
173
269
224
205
253
226
162
260
177
231
173
206
205
223
239
244
184
137
162
154
199
253
191
238
175
234
148
270
208
235
168
228
174
166
266
209
235
217
252
191
213
92
145
200
175
256
247
245
236
194
101
266
157
208
158
182
227
194
197
222
203
209
210
215
175
210
149
221
201
239
176
166
189
190
153
228
241
183
249
237
225
212
211
234
169
214
216
244
240
123
229
215
240
221
217
178
201
105
237
203
182
237
219
230
163
210
183
211
168
180
174
169
211
200
176
195
190
298
129
181
219
215
183
165
174
162
137
226
234
232
189
171
254
214
148
164
200
172
141
215
235
158
198
168
209
205
210
247
240
195
182
222
259
180
295
169
147
152
214
209
193
212
240
213
164
150
234
187
160
183
223
169
148
187
201
244
215
201
189
185
231
218
145
202
186
235
228
230
204
266
199
222
240
189
210
170
120
232
221
168
219
141
211
179
220
216
215
161
221
245
197
203
262
222
187
178
191
198
239
202
173
160
260
181
177
202
229
196
214
228
186
138
229
192
238
190
164
213
187
223
211
142
261
221
221
218
133
205
186
186
227
195
191
199
154
177
235
202
235
245
169
199
230
239
183
216
195
223
157
223
248
223
237
189
154
195
197
207
233
148
186
208
256
214
195
220
234
131
149
248
256
232
161
217
204
165
184
152
184
233
227
226
188
221
174
159
184
224
239
191
261
223
151
192
172
205
213
223
151
180
152
211
144
174
182
188
200
220
162
178
195
147
200
256
169
183
152
232
152
176
243
216
188
195
173
200
151
184
197
200
175
183
234
229
224
153
237
173
179
245
167
202
178
188
139
245
193
146
186
246
174
218
213
238
186
243
199
198
136
178
216
240
224
160
183
233
240
214
203
216
222
186
151
173
140
142
209
128
198
238
227
202
267
244
201
158
219
225
183
243
164
212
210
200
204
227
193
260
174
182
159
233
243
213
166
207
218
214
202
193
282
273
161
161
260
222
175
152
198
129
155
189
128
194
186
197
211
139
215
249
174
215
93
210
223
109
243
186
200
255
162
186
198
177
146
214
201
192
225
239
161
229
233
234
190
221
180
222
196
199
237
160
261
181
150
170
211
147
247
197
223
230
272
233
200
176
195
234
218
200
222
179
244
250
253
241
183
178
229
220
195
265
210
266
258
96
210
152
206
175
191
186
159
251
155
209
176
171
228
161
209
237
158
295
186
133
185
235
221
145
165
179
238
131
182
150
210
207
177
217
189
160
245
200
164
156
168
208
203
226
235
280
229
199
149
167
221
232
209
254
241
174
76
233
245
198
257
201
148
176
177
222
198
218
145
193
209
216
167
244
192
218
170
186
234
233
192
217
176
189
233
123
186
223
178
218
151
254
158
162
126
159
238
163
151
238
178
196
171
130
235
158
208
159
121
260
191
233
171
240
155
197
154
197
224
213
183
225
214
199
206
231
216
184
209
236
201
190
232
179
212
215
234
165
182
283
210
232
149
213
219
190
215
223
189
220
242
221
174
170
220
237
187
278
133
210
171
250
147
199
193
230
145
165
217
208
175
215
247
199
215
206
237
188
266
220
212
222
157
190
166
186
210
224
235
252
112
219
181
215
194
143
176
207
223
172
240
197
197
169
201
181
128
206
214
244
182
271
234
184
210
161
248
184
217
219
251
259
174
186
244
204
170
203
131
184
264
232
165
97
209
214
192
218
198
218
254
189
161
239
169
179
153
220
232
191
192
216
203
205
222
188
241
195
211
242
187
164
185
200
168
203
227
234
223
147
159
192
186
157
244
174
217
204
209
220
217
182
205
219
121
192
182
228
199
244
135
221
197
191
191
224
178
230
162
193
154
205
226
154
190
237
186
166
190
268
225
167
187
119
132
209
196
163
188
178
210
210
192
211
209
212
221
237
268
131
222
152
98
207
180
195
205
193
242
190
158
215
219
266
199
151
133
140
196
215
203
163
196
209
193
169
162
180
226
180
170
197
210
176
243
195
139
254
240
213
191
165
151
197
162
182
190
234
182
234
287
221
169
192
262
257
164
143
214
218
194
160
209
211
187
190
190
205
200
205
190
200
223
239
205
227
190
229
224
171
226
165
200
254
235
197
194
141
211
213
179
233
222
124
192
163
239
236
204
227
246
286
184
130
200
167
195
163
218
234
232
174
192
223
206
198
189
158
226
223
188
165
211
192
195
235
185
222
200
158
267
190
224
206
216
219
177
195
218
175
167
222
177
198
232
197
210
249
228
142
198
195
213
230
246
176
207
176
169
234
213
191
144
262
188
199
182
167
189
227
188
168
230
221
167
189
176
217
174
180
163
256
181
182
203
179
158
213
139
192
211
113
215
158
187
187
208
196
194
186
203
184
174
220
151
206
168
187
162
157
194
191
237
177
218
151
186
211
222
210
169
154
225
262
157
165
281
207
236
183
156
197
169
134
195
244
195
210
182
192
190
216
189
247
245
199
174
201
275
152
228
218
194
225
217
203
205
188
201
160
194
226
261
150
149
175
218
188
177
190
213
239
177
186
192
158
179
185
239
205
182
220
246
224
179
242
167
195
172
187
160
137
138
157
226
156
226
195
177
194
272
162
215
191
191
211
193
176
216
172
164
190
207
242
188
197
243
157
242
235
241
162
228
233
201
213
213
234
105
201
203
142
173
244
233
187
199
232
256
189
207
151
176
162
154
159
134
214
248
182
219
226
244
218
252
267
237
207
168
161
252
177
170
171
187
189
162
218
157
194
253
185
227
218
198
194
216
203
215
167
164
214
218
155
261
180
207
256
226
153
162
196
262
191
246
162
202
199
175
158
214
183
162
178
157
189
255
176
217
216
197
206
152
216
262
218
210
200
252
141
211
197
250
190
203
132
195
270
229
176
66
139
216
179
194
188
146
141
187
206
195
233
214
210
227
150
282
191
219
255
238
196
132
198
159
193
184
182
168
254
238
233
201
247
186
214
205
215
248
210
133
217
211
175
219
217
252
221
153
183
169
237
142
172
166
196
262
152
219
229
256
180
224
217
212
177
194
209
152
164
124
187
251
195
190
242
201
153
183
109
181
214
208
196
202
235
155
210
160
212
215
154
198
211
180
206
161
163
175
199
219
175
170
204
206
175
206
166
173
232
146
192
271
165
211
239
218
194
171
257
233
243
138
194
177
173
208
206
203
219
175
162
231
267
203
250
187
215
226
222
201
186
152
218
187
165
230
191
164
180
182
209
189
194
233
158
211
217
284
137
218
236
195
180
205
214
215
216
168
217
172
205
190
207
183
179
198
199
143
171
220
205
204
217
233
270
249
137
179
211
221
226
180
251
160
216
137
155
230
205
183
198
271
181
250
219
157
239
198
232
180
246
169
175
219
208
208
200
198
135
196
191
211
210
238
230
240
220
219
239
250
214
237
183
205
253
174
123
233
193
215
183
255
247
247
209
178
178
180
209
228
253
230
229
207
186
205
163
174
159
144
183
178
260
260
193
221
170
199
234
134
199
183
190
247
179
197
174
154
235
216
170
146
213
212
215
170
139
257
194
194
134
200
219
214
260
252
266
252
133
225
194
213
165
212
160
228
234
144
255
225
194
167
205
184
234
154
226
202
199
205
200
204
212
228
130
213
154
174
194
187
197
221
231
189
175
260
167
211
153
192
239
144
178
204
201
277
157
199
227
189
183
183
164
229
122
178
242
146
207
223
157
213
239
178
199
208
209
210
229
205
177
221
207
181
164
214
155
205
242
223
251
152
217
108
191
211
121
107
259
177
228
141
180
169
187
231
185
211
168
259
233
162
223
225
159
190
225
248
187
171
220
219
194
197
256
153
191
248
149
279
127
247
179
160
199
184
236
206
211
212
257
200
165
157
158
161
171
202
189
216
249
205
179
232
193
276
200
247
159
200
218
134
199
186
194
153
212
190
194
259
247
223
175
247
203
184
225
200
178
154
212
226
283
167
224
184
163
249
144
223
199
191
121
204
166
203
191
209
216
184
171
227
241
199
167
233
171
192
181
186
177
168
197
218
178
199
254
103
248
207
227
221
222
237
232
229
180
240
201
280
154
212
171
230
134
166
194
219
185
240
220
225
192
217
213
226
190
199
159
230
172
234
240
171
219
233
232
181
185
219
223
221
212
228
106
238
198
187
237
172
176
206
147
212
237
169
218
200
162
155
177
180
225
158
205
216
215
194
204
216
181
202
200
216
232
174
180
189
98
135
185
180
154
219
224
199
163
185
129
244
188
204
254
141
265
208
206
156
219
198
171
216
188
242
151
244
184
158
218
205
132
196
204
186
192
165
217
197
121
230
155
139
189
175
173
199
242
135
207
219
212
166
204
183
183
188
259
173
195
217
195
209
230
242
165
244
190
223
213
239
191
172
200
204
163
149
199
215
175
210
234
205
210
228
234
171
189
237
207
200
197
191
179
207
260
241
188
187
166
160
234
245
195
196
221
129
227
172
186
199
138
176
227
204
254
175
218
176
275
182
161
182
184
231
164
192
241
231
180
171
209
205
242
210
148
226
182
145
252
165
185
158
231
194
220
203
120
70
198
175
220
222
194
216
188
224
224
198
206
194
234
189
141
142
205
154
198
182
207
204
167
149
183
210
199
234
210
158
230
243
198
171
196
186
214
202
172
213
233
227
197
156
202
209
214
140
160
212
221
185
222
134
178
216
188
193
225
127
169
211
211
243
226
178
198
212
227
223
208
289
164
269
189
234
199
148
170
164
228
246
183
101
250
177
209
172
160
159
206
187
223
239
259
173
269
202
165
251
173
241
192
245
168
233
182
221
282
248
171
196
193
169
262
211
241
157
177
183
203
175
162
132
252
209
205
146
182
224
176
164
126
192
266
210
240
237
178
162
200
131
224
191
209
215
249
172
155
151
243
185
224
221
238
185
185
210
185
202
153
212
175
243
236
199
206
215
201
225
168
216
191
236
236
184
183
228
169
214
211
189
180
224
217
222
221
143
159
153
216
178
225
155
204
175
227
203
146
142
186
111
230
224
201
254
199
201
224
235
212
166
242
172
202
203
247
214
154
199
237
229
248
189
189
201
198
215
162
167
149
221
141
173
208
220
210
216
244
158
154
225
184
194
220
231
178
205
137
207
213
134
158
214
234
176
167
180
201
254
185
202
218
180
191
184
175
204
173
220
159
216
201
190
187
205
235
195
216
223
141
202
157
176
265
198
179
233
167
165
196
148
174
257
156
183
201
193
207
239
229
128
160
179
198
200
190
223
173
243
247
243
196
187
237
202
252
165
209
193
212
213
200
278
210
217
188
157
256
219
138
121
266
141
239
249
197
167
166
180
222
218
232
214
182
216
208
258
186
197
168
163
224
185
238
203
165
192
169
187
248
191
122
166
203
239
177
209
179
175
217
305
181
117
205
189
120
180
205
266
217
248
147
203
214
232
254
164
259
217
196
211
207
224
176
169
232
228
222
257
131
187
228
226
250
213
203
191
225
178
233
151
230
278
200
157
249
189
219
209
197
215
174
176
200
246
243
201
218
184
215
185
222
211
260
240
184
170
190
205
189
200
177
213
215
200
134
164
243
193
226
135
252
163
215
143
130
190
238
243
212
190
161
208
190
223
175
252
165
269
225
188
199
207
178
175
227
212
199
226
167
230
215
209
202
203
187
163
185
187
160
192
257
232
221
241
178
228
187
182
242
183
252
196
237
236
213
229
207
225
217
186
244
203
231
230
123
216
135
196
244
202
242
216
172
262
121
252
221
129
232
264
188
178
200
181
194
229
228
204
165
164
221
212
189
266
265
248
243
190
196
184
224
207
206
201
224
201
225
195
206
206
188
146
178
219
262
190
210
190
180
239
243
157
147
178
224
209
186
207
172
177
187
203
198
192
188
154
220
239
177
271
194
213
192
139
205
251
212
264
199
249
202
250
217
157
144
226
206
187
234
252
201
167
231
171
217
228
201
222
180
187
184
219
139
220
281
218
178
214
143
258
214
220
156
227
191
222
180
150
213
115
200
163
170
176
160
245
216
262
226
188
281
253
234
191
190
222
211
193
175
197
225
182
148
230
248
170
224
188
128
144
180
168
245
228
246
139
211
199
213
267
160
173
214
196
236
219
166
217
226
179
217
209
250
189
192
240
194
235
182
209
88
183
175
146
204
164
143
153
215
216
197
189
216
220
188
206
241
160
178
181
190
203
185
174
193
198
260
179
234
214
191
239
167
247
159
198
173
165
277
164
218
195
156
179
185
214
217
207
172
231
191
224
191
262
181
196
174
214
245
174
168
172
171
190
205
222
243
199
202
178
118
206
189
181
169
176
196
209
106
233
251
223
213
205
199
207
185
169
194
183
131
242
203
182
177
215
210
220
196
219
189
189
190
208
212
189
182
165
242
276
221
219
167
206
230
195
246
269
227
165
141
205
171
210
145
207
260
182
215
174
253
140
190
148
195
224
223
245
211
215
210
222
175
188
246
183
215
184
197
190
232
238
233
219
149
220
143
213
194
218
213
246
178
161
136
141
236
230
156
208
260
187
188
208
183
140
193
221
167
216
157
191
230
163
182
185
180
231
269
260
143
199
171
210
183
179
193
205
262
200
195
241
160
161
171
182
255
231
163
211
257
158
198
202
177
188
194
252
194
235
194
240
154
176
129
198
170
172
207
252
210
171
189
173
191
191
239
257
224
251
257
188
218
231
225
237
206
172
246
216
159
170
205
229
207
180
258
225
196
206
230
228
190
206
204
132
218
296
232
235
217
148
221
173
235
197
187
202
240
169
168
200
243
271
155
218
159
198
170
201
232
218
191
223
221
182
192
187
146
202
191
177
247
154
274
251
148
185
205
220
184
270
210
181
137
188
181
210
223
149
219
232
193
214
161
212
200
224
210
175
184
194
158
250
263
215
183
195
160
234
225
197
189
192
135
207
139
187
230
282
231
124
255
215
224
186
205
218
233
179
164
165
233
196
169
164
280
271
223
216
209
199
196
173
182
183
192
240
184
174
179
139
202
244
207
175
217
112
218
235
190
185
203
206
247
151
126
209
194
249
181
236
185
215
168
201
162
194
249
221
145
216
177
213
196
218
187
268
223
134
184
263
149
230
168
217
261
173
226
257
256
231
206
210
181
249
249
112
209
204
201
218
132
190
178
210
208
197
198
158
271
213
167
205
197
173
125
205
228
180
188
190
222
181
240
172
227
163
174
188
237
199
194
196
204
169
188
231
242
211
222
218
223
201
187
166
134
215
217
192
208
209
164
148
249
188
171
197
199
120
200
219
194
181
262
236
219
240
234
202
212
214
187
150
158
191
219
205
210
152
226
183
250
183
216
249
224
228
184
127
235
210
159
189
209
224
162
233
234
180
248
166
240
187
207
179
252
224
161
197
213
258
141
127
202
195
212
153
162
186
232
181
180
208
198
237
156
223
190
229
232
174
196
244
222
210
197
176
198
181
153
187
129
144
212
255
225
182
226
212
217
213
259
189
168
209
194
208
237
166
262
213
250
195
198
189
185
157
223
199
216
219
147
171
173
169
239
207
243
177
233
155
205
165
174
180
230
240
207
202
193
147
194
184
227
181
183
195
181
252
182
216
165
204
203
191
192
164
203
173
202
139
200
156
180
212
230
273
185
208
146
223
128
192
252
184
240
214
237
193
196
155
220
134
290
234
205
244
171
167
152
194
154
161
159
118
166
213
163
246
203
177
198
240
189
230
200
260
180
201
200
143
187
227
169
191
194
163
160
240
158
216
243
269
196
182
206
263
196
217
231
217
211
160
169
227
122
187
228
213
145
250
211
239
203
210
210
195
261
239
198
288
226
193
211
231
208
175
152
195
213
196
200
168
206
202
179
174
178
191
189
222
166
181
229
216
211
194
210
241
223
174
189
220
236
238
234
223
119
208
208
210
171
140
153
153
172
199
215
210
206
206
137
242
212
210
235
201
147
203
170
170
211
196
170
202
201
210
205
253
191
204
204
205
197
197
203
234
203
224
243
180
224
190
162
230
202
220
113
164
209
225
211
220
201
253
218
196
228
288
178
243
172
210
243
183
200
284
199
196
272
186
243
191
243
198
225
169
155
191
157
173
211
188
244
238
168
128
211
202
121
211
217
224
226
210
213
207
127
225
192
220
215
181
222
212
181
179
182
250
269
174
254
231
217
175
201
245
234
257
204
202
251
211
191
254
130
202
225
166
137
213
202
156
234
134
248
184
191
181
148
193
233
263
200
205
229
235
182
218
225
209
239
207
210
230
216
183
229
149
142
201
220
206
172
195
178
208
230
206
156
186
168
188
214
198
232
158
195
197
182
204
149
144
202
111
166
184
214
213
165
212
195
176
250
192
224
218
176
122
196
217
204
198
248
187
163
199
181
186
240
206
195
155
216
158
154
118
210
121
241
193
160
213
214
173
229
136
199
156
207
203
215
219
241
198
223
253
199
258
206
247
225
213
189
226
196
216
264
174
243
142
245
157
245
146
141
190
201
235
176
230
173
172
183
260
166
251
267
247
201
235
214
214
173
182
205
253
181
212
223
255
162
206
227
229
184
164
213
218
224
247
226
259
233
228
219
256
187
194
224
179
171
261
143
215
172
173
179
191
214
194
187
167
192
166
169
189
238
226
192
167
183
221
222
224
210
209
153
239
233
245
181
192
194
168
223
258
217
228
204
225
240
232
213
162
175
266
221
182
276
159
185
199
161
228
206
172
235
206
161
289
182
227
214
217
167
208
212
229
184
220
231
225
181
239
207
247
240
228
241
271
143
179
201
221
155
203
217
184
188
224
186
194
188
181
202
155
204
138
215
223
205
161
211
202
223
265
210
169
185
151
212
216
191
218
223
215
194
209
214
210
245
234
228
192
162
179
182
237
172
184
268
217
171
205
267
141
180
225
252
203
156
218
222
205
227
185
153
214
201
228
209
179
161
205
216
240
146
195
226
239
182
250
141
214
181
289
227
167
189
246
176
189
179
198
196
168
214
173
196
208
228
219
223
204
192
241
204
183
135
215
279
198
251
186
204
215
193
229
151
92
228
183
200
219
162
201
156
186
215
221
211
216
212
225
248
226
178
242
164
210
196
236
233
165
203
136
228
230
245
197
267
203
185
218
146
145
215
253
240
146
167
231
194
233
190
204
257
240
218
247
215
179
223
234
251
247
183
191
191
229
126
194
213
187
190
242
234
166
143
167
200
199
165
152
191
203
235
214
208
209
219
190
191
258
229
195
132
271
227
245
200
208
246
172
178
262
204
171
183
178
184
184
212
129
213
179
133
219
216
203
218
206
193
177
171
214
169
135
203
185
211
228
233
213
150
148
271
189
171
173
143
154
197
197
184
222
256
145
187
202
208
263
181
148
227
221
166
176
246
182
272
154
203
202
216
113
218
232
125
208
172
260
263
196
242
249
190
147
217
169
198
247
160
123
243
232
176
201
213
219
237
214
205
207
192
159
219
123
206
193
216
205
203
179
178
199
213
165
223
166
160
226
196
183
228
214
222
219
184
203
211
233
212
221
178
208
224
144
220
174
222
211
229
150
208
181
193
218
186
236
189
115
223
225
166
303
161
233
225
223
170
167
197
206
110
196
213
195
215
200
173
194
194
193
142
153
199
179
199
211
186
164
231
139
166
162
162
193
217
201
198
114
181
210
132
197
249
221
216
146
224
187
256
185
214
211
222
258
222
175
149
218
235
227
134
171
184
195
194
246
243
249
235
189
207
162
252
160
213
204
232
234
204
244
223
159
198
229
255
274
212
202
215
180
204
207
167
161
191
171
225
259
287
257
205
172
221
214
249
176
182
208
215
135
137
269
200
236
218
251
218
247
198
162
155
144
151
288
208
200
237
203
112
214
209
254
179
168
188
177
233
183
206
201
135
176
235
192
170
217
201
230
168
249
150
191
249
193
221
217
237
189
176
249
217
204
158
191
153
145
139
266
234
211
218
200
201
190
231
203
207
237
238
184
164
134
207
213
184
237
168
263
205
192
162
219
135
186
211
210
170
179
247
171
209
194
238
164
208
254
194
136
191
218
202
269
146
214
210
178
197
272
172
189
203
194
147
158
197
130
128
169
160
227
222
237
203
206
180
188
146
206
151
200
152
170
186
237
251
246
240
225
202
245
202
237
168
168
159
197
212
246
213
226
250
217
241
193
163
231
155
182
183
172
267
165
185
174
174
202
225
241
218
210
263
206
194
219
191
222
211
214
228
212
211
196
228
191
222
171
200
215
189
190
239
184
214
208
168
212
191
121
178
141
225
185
139
190
160
217
174
205
234
154
226
174
211
187
236
210
157
221
169
212
199
233
226
213
250
197
137
248
215
209
213
195
188
232
191
209
130
199
176
210
214
237
213
234
183
201
159
242
204
217
222
180
173
199
192
210
243
212
258
203
229
171
183
203
209
242
185
203
191
243
190
157
201
170
207
197
221
113
270
191
175
180
218
174
224
216
222
200
194
216
200
221
247
222
180
223
171
176
213
291
224
200
181
159
183
162
241
265
190
215
154
198
162
163
215
161
195
145
216
227
206
127
222
152
211
212
234
208
269
230
198
172
236
240
213
210
232
179
193
144
220
219
202
210
194
208
251
207
194
241
204
200
232
137
186
177
212
202
226
192
161
230
160
203
118
248
195
148
213
248
205
196
221
206
189
156
213
191
191
184
231
192
235
175
250
170
227
181
193
228
214
231
246
206
188
213
165
182
218
196
81
156
194
178
191
241
198
227
185
189
179
205
211
196
187
119
246
237
244
203
225
207
218
195
224
204
156
207
228
180
193
195
197
169
237
186
209
266
159
209
230
195
258
233
145
190
200
213
224
155
211
231
188
223
176
246
257
199
183
228
187
198
190
242
188
229
189
243
185
232
157
233
229
190
250
172
190
242
181
207
245
216
144
172
208
201
206
165
144
206
145
159
192
202
197
175
238
220
198
204
154
188
207
196
220
195
265
176
255
217
185
219
232
225
184
196
175
201
199
239
143
217
134
206
212
198
183
143
243
184
169
187
226
204
212
218
189
225
200
261
223
168
231
251
241
224
143
238
216
212
194
209
230
211
207
260
211
209
183
192
211
178
211
211
189
165
174
197
235
206
189
170
177
116
184
164
220
189
187
220
175
237
209
214
192
144
271
212
209
222
206
222
150
159
177
201
228
231
128
208
185
136
192
179
215
230
244
191
226
180
225
148
227
190
274
190
208
208
173
203
153
266
246
185
173
227
150
143
213
213
197
232
174
201
201
174
177
242
179
185
180
216
233
210
205
189
222
203
229
218
170
188
166
188
197
200
201
230
208
192
148
97
204
249
222
237
116
213
207
198
215
210
242
199
177
141
200
163
187
236
171
201
241
248
153
201
204
178
223
222
203
150
195
279
218
220
141
187
180
208
165
162
200
180
182
194
208
189
213
241
224
204
182
193
164
184
145
223
134
235
170
243
197
262
223
242
195
196
213
261
224
173
161
213
205
216
231
187
195
164
129
195
253
168
215
165
247
170
223
192
212
237
209
258
196
259
226
243
181
175
199
185
78
144
234
199
158
213
162
185
242
152
143
170
165
209
203
228
197
224
174
188
207
199
167
199
184
173
162
218
220
171
143
201
201
243
184
191
190
182
153
215
167
213
211
198
190
183
180
186
189
191
207
187
228
187
197
245
264
215
164
192
226
215
206
156
190
199
189
192
263
178
154
146
209
187
213
223
217
157
198
181
204
195
161
149
181
167
155
230
145
199
197
192
211
195
238
226
202
241
146
212
183
167
259
123
201
224
215
219
227
212
200
169
190
195
183
179
132
208
248
193
241
170
233
239
178
209
203
167
233
212
249
228
160
256
252
168
170
185
213
183
199
218
202
182
205
236
272
160
170
155
219
186
155
203
148
258
215
254
196
239
156
193
190
196
149
222
243
205
239
233
219
175
156
180
168
147
246
172
248
155
167
261
187
205
107
216
221
212
166
179
198
167
175
210
230
226
181
250
174
230
245
184
217
232
232
170
228
155
274
229
134
145
130
224
164
195
217
142
208
161
243
227
182
190
197
205
233
221
178
163
255
157
200
168
193
131
182
197
207
170
218
169
156
170
197
229
194
209
218
202
225
213
212
197
239
193
238
204
199
198
219
242
136
160
201
230
175
212
213
234
210
184
252
241
169
178
207
185
188
162
189
161
163
200
175
121
155
255
183
152
193
129
182
225
203
241
182
218
180
215
246
140
186
172
209
153
213
214
134
231
260
230
181
231
206
205
176
205
209
196
159
208
177
223
152
244
167
200
171
190
226
227
114
192
175
179
205
193
159
195
224
162
262
232
188
175
225
95
187
193
203
218
163
235
181
205
161
196
253
212
260
189
250
159
186
198
244
187
184
216
215
178
236
295
168
196
163
225
228
303
245
188
168
205
259
224
248
186
178
108
205
180
254
217
241
209
227
158
221
154
166
266
167
198
162
148
191
187
205
204
151
165
258
150
141
210
215
214
215
180
204
210
166
176
183
229
184
193
216
236
182
229
160
224
200
163
162
148
208
163
232
202
187
186
177
187
261
113
155
167
199
177
153
173
210
183
174
223
154
214
207
217
239
212
252
234
260
231
204
222
203
218
216
181
155
263
226
223
141
211
271
223
210
162
162
125
226
181
135
214
204
237
189
189
208
158
184
129
130
224
231
157
199
250
250
216
200
222
193
162
180
225
261
195
205
222
227
147
229
180
226
239
201
189
157
243
240
210
203
135
172
218
257
232
229
183
169
253
259
201
196
197
249
215
208
200
254
268
198
199
129
196
225
237
206
209
193
198
184
242
237
195
213
219
262
187
164
151
180
121
211
241
191
196
191
182
246
239
163
288
195
189
214
160
160
211
196
229
237
196
215
165
218
175
220
140
220
247
192
201
217
124
214
136
217
193
172
227
210
285
218
205
163
201
206
235
233
152
159
282
234
253
210
160
203
242
150
258
223
251
187
221
199
212
220
146
217
225
193
203
159
185
206
177
204
211
202
189
238
192
218
209
130
227
212
165
166
215
168
189
190
213
209
231
158
156
182
192
220
205
253
127
235
192
146
216
206
238
166
234
201
192
226
228
193
224
219
157
174
208
227
144
226
248
178
210
179
193
207
231
171
185
184
233
185
213
211
221
275
209
182
199
181
177
242
137
184
172
232
223
180
229
194
228
211
222
152
249
190
174
173
227
240
181
159
190
203
224
259
192
146
208
212
146
187
187
221
207
201
170
225
225
180
102
199
184
251
162
213
145
215
242
171
202
154
199
207
225
265
172
204
213
244
153
152
241
210
176
162
165
235
205
255
209
256
183
150
191
198
213
188
174
224
225
154
249
150
208
152
188
152
229
224
263
222
154
246
200
193
120
213
215
226
249
243
144
206
195
218
170
203
178
206
187
184
194
217
217
184
233
215
173
156
181
207
233
174
262
252
198
157
222
211
122
169
187
196
164
216
210
180
181
226
195
186
229
168
210
197
155
189
183
138
160
175
178
188
182
150
235
199
200
178
111
160
188
222
122
193
185
210
208
211
271
259
159
175
160
174
236
229
176
193
163
204
130
203
211
213
173
237
153
212
217
193
232
245
226
200
208
216
263
219
172
205
241
187
160
207
185
207
177
236
217
196
159
267
165
242
176
205
202
179
239
163
194
204
136
214
203
174
253
178
146
188
220
229
216
177
149
205
216
187
253
188
222
165
212
121
215
181
221
237
217
197
160
274
198
241
138
200
269
157
237
187
212
145
178
181
205
177
217
202
182
237
225
232
178
190
224
169
218
228
204
167
206
253
153
153
169
171
204
176
217
188
216
218
208
229
188
234
160
237
220
203
207
183
193
224
156
220
189
226
142
212
223
204
212
245
288
178
213
247
251
155
187
226
248
172
205
143
269
212
176
142
221
174
241
203
149
117
201
152
167
299
183
161
153
199
254
192
174
194
219
187
199
233
201
244
226
179
219
187
218
199
174
201
234
133
173
204
130
112
168
212
164
158
243
201
247
236
123
287
169
154
186
222
231
255
279
196
193
190
167
201
179
170
194
212
215
255
205
203
208
215
213
187
208
211
171
206
236
201
140
173
201
134
225
262
220
231
219
173
187
210
190
178
170
183
196
227
140
237
217
202
192
203
235
222
116
208
229
232
213
149
100
174
161
256
197
92
220
208
182
145
220
225
230
175
200
204
160
218
235
237
170
286
226
157
160
211
266
214
232
129
195
208
226
206
153
184
181
218
146
267
179
179
203
172
188
174
211
175
148
194
170
186
261
182
234
168
228
160
196
231
169
193
178
202
211
199
258
232
239
188
171
178
139
233
246
243
229
188
203
209
242
186
178
226
169
224
169
191
182
212
212
204
190
236
137
200
186
244
244
145
246
230
162
230
221
212
159
232
228
216
149
199
253
184
191
258
178
147
186
187
166
199
206
198
254
229
218
151
242
180
191
237
146
240
240
278
247
196
178
128
215
256
139
126
216
255
207
148
214
226
189
174
210
195
235
250
231
228
219
140
167
111
182
160
209
216
213
189
247
257
190
215
211
246
182
239
164
193
162
125
190
234
195
241
228
202
177
153
165
209
224
190
224
191
243
154
194
179
217
187
210
207
197
194
240
198
197
145
211
197
185
217
166
185
161
229
188
217
210
229
186
200
240
214
208
201
214
216
166
211
245
227
186
154
185
222
224
156
265
199
183
182
257
238
226
202
245
228
238
205
215
182
216
179
216
242
161
234
255
159
146
227
266
211
271
164
283
131
232
212
250
178
155
156
216
195
205
164
141
184
194
201
210
191
143
222
170
215
240
201
143
203
173
213
199
219
194
169
199
157
218
217
192
170
204
223
205
185
229
220
207
205
177
192
210
206
229
234
275
179
145
155
216
221
230
141
222
173
211
196
222
165
235
202
199
189
237
167
178
227
224
216
179
205
179
151
173
187
141
235
215
204
219
198
214
194
138
190
201
205
220
216
236
258
210
215
191
135
210
249
200
164
200
223
253
209
184
240
189
270
209
206
179
251
221
202
260
241
269
200
226
232
184
169
199
142
234
165
213
155
180
94
166
256
220
197
195
228
196
105
183
221
216
169
184
237
177
252
197
217
222
296
175
237
171
235
199
198
153
177
180
176
184
184
174
234
201
181
171
213
189
193
158
260
232
256
190
254
261
232
159
248
164
169
238
161
254
195
171
194
246
188
214
90
182
218
228
220
261
130
170
221
194
149
176
206
164
191
224
229
211
253
191
220
215
164
224
198
211
206
162
196
201
217
247
181
178
220
246
249
107
227
202
185
249
199
204
243
179
222
198
159
195
202
197
192
176
201
220
190
182
242
214
193
186
221
193
198
205
179
185
159
155
166
194
161
194
249
234
133
183
183
189
179
131
199
201
213
157
104
196
262
207
250
169
185
177
199
192
236
113
240
203
249
198
228
188
209
163
214
232
226
125
250
213
197
163
177
230
210
149
187
196
240
212
209
175
198
153
179
170
141
209
257
192
151
190
265
215
239
240
216
224
207
222
207
187
249
177
246
160
168
189
218
208
216
281
189
178
168
176
273
205
262
214
157
195
222
199
166
210
177
166
205
225
191
208
192
232
213
174
152
145
229
171
172
231
126
197
176
224
141
203
164
227
211
236
172
230
261
195
219
172
214
175
258
198
215
198
203
186
173
180
175
239
217
228
140
181
211
242
238
241
217
223
217
188
169
176
222
116
229
192
173
200
170
206
196
222
212
180
223
222
186
224
189
197
189
221
249
210
167
198
185
260
199
172
201
219
166
170
135
190
279
185
177
227
151
219
161
215
205
206
173
222
196
258
214
214
141
192
143
243
167
177
221
237
221
247
204
128
178
173
223
195
227
220
215
229
180
210
230
207
229
191
257
201
229
226
196
115
231
158
162
192
234
209
183
213
199
162
275
189
198
218
175
243
150
190
191
232
254
162
206
166
172
210
218
203
207
213
226
261
242
195
216
194
224
203
263
184
214
154
125
198
205
274
154
202
203
192
161
201
205
226
234
166
232
236
225
229
243
173
247
208
240
166
221
160
208
252
156
169
145
233
175
184
157
293
140
207
180
191
204
239
249
139
198
226
187
182
196
189
263
261
184
119
228
221
209
204
179
192
228
139
224
177
135
161
193
153
235
170
225
199
193
220
194
251
212
255
206
191
236
171
144
213
170
207
176
243
195
158
229
229
229
221
223
235
221
145
214
229
201
196
222
191
216
175
188
179
218
269
212
158
191
159
208
234
192
205
152
168
201
185
127
244
187
260
239
236
155
180
234
153
247
214
215
238
248
239
215
192
196
281
174
191
204
180
182
215
196
201
224
200
226
158
188
225
189
190
166
235
264
260
182
226
205
237
201
113
207
181
189
216
219
186
201
197
232
254
209
193
156
227
242
164
185
111
239
246
170
218
143
182
269
244
192
232
210
173
243
205
265
221
187
139
136
200
214
160
244
232
145
188
292
170
232
196
199
183
231
229
243
217
219
291
171
225
223
183
226
182
251
216
208
162
250
230
232
223
180
189
206
232
280
212
241
169
181
229
156
201
192
172
134
185
199
246
176
225
238
170
249
219
214
184
122
136
187
183
185
193
225
202
231
179
234
263
190
101
173
144
211
176
182
199
214
205
185
183
219
219
264
226
218
161
213
183
210
216
230
212
205
148
124
137
151
224
212
261
231
214
167
168
164
201
178
203
173
165
200
168
244
279
238
231
176
233
223
195
222
177
213
222
244
246
177
197
171
214
230
199
174
198
188
148
219
138
200
204
145
194
107
188
149
190
126
208
214
227
197
219
208
124
212
222
217
208
233
148
258
175
192
164
178
180
220
222
245
222
216
262
184
173
220
164
266
199
154
166
260
175
252
219
152
244
182
171
146
228
175
208
256
219
269
182
259
219
171
226
219
187
160
253
255
228
206
213
227
223
211
210
198
193
145
192
164
186
207
209
188
131
193
188
172
158
212
225
207
235
215
206
206
207
209
156
203
175
210
173
162
235
235
79
184
173
142
187
175
184
222
206
202
129
196
144
209
148
228
254
200
188
153
221
222
258
230
229
205
143
242
222
220
215
265
234
199
182
200
159
158
228
229
115
217
214
199
185
229
229
154
183
198
194
208
171
159
161
222
225
255
212
204
279
227
218
197
195
167
175
149
203
154
202
227
197
244
267
186
172
186
158
167
174
198
201
212
223
266
150
220
207
224
185
241
188
206
217
145
192
179
174
202
226
264
253
145
180
195
224
217
205
261
181
175
174
226
189
179
210
187
156
183
159
254
183
225
207
163
247
200
204
216
215
174
212
208
194
256
214
221
129
226
202
204
167
265
237
214
227
194
236
204
194
197
208
228
184
238
197
223
173
190
205
230
210
239
245
172
177
141
224
195
171
225
157
213
174
150
262
217
194
215
194
225
192
154
195
218
259
218
198
186
225
208
210
141
148
171
212
201
198
271
199
200
242
199
229
191
232
199
188
201
277
165
188
240
204
140
208
164
186
223
153
208
129
248
184
236
121
188
208
194
229
219
224
186
182
245
235
191
196
207
233
155
161
179
217
186
260
163
173
188
213
210
193
248
193
239
184
183
195
111
187
192
154
155
244
216
151
249
173
187
225
188
203
216
180
211
162
241
183
175
215
148
239
205
229
211
210
138
147
207
196
239
243
238
138
225
208
208
202
224
226
185
147
185
186
212
225
207
215
240
189
210
197
247
204
225
108
219
209
238
191
150
185
204
197
177
276
182
199
242
171
122
141
223
225
176
169
183
238
158
190
169
272
147
211
129
154
218
206
199
210
252
225
186
190
167
184
218
243
147
193
216
143
225
239
203
128
136
213
159
242
184
197
225
147
232
163
223
219
238
140
235
186
206
172
180
250
190
159
233
176
161
260
164
221
209
214
202
222
157
183
225
210
197
147
169
172
171
160
217
191
236
223
201
222
236
193
187
255
198
244
148
267
184
240
174
171
281
231
233
135
166
165
187
207
192
172
169
171
161
186
206
185
223
170
170
201
225
201
274
227
201
220
141
195
219
199
252
220
204
211
215
168
220
231
145
196
231
225
189
175
149
198
173
216
228
223
200
163
253
236
184
218
178
205
162
214
134
247
220
206
249
196
181
239
228
192
253
259
245
183
180
174
235
187
247
214
155
261
160
181
155
201
172
213
172
229
148
237
181
189
185
162
234
212
180
226
222
237
204
154
134
202
215
162
207
212
203
198
199
167
254
232
230
194
205
164
178
233
181
244
227
196
198
195
166
194
203
244
180
197
200
217
176
232
245
211
216
272
178
255
164
196
153
147
259
224
160
214
244
162
198
211
274
170
222
182
151
162
265
220
239
195
161
205
211
171
162
222
219
223
203
277
136
231
152
273
248
197
205
234
205
197
200
172
200
226
193
176
192
161
187
183
252
191
203
162
200
108
175
250
200
149
188
165
260
166
207
239
184
190
246
216
272
165
149
206
242
218
157
252
246
149
145
228
162
191
184
133
164
213
177
220
161
177
219
191
171
162
215
158
196
105
183
227
255
211
196
230
164
191
180
179
260
209
138
228
210
144
178
161
195
243
201
233
189
234
148
203
174
161
170
266
229
223
174
247
240
219
196
232
146
247
232
140
222
178
234
220
227
225
128
165
240
193
212
153
202
173
172
175
189
244
197
110
216
198
224
218
179
158
120
206
180
234
258
166
176
138
232
195
150
184
182
206
227
213
241
252
106
237
126
210
197
210
248
192
134
211
118
162
212
219
185
165
143
165
176
199
207
203
177
180
261
204
203
209
160
203
182
154
248
205
224
224
248
197
167
174
251
234
139
235
150
146
209
201
229
226
145
227
163
228
278
227
217
231
219
143
158
191
238
247
176
157
243
234
135
210
97
191
183
252
242
141
177
199
173
192
188
259
225
178
123
194
196
222
124
205
178
203
184
185
194
212
174
218
191
243
151
215
174
184
165
225
222
200
228
152
175
252
248
209
129
226
182
211
228
145
208
144
214
182
261
206
193
206
228
221
233
193
210
181
212
198
166
217
238
222
179
151
225
198
199
244
207
195
187
219
218
229
261
178
199
179
184
198
218
257
146
170
174
184
146
213
170
188
203
207
143
196
226
143
188
271
263
177
177
204
189
141
205
215
228
191
198
136
256
193
207
274
220
189
234
199
100
188
187
102
148
184
218
222
191
220
241
242
203
166
142
144
163
224
158
212
220
164
238
155
220
189
220
166
206
177
233
194
157
155
226
229
183
211
134
199
256
200
128
176
249
191
238
132
199
214
204
184
160
165
246
212
210
243
201
217
210
140
180
186
167
141
183
201
226
236
179
169
195
258
222
171
185
199
212
254
184
155
202
181
243
214
202
178
181
194
230
229
197
201
190
202
184
188
214
193
296
183
226
177
230
183
203
185
216
185
174
245
161
228
160
187
241
250
209
172
223
150
247
226
216
226
167
201
165
240
166
188
218
205
199
227
206
235
227
177
122
186
236
202
222
211
232
167
252
232
187
239
200
210
241
124
138
217
233
198
259
236
230
164
197
199
207
187
200
219
172
196
239
223
228
231
172
241
173
210
252
228
131
216
180
241
168
218
110
175
250
230
209
169
207
244
271
221
197
226
199
138
220
231
177
258
231
201
195
133
159
182
211
225
185
185
261
183
173
234
252
163
189
188
212
171
181
216
206
253
159
152
252
161
148
175
196
237
218
195
257
157
162
119
209
182
205
241
189
213
228
194
138
206
234
223
255
238
198
202
181
215
209
217
193
219
171
212
187
207
186
165
225
169
200
216
150
173
143
249
210
193
218
184
210
214
199
181
228
198
166
171
177
271
252
210
237
159
187
164
154
220
241
148
155
198
246
248
238
212
222
226
227
197
192
248
211
197
221
247
203
204
176
169
193
236
181
201
157
209
202
161
186
205
185
188
157
210
231
167
206
202
231
229
155
226
184
247
226
107
173
158
238
207
148
159
211
160
203
256
209
197
246
171
228
161
192
196
174
179
201
228
194
255
242
189
163
195
223
180
163
244
184
199
170
175
225
231
224
189
224
202
246
268
185
194
194
188
149
202
203
211
205
268
206
211
205
176
220
108
161
144
227
206
228
218
160
220
248
192
165
179
169
147
220
223
210
191
200
239
198
205
211
214
208
224
218
243
250
182
176
198
216
278
222
190
241
243
239
177
226
171
261
218
220
212
203
192
195
213
180
120
147
194
235
200
206
166
219
209
229
233
190
207
247
239
206
181
146
155
199
114
173
174
135
269
164
208
231
151
181
211
214
212
189
158
211
188
207
268
156
228
210
178
224
197
258
243
171
252
250
232
241
171
197
226
286
229
224
217
219
250
232
143
176
139
185
220
204
178
205
230
211
189
263
178
170
222
215
211
197
224
187
151
222
199
216
233
163
246
206
225
229
189
201
145
210
134
152
217
206
144
171
162
233
195
183
236
228
165
164
206
236
201
202
188
179
190
215
208
197
179
205
153
195
192
249
255
144
194
181
130
257
167
200
233
182
202
242
231
219
214
196
229
268
242
186
192
208
199
230
175
217
198
189
233
186
218
170
213
189
173
189
237
206
170
192
214
218
171
237
177
159
176
227
215
121
205
213
224
241
234
249
252
259
237
197
213
196
173
204
180
211
228
207
124
127
209
231
226
232
242
213
181
233
152
143
190
145
243
246
169
214
149
150
158
152
197
195
178
220
141
222
248
199
285
212
189
243
167
200
232
216
185
185
152
157
214
140
218
274
188
218
157
197
179
260
205
149
188
182
199
165
252
186
192
205
143
230
174
171
108
199
270
209
206
172
202
218
181
154
218
171
221
233
262
199
210
201
220
202
198
197
150
179
184
201
141
169
215
225
207
260
184
190
179
126
167
195
153
258
210
194
256
247
218
167
233
186
217
186
198
209
185
174
220
207
250
199
237
171
196
210
274
225
133
193
257
188
235
238
204
240
189
163
281
216
141
150
193
148
185
213
177
230
242
174
217
203
189
212
160
227
207
277
252
247
206
233
228
127
209
208
197
151
219
199
180
221
192
199
240
229
182
270
218
176
291
225
182
224
197
219
277
200
244
236
216
206
213
186
236
233
196
188
222
211
181
184
183
173
237
170
141
175
238
202
109
184
210
172
160
157
210
184
237
200
198
184
267
170
180
197
251
120
148
211
227
239
122
233
231
231
198
185
193
198
183
213
237
189
187
220
224
200
173
224
166
165
224
167
171
113
248
222
220
221
186
198
186
207
221
162
156
227
186
236
217
204
205
211
129
161
221
185
202
192
211
222
200
171
150
148
215
225
157
254
234
196
201
235
230
151
216
171
219
185
229
215
112
201
201
133
165
185
192
206
210
150
155
196
210
254
225
172
218
192
212
246
206
196
148
125
171
229
192
230
179
202
217
156
191
167
264
220
267
195
251
215
129
172
214
151
248
205
267
222
243
259
183
249
223
188
234
170
203
199
196
188
181
183
180
269
216
236
222
250
204
218
153
267
196
165
140
178
146
262
205
154
192
132
238
182
149
225
236
203
279
274
168
224
152
167
162
199
202
186
223
215
190
204
178
240
217
112
246
187
186
214
196
162
219
239
228
240
219
231
209
211
218
217
224
196
216
218
171
227
203
204
184
246
201
195
231
188
214
182
177
189
221
213
140
202
193
233
235
210
145
203
192
194
171
191
198
225
213
187
225
143
214
220
245
235
248
201
120
175
249
160
122
214
218
212
172
172
202
231
236
185
184
153
195
149
167
231
176
192
244
214
221
215
206
267
124
195
238
188
181
221
234
238
226
191
197
215
196
223
224
179
192
140
230
215
211
166
229
134
172
238
171
236
207
216
204
222
179
252
244
141
178
211
165
215
236
232
190
233
220
160
177
207
191
182
152
217
173
145
205
202
199
264
200
210
249
198
225
247
225
219
246
193
232
224
248
246
188
92
171
199
229
201
215
166
197
215
181
183
221
194
191
199
199
218
169
166
206
223
163
216
192
222
216
158
152
195
234
275
161
168
175
228
193
104
238
205
209
230
161
180
220
175
228
258
273
203
174
201
186
182
199
234
163
190
213
223
165
190
191
259
214
163
172
175
163
172
146
227
157
207
238
237
199
215
196
160
241
223
189
203
190
191
205
181
199
172
217
182
213
161
228
227
201
224
150
163
210
151
180
185
165
225
220
199
222
184
210
152
162
182
239
156
208
231
200
190
196
213
224
218
179
229
160
186
208
216
121
168
176
186
188
237
249
232
136
245
197
182
207
221
206
173
173
247
208
269
161
246
201
202
254
238
116
194
186
244
209
175
214
237
244
248
221
116
232
170
191
194
216
202
177
253
191
196
176
204
227
211
155
256
239
262
158
135
168
156
231
240
134
192
144
193
173
210
199
187
216
247
249
223
224
299
220
179
263
209
188
190
223
173
232
271
205
229
202
208
221
233
167
157
212
224
212
189
216
104
255
258
215
244
176
184
162
222
187
159
210
211
213
253
215
201
215
141
152
208
186
257
212
205
199
151
209
214
201
193
179
196
196
210
202
182
194
171
206
256
202
206
194
173
201
185
218
247
218
242
224
218
192
234
205
228
160
198
152
145
181
142
191
232
219
235
154
224
152
195
186
176
258
183
150
223
157
228
246
230
243
217
226
141
161
205
213
200
226
229
187
156
220
203
244
189
198
214
240
175
212
161
178
225
192
211
194
238
220
192
187
179
197
175
178
169
190
168
162
246
204
177
168
200
166
204
192
261
195
246
141
232
210
213
190
155
167
146
207
223
175
194
179
184
191
164
225
94
173
111
211
231
218
202
138
212
210
215
135
247
258
177
196
158
202
173
192
160
218
238
186
236
235
180
216
177
235
188
162
212
264
143
133
203
212
226
182
231
215
190
179
166
169
223
240
205
168
236
193
234
186
180
170
215
214
174
254
174
241
185
238
193
250
210
175
218
199
220
208
237
211
198
243
208
243
204
165
152
179
176
202
220
224
220
214
237
176
233
207
213
154
212
149
187
197
130
133
169
180
185
221
206
162
204
162
188
174
228
197
181
205
249
217
231
217
234
173
171
185
214
177
238
185
144
236
197
184
149
228
182
249
292
185
176
187
189
204
219
199
161
206
141
134
184
204
247
199
189
172
164
166
232
215
197
195
165
191
222
210
162
183
150
231
216
192
192
185
240
197
228
240
230
259
205
215
228
237
126
192
207
223
215
208
190
234
232
216
261
223
249
186
146
206
218
245
168
197
217
174
132
177
196
230
237
225
189
249
188
207
209
218
177
193
208
146
199
183
185
210
296
138
179
208
161
210
178
208
172
239
211
228
221
157
181
127
232
242
165
189
202
117
146
211
188
192
226
171
239
225
198
199
205
141
189
214
254
184
200
205
202
144
198
165
213
134
215
215
174
192
159
268
208
152
218
177
195
243
195
144
190
198
226
224
177
224
204
189
214
150
166
211
182
165
141
190
228
157
200
184
210
168
161
225
250
235
188
240
255
168
193
150
141
188
204
173
202
224
232
199
141
176
196
214
179
225
234
122
130
207
166
228
189
217
202
136
239
212
213
196
238
245
115
232
244
149
195
216
199
205
144
208
158
99
221
184
183
192
153
191
163
259
181
221
212
154
182
166
187
207
225
174
186
173
229
246
236
156
186
226
111
233
196
196
269
205
194
200
260
167
192
166
191
180
182
229
189
119
251
172
197
146
205
130
218
187
201
206
216
173
189
163
184
228
192
195
158
202
229
184
256
186
192
220
233
160
185
230
169
141
197
165
195
177
212
209
166
185
226
175
223
189
176
243
179
182
201
192
153
194
173
209
162
228
230
210
142
223
177
200
227
170
156
220
213
214
240
207
228
187
159
200
144
232
183
120
234
194
178
194
223
218
217
148
153
175
243
211
111
227
231
206
156
167
240
196
179
222
161
172
169
201
186
191
157
160
232
206
242
213
212
253
213
217
249
172
243
195
210
231
182
263
202
177
170
228
227
180
213
197
163
210
163
124
214
169
206
121
144
225
163
204
170
176
174
203
237
172
228
174
264
176
177
231
225
212
213
252
191
181
161
165
189
170
192
210
138
221
197
232
225
177
244
223
218
165
265
217
156
206
203
239
213
147
245
223
215
191
262
187
238
193
165
246
190
263
137
200
177
217
179
139
206
243
184
160
172
255
215
205
179
197
139
277
213
185
245
226
203
160
241
222
154
249
194
201
201
162
170
250
189
137
184
237
138
248
190
268
171
224
172
204
180
206
194
202
244
166
206
206
131
196
217
186
190
242
155
156
238
176
223
244
177
198
184
165
179
147
206
242
214
254
168
214
182
233
269
204
243
228
266
162
212
286
248
202
228
179
257
186
217
208
229
211
226
178
258
195
169
246
198
246
183
184
222
175
213
216
115
218
172
210
188
173
148
222
187
240
154
248
214
190
228
222
249
227
252
250
157
176
194
157
144
190
88
185
155
174
169
152
226
224
225
163
234
204
179
209
255
184
136
164
188
152
219
208
193
164
164
178
228
242
249
161
228
141
210
220
174
208
218
211
218
201
178
161
157
178
214
257
167
248
239
200
246
194
165
226
170
219
209
206
155
188
277
222
199
192
186
216
154
181
209
164
166
173
206
216
270
218
208
216
202
150
173
165
231
216
211
201
169
186
141
167
188
194
177
221
244
250
217
222
230
162
230
160
262
215
213
193
251
222
228
147
202
237
241
183
197
192
163
157
214
159
208
254
180
213
116
247
182
153
204
208
203
234
150
232
171
220
183
156
205
283
251
124
279
205
261
222
240
223
187
193
203
240
200
203
211
213
200
197
185
244
196
208
161
253
169
176
259
168
200
147
201
198
98
243
200
186
162
195
180
143
206
214
192
225
199
246
157
176
173
198
174
161
184
237
249
222
211
167
206
261
199
199
210
245
131
265
216
191
213
155
253
145
182
180
241
161
213
165
236
179
214
193
244
196
247
176
208
213
237
136
238
174
165
267
272
231
194
160
189
181
194
239
216
151
220
202
159
254
174
172
188
229
185
230
218
215
130
270
156
191
176
205
216
189
218
179
173
177
199
222
170
166
185
180
213
240
189
134
169
159
239
189
138
238
204
212
226
152
222
178
210
150
188
176
236
191
188
235
205
194
211
165
159
201
242
194
184
151
201
180
119
172
192
166
224
276
196
186
218
204
221
180
188
142
193
196
187
160
228
224
230
185
224
238
163
210
265
190
181
230
228
149
164
286
208
191
237
207
198
258
176
191
182
165
184
184
194
156
247
195
188
182
217
165
194
199
215
220
237
152
209
187
197
191
200
244
225
205
209
264
225
223
248
204
159
185
167
224
253
200
183
204
216
266
171
216
162
173
184
147
211
206
200
183
185
194
222
206
131
209
192
212
185
194
174
130
219
203
213
204
249
198
189
207
206
190
234
209
246
229
227
187
214
204
187
172
141
169
256
165
260
191
159
225
189
197
209
210
114
202
182
164
167
253
193
195
213
201
238
169
222
192
184
230
212
147
231
245
205
243
115
138
222
184
208
156
266
143
237
191
236
254
225
148
208
217
157
228
177
172
149
218
191
241
227
244
200
242
236
126
208
180
186
173
230
224
192
171
159
156
185
167
215
169
157
222
142
258
204
121
193
178
170
203
142
207
224
172
185
221
133
190
224
174
181
145
235
194
234
200
229
205
210
208
214
209
229
242
258
217
206
176
156
219
192
236
224
232
158
203
185
212
153
208
179
203
169
205
190
238
198
212
156
174
215
204
259
182
232
184
184
238
244
287
225
223
146
161
175
204
221
193
209
275
217
140
159
267
136
228
251
262
198
152
215
198
181
201
217
188
241
238
203
147
223
164
206
209
158
205
194
239
162
186
194
187
170
170
206
179
218
232
206
179
215
187
225
191
167
202
239
216
225
234
211
160
140
193
198
180
171
204
212
257
190
242
192
234
196
223
168
211
199
191
183
230
250
151
200
132
186
216
216
187
154
189
220
212
275
207
148
140
223
233
209
155
158
239
171
201
212
240
167
263
174
236
222
247
188
170
188
239
193
232
136
253
233
160
139
147
182
172
237
199
209
253
262
204
266
192
177
191
134
179
219
196
194
195
184
137
214
201
246
225
163
183
183
187
140
177
173
201
157
203
142
217
191
195
90
206
213
276
185
194
205
222
237
195
212
159
213
165
239
252
184
223
235
210
172
204
139
226
256
208
210
202
155
168
201
163
189
144
172
197
147
227
260
246
180
227
163
175
213
191
245
194
204
216
195
178
178
204
180
240
176
182
114
189
207
182
223
199
208
184
193
232
150
180
188
191
166
188
248
213
186
197
239
187
240
298
165
191
141
163
189
163
186
235
197
212
206
206
217
196
201
145
239
185
234
229
243
177
194
163
209
187
191
170
227
186
216
228
236
202
195
181
227
192
232
144
261
153
202
172
201
167
218
186
214
251
199
217
290
223
229
221
164
265
251
209
184
194
149
268
200
188
137
214
222
204
232
138
186
177
288
187
196
247
159
197
164
174
220
214
169
194
190
260
165
176
210
246
220
174
200
239
229
215
169
222
204
173
217
187
167
223
191
214
140
189
185
182
212
217
243
215
220
226
231
202
184
184
218
154
136
197
174
201
165
162
178
131
228
178
223
255
193
216
200
234
232
222
179
80
197
183
194
236
229
155
229
217
207
198
186
235
176
161
212
192
262
263
146
235
221
156
109
257
196
225
186
186
179
167
235
190
212
162
217
184
109
148
185
158
251
206
197
190
179
222
210
239
181
186
226
160
184
191
173
199
201
148
214
122
200
176
204
213
173
136
177
163
221
204
245
242
171
225
178
245
225
222
156
181
248
228
264
180
199
172
179
182
198
212
150
217
251
191
237
227
186
170
191
214
181
210
239
204
227
184
207
198
138
178
226
207
218
243
153
205
263
251
197
143
183
158
222
160
252
236
198
238
191
210
205
245
188
212
205
136
163
242
207
182
123
245
159
231
130
222
138
205
184
195
237
188
209
196
153
216
227
178
144
228
172
181
181
207
246
176
141
193
200
171
250
237
268
152
154
186
180
248
203
207
172
222
166
186
215
124
201
181
221
193
256
242
142
184
201
136
188
205
224
204
176
216
235
208
200
202
200
203
192
234
186
153
170
216
145
171
215
207
215
185
227
213
221
276
187
179
177
170
206
207
209
213
225
149
206
182
219
188
247
233
198
194
216
178
240
273
207
164
176
160
203
209
235
212
144
174
171
181
241
217
194
226
188
201
196
176
235
191
167
246
216
239
187
201
204
192
178
273
209
269
182
161
179
231
217
223
145
195
168
160
235
192
170
203
199
198
159
175
182
213
206
152
181
177
180
121
226
146
154
160
154
245
215
202
192
247
210
161
209
230
209
199
194
200
238
211
185
107
242
242
187
143
209
157
157
197
177
237
198
203
196
191
189
199
203
187
214
244
250
228
168
216
192
259
195
178
134
261
188
219
171
188
179
225
238
206
127
211
193
144
142
266
213
209
217
219
196
222
213
181
230
296
242
165
208
164
257
212
207
152
235
222
225
227
249
181
135
225
180
202
213
222
228
150
208
179
241
245
155
247
156
180
157
193
184
215
167
259
222
256
182
208
210
213
174
202
235
240
239
201
197
213
197
142
227
189
180
209
207
264
233
233
247
213
212
191
223
150
154
230
225
225
207
175
201
207
160
142
231
242
209
198
169
233
236
208
254
225
167
183
258
227
200
259
219
224
187
165
239
202
184
183
258
216
237
237
191
203
191
245
170
172
195
210
191
118
161
174
214
208
200
258
191
185
190
196
246
146
205
194
124
181
201
220
262
184
211
171
199
250
241
166
236
177
225
257
175
233
283
133
222
224
209
141
221
194
236
210
245
173
224
232
256
163
219
234
204
193
204
193
213
180
188
211
191
195
205
208
239
237
276
201
151
150
193
216
155
230
251
268
126
220
194
159
248
165
188
204
236
152
201
198
186
171
224
218
209
216
232
245
180
217
263
246
217
228
162
159
183
189
240
222
250
217
169
209
251
188
161
193
197
163
238
253
271
223
167
132
174
224
176
162
129
250
201
209
218
161
184
184
191
227
249
238
216
242
224
227
176
252
199
194
224
189
215
228
153
241
163
167
257
221
226
234
213
231
254
196
207
244
204
216
183
255
223
223
209
218
197
205
175
211
204
219
173
239
221
179
183
200
243
201
255
184
236
216
196
159
163
118
179
226
249
123
220
202
197
166
176
164
170
192
225
231
155
163
182
220
148
193
243
225
202
237
221
157
209
170
193
274
206
208
235
220
131
187
174
200
226
228
191
190
187
255
181
211
223
159
190
181
206
209
223
241
201
181
200
210
245
127
169
218
210
187
172
182
227
124
165
176
227
169
219
228
179
173
226
184
206
181
155
130
178
220
232
200
205
212
197
174
171
229
170
185
179
142
145
195
208
158
203
203
236
262
221
113
215
184
159
209
151
186
145
214
183
258
209
261
184
185
192
252
192
229
90
219
235
143
238
227
167
184
220
229
166
223
185
203
180
174
170
202
251
128
180
181
199
287
146
175
237
190
246
165
139
239
202
240
197
182
195
258
115
189
208
242
194
236
232
219
218
227
177
195
226
247
230
257
199
199
124
235
161
197
254
210
173
251
204
282
176
191
187
233
232
163
193
126
248
213
180
175
279
210
169
189
169
227
187
227
134
225
178
188
196
247
179
294
146
159
157
201
207
125
187
227
199
210
165
260
190
216
175
221
165
211
203
220
116
198
192
129
245
249
210
223
179
179
161
212
152
187
187
228
211
230
140
197
218
240
198
262
167
247
150
174
202
195
217
150
217
188
181
202
188
252
205
207
202
207
159
223
253
187
194
223
230
181
126
181
208
171
151
217
207
240
222
234
189
237
187
138
144
208
219
222
257
156
160
191
249
174
230
172
200
226
213
238
180
176
231
209
145
234
206
268
241
152
231
175
234
239
217
242
162
263
236
204
188
243
163
235
150
269
204
224
214
185
191
141
176
221
149
160
227
192
295
225
161
198
167
198
163
197
98
249
182
232
195
206
211
223
220
203
179
172
168
191
213
151
178
199
166
222
212
172
215
202
231
216
242
170
192
228
196
199
231
219
254
215
245
245
198
170
179
205
180
213
211
172
195
210
229
193
208
205
173
206
217
245
155
163
145
185
175
207
173
209
258
204
213
233
132
128
134
201
222
131
184
197
134
266
197
166
197
126
148
137
163
202
205
214
214
145
135
189
214
239
194
220
209
203
200
231
248
201
168
232
240
150
187
205
199
167
240
227
196
184
260
181
273
216
192
205
151
232
227
229
250
247
159
197
215
184
235
183
203
163
235
175
205
196
200
177
201
175
218
234
188
277
252
204
146
182
194
176
212
169
178
156
238
173
219
249
254
211
194
180
214
199
190
223
226
164
218
230
245
222
205
232
232
146
182
191
213
184
259
239
203
178
239
217
257
244
222
191
141
193
227
181
277
224
230
249
227
234
186
217
167
171
226
201
219
182
252
158
187
282
189
227
214
183
211
257
222
199
193
129
216
237
240
138
199
212
220
208
185
230
176
198
188
204
190
174
182
205
204
234
216
247
130
193
211
211
249
243
269
181
181
140
187
193
180
249
267
253
202
229
208
164
147
167
144
240
189
218
267
202
230
149
224
183
218
201
198
232
181
217
125
214
235
211
136
179
240
170
180
164
227
201
256
167
174
218
191
230
176
290
258
201
216
237
167
249
196
264
233
192
211
174
155
248
151
240
173
212
250
163
204
147
159
224
231
155
215
239
186
209
259
210
245
222
228
249
187
168
157
196
210
260
229
238
182
120
124
186
169
211
203
183
244
236
173
178
234
209
224
200
271
229
198
175
253
175
176
180
166
249
112
212
224
144
226
164
214
233
180
255
143
280
201
241
146
130
171
206
226
229
215
174
171
208
133
190
182
212
196
185
204
191
172
159
222
256
149
211
201
161
225
213
247
186
189
240
164
242
254
233
242
160
250
256
171
134
249
141
232
222
182
204
217
196
230
204
134
209
259
159
173
163
243
283
203
257
267
200
167
199
179
235
237
183
270
198
184
202
190
198
226
250
233
244
216
240
200
232
253
165
204
212
185
262
246
233
172
163
179
186
152
221
103
222
202
155
159
156
229
198
238
185
217
229
150
241
172
227
186
238
190
158
220
212
239
209
237
182
186
212
201
202
225
256
217
202
233
136
187
200
209
262
200
175
190
154
198
182
210
206
168
162
199
187
212
164
133
233
226
208
206
190
245
123
165
266
180
161
204
202
179
247
213
235
210
202
262
185
179
259
208
197
166
246
228
190
203
190
229
207
212
203
219
244
200
213
181
215
140
199
217
246
188
148
158
215
163
197
197
159
202
162
249
257
246
287
211
199
234
191
180
159
182
232
141
209
180
191
207
147
258
187
170
210
201
253
129
160
148
231
172
202
203
190
200
212
193
276
209
225
183
177
215
194
190
182
189
230
206
164
161
174
169
196
227
169
252
126
205
133
184
199
215
146
176
192
226
209
201
177
192
231
189
196
224
206
217
211
187
234
224
212
224
164
177
201
107
189
224
196
181
99
195
219
259
273
207
218
215
188
156
172
231
127
211
176
241
242
220
167
167
246
161
189
263
149
136
216
256
205
191
217
222
172
223
194
176
210
182
150
139
197
278
208
203
152
145
188
169
258
239
140
162
235
200
209
195
213
273
168
231
253
194
189
190
127
270
196
222
135
229
216
270
215
214
240
173
221
185
191
224
219
230
233
141
190
194
206
214
167
244
213
208
136
219
179
226
140
156
180
150
187
176
236
208
149
178
194
199
131
202
216
248
218
201
221
187
170
284
207
148
205
228
252
200
166
198
149
222
260
210
213
211
216
278
212
156
207
213
199
203
117
142
174
202
302
118
168
181
166
204
223
171
172
262
230
235
191
191
182
229
151
219
218
155
241
256
245
245
202
243
201
188
246
186
219
179
203
171
193
185
207
244
223
217
249
209
156
206
166
215
222
234
219
227
217
237
158
192
209
175
160
163
180
164
172
222
193
233
165
185
198
245
201
264
221
241
196
147
137
204
204
115
163
242
276
164
241
204
186
194
198
194
182
209
217
240
211
252
198
209
193
222
259
190
253
187
245
181
231
153
207
172
188
206
174
165
159
164
204
196
224
253
175
234
195
270
235
211
168
173
189
245
120
208
238
226
204
152
213
182
215
256
216
176
146
199
223
158
198
194
288
189
235
226
237
186
218
240
203
197
217
209
188
212
207
208
188
213
176
152
219
198
233
173
173
197
233
127
188
191
199
185
201
222
226
213
202
194
215
220
160
192
167
183
243
167
204
270
241
195
220
162
221
203
211
198
217
182
218
172
197
193
233
275
182
189
203
194
216
199
163
164
170
168
209
198
163
162
240
228
184
210
252
230
270
200
212
267
201
206
254
122
218
217
256
206
262
279
166
214
184
239
268
179
212
183
228
168
203
258
168
174
183
255
193
245
146
161
248
117
204
191
178
234
203
258
204
192
283
179
209
160
213
270
220
166
157
228
234
158
169
170
237
217
238
162
179
202
199
152
219
189
168
258
199
193
180
219
192
166
210
124
229
200
214
195
207
199
201
177
164
219
183
107
231
230
196
205
188
258
224
154
174
225
177
211
196
185
255
294
244
206
230
264
243
243
257
201
228
174
175
226
199
182
166
206
197
127
230
191
195
212
195
169
204
238
219
259
224
222
177
217
227
211
265
211
225
250
206
134
158
252
202
238
243
191
210
188
165
226
184
183
182
235
194
227
223
267
181
152
271
230
234
225
205
188
221
243
267
155
207
158
143
139
245
259
243
159
209
227
261
193
197
197
187
210
261
215
177
192
196
222
166
191
144
205
188
195
212
203
201
141
241
226
145
190
282
158
157
225
211
138
173
177
168
154
182
247
183
194
177
195
128
222
224
169
230
173
160
130
163
175
151
214
186
126
147
251
165
229
196
201
189
195
187
225
110
178
220
201
223
164
209
178
152
212
146
148
211
152
238
203
208
171
181
254
231
213
175
226
206
203
201
180
200
160
189
196
255
178
142
222
219
272
171
244
238
234
193
201
257
219
185
131
265
172
221
191
208
270
180
215
217
194
196
181
188
189
181
173
198
216
217
165
160
219
240
143
219
216
218
225
188
170
221
155
212
186
199
189
227
153
229
148
189
243
170
179
233
214
258
170
196
211
224
161
208
210
228
188
270
147
206
189
186
149
217
234
245
251
234
218
199
202
205
146
172
225
261
225
198
215
186
205
198
237
228
197
193
185
177
135
176
141
187
194
185
224
236
190
182
207
232
209
200
134
238
188
157
215
144
191
197
216
155
270
178
201
234
182
228
232
235
148
199
193
159
185
203
203
229
100
171
220
247
203
157
229
226
207
195
221
151
213
162
226
167
233
219
168
235
191
211
242
235
231
196
170
216
175
225
181
158
204
157
193
191
176
76
188
220
209
190
208
228
241
223
210
180
228
221
151
228
194
187
156
234
146
251
202
249
110
248
251
213
217
180
230
187
130
215
218
195
214
126
173
183
210
241
179
237
163
119
156
269
177
146
238
237
183
229
205
228
191
183
184
160
243
166
155
210
218
196
181
218
235
257
275
201
246
236
222
192
235
120
233
143
179
197
162
216
230
153
202
218
237
177
200
269
210
192
179
208
206
275
209
188
121
198
142
181
180
147
210
208
198
233
193
212
176
247
188
182
249
225
197
255
157
131
202
250
228
139
230
196
256
218
184
209
215
184
240
220
204
146
212
211
226
225
229
238
204
205
184
206
116
220
216
220
125
187
166
198
151
213
221
176
184
202
196
199
128
219
148
174
147
228
182
168
228
162
192
222
203
232
218
141
175
172
208
242
162
222
198
175
253
195
151
173
211
179
203
192
192
234
212
198
242
188
220
248
187
206
197
170
206
211
239
188
211
143
186
149
178
207
187
211
201
224
203
200
174
198
241
187
185
226
196
136
239
233
169
186
182
245
280
222
279
203
234
205
205
266
161
262
84
261
217
211
247
219
258
221
187
133
152
197
193
209
189
208
258
194
137
197
176
204
234
200
172
193
178
172
166
183
245
222
212
195
221
157
237
180
212
194
203
189
153
245
240
194
213
169
170
166
172
201
218
162
218
215
214
200
146
116
186
204
215
198
240
217
224
115
172
204
157
169
154
213
231
231
114
236
229
237
169
175
174
154
159
180
182
175
107
157
248
185
125
208
186
269
231
254
206
246
229
218
153
168
162
264
221
196
161
209
220
189
209
218
150
254
199
253
155
188
176
223
185
151
183
182
240
210
200
205
209
178
188
176
196
147
171
227
248
193
182
141
239
243
144
207
231
269
207
171
248
174
245
226
174
186
227
189
197
186
159
218
105
249
229
196
256
216
200
238
229
159
213
266
189
259
211
192
177
277
234
177
159
171
192
228
202
206
204
239
219
235
220
227
189
183
205
230
202
192
199
224
174
148
188
218
208
186
189
206
209
257
109
202
207
187
257
182
249
206
250
222
206
222
159
225
253
227
193
171
174
175
230
214
204
209
231
228
240
180
190
230
240
135
176
245
251
222
196
266
206
153
250
205
190
175
215
230
158
180
222
172
207
242
238
173
212
172
236
190
186
220
137
214
258
210
237
170
135
190
178
171
157
170
215
197
190
212
220
138
232
209
161
274
165
231
254
228
164
165
230
155
192
197
151
212
134
229
263
220
226
188
226
186
191
240
148
226
200
184
117
235
204
217
87
218
244
191
198
167
153
193
223
255
236
157
249
214
232
198
239
214
203
210
195
236
220
151
195
196
222
229
197
183
185
221
208
213
239
205
234
200
156
214
194
217
174
240
176
183
214
177
246
242
166
177
250
141
174
127
178
212
224
207
101
239
208
187
219
235
242
130
304
208
207
216
176
225
212
250
186
172
208
235
203
183
198
251
180
180
174
197
199
222
199
253
179
227
164
217
173
215
246
151
214
169
180
230
180
236
212
160
284
138
238
201
234
210
194
136
183
191
200
190
262
168
214
205
230
224
170
283
193
207
193
202
213
146
188
169
218
214
202
218
165
166
194
189
257
194
222
198
239
210
247
203
162
133
200
119
167
239
196
232
141
271
240
161
134
195
173
156
241
118
166
213
253
186
198
167
205
235
205
193
225
178
213
196
274
157
151
211
211
268
179
183
261
139
202
201
173
209
231
198
220
191
178
250
198
243
226
190
191
212
221
188
179
216
153
228
289
191
209
196
180
198
201
189
187
181
184
196
175
208
171
144
242
219
227
180
181
281
185
244
161
185
161
201
208
193
252
154
172
188
211
242
182
209
195
238
143
213
190
159
177
246
206
195
179
218
207
139
179
199
177
237
250
189
201
216
218
194
217
220
196
231
201
233
166
273
223
251
203
142
180
234
230
234
236
240
165
149
219
231
229
242
187
253
216
234
231
221
215
179
132
189
136
129
162
210
211
168
202
184
208
204
252
126
229
198
182
200
252
173
213
229
218
188
182
143
221
300
176
203
166
156
239
226
207
214
172
193
188
186
144
197
173
197
188
172
237
213
233
158
147
193
154
147
205
182
141
194
183
229
208
222
176
184
174
227
228
255
180
188
233
197
215
191
212
174
159
213
159
198
153
235
173
136
210
225
204
251
212
240
164
237
155
220
222
233
230
215
181
212
242
206
223
136
132
176
184
214
215
251
243
155
255
219
195
127
125
200
197
114
193
176
198
222
202
238
207
191
158
151
223
226
208
200
203
226
194
220
190
273
158
163
270
186
173
235
213
202
203
227
202
195
180
184
236
180
198
229
149
250
205
148
168
163
204
170
201
212
245
148
239
154
199
253
194
209
126
185
250
168
175
191
175
234
236
133
96
200
207
273
146
197
189
173
218
135
215
223
182
254
216
200
255
240
211
159
219
170
222
228
231
176
179
227
156
256
227
199
184
128
235
218
241
167
218
200
194
184
148
215
199
173
254
211
241
210
222
196
258
159
227
197
202
197
239
193
220
226
187
210
148
184
188
212
233
223
207
181
200
194
154
200
183
182
197
205
165
203
156
263
176
201
207
191
244
288
211
137
222
240
228
200
221
196
254
177
236
198
241
259
138
196
182
233
196
155
202
199
199
212
207
238
184
217
224
207
158
153
224
180
214
216
185
244
173
230
210
189
213
193
210
229
257
191
212
162
181
248
193
250
231
232
196
216
204
182
207
248
208
240
179
224
197
159
249
207
203
186
220
212
193
229
172
256
204
181
198
168
211
199
160
253
232
197
181
205
129
165
188
222
217
173
221
257
252
163
194
246
199
204
180
170
201
147
155
175
183
201
249
203
226
162
289
204
227
230
241
202
207
197
141
241
159
200
224
157
212
169
173
159
193
170
242
149
171
147
132
219
234
187
190
196
209
142
185
185
211
262
250
177
200
202
213
163
192
154
162
158
259
188
174
200
128
184
177
191
241
142
236
261
214
193
189
157
194
155
210
148
244
215
158
189
186
249
205
192
194
224
174
232
208
210
235
242
219
254
224
237
140
143
248
154
216
201
198
150
216
158
146
156
178
192
188
161
170
206
236
168
189
185
249
195
130
242
193
160
243
190
158
236
226
171
186
167
223
186
219
196
192
209
253
135
171
216
220
165
221
240
221
186
182
185
205
170
208
151
229
175
192
221
201
161
215
221
240
204
210
262
195
210
225
212
189
214
281
227
184
255
242
216
250
138
208
228
221
203
167
184
181
179
149
226
109
168
223
183
130
222
210
247
179
209
219
233
209
264
198
200
193
203
234
227
151
231
159
248
160
167
204
189
241
144
228
222
236
229
202
142
164
189
188
233
190
250
188
227
199
167
166
197
229
192
194
194
206
179
198
266
186
201
212
169
183
220
194
230
236
159
218
189
191
188
199
217
263
182
192
187
161
201
181
157
174
182
183
127
161
224
152
192
154
194
121
218
199
175
184
197
174
242
227
262
172
158
159
171
164
199
254
190
212
166
229
117
217
111
203
190
198
195
208
262
183
190
163
186
269
229
220
228
245
206
238
225
203
198
278
228
206
199
215
193
205
226
179
209
173
173
208
212
189
237
198
237
210
160
214
193
204
257
243
111
171
209
241
171
185
165
207
192
187
183
183
209
168
203
276
192
139
247
202
178
221
205
181
216
158
206
135
227
190
200
221
169
148
185
226
207
209
173
130
203
191
216
159
222
213
143
230
201
209
254
169
197
143
208
219
204
262
165
168
186
266
237
231
232
188
216
171
194
202
168
268
203
186
160
146
208
192
171
211
240
158
228
195
184
191
218
249
219
175
176
202
211
120
201
188
213
256
231
201
229
182
184
244
213
228
245
205
173
224
177
231
215
227
213
256
242
167
170
230
166
221
230
161
206
193
231
209
209
221
281
225
193
161
229
136
203
211
200
155
255
224
248
235
193
228
198
188
151
224
197
244
205
214
213
215
187
204
170
188
211
199
187
198
226
179
170
216
197
221
238
196
171
211
161
212
263
185
223
214
229
190
217
211
231
243
262
211
172
212
206
244
185
251
167
205
204
171
235
185
207
199
191
181
182
243
163
163
235
274
259
152
270
138
226
199
202
224
251
175
205
216
196
191
238
200
144
131
213
180
215
218
157
167
164
203
207
181
178
179
214
194
262
233
221
236
214
228
207
211
186
155
206
244
190
205
253
285
239
158
208
175
205
219
195
226
207
207
198
208
218
218
181
242
203
207
215
212
161
151
212
243
212
232
228
255
200
181
162
235
204
154
228
196
222
162
221
166
177
248
160
263
221
215
187
237
153
226
120
225
243
215
211
197
222
190
200
240
260
145
248
273
220
187
193
225
252
228
153
201
171
165
181
230
186
216
191
191
238
223
244
214
200
189
147
182
153
148
122
228
252
173
189
255
245
199
196
239
211
204
185
196
206
195
145
199
193
147
145
203
149
245
180
225
196
262
210
218
161
131
251
232
262
172
181
195
205
223
172
208
231
231
176
163
210
186
181
178
225
189
205
249
205
183
212
201
221
120
254
188
231
210
145
237
197
129
200
242
222
207
254
165
195
231
196
195
167
193
218
143
243
244
221
312
158
147
155
189
168
227
168
199
221
193
211
191
194
245
197
274
169
205
177
242
215
177
262
117
230
242
236
225
154
167
208
229
226
231
177
215
181
209
239
202
201
167
222
217
200
197
137
159
179
193
216
191
199
192
164
204
239
198
183
184
142
171
231
257
125
252
182
233
204
199
187
198
191
147
176
189
180
218
211
247
204
227
250
240
218
255
189
186
182
187
162
174
189
184
243
221
219
210
204
220
217
213
198
190
207
215
190
174
233
242
225
176
233
217
201
207
252
148
220
181
98
163
130
195
194
135
167
239
192
218
215
281
170
212
208
229
190
216
246
219
264
179
111
198
166
221
230
206
214
142
239
199
252
206
221
178
213
178
170
250
238
190
176
197
251
134
176
233
178
207
237
260
188
132
190
193
165
163
139
243
230
150
210
225
185
261
253
238
203
168
211
219
213
221
179
173
280
207
188
179
160
203
252
170
186
202
177
213
130
270
207
230
248
207
199
230
198
219
242
148
175
175
206
203
234
238
256
205
149
179
147
171
222
148
228
183
200
199
170
202
184
196
256
178
194
223
174
206
135
175
189
152
187
178
199
200
215
196
191
211
148
180
239
279
160
209
195
221
182
187
268
261
182
156
190
208
201
257
240
225
185
140
200
171
188
204
218
213
201
259
156
229
252
200
116
164
228
148
212
205
231
186
224
193
213
189
222
187
160
171
179
199
208
180
147
207
175
170
179
229
212
137
140
224
210
141
153
152
197
238
248
172
211
220
169
188
193
172
266
143
188
178
171
260
233
196
239
210
241
186
256
215
167
212
280
247
161
164
212
188
134
215
166
227
226
202
205
174
178
205
194
221
212
218
190
211
231
246
214
169
216
197
179
201
196
193
226
268
177
189
228
184
189
212
213
215
186
191
166
188
201
166
235
217
159
171
217
180
217
151
221
191
177
185
163
216
216
235
184
137
221
213
215
219
163
200
158
219
160
209
125
219
209
148
209
204
198
208
182
185
157
193
210
274
229
195
253
219
192
241
187
137
248
155
137
156
180
205
224
159
231
226
201
145
184
248
128
240
253
179
188
215
176
174
196
243
185
221
283
189
176
250
174
202
230
238
148
268
212
165
152
165
199
241
191
165
231
114
141
180
218
168
179
150
127
174
193
164
250
248
129
207
150
218
143
189
196
147
210
221
200
182
230
206
227
234
199
263
217
188
185
198
203
238
195
214
219
216
231
154
176
180
220
168
167
179
166
239
176
189
238
173
207
235
216
181
223
242
159
179
206
174
238
193
194
213
184
236
161
160
282
204
236
180
162
191
197
241
194
148
193
134
119
229
224
151
216
201
215
189
221
186
169
215
188
175
220
182
215
212
193
225
204
236
197
167
165
230
235
199
220
200
208
199
192
167
212
214
209
200
252
243
229
161
164
282
167
231
220
203
197
226
187
145
182
178
227
256
169
180
235
176
190
250
229
254
159
168
175
221
202
198
248
242
201
197
172
170
218
186
215
170
236
240
239
264
161
156
108
166
234
197
189
217
235
166
179
221
184
147
219
180
151
185
199
211
224
167
165
197
238
205
217
216
151
176
209
226
159
177
245
247
239
214
162
229
256
106
240
246
171
196
195
185
258
175
143
212
214
225
195
270
223
191
231
203
248
215
187
215
169
194
241
278
198
241
225
134
162
147
190
164
269
197
208
245
164
220
205
220
192
232
150
203
267
159
235
191
174
165
216
199
123
207
182
191
210
193
134
240
187
176
264
154
246
232
192
225
252
135
203
171
210
207
181
168
259
187
234
234
179
175
225
235
224
242
148
175
229
122
182
211
234
244
206
203
180
181
161
173
146
209
203
154
243
188
123
202
194
217
203
199
201
178
148
247
201
236
218
227
146
205
130
212
146
213
158
179
235
108
196
163
233
174
152
192
224
155
272
217
191
162
180
233
163
205
177
252
149
195
214
200
223
187
195
207
219
162
219
181
232
167
177
198
252
202
160
195
164
216
206
145
140
209
239
174
195
194
214
245
150
266
215
217
201
204
250
229
220
210
255
156
214
214
217
180
205
147
176
219
218
166
193
135
269
226
243
245
158
225
234
260
275
247
188
216
223
209
172
154
271
206
182
181
182
150
209
180
204
227
143
199
179
151
225
158
193
207
231
252
215
212
167
168
197
166
194
245
156
161
226
214
178
166
122
228
168
156
177
208
195
119
243
219
211
200
176
165
255
283
226
166
239
188
223
249
268
245
224
202
220
179
230
225
269
250
216
259
210
160
105
178
185
157
180
236
131
207
246
228
253
188
236
177
272
245
203
235
158
206
194
238
256
208
196
166
226
266
209
247
284
225
270
157
234
189
196
226
210
202
226
158
180
226
200
192
181
195
199
192
201
94
153
163
190
120
176
206
189
183
234
184
195
209
226
235
232
195
149
179
262
218
185
207
160
143
183
207
220
254
203
157
246
248
260
165
200
214
255
202
213
191
172
171
183
162
155
137
177
243
228
150
202
202
142
236
236
116
166
221
226
175
122
147
240
140
163
238
241
223
167
210
199
156
234
202
206
126
104
186
143
196
123
207
206
146
198
219
225
190
216
221
147
157
207
243
241
182
204
254
224
199
228
272
189
157
157
181
215
214
169
205
197
234
137
244
234
241
206
169
219
188
199
179
85
225
213
134
267
223
232
177
189
202
216
227
146
247
211
220
243
172
250
189
224
248
156
196
160
171
167
149
203
110
229
198
160
184
189
192
235
251
161
228
148
175
163
256
201
201
212
227
192
221
202
140
212
228
277
162
149
164
201
209
174
221
197
158
164
233
206
231
237
210
206
230
160
258
173
211
201
204
227
187
244
213
188
155
146
205
165
203
213
206
153
178
186
187
149
160
179
154
240
271
159
219
168
228
193
236
199
241
201
185
267
193
209
234
267
228
194
196
199
153
175
156
228
246
201
202
228
183
197
247
201
212
224
186
239
236
239
232
196
192
172
281
224
184
247
207
180
243
229
227
245
252
233
212
183
191
127
213
235
162
255
228
179
217
235
232
169
194
231
177
255
148
257
226
220
211
159
173
183
265
177
256
224
179
160
176
251
189
227
159
169
205
211
221
231
229
176
195
205
257
236
184
217
225
220
219
171
232
120
205
208
184
232
135
163
215
231
197
210
250
164
220
193
172
197
269
193
228
172
239
259
209
197
160
183
157
171
208
281
169
211
210
207
233
234
223
256
206
238
192
222
219
234
281
221
238
226
236
112
246
180
197
246
183
204
198
237
217
156
218
165
222
225
206
217
190
221
255
218
199
195
226
241
165
205
181
158
260
215
205
214
192
152
177
217
228
204
165
217
213
196
144
225
167
184
173
178
212
194
149
167
205
163
156
173
202
251
276
224
228
204
250
151
154
203
179
195
227
169
197
168
183
172
242
212
169
202
193
160
172
165
224
197
169
202
199
141
164
236
213
192
179
206
225
224
176
235
188
172
271
221
186
194
229
213
238
262
144
155
126
276
169
187
202
164
247
208
159
268
201
228
200
196
208
236
267
251
188
210
222
200
214
234
179
228
196
258
150
159
197
221
257
169
215
191
236
230
241
214
161
205
189
216
226
168
145
226
202
209
191
183
236
191
194
215
150
206
178
184
218
281
218
235
235
259
196
214
132
187
222
246
186
205
211
156
219
165
181
276
250
221
162
180
260
220
196
194
175
199
186
192
235
129
223
193
164
229
215
212
236
283
230
196
186
191
174
162
167
185
177
180
108
203
160
185
160
206
193
221
229
137
155
257
167
154
161
222
198
167
177
188
257
242
178
190
140
209
177
177
266
220
198
180
173
203
200
240
213
194
207
198
161
191
112
134
213
257
262
217
277
249
238
198
255
200
194
234
276
176
173
211
242
231
246
245
202
200
190
256
248
143
239
176
194
216
216
195
213
146
134
263
198
185
258
180
210
228
195
246
234
191
215
203
206
214
240
195
201
163
239
217
164
153
186
203
212
206
203
247
234
218
154
208
249
199
250
250
191
207
226
232
170
167
236
192
142
199
199
240
154
200
179
187
232
186
188
171
178
246
202
166
172
187
204
197
187
262
226
183
207
203
201
177
239
203
248
205
199
194
166
173
220
197
198
178
209
148
253
215
173
196
152
215
211
194
196
188
261
180
222
217
181
192
247
111
168
163
227
167
172
235
205
234
140
175
206
238
219
240
235
174
166
193
163
168
291
182
220
183
253
206
221
272
234
136
211
209
186
209
199
190
117
230
200
228
230
171
203
243
213
176
215
178
210
205
251
197
226
194
202
146
204
188
216
212
174
246
178
178
162
186
139
213
231
229
211
199
177
255
193
219
126
189
179
245
157
255
234
242
198
240
146
207
234
152
199
197
225
284
256
270
237
199
220
156
187
231
166
202
181
251
199
186
180
216
264
146
218
204
224
224
224
226
154
231
170
230
162
263
217
125
261
197
204
158
215
153
264
146
235
181
209
224
150
228
225
210
211
197
112
150
226
214
236
155
148
127
239
240
182
174
224
124
183
224
147
208
162
265
175
211
199
197
266
224
173
241
214
191
185
203
158
244
187
185
143
243
150
240
213
227
162
180
185
224
210
194
180
196
186
122
271
271
206
224
155
162
147
168
249
180
219
212
189
185
197
168
213
201
189
243
199
199
249
233
229
163
212
184
191
220
182
184
191
251
178
173
219
162
227
262
201
243
173
209
220
172
144
146
162
284
232
183
258
212
130
184
188
151
180
206
173
203
212
173
223
192
191
245
206
195
145
194
239
208
245
212
194
180
255
191
142
200
182
225
216
231
198
195
284
181
185
178
162
191
188
172
192
194
140
248
232
225
222
249
196
231
199
209
186
150
193
174
170
201
204
254
206
173
196
241
162
244
251
177
214
169
200
233
178
172
179
223
166
226
233
231
221
194
237
202
235
188
232
224
181
212
193
155
176
209
195
163
189
227
255
176
200
201
208
165
233
223
134
196
222
233
201
204
240
167
204
147
241
205
174
142
191
197
139
205
161
189
204
210
222
176
118
245
175
259
205
258
186
190
160
174
144
155
198
207
186
146
189
209
198
174
233
239
181
221
191
227
244
126
198
208
222
205
210
195
182
147
206
207
214
141
129
234
164
185
245
160
190
124
151
163
250
194
205
165
213
190
183
223
225
202
200
186
239
169
232
195
199
225
216
166
196
185
184
205
196
235
248
186
200
284
223
177
218
183
180
256
201
188
253
211
199
209
220
167
126
214
190
185
161
199
211
166
217
158
174
265
171
217
179
229
174
265
235
160
221
277
251
226
200
209
209
172
244
196
216
199
209
227
241
200
169
228
237
184
259
201
189
223
188
207
209
236
231
232
199
175
208
242
189
163
242
147
229
153
183
247
229
167
246
184
172
150
162
209
221
133
188
178
157
133
217
240
177
156
198
203
181
216
221
235
203
201
205
181
191
228
233
227
253
179
186
247
152
113
207
188
251
161
209
260
211
194
201
198
200
202
161
220
178
228
175
206
241
197
198
206
218
182
200
218
167
126
211
253
213
221
147
206
223
204
153
236
210
178
182
154
215
161
206
150
187
259
136
182
212
241
213
288
279
231
213
166
181
246
160
210
248
219
189
219
192
193
132
184
239
257
173
140
261
241
259
169
228
185
212
98
227
211
235
225
201
167
265
199
190
180
148
165
143
195
212
257
220
220
189
225
136
230
239
251
253
219
211
175
229
180
194
220
195
183
208
217
207
200
255
256
158
158
262
215
128
188
212
215
266
240
219
214
245
229
244
242
195
191
206
182
198
237
244
190
201
210
199
263
210
229
175
170
148
253
192
214
196
191
250
155
182
228
238
250
137
208
228
129
156
175
159
202
295
236
222
189
213
152
260
201
160
223
196
202
167
223
227
142
251
170
236
154
188
160
205
175
205
154
190
227
195
197
149
159
217
221
235
173
218
182
238
216
169
212
193
225
205
211
188
144
215
197
181
172
238
184
201
202
220
213
256
218
181
157
210
167
190
201
195
190
209
160
160
178
241
207
170
169
196
193
204
234
219
221
256
188
196
282
178
123
201
218
158
157
162
195
224
301
222
168
201
191
243
260
219
197
176
149
276
207
169
163
150
191
191
200
203
241
221
232
236
219
211
241
212
209
148
205
257
230
197
204
230
167
203
240
140
150
251
165
131
211
239
178
137
203
155
195
264
149
150
213
178
206
243
188
155
209
202
169
169
208
180
198
246
199
176
218
116
238
201
173
254
152
208
186
174
134
202
265
180
187
266
198
217
167
221
223
229
210
258
147
221
195
180
202
218
235
207
149
235
179
231
236
197
207
152
268
158
193
164
139
240
246
175
245
248
140
226
219
200
136
170
236
206
205
206
223
170
216
155
238
193
196
227
224
203
270
165
206
158
232
170
191
204
120
180
212
232
242
161
163
186
212
192
182
164
236
206
175
213
244
163
175
215
198
230
214
199
173
160
159
209
152
145
226
208
267
210
191
213
137
160
221
176
135
239
232
194
215
257
209
180
229
203
197
194
170
202
138
160
189
160
252
232
157
125
218
227
223
173
169
120
271
192
229
231
187
282
202
242
208
195
211
223
157
213
178
205
212
245
245
188
223
211
196
207
159
170
221
212
255
173
190
213
160
242
211
175
198
276
203
166
221
236
216
218
193
178
184
167
176
202
176
202
182
212
199
194
187
179
190
163
237
206
196
196
233
231
222
189
261
151
185
202
168
179
209
186
256
169
211
212
210
178
217
220
225
215
220
209
208
224
176
190
181
217
149
190
201
207
186
261
161
207
139
232
225
153
207
252
160
246
196
201
227
194
220
206
233
124
201
223
265
183
222
187
184
211
216
214
172
251
147
155
127
186
199
237
237
187
213
141
224
225
222
228
260
210
174
205
237
159
182
243
198
133
196
158
194
200
211
178
251
138
170
180
187
164
216
176
221
190
212
212
236
219
244
188
217
205
197
121
224
147
220
167
234
186
231
191
195
149
157
216
194
261
180
180
218
233
211
169
194
230
153
231
196
187
232
258
192
230
201
258
184
231
167
234
159
256
196
157
198
207
203
168
175
187
214
197
211
227
194
199
252
183
200
215
223
189
224
210
152
224
227
223
219
198
250
254
216
222
183
158
197
110
153
156
183
194
165
186
179
186
257
212
177
169
164
182
227
239
216
186
219
204
159
172
196
190
202
176
191
230
275
176
218
263
241
240
213
181
189
249
234
143
200
230
191
132
221
242
177
161
155
197
220
189
237
111
169
251
172
191
226
242
203
161
210
174
198
219
167
149
197
235
165
167
191
147
212
202
178
225
240
221
213
171
173
186
166
184
259
236
143
209
161
171
171
224
187
108
151
192
195
220
225
177
224
157
182
184
147
192
222
196
208
226
197
180
167
141
206
209
176
187
205
251
222
215
179
210
185
212
133
164
149
177
223
214
193
174
179
201
233
167
188
194
244
114
148
206
215
234
197
164
237
213
188
199
180
171
255
241
175
195
162
183
232
279
162
258
174
189
221
170
251
188
201
225
187
130
220
210
186
237
187
150
155
191
174
218
201
195
217
235
227
269
248
210
204
183
221
204
269
184
265
299
121
265
133
188
193
260
98
217
222
194
240
235
219
131
185
229
191
247
186
172
200
214
212
239
222
199
179
148
183
234
251
202
200
152
202
259
203
207
239
201
209
217
213
158
231
201
202
225
199
240
171
209
191
199
188
208
219
199
203
245
263
174
234
161
174
205
179
237
212
214
197
281
168
179
276
221
197
195
191
287
173
170
237
217
205
162
221
159
190
228
166
276
188
162
164
208
222
227
159
225
175
258
225
209
144
193
186
199
240
174
183
247
190
181
232
217
219
163
232
251
227
159
181
194
206
136
133
160
218
141
154
175
256
196
166
202
145
206
186
258
150
157
221
185
205
200
161
215
194
196
113
129
192
176
220
201
171
241
185
227
197
174
138
149
231
158
243
201
225
155
219
216
241
193
213
159
236
217
145
186
268
212
191
179
215
231
158
164
172
228
211
227
212
191
187
234
233
170
195
187
164
198
168
233
173
180
216
212
154
184
231
221
261
180
185
143
206
204
182
258
142
235
127
115
181
199
256
182
176
182
239
186
166
204
206
196
207
199
190
203
188
195
208
224
279
193
219
181
218
153
183
196
152
232
236
204
188
199
213
180
148
184
194
195
170
198
224
235
204
212
223
206
162
142
142
242
241
196
212
151
188
147
210
182
228
202
189
195
222
180
222
208
193
206
162
213
217
192
214
173
224
147
182
161
188
232
267
145
239
147
124
226
142
219
135
209
140
236
187
203
273
205
244
179
192
239
179
167
148
213
190
253
222
268
151
219
167
182
152
193
156
230
209
257
186
185
216
189
192
186
238
184
186
174
145
220
227
199
242
203
277
212
210
247
170
186
161
249
178
189
184
208
205
185
227
184
187
161
259
189
146
183
207
233
242
252
243
206
169
208
178
240
187
148
179
161
178
192
161
198
256
232
247
224
215
85
210
217
204
211
144
191
173
173
134
193
195
217
212
197
218
201
240
229
180
209
208
209
146
174
148
210
170
176
229
218
183
237
205
176
215
187
235
166
201
193
232
213
195
226
229
227
237
159
162
232
170
176
177
165
221
224
163
241
213
289
180
203
145
243
191
234
217
234
199
195
231
194
149
197
195
193
206
159
176
109
161
252
248
238
249
152
230
204
225
148
186
235
163
196
225
178
154
203
178
211
217
209
242
209
240
245
195
148
163
217
210
228
160
202
305
180
236
223
245
238
232
187
213
185
221
186
212
231
213
267
173
196
231
193
190
220
218
184
204
240
220
223
158
225
167
162
261
267
218
172
264
212
198
232
223
171
225
206
229
142
166
105
222
162
209
157
172
243
169
129
184
239
218
166
190
146
205
192
223
170
205
206
206
232
219
198
223
212
196
260
175
173
165
137
238
182
226
247
180
172
217
181
127
203
179
229
176
211
257
218
238
201
229
159
195
184
189
221
193
237
212
220
254
264
223
266
226
193
195
233
188
194
147
184
173
203
124
247
167
188
227
172
179
176
198
220
222
220
227
190
158
237
193
162
185
173
196
212
177
229
240
160
170
219
222
168
222
195
185
192
171
130
190
222
143
233
139
216
185
205
274
188
164
158
205
200
187
178
199
223
157
127
183
200
198
167
158
223
118
261
204
162
192
241
188
218
189
197
199
129
228
200
209
250
130
203
195
170
204
179
188
192
158
143
206
204
221
139
250
219
197
199
195
215
204
208
203
167
227
185
173
229
183
211
168
249
144
167
215
188
228
140
142
243
236
216
171
196
175
229
216
173
200
213
213
179
159
213
200
262
211
181
230
224
205
180
194
229
190
162
200
234
258
234
196
237
243
209
185
188
247
154
190
251
181
242
216
182
209
162
187
221
241
228
246
133
277
197
254
199
196
192
217
188
226
207
224
186
163
215
221
225
206
210
136
249
223
271
227
207
224
256
204
151
211
217
205
183
140
170
217
164
190
256
258
189
193
247
237
238
258
85
227
200
220
235
154
176
206
215
199
185
219
151
226
197
182
217
202
226
239
250
129
229
218
151
195
174
291
207
235
231
225
180
214
138
202
239
211
163
222
199
172
158
219
168
173
201
197
219
213
177
225
169
192
229
202
177
182
170
170
177
219
205
194
208
177
187
213
207
175
191
260
172
170
237
156
219
224
263
152
195
196
154
171
249
220
178
148
153
229
177
177
222
178
201
265
152
176
123
252
266
165
241
194
244
126
197
184
183
184
224
197
148
180
150
172
176
196
223
189
177
195
228
152
194
237
224
181
190
210
180
123
203
256
195
224
229
188
242
238
160
213
242
168
237
139
184
117
142
200
181
192
244
244
247
218
223
214
223
178
231
245
160
186
265
179
184
137
226
186
233
210
226
240
218
128
198
145
184
213
173
156
202
194
210
206
169
200
202
160
194
176
193
257
205
270
242
167
216
241
168
181
227
164
218
223
236
255
163
258
258
216
206
143
215
208
229
183
208
258
215
150
120
208
225
239
247
214
190
241
259
258
133
158
222
173
215
231
202
206
253
188
213
153
201
195
177
210
207
199
238
181
196
205
144
189
186
242
181
141
228
224
225
177
238
207
219
220
233
252
181
218
151
215
200
194
184
283
202
169
193
183
186
212
162
171
242
151
160
197
109
222
214
158
212
226
201
172
227
193
240
180
190
205
169
223
147
141
185
209
173
254
204
133
149
218
223
161
172
161
229
192
181
170
214
116
238
161
250
207
210
240
160
228
221
149
277
182
229
133
284
218
185
209
250
185
170
203
237
195
177
201
158
179
198
234
211
179
165
259
205
201
238
260
152
185
237
215
291
180
187
212
205
217
174
237
233
230
190
180
194
182
221
205
184
161
185
180
209
229
254
148
187
204
142
192
233
219
224
204
217
235
215
174
128
248
208
152
207
219
199
188
192
215
190
186
189
191
131
247
205
199
296
161
215
219
201
126
178
221
202
221
195
183
156
170
199
217
221
208
257
184
151
190
231
149
236
202
217
198
215
242
201
238
165
258
199
210
201
187
163
213
233
154
239
191
202
227
218
233
194
232
166
174
163
178
239
160
166
140
142
204
183
239
207
212
196
211
200
267
258
149
183
199
266
178
223
246
152
235
230
260
242
182
181
228
151
194
189
255
157
240
209
175
145
198
168
182
159
183
230
214
166
219
111
180
193
191
165
205
208
273
201
190
200
242
200
191
196
224
150
230
232
202
153
128
237
198
200
195
191
183
177
228
200
253
229
239
196
224
204
212
158
213
155
246
218
154
216
227
75
241
193
240
200
240
209
242
208
147
254
240
220
266
146
187
159
206
122
226
208
248
152
194
185
196
176
193
195
191
198
220
199
219
127
210
255
161
180
207
154
223
175
183
139
189
213
233
195
207
223
251
173
191
200
216
219
127
256
205
170
179
202
152
106
189
191
241
172
181
196
230
222
195
147
206
208
195
192
173
216
141
204
225
166
108
194
208
177
205
188
147
175
179
237
200
233
210
218
195
217
184
232
185
253
217
195
188
166
230
225
261
171
187
195
175
149
145
205
199
189
163
183
142
240
177
173
229
176
198
235
236
185
186
184
199
210
228
186
179
224
245
199
153
213
203
183
239
173
201
217
273
227
170
242
161
265
136
212
216
189
252
203
228
228
225
171
192
187
199
257
242
182
169
220
107
199
236
165
146
200
204
157
230
222
228
262
212
157
232
217
232
239
239
193
150
214
222
248
152
238
163
140
221
240
205
227
211
225
202
186
173
186
236
223
186
150
196
169
230
242
246
260
218
185
145
184
125
115
183
250
137
199
170
194
220
221
176
204
209
175
172
187
240
179
247
249
208
202
156
227
204
158
189
278
240
225
173
171
166
159
175
238
219
222
217
213
174
234
162
266
181
142
188
244
155
232
172
211
196
211
223
234
251
176
259
152
215
236
157
204
189
159
199
213
173
214
164
207
166
200
157
229
149
239
216
273
167
156
167
204
147
164
308
187
196
256
237
222
211
228
246
182
208
186
189
195
144
202
190
174
177
184
203
226
240
205
235
256
156
153
160
229
215
197
219
263
240
190
200
269
195
200
207
215
166
233
236
225
148
152
257
229
227
174
156
218
226
147
216
173
197
218
214
160
202
238
215
206
198
204
228
211
179
202
197
217
158
190
259
144
218
179
136
139
183
211
196
141
214
240
186
170
205
204
275
198
218
254
176
268
273
262
198
219
190
243
120
151
141
240
180
211
238
262
169
222
220
175
199
170
229
224
168
184
199
176
175
263
190
202
184
267
192
193
190
176
153
240
235
210
220
221
198
230
155
228
217
200
196
243
224
154
198
230
248
226
234
140
226
263
206
241
247
156
211
233
230
262
193
178
165
205
217
208
217
199
181
109
162
170
212
229
203
210
191
253
166
181
232
214
229
197
195
133
126
136
210
214
235
177
226
169
219
248
141
218
196
271
206
104
170
201
225
211
130
198
164
161
193
192
224
136
221
215
201
187
206
149
157
217
194
204
215
225
194
221
139
148
94
171
205
162
238
178
237
182
233
213
161
211
222
174
218
232
195
217
223
218
173
226
207
217
184
224
193
171
158
216
172
223
206
212
211
237
162
235
232
176
176
164
192
267
189
214
191
260
280
182
186
155
217
206
209
209
167
204
202
234
230
209
255
242
182
243
165
144
176
231
146
195
122
176
127
225
201
219
162
203
267
168
205
133
181
241
177
231
213
184
178
215
196
192
206
175
216
230
205
238
239
174
218
224
227
232
132
189
209
234
205
216
227
152
237
195
198
200
218
196
224
200
248
271
260
250
185
176
205
180
186
197
246
205
202
248
213
236
198
219
181
166
168
245
206
197
195
253
227
197
244
182
161
167
267
170
162
163
237
232
160
176
234
252
181
233
158
178
245
150
184
227
260
240
186
226
265
226
182
180
188
225
152
218
171
237
223
155
185
247
146
217
197
193
248
201
206
240
219
238
207
204
215
188
215
217
200
188
231
122
211
189
235
161
146
267
186
240
145
203
204
270
190
220
237
240
200
255
185
183
166
175
280
193
162
222
195
240
211
196
224
246
225
217
256
238
133
197
219
223
202
206
219
218
234
186
194
206
128
194
261
210
186
192
249
204
210
147
242
167
188
169
258
202
247
225
233
229
219
203
128
188
207
178
227
212
207
209
171
168
200
216
226
219
175
199
187
193
217
245
210
230
248
220
163
208
166
203
228
230
225
203
166
186
222
249
210
169
276
228
207
219
214
164
216
202
181
149
209
207
222
228
225
193
202
181
158
218
163
228
204
232
203
234
209
247
170
222
224
208
230
257
216
179
229
202
198
242
229
141
219
225
176
228
211
207
190
258
271
207
177
190
208
251
171
183
203
174
148
203
197
212
212
216
209
145
202
200
196
261
256
269
209
161
237
208
242
215
234
254
197
155
147
147
229
221
209
191
144
158
219
205
159
261
212
183
222
168
201
197
206
232
235
260
270
199
174
214
194
195
230
150
185
147
197
142
197
155
169
143
207
182
237
134
232
250
182
135
200
263
199
208
163
194
223
215
174
211
183
190
243
181
204
230
224
193
222
242
176
213
162
124
159
196
222
192
222
205
143
210
204
148
263
232
243
217
220
164
259
244
193
197
200
181
183
150
214
221
217
150
168
194
168
219
167
274
241
185
247
219
236
212
154
229
201
111
207
230
252
224
190
202
229
173
195
218
210
234
221
257
186
248
240
255
198
132
173
226
182
202
215
221
233
296
172
178
227
240
177
219
214
235
232
147
143
239
145
131
285
267
162
224
175
239
142
209
179
197
162
216
140
176
219
220
220
193
218
180
206
127
260
106
196
207
169
181
286
197
202
204
171
171
227
197
172
212
249
201
244
163
186
136
203
189
183
245
190
255
253
200
206
225
207
167
210
163
233
242
254
193
194
159
217
252
182
174
164
209
209
233
209
202
164
206
218
249
284
192
230
157
180
229
185
220
206
189
219
178
196
185
193
190
145
205
170
161
167
182
201
200
245
196
178
181
218
125
198
150
193
227
121
201
191
208
169
196
212
202
222
158
197
163
206
219
177
215
222
155
148
243
220
148
153
205
145
180
181
191
177
182
179
151
213
209
196
213
222
201
204
208
188
283
129
125
207
240
156
154
227
209
157
190
211
240
151
178
191
228
178
212
224
211
218
221
184
229
172
218
190
197
166
187
203
258
207
178
216
226
193
157
171
217
228
213
238
228
240
232
229
187
246
164
200
178
165
182
208
185
224
185
159
202
124
141
247
212
145
187
174
230
238
238
225
172
233
228
200
202
221
172
194
171
127
99
169
233
174
122
205
174
188
184
237
218
198
119
120
160
239
183
180
200
184
251
199
265
122
221
113
234
219
238
164
247
248
177
251
172
240
190
230
191
183
179
189
163
216
230
195
192
224
245
269
151
225
228
261
174
234
211
213
132
244
227
187
222
172
218
186
187
197
214
203
182
202
221
166
192
201
249
244
191
173
206
237
227
163
176
174
218
206
222
237
168
188
118
189
229
216
206
226
183
187
186
227
245
178
239
237
155
161
218
198
179
196
197
109
175
141
168
170
155
189
230
235
142
241
193
181
266
232
169
216
157
203
156
135
244
169
122
195
214
192
167
240
212
183
159
246
219
194
227
189
147
252
220
194
192
174
206
178
171
171
174
165
226
228
209
194
219
198
228
175
286
193
169
229
200
228
225
156
182
187
224
180
186
219
191
262
198
187
196
182
205
207
215
231
222
249
220
269
217
200
212
235
188
199
193
203
194
185
163
191
187
219
190
159
199
262
241
251
170
268
248
201
196
256
160
252
219
173
187
205
195
170
229
164
193
177
173
173
236
182
193
303
169
198
204
204
182
248
200
245
222
162
132
236
251
187
147
232
217
197
152
186
152
186
217
162
209
233
209
224
240
200
245
234
206
202
209
121
189
180
201
211
236
195
141
231
151
226
216
162
185
202
221
225
233
170
197
235
204
180
133
221
178
208
192
212
195
222
236
129
149
180
172
194
179
181
192
243
254
180
147
169
213
192
213
182
188
145
247
172
169
242
202
147
246
214
185
210
132
198
225
193
232
217
138
189
229
201
245
239
230
211
268
251
154
243
199
221
219
217
164
214
231
217
167
191
221
205
214
219
219
223
208
134
182
160
231
248
178
194
146
151
229
177
198
162
157
221
247
202
249
251
202
226
228
230
199
220
175
196
208
211
210
197
197
203
228
224
178
172
237
238
225
161
223
151
234
196
127
239
192
215
213
234
164
154
164
236
149
173
162
142
187
183
219
222
270
212
194
182
203
193
176
214
200
155
205
178
195
163
242
208
248
153
178
173
133
141
249
241
185
210
184
163
169
243
254
197
230
234
290
140
186
175
237
203
208
211
200
153
244
146
184
223
253
247
226
237
178
197
167
151
179
217
222
178
150
148
212
182
203
251
220
253
174
219
243
252
158
192
257
114
307
210
223
249
219
244
230
222
173
183
234
113
151
231
204
175
107
202
163
231
166
191
206
214
182
177
140
229
180
260
218
159
208
197
175
193
210
170
190
225
231
249
229
96
206
208
193
185
215
205
181
129
162
179
217
207
189
176
148
192
211
188
199
184
174
188
228
245
152
221
223
183
266
221
245
164
203
227
196
218
273
268
216
212
225
251
240
196
240
235
216
185
210
204
214
170
193
181
178
221
200
175
225
190
228
222
198
183
197
233
156
224
177
223
212
260
184
170
109
185
213
232
221
199
231
207
211
188
219
260
210
173
206
162
155
233
154
197
233
209
164
156
219
128
196
218
155
168
207
157
222
211
253
186
195
209
186
237
163
241
205
193
148
223
205
204
204
239
189
262
227
163
210
257
149
139
135
191
125
173
217
173
206
198
212
236
259
170
144
228
225
180
183
222
170
235
231
200
180
166
218
204
152
173
140
219
234
156
203
223
119
246
211
214
235
140
199
200
203
238
221
176
168
195
147
166
154
225
138
200
189
214
181
216
144
248
181
165
239
229
214
198
259
177
196
187
204
222
222
205
212
238
243
215
248
185
240
262
147
148
207
178
271
175
264
269
195
223
210
176
128
181
202
162
186
145
277
219
184
235
198
193
206
188
228
242
131
273
206
189
153
217
229
204
202
219
210
218
262
248
215
177
197
129
162
146
246
183
185
215
163
225
206
262
152
199
172
177
170
173
130
193
184
231
197
230
193
225
258
257
199
167
177
218
242
141
183
166
204
237
258
172
245
199
235
193
177
257
256
184
202
229
225
194
190
304
170
160
175
216
164
211
222
185
172
203
275
201
226
181
185
217
229
178
239
221
237
220
166
182
232
223
184
220
210
196
199
186
228
219
190
212
160
178
178
220
166
250
205
191
169
224
199
173
217
173
207
209
199
169
222
251
221
218
222
151
265
175
224
189
207
249
176
224
195
195
201
170
196
202
146
229
187
152
171
167
270
229
193
162
180
232
206
165
185
220
210
267
228
124
158
149
219
203
162
228
222
208
183
253
153
263
251
124
259
151
218
141
150
160
160
199
140
275
223
194
152
166
156
255
254
115
156
168
246
183
197
207
156
209
176
115
189
211
208
196
251
252
252
204
200
225
201
185
146
174
262
176
200
243
191
171
136
215
215
153
149
158
251
258
223
248
222
202
233
199
235
300
165
191
167
169
196
160
220
256
196
220
152
188
232
151
224
217
146
243
145
194
280
164
193
143
157
163
213
221
175
221
186
260
259
213
149
232
149
235
252
212
170
243
188
180
227
217
175
237
222
222
226
188
183
227
187
181
172
223
209
206
241
207
174
262
204
184
239
219
238
171
191
271
207
233
232
222
242
229
209
230
232
181
183
157
200
217
197
224
242
243
149
228
208
205
221
224
216
222
200
245
212
239
222
182
166
261
195
239
215
237
184
201
229
231
271
176
239
193
158
259
241
216
172
155
228
157
271
191
235
205
179
163
188
199
192
183
208
217
185
268
249
227
147
187
213
201
208
185
182
156
198
205
183
192
220
214
219
245
281
235
299
231
127
209
240
135
211
161
211
212
239
189
178
193
173
217
210
178
178
188
253
162
146
271
226
185
190
269
217
193
229
196
145
143
160
250
163
275
169
299
156
207
251
140
255
210
255
205
188
215
192
223
225
181
199
185
132
138
141
186
239
124
178
291
212
200
141
225
188
126
216
187
186
196
272
205
241
243
183
166
182
191
270
216
176
193
174
209
228
269
155
228
192
208
241
186
187
123
246
174
172
209
197
238
197
244
167
209
265
120
178
180
184
234
240
159
173
244
250
213
249
165
148
272
209
172
210
243
245
202
243
226
153
182
158
241
198
196
196
183
246
169
220
245
186
221
143
205
290
148
209
245
226
174
206
225
201
234
194
133
175
216
220
219
249
140
158
252
178
214
213
257
164
225
198
221
186
224
193
262
291
147
201
217
199
186
200
170
159
216
194
202
208
166
161
163
220
207
240
172
179
219
190
180
221
132
198
219
266
205
232
185
160
229
212
222
174
196
245
213
186
200
196
140
202
151
153
193
210
248
223
181
210
200
174
208
154
207
207
227
283
148
244
213
227
221
232
220
236
260
245
165
186
156
159
164
144
223
160
193
181
245
211
171
202
216
240
202
226
250
174
178
156
173
185
238
227
242
239
266
219
178
214
184
231
249
186
166
139
194
220
169
217
146
143
208
161
255
186
249
228
140
263
175
149
138
176
204
140
175
198
145
198
210
222
199
182
172
190
259
202
206
231
226
218
194
213
194
242
187
188
120
144
159
244
181
257
224
119
204
139
254
209
243
241
241
85
280
143
194
228
247
230
193
207
193
234
236
241
184
170
247
205
192
220
146
206
279
163
205
188
228
246
245
178
242
197
175
231
199
258
194
183
175
234
214
197
194
198
122
170
246
183
213
222
192
199
193
189
179
235
253
181
174
209
152
251
225
175
221
193
197
274
212
148
226
170
164
207
149
210
210
209
205
190
128
195
221
176
202
185
263
138
172
197
179
210
191
164
234
159
152
203
197
113
221
232
236
264
212
176
154
195
256
211
144
127
235
180
267
252
210
211
181
231
187
180
191
169
233
188
223
187
169
190
152
233
168
193
234
176
217
232
232
180
209
191
214
170
199
192
185
164
206
193
187
159
167
192
220
202
141
217
197
256
163
212
180
214
221
197
191
212
211
153
193
171
152
186
152
245
174
246
175
152
219
184
212
173
181
199
161
161
184
144
155
238
177
209
243
138
206
186
207
218
227
174
229
196
176
193
200
193
225
155
170
148
247
164
239
183
188
224
179
239
224
208
209
191
161
192
199
202
166
125
216
252
264
244
235
216
186
114
251
243
230
237
148
213
215
200
119
173
201
212
192
200
223
257
183
192
192
238
194
164
214
206
249
213
287
172
202
154
181
145
181
251
216
210
215
177
230
209
210
132
267
197
219
241
139
138
213
184
217
219
224
221
165
212
184
219
188
242
150
260
210
228
215
203
266
149
192
143
198
164
243
196
201
136
213
158
212
233
221
165
172
183
194
214
274
209
210
200
236
186
123
165
187
120
210
209
201
211
190
217
235
196
130
166
208
251
221
219
175
153
206
194
154
220
188
209
188
256
272
215
173
185
195
203
197
239
242
203
163
160
174
232
119
179
174
204
231
159
179
252
260
147
207
159
273
229
158
264
251
191
215
205
219
138
185
208
199
192
239
245
217
207
219
187
199
231
207
193
221
169
212
233
226
202
208
184
182
225
223
209
179
159
183
235
172
242
214
242
155
230
170
159
228
212
249
152
241
228
173
214
210
226
164
154
161
232
167
173
250
160
215
216
186
157
200
216
167
215
199
229
210
222
179
147
180
186
216
226
146
254
179
217
182
173
207
188
212
239
179
197
206
193
157
160
248
118
217
246
250
215
186
211
237
192
232
163
283
241
121
239
179
256
222
194
185
258
171
199
179
170
183
167
203
239
215
251
246
203
192
238
139
197
141
209
126
182
242
110
228
195
156
214
159
144
187
211
240
235
228
234
146
200
273
260
186
205
219
220
165
253
257
258
174
204
162
214
170
257
164
177
203
187
189
247
247
163
216
171
189
211
205
200
158
152
211
224
224
171
218
177
159
233
245
179
213
205
128
203
205
170
183
268
222
153
165
214
242
169
212
188
239
193
178
222
207
178
195
142
149
209
147
232
199
222
172
169
166
252
204
193
217
225
229
244
206
165
180
198
148
209
171
208
197
282
200
248
173
216
183
227
158
161
196
227
195
155
246
189
271
218
171
182
197
202
182
171
195
167
179
196
181
237
205
164
240
123
202
220
205
155
206
208
229
177
184
142
177
233
187
121
238
180
225
157
257
208
97
184
130
232
204
167
234
259
198
164
205
182
191
280
256
201
226
155
224
198
219
222
210
212
205
211
193
194
200
168
210
245
240
228
220
172
125
239
132
131
254
229
180
224
251
215
179
210
218
99
225
185
190
135
235
210
203
192
136
184
171
225
208
212
174
172
235
243
253
177
238
248
191
198
170
192
149
201
213
193
161
166
246
218
192
211
241
228
208
182
232
220
231
174
177
170
167
125
238
229
175
198
228
172
182
195
237
197
155
153
173
233
206
230
164
269
160
203
188
200
179
213
139
140
201
215
202
224
185
155
184
206
130
212
221
189
241
200
193
243
229
173
243
192
182
132
245
174
204
226
149
205
222
178
270
167
222
162
231
215
163
225
184
225
192
199
180
224
224
235
245
198
213
199
221
145
235
257
225
142
187
163
264
164
180
221
270
194
264
239
204
231
237
218
237
224
244
222
203
218
184
237
233
141
231
234
241
209
132
145
146
187
189
186
128
244
251
206
221
144
207
199
156
155
213
250
226
220
215
181
205
117
182
199
202
187
163
275
195
163
190
212
231
188
186
192
213
175
222
262
132
178
196
192
242
211
165
213
194
193
207
173
197
196
221
232
202
215
167
230
165
201
226
234
153
255
209
183
191
212
177
181
201
177
135
193
208
218
190
113
110
228
136
183
213
217
195
272
176
199
201
236
190
214
185
213
174
227
174
241
215
183
178
270
243
176
172
230
156
203
213
196
220
161
150
148
177
249
179
156
190
230
246
194
200
214
195
212
195
170
223
194
176
177
215
211
214
218
181
234
165
236
226
205
203
211
157
143
203
179
209
214
254
192
190
261
241
180
241
142
153
256
254
233
219
147
224
233
235
254
203
238
257
235
190
210
201
145
255
191
163
189
259
251
188
221
175
233
206
132
211
147
233
216
184
213
215
143
192
204
221
219
185
184
210
205
184
283
210
214
275
205
243
180
235
198
244
206
208
233
236
172
230
178
227
205
174
138
192
198
259
260
220
255
184
239
224
196
210
201
178
131
209
213
209
199
172
226
216
230
138
190
203
249
168
254
152
230
249
251
206
210
201
212
146
196
116
178
177
228
180
193
157
184
216
195
221
202
191
238
183
241
131
203
214
237
266
175
225
217
126
162
135
187
179
156
216
189
161
164
171
170
227
189
212
199
174
289
174
238
193
164
206
187
191
186
217
236
149
151
218
196
158
224
235
184
176
169
170
146
208
296
224
161
166
196
187
190
258
138
216
220
116
240
241
109
218
178
156
192
180
217
223
256
207
238
211
140
186
201
209
208
216
196
82
220
197
204
216
244
251
218
222
189
217
141
254
243
237
184
245
230
174
239
189
134
188
238
230
234
203
191
150
176
175
270
251
206
179
203
150
198
195
220
158
133
183
160
207
209
209
187
118
185
169
189
145
209
145
146
224
159
235
187
245
188
189
206
197
177
177
131
239
161
206
258
175
190
216
221
138
189
239
214
173
246
259
186
201
204
239
204
258
185
177
197
179
161
214
232
211
164
240
244
245
174
224
187
210
194
155
154
202
210
214
203
198
157
111
236
198
245
247
177
196
224
237
254
208
266
229
231
102
217
211
207
188
216
237
202
169
231
201
236
98
234
177
202
172
181
197
153
174
168
193
270
216
122
183
212
206
222
128
209
231
175
195
256
148
212
211
209
200
231
171
150
162
244
214
210
226
188
246
70
167
221
178
263
180
174
234
251
225
208
248
186
160
184
228
279
197
178
206
173
145
179
203
168
172
248
205
136
174
200
219
197
222
213
150
218
167
165
199
194
240
174
167
176
228
166
259
186
184
226
185
148
177
247
218
222
227
183
180
224
175
172
221
176
235
219
173
221
246
194
153
209
225
219
228
190
215
208
200
223
192
202
199
218
184
202
213
206
202
263
184
251
217
205
167
258
218
214
201
224
167
126
235
205
177
184
159
155
277
219
165
214
242
221
226
190
225
175
186
193
222
196
218
225
187
218
222
154
253
207
251
201
191
196
189
172
200
166
156
250
233
159
218
212
190
207
201
216
277
216
240
205
152
230
196
217
134
227
247
230
197
131
219
215
202
218
206
266
191
200
142
165
201
198
159
194
242
199
180
158
238
184
194
235
184
209
168
213
143
251
164
236
226
209
225
214
225
173
226
263
217
144
238
194
245
160
196
256
220
200
186
259
258
179
164
247
248
154
185
233
196
236
212
243
213
191
189
176
235
239
189
213
204
187
254
179
180
235
167
197
203
202
127
203
221
155
93
270
143
170
180
205
117
234
181
227
238
266
133
215
254
188
178
195
238
143
264
228
164
200
201
199
186
207
214
164
230
235
184
116
205
175
204
236
153
164
153
247
247
252
191
204
228
219
263
140
264
181
186
184
168
227
184
252
153
259
212
225
189
181
218
297
237
218
193
187
226
175
225
213
199
108
157
206
162
196
212
197
245
251
234
156
248
246
215
224
215
137
199
114
150
189
163
212
222
212
201
222
185
151
214
249
191
182
214
199
186
236
218
244
233
198
184
234
215
153
213
188
213
142
179
173
218
229
244
217
203
235
200
249
221
215
137
190
208
187
155
259
164
245
148
197
152
171
200
242
219
183
237
151
209
241
193
194
181
227
199
211
154
158
184
239
244
190
201
169
194
222
261
222
188
181
221
251
240
248
208
206
187
260
172
201
174
143
186
238
209
176
156
230
215
168
228
219
251
179
120
201
230
188
238
212
183
148
198
183
222
247
167
190
204
201
207
169
171
163
246
218
191
196
175
190
174
239
217
220
263
247
221
216
266
205
187
136
200
232
204
169
247
185
190
171
187
192
229
156
211
172
228
203
206
138
185
172
185
171
164
208
283
133
224
184
213
125
200
230
198
170
169
202
194
222
252
230
201
259
193
235
155
209
249
154
259
192
208
187
184
166
204
210
223
219
176
170
230
243
182
234
211
167
244
188
226
227
93
259
211
207
171
223
234
111
209
213
182
261
121
172
240
214
189
228
180
240
227
186
186
204
160
202
161
174
212
182
166
226
209
203
232
230
141
242
229
201
232
222
212
212
185
190
166
193
231
243
194
173
218
246
238
215
159
145
184
212
159
189
245
222
219
179
192
155
264
196
178
181
213
225
203
234
220
182
223
218
264
179
242
169
197
215
157
185
167
239
207
140
202
209
179
144
202
254
244
163
214
149
208
188
241
117
207
229
181
238
156
124
215
233
200
211
176
237
237
151
192
220
231
196
197
209
232
228
171
159
195
232
196
164
201
266
204
145
252
205
268
191
206
204
164
188
210
184
200
219
211
206
177
200
269
209
147
253
223
160
183
132
236
247
194
189
168
207
242
195
154
163
232
256
171
222
221
188
178
166
168
244
218
198
208
208
251
216
144
256
221
251
180
202
165
220
189
239
205
142
238
140
259
229
160
177
208
233
233
254
215
194
228
197
232
209
219
204
136
210
202
225
226
177
209
204
124
201
178
202
245
219
192
249
220
199
246
191
178
216
181
195
235
214
206
118
237
222
261
215
179
176
138
254
202
170
221
198
178
180
233
215
246
223
162
196
229
265
225
140
189
224
211
157
224
136
230
217
199
188
235
219
234
210
253
207
208
218
222
210
226
258
298
213
209
204
183
178
248
144
190
181
211
218
204
198
130
215
203
195
188
196
217
213
207
104
137
190
225
194
168
255
112
247
192
175
228
211
202
200
200
163
207
215
156
201
231
149
289
191
186
211
251
141
160
132
219
252
159
195
249
248
185
221
239
200
240
171
172
201
233
178
172
204
224
184
215
210
236
225
228
159
180
250
245
175
229
184
191
154
185
211
149
232
237
278
208
170
156
202
202
169
264
183
198
228
252
120
149
207
256
218
209
228
226
273
181
132
218
138
173
241
151
188
250
145
187
208
192
210
255
201
165
199
174
178
248
249
172
192
204
174
263
246
213
201
171
239
218
192
211
252
239
173
236
178
270
146
240
181
187
146
203
221
214
249
121
206
205
176
204
206
221
224
187
192
203
200
228
217
226
166
203
156
201
209
128
160
187
214
176
207
217
234
189
177
210
240
227
166
145
219
252
175
196
154
151
208
136
151
207
179
162
117
248
169
206
185
172
141
247
229
225
206
184
264
199
235
245
171
187
145
115
242
281
163
243
241
174
186
177
215
203
115
185
109
177
106
200
226
183
232
233
219
221
204
182
183
209
249
195
236
231
218
197
276
224
209
187
197
237
197
152
233
160
140
137
175
209
179
191
230
213
220
202
234
171
132
225
183
204
178
244
200
173
220
271
214
187
200
268
175
180
219
188
239
225
199
208
228
214
245
275
198
167
157
207
203
207
161
148
174
220
198
187
154
232
116
200
209
193
156
236
170
133
173
166
190
173
238
200
193
204
144
112
194
187
194
160
193
150
186
232
166
185
197
106
212
254
161
212
182
144
168
213
210
177
214
216
241
203
154
198
194
176
175
139
242
235
199
116
237
202
258
159
250
158
226
162
201
210
99
147
205
180
220
175
154
191
229
188
249
258
184
253
170
235
182
141
160
254
221
232
146
249
196
234
230
224
197
202
209
192
185
187
242
244
221
134
190
160
243
206
231
205
238
221
218
176
231
211
205
185
178
177
157
146
152
220
200
210
251
221
162
245
160
166
178
152
257
174
206
216
236
176
187
204
151
227
217
178
197
212
181
155
184
144
204
165
246
250
209
205
219
144
263
202
175
245
251
144
234
203
178
162
190
193
170
226
223
179
143
175
168
156
246
212
232
186
225
215
213
170
128
201
226
237
221
199
229
208
227
168
168
216
213
215
168
198
210
208
240
236
162
194
230
197
168
177
210
213
211
191
214
257
164
168
184
126
198
245
228
182
170
251
150
183
159
209
201
239
143
176
203
226
156
165
199
234
210
218
199
213
246
166
167
163
143
226
126
166
202
196
147
180
220
208
177
178
218
159
190
242
200
215
212
190
206
223
205
221
228
247
202
222
171
239
212
153
177
180
238
245
242
244
263
218
213
192
223
226
169
132
195
160
235
205
221
228
175
283
220
222
166
225
193
181
221
150
140
227
179
209
213
217
187
184
205
232
223
239
218
221
281
157
190
278
176
115
168
144
133
243
240
258
191
263
197
225
216
184
165
146
199
175
158
240
228
235
243
241
244
178
176
230
211
191
211
224
171
200
205
203
172
203
216
194
247
136
171
197
190
201
113
206
221
216
210
187
269
159
180
175
246
195
211
206
266
266
191
208
267
194
205
188
180
198
220
185
210
224
211
239
137
141
187
177
197
194
212
155
245
223
206
157
240
254
165
194
238
134
177
131
167
175
211
228
233
169
115
200
257
176
179
264
154
215
203
144
173
201
196
199
201
249
209
203
171
210
236
222
226
181
209
198
238
259
232
208
152
279
197
176
176
142
211
207
231
208
164
148
195
169
208
161
186
209
218
158
224
171
173
184
163
188
203
208
194
141
188
221
267
235
218
226
250
237
227
184
192
230
201
248
184
181
196
220
221
115
232
189
160
162
189
235
239
152
173
250
198
180
190
186
171
224
184
194
135
219
248
143
91
197
183
171
212
234
226
163
186
203
147
167
144
197
155
174
195
142
189
252
217
217
184
169
161
172
253
189
181
221
215
225
242
225
208
212
234
235
171
137
170
212
170
259
216
146
165
228
195
116
201
185
241
207
247
203
215
225
172
180
206
222
219
195
198
199
148
223
225
224
180
244
259
175
200
234
207
152
148
184
210
221
155
204
120
227
143
178
228
251
209
132
177
217
190
232
189
220
143
159
214
223
200
180
196
219
186
210
186
276
216
203
185
227
209
196
154
105
261
182
129
202
231
158
142
153
202
216
198
215
196
233
198
232
240
159
166
139
155
205
146
155
219
232
198
220
175
134
183
222
165
234
213
221
237
221
195
235
225
262
225
160
174
184
159
188
235
216
152
175
225
265
157
118
214
213
212
218
204
259
179
216
204
147
175
174
150
184
219
235
155
199
191
210
197
198
217
189
222
201
126
183
199
203
232
197
209
247
232
216
214
149
255
206
229
177
302
254
161
226
211
192
185
179
190
240
152
221
208
181
177
246
240
213
156
178
251
214
217
201
211
157
176
207
195
176
107
260
240
167
201
174
189
190
211
184
157
187
218
105
167
222
213
183
265
184
227
217
184
176
212
263
233
234
174
131
205
212
161
252
228
190
227
268
203
203
153
210
193
240
196
187
169
229
192
234
200
172
219
228
211
205
200
220
175
242
216
173
167
225
147
167
192
217
237
226
211
238
265
216
186
245
218
187
174
201
156
182
173
228
222
208
226
193
194
233
188
180
207
182
156
237
212
196
200
183
210
170
176
175
223
173
193
194
160
234
223
212
166
174
203
219
191
253
157
236
212
169
203
188
234
148
247
221
230
245
215
208
182
163
148
209
181
212
194
216
168
235
210
180
176
178
231
235
179
188
192
184
231
204
236
196
198
225
238
209
168
176
240
174
144
189
220
229
155
200
188
177
185
251
183
165
220
229
238
250
199
223
199
203
203
202
217
228
212
240
207
206
189
270
238
220
179
209
189
293
199
161
162
200
216
182
223
145
222
185
215
289
161
203
200
200
210
163
193
159
233
218
195
220
223
191
247
192
236
233
213
197
124
212
194
185
179
191
142
106
187
219
199
198
212
215
207
156
187
162
239
213
170
256
176
183
191
180
172
168
163
220
263
197
225
229
215
224
243
220
235
194
181
168
167
136
168
206
180
195
252
191
244
186
97
204
175
231
189
175
211
181
243
193
174
215
190
167
167
225
184
200
155
286
204
223
174
196
129
174
221
198
175
217
195
204
201
206
198
163
172
192
198
212
174
216
201
141
226
179
229
112
178
241
231
211
173
205
228
228
171
252
204
189
193
165
204
212
180
210
133
201
155
246
259
223
186
253
148
192
208
217
192
161
229
244
187
156
174
237
162
203
233
241
186
173
182
176
200
185
230
245
169
149
165
177
254
192
226
271
178
199
195
201
229
187
185
194
219
178
170
199
196
218
248
134
247
201
142
220
196
193
226
238
229
215
189
189
176
201
184
144
192
229
155
180
216
205
200
237
142
159
250
176
173
256
151
214
166
199
171
193
175
187
209
184
124
210
245
229
166
133
225
250
189
196
142
224
131
159
169
206
125
222
114
223
176
165
214
186
170
115
198
228
175
148
119
168
161
191
198
182
201
197
206
177
157
163
214
184
192
184
254
217
249
182
147
197
182
134
212
235
147
228
205
194
244
180
196
211
174
148
195
242
188
208
227
157
213
168
183
178
186
179
252
187
208
189
139
222
166
216
208
209
189
190
175
170
231
168
144
210
192
250
208
208
166
233
128
143
235
215
147
200
148
147
229
233
193
186
188
188
239
203
165
191
218
209
172
209
214
138
206
221
180
136
216
213
171
232
168
191
231
228
215
156
263
212
256
220
170
177
193
191
159
215
187
170
249
149
172
223
157
152
198
122
220
227
185
234
211
222
248
154
169
191
219
222
212
145
173
260
220
161
198
187
218
190
174
250
240
246
214
194
125
233
224
227
239
237
218
196
186
187
168
219
252
247
182
135
244
278
168
184
177
231
218
149
193
185
148
214
186
136
185
142
265
241
233
227
175
214
230
174
173
205
254
260
199
214
235
197
211
191
262
217
140
157
183
211
270
254
123
234
210
269
149
209
175
209
226
145
201
206
161
149
158
235
215
205
150
173
213
207
206
224
205
236
208
136
163
249
254
135
221
154
217
193
235
206
168
143
216
228
254
163
212
217
202
227
202
178
236
211
241
175
205
210
236
143
256
164
207
209
228
170
218
155
211
239
166
242
166
229
151
119
167
198
259
203
180
157
161
191
187
165
213
245
246
211
159
164
231
156
174
179
174
196
263
196
229
216
163
192
193
196
219
203
197
186
215
210
216
179
237
122
191
225
136
219
138
163
188
167
215
214
254
204
224
178
217
157
201
178
233
136
159
168
192
219
242
205
201
277
191
199
176
197
211
222
104
198
212
204
258
200
210
249
228
169
160
192
210
187
269
238
150
162
216
216
192
222
226
119
255
258
162
106
203
182
234
176
219
184
161
185
206
196
202
204
207
198
190
255
201
190
213
206
168
233
173
230
207
181
225
162
202
194
252
217
258
215
123
209
182
215
207
150
221
201
233
179
239
123
223
252
194
227
227
254
236
197
263
199
194
204
166
226
218
235
197
215
159
200
188
157
181
172
192
218
195
183
211
197
187
223
218
219
173
228
182
182
232
165
64
212
202
156
268
200
214
198
165
183
277
140
239
153
281
209
231
132
258
200
162
272
164
176
234
176
186
182
148
188
211
153
206
197
178
181
175
208
215
235
199
250
214
206
177
168
217
196
111
268
257
186
183
191
210
211
214
167
220
164
130
162
207
204
217
214
214
219
234
213
114
206
212
195
219
219
139
191
248
170
192
153
136
186
166
183
147
199
196
277
184
233
219
207
189
194
214
262
219
200
208
223
183
273
205
196
198
246
222
237
181
194
226
208
244
192
212
242
195
176
241
179
178
106
231
246
215
137
200
140
218
151
235
226
191
171
237
187
236
227
232
131
222
239
239
150
203
139
209
221
198
234
227
266
186
241
188
207
247
171
265
258
162
228
209
198
175
173
196
183
169
244
194
231
284
194
189
205
237
222
197
192
211
190
194
232
220
168
207
203
189
245
180
222
226
216
197
151
166
182
203
117
245
178
220
169
232
182
204
151
161
183
139
199
170
173
220
191
206
180
185
197
218
209
191
169
156
197
175
269
206
246
233
214
200
138
186
131
232
185
212
274
177
202
120
216
234
186
250
243
224
201
170
280
221
213
208
183
191
159
243
211
164
190
197
178
234
236
181
239
213
203
225
194
245
254
211
208
191
186
203
190
171
170
164
192
156
124
210
189
216
200
190
190
254
179
173
210
214
206
194
156
167
211
198
217
226
179
228
209
202
210
274
172
214
220
257
177
199
230
225
171
191
248
239
115
238
204
220
155
188
192
172
197
169
155
275
227
162
191
239
228
172
211
253
200
197
256
196
163
218
216
236
189
219
192
143
201
224
140
171
190
186
212
162
222
199
152
171
227
158
171
170
214
251
194
199
185
201
233
230
230
195
179
161
203
216
232
181
266
256
215
205
168
196
230
190
231
180
161
234
222
205
152
215
211
228
155
207
136
249
196
210
143
176
202
163
242
196
186
192
196
203
185
180
218
220
208
176
176
217
202
173
174
141
199
215
175
246
189
109
166
239
190
221
223
198
206
167
229
214
180
195
189
207
126
185
232
149
183
229
247
166
158
213
197
196
181
189
245
226
225
217
226
227
258
251
228
234
158
240
234
176
176
194
173
221
143
195
164
222
168
151
193
183
187
230
184
226
183
164
187
221
158
204
213
167
186
191
213
159
245
249
191
165
305
178
185
160
187
234
177
198
189
164
201
224
178
230
169
165
207
177
207
186
222
263
216
139
220
179
198
160
235
191
202
230
202
223
195
215
229
174
187
195
257
173
158
249
213
193
183
257
240
221
184
214
179
262
197
253
177
241
235
130
166
182
243
229
159
234
227
168
179
115
184
194
181
141
189
221
242
161
190
164
205
164
211
194
136
191
209
233
215
254
220
222
178
227
231
236
178
131
212
205
162
180
229
186
187
164
215
169
238
258
217
147
232
169
227
208
204
174
192
231
211
191
223
252
151
178
203
177
215
304
198
195
197
201
175
227
191
240
245
134
174
248
179
227
171
219
222
253
209
211
102
232
213
178
210
192
218
247
148
284
216
189
230
154
227
226
183
223
237
223
200
272
260
203
225
156
200
184
205
234
240
212
159
215
183
202
226
206
178
254
273
253
250
163
207
201
192
149
201
154
243
212
195
195
227
225
137
205
180
255
208
182
211
163
172
233
184
226
165
185
168
199
304
191
174
204
263
139
156
190
196
217
241
223
237
243
210
229
199
208
221
164
239
225
223
183
237
232
149
185
164
194
138
199
191
233
239
261
213
150
222
196
164
172
145
146
162
238
132
242
239
186
196
176
186
152
195
194
245
223
215
214
284
185
175
215
174
157
222
147
242
192
266
194
257
180
146
181
152
166
193
206
175
211
213
143
180
215
227
255
154
211
164
201
191
228
145
155
210
148
240
188
243
189
250
247
216
182
209
196
157
248
236
237
170
121
169
229
239
105
125
106
195
209
201
234
190
151
147
159
198
121
257
203
190
209
182
187
172
181
200
210
177
168
150
178
203
164
174
158
164
178
226
211
147
201
269
160
188
208
174
181
228
222
193
179
172
215
250
201
168
212
205
173
251
217
238
186
211
204
228
196
187
190
227
232
185
205
262
160
196
233
211
232
205
77
250
239
186
174
200
202
229
164
182
160
249
213
233
124
187
277
210
257
162
273
191
98
189
152
220
227
225
206
181
226
169
225
212
155
201
190
205
166
252
174
207
230
197
152
200
147
180
190
196
213
216
164
234
227
159
264
182
230
117
186
246
208
214
215
126
209
150
177
231
176
175
180
164
189
191
225
225
222
192
136
230
188
211
256
205
241
210
209
272
215
208
185
242
202
194
210
222
164
106
180
200
186
188
148
226
244
262
203
254
211
208
206
172
196
193
216
175
175
170
197
189
233
291
206
218
99
200
209
235
239
171
176
223
228
150
228
222
204
192
172
206
211
216
240
147
119
179
208
160
234
208
193
184
175
204
186
180
196
184
220
241
202
160
210
188
236
193
189
210
189
193
175
223
159
223
160
208
250
227
206
207
222
202
184
172
172
174
194
201
158
223
192
173
216
235
249
171
190
246
271
254
211
172
215
211
218
181
156
206
156
228
179
204
167
279
125
228
184
183
208
220
230
188
222
192
241
176
160
192
202
131
203
152
197
228
128
157
241
266
175
190
203
200
202
166
225
182
228
196
146
222
176
224
228
238
191
234
185
199
180
195
157
223
192
243
182
132
180
141
197
226
227
198
250
149
147
214
210
181
253
174
162
188
174
266
185
244
189
276
171
206
157
205
249
183
169
172
188
200
218
204
203
205
182
147
218
187
102
191
229
241
184
211
178
221
204
218
219
200
187
226
223
267
208
217
214
169
196
166
155
143
231
248
190
141
152
232
171
183
193
229
227
230
245
195
246
212
230
206
206
235
120
235
212
157
146
192
172
216
248
192
249
185
206
237
136
170
234
213
230
180
165
227
181
142
270
213
156
195
238
220
168
190
187
230
146
163
187
239
149
245
186
131
204
221
175
199
263
228
244
256
277
248
211
162
200
195
159
162
170
189
145
176
209
251
263
155
214
158
173
172
172
247
144
151
215
191
226
210
196
147
171
172
176
237
197
171
195
147
214
214
232
187
231
190
237
183
152
184
247
198
192
229
225
141
211
238
202
153
262
154
233
233
222
208
216
146
217
193
117
167
221
165
208
175
189
247
240
212
249
202
182
156
102
212
198
223
169
185
247
238
151
260
188
159
188
169
228
140
116
206
198
181
214
237
182
178
210
224
209
199
214
138
178
226
229
177
145
117
228
196
163
220
197
196
249
177
258
141
174
168
214
227
183
239
208
237
227
205
245
232
267
255
230
121
170
182
236
185
178
200
211
273
238
260
128
205
195
192
245
232
211
161
133
147
204
205
143
174
164
200
250
220
199
193
245
208
207
205
220
185
225
179
201
133
209
180
225
142
187
223
198
201
121
224
188
194
254
239
213
192
162
206
214
201
172
208
223
223
213
199
207
142
231
227
205
189
202
176
178
213
199
199
232
227
234
177
190
227
174
189
239
196
183
199
216
195
234
199
111
198
189
164
221
243
152
276
152
177
215
223
227
165
185
161
152
183
260
188
193
184
240
143
217
227
239
177
176
216
219
191
208
186
277
192
168
170
218
171
228
130
249
218
236
164
205
156
207
241
176
109
155
160
200
158
240
189
179
143
242
220
244
233
232
229
150
182
195
218
235
143
167
191
252
261
231
251
188
185
227
216
223
216
186
167
220
217
223
149
180
217
184
206
209
205
213
177
188
212
253
259
139
164
249
195
187
194
207
199
201
188
188
215
223
198
211
195
177
156
201
224
201
217
205
164
196
259
205
208
178
190
234
181
178
286
193
229
179
235
214
152
205
250
179
206
191
210
143
232
188
243
201
279
170
256
185
170
158
174
236
194
238
244
163
245
245
167
205
237
150
230
255
225
197
139
213
218
205
156
202
204
225
208
200
162
155
151
280
243
200
164
234
164
231
201
198
202
225
168
167
169
194
203
125
145
188
242
223
186
163
147
166
169
237
182
151
215
168
152
203
159
182
191
177
161
200
203
207
181
154
192
213
223
185
184
181
223
228
219
194
256
186
212
216
159
203
148
201
211
250
124
231
254
242
247
240
191
209
190
197
195
208
148
205
153
205
190
146
204
220
183
175
151
200
230
160
220
195
189
159
155
230
217
173
267
194
179
185
178
233
248
139
238
191
196
144
225
181
157
244
238
204
163
245
147
230
218
198
188
257
155
195
231
202
248
182
198
216
232
249
191
235
114
193
201
209
238
186
139
241
200
214
267
207
199
183
131
265
202
242
280
186
153
213
165
184
225
213
211
188
227
211
155
178
172
209
198
178
239
154
183
141
196
197
220
176
285
125
236
209
184
242
178
165
203
181
149
209
171
168
211
221
187
220
178
202
206
229
237
194
200
198
179
203
219
246
146
140
165
222
213
222
194
176
227
242
163
203
154
220
154
198
144
255
243
198
224
174
237
223
213
217
166
213
171
187
247
189
249
222
147
231
169
211
173
203
250
91
132
185
181
205
199
275
197
208
151
199
169
224
223
185
175
219
193
255
211
181
189
123
223
216
216
195
182
252
175
161
211
242
243
125
187
182
148
244
213
203
199
187
115
221
172
156
243
186
219
208
176
220
171
208
189
183
144
174
298
187
201
264
234
220
184
209
203
217
262
253
195
234
192
194
185
189
224
201
199
222
276
199
211
228
241
169
214
214
263
276
204
193
198
180
222
154
160
207
205
198
204
200
173
261
263
167
145
232
194
174
148
202
242
170
161
211
107
138
199
239
204
263
209
131
141
188
191
225
186
220
192
179
219
225
183
189
205
163
168
143
199
183
209
224
199
189
230
227
154
230
222
145
180
212
159
232
134
201
244
193
183
206
193
187
180
247
176
169
206
154
221
214
245
249
238
178
199
160
194
235
181
191
208
138
196
170
215
273
198
225
226
145
177
194
197
192
216
190
270
184
188
167
200
205
166
160
148
173
177
210
207
210
178
232
138
226
264
270
212
219
234
230
193
221
190
150
177
184
199
201
248
201
204
184
161
163
227
215
192
203
217
180
253
212
151
184
170
210
226
188
168
206
149
228
173
190
208
189
176
253
186
149
210
231
186
218
179
141
196
247
176
236
272
191
201
206
154
237
217
169
213
216
200
116
155
208
212
227
231
234
231
262
178
224
174
227
219
252
186
230
212
212
234
151
202
230
181
191
236
189
214
214
198
255
224
250
186
222
164
161
184
202
190
139
193
152
190
164
209
196
191
180
199
201
186
205
140
194
213
132
249
198
180
118
111
159
158
230
210
201
163
218
191
214
110
216
170
272
167
186
191
180
202
260
235
149
216
208
243
131
202
230
230
224
228
235
245
255
205
248
244
207
214
192
160
174
224
206
155
208
154
209
190
222
151
188
196
201
202
196
163
172
227
194
256
242
197
261
137
216
231
228
184
161
182
162
188
197
236
235
199
212
160
174
184
127
189
260
218
206
248
248
223
196
188
242
230
123
175
216
205
187
227
150
155
274
169
205
159
199
196
193
121
160
238
238
244
209
156
247
248
223
200
192
158
215
279
203
128
175
184
195
218
181
195
248
215
121
137
129
171
253
191
236
232
184
211
173
224
186
214
257
161
141
159
166
185
187
180
247
154
198
272
190
190
174
239
253
234
186
235
158
152
222
191
177
235
185
206
153
223
212
211
227
178
196
195
239
199
189
170
227
173
206
202
183
174
230
270
253
196
186
205
271
193
236
203
203
185
218
231
178
206
204
156
166
168
253
189
280
227
258
208
213
209
211
188
248
158
182
241
168
194
226
222
156
172
200
170
221
259
214
187
182
172
160
207
219
209
199
219
154
168
194
184
239
208
240
234
220
160
181
171
181
238
214
252
207
187
221
217
177
158
205
228
175
204
155
200
166
228
186
196
209
232
192
149
236
178
169
207
207
252
157
233
195
237
179
152
235
134
241
162
184
244
177
174
186
191
237
245
169
157
213
227
193
248
205
181
221
190
176
262
221
199
185
119
161
212
204
213
195
163
195
212
219
219
168
217
192
242
177
260
194
184
250
166
184
205
205
195
187
178
161
204
229
193
163
220
240
153
212
206
201
198
157
168
190
197
219
186
166
202
204
240
220
197
141
183
158
257
201
172
257
207
223
175
244
203
231
176
169
165
164
216
235
147
251
160
233
162
171
230
227
254
236
202
258
174
198
151
194
175
221
187
188
185
172
186
219
166
200
233
219
206
221
121
188
263
236
223
235
162
224
195
207
254
186
171
250
213
217
162
204
249
226
188
192
170
247
160
187
178
178
188
204
114
162
177
176
187
159
184
206
221
195
143
220
242
214
155
263
175
160
205
218
203
208
194
230
205
157
195
144
156
171
217
178
196
188
236
199
229
202
143
188
192
188
199
200
225
234
169
212
186
185
156
220
226
165
220
202
247
240
195
255
201
186
116
215
250
216
198
204
221
181
185
270
180
241
204
199
181
121
216
156
223
206
180
243
222
139
195
159
229
170
204
234
224
180
242
233
243
230
261
200
201
145
245
212
152
137
147
166
225
170
197
230
209
217
199
239
194
244
263
235
143
224
218
210
217
158
270
215
198
224
204
197
204
208
194
200
179
148
231
180
201
172
216
236
200
206
176
175
211
225
228
228
156
222
161
220
183
262
208
246
230
137
277
208
175
218
167
210
181
193
238
165
203
142
147
235
201
219
193
210
257
197
182
221
211
215
219
189
178
253
143
253
176
210
224
258
210
247
233
177
186
220
192
207
191
206
249
206
165
242
216
220
170
142
166
199
168
185
230
189
201
194
199
138
192
208
190
232
173
182
204
237
187
195
220
211
203
206
202
167
195
176
239
205
152
244
173
240
211
192
225
192
223
193
135
169
163
240
245
165
179
221
173
187
236
160
140
214
187
125
178
207
185
207
155
189
200
222
187
175
170
205
126
216
249
192
270
171
153
270
145
232
153
199
188
176
182
207
223
241
171
194
173
206
211
267
202
137
257
158
253
219
209
250
207
167
206
119
223
202
186
194
200
163
181
157
217
218
214
153
195
229
180
213
222
163
223
187
147
167
187
170
205
269
194
161
266
143
211
198
208
95
208
210
212
125
229
171
154
176
176
216
180
232
183
209
169
139
251
233
231
141
173
215
225
176
219
159
192
170
221
189
180
176
198
237
191
173
171
160
223
217
202
222
218
202
253
211
186
144
208
251
213
124
131
184
228
184
222
241
174
245
224
167
178
266
229
259
157
169
139
214
163
251
110
192
119
225
190
193
196
185
150
142
263
232
192
194
187
176
184
127
243
194
273
194
202
171
174
267
193
258
192
201
218
189
165
241
201
165
212
191
227
223
131
212
142
243
206
158
212
153
226
151
210
194
180
253
177
205
133
250
150
229
192
178
251
233
214
202
175
141
157
209
190
219
195
190
135
201
168
228
230
207
201
201
252
182
189
163
236
243
190
196
240
166
205
186
188
188
213
182
121
157
209
247
178
197
248
173
171
126
160
206
213
138
242
223
188
195
209
178
206
229
236
228
208
168
189
215
182
236
148
217
207
113
200
197
193
226
140
256
203
203
188
139
186
150
257
192
202
223
234
260
177
182
153
258
225
149
203
213
214
248
234
175
152
166
231
188
142
195
226
194
178
229
219
195
269
266
202
228
251
212
202
189
248
226
157
203
216
201
184
225
197
227
248
202
157
204
246
194
202
218
212
206
179
136
207
186
182
199
114
239
189
180
225
189
206
136
226
210
233
175
185
194
206
205
232
212
127
162
203
241
216
228
217
260
235
203
152
213
194
268
166
192
189
228
210
160
212
203
185
182
209
219
172
214
215
261
236
204
257
223
217
194
189
171
168
197
217
242
81
164
148
225
189
196
161
171
177
144
188
191
230
235
181
191
181
249
208
268
188
113
210
195
217
211
193
168
200
165
248
222
234
218
205
174
214
181
231
197
159
209
169
172
220
203
213
148
135
206
164
209
176
240
201
221
134
237
186
219
222
219
160
191
171
207
172
213
205
191
178
205
191
234
156
195
237
213
187
185
168
189
189
259
222
150
199
207
258
212
217
177
177
199
237
181
207
196
162
213
219
252
218
232
122
255
190
174
184
231
242
231
207
277
216
198
198
179
185
174
218
152
212
196
211
299
181
220
169
196
175
168
169
155
192
214
191
169
171
198
135
224
237
182
201
175
196
235
221
144
239
267
204
198
228
262
238
208
218
201
219
154
202
171
205
157
239
225
157
166
175
220
237
213
217
237
212
176
204
229
189
241
191
251
188
167
158
194
213
228
246
182
202
191
209
250
199
172
189
202
189
201
248
182
169
223
169
116
185
201
252
176
194
199
159
247
238
155
184
190
226
220
203
190
148
214
211
130
220
218
155
235
187
267
220
139
192
193
218
196
191
184
177
189
189
191
262
223
253
252
171
220
185
205
219
183
236
150
167
239
260
139
224
240
209
206
206
224
191
125
239
238
272
214
191
188
204
218
234
259
174
162
218
205
204
205
185
212
154
249
218
234
162
145
159
216
164
218
197
251
219
188
236
212
213
165
261
169
216
196
195
209
176
238
212
187
235
189
181
143
165
179
180
233
199
221
225
254
271
195
257
217
192
216
178
181
211
176
171
166
206
171
178
271
193
216
281
212
182
201
253
124
203
145
221
127
202
213
242
133
223
197
168
221
197
201
222
187
187
201
185
188
177
188
224
221
215
147
235
244
193
165
192
232
238
252
220
183
182
169
163
163
171
241
134
192
104
154
216
203
194
171
232
181
219
173
158
254
219
222
218
232
202
189
239
201
172
256
169
256
268
219
140
215
169
154
226
213
174
128
198
192
205
184
242
192
172
235
188
206
200
202
237
201
267
139
250
150
226
188
242
224
179
220
232
180
236
149
210
205
200
231
188
271
214
171
207
247
190
183
217
180
216
195
222
199
274
190
216
117
236
232
234
176
149
226
165
266
234
207
158
181
159
237
196
178
172
269
191
209
215
252
252
181
213
154
160
226
183
190
238
165
222
204
251
171
213
183
173
178
150
220
215
252
177
201
198
175
248
208
206
160
172
231
219
245
219
179
157
245
254
265
241
164
238
190
249
236
208
162
159
203
197
186
163
196
205
201
224
151
210
181
213
200
197
201
215
175
151
206
168
176
198
221
202
213
208
141
183
212
195
195
155
148
208
209
216
166
157
176
165
250
149
211
258
244
228
199
232
162
241
267
230
215
269
160
217
175
195
189
134
143
244
173
242
224
242
224
175
138
255
216
176
241
188
172
171
174
235
86
204
182
207
200
226
223
218
236
154
208
182
210
192
216
212
244
164
148
182
173
185
177
169
165
193
158
224
199
254
214
186
181
189
200
168
231
184
215
170
193
194
234
248
158
194
137
207
235
195
164
185
237
215
265
244
223
165
216
208
192
188
156
214
207
208
251
239
188
228
167
172
199
222
185
110
183
228
201
186
215
187
280
171
232
205
176
169
201
188
137
118
186
222
124
206
258
251
191
179
209
205
180
156
178
182
210
171
159
204
158
253
151
163
181
185
244
194
202
185
148
216
170
164
222
241
203
183
260
152
266
191
136
185
244
145
241
176
166
206
229
194
196
202
225
191
167
194
104
191
132
206
186
156
197
229
174
187
266
173
241
221
186
218
181
261
244
197
207
200
160
203
183
195
145
226
212
178
187
250
168
258
206
216
210
182
244
237
189
186
131
173
203
199
159
141
188
248
117
225
241
263
235
171
247
218
215
246
232
210
203
142
114
231
217
114
255
197
217
188
260
156
175
241
180
210
218
195
237
239
163
216
253
161
161
194
172
203
233
190
170
220
190
173
194
184
184
245
196
170
128
233
234
252
210
224
235
248
223
216
202
184
176
159
184
231
182
152
213
174
247
193
207
173
191
216
185
237
170
193
192
244
232
187
166
252
191
220
192
213
202
198
181
228
181
227
214
215
235
160
244
251
221
239
186
176
191
199
186
184
222
201
188
153
228
166
240
181
179
205
215
157
206
149
212
204
267
141
251
187
188
196
196
217
217
201
214
189
183
135
182
216
163
241
221
210
214
167
216
168
195
174
216
159
188
266
174
135
195
207
175
155
196
131
134
153
241
196
157
251
190
184
236
234
180
225
170
204
163
203
161
210
233
200
155
166
192
213
189
203
194
216
173
224
209
186
205
168
163
108
199
226
192
186
213
180
204
201
154
259
210
261
207
244
164
205
166
182
185
223
193
202
155
133
194
204
166
272
176
160
168
183
194
173
277
105
219
195
195
174
151
219
106
186
178
194
153
216
209
207
125
214
145
234
206
214
156
197
153
193
233
193
96
172
130
194
140
179
178
168
193
233
146
192
227
167
210
193
202
192
200
191
216
200
213
137
164
209
231
196
233
191
277
244
143
220
234
203
208
234
233
217
246
194
203
241
191
221
191
234
197
180
243
237
200
220
249
232
159
172
169
232
216
213
214
168
194
229
263
74
180
247
248
195
261
190
141
206
158
206
171
214
203
183
199
185
218
227
236
214
73
225
213
235
194
249
189
229
255
166
188
140
235
229
269
192
134
139
114
261
213
203
202
173
172
217
170
222
208
196
202
161
127
181
210
184
233
222
171
212
150
205
183
200
182
168
201
215
182
202
185
230
205
210
181
210
200
197
135
241
196
159
212
246
237
193
144
186
245
167
184
220
149
188
145
236
215
201
183
179
172
161
217
166
197
179
173
232
234
160
167
242
185
87
182
190
209
247
160
187
228
216
161
182
213
215
149
193
204
156
256
233
215
205
199
200
135
224
220
219
246
222
201
263
228
213
171
241
205
164
254
206
238
210
250
214
232
214
232
188
168
224
231
233
198
233
243
234
123
192
241
221
241
219
197
181
241
256
149
198
170
222
138
178
194
212
224
241
184
220
233
218
130
161
216
192
202
231
213
180
221
188
214
196
243
219
204
171
273
190
251
177
196
238
210
217
204
251
145
210
223
218
217
218
183
201
128
232
213
241
211
158
249
194
251
235
211
161
134
158
204
149
216
173
160
185
209
212
215
175
207
195
228
169
219
168
204
220
172
143
244
195
156
198
163
172
243
151
234
232
157
199
188
207
258
187
189
199
218
164
191
212
188
94
198
224
220
178
145
222
214
223
171
200
219
179
187
175
204
205
241
175
173
207
191
205
257
170
248
169
202
143
204
173
214
203
182
232
227
188
195
171
130
159
234
230
226
214
195
215
200
213
199
227
167
171
161
205
211
246
146
196
221
218
181
187
229
188
214
202
202
174
155
252
217
193
223
210
237
172
241
203
206
212
193
212
191
151
283
199
148
200
194
258
250
229
219
150
221
167
230
181
157
217
188
140
161
190
178
182
206
157
133
215
184
201
222
200
107
113
138
266
193
230
217
204
218
242
163
204
257
207
212
238
170
250
211
183
186
234
216
224
230
235
185
199
196
224
211
219
247
217
213
147
196
170
199
131
217
180
201
177
213
202
218
226
195
187
239
172
168
249
221
142
168
184
187
151
196
135
217
195
246
209
189
209
228
244
195
143
187
174
220
224
210
217
218
220
177
197
210
194
162
194
225
217
156
168
198
248
240
184
115
220
239
206
224
184
200
247
166
154
200
161
192
209
208
209
226
203
202
186
235
243
231
198
175
195
164
225
196
216
204
216
255
252
291
157
198
220
167
185
253
178
190
176
199
174
143
213
256
195
219
230
171
146
133
158
266
187
179
254
225
239
219
164
246
212
152
226
216
225
185
241
181
206
213
219
234
264
241
185
235
194
177
276
199
184
179
196
177
204
139
218
199
253
230
209
186
144
178
210
206
184
201
206
251
127
137
143
177
205
243
223
220
216
170
237
221
186
207
238
215
165
163
195
231
191
199
157
225
176
219
199
198
218
212
204
179
226
229
240
138
185
169
165
237
87
184
186
216
201
163
244
252
200
151
187
252
155
199
184
164
236
205
216
224
189
177
209
177
244
165
152
206
211
228
237
224
234
179
181
193
195
187
222
195
228
156
167
195
134
172
182
282
176
179
205
233
202
216
212
191
203
200
211
169
217
225
179
206
203
140
231
207
253
184
198
240
225
192
193
139
186
237
254
182
201
233
231
190
238
235
206
215
212
176
219
256
130
185
215
212
197
239
248
215
167
191
175
160
109
223
219
215
233
163
214
196
152
204
171
222
245
228
199
184
143
170
244
226
198
221
184
181
234
262
185
216
253
148
162
227
163
209
175
165
178
173
151
153
184
171
187
205
172
181
159
149
187
143
229
219
169
222
264
182
222
250
194
170
254
212
174
110
247
229
222
229
195
199
156
222
249
169
172
188
237
260
218
252
201
186
163
200
184
215
211
196
182
223
173
208
185
200
223
178
219
237
236
176
156
182
167
248
203
182
136
219
221
196
223
158
206
189
163
181
146
200
223
162
206
224
176
169
225
218
243
198
192
195
171
201
171
163
184
200
240
129
269
190
275
185
249
242
166
208
199
213
188
220
206
225
170
165
243
212
148
243
129
228
177
157
234
267
221
235
197
163
228
198
225
186
177
186
141
186
168
237
172
153
134
186
190
183
175
215
181
179
220
187
136
267
198
264
215
243
187
166
192
175
205
210
173
186
174
173
190
237
183
205
197
217
193
243
166
195
189
195
222
190
217
198
211
236
262
156
147
160
162
195
170
216
207
273
174
194
192
198
133
223
167
187
195
233
232
206
193
181
213
225
237
241
227
233
191
217
145
174
184
159
187
241
228
178
192
118
251
181
198
217
221
238
274
248
202
205
263
210
168
223
121
258
212
202
191
186
203
229
199
237
211
212
188
170
192
167
188
177
169
202
217
263
229
213
200
166
170
220
119
266
211
179
199
267
203
251
137
194
242
164
226
154
197
142
184
256
172
182
201
220
240
187
273
222
197
195
210
189
196
258
235
210
158
243
179
180
162
126
192
160
161
215
183
156
209
213
247
215
251
261
192
177
190
148
230
237
209
258
227
212
276
174
206
204
212
227
207
175
184
230
165
179
198
216
186
202
204
186
206
213
236
212
153
197
183
220
247
221
215
205
168
181
163
228
204
237
229
213
273
162
169
156
183
157
210
170
225
185
222
186
171
189
268
208
222
183
135
156
183
169
225
202
219
197
298
173
160
185
161
161
153
150
184
208
163
164
194
247
204
173
205
201
168
197
221
233
208
138
238
204
197
211
249
181
215
169
254
222
171
259
239
189
234
116
193
239
194
160
205
191
180
221
209
173
171
195
222
126
213
215
222
213
212
258
167
206
253
187
234
162
244
240
271
136
154
216
229
234
228
242
202
199
204
200
182
241
215
203
179
175
193
238
202
188
243
168
161
174
159
171
228
223
212
232
230
232
146
170
164
217
221
203
227
191
225
182
188
213
158
242
178
232
135
184
211
201
184
207
256
265
152
196
204
224
218
176
143
211
215
218
165
192
221
149
200
199
245
120
206
189
238
187
205
139
213
153
276
222
167
217
196
163
208
216
221
173
163
162
193
209
207
211
217
255
249
177
221
208
178
218
246
215
153
233
193
238
180
257
174
243
239
239
241
172
213
162
163
216
224
247
271
170
229
213
237
215
212
205
184
180
236
238
179
176
187
128
168
217
162
211
204
234
207
138
141
250
206
150
165
187
129
244
201
192
174
257
209
249
192
237
197
216
184
218
153
193
155
240
184
202
207
230
193
233
200
243
144
253
199
154
252
215
205
223
216
216
170
240
268
190
236
239
213
191
220
218
228
133
207
200
149
189
215
207
208
246
260
189
182
204
219
234
172
137
197
232
210
190
243
192
229
143
236
147
149
197
205
138
197
258
197
218
158
196
182
258
268
161
263
239
181
167
254
224
177
189
189
222
236
236
159
164
207
220
184
212
184
226
215
246
202
185
277
233
230
177
181
229
269
174
173
268
198
155
242
128
182
237
161
179
292
267
206
219
134
179
211
200
241
236
208
132
193
197
245
190
152
223
226
276
230
215
151
229
273
187
215
219
259
224
237
252
190
192
130
172
155
234
219
199
190
228
238
172
267
142
266
252
189
214
237
239
243
158
135
219
212
174
207
194
217
189
155
220
195
163
142
272
183
244
118
284
193
182
162
203
225
187
179
223
199
152
219
241
174
234
156
191
239
206
166
198
220
216
213
206
185
224
174
158
180
151
195
190
258
141
264
135
184
255
188
211
257
195
177
235
218
206
234
212
170
212
172
201
203
148
235
158
240
208
194
226
251
197
213
215
184
176
157
241
158
232
158
154
151
183
179
215
118
241
199
145
169
203
172
203
163
154
244
203
230
262
244
202
193
180
199
216
197
197
192
194
144
152
226
154
217
174
194
149
192
241
128
226
221
242
207
163
226
149
148
229
199
128
207
226
261
247
193
208
266
148
218
208
152
162
191
161
199
142
260
274
178
216
164
189
184
208
171
158
213
151
203
161
187
290
226
161
188
203
164
191
212
261
263
151
232
221
178
190
253
207
202
194
165
164
214
227
236
221
203
212
207
258
151
159
219
152
241
255
151
211
218
166
225
154
141
190
244
206
190
236
218
240
209
141
190
258
239
217
186
226
238
191
169
206
224
160
209
185
156
198
176
188
218
114
215
200
223
212
226
235
149
193
262
176
203
180
167
166
226
185
230
241
209
194
220
179
207
191
178
202
265
197
224
215
195
198
173
183
172
216
163
170
172
240
183
222
273
219
262
206
214
201
175
294
125
219
160
207
189
210
197
160
227
171
153
190
231
211
185
180
227
150
191
185
198
200
212
216
238
212
213
206
182
144
196
208
219
146
185
154
238
191
103
200
197
216
211
239
212
172
184
171
178
171
201
190
171
222
169
215
214
191
198
216
242
245
219
231
199
236
187
197
229
161
184
155
213
233
163
209
201
202
185
158
233
184
171
187
211
183
215
228
151
211
148
190
220
192
158
246
200
178
180
181
185
164
197
188
213
246
167
144
240
128
205
147
231
196
251
202
110
137
177
178
207
211
244
211
236
193
162
213
232
261
261
207
197
203
188
263
148
192
193
147
155
195
201
217
148
233
162
173
182
245
264
221
195
165
152
192
233
175
174
250
221
155
188
174
215
189
252
184
206
206
210
187
195
190
188
180
175
141
190
230
115
183
234
221
188
216
203
231
198
263
236
209
154
183
226
239
181
154
177
225
231
259
239
137
170
146
205
169
233
173
275
160
180
166
213
191
225
177
241
204
203
197
200
252
153
204
172
229
219
223
180
190
170
182
193
123
154
225
237
226
119
201
193
231
226
147
232
210
183
172
214
146
259
218
204
202
127
178
237
176
161
213
169
238
171
200
181
183
260
258
224
212
206
231
196
274
245
214
177
180
161
176
218
157
163
199
236
205
262
192
170
194
202
182
201
212
216
151
124
200
158
165
267
244
217
265
232
265
216
195
219
203
180
235
97
251
191
223
197
260
218
224
236
165
223
213
236
255
207
213
146
209
246
216
216
158
149
203
207
242
168
209
225
174
210
198
117
201
211
212
225
237
228
212
167
183
174
197
201
212
188
163
187
199
217
224
249
225
197
213
141
241
139
191
266
195
215
206
174
200
147
256
212
187
195
207
216
128
212
202
234
168
256
205
212
230
166
194
190
230
233
180
234
161
208
193
223
228
198
156
186
217
214
276
201
149
183
223
109
221
231
167
144
195
227
176
194
170
240
227
159
274
187
236
233
218
177
173
230
205
150
188
194
200
204
197
185
240
151
163
274
215
194
173
161
154
195
199
262
243
216
106
140
227
171
222
195
233
140
243
248
215
226
140
194
195
138
162
179
232
209
172
168
236
232
225
202
175
245
208
230
153
177
185
235
183
120
183
180
235
202
207
201
199
210
189
174
208
176
117
197
190
201
138
170
198
161
184
191
289
226
171
215
188
242
247
153
228
216
256
216
230
202
204
166
208
153
186
224
214
172
204
189
172
186
182
112
166
197
198
230
224
225
217
210
237
197
235
188
246
188
281
212
210
142
191
211
87
213
166
242
219
158
268
186
215
187
174
226
202
284
230
182
196
144
220
247
175
195
173
233
237
178
125
203
192
214
237
278
243
196
182
189
178
235
168
179
166
223
205
177
255
228
242
167
238
227
144
177
156
192
201
221
167
232
181
210
202
179
181
176
182
210
131
185
198
200
223
229
119
220
211
181
185
212
200
171
173
244
204
194
207
225
204
155
199
195
229
210
232
79
210
271
230
178
187
245
229
213
214
179
181
220
187
206
246
217
232
273
200
211
220
182
225
200
241
248
165
190
197
191
195
207
226
206
200
112
183
141
215
185
187
247
177
188
167
238
160
140
154
174
178
214
198
185
180
193
256
214
200
183
204
195
224
201
251
206
208
182
242
248
216
185
244
232
182
275
196
190
227
180
146
205
154
229
188
260
211
203
204
249
204
183
190
210
157
244
177
163
237
211
190
205
186
183
235
244
218
228
188
251
159
208
236
217
159
163
214
157
220
167
206
160
212
236
189
202
172
220
179
185
221
199
232
158
174
128
198
198
206
172
220
194
182
225
175
213
253
169
188
207
212
265
155
157
221
146
163
231
122
182
212
216
253
239
186
217
180
239
238
164
223
230
193
205
175
222
198
183
212
247
239
200
205
141
219
187
180
165
205
242
163
243
258
196
207
152
182
159
165
203
205
161
153
176
270
245
193
223
215
241
196
200
273
213
164
193
223
180
195
199
158
158
183
201
224
259
286
243
192
166
214
125
180
279
176
164
182
163
227
253
175
276
186
187
266
194
213
224
182
238
185
158
214
219
155
220
121
199
191
213
221
204
264
210
218
222
230
183
152
231
199
196
148
127
206
174
178
173
159
225
246
211
207
199
207
178
228
223
160
250
202
208
186
206
228
166
181
190
141
225
187
233
187
169
229
187
184
190
238
139
152
203
199
206
176
132
199
192
160
164
216
193
209
176
168
183
200
179
215
193
198
232
251
231
271
179
201
192
215
162
189
189
169
217
193
243
164
204
195
122
141
173
250
198
187
166
125
182
172
180
176
181
228
124
192
203
231
194
154
225
229
179
215
169
202
171
248
168
230
229
188
209
209
173
181
195
203
131
249
258
148
243
175
198
160
169
204
197
210
193
190
254
214
204
163
252
225
176
209
155
169
195
218
166
217
183
197
154
227
239
153
214
242
218
234
226
217
174
180
180
229
216
202
191
262
230
134
243
223
192
255
179
191
280
190
219
150
200
160
247
179
202
229
149
227
246
175
218
213
242
159
130
255
233
277
155
227
167
192
174
157
178
245
191
244
229
210
233
180
182
150
205
177
176
194
169
177
228
243
205
260
197
213
216
172
237
231
175
266
236
201
216
199
200
240
244
153
231
203
256
185
146
202
226
237
194
232
181
222
151
218
127
196
131
256
246
185
251
214
175
241
242
194
259
237
189
217
201
209
232
187
214
221
202
178
237
209
231
151
155
219
234
153
239
157
177
173
240
150
199
185
187
205
180
232
200
175
202
247
192
176
201
244
251
140
224
205
177
121
198
195
211
183
210
218
216
229
195
182
198
157
199
221
181
221
235
212
191
222
227
157
217
180
213
226
243
241
212
214
207
202
156
170
174
212
221
248
206
189
198
206
249
194
236
174
179
278
222
174
240
155
193
199
198
231
210
154
208
245
204
238
179
237
207
208
250
174
263
177
196
203
174
217
216
148
215
246
180
208
251
213
189
146
191
148
185
147
181
212
251
185
152
179
242
232
239
148
201
185
205
240
189
225
160
194
259
178
233
265
225
256
165
187
191
224
203
230
141
235
155
232
252
242
184
171
189
224
211
132
221
214
143
202
151
207
164
202
137
197
241
218
265
186
162
182
148
232
198
203
132
169
249
196
193
142
211
157
181
245
182
174
253
266
219
180
117
265
225
237
186
221
175
202
225
167
203
216
219
167
230
201
110
210
207
168
164
189
273
237
238
231
227
167
226
168
202
144
247
251
240
194
255
240
224
135
239
261
216
133
229
212
141
176
188
195
191
170
207
183
186
219
182
180
220
211
152
196
187
153
218
152
177
212
161
159
251
118
264
194
219
196
191
185
174
231
174
195
172
185
210
185
157
203
199
170
240
208
206
226
172
232
161
223
194
142
204
254
210
188
195
201
192
210
146
227
242
266
159
179
231
250
194
251
266
202
220
212
198
206
176
214
198
217
259
189
242
223
172
149
205
175
192
133
220
198
189
170
260
198
163
147
123
221
200
225
236
194
223
183
185
174
134
254
174
261
174
147
206
124
204
177
275
236
220
187
200
239
187
229
205
224
229
203
167
215
177
199
195
194
168
181
222
213
191
154
202
221
221
148
155
211
239
201
188
259
214
247
161
187
177
193
275
188
200
186
154
198
151
209
193
153
229
229
156
200
258
157
209
220
203
191
252
174
184
181
256
225
220
143
265
163
195
298
179
177
210
193
200
197
252
221
215
185
224
235
171
249
176
257
110
224
173
215
176
176
179
241
258
241
222
168
201
197
175
194
186
165
186
204
203
219
196
182
191
178
144
275
188
191
145
223
214
205
219
192
221
194
180
160
248
118
200
213
198
202
196
157
125
190
195
161
167
200
172
207
203
145
158
188
192
196
207
216
188
156
204
250
165
242
224
231
182
224
240
192
206
227
168
202
220
152
204
177
166
196
176
223
236
155
159
249
223
225
184
173
205
174
188
184
172
210
200
151
210
218
133
256
238
154
154
135
226
208
177
213
166
141
212
212
193
215
170
228
206
226
244
232
214
132
230
175
204
221
179
177
200
255
220
241
178
216
174
183
173
208
201
192
170
172
249
151
226
196
169
232
109
195
218
174
203
173
212
174
194
231
211
257
216
193
207
220
194
228
215
221
212
220
177
106
262
221
121
173
147
169
165
172
205
127
207
243
209
211
201
276
272
185
154
192
171
203
159
186
180
171
178
206
132
210
192
193
221
171
172
237
199
193
197
265
160
200
266
149
232
175
217
157
164
223
172
210
189
163
151
196
173
211
227
161
169
141
214
188
169
179
211
188
187
260
208
251
137
192
170
169
219
243
159
236
196
195
254
145
215
171
176
240
241
205
186
266
207
206
143
205
174
175
199
225
220
189
165
173
181
223
224
232
219
231
168
247
237
276
224
205
209
211
168
199
165
221
215
209
249
181
231
206
197
184
109
237
218
159
178
205
175
226
213
213
226
188
233
205
227
187
216
186
185
239
199
218
191
207
216
156
141
200
205
147
237
216
195
200
158
145
202
172
155
230
215
201
215
175
208
212
157
224
206
217
229
184
191
156
213
230
208
174
239
159
239
233
184
213
199
273
158
155
158
186
109
164
201
183
239
214
196
167
242
187
230
192
245
202
166
204
245
227
123
223
260
213
192
188
212
165
272
144
189
210
204
206
219
238
180
207
226
194
219
164
186
222
235
132
223
230
226
184
204
205
201
192
213
138
179
175
169
191
201
225
156
187
223
120
169
212
262
182
200
224
194
222
230
274
202
177
210
219
219
252
258
257
213
225
172
184
211
154
231
190
204
179
200
208
184
169
162
224
165
232
148
199
229
186
220
208
235
195
174
222
215
171
165
166
173
173
240
261
244
242
165
158
192
180
220
132
199
229
168
178
179
255
201
187
221
222
179
245
207
231
225
224
199
232
177
181
189
190
196
194
135
185
156
231
219
184
232
214
200
234
166
192
169
196
222
216
140
198
230
175
202
237
259
223
154
210
209
264
160
208
254
236
129
260
173
218
186
166
194
193
234
160
222
169
173
198
202
210
212
257
231
221
245
228
172
184
246
237
219
236
179
130
215
201
174
242
194
216
202
158
215
201
128
206
160
165
214
160
251
195
261
219
221
226
141
174
227
215
241
175
258
197
148
205
167
187
132
202
174
287
192
269
176
158
216
234
198
229
198
208
195
144
216
187
235
218
209
255
182
141
233
206
226
198
245
245
169
236
186
169
190
187
173
249
187
198
191
189
230
151
277
212
209
222
180
139
169
229
208
188
213
241
106
235
154
159
237
195
200
186
141
129
205
231
237
236
187
235
212
236
223
134
254
254
229
242
224
222
150
108
196
209
140
209
213
179
246
171
202
150
199
206
194
198
187
136
217
229
229
155
207
164
202
201
208
170
225
140
211
159
224
223
202
261
155
185
192
233
225
210
292
210
223
232
225
217
162
216
187
225
160
201
280
218
207
219
232
211
198
165
236
205
238
208
176
226
179
231
169
209
165
218
204
184
223
206
168
190
187
174
229
177
165
175
288
216
219
155
250
284
195
239
199
220
172
187
201
168
184
189
227
146
172
152
221
241
156
242
178
174
247
244
180
227
170
203
189
209
204
161
167
176
203
200
220
226
178
239
259
206
194
215
147
199
196
200
217
147
162
228
275
161
218
234
170
206
173
238
210
210
203
228
202
190
241
203
168
164
161
112
231
169
230
165
170
155
166
250
172
168
237
161
99
208
208
206
184
145
200
258
204
197
192
267
233
258
207
212
230
228
225
235
187
147
215
253
191
221
211
211
250
176
179
207
219
181
193
158
238
201
208
157
193
207
209
239
188
189
214
213
122
183
227
234
240
207
230
178
247
169
147
195
158
113
223
137
113
216
196
189
223
206
259
160
261
215
183
138
216
223
243
236
230
250
208
196
162
159
193
155
177
259
243
237
186
195
214
176
226
179
224
203
175
230
198
211
192
196
188
235
171
202
197
168
164
181
186
198
228
202
177
211
224
178
195
234
160
274
209
149
158
227
236
234
198
176
194
171
162
217
215
174
173
218
174
226
167
253
207
205
186
189
210
171
209
261
172
171
243
198
268
200
165
224
185
203
171
170
200
195
188
192
194
233
186
226
204
206
185
127
191
222
199
212
159
224
275
205
166
151
228
194
164
250
160
211
224
206
253
198
190
245
227
174
222
202
138
200
244
191
208
207
168
202
156
202
228
202
227
177
181
174
206
124
187
179
207
152
195
206
147
196
167
195
182
177
209
209
174
194
181
211
202
228
222
241
216
247
192
174
186
177
242
138
170
208
176
184
238
184
177
166
172
174
186
210
133
222
174
190
209
231
212
179
205
228
208
270
169
223
172
248
217
239
172
165
188
176
131
200
158
221
204
196
222
234
238
229
209
168
201
200
145
187
172
174
215
139
236
183
178
205
204
203
196
153
169
175
143
171
185
156
208
206
204
180
170
212
209
218
214
209
235
174
216
126
210
247
230
192
144
198
207
195
220
161
197
214
205
213
234
180
182
253
277
225
257
201
225
192
147
232
189
225
222
200
264
220
181
198
187
209
152
158
199
131
206
224
270
263
210
202
169
159
125
194
263
167
163
288
178
170
225
192
206
248
216
233
236
163
214
181
272
192
170
185
164
224
221
165
186
204
184
219
214
212
206
255
215
182
170
269
214
183
233
226
215
192
160
176
227
151
211
188
146
147
192
246
226
139
128
217
219
219
223
196
181
170
122
170
199
197
211
212
153
244
265
189
240
249
179
266
210
271
200
182
215
228
174
227
189
264
175
143
140
230
238
211
177
195
260
187
219
168
189
218
237
179
191
229
176
169
129
182
239
214
181
173
222
224
172
153
220
239
200
179
202
237
195
247
220
195
237
235
155
187
216
188
168
175
159
150
212
201
212
229
183
176
180
214
212
137
211
160
205
206
169
230
173
221
138
244
149
208
205
190
247
196
248
115
213
164
244
227
147
182
185
197
176
129
225
167
173
246
211
221
189
218
190
185
179
210
178
191
204
196
161
289
224
211
207
195
87
177
186
190
151
225
192
238
160
220
184
158
125
269
247
192
210
182
185
242
151
165
197
202
184
175
221
221
233
156
194
215
138
116
205
190
234
176
217
201
203
149
206
163
193
190
169
192
261
164
186
119
196
200
202
177
267
132
234
211
164
176
127
175
161
231
156
195
153
125
214
207
168
205
162
271
214
182
216
202
173
147
158
217
192
191
177
176
200
219
256
201
208
257
202
171
261
195
155
187
202
198
271
179
206
157
218
144
130
215
142
191
160
245
162
207
251
232
233
200
242
251
196
169
203
190
211
158
223
169
175
232
137
170
233
193
186
192
243
215
186
170
124
228
188
252
189
217
255
171
161
188
203
165
208
164
183
214
161
146
211
207
140
199
229
174
205
180
235
199
183
194
196
231
170
209
209
196
217
257
191
227
165
174
211
240
209
195
214
184
198
176
184
175
179
192
241
220
220
204
188
207
244
214
202
208
225
198
194
200
218
245
239
118
203
234
227
206
212
232
221
204
167
230
188
153
192
188
205
227
244
208
227
188
217
265
164
165
187
239
198
232
132
184
153
219
152
154
265
206
247
230
111
195
228
206
219
263
202
187
174
159
163
215
164
223
206
226
225
164
240
221
162
265
230
242
181
176
157
180
255
215
174
214
233
163
208
236
253
228
195
175
122
200
161
239
190
134
232
124
207
205
198
200
196
220
198
129
204
163
130
218
167
207
155
214
193
219
205
261
127
219
220
215
202
284
194
180
211
166
135
191
177
144
121
156
165
200
166
232
193
245
217
177
239
201
213
195
213
188
212
215
191
173
158
209
182
206
213
147
195
233
137
218
183
254
151
180
207
230
210
217
171
181
171
226
222
225
153
213
250
197
178
212
182
196
169
202
191
216
234
192
169
163
214
204
240
195
205
127
281
131
252
179
219
107
138
216
182
152
168
223
234
148
218
235
255
236
211
186
183
184
171
165
216
175
188
224
188
203
210
225
162
174
215
186
249
221
154
175
188
216
198
287
274
177
180
118
243
190
228
215
155
236
195
195
185
199
136
195
160
228
187
255
197
154
157
214
200
195
203
152
157
191
225
261
234
234
163
218
238
149
170
217
148
208
202
199
225
215
177
202
205
232
229
236
239
209
159
196
250
219
269
212
233
193
196
225
218
163
179
239
214
138
242
214
220
182
177
207
145
249
165
179
212
151
150
228
170
193
173
240
179
210
188
175
205
211
191
241
201
130
237
164
203
221
179
181
196
220
213
239
246
241
223
184
221
213
196
185
206
189
190
192
150
173
187
214
162
221
227
175
191
214
229
175
122
208
151
250
203
192
153
184
158
215
229
245
198
164
195
149
245
211
228
210
202
217
220
241
233
218
138
255
197
236
201
158
212
308
231
162
127
205
221
218
162
207
177
228
176
174
190
166
141
142
191
202
206
237
183
148
206
191
263
217
204
187
211
179
193
242
203
145
203
132
208
218
174
187
156
221
211
204
254
159
226
218
238
189
212
154
175
174
151
181
204
162
152
200
189
193
162
217
113
180
139
245
224
228
204
197
201
189
141
199
213
191
219
255
216
156
247
225
172
128
161
188
120
242
243
193
234
176
242
206
204
198
187
168
208
219
239
151
166
192
220
185
188
213
227
223
219
221
179
156
207
173
198
230
194
143
233
297
169
201
160
168
177
268
245
243
208
214
164
214
219
192
234
228
194
202
184
238
246
245
232
213
211
190
191
128
244
211
195
200
141
244
232
185
210
207
209
218
229
188
154
206
171
209
157
247
216
232
256
182
279
192
201
222
204
225
227
250
167
217
236
220
207
203
197
176
201
172
258
223
243
180
176
155
236
182
168
157
130
175
251
178
192
281
207
193
212
240
147
162
204
203
183
242
179
214
143
179
192
201
187
121
163
182
159
158
221
219
200
241
172
196
201
201
190
204
200
242
170
228
203
192
224
157
208
240
168
133
196
247
233
193
260
202
177
109
213
225
213
174
229
157
208
215
220
167
202
228
168
219
212
236
188
224
221
217
231
246
170
220
175
176
165
193
220
209
221
183
184
204
220
199
148
226
168
196
230
201
172
220
167
250
237
191
188
221
270
218
164
202
134
157
162
202
211
163
226
167
217
195
204
195
206
200
237
144
208
201
251
202
183
195
197
156
170
227
261
249
212
246
206
185
230
162
230
231
161
178
134
171
138
184
125
180
193
186
191
197
220
105
163
208
230
205
260
176
185
212
179
256
174
163
156
170
206
250
187
236
202
237
218
214
213
224
148
205
185
213
235
178
153
235
185
218
201
217
162
197
255
203
203
205
232
246
220
222
232
172
164
165
162
222
259
245
188
242
260
204
202
201
251
178
222
172
219
235
186
199
259
264
241
114
198
174
261
236
195
209
182
201
160
194
189
155
218
250
132
241
234
254
223
233
197
235
175
213
151
196
230
229
182
197
217
207
211
214
121
195
230
252
200
239
226
176
167
201
180
164
228
239
215
211
199
191
226
192
155
252
209
162
174
273
221
151
170
222
197
171
192
204
203
246
241
113
179
131
221
200
173
199
177
148
245
213
240
215
250
204
225
225
170
198
222
215
186
240
204
170
180
165
173
221
168
203
208
180
183
203
215
266
144
194
174
187
189
175
192
248
149
236
244
195
222
157
235
201
205
244
230
211
189
147
166
241
186
194
170
255
198
182
175
212
167
137
189
206
217
150
196
187
205
170
145
157
296
189
208
174
155
192
159
191
210
225
163
218
233
190
250
194
228
193
206
206
214
239
179
146
215
206
245
171
166
210
173
234
228
196
222
221
226
206
185
138
182
198
228
245
199
199
213
185
163
223
174
217
164
245
215
209
214
157
272
224
136
212
209
212
197
244
213
228
215
230
179
209
185
177
163
229
189
229
197
191
249
233
255
215
151
163
257
226
233
119
212
212
209
156
181
185
207
184
201
175
231
189
146
222
232
208
181
82
251
221
241
144
239
151
209
209
203
150
161
189
235
264
221
171
243
179
172
206
233
155
188
173
170
232
218
224
247
212
253
197
206
200
195
163
218
232
215
183
153
232
192
191
150
213
157
198
195
190
209
212
234
225
224
206
228
190
210
180
175
182
193
199
231
187
184
199
222
194
189
182
190
185
169
184
187
256
119
191
269
238
176
248
208
229
235
192
198
173
147
168
191
217
248
158
212
142
221
218
203
115
193
174
188
148
234
201
155
182
181
251
202
154
240
194
179
172
204
239
228
213
189
253
213
198
193
172
192
235
175
236
241
182
206
229
186
169
147
137
209
192
207
217
144
175
162
233
306
168
262
169
198
247
177
208
196
174
177
184
205
151
214
235
147
242
171
238
208
205
169
221
154
252
236
160
194
227
188
211
215
159
198
182
188
215
225
200
176
149
176
167
247
150
258
263
137
219
233
241
192
196
233
193
182
209
200
150
176
176
221
227
169
230
220
154
221
236
160
234
188
185
204
186
204
195
202
229
207
218
160
268
247
201
194
198
188
207
185
173
246
210
163
253
151
203
180
196
219
203
188
259
167
100
183
208
238
230
222
221
227
201
193
160
200
265
150
252
190
218
232
205
189
200
183
175
160
127
226
169
196
224
240
210
175
168
176
182
229
209
202
238
183
205
126
153
217
215
154
197
173
274
211
262
151
131
132
150
176
246
189
218
226
202
235
270
219
217
212
223
250
221
201
241
226
180
137
172
168
207
192
164
190
141
223
167
115
282
231
148
273
209
176
192
219
217
155
230
159
141
190
146
209
186
154
164
200
188
168
248
215
224
149
248
168
142
242
257
216
173
213
215
215
221
242
211
186
227
226
192
209
246
174
205
208
135
152
192
195
139
224
236
229
204
156
170
222
251
281
243
130
203
119
171
199
193
247
201
215
169
145
216
236
202
114
259
173
119
211
149
197
206
234
216
213
166
218
196
256
149
206
212
226
194
171
199
235
182
191
244
184
188
173
148
179
184
227
165
172
176
222
150
205
185
173
204
196
241
192
212
230
205
148
184
208
207
230
141
248
223
223
169
209
171
211
273
210
249
224
167
255
152
198
191
166
176
200
256
211
198
180
213
137
242
201
212
220
221
175
203
221
141
194
189
171
225
158
176
173
193
207
213
242
240
204
165
184
229
155
200
153
203
209
209
196
191
231
209
196
217
186
164
166
138
205
229
218
224
239
198
211
217
178
163
254
202
114
251
182
226
246
185
187
272
230
220
185
156
238
234
188
219
202
177
218
222
132
155
168
194
233
156
197
144
206
162
188
223
149
249
252
195
147
145
149
187
253
178
180
148
263
226
197
195
227
212
211
125
194
181
209
230
160
239
213
227
156
256
206
194
178
217
206
215
229
224
139
207
243
246
149
247
275
250
164
254
247
227
174
228
200
230
215
188
203
203
198
199
227
234
203
195
212
222
234
173
211
192
138
190
146
164
161
187
241
217
159
232
237
237
231
194
248
239
167
198
237
200
195
132
171
219
202
174
174
210
190
173
162
185
183
191
239
211
214
125
207
150
166
199
194
136
170
142
198
247
129
130
251
164
225
189
221
242
259
260
204
145
130
211
195
193
214
241
128
197
183
199
201
229
213
150
211
189
169
172
238
175
259
153
187
107
242
208
223
226
209
208
206
241
246
277
203
244
128
167
239
202
203
181
198
196
200
191
179
163
219
190
192
225
206
204
172
205
161
245
164
148
194
263
169
242
138
244
229
164
196
177
186
235
239
209
170
254
149
176
105
223
171
198
225
180
229
243
229
230
149
190
211
249
178
189
198
198
184
161
146
208
167
136
199
236
182
198
208
166
192
196
217
218
228
151
236
194
275
218
209
188
205
140
109
220
189
197
165
209
186
234
215
209
226
234
220
234
195
197
206
250
225
194
232
205
150
200
227
221
161
230
185
183
266
209
233
202
186
251
191
178
187
182
183
241
232
213
230
176
176
211
233
180
190
191
143
218
219
188
177
238
212
202
193
244
250
243
215
237
216
278
176
171
237
186
227
245
208
262
252
205
180
208
238
156
242
218
244
260
192
235
188
185
230
218
148
205
173
189
204
227
197
224
213
191
199
245
249
163
187
265
202
159
137
181
195
179
217
182
169
180
216
220
201
198
140
179
141
193
221
204
242
224
190
224
152
238
213
172
178
214
195
190
231
196
179
163
190
176
241
251
227
199
183
203
206
197
197
223
203
184
155
160
189
186
207
155
218
222
187
255
204
219
235
149
224
211
207
185
233
210
215
266
121
240
217
198
224
181
174
201
208
261
185
136
198
199
215
246
175
217
213
199
201
221
204
199
223
190
192
172
187
149
216
145
244
196
154
251
180
211
159
201
200
203
271
193
210
197
269
159
233
210
159
154
151
200
146
208
162
205
201
159
205
140
273
232
231
185
245
121
215
236
236
220
238
240
217
195
219
177
209
208
189
222
145
209
139
180
188
233
222
144
156
179
204
207
201
175
171
228
203
210
227
271
169
227
248
221
218
148
219
173
161
230
252
194
139
213
195
184
237
192
210
183
235
243
170
232
273
234
183
200
185
269
158
139
179
193
233
198
260
222
209
266
255
193
248
133
270
194
184
195
224
228
198
205
247
199
182
180
265
229
169
253
174
203
205
250
167
200
195
155
142
192
204
89
195
260
176
185
255
219
202
183
152
238
198
207
222
193
187
220
235
208
207
244
148
225
186
243
180
267
249
219
106
192
191
237
213
238
237
178
134
185
192
237
192
186
254
234
162
195
172
197
281
245
221
177
165
199
261
188
200
265
226
157
172
178
228
155
263
178
205
159
164
181
159
230
167
159
226
135
205
224
191
150
189
218
157
248
153
170
146
231
188
223
168
240
222
190
200
201
157
251
165
157
208
175
203
201
155
225
208
239
216
203
248
233
176
172
191
196
168
221
213
247
187
236
161
163
169
207
101
203
216
209
155
160
261
177
210
227
198
225
249
293
183
209
245
185
169
261
200
142
220
157
176
244
220
135
150
246
207
218
200
162
193
188
188
226
182
205
247
209
148
179
139
195
207
156
132
231
190
163
211
250
186
167
171
200
155
206
195
174
140
97
226
245
186
150
208
162
214
189
213
181
198
240
141
184
185
209
238
179
223
204
184
249
218
219
246
153
195
246
203
136
251
138
192
159
222
195
193
215
136
104
226
181
208
223
256
275
177
148
192
152
205
226
201
253
218
183
180
178
195
223
144
219
166
222
162
254
244
191
200
269
237
225
249
178
155
215
162
187
251
185
246
166
283
208
230
175
236
173
207
193
185
214
157
166
242
200
188
211
182
214
157
180
208
209
237
220
179
219
221
166
220
180
164
158
130
201
241
188
194
192
231
178
217
240
177
229
191
202
225
148
195
208
229
227
161
218
198
231
166
181
194
265
238
222
184
159
252
227
213
213
129
171
210
127
251
231
213
197
205
201
236
233
221
210
228
196
199
251
217
194
186
220
194
150
166
200
220
213
171
137
202
208
213
216
158
200
200
137
190
167
192
193
187
185
233
177
187
162
209
224
229
221
191
176
229
234
174
197
175
250
227
218
248
195
135
181
179
152
169
132
222
232
178
217
238
212
251
205
220
234
224
240
122
235
235
164
202
216
182
162
203
124
223
208
185
177
207
208
219
152
192
241
136
192
216
224
204
204
168
206
217
194
181
209
258
163
196
231
177
236
204
174
228
176
224
285
152
174
259
239
194
180
224
176
196
183
199
167
143
142
188
156
197
210
244
197
254
196
144
219
200
235
200
113
225
228
216
266
187
221
213
179
264
186
177
190
251
151
237
174
255
182
164
188
159
225
227
132
185
214
195
183
239
283
183
203
197
212
212
194
242
190
243
167
209
172
197
214
186
186
247
214
178
223
229
240
199
245
190
176
269
190
141
207
249
177
133
241
183
216
190
145
209
195
163
266
142
164
253
149
192
233
220
208
246
234
169
225
179
179
184
196
188
190
210
247
222
190
217
210
196
96
148
189
208
218
166
209
229
183
221
132
226
149
237
172
189
223
230
227
208
180
150
213
201
219
169
234
206
236
218
148
249
188
222
189
196
195
149
189
208
175
241
228
194
213
91
175
203
173
163
241
195
205
169
263
200
230
236
213
221
233
195
186
203
187
165
195
222
263
215
171
215
231
242
182
199
182
240
263
234
213
183
193
237
212
136
189
167
185
177
221
237
233
191
128
210
217
189
187
221
225
242
199
176
224
245
196
227
144
246
178
171
175
212
230
210
223
253
154
183
224
224
184
192
177
165
179
196
241
182
165
164
170
191
207
206
197
299
222
246
207
237
278
246
177
193
256
237
159
283
247
160
197
231
215
149
156
218
203
246
216
164
224
205
210
212
190
188
165
245
213
248
181
196
200
210
220
206
200
208
172
233
214
222
186
225
168
242
192
232
209
229
246
176
172
163
160
218
231
216
182
213
241
177
227
239
248
189
173
198
167
133
213
156
166
208
210
176
205
176
222
240
232
227
221
236
154
185
183
173
164
169
221
216
195
129
181
176
201
184
117
164
175
195
119
202
182
176
165
153
203
185
232
244
209
172
197
175
210
239
221
206
191
168
241
156
179
231
200
204
250
219
161
216
213
227
221
169
198
192
271
160
178
201
208
244
131
225
192
162
200
201
189
222
246
242
252
244
212
160
165
168
232
157
202
254
181
149
178
143
267
204
153
278
223
185
170
195
231
202
193
244
147
200
223
256
237
223
119
137
242
194
160
206
144
222
187
211
250
241
254
244
158
259
231
184
230
192
226
195
223
175
119
190
222
221
173
182
266
218
211
213
207
208
188
177
218
209
212
193
240
258
169
125
200
215
254
217
173
197
194
247
254
219
250
230
186
254
227
137
187
191
186
145
180
179
108
270
235
247
142
204
178
178
192
194
236
182
224
234
232
122
222
239
206
217
229
184
138
193
264
187
183
200
164
223
245
200
180
188
209
173
194
226
211
154
160
230
147
272
221
186
160
223
163
201
200
216
228
207
234
154
215
191
159
210
165
226
239
217
163
177
206
189
201
190
180
240
224
219
256
214
218
240
190
166
249
135
214
208
236
148
275
225
192
186
251
190
294
218
158
179
259
188
161
123
212
191
230
195
253
177
152
212
100
188
195
177
174
149
200
223
219
155
210
187
197
225
236
153
210
259
234
244
216
212
218
225
166
197
158
238
203
271
222
182
224
217
242
172
199
219
193
139
208
242
170
243
142
241
227
249
203
246
198
181
193
230
244
196
183
256
206
175
178
204
224
197
223
177
234
115
242
201
246
174
141
159
169
205
191
137
221
229
212
244
134
169
248
151
203
206
157
234
230
225
198
117
203
215
168
229
159
199
186
198
145
275
162
234
209
131
172
165
224
199
235
234
221
139
179
217
246
205
225
224
250
220
185
215
272
206
184
192
249
182
227
210
167
169
183
266
192
216
199
250
270
210
205
228
183
194
181
220
221
126
190
223
180
202
180
181
155
172
213
176
207
139
172
199
226
213
143
240
256
244
171
204
231
255
218
213
241
181
170
142
166
153
197
248
219
216
172
168
241
201
222
104
161
158
176
241
264
138
207
260
212
194
157
253
248
258
250
238
196
237
250
240
245
217
170
208
193
228
152
223
128
161
209
145
208
207
188
165
195
170
210
224
172
201
222
181
238
186
146
223
204
168
273
180
204
193
154
193
178
208
239
179
180
258
205
171
200
135
166
289
247
193
164
167
219
213
212
181
173
274
180
138
204
259
175
155
225
220
232
204
215
208
179
230
187
158
180
200
156
209
254
172
180
205
148
184
252
176
234
218
222
223
152
189
170
204
211
159
167
210
206
224
188
223
243
201
230
174
160
187
140
228
166
211
188
194
229
183
204
189
165
190
235
181
193
253
198
209
214
209
216
184
171
211
176
229
211
189
150
145
170
197
176
204
189
167
244
154
202
240
185
220
120
207
219
178
221
202
178
153
202
195
194
156
185
201
164
227
233
212
232
185
153
194
134
176
275
216
235
213
220
229
224
216
243
200
206
135
159
222
245
246
236
226
212
213
208
167
267
193
188
194
217
158
201
217
125
213
213
238
173
211
205
217
238
212
197
190
204
239
167
218
215
234
230
192
192
189
194
155
215
177
176
227
222
169
162
244
124
177
140
181
233
164
254
171
265
164
297
125
171
190
218
227
181
200
181
190
219
186
126
210
179
211
206
192
183
241
229
180
199
221
114
168
190
207
200
127
167
146
208
186
227
136
143
161
146
203
200
225
215
242
189
213
243
198
239
202
231
158
216
139
213
228
160
167
215
185
242
164
189
139
190
216
151
187
221
138
184
170
186
228
285
165
230
148
216
135
223
200
183
202
135
204
208
196
191
230
199
204
165
216
226
213
203
148
171
189
209
203
175
197
251
161
161
190
200
159
196
183
268
203
188
170
224
181
138
207
122
221
187
159
123
230
199
184
164
199
276
167
191
238
255
194
155
232
170
211
217
218
215
177
205
278
231
196
115
159
231
236
196
144
168
229
230
213
228
170
198
223
179
188
231
121
214
233
189
223
180
180
170
226
219
166
247
235
220
184
194
199
233
197
181
179
252
208
135
166
244
258
177
263
181
222
219
160
217
231
212
194
180
161
173
140
203
170
171
168
198
200
140
159
219
202
191
249
203
130
119
239
221
185
197
226
157
218
171
164
149
176
156
142
248
220
173
233
180
178
204
181
270
153
167
225
182
186
194
242
155
177
187
228
171
183
235
160
203
219
149
163
258
164
181
188
203
221
217
173
191
178
225
196
236
158
186
226
146
169
209
247
196
200
233
218
193
100
173
189
193
158
199
172
153
223
160
233
288
231
161
217
219
171
240
202
211
198
186
195
232
209
163
192
230
179
188
126
172
114
247
163
173
158
206
198
229
232
225
228
146
182
214
261
208
181
255
251
240
236
203
183
186
162
190
212
140
234
234
144
219
200
173
211
233
168
187
236
206
154
178
221
203
206
223
190
237
214
207
218
253
126
233
222
241
190
173
259
217
191
227
197
164
196
238
157
212
235
266
214
215
208
181
219
215
213
165
264
161
181
252
218
259
203
195
248
178
187
208
194
208
208
256
204
182
168
210
179
171
212
181
194
177
259
192
241
251
293
191
192
242
209
213
198
238
197
209
261
200
210
232
179
227
233
192
228
182
171
222
196
138
185
253
207
194
188
254
164
151
158
186
242
224
187
150
190
229
208
132
227
259
186
192
211
244
210
218
163
220
245
214
239
208
218
249
201
180
207
216
227
157
159
146
230
266
129
150
218
194
132
177
221
232
152
191
200
209
224
196
219
258
200
167
195
231
210
188
205
191
193
205
160
203
198
236
219
227
165
147
205
203
169
230
216
201
154
207
241
211
164
115
189
159
220
197
158
180
233
177
193
224
215
224
174
149
142
259
196
195
195
214
200
144
238
241
222
234
176
205
192
168
205
220
159
209
211
229
232
162
205
186
203
187
199
214
165
171
188
163
192
150
196
189
245
229
192
186
158
205
258
193
175
192
161
184
192
211
194
138
204
111
161
158
131
237
209
217
224
236
210
154
237
270
188
179
209
260
153
190
259
203
201
165
204
196
227
112
158
186
171
218
186
170
204
211
195
201
197
246
197
118
154
238
213
234
245
242
225
194
175
210
163
180
207
175
185
195
182
200
153
231
184
108
166
213
241
195
198
205
128
165
223
155
189
268
178
181
211
143
185
210
176
216
191
206
214
236
180
156
196
225
179
253
240
160
195
194
259
207
208
183
187
176
200
200
216
170
197
252
182
201
209
178
196
180
192
204
198
234
237
209
200
255
200
197
244
183
188
200
197
191
210
199
185
187
212
227
250
225
149
187
228
202
199
213
206
187
198
197
229
230
255
251
195
213
155
162
165
210
218
180
278
191
209
165
271
190
222
127
169
217
204
137
185
236
207
179
220
249
140
176
237
224
184
243
211
123
165
213
247
222
232
167
208
225
192
248
202
214
180
210
164
176
214
225
248
216
171
150
214
181
257
260
211
223
136
158
240
211
209
186
191
242
270
163
202
203
175
178
233
230
223
196
199
217
195
234
231
208
184
181
249
201
243
182
137
232
182
222
193
233
194
200
218
217
219
227
192
196
206
190
199
176
184
210
228
275
168
152
236
192
160
213
164
251
179
214
188
215
229
170
175
197
202
137
107
244
195
252
165
254
186
165
183
242
187
228
214
207
206
188
141
232
179
243
169
179
235
168
264
269
197
183
224
219
241
189
213
143
206
220
178
185
223
231
297
218
233
193
175
187
231
189
180
220
248
203
155
172
268
272
284
193
192
194
184
217
177
164
128
190
203
215
176
240
196
241
193
196
123
208
196
187
183
210
150
239
221
203
152
228
181
149
240
198
188
232
192
212
210
146
209
229
252
193
198
261
163
209
252
200
145
203
210
213
195
157
190
259
145
219
219
217
242
199
208
221
168
228
213
144
204
197
127
221
222
172
247
194
236
221
140
180
135
180
228
186
229
201
218
186
216
164
218
245
236
204
123
173
200
173
198
240
202
209
151
139
253
237
134
211
183
179
155
169
198
179
226
229
164
147
227
154
166
256
176
216
204
173
169
197
147
205
221
167
134
209
172
232
233
230
241
226
182
199
107
207
132
215
219
225
246
178
187
208
178
132
173
167
229
161
231
196
245
176
206
258
194
202
189
223
242
238
238
198
176
191
199
202
195
183
260
234
132
201
257
174
234
245
225
198
196
195
218
243
169
134
242
176
244
230
221
168
224
200
177
192
203
155
129
237
202
215
152
198
167
191
210
193
166
195
209
191
133
233
135
234
192
239
262
193
176
193
168
167
160
201
208
195
216
177
203
211
139
223
227
218
175
225
206
173
173
188
189
210
244
194
180
173
164
236
189
234
196
173
202
249
220
193
212
257
227
174
189
218
131
197
216
230
205
224
230
197
208
202
173
190
191
164
207
184
239
234
215
242
181
194
123
215
212
214
235
211
193
185
255
203
162
190
169
212
233
147
239
219
231
193
201
111
222
202
179
223
220
160
225
170
180
192
159
257
220
160
143
201
227
198
192
135
213
185
208
212
238
110
198
246
200
169
209
214
246
150
201
234
216
211
194
208
163
234
250
207
213
231
155
213
158
158
187
226
204
205
205
244
187
255
151
188
151
202
186
215
194
130
173
248
213
258
184
145
207
129
179
120
158
179
195
264
104
85
174
152
167
213
186
235
215
218
174
216
208
220
218
208
127
189
224
231
272
180
108
171
241
156
200
159
185
172
163
225
144
220
272
260
226
194
169
162
211
196
179
169
204
212
146
250
213
199
205
206
205
203
233
168
183
147
193
183
145
262
243
187
163
204
157
238
243
240
123
168
179
181
189
188
195
247
246
184
226
186
272
231
211
215
214
195
187
216
245
231
220
242
174
99
197
203
216
194
236
161
187
187
222
218
166
202
244
215
245
182
210
176
148
236
204
254
183
186
164
272
195
198
207
239
206
202
212
179
208
61
198
197
203
146
234
198
176
194
222
182
146
212
183
195
236
195
212
210
238
232
178
258
194
215
175
214
209
201
244
181
223
224
188
133
221
208
237
97
190
152
127
226
234
205
187
179
216
209
199
203
255
188
234
216
189
120
178
184
174
193
187
214
231
240
184
190
169
229
181
233
215
208
205
214
211
203
146
187
182
214
171
192
162
194
210
206
259
184
193
215
229
139
247
142
194
194
180
149
182
172
217
219
174
206
242
206
224
231
140
206
267
191
231
195
254
224
163
211
212
262
153
213
183
210
196
210
174
236
195
145
197
227
159
215
177
159
256
257
232
196
221
204
224
208
180
203
283
99
157
204
189
180
245
132
231
216
253
211
240
284
195
201
235
166
140
185
190
228
191
249
166
202
223
192
227
246
258
134
243
168
179
178
223
243
184
169
190
247
207
163
223
180
176
231
182
203
202
209
200
157
181
239
196
231
162
204
211
198
234
257
189
180
192
192
263
257
202
212
185
150
287
156
199
196
186
171
194
206
175
173
198
183
162
218
125
196
130
262
205
237
177
235
202
238
167
221
223
267
203
233
240
230
145
174
179
196
220
185
175
238
228
225
220
155
219
172
87
232
171
198
167
223
222
184
156
206
168
238
162
164
199
199
163
182
229
139
185
221
191
182
225
161
249
212
167
226
186
202
199
181
215
163
175
166
195
238
185
214
248
216
230
267
234
203
228
163
185
198
166
206
224
230
157
153
230
190
228
254
198
176
206
203
199
226
185
175
221
197
231
208
242
206
145
236
152
195
213
215
225
229
241
233
189
159
216
243
186
161
196
198
175
184
244
138
228
192
209
202
197
213
160
238
261
158
212
205
220
240
202
215
135
177
208
136
207
209
200
198
206
176
178
197
186
173
192
233
166
240
227
173
197
223
185
213
124
142
120
222
221
213
201
166
195
252
166
204
216
188
171
182
200
185
206
196
197
212
195
189
159
164
213
254
201
260
201
199
195
264
246
168
227
185
222
235
215
151
207
198
234
220
198
163
179
205
157
215
157
232
181
260
210
137
216
191
171
163
160
168
189
252
152
224
201
242
213
233
183
196
151
164
216
141
211
184
180
193
151
210
227
207
221
184
258
227
186
150
185
148
227
204
194
228
198
161
208
164
211
175
171
182
265
243
196
190
188
229
221
165
192
221
215
165
178
231
180
171
273
197
219
234
187
211
239
154
219
218
217
178
202
176
230
212
170
160
219
242
209
205
184
217
153
215
200
215
148
239
232
219
224
202
194
167
245
237
167
125
186
190
115
139
175
241
214
227
194
218
245
157
200
189
206
239
173
185
200
213
167
247
156
223
217
262
231
211
209
228
204
244
168
195
233
256
187
191
149
199
200
155
222
121
184
224
189
150
141
149
230
232
194
260
167
188
188
225
186
204
223
238
223
264
158
225
203
201
239
197
170
202
177
245
153
181
260
210
222
181
201
218
217
238
182
250
124
216
178
207
237
186
229
220
202
160
198
152
183
202
211
206
190
278
207
184
243
197
200
183
192
203
261
169
236
191
188
184
219
180
238
172
182
214
194
226
241
251
214
207
224
208
185
207
216
209
153
194
223
197
159
216
216
220
233
119
199
203
220
183
181
186
204
160
207
212
208
131
216
241
214
247
160
147
174
129
184
177
221
202
176
199
284
184
220
176
154
128
187
160
157
268
195
225
199
253
214
125
241
180
203
188
201
200
181
208
227
215
210
226
290
198
207
195
178
202
238
222
188
176
180
201
157
231
231
199
231
189
165
150
147
212
198
203
207
209
173
187
263
172
202
247
214
176
173
186
222
221
201
183
211
205
166
258
191
220
158
223
214
225
158
254
199
171
152
159
148
158
199
149
201
244
180
182
188
179
258
195
173
142
206
142
202
210
160
214
198
212
199
245
214
184
211
167
234
263
197
194
171
139
192
207
240
171
189
252
231
195
189
167
230
216
258
226
226
221
229
119
159
179
145
172
183
188
253
163
181
141
132
177
149
121
256
112
217
144
199
151
213
243
273
166
191
187
195
261
273
174
226
197
244
229
183
184
238
210
210
238
157
242
202
202
174
193
176
173
190
160
239
203
136
165
189
167
202
256
187
208
207
170
191
170
193
213
273
206
211
247
200
162
205
191
237
186
249
183
184
217
150
210
224
184
250
164
189
206
239
174
213
211
264
221
214
241
234
209
166
211
202
104
228
184
218
233
194
220
187
243
177
221
157
186
263
205
170
211
143
207
161
171
204
223
200
177
218
121
225
167
175
222
140
246
184
210
185
231
164
140
221
156
255
208
189
185
204
218
143
178
274
138
229
179
243
252
189
194
246
190
226
159
161
193
266
82
171
197
235
97
153
214
177
188
206
247
176
229
230
97
163
255
267
178
202
238
192
257
183
156
209
202
176
179
251
230
212
211
196
230
246
145
157
182
237
261
191
260
188
217
221
158
232
231
107
160
188
147
192
156
233
106
158
199
230
271
206
194
259
223
202
258
196
184
216
150
166
162
220
164
197
192
205
201
242
243
177
154
225
149
185
182
222
150
184
207
233
176
178
225
200
188
258
253
205
214
142
218
239
201
184
244
179
188
192
206
196
273
114
200
181
228
156
206
254
165
161
213
154
216
165
241
165
186
206
197
184
184
191
219
212
167
133
107
247
264
171
183
216
149
231
227
181
223
173
163
156
157
236
204
181
232
170
249
249
139
184
207
210
190
211
135
196
169
224
272
184
238
185
200
198
128
197
198
220
189
179
222
241
146
238
207
209
177
254
220
163
183
230
200
161
151
219
131
203
172
226
176
259
174
193
167
188
155
210
266
235
233
250
201
134
181
237
243
220
174
221
230
237
205
224
166
198
260
171
211
147
115
283
149
188
207
169
235
189
197
187
157
216
201
153
151
189
235
144
249
210
212
293
224
159
183
199
221
187
203
132
178
231
190
206
296
161
193
200
141
152
228
230
177
215
201
212
165
154
192
226
226
221
238
174
222
101
214
210
246
99
266
201
183
234
217
234
246
265
222
226
185
222
188
245
182
185
247
257
220
180
203
129
243
179
141
160
204
188
178
221
170
178
213
155
133
234
204
194
141
173
226
197
162
210
172
243
224
188
215
177
163
117
236
207
148
154
204
206
247
189
188
185
210
191
165
235
262
233
203
281
182
204
240
255
232
200
201
252
198
188
171
236
249
172
149
229
220
198
285
219
228
241
221
233
171
235
195
256
135
215
169
212
230
199
201
151
234
214
135
152
218
156
200
216
212
164
199
192
297
220
221
215
233
209
205
203
205
202
198
187
113
212
193
197
152
175
177
177
175
224
186
190
218
256
227
189
160
170
224
256
200
172
140
231
134
223
168
152
148
194
221
209
183
197
166
227
189
150
214
215
119
158
185
248
188
188
201
236
233
191
135
190
221
252
172
196
205
225
149
182
186
184
140
97
170
205
207
188
201
227
170
186
176
179
199
263
186
241
222
167
186
163
209
216
174
216
209
228
168
221
172
163
205
220
223
127
154
120
187
207
249
247
292
245
160
164
252
213
164
224
165
153
255
201
210
149
215
195
215
185
173
195
165
164
154
124
158
224
156
208
166
206
179
133
190
143
219
213
152
284
228
244
215
178
206
229
212
166
169
218
217
214
191
175
209
170
150
269
167
241
169
187
176
246
145
166
200
234
167
189
203
203
200
180
247
211
228
137
187
191
229
209
174
177
141
224
217
146
243
169
204
141
224
173
238
191
185
215
224
241
191
196
165
217
200
159
175
183
209
178
197
210
259
155
172
227
144
180
213
249
216
220
245
147
157
223
210
169
221
192
169
227
164
217
168
159
122
189
140
175
169
230
162
190
183
225
130
207
187
118
171
197
231
219
144
196
247
232
235
159
228
178
246
173
145
224
189
219
164
235
223
216
168
194
245
202
249
183
228
202
143
217
216
179
150
170
197
244
137
237
244
215
173
257
194
170
134
149
122
167
197
125
183
221
159
207
186
251
193
247
224
230
233
185
148
177
192
164
207
200
178
137
246
205
217
212
227
228
159
254
178
181
197
164
190
214
202
207
206
188
175
233
251
193
234
185
220
205
202
185
251
199
183
205
194
181
190
217
106
134
276
180
216
249
216
126
172
230
155
212
207
197
246
220
231
167
243
254
175
250
245
189
219
191
238
131
205
174
194
240
188
273
184
204
154
171
240
209
176
176
162
142
240
212
228
162
228
247
161
148
212
223
164
240
133
174
242
231
205
237
222
214
150
224
211
126
198
210
214
194
261
168
169
196
198
160
177
219
152
254
177
185
261
234
183
180
137
201
201
130
257
232
209
228
201
159
175
207
223
174
184
242
252
241
192
204
178
222
212
219
214
195
185
218
213
287
142
221
199
173
186
241
174
196
232
177
156
191
184
243
214
203
189
252
154
224
234
235
192
187
191
264
198
175
233
193
198
156
198
217
192
178
216
175
195
190
231
204
177
260
221
159
202
274
189
162
150
215
163
142
172
198
206
145
206
158
205
226
196
176
243
237
273
207
168
200
231
162
233
211
218
212
227
222
212
229
255
244
214
197
207
186
229
185
145
121
246
236
197
273
201
194
149
160
150
204
121
218
220
220
194
169
274
245
187
176
158
160
237
201
177
210
243
234
240
128
225
223
274
242
208
174
223
164
206
176
189
231
186
208
202
197
166
167
173
222
206
237
162
203
241
172
198
184
255
183
206
192
238
265
175
181
220
210
232
201
238
190
235
199
237
244
177
243
188
248
176
192
209
216
278
204
246
152
174
211
168
136
186
250
170
155
234
198
166
254
233
142
226
206
132
202
149
197
192
230
214
200
192
188
171
204
189
211
156
220
186
180
190
149
230
163
199
161
166
196
171
164
263
190
142
215
249
196
92
313
194
238
211
196
166
189
258
128
270
240
220
217
246
173
170
212
197
139
180
199
232
168
158
210
252
218
205
193
202
140
187
226
213
222
176
207
184
200
173
196
162
231
147
191
186
198
218
140
163
289
247
258
184
186
241
220
161
168
172
175
180
229
227
194
133
241
215
263
225
171
221
206
158
136
225
248
256
219
167
239
196
171
229
193
163
220
162
156
164
187
174
231
137
201
200
210
165
196
208
253
244
227
221
234
179
161
202
218
114
208
198
228
202
221
200
171
199
200
250
210
181
140
218
259
155
179
217
229
238
194
239
178
169
235
183
213
151
178
161
205
227
206
175
210
206
188
199
235
207
131
230
211
227
180
178
198
199
247
170
172
200
196
168
225
270
203
142
163
165
306
251
144
192
183
144
205
199
138
187
183
183
203
210
159
146
216
204
197
226
199
170
249
138
210
146
171
170
243
183
207
177
221
179
218
199
198
222
257
189
196
202
184
181
163
217
219
208
190
202
190
189
213
257
182
143
159
171
200
185
231
186
219
196
164
204
221
107
168
191
254
199
232
154
235
216
154
179
193
220
189
221
174
161
192
161
217
234
138
123
168
191
216
203
223
194
167
191
166
204
149
182
189
151
213
273
188
200
192
206
191
185
178
186
235
201
162
159
249
239
137
261
204
197
212
189
186
181
226
175
237
220
246
160
229
151
165
260
225
217
182
204
220
176
208
222
157
212
194
248
167
240
212
175
202
255
209
218
178
182
224
193
172
171
215
245
203
217
160
243
203
191
226
189
203
236
223
224
146
170
228
227
226
212
187
292
204
205
165
211
148
175
143
200
207
205
191
204
92
193
192
181
218
229
222
224
212
244
224
272
179
219
189
187
248
182
206
202
262
191
148
219
142
161
192
248
154
136
181
210
144
164
246
239
221
180
187
207
240
146
172
192
176
195
180
186
227
203
229
200
227
208
147
191
212
164
195
210
165
187
174
240
231
223
242
178
254
165
172
207
182
155
236
190
282
195
206
234
192
242
173
220
182
145
146
222
209
205
181
227
276
199
169
205
248
210
193
218
198
221
174
239
246
212
226
184
184
194
242
192
139
258
216
224
201
166
189
236
209
257
217
203
198
179
276
171
181
224
223
186
200
187
260
212
144
180
174
157
201
242
187
146
229
221
244
233
207
193
232
243
201
215
235
149
171
242
210
213
127
209
193
225
240
176
188
194
196
173
231
115
273
188
153
197
238
212
207
200
218
207
179
229
167
170
184
225
246
188
196
268
203
220
159
194
223
206
211
166
174
180
205
166
194
183
240
257
201
150
207
216
219
185
269
187
194
265
203
264
200
163
128
188
215
219
250
132
189
180
239
277
148
236
175
195
227
214
229
180
206
155
155
182
228
191
260
216
156
146
193
224
173
218
217
173
188
196
185
203
158
180
142
220
214
204
220
152
247
129
222
185
169
157
224
205
214
225
283
177
168
229
209
117
153
223
206
245
148
178
203
132
174
170
231
238
149
163
151
231
191
208
230
209
217
224
213
218
192
209
161
163
260
208
149
179
264
275
258
161
236
211
108
208
265
216
143
232
218
195
242
183
243
232
235
244
159
179
147
163
228
182
201
188
215
235
144
152
175
228
161
178
190
183
269
211
145
196
177
220
134
216
249
255
244
233
202
191
172
176
205
259
194
219
199
169
165
242
201
181
213
200
209
230
169
252
217
227
261
162
187
228
172
269
246
148
223
174
165
223
206
186
193
210
173
193
230
223
219
142
201
239
187
213
249
255
204
156
226
173
142
215
209
209
200
243
145
238
227
235
188
176
138
206
235
240
256
225
209
202
169
222
206
198
211
180
187
229
226
215
228
153
164
178
155
190
204
225
217
176
167
245
256
213
227
181
183
187
171
186
213
157
194
172
190
235
239
232
247
205
130
197
193
202
275
202
232
155
246
218
217
254
192
208
269
190
179
197
182
236
186
212
196
220
257
279
199
159
236
174
216
130
183
261
163
186
221
177
268
226
195
204
224
216
244
207
200
181
151
179
205
254
225
164
205
215
240
229
168
206
194
228
157
219
174
209
197
152
203
247
272
174
194
222
190
158
212
157
153
197
156
222
226
195
167
234
197
260
193
142
197
194
195
164
203
131
221
168
201
242
199
142
175
194
199
157
184
225
204
161
162
151
218
223
140
216
192
180
134
202
213
217
149
219
156
221
185
198
150
218
165
197
190
167
223
179
220
228
224
169
174
248
202
167
162
177
184
222
205
194
179
227
195
219
176
231
231
166
195
185
221
246
223
237
208
198
156
180
186
227
193
195
238
202
165
277
240
176
189
157
192
194
222
111
201
193
208
210
215
133
189
121
176
287
235
208
204
227
234
177
229
197
254
217
195
214
170
205
212
240
213
145
201
262
202
236
212
144
199
152
148
195
199
225
157
248
239
171
206
205
154
171
168
133
175
156
216
158
239
237
252
217
173
225
225
195
187
137
217
252
215
253
187
177
175
247
156
174
191
242
208
207
176
211
165
159
218
193
221
197
211
188
112
136
215
191
153
182
232
182
166
231
183
200
182
137
263
216
213
199
247
176
135
167
187
228
158
196
204
238
205
237
195
201
231
161
200
198
212
231
244
220
247
208
230
250
144
177
192
184
191
172
178
206
190
225
234
137
186
181
203
143
252
204
198
200
187
214
207
204
214
183
233
227
268
242
165
215
200
148
213
159
161
185
220
203
204
214
174
180
229
241
180
190
174
140
142
225
251
189
204
195
185
214
196
173
214
162
213
204
216
212
175
163
262
218
224
203
216
164
197
240
207
149
136
265
194
203
160
236
219
226
202
175
147
225
181
143
164
173
165
230
214
245
232
158
114
175
222
167
218
188
201
184
185
263
185
209
188
213
189
208
245
269
191
176
204
182
163
226
201
182
153
234
231
185
191
252
205
261
200
161
191
237
146
191
182
170
230
182
211
212
201
181
213
207
247
205
234
187
156
172
202
204
136
169
186
189
258
248
264
188
192
204
198
229
169
220
203
174
196
190
222
244
218
247
220
211
206
204
231
157
179
210
173
177
182
234
212
146
222
217
270
228
200
154
169
137
180
169
255
210
183
245
186
219
183
199
183
204
206
192
161
147
145
161
230
220
184
234
255
274
223
245
170
228
215
216
183
227
190
196
231
253
269
244
179
176
166
211
225
204
197
177
158
146
191
235
186
249
197
148
240
214
168
196
229
251
172
222
202
197
186
276
198
184
202
167
251
220
276
181
211
201
268
199
218
252
201
154
249
199
190
234
184
188
201
160
179
204
205
222
213
191
195
218
239
197
144
243
214
226
244
170
220
195
254
218
171
167
197
198
160
213
143
197
163
241
192
259
159
231
225
263
229
178
184
231
195
179
144
151
173
199
199
200
202
221
219
198
179
195
165
201
229
154
165
247
172
239
195
195
202
210
207
177
144
154
199
245
210
169
180
211
151
235
197
195
185
192
132
203
222
206
203
155
210
195
209
246
208
177
209
198
227
167
236
207
216
234
188
151
235
157
248
181
179
220
205
228
238
120
225
207
176
178
230
242
188
209
202
156
268
167
252
211
204
265
199
159
222
240
206
163
168
170
172
197
220
223
208
159
239
228
136
126
223
258
186
227
245
226
262
209
189
178
123
233
202
202
244
183
159
175
207
122
228
165
179
194
202
244
199
157
235
188
171
206
156
246
159
209
238
185
250
171
219
219
192
210
150
181
271
227
181
224
201
244
214
181
196
197
254
194
223
218
185
149
261
211
184
187
174
187
215
203
143
134
221
196
186
261
248
202
208
195
251
240
287
224
211
203
236
194
227
255
176
190
209
129
200
217
218
169
231
157
228
189
195
213
155
203
257
143
182
182
205
230
150
206
231
184
180
192
209
176
228
203
181
263
244
159
193
228
232
139
251
179
182
272
220
144
262
217
236
159
249
163
188
156
200
201
194
211
184
217
168
167
221
171
166
221
154
157
195
185
196
226
147
152
266
188
267
186
231
230
244
203
169
199
190
170
217
211
200
230
197
161
171
191
244
189
221
161
221
180
216
202
226
185
200
214
149
175
159
199
261
231
179
159
127
232
158
246
177
260
214
167
222
187
255
182
219
201
172
231
162
204
238
177
160
189
195
236
217
225
144
208
140
228
230
189
237
189
142
218
221
260
205
212
217
191
153
208
211
144
215
183
242
191
147
242
187
189
217
174
175
230
115
185
237
218
151
229
188
179
157
174
226
197
165
143
209
167
149
262
214
191
167
214
139
177
239
154
244
202
223
231
191
136
205
194
151
222
213
169
230
172
173
206
224
232
200
205
170
180
219
211
183
165
249
113
234
240
248
177
220
205
143
235
147
202
246
178
201
256
233
197
179
235
192
226
249
184
208
199
219
214
206
178
193
208
226
175
215
190
205
221
153
214
209
215
213
212
152
246
249
185
196
215
187
176
150
188
181
225
188
153
192
175
234
236
209
189
258
213
174
232
276
255
182
132
151
109
170
239
121
204
236
163
183
120
164
211
221
168
184
162
275
254
272
203
191
241
221
206
220
229
154
198
245
174
221
191
197
227
239
244
197
183
179
215
217
156
148
135
200
195
203
214
269
193
161
254
183
200
187
242
221
219
239
184
233
180
201
236
220
220
250
179
224
191
175
181
214
184
240
145
150
218
233
180
118
230
222
191
235
201
197
126
230
184
175
237
194
155
213
179
226
89
188
205
257
224
188
225
202
159
199
149
145
200
238
245
207
207
220
187
222
213
217
204
178
204
205
191
258
208
177
195
158
138
187
238
241
246
192
159
223
164
187
183
243
199
231
140
171
192
227
148
131
201
297
202
217
169
185
199
261
157
229
162
221
208
147
176
193
173
166
242
184
201
197
115
216
200
154
153
196
196
158
174
234
215
214
228
203
160
188
234
202
188
239
266
175
218
147
264
180
162
240
212
163
230
251
191
242
233
233
205
244
186
152
191
175
254
230
228
170
203
228
186
211
196
172
203
191
233
180
227
229
147
246
274
188
234
213
169
242
185
223
159
223
166
179
177
161
199
121
173
177
144
184
210
184
215
182
219
190
214
199
204
206
206
170
200
166
133
159
225
214
127
215
200
202
243
235
227
207
168
166
158
210
228
222
186
283
196
199
172
255
203
242
81
233
246
232
244
231
244
182
224
179
133
207
209
179
244
244
172
204
198
184
196
202
167
205
171
193
197
168
186
179
219
231
230
215
172
246
237
192
186
179
218
260
196
185
157
163
175
199
172
200
161
157
181
215
171
192
254
204
271
203
167
165
186
220
203
268
265
190
217
240
147
215
170
215
198
204
196
235
205
209
196
136
182
172
166
175
180
200
182
159
248
209
223
168
134
196
249
196
235
169
206
214
220
238
239
225
195
174
222
239
165
272
162
186
199
155
251
205
178
157
171
220
261
229
172
217
175
202
182
144
179
237
223
228
172
210
222
238
173
206
147
228
149
225
202
201
200
205
192
229
168
238
209
237
208
205
175
196
219
219
222
265
180
200
161
160
161
194
156
206
200
167
210
206
219
172
242
209
196
197
176
128
213
161
165
193
222
227
155
233
203
165
200
203
130
132
165
205
155
154
213
192
194
245
255
241
150
237
248
160
211
199
251
246
105
177
182
223
200
135
199
120
222
236
207
132
210
258
203
240
242
190
235
224
187
158
212
211
223
190
205
112
278
191
188
209
259
209
196
136
186
177
239
166
150
168
226
172
216
223
159
251
230
168
188
201
188
171
195
189
176
150
225
214
231
229
189
203
204
184
184
234
209
233
173
178
173
158
155
195
111
242
193
185
197
113
181
206
203
184
241
244
266
222
176
124
175
191
252
166
230
210
220
166
233
266
249
254
205
226
236
241
191
191
213
197
199
186
161
205
207
225
186
166
250
161
224
207
218
202
135
212
162
174
150
164
190
214
195
205
204
220
191
188
236
179
184
225
183
223
233
229
163
228
177
174
145
188
208
175
130
176
184
164
150
234
114
155
210
173
194
230
151
194
267
204
211
164
207
154
218
173
174
153
198
173
231
210
192
172
197
241
248
181
189
219
198
223
219
230
220
230
250
158
123
209
187
157
223
222
248
171
227
213
209
176
192
218
205
254
139
220
180
186
209
203
177
195
229
213
250
234
209
177
229
200
207
215
197
212
194
200
256
220
170
178
152
189
238
215
241
166
171
224
164
199
195
197
201
212
175
225
164
182
250
204
221
187
207
232
241
241
160
170
217
191
159
197
230
204
201
104
180
176
260
167
197
188
226
244
217
206
235
176
249
243
165
205
216
251
154
191
130
209
180
188
178
209
185
205
212
215
250
256
214
213
236
273
159
198
161
200
176
109
254
220
195
214
231
192
225
222
238
249
191
177
180
191
204
294
259
212
217
242
213
164
206
211
209
251
187
218
180
185
178
178
262
214
146
225
137
145
165
253
176
199
185
249
148
194
248
182
232
205
148
235
225
204
178
159
214
214
168
254
194
246
203
242
204
182
254
218
213
228
276
201
224
219
178
202
233
212
216
183
173
217
234
199
198
167
209
170
251
279
165
226
194
140
235
202
229
239
197
176
226
264
174
184
200
203
156
250
257
203
176
226
183
237
170
218
176
175
151
209
166
290
163
226
230
161
157
252
244
209
232
229
201
179
160
204
196
192
193
158
200
192
185
207
197
241
237
251
192
201
200
214
259
250
251
202
191
117
226
220
175
224
188
184
226
243
160
236
221
291
231
220
199
245
219
205
177
193
143
158
237
68
213
212
241
212
189
211
237
223
184
183
169
149
269
204
168
256
179
198
174
145
197
140
203
188
231
226
149
228
187
215
249
208
218
216
163
208
190
171
198
193
155
224
241
169
259
191
204
153
211
218
235
135
220
257
202
166
177
149
232
231
149
196
242
217
206
190
204
171
244
181
156
198
165
196
193
184
249
221
189
183
228
197
225
240
118
183
246
206
207
197
197
196
148
177
224
249
203
229
201
194
189
220
170
221
297
166
250
220
190
138
221
182
212
257
271
190
192
240
236
190
226
222
258
257
171
188
166
160
201
205
148
190
213
215
237
193
171
207
254
252
212
200
200
226
238
224
212
207
214
251
195
175
153
238
245
253
209
221
283
169
187
257
176
159
166
194
172
240
165
228
196
171
212
157
188
196
207
213
225
204
234
217
209
193
234
174
137
186
224
187
209
240
200
211
176
209
197
232
163
161
181
232
208
262
213
184
144
209
225
230
235
213
145
171
161
247
219
220
165
195
190
206
167
209
196
172
152
236
231
217
228
185
164
128
186
224
205
288
200
152
164
215
212
197
202
134
197
167
192
210
240
190
128
218
169
210
176
157
166
177
176
226
189
239
196
177
207
231
202
193
220
145
183
244
140
186
173
152
231
255
190
148
143
183
155
178
232
251
158
206
247
130
188
156
201
193
176
234
203
184
181
165
220
173
216
201
174
255
222
172
197
223
182
140
192
204
235
171
181
165
223
251
164
215
260
198
172
132
261
188
173
214
237
169
220
214
206
175
231
219
229
220
125
186
162
197
201
169
232
267
254
243
225
206
215
221
155
207
226
239
178
202
219
193
198
181
214
182
237
221
215
219
209
218
221
173
247
297
208
197
173
243
188
180
202
162
178
166
242
204
202
199
169
227
182
254
167
207
158
177
184
175
221
167
197
153
189
241
155
176
200
251
228
185
155
235
237
129
172
227
162
161
220
203
186
220
185
199
197
243
203
163
186
214
244
246
199
222
154
242
242
183
272
227
153
212
213
250
156
194
237
188
238
210
233
206
193
175
127
257
230
171
200
217
183
164
206
173
237
181
173
223
198
203
229
205
224
153
153
189
151
120
147
185
184
260
210
214
140
228
175
198
187
156
226
204
142
266
223
222
192
229
166
129
274
167
216
181
223
207
170
173
239
203
234
216
244
198
206
208
193
192
157
192
182
93
256
172
197
201
269
221
235
245
223
143
262
182
195
245
204
207
179
189
231
189
224
242
253
223
148
160
209
234
180
177
153
229
222
177
212
181
183
275
220
213
261
226
254
184
192
121
244
200
236
253
188
200
177
173
129
197
185
168
242
202
230
165
171
204
180
241
232
179
204
115
202
161
198
194
164
196
222
180
228
239
192
230
153
256
230
206
179
207
207
279
167
199
198
219
241
172
227
221
229
199
172
141
146
158
176
115
151
179
172
227
168
158
172
261
191
167
196
193
187
223
182
171
198
235
202
189
159
170
196
203
118
199
234
167
174
132
234
203
220
241
261
212
134
275
185
196
214
212
257
247
206
155
153
180
226
190
167
163
214
205
231
200
99
230
229
165
197
192
233
187
213
106
215
180
197
115
234
253
208
203
174
214
265
212
202
181
189
209
176
297
219
202
219
219
179
149
255
220
238
193
163
207
190
232
232
195
190
163
227
158
221
245
244
183
173
185
207
173
218
237
184
214
159
180
276
228
261
190
244
200
172
156
155
186
178
225
248
195
203
219
207
215
182
246
212
231
253
199
150
112
235
157
262
195
168
231
207
206
248
205
219
194
189
241
209
167
242
217
288
233
246
241
179
239
187
199
192
153
260
234
202
240
182
171
139
202
221
205
215
153
254
178
215
146
191
180
179
203
209
288
175
239
166
178
223
255
190
231
194
221
228
218
193
144
149
230
186
212
220
185
217
203
171
244
197
174
198
249
172
190
231
157
187
117
128
176
214
189
203
270
246
237
146
256
215
187
168
191
162
149
199
187
218
198
180
153
270
196
142
174
268
183
157
176
205
223
177
209
230
234
188
162
192
230
236
192
213
163
181
230
197
230
136
209
168
121
197
194
227
249
147
220
182
205
139
197
179
209
170
181
188
237
148
194
194
196
229
225
233
247
205
210
189
237
179
221
178
164
276
152
222
197
234
224
218
204
251
181
253
220
166
233
253
220
206
228
208
167
223
238
201
241
167
196
247
206
209
199
162
136
208
209
207
232
210
169
171
229
206
222
188
165
186
215
199
184
242
199
262
177
201
180
239
160
176
191
158
185
246
153
173
174
205
221
165
227
163
249
194
202
223
183
194
187
207
220
263
170
148
242
192
156
185
214
196
131
220
225
178
153
200
193
211
198
248
208
213
209
258
245
229
196
165
200
218
157
177
235
203
235
241
217
251
109
174
189
193
188
184
215
177
175
182
204
172
209
232
217
198
206
221
238
189
183
165
146
222
288
164
124
140
196
202
240
228
242
231
230
161
216
239
194
238
200
206
228
193
226
214
153
164
237
179
136
220
199
176
208
195
164
202
226
224
190
202
219
215
244
230
187
226
205
242
226
182
207
204
204
193
179
212
118
166
228
234
189
137
179
226
216
188
185
171
249
191
170
201
208
222
224
162
191
196
214
251
200
143
189
184
237
263
235
198
209
203
224
191
208
212
265
127
218
217
178
147
182
175
183
179
182
220
218
194
214
186
184
228
168
245
256
167
236
225
218
181
209
191
219
206
248
236
210
210
245
212
205
222
176
246
215
198
186
180
208
228
195
203
181
163
262
243
237
234
257
208
134
229
128
254
208
241
143
195
166
165
154
203
156
114
207
172
250
164
192
239
184
176
187
174
218
190
209
198
155
184
198
234
225
196
279
225
162
183
251
211
159
187
225
215
164
263
224
215
177
214
217
223
158
183
148
204
199
230
186
112
250
182
208
273
235
255
179
218
165
218
254
261
231
203
227
240
189
274
231
228
158
198
226
240
125
151
117
142
204
204
186
163
233
198
227
203
188
165
199
210
240
179
245
152
202
177
208
211
190
170
203
202
201
181
265
200
184
207
187
162
195
217
135
168
173
222
249
232
231
202
181
206
172
211
204
147
144
166
214
246
165
196
240
236
201
149
274
222
214
146
249
113
182
137
220
174
131
176
175
209
150
189
194
214
187
160
195
226
229
214
262
212
216
236
245
208
112
155
225
207
219
206
146
244
196
211
173
211
211
234
162
199
141
202
176
253
127
183
202
218
145
192
186
236
245
157
167
225
224
240
236
181
197
175
155
280
221
167
185
243
214
262
198
190
176
140
169
251
189
194
198
257
237
141
173
222
196
255
167
149
201
282
181
282
288
226
153
203
215
145
208
185
201
204
209
191
192
201
202
189
263
103
205
196
237
140
221
134
172
185
206
233
230
197
155
238
210
187
152
190
87
241
267
192
216
152
145
195
224
229
243
216
218
239
203
221
173
191
230
177
189
154
187
240
173
207
222
272
239
144
193
223
196
258
186
162
185
211
194
153
152
212
196
242
157
149
202
210
154
200
232
191
187
174
223
205
260
254
266
221
129
188
208
246
148
191
138
198
196
155
254
169
235
160
166
206
139
199
249
218
193
200
242
177
229
160
204
236
256
221
157
222
200
220
196
192
251
188
228
193
216
184
211
245
223
208
176
205
182
225
228
226
176
176
249
153
165
210
227
224
242
180
163
216
174
244
226
187
184
232
199
163
148
161
164
189
255
234
246
246
198
182
207
248
216
194
182
208
249
217
186
234
207
191
208
115
182
197
160
207
201
260
208
193
166
207
168
171
135
210
177
166
199
210
236
215
231
196
194
206
169
198
232
209
161
224
244
176
191
184
196
215
254
207
258
165
214
169
229
224
255
200
159
216
221
204
163
213
175
202
187
232
215
190
221
215
189
134
192
216
208
169
229
177
186
224
163
174
185
209
180
186
176
180
247
224
189
228
166
192
265
170
242
185
180
210
158
206
192
252
202
185
146
123
179
171
211
207
181
156
188
216
193
223
208
143
199
184
159
248
220
228
157
200
253
261
144
210
155
237
233
163
219
275
188
215
188
157
131
249
176
232
213
254
158
206
197
260
218
227
225
268
204
159
175
236
228
181
227
145
144
159
195
268
202
126
189
181
152
221
213
168
215
211
225
136
174
147
169
206
200
147
213
157
180
232
204
208
261
234
206
116
209
186
263
248
223
186
179
167
181
133
163
202
188
199
202
228
177
203
235
232
208
167
196
152
190
201
182
119
185
231
190
189
199
200
193
152
179
234
241
241
208
239
168
138
185
222
191
222
165
278
197
190
253
211
176
180
210
174
173
171
210
145
136
221
220
146
241
185
211
198
161
252
232
200
145
222
196
167
174
241
236
225
214
152
169
255
280
165
159
213
141
184
138
226
198
249
242
127
206
252
233
207
239
217
177
221
214
189
210
152
176
225
198
196
224
203
184
235
225
129
230
200
225
239
236
227
161
205
234
201
198
202
213
193
183
189
177
152
220
208
213
206
215
198
230
220
240
202
210
241
215
154
213
188
199
183
223
168
191
259
206
175
239
204
111
153
201
209
221
221
157
186
225
173
172
175
246
170
244
180
219
207
252
206
213
201
158
169
157
197
200
253
191
229
198
169
212
221
237
154
188
153
203
278
204
211
209
235
139
204
146
196
232
175
242
241
195
167
198
172
220
264
210
258
183
149
251
222
175
261
184
161
281
218
243
196
156
202
231
191
241
205
232
226
192
193
225
221
250
189
223
187
224
231
173
206
263
199
207
185
225
175
209
203
214
176
238
153
170
198
171
142
152
220
219
216
147
179
250
217
199
216
212
193
206
185
243
216
124
227
158
242
223
256
210
214
243
120
249
250
229
206
222
171
206
191
230
194
212
224
175
235
198
188
190
214
198
221
134
195
155
205
197
174
208
218
157
221
144
221
225
247
170
202
219
161
161
220
239
213
225
170
178
175
171
161
207
186
169
170
174
234
180
224
159
208
227
236
149
194
196
207
267
149
181
225
192
184
240
182
262
274
222
156
247
178
188
195
231
203
214
254
129
194
161
207
224
197
283
194
197
115
212
225
192
166
256
268
189
212
205
212
192
240
239
129
250
149
175
143
251
209
188
208
180
178
194
225
143
202
175
213
219
199
202
200
213
219
176
248
175
216
222
232
172
238
210
159
205
179
161
196
205
184
172
184
179
237
218
254
161
222
250
188
209
209
287
153
169
208
208
176
245
209
236
266
245
228
199
127
213
204
158
163
187
210
159
198
140
190
172
146
200
165
217
148
184
176
193
229
192
122
213
142
211
163
218
202
181
184
174
146
190
187
179
180
118
212
205
175
157
219
200
193
202
208
180
277
219
235
235
212
206
149
137
239
217
177
204
210
219
183
222
154
190
183
193
206
181
145
218
146
233
196
207
168
165
185
232
226
254
194
191
195
176
221
252
116
204
223
196
167
192
204
195
201
232
207
187
154
226
200
260
245
164
87
224
200
148
215
214
145
188
200
193
170
140
199
201
236
182
208
262
139
226
205
207
224
234
191
164
196
233
155
197
195
205
197
186
193
185
203
188
203
230
165
193
255
219
216
200
225
232
222
235
193
192
218
192
205
206
240
187
209
231
172
230
184
192
237
148
202
195
162
186
241
194
203
264
197
220
205
133
225
222
210
161
238
202
206
142
205
161
233
199
197
250
197
244
273
200
237
186
172
225
266
150
208
204
168
193
245
230
205
229
210
192
152
221
132
155
107
203
238
167
199
206
232
189
250
216
236
187
221
235
132
216
206
128
213
164
179
220
248
149
236
172
274
191
188
152
229
223
237
214
141
182
250
161
188
240
203
133
231
230
179
152
174
224
194
184
178
192
181
175
209
212
206
249
211
208
222
170
217
181
208
130
173
176
129
232
129
211
255
189
208
171
213
239
272
176
176
187
170
223
107
242
140
216
171
154
240
214
259
119
148
158
199
190
198
173
181
210
162
154
248
186
224
164
205
213
253
223
198
225
174
187
240
178
236
244
200
192
235
183
210
167
229
188
238
222
202
210
231
218
177
167
222
168
262
289
191
197
189
184
242
249
246
144
126
181
214
207
233
230
179
216
146
202
208
165
244
239
214
217
158
211
119
213
273
196
173
219
139
262
203
166
233
154
226
231
201
224
236
196
202
162
183
253
264
229
188
181
229
177
226
156
173
179
136
247
217
220
221
161
183
173
219
181
224
163
218
291
123
168
145
134
194
226
187
133
115
132
228
183
194
207
265
176
214
201
214
242
200
244
201
241
246
157
199
243
210
230
199
155
205
188
167
227
249
125
248
172
198
170
192
181
182
227
166
157
222
179
159
167
200
186
213
132
236
231
230
180
245
254
208
200
255
200
137
195
207
182
199
172
202
177
200
237
268
159
239
212
243
217
224
193
231
264
229
181
183
220
230
227
241
225
222
211
225
215
176
283
175
196
241
178
167
202
214
246
215
181
208
220
170
185
185
238
208
233
239
202
132
186
184
220
199
202
208
193
185
218
231
187
235
244
196
232
246
220
171
232
159
206
161
192
238
234
141
184
230
217
194
184
222
269
239
216
216
208
143
166
249
163
165
209
166
214
215
202
148
178
224
192
213
156
180
154
183
175
182
232
153
244
220
151
260
266
175
232
176
179
199
187
168
196
231
219
171
170
213
246
204
202
173
179
202
183
217
188
167
173
187
212
251
211
164
188
174
206
216
185
273
174
223
158
167
161
167
212
173
219
236
199
207
220
201
211
251
251
219
226
132
166
180
258
229
119
191
173
161
130
177
252
220
195
234
235
191
221
158
170
217
191
197
196
192
195
190
202
250
231
178
150
188
159
170
169
196
236
284
175
133
205
255
215
214
176
191
195
102
188
220
241
244
181
207
174
235
226
232
200
211
225
264
162
199
230
196
262
204
118
124
205
251
194
218
214
192
172
202
139
282
226
195
234
148
197
169
235
249
166
240
170
204
185
222
147
170
164
141
82
222
208
177
193
197
229
172
156
146
177
202
172
255
152
144
172
219
212
241
156
214
205
235
213
221
243
216
182
200
181
176
200
232
194
240
149
255
191
206
130
221
259
242
173
191
129
217
251
210
171
279
179
182
214
206
182
191
218
206
121
145
206
142
250
204
241
207
225
195
194
182
231
219
218
227
152
248
206
267
269
196
191
159
214
162
236
159
221
170
190
209
258
233
175
147
219
198
158
201
138
188
206
271
182
200
245
203
176
177
196
138
202
204
220
154
228
262
178
218
164
209
181
186
240
164
213
152
204
136
122
201
170
147
214
200
214
206
231
129
179
209
131
204
196
159
199
199
189
240
222
200
216
165
178
242
176
167
205
158
222
165
149
232
211
245
220
225
138
198
210
218
206
231
144
194
200
225
136
209
247
222
209
202
224
198
207
120
184
222
185
168
212
195
162
238
164
203
146
223
197
182
166
183
249
195
224
180
220
150
245
217
156
161
237
225
189
194
165
230
150
267
180
182
148
242
120
185
205
223
249
209
172
229
238
215
213
200
129
258
214
182
190
190
180
193
190
176
145
124
185
235
203
150
223
182
215
223
188
216
167
140
199
226
170
179
165
209
223
206
247
201
233
176
174
245
274
217
186
157
250
172
185
109
197
216
182
224
215
221
231
219
238
204
215
153
226
196
210
199
182
202
150
227
126
197
197
200
238
223
114
192
220
222
221
223
193
233
238
172
244
196
152
212
195
184
232
185
199
190
193
271
149
225
218
173
271
127
195
177
260
202
203
223
210
150
243
172
202
193
183
172
213
230
189
173
157
178
183
208
224
276
153
192
243
150
212
160
230
194
191
225
153
213
195
111
231
275
153
240
184
168
201
217
200
164
210
134
160
170
114
200
254
232
139
216
111
206
238
161
135
225
190
217
182
169
211
183
191
168
213
221
200
214
213
250
205
145
145
244
224
185
193
152
182
164
213
168
258
192
128
205
148
206
196
172
239
187
173
171
204
205
174
234
157
183
270
196
203
188
158
226
232
170
262
182
178
111
218
196
192
212
220
221
208
168
213
192
227
139
224
203
202
194
228
184
205
161
206
190
226
232
168
122
207
137
247
133
180
263
209
134
166
211
181
198
156
212
222
215
203
184
187
205
198
220
174
205
273
189
121
138
193
214
204
209
214
188
221
262
179
223
213
125
207
130
233
176
202
230
171
198
182
231
167
170
174
156
200
200
132
193
204
190
131
233
164
210
176
216
200
179
238
254
198
273
211
193
203
300
255
186
217
228
189
223
182
235
247
229
170
181
179
178
181
159
204
167
170
212
184
214
177
196
100
214
183
217
226
162
174
151
218
217
209
245
258
178
175
236
259
208
242
190
181
226
212
184
178
214
158
241
212
206
220
210
175
230
160
176
244
170
191
231
181
261
175
206
210
196
151
163
200
198
196
200
233
201
222
183
194
178
206
200
187
223
251
207
184
204
286
202
149
234
231
217
208
229
153
225
181
220
208
198
226
198
207
237
200
139
197
180
177
251
215
156
261
243
165
192
248
208
176
156
182
188
237
220
226
242
171
179
192
220
252
232
206
127
176
193
187
241
180
228
234
207
218
200
205
202
241
135
186
180
236
170
156
189
205
257
204
238
204
206
183
219
203
186
246
231
209
142
243
243
202
183
181
233
187
250
185
209
216
192
214
126
219
178
121
232
191
131
198
195
245
214
182
174
259
163
187
195
162
247
233
200
168
222
220
210
216
232
143
216
246
149
225
162
156
201
194
150
198
263
224
213
184
225
219
211
163
214
184
258
196
178
204
238
209
221
158
162
280
213
179
177
205
229
257
192
208
230
162
214
141
211
135
235
162
210
178
249
170
164
217
228
218
208
221
164
222
218
210
193
215
229
192
248
264
213
246
215
223
204
204
174
238
204
184
214
165
203
220
222
229
142
249
192
230
140
196
229
156
222
194
218
197
164
218
178
217
203
245
250
179
145
170
168
174
212
240
220
219
195
228
208
201
138
145
202
190
209
191
149
233
164
158
225
148
174
241
214
164
163
191
276
156
206
213
215
230
232
182
196
227
256
201
163
167
177
248
173
204
184
149
255
186
197
220
266
181
220
135
244
195
201
216
120
168
236
223
166
175
236
190
146
228
269
200
202
175
228
173
165
187
290
165
279
165
232
232
186
130
184
237
245
214
208
160
199
219
210
186
166
261
199
237
241
262
178
241
176
155
154
219
175
226
214
197
268
179
206
155
222
174
186
223
210
126
162
200
204
181
203
187
137
207
173
203
255
274
197
173
197
215
197
205
238
241
215
194
181
216
200
176
161
160
194
189
171
190
200
152
265
246
138
176
150
184
229
128
220
210
230
168
174
153
189
176
224
204
158
196
186
194
178
185
167
211
155
152
158
133
218
193
209
165
193
93
188
223
204
227
220
216
192
183
203
142
134
158
225
230
198
195
179
221
180
245
200
223
199
195
196
197
203
147
185
239
240
189
150
185
165
237
179
217
170
177
191
260
178
190
237
260
196
161
235
191
177
181
222
208
177
182
233
210
151
185
167
181
248
224
250
212
141
146
175
221
181
210
186
139
178
181
241
174
175
212
122
240
241
164
228
191
143
158
182
187
175
195
206
203
247
204
255
171
151
189
199
185
228
231
148
220
212
181
140
243
161
238
169
231
172
146
215
245
209
174
152
236
208
271
199
248
164
204
247
153
249
180
245
165
133
130
196
148
216
169
205
216
166
204
190
211
263
203
167
144
145
195
200
184
180
187
215
131
183
123
205
196
233
256
199
215
152
189
145
228
176
248
193
147
221
150
218
200
179
197
187
151
207
175
263
164
188
159
225
166
268
194
213
213
241
258
205
180
144
208
197
203
189
163
142
202
238
199
251
191
190
194
236
192
146
187
164
197
190
255
162
145
276
178
191
170
176
204
154
203
154
159
226
198
223
171
189
205
167
216
193
212
222
196
157
183
228
192
133
206
180
167
185
172
208
200
232
210
200
151
221
151
238
232
243
174
172
273
206
177
225
169
198
228
185
264
127
181
206
181
188
126
190
158
217
246
156
178
207
207
172
282
219
188
149
214
210
186
218
275
239
158
208
242
217
248
165
215
198
139
199
221
206
199
182
201
235
135
242
235
172
147
258
193
177
139
169
202
241
217
185
207
254
161
212
196
209
195
203
218
176
182
217
228
240
184
213
201
206
195
212
218
199
219
108
199
195
213
237
238
197
203
237
198
197
213
207
226
204
204
227
79
250
215
199
209
179
223
232
215
179
152
207
246
239
128
213
176
173
128
232
205
198
206
178
203
274
221
120
193
206
215
162
240
247
213
261
225
240
210
198
242
204
146
208
210
189
183
218
242
262
177
277
173
226
215
251
186
219
211
161
272
260
170
262
158
148
203
207
211
226
182
204
264
226
250
164
218
207
142
185
161
211
186
214
262
159
209
191
141
153
169
136
209
202
207
180
222
177
167
227
200
121
252
208
204
152
223
220
167
187
194
183
158
178
179
234
229
231
207
184
192
240
210
233
221
179
199
161
165
229
204
139
197
201
198
195
206
218
182
178
195
185
189
254
222
190
220
208
178
232
182
254
195
187
122
158
145
124
211
143
144
165
198
159
217
258
164
223
216
265
135
226
230
259
241
170
247
230
193
211
144
253
154
127
220
178
225
234
172
217
168
183
199
194
159
177
216
244
204
195
227
171
219
189
243
214
232
192
204
188
190
173
132
244
223
240
133
190
207
194
172
191
251
234
263
205
176
231
192
154
193
197
175
227
203
209
233
249
179
194
208
224
225
192
229
222
215
236
219
193
223
287
203
191
223
203
215
184
126
229
227
149
165
176
207
155
205
200
151
200
146
232
238
180
237
198
123
211
182
179
138
173
184
195
168
213
214
202
194
246
231
163
292
134
275
253
199
193
200
211
211
237
213
198
179
211
260
225
239
170
233
211
242
206
248
173
215
196
166
166
202
194
241
217
235
222
220
176
137
172
214
116
171
246
234
190
260
170
202
172
226
134
220
228
177
178
219
170
202
231
179
189
223
164
216
127
171
89
219
208
183
214
161
140
222
222
172
148
250
166
221
225
155
252
258
144
220
218
197
188
215
194
289
191
246
218
183
198
248
193
218
171
194
182
155
209
188
175
223
177
178
179
199
203
169
211
141
208
195
181
237
168
171
179
194
118
178
184
259
197
178
160
210
181
197
197
264
121
165
243
191
144
209
180
196
205
176
174
177
227
270
197
177
167
256
249
232
204
142
161
234
178
252
193
212
189
209
190
177
228
233
201
192
194
191
154
136
243
205
186
166
238
187
264
229
174
150
201
162
208
189
236
155
279
239
230
191
188
239
207
220
154
289
189
134
208
187
231
199
231
138
193
144
188
145
191
216
209
218
236
193
212
169
235
161
203
196
211
159
197
224
138
209
201
226
192
256
162
168
189
145
192
223
155
192
188
258
132
205
244
153
193
185
208
172
222
208
215
249
153
142
221
218
175
142
176
204
101
193
206
157
205
222
235
201
239
162
241
179
166
139
216
166
168
253
103
140
250
181
197
163
127
223
210
182
242
131
222
183
178
186
186
166
211
205
196
249
220
233
243
125
179
207
176
162
209
228
207
248
264
138
186
153
207
169
222
244
234
204
159
195
168
209
208
181
196
200
191
149
258
258
163
119
226
186
210
225
232
187
227
212
189
220
233
212
201
222
209
186
270
228
166
170
208
196
224
180
180
170
245
247
209
224
218
136
143
193
154
188
177
172
250
170
238
240
225
209
185
193
167
238
193
155
214
220
196
130
239
194
229
213
201
196
188
218
238
133
222
228
204
182
180
225
244
202
172
214
168
181
176
209
203
201
240
215
180
173
203
199
143
209
223
147
223
247
134
192
262
180
218
215
270
235
208
227
245
135
152
199
228
115
209
275
211
256
197
241
221
268
238
183
181
224
240
138
236
195
241
267
211
194
228
172
212
200
193
134
189
229
209
161
248
243
208
174
190
234
209
244
183
167
155
254
188
192
181
227
228
131
179
213
151
143
213
161
230
178
207
218
284
212
223
159
235
211
153
126
259
173
179
241
262
183
240
193
167
206
204
179
251
171
242
216
196
147
233
179
166
137
211
272
219
223
215
170
205
158
185
202
176
177
126
201
179
144
165
157
189
200
168
219
178
228
181
164
221
228
218
202
167
225
191
231
184
191
199
173
242
198
217
241
241
217
135
124
198
206
206
231
178
222
223
231
231
211
254
153
153
158
179
214
175
191
195
216
207
182
195
173
192
186
177
174
108
186
236
184
218
170
128
198
182
250
136
193
202
184
192
221
187
266
213
191
170
199
226
146
197
221
174
200
241
228
213
256
255
142
216
198
216
215
178
171
162
149
232
177
199
119
238
166
209
151
201
226
199
203
159
235
195
239
209
225
229
181
201
220
199
110
222
236
206
167
201
218
190
204
224
228
182
212
202
143
238
170
145
170
225
254
198
178
200
257
258
170
204
228
204
188
243
215
179
176
210
215
232
212
218
232
145
192
172
212
176
193
193
218
215
246
107
197
205
218
202
252
187
162
197
184
200
199
225
197
186
169
179
274
217
222
191
160
189
202
190
249
141
193
235
167
158
227
135
191
241
198
169
262
244
205
231
259
267
181
217
256
244
157
141
191
173
176
204
165
192
257
213
224
212
193
224
189
207
173
225
194
221
198
272
229
143
202
189
164
262
229
215
183
165
202
215
253
191
227
186
223
192
247
183
154
190
220
210
238
247
137
216
218
275
196
245
195
196
187
228
215
196
224
150
227
188
205
211
157
262
225
102
183
193
238
181
136
203
169
215
237
189
192
220
217
182
192
151
212
201
206
209
188
217
196
162
264
213
212
207
174
172
250
211
176
224
157
179
221
126
245
165
231
247
199
213
199
211
193
225
186
142
166
180
229
206
170
213
230
190
149
178
254
211
237
216
144
181
182
276
240
195
260
153
211
192
248
167
216
256
238
188
210
200
185
245
262
202
218
208
230
206
160
217
244
268
177
249
224
189
140
209
212
198
176
194
227
186
214
153
174
165
242
238
221
140
196
183
258
256
227
253
196
216
246
231
142
204
162
186
214
168
221
201
233
220
225
256
197
154
188
200
224
196
213
121
205
168
194
202
173
196
248
182
159
168
250
218
242
156
224
212
212
218
191
197
239
258
167
167
182
148
210
138
213
250
201
227
208
216
170
227
104
185
208
229
168
175
136
181
188
185
231
232
197
245
236
247
228
116
158
154
263
209
216
203
168
172
169
189
267
138
120
184
212
202
175
219
191
186
226
226
219
241
273
221
257
208
139
211
141
177
222
199
149
203
229
206
183
154
233
264
195
189
196
158
188
220
230
138
195
220
255
273
213
220
232
179
231
213
182
206
239
171
225
182
203
124
214
160
175
237
176
142
207
199
158
176
163
228
231
221
231
214
214
169
177
199
213
204
206
204
167
198
160
237
113
209
180
158
216
214
246
199
152
200
233
204
180
208
150
120
209
166
204
180
225
236
214
183
191
190
159
133
171
200
128
184
148
244
200
217
141
177
139
164
213
208
166
152
186
215
207
133
150
234
219
229
164
216
173
172
194
210
210
194
153
202
209
220
257
194
164
234
190
145
229
146
197
200
258
219
217
200
198
179
260
210
197
199
152
93
264
260
195
239
124
162
115
247
270
254
213
159
188
209
178
178
194
225
152
158
189
214
191
212
149
224
196
159
218
222
237
176
156
209
158
144
210
164
240
208
171
206
172
175
205
172
151
193
179
222
167
224
207
208
195
232
182
197
175
195
197
243
211
189
205
268
208
251
185
199
150
184
215
198
160
201
259
171
182
141
162
186
185
245
204
265
209
217
254
265
275
187
147
165
180
184
214
133
261
228
141
218
246
244
252
203
184
164
190
157
222
224
238
197
222
207
168
179
167
186
165
192
184
194
207
161
195
177
180
193
250
264
264
147
202
224
163
165
199
241
251
103
203
164
231
163
179
194
168
247
303
175
210
183
138
141
212
171
193
239
159
190
216
212
158
164
144
229
202
231
215
239
174
164
181
194
209
180
180
202
218
174
177
149
237
179
203
149
224
189
248
170
172
227
193
209
198
254
248
244
222
239
180
214
193
159
237
132
230
255
187
244
199
201
216
204
135
162
220
222
182
221
127
183
150
136
161
215
179
228
286
225
223
265
208
249
191
195
196
189
153
252
219
224
207
256
211
152
185
182
199
187
199
204
166
147
91
232
244
189
191
198
136
178
216
226
213
124
159
238
100
306
179
228
254
219
222
272
176
250
188
188
207
213
231
264
232
180
201
179
168
249
202
201
151
232
233
149
161
262
124
225
221
201
219
167
205
181
182
167
202
260
130
241
159
168
205
251
239
216
192
228
155
195
236
249
240
185
154
221
164
185
224
200
195
218
217
217
224
143
165
224
218
185
200
252
226
208
185
227
121
208
187
116
203
229
236
213
203
168
200
241
186
168
192
254
137
163
249
122
241
187
213
201
172
210
152
196
239
202
167
151
216
175
146
211
247
193
187
194
127
215
197
224
196
219
211
174
168
221
238
175
244
184
228
212
204
171
157
227
170
241
237
204
215
163
208
205
152
250
130
276
252
217
205
226
227
197
137
189
112
194
174
241
218
174
247
280
244
160
185
234
265
175
245
211
171
212
158
212
251
206
207
209
240
223
222
221
257
170
193
193
150
207
190
124
161
167
162
227
243
216
255
223
262
203
205
208
276
231
179
206
195
227
180
195
180
236
249
178
166
200
149
189
215
229
192
245
207
264
224
160
215
201
181
223
211
198
145
205
272
227
284
149
181
200
262
159
189
230
150
157
136
206
208
159
224
188
158
164
197
210
224
190
241
200
201
207
240
154
170
173
206
235
209
205
174
196
174
219
231
222
213
205
198
203
218
203
174
220
191
184
227
247
156
187
198
183
181
198
210
237
188
196
159
214
202
204
170
209
124
228
186
134
252
263
159
181
172
245
214
203
224
134
230
163
251
169
195
147
195
225
190
232
192
177
171
250
205
188
173
137
258
134
182
178
229
206
196
215
217
221
166
153
226
176
213
183
234
188
177
215
231
176
196
159
212
260
280
188
240
225
143
185
184
248
228
261
251
195
199
210
181
267
196
209
213
157
233
242
224
228
163
159
189
213
169
136
188
102
195
144
216
170
143
132
218
155
206
192
219
243
232
198
245
203
249
198
167
219
221
216
133
185
187
238
157
170
203
195
182
191
156
258
205
219
200
169
207
161
182
246
199
198
217
138
192
235
221
215
151
223
173
242
193
222
226
231
238
207
178
234
211
196
210
223
145
210
260
259
209
228
185
179
235
187
228
241
236
200
192
234
174
233
245
205
141
199
259
237
156
216
249
217
131
209
169
161
175
199
226
175
138
179
281
187
186
191
230
187
180
179
163
207
212
153
222
174
200
261
199
156
240
250
202
212
196
182
213
199
233
157
213
209
136
246
251
184
173
199
149
258
187
185
224
132
197
202
243
209
167
175
225
222
192
206
210
160
152
189
197
161
181
231
241
206
219
204
181
258
236
175
210
200
209
184
216
193
239
241
206
154
225
235
180
166
173
215
202
188
275
227
243
178
137
157
181
247
185
204
128
204
177
187
188
200
244
207
264
226
155
197
206
203
171
198
213
213
145
136
193
186
200
203
145
214
168
204
245
145
218
235
204
203
181
212
275
157
198
183
158
201
154
176
246
180
190
217
215
274
168
188
226
241
193
156
238
205
184
165
164
210
162
200
168
178
230
197
274
182
204
242
146
159
155
193
123
210
224
240
251
213
184
186
255
174
256
167
197
132
204
192
206
247
206
177
205
230
194
161
254
177
241
187
230
160
193
186
207
235
209
201
182
253
164
183
229
156
154
161
211
157
227
177
141
200
217
219
182
237
175
154
151
189
198
149
233
191
182
183
161
219
209
190
240
209
179
166
187
267
274
125
252
221
251
154
197
187
225
256
247
197
175
236
223
204
195
204
186
192
269
237
170
180
250
185
219
208
213
193
257
252
231
180
184
232
246
211
201
235
156
178
212
170
271
244
200
194
138
193
201
216
207
235
180
163
191
169
151
262
192
208
110
203
196
141
171
255
198
222
169
178
207
208
204
143
176
161
166
270
187
178
231
188
243
188
236
209
192
176
187
210
228
195
189
186
131
209
203
187
188
236
187
224
223
221
188
176
170
162
215
228
264
229
196
234
223
232
160
199
184
243
195
184
229
159
195
224
217
189
226
176
166
171
209
207
157
199
180
198
216
239
183
225
162
220
158
250
193
187
210
255
200
220
192
185
139
235
230
236
188
241
196
115
245
189
191
198
215
178
176
232
188
229
131
173
211
202
232
182
228
174
132
197
225
215
213
252
269
232
151
192
211
189
191
142
221
185
234
214
238
187
215
200
197
250
128
229
140
131
214
183
191
138
181
211
211
224
159
144
221
183
177
145
178
211
261
172
161
198
211
231
219
232
206
204
183
203
157
196
151
153
217
270
211
211
144
103
212
198
145
155
250
224
141
184
237
117
209
222
182
246
237
255
223
233
202
210
179
215
191
168
217
241
170
226
219
218
233
165
223
189
105
209
184
141
135
203
197
223
199
220
237
165
214
190
206
239
197
231
162
242
213
229
183
200
143
187
230
189
184
188
163
202
188
227
210
218
206
198
144
203
207
244
117
167
190
178
236
218
171
265
238
201
153
265
190
152
196
204
163
179
269
192
233
227
226
244
176
194
227
226
178
197
178
252
170
160
127
233
209
214
181
274
207
206
221
252
197
173
220
193
285
212
176
202
213
223
205
183
201
176
284
187
206
212
185
227
204
192
164
236
163
144
177
189
237
199
168
159
201
251
179
226
274
230
229
233
242
164
252
161
170
237
183
209
168
248
207
184
209
206
250
209
146
173
189
186
159
169
234
202
197
218
244
189
204
260
189
190
212
173
144
236
181
207
154
256
249
229
188
224
230
158
220
155
237
197
158
196
212
237
190
223
177
216
209
152
174
217
181
223
157
200
158
205
140
181
186
163
168
205
197
191
183
209
134
195
156
188
217
185
221
193
191
168
115
226
196
178
219
153
185
208
192
205
203
218
223
182
207
207
212
238
168
192
201
142
277
213
187
218
189
220
259
214
168
187
268
175
248
226
202
222
216
205
179
263
185
192
187
238
162
203
191
170
179
227
195
187
137
206
206
130
164
186
273
178
158
175
186
198
164
162
173
184
230
152
187
261
217
227
197
158
177
198
241
163
196
173
190
251
227
181
198
200
160
252
225
264
202
218
157
212
164
177
153
220
252
274
181
164
169
142
159
180
115
233
194
215
125
197
140
242
203
234
270
187
210
127
242
170
230
173
177
251
204
203
204
287
168
254
189
250
229
177
200
228
206
209
211
237
188
158
155
176
249
180
234
187
182
198
250
269
138
181
185
214
198
170
160
187
245
244
243
242
126
184
167
220
214
210
183
174
260
272
167
222
164
164
212
190
186
225
166
151
192
228
206
241
189
260
161
226
209
190
172
240
207
215
192
190
193
209
166
185
210
158
215
167
234
183
193
198
197
219
219
220
172
201
167
242
241
222
178
184
234
196
223
251
191
240
168
159
217
172
142
181
147
186
234
177
227
169
195
209
129
228
178
167
178
149
171
206
191
212
213
199
206
191
207
269
197
218
175
217
204
185
116
238
207
181
217
217
193
141
218
198
153
187
186
161
142
177
151
205
198
269
223
141
173
169
217
210
243
217
202
237
176
232
132
216
218
204
188
220
145
192
286
150
213
178
223
209
199
230
206
217
166
168
226
187
214
231
169
157
233
136
199
204
183
166
232
250
143
217
249
195
252
184
176
197
198
176
182
186
212
163
197
203
215
199
243
205
209
197
179
160
162
199
180
271
182
224
246
219
216
198
194
235
239
219
193
189
213
223
188
205
202
146
211
181
221
199
197
179
196
198
198
213
223
230
216
223
207
218
174
240
221
177
175
226
227
205
219
242
208
225
134
248
216
205
205
188
252
175
221
178
226
120
237
180
195
207
210
230
206
206
139
247
240
159
214
221
201
223
218
227
181
213
222
191
200
216
178
171
184
217
212
186
193
208
179
207
206
175
201
177
191
198
194
201
134
185
215
196
213
206
209
183
260
220
159
157
217
156
225
162
285
214
241
145
222
162
218
202
186
179
209
186
214
221
250
225
225
218
218
218
186
209
190
160
270
144
195
241
210
152
173
169
175
192
192
166
149
223
225
159
245
225
182
224
183
165
174
184
155
179
218
172
184
180
196
219
163
125
193
199
224
218
211
115
144
246
205
215
210
237
245
184
248
253
179
218
151
220
240
208
186
216
190
158
161
172
172
224
209
177
234
161
198
142
230
208
241
167
158
162
167
229
234
138
144
223
206
223
225
187
192
246
125
232
247
220
192
194
179
169
215
198
185
209
228
221
187
207
195
179
248
147
192
156
260
227
147
195
196
195
126
200
221
207
172
204
201
189
226
186
224
134
235
207
234
204
203
149
235
212
188
201
198
223
231
219
200
160
183
240
196
204
127
154
143
233
146
291
189
181
218
186
220
168
285
216
195
256
174
201
231
245
252
157
250
207
236
157
228
213
170
153
195
204
214
141
145
230
198
201
209
171
222
167
177
215
179
209
203
159
228
197
246
170
168
197
173
194
167
149
200
238
232
200
203
149
238
239
193
199
187
201
202
243
186
174
158
262
139
143
215
201
208
218
244
206
227
251
203
192
228
181
196
199
208
197
229
194
245
194
179
206
266
148
175
183
179
155
167
197
180
179
217
151
223
195
191
207
160
165
198
243
221
214
144
228
196
211
252
181
186
226
158
206
127
222
169
214
190
193
191
220
191
176
171
228
198
137
234
218
270
218
188
209
180
128
187
153
205
252
159
175
250
185
162
218
227
154
258
106
192
141
196
206
185
207
245
245
220
212
147
161
158
196
115
221
160
250
194
210
234
224
165
215
179
173
146
210
195
170
238
210
217
186
187
185
223
263
175
191
163
208
161
198
246
255
155
241
166
213
221
186
149
236
212
229
218
205
199
187
178
196
220
263
214
190
214
215
204
166
186
243
251
244
133
130
198
273
215
181
87
186
239
211
206
185
185
154
177
200
229
244
231
207
199
203
252
212
156
232
191
191
248
203
146
268
207
159
163
179
223
202
201
190
175
220
172
214
179
238
242
165
180
199
176
218
236
165
196
227
262
130
215
192
159
238
159
226
188
160
209
173
195
209
172
233
251
192
196
235
199
191
185
226
167
242
183
284
157
194
171
137
175
148
272
183
145
264
240
221
196
227
196
221
249
194
161
175
164
158
192
174
221
186
206
135
258
171
170
203
208
117
196
208
196
194
216
167
269
242
174
169
203
151
147
215
191
251
176
179
202
182
170
124
241
218
183
234
226
213
233
222
147
248
169
217
177
145
186
164
178
204
280
157
200
172
177
149
176
120
199
207
184
183
237
195
282
194
167
185
216
136
199
220
238
162
198
244
222
224
158
190
208
204
155
218
235
231
166
146
186
182
174
231
236
253
232
129
153
225
190
115
176
145
188
231
174
181
226
164
173
241
248
183
213
244
116
234
208
267
186
133
156
190
232
223
197
170
208
200
166
195
159
172
211
224
169
216
218
215
201
189
213
170
183
218
220
220
302
217
212
187
155
194
198
126
254
196
154
225
177
189
176
204
222
181
218
185
185
198
243
254
199
234
205
173
198
173
170
235
208
206
173
167
244
147
225
205
219
219
179
212
198
226
217
163
176
217
160
244
180
161
232
126
128
189
234
195
187
172
166
235
288
181
224
179
256
219
229
170
203
211
197
270
209
197
158
243
164
161
199
221
152
178
228
205
227
164
152
215
156
182
186
180
181
189
242
254
160
124
207
164
242
140
256
198
198
229
191
131
157
232
215
229
179
226
204
216
146
194
146
201
163
217
225
171
229
271
206
222
161
233
170
137
253
192
221
248
213
199
160
160
157
179
170
210
199
130
174
229
179
232
188
222
219
213
184
232
238
229
140
147
215
178
186
155
288
233
169
216
216
207
213
128
185
162
186
155
250
215
197
172
200
229
193
230
217
231
164
261
170
227
199
221
162
242
178
255
183
182
168
219
200
148
172
202
159
186
194
177
161
209
215
174
264
217
199
268
244
203
156
239
182
229
236
248
219
175
257
194
159
164
166
226
156
154
223
226
200
188
211
166
224
180
282
171
220
147
220
180
214
225
200
206
233
221
244
198
168
245
213
165
191
216
161
214
191
198
167
138
223
123
173
181
228
166
242
270
197
184
148
174
216
217
196
188
241
210
202
184
225
174
185
227
211
190
214
199
201
145
192
211
160
243
170
206
212
190
225
222
192
240
195
232
190
231
121
195
206
264
207
185
146
198
261
197
184
118
205
198
175
159
207
219
188
140
230
149
167
189
201
226
172
197
189
177
249
185
241
147
208
246
229
193
220
210
109
207
186
210
197
137
182
209
179
117
221
211
230
231
219
199
203
172
241
265
190
279
223
177
202
205
240
200
233
216
217
201
239
120
203
164
227
185
166
168
207
160
221
195
193
190
184
231
205
172
239
216
199
194
246
225
189
178
214
201
202
239
276
248
189
149
207
200
221
195
173
154
242
112
254
152
178
206
212
266
232
221
205
195
216
178
225
191
194
145
175
184
198
212
200
152
241
158
207
187
160
236
169
169
162
124
201
207
183
165
164
166
197
204
180
174
245
209
238
179
173
141
173
191
186
151
225
202
256
217
233
193
205
222
256
193
204
223
248
258
208
224
159
173
181
202
143
212
225
187
232
170
229
261
158
145
183
174
180
172
170
188
223
149
210
225
178
164
178
213
208
222
196
191
213
175
197
262
204
224
177
186
196
212
224
158
179
169
211
245
185
160
272
222
206
196
210
207
223
143
173
196
246
234
160
233
186
194
182
229
250
233
173
223
205
210
226
222
207
195
195
147
189
139
203
190
239
228
277
194
234
270
226
159
265
221
245
155
200
227
187
192
170
175
225
233
153
176
249
208
190
150
220
213
220
221
239
154
245
186
251
205
219
195
248
200
210
210
210
249
204
272
278
209
158
245
204
229
153
185
219
162
174
179
197
150
162
246
232
208
150
219
191
216
159
180
187
234
208
217
209
188
262
231
183
255
243
192
209
140
297
197
173
221
193
195
235
203
201
149
213
150
179
114
180
186
242
206
167
218
187
177
198
181
159
230
232
211
142
184
210
178
228
231
201
174
168
224
187
185
208
124
216
226
226
121
179
228
229
216
209
169
175
223
203
255
251
231
210
170
158
197
192
233
181
221
225
179
186
195
161
249
170
159
226
240
156
239
192
201
171
157
197
221
215
215
220
235
210
159
218
225
178
171
213
191
233
158
170
231
164
190
199
196
183
193
155
204
215
102
218
230
143
195
160
265
263
170
127
185
207
220
204
194
179
199
175
182
170
173
234
194
247
197
203
253
286
239
223
189
142
185
209
249
147
213
227
205
224
182
248
243
161
238
232
185
249
190
259
211
195
242
228
235
223
108
229
91
239
220
201
142
203
283
201
203
213
164
232
203
175
117
193
215
215
221
243
222
237
190
202
211
173
245
196
162
186
212
196
264
221
177
223
151
210
173
246
206
239
176
200
171
226
236
172
211
148
170
254
229
227
176
231
207
197
192
183
224
236
155
251
241
217
196
222
223
180
180
158
222
175
225
191
235
204
155
217
197
157
215
169
193
197
201
155
180
171
166
203
211
159
239
210
212
187
218
201
207
195
215
209
237
173
193
191
201
128
218
240
224
182
257
200
221
229
206
183
281
177
191
116
209
197
180
248
182
187
232
170
239
220
169
167
248
171
221
193
227
231
234
202
128
152
166
219
222
263
208
153
144
166
166
157
193
235
215
290
224
172
201
219
160
258
238
243
203
213
231
197
186
178
241
216
186
244
224
243
113
165
148
240
203
207
159
183
192
171
207
173
170
237
183
200
151
266
235
216
170
208
214
226
100
200
225
151
211
182
174
161
101
189
249
170
225
161
227
187
214
135
178
174
167
184
260
162
251
215
218
187
237
250
204
185
249
225
164
208
207
228
183
203
223
252
199
170
149
207
202
230
194
193
161
133
184
216
196
190
239
97
165
227
165
153
244
204
228
166
186
147
241
193
180
161
127
246
215
200
177
227
232
211
245
179
170
258
208
211
214
139
186
221
228
197
211
243
201
177
265
175
145
218
168
236
201
196
197
229
151
222
207
183
211
228
265
167
213
215
227
201
186
253
163
239
165
157
210
148
202
201
88
184
237
180
146
209
200
178
234
227
216
224
179
244
170
157
143
224
139
228
151
194
186
167
140
195
149
188
163
188
211
195
138
189
232
217
225
159
157
154
228
175
102
181
120
193
235
164
183
232
158
172
200
170
208
174
202
227
225
214
178
233
207
162
192
201
228
232
218
186
188
281
190
209
219
190
209
182
162
215
207
254
241
248
231
172
178
175
197
165
183
186
234
193
208
195
206
201
129
244
184
188
184
166
227
265
205
173
123
184
237
182
197
128
211
228
130
247
253
168
186
215
183
196
186
251
124
177
186
141
177
276
143
191
110
218
205
177
211
236
164
240
161
175
214
218
157
176
199
168
235
234
211
207
207
159
239
180
206
148
163
152
201
240
214
239
162
177
263
230
174
218
211
138
212
244
238
179
168
186
212
208
238
197
269
217
146
197
205
167
193
126
240
169
160
190
210
197
193
206
230
207
233
221
192
202
141
203
242
225
168
218
188
179
186
198
113
234
229
193
221
186
212
158
247
201
202
209
236
187
241
230
146
193
147
154
245
243
213
207
168
209
264
204
240
234
223
217
230
138
190
225
196
229
294
193
227
218
209
215
172
195
217
261
217
170
206
169
212
169
230
203
211
210
176
213
199
215
186
153
139
255
145
202
203
226
174
228
228
181
206
243
188
257
234
205
204
213
263
193
211
202
145
146
149
238
199
243
170
143
156
197
193
241
205
199
233
198
175
259
145
144
186
207
192
172
228
152
188
185
280
212
213
163
205
181
193
129
229
190
221
213
144
233
209
151
141
217
237
196
200
175
192
242
243
217
229
218
151
192
216
226
208
207
249
202
205
253
232
212
211
180
187
209
187
242
187
161
221
265
210
204
211
273
196
248
161
185
262
217
183
135
153
272
196
207
177
242
197
167
267
247
177
190
224
116
118
142
158
201
211
149
197
208
196
235
165
198
223
248
156
206
218
223
174
164
223
252
164
201
212
218
217
202
222
221
207
191
180
222
229
231
268
181
205
188
226
176
207
164
257
130
208
170
235
206
209
258
177
200
184
216
187
204
217
227
239
211
198
169
180
254
143
209
210
177
209
175
228
158
208
242
237
226
189
137
172
202
225
187
207
161
145
152
175
163
248
207
175
217
210
211
135
149
209
218
191
186
205
225
199
197
134
185
195
254
138
152
221
179
135
224
190
155
196
187
218
216
229
225
206
223
136
174
187
207
161
220
229
163
180
137
192
165
204
163
151
193
247
214
175
171
142
205
249
211
191
257
235
217
152
216
197
187
155
140
192
220
234
172
213
184
206
181
161
279
217
197
170
182
229
234
217
192
157
217
179
240
210
205
272
230
243
251
262
219
141
141
209
206
177
206
241
186
210
207
222
163
161
261
215
230
246
159
216
232
205
149
121
188
230
158
266
167
174
230
169
182
227
130
149
160
173
246
201
191
168
226
151
124
291
189
171
206
215
186
171
194
242
179
148
203
142
234
211
170
213
161
196
246
262
172
181
182
167
170
197
204
208
183
197
185
191
197
203
267
178
141
142
199
201
212
177
206
214
171
194
179
229
199
173
238
245
176
223
177
236
151
236
198
246
163
143
200
128
237
178
268
198
243
262
178
172
201
152
217
198
199
172
197
167
232
196
214
171
270
248
201
217
210
253
210
183
187
176
220
246
227
160
144
174
235
282
173
190
178
149
260
172
170
209
238
161
186
232
234
167
211
213
241
181
179
155
221
218
221
119
182
123
174
200
206
150
166
161
159
192
214
178
203
209
223
210
286
205
191
254
236
229
225
220
222
180
130
264
239
184
196
229
179
160
193
174
244
200
204
227
187
228
217
258
210
223
180
210
211
243
223
228
178
188
194
224
187
196
213
149
233
193
154
216
179
246
145
220
229
259
236
205
167
134
198
159
185
204
224
155
196
265
193
172
236
190
219
233
241
232
250
191
243
154
205
156
234
166
213
183
191
202
203
220
212
181
178
176
176
227
207
158
98
196
190
253
203
198
161
210
194
217
207
216
227
151
232
166
192
203
164
233
213
165
195
252
234
178
176
171
235
181
246
200
202
153
247
204
190
166
164
198
219
201
244
159
223
180
241
164
158
219
173
204
237
294
205
242
225
160
262
209
193
190
214
203
190
213
222
209
189
166
231
235
260
206
257
154
255
232
141
224
213
227
213
134
127
257
191
172
190
198
193
210
216
249
211
228
228
222
193
205
192
173
180
179
175
260
233
179
254
250
236
137
197
238
150
148
212
171
237
166
192
184
189
176
203
229
200
231
157
172
250
223
190
206
164
243
217
250
238
183
257
219
142
254
189
184
204
224
183
253
228
174
142
221
187
183
204
174
202
191
210
212
204
241
223
141
185
177
240
239
204
278
219
175
110
213
269
231
177
205
178
183
188
205
221
176
203
199
239
214
236
210
190
189
179
271
188
175
253
233
140
129
175
252
182
221
265
149
233
204
192
202
240
240
206
142
185
222
221
172
241
261
213
151
197
215
266
218
233
215
212
148
181
235
142
220
218
187
259
274
224
216
194
255
224
180
227
122
210
195
193
191
184
225
194
296
179
174
182
169
221
196
196
232
194
156
146
158
214
194
224
229
263
260
120
222
159
197
194
174
205
158
212
210
128
204
192
187
235
217
232
211
259
146
259
199
236
194
160
216
175
232
196
121
263
210
238
194
221
202
239
229
189
176
227
196
161
181
245
226
176
173
275
218
227
197
143
245
160
167
188
179
135
213
190
173
272
181
193
169
202
195
213
239
172
213
195
233
185
186
204
157
233
186
167
220
179
195
154
233
217
176
211
232
203
200
220
178
187
251
159
197
212
275
189
169
222
268
244
199
145
237
195
208
157
216
178
272
204
185
196
225
209
178
232
230
222
256
189
225
257
230
193
215
172
196
206
236
212
171
200
197
235
182
198
207
250
191
205
196
197
267
184
239
214
158
168
220
192
225
248
210
178
181
241
196
227
197
173
289
203
204
203
211
212
208
150
175
208
183
168
209
238
208
194
189
224
193
173
124
210
196
217
237
170
131
211
264
253
280
196
168
157
181
223
215
205
219
213
230
234
232
209
162
183
155
210
198
155
135
156
219
215
136
198
147
162
171
211
194
223
163
201
220
172
213
228
205
252
244
162
236
231
172
175
227
196
182
240
235
196
191
227
172
84
197
210
232
207
243
236
232
218
131
206
141
279
205
167
217
123
174
168
187
156
178
240
215
194
205
175
208
216
238
188
229
209
197
187
215
192
208
164
237
225
240
133
245
204
166
150
151
220
239
252
207
198
174
161
163
225
188
213
199
252
222
192
230
179
189
115
162
198
152
221
239
234
163
187
177
209
159
170
171
203
190
176
226
231
197
110
240
192
245
195
250
190
221
169
187
218
199
182
224
216
182
175
206
252
181
185
188
161
266
261
192
213
254
149
206
202
200
163
231
244
226
230
224
203
243
144
201
204
193
234
179
195
146
230
161
177
167
174
123
156
174
209
208
202
156
208
223
232
198
230
203
201
206
199
228
221
233
233
159
264
188
228
228
209
202
211
139
129
233
165
180
169
231
242
139
188
193
183
218
145
232
222
184
173
197
200
185
260
153
189
179
180
214
121
252
203
185
218
255
194
209
145
218
178
232
226
176
164
221
198
171
202
196
231
190
245
184
140
169
100
270
261
223
214
242
238
195
180
194
216
212
234
230
182
219
138
191
270
177
140
244
214
212
163
203
266
211
210
253
188
211
220
183
201
247
229
254
244
200
234
184
224
186
145
180
213
149
161
165
184
205
187
192
241
159
221
167
202
184
219
225
186
249
236
208
149
168
229
143
218
232
194
209
177
199
230
226
176
206
219
226
136
194
190
161
222
228
169
261
208
205
233
209
176
171
190
237
212
214
236
193
252
135
237
236
212
127
129
241
263
131
238
207
187
227
262
200
201
223
278
237
188
192
207
229
203
234
178
228
234
177
226
193
249
185
229
208
197
191
228
210
243
184
192
233
144
226
196
228
189
222
230
161
200
163
147
214
191
223
199
222
194
209
168
237
147
184
218
257
214
213
229
250
219
230
171
155
241
215
156
177
219
168
226
186
155
207
224
161
201
219
184
208
229
180
208
247
215
147
207
234
262
263
125
264
171
154
215
187
198
201
224
173
163
158
193
198
218
224
217
213
186
165
171
250
215
149
202
218
250
189
231
219
230
211
210
179
252
212
144
279
186
241
165
251
129
185
228
114
219
177
199
266
177
201
158
183
262
253
172
134
147
190
206
180
216
160
162
206
183
201
178
173
143
203
212
102
203
147
224
238
186
174
154
156
185
187
210
138
150
155
194
193
218
233
218
213
206
173
194
211
177
175
198
224
215
166
244
169
207
150
149
210
201
231
240
224
159
217
202
146
232
224
220
184
172
237
176
217
186
194
190
201
223
220
143
257
261
209
236
196
173
192
167
189
190
176
157
253
149
219
200
275
182
246
152
196
267
224
187
190
218
161
188
229
192
207
207
164
263
155
217
157
267
221
187
215
192
199
215
179
232
201
255
253
147
112
223
220
211
210
167
184
222
243
153
135
143
204
184
239
215
158
205
263
233
222
206
195
177
152
226
188
220
228
167
177
243
175
229
198
184
160
219
128
186
223
200
233
193
207
188
215
211
191
240
222
239
173
176
213
204
207
209
200
227
172
177
212
188
200
199
254
139
165
182
220
126
199
179
171
184
188
244
153
179
215
213
190
251
187
168
173
176
196
236
219
113
190
173
219
175
129
209
264
158
183
265
170
210
206
224
216
129
236
186
213
257
176
206
282
244
198
193
143
154
128
218
231
231
247
200
238
193
168
200
225
175
155
254
206
222
139
236
152
194
147
216
218
222
205
221
141
235
239
190
213
206
191
207
198
201
212
137
215
167
238
158
173
202
215
204
188
174
181
155
241
127
198
213
223
209
223
187
159
183
228
154
164
202
161
150
207
237
203
188
181
188
185
270
192
244
160
181
229
183
232
187
188
119
238
156
240
200
233
227
221
189
146
169
195
225
123
168
193
232
246
194
213
225
182
197
168
195
225
198
211
176
187
191
236
204
205
213
155
165
158
149
150
193
160
257
116
249
170
166
140
180
201
252
159
216
164
162
210
180
217
206
219
184
219
170
177
213
219
199
221
129
207
197
218
201
238
194
122
261
154
204
202
204
218
221
177
230
225
176
192
212
187
176
201
258
161
229
255
264
220
200
237
159
226
212
205
191
216
207
174
209
178
165
116
265
166
229
230
229
150
256
215
235
200
110
239
182
195
168
178
204
223
148
220
196
186
217
181
202
251
149
228
235
202
214
200
182
177
262
197
149
191
152
193
212
215
186
232
197
143
193
248
207
210
147
150
197
217
202
199
237
208
154
196
195
218
178
272
251
141
241
200
195
166
169
191
222
245
188
210
160
215
262
247
232
187
217
137
210
168
175
208
161
180
138
177
194
227
197
201
138
169
186
200
253
224
207
210
182
209
234
217
211
213
186
214
219
197
223
116
213
216
232
178
234
236
168
234
234
160
215
193
156
250
196
206
238
190
171
188
270
192
249
203
283
232
211
200
228
182
197
175
161
210
218
189
243
228
169
238
219
196
212
226
212
211
213
236
205
190
186
194
129
150
143
168
154
220
216
230
217
241
214
268
203
226
211
196
219
187
186
138
190
189
220
169
179
228
183
163
234
199
175
182
155
233
197
148
181
221
210
244
183
161
219
243
231
204
165
189
161
192
216
195
54
228
146
226
208
183
201
220
165
211
234
156
188
160
216
166
251
196
242
187
245
248
187
152
180
197
194
178
166
180
186
182
193
174
185
189
209
261
185
198
205
183
234
161
158
206
217
179
184
209
203
178
153
222
170
222
192
272
190
217
150
183
244
180
211
164
180
216
201
204
145
222
204
234
191
233
187
245
205
155
152
257
176
223
188
242
197
179
162
195
238
240
215
225
218
222
251
218
113
195
158
249
217
230
183
218
214
206
233
150
213
138
174
210
221
158
181
213
272
252
215
171
205
161
181
244
227
247
213
175
204
201
194
230
217
242
197
231
187
223
190
203
207
178
173
207
187
197
242
287
256
184
209
217
137
163
203
158
149
224
159
159
169
224
190
217
181
138
172
159
222
188
252
189
184
229
214
161
160
205
220
247
216
206
279
143
213
156
163
183
213
193
237
134
168
196
149
175
193
178
170
240
160
243
172
166
202
204
200
213
150
189
174
189
192
183
224
230
214
157
166
226
178
194
186
235
166
240
217
211
203
159
239
204
182
189
203
210
172
232
185
170
215
153
203
218
226
206
103
171
173
189
171
245
187
214
192
231
181
174
192
200
187
209
174
150
218
177
187
274
181
257
220
234
185
230
139
145
156
212
235
239
234
192
205
184
180
148
207
253
175
208
129
142
161
233
228
214
206
214
167
232
220
205
190
180
215
125
222
199
244
169
170
227
243
213
155
244
173
207
133
280
208
234
171
176
194
222
264
179
186
196
242
230
215
223
162
275
178
178
182
170
172
200
179
185
211
176
251
203
208
235
213
120
199
146
225
169
256
166
177
209
125
200
193
228
185
173
179
163
164
156
228
178
192
227
240
231
198
158
255
176
194
241
183
228
178
224
201
258
195
171
183
219
197
185
192
255
215
240
195
193
173
183
232
240
202
222
227
152
185
215
144
246
197
219
153
107
180
186
187
204
203
209
211
178
194
161
236
181
199
210
226
173
153
238
231
199
214
208
245
204
188
183
166
203
191
167
192
184
239
223
176
259
235
181
222
128
286
203
211
186
218
207
234
259
181
194
184
196
197
197
253
212
231
155
199
250
263
134
202
195
211
200
256
225
225
204
179
241
185
213
180
234
217
205
180
182
225
163
201
188
242
237
174
183
161
205
220
203
181
249
188
210
193
139
194
171
140
191
224
169
222
232
196
183
138
251
242
169
225
150
219
136
194
194
228
147
222
198
158
172
224
229
206
229
180
226
219
182
162
262
182
272
201
139
208
223
241
178
199
184
187
187
224
192
107
173
196
252
224
241
241
196
219
236
187
247
198
214
206
194
173
250
251
193
188
217
246
189
253
182
220
224
255
208
210
216
143
201
213
165
177
262
172
199
209
195
147
181
161
216
183
188
181
199
200
176
208
139
263
220
217
188
240
188
211
212
148
238
175
233
236
182
157
220
216
179
153
163
170
239
235
194
223
194
230
203
198
123
268
205
163
229
214
231
232
184
190
236
118
163
237
229
196
193
194
157
196
206
179
209
197
241
226
214
187
206
131
200
195
218
158
197
195
221
181
188
154
222
222
212
121
169
110
173
178
223
136
223
172
129
183
186
175
192
208
262
195
198
226
200
158
219
203
167
266
196
180
177
211
234
131
209
260
201
223
262
215
123
202
254
200
245
184
252
189
169
263
221
171
165
220
224
220
205
156
175
162
151
172
231
144
200
220
204
169
177
221
231
182
175
157
211
250
219
182
203
138
198
278
208
185
209
183
191
171
167
262
222
172
172
184
222
248
201
169
284
165
213
242
230
226
155
136
181
238
185
203
263
216
197
210
215
251
247
246
271
144
223
221
172
249
203
182
206
186
257
208
225
211
255
192
113
255
171
184
184
190
251
248
181
243
179
206
203
223
161
207
239
202
169
199
216
181
160
186
222
146
188
218
178
189
202
130
215
193
186
179
213
208
182
184
245
244
271
131
211
207
238
194
254
207
185
173
219
169
187
159
213
223
146
209
163
164
136
202
183
159
168
211
159
143
186
173
158
196
154
185
268
216
183
237
123
233
183
193
200
198
150
235
194
223
206
243
238
198
165
250
234
243
200
166
234
229
216
169
155
197
214
133
236
230
198
209
130
186
190
195
236
148
172
222
230
189
262
222
183
204
264
224
224
160
213
229
162
177
220
177
202
198
228
222
169
209
268
219
230
189
232
189
204
165
228
172
235
192
180
157
134
205
170
143
201
231
211
193
238
144
198
156
238
191
201
232
247
236
233
226
144
226
191
235
128
215
150
222
138
154
223
147
188
281
188
185
227
227
179
226
226
212
217
217
176
203
165
173
251
234
144
214
254
180
146
227
199
167
246
191
171
218
181
220
230
168
166
122
164
205
189
255
177
203
196
199
238
185
208
181
230
234
178
189
187
241
228
178
197
173
224
256
220
163
217
158
219
191
145
212
185
211
190
222
224
170
235
143
152
191
204
194
226
228
195
204
195
220
196
183
139
204
209
194
208
221
210
198
230
134
253
277
226
240
204
231
184
168
176
202
221
251
201
228
166
165
169
187
206
151
261
191
186
211
243
200
132
206
226
206
151
181
197
210
147
238
198
202
240
210
187
188
206
242
215
283
154
166
219
212
170
174
204
181
138
181
180
198
145
169
243
142
231
205
221
238
212
228
178
206
182
225
233
189
189
208
224
207
225
204
192
224
191
189
244
246
211
243
208
166
197
232
154
203
161
184
148
197
203
302
163
215
228
155
252
160
135
205
231
116
208
156
229
177
132
182
237
181
250
180
201
183
184
191
207
180
176
215
243
209
206
225
181
173
220
224
116
227
156
168
183
230
223
154
254
197
201
192
238
174
203
142
232
173
151
157
202
182
226
186
242
194
206
219
264
185
212
227
221
214
214
206
184
229
228
177
221
130
227
240
173
195
211
229
239
175
168
194
234
169
151
183
237
269
192
154
245
178
186
185
271
188
158
170
176
140
182
206
227
216
152
161
224
205
208
250
222
206
178
181
213
215
211
189
210
205
194
214
162
224
180
187
151
163
259
231
132
128
206
192
194
206
214
189
184
163
192
267
179
132
150
171
226
220
220
173
208
230
126
162
186
239
261
249
229
152
196
212
243
213
228
164
203
171
177
159
170
204
207
215
186
177
187
168
231
178
230
187
160
185
208
215
197
250
236
196
186
207
214
229
180
219
182
214
145
182
228
160
186
230
119
203
225
247
228
160
194
236
133
188
204
184
175
226
201
172
200
220
239
257
211
207
185
206
169
180
140
194
226
137
186
170
209
257
208
156
174
224
195
211
241
176
190
177
233
264
175
219
198
229
212
244
157
236
181
215
216
187
182
184
174
212
262
253
155
245
223
201
181
202
167
241
174
226
194
219
206
213
186
229
159
178
204
166
171
240
218
252
198
140
208
176
233
168
149
228
202
145
243
197
196
164
207
239
202
222
201
178
207
201
191
218
220
194
220
135
200
221
156
222
181
219
184
246
241
231
220
162
216
211
178
183
156
177
216
165
178
241
245
223
224
182
208
165
223
237
229
143
172
209
251
170
137
190
195
208
181
222
197
182
236
215
217
169
218
244
268
219
184
188
213
141
218
185
174
219
219
255
226
164
168
238
220
198
214
217
166
245
157
168
207
250
170
205
164
204
142
195
222
178
122
127
165
176
192
261
154
176
211
201
173
206
208
149
179
208
197
166
150
197
194
156
232
167
202
219
172
173
194
204
174
194
200
253
239
216
142
202
208
176
195
219
220
229
184
189
206
197
256
256
227
194
266
234
206
205
166
180
197
175
227
222
195
186
235
161
200
220
167
153
214
147
172
180
198
237
188
141
195
220
146
211
196
226
176
142
191
193
148
176
221
227
204
206
208
201
155
216
134
221
141
201
228
206
220
143
169
222
264
145
163
185
215
210
180
204
180
142
230
196
223
164
225
148
142
205
149
163
191
209
227
240
187
204
206
204
190
215
212
224
177
206
194
194
191
218
150
215
203
255
150
213
216
208
178
226
211
261
236
169
170
231
199
181
291
212
199
163
233
168
194
171
228
150
210
166
241
196
233
231
173
254
180
166
180
236
154
254
157
177
220
209
259
187
203
226
191
167
204
189
187
207
228
226
183
172
194
228
201
170
215
189
235
160
141
202
199
217
189
187
234
234
249
217
217
244
221
187
241
200
206
180
251
206
139
259
228
231
190
161
206
172
256
147
210
168
208
189
181
227
239
170
217
253
195
207
258
179
229
198
229
250
184
186
174
160
203
181
203
213
155
218
202
210
122
173
218
176
161
176
143
200
227
206
248
213
212
196
227
104
226
196
180
121
191
178
181
256
210
186
226
213
187
168
146
238
218
261
169
180
182
147
206
215
219
221
141
201
194
191
183
143
217
231
126
258
253
238
221
199
193
204
262
199
195
192
178
191
206
213
220
197
218
202
188
202
182
165
187
200
208
176
189
187
251
202
220
206
199
230
225
272
193
214
190
196
259
242
178
224
144
192
217
137
159
150
199
209
160
198
123
185
184
172
175
181
204
220
193
130
202
200
264
181
164
171
122
206
271
158
199
177
219
164
200
216
227
217
240
204
212
177
192
181
252
283
217
136
230
179
207
168
123
220
167
219
216
214
241
188
165
194
248
205
226
221
260
216
192
231
184
188
199
208
211
179
249
211
207
239
215
159
193
256
160
246
199
247
224
227
218
176
229
136
175
239
151
163
205
190
226
138
256
187
168
199
155
201
185
229
235
124
186
145
210
267
211
183
166
214
206
178
222
199
183
159
167
204
187
282
165
207
174
176
208
165
211
219
188
163
239
170
214
277
216
152
241
198
181
256
216
180
246
199
224
151
162
207
189
231
274
193
242
194
147
162
217
156
162
251
290
202
238
224
210
164
131
192
248
208
243
176
261
177
179
189
177
222
259
197
132
150
167
235
147
225
162
223
162
166
210
220
212
209
208
239
111
192
239
219
224
179
179
163
247
212
227
158
154
245
224
188
185
202
189
246
228
216
163
276
216
209
173
186
190
233
248
203
205
225
198
153
228
158
191
265
208
250
213
157
155
275
217
256
226
223
142
202
210
193
179
212
217
216
209
231
223
190
228
161
229
238
202
181
212
209
180
187
187
222
182
146
200
139
207
235
166
207
262
197
202
196
209
151
176
203
205
160
221
185
157
240
201
110
144
231
177
188
214
188
203
223
200
152
205
132
235
199
180
221
259
182
187
190
203
237
231
225
192
206
199
227
198
147
235
189
178
197
192
194
243
209
203
246
179
101
202
137
189
240
210
260
162
211
195
250
197
230
182
220
215
195
226
183
170
222
240
157
205
243
182
153
220
225
242
222
128
169
228
185
186
161
206
232
253
157
214
243
153
247
232
212
150
224
173
183
227
214
194
222
201
205
193
164
177
150
166
198
155
139
167
218
233
215
158
261
171
189
232
215
207
224
195
152
240
192
150
140
232
220
125
257
224
175
182
170
206
162
185
206
241
272
217
167
233
207
172
257
236
250
143
189
298
135
253
217
186
156
189
203
206
148
201
170
210
164
197
174
189
212
193
246
173
190
263
160
202
256
165
137
200
229
130
235
214
141
260
258
264
226
172
217
239
191
241
206
213
164
219
178
193
213
187
150
198
178
134
246
234
221
174
229
189
204
140
232
226
230
166
210
205
128
182
231
156
139
207
218
223
238
228
232
173
244
186
208
208
195
180
241
181
177
206
235
195
174
191
238
200
215
175
211
187
205
241
218
177
256
201
216
161
143
192
142
214
209
273
214
200
136
188
136
225
209
233
203
197
239
241
185
218
228
208
216
216
198
137
232
205
140
188
194
174
161
219
219
239
200
174
181
155
229
227
194
219
170
235
202
207
160
185
187
234
233
185
210
165
211
248
198
191
229
233
142
145
191
200
130
191
163
211
175
169
197
153
119
178
214
208
207
129
178
218
174
203
213
182
195
239
183
141
188
178
216
191
223
218
196
180
252
162
170
240
199
258
149
245
119
218
146
203
174
195
200
241
219
168
208
217
180
164
216
198
165
192
156
195
214
216
209
203
186
230
215
163
238
232
205
170
220
248
213
266
253
145
221
206
230
191
183
216
203
271
194
160
141
229
160
203
190
227
185
147
171
218
174
203
180
172
180
160
168
154
220
218
171
131
200
171
193
187
174
283
164
195
213
254
250
201
183
218
187
208
167
174
158
171
214
167
170
212
222
236
222
202
198
269
159
197
226
202
158
220
228
216
158
219
199
182
227
220
193
217
255
186
218
233
197
180
270
178
189
178
231
175
180
223
160
178
228
121
245
204
188
212
218
198
247
184
218
200
177
265
190
163
211
178
194
217
231
221
242
204
236
223
116
221
201
210
244
249
200
147
190
209
242
210
244
196
223
189
231
216
134
190
185
218
248
148
214
169
158
187
204
213
189
228
167
173
207
241
250
197
185
219
232
141
126
202
192
240
172
233
253
117
224
179
203
169
127
174
205
227
222
171
184
184
192
143
213
180
195
223
142
151
226
271
191
202
227
223
263
145
192
223
247
213
156
214
221
231
221
125
221
202
215
169
205
197
182
204
161
251
202
144
158
176
181
256
211
189
69
117
196
164
188
207
264
201
159
250
218
243
177
187
203
178
215
228
270
187
204
202
202
202
251
240
219
248
200
227
227
249
238
84
154
218
244
146
219
197
152
203
179
260
153
170
163
249
200
145
237
165
238
176
269
184
202
185
221
200
166
245
150
167
181
154
158
122
135
215
196
179
162
188
151
271
229
173
186
248
143
244
166
200
237
233
269
246
174
205
224
159
201
178
204
155
219
201
213
132
209
199
232
179
183
222
165
169
209
172
216
186
183
212
180
165
230
145
233
178
223
213
217
224
193
251
145
160
247
220
224
213
178
156
198
233
198
148
193
220
184
240
153
172
185
232
162
187
205
205
254
240
95
288
202
226
174
211
209
224
172
158
188
206
215
134
255
166
201
130
221
163
149
233
203
261
212
216
250
218
207
208
219
196
243
155
200
188
207
216
244
187
236
233
177
231
222
249
275
267
177
228
184
218
184
265
222
170
207
171
192
207
235
200
240
174
144
225
243
130
178
101
252
252
211
178
123
174
137
180
168
174
182
224
188
217
186
205
146
239
264
215
201
189
191
252
194
221
177
132
163
146
173
258
180
240
194
184
196
188
172
133
208
188
229
143
236
184
235
259
204
170
137
250
222
223
201
258
285
195
238
229
170
135
153
222
187
203
235
211
199
253
176
220
173
155
186
197
200
229
177
229
210
150
233
274
177
208
211
126
260
133
213
202
217
214
236
203
215
211
215
225
292
169
180
236
238
225
198
168
176
169
178
250
240
219
214
180
198
187
239
180
266
239
227
190
190
191
231
223
248
235
203
228
178
269
214
158
240
171
198
251
190
141
222
208
258
146
192
188
214
202
223
152
189
207
167
233
189
204
215
210
190
200
122
183
180
191
177
173
155
180
245
178
247
254
235
122
235
222
230
256
172
163
189
227
187
137
227
251
285
196
141
227
222
195
156
187
213
175
226
192
229
196
219
240
183
197
239
158
166
154
230
195
201
228
214
178
223
117
99
165
185
255
225
190
258
216
227
198
176
246
194
213
228
197
243
123
232
256
269
106
224
238
226
165
172
208
173
215
267
190
202
190
221
217
216
206
226
160
169
298
159
232
199
166
207
196
202
173
244
182
144
164
152
218
161
224
255
190
195
225
184
197
221
161
211
175
260
214
224
150
141
233
193
241
118
286
183
212
203
163
197
229
162
225
234
224
142
165
147
176
167
159
134
142
194
181
229
138
219
130
243
225
220
227
105
195
219
190
146
167
186
157
234
160
225
167
204
133
174
187
209
211
179
197
191
187
214
204
202
182
247
177
221
182
141
202
186
161
189
174
199
178
170
184
137
197
226
196
245
238
226
256
210
169
166
269
193
216
174
133
214
213
199
188
231
225
195
113
223
253
211
190
172
152
186
207
249
198
207
181
187
227
220
206
212
219
212
227
210
207
198
180
191
207
203
183
235
255
211
126
261
250
184
241
261
273
247
256
201
153
179
206
199
227
133
150
177
150
185
195
219
181
222
185
169
227
212
193
206
207
258
187
207
169
225
212
211
218
245
244
212
164
184
224
181
241
167
202
284
193
150
237
165
139
215
211
181
111
152
213
290
162
142
175
152
196
196
230
164
169
240
256
113
181
127
177
217
209
211
192
233
219
246
218
189
160
169
209
192
170
174
213
154
243
179
128
227
197
153
264
214
156
236
168
175
215
203
176
199
205
165
191
135
243
213
228
200
240
102
213
221
220
253
233
137
234
213
208
240
188
215
152
169
251
176
232
178
212
231
182
187
156
213
200
222
200
232
185
165
238
219
168
189
176
165
182
281
154
159
199
139
244
197
193
171
204
204
226
197
179
185
229
197
164
172
192
197
214
191
231
156
264
190
202
171
127
225
148
140
210
203
212
244
221
148
218
180
235
220
167
207
145
181
202
169
197
251
232
204
205
230
234
216
208
223
158
163
260
214
224
170
154
269
192
135
218
139
241
198
191
151
224
186
175
213
272
175
164
193
231
174
257
269
201
186
172
197
212
156
247
228
257
213
187
246
193
203
192
164
176
168
224
177
232
173
210
144
126
214
193
239
176
262
193
191
242
201
209
245
244
202
161
174
147
170
214
203
174
168
217
240
193
206
183
221
198
156
131
234
178
102
214
234
222
216
205
202
180
211
214
258
181
216
166
216
214
197
133
228
196
229
202
233
238
186
191
251
157
199
240
170
118
209
218
210
164
167
208
229
207
195
224
213
212
190
244
221
220
179
181
210
217
202
185
201
174
134
182
191
262
180
187
192
199
186
193
228
201
215
190
216
203
169
154
164
163
205
249
218
214
184
226
208
210
190
259
232
250
192
218
181
237
262
206
215
189
153
200
217
250
185
222
212
202
148
213
204
187
193
211
187
200
229
212
175
187
204
211
240
155
152
166
168
159
175
254
175
232
175
175
218
205
170
150
210
173
225
157
135
214
114
251
223
167
218
144
210
241
183
189
261
209
235
254
175
275
190
159
212
155
234
163
228
199
148
196
204
219
222
170
213
269
179
224
101
237
242
188
257
154
183
234
193
236
218
216
176
187
238
203
218
149
180
162
164
235
210
171
223
181
245
148
216
207
155
205
183
228
178
284
235
192
183
199
159
229
238
170
219
250
203
239
183
190
198
165
154
200
226
223
244
154
269
272
190
219
250
214
165
185
181
203
137
194
180
132
183
199
170
191
251
263
238
174
144
230
234
203
149
196
154
173
199
180
223
136
173
195
192
167
232
217
173
200
188
206
268
169
210
192
215
222
166
175
250
220
185
217
138
211
210
179
235
208
194
179
211
187
135
183
240
224
155
160
161
250
202
162
164
261
177
236
216
147
213
268
205
305
218
175
188
185
177
227
256
204
229
225
206
181
141
212
155
189
281
178
153
208
185
191
206
244
212
187
255
172
246
186
213
178
184
237
224
106
141
161
164
260
193
225
240
169
192
222
220
126
167
179
129
199
177
169
121
231
185
222
144
183
202
191
166
121
181
219
288
165
164
199
125
191
211
212
184
182
186
231
186
269
180
207
163
171
173
183
176
154
226
225
221
170
215
218
171
189
247
234
158
172
206
154
214
220
172
233
269
211
169
224
240
220
218
213
195
178
188
168
219
204
212
234
243
246
223
195
154
126
141
217
243
199
172
242
165
213
233
163
144
161
257
139
202
160
233
150
199
221
167
176
206
193
253
175
163
226
208
132
212
187
216
213
159
176
207
222
247
192
193
144
208
156
128
188
242
204
189
219
145
188
203
252
139
225
236
159
183
152
223
202
176
172
178
200
219
156
200
235
120
203
194
223
195
227
232
258
173
189
229
206
287
227
242
175
160
206
116
157
166
188
226
166
192
237
219
180
190
168
162
165
206
213
191
181
189
212
165
176
139
226
145
192
195
184
224
149
187
182
153
213
231
182
248
197
172
200
225
171
191
282
227
215
169
169
191
205
261
198
246
183
206
178
183
180
123
208
185
169
160
196
171
203
127
226
203
149
242
209
191
231
183
146
274
162
195
197
189
202
213
169
195
200
224
244
216
197
217
146
155
184
196
194
216
191
177
212
201
223
199
255
174
161
213
122
191
213
200
183
191
192
213
201
195
185
208
200
102
136
215
72
195
220
209
153
213
192
156
229
119
194
163
232
138
180
173
135
170
184
233
231
239
255
143
216
215
194
154
187
259
203
214
246
179
194
222
168
198
192
236
196
182
230
206
146
237
241
224
223
171
198
129
193
192
211
180
181
199
248
162
154
191
230
174
167
153
174
250
173
170
172
203
169
225
180
190
195
197
225
155
204
171
219
143
128
141
171
199
187
220
208
203
165
224
195
184
207
228
211
193
249
218
250
211
190
214
194
249
158
222
194
207
221
211
219
202
194
206
239
215
176
151
157
212
236
173
238
215
145
174
192
160
161
204
198
216
149
130
163
148
276
198
204
260
215
233
269
234
245
214
105
219
174
165
208
259
226
200
176
213
227
247
180
200
191
259
239
137
220
235
192
218
221
238
179
132
240
185
241
227
156
222
217
211
249
155
198
180
218
184
224
223
207
210
236
196
136
235
264
144
241
172
214
180
233
181
194
216
188
255
196
190
144
171
192
214
201
190
203
189
213
203
234
216
198
176
271
137
179
179
191
205
218
160
268
172
207
235
157
266
130
196
211
261
154
164
191
210
220
179
241
204
201
193
156
222
145
268
202
166
123
189
174
177
238
189
166
194
136
240
184
176
161
186
189
195
234
221
205
195
243
173
178
158
153
178
177
167
159
189
134
215
198
187
242
181
237
147
222
196
156
179
239
195
204
190
170
240
273
194
208
267
243
185
251
144
257
202
237
174
197
219
191
159
161
234
212
152
214
209
215
245
116
223
184
116
176
198
223
199
240
227
235
184
256
254
237
203
150
221
156
208
177
226
144
224
250
183
200
161
167
130
225
204
162
167
180
220
147
229
220
209
154
249
210
192
221
128
195
135
149
160
204
162
218
271
205
202
187
235
200
234
174
162
227
214
235
204
217
211
90
113
179
163
215
164
207
213
175
218
198
146
167
194
181
211
193
203
222
207
199
235
221
195
181
176
214
139
225
253
220
111
187
165
217
193
188
218
191
277
179
82
257
167
206
192
179
218
188
174
138
206
130
197
184
214
137
189
255
243
247
216
232
250
178
223
257
187
256
227
158
215
192
187
230
169
230
218
187
220
223
235
262
196
192
224
231
178
115
218
174
244
161
219
169
205
218
209
228
150
191
232
191
196
208
245
241
176
224
135
225
126
202
222
222
197
161
247
194
192
186
174
226
229
216
233
178
176
204
173
251
182
258
145
175
180
203
228
171
226
220
167
196
234
173
249
262
138
248
196
225
220
215
218
198
200
209
195
190
140
193
152
281
216
181
190
181
99
232
150
199
187
247
255
228
197
207
228
216
201
202
226
202
260
226
225
234
212
204
165
229
193
210
247
255
182
208
231
222
213
227
183
224
153
169
156
198
181
237
228
238
225
221
210
212
171
234
260
218
142
203
236
237
189
253
256
192
185
173
195
241
199
268
167
202
145
233
109
215
157
209
197
180
193
184
184
233
165
215
166
156
179
226
215
196
162
142
257
203
214
210
194
180
177
184
235
231
152
225
263
262
239
245
209
194
217
138
161
215
268
136
225
163
232
190
194
208
187
147
158
197
199
215
164
228
242
183
217
120
189
170
197
139
249
180
201
208
219
228
227
177
245
142
162
188
178
235
147
146
252
201
208
159
174
203
186
153
217
189
182
193
157
254
177
144
161
232
164
139
179
198
244
173
164
211
227
183
175
169
248
121
237
129
206
184
178
239
224
195
193
153
191
166
195
210
221
151
238
183
210
260
208
159
144
250
180
182
206
227
173
208
211
132
194
183
231
232
201
252
217
135
196
224
226
219
214
242
142
217
235
195
165
197
153
211
153
226
171
190
206
151
189
172
181
217
197
187
142
228
141
201
161
137
236
136
293
218
221
161
230
215
253
152
190
212
206
217
192
217
163
214
200
208
153
244
256
206
202
167
244
188
173
186
237
256
191
207
181
194
243
111
188
191
206
168
227
210
238
194
145
219
193
204
168
224
238
212
211
196
246
212
214
227
189
218
230
149
139
238
160
189
191
172
212
204
178
191
220
179
172
159
237
192
208
243
239
172
221
207
141
220
209
225
224
198
189
232
168
222
177
176
234
147
234
181
219
151
265
197
240
138
199
183
145
165
130
124
283
158
172
204
212
207
235
181
123
229
142
187
167
150
224
185
181
169
180
224
221
179
237
243
217
172
189
261
241
190
231
197
211
223
170
223
179
193
196
146
202
199
113
218
231
196
218
260
216
160
221
210
242
206
155
208
228
192
203
119
181
188
204
191
207
182
172
226
254
186
196
183
158
221
288
184
186
179
224
242
152
186
199
270
153
166
151
209
193
121
236
214
192
118
190
204
189
179
164
160
252
224
195
208
223
172
248
151
229
174
242
260
211
169
185
229
265
137
210
183
221
185
202
231
131
178
209
176
244
203
216
228
215
225
174
198
213
227
154
210
243
236
176
204
241
145
179
168
249
195
229
219
189
210
177
226
189
216
220
221
206
218
205
225
199
180
261
256
179
238
191
191
164
234
199
210
179
222
270
159
168
227
147
222
233
197
206
197
218
234
204
160
196
164
231
232
188
262
206
232
243
211
239
220
206
231
198
217
215
247
188
162
216
287
148
184
192
270
194
170
196
180
206
220
243
168
277
244
222
285
193
237
210
195
251
195
216
228
226
176
215
166
231
214
210
237
203
193
170
232
203
148
195
181
230
203
227
239
217
137
181
224
149
162
194
231
203
198
240
190
273
187
183
247
257
181
187
197
237
193
205
227
224
195
187
193
233
192
195
216
211
218
238
210
197
214
212
214
176
223
239
205
225
205
170
228
220
207
127
150
144
206
172
164
220
237
210
213
162
182
179
159
221
209
225
236
190
181
186
229
214
192
195
181
238
155
217
179
193
197
229
182
222
202
217
189
214
242
208
232
250
240
274
215
77
160
219
224
202
217
154
158
231
245
224
213
146
167
203
195
139
193
222
208
223
186
242
231
200
247
162
198
192
226
221
197
210
233
173
162
236
192
208
218
198
175
136
226
217
219
185
164
180
245
201
149
239
222
252
193
216
189
166
205
214
245
147
171
169
172
232
218
198
262
245
199
192
205
203
165
236
184
224
207
204
184
233
204
198
201
216
221
207
175
203
125
250
232
177
207
235
207
110
190
262
184
188
194
266
168
187
157
222
178
167
168
160
152
206
234
227
172
254
217
191
175
198
226
216
212
229
191
264
214
237
145
238
200
226
173
218
206
197
185
195
171
263
196
138
255
190
214
166
241
194
218
170
240
226
222
188
178
215
259
150
280
250
145
194
222
243
269
162
188
203
145
101
211
178
204
239
125
231
223
147
135
127
214
207
185
252
192
218
174
232
248
203
156
211
271
230
192
226
202
230
274
195
220
177
240
234
170
282
187
232
226
183
135
192
177
249
102
238
172
226
200
140
225
220
173
202
247
193
202
198
162
259
213
194
155
224
184
274
177
218
202
184
249
203
126
193
207
227
190
205
202
243
142
164
193
147
172
163
224
225
151
184
171
214
222
206
244
196
163
214
213
201
181
188
233
198
194
238
238
223
230
245
207
234
272
235
186
202
226
237
205
201
206
168
195
188
209
196
158
119
199
179
164
196
175
228
242
217
189
169
143
244
235
234
205
183
198
211
124
128
191
244
187
236
168
183
267
198
266
171
101
256
219
227
210
192
209
181
181
224
260
157
194
201
154
234
209
223
238
171
188
204
201
162
244
199
158
214
252
243
189
191
151
213
163
188
186
135
223
203
198
195
206
212
207
213
236
249
206
226
241
216
172
247
206
254
189
233
198
209
211
123
142
201
238
166
209
166
206
188
171
153
195
94
182
144
231
236
266
203
275
252
227
245
197
212
194
164
136
240
175
172
243
158
212
219
247
230
211
174
271
229
207
204
164
143
101
223
130
184
144
161
184
273
222
227
220
215
222
207
245
171
191
218
243
193
260
208
229
236
188
181
139
228
205
264
218
174
193
186
169
223
141
246
247
191
160
184
184
225
199
181
188
207
212
210
139
179
189
198
210
154
210
192
193
177
206
234
161
185
146
210
242
262
231
208
177
177
241
215
221
230
144
157
201
204
199
169
241
222
171
168
154
260
224
154
197
223
194
150
245
141
161
256
181
191
236
166
167
201
178
172
213
99
150
186
199
224
201
223
207
169
193
258
216
186
224
155
227
160
220
241
155
170
251
215
170
136
201
211
193
186
210
184
224
196
243
130
194
239
144
269
247
177
250
217
187
191
193
186
243
207
192
266
178
116
184
244
202
202
236
225
147
194
185
241
210
126
207
134
176
163
173
231
201
213
249
196
196
186
255
206
240
162
177
241
176
219
158
152
245
237
160
192
170
246
186
143
151
246
219
159
216
183
194
226
207
156
228
250
176
190
266
204
212
162
170
172
253
258
180
222
196
173
224
171
166
251
195
205
258
193
221
215
209
157
225
222
187
179
214
238
192
161
230
199
215
193
201
183
249
232
156
196
237
208
232
127
239
192
202
235
213
164
247
239
210
259
189
147
202
225
206
144
222
211
235
225
133
196
214
231
206
83
104
180
196
147
239
215
146
155
189
212
178
168
206
222
284
166
218
229
171
165
191
193
108
210
209
219
170
151
166
208
187
208
163
209
184
185
224
229
205
165
222
163
176
205
274
246
163
207
202
219
187
220
152
252
200
197
179
204
199
243
171
150
166
133
228
211
225
160
156
261
226
162
184
162
263
264
249
175
211
250
178
155
188
250
229
166
223
220
205
156
169
229
221
231
187
219
214
198
212
220
193
163
201
249
203
184
199
200
242
254
161
214
227
188
232
214
170
144
169
199
184
158
239
194
193
236
249
224
230
275
211
203
160
211
207
210
208
206
160
204
144
178
178
224
188
199
223
185
178
208
150
192
158
214
167
163
214
135
154
211
165
226
235
236
198
232
212
192
207
93
214
182
201
162
195
191
251
177
199
219
230
205
239
195
147
215
189
214
226
205
222
208
236
200
227
186
255
260
124
215
203
214
212
179
244
216
183
217
162
206
253
191
175
157
177
149
197
160
190
218
169
168
236
222
254
162
182
262
231
243
184
195
220
240
201
155
197
241
208
140
234
211
229
223
232
243
195
222
161
194
220
218
173
241
214
202
187
208
221
212
195
187
167
256
220
279
213
195
207
274
215
201
220
146
234
162
237
210
197
192
199
179
225
189
180
177
193
207
192
261
168
217
230
207
192
218
224
229
153
161
179
186
204
197
217
193
210
147
213
241
208
226
254
164
254
205
178
195
171
197
168
231
251
169
246
207
189
187
185
211
186
162
233
210
268
240
212
247
176
158
245
185
215
192
241
192
193
225
196
176
221
183
180
260
157
255
156
188
171
231
210
206
156
234
167
187
219
178
186
187
225
148
200
251
249
191
255
196
198
266
181
215
209
190
223
166
215
227
186
230
199
165
156
232
207
229
183
200
182
206
235
155
161
185
260
245
201
260
217
224
264
196
246
230
226
286
226
247
172
202
235
175
227
197
175
187
164
235
195
190
197
192
221
221
193
210
218
207
199
212
152
277
206
210
242
157
180
205
186
265
250
130
228
230
217
226
197
223
241
205
161
187
133
177
226
171
171
218
219
257
182
209
220
201
206
152
198
207
193
199
241
246
192
179
220
182
234
175
193
211
229
222
227
199
155
206
230
198
198
239
224
192
250
176
175
205
185
214
228
169
190
229
162
195
165
199
160
246
221
251
195
234
141
228
216
133
194
211
204
155
168
206
171
234
193
188
181
235
193
166
258
176
160
290
247
199
189
174
161
222
170
203
275
169
191
221
176
221
214
232
257
164
186
218
298
176
192
235
209
211
180
157
186
256
181
216
228
190
246
175
205
185
195
216
173
279
229
242
221
202
234
163
226
192
167
190
213
206
216
224
212
234
247
245
232
175
175
186
137
162
194
212
204
153
254
104
231
218
163
231
248
216
232
248
161
218
195
131
202
197
248
211
249
209
159
187
235
163
217
219
239
240
215
249
205
205
162
109
190
207
186
244
240
178
283
191
176
205
226
235
222
173
235
216
263
164
216
164
127
122
126
224
239
242
231
178
197
266
224
190
184
155
189
235
199
252
191
208
179
228
260
178
217
261
252
233
158
201
190
188
172
236
200
199
195
215
192
162
177
235
190
219
179
227
171
187
222
182
188
205
158
141
189
112
175
162
200
167
221
263
200
273
209
190
195
237
216
118
216
172
150
140
171
187
179
208
190
174
167
251
245
199
217
197
185
105
166
198
213
207
186
203
240
265
277
164
172
158
235
141
220
191
210
205
263
189
223
244
179
201
184
209
230
218
207
169
225
185
192
165
209
226
157
159
213
181
198
239
192
232
221
224
191
170
198
204
189
155
212
116
185
141
200
181
176
191
206
176
218
213
261
235
185
202
201
221
232
233
169
245
216
200
242
222
199
184
206
151
205
211
190
199
237
226
186
204
179
227
147
211
192
179
260
179
260
171
267
202
195
221
224
233
189
180
235
190
229
178
197
226
166
207
174
161
181
174
191
251
228
229
269
194
132
156
192
213
174
209
187
221
230
133
243
203
143
247
224
174
269
226
209
180
263
206
211
228
166
235
223
88
205
181
198
240
210
188
204
194
172
239
200
180
183
154
193
198
222
216
239
230
203
170
152
223
222
267
229
174
175
191
268
165
235
253
226
249
260
254
185
171
201
201
218
213
199
98
221
179
203
280
128
168
178
170
153
229
227
177
181
170
213
194
213
117
255
219
155
192
191
233
159
195
186
204
184
207
215
183
206
189
215
185
236
244
219
170
161
244
160
183
225
195
182
207
168
188
133
208
165
204
187
205
231
224
140
243
248
200
223
174
169
186
225
213
186
154
215
166
208
176
201
142
251
193
197
249
160
199
177
290
195
195
214
207
198
151
194
209
213
176
188
200
227
218
243
265
251
257
260
208
182
204
188
253
231
221
233
219
221
232
192
246
148
224
217
194
177
179
202
234
174
194
252
169
216
186
183
209
181
210
163
146
134
132
199
229
169
196
124
246
200
213
192
193
220
184
242
166
246
160
204
245
200
246
202
130
149
218
175
124
234
229
156
208
105
248
203
202
182
181
169
180
187
221
214
250
212
230
219
178
189
201
209
136
193
271
162
160
219
211
221
223
236
191
186
226
243
166
208
204
185
183
162
246
227
217
214
181
208
192
214
186
214
176
157
124
218
229
244
282
194
237
228
205
218
183
187
177
226
227
139
179
183
224
211
119
179
145
194
184
218
208
249
203
155
117
224
159
168
176
273
204
233
211
178
207
175
150
265
232
214
239
201
204
175
210
163
167
204
264
234
179
242
238
148
224
141
166
209
216
163
223
249
142
182
143
280
183
193
216
178
164
252
123
199
221
208
228
223
135
112
189
196
245
200
157
260
206
288
169
248
206
242
225
236
212
210
188
149
233
143
175
238
213
239
199
230
200
210
188
236
171
194
214
174
137
138
271
253
237
214
185
228
192
192
240
186
229
216
137
239
199
211
163
193
177
202
225
155
222
157
170
245
177
175
197
202
167
178
193
226
149
246
223
227
258
283
246
100
212
166
196
233
228
221
156
174
198
208
216
260
273
160
174
141
194
186
195
216
240
152
193
237
172
239
199
215
198
229
254
244
213
198
229
179
199
178
175
241
260
172
263
173
168
208
183
259
137
146
160
189
175
180
245
185
178
184
189
170
215
230
193
210
196
205
204
191
257
176
244
170
223
175
243
242
250
144
168
201
121
213
182
210
213
146
179
226
209
226
200
226
243
297
198
213
216
159
154
221
212
239
237
210
151
248
213
191
149
246
205
255
158
184
235
166
197
227
212
161
207
198
198
226
252
291
232
217
148
206
213
213
212
191
246
246
225
198
216
215
145
190
239
162
195
196
199
170
154
172
202
235
204
207
219
225
202
138
171
195
226
198
202
169
222
150
230
206
200
212
127
152
215
213
210
201
213
258
199
158
216
207
164
239
159
194
239
211
185
176
154
171
219
151
191
182
254
218
127
171
232
169
212
138
170
224
178
164
222
174
177
216
195
195
250
149
220
179
208
203
210
196
189
232
214
107
201
156
201
161
218
165
200
205
255
190
173
165
193
235
225
174
217
181
175
249
234
182
215
212
232
256
147
217
196
130
217
183
136
118
212
227
141
202
147
219
238
177
178
259
161
241
181
182
152
163
217
239
156
143
147
197
176
219
207
206
143
227
197
172
260
197
136
185
199
196
207
237
144
226
193
229
189
234
198
156
205
205
225
228
171
170
199
206
134
168
247
174
181
175
160
185
233
252
134
197
254
234
179
226
209
165
258
205
153
197
255
204
114
239
119
205
201
240
198
205
191
178
172
231
190
213
221
191
162
216
180
203
132
210
212
230
220
148
227
204
224
272
210
246
180
268
236
244
234
201
231
225
226
245
200
223
110
146
261
213
265
214
205
221
188
178
226
213
205
165
190
238
217
192
154
190
136
205
168
235
237
152
162
238
175
160
246
283
222
175
203
245
233
152
246
256
169
232
223
210
221
165
172
235
182
226
255
228
202
187
227
187
174
245
219
256
219
198
195
189
218
197
164
171
207
165
194
203
220
146
206
263
173
206
232
200
218
236
221
251
227
203
244
224
200
256
195
156
202
200
143
183
210
185
166
255
192
241
250
233
218
135
156
152
244
236
199
242
265
158
231
163
160
194
174
164
208
212
150
172
252
211
152
166
237
163
207
254
237
223
175
198
208
161
112
229
259
171
167
149
273
153
165
200
263
192
234
179
252
192
234
143
230
208
169
243
196
161
182
217
156
212
80
220
179
235
95
163
124
264
200
217
200
205
171
233
173
157
240
198
195
233
170
220
222
219
149
215
227
195
161
248
146
218
152
215
229
186
235
247
188
167
161
240
193
204
196
250
201
205
214
194
175
141
191
209
211
177
136
224
199
209
233
224
179
150
206
168
213
161
226
218
197
244
209
195
213
216
197
227
205
226
223
162
176
197
198
258
168
224
187
140
207
140
216
164
192
174
214
175
172
223
158
175
255
153
228
252
242
141
166
190
183
262
173
203
217
223
247
141
164
192
213
224
189
213
208
190
130
148
210
205
169
152
240
210
171
243
178
192
187
236
210
188
252
239
209
206
161
190
168
264
210
232
176
138
246
227
164
199
229
209
241
205
156
211
238
157
159
141
222
197
164
243
184
205
220
207
163
195
194
177
231
193
160
251
155
193
205
162
173
209
189
155
151
201
231
227
187
164
185
208
160
211
135
199
238
244
196
198
145
236
237
194
217
226
148
217
248
161
230
173
206
203
237
209
205
188
195
172
196
215
153
187
191
201
190
213
279
205
212
196
222
190
209
201
235
186
213
134
165
228
251
240
234
217
156
210
218
216
175
145
205
203
206
157
150
226
225
220
223
244
163
239
187
184
211
227
161
160
178
163
163
198
167
230
220
134
233
209
133
194
225
231
180
183
244
238
194
254
232
153
209
219
194
173
189
222
198
193
182
252
190
170
241
187
221
161
192
206
210
208
164
172
222
168
177
257
198
239
208
156
203
184
175
221
249
172
247
255
291
163
199
180
269
200
255
249
243
185
202
176
226
175
159
190
187
156
241
167
249
246
225
195
180
190
265
280
211
192
174
245
139
158
193
209
163
174
236
215
229
228
158
232
183
137
209
203
246
239
211
191
253
177
216
199
212
228
234
145
160
158
279
177
206
191
180
218
245
211
256
220
213
149
228
173
209
181
199
139
219
254
186
185
167
252
257
189
247
211
280
186
217
196
189
223
238
186
174
200
203
217
257
126
222
196
158
212
179
187
218
134
175
156
154
207
192
200
214
245
188
127
182
158
198
228
221
215
166
164
181
186
162
258
167
216
182
252
243
217
211
168
216
121
138
261
109
177
209
163
189
226
189
164
210
205
245
239
154
227
243
210
212
150
240
214
183
230
163
191
248
207
147
161
214
179
231
194
208
161
185
252
192
187
163
217
203
197
181
207
185
198
213
209
200
227
245
176
192
183
148
176
254
123
187
181
187
228
213
147
187
177
221
211
182
119
144
221
190
206
254
212
178
139
185
198
214
206
233
136
208
192
222
143
216
206
214
233
146
221
164
173
216
163
198
181
169
201
128
201
217
207
83
159
162
211
235
226
229
176
176
200
225
205
263
210
255
145
201
230
268
188
179
247
217
206
171
205
201
142
301
190
213
181
271
261
228
185
242
167
133
226
208
175
179
208
175
208
258
207
230
131
224
134
228
283
260
198
241
224
261
152
107
241
234
195
234
173
201
289
202
154
223
204
208
239
175
205
210
183
230
202
263
247
231
191
200
217
185
250
233
252
202
199
215
223
196
216
183
206
168
202
211
221
169
234
207
234
191
217
220
235
204
155
259
143
209
132
198
163
199
183
197
188
229
179
228
228
182
222
183
173
226
240
213
212
213
197
146
197
200
177
220
193
241
170
218
198
141
168
196
200
218
180
192
219
167
176
194
171
224
205
219
227
231
165
254
177
208
159
202
229
203
202
216
233
171
198
140
190
152
241
218
198
199
220
191
196
236
225
202
213
132
190
219
133
238
189
205
233
216
197
222
249
206
218
211
177
159
242
199
214
157
202
264
210
136
187
227
201
251
221
158
230
203
233
190
194
189
222
156
223
218
198
174
228
229
251
164
221
161
232
172
218
193
160
233
214
225
252
222
212
152
140
149
197
194
152
235
234
186
231
229
231
184
207
162
191
185
195
194
141
191
232
217
182
227
187
145
256
215
195
191
167
212
234
218
219
218
122
227
221
210
231
235
209
198
133
212
196
219
279
169
264
141
174
217
182
240
175
224
242
167
172
228
178
212
222
202
204
215
217
199
231
197
153
199
181
124
154
242
153
199
202
126
216
234
209
258
190
279
155
202
230
233
217
218
178
188
261
161
257
204
186
213
164
247
270
229
174
189
156
225
215
209
186
185
196
224
243
178
181
177
177
178
217
234
194
197
192
183
163
216
234
247
161
180
194
196
185
198
196
242
266
244
214
172
207
233
216
211
186
201
187
272
170
187
178
213
148
188
223
237
104
153
214
199
226
235
202
233
217
175
237
230
207
235
180
246
163
257
158
222
246
177
174
217
194
204
216
155
182
176
199
146
199
167
209
175
231
238
219
215
186
187
251
185
239
197
193
202
202
137
149
216
194
225
220
145
229
204
206
199
156
238
229
255
218
210
229
205
121
168
249
151
187
208
155
254
207
173
223
183
193
254
154
191
284
147
246
199
191
185
200
245
140
208
219
203
160
242
176
213
170
164
217
185
199
172
143
213
200
184
218
202
198
236
227
203
168
246
259
209
209
154
219
199
225
128
109
157
231
195
176
281
182
200
209
198
254
171
217
174
230
241
217
213
209
214
225
263
235
201
225
217
202
246
249
249
218
274
181
266
221
200
181
225
190
230
167
183
215
157
177
197
249
218
194
172
218
156
268
223
189
212
197
198
162
229
187
195
195
139
204
153
195
156
205
214
197
240
196
219
163
201
192
167
175
192
224
204
238
176
274
144
183
188
203
216
270
225
207
180
194
226
200
154
269
171
197
183
242
232
227
183
214
170
171
164
252
196
157
181
184
207
158
209
211
182
176
163
226
183
223
224
199
233
203
160
184
187
212
222
202
232
184
200
218
200
215
215
175
207
190
256
219
197
139
212
202
172
198
202
156
178
231
232
223
147
236
153
183
152
216
179
235
197
181
188
212
230
236
161
230
232
226
183
256
210
133
237
241
219
212
230
188
184
194
229
205
202
189
198
211
209
214
184
270
203
247
207
224
185
240
213
212
258
224
207
175
198
252
213
206
246
190
216
189
246
180
161
285
212
218
175
255
185
157
222
168
225
184
207
174
143
208
199
178
184
136
170
256
271
196
165
186
147
192
175
246
227
164
173
203
223
203
116
171
250
213
201
228
192
191
142
197
234
227
168
218
201
125
249
243
251
175
220
191
164
179
221
163
208
209
198
233
193
170
166
142
205
238
216
157
194
188
220
251
211
203
253
172
191
228
242
206
246
241
222
170
197
196
208
218
239
213
208
170
177
299
167
218
136
165
248
199
171
249
190
219
255
231
210
180
235
204
199
222
161
235
190
176
215
199
161
152
121
192
221
161
244
153
182
173
230
173
187
201
172
174
176
216
188
186
181
174
157
210
217
143
179
215
219
184
187
193
247
222
209
200
234
203
208
206
209
216
185
200
214
177
217
213
228
137
183
175
222
254
208
249
183
189
193
182
251
239
228
250
215
246
215
233
209
163
227
186
197
229
217
186
224
192
182
184
176
240
196
210
207
198
198
193
234
271
208
198
205
247
199
155
206
170
247
151
201
226
202
207
235
165
239
191
251
256
124
251
224
202
205
228
195
179
187
244
201
229
160
184
238
108
218
239
124
137
215
240
199
260
177
159
171
174
160
146
223
154
184
232
192
211
231
224
212
209
205
156
234
259
192
123
234
182
147
167
173
215
184
191
218
198
224
214
221
146
172
185
208
188
227
132
257
231
225
223
200
220
216
139
249
205
183
163
200
232
217
171
224
263
168
187
155
227
154
223
130
255
234
197
101
155
206
213
285
225
237
226
254
238
206
237
189
204
216
143
263
150
169
207
220
229
238
162
257
215
183
165
186
242
201
184
203
226
283
201
213
215
202
139
171
180
188
241
157
173
182
221
238
191
166
155
203
225
235
212
193
260
237
204
204
194
218
236
149
233
200
172
199
228
229
223
211
224
171
275
207
211
199
251
170
231
199
162
202
183
210
233
150
181
235
209
215
245
235
202
235
201
149
198
202
248
154
197
141
135
201
219
194
177
217
189
196
132
216
219
215
259
211
225
205
235
174
175
198
220
203
157
160
179
200
146
243
179
209
156
170
143
245
247
186
250
234
195
208
190
155
169
206
186
190
224
211
265
189
185
193
209
275
191
147
193
189
187
187
179
191
199
177
111
197
212
155
199
109
178
238
239
187
195
231
153
227
173
200
178
237
206
204
176
179
260
199
123
106
187
165
224
175
187
182
228
246
184
200
157
225
168
195
183
213
176
225
253
223
200
191
177
197
297
196
196
212
181
221
165
246
220
129
161
184
210
206
206
195
216
212
220
234
230
159
220
170
185
241
181
215
198
216
182
195
236
189
230
251
167
164
176
184
177
209
144
228
156
220
201
137
221
222
183
195
213
230
221
145
199
230
194
222
193
174
206
192
179
185
238
181
164
170
234
214
222
202
203
150
269
232
173
224
251
231
255
212
192
219
259
209
199
208
192
200
208
193
215
224
219
276
201
187
162
174
170
192
193
225
197
187
232
161
230
225
238
143
201
170
218
214
185
184
207
171
204
207
187
198
195
194
250
184
250
142
176
144
264
153
220
191
248
189
252
240
187
244
240
202
192
261
174
249
174
209
197
185
179
245
275
177
243
211
185
217
148
194
165
193
149
185
209
258
192
270
227
211
233
201
207
145
189
184
199
225
209
194
211
200
221
161
235
226
170
178
115
193
187
196
131
167
189
201
231
243
176
161
154
231
225
245
212
247
238
220
240
203
209
174
175
157
220
252
240
232
224
223
200
172
196
138
237
184
200
239
224
208
203
225
178
202
174
178
186
271
230
212
281
171
265
200
212
220
177
148
236
171
193
232
157
221
175
204
181
217
164
207
155
260
126
209
123
212
211
148
215
195
235
221
188
196
273
224
221
207
222
226
250
237
168
178
190
206
195
181
175
144
269
193
150
250
255
266
249
208
175
258
187
133
168
171
169
154
258
243
187
190
251
128
221
196
177
150
212
192
182
145
177
151
220
218
173
165
221
205
241
178
176
148
213
187
227
202
238
241
167
201
238
197
225
237
197
180
228
174
230
189
184
248
203
184
166
242
240
174
147
251
195
226
230
247
207
176
175
197
199
201
241
244
203
225
226
138
105
140
176
156
193
193
208
243
141
168
231
220
213
214
191
141
210
243
190
232
202
201
220
203
227
200
184
211
230
143
147
206
161
161
204
196
231
203
233
190
187
192
223
261
197
122
176
145
227
200
222
204
205
198
149
203
110
178
174
252
186
219
194
193
202
186
175
215
216
234
137
126
199
216
208
245
213
157
172
251
166
216
205
170
150
123
186
162
185
205
150
231
158
221
246
232
201
203
190
190
201
255
166
264
164
248
245
153
286
166
197
263
193
213
188
164
169
230
185
194
229
219
232
220
163
213
243
249
175
204
180
128
269
218
246
187
198
231
157
208
187
233
206
243
193
115
174
208
213
212
217
147
216
242
189
168
120
261
188
164
196
222
229
233
221
172
185
177
244
255
217
207
179
217
255
220
245
221
226
200
207
195
214
140
212
235
205
224
250
226
268
225
193
234
221
181
201
187
218
166
222
96
235
248
216
184
229
247
179
234
152
235
225
177
177
208
184
209
227
227
204
166
138
188
232
160
179
223
173
194
226
225
198
174
216
253
202
174
155
241
291
219
212
222
177
258
211
206
159
299
192
193
246
236
175
210
183
195
181
191
159
170
161
214
177
185
158
81
185
182
127
213
174
194
186
187
168
176
202
190
198
128
183
217
205
196
189
211
137
143
227
230
219
236
259
172
235
148
184
215
280
260
149
242
217
164
242
166
242
222
128
168
179
175
223
132
177
271
186
158
195
170
224
233
140
198
146
214
199
207
208
235
188
192
161
243
197
205
199
221
157
206
249
196
188
253
156
184
223
216
140
216
270
220
212
109
194
195
212
157
176
190
114
185
228
242
135
172
206
182
246
235
181
231
179
224
177
223
208
213
188
196
233
156
195
133
208
188
187
218
242
196
158
212
173
180
248
177
169
165
197
190
218
148
199
243
189
208
120
147
186
168
233
261
243
205
160
150
171
231
192
153
257
232
190
197
202
219
245
233
192
191
235
150
157
162
222
162
215
222
178
224
197
137
121
248
209
117
120
212
196
206
192
249
248
252
217
169
160
197
279
157
190
151
252
218
197
214
239
197
214
163
165
170
206
199
232
225
215
224
229
214
270
254
190
214
205
187
182
207
181
131
164
147
207
241
184
255
213
166
235
196
121
226
192
267
166
200
207
218
207
246
192
250
184
178
210
244
203
180
150
219
194
171
156
168
220
170
196
134
168
226
237
253
206
253
160
244
204
225
142
147
202
223
253
271
156
284
225
224
205
206
218
229
183
197
251
195
220
192
171
153
135
159
232
194
164
191
197
190
227
197
226
147
248
172
241
223
126
258
269
232
239
176
192
179
192
233
192
254
169
159
219
191
225
209
254
286
235
199
198
240
208
237
222
219
172
172
251
215
202
132
152
224
179
148
184
177
159
212
155
206
215
180
180
225
202
262
210
226
207
189
159
240
179
159
190
267
214
155
252
201
243
180
247
195
139
230
180
193
216
233
203
131
233
215
156
256
208
233
148
211
156
193
219
239
229
184
154
171
166
206
170
190
156
176
179
226
164
168
235
185
197
247
208
121
214
223
230
211
193
216
181
120
140
240
195
187
146
151
163
194
241
194
148
231
232
175
169
199
165
195
213
225
207
207
118
158
245
212
248
271
247
230
259
203
242
204
226
204
240
208
175
170
234
222
135
172
211
207
113
175
162
216
190
139
238
212
168
130
147
231
183
207
249
243
235
201
159
220
242
230
163
170
158
220
241
220
212
221
231
226
156
189
214
198
179
236
195
116
255
200
143
197
149
195
172
189
165
211
211
223
154
205
152
239
243
178
193
183
191
196
229
196
203
212
181
211
163
179
223
220
146
207
146
256
133
237
221
209
222
108
181
188
161
216
245
237
205
183
163
171
243
232
189
210
165
233
218
244
199
269
147
213
213
223
151
236
144
244
260
205
246
217
228
145
265
213
136
234
196
208
241
241
223
230
108
201
161
262
160
179
163
151
198
178
189
165
195
231
191
223
212
219
169
130
149
219
149
221
220
213
204
189
284
247
144
238
195
133
133
199
219
228
160
211
193
227
224
172
192
198
242
216
238
231
171
220
179
177
161
212
191
178
185
194
211
238
170
188
196
199
135
247
206
115
227
128
186
209
209
174
181
169
228
209
162
175
234
160
195
181
180
256
221
196
165
193
219
280
231
145
201
243
186
178
226
224
193
222
254
193
215
209
230
203
281
203
200
163
250
155
153
220
192
181
202
161
163
241
205
148
154
182
248
264
183
161
164
240
258
159
167
189
170
165
150
165
220
224
226
238
227
273
193
226
250
154
194
118
189
175
186
185
187
179
166
245
192
229
197
220
243
228
171
230
192
163
156
151
210
211
290
217
183
152
207
157
177
178
208
205
215
158
224
150
172
183
147
218
268
140
196
193
179
168
163
209
151
192
226
231
252
257
177
184
225
185
249
215
193
189
289
232
160
212
191
167
226
233
143
203
244
187
198
182
210
195
195
233
189
209
246
187
216
189
201
254
230
184
212
213
179
133
140
211
227
204
180
192
207
253
168
176
215
164
177
268
154
236
253
211
172
199
193
165
173
183
213
205
216
233
240
266
207
189
210
206
228
178
225
251
242
189
193
269
158
172
203
184
142
205
189
237
219
252
168
202
248
228
201
198
193
187
171
194
243
144
211
146
174
190
234
162
214
156
246
194
233
177
251
254
217
159
190
173
252
158
143
185
204
258
170
203
220
179
171
230
219
173
183
192
181
279
203
193
234
231
231
208
208
207
205
191
171
139
203
193
163
236
174
242
225
201
188
221
202
209
181
181
122
267
236
153
195
227
224
154
149
175
207
170
190
140
243
161
198
251
168
170
172
207
238
208
194
201
193
176
289
221
182
226
215
241
169
214
212
200
175
194
229
184
254
215
248
228
161
241
215
237
129
236
228
196
194
228
172
241
192
151
223
148
234
209
246
139
159
221
216
217
240
222
148
158
185
255
204
228
190
194
219
231
225
192
260
246
182
171
211
255
201
210
255
217
260
133
137
241
238
229
124
164
208
241
243
248
203
248
234
188
200
247
149
228
207
178
179
255
218
210
198
245
203
148
190
219
180
200
225
226
171
212
214
201
250
239
210
210
185
197
204
203
218
190
208
259
183
193
193
226
169
174
200
212
237
167
160
171
213
237
186
174
232
186
152
142
158
207
229
143
266
238
282
172
184
210
219
188
229
165
195
186
193
220
233
215
205
192
203
222
194
210
238
241
167
182
130
150
236
191
218
185
237
206
194
215
171
208
224
191
155
263
251
144
212
221
178
137
142
202
231
243
216
192
178
205
289
154
184
163
235
191
204
151
139
187
210
226
242
186
162
260
171
248
182
198
267
133
229
276
156
207
243
197
220
183
190
178
173
216
159
254
184
188
168
227
192
238
219
199
197
150
253
227
173
200
223
164
191
118
206
146
197
257
237
245
163
229
199
184
195
165
228
183
210
145
190
191
204
209
224
271
178
230
142
253
233
264
172
198
225
187
254
188
234
241
173
201
188
208
191
203
227
215
246
179
229
192
204
195
210
199
244
174
164
222
183
180
143
186
227
201
241
187
184
246
261
232
198
172
190
229
163
169
210
221
213
176
147
170
227
206
184
235
185
89
238
185
223
198
122
194
195
172
241
185
232
216
155
175
249
229
163
233
190
138
184
188
239
195
240
211
222
198
84
265
189
224
156
181
177
182
258
209
171
202
205
184
212
185
188
176
134
101
205
200
218
240
235
197
206
221
201
208
171
208
217
237
242
164
228
176
242
251
191
186
181
162
176
204
140
214
178
185
157
158
239
233
179
218
212
200
205
209
205
235
207
156
201
188
216
177
192
214
166
249
192
169
219
224
168
176
210
221
239
195
238
163
153
196
159
203
218
194
239
202
191
198
170
221
178
210
256
191
233
197
246
175
216
175
207
260
211
164
230
205
197
260
215
180
217
180
233
167
182
160
219
198
212
193
223
206
197
168
212
201
202
190
196
154
213
173
254
148
220
196
275
163
178
238
151
214
189
209
179
218
211
162
151
218
224
261
202
278
223
233
215
138
144
278
179
246
208
214
255
201
220
243
153
206
192
254
223
184
192
154
194
230
237
202
235
228
227
186
189
161
204
216
161
221
251
168
146
236
119
150
219
213
198
150
240
175
178
180
150
187
207
174
222
235
205
181
198
219
174
180
218
204
215
208
160
237
234
227
221
163
220
185
192
217
195
150
238
212
168
203
127
199
189
200
271
203
209
142
230
242
117
239
246
194
182
194
181
224
214
221
124
142
192
175
186
252
201
263
213
240
140
262
229
231
228
135
243
209
209
216
211
193
188
237
229
182
190
177
221
200
196
203
212
213
166
206
204
240
189
216
223
271
209
224
178
202
156
227
181
188
195
242
262
231
195
177
207
111
225
192
197
144
190
197
170
229
182
167
252
142
158
184
193
167
220
239
168
184
252
151
208
199
167
182
260
161
247
204
175
213
260
160
175
152
209
293
254
266
229
205
235
217
219
167
276
204
176
143
181
165
187
252
226
203
181
190
203
226
220
220
200
169
111
181
234
204
191
219
211
185
143
292
247
152
237
190
253
195
186
242
136
154
209
237
253
217
280
144
213
265
174
234
143
157
206
161
222
264
215
192
214
249
138
106
229
196
200
172
221
268
170
181
121
201
183
138
171
171
207
209
256
182
185
219
203
271
230
183
169
165
206
231
246
166
216
173
239
165
187
154
189
174
247
171
212
218
184
206
177
234
237
224
184
252
160
223
207
241
119
240
189
182
184
180
208
241
194
208
208
193
190
260
179
164
212
206
163
213
182
236
192
224
203
210
150
209
213
262
167
232
177
208
217
145
205
242
178
207
221
160
178
232
225
157
185
208
157
117
214
167
153
217
247
213
227
182
193
205
178
118
181
217
235
123
194
211
222
165
166
194
215
179
189
248
149
144
166
210
232
147
189
228
175
216
228
196
235
181
238
196
156
237
195
115
239
186
178
238
211
241
184
155
251
235
218
172
193
313
197
243
234
187
230
205
156
225
122
204
165
279
193
209
152
197
202
182
189
202
231
242
210
173
179
179
226
237
242
227
177
219
180
251
232
182
216
222
182
199
168
156
238
172
131
134
171
163
208
210
180
223
250
239
215
190
218
153
219
183
175
234
192
152
203
196
201
262
159
159
219
141
200
181
230
197
197
246
195
134
203
227
254
162
245
210
217
183
147
220
164
215
209
188
220
207
226
174
208
221
180
205
286
229
146
184
228
251
232
195
169
189
247
226
219
281
186
203
146
208
175
166
258
199
231
206
160
220
176
272
189
242
239
253
251
214
135
162
231
221
175
254
169
230
200
233
272
154
219
205
278
234
212
223
199
214
259
151
237
212
227
237
197
220
181
191
145
254
127
189
160
195
189
188
180
235
200
222
191
210
199
149
199
202
137
157
178
235
188
193
220
172
247
185
175
180
271
161
198
198
156
243
221
220
83
179
194
252
191
191
230
177
185
148
225
144
190
244
190
186
257
257
230
223
194
217
162
184
279
189
209
212
157
201
185
202
202
207
210
201
170
183
224
119
191
237
246
213
164
168
208
171
219
122
207
208
166
142
123
226
221
164
258
248
229
227
174
193
228
182
250
226
211
159
172
188
213
173
202
247
167
215
138
156
177
164
204
238
134
268
187
226
194
219
217
192
202
149
173
141
254
185
212
199
182
199
202
238
218
233
209
178
225
216
185
198
242
172
237
182
201
172
149
242
133
189
215
146
191
214
163
204
160
158
224
195
183
124
179
210
217
218
150
208
181
194
164
196
203
201
168
224
138
236
239
168
193
206
214
176
289
250
202
286
158
226
242
212
160
204
289
235
236
185
141
205
204
231
213
180
210
177
161
160
236
213
220
224
240
153
174
215
201
231
204
214
262
201
226
202
140
227
214
195
259
143
194
203
189
196
226
254
195
208
221
153
285
149
237
158
186
201
197
214
186
180
170
168
191
137
251
227
189
180
166
129
221
248
255
223
193
193
232
218
244
157
222
184
148
195
230
174
227
250
226
193
201
178
218
166
149
131
206
224
234
182
246
210
197
227
133
224
202
179
207
278
247
166
207
206
172
250
206
200
201
222
158
163
233
189
225
201
219
139
192
224
193
164
184
223
220
223
271
197
172
185
208
223
134
253
193
268
241
144
223
201
201
194
212
194
185
232
174
183
145
256
244
211
147
174
182
204
153
256
223
236
155
245
112
187
217
207
179
138
190
167
261
173
166
206
235
182
252
182
187
159
225
185
155
242
196
199
238
255
227
133
192
174
194
201
185
287
230
218
206
185
207
229
204
137
212
163
195
220
189
245
204
213
181
211
200
200
226
161
243
150
191
274
222
195
267
212
169
212
236
172
155
225
199
235
245
188
201
260
197
188
242
190
166
190
143
170
158
208
178
214
162
198
208
178
201
187
121
209
211
216
173
136
191
200
186
149
213
220
182
257
198
215
208
220
219
207
225
200
164
237
205
230
221
254
211
261
188
159
208
171
232
203
145
176
186
200
230
161
168
146
116
225
164
186
141
221
290
233
244
216
234
178
195
211
192
209
242
171
178
185
113
182
244
140
228
167
237
171
158
232
177
207
161
233
204
214
178
213
233
221
133
198
191
227
230
188
188
236
167
172
194
196
196
189
155
196
183
172
254
245
235
138
182
160
188
209
228
154
223
225
177
182
240
238
207
181
171
137
218
206
240
221
239
227
239
220
119
215
158
221
208
203
206
204
193
213
197
258
152
228
186
194
165
223
205
195
171
171
197
189
207
185
166
251
155
160
138
239
202
204
193
204
212
158
202
196
231
172
165
252
200
189
244
178
186
186
187
179
212
167
228
195
236
244
231
263
145
224
228
149
195
184
269
172
199
224
164
217
195
239
208
223
157
145
252
179
197
176
154
202
109
168
171
207
184
282
204
171
212
214
185
216
148
210
193
245
169
209
208
187
179
173
202
193
177
199
155
204
198
125
251
200
227
197
188
200
214
243
182
174
284
188
178
172
260
197
248
216
217
195
249
194
226
219
247
239
243
146
220
203
209
164
180
185
215
232
224
249
206
183
208
161
175
154
231
220
257
176
191
188
185
170
203
229
171
222
158
164
209
287
177
149
229
245
201
153
137
199
199
246
148
190
204
225
217
237
146
233
217
248
244
164
189
210
227
246
229
234
180
197
235
166
256
260
155
158
178
200
147
153
152
233
239
254
248
195
198
207
222
200
168
224
199
204
192
143
192
195
162
158
230
242
197
217
140
189
200
172
245
202
207
255
119
201
149
125
138
182
231
218
162
217
183
229
201
154
161
211
171
254
142
206
175
237
214
198
234
205
237
157
230
196
204
222
194
216
162
239
168
195
152
160
219
207
203
126
214
261
227
200
187
274
238
226
108
170
144
233
176
162
160
238
166
218
165
132
175
140
139
170
264
124
226
147
262
193
204
241
263
122
230
259
217
163
220
175
254
225
250
263
239
248
176
255
183
213
192
186
161
215
248
193
233
203
305
144
219
217
223
196
196
211
215
262
99
262
184
157
156
173
198
177
200
200
106
196
221
224
179
252
203
245
186
241
136
200
193
168
235
241
224
140
248
231
189
215
207
274
252
216
224
227
169
209
178
178
206
214
214
194
211
164
215
185
198
266
217
171
206
202
209
174
215
175
207
229
214
170
206
228
191
203
194
197
240
191
190
138
215
227
207
207
233
179
210
203
171
233
193
146
111
197
243
178
185
265
193
131
218
176
177
214
223
190
210
248
255
172
178
187
241
152
193
201
227
175
182
223
179
220
207
149
243
211
188
157
180
219
230
235
197
209
203
219
178
208
180
186
237
203
219
233
189
177
201
262
141
205
166
172
149
176
179
172
175
164
256
215
225
223
258
171
234
180
152
180
241
191
178
207
162
223
188
252
224
247
168
197
208
228
150
209
214
202
190
257
188
196
151
225
153
209
189
172
181
211
184
198
151
244
236
188
193
211
214
214
251
220
171
232
239
236
222
180
200
220
188
130
187
221
208
187
199
172
237
198
185
217
228
155
178
232
189
173
176
207
220
225
245
201
245
162
170
238
223
190
191
218
262
192
136
198
187
162
243
246
141
195
186
229
201
210
189
271
196
268
154
170
180
188
154
225
182
260
203
253
106
236
203
239
156
198
213
150
232
174
248
234
205
124
107
273
241
137
180
210
231
206
263
216
150
132
180
209
189
221
217
235
158
248
146
205
198
215
238
222
191
131
264
176
191
201
172
154
160
220
171
227
202
184
186
208
233
176
205
237
167
227
205
206
216
145
190
171
135
250
181
236
248
240
213
134
195
188
139
224
191
191
225
191
206
192
169
236
149
249
192
128
173
176
213
178
202
180
213
176
208
156
196
156
220
211
263
175
179
197
208
237
240
137
185
200
225
188
255
205
211
194
179
187
211
228
148
209
200
141
194
265
238
234
211
186
194
225
221
162
184
147
271
204
245
168
219
182
168
246
260
197
151
229
255
218
152
230
233
221
204
187
226
236
164
221
143
257
267
132
181
133
184
153
241
262
216
196
156
261
180
138
183
180
187
164
252
240
201
238
169
258
142
258
167
206
255
211
189
237
224
237
221
182
219
234
232
156
223
241
215
214
180
220
173
155
179
208
237
121
167
217
188
213
212
221
154
151
136
205
234
227
202
168
168
237
239
240
153
134
159
240
177
219
214
248
229
229
209
217
264
229
207
145
204
316
151
243
263
237
221
220
191
235
216
180
195
156
187
183
181
161
154
230
213
285
180
206
231
208
171
199
162
216
159
277
171
135
269
197
163
211
195
197
173
175
236
157
184
235
167
203
249
218
222
209
188
191
230
178
220
193
245
186
212
223
206
212
207
212
217
208
166
196
178
246
226
194
203
152
245
255
196
199
175
147
250
145
305
227
246
251
218
194
255
242
170
180
143
266
231
179
221
255
224
194
210
215
179
194
208
145
235
228
200
272
174
166
240
128
182
153
180
186
197
229
178
189
254
201
200
202
207
205
203
201
231
165
236
220
166
194
200
154
228
247
191
181
194
148
173
231
182
159
219
141
260
165
187
201
178
197
202
225
228
237
279
199
211
248
205
194
188
285
153
211
194
165
230
192
197
211
183
211
219
251
203
184
183
229
201
201
203
233
257
144
222
197
208
203
156
159
234
241
212
147
165
159
194
243
239
157
144
186
192
191
189
192
184
226
220
251
197
260
220
219
206
209
188
171
236
157
166
202
165
170
190
240
155
207
201
229
212
229
184
94
244
208
145
228
239
183
224
235
211
143
258
217
227
211
197
160
161
226
211
210
217
158
209
190
177
178
249
237
195
198
181
185
155
177
158
261
216
182
195
205
183
226
183
259
218
189
246
204
272
209
180
178
218
196
193
154
201
243
190
170
221
181
250
172
185
182
187
212
153
223
215
223
275
185
216
221
160
216
225
143
159
170
194
197
252
216
156
190
250
213
228
198
225
173
149
299
175
144
169
248
167
156
154
207
213
218
233
139
184
206
206
223
228
251
179
153
179
201
184
158
146
169
211
179
226
201
142
245
243
194
179
185
198
203
204
230
200
148
189
217
198
190
230
198
194
207
135
238
233
226
193
126
177
207
203
236
192
247
219
191
165
164
167
189
206
183
186
155
168
232
197
197
197
198
188
179
196
198
195
188
143
211
205
176
180
220
168
154
119
221
247
151
219
189
164
224
156
205
186
173
262
189
147
189
201
213
176
222
270
208
246
208
182
120
212
146
177
175
181
159
204
183
165
168
161
224
237
162
242
167
225
239
212
197
172
234
188
170
208
197
246
171
217
213
214
229
203
194
225
153
256
213
199
229
163
208
210
260
205
186
190
182
162
195
270
148
246
105
163
181
269
265
185
224
170
196
129
240
195
199
165
255
171
196
245
235
216
181
201
189
204
218
149
241
189
187
168
207
214
216
215
250
228
210
194
200
113
243
208
240
250
240
128
198
144
208
195
237
200
184
194
218
179
137
200
202
183
188
213
210
218
224
147
244
250
229
222
157
178
172
250
223
159
183
228
175
185
204
235
132
206
173
168
172
245
154
182
187
213
236
182
127
158
248
161
245
197
168
194
175
175
196
177
239
215
176
248
159
208
248
166
241
216
199
228
189
190
172
175
203
150
185
202
149
246
193
133
175
208
195
249
211
277
207
212
232
220
198
166
236
209
231
169
232
231
240
218
194
221
236
209
225
185
226
157
213
182
194
212
181
182
182
263
234
275
169
253
244
188
250
188
127
189
146
192
225
239
261
226
243
261
181
197
240
154
184
202
193
184
189
171
215
169
219
230
176
212
184
168
227
165
216
240
214
187
218
192
201
216
219
176
216
156
170
262
165
172
159
155
197
249
256
194
191
185
237
171
148
218
118
234
240
185
193
222
230
137
219
147
202
143
160
228
187
234
192
190
251
241
196
231
215
245
216
161
207
209
193
170
213
232
189
216
203
199
238
266
167
156
155
239
226
245
243
246
180
230
246
177
189
236
195
214
199
247
222
259
180
229
233
207
198
246
155
208
188
164
203
249
240
171
213
176
212
224
197
188
174
249
272
271
196
228
225
257
211
224
205
223
165
228
183
196
163
208
189
155
252
223
217
207
174
234
221
206
184
230
189
239
219
198
160
223
184
253
215
174
157
173
269
205
154
267
195
199
176
221
204
135
185
181
129
198
223
196
166
206
189
249
214
196
252
193
197
209
196
192
194
220
204
160
216
206
239
200
144
167
216
121
249
138
147
162
238
233
182
224
167
190
218
145
219
230
233
214
196
210
246
235
181
207
203
188
224
201
168
184
193
220
164
224
168
192
232
210
156
206
226
226
263
228
238
186
204
202
174
182
210
154
224
242
194
183
248
223
193
212
166
133
163
211
159
203
187
218
195
200
182
207
172
126
253
291
210
230
178
262
199
197
270
265
210
158
229
160
241
176
182
231
223
204
191
157
153
183
236
184
172
176
213
150
236
150
172
204
238
194
237
178
258
218
176
204
199
184
166
200
167
163
294
201
263
178
234
235
202
159
216
179
150
232
190
144
224
187
179
195
189
183
210
187
219
212
239
240
174
238
178
216
221
187
183
218
240
165
167
179
133
226
168
233
240
224
137
220
164
158
176
270
183
157
256
237
154
259
199
174
207
200
191
224
219
193
263
164
167
174
159
198
207
186
150
186
232
213
207
110
204
178
185
166
203
160
141
208
229
226
190
187
166
144
213
196
189
206
201
201
201
217
231
255
191
223
195
215
240
191
171
260
260
183
215
200
236
285
157
267
186
194
209
142
189
183
138
220
183
140
161
223
151
243
169
163
212
206
241
239
217
237
249
228
227
227
232
179
192
202
208
196
240
200
181
267
188
191
216
204
253
197
209
239
183
167
187
250
215
152
165
285
296
175
201
217
211
208
234
226
194
250
250
196
140
223
169
165
161
215
252
185
203
175
183
190
193
192
236
253
165
263
156
196
170
226
218
231
193
167
187
188
206
233
200
230
205
209
181
236
216
156
175
213
181
259
206
256
221
215
255
191
191
208
164
244
161
189
189
241
233
235
197
242
228
178
143
147
200
180
196
227
248
204
152
215
244
229
184
211
183
191
210
232
214
225
244
179
204
202
213
228
254
209
225
187
153
209
193
200
197
219
183
234
205
176
201
173
223
161
191
216
247
212
168
153
228
185
173
209
213
194
173
184
210
251
193
187
167
229
200
245
171
176
242
174
215
144
208
233
147
221
217
162
210
184
169
154
192
208
213
187
238
149
216
154
163
246
139
174
150
195
182
172
213
190
201
183
202
189
175
221
217
201
244
184
140
201
183
259
157
226
192
265
144
227
216
203
189
136
163
238
190
236
182
212
200
218
140
261
168
150
173
215
193
200
199
209
197
254
254
169
179
174
205
210
231
242
226
225
207
195
202
204
152
173
162
179
204
253
134
153
168
190
235
186
174
207
207
216
201
162
167
222
228
126
179
249
243
196
195
249
158
208
202
265
176
172
171
207
180
259
140
211
202
192
198
233
259
162
268
179
153
241
193
180
170
252
170
177
235
228
161
229
194
223
176
192
202
153
238
167
170
239
180
142
189
230
190
205
196
245
237
203
164
177
189
204
247
198
191
193
220
225
204
201
205
226
201
147
161
189
149
197
245
152
212
196
170
217
251
195
180
236
231
176
227
227
287
232
205
207
196
219
223
224
193
267
171
144
156
146
174
208
169
247
201
206
194
209
224
188
266
243
169
194
193
201
144
179
233
236
193
160
231
183
181
189
209
175
223
207
192
200
174
251
113
240
224
202
184
252
231
158
257
188
156
260
197
196
145
190
152
143
222
212
149
142
194
140
192
186
196
186
187
96
151
207
217
269
211
172
167
107
207
221
199
137
243
304
194
248
157
178
147
241
198
181
213
192
214
177
175
197
186
201
202
202
248
260
219
195
163
139
182
265
286
203
208
182
171
161
228
206
229
224
203
157
141
235
141
201
231
194
223
184
158
229
217
154
225
235
225
209
218
155
220
161
189
183
199
221
160
205
217
223
238
191
215
193
183
196
238
186
127
184
231
215
256
121
201
235
185
216
155
208
217
226
244
199
258
204
208
216
247
169
225
247
253
228
195
249
201
212
165
257
176
166
135
146
168
166
248
167
174
167
183
191
118
247
136
186
142
232
186
283
233
168
165
230
209
195
223
166
258
229
264
223
221
251
209
190
215
260
235
221
228
179
175
209
190
185
203
200
234
183
222
207
198
250
199
236
149
310
203
220
272
191
248
225
236
163
183
237
206
219
167
204
198
212
178
207
269
186
142
232
215
221
179
205
161
185
191
194
159
244
199
205
196
191
198
165
204
225
140
218
196
233
190
199
172
189
174
148
171
217
237
196
184
210
213
196
147
266
232
199
242
214
232
222
173
133
214
196
193
206
227
160
251
202
167
175
152
179
172
129
213
177
202
170
226
212
174
237
174
213
224
170
196
172
195
214
217
195
234
172
163
213
169
193
203
165
191
194
208
192
180
158
151
183
242
198
249
245
231
246
176
252
199
274
234
278
190
204
171
183
190
175
202
213
157
198
196
110
192
178
228
204
179
217
232
197
147
190
196
183
241
186
186
173
245
240
216
203
250
258
219
225
215
201
232
218
187
199
165
195
229
136
177
178
211
196
189
237
212
213
163
218
234
224
233
139
202
127
176
189
254
255
222
178
148
274
133
231
240
212
225
209
214
241
158
187
216
216
157
257
197
216
227
178
269
190
175
230
152
176
226
149
225
192
183
223
208
196
203
244
172
219
231
164
202
170
217
250
193
186
194
216
250
225
211
208
223
234
213
186
243
125
201
270
219
159
149
231
228
297
183
209
172
210
173
159
178
195
184
204
192
141
186
132
221
183
202
194
188
213
157
276
185
220
198
204
228
243
216
102
233
224
211
245
223
225
197
188
256
199
202
165
226
186
189
135
169
245
179
204
187
236
209
213
178
234
265
188
175
198
231
162
169
207
206
163
238
212
173
201
163
177
201
222
199
224
207
194
232
217
197
187
193
195
190
154
206
237
254
190
204
179
169
205
133
207
266
213
212
224
213
213
156
218
158
167
211
165
183
222
175
209
221
245
211
232
191
186
196
146
173
156
219
136
167
183
237
185
197
213
207
198
235
172
219
218
205
161
202
133
256
149
177
186
239
196
251
171
196
227
188
183
214
122
166
177
208
250
237
184
207
159
200
209
214
218
172
192
259
153
172
208
145
245
215
238
187
155
223
212
180
161
214
218
191
176
235
189
240
237
186
296
161
135
228
186
232
223
203
162
279
193
245
189
163
187
160
175
152
185
203
199
256
145
226
170
263
238
232
238
177
265
191
231
195
240
175
184
210
148
194
209
262
165
233
168
218
179
191
181
138
166
190
203
188
163
233
157
184
170
174
258
210
227
145
215
226
183
220
186
195
176
235
218
176
104
239
248
173
195
175
209
197
204
214
149
226
196
130
142
260
228
203
188
211
196
234
174
177
149
213
201
221
195
136
175
234
246
257
251
221
247
226
198
240
250
182
167
195
229
268
252
230
183
170
189
202
202
172
142
214
246
213
110
196
213
213
220
150
191
215
165
218
225
167
227
209
178
211
150
196
197
236
257
142
213
161
207
189
187
199
200
211
233
171
185
166
250
176
125
186
133
205
153
226
180
140
167
136
171
172
153
245
217
181
189
169
181
216
185
245
194
234
253
183
220
152
176
211
245
232
180
184
252
184
220
214
224
156
176
265
245
180
225
191
247
152
155
194
196
198
206
171
204
157
236
168
145
201
223
207
204
213
206
181
186
151
241
215
229
222
197
144
234
221
194
116
196
201
163
193
114
224
212
233
231
199
246
208
226
231
151
239
207
185
191
172
148
159
222
153
220
155
197
112
193
279
208
182
201
204
214
230
214
200
167
208
219
220
240
261
165
177
235
167
252
197
222
174
195
203
183
217
207
202
184
244
168
264
178
166
188
227
221
176
207
219
184
179
242
179
228
265
218
181
235
200
202
195
246
183
214
88
210
162
166
212
211
185
216
177
206
229
202
141
223
183
157
166
226
206
210
191
146
217
229
204
238
185
178
147
225
226
213
202
271
195
187
235
231
172
139
239
251
184
201
155
174
208
195
232
219
174
162
184
192
218
201
226
176
159
176
163
183
180
188
178
198
199
172
240
191
211
237
200
180
243
213
182
217
164
179
124
178
245
210
204
181
182
173
151
187
210
212
194
201
233
237
206
161
150
237
170
222
209
147
193
198
164
191
173
269
262
162
175
247
170
229
232
226
175
180
166
179
211
218
208
191
229
214
183
239
155
259
219
207
177
232
203
174
117
190
218
199
163
205
216
226
144
244
176
226
172
181
176
197
243
199
222
182
185
183
206
295
246
157
206
171
140
297
255
132
202
185
223
159
217
154
166
236
211
196
186
161
194
205
227
200
204
261
216
167
160
210
215
174
121
160
212
185
169
234
265
188
194
213
242
187
159
163
173
151
208
259
160
211
113
223
219
201
159
231
233
188
202
284
243
179
203
219
205
221
203
203
213
215
188
199
244
212
149
172
169
237
236
271
231
122
168
199
221
218
154
242
186
186
204
232
172
188
234
211
212
200
140
192
155
218
147
235
228
203
205
206
217
128
227
167
209
160
130
104
244
178
163
197
164
217
206
177
205
211
170
189
211
200
138
174
222
166
216
260
179
188
186
236
226
130
193
167
155
206
112
218
209
181
200
159
219
183
171
129
166
178
195
202
178
153
195
208
207
195
157
206
248
190
230
223
250
230
165
198
246
174
198
157
170
214
206
88
174
163
233
118
260
209
172
148
179
154
208
233
145
192
194
190
201
230
133
227
134
242
253
233
207
223
211
169
212
272
201
201
232
190
201
198
221
247
204
220
208
228
149
235
201
275
218
186
218
246
174
109
198
178
167
165
221
199
215
259
211
184
240
206
240
231
192
186
162
202
198
191
191
221
196
107
178
254
166
234
238
264
250
174
227
215
157
222
198
222
145
154
212
190
194
154
182
154
178
195
233
244
180
177
152
190
202
135
211
194
217
161
183
160
201
174
210
217
247
128
220
223
209
230
230
152
219
146
235
211
204
188
195
223
140
152
247
208
217
181
191
228
166
272
224
146
143
200
202
217
168
212
187
187
190
170
187
259
212
231
188
230
191
199
208
187
245
249
209
248
206
173
209
194
194
139
165
157
204
152
183
199
174
175
150
235
165
210
155
226
238
254
160
223
181
253
155
157
195
158
197
202
193
176
266
211
211
195
209
204
141
214
215
215
210
224
201
127
173
183
217
209
220
252
215
174
222
165
201
193
247
180
255
195
187
231
156
213
174
216
191
185
85
224
165
213
182
190
198
216
148
215
248
153
247
231
193
216
191
169
157
218
218
171
150
229
213
191
250
200
208
172
167
128
238
171
213
172
210
187
201
193
221
183
192
135
250
154
211
202
202
271
208
267
243
172
219
184
181
155
221
187
237
116
192
205
227
149
255
222
195
225
193
207
212
233
183
117
184
235
161
195
257
226
218
202
158
177
204
259
167
253
180
236
249
173
185
145
145
173
228
248
172
204
217
167
202
205
217
157
206
100
231
193
237
269
193
219
178
176
243
196
137
214
192
149
232
141
202
194
147
242
142
211
268
213
210
200
238
210
227
221
213
238
202
217
239
238
240
193
260
233
245
226
235
205
167
186
198
178
181
273
224
180
227
146
132
207
209
170
196
213
185
200
174
184
199
205
244
225
234
229
197
210
173
236
268
118
234
209
234
172
209
228
198
230
195
162
242
159
236
154
237
216
138
223
246
130
185
195
182
171
264
208
268
224
154
167
254
177
261
160
112
176
247
185
144
202
204
202
178
178
250
259
181
193
209
234
239
197
188
233
125
185
182
155
180
205
185
216
168
215
190
199
167
234
223
177
253
184
268
190
209
233
167
258
140
170
189
188
107
286
200
245
219
230
180
190
208
198
247
211
180
212
145
187
184
229
201
242
187
181
192
196
206
237
222
220
225
154
217
212
183
157
224
209
184
218
195
192
251
170
189
228
200
175
220
250
197
182
190
207
194
200
205
248
278
177
202
202
171
181
197
193
179
210
155
218
215
159
221
134
157
243
220
174
192
196
209
146
161
225
194
238
158
197
210
215
153
189
142
198
237
215
163
196
240
239
153
162
214
155
147
143
271
182
211
225
217
231
149
197
182
203
173
237
197
143
222
166
219
132
230
221
209
190
183
243
186
162
188
213
216
181
232
213
193
174
170
219
180
236
176
90
122
198
202
159
156
216
199
205
241
212
166
187
237
160
154
195
195
216
234
182
195
233
187
177
206
190
143
180
246
264
210
207
202
255
181
255
165
150
147
220
258
178
201
234
185
207
209
145
152
208
229
233
158
193
215
214
225
200
176
140
149
222
216
234
188
139
214
245
193
138
189
128
215
285
142
203
228
246
249
155
151
181
194
221
244
226
258
185
205
191
256
232
262
142
171
167
185
177
175
198
233
197
268
206
150
205
211
206
207
234
246
226
218
148
238
175
200
181
168
134
219
227
242
214
184
199
194
206
243
205
193
197
91
219
164
183
251
228
220
216
180
163
185
179
152
218
238
248
175
226
212
225
192
180
219
183
234
210
189
177
225
248
219
195
231
178
212
189
178
122
297
213
182
219
200
186
219
269
178
189
186
228
202
176
220
222
150
148
188
198
197
201
206
195
208
151
183
197
170
210
227
178
157
219
128
214
251
210
195
200
216
186
197
290
185
207
203
201
192
205
230
183
208
229
125
237
211
166
202
204
227
211
173
174
246
186
160
186
218
230
198
204
258
185
189
222
207
258
209
250
195
222
200
222
221
230
186
208
221
176
166
196
163
172
194
145
206
231
223
227
237
247
209
205
257
188
185
229
251
242
239
151
177
222
200
167
196
163
230
163
174
156
219
199
226
206
163
170
182
236
183
195
168
249
142
163
243
224
234
214
223
190
218
149
196
178
218
211
248
281
220
215
227
126
195
244
171
220
215
193
200
164
139
216
198
229
211
193
164
173
200
224
136
208
177
249
144
180
206
224
162
237
239
219
210
202
180
228
228
159
155
225
203
160
188
203
202
250
187
129
198
163
208
201
211
221
235
198
181
208
197
187
155
208
202
255
216
194
200
249
223
178
215
282
191
205
217
218
250
215
170
194
198
171
215
148
191
243
170
217
192
169
176
210
242
203
194
210
197
215
224
185
213
238
178
220
215
192
219
184
224
235
254
229
201
207
212
213
162
162
244
142
208
194
228
206
225
216
259
212
152
259
179
192
241
177
265
174
185
211
150
253
133
199
261
217
247
217
220
217
251
178
169
194
166
219
228
220
207
239
233
236
187
133
207
187
143
196
203
157
221
221
205
225
160
217
169
192
161
216
210
233
248
202
174
137
191
201
203
161
169
139
187
171
207
228
211
272
191
157
206
140
188
181
134
171
214
195
248
135
213
229
227
204
195
237
207
165
224
282
193
248
227
218
199
205
173
162
248
208
177
201
197
266
199
225
174
209
193
206
216
248
228
164
205
196
199
261
187
223
229
251
192
207
242
160
173
218
238
172
150
175
191
194
188
166
229
203
191
189
213
226
198
200
225
238
191
253
145
181
225
197
216
148
209
184
163
208
170
201
168
201
209
207
252
212
189
215
258
122
186
199
211
170
204
211
209
193
204
206
178
246
255
168
263
223
182
169
150
231
219
153
118
233
216
154
224
122
232
187
150
213
157
174
178
161
250
215
190
207
225
186
161
268
223
116
243
125
220
211
194
176
244
180
215
218
231
232
176
179
241
225
221
177
216
172
264
206
218
191
167
229
209
248
181
202
159
161
191
228
212
278
159
209
192
183
216
131
226
140
192
209
163
243
189
192
192
173
215
231
172
253
241
181
230
182
158
241
120
208
242
151
136
196
220
183
175
230
191
200
184
199
161
127
185
241
192
158
230
147
167
276
222
148
153
191
155
172
239
188
187
188
183
194
228
170
167
200
141
222
213
219
218
216
173
197
192
265
202
196
230
252
213
131
219
159
164
214
210
198
184
214
225
168
179
137
197
236
212
195
175
255
174
224
220
148
228
215
236
176
202
192
195
207
272
178
156
183
236
228
210
191
251
196
251
207
231
113
166
142
151
252
174
229
207
241
235
197
144
201
79
211
185
160
177
193
152
159
184
162
207
250
233
223
210
178
239
177
245
238
227
192
79
146
225
199
157
181
221
197
184
233
184
243
215
181
209
217
210
137
165
171
197
190
264
132
180
153
205
156
263
147
217
223
257
182
217
163
162
156
183
243
213
212
231
204
224
213
196
210
231
242
156
161
243
178
252
160
150
251
194
193
177
166
196
200
161
228
189
225
219
209
172
248
181
210
222
238
218
232
282
261
220
205
245
152
178
197
208
161
227
206
195
274
157
216
210
173
183
226
200
232
191
108
258
198
186
163
167
174
161
183
239
141
232
184
283
210
166
249
154
238
182
231
213
209
229
143
191
188
206
219
168
177
187
91
205
213
186
242
113
193
241
172
150
230
220
169
146
186
220
237
232
241
242
154
168
163
251
162
233
248
201
180
186
241
223
224
190
251
152
235
210
203
182
136
130
219
220
233
221
216
207
158
199
244
223
274
239
192
264
217
203
198
196
155
188
204
210
186
209
199
210
206
148
209
257
181
201
216
262
165
158
183
157
171
256
185
140
148
154
168
192
222
247
161
236
225
182
204
235
255
177
213
201
131
154
204
149
216
182
169
204
229
227
198
150
193
197
168
125
234
231
177
191
157
167
125
168
221
186
148
205
257
167
218
160
188
217
211
203
211
224
179
276
190
163
192
218
223
250
190
242
245
196
230
228
84
187
227
217
184
163
183
210
223
176
186
152
196
220
166
222
227
207
238
174
129
200
220
216
166
166
181
185
202
187
205
172
157
180
193
192
180
174
239
198
241
175
178
244
247
252
184
208
136
191
203
196
233
175
164
194
201
190
241
208
212
207
152
153
193
207
168
198
175
206
251
190
137
257
167
260
210
222
157
192
148
169
205
240
197
178
232
169
179
216
204
214
194
251
196
216
256
261
254
188
239
168
137
286
215
139
202
184
228
160
192
184
194
181
160
179
200
142
176
222
182
231
171
205
146
240
157
191
252
165
188
168
218
215
232
168
195
241
218
220
276
219
176
198
248
245
123
198
164
169
235
227
185
246
114
223
178
217
237
216
219
242
171
182
163
142
184
220
213
239
189
252
176
233
150
225
206
249
195
214
190
143
227
241
163
212
222
170
228
182
176
212
254
232
214
277
206
136
244
208
241
218
221
246
206
180
256
226
205
162
237
248
216
215
211
175
227
187
198
204
238
167
203
172
218
167
229
208
192
178
195
186
191
125
204
197
189
179
159
202
172
184
157
138
270
248
228
204
154
171
214
208
180
175
185
226
194
184
153
175
182
199
140
205
226
172
184
203
242
272
211
182
185
148
181
215
198
252
214
199
221
216
260
224
200
169
211
190
182
209
193
261
243
179
184
282
187
133
219
223
175
167
166
161
226
155
251
230
183
169
194
200
166
187
148
249
201
216
215
187
183
161
179
230
135
208
208
173
235
187
188
258
256
204
278
255
263
233
220
211
185
194
201
176
196
216
168
199
185
240
249
221
208
233
208
181
155
165
214
245
165
168
188
219
209
185
145
234
167
197
194
171
222
169
229
212
164
234
187
199
175
199
195
207
207
264
188
181
235
143
205
231
239
282
185
218
133
213
249
224
185
207
201
258
186
218
196
140
124
216
201
100
251
204
201
153
181
209
179
163
232
150
209
171
222
165
187
231
237
251
234
133
240
164
173
116
243
183
237
160
222
166
239
241
227
185
159
204
214
234
218
264
159
232
245
217
212
266
212
205
146
164
227
176
208
223
162
229
222
143
173
208
194
239
221
166
175
170
232
149
200
207
172
141
211
262
206
261
194
159
217
176
235
168
235
148
148
202
238
181
146
191
204
141
199
171
143
186
231
232
163
191
211
196
233
161
204
142
211
145
188
305
200
174
198
182
228
199
175
195
202
213
169
225
185
240
202
165
190
199
246
156
215
191
196
204
215
170
219
199
159
164
199
225
185
197
221
243
217
244
211
202
219
150
213
134
171
150
290
197
203
213
226
152
272
155
208
188
171
171
220
215
165
180
179
203
229
211
203
237
193
195
225
206
192
212
216
201
186
229
239
194
201
254
210
192
229
171
178
205
238
158
204
220
210
225
225
204
160
262
212
210
180
221
209
177
193
260
204
149
203
192
247
194
212
188
184
169
159
187
261
241
198
166
157
238
187
172
204
147
192
111
196
244
241
199
258
212
181
170
195
212
230
240
173
197
142
140
210
218
176
208
132
205
198
249
265
193
204
220
225
145
235
197
215
86
209
203
183
240
178
248
194
182
237
148
203
221
270
209
249
184
199
160
234
235
250
208
243
238
202
212
205
179
216
166
236
198
259
211
243
246
221
214
208
227
259
193
225
250
197
243
177
198
193
205
207
208
224
240
218
177
241
227
244
275
188
184
252
156
181
170
215
159
217
231
223
174
154
255
201
259
173
221
215
225
235
231
266
205
172
197
194
178
170
173
186
215
155
156
219
212
147
206
191
222
232
163
204
184
131
195
169
181
230
205
218
149
170
171
184
153
148
141
190
183
189
163
102
193
234
194
156
172
216
212
210
183
214
259
219
170
215
237
248
258
186
176
164
149
153
201
229
172
187
138
168
194
207
227
196
194
206
220
247
184
207
169
207
194
239
251
161
204
219
192
220
216
188
239
237
156
176
199
202
285
228
235
163
179
217
188
226
145
180
195
254
163
159
182
197
185
143
217
218
195
167
205
176
179
224
254
150
194
227
266
225
160
193
217
152
176
171
182
228
176
290
169
179
215
242
192
220
207
193
261
197
214
226
211
183
140
194
197
232
167
157
147
212
199
185
252
204
217
232
118
261
225
181
177
216
162
197
240
235
211
239
205
160
216
263
240
220
208
194
137
186
228
231
190
215
185
242
242
160
229
196
205
223
194
202
207
256
201
221
247
216
192
148
244
234
258
171
186
186
235
216
155
160
214
200
182
227
222
212
208
140
260
147
210
175
244
187
189
185
160
216
173
179
202
213
226
130
178
201
186
209
195
211
206
205
203
195
180
225
248
217
177
146
236
168
102
233
222
138
207
228
239
229
215
202
177
195
169
173
204
245
231
206
242
139
184
185
179
243
208
227
190
162
212
233
170
212
210
174
206
254
204
238
167
215
214
210
182
236
190
208
227
180
203
239
221
235
153
235
188
247
213
229
255
182
186
220
223
194
205
156
252
169
257
242
171
222
231
167
176
215
204
228
242
211
192
199
179
244
207
166
225
249
215
152
205
225
229
204
182
119
201
225
165
225
199
182
181
232
193
157
235
191
190
155
218
144
200
178
192
245
227
179
150
163
182
241
239
101
218
214
200
229
197
184
254
196
205
247
287
247
240
190
159
191
167
166
178
218
232
226
171
212
237
192
265
205
169
226
224
181
170
213
187
207
188
142
196
154
206
200
162
223
180
165
207
241
207
195
212
221
219
148
227
170
229
254
158
188
236
227
118
198
190
227
141
262
196
161
235
245
162
247
158
168
232
216
223
181
205
147
226
230
227
202
230
151
214
222
220
206
233
195
175
174
149
262
313
198
226
197
183
259
159
196
243
251
184
209
224
237
185
218
177
182
191
149
211
225
185
147
185
196
254
201
155
280
208
159
168
235
199
200
175
236
225
109
203
214
143
137
195
184
237
185
244
220
168
223
246
245
202
207
127
216
167
192
232
199
138
226
204
246
182
235
216
185
267
162
237
247
211
186
241
186
243
219
195
203
204
143
186
217
165
229
208
211
216
238
151
247
149
219
189
233
218
188
168
235
211
174
224
202
207
202
175
171
250
212
224
194
172
200
187
116
212
163
160
216
206
237
219
208
190
209
238
202
183
236
221
169
149
135
162
215
103
224
171
150
209
186
205
203
178
208
161
243
160
195
166
251
154
176
223
167
107
239
191
225
189
224
205
116
208
231
118
197
222
179
174
208
179
228
134
205
233
226
230
173
173
211
180
214
165
184
223
188
203
250
151
278
154
180
224
188
236
217
162
189
227
194
173
191
174
217
201
117
266
186
154
254
216
162
210
184
173
185
184
189
245
202
205
208
161
187
199
171
227
238
207
230
152
215
204
189
202
288
217
168
234
198
186
123
167
202
177
238
206
203
213
196
247
139
197
207
222
219
212
218
158
213
210
184
172
161
213
219
241
202
195
174
174
246
187
197
210
191
231
213
246
188
181
215
203
261
198
183
199
234
164
147
202
258
229
198
235
238
172
230
212
239
217
221
276
181
131
169
201
221
209
188
213
183
204
226
210
149
179
137
216
200
220
143
176
215
182
172
258
221
151
235
242
187
219
235
187
152
225
197
232
140
223
197
233
208
245
193
164
166
219
160
174
214
214
210
203
143
204
257
255
214
151
232
196
190
192
161
194
188
233
230
187
208
185
196
155
140
200
143
236
202
251
164
199
147
241
218
204
184
220
203
179
184
209
186
208
162
237
239
219
215
237
141
227
173
194
204
174
205
167
215
192
150
214
190
186
161
205
205
162
227
233
201
215
214
205
192
236
203
167
236
193
213
185
198
252
197
216
207
244
223
250
238
180
176
258
251
175
289
228
136
167
185
210
226
167
182
227
210
243
250
185
249
145
129
221
233
183
189
191
201
215
212
139
168
214
185
225
202
209
212
244
179
197
225
225
178
173
224
220
242
241
227
164
164
222
155
143
229
243
169
195
288
152
213
209
218
261
192
210
184
251
199
232
136
199
204
187
207
213
207
184
183
206
211
253
163
158
218
273
254
136
237
164
197
173
219
203
183
198
211
157
237
227
260
172
163
237
178
162
154
240
167
205
160
207
209
214
181
246
215
137
204
185
224
209
189
216
193
208
212
198
193
231
151
161
152
136
189
177
239
264
188
186
180
201
153
227
165
203
208
209
177
200
208
205
179
262
207
233
185
209
178
246
215
200
211
192
273
160
186
214
189
154
181
178
174
226
204
161
126
201
170
192
221
241
149
267
215
169
223
162
170
191
170
186
194
217
155
254
180
203
272
188
201
193
193
173
167
169
206
219
240
167
196
178
267
195
183
216
201
207
216
227
207
220
212
208
211
194
119
200
226
175
210
201
148
156
214
268
118
211
217
183
152
172
234
187
255
153
187
200
228
181
165
200
198
180
263
220
218
186
172
213
276
193
204
175
183
172
226
272
223
200
172
156
255
218
169
193
273
226
252
149
223
209
234
235
254
211
208
210
148
258
279
220
173
275
218
175
190
178
244
303
182
192
202
243
137
181
219
240
169
181
129
212
221
187
152
201
197
173
194
225
223
163
236
194
185
214
240
185
189
201
182
178
191
186
172
185
224
229
190
174
132
208
138
152
152
199
218
209
248
226
127
215
206
230
219
199
273
163
226
151
131
152
189
211
191
221
241
152
201
190
188
186
219
190
241
144
194
200
170
175
238
133
223
238
231
167
213
186
161
229
190
180
245
205
218
214
161
257
142
203
216
174
194
193
208
268
163
156
143
210
147
183
233
205
228
260
212
208
177
224
223
245
287
133
215
159
193
132
162
241
190
212
210
195
171
193
192
203
217
183
216
207
188
183
159
132
151
251
240
239
167
201
214
221
227
216
207
151
259
194
205
173
164
220
175
179
194
240
180
261
156
199
103
311
111
158
226
178
204
164
220
233
188
213
170
134
245
200
239
158
239
218
142
184
208
132
217
198
251
121
151
141
204
223
190
202
173
180
214
207
196
202
247
178
159
256
147
214
196
192
173
247
210
223
166
197
169
215
203
181
209
199
151
207
224
150
202
168
234
182
144
174
248
194
237
207
213
172
217
233
244
235
184
194
293
170
183
168
289
247
155
209
226
195
197
173
232
160
237
201
216
182
216
214
223
202
184
182
227
119
187
164
237
204
232
142
187
182
207
214
205
229
167
214
179
184
224
235
255
203
224
213
280
126
285
197
200
232
225
209
220
258
155
205
250
210
140
159
218
245
206
234
219
196
237
181
180
217
243
223
197
242
184
194
173
218
215
186
233
193
221
193
182
178
148
217
169
156
203
205
183
240
204
238
241
122
236
186
170
233
201
246
167
221
184
207
233
162
180
205
213
246
196
278
263
192
130
156
207
201
219
187
223
167
187
154
211
179
246
245
232
191
237
194
229
181
143
228
179
228
216
220
222
190
228
203
242
197
209
181
221
191
176
112
186
152
251
161
203
159
143
215
160
244
227
169
206
202
121
207
236
193
208
176
204
204
209
205
237
221
201
214
152
204
246
212
246
163
203
199
158
225
190
223
289
246
182
184
159
249
162
229
122
207
216
226
147
223
202
241
142
238
192
223
240
201
210
243
186
187
185
142
241
135
167
162
222
206
186
166
183
196
201
198
259
198
179
161
193
187
196
200
172
169
230
182
176
136
264
231
174
186
190
169
125
223
264
242
226
200
153
160
215
144
156
166
159
249
231
195
218
247
209
198
181
133
188
187
202
170
157
221
192
193
215
166
216
171
198
172
210
229
234
190
179
217
182
205
194
204
234
218
198
231
246
204
201
240
189
174
203
209
173
144
220
169
162
164
165
169
247
205
201
218
234
196
175
133
181
190
150
244
217
201
178
231
241
246
222
212
190
237
185
134
175
162
221
160
205
197
183
279
244
213
193
157
187
245
236
240
185
238
231
225
111
192
241
214
217
192
206
126
156
236
199
241
249
177
171
192
241
150
254
196
206
209
147
197
237
176
216
188
192
198
189
204
232
179
163
160
213
196
235
227
191
208
231
235
211
202
177
201
180
160
216
132
159
224
233
132
230
257
179
183
223
145
193
261
185
173
208
166
217
178
187
205
192
211
237
188
173
213
210
183
227
177
277
193
216
160
248
143
162
182
174
219
176
248
206
190
177
226
210
225
217
229
170
211
204
190
204
182
200
165
194
191
191
253
215
155
152
234
224
214
197
244
214
204
195
204
251
194
188
215
180
219
218
268
249
173
225
174
183
242
234
115
249
203
246
168
148
201
182
166
207
235
182
253
203
148
159
214
203
193
171
145
207
209
221
255
167
238
126
161
160
172
195
200
188
236
207
163
210
244
207
212
246
200
168
240
202
227
158
235
183
233
218
198
247
227
136
196
151
210
214
189
197
203
203
206
181
206
206
217
153
216
249
196
158
226
153
202
261
135
203
242
153
194
206
171
174
188
186
217
136
220
205
203
267
204
201
223
218
170
193
206
231
183
173
235
195
152
211
161
190
151
167
168
201
173
207
217
152
181
187
216
243
192
126
179
182
152
192
169
123
231
174
209
204
209
198
204
201
210
148
224
180
225
190
246
163
216
205
187
222
174
201
212
179
263
242
224
150
193
174
235
182
210
205
241
236
262
204
174
197
192
194
253
212
256
197
227
220
154
192
162
205
164
218
198
227
212
245
283
192
222
207
219
207
190
168
196
174
200
226
119
223
192
177
232
192
229
214
186
224
206
197
171
216
149
226
199
144
217
186
170
207
188
203
126
266
176
169
245
206
204
213
227
131
224
188
186
190
164
174
154
234
190
163
226
185
242
179
220
204
252
235
202
186
215
157
163
252
219
256
151
178
253
179
182
160
210
195
198
223
189
220
176
158
279
224
222
183
178
230
183
227
182
196
207
205
195
175
200
216
114
278
210
251
205
217
225
210
242
181
178
126
232
235
222
233
236
222
229
212
145
243
236
236
199
263
260
193
180
131
244
217
139
225
154
154
178
254
217
263
240
178
223
219
238
213
204
199
235
194
185
194
184
211
236
200
214
219
198
177
189
231
197
188
186
207
205
179
209
201
157
233
206
178
224
248
203
204
185
241
175
155
208
207
237
224
204
241
216
189
168
196
177
213
163
187
209
228
188
177
166
283
210
197
206
170
214
230
194
183
201
276
202
160
223
221
225
195
218
161
224
210
275
194
159
252
213
264
168
166
137
195
178
227
131
188
83
197
224
196
226
226
176
171
183
197
271
230
200
220
167
257
234
228
240
260
161
210
179
221
224
245
166
188
211
221
185
245
226
275
167
200
201
229
155
213
204
191
195
222
152
224
220
176
222
209
213
170
192
228
148
204
180
228
133
208
176
188
131
251
139
179
238
150
246
181
177
191
177
186
121
157
253
202
228
207
181
245
217
172
194
100
216
197
177
158
112
250
191
243
199
214
179
236
229
176
268
194
254
204
210
133
260
206
180
237
167
193
216
201
253
178
226
187
195
142
158
210
157
210
227
240
170
259
235
133
170
253
183
168
201
185
233
185
179
232
194
163
263
203
188
171
198
206
234
183
229
242
137
211
235
250
198
264
190
158
211
209
185
216
202
192
216
234
203
136
222
202
224
266
152
143
204
216
245
184
200
188
186
189
170
167
210
237
234
256
242
197
223
228
207
239
202
218
268
203
220
164
131
207
143
200
147
229
216
167
175
216
164
218
160
172
215
223
193
171
159
242
167
216
202
195
225
206
228
147
154
204
216
249
200
181
228
192
241
140
149
204
165
149
187
219
242
180
146
283
114
222
156
208
220
220
195
191
211
160
154
170
172
200
238
253
139
236
181
199
137
197
229
182
192
191
136
198
172
140
221
232
211
237
247
244
243
218
216
199
178
259
202
206
218
201
236
237
246
176
264
215
210
205
228
164
218
159
167
211
181
188
252
140
193
204
191
220
192
207
213
204
186
136
236
221
195
242
188
206
244
211
155
267
212
163
176
177
209
244
194
113
210
189
159
205
204
122
229
189
171
213
177
229
246
182
277
208
278
164
147
200
194
211
214
156
183
139
208
207
197
155
162
133
243
175
209
197
169
252
203
146
164
151
191
216
136
141
203
236
162
179
202
187
238
206
180
225
241
185
198
207
176
144
184
212
228
216
144
219
222
132
228
217
167
246
189
176
197
184
182
228
176
184
158
204
258
229
179
204
196
242
264
188
202
158
200
176
203
156
186
205
164
227
251
242
173
178
210
233
183
231
195
208
226
184
233
220
180
182
215
140
224
145
200
232
168
248
216
224
211
215
179
195
214
227
158
232
162
227
215
187
186
159
197
171
220
205
104
251
225
192
156
198
197
212
212
204
210
193
217
249
230
206
209
187
215
237
169
126
250
196
218
198
246
223
198
187
172
270
165
222
201
106
184
200
129
168
241
169
209
214
168
225
251
169
245
259
211
205
273
250
182
193
200
194
168
171
184
190
184
227
205
129
247
189
210
201
206
190
139
219
213
244
256
173
219
210
232
170
192
208
144
161
169
224
167
161
253
177
199
193
155
237
205
205
170
172
201
193
259
223
198
190
170
207
203
243
186
272
147
199
242
222
174
271
188
235
191
164
180
188
218
202
182
188
250
171
161
220
212
218
220
207
247
267
216
227
266
204
201
232
162
213
113
199
205
253
189
250
247
242
233
213
246
159
165
183
163
181
204
167
180
233
243
185
188
246
208
173
172
203
182
219
141
181
164
209
178
252
178
224
160
162
268
145
178
176
182
234
258
189
220
219
145
179
188
190
193
163
185
188
209
199
206
182
171
189
228
223
172
215
184
227
199
163
124
208
209
200
214
237
246
186
225
238
202
247
182
231
224
129
253
222
153
246
116
223
213
223
148
201
216
237
174
206
181
206
175
168
146
167
181
164
204
212
212
228
236
217
166
218
194
182
165
211
127
208
244
128
205
171
230
176
243
246
210
173
226
151
234
162
213
164
176
99
256
210
226
209
266
188
137
197
221
226
237
254
199
227
193
219
181
180
185
211
209
223
228
245
77
265
220
198
185
209
211
140
220
234
197
180
224
186
203
164
196
196
214
189
211
210
201
224
233
178
180
196
185
227
235
223
170
145
120
198
248
202
198
180
195
167
166
96
193
214
190
197
209
135
203
235
192
191
236
169
200
219
202
166
258
220
254
262
184
198
211
264
201
273
276
175
194
153
137
192
240
201
170
191
188
219
145
214
213
161
200
200
172
191
218
210
171
236
206
200
180
178
195
195
197
195
187
226
179
256
207
193
191
132
223
201
251
174
177
279
252
256
222
236
163
235
167
143
218
176
224
210
233
90
252
204
266
183
204
210
267
187
173
197
165
241
117
151
231
249
198
142
218
231
217
196
276
229
188
180
195
234
232
175
186
188
132
170
178
220
174
197
206
209
212
218
265
186
104
218
179
209
235
227
196
128
224
264
219
213
167
216
156
211
280
159
244
202
226
181
204
241
197
152
167
227
206
221
232
200
164
225
226
140
232
255
248
222
179
147
270
164
170
225
166
197
201
270
172
203
206
210
193
221
242
157
206
148
148
226
161
171
199
268
187
202
179
235
170
236
186
238
197
120
199
235
243
216
218
167
184
159
234
194
149
253
228
214
211
161
163
186
212
159
214
212
207
195
247
161
215
205
154
233
168
224
218
162
183
255
243
203
192
213
173
235
163
244
267
184
140
193
269
213
187
218
175
214
193
230
167
149
172
183
203
212
210
193
224
287
225
204
199
193
177
227
179
175
167
236
195
229
233
138
157
145
203
234
205
179
205
195
239
175
212
174
219
202
223
168
155
183
169
183
231
207
205
207
212
192
186
194
191
242
188
182
253
242
203
170
168
212
209
201
169
188
232
166
217
156
266
195
196
221
228
148
216
210
217
226
181
190
223
203
195
212
185
162
208
193
177
175
129
170
145
129
224
224
212
174
203
239
157
190
162
184
154
207
217
217
172
246
205
205
199
196
214
197
182
208
194
208
193
187
221
194
190
191
219
235
206
246
210
170
221
138
229
189
226
230
108
254
167
181
196
172
232
234
165
226
171
266
154
201
172
218
192
226
179
206
234
182
242
225
218
223
162
245
189
191
226
260
244
221
222
159
194
171
234
173
182
199
150
166
154
222
190
194
228
167
207
135
245
199
168
207
200
164
183
165
187
219
186
209
208
224
158
194
160
209
230
231
234
160
246
201
207
206
225
201
206
210
187
143
229
207
195
250
234
186
225
210
210
208
166
195
226
177
248
201
152
203
252
218
254
171
234
205
173
190
166
213
179
188
235
193
243
218
229
200
205
245
208
117
232
194
260
217
195
210
192
153
212
207
161
248
195
250
227
105
184
181
166
227
146
179
211
173
272
271
229
157
239
225
254
186
258
173
230
203
192
213
231
160
131
243
191
240
154
201
168
141
206
203
224
189
183
226
266
202
236
251
192
189
238
202
163
155
210
213
219
112
147
188
208
171
248
253
220
239
183
152
216
175
130
197
203
183
214
228
203
192
157
185
154
225
204
236
289
200
174
207
250
200
182
187
198
195
200
203
203
131
222
194
234
171
200
222
198
164
174
221
133
225
198
219
249
171
185
220
162
187
237
203
214
209
282
152
213
180
130
197
235
207
198
197
177
242
215
270
158
175
246
200
229
230
207
149
210
171
184
218
120
159
214
187
205
232
246
180
204
175
187
213
142
176
217
201
189
169
192
205
116
234
187
219
160
127
189
233
198
156
218
266
181
154
188
176
235
229
169
189
192
221
264
203
208
189
203
211
230
197
216
175
249
223
169
192
256
193
131
231
148
141
194
228
173
204
174
253
219
179
205
215
251
187
175
191
221
170
216
192
171
239
253
123
194
201
210
160
248
220
183
115
218
128
251
190
235
250
159
236
167
199
192
219
223
162
251
213
244
244
146
204
170
152
243
152
230
186
165
191
209
186
175
193
210
229
188
285
175
177
207
161
194
134
238
173
212
195
237
259
186
250
179
204
255
184
217
247
143
202
228
151
204
184
197
178
182
195
173
204
228
177
220
214
191
166
216
191
273
184
210
210
130
226
200
245
174
135
191
187
136
172
109
208
194
241
191
172
205
184
175
247
157
192
198
198
209
188
241
171
199
229
226
194
241
196
215
150
192
185
185
193
128
174
187
200
244
241
168
238
153
177
158
181
167
165
218
173
268
174
222
176
192
139
212
204
216
228
246
243
235
173
119
210
222
223
176
194
271
257
183
172
186
214
162
199
172
218
191
179
248
189
160
243
182
200
186
162
208
218
202
114
179
221
251
202
185
217
204
166
189
211
217
244
178
189
216
242
206
192
211
235
141
212
152
207
190
225
210
166
207
159
216
274
243
230
158
213
267
243
236
161
257
170
138
229
206
220
167
123
211
202
247
179
139
243
191
221
249
242
233
227
173
191
195
189
243
166
241
194
203
215
262
203
210
224
166
211
232
220
260
179
202
171
226
167
170
204
121
259
197
156
220
218
150
199
215
179
207
203
165
141
163
226
203
249
233
195
209
249
255
202
205
186
252
168
152
178
144
195
172
155
203
173
236
151
231
203
192
218
257
168
188
211
214
248
160
216
196
210
166
244
204
156
186
191
166
189
197
104
119
217
206
238
195
233
218
185
197
211
252
236
220
255
208
173
98
228
205
186
188
189
231
216
212
234
212
218
192
240
241
187
179
197
186
183
204
223
204
184
205
203
223
218
189
234
184
240
216
213
198
182
206
201
170
190
161
226
220
215
143
210
163
183
222
149
224
182
169
229
244
241
200
212
213
174
216
199
260
163
172
241
256
217
205
212
232
209
168
225
203
211
149
186
251
156
241
259
193
241
138
124
195
274
171
229
192
232
271
205
183
233
171
187
165
199
246
185
98
182
167
190
180
201
166
205
161
200
218
167
155
209
143
231
187
249
181
211
158
152
168
211
212
223
180
238
258
227
184
201
222
208
179
268
128
185
220
191
214
205
211
184
160
200
213
233
187
244
178
193
202
161
220
214
226
224
196
263
221
189
186
210
114
223
244
205
155
248
237
202
196
165
244
221
155
155
205
241
157
249
198
156
217
201
157
251
124
183
211
204
177
214
216
223
178
182
204
208
193
202
220
199
157
222
126
245
166
178
149
185
262
150
185
201
214
201
156
165
213
152
196
171
215
213
165
205
178
177
205
257
176
209
190
261
185
236
152
235
170
156
207
201
207
220
206
230
228
231
181
225
259
247
190
233
219
196
231
189
126
214
219
239
181
128
194
153
112
216
203
157
203
182
271
179
168
178
210
196
209
164
210
210
152
207
159
183
193
183
228
196
210
234
170
191
168
153
217
160
161
222
275
186
198
225
212
197
263
231
165
215
245
247
187
221
216
241
187
211
179
127
274
197
215
174
194
214
221
247
226
206
261
198
196
213
180
243
226
248
183
224
153
162
193
224
253
197
197
232
214
138
161
241
219
143
175
180
159
175
182
176
154
182
172
177
253
202
184
223
190
153
192
158
160
145
153
231
229
229
181
188
223
170
209
220
181
144
219
215
196
218
202
239
227
225
190
208
240
207
198
179
134
197
261
206
215
245
194
185
269
241
150
157
218
240
128
188
172
212
167
192
198
198
243
238
181
188
211
260
195
206
194
219
228
210
249
237
207
214
218
155
201
173
166
219
132
179
201
147
169
204
252
180
217
204
220
216
222
252
219
203
206
189
214
226
254
206
173
220
138
218
261
245
245
207
208
200
224
209
193
187
189
126
203
236
162
173
195
185
230
187
166
198
242
201
158
143
158
162
201
186
191
202
147
262
188
145
236
247
236
189
199
232
180
207
209
223
145
200
153
178
205
203
217
188
131
216
185
200
213
229
218
187
240
222
145
190
211
167
197
214
199
242
188
154
247
227
178
233
207
185
210
208
156
249
181
209
291
224
182
186
211
242
253
223
230
251
275
170
187
238
210
199
224
177
208
163
209
186
184
142
246
178
247
152
234
145
181
205
146
229
225
227
190
262
232
209
244
196
250
191
233
130
191
202
167
189
253
197
198
216
190
174
268
126
259
192
233
215
186
205
249
179
208
249
213
176
163
249
209
174
166
219
278
182
228
216
163
89
214
192
208
148
243
168
121
156
228
182
194
197
201
162
221
166
206
276
179
188
181
210
224
205
169
200
171
190
212
120
213
201
160
196
193
237
218
181
204
187
247
255
170
218
137
160
209
225
117
199
123
265
190
263
173
253
214
191
238
193
206
219
230
189
184
183
189
163
238
220
186
208
199
222
216
180
209
248
213
159
193
224
196
179
207
149
202
159
192
209
262
163
264
155
184
286
233
212
130
210
215
226
260
227
179
241
197
218
190
171
205
226
186
206
251
207
205
205
215
142
209
163
194
230
155
238
223
200
193
236
223
191
199
197
203
195
170
199
255
232
208
202
207
212
218
206
240
169
219
116
141
203
231
206
202
243
190
194
191
192
198
201
206
221
238
247
188
195
261
158
153
219
134
200
153
163
197
194
241
213
191
247
166
256
176
185
159
211
194
159
230
159
161
184
195
207
205
181
127
238
218
154
227
251
240
192
252
183
168
233
164
204
203
187
191
194
160
224
241
237
196
196
171
224
221
248
247
217
215
199
220
200
242
275
240
214
182
224
231
216
159
215
161
206
160
250
193
170
205
208
216
153
247
204
126
184
196
221
261
171
198
203
105
229
161
219
126
184
204
170
154
189
162
150
164
212
204
266
198
198
273
195
206
194
195
167
200
197
188
219
191
183
203
179
169
198
203
298
225
209
203
210
203
272
219
200
183
244
191
240
182
221
209
230
169
161
105
252
160
247
177
181
208
194
242
162
149
201
234
125
127
211
199
216
179
224
130
227
148
219
197
215
196
201
174
198
151
260
221
207
211
152
217
262
189
213
242
175
240
113
198
190
232
274
165
170
246
242
214
211
143
153
145
219
205
155
204
261
178
253
207
207
244
212
182
191
159
221
229
227
219
201
229
182
165
154
218
226
249
242
239
185
211
246
229
205
225
111
249
220
207
216
206
199
211
191
235
191
205
168
176
208
154
195
242
226
195
159
168
177
179
219
177
275
204
197
143
227
194
184
259
238
195
170
256
206
119
260
192
163
229
187
165
250
232
194
191
236
240
205
235
173
200
161
186
197
177
211
189
279
221
198
178
180
182
233
269
228
157
198
232
175
176
218
197
229
235
179
181
187
173
190
239
241
200
240
215
142
256
192
175
170
188
148
265
180
180
185
150
243
130
213
179
227
187
191
157
191
233
199
183
205
175
177
205
177
190
151
203
252
169
201
158
205
262
215
173
235
204
117
211
264
235
205
194
183
247
172
246
239
200
223
206
239
159
186
235
218
236
167
182
182
213
202
158
193
107
135
236
167
152
211
188
288
212
195
244
250
178
173
247
222
235
237
216
201
204
182
168
196
238
272
164
188
204
142
223
170
181
242
215
229
184
158
212
189
218
169
244
211
230
221
177
192
255
178
200
191
191
224
141
181
231
243
204
241
249
184
209
274
213
219
145
266
192
225
213
168
217
207
177
223
184
229
205
184
171
103
218
274
195
192
161
212
183
180
203
198
164
217
219
205
225
209
144
149
211
202
147
107
186
171
209
150
230
215
181
218
170
141
113
219
196
212
242
249
196
205
192
217
252
177
164
276
146
239
236
182
242
212
136
245
211
227
155
237
242
161
220
156
195
167
216
204
145
206
261
163
236
221
170
147
188
179
203
167
191
128
222
244
188
211
228
159
183
138
227
179
216
220
226
194
214
229
182
206
213
151
197
227
181
253
214
218
216
202
146
203
170
203
222
217
186
188
214
185
209
218
189
198
182
218
224
205
182
241
218
198
216
158
260
197
152
224
201
219
233
221
174
176
201
176
186
204
221
181
188
175
198
225
190
243
197
229
219
169
183
154
260
175
249
147
189
144
175
214
196
200
138
205
255
192
265
258
184
169
220
260
214
186
215
190
254
222
203
252
203
187
160
138
197
123
166
201
179
182
213
210
215
213
170
187
204
178
188
157
238
219
262
259
191
240
212
131
165
230
220
176
152
204
189
274
224
165
212
208
180
195
182
192
219
243
216
217
186
170
239
141
155
183
197
179
218
223
210
201
102
248
212
194
289
223
189
192
194
169
190
224
212
239
201
208
221
199
172
224
211
210
142
177
256
104
162
195
229
233
197
207
172
188
228
256
237
257
189
193
165
193
192
255
172
221
185
201
205
201
215
201
209
195
219
141
210
225
192
177
156
194
203
178
185
225
184
252
195
182
207
238
147
242
250
219
266
220
207
186
277
273
177
233
197
200
207
208
180
160
210
241
275
172
204
245
145
247
209
208
189
132
178
227
225
239
272
103
182
254
281
158
204
205
174
224
244
228
209
249
235
148
180
184
262
151
223
229
204
125
183
232
228
255
154
221
194
180
191
258
236
181
192
171
215
273
242
219
193
181
214
190
221
179
140
184
160
219
189
183
134
189
205
266
239
216
222
159
151
186
158
201
226
184
270
202
202
231
242
157
137
139
205
199
128
197
285
240
180
211
230
227
217
199
221
179
235
227
237
180
165
202
214
177
251
188
166
226
200
194
148
193
221
239
240
168
212
179
233
185
197
230
198
157
188
197
279
231
171
240
146
168
177
196
261
237
243
216
160
199
217
204
143
219
230
238
180
219
230
234
161
220
213
231
220
172
169
178
203
217
164
216
217
162
219
227
180
229
227
211
235
194
224
157
196
143
144
137
179
215
200
226
203
159
179
187
151
240
222
231
199
132
187
186
225
214
274
209
209
235
188
212
217
258
143
191
194
210
225
172
231
165
169
237
199
185
236
179
197
237
216
178
204
197
231
201
192
172
231
203
227
179
160
222
142
138
147
231
209
281
185
161
181
179
169
205
219
209
190
227
252
181
203
179
162
193
232
175
231
214
190
147
203
229
201
172
193
197
184
239
221
203
163
205
215
168
235
227
244
171
202
231
189
218
229
241
171
205
203
189
220
167
137
180
226
231
229
227
167
186
160
194
171
223
226
203
229
218
158
183
157
187
220
199
139
230
190
245
163
215
180
208
200
192
186
223
209
165
186
205
210
189
217
176
190
178
202
222
235
230
234
219
259
269
226
239
215
206
159
191
194
264
182
166
181
165
225
191
212
187
107
153
166
215
190
166
194
174
232
298
171
190
205
159
181
179
210
214
178
174
189
227
113
218
191
182
204
223
145
238
212
220
172
212
276
248
131
207
203
215
246
205
219
152
218
155
225
148
245
198
146
222
181
194
177
196
198
189
234
180
192
236
191
193
128
204
230
163
163
166
223
216
178
211
201
170
174
232
245
185
216
172
158
196
216
156
171
187
225
207
165
237
207
147
247
185
195
243
246
229
264
217
252
204
201
151
206
195
189
212
198
193
212
158
214
190
198
170
207
176
163
192
201
149
181
166
201
166
178
251
195
247
167
186
232
177
166
219
217
211
238
141
131
164
177
191
190
215
196
191
222
254
175
153
201
220
193
183
193
182
203
222
144
197
173
211
210
264
221
199
224
225
240
189
201
235
210
271
185
242
204
263
263
200
226
201
176
196
191
228
190
250
197
264
198
189
183
233
205
213
201
208
205
188
156
176
187
171
252
162
215
191
169
186
231
208
239
187
198
192
220
210
261
213
221
202
227
218
273
194
210
215
168
185
189
170
203
256
206
148
193
145
144
190
199
165
239
196
161
218
182
235
165
198
210
165
174
92
174
216
179
153
185
143
190
188
173
159
191
197
212
201
199
149
207
193
219
183
222
149
167
155
227
195
206
240
190
163
221
171
257
200
218
196
234
206
195
125
163
234
225
180
227
206
297
169
165
165
216
230
133
258
213
137
234
144
118
160
181
227
192
174
196
210
196
230
208
202
210
158
229
199
155
233
246
159
255
186
245
270
183
241
147
218
214
246
226
215
185
191
119
237
218
201
154
239
232
206
183
226
236
250
163
217
190
188
219
200
142
191
219
234
194
211
202
221
193
192
247
211
214
132
208
153
233
208
168
194
212
186
226
231
158
206
204
206
183
239
213
251
220
199
179
203
153
172
217
190
220
181
215
206
205
191
200
188
244
221
253
247
219
188
194
209
211
190
155
186
238
200
187
193
208
200
207
225
200
266
252
197
152
206
233
149
225
156
115
157
176
189
147
155
161
213
222
267
207
237
214
227
147
159
241
259
200
161
204
200
192
173
127
151
184
181
176
237
190
163
154
196
232
167
191
230
197
157
174
224
203
165
229
227
233
159
164
216
211
213
215
258
219
217
196
228
129
188
207
154
231
129
200
181
231
218
198
236
184
194
255
217
151
157
203
258
234
172
186
197
206
264
163
192
146
210
205
181
208
181
210
183
187
192
223
202
217
165
213
195
240
195
202
106
226
134
243
220
229
183
182
200
205
244
194
202
197
234
199
234
172
145
163
133
210
178
158
224
231
186
197
131
162
159
216
179
170
200
191
163
228
122
215
153
190
112
199
207
203
91
258
217
210
200
183
233
204
200
187
206
175
240
193
127
179
176
239
175
219
197
252
214
175
212
205
156
232
265
198
204
164
185
196
152
185
186
192
192
191
145
139
203
163
209
238
210
213
244
229
237
229
235
166
199
192
210
185
193
183
240
258
223
258
155
150
228
135
211
196
199
203
168
244
212
180
233
222
167
235
231
190
225
223
207
183
216
181
216
221
168
243
267
171
230
177
237
206
159
276
171
161
210
204
231
206
152
219
260
173
202
178
222
206
160
215
202
200
210
193
167
202
218
208
208
261
225
232
196
203
241
176
215
293
245
210
231
229
147
188
201
202
142
230
209
220
187
153
186
236
200
257
207
158
173
213
248
185
139
225
183
259
230
181
150
220
176
238
160
255
225
197
198
185
232
197
241
224
181
213
199
209
171
172
165
220
196
262
235
204
178
181
164
137
280
135
209
153
226
268
217
218
201
203
223
186
124
199
220
163
231
196
224
209
201
145
139
283
187
193
249
212
242
183
178
213
215
176
211
240
128
176
219
171
225
191
246
142
199
169
148
211
246
245
185
191
227
225
253
157
190
220
183
152
193
241
245
197
206
243
210
207
223
187
175
197
193
221
195
225
191
256
195
220
181
137
197
174
199
250
234
94
221
248
172
175
271
194
212
231
178
250
177
234
164
164
184
241
165
268
163
186
231
229
196
209
246
202
201
184
218
248
260
183
271
146
153
213
266
142
223
183
166
165
185
184
141
248
254
213
159
242
251
178
233
210
185
224
233
157
218
174
170
199
175
247
153
202
188
252
180
177
189
240
127
256
166
172
209
216
151
214
229
107
177
186
239
224
174
141
143
142
252
205
202
241
186
221
209
235
191
185
228
182
159
169
178
265
191
221
155
154
198
185
224
161
211
155
193
181
216
254
209
204
171
184
185
218
159
224
201
198
158
230
219
230
234
213
201
190
253
259
246
214
169
114
167
192
207
219
203
181
202
169
252
192
205
234
204
224
183
179
200
171
213
198
231
194
182
215
203
182
218
265
148
206
206
193
192
190
190
239
176
144
217
199
132
187
206
187
197
241
229
228
219
223
183
234
239
176
146
247
242
170
228
131
201
198
182
208
140
204
192
209
204
194
227
164
185
192
185
175
170
206
239
241
170
196
231
227
196
252
159
125
219
155
182
203
158
196
175
251
187
251
204
209
173
222
203
193
172
235
192
216
214
184
168
162
181
154
169
158
277
197
244
245
208
180
192
176
233
135
161
217
190
151
100
201
239
185
226
162
219
256
219
175
175
221
232
206
197
184
191
164
167
162
179
164
227
235
181
199
143
175
216
145
227
234
188
178
207
214
214
233
254
242
188
160
194
206
151
153
182
230
242
231
252
230
204
195
225
202
189
200
243
207
216
154
242
205
225
245
204
197
193
231
235
163
174
220
155
257
235
179
226
175
212
186
240
243
172
243
151
151
232
255
227
173
224
225
233
187
186
136
197
227
231
173
202
179
264
138
229
168
230
169
235
152
184
226
179
139
177
153
198
203
226
261
197
191
206
187
210
196
236
184
243
205
207
196
178
151
191
202
214
167
172
131
181
237
178
189
177
180
207
238
265
193
194
166
246
236
192
184
229
194
247
198
196
232
230
180
208
219
193
235
176
211
266
247
240
195
159
197
160
225
198
255
214
269
215
219
179
274
171
241
230
173
195
216
209
200
227
190
183
215
200
236
206
260
187
188
165
203
197
182
242
225
211
233
202
217
221
185
243
144
186
251
186
227
243
244
197
205
231
284
222
260
249
141
187
224
205
221
190
240
187
197
260
180
191
264
190
197
172
183
191
206
156
154
162
235
221
170
207
221
203
143
187
227
175
205
206
211
200
182
189
197
193
151
176
222
193
217
198
168
214
220
162
210
192
166
141
256
197
220
166
115
195
205
170
200
233
235
218
238
201
215
150
237
154
201
224
186
190
124
126
185
227
201
160
223
235
232
252
198
123
132
165
215
248
218
236
161
171
246
212
259
215
135
239
229
226
204
135
187
192
188
248
144
188
232
205
199
220
185
149
178
220
234
185
237
228
170
246
177
202
159
208
202
213
221
248
160
193
191
199
238
157
170
186
217
123
179
205
199
221
207
220
221
183
200
158
240
207
281
200
208
199
188
190
239
235
248
214
172
174
215
192
214
183
208
221
260
215
213
165
175
206
248
150
193
214
170
183
258
205
181
198
218
233
146
175
204
193
263
245
180
251
211
212
179
171
207
170
273
207
223
173
226
205
215
208
148
204
186
201
145
170
271
96
191
188
197
245
210
182
146
227
181
180
183
167
159
198
182
223
170
174
155
216
240
236
230
196
184
194
204
226
171
172
235
225
248
256
157
218
206
182
186
236
168
205
166
223
163
228
256
209
216
210
209
222
183
88
199
223
158
226
227
222
221
217
207
197
212
104
219
187
172
168
192
171
132
128
251
277
213
178
238
218
141
229
212
200
179
202
210
202
186
140
206
199
131
213
203
218
195
255
240
206
165
186
160
139
161
206
182
204
205
188
228
203
199
194
195
162
179
187
196
152
197
170
209
130
174
236
170
166
208
233
196
247
167
261
198
262
181
266
165
205
232
216
180
204
168
210
239
240
146
204
223
213
232
232
250
172
167
190
189
204
166
211
207
234
223
154
189
219
190
247
224
208
192
208
127
183
213
168
193
172
205
176
208
201
186
250
165
186
183
190
185
247
197
199
185
237
163
115
202
227
171
217
228
225
127
206
204
236
151
215
274
152
183
198
212
189
215
227
201
236
242
233
193
122
232
199
228
201
173
159
179
218
253
218
198
191
208
150
260
210
193
252
197
186
183
154
198
201
167
215
177
230
175
202
198
224
183
198
219
170
224
176
207
168
221
197
236
194
196
151
152
258
287
225
171
254
246
239
127
173
138
188
225
144
221
165
195
148
183
149
158
188
215
198
219
164
208
205
216
255
218
208
213
106
170
187
188
166
145
227
241
223
158
207
173
234
188
217
220
187
163
161
209
228
242
177
215
241
182
198
223
167
164
239
218
238
170
206
187
244
256
211
215
226
205
209
241
166
254
237
137
208
194
227
209
256
179
181
110
175
250
164
91
242
222
174
203
217
174
146
175
204
241
265
191
209
186
156
209
216
167
271
170
227
243
186
220
178
205
224
227
160
233
223
242
156
250
222
214
207
214
202
114
168
169
212
169
180
182
168
160
234
229
182
167
183
224
228
217
205
196
203
229
207
261
163
184
168
172
174
172
177
193
135
223
178
188
186
241
233
205
225
240
194
227
246
196
179
171
199
199
266
213
165
231
152
184
224
226
259
191
189
191
216
155
174
209
166
203
198
221
165
242
183
208
193
178
162
255
213
205
253
213
207
194
225
206
207
192
202
218
191
177
236
210
237
230
163
240
187
205
225
164
184
203
209
202
195
193
225
191
199
252
266
251
213
240
182
246
197
203
205
251
230
251
217
193
154
237
166
226
189
208
210
217
248
159
265
230
225
223
230
104
167
201
233
259
171
251
210
137
130
191
157
197
198
196
204
221
218
184
180
258
170
163
218
144
158
198
159
170
235
234
192
130
133
240
205
181
219
255
178
247
181
208
181
223
188
219
216
195
198
183
196
233
196
163
176
198
222
213
223
232
243
195
189
134
246
231
188
175
250
229
183
210
292
236
243
218
200
192
145
183
158
198
228
179
193
165
149
210
212
211
169
204
183
163
195
272
235
187
205
215
130
233
173
208
221
201
211
229
145
163
175
170
189
177
192
159
187
191
194
239
186
156
150
179
192
214
161
158
167
251
145
121
187
217
205
195
211
250
216
219
162
266
177
213
221
213
213
217
185
161
143
188
199
252
197
286
200
177
156
243
224
172
176
123
165
191
170
210
257
223
193
264
188
162
212
225
255
224
273
193
232
203
146
185
150
172
147
193
207
262
193
210
210
207
159
167
210
215
167
182
191
148
189
161
159
232
159
199
243
219
201
236
155
202
207
205
207
157
212
240
230
248
187
177
248
237
219
221
242
270
150
162
233
218
175
192
216
234
164
204
192
197
259
221
212
198
181
210
186
157
245
140
237
209
182
224
205
113
180
212
194
203
123
159
208
161
180
202
241
178
218
151
198
188
215
201
223
204
188
239
199
124
162
197
185
153
145
174
207
211
229
199
170
162
202
191
190
223
217
225
239
168
180
176
216
230
212
243
206
223
208
217
194
166
242
177
186
200
133
232
204
164
179
226
240
203
220
193
233
204
217
194
152
282
176
161
176
196
268
197
229
236
253
144
164
151
214
174
237
189
201
182
190
217
251
189
133
184
215
178
240
203
218
191
178
269
211
174
211
178
202
203
211
155
188
196
127
145
249
168
232
143
205
198
168
219
218
247
223
181
229
209
175
175
242
139
212
248
190
199
248
201
167
201
226
266
198
237
192
220
184
187
210
250
172
243
117
202
233
198
268
153
190
198
163
220
233
211
196
138
198
222
147
172
170
162
239
171
191
230
202
186
212
206
163
179
220
171
184
151
270
228
176
151
204
169
234
229
231
254
197
203
172
182
156
196
183
200
195
259
235
216
186
197
186
219
235
185
234
260
178
201
211
222
238
220
131
200
242
263
183
188
226
169
194
195
135
201
198
179
176
161
198
231
170
223
177
181
175
185
186
159
191
162
145
230
296
229
263
170
119
206
197
209
213
200
212
183
197
205
241
238
199
242
191
172
228
202
214
150
207
145
168
200
177
180
203
183
228
177
200
140
230
175
224
194
218
166
245
199
284
207
162
249
195
197
157
234
192
201
201
180
241
236
177
229
224
230
176
213
221
226
197
213
213
184
155
196
235
224
162
186
118
98
197
181
234
217
229
178
238
180
241
232
214
205
204
187
254
238
184
215
168
232
194
211
234
219
144
196
185
200
142
211
221
185
188
228
232
165
162
216
156
229
194
214
213
275
259
194
268
207
269
194
177
234
175
252
168
177
231
191
237
210
200
288
208
225
164
200
186
158
214
219
243
181
237
139
207
210
187
207
181
146
245
162
161
181
196
215
204
202
220
211
154
154
210
185
183
243
215
202
154
234
240
168
138
233
144
166
226
161
230
189
198
173
191
206
159
193
175
171
210
213
235
178
175
209
255
241
176
124
195
214
180
156
243
162
208
153
166
224
237
213
193
200
233
216
208
237
197
158
188
267
201
230
198
212
188
245
258
134
177
253
218
139
262
223
227
228
183
200
160
144
170
209
190
209
162
229
231
125
212
206
243
190
163
211
176
202
192
107
258
222
175
262
264
173
217
212
243
217
191
229
246
127
208
123
235
254
169
171
169
238
199
204
182
234
236
135
161
180
212
214
195
173
244
212
159
197
179
236
181
224
185
253
195
182
212
194
231
184
138
137
217
167
228
156
226
212
182
166
197
253
186
184
199
184
183
216
193
211
200
242
180
267
204
207
149
171
189
192
251
182
199
225
236
189
202
171
209
230
209
203
186
233
220
189
166
235
231
197
178
220
221
241
151
162
247
162
144
204
164
181
228
262
196
226
194
226
239
211
231
188
243
235
164
217
191
239
211
244
255
179
146
138
294
267
255
187
214
264
245
198
183
199
207
215
104
260
202
164
235
178
143
183
238
142
189
226
256
232
169
270
270
227
159
208
170
207
134
225
214
137
149
231
211
222
188
224
204
122
187
227
251
201
216
256
243
148
191
151
192
220
231
243
185
152
204
184
180
254
219
217
206
170
236
172
206
216
198
201
193
168
203
150
184
186
120
137
254
222
239
180
227
210
130
238
166
184
255
137
181
239
226
252
180
246
153
152
216
227
167
212
251
203
157
221
124
241
146
213
140
211
207
246
175
229
212
128
252
175
250
178
256
229
183
212
219
166
207
230
166
170
142
261
198
205
216
199
201
207
217
219
211
210
229
208
208
234
179
93
241
217
171
191
231
208
243
212
207
150
154
118
243
234
201
194
186
224
191
199
231
164
206
206
247
192
249
240
248
231
165
219
218
261
217
212
215
214
200
199
179
143
171
184
231
171
251
189
220
220
216
118
226
236
228
205
109
226
164
179
198
207
228
178
215
194
231
206
146
196
191
210
225
194
220
198
262
234
193
106
203
158
266
214
202
228
197
168
209
234
187
201
193
147
225
233
238
264
174
248
211
160
225
206
285
188
198
194
186
194
149
194
209
171
247
163
224
241
181
188
181
169
212
107
180
184
170
152
206
201
226
243
177
144
225
225
284
213
201
176
216
186
255
205
152
216
227
237
236
159
246
195
171
187
202
165
172
247
210
200
218
227
244
237
233
179
207
135
161
193
184
155
222
173
203
213
204
150
196
224
185
198
179
172
196
220
236
249
166
194
211
262
163
240
197
191
190
181
264
185
247
181
203
141
227
191
209
220
215
192
203
256
170
149
203
153
173
217
202
158
206
216
140
225
156
160
177
220
194
234
221
247
179
244
241
195
237
187
165
224
210
223
243
227
259
192
220
139
255
219
200
145
175
146
233
180
192
209
153
168
174
185
171
188
160
244
191
206
243
157
100
152
225
196
256
231
174
220
188
175
188
201
196
171
221
194
196
196
160
279
215
175
167
262
145
266
138
192
167
155
210
203
266
142
229
176
181
187
219
184
235
190
211
175
228
164
228
260
216
157
146
245
209
248
214
218
193
175
179
177
179
249
234
254
181
183
258
149
257
171
139
194
205
208
209
162
200
188
209
225
275
147
249
207
196
112
170
269
193
230
215
212
200
231
187
200
238
170
221
222
232
198
198
153
151
140
218
173
211
195
169
253
191
224
186
178
169
221
174
222
223
197
189
163
238
250
192
196
170
188
186
215
208
161
213
228
206
259
190
240
192
175
212
219
196
185
176
234
276
241
135
148
228
190
178
178
213
215
105
191
194
221
200
181
253
164
193
218
202
173
194
209
207
214
221
197
191
211
161
225
273
129
216
208
199
223
181
140
239
168
245
178
205
219
133
154
147
251
216
212
239
213
199
221
191
169
213
204
200
203
200
259
200
179
154
197
255
177
212
213
157
203
147
147
214
241
242
186
209
176
222
172
226
235
195
234
245
238
201
189
160
244
206
271
156
236
182
151
219
201
187
205
144
214
209
159
178
152
164
174
233
206
187
221
161
217
214
168
176
208
206
192
231
199
234
136
245
248
208
200
163
150
229
218
208
129
215
278
241
253
204
203
181
227
228
218
163
194
205
144
184
219
244
220
148
190
180
129
200
210
183
197
200
190
262
219
228
209
215
192
152
161
222
217
204
213
185
213
198
196
127
196
233
160
158
173
210
192
208
204
221
231
157
206
218
199
170
202
256
206
220
135
237
163
152
196
205
233
187
226
206
201
200
196
177
169
152
193
173
193
206
222
221
201
140
232
231
149
214
240
156
252
233
186
180
218
196
191
162
183
183
217
225
248
153
157
247
236
213
213
226
154
151
209
159
246
193
162
248
241
197
202
196
257
162
175
238
186
227
209
211
216
199
166
233
210
208
208
209
189
217
220
175
205
182
222
183
255
191
222
252
258
210
168
211
199
250
243
134
222
227
207
171
174
223
252
217
190
243
260
266
178
175
227
169
193
201
203
173
240
190
186
147
260
196
210
221
228
185
227
173
217
197
159
186
228
104
227
165
86
251
187
131
219
251
202
195
186
200
181
199
194
180
192
184
162
178
231
178
207
144
164
223
172
106
251
176
154
203
277
251
214
251
234
197
141
231
215
180
200
163
194
188
214
255
210
236
232
208
178
192
249
213
240
203
218
257
190
156
146
204
194
176
249
166
263
202
230
182
200
179
251
248
192
207
225
179
157
204
211
208
164
204
198
193
197
217
223
157
170
214
280
196
178
208
244
193
175
209
173
223
207
212
208
173
249
191
196
251
155
239
155
172
204
223
141
235
247
257
200
195
230
210
223
196
229
128
213
134
181
216
120
200
198
164
279
253
227
269
206
202
185
201
215
145
243
208
247
213
170
202
162
260
123
198
221
166
189
195
172
123
190
195
180
194
205
243
133
210
163
203
194
181
222
209
187
192
217
204
193
222
201
250
212
154
171
145
195
213
201
159
207
257
192
146
215
172
126
207
212
147
194
141
271
249
172
184
194
187
191
190
202
251
174
166
136
219
153
138
111
217
178
144
181
221
255
219
141
221
239
217
191
209
201
187
163
161
197
270
196
225
226
162
163
195
255
167
177
191
135
209
151
178
239
224
155
264
206
240
131
175
207
226
174
203
160
175
212
247
192
213
236
145
196
187
170
199
166
181
251
257
213
239
268
186
192
184
237
192
172
168
206
251
202
217
146
169
276
155
224
205
230
197
252
164
206
154
162
239
145
210
219
174
225
139
209
166
191
200
141
157
221
212
189
234
199
207
230
150
203
221
211
210
231
237
195
180
224
157
262
200
175
212
235
104
205
192
187
206
162
211
209
177
141
227
248
294
195
169
138
244
210
220
215
175
164
158
171
206
192
246
217
215
176
223
208
289
220
192
184
245
160
207
197
243
221
210
118
201
241
192
219
176
187
154
247
184
159
203
250
204
147
218
241
232
183
174
253
202
252
174
207
200
217
174
200
208
188
186
159
259
224
182
204
230
167
160
175
215
180
232
158
199
167
165
194
210
190
187
182
211
202
241
180
274
187
257
90
197
255
235
192
179
180
176
159
187
216
207
201
258
191
187
229
190
201
227
189
193
222
119
162
217
246
223
277
167
211
229
204
162
163
227
252
165
254
175
226
173
205
234
188
206
236
200
156
221
194
182
222
214
194
154
185
199
219
152
303
167
188
143
230
220
235
159
206
228
190
159
216
152
195
227
194
216
171
115
180
197
244
176
186
212
243
210
277
157
165
164
152
244
195
207
258
174
180
280
199
182
186
198
231
92
192
189
255
220
199
204
136
215
275
180
201
153
219
151
197
214
156
188
185
163
171
144
277
130
158
225
195
226
209
243
206
228
201
191
205
169
197
245
191
183
195
243
127
261
165
176
224
181
225
184
209
236
204
169
221
169
209
200
234
182
217
160
190
263
191
211
252
194
252
274
200
178
237
257
220
216
218
235
143
216
220
224
178
172
201
230
206
210
221
192
131
198
215
153
177
198
74
164
248
175
218
151
227
180
230
258
149
182
154
172
146
172
242
193
243
286
212
183
171
171
197
181
169
191
287
179
244
225
171
233
231
209
219
211
225
218
191
270
219
247
216
201
220
268
121
188
205
171
224
202
190
200
160
133
172
233
185
178
225
229
220
220
188
230
174
177
223
226
209
177
246
215
152
210
188
196
151
183
229
134
198
181
198
133
143
230
205
204
175
139
208
153
273
163
209
155
220
205
247
157
193
199
207
182
119
191
167
143
167
249
221
184
241
204
165
196
228
180
238
205
220
173
252
208
187
218
280
217
174
148
218
191
200
175
269
135
194
229
198
171
151
246
236
166
261
169
104
213
170
208
171
235
274
158
253
208
105
212
159
243
229
230
216
221
183
182
162
224
240
233
230
209
185
184
204
152
208
155
182
202
188
191
235
209
232
261
229
200
222
255
206
168
205
190
199
242
206
148
229
241
252
215
203
158
116
257
192
247
161
178
207
188
242
277
182
184
228
227
207
171
248
187
196
194
199
165
208
186
178
188
139
137
221
225
182
182
176
242
132
237
150
217
245
241
178
194
247
192
217
175
201
218
229
231
256
159
223
253
215
160
216
208
228
177
208
214
208
208
184
192
246
253
150
192
180
146
181
206
155
159
146
155
232
213
260
247
206
229
200
205
221
162
217
222
216
243
233
154
187
147
229
174
158
184
225
192
280
231
176
267
191
188
212
168
212
206
265
253
221
168
248
144
236
179
251
229
204
204
225
222
205
151
148
165
220
199
203
243
225
173
256
178
192
178
179
199
225
205
194
166
202
146
168
250
199
223
188
165
247
245
199
194
199
167
200
196
151
209
182
172
228
196
200
242
190
278
231
181
183
187
231
205
203
171
154
196
157
195
227
228
226
185
210
194
185
180
181
215
187
179
195
176
224
183
120
225
225
248
228
255
210
166
262
244
195
188
163
193
259
224
181
205
150
242
211
183
245
249
233
254
224
212
267
184
167
211
198
220
201
188
201
148
220
215
273
165
149
190
183
162
227
250
171
259
201
185
224
213
222
174
185
216
173
235
178
209
177
247
160
254
148
240
246
209
196
218
254
208
220
206
220
235
187
134
202
194
269
208
188
146
211
229
236
228
116
245
234
176
185
211
209
203
185
210
195
170
232
188
228
188
262
214
210
279
271
272
160
195
240
209
188
191
150
198
224
213
199
223
208
204
117
240
246
235
219
165
262
186
184
237
239
237
171
287
180
202
181
205
226
233
148
209
190
211
198
208
235
186
200
220
178
148
150
215
157
245
206
224
200
228
186
179
237
207
154
240
233
215
215
203
203
242
143
185
156
178
219
189
210
145
198
229
246
244
196
212
204
255
206
188
205
217
239
225
165
144
187
233
251
172
219
219
210
216
213
157
226
194
200
198
279
204
188
219
225
248
244
232
195
236
203
218
241
266
189
262
238
239
197
144
190
160
203
238
169
200
216
245
167
212
246
185
127
177
195
233
197
198
238
233
220
235
167
161
224
253
191
224
208
202
236
158
213
192
264
248
176
212
227
271
233
169
233
189
236
255
240
212
151
214
183
174
239
171
213
162
150
193
228
187
188
243
218
205
184
175
144
236
197
180
221
183
224
272
188
186
219
213
229
173
169
120
230
191
227
207
218
185
184
219
191
176
157
206
218
237
244
200
241
174
243
205
165
171
230
266
213
184
176
182
212
215
202
199
225
238
181
204
222
224
220
211
166
190
166
208
126
156
256
208
215
189
149
216
184
232
211
224
202
214
181
190
189
229
164
145
233
216
169
208
222
187
240
198
170
213
252
173
259
197
202
225
175
140
145
172
172
216
182
182
279
209
202
133
211
204
142
191
220
249
246
194
208
184
163
192
272
195
234
232
216
254
179
230
220
186
232
197
229
188
190
209
192
193
185
132
239
193
203
192
181
207
206
159
144
179
173
209
173
242
229
228
250
156
202
226
217
216
222
243
193
201
205
260
210
163
213
203
157
230
184
208
230
238
159
204
222
181
207
226
191
187
261
216
216
238
166
227
200
201
202
216
183
209
251
175
216
171
159
198
257
215
262
185
209
211
199
229
173
246
218
207
192
273
224
186
242
226
217
234
236
178
234
203
141
183
143
120
136
223
207
228
171
170
192
175
230
229
215
160
228
218
183
233
261
226
194
234
186
194
212
189
247
260
211
153
203
161
182
171
240
213
262
213
135
252
174
218
171
220
216
186
156
217
183
161
202
187
219
219
226
222
157
233
208
194
155
196
222
190
257
143
167
198
192
221
222
208
187
159
146
184
225
198
199
242
145
179
188
159
153
150
280
220
205
192
227
234
192
194
207
128
181
235
202
238
207
211
200
158
205
227
173
180
237
198
221
156
157
186
197
234
179
204
165
240
193
202
245
216
143
170
254
199
188
223
180
181
222
235
192
190
189
214
239
179
231
189
220
127
195
233
176
211
194
193
202
225
206
162
206
204
232
240
190
160
173
179
235
220
185
228
187
234
181
203
139
191
233
202
198
180
199
176
149
192
175
193
156
201
145
203
216
195
225
232
159
176
180
228
206
226
222
202
196
257
155
191
222
199
230
229
285
161
175
223
175
256
202
236
125
239
238
228
100
212
212
178
180
193
261
235
200
171
236
180
182
180
208
112
226
232
153
138
225
132
172
212
224
159
221
184
238
208
204
196
195
223
216
153
209
216
220
262
214
171
167
232
138
158
155
196
214
147
244
146
238
220
155
181
255
228
211
212
214
135
174
227
227
232
168
244
291
161
226
215
208
264
144
168
175
234
137
197
212
189
126
148
191
182
230
232
218
198
257
188
166
204
194
181
218
129
217
177
226
188
217
165
218
208
244
222
223
225
188
211
213
207
166
163
211
189
223
168
209
198
199
135
193
212
223
175
172
218
252
253
173
277
235
218
134
203
152
212
237
168
206
227
172
185
152
161
146
193
161
233
220
194
183
146
247
162
219
137
215
263
255
205
234
184
212
162
220
211
216
194
231
226
237
182
225
213
208
182
224
226
198
183
175
168
183
189
168
234
216
250
215
267
243
196
225
191
123
250
248
182
206
200
226
193
266
128
254
211
159
216
167
149
151
139
236
194
238
222
140
149
200
254
231
202
178
227
233
182
173
227
190
284
214
232
171
217
191
154
159
224
159
189
119
162
171
153
200
207
135
196
195
158
189
253
187
229
183
280
190
211
204
161
194
154
167
187
185
173
200
230
260
189
134
231
208
256
171
232
249
180
208
223
234
201
236
219
194
212
202
190
209
154
200
204
210
198
185
137
209
182
241
230
219
254
187
178
204
204
163
153
216
196
268
218
150
144
220
138
140
170
175
185
173
201
208
113
185
188
222
222
266
246
194
228
135
180
232
214
239
151
158
165
255
193
243
217
157
127
163
234
283
190
179
183
179
211
183
224
238
221
203
161
249
233
218
252
185
195
281
192
183
207
205
183
195
183
200
234
209
212
154
167
212
186
194
205
173
169
204
108
212
234
244
252
211
252
159
197
120
167
158
183
182
191
190
173
217
244
182
237
208
187
219
218
198
206
174
195
155
247
209
178
190
231
238
227
164
185
150
227
189
236
161
180
239
203
189
211
255
182
245
218
216
223
130
201
241
126
210
161
226
144
180
223
121
249
259
165
191
155
238
257
198
266
203
261
219
162
208
167
194
214
228
135
248
101
220
167
226
178
189
215
249
212
228
129
186
206
234
168
195
216
225
193
174
187
218
201
233
172
193
228
190
232
221
162
168
160
251
221
227
177
177
196
201
192
218
185
231
219
201
215
197
242
172
228
186
243
140
223
206
211
171
158
205
123
239
206
237
179
213
252
284
152
212
172
187
189
164
244
155
181
258
222
259
207
208
242
208
176
126
226
220
213
198
200
188
199
205
243
195
237
209
202
113
174
142
162
213
199
207
218
220
235
199
185
195
240
170
189
201
249
205
243
211
241
256
179
217
171
181
124
187
238
175
225
207
165
193
242
211
117
195
200
189
205
154
214
116
233
214
208
197
227
212
292
199
181
203
208
238
236
191
225
182
217
236
225
190
181
120
207
147
185
147
212
218
241
184
154
247
151
218
184
232
173
176
238
211
188
210
208
236
177
206
120
194
221
200
175
213
256
238
164
190
216
162
146
217
204
209
195
235
178
143
201
187
177
140
265
179
202
152
206
165
235
134
190
242
241
254
223
134
134
158
154
195
224
213
216
207
263
253
163
165
223
221
234
223
212
150
206
204
201
161
177
186
256
213
168
211
227
222
247
202
202
179
182
218
180
218
211
234
251
229
232
179
226
182
197
207
211
171
194
211
186
195
216
186
320
180
187
196
169
192
170
148
225
143
203
178
214
179
196
213
221
193
187
185
197
230
250
190
196
209
192
198
258
184
219
194
250
140
181
156
196
199
216
204
151
203
151
246
241
218
168
145
232
230
164
214
168
250
210
218
184
197
179
143
267
190
211
139
212
208
202
213
209
258
226
240
152
205
225
208
180
201
228
179
203
161
223
205
180
246
222
221
174
226
194
225
232
216
185
276
181
216
208
193
209
199
191
261
227
220
194
207
149
173
235
183
225
197
211
242
163
243
227
180
198
248
197
193
208
138
244
190
169
178
214
142
227
206
241
189
202
178
193
226
172
195
181
145
213
216
237
218
184
224
148
162
249
217
168
185
178
260
140
148
176
220
166
152
242
230
227
181
188
258
163
206
196
191
137
251
232
200
180
222
179
244
204
215
166
226
171
220
206
182
243
192
225
241
190
205
213
190
211
227
216
273
231
164
201
177
162
124
131
238
192
224
175
171
174
222
198
215
184
192
220
251
199
206
189
205
159
189
190
170
161
226
261
207
209
171
231
168
224
184
161
134
192
221
121
245
220
221
237
220
194
174
229
242
128
213
177
245
140
214
198
201
216
249
223
186
246
122
213
236
216
188
170
166
167
179
164
193
244
129
231
119
236
224
141
229
191
221
217
204
222
190
219
171
169
164
152
194
194
189
217
190
227
149
205
200
152
126
218
217
189
214
166
174
218
172
243
189
160
201
160
168
190
205
172
191
214
182
170
176
191
139
200
270
160
155
199
240
217
194
250
148
128
170
167
179
156
165
186
226
248
148
182
156
211
156
177
221
198
185
204
166
176
169
204
215
210
156
219
207
246
211
192
184
183
290
170
214
195
210
183
231
198
214
212
184
194
157
210
260
175
196
215
252
196
194
209
228
200
199
107
142
188
153
262
85
187
215
208
213
202
221
190
227
184
191
219
183
258
247
213
138
245
268
214
242
225
189
263
194
188
152
207
174
203
141
197
248
193
218
161
165
224
170
123
175
173
193
176
153
214
234
225
153
222
197
244
198
215
201
163
170
238
175
246
219
152
193
162
207
183
165
234
202
175
211
135
201
233
137
200
181
191
210
220
206
289
107
219
207
206
171
245
182
205
140
229
207
214
188
155
265
170
173
204
241
228
118
230
271
205
152
179
187
271
237
241
203
192
219
170
129
189
229
227
167
213
210
113
150
210
246
201
150
259
214
198
194
192
253
194
199
148
204
183
181
165
204
239
189
181
170
221
185
175
240
192
224
233
243
210
260
185
257
218
159
230
176
242
176
186
256
238
170
208
227
208
208
142
243
129
152
175
202
188
181
166
209
214
188
221
230
172
137
236
156
268
187
155
221
223
176
255
221
211
258
184
197
178
182
215
204
193
238
197
223
236
110
179
165
233
211
193
254
185
168
170
172
197
227
166
248
174
172
172
177
238
183
170
193
139
189
169
227
125
248
187
195
190
180
181
157
153
209
197
230
185
202
209
214
186
148
187
195
211
217
195
231
214
214
249
243
217
225
207
209
272
204
210
233
160
128
188
174
214
166
233
180
218
170
172
147
206
205
165
193
187
183
183
230
181
230
191
173
214
143
195
106
257
253
195
193
220
150
203
235
160
214
193
172
165
174
234
221
253
204
223
240
182
136
214
178
136
186
193
173
231
236
221
203
295
214
187
215
227
207
171
229
233
217
205
167
237
168
190
200
147
144
200
210
194
206
137
211
195
243
172
203
185
177
186
235
171
221
143
249
241
130
243
197
178
165
209
167
189
192
152
253
230
199
286
206
191
161
200
216
187
244
156
190
245
169
195
245
149
215
141
172
156
192
238
243
200
258
135
185
215
197
214
191
214
190
231
243
195
182
217
169
217
192
239
234
206
217
238
172
174
256
241
200
231
167
206
220
257
189
235
200
176
198
236
165
224
166
197
152
234
208
208
237
220
215
222
175
205
183
157
264
179
202
187
199
194
215
196
263
148
194
198
224
158
231
245
171
241
149
195
212
196
228
243
181
217
171
255
237
182
242
191
254
216
163
214
131
243
216
246
203
193
262
177
247
218
218
168
210
227
235
207
225
230
215
196
173
211
195
209
217
199
152
247
134
194
204
236
253
238
153
242
202
159
213
222
237
168
144
217
145
154
175
169
191
211
225
261
172
243
211
174
205
205
217
244
235
197
191
202
209
149
231
217
187
191
188
246
235
198
276
204
161
268
222
199
163
237
160
171
226
195
191
92
222
221
214
250
158
161
190
198
261
156
210
211
217
162
223
118
232
138
206
185
172
190
189
240
181
177
190
193
169
190
176
169
141
183
218
229
233
178
244
206
166
172
209
208
140
210
244
252
214
175
215
192
277
184
262
167
204
244
243
161
162
196
174
233
239
177
203
187
202
249
209
183
203
194
184
230
215
168
220
264
224
200
249
258
189
279
169
222
205
141
217
254
183
180
149
142
263
218
172
221
165
177
204
191
154
185
179
179
221
168
152
247
251
162
208
195
138
302
192
227
207
192
153
225
234
239
181
169
236
188
179
192
226
250
209
198
196
229
218
151
235
190
165
197
189
228
229
196
122
214
197
206
203
210
232
224
267
181
249
184
202
212
171
194
201
206
178
150
164
140
184
211
186
204
269
177
159
242
187
195
284
204
201
222
182
239
250
222
205
192
173
177
180
178
231
230
165
197
189
163
212
210
212
193
233
129
240
228
145
197
207
221
247
255
228
206
148
228
157
180
203
190
168
212
251
236
230
238
143
240
182
137
204
154
250
159
175
173
182
169
178
198
208
184
185
197
180
187
148
170
270
189
226
232
200
217
135
254
171
210
136
201
147
228
158
186
209
178
196
206
193
181
191
266
172
186
220
218
253
191
197
194
211
196
203
163
191
206
233
207
228
178
198
259
149
214
247
179
230
217
193
254
191
184
226
197
179
188
220
211
186
253
230
157
198
202
214
213
207
184
224
204
171
237
202
174
197
154
153
210
129
206
234
146
261
259
199
175
134
177
214
146
212
167
174
198
198
243
230
222
182
253
240
251
215
247
206
225
149
127
223
178
202
229
215
224
189
206
174
221
174
255
215
211
136
188
243
208
208
215
188
179
228
207
203
207
197
200
221
257
221
222
187
170
202
193
273
257
236
218
202
205
216
202
194
225
197
168
155
171
201
239
236
211
218
263
216
180
202
252
195
202
181
233
187
222
228
205
153
181
182
169
199
213
203
199
172
236
249
215
199
238
158
237
194
257
152
220
173
190
178
132
205
213
171
118
278
218
209
226
239
214
221
173
165
185
200
201
202
218
245
186
177
231
169
218
173
143
200
189
169
201
201
213
208
224
230
204
240
149
155
193
239
166
183
187
186
154
217
189
231
221
198
109
174
185
212
147
226
187
216
174
244
255
186
233
215
172
163
182
209
189
198
187
119
161
147
182
234
131
206
206
245
193
229
208
186
241
184
182
211
247
198
158
184
214
240
128
185
187
213
192
121
193
213
173
145
208
190
208
209
212
242
263
177
181
231
221
216
199
236
227
221
147
188
213
220
191
259
193
159
197
196
164
166
205
189
114
171
202
232
235
234
213
207
228
194
184
249
198
182
242
172
176
93
181
246
156
146
129
170
120
260
186
261
142
216
172
143
184
151
180
192
245
167
218
191
238
204
200
158
109
209
205
202
184
185
214
197
195
220
183
209
185
170
135
191
88
213
185
150
250
213
169
154
237
153
146
216
184
153
219
177
240
149
188
257
215
209
196
162
239
168
187
213
142
180
150
229
216
196
250
199
271
234
162
213
221
188
241
242
230
171
181
183
180
238
195
270
186
217
231
195
222
221
171
230
207
209
182
198
228
185
144
267
204
265
202
191
178
215
227
253
236
280
92
192
132
171
176
220
177
177
239
230
197
196
184
233
199
213
247
213
257
240
216
171
212
221
127
168
247
194
179
187
179
189
198
138
187
223
193
217
196
139
231
235
236
278
228
229
164
193
218
198
230
244
193
191
248
131
224
221
200
236
239
185
204
230
278
246
253
226
211
191
205
182
165
250
184
186
191
167
202
148
121
243
221
218
181
117
203
195
193
170
189
113
173
202
222
204
215
213
239
166
214
194
205
217
213
159
206
222
223
206
170
176
166
178
211
185
204
211
161
208
212
250
220
221
266
219
223
213
182
159
163
223
192
152
266
211
144
222
142
226
200
205
200
226
148
243
206
203
131
206
227
228
99
143
213
197
192
199
178
213
187
232
95
226
228
163
161
220
169
194
236
236
195
259
168
217
230
231
232
185
241
202
222
215
196
198
240
213
191
178
160
198
201
193
241
199
167
194
185
207
197
232
167
128
276
191
220
190
258
192
189
163
208
213
152
235
208
210
219
257
141
181
156
219
164
198
277
149
130
230
189
191
193
203
163
250
193
268
149
206
163
158
232
230
264
236
235
148
174
208
228
218
151
203
187
127
174
164
215
248
221
206
249
214
104
216
171
148
168
227
237
235
226
267
189
174
196
243
174
231
169
127
191
123
272
176
227
238
164
185
215
182
204
195
191
199
240
197
181
192
211
216
163
230
168
210
210
182
174
183
170
216
212
238
159
173
212
265
214
178
185
164
197
190
192
199
215
196
216
240
197
237
213
242
161
225
178
166
198
254
219
181
161
192
216
205
185
133
195
194
211
203
244
195
232
196
218
169
146
220
208
267
167
242
207
199
205
202
236
201
198
249
194
197
248
215
251
242
195
226
247
231
242
210
204
78
236
230
244
233
245
212
190
212
177
177
196
160
208
190
206
195
207
235
235
195
235
179
176
172
225
215
143
206
244
214
116
241
186
252
147
203
142
207
262
224
197
212
176
232
220
193
184
246
217
198
143
271
198
193
195
228
234
219
214
233
161
184
214
243
229
238
186
201
197
224
229
234
234
153
196
188
228
139
197
235
172
173
216
229
140
171
239
217
222
224
194
130
207
193
226
264
232
196
193
238
246
186
189
128
232
192
169
254
239
242
259
198
202
233
220
221
216
177
217
174
150
236
235
220
215
210
161
152
219
153
141
246
166
138
209
214
168
192
194
229
198
196
174
256
171
221
226
287
203
235
199
208
237
194
95
214
200
220
148
214
189
253
210
128
151
184
207
180
199
168
207
108
183
131
197
141
165
192
163
184
198
281
220
184
165
221
187
169
219
152
213
175
207
231
229
253
142
190
122
179
225
217
186
146
219
177
202
133
222
216
202
219
185
166
220
242
189
174
187
245
175
179
171
227
188
224
220
236
145
199
198
189
182
190
140
210
248
243
203
167
219
211
199
227
196
246
214
226
165
196
184
158
212
151
189
192
190
239
238
206
181
240
196
197
168
228
189
224
120
255
171
236
128
197
229
167
193
250
223
172
130
249
199
204
153
238
173
210
208
213
220
192
245
139
213
137
230
199
195
188
232
259
201
245
179
241
268
193
205
240
198
141
242
215
227
176
191
205
153
156
172
158
224
128
226
170
177
250
207
180
191
209
197
277
218
181
177
206
200
194
224
218
187
184
209
204
194
189
179
176
174
210
270
251
248
229
200
210
124
196
233
152
197
253
157
193
200
234
140
200
198
221
148
204
197
217
212
169
215
217
196
202
212
227
175
183
185
221
222
208
169
202
136
186
195
162
148
193
187
196
190
216
171
223
253
138
192
221
165
256
160
207
175
231
236
216
143
218
216
197
193
228
216
198
156
137
213
207
218
250
204
238
200
159
215
178
179
217
227
254
190
191
184
144
221
201
158
143
162
196
181
217
189
123
174
217
222
185
189
188
206
209
188
227
194
228
198
212
186
212
189
248
215
242
195
267
202
133
209
214
220
187
258
171
166
195
108
241
164
219
222
239
236
190
256
160
220
210
218
219
178
223
222
204
188
215
240
185
243
243
208
222
160
165
231
226
221
244
184
197
188
202
199
184
178
261
171
216
209
197
196
201
201
235
196
147
234
201
290
138
196
228
245
241
243
190
159
181
173
183
180
193
185
247
260
208
214
226
200
207
266
231
184
189
227
229
216
196
238
228
231
197
215
215
164
204
259
141
191
233
208
226
98
179
217
230
209
213
194
185
210
138
180
224
188
227
180
183
172
202
244
212
155
178
234
184
156
203
111
154
137
215
202
185
284
219
143
233
201
140
253
142
223
128
221
204
172
217
183
193
241
189
213
175
180
186
203
212
214
216
224
200
224
205
176
225
240
195
224
241
203
224
176
196
207
227
180
175
222
213
171
214
222
206
242
186
181
175
197
179
241
225
205
210
189
223
165
256
215
175
219
226
216
141
185
163
200
222
203
206
238
247
157
221
203
159
206
248
242
196
214
194
203
192
202
229
216
228
160
199
214
222
267
213
197
232
269
197
211
258
178
221
253
220
242
167
198
180
148
240
286
223
194
213
178
151
245
227
207
179
180
219
215
189
212
173
212
215
214
241
223
132
175
165
182
221
191
222
231
173
142
200
172
227
227
199
171
229
153
271
154
196
182
143
211
190
188
155
172
176
214
170
206
194
251
207
155
170
237
247
134
212
222
288
183
180
222
173
195
182
176
164
220
175
157
216
249
219
246
220
180
210
243
203
204
237
239
222
248
233
213
187
207
202
145
213
215
229
190
179
176
261
193
184
181
202
189
189
239
196
187
206
219
226
209
237
209
189
250
196
200
200
162
139
249
251
178
173
236
157
208
209
169
165
219
208
191
157
195
193
208
195
188
190
242
247
152
164
158
178
203
239
232
168
139
212
193
185
202
118
252
185
164
202
200
159
162
193
196
153
178
167
167
256
198
180
169
203
305
139
240
144
180
244
242
228
202
235
178
185
218
256
245
210
186
201
178
190
220
216
208
190
190
217
170
176
238
158
145
213
179
184
221
197
234
202
208
206
185
243
196
184
232
216
206
193
214
244
204
253
143
183
212
229
220
183
242
212
166
227
154
216
223
225
191
205
168
183
228
184
181
251
149
201
127
215
142
249
183
233
259
144
219
214
239
195
166
166
217
182
217
199
157
220
212
212
220
178
243
207
266
229
113
184
154
229
164
206
201
187
206
229
255
199
230
172
224
167
210
285
190
180
201
207
170
224
198
168
190
215
155
214
213
191
179
221
175
211
232
169
236
237
243
266
218
233
227
170
142
247
148
149
193
150
182
218
197
249
232
242
181
221
251
183
146
209
209
174
148
204
162
178
262
238
194
158
198
193
156
194
161
232
129
208
225
177
184
168
195
322
182
188
172
143
212
186
267
233
159
225
152
172
174
179
202
245
251
179
185
191
184
213
231
138
214
210
250
215
189
216
187
177
202
176
209
228
137
187
150
189
268
208
190
196
220
180
203
168
195
155
246
211
166
209
230
206
134
198
155
187
234
192
159
223
191
179
220
191
239
240
195
143
209
179
185
271
176
217
202
283
201
218
244
125
255
199
185
205
219
156
178
203
225
191
229
199
184
211
182
153
229
262
228
224
164
194
211
217
141
184
220
248
135
213
209
277
229
194
213
157
204
231
169
242
147
192
205
237
275
218
258
198
276
180
139
227
220
217
217
221
158
228
171
182
213
218
245
199
225
243
246
188
159
205
219
245
196
224
230
212
164
177
221
221
225
253
185
144
167
221
214
205
224
271
230
231
179
141
142
179
201
161
222
264
184
144
247
207
179
203
201
190
256
187
227
193
249
174
271
151
185
195
135
190
160
209
165
259
256
167
161
237
169
180
210
175
219
173
165
154
174
202
189
202
166
249
207
191
173
201
208
236
171
258
201
190
214
226
249
186
239
184
255
197
139
180
184
251
136
241
221
212
172
163
246
209
181
187
216
193
183
159
238
182
198
247
298
239
172
129
200
211
167
197
226
225
165
190
154
224
173
173
240
203
154
217
263
182
251
201
190
276
139
161
182
223
222
188
181
186
277
201
209
198
226
215
212
146
246
225
169
233
279
186
193
265
231
185
214
161
196
171
221
252
203
216
159
127
179
202
166
194
228
217
170
254
146
238
163
238
160
153
227
227
197
138
133
225
164
190
168
157
209
236
219
220
213
134
265
189
186
192
150
211
248
180
199
251
205
190
224
235
236
228
275
267
249
224
225
218
166
207
229
239
186
248
170
206
196
198
157
225
176
185
223
211
125
232
172
162
153
245
185
185
219
231
239
170
185
231
204
216
222
224
141
213
180
148
177
176
231
247
188
101
279
241
218
265
177
244
194
214
198
185
202
189
230
186
212
243
210
243
213
210
180
195
252
196
180
199
125
233
215
138
226
196
170
261
202
205
181
132
243
228
198
281
236
197
142
187
189
137
244
251
225
180
234
193
217
165
168
207
180
242
237
200
271
185
224
209
216
180
182
220
127
228
253
194
215
212
160
145
241
193
158
256
120
190
198
131
198
238
247
231
194
194
160
205
286
195
219
109
239
199
125
171
206
156
162
180
232
148
183
168
230
216
186
235
210
234
201
155
201
175
149
178
207
207
157
217
236
129
219
176
190
200
271
135
248
183
231
189
263
236
170
195
227
210
182
225
169
116
230
200
188
184
167
141
225
194
226
199
221
129
219
162
244
218
219
237
155
169
205
154
208
221
180
241
194
156
221
149
171
213
158
244
171
176
148
240
179
212
241
211
144
175
162
196
185
201
245
176
222
270
184
167
158
204
242
168
213
188
236
184
221
208
254
226
160
243
200
215
173
193
151
211
213
235
216
166
216
209
227
214
155
251
231
142
246
208
168
234
254
189
171
117
147
220
191
252
189
208
112
257
221
152
241
171
237
182
228
186
249
174
177
165
152
192
203
208
218
207
178
178
223
245
183
212
220
197
200
219
161
249
177
261
260
165
233
213
204
198
244
203
183
238
259
223
173
225
138
159
160
204
235
199
223
230
233
183
201
190
191
180
195
175
233
158
211
208
218
180
220
264
210
228
178
248
200
183
175
232
178
208
179
206
168
208
259
198
211
197
271
184
203
177
160
195
197
197
258
253
186
170
201
217
235
181
201
188
234
193
194
222
145
187
202
225
195
133
184
270
184
192
214
159
253
194
174
251
150
179
194
170
289
182
158
198
243
228
248
189
212
139
191
193
167
192
173
188
181
215
262
159
272
162
172
182
154
222
171
188
239
237
244
179
198
206
167
161
236
181
201
224
152
147
189
194
229
213
228
176
224
147
225
225
209
237
171
216
156
213
171
139
151
255
284
219
217
258
187
128
195
207
170
246
224
202
201
200
150
241
223
219
253
203
251
251
231
136
227
192
154
175
150
198
177
162
160
221
143
257
204
235
215
231
202
181
154
233
154
153
204
220
202
238
256
177
132
201
229
157
168
239
201
192
180
261
180
217
214
227
180
217
203
240
229
146
208
187
180
184
230
166
271
220
233
172
217
237
245
231
191
204
166
173
204
207
217
240
207
223
188
243
170
241
160
217
208
200
141
183
183
228
218
133
223
146
210
134
170
191
201
157
208
196
225
248
180
220
230
275
199
186
217
230
295
152
197
200
266
218
202
205
154
158
203
200
227
177
223
194
197
207
230
239
176
192
206
197
217
189
153
164
188
222
239
197
208
202
221
183
168
229
207
217
157
183
217
186
193
220
151
225
216
193
167
215
257
163
148
193
196
139
230
199
227
178
115
212
163
217
247
175
149
207
224
233
210
180
190
216
187
186
111
226
218
238
176
220
169
173
202
261
179
163
232
205
230
192
176
207
182
204
224
234
210
169
243
210
244
208
157
252
198
247
241
234
221
243
153
223
191
235
219
205
223
198
131
199
167
240
187
146
179
243
175
205
190
191
172
217
194
152
170
118
204
215
188
215
220
152
182
164
175
196
177
247
171
174
183
136
208
203
153
141
253
231
100
241
230
218
207
206
203
188
195
242
232
206
210
193
203
223
205
250
190
245
216
196
215
237
197
203
208
250
208
230
169
153
189
220
164
261
207
176
248
231
186
178
271
188
230
226
165
210
232
66
237
255
242
242
211
115
217
245
192
195
241
136
189
239
230
191
201
150
185
159
224
276
152
175
198
230
173
181
244
187
189
218
205
173
189
265
185
204
229
146
252
179
171
252
171
149
166
210
236
237
198
263
197
238
212
202
202
274
173
204
193
184
231
202
252
245
166
245
192
224
135
157
220
167
206
134
177
234
245
207
168
218
220
143
236
215
159
117
207
218
219
190
186
224
218
188
156
249
252
223
216
165
179
213
172
212
131
217
185
228
154
262
190
185
253
203
177
219
183
200
194
225
173
183
211
266
228
216
230
223
190
235
234
177
181
225
226
179
153
180
159
241
175
165
200
200
183
215
169
213
230
242
222
168
199
166
220
199
198
205
270
187
192
219
205
221
131
208
126
182
222
216
186
196
158
131
126
193
185
182
234
261
224
167
233
158
230
184
205
158
205
213
213
279
133
252
236
181
220
221
164
146
207
176
211
177
191
195
181
209
261
131
243
189
206
151
227
198
182
206
196
259
257
189
196
212
286
173
220
175
258
236
207
228
263
220
214
202
241
215
159
182
209
275
253
202
186
227
159
233
229
201
197
188
215
198
183
233
233
178
224
156
256
246
168
234
239
148
232
263
228
196
172
168
181
196
264
223
206
227
182
219
222
197
183
211
221
215
214
277
200
194
210
198
172
226
212
202
196
241
198
197
239
268
197
219
172
175
197
179
107
254
83
198
257
235
175
214
227
159
203
223
214
176
230
190
207
180
189
189
182
231
165
240
245
175
199
236
205
189
144
200
203
223
201
185
256
184
263
190
203
252
247
249
210
169
169
192
182
216
272
224
167
224
185
204
168
156
200
223
161
192
176
177
228
182
259
209
168
175
187
178
273
141
139
177
185
186
175
147
191
206
228
179
194
217
230
135
141
216
201
178
221
193
195
194
184
198
188
213
205
158
224
179
228
161
206
215
218
191
168
264
204
262
237
188
179
149
167
228
150
264
199
254
175
212
216
180
169
258
206
267
226
133
204
188
181
252
255
188
177
184
209
156
198
228
159
187
78
186
178
178
260
188
202
232
152
201
169
139
181
195
235
102
167
176
215
172
238
186
198
202
177
229
187
173
173
248
233
159
213
245
219
208
241
215
161
128
203
221
213
187
240
196
163
155
188
237
236
154
132
295
169
164
172
139
148
232
265
192
153
160
194
179
162
203
138
229
192
168
195
236
216
240
209
180
156
232
120
235
167
123
223
201
212
253
195
180
233
170
199
205
203
259
227
191
178
204
151
193
195
266
183
190
208
204
248
231
144
205
179
174
172
186
192
202
220
219
224
211
164
184
202
214
242
202
230
195
227
220
214
259
182
229
206
176
174
210
180
258
238
129
274
204
193
143
238
188
176
195
187
225
236
227
186
241
223
201
182
180
200
175
199
157
222
211
165
244
180
128
151
191
181
240
232
236
270
189
202
231
156
170
164
185
177
200
196
165
267
280
198
163
202
160
195
237
268
186
187
203
198
202
211
211
195
195
191
153
234
247
171
171
212
228
176
205
198
182
132
223
190
238
230
135
212
176
221
206
225
124
249
296
202
201
215
243
195
247
210
198
239
234
181
196
159
202
186
190
149
276
155
237
266
171
205
164
225
141
159
153
183
234
196
274
246
164
236
141
158
214
174
159
159
208
182
233
186
204
166
188
193
176
225
233
238
208
173
202
214
215
129
248
247
218
228
226
172
244
277
176
156
198
158
254
197
161
191
230
185
225
175
214
225
232
227
195
226
229
255
147
256
193
217
179
222
218
213
110
236
188
232
168
212
175
222
194
216
220
227
225
202
134
175
204
158
195
277
171
240
193
211
245
266
206
235
217
206
181
231
204
198
187
165
180
229
249
228
169
172
184
231
211
151
226
191
175
180
225
201
224
210
199
191
190
259
211
201
300
181
188
128
218
147
214
221
186
198
202
228
224
175
196
219
151
214
202
206
156
223
175
212
138
186
149
198
197
196
179
185
203
213
167
267
167
214
218
142
198
224
261
202
135
236
247
183
170
117
178
164
207
218
176
192
212
206
160
234
192
167
245
164
202
180
109
241
168
233
176
205
235
266
145
133
191
231
243
246
257
212
234
157
273
242
175
227
252
237
229
216
197
167
223
220
194
156
237
207
209
190
107
160
217
201
179
175
193
179
167
132
240
160
183
235
172
217
202
151
169
193
248
149
169
157
225
175
157
194
213
201
266
248
131
145
196
213
191
220
211
254
203
190
119
233
182
203
188
172
209
221
238
199
221
167
174
187
202
177
192
183
211
134
184
129
177
163
191
232
244
210
208
230
212
201
135
188
186
194
223
201
189
183
230
266
226
160
198
232
190
214
198
179
169
219
238
206
199
203
181
109
231
177
224
165
166
213
222
214
209
186
217
174
203
203
199
189
227
210
179
192
167
244
168
152
206
201
165
239
149
169
221
207
226
197
230
190
222
219
180
269
230
201
221
177
187
208
255
204
175
121
227
220
132
160
190
183
221
216
172
198
180
210
197
223
172
204
206
228
197
157
166
154
246
215
271
162
251
219
215
219
184
142
240
169
176
196
217
167
201
203
171
275
170
194
217
183
130
222
191
227
191
176
167
245
203
182
161
215
253
181
144
175
269
144
215
238
169
129
225
247
152
216
230
157
233
183
251
216
169
163
213
187
262
229
145
209
266
196
202
203
270
185
184
262
185
177
149
159
205
209
163
201
253
256
220
183
223
191
225
171
245
203
176
191
204
186
220
201
241
198
250
198
218
200
254
222
209
235
220
132
215
224
185
251
219
193
179
233
151
263
227
209
215
187
169
138
187
209
196
236
195
151
182
209
187
233
200
255
240
213
233
198
213
224
216
196
159
119
171
169
179
196
165
184
203
240
203
198
222
201
217
206
240
178
164
220
201
201
157
213
235
169
152
234
212
263
156
205
162
195
154
217
227
255
211
223
250
166
223
130
257
245
244
184
195
250
192
197
222
248
208
233
236
222
189
181
216
214
206
254
248
138
211
157
225
244
163
137
187
186
139
151
191
239
274
227
165
244
172
233
228
170
155
218
229
234
193
156
222
169
199
139
182
230
225
146
189
256
185
227
169
212
225
210
280
176
225
203
202
154
239
177
203
145
192
273
219
200
238
195
186
212
182
214
217
243
244
174
237
183
205
157
219
202
214
199
170
198
187
246
168
202
225
171
199
222
226
201
212
222
202
253
233
188
197
228
286
167
222
278
223
264
205
178
170
215
224
221
243
198
208
181
248
187
163
222
216
201
219
221
200
198
202
205
169
250
192
217
162
234
206
145
169
198
132
242
194
222
193
202
291
241
150
122
228
205
173
235
186
200
241
191
264
171
222
210
247
169
153
192
119
237
219
224
242
131
244
200
164
168
264
235
247
249
125
266
225
216
163
172
130
213
176
154
226
237
247
168
219
200
224
259
215
210
218
166
205
240
214
191
223
201
187
168
192
239
188
181
168
247
208
140
218
205
228
162
242
221
155
189
239
116
206
184
183
210
245
181
233
207
219
155
161
224
174
178
229
186
172
221
217
248
252
178
249
259
211
196
244
150
134
174
215
216
269
206
255
215
231
185
147
156
149
225
198
145
200
175
176
169
233
216
245
217
209
152
182
274
173
257
209
220
164
181
226
195
265
214
213
177
133
177
209
209
209
179
236
161
172
180
216
192
165
232
183
252
177
229
217
203
240
210
187
255
186
187
174
234
191
227
221
226
141
159
155
260
198
189
232
156
283
194
213
183
186
237
208
191
240
232
202
212
230
265
195
256
179
174
245
165
114
164
170
204
252
197
192
213
227
175
176
187
184
246
204
228
231
175
222
166
198
214
230
224
210
234
180
146
184
191
230
234
228
258
211
265
213
175
154
233
177
220
204
122
226
201
240
136
201
210
200
162
242
222
219
191
196
229
164
223
198
248
214
191
230
154
217
154
228
195
207
198
233
147
222
180
165
201
191
197
225
180
189
189
196
201
218
178
262
184
258
222
190
181
201
174
214
200
209
162
229
208
207
177
198
250
208
254
212
179
185
168
245
174
180
213
213
207
230
147
202
245
197
225
221
192
221
183
148
142
221
225
210
151
184
216
164
226
191
219
186
179
236
185
197
200
215
161
186
229
218
165
181
196
239
163
184
183
106
181
101
180
151
190
201
156
220
184
241
174
170
162
206
215
165
184
200
225
192
160
178
217
196
198
197
161
129
219
220
166
229
199
202
227
216
151
228
135
230
199
181
210
218
164
189
207
232
183
214
253
241
192
163
142
238
177
209
237
235
264
196
148
215
221
222
266
239
204
220
203
205
149
211
128
160
245
191
199
213
200
208
110
220
201
219
241
182
192
184
251
197
255
159
152
227
183
258
213
208
175
202
251
200
226
276
189
252
163
233
202
164
176
255
254
255
210
153
204
193
154
209
123
180
251
197
209
231
200
221
271
235
157
175
214
234
234
150
224
189
229
161
244
164
137
172
202
149
220
205
193
230
198
237
169
246
215
227
168
205
221
190
153
167
260
230
152
242
148
222
218
226
190
214
205
270
170
223
162
197
231
262
176
180
207
211
182
196
257
210
161
224
238
231
250
247
196
239
268
237
208
219
215
210
173
190
205
169
186
180
192
185
142
135
172
175
197
187
141
239
166
174
175
191
131
242
191
156
178
210
187
145
186
136
228
214
166
178
201
241
197
211
212
188
249
239
191
207
168
191
231
268
222
238
198
225
266
222
186
187
162
207
238
209
216
174
227
249
171
150
243
236
209
145
179
247
182
225
204
283
229
159
204
265
214
202
234
175
250
222
233
163
150
168
140
263
213
141
161
179
162
159
238
279
121
165
159
259
187
149
206
196
207
146
204
206
233
181
177
229
171
206
157
210
256
229
206
239
221
235
232
230
189
163
151
192
224
161
202
221
175
205
184
212
163
170
167
177
209
185
186
249
171
179
229
221
233
226
213
254
241
187
221
183
189
229
199
193
211
212
222
193
198
269
196
190
184
253
140
154
270
235
214
113
231
204
249
161
236
184
198
226
194
185
156
213
206
167
161
200
246
169
192
187
200
165
220
210
206
216
190
255
232
155
213
191
155
147
251
224
233
216
279
221
226
208
146
165
218
142
180
199
240
199
162
248
176
163
216
239
147
213
243
218
219
123
235
198
185
197
230
259
210
208
150
173
184
197
140
192
222
136
239
216
209
215
141
144
240
185
195
209
218
247
211
169
204
226
199
151
186
235
227
246
203
249
219
263
304
201
146
204
199
161
173
231
190
169
150
180
221
198
188
239
182
166
152
182
170
148
173
194
169
116
212
207
202
171
205
182
183
192
204
226
230
209
174
187
179
166
212
194
178
222
185
172
237
179
171
199
210
231
238
249
231
215
160
163
274
197
164
152
216
161
175
144
219
170
212
188
178
237
212
232
283
192
235
218
193
224
228
222
230
228
177
262
170
170
204
211
188
164
268
188
241
216
169
235
184
220
196
196
167
239
209
174
164
187
256
197
191
140
134
212
145
133
189
183
193
220
175
230
142
146
216
237
174
177
249
144
209
224
193
192
218
184
209
180
162
171
167
189
173
215
268
163
204
206
186
238
189
181
255
246
229
184
191
202
185
253
233
237
231
244
166
210
195
159
196
169
264
231
221
223
153
209
180
158
199
241
175
193
177
243
228
227
206
121
139
284
218
236
188
191
228
223
218
214
241
238
270
205
183
141
201
272
144
196
182
220
139
209
274
187
207
199
167
167
238
211
161
231
176
161
199
254
161
172
229
233
178
222
195
221
156
136
241
203
232
204
224
214
174
213
220
223
205
189
172
250
210
222
228
185
198
225
167
212
198
181
146
165
229
218
229
242
221
233
144
198
143
184
188
168
208
225
232
189
198
165
205
180
248
259
205
246
202
184
158
196
211
170
219
242
154
230
134
179
232
229
257
176
219
207
232
167
211
242
206
231
206
184
162
202
218
237
170
246
145
179
160
160
164
212
124
190
225
207
231
197
150
207
196
213
179
179
182
227
197
180
216
147
155
217
180
125
187
175
168
215
185
236
159
228
190
187
228
184
104
143
216
228
196
141
124
172
190
227
211
189
183
222
218
201
195
212
176
211
207
191
204
204
211
174
237
166
216
141
205
183
190
217
247
197
233
218
179
106
177
114
183
176
242
179
180
220
147
209
124
228
171
206
207
186
260
218
180
164
218
232
204
218
220
131
195
179
185
207
217
200
199
187
227
251
244
174
254
164
206
124
162
243
241
160
217
177
203
201
204
171
203
233
250
225
204
161
192
240
188
179
173
193
180
183
193
200
235
209
183
157
210
156
207
210
161
195
144
220
241
183
215
147
173
218
219
247
214
220
160
189
214
240
233
201
194
242
257
209
199
195
145
249
217
155
195
243
138
175
165
225
223
216
187
256
150
223
272
196
205
208
235
201
194
225
174
216
219
147
181
250
190
223
222
244
171
197
160
204
177
143
216
195
208
217
186
165
181
237
156
221
231
173
166
250
193
219
128
187
193
133
138
213
232
173
180
187
243
222
206
210
199
184
230
168
200
234
167
208
124
199
120
216
203
230
227
168
232
193
180
182
256
197
211
247
217
185
204
198
198
230
170
172
242
238
228
119
265
156
161
201
221
158
172
237
197
182
211
150
227
224
187
168
146
203
231
198
216
175
191
183
200
209
235
231
183
167
149
211
247
255
241
248
217
253
208
193
253
212
236
215
203
105
199
103
190
203
252
182
173
194
162
235
199
100
244
166
167
187
255
223
157
197
240
140
249
184
181
166
189
222
236
252
151
199
200
137
179
222
232
167
184
228
91
203
182
179
211
250
206
152
209
233
115
170
246
193
230
213
263
219
227
193
206
204
185
169
227
180
236
215
181
172
235
208
179
159
127
249
227
202
174
187
193
173
224
213
168
147
233
145
181
263
219
155
183
129
199
148
172
239
212
231
178
146
161
244
188
167
181
225
231
173
261
224
180
223
124
188
242
217
244
184
128
218
160
204
138
130
185
218
220
260
176
198
174
193
216
261
188
251
197
246
183
271
194
211
212
243
220
185
248
207
233
193
213
168
177
225
236
151
196
185
178
172
214
201
230
137
230
180
153
119
123
163
157
217
213
191
243
242
171
226
165
196
139
189
182
184
223
238
149
227
178
170
150
146
168
278
188
216
221
215
203
185
231
199
184
222
211
160
190
243
210
212
192
196
221
173
170
238
172
205
197
200
208
158
152
191
223
167
140
166
223
210
120
233
264
205
192
163
184
208
241
190
157
165
229
206
179
174
222
214
255
165
136
250
231
169
193
208
152
180
213
192
202
221
242
238
192
194
138
218
222
233
215
174
202
170
176
199
183
186
191
194
198
214
236
161
231
170
167
233
234
237
208
211
146
202
274
221
247
175
202
234
215
200
226
204
152
200
173
227
196
149
194
173
217
197
213
163
227
220
182
184
240
203
231
229
187
209
222
187
209
190
246
251
232
219
146
231
223
163
255
131
208
176
242
165
164
176
168
209
245
207
181
216
237
213
319
192
195
221
165
227
169
200
223
170
179
201
213
179
102
266
175
233
153
212
142
239
158
159
176
183
191
168
221
228
137
159
231
186
181
179
192
220
220
258
258
177
168
187
182
180
214
204
177
196
204
149
191
194
185
228
210
187
200
126
169
169
194
235
178
190
247
161
241
218
193
206
209
188
160
185
250
191
225
208
169
148
217
163
212
169
186
214
189
228
244
198
199
177
208
213
208
228
194
197
234
215
126
186
241
227
204
251
206
222
187
177
217
215
172
174
240
199
181
186
210
232
190
246
242
234
197
243
246
206
222
158
168
186
225
180
145
186
229
142
230
195
231
195
215
184
224
127
189
224
230
253
184
206
151
239
163
237
173
197
201
169
192
221
245
205
204
167
229
267
141
220
147
132
208
141
204
219
146
199
144
209
244
249
225
120
191
168
138
152
230
173
171
162
271
184
210
170
209
233
155
218
252
115
223
167
187
198
177
204
171
209
188
238
154
159
236
217
166
226
233
212
232
152
212
219
168
193
224
223
232
224
210
199
209
242
263
140
206
208
175
194
149
204
193
182
153
208
175
170
188
254
142
182
148
176
190
276
195
150
178
219
202
192
173
204
227
189
175
192
184
227
137
223
220
139
200
227
224
230
205
232
178
215
241
171
230
227
187
224
214
207
265
163
225
197
211
203
261
249
222
196
214
217
188
143
176
216
207
245
200
148
239
192
252
187
156
175
253
98
206
130
181
213
192
180
184
218
200
250
188
242
158
178
178
188
155
224
203
243
178
164
203
208
212
168
175
153
156
232
201
215
159
225
170
182
207
235
201
142
210
185
210
191
189
188
223
246
174
88
208
195
237
142
247
242
250
284
121
195
242
225
165
197
234
246
188
193
158
236
187
204
190
228
212
260
235
206
261
256
171
163
199
216
150
146
205
161
225
215
231
233
197
174
265
190
162
190
168
224
219
166
184
185
181
123
195
188
221
185
201
198
191
146
186
178
226
244
151
170
224
180
214
159
255
169
232
178
176
190
218
174
142
219
224
182
235
207
212
164
255
235
186
229
169
203
163
218
245
253
227
227
215
217
200
199
179
202
134
151
188
156
200
156
238
117
187
149
224
206
279
195
208
195
186
145
126
191
252
193
161
227
196
225
92
203
183
190
184
214
160
220
156
215
193
146
193
203
207
192
184
141
212
186
207
192
169
174
182
165
251
263
180
188
156
218
171
153
126
180
148
115
213
176
191
224
193
238
198
177
209
253
185
177
195
164
195
200
212
216
193
194
191
198
205
252
172
184
198
233
234
173
156
220
211
274
141
194
261
234
271
196
179
202
88
214
205
166
183
216
222
192
224
225
148
185
184
153
240
163
177
188
177
214
189
209
177
230
162
202
178
243
178
155
196
174
185
88
206
104
201
214
163
219
190
215
225
177
270
174
169
190
260
238
201
180
228
221
199
130
192
136
159
197
219
194
183
178
241
159
154
175
184
155
165
166
198
246
212
198
207
254
149
166
178
183
242
206
207
189
227
199
205
249
247
185
174
163
207
244
154
148
223
198
183
227
214
203
129
199
202
250
200
212
162
192
247
239
222
213
170
188
190
177
198
218
113
165
148
222
262
204
156
218
176
144
212
197
177
198
234
248
184
221
216
229
239
217
200
235
205
162
165
203
159
235
240
173
224
197
178
172
220
210
224
139
211
208
267
269
184
177
135
172
162
202
210
254
173
264
237
184
219
178
221
193
193
202
163
198
234
195
215
152
254
200
173
233
214
177
207
128
225
163
163
232
164
271
224
202
150
150
272
232
213
142
240
199
129
194
141
223
172
161
219
206
202
248
162
193
198
182
237
182
235
166
215
175
232
258
200
232
155
211
223
211
246
190
195
220
214
248
158
243
248
198
206
227
184
228
192
233
247
274
267
185
203
202
250
222
200
223
208
200
216
169
152
205
175
167
237
175
135
213
170
158
150
155
148
156
169
189
215
213
219
174
157
209
203
193
204
252
242
196
154
196
223
208
188
224
197
212
216
193
166
237
238
214
206
177
170
194
140
156
135
268
156
195
196
178
209
239
176
227
159
214
207
205
179
240
174
174
244
222
244
211
206
213
182
220
235
205
180
219
167
249
228
205
189
161
154
212
161
208
184
207
211
211
162
228
212
222
293
262
215
223
239
156
206
163
219
162
235
192
164
200
204
183
159
132
189
221
169
234
203
221
211
234
144
192
188
212
206
237
142
213
215
228
184
159
260
160
134
162
233
176
178
162
181
174
211
173
183
228
269
253
254
190
169
127
204
241
192
141
168
178
204
209
158
185
192
186
195
157
174
202
215
182
213
209
149
183
203
231
205
170
205
196
217
140
206
144
261
225
190
187
147
177
160
185
167
199
203
220
142
230
235
230
172
164
166
234
250
137
277
174
255
232
208
274
211
158
230
201
178
196
181
287
184
179
200
183
224
195
226
164
216
226
170
188
190
137
169
178
197
220
246
213
196
264
179
120
186
244
208
214
199
171
216
231
263
261
186
217
218
199
186
219
189
226
214
168
193
218
260
181
238
188
214
173
182
199
197
271
185
226
202
120
143
233
205
174
194
246
209
157
256
184
183
153
215
236
173
199
217
168
152
255
249
220
172
183
227
205
183
230
216
246
204
230
201
149
187
193
182
203
208
171
154
158
192
184
208
288
188
189
226
187
160
181
273
191
232
181
199
234
206
255
200
191
218
213
211
228
217
205
261
225
193
210
146
206
230
246
195
185
248
230
237
207
211
220
199
244
155
200
233
233
194
199
174
213
173
120
241
197
184
221
209
176
232
203
196
214
216
151
212
178
232
193
196
201
223
169
240
187
210
264
184
235
203
189
192
212
172
143
191
211
276
212
183
238
194
196
154
238
168
231
238
155
233
154
176
241
228
225
223
179
252
208
218
242
153
267
198
236
183
202
194
194
153
209
145
226
207
138
227
191
246
183
159
181
213
235
142
223
197
209
215
261
205
190
149
222
185
198
237
198
225
271
236
133
172
236
248
177
161
202
228
228
232
206
183
212
158
142
225
256
205
211
230
163
262
211
186
192
273
199
135
201
252
237
184
177
184
163
208
232
222
245
240
205
242
207
214
203
237
241
179
237
179
231
135
176
204
156
214
231
174
214
179
214
159
240
213
196
168
187
187
179
211
152
148
209
147
178
187
194
234
166
208
232
198
208
157
193
216
153
267
153
215
184
188
221
270
185
166
128
229
199
231
228
179
213
229
238
234
213
227
240
231
132
157
215
279
140
246
205
165
287
187
175
175
203
184
199
169
138
179
245
216
239
205
181
223
131
165
198
246
236
214
258
227
181
192
231
220
144
238
190
220
188
229
172
272
144
169
233
207
199
152
159
244
220
288
145
190
237
207
197
158
246
218
189
197
162
186
196
217
220
178
223
157
211
205
242
170
210
184
219
205
194
240
188
224
224
143
178
230
153
116
188
254
232
202
191
190
142
228
146
187
216
205
211
197
179
212
156
155
190
182
242
221
187
219
227
174
184
191
215
147
249
202
260
218
214
134
193
235
245
206
232
225
234
189
169
178
210
222
172
233
146
228
217
193
205
195
191
201
158
192
161
248
193
203
187
196
194
143
213
237
150
143
221
180
209
158
218
290
168
212
157
257
227
171
150
153
166
206
256
197
179
146
166
206
211
237
225
217
176
192
210
215
206
192
173
180
183
263
184
197
170
209
250
223
248
152
208
151
140
215
191
232
200
150
174
196
196
184
178
192
251
260
119
173
193
193
224
217
164
182
239
117
182
191
201
211
199
250
158
160
216
216
200
227
232
187
232
207
188
139
257
244
183
215
157
127
168
190
155
145
187
219
255
217
240
220
174
159
254
289
146
205
222
145
193
166
151
153
210
207
172
215
201
218
224
227
233
194
188
176
168
167
225
152
220
204
169
171
257
222
205
227
213
181
160
205
197
224
265
219
225
225
189
260
188
189
209
208
241
260
145
172
160
216
238
219
191
236
287
197
232
203
197
198
139
218
180
163
183
204
189
238
187
256
245
210
95
223
249
186
191
174
186
171
183
235
191
217
190
244
177
249
230
229
200
183
219
225
188
173
196
177
209
133
116
260
214
219
211
200
241
193
224
246
154
233
221
180
220
241
201
148
236
179
202
169
179
140
244
185
213
193
133
224
235
286
259
178
199
272
167
157
167
183
213
229
202
242
238
243
205
179
195
194
211
211
190
178
262
214
168
208
190
187
147
270
221
162
253
155
235
191
173
213
212
221
198
252
227
149
264
238
149
178
201
119
195
192
141
217
182
163
154
256
187
241
202
182
171
204
216
217
200
209
163
203
103
166
243
209
224
237
270
212
210
191
182
286
220
169
225
216
183
172
132
193
134
250
244
220
238
225
172
173
182
204
169
212
206
189
254
211
246
210
190
217
195
226
244
168
221
217
217
245
225
159
175
234
141
263
209
188
196
185
206
202
176
213
236
193
192
222
213
124
130
243
211
197
237
233
171
182
184
205
177
103
182
152
183
257
209
124
159
164
255
173
126
192
211
184
258
245
152
184
219
233
183
172
230
200
207
196
187
191
225
198
225
172
190
215
198
173
164
257
201
228
276
199
171
108
210
228
202
239
126
229
208
184
192
226
188
169
150
241
208
201
122
158
201
165
159
228
181
213
248
216
242
173
149
175
225
176
192
213
222
213
270
139
222
254
216
186
201
167
166
223
203
210
220
269
247
203
260
195
207
167
251
165
248
254
203
173
226
227
153
178
163
223
217
167
187
234
199
188
184
204
200
226
220
172
239
237
190
124
137
181
181
185
201
129
192
199
166
235
205
214
207
234
207
182
212
217
136
218
190
188
169
143
212
224
237
210
253
243
237
172
209
195
225
246
173
188
200
166
156
169
213
206
227
206
240
197
203
223
177
177
162
231
239
249
168
194
225
174
164
208
181
185
179
197
199
191
148
255
233
230
214
256
239
214
182
221
221
221
205
210
255
185
211
223
212
199
258
192
249
223
207
167
159
194
166
284
228
151
151
210
143
218
172
244
209
201
233
214
160
130
199
200
218
238
210
217
191
200
237
219
253
197
201
204
236
196
177
243
250
202
186
172
233
228
242
172
233
176
240
224
200
195
165
191
209
207
208
201
194
226
201
224
221
246
240
228
216
157
173
291
262
241
200
233
231
164
133
231
108
218
197
203
234
196
150
189
230
220
262
194
204
163
149
195
211
223
185
208
176
173
218
168
205
134
166
250
234
126
147
165
222
206
258
214
198
231
212
212
184
186
180
217
187
194
166
218
152
161
233
206
237
166
208
194
194
233
206
200
155
189
211
160
233
164
244
167
231
212
197
168
207
254
219
236
206
236
205
137
211
229
237
179
214
126
230
203
160
253
175
256
169
144
187
236
233
209
238
222
134
188
220
180
187
195
252
157
199
256
219
223
178
250
190
211
231
272
224
207
205
195
182
174
218
139
218
141
170
166
193
210
211
206
150
207
173
222
231
223
182
240
227
197
158
85
232
132
223
202
165
224
208
232
161
177
200
124
255
222
216
195
206
150
232
202
216
226
207
204
233
209
245
209
217
135
228
159
250
185
171
169
163
213
167
211
166
193
194
240
200
197
188
248
208
222
224
144
239
195
209
221
254
181
179
239
180
171
210
204
172
226
196
182
157
88
180
215
161
142
160
175
214
219
231
111
209
208
239
193
168
232
162
200
188
176
164
213
177
211
210
149
209
126
161
138
150
273
214
229
230
200
247
127
229
203
211
141
165
227
157
211
145
166
186
142
227
135
241
179
228
193
174
252
201
218
172
258
169
221
228
231
243
222
247
222
192
224
136
206
189
219
213
248
249
249
212
185
180
205
248
241
169
217
227
174
185
191
186
149
190
180
199
186
195
199
213
262
182
185
182
181
206
204
245
178
199
245
165
255
250
211
153
255
194
176
212
260
143
186
217
179
245
206
180
189
209
189
152
220
240
170
156
272
193
223
199
209
126
186
218
193
225
182
181
184
167
221
226
209
231
237
185
179
252
164
189
207
204
179
230
228
181
140
191
227
154
158
234
186
273
242
211
186
207
222
177
164
198
180
168
235
191
198
179
178
187
189
155
168
207
230
188
232
199
225
205
192
190
192
167
236
129
161
187
227
223
204
207
153
198
228
175
241
212
201
186
189
245
164
223
181
216
217
219
264
184
154
199
174
203
183
210
201
209
203
143
207
247
230
243
213
224
218
158
176
210
154
168
172
142
185
175
184
209
191
211
214
168
232
167
137
205
269
206
192
169
252
176
188
222
112
187
217
170
154
196
213
208
170
193
213
211
222
239
222
149
225
245
197
201
222
163
211
206
223
207
143
176
179
209
160
254
235
205
208
198
211
202
186
184
258
203
108
144
185
251
221
238
166
212
149
141
206
242
201
238
152
172
208
256
244
222
204
194
211
125
165
223
222
213
152
161
185
261
209
180
237
247
158
192
235
222
195
197
230
215
185
173
173
201
148
207
248
226
184
253
165
212
209
193
175
239
239
188
210
175
197
187
238
214
241
195
173
251
183
233
214
182
239
168
161
258
180
172
156
205
196
181
255
170
218
216
234
109
178
182
183
153
196
181
195
222
191
204
198
213
219
204
138
157
162
218
223
190
165
227
244
177
189
204
175
196
249
229
148
201
191
240
205
177
248
192
226
117
184
199
234
238
223
119
220
205
209
202
205
214
218
142
200
194
234
211
189
165
204
198
236
227
215
162
179
228
184
233
148
247
219
202
209
246
254
264
244
135
216
215
245
193
199
216
199
129
199
221
193
221
245
209
216
165
262
219
213
167
252
196
223
253
212
187
291
196
217
203
253
165
184
193
152
161
244
199
215
243
124
150
225
171
202
195
253
256
132
234
245
119
184
194
230
222
147
211
195
202
159
197
110
242
245
198
143
245
101
216
176
138
230
203
198
93
199
220
137
127
147
158
245
215
219
169
217
243
206
180
221
170
259
189
169
266
203
200
210
201
228
230
168
232
198
233
219
218
170
146
215
244
191
167
212
205
223
217
162
180
191
199
185
179
149
156
186
206
218
204
163
244
254
246
185
223
208
174
190
206
175
194
233
218
160
198
214
235
221
163
220
181
203
192
217
224
266
254
267
236
208
189
193
247
206
202
224
272
184
261
194
164
152
93
194
236
162
148
152
253
205
179
130
214
137
216
212
230
226
216
200
221
205
194
248
213
233
202
241
229
155
216
227
182
182
219
216
217
176
217
194
140
231
186
212
154
123
180
191
257
237
192
251
197
222
201
185
176
208
260
239
148
186
213
161
220
224
222
218
176
212
173
189
128
185
202
179
199
143
185
231
239
195
299
222
185
210
198
220
228
200
209
227
211
177
128
225
239
189
258
184
209
176
157
187
174
217
199
186
216
176
130
186
163
195
185
218
190
230
168
189
185
225
201
202
198
214
233
177
79
210
186
215
233
189
152
227
109
162
233
181
192
244
229
218
201
175
246
180
183
212
181
203
158
246
233
166
233
251
214
172
182
135
249
180
216
259
253
171
137
172
190
226
140
158
256
181
194
247
203
218
203
269
236
210
189
176
167
217
145
261
198
176
119
209
169
236
175
197
215
205
200
172
120
106
162
186
193
191
228
183
186
179
197
220
191
180
221
152
231
211
181
172
165
148
147
219
176
186
212
181
251
245
164
195
190
183
145
211
223
200
274
188
170
244
192
206
183
232
182
210
126
196
212
205
228
173
249
198
276
219
254
220
274
238
138
177
208
201
158
194
201
163
213
222
198
182
155
262
213
223
175
211
154
209
182
179
188
150
193
138
193
204
196
198
168
224
196
261
191
267
197
280
148
223
163
184
261
153
248
172
200
169
179
217
235
170
206
185
229
199
200
199
187
227
272
228
233
198
191
202
255
229
196
248
196
192
224
122
189
193
167
157
220
219
202
254
220
198
207
135
187
162
206
214
244
203
223
230
192
222
215
212
235
229
255
237
203
198
208
222
228
211
205
191
236
233
202
190
226
202
198
162
208
268
201
226
165
161
194
220
187
252
209
203
220
238
198
141
152
230
230
182
202
114
125
206
242
220
186
255
220
235
173
204
151
146
195
287
259
176
230
184
201
226
177
214
166
237
187
261
200
161
182
231
183
125
249
230
189
256
203
189
242
211
294
204
184
181
234
199
173
186
155
241
206
218
206
221
206
264
215
254
212
161
223
159
183
146
187
203
141
234
219
196
187
222
241
229
155
156
155
271
186
196
239
218
140
264
142
229
201
213
156
187
160
212
172
176
237
191
219
206
232
150
249
209
241
181
215
247
175
269
184
238
226
185
198
214
225
210
151
208
289
201
220
148
200
202
242
186
139
173
167
181
228
168
219
185
226
146
224
187
197
231
190
226
222
226
210
184
203
266
196
118
152
237
240
170
145
197
166
202
193
162
189
201
197
231
207
204
213
194
222
205
164
223
251
235
210
178
186
238
211
181
158
131
233
191
194
228
191
185
201
256
159
175
198
165
143
218
202
254
226
169
206
195
143
233
204
271
230
169
154
207
220
135
270
164
220
213
181
218
119
179
222
214
229
183
168
191
204
196
198
221
115
179
203
223
231
240
254
146
229
198
159
226
209
173
144
193
183
240
276
174
192
175
197
220
199
233
222
211
161
150
230
163
227
216
226
190
199
181
232
181
192
149
204
244
248
212
171
210
235
217
219
245
149
209
241
218
200
152
171
156
215
198
227
281
244
206
220
178
224
170
231
269
260
220
166
204
218
203
208
163
208
272
190
138
249
120
191
134
176
169
154
177
230
226
154
242
230
230
180
172
199
208
193
229
183
214
135
176
219
211
156
255
176
202
192
224
218
164
242
215
172
150
109
257
138
157
150
195
238
208
280
171
174
201
188
214
229
266
115
219
211
236
199
160
217
188
238
218
141
170
173
245
207
205
208
175
200
174
233
147
223
205
200
192
243
115
214
121
185
195
140
148
174
265
178
200
191
204
192
192
228
168
250
241
161
166
237
213
187
208
179
206
133
281
129
224
220
194
194
172
219
176
194
220
151
174
220
184
193
187
247
259
241
189
230
162
192
282
228
215
213
152
250
172
192
251
260
169
154
242
226
181
165
206
217
215
175
191
163
189
237
196
269
183
237
206
289
213
176
189
184
193
154
128
193
188
196
211
245
139
264
193
218
208
178
260
197
205
216
213
223
190
226
224
204
181
211
208
227
146
174
188
151
236
235
208
241
197
215
171
166
203
228
173
237
203
197
217
179
149
228
207
141
213
168
225
203
218
225
219
193
163
219
274
239
222
191
209
209
206
183
198
222
191
151
175
196
222
120
168
240
211
188
171
225
141
194
220
179
228
205
232
185
180
196
220
238
160
161
235
257
202
170
201
212
153
176
169
161
233
178
225
187
218
131
248
163
128
215
224
201
190
186
239
238
219
204
172
184
197
191
148
172
265
234
243
216
164
213
228
159
111
225
159
218
221
202
185
184
154
186
241
191
223
260
222
220
197
185
207
195
246
199
198
167
214
227
152
206
222
232
227
135
121
159
199
236
151
218
196
220
182
213
210
226
265
226
191
137
221
206
190
174
187
143
134
241
217
235
224
155
188
205
193
239
182
196
188
244
201
191
154
150
189
161
204
179
176
175
147
188
160
112
236
144
262
210
228
211
240
262
221
196
107
186
168
156
241
170
103
167
231
222
232
222
178
111
222
217
190
237
200
273
228
203
154
195
193
210
197
181
173
269
193
153
191
246
166
210
206
198
234
221
131
192
211
151
238
206
163
228
203
208
249
151
219
136
260
184
152
191
188
219
167
222
155
227
158
237
220
221
185
216
167
137
195
215
168
236
201
251
215
174
171
239
174
221
192
127
182
225
131
169
137
190
233
228
245
240
213
157
242
212
212
183
234
189
131
150
210
161
213
183
184
219
176
240
192
206
192
133
208
208
170
216
153
261
251
215
185
220
198
223
206
232
189
231
259
165
223
230
230
226
236
132
208
212
273
232
182
144
191
200
208
210
174
191
184
171
151
222
222
178
210
151
220
221
178
227
205
214
198
166
295
254
220
170
210
180
132
162
187
207
186
172
170
149
179
184
146
168
144
167
210
225
199
200
176
133
212
209
175
250
175
188
209
266
175
216
203
210
220
196
238
212
231
210
273
139
149
191
167
223
253
195
214
212
182
229
214
203
242
177
230
215
192
244
159
237
209
256
185
202
230
161
199
227
216
234
253
221
172
209
243
202
140
239
186
141
219
169
173
230
207
181
214
196
206
176
214
207
190
127
163
224
192
191
185
164
206
120
171
245
225
174
165
238
246
198
175
199
204
228
206
161
156
179
169
187
241
188
202
202
167
225
233
152
234
218
166
235
191
135
266
180
289
205
208
228
244
221
175
235
226
200
156
169
214
236
168
232
116
231
203
201
158
191
227
206
231
199
205
287
208
198
169
212
214
145
159
215
239
158
126
226
133
230
213
207
209
124
186
177
209
166
160
229
200
171
203
197
241
245
191
168
168
244
163
186
216
157
255
226
175
122
204
206
197
216
222
220
172
205
202
156
154
209
171
214
190
245
223
283
196
244
202
185
224
224
228
200
207
175
234
162
247
235
197
155
189
192
133
206
188
215
229
166
229
156
200
176
204
204
163
153
200
203
214
237
226
233
231
168
221
220
195
234
188
228
199
193
224
188
235
225
237
164
155
279
230
202
225
211
202
157
191
200
163
257
227
231
180
252
141
214
233
205
206
252
203
220
193
170
207
171
214
211
239
228
274
252
202
247
189
164
183
199
183
139
218
210
229
176
231
137
158
215
214
234
260
229
161
232
187
186
166
177
224
238
243
178
131
216
265
200
197
247
179
178
178
182
213
226
244
154
205
136
153
189
213
191
176
203
224
214
172
237
268
165
200
199
138
173
227
229
173
209
203
239
194
196
247
153
200
148
216
190
213
223
272
242
195
197
211
228
147
147
181
182
205
238
173
215
179
198
251
173
236
235
216
178
241
206
254
144
210
211
252
177
165
198
178
187
223
154
198
211
180
197
223
228
213
125
177
209
151
211
173
204
215
215
227
117
210
197
218
172
227
230
180
162
264
183
204
157
245
178
211
240
236
164
226
229
198
225
148
203
210
208
190
227
129
212
176
147
242
189
145
146
214
250
203
223
167
195
128
167
109
202
194
208
204
194
228
203
215
207
189
215
222
147
222
211
194
194
269
168
185
199
138
220
264
173
280
190
191
237
222
171
206
228
184
221
214
247
162
172
179
185
171
190
180
182
142
236
165
184
158
252
270
163
200
170
281
203
196
208
191
164
165
168
262
194
258
243
205
210
265
212
185
161
158
204
193
147
162
179
238
263
157
224
216
251
167
144
150
184
179
171
258
239
261
191
213
200
102
196
227
173
180
240
195
196
244
215
210
214
148
177
214
206
162
248
146
217
177
174
240
190
207
259
153
213
266
124
238
229
192
163
188
128
165
224
130
185
190
161
222
209
169
217
206
152
160
195
183
207
177
243
188
145
248
159
219
222
146
221
196
169
169
183
246
226
250
150
236
236
206
188
192
193
143
214
193
225
279
240
153
225
148
232
185
225
251
212
187
251
155
218
248
199
161
233
210
109
128
207
161
202
182
169
242
224
180
159
228
193
219
232
198
232
175
151
213
168
215
267
207
206
166
176
206
161
245
276
193
212
189
192
181
168
177
108
205
163
153
203
143
190
212
209
216
219
214
208
218
193
263
219
215
227
224
196
242
214
161
216
170
183
200
242
187
204
226
196
225
177
199
279
199
176
153
205
226
126
180
233
206
264
139
174
178
157
213
191
155
214
217
151
202
204
211
196
144
171
241
140
164
196
179
225
163
192
201
210
235
195
210
176
174
235
213
174
267
244
211
238
232
220
147
189
224
202
221
166
217
216
219
233
224
157
248
174
230
164
249
202
179
70
159
213
145
203
186
183
197
230
141
241
182
164
174
175
199
205
235
165
244
189
204
166
264
191
210
166
204
190
233
109
218
171
190
227
185
194
257
191
193
270
234
200
230
182
192
252
175
231
156
196
216
184
189
166
192
179
231
191
293
203
164
215
204
132
176
176
183
211
227
168
173
185
222
173
212
244
247
201
210
263
203
200
182
240
219
236
245
196
191
218
141
173
231
244
188
202
155
201
239
199
204
180
222
162
144
218
250
177
70
191
248
223
192
237
223
220
204
234
257
184
150
211
193
224
226
224
189
190
219
195
260
223
247
178
174
199
229
184
170
233
131
208
178
213
203
247
167
206
232
114
174
215
198
204
208
166
217
201
234
186
218
232
244
147
127
163
208
232
203
257
188
218
192
155
220
190
191
161
186
197
217
211
206
190
245
220
196
125
187
206
194
175
171
231
223
170
198
195
226
146
193
210
193
149
249
204
232
192
163
181
204
187
177
252
264
181
190
157
228
224
196
186
252
195
183
172
187
209
234
245
175
212
232
183
180
225
250
182
209
257
129
200
121
217
233
233
192
235
235
199
180
213
159
224
176
236
149
217
201
261
248
188
190
229
179
182
211
180
138
123
180
165
160
268
236
170
220
241
110
205
193
194
186
208
190
217
246
204
140
233
169
221
237
187
215
259
238
244
239
244
200
193
231
224
185
269
242
189
155
203
259
203
161
205
201
184
172
234
216
158
154
211
198
211
217
227
218
254
216
188
227
238
227
223
143
158
251
181
210
188
225
194
200
130
153
240
181
209
204
228
168
182
226
149
218
177
209
237
208
198
209
207
206
184
181
195
233
208
250
220
175
135
169
209
261
164
215
166
253
219
210
131
184
203
173
153
131
179
224
254
153
255
170
198
211
198
276
213
220
206
229
185
216
224
219
161
223
172
229
212
205
256
214
199
243
169
180
216
195
183
167
210
226
261
275
234
206
181
186
197
182
218
242
255
184
229
225
241
192
210
230
282
242
278
204
213
232
285
205
198
160
174
231
203
192
211
261
212
201
154
252
250
223
266
223
243
155
168
159
188
166
127
209
201
146
199
196
188
226
214
189
154
214
214
160
182
200
218
207
194
267
193
215
233
177
213
207
244
159
226
185
238
155
182
179
162
161
224
220
151
231
186
169
127
171
152
271
221
205
257
180
148
175
189
198
190
244
221
203
196
190
213
195
194
246
235
224
180
196
198
185
196
203
175
170
173
196
244
219
197
173
227
235
209
255
272
180
227
225
183
208
185
201
183
189
224
236
180
167
217
192
198
192
206
184
172
191
209
219
211
167
120
168
188
192
179
256
246
179
227
193
208
193
169
212
230
263
225
140
176
213
112
234
224
179
258
230
230
231
119
241
219
196
230
248
222
200
224
250
173
234
186
264
209
255
216
217
233
236
269
150
231
180
148
193
246
175
183
217
182
205
224
153
203
220
230
154
202
195
227
222
252
210
271
206
170
191
160
251
212
251
263
206
244
208
186
251
208
156
220
237
198
198
236
184
171
175
199
197
182
204
195
199
222
166
226
235
145
198
223
279
220
236
160
258
227
270
236
200
213
212
245
167
199
183
194
202
200
254
148
172
213
112
206
173
150
224
187
142
270
233
176
149
178
192
209
182
107
193
199
185
210
137
197
208
205
220
199
277
230
199
223
246
197
240
220
181
214
208
171
192
180
142
189
214
227
172
255
172
231
228
215
205
231
155
209
178
211
229
160
207
180
160
184
173
172
172
277
174
188
191
182
218
184
195
204
178
221
217
174
240
219
179
224
195
224
205
122
226
197
226
116
208
182
200
228
217
158
214
182
215
250
178
182
193
149
231
244
246
133
193
206
208
172
223
160
141
225
176
215
244
206
185
238
150
170
206
177
181
194
222
262
191
201
213
225
201
205
287
252
202
200
175
226
218
159
195
183
230
229
223
159
254
211
176
206
216
200
236
220
186
198
171
187
230
186
213
212
137
132
181
187
232
169
193
187
130
217
224
256
215
149
250
152
211
219
160
217
212
233
214
151
197
210
196
182
252
170
228
187
215
221
222
214
230
167
233
179
148
153
222
275
176
273
154
179
186
254
150
240
159
219
203
209
200
223
144
211
238
180
253
165
242
163
169
200
212
217
202
256
146
197
94
148
193
185
223
242
250
235
226
218
169
176
139
182
181
174
138
200
166
191
190
189
209
204
203
269
109
184
176
191
213
245
259
174
229
188
156
184
238
214
229
235
190
184
110
218
222
240
125
191
251
215
216
173
207
185
233
220
183
203
230
156
214
197
193
142
225
179
187
173
229
117
119
190
164
219
248
240
146
277
138
184
215
146
214
239
172
200
223
235
201
203
222
249
185
200
111
213
162
188
197
150
196
181
213
203
202
206
159
140
190
223
180
197
196
224
213
110
282
250
208
204
152
195
210
189
194
230
210
221
130
168
149
236
163
206
219
217
205
187
221
192
198
251
170
198
193
219
227
176
227
233
188
202
176
225
163
182
187
233
173
153
157
207
179
183
135
197
238
217
182
239
279
163
228
223
147
223
244
229
213
262
243
284
197
195
250
219
180
235
265
206
194
198
187
236
150
184
239
273
247
197
271
200
150
200
198
219
163
178
156
205
250
208
230
246
191
235
256
225
193
233
263
245
170
207
138
174
231
129
216
227
173
172
231
195
153
236
184
158
235
221
293
210
243
196
209
185
129
229
208
256
178
195
101
139
155
234
215
205
230
189
240
241
210
216
145
180
222
141
218
165
164
253
192
171
159
228
204
222
247
238
234
184
175
225
158
232
228
224
221
195
178
217
204
202
172
185
146
203
215
144
186
216
231
133
227
235
210
246
141
211
232
232
211
213
184
169
162
252
180
217
208
253
270
193
132
241
256
197
199
203
172
196
241
271
209
256
201
191
188
188
189
209
300
227
218
215
139
283
161
222
156
215
188
177
180
208
223
169
157
217
176
244
191
260
172
254
221
194
218
229
197
212
198
184
191
159
192
191
206
159
170
223
168
205
220
180
142
244
144
153
166
138
251
168
224
230
205
215
168
207
189
223
178
193
214
203
228
163
194
192
200
194
156
242
196
192
207
282
244
130
160
143
211
197
186
222
176
184
212
193
163
226
134
202
187
120
242
193
230
211
194
241
265
212
221
166
197
184
204
231
244
199
187
209
199
246
192
156
122
244
198
218
223
164
229
190
200
151
228
216
181
192
245
159
246
177
248
183
176
231
184
162
186
184
190
189
230
213
186
156
165
196
223
196
211
161
193
192
259
186
187
234
225
151
202
156
204
239
194
245
189
167
189
190
204
216
237
204
174
166
181
219
185
177
204
224
229
261
105
163
192
163
207
164
199
163
216
177
158
249
187
214
243
215
193
240
180
225
231
233
216
142
260
224
174
155
206
199
212
188
175
193
181
166
209
190
220
130
217
165
204
243
188
198
171
197
129
188
256
232
179
222
194
245
169
181
153
188
215
198
191
206
147
201
186
251
174
173
230
110
290
180
204
198
218
205
204
231
182
207
158
158
190
229
184
194
183
227
238
124
164
247
98
212
201
205
169
156
199
145
203
205
254
181
276
163
176
277
216
209
231
205
187
194
147
188
175
240
245
164
208
173
150
169
207
238
197
212
253
209
163
195
198
156
180
189
224
198
240
224
186
219
232
182
192
247
170
222
133
170
199
195
271
156
261
204
216
172
251
155
243
184
137
215
166
220
239
251
257
212
249
227
239
216
171
239
217
254
219
167
211
205
130
240
214
183
219
266
190
246
202
213
245
239
143
179
179
213
255
221
233
187
172
154
109
217
231
225
185
215
160
175
217
181
171
223
197
178
204
122
171
207
200
182
122
198
184
182
186
184
286
248
250
214
145
204
134
205
142
168
199
149
171
189
198
201
167
182
157
182
197
157
226
210
251
213
214
150
199
192
193
239
183
197
228
220
154
146
172
181
208
182
250
185
158
199
200
203
246
150
190
188
261
166
171
233
165
187
283
139
214
201
228
206
250
256
219
240
170
178
235
257
224
142
188
246
178
211
206
119
140
248
149
169
197
223
213
159
178
172
185
166
214
216
213
198
222
248
172
165
170
220
253
154
150
202
161
172
188
236
257
207
213
205
135
196
245
194
256
147
251
202
210
242
218
229
191
202
214
195
255
113
160
200
235
215
232
159
197
193
226
251
232
224
178
221
206
164
204
203
181
199
178
229
224
201
225
197
199
183
244
170
126
210
164
208
213
209
182
163
179
222
181
218
165
200
150
208
177
182
182
195
229
229
167
252
192
177
140
246
250
196
256
219
206
145
182
176
206
224
194
157
186
184
238
238
202
143
188
180
157
222
161
176
228
175
157
166
208
227
246
178
202
202
156
226
215
215
175
186
224
169
148
227
224
208
169
221
180
227
243
237
220
134
185
231
194
164
240
200
235
205
180
206
276
174
232
175
138
171
176
160
172
224
189
147
200
242
197
205
238
228
124
177
163
153
202
244
209
211
217
264
204
208
228
258
217
170
245
151
212
172
176
275
245
230
190
207
205
199
157
185
210
177
239
189
200
207
188
248
211
202
177
206
222
166
193
173
191
167
137
187
213
138
199
195
153
247
194
199
241
146
174
206
160
200
284
154
215
164
217
193
171
193
235
172
198
160
206
228
194
184
206
166
229
197
152
184
226
227
231
234
172
167
200
198
241
188
228
211
118
176
150
233
209
199
166
184
238
213
237
216
201
178
159
184
206
149
213
198
191
227
165
224
176
134
215
182
205
206
193
192
179
217
258
203
106
149
137
172
198
267
211
236
179
157
202
223
212
171
189
215
220
227
149
178
220
255
230
194
197
223
257
181
203
229
210
169
198
179
198
185
162
196
172
151
211
163
167
257
161
237
251
230
214
242
193
228
247
184
206
209
243
224
222
239
243
228
229
213
159
224
188
177
226
209
271
212
187
176
169
267
155
211
178
199
169
204
204
229
267
201
236
242
264
189
223
209
225
132
235
145
204
132
207
151
216
230
246
198
229
185
207
213
139
149
211
158
158
187
180
176
185
180
152
164
221
221
238
227
218
201
248
215
219
214
191
153
220
154
209
195
231
177
174
160
204
178
164
164
209
193
195
212
231
206
254
273
218
249
194
217
229
198
152
189
199
191
197
182
254
187
178
181
219
209
244
177
199
176
180
179
146
256
254
206
248
157
208
252
156
209
129
185
217
230
213
212
128
176
204
200
146
141
189
205
149
151
181
256
240
190
229
103
245
219
201
140
226
185
162
191
238
242
129
207
179
225
236
119
180
162
211
138
242
163
224
212
233
269
195
219
204
214
211
178
187
187
167
149
175
195
160
182
160
169
199
181
219
245
256
222
240
187
139
204
170
177
200
200
220
143
195
233
165
197
135
188
149
148
226
234
247
188
194
238
221
182
194
144
254
190
210
263
235
193
254
212
241
217
238
246
208
227
195
167
188
243
224
175
234
165
189
217
223
236
272
193
156
145
206
264
155
196
212
223
253
214
209
250
215
159
209
190
203
219
135
226
217
203
192
173
254
183
277
239
170
242
230
174
200
263
222
206
253
225
199
180
187
249
168
251
220
242
165
167
252
242
213
165
232
224
250
182
235
248
211
238
158
224
185
213
250
220
225
240
214
226
178
203
185
231
217
238
207
199
222
198
243
238
235
219
178
236
226
177
219
186
200
220
193
181
214
155
223
265
187
208
205
203
183
155
195
166
194
173
194
130
189
199
177
183
238
237
145
220
153
239
142
193
218
127
254
204
204
237
227
172
208
172
193
185
189
182
226
172
239
131
173
159
220
184
187
148
195
192
281
150
251
130
185
197
147
177
232
210
149
228
214
190
171
226
261
217
217
232
160
165
198
177
205
199
246
180
205
191
186
152
192
224
208
246
221
251
224
186
178
206
249
228
186
212
243
204
282
143
174
209
219
239
144
152
206
161
158
193
204
266
145
231
218
231
214
245
187
252
195
211
165
167
181
164
250
200
172
210
149
180
224
238
129
227
167
183
163
176
245
225
199
179
210
236
189
261
165
228
205
237
221
147
170
186
207
156
188
208
202
216
265
191
250
200
127
194
190
216
175
193
230
233
255
197
226
240
181
223
135
141
200
224
168
206
189
153
275
258
186
238
240
225
280
218
229
209
178
190
224
188
144
200
188
186
209
212
147
203
229
192
207
209
114
136
207
144
203
153
128
210
108
149
233
231
226
126
217
242
148
160
172
237
194
199
224
233
211
266
210
201
238
193
209
234
189
171
148
234
208
185
229
189
220
223
220
242
253
178
227
176
200
174
165
170
205
204
159
175
141
129
238
231
204
167
174
184
212
215
183
137
139
252
241
190
203
232
163
176
217
155
188
259
146
224
217
161
184
181
177
187
241
148
216
218
169
275
131
229
193
222
133
207
213
237
140
134
230
255
232
177
128
188
177
203
129
189
179
248
194
206
237
264
198
269
175
265
149
186
186
176
181
140
202
245
197
187
172
226
147
232
213
183
210
197
202
171
216
222
209
185
217
211
167
156
198
216
98
224
189
193
124
159
193
131
226
192
206
121
186
235
180
208
229
169
156
228
187
194
227
201
185
229
241
232
190
250
174
258
187
172
189
212
178
170
246
119
155
146
187
203
207
168
170
216
252
161
202
192
200
236
181
225
184
160
188
209
137
240
177
231
199
179
194
196
218
260
226
209
193
218
187
222
173
213
177
187
237
198
192
148
160
191
209
175
172
240
210
240
208
162
174
158
162
153
232
211
204
190
243
181
183
232
203
184
284
202
186
212
172
149
242
173
155
158
221
157
190
185
234
210
231
183
224
174
243
175
170
263
165
204
146
182
180
181
165
147
196
210
196
169
141
202
194
168
173
161
210
192
209
231
210
208
218
234
182
235
155
202
188
203
42
150
199
258
229
176
220
221
232
208
189
179
225
234
171
241
268
225
206
212
149
221
166
125
226
146
228
196
227
218
198
196
217
203
188
237
170
196
218
191
194
150
202
237
239
203
144
221
149
217
270
202
186
221
137
240
207
219
227
208
91
143
199
217
162
152
234
169
179
231
202
191
108
169
230
155
194
152
186
150
247
231
280
206
172
204
183
151
196
186
160
166
251
231
204
257
236
245
224
194
197
230
169
245
155
216
176
219
200
169
135
228
196
236
206
235
180
289
224
222
176
204
190
188
172
199
179
210
227
141
237
225
151
172
216
240
195
226
223
199
196
184
233
196
214
219
198
195
171
223
179
197
249
205
214
192
153
170
184
198
163
225
223
167
212
209
185
146
217
215
200
183
165
156
216
204
165
186
239
187
189
203
180
198
179
187
234
204
218
233
262
169
208
203
226
158
187
141
218
222
211
121
238
264
253
151
233
185
193
186
156
224
205
259
170
238
147
208
157
181
234
221
223
189
178
183
251
217
207
204
201
230
236
199
194
188
218
297
245
164
176
155
223
155
210
229
194
170
193
193
170
231
235
162
158
207
227
153
197
225
202
235
192
203
99
209
217
141
213
247
215
164
180
182
188
246
186
116
227
181
201
253
248
192
206
194
206
194
176
183
177
213
174
250
188
171
141
212
232
206
190
234
239
189
242
182
242
211
209
217
187
241
176
174
153
198
169
178
205
248
193
205
211
167
260
108
275
165
189
128
194
230
180
187
214
259
222
217
201
210
171
167
201
169
187
218
176
210
212
206
138
226
133
220
168
255
262
238
230
242
186
218
294
212
173
111
188
205
208
233
184
192
182
198
197
208
154
185
177
216
210
193
193
176
203
136
210
212
188
233
178
150
171
227
261
199
189
171
129
238
145
200
213
199
205
258
159
187
190
263
237
122
209
138
125
144
205
248
200
195
188
154
225
150
186
181
180
208
206
222
212
213
254
233
203
191
211
136
214
225
171
218
200
232
181
207
200
269
195
226
162
172
183
192
240
207
192
192
204
203
223
235
192
182
281
184
201
197
180
241
219
220
216
217
166
231
166
183
185
184
202
200
206
269
224
208
188
199
221
133
150
220
186
219
162
209
204
94
185
230
195
219
162
162
172
211
217
167
214
205
194
224
236
159
215
186
228
226
220
200
258
138
185
220
225
154
214
209
205
169
207
250
199
247
255
184
202
145
185
257
188
191
219
204
228
175
167
148
136
197
200
226
195
213
212
214
209
225
205
129
147
228
272
235
173
137
205
203
138
250
225
194
144
152
232
249
169
241
216
217
198
236
223
232
232
248
267
255
234
293
227
174
181
233
248
211
190
175
186
203
205
157
147
217
180
218
218
202
192
179
225
221
166
203
221
178
149
207
210
234
187
102
195
238
244
210
209
157
205
164
198
253
216
144
273
155
237
219
173
215
209
186
189
179
158
227
186
131
189
234
210
194
200
259
158
224
139
143
175
218
209
193
195
203
175
164
195
211
182
151
225
213
202
205
113
196
225
222
178
244
180
255
141
201
239
183
186
151
239
223
148
174
253
160
148
160
235
204
158
156
218
192
225
254
163
216
185
216
205
187
146
203
208
252
162
258
152
241
228
177
153
207
233
152
294
200
220
180
227
238
155
204
257
245
205
108
215
232
211
175
190
187
258
169
242
230
239
185
221
182
221
224
275
194
181
159
206
266
195
207
207
188
196
206
194
215
231
204
190
151
263
213
169
246
229
203
188
198
157
196
155
215
227
175
149
223
185
203
200
252
197
189
186
130
259
213
214
154
209
149
218
205
199
252
174
164
188
234
209
213
155
183
191
208
184
239
177
217
200
220
241
236
217
164
193
171
138
203
236
159
240
222
215
173
243
158
170
173
173
141
195
180
186
191
248
206
188
168
195
191
219
224
105
180
182
186
151
185
184
169
185
229
173
229
173
175
197
206
204
205
247
190
181
207
191
273
247
259
233
206
239
226
190
224
218
255
255
246
142
222
248
221
217
229
203
260
234
165
225
240
217
229
230
137
190
162
178
187
184
193
175
241
127
188
200
217
168
262
200
176
244
192
237
174
185
201
177
179
187
207
162
173
151
189
228
225
162
135
215
218
226
196
182
195
205
246
208
261
194
238
285
198
208
212
173
175
244
235
183
179
162
169
159
211
232
203
212
181
218
168
177
221
196
196
187
177
247
143
186
241
209
144
222
183
223
214
211
246
199
67
224
230
190
152
207
179
152
168
240
245
196
218
167
179
174
202
187
212
174
239
189
236
241
152
183
221
252
228
175
186
207
237
224
165
228
228
228
256
213
121
190
232
185
152
241
250
217
189
211
177
251
170
241
161
182
201
143
213
253
126
196
210
202
138
275
173
197
187
191
160
172
251
158
177
160
250
185
194
240
181
145
164
175
178
267
213
214
218
193
257
185
196
192
139
138
228
207
202
212
168
205
168
214
133
172
174
267
236
125
219
183
210
248
232
208
245
187
264
191
123
197
174
185
226
238
200
141
142
232
209
176
222
172
227
205
201
209
181
188
148
207
213
182
180
227
222
211
228
213
240
212
270
207
206
217
214
188
210
213
169
220
242
241
240
216
201
206
236
219
215
226
204
238
235
197
177
270
179
192
247
204
213
159
158
211
218
221
189
175
221
139
192
181
246
214
209
236
243
194
171
289
225
167
259
175
208
136
200
216
179
169
174
182
242
222
199
175
202
184
146
271
208
142
140
239
227
248
199
207
186
208
144
192
218
263
233
219
200
229
202
156
226
227
193
187
166
202
217
165
184
176
208
194
215
212
227
219
184
224
171
212
194
220
140
180
175
174
239
150
200
180
251
163
104
223
137
152
175
250
205
197
215
178
191
180
221
205
204
227
180
154
120
127
252
203
234
188
223
213
176
179
266
228
198
189
180
223
226
218
201
242
201
161
215
200
174
150
213
188
290
168
236
171
238
177
212
197
215
172
203
229
234
204
240
275
236
169
173
242
271
212
161
165
267
233
199
133
260
203
227
129
166
237
124
205
202
146
187
231
186
204
173
226
208
154
195
268
160
159
227
196
220
201
185
188
191
177
210
221
149
286
226
212
183
172
205
175
259
204
241
245
199
193
178
205
185
172
213
182
178
209
207
217
223
154
167
241
235
205
206
163
192
161
169
137
221
212
218
172
229
164
180
189
113
216
195
187
184
223
184
233
186
144
198
212
131
208
225
241
192
240
167
166
208
153
189
227
167
171
128
210
178
161
148
191
173
189
179
247
211
147
185
208
236
199
164
176
166
234
216
162
220
207
201
209
210
183
169
166
203
247
158
209
246
196
204
151
230
215
168
254
192
127
194
179
191
252
198
219
186
243
137
245
211
233
187
184
208
165
201
207
200
175
229
178
215
165
168
211
192
208
184
214
214
202
132
195
175
186
205
180
189
188
243
226
169
214
204
163
204
212
241
214
242
178
228
190
249
187
152
197
167
203
223
211
204
190
238
254
234
267
228
171
168
189
261
111
175
212
182
169
209
259
245
151
231
140
187
233
126
231
199
177
219
191
209
221
215
245
175
152
157
234
229
181
206
185
208
156
230
215
232
141
152
172
215
163
134
167
242
161
247
229
201
212
169
175
233
186
192
168
202
197
226
229
179
185
166
253
167
195
228
177
249
235
202
222
171
228
167
185
184
219
212
210
157
193
203
225
154
211
230
235
246
156
268
218
165
228
187
186
162
211
215
259
286
168
194
235
252
195
208
166
187
145
216
187
175
182
166
196
185
206
207
230
205
274
217
191
195
242
203
213
241
256
204
197
212
228
193
197
195
184
205
156
194
254
249
195
143
206
176
188
234
200
222
201
150
195
232
222
160
215
218
180
132
190
185
226
135
229
153
205
205
200
216
231
167
218
214
170
177
239
132
262
159
165
188
255
236
176
223
170
205
271
241
233
240
173
212
225
212
169
207
288
199
192
230
185
244
199
167
170
200
241
148
247
231
213
223
196
163
186
223
202
201
225
192
207
231
196
227
244
227
179
140
189
248
162
212
143
156
157
157
224
250
246
228
177
229
249
128
190
231
221
216
172
238
225
196
180
229
258
205
174
180
172
157
165
244
260
205
164
183
157
125
149
200
252
243
212
178
144
122
160
208
247
177
205
219
230
135
174
227
196
209
229
241
197
184
101
228
229
188
197
154
165
236
247
203
184
242
160
153
259
181
255
155
215
278
201
209
201
234
196
211
271
177
206
202
166
164
194
150
178
230
161
230
205
228
176
152
144
239
180
182
242
220
231
216
153
179
182
234
205
206
224
196
219
109
189
203
193
208
213
178
163
223
152
199
168
207
173
221
235
239
189
186
172
215
258
193
274
208
214
210
209
201
204
245
218
196
188
151
104
168
168
233
243
183
111
200
179
218
145
165
237
188
155
174
167
161
195
158
157
230
221
241
237
174
244
162
150
249
188
222
152
195
188
243
167
220
180
237
174
196
134
204
203
174
174
203
205
143
186
245
190
209
233
231
217
138
195
158
205
166
163
247
199
162
241
194
253
200
228
261
265
170
222
197
185
212
156
211
189
164
181
193
240
226
231
221
217
213
177
243
251
158
244
212
234
131
159
249
147
208
220
234
222
247
176
222
232
208
213
182
168
187
186
245
165
209
187
238
214
169
181
187
162
196
194
208
137
212
191
186
131
179
205
171
236
231
217
177
244
216
245
228
236
275
195
239
215
132
195
176
175
195
169
143
174
200
207
194
218
245
210
245
198
191
250
187
204
156
207
250
205
201
205
211
199
215
169
240
177
155
239
182
186
225
170
237
207
131
182
204
178
175
211
217
195
192
224
187
165
225
195
184
182
157
203
207
154
222
159
183
211
179
205
263
87
229
118
200
191
153
195
188
162
169
256
182
198
240
191
255
175
229
170
177
177
141
212
196
204
169
196
178
162
249
147
168
239
158
194
146
196
173
229
151
214
182
197
197
185
155
184
215
196
180
208
189
224
186
278
205
242
153
205
210
225
163
194
204
232
221
172
189
241
229
128
196
125
231
249
256
233
279
269
224
142
281
182
183
174
268
184
196
239
159
139
165
190
201
207
255
221
142
182
209
210
234
168
197
255
180
172
212
161
202
214
187
184
254
225
169
214
216
172
159
200
248
188
216
202
203
211
222
232
271
232
209
183
216
181
178
143
188
165
204
146
181
162
229
166
241
176
253
183
218
246
210
200
245
243
233
220
207
164
164
159
134
188
159
181
168
207
160
179
228
241
218
181
143
192
204
163
178
193
270
203
165
246
260
184
198
261
232
238
213
190
184
203
196
232
201
238
185
281
194
195
211
234
231
121
198
216
229
204
144
145
246
203
201
182
241
216
270
194
174
150
196
235
186
225
232
174
157
252
216
246
143
273
204
199
194
200
208
233
161
209
197
242
222
151
189
247
193
192
194
245
193
182
241
135
202
253
163
207
196
194
186
222
219
201
156
201
205
196
208
194
193
218
223
241
212
254
229
247
247
183
196
191
225
216
195
245
142
187
217
199
243
259
189
236
191
189
115
154
244
227
213
240
248
239
210
188
196
161
140
256
268
159
153
188
141
214
162
176
224
202
146
178
211
192
221
266
210
230
203
162
245
217
210
198
239
226
225
200
208
141
184
208
142
194
212
210
173
161
229
220
238
196
206
186
210
284
133
240
180
209
159
209
200
179
206
194
221
209
243
162
166
181
173
200
179
196
136
224
227
202
177
211
153
195
173
250
213
199
253
231
183
157
171
173
235
195
210
208
248
219
251
242
212
158
187
244
206
192
190
163
189
172
226
176
220
284
227
109
192
230
217
230
185
170
177
208
135
236
210
249
186
212
159
225
218
170
232
248
194
192
225
194
250
216
213
149
223
285
178
232
229
215
169
239
182
157
151
280
228
224
178
245
217
195
184
208
218
258
153
199
239
176
142
183
179
221
132
181
220
159
244
240
229
163
174
146
205
192
133
221
216
232
220
212
238
200
195
209
168
213
231
195
188
192
234
194
169
205
197
238
142
208
86
185
209
222
195
275
206
221
199
244
182
190
163
227
194
179
228
169
228
205
156
249
111
185
264
180
233
192
185
208
205
160
154
222
212
256
215
155
242
224
216
190
223
212
155
156
186
206
217
207
236
186
196
178
230
222
185
222
181
237
165
154
232
251
191
141
126
232
177
222
196
167
198
170
205
210
219
159
164
178
225
197
219
201
170
220
245
251
177
183
220
157
188
148
187
178
178
237
203
236
219
191
185
209
210
215
149
168
121
226
235
194
174
178
248
207
216
210
169
247
178
185
190
225
265
197
216
232
175
217
220
179
235
162
175
258
215
193
190
168
172
158
240
195
247
209
264
220
225
187
172
172
190
219
164
156
180
160
237
209
243
250
233
233
219
165
217
246
205
188
231
205
154
221
190
212
222
210
175
177
262
222
163
134
204
202
164
220
218
209
248
229
193
240
174
185
220
199
189
220
149
190
210
181
191
193
251
96
225
144
159
175
139
200
227
189
210
212
169
181
261
213
198
197
196
232
200
232
187
234
153
216
249
147
115
216
189
202
101
234
232
209
187
203
221
193
187
214
191
219
290
210
136
165
139
188
169
221
252
237
159
206
181
208
169
230
179
218
226
166
170
244
215
156
196
253
199
212
214
202
156
192
216
205
235
160
150
210
131
166
272
235
147
250
215
144
143
173
212
166
157
165
182
227
245
207
232
216
191
235
175
230
243
193
176
133
157
169
190
174
186
211
201
140
165
179
212
191
159
193
236
169
175
122
222
220
166
194
181
240
244
174
241
215
193
172
256
187
218
173
183
210
216
282
150
191
282
172
190
226
255
193
249
173
203
262
192
240
229
140
195
185
256
195
155
173
218
183
221
212
245
167
206
258
182
190
205
130
200
200
290
214
229
176
258
152
220
198
212
208
255
230
283
208
224
181
152
181
138
203
278
252
197
247
146
204
194
152
156
201
101
213
224
239
170
231
218
203
162
269
249
230
183
212
254
206
197
201
227
245
164
281
206
154
169
189
134
180
197
229
160
183
227
197
187
237
150
130
185
200
194
125
200
132
222
199
237
182
200
222
209
261
192
151
230
213
131
264
218
222
214
186
188
146
181
151
127
228
265
163
232
202
174
208
165
233
246
172
188
184
195
210
178
190
217
167
209
213
257
155
246
225
153
216
174
239
162
143
205
201
219
181
165
219
186
205
151
209
126
262
200
181
219
211
226
251
212
221
209
214
203
183
169
121
199
170
180
155
223
193
202
237
199
184
228
182
196
235
259
237
266
183
209
191
201
243
208
232
121
206
262
237
185
237
162
199
173
234
157
220
225
153
213
194
160
172
255
199
201
222
241
187
197
251
203
150
182
157
217
136
191
288
223
155
213
217
200
191
180
257
177
134
196
191
215
136
169
248
166
203
143
141
243
162
195
173
226
260
226
165
239
189
123
179
205
182
231
235
233
238
222
247
195
150
164
225
218
192
200
157
232
235
260
236
220
213
237
235
221
175
214
222
230
276
250
225
255
231
156
226
181
187
161
194
190
182
264
175
213
205
192
221
195
193
228
187
166
202
168
177
201
200
203
181
147
189
119
173
176
196
167
160
184
182
175
178
231
178
172
180
185
217
207
179
272
169
198
212
246
140
168
171
253
207
155
247
211
237
158
185
158
207
178
190
216
162
174
221
196
224
217
121
207
232
188
242
169
242
182
174
219
166
159
192
191
195
216
213
234
258
191
205
191
236
181
257
232
200
176
198
192
221
225
187
236
182
207
218
189
207
198
233
202
212
182
214
198
190
203
199
176
152
219
205
256
126
204
175
208
254
259
159
141
218
178
156
160
182
201
173
235
182
145
235
135
224
157
238
168
154
202
210
191
195
210
192
192
180
194
249
225
195
170
219
207
174
229
246
248
250
186
209
159
191
227
188
207
134
150
208
189
176
170
203
222
222
144
204
173
166
266
186
192
218
176
233
160
190
197
249
233
221
198
239
240
225
225
208
255
216
164
225
169
177
199
159
231
233
168
128
191
225
190
209
247
200
205
207
222
163
129
214
201
184
189
245
164
221
188
146
193
228
204
149
113
163
207
166
168
160
209
135
239
207
203
215
193
217
253
149
251
200
245
212
163
235
168
159
207
169
255
219
231
229
181
185
151
225
188
212
176
223
271
263
192
168
192
135
208
229
181
250
240
212
218
204
197
191
207
231
156
248
151
204
214
250
205
156
184
130
239
190
203
223
169
170
173
148
193
223
187
145
161
231
215
202
248
161
197
193
235
239
110
230
185
169
202
217
185
208
273
127
213
179
179
227
220
207
208
219
154
290
185
197
230
215
186
238
215
266
204
239
170
210
144
189
202
189
191
263
227
176
151
147
177
226
155
186
184
243
244
189
197
182
209
224
180
176
206
204
149
196
199
289
195
210
167
223
172
172
195
190
228
154
221
188
158
204
232
240
183
139
181
137
221
206
214
264
201
123
173
177
224
228
212
178
238
253
298
261
108
250
139
227
234
192
222
282
208
173
192
162
217
219
279
183
250
196
194
193
250
149
215
227
217
253
170
209
215
238
189
182
179
199
266
267
133
207
223
231
182
209
195
204
191
240
175
187
213
254
167
178
254
152
213
252
226
136
219
176
215
231
260
126
208
265
155
218
145
131
198
179
192
202
191
224
211
208
187
206
198
165
180
163
198
210
125
208
198
246
183
170
238
244
166
168
199
239
252
196
180
164
231
169
147
178
226
234
182
210
163
242
162
151
224
188
240
210
203
153
201
252
203
119
202
256
176
200
185
192
225
214
219
178
252
183
193
223
183
214
243
166
229
157
134
191
154
226
190
142
230
195
199
155
175
220
198
181
198
187
201
219
173
183
240
213
150
137
189
159
235
160
224
245
172
142
182
180
273
237
241
145
170
190
160
178
270
237
243
196
171
165
195
176
168
191
162
161
187
203
122
194
229
277
168
223
232
229
224
175
225
233
193
208
231
245
166
197
259
167
197
133
188
191
166
179
198
211
197
267
191
230
166
199
231
253
194
186
194
215
204
255
212
144
200
169
157
202
166
244
201
189
120
250
153
238
180
182
253
210
206
203
211
206
212
175
214
208
142
239
190
240
202
221
160
204
213
225
216
219
169
177
202
203
188
171
196
215
196
210
186
214
238
247
218
220
203
198
230
187
176
193
163
167
216
211
179
183
132
200
230
245
184
220
215
207
213
220
215
211
116
178
150
152
287
214
222
181
218
178
226
223
173
184
179
163
223
178
164
188
168
171
178
168
197
209
232
188
163
204
169
208
240
223
127
186
210
190
194
162
183
192
177
207
186
216
227
167
183
212
243
212
234
189
168
244
217
174
261
208
183
198
230
207
255
272
221
200
162
196
250
186
137
172
209
156
232
203
234
175
260
150
189
205
237
185
165
247
202
193
162
204
157
203
140
208
175
197
230
225
122
172
146
225
195
179
202
172
204
245
176
194
257
227
239
189
176
210
151
182
236
138
180
258
189
222
250
267
182
143
195
241
215
217
121
209
207
200
174
218
165
214
228
153
226
229
191
210
212
195
200
135
158
235
198
194
221
205
194
165
123
174
195
216
173
219
241
265
230
143
161
160
214
174
161
191
205
229
189
183
196
249
227
189
198
247
186
149
236
167
249
259
248
232
219
206
282
212
248
239
150
197
224
163
224
246
215
150
199
170
172
183
177
196
171
201
207
178
224
241
180
167
161
180
224
221
147
185
213
139
144
164
247
192
201
200
210
142
216
169
100
162
176
245
178
281
191
170
158
135
166
162
194
147
116
159
167
143
218
200
204
208
209
219
176
126
247
199
215
196
211
179
229
149
210
154
199
191
219
236
223
223
244
203
209
228
225
186
170
201
248
219
163
292
159
203
197
184
142
230
162
209
209
186
208
180
192
168
207
230
193
197
182
193
163
251
210
183
177
145
206
232
143
259
200
193
223
140
265
216
209
177
135
170
208
199
222
196
150
206
216
191
222
166
186
219
223
212
216
218
195
222
184
167
192
216
207
220
239
211
165
169
197
124
201
201
129
179
226
177
176
215
234
196
174
211
206
234
151
215
219
203
172
154
134
186
194
192
268
227
194
237
131
204
229
206
169
203
200
259
154
161
219
266
223
230
132
197
225
207
152
215
199
244
220
173
281
203
203
198
179
196
232
219
237
167
242
184
172
181
228
186
125
224
218
221
204
205
241
220
196
187
204
214
207
187
258
205
233
176
122
192
163
229
156
208
205
243
261
177
239
148
237
250
209
230
231
234
218
223
194
238
209
204
174
197
160
162
214
185
230
188
155
182
185
159
218
158
243
144
229
139
198
273
198
187
221
243
201
171
188
124
209
164
232
209
254
205
173
198
188
126
181
215
172
202
130
202
241
148
195
171
218
255
187
169
217
186
242
222
228
184
176
200
288
188
141
226
243
154
174
166
142
235
255
178
173
169
134
163
224
203
200
212
170
186
219
175
136
225
195
147
206
201
244
208
155
197
186
213
179
177
191
174
180
154
187
194
248
208
241
197
184
195
186
197
193
179
216
163
222
256
147
235
220
171
219
172
233
251
203
171
170
136
218
230
182
243
168
180
214
192
216
207
223
118
179
150
188
222
213
165
217
222
210
229
147
213
190
145
228
275
208
199
220
199
167
154
184
199
215
195
212
200
214
209
211
201
144
186
189
226
177
239
203
131
250
199
229
214
186
212
226
160
214
190
213
222
201
159
184
214
220
238
188
219
120
168
182
210
213
197
172
202
179
149
201
202
188
162
256
234
257
198
194
256
183
203
171
234
143
189
240
197
181
226
262
156
214
195
259
246
221
189
192
214
249
225
169
245
239
179
192
208
183
224
238
221
159
208
213
253
165
140
167
178
220
232
197
228
194
142
143
183
223
174
198
190
184
250
190
191
204
246
175
189
173
240
183
181
195
185
117
209
149
196
212
172
209
136
181
242
243
213
176
204
191
185
276
173
256
179
229
190
254
233
193
270
171
187
175
177
231
257
211
215
201
177
187
251
228
233
190
217
195
187
244
203
143
233
222
119
184
220
179
169
231
182
203
211
259
244
217
194
257
145
197
167
192
165
250
220
235
215
224
188
203
250
183
216
223
147
182
239
204
174
257
170
201
161
189
233
202
205
209
176
220
196
218
231
185
199
239
210
230
185
137
183
254
191
241
233
155
234
215
115
225
191
211
157
231
198
262
196
203
179
161
217
235
167
184
136
223
175
196
181
164
211
186
224
181
172
208
228
199
200
215
160
161
198
176
247
191
212
203
183
165
180
200
148
197
169
191
204
245
162
204
158
200
211
206
256
171
124
211
203
141
277
171
213
263
173
187
190
143
152
215
169
154
221
207
186
194
232
214
195
115
188
197
210
144
167
206
133
239
191
200
195
190
240
218
219
209
202
182
179
187
227
233
128
183
194
232
200
185
195
208
196
166
154
141
172
177
138
238
228
252
165
155
158
206
186
224
198
265
230
178
208
223
204
211
182
224
185
207
260
226
139
173
192
207
176
224
258
242
210
161
247
209
213
194
251
127
227
228
187
208
191
176
225
222
224
225
185
140
224
163
144
129
255
196
284
198
247
163
171
180
148
198
231
201
186
208
213
182
190
242
263
207
201
236
153
254
245
222
171
234
138
222
191
203
172
249
234
237
303
205
171
122
218
148
169
211
216
218
184
199
184
165
243
133
174
201
227
249
208
225
177
225
250
195
172
208
151
267
183
198
242
182
187
227
242
182
199
251
248
196
254
241
261
234
167
172
175
192
178
213
211
179
116
211
201
230
180
167
221
212
161
197
184
199
135
205
136
193
171
193
186
199
89
163
200
199
143
225
245
159
172
221
201
189
233
192
167
185
208
194
162
147
148
181
240
234
183
177
206
215
183
228
262
157
202
195
201
189
157
185
229
256
193
190
211
192
172
226
242
192
216
203
261
180
211
210
176
144
173
196
190
159
233
181
246
224
181
252
225
261
102
193
258
173
222
241
229
208
208
205
128
221
168
172
154
243
208
244
178
216
257
205
171
247
215
254
211
212
195
190
191
162
185
158
233
248
228
166
240
231
204
203
202
207
256
196
173
171
229
278
243
132
186
177
175
236
154
205
190
231
164
143
158
201
279
190
189
236
165
250
209
148
240
231
217
190
222
220
195
195
220
134
184
171
249
211
175
151
210
196
216
199
211
267
185
182
222
164
130
191
193
232
175
188
174
204
220
143
207
186
257
166
233
174
237
224
148
263
114
220
151
176
174
200
229
159
256
199
260
216
180
202
271
185
189
204
259
222
164
152
172
186
238
194
215
161
196
171
156
207
196
196
191
211
200
163
227
243
191
198
257
235
155
210
169
244
114
203
223
227
211
159
221
168
198
175
224
217
192
167
239
178
206
185
175
202
250
172
181
173
179
211
245
161
204
211
222
158
183
242
244
207
262
232
233
219
228
190
237
192
196
247
177
147
210
239
172
168
178
173
214
178
180
184
263
193
249
224
243
247
233
173
298
220
223
248
151
146
294
205
209
184
233
251
180
245
245
282
129
216
160
178
170
163
189
183
186
186
170
177
209
186
148
241
179
212
210
181
198
235
188
271
224
251
168
224
172
187
125
258
188
169
170
187
183
261
157
197
213
253
123
201
177
229
183
186
226
189
235
212
230
183
192
188
194
228
189
226
179
192
212
179
199
193
195
198
222
179
219
208
132
226
203
169
125
156
209
276
246
170
209
166
224
178
231
201
188
164
166
216
165
223
184
215
162
217
216
196
212
199
239
204
222
173
210
211
242
238
201
194
214
167
140
215
270
178
188
191
226
205
204
237
226
262
189
242
189
188
193
177
188
186
243
236
218
218
197
248
246
121
216
183
246
225
187
145
174
237
197
196
221
191
200
155
253
183
216
202
170
196
249
234
286
220
163
176
170
193
245
132
221
188
188
138
144
233
209
209
218
222
161
222
223
176
255
205
167
200
272
217
273
292
200
263
180
181
189
203
183
237
154
179
167
166
189
183
165
111
186
182
226
191
190
216
227
217
240
233
270
225
245
217
193
261
239
173
168
219
216
204
229
133
182
227
179
156
229
226
207
204
167
204
193
147
187
184
215
192
257
250
188
202
187
211
150
165
203
206
260
236
221
209
164
227
226
150
188
201
168
151
118
188
204
187
215
202
228
211
201
196
196
165
234
271
211
228
170
164
258
262
229
268
203
177
201
181
151
153
177
251
182
139
152
214
119
224
219
177
152
156
201
163
244
176
252
180
177
170
121
193
115
202
197
223
163
247
207
182
194
220
126
167
190
233
184
178
165
177
234
192
224
210
214
220
188
181
183
169
231
177
200
209
174
189
183
230
219
158
201
251
186
226
209
138
138
177
176
121
177
174
187
142
211
274
124
118
166
215
187
233
232
197
174
149
229
252
267
158
172
205
150
153
268
167
148
185
179
223
174
268
259
217
179
171
186
206
237
201
218
247
189
201
224
145
265
170
166
179
212
163
166
257
179
200
236
191
179
195
246
173
222
166
170
215
161
160
192
251
184
227
190
228
243
198
188
209
187
246
161
206
253
208
197
212
154
223
185
248
276
185
159
196
134
143
245
215
256
266
223
215
204
202
235
174
191
189
251
244
145
242
218
174
228
217
221
239
157
131
211
252
266
158
169
189
237
159
214
235
208
209
176
251
152
241
199
190
197
233
203
140
221
168
189
175
227
255
249
143
198
176
211
177
168
176
206
195
204
241
215
167
241
254
212
209
191
221
226
208
174
185
200
189
170
215
202
194
171
212
241
206
195
147
181
210
153
200
171
205
228
189
240
167
166
184
201
213
230
213
199
176
209
242
185
180
186
146
209
130
169
244
166
268
166
149
223
218
274
140
222
158
183
229
196
231
200
159
152
164
238
171
131
208
274
206
259
194
193
144
210
213
194
137
156
192
237
176
187
217
208
205
146
242
187
187
199
201
284
182
233
196
181
209
178
178
177
217
171
194
192
258
188
200
202
189
153
235
241
189
166
217
172
261
168
230
188
168
288
216
247
167
186
231
155
261
205
111
135
206
201
199
143
164
176
210
195
251
174
251
199
267
229
233
256
264
235
246
259
210
203
206
179
257
230
242
171
199
253
248
267
200
219
189
234
222
140
233
267
198
182
188
243
143
155
179
184
248
195
197
138
240
205
204
240
241
137
216
207
221
167
189
205
263
138
246
210
174
214
246
202
131
184
261
193
205
228
174
180
181
207
140
180
252
242
210
195
199
251
174
194
231
198
231
159
227
223
185
214
187
195
152
221
186
189
248
247
179
239
180
194
245
249
241
185
227
198
154
240
209
186
258
255
212
220
192
234
175
241
201
208
170
256
213
225
268
215
195
224
173
174
242
240
202
218
202
249
163
193
219
220
236
180
188
219
188
229
220
200
256
255
173
154
201
205
310
211
210
212
198
200
205
159
170
155
146
175
221
218
270
213
187
224
213
253
249
209
195
167
155
225
186
200
232
206
199
236
192
219
223
196
137
219
171
202
210
163
189
217
164
227
177
258
222
180
185
160
191
154
211
215
175
240
173
189
195
225
196
178
174
173
227
212
262
174
191
152
242
244
192
202
199
278
196
252
189
198
170
210
207
167
175
205
237
202
152
165
173
206
164
218
191
133
221
210
234
184
244
195
233
179
232
235
266
157
200
191
185
209
157
189
173
149
177
202
194
122
199
206
232
226
205
182
193
229
230
174
215
231
228
160
205
210
186
190
221
187
215
166
172
208
242
225
188
179
177
189
136
224
241
220
187
200
192
224
138
194
258
151
188
197
159
182
186
197
169
269
172
193
143
203
199
188
228
220
241
180
259
190
201
235
211
212
170
192
189
182
149
239
221
150
257
190
205
224
218
198
185
210
169
257
124
228
252
172
251
225
270
187
209
210
158
171
264
202
173
234
223
176
154
211
199
191
227
211
236
203
169
214
190
202
201
253
219
197
201
142
207
213
179
196
225
214
184
189
179
209
246
156
182
241
246
261
149
163
276
205
228
176
226
190
183
211
124
166
202
161
267
246
228
214
169
167
247
236
174
259
188
207
234
229
223
244
186
180
210
202
253
175
189
136
233
223
215
158
172
151
196
161
219
192
202
249
180
195
212
182
172
180
156
223
246
200
203
199
180
176
239
247
180
201
219
228
191
156
151
165
187
196
228
214
205
183
250
142
201
157
204
259
210
179
247
202
229
212
212
224
195
258
183
174
209
298
185
214
209
284
188
206
172
189
156
194
209
157
211
166
180
149
193
202
140
197
171
168
214
177
261
239
182
173
181
253
249
143
198
224
215
179
188
193
257
244
219
176
172
170
230
194
181
190
247
222
120
177
177
214
181
218
183
172
149
215
202
177
235
220
128
167
202
248
217
179
183
185
211
154
213
204
114
159
164
134
233
218
223
217
228
242
203
257
226
222
289
213
169
178
234
146
170
211
188
201
188
119
180
212
200
232
211
190
143
193
202
214
174
141
206
182
182
218
192
247
196
234
231
184
167
194
222
183
186
230
197
220
186
187
180
283
238
187
232
174
188
260
206
214
246
190
241
177
169
264
192
206
190
206
188
198
214
217
230
249
179
183
206
231
172
147
121
245
217
254
262
226
198
216
161
158
262
153
184
248
216
176
211
191
159
178
213
154
214
218
208
224
164
174
189
190
158
222
212
179
218
198
232
192
215
166
181
199
251
210
227
187
225
204
198
210
165
197
157
195
221
126
235
231
189
213
207
198
192
179
289
160
209
219
233
242
140
127
224
170
213
207
204
147
207
159
243
158
173
203
255
205
234
202
173
207
193
220
190
169
202
221
110
217
182
192
176
215
228
211
189
189
221
218
182
187
191
228
150
182
226
182
203
224
193
242
241
229
254
169
211
154
213
264
193
227
208
208
182
231
154
186
235
188
177
205
243
198
220
246
173
249
173
224
217
179
258
203
236
170
250
208
180
255
215
157
183
123
223
160
223
130
285
199
191
203
177
262
162
198
211
222
152
245
189
188
218
169
209
278
179
233
194
259
181
212
232
221
168
113
248
206
184
261
239
177
202
201
238
182
167
195
205
191
236
125
145
122
176
212
239
243
204
206
230
205
211
177
227
155
166
174
191
160
221
169
197
173
159
157
201
237
179
217
179
180
210
212
193
133
203
207
252
207
240
211
229
177
190
206
259
183
167
178
156
234
207
231
164
246
174
195
162
162
206
188
229
221
224
190
232
184
275
185
185
156
213
131
249
176
194
228
200
197
196
208
216
211
232
208
148
228
192
274
214
206
187
149
144
182
210
244
268
204
205
179
186
198
210
215
178
256
191
185
233
216
153
210
145
176
221
193
205
169
167
223
153
212
247
232
169
177
171
252
144
214
148
266
211
195
183
188
201
169
136
199
225
236
173
189
140
145
215
191
142
187
182
220
198
232
183
187
237
189
220
227
157
211
204
205
162
139
145
239
142
225
222
233
215
211
186
168
173
173
275
167
210
207
189
229
175
216
207
265
208
152
223
205
228
214
226
204
209
243
196
131
177
114
178
192
191
189
165
134
202
224
227
199
211
189
262
189
170
169
212
218
275
220
161
255
207
179
171
208
217
226
192
176
208
266
242
141
237
205
199
172
223
236
159
179
171
170
198
192
166
152
183
203
194
258
168
184
176
227
190
152
204
191
189
179
211
221
195
219
204
133
189
177
217
203
235
216
191
236
147
240
202
187
237
221
189
225
174
197
236
162
218
189
147
162
207
158
226
233
195
168
159
242
224
179
258
171
174
181
248
176
227
187
233
191
240
163
258
206
192
209
202
245
153
161
149
259
229
168
214
167
261
211
204
216
209
203
200
207
174
182
128
208
193
204
142
204
216
213
165
205
171
167
153
233
187
195
174
148
107
192
241
209
153
178
170
205
201
163
225
254
160
193
185
259
219
157
190
171
186
170
161
230
181
208
186
181
231
182
287
186
140
202
196
223
223
194
155
211
221
150
187
206
195
186
171
205
284
172
234
140
180
212
205
233
195
227
215
189
190
202
162
187
186
157
180
221
186
197
241
196
215
187
202
175
218
192
216
148
163
209
180
127
233
189
149
185
176
218
220
272
215
178
184
228
211
261
182
162
247
223
253
193
159
184
193
173
229
197
198
272
173
235
197
215
233
186
166
225
228
225
228
208
142
186
247
228
171
225
183
206
153
171
213
254
222
180
94
174
173
230
213
252
252
157
174
172
213
218
205
174
242
160
266
198
188
218
200
223
224
186
216
182
221
216
222
184
229
183
179
228
211
208
202
165
248
233
135
203
211
230
198
171
244
235
216
192
185
153
222
161
185
247
193
197
164
183
197
177
188
238
172
236
186
200
205
226
175
151
136
192
194
189
163
217
164
255
210
199
155
216
174
210
143
238
276
235
154
196
173
191
236
193
236
166
191
269
198
238
216
247
158
182
205
177
227
225
200
216
157
203
236
208
189
123
198
233
204
218
249
188
225
216
192
143
238
164
229
144
182
111
209
142
172
182
196
211
218
208
192
190
207
158
207
159
254
249
225
150
269
177
160
217
211
275
242
198
242
245
203
152
205
199
216
176
227
161
184
189
177
238
180
243
176
233
198
194
217
190
182
219
245
222
155
231
192
195
173
224
245
213
194
189
200
214
188
174
168
220
202
201
164
161
194
208
172
202
196
211
164
183
261
237
196
187
258
142
198
225
175
218
209
241
258
208
190
171
150
224
198
183
184
157
206
192
160
198
206
159
229
193
176
151
232
177
228
229
175
219
175
198
186
233
178
116
175
219
223
196
203
233
240
203
197
172
203
166
212
209
182
205
201
222
163
213
135
213
200
173
177
181
174
146
195
152
188
223
155
152
208
162
199
234
148
138
212
189
210
220
174
184
186
190
137
248
243
187
154
251
143
235
248
203
193
175
167
226
231
222
202
143
204
245
268
160
172
163
213
191
223
204
175
232
147
181
209
172
216
230
199
158
255
233
180
159
157
235
122
168
196
147
267
178
212
244
155
233
215
184
206
191
243
267
235
132
241
166
162
219
207
213
226
179
192
187
186
225
223
219
209
154
170
174
245
186
190
204
243
126
155
143
178
189
202
223
154
221
205
174
197
215
160
173
158
191
174
194
141
124
213
182
191
223
221
169
174
276
195
166
293
185
243
189
173
216
187
213
187
217
172
244
196
189
199
231
222
205
205
236
175
189
228
177
206
160
136
182
149
212
224
227
260
200
147
204
224
199
247
217
230
257
159
127
130
210
196
227
220
128
204
227
216
237
215
212
190
199
183
212
155
229
229
191
239
180
198
214
216
186
188
192
167
202
221
224
140
216
191
195
254
178
201
224
236
199
115
203
254
152
154
196
211
196
127
165
187
227
198
245
168
206
240
212
162
210
224
194
180
192
252
205
249
214
186
208
228
237
211
224
227
197
191
163
230
228
175
189
185
209
175
213
189
199
105
226
203
225
197
208
219
215
207
188
199
236
165
151
202
126
242
194
229
223
207
236
213
244
170
229
182
122
175
231
226
203
225
218
203
209
176
207
225
144
205
215
220
215
279
192
223
176
137
182
141
203
229
201
202
173
192
243
213
189
225
201
235
154
185
184
203
225
192
141
187
176
205
212
166
209
155
144
226
208
252
148
199
165
189
201
266
159
164
169
173
218
243
233
197
215
238
241
130
224
197
228
269
150
211
211
146
166
219
237
205
178
188
248
205
184
165
175
258
193
173
237
204
208
229
215
178
236
161
172
253
249
204
182
166
165
229
177
159
191
216
203
192
205
173
236
205
211
180
162
163
246
182
207
149
208
198
201
217
256
207
157
236
223
234
268
230
207
168
190
189
206
150
142
217
184
151
206
192
179
211
162
246
228
243
198
195
181
133
228
164
241
186
214
216
176
234
211
250
221
210
154
211
217
213
189
228
219
222
213
197
153
201
244
221
176
207
217
205
206
189
181
196
121
194
191
202
271
213
188
250
254
212
235
198
189
186
176
231
149
195
207
183
220
181
201
176
254
253
233
211
181
205
185
225
222
241
206
225
189
151
179
172
219
142
204
137
197
224
187
214
210
237
219
154
173
194
162
180
189
244
231
202
257
208
197
187
171
177
235
168
200
184
229
211
189
191
214
219
198
139
126
153
174
246
233
209
298
276
143
187
215
206
224
239
193
192
164
237
214
217
195
214
193
181
197
130
262
199
213
150
166
229
206
181
192
209
172
200
192
182
191
200
195
174
216
221
258
230
209
219
131
226
183
215
215
172
182
226
176
181
210
180
199
213
223
240
212
223
227
172
150
174
131
173
146
187
150
169
214
237
229
241
220
207
212
176
158
152
211
241
237
116
248
219
186
220
145
223
167
154
216
176
220
152
220
151
226
190
206
268
260
206
167
171
187
188
176
263
127
218
196
160
208
231
188
251
207
193
239
194
178
235
183
248
222
174
186
258
235
175
250
175
212
214
207
211
205
228
235
187
226
177
194
204
209
214
224
156
188
214
169
192
201
164
141
154
215
198
188
185
137
200
225
272
106
225
128
150
208
201
269
136
151
209
207
218
122
186
194
191
205
245
261
182
212
209
191
198
172
192
223
143
202
199
181
196
196
173
206
213
229
197
209
130
203
171
235
154
190
193
249
182
218
232
246
217
175
192
193
180
235
156
112
210
175
165
180
140
205
180
163
204
145
206
221
132
219
160
175
228
211
248
238
219
164
242
140
179
180
225
192
221
133
169
220
135
239
279
238
176
259
208
186
208
204
184
194
96
196
172
192
222
245
191
172
217
208
179
179
203
231
157
220
228
235
195
146
184
185
215
183
132
126
210
262
261
142
201
178
181
192
200
218
258
178
198
218
155
212
189
199
210
134
201
197
180
234
265
139
192
126
206
222
222
221
184
256
251
173
252
154
221
215
202
206
170
203
188
223
222
246
102
245
233
239
218
110
216
210
172
156
246
201
175
105
181
172
254
195
153
164
244
171
171
170
241
231
207
241
188
198
177
177
184
212
178
173
207
186
234
264
230
156
183
188
161
207
203
188
206
197
229
199
210
211
221
182
244
208
194
132
187
238
205
184
210
230
217
225
208
164
184
185
173
186
149
237
182
205
208
159
217
166
194
231
180
187
239
259
229
150
197
179
231
142
181
179
210
171
220
142
168
226
215
231
213
185
226
230
219
217
240
226
173
219
155
190
213
141
221
149
147
213
182
166
240
116
208
288
240
215
223
239
229
202
183
193
216
194
150
194
187
202
229
166
171
224
247
157
185
176
220
234
199
190
246
205
199
159
204
208
194
214
189
203
176
197
195
128
235
224
199
176
254
233
225
181
228
191
253
180
271
187
213
183
180
187
223
188
149
168
239
227
136
216
263
215
226
153
242
164
130
206
138
170
229
180
267
213
169
192
187
196
199
119
246
195
228
188
187
246
141
241
197
233
188
217
213
242
222
245
171
159
179
210
207
175
188
167
218
228
152
231
167
226
186
244
167
167
219
216
167
187
174
215
239
151
239
226
209
168
262
167
213
211
207
214
228
169
231
198
213
192
211
253
193
233
181
160
239
227
197
202
240
194
184
255
188
208
213
196
210
194
277
236
205
196
207
185
237
187
205
212
170
157
159
261
196
189
159
122
242
234
157
196
196
250
228
218
199
220
213
157
234
170
171
181
171
187
116
209
178
253
196
126
219
134
222
232
206
154
278
251
193
214
177
241
215
190
163
171
171
234
160
195
173
176
180
243
205
217
256
161
217
171
216
114
249
174
204
146
206
224
263
155
223
145
232
211
254
168
240
228
244
179
278
266
203
219
137
208
227
200
209
176
208
181
253
203
196
211
210
212
199
143
253
176
223
181
222
247
207
199
233
242
172
237
216
209
221
156
152
214
246
173
222
265
221
221
216
235
181
153
258
211
288
246
196
226
261
214
230
160
214
163
204
166
200
247
237
227
226
227
228
195
199
186
201
248
198
245
148
229
216
147
232
251
230
203
236
182
247
225
221
170
197
246
214
224
187
209
157
198
170
218
182
168
214
190
204
198
182
247
228
241
197
159
222
195
208
178
174
185
173
185
138
199
179
223
176
226
218
136
173
250
211
213
163
225
169
229
205
215
196
163
123
201
195
118
260
173
197
274
205
154
172
208
212
209
234
223
200
234
249
86
182
131
260
200
200
149
180
251
197
168
215
213
230
127
208
210
216
180
252
176
246
204
247
256
204
243
194
231
145
282
230
220
212
199
157
169
182
216
215
260
157
216
243
153
221
164
191
227
186
232
169
193
216
183
216
193
192
187
242
156
130
204
174
241
209
238
246
230
188
254
246
220
208
183
175
213
214
234
194
268
213
158
221
183
216
209
191
180
137
253
195
173
213
207
162
256
227
162
188
192
180
211
219
178
212
156
207
201
252
241
245
247
232
157
242
196
167
165
192
211
215
265
152
188
150
206
165
176
218
184
185
245
166
186
241
172
176
178
208
227
198
202
146
219
200
226
215
213
220
197
224
188
226
226
216
172
245
205
207
252
238
202
207
214
207
178
204
233
239
131
141
198
217
191
236
187
234
224
177
168
153
225
232
192
158
176
275
191
214
177
216
186
172
196
182
219
142
118
208
243
189
242
210
234
144
206
213
204
206
171
212
240
212
168
242
211
236
208
220
226
193
137
195
264
229
220
207
229
207
166
213
235
231
126
208
218
187
128
163
181
170
204
214
204
190
171
238
166
236
163
193
198
185
175
186
201
126
207
141
228
224
187
211
217
239
218
208
233
203
181
277
172
220
171
188
186
254
161
179
157
165
112
144
219
214
124
189
177
205
181
257
207
173
169
251
208
192
197
177
256
198
254
237
174
215
202
274
155
161
194
228
207
178
230
224
264
144
236
201
223
194
176
207
160
217
215
213
193
180
188
192
233
152
180
153
204
183
214
158
168
181
173
225
205
200
246
246
210
215
173
212
222
238
202
180
127
206
276
202
186
193
203
216
163
206
164
197
196
167
133
189
187
212
226
174
112
191
230
154
133
225
218
139
192
219
204
160
160
241
232
234
233
187
178
179
187
219
206
168
195
179
214
198
106
184
190
132
164
189
255
159
182
206
189
226
165
167
247
186
217
142
166
230
203
219
198
153
202
188
232
149
202
190
237
222
198
219
203
200
259
219
246
195
226
253
265
244
137
185
161
211
262
230
166
222
211
178
198
234
246
138
225
196
180
198
230
154
247
219
174
157
229
176
141
115
205
152
209
221
160
197
199
180
179
205
162
230
246
167
208
215
263
228
179
144
207
255
229
182
250
209
175
217
189
262
231
227
200
243
189
173
244
159
197
127
199
214
279
195
225
176
186
198
155
182
220
236
199
117
234
196
203
195
164
226
240
219
177
222
192
243
143
176
139
173
154
176
273
177
194
206
155
214
231
219
177
147
162
156
117
228
248
191
164
201
186
250
141
222
185
165
220
226
176
190
199
186
215
237
199
201
222
202
197
159
175
175
218
264
158
175
266
169
215
206
211
186
240
233
255
204
225
205
209
179
207
157
260
168
183
236
165
255
213
155
261
211
212
166
167
191
190
192
227
83
222
236
173
164
204
205
152
129
248
204
241
173
165
197
162
161
215
126
141
101
211
205
224
221
205
222
249
139
143
125
187
113
248
219
206
148
184
212
157
289
202
217
220
178
189
196
205
249
208
228
99
179
216
204
152
203
199
182
200
127
226
205
191
190
210
218
180
193
209
206
244
220
148
212
219
239
235
233
178
151
174
235
206
181
167
167
159
205
176
199
205
231
180
212
167
226
203
173
217
173
170
146
219
209
216
139
172
176
211
192
187
157
187
244
183
181
219
182
224
201
207
215
228
185
175
182
145
151
234
163
198
225
167
226
247
238
203
204
243
239
170
197
259
193
241
243
249
180
184
190
161
222
178
209
193
149
210
169
182
167
183
245
145
208
235
162
209
233
158
183
185
209
202
206
181
207
162
183
205
193
170
242
210
230
168
188
234
179
203
194
220
170
246
201
215
243
212
158
180
243
252
193
209
193
194
228
234
223
167
253
192
216
230
213
175
211
223
205
172
217
173
207
187
137
245
194
186
149
250
159
201
132
212
180
233
198
186
169
203
191
246
168
156
238
218
215
218
200
220
186
215
188
243
226
190
152
230
235
115
227
215
213
198
164
191
165
229
171
242
249
225
161
136
229
248
216
210
187
219
264
197
200
242
167
235
180
176
190
166
162
175
213
217
227
213
200
201
212
179
208
218
187
138
259
144
204
213
188
141
188
267
276
262
206
183
306
210
234
221
198
201
183
204
176
228
188
174
225
194
178
188
157
222
214
183
182
179
176
221
268
246
227
200
214
211
158
214
171
232
175
203
162
245
208
146
234
187
172
166
181
161
166
187
186
194
161
175
160
206
146
193
203
173
159
143
107
178
209
151
192
244
222
191
156
180
151
199
248
216
248
176
162
184
190
162
183
195
235
199
263
172
228
168
206
217
191
178
189
176
228
215
164
247
228
192
248
168
218
212
225
157
187
217
231
189
241
154
222
180
199
189
216
189
242
150
212
177
113
180
256
149
232
183
168
212
209
149
170
138
213
171
173
162
238
212
262
229
123
225
244
233
235
229
164
179
181
256
211
178
168
279
225
220
197
203
180
170
230
227
185
187
193
192
203
168
193
209
230
197
224
268
200
201
223
209
182
182
143
186
187
207
199
215
191
161
227
214
205
188
202
210
179
154
216
161
194
210
169
221
198
195
210
259
231
217
196
205
245
167
200
178
190
247
263
209
242
142
220
193
217
222
222
226
241
161
192
179
239
149
123
198
220
151
155
104
234
194
155
206
196
134
230
151
240
175
152
220
222
175
210
221
231
216
161
216
156
223
236
198
216
259
234
230
172
205
249
183
192
222
187
228
182
146
215
144
149
172
140
225
167
195
206
218
241
170
214
115
177
156
230
172
226
185
201
190
186
213
190
217
199
172
186
226
119
201
137
178
190
214
150
155
176
232
234
172
208
202
140
234
281
163
164
253
231
157
179
161
240
239
239
155
220
176
226
166
202
217
191
220
129
200
252
211
242
225
166
209
171
183
196
167
208
136
207
187
222
197
189
161
178
236
163
241
250
236
252
182
165
220
186
226
195
148
201
184
154
164
256
212
166
194
220
99
191
154
234
192
201
174
276
175
178
218
241
183
252
168
163
259
171
156
150
205
204
172
221
184
181
220
172
150
193
220
158
260
197
142
195
165
217
201
201
144
207
227
192
221
218
203
230
206
212
224
188
248
244
183
202
239
188
183
160
216
214
174
187
203
200
234
219
212
144
199
222
195
202
263
202
160
258
214
175
107
151
225
195
170
207
203
174
167
192
233
225
205
200
177
178
215
161
227
223
192
238
251
257
217
208
171
204
202
184
270
197
260
156
192
170
218
177
239
163
219
238
236
210
235
195
197
203
215
168
232
145
162
187
168
249
230
248
117
172
202
162
251
211
252
184
231
169
217
176
227
234
254
214
184
209
232
170
233
216
184
192
209
161
213
257
137
199
242
157
209
229
244
195
200
222
215
185
181
254
185
223
177
196
245
173
190
197
209
273
224
231
166
224
205
220
162
201
238
194
177
187
151
168
287
183
199
175
205
229
200
237
233
259
208
183
119
170
207
230
209
218
251
181
197
231
139
202
204
195
211
208
214
227
241
195
227
245
109
214
177
152
165
246
199
244
231
187
188
216
232
114
206
162
167
188
222
181
184
234
246
153
178
241
216
206
214
144
188
237
169
172
209
187
176
170
236
234
198
237
143
178
209
195
167
225
216
176
231
144
191
209
126
189
231
200
236
180
128
136
233
225
188
219
145
145
247
173
202
159
217
137
237
199
194
199
241
157
206
235
145
154
245
276
189
144
156
192
235
174
312
219
169
220
223
152
185
203
193
196
161
227
243
218
238
190
189
201
254
234
160
198
206
264
205
139
201
243
172
173
221
305
155
211
185
195
268
265
221
249
228
213
225
166
165
199
211
176
195
209
243
197
185
197
202
238
204
174
204
216
159
142
214
140
145
172
180
138
242
206
205
189
160
167
203
273
204
165
216
206
171
262
152
187
237
206
193
154
123
203
231
207
191
166
204
217
184
195
215
181
206
235
175
199
133
174
220
200
179
220
218
198
239
240
219
196
133
179
164
196
249
182
245
204
195
232
202
192
189
224
182
163
146
179
191
210
240
159
218
194
185
163
220
204
159
181
206
208
132
210
158
194
154
149
256
248
218
193
144
163
170
194
162
190
193
144
186
128
223
169
218
241
163
197
198
229
153
228
180
201
205
204
190
195
159
261
164
237
231
128
176
247
216
246
213
258
162
230
177
222
228
182
202
135
218
107
210
214
197
203
240
181
182
243
169
215
139
179
156
182
158
185
156
219
217
180
232
142
184
264
236
220
171
206
210
259
244
244
235
148
231
158
154
207
147
222
159
162
276
265
197
215
259
232
237
264
174
146
169
204
133
211
221
185
165
237
225
192
225
194
214
249
256
174
216
254
200
160
177
157
187
167
212
225
182
130
155
219
212
176
221
158
184
187
189
185
208
148
189
120
120
233
199
191
222
190
168
219
217
150
216
234
203
271
201
213
216
201
213
258
270
155
170
183
192
179
207
187
169
165
208
222
237
144
207
234
235
190
200
273
203
258
160
193
198
189
194
192
198
245
194
204
216
205
186
239
221
133
176
285
136
235
100
156
237
157
230
226
193
169
155
189
204
272
184
199
195
248
231
212
252
138
184
193
246
204
195
169
221
231
225
188
161
207
202
183
159
170
150
163
237
217
194
235
248
255
203
246
153
255
209
205
192
258
138
230
173
236
282
226
173
219
200
219
217
167
230
191
172
165
180
194
193
157
202
178
199
235
203
119
161
199
191
223
175
163
215
222
248
185
165
232
226
273
208
212
167
236
196
220
199
174
185
210
203
268
218
234
189
191
187
168
174
216
110
187
234
149
159
204
245
126
249
183
217
188
166
193
245
253
183
185
203
196
215
215
211
171
260
216
142
230
196
172
238
210
150
174
245
232
175
225
145
202
212
123
162
180
233
239
207
177
261
170
158
204
209
239
189
241
208
225
164
197
137
183
199
260
167
151
200
133
227
256
163
128
162
226
221
252
219
242
200
195
189
180
191
236
237
235
239
234
251
214
227
219
225
240
192
206
188
203
189
224
266
210
192
193
240
181
217
203
206
269
240
189
171
218
195
190
178
198
206
263
199
157
242
208
217
166
139
222
191
223
227
267
200
215
187
128
174
228
216
214
203
181
241
232
154
260
168
169
197
193
164
188
216
187
219
165
166
161
117
174
191
225
209
171
218
218
240
235
228
190
222
225
229
233
202
243
242
179
164
198
205
221
192
213
216
160
201
163
214
176
229
233
213
234
214
231
207
214
147
216
174
206
167
146
165
234
220
193
194
177
219
227
205
201
243
162
227
175
159
177
188
151
209
272
233
174
199
185
235
223
190
197
222
200
195
210
190
171
270
163
202
171
186
197
213
238
211
207
200
213
221
208
190
227
149
241
192
166
205
173
228
116
156
238
180
196
202
220
184
160
235
223
215
166
204
235
201
239
134
183
180
127
202
182
159
240
247
213
213
222
230
248
201
184
245
201
241
176
207
135
125
217
195
153
198
210
143
179
154
185
196
199
254
228
124
185
162
162
232
251
156
186
215
256
217
212
171
184
190
160
149
209
139
129
238
192
215
152
223
201
184
160
185
131
270
153
148
202
227
192
221
181
255
240
267
196
224
213
209
242
211
165
203
128
253
197
223
253
235
182
182
200
217
253
225
225
172
217
176
203
216
173
209
269
180
239
235
201
187
226
221
212
201
170
198
275
260
205
145
255
51
203
173
160
214
202
206
151
204
210
173
246
207
234
186
213
243
228
235
186
190
221
261
162
253
178
164
227
192
165
189
190
133
154
221
173
219
280
202
240
132
186
257
198
220
228
166
210
214
215
179
209
212
215
163
210
197
236
170
230
207
210
159
168
218
205
188
241
160
208
206
176
214
159
256
170
195
163
290
172
136
240
204
195
185
197
208
236
258
242
229
218
228
140
168
169
218
158
210
223
269
183
152
213
208
191
244
199
242
167
229
135
254
162
200
217
222
176
209
230
272
187
271
194
144
209
180
198
249
247
160
178
249
216
214
200
223
202
148
151
205
154
178
189
150
167
184
237
218
208
195
149
183
124
213
231
159
248
168
229
227
239
206
178
206
187
181
212
184
232
191
197
194
216
179
225
196
229
176
223
209
249
139
223
216
191
218
140
153
187
216
203
235
226
238
156
263
172
244
145
210
137
242
220
205
235
178
217
191
181
217
188
238
218
200
172
178
189
207
201
177
162
211
182
208
167
237
225
178
225
172
160
221
193
201
238
212
250
208
192
205
229
200
212
136
145
198
193
209
235
263
220
175
237
177
249
179
133
193
223
282
222
127
214
230
200
219
154
189
189
216
224
168
241
183
152
142
228
161
233
212
195
145
203
158
195
195
225
108
202
222
217
182
164
212
188
136
235
148
197
190
260
245
204
224
206
161
184
237
192
207
210
201
147
176
198
214
218
149
244
225
174
255
218
180
232
250
194
242
268
163
219
216
237
216
221
192
215
186
184
203
186
221
217
217
242
165
227
119
182
227
229
202
222
213
184
247
181
175
184
170
305
183
206
215
220
166
243
137
189
176
232
216
203
180
166
141
147
235
185
218
209
218
185
163
161
234
209
154
185
246
199
167
220
194
197
165
203
197
265
174
206
198
154
135
125
183
152
245
182
162
199
231
166
250
187
207
197
186
190
201
220
204
236
192
181
194
189
251
207
213
230
141
152
177
195
245
191
216
217
185
192
244
193
242
180
235
241
230
211
168
222
164
189
197
173
228
152
231
169
185
205
151
142
159
220
186
227
197
197
188
224
167
202
174
256
238
202
167
133
204
227
215
185
218
202
222
253
255
192
212
161
155
193
187
240
196
213
222
150
148
211
200
212
251
182
229
169
202
213
210
206
207
169
228
244
196
221
193
167
249
199
253
152
171
181
173
276
204
216
241
173
221
158
184
218
142
231
151
190
214
175
226
160
208
174
183
253
195
251
222
216
248
227
241
233
173
179
222
188
146
171
210
216
220
205
155
139
238
226
191
191
209
231
168
195
203
150
150
199
211
140
144
223
200
210
247
218
193
146
222
228
232
162
232
214
186
265
193
214
215
261
135
182
151
265
196
152
230
240
202
194
153
222
231
214
210
253
138
194
177
220
205
204
154
247
142
228
175
180
227
236
148
180
221
208
214
143
215
198
272
201
243
196
187
178
221
235
192
199
197
183
181
194
201
171
233
170
239
244
257
188
182
183
225
193
172
169
172
216
173
186
167
233
163
124
152
209
227
228
182
206
165
245
223
200
173
174
171
203
212
193
234
200
204
195
254
239
124
224
145
216
181
259
179
134
204
284
199
221
205
147
212
216
112
271
223
205
228
212
213
194
186
211
230
235
194
189
278
194
176
252
204
173
187
184
296
210
188
200
191
214
177
204
254
176
226
216
165
167
194
201
218
219
167
227
156
211
198
213
226
177
154
205
239
243
228
170
211
239
209
236
209
239
204
206
187
156
163
199
191
233
254
172
201
217
242
244
162
213
226
145
183
201
279
143
229
215
203
180
203
172
170
167
204
178
210
199
188
160
165
211
231
158
166
209
202
166
253
181
226
268
199
177
185
206
217
238
221
237
203
234
188
206
199
214
204
209
231
175
245
222
248
155
171
176
211
217
242
201
182
183
232
185
245
234
197
214
149
201
190
114
166
186
216
213
191
170
217
202
245
160
167
248
200
157
266
174
229
179
252
149
244
185
220
212
232
224
119
174
211
166
217
205
233
214
157
187
206
226
237
226
235
217
239
217
205
165
224
209
174
150
221
146
197
172
206
224
195
175
207
223
206
189
252
192
173
269
136
126
201
193
227
261
149
185
238
195
235
220
216
192
225
137
281
214
177
230
193
194
220
209
233
261
142
150
140
208
202
252
173
236
189
163
173
187
182
163
186
188
211
258
167
181
188
232
131
217
195
196
181
235
202
207
215
255
208
203
206
187
143
251
204
202
243
268
149
188
200
221
277
212
215
257
170
220
234
189
168
139
224
236
129
213
266
230
182
186
203
199
224
241
241
181
221
192
149
175
200
203
184
268
173
185
210
175
205
184
199
189
234
242
158
256
243
215
189
175
196
132
191
180
253
177
232
146
230
199
172
118
183
146
155
166
199
146
161
240
224
208
224
227
230
238
188
179
208
149
256
145
200
219
214
198
197
145
141
197
193
224
233
273
209
217
240
182
241
167
217
197
163
131
208
170
188
198
202
153
181
213
228
283
186
205
246
217
188
133
192
183
208
226
246
162
208
183
167
222
216
222
204
191
187
248
183
165
227
227
134
164
187
244
234
189
285
184
165
227
180
224
219
228
219
169
191
209
219
218
227
253
217
197
199
253
206
140
173
233
193
199
153
210
235
175
199
143
228
224
209
194
177
200
136
193
124
204
244
228
213
203
145
214
190
236
182
210
161
204
254
178
182
231
174
168
198
241
174
243
175
198
159
204
210
203
211
202
218
204
178
161
198
225
257
228
186
179
199
207
200
184
156
209
170
162
212
174
190
192
180
147
197
234
200
205
212
217
154
210
187
207
264
207
151
222
186
163
147
238
198
166
195
230
201
221
209
222
205
200
214
188
222
234
161
230
176
175
172
193
189
216
266
151
220
252
229
178
215
195
272
188
141
184
196
232
188
235
208
219
179
215
212
181
215
245
168
202
258
217
172
214
218
174
211
204
202
246
215
219
201
228
185
222
179
201
133
238
264
136
227
161
263
180
183
228
215
210
216
196
253
212
162
209
189
192
181
219
145
244
221
226
212
134
178
185
229
204
233
204
206
137
275
168
146
220
176
212
200
135
212
201
221
217
204
219
197
161
198
236
181
184
231
249
203
186
159
147
220
180
143
190
188
203
242
280
190
180
152
195
221
225
219
92
135
243
147
183
251
215
207
183
217
210
242
171
201
174
180
201
183
227
189
213
216
141
139
235
196
166
148
137
231
191
183
194
188
180
232
223
238
189
179
207
179
202
257
193
177
232
201
204
241
227
220
140
226
223
209
210
231
206
157
187
273
215
183
224
228
208
181
162
236
250
207
191
154
133
172
179
204
127
171
227
153
176
232
196
224
236
224
194
222
170
221
147
152
209
243
195
163
169
208
199
206
248
218
208
120
186
214
235
169
196
186
208
212
209
171
217
205
155
182
126
204
200
209
241
209
184
234
183
261
195
187
162
195
224
219
192
187
159
171
164
218
200
190
230
181
206
204
228
210
257
167
235
165
247
272
134
205
166
250
185
218
188
183
197
240
283
213
233
220
249
166
196
190
239
221
198
216
194
167
232
216
249
171
198
178
214
195
219
199
187
117
166
242
201
192
157
162
235
138
227
232
215
197
217
221
165
218
219
199
188
276
217
234
251
206
187
131
302
129
217
194
200
229
156
234
203
188
163
225
171
174
242
187
192
193
208
219
216
141
175
247
203
200
228
198
196
204
257
194
245
239
190
204
211
217
277
206
175
238
195
209
182
144
242
188
187
170
200
223
179
183
240
175
183
171
190
196
188
282
189
258
193
192
221
248
200
203
231
145
226
202
224
270
245
191
217
126
194
181
194
237
258
184
224
195
242
180
188
217
219
211
193
177
254
207
180
238
233
236
174
221
119
206
218
247
138
184
174
210
228
202
66
143
251
151
225
226
181
197
214
231
194
177
183
186
143
185
218
226
185
150
199
191
158
143
177
191
211
187
217
182
176
195
181
215
230
220
235
167
168
186
199
216
193
178
178
212
230
232
202
149
145
199
200
239
213
242
199
230
192
212
172
143
184
232
196
238
243
208
132
148
160
188
226
193
247
178
141
209
167
243
232
223
186
196
257
173
168
194
240
228
210
255
201
224
217
136
246
191
212
249
170
223
176
170
201
193
227
245
221
186
214
209
231
187
230
203
215
247
217
176
234
193
220
221
146
168
203
193
226
222
224
246
222
237
227
223
166
162
240
194
176
240
156
263
147
152
150
185
157
188
217
158
169
237
222
217
254
225
180
217
202
202
205
223
188
163
222
141
212
250
237
202
245
212
185
141
223
212
201
189
226
247
235
198
201
233
137
233
218
124
226
201
255
196
219
189
192
155
165
250
206
241
164
221
215
182
191
195
174
103
201
193
211
227
246
163
221
176
246
178
214
151
207
198
190
158
164
231
233
174
201
155
189
200
239
219
222
175
202
195
144
227
205
244
208
227
206
209
153
167
235
190
254
263
140
193
225
244
188
185
158
173
220
150
239
187
184
153
185
231
194
236
251
227
169
231
228
168
154
188
179
251
195
170
211
179
143
173
226
220
246
165
219
190
189
239
220
185
239
216
209
252
221
182
246
214
224
204
226
190
192
216
259
238
210
202
150
219
207
277
228
135
215
191
205
209
175
192
227
147
165
220
201
227
176
161
206
196
176
150
197
224
247
209
205
197
262
192
209
235
198
229
205
233
173
205
203
183
163
183
174
182
212
215
233
196
248
230
219
247
164
195
212
208
104
178
198
271
186
235
139
199
208
241
205
221
214
222
197
182
212
209
196
198
157
259
137
221
271
187
225
219
224
208
210
175
218
281
184
119
233
226
226
233
170
215
210
207
188
190
181
222
191
247
179
226
191
200
188
200
232
232
214
207
172
153
238
235
239
210
176
204
189
189
255
95
236
238
199
242
230
240
191
266
196
204
213
188
200
209
190
173
234
227
227
233
218
164
200
223
177
124
231
244
146
184
230
187
234
128
208
223
208
220
212
207
211
213
203
187
141
138
213
231
261
149
178
208
204
200
232
167
184
184
206
278
152
179
179
186
186
213
208
225
120
237
239
225
223
189
129
260
184
218
181
203
161
244
236
208
217
170
191
221
258
189
165
183
113
167
217
162
196
169
174
212
233
215
227
204
196
177
201
213
229
244
216
153
171
188
152
167
192
185
197
217
208
243
191
102
228
205
187
233
230
158
190
127
211
199
171
187
167
171
227
134
169
210
166
209
191
194
218
164
261
170
226
173
202
262
177
202
174
132
272
269
263
117
196
245
184
192
170
218
216
238
141
230
162
255
190
224
226
233
229
153
213
234
227
119
181
197
202
266
247
184
258
158
189
237
218
220
227
168
176
221
180
176
212
231
168
164
244
215
214
244
221
239
212
222
232
181
146
271
170
208
195
204
155
157
233
192
259
179
231
196
194
185
179
239
211
206
158
173
152
206
244
195
215
170
239
236
192
207
176
216
194
246
237
209
269
217
195
120
183
110
194
237
81
237
233
205
169
289
264
159
158
244
250
197
174
183
166
231
208
231
214
139
213
143
195
221
189
140
218
163
145
159
210
168
204
181
211
205
191
149
222
237
121
214
165
164
221
146
248
234
223
265
238
227
177
207
152
217
209
222
213
213
199
184
201
239
214
245
266
203
160
209
190
183
181
200
207
183
197
163
279
105
187
182
209
179
154
210
225
218
227
224
202
161
208
181
257
167
219
221
203
236
254
191
196
206
240
184
183
206
174
151
206
188
206
236
204
185
230
200
250
175
239
154
158
238
209
238
215
221
205
163
197
182
198
177
192
182
198
227
201
176
147
180
197
202
233
210
172
191
208
169
181
196
197
251
212
214
233
185
193
183
237
156
226
180
280
157
186
197
206
214
209
183
205
220
215
216
144
214
184
150
168
210
238
152
244
195
169
152
164
226
218
125
199
166
193
242
228
178
235
255
178
199
200
178
266
187
228
189
261
177
209
227
164
231
175
246
173
207
203
143
159
239
139
228
266
143
156
272
189
221
261
182
172
218
171
186
154
171
127
142
204
237
231
204
191
157
216
172
203
200
185
240
224
208
183
139
237
240
215
129
157
208
162
191
242
256
192
152
205
268
275
222
171
168
201
197
191
206
240
254
197
201
113
202
223
222
149
217
193
203
251
271
199
223
197
244
167
182
250
202
230
242
209
170
165
237
207
234
154
217
190
145
198
176
178
205
187
201
222
227
212
257
242
236
161
150
140
213
243
214
168
165
185
240
195
244
124
157
250
153
193
149
198
196
237
223
233
205
142
224
222
260
138
173
253
196
166
197
150
158
216
233
194
233
204
176
166
190
246
163
196
178
219
230
176
208
191
165
175
164
163
166
173
229
200
227
181
172
248
233
242
205
171
205
236
163
199
189
206
230
203
218
171
189
227
175
193
225
219
140
187
242
175
138
251
215
192
219
177
226
251
207
199
138
209
253
227
193
155
193
226
170
170
207
220
147
174
139
230
147
207
184
191
225
185
238
146
237
217
269
229
189
223
203
169
191
218
227
240
157
183
177
260
229
162
198
253
218
219
190
204
245
243
148
183
206
217
198
170
231
204
165
187
203
195
155
181
254
186
278
208
231
198
182
174
215
185
197
178
200
205
190
248
221
240
173
208
118
226
164
212
195
208
228
211
183
185
224
161
182
204
213
242
161
245
165
218
193
183
267
209
217
219
198
171
160
169
243
235
223
229
255
202
216
167
161
218
207
206
239
223
201
139
203
181
169
207
146
212
254
149
184
185
210
222
231
186
207
180
251
255
164
199
202
194
239
145
166
214
179
159
200
220
208
217
190
180
225
168
136
193
242
248
225
192
172
187
166
198
200
204
185
167
196
176
189
186
172
219
213
183
205
225
280
254
225
186
249
210
211
201
182
210
149
243
228
145
184
178
185
177
195
223
160
168
222
216
199
221
221
218
157
168
180
159
267
165
145
133
230
176
175
162
228
230
226
151
201
217
186
262
188
210
227
196
199
211
212
183
219
214
245
175
179
182
199
221
211
164
233
226
228
218
215
229
219
217
301
263
218
225
211
230
251
158
233
169
231
226
191
184
202
223
152
196
207
197
256
189
242
181
257
223
215
206
172
225
173
224
206
217
243
275
200
173
241
226
152
165
134
138
173
233
185
234
212
205
190
230
259
236
190
211
204
214
262
164
244
212
162
228
184
177
214
137
182
194
224
188
214
209
232
139
202
189
216
232
285
229
215
194
242
171
244
184
196
229
246
151
233
137
208
149
223
171
232
199
176
185
165
237
175
193
214
199
266
208
185
210
189
149
200
213
198
206
224
204
250
148
234
230
175
236
234
212
188
213
250
140
169
147
214
223
157
198
210
240
188
247
175
136
205
233
234
198
276
156
215
146
248
203
173
189
182
186
205
216
152
170
146
183
211
201
166
184
267
176
197
186
246
229
149
249
139
120
197
169
213
268
116
210
179
186
201
189
157
171
194
180
280
227
149
211
143
197
137
190
200
163
268
181
158
213
192
173
200
164
204
235
201
199
178
175
233
225
218
204
158
194
216
212
215
163
185
166
140
190
163
202
192
273
196
164
194
183
244
209
187
184
200
157
173
206
137
158
236
243
126
197
213
178
204
260
223
219
239
258
212
219
184
253
181
167
165
166
184
214
173
185
172
205
210
210
210
194
178
165
129
156
124
202
210
245
251
168
145
177
154
216
204
169
193
139
224
177
203
182
84
214
228
126
219
195
232
188
243
197
255
187
179
268
216
103
249
218
205
172
174
119
181
175
191
251
159
118
144
194
251
174
225
165
241
174
151
218
230
199
151
231
133
172
196
218
256
198
174
162
151
187
216
156
228
269
195
224
139
174
210
224
191
146
141
152
199
197
193
182
220
209
206
162
182
242
209
189
231
208
163
224
254
249
185
188
197
182
237
157
162
212
212
165
140
202
223
180
221
251
196
197
147
201
257
216
217
172
240
161
188
219
244
179
206
181
268
257
255
215
218
200
194
150
182
228
253
242
208
229
141
232
185
228
157
241
228
225
114
169
216
136
186
213
191
176
166
170
255
218
144
268
196
172
208
235
172
260
251
219
155
138
217
217
201
222
212
213
189
197
247
219
234
235
209
205
184
233
202
155
167
186
199
174
179
198
237
211
176
192
216
203
181
201
128
191
212
263
194
197
195
162
145
194
155
189
216
129
194
213
233
240
146
212
248
161
233
233
178
174
243
227
210
167
201
196
210
224
194
202
211
184
145
165
270
175
175
247
188
225
154
193
213
184
183
215
159
230
191
237
143
228
224
183
176
184
182
186
234
222
170
210
215
243
208
169
218
207
187
222
188
211
198
224
164
202
155
165
217
228
203
210
153
177
191
130
170
179
215
229
194
227
168
197
193
164
219
185
222
245
187
226
244
170
221
181
244
182
158
203
226
198
166
190
185
235
206
171
240
222
227
214
135
209
253
227
223
160
236
196
212
222
198
183
200
232
173
191
174
191
196
150
220
206
187
188
144
250
206
166
208
170
171
194
176
151
158
172
156
179
174
205
158
236
149
163
246
164
224
180
178
210
207
209
163
208
195
179
249
188
232
128
165
175
186
195
170
217
180
184
173
221
159
204
233
165
213
177
131
214
243
146
201
185
226
223
255
240
131
253
179
199
280
140
213
188
207
212
236
229
252
151
200
161
265
187
203
162
204
237
189
181
216
175
206
161
209
167
213
200
177
252
148
151
151
159
212
253
122
179
173
235
192
186
192
237
217
177
171
207
263
203
158
213
230
226
186
221
201
208
142
232
207
152
191
226
195
195
164
248
243
157
232
234
189
214
159
222
184
172
249
178
164
138
223
250
261
246
209
182
198
158
208
218
160
215
198
237
153
239
240
250
251
222
194
166
210
237
183
230
221
268
110
192
218
193
272
212
230
228
174
215
105
210
201
118
179
215
198
212
246
208
154
143
247
214
196
192
220
179
233
224
268
193
258
208
203
225
166
261
204
226
208
192
186
199
179
210
205
202
232
189
199
212
176
221
206
221
150
210
171
230
138
193
194
239
228
203
237
255
165
165
200
226
167
135
254
216
219
172
184
152
215
170
194
210
220
208
149
177
183
223
212
146
228
228
187
212
179
222
219
119
198
194
246
155
209
189
188
256
190
261
152
190
212
203
156
228
202
188
193
178
198
289
189
205
198
139
209
247
202
184
196
234
208
243
176
251
168
238
182
185
161
240
218
226
112
192
184
181
219
209
204
210
210
181
242
142
201
222
231
156
242
231
170
198
180
220
210
222
166
260
182
205
214
196
130
204
199
156
164
191
209
209
189
156
187
225
157
208
236
258
127
163
169
132
237
186
178
198
176
189
147
227
209
149
161
223
193
218
237
233
199
132
285
229
213
236
254
237
243
222
227
166
199
178
153
165
178
218
216
213
251
243
204
130
255
190
180
279
170
179
217
182
161
257
172
227
204
242
185
251
230
222
201
204
174
235
194
177
175
239
215
171
244
194
204
185
231
202
216
169
203
204
218
164
147
196
244
212
191
120
205
263
202
155
132
196
200
246
155
168
185
178
157
193
161
214
163
183
212
234
189
250
185
211
124
185
193
211
212
205
128
179
154
230
219
182
225
227
177
203
230
191
216
118
191
237
222
233
187
183
248
149
264
186
206
185
147
167
221
229
200
200
190
171
162
193
148
180
166
215
229
184
196
294
208
225
242
188
143
225
153
130
211
262
197
200
176
199
237
227
229
202
225
258
175
211
154
225
190
199
198
239
235
172
148
219
199
254
218
221
226
200
249
199
184
167
215
185
152
229
255
249
179
244
168
236
222
221
209
176
146
166
234
188
180
213
228
247
200
156
154
236
167
221
144
208
166
188
228
130
238
228
219
248
258
200
170
245
191
211
197
260
186
112
209
136
177
212
178
227
249
190
272
173
189
239
243
177
218
198
188
173
166
219
140
244
197
220
200
187
190
158
206
170
195
198
252
237
209
238
226
138
175
174
180
272
203
265
188
236
183
205
165
142
206
224
225
176
195
197
167
226
217
158
165
181
153
196
240
142
258
146
214
244
193
143
221
191
187
219
155
229
153
242
228
196
213
185
184
219
179
171
208
229
199
253
251
216
180
136
179
170
206
273
168
204
180
238
199
204
186
129
235
218
174
144
235
187
182
143
194
148
169
251
174
199
185
198
264
225
231
165
188
218
121
210
178
235
202
161
213
193
186
275
180
255
185
189
130
202
260
174
208
219
218
218
183
229
194
202
235
189
189
210
159
142
189
224
238
233
212
146
160
176
251
187
229
217
156
181
128
193
181
201
92
211
202
224
150
265
239
160
198
206
185
239
210
196
236
224
150
214
179
211
156
214
189
118
160
128
198
173
152
231
246
191
212
213
177
189
210
187
230
200
220
248
189
189
203
223
223
216
198
233
173
187
211
201
167
197
135
157
203
172
197
245
151
206
215
192
272
235
172
204
131
195
128
137
216
213
192
152
193
233
200
231
197
190
177
204
139
158
242
255
164
224
219
175
210
174
168
218
174
180
230
196
158
214
142
202
194
270
173
213
138
129
200
233
192
215
204
259
182
189
222
226
174
221
226
142
152
245
207
197
196
197
198
206
146
228
233
226
213
157
186
150
239
202
233
166
209
206
268
141
176
170
204
131
250
178
218
90
150
186
205
253
185
186
171
176
247
215
181
157
250
203
224
173
223
217
229
167
222
153
214
280
213
228
204
158
204
254
155
195
220
164
209
177
153
173
247
216
212
276
216
224
227
189
219
187
203
202
254
139
190
203
217
189
265
194
215
238
209
184
157
185
224
236
246
198
261
253
191
224
157
207
180
172
236
170
193
207
210
199
240
200
179
192
248
259
201
218
201
220
233
243
173
199
187
159
146
232
209
240
181
168
99
285
211
216
202
161
203
202
179
240
207
192
196
111
203
253
272
162
172
188
230
202
166
230
126
195
129
246
213
194
133
170
152
214
262
164
224
203
149
174
188
257
162
194
249
233
205
193
248
214
207
208
250
205
212
215
242
175
210
199
208
280
177
202
222
219
196
175
174
147
216
252
186
195
227
217
233
199
228
167
140
143
267
253
230
176
171
218
251
193
152
179
194
143
197
202
194
208
177
139
202
196
228
158
164
241
193
198
149
164
195
249
214
209
157
214
225
204
227
174
230
208
297
190
166
238
168
180
186
188
141
171
230
250
188
234
214
197
219
188
168
149
225
193
192
231
223
193
229
206
152
219
191
262
219
142
171
237
242
269
158
122
186
150
236
164
218
190
257
178
133
259
169
224
147
166
209
245
209
182
205
105
268
216
236
154
207
233
219
184
213
167
203
249
155
212
186
251
227
260
159
178
197
177
192
247
183
226
223
218
161
193
112
208
245
221
196
195
196
259
188
230
190
233
138
221
187
245
180
186
219
241
241
205
195
207
241
231
223
168
212
181
170
193
212
230
233
172
200
215
220
238
217
199
214
208
233
197
178
167
156
196
217
180
241
120
204
198
177
130
168
221
220
243
217
199
203
138
185
209
184
160
209
209
225
205
218
207
211
186
202
226
209
247
199
145
211
249
201
168
270
196
192
188
168
199
252
200
181
159
212
230
163
155
220
201
230
189
157
130
139
202
248
206
209
202
238
178
255
251
213
245
157
159
125
183
225
156
247
213
197
179
191
158
217
232
204
141
169
187
145
192
251
255
183
189
216
230
233
253
198
164
179
201
264
158
155
161
141
203
184
235
192
207
255
184
189
229
235
215
184
193
204
245
217
200
193
183
251
245
264
184
100
192
185
210
222
222
162
210
285
179
197
282
246
238
153
187
188
182
195
179
234
190
130
229
227
152
175
236
189
196
195
267
165
148
190
178
216
169
193
227
227
192
203
215
242
222
252
163
126
221
150
222
223
137
226
135
171
196
218
173
189
234
190
214
187
250
233
197
210
224
236
243
181
235
207
205
195
231
222
266
186
183
147
147
211
201
242
219
231
223
209
217
210
167
195
230
161
236
223
199
210
163
171
207
259
243
232
219
222
228
263
168
187
125
160
212
212
191
257
219
223
163
214
169
223
226
200
164
215
217
167
166
154
167
196
143
212
173
205
136
175
147
249
205
236
144
196
248
239
218
199
151
155
154
196
207
215
184
275
186
175
163
225
219
206
219
247
197
198
187
142
170
148
269
210
208
227
233
165
205
215
241
185
154
167
263
215
250
172
122
180
207
122
182
183
101
119
142
188
202
153
205
154
143
194
177
142
219
183
141
143
204
139
170
143
197
224
253
210
186
229
142
182
167
192
200
234
157
176
173
175
233
217
165
159
246
163
218
197
239
224
179
197
189
180
208
261
151
176
197
210
244
190
203
199
282
183
155
200
147
188
220
234
213
174
196
202
189
272
199
128
183
253
226
199
203
172
200
150
239
246
183
219
164
190
195
188
226
229
257
197
225
243
207
214
177
199
230
154
275
181
218
171
217
160
237
233
172
250
257
133
198
248
184
176
180
173
227
95
252
245
256
191
220
204
272
206
179
209
232
203
231
135
163
170
182
196
154
229
192
204
185
245
137
240
229
183
156
160
170
241
196
210
188
137
188
158
186
163
248
183
255
218
188
210
181
250
212
225
179
255
200
203
230
183
256
244
198
256
163
150
131
237
238
192
142
248
163
213
204
153
152
232
245
177
218
213
168
197
117
168
199
161
139
186
227
224
200
190
155
247
222
155
211
255
192
193
165
222
204
227
202
223
200
165
173
216
210
253
202
192
173
222
223
183
228
170
203
230
262
269
215
251
177
253
212
201
214
212
207
215
198
176
214
207
171
188
149
207
233
194
209
249
152
249
236
141
196
217
150
199
186
147
195
172
223
215
221
176
186
233
274
188
235
205
142
192
204
173
226
242
189
179
178
251
163
268
199
199
168
155
164
229
160
204
193
177
228
249
274
257
184
153
137
219
183
204
186
186
146
166
239
160
222
242
168
253
132
168
270
183
205
154
203
240
239
186
209
282
249
168
215
170
176
148
199
238
211
192
193
152
241
210
208
187
213
211
217
145
179
234
224
213
212
282
187
246
243
245
190
233
200
190
189
222
196
213
201
225
243
203
175
228
252
208
179
180
160
221
171
170
233
277
213
259
193
129
194
169
191
193
185
163
222
260
141
196
196
222
192
160
179
275
194
200
247
228
209
131
201
192
188
198
237
228
223
232
164
148
152
208
216
167
225
183
170
209
199
122
77
203
269
236
222
191
227
228
237
147
237
177
196
233
165
223
165
114
205
218
136
179
197
191
145
251
224
203
182
179
207
211
208
207
211
212
199
117
216
203
169
212
211
177
207
214
222
204
224
233
153
222
144
233
189
167
209
164
221
202
213
223
205
200
229
252
224
226
204
231
236
252
171
218
208
183
207
240
179
197
176
233
252
203
233
239
244
218
140
143
167
223
116
178
193
158
219
253
228
248
152
160
222
217
222
149
143
212
142
198
239
192
240
200
213
216
217
209
186
218
183
178
235
222
217
151
190
228
238
223
207
218
242
169
153
214
243
209
228
187
184
228
197
126
232
199
145
257
167
198
181
246
126
219
246
213
202
178
156
207
193
224
194
220
178
216
135
182
218
262
189
169
235
226
208
192
129
234
159
225
222
221
181
209
259
264
229
243
182
290
141
184
214
238
193
241
239
227
194
229
207
197
142
173
252
189
176
168
184
189
252
224
201
181
151
157
178
195
227
204
220
238
204
224
122
209
218
225
185
171
128
225
263
167
199
149
242
194
212
223
211
220
139
194
175
205
148
188
136
252
236
213
166
282
211
184
215
230
221
206
226
150
189
145
183
172
230
195
180
207
163
181
174
205
200
181
193
220
261
185
213
215
281
162
217
167
243
235
196
211
244
213
188
133
185
226
186
190
261
131
141
192
248
160
189
274
180
148
142
239
223
251
235
190
265
199
194
132
190
204
267
196
221
180
173
197
200
210
197
252
213
247
222
119
235
215
205
197
214
220
196
227
271
238
150
213
237
203
200
182
214
180
155
247
160
192
266
195
204
187
171
184
154
181
202
174
274
208
230
185
144
153
170
217
175
170
201
193
235
253
175
210
230
222
212
178
209
202
202
200
186
152
169
216
194
169
213
156
192
230
221
188
173
189
180
202
170
181
237
201
244
162
187
210
215
178
233
188
223
198
167
211
201
168
213
239
185
164
194
173
139
232
136
184
192
207
198
195
195
187
222
224
198
225
183
217
195
222
168
190
228
180
150
210
157
258
136
246
189
204
180
178
223
213
161
223
244
188
180
175
208
134
245
145
164
139
181
227
204
180
176
186
218
177
179
120
188
257
203
218
177
214
164
188
250
256
252
177
161
215
180
164
253
191
249
228
207
211
240
215
178
212
225
193
195
166
267
209
184
235
213
238
215
219
207
120
181
241
194
279
149
211
191
239
164
170
233
207
243
180
249
227
165
192
218
146
149
198
188
159
191
215
206
158
168
175
182
228
221
172
256
204
149
173
200
217
194
183
221
242
221
234
189
204
217
249
164
212
249
233
216
179
236
227
258
281
237
230
204
209
181
109
175
189
222
229
213
225
140
214
199
204
166
196
178
131
240
197
236
257
226
228
212
188
160
203
186
210
164
256
191
175
217
220
232
265
205
259
182
291
130
217
179
236
158
201
177
178
166
203
165
266
212
197
181
150
189
193
214
173
165
240
187
183
211
214
216
111
198
135
220
193
186
223
216
278
209
164
225
159
257
237
241
141
248
187
248
222
172
245
241
137
227
126
172
200
190
267
207
163
242
231
226
178
214
277
247
229
193
194
204
267
159
222
216
250
236
231
231
217
183
233
183
181
162
193
223
224
161
223
174
239
211
181
125
228
113
193
209
168
251
192
160
240
237
201
240
249
174
198
212
235
214
188
233
198
175
231
183
202
181
156
167
173
156
156
170
225
231
225
186
189
243
152
217
230
148
152
143
168
230
238
183
157
221
176
270
216
227
180
240
181
235
209
244
137
190
190
211
205
211
155
174
228
217
205
172
203
163
221
163
198
227
148
214
202
179
140
161
232
190
152
210
178
206
215
170
224
203
158
239
238
206
226
184
180
195
195
234
157
187
155
191
250
233
204
204
219
208
193
164
190
185
206
193
166
199
152
223
239
262
201
126
197
135
142
244
207
240
206
163
221
233
258
208
198
236
240
215
176
217
150
170
222
182
132
168
174
166
221
167
213
153
173
140
151
186
222
155
163
186
262
185
281
172
251
177
224
182
199
224
203
190
196
221
196
214
189
237
173
224
253
190
174
158
266
128
202
212
213
171
192
166
185
165
241
187
246
171
227
122
237
174
171
231
197
189
214
147
245
211
220
239
134
212
152
205
214
200
166
198
172
203
234
171
170
144
183
205
209
187
205
226
201
213
214
229
231
179
181
166
185
180
140
222
238
181
165
177
129
191
173
239
197
219
177
161
229
195
180
224
170
162
213
203
168
141
210
171
210
207
229
196
162
206
185
195
209
209
214
192
170
202
206
195
186
177
158
225
212
174
220
206
191
276
191
190
236
265
222
178
205
191
175
170
247
168
208
205
216
234
215
117
184
170
180
239
224
245
155
191
177
173
192
229
231
180
131
239
161
205
149
154
187
208
219
264
138
214
216
175
216
206
203
244
161
160
203
162
217
163
147
248
175
195
207
267
241
121
190
215
263
213
236
199
240
188
191
171
201
211
206
169
221
234
204
177
248
209
216
187
183
182
209
186
170
172
167
197
225
212
206
177
223
158
236
238
169
173
145
179
198
132
181
194
199
210
241
197
224
172
229
161
209
222
232
183
232
189
171
210
152
238
180
185
193
211
193
187
193
132
183
208
215
216
188
207
197
248
208
174
169
220
188
224
241
171
216
232
129
187
222
174
216
201
202
224
166
188
195
179
200
200
210
175
200
197
188
240
238
258
236
162
176
107
249
188
185
248
165
191
163
174
134
176
264
173
169
249
162
236
248
145
166
277
245
180
214
183
224
236
202
218
195
163
230
161
190
266
220
190
205
227
215
190
247
227
166
147
247
217
292
249
145
223
243
165
175
182
226
280
224
216
210
208
197
217
185
233
206
239
182
231
227
154
211
212
181
130
190
245
186
221
226
211
224
187
210
169
240
221
264
200
163
249
192
231
184
139
196
273
164
180
211
218
193
179
225
202
121
204
244
175
249
280
143
209
211
245
214
236
172
187
189
263
209
220
242
192
201
253
198
176
121
222
179
193
198
264
224
191
219
215
157
182
205
216
231
171
136
257
147
213
179
227
197
176
222
142
231
205
164
186
213
171
251
252
231
214
236
222
222
150
165
185
207
223
179
218
215
210
179
225
208
142
208
183
238
161
189
174
214
238
168
188
240
230
191
137
221
159
122
210
242
233
208
198
199
130
257
204
229
182
202
220
175
207
173
154
209
238
159
277
248
187
233
167
216
213
170
219
213
262
204
211
195
194
160
233
236
175
249
227
180
139
189
105
194
232
255
181
237
211
177
248
192
212
239
162
182
205
216
194
229
212
130
265
198
124
198
257
208
206
236
264
233
198
247
148
200
146
215
255
127
110
246
221
135
170
218
176
211
154
200
200
163
255
201
212
186
221
230
221
221
235
233
229
240
213
227
181
239
153
209
218
246
130
203
212
198
234
190
225
135
252
183
222
207
107
203
167
208
188
258
252
165
170
216
172
203
211
212
205
162
200
251
208
202
205
204
191
223
166
126
234
272
230
217
227
178
166
209
204
160
188
178
171
198
168
196
158
174
235
119
205
193
236
155
173
194
252
266
227
149
217
228
237
154
159
196
216
249
219
217
199
155
234
222
195
230
195
216
203
240
251
199
183
217
171
244
171
192
193
176
141
128
232
169
256
151
156
208
216
169
136
251
191
203
209
222
203
207
132
170
244
186
169
196
172
171
197
240
224
278
159
181
207
171
194
168
228
209
199
204
181
274
231
182
192
195
227
205
216
178
200
202
180
191
167
230
203
161
200
149
213
231
180
232
215
196
199
198
206
165
237
252
196
220
208
238
228
169
188
224
207
133
187
182
140
168
186
201
251
252
204
206
204
162
225
200
193
164
154
156
181
159
155
187
132
158
187
181
150
226
241
195
197
232
180
189
190
236
223
188
227
219
206
219
253
203
161
252
145
236
211
187
169
226
156
199
204
231
228
158
211
178
246
162
191
176
216
232
182
236
133
242
174
206
183
209
213
186
176
184
216
90
161
213
161
231
191
142
212
166
177
161
197
173
200
232
142
243
272
200
233
209
177
191
171
165
159
254
193
206
225
161
172
209
140
195
183
230
202
160
207
162
243
201
182
234
210
222
185
244
247
172
264
195
192
228
220
195
258
153
187
250
221
232
201
266
220
216
166
166
153
223
225
225
186
257
214
189
217
190
206
172
239
257
202
259
180
223
185
220
208
215
221
176
227
234
145
201
216
171
201
229
185
247
249
239
157
177
179
191
172
222
245
190
247
164
157
207
147
92
99
224
224
243
156
138
225
200
233
170
224
206
154
197
216
130
221
201
179
225
177
263
186
242
182
211
201
119
167
261
253
222
202
278
181
214
187
199
147
265
156
118
164
174
185
204
212
207
179
235
159
218
244
223
150
216
182
258
183
247
262
218
215
218
251
217
190
152
194
156
192
156
182
195
225
237
250
255
151
147
140
256
235
188
212
245
173
228
221
188
209
244
178
159
199
232
201
184
166
214
180
198
243
197
152
183
251
122
198
211
182
239
240
213
165
232
185
248
140
241
141
163
249
150
213
233
202
187
259
159
213
200
233
169
197
229
197
261
174
195
214
155
198
186
148
202
201
192
236
228
200
154
146
187
218
242
133
134
160
275
220
213
149
210
147
189
197
221
197
176
166
205
218
225
157
191
221
220
245
209
179
187
211
234
196
237
164
189
241
220
142
235
241
225
209
211
209
213
234
233
191
197
223
186
221
191
252
167
202
168
148
139
215
175
236
183
223
224
180
223
282
208
228
254
207
228
198
240
164
147
149
185
191
229
195
209
132
141
219
184
196
204
188
181
180
232
226
192
263
157
210
220
188
179
145
172
183
205
173
168
117
202
220
176
223
178
178
173
213
218
260
162
198
186
218
184
184
202
203
204
248
165
167
197
153
204
186
215
173
244
256
209
238
169
231
254
169
207
183
234
214
234
209
204
267
204
221
231
196
188
135
250
198
178
211
216
172
246
195
164
192
236
190
230
243
249
258
245
223
116
174
220
183
204
218
186
193
150
218
220
185
188
188
123
154
165
209
225
267
179
214
272
217
235
153
209
226
190
185
212
185
217
219
210
88
185
133
150
170
204
113
222
215
190
160
190
132
179
200
225
227
126
238
175
176
131
153
192
195
155
204
165
220
228
219
171
214
202
184
185
194
216
107
175
146
229
248
224
155
196
208
217
248
196
233
252
200
199
273
163
203
173
150
250
207
212
159
217
218
255
228
209
210
119
200
192
245
178
234
256
198
153
153
216
171
186
158
204
200
214
146
219
173
145
171
219
217
236
265
239
260
189
246
252
239
213
242
181
170
192
124
161
215
166
224
193
149
205
196
228
201
207
204
226
207
208
113
259
180
214
124
209
218
179
241
220
231
204
179
238
262
159
194
202
253
211
195
225
159
177
145
182
155
199
198
188
156
274
203
185
137
209
242
186
181
150
163
196
281
134
188
225
186
163
162
203
202
255
229
191
171
229
207
195
152
226
165
242
219
227
197
153
193
200
246
267
198
269
206
209
223
146
169
193
215
204
173
214
193
198
215
187
205
154
183
179
196
183
179
261
182
250
243
196
197
211
169
187
232
195
169
241
208
239
173
188
244
208
204
179
194
228
236
187
218
192
223
205
144
157
184
126
188
268
215
203
244
266
192
208
185
214
217
192
209
235
172
223
205
221
225
221
215
258
156
202
150
218
184
221
187
182
186
230
167
170
249
295
222
172
214
195
170
176
205
173
199
256
242
170
230
180
158
233
190
190
247
189
237
174
182
228
182
256
207
186
210
195
234
145
199
211
280
158
180
170
195
242
189
232
127
191
215
209
211
172
169
150
249
182
155
206
199
202
225
157
204
202
211
203
202
284
204
260
186
285
165
156
215
188
269
191
183
233
213
182
209
242
239
193
271
224
235
266
202
159
95
209
205
121
216
217
187
191
149
208
197
225
227
211
221
219
131
228
167
207
189
237
219
99
260
180
140
224
156
143
153
248
177
167
233
240
190
190
284
114
209
163
220
124
188
171
172
224
159
219
203
232
215
170
220
204
211
192
206
174
234
188
161
239
215
153
168
177
232
243
177
240
210
167
205
167
245
155
208
190
186
197
240
192
218
182
186
207
233
211
133
226
215
186
196
180
216
196
213
192
174
146
172
224
134
158
206
270
225
216
176
250
208
244
189
225
219
177
163
185
213
228
162
250
159
240
207
198
226
156
218
216
209
130
252
198
215
206
202
211
191
238
154
222
262
197
210
181
211
181
265
172
267
223
158
208
185
214
134
179
179
184
153
204
169
209
221
147
223
197
234
225
198
220
191
182
241
242
248
183
169
124
229
211
161
183
198
181
151
199
233
163
254
227
202
266
214
173
227
264
224
198
205
168
253
200
230
222
225
227
174
191
233
203
248
129
239
165
198
182
175
190
131
199
220
203
215
248
228
197
215
210
166
213
172
151
243
209
183
224
210
217
235
201
206
217
153
242
197
271
206
268
240
303
171
180
208
205
220
194
172
236
242
179
243
175
178
188
153
221
162
204
227
225
182
208
128
174
205
265
176
179
129
242
227
166
159
240
181
186
258
117
183
145
236
186
208
107
159
262
132
222
198
197
213
205
173
222
216
145
180
247
217
205
169
186
219
211
225
251
262
221
258
237
178
138
236
178
154
191
217
221
175
183
230
262
183
169
208
212
266
218
189
140
116
135
177
224
139
191
239
127
251
255
162
178
206
213
236
195
160
165
198
117
116
174
246
204
181
155
169
157
188
216
118
153
163
208
259
180
155
192
207
229
222
178
207
185
179
206
157
233
217
229
185
192
198
156
251
227
189
176
161
167
215
130
202
174
238
210
193
201
183
185
225
177
177
237
189
167
170
190
163
210
181
151
158
225
214
250
181
192
152
127
244
155
144
237
201
206
260
271
156
146
250
211
247
224
203
204
242
173
226
164
187
148
137
201
242
211
205
244
240
200
186
178
206
225
158
233
239
177
245
223
184
233
209
188
211
189
230
235
224
236
171
210
176
218
203
170
245
199
134
189
207
124
117
196
192
168
197
245
163
221
191
179
193
149
217
187
132
252
202
179
207
201
166
164
192
199
178
244
202
194
224
158
199
204
256
201
221
219
209
238
217
208
165
205
227
268
225
149
198
223
120
143
182
199
183
218
201
219
229
164
177
181
238
190
138
225
201
199
138
176
179
190
178
196
140
156
220
91
233
168
194
249
250
238
219
219
191
205
169
169
236
236
162
233
167
189
178
214
206
188
179
113
220
135
131
233
170
190
223
169
157
181
183
132
249
171
196
220
194
181
248
214
175
201
169
138
216
156
217
215
132
200
189
162
240
222
260
252
223
252
155
220
182
144
256
170
203
253
176
185
221
247
251
194
190
179
168
230
236
214
194
220
221
181
231
181
209
163
224
206
181
222
206
245
172
220
172
134
236
203
272
162
199
194
240
166
147
198
169
187
219
172
265
233
180
189
221
178
105
255
154
193
248
202
199
201
203
181
224
199
280
159
276
203
178
207
170
272
169
166
154
186
238
147
218
193
194
186
174
191
241
150
203
243
168
253
225
187
230
183
170
245
192
210
180
217
198
184
247
216
179
221
219
173
150
205
185
257
229
143
193
183
260
234
200
203
216
244
207
167
238
183
188
222
207
222
169
207
184
155
172
135
265
251
183
240
263
187
242
186
219
153
188
168
188
130
193
202
178
184
213
175
218
142
158
136
131
182
225
177
92
228
216
257
240
204
219
193
207
151
240
182
203
237
210
238
201
159
221
237
205
102
144
281
181
175
173
173
149
186
152
229
234
188
220
154
223
206
196
198
262
168
261
151
199
201
201
171
161
182
180
189
170
147
180
177
167
193
170
131
184
211
137
192
177
242
190
215
239
202
254
179
178
248
116
129
192
135
219
235
190
223
172
193
226
201
238
189
265
187
225
214
154
255
233
207
152
124
196
180
197
238
228
204
224
216
257
219
138
166
209
194
136
196
228
168
225
186
214
165
179
144
219
190
149
181
184
231
171
212
181
242
181
213
185
236
213
185
198
183
178
194
216
165
178
115
219
221
243
173
191
188
224
157
196
164
203
229
267
189
237
200
224
237
131
235
227
141
142
223
255
208
211
247
192
203
167
176
162
239
214
204
208
217
189
107
189
233
237
162
166
169
164
244
210
215
188
194
210
247
153
147
240
177
195
110
178
158
184
211
200
202
203
194
139
164
189
215
247
165
215
208
207
182
126
190
243
228
134
197
220
178
249
182
215
156
247
219
133
196
188
215
222
219
182
263
232
262
124
177
143
231
129
229
208
155
203
239
157
257
229
250
191
167
177
227
239
224
172
179
101
233
193
173
206
148
214
221
197
192
233
179
204
126
207
214
148
177
193
188
194
218
161
187
180
222
215
192
222
200
191
195
210
171
238
238
150
174
173
196
182
175
186
144
168
193
174
212
162
233
182
244
227
214
251
146
216
149
151
148
250
200
186
171
190
166
213
182
229
206
169
235
220
243
162
190
179
233
201
228
141
160
269
250
241
190
284
133
243
233
219
184
264
190
201
201
144
223
206
223
214
238
187
188
145
215
175
220
163
251
189
190
154
239
203
197
213
244
240
225
180
188
210
178
214
218
197
213
175
169
142
244
251
196
176
236
249
211
240
182
166
175
200
118
234
264
168
214
212
187
137
199
185
230
193
205
157
201
155
177
139
184
234
170
207
236
190
146
228
191
207
221
205
149
198
229
189
196
168
221
207
203
252
252
177
175
222
247
231
227
240
174
229
186
216
203
233
206
156
251
163
268
214
226
108
151
196
150
187
285
267
196
211
215
229
190
259
172
199
222
259
224
188
184
139
201
213
196
219
181
264
225
165
123
190
214
247
181
137
202
257
219
221
205
230
200
176
125
174
208
192
128
192
213
230
171
174
180
144
261
221
218
203
242
207
212
186
204
172
242
189
257
128
174
205
199
197
231
204
221
93
199
152
220
197
141
231
239
137
191
159
170
224
194
226
152
189
202
208
227
223
224
169
196
203
216
190
218
202
211
240
249
266
169
142
199
168
227
166
207
165
163
169
225
187
164
196
149
152
204
211
178
187
224
187
175
181
162
201
178
220
219
213
205
204
218
196
145
171
208
140
167
248
218
140
136
195
154
211
201
196
169
243
216
183
214
213
209
231
236
200
176
192
234
163
182
181
208
161
204
195
213
150
185
225
168
207
198
236
232
180
238
158
177
213
224
218
245
182
206
183
224
208
172
194
222
170
187
226
192
221
127
176
220
115
253
168
250
219
197
217
176
182
198
250
172
231
191
159
157
189
244
240
199
222
266
171
230
210
115
221
155
126
193
169
236
208
213
214
212
256
227
167
171
209
203
182
198
230
216
178
243
220
181
206
184
136
284
196
241
211
196
262
155
143
202
135
111
240
203
164
233
197
242
155
225
227
165
240
125
249
237
192
227
230
178
248
194
208
205
203
213
190
188
159
205
175
274
233
234
259
208
245
187
199
217
189
208
192
173
226
186
162
218
232
206
208
172
147
251
176
216
201
219
255
170
181
231
134
208
211
183
187
188
188
208
238
195
212
234
199
164
204
181
167
221
241
198
215
143
240
152
198
196
187
224
167
235
137
211
169
199
243
259
176
135
137
158
169
280
215
214
208
187
224
173
187
203
187
156
147
147
213
268
161
209
252
161
150
150
250
166
241
250
261
157
145
155
189
195
177
193
210
121
174
218
191
202
203
209
174
151
182
133
216
216
180
188
202
200
209
169
175
140
224
187
176
181
219
246
157
170
204
198
223
217
211
125
206
261
261
197
236
195
251
260
236
197
176
186
191
224
188
210
208
212
194
229
169
225
219
188
231
206
210
269
197
228
236
139
151
181
230
165
143
193
184
149
239
265
227
170
164
235
135
198
222
178
200
247
175
233
166
155
186
237
229
195
253
183
236
247
190
165
245
170
195
219
173
174
218
209
203
194
200
189
207
236
149
244
218
149
262
160
241
186
184
233
184
196
211
155
187
223
192
195
195
197
175
235
204
202
197
211
188
153
206
192
176
245
171
181
256
209
222
223
157
184
241
189
197
239
205
229
235
197
140
196
150
210
157
223
219
224
167
233
168
206
205
253
236
198
216
197
169
200
201
222
244
153
155
206
218
183
176
181
186
169
215
161
211
222
211
214
258
172
223
196
181
133
162
263
245
208
191
176
220
184
189
250
232
166
170
210
180
183
223
168
206
204
239
245
195
175
181
211
179
226
240
205
175
228
198
135
195
249
264
188
205
233
266
142
198
214
225
164
208
223
207
209
182
157
198
213
188
194
169
238
241
184
199
188
200
177
204
200
210
184
202
211
256
216
193
216
150
170
159
222
186
201
280
276
234
237
190
148
185
175
219
222
194
256
215
173
213
175
146
263
205
177
139
174
177
181
195
168
220
227
213
215
254
209
219
187
259
234
184
197
180
209
194
257
178
184
240
277
225
201
186
205
186
207
245
211
235
184
149
257
257
159
174
227
200
172
220
135
172
231
180
143
201
169
165
212
182
141
226
169
179
217
180
249
158
208
190
160
202
197
228
165
224
270
200
235
250
164
187
152
170
134
237
198
198
192
163
188
189
135
167
203
208
194
248
210
234
128
230
207
240
206
194
233
256
200
266
184
212
195
238
215
235
197
244
170
152
175
197
223
230
196
208
139
201
135
218
149
198
168
219
228
263
160
243
187
221
198
194
163
205
173
236
190
246
202
156
219
196
214
211
223
152
196
168
206
243
218
275
156
217
185
215
145
222
196
177
180
129
199
225
268
179
199
198
178
166
237
204
129
206
150
223
188
266
166
235
209
168
229
226
242
183
188
181
206
229
169
196
241
247
161
199
182
231
228
203
170
212
190
179
219
205
215
176
199
165
244
168
187
125
188
206
210
192
226
203
219
221
244
246
204
223
170
185
190
231
173
176
259
174
224
211
203
182
225
227
198
225
203
206
198
183
185
209
186
213
130
192
197
182
210
187
248
188
187
192
206
222
199
208
168
160
199
196
162
214
272
175
229
189
215
185
178
154
182
174
223
165
195
235
269
226
205
154
184
188
162
185
185
125
171
214
178
233
260
230
236
199
128
236
208
219
207
172
204
209
140
235
229
246
176
183
196
232
188
183
265
187
237
172
191
194
165
186
210
201
242
165
195
228
172
281
156
200
231
224
206
125
162
196
251
222
236
187
224
172
225
183
188
214
205
249
139
211
257
229
223
177
196
232
215
177
178
266
213
165
181
195
186
215
236
262
187
203
159
133
185
222
179
179
182
249
248
239
149
176
193
194
162
208
234
239
211
247
145
173
129
204
190
220
200
219
185
164
196
131
239
142
184
204
196
201
211
203
141
242
190
192
175
209
216
190
256
203
219
239
211
204
188
184
153
200
163
206
194
219
215
199
231
207
184
192
275
210
187
144
191
175
179
198
169
202
186
194
197
172
150
268
177
261
132
224
168
206
169
209
173
280
191
254
260
215
212
152
262
245
193
237
223
228
213
172
123
165
152
247
192
111
173
188
230
156
144
220
173
176
203
157
199
226
141
193
216
171
172
144
192
252
143
171
205
207
229
200
172
179
142
201
195
137
179
125
175
232
189
198
245
195
230
146
218
235
201
172
209
200
227
210
172
141
161
210
227
180
223
216
127
190
181
197
181
196
227
206
185
191
221
198
207
206
195
217
192
222
239
253
261
199
188
205
179
185
229
212
138
172
196
250
183
236
212
240
183
210
178
145
209
216
203
242
245
229
197
217
167
247
238
165
247
216
198
237
192
186
159
248
172
199
169
135
227
228
212
169
235
210
189
199
217
263
273
199
155
232
169
145
236
173
226
225
203
172
184
201
221
172
171
177
174
220
209
175
254
181
210
151
193
218
208
181
182
264
108
206
171
238
216
187
208
218
237
171
122
205
246
184
225
193
254
237
236
224
212
198
203
173
209
218
220
176
179
234
166
182
212
143
212
241
222
235
218
219
227
216
255
237
189
197
209
238
154
212
241
220
236
235
155
256
186
217
146
186
213
162
188
230
205
203
223
252
215
155
189
225
176
247
191
173
200
202
148
201
199
167
227
194
199
250
181
166
234
204
146
180
182
184
176
193
175
207
173
217
180
154
184
170
201
157
218
266
227
217
157
128
234
185
248
166
211
223
193
191
228
253
231
221
213
189
189
192
228
227
192
227
210
230
225
226
201
272
219
239
201
230
156
123
252
229
236
208
211
192
179
168
159
220
218
246
149
185
232
195
216
252
225
232
210
232
162
261
201
211
221
213
163
211
182
205
231
190
172
148
231
238
219
200
227
165
175
228
216
193
188
223
143
204
183
143
161
266
263
234
192
233
200
213
164
214
188
219
216
238
196
156
246
218
198
201
171
205
146
191
217
243
157
279
210
249
225
158
242
201
200
246
187
227
193
222
131
186
188
243
243
175
201
161
259
217
265
146
215
187
190
186
185
221
220
213
187
191
219
160
171
251
173
159
222
154
209
197
265
166
224
182
193
208
233
246
201
201
204
205
251
218
181
240
225
154
203
216
170
153
214
236
167
225
189
195
236
199
182
195
209
156
250
179
215
278
226
202
210
186
160
184
234
233
200
211
238
185
201
202
172
177
228
213
231
216
179
192
173
206
169
204
227
237
235
175
132
207
186
152
249
208
244
172
232
224
157
214
220
136
136
216
193
187
193
186
218
181
151
257
200
210
185
226
214
219
248
237
217
190
153
207
161
188
111
212
282
204
200
230
219
243
216
230
215
181
173
203
221
260
196
227
221
242
226
196
216
149
228
191
147
202
194
208
271
155
156
237
251
157
242
237
214
216
197
195
212
188
160
183
187
94
236
145
162
200
233
212
193
141
184
224
205
224
204
168
208
142
107
210
165
189
261
132
265
175
186
219
233
178
264
180
190
209
199
140
189
164
227
256
168
189
184
230
185
189
169
198
160
258
224
176
159
137
174
154
196
251
227
190
238
212
177
244
240
221
233
182
219
178
205
207
217
246
202
196
168
216
216
207
159
220
188
178
181
219
116
138
147
213
233
127
238
242
243
202
195
196
172
158
151
171
185
218
210
191
184
198
168
164
210
132
229
202
225
190
184
276
252
156
181
133
237
150
209
254
169
188
230
176
196
197
190
163
195
216
182
209
231
213
154
174
185
156
245
174
175
151
184
168
131
252
210
192
155
200
234
196
220
171
266
213
189
199
262
246
180
283
162
166
210
247
199
190
155
191
245
190
201
148
173
178
205
169
185
191
216
190
232
157
245
216
185
198
252
166
221
221
169
119
188
175
185
194
230
209
171
142
247
225
193
258
222
183
240
243
229
158
204
239
191
204
192
235
192
213
210
182
199
149
178
264
203
182
204
169
212
221
229
117
198
288
255
190
236
199
250
252
194
161
217
209
131
236
180
169
206
217
175
220
171
181
187
194
155
214
193
245
193
206
215
205
213
172
184
249
235
233
232
260
225
235
176
189
201
157
233
138
174
175
227
235
218
158
212
202
251
148
190
149
202
229
179
186
184
174
234
179
136
181
197
234
201
171
199
247
238
224
183
221
176
203
172
134
185
233
191
199
218
184
242
201
216
234
213
236
190
171
181
220
157
260
250
242
164
164
152
192
178
189
210
206
213
259
187
224
215
176
258
166
233
215
154
179
192
183
200
173
197
212
234
269
213
182
219
159
239
202
256
147
159
217
200
180
226
204
217
177
190
222
204
149
106
186
169
143
194
250
186
194
215
205
201
165
216
251
214
207
205
192
183
218
220
204
262
258
232
213
185
192
208
196
152
171
196
204
168
234
228
200
156
193
237
222
206
220
177
170
255
203
177
232
228
171
149
203
226
270
200
208
201
233
232
170
129
240
177
208
220
148
218
157
187
212
169
167
248
200
215
201
202
164
251
229
180
147
195
164
185
217
152
188
166
231
252
200
200
173
171
122
218
167
175
251
208
182
174
163
175
236
147
173
226
212
178
253
187
226
209
197
274
192
230
208
197
196
168
242
190
194
212
237
213
266
240
244
204
149
232
206
205
214
214
158
161
226
158
219
211
194
227
211
197
262
167
226
218
250
214
202
210
143
225
133
152
135
175
137
198
281
199
181
208
173
203
189
211
191
216
185
208
273
141
207
240
167
226
180
143
201
259
161
152
228
230
197
222
183
167
230
204
188
209
215
220
241
222
240
205
151
194
185
223
168
215
194
183
234
190
145
206
161
221
155
236
214
244
192
206
226
265
195
188
254
200
227
156
207
210
234
206
186
250
252
196
215
186
182
193
185
217
172
213
181
164
261
181
186
183
201
258
205
234
215
202
260
216
228
172
178
217
256
258
172
196
217
166
136
235
145
167
197
122
164
200
153
192
188
149
199
241
165
190
242
194
216
242
168
231
189
256
180
196
151
239
198
229
237
173
170
181
242
182
232
202
198
145
182
195
138
155
185
242
270
213
198
164
173
219
183
154
196
253
284
184
238
190
185
231
234
213
211
248
243
263
179
191
218
188
209
215
184
151
160
237
226
199
232
276
242
206
192
118
233
213
152
227
198
208
216
214
156
235
201
175
176
103
192
189
231
223
147
129
183
180
155
273
155
206
209
170
245
212
116
149
205
211
207
189
192
185
164
194
199
224
147
234
190
235
210
189
217
148
209
125
160
142
164
227
221
264
232
195
199
125
167
224
167
190
174
163
251
216
196
213
187
142
213
182
249
218
230
176
157
222
200
158
198
89
166
172
202
160
132
233
180
144
200
118
213
188
178
179
167
139
216
226
206
192
225
136
194
188
194
214
225
198
256
155
172
274
147
138
202
227
205
212
124
227
186
215
216
194
237
196
168
160
231
176
223
177
250
233
141
261
265
232
233
238
155
171
167
192
161
203
219
165
172
184
187
196
273
241
179
212
132
251
226
191
226
220
168
166
275
174
184
199
231
173
221
183
197
241
203
237
193
178
174
179
292
194
174
234
209
174
147
163
210
243
249
236
240
205
239
190
258
205
239
220
200
175
212
122
203
207
131
170
143
210
160
231
170
167
238
202
200
179
203
201
179
168
217
188
177
252
117
200
200
193
96
220
217
201
200
170
189
208
225
211
163
144
263
209
155
199
205
187
211
219
191
221
259
222
276
216
247
221
220
233
126
166
239
177
197
180
227
215
251
272
222
127
211
140
207
202
171
281
215
232
162
175
186
244
114
154
208
195
222
242
192
253
206
190
200
167
119
209
212
210
217
211
243
275
197
226
206
187
170
192
192
232
200
138
223
188
186
256
235
146
180
218
209
231
171
133
227
208
183
233
239
203
226
219
249
174
183
182
252
191
204
188
154
203
208
201
241
188
183
203
146
216
177
267
210
214
196
220
224
210
220
193
181
197
189
196
191
209
233
226
196
217
181
231
145
188
163
206
209
172
182
181
202
249
120
219
282
189
181
226
221
184
260
201
190
184
212
138
224
255
183
191
172
186
184
229
204
211
174
139
231
178
126
269
232
220
222
201
185
245
169
205
278
174
141
214
185
189
154
205
252
120
230
214
242
155
187
169
176
207
257
240
236
217
190
170
146
250
167
215
229
191
156
161
194
207
189
230
182
201
210
193
215
206
184
123
193
182
227
198
249
184
216
250
257
225
211
175
209
220
215
189
210
191
172
167
191
158
218
171
187
244
224
187
226
236
230
157
188
244
210
214
216
263
217
311
275
197
208
183
207
170
252
193
224
179
208
241
158
235
224
190
231
203
199
118
208
172
179
223
199
210
242
150
239
191
234
223
238
213
185
142
217
192
247
226
236
216
174
231
103
228
207
248
190
217
168
200
157
172
245
273
170
246
158
144
215
228
223
172
195
162
223
144
175
206
247
184
197
139
144
259
170
198
198
164
205
205
189
193
252
244
219
213
205
232
222
150
137
252
206
178
206
202
192
192
164
225
164
206
228
214
195
152
179
196
166
145
166
215
216
222
208
187
200
208
197
169
255
249
154
199
234
205
187
231
219
177
225
212
192
151
194
199
211
192
180
232
228
178
133
230
185
191
189
164
268
176
137
246
199
169
174
226
237
220
214
149
228
112
125
199
192
164
147
146
208
146
159
263
201
205
201
188
158
218
206
178
290
233
225
238
231
155
219
231
187
230
198
229
189
205
167
159
181
203
222
172
220
245
203
205
159
246
175
168
197
174
125
230
206
224
104
233
214
192
146
195
245
188
180
187
149
205
224
205
167
232
181
144
176
235
229
111
256
216
274
212
247
217
218
179
162
176
195
170
141
185
187
165
186
192
181
238
208
190
198
195
207
236
224
150
278
211
182
212
197
183
224
111
141
226
132
192
133
208
153
151
202
232
156
220
258
223
252
199
190
208
197
182
147
184
170
113
238
191
166
240
199
198
221
167
257
206
193
212
273
223
223
217
210
234
223
160
231
238
208
180
245
149
163
212
156
259
216
168
181
252
175
163
163
173
180
260
208
224
178
213
228
220
211
157
234
240
227
232
249
166
169
170
188
133
246
169
204
198
162
234
130
198
220
188
145
209
241
169
222
155
258
127
195
171
145
224
204
252
185
208
142
181
245
228
199
207
191
225
204
197
238
184
228
190
254
235
195
177
182
96
248
206
216
154
176
163
218
217
186
189
252
192
187
278
204
224
120
113
230
212
155
227
149
222
243
207
168
234
213
184
232
187
205
263
218
176
238
208
198
162
262
199
152
169
131
172
147
176
228
207
216
155
204
191
140
197
212
181
125
210
230
210
156
211
183
203
187
181
158
218
158
97
260
230
192
150
199
188
175
235
145
116
230
165
190
235
225
211
244
164
179
238
185
221
206
168
244
210
180
199
161
186
209
150
183
206
154
112
163
221
222
221
223
207
304
221
182
215
214
199
233
230
150
208
130
218
240
235
146
239
205
271
142
196
224
200
157
242
245
177
239
209
226
142
237
198
234
188
212
168
196
203
186
230
186
207
222
173
248
221
162
180
178
173
175
227
169
207
195
260
236
202
122
219
191
150
207
235
265
188
185
208
155
229
200
192
164
179
148
148
256
177
202
219
154
176
202
194
137
238
205
211
183
208
182
107
216
219
227
201
221
148
168
191
264
180
121
191
215
246
231
194
211
217
207
213
254
241
242
249
147
149
197
181
145
194
183
185
250
259
268
214
211
152
225
179
164
212
213
199
209
218
249
194
222
159
212
191
219
197
165
179
190
203
161
167
174
204
216
209
184
170
186
176
244
175
161
250
121
187
228
212
174
231
210
194
164
278
242
190
222
217
194
222
247
204
214
212
172
170
197
219
198
261
210
173
171
229
199
218
202
201
149
227
207
188
227
122
208
237
202
200
213
208
183
120
240
194
218
265
163
153
177
180
231
193
145
195
176
183
217
215
197
200
186
235
196
222
204
240
233
199
238
166
176
177
192
179
199
202
255
207
143
176
184
230
247
99
219
185
267
207
160
215
205
190
166
182
209
216
229
229
199
175
179
184
226
216
264
139
215
258
256
228
164
203
150
189
170
205
175
179
224
229
207
243
241
189
183
221
246
251
235
219
262
256
187
83
228
183
239
194
227
174
211
211
182
268
240
198
201
232
187
172
220
222
178
255
183
246
244
200
163
264
134
228
169
255
215
162
182
201
206
217
263
177
152
277
168
258
163
241
186
187
207
168
176
214
158
227
133
183
195
227
260
233
221
187
237
225
192
176
175
176
152
188
273
215
245
174
236
203
168
184
293
197
190
143
179
237
187
244
203
203
210
219
219
142
196
236
225
215
194
217
203
233
192
144
267
186
112
177
190
192
250
176
241
178
209
187
277
176
241
195
145
141
143
182
187
235
248
147
202
187
173
158
181
125
167
244
135
196
223
215
224
226
210
219
178
170
139
231
175
234
194
178
181
121
188
155
205
183
173
218
188
212
199
263
232
266
235
157
218
184
203
197
188
230
221
223
261
201
197
171
176
257
193
295
232
138
232
162
184
156
253
137
205
217
110
122
161
215
218
221
154
185
203
234
216
253
166
195
221
168
242
219
170
205
232
177
247
172
224
113
225
239
256
221
219
228
210
154
200
200
184
209
178
205
225
174
178
253
207
236
175
210
196
163
212
149
201
178
251
220
133
218
245
169
187
229
177
193
178
250
242
187
207
195
170
158
217
150
188
194
201
220
174
188
214
248
222
114
244
203
215
206
227
176
244
206
264
178
177
173
157
214
199
220
209
142
233
159
228
187
171
251
244
205
193
185
277
213
236
189
167
199
195
178
252
138
199
186
196
234
227
192
223
178
214
190
201
194
198
200
233
194
167
262
251
202
224
224
155
257
185
208
238
295
193
200
222
176
227
201
191
248
228
202
180
157
159
210
191
183
193
163
223
201
153
239
159
204
218
195
199
210
172
137
199
194
213
189
138
244
229
230
238
159
238
184
145
170
242
188
131
199
144
175
177
216
154
187
206
194
214
214
144
225
158
130
240
179
155
290
212
205
151
193
165
190
213
203
200
234
244
239
129
190
193
164
184
222
215
216
286
256
149
133
228
233
232
205
191
159
181
145
199
220
218
233
264
170
182
240
261
161
237
241
191
228
181
231
188
202
235
171
228
252
212
215
169
224
205
189
214
149
209
198
124
195
194
201
236
216
178
153
164
200
242
196
184
184
245
133
220
245
193
163
165
127
228
200
205
188
214
145
178
164
207
196
204
178
187
204
132
174
200
139
150
217
163
212
208
221
213
210
280
140
179
165
236
115
218
207
113
169
234
232
147
278
183
204
171
180
214
191
221
185
161
156
125
259
211
215
194
210
186
127
253
199
243
204
215
203
138
199
226
211
170
239
202
251
210
129
200
248
177
237
210
183
281
229
140
163
185
131
238
206
208
132
162
141
190
259
191
256
203
169
150
230
196
170
229
183
196
152
236
146
231
182
198
227
153
248
203
224
206
218
189
182
213
222
196
244
156
226
222
183
210
225
225
207
130
201
230
245
204
200
248
248
213
261
162
111
217
162
206
209
206
258
249
217
172
220
241
182
280
216
212
235
174
205
137
199
206
159
184
239
201
219
206
257
225
159
198
233
183
231
196
206
194
275
139
197
163
155
155
242
195
194
181
199
241
128
195
249
189
239
212
159
216
215
215
192
198
113
170
204
215
182
194
164
170
211
219
222
151
264
184
182
238
229
188
168
244
232
175
171
229
247
228
199
230
223
180
207
228
241
184
204
217
257
218
183
213
235
201
195
209
230
267
247
251
189
251
207
213
229
179
205
220
189
201
215
171
202
182
269
145
222
197
170
172
252
198
213
182
186
215
208
250
198
197
167
244
187
178
239
221
187
161
138
226
154
165
191
190
220
175
157
231
205
202
198
180
208
209
248
241
190
234
257
200
215
178
187
226
233
235
176
177
153
201
230
206
230
201
195
183
210
233
219
180
143
161
248
199
171
220
181
168
218
241
154
183
148
207
230
121
190
235
157
145
209
195
156
176
210
182
189
256
150
181
171
219
208
202
227
244
208
242
112
197
218
231
136
211
178
220
212
180
224
241
196
216
167
171
196
190
239
237
182
158
218
176
182
154
162
257
196
158
257
214
273
183
179
148
236
188
124
140
167
230
257
186
110
194
186
171
199
233
203
206
243
220
163
212
216
242
216
187
259
250
228
190
202
242
221
183
214
203
192
164
203
207
240
185
180
218
233
203
188
183
207
179
203
235
215
202
222
202
179
245
179
185
220
194
209
227
256
261
174
84
215
158
232
191
182
291
149
128
203
250
261
163
195
192
203
207
218
177
166
217
134
235
201
190
193
216
252
274
236
144
240
169
148
136
163
157
218
188
103
241
205
238
269
186
197
227
150
240
252
206
167
184
169
201
192
245
177
235
164
182
189
191
203
286
180
191
189
187
179
193
163
206
141
264
149
220
267
178
215
233
198
134
190
168
201
149
147
230
215
204
134
204
76
168
164
244
251
235
226
188
230
207
144
214
214
229
232
166
200
130
242
223
205
233
194
156
154
267
188
153
236
181
206
206
202
190
190
169
227
173
194
259
219
144
238
187
183
213
169
186
167
253
139
175
235
163
230
169
222
191
118
198
190
175
228
148
159
171
198
211
192
166
130
177
222
201
241
193
165
227
208
215
223
119
177
171
156
160
224
160
215
196
147
255
225
206
198
190
232
178
232
245
223
198
158
175
222
251
181
214
239
192
220
219
223
135
216
215
253
191
202
148
243
265
174
191
163
218
182
156
216
202
169
224
163
249
206
201
226
205
159
183
193
208
183
210
217
186
235
204
116
227
180
209
230
193
221
185
151
183
204
174
173
169
257
154
192
202
219
195
152
207
187
264
213
268
212
212
234
241
166
206
222
181
151
205
152
229
157
259
185
160
213
122
181
157
139
280
171
151
240
233
209
223
219
254
172
244
270
184
229
178
174
204
191
149
211
208
233
187
224
200
197
225
168
227
214
210
211
222
145
180
188
180
231
197
236
231
206
204
172
238
183
226
210
249
254
196
249
160
194
208
174
130
220
210
249
123
156
182
186
203
219
154
174
174
231
193
214
267
200
244
212
169
244
159
199
194
174
226
247
234
189
177
204
227
203
148
133
215
172
218
205
235
162
222
207
173
108
172
206
220
165
200
168
221
249
219
210
203
157
263
195
180
191
220
213
161
129
234
159
222
209
204
217
276
208
259
235
163
216
231
144
119
235
234
207
233
163
222
190
126
140
206
210
221
206
233
191
277
178
191
176
223
203
234
160
218
167
263
168
214
209
205
222
194
191
237
181
136
200
167
170
203
134
166
213
213
176
193
149
261
246
153
135
150
158
225
231
195
167
237
182
233
228
204
179
221
251
242
187
214
210
175
192
215
222
198
223
210
218
252
154
246
140
191
131
172
202
257
230
196
103
215
143
212
170
191
165
206
180
145
237
258
162
210
181
218
226
238
192
187
242
240
168
228
197
177
255
223
168
193
195
159
221
178
205
220
229
228
181
166
202
189
201
192
233
190
223
193
220
167
234
138
242
195
210
164
142
208
146
229
228
100
175
217
191
218
241
269
209
161
182
155
211
200
205
205
162
177
185
177
171
232
223
187
141
171
214
240
182
217
149
200
203
173
197
188
227
224
193
220
190
183
195
238
259
204
193
193
209
215
166
190
226
210
215
178
158
158
216
173
228
215
246
249
255
220
196
195
187
234
239
131
237
230
236
221
238
223
202
187
135
206
193
218
188
188
254
237
213
203
199
218
188
239
194
232
204
191
191
205
242
184
187
193
191
122
147
122
160
228
158
206
230
163
242
229
204
167
189
155
235
217
155
205
180
221
225
209
260
220
188
149
174
247
226
178
190
168
199
230
203
256
182
179
160
174
198
203
253
188
179
148
117
208
187
194
236
171
194
156
221
214
216
239
217
205
211
130
185
205
157
204
273
209
189
212
131
170
161
208
240
206
185
216
179
153
253
214
212
229
232
154
214
220
212
239
153
195
111
232
175
170
248
241
249
209
194
155
213
223
177
243
193
162
160
179
187
249
201
218
234
190
155
198
173
149
255
166
245
230
163
212
213
204
224
185
175
178
206
196
247
187
257
193
192
192
196
185
199
240
166
242
227
190
222
169
227
186
112
215
177
220
194
198
211
173
208
244
217
256
159
119
207
198
242
210
239
174
227
181
191
210
199
230
234
181
200
182
247
198
186
177
169
203
196
220
279
217
204
250
163
213
182
238
223
173
198
187
220
196
147
256
247
166
213
194
207
191
198
187
151
181
158
243
251
231
195
201
208
196
140
244
216
171
151
174
239
234
171
253
136
218
210
150
249
171
218
254
189
241
185
159
133
255
187
209
244
209
152
254
176
222
211
225
242
161
211
233
180
174
221
180
259
262
156
224
196
243
192
167
199
176
178
197
139
232
199
210
177
165
213
256
191
237
209
178
211
229
212
212
270
250
210
179
167
237
164
169
175
183
224
230
272
241
95
187
159
135
240
165
133
125
177
175
167
233
219
125
167
222
269
225
179
174
186
208
204
201
199
194
155
123
193
177
240
160
244
188
149
176
175
153
211
139
302
151
264
236
216
216
205
154
216
233
237
213
212
259
205
187
203
261
175
206
178
234
180
211
170
174
208
242
258
168
148
190
239
166
170
163
185
230
195
219
177
259
219
182
195
175
213
194
185
166
259
187
219
190
208
234
260
192
206
230
231
213
217
215
231
107
164
161
194
216
182
214
180
211
183
234
216
256
180
231
226
225
176
210
184
197
232
194
186
142
216
192
158
181
150
237
196
210
172
218
224
166
265
151
186
218
148
191
174
143
206
224
245
224
189
215
223
204
165
181
200
184
194
173
276
258
223
195
229
148
195
180
209
251
119
204
131
211
276
228
154
227
221
210
255
154
156
210
222
260
192
225
224
181
214
256
239
184
227
149
229
176
170
196
187
259
188
207
197
181
194
199
239
190
210
163
181
159
186
241
194
221
159
195
179
175
203
246
213
220
156
217
192
179
213
194
175
194
175
194
218
206
245
245
180
190
166
205
207
173
156
186
229
244
209
173
177
231
262
241
248
206
219
195
163
236
221
174
162
219
217
187
241
195
183
206
144
228
186
182
151
210
179
229
206
176
219
237
252
240
281
167
203
183
185
164
187
218
243
166
190
174
220
230
181
158
163
191
91
169
210
236
219
206
161
179
200
229
239
240
196
232
247
238
196
233
204
197
222
199
195
169
172
203
191
173
192
184
184
233
168
179
191
239
153
182
230
225
211
177
230
242
167
228
154
251
202
210
166
230
207
216
129
130
199
169
276
221
201
230
130
185
219
235
240
158
228
156
228
240
171
161
200
245
191
249
171
213
220
175
234
227
259
180
234
238
246
212
230
174
164
222
142
126
244
280
235
240
162
179
126
200
211
177
135
233
163
191
219
208
198
165
180
156
208
217
184
148
206
253
192
257
238
223
250
230
195
161
220
205
204
231
200
190
218
175
204
208
197
213
177
241
197
200
142
222
243
249
182
230
143
226
237
168
198
144
182
192
195
233
180
199
185
186
208
204
165
214
246
197
224
133
229
139
183
204
207
237
221
169
230
127
244
160
199
209
193
257
162
254
165
221
227
202
177
190
262
218
208
260
219
124
197
248
198
210
198
174
203
145
165
200
169
126
209
171
189
162
214
245
206
204
145
219
194
186
177
173
228
183
191
217
215
190
182
231
215
174
228
268
206
181
223
172
236
215
241
198
266
200
179
149
154
196
232
181
174
227
184
225
141
215
243
193
154
206
215
162
246
233
140
244
177
134
219
206
170
241
188
167
184
222
135
271
173
195
245
232
280
202
174
251
214
212
206
204
150
185
201
276
94
230
182
261
187
252
216
210
182
202
242
163
234
162
135
197
212
201
169
156
208
156
193
221
208
215
148
125
233
177
257
197
191
177
177
136
160
189
163
194
290
182
156
209
163
214
186
165
151
182
166
223
192
207
246
185
216
185
200
196
230
189
178
183
186
202
172
138
180
171
238
189
159
209
249
180
170
202
232
176
268
136
251
162
141
223
189
211
152
196
224
228
182
179
185
233
190
192
217
162
216
201
255
144
182
164
139
184
236
196
201
167
145
283
153
201
246
159
214
226
263
235
227
207
222
242
267
178
289
162
213
177
141
134
219
174
198
174
204
217
158
237
175
224
243
231
170
190
217
239
151
166
162
185
229
268
181
256
183
249
190
217
217
154
199
212
241
185
203
197
224
201
212
174
202
172
241
195
207
233
244
139
237
180
176
207
203
180
182
239
209
166
203
192
261
164
167
126
203
198
173
170
163
181
209
188
241
167
194
175
245
128
204
184
195
236
247
168
158
228
201
186
192
198
201
228
173
196
235
196
197
172
161
175
169
164
194
225
243
232
148
206
182
278
158
161
250
240
210
190
194
227
218
176
206
201
201
177
145
232
210
182
206
238
217
159
215
229
201
210
230
219
193
225
194
229
216
206
231
204
176
251
232
219
265
236
237
171
210
172
158
209
141
177
119
228
242
190
211
249
220
205
185
251
205
208
276
124
176
154
188
136
151
175
168
162
191
237
153
207
193
256
213
155
203
296
157
183
218
164
159
227
174
188
200
170
194
167
169
171
257
252
193
142
225
194
204
163
191
214
185
215
248
223
218
215
180
220
191
188
193
164
221
196
203
265
208
173
184
275
189
232
171
204
234
228
127
265
224
181
143
177
158
222
180
194
288
169
174
164
194
182
153
240
192
225
191
190
256
223
191
203
212
181
151
167
197
259
204
246
158
208
276
199
146
188
168
200
249
173
191
126
190
201
174
196
173
211
194
217
124
173
154
263
233
188
198
161
240
209
235
260
235
206
190
166
214
190
193
187
163
226
182
187
143
192
196
233
190
185
196
138
210
201
214
182
187
221
191
204
212
218
163
239
176
259
173
223
204
177
177
186
250
176
214
225
192
180
213
260
212
199
174
177
183
174
143
212
214
198
214
219
189
263
188
224
186
213
291
215
163
162
233
185
241
186
225
167
201
196
165
153
234
157
185
213
224
207
180
195
192
221
202
207
164
233
252
212
141
209
116
195
182
168
249
214
211
216
212
251
207
200
218
232
154
185
227
175
261
215
197
220
223
192
260
194
269
217
203
169
197
204
193
254
126
198
137
204
201
201
189
232
140
223
209
211
153
211
231
238
214
235
165
154
264
176
205
190
199
216
219
144
190
256
197
190
181
168
174
179
211
236
199
240
201
222
168
236
202
160
155
114
270
223
217
233
212
199
148
243
157
214
158
210
224
236
167
160
211
186
210
216
197
185
218
184
175
244
212
202
233
209
173
136
156
224
213
215
214
213
231
218
222
167
197
187
165
236
176
222
193
207
214
222
185
217
191
135
273
176
219
247
170
170
157
185
129
212
194
185
200
211
255
172
229
141
248
151
178
194
189
177
211
249
149
195
190
235
196
202
241
254
111
204
269
208
179
193
239
177
170
174
215
191
230
227
222
154
199
176
168
262
172
270
219
192
169
207
185
241
215
186
168
160
205
140
232
191
243
212
215
255
207
203
182
197
187
241
263
229
216
165
202
215
202
201
142
224
202
201
229
191
188
241
221
199
162
156
193
227
175
261
132
182
216
187
206
192
240
206
201
232
147
196
235
206
213
233
229
207
194
226
139
182
173
201
216
210
180
248
221
201
219
202
243
168
187
168
196
243
207
173
193
226
140
227
267
190
186
221
210
214
160
195
209
160
213
214
243
165
201
204
164
248
200
200
253
176
141
246
184
163
199
229
220
246
157
183
226
154
161
207
140
210
230
210
244
223
219
174
186
146
225
170
167
189
161
228
123
238
181
227
136
191
280
217
201
263
179
194
218
197
228
201
223
221
208
202
197
223
215
162
154
192
237
135
241
202
196
198
207
135
202
181
231
185
169
213
206
180
266
161
175
275
204
155
198
266
143
190
254
208
230
178
181
213
164
180
171
241
225
196
173
165
192
228
236
144
209
211
159
267
218
165
193
217
135
226
215
246
217
269
196
237
173
233
259
199
222
185
212
236
126
165
189
241
197
216
180
218
185
202
177
160
245
238
195
196
176
217
203
210
216
256
179
206
140
225
238
156
164
194
170
202
200
206
234
242
169
221
254
124
138
225
240
173
222
240
231
231
176
197
204
184
265
169
199
158
167
171
161
185
204
172
213
190
211
220
222
182
254
183
169
176
212
164
221
145
173
167
189
218
189
197
265
256
148
175
237
222
242
171
168
224
212
156
254
185
247
186
215
217
190
222
191
168
208
217
218
168
158
197
272
145
224
210
197
200
162
153
182
227
219
180
180
200
194
256
246
188
236
232
201
216
233
168
239
191
182
205
213
163
239
189
131
179
173
205
238
175
197
181
218
229
223
250
222
165
165
218
164
143
197
227
164
210
188
180
184
202
251
165
189
208
184
195
166
197
230
176
233
152
203
151
230
181
173
193
217
254
189
162
229
161
166
216
263
209
185
169
185
189
211
164
199
229
144
182
183
176
260
152
152
258
269
236
192
211
212
186
190
200
220
223
182
238
218
198
187
174
199
204
231
278
261
204
175
159
246
154
202
162
186
148
255
165
199
199
177
222
220
173
227
162
209
233
266
193
170
163
240
183
223
196
160
135
184
174
195
203
149
176
184
236
130
175
229
247
199
116
190
251
165
174
166
225
183
205
176
166
204
112
147
177
212
223
202
164
240
206
229
186
201
177
225
253
270
154
206
118
214
158
234
224
199
192
267
261
187
219
215
149
224
178
186
122
182
204
215
216
226
159
240
183
175
201
195
159
221
210
214
198
132
182
251
268
244
181
201
250
215
213
160
235
158
183
185
229
191
213
252
236
249
231
247
198
185
196
193
242
235
224
214
180
241
217
176
212
156
217
220
230
176
162
137
196
150
216
134
244
185
211
183
207
173
201
192
184
201
164
230
171
194
223
167
182
209
144
226
201
227
211
176
145
223
211
184
221
202
202
234
226
205
220
219
229
191
212
227
166
181
239
246
188
275
228
132
155
194
176
232
178
216
180
276
229
207
213
160
184
231
263
161
190
186
237
224
240
259
208
158
189
205
238
207
198
228
233
153
189
229
160
170
165
256
149
182
234
168
197
177
192
216
200
111
242
159
171
176
199
203
170
217
207
249
147
142
142
183
241
173
120
208
195
210
160
232
173
170
157
246
227
191
219
197
225
158
207
173
301
188
206
204
228
168
193
172
251
177
243
222
205
200
160
213
161
256
283
198
183
214
185
117
233
232
154
183
189
177
272
219
149
197
200
204
213
232
217
251
182
142
224
193
269
137
240
202
163
207
213
191
169
171
168
167
134
173
208
222
221
185
152
186
146
238
140
181
196
225
224
240
191
222
155
221
159
196
192
211
167
184
230
238
210
175
171
154
177
219
221
224
202
188
195
212
217
209
137
179
230
205
166
207
189
180
219
205
201
165
261
213
247
178
179
200
161
162
193
235
204
166
205
241
186
256
235
168
206
213
150
173
153
189
170
239
121
192
222
177
242
217
192
164
145
235
230
246
226
201
219
114
182
250
224
167
143
202
233
159
173
235
200
186
246
162
253
174
138
231
224
143
159
208
208
234
204
223
247
204
247
203
214
189
158
185
236
220
198
213
170
202
135
171
233
250
189
171
159
210
168
155
253
237
231
234
148
155
140
140
194
199
211
227
192
210
178
252
196
227
196
162
213
167
199
129
145
129
238
196
187
241
190
233
209
206
161
154
260
158
264
205
203
169
200
154
204
251
213
242
186
155
150
234
267
158
165
170
188
230
175
177
230
168
225
214
178
192
206
221
148
180
255
174
188
229
157
187
141
217
120
217
204
143
206
133
209
237
213
155
230
163
214
203
227
277
174
206
184
222
224
193
210
183
177
165
224
201
208
187
165
214
231
189
200
217
225
160
183
186
182
168
200
227
226
219
215
203
182
197
262
204
187
138
226
202
200
222
196
206
203
184
231
233
169
202
217
158
235
156
166
246
202
188
218
158
206
238
225
201
198
200
234
163
158
189
227
288
196
218
162
208
155
266
183
242
191
209
169
231
199
241
145
181
174
204
169
173
189
221
223
203
256
209
244
158
265
151
204
246
169
232
184
246
208
221
183
165
255
175
177
188
128
252
226
176
149
209
157
202
207
189
174
152
221
224
235
251
238
236
173
213
229
227
195
187
193
209
192
165
224
231
190
242
241
176
242
191
157
204
174
164
238
157
241
225
176
227
174
202
246
156
257
184
238
270
199
192
157
239
195
214
218
231
169
209
206
208
193
166
261
216
209
233
222
150
162
279
153
213
175
179
225
175
238
259
247
245
172
176
201
177
206
164
216
236
191
221
228
172
173
238
243
192
253
205
166
181
248
145
242
240
219
234
282
195
214
161
144
205
210
238
246
221
219
216
200
246
147
142
175
219
229
169
171
182
170
140
227
181
228
224
200
164
190
186
173
213
176
150
192
210
148
215
164
185
195
164
179
194
213
197
194
222
185
163
206
240
214
164
218
229
189
185
200
163
214
176
237
211
170
212
162
180
215
127
225
142
231
173
207
217
171
243
175
208
157
221
231
241
192
211
152
163
220
206
188
184
171
222
209
209
170
179
200
185
235
187
237
269
185
191
159
242
190
247
216
191
164
183
255
184
208
194
198
206
163
196
250
216
130
202
242
216
205
194
221
174
176
201
147
245
154
277
177
204
187
197
159
207
219
227
218
230
206
138
248
198
255
236
191
197
209
185
221
169
207
202
169
155
212
173
212
184
213
245
221
239
271
215
181
181
261
210
147
222
176
191
252
221
205
201
210
220
159
199
204
192
210
251
190
195
136
149
219
160
145
181
280
209
128
183
250
138
176
234
221
205
248
230
204
209
147
121
251
219
239
206
155
203
225
151
202
238
214
228
238
185
187
192
193
177
193
193
246
198
165
195
196
147
243
211
219
169
221
213
148
259
173
261
222
244
175
207
165
207
219
211
191
179
195
192
217
193
238
200
223
174
193
246
223
201
183
195
241
190
193
236
166
185
242
148
217
181
166
195
223
263
227
218
201
245
208
195
211
235
281
223
143
215
234
255
192
200
187
192
184
225
182
165
191
192
118
200
119
218
183
195
160
250
156
208
267
192
180
184
140
256
181
178
186
165
220
267
200
190
234
211
248
255
218
128
193
170
256
222
146
184
239
220
193
224
258
183
185
207
168
210
226
206
220
215
208
207
248
208
158
195
240
244
277
159
256
169
165
220
205
182
190
256
160
198
166
204
228
212
255
235
228
218
229
168
139
131
204
186
94
212
245
230
204
236
155
225
224
246
182
178
172
173
165
195
267
245
116
175
254
288
201
133
233
259
208
231
244
223
173
206
197
208
245
240
214
211
167
184
214
193
200
224
225
204
196
212
175
187
201
224
203
180
235
248
190
193
183
241
224
163
202
265
238
249
214
115
228
215
194
158
251
197
159
183
241
171
244
241
152
216
195
213
200
244
200
185
133
215
218
245
152
190
174
130
209
158
148
190
137
203
231
173
257
195
215
171
225
179
181
200
196
171
224
211
176
158
183
190
190
242
188
189
210
219
242
189
212
228
209
188
201
173
235
213
202
156
257
226
168
261
157
222
212
217
178
181
224
259
233
197
199
247
240
196
153
219
225
208
221
187
216
211
176
134
191
185
189
256
224
193
220
236
169
168
226
197
208
191
157
262
236
185
198
188
185
209
166
161
188
199
241
225
244
164
269
190
155
182
204
196
242
163
198
172
204
226
223
209
211
277
200
205
176
186
188
244
158
201
222
258
165
133
148
213
231
238
154
191
241
174
174
242
238
179
263
170
260
178
200
185
180
208
171
222
181
222
251
241
179
206
209
246
194
229
265
212
181
225
142
188
188
204
235
197
217
197
105
211
182
180
195
206
199
214
237
263
182
236
218
227
168
186
197
193
187
220
141
125
198
235
232
239
196
210
195
133
134
199
209
130
218
255
227
226
174
235
173
228
175
180
187
206
224
194
210
205
204
227
218
204
213
234
207
221
203
168
121
192
217
239
202
180
152
274
190
220
220
215
164
216
171
230
247
149
252
197
202
192
164
226
205
173
104
148
184
156
201
203
182
129
204
257
196
158
212
250
151
203
190
165
199
171
204
199
169
185
249
142
237
215
196
219
225
201
229
188
202
144
204
200
181
233
207
200
184
155
166
202
192
173
212
200
191
159
188
237
229
200
213
273
179
216
216
127
233
170
179
224
207
262
171
124
143
188
203
225
151
218
180
216
229
213
192
168
236
204
160
239
256
227
240
210
170
233
168
202
207
181
234
227
180
164
213
185
236
254
213
277
223
196
232
246
173
201
193
163
173
197
193
261
235
171
158
207
211
226
163
201
212
180
127
198
219
125
119
234
259
220
156
167
161
137
144
183
205
253
181
237
255
200
225
175
271
214
239
176
238
182
192
194
252
147
141
240
204
190
108
278
241
108
177
190
223
234
214
160
141
148
175
182
210
166
272
221
178
196
158
175
156
217
232
180
211
241
193
247
233
233
220
266
218
225
252
271
219
288
233
193
136
235
233
197
128
163
234
167
170
233
144
142
231
150
199
218
270
182
302
232
216
208
156
239
154
207
208
182
215
214
185
235
183
248
167
199
249
195
214
185
211
212
204
256
212
210
231
243
193
260
210
142
141
185
164
178
232
198
174
209
222
179
250
203
219
197
175
208
174
162
137
157
218
232
175
202
158
230
123
181
202
183
237
122
182
262
228
203
163
187
206
190
220
240
203
90
181
216
217
228
238
169
223
201
204
178
168
210
217
114
155
229
158
202
244
243
153
202
239
216
257
194
222
197
227
175
171
227
177
194
171
257
195
229
217
200
178
201
251
187
188
206
230
232
218
216
187
212
225
217
230
157
168
153
239
231
157
173
194
172
226
190
233
172
185
264
193
208
224
217
214
184
191
188
178
176
243
257
205
192
264
193
174
134
147
213
241
171
248
179
238
191
199
196
150
196
187
206
259
202
172
257
201
182
152
204
130
196
237
278
172
211
179
170
243
208
207
224
191
231
226
221
156
209
172
197
181
246
208
275
215
183
184
155
188
219
207
226
262
169
215
255
238
171
242
183
218
220
146
148
249
223
214
210
157
227
254
263
202
214
216
180
269
263
216
198
202
220
228
194
263
169
150
209
215
215
184
238
225
258
201
202
154
211
193
146
216
164
170
193
209
189
207
248
198
205
213
156
163
229
198
231
150
204
220
149
196
167
218
157
195
187
213
191
176
152
222
223
164
273
200
241
208
164
199
198
244
198
219
220
235
201
200
233
232
213
217
197
165
179
149
122
241
253
183
250
209
251
157
196
201
145
169
225
247
224
228
170
199
237
242
165
230
196
159
208
233
215
174
273
190
229
209
232
156
168
212
197
198
212
252
236
270
197
221
146
184
201
216
177
200
156
246
168
268
230
175
231
155
153
196
205
161
148
241
240
258
208
266
227
212
205
246
211
189
216
184
173
180
212
284
167
230
185
199
187
199
213
233
222
181
194
226
169
182
179
196
205
173
212
211
200
191
123
191
196
207
244
158
245
238
155
152
228
150
219
169
201
220
163
162
199
189
231
239
231
252
148
229
182
214
134
145
211
197
246
219
189
186
172
205
188
223
120
186
218
213
161
207
255
228
246
189
172
199
175
222
204
228
194
213
197
161
246
161
256
149
176
196
184
125
156
234
210
257
200
166
199
182
190
160
229
215
152
197
258
236
244
206
258
146
194
176
108
180
256
155
201
301
193
255
223
276
249
219
219
211
195
212
178
237
264
198
222
178
208
164
147
150
211
259
175
226
216
230
218
237
229
193
181
191
181
241
183
180
187
213
186
229
188
214
206
236
189
190
174
153
238
188
237
210
244
238
172
160
216
240
199
167
189
198
174
182
221
182
189
209
193
213
212
231
182
262
155
188
213
223
199
272
219
233
174
218
158
200
164
241
149
136
183
240
176
257
173
226
232
232
256
219
210
199
183
235
153
225
153
185
179
188
209
259
190
173
216
211
188
199
190
208
166
231
135
257
184
221
217
187
185
137
184
152
221
263
234
254
188
209
211
211
212
160
188
199
198
180
215
181
214
160
208
181
212
183
301
214
199
208
244
292
204
197
150
215
197
148
185
153
197
181
201
163
249
202
231
210
191
152
129
149
215
232
218
234
222
215
210
166
223
243
258
186
228
134
184
181
223
197
254
176
241
124
209
237
247
178
153
199
183
131
200
199
236
265
210
168
238
181
185
175
224
207
164
254
185
227
171
188
199
258
230
203
229
214
234
146
186
210
227
142
163
256
148
223
198
228
140
239
181
223
200
220
176
196
211
197
175
164
253
185
223
265
238
204
155
185
185
241
150
175
167
252
179
192
184
227
114
212
206
228
156
150
201
222
176
211
186
206
168
204
161
218
156
271
248
260
217
210
208
196
206
234
195
187
214
198
206
186
193
213
240
242
163
160
176
195
194
233
173
217
158
173
200
206
156
235
202
178
197
160
145
143
178
186
214
160
176
262
189
205
160
243
160
186
185
215
221
182
202
228
176
236
213
176
180
240
243
183
260
127
205
125
113
246
256
200
154
233
232
200
200
216
223
162
245
198
176
233
183
168
181
235
249
163
159
201
234
174
182
222
243
258
206
225
221
188
219
247
195
173
155
235
206
266
145
162
203
175
259
168
216
197
188
161
207
241
143
185
239
228
203
180
239
160
224
175
252
213
162
226
204
241
219
186
228
208
224
215
250
264
143
194
231
224
200
194
157
218
251
246
209
203
217
179
235
254
179
236
239
239
188
184
238
178
190
170
179
264
162
237
216
198
217
219
192
154
200
226
247
208
154
222
212
238
215
133
254
252
155
265
224
221
224
240
252
239
113
152
196
167
211
241
241
177
161
181
167
195
182
235
175
188
125
149
184
285
223
228
203
189
191
174
182
190
213
250
246
261
193
267
153
214
184
245
202
194
176
187
208
214
196
169
156
186
238
230
225
194
219
152
210
258
265
195
165
214
200
218
218
174
168
235
224
215
210
185
241
251
210
194
177
194
162
210
219
220
139
190
243
183
166
140
198
154
240
186
220
193
176
160
227
208
186
191
183
213
125
151
209
191
190
185
258
196
200
128
175
161
172
154
140
237
252
226
187
251
233
257
227
142
184
207
204
212
211
256
221
190
210
186
249
170
195
159
194
217
194
186
220
244
185
195
217
177
228
174
172
195
213
178
214
204
198
204
184
180
195
247
167
234
193
228
139
213
196
248
148
237
209
227
233
160
240
263
192
236
201
172
152
225
221
218
224
151
235
216
217
284
165
194
132
214
186
168
195
200
166
204
213
193
212
226
218
196
201
212
199
211
190
176
186
176
202
133
236
182
228
253
201
199
203
221
218
192
208
134
218
179
168
197
233
217
157
210
225
154
165
278
199
184
194
160
183
243
187
195
245
182
243
172
241
235
213
144
256
179
184
206
179
208
207
210
191
194
193
217
232
222
237
201
198
234
205
203
226
248
252
167
176
196
222
156
198
216
120
207
158
202
245
207
209
215
193
163
217
158
172
172
181
233
194
259
211
154
179
149
218
213
232
232
179
201
196
259
237
208
243
138
193
154
210
277
160
223
211
194
173
256
216
201
211
213
182
119
109
209
203
211
168
234
148
144
167
235
196
223
204
285
253
237
237
165
213
156
182
217
192
238
163
176
202
131
217
209
208
246
153
181
208
207
213
187
170
289
157
162
110
129
254
212
182
240
164
235
177
195
160
221
170
148
157
226
177
229
220
224
245
215
174
161
238
257
188
232
230
197
168
175
158
170
227
206
195
226
123
187
193
193
234
216
205
164
217
151
178
164
227
139
213
216
203
237
193
208
210
246
185
244
226
177
266
213
213
144
182
210
175
175
232
165
163
201
223
203
156
198
217
201
154
198
192
211
194
220
165
177
191
212
144
197
219
189
192
208
242
254
226
247
180
227
235
228
171
216
212
206
236
173
133
201
218
224
193
255
194
235
223
198
214
153
158
176
191
210
227
191
228
219
174
182
160
231
208
207
161
173
200
236
226
253
208
184
191
206
212
189
204
219
203
246
242
160
206
206
211
233
214
228
169
197
179
218
232
223
183
231
217
246
218
198
162
207
220
262
186
265
191
174
205
159
202
139
225
216
182
215
164
211
206
182
123
264
243
260
168
202
149
192
277
233
230
209
274
223
200
262
185
263
192
227
212
164
231
227
254
194
200
176
216
187
197
161
149
188
209
223
141
209
215
218
222
245
199
193
239
227
146
258
200
220
231
205
188
227
249
246
173
231
206
231
223
238
190
230
259
209
204
144
208
182
154
187
237
173
202
224
186
242
163
187
254
183
233
207
195
231
210
227
173
159
169
191
230
188
176
182
156
206
210
215
219
191
198
164
233
187
172
185
157
245
189
137
179
188
241
207
205
163
188
194
193
180
205
214
217
223
245
119
244
211
178
188
242
219
190
212
210
229
204
239
180
227
185
139
228
182
135
242
130
234
231
200
199
171
188
211
238
220
221
154
222
221
254
186
249
211
186
218
188
193
236
202
192
197
182
290
244
209
176
161
210
223
183
167
202
227
174
234
196
207
152
192
212
157
219
198
214
187
185
175
200
182
200
205
141
225
205
89
153
208
227
195
160
201
222
240
196
169
173
200
175
214
249
206
256
242
250
244
193
231
166
162
181
207
271
215
184
193
204
258
234
174
180
162
215
147
264
165
213
217
192
177
197
194
216
225
227
208
180
213
215
216
215
190
207
169
252
184
195
182
206
216
237
180
294
168
245
208
162
168
218
197
165
185
158
160
150
139
162
226
190
237
190
209
272
232
193
148
245
183
220
178
178
263
199
194
249
155
172
240
202
247
125
237
204
194
162
199
177
215
178
208
206
194
290
213
268
202
205
250
190
176
236
203
166
197
205
247
213
117
228
176
224
210
219
197
211
307
228
179
142
172
220
213
231
261
172
204
246
199
200
253
215
200
133
231
185
171
206
184
241
191
215
168
217
171
188
196
285
215
231
269
148
229
191
159
186
204
210
220
237
185
139
258
200
222
212
218
212
217
200
265
200
176
188
204
175
164
167
208
153
176
225
151
197
217
191
200
240
212
171
182
229
179
195
234
175
210
228
192
212
218
145
184
281
173
202
183
178
182
217
244
203
158
221
257
138
213
206
191
181
173
156
193
234
269
238
216
235
187
231
195
154
152
240
190
175
259
189
218
216
116
135
220
153
226
206
225
164
148
222
194
200
197
240
213
161
201
272
228
203
223
178
169
175
181
146
186
181
170
151
164
241
201
152
207
207
254
204
203
183
233
190
189
169
186
189
204
186
256
217
120
169
195
170
219
200
181
248
301
195
208
158
193
219
168
227
244
156
178
166
289
246
207
224
191
160
144
256
208
215
217
201
190
237
220
187
185
202
168
196
262
157
241
189
196
250
153
301
186
177
139
207
278
209
181
164
173
193
173
224
213
255
215
189
143
216
193
179
218
207
240
143
204
115
209
234
147
219
219
226
178
185
159
205
200
219
240
229
178
224
216
214
194
182
219
207
178
154
194
222
239
191
197
213
241
213
182
227
203
244
172
199
255
133
263
116
193
161
181
214
174
116
156
174
166
177
127
201
203
203
151
126
200
244
201
153
177
252
198
221
159
257
135
153
186
137
205
246
230
235
190
157
183
161
219
248
192
202
183
203
201
242
161
246
170
207
188
155
176
181
170
195
162
176
202
264
177
227
169
95
238
244
199
204
216
179
210
228
207
179
112
227
211
213
179
197
173
139
177
248
166
156
206
230
196
174
231
198
169
255
219
196
233
194
210
195
211
177
179
193
208
203
248
189
238
152
203
172
207
173
212
185
193
184
206
131
175
199
232
189
184
227
214
112
154
210
212
199
168
233
168
221
198
234
192
192
208
146
179
174
179
230
152
206
183
188
214
213
153
227
220
180
168
246
196
145
213
166
230
165
164
212
216
285
145
244
203
219
154
203
213
206
236
139
216
176
168
171
161
151
234
157
212
223
173
162
198
193
213
174
204
189
146
213
223
187
147
204
209
149
260
179
233
261
221
248
219
224
187
221
212
208
221
222
207
250
234
183
174
161
212
188
254
129
135
267
189
185
202
236
207
223
281
232
126
227
235
154
203
191
207
216
234
218
246
165
162
196
191
207
208
242
160
177
260
229
205
190
259
109
235
188
205
213
236
165
207
178
208
219
158
227
186
197
223
155
188
236
170
147
176
187
185
196
262
135
203
155
227
253
161
214
170
206
250
176
197
206
123
207
161
134
181
189
238
232
163
167
199
244
216
192
287
177
150
165
225
258
145
152
197
146
216
182
233
248
230
231
159
189
164
161
188
244
244
174
251
149
216
105
169
131
257
203
246
221
234
193
191
236
185
162
216
244
214
188
266
175
160
175
135
185
184
274
226
258
175
201
234
201
138
143
237
228
190
139
197
220
252
240
180
220
203
150
232
242
196
157
148
225
160
175
252
243
159
156
207
165
217
197
144
257
281
163
138
217
241
210
189
207
253
210
207
217
220
172
218
195
199
170
227
174
186
172
208
148
190
186
226
219
191
148
186
241
213
142
217
201
252
197
241
206
152
198
260
211
252
212
211
234
222
166
176
270
198
164
219
221
230
226
159
190
202
200
186
247
163
216
250
222
150
195
185
232
175
251
187
202
237
163
194
187
157
234
213
128
193
197
198
181
196
215
226
180
220
201
183
213
194
207
205
199
200
166
138
255
158
211
219
141
170
177
211
230
199
181
275
141
136
160
297
171
225
178
262
153
269
244
167
165
214
212
241
289
219
153
195
198
183
181
206
205
170
279
93
187
173
177
172
212
145
164
253
242
249
211
231
182
214
149
191
186
196
202
190
113
159
173
164
201
250
160
251
226
199
231
196
190
186
204
209
245
209
211
164
201
183
208
213
231
255
152
207
229
188
179
273
200
193
163
171
223
227
141
156
188
243
215
169
181
220
179
236
220
126
194
238
212
245
187
191
205
166
159
208
221
243
155
145
195
167
185
195
187
291
239
152
172
187
194
239
128
209
176
214
177
207
206
227
215
216
240
194
227
198
194
184
166
215
274
221
144
208
220
173
188
220
169
175
162
207
201
208
215
225
211
184
191
197
157
193
194
191
225
180
143
262
186
173
229
238
212
144
224
239
227
212
194
207
203
170
215
228
163
205
170
223
188
205
198
183
219
228
244
205
179
211
192
237
223
188
210
256
162
253
221
190
177
259
283
252
193
250
240
248
266
172
212
252
230
206
224
190
204
193
124
169
237
184
256
195
129
144
258
123
169
185
179
174
201
245
215
234
255
195
253
208
204
229
203
200
231
201
244
172
207
181
226
187
237
245
204
214
266
166
174
124
170
221
219
153
219
180
198
200
232
193
176
258
159
181
188
197
214
236
211
221
178
228
216
183
182
126
192
168
148
216
176
194
244
223
257
238
178
172
187
203
239
179
211
146
147
156
193
199
241
146
162
214
201
180
160
207
159
203
227
129
177
108
251
234
206
159
142
238
199
185
175
192
206
212
244
251
208
113
138
210
243
204
277
253
166
140
176
158
218
252
199
224
270
217
198
128
249
155
214
145
203
183
267
190
231
274
264
189
212
182
167
173
227
216
256
239
208
240
225
175
280
232
181
196
212
165
220
151
237
230
155
142
147
228
222
211
214
223
199
157
215
168
182
156
237
199
142
228
185
226
172
184
223
133
177
158
211
149
159
177
101
158
163
190
195
136
215
204
247
203
211
211
193
218
180
163
216
126
230
217
219
177
183
147
232
198
153
169
228
206
218
200
280
249
230
158
194
165
221
209
214
219
224
138
186
205
209
262
173
239
196
164
197
172
227
174
194
224
243
145
207
237
194
173
238
212
196
187
166
251
218
158
182
217
185
195
160
229
242
189
253
198
195
193
170
156
216
163
164
160
173
209
216
134
207
272
173
231
220
187
216
210
245
162
206
184
204
161
246
234
208
266
191
211
220
233
166
167
220
160
190
203
218
161
168
215
235
234
163
151
186
193
195
199
161
214
177
238
245
205
218
133
193
172
128
197
200
182
195
185
242
179
177
177
174
177
191
225
201
149
219
242
221
163
228
247
212
216
144
225
202
174
208
214
171
178
218
215
179
203
161
209
155
146
200
226
219
234
190
161
240
213
191
212
241
170
228
166
166
217
146
191
229
204
208
223
135
124
185
242
202
258
209
87
211
244
168
237
158
103
224
252
245
227
262
213
173
242
180
224
232
226
251
239
175
188
203
162
185
175
173
166
240
195
199
172
200
205
170
217
202
222
168
207
206
157
204
186
148
214
183
208
194
205
201
196
233
146
196
163
195
254
196
211
202
134
212
220
183
207
234
177
188
246
219
195
173
141
200
167
219
230
199
192
207
180
239
163
158
190
126
194
180
232
173
258
190
154
158
184
239
196
97
261
187
241
203
161
151
252
237
172
206
232
221
239
189
185
190
155
188
143
187
235
229
213
182
196
153
178
130
162
189
258
193
182
182
205
192
186
173
186
199
236
187
218
172
208
111
285
216
205
223
186
270
208
168
255
248
179
214
211
200
234
155
173
228
197
215
227
225
185
238
224
208
232
213
139
148
177
247
183
178
171
194
215
155
201
271
219
132
222
198
191
245
153
136
124
165
153
242
246
194
213
123
175
207
163
161
258
202
227
193
232
220
241
163
236
148
176
219
195
224
189
246
150
194
205
137
221
167
207
200
215
190
194
241
195
156
151
214
170
218
181
208
264
180
198
139
255
112
193
210
223
178
220
238
154
225
216
129
223
193
230
222
158
164
222
171
124
226
133
177
185
225
169
155
184
233
218
206
175
206
236
163
190
160
231
200
151
227
168
193
182
188
170
227
184
237
243
211
221
236
265
200
301
166
203
226
164
213
228
172
260
250
231
196
251
160
273
202
203
273
202
193
184
160
116
180
234
251
250
179
194
167
195
156
204
286
132
164
238
210
184
133
160
224
150
252
160
131
203
239
220
262
214
224
134
216
243
162
177
241
199
218
187
184
156
216
164
160
213
200
223
236
187
229
143
159
227
188
208
280
148
209
262
214
201
183
191
121
225
199
128
249
223
214
160
182
260
272
198
166
221
218
190
155
213
205
192
166
185
235
181
158
173
164
215
147
193
183
204
139
174
219
182
178
149
227
152
143
144
207
198
219
159
235
199
147
223
186
202
215
210
237
165
260
228
209
158
216
184
263
153
295
143
187
126
211
238
237
197
133
262
145
187
286
187
228
258
187
202
145
247
220
209
165
241
176
245
179
154
239
194
232
215
180
212
200
222
225
188
216
259
237
175
235
194
197
213
176
154
164
158
247
237
224
151
126
276
137
285
229
161
192
215
164
199
181
223
172
241
255
193
224
233
162
160
225
213
204
229
208
148
190
220
216
205
186
130
237
201
149
191
245
163
208
220
220
224
162
219
156
197
128
246
121
226
247
218
164
218
186
138
197
174
167
220
200
196
186
257
179
202
236
217
199
189
178
189
136
220
174
228
217
155
243
217
236
218
181
171
141
180
210
229
226
219
213
207
183
190
180
252
181
217
214
190
163
185
260
230
193
165
214
229
215
207
216
199
180
194
241
192
215
229
242
183
209
235
237
172
194
217
181
229
234
171
184
170
286
226
252
238
243
267
242
243
201
201
201
160
231
262
210
115
217
150
156
238
175
160
220
181
230
265
190
160
232
207
248
208
197
215
167
235
200
229
243
154
173
258
218
200
185
188
203
172
171
219
207
190
159
187
214
280
206
189
255
206
162
213
213
238
261
180
193
245
231
164
153
248
141
256
176
167
230
210
159
164
188
212
228
219
196
167
151
211
176
235
243
219
194
194
195
214
245
259
216
213
228
188
234
114
202
221
229
238
223
247
186
257
226
194
121
175
228
216
190
245
221
176
187
144
249
238
187
180
175
185
204
229
236
202
197
207
161
198
200
186
193
222
216
209
176
228
204
218
210
182
222
181
233
176
214
158
211
200
198
201
251
211
179
214
238
225
218
254
191
233
215
112
181
162
216
202
213
260
235
206
250
216
218
150
259
141
149
190
132
157
194
192
205
222
188
180
138
218
204
246
244
222
173
159
165
241
247
188
234
196
201
181
130
180
202
182
172
205
217
215
118
200
212
156
207
205
226
192
201
241
165
96
230
183
187
216
149
136
222
184
158
167
221
252
198
138
233
269
172
186
262
253
254
208
213
178
189
201
240
245
222
210
185
211
232
137
237
195
211
123
153
149
184
234
179
206
268
212
198
148
221
172
247
173
199
181
177
166
212
144
239
185
224
239
211
160
241
204
157
129
212
234
209
211
127
246
164
262
208
209
226
154
230
207
163
261
182
229
190
196
205
219
213
176
220
195
163
248
267
222
208
202
215
279
227
238
197
234
213
208
245
192
201
172
152
176
212
178
219
227
207
223
159
205
215
191
137
174
210
204
198
238
169
160
217
217
200
189
160
202
167
206
131
208
176
197
212
96
191
179
221
190
242
135
224
215
251
270
200
162
268
165
237
147
168
227
213
189
197
214
138
151
215
231
181
66
148
188
191
236
181
216
213
199
203
200
133
204
190
196
234
201
197
243
174
174
169
166
172
153
232
253
153
170
254
163
165
237
236
218
211
221
214
245
192
153
202
127
182
180
182
225
193
234
273
218
231
243
193
243
244
161
239
201
225
209
251
184
220
181
160
192
186
179
168
186
147
179
161
227
196
129
253
113
188
250
183
247
208
174
235
185
253
226
228
180
254
279
226
145
160
172
170
197
240
195
179
188
162
164
182
185
243
160
193
192
172
250
192
133
182
230
227
192
252
187
171
243
197
198
214
229
157
197
171
229
224
209
223
205
235
205
201
185
165
199
213
210
141
238
217
227
188
212
236
139
240
195
211
210
134
171
177
218
158
173
192
179
134
171
270
232
225
185
218
241
223
134
169
253
153
206
195
233
181
226
227
235
227
239
136
175
226
164
197
249
163
170
228
189
264
180
156
277
188
152
215
250
209
178
169
193
145
178
197
199
250
235
169
166
201
231
209
142
248
220
171
198
204
256
236
189
219
204
224
184
170
200
221
150
205
242
210
163
257
208
244
196
249
208
217
136
144
235
214
253
145
207
188
197
219
210
158
182
157
205
239
231
222
168
216
228
265
145
163
214
163
178
182
164
239
130
206
206
218
187
277
168
64
166
232
122
208
193
237
214
271
252
193
246
180
203
166
191
228
184
214
166
176
144
193
176
183
200
179
207
275
141
188
181
255
219
205
245
175
234
239
277
198
198
155
191
236
132
195
265
139
187
191
207
139
210
213
145
191
187
205
140
202
194
145
256
211
156
240
188
162
147
157
210
135
197
185
217
208
122
220
192
244
126
156
173
209
215
191
194
160
227
170
152
167
249
191
227
241
227
225
267
187
152
232
104
178
207
271
165
276
200
202
210
189
179
204
164
122
213
216
192
169
224
152
222
166
191
280
227
255
185
203
297
265
186
194
195
112
222
198
178
158
194
227
198
159
201
131
171
253
266
181
198
173
215
234
198
219
244
228
202
172
189
236
257
248
212
242
194
262
151
241
193
198
220
210
208
121
204
185
182
219
217
188
229
173
222
224
198
230
219
217
166
221
180
244
160
272
221
229
112
189
209
220
178
237
205
208
189
194
170
197
180
208
218
212
233
185
203
280
217
191
168
233
216
172
181
194
226
191
249
227
198
176
219
226
196
171
207
219
130
252
178
190
236
233
235
226
233
283
206
214
243
272
283
221
231
228
226
172
193
236
197
257
116
246
217
142
181
194
158
187
176
265
190
180
159
145
200
116
181
177
258
192
158
211
160
172
133
235
174
207
187
173
206
206
211
124
174
201
186
184
125
164
176
150
213
130
129
179
188
258
245
194
140
209
205
214
143
167
203
223
213
191
144
183
213
154
205
204
205
211
177
199
176
196
202
190
164
171
239
241
128
147
204
206
212
223
183
255
218
134
175
244
233
126
187
213
177
156
198
226
183
201
207
177
196
177
229
212
154
248
239
256
212
267
244
231
195
193
231
201
168
230
246
200
168
208
143
130
198
220
206
200
212
249
146
188
165
278
229
221
197
231
208
172
234
192
226
202
184
207
133
170
206
163
193
197
173
184
180
261
165
231
220
242
186
226
246
136
160
177
226
204
209
200
204
225
237
168
221
130
165
105
193
218
215
190
255
164
250
203
130
242
202
215
140
232
178
210
215
167
220
187
249
182
254
258
178
147
226
167
210
216
206
234
242
182
202
226
222
192
203
225
223
188
191
217
239
211
264
188
187
217
161
149
192
212
246
177
156
147
217
215
211
223
184
219
195
176
250
186
219
190
258
236
157
144
206
203
209
212
167
227
165
136
210
238
152
175
227
119
167
230
279
188
209
221
227
193
218
225
153
243
202
234
191
266
199
235
274
219
200
176
218
177
218
196
186
198
198
190
269
206
209
113
214
150
205
153
156
217
103
258
200
165
198
185
200
218
215
134
195
193
225
167
158
237
196
212
174
189
192
263
189
155
168
209
222
234
185
211
147
201
174
196
198
215
117
185
202
172
154
208
257
215
218
168
227
170
183
178
205
188
229
195
166
207
135
273
237
194
184
207
178
171
212
192
210
201
164
228
170
252
239
250
168
208
208
202
202
178
214
216
166
206
234
258
146
162
224
194
266
171
225
190
181
149
177
163
218
214
226
183
185
274
240
183
177
215
149
258
179
215
205
195
229
165
186
233
196
190
228
211
216
222
192
217
207
160
186
225
187
248
201
207
230
248
186
212
156
186
157
206
168
172
126
198
249
164
212
201
156
216
177
202
200
208
185
216
213
221
167
205
198
185
141
180
167
187
190
154
193
182
231
215
182
196
185
194
176
171
205
245
178
194
207
141
215
152
229
209
181
198
223
208
165
209
199
231
229
230
259
233
191
211
195
166
137
182
242
198
222
201
231
200
211
202
200
203
169
219
229
179
223
158
215
205
203
214
209
233
169
222
212
216
225
207
198
163
181
257
229
178
184
160
205
172
163
185
164
191
207
186
248
212
168
247
142
216
205
191
220
168
216
231
204
194
242
213
228
237
187
172
203
193
204
207
211
260
220
188
201
184
193
224
245
255
230
178
256
187
159
199
208
236
195
186
147
245
226
201
223
114
225
208
153
205
210
154
158
228
162
207
216
258
171
203
200
217
220
251
177
201
205
209
196
170
215
246
179
207
195
225
213
181
151
184
194
195
205
210
226
162
223
228
225
182
184
190
219
198
219
235
224
254
259
122
231
208
209
232
252
222
213
185
187
206
255
208
201
184
200
220
188
268
220
207
244
217
164
263
276
189
215
223
210
196
225
166
170
203
256
201
236
253
198
177
210
254
202
133
229
265
244
296
179
185
187
159
155
277
266
213
184
180
229
150
226
154
183
205
187
201
195
220
164
180
230
182
109
150
199
226
220
181
149
157
190
178
201
180
165
229
190
195
168
193
257
233
245
189
188
214
141
158
161
171
243
129
232
218
147
258
221
173
225
149
228
191
170
198
152
192
256
191
183
268
263
206
198
240
153
203
189
180
229
202
152
188
175
226
120
240
182
220
165
144
216
144
244
219
182
225
189
201
254
237
250
213
115
233
183
207
165
205
131
199
248
189
171
180
208
159
196
164
235
221
200
254
206
185
279
232
237
181
250
169
195
186
220
167
255
220
211
247
195
172
226
234
155
222
203
208
190
208
158
239
196
182
184
268
203
211
216
174
251
172
134
196
224
113
229
234
142
237
203
195
192
257
243
197
242
169
194
240
226
143
210
208
272
205
197
258
225
148
183
177
241
241
205
175
201
283
145
234
247
270
210
233
244
170
205
280
241
126
230
206
249
259
183
187
249
183
180
208
221
155
284
160
238
178
167
257
213
238
236
210
101
227
228
232
212
183
219
131
265
199
133
176
189
183
222
209
186
236
193
213
159
231
203
185
236
188
192
176
251
151
188
224
132
282
229
209
168
166
187
224
229
224
202
221
203
184
87
150
196
191
191
234
166
184
183
226
198
247
304
213
217
147
181
213
229
225
215
172
128
265
207
196
207
174
271
195
160
249
227
169
141
249
256
156
186
113
192
209
181
193
235
186
195
216
180
195
209
235
175
155
232
211
190
239
172
176
174
173
241
228
243
222
239
228
279
198
274
135
141
221
252
251
161
267
220
221
221
129
190
167
129
211
187
174
215
195
204
249
225
252
187
198
228
201
206
183
174
187
162
163
225
155
233
261
165
177
126
192
192
150
251
214
184
233
242
176
149
179
250
171
186
244
188
209
175
279
178
225
212
264
196
164
220
188
206
224
250
232
173
153
207
231
228
184
211
214
212
206
170
246
189
197
215
292
215
213
212
251
139
155
176
168
240
159
236
189
149
195
172
178
175
155
170
174
186
177
223
175
181
204
186
203
200
213
230
186
232
216
241
261
191
190
227
230
248
159
195
233
230
216
160
192
173
186
130
206
192
157
215
166
214
210
242
230
202
202
182
217
226
191
174
133
211
215
218
234
182
204
257
223
263
203
238
174
151
218
208
170
222
221
197
204
207
176
215
185
203
211
186
188
207
190
173
212
164
191
214
214
180
184
200
141
193
295
186
217
183
169
204
185
196
179
265
217
202
164
259
254
180
219
205
221
235
212
193
249
199
199
168
211
230
210
202
209
214
216
236
207
179
143
210
195
196
171
143
147
164
214
208
163
242
241
167
157
179
220
193
231
271
171
211
209
139
185
237
211
199
234
222
171
201
186
163
224
247
238
184
209
162
218
184
200
177
238
227
187
186
183
216
243
208
147
207
131
139
133
205
176
135
214
194
236
212
178
175
189
174
170
253
248
195
276
206
257
232
224
231
242
196
151
174
230
200
147
194
239
242
155
216
151
255
134
241
175
233
155
231
281
219
162
236
197
165
167
214
184
178
196
192
243
164
222
188
220
176
191
200
119
233
235
215
164
262
179
174
204
211
225
217
185
169
253
221
219
227
203
200
149
188
230
221
146
187
192
190
211
176
171
221
229
197
224
155
226
209
205
272
260
123
202
203
212
201
176
247
195
195
168
187
223
194
160
134
232
237
198
244
144
171
231
145
201
170
205
202
205
188
137
189
199
207
286
212
201
240
189
283
206
154
151
200
248
253
175
171
195
142
147
229
198
223
137
132
144
200
178
154
151
252
203
110
198
216
189
225
190
229
210
220
155
225
233
189
219
224
211
230
184
217
217
209
231
162
101
197
177
207
193
228
146
211
176
268
185
194
216
251
147
217
123
230
221
235
171
237
211
189
255
235
187
273
212
225
169
217
166
193
246
178
126
167
162
169
227
140
195
184
187
213
226
231
168
220
226
226
190
224
172
231
193
184
182
132
244
173
139
154
203
207
211
232
230
250
180
230
201
197
200
234
217
215
222
256
244
172
253
179
253
170
259
262
126
271
219
209
212
223
203
145
135
181
147
175
196
218
220
151
168
210
285
218
247
228
171
141
168
204
132
183
179
218
207
234
195
166
254
257
141
149
160
297
202
271
283
198
176
125
168
162
196
251
230
231
229
215
212
194
213
231
211
192
228
208
161
239
193
126
250
166
211
214
226
203
230
194
195
254
248
234
263
210
232
167
220
251
194
229
163
186
282
217
163
237
163
262
212
210
195
231
162
218
253
178
185
146
164
199
224
207
199
230
225
145
178
260
210
271
197
181
228
176
154
268
131
233
179
177
194
248
184
203
290
162
207
192
187
191
161
162
207
210
206
183
208
229
136
235
204
175
229
166
185
210
232
200
193
185
237
210
192
191
213
97
235
140
268
158
240
212
213
206
198
189
241
195
209
240
208
182
114
165
178
254
192
171
232
186
169
186
242
175
182
163
223
259
144
216
198
238
177
128
215
190
244
215
217
190
168
260
141
202
231
201
200
267
163
183
143
245
262
201
138
224
144
207
169
202
192
193
193
105
220
204
269
198
204
205
201
189
223
245
192
217
214
171
157
220
250
236
212
218
186
258
211
187
214
167
235
250
246
216
253
220
190
145
184
203
94
176
168
165
162
195
255
212
226
189
148
199
195
288
231
151
153
217
212
199
177
197
188
171
179
203
216
198
177
224
163
126
203
172
174
205
183
242
162
201
192
182
133
204
248
202
172
191
127
242
218
214
194
197
187
188
162
215
181
229
219
80
204
166
181
206
170
177
229
198
296
214
174
215
184
166
227
153
205
145
222
161
212
227
227
184
212
123
177
254
223
192
192
200
149
145
231
255
216
195
232
207
190
177
172
242
226
238
196
196
237
233
229
245
192
229
161
220
209
214
200
172
168
214
198
154
177
170
209
218
213
197
171
193
164
190
190
250
206
252
174
160
178
155
201
177
180
164
223
206
165
207
234
245
135
152
213
209
185
220
183
233
138
157
182
208
166
210
141
166
190
185
206
242
193
171
151
182
210
207
208
234
240
220
208
239
230
213
162
213
200
205
258
185
165
183
255
178
163
177
196
196
200
248
202
215
149
241
279
227
245
218
221
200
247
198
208
129
205
203
238
208
192
227
225
151
258
203
245
212
204
215
220
235
220
203
165
146
236
237
247
221
208
156
176
199
179
157
220
183
178
245
211
158
187
194
243
207
184
145
142
190
205
233
212
198
185
185
181
241
156
166
207
226
202
144
214
218
229
249
233
180
241
189
198
215
157
188
209
186
188
236
200
181
221
181
248
216
213
165
228
207
206
212
189
189
205
252
161
192
125
234
192
218
222
185
221
178
175
120
199
156
191
176
227
173
182
187
224
132
164
199
252
225
233
139
250
145
194
191
138
185
233
194
218
244
149
174
205
262
212
160
189
219
213
203
216
208
215
217
247
141
205
177
189
248
188
209
188
235
219
175
270
196
218
213
179
163
185
209
207
229
193
246
233
198
207
215
184
199
158
250
256
215
186
215
240
235
213
224
253
191
217
250
184
175
220
267
222
221
210
203
238
183
181
260
185
211
277
217
239
209
205
216
207
207
236
187
221
204
201
208
204
162
275
169
198
167
236
145
231
239
167
201
238
233
203
185
212
231
233
232
207
248
236
204
212
266
149
234
269
185
259
219
192
241
254
167
221
166
283
241
216
165
232
147
178
212
188
170
250
224
121
213
187
234
197
199
186
243
211
171
175
193
142
184
213
232
195
203
166
277
146
178
173
226
204
180
175
150
230
230
170
145
244
180
229
215
188
191
231
186
151
197
197
120
210
268
197
220
190
222
248
223
161
219
210
208
234
193
204
226
203
161
161
188
190
191
267
207
221
192
265
205
206
219
222
203
225
216
177
188
247
205
99
203
157
226
165
231
202
107
185
150
168
283
193
224
169
240
193
218
213
206
160
198
240
206
211
184
203
186
202
219
182
170
174
187
248
146
198
199
161
214
240
210
220
166
225
202
264
153
164
166
211
233
152
244
171
172
226
168
189
217
175
199
249
183
150
217
175
226
215
207
216
158
245
221
219
217
226
212
179
187
187
242
246
198
160
187
196
227
186
220
194
219
188
218
169
244
205
186
199
227
193
199
230
203
174
234
169
281
194
185
276
259
225
194
250
207
227
227
264
176
228
204
199
231
265
131
216
201
150
215
164
142
184
179
222
189
202
132
266
239
257
233
219
179
199
225
214
185
168
175
233
180
227
265
187
191
190
241
223
184
161
138
237
192
210
225
245
204
236
179
172
206
214
177
203
225
197
124
221
183
219
212
225
201
204
183
171
176
174
195
113
167
230
169
174
168
240
217
182
181
164
197
192
230
147
200
216
186
176
189
158
136
149
240
237
188
191
208
222
186
172
238
262
232
187
192
221
177
169
119
213
203
198
230
198
163
168
188
226
194
226
206
174
218
195
168
245
198
201
170
230
219
166
206
147
183
177
177
218
224
255
225
185
200
196
219
203
183
161
134
211
233
195
221
209
157
184
250
225
124
239
186
176
250
185
191
194
169
198
197
248
201
190
168
210
173
243
223
178
164
248
159
192
266
206
208
271
273
218
185
273
125
182
175
194
179
231
168
241
163
189
186
174
216
260
230
234
188
232
220
219
114
232
256
206
191
186
241
248
180
200
239
253
159
205
171
217
231
217
263
227
185
153
164
248
213
178
130
215
254
188
191
244
215
148
233
228
202
192
193
229
219
239
143
193
186
192
222
200
213
135
193
173
240
176
162
183
208
209
176
238
197
182
180
246
285
175
176
186
211
180
190
213
200
221
143
217
111
175
209
229
249
171
219
230
249
218
209
180
213
173
200
197
173
222
157
184
221
160
187
269
177
194
263
241
243
186
197
210
239
189
183
240
148
208
249
176
180
192
188
210
189
227
189
168
183
142
202
199
194
191
196
166
263
212
239
219
234
259
213
190
183
223
226
226
263
212
189
221
279
203
157
226
203
179
198
165
194
158
197
182
215
197
199
201
197
214
218
205
180
252
200
157
193
203
197
180
196
147
191
212
148
171
186
188
248
170
211
202
248
196
136
198
208
209
209
177
179
203
153
239
244
216
151
185
209
142
269
182
206
160
163
184
233
190
172
174
233
193
204
235
175
239
139
206
204
243
196
260
229
168
225
235
161
216
275
241
227
271
211
125
124
228
174
157
171
254
200
192
156
226
178
178
197
239
197
243
230
215
106
211
135
152
173
201
228
209
240
249
224
194
198
159
112
154
237
230
173
154
204
130
214
175
208
201
224
218
191
270
201
253
246
170
239
254
228
142
190
212
161
202
206
187
200
157
123
162
209
239
194
150
222
218
200
217
215
234
225
143
69
202
205
208
235
195
191
234
232
240
151
200
241
156
220
192
175
138
233
113
187
202
248
162
197
208
201
183
225
166
204
154
261
228
189
177
254
263
193
201
186
264
159
179
190
168
165
217
213
215
162
203
183
269
220
181
225
236
171
185
174
233
201
185
194
211
193
246
178
220
233
221
246
224
192
155
267
200
195
205
150
224
141
133
185
184
205
208
235
246
169
193
261
169
228
162
200
227
193
177
198
205
208
251
113
199
162
171
204
243
197
191
260
178
153
163
249
190
189
210
199
190
215
190
201
132
229
136
246
151
156
198
184
158
205
268
223
250
256
173
240
184
233
166
195
269
171
221
167
185
215
284
208
213
215
221
210
236
246
179
230
201
163
222
198
289
173
228
155
152
257
149
256
246
171
136
221
222
173
249
207
194
240
190
170
130
204
206
209
163
263
130
258
261
196
200
242
215
194
229
187
222
220
217
215
123
171
204
189
133
131
223
212
168
234
278
220
172
216
188
200
251
171
209
220
170
194
183
238
222
189
157
219
218
229
232
236
201
168
175
175
201
185
195
180
232
231
228
193
216
228
178
154
221
166
196
179
204
236
175
169
193
241
150
179
193
185
218
159
200
199
238
143
211
208
178
191
218
225
150
233
153
210
186
216
178
177
259
198
211
189
239
228
221
208
175
176
201
177
164
161
177
236
191
201
264
194
214
254
212
193
174
215
192
226
213
210
178
147
135
226
158
153
233
225
222
205
181
136
160
183
123
191
164
207
211
240
195
195
212
213
164
179
137
174
225
249
220
217
173
212
149
209
238
186
185
165
176
157
235
157
195
207
181
222
144
127
226
211
234
184
154
277
173
232
211
199
235
239
163
165
157
168
257
222
231
232
179
169
223
132
222
241
201
244
265
190
163
234
171
212
233
153
220
176
237
252
168
211
179
162
231
201
199
197
192
173
175
134
202
175
154
134
212
201
206
248
149
199
164
175
238
183
151
162
181
263
222
185
141
110
189
166
209
209
208
175
218
182
190
204
137
272
160
222
183
235
157
224
213
212
157
215
213
148
194
208
245
178
202
177
195
185
222
234
178
229
215
147
166
140
202
210
248
240
170
162
185
182
234
178
224
179
186
210
228
204
208
258
171
199
267
209
248
251
141
199
193
188
153
185
126
196
192
168
215
220
173
157
210
204
219
194
162
182
173
184
136
148
184
225
254
170
210
176
164
190
188
207
220
157
200
210
222
249
169
167
162
250
192
211
227
199
174
207
215
225
231
157
181
229
162
193
133
229
179
177
181
257
164
106
183
175
152
172
197
238
230
234
233
224
195
285
240
177
225
231
175
269
202
228
200
158
161
181
161
242
200
215
247
214
212
254
268
198
195
197
179
205
150
249
168
198
242
175
200
153
159
234
173
171
206
279
237
209
202
125
181
206
185
210
205
194
155
232
215
199
226
166
256
199
179
267
173
213
238
201
237
195
212
191
241
188
219
190
238
216
232
220
182
207
186
169
206
231
240
245
127
154
206
241
222
142
221
139
177
260
162
249
224
207
170
169
224
196
193
214
234
242
192
217
269
223
226
243
183
194
154
178
247
213
214
184
247
183
204
263
249
183
169
164
258
224
243
238
230
185
165
230
202
210
217
150
149
250
242
154
260
237
230
257
246
226
244
208
180
194
185
228
210
196
228
188
191
225
214
228
194
154
223
177
164
200
126
150
135
229
189
209
196
240
199
213
167
209
142
256
207
226
237
207
264
196
186
180
223
236
216
180
219
211
218
139
194
99
211
209
236
174
128
166
207
155
219
228
156
169
218
202
272
142
182
197
246
225
158
198
148
160
247
193
131
227
199
245
240
186
210
193
202
174
190
236
213
169
230
198
224
156
153
141
214
203
233
171
194
204
228
252
197
260
253
230
232
225
203
195
249
244
147
145
227
205
254
195
194
127
188
151
191
149
202
202
207
108
209
242
174
158
197
208
260
176
199
245
166
229
222
246
212
222
188
197
224
225
128
218
269
155
163
210
249
183
179
189
148
162
231
217
237
178
150
186
191
229
228
251
233
159
174
152
172
194
270
172
179
172
232
188
124
165
187
138
237
155
146
213
205
224
247
221
241
196
176
228
186
144
190
166
190
246
237
125
235
211
211
216
160
202
212
236
164
247
180
225
245
215
126
144
193
220
215
204
206
209
228
244
259
127
189
204
196
177
221
193
173
241
253
230
209
191
195
211
157
247
204
257
209
219
149
221
189
165
190
250
199
187
136
150
246
180
201
213
244
228
183
240
253
207
163
183
219
195
105
151
273
166
217
158
250
149
193
181
150
263
200
187
207
167
197
240
208
250
261
204
196
219
249
201
218
219
174
219
200
255
195
164
254
226
223
192
236
197
166
220
181
171
231
215
231
182
203
205
208
215
168
259
247
235
223
166
241
213
249
195
244
193
117
213
204
229
185
191
219
150
199
186
183
264
195
160
206
170
209
189
222
254
230
180
172
207
184
193
210
214
233
189
200
196
236
193
187
191
199
161
214
190
214
253
152
260
241
228
232
188
229
144
216
217
210
253
185
213
222
218
205
202
224
182
177
236
153
279
213
228
165
230
198
116
210
177
199
204
230
151
221
214
132
179
177
249
232
208
219
216
184
177
124
228
219
169
175
212
186
229
168
124
227
161
310
170
217
187
250
203
229
205
230
203
211
218
199
204
226
160
156
184
211
134
196
243
147
167
250
173
204
188
310
162
223
161
162
216
213
236
140
171
209
183
223
188
184
202
247
214
208
134
180
192
196
183
187
196
161
200
221
262
180
198
133
199
164
202
240
205
193
256
178
142
154
170
228
226
134
260
211
182
172
172
238
241
244
186
252
225
224
133
154
198
213
191
176
157
157
237
265
236
210
179
203
192
205
188
191
136
206
275
178
265
293
200
134
136
183
210
136
219
152
211
183
193
155
239
212
236
249
189
163
189
221
212
228
199
165
193
211
223
270
196
230
190
192
184
158
172
203
185
139
101
153
250
192
198
204
216
254
183
103
153
163
154
199
216
170
246
153
287
165
186
194
106
138
245
238
250
150
217
209
254
262
198
160
227
195
232
214
222
173
235
206
186
229
190
224
179
187
214
189
215
169
190
236
186
182
247
238
184
196
210
212
199
216
170
203
183
192
227
197
232
166
185
190
202
226
207
241
181
238
120
189
147
204
211
168
220
158
165
206
185
176
210
185
227
145
145
199
180
211
213
216
196
224
151
161
170
228
220
166
190
236
187
198
209
183
222
143
241
198
192
217
246
260
162
179
116
219
269
194
258
241
243
207
173
195
187
225
251
127
205
171
205
183
228
225
255
239
126
141
203
206
178
292
160
165
164
213
216
210
217
216
183
245
221
247
208
140
196
172
150
191
230
236
216
230
146
233
254
176
178
181
248
163
174
211
253
233
200
186
222
214
238
190
186
201
183
207
244
239
213
219
175
194
216
203
194
160
145
201
167
227
232
186
228
210
179
190
238
215
191
237
206
249
227
251
244
217
131
202
195
248
185
199
188
217
243
217
162
245
120
208
212
146
155
182
163
165
195
232
223
193
213
179
238
173
197
200
162
196
211
153
202
134
199
183
230
230
234
211
219
232
211
226
220
240
231
231
174
161
173
207
184
118
143
213
179
196
219
147
190
232
202
252
180
160
182
195
249
163
214
174
179
190
233
168
209
180
215
186
226
235
172
194
207
210
230
209
208
174
185
247
197
234
199
210
199
158
277
193
181
134
210
224
159
243
132
199
185
170
208
155
180
126
230
143
245
261
147
219
220
243
193
233
172
194
184
185
230
234
261
193
215
206
197
194
170
200
180
193
188
240
252
214
211
185
196
193
144
189
193
237
241
240
207
208
163
200
185
263
257
149
161
232
152
245
222
178
172
207
233
202
154
218
138
210
263
185
233
169
190
244
198
223
243
196
270
128
212
267
242
233
172
242
181
208
149
122
194
272
226
192
187
247
175
226
234
163
221
192
235
204
164
204
188
215
226
148
167
255
204
181
194
210
247
222
209
181
131
148
197
203
196
151
136
166
164
205
273
223
180
156
142
189
194
150
179
177
219
232
184
220
244
226
133
195
225
121
155
205
177
192
164
195
184
161
230
168
230
162
162
153
206
163
167
185
228
170
160
168
204
196
122
231
253
120
219
250
230
178
230
212
130
206
211
205
208
214
253
200
262
238
189
185
163
208
166
211
233
196
261
205
220
192
173
217
241
184
193
189
198
149
220
210
173
190
155
173
184
177
194
204
221
208
252
125
208
202
133
181
209
220
223
256
216
253
218
231
208
202
242
211
186
231
175
185
218
141
195
178
243
217
167
208
174
218
298
145
254
250
162
208
174
175
202
222
200
207
206
196
214
206
208
261
234
175
128
165
205
208
206
167
170
120
187
234
237
202
231
161
175
190
187
213
222
147
190
215
259
189
184
170
226
107
157
195
202
148
180
240
190
240
155
188
168
169
159
185
226
187
152
154
154
253
156
157
211
201
263
226
191
226
222
157
173
217
250
180
180
222
219
153
233
235
231
189
196
222
185
175
170
214
212
178
243
182
198
171
210
232
234
215
233
190
228
214
226
250
217
217
165
177
196
127
203
173
149
203
212
207
145
172
181
193
241
203
208
175
249
161
180
137
217
197
209
239
215
222
142
243
148
163
231
192
179
271
218
254
207
248
219
194
184
213
239
211
217
224
229
242
229
219
227
243
245
158
175
220
220
255
195
199
145
223
182
261
198
236
191
222
180
235
218
244
188
143
230
152
140
202
197
192
211
236
140
163
214
247
248
172
143
196
194
217
223
189
229
220
206
253
204
258
215
206
193
129
220
190
233
200
178
254
246
171
135
167
180
271
214
159
218
159
203
176
214
184
172
169
234
264
172
253
188
85
224
233
236
181
207
138
192
184
148
231
260
200
207
195
239
182
215
252
196
165
192
220
265
208
180
193
144
208
160
202
237
179
182
140
171
208
186
219
210
165
188
182
166
184
191
120
144
207
227
223
176
149
236
217
198
197
124
241
222
220
199
169
201
252
126
230
154
239
184
180
172
144
209
204
200
115
181
191
221
133
165
202
198
157
200
125
250
142
154
195
166
248
180
223
245
211
192
233
231
119
166
194
168
193
141
259
194
216
174
194
171
240
205
217
207
184
172
197
207
156
255
230
184
207
154
231
251
253
131
228
198
173
234
227
185
141
185
173
174
249
260
150
197
283
183
168
162
208
268
248
228
193
123
216
197
213
149
179
189
192
210
184
254
207
225
182
212
173
177
181
166
197
231
231
151
196
202
163
289
190
166
153
207
174
136
259
194
250
152
160
206
213
226
253
194
165
200
186
225
249
125
224
215
236
236
181
170
241
194
177
199
264
216
203
207
198
223
216
247
228
171
195
219
217
172
146
275
187
138
158
181
187
225
161
153
191
244
206
218
191
200
230
149
235
192
172
197
169
222
256
241
224
258
213
194
208
201
155
197
231
256
185
159
197
229
221
227
222
170
280
177
177
196
241
242
216
251
203
180
168
172
205
248
191
218
177
233
235
189
184
234
161
219
121
104
221
206
158
198
219
225
223
171
234
247
205
194
240
220
232
173
191
118
140
140
204
170
177
232
165
218
178
133
201
184
230
263
174
187
211
175
257
220
200
222
212
210
130
205
132
170
219
227
228
148
287
262
214
186
209
157
126
216
166
272
222
188
204
215
151
244
190
209
217
302
180
196
185
174
140
207
256
165
121
160
199
202
191
231
198
226
151
195
226
241
243
202
176
205
175
171
155
237
207
212
187
216
229
209
205
203
217
152
193
195
178
245
176
135
209
214
163
177
184
185
188
228
177
257
233
158
240
196
238
147
223
163
159
224
144
218
126
180
179
139
186
147
230
185
188
211
179
231
170
217
168
210
264
261
221
180
184
221
226
218
242
219
212
206
179
168
220
205
194
142
166
176
140
204
180
238
191
253
240
209
179
226
131
239
216
228
191
214
178
281
218
232
149
249
249
199
230
193
233
205
246
223
190
190
230
259
136
195
227
181
152
224
196
200
177
193
141
225
188
184
199
276
133
141
179
219
191
199
181
211
129
239
147
188
224
247
232
144
238
257
224
207
162
220
251
171
206
198
218
208
200
156
175
211
159
167
224
271
229
155
249
242
215
230
200
193
146
193
190
203
109
209
135
195
237
206
185
167
196
162
187
148
190
258
213
215
227
185
217
120
211
243
235
233
246
173
279
258
249
213
184
210
175
190
211
114
182
233
130
145
162
180
222
181
156
183
226
194
249
182
235
219
258
198
147
216
224
237
149
262
216
145
158
221
224
282
137
176
182
171
228
137
140
195
165
245
239
200
222
204
217
188
230
214
240
167
264
214
230
254
259
204
166
194
169
199
240
223
249
144
243
187
195
195
211
249
269
201
169
224
216
211
192
197
220
204
228
151
174
176
226
159
125
195
222
225
212
173
157
212
182
205
227
124
241
162
182
165
222
184
218
245
238
233
224
147
234
127
207
221
254
255
211
196
213
233
144
210
252
212
219
163
225
164
214
201
225
228
228
224
169
234
200
236
182
200
254
163
197
156
196
217
249
273
225
213
160
128
210
179
230
168
203
238
253
208
192
222
196
216
219
171
165
189
256
173
199
235
233
207
226
180
267
129
224
185
185
223
217
209
180
206
231
244
236
199
255
209
183
173
132
201
221
171
150
183
252
210
103
155
174
198
125
170
223
189
161
183
158
153
142
172
210
177
205
249
236
252
176
167
120
181
188
234
266
189
186
178
296
259
253
229
167
198
194
172
133
201
187
237
176
182
256
230
167
158
248
242
155
213
142
222
226
173
223
247
220
132
271
174
201
191
190
212
234
203
183
214
177
238
182
207
214
258
177
211
190
218
153
164
249
246
148
240
179
214
207
242
179
204
199
219
198
223
173
230
245
173
233
229
181
254
161
206
293
192
161
231
242
206
211
173
196
212
183
206
198
245
182
263
189
219
186
233
208
237
252
189
179
250
201
142
206
189
186
192
116
178
220
180
210
193
212
227
215
207
219
205
182
173
184
194
231
222
183
250
228
208
240
209
189
186
200
193
171
188
177
194
187
255
143
185
184
203
232
123
151
220
183
244
156
184
230
215
223
180
169
197
173
175
145
206
253
180
182
175
189
154
157
261
197
226
228
125
214
155
249
177
193
187
160
177
224
167
249
235
123
145
174
257
194
232
225
202
195
229
221
157
152
225
210
155
255
161
211
237
174
193
142
240
212
190
156
178
138
157
213
228
227
187
120
224
177
191
181
223
250
241
193
236
254
191
270
192
135
108
180
229
223
236
204
217
259
257
239
185
229
224
267
139
196
222
241
222
221
239
181
269
188
175
185
202
186
221
264
237
199
229
139
195
181
241
213
231
212
132
204
145
171
232
180
171
187
234
175
154
263
226
189
222
236
176
187
193
207
241
168
211
215
192
195
202
201
153
145
189
233
193
196
187
187
164
215
231
207
172
204
184
265
178
182
141
249
120
118
257
234
168
183
156
159
202
203
163
220
224
181
214
240
241
168
179
192
201
222
218
211
178
221
257
155
238
246
145
205
219
230
156
211
135
227
184
204
223
224
192
216
158
250
193
200
204
167
210
254
199
245
179
186
160
169
120
273
255
227
201
200
168
212
233
144
214
218
201
219
229
189
135
135
223
183
220
253
170
215
203
171
158
163
224
210
168
172
154
202
171
191
233
150
136
198
173
236
162
217
209
193
192
159
212
209
209
163
174
216
197
203
189
133
185
231
212
176
197
201
193
220
187
240
162
186
207
178
181
194
185
236
194
164
176
217
178
213
147
208
195
127
147
163
194
203
221
163
183
194
232
194
208
259
198
130
244
211
236
163
198
208
196
178
203
214
215
209
184
198
185
161
175
237
237
173
145
172
201
180
203
220
254
194
173
173
227
196
198
195
230
244
204
203
230
221
176
208
183
148
185
205
159
157
225
180
207
173
246
229
225
220
212
157
223
235
222
183
220
179
203
183
208
197
179
198
167
204
158
155
182
216
181
151
227
203
224
188
189
187
181
212
226
195
238
161
135
222
142
148
183
160
181
230
169
192
221
186
231
191
230
160
202
174
218
205
197
207
243
196
194
228
282
192
179
247
224
209
178
246
175
212
225
185
161
174
122
202
161
224
135
199
194
196
163
209
229
203
261
249
177
158
179
228
214
268
185
195
202
178
218
204
192
200
172
230
181
216
146
172
251
232
207
162
176
196
191
186
209
99
237
176
223
228
213
226
251
203
200
221
163
161
274
167
197
164
151
171
170
210
159
240
190
271
252
207
204
213
150
193
178
214
198
243
188
285
185
176
209
246
167
211
186
216
154
276
168
194
265
191
202
117
256
259
206
153
156
166
220
212
211
234
169
247
191
211
170
253
231
251
211
199
181
263
254
201
198
194
229
201
139
171
196
182
161
245
239
198
253
261
194
244
223
208
213
192
217
252
203
204
210
215
248
228
144
251
228
152
183
193
223
115
196
205
180
199
178
144
226
165
157
135
155
200
196
299
218
161
232
149
168
203
239
185
243
255
191
208
212
239
205
216
187
159
195
218
195
193
273
197
178
163
220
188
184
138
143
159
191
197
237
162
136
206
173
187
175
195
226
272
194
187
164
205
178
180
185
217
251
202
159
204
120
231
222
136
216
197
190
274
193
190
170
230
215
200
140
160
200
247
150
216
202
150
185
211
244
202
178
247
196
167
211
184
172
267
188
237
215
212
266
225
208
192
206
162
163
134
206
209
213
205
195
191
229
197
194
207
243
199
165
258
206
184
197
208
145
149
201
217
165
252
202
182
254
205
193
158
199
232
261
209
170
177
190
192
196
212
193
177
246
171
267
184
187
174
157
233
144
239
185
219
193
236
244
157
239
194
142
168
202
177
130
152
173
214
189
225
248
196
254
188
204
230
135
188
215
207
199
271
232
184
238
174
201
190
206
112
185
272
237
224
182
141
232
214
138
237
234
205
219
175
199
204
239
199
220
201
114
233
254
216
185
227
172
192
221
227
177
194
257
192
170
245
195
268
187
219
228
176
150
184
239
275
170
236
195
224
195
230
179
124
195
213
205
211
200
182
258
190
149
174
229
172
239
225
172
217
161
159
184
277
259
229
252
186
159
202
217
219
154
174
215
180
165
219
241
175
198
179
165
207
234
182
246
234
256
223
223
158
147
154
146
163
232
164
250
179
246
178
208
203
165
227
236
157
196
221
239
170
183
217
169
201
211
205
168
182
207
238
168
207
152
188
280
153
163
240
243
185
211
211
175
162
208
247
186
169
221
263
239
190
180
185
198
218
228
160
189
155
227
163
226
184
162
207
167
213
222
203
174
140
204
267
207
219
175
244
150
219
241
202
139
248
203
209
223
208
226
199
162
227
249
234
223
222
192
196
255
145
220
215
264
182
189
160
208
231
242
215
233
254
205
217
174
210
224
220
233
211
220
201
172
171
236
174
184
235
225
170
164
178
232
227
187
167
196
280
220
254
189
182
199
186
185
240
196
215
258
224
205
182
182
159
205
205
205
185
227
183
183
216
136
254
210
207
178
143
202
132
178
211
250
188
213
245
221
183
226
172
198
199
173
227
213
244
125
199
207
202
193
202
233
181
206
215
233
230
245
176
215
239
162
147
172
210
157
164
170
164
177
213
216
182
192
195
264
245
161
205
162
220
207
185
171
261
193
258
208
107
215
175
142
288
167
173
206
231
208
134
209
201
231
157
234
184
220
172
242
185
169
161
228
186
141
164
223
176
180
162
181
212
173
202
182
223
152
251
158
238
177
231
186
223
154
192
206
244
212
257
192
267
211
199
229
168
207
183
222
100
214
216
180
210
190
195
242
227
255
222
183
228
186
157
189
182
197
157
237
209
278
150
197
198
169
200
181
243
208
189
148
184
207
244
175
198
168
185
219
190
111
207
198
163
207
244
208
138
160
184
200
194
235
215
175
171
247
187
212
182
206
192
195
227
191
154
162
208
149
177
149
216
161
156
210
183
219
244
159
176
191
179
256
156
227
202
246
182
256
201
225
198
247
154
188
277
185
237
219
192
205
211
246
210
249
186
194
239
155
207
196
240
199
263
200
222
206
249
163
99
175
184
214
131
172
233
220
200
215
170
201
206
164
274
233
144
170
271
197
244
204
168
246
241
206
225
184
171
204
156
170
262
222
180
178
256
177
236
181
175
235
188
187
188
207
214
209
187
140
215
176
176
242
183
188
178
179
253
212
185
138
223
205
157
261
168
193
169
210
204
163
187
232
233
129
186
166
169
184
223
216
230
171
215
203
255
181
156
207
252
205
178
191
249
159
179
175
183
271
208
235
190
164
197
194
152
221
178
189
270
222
192
192
133
135
183
228
206
288
247
218
176
279
173
201
176
217
214
193
217
213
207
206
190
175
228
209
215
261
238
212
243
166
179
209
186
129
202
146
237
214
235
255
178
153
253
195
173
163
180
220
271
164
248
212
217
215
157
229
198
157
206
130
149
179
221
197
183
157
205
262
266
225
161
217
182
198
199
240
233
151
153
232
197
261
218
177
233
217
128
184
208
149
198
272
205
191
268
226
116
226
270
168
190
153
186
218
197
130
279
220
208
196
246
181
170
199
214
111
164
224
240
175
229
221
185
154
208
223
251
199
227
171
224
223
182
151
194
147
164
151
194
221
218
217
166
201
241
206
176
267
225
216
247
211
126
183
246
209
240
292
248
212
258
219
159
161
213
228
224
238
178
223
223
195
193
176
203
213
202
196
181
229
214
215
188
199
244
200
179
211
222
263
198
190
241
174
194
253
231
196
238
198
237
210
208
227
168
236
196
151
155
254
188
178
205
180
211
216
225
200
188
108
183
190
187
196
202
197
241
176
197
223
219
210
199
197
88
192
264
191
224
194
183
179
219
209
194
236
233
211
227
156
197
205
213
209
174
202
143
186
216
162
241
178
189
178
227
206
218
225
188
207
144
206
239
147
240
267
227
232
182
171
190
179
232
228
200
197
211
232
135
190
179
292
208
183
169
212
218
229
172
209
190
234
207
207
174
253
212
183
137
179
209
158
215
218
204
261
178
228
180
177
162
178
261
171
226
178
174
168
211
129
175
213
266
204
206
198
220
213
181
207
132
245
175
155
236
214
187
188
209
187
163
218
242
209
287
170
200
216
197
209
137
186
186
239
184
191
238
160
251
200
237
207
225
217
196
258
231
187
183
228
161
235
198
210
202
201
254
185
186
248
243
192
181
173
179
168
161
128
190
170
214
211
268
199
194
212
206
210
272
165
220
227
227
201
156
202
166
226
315
252
174
189
203
208
238
156
231
264
201
208
228
155
172
185
211
201
108
229
210
197
214
127
221
205
223
223
181
156
219
218
155
221
229
158
194
266
183
220
250
254
247
232
181
234
213
228
242
255
183
195
212
242
192
215
225
239
166
220
206
109
134
230
159
152
151
190
212
210
104
197
191
213
220
169
232
163
175
124
185
177
244
206
142
264
204
214
220
208
126
199
189
246
221
222
169
206
163
182
220
183
197
235
189
202
118
168
217
207
155
185
213
211
171
183
156
195
173
172
150
198
264
259
217
207
196
207
181
128
254
184
243
198
221
239
183
198
197
166
268
238
214
200
245
252
180
242
229
166
253
179
239
269
241
222
206
149
203
163
224
152
233
237
196
207
236
234
189
164
259
162
235
199
180
176
141
164
142
208
116
225
177
228
230
223
213
197
186
199
215
263
204
127
226
180
207
169
201
258
187
202
187
195
214
256
193
195
227
180
159
169
258
175
237
212
204
249
161
192
171
275
212
248
218
264
223
233
192
240
190
211
184
190
207
216
182
219
179
224
246
215
139
215
182
210
193
200
225
163
208
248
182
227
206
208
192
200
206
207
253
212
158
200
188
229
211
232
183
177
198
221
186
210
145
246
179
224
209
193
176
243
219
209
197
205
200
192
165
179
157
216
160
145
196
162
173
223
215
206
253
175
221
167
198
143
235
246
215
203
228
220
177
170
212
205
200
127
233
250
239
203
219
273
190
153
159
141
150
209
157
217
222
219
198
225
139
234
190
128
238
262
191
179
229
212
266
159
184
199
166
204
161
255
186
242
182
216
139
198
172
194
190
247
205
176
215
174
132
207
242
171
176
227
266
263
129
245
181
265
181
195
254
191
228
181
220
244
182
171
169
218
240
235
110
220
171
194
215
214
216
178
206
158
180
195
130
193
220
217
179
146
177
165
230
204
194
214
174
181
198
194
168
211
195
182
204
244
252
171
236
141
230
200
251
208
159
230
136
246
212
206
182
156
223
176
221
136
159
211
231
154
224
235
142
185
169
250
213
283
215
188
122
187
201
233
192
168
192
193
229
215
181
117
204
246
177
227
261
151
231
222
161
192
195
243
210
214
196
190
148
183
201
158
245
165
202
220
203
161
146
193
198
193
271
190
235
227
212
189
154
227
169
200
263
181
218
219
129
137
216
199
192
195
203
182
169
228
260
233
210
172
101
141
144
253
201
235
196
197
205
178
144
87
204
217
190
187
187
236
186
207
174
107
262
249
223
217
163
167
195
233
215
258
210
199
250
162
222
237
128
210
291
138
223
239
219
229
196
221
240
212
202
223
207
154
216
245
191
221
171
231
140
131
190
231
202
240
166
187
228
193
193
185
108
232
159
143
214
237
264
197
245
196
222
209
218
226
155
254
197
165
184
204
188
189
122
139
196
199
194
248
237
248
175
197
197
104
229
215
167
208
143
169
162
181
174
173
201
179
223
204
208
185
245
231
186
175
214
178
222
199
230
143
192
192
168
250
206
239
172
133
172
193
150
191
191
178
168
254
202
156
189
198
225
230
234
232
146
135
234
206
215
227
161
249
218
188
265
187
239
141
157
209
101
194
190
141
208
155
188
216
181
155
197
232
174
146
207
198
213
223
216
143
154
207
174
234
219
155
206
193
187
203
205
126
185
243
219
248
249
172
182
225
214
180
195
165
211
221
219
164
291
154
153
171
192
179
171
195
228
185
175
181
111
202
212
191
182
187
157
200
193
127
198
167
128
198
202
187
163
263
242
223
232
156
259
150
238
167
194
259
205
213
183
203
192
182
209
239
154
238
213
177
184
185
194
222
168
241
200
232
166
252
209
133
189
218
201
262
212
237
157
234
171
258
185
120
201
158
202
222
221
252
221
238
260
175
217
210
223
198
215
205
225
255
206
224
240
172
224
181
218
226
196
219
229
219
209
157
156
222
194
201
223
188
199
247
196
192
152
217
192
198
182
217
161
236
185
202
188
217
202
214
191
267
229
237
185
231
144
190
185
201
230
204
236
181
207
159
161
225
208
188
186
189
154
235
197
207
194
257
180
176
207
151
260
209
170
178
199
180
201
155
226
195
231
273
208
176
174
179
120
200
167
197
260
152
162
230
174
201
167
265
167
188
242
210
197
252
197
122
179
263
161
205
222
170
220
144
200
236
183
250
254
179
172
224
194
222
202
169
257
245
242
189
184
155
209
236
137
229
230
186
172
226
159
224
202
211
156
227
190
167
203
202
186
185
168
272
182
196
180
158
201
199
242
223
204
196
188
204
293
273
259
217
249
191
179
247
217
188
197
233
157
209
198
209
203
168
197
249
178
238
225
204
239
185
142
168
188
233
258
224
184
147
174
135
160
233
199
223
223
221
174
277
203
245
189
166
171
175
156
142
200
177
210
192
228
197
235
178
214
169
136
246
190
233
235
223
214
201
194
206
189
219
231
169
206
202
235
199
196
205
204
185
134
193
186
197
213
156
194
260
199
166
176
159
210
266
205
194
219
237
177
185
149
183
189
203
174
177
187
163
192
210
170
214
198
126
248
148
211
190
221
204
228
272
146
184
241
230
231
170
230
226
247
276
155
215
211
215
216
201
173
201
119
250
202
173
210
173
178
179
200
184
105
199
158
250
237
203
241
186
207
179
250
183
178
249
233
217
242
214
123
106
223
237
150
185
202
229
196
221
236
231
149
165
182
162
130
171
220
187
225
158
203
219
224
218
171
223
169
193
205
216
180
130
189
267
201
271
195
220
211
253
217
236
117
172
182
246
156
207
207
227
158
261
234
250
270
182
194
201
147
198
180
221
181
259
187
157
207
175
189
180
197
219
221
162
149
145
278
189
152
251
196
174
215
160
146
216
211
271
193
196
158
235
213
237
175
235
213
217
159
247
219
222
149
172
208
178
200
196
217
195
155
187
232
177
128
193
249
233
153
198
184
169
251
286
208
146
237
238
195
174
160
164
114
207
122
183
205
202
190
218
194
210
219
174
213
220
186
269
222
174
179
203
171
263
201
196
202
213
173
205
198
175
152
223
177
237
203
209
169
138
208
204
214
206
179
271
170
195
206
183
244
199
215
268
190
200
201
139
194
194
214
198
208
195
192
173
158
148
181
173
141
183
247
240
199
222
247
150
239
262
175
197
162
207
262
190
253
143
219
153
172
159
143
209
295
118
179
228
212
238
224
231
152
224
186
183
219
205
183
264
206
184
159
235
168
198
189
274
147
247
235
116
233
152
235
229
191
177
176
243
207
189
217
225
172
204
227
237
175
239
214
249
181
183
218
137
229
215
136
205
144
195
243
163
268
209
276
256
214
168
188
173
186
150
198
205
244
254
181
174
251
250
189
210
211
255
198
238
228
162
209
217
174
144
130
218
210
236
227
167
179
205
138
136
163
201
252
136
218
184
178
202
173
180
210
199
194
211
208
175
160
170
234
200
176
215
122
230
178
170
194
228
182
219
223
202
209
176
181
244
170
227
196
203
152
164
207
203
211
179
136
195
201
165
185
118
161
190
213
241
228
195
227
235
234
189
142
197
204
187
185
170
175
248
227
187
184
210
166
154
145
242
286
244
210
230
158
207
239
211
196
214
211
235
234
175
230
187
194
187
235
226
204
247
201
239
153
221
238
164
202
167
258
180
147
203
183
233
235
221
210
214
257
212
215
224
195
208
215
187
226
195
170
227
240
237
209
156
190
225
213
140
210
259
148
261
204
218
194
165
212
262
157
173
197
177
183
125
243
204
156
165
232
198
151
199
164
212
159
170
206
167
193
224
142
165
210
142
188
220
226
184
191
194
208
196
185
254
266
250
174
189
170
259
209
194
151
240
232
180
204
203
214
238
248
220
163
191
199
225
217
203
143
151
230
181
226
182
127
216
182
214
230
204
266
230
169
181
239
224
149
158
188
213
190
237
169
171
215
244
103
178
182
177
194
219
163
171
185
187
202
206
236
223
237
184
202
266
211
237
222
205
220
196
252
144
179
197
250
218
212
178
266
250
224
232
208
163
212
225
212
137
175
183
194
182
227
239
184
233
186
155
196
215
198
212
201
240
211
180
171
225
189
172
175
194
182
164
204
208
177
257
211
233
227
238
178
248
250
237
200
137
245
218
292
152
177
211
154
204
180
198
133
152
178
164
206
163
197
172
167
148
188
224
165
209
177
201
222
185
191
215
176
122
192
158
164
202
218
173
128
216
217
158
247
219
152
196
263
192
181
230
208
146
166
129
177
198
273
203
178
189
148
155
193
146
194
215
149
190
139
181
210
247
224
239
190
241
193
147
249
204
88
173
197
157
133
178
288
202
191
136
115
231
224
203
195
221
171
226
242
125
239
205
204
177
148
188
188
176
239
201
223
223
219
274
166
242
178
175
210
181
198
187
228
209
164
208
234
163
156
226
160
142
259
211
186
165
235
194
286
212
258
209
250
181
247
225
172
179
237
228
189
137
227
177
171
233
205
225
234
263
169
203
212
226
181
269
192
243
212
182
161
299
132
145
200
143
150
103
179
238
204
260
194
212
225
179
122
127
269
223
207
137
150
96
202
256
210
241
204
179
205
226
198
210
186
247
247
236
231
206
207
183
209
206
197
164
149
172
238
243
166
196
172
188
195
221
191
107
247
230
211
218
137
245
210
252
126
189
140
169
212
220
138
216
254
161
270
237
175
228
220
181
189
253
209
209
211
222
231
159
171
132
216
205
202
154
193
242
175
269
220
209
157
245
149
213
269
230
75
165
178
207
187
218
124
208
147
229
201
180
194
201
193
176
224
197
135
264
229
141
241
209
129
160
168
235
164
179
200
133
208
139
142
182
233
138
199
237
169
184
204
204
256
212
209
219
164
162
272
194
200
193
186
251
207
236
178
133
204
241
204
242
198
174
201
154
208
209
193
194
207
242
215
229
238
206
154
199
176
144
211
253
156
279
218
185
221
269
246
222
189
192
224
209
204
151
121
178
170
190
195
223
192
214
247
209
192
181
196
245
209
223
180
196
236
184
216
229
169
175
223
200
168
152
196
239
170
158
245
153
181
229
189
181
237
225
183
268
238
163
255
233
234
189
133
195
219
214
263
212
148
164
229
159
267
243
198
205
219
208
189
202
205
237
254
165
199
238
224
243
143
224
233
166
243
166
203
251
248
234
131
186
170
189
174
168
206
148
216
209
261
207
214
206
182
167
175
230
222
189
204
215
187
172
202
257
217
184
205
238
213
233
227
136
187
214
195
154
196
180
214
164
245
223
237
182
228
185
216
218
91
226
216
123
199
126
201
160
218
219
206
280
216
223
184
177
196
236
202
204
190
132
157
222
234
199
211
238
186
195
259
211
172
165
211
185
176
195
199
213
163
225
204
210
165
238
186
205
247
156
182
181
199
202
205
216
160
173
214
232
206
201
156
219
247
161
165
126
204
233
140
173
180
224
166
220
158
255
215
210
165
200
166
179
185
233
215
227
150
187
201
170
168
135
211
233
168
174
184
161
254
193
146
160
205
202
234
189
192
203
189
195
218
261
250
233
209
198
239
215
199
271
195
186
246
179
137
190
175
218
228
210
263
155
259
171
145
264
105
232
134
189
231
155
217
192
242
210
210
174
265
179
151
175
197
252
229
224
195
231
212
208
177
170
222
150
241
228
179
239
240
172
218
221
213
209
172
185
136
204
270
181
218
193
179
174
215
223
176
182
186
214
166
179
200
216
180
214
248
227
283
272
196
246
185
178
151
203
155
181
225
112
196
200
166
157
206
235
158
165
173
252
205
196
177
242
160
186
222
186
204
245
169
169
179
216
155
181
177
210
240
198
248
223
206
216
238
229
218
161
218
213
241
248
162
221
164
151
243
141
199
132
141
258
176
179
150
226
209
189
251
227
230
239
231
211
210
208
262
194
184
234
141
233
201
226
209
149
142
190
182
205
244
230
213
209
188
205
172
205
159
223
184
257
193
211
215
166
256
259
267
179
200
199
219
192
179
187
236
194
155
147
197
219
232
259
160
150
119
207
222
187
196
166
183
183
262
177
184
165
225
182
196
218
205
224
225
177
214
156
163
160
264
179
235
241
156
160
178
255
209
237
203
202
203
232
200
201
246
244
175
138
191
251
190
164
200
252
221
182
205
218
146
184
105
229
205
260
173
176
207
211
241
272
296
145
219
177
152
236
165
145
204
206
149
245
168
157
207
187
197
163
227
213
252
157
179
209
145
216
205
209
187
165
191
204
169
206
139
154
229
208
140
187
210
240
158
228
247
176
253
215
216
174
207
187
212
265
174
191
243
244
236
246
196
106
163
152
196
242
237
192
211
200
185
191
201
224
181
232
228
183
248
159
247
234
191
158
194
211
220
176
232
260
203
225
173
151
214
243
186
176
246
181
217
139
213
256
168
207
190
208
213
171
192
239
204
162
265
182
190
152
199
185
177
174
199
202
205
233
261
259
194
255
263
196
199
257
224
190
185
248
249
217
200
201
224
235
190
172
198
177
179
260
275
178
270
200
209
224
180
254
172
226
240
203
211
190
257
257
178
229
203
276
255
217
221
199
193
169
190
182
196
253
175
221
191
199
204
196
156
104
223
151
179
241
256
216
247
186
179
184
239
196
180
182
155
227
212
230
182
239
209
160
203
203
195
224
207
258
189
171
190
213
222
177
204
142
114
170
159
201
198
203
182
217
222
230
176
187
159
148
194
167
188
180
227
192
207
142
237
233
216
159
210
169
212
202
130
203
201
186
246
209
187
125
214
228
185
233
186
194
187
178
207
215
220
250
284
208
230
226
220
227
170
209
201
239
127
182
143
208
212
202
229
155
200
232
171
189
192
212
203
133
130
161
197
211
188
242
210
206
154
226
188
268
263
232
271
228
202
182
202
187
190
176
144
209
128
237
246
180
250
207
197
135
220
179
196
220
161
201
228
222
246
252
194
194
169
199
207
229
167
212
232
230
185
274
240
174
161
172
215
234
204
213
150
165
244
235
200
244
201
247
190
197
176
201
205
186
206
183
210
220
203
247
216
219
184
222
136
157
211
161
250
161
204
189
198
224
168
167
239
218
156
160
242
163
194
205
238
241
175
201
226
245
223
181
144
215
213
272
217
126
199
161
185
178
230
156
198
207
207
221
173
187
246
194
171
189
204
251
246
182
215
173
241
247
193
152
133
189
204
238
173
179
230
144
221
216
150
179
173
168
196
215
222
203
164
235
177
220
148
221
216
246
140
216
229
196
204
168
167
216
269
191
174
233
137
205
252
212
210
176
210
196
156
168
187
203
177
207
201
208
196
201
170
192
214
183
230
189
156
201
189
187
176
188
151
193
182
242
154
186
188
211
193
223
224
221
186
158
164
190
109
257
209
202
177
236
197
170
261
227
240
143
217
238
220
246
195
201
240
259
227
272
241
177
180
173
204
209
178
186
255
136
193
210
214
203
223
215
212
202
184
187
223
128
222
204
182
228
171
240
212
166
288
259
134
187
185
186
206
142
158
123
235
246
159
174
209
198
314
160
225
161
207
195
238
213
208
212
193
129
256
231
183
204
199
218
258
165
263
182
179
184
216
185
182
214
228
203
198
188
187
207
233
186
208
191
196
265
151
191
172
226
210
156
166
136
202
234
228
215
155
224
211
141
249
211
182
211
177
244
150
201
213
165
128
189
188
169
128
174
245
231
235
235
135
221
235
211
151
235
188
220
244
216
179
174
189
223
211
236
215
162
235
212
200
224
163
236
160
225
167
252
183
229
227
186
227
245
175
242
244
149
184
141
177
167
195
232
167
247
167
198
184
164
206
195
170
193
239
242
126
171
168
140
194
200
235
198
181
173
187
200
125
181
234
237
201
234
139
215
240
197
179
223
195
192
219
204
209
209
212
131
233
173
177
189
228
215
200
237
275
212
204
191
194
217
221
193
185
187
176
179
216
174
220
154
209
248
222
174
141
208
224
258
203
252
158
178
258
247
175
230
146
207
199
232
223
166
246
220
202
200
193
211
217
227
249
253
202
175
200
258
192
202
186
140
149
158
251
245
169
206
236
227
136
177
263
199
255
253
276
172
263
247
172
212
210
177
184
173
264
258
195
200
161
189
253
213
163
223
184
176
233
191
241
225
186
193
221
196
201
188
233
254
178
210
196
193
145
225
180
241
203
177
255
229
197
172
203
189
172
161
249
207
226
217
222
197
200
195
194
230
187
229
144
170
152
168
227
213
247
212
260
167
172
228
200
188
139
217
176
160
162
237
247
166
217
247
194
196
206
212
190
181
233
209
223
183
251
235
224
276
222
187
236
215
195
198
239
180
203
160
162
186
195
291
260
140
196
147
187
205
217
161
184
187
226
180
160
202
202
269
196
233
173
202
219
177
247
236
189
212
251
215
212
176
201
198
178
185
164
196
183
117
149
193
172
149
175
223
142
202
186
243
134
205
240
239
220
201
254
140
234
191
154
207
258
203
210
209
160
222
197
176
185
224
138
126
169
173
176
180
129
188
167
166
261
175
175
227
200
182
186
182
202
205
264
239
258
193
188
201
186
183
225
284
156
167
203
158
177
113
151
177
186
241
238
151
222
175
226
224
188
189
180
209
196
159
190
199
192
201
178
167
157
172
167
186
243
204
208
215
260
229
300
188
205
163
215
206
197
173
180
213
191
210
267
156
193
275
208
259
229
187
190
143
225
181
209
179
242
153
162
187
218
248
147
228
197
216
210
160
121
212
158
234
224
207
232
198
216
194
140
231
177
202
190
105
239
152
214
155
178
237
175
187
250
215
218
197
157
197
221
201
243
143
194
171
202
213
214
252
234
212
253
226
218
226
205
211
179
209
178
172
201
186
234
152
221
223
194
236
204
196
196
156
145
227
219
232
202
199
142
211
151
219
190
177
218
195
242
143
208
167
259
200
157
237
188
191
182
188
227
139
206
108
278
110
203
170
219
248
177
241
248
221
224
200
213
194
252
244
194
173
215
250
192
233
190
221
191
236
260
221
231
195
226
139
212
191
189
185
254
238
220
182
205
115
113
200
250
206
160
231
173
238
223
207
217
242
157
229
205
196
274
171
225
196
219
215
220
192
189
218
144
218
177
177
224
214
157
173
220
218
157
199
190
179
195
226
183
260
198
196
194
220
134
217
237
170
152
189
226
238
185
218
179
243
225
189
253
149
241
171
170
229
241
185
187
192
151
176
218
220
248
214
247
212
219
168
189
213
200
206
168
235
195
166
242
196
208
171
190
197
231
207
159
162
159
193
186
287
229
217
179
184
179
207
220
155
243
255
217
207
211
222
257
238
172
229
119
229
239
163
247
202
180
208
189
119
221
190
205
174
227
235
167
119
194
209
212
193
158
212
228
139
205
148
174
187
235
180
133
196
246
171
282
235
178
223
210
160
182
188
215
163
238
206
247
154
179
191
208
208
177
274
269
189
185
186
229
224
224
191
141
175
181
184
204
247
278
145
233
232
267
184
209
131
189
236
217
202
230
217
229
211
245
248
199
230
222
239
250
199
240
198
150
262
246
201
216
202
214
153
213
232
244
148
111
174
182
142
220
211
195
224
225
201
144
224
233
190
180
150
183
200
223
191
186
251
197
187
220
220
209
218
156
184
205
195
183
228
236
230
213
229
222
150
270
200
162
230
221
193
138
262
243
144
183
182
216
131
228
186
207
212
166
225
231
231
210
246
159
257
162
207
166
245
231
233
232
143
250
170
173
207
184
200
198
233
204
232
206
227
121
213
223
182
216
174
202
219
259
179
176
216
121
205
159
270
130
200
180
184
205
161
172
252
136
217
154
261
174
243
234
158
166
171
152
240
279
192
174
234
239
214
172
156
128
165
203
273
234
177
173
210
132
201
270
248
144
152
238
152
251
122
241
225
207
195
156
186
190
248
230
233
206
179
187
169
166
216
239
189
242
212
235
257
229
218
216
151
229
159
206
251
182
198
149
212
181
196
239
213
146
189
239
256
214
232
243
276
169
204
148
218
198
210
205
262
163
198
209
179
179
195
174
117
163
268
195
122
215
179
206
220
201
213
229
187
249
153
233
162
229
221
193
159
245
146
202
220
222
217
197
211
223
243
192
124
240
165
204
231
246
202
179
191
169
217
231
211
176
208
224
195
167
231
202
162
214
198
118
231
197
211
270
209
173
213
248
251
230
261
207
184
131
192
191
160
224
203
170
216
201
235
186
189
120
218
165
225
201
190
253
177
212
132
187
213
220
258
211
236
204
183
174
182
229
148
206
252
136
174
167
208
230
191
214
264
183
167
194
164
218
170
181
235
182
204
223
165
224
197
208
202
140
169
192
244
242
181
224
246
189
250
204
182
137
202
198
162
192
169
202
211
217
231
164
154
212
161
209
209
251
241
204
213
206
190
220
160
252
228
213
238
157
180
221
187
237
150
168
174
205
182
182
178
200
247
210
231
199
193
232
157
197
207
144
204
205
185
193
143
202
174
122
223
237
203
166
227
160
238
226
268
206
213
223
161
255
202
267
251
164
205
224
181
203
203
208
189
198
203
175
210
190
190
237
206
183
272
204
175
108
194
240
182
198
192
170
247
204
166
182
192
189
181
213
197
150
167
222
220
143
155
180
233
211
224
195
245
202
173
216
241
183
163
266
189
205
204
228
254
241
168
149
218
153
195
232
229
140
201
178
173
207
184
188
122
214
174
191
189
180
239
167
236
202
187
263
194
191
189
156
187
189
223
205
223
242
165
204
223
240
190
189
173
135
182
218
133
163
216
226
243
171
212
251
149
184
232
204
214
229
255
218
190
198
217
250
160
184
191
242
177
228
176
139
217
176
190
185
197
213
189
157
212
233
198
159
188
213
172
157
262
204
210
236
223
216
178
209
213
231
221
215
189
229
148
200
122
190
223
179
244
247
150
188
191
128
168
227
185
201
212
202
229
176
174
175
202
221
223
164
207
179
265
246
245
245
183
196
258
200
247
188
165
226
175
203
210
186
154
179
160
189
245
243
161
244
254
228
244
200
186
159
160
197
181
121
232
163
218
115
168
180
190
163
244
193
220
179
202
149
175
216
239
244
213
195
248
205
173
226
190
221
197
173
207
184
203
189
208
253
186
248
179
195
212
162
185
240
205
184
155
264
176
175
189
233
204
195
201
235
241
219
175
197
176
171
198
225
227
177
244
246
160
146
133
255
211
214
215
231
242
161
246
135
156
122
221
220
211
183
198
155
157
227
148
170
202
166
229
241
206
188
205
191
253
237
222
176
253
200
176
198
176
196
243
187
194
142
188
227
157
207
160
182
237
212
211
171
178
172
208
213
180
210
166
246
140
186
189
210
167
198
231
210
156
132
203
161
211
262
188
247
226
209
168
228
187
179
269
203
222
215
143
212
203
219
157
217
154
174
215
227
153
192
162
127
279
202
91
219
169
229
238
175
169
234
243
212
188
156
223
249
270
235
231
214
178
193
185
207
156
212
167
227
240
205
164
202
229
196
210
204
202
186
188
255
207
287
176
200
177
219
189
241
218
213
213
162
247
206
187
220
220
189
169
223
203
201
228
240
227
225
235
217
194
229
138
185
220
228
189
208
180
158
196
204
250
221
210
237
229
181
191
140
180
184
226
209
213
218
224
199
201
141
213
150
194
211
196
234
167
127
230
173
261
209
152
234
178
192
215
226
196
201
238
224
228
200
252
241
236
222
142
267
211
309
250
139
201
138
241
169
156
189
194
204
186
139
220
274
160
213
220
226
249
222
221
212
184
157
238
209
201
160
207
174
219
145
180
217
122
143
163
158
206
213
187
174
193
172
140
186
129
177
203
142
233
194
148
225
189
251
220
148
168
194
227
94
194
165
190
181
171
203
160
234
204
175
250
213
179
171
263
178
187
191
225
198
176
207
182
206
157
192
217
203
190
183
153
194
249
156
149
157
183
194
212
208
226
208
201
205
174
203
155
251
126
180
135
236
223
148
246
200
214
240
188
191
159
233
246
99
169
197
232
170
190
243
240
198
165
222
200
162
177
190
207
165
214
166
167
171
204
211
158
177
183
186
200
160
235
228
179
180
174
240
213
200
138
162
204
174
264
236
233
211
160
209
237
193
131
220
225
221
146
174
134
174
239
192
232
220
247
176
222
188
206
121
254
238
179
209
221
138
146
217
193
244
116
234
157
248
192
168
168
257
170
250
178
232
190
202
146
238
204
183
151
142
125
256
181
186
143
226
232
227
213
234
244
178
203
238
224
243
216
157
198
143
183
161
180
229
206
185
195
282
188
248
180
217
212
217
184
164
255
204
220
228
177
252
165
198
217
186
203
184
186
209
228
151
182
218
215
189
230
247
203
185
134
237
268
265
215
187
204
194
137
202
206
167
210
189
232
191
169
172
223
244
201
172
151
185
204
215
189
200
215
272
180
203
168
246
202
224
231
207
214
186
183
255
194
201
237
145
272
163
244
212
261
213
141
255
225
188
246
255
128
169
231
184
171
234
199
155
204
182
182
137
208
181
245
218
222
195
189
195
239
161
218
212
184
214
207
180
198
246
240
188
206
227
263
152
188
227
236
199
223
210
233
245
170
184
191
162
210
260
234
172
218
210
140
215
218
129
177
231
197
172
230
154
187
183
208
234
240
213
190
214
140
109
218
198
206
192
166
136
206
166
183
208
194
188
178
259
256
187
250
216
166
148
213
227
194
233
216
237
170
207
181
266
186
227
149
152
151
194
198
237
274
135
172
229
169
184
212
200
268
230
177
224
174
204
224
223
193
231
176
231
219
110
143
153
236
193
227
189
225
187
173
178
215
198
169
228
165
256
249
246
188
134
205
188
206
226
205
207
255
215
224
193
188
152
172
228
244
204
171
224
135
196
182
176
231
204
224
182
212
200
180
256
166
185
190
212
219
253
171
227
242
203
220
176
171
180
214
199
188
213
161
264
196
156
243
232
154
175
215
83
183
183
221
126
221
222
203
162
209
226
198
193
155
166
238
170
237
223
165
245
167
256
167
285
162
218
208
157
175
202
209
234
242
235
198
242
240
228
215
212
235
231
252
104
226
104
242
194
150
232
189
207
147
184
226
179
140
212
218
200
171
187
210
241
239
207
173
225
172
203
245
181
194
172
255
200
153
162
205
189
164
201
172
191
232
230
155
242
190
193
178
201
229
162
223
225
249
173
139
207
234
196
238
212
176
231
136
187
216
212
207
243
244
173
188
232
230
182
204
179
208
228
229
271
203
217
153
220
205
179
175
173
142
241
207
197
196
160
166
207
244
234
221
178
236
168
192
208
148
236
227
179
143
133
225
212
241
192
175
214
219
227
170
221
161
195
163
179
165
221
252
224
181
258
248
201
205
242
241
164
278
223
135
136
231
195
169
205
201
207
287
262
230
154
220
198
209
169
156
165
192
256
225
227
203
165
190
207
206
237
182
234
240
158
224
199
202
220
202
219
139
239
209
163
213
152
174
166
175
184
181
207
235
182
196
272
158
190
243
240
200
203
202
188
151
182
204
212
227
141
246
224
200
151
173
228
246
231
212
223
234
219
176
181
178
165
219
219
193
231
216
204
214
243
211
179
253
164
189
155
208
213
217
202
222
186
163
201
269
208
196
171
135
218
228
191
225
188
200
217
178
179
240
180
251
224
161
200
221
173
202
218
193
199
215
186
215
225
223
172
164
210
188
220
223
224
235
243
180
185
211
184
131
147
231
191
200
194
232
245
213
219
216
183
208
214
154
172
175
184
201
202
208
209
161
226
227
226
227
230
215
199
147
171
150
177
203
212
244
205
159
235
202
140
200
174
207
171
234
161
232
229
194
118
231
242
182
231
213
222
236
232
230
160
214
249
228
217
200
260
220
214
204
237
193
200
181
228
217
224
248
245
218
216
202
278
207
157
242
155
209
155
183
172
236
226
190
197
265
180
198
178
239
241
222
151
224
251
114
166
281
179
194
294
208
219
200
243
201
198
248
147
220
185
160
257
186
188
277
170
197
226
230
156
203
167
222
168
218
200
199
268
263
171
186
221
192
176
189
182
215
226
233
196
194
232
140
193
249
206
202
126
276
161
214
263
228
185
199
149
149
216
217
173
244
233
240
208
224
246
172
183
286
239
213
235
121
201
210
156
211
183
180
211
140
236
220
247
204
182
160
220
240
237
240
194
203
256
226
125
171
196
159
221
211
199
252
177
239
193
188
187
130
214
217
221
270
145
213
212
247
154
242
199
147
229
199
201
166
201
201
237
248
235
208
218
223
208
199
163
241
195
162
218
213
220
252
161
199
209
260
164
218
244
86
229
185
170
228
172
184
221
190
246
213
225
176
192
187
196
141
231
192
219
199
138
238
192
182
248
259
201
253
209
165
255
181
199
251
233
221
181
226
189
206
175
210
234
167
190
172
208
213
128
190
273
240
255
226
217
166
202
257
189
206
186
188
234
156
232
188
253
177
257
239
194
222
218
222
239
174
224
200
269
262
200
143
165
157
223
254
224
171
196
213
162
191
200
246
192
199
144
231
187
220
214
227
239
222
198
234
212
158
251
199
268
204
181
236
200
230
175
228
141
195
184
216
209
139
199
187
235
139
235
198
196
154
247
204
122
122
194
162
204
164
167
173
178
178
205
194
227
158
227
220
236
188
220
215
162
172
177
147
212
142
251
233
197
210
237
163
235
272
210
213
199
260
181
243
206
162
236
186
189
154
168
203
215
209
156
197
194
163
197
207
150
243
181
201
223
227
222
247
242
228
179
218
211
217
189
201
163
131
198
145
167
170
212
168
170
235
137
191
190
221
276
113
264
173
218
183
199
202
240
198
257
160
220
205
179
174
244
187
220
228
194
125
158
149
209
205
165
234
211
188
198
125
157
175
199
214
229
182
190
183
211
210
175
170
191
226
166
249
189
184
198
175
264
171
242
215
251
207
186
228
226
205
233
154
198
152
152
259
214
186
227
211
215
186
286
217
249
190
203
159
212
183
193
169
172
183
201
151
226
223
172
241
124
179
133
156
194
143
186
258
140
146
161
212
189
177
158
238
223
258
193
225
155
184
196
199
156
170
219
168
160
216
249
204
220
245
197
207
259
192
180
209
200
212
142
212
176
194
260
145
242
185
173
214
221
226
223
227
216
192
229
215
158
164
195
205
176
197
199
209
195
273
190
183
191
233
198
153
232
187
262
201
192
199
172
181
177
178
212
244
237
177
179
189
140
198
199
205
254
91
237
239
183
167
218
233
248
193
144
165
162
158
241
195
224
251
205
154
229
191
181
167
171
241
218
221
176
216
157
199
171
191
209
209
248
231
227
164
181
188
158
190
193
187
176
199
189
185
189
209
189
155
149
227
199
160
214
235
188
164
194
164
216
212
205
154
246
217
199
217
146
215
213
121
176
186
184
214
174
205
191
214
200
210
176
181
226
210
230
169
161
234
159
210
250
218
214
216
170
231
152
196
122
194
204
206
160
233
208
203
185
126
190
161
260
156
194
188
189
179
151
174
222
144
258
172
179
234
220
187
251
214
238
202
222
171
222
226
205
218
214
215
141
200
228
224
207
219
189
190
199
154
249
246
131
173
257
251
203
198
189
231
179
232
223
179
224
268
195
180
233
264
278
148
189
216
227
214
200
240
149
227
259
173
149
201
227
248
154
167
193
216
266
191
175
149
230
211
185
229
220
170
188
171
167
191
211
206
237
207
176
202
237
214
211
164
229
215
157
202
231
206
210
217
185
206
142
155
182
234
216
157
207
164
202
221
185
221
202
208
205
149
245
201
215
242
174
186
197
224
181
114
243
165
194
174
242
243
142
169
208
146
250
128
208
244
195
132
173
167
211
225
240
165
155
167
206
174
197
233
181
227
211
211
191
161
196
259
200
198
217
218
149
225
166
186
261
254
198
207
219
189
223
208
238
126
244
117
240
204
267
201
207
157
180
200
242
165
170
185
262
233
165
174
203
197
174
204
222
251
150
231
159
219
173
212
208
213
177
195
144
175
194
223
129
172
213
167
167
242
181
130
252
258
215
248
193
236
228
184
246
161
204
232
232
191
162
147
207
218
186
119
227
189
183
237
219
227
180
189
215
208
249
208
187
189
191
111
252
219
200
94
198
194
138
242
172
182
209
177
205
158
210
225
273
227
148
214
149
207
215
172
225
205
211
214
216
216
239
195
225
221
213
182
216
150
200
262
161
232
204
219
146
161
186
230
212
166
203
216
168
248
237
159
222
270
177
173
218
259
207
164
181
205
163
165
154
214
173
207
148
176
210
187
156
188
198
206
228
186
226
235
233
133
219
211
237
220
185
216
207
246
163
177
239
224
137
166
205
250
259
225
203
179
235
253
218
202
158
189
186
201
239
193
209
255
186
155
197
157
252
249
187
188
179
189
201
173
217
263
153
164
231
184
195
166
239
204
177
182
215
119
225
187
185
248
204
218
211
224
224
176
192
239
238
230
150
229
223
204
187
167
199
172
227
172
211
249
214
238
229
178
173
171
209
174
189
175
191
174
161
170
192
163
226
152
216
176
136
212
225
213
152
198
234
221
185
178
182
233
141
179
198
222
177
241
240
181
249
274
175
194
238
230
170
215
219
165
228
208
136
192
180
198
193
192
202
207
248
231
192
224
177
213
228
188
193
230
182
272
233
249
162
184
176
212
219
166
199
194
203
156
152
229
182
204
171
208
229
207
227
260
198
219
188
226
194
186
152
168
225
211
194
181
274
135
241
215
158
116
177
234
241
233
218
257
237
252
221
241
179
182
245
215
214
209
220
160
248
111
158
226
215
211
221
222
215
235
212
169
238
238
159
152
175
188
244
199
150
189
169
254
157
173
185
225
265
194
211
178
195
197
211
232
219
155
208
222
225
136
177
190
190
175
226
174
226
210
136
164
187
233
172
185
237
104
153
235
194
266
186
222
169
209
168
192
151
198
167
174
213
157
172
196
242
256
196
184
247
230
197
170
213
221
238
197
212
189
148
235
246
172
115
186
211
201
217
137
211
210
219
172
153
181
185
193
180
245
160
231
243
183
137
219
233
197
194
230
238
117
200
220
235
229
210
179
256
232
204
192
219
215
209
212
236
212
189
246
233
197
162
215
228
194
227
199
235
211
204
174
219
194
273
195
270
241
256
256
187
233
157
165
189
223
204
229
177
212
272
131
177
228
174
231
261
270
207
208
223
218
248
214
179
184
264
212
219
203
185
188
235
182
194
188
232
227
165
258
183
248
218
108
278
177
182
223
179
170
246
204
107
210
146
222
275
145
197
210
225
233
122
205
179
196
226
186
93
188
229
223
196
210
237
202
196
167
232
230
220
227
205
202
177
218
260
192
159
254
208
219
245
177
136
217
176
234
183
200
170
239
220
275
205
157
204
208
220
210
175
206
198
122
161
197
206
210
169
121
254
154
206
203
195
234
196
252
231
232
201
171
177
157
215
177
244
174
173
169
230
235
180
195
243
204
178
206
190
166
241
213
201
144
172
160
207
183
189
240
219
256
243
182
173
227
169
154
180
288
219
198
228
167
290
179
167
208
220
212
194
182
225
171
171
167
160
224
177
194
206
170
167
229
243
229
221
158
228
224
191
230
238
227
186
261
204
123
223
178
189
186
177
231
231
238
218
216
239
236
217
214
170
194
166
232
235
196
187
226
195
231
191
239
257
253
198
198
172
174
186
154
187
151
207
202
179
169
165
181
215
187
230
152
157
175
189
236
183
179
141
190
300
171
232
191
170
183
229
160
206
220
168
190
198
237
232
215
140
158
205
165
76
170
150
142
206
187
239
241
208
187
189
213
163
252
204
222
221
190
159
156
237
203
190
252
219
153
223
157
185
204
234
253
166
182
159
185
210
174
127
148
256
145
192
215
184
195
202
254
262
195
221
213
227
193
207
103
166
270
203
237
234
241
132
153
181
244
251
191
177
228
194
137
142
176
159
170
161
199
203
153
155
222
230
169
202
176
221
206
205
169
231
195
215
217
193
281
240
184
195
198
261
170
151
178
124
213
179
241
200
198
172
195
223
199
230
229
189
167
220
169
148
178
153
249
184
177
235
239
230
256
181
241
203
192
234
244
176
177
181
218
245
217
167
190
155
217
187
203
157
239
231
233
281
190
234
218
172
247
165
216
229
219
141
224
164
157
267
226
187
192
125
114
162
174
224
187
222
188
165
210
219
254
210
188
226
154
138
250
198
204
226
216
261
206
277
232
170
189
256
200
132
207
245
170
168
141
185
202
221
156
262
182
175
192
204
219
221
177
265
170
202
188
164
193
245
163
188
218
177
195
159
198
221
200
246
135
240
199
166
208
162
146
179
183
164
216
146
197
188
222
177
163
205
257
187
208
200
218
225
257
175
190
218
227
84
182
221
250
185
162
252
186
180
209
135
149
165
185
180
278
244
140
189
190
149
253
173
175
231
250
184
189
183
167
231
199
243
223
158
209
165
212
199
148
236
234
141
168
174
212
189
204
178
224
192
238
187
167
204
213
192
162
207
225
193
225
185
202
269
210
261
204
178
198
248
184
118
171
241
129
246
210
188
194
155
188
250
227
174
253
229
176
233
195
173
226
178
196
212
172
216
258
203
205
211
191
218
205
231
226
144
248
160
209
148
158
214
207
158
236
121
189
209
194
235
231
167
176
183
158
223
232
191
238
201
237
216
219
150
235
194
186
178
217
228
225
216
215
260
147
212
222
177
208
230
168
161
138
149
178
211
214
189
196
154
162
213
209
184
189
186
229
182
170
212
209
259
213
200
226
195
231
234
190
168
204
185
160
220
179
212
252
204
219
197
146
202
152
183
224
193
166
185
139
165
184
180
210
203
165
241
165
148
232
135
158
250
223
236
213
238
189
227
155
243
205
215
210
206
169
220
219
192
207
295
164
226
169
193
236
215
245
219
144
223
140
179
237
159
201
211
152
192
203
268
205
218
219
152
158
220
186
228
177
179
226
172
198
195
205
218
219
227
204
243
262
223
242
189
196
145
186
196
200
211
148
192
191
225
138
160
236
186
231
194
185
217
232
194
162
260
230
275
184
201
185
218
122
215
168
222
229
148
142
237
225
195
192
174
157
274
172
230
257
206
267
246
147
224
198
199
181
156
180
198
192
210
274
231
207
185
114
207
167
205
215
215
233
215
151
210
215
180
209
157
203
239
186
213
230
163
190
170
211
141
218
211
244
188
123
128
228
185
178
183
140
227
226
208
186
240
167
262
204
207
114
176
226
220
190
209
184
144
188
237
245
231
141
208
248
220
195
248
272
227
183
191
235
171
224
225
191
234
195
173
207
225
234
225
197
198
261
175
203
194
151
223
197
220
248
201
234
244
165
208
194
244
217
154
153
268
228
214
167
168
263
160
200
235
171
226
201
210
261
221
176
198
196
179
238
217
168
196
159
175
207
150
202
251
184
187
221
170
185
150
218
209
200
220
158
158
216
224
171
240
130
193
209
183
184
213
144
201
196
259
157
181
121
105
155
123
187
182
178
190
183
192
178
199
161
186
204
227
141
235
255
188
232
195
253
225
202
148
271
246
252
206
277
233
205
156
209
236
225
180
224
239
104
142
170
96
244
179
261
155
254
216
234
133
205
246
152
205
115
189
185
175
159
246
281
205
217
236
194
219
157
208
199
177
209
170
207
256
145
240
204
181
203
205
172
169
197
222
250
232
253
186
173
213
267
196
127
241
148
222
261
169
159
119
252
215
188
169
194
227
260
228
113
217
190
203
156
218
225
223
187
147
213
215
189
196
236
253
236
230
185
198
224
180
204
180
223
252
216
212
161
203
249
225
214
204
199
176
163
178
213
172
217
177
206
211
223
213
186
189
184
175
231
158
173
173
265
227
232
228
230
180
187
248
225
126
235
267
169
153
190
187
222
266
205
248
215
161
190
157
175
216
178
148
236
178
203
166
223
189
224
184
229
223
188
179
169
186
141
219
199
211
209
177
197
170
203
182
152
125
253
199
178
210
228
188
221
214
220
220
241
228
166
199
243
226
213
218
135
206
182
200
218
263
187
214
192
177
149
222
212
193
181
201
215
157
218
230
135
177
260
173
181
216
206
240
179
182
194
198
192
268
217
204
162
185
201
207
212
204
155
218
213
176
173
212
224
166
181
168
246
237
185
202
192
171
208
190
220
243
204
215
217
236
196
245
194
207
148
178
194
254
154
179
228
223
211
157
248
229
207
158
228
209
172
192
217
229
140
177
193
211
163
188
163
226
182
166
209
179
158
228
195
194
190
180
203
209
174
168
218
175
126
157
265
211
153
199
220
257
212
225
173
181
142
234
207
226
258
226
240
197
178
165
159
155
245
243
233
206
230
223
194
170
123
177
164
231
210
180
209
207
211
217
196
189
232
162
180
204
258
251
138
180
268
168
204
179
150
255
240
247
148
248
221
268
204
227
209
217
202
159
243
174
204
213
222
198
209
185
224
186
215
188
244
216
206
202
167
161
183
220
179
170
211
144
235
209
194
229
238
207
155
222
216
187
194
207
231
164
253
254
144
197
133
232
172
172
214
260
195
185
268
223
226
205
148
174
174
177
205
247
170
202
171
262
223
213
169
204
186
178
174
178
160
153
212
210
129
178
241
213
250
175
116
192
229
109
212
185
178
202
199
225
199
245
247
233
169
204
214
193
206
194
202
196
201
173
173
204
215
269
216
173
163
238
168
188
196
196
241
199
224
188
241
204
185
208
179
229
156
189
216
186
258
213
209
209
113
178
154
226
199
226
154
231
206
189
211
215
164
202
177
215
218
130
206
203
201
207
146
215
196
171
173
218
277
194
265
177
187
210
199
147
205
232
187
172
214
192
238
271
173
250
189
158
201
228
215
208
256
181
179
177
185
218
206
160
202
205
227
230
177
232
249
239
200
186
162
192
221
236
164
178
189
170
209
216
126
184
225
211
176
208
193
178
200
191
228
240
166
160
218
230
230
189
186
198
193
255
201
266
249
207
160
211
196
121
200
174
172
246
220
214
220
233
204
168
193
207
229
186
223
166
187
226
154
196
226
222
146
187
163
227
211
170
249
183
230
213
158
234
225
200
200
193
178
219
256
228
232
162
221
250
186
199
217
205
224
227
219
218
260
168
147
167
184
204
176
219
203
225
259
168
248
201
244
206
210
205
162
222
219
152
246
230
225
211
182
247
212
242
121
119
204
230
179
221
207
196
185
184
166
215
265
194
231
237
248
221
161
198
234
187
136
270
210
203
204
205
198
196
250
252
176
122
220
220
232
202
218
202
263
219
198
227
170
214
233
256
225
219
150
156
219
208
238
190
214
155
220
206
195
134
189
195
239
169
228
188
207
236
229
161
143
263
241
204
190
211
225
230
234
151
217
238
195
207
155
156
241
167
171
222
222
229
190
227
204
215
247
179
161
216
218
178
200
222
225
194
184
164
154
228
219
241
193
170
191
196
178
229
260
210
233
191
175
239
212
190
153
168
203
165
173
160
195
239
137
160
222
164
251
121
193
249
223
173
155
211
195
188
134
201
143
238
139
128
212
257
219
200
261
184
217
168
178
231
223
259
122
143
176
239
159
192
182
171
152
168
195
238
272
238
178
195
149
203
150
249
188
209
193
209
183
227
159
223
207
151
237
300
173
182
205
153
198
181
191
264
196
154
172
214
183
171
201
196
184
169
296
174
235
184
180
203
258
228
193
174
237
196
135
159
185
195
142
206
217
230
167
142
228
174
189
214
246
235
113
204
176
199
190
210
205
176
190
155
220
199
230
194
220
196
200
196
204
244
257
199
161
155
229
183
180
208
202
186
121
196
186
211
181
224
162
220
228
109
220
228
208
135
201
238
175
190
242
226
263
149
141
251
221
192
216
168
75
195
204
208
203
192
226
222
224
198
197
194
218
188
241
255
202
140
242
237
246
215
183
248
214
192
181
202
229
219
167
267
168
169
157
224
221
264
151
228
201
222
168
207
223
236
231
194
151
210
223
228
230
172
185
201
189
191
227
213
196
197
214
184
237
125
214
206
171
177
207
186
229
191
244
211
179
226
220
181
220
217
192
207
253
226
247
173
187
192
176
201
240
274
178
190
192
237
197
178
250
153
230
159
226
170
237
203
191
169
150
179
210
170
139
172
207
204
138
186
166
221
177
226
233
269
178
165
182
190
132
221
179
264
169
158
163
209
241
190
175
191
170
209
234
259
192
233
154
125
170
201
154
199
214
179
227
213
141
201
205
210
212
199
186
209
191
181
156
172
194
211
136
170
200
269
180
222
180
253
155
193
252
186
229
240
180
211
197
244
178
248
148
171
166
216
239
185
179
267
226
212
177
160
203
186
176
157
161
210
178
189
229
249
172
165
168
256
187
236
160
237
121
188
271
201
242
192
252
212
208
257
211
203
184
273
155
250
219
232
188
218
203
214
207
258
209
111
260
234
201
221
192
184
220
222
199
216
233
197
209
217
194
181
215
190
228
170
197
217
190
225
250
175
188
140
210
229
215
167
194
257
234
272
237
165
222
238
181
149
207
259
205
170
213
203
252
212
168
218
181
211
177
119
211
188
208
229
255
214
211
200
198
237
196
194
188
178
240
224
216
189
212
221
170
238
212
176
171
191
153
126
238
179
230
269
170
229
240
269
156
174
182
155
161
224
209
161
203
169
216
175
169
191
220
216
189
212
238
210
233
230
170
226
283
230
215
241
231
155
253
225
240
238
221
267
254
143
201
145
220
178
188
169
217
241
195
205
222
138
198
222
186
199
201
226
157
271
188
224
190
222
157
164
251
263
185
192
219
223
253
205
241
161
199
219
220
232
180
195
252
123
192
189
218
184
231
210
188
197
168
213
238
236
260
146
218
183
169
184
200
199
231
230
253
221
181
226
203
225
182
261
203
219
201
172
169
265
141
223
173
156
194
239
213
238
224
228
194
245
225
218
161
206
193
224
271
177
246
198
177
170
215
169
179
252
163
220
207
199
224
180
162
226
147
210
221
204
224
118
165
192
237
217
234
173
195
228
243
191
207
197
212
230
178
166
187
208
221
205
210
191
173
165
143
241
152
235
221
235
182
207
198
182
248
180
242
203
216
200
143
241
217
208
211
228
233
192
153
200
213
202
168
211
224
122
227
165
194
235
161
285
181
170
228
195
216
235
229
193
298
176
203
179
222
223
225
251
236
241
242
245
215
225
214
154
177
227
187
180
184
171
243
201
253
185
196
156
210
271
214
205
171
205
264
227
178
209
196
163
150
256
270
283
172
174
213
179
213
225
251
218
231
206
202
188
192
256
168
139
215
216
168
289
240
201
227
183
218
202
222
258
220
184
148
220
201
202
165
158
131
218
178
148
213
219
165
177
201
210
198
215
215
180
258
208
166
218
218
244
178
189
206
264
201
145
210
157
215
240
201
131
233
215
141
178
211
236
185
117
194
193
217
240
149
214
194
165
172
214
261
213
230
187
174
213
239
200
219
229
189
202
212
231
226
217
227
167
158
174
205
175
142
235
202
180
159
171
199
259
212
253
233
235
189
214
221
203
224
202
149
174
217
194
192
194
205
244
186
224
229
168
215
186
179
172
210
199
171
217
252
159
179
237
227
201
229
153
231
185
191
152
186
164
197
180
201
187
176
158
194
196
175
133
182
190
201
195
236
239
175
241
213
168
213
229
196
200
198
223
244
187
216
221
217
226
183
161
221
205
192
208
166
208
121
161
181
198
269
145
217
179
242
207
137
242
209
205
188
223
107
201
203
199
209
217
226
252
150
214
229
192
233
204
184
179
231
148
218
192
244
195
146
197
224
128
220
241
184
228
245
191
205
161
218
220
205
192
234
127
153
241
259
185
200
212
222
215
217
167
128
204
194
171
199
187
215
187
204
190
236
251
170
205
276
210
191
165
188
178
175
264
171
176
206
218
129
256
220
232
195
169
247
163
177
153
212
257
258
182
214
172
213
208
268
243
241
235
215
221
118
208
165
236
222
256
206
179
203
178
172
216
198
234
261
170
190
191
179
189
209
173
232
165
218
232
142
218
218
206
150
200
279
206
221
161
179
185
233
202
167
194
262
153
224
158
140
163
187
254
175
167
156
225
201
202
219
208
186
209
152
222
228
213
123
193
182
198
217
204
186
231
258
177
111
166
168
189
155
221
235
136
260
208
231
215
273
226
210
215
221
225
190
205
265
179
237
262
195
220
174
148
224
191
200
212
236
224
226
241
220
282
157
192
271
261
184
242
210
202
188
131
175
185
166
253
202
226
227
189
209
224
211
177
246
177
189
184
216
221
196
230
201
164
277
220
196
183
171
178
265
207
180
226
196
229
239
193
211
200
149
190
261
204
198
185
186
211
192
118
260
204
203
168
231
205
230
194
155
210
210
169
219
187
263
197
190
219
236
202
167
218
185
226
233
219
238
261
244
234
224
259
231
190
148
192
205
216
245
125
215
204
152
225
243
101
166
189
173
159
139
240
212
141
230
167
174
153
116
211
255
256
261
205
213
238
197
183
185
218
146
219
222
195
201
209
203
246
200
210
229
223
161
216
135
152
248
192
190
266
201
150
146
226
225
237
237
223
161
252
199
113
211
149
193
213
173
177
196
205
197
227
230
248
181
201
185
258
223
220
196
254
177
174
162
209
264
199
165
140
222
173
215
194
168
236
126
151
142
132
181
135
197
161
185
167
245
198
150
179
209
167
220
172
115
214
203
135
211
146
155
189
215
249
218
149
249
186
168
181
210
213
180
159
215
194
220
235
183
124
213
203
225
195
163
199
255
143
308
192
270
135
224
203
161
209
187
196
252
202
175
211
205
214
177
142
240
187
218
213
152
240
192
206
231
228
212
210
197
234
190
128
216
137
242
203
175
253
229
282
210
227
156
162
194
223
229
226
237
199
185
227
194
181
237
199
199
195
220
218
242
178
236
220
151
164
160
242
202
222
201
193
193
161
238
138
132
202
237
193
249
227
170
216
212
250
228
216
236
188
232
192
175
188
215
226
167
292
180
182
197
210
134
136
205
232
198
198
185
181
233
255
183
164
205
156
241
244
197
195
248
223
78
203
262
216
166
211
211
180
155
247
172
216
218
213
193
228
253
200
200
160
207
168
204
216
164
227
253
198
188
243
172
172
197
266
264
191
241
230
218
221
243
257
200
222
218
205
163
222
206
193
137
189
121
204
244
213
105
235
249
172
213
127
206
172
185
188
217
160
234
226
236
123
216
223
194
207
235
202
164
161
217
200
268
157
167
166
214
225
179
191
205
168
150
241
161
187
216
193
194
250
171
219
168
185
245
213
209
249
180
199
200
175
202
169
162
190
204
145
194
223
159
246
247
183
185
146
116
219
142
221
169
199
214
217
180
185
194
205
228
235
224
205
194
124
225
264
258
219
230
160
178
225
146
239
162
249
252
144
218
241
135
193
216
230
201
141
201
250
156
218
166
214
189
246
205
218
138
227
160
211
222
291
203
208
155
195
238
201
247
233
168
234
213
251
205
172
149
239
144
163
190
215
215
151
240
254
262
217
151
170
199
210
235
227
195
190
228
177
192
167
185
219
217
232
193
237
230
177
167
163
172
204
244
218
179
197
195
194
228
242
146
158
194
182
235
218
192
260
223
135
191
207
146
211
186
219
264
205
230
193
153
212
230
203
243
219
178
209
263
148
175
169
177
144
223
176
185
194
196
226
161
207
225
196
249
139
183
198
262
231
253
220
145
205
191
190
157
204
132
112
133
245
186
247
206
170
200
184
235
210
212
139
196
202
229
220
211
184
209
139
276
181
222
163
175
200
146
169
208
228
178
205
241
281
218
194
167
234
213
180
198
200
215
193
205
226
221
210
238
188
288
236
200
178
197
225
146
202
219
232
217
246
167
142
200
189
208
193
227
188
160
175
184
241
205
191
266
200
152
210
229
157
212
227
140
122
240
230
177
221
235
175
156
180
133
180
249
186
241
165
241
232
221
217
212
215
210
215
221
278
240
269
209
162
230
156
225
224
185
225
195
177
173
146
232
240
194
147
233
221
152
243
322
143
167
275
196
174
183
136
161
155
137
207
222
200
204
136
210
175
223
231
185
133
212
111
173
176
270
139
220
204
182
164
176
194
220
173
206
257
216
220
215
175
159
226
165
162
187
204
174
231
225
205
208
229
185
201
205
202
147
208
202
182
202
194
204
199
204
197
185
84
143
208
267
150
244
163
188
190
225
150
234
194
267
170
203
197
187
171
169
228
199
180
225
162
224
191
261
154
194
161
190
239
211
183
206
206
241
214
164
184
221
180
220
219
223
263
208
187
163
210
235
233
231
195
191
183
241
198
237
170
154
176
249
259
185
177
249
187
140
237
231
179
221
222
109
198
187
233
194
207
205
232
174
190
267
179
231
208
163
221
190
145
215
203
203
237
233
206
193
152
216
202
154
221
274
208
227
228
282
210
216
182
234
199
220
159
239
241
199
211
193
181
203
238
172
184
248
200
176
234
219
193
160
221
180
216
151
182
149
170
272
257
236
228
218
173
209
169
217
150
154
180
179
248
223
183
174
224
208
154
230
167
266
189
212
211
259
255
134
226
199
196
179
175
208
220
113
217
239
187
152
212
203
181
195
203
245
175
220
238
218
177
185
124
236
137
248
188
180
188
186
199
179
242
238
217
238
241
220
166
209
179
181
198
191
191
226
195
167
244
235
154
230
160
240
208
157
233
178
252
223
222
170
219
176
253
214
232
225
181
160
171
193
228
141
203
233
162
169
181
235
243
182
178
210
222
212
180
206
198
199
223
222
238
159
170
223
146
230
158
202
236
182
204
145
253
172
152
233
209
159
230
189
200
166
166
216
151
175
141
218
219
251
157
182
196
192
265
210
147
179
178
208
193
195
229
213
270
196
200
251
239
239
204
252
170
147
260
242
189
224
166
225
186
175
194
227
140
182
229
186
225
246
243
222
191
236
132
217
148
191
181
180
248
190
236
173
219
194
256
154
192
163
194
163
201
219
210
200
208
219
210
245
229
222
163
233
205
224
213
144
215
255
150
150
237
168
158
179
166
218
205
262
146
221
217
220
211
248
193
185
213
179
200
215
145
226
256
248
221
194
246
167
218
204
212
187
170
173
155
219
178
191
212
205
230
125
204
233
140
197
208
197
220
188
137
246
238
207
213
163
165
170
199
227
196
198
154
171
193
118
228
235
133
209
281
195
150
230
277
178
204
209
178
172
190
199
193
209
206
200
206
199
183
214
225
175
190
218
180
244
235
271
190
207
202
179
181
133
234
259
252
254
202
235
176
194
244
164
193
160
225
202
206
235
138
256
191
237
225
221
266
223
167
177
122
243
230
258
199
231
233
193
201
202
211
196
175
207
227
209
196
214
231
224
223
208
200
240
190
282
215
198
215
185
175
250
191
222
217
198
155
219
190
162
155
166
203
232
177
179
185
145
193
188
151
270
179
253
155
139
215
181
189
160
249
212
248
268
198
188
147
193
185
207
168
198
165
168
175
216
228
226
209
188
238
167
126
201
168
213
251
198
185
194
210
185
210
229
226
139
229
178
223
198
231
164
178
149
202
207
208
235
227
178
209
139
186
221
200
210
245
264
163
169
144
200
203
213
100
202
205
205
163
211
256
216
278
221
188
193
216
246
202
167
215
245
232
212
169
161
221
193
212
222
231
259
204
198
218
206
153
235
165
179
216
198
205
254
192
230
197
171
208
175
199
190
223
228
164
196
247
205
134
213
176
197
143
176
211
248
207
231
181
260
241
173
179
212
181
236
218
193
142
166
227
154
225
213
254
198
224
203
182
190
199
208
187
204
226
214
212
179
173
221
218
258
174
239
183
207
217
100
243
181
160
182
225
117
180
217
219
171
125
197
167
197
134
205
190
162
220
131
192
240
213
239
200
180
182
218
242
242
200
172
203
231
213
227
243
260
166
161
169
230
204
166
214
223
217
169
258
215
180
236
189
257
213
184
225
253
206
225
216
105
123
216
249
152
183
194
193
243
176
217
200
204
172
194
189
202
194
261
206
231
190
238
193
248
221
196
214
200
194
196
198
198
206
223
244
240
152
171
211
191
193
250
159
262
242
180
209
222
186
193
187
180
221
115
205
218
171
239
259
158
242
231
169
196
179
88
186
227
164
216
238
246
220
254
195
223
223
155
110
158
141
150
210
187
141
180
185
204
160
185
141
153
198
170
212
181
200
210
278
141
194
238
223
193
231
188
205
199
208
219
226
197
237
203
217
158
212
202
228
213
208
178
198
220
194
180
150
176
210
250
225
221
197
183
202
216
172
194
175
178
239
170
178
226
186
187
245
218
224
172
146
224
200
182
240
170
180
254
190
216
184
134
230
131
204
182
267
231
207
208
152
177
231
242
172
165
145
229
235
223
221
185
177
115
212
218
212
199
223
189
207
180
199
248
224
137
194
227
248
154
244
209
145
122
207
193
224
178
218
191
202
205
259
146
249
209
244
152
248
210
120
254
167
196
182
218
202
217
178
215
170
198
192
182
234
184
200
184
199
197
191
163
142
205
116
154
172
259
224
214
248
194
175
152
189
186
147
149
147
198
219
223
191
203
187
227
217
244
205
265
235
203
212
258
229
249
252
132
193
200
180
167
192
174
226
243
245
177
204
218
230
236
195
175
195
183
178
238
183
221
151
206
173
157
164
205
218
206
210
204
155
210
115
245
211
167
175
196
177
197
174
177
179
148
220
183
130
213
235
143
233
236
213
247
234
184
267
225
206
222
218
234
175
180
181
183
249
217
239
193
184
167
271
180
213
262
263
183
178
212
213
206
214
204
171
226
215
155
175
233
192
242
176
171
176
144
164
114
186
175
177
237
172
222
243
188
226
184
197
242
139
139
171
206
188
190
221
225
203
173
207
218
171
155
136
190
146
225
245
171
216
193
248
200
232
210
201
202
228
190
226
203
193
173
181
162
150
192
216
217
146
247
158
202
175
169
203
204
234
148
195
185
220
207
193
203
234
217
175
177
180
203
217
205
173
185
187
192
199
236
101
241
200
171
190
177
197
213
202
184
139
234
183
244
222
199
258
223
192
202
201
238
183
272
174
253
254
209
240
259
236
190
184
148
201
154
197
170
203
218
263
210
200
236
198
171
278
196
199
200
226
216
192
199
177
179
244
169
214
273
160
210
168
219
214
151
205
183
205
212
237
135
255
217
244
185
225
239
247
156
172
157
190
258
242
179
234
138
208
252
106
111
213
198
231
182
223
259
263
161
136
236
233
222
191
152
250
230
214
172
219
188
180
252
219
139
172
157
215
209
227
178
204
240
205
205
234
138
171
192
231
221
156
210
128
154
176
201
205
179
103
233
254
219
174
198
238
210
205
144
220
220
184
184
252
201
189
225
244
226
222
161
237
198
148
118
183
218
230
216
173
173
191
229
229
202
154
174
174
162
203
170
147
173
123
179
179
176
218
220
163
224
260
206
163
198
220
178
165
173
142
137
177
188
181
212
224
177
228
216
172
218
216
199
150
206
234
256
185
173
222
181
168
208
228
237
204
219
188
233
197
97
220
169
186
201
234
243
264
196
167
190
172
201
282
161
170
175
197
161
194
171
163
202
198
184
239
269
245
177
202
232
144
132
170
190
204
206
271
237
217
255
160
228
199
247
213
228
224
194
247
180
219
242
226
214
186
197
190
184
197
259
160
212
110
189
182
264
264
132
201
217
205
171
267
179
207
165
232
170
193
238
200
198
215
220
215
192
187
174
219
229
216
209
223
181
192
228
148
180
222
145
158
188
223
196
241
117
204
193
227
203
222
215
201
220
220
164
240
185
213
170
233
221
182
203
218
216
170
204
195
225
256
226
163
193
190
171
159
185
207
247
202
186
158
207
220
238
184
221
189
208
196
186
189
238
183
201
216
220
223
173
237
186
247
151
199
212
226
166
201
232
212
206
207
178
222
222
204
149
240
176
254
220
256
175
257
235
231
210
227
166
175
211
197
212
209
210
229
271
168
159
199
209
229
173
230
205
246
222
184
271
177
201
129
198
191
189
255
254
159
187
175
211
202
214
186
257
225
191
234
210
214
173
178
261
188
161
203
211
160
232
238
212
252
218
233
239
206
220
200
136
184
206
155
154
183
209
200
171
199
175
177
163
228
162
178
170
241
266
179
155
166
224
162
165
202
105
224
175
133
218
204
172
196
208
185
188
172
197
190
183
212
196
264
207
180
205
178
159
231
207
109
215
216
197
164
207
162
205
165
208
155
157
171
172
220
190
221
159
163
164
186
242
145
248
191
160
207
220
201
195
192
218
232
213
191
193
164
191
179
154
191
199
235
218
255
146
173
219
180
223
216
220
210
259
222
220
218
200
219
231
213
248
180
219
244
156
200
236
216
209
204
177
213
210
222
198
181
217
201
189
219
220
215
225
205
170
257
261
190
157
165
244
189
195
167
266
196
188
171
129
248
187
186
231
179
224
169
184
139
191
252
225
221
232
246
222
184
231
205
251
201
153
226
196
176
145
190
231
240
220
216
159
236
202
226
141
198
203
200
155
251
211
197
232
205
211
252
193
205
190
237
203
226
175
223
200
172
240
147
250
241
204
155
240
192
214
210
145
230
168
174
174
249
224
219
153
169
192
212
201
208
192
239
164
165
217
254
246
167
273
240
224
161
171
186
167
198
239
176
129
208
249
118
251
142
220
191
194
195
237
223
124
168
198
142
186
119
153
232
157
219
284
208
213
196
209
203
173
151
127
176
227
247
253
168
239
242
217
179
173
201
196
224
190
142
205
144
204
195
198
183
161
208
176
198
225
240
205
171
169
231
234
161
243
248
157
198
207
186
148
152
177
205
204
238
228
216
160
203
195
218
202
234
305
188
171
157
203
215
171
181
235
232
204
211
200
247
176
223
232
217
210
123
194
96
213
167
198
153
177
184
207
217
142
194
212
218
267
238
171
194
189
198
200
243
232
212
242
212
237
186
139
198
196
164
191
218
251
281
166
191
208
186
206
238
233
262
161
239
230
251
193
260
216
176
202
215
197
208
235
244
185
184
165
145
149
160
109
247
220
189
178
152
243
193
266
258
223
210
161
246
217
196
249
220
139
230
180
245
174
232
157
167
208
227
166
135
175
122
158
215
186
181
198
123
147
194
188
178
253
160
219
194
185
240
241
170
197
209
157
192
212
175
231
240
250
137
224
206
238
218
216
236
208
186
246
209
229
204
184
195
189
204
177
188
211
177
184
219
170
152
215
198
177
181
246
175
175
227
201
218
170
182
221
209
229
93
199
218
176
205
232
177
209
152
197
193
178
220
233
193
204
238
192
215
158
196
187
173
207
176
219
174
174
178
200
169
149
165
241
190
215
164
161
234
272
225
225
192
142
199
197
130
203
134
244
222
209
251
214
228
153
267
217
215
164
170
265
187
206
232
254
226
207
179
153
216
225
227
215
103
225
163
175
248
168
178
212
206
235
143
184
229
212
211
149
182
224
232
184
254
199
193
217
217
203
259
145
189
190
179
186
222
230
172
149
157
188
168
214
185
218
188
218
190
134
191
196
246
210
193
163
143
225
221
191
217
182
117
206
170
152
182
172
124
168
189
208
198
152
219
240
245
211
185
189
247
215
184
241
227
235
228
165
171
184
198
208
224
211
162
214
177
207
160
187
183
250
157
267
222
248
162
184
202
167
187
118
187
166
216
213
256
217
227
188
197
196
231
232
146
191
191
142
168
226
141
178
216
222
213
159
248
220
188
159
224
169
248
171
211
156
154
265
191
257
210
229
196
137
224
210
212
209
235
218
173
226
218
207
181
220
226
236
245
166
190
251
224
151
230
241
283
222
159
175
229
162
194
169
184
226
145
198
206
251
172
223
166
202
190
241
178
198
126
272
218
162
214
198
207
148
198
254
238
172
156
133
135
183
166
188
228
202
201
196
201
222
194
225
177
193
182
174
177
186
229
157
225
135
180
217
205
217
146
221
242
252
141
176
207
187
248
189
184
177
183
155
178
153
152
206
214
208
238
201
224
207
168
224
192
245
152
189
225
130
227
223
212
263
222
158
199
170
228
190
193
184
180
156
166
199
194
232
216
166
202
247
227
197
239
218
161
211
165
260
256
213
202
183
239
167
182
159
150
168
204
180
212
201
247
185
137
179
139
190
247
197
136
178
185
217
218
210
165
198
179
180
200
188
154
175
156
247
218
234
218
157
244
234
208
180
205
175
205
200
198
218
258
194
200
137
261
179
140
201
224
225
198
155
237
139
174
144
311
144
196
128
230
208
210
233
221
240
173
169
184
179
178
170
195
215
249
183
169
236
162
214
225
224
189
181
161
123
206
291
173
178
228
154
153
142
185
171
180
174
190
193
256
232
208
180
163
184
153
220
191
204
197
193
177
210
178
251
266
153
172
243
224
195
140
243
186
209
157
213
221
187
198
157
174
191
187
126
196
220
159
253
214
231
217
228
149
171
173
209
204
283
236
159
192
216
164
208
173
143
209
174
227
221
165
207
219
273
241
238
197
223
219
282
190
132
181
200
221
210
213
209
232
199
169
226
252
196
164
202
270
205
203
179
176
186
187
220
271
205
209
186
189
195
175
167
303
202
211
240
248
169
160
215
175
184
186
193
192
159
205
179
246
233
222
175
207
249
167
200
215
170
200
147
244
245
162
173
209
175
227
227
252
156
205
274
198
206
244
182
271
217
235
132
180
205
210
195
230
244
218
189
216
260
234
154
175
205
187
204
204
138
184
206
129
197
232
227
216
193
196
187
196
261
268
147
221
187
250
192
220
167
170
185
185
224
226
179
162
180
238
169
153
171
204
165
180
182
230
194
197
208
209
199
134
190
266
179
198
212
180
165
227
61
227
228
211
188
169
216
231
261
229
216
159
224
191
195
238
168
226
192
190
225
243
217
206
158
218
198
214
237
189
233
232
211
157
177
248
201
193
219
231
230
202
191
142
179
244
195
162
201
211
229
184
182
176
213
223
202
241
196
151
191
212
202
239
154
231
190
221
250
213
235
210
238
215
218
178
114
170
204
257
204
186
183
199
235
178
225
153
191
250
198
232
252
202
231
225
230
221
240
226
229
152
275
241
199
196
194
228
145
252
199
143
169
269
214
159
222
158
217
194
201
172
159
239
187
153
156
187
214
151
239
228
196
151
232
223
297
187
211
183
160
198
218
197
248
232
152
151
195
231
179
238
238
193
222
124
252
227
228
171
144
266
185
203
216
176
146
205
206
211
183
216
213
176
219
235
202
212
229
137
220
232
211
181
194
153
199
201
229
212
190
205
185
174
242
137
101
252
224
155
203
209
242
215
240
132
202
234
134
173
222
204
235
229
161
224
198
233
157
239
181
241
190
184
151
239
193
242
168
194
229
219
246
194
174
168
214
221
243
216
193
227
214
155
173
154
214
212
167
210
221
200
174
263
184
123
198
168
203
167
216
191
192
269
181
228
183
219
218
120
228
190
145
232
174
183
214
190
172
234
177
193
201
193
204
254
225
274
250
215
232
224
164
172
130
177
212
215
228
213
215
230
204
198
172
247
227
254
211
202
191
190
241
215
153
190
167
172
200
188
156
175
232
238
234
229
208
172
166
148
205
232
208
202
187
192
174
164
206
189
203
224
203
198
195
159
238
237
240
201
203
227
231
194
227
162
130
145
188
238
200
232
190
202
166
178
172
160
212
189
190
188
233
245
193
156
154
231
176
209
162
244
189
222
194
227
256
154
228
152
187
204
215
199
219
186
223
247
199
200
209
215
252
226
153
230
193
214
198
161
196
159
216
173
219
206
235
190
232
164
188
222
199
228
244
215
173
200
231
216
200
207
204
226
168
218
197
178
225
112
212
243
164
142
223
209
224
173
249
194
178
112
202
200
221
208
179
155
176
165
138
234
167
235
273
191
172
200
162
203
204
194
97
232
146
211
205
156
210
237
209
257
264
157
238
181
220
222
175
239
221
169
186
274
163
207
160
240
250
184
194
158
228
175
235
225
178
166
196
211
201
220
188
220
250
229
197
197
254
225
279
222
229
254
263
202
211
217
247
180
288
165
183
211
176
213
214
208
244
226
206
196
211
159
193
227
231
197
129
242
166
188
154
200
193
163
183
230
158
211
233
212
184
165
195
194
224
173
197
125
175
216
167
198
211
201
245
213
247
186
167
211
184
156
233
221
172
152
195
236
131
167
181
185
184
224
256
190
167
186
215
171
190
209
229
148
203
208
240
153
221
198
188
209
218
213
188
204
166
143
147
214
187
136
163
138
199
176
159
213
195
243
245
219
186
120
208
208
232
229
154
206
186
229
258
149
201
192
186
215
154
196
182
189
249
226
202
176
240
252
231
227
231
225
211
143
223
186
263
208
176
127
219
174
151
249
253
208
207
171
171
245
207
173
269
195
198
164
207
246
195
228
127
203
200
238
256
201
176
239
187
200
238
196
209
231
186
185
205
191
147
215
234
180
216
215
227
195
178
206
223
202
106
103
240
194
235
216
239
172
214
190
144
215
233
194
184
231
196
192
238
195
240
204
202
80
210
195
215
196
198
159
165
255
221
160
182
176
222
163
189
131
158
251
175
216
221
223
132
211
200
181
156
124
225
223
151
254
177
211
169
156
236
191
240
200
234
231
220
237
165
181
224
213
182
194
199
156
182
251
238
276
178
198
191
173
262
245
166
214
238
157
140
186
233
185
206
208
148
199
175
226
124
184
219
166
201
232
248
191
261
255
178
156
222
215
215
206
183
209
181
212
181
171
176
101
249
243
200
194
176
234
220
220
181
197
181
197
199
214
206
167
203
220
296
202
138
200
172
176
178
207
178
257
175
173
157
131
223
239
262
206
194
245
223
137
188
230
169
247
184
158
166
178
207
233
209
202
222
187
171
201
162
214
174
275
241
156
195
203
198
247
271
183
145
158
244
175
180
224
191
155
231
126
218
203
148
198
211
255
191
213
247
171
179
259
214
192
274
157
218
241
202
168
260
233
229
203
222
214
218
206
255
175
213
169
160
205
166
173
186
246
212
168
175
230
220
250
166
254
174
199
195
206
164
238
215
200
171
184
188
211
208
177
185
184
211
236
205
192
236
178
188
229
213
184
191
192
176
184
174
192
178
216
164
193
215
181
178
244
159
188
186
119
226
199
206
180
152
220
148
229
204
203
211
184
214
194
267
170
229
127
194
257
161
136
155
210
117
193
201
179
228
194
240
260
201
238
176
150
179
195
138
180
195
182
223
231
153
171
195
178
206
221
150
221
228
190
194
202
133
285
219
222
239
198
181
265
200
182
260
204
185
198
274
212
279
127
236
206
161
188
211
146
213
191
215
212
262
225
187
143
201
197
225
226
223
280
227
261
211
149
233
211
194
177
183
208
207
159
180
203
200
189
198
232
123
228
173
219
228
254
159
253
177
213
266
268
232
231
242
218
189
200
198
156
213
166
226
288
168
211
148
195
191
269
227
144
214
234
210
239
229
239
172
259
224
194
195
197
143
232
235
153
202
172
153
199
185
236
200
182
231
170
182
170
168
183
196
216
262
196
199
211
220
231
222
189
221
267
231
232
186
142
180
228
160
211
256
251
209
203
217
237
185
196
259
145
143
210
211
207
204
245
126
220
214
218
176
253
136
209
161
181
200
244
173
215
227
201
161
185
181
218
242
171
173
140
213
184
193
153
152
224
208
187
235
188
148
204
230
183
216
196
172
201
227
205
242
201
164
167
179
189
213
197
182
190
173
182
183
198
260
190
202
218
180
135
175
206
154
144
174
205
200
209
247
200
250
186
171
179
207
166
171
241
160
143
226
186
236
158
242
205
181
219
205
251
207
200
196
243
137
263
196
200
186
240
195
165
245
156
213
209
176
216
223
260
196
165
194
230
135
186
195
215
225
201
163
199
213
203
232
233
143
224
186
238
249
185
137
224
225
168
181
173
175
189
197
183
186
154
196
197
188
197
115
107
165
190
172
191
175
189
151
233
187
193
240
153
160
222
163
185
210
177
242
188
203
184
187
147
202
117
207
245
196
225
280
185
184
232
174
209
150
226
186
207
204
251
242
238
172
221
236
188
141
191
201
176
246
241
227
250
181
205
253
256
205
243
226
238
216
211
216
243
204
221
250
112
189
231
242
199
243
171
206
218
194
221
203
163
239
226
166
193
222
200
144
196
218
218
166
250
159
157
207
140
165
261
207
187
258
155
219
236
209
242
230
192
230
167
169
228
240
214
201
159
215
177
161
130
169
223
190
204
170
198
232
181
280
138
210
242
193
155
205
230
255
147
145
189
185
172
198
152
223
176
223
170
184
224
193
190
194
235
249
214
118
197
273
228
174
220
207
176
247
199
127
193
236
226
154
200
216
226
213
197
186
239
233
146
145
175
241
225
183
255
227
266
182
246
210
207
193
200
198
177
223
189
225
206
175
161
202
216
200
245
203
223
212
231
261
128
269
224
176
246
201
149
209
136
132
250
170
236
199
212
205
204
208
218
182
199
191
241
170
258
117
250
268
149
154
230
232
306
226
229
245
196
206
164
194
197
214
280
206
176
205
190
174
171
247
239
223
231
224
174
223
182
194
220
251
150
252
179
235
242
278
116
261
197
153
244
225
214
260
220
220
216
226
207
253
145
229
163
154
183
249
215
242
178
165
173
216
212
235
185
149
145
206
209
143
209
236
222
179
152
239
144
231
134
203
142
159
260
202
154
216
202
246
172
242
179
271
207
185
188
242
178
192
185
251
162
189
171
218
224
158
217
289
157
186
169
257
184
252
193
144
196
183
209
222
190
234
128
182
186
187
199
225
225
182
169
208
118
157
221
201
211
222
233
233
220
182
198
232
275
211
197
183
236
195
257
206
158
242
224
213
197
191
211
181
218
205
250
226
178
165
241
251
199
180
170
216
112
224
187
198
213
208
234
191
188
136
193
181
211
210
141
239
140
180
197
181
200
212
165
281
149
256
202
155
174
253
159
231
225
221
257
178
230
218
152
158
247
167
210
209
194
160
225
165
182
177
203
170
204
204
167
196
158
189
186
235
210
245
257
226
215
198
187
168
169
164
216
255
210
233
127
156
184
215
186
219
180
236
268
163
165
233
195
221
120
213
225
235
176
234
204
147
192
186
172
226
227
153
212
197
217
154
215
167
221
214
201
236
220
230
215
144
241
201
160
164
167
174
203
218
217
126
214
237
205
208
194
185
187
213
186
258
211
201
217
199
189
193
202
182
226
147
166
206
206
238
201
222
155
180
128
201
213
233
223
185
196
196
217
199
211
196
180
211
187
184
166
226
239
240
201
248
165
240
180
180
234
173
211
175
214
211
203
265
237
254
185
268
202
228
240
176
191
186
208
227
244
186
162
161
158
208
206
222
197
230
191
157
203
236
226
170
197
165
196
160
196
232
140
193
166
180
178
246
227
242
221
185
194
195
256
187
166
191
231
169
234
182
197
169
222
178
204
146
215
207
205
212
216
210
154
193
193
192
222
238
253
197
178
222
202
211
159
190
228
198
184
167
113
204
228
206
186
209
124
236
203
263
178
191
223
130
147
144
178
152
209
216
155
205
226
165
205
163
227
261
231
173
183
219
201
226
154
167
125
190
256
189
186
198
202
215
269
191
133
217
165
189
175
219
207
215
169
178
189
147
234
184
220
145
164
214
207
183
168
221
173
240
190
178
201
216
173
171
174
195
227
187
173
100
177
165
222
218
185
208
202
166
171
208
255
178
209
116
224
227
228
158
192
153
134
160
156
226
243
198
180
154
242
172
219
204
145
215
207
186
193
226
203
194
205
220
173
231
193
126
246
248
208
209
269
208
234
200
163
226
199
215
174
150
188
207
281
209
197
173
162
208
176
192
201
189
204
203
233
194
202
238
190
160
202
208
189
181
225
212
177
188
191
228
227
238
196
217
216
241
202
187
116
154
202
215
145
222
199
179
260
209
180
204
148
187
204
150
176
167
192
153
172
163
195
215
216
202
255
150
228
180
138
225
182
194
242
153
235
217
199
238
196
149
186
258
227
171
193
271
211
219
170
216
160
227
197
204
242
147
167
197
256
194
201
192
184
205
216
207
207
229
159
214
241
218
154
198
194
201
168
234
288
234
189
222
155
212
139
189
208
193
139
210
202
187
212
133
189
193
181
235
208
114
195
175
225
225
212
254
226
171
135
221
163
229
162
239
179
179
209
194
152
242
168
167
180
224
242
222
199
183
245
106
245
196
195
162
230
225
197
231
180
147
248
179
197
167
216
161
239
195
222
154
169
159
167
256
142
164
228
230
220
210
161
141
197
220
201
200
170
194
213
194
215
246
224
222
197
147
177
233
242
230
198
132
251
206
241
174
200
124
168
219
237
255
247
171
172
195
180
274
189
201
189
234
228
227
231
192
192
148
154
154
235
204
206
235
246
223
171
206
203
203
224
195
240
213
229
220
137
232
172
211
227
175
192
194
205
172
191
167
218
202
199
226
251
228
203
153
233
241
184
202
172
214
218
169
192
229
188
231
167
191
151
182
234
244
221
170
192
241
189
188
189
180
251
247
219
202
202
187
200
204
220
220
168
146
183
168
198
183
286
257
199
204
238
283
206
164
205
110
150
220
217
180
162
187
158
250
223
226
130
187
200
220
191
190
151
226
222
161
214
201
250
207
232
177
168
113
128
165
126
138
216
212
236
195
179
238
156
211
226
217
121
186
276
166
208
136
240
175
181
135
215
182
153
184
221
202
241
169
238
182
185
170
155
245
288
155
198
190
173
225
214
214
202
207
156
152
215
229
205
203
130
195
200
225
228
217
164
215
200
212
187
183
219
219
143
225
212
187
216
193
213
168
248
237
237
227
252
230
197
145
229
162
233
251
243
196
264
250
198
186
236
175
222
205
172
192
202
177
217
195
264
183
235
116
210
169
207
180
240
228
230
259
201
218
234
193
201
188
203
190
247
250
261
183
166
239
153
195
132
149
187
250
224
191
238
229
222
170
173
191
213
179
223
193
228
179
207
209
145
217
181
194
260
144
244
160
223
210
249
212
267
203
168
166
184
147
253
226
170
227
178
153
209
142
255
200
209
198
142
177
231
229
196
221
219
225
163
235
286
132
189
259
230
132
167
216
179
253
261
178
190
255
198
216
132
242
175
139
218
244
233
119
192
194
149
269
226
206
216
185
147
158
173
179
259
209
217
236
224
247
194
145
257
103
198
196
206
236
222
185
198
179
170
198
142
218
235
124
196
131
147
184
202
173
229
181
248
244
177
154
186
196
169
243
204
237
258
229
197
112
188
193
217
242
209
190
194
232
221
174
262
192
159
191
200
170
181
195
188
249
186
241
245
228
186
157
159
175
162
205
255
168
189
178
183
193
239
193
165
185
189
189
208
195
201
208
202
202
186
222
207
224
167
183
247
175
218
221
157
142
162
167
221
250
186
191
179
202
196
219
194
162
230
192
191
213
208
176
196
202
231
188
175
261
210
182
150
212
157
225
196
188
214
257
201
176
167
214
167
188
136
217
188
242
202
216
157
197
189
244
169
211
218
216
228
226
209
184
221
182
207
206
221
304
179
208
210
207
186
220
161
195
210
154
203
230
244
250
222
188
203
173
248
170
191
207
201
209
241
240
209
216
202
196
175
175
168
229
147
126
198
153
244
265
157
221
193
163
188
168
161
220
224
210
232
212
201
252
209
184
306
148
173
121
217
217
172
210
230
197
195
149
136
272
159
166
236
162
127
240
193
176
234
202
189
204
259
197
239
269
259
157
191
241
186
209
154
196
162
253
223
174
249
243
197
229
253
118
184
190
229
215
168
162
153
244
219
227
173
223
184
216
189
166
192
156
212
192
205
190
184
241
263
213
224
235
193
206
132
200
166
200
124
237
205
87
232
194
252
202
202
173
180
208
222
216
219
243
159
193
229
205
214
122
209
116
163
108
246
218
186
185
166
225
233
260
204
172
232
189
173
181
165
215
188
214
167
212
235
238
191
216
165
216
210
220
195
210
140
182
229
171
157
180
263
198
227
197
200
217
189
219
199
203
222
186
235
194
272
164
207
236
261
177
205
198
238
202
152
199
197
175
244
241
178
215
245
175
206
289
217
231
194
152
202
221
203
205
192
147
172
198
210
193
221
243
163
271
215
207
206
217
235
202
199
177
208
201
237
220
200
241
168
217
183
192
171
192
196
260
275
213
164
265
151
240
184
219
222
164
181
241
191
189
214
170
224
196
191
221
171
215
271
193
176
175
169
236
174
193
186
267
205
147
252
214
287
210
192
236
258
201
175
138
232
164
245
244
225
159
161
165
198
234
205
230
127
212
184
249
200
222
196
228
227
220
196
185
231
196
176
154
150
272
184
248
213
151
196
228
255
156
227
213
228
163
231
198
235
169
230
241
175
123
212
242
186
224
260
172
243
198
157
176
192
207
208
173
99
173
214
290
206
225
176
203
218
196
217
212
187
144
179
169
162
183
257
180
226
194
169
196
275
264
198
187
204
188
255
238
194
224
212
232
217
175
228
170
209
172
234
242
173
197
124
197
207
276
229
165
194
203
154
196
232
189
196
211
208
283
221
193
247
173
104
192
219
203
219
241
234
199
260
222
206
244
225
177
175
242
251
211
200
248
202
188
158
236
162
192
207
264
200
199
205
224
242
211
235
196
218
217
224
165
230
168
191
143
207
214
190
206
234
192
168
162
204
208
198
186
202
202
161
218
227
193
176
260
202
211
248
213
225
186
177
292
183
179
235
261
167
243
187
159
159
185
142
214
138
212
202
223
216
189
250
186
195
145
144
184
247
155
204
189
178
195
172
210
193
228
206
130
189
215
223
249
214
237
171
204
177
246
258
232
238
146
213
180
186
221
170
172
187
240
243
137
173
192
229
196
241
164
182
185
197
245
221
194
196
189
247
167
188
183
143
182
175
180
184
214
197
232
141
207
208
233
129
241
186
222
120
211
224
182
229
196
241
220
207
220
190
224
206
220
177
170
196
205
264
248
263
221
152
129
232
195
189
151
206
160
190
161
211
182
228
172
199
130
224
163
175
196
174
211
170
145
175
188
229
180
177
214
191
233
232
245
200
198
226
224
204
222
140
186
201
218
148
138
218
186
151
140
198
267
240
231
213
186
140
201
172
199
210
202
209
192
166
197
211
147
180
177
223
192
204
208
186
228
211
228
195
242
176
231
149
234
146
118
162
175
223
217
253
181
222
241
241
251
156
171
159
182
225
190
160
203
245
196
174
246
180
234
189
199
274
191
160
180
169
174
226
191
192
196
220
182
131
165
249
192
182
160
212
195
161
254
169
202
185
177
177
206
155
174
180
256
185
181
175
200
161
236
186
228
239
156
198
187
148
178
234
250
183
198
188
233
202
207
242
217
211
210
190
252
222
253
245
202
206
215
192
113
242
218
212
128
235
238
177
238
189
254
210
209
164
196
229
162
201
238
207
173
265
224
185
202
258
171
204
243
177
168
200
208
196
208
177
147
215
173
211
153
172
261
157
193
182
206
177
216
121
200
202
167
203
239
207
229
206
209
183
179
209
175
154
196
202
155
221
244
200
230
214
212
188
174
151
185
202
216
191
184
195
212
224
160
222
205
229
184
206
165
194
193
242
173
166
178
148
207
218
190
213
204
170
167
184
197
236
202
180
203
217
236
205
229
228
159
206
242
258
224
202
214
182
167
134
175
187
196
167
215
226
199
196
193
215
241
162
177
201
113
223
180
148
199
210
291
215
245
176
161
223
211
138
224
219
203
145
194
164
208
134
167
212
231
191
192
219
196
203
172
146
238
206
269
165
217
211
196
198
219
142
202
176
239
215
223
161
156
231
186
213
194
167
165
161
213
214
210
177
139
231
117
126
201
171
195
169
200
202
234
246
172
242
214
219
215
162
207
125
225
178
207
176
224
181
107
235
175
254
170
113
228
201
193
201
179
230
201
253
201
211
221
237
225
244
186
222
232
164
208
204
242
217
255
248
189
227
209
184
216
257
196
154
195
194
197
217
258
184
281
213
267
213
238
191
202
159
245
232
140
205
188
188
232
214
186
237
214
168
232
195
193
203
180
182
240
135
231
218
265
249
181
237
232
223
124
133
186
257
184
167
149
193
145
203
200
151
282
180
219
201
190
203
205
180
223
221
207
235
192
250
198
174
234
221
220
247
171
207
174
173
228
231
190
240
164
261
177
195
202
230
209
206
193
194
163
163
221
273
169
216
161
153
263
119
192
243
249
191
132
235
214
181
202
218
164
164
239
171
195
200
201
245
148
144
136
202
207
177
228
176
254
202
231
222
143
245
203
193
224
184
232
194
233
247
243
192
228
241
174
199
178
183
145
176
210
191
225
240
241
192
133
145
144
217
210
164
240
205
226
253
187
204
180
170
187
199
231
181
214
195
193
216
251
158
164
212
194
225
138
191
206
239
197
218
156
106
227
234
184
184
161
239
217
192
184
239
232
161
198
165
208
249
199
223
233
178
161
215
183
208
167
169
193
147
130
150
161
193
197
170
238
145
212
256
254
207
206
174
244
232
162
226
247
177
222
214
199
178
196
180
178
170
196
133
174
230
202
213
195
208
209
224
258
177
217
174
232
183
178
184
191
154
237
237
191
230
244
184
167
250
195
155
175
136
228
209
226
180
112
209
219
194
170
223
201
148
219
170
195
151
187
189
196
180
232
198
174
176
202
229
202
194
182
197
190
209
171
183
233
207
144
198
210
249
237
231
232
225
204
241
176
88
184
191
231
218
179
165
205
240
247
196
196
144
218
194
229
203
189
225
263
199
189
206
239
200
163
196
198
231
186
205
214
175
195
210
188
122
209
223
206
255
224
125
109
192
154
183
193
194
133
162
225
140
218
213
171
220
157
200
194
210
179
231
243
123
236
268
200
171
242
205
198
198
206
249
165
252
187
207
209
246
218
217
242
225
153
198
227
203
190
247
228
146
211
149
210
190
236
220
179
210
222
216
219
230
238
205
201
205
208
163
276
202
149
190
212
200
152
210
211
219
183
173
210
170
189
249
201
151
220
189
243
228
204
200
196
275
223
171
233
260
235
238
148
159
177
239
196
197
176
179
220
222
220
237
150
149
228
223
200
109
158
211
220
202
174
269
246
262
244
185
224
207
204
241
200
189
171
166
189
124
212
239
239
181
182
157
247
206
187
210
190
265
243
230
197
189
126
214
176
185
184
218
219
200
183
236
185
168
198
127
202
250
244
227
190
175
162
249
184
239
165
256
210
184
229
227
228
204
197
210
196
143
195
194
246
198
241
126
235
250
189
220
228
214
261
216
209
231
180
201
148
229
142
228
244
180
178
192
216
183
195
241
180
170
204
242
199
204
205
154
194
228
206
261
239
201
268
182
135
195
198
191
224
164
176
196
200
232
200
202
189
235
200
214
162
248
264
197
248
172
178
238
202
219
162
172
227
181
235
205
221
151
221
150
204
116
203
213
150
143
184
206
177
287
188
238
270
234
172
183
224
172
161
221
178
200
199
249
231
199
250
215
152
176
211
218
178
192
196
179
232
170
153
267
226
188
168
225
243
146
177
199
174
193
248
204
225
207
174
249
234
163
232
251
208
223
217
242
181
189
190
235
242
233
221
238
183
213
134
193
234
185
234
201
129
250
179
252
184
228
177
199
156
179
197
191
143
215
117
188
258
222
212
189
163
196
171
228
211
221
211
212
195
204
177
202
185
127
189
204
153
187
233
154
103
244
183
183
154
196
160
152
225
211
202
251
229
208
212
200
254
214
237
201
221
209
202
146
210
183
175
202
216
245
206
223
252
219
169
217
187
183
195
223
130
232
245
216
218
170
188
212
221
248
227
189
229
152
196
207
175
175
257
175
172
199
204
222
243
226
194
202
164
206
191
249
248
262
270
214
203
222
180
246
243
180
159
204
175
169
169
199
201
220
198
213
193
231
203
229
220
135
239
199
207
217
270
182
203
194
141
241
227
181
223
233
204
157
191
221
186
152
188
211
214
144
210
126
189
172
157
253
149
241
167
211
237
191
221
182
190
175
210
218
194
170
193
212
189
195
253
237
168
255
177
200
256
167
182
242
204
192
274
217
206
212
217
197
241
239
126
226
167
255
223
208
178
175
201
183
252
229
189
157
116
221
239
237
197
201
209
158
242
229
216
186
171
221
168
199
245
255
157
274
204
180
175
174
150
248
188
189
186
222
206
161
217
174
188
176
172
197
213
230
154
214
149
183
197
215
173
199
246
243
131
167
161
204
153
155
189
211
208
183
234
212
214
167
239
202
203
228
216
244
226
246
177
168
198
217
230
170
165
223
196
208
148
158
193
201
219
180
132
142
201
192
191
255
204
243
171
194
145
158
222
192
199
168
196
217
236
119
156
167
161
189
205
206
240
151
175
264
201
196
153
201
154
171
233
167
201
234
209
199
220
209
238
193
246
240
212
241
159
193
164
237
180
197
203
240
216
267
206
245
179
220
159
203
212
227
194
205
251
216
251
233
184
247
238
203
169
220
163
218
248
147
234
243
256
240
227
211
155
242
189
203
208
197
269
209
205
195
205
155
209
131
202
195
144
179
238
178
165
132
217
177
245
205
214
155
180
216
170
178
210
188
167
231
167
198
218
216
209
215
240
129
163
233
177
202
232
156
195
158
219
268
178
174
224
125
171
157
158
178
185
240
167
155
190
147
200
199
227
196
178
162
197
216
159
233
223
230
198
218
157
225
232
175
227
217
203
221
197
197
197
218
278
179
215
182
225
165
179
205
161
151
164
186
149
124
196
196
227
216
213
200
286
222
203
257
233
232
201
265
177
181
149
243
172
245
207
198
225
177
250
233
163
211
238
187
177
204
183
220
235
242
226
174
246
226
199
191
166
193
168
209
217
264
161
165
229
171
269
233
183
179
152
226
239
177
93
197
173
233
220
204
135
196
215
269
205
222
134
245
256
217
200
189
188
212
246
135
167
196
243
207
211
240
214
188
194
205
227
152
216
147
165
279
193
208
211
230
246
244
182
218
233
209
208
243
117
230
166
225
161
151
222
250
198
238
205
190
194
184
220
209
192
201
218
202
198
193
214
218
259
159
162
184
198
229
254
138
174
210
212
228
206
233
247
111
210
225
275
196
267
191
207
180
194
159
167
190
211
147
202
179
159
177
176
235
235
198
212
154
196
216
174
221
189
158
172
175
195
210
191
267
242
185
168
126
229
213
172
215
242
191
166
205
235
189
223
201
185
163
252
216
249
226
186
157
234
201
211
222
153
223
243
220
199
199
251
134
188
211
264
143
182
241
161
154
186
231
186
199
202
186
194
280
202
229
160
166
236
174
178
180
219
206
210
195
214
153
157
228
266
239
215
218
226
224
219
169
174
213
210
222
182
203
205
192
211
184
226
222
156
279
213
231
203
161
244
209
261
189
202
235
272
206
209
259
243
163
188
154
138
205
260
229
179
180
227
144
234
168
183
204
230
216
183
184
163
189
279
162
162
203
221
214
244
141
246
180
220
148
194
205
209
188
210
231
203
206
164
265
212
208
229
184
212
154
181
231
204
200
221
168
218
216
235
229
184
163
204
219
247
154
211
168
220
171
127
208
157
172
187
222
202
228
222
219
222
230
188
183
166
193
210
213
268
293
266
222
247
193
153
245
223
170
167
204
157
126
199
248
186
222
223
128
202
206
203
219
232
145
150
166
224
153
214
219
216
247
260
168
179
204
195
117
233
232
153
235
178
297
215
145
127
189
182
249
138
206
212
167
198
188
229
154
172
220
247
141
202
192
188
218
167
189
226
210
192
175
234
240
195
179
173
133
204
211
177
145
281
191
225
205
216
203
189
207
167
198
182
222
216
166
189
154
164
197
222
199
151
233
192
243
200
135
182
230
160
265
241
188
202
216
232
200
151
183
162
188
118
145
233
215
212
228
152
176
169
221
190
192
197
170
270
218
192
271
262
178
199
215
239
196
187
223
269
236
181
187
187
216
228
207
242
224
165
195
215
130
160
141
204
193
194
211
223
191
189
155
129
242
228
252
233
174
250
160
199
169
186
220
183
240
232
154
262
192
193
179
218
258
184
232
204
151
225
193
132
247
220
177
198
160
260
241
253
183
245
177
207
109
198
168
238
181
234
189
267
155
228
192
165
210
227
167
225
205
212
242
183
185
230
198
175
225
213
197
202
215
206
237
276
206
229
226
148
169
226
259
230
162
223
161
222
187
175
237
178
232
177
192
112
194
234
151
241
201
196
200
210
243
216
154
203
192
187
216
200
161
239
176
249
167
220
189
206
141
148
184
271
189
178
221
230
205
160
234
173
290
242
193
214
181
208
195
178
151
258
222
170
200
147
161
213
197
163
186
192
214
189
200
179
126
206
207
204
263
182
216
211
168
227
196
263
184
219
255
225
203
202
251
177
158
190
241
208
163
162
176
213
232
229
235
226
152
231
229
224
275
204
205
268
141
216
222
194
220
157
155
216
160
243
151
204
182
212
201
211
132
195
232
190
201
210
138
266
203
202
188
253
176
210
180
196
208
116
173
197
230
162
178
247
173
196
230
156
188
227
183
187
198
172
166
198
160
216
156
213
236
152
219
190
236
201
127
191
181
165
218
171
227
224
254
233
184
255
170
155
173
236
181
192
272
273
217
182
244
300
212
258
201
204
256
194
238
192
149
215
209
141
199
191
211
265
197
231
242
166
185
241
226
223
204
196
226
185
205
187
220
188
208
174
160
230
247
207
204
197
199
189
163
263
187
161
196
216
161
155
200
199
231
165
257
275
105
202
230
134
202
224
214
215
181
219
221
197
172
235
278
211
209
220
249
202
217
221
210
211
229
206
165
272
202
125
230
187
191
210
154
180
226
186
233
247
181
190
171
177
209
203
206
173
181
254
196
118
265
215
176
200
221
146
208
126
196
189
132
227
205
225
237
188
199
172
248
184
252
152
159
211
196
162
237
183
228
248
230
226
153
222
214
247
211
142
145
140
211
200
250
208
174
112
231
171
192
231
249
192
180
246
239
197
223
255
227
165
263
207
238
220
178
160
246
202
187
104
222
167
207
206
195
163
202
229
193
164
145
212
227
155
175
146
232
165
185
242
179
124
237
215
203
225
198
189
170
211
181
153
162
178
183
183
176
165
207
216
201
207
223
141
175
204
193
191
193
188
189
242
217
215
223
151
190
209
179
185
201
241
274
227
233
165
184
216
195
167
163
181
155
181
203
188
237
158
161
205
218
206
199
214
219
218
175
250
214
144
224
214
207
243
148
255
226
182
168
163
245
162
196
182
246
158
181
234
237
210
184
232
161
159
254
249
187
173
248
251
179
175
197
232
230
199
268
175
262
177
200
185
166
178
200
252
219
202
191
194
193
210
195
227
193
103
216
199
233
225
201
175
161
250
119
164
170
198
197
191
184
235
174
192
211
197
248
186
240
235
237
200
235
240
218
169
162
180
232
177
158
197
188
222
211
152
232
182
221
166
237
154
173
233
251
187
195
163
245
175
147
136
202
261
231
221
146
240
188
222
244
155
195
222
289
205
170
242
263
116
163
182
208
191
164
194
228
146
215
248
208
217
216
229
155
194
201
164
237
193
197
169
161
236
190
252
208
267
202
238
168
211
209
221
187
253
222
163
240
234
235
215
194
183
204
181
163
194
190
182
149
153
174
181
249
152
185
220
237
154
188
203
188
271
211
218
222
195
129
201
213
183
171
237
234
206
199
219
204
225
222
160
168
159
182
208
272
214
203
184
239
234
161
218
142
227
200
186
224
211
233
222
201
249
215
169
192
168
162
231
191
254
164
168
274
182
247
236
251
213
214
175
235
136
163
190
181
216
222
155
229
136
140
206
231
193
203
177
247
208
189
203
268
205
154
170
185
199
154
203
229
179
192
229
208
199
116
221
214
133
196
188
228
167
212
177
186
206
159
144
207
137
246
189
253
194
201
260
194
185
206
161
180
233
154
192
220
210
140
225
222
142
172
184
220
220
207
210
223
222
203
146
221
226
219
163
215
213
159
196
230
168
146
199
198
227
152
205
268
215
212
199
138
220
225
120
193
161
212
213
221
245
257
213
238
181
186
177
163
202
188
176
269
128
272
251
121
179
158
128
238
211
171
205
165
220
182
211
211
171
163
233
211
217
193
186
136
205
211
207
186
215
205
157
159
177
114
148
170
190
189
258
135
152
210
140
229
183
242
187
155
223
297
229
177
166
178
216
196
176
184
182
234
172
215
229
183
209
169
161
191
181
165
179
184
217
215
210
211
203
193
213
193
169
194
289
202
267
252
231
195
221
198
207
236
219
183
177
244
244
192
206
182
191
202
224
130
211
194
217
261
202
224
208
213
217
183
180
157
177
183
215
141
182
138
188
222
243
211
136
204
245
121
275
258
169
159
226
197
187
230
205
197
232
137
182
184
217
192
213
203
205
224
178
217
212
120
237
186
235
168
234
168
190
200
244
149
216
150
208
190
202
172
226
222
236
205
264
191
204
234
165
182
257
217
197
164
227
194
142
195
203
145
194
215
159
200
194
205
185
210
230
222
206
240
229
217
216
177
166
221
196
143
181
191
226
151
258
224
221
221
234
207
260
169
194
193
159
169
202
224
202
227
170
235
166
255
231
202
168
196
162
201
222
229
211
266
172
157
194
144
187
163
219
221
239
214
194
151
216
203
183
165
191
199
193
165
211
139
234
223
182
192
243
138
230
156
273
221
174
216
204
176
280
204
184
174
172
198
225
168
226
243
140
209
142
206
155
216
195
210
158
174
221
213
228
169
175
180
258
197
193
167
191
186
225
267
180
176
156
222
194
205
230
209
215
209
231
239
152
180
130
163
162
145
182
214
179
199
257
169
183
209
232
212
150
203
161
207
232
148
236
207
225
208
223
131
179
211
216
223
208
248
222
240
190
233
232
214
134
178
152
251
144
205
151
202
216
159
198
251
218
196
182
209
153
213
230
185
197
210
200
230
208
207
151
176
181
200
216
216
165
257
190
143
245
248
131
237
184
210
183
156
200
213
151
170
166
207
255
173
178
201
195
192
201
176
179
216
191
145
209
179
185
208
193
183
218
170
180
193
221
209
154
186
168
155
228
199
184
169
206
151
178
205
203
189
189
195
201
179
155
215
217
222
200
188
197
226
263
134
227
231
198
186
183
192
210
132
229
163
143
202
211
274
220
243
118
199
234
175
262
239
189
204
220
246
195
188
210
232
151
208
209
132
180
183
194
205
192
167
240
182
217
235
150
254
284
249
157
173
180
178
274
259
184
242
136
191
185
156
188
192
167
210
201
203
177
192
220
186
207
192
191
228
216
157
232
178
196
222
226
180
201
181
127
226
221
258
148
202
225
185
147
233
165
182
204
210
214
199
204
152
173
215
180
215
213
214
120
246
195
233
218
225
199
182
170
202
201
239
206
215
245
159
261
168
227
220
123
189
147
202
202
159
228
212
194
159
272
194
229
192
197
171
256
176
194
228
183
215
172
180
233
182
223
255
226
173
152
256
251
202
272
119
249
215
205
191
251
246
228
220
167
179
250
210
205
202
145
212
214
203
175
236
179
244
168
237
178
206
108
124
143
171
178
204
167
240
171
222
156
264
168
214
180
145
225
209
206
226
207
241
198
223
215
187
182
217
203
269
241
131
205
194
164
267
203
144
219
211
160
202
220
188
213
209
199
206
175
227
178
183
181
250
239
179
205
194
148
223
197
220
207
138
278
233
204
173
222
239
218
238
173
217
195
242
171
218
184
227
290
159
153
279
165
206
225
232
273
214
188
195
176
154
234
170
194
171
221
212
233
223
238
209
237
200
167
267
162
189
168
192
252
144
199
147
240
221
208
197
191
170
288
178
193
196
207
160
231
200
240
214
184
164
163
201
178
185
192
251
190
203
265
242
248
195
196
173
214
211
187
242
209
179
199
186
186
246
169
262
244
164
255
155
197
196
244
209
205
193
240
235
186
134
200
163
229
212
191
224
172
157
182
222
192
238
145
214
179
211
142
177
214
132
219
169
204
216
210
207
230
252
181
183
230
178
225
231
198
235
221
202
177
87
192
144
192
157
226
168
178
147
187
212
170
194
223
183
181
203
211
217
282
171
222
182
203
206
167
218
166
239
166
169
185
172
225
148
165
225
177
203
184
196
183
164
235
160
166
246
180
247
198
246
172
173
150
206
248
185
229
165
232
225
254
178
239
205
163
201
237
254
212
187
191
190
211
187
218
206
235
198
171
216
220
217
178
210
172
216
215
172
243
191
129
188
225
144
153
148
224
233
232
245
234
212
136
190
188
231
169
186
160
217
189
164
216
217
136
142
236
186
194
207
188
229
217
232
176
109
192
240
229
186
211
241
194
203
169
176
144
182
199
193
139
119
151
142
227
182
125
168
235
199
210
199
243
165
256
196
203
155
207
234
160
149
232
177
221
202
122
191
156
189
194
212
198
187
202
228
241
209
174
205
199
175
215
159
181
219
219
224
157
140
184
169
232
210
195
132
203
247
204
208
205
210
260
178
159
215
214
102
167
226
136
169
237
149
212
234
220
247
213
215
160
191
171
215
242
211
187
178
163
230
191
198
196
208
239
127
249
212
201
207
209
230
224
238
191
172
224
156
189
209
165
187
216
176
217
238
208
192
192
159
219
185
212
210
168
189
248
202
235
189
191
198
234
143
178
216
213
224
212
228
199
196
188
205
202
202
170
153
234
240
163
244
192
241
221
205
160
197
199
191
192
169
236
147
204
250
231
219
176
150
190
163
175
244
190
128
224
227
171
236
262
197
179
230
220
220
206
231
200
188
216
183
256
244
226
183
162
204
204
192
202
171
209
197
237
232
231
185
189
267
238
234
245
162
149
230
196
179
245
251
206
205
199
215
179
120
157
144
170
224
182
230
177
198
186
238
222
173
218
229
203
203
218
177
153
219
237
157
226
159
186
171
185
196
204
197
212
237
149
224
157
214
242
246
161
235
201
181
202
214
220
224
205
226
212
228
178
159
217
232
241
207
135
193
203
139
194
199
204
191
165
190
222
208
183
211
197
195
202
178
282
218
158
183
226
189
221
225
246
237
207
153
225
130
233
148
219
221
166
223
178
199
237
162
216
262
205
209
173
231
201
157
229
223
196
206
258
160
165
249
152
258
193
168
232
189
233
195
265
244
205
144
200
150
160
274
166
177
227
227
208
278
205
159
257
136
209
234
237
165
207
140
282
204
191
148
147
166
137
198
197
164
206
199
218
206
176
243
194
187
142
200
160
248
201
197
251
170
197
291
220
211
144
192
218
255
213
211
202
177
149
226
205
227
190
174
209
186
241
257
193
194
228
178
237
221
210
171
244
205
213
187
178
192
231
196
182
227
128
215
240
208
149
230
204
180
249
214
176
178
251
188
162
252
213
142
211
246
162
203
145
175
179
127
242
270
247
183
172
196
218
235
246
229
199
205
246
203
233
167
236
202
249
199
194
152
188
229
249
201
201
219
173
178
184
185
271
187
166
186
214
213
247
130
141
182
202
202
237
170
180
220
272
227
169
238
228
173
177
236
233
199
199
163
237
201
271
208
222
160
167
211
202
236
258
183
199
214
144
172
221
222
177
152
168
206
131
164
226
188
243
222
152
163
201
216
254
241
180
197
158
236
239
231
160
193
197
221
215
178
198
201
167
255
178
209
233
214
184
262
163
199
208
224
239
222
227
298
171
205
174
148
179
226
149
230
120
223
198
184
221
199
211
210
248
237
136
231
259
208
200
156
193
171
217
129
250
233
269
195
200
192
141
171
205
180
188
199
200
217
192
150
189
187
256
146
143
147
217
199
151
250
180
213
173
170
145
140
243
236
230
202
256
186
202
260
195
219
261
234
185
171
199
228
126
175
183
214
221
184
252
231
178
242
190
201
224
224
188
224
219
208
244
184
132
151
202
125
210
169
166
159
211
233
204
206
166
213
247
190
200
186
144
175
205
188
228
241
209
189
245
166
178
212
191
153
231
207
204
256
189
177
234
258
181
186
214
212
211
231
224
200
251
224
197
138
225
223
133
202
104
123
219
185
167
169
149
232
175
232
170
206
184
198
237
199
249
197
158
234
203
194
204
210
162
200
273
271
205
244
189
195
204
199
219
214
223
140
176
188
161
236
235
197
184
193
248
178
179
171
219
218
199
231
202
211
217
220
220
175
165
206
117
218
198
149
202
94
197
129
217
194
257
233
198
188
185
178
182
196
207
239
207
155
223
228
200
288
199
193
159
226
214
230
188
199
195
230
254
223
278
218
223
238
202
184
198
178
232
205
242
297
235
213
184
258
168
188
222
140
230
234
184
183
196
197
184
196
197
212
240
197
162
206
94
245
254
195
154
166
187
221
159
212
203
161
217
195
156
188
212
201
224
180
184
180
207
230
218
191
139
191
235
241
202
175
192
154
208
144
228
241
216
177
203
200
191
196
168
201
214
139
177
180
234
158
166
191
232
194
177
155
215
158
205
197
175
177
247
135
217
178
237
239
229
179
214
219
216
236
203
218
164
253
159
158
210
190
193
185
214
249
232
178
209
189
221
234
205
230
166
218
199
185
216
237
242
166
161
141
159
152
267
205
180
173
233
206
217
201
220
186
217
193
188
235
184
234
194
199
240
248
239
197
174
162
259
129
201
240
189
183
196
258
197
229
169
195
258
185
181
223
204
241
216
176
180
164
159
171
178
213
200
204
167
198
161
180
186
122
200
174
178
172
228
165
188
186
177
229
206
194
140
202
223
179
231
221
243
221
147
208
215
159
268
140
177
205
237
187
217
233
210
211
228
201
145
226
188
238
193
232
210
193
226
144
172
192
212
251
192
189
200
207
207
255
187
228
203
225
225
231
134
236
222
225
273
229
195
244
200
167
193
211
222
230
210
237
176
227
182
215
245
167
135
251
201
168
195
172
249
139
231
162
187
230
235
241
226
187
176
195
183
221
244
176
275
201
185
228
208
175
196
105
114
206
155
168
172
198
194
243
238
223
181
196
178
173
257
163
224
179
204
163
138
169
181
171
219
230
113
206
216
211
187
210
186
185
199
211
162
190
196
203
236
189
216
160
172
185
265
190
168
227
142
171
261
192
193
161
197
206
130
209
177
159
221
185
220
151
180
229
276
209
177
228
212
167
209
234
260
229
224
238
210
160
255
184
211
212
177
188
263
229
173
123
196
196
155
248
167
229
219
275
198
179
156
258
230
223
171
235
171
258
180
232
166
219
155
169
189
239
229
117
216
264
174
210
165
250
216
141
217
208
220
143
194
191
228
211
193
175
247
207
219
207
182
196
235
205
209
221
227
207
204
248
201
142
193
151
199
230
186
205
211
155
234
215
169
203
256
202
209
223
168
241
207
182
171
256
162
223
188
231
128
155
195
224
231
212
229
129
233
235
192
155
231
161
198
197
153
168
210
202
236
269
171
168
169
199
213
199
162
204
232
154
201
211
196
155
184
164
214
201
179
161
244
236
217
193
211
205
231
225
231
203
196
162
191
191
222
222
182
233
188
173
210
199
216
205
194
181
235
165
219
189
244
194
243
214
202
203
159
201
196
162
197
240
235
258
207
246
276
187
198
206
234
157
226
230
208
188
167
209
248
237
190
190
216
158
158
208
186
234
187
213
185
173
172
250
243
168
225
223
177
200
241
175
214
180
204
195
200
185
159
204
258
183
194
180
165
232
188
121
171
164
225
234
204
141
220
218
202
166
180
251
208
215
215
203
135
172
245
286
183
209
180
238
185
190
150
199
208
184
196
210
145
134
229
181
149
255
224
230
174
196
152
178
219
185
236
202
215
223
187
210
231
186
141
220
192
254
161
203
244
222
157
240
174
235
216
158
199
234
183
230
156
191
164
234
165
179
265
231
182
196
261
201
201
220
184
210
189
215
252
241
229
142
256
151
206
231
204
208
250
189
153
193
159
166
222
238
163
209
191
192
232
199
214
220
200
200
136
165
234
205
185
164
181
135
216
239
181
192
205
207
229
189
205
243
222
209
146
189
158
204
154
134
169
195
209
215
203
223
210
158
217
242
169
223
219
175
177
232
191
193
231
256
163
217
271
225
210
197
228
184
213
195
158
205
189
154
147
206
237
185
180
196
176
107
243
202
263
244
140
223
193
145
231
219
155
185
207
202
185
172
154
211
202
229
232
193
203
202
122
236
206
146
191
245
217
157
140
164
197
226
196
208
189
179
201
213
165
194
224
224
188
190
241
175
238
203
186
174
255
136
205
218
212
175
187
169
176
204
147
206
213
192
152
173
250
197
230
167
209
269
191
269
158
209
196
240
238
194
199
163
180
212
156
155
199
275
178
171
204
191
184
199
193
181
208
199
206
246
209
129
260
169
217
184
206
210
190
193
188
216
239
220
205
155
213
195
194
216
214
133
165
217
198
206
205
205
198
190
217
101
174
124
222
199
210
113
177
163
235
231
224
222
257
131
235
254
199
214
194
166
206
252
218
252
164
206
219
206
163
210
170
235
151
187
215
168
216
175
183
197
213
140
217
169
197
123
197
191
231
240
180
152
240
233
148
164
188
165
230
165
157
185
260
156
188
199
220
180
185
193
226
232
180
189
229
216
208
169
197
218
196
226
141
221
213
229
200
162
214
189
175
201
177
156
196
143
185
152
208
177
201
199
221
151
247
160
183
219
110
217
215
232
180
245
256
255
175
225
162
188
160
221
230
217
221
138
170
258
204
180
113
156
200
187
209
234
201
173
263
221
229
211
213
191
220
179
139
256
198
258
226
191
188
212
209
169
203
240
185
191
165
229
178
244
199
254
245
207
214
210
210
148
197
216
234
195
235
220
233
181
229
167
271
154
269
191
198
254
229
172
185
215
160
206
255
189
147
198
259
155
217
191
186
200
151
156
176
173
225
221
201
146
160
189
231
98
207
124
125
184
148
203
163
277
221
225
174
126
194
201
237
197
192
241
129
239
182
196
111
199
211
154
157
205
169
196
199
168
191
156
165
223
177
199
230
183
256
152
238
203
217
263
147
206
173
222
195
197
180
135
257
231
205
209
226
174
224
129
208
207
264
243
218
199
228
159
206
231
176
203
133
217
163
182
163
189
195
195
186
229
163
152
156
175
194
196
151
237
193
152
243
185
231
197
192
146
225
144
251
216
205
189
229
157
191
172
151
219
217
158
240
252
199
203
213
244
197
211
230
163
146
195
212
205
178
198
165
219
180
197
241
207
199
228
261
222
227
231
210
193
192
201
180
230
174
200
141
165
224
193
238
213
175
168
229
240
186
206
151
210
160
142
200
225
218
195
215
219
150
197
242
131
179
252
220
224
199
180
185
164
153
212
214
231
244
129
157
223
167
195
226
178
204
226
264
154
187
225
196
191
221
164
174
191
219
208
221
180
220
236
179
208
180
271
178
196
172
174
204
149
191
194
267
177
248
186
241
209
188
158
200
234
212
130
154
188
242
219
223
219
221
187
194
221
208
189
185
238
186
131
200
183
210
208
178
158
150
212
250
199
140
158
190
178
193
190
194
183
225
141
208
188
230
169
216
204
188
196
236
208
205
194
181
165
177
193
239
263
193
192
182
145
179
198
224
193
159
173
250
205
253
243
219
213
169
165
198
218
198
233
211
227
193
236
230
170
202
200
246
230
163
233
209
215
202
234
223
239
213
172
219
238
168
226
224
123
265
167
224
231
239
200
159
229
197
264
186
182
190
109
166
228
258
142
158
211
184
220
209
226
236
174
189
191
210
232
153
177
247
205
211
190
183
196
236
187
181
232
202
174
227
185
226
197
224
142
223
228
234
254
140
229
231
183
232
260
182
198
151
197
202
200
165
154
214
247
214
122
201
226
179
188
186
170
191
143
197
205
237
229
250
185
193
198
229
186
201
202
178
248
162
224
183
197
227
182
164
211
185
262
199
174
215
184
180
182
238
165
230
219
237
221
194
182
160
155
206
243
207
206
226
200
213
253
275
178
212
146
141
220
178
171
237
209
247
185
225
145
218
267
206
228
241
200
219
202
222
198
232
164
165
201
235
208
233
158
205
257
195
158
225
239
142
204
223
201
196
254
234
164
220
205
204
207
247
188
172
203
187
138
203
221
165
178
204
130
227
215
226
189
255
179
245
179
282
228
186
211
239
154
146
127
182
211
199
133
222
208
221
221
146
134
201
262
184
245
167
201
218
195
234
217
218
189
160
161
268
247
208
215
188
125
202
208
210
148
222
182
212
202
193
187
173
209
204
151
167
193
263
252
166
217
216
226
166
199
206
214
300
219
157
165
193
207
184
195
191
136
223
217
166
175
173
193
218
158
191
242
131
202
191
215
221
190
147
154
212
189
223
195
208
223
137
180
199
247
198
228
233
169
213
223
186
181
162
210
104
199
169
167
230
235
220
163
160
268
215
269
159
200
203
220
166
254
171
264
251
218
257
195
192
271
127
255
204
212
205
205
210
189
146
197
229
128
202
171
145
200
191
229
162
204
219
224
185
106
199
201
176
189
194
174
181
163
203
222
205
182
218
140
207
253
151
187
165
144
197
168
199
205
188
175
196
225
202
186
212
206
207
229
224
143
165
211
207
234
190
209
209
186
229
170
230
177
198
279
197
176
194
181
174
199
224
203
141
211
204
162
187
186
185
221
196
95
188
140
198
205
243
233
155
256
256
218
217
207
223
200
148
235
172
191
101
178
174
140
143
153
203
119
165
167
204
253
208
236
237
242
228
273
197
196
188
196
231
245
221
199
202
202
255
258
174
206
156
231
162
245
248
198
224
164
177
154
223
195
127
231
174
211
208
160
176
168
183
191
224
215
172
191
208
122
157
200
192
233
231
159
210
182
165
210
215
196
191
205
166
229
209
211
210
216
172
216
187
238
182
188
165
215
176
140
207
166
182
209
219
194
177
198
220
188
241
185
164
210
191
236
188
191
205
206
276
214
134
216
219
199
172
223
157
210
216
158
183
241
168
238
198
215
206
227
237
201
177
232
183
196
218
185
151
234
228
179
204
198
219
217
185
231
150
226
209
251
172
87
176
202
210
146
158
194
175
238
215
234
192
222
242
140
187
268
174
190
206
133
192
157
123
224
189
243
274
199
143
221
167
200
189
214
211
108
272
158
193
179
179
226
248
241
214
241
205
229
238
203
236
142
209
223
149
221
184
192
188
227
242
219
201
203
190
177
186
182
202
135
244
193
205
155
197
187
160
212
209
230
191
205
208
196
187
220
193
267
155
203
246
152
234
187
207
171
196
209
220
237
197
179
159
150
204
185
204
203
183
219
208
192
194
213
225
234
205
218
207
214
181
232
187
178
182
216
188
237
238
219
179
267
215
178
145
222
205
204
227
230
157
165
214
217
195
127
201
218
176
207
263
176
249
251
170
216
175
224
206
190
218
230
131
209
200
175
165
210
222
222
222
177
203
184
240
181
177
227
216
202
143
232
233
212
240
217
180
224
280
234
243
212
205
274
194
206
199
259
215
250
202
154
183
161
215
211
184
240
195
171
217
210
181
146
225
215
227
198
169
172
217
161
163
215
218
224
187
218
153
144
209
192
241
94
229
230
238
245
240
172
268
170
204
266
243
163
158
267
187
209
136
189
204
231
227
184
164
203
185
228
201
162
173
204
211
210
256
210
193
190
168
173
239
162
199
219
182
204
213
241
203
225
223
192
208
200
191
251
221
180
252
195
187
192
199
172
173
185
162
219
151
220
224
175
200
161
237
203
103
211
194
224
250
199
209
154
220
240
195
189
212
156
234
143
205
172
221
168
207
198
221
171
199
252
175
176
226
210
208
213
239
222
224
204
234
205
192
207
205
193
156
180
185
157
168
217
228
208
169
168
188
181
206
180
150
160
257
207
251
226
171
166
197
176
227
244
238
252
161
162
154
195
173
196
232
146
248
134
231
217
177
204
251
214
235
189
197
201
230
179
207
213
191
218
178
251
191
224
236
147
113
250
230
215
204
243
258
214
168
221
174
214
134
159
176
156
199
240
210
199
212
204
245
220
239
166
259
248
205
169
241
204
205
218
195
155
158
253
191
225
158
238
173
155
197
186
211
187
148
180
171
175
175
223
158
138
148
169
201
188
184
298
222
197
199
159
289
223
209
198
241
215
200
205
167
182
246
222
132
198
205
199
179
195
236
147
221
192
143
181
181
210
161
202
215
246
194
248
231
199
195
199
164
237
177
227
220
238
215
256
152
221
252
237
201
213
154
232
178
239
213
196
195
231
188
172
251
184
196
211
234
222
164
178
152
249
245
139
133
180
261
176
231
250
203
216
217
213
215
195
199
246
232
233
193
255
215
231
175
197
203
214
225
159
189
150
185
195
162
211
174
221
202
180
178
213
238
229
235
169
194
188
178
207
202
185
171
208
241
178
245
210
222
268
193
281
205
223
240
188
181
137
172
162
183
165
235
231
250
198
202
250
152
229
156
198
187
270
187
210
199
209
213
248
188
169
209
208
179
201
258
186
142
197
196
152
174
146
206
173
146
211
186
135
190
242
226
121
215
179
226
215
110
237
199
201
216
169
149
176
240
231
233
258
260
221
267
206
207
182
231
233
214
254
200
226
249
204
150
207
151
221
173
189
190
207
224
203
177
140
137
243
216
246
157
181
194
179
223
249
210
258
188
218
211
166
223
191
229
149
188
180
185
220
252
208
250
123
199
178
155
205
202
222
191
201
189
163
204
224
200
242
238
234
183
246
211
210
208
198
170
233
220
175
160
165
192
179
181
208
195
180
210
175
132
215
211
252
156
236
213
226
226
206
181
207
184
191
249
173
156
253
215
219
184
196
229
155
201
284
230
209
194
171
120
224
188
211
243
154
216
178
244
193
183
222
145
175
249
173
179
211
208
249
134
193
245
164
157
218
184
261
203
229
184
192
170
244
154
213
251
207
229
221
183
219
195
243
249
175
162
222
114
194
142
211
238
244
188
195
205
185
156
243
139
197
148
125
172
199
211
209
178
173
192
184
254
150
224
182
188
223
252
235
200
254
174
240
174
189
192
227
184
246
213
245
215
205
172
211
260
250
215
213
239
167
180
214
184
172
158
194
122
145
228
209
181
210
252
236
177
177
178
164
191
168
164
178
217
183
262
202
170
164
221
174
187
141
252
220
182
213
202
217
192
180
244
211
249
250
211
168
220
208
198
245
237
192
162
209
209
229
203
241
178
228
218
171
198
213
199
169
134
228
154
220
184
218
212
257
199
233
229
177
177
191
164
184
185
200
253
137
249
195
197
174
209
208
185
160
154
210
160
202
232
174
217
231
178
188
164
219
208
175
208
201
180
215
163
200
183
132
137
136
139
254
197
234
161
209
114
249
166
252
219
183
236
251
171
180
200
208
198
160
224
160
136
243
223
225
185
175
183
225
168
209
216
264
139
176
216
191
212
200
187
216
221
186
214
213
257
260
202
161
189
182
185
220
199
212
194
214
188
178
201
259
209
177
276
187
188
191
217
207
232
193
180
230
205
242
205
169
173
152
183
119
153
203
192
173
131
226
219
232
201
185
224
173
197
204
236
249
133
183
219
189
215
208
185
126
216
211
203
161
196
206
263
175
232
222
163
236
198
233
187
170
231
280
234
122
212
217
224
197
145
147
215
197
210
244
205
204
199
243
229
217
198
168
203
201
201
218
201
218
169
203
234
204
206
204
230
217
223
190
182
217
189
246
197
212
205
206
218
228
197
250
148
184
166
230
207
240
206
272
208
185
202
243
233
157
215
192
194
245
273
215
224
228
168
226
209
254
172
175
207
230
283
256
190
218
190
196
250
255
136
176
259
223
178
148
167
198
177
200
164
171
216
226
195
170
209
240
176
280
152
232
258
159
208
205
221
222
232
226
205
236
243
144
229
224
217
207
191
171
197
252
173
225
191
236
165
191
259
202
166
214
224
181
203
202
229
187
229
232
178
204
139
134
210
195
162
170
220
202
219
143
241
204
193
218
243
134
191
135
148
247
194
197
193
202
215
172
167
249
184
205
174
263
182
139
212
228
195
212
240
198
235
229
134
239
169
215
197
179
192
226
137
220
240
187
238
230
238
220
206
242
193
180
178
190
205
240
199
230
244
182
229
257
223
216
198
190
213
235
215
183
222
172
233
171
172
236
194
182
215
229
160
217
151
203
218
207
164
128
233
134
200
180
191
218
220
160
196
129
215
173
154
128
238
161
205
211
197
247
138
192
163
273
196
211
245
183
171
137
191
205
246
148
231
267
172
142
248
130
218
206
269
161
226
204
233
143
208
236
250
214
173
176
238
225
257
189
233
126
216
213
188
206
175
248
195
200
257
200
197
207
169
263
187
249
199
161
268
225
228
184
201
204
264
199
204
231
245
249
173
221
200
142
176
243
109
204
151
215
222
196
255
170
165
189
166
211
222
222
202
167
231
228
257
226
199
131
202
240
159
191
203
177
259
229
250
213
193
207
240
160
204
152
195
195
204
189
232
193
203
224
240
209
178
230
190
212
128
222
176
149
196
169
132
140
236
207
237
240
179
206
230
131
261
186
236
183
192
149
185
224
247
250
223
212
172
159
218
208
164
205
213
178
187
227
160
193
179
174
175
215
181
275
182
219
129
238
178
181
201
209
173
219
219
205
216
188
159
223
178
202
169
246
212
169
153
157
226
138
199
125
171
145
229
161
167
218
189
209
217
219
237
182
164
208
118
168
79
181
178
168
186
212
190
176
125
162
234
163
225
211
206
154
212
201
205
162
148
207
194
204
203
149
220
198
244
208
181
152
256
215
163
187
166
184
230
169
171
201
230
195
186
231
129
203
153
193
175
234
178
148
102
273
192
199
199
168
238
181
165
151
139
239
170
189
205
190
192
185
249
219
216
174
160
220
200
173
192
156
216
165
182
138
215
231
250
192
188
227
210
182
202
207
128
199
258
104
236
182
151
216
173
172
222
154
191
206
184
197
172
201
235
188
193
250
256
249
201
215
182
162
196
189
247
167
217
244
254
236
246
198
215
173
255
182
167
191
306
194
286
178
203
164
233
181
142
182
199
222
202
188
184
170
183
184
154
173
266
206
244
255
179
182
205
174
212
236
260
220
225
192
159
274
235
207
251
183
165
204
227
196
193
202
218
200
195
188
180
136
202
238
228
192
215
227
171
157
181
200
206
209
254
185
150
226
168
216
173
147
189
214
215
221
239
178
260
207
229
196
233
144
227
134
260
233
205
256
213
174
176
232
199
244
255
198
224
126
199
189
221
211
130
279
244
211
170
191
180
210
164
228
183
166
205
170
197
234
236
204
151
194
230
221
204
210
173
119
221
235
230
191
189
154
144
207
191
180
248
170
169
224
204
247
177
231
197
242
187
176
234
193
250
195
174
236
135
210
196
166
195
194
167
218
187
223
206
154
202
227
193
218
192
197
233
240
277
267
216
167
179
166
195
226
173
177
203
168
208
198
140
214
218
156
165
216
139
247
231
205
153
247
198
218
193
231
156
165
186
150
222
216
179
222
181
212
181
199
160
202
270
185
203
156
217
204
247
191
241
202
219
225
170
235
99
171
177
191
132
173
191
168
227
212
194
265
204
173
196
187
240
170
222
239
250
214
230
192
251
192
148
258
223
199
139
193
184
174
198
194
237
176
106
215
141
177
192
163
246
198
233
254
197
203
191
236
185
164
247
159
192
220
195
208
157
178
192
276
200
243
192
160
205
202
198
202
231
197
180
197
202
185
177
243
185
204
205
237
175
155
216
168
230
222
185
276
154
180
198
247
202
213
223
212
214
169
171
219
260
181
194
235
209
242
242
185
242
202
265
213
178
201
234
178
222
150
227
173
198
151
171
206
217
201
190
218
144
194
254
182
268
217
187
136
216
159
199
216
237
224
203
224
136
187
179
208
167
185
226
250
230
240
247
304
182
204
160
224
218
166
135
223
173
188
230
136
226
231
225
179
216
175
204
197
233
194
224
205
208
215
245
192
196
193
165
230
193
285
212
212
225
172
184
202
213
180
189
199
193
201
196
178
241
187
172
180
218
143
187
217
211
185
177
216
220
168
171
225
88
234
165
176
277
165
199
232
185
233
195
212
202
231
278
235
236
177
181
227
169
236
253
216
240
179
149
198
262
163
189
269
209
207
186
202
212
160
270
178
244
231
232
213
129
223
210
179
191
191
205
193
146
214
211
229
200
211
189
192
203
187
206
260
172
181
204
192
171
237
238
176
214
247
219
141
229
211
158
186
226
165
235
180
162
217
157
168
90
187
147
160
199
199
198
126
221
167
223
172
219
174
200
183
177
187
195
192
216
210
216
199
230
185
125
209
200
206
231
157
208
228
182
225
240
263
173
252
166
178
231
225
166
210
255
249
235
203
217
184
204
191
196
199
173
179
202
233
191
253
206
267
145
248
176
160
228
142
221
234
213
195
193
181
208
225
244
221
214
202
222
193
246
207
226
259
148
144
208
251
178
268
147
187
204
195
148
164
214
188
206
193
185
118
228
198
170
160
230
249
191
178
211
170
243
113
224
239
275
125
202
215
283
204
206
225
247
218
171
201
160
220
177
225
129
190
227
233
223
181
187
176
171
197
219
201
188
175
221
205
224
176
221
151
187
211
183
191
153
195
230
145
215
208
177
220
190
225
177
147
223
233
242
214
204
215
209
212
184
231
238
193
178
202
260
244
263
153
191
233
228
239
192
235
190
240
114
224
155
184
143
239
191
211
164
218
205
241
262
185
186
94
194
244
176
230
165
181
199
211
159
182
168
198
246
178
203
206
199
189
189
179
154
171
188
213
224
219
163
200
182
184
165
205
238
208
187
175
212
201
162
249
208
267
174
201
240
247
239
267
230
194
178
168
255
175
205
174
228
212
234
182
149
208
212
192
221
226
190
243
191
142
157
218
178
141
205
178
177
202
224
153
156
174
237
176
219
214
181
131
207
227
133
169
202
279
158
198
216
222
234
269
214
168
195
162
133
260
239
236
175
240
204
240
230
251
167
172
243
179
239
183
184
210
277
126
180
219
211
204
171
219
187
176
223
216
178
156
213
224
260
233
150
211
249
226
242
177
159
210
185
233
219
179
226
213
242
193
171
225
252
264
140
209
200
234
194
236
199
169
169
224
177
214
218
223
216
194
201
118
184
195
210
222
177
215
205
203
236
167
195
224
242
275
246
233
177
212
235
176
196
191
200
187
189
229
202
134
171
219
177
153
175
147
197
251
254
233
191
209
183
228
180
207
227
170
170
207
149
192
244
208
195
159
242
181
179
195
222
199
238
187
200
168
199
198
203
216
220
217
215
152
261
215
261
171
191
152
176
155
210
159
179
194
160
160
182
202
228
164
254
206
155
186
179
212
147
224
163
189
259
117
227
153
175
224
190
142
201
148
184
144
207
229
247
149
137
129
199
255
232
172
255
176
141
222
195
248
235
209
214
196
192
240
235
234
224
221
182
164
224
256
251
192
174
236
155
199
202
234
163
243
224
220
152
194
145
177
190
147
121
157
212
220
219
230
245
227
244
242
175
196
202
204
216
150
205
208
176
247
153
218
212
222
260
163
220
217
234
210
245
170
155
253
188
159
191
239
262
250
195
237
115
237
264
175
206
246
161
191
240
201
225
188
210
223
204
171
228
165
199
180
177
194
227
185
205
231
206
219
180
181
194
191
242
138
198
202
190
171
194
235
227
197
181
199
168
206
192
169
242
275
220
198
221
155
184
171
198
233
110
188
212
255
222
242
219
194
208
125
196
235
215
157
188
192
235
253
204
227
266
233
217
200
215
150
212
185
167
208
198
214
206
257
178
191
174
197
190
227
204
197
184
221
155
253
264
166
208
187
184
199
198
186
209
199
168
212
203
191
210
185
259
196
240
200
265
188
179
189
240
223
216
171
213
202
223
245
215
193
178
236
265
248
182
208
209
225
146
209
204
174
236
219
205
179
145
205
228
224
231
209
189
167
228
220
172
195
216
140
214
200
188
135
160
221
249
178
200
174
193
225
207
223
188
248
209
159
161
181
223
205
192
206
195
214
221
201
267
161
261
254
205
188
188
191
217
191
175
218
184
181
180
198
212
187
230
157
228
195
206
264
186
204
211
220
185
179
203
181
136
236
183
248
196
226
232
214
138
195
155
213
88
224
179
189
125
195
229
233
172
245
141
229
126
172
165
185
199
223
209
214
179
257
242
216
262
186
263
220
212
259
212
171
175
162
181
234
185
128
221
185
247
190
182
228
256
205
175
135
236
143
205
194
205
166
194
125
268
170
245
132
190
182
176
136
224
197
207
144
146
266
175
168
168
230
178
224
190
202
276
196
276
214
188
220
221
197
171
249
127
231
196
179
181
246
167
191
208
150
205
224
190
234
187
200
212
169
174
207
179
156
229
245
172
271
193
225
232
207
228
189
227
232
170
167
175
153
173
125
193
226
207
196
207
203
230
231
195
148
213
207
154
233
189
203
183
210
214
204
154
172
193
249
152
190
217
223
204
249
186
241
244
199
193
200
222
211
201
193
230
210
156
204
192
139
266
220
209
176
238
182
163
142
94
192
243
190
234
184
237
227
192
164
262
170
170
134
150
156
193
211
213
142
169
175
231
209
207
148
206
245
219
215
136
259
222
193
186
155
176
236
186
206
175
231
175
204
240
218
191
250
203
194
167
171
178
189
199
191
221
210
262
219
123
241
188
225
184
185
169
196
238
170
193
205
124
172
182
275
197
189
188
229
163
271
158
129
242
250
205
177
192
222
167
220
166
213
162
190
190
232
249
195
251
165
227
147
239
236
221
186
254
119
233
186
202
184
181
218
213
193
152
213
210
216
191
275
160
189
169
207
203
197
223
195
141
226
159
194
192
200
208
224
143
193
167
173
159
176
148
225
213
213
215
188
160
197
211
252
208
225
224
237
213
159
184
201
221
181
214
213
123
271
232
217
223
172
215
205
210
229
278
221
196
230
215
194
152
204
184
228
234
174
199
178
187
220
177
155
220
232
138
153
154
173
144
193
227
228
226
180
187
226
207
239
187
205
198
269
244
193
215
257
244
212
180
210
230
221
242
227
208
196
221
216
214
227
187
218
225
176
119
247
210
241
163
217
222
210
166
208
148
202
187
217
171
167
172
221
213
229
190
199
191
241
172
134
201
200
201
171
204
138
151
231
166
246
190
214
244
216
196
206
173
149
196
203
163
228
244
243
209
179
232
248
172
235
192
219
192
210
228
183
234
197
254
238
172
189
147
199
114
164
173
218
234
139
225
194
207
198
210
203
254
172
217
138
197
221
202
174
292
261
175
217
211
161
165
167
188
231
182
183
170
185
193
227
216
147
221
172
238
174
162
220
249
223
209
243
142
183
201
193
191
172
217
175
204
216
164
269
195
179
83
212
186
218
287
118
197
178
191
171
212
243
164
139
158
233
167
205
177
177
247
205
226
116
246
167
195
149
171
186
216
203
234
161
174
215
232
184
215
169
208
163
202
195
198
184
202
246
235
149
201
158
234
170
271
202
250
219
176
129
185
255
216
205
247
222
211
171
208
205
194
237
210
206
222
222
176
158
169
190
247
197
145
218
205
195
220
198
207
175
193
235
188
235
228
250
188
149
204
209
158
207
210
173
174
217
222
176
235
140
190
229
213
243
179
176
192
210
229
195
214
229
270
144
247
288
195
221
192
222
216
195
277
205
243
171
213
152
181
227
181
179
234
159
208
230
172
211
181
181
226
232
128
202
236
248
246
216
218
240
243
246
190
189
232
212
166
213
222
174
260
206
203
196
226
177
264
201
197
240
220
225
246
223
261
223
210
175
234
224
260
169
222
182
220
175
180
125
269
168
165
247
192
245
175
184
210
186
180
144
260
223
197
183
160
162
214
167
168
252
249
217
238
185
194
203
142
228
240
208
146
222
237
204
220
193
204
204
155
193
215
154
179
254
135
133
183
165
199
178
186
229
223
155
218
247
231
250
250
201
155
128
185
235
246
151
164
177
228
185
167
145
213
193
164
198
182
179
203
232
191
141
207
162
141
238
209
226
199
252
176
231
153
177
190
167
175
235
249
206
177
216
165
214
192
211
160
220
179
205
237
235
195
185
214
204
202
134
174
247
215
210
202
291
173
201
184
182
182
199
107
171
259
205
215
197
174
163
249
204
255
237
224
190
232
231
199
196
249
147
202
248
166
189
208
241
183
179
199
203
226
241
200
247
129
237
193
190
230
222
225
252
265
243
232
150
192
244
174
191
192
170
156
173
198
237
204
200
264
215
241
218
199
205
236
224
182
173
194
205
219
232
184
160
264
172
137
188
182
193
220
212
202
208
212
134
196
172
221
167
246
260
187
163
185
192
244
229
226
189
186
250
225
233
210
179
185
155
173
197
152
205
245
161
152
162
223
195
223
239
237
184
164
204
254
191
248
196
202
172
275
207
166
246
183
235
218
239
216
213
192
158
218
233
105
184
217
207
164
213
171
220
205
196
227
192
196
242
153
240
188
168
218
222
241
226
192
175
249
169
142
218
178
236
191
264
184
189
154
241
177
151
210
254
190
192
144
190
164
241
197
216
215
221
205
197
193
254
237
185
207
198
106
230
223
182
186
201
221
248
246
251
218
208
131
187
188
242
178
157
257
227
168
156
211
188
210
186
132
163
172
138
119
254
207
198
193
199
173
193
188
194
195
227
203
194
238
147
213
203
236
191
145
188
248
249
169
205
182
211
176
237
196
122
153
240
145
194
231
145
235
198
153
182
255
180
186
245
195
164
227
205
246
272
213
226
157
239
226
142
199
154
129
207
244
230
176
215
180
198
227
235
199
206
166
137
211
223
173
132
247
162
255
245
146
227
254
196
162
191
196
215
153
156
187
156
225
201
190
191
223
191
146
182
199
235
200
255
226
193
187
252
252
226
240
211
169
200
245
240
212
210
167
157
184
208
200
206
170
191
160
209
178
235
216
176
210
173
180
214
189
259
243
230
198
153
235
228
226
260
207
228
249
225
253
189
131
218
158
291
111
214
257
175
80
201
192
238
186
176
220
233
269
238
187
191
276
208
234
180
188
236
224
211
222
216
203
192
198
216
160
203
217
213
137
145
208
198
163
177
156
164
198
226
209
217
117
165
264
174
135
208
202
214
232
185
151
152
154
173
192
205
158
186
233
217
203
233
278
199
195
203
213
210
171
183
215
263
204
166
197
183
195
190
165
206
186
253
136
177
147
151
124
203
187
183
154
226
177
211
191
241
175
184
157
167
226
166
251
231
179
191
162
176
226
240
200
250
178
142
179
166
198
201
222
117
219
196
147
208
185
171
199
130
180
237
180
188
226
217
149
219
211
200
178
135
123
168
214
134
222
209
232
193
174
224
215
197
227
230
234
225
246
210
224
251
154
199
130
278
140
196
180
239
208
222
221
153
226
117
161
203
181
195
166
166
200
233
216
247
151
173
220
180
243
200
173
160
198
244
200
178
258
189
222
232
148
189
201
192
200
169
193
215
156
244
194
216
219
217
191
233
197
126
172
274
176
233
184
151
204
150
246
193
245
237
239
254
181
186
175
194
204
149
208
185
235
207
126
212
235
223
139
259
217
181
234
201
210
229
215
195
190
188
218
206
223
205
214
201
189
228
202
166
174
196
217
219
211
227
240
218
197
224
239
256
211
215
182
204
181
209
235
170
240
180
258
199
145
140
222
171
185
193
239
176
129
165
213
192
163
194
210
217
220
190
212
267
217
198
241
237
182
225
255
187
139
206
193
230
178
185
133
196
208
160
175
183
263
206
207
133
225
156
118
233
193
205
172
166
217
221
173
236
173
130
308
225
157
188
181
258
245
238
258
191
163
180
180
138
223
137
215
193
165
185
202
141
211
164
223
238
178
202
207
165
152
210
169
188
203
232
202
137
225
239
164
205
199
200
258
164
246
235
170
195
202
215
211
178
243
210
226
252
257
138
253
188
185
185
183
207
223
260
204
194
211
199
170
211
160
162
261
195
237
182
217
195
201
139
252
225
170
175
171
168
225
230
218
194
214
245
195
204
189
194
186
222
207
247
255
186
219
219
163
193
208
261
159
205
226
193
197
199
175
203
241
223
239
172
197
245
208
147
144
258
122
218
267
184
177
198
176
172
176
219
206
248
169
173
194
217
148
192
241
247
218
201
72
203
227
211
162
200
240
185
206
236
235
207
201
225
256
201
258
196
232
269
172
243
234
185
225
135
201
180
241
221
198
219
237
130
158
179
213
132
143
248
231
240
203
194
263
128
179
209
226
177
213
146
164
118
236
227
206
180
214
149
173
156
250
224
175
233
134
203
205
184
188
156
125
182
230
250
239
241
241
108
196
249
210
193
185
226
262
190
219
232
190
191
221
207
232
234
218
236
281
201
178
188
211
168
211
179
219
167
220
181
195
203
254
164
202
180
263
221
216
138
246
120
227
198
196
206
248
174
222
206
167
175
152
189
234
211
234
193
176
175
229
164
192
252
200
232
210
247
200
260
172
219
210
221
170
214
254
181
177
275
206
212
242
259
232
131
223
247
156
236
170
137
159
211
185
137
216
96
159
190
203
238
216
182
195
192
242
196
250
208
218
186
229
206
219
185
217
220
180
205
110
239
176
210
173
209
228
200
237
188
132
161
185
198
152
139
183
113
226
238
240
188
200
160
226
259
169
193
222
219
186
211
216
222
199
195
199
231
229
203
209
200
221
180
149
187
255
155
146
191
176
240
260
194
197
222
237
217
245
147
193
151
131
126
248
218
192
188
165
187
182
137
247
276
177
266
259
240
146
222
187
208
222
200
235
208
218
221
229
271
189
187
173
226
182
157
201
227
231
160
203
196
211
147
253
205
240
193
219
192
195
127
211
200
204
168
180
158
199
169
152
157
216
208
202
219
158
203
206
151
230
167
184
197
215
185
192
142
193
134
213
162
205
204
152
197
152
211
177
226
221
186
192
204
172
198
226
142
216
128
198
171
145
185
230
158
184
227
175
136
202
116
190
224
189
193
201
107
215
183
222
217
190
181
226
200
189
161
193
210
195
181
179
200
223
186
181
235
223
230
222
253
278
231
255
156
162
223
201
229
211
210
182
148
216
177
216
175
191
210
174
263
275
200
163
159
216
162
192
182
189
124
228
224
257
145
233
232
207
220
216
203
195
170
214
153
207
176
156
223
169
227
184
170
177
268
216
264
206
220
229
175
250
143
227
151
199
185
254
219
266
232
209
156
187
230
189
184
248
190
208
214
242
202
223
164
169
219
178
167
215
265
178
199
253
149
192
177
177
146
198
173
204
170
138
236
229
202
216
134
212
217
212
235
132
205
171
203
204
184
276
215
178
240
155
176
141
191
189
193
180
264
196
255
171
182
209
203
151
215
188
180
199
230
209
245
168
159
214
253
231
118
272
193
237
223
166
240
141
129
126
201
196
197
162
165
194
199
231
178
223
184
169
169
181
210
199
218
244
217
189
229
239
317
173
213
189
266
167
233
193
224
189
205
197
132
205
248
222
252
186
215
213
173
209
237
191
224
223
188
199
205
190
207
229
238
190
188
239
196
211
205
237
258
134
238
190
210
208
182
208
194
180
136
197
224
232
222
199
145
156
180
199
203
145
180
204
253
208
178
166
141
158
262
147
200
218
156
194
166
255
170
233
152
272
191
224
251
204
132
197
183
185
220
141
183
204
188
160
215
215
174
177
236
217
220
182
217
185
181
253
211
227
138
207
181
185
233
183
213
234
221
178
217
193
243
229
218
170
196
198
183
133
232
223
144
185
188
242
176
221
195
248
149
193
180
195
209
156
212
233
216
215
197
131
201
171
194
205
164
191
209
257
200
230
182
246
230
211
237
191
220
188
230
212
147
160
211
161
204
205
177
248
214
198
241
163
244
227
176
215
197
208
199
169
184
231
220
179
212
210
165
220
220
205
210
248
148
170
188
223
240
241
176
176
200
207
238
227
218
182
141
198
226
234
192
205
243
208
211
223
205
196
213
261
144
223
167
163
143
196
185
176
200
166
151
194
208
150
159
173
180
230
156
220
213
241
215
194
259
208
181
220
206
167
180
202
182
137
235
262
161
181
216
195
186
194
185
260
204
169
177
145
237
172
206
183
186
225
285
209
183
151
176
215
259
225
156
199
216
184
199
217
197
190
194
241
201
178
218
146
178
213
159
211
158
283
206
193
203
195
207
116
202
195
161
110
186
210
160
156
246
224
183
285
209
162
175
236
179
229
205
190
222
142
165
217
173
210
222
219
159
216
251
236
195
254
199
276
190
223
196
200
213
243
161
204
192
273
184
226
202
179
196
247
228
84
241
235
246
170
249
212
208
168
214
260
125
230
195
133
184
175
200
231
188
246
210
260
217
184
238
214
241
203
198
194
175
189
200
159
168
192
232
200
180
183
200
196
191
202
170
155
235
118
186
232
204
231
125
243
223
206
164
221
188
234
265
235
266
173
179
171
240
163
239
220
253
222
245
128
136
175
182
187
204
166
206
258
220
195
208
181
198
240
228
217
168
201
184
260
252
177
183
233
234
183
171
208
170
140
224
182
248
107
207
235
163
188
117
209
219
167
179
172
228
189
143
170
221
194
254
218
185
200
217
204
159
178
214
177
154
186
229
151
220
208
191
202
208
220
191
240
173
171
204
182
194
186
179
180
194
215
259
225
189
168
212
211
191
261
181
140
183
182
146
226
213
281
207
133
160
213
259
218
254
240
250
190
135
253
225
205
201
271
197
257
155
122
156
217
229
220
162
180
245
220
207
159
246
152
162
171
225
273
124
207
178
215
197
150
176
168
192
175
226
212
209
206
162
233
211
172
193
198
201
201
171
180
206
199
180
189
192
175
224
180
198
131
220
184
235
188
143
166
214
242
210
218
178
218
243
192
247
200
224
221
123
157
196
197
209
230
207
222
197
199
197
232
218
180
208
203
143
203
193
162
201
158
191
181
235
212
204
151
201
165
172
193
223
153
190
194
193
202
187
211
247
192
184
213
206
221
167
197
192
153
141
248
211
182
179
190
206
236
205
199
218
182
189
175
240
161
170
240
200
183
156
188
222
225
130
234
228
168
245
147
167
195
189
186
146
215
184
163
207
195
203
195
211
209
196
155
286
229
250
181
167
203
212
199
150
224
270
224
144
211
231
248
220
152
224
229
183
210
145
231
230
221
206
163
177
209
150
215
250
262
214
173
170
187
224
198
206
196
168
219
164
192
213
263
223
154
156
200
138
215
196
202
153
201
187
181
229
231
202
172
185
185
196
234
162
229
205
250
179
203
211
231
228
170
174
190
169
214
166
203
173
193
226
143
238
174
251
186
230
193
224
246
193
176
244
205
163
209
187
233
140
224
226
180
249
169
248
147
241
150
171
183
235
132
216
176
160
202
213
185
219
143
235
166
194
224
224
203
163
199
192
228
229
200
219
255
193
186
230
259
176
228
238
194
173
244
169
189
192
176
125
197
145
146
216
233
164
164
263
268
258
188
211
232
204
243
232
202
213
217
231
182
235
273
198
217
243
202
190
171
183
191
169
228
179
194
269
187
235
231
206
208
147
241
235
160
198
119
141
181
175
171
157
177
203
231
167
191
230
202
128
120
260
155
189
238
263
159
240
187
275
260
199
136
173
211
203
158
110
238
207
161
193
142
243
275
218
204
199
204
256
131
166
195
218
247
265
193
214
221
163
184
218
202
194
175
138
165
189
223
192
195
238
206
204
187
206
149
206
215
188
210
211
248
247
169
213
210
215
198
210
170
149
200
162
230
177
144
200
244
184
222
154
212
157
215
265
151
190
200
238
246
175
130
205
227
125
179
212
222
216
244
208
166
211
223
195
172
239
183
217
170
219
227
178
140
195
232
224
205
170
158
185
165
174
217
227
230
270
166
117
232
244
180
292
174
184
216
242
197
225
266
202
248
202
171
155
240
171
182
207
211
208
192
161
239
248
229
161
222
181
224
190
235
172
179
194
243
187
123
189
201
222
246
213
172
195
263
157
205
178
198
236
186
231
193
187
190
211
193
227
194
222
184
292
155
144
196
256
202
214
201
231
226
204
209
185
229
222
263
204
243
232
202
245
209
173
203
148
196
196
181
199
210
173
203
219
202
242
166
125
210
199
255
159
193
228
241
242
213
178
229
226
200
247
187
200
238
247
169
212
200
167
204
197
235
154
170
184
257
181
152
200
236
221
153
144
188
216
196
249
194
228
227
196
194
173
120
150
253
154
208
192
175
168
211
168
192
229
178
180
205
172
240
163
165
253
228
190
217
220
216
173
218
182
194
212
158
219
218
223
179
187
176
180
219
129
238
143
143
215
221
202
161
185
224
154
218
158
136
170
187
185
210
163
206
268
189
241
171
215
166
249
151
231
246
127
176
165
189
188
178
201
180
222
187
173
240
146
251
214
163
174
218
215
209
176
178
157
194
224
156
259
166
239
193
208
184
190
183
218
135
132
233
236
127
195
198
195
231
205
231
220
169
236
160
219
214
187
217
185
201
199
204
160
185
216
164
189
258
233
185
183
180
210
271
241
144
139
179
156
234
148
194
193
170
209
231
247
238
205
145
202
197
186
206
211
208
215
114
220
184
197
247
192
161
256
236
236
184
220
195
183
144
205
174
186
208
229
249
230
226
176
248
145
168
209
165
242
182
202
257
231
214
251
179
175
177
266
199
223
189
242
194
212
224
265
191
224
212
215
141
190
210
196
174
217
102
231
200
191
175
169
237
150
180
181
190
210
222
171
189
255
220
141
175
170
242
220
204
190
244
175
213
194
237
255
189
228
220
205
185
235
193
191
250
199
170
139
191
155
249
229
167
237
219
188
176
214
251
151
206
152
258
139
217
172
184
216
180
186
196
170
230
214
246
143
241
178
170
237
210
178
212
254
245
195
246
200
193
199
161
211
195
219
137
198
216
162
214
189
163
255
239
226
247
184
188
138
220
197
178
205
194
246
170
234
172
192
181
132
245
149
168
149
219
182
212
272
223
126
166
143
251
164
214
183
206
188
212
250
175
183
216
191
165
189
199
203
233
262
204
228
204
215
176
225
207
184
219
213
175
169
116
199
184
236
198
197
138
227
238
209
221
154
168
215
229
190
195
224
177
261
256
228
242
236
226
189
193
201
169
208
199
187
136
132
136
219
212
214
171
252
166
151
241
205
202
201
207
172
208
172
252
233
208
135
183
150
177
160
243
171
197
188
250
256
206
173
217
224
235
200
209
205
173
196
220
199
234
179
247
167
281
231
287
139
123
163
240
239
210
211
234
181
188
163
209
194
163
193
183
204
142
229
216
204
157
190
165
171
217
182
146
203
186
226
197
163
268
183
213
165
205
138
230
166
227
269
174
192
171
189
193
227
192
196
217
197
183
125
98
184
211
212
186
185
187
181
193
164
200
217
176
213
246
170
188
151
160
179
258
261
237
170
181
170
194
218
209
230
198
228
205
220
261
209
195
196
252
150
220
197
196
168
225
196
185
248
249
149
189
248
213
152
184
200
202
176
237
160
200
242
227
169
190
183
178
213
225
190
150
229
192
178
164
164
154
167
199
189
282
202
184
156
189
253
154
187
170
211
197
192
187
201
206
178
238
190
216
223
144
206
260
282
167
276
189
188
221
182
208
201
229
156
197
207
227
198
224
157
185
202
258
178
207
204
141
253
283
162
196
180
214
244
175
167
264
149
238
211
208
212
176
177
183
241
215
177
184
212
199
191
263
211
169
188
239
155
174
180
215
221
217
206
156
207
148
191
204
203
210
233
163
218
179
157
141
183
219
249
139
168
218
178
209
261
191
243
214
195
182
192
149
223
280
222
175
201
174
239
256
175
144
209
164
192
156
187
180
189
219
164
183
210
218
248
139
242
227
149
201
185
161
234
120
154
162
224
134
207
214
258
204
180
199
222
236
191
162
224
152
194
198
209
209
221
235
257
150
156
200
209
179
178
201
171
196
186
178
187
219
199
158
215
219
178
208
159
157
235
114
238
196
183
176
256
208
223
235
226
143
101
224
245
153
151
210
254
226
196
149
188
218
165
192
126
203
94
222
180
252
180
201
174
187
179
232
220
211
182
153
159
229
193
205
152
168
180
204
209
198
258
188
209
255
247
196
166
199
225
152
191
193
197
171
142
237
250
210
141
202
197
184
137
250
185
221
244
209
155
239
140
178
230
150
225
160
193
208
212
256
247
181
186
218
210
226
210
220
148
193
201
191
214
203
215
233
227
225
215
179
231
240
180
228
190
149
165
184
253
196
126
203
197
233
181
249
244
215
188
129
181
182
227
162
206
172
228
246
235
183
188
227
179
188
207
257
216
243
197
207
156
246
215
149
196
217
197
229
202
233
238
151
210
173
143
250
197
206
232
152
252
260
254
162
181
207
206
262
251
224
197
168
230
220
150
199
210
191
190
276
204
230
114
183
211
198
190
196
183
237
213
189
219
168
220
218
160
145
198
201
188
209
213
172
156
212
182
184
178
155
220
227
202
160
136
243
220
163
205
199
220
225
201
163
232
189
223
177
195
187
186
195
171
203
197
217
197
155
213
138
231
151
181
192
205
114
171
263
222
152
232
179
157
161
147
154
204
214
189
214
214
227
175
189
144
166
187
188
157
237
241
236
122
164
166
141
161
239
230
226
250
177
211
128
226
172
188
181
188
280
193
207
229
223
196
153
223
221
236
222
208
206
249
226
172
228
214
203
232
243
174
122
280
198
198
163
243
241
239
218
174
199
193
150
224
187
187
211
195
262
235
152
201
244
137
186
193
208
198
222
218
238
203
205
204
207
223
279
169
204
254
193
212
162
205
187
250
212
201
222
186
186
164
121
200
242
175
230
209
165
201
144
229
194
225
239
164
129
208
180
194
202
214
221
185
173
248
217
201
149
220
203
184
209
145
196
175
172
132
276
226
219
174
208
227
223
261
232
200
190
186
164
197
180
118
198
132
179
224
180
199
186
178
226
144
208
114
254
216
178
245
190
196
205
175
163
175
221
203
211
178
201
181
244
185
182
200
206
217
266
230
243
175
221
217
206
226
183
231
171
217
192
214
174
214
189
235
185
225
192
248
173
209
267
193
235
168
208
168
241
192
218
172
255
228
191
245
197
202
179
204
170
193
219
242
206
219
241
265
248
182
207
191
203
170
183
178
202
195
170
184
245
192
209
209
240
189
210
179
162
162
206
187
157
179
207
146
147
211
192
160
172
226
186
204
282
171
153
157
199
250
198
187
206
124
185
226
180
226
230
168
194
162
189
194
176
224
210
203
207
143
165
164
273
212
177
222
214
274
211
242
217
204
201
210
201
163
228
208
113
186
239
213
191
251
188
201
193
194
200
226
197
133
166
114
220
191
219
181
170
206
230
198
237
167
180
227
202
204
228
218
222
162
226
277
170
169
184
169
202
154
215
189
231
172
154
155
215
205
178
186
267
164
210
190
182
191
167
233
155
194
214
210
244
184
151
213
184
192
190
188
188
235
258
201
136
231
229
202
153
148
213
225
243
180
202
234
190
210
188
224
218
204
192
158
214
148
141
201
214
230
203
248
188
208
167
137
222
173
249
195
219
125
159
211
212
209
184
208
246
164
184
211
211
174
168
208
174
243
238
175
222
185
177
195
219
162
230
210
136
270
266
224
225
271
230
204
228
166
190
212
140
283
200
271
211
249
174
199
241
230
253
187
214
176
237
183
179
209
115
182
239
189
162
278
227
214
173
166
180
226
176
175
205
197
166
167
256
215
191
233
178
218
212
217
228
240
246
226
275
186
181
204
245
251
206
171
187
215
227
215
233
194
164
115
224
224
246
161
179
253
198
191
181
148
234
161
201
203
224
202
180
236
195
113
192
202
208
167
216
173
218
217
289
201
184
191
174
219
232
166
186
194
182
239
233
197
177
218
186
250
196
196
176
207
211
229
208
259
228
210
240
200
204
196
246
210
152
227
161
141
169
156
174
202
183
261
207
171
199
226
192
251
217
152
253
212
259
224
194
139
219
212
244
152
238
163
168
144
163
235
187
205
197
169
181
200
142
224
232
225
186
251
234
227
206
202
266
215
145
196
237
149
146
238
272
220
222
194
205
165
223
153
130
203
221
139
213
240
220
183
159
268
204
196
206
205
208
267
224
95
166
239
160
143
195
204
178
247
221
147
212
214
278
191
176
252
225
243
199
163
146
261
166
225
161
197
167
177
233
177
170
234
229
239
201
219
220
191
218
233
146
255
221
147
220
229
137
230
254
230
218
233
195
213
142
196
304
198
173
210
242
222
219
230
260
207
204
198
164
253
147
208
227
227
194
238
217
203
162
198
221
270
208
151
122
165
228
246
226
191
240
227
250
259
210
193
188
237
205
159
198
216
200
166
175
218
272
211
219
232
208
247
183
147
191
210
238
148
256
224
213
231
168
233
189
205
147
237
165
288
159
253
221
180
172
207
249
157
164
210
213
220
225
189
167
211
171
179
197
216
223
199
158
229
165
184
150
209
211
150
188
201
260
185
148
155
230
181
177
215
234
158
214
178
199
213
176
175
235
185
238
236
201
188
205
160
236
232
225
173
212
210
179
170
187
165
213
198
220
248
218
172
202
230
163
201
135
159
170
221
235
172
176
226
239
199
122
178
196
180
196
235
234
172
229
234
212
214
220
192
273
200
240
226
190
197
223
219
230
158
201
187
234
173
199
180
252
220
151
246
155
228
247
250
152
217
141
196
194
182
208
200
134
161
170
270
143
251
231
181
225
233
133
166
193
136
239
150
161
235
229
159
222
219
157
256
187
192
239
222
219
152
243
192
200
240
248
207
208
235
224
226
201
221
218
183
188
210
285
184
273
157
193
223
225
265
182
205
216
200
225
221
202
195
125
190
214
182
163
278
208
167
143
226
169
219
218
267
237
131
218
208
232
227
168
136
196
125
239
224
165
215
205
174
261
208
165
155
228
220
271
225
184
233
246
183
140
218
206
184
178
173
164
210
183
245
211
173
254
155
156
211
217
179
183
212
192
213
222
172
224
200
217
136
163
247
178
249
229
178
185
256
137
240
255
206
226
208
205
189
180
237
248
238
140
215
264
191
151
159
180
194
140
170
200
233
200
154
181
226
232
179
162
192
215
150
155
225
187
144
201
191
142
215
190
188
162
199
181
192
218
212
168
175
198
190
215
188
106
174
174
250
259
194
161
247
210
182
183
204
229
265
242
189
203
157
160
181
217
175
230
202
227
263
175
145
142
216
229
178
237
177
183
250
219
223
211
168
185
216
182
160
144
220
228
194
165
198
188
222
260
149
178
226
182
238
161
227
236
176
179
203
203
133
169
228
202
174
214
201
240
182
248
124
225
208
245
88
200
193
220
167
224
161
166
178
243
171
190
191
156
229
256
230
176
223
253
194
163
179
177
204
231
201
198
203
228
146
223
186
239
213
213
190
138
223
250
242
136
196
206
180
245
164
173
227
227
130
199
197
201
204
180
150
224
174
200
183
153
201
228
261
150
131
236
243
195
200
173
178
261
202
190
246
182
214
203
217
125
208
257
206
170
191
183
185
209
187
210
145
206
225
191
223
186
223
151
170
207
202
213
190
139
165
214
188
205
214
206
233
239
189
156
228
190
210
121
187
189
223
235
225
197
165
250
152
148
215
233
178
165
183
223
178
219
210
188
197
202
225
198
189
252
224
234
237
206
235
216
223
278
183
226
140
254
216
184
195
170
200
160
186
230
191
190
179
212
214
175
182
168
221
167
202
201
258
232
194
267
171
114
243
215
239
182
172
204
168
211
234
233
163
179
228
235
235
254
240
170
215
213
153
166
222
140
176
214
195
202
194
116
227
182
216
238
212
153
191
229
283
179
186
210
213
145
192
163
184
124
198
253
169
141
208
187
188
189
220
230
188
156
169
206
243
196
166
188
263
160
219
214
206
253
185
208
206
245
211
198
222
214
211
208
146
230
193
192
171
232
195
101
198
153
151
199
235
272
166
186
204
164
221
176
187
168
212
219
240
192
203
246
193
195
197
181
252
185
241
171
190
188
224
259
198
206
135
215
214
223
212
157
174
203
214
204
145
187
171
249
204
159
218
225
209
149
202
121
202
150
231
228
251
180
163
142
247
162
184
209
204
282
189
238
237
254
161
210
247
201
183
194
201
243
185
160
207
218
201
212
198
249
115
262
205
237
170
235
152
167
238
186
187
196
142
224
201
206
228
221
233
175
227
200
229
187
157
200
156
224
224
265
184
182
229
179
189
283
194
193
203
132
179
202
107
148
198
182
183
176
221
225
130
193
230
182
152
244
192
231
216
225
221
170
169
230
202
197
191
195
229
193
222
129
148
158
177
181
207
202
201
169
194
236
231
138
124
199
229
223
214
205
209
198
220
217
229
189
200
137
241
219
151
192
170
208
238
221
207
180
158
199
205
210
166
238
167
184
201
178
225
215
213
214
245
165
221
191
189
221
181
175
201
191
190
200
177
233
181
206
150
224
249
246
212
197
208
196
207
128
179
212
246
211
191
168
231
167
193
128
201
211
200
197
150
224
228
162
238
224
173
211
187
241
204
203
215
279
267
194
200
255
233
182
185
145
232
191
272
231
210
197
233
128
269
216
269
250
233
229
259
222
190
238
187
171
220
191
198
209
180
151
208
215
223
166
184
229
201
273
150
165
243
164
247
201
168
179
205
173
229
212
168
164
160
204
211
223
129
157
166
153
124
148
194
197
222
186
211
210
223
231
196
216
171
207
258
192
213
134
220
251
191
170
192
195
202
171
198
236
247
237
153
197
164
216
224
171
181
191
178
173
207
213
208
225
192
225
177
158
193
238
170
223
234
184
201
212
228
222
275
163
197
207
165
170
110
189
194
211
247
213
182
227
228
229
234
203
171
240
191
187
248
208
143
180
235
162
138
176
186
198
151
204
206
201
187
274
237
207
192
176
238
129
198
269
225
201
198
208
135
225
196
237
204
250
194
157
224
261
186
133
169
268
221
206
125
174
226
211
214
285
188
217
214
186
160
144
165
242
257
216
275
234
237
167
191
207
171
197
128
256
147
147
215
249
190
207
192
168
242
193
178
147
163
168
205
171
177
149
196
191
181
178
224
164
162
228
227
223
197
242
193
214
212
128
163
218
204
152
202
194
246
179
136
167
213
177
163
206
160
244
226
170
214
244
181
260
144
214
194
179
223
217
225
184
199
230
175
204
144
227
134
190
178
171
192
224
208
162
133
168
180
163
221
138
144
168
180
149
168
203
240
188
187
253
165
213
202
242
241
153
195
184
167
174
203
162
258
265
199
175
213
205
187
213
208
111
155
185
143
218
228
204
213
199
150
138
195
151
253
176
184
205
202
203
158
144
196
194
213
213
230
105
143
229
192
245
194
152
203
204
201
255
139
206
170
158
148
157
252
129
269
179
194
167
244
155
226
256
223
209
232
117
212
201
191
219
241
227
172
173
191
209
188
124
195
196
227
179
213
193
233
226
205
228
185
184
201
164
224
183
267
143
195
239
216
215
262
206
167
256
297
235
229
155
218
228
168
192
140
182
233
145
261
232
173
155
231
182
143
210
174
191
149
196
224
195
219
213
213
245
189
177
210
123
185
234
214
220
187
159
221
214
145
242
195
235
176
225
212
171
228
197
204
170
188
202
168
152
137
234
257
180
253
243
221
217
207
166
236
179
156
184
177
242
117
149
145
194
225
175
174
148
205
210
217
236
225
196
218
229
167
173
199
171
233
174
170
200
199
208
224
226
186
242
227
245
217
172
214
177
184
294
138
186
186
145
168
98
173
210
206
214
164
163
248
169
216
210
211
161
167
203
225
150
205
212
229
177
266
151
191
244
234
164
150
244
202
193
188
199
167
137
229
204
213
246
151
209
150
210
178
229
204
190
259
221
191
190
196
212
220
185
131
227
236
153
213
229
180
197
155
210
181
254
147
175
182
167
174
207
219
167
276
214
218
227
205
219
221
138
176
213
225
166
217
216
281
246
205
181
239
157
204
235
192
164
225
228
201
140
265
197
194
141
205
205
211
208
222
174
199
207
184
217
166
282
249
233
214
202
177
228
172
243
208
230
158
198
236
226
219
227
222
212
118
165
224
207
265
195
213
238
203
131
171
128
233
235
225
210
257
178
168
231
177
236
218
167
183
217
252
235
180
125
214
178
169
184
182
208
200
200
146
217
155
222
258
212
218
212
182
245
166
196
200
222
203
224
194
222
185
216
166
122
185
191
212
178
246
257
262
236
211
208
197
224
134
210
181
187
245
222
222
221
240
155
194
270
200
177
197
215
245
220
195
199
229
259
153
220
240
287
147
225
171
148
235
243
196
196
188
176
250
234
217
188
127
197
191
185
207
194
209
115
203
164
144
239
165
212
246
160
163
154
206
163
212
188
204
221
188
187
144
169
136
204
118
195
274
222
242
170
237
142
165
239
190
220
229
157
174
212
155
162
199
241
230
149
259
246
177
205
216
148
211
133
236
240
160
235
192
143
223
195
130
209
172
147
205
249
176
181
181
164
167
222
178
223
154
249
225
214
187
203
207
217
180
193
202
200
240
156
211
214
245
194
200
139
173
171
249
178
184
188
241
158
186
223
134
160
174
278
210
182
210
211
189
201
198
234
211
203
153
170
169
187
198
211
250
165
240
151
226
159
217
195
257
190
215
242
218
207
199
211
230
156
193
208
202
242
214
219
193
203
185
218
173
167
182
225
155
170
210
183
202
146
181
159
202
236
142
199
181
177
221
171
202
194
250
190
168
209
215
164
251
180
147
223
191
134
238
185
213
210
213
216
145
216
245
184
202
184
137
260
234
213
227
180
150
188
264
227
219
208
174
119
166
252
222
165
182
198
220
209
210
200
198
199
196
225
171
219
226
170
115
197
240
255
156
196
227
220
253
169
245
201
224
157
237
193
116
231
201
261
249
206
154
226
142
172
199
193
211
184
256
213
197
223
251
216
183
234
252
229
208
211
214
211
235
190
191
195
204
132
194
210
194
207
188
184
154
158
195
243
160
204
207
186
176
189
190
119
208
179
237
262
142
208
198
159
227
200
216
214
126
192
190
152
245
240
227
136
218
229
230
225
267
173
207
201
208
176
204
189
237
232
135
249
187
238
201
218
162
207
203
201
207
202
208
155
238
173
234
209
207
211
225
232
186
256
183
232
235
260
183
188
238
190
182
137
245
176
228
147
162
182
274
246
174
235
241
235
234
150
251
164
158
162
155
176
250
206
209
209
187
168
203
236
154
203
201
229
244
214
264
215
213
158
171
195
186
227
219
202
145
210
217
187
221
205
246
175
177
212
244
172
239
244
130
128
185
199
159
222
208
182
170
236
162
183
238
207
248
165
159
203
249
209
172
219
261
123
166
235
164
191
227
184
226
205
157
190
237
202
174
214
231
123
230
259
234
217
138
229
208
196
161
205
229
147
218
205
225
243
129
156
228
177
238
204
180
217
219
224
245
249
236
201
214
165
217
149
154
166
243
217
216
206
231
232
234
186
160
212
194
187
279
140
213
175
187
197
169
225
196
167
235
167
169
195
206
225
177
200
195
177
266
172
189
129
198
246
216
145
223
144
179
205
113
159
244
121
211
129
198
168
180
200
190
167
215
87
206
120
114
202
215
225
173
216
202
224
199
196
233
246
190
202
190
217
208
242
195
242
214
216
254
224
125
202
184
223
217
200
238
249
260
166
162
201
171
201
159
159
215
194
221
194
230
195
186
193
141
252
182
237
229
185
188
175
204
227
237
218
240
192
211
201
215
203
210
189
159
198
224
142
180
170
171
221
166
248
240
210
233
183
166
261
200
197
239
273
175
170
176
163
229
232
202
240
146
168
121
179
261
195
218
280
198
180
248
173
238
221
286
228
179
198
243
189
212
207
222
230
239
170
196
202
187
248
256
158
170
226
147
173
161
259
204
261
142
215
214
205
234
167
216
187
226
212
191
162
190
204
192
137
214
218
225
184
255
133
168
167
180
205
148
241
249
235
213
202
205
218
166
209
197
224
176
171
178
245
234
193
263
244
262
215
203
179
153
139
199
198
247
241
212
232
172
205
197
150
216
226
195
223
184
204
186
204
155
176
192
235
189
187
179
183
128
201
216
257
230
157
163
196
200
210
225
251
267
235
176
252
233
231
187
211
168
228
222
228
159
191
171
186
188
184
233
225
211
254
118
180
229
287
220
240
247
195
213
198
219
177
198
198
156
121
201
169
122
229
214
205
272
236
224
208
215
187
252
220
235
246
247
218
240
154
218
213
170
234
230
186
252
257
138
229
182
194
192
201
174
172
137
243
206
181
267
130
170
213
189
190
154
203
178
223
159
235
231
225
204
222
209
222
217
247
194
245
199
192
217
203
189
196
236
182
177
209
241
196
181
215
194
165
229
180
233
200
224
171
233
223
218
169
238
193
227
209
194
199
206
149
192
234
213
210
179
226
196
204
172
219
173
200
184
184
231
137
152
233
256
189
253
200
160
154
216
186
188
185
173
228
260
200
165
197
150
238
237
173
188
121
116
214
133
185
251
237
187
142
176
179
236
160
219
267
189
272
176
248
191
186
138
184
200
156
241
294
208
223
226
148
164
207
228
141
258
198
222
227
208
244
236
227
197
233
190
204
208
227
147
233
138
163
233
218
188
184
185
167
204
220
215
253
203
170
174
216
138
219
176
210
221
130
163
166
143
207
151
180
177
213
194
242
214
213
191
171
238
162
248
255
139
185
247
164
175
194
182
187
221
193
221
242
238
200
259
148
200
157
240
163
129
265
129
256
249
182
169
121
172
203
220
208
266
217
201
199
203
185
199
185
240
220
205
248
230
189
209
218
178
164
222
250
203
220
179
217
151
140
185
170
204
207
183
180
214
221
181
190
155
189
130
275
254
180
205
205
246
205
180
224
229
204
174
159
220
139
132
209
193
130
160
188
237
207
222
134
211
190
163
188
274
209
211
203
195
237
214
204
197
214
190
257
188
216
199
223
135
227
233
201
169
227
157
217
208
228
180
198
191
158
134
171
224
183
171
212
202
205
211
226
171
230
165
195
113
216
86
157
240
235
181
250
180
148
267
215
235
187
276
222
217
223
235
209
137
227
122
213
150
128
164
197
223
168
168
212
212
236
163
215
171
205
237
231
189
166
202
186
152
200
225
151
230
126
264
205
233
194
213
191
171
194
151
152
215
254
206
216
255
231
208
250
246
167
218
175
212
179
275
138
195
172
243
237
151
202
209
197
125
232
185
173
148
177
145
237
169
207
240
222
177
177
185
195
230
113
316
213
194
230
190
207
208
198
191
239
211
139
186
188
170
199
149
200
182
170
183
189
192
226
221
225
178
190
184
223
182
216
261
206
200
179
223
158
164
209
252
160
245
171
180
210
255
196
199
176
236
186
284
232
269
200
204
209
145
217
185
223
198
179
227
226
216
173
212
216
183
241
130
213
215
163
190
150
226
177
222
239
147
217
200
194
186
201
200
191
138
197
221
200
210
216
197
189
200
196
163
203
168
225
145
173
269
206
176
238
194
180
142
195
155
190
210
199
231
249
231
173
235
213
204
228
183
194
202
225
229
210
214
262
276
220
249
237
236
190
239
208
196
198
255
211
217
245
220
249
215
276
152
226
207
205
183
211
169
209
273
187
233
234
178
228
163
209
175
195
226
178
214
190
151
253
220
197
209
196
200
201
222
149
217
193
222
217
192
234
181
231
192
224
128
168
244
205
135
185
192
179
185
240
226
149
107
156
168
191
194
216
166
227
194
196
160
244
218
211
192
230
203
183
200
234
242
192
162
223
184
225
164
162
143
192
239
243
198
264
178
112
176
178
165
209
260
249
166
196
212
222
157
173
193
171
170
271
205
135
198
211
173
152
188
208
153
172
201
181
196
143
209
160
217
249
258
252
259
145
165
176
114
166
171
216
148
152
165
156
163
213
268
250
236
218
247
157
162
177
197
233
206
199
187
257
193
204
232
167
218
231
202
171
217
193
204
196
188
174
208
231
255
245
125
143
253
249
224
178
199
257
209
222
286
166
203
145
161
183
276
209
203
242
192
175
224
184
176
164
216
209
178
198
223
185
168
275
189
191
152
243
208
197
141
190
199
251
207
213
228
278
253
169
235
140
202
189
203
191
218
172
239
259
150
250
219
225
209
158
203
204
123
234
171
168
172
242
156
256
207
212
202
194
149
194
189
174
162
175
169
189
166
199
181
247
200
160
179
177
157
234
181
272
172
226
233
182
228
187
184
252
193
207
141
208
174
167
164
260
199
200
244
134
154
170
210
219
216
225
200
223
212
132
189
275
224
230
199
187
245
179
254
216
188
210
186
168
159
167
205
223
165
244
175
232
196
223
206
186
234
196
225
136
227
190
229
283
213
174
251
205
232
196
198
199
193
261
213
205
266
180
189
157
190
188
228
186
190
184
238
227
218
210
197
186
245
148
185
200
205
153
184
253
262
158
220
195
246
227
191
199
182
153
172
232
197
179
204
184
163
207
188
145
208
182
172
196
233
231
159
171
304
227
220
196
222
164
218
246
159
212
193
189
189
251
158
136
100
195
177
177
209
232
175
199
202
227
208
180
238
185
183
179
220
230
206
230
259
222
215
209
225
214
192
235
205
170
186
191
193
215
178
218
143
208
209
246
217
167
211
168
223
200
212
161
142
262
221
213
170
199
253
202
183
209
255
227
190
186
240
128
280
229
289
219
242
201
232
209
180
236
154
154
269
230
218
213
206
210
197
176
212
214
248
187
166
230
188
192
178
195
223
154
192
168
202
218
261
199
277
212
211
200
178
180
215
185
221
197
130
216
191
198
220
199
253
159
185
206
144
208
211
230
232
179
234
186
274
224
228
206
219
202
203
199
157
251
249
207
184
200
268
191
182
186
239
243
208
170
243
191
190
193
164
195
251
187
152
152
165
121
169
112
176
139
166
195
213
189
225
221
179
214
194
208
198
215
215
234
240
258
198
198
184
216
261
269
203
229
216
200
218
165
221
148
195
206
249
167
238
196
196
207
255
162
153
248
218
139
171
207
199
160
174
174
198
180
235
249
213
115
217
171
183
134
204
198
152
203
156
217
189
170
162
186
196
168
201
224
245
177
243
177
243
218
208
171
177
254
187
250
249
223
244
169
239
202
235
186
214
175
196
211
195
168
219
213
211
158
175
188
205
145
179
216
187
232
218
213
220
179
186
191
213
202
187
192
174
171
166
203
260
202
228
235
246
241
243
188
173
252
211
181
227
251
144
192
186
170
198
186
173
208
146
177
180
196
173
259
162
172
193
167
209
185
211
149
209
219
219
242
244
158
203
187
236
214
229
172
180
177
242
184
146
193
228
184
233
174
265
157
209
261
171
223
137
214
179
189
253
180
217
221
186
159
238
184
204
216
235
256
234
161
241
189
168
230
197
218
241
227
176
203
192
255
185
149
244
188
178
147
281
153
200
148
197
246
223
217
233
185
173
218
174
251
178
201
207
201
169
214
143
225
207
177
199
147
189
200
214
174
214
156
216
149
198
266
234
179
128
229
215
166
124
180
179
174
200
143
249
257
219
212
198
254
200
235
250
179
271
295
249
202
194
142
256
248
191
234
237
271
164
232
167
131
196
241
252
150
177
201
190
145
192
214
231
302
232
189
182
229
218
180
191
221
215
202
212
198
192
252
169
232
251
220
132
164
261
181
146
249
221
223
229
191
164
172
198
203
239
205
176
175
184
142
203
190
190
165
159
227
162
202
171
279
252
231
255
146
215
150
120
221
202
181
222
162
273
173
235
205
199
170
207
225
155
194
214
202
231
259
252
152
178
211
211
188
225
199
151
247
210
173
196
233
170
248
212
233
196
210
163
182
214
228
201
156
207
229
227
159
228
168
213
99
241
227
210
152
247
154
243
234
218
223
170
207
149
223
224
250
157
198
192
233
203
196
174
184
195
208
175
210
205
238
202
258
223
187
206
263
238
277
225
174
261
194
135
210
176
226
171
215
232
236
205
220
141
192
204
220
253
216
210
200
259
184
236
230
255
175
213
214
135
260
143
191
204
217
130
199
157
192
213
158
250
205
203
223
253
216
259
192
184
162
203
227
213
227
272
188
164
168
231
228
212
184
212
230
185
231
200
263
221
199
137
197
228
239
217
265
187
236
208
220
197
205
205
252
159
179
160
215
213
210
188
217
229
204
183
223
209
171
180
185
136
260
171
172
193
214
157
211
123
252
188
195
172
195
267
258
244
201
196
226
235
246
234
217
259
241
276
165
273
192
194
214
203
237
210
175
178
199
191
199
224
197
229
180
213
198
210
139
197
188
183
209
231
204
128
201
260
178
220
190
228
172
240
230
173
206
153
205
160
241
212
234
275
174
170
221
277
238
212
207
222
159
208
204
230
210
206
244
185
179
226
223
290
173
175
253
182
234
189
211
175
219
174
202
151
254
204
260
189
194
236
180
222
139
216
156
192
220
213
231
256
141
217
254
114
221
162
142
208
164
211
176
266
227
236
182
119
197
157
159
148
178
192
197
208
153
255
190
177
294
186
134
200
160
190
208
184
173
209
234
208
245
175
156
187
189
236
185
190
194
239
214
229
204
182
224
185
192
136
248
195
195
204
240
169
130
189
138
198
227
191
161
254
164
209
145
229
224
193
218
127
247
130
250
189
192
268
200
250
212
111
229
245
174
203
244
146
214
191
216
229
186
201
167
208
207
183
163
198
228
178
162
202
241
151
225
176
266
238
201
186
147
193
183
209
179
239
192
208
254
217
127
222
201
202
217
230
190
183
176
162
163
230
228
190
177
224
151
142
158
146
190
224
217
167
219
230
185
229
240
204
236
128
182
218
220
180
279
171
258
235
232
218
203
240
209
163
174
193
274
128
216
242
162
171
190
201
222
114
211
195
219
256
194
223
221
258
216
151
254
179
190
185
223
237
188
210
136
211
205
213
202
209
154
226
237
152
241
176
186
191
238
135
213
185
255
113
178
161
236
137
178
171
169
205
179
162
157
234
183
196
205
197
206
132
211
193
211
232
231
199
214
182
162
223
256
263
232
243
190
186
166
191
233
221
235
189
128
194
238
187
208
199
201
198
212
130
234
132
208
181
261
152
162
188
199
189
232
213
222
231
182
226
198
185
271
186
156
257
248
207
190
186
136
199
185
191
184
192
130
248
124
230
302
165
178
157
238
227
146
223
211
213
153
178
141
183
210
208
240
206
218
220
198
210
209
259
158
220
174
222
237
168
211
138
159
199
222
170
249
150
223
189
257
254
274
244
180
192
228
227
206
227
235
156
188
219
213
193
184
189
163
263
246
217
150
153
207
184
163
180
224
234
198
206
147
165
223
209
203
134
187
231
173
186
157
151
176
164
222
192
129
240
216
260
227
169
199
212
183
172
201
200
211
196
214
157
162
243
125
185
186
252
184
149
187
235
223
183
133
176
207
207
132
187
192
193
205
216
220
192
200
218
243
245
246
221
218
186
185
250
228
173
197
204
210
266
180
224
193
206
179
216
170
194
165
156
174
183
223
207
213
257
211
197
212
174
176
195
205
136
178
208
205
205
224
216
210
220
145
244
130
159
182
199
211
256
189
238
185
232
240
217
138
170
223
209
184
159
194
224
262
247
170
239
233
130
213
221
225
192
250
210
191
209
135
190
190
181
151
191
178
202
153
187
266
224
189
191
164
168
181
193
218
181
184
146
108
245
193
118
228
218
212
186
206
187
217
222
208
211
170
208
138
174
170
207
144
204
143
240
192
225
218
176
190
166
188
195
177
227
184
211
152
201
267
182
262
238
236
183
272
167
202
243
160
140
198
182
215
198
199
238
183
191
186
223
150
168
235
159
205
248
159
213
243
165
177
238
159
265
225
232
177
212
243
197
220
240
123
240
164
170
230
219
152
233
204
193
214
182
127
232
187
229
235
209
186
249
278
197
163
246
185
221
156
201
151
258
203
197
143
168
193
213
165
164
173
181
238
192
135
209
225
223
236
167
218
271
208
154
154
194
268
180
142
209
234
194
187
198
108
251
231
162
258
222
200
114
225
197
229
183
238
199
154
201
153
207
210
229
159
127
139
200
247
204
229
231
164
209
184
229
200
234
211
187
190
183
241
228
105
227
227
198
240
153
182
172
196
222
201
141
168
209
211
235
191
194
240
236
161
163
218
242
174
256
184
262
202
184
205
160
192
149
232
247
240
168
197
203
233
235
194
200
204
215
191
279
215
166
184
239
228
216
188
167
173
169
224
153
150
210
148
194
249
180
195
237
212
190
202
160
194
146
153
174
212
159
223
206
153
232
201
219
153
226
212
221
161
185
191
261
211
222
160
218
125
189
167
252
224
248
202
188
211
170
179
165
140
148
149
246
195
216
186
209
249
238
198
183
232
240
163
219
106
183
214
197
194
171
146
221
155
214
118
238
214
223
217
158
178
177
199
165
187
168
237
175
181
228
234
177
199
130
211
184
183
185
176
178
236
194
225
130
253
200
121
147
183
245
220
195
205
144
225
210
101
228
228
191
149
119
232
248
190
217
167
177
231
192
206
170
216
192
186
169
222
233
187
221
244
196
199
197
222
204
194
227
155
201
151
204
203
174
186
163
195
234
212
216
212
203
297
165
147
189
204
141
177
239
245
161
228
266
141
217
170
219
215
177
207
212
145
238
151
164
181
186
199
118
161
212
172
188
152
188
255
189
194
214
211
200
139
239
247
189
184
145
164
130
201
204
223
259
215
197
185
163
222
195
176
212
199
267
230
206
201
237
274
131
228
197
205
163
184
239
196
221
194
227
175
249
138
197
175
189
238
202
221
133
169
165
240
171
203
173
182
217
192
155
131
142
248
193
197
246
173
178
245
170
186
117
172
219
145
178
255
264
149
214
154
183
223
195
228
180
199
188
239
197
159
246
130
176
253
220
224
140
209
181
228
167
196
199
137
220
188
162
209
215
198
252
173
162
223
215
158
283
214
196
135
234
150
201
170
201
205
151
236
247
227
230
215
230
215
141
195
241
182
180
218
256
188
231
240
150
167
193
156
199
204
152
186
232
216
217
202
259
209
195
194
183
245
171
220
209
216
153
170
250
192
155
269
190
216
191
215
202
220
168
154
219
160
182
251
227
157
195
154
194
230
226
158
238
206
222
188
205
264
172
223
153
246
209
176
171
225
233
254
201
198
202
166
234
147
170
187
177
205
263
254
173
237
201
139
254
185
186
166
217
202
242
186
209
189
169
203
197
208
252
147
174
207
193
219
237
202
185
213
179
129
253
198
210
260
210
205
225
238
224
173
216
149
280
218
120
121
271
158
260
241
217
193
254
169
204
181
201
163
209
229
137
181
257
232
220
210
182
173
112
200
200
241
228
177
203
242
245
169
176
183
165
196
249
203
145
207
237
200
239
183
225
249
141
257
205
206
232
192
190
181
235
220
189
213
227
147
228
247
183
237
201
213
210
235
189
185
196
188
235
202
267
168
159
186
166
188
168
181
157
164
185
228
242
207
228
202
143
190
235
246
225
216
248
196
246
208
210
251
201
216
269
216
255
183
226
154
126
220
176
154
227
196
234
209
196
218
217
156
218
195
231
214
243
225
210
230
230
173
227
173
186
159
269
261
164
192
267
252
193
159
233
254
269
198
208
251
232
218
162
138
254
189
209
235
162
177
214
217
178
187
177
207
211
208
197
220
217
197
146
233
153
213
241
159
230
222
204
185
188
216
201
216
267
141
182
181
121
205
215
148
250
213
126
184
155
218
185
149
157
233
222
238
241
221
174
232
251
127
216
176
235
226
206
219
235
159
171
196
230
236
250
260
194
118
201
246
227
214
216
119
238
189
137
201
181
223
215
224
258
172
207
200
205
167
202
249
239
227
177
206
226
217
250
199
247
156
285
238
111
208
199
257
180
261
150
225
149
165
190
233
185
261
205
198
204
205
198
172
133
170
218
149
213
164
196
138
197
180
227
182
197
178
185
210
217
153
149
191
227
244
130
277
190
215
157
192
239
230
209
195
211
173
203
250
170
171
204
189
205
224
272
256
231
226
188
242
138
205
212
125
166
203
219
233
224
272
209
224
194
205
197
190
160
201
215
169
138
229
241
222
207
238
217
117
201
226
240
149
169
170
146
210
165
223
153
200
199
148
173
246
237
211
226
152
172
144
146
212
191
222
209
176
163
191
246
157
152
146
169
167
228
184
220
195
185
258
202
245
215
169
238
180
243
199
138
185
216
187
243
246
173
184
246
128
223
190
186
179
112
203
193
199
258
167
222
128
244
165
191
185
170
201
245
232
203
175
223
191
238
234
176
205
184
258
188
214
200
176
232
246
218
216
236
246
184
161
229
146
169
168
249
240
137
167
197
177
238
187
265
165
187
190
182
201
223
279
199
165
180
185
228
125
194
183
177
173
132
198
216
118
186
216
177
196
189
214
248
182
153
192
175
199
144
232
198
142
157
231
143
229
181
216
187
255
259
188
225
234
220
188
212
193
203
189
226
123
147
200
210
180
223
228
163
173
157
182
225
199
200
172
181
187
205
216
204
186
269
185
171
143
227
119
157
205
268
225
201
202
237
197
195
159
138
240
253
205
182
207
164
223
231
174
225
154
103
146
180
210
236
267
176
209
165
177
168
208
169
143
211
179
132
223
171
266
238
120
196
196
198
212
148
281
235
237
176
272
261
148
241
178
204
205
209
215
221
199
154
173
237
270
190
206
191
203
204
143
103
157
126
185
194
196
208
243
189
208
211
180
236
152
183
189
199
227
137
212
197
185
246
203
266
161
156
202
194
277
147
212
212
189
195
169
226
165
216
148
238
230
199
125
213
173
204
209
169
229
222
166
249
253
172
213
257
241
147
244
203
139
215
169
202
207
236
224
217
209
193
183
191
201
251
226
213
211
173
259
194
232
233
173
200
203
210
223
191
180
240
244
245
180
195
188
133
217
215
211
197
175
191
217
179
203
178
148
219
141
250
142
194
189
256
225
215
267
127
224
195
149
158
229
216
241
204
190
208
245
112
163
226
200
186
207
229
199
189
163
199
165
171
178
144
259
204
237
259
216
185
144
177
215
174
223
218
188
195
225
214
204
202
221
199
215
217
196
155
239
200
218
211
193
229
249
171
220
209
246
136
199
184
234
158
145
228
189
236
151
152
168
226
210
245
210
177
210
124
235
251
150
210
187
205
248
207
219
145
199
213
199
185
244
204
183
245
266
245
183
179
211
155
225
186
155
200
240
143
152
198
214
161
199
227
229
163
206
210
218
198
220
188
196
229
167
159
179
188
218
200
212
177
220
255
169
213
154
268
232
199
198
228
115
217
194
185
248
192
227
227
149
165
225
232
218
175
163
251
167
220
267
190
168
243
225
223
196
218
223
247
242
218
242
182
231
186
217
148
210
206
228
184
162
185
157
191
185
153
252
202
187
263
225
197
239
263
223
238
158
212
230
242
232
178
222
203
224
240
203
193
196
200
216
155
145
204
229
162
218
172
186
166
161
180
214
209
208
115
191
198
228
170
116
244
231
203
246
223
239
185
183
217
224
147
235
240
158
205
194
144
173
229
146
211
189
233
196
214
180
182
176
234
231
197
222
248
227
225
252
186
221
266
288
223
180
208
188
181
132
213
196
167
176
196
241
158
224
235
222
199
175
228
186
254
190
198
241
185
150
218
194
150
182
145
246
174
213
213
228
205
179
230
145
158
165
243
227
171
199
222
182
116
174
251
227
203
194
200
199
194
225
234
185
275
211
227
228
163
214
219
252
231
202
127
234
163
247
236
159
224
217
186
237
129
231
170
184
202
235
203
232
217
244
244
201
212
237
173
190
258
235
166
196
257
239
182
232
222
173
214
256
139
175
217
210
120
227
178
224
227
193
215
181
172
211
195
138
194
181
276
208
212
161
227
220
180
270
211
186
165
196
156
245
233
185
213
181
265
173
202
165
210
219
260
219
187
233
169
216
190
216
179
234
225
161
195
120
204
272
223
207
148
234
156
117
234
194
187
184
195
199
212
204
254
211
232
185
222
229
227
202
106
179
229
226
149
178
224
162
235
193
184
216
214
183
120
234
184
244
205
184
229
159
176
202
218
170
237
225
267
199
148
196
310
246
190
253
168
170
246
193
246
215
213
240
125
195
280
185
169
196
217
202
201
244
222
217
226
196
158
223
250
176
214
210
181
220
216
193
152
166
189
223
208
207
232
213
244
218
168
243
237
201
177
198
200
172
185
208
214
231
199
211
190
229
217
210
195
135
203
231
223
156
188
232
197
236
213
204
172
183
229
102
231
163
155
185
197
234
284
179
222
201
213
194
220
220
256
175
204
246
149
189
222
244
229
206
230
163
207
212
181
159
194
223
204
235
198
194
257
209
182
213
159
249
180
210
214
247
214
146
219
215
166
208
181
221
197
223
228
160
187
161
173
225
213
183
240
187
218
189
180
222
195
194
172
193
201
184
155
193
205
175
154
195
149
206
220
212
198
244
174
216
190
182
175
196
180
214
185
140
146
272
149
189
218
183
200
113
110
182
215
201
177
223
198
268
184
224
204
253
198
221
238
253
177
200
242
240
185
162
228
214
211
170
231
194
195
180
216
209
231
152
212
199
178
223
253
180
277
209
141
164
204
205
195
202
224
184
186
231
196
251
218
267
163
174
263
185
244
190
201
221
198
232
191
243
181
214
211
210
222
189
175
169
241
199
281
164
188
159
240
238
130
223
197
191
184
180
247
242
224
216
251
229
225
203
223
236
150
181
220
197
164
274
166
173
187
126
161
213
249
218
141
170
163
169
247
179
206
233
251
216
198
209
178
204
218
209
249
221
107
195
224
195
194
199
214
211
227
204
178
185
177
193
173
220
212
179
260
202
207
209
191
217
209
202
190
123
214
231
185
147
194
205
190
216
190
207
150
215
205
195
158
243
209
143
124
207
182
191
284
168
208
180
219
202
160
195
249
175
173
217
192
166
169
211
179
181
189
261
156
213
198
182
202
178
237
232
220
206
167
242
174
242
155
174
214
134
192
160
178
206
208
112
231
181
199
229
174
222
215
230
224
190
204
194
221
190
219
203
209
236
170
193
181
224
229
166
191
229
186
98
247
238
215
152
201
214
145
187
189
212
200
226
195
181
202
161
234
241
192
153
259
282
218
244
167
242
205
157
253
220
157
140
250
207
202
124
208
174
219
203
216
252
173
248
238
175
195
258
140
175
230
198
204
238
172
144
207
185
176
217
159
189
181
149
214
237
229
180
210
245
197
258
172
211
151
186
204
218
223
196
230
267
230
139
202
180
195
221
192
159
257
233
177
223
178
200
212
229
215
202
214
189
234
210
211
208
184
196
262
203
186
201
227
182
183
208
160
205
161
181
241
235
204
140
211
176
262
169
160
206
201
237
129
219
223
221
203
160
124
210
238
238
201
204
202
164
160
251
187
168
224
210
249
172
221
225
200
170
245
201
237
217
175
233
229
208
177
212
210
144
168
168
173
217
188
189
213
204
199
267
142
208
282
249
197
169
153
174
178
141
223
223
199
227
169
144
178
141
209
252
178
264
252
217
181
153
243
212
190
124
186
228
171
192
174
225
188
134
241
187
177
165
147
162
211
188
173
169
188
206
166
199
188
240
171
201
227
195
153
191
229
232
186
213
151
131
213
163
142
224
216
159
241
260
205
236
231
201
192
168
201
246
223
161
232
226
204
183
203
245
248
179
252
220
173
233
165
190
168
188
185
232
174
156
186
197
252
228
232
210
200
216
260
233
151
247
257
165
249
156
225
218
159
213
160
171
186
184
163
215
257
203
190
247
209
167
224
201
212
142
141
142
189
265
247
215
190
175
139
197
213
255
246
220
218
246
207
207
174
172
184
225
174
225
135
207
235
217
161
206
210
218
237
116
230
189
212
182
197
205
217
169
100
178
154
204
203
198
232
193
216
201
174
188
207
234
156
218
209
149
186
151
201
215
216
130
190
207
175
127
256
160
222
169
172
165
206
177
193
224
225
216
209
193
200
156
243
246
166
193
200
219
192
167
230
163
221
282
182
247
210
186
185
165
223
188
200
218
206
174
209
115
151
210
173
226
219
194
203
209
184
147
199
233
201
230
198
226
168
227
242
201
192
285
206
164
231
183
223
169
260
242
251
229
209
169
249
226
231
109
199
205
253
237
147
204
199
203
184
179
246
192
214
143
243
196
237
266
221
224
181
214
203
272
197
192
254
187
189
236
233
206
271
157
191
233
166
198
146
196
257
214
180
178
279
178
241
189
212
199
173
182
217
241
209
222
211
206
195
168
221
235
188
146
234
233
185
163
219
193
211
203
178
225
182
178
222
236
214
215
254
163
213
208
164
173
205
219
191
171
276
194
185
177
207
175
172
220
192
183
148
245
177
226
211
260
169
224
227
214
230
241
153
156
199
214
219
198
149
175
221
184
220
217
170
226
248
233
206
187
198
173
209
189
210
180
171
115
194
230
254
211
191
214
186
240
234
125
243
183
179
207
226
166
176
241
248
186
189
171
277
209
198
207
141
191
222
127
181
163
189
193
246
153
221
211
230
218
221
202
179
174
196
152
244
214
164
208
190
229
186
181
207
155
202
185
226
186
174
233
223
206
219
174
134
139
220
211
190
212
175
162
220
178
196
120
215
211
170
206
204
158
263
203
202
210
208
186
231
203
252
223
198
167
200
189
217
228
223
166
240
198
235
228
256
229
193
208
246
189
219
180
216
171
184
228
232
208
193
208
185
264
141
189
197
173
210
214
207
144
259
260
158
171
126
171
199
126
227
181
215
252
250
189
160
174
229
261
200
197
231
196
260
203
197
177
226
203
239
213
202
231
156
174
230
221
275
224
178
250
257
136
236
196
219
195
206
197
210
213
125
244
209
180
196
208
200
186
214
205
197
208
200
189
194
200
194
144
172
252
209
211
178
173
199
169
195
203
190
266
175
181
239
207
232
172
190
167
265
166
199
203
210
236
227
199
230
174
289
264
269
181
187
166
188
246
195
293
249
248
254
134
169
201
182
201
216
113
192
185
232
201
189
222
225
218
235
203
214
181
202
214
182
187
243
195
177
169
141
187
187
202
183
220
160
200
214
243
209
227
207
194
220
177
207
191
199
204
244
185
218
156
236
182
237
199
188
229
146
167
207
232
200
194
203
274
195
203
178
224
217
172
204
208
166
289
189
196
180
162
190
213
165
233
127
241
187
226
165
185
207
250
173
165
242
185
169
281
202
208
168
226
158
194
176
200
182
177
140
195
214
165
217
229
233
148
200
301
196
229
146
206
193
180
240
219
227
209
157
208
239
155
139
237
153
177
196
130
197
237
188
249
205
216
211
215
210
214
223
220
185
201
216
233
167
191
214
198
233
194
225
167
152
234
222
195
153
219
215
247
144
197
112
197
228
304
173
185
229
211
267
186
184
156
247
174
202
240
163
223
216
170
148
165
241
163
182
132
228
214
192
124
179
252
165
169
227
196
204
177
218
144
221
230
199
208
199
199
247
202
217
161
142
225
179
265
153
270
239
229
243
178
232
201
271
216
201
216
218
176
176
182
191
195
187
185
232
208
169
233
176
165
201
156
162
192
213
127
205
152
235
207
195
218
240
217
199
168
174
201
215
187
169
140
193
212
180
277
201
258
160
292
155
176
161
192
227
266
193
235
210
163
189
216
213
227
215
219
214
209
175
147
217
222
175
125
176
203
203
219
202
203
131
251
236
182
244
181
208
251
228
240
215
168
220
222
204
234
177
207
209
211
190
193
205
176
176
194
243
174
240
241
231
206
176
204
221
227
208
140
237
222
169
246
167
128
200
223
183
190
164
208
167
194
123
148
200
224
218
235
157
201
163
202
156
186
222
171
203
186
202
226
189
177
173
262
206
214
218
247
181
131
219
255
216
185
170
177
208
202
216
249
193
142
196
198
239
244
199
186
193
237
204
181
161
133
113
142
221
215
186
188
190
169
212
233
191
243
217
163
224
166
204
229
253
240
142
205
182
197
235
253
223
201
187
220
193
174
232
227
228
272
156
194
187
206
200
222
166
234
218
209
267
238
220
207
234
195
92
272
174
186
175
217
222
191
164
156
224
155
226
165
242
193
167
208
228
186
192
230
186
163
210
191
226
197
208
233
195
199
235
160
201
222
153
197
201
162
199
239
217
212
183
248
164
206
278
144
141
212
234
195
194
224
259
177
208
219
230
225
234
152
197
165
269
229
174
193
204
188
258
165
158
261
169
166
113
164
279
184
185
174
116
192
208
245
200
207
188
225
239
226
168
199
178
172
197
212
178
178
217
205
224
179
235
238
196
149
155
141
173
102
170
183
205
143
212
200
202
194
226
187
197
228
133
153
131
210
221
218
190
160
201
234
242
160
219
152
244
243
208
234
165
199
210
189
153
202
238
196
214
251
170
228
207
225
197
183
190
241
231
228
217
205
204
185
173
164
190
261
147
250
202
217
189
209
214
192
209
178
238
191
115
222
182
216
207
163
178
183
248
127
207
176
195
170
154
208
202
157
156
247
205
165
240
184
252
198
248
258
241
235
215
214
232
184
195
199
213
207
176
235
178
224
210
205
175
251
172
206
140
213
172
162
216
207
202
223
151
225
103
253
182
190
180
187
143
223
143
239
267
147
192
240
173
212
236
166
163
150
225
222
209
163
103
210
195
173
258
259
199
220
212
240
172
177
202
135
215
193
218
222
213
218
209
213
217
233
167
214
210
183
190
236
189
223
199
198
141
190
231
205
164
160
204
122
196
228
199
183
210
151
187
270
226
264
201
219
169
168
202
158
194
234
195
176
203
255
182
203
226
147
182
274
191
174
218
150
253
189
202
110
206
234
150
223
215
211
197
224
178
179
170
238
187
186
175
125
181
239
154
274
142
232
150
209
210
219
192
185
235
200
210
238
230
231
179
149
222
168
236
199
216
225
193
259
244
142
216
199
228
228
121
157
222
241
260
261
241
241
249
213
150
221
175
199
225
216
200
187
217
220
167
199
220
181
215
202
197
205
177
188
204
129
199
237
184
133
197
212
136
150
228
157
182
215
198
192
181
189
234
238
197
230
183
210
194
198
165
238
193
284
235
159
169
171
190
230
245
132
202
177
179
252
233
204
191
155
148
178
196
249
175
203
190
211
245
177
187
204
244
185
220
178
243
186
219
149
179
206
175
214
192
233
208
204
219
198
117
222
187
151
200
158
264
180
202
128
268
226
226
170
203
211
223
227
228
200
229
204
149
199
174
224
210
173
184
234
177
161
194
221
214
177
237
259
195
219
257
195
173
157
223
142
237
255
239
180
144
189
159
161
230
211
242
236
178
236
208
230
156
172
213
189
238
215
260
128
168
187
149
182
192
179
227
156
147
223
217
245
225
194
172
174
204
203
237
227
220
261
145
211
212
256
181
267
194
165
152
205
190
151
154
256
238
199
243
225
134
198
230
226
194
198
172
167
161
181
147
231
181
164
160
206
164
244
198
162
147
211
231
195
216
160
263
227
165
177
227
189
180
231
199
186
195
164
216
159
235
225
233
191
185
149
196
161
210
151
167
171
234
199
199
209
209
217
176
190
243
234
163
181
161
171
259
171
154
197
178
229
219
192
159
158
208
178
189
126
197
133
197
262
175
163
180
218
218
253
228
233
276
193
183
211
221
195
204
172
249
117
215
168
165
168
197
103
213
222
165
199
193
220
137
268
238
225
187
137
202
199
201
197
160
233
177
178
148
258
223
171
231
185
210
171
162
175
116
218
203
244
221
186
208
188
217
153
219
190
263
178
217
167
151
233
202
196
155
219
234
141
168
166
217
241
169
225
203
191
191
173
211
230
131
153
193
212
163
193
251
183
166
195
170
215
258
206
210
172
242
186
217
233
164
250
235
220
225
212
209
219
225
166
190
190
166
223
166
222
240
195
211
225
241
218
194
217
170
205
286
154
178
193
201
173
186
193
206
209
246
177
211
186
219
210
173
165
179
225
204
200
208
256
235
175
237
162
135
201
169
255
237
206
193
189
212
264
211
168
159
203
157
194
228
154
253
179
198
220
232
182
160
198
261
161
241
178
181
209
259
215
226
189
143
191
190
130
248
180
160
191
183
195
238
180
169
184
204
178
168
247
219
168
152
190
161
180
167
227
190
237
205
230
215
222
157
163
251
190
193
162
225
182
201
292
176
206
185
138
185
220
239
176
180
144
209
249
185
263
202
173
196
166
192
179
137
219
171
189
198
135
207
219
155
235
178
127
199
170
197
229
161
218
230
240
210
275
174
182
230
232
192
155
157
205
152
191
238
210
215
187
227
152
223
192
291
167
164
208
233
206
197
189
236
155
273
236
237
189
161
175
201
177
197
181
229
219
131
172
228
163
243
196
226
177
152
199
184
241
109
226
202
220
204
253
202
94
219
204
240
229
222
202
176
192
211
212
210
264
239
183
154
180
268
171
169
220
191
170
140
212
155
287
252
216
186
193
170
239
217
250
167
207
123
181
181
220
199
219
219
242
170
197
142
268
161
194
143
225
166
197
194
194
219
203
263
242
147
230
202
186
159
169
225
215
173
220
169
124
167
160
130
253
220
215
211
204
214
199
206
242
163
167
236
184
238
197
224
258
214
192
176
174
183
188
226
200
194
230
176
200
174
223
218
239
201
145
191
225
220
205
164
196
174
229
159
144
206
193
191
186
142
188
215
158
235
244
165
222
184
224
196
178
224
218
224
185
202
238
227
126
238
217
220
239
211
199
232
201
231
169
236
234
229
167
149
194
172
177
207
197
217
210
201
198
220
209
243
216
211
252
157
153
235
229
197
168
146
209
204
225
192
233
209
159
233
209
257
176
182
254
223
209
246
228
254
216
203
201
234
213
171
214
224
195
131
221
211
213
217
243
197
149
227
224
211
246
258
241
195
177
155
165
201
224
184
265
133
268
236
256
185
247
164
181
141
220
215
188
261
235
115
218
117
213
189
193
191
160
193
232
225
128
201
177
258
214
180
196
204
167
205
225
189
213
203
186
196
229
261
130
205
207
212
199
170
252
204
265
142
213
194
229
258
216
197
184
257
191
161
219
199
246
248
190
185
233
134
225
247
245
223
230
202
168
233
217
206
116
231
234
169
173
197
158
180
170
198
227
120
188
163
195
206
172
146
215
198
186
220
165
197
175
197
213
221
189
160
212
214
183
137
196
233
255
173
239
165
184
195
132
198
174
231
140
166
198
206
149
178
109
216
204
251
200
169
237
196
229
205
252
152
210
158
153
230
231
209
260
252
251
168
228
171
200
228
214
178
213
181
185
220
250
236
123
217
154
228
192
205
255
202
219
243
175
210
191
208
138
205
199
141
230
229
201
247
137
154
221
242
195
257
231
168
151
220
183
142
184
195
231
182
215
212
240
164
138
212
221
211
180
215
207
156
153
185
240
236
185
118
195
201
103
222
214
161
255
240
238
221
210
167
196
167
183
187
188
208
246
179
178
185
220
140
220
223
191
191
186
162
92
172
209
260
196
222
221
170
159
214
206
236
243
226
162
156
234
249
147
191
209
188
205
191
197
223
191
259
190
208
213
224
185
255
184
225
168
178
218
221
226
168
154
180
142
226
223
186
197
184
238
251
225
165
261
200
235
127
199
228
148
177
179
224
206
200
149
215
215
234
146
201
132
151
221
100
230
168
231
195
213
194
239
180
294
162
176
174
183
217
152
253
233
195
198
196
255
237
226
189
264
224
227
191
185
133
194
240
271
153
182
251
193
278
185
222
195
174
127
181
239
196
181
185
208
158
236
137
174
184
167
191
127
192
269
242
160
251
229
253
198
188
142
163
208
203
236
185
235
175
184
171
164
209
203
162
145
259
206
182
259
198
191
156
254
239
231
241
240
179
179
248
225
209
227
254
197
239
241
152
196
227
189
184
167
128
228
198
154
142
230
171
219
118
306
198
226
131
235
146
148
242
206
216
195
156
250
218
147
206
229
172
135
184
263
220
208
235
218
213
207
163
138
189
217
187
173
236
199
222
238
227
222
206
179
200
221
243
208
229
211
141
155
178
177
225
222
196
204
141
212
156
266
165
198
208
176
163
240
174
174
228
237
209
186
186
242
201
232
257
202
178
190
237
235
151
186
240
190
245
212
248
228
195
228
195
258
233
215
211
178
207
270
225
193
160
246
198
149
141
168
202
259
174
213
173
188
217
173
194
197
126
182
186
201
178
242
225
183
183
269
152
140
227
196
180
206
175
190
199
228
146
224
199
246
189
158
243
224
185
241
207
202
164
197
192
212
164
149
249
256
190
212
238
220
229
163
187
189
184
183
169
190
252
216
188
215
219
204
169
160
246
144
255
230
170
171
194
160
243
100
166
182
177
216
234
166
205
219
184
156
154
178
179
212
202
223
180
248
221
102
149
191
206
176
182
207
195
197
224
247
156
248
234
204
168
133
227
243
223
219
179
193
230
208
171
164
214
142
126
159
192
216
218
203
204
164
206
245
185
261
249
194
229
137
219
268
222
183
243
160
152
164
200
176
198
193
231
209
175
186
259
206
145
251
172
206
190
162
202
215
230
267
204
230
194
224
193
163
195
175
217
167
201
179
163
218
202
153
167
248
229
240
151
193
208
211
178
207
204
198
120
159
183
196
212
200
199
250
182
231
134
176
178
230
164
178
243
202
210
193
186
280
210
227
214
236
166
207
232
146
206
245
203
159
241
170
178
141
227
184
158
211
152
221
154
238
207
199
191
136
215
215
183
195
246
202
225
212
220
165
145
198
212
210
215
161
225
181
213
215
174
183
135
166
257
218
248
101
169
153
156
190
214
172
194
196
204
220
202
176
204
172
195
255
148
188
239
169
184
229
259
183
165
199
259
223
220
210
217
168
190
163
226
234
231
218
248
245
200
191
193
253
165
207
187
212
179
172
186
212
180
236
110
192
232
173
223
216
224
138
212
207
202
203
194
258
202
194
235
216
217
178
138
241
189
198
205
159
236
228
162
252
200
203
173
239
225
210
150
199
189
188
241
160
219
209
177
182
199
161
256
228
227
234
219
158
197
237
188
214
147
228
204
175
239
227
175
183
242
224
171
180
146
209
214
215
195
201
200
229
170
176
243
190
248
172
233
164
207
209
176
176
155
169
188
146
238
223
147
179
107
183
201
185
222
222
247
167
198
160
169
215
180
237
129
224
166
204
288
187
235
205
178
202
194
211
161
234
158
211
162
210
144
233
137
250
133
152
218
167
165
217
181
191
182
167
258
151
166
189
180
157
256
220
139
180
212
152
217
197
247
161
226
162
231
178
187
232
191
244
208
183
194
220
145
186
138
182
175
194
214
172
183
197
179
190
218
168
190
190
245
181
250
218
213
273
194
146
186
197
180
175
264
234
214
264
224
171
179
132
207
206
201
185
246
193
242
200
189
154
193
157
182
215
214
206
149
188
155
157
272
201
178
169
194
253
226
220
248
171
204
210
234
200
183
171
220
162
197
248
159
237
212
218
215
179
240
219
247
183
175
223
220
197
228
253
149
215
213
296
220
162
157
123
214
198
220
215
216
191
167
235
192
199
209
251
202
183
164
256
186
137
119
175
222
194
216
210
256
232
214
183
187
238
268
205
154
176
242
180
171
161
202
190
250
213
148
174
223
146
243
136
230
96
169
207
256
145
195
122
228
269
208
254
126
145
204
223
220
173
201
167
161
220
167
179
182
173
200
183
195
140
196
178
214
242
178
208
232
233
189
200
159
212
191
205
199
235
238
134
203
141
157
209
233
187
211
231
176
227
224
219
197
241
234
221
186
191
149
184
208
238
189
244
197
165
204
222
265
196
255
120
217
227
207
212
184
192
179
198
225
185
221
190
185
173
162
139
183
185
183
198
223
180
210
233
161
199
178
155
194
189
189
228
220
171
197
186
144
202
212
201
262
208
250
216
183
225
194
186
235
238
204
207
207
140
213
204
242
236
287
160
194
172
237
164
226
227
176
234
235
228
127
237
225
223
184
234
191
172
189
229
209
187
222
164
163
168
229
172
255
299
166
185
195
200
179
153
239
147
179
210
213
242
234
255
232
212
161
196
182
286
258
195
202
192
261
209
289
212
161
154
211
203
239
171
157
182
165
193
187
251
216
157
179
131
212
238
183
151
230
193
224
248
163
163
203
176
178
184
217
199
168
217
225
168
206
225
144
197
220
224
176
186
137
229
157
217
244
261
193
163
203
218
178
193
176
177
155
235
247
210
217
151
142
208
167
199
172
215
124
144
165
183
170
199
217
197
218
207
221
239
145
205
175
219
224
212
235
223
232
239
158
183
169
161
235
173
164
152
189
200
225
166
211
186
166
243
172
205
146
219
154
128
186
110
241
245
217
227
223
185
193
149
250
138
234
206
214
244
200
221
230
208
199
153
230
231
205
221
205
226
164
206
209
193
109
223
207
186
276
228
171
214
207
144
145
145
203
191
193
173
215
238
247
262
168
219
191
152
219
158
147
210
203
205
129
162
230
237
182
160
168
205
132
262
176
234
214
195
167
209
200
233
199
206
233
225
244
213
245
183
180
194
155
186
235
215
178
256
171
120
193
168
209
241
265
198
197
230
206
229
220
255
167
188
149
211
235
231
188
183
242
209
198
208
174
230
252
167
212
183
226
136
144
235
213
196
214
107
182
195
266
176
229
258
217
192
185
225
237
180
202
196
255
190
193
177
294
250
244
143
172
224
195
257
210
188
199
205
159
224
211
211
209
189
168
195
277
158
218
215
234
200
247
156
222
252
171
163
169
202
189
222
163
224
184
177
162
179
224
219
198
193
224
125
195
240
191
179
200
171
168
167
180
144
205
200
150
226
186
171
184
207
255
184
210
184
194
237
138
126
215
217
187
195
196
212
237
236
230
200
188
217
220
254
181
274
228
208
233
200
248
221
124
175
225
154
263
145
123
239
247
193
162
227
171
171
213
183
215
214
225
160
211
166
180
193
232
218
199
160
200
201
182
152
194
231
212
225
207
188
185
144
220
196
195
200
167
218
219
222
161
205
217
251
199
232
226
229
257
212
208
200
204
233
169
151
210
146
227
174
160
174
223
243
236
198
221
232
192
183
208
181
183
202
270
185
212
219
199
227
204
181
217
230
179
241
170
207
121
247
188
173
199
145
189
135
227
204
212
201
212
181
199
240
186
138
202
202
171
166
165
233
267
184
235
217
213
174
162
212
185
251
242
224
167
201
229
234
225
191
227
194
190
145
235
186
148
160
128
167
257
201
224
225
193
176
209
230
180
165
171
159
228
220
187
97
245
209
233
187
210
270
225
189
89
199
181
201
188
203
166
172
238
217
209
171
193
264
198
243
160
222
213
239
260
228
203
209
229
157
190
159
237
231
181
268
183
179
169
213
214
220
237
184
190
171
204
187
171
218
164
228
279
163
152
202
210
226
230
206
157
212
140
148
217
172
190
232
229
241
223
192
230
209
189
193
204
229
172
177
233
184
224
263
171
201
249
216
204
195
165
200
177
171
192
214
244
182
124
243
179
210
235
254
244
225
175
192
239
214
263
215
191
229
229
164
130
128
169
204
233
178
220
223
180
106
159
177
231
199
163
137
190
203
195
187
240
197
207
224
176
160
159
214
211
158
195
190
245
190
215
253
191
239
247
230
150
192
212
147
206
146
108
211
225
317
206
174
215
226
236
174
186
150
214
203
157
205
237
205
221
202
208
229
165
185
244
163
161
195
245
259
165
209
165
255
176
214
242
130
190
227
194
267
216
151
139
245
206
206
162
187
203
225
127
137
217
249
231
269
243
162
256
198
190
237
275
267
191
171
168
205
177
234
197
188
216
223
225
140
199
211
155
166
203
208
261
271
175
200
185
244
192
185
220
117
178
241
170
196
154
233
223
197
225
212
183
272
176
181
216
209
197
198
210
212
233
243
251
106
258
250
240
180
105
275
135
200
220
189
209
221
245
155
227
206
206
152
197
146
123
177
195
266
198
139
202
168
223
186
178
240
167
216
177
186
172
148
201
172
222
218
169
218
226
205
193
168
239
249
237
241
225
207
218
197
231
186
271
237
207
234
181
123
154
219
229
206
119
245
236
200
213
213
208
227
182
223
202
235
195
201
243
157
220
151
195
213
228
197
242
171
188
214
198
215
229
250
166
252
209
197
158
219
215
233
210
194
210
195
184
203
250
203
186
184
204
212
229
158
215
222
167
183
193
197
223
253
185
199
163
159
177
198
224
201
151
257
229
178
225
188
193
186
204
187
215
188
157
191
200
212
175
205
218
128
249
223
160
239
190
132
167
251
257
219
184
193
185
172
184
204
229
126
226
202
183
196
215
151
206
217
260
213
256
182
195
204
201
198
207
218
210
194
171
191
151
206
215
165
151
193
153
181
248
220
234
221
159
186
194
258
238
231
206
207
145
207
221
230
159
229
163
199
259
210
173
203
224
237
140
259
125
170
170
197
156
270
154
195
211
210
234
188
269
243
214
212
128
157
161
182
178
160
188
192
196
210
186
222
150
150
189
256
180
198
238
157
231
213
150
161
240
286
219
192
188
201
225
218
242
203
166
166
239
202
215
236
271
187
158
192
154
186
166
197
170
205
242
228
138
163
243
216
175
181
170
251
153
185
300
191
181
151
205
171
140
207
208
216
174
200
157
209
180
141
153
154
256
157
201
215
143
236
170
263
190
160
189
176
131
222
194
180
207
231
206
186
232
206
206
181
210
181
240
214
168
212
206
206
219
193
142
225
218
227
224
178
231
178
190
238
158
229
249
167
227
169
225
276
211
246
172
192
168
181
186
204
180
236
189
195
197
196
157
183
141
196
185
247
232
162
179
225
190
243
180
184
234
230
143
235
201
197
250
184
129
196
130
227
180
185
200
201
205
192
200
172
168
207
242
152
253
206
203
187
207
232
185
188
196
187
273
212
175
150
208
224
167
225
212
219
204
137
205
175
198
185
167
226
233
236
194
258
192
225
207
198
238
180
215
219
188
171
220
202
254
167
177
211
197
194
148
197
181
157
234
163
212
189
238
191
188
236
201
194
218
218
197
216
125
244
183
163
152
213
210
247
216
165
264
192
189
173
247
201
189
211
215
165
199
193
191
253
207
175
212
239
223
209
100
248
236
213
142
194
175
191
184
161
231
208
210
188
170
264
206
166
202
215
187
180
177
224
235
248
230
215
191
184
126
219
191
249
185
112
192
230
243
204
232
195
218
184
168
166
233
199
173
226
254
229
166
223
225
187
234
197
189
280
182
213
210
168
164
224
192
189
164
182
260
231
196
180
221
198
180
200
195
265
178
150
189
193
195
229
135
176
112
218
194
221
128
217
216
166
160
224
216
215
224
249
188
229
212
202
253
203
219
220
213
205
196
266
232
230
193
210
160
230
179
195
205
180
189
206
159
209
126
187
211
203
212
213
205
258
259
258
266
196
194
203
222
192
175
230
229
210
182
203
205
234
151
195
176
193
209
160
187
204
165
142
229
253
211
168
187
257
188
182
185
220
192
166
221
227
199
124
194
201
193
238
163
226
182
176
166
246
265
207
283
168
227
201
233
147
217
233
232
162
168
225
195
238
229
245
166
183
183
186
173
252
190
222
255
170
176
180
225
145
229
259
130
188
190
235
234
194
170
257
225
212
220
151
178
182
187
205
220
239
118
239
177
195
146
211
243
217
231
195
187
223
270
168
245
180
159
180
186
248
203
204
251
263
231
209
207
183
217
141
188
215
181
231
199
208
226
235
213
255
198
210
155
161
202
241
192
201
185
228
153
190
158
212
205
209
228
240
224
199
208
225
240
226
171
228
218
191
189
225
207
200
270
196
216
196
210
190
259
179
225
148
208
224
263
187
182
221
224
185
210
209
159
226
206
171
235
205
234
170
228
202
242
209
236
274
193
217
208
193
210
225
228
239
181
158
173
173
250
199
190
195
212
237
246
210
170
236
194
170
235
239
154
209
198
188
235
213
208
214
220
212
167
237
193
232
227
264
191
202
176
194
180
208
201
176
170
219
131
226
196
218
204
234
172
188
191
193
197
248
157
202
184
203
192
207
211
214
245
206
257
173
210
157
187
222
244
188
209
217
214
172
233
225
163
169
237
230
203
188
166
205
260
269
172
202
229
127
231
173
228
186
223
199
145
220
189
168
108
234
217
182
196
91
205
194
206
177
180
253
143
193
269
195
219
242
197
211
246
178
202
215
201
208
234
228
190
202
147
203
191
179
286
256
186
215
179
242
192
193
225
249
189
238
209
223
193
242
253
198
242
228
205
271
203
183
233
258
211
205
142
218
215
213
186
163
166
157
228
141
224
197
202
199
210
146
170
195
143
176
198
225
231
189
135
218
220
193
225
207
113
102
140
211
170
209
204
183
249
223
180
239
132
177
201
157
246
184
191
219
218
239
182
220
256
168
279
140
224
212
142
200
229
128
211
203
250
220
150
223
212
103
254
182
250
246
209
216
257
229
272
251
192
158
185
222
183
162
186
262
178
216
198
190
196
240
236
260
218
159
256
166
194
183
212
245
197
169
159
231
186
215
187
209
188
82
204
185
158
199
221
144
149
216
190
196
204
223
231
195
162
244
118
202
202
217
210
229
215
200
219
212
187
291
176
233
185
163
216
252
193
207
150
180
171
283
242
179
244
281
202
188
206
178
133
135
196
286
180
205
203
165
215
152
231
145
122
185
201
205
199
266
228
200
145
235
195
179
157
201
244
212
201
177
213
263
178
199
161
236
228
251
178
226
191
216
210
236
257
185
207
195
146
204
222
238
181
212
216
244
158
239
176
224
237
205
241
227
200
282
227
170
235
189
132
259
217
174
207
186
221
213
180
216
223
184
193
228
234
236
188
209
223
164
163
139
124
187
183
206
203
208
155
176
217
175
121
121
190
203
193
204
182
224
145
256
142
193
199
194
206
221
196
246
140
243
170
191
210
200
210
185
165
177
188
228
176
203
223
245
210
185
218
242
237
178
192
180
215
247
208
168
256
182
264
245
210
206
173
191
212
197
253
142
174
244
171
127
209
229
230
204
192
156
267
199
241
226
130
227
223
189
214
187
191
169
174
240
200
188
160
185
241
121
218
196
213
267
206
147
186
205
160
196
160
203
183
209
137
199
271
109
188
193
186
206
221
190
194
222
251
211
161
143
180
171
260
171
194
209
197
148
257
213
158
241
245
224
173
188
206
131
204
238
207
154
186
245
214
169
148
186
130
163
139
212
195
238
196
236
234
190
184
185
182
189
206
237
182
169
200
199
223
195
230
214
204
198
246
216
241
230
154
181
219
156
192
185
190
216
189
201
228
175
187
159
192
240
202
223
173
199
223
194
136
200
131
159
243
172
219
202
230
175
195
186
207
194
232
199
121
262
241
179
215
194
193
191
171
172
195
246
129
213
211
257
200
187
150
170
192
155
170
166
216
236
273
170
144
197
148
191
185
182
193
152
217
199
221
201
197
190
166
256
155
191
238
176
163
210
247
209
200
229
257
207
245
284
207
177
152
170
280
204
198
186
184
255
219
222
96
229
155
214
185
214
235
179
257
173
181
200
165
160
226
204
153
180
172
207
183
162
192
232
172
226
227
175
213
234
222
194
193
171
161
170
252
183
171
175
149
223
164
209
123
176
233
174
175
203
110
233
269
250
232
191
219
222
236
191
231
208
184
230
241
169
231
144
113
177
215
192
174
182
188
188
180
224
202
241
151
182
105
173
209
219
161
200
241
179
230
205
201
181
187
216
218
153
234
193
194
178
138
98
172
264
159
209
272
208
197
184
119
189
188
162
200
194
237
150
174
187
164
195
176
178
179
224
233
207
138
218
192
143
183
197
211
201
196
208
127
149
197
140
214
203
173
175
189
236
177
165
203
177
180
228
193
153
207
248
228
225
218
159
124
244
272
148
199
157
135
239
224
195
291
199
230
166
179
193
263
205
164
215
211
126
255
217
127
183
194
210
211
207
271
159
190
277
196
244
212
168
235
166
174
145
183
169
143
221
216
158
214
233
216
250
180
224
178
187
217
242
235
236
177
227
216
196
157
222
201
213
234
153
184
232
196
179
207
229
184
174
120
189
239
221
146
191
161
213
226
119
201
217
163
190
177
204
200
203
193
204
159
252
206
144
181
225
178
158
173
244
228
243
225
193
207
175
185
140
203
251
244
185
185
203
213
233
196
215
196
142
168
192
170
248
200
164
144
203
181
144
191
176
184
249
214
222
172
190
169
197
158
240
163
119
182
143
214
173
183
233
223
161
178
231
180
198
200
198
178
218
191
213
199
202
207
244
274
205
238
173
271
186
192
236
221
180
195
178
222
244
231
171
200
234
211
227
222
159
137
188
184
151
210
202
274
186
144
209
154
207
243
178
174
211
157
203
176
206
153
203
199
151
167
158
156
253
169
222
241
244
186
219
200
173
240
220
200
197
228
225
214
179
194
193
172
213
197
162
189
167
155
211
194
229
198
277
208
227
222
167
219
229
168
189
178
178
169
215
82
221
182
185
218
227
210
261
212
200
237
174
202
224
201
195
204
273
208
165
187
247
158
191
231
189
159
206
203
194
129
216
169
200
199
205
247
210
164
162
186
131
213
183
189
160
229
197
237
227
234
120
178
174
197
165
143
180
200
235
212
209
149
185
221
182
144
189
142
148
220
194
165
198
188
248
208
104
224
195
139
175
109
168
246
208
153
173
188
186
177
203
277
138
150
173
153
215
190
197
163
194
156
194
121
229
174
251
157
207
161
229
149
222
224
198
275
107
200
232
230
225
262
233
143
177
262
203
244
214
196
235
155
213
225
209
246
165
145
194
262
144
154
245
176
192
169
149
225
274
173
194
229
202
141
199
140
223
228
218
207
168
207
230
186
188
107
213
261
159
185
190
216
225
218
190
159
199
234
224
183
181
260
231
271
191
190
253
152
243
212
208
187
200
187
229
242
211
227
203
240
196
150
191
209
227
231
173
157
202
215
172
210
247
276
180
269
240
251
173
181
171
223
185
163
123
210
217
179
167
200
144
241
209
228
168
188
163
208
227
180
147
248
236
207
161
200
222
215
251
206
268
158
225
231
210
172
221
226
229
218
166
234
223
178
155
204
200
235
228
214
182
228
260
219
209
202
222
205
179
211
219
241
196
216
200
196
169
144
240
140
175
218
94
240
206
240
224
247
164
210
176
212
246
161
138
191
193
171
202
213
211
222
218
207
220
188
196
220
182
238
193
183
214
196
191
173
145
191
241
145
220
190
224
180
185
289
242
203
202
151
261
204
211
235
217
184
183
140
172
140
142
209
176
121
215
195
183
176
146
210
223
147
153
160
171
221
176
124
242
140
268
158
225
204
218
152
162
206
214
194
200
251
223
201
177
163
263
209
182
242
121
203
213
193
117
137
250
148
176
229
148
201
178
200
233
199
143
151
208
218
154
174
258
189
213
266
172
202
231
189
216
217
214
243
180
229
181
185
202
166
147
213
257
165
159
120
206
183
173
230
199
173
212
223
154
246
261
225
231
210
181
202
229
221
199
191
111
242
252
203
181
210
230
157
228
235
202
231
212
172
223
227
196
194
215
207
210
158
210
218
220
193
214
257
209
164
275
193
213
195
119
190
148
192
185
193
187
256
232
153
166
237
243
197
241
247
148
168
189
219
226
195
179
169
251
226
171
194
187
145
285
190
233
168
179
217
177
178
201
184
184
186
176
207
190
179
198
236
128
210
212
230
156
217
212
191
173
221
191
201
230
233
179
230
198
191
222
234
159
285
262
210
211
158
215
122
196
195
183
184
160
214
179
209
243
109
183
250
198
226
261
136
173
225
251
105
213
180
219
228
206
128
219
256
193
219
118
240
188
175
225
195
236
173
220
187
196
157
150
178
126
197
209
249
230
214
217
228
243
168
153
209
197
233
227
117
228
247
203
185
171
241
258
251
161
161
184
239
226
184
205
244
206
216
228
233
185
182
225
219
180
215
223
250
258
154
233
216
177
166
165
185
171
202
224
186
183
178
233
208
237
194
183
147
220
178
207
132
198
207
205
265
151
179
175
206
214
210
166
207
189
183
215
206
232
153
210
145
229
230
222
209
151
154
177
192
179
218
227
235
180
245
245
176
174
161
207
147
225
213
204
192
200
144
263
233
165
243
188
283
178
174
214
189
175
150
187
256
175
223
164
201
236
182
245
189
213
186
267
220
201
109
161
187
220
193
162
188
188
152
260
174
174
238
220
180
254
235
198
264
227
193
234
259
179
194
105
141
211
196
217
190
192
212
199
162
184
238
191
257
147
218
206
212
166
197
203
206
200
189
227
195
242
155
200
236
212
196
265
229
209
233
202
223
142
203
224
180
161
172
169
206
209
236
203
180
216
209
219
205
244
248
248
204
200
185
176
184
235
156
212
198
241
210
248
241
203
169
202
180
197
215
174
224
214
206
204
167
179
198
205
172
181
261
227
176
227
223
236
207
261
150
231
207
143
205
210
199
244
214
157
190
241
223
213
213
188
160
235
223
164
235
205
158
165
218
247
145
156
181
185
136
245
180
196
193
192
218
195
161
229
206
196
191
245
158
188
233
261
179
144
203
177
205
166
231
166
205
200
252
208
148
176
234
190
268
158
192
232
215
164
199
149
241
222
158
228
212
234
215
147
226
202
179
196
240
184
146
217
207
156
227
233
161
266
236
235
257
200
208
185
183
247
221
136
130
208
231
226
207
192
140
191
175
145
201
172
199
174
194
153
124
169
158
188
233
213
148
259
233
230
179
230
213
215
233
239
215
239
198
134
155
178
168
171
169
212
189
196
222
234
188
213
216
161
216
243
160
149
188
177
207
225
168
180
223
205
237
160
195
183
233
204
214
190
191
164
237
191
194
163
183
238
166
209
272
157
176
177
223
248
198
236
196
250
158
209
263
240
187
212
159
170
169
119
214
237
189
211
137
218
219
198
250
185
222
206
190
220
240
162
172
277
201
177
168
235
201
252
209
201
214
175
243
202
191
229
225
154
192
227
204
280
112
233
201
239
172
154
193
239
230
186
171
162
193
228
211
183
224
187
165
135
138
250
274
222
201
209
215
176
207
234
196
229
237
224
266
176
180
154
158
242
159
186
198
148
208
219
226
193
137
207
204
230
157
203
148
169
242
198
241
180
199
152
211
233
249
170
187
162
197
246
218
196
182
214
237
171
201
210
153
206
169
199
199
255
207
219
202
169
248
231
268
113
157
224
218
201
252
190
248
286
205
170
111
238
155
176
213
202
229
180
185
179
206
217
231
219
199
189
205
193
211
155
134
190
160
194
183
206
125
183
199
166
205
187
167
180
165
241
217
177
199
174
224
150
201
211
189
223
166
172
228
170
124
193
228
150
216
278
272
193
222
236
184
198
200
249
148
125
172
194
186
194
181
136
259
243
191
213
228
234
159
207
178
185
218
232
208
166
243
226
230
151
223
215
216
164
197
218
217
170
165
221
189
182
181
184
199
210
197
234
142
232
236
227
178
124
188
198
169
169
228
189
210
166
192
208
168
248
212
208
106
198
228
221
122
237
213
228
135
263
166
134
234
162
188
213
186
185
276
187
178
213
187
151
208
164
208
263
183
225
140
258
167
208
165
245
148
188
200
176
139
213
186
223
198
181
160
148
218
172
211
208
178
202
190
237
216
216
173
170
164
211
247
234
195
236
246
234
176
264
150
228
238
151
139
198
199
185
211
194
95
220
187
181
129
143
214
164
171
183
175
210
152
236
184
212
217
200
228
203
242
244
227
144
186
241
120
216
257
212
215
172
218
174
269
197
213
190
233
187
219
212
226
218
171
192
213
210
144
189
174
187
197
212
152
215
201
223
172
186
208
177
188
239
148
224
248
223
255
227
183
218
176
211
136
189
225
179
202
172
154
164
209
201
209
249
205
227
150
212
224
230
209
196
207
126
214
178
241
252
197
224
222
277
243
170
234
176
245
161
179
232
182
236
209
178
210
217
163
253
166
170
225
241
247
186
218
202
184
150
151
201
184
215
223
180
257
210
221
155
208
174
285
156
169
163
215
230
70
235
262
231
208
215
203
180
235
202
185
181
232
191
249
257
242
188
196
185
202
156
143
165
187
149
202
205
158
227
191
240
148
183
228
181
223
204
217
179
217
127
208
148
218
172
208
233
210
217
177
217
224
239
215
244
252
250
163
161
204
228
232
189
209
201
140
227
167
164
157
179
186
176
220
215
187
185
237
183
149
197
207
188
230
242
241
220
140
178
241
223
228
302
189
212
172
240
275
202
188
139
239
213
193
195
187
286
207
205
222
151
257
229
180
202
189
194
271
224
197
161
183
207
213
198
232
228
188
272
154
163
203
209
216
184
123
174
237
252
222
170
251
213
212
209
171
162
226
253
240
200
206
201
171
194
251
176
165
143
222
194
273
158
178
192
160
211
214
207
273
192
239
142
168
202
144
199
198
241
199
185
194
217
191
224
214
202
217
231
218
252
155
186
152
220
194
247
206
245
155
210
222
215
206
159
209
227
217
176
169
243
187
143
234
235
237
190
218
148
196
146
155
197
213
208
181
215
146
205
154
190
213
155
173
222
200
214
197
193
229
199
236
188
191
225
153
195
213
256
231
171
200
137
155
139
193
203
199
197
197
217
189
202
197
167
202
180
208
169
168
138
150
243
194
207
185
183
169
236
185
237
261
238
192
205
206
195
221
222
158
148
153
230
189
153
199
222
207
234
195
235
176
180
173
164
171
152
181
202
239
203
267
108
194
172
245
191
208
189
208
226
256
208
158
230
179
234
267
233
228
178
185
252
228
194
207
216
254
198
193
202
196
220
175
238
170
173
204
159
177
189
197
131
201
191
169
173
166
219
190
209
219
146
245
234
157
198
220
249
178
119
154
197
249
243
261
246
197
222
154
216
217
216
226
195
197
183
219
112
243
193
210
183
127
199
252
259
194
224
156
154
186
154
194
214
212
220
218
167
156
233
219
186
235
188
239
220
245
122
189
276
199
243
168
212
147
209
230
188
233
240
184
246
157
137
180
196
222
220
164
235
115
210
199
229
227
155
191
266
232
207
234
181
231
236
212
230
233
193
201
191
233
224
279
198
206
227
226
240
245
214
241
215
166
212
204
178
239
207
135
196
193
143
234
171
158
160
177
182
184
175
210
218
215
186
142
247
170
251
214
218
219
238
163
194
159
121
194
222
192
256
187
167
218
207
163
217
212
195
159
208
215
176
178
240
160
185
256
204
268
201
228
216
161
202
162
188
191
197
247
189
150
182
220
238
170
183
227
217
202
238
223
240
154
165
225
231
194
175
229
231
150
238
201
225
189
211
238
178
214
210
230
223
200
163
253
164
243
212
188
165
270
200
202
196
239
179
188
220
198
151
270
159
229
231
230
186
193
231
220
203
174
172
203
198
128
245
202
201
154
257
205
258
191
196
255
138
197
140
203
263
140
250
243
80
189
236
235
223
202
195
179
161
208
169
192
165
191
206
234
214
210
191
250
250
213
188
201
215
233
189
241
187
144
221
215
179
178
210
177
207
199
205
197
183
240
225
273
167
233
257
230
254
215
178
209
180
207
159
190
141
242
232
239
178
221
219
223
202
233
207
237
211
205
206
244
174
206
207
187
178
224
182
216
230
196
156
207
192
194
253
229
225
220
215
189
169
137
164
203
181
227
186
164
182
221
176
175
230
198
190
237
165
211
135
247
206
197
150
167
183
181
157
224
164
249
154
210
186
212
189
215
210
251
168
198
181
263
196
204
193
229
205
151
179
238
244
250
207
199
180
228
208
166
202
174
164
192
244
203
195
204
148
147
152
216
258
177
230
241
229
200
185
201
190
191
209
188
200
149
209
273
204
170
222
207
148
169
215
192
236
208
141
214
219
212
215
142
201
262
209
151
260
225
213
152
226
202
250
170
227
195
219
200
185
208
252
188
196
208
219
214
187
171
139
123
191
191
171
264
241
173
158
285
183
187
206
209
203
237
159
229
198
147
235
200
218
228
229
161
192
223
248
215
224
166
175
229
257
112
251
204
197
217
175
183
176
224
182
166
181
171
184
241
160
217
207
236
228
187
191
256
152
228
226
140
157
218
187
230
197
228
208
205
154
245
206
242
173
143
167
205
159
192
119
196
218
195
189
198
170
213
238
210
215
165
193
148
137
173
232
261
175
213
190
213
214
217
160
175
208
249
202
185
218
193
183
249
181
145
173
192
275
207
194
297
193
212
202
215
224
239
246
189
215
188
190
185
243
163
190
181
230
188
245
142
162
146
238
220
209
179
197
159
156
123
159
202
211
140
169
229
276
202
185
233
219
228
225
209
222
109
216
246
184
169
187
225
186
223
177
246
163
218
198
262
154
201
150
209
229
232
209
214
249
223
223
195
189
179
205
259
271
190
175
142
188
204
218
215
229
227
180
247
199
244
190
160
188
157
183
211
172
189
135
169
151
177
234
140
176
215
244
131
177
176
149
193
186
154
155
243
228
172
231
214
210
162
243
184
204
239
246
251
163
260
190
161
210
232
212
157
192
185
210
161
192
227
147
140
268
198
201
158
191
190
280
223
199
187
213
231
194
224
231
150
212
199
167
229
189
247
200
249
256
216
184
239
192
203
171
140
156
256
174
222
209
178
219
211
139
223
184
269
179
205
167
138
199
212
210
230
169
191
225
170
163
204
252
176
186
230
198
251
248
191
193
219
199
168
206
145
256
244
204
220
175
265
177
163
218
144
219
284
186
250
231
211
205
219
223
242
183
226
145
198
157
230
135
218
202
206
190
192
137
231
225
222
231
175
256
247
195
263
210
174
211
237
216
194
169
180
220
167
222
254
206
217
227
188
218
223
215
190
210
220
187
183
262
212
185
190
178
237
165
193
180
155
169
260
189
216
202
234
221
232
165
190
228
197
125
158
190
178
155
154
239
186
225
233
230
196
213
189
223
249
203
168
272
163
224
212
198
197
167
130
253
194
265
155
252
206
170
168
163
217
188
245
162
206
220
272
198
206
183
222
190
269
176
231
169
152
190
185
163
236
202
161
203
207
187
143
230
235
194
216
178
224
230
229
191
255
257
181
243
181
205
180
207
244
220
172
229
159
232
100
186
231
183
207
281
182
238
187
134
192
138
195
212
206
182
271
193
196
202
250
204
183
140
230
179
201
235
235
155
145
210
198
209
202
173
176
285
204
190
192
209
246
218
238
192
122
187
221
222
227
226
161
238
138
248
188
211
196
184
226
235
215
162
193
201
214
178
142
180
196
226
188
155
194
188
222
185
184
212
171
177
166
130
214
203
166
170
249
104
194
230
231
166
221
162
236
179
185
229
249
244
220
266
181
217
201
225
164
184
155
236
157
176
234
244
212
258
199
130
269
149
130
152
101
233
249
233
189
207
229
192
210
231
166
242
223
255
162
160
263
244
185
204
175
176
218
179
112
233
194
243
197
228
226
207
213
234
202
129
212
234
189
213
183
201
209
235
165
132
224
135
155
241
175
239
222
264
207
223
197
198
200
206
194
145
139
169
126
245
251
249
182
210
287
215
215
193
199
154
180
217
186
183
198
222
142
228
199
152
176
219
249
200
222
188
247
161
222
182
172
160
187
215
199
176
205
165
257
237
231
174
226
225
227
194
227
226
193
198
186
192
196
182
203
245
185
219
245
123
109
184
204
234
187
205
211
211
169
204
209
171
157
195
124
225
178
157
234
148
183
240
171
155
205
210
169
240
165
175
224
164
237
172
214
212
211
195
171
237
185
165
188
223
142
138
202
215
221
191
246
160
235
187
184
233
186
229
160
201
205
248
243
177
205
170
217
229
215
131
214
142
171
171
214
210
204
205
175
149
217
193
216
210
153
157
224
203
218
234
215
198
226
181
153
240
163
195
159
180
177
214
155
160
135
191
205
193
269
201
264
219
239
167
174
164
210
177
180
247
193
211
203
192
176
156
154
236
193
191
256
131
236
249
216
251
174
190
218
221
240
203
178
209
237
194
170
206
152
182
181
217
168
180
302
249
164
190
247
201
210
216
222
229
198
264
157
210
192
210
229
218
216
170
197
217
236
172
126
168
206
229
266
251
166
200
144
186
158
131
213
208
148
194
243
182
238
192
189
161
222
186
179
159
230
208
250
224
187
191
189
163
159
175
271
227
187
224
201
190
174
223
185
166
181
168
228
141
167
182
219
228
85
211
113
236
208
245
196
212
144
153
241
207
237
251
243
253
171
200
175
232
243
182
188
181
164
218
205
228
211
144
228
179
247
191
205
168
245
294
199
154
144
187
183
216
242
216
195
175
253
106
194
142
181
179
236
197
221
191
226
176
207
226
175
185
194
253
214
201
154
190
255
240
127
131
225
207
226
271
227
174
159
135
238
134
220
206
186
222
217
186
211
203
190
192
163
241
235
185
186
213
217
208
200
196
236
206
199
183
203
160
239
230
211
167
208
192
216
201
210
223
227
227
229
255
207
195
182
159
256
197
241
197
172
209
231
216
177
211
214
204
251
218
214
248
143
243
226
187
184
215
225
164
203
187
195
252
240
221
235
200
234
249
169
245
160
214
223
100
270
186
174
236
178
212
233
152
223
115
156
200
236
176
214
201
226
256
198
212
226
231
185
168
233
230
234
207
195
170
169
178
181
146
202
131
200
220
192
260
162
209
176
206
227
189
219
243
174
161
191
210
185
147
228
204
216
177
213
201
168
203
236
210
236
218
193
199
187
196
203
215
248
252
196
200
223
189
193
174
244
218
148
230
161
214
161
176
140
230
152
217
200
233
196
149
204
228
196
196
213
206
148
238
218
231
229
222
205
159
210
182
289
132
201
196
204
207
183
208
213
187
237
165
163
181
133
220
264
200
246
213
263
126
220
222
200
238
175
199
196
212
158
229
300
183
205
231
164
239
218
251
187
213
177
177
214
260
212
190
264
200
226
187
227
256
215
226
226
154
182
155
218
179
158
175
202
194
194
216
203
220
162
237
173
224
208
185
228
161
181
227
180
233
237
218
255
217
180
191
199
182
151
214
237
214
208
222
203
224
173
210
174
209
175
240
213
189
146
218
209
224
205
221
220
195
255
218
119
219
176
194
225
119
190
252
229
249
246
232
220
229
199
224
195
211
214
268
196
222
165
229
204
247
166
227
167
216
238
224
211
206
184
160
207
214
162
206
212
215
221
224
223
130
240
254
170
207
96
188
172
206
190
248
206
171
208
225
150
193
214
181
248
194
229
207
205
211
291
166
166
190
212
209
195
183
173
188
187
247
186
237
170
235
180
146
187
158
219
233
215
231
219
172
209
241
240
218
240
217
188
149
184
229
205
169
199
220
219
182
173
221
180
205
222
229
174
211
218
216
191
153
196
193
180
152
168
205
199
160
218
195
166
261
247
171
210
276
223
239
183
178
210
166
200
237
179
199
204
188
132
280
216
289
180
241
113
225
175
183
223
198
179
164
220
205
218
201
139
186
211
233
238
220
200
215
244
218
146
210
199
187
199
203
222
211
198
219
220
224
185
197
257
215
157
195
236
226
203
190
197
188
163
262
156
229
212
187
163
219
148
152
184
147
176
240
265
134
161
206
186
162
117
208
222
156
191
174
208
209
201
197
198
239
146
197
189
171
161
225
172
250
154
170
222
216
134
208
213
242
222
181
183
203
207
146
179
209
259
178
170
179
186
197
188
125
244
265
156
243
201
187
214
180
258
166
242
199
199
214
177
235
245
169
245
207
197
157
208
241
145
229
176
231
207
247
150
190
189
169
149
229
215
176
184
164
174
265
245
221
230
226
160
200
174
187
204
132
232
219
204
105
225
231
226
210
205
143
126
169
227
269
220
186
156
209
172
129
190
241
147
208
220
203
119
244
143
174
213
228
187
197
173
209
220
205
282
132
263
155
174
201
237
216
255
175
202
143
215
207
232
203
165
252
197
242
203
145
239
185
173
145
249
152
161
177
201
151
208
228
159
214
264
206
180
171
233
205
168
198
183
205
216
220
191
189
151
209
187
209
257
223
193
143
169
265
222
208
202
172
257
233
270
186
185
209
201
176
148
232
133
257
240
181
193
179
234
225
165
219
203
220
159
148
174
103
133
221
168
185
221
155
208
124
246
220
193
236
232
180
185
231
153
243
203
224
223
233
171
245
201
234
208
208
169
132
225
222
173
237
208
217
157
213
232
136
207
172
215
186
163
171
223
261
209
206
200
200
153
160
231
209
150
184
169
181
230
164
201
181
253
193
166
204
136
249
173
167
182
226
184
231
215
171
275
233
194
211
198
238
236
152
192
175
183
227
206
235
211
237
198
219
154
248
188
235
101
225
225
181
173
199
238
123
113
224
185
247
146
191
148
189
197
219
257
235
199
158
203
244
235
145
197
202
227
171
235
221
245
203
204
175
201
224
207
206
193
224
262
143
227
233
142
206
195
222
203
235
193
197
198
217
220
172
205
195
203
156
116
212
143
246
174
159
161
214
219
174
245
190
212
222
224
189
195
246
174
179
187
216
223
163
263
242
156
180
210
256
174
235
193
198
178
242
112
231
231
204
203
239
179
137
277
191
155
153
230
189
198
178
209
167
211
83
203
266
155
201
158
268
193
247
229
145
182
163
247
181
183
208
251
167
173
210
210
182
231
179
230
235
215
167
165
195
189
245
192
196
166
219
152
239
258
129
209
243
154
249
186
172
167
193
202
191
226
201
206
176
198
225
219
249
240
217
196
195
212
200
219
132
221
149
209
209
151
195
220
152
196
163
198
200
242
197
146
189
157
178
211
231
234
154
242
196
173
138
172
250
227
218
176
158
134
172
170
265
227
195
173
228
167
240
156
261
245
245
186
250
225
168
180
196
207
176
219
217
217
198
187
278
221
233
196
224
249
153
206
213
165
188
224
242
215
198
130
120
200
178
205
211
250
139
165
207
254
155
210
218
191
218
226
217
178
185
166
221
229
150
163
182
241
101
270
136
181
220
219
197
185
217
252
205
227
125
162
141
186
213
170
218
179
205
223
191
225
168
152
249
253
227
179
200
216
194
213
215
184
240
282
205
251
205
248
248
211
236
206
228
194
170
165
184
229
270
165
220
181
176
217
212
189
242
172
214
231
251
181
180
234
164
168
204
154
180
202
249
170
176
209
205
179
226
200
209
133
186
213
229
222
182
266
228
238
232
219
211
234
243
236
221
164
221
170
287
241
151
182
196
186
216
135
225
213
184
204
241
185
237
216
159
162
172
239
232
175
259
191
224
168
212
221
247
218
239
162
150
203
188
258
226
192
175
235
214
253
264
191
237
161
184
182
288
217
188
216
229
154
197
204
256
191
222
221
211
247
222
136
233
185
208
130
184
155
247
230
220
273
230
131
182
208
210
245
271
167
216
201
180
169
226
226
250
192
198
217
227
176
131
225
150
225
211
157
163
147
222
211
230
211
116
199
260
223
190
190
225
199
211
182
215
170
162
177
233
205
230
182
243
224
173
178
262
216
227
132
207
207
258
250
195
140
239
222
221
240
238
209
190
205
202
274
149
140
174
220
235
177
194
225
125
203
208
148
219
176
207
191
243
174
239
182
254
259
174
182
152
149
249
209
216
150
222
172
234
247
197
218
219
188
237
221
152
162
175
226
146
186
237
161
220
195
171
198
208
196
222
234
201
116
209
163
166
192
126
158
187
184
174
193
143
207
155
178
229
191
205
222
263
196
196
250
134
182
213
267
214
173
138
172
194
161
147
162
150
125
200
235
194
229
163
179
229
260
176
184
141
195
217
162
232
205
197
210
235
189
270
249
149
139
196
211
230
240
155
182
211
136
200
124
167
197
198
176
245
225
202
150
248
202
137
163
233
181
216
240
198
196
246
173
255
188
259
243
248
230
179
161
184
219
176
213
228
246
187
161
222
214
228
277
246
198
276
181
226
247
196
202
229
207
204
233
189
146
208
203
166
202
262
206
227
183
195
183
227
180
179
185
201
237
189
179
195
228
238
243
197
248
260
191
258
187
161
182
221
179
200
230
242
221
222
187
146
263
202
168
232
166
208
221
238
198
216
253
185
234
207
204
211
234
206
225
161
244
157
220
245
212
210
161
151
197
267
231
226
164
257
234
220
225
250
249
220
132
164
276
240
141
215
226
190
209
177
231
176
199
171
219
245
174
188
168
183
123
251
223
271
197
217
217
163
194
174
254
171
149
141
232
225
162
205
166
170
271
205
265
197
237
210
206
241
221
255
216
206
228
169
215
233
215
211
205
194
219
199
213
202
137
179
188
204
184
197
186
202
256
210
127
188
159
227
289
148
246
178
218
150
190
236
197
228
198
160
210
235
159
198
276
149
270
122
163
194
152
290
249
215
213
169
200
195
223
137
209
292
236
203
201
254
218
179
211
243
274
200
253
220
203
184
212
234
233
204
213
227
210
218
292
203
235
185
165
133
222
154
231
133
128
195
219
182
194
175
205
232
245
216
223
209
245
235
219
178
198
220
159
157
161
211
150
167
161
185
217
237
232
178
182
168
199
186
206
189
216
200
208
182
209
207
235
188
175
193
223
203
222
162
152
224
141
180
184
233
219
195
183
219
228
183
250
183
151
154
156
224
221
177
169
239
222
184
180
186
190
228
266
217
142
164
178
189
191
250
237
208
198
189
178
159
262
211
148
233
197
226
170
207
162
239
171
143
242
183
182
209
161
166
242
204
217
204
196
228
178
175
189
188
145
189
179
217
212
165
187
129
180
215
201
241
256
178
195
198
195
153
146
196
220
179
232
207
240
214
190
213
234
146
210
214
202
239
154
214
211
105
192
233
221
147
193
205
207
257
171
253
224
252
196
241
173
184
136
248
212
190
185
270
164
240
240
188
154
221
167
243
240
175
184
197
206
192
208
161
141
170
182
213
198
154
130
165
196
222
231
241
247
176
213
201
230
267
164
139
244
198
148
209
186
225
138
212
149
247
194
191
237
181
134
195
142
176
164
186
169
196
222
196
215
229
218
201
261
144
239
189
194
185
204
174
235
188
166
257
193
218
187
243
195
218
213
193
240
168
195
183
245
198
181
195
146
210
226
217
216
263
212
194
187
188
197
145
130
177
191
183
213
184
244
210
233
237
125
194
198
214
187
223
169
166
243
128
244
236
154
186
214
200
151
227
194
171
178
231
220
160
217
254
225
155
252
233
189
189
220
170
237
243
179
166
235
250
167
206
221
242
157
219
213
212
204
235
202
147
248
207
203
227
209
193
224
245
190
257
199
232
173
170
240
208
227
165
190
175
207
180
209
160
259
239
210
259
230
167
163
182
147
202
182
192
280
184
219
182
229
153
187
166
159
201
217
206
187
249
121
202
232
206
198
167
170
141
252
179
160
194
246
191
256
234
201
228
195
204
225
236
170
247
200
156
224
187
219
219
203
214
156
204
219
182
243
185
161
183
155
169
219
172
150
168
240
198
188
177
233
166
202
184
193
238
246
204
186
219
214
169
196
147
211
240
210
194
214
180
173
203
187
194
210
152
174
209
223
209
224
167
171
227
237
270
263
214
168
154
213
201
238
218
209
202
234
142
204
181
222
185
171
265
163
205
143
172
200
173
231
213
252
187
228
131
174
199
252
150
211
239
215
221
170
189
219
196
150
247
149
160
207
221
137
157
176
176
221
171
155
188
174
181
219
214
237
201
193
150
187
160
169
138
212
164
230
173
241
203
191
187
204
191
196
227
189
155
150
226
226
205
218
178
213
201
183
177
186
197
281
187
279
255
215
203
239
161
129
206
244
220
181
183
135
196
194
208
206
193
107
193
216
201
135
191
162
222
192
211
187
235
218
203
238
168
268
128
185
230
165
264
190
169
204
195
230
189
219
206
156
247
177
170
234
242
95
215
238
118
207
178
180
156
258
135
195
202
182
209
177
158
210
198
245
238
192
144
208
144
196
176
202
201
170
191
229
256
189
157
211
217
216
241
216
193
180
177
125
236
171
245
184
128
251
235
141
154
239
195
180
221
122
199
254
254
135
221
179
260
194
242
235
188
136
194
175
176
205
209
163
160
191
146
170
198
137
198
188
219
207
239
238
211
230
212
237
190
149
192
162
205
236
199
220
169
213
200
193
159
239
236
213
269
196
233
174
221
245
216
211
174
182
200
148
191
151
198
187
251
228
210
163
241
221
228
170
185
206
224
221
272
219
205
189
238
216
153
220
121
223
226
213
189
208
157
239
186
243
212
234
148
135
205
205
197
222
214
142
246
223
157
216
178
191
202
223
142
218
178
166
183
168
153
209
206
211
210
233
228
201
224
185
277
183
193
140
182
155
210
148
150
261
184
220
191
235
242
181
193
223
212
241
152
187
203
162
203
220
243
186
243
175
212
219
198
204
198
171
175
204
136
255
157
247
243
153
130
180
161
206
214
239
225
233
250
226
152
185
168
227
178
216
156
152
171
160
265
213
235
218
251
215
227
211
183
176
256
127
159
248
203
192
223
223
188
195
202
138
213
187
232
231
179
239
251
227
159
171
186
187
219
214
232
217
169
167
140
205
244
200
192
196
196
220
195
207
186
206
137
172
223
170
168
166
199
227
265
200
199
199
191
155
249
204
213
184
207
193
221
224
195
196
219
209
140
219
190
247
234
203
210
226
209
222
240
214
224
187
234
173
223
197
219
212
126
194
163
218
192
224
226
239
194
166
186
204
219
135
184
234
264
171
147
140
227
220
194
199
220
222
201
128
214
223
187
218
211
225
257
218
160
228
143
175
181
254
226
149
223
196
191
183
184
216
191
184
203
195
268
214
222
184
183
229
236
203
227
222
238
210
161
170
241
198
191
186
190
241
157
181
208
188
228
165
234
209
167
184
214
90
118
175
267
255
203
278
239
162
122
203
236
279
192
207
211
208
210
178
122
181
115
184
142
214
183
266
144
284
171
213
190
193
205
155
166
237
184
262
242
173
255
158
190
202
183
158
181
250
244
171
201
185
178
200
164
292
249
208
212
128
220
205
225
193
218
249
189
179
219
157
274
230
240
167
118
215
168
195
227
229
196
234
241
166
217
201
208
202
155
203
234
186
221
181
190
171
212
174
243
263
225
191
178
171
137
178
214
226
218
231
178
181
220
194
188
211
169
196
256
255
197
187
211
132
205
261
231
199
179
220
205
125
208
199
234
188
252
235
195
167
219
191
164
156
223
212
198
214
154
180
177
213
176
255
209
146
209
201
215
222
177
199
216
214
196
194
184
295
205
207
262
171
197
157
236
150
222
141
216
241
194
167
210
182
253
197
120
248
172
233
228
238
203
189
180
194
231
235
199
178
247
210
205
151
113
218
230
187
198
258
196
172
164
213
245
172
211
177
211
196
160
212
158
244
181
223
214
203
175
259
196
217
148
239
248
187
186
248
261
220
197
184
153
168
194
248
154
142
236
197
158
234
215
224
220
223
187
169
248
96
224
250
185
245
183
216
150
222
207
209
158
189
179
204
256
184
237
247
167
197
244
183
156
157
218
254
195
241
198
201
154
241
202
230
203
174
169
245
180
164
256
199
243
159
203
274
211
164
217
197
151
235
212
190
225
225
146
154
269
147
170
199
195
225
156
175
186
231
214
197
222
234
232
280
192
185
255
186
241
242
183
218
173
219
247
262
180
191
168
162
238
229
164
150
157
142
187
268
240
173
221
190
249
201
226
197
190
252
196
185
237
283
201
202
139
188
167
117
240
196
210
193
163
200
173
250
155
254
209
220
194
282
259
205
158
131
193
144
189
174
190
212
169
215
134
237
198
210
174
160
157
183
250
177
177
228
182
181
209
165
148
203
183
201
155
213
165
197
186
146
179
220
254
230
172
157
188
223
223
222
200
226
209
208
178
144
218
169
237
215
186
147
189
243
182
178
167
214
212
142
167
241
212
137
260
176
186
176
126
183
135
221
238
266
155
138
165
152
152
213
207
239
188
228
154
246
166
215
200
198
242
167
159
273
234
182
192
247
197
228
175
179
229
241
240
209
219
205
198
241
213
206
217
221
198
165
177
180
209
195
246
186
137
239
206
227
225
223
164
259
247
253
162
130
198
160
256
198
225
193
207
258
150
179
243
163
194
201
162
198
180
192
232
129
186
146
193
238
192
190
203
217
172
171
243
171
214
247
178
188
238
232
207
223
94
180
221
226
218
215
221
207
213
173
160
253
170
227
198
181
256
206
171
242
242
200
206
191
197
207
186
179
124
152
251
191
238
206
161
207
151
243
238
199
210
162
288
210
217
219
144
229
179
182
190
234
180
208
255
149
200
180
197
160
147
137
155
199
152
136
205
199
229
226
191
177
190
225
219
218
161
196
250
240
210
160
224
208
150
181
131
210
235
220
209
202
273
219
164
205
218
201
202
235
216
150
190
169
231
233
196
203
199
258
202
180
214
225
228
180
217
215
213
192
241
233
154
192
192
190
184
203
218
210
234
205
206
199
258
199
157
181
228
241
153
195
156
301
192
219
164
193
243
153
203
184
189
185
218
157
148
221
214
182
191
213
171
199
140
252
139
217
217
178
239
189
192
162
232
189
234
163
217
163
172
151
226
198
181
274
199
221
170
232
155
160
144
239
174
181
248
146
232
189
213
224
267
197
216
214
203
191
159
233
192
199
276
170
190
184
170
193
205
189
172
217
156
233
203
209
231
227
166
181
195
180
271
199
174
170
172
197
194
225
182
206
120
255
162
200
228
180
265
172
163
232
174
207
196
212
186
167
194
177
175
231
189
201
255
168
254
207
163
152
187
238
230
182
140
133
217
195
286
142
236
181
195
146
191
157
202
175
207
185
217
232
254
186
269
204
184
249
196
158
191
179
249
187
191
224
226
191
196
148
224
269
260
206
139
198
177
188
207
213
158
130
167
193
197
200
196
199
214
209
203
234
252
227
224
170
166
181
206
230
247
243
196
167
228
242
121
233
221
189
90
177
241
189
222
157
190
243
200
252
195
204
198
218
206
254
156
193
137
257
206
230
157
223
147
171
212
230
186
203
193
195
174
221
222
146
152
159
218
171
279
140
221
238
146
187
195
183
196
169
200
190
183
219
161
242
232
221
170
176
215
138
179
183
226
205
220
229
234
166
178
167
185
226
207
227
232
195
246
209
215
237
226
216
194
194
170
209
222
192
230
204
186
243
179
218
195
212
205
199
205
215
211
243
155
126
238
240
222
255
174
203
183
242
160
204
185
205
245
223
156
186
241
165
236
171
187
152
171
182
233
167
147
225
167
205
250
235
132
151
126
218
181
146
146
164
237
213
240
218
180
147
197
141
205
246
212
114
144
238
239
171
195
194
195
251
248
248
197
197
212
187
170
224
246
204
159
188
197
189
115
269
209
183
257
190
226
227
171
206
165
227
171
211
186
237
246
221
177
142
245
149
175
175
225
215
198
197
137
137
216
208
204
206
214
128
145
178
152
186
158
228
216
232
202
182
242
196
154
219
271
184
185
213
180
201
238
223
265
224
224
194
238
199
237
219
255
174
172
169
170
145
161
195
183
228
167
261
222
265
207
174
160
231
203
181
207
230
227
181
168
203
234
246
242
184
207
202
229
165
164
198
205
187
196
188
161
271
124
240
233
170
271
251
263
168
225
201
147
165
187
158
200
247
180
204
214
184
175
243
178
154
195
218
195
153
166
175
183
170
184
173
173
155
152
156
179
177
189
285
232
116
161
228
226
142
183
195
226
153
127
218
205
251
220
232
203
199
204
123
183
167
178
188
147
200
217
187
281
163
216
174
194
150
239
247
203
189
257
177
245
215
248
213
175
144
215
197
188
175
188
269
202
155
130
181
146
259
230
257
171
181
244
182
202
214
218
187
181
181
248
173
207
215
206
231
213
236
208
187
209
188
169
204
192
172
184
158
205
197
247
206
214
198
192
241
221
174
212
153
196
178
213
241
226
160
130
168
186
248
186
201
203
257
210
230
212
187
278
165
184
165
242
245
170
208
226
122
227
183
232
214
212
214
215
157
226
208
258
198
231
212
204
185
171
164
177
233
207
197
148
222
197
137
154
247
239
237
209
230
228
232
207
181
169
125
174
146
278
177
201
247
201
159
158
166
155
236
209
206
225
199
259
181
202
239
183
211
172
216
196
226
182
199
253
188
220
202
266
155
202
141
205
178
141
189
201
177
151
202
213
180
206
188
164
259
220
147
232
266
149
153
210
185
244
192
168
115
181
133
194
184
183
219
232
113
256
243
207
236
229
243
218
167
154
224
215
195
234
176
260
246
113
209
289
199
154
163
223
202
204
219
239
183
245
223
192
210
226
217
178
211
161
228
180
195
229
164
234
214
220
202
236
237
210
216
194
192
213
200
210
142
230
226
133
200
167
207
154
192
168
249
191
157
182
160
213
177
230
212
211
148
178
164
205
199
232
156
196
197
197
212
210
204
219
186
229
235
187
205
137
180
201
190
180
180
191
224
192
182
253
243
159
242
162
200
188
191
146
184
170
220
182
265
168
185
229
163
177
211
177
230
237
152
222
140
229
183
219
126
264
226
197
235
188
225
219
178
255
301
173
216
181
143
146
236
233
242
229
175
185
154
179
209
221
201
180
214
133
228
150
169
199
168
176
284
214
236
205
114
212
190
221
176
248
206
166
188
196
234
148
190
259
143
161
240
251
219
213
156
227
260
175
183
240
222
170
178
201
239
199
175
188
220
243
178
218
221
170
222
237
247
153
211
175
173
181
264
142
91
203
244
176
188
248
183
224
186
228
213
132
244
210
240
173
234
204
243
231
209
186
143
181
228
217
247
145
188
209
203
191
161
144
190
214
221
156
226
174
197
217
202
196
191
169
201
172
189
210
245
293
234
199
269
230
238
226
250
192
213
170
236
227
158
201
181
174
187
162
198
229
226
188
219
185
230
243
225
232
189
228
215
256
181
201
202
143
173
153
223
231
125
207
196
139
191
248
227
212
161
165
118
203
216
173
188
161
191
270
221
233
155
240
203
196
206
248
191
288
137
255
216
267
214
146
169
211
226
165
209
222
192
210
236
200
175
134
202
144
171
189
256
238
227
233
217
112
182
163
152
232
241
201
177
185
169
262
252
220
201
196
215
183
233
229
145
141
199
199
168
220
182
105
210
238
183
145
207
185
221
199
235
216
283
180
162
183
251
172
178
259
220
224
242
167
195
208
177
214
208
210
169
174
138
205
233
225
178
254
147
172
264
178
166
226
165
191
191
230
239
224
122
197
171
210
243
196
110
221
208
161
179
261
187
176
168
196
265
243
217
154
232
246
183
155
100
223
148
266
213
173
197
188
146
204
192
204
164
181
161
173
212
187
164
156
197
174
232
172
201
257
190
206
211
203
231
221
146
222
197
184
182
211
204
207
233
186
194
187
203
212
241
211
202
263
200
179
179
183
185
174
190
218
223
219
265
184
214
121
206
191
218
233
245
192
240
217
188
242
137
126
208
228
274
184
206
157
207
185
261
167
151
218
199
198
180
202
232
226
187
251
197
214
250
159
222
244
232
178
186
160
169
203
196
175
199
142
196
210
228
236
202
233
256
133
199
208
210
196
202
183
193
211
245
192
182
258
151
209
170
227
204
220
187
172
222
256
163
181
230
192
222
198
213
235
190
183
215
204
209
179
223
167
173
255
226
138
230
126
219
198
164
226
209
200
156
176
169
177
197
194
155
258
142
180
210
193
208
159
245
228
182
260
187
203
254
198
157
222
188
136
200
218
140
179
206
191
234
168
232
202
219
171
166
221
191
188
220
171
203
196
167
219
180
228
173
250
227
186
231
227
172
247
218
220
162
211
259
256
231
240
148
191
189
237
199
202
237
163
245
187
246
257
180
207
156
230
228
227
214
159
181
237
125
188
209
172
161
215
243
183
259
166
188
193
192
204
192
248
206
124
203
215
199
211
229
151
238
214
206
196
170
226
237
229
233
177
216
169
162
207
203
215
234
136
212
170
147
124
218
185
195
211
186
210
200
245
233
272
242
272
208
204
240
187
187
269
210
244
133
176
203
226
188
194
204
194
264
250
165
219
137
195
240
178
263
213
223
140
302
193
167
184
161
208
228
237
222
194
236
210
168
108
275
240
249
221
195
208
244
188
179
213
199
224
236
201
172
222
133
210
220
186
132
156
203
229
192
284
239
257
209
179
215
231
223
217
175
246
231
216
131
188
278
178
182
198
175
140
264
232
148
238
160
221
145
234
212
219
178
213
135
169
170
204
196
194
249
211
220
166
187
218
134
165
194
165
240
202
146
209
142
171
200
206
178
247
216
225
211
160
168
217
243
129
211
213
230
228
142
172
171
220
157
248
186
233
209
218
251
252
210
186
198
111
215
136
160
241
253
216
205
238
222
211
203
256
213
215
198
211
158
219
171
205
207
204
207
187
206
169
158
171
214
138
224
231
211
154
184
184
218
178
223
239
200
209
181
204
210
195
233
219
172
232
154
157
180
183
241
216
226
172
207
185
238
211
246
148
219
186
193
258
194
232
220
122
203
173
162
260
230
219
172
185
241
215
189
207
210
133
206
198
137
175
211
212
184
223
201
176
203
224
206
237
177
273
200
183
215
250
245
193
235
205
208
168
120
119
186
267
247
171
238
221
207
149
194
182
243
182
222
202
190
198
177
212
198
190
249
221
167
204
188
181
215
220
206
184
180
242
191
206
106
183
164
222
205
211
216
229
178
268
171
180
204
207
246
155
227
207
210
154
173
213
235
224
158
194
199
233
195
146
260
227
222
136
217
179
160
161
180
183
212
201
220
227
196
154
175
193
198
216
193
179
153
232
203
164
160
272
253
215
226
240
152
184
181
217
207
225
147
131
254
194
183
242
194
224
211
176
264
152
179
218
259
235
240
190
212
175
205
202
215
185
192
215
232
241
264
194
175
181
184
174
197
152
216
220
192
169
257
164
194
214
212
164
190
180
218
194
216
156
160
277
196
165
197
197
179
211
211
208
199
214
197
152
206
193
211
214
204
243
160
253
203
213
158
184
214
245
153
162
199
206
217
163
223
211
186
237
201
218
176
242
164
185
133
207
239
190
152
196
203
204
155
216
243
224
161
192
229
173
186
152
169
220
234
220
215
207
190
242
204
182
164
249
165
202
182
162
151
215
181
175
160
218
257
172
205
173
237
180
194
207
171
163
174
137
169
237
222
170
240
244
129
267
213
205
182
235
165
202
153
210
144
238
229
181
218
227
203
197
175
179
227
157
205
204
210
220
214
209
183
142
206
232
260
179
196
194
227
215
209
200
197
152
197
225
215
226
139
221
229
180
203
252
128
227
192
208
170
244
199
165
194
264
212
192
174
201
138
149
198
162
193
245
219
225
282
171
190
224
217
233
235
192
138
177
225
210
214
258
222
173
211
196
234
203
226
230
244
166
160
208
221
186
200
197
246
229
186
266
281
188
186
252
193
208
250
158
220
203
227
195
186
198
233
199
261
239
158
206
160
179
155
162
187
164
226
217
211
240
116
189
164
167
257
201
111
221
169
105
220
249
196
179
189
128
145
201
209
222
215
236
246
202
235
175
205
156
208
172
156
171
181
202
231
171
157
283
241
220
142
175
203
248
210
225
251
216
224
208
197
185
143
165
212
172
248
204
148
269
120
154
231
206
210
238
209
207
192
190
218
199
179
238
219
161
226
242
199
238
173
222
226
208
195
220
224
165
173
155
187
167
238
217
211
195
182
235
190
169
266
237
215
168
136
242
203
187
234
202
149
226
265
181
266
201
181
171
151
146
204
192
192
200
226
241
195
228
201
185
231
225
213
211
225
176
148
194
206
190
187
178
217
239
179
123
196
154
115
187
182
210
238
207
222
214
196
161
246
190
208
262
212
196
176
265
180
187
246
207
211
211
193
231
160
163
253
158
212
171
222
202
168
237
176
188
158
246
222
155
206
237
236
134
114
218
189
223
209
206
144
271
221
252
194
125
155
176
232
190
184
259
215
237
162
202
145
210
220
214
195
200
240
149
235
204
167
176
214
189
216
256
188
221
201
215
185
209
190
224
185
215
243
244
199
194
210
237
205
157
233
205
249
202
237
190
200
186
222
225
125
169
234
222
222
261
230
237
221
210
205
230
126
227
234
221
226
201
213
119
149
246
193
166
188
206
220
224
214
171
219
152
285
239
226
190
142
218
205
194
217
244
231
196
171
218
163
199
172
85
220
139
198
144
258
228
180
118
179
161
218
163
264
166
219
306
138
196
192
176
234
205
224
214
183
147
241
253
224
223
233
159
134
235
159
181
183
238
196
198
228
210
219
179
160
200
220
175
236
218
150
167
255
211
206
206
224
121
211
262
214
212
218
166
239
192
160
188
177
200
187
291
209
249
219
198
227
235
208
216
230
172
216
215
213
201
116
140
193
132
219
213
175
198
213
204
140
200
227
219
205
256
143
225
190
209
173
188
169
207
201
237
201
186
176
159
208
180
131
185
235
139
184
218
196
201
179
191
227
204
214
217
217
261
225
177
222
185
227
233
189
197
182
202
144
212
176
229
214
239
172
239
263
167
269
224
156
217
192
220
229
137
219
90
239
147
213
215
170
176
202
195
195
157
153
243
169
207
170
210
271
198
209
178
241
267
232
176
196
175
223
230
170
272
182
193
248
137
239
186
221
191
220
227
190
254
187
246
232
250
197
252
173
210
162
264
140
200
210
248
246
225
185
226
179
225
195
226
216
152
205
180
194
169
238
167
218
200
202
200
216
194
258
152
142
166
157
162
239
238
150
163
198
158
172
188
189
162
176
199
206
197
201
263
201
172
177
167
240
175
180
234
228
134
200
214
152
207
217
243
153
265
191
142
190
191
202
188
196
201
233
254
143
217
180
249
179
219
196
263
167
176
180
151
215
222
142
131
196
182
217
247
193
251
183
183
204
239
203
219
172
210
234
183
199
236
211
206
216
249
212
209
167
247
234
221
209
205
269
206
222
216
144
162
173
184
172
249
162
183
205
176
221
224
174
223
194
180
220
184
199
218
228
217
198
226
211
203
124
182
165
177
257
165
245
224
157
179
170
250
197
129
196
250
205
210
219
234
191
171
198
213
159
203
214
214
152
235
181
230
176
222
222
235
260
150
177
230
212
146
215
131
215
181
94
161
135
200
240
207
226
158
148
157
146
243
186
140
246
142
116
205
229
211
199
202
228
183
261
230
104
199
215
181
251
171
199
172
260
142
244
227
191
218
211
213
203
205
153
168
164
207
187
191
217
259
240
183
223
139
183
260
240
167
160
240
214
188
192
175
219
209
219
201
202
143
165
286
141
198
167
197
252
215
189
222
250
184
232
168
175
255
265
234
177
169
192
224
229
233
189
210
226
207
141
231
175
247
237
213
234
196
201
231
259
218
186
210
197
180
177
207
170
172
181
228
218
147
190
214
221
273
181
261
186
201
194
202
147
223
211
146
196
197
227
197
174
222
157
180
202
200
169
201
186
181
117
253
188
141
205
253
224
174
217
188
248
253
112
195
220
251
203
202
197
255
232
157
197
245
238
197
231
212
198
212
215
194
224
155
168
207
141
260
258
169
212
172
143
260
194
197
188
177
204
230
206
198
159
216
175
163
186
203
164
234
195
229
205
207
161
221
137
198
234
288
226
208
129
154
233
205
175
196
272
98
219
213
248
204
192
225
251
186
229
225
209
193
162
137
205
162
210
207
184
154
243
166
172
202
172
186
169
247
197
213
241
238
189
181
166
155
208
201
166
200
269
209
233
181
204
250
194
179
195
287
209
216
157
228
209
168
150
212
171
192
204
246
170
245
224
177
194
178
123
204
256
193
230
171
273
155
215
203
198
198
183
202
189
213
140
229
224
203
241
261
219
250
202
201
243
148
210
149
178
179
212
176
232
184
238
250
200
245
218
189
178
154
215
261
239
229
154
206
238
181
182
157
174
220
153
200
179
121
207
261
190
234
237
231
231
237
199
235
192
229
179
164
215
230
187
203
152
208
182
233
221
203
206
244
168
168
180
142
260
182
181
216
238
167
228
185
223
214
220
286
205
166
164
178
154
227
137
161
117
204
157
207
240
238
199
220
193
168
199
110
281
179
194
222
230
225
210
169
233
141
160
215
225
133
249
236
212
185
223
229
266
218
249
165
234
226
247
223
185
182
155
201
211
188
237
252
189
187
230
215
201
217
113
201
230
172
166
229
145
214
212
234
171
228
196
175
138
199
151
211
219
199
215
222
266
204
222
184
160
190
186
230
218
200
209
182
254
235
269
203
180
136
238
150
233
222
238
149
177
209
168
206
203
154
196
165
202
216
242
155
214
164
249
220
194
179
216
169
207
232
226
181
164
175
190
201
201
235
210
229
237
122
192
259
180
186
179
200
257
195
191
203
225
160
189
256
204
251
198
158
222
208
187
198
238
183
223
232
202
189
204
215
225
178
117
118
238
148
236
183
197
210
246
235
196
152
138
243
185
224
192
224
171
160
234
187
194
226
180
239
200
158
197
137
161
193
152
210
198
203
182
202
251
182
166
173
205
230
175
174
181
157
190
188
145
213
155
198
194
216
211
205
198
260
212
175
235
222
204
237
161
193
225
225
225
223
234
197
168
204
186
175
206
260
192
177
199
146
206
130
204
232
220
202
196
142
176
155
198
216
172
242
187
159
201
144
186
204
285
213
193
176
213
165
206
202
247
214
239
211
217
183
150
212
167
217
170
226
120
169
225
141
172
176
184
152
194
226
170
194
144
246
208
161
208
173
181
185
191
210
170
186
219
210
214
218
256
143
231
192
160
244
233
212
227
188
97
169
151
132
168
171
222
199
240
190
223
182
175
197
179
209
154
245
168
221
184
190
141
256
234
198
249
198
208
206
250
143
150
229
201
174
244
145
234
149
198
213
237
223
209
238
194
192
133
152
170
238
204
227
204
168
183
261
211
208
199
207
189
154
217
208
212
208
154
244
208
137
235
228
210
209
199
254
212
227
195
189
227
192
207
241
145
265
212
233
208
278
240
155
218
222
240
205
214
231
190
162
180
244
120
166
236
182
183
211
208
252
185
173
207
215
139
223
180
231
154
195
210
176
132
224
160
230
165
161
166
185
223
125
193
225
164
154
209
218
218
196
188
189
245
147
221
231
186
190
177
197
163
264
170
258
162
139
194
212
167
223
251
171
185
166
171
212
185
171
214
124
199
207
140
186
207
129
277
186
243
251
193
260
171
210
149
202
240
218
148
228
190
264
147
176
234
182
228
216
160
196
163
217
149
180
164
175
186
225
208
193
252
188
215
227
222
202
189
245
196
171
224
212
167
175
223
178
183
201
147
236
177
130
208
273
209
187
207
157
218
255
182
203
253
189
201
204
210
189
232
217
240
243
241
215
215
240
226
142
190
161
236
211
201
140
198
238
197
213
189
278
226
204
249
260
190
186
215
246
217
209
165
219
234
260
208
171
209
188
177
223
294
234
204
229
237
181
245
244
217
136
224
191
197
138
150
246
228
214
211
231
297
190
222
229
192
141
144
236
189
171
176
174
240
209
155
155
221
206
145
179
219
195
148
191
185
198
236
223
220
204
244
216
201
187
193
174
246
172
207
167
241
240
159
211
154
168
206
229
223
225
236
199
190
143
228
261
197
194
173
261
157
204
270
230
174
169
197
201
250
199
154
218
204
170
228
216
151
249
218
247
130
211
194
182
282
201
187
219
251
175
194
145
216
212
241
160
181
127
225
223
197
172
242
195
218
219
220
262
161
207
169
200
178
165
190
170
247
225
194
177
214
197
221
177
237
260
205
216
169
164
249
176
140
154
176
202
152
182
211
217
197
226
196
248
208
174
180
223
213
251
243
219
169
233
186
155
172
211
220
190
186
224
140
185
185
249
256
230
108
172
182
221
188
197
166
256
228
190
201
241
147
219
148
183
193
167
241
236
169
179
233
163
174
173
193
237
167
186
153
159
181
236
156
229
222
233
203
301
213
217
143
179
156
172
221
198
243
227
240
160
238
182
228
206
227
136
185
183
205
191
240
223
219
185
92
230
172
240
196
193
182
201
203
217
234
149
249
239
229
217
233
163
125
252
203
173
209
216
222
234
217
179
171
187
192
193
272
187
187
254
196
162
208
242
131
268
222
194
188
197
204
233
211
203
199
189
219
210
179
207
143
169
248
228
264
223
246
124
220
204
237
216
147
149
140
222
167
108
251
158
252
192
188
166
202
188
177
200
229
162
179
145
168
234
208
203
256
139
229
183
216
201
211
217
145
267
187
191
153
220
226
257
183
161
262
134
204
182
86
221
223
267
174
243
191
219
196
203
219
264
174
177
150
179
209
182
257
209
224
219
210
181
232
193
276
178
231
207
222
242
205
202
169
205
172
214
161
218
154
186
171
229
232
232
224
204
253
162
173
190
150
199
219
206
179
191
177
163
204
173
163
214
160
256
111
230
242
176
157
176
180
266
196
188
227
225
195
160
193
243
182
202
271
209
205
198
191
178
209
122
179
154
260
177
207
242
186
204
170
198
267
244
161
209
232
214
248
173
186
250
182
246
200
166
224
222
203
214
280
169
214
146
158
197
228
224
234
192
227
237
199
154
230
199
163
240
254
208
256
178
174
225
207
136
200
242
200
250
276
222
194
227
204
159
203
199
159
212
184
181
155
146
212
223
154
155
129
152
107
172
180
223
232
189
215
157
180
154
131
220
235
161
206
249
236
221
150
243
231
174
182
250
185
225
239
196
228
188
195
199
176
239
196
205
199
216
167
181
234
180
138
247
252
205
241
166
186
187
138
241
217
198
171
169
230
198
250
112
261
215
187
242
165
213
201
237
199
222
180
165
251
182
211
219
217
231
187
257
193
202
221
197
152
244
172
227
163
207
247
197
234
185
208
209
166
166
242
160
218
194
202
243
263
161
254
162
205
174
176
232
183
138
246
233
255
179
184
203
150
181
214
242
145
155
193
148
228
188
231
128
192
137
204
132
199
232
194
199
176
226
227
206
143
247
234
231
138
197
244
205
156
202
189
131
201
267
176
239
262
174
222
260
248
238
191
219
249
224
221
173
204
226
208
239
191
236
164
197
218
212
144
198
170
143
258
211
182
238
199
202
179
202
182
254
173
239
260
202
255
246
234
230
212
210
197
212
217
96
230
206
196
177
212
232
202
200
214
214
184
135
194
207
261
175
202
190
104
193
202
170
170
159
187
194
213
232
182
131
167
147
150
201
218
233
175
128
165
135
248
173
249
229
197
223
268
148
220
201
221
226
246
261
249
160
168
258
222
208
210
180
193
230
180
212
211
222
243
222
207
166
235
249
194
238
168
222
198
232
150
186
253
174
230
215
156
240
190
178
208
255
147
245
200
239
185
237
177
206
212
176
260
233
207
180
218
195
196
172
172
196
136
233
234
218
186
198
231
184
260
173
185
239
191
266
226
187
266
217
137
189
185
215
250
220
183
189
152
174
211
221
213
189
179
254
206
236
186
192
158
174
148
244
219
203
191
235
191
149
252
189
226
174
153
209
257
159
178
181
170
163
224
230
205
168
237
224
215
168
259
195
190
194
235
170
208
206
207
230
230
272
173
243
232
202
158
234
256
264
243
197
248
188
222
218
213
205
181
119
188
190
199
231
221
192
157
240
156
233
243
178
213
230
239
235
162
213
250
175
235
224
208
224
194
212
195
209
191
224
227
190
263
195
151
233
238
240
203
258
205
143
171
246
184
219
177
192
233
208
191
222
185
230
207
165
182
206
168
187
226
198
224
215
247
155
164
167
199
179
140
186
174
200
192
193
175
206
232
125
263
189
261
206
225
227
149
184
164
186
250
185
310
248
189
193
171
151
150
234
276
157
259
199
139
259
220
132
249
187
183
137
221
209
154
202
206
249
260
197
277
231
164
248
217
95
174
177
210
233
178
189
195
170
208
224
251
241
169
217
166
214
162
207
235
213
155
142
209
218
221
210
204
203
223
185
151
125
235
180
133
190
187
232
205
163
130
198
235
193
209
195
196
224
232
213
198
160
200
179
263
223
248
241
231
119
218
204
145
146
204
257
174
190
252
205
227
230
197
123
193
235
221
253
246
208
211
135
197
240
201
186
250
199
207
168
152
207
235
235
218
229
193
150
235
161
198
259
217
207
188
253
199
283
245
222
235
184
159
216
157
210
248
187
227
185
237
206
177
165
222
139
234
212
163
226
212
167
142
202
152
205
191
172
198
192
206
273
204
234
131
185
196
182
169
199
214
174
155
160
166
221
280
226
183
244
122
195
190
202
233
208
166
286
194
211
139
247
186
205
142
196
190
193
243
192
210
196
197
215
230
243
151
184
229
223
215
215
229
228
180
140
163
184
242
216
153
245
183
225
195
102
210
226
128
117
198
226
154
147
277
260
170
200
230
210
191
188
190
148
208
212
213
242
191
229
214
210
290
233
237
213
152
205
194
160
190
199
109
195
154
131
192
224
149
202
182
173
202
213
254
229
147
219
223
238
289
269
237
232
203
301
211
267
204
155
248
233
173
202
190
162
201
209
197
217
230
220
237
189
108
198
256
165
153
158
246
269
222
165
201
191
213
199
120
229
221
232
214
223
189
264
193
141
195
143
195
224
221
213
184
220
265
216
201
197
279
148
159
162
206
203
191
222
200
250
226
215
222
218
241
220
161
164
192
204
205
149
171
201
198
216
189
183
118
239
200
237
168
190
269
253
187
199
215
169
132
122
211
171
190
148
223
241
177
190
209
189
235
176
204
222
215
184
191
219
240
157
232
150
115
185
220
212
175
199
197
190
191
241
196
255
243
142
279
232
233
228
158
159
178
259
215
185
234
152
234
169
232
174
219
242
177
202
244
193
151
274
220
229
222
217
172
190
176
212
229
170
206
221
249
241
168
180
198
181
156
200
163
198
252
184
198
243
184
150
186
143
226
203
199
186
264
160
192
240
150
195
262
185
203
207
190
183
195
221
283
229
188
153
166
216
205
174
239
196
159
210
183
209
220
208
183
157
216
163
139
246
199
261
188
202
256
174
188
243
199
201
200
206
211
165
208
218
176
158
222
258
187
286
143
124
221
233
217
173
164
143
206
156
221
139
200
156
209
187
172
164
249
193
193
199
244
200
211
179
233
250
202
249
135
219
192
213
109
132
202
214
180
227
159
197
183
199
186
203
199
191
195
209
195
252
227
218
205
202
150
258
183
242
184
139
206
202
233
180
139
159
181
195
207
186
187
192
171
190
213
189
170
223
151
207
212
262
167
189
244
256
216
264
236
190
249
221
146
241
266
187
242
199
167
160
225
184
217
209
199
187
169
170
161
189
170
169
203
185
221
191
210
199
212
206
175
183
124
237
207
216
141
253
211
222
195
109
173
171
234
211
193
162
172
255
194
131
231
222
244
187
244
153
194
193
195
198
186
174
167
205
212
199
196
231
210
188
169
211
235
241
147
158
270
169
210
194
187
165
238
204
192
199
239
223
230
131
210
201
229
226
229
150
213
176
207
205
228
216
216
232
230
204
178
232
195
154
203
239
208
193
239
212
116
212
149
188
145
175
180
227
221
207
209
213
182
168
188
163
138
187
192
228
200
115
208
241
186
208
221
157
245
214
193
198
275
186
208
233
130
195
172
190
233
206
211
180
93
208
166
168
143
254
211
146
191
217
235
118
151
147
238
252
172
131
152
196
140
199
203
160
202
171
203
194
199
203
183
202
214
219
222
224
201
247
208
179
223
164
226
225
258
216
195
195
187
173
129
242
227
216
213
266
138
218
177
222
241
216
239
214
221
217
199
202
218
211
183
177
208
198
207
217
163
248
256
237
163
114
244
231
176
157
260
208
196
207
147
210
169
217
241
180
180
181
183
211
201
232
214
187
193
162
246
165
253
166
223
167
229
176
196
169
228
163
186
229
223
161
134
236
237
189
241
200
180
207
205
184
256
244
175
154
206
184
243
176
161
261
229
163
213
199
180
251
184
129
229
199
216
215
148
239
150
233
255
198
169
197
126
197
249
204
203
204
215
237
253
222
145
223
148
229
196
247
157
153
175
197
219
200
251
225
234
266
236
243
175
222
161
247
215
196
223
189
220
195
189
177
226
179
286
203
208
201
158
185
227
207
142
265
195
197
210
246
257
187
222
214
261
155
163
200
208
220
198
236
198
215
162
203
208
170
247
155
195
180
221
194
192
216
185
170
220
228
264
209
186
170
247
147
165
168
177
225
228
178
171
223
206
182
180
155
138
219
159
194
150
224
230
184
192
228
104
220
184
202
230
273
201
198
205
185
163
256
239
145
205
158
204
138
149
160
229
232
248
257
241
165
218
238
145
265
210
226
222
261
189
203
195
246
268
175
250
193
264
226
224
226
217
226
173
213
178
208
186
225
265
215
213
172
247
177
222
210
178
207
223
206
206
197
216
229
190
208
171
233
169
239
141
185
247
194
204
245
178
248
196
231
209
203
207
239
169
267
206
175
190
221
213
192
187
248
205
181
218
217
161
230
111
195
202
220
178
192
116
141
254
196
114
124
195
206
137
186
139
207
233
122
212
251
204
176
235
203
204
166
107
244
176
195
132
176
124
200
167
170
190
206
226
207
213
193
208
253
197
186
192
206
238
219
186
260
229
226
172
239
227
179
191
232
201
234
204
241
219
215
178
227
194
251
251
162
184
185
183
194
205
154
170
221
153
250
143
225
200
218
237
206
218
231
196
197
180
211
182
241
223
177
158
238
213
185
214
195
198
200
242
191
232
171
214
236
182
183
223
198
163
186
198
169
213
217
187
143
194
217
226
221
216
169
235
200
223
199
228
189
189
171
135
188
292
184
209
220
161
181
210
201
174
261
241
197
122
200
227
164
208
189
154
178
136
256
181
206
234
190
181
212
201
176
210
201
197
164
199
213
133
211
207
200
195
178
164
181
214
158
135
201
218
176
199
223
251
148
243
213
199
155
234
187
252
144
216
167
173
211
184
177
217
225
205
156
196
220
199
198
217
163
155
112
185
271
200
179
191
207
223
209
151
166
284
241
182
240
245
229
166
236
189
222
189
179
159
189
223
243
237
213
244
242
174
113
190
200
160
209
195
205
161
211
187
224
230
184
198
179
215
223
200
190
172
171
182
195
131
192
156
212
133
176
177
255
197
187
199
176
150
208
184
173
169
184
221
227
229
189
158
182
149
171
185
225
204
158
199
171
253
147
259
185
166
174
207
195
238
237
238
182
228
258
147
230
141
140
163
174
195
232
204
128
223
243
176
275
169
205
153
176
185
188
174
226
221
150
209
141
162
198
159
187
214
216
250
189
184
139
183
227
170
190
210
188
226
150
198
259
181
154
223
206
209
237
166
212
209
206
234
224
182
219
240
218
209
192
209
220
218
210
169
180
201
176
192
147
162
155
207
223
158
214
219
185
171
187
92
180
190
220
167
177
255
208
263
177
161
215
198
142
220
227
252
171
207
240
239
180
211
174
201
228
140
270
206
196
185
139
212
263
206
159
243
237
177
156
222
178
198
240
201
216
165
228
154
145
200
164
202
168
238
208
241
167
153
231
225
231
222
195
178
197
186
192
246
195
131
298
204
234
218
155
155
223
253
202
159
209
240
204
152
207
178
245
165
202
176
206
195
241
226
198
185
252
233
206
252
192
176
238
182
165
246
227
229
189
144
133
195
224
187
221
150
159
183
147
204
246
195
231
222
188
172
186
191
193
150
249
232
216
162
165
193
282
194
204
206
236
239
236
180
219
230
198
270
246
170
206
176
239
229
211
211
150
170
249
206
175
186
243
214
205
195
209
183
235
168
185
186
222
184
171
206
249
236
188
162
201
188
185
187
177
155
172
184
183
240
192
213
216
156
162
220
168
289
157
248
171
190
147
240
212
201
250
235
182
177
211
169
222
206
176
240
230
221
152
245
236
231
221
114
165
218
116
251
257
219
185
229
258
245
203
220
183
223
128
234
154
215
197
160
210
206
231
177
187
221
153
198
170
182
205
216
226
183
159
174
190
134
190
176
163
215
185
234
190
195
210
229
182
215
152
150
209
189
172
123
256
225
218
181
200
160
218
228
189
132
233
195
193
178
172
216
159
191
211
217
149
155
255
207
242
237
220
151
196
232
233
167
237
162
187
202
187
248
250
236
240
189
221
238
243
173
187
211
183
217
203
147
253
215
153
167
237
231
184
191
150
186
162
229
127
206
201
210
165
173
225
205
194
212
176
231
202
222
222
210
161
226
179
172
195
215
170
112
199
210
146
198
220
173
130
198
176
220
197
190
246
191
237
267
182
212
234
208
216
186
213
213
208
197
202
222
266
214
222
191
205
257
176
170
210
184
246
181
150
174
195
256
154
259
231
222
207
218
254
147
178
219
203
183
174
169
172
235
159
185
234
198
181
224
151
249
235
203
123
148
202
192
238
217
221
222
105
213
224
201
239
196
212
195
228
182
162
170
200
231
241
234
218
230
194
252
193
181
248
224
250
239
196
186
227
228
209
195
243
243
221
175
189
209
190
143
205
145
187
218
204
182
128
200
182
187
191
227
177
212
188
194
192
263
173
176
180
152
213
165
183
137
223
233
169
189
182
138
219
160
189
167
235
199
238
184
191
180
199
214
200
183
216
196
178
210
154
169
226
178
175
219
133
172
222
210
195
191
185
267
201
167
158
182
173
170
193
133
186
227
144
208
275
212
241
180
253
209
226
195
218
142
194
195
146
176
196
181
214
174
214
218
150
194
169
137
175
214
219
181
207
163
182
260
209
179
187
210
204
250
199
256
214
218
198
219
224
209
201
141
178
237
150
208
233
173
169
189
192
165
165
180
232
181
209
185
120
135
196
158
211
204
234
144
212
160
194
211
180
204
192
184
141
238
207
164
203
195
239
179
177
235
210
243
179
202
223
222
137
237
204
245
228
235
243
211
234
157
170
181
216
164
116
223
184
207
223
149
148
195
214
182
169
152
144
243
207
154
182
231
206
232
260
231
196
211
221
133
172
182
242
227
164
221
118
211
160
224
174
217
167
175
228
200
230
194
230
215
153
181
176
199
243
199
225
182
209
138
198
185
176
209
219
209
201
183
124
227
207
170
177
179
186
147
169
203
230
229
176
207
235
219
227
128
203
143
205
156
178
188
242
195
207
164
222
176
173
254
270
185
166
196
134
242
165
195
192
204
242
189
158
249
216
235
273
243
209
295
185
246
147
122
193
211
253
215
202
200
172
238
154
197
118
231
152
209
235
227
220
185
214
216
172
267
167
233
179
184
206
215
217
196
241
156
242
264
171
234
174
181
157
210
206
186
209
176
228
168
190
232
200
250
163
212
200
213
192
182
203
211
220
133
215
190
265
141
236
282
190
215
209
159
216
142
184
173
221
238
202
177
188
216
212
191
226
194
244
207
209
142
182
164
224
251
199
213
177
178
129
195
219
200
272
199
243
182
221
241
166
145
231
158
147
147
184
158
249
186
131
232
184
171
241
184
183
209
192
179
208
235
151
186
199
190
223
243
182
191
162
182
216
213
229
188
190
146
166
163
216
159
240
193
236
149
194
227
142
215
178
188
243
183
231
258
184
195
134
201
143
201
208
245
228
197
231
193
236
166
156
226
222
228
177
207
187
149
181
244
230
232
256
269
176
186
161
176
214
219
213
188
234
159
161
241
193
152
201
166
227
264
183
231
178
209
177
199
209
200
135
256
198
216
197
233
211
237
218
214
215
215
192
191
187
129
184
186
209
195
199
190
230
234
215
191
139
187
156
191
273
216
221
133
244
172
230
249
173
144
181
185
157
203
163
202
159
270
201
234
170
209
165
204
172
217
177
197
207
208
243
181
233
227
178
142
130
284
245
204
168
195
245
185
235
216
203
178
208
168
215
185
208
219
178
120
180
217
243
264
181
193
192
266
230
220
196
209
222
236
177
136
181
256
169
189
245
194
263
151
198
231
148
170
217
252
216
192
190
165
184
187
211
205
224
236
204
230
231
203
132
151
212
245
179
218
225
166
252
242
159
188
174
282
247
207
257
230
208
209
221
123
155
226
251
206
178
214
179
211
223
242
190
234
158
247
195
213
125
186
184
185
195
245
180
173
168
184
184
187
237
156
220
260
160
212
214
166
154
254
231
189
229
251
272
195
189
234
180
176
182
201
224
236
178
205
178
165
202
171
229
200
204
182
194
192
135
211
159
177
175
181
148
194
161
167
210
207
207
149
180
213
171
199
164
256
149
235
172
222
165
186
218
252
231
166
182
158
148
240
245
178
165
175
196
211
164
181
173
195
184
156
206
212
200
190
204
199
173
232
197
203
269
196
202
160
241
189
208
198
146
223
163
188
236
172
222
260
230
209
143
184
213
232
197
222
189
171
165
186
246
199
184
216
191
145
230
195
224
251
255
192
218
247
233
233
182
233
218
189
120
230
242
196
248
200
229
195
214
207
153
232
129
201
205
247
202
126
205
244
187
194
221
249
179
212
234
249
142
198
194
234
198
199
232
161
206
173
207
158
197
256
177
216
165
211
188
177
160
133
188
257
181
164
214
238
168
216
206
197
291
251
135
222
180
188
184
189
161
238
197
198
148
166
183
184
203
165
170
218
205
202
205
229
225
200
204
206
151
178
206
261
229
191
218
258
202
161
231
158
174
199
234
247
257
287
225
198
175
127
153
130
186
158
182
198
254
177
234
195
199
242
224
187
202
185
141
165
192
155
200
224
220
223
185
188
176
168
169
187
171
210
198
150
152
214
220
210
200
117
142
244
181
272
186
176
175
157
193
203
281
228
169
244
162
233
229
176
232
174
247
176
149
135
149
229
178
165
254
171
158
191
216
169
190
214
159
183
218
206
229
279
175
204
242
213
189
166
142
205
129
245
129
150
195
255
186
265
187
161
254
245
188
160
170
168
238
212
179
237
235
212
243
195
223
223
155
237
204
185
171
205
206
203
199
162
186
199
162
188
194
225
170
177
198
200
186
174
243
244
173
165
195
232
173
197
180
181
232
130
235
173
177
164
196
166
213
179
182
196
152
244
193
157
199
225
194
186
214
239
135
176
137
217
188
190
248
198
181
189
198
218
220
155
215
224
187
212
208
214
188
203
281
165
245
235
185
143
207
203
206
190
221
207
213
168
148
178
199
230
197
247
202
203
182
236
219
208
249
137
194
199
226
206
162
277
183
201
178
208
196
205
168
201
241
196
213
241
183
214
173
167
206
201
155
231
221
177
217
253
246
191
208
209
244
162
205
75
180
180
212
151
251
213
198
186
166
166
175
205
172
184
107
228
206
178
200
170
139
193
159
185
232
171
212
133
191
203
220
234
237
205
221
152
185
231
231
201
170
193
243
150
198
257
183
216
148
167
174
196
195
170
178
207
162
183
236
205
137
132
184
163
143
267
191
202
213
182
227
169
157
231
185
188
268
211
230
158
99
215
224
207
195
245
180
203
235
212
183
234
210
213
176
248
248
173
186
223
229
188
186
220
184
229
183
158
249
212
211
200
236
214
247
189
176
213
213
217
221
231
251
196
193
185
183
171
227
208
211
164
149
239
208
171
171
209
190
235
206
193
196
223
200
176
224
203
251
231
135
194
197
202
209
212
247
192
217
178
201
170
220
226
204
220
215
213
206
227
162
228
204
246
199
170
205
164
246
188
148
264
175
195
198
198
170
225
236
191
205
241
198
186
138
195
211
195
223
206
191
194
191
154
148
152
226
197
188
182
242
171
185
89
167
220
189
176
146
205
193
207
237
184
234
210
284
220
171
244
182
222
168
202
247
230
176
170
180
235
217
190
191
179
240
264
172
154
245
226
215
243
193
223
164
232
192
180
216
206
219
160
140
183
202
174
192
202
209
240
224
248
141
180
228
223
182
228
176
222
185
194
197
231
187
284
193
214
159
243
135
210
177
161
231
178
205
206
131
207
175
168
183
183
147
189
187
195
223
182
211
131
155
139
192
185
224
185
231
217
218
150
196
207
242
189
260
252
168
185
205
197
193
168
140
180
258
193
180
201
283
237
189
216
247
227
198
170
191
149
249
210
178
180
210
160
240
179
201
174
263
224
254
209
240
217
164
211
194
233
216
194
182
193
193
223
197
121
123
165
206
219
188
170
183
229
244
173
246
201
235
206
235
194
192
216
182
170
192
249
166
125
233
137
209
241
237
221
187
185
201
168
175
241
174
228
184
230
176
181
193
220
181
187
186
230
162
234
231
175
258
191
247
196
195
178
201
203
172
193
239
187
188
197
156
199
168
168
191
184
221
182
176
213
213
141
191
161
140
173
182
194
249
219
184
200
185
196
174
213
225
191
193
188
212
162
161
180
201
159
185
175
222
207
184
226
153
245
180
201
230
210
185
152
179
186
195
222
184
210
196
229
200
193
217
235
197
222
224
217
223
221
190
166
194
192
211
128
221
202
243
130
204
182
231
138
178
195
168
163
214
212
233
157
187
198
244
181
226
180
149
228
210
238
182
163
227
219
200
207
169
203
242
221
144
222
197
224
185
145
179
196
234
151
192
235
175
196
158
212
175
204
188
165
175
166
150
175
202
151
190
231
181
234
156
184
174
225
201
182
208
187
253
149
214
246
245
254
195
181
199
180
213
201
244
236
205
173
177
178
228
193
174
228
197
163
224
175
224
159
185
200
246
184
174
199
195
176
191
192
213
200
208
192
197
177
186
203
230
226
236
232
182
197
255
143
133
231
233
235
203
175
244
252
222
185
170
215
239
193
180
212
182
225
204
225
183
180
165
181
210
201
212
219
144
188
209
172
226
153
134
120
218
171
150
198
208
177
206
179
291
196
184
202
266
172
194
199
233
206
178
214
282
166
235
218
203
238
209
257
164
204
162
143
193
209
144
236
260
171
196
182
206
213
262
129
218
212
183
204
218
223
240
190
247
208
179
177
194
158
185
180
214
138
239
190
219
187
206
230
202
184
259
206
232
239
193
235
194
220
198
166
233
191
199
113
210
190
163
182
159
235
140
154
207
207
200
197
166
244
184
206
175
234
222
199
203
198
211
236
286
197
206
137
147
224
266
259
224
165
191
210
228
197
215
214
188
249
188
231
157
224
189
174
146
190
152
133
253
195
187
135
133
161
186
214
149
148
195
234
179
137
191
155
206
205
209
210
244
149
206
216
119
216
193
186
200
207
198
194
241
166
186
201
244
174
137
206
195
252
183
234
219
217
199
235
83
197
201
225
237
199
266
258
200
240
142
219
232
240
204
240
245
195
146
248
221
211
222
176
143
236
188
199
220
196
258
267
212
256
187
169
207
231
193
205
138
201
184
182
138
167
215
215
226
213
216
153
191
244
198
152
194
152
215
174
190
216
238
218
164
206
218
242
152
198
208
189
134
266
137
192
210
188
223
204
190
111
267
171
205
205
179
191
209
206
132
122
223
183
225
188
152
147
216
167
226
189
228
227
211
209
136
188
208
222
142
174
199
226
186
191
157
236
220
189
218
180
204
208
203
221
239
250
304
178
202
221
224
235
220
182
122
203
236
205
205
189
172
253
216
175
177
114
254
161
241
186
200
207
164
258
216
135
205
196
227
195
182
181
243
203
178
186
191
219
207
221
177
188
168
211
197
192
185
159
207
200
174
192
188
202
180
181
170
168
209
197
212
183
193
143
177
219
155
225
228
203
171
164
192
235
217
164
208
213
225
229
140
231
105
158
116
173
222
167
217
182
232
189
262
167
221
211
221
207
163
223
236
242
188
178
230
222
180
222
162
206
138
211
238
132
223
162
163
168
132
242
220
206
234
162
246
239
178
272
199
214
159
206
195
197
186
191
174
193
164
151
206
211
172
145
200
217
195
173
141
160
225
219
172
205
248
229
164
274
186
257
164
183
167
206
230
163
205
247
244
183
268
127
223
219
218
170
173
237
201
178
209
229
224
253
164
164
216
214
165
176
250
194
187
202
146
195
218
171
185
185
175
207
166
137
235
232
130
168
147
182
220
223
195
213
145
163
217
245
165
180
199
273
268
225
160
180
188
177
158
257
272
203
188
212
170
188
154
188
227
231
215
196
235
249
195
202
199
199
217
199
199
204
206
218
259
195
201
229
216
112
199
204
182
161
139
240
203
238
219
196
175
203
246
132
219
214
199
176
194
190
206
195
185
167
191
150
172
154
235
211
200
257
179
292
255
238
247
213
171
175
143
213
227
224
231
218
249
246
215
181
228
200
238
243
152
245
231
124
226
291
188
188
196
197
190
243
239
183
186
178
169
166
206
185
259
229
209
205
193
194
142
127
156
200
179
211
176
192
221
192
157
174
155
212
194
203
202
176
189
195
245
195
188
166
238
210
201
160
200
260
235
112
194
199
261
211
198
209
266
241
193
252
179
276
209
201
183
205
190
199
153
275
195
165
241
164
200
151
206
197
246
158
171
217
162
199
187
179
198
227
180
223
211
215
227
172
236
195
131
184
168
246
169
245
144
200
239
169
243
231
171
225
149
231
210
216
167
220
245
208
197
202
207
216
213
196
171
243
190
228
215
205
157
259
243
211
223
188
165
199
196
195
196
263
253
170
139
188
224
227
209
222
203
150
143
236
184
174
191
158
187
150
226
209
231
225
195
167
187
156
222
192
187
172
230
270
187
231
216
216
141
143
212
194
244
162
181
176
267
126
242
174
233
213
166
207
193
227
200
111
191
163
186
218
230
245
215
201
204
224
238
175
223
196
191
260
190
195
148
176
256
183
205
232
145
234
192
141
212
224
142
149
220
180
210
212
156
138
246
171
153
188
225
180
184
202
152
260
243
171
194
211
238
226
171
212
174
225
210
175
207
210
185
149
258
160
201
243
236
214
243
196
251
188
174
199
266
216
228
222
197
237
109
184
215
152
198
246
170
166
152
115
199
129
176
238
222
181
234
202
195
172
246
147
172
148
231
219
219
228
208
172
253
176
200
135
248
201
229
207
202
167
190
151
190
219
224
260
100
208
191
201
170
196
223
239
234
198
231
225
227
176
153
157
208
190
193
202
157
217
223
229
168
225
141
254
195
187
204
227
246
214
237
210
199
204
213
217
192
175
252
187
199
165
233
237
196
199
235
221
230
244
202
261
189
189
156
181
199
260
227
221
291
181
180
216
181
251
173
164
214
176
277
208
184
235
194
244
198
150
160
245
229
223
200
189
194
219
137
181
137
175
227
162
190
230
207
230
162
168
204
233
194
161
177
229
179
174
230
175
228
234
212
233
222
193
223
167
140
154
212
120
157
156
198
184
185
200
256
164
176
161
248
197
211
150
155
184
173
199
232
180
171
207
173
228
210
258
215
164
203
144
240
238
211
239
224
227
243
233
228
206
246
245
188
173
170
259
252
223
207
220
204
161
219
126
167
177
237
182
244
209
246
177
151
194
214
206
238
220
226
130
211
206
205
200
170
179
174
176
218
181
139
193
202
175
208
191
199
213
187
163
195
233
150
167
188
236
177
122
253
216
182
241
202
192
166
214
229
204
129
195
185
200
235
203
197
232
191
171
240
223
190
206
163
222
166
166
121
192
277
152
122
142
202
224
219
233
230
194
212
211
196
201
184
163
230
192
188
245
151
205
221
188
173
215
186
214
218
238
249
215
207
225
184
144
186
243
212
194
200
249
235
177
221
217
140
271
153
172
248
210
186
206
164
165
158
233
257
168
200
249
163
185
181
221
190
169
252
212
223
203
163
252
221
176
141
165
261
190
185
200
169
146
234
261
218
214
194
166
256
216
163
198
219
187
165
220
256
274
171
158
184
207
153
213
218
201
268
201
228
184
191
202
218
225
212
188
187
185
162
235
216
178
181
157
203
227
217
211
171
134
212
148
229
217
166
136
229
211
140
189
181
233
160
197
120
132
212
201
214
185
174
166
239
216
216
178
203
244
231
196
243
248
170
143
207
201
216
188
219
204
168
239
260
159
163
205
245
176
233
173
149
176
221
176
239
234
206
145
206
194
174
158
243
210
197
169
220
201
189
165
176
224
239
208
225
212
192
216
178
216
185
123
165
228
201
224
202
203
195
210
227
224
208
214
216
248
249
222
231
234
200
235
199
237
227
216
162
197
197
190
231
222
183
211
114
214
219
182
223
236
166
237
227
198
252
202
219
195
116
210
212
141
212
230
146
140
251
229
165
264
197
226
205
202
195
200
254
166
175
181
184
234
196
195
139
150
203
184
219
252
207
254
213
199
182
258
176
225
266
249
202
223
207
229
151
224
244
218
183
209
217
182
139
240
208
154
158
209
211
160
217
214
194
206
232
211
155
236
219
219
157
231
201
147
191
166
209
206
203
210
216
280
222
269
234
192
221
242
233
141
216
146
146
113
217
147
196
213
157
190
220
154
198
229
193
205
172
196
161
217
192
166
238
244
212
207
229
221
256
177
130
172
216
177
221
195
195
210
162
214
220
208
215
188
188
235
202
157
199
183
207
193
163
198
148
243
150
201
221
227
170
200
258
164
190
208
222
216
159
160
180
229
205
236
260
222
187
210
177
154
211
168
215
233
228
128
167
268
207
182
186
232
248
147
172
176
178
186
206
168
222
192
234
155
198
154
195
211
174
212
192
222
144
184
175
173
136
220
236
182
214
174
187
234
157
163
206
173
215
217
159
192
226
154
191
228
181
134
178
177
228
260
239
213
176
200
208
178
208
199
172
173
232
291
224
231
170
238
196
246
262
235
174
228
173
166
177
202
197
253
181
223
214
194
199
198
162
180
205
201
168
220
202
152
231
276
225
165
199
210
207
163
262
239
208
232
300
178
219
113
210
156
183
202
234
164
222
231
192
223
183
208
143
234
236
229
235
216
233
202
194
203
166
194
170
213
226
215
167
240
164
200
255
231
191
218
231
203
196
191
243
233
203
216
133
266
207
215
148
220
249
171
228
122
237
223
173
230
159
240
140
191
186
199
171
182
186
259
166
174
252
226
178
179
234
214
235
170
214
155
198
169
229
184
172
213
230
196
161
188
186
254
206
213
132
188
161
193
208
216
232
158
185
192
197
200
197
237
150
224
231
260
230
244
131
160
265
189
203
217
237
192
196
232
211
218
206
180
183
196
207
217
241
235
182
155
197
175
212
187
243
189
185
229
219
207
147
196
220
229
202
202
197
179
211
166
213
238
205
132
187
191
199
161
232
162
255
181
208
245
202
173
156
171
237
247
193
166
192
104
239
185
193
166
216
187
222
178
209
215
209
241
194
231
243
190
216
215
176
222
213
187
117
182
196
280
222
183
223
174
155
198
213
242
162
195
183
209
249
176
192
240
241
208
260
223
207
128
183
180
162
135
268
168
165
190
210
176
239
273
191
155
206
194
168
297
188
194
219
222
238
228
208
175
207
160
227
218
201
165
162
245
235
162
259
201
215
219
151
138
181
149
268
235
202
206
246
134
132
204
225
224
226
169
238
209
226
186
185
246
224
138
240
223
197
207
217
155
190
180
224
188
231
189
184
205
227
145
243
218
189
205
158
128
205
179
170
230
198
193
199
212
206
190
210
232
193
245
218
253
252
201
194
187
205
261
169
191
190
226
209
203
214
231
215
204
222
191
241
225
164
168
162
222
207
222
185
109
230
201
221
248
163
128
200
188
181
199
190
181
155
176
155
191
189
171
231
173
225
181
164
235
231
212
182
164
241
157
186
240
235
198
209
209
205
225
189
148
246
214
252
240
210
224
135
212
212
193
195
157
203
164
162
174
180
185
231
225
237
258
196
147
160
205
157
189
161
125
210
235
153
163
173
221
168
202
184
180
181
182
271
240
194
212
258
207
196
223
184
188
210
198
195
158
152
183
197
248
257
158
226
165
205
229
208
191
185
178
189
196
193
194
200
181
183
200
267
174
220
168
224
201
187
218
138
210
181
176
181
175
205
196
214
143
186
175
220
230
226
221
206
225
214
214
205
213
136
200
191
244
227
232
180
225
167
289
187
178
141
227
163
246
178
166
215
271
224
230
243
181
224
206
181
178
101
236
175
185
234
263
227
210
217
191
148
250
153
244
242
261
182
193
230
185
169
196
206
215
240
185
163
215
217
192
125
162
205
255
162
214
235
177
235
235
188
238
160
236
198
220
213
265
215
236
217
267
158
224
268
260
161
230
235
214
193
215
198
197
205
170
214
210
177
221
195
156
197
149
246
188
214
277
143
206
167
196
176
218
149
202
144
176
201
172
256
186
196
159
157
234
197
239
236
114
206
193
165
222
178
165
150
188
261
222
210
197
196
223
209
175
146
231
218
228
195
211
177
172
238
198
178
247
200
156
208
190
167
151
214
170
259
209
179
232
208
200
199
178
231
186
266
161
230
210
233
237
216
221
264
204
194
184
167
204
160
158
217
237
260
280
193
105
168
224
235
239
244
150
215
188
236
199
212
227
206
178
186
151
260
250
163
201
158
193
192
204
204
197
245
259
167
175
213
256
253
182
166
193
214
266
162
199
242
226
210
271
238
245
253
249
263
247
172
223
209
185
175
221
193
223
179
208
163
247
186
200
241
158
262
194
213
185
194
195
193
118
212
228
185
192
182
210
247
184
233
172
210
267
224
209
224
175
225
230
144
218
208
147
249
218
195
168
150
192
178
199
216
216
178
208
204
216
203
224
200
207
154
205
198
265
150
181
185
204
148
202
187
197
164
209
204
250
158
192
228
204
214
212
189
188
238
182
133
197
140
256
135
202
185
187
204
212
228
268
229
187
214
132
180
198
212
201
205
242
196
198
204
253
251
255
229
194
219
207
231
220
154
136
202
212
191
195
168
221
210
204
200
199
239
228
235
223
215
174
121
226
162
204
204
163
173
229
224
261
196
207
213
158
206
187
241
227
221
186
190
245
236
192
183
246
165
159
163
220
184
183
225
205
199
251
173
234
225
219
208
220
253
213
201
179
197
162
214
153
170
202
230
209
200
168
204
238
157
200
281
206
162
176
163
176
239
253
172
202
160
229
193
212
174
243
208
174
265
201
153
255
212
204
200
238
165
189
183
209
211
229
207
170
241
193
183
198
211
226
191
195
223
228
217
181
181
186
241
159
223
247
189
205
189
242
165
190
135
215
149
172
202
203
181
209
214
183
250
192
231
140
133
188
241
182
139
183
231
199
226
243
212
235
225
255
198
243
174
191
205
178
190
181
253
226
232
172
204
171
217
199
175
139
218
197
155
191
188
236
188
158
213
269
215
228
164
173
207
242
187
213
168
193
177
214
199
244
183
215
162
254
173
202
179
232
192
215
131
231
162
201
211
254
223
259
161
181
243
184
167
205
226
140
185
204
220
198
163
236
225
219
228
223
146
225
164
229
202
224
272
214
218
153
237
183
222
207
188
262
176
174
190
183
206
159
252
184
206
169
253
261
248
175
252
190
195
269
237
260
176
212
234
195
252
153
157
216
162
206
212
242
178
160
192
181
224
183
194
153
187
189
196
175
247
191
186
198
220
230
192
170
255
145
111
190
177
237
213
237
188
255
249
203
228
210
179
230
210
203
170
220
209
227
208
237
211
159
192
213
115
165
195
211
207
173
278
195
220
161
222
243
208
223
200
147
194
246
165
214
219
211
220
198
154
157
255
173
162
217
236
224
205
195
185
188
211
236
196
193
170
147
175
163
205
242
252
203
199
219
204
243
252
160
204
126
210
159
206
212
208
126
207
187
203
281
246
233
113
227
174
228
169
218
213
155
242
188
257
131
145
184
182
215
240
254
179
220
211
231
224
204
205
245
194
181
237
283
148
193
152
124
157
211
181
156
193
198
184
189
210
214
170
231
163
157
160
196
248
115
218
182
210
181
159
184
243
148
216
196
227
225
152
225
193
224
241
189
165
240
129
178
196
182
195
195
200
152
181
225
189
213
238
190
140
254
249
200
240
159
198
185
224
260
213
185
271
262
182
229
192
243
191
198
278
152
206
197
218
229
248
199
257
204
208
166
154
195
142
198
242
234
194
228
229
243
204
242
176
174
239
204
186
215
199
240
158
189
194
227
173
211
218
119
223
141
146
165
210
154
95
244
209
211
264
252
232
194
262
203
188
147
213
222
171
240
258
259
93
190
209
176
241
272
241
179
208
161
154
200
232
177
174
210
226
212
227
202
179
133
226
149
227
162
205
229
215
209
177
187
222
172
232
267
136
297
231
203
216
165
149
234
218
170
240
248
145
162
181
140
198
178
120
219
183
265
228
216
191
241
240
234
140
224
213
239
203
185
255
188
216
232
214
159
173
215
199
139
204
226
230
242
209
147
229
187
213
218
200
154
138
190
142
167
186
241
176
212
216
165
223
194
212
182
217
204
206
215
173
137
205
166
235
218
117
231
206
196
200
204
251
198
196
226
183
197
144
221
186
212
152
192
212
167
153
159
166
208
217
200
200
179
203
210
168
168
193
178
185
205
158
178
112
184
258
173
194
216
242
201
225
221
145
206
195
162
212
159
150
275
216
162
207
172
250
197
234
223
218
222
197
136
206
228
191
241
241
199
135
150
219
184
216
217
180
227
221
214
228
194
149
213
181
215
215
128
156
175
184
158
184
192
179
210
169
222
250
243
174
206
180
171
187
208
158
188
199
197
282
157
192
189
216
227
233
262
246
222
209
155
202
259
242
206
236
164
158
154
205
146
179
146
178
188
211
210
197
220
192
248
210
123
219
151
198
205
250
239
147
222
157
200
214
200
220
168
239
236
247
147
201
220
193
214
161
191
192
234
264
214
164
192
194
189
260
153
218
202
187
205
126
162
209
157
169
263
162
170
202
146
175
165
217
212
223
225
156
211
212
164
156
254
220
196
275
184
200
249
205
219
205
222
191
212
188
146
160
207
214
119
248
182
109
230
302
230
199
207
143
242
220
187
204
140
182
194
167
161
144
202
205
249
165
222
218
180
205
180
194
219
204
206
160
174
196
208
219
217
152
224
164
191
241
206
149
211
143
152
167
196
176
236
246
209
211
133
211
191
203
214
153
196
170
217
234
210
195
218
218
215
197
187
189
191
200
206
157
152
212
200
156
240
187
171
203
230
255
198
218
226
195
208
223
229
233
184
167
203
237
191
157
192
134
239
164
238
239
254
216
213
164
195
201
285
225
192
190
192
182
214
191
238
258
242
166
192
215
192
237
206
156
155
217
220
245
135
181
187
178
196
181
144
184
168
164
192
180
251
224
217
238
157
208
171
150
208
224
189
221
211
235
187
204
166
227
226
215
244
134
152
240
135
176
237
217
232
143
134
223
162
194
202
243
179
169
178
193
232
161
212
235
219
205
225
167
199
189
181
218
192
190
227
238
227
212
210
255
138
212
155
232
185
203
184
224
183
144
234
227
199
214
226
201
238
179
285
147
218
183
273
224
241
209
178
197
194
170
233
157
172
183
229
253
203
194
233
200
166
253
217
172
174
235
244
146
196
229
213
173
206
188
221
190
170
221
161
202
215
208
177
285
182
166
137
214
141
209
217
164
173
193
239
230
237
218
197
179
182
185
169
252
76
183
197
214
228
174
185
170
212
256
264
190
238
238
176
181
139
178
185
193
213
184
187
219
239
248
245
173
242
172
251
167
216
168
177
175
197
216
200
205
195
175
174
198
204
171
181
269
156
177
248
205
191
215
187
163
247
202
152
204
175
121
242
166
225
239
197
184
194
228
199
252
182
179
167
243
241
172
207
205
259
207
257
164
202
190
160
191
157
180
113
227
265
199
201
151
165
213
207
185
239
145
236
216
217
167
216
173
165
235
231
246
195
233
151
238
147
224
213
178
207
231
252
146
197
162
258
182
187
219
232
161
170
193
235
197
192
222
201
213
216
221
220
216
260
233
200
237
183
238
172
186
144
181
270
215
109
226
159
203
172
180
228
171
224
187
184
173
185
271
207
211
228
171
178
199
191
181
211
180
142
171
203
229
230
168
251
123
217
204
141
132
242
171
203
155
214
234
184
234
240
210
217
193
215
195
222
213
213
183
171
214
163
188
219
259
217
219
178
221
237
221
139
263
219
226
240
212
188
186
214
228
198
237
212
196
188
222
182
234
174
234
167
245
210
196
237
181
205
214
219
186
198
190
146
185
204
214
160
211
215
222
243
245
253
184
221
220
145
135
218
148
246
240
207
159
188
223
188
238
230
186
204
219
157
194
142
250
233
186
178
169
163
235
250
197
237
162
125
202
142
191
157
168
252
150
211
235
232
172
227
235
181
203
213
105
233
245
197
235
229
252
219
202
186
241
201
201
212
215
151
164
230
223
179
233
245
159
166
202
207
212
206
244
169
224
235
196
198
178
152
214
208
167
221
220
180
221
144
263
147
235
213
214
121
158
137
177
220
163
254
158
197
201
200
177
231
149
189
216
196
191
235
187
188
215
170
241
193
143
183
139
179
233
240
190
232
151
191
186
172
260
152
200
246
205
249
203
167
170
180
173
189
189
167
220
190
207
243
209
175
186
205
167
234
168
242
190
155
185
235
215
207
174
191
259
137
152
187
144
153
214
201
197
205
221
210
216
217
263
209
245
238
273
182
223
173
191
208
211
203
213
196
224
226
210
162
181
181
167
218
168
210
204
229
175
193
262
200
210
252
230
168
237
199
195
151
119
253
233
180
208
216
188
230
220
254
170
143
276
199
245
173
136
204
211
248
250
189
197
127
164
204
256
195
161
190
170
217
172
260
248
258
209
265
200
219
257
198
166
190
160
257
183
189
188
183
223
212
188
161
207
248
212
174
130
168
144
246
204
251
211
292
247
245
215
155
187
168
215
231
189
200
232
217
273
234
178
218
130
243
255
218
254
154
160
258
174
182
261
225
156
120
145
173
180
222
140
195
174
169
196
167
208
204
175
241
223
192
241
199
233
161
118
226
169
187
222
233
242
212
235
217
226
228
201
187
213
194
231
230
257
205
194
203
222
245
145
215
213
176
218
207
217
152
188
155
201
238
247
188
208
241
273
270
165
101
231
197
199
139
212
286
228
192
180
179
214
213
207
157
249
185
208
218
203
242
228
225
208
169
132
197
108
170
249
182
199
173
225
185
222
201
207
196
259
183
213
221
232
200
246
212
247
193
185
223
170
165
205
227
134
177
142
210
170
218
194
204
206
191
164
189
163
165
196
219
221
155
174
246
158
205
279
174
201
228
189
253
125
182
248
221
190
210
209
221
127
201
217
174
173
248
153
275
187
218
185
248
114
239
190
204
179
191
194
168
188
152
219
209
200
189
213
177
157
228
158
244
103
198
211
251
185
169
131
154
177
167
118
219
224
128
178
204
196
166
179
187
197
207
193
211
181
199
187
167
176
150
254
189
179
210
171
163
207
186
199
186
224
223
198
246
180
155
214
213
214
188
185
205
242
231
144
164
204
225
183
142
229
260
257
231
291
200
175
196
231
186
256
244
186
220
182
252
166
159
198
170
168
186
175
218
210
238
253
197
208
160
207
178
172
270
212
118
162
223
217
271
192
236
268
188
180
205
176
172
200
210
192
228
223
188
168
182
211
231
174
218
129
167
253
228
171
197
198
206
220
265
202
216
248
194
167
194
158
166
234
175
232
190
192
199
236
238
193
176
190
211
195
194
234
241
183
175
174
235
186
239
208
213
234
189
175
145
185
183
217
125
212
247
272
209
222
203
198
200
174
92
209
171
144
219
177
194
228
164
194
214
207
171
203
219
167
204
164
210
191
232
196
185
228
202
235
247
244
176
217
144
197
208
243
113
262
266
122
216
158
187
214
228
144
209
216
200
199
257
183
195
104
182
180
229
216
233
158
145
192
173
171
212
146
173
198
229
184
153
237
216
233
118
223
185
235
281
204
235
248
221
237
143
221
222
238
141
230
142
237
209
184
221
161
205
167
232
216
232
143
263
222
210
215
225
174
155
195
219
126
198
165
233
170
205
224
172
199
212
166
149
138
221
183
226
213
220
228
244
200
262
262
238
166
207
174
209
209
216
233
153
247
165
199
164
191
215
195
169
206
193
237
201
226
204
208
199
212
241
207
234
204
203
177
273
164
175
270
197
212
248
156
206
211
173
244
151
250
273
194
259
151
175
183
191
202
156
237
194
190
243
180
157
222
211
188
199
189
231
155
216
151
152
151
241
215
213
153
256
209
247
219
235
199
254
230
194
237
253
171
265
125
166
156
162
126
176
187
176
174
235
169
241
144
160
230
187
165
192
191
221
202
233
224
178
170
200
108
220
178
217
149
172
210
168
171
196
185
172
236
201
131
164
234
178
141
198
203
218
195
266
170
164
255
205
199
226
197
217
205
211
219
191
177
149
229
167
146
200
202
164
180
198
274
236
210
166
211
242
202
198
230
193
247
183
177
204
205
241
193
240
186
248
204
224
163
225
204
152
153
218
210
205
233
224
151
163
178
146
196
174
220
187
207
227
204
207
226
201
232
169
235
256
240
245
211
234
220
134
179
185
171
203
202
180
182
183
216
174
186
209
228
190
220
192
215
161
225
248
201
204
248
203
199
232
170
164
215
209
225
174
225
243
197
236
164
207
189
259
205
182
217
273
194
247
227
173
95
137
236
207
134
203
162
144
249
194
265
231
196
209
202
229
187
208
159
215
226
170
170
210
215
198
184
217
169
248
193
207
138
150
239
145
208
154
250
140
162
212
139
220
213
173
207
177
130
161
166
242
252
212
197
118
132
248
219
211
248
138
203
181
146
145
220
217
253
245
236
235
206
231
171
226
231
243
230
225
186
203
208
259
211
210
191
214
187
199
188
176
221
228
185
167
165
211
171
200
193
210
166
196
204
206
193
185
166
188
213
186
148
177
198
171
204
223
202
242
234
197
164
189
245
168
203
177
200
276
166
228
225
225
219
208
160
182
286
219
202
150
225
262
240
171
214
202
151
153
147
217
234
279
199
183
255
175
147
194
234
173
194
219
214
167
191
219
208
196
126
169
204
219
206
175
184
264
233
175
226
200
242
187
170
243
176
198
229
195
226
178
194
218
200
234
174
183
144
242
243
164
231
226
143
191
123
139
215
253
265
233
196
216
173
257
233
236
177
184
200
225
227
130
180
244
199
224
198
160
167
193
172
148
181
180
250
218
229
187
192
181
185
267
177
192
186
143
186
203
187
241
197
234
221
145
143
179
160
227
211
196
171
119
152
205
214
141
214
159
196
205
228
266
170
225
172
183
191
232
237
150
237
183
152
161
119
170
243
194
173
198
138
156
231
179
213
166
215
201
155
119
183
155
174
211
160
135
205
202
187
203
180
246
292
218
171
231
194
219
169
210
77
167
212
213
138
230
198
181
216
192
213
234
229
239
191
205
246
239
170
245
203
156
219
203
179
200
225
182
223
151
214
257
223
146
199
248
228
226
170
187
207
270
196
195
202
145
167
200
140
215
188
239
175
127
170
281
152
163
229
175
244
205
173
186
248
207
186
226
222
163
206
177
189
157
234
206
210
170
218
186
123
179
212
234
182
164
189
122
199
123
198
224
205
173
281
241
171
199
140
236
230
217
260
173
221
243
205
202
220
170
222
140
209
180
183
174
202
186
230
203
173
244
169
216
202
250
281
240
177
202
192
252
156
211
183
235
204
229
249
162
172
164
152
202
192
150
192
220
200
206
182
144
231
253
216
131
206
174
248
206
210
149
221
194
189
218
163
211
135
152
193
239
234
293
235
143
243
204
203
243
158
216
239
223
214
216
258
192
208
136
148
200
184
172
167
189
217
248
276
186
216
271
201
196
173
216
236
174
218
119
167
196
238
115
163
216
236
241
193
238
213
214
192
197
247
239
238
242
249
266
208
271
193
203
203
195
139
223
159
181
219
213
224
164
194
195
226
213
215
204
206
196
219
231
127
184
173
184
205
202
267
148
240
157
183
184
236
215
163
216
188
212
220
181
155
181
253
188
252
147
130
259
131
214
205
190
180
241
197
192
148
149
218
173
249
223
199
148
198
211
248
223
237
219
175
210
238
232
184
144
204
237
194
152
226
244
245
184
96
172
189
136
214
174
188
223
265
194
179
200
178
208
154
163
189
182
209
194
245
168
211
151
214
252
165
283
158
205
237
180
148
172
155
193
241
144
221
208
221
153
230
193
153
206
186
158
184
232
172
157
244
221
145
214
204
197
284
215
230
233
219
281
222
218
190
216
164
141
157
253
160
174
243
229
193
237
157
235
182
165
218
163
234
229
221
199
181
219
254
211
197
248
218
191
196
195
254
199
166
252
149
167
133
204
225
263
221
220
245
149
186
242
122
156
158
210
227
167
182
165
209
187
186
234
160
199
202
153
123
161
232
220
210
137
191
203
197
201
309
238
180
199
197
226
203
164
187
211
219
208
208
182
144
206
202
205
187
199
214
228
203
202
189
178
235
241
202
179
158
182
206
192
230
210
234
161
171
187
75
216
179
211
194
215
162
210
227
209
216
178
229
208
193
214
215
181
206
239
206
181
205
235
204
180
225
252
158
189
173
200
159
143
212
173
209
251
150
228
243
175
221
184
186
218
250
189
140
255
224
202
256
212
154
155
227
183
162
135
205
240
278
203
149
212
198
181
193
122
236
220
213
229
229
237
220
221
144
199
280
205
222
147
197
205
172
203
177
137
179
157
140
243
231
127
158
190
216
242
214
215
114
167
170
203
254
211
231
172
230
189
119
209
210
161
151
208
211
255
167
150
170
218
197
196
206
184
158
164
142
165
196
224
209
132
132
252
219
219
190
236
180
198
259
189
181
224
189
143
197
230
175
206
209
220
215
184
150
219
162
210
188
165
198
224
137
191
197
228
234
213
181
264
225
180
197
234
263
208
200
209
152
202
226
149
173
146
203
146
217
208
85
187
134
157
163
203
244
182
185
181
150
149
138
218
195
248
189
234
175
232
168
217
218
202
240
128
186
191
204
182
175
189
259
178
251
227
181
251
198
220
221
236
184
208
216
240
221
270
225
240
239
153
179
202
234
255
212
173
227
215
145
156
159
198
198
176
230
176
152
232
158
232
219
140
291
140
198
208
221
170
241
214
200
209
196
191
232
151
125
236
201
243
225
218
231
238
206
217
213
207
171
212
239
174
184
223
176
265
233
257
179
155
290
214
198
245
237
134
198
191
199
171
232
159
207
245
228
190
190
141
250
212
146
228
247
156
195
236
203
176
195
246
186
156
200
188
227
179
152
231
251
197
165
201
156
236
214
201
273
146
196
226
197
237
247
176
250
210
226
177
192
189
197
217
230
187
167
189
204
193
189
178
220
192
186
166
212
250
255
191
273
196
201
187
199
184
198
186
230
155
145
120
246
224
168
174
262
251
196
209
184
228
219
184
215
266
253
186
166
190
203
187
230
188
190
125
200
207
196
195
238
156
205
94
192
175
294
194
200
156
251
116
197
267
237
183
132
251
170
187
173
219
205
162
150
198
153
182
233
188
178
250
185
221
185
156
191
199
217
232
217
277
189
191
223
174
189
256
271
203
194
206
200
198
164
179
212
201
194
204
207
172
190
225
268
179
238
249
195
189
225
168
171
157
233
266
168
197
204
191
189
176
153
169
144
145
218
275
177
183
193
147
96
191
208
244
176
190
156
206
210
227
185
209
221
206
196
164
180
126
194
270
277
219
245
142
215
197
202
248
192
245
210
149
249
147
162
216
169
209
176
248
213
222
194
171
270
196
189
201
209
216
173
227
195
149
158
206
256
181
226
209
213
186
229
236
185
165
188
213
279
198
257
216
218
236
149
214
252
213
206
192
175
224
181
192
222
165
163
215
160
200
207
242
185
180
256
248
141
170
206
246
172
185
180
169
225
253
199
143
187
184
210
209
173
160
229
192
246
206
163
241
216
174
182
193
171
118
214
209
243
163
126
166
127
218
210
181
131
203
229
198
190
221
177
201
214
227
192
148
259
201
163
189
211
165
157
172
193
210
218
240
163
120
124
145
212
199
148
198
184
181
255
172
172
236
234
180
252
159
194
204
172
207
235
259
207
268
284
220
162
215
200
212
220
215
229
171
197
193
236
239
228
201
202
301
206
200
204
164
201
212
172
205
263
153
188
184
185
145
175
204
167
191
207
198
146
183
123
207
189
199
164
207
170
196
222
211
177
247
229
170
241
114
277
191
179
189
181
173
206
251
207
222
143
179
203
190
163
191
177
194
131
152
174
224
223
204
177
171
272
175
201
255
138
184
150
141
153
162
127
196
179
203
171
191
186
172
153
136
173
207
180
218
217
241
205
228
177
156
188
210
238
164
136
139
170
216
225
201
210
193
191
210
156
246
237
237
150
224
154
223
155
167
200
211
178
204
238
150
245
249
162
183
186
204
193
267
191
203
241
186
210
213
154
134
227
237
229
191
142
229
196
202
218
201
252
240
170
199
198
156
200
156
153
124
200
206
219
156
225
162
234
195
230
229
259
201
234
213
209
163
188
180
215
224
162
204
202
241
220
130
200
233
196
257
207
242
191
229
151
265
197
285
180
188
130
197
185
141
161
176
208
193
219
199
246
246
107
198
134
205
218
172
167
170
263
203
242
229
197
195
213
209
195
142
215
181
223
226
249
225
248
188
182
175
204
214
147
248
256
232
183
196
216
247
192
157
185
217
227
248
227
248
178
216
161
261
135
146
174
188
214
227
228
202
180
269
210
194
190
251
242
225
196
186
171
173
147
239
194
231
213
244
174
157
194
181
173
181
266
177
195
150
215
246
190
180
240
234
232
250
257
153
213
187
265
208
227
263
198
170
195
121
177
216
206
200
223
204
231
242
183
189
177
135
173
204
188
187
189
197
224
201
187
221
196
162
196
218
172
224
180
177
166
228
140
209
202
191
138
201
173
217
176
195
195
196
195
205
217
182
196
222
208
192
236
260
227
242
189
274
177
188
245
198
159
226
222
197
179
185
253
225
165
209
182
196
175
147
164
111
220
214
231
227
183
161
203
212
198
235
204
216
250
216
223
188
201
205
192
154
198
236
228
185
154
171
199
240
212
207
221
200
200
180
167
238
157
261
202
198
168
245
241
182
207
181
175
228
206
266
193
200
257
182
242
197
233
206
176
219
200
224
221
138
170
150
154
151
188
199
194
158
204
228
193
171
244
201
224
204
204
198
231
206
197
194
174
168
228
237
207
247
230
227
230
223
224
206
206
200
136
219
144
210
155
218
238
225
209
225
200
234
224
204
180
208
225
171
239
266
191
152
190
190
218
206
172
220
182
160
205
211
157
220
202
266
223
157
244
155
198
204
214
217
180
130
187
203
226
157
212
239
199
218
208
196
175
219
236
210
244
201
227
132
239
217
231
255
210
176
166
200
270
230
198
158
189
186
209
222
240
220
181
130
226
210
211
216
223
216
183
128
244
180
246
159
152
185
247
181
220
112
168
241
183
260
241
190
188
180
229
217
214
258
210
209
213
176
137
202
194
197
235
137
238
220
183
203
167
204
176
239
238
189
213
187
159
179
183
207
179
250
196
204
195
135
217
123
188
205
248
221
190
222
259
295
182
231
179
115
179
190
206
228
163
155
255
157
205
161
223
267
191
212
155
190
229
233
161
271
267
210
140
197
210
206
156
236
244
225
218
221
214
254
229
223
123
187
203
259
167
184
197
149
211
250
192
219
217
209
174
164
219
263
301
194
255
185
224
199
193
175
239
194
211
171
238
184
235
192
184
189
175
225
163
184
187
180
140
210
160
201
238
222
233
141
194
207
186
191
190
153
236
248
192
222
161
216
240
267
203
217
153
232
216
168
186
159
208
162
221
199
226
271
207
254
260
182
272
197
217
223
164
226
236
200
211
151
200
158
212
223
145
214
245
224
213
207
220
218
129
213
232
194
131
186
247
204
242
205
164
124
180
200
196
185
203
193
246
166
230
180
146
182
218
192
153
229
204
200
159
200
219
204
169
195
214
163
180
184
154
220
150
233
181
236
209
184
181
180
199
251
197
198
181
199
192
202
192
203
164
206
179
213
182
257
197
158
177
276
213
193
196
116
195
199
162
175
164
164
239
174
239
197
224
176
208
169
254
169
198
215
161
196
228
166
141
221
176
201
223
259
176
217
210
182
182
120
243
242
141
189
213
198
200
196
234
108
177
231
226
202
181
236
164
171
174
274
185
236
194
152
237
156
232
211
250
237
210
222
164
196
166
230
203
206
248
272
223
172
210
220
279
184
223
170
195
200
174
202
164
233
172
108
235
153
240
204
182
190
197
179
231
212
196
239
258
270
219
218
200
216
249
156
225
172
174
192
193
166
165
195
180
198
163
220
205
216
199
194
187
127
210
172
181
229
186
214
148
219
263
185
197
240
227
231
249
207
181
277
147
209
138
248
225
224
167
214
231
196
187
229
208
246
187
190
229
128
197
207
177
218
184
197
186
198
182
244
198
210
222
227
186
221
229
240
178
230
212
161
182
219
186
170
175
163
252
168
221
183
215
211
153
205
212
210
182
259
204
182
270
171
190
147
235
215
140
156
247
203
183
187
206
243
176
176
273
129
178
193
227
198
166
230
232
175
168
159
171
156
206
154
240
260
157
209
193
220
160
224
185
189
247
192
216
254
203
190
226
188
206
234
111
189
215
174
164
161
190
160
161
187
286
165
168
181
215
231
207
226
242
197
198
172
233
239
205
153
178
230
253
173
219
227
230
218
151
220
179
183
197
204
174
179
219
179
165
171
183
210
165
173
244
245
208
177
186
194
201
238
224
184
172
271
149
164
134
240
264
255
202
143
220
203
207
210
229
203
213
210
158
165
196
240
182
208
201
230
209
205
168
189
242
157
260
233
233
246
210
143
256
139
225
131
270
255
238
195
226
202
237
176
197
155
162
185
225
205
224
166
217
238
210
203
252
166
244
196
249
199
230
170
94
229
187
191
248
219
151
229
148
181
218
217
167
198
268
234
245
221
244
187
246
187
234
243
218
226
133
201
245
222
198
221
148
199
231
164
309
170
208
206
198
240
213
209
261
152
144
192
166
172
182
194
192
222
235
205
230
209
181
155
240
211
205
233
180
210
204
156
246
165
127
178
200
289
192
193
197
209
196
233
240
239
177
167
154
198
199
245
141
148
203
244
192
167
199
256
209
227
239
216
242
184
186
203
169
169
197
193
141
207
192
260
261
161
205
220
177
195
163
177
196
219
136
190
196
174
245
151
209
194
185
221
152
181
213
225
194
97
237
213
208
148
252
203
253
182
195
217
162
193
140
210
179
150
252
174
187
153
245
222
198
211
168
213
189
125
212
271
248
250
215
241
142
137
239
198
196
193
173
174
193
160
213
245
255
236
205
244
220
171
190
220
161
190
167
205
170
133
234
242
191
238
202
263
165
206
185
153
230
166
188
194
182
158
167
161
189
227
202
212
188
127
251
225
176
237
195
217
193
181
128
187
227
237
212
152
281
236
194
250
269
186
254
207
148
220
224
224
266
229
249
198
205
198
90
191
219
226
188
223
207
182
121
134
241
162
226
261
159
191
161
216
233
240
152
235
197
245
144
147
226
189
190
169
256
181
158
210
182
220
172
232
180
229
254
261
174
189
252
181
157
193
222
112
151
185
162
229
261
226
210
267
228
165
223
207
194
272
155
197
216
189
211
161
198
205
209
235
168
218
206
222
194
225
174
244
167
228
127
197
119
225
248
218
209
216
163
139
224
240
218
158
162
184
186
200
236
197
208
185
194
230
184
159
144
214
237
245
215
154
169
221
161
209
236
229
205
196
230
176
199
205
189
250
170
229
258
175
175
195
196
168
233
223
190
210
272
248
222
202
141
219
220
214
180
250
193
180
152
85
227
285
173
157
230
235
210
213
199
252
183
146
175
199
186
206
186
143
195
181
233
153
201
237
255
228
200
201
193
196
194
248
190
217
248
181
184
196
217
168
194
178
185
137
215
222
194
236
162
239
246
282
216
200
236
233
170
219
226
189
236
262
189
224
172
211
241
196
166
190
172
225
222
200
228
207
251
226
216
157
176
190
152
240
238
198
215
222
191
191
187
254
213
180
219
204
211
219
125
225
180
235
186
166
103
200
195
178
225
202
231
184
254
231
202
225
225
161
258
230
222
216
230
152
256
149
244
200
162
177
184
232
144
174
228
215
163
222
191
205
188
170
210
217
234
263
262
155
204
245
259
199
210
197
201
259
162
210
207
231
202
149
197
243
232
192
246
234
207
211
258
184
151
162
199
213
195
138
243
172
192
243
138
237
214
207
235
182
175
172
251
225
192
270
133
178
209
261
193
252
258
158
171
203
148
225
209
268
262
120
209
209
226
147
221
248
196
232
197
202
218
140
227
134
202
150
181
227
192
171
193
218
213
217
184
187
174
166
206
227
232
217
235
231
228
216
203
153
183
227
212
216
218
234
315
217
231
253
157
184
206
235
200
195
181
173
195
210
172
206
173
188
182
176
140
210
220
242
186
219
193
218
192
222
236
236
206
152
161
133
214
148
210
194
194
169
209
171
193
194
209
196
201
182
208
122
194
228
123
200
193
199
188
174
171
216
206
226
196
192
231
227
204
213
179
179
202
175
171
193
226
209
194
188
183
184
207
235
242
115
268
250
235
218
229
222
194
189
174
160
170
223
212
202
216
191
153
186
231
131
163
242
151
272
205
181
188
123
195
248
175
224
189
227
152
228
229
192
255
185
243
182
195
223
187
227
259
175
183
207
174
219
171
141
186
165
123
185
190
131
217
213
162
203
200
162
173
185
266
236
160
129
221
191
253
229
202
237
199
197
174
245
231
204
222
230
171
205
172
225
172
244
142
180
161
187
160
152
224
212
194
192
155
221
167
135
162
187
227
173
270
197
229
197
155
171
207
232
204
250
209
209
200
195
197
156
160
203
297
168
216
254
216
234
223
165
213
194
206
191
205
159
204
210
174
192
213
189
277
209
249
162
218
183
234
203
191
215
226
218
217
174
207
232
273
150
256
157
240
148
238
157
151
202
203
218
241
244
218
187
180
213
205
156
203
201
160
253
186
164
235
139
301
241
146
236
210
155
190
248
192
242
194
175
193
141
179
191
209
188
215
221
229
199
197
232
239
168
214
213
238
150
180
185
186
213
206
214
212
153
192
161
158
211
198
188
152
221
186
157
221
200
223
146
173
220
241
176
196
166
266
218
174
244
146
286
248
139
173
226
196
228
197
197
153
186
114
146
158
170
193
226
239
262
210
238
215
236
189
257
155
202
126
206
196
237
134
163
209
149
238
175
163
214
222
196
191
208
234
268
173
222
214
276
206
195
239
164
167
139
187
205
210
261
168
145
224
171
204
252
228
126
185
175
202
148
219
229
143
126
173
173
199
235
207
157
204
173
186
181
249
214
166
236
226
211
210
100
163
162
178
166
230
193
215
140
194
175
198
207
240
161
183
199
204
227
218
207
153
172
230
183
184
138
197
209
236
196
218
169
187
166
175
208
196
203
207
230
211
232
152
159
266
180
176
183
220
238
85
243
128
241
218
208
197
182
190
247
198
160
195
196
183
179
202
209
208
214
161
152
149
156
226
212
143
216
202
154
174
144
253
174
227
255
204
185
205
137
161
169
170
175
235
206
193
199
245
238
167
198
212
210
173
147
243
229
217
233
170
185
203
247
167
217
208
191
310
243
224
230
199
255
189
175
217
192
258
189
206
182
167
169
193
158
264
220
230
199
176
237
242
223
226
213
205
224
139
221
214
173
152
214
166
122
204
109
213
177
244
144
229
213
263
148
173
161
225
166
226
184
272
184
203
259
142
198
135
193
193
236
236
257
239
253
147
184
171
208
198
228
208
209
232
189
226
228
176
153
175
204
178
201
228
256
268
222
136
178
197
184
179
191
149
253
158
176
247
240
209
198
190
188
195
180
254
235
149
134
214
242
161
219
180
214
226
212
200
215
195
204
186
208
147
234
182
192
187
206
165
185
144
151
196
167
205
199
195
175
254
231
165
230
234
234
190
162
197
186
200
174
212
190
203
220
184
230
190
199
241
229
196
169
231
226
241
190
195
125
162
147
185
168
183
206
223
207
127
155
228
200
232
193
208
231
204
199
236
204
212
197
181
173
204
240
206
218
176
208
160
254
131
246
253
218
186
198
249
153
209
230
233
189
172
189
217
186
234
237
199
246
201
177
190
129
156
195
190
197
156
219
132
131
237
186
212
268
209
236
281
151
246
169
117
226
268
192
248
168
174
167
208
224
224
214
214
195
250
218
168
233
185
215
209
193
199
198
171
210
162
161
213
175
207
195
217
182
165
192
215
221
225
197
230
224
178
226
208
235
183
214
218
159
237
194
127
218
179
192
199
211
227
211
193
191
175
223
199
269
213
136
199
201
206
220
169
165
190
228
213
171
204
220
171
166
101
199
189
225
230
185
204
180
169
206
140
269
224
232
156
164
203
186
179
231
180
250
191
210
217
181
208
244
209
234
176
233
206
185
209
162
157
205
142
156
183
176
131
219
163
203
228
189
232
214
246
193
158
182
211
195
187
235
206
186
221
190
260
185
182
262
151
234
201
201
133
170
189
150
206
224
215
167
236
209
183
214
248
146
178
121
174
247
177
173
254
209
181
189
181
198
209
185
187
187
167
142
189
218
193
252
185
234
231
197
172
221
221
204
268
184
176
218
212
263
165
203
214
214
221
175
218
209
230
178
204
229
245
136
198
187
200
201
208
227
190
213
189
220
250
208
191
182
255
198
125
206
220
190
205
144
227
240
234
203
201
187
201
187
254
234
147
122
236
186
191
222
225
246
207
183
167
235
174
191
234
259
136
216
202
188
194
222
202
161
233
238
219
205
128
156
147
223
194
177
165
172
189
222
217
185
181
209
162
216
182
231
163
193
204
189
273
152
160
185
204
145
156
213
137
180
237
233
137
247
202
178
174
180
145
194
215
142
214
154
170
195
210
173
172
219
206
156
247
150
198
200
213
172
240
201
222
156
243
213
194
237
231
216
206
167
207
140
202
214
184
181
206
237
236
194
238
234
257
215
182
223
171
177
156
263
187
158
222
145
219
192
176
189
146
201
159
128
135
233
180
238
195
207
178
196
208
219
235
175
254
208
240
197
162
208
172
251
226
199
131
247
218
140
219
196
164
155
235
143
150
185
176
163
178
188
245
221
186
237
184
214
240
178
233
261
236
244
205
171
156
158
167
226
268
206
197
139
219
235
206
158
221
187
202
166
236
257
171
198
232
237
223
203
259
272
210
240
209
171
209
253
196
171
182
188
234
250
201
217
255
220
200
215
178
220
187
212
211
222
225
209
130
210
141
119
212
212
257
171
140
175
217
190
206
179
174
242
226
260
215
225
252
187
218
241
244
234
230
198
210
107
232
206
197
196
152
236
205
230
277
225
153
257
239
182
191
232
165
199
190
179
203
187
274
183
240
240
173
182
192
227
184
200
192
182
166
228
247
240
224
229
225
211
243
176
227
213
152
190
242
188
173
230
185
172
176
171
145
181
219
219
153
245
216
168
265
201
203
182
190
240
218
218
246
212
180
108
244
158
180
234
146
249
199
149
262
253
208
245
212
255
169
187
264
181
245
201
196
226
198
195
135
170
156
174
195
189
196
248
180
188
182
210
174
254
126
214
185
193
182
200
206
191
161
272
198
178
234
209
208
205
220
199
207
161
228
197
228
175
193
225
269
157
214
215
97
150
197
195
171
159
170
231
220
146
163
211
209
210
187
189
177
185
210
183
166
248
182
142
219
215
179
172
212
203
166
195
177
252
203
144
214
186
258
170
169
203
285
252
274
228
288
149
207
250
199
214
225
210
192
121
195
179
250
187
223
185
196
186
208
154
268
208
234
229
223
213
201
222
129
241
171
138
184
228
150
199
237
201
186
175
226
219
186
185
193
151
214
226
286
118
247
156
232
203
187
194
215
191
229
216
222
272
110
218
222
117
231
192
205
221
191
195
190
282
179
195
243
169
168
176
147
232
258
197
172
233
192
218
229
203
195
216
213
167
222
199
151
159
230
196
210
146
201
221
187
231
182
185
239
198
201
243
196
204
225
182
226
217
279
170
215
194
189
276
226
181
193
196
205
168
211
253
139
180
134
229
127
211
235
254
251
188
223
187
209
207
213
172
217
215
185
151
129
223
179
223
241
149
250
264
203
153
204
158
192
211
204
151
229
216
178
172
214
187
169
214
210
201
230
209
186
246
196
170
166
234
261
199
209
193
243
236
180
249
196
241
195
180
280
218
264
177
203
251
222
226
173
181
206
227
150
136
245
190
248
175
216
187
245
185
222
156
214
237
206
252
157
201
183
191
249
214
154
241
204
239
180
137
197
196
217
197
205
169
144
231
223
216
182
154
198
261
171
135
239
215
170
176
249
175
157
169
199
196
217
204
152
264
187
258
237
258
237
189
176
240
202
217
182
159
206
167
213
211
219
178
160
199
211
203
219
233
212
204
243
192
169
225
237
228
240
223
174
176
175
224
200
203
209
206
192
229
201
192
184
190
177
179
196
197
180
157
241
144
153
192
205
215
199
159
126
210
220
241
237
217
193
143
231
179
168
238
232
125
159
184
155
240
262
171
226
209
195
179
186
198
213
145
167
171
200
181
216
215
207
187
245
253
226
200
223
248
215
183
163
190
213
252
238
198
212
230
215
198
201
199
145
155
228
259
150
186
209
173
213
211
248
257
273
259
200
250
224
214
192
267
234
268
211
190
243
232
216
198
214
165
201
187
163
220
149
188
196
219
197
232
204
203
240
211
240
168
217
94
218
193
144
229
240
204
122
198
169
160
239
150
192
203
178
144
199
212
175
203
188
167
176
257
228
200
212
218
205
192
161
179
184
191
163
195
220
174
217
202
160
178
193
187
208
235
216
204
188
173
215
215
256
222
178
142
180
210
211
223
200
212
136
227
261
187
185
184
229
228
220
235
231
225
200
213
216
225
203
204
223
160
198
183
198
155
153
142
237
220
152
194
228
199
190
190
177
187
207
166
225
209
235
241
184
214
180
252
204
237
168
236
237
188
195
190
213
154
180
191
179
182
185
186
215
215
192
194
248
213
222
238
155
160
211
184
185
188
216
214
246
231
224
221
233
234
245
193
161
187
203
226
203
260
182
232
203
186
147
218
236
186
193
238
189
182
203
241
164
251
191
190
122
204
208
167
183
190
235
221
232
174
213
112
170
208
191
198
257
220
237
175
252
240
238
177
233
144
164
143
220
213
148
230
147
152
171
226
207
230
222
199
176
187
174
248
216
207
182
207
196
137
167
234
239
235
247
149
192
182
160
213
205
188
228
220
153
170
213
210
242
230
218
203
69
176
158
289
207
264
206
186
190
173
210
216
223
200
239
186
170
189
241
170
170
157
233
182
264
197
155
210
178
188
208
185
274
233
189
157
184
120
208
202
159
147
211
192
170
227
187
126
200
244
232
221
193
143
175
172
199
128
263
244
219
155
220
239
259
169
202
153
231
234
236
190
237
250
243
225
242
201
259
171
213
167
227
210
225
204
218
207
219
252
149
221
165
182
172
226
220
182
230
190
160
179
220
224
158
169
174
225
211
201
253
195
281
222
224
227
200
222
160
212
265
186
209
211
206
289
235
226
263
235
174
137
224
176
240
149
195
184
250
250
212
196
152
216
227
225
167
206
188
215
200
239
139
223
238
221
230
245
206
206
168
212
208
228
148
195
202
172
219
200
234
178
226
197
149
227
232
190
166
174
199
186
233
141
232
186
251
245
121
244
190
223
170
219
189
188
235
221
181
216
109
246
261
160
141
254
187
275
198
208
212
252
223
173
127
241
267
138
181
244
202
150
240
179
157
176
173
171
121
232
237
203
212
218
231
211
252
247
213
221
219
218
201
213
178
204
164
224
164
280
223
228
175
226
203
178
210
169
130
222
154
249
237
164
254
243
249
226
178
174
188
150
168
150
185
150
246
163
226
236
189
160
130
165
239
192
190
233
196
226
217
147
225
223
221
215
172
161
166
191
190
293
232
238
195
222
197
198
201
199
197
253
217
224
241
159
174
249
214
181
212
117
199
192
206
214
223
243
185
213
215
218
170
243
199
154
132
160
210
234
194
247
133
189
211
178
145
208
236
207
274
103
243
192
207
214
233
196
220
187
170
238
275
149
287
257
235
212
199
225
236
266
195
223
126
171
219
191
189
178
160
219
192
217
195
199
191
210
179
226
238
251
208
215
159
224
212
196
206
215
211
204
218
197
261
250
208
240
121
203
207
231
230
139
191
121
239
221
203
250
211
221
138
277
194
227
215
195
171
183
209
197
214
178
162
150
110
181
150
169
188
169
265
244
182
206
199
193
178
146
229
150
186
207
248
282
163
233
140
231
185
231
210
185
198
178
226
200
204
248
207
245
198
220
194
201
201
171
161
167
238
183
191
180
157
215
195
220
147
235
259
158
270
137
165
191
147
185
196
217
248
215
178
222
235
225
219
178
201
238
202
212
185
196
225
207
215
188
221
247
211
190
195
185
223
212
268
219
230
205
198
143
228
205
174
191
214
119
159
183
235
261
181
176
249
152
168
206
173
175
267
175
179
162
185
159
220
240
154
208
173
200
193
201
111
235
200
240
185
216
173
242
238
184
215
226
240
250
207
262
198
195
219
224
197
177
180
261
149
282
191
196
233
245
178
193
199
200
207
196
171
154
249
164
230
259
204
169
191
182
181
204
215
204
217
219
160
223
207
209
141
173
144
207
189
245
244
171
216
230
227
151
199
203
166
165
254
212
209
213
195
229
163
179
241
147
139
232
195
244
228
248
182
170
200
204
223
215
162
179
197
166
210
188
204
182
264
223
225
233
138
217
164
261
228
187
220
257
218
202
213
231
193
208
172
225
157
189
247
190
120
195
169
267
198
226
203
216
198
204
158
197
235
170
163
175
224
225
245
183
215
167
229
284
209
182
221
220
230
224
187
242
222
146
147
215
193
194
214
199
221
131
185
218
204
194
244
195
234
204
234
175
253
199
240
169
197
164
215
198
165
256
195
227
240
252
171
259
182
260
203
202
193
149
187
195
225
219
219
238
250
162
198
176
179
183
151
202
189
143
196
208
153
179
194
160
162
204
196
201
202
255
222
208
242
153
150
155
206
228
199
166
231
247
231
225
228
203
160
201
177
136
219
197
207
215
253
138
234
196
194
128
193
148
231
199
122
180
236
187
158
178
224
227
247
193
211
216
224
150
226
238
213
173
232
233
186
228
155
155
189
165
186
234
210
222
127
193
200
210
193
213
164
195
246
221
162
219
135
226
203
237
209
209
215
191
243
175
246
188
201
188
113
225
196
185
251
205
259
202
184
182
148
185
178
190
210
195
191
176
137
185
166
196
207
145
216
243
287
178
192
241
175
188
170
157
182
139
189
176
142
193
188
192
179
227
148
160
118
159
177
195
229
184
214
258
210
167
191
196
154
203
219
132
217
170
205
207
164
187
216
148
203
188
143
185
230
207
116
265
223
178
193
162
156
162
217
150
183
178
173
293
199
186
185
233
186
179
200
201
140
235
173
155
151
197
214
151
160
227
164
227
210
183
247
160
180
167
239
263
213
197
154
179
200
134
182
203
195
189
150
259
221
223
186
181
269
131
223
193
164
222
216
253
215
129
195
197
176
187
177
204
210
199
209
157
257
159
267
219
206
198
262
137
175
211
239
211
175
188
198
213
243
186
203
230
205
178
177
216
211
211
224
255
144
218
252
212
183
149
182
236
237
131
229
214
184
218
198
222
264
155
137
166
215
205
197
196
185
174
217
211
231
152
257
191
262
249
229
228
137
186
180
131
146
165
195
243
195
253
159
216
234
158
228
213
142
185
183
166
188
219
164
185
255
173
244
233
191
197
200
127
220
200
93
217
216
194
129
173
198
175
212
176
205
185
215
145
263
181
241
220
175
254
205
98
150
256
212
194
114
239
215
217
222
206
122
251
163
200
203
202
227
166
230
230
208
201
175
196
194
256
192
215
225
172
176
222
191
208
196
211
238
223
179
223
168
273
150
185
201
197
156
209
226
209
216
219
191
225
89
192
137
169
148
206
188
224
186
173
206
177
233
157
175
179
236
161
200
202
252
178
177
220
201
223
220
178
192
218
286
212
161
193
113
206
124
164
191
209
138
236
257
231
209
165
237
169
228
212
258
226
250
159
237
173
152
210
177
221
197
254
206
183
183
213
165
157
158
172
167
270
185
205
234
189
194
233
149
169
212
183
201
196
134
151
233
184
203
239
255
211
164
217
213
219
260
158
221
251
201
170
175
212
234
184
280
185
184
214
217
234
168
161
203
184
235
133
190
167
193
174
144
169
164
201
229
157
163
268
203
209
268
141
199
252
165
167
250
233
194
209
223
224
160
187
192
194
236
256
164
242
196
237
187
195
222
275
211
238
189
164
234
164
192
140
191
234
205
215
225
204
217
221
224
204
284
161
196
228
116
175
175
226
231
192
240
197
167
193
202
156
189
150
231
191
176
172
204
205
186
199
228
214
165
180
227
186
215
203
194
222
203
200
214
175
143
186
201
180
263
211
181
221
190
131
215
163
185
272
197
220
168
184
250
253
190
188
140
220
155
152
230
253
160
191
177
197
188
228
183
236
180
214
157
171
232
223
193
187
155
179
228
218
243
220
211
232
189
146
171
157
235
238
269
160
230
217
181
228
211
197
222
246
212
165
191
238
232
221
178
192
141
141
174
254
185
174
170
204
216
189
198
211
269
199
188
200
184
149
170
160
228
219
167
248
226
171
203
220
241
202
235
222
241
201
222
193
184
188
141
219
225
199
181
238
213
186
178
191
279
159
221
188
170
222
204
136
204
216
170
203
164
160
182
135
179
214
153
190
173
207
243
241
200
195
210
178
154
185
157
187
143
198
213
227
190
227
209
243
197
191
149
197
222
208
137
209
192
256
209
194
158
117
206
192
218
168
262
175
182
88
231
167
217
195
179
220
201
200
184
174
216
193
226
182
258
164
141
197
147
248
177
234
171
196
192
144
159
178
213
252
196
211
196
206
185
193
215
129
241
191
200
197
210
167
181
184
199
236
150
150
239
261
188
232
220
173
171
128
173
166
206
192
215
198
193
157
256
180
255
264
179
227
150
217
173
199
195
232
206
193
169
237
143
210
223
197
240
207
223
160
157
187
224
188
238
164
201
200
242
224
187
228
228
197
190
195
175
208
169
237
248
115
257
172
177
206
199
262
168
189
193
192
149
228
199
177
228
193
207
206
163
273
178
242
181
274
148
151
221
154
209
257
223
217
199
276
212
170
211
171
205
127
245
137
251
203
214
222
180
216
215
219
207
157
214
183
195
194
248
190
196
271
178
192
184
168
165
243
245
170
220
171
226
181
178
171
184
205
234
157
232
167
97
182
226
159
245
228
232
179
221
112
232
165
196
144
196
211
148
165
223
159
190
271
217
191
243
232
184
207
233
209
217
204
225
227
197
205
233
263
214
186
167
158
209
212
164
165
272
208
242
190
211
282
226
200
234
227
238
226
139
145
181
207
214
214
175
208
174
231
180
220
249
211
200
216
215
139
153
185
130
276
222
243
189
270
216
195
131
257
154
186
135
186
201
192
192
180
188
218
186
196
162
249
129
230
228
160
241
210
234
186
146
212
202
216
161
170
228
219
236
212
258
207
203
205
219
219
202
249
210
228
247
251
170
184
183
168
167
164
234
197
223
184
211
85
157
189
194
134
238
229
242
119
199
175
221
202
172
188
160
180
233
134
229
159
196
161
182
201
178
203
164
149
209
203
231
191
179
162
232
139
220
198
241
131
136
142
225
204
213
229
195
253
195
225
221
199
212
220
209
192
214
209
155
216
205
212
236
202
187
202
219
167
182
177
191
222
251
191
228
221
191
222
167
228
218
233
220
155
237
175
246
161
171
169
226
224
271
201
127
179
215
236
206
210
223
186
126
221
249
233
169
189
217
248
210
217
161
210
234
225
148
146
205
215
230
214
208
177
241
194
214
286
193
235
246
181
166
238
184
257
137
177
152
176
129
223
218
189
227
125
237
130
160
201
177
144
162
196
190
162
186
149
177
219
239
168
165
184
131
190
223
266
162
175
242
264
251
166
178
224
252
231
236
150
217
179
270
136
245
214
151
224
177
211
233
170
235
198
225
208
262
201
172
189
272
285
229
198
203
207
177
244
199
202
146
160
133
206
207
193
243
199
220
251
200
212
169
255
194
177
225
198
206
207
231
189
233
179
241
170
185
194
176
195
207
175
171
178
191
159
228
206
195
234
171
212
149
189
210
175
189
173
231
138
203
211
119
244
234
213
212
164
221
202
164
247
233
203
219
191
202
215
202
240
201
210
176
206
207
195
213
211
194
249
237
150
235
215
229
173
148
185
174
213
249
244
196
234
219
226
218
193
191
144
222
229
248
127
221
136
206
235
229
177
196
226
252
204
220
192
176
184
221
182
178
215
188
164
196
220
207
212
227
235
229
154
195
257
171
150
266
263
257
239
150
141
200
120
143
215
219
205
255
200
171
214
214
220
217
179
197
192
167
226
227
237
197
177
218
209
205
104
241
196
190
216
217
202
247
206
185
201
168
224
213
184
236
240
168
222
156
215
143
201
237
174
231
224
199
192
177
196
186
240
194
158
196
240
172
188
168
173
214
219
185
196
198
242
224
160
238
264
257
154
228
249
198
248
208
185
198
206
177
223
268
209
251
176
236
221
174
146
171
195
129
258
254
192
206
121
180
153
222
220
136
144
246
240
147
227
201
170
208
206
146
205
184
150
118
147
205
172
227
220
179
223
221
182
179
176
140
187
241
164
209
220
216
179
184
256
167
205
171
202
212
218
136
172
193
182
186
232
189
198
183
271
165
141
186
236
242
188
198
171
254
227
199
186
241
202
179
148
197
243
135
125
272
208
201
182
172
205
160
217
165
202
185
182
178
220
182
181
173
182
163
197
205
247
227
270
184
153
193
155
201
198
179
224
205
202
174
127
208
204
234
193
200
151
250
224
241
199
232
241
159
144
205
184
183
233
209
217
157
205
219
165
216
257
224
128
184
187
182
207
178
242
191
154
191
192
181
215
228
182
202
202
145
223
185
236
231
214
201
228
248
221
240
209
186
191
241
190
206
195
204
240
190
211
217
145
281
162
199
229
259
165
215
208
228
194
198
190
167
165
198
215
259
238
263
162
175
195
188
196
184
196
173
236
172
168
209
211
202
200
224
130
170
189
210
197
231
171
215
240
215
258
137
233
194
215
201
189
238
172
210
232
214
205
174
196
162
138
225
212
203
208
174
252
174
242
217
195
252
198
204
128
218
161
163
229
187
175
279
182
185
236
255
237
136
215
207
224
226
205
220
207
182
265
240
142
238
193
178
234
261
162
221
100
232
222
174
193
174
214
195
206
203
171
264
209
207
190
229
223
212
197
246
217
169
264
190
142
152
159
214
224
235
293
245
161
163
222
188
191
225
207
234
213
190
230
195
231
168
223
195
190
168
186
191
182
220
177
219
167
224
276
214
200
131
215
128
131
233
180
257
185
202
213
196
254
200
199
213
248
159
179
215
214
253
247
178
150
243
161
140
231
227
217
193
218
217
239
164
183
211
236
189
160
213
226
218
222
199
129
217
170
188
236
208
237
188
191
204
201
198
178
269
233
233
180
194
178
186
199
142
181
180
137
157
221
168
159
149
199
213
173
170
157
257
248
202
119
184
205
198
208
208
209
171
246
199
172
172
211
248
187
164
175
217
200
233
219
234
195
185
213
83
155
160
160
227
223
210
179
232
147
168
227
147
237
171
250
200
191
199
182
216
260
179
196
230
197
192
132
227
169
230
223
216
254
202
187
189
223
225
225
228
238
220
223
178
107
263
182
206
124
232
249
174
230
223
229
219
142
156
220
266
213
266
275
210
203
223
109
214
223
183
250
182
128
245
174
192
196
200
213
198
238
190
176
173
189
245
169
172
219
228
183
151
205
173
142
183
233
189
171
254
185
143
234
179
200
213
215
148
201
226
247
199
227
237
217
181
224
248
209
194
206
178
213
216
204
231
153
205
184
191
165
158
178
217
208
206
219
236
232
224
217
212
279
235
235
176
202
164
171
149
219
147
250
250
283
216
197
211
208
151
201
202
235
162
218
190
259
239
224
194
169
182
120
206
221
183
248
193
231
200
181
211
182
198
200
207
228
122
228
191
190
221
241
165
205
187
186
153
263
173
212
215
247
209
213
163
194
193
225
214
148
182
223
190
218
181
209
224
223
111
227
210
196
221
163
245
230
171
151
179
225
238
234
202
184
177
235
238
181
235
218
247
215
200
248
180
230
217
148
178
214
197
194
200
202
188
196
244
159
197
169
202
204
201
183
247
179
189
187
132
185
102
223
201
217
235
176
185
207
204
193
176
178
196
261
201
182
160
219
202
246
236
181
207
215
156
216
169
206
224
216
261
189
153
185
203
209
169
149
178
145
231
171
256
256
168
224
209
201
192
191
202
239
233
171
171
185
237
250
223
228
203
173
250
214
156
117
184
222
234
186
216
242
226
206
185
173
205
195
147
211
155
283
217
203
181
177
219
181
187
217
241
232
190
229
198
223
248
182
183
216
193
235
209
181
217
170
182
188
183
225
161
229
189
179
158
202
220
238
168
170
206
215
235
181
171
201
172
200
136
266
174
189
141
170
159
145
142
204
255
211
86
240
243
233
278
185
271
206
207
169
192
215
177
156
210
210
251
249
188
243
222
167
242
205
199
172
141
202
200
233
165
185
160
185
191
201
180
158
146
224
240
155
233
230
221
184
238
236
227
195
216
215
255
249
179
223
258
194
193
191
215
133
244
167
184
250
177
175
179
243
235
260
241
209
182
209
176
231
239
234
195
204
211
215
181
194
163
220
278
217
157
209
176
120
210
274
233
207
186
243
216
124
184
213
211
180
189
226
178
152
229
165
191
238
220
193
243
188
201
205
124
157
178
208
188
155
246
219
164
211
208
258
177
203
167
179
167
221
186
162
172
187
159
175
219
188
152
182
191
142
178
204
254
184
234
183
227
201
193
214
199
176
209
180
219
190
216
171
150
145
198
208
180
140
270
243
252
154
247
208
196
189
185
174
234
188
215
188
180
226
199
188
167
261
235
208
188
177
187
158
210
177
199
232
232
195
206
195
176
226
228
197
177
211
200
176
217
272
179
213
169
227
197
222
197
207
188
164
197
204
223
160
197
155
186
287
227
164
188
242
171
241
218
233
83
198
213
214
146
174
235
194
145
185
232
189
178
212
201
199
178
199
191
226
176
210
224
187
208
185
204
222
183
161
205
174
186
148
194
196
233
221
215
164
153
235
213
141
225
226
236
150
223
158
197
182
189
255
221
231
236
150
197
151
169
222
257
129
181
176
202
225
182
248
127
143
193
202
211
152
251
232
199
186
241
218
225
130
197
209
213
231
162
205
159
195
186
134
175
225
238
215
257
133
206
218
216
220
225
220
163
211
187
129
156
203
158
173
184
123
171
234
214
159
208
176
237
264
292
175
204
144
194
191
210
241
213
142
164
240
193
185
192
266
200
200
195
185
184
208
225
179
199
187
170
197
205
222
199
263
245
210
183
219
149
190
201
176
251
236
262
226
184
168
191
216
142
203
169
213
181
195
213
194
224
183
223
140
172
281
165
170
232
207
183
206
249
199
262
154
247
248
249
249
243
236
205
168
158
202
205
199
228
150
211
156
215
169
156
242
168
200
240
218
217
227
225
189
228
200
223
206
232
211
229
218
161
166
183
225
179
201
153
207
190
163
229
148
227
243
216
204
213
220
257
145
175
286
179
237
233
228
157
191
183
192
168
265
226
223
200
250
150
210
142
201
175
172
232
236
183
211
236
236
237
231
232
256
272
148
203
202
233
224
214
236
192
161
213
210
175
183
170
234
164
203
202
182
155
184
231
210
193
186
169
267
238
240
196
180
215
225
166
142
135
207
207
214
198
193
195
210
232
217
194
192
210
212
216
173
149
246
197
199
183
199
211
170
218
238
196
204
216
165
171
167
211
194
237
234
195
233
225
207
210
154
219
172
243
252
181
186
189
247
218
232
150
186
151
166
227
193
225
180
155
226
211
175
152
180
213
158
153
192
209
208
218
232
208
205
249
201
135
264
183
182
222
224
206
195
189
191
190
243
217
167
202
193
191
217
188
176
193
206
249
248
233
196
132
201
167
171
189
279
203
257
236
143
206
224
159
179
177
188
231
170
242
191
188
192
156
204
216
208
188
157
224
155
196
199
209
244
207
208
180
194
155
174
192
206
212
196
172
193
191
212
204
230
241
164
138
99
209
234
255
186
165
239
207
222
222
183
212
210
189
189
174
240
219
236
172
283
221
212
237
190
211
152
188
249
233
233
198
191
133
218
211
209
153
197
192
167
144
198
135
213
171
165
229
178
210
194
175
193
173
201
188
216
191
221
211
218
184
188
188
155
181
197
208
166
196
203
194
248
203
201
249
170
168
196
210
169
191
254
169
217
195
224
148
180
190
245
180
178
143
206
236
174
209
185
259
225
232
166
243
186
187
213
173
174
198
193
203
208
235
213
260
203
160
173
224
169
195
205
217
189
180
235
235
172
204
172
198
204
194
167
182
230
178
170
202
173
257
280
153
215
208
144
247
184
148
228
198
238
209
183
223
208
177
204
219
224
210
208
226
238
153
211
231
167
199
179
173
250
193
203
228
261
247
202
222
165
134
239
181
207
221
180
260
232
233
176
197
257
204
150
225
134
176
197
167
156
165
168
244
179
241
228
262
184
208
219
203
175
196
164
191
243
130
221
251
240
219
228
234
178
100
178
212
236
164
221
172
211
249
222
188
102
190
170
213
197
208
134
208
128
244
238
181
237
182
220
189
216
153
192
207
199
192
206
255
192
142
231
256
162
175
186
207
206
175
131
211
229
206
223
226
205
174
194
214
134
155
199
165
262
154
200
177
232
159
182
253
174
214
196
214
164
160
218
220
145
205
165
203
194
245
208
193
197
202
199
194
234
193
208
234
234
208
270
156
201
157
132
225
176
219
211
192
224
195
177
232
183
184
188
176
203
137
242
207
188
184
213
131
217
226
178
211
191
233
226
182
224
200
191
238
186
179
249
216
180
219
189
186
242
188
208
188
156
171
173
233
184
195
162
182
218
143
213
240
174
147
243
143
161
182
236
228
186
204
284
227
129
147
200
235
169
211
254
223
188
221
185
225
194
239
120
233
259
203
211
153
267
218
184
176
179
170
225
141
176
202
156
189
175
173
193
144
166
213
243
216
191
186
202
215
240
243
173
204
158
242
222
195
206
195
231
95
213
138
165
162
209
143
243
190
158
233
144
238
218
207
190
201
147
286
245
92
197
197
183
208
145
207
237
214
218
194
159
205
198
208
224
172
246
254
261
247
237
176
182
201
194
189
184
239
190
232
198
198
178
247
238
204
229
210
213
180
198
196
169
212
185
237
203
225
164
178
205
192
177
165
196
255
188
134
153
219
204
212
184
178
175
179
205
260
222
149
182
197
139
250
188
236
237
226
198
179
137
139
255
203
191
239
235
206
221
197
198
183
227
170
198
188
249
142
198
223
247
196
159
164
219
208
169
218
215
152
178
230
130
217
239
187
175
158
168
201
222
222
227
193
205
231
201
212
187
203
211
142
233
150
152
227
219
195
272
176
207
213
160
192
160
187
248
162
163
213
182
224
157
185
205
258
230
133
256
131
252
232
146
184
174
103
206
161
156
251
156
190
181
172
185
220
181
210
155
231
216
205
219
190
169
168
168
181
209
195
179
194
171
215
205
217
160
196
135
174
197
181
224
168
229
245
157
193
169
154
253
252
230
218
161
216
182
180
209
218
208
250
199
186
223
267
208
190
123
200
194
218
208
234
185
177
242
258
254
231
202
244
235
230
239
218
199
172
223
226
188
157
217
189
267
170
197
151
193
233
238
152
171
187
219
246
198
187
249
213
257
212
243
194
229
138
179
121
208
147
240
197
222
187
143
197
212
236
212
195
195
235
255
177
254
165
240
223
193
229
208
179
262
159
265
252
129
111
222
172
215
213
221
180
204
208
152
248
186
236
230
182
114
166
195
234
213
232
198
146
130
203
226
240
213
116
228
203
266
197
250
199
213
213
174
274
246
228
127
201
194
172
217
233
178
166
178
160
209
164
246
224
168
255
248
209
248
170
217
186
210
150
177
239
220
208
233
189
230
195
198
181
173
201
212
165
211
220
203
190
187
199
229
246
238
244
207
173
224
228
175
182
244
171
250
251
192
189
222
153
209
182
238
177
210
207
225
209
179
192
173
189
199
178
169
138
139
281
214
184
131
261
212
181
201
206
211
159
175
225
229
226
193
166
217
171
168
215
226
217
185
169
170
237
257
110
132
196
216
208
216
184
237
201
223
195
219
261
221
227
200
216
213
217
115
191
211
171
158
202
224
215
249
255
271
256
217
209
231
219
173
211
177
207
260
199
181
141
255
240
164
209
265
172
152
172
187
209
206
178
221
199
193
229
217
244
195
222
184
190
248
210
154
179
224
194
181
190
229
237
204
187
185
203
217
120
234
217
188
247
208
224
184
175
147
134
176
229
148
213
192
188
209
210
221
209
125
239
229
151
219
247
158
229
243
212
176
218
217
215
178
166
215
202
186
237
216
233
217
211
227
225
257
154
218
163
238
204
187
206
199
196
228
246
210
212
211
262
265
229
231
236
185
209
240
235
206
201
229
277
192
127
222
220
226
256
159
234
145
224
196
204
236
180
233
236
216
226
241
185
258
245
211
244
225
207
272
189
194
257
225
232
266
125
142
205
196
198
235
209
204
201
207
202
194
179
183
152
156
175
242
206
167
198
197
213
212
215
224
171
223
220
208
205
206
151
230
193
160
215
226
203
206
140
193
148
199
232
230
183
191
207
199
191
184
138
225
210
240
164
129
195
175
208
157
250
225
182
225
178
147
267
146
155
233
180
199
245
216
210
142
212
158
271
123
223
173
261
197
173
114
205
152
154
234
201
189
172
116
243
260
169
201
165
169
189
166
208
145
216
181
207
176
223
196
217
213
162
192
235
198
189
126
199
215
208
162
184
204
202
201
204
150
177
209
187
190
221
167
136
223
249
227
192
205
193
191
190
227
255
174
153
193
196
242
259
210
175
233
234
230
199
240
205
215
213
222
206
193
207
203
178
174
207
231
208
174
279
181
200
198
234
165
154
217
194
202
196
197
223
186
197
263
192
298
268
247
149
165
184
232
178
177
153
150
218
160
171
210
166
242
221
140
172
220
238
160
164
259
153
215
216
206
195
149
212
131
173
84
232
247
140
200
197
150
219
234
188
229
231
180
198
239
232
234
235
205
206
210
186
157
206
240
140
242
134
230
211
198
232
137
148
219
205
198
265
219
203
226
221
191
144
189
267
208
204
147
206
213
178
183
154
192
215
171
216
225
175
246
208
234
233
189
238
187
193
232
175
204
222
232
182
267
169
241
174
204
179
143
180
180
233
212
149
203
224
207
220
204
148
174
203
206
176
202
225
218
245
123
197
243
168
251
226
203
182
177
205
149
202
166
242
220
217
197
170
228
225
251
236
173
232
249
196
248
206
187
169
271
188
140
178
219
222
196
199
194
207
171
161
207
200
218
168
181
192
163
212
247
216
238
202
186
254
278
188
252
219
186
183
260
214
202
205
108
222
241
222
251
211
239
185
252
148
210
222
176
175
200
219
188
199
170
246
150
153
252
129
230
209
238
132
136
163
170
228
235
179
183
256
215
212
187
166
222
193
146
240
206
219
190
207
158
225
198
160
174
162
222
230
233
159
181
251
199
244
235
245
220
194
215
217
202
180
216
208
185
169
247
228
208
241
174
217
189
109
212
213
231
222
175
215
177
262
164
207
179
134
177
220
224
190
186
197
129
196
214
262
232
187
167
227
205
210
216
175
186
188
145
225
220
208
215
114
210
186
162
229
201
207
183
191
260
193
233
236
168
174
215
157
217
142
206
232
247
217
195
233
165
201
201
163
234
139
194
210
197
233
282
233
183
182
262
196
171
196
201
198
253
209
216
238
254
236
202
233
221
180
206
227
203
216
189
195
183
154
156
220
209
216
118
210
231
228
216
198
197
206
168
183
256
186
209
272
208
201
111
231
262
143
242
176
172
229
201
215
200
171
210
159
203
236
144
189
227
236
217
204
202
212
171
178
188
148
167
182
228
148
139
241
175
211
215
207
235
164
163
180
166
200
229
180
227
266
185
174
246
231
224
189
157
234
233
233
188
201
184
195
196
165
193
200
190
157
197
198
100
218
204
248
204
181
217
214
197
270
161
192
214
212
130
194
230
202
243
186
219
185
196
203
235
163
219
141
221
257
180
166
263
222
234
138
220
190
183
205
197
185
239
230
178
212
180
258
157
155
183
209
159
235
130
236
170
247
171
286
222
233
206
159
240
228
130
190
243
196
210
229
203
162
200
156
150
177
193
199
162
124
226
276
242
223
213
235
220
200
244
210
214
205
227
191
130
154
194
238
209
166
218
86
151
202
198
171
83
207
254
143
236
259
244
220
191
262
163
202
185
193
232
217
256
204
206
213
164
150
261
250
273
265
230
222
263
191
178
192
177
233
175
174
232
142
178
228
214
228
200
213
190
209
243
235
182
179
181
230
219
191
145
203
237
252
174
213
225
203
188
147
176
149
222
173
220
188
231
191
183
250
202
186
143
205
241
229
252
178
159
172
234
211
214
159
182
223
185
202
160
203
197
185
163
173
166
205
172
183
125
165
213
231
264
236
212
201
260
221
202
190
194
195
200
202
246
203
263
171
179
188
223
162
174
208
247
266
169
165
206
195
194
164
179
225
188
184
180
193
143
202
121
207
155
164
136
210
229
265
204
205
134
202
206
231
129
243
174
241
203
227
221
177
260
176
155
233
204
176
174
154
216
176
153
197
186
234
157
226
212
174
167
217
204
167
232
235
177
228
182
169
228
184
194
242
163
198
171
242
180
241
189
214
239
153
178
237
222
238
210
179
179
191
181
205
214
184
167
224
202
153
208
195
223
154
232
177
146
211
248
166
153
174
238
211
196
227
212
155
231
204
197
270
252
201
160
169
182
178
223
212
202
173
179
183
170
217
229
220
162
162
180
151
260
150
228
171
213
227
221
229
192
190
164
231
191
248
221
100
179
170
262
201
170
213
155
127
209
183
216
205
188
193
234
175
177
157
224
197
205
222
238
218
179
255
237
195
186
200
206
215
212
210
174
151
231
195
223
204
204
198
207
244
190
214
163
214
150
191
198
248
182
249
156
188
187
185
175
164
206
235
200
216
182
206
173
205
244
177
218
175
200
224
272
199
238
195
208
175
180
207
199
195
186
215
186
199
155
256
184
251
242
173
183
238
145
257
172
173
250
170
260
166
203
164
274
138
177
147
202
150
123
200
187
129
213
192
216
125
199
236
238
212
188
175
192
226
205
204
233
258
272
144
183
161
182
171
190
212
176
237
173
232
195
249
234
139
240
224
238
194
166
150
195
192
213
253
311
202
166
240
244
158
245
237
137
187
245
185
205
178
212
261
248
172
197
253
192
176
208
247
181
175
195
175
193
207
175
166
232
202
157
216
174
143
231
262
220
167
200
219
220
225
197
115
149
109
255
213
229
186
195
211
201
189
169
162
223
169
210
219
171
133
202
235
224
222
180
135
215
260
248
200
258
163
109
212
275
236
253
232
228
175
227
164
188
195
185
251
191
189
266
213
180
198
203
236
206
138
179
158
240
136
191
208
228
214
211
206
168
227
186
101
179
216
108
249
196
222
182
232
179
162
163
240
221
170
181
202
228
188
198
235
257
239
264
227
268
152
168
271
204
191
186
167
246
265
226
245
152
194
181
233
143
256
214
218
239
234
184
142
96
190
205
171
211
186
153
221
209
219
166
201
137
260
233
237
195
159
196
241
173
246
161
195
133
139
240
145
191
202
240
122
202
190
254
182
222
235
206
173
263
224
183
231
231
264
215
260
190
239
204
197
186
184
223
227
257
258
177
220
221
193
168
157
235
173
214
236
202
196
240
263
277
219
267
247
203
226
211
252
221
228
174
238
165
239
178
193
241
222
143
180
250
253
217
235
152
246
134
197
214
205
182
201
228
202
233
271
186
223
225
200
171
230
177
148
201
195
191
187
221
170
204
212
208
219
140
216
234
207
139
231
221
158
213
210
206
237
238
258
177
185
214
176
234
252
155
178
256
197
221
220
195
175
215
215
194
229
210
246
230
179
184
207
182
218
249
286
215
175
203
219
271
179
186
235
150
221
259
223
222
197
233
126
212
210
258
172
231
235
173
171
130
221
229
197
216
228
175
206
168
181
162
163
206
257
188
207
180
213
219
196
226
193
151
195
208
198
220
215
136
194
238
223
222
199
202
205
196
241
211
268
208
218
240
249
217
236
257
258
264
210
188
150
153
244
176
220
216
234
197
238
250
152
176
219
167
220
222
189
185
248
233
199
158
168
135
138
137
177
157
232
190
231
140
202
180
246
192
209
249
203
240
219
155
192
254
171
157
196
202
179
216
230
179
165
233
208
170
160
267
221
158
193
221
198
221
168
254
140
208
245
194
198
208
187
181
188
210
164
229
219
231
175
146
259
239
193
234
185
168
173
150
235
219
236
226
236
140
213
223
152
201
197
185
228
244
204
229
163
171
180
151
241
188
172
242
113
234
206
187
248
192
167
194
205
223
194
188
213
260
207
159
209
161
219
219
205
249
161
186
189
181
247
174
225
272
167
232
216
197
253
202
185
234
146
177
167
159
183
207
154
138
221
240
188
212
185
228
171
193
210
227
141
277
71
215
230
172
176
127
143
216
280
216
229
169
188
172
195
186
154
248
218
179
196
167
167
230
215
179
152
175
192
116
204
244
186
153
174
221
207
256
223
242
236
164
258
168
262
152
231
203
173
168
260
230
220
225
202
165
181
180
224
222
138
207
146
161
242
193
214
224
198
249
176
204
153
209
189
117
212
211
234
187
171
195
209
206
155
193
166
144
208
217
217
239
220
241
177
224
184
215
242
178
228
218
234
203
179
195
187
196
210
209
241
194
204
197
166
189
202
212
224
161
192
182
137
205
191
187
191
225
209
170
205
208
126
281
210
194
240
161
223
236
265
207
163
150
228
218
223
256
156
182
238
185
234
217
115
162
262
179
239
180
227
150
188
207
168
203
203
194
237
260
178
190
193
155
203
184
172
238
198
192
191
200
221
196
112
173
179
239
233
236
124
220
151
240
235
171
245
189
212
230
185
203
179
160
231
232
238
204
209
235
201
206
230
235
192
158
167
208
205
202
142
192
217
195
193
210
222
189
204
172
182
183
204
159
229
176
178
243
189
199
190
211
194
157
182
209
190
207
201
214
166
167
187
177
247
225
218
226
153
170
137
234
216
260
182
216
179
153
228
191
191
166
198
162
184
217
182
190
206
111
207
232
212
224
220
200
239
143
204
153
192
229
211
190
252
130
178
149
207
173
190
231
192
235
98
231
194
199
163
161
190
197
172
205
192
184
239
158
142
205
247
228
197
129
252
148
165
97
201
294
216
185
189
200
198
250
166
173
240
215
270
246
210
218
257
227
189
168
196
180
190
224
179
174
211
245
192
218
237
163
209
212
236
184
259
242
197
235
161
189
276
194
163
174
196
225
229
175
220
254
233
176
250
246
193
230
224
206
149
182
224
205
207
232
173
166
184
157
201
200
187
173
230
196
159
212
177
215
224
262
170
187
208
185
242
223
240
247
196
197
191
211
217
225
163
144
207
191
208
213
196
165
161
194
238
201
246
200
210
181
189
233
238
186
217
187
185
299
245
182
240
153
214
201
214
207
220
187
143
159
222
204
190
217
281
188
171
173
225
159
219
184
203
237
228
122
99
150
266
158
138
212
214
220
199
174
200
229
215
128
189
181
216
212
147
226
204
219
247
241
207
231
194
177
208
172
168
235
131
200
239
243
193
216
222
180
230
261
221
203
161
210
221
221
237
226
191
247
192
241
196
230
232
205
259
230
219
171
180
202
174
203
207
196
162
245
153
193
189
251
217
165
215
241
167
159
146
223
201
238
186
246
215
247
230
249
210
151
217
202
184
166
186
180
218
169
176
164
238
212
212
214
158
205
283
185
201
212
119
147
200
172
189
215
242
227
195
213
202
207
176
200
201
186
215
169
203
206
246
168
182
226
209
233
176
221
203
93
179
228
134
177
209
123
198
154
252
188
200
180
137
176
207
231
242
202
186
191
160
203
187
181
186
231
228
148
139
129
213
162
177
133
243
134
240
250
271
226
210
213
236
178
223
167
215
225
214
176
198
220
193
212
200
245
162
176
235
187
179
218
226
245
189
186
176
219
205
220
121
198
220
192
211
256
214
161
137
220
201
152
189
197
173
205
155
177
201
239
185
208
204
218
235
192
154
214
269
235
193
218
149
207
181
216
196
130
214
178
214
207
160
169
242
173
170
155
147
181
188
208
209
188
274
226
183
191
183
242
180
214
260
165
251
180
246
265
168
145
209
259
189
192
186
230
210
197
174
210
226
152
235
157
267
205
141
195
189
226
216
199
150
157
136
244
218
180
198
188
230
185
185
242
176
228
108
160
217
202
190
227
147
181
220
237
211
203
159
210
169
194
152
131
213
165
269
181
183
178
215
219
191
117
216
227
207
184
156
239
200
208
208
199
255
146
197
236
241
232
180
226
184
201
230
207
293
223
249
208
178
217
222
247
142
221
199
171
208
242
170
190
184
198
206
218
189
204
199
195
200
240
182
249
268
195
268
118
195
164
228
205
204
220
195
182
209
190
228
198
244
239
209
268
195
248
184
236
200
225
217
213
264
116
210
275
189
195
211
203
271
188
237
231
194
205
182
144
134
279
177
178
175
217
143
237
210
218
136
199
197
106
260
187
227
133
215
227
191
165
158
199
199
245
245
219
260
210
197
236
261
224
172
166
253
149
173
173
266
263
181
184
206
221
224
237
229
187
139
169
195
192
221
209
181
163
232
187
203
241
147
221
165
221
222
239
219
220
113
218
155
184
189
194
202
212
198
154
169
263
177
209
230
242
196
217
253
173
156
220
152
247
156
196
214
222
186
247
204
151
181
168
176
187
213
174
174
231
194
211
191
207
185
181
239
216
219
192
228
235
169
213
159
255
191
179
167
153
241
170
189
216
206
127
177
184
208
215
185
172
148
201
195
206
253
142
191
218
176
213
260
155
149
164
223
190
235
178
189
144
255
185
178
160
200
225
232
225
237
205
203
234
185
220
202
169
142
178
210
222
230
229
231
158
196
208
262
213
218
198
174
212
200
162
157
134
205
196
214
177
211
244
228
160
222
193
156
212
193
160
163
174
206
265
200
216
177
169
227
152
225
144
238
141
237
230
218
174
150
248
225
172
223
199
187
204
159
216
179
203
227
229
246
229
168
207
161
173
136
168
210
171
280
242
266
204
142
211
212
189
193
230
118
225
197
143
175
209
152
269
168
202
154
182
221
154
97
170
193
188
221
215
214
241
184
203
187
148
184
202
202
245
209
270
172
255
176
163
201
224
214
161
207
162
215
235
177
218
216
239
109
178
214
192
204
178
211
208
192
168
231
178
146
211
208
141
234
205
190
239
157
155
177
206
219
234
226
229
244
176
201
174
240
222
173
188
259
157
173
244
173
214
196
193
257
191
226
228
225
203
155
221
188
186
150
219
193
219
221
149
190
213
167
218
182
206
230
242
189
207
209
215
187
126
224
174
221
238
186
202
208
187
197
211
221
204
224
205
191
192
177
191
217
187
235
240
187
169
208
234
189
194
171
225
219
144
238
283
180
166
245
235
211
142
220
180
214
220
209
173
218
220
154
186
225
160
168
192
196
173
177
185
212
224
174
268
234
175
254
215
176
251
190
203
201
274
223
156
165
228
208
174
140
209
197
198
209
160
232
190
205
229
185
217
223
185
185
228
248
208
193
183
190
226
221
239
129
164
215
202
235
223
237
183
255
194
157
169
215
223
212
195
222
219
208
197
172
185
202
220
164
147
202
210
198
249
190
258
207
130
172
200
218
241
180
193
176
150
229
187
202
231
210
253
182
200
156
231
202
174
224
160
241
186
168
242
181
255
171
221
246
195
177
264
258
212
223
187
157
185
221
171
240
214
204
132
124
236
200
210
196
243
197
209
160
195
151
178
145
232
175
204
208
167
240
151
253
196
226
172
200
207
215
221
247
170
135
175
174
166
262
214
218
214
188
207
205
165
253
226
205
246
250
176
212
166
220
160
180
190
142
198
207
220
210
157
234
255
216
191
177
200
232
204
238
109
189
218
206
225
145
204
200
220
204
226
229
175
168
195
201
203
181
192
251
166
176
194
197
224
213
170
250
207
221
191
228
233
227
211
140
190
195
161
213
210
170
175
210
167
222
222
209
228
259
202
233
227
225
176
137
207
155
225
128
188
197
174
255
177
228
240
185
186
171
238
152
145
220
189
194
189
206
251
188
181
216
252
212
149
223
238
245
225
213
221
129
200
253
187
277
135
192
267
207
194
218
197
211
227
178
278
249
140
175
231
192
188
161
286
187
227
185
196
246
157
200
283
239
216
180
228
226
185
212
186
208
236
232
175
131
206
201
163
182
230
236
196
185
197
157
255
203
217
174
178
245
197
198
216
176
172
192
198
210
205
220
236
177
162
211
207
221
251
236
257
192
169
260
267
254
168
207
152
192
235
218
193
248
172
219
157
200
221
187
106
192
194
162
262
184
223
141
205
227
246
240
174
180
155
192
229
203
172
259
206
201
177
145
224
218
224
181
183
155
163
257
204
214
211
219
170
177
145
183
200
259
216
224
206
143
204
179
164
210
239
254
230
145
209
154
206
187
210
273
181
186
208
180
212
193
148
210
203
132
126
228
179
180
202
215
260
226
201
118
217
150
140
205
188
182
238
172
171
206
186
241
164
142
227
207
217
200
181
157
196
209
198
248
143
188
222
199
239
276
237
209
190
222
221
211
223
272
198
193
189
230
233
202
203
251
252
191
192
218
236
198
167
156
245
223
190
181
134
218
191
232
211
226
206
257
209
164
201
213
186
227
169
167
219
181
222
139
224
158
178
195
189
212
248
129
247
153
233
207
214
201
124
200
225
197
212
186
115
248
172
229
215
183
270
185
118
201
254
189
152
235
225
182
218
235
167
216
241
150
177
200
209
221
168
187
201
240
215
148
259
192
192
194
139
169
168
215
234
184
194
268
242
216
174
208
237
202
175
203
225
211
239
150
214
161
225
178
179
208
190
209
224
195
203
215
208
179
164
239
208
202
191
218
225
246
240
184
192
173
254
169
194
164
236
226
214
239
220
214
236
196
207
196
180
118
180
238
188
160
228
244
231
237
169
233
189
201
209
202
166
148
144
201
160
221
177
143
244
196
155
190
210
165
219
169
203
189
207
246
205
221
182
259
239
192
235
219
170
227
168
221
178
252
242
252
188
219
227
168
166
194
250
125
171
194
205
187
196
234
236
211
242
208
230
176
150
212
232
236
191
265
147
178
150
227
176
181
182
234
189
246
201
227
148
167
181
225
183
274
245
157
218
172
204
248
219
244
162
221
176
188
172
140
201
247
194
254
156
237
233
126
237
232
203
146
169
244
277
223
219
182
263
220
153
187
207
217
252
198
152
169
187
203
146
190
297
203
276
190
215
191
164
147
261
160
233
179
171
184
161
152
155
213
200
125
179
135
174
240
221
217
191
218
190
186
201
172
212
184
183
215
147
226
217
239
182
154
210
256
221
244
211
188
213
165
216
235
248
211
165
244
154
197
197
226
171
255
159
156
180
185
194
176
241
232
206
197
152
219
163
246
163
187
226
186
268
219
182
221
168
209
140
198
209
188
226
161
299
191
214
163
215
226
187
192
172
179
219
223
193
249
130
256
149
162
184
154
179
212
189
194
211
119
209
248
215
244
207
226
212
223
231
154
200
224
191
272
248
192
257
235
235
178
136
256
245
211
212
227
230
208
224
188
253
209
233
208
190
225
155
210
194
242
211
206
196
189
201
245
266
236
197
167
205
208
197
189
181
217
186
192
215
259
189
179
212
240
156
209
152
140
228
185
239
179
198
164
172
178
171
173
253
203
170
151
210
152
228
209
241
182
127
214
213
170
203
198
231
218
149
187
150
218
189
155
199
205
202
188
211
167
183
249
201
190
180
226
207
236
206
213
225
173
185
229
186
174
186
182
242
204
204
221
205
258
166
203
192
188
243
212
187
203
205
187
203
232
177
196
150
208
204
262
217
197
240
173
152
226
169
148
216
208
251
187
209
210
249
194
225
174
217
189
239
136
143
236
247
190
210
187
231
190
202
185
196
248
134
222
197
196
237
262
181
186
191
248
212
182
152
159
163
136
223
197
225
208
266
196
160
236
158
228
165
179
217
183
181
211
212
195
203
204
153
223
216
215
220
254
199
258
228
198
233
136
159
146
190
207
131
138
264
202
190
204
281
235
168
224
176
227
227
222
266
244
234
202
198
180
231
216
224
194
220
218
209
187
189
210
183
231
203
224
159
221
226
177
153
236
151
205
272
203
170
252
253
204
148
185
188
173
225
249
198
211
181
266
191
179
245
148
180
280
178
129
196
264
229
247
237
241
246
209
212
121
236
233
237
198
169
134
184
172
212
166
216
175
171
168
221
205
168
220
208
215
173
256
224
155
198
216
222
196
159
211
212
147
243
267
175
189
226
207
203
247
220
220
145
235
216
133
219
220
190
181
160
210
181
200
172
137
187
239
153
200
160
209
170
212
224
162
254
164
152
193
212
228
229
136
261
261
176
136
217
259
206
213
212
211
123
173
192
179
153
206
182
187
146
162
228
205
202
161
177
229
191
160
206
152
144
251
159
234
206
211
189
203
218
220
237
163
210
215
223
246
192
214
219
243
224
235
226
237
145
162
246
220
188
220
165
200
206
226
247
220
190
230
191
190
208
194
167
184
224
223
134
185
183
242
164
150
229
173
186
146
168
214
217
207
239
199
170
269
238
199
217
202
167
165
258
190
192
182
140
169
208
204
194
183
254
139
261
150
208
209
196
201
111
196
181
167
250
194
189
185
267
156
184
201
220
224
193
174
249
222
242
230
215
209
162
199
207
271
172
212
228
188
177
164
228
163
175
262
163
203
202
223
217
230
175
190
264
189
235
198
196
217
241
197
142
237
207
159
241
201
179
214
247
230
229
218
148
211
200
193
241
201
172
198
200
183
216
244
218
223
225
184
217
178
185
177
194
169
237
197
195
195
199
229
177
150
176
203
223
169
217
181
129
203
263
229
208
194
210
202
153
213
205
233
229
210
148
220
127
216
204
236
172
165
187
152
221
178
182
196
159
175
202
204
167
177
264
136
262
194
155
198
220
198
216
165
248
164
223
160
225
209
137
218
183
171
172
231
227
192
197
203
198
186
196
150
155
171
220
213
231
181
216
144
138
220
181
170
192
232
214
200
218
208
169
190
198
221
159
271
218
192
197
225
185
198
227
162
202
224
256
231
206
221
225
144
191
193
193
148
185
215
211
227
176
211
248
153
247
189
250
155
186
254
198
174
134
185
203
134
220
239
188
185
150
233
242
237
159
225
178
148
232
200
145
188
230
170
175
181
209
162
200
189
227
183
244
196
184
241
148
240
202
248
222
217
222
152
195
206
246
123
183
209
241
238
254
178
208
192
194
141
266
200
149
200
270
233
179
114
201
164
140
203
216
217
141
240
122
122
195
232
162
234
187
203
164
245
192
197
189
170
231
183
192
182
227
195
215
261
184
187
262
208
203
177
239
192
171
227
209
290
249
241
171
212
261
229
198
226
218
200
285
233
208
227
218
184
219
210
207
249
174
204
190
181
138
190
166
187
178
244
185
161
116
215
260
174
189
219
188
241
218
215
206
243
203
246
194
158
197
211
198
253
221
194
230
254
195
162
265
156
262
207
186
156
166
208
132
242
196
216
267
188
227
205
211
225
280
188
194
223
177
208
223
245
163
202
195
182
165
213
154
267
222
226
163
201
214
275
210
169
168
220
204
184
280
248
222
163
203
197
252
190
125
185
229
189
208
219
168
183
241
214
228
189
168
183
228
164
139
207
227
147
179
240
163
182
211
208
206
244
203
166
198
182
187
209
225
231
239
243
239
176
209
205
185
213
245
253
222
242
244
143
212
140
265
218
203
237
218
204
194
224
189
198
235
214
266
197
178
130
167
185
160
137
229
239
198
180
163
137
192
185
204
211
208
230
250
193
255
242
267
238
172
233
263
149
165
118
263
246
137
197
186
163
166
240
200
121
182
175
179
152
275
123
129
172
186
241
209
222
257
232
213
177
217
180
215
228
218
220
202
198
145
130
170
208
193
156
206
203
208
201
228
200
218
195
264
255
217
222
201
154
168
247
143
138
178
174
179
234
176
194
169
162
255
141
238
215
200
186
215
164
203
192
218
171
157
229
222
188
218
272
234
172
204
194
142
242
231
163
165
210
189
176
178
232
226
216
132
170
219
161
227
229
248
187
221
207
228
243
155
188
180
221
242
183
166
221
198
256
164
186
146
234
234
161
235
247
197
137
193
200
187
189
230
201
216
202
249
201
186
158
177
202
184
221
172
159
263
201
189
171
216
162
213
197
230
268
196
235
156
188
258
137
168
209
227
201
232
203
193
94
159
189
106
223
162
210
148
243
241
234
151
206
198
273
195
240
197
201
232
146
264
233
167
247
164
198
286
153
194
244
156
143
107
167
184
237
198
270
195
138
161
124
156
140
227
161
190
207
175
218
232
191
231
204
206
266
189
170
210
235
176
145
239
213
226
212
210
257
221
198
255
201
241
217
205
218
179
219
208
179
173
287
239
276
247
231
195
200
191
137
227
217
200
178
220
158
220
186
146
233
239
144
241
206
203
196
143
176
247
280
258
148
201
210
227
212
199
191
194
201
254
213
247
182
188
174
262
196
280
218
225
192
230
170
284
175
188
176
226
218
130
193
189
225
162
203
248
172
247
244
177
221
166
171
139
203
251
142
213
203
230
184
179
205
199
198
147
191
247
206
233
228
212
178
234
220
204
152
134
207
264
249
163
143
242
166
230
252
198
220
207
238
236
216
211
166
209
254
257
196
215
163
169
178
194
183
181
163
250
181
201
261
251
180
186
174
172
232
187
174
210
134
232
164
170
143
256
250
153
243
215
155
218
206
258
224
158
171
169
203
223
238
134
200
208
230
210
169
186
208
237
168
225
131
255
165
221
164
258
197
215
240
234
226
165
100
245
205
180
159
168
166
231
217
170
226
193
219
228
202
192
173
148
218
164
148
206
160
205
258
250
200
203
216
222
126
205
131
250
207
209
200
160
129
220
110
150
171
233
205
236
201
242
252
257
221
122
227
174
208
161
144
184
197
230
226
226
194
198
169
194
216
218
204
232
230
181
198
138
220
175
184
177
210
176
202
171
228
201
252
200
213
189
208
137
222
209
218
243
199
167
170
169
205
226
144
180
192
189
216
152
196
186
190
215
204
188
165
205
216
165
204
180
234
183
190
185
259
183
172
146
266
159
266
222
234
230
230
191
244
187
210
191
212
280
216
310
217
216
163
240
152
234
205
186
197
244
211
206
175
224
201
169
238
159
150
225
195
193
179
182
157
154
194
163
233
210
175
182
149
226
168
211
223
191
239
171
200
202
188
206
232
179
189
133
226
233
222
174
176
250
150
201
146
222
151
111
214
169
217
182
168
163
210
178
207
146
215
208
175
250
221
201
222
134
238
212
178
149
216
181
221
226
200
127
235
202
178
196
155
232
229
165
216
250
185
195
236
194
221
214
185
165
194
203
261
221
212
225
231
205
234
218
204
178
160
195
160
222
151
182
241
186
203
194
188
281
162
255
171
195
173
180
185
215
246
223
182
174
209
197
196
188
192
200
190
191
265
262
233
174
191
187
172
155
157
251
206
178
206
159
187
241
105
233
183
191
184
261
230
273
214
176
202
183
166
225
212
188
240
174
203
199
184
245
169
194
151
134
180
179
163
217
140
222
165
213
137
205
279
260
192
229
179
239
221
205
216
183
259
261
244
198
240
210
200
118
206
189
125
249
206
215
205
227
210
148
161
198
182
200
195
178
252
196
209
186
235
168
253
184
196
265
200
180
216
189
203
199
197
231
218
260
153
193
236
152
180
191
161
157
160
217
195
195
198
238
212
223
242
227
240
259
183
187
210
183
182
163
237
220
213
214
214
189
233
184
213
182
175
199
239
197
153
190
198
198
243
245
250
192
167
214
181
162
182
216
232
229
252
135
236
223
236
248
208
240
206
237
217
222
161
274
215
182
205
203
192
175
186
216
199
197
208
150
161
205
158
220
172
146
146
182
262
240
197
239
171
209
248
226
207
146
222
182
237
205
186
145
153
197
161
157
260
236
270
217
166
218
209
212
168
185
154
179
196
217
160
195
87
230
181
221
177
161
165
129
208
176
136
163
212
235
210
232
198
241
184
171
221
157
172
186
174
164
221
234
131
189
182
204
165
163
187
184
189
193
234
243
165
199
214
262
159
236
207
257
257
266
206
272
202
219
177
178
226
214
213
253
240
245
228
208
174
141
236
178
206
170
260
223
210
208
179
215
195
224
225
228
219
219
201
181
142
90
193
153
161
206
226
114
221
167
191
201
214
239
189
210
193
173
248
177
219
201
191
197
218
180
256
129
193
232
246
236
173
172
247
150
175
175
176
212
197
162
299
193
249
204
225
229
126
277
200
241
228
168
150
229
205
244
226
226
238
225
131
183
232
164
195
229
206
209
209
229
183
240
152
220
130
192
239
169
201
208
227
188
227
268
162
250
254
185
256
183
249
258
188
225
196
202
215
156
200
169
242
243
212
230
179
231
218
180
254
210
148
192
183
179
212
164
204
198
197
176
155
182
196
185
225
226
213
210
139
219
196
153
183
225
230
196
207
179
212
189
207
292
187
252
183
230
221
161
181
213
179
178
185
223
145
221
257
166
197
162
230
242
170
207
153
129
161
244
233
185
195
160
183
168
217
207
190
205
228
202
195
160
178
212
199
210
126
218
195
207
258
181
167
217
183
210
194
232
146
213
223
150
188
150
198
182
178
98
192
190
209
183
191
183
235
147
230
166
253
142
179
174
240
217
223
164
236
177
201
226
204
194
242
221
222
217
219
183
188
267
204
213
214
183
203
189
244
230
279
205
235
247
189
188
207
167
257
250
206
194
184
219
150
226
213
218
224
192
138
198
198
203
177
201
194
181
181
235
197
188
232
163
194
218
228
192
205
277
196
269
233
232
202
167
145
179
213
238
205
137
227
224
233
178
211
162
205
231
165
212
202
185
225
177
175
241
145
197
221
191
231
235
249
193
202
213
235
169
234
229
230
222
206
193
164
197
201
142
192
254
239
223
203
167
221
194
210
214
214
227
231
187
175
183
208
197
148
229
178
213
205
236
210
206
216
207
187
210
120
175
188
257
142
198
208
204
245
220
220
229
225
163
227
201
181
151
152
236
223
246
206
225
225
183
188
215
139
214
196
169
271
199
228
227
194
130
204
193
196
265
225
237
174
188
188
138
202
232
208
141
218
250
189
191
208
155
187
248
207
227
225
96
231
152
151
192
225
183
170
197
199
197
197
148
223
146
236
195
183
195
162
212
204
176
193
283
202
164
211
234
191
137
221
180
209
194
184
214
269
268
244
207
273
233
183
210
211
215
206
228
205
230
226
177
148
184
163
183
188
192
235
262
167
205
200
199
185
249
194
188
217
162
211
146
230
177
163
218
181
191
198
219
233
184
191
200
132
232
200
175
228
161
226
277
194
191
189
191
216
199
162
185
210
178
227
164
202
192
209
123
180
239
172
235
194
243
220
226
240
144
213
171
105
264
162
183
239
186
177
142
196
162
187
216
165
204
230
163
183
220
251
161
241
188
239
233
189
190
253
171
211
266
168
174
214
199
171
299
183
168
262
216
213
233
173
198
183
165
194
238
189
224
243
243
263
169
211
271
242
154
205
237
216
204
118
187
235
224
152
201
206
239
273
185
190
190
167
187
154
176
135
160
178
243
203
191
245
224
224
153
188
204
180
205
191
243
226
258
154
211
229
140
171
185
206
236
252
208
189
113
213
168
191
204
163
212
212
227
233
147
240
224
170
195
262
161
213
122
203
200
199
252
196
188
206
189
199
209
106
182
249
200
202
186
190
202
203
218
200
222
167
199
182
170
219
163
182
196
211
178
239
209
250
161
217
204
184
201
217
183
189
162
161
269
211
240
166
265
172
120
212
190
244
230
162
224
172
216
209
195
217
245
191
214
193
217
217
207
223
199
200
193
167
207
203
199
161
186
254
213
217
198
174
194
259
222
175
195
211
189
192
199
118
208
162
210
174
156
250
209
196
235
154
237
241
192
185
208
217
184
188
211
175
227
171
166
209
179
227
205
177
168
112
223
249
232
187
157
131
214
187
174
112
159
185
220
246
188
177
208
181
174
192
109
263
202
171
184
224
207
148
195
258
260
167
225
223
212
181
197
195
194
221
241
203
163
180
230
179
201
203
211
203
200
178
193
197
196
213
130
180
196
139
216
244
204
197
179
219
224
173
190
176
184
221
230
211
177
210
213
227
226
227
188
150
191
239
184
170
210
203
237
183
178
228
225
190
201
209
198
239
270
173
220
210
101
218
233
163
165
176
245
199
203
248
209
220
204
211
203
150
192
215
136
222
182
203
208
274
219
209
244
149
176
170
185
238
196
266
181
256
159
185
156
197
220
234
227
212
212
253
205
236
240
234
244
152
148
223
216
212
233
196
221
226
195
196
281
170
206
181
203
176
214
260
206
208
189
235
202
213
201
184
191
203
229
147
216
167
149
168
208
198
173
186
159
216
154
164
228
183
187
238
185
163
185
164
231
164
183
195
199
243
231
155
171
204
209
255
171
173
174
184
215
202
206
253
203
264
134
229
171
236
190
200
185
210
221
190
230
183
227
211
237
214
198
187
184
187
181
200
209
195
174
175
215
207
249
242
174
216
227
236
194
220
258
112
227
126
190
173
251
225
221
170
205
205
262
212
204
209
203
227
141
172
213
232
207
154
203
184
183
246
242
137
262
235
184
221
190
225
219
206
182
204
174
201
153
179
184
206
199
181
201
153
224
173
184
187
189
246
193
253
209
182
208
197
190
156
244
200
208
168
168
225
252
153
185
244
227
219
241
246
199
263
210
214
230
152
214
193
191
200
245
132
188
236
216
139
170
184
209
274
210
232
254
200
264
237
167
200
246
229
195
215
203
156
251
207
221
166
230
205
198
156
240
261
194
258
207
157
185
200
242
174
209
234
179
249
235
256
236
195
154
158
115
235
177
196
256
214
238
221
269
250
213
151
195
186
199
209
196
269
197
186
274
262
197
208
267
279
179
241
181
185
167
204
222
179
225
162
172
146
233
223
196
125
224
207
214
126
232
244
216
236
221
131
210
229
234
213
213
253
200
165
211
192
215
230
209
239
270
226
197
196
196
178
178
256
208
186
242
257
245
214
243
238
225
185
165
238
255
190
215
160
224
237
181
244
224
199
252
244
160
148
165
225
212
208
241
186
200
180
173
191
200
229
187
150
257
166
267
206
210
161
195
170
240
212
198
279
161
184
208
218
187
129
125
210
251
228
253
237
172
225
196
196
206
187
137
188
189
216
204
160
187
187
173
257
237
189
173
218
187
214
237
239
138
205
193
197
256
235
155
259
221
190
230
214
206
201
206
189
208
231
184
191
215
197
212
185
170
222
217
222
138
196
122
223
261
214
257
216
251
204
254
211
238
224
175
227
235
174
135
213
219
143
249
177
173
162
205
173
197
216
207
233
159
220
185
222
183
253
160
136
163
205
189
202
170
183
173
198
179
176
203
172
203
216
160
239
227
227
204
199
171
168
171
189
234
229
198
227
222
262
214
178
203
240
220
225
193
211
188
188
210
156
169
142
189
175
223
254
172
239
193
228
210
204
190
158
289
179
220
233
176
157
235
174
227
216
251
236
221
204
194
202
109
140
276
190
227
155
188
133
140
172
189
218
147
179
189
211
222
224
213
129
184
272
233
198
238
139
167
245
177
162
209
198
155
219
188
180
182
169
195
190
189
212
158
239
236
224
162
221
258
206
161
200
179
187
147
241
245
181
259
195
233
220
178
213
222
176
162
226
233
204
184
210
263
209
171
154
233
248
188
244
257
185
186
237
197
244
222
195
209
204
189
264
188
142
123
195
198
238
257
178
261
157
201
193
217
174
198
185
129
181
229
237
230
220
191
239
187
181
164
219
170
197
187
172
189
218
191
277
208
249
151
155
252
167
225
226
216
201
153
208
241
135
214
135
167
229
133
220
199
166
270
135
218
196
211
191
214
229
164
167
145
153
174
163
219
190
226
178
142
240
211
222
161
160
259
186
89
208
145
222
153
245
166
203
202
162
225
219
231
165
128
164
178
234
179
220
196
199
205
244
211
198
199
167
211
200
247
203
229
127
227
248
227
179
147
182
232
193
178
234
189
183
158
184
219
163
231
224
142
191
170
148
224
254
244
188
231
199
223
213
167
225
181
191
232
232
188
256
166
228
232
194
175
227
176
189
181
264
261
181
191
138
163
198
177
186
206
236
210
180
265
169
196
178
159
196
183
270
211
150
223
251
182
195
231
207
215
226
254
166
166
184
203
181
163
224
204
214
233
161
213
167
164
201
255
194
222
184
154
203
241
144
157
155
198
207
166
246
166
224
245
170
166
146
285
194
149
210
263
217
196
153
217
231
188
176
241
195
214
197
142
237
124
237
255
224
237
141
224
151
190
215
210
196
239
154
161
125
210
131
169
211
157
181
220
195
211
210
218
212
247
230
249
216
196
224
167
156
242
217
232
148
202
183
170
206
242
139
232
221
165
208
229
155
216
252
207
156
203
255
247
201
208
217
149
145
188
243
181
211
146
216
194
158
163
231
202
127
225
169
218
168
195
251
156
190
198
188
243
263
261
235
176
173
188
189
205
252
186
195
204
192
188
189
225
213
211
227
206
221
191
205
233
156
243
139
188
212
214
220
206
209
224
193
184
189
170
217
210
194
225
249
221
188
236
167
244
218
171
221
216
206
185
198
187
184
106
174
179
193
180
201
211
257
233
215
208
227
248
176
206
228
192
252
225
198
219
145
183
213
139
248
230
250
213
181
201
274
175
241
170
204
246
151
263
192
196
222
158
123
230
128
243
194
233
196
163
168
178
204
168
241
222
217
187
213
208
136
155
195
189
176
200
197
239
215
198
269
192
175
110
158
221
151
214
153
154
147
184
218
166
221
232
225
192
187
212
228
241
233
259
219
188
156
194
211
240
221
233
234
257
137
223
178
236
159
135
237
177
185
224
204
209
161
261
190
199
240
202
221
206
222
197
253
188
198
200
187
179
188
207
202
211
210
229
245
177
208
171
131
222
232
195
175
149
210
169
165
204
205
184
253
170
123
172
257
172
237
134
218
214
171
205
204
192
236
195
222
224
199
205
224
234
185
243
193
189
209
187
244
170
209
211
240
215
206
187
234
126
185
197
246
226
220
185
236
158
227
239
169
182
194
203
222
197
170
275
218
174
137
234
206
157
188
206
227
208
199
219
247
203
179
126
183
250
204
110
163
194
196
212
177
210
131
232
199
238
162
180
170
238
129
179
193
212
223
212
172
255
209
172
190
185
185
135
163
191
223
197
190
118
227
181
229
245
144
150
243
235
254
209
200
217
187
229
173
216
207
251
178
178
209
157
187
161
254
188
205
202
184
203
185
186
195
251
157
177
146
247
221
166
213
147
247
197
153
187
216
230
240
267
232
207
224
205
173
216
273
238
230
173
216
158
238
133
205
232
240
191
237
188
230
226
188
189
184
184
157
261
224
238
187
200
158
198
176
201
207
214
192
257
213
178
180
193
165
147
174
202
196
196
195
210
149
170
209
220
225
235
196
182
179
126
161
197
220
215
173
148
185
202
193
223
162
164
234
224
194
170
223
211
194
182
217
201
213
197
247
257
187
179
144
227
222
240
254
211
224
284
201
189
189
193
242
236
190
224
167
271
210
199
233
218
145
138
259
219
184
179
223
177
200
139
161
232
151
266
236
262
176
170
216
177
215
206
239
218
240
211
209
201
183
222
190
180
272
177
169
188
182
200
240
137
234
186
173
244
195
204
217
234
288
211
189
188
198
204
168
183
188
189
245
196
223
195
166
190
195
162
254
194
190
183
179
222
173
170
163
237
161
201
197
224
258
165
211
137
188
209
156
202
230
228
211
208
208
184
231
160
223
217
201
224
181
144
166
155
202
165
184
208
196
135
206
130
260
141
283
191
229
239
211
161
155
191
246
204
170
154
174
200
168
192
170
184
159
231
210
215
239
252
161
150
180
191
215
247
193
214
230
213
183
219
182
174
247
215
197
232
189
174
144
262
270
188
193
211
185
194
174
228
201
195
173
182
202
204
191
213
225
221
279
175
198
116
196
169
146
215
206
211
207
230
209
168
208
192
133
194
140
194
200
185
196
150
170
219
125
221
157
133
249
208
186
194
105
222
158
211
185
197
190
208
163
245
162
167
217
212
244
246
141
195
193
231
280
199
210
178
261
197
237
128
193
199
186
249
219
207
209
168
231
137
169
176
238
227
184
188
210
221
190
222
161
179
240
283
255
252
147
214
193
190
225
261
230
181
193
223
213
260
187
174
177
216
206
136
199
217
212
135
214
216
240
195
148
198
191
144
242
165
237
147
151
228
244
229
225
186
191
215
200
250
237
219
254
207
233
203
166
162
200
246
237
167
258
181
164
164
134
188
221
216
197
209
210
220
232
215
204
194
185
152
164
154
193
260
208
193
184
156
217
168
240
263
146
189
197
251
152
205
159
149
178
233
211
246
189
136
168
186
211
160
260
171
202
222
208
184
164
189
175
218
216
195
183
226
206
211
256
210
151
244
241
178
207
243
211
237
187
223
199
230
196
213
191
214
173
259
173
172
214
256
226
176
169
216
167
165
153
235
203
246
186
220
206
238
218
217
132
283
149
206
230
215
166
188
231
211
216
229
141
190
159
171
188
201
219
155
164
201
190
227
230
172
173
181
182
145
215
187
138
257
169
213
182
218
173
178
233
238
272
95
165
139
172
192
234
228
240
207
200
228
203
242
141
176
192
223
194
195
149
191
230
207
204
225
149
266
208
196
231
225
207
160
183
219
245
174
171
210
220
208
213
169
232
195
214
161
177
194
210
302
288
239
163
150
233
93
171
145
272
249
240
202
240
183
215
182
203
242
143
206
179
229
171
244
185
228
250
194
171
212
242
198
143
169
207
203
193
138
196
275
180
189
227
208
196
189
204
254
216
232
227
242
237
237
188
217
248
172
193
189
184
133
178
192
154
170
232
173
180
152
264
208
255
247
89
158
210
192
223
210
222
233
222
206
246
234
176
153
245
219
251
210
208
158
227
155
177
205
150
232
168
178
169
158
183
202
215
228
191
236
205
287
165
202
245
189
199
229
185
178
203
155
206
226
235
205
223
244
160
204
213
236
234
225
256
192
189
143
229
195
122
224
148
139
213
214
180
214
199
183
146
264
86
270
176
222
159
189
204
245
232
189
190
206
196
263
200
164
174
165
209
160
196
165
224
118
263
209
218
211
175
195
211
318
173
155
181
214
163
206
169
288
248
193
182
258
241
200
151
242
228
167
240
250
183
214
187
214
165
206
223
156
134
190
141
162
282
162
198
176
209
184
287
150
173
172
192
193
140
211
131
193
215
219
263
156
237
208
140
220
138
216
212
193
221
261
242
224
220
241
164
193
212
225
202
226
189
190
190
223
227
192
227
240
219
212
178
205
121
225
224
257
254
208
212
193
153
184
196
210
195
234
179
191
174
202
200
202
174
162
162
178
270
208
224
198
226
227
179
171
219
237
263
175
222
209
240
200
168
226
177
279
197
116
179
204
193
238
216
213
179
220
215
212
193
255
175
183
202
202
187
193
191
246
177
162
231
130
233
251
210
245
213
168
196
152
176
203
254
178
179
178
242
150
243
255
197
134
191
165
207
149
164
254
258
187
198
225
245
184
162
213
117
219
226
216
198
228
189
131
204
171
223
241
201
165
189
218
163
171
145
178
240
146
179
207
208
241
225
153
197
212
183
180
229
182
186
150
212
225
232
143
202
206
179
184
209
202
128
188
184
206
242
214
161
174
185
175
237
183
192
155
170
190
153
201
210
200
206
232
199
200
236
262
224
224
200
181
206
128
162
204
177
244
155
221
167
219
235
139
177
219
179
207
167
255
249
194
179
178
215
183
194
207
202
146
146
259
251
150
203
163
235
152
161
182
232
210
169
100
179
183
216
231
270
191
207
179
150
242
197
197
194
223
241
219
228
217
159
232
199
186
201
268
218
151
176
245
226
251
162
203
264
250
214
181
154
206
240
237
170
217
205
215
163
200
196
139
167
198
146
159
195
246
199
234
199
181
190
179
188
222
148
172
199
172
229
146
163
225
168
192
166
199
237
244
178
183
182
143
194
120
154
217
205
187
226
233
211
254
135
231
164
198
257
203
204
224
182
195
171
194
164
223
189
192
149
159
241
189
145
153
163
132
187
213
180
147
229
173
195
194
223
162
205
190
238
169
196
234
241
192
204
198
192
197
199
200
221
153
191
199
237
202
136
183
144
157
235
223
255
165
191
177
188
225
223
249
264
194
208
196
176
175
223
171
226
172
214
166
189
204
218
216
170
247
153
133
226
143
180
174
227
179
221
140
185
209
195
213
250
212
228
206
234
183
167
180
176
192
238
204
198
193
196
237
244
215
160
169
225
238
203
260
211
281
178
212
234
222
134
173
196
200
219
184
196
234
177
243
207
227
167
231
190
179
180
147
175
197
161
215
190
243
203
106
263
195
207
181
236
174
125
196
151
221
168
244
145
136
260
202
178
144
245
170
210
177
182
184
252
234
184
229
193
218
200
214
192
219
192
142
211
204
205
208
205
131
191
250
203
171
187
163
174
141
211
170
208
238
211
214
167
199
250
229
166
135
205
231
216
132
203
195
166
194
198
173
126
199
168
212
210
138
157
193
150
222
232
154
234
137
203
104
229
212
221
214
167
143
155
214
216
250
223
173
226
150
162
262
173
206
190
196
193
196
263
195
246
164
162
188
218
223
197
226
195
183
217
173
248
183
233
190
179
211
199
222
209
249
223
226
223
219
225
270
256
194
223
152
198
199
222
182
151
159
254
183
236
213
206
197
216
200
169
191
196
176
198
136
184
215
178
182
158
172
261
164
252
209
229
224
172
152
152
258
160
239
179
179
221
205
230
176
201
180
173
169
270
169
251
207
212
168
218
186
222
182
195
261
239
223
238
203
202
165
219
179
205
199
215
219
187
175
192
216
195
202
189
237
184
232
245
156
176
172
202
199
247
207
169
155
228
215
213
281
173
169
225
234
245
208
218
177
213
250
243
183
196
174
160
232
242
163
141
184
231
184
200
177
177
186
217
219
225
222
191
179
125
197
228
203
174
266
228
178
171
210
251
156
177
234
236
173
174
173
218
188
218
226
200
235
182
238
244
198
180
233
118
204
183
150
204
197
202
271
242
216
220
136
222
233
179
165
224
231
191
170
203
202
201
190
219
252
174
204
159
170
227
168
219
228
139
205
228
205
221
197
122
197
198
144
191
209
217
203
230
189
269
217
175
209
213
247
178
194
231
218
212
221
238
172
167
236
239
166
193
212
248
258
241
163
230
177
205
209
203
98
227
169
214
224
225
227
198
189
157
228
230
239
225
156
169
208
174
138
221
147
231
159
194
188
246
161
118
180
177
263
137
198
198
188
199
225
158
181
203
163
141
190
175
240
213
218
228
160
210
192
176
191
215
185
201
187
161
213
224
260
198
113
226
201
152
205
174
194
185
210
217
270
203
195
157
143
217
208
242
200
194
216
191
196
203
175
184
160
206
137
175
208
202
186
200
198
211
221
203
213
244
156
231
153
230
220
228
182
240
212
208
220
156
101
184
165
147
230
189
229
126
207
210
202
200
176
206
171
154
222
181
195
155
225
163
236
266
204
234
236
191
262
201
204
231
192
151
196
205
222
199
193
205
198
192
237
189
160
251
198
197
188
252
186
219
165
198
220
194
255
228
173
215
220
237
203
202
178
231
209
193
210
233
214
189
156
199
251
233
179
231
205
223
203
232
146
201
235
213
162
142
182
134
186
200
139
190
226
115
208
239
165
262
211
223
248
210
163
194
212
209
177
198
220
162
219
192
190
201
213
186
193
216
231
211
179
216
195
164
184
164
216
198
259
195
197
203
140
177
155
186
149
138
126
166
191
267
178
158
213
244
198
144
222
215
210
243
239
239
167
205
193
212
224
216
169
192
189
245
216
163
213
191
246
192
212
231
240
186
133
184
201
196
221
171
220
239
197
210
200
218
249
153
193
194
183
204
144
192
196
210
192
215
187
219
224
150
214
159
227
189
199
264
219
184
185
247
221
245
167
150
157
223
241
228
197
195
231
238
164
161
173
179
257
174
133
246
248
182
138
185
179
202
282
255
206
206
209
184
206
202
225
211
218
217
193
264
199
206
185
246
160
250
207
212
224
234
248
182
198
203
182
219
194
258
200
229
217
213
220
160
259
186
226
104
153
212
182
177
162
234
231
175
178
230
236
176
211
175
231
200
146
241
218
219
165
229
250
181
176
230
195
171
173
182
191
166
252
212
193
214
211
242
179
231
221
242
190
221
205
234
199
158
214
180
223
202
233
230
149
188
170
242
175
230
194
231
195
255
237
163
183
189
210
225
205
183
220
212
202
136
182
172
144
203
204
182
230
190
241
226
188
260
143
179
185
228
149
218
215
163
271
147
207
248
209
222
159
132
133
209
270
253
231
151
172
122
184
193
228
148
207
248
221
175
216
175
259
162
270
180
175
200
182
235
181
277
182
207
201
182
216
222
163
191
192
190
158
200
251
186
93
218
164
233
249
207
232
181
126
252
227
216
207
211
169
195
215
210
219
229
188
201
261
258
217
194
190
152
198
183
160
196
198
189
169
230
199
164
131
153
202
218
170
201
193
184
200
259
150
289
218
200
150
218
221
228
179
180
229
218
207
123
232
152
194
218
175
229
214
234
193
190
197
159
214
206
212
164
207
196
167
254
200
150
143
185
186
189
218
231
219
197
213
189
189
185
166
223
157
210
210
233
211
221
169
186
183
162
204
203
146
222
187
175
204
240
174
179
260
147
230
175
128
141
212
213
137
314
207
235
212
225
198
258
162
216
235
215
188
264
202
228
218
176
198
170
213
226
193
205
190
150
205
189
253
218
192
183
143
233
143
211
208
203
200
217
150
219
224
217
211
243
208
233
214
239
219
171
145
173
182
160
223
217
168
227
149
261
214
162
189
208
243
166
225
169
130
198
208
215
200
198
182
155
225
126
173
177
256
213
195
214
211
173
202
187
223
209
180
207
137
204
199
190
205
180
104
189
171
224
251
239
214
171
238
147
226
169
212
216
205
223
180
154
194
241
175
179
228
234
262
219
191
237
161
163
209
172
279
170
208
191
210
236
240
194
202
220
169
211
233
184
185
158
187
210
248
202
215
231
178
185
282
167
154
203
168
210
202
237
207
230
216
227
208
265
198
171
240
218
207
238
262
224
242
224
185
218
237
191
149
229
227
139
131
182
161
172
209
215
212
190
198
247
217
200
214
224
175
197
196
192
200
221
181
248
224
163
242
185
211
208
174
187
190
277
160
235
205
182
197
218
211
133
180
219
237
228
182
233
182
205
187
179
167
205
224
206
156
160
191
242
213
224
158
230
251
198
127
188
221
241
246
172
169
229
152
197
190
185
150
229
233
207
201
157
162
233
239
211
195
231
197
247
188
178
239
204
185
228
224
218
224
264
140
167
104
223
191
218
201
227
192
212
156
155
222
182
218
205
221
247
235
213
164
203
222
150
220
188
173
151
144
235
225
133
172
219
203
173
237
131
189
182
218
172
198
180
209
275
213
189
236
195
229
208
200
229
201
209
170
259
233
187
209
145
215
203
177
155
195
270
228
200
259
175
201
223
137
265
203
232
189
232
147
199
220
219
257
203
200
215
222
266
259
160
203
182
241
146
229
210
140
211
246
196
121
195
176
166
165
233
196
150
251
139
148
258
250
203
157
284
157
196
233
236
280
186
177
202
165
117
191
173
163
201
204
205
176
173
143
207
219
166
202
258
224
147
166
255
180
191
235
242
120
230
135
240
197
144
183
251
200
165
244
212
214
210
199
174
185
236
222
135
219
271
155
183
188
137
187
197
172
149
220
212
251
238
179
224
239
158
210
169
230
236
197
168
232
187
202
208
252
228
222
162
207
269
275
245
209
200
232
211
184
190
199
265
186
204
185
190
228
133
221
126
192
181
241
214
240
187
205
157
220
167
234
158
206
199
234
240
212
198
158
200
179
182
213
220
194
194
216
149
132
115
218
187
264
252
179
210
202
249
196
207
118
242
163
168
212
205
177
185
268
226
205
185
245
237
241
141
254
207
154
217
181
160
174
219
256
226
232
229
241
150
222
216
206
261
192
210
225
151
259
219
187
196
255
242
221
208
237
136
144
198
183
244
232
187
196
208
203
212
162
240
179
198
223
207
168
204
177
130
217
224
160
252
204
275
186
196
217
241
211
239
189
206
199
306
165
217
211
209
187
206
221
250
204
242
234
235
117
257
206
179
246
217
200
204
221
187
173
236
232
214
139
263
212
210
208
207
192
163
225
164
187
229
184
150
213
238
173
216
191
161
223
248
194
141
202
173
222
234
156
200
236
229
149
197
215
183
123
182
168
242
162
180
211
245
207
233
219
205
229
186
232
209
113
181
187
176
191
173
236
233
160
200
191
224
211
144
202
205
199
181
214
215
187
227
185
204
189
209
169
205
214
205
200
174
220
112
188
201
190
193
221
189
218
214
167
174
153
141
274
195
258
240
232
169
175
225
200
212
165
166
211
168
219
185
243
227
145
231
176
200
229
228
216
220
191
194
214
203
231
228
217
208
229
214
181
153
225
241
180
216
126
144
256
177
202
182
146
197
202
219
231
175
229
206
182
154
187
171
190
246
172
134
190
207
183
182
146
207
192
185
235
165
207
219
222
200
205
201
218
207
153
214
164
188
167
217
265
177
207
159
215
230
201
229
185
151
170
186
226
219
231
196
191
259
161
215
189
208
190
217
200
173
213
245
260
241
186
147
179
188
181
166
198
149
253
147
216
228
195
248
138
163
215
225
148
199
185
214
187
190
145
180
197
169
195
224
190
221
195
183
243
202
182
201
227
188
137
209
225
203
150
228
136
113
181
210
176
161
272
184
277
227
203
179
235
193
147
223
198
229
150
126
274
207
208
221
164
136
179
209
226
264
160
230
225
239
233
226
160
187
177
204
183
145
270
180
169
245
176
206
237
211
251
240
141
204
273
239
209
211
171
202
134
241
228
222
193
230
153
153
193
179
257
238
177
202
193
160
195
194
146
205
178
193
219
127
175
166
151
211
212
188
232
184
189
185
239
219
165
191
207
220
193
172
229
140
249
181
241
150
157
148
201
259
163
202
146
179
232
230
217
196
241
197
171
158
203
226
206
202
142
218
231
224
156
318
285
211
215
147
269
230
147
241
204
159
205
237
180
225
212
145
186
166
270
148
214
228
220
252
218
161
228
175
155
149
194
193
213
145
219
234
223
242
242
180
164
213
134
214
253
188
173
226
221
183
213
188
216
218
151
194
213
181
213
201
174
247
189
199
249
154
203
114
202
185
188
207
217
170
252
173
229
194
235
151
196
254
228
125
227
220
156
154
222
215
187
184
180
223
265
152
248
223
150
208
187
183
189
168
215
258
224
185
201
163
198
217
237
243
227
202
206
247
191
168
181
218
175
164
192
202
155
133
260
179
207
183
181
199
242
203
230
116
183
189
179
222
162
305
209
248
177
206
185
231
225
254
207
203
199
184
181
208
243
179
217
211
198
226
211
134
223
164
268
177
192
211
203
136
173
226
255
170
211
233
150
208
204
211
111
234
240
230
198
205
195
176
188
242
227
198
214
173
215
179
229
145
154
132
220
217
197
164
220
209
214
202
231
188
181
262
164
185
162
228
192
197
199
134
176
238
226
195
190
138
244
243
207
236
180
167
241
246
270
232
186
235
223
218
203
166
180
159
149
150
199
213
216
140
202
123
160
121
157
146
231
269
242
143
220
249
212
215
225
159
224
178
259
226
196
183
187
212
263
221
195
185
214
204
207
226
202
196
231
218
186
185
139
262
190
185
177
131
228
164
235
184
235
254
183
157
217
192
169
247
210
207
136
214
237
209
282
241
216
204
152
248
191
173
217
190
183
215
151
159
235
193
160
204
248
200
241
164
249
258
209
259
159
166
217
174
220
124
130
184
192
194
227
176
218
186
217
196
251
222
191
189
161
226
166
236
245
238
198
217
216
191
209
224
133
204
178
189
200
185
242
255
238
240
206
233
241
228
202
142
205
200
205
217
181
199
200
175
252
217
192
159
190
194
245
203
242
177
238
164
166
238
220
204
139
193
122
218
201
162
200
209
230
176
172
230
130
201
258
261
95
185
185
249
222
131
202
187
158
141
206
245
196
174
196
269
227
195
175
186
177
191
148
196
146
194
176
196
209
212
195
170
166
230
220
217
145
191
217
149
161
194
281
210
203
182
138
274
189
203
146
228
202
210
173
223
155
204
219
248
247
236
200
214
207
239
231
200
167
206
252
173
149
155
161
197
179
237
175
201
230
202
210
169
152
162
200
191
119
164
208
217
152
262
179
190
158
164
183
181
227
207
191
231
162
258
163
223
239
186
138
213
161
217
206
187
170
186
169
200
214
190
173
200
135
129
203
205
222
213
163
198
151
202
149
263
200
217
225
214
229
200
178
167
182
185
143
224
218
187
245
174
91
166
240
170
215
205
249
164
211
183
179
176
232
192
223
246
244
217
186
249
204
174
176
195
206
153
231
227
254
166
204
211
240
273
240
263
174
193
222
194
256
155
171
187
209
238
172
183
171
212
226
214
158
262
165
228
212
174
213
191
249
222
199
181
207
186
186
140
210
186
168
212
227
177
145
235
164
204
210
227
181
240
163
194
259
204
229
176
184
266
183
191
226
192
223
166
244
184
244
188
192
165
257
220
266
182
226
166
160
184
196
229
200
243
181
263
171
184
180
183
217
233
134
160
198
181
205
183
204
242
192
160
237
173
153
167
165
187
234
184
200
178
205
186
210
233
209
219
217
205
229
181
228
186
220
196
232
221
166
219
121
218
165
201
182
197
243
192
168
205
177
249
142
176
159
209
181
159
241
188
195
196
134
224
166
160
179
199
178
257
220
165
216
235
175
193
217
207
150
171
160
204
235
214
227
201
246
152
247
155
170
211
178
225
236
199
148
271
120
141
190
202
243
238
192
164
224
170
127
254
247
214
226
147
168
208
234
200
184
210
183
249
112
215
224
220
195
217
186
199
170
169
171
213
248
207
190
139
163
188
200
200
152
183
138
221
210
221
196
188
251
94
135
248
188
202
276
229
150
234
240
174
234
164
201
190
197
244
140
259
173
214
184
223
222
203
244
213
179
199
270
181
173
178
196
205
171
187
191
243
200
210
172
191
179
165
198
218
178
230
217
200
248
186
194
171
211
168
180
182
241
258
211
166
180
163
169
253
223
231
240
184
230
234
208
263
233
179
129
225
217
256
142
177
191
179
282
219
222
183
262
164
236
214
213
281
167
168
228
211
213
202
176
220
231
170
167
207
239
148
215
210
214
209
203
234
192
228
200
180
181
139
139
189
216
228
201
197
176
197
190
249
235
260
204
183
221
260
187
229
207
212
208
179
155
231
193
168
200
226
163
214
206
198
146
230
174
218
160
215
177
185
190
257
151
209
210
231
199
167
154
228
198
244
227
214
212
238
269
217
223
217
216
177
161
218
227
201
260
172
188
216
253
197
224
193
240
173
217
234
207
245
219
216
199
188
205
183
247
193
217
257
245
216
251
165
257
216
184
190
207
211
258
192
250
230
166
201
193
165
238
245
208
193
196
200
199
232
159
171
202
223
208
188
154
166
174
164
220
193
177
176
181
192
192
203
233
193
213
189
188
174
216
186
213
173
127
185
130
163
175
260
163
177
172
184
255
211
164
202
238
192
242
197
177
233
131
221
166
184
220
209
185
200
182
214
263
245
224
160
164
209
180
239
220
199
207
225
243
123
151
244
163
179
212
194
219
228
173
257
227
224
192
215
194
254
202
221
199
236
189
197
215
140
194
196
233
241
180
184
231
136
208
180
183
186
183
193
114
200
201
160
213
189
251
185
211
166
208
139
210
153
160
198
226
189
186
249
236
202
199
211
198
213
266
183
240
238
180
154
225
259
215
127
201
210
225
240
219
171
219
194
209
250
248
170
191
211
164
170
125
142
181
216
194
162
163
228
194
205
241
188
263
201
186
196
229
130
246
225
258
219
186
196
162
199
214
240
246
165
233
177
250
178
202
226
164
129
221
207
215
208
222
220
201
143
239
230
153
225
215
224
194
236
158
217
249
218
192
265
161
223
221
210
240
138
233
177
148
201
204
167
117
161
155
238
189
192
192
226
186
254
229
195
184
146
109
226
207
172
207
252
192
240
167
157
175
248
178
172
186
180
140
151
231
124
188
182
231
230
232
229
139
214
224
163
273
217
168
133
154
208
200
197
214
235
205
170
168
209
204
214
193
218
196
251
187
242
205
240
77
234
211
185
233
204
219
228
195
221
210
181
224
218
185
199
188
206
197
191
256
134
157
236
203
167
155
220
191
166
200
193
209
250
242
215
130
155
265
155
214
137
179
174
206
223
187
192
114
230
221
153
193
154
197
206
165
236
205
171
200
242
112
167
142
239
229
239
259
208
248
188
210
262
227
141
118
164
149
195
277
228
154
163
219
99
231
235
202
155
156
218
203
248
221
184
160
193
180
198
199
204
232
206
191
145
225
217
252
180
145
245
199
255
184
234
161
246
208
201
213
199
176
204
245
157
272
168
238
239
111
167
189
200
198
207
160
229
238
213
122
213
234
212
203
163
214
161
197
113
184
221
188
250
241
204
251
192
183
138
193
100
209
192
171
237
106
146
254
204
210
249
93
176
249
223
203
143
244
256
194
113
199
272
183
192
186
187
205
223
165
197
260
234
229
240
244
195
198
198
163
156
199
274
197
123
214
202
171
215
190
159
140
103
189
190
205
168
233
221
216
183
225
208
207
213
212
182
187
193
205
177
209
261
232
199
231
300
157
218
191
216
252
196
179
127
188
207
189
257
207
142
196
123
146
214
157
173
202
236
174
214
115
142
287
224
150
211
168
199
244
197
153
244
225
214
220
222
212
203
188
204
181
207
213
222
215
187
208
173
229
174
209
234
216
212
232
249
226
184
279
242
160
200
247
215
176
211
222
201
173
146
182
129
179
176
248
189
177
189
162
150
207
228
223
204
221
145
155
191
205
212
202
181
151
248
209
178
170
235
282
154
160
169
198
161
213
186
268
176
211
226
266
214
209
193
180
196
253
220
137
199
126
146
213
201
221
125
222
211
190
241
140
234
257
165
171
187
196
154
204
183
191
211
224
246
153
230
166
158
196
210
186
194
152
183
174
225
184
126
242
183
173
229
180
191
212
226
232
187
269
178
150
204
107
179
245
213
166
168
225
162
226
230
243
234
138
208
229
157
192
180
198
217
180
238
203
170
204
201
179
215
204
245
199
244
167
226
228
230
163
196
210
173
193
203
158
199
202
188
171
186
216
195
182
261
188
171
193
155
207
116
174
204
174
149
186
197
130
183
212
252
194
210
239
247
218
228
94
259
144
239
229
227
193
186
170
236
202
241
187
200
218
185
241
244
189
213
187
192
187
197
200
243
224
198
140
163
172
132
239
182
244
171
180
135
191
168
153
169
195
153
208
160
166
271
196
207
210
188
170
231
247
211
183
208
236
200
258
174
235
179
248
197
171
168
208
206
231
182
171
172
214
222
173
216
210
184
208
181
211
230
238
188
294
125
252
206
204
190
242
149
224
173
209
117
163
224
195
261
230
183
204
213
172
134
265
212
190
208
194
159
210
232
160
236
213
291
241
174
245
253
229
226
180
188
203
205
219
159
157
219
259
246
208
168
228
271
243
207
196
140
231
181
249
205
183
221
236
190
212
151
164
225
226
201
202
219
181
160
161
161
267
185
243
204
161
244
183
168
187
183
149
166
204
159
194
258
175
207
206
226
189
279
199
220
203
193
230
142
190
259
168
155
184
209
232
194
222
190
269
258
244
192
240
222
176
240
211
152
226
101
225
188
184
258
210
191
213
217
246
204
168
195
243
230
143
197
222
162
196
191
221
183
192
155
144
237
172
194
239
217
199
158
191
152
271
198
206
195
146
222
195
213
205
246
213
209
205
168
203
198
223
180
243
204
225
124
193
259
214
238
185
169
240
224
202
205
225
180
151
206
262
202
216
226
213
186
236
211
175
192
180
213
187
257
172
226
240
250
235
189
241
244
218
197
170
166
194
195
210
218
193
272
171
208
232
214
189
205
192
151
241
151
189
214
179
183
167
181
199
159
221
200
227
106
195
212
171
218
227
213
225
210
224
253
239
198
208
194
233
189
222
189
203
259
184
198
200
223
235
196
241
232
219
247
194
235
164
213
216
174
242
227
243
179
185
211
180
193
209
216
201
187
237
137
243
168
203
172
189
139
198
190
221
168
218
185
212
241
233
216
245
171
182
207
152
213
181
224
236
192
229
193
170
194
202
214
219
238
153
144
141
185
231
238
238
171
168
246
198
215
191
199
171
162
209
213
164
199
208
117
179
214
211
173
206
234
212
168
183
207
189
138
182
214
216
231
245
190
254
191
178
157
126
202
249
134
215
163
211
246
230
151
177
243
206
245
221
174
227
170
201
253
239
227
172
205
172
209
190
133
222
156
231
144
134
227
244
238
134
230
241
201
197
191
211
226
214
125
210
252
210
154
214
200
258
200
163
185
228
226
219
228
169
162
165
192
167
176
182
221
230
223
206
173
218
227
223
200
153
202
284
153
123
244
219
154
159
197
169
185
142
211
171
224
221
219
168
237
207
194
225
202
123
203
207
190
220
297
136
189
234
208
230
172
231
169
178
210
170
190
205
192
158
226
125
197
252
187
187
135
227
228
203
189
217
218
245
212
240
174
198
196
223
200
176
164
197
131
182
198
193
188
179
209
235
213
174
153
205
162
196
199
158
178
202
202
231
184
179
180
221
185
129
246
192
217
241
164
225
193
210
154
223
214
216
157
192
201
245
164
154
209
220
229
175
238
182
218
201
284
188
216
165
204
176
199
200
252
193
124
196
205
190
197
233
215
202
190
124
175
212
216
186
145
170
195
187
194
214
243
228
208
256
201
214
173
178
224
262
239
181
204
146
174
242
231
229
168
252
151
198
185
146
218
247
181
254
188
184
196
216
184
179
133
224
267
237
170
183
203
219
222
145
220
201
216
199
187
245
180
204
175
184
216
158
160
194
185
255
174
220
261
231
223
182
161
155
208
187
245
184
191
225
178
216
194
155
136
194
176
204
174
237
218
266
235
228
202
214
188
215
247
248
197
232
208
230
206
240
213
221
242
175
152
204
165
274
224
176
217
229
216
218
215
222
228
226
145
164
166
262
190
217
232
194
225
177
228
247
168
224
119
154
224
198
240
246
260
170
154
245
205
224
247
207
160
177
217
170
182
206
228
191
176
186
180
160
244
248
177
243
205
189
245
191
150
210
217
175
176
170
162
193
261
258
222
264
169
250
188
183
171
168
145
187
212
195
184
217
216
232
179
220
205
198
165
187
181
214
132
171
255
212
279
174
251
190
172
227
190
212
195
227
202
248
149
219
257
184
193
228
229
204
154
303
225
207
230
164
192
192
203
202
237
228
181
168
231
193
149
221
220
195
205
193
233
168
185
238
168
195
197
253
210
202
183
260
254
135
198
181
182
183
198
166
255
189
187
210
225
207
138
166
151
153
178
207
190
164
243
221
202
172
230
148
203
196
224
259
152
211
157
183
193
206
183
222
212
216
181
261
203
208
221
220
103
164
187
221
194
229
241
193
192
182
128
209
197
169
216
186
220
240
205
215
221
147
202
210
225
221
214
177
199
195
273
204
214
162
195
219
209
214
148
206
201
148
171
169
167
163
226
201
243
184
197
179
144
158
252
179
203
238
183
181
237
170
215
248
176
222
197
238
166
214
190
209
200
238
218
222
145
159
231
210
218
152
234
204
236
208
192
213
205
203
217
135
196
218
222
173
185
189
200
220
230
178
164
160
239
168
236
180
247
235
181
184
243
207
211
169
172
203
208
211
210
195
184
191
152
197
231
187
207
214
185
176
213
221
207
238
261
177
165
186
230
207
232
169
237
204
198
265
186
156
186
257
243
154
152
169
228
205
160
230
162
226
172
202
207
222
145
184
236
190
158
177
201
210
175
220
210
187
211
200
202
177
156
251
196
205
230
145
221
170
206
191
161
179
198
158
208
179
168
190
226
198
232
231
270
194
178
208
219
186
188
191
213
177
245
241
212
181
178
206
168
154
169
183
140
208
177
219
248
203
221
271
215
177
191
228
174
243
250
210
213
235
159
156
198
191
260
197
181
145
219
188
222
203
198
151
213
212
232
237
201
172
166
150
199
254
162
219
198
224
194
186
203
178
151
274
193
193
177
180
154
185
244
258
213
164
153
212
268
216
207
206
225
216
211
137
174
223
164
163
157
201
188
202
214
224
206
200
234
196
221
169
163
196
186
191
190
212
196
175
221
227
216
199
227
208
187
215
262
215
143
236
189
217
234
203
218
177
206
199
219
182
158
178
155
249
218
251
199
178
223
138
194
237
191
180
171
228
198
166
199
246
134
243
193
129
216
209
284
143
211
224
172
202
225
234
261
211
180
251
217
187
245
212
215
275
192
197
215
232
208
182
187
217
205
231
134
206
137
273
153
251
195
185
212
185
226
185
202
185
232
271
221
241
181
242
223
178
238
197
202
143
162
219
219
196
213
210
281
181
205
207
190
231
203
158
194
177
178
139
213
180
202
193
134
185
263
127
238
188
180
209
241
180
221
233
203
198
200
180
164
179
154
146
219
192
186
176
164
244
202
220
185
194
169
224
229
243
150
166
111
246
156
162
157
229
246
215
204
177
180
201
206
162
168
201
155
165
193
189
186
128
167
250
189
195
221
216
198
144
222
225
166
215
195
183
276
112
231
153
118
193
210
231
205
215
250
266
205
257
185
189
216
157
184
172
221
268
193
215
197
201
201
238
188
198
186
223
156
188
171
233
208
241
203
107
158
262
185
199
201
206
181
217
220
225
205
203
192
215
190
218
172
229
202
243
164
181
164
229
144
278
181
180
156
214
178
161
230
155
187
157
168
171
221
162
222
195
186
233
233
215
183
161
239
230
213
183
230
135
136
197
233
219
221
200
138
133
236
229
180
193
196
158
147
176
251
202
143
243
106
179
259
164
151
194
128
197
227
226
157
182
194
217
185
156
201
199
208
150
200
209
192
224
193
211
211
128
237
261
252
131
223
248
199
237
200
281
207
223
184
260
224
186
235
186
188
231
170
153
207
180
169
225
202
235
194
200
121
158
171
138
216
184
220
252
202
187
207
208
159
189
157
159
178
181
227
192
185
193
201
225
174
243
258
177
209
233
187
247
218
197
210
227
201
227
144
169
224
231
204
214
197
195
219
196
202
243
234
210
190
224
212
229
237
280
207
193
124
217
176
177
232
172
165
202
263
161
244
279
237
228
158
214
222
238
218
188
216
219
240
206
176
240
198
249
151
178
228
191
215
231
222
234
164
228
247
225
222
210
233
205
184
214
211
219
144
197
253
232
210
231
124
179
207
166
253
184
211
201
172
248
197
176
183
122
223
153
184
228
221
187
191
239
242
276
203
192
196
228
201
196
235
245
185
186
219
179
129
225
228
174
220
156
216
255
265
168
202
255
183
165
141
181
148
220
182
170
198
179
170
152
169
155
204
241
198
242
188
177
225
187
200
142
213
172
262
220
167
156
246
211
193
148
194
182
169
255
202
205
262
182
219
221
160
230
203
207
171
172
168
177
151
227
209
198
238
218
234
219
228
253
182
235
298
240
213
182
163
194
158
155
237
207
217
198
186
141
249
136
223
198
211
171
211
164
220
228
175
172
210
238
123
187
206
224
203
202
249
287
234
201
221
231
202
211
244
184
197
169
198
209
188
210
169
201
170
216
224
221
226
242
230
196
223
157
266
141
242
191
201
220
116
192
187
187
250
225
206
193
120
221
188
191
250
145
215
176
198
213
211
250
158
183
225
233
119
162
158
197
153
196
187
149
203
171
219
229
198
172
167
248
212
209
173
205
182
172
151
191
198
193
264
184
148
157
196
213
273
206
196
192
211
229
259
199
136
145
237
210
191
234
169
188
207
282
216
195
201
234
221
140
186
221
196
185
232
232
238
173
182
214
232
254
251
181
241
177
212
171
186
201
152
126
224
231
213
216
152
242
164
185
206
190
182
180
219
192
170
183
238
144
156
202
164
253
241
239
209
183
164
263
175
211
154
233
185
260
282
146
227
192
186
193
232
172
228
202
184
248
214
189
203
237
227
174
247
242
272
253
185
209
200
181
201
171
232
105
137
198
177
230
173
181
258
176
180
202
180
264
221
193
242
173
195
169
217
197
164
202
234
141
252
255
218
222
138
227
241
194
192
165
225
184
221
220
173
207
197
121
201
202
184
168
218
221
241
235
151
182
188
189
223
213
165
183
261
197
228
225
182
155
180
195
178
188
210
218
232
135
242
183
114
223
183
197
224
215
214
170
189
226
180
209
149
193
204
183
112
175
155
213
203
205
188
189
189
218
240
211
213
235
229
204
147
210
217
164
211
233
177
180
241
174
160
236
205
248
202
219
184
174
216
176
193
157
144
217
202
198
153
117
184
164
179
249
174
207
257
211
205
139
186
188
210
139
183
162
191
172
172
248
211
201
152
176
188
184
184
207
194
212
208
252
188
192
170
217
233
217
230
197
193
215
229
231
193
222
234
261
180
199
241
254
162
220
211
176
163
158
206
183
209
174
232
211
228
206
238
124
194
205
217
201
185
209
203
205
169
195
248
198
221
223
164
123
221
200
207
235
220
209
183
190
131
218
209
190
233
234
239
234
128
237
210
167
221
185
196
207
206
160
205
201
204
233
223
240
199
206
171
159
309
218
200
197
208
218
172
195
204
225
171
212
220
231
247
229
173
216
197
209
248
207
161
171
193
145
218
240
213
221
148
198
202
181
227
241
199
216
225
210
183
161
232
179
145
172
231
212
167
250
168
229
265
171
214
210
194
229
196
190
200
146
218
95
224
181
214
205
237
203
222
155
202
270
166
218
195
248
213
160
183
226
240
134
191
213
113
147
215
202
108
149
210
183
195
184
188
191
156
251
258
180
168
180
162
179
214
163
250
92
159
246
101
156
167
231
136
168
241
207
197
204
163
212
151
210
184
269
189
228
149
182
202
143
202
232
171
224
194
164
188
232
223
150
234
218
196
143
269
172
160
186
231
166
201
189
134
176
177
229
234
128
237
147
170
194
225
200
213
188
225
275
228
143
225
198
190
199
209
259
193
167
229
211
170
216
187
230
167
243
235
206
209
166
206
190
147
251
228
187
219
186
233
197
208
217
232
173
191
236
162
197
247
172
257
132
224
145
179
229
135
237
194
219
215
210
153
190
195
219
182
204
189
212
245
237
163
195
211
196
166
174
155
273
195
203
223
171
274
111
245
204
301
258
242
208
138
180
209
236
193
163
203
215
168
235
206
138
274
125
134
223
219
192
210
214
220
199
220
178
156
207
274
189
168
209
257
171
231
213
193
130
200
202
246
188
204
153
223
179
226
191
181
178
218
164
193
208
162
211
218
218
222
223
145
275
186
197
231
150
197
197
157
182
200
210
215
207
240
230
257
172
186
170
194
243
261
205
227
129
202
175
208
227
211
235
168
225
199
200
265
207
201
197
210
161
256
162
216
130
190
224
244
214
187
223
158
221
151
136
197
178
264
224
202
156
203
180
158
270
159
212
242
209
186
212
204
220
148
221
162
200
145
198
217
235
257
202
219
191
181
232
194
218
173
191
238
209
167
178
192
211
202
199
186
263
208
227
279
225
286
196
199
243
153
268
181
132
220
183
240
207
172
199
220
185
238
243
157
122
246
201
297
220
254
227
190
262
242
232
214
137
156
164
193
151
230
230
183
216
199
171
212
228
234
159
176
176
160
194
223
237
173
192
180
231
248
243
209
220
216
204
157
244
179
226
213
193
199
169
214
183
209
195
238
248
176
187
188
166
189
191
207
191
259
141
223
230
198
219
231
191
244
217
184
199
200
203
150
134
236
197
219
168
191
260
197
143
184
228
172
162
197
200
202
205
158
197
179
215
232
232
224
190
235
198
182
242
201
185
181
202
242
188
177
233
261
207
155
206
227
229
237
156
224
161
234
195
141
153
220
165
196
155
229
193
152
163
264
165
155
151
252
192
230
210
210
208
233
220
153
183
203
193
212
185
239
168
226
221
281
162
189
204
223
164
221
202
222
234
227
170
178
170
235
212
202
191
228
198
195
201
238
202
199
208
225
203
223
208
194
186
165
142
223
173
200
170
204
204
169
204
278
145
175
191
177
211
134
195
151
157
235
160
156
201
217
249
274
204
214
219
241
171
189
175
143
156
219
211
236
218
221
174
197
134
182
169
234
177
143
180
175
193
182
211
153
178
255
177
202
194
202
216
129
186
156
233
239
167
151
145
180
251
252
229
239
218
212
223
214
154
256
177
166
237
221
184
151
166
211
174
189
218
213
265
204
214
228
198
177
219
232
184
235
184
111
219
164
200
188
181
160
222
204
208
219
211
219
232
207
207
244
126
221
151
223
221
188
158
216
155
239
195
172
171
164
143
206
106
194
240
222
210
196
203
209
220
214
231
234
179
198
239
219
190
258
158
224
221
205
210
201
228
180
177
213
178
199
228
244
120
170
199
215
236
182
188
273
251
196
184
169
180
220
145
179
257
236
190
193
239
247
218
189
198
202
216
221
198
211
171
203
221
234
189
180
137
191
257
147
220
189
225
273
139
214
246
204
206
185
263
193
153
254
226
253
144
191
212
223
215
242
286
232
223
198
163
172
182
214
202
213
187
184
206
175
229
172
199
218
179
146
203
170
176
163
217
221
211
260
126
209
208
234
180
174
224
191
198
204
186
204
167
222
208
230
176
190
164
213
175
206
176
158
220
195
197
177
179
215
228
226
201
192
191
226
204
238
239
132
212
216
217
202
159
217
238
163
235
232
190
186
125
258
242
231
237
162
242
219
176
133
217
212
219
196
208
191
194
205
201
167
207
253
237
143
204
252
225
265
193
230
211
221
202
161
270
204
266
218
217
167
216
159
154
232
164
191
216
221
206
193
187
150
152
180
201
183
228
125
202
167
281
187
159
180
219
250
183
278
207
155
132
188
229
75
227
166
200
219
190
242
171
188
195
145
216
202
215
166
202
196
155
232
207
209
171
206
201
209
230
180
270
257
170
212
160
164
192
213
185
223
193
196
249
232
147
182
243
196
174
230
232
249
206
189
274
210
184
177
203
176
220
190
203
171
170
138
161
154
187
217
210
249
227
200
208
243
156
169
190
198
173
188
215
255
224
214
153
192
196
188
221
141
201
209
222
188
208
239
213
190
246
216
231
242
221
190
226
234
213
218
229
218
230
209
221
196
237
186
248
177
275
217
205
141
260
149
175
197
182
202
185
175
222
230
206
250
238
192
208
172
228
234
230
197
182
238
242
195
192
189
164
214
196
155
170
272
177
177
246
206
153
234
201
230
196
204
160
196
245
174
197
137
212
234
194
216
201
197
190
184
232
211
200
233
211
155
167
166
157
150
132
202
232
174
234
246
180
244
120
237
177
180
178
143
245
213
251
178
152
209
256
234
232
170
235
151
203
208
182
167
175
258
199
268
197
169
182
260
204
187
193
183
207
209
113
179
230
176
167
201
158
209
158
217
264
184
212
145
199
249
215
177
234
155
175
193
194
200
242
154
124
143
174
210
198
246
214
196
177
218
246
203
174
239
207
236
239
249
238
236
136
195
208
251
229
231
193
228
185
157
218
183
189
197
192
148
143
167
245
244
209
138
191
197
177
155
277
194
145
241
208
159
190
184
209
214
201
179
179
179
163
158
180
198
211
246
210
196
239
177
205
220
153
203
230
136
221
208
192
101
211
138
222
179
188
217
180
215
192
184
219
205
210
266
224
158
159
201
217
216
230
229
176
133
166
232
203
174
131
187
157
202
153
162
181
159
171
216
172
216
203
261
164
203
197
239
200
242
150
194
194
173
198
228
191
220
218
193
203
177
143
291
177
217
226
242
145
157
235
218
227
225
216
216
194
202
192
206
238
207
186
160
211
219
135
229
115
211
159
195
236
194
211
225
130
255
110
188
220
217
200
245
206
206
158
223
168
194
213
219
211
232
166
190
177
156
210
204
216
212
265
233
148
265
184
166
235
250
207
207
215
156
182
199
168
147
203
133
182
159
196
267
212
266
245
169
226
149
213
167
187
161
250
204
235
191
197
155
274
225
210
230
205
266
208
227
212
188
223
205
186
126
206
293
148
230
170
196
162
193
218
175
176
205
181
225
193
217
244
198
190
214
239
201
228
184
211
202
234
235
176
283
148
162
201
193
160
244
201
255
216
198
237
292
237
224
219
220
156
144
259
196
191
201
148
261
206
210
206
220
165
193
113
204
157
143
230
246
186
168
125
152
212
231
110
216
186
230
186
202
219
153
199
178
205
206
231
228
159
201
212
193
116
237
133
164
207
263
168
221
291
215
143
166
208
164
195
210
172
248
187
283
201
184
248
263
258
240
160
240
225
154
161
192
184
208
244
223
153
230
181
223
132
200
184
203
156
241
212
180
216
244
192
217
247
189
229
217
253
141
119
224
184
168
199
208
211
181
194
191
191
174
193
169
166
194
241
280
200
168
215
195
245
210
273
179
169
220
154
221
191
207
197
226
217
230
188
207
165
230
221
182
214
232
198
172
200
204
242
154
191
224
190
213
230
179
157
183
233
265
136
176
252
206
206
178
201
225
261
165
171
206
163
212
206
177
238
179
169
187
255
179
154
226
187
222
214
142
140
147
222
200
174
215
205
197
260
218
213
182
212
204
168
284
206
183
226
176
198
186
218
216
224
278
225
237
230
207
210
190
196
216
214
236
242
234
187
267
172
140
154
121
170
203
224
191
182
209
243
196
148
189
152
169
202
243
258
207
111
234
218
192
162
177
211
211
122
212
284
147
219
293
192
190
247
205
189
256
214
183
153
244
227
203
240
235
222
249
196
167
197
187
230
233
238
258
251
201
232
119
175
178
201
193
249
196
144
199
173
217
229
201
263
194
224
208
248
139
204
214
196
198
133
243
178
213
234
183
154
259
164
216
197
168
165
162
187
228
199
209
219
219
206
148
184
226
157
191
156
168
270
220
190
219
178
206
197
187
209
108
245
254
154
220
164
196
184
208
217
147
192
216
150
178
193
185
181
208
188
193
176
213
153
247
161
213
210
189
120
155
250
178
206
227
230
224
167
207
242
180
202
212
163
162
165
185
216
182
246
199
242
199
235
183
182
162
190
218
193
229
230
213
205
244
188
184
256
178
241
136
221
183
166
216
197
205
170
212
216
211
242
138
222
204
182
200
246
169
163
225
245
172
228
229
185
178
214
201
181
230
237
159
211
171
227
186
153
256
201
231
198
152
223
181
239
198
172
190
158
180
169
137
232
209
160
222
210
174
225
209
225
184
191
127
146
189
265
164
214
142
156
179
201
237
217
164
156
155
252
207
234
295
137
215
237
210
273
185
182
252
195
183
135
161
196
257
253
186
206
185
115
225
139
193
259
169
115
187
175
234
151
205
159
239
233
232
262
144
208
177
191
159
219
230
176
216
138
213
167
223
247
196
239
161
134
230
245
244
190
247
185
228
210
166
222
203
205
248
212
189
169
228
219
188
235
150
213
133
195
187
210
225
164
227
249
227
201
204
218
151
269
155
163
236
135
235
234
210
204
190
156
188
212
218
250
208
205
209
193
214
186
207
239
217
198
154
126
219
241
172
217
180
186
195
199
116
186
219
205
183
232
172
205
199
236
239
142
192
227
168
207
211
232
265
221
185
213
211
161
243
191
164
237
244
209
174
208
179
243
183
178
228
237
191
172
230
201
216
196
204
184
236
198
148
193
172
202
178
202
222
234
135
204
157
240
172
224
141
182
235
225
280
257
242
222
171
200
169
262
234
196
201
124
200
143
250
155
220
121
232
225
183
209
215
219
210
224
198
196
127
191
205
219
224
236
229
212
170
180
166
185
200
179
215
185
185
166
213
178
179
194
201
244
232
191
179
193
157
244
229
188
218
223
249
189
193
184
214
264
166
210
220
196
163
179
143
235
223
231
255
205
239
222
189
200
185
195
248
163
233
256
204
223
217
197
247
235
175
212
215
212
204
180
233
222
209
208
221
180
246
268
211
207
184
164
238
180
259
207
237
246
258
203
212
209
221
239
209
193
244
217
196
172
211
216
206
180
238
230
242
204
187
173
183
179
182
223
257
130
187
264
239
176
170
163
267
199
267
218
181
213
227
199
207
197
162
169
148
196
163
215
204
186
171
181
219
264
221
173
186
257
200
230
137
218
226
211
277
179
161
223
217
243
213
237
256
153
147
223
193
226
193
205
180
189
200
240
213
189
229
178
217
167
196
175
187
200
224
195
184
227
215
201
173
127
216
167
179
223
146
221
240
152
165
193
174
196
226
265
226
205
206
248
273
176
193
220
178
187
197
214
183
223
180
192
198
218
173
214
274
209
186
267
168
128
137
168
257
232
186
187
156
156
189
277
177
258
233
140
234
203
197
181
221
253
198
224
131
262
168
178
181
190
229
258
263
197
198
211
257
248
207
238
218
223
241
186
189
202
214
169
142
192
170
243
207
214
146
186
195
172
200
189
279
177
200
256
172
218
171
184
204
210
195
185
177
171
187
230
223
218
185
188
199
205
201
163
204
184
160
166
202
268
228
198
173
163
204
235
183
182
207
240
250
222
216
213
169
208
205
200
144
241
132
274
192
201
195
277
206
162
173
170
263
225
213
138
168
219
215
135
216
119
174
209
199
210
241
178
180
201
212
181
158
213
264
189
240
190
204
234
158
168
177
158
164
181
185
218
227
232
197
217
172
199
197
212
174
264
236
246
255
234
184
208
179
217
273
178
238
158
194
214
171
182
213
139
215
220
208
172
219
160
271
180
264
210
179
228
169
236
201
256
190
230
175
247
160
197
205
213
232
131
180
203
259
254
181
221
206
207
205
243
97
169
207
191
215
198
229
155
216
250
209
225
175
190
150
236
163
245
212
241
169
210
227
215
230
150
217
157
154
236
170
205
179
224
170
189
212
205
201
232
209
168
189
274
181
207
219
145
212
245
201
265
191
192
193
138
242
209
132
175
201
253
266
234
227
232
208
189
235
182
226
168
196
251
134
223
212
254
226
197
168
201
193
165
186
192
209
231
255
212
207
223
227
140
166
208
179
166
223
169
183
216
224
216
209
147
146
198
226
189
162
159
211
176
268
204
214
212
258
197
205
216
271
148
164
207
187
225
164
201
159
169
230
185
165
154
190
216
182
176
178
234
202
190
212
256
254
212
184
185
206
193
184
205
230
231
235
246
213
178
230
205
180
184
263
205
178
168
202
186
191
157
173
196
168
256
168
165
141
164
149
180
228
163
121
102
238
238
195
218
180
255
212
196
188
159
211
229
199
217
237
236
159
269
190
200
169
164
156
233
191
148
134
236
177
176
234
190
186
215
146
144
173
205
211
158
184
171
182
139
212
231
211
189
231
124
223
220
266
161
226
179
236
177
157
138
203
222
211
152
270
201
253
160
196
180
208
171
244
200
253
236
118
211
200
199
126
208
162
236
149
193
169
174
190
167
205
219
147
147
178
224
188
229
166
225
219
121
227
194
167
214
146
233
260
213
197
206
145
192
232
160
267
186
213
224
166
218
170
153
209
208
211
203
195
161
214
223
227
168
198
157
216
227
130
250
154
196
196
261
192
198
228
177
188
144
168
227
254
229
173
162
172
221
261
221
144
188
265
177
222
243
188
200
217
163
175
258
226
146
265
269
227
193
219
242
177
226
180
245
215
204
172
219
216
246
197
222
244
175
177
263
271
270
227
241
142
209
217
180
183
216
160
188
148
146
236
156
235
194
209
182
194
105
198
187
184
201
235
190
191
194
207
200
231
134
178
181
205
190
235
218
212
211
258
182
202
188
158
206
174
247
212
168
236
204
228
178
208
252
251
170
203
210
216
183
212
225
205
223
202
233
227
190
226
237
200
194
246
180
208
188
156
254
140
205
187
232
187
155
174
219
234
182
208
133
169
208
191
230
173
151
221
212
158
148
196
268
185
163
246
190
249
165
211
239
194
229
144
151
223
207
213
166
262
223
232
178
159
246
206
214
198
184
217
198
198
238
226
217
159
198
124
211
262
227
198
198
221
217
189
203
201
167
223
233
171
206
235
179
120
208
237
246
187
163
244
246
175
217
209
257
214
193
198
215
241
193
185
229
213
164
261
193
244
242
173
171
199
168
213
172
209
154
229
152
199
243
233
232
196
257
185
221
253
157
205
126
159
243
212
191
173
220
247
195
189
217
224
162
221
179
178
182
193
197
162
223
232
227
190
258
206
208
186
233
194
241
213
182
207
177
212
201
174
211
231
178
231
214
220
204
234
229
197
220
222
280
191
178
238
220
175
227
191
194
215
229
252
225
214
226
257
204
214
158
218
234
181
247
203
216
218
125
209
183
133
126
224
237
135
195
158
178
184
159
196
140
211
145
212
148
202
159
204
205
187
251
143
216
157
217
213
180
216
228
198
242
211
182
194
182
163
210
150
232
171
186
200
240
219
205
152
192
195
184
243
206
159
195
202
154
222
208
225
226
119
183
183
220
184
215
249
141
176
222
192
180
271
222
201
161
171
264
188
178
199
139
165
256
247
234
187
194
205
186
186
181
216
169
245
200
217
227
164
200
180
175
207
205
199
223
185
200
225
153
201
231
184
153
239
204
238
186
221
161
266
206
171
181
155
212
180
220
208
164
193
229
150
189
227
237
230
218
217
236
206
212
197
209
199
184
167
172
175
216
111
241
248
249
180
216
182
214
170
213
216
218
236
212
206
196
201
176
213
96
211
195
154
170
205
222
162
263
178
187
172
227
204
220
219
174
263
162
180
163
118
203
146
172
240
206
160
194
179
212
205
157
190
155
234
202
219
216
244
119
206
219
160
146
195
165
171
170
181
191
186
140
161
105
183
197
188
183
279
156
215
226
247
149
239
153
189
226
150
149
186
219
178
188
186
168
221
173
206
175
232
168
213
166
177
225
236
203
260
216
175
203
197
150
171
222
130
232
191
249
261
133
252
196
170
230
232
244
214
159
253
185
219
192
193
168
224
243
220
235
193
214
188
250
201
231
188
232
263
163
255
121
172
158
153
217
228
211
190
217
244
213
170
168
138
218
181
183
266
145
250
104
208
260
243
191
182
174
128
172
197
149
209
224
248
202
179
194
196
242
220
229
196
219
158
202
198
261
219
183
221
234
196
187
193
167
214
188
167
160
181
152
162
110
165
188
219
181
176
185
174
201
197
189
155
173
223
175
207
247
216
235
206
192
195
228
265
222
181
254
225
168
214
152
240
248
219
199
234
175
109
245
245
154
192
231
253
168
242
243
190
159
207
219
208
179
185
139
212
149
165
172
221
188
195
212
222
176
172
156
182
257
176
180
159
187
239
237
252
212
181
219
238
231
163
218
193
234
235
172
196
136
158
198
167
229
188
165
199
150
206
224
199
199
177
189
186
191
221
221
222
183
256
221
190
174
250
154
171
214
244
213
167
157
229
217
205
184
229
170
164
196
203
214
227
237
220
180
220
178
146
230
160
177
160
189
253
206
198
249
184
196
193
208
189
249
245
220
167
225
225
189
175
236
205
206
276
268
95
199
179
186
216
146
178
179
236
177
128
217
223
198
125
188
149
170
159
231
142
214
222
194
207
193
187
203
210
136
162
198
215
160
200
182
235
253
200
135
173
220
216
274
147
181
203
189
207
180
267
215
204
176
138
287
215
234
155
234
233
128
184
159
200
166
144
229
216
237
230
237
193
234
193
150
182
198
167
181
107
165
205
258
247
182
176
259
178
154
245
174
173
209
161
176
245
178
279
177
170
200
192
236
246
200
236
149
209
197
172
239
208
172
180
220
213
249
190
186
175
240
201
175
229
187
183
194
182
127
211
207
179
198
165
222
222
278
160
191
231
190
237
215
180
219
203
159
162
234
169
221
217
206
211
198
190
211
248
235
208
187
247
211
204
208
194
236
141
190
181
175
238
221
210
228
152
177
226
165
192
185
191
222
196
237
207
159
208
211
160
240
172
174
215
216
255
237
148
211
224
257
193
168
187
132
181
176
197
229
178
209
210
202
191
269
223
225
208
197
186
155
182
216
194
185
201
176
214
222
150
189
195
268
186
191
141
233
200
185
137
160
171
207
163
165
208
161
200
149
151
188
209
214
222
88
184
215
229
178
184
233
206
218
189
210
253
212
216
196
224
171
252
222
215
235
228
177
167
174
215
247
213
153
196
150
215
228
221
171
218
178
118
196
203
190
223
152
201
243
165
190
250
192
157
152
225
237
158
225
239
225
230
216
206
154
136
202
214
166
191
182
227
219
229
194
177
183
159
161
156
209
191
184
128
194
127
176
170
188
101
208
211
103
162
189
153
153
217
156
208
185
218
229
214
150
231
252
221
216
267
207
189
147
208
217
206
256
217
181
110
222
211
232
205
247
243
176
228
160
133
193
229
206
218
136
175
111
217
268
209
219
145
203
196
164
253
242
202
272
185
160
198
174
214
193
169
219
272
241
119
179
212
235
160
240
119
175
271
194
169
220
206
143
178
209
178
248
213
208
214
242
212
223
213
209
148
144
183
191
195
241
153
198
237
169
210
200
248
238
224
156
190
131
203
227
159
211
185
180
180
181
233
193
243
112
174
159
217
227
250
152
155
235
214
263
249
233
260
195
188
169
218
158
188
185
143
196
183
227
198
180
171
249
178
247
217
163
228
235
172
162
163
226
209
200
221
218
224
258
216
174
245
228
211
143
166
185
166
154
193
188
205
167
162
222
229
247
241
160
197
198
208
220
190
209
185
182
187
233
217
160
259
226
201
217
164
210
274
197
216
221
209
236
186
233
242
154
210
228
186
252
224
181
204
211
191
274
213
192
229
217
303
252
148
167
179
180
240
250
170
199
203
220
184
258
243
216
253
175
259
239
193
253
243
174
179
217
219
205
226
243
122
275
196
188
210
201
180
235
271
186
198
228
230
213
145
220
175
222
207
159
141
232
238
227
117
149
210
235
238
261
166
211
205
207
195
225
193
200
142
155
192
197
202
215
164
200
244
149
227
133
223
171
184
210
229
190
192
192
151
178
243
234
171
194
245
155
206
166
166
189
239
194
200
178
166
175
167
227
221
183
176
201
177
203
191
198
188
195
209
175
210
185
232
190
246
204
247
218
227
186
263
193
249
188
200
178
210
205
191
246
262
258
202
168
223
168
201
155
168
144
222
161
136
182
154
146
202
206
205
209
210
207
252
210
108
163
210
202
235
182
243
238
179
229
144
158
115
214
208
165
179
186
221
256
197
162
167
231
132
172
241
267
197
179
141
185
200
239
204
192
243
220
201
220
201
226
159
174
220
164
207
194
103
159
174
227
214
172
252
260
209
153
194
101
229
213
223
164
165
199
213
221
161
190
165
265
141
212
237
221
191
216
217
259
212
269
183
209
240
142
236
210
193
241
174
263
245
226
175
182
232
150
238
178
192
208
191
226
222
199
233
234
158
224
153
237
174
184
213
198
262
168
245
182
154
229
151
199
231
223
240
216
143
204
206
198
208
242
183
220
172
224
185
267
192
193
134
198
118
241
252
179
166
207
182
162
188
187
220
209
237
153
188
147
188
216
230
221
196
208
147
215
246
241
146
242
214
194
189
151
239
214
174
239
130
231
161
177
189
187
219
168
254
219
147
169
215
176
230
228
204
208
235
229
159
250
199
208
252
166
165
165
189
177
201
205
190
182
156
207
166
237
184
179
175
173
215
113
170
192
203
187
230
235
221
187
198
175
155
200
146
175
196
191
233
193
269
233
161
159
192
218
198
221
177
207
172
211
203
190
259
191
149
244
191
211
291
141
243
200
217
165
162
168
217
276
192
234
235
236
202
173
203
260
170
177
245
180
217
220
259
171
228
225
220
259
196
176
251
196
173
218
252
203
197
203
209
181
175
208
182
206
170
114
222
226
201
221
208
207
203
248
205
188
207
214
173
186
231
209
207
169
110
192
212
210
179
138
205
204
166
199
168
209
220
159
229
257
209
207
265
206
252
187
168
174
214
167
231
275
158
229
202
172
161
219
209
183
229
188
201
186
231
137
180
163
139
209
231
189
169
236
209
242
220
158
200
197
206
231
266
180
194
185
183
212
202
196
235
227
229
172
153
127
193
225
230
201
129
232
215
198
242
212
213
197
200
194
190
215
236
204
166
192
226
172
241
256
173
198
170
207
225
196
171
189
170
218
121
185
207
185
220
224
186
212
253
186
217
222
224
204
274
190
227
151
208
285
196
186
218
253
224
229
159
171
251
187
166
142
182
187
180
204
185
151
194
225
174
230
146
234
160
250
218
226
268
207
118
220
178
211
170
182
228
197
216
207
157
132
174
148
231
248
192
176
232
196
247
272
228
152
202
131
213
192
176
196
209
253
246
180
163
192
278
231
267
185
186
201
216
174
187
184
149
177
238
169
234
181
172
145
251
188
223
196
223
201
188
133
201
169
194
209
184
152
175
190
199
171
158
198
200
165
166
240
220
224
152
179
154
226
169
203
238
203
206
198
169
174
173
258
149
201
213
206
205
168
233
189
187
275
186
230
150
252
187
167
124
223
146
220
205
181
175
214
254
179
174
221
167
258
219
195
222
197
213
207
241
155
207
208
201
181
131
176
176
186
210
236
206
225
189
279
158
172
216
156
176
225
148
200
145
198
213
214
211
199
177
219
240
164
239
193
148
222
135
240
227
185
187
202
195
206
268
191
168
238
127
203
186
220
191
216
217
198
189
165
192
196
239
198
168
251
231
149
200
201
221
209
245
125
205
152
198
196
188
153
213
185
254
248
189
146
237
216
155
243
226
227
206
249
248
255
179
255
210
188
178
227
160
225
202
146
248
203
173
196
229
195
237
181
226
167
250
209
174
208
178
214
192
165
183
166
214
199
241
190
202
229
217
180
166
127
229
208
194
166
237
224
211
200
215
203
204
215
194
182
207
214
162
179
252
220
230
187
232
175
227
259
178
200
171
166
213
218
194
225
266
147
167
165
220
181
180
214
163
248
271
209
208
184
190
243
205
183
180
158
135
193
191
215
243
240
185
205
219
191
212
266
175
185
250
201
146
200
212
252
206
235
221
209
251
213
257
217
225
213
96
167
215
249
248
198
227
215
163
175
189
212
209
205
133
239
226
260
177
173
202
173
174
256
201
149
212
163
210
186
242
136
183
202
167
165
224
150
205
211
153
161
236
143
238
184
139
177
213
132
241
176
156
191
207
246
227
170
188
206
169
196
244
200
236
165
201
185
178
249
237
249
184
180
181
237
177
239
217
271
140
173
215
156
204
219
224
195
197
234
182
189
187
197
197
231
160
229
151
218
223
190
265
152
150
195
211
200
193
157
234
245
203
195
168
186
253
192
250
177
270
228
216
235
158
147
215
236
221
202
199
172
165
145
238
211
117
163
224
189
230
247
215
165
188
180
183
181
203
224
225
129
237
245
159
193
200
234
186
215
151
171
218
225
264
212
161
212
124
156
213
130
185
169
230
236
229
184
149
211
263
168
149
209
209
209
248
241
114
192
193
214
249
141
140
227
214
201
191
239
207
203
223
182
243
238
188
189
217
221
211
225
223
228
227
243
234
126
204
217
177
157
179
178
194
226
161
213
195
170
219
129
187
119
150
171
197
217
206
223
157
181
156
200
245
152
190
219
206
151
198
213
137
244
232
216
197
201
206
254
164
214
153
190
148
195
147
221
152
140
208
203
242
210
177
171
148
234
192
302
174
272
199
218
204
165
158
209
253
167
191
192
183
215
219
144
153
197
203
230
162
224
167
185
112
170
155
239
211
205
227
235
207
217
139
265
218
202
197
175
206
203
193
154
245
203
170
246
178
253
281
148
119
186
194
224
226
182
210
228
246
211
201
226
247
193
197
232
233
210
261
136
197
231
249
187
216
191
248
212
183
184
219
222
201
248
193
269
207
203
171
227
174
169
189
216
225
189
170
256
117
211
164
257
190
172
152
198
210
159
208
253
186
256
173
235
201
203
206
274
227
218
226
180
176
206
189
164
187
195
239
220
228
141
175
235
202
205
229
197
187
213
173
138
233
227
201
180
141
210
253
184
192
189
234
162
190
222
197
268
237
188
215
210
254
232
261
205
177
247
190
249
185
173
198
209
224
180
204
226
184
283
181
233
266
285
186
165
222
200
183
148
223
142
188
185
209
155
269
188
214
138
234
151
195
175
256
218
244
249
203
240
249
114
172
209
177
244
183
193
144
197
244
252
180
196
236
151
238
151
246
199
222
214
252
230
247
179
258
205
260
179
176
235
259
177
172
231
210
213
213
200
239
227
188
149
174
194
204
222
236
257
262
190
229
215
243
247
224
258
123
203
165
192
179
192
173
181
96
176
252
167
201
177
186
250
209
198
195
158
197
188
266
123
213
179
233
217
103
136
182
148
201
241
199
203
193
214
208
240
251
245
171
235
214
205
223
152
230
191
193
216
192
218
217
216
186
257
154
269
166
150
229
193
206
215
204
182
208
180
162
200
186
193
184
215
156
174
163
251
173
211
200
121
216
234
220
179
166
187
177
250
213
165
201
225
253
202
212
208
204
239
182
240
154
119
107
162
246
157
221
224
182
260
235
177
218
252
192
213
137
207
163
236
173
115
225
256
210
212
149
233
272
199
266
234
233
165
228
250
243
186
207
211
222
227
215
192
218
225
185
194
222
219
157
229
296
211
172
174
251
203
239
210
153
199
219
185
227
142
196
152
207
233
163
222
174
201
164
214
191
187
206
209
226
250
193
261
151
157
178
218
164
207
224
218
208
158
180
143
212
200
230
188
185
168
142
220
175
189
143
171
212
213
179
219
245
236
259
191
183
201
194
192
236
158
192
243
172
170
224
245
244
167
232
254
225
219
190
183
190
155
230
243
183
210
232
197
223
173
196
234
272
225
192
187
239
154
191
178
186
223
160
160
149
167
179
196
261
262
134
224
156
247
201
227
195
175
229
161
200
186
116
184
262
252
156
213
269
187
191
188
198
209
220
233
198
188
208
156
202
193
163
219
262
139
215
232
185
212
185
229
154
193
189
196
173
179
248
154
185
165
216
242
212
111
168
251
172
241
235
171
175
199
199
169
190
174
180
176
188
192
155
157
197
222
195
238
189
203
211
272
200
136
238
221
224
189
190
214
195
162
207
177
205
260
183
202
207
233
174
182
264
211
174
201
199
221
238
185
175
183
143
148
200
200
133
197
204
267
203
161
161
192
221
287
228
176
200
193
210
224
229
130
212
166
137
196
164
194
220
203
159
180
271
141
189
172
282
169
218
154
209
140
189
211
208
181
137
240
189
172
273
160
232
231
199
172
152
254
170
194
221
187
233
246
169
249
172
209
191
180
173
177
225
199
147
235
225
170
160
210
161
203
174
152
209
150
268
199
179
207
166
219
195
108
248
252
199
165
210
241
95
250
211
198
245
180
266
204
144
214
164
215
190
211
241
240
218
218
174
243
187
246
156
181
255
133
189
175
201
192
192
161
251
208
240
202
233
219
212
219
208
138
272
249
171
134
219
173
146
176
283
291
247
187
210
258
224
202
205
192
271
196
206
216
197
213
228
208
213
263
174
220
166
183
233
290
160
207
222
273
224
204
127
191
222
143
213
166
283
194
203
198
199
196
228
157
169
234
184
171
281
213
198
196
138
216
161
152
135
172
160
195
208
127
231
209
172
159
173
186
219
170
254
189
157
137
225
205
279
207
188
242
168
290
184
173
213
205
225
210
209
193
194
177
139
129
167
221
249
231
188
191
197
163
226
162
217
198
232
246
192
202
158
188
155
256
189
199
165
196
206
171
186
228
182
185
208
203
178
160
189
216
235
213
192
217
240
182
183
208
166
146
155
175
168
168
186
110
157
240
215
153
225
208
184
250
211
214
237
121
213
212
139
208
204
232
186
231
185
212
209
159
221
209
196
173
167
226
233
169
218
200
266
137
176
169
171
162
233
233
153
202
206
215
191
153
183
193
251
151
254
172
220
161
180
188
166
210
216
226
182
172
170
192
138
176
234
141
202
182
202
182
263
250
171
207
228
226
185
221
175
229
162
173
175
214
191
226
170
250
197
214
239
168
173
197
255
211
165
170
147
180
169
184
230
241
242
80
212
133
235
210
200
156
189
138
183
185
197
190
196
181
180
260
244
180
203
168
137
229
200
232
195
207
234
233
206
196
190
196
201
231
184
125
205
150
213
187
149
262
173
253
193
174
168
183
189
230
154
202
252
199
254
200
148
226
235
153
131
163
224
206
178
176
188
244
186
186
173
210
152
203
179
185
184
167
204
158
191
167
188
178
136
219
142
202
175
197
171
144
205
194
120
141
184
229
255
213
170
172
157
162
205
172
168
173
175
206
230
193
213
232
149
139
172
184
200
208
233
204
265
193
215
176
205
241
159
232
174
209
137
213
166
254
212
156
189
163
246
229
241
200
148
184
207
192
186
170
225
246
213
214
194
264
164
239
199
227
156
246
237
218
149
178
216
160
186
178
210
254
194
239
200
194
218
206
231
211
218
261
181
190
226
265
169
200
254
160
238
192
196
219
209
233
237
198
239
231
257
164
160
176
232
169
221
213
194
165
220
165
210
220
206
238
176
256
223
169
177
185
253
207
228
211
212
225
170
160
207
221
243
255
203
244
178
229
113
162
237
200
205
159
225
246
205
144
198
224
103
246
207
195
175
249
192
191
217
182
164
201
227
189
169
215
208
186
168
169
177
240
229
199
217
189
181
238
110
231
206
212
206
188
157
169
169
153
164
215
196
203
254
141
150
218
239
286
96
179
231
165
208
240
204
209
147
209
200
202
182
212
215
144
170
218
220
197
192
173
165
189
221
214
183
161
170
205
192
232
228
239
165
124
199
183
203
204
203
174
213
151
175
153
214
265
202
206
204
207
201
195
234
156
239
158
196
229
196
180
229
224
144
226
197
224
216
212
213
212
211
182
191
205
160
206
229
158
220
227
250
196
207
202
145
172
189
205
175
171
179
224
180
244
189
186
186
186
177
213
188
218
216
201
219
173
224
204
260
150
195
169
101
173
137
191
171
216
201
193
239
289
155
213
159
220
251
155
173
185
213
190
211
167
200
104
185
218
190
230
267
163
204
196
217
189
184
189
197
221
220
207
277
233
203
176
245
192
206
180
159
193
170
205
163
192
207
188
126
211
147
202
167
215
249
147
205
185
218
157
191
161
198
214
252
180
167
176
193
140
159
250
203
197
250
204
189
182
216
195
176
177
180
276
243
226
192
174
171
197
238
153
243
234
231
195
189
205
214
140
169
183
210
229
166
213
226
220
237
212
182
217
226
249
263
188
187
135
183
220
227
149
246
220
153
189
171
233
161
190
178
230
182
228
209
219
189
191
213
221
244
112
228
214
188
185
277
235
182
231
204
239
158
194
202
189
135
202
186
194
158
222
251
82
200
164
195
197
184
225
156
232
203
206
196
162
241
252
223
193
187
218
175
197
186
180
179
104
206
220
192
229
160
263
173
215
183
154
257
216
224
262
137
156
195
244
202
236
247
195
220
239
206
175
219
188
196
212
125
172
200
243
193
179
244
176
203
222
224
221
221
231
235
190
223
172
178
180
252
183
146
231
208
214
102
173
219
195
226
176
165
250
121
217
209
211
202
198
215
193
210
232
188
214
180
241
162
188
162
200
252
197
206
207
237
188
209
161
217
191
197
252
242
185
228
213
230
217
148
264
216
150
262
245
171
196
224
215
172
185
148
151
174
114
185
132
187
242
233
207
187
226
193
190
200
189
203
144
167
115
182
239
220
247
158
155
227
140
194
201
190
237
188
106
230
208
264
179
238
211
129
242
176
174
140
187
193
155
232
237
247
160
204
228
175
150
212
216
242
180
192
175
178
232
205
225
206
183
245
258
176
251
196
187
171
222
247
181
217
150
219
198
241
237
234
220
228
121
168
243
194
165
120
233
178
213
145
195
202
208
182
209
222
234
178
257
178
162
191
184
200
210
210
186
197
215
233
250
186
193
216
229
157
279
213
167
259
221
178
177
208
154
227
186
146
130
167
171
141
177
242
195
191
191
181
183
229
167
237
241
233
229
211
176
220
166
228
155
225
167
268
232
213
162
137
246
170
180
165
167
229
173
176
206
169
216
213
201
167
179
203
156
227
186
202
206
240
238
154
209
176
186
174
187
192
246
187
152
179
239
207
171
181
201
209
202
166
208
206
142
250
132
151
204
219
238
165
150
233
230
197
193
162
165
183
222
159
177
220
193
247
255
207
214
165
161
236
184
246
156
203
221
181
155
171
218
203
183
217
117
187
147
175
178
167
251
201
176
197
148
211
188
235
196
184
197
220
200
201
152
201
250
166
200
203
198
225
237
183
192
205
204
149
215
238
204
190
195
198
242
200
201
214
115
194
218
210
245
256
201
196
199
157
226
201
207
210
157
188
223
211
273
223
209
223
248
189
210
142
213
220
157
227
204
137
221
231
221
169
214
248
216
189
198
218
264
235
221
161
164
160
213
216
193
213
251
159
155
217
203
214
204
236
227
182
193
232
204
252
213
220
139
208
151
130
256
192
266
196
191
205
145
182
222
207
195
188
163
148
183
128
199
225
190
218
238
206
166
210
202
204
167
205
167
188
238
226
163
185
187
188
200
227
213
186
229
152
179
144
212
177
166
238
217
208
185
181
228
212
155
218
178
164
196
194
210
226
211
168
211
164
174
207
242
202
150
216
221
198
215
188
252
208
159
186
267
220
196
125
158
239
153
218
176
155
199
213
176
234
210
248
177
235
187
130
181
216
181
204
241
132
209
134
190
164
171
213
211
140
187
193
192
231
208
243
195
222
191
238
247
226
186
190
281
238
253
234
230
195
172
143
253
177
185
198
215
199
187
209
123
214
143
112
225
197
217
197
145
209
164
215
229
192
221
110
144
169
142
174
225
218
252
190
205
146
177
200
162
255
165
165
210
240
207
218
278
181
198
252
218
262
223
243
211
244
198
216
206
186
273
154
184
145
171
188
264
242
204
236
174
212
171
170
168
179
226
234
202
180
168
252
212
202
231
190
199
283
189
183
219
211
194
150
260
154
249
251
135
225
193
178
180
168
180
263
245
199
229
210
192
166
163
230
167
231
161
218
147
200
167
191
252
237
192
196
212
194
178
158
249
238
207
224
159
241
164
146
187
192
194
250
219
200
182
155
170
262
229
216
239
226
178
258
118
220
232
186
220
220
172
198
186
166
246
251
210
217
194
223
167
158
247
167
195
247
236
167
163
171
200
194
159
202
201
215
200
253
139
227
167
233
179
231
153
203
238
208
256
232
201
211
228
174
213
211
232
207
233
215
199
237
210
169
219
214
215
185
225
233
192
236
250
171
213
215
245
163
199
197
255
125
217
155
248
239
209
236
242
178
157
243
230
242
215
196
246
156
200
157
113
185
209
215
189
197
155
221
246
191
178
255
214
100
235
212
250
215
183
160
197
216
227
193
199
176
250
239
245
222
208
227
181
234
182
154
219
170
154
192
196
189
176
204
276
180
148
164
174
206
204
174
230
226
169
247
161
180
222
206
255
247
237
173
195
174
243
215
159
213
239
207
241
207
192
151
239
157
214
237
180
220
179
181
186
201
193
192
198
211
214
234
252
173
119
254
242
177
196
193
194
192
201
223
200
240
271
200
191
210
224
194
228
193
151
244
233
202
201
173
186
262
187
191
179
234
252
174
162
221
226
189
170
219
214
189
158
232
218
197
248
237
212
206
221
153
269
224
204
206
137
137
246
174
182
269
139
241
257
243
171
180
162
149
207
275
175
138
135
260
192
258
230
226
231
231
210
192
217
239
186
222
196
244
200
176
176
224
184
199
129
218
179
222
271
178
234
225
181
176
156
175
164
174
194
234
217
207
226
256
155
227
193
196
234
141
188
171
137
183
215
183
166
151
208
210
121
251
211
162
230
217
191
176
239
223
230
99
179
168
230
244
204
183
249
220
163
179
200
210
187
253
190
182
232
156
208
160
193
122
201
193
201
193
147
155
237
191
146
113
194
242
164
270
210
220
205
227
140
242
214
220
214
287
214
146
161
222
132
203
247
204
141
251
276
217
192
208
166
186
234
227
109
254
195
186
201
278
227
186
146
236
191
198
187
202
182
193
101
236
204
163
198
208
254
167
232
109
252
119
136
249
258
192
237
167
208
248
179
232
227
189
232
216
161
201
176
185
165
155
172
244
182
218
173
207
201
256
254
154
259
159
133
167
160
213
169
211
107
199
161
211
189
161
188
258
157
261
257
173
182
171
187
165
215
213
169
233
235
221
170
211
183
199
212
216
145
212
223
191
229
217
148
163
233
195
213
180
126
235
165
212
177
204
224
215
155
275
253
174
187
196
199
168
200
174
197
145
173
230
268
217
220
253
140
234
160
169
191
210
166
175
179
202
113
215
192
194
234
173
173
153
202
238
172
243
204
203
145
159
184
220
197
247
231
244
190
217
201
158
210
213
237
205
248
126
171
202
242
197
227
169
212
147
242
241
141
195
230
194
264
234
139
235
201
208
202
166
209
173
157
136
275
156
232
238
244
218
189
190
189
216
249
187
241
240
251
200
216
186
161
240
196
185
240
146
189
171
152
126
219
243
226
161
163
199
191
152
228
170
243
173
160
242
202
206
236
235
232
221
173
192
262
165
205
134
245
147
197
245
208
249
256
164
192
241
211
246
230
140
207
218
227
185
193
208
196
273
236
145
173
217
191
237
225
240
227
209
179
239
209
249
152
219
246
216
197
233
217
193
233
215
246
186
155
176
182
230
208
234
193
148
179
203
192
225
230
236
189
242
235
139
193
183
198
231
211
201
204
185
210
191
235
185
168
257
213
242
154
235
213
186
205
204
236
213
196
238
179
218
204
227
231
214
183
226
171
198
248
163
195
213
239
230
241
252
215
182
188
202
206
228
179
246
233
97
200
195
202
240
231
150
215
146
211
238
170
247
238
170
155
162
149
255
248
181
200
172
193
197
236
165
161
183
195
165
235
218
143
221
230
196
267
231
219
240
180
185
264
198
227
165
172
212
241
150
197
151
176
255
196
222
219
158
236
100
236
207
223
267
220
247
228
220
264
185
261
217
256
263
176
287
189
174
193
179
216
213
241
153
235
187
194
198
188
236
204
231
232
126
181
216
167
172
187
240
214
188
166
216
205
230
232
209
176
147
205
182
178
155
213
197
220
174
185
234
219
175
143
227
209
134
215
213
186
217
181
206
215
185
242
210
208
219
190
215
215
180
129
175
176
144
168
191
169
201
204
130
221
250
171
220
205
197
227
213
172
213
126
250
210
281
231
192
173
227
191
176
246
231
210
259
143
145
217
211
193
208
160
183
210
221
180
202
141
202
184
227
174
193
200
268
254
218
264
168
212
132
226
156
174
174
184
209
247
180
176
178
194
154
205
179
180
308
180
140
211
210
207
232
220
176
219
168
179
206
184
177
197
198
132
128
168
256
202
170
183
179
217
169
245
216
268
211
192
189
142
146
240
241
211
160
236
171
204
179
205
205
163
218
212
199
147
212
193
145
233
159
188
183
235
210
181
268
198
130
247
157
193
139
229
214
220
141
217
184
222
143
265
170
196
201
238
209
187
181
201
222
268
203
221
220
196
188
209
194
176
211
184
234
238
208
269
164
222
186
155
254
194
229
190
195
220
187
172
191
185
206
229
233
188
125
219
192
215
179
154
185
206
265
185
212
182
186
210
187
234
172
189
180
208
228
259
217
177
219
233
282
222
184
194
169
245
179
240
243
175
172
228
266
169
211
249
168
208
228
161
186
249
214
206
232
193
244
230
221
151
253
135
162
241
164
235
204
191
218
189
199
258
154
209
196
185
216
212
220
203
221
194
195
171
221
209
200
185
152
150
220
271
197
189
138
241
175
178
197
277
188
164
222
193
206
190
218
227
219
259
191
178
182
160
248
210
172
120
217
213
165
219
186
195
240
156
153
215
181
224
215
184
240
186
161
217
209
230
193
230
217
188
208
214
209
202
210
179
224
192
200
139
185
236
217
173
201
220
232
191
202
163
181
141
166
262
209
199
170
239
215
213
207
126
208
145
212
202
221
150
254
225
173
268
221
215
223
222
189
260
144
221
271
175
213
235
198
184
226
176
159
195
206
178
215
128
234
130
244
190
234
185
255
216
149
216
188
126
231
133
205
238
223
210
193
220
158
164
153
210
184
128
226
189
175
161
151
261
224
189
191
208
262
134
148
253
236
206
234
145
212
177
219
236
205
215
194
218
260
164
212
213
236
176
201
245
215
156
195
206
161
220
161
249
175
217
215
195
227
232
181
219
241
191
234
216
141
232
164
201
178
187
216
209
234
232
247
193
216
225
151
225
204
194
195
167
173
155
175
139
102
199
236
280
247
200
244
180
198
223
171
190
124
195
231
220
160
158
164
240
259
185
208
202
179
195
224
229
215
247
177
137
219
247
151
242
162
241
226
162
177
171
212
242
234
212
198
139
212
198
191
166
217
171
212
150
217
220
211
231
183
214
233
118
159
225
195
239
193
157
178
264
190
212
207
180
222
140
242
224
221
189
178
184
190
203
226
264
178
212
197
160
152
121
166
223
273
203
113
213
179
191
188
186
241
259
188
167
176
203
180
194
202
228
234
136
163
200
171
198
182
173
210
173
235
185
190
175
175
194
207
184
258
232
190
214
231
199
235
220
218
236
195
192
238
240
233
254
212
190
140
243
164
133
189
207
220
237
178
222
194
147
182
266
219
190
163
227
131
224
116
289
197
252
133
162
229
254
173
177
201
213
180
153
173
198
183
148
167
157
267
197
179
185
218
184
203
186
226
197
295
172
231
217
247
207
175
261
249
210
166
221
201
241
261
169
205
187
220
178
238
182
197
156
240
199
192
205
195
212
218
153
207
239
202
204
166
214
164
227
220
212
228
184
196
158
218
202
209
219
174
211
168
123
234
194
230
145
205
228
189
145
229
166
223
243
231
251
199
145
116
194
236
222
230
217
211
175
251
245
149
185
236
96
220
205
183
213
198
228
177
219
171
212
197
220
191
168
175
256
156
213
198
213
258
215
240
241
237
245
141
212
194
194
163
183
138
244
210
151
123
214
196
177
219
254
140
189
169
173
156
186
173
157
245
198
145
198
194
200
101
127
195
217
208
174
259
136
175
213
176
202
233
230
189
188
204
238
161
124
165
188
194
136
151
187
196
150
221
169
150
206
170
157
203
176
196
158
224
232
255
165
209
182
207
139
286
202
151
205
132
224
231
177
190
212
171
230
206
161
152
232
177
198
274
245
185
192
175
137
238
244
231
81
172
144
219
190
183
258
182
209
140
242
249
242
161
218
218
218
195
178
222
91
176
87
183
198
241
148
133
270
214
218
253
232
225
212
185
230
190
248
162
202
222
194
154
158
261
222
228
180
153
149
137
145
190
194
177
197
173
174
212
191
268
146
203
201
148
257
212
198
191
181
233
216
214
241
197
221
198
166
205
258
188
148
244
155
218
208
279
219
286
201
255
158
191
177
201
223
219
223
177
254
199
172
151
178
177
163
267
227
193
235
256
167
168
166
201
194
192
238
182
188
144
242
193
162
188
242
220
211
199
188
250
274
159
197
254
282
229
235
190
152
201
196
167
249
211
256
170
205
257
128
262
201
194
179
216
206
211
117
133
208
235
178
181
156
155
132
176
211
267
157
238
148
167
178
158
170
247
172
231
235
163
231
169
216
216
214
217
163
157
203
211
206
219
148
242
199
225
214
148
171
171
230
225
192
203
184
251
254
265
217
229
159
176
251
159
198
174
111
225
194
229
204
210
238
227
265
264
183
198
234
229
164
222
217
190
239
250
221
144
154
246
148
166
201
208
255
178
244
206
222
266
161
220
240
222
147
120
236
213
227
242
176
149
191
189
206
167
159
211
177
222
177
211
171
156
222
238
192
215
200
149
213
115
174
222
233
202
233
196
201
157
194
212
178
232
229
183
185
175
254
162
187
251
190
232
244
202
233
185
213
231
153
133
186
231
182
152
253
230
209
215
222
143
155
155
246
199
260
215
190
144
204
158
185
277
180
252
219
175
200
105
232
207
242
210
190
177
228
217
259
201
224
264
181
187
226
195
170
235
151
229
245
189
240
230
189
174
195
101
197
229
180
173
141
224
197
237
191
194
239
176
197
182
236
247
195
168
174
171
242
162
250
250
204
103
228
215
166
235
167
250
158
194
214
155
205
215
211
207
180
139
232
229
215
226
169
161
221
219
191
210
157
139
259
167
235
208
217
198
186
181
245
201
254
223
242
247
242
216
170
224
206
200
219
184
192
152
183
201
263
200
212
195
239
209
184
126
253
225
208
251
187
184
204
199
164
169
165
187
228
227
209
191
195
249
218
251
233
175
183
221
186
204
231
258
192
206
165
209
199
174
206
167
218
151
281
253
239
251
164
176
190
226
132
241
168
207
211
210
175
169
164
189
277
198
156
221
199
182
245
195
205
238
277
166
173
233
178
223
225
235
190
198
215
185
208
217
233
195
186
223
220
225
199
231
188
209
211
210
156
198
198
201
211
207
180
197
210
213
186
200
185
209
183
201
220
238
224
262
220
169
206
168
192
187
137
231
197
247
128
189
265
123
206
234
206
157
195
191
239
235
218
187
200
183
212
216
263
214
218
203
220
250
245
201
267
178
183
210
166
249
266
166
188
238
190
129
241
198
263
204
159
202
168
167
210
155
175
201
217
223
188
185
151
214
175
192
235
216
220
251
158
218
173
266
112
184
189
161
179
211
263
147
268
154
194
264
167
189
186
203
229
234
168
192
217
193
131
236
158
159
170
144
162
197
194
168
182
213
220
211
225
221
206
161
190
139
230
267
132
233
169
196
206
174
160
166
265
258
177
190
218
229
250
198
194
187
200
215
208
196
202
156
186
270
194
144
263
212
213
269
137
182
199
193
194
236
256
213
200
153
202
271
222
262
220
203
234
181
263
260
154
238
199
179
192
165
143
171
131
196
161
170
226
106
225
137
224
203
230
251
186
186
231
206
201
216
151
211
219
160
171
137
226
192
223
267
140
175
225
208
181
164
167
183
189
222
174
199
188
158
225
208
235
184
209
193
205
224
166
133
166
139
180
224
236
121
224
232
221
229
187
257
253
143
214
189
196
149
230
191
185
173
224
186
253
172
213
277
150
173
193
226
223
163
203
200
234
216
134
156
168
194
201
184
213
204
144
179
188
162
171
190
171
226
143
241
163
167
215
166
195
152
210
257
186
214
204
183
172
195
200
220
219
160
264
136
234
229
261
268
190
247
178
165
181
206
205
178
213
177
171
195
180
209
205
145
204
235
219
198
207
242
240
163
214
134
190
214
157
204
184
160
177
260
193
221
213
259
196
216
179
146
196
211
142
165
159
181
173
200
208
216
211
172
200
217
228
211
184
176
203
213
159
258
153
175
191
191
181
221
224
191
180
210
172
203
167
201
213
179
135
203
155
214
164
182
236
135
178
244
160
174
150
213
223
234
216
228
288
178
157
197
172
239
164
211
230
223
175
237
191
163
194
213
153
224
197
180
199
239
179
179
146
159
221
182
212
208
231
184
153
195
185
212
168
195
198
207
241
191
193
161
156
214
191
177
185
194
226
229
220
253
282
210
193
218
238
211
156
219
197
224
189
214
236
224
195
198
188
211
203
170
199
173
203
193
194
185
199
174
207
198
202
209
261
189
145
193
221
212
176
253
189
191
241
186
260
167
190
200
184
221
240
180
198
230
241
144
217
184
153
193
177
216
154
179
190
199
208
241
226
178
215
211
146
194
131
175
166
174
225
176
243
171
247
155
216
153
228
169
221
155
240
202
226
174
238
210
214
218
122
233
182
197
204
193
196
220
205
241
141
232
214
99
195
171
189
191
200
199
172
223
192
181
132
217
229
203
220
237
128
190
217
240
224
252
227
183
173
192
219
157
237
233
222
228
197
153
175
173
165
149
247
157
239
157
154
159
234
228
183
207
225
219
222
224
186
178
249
200
172
271
242
149
215
249
184
169
168
176
203
185
179
184
175
241
193
277
212
235
198
228
235
244
229
191
211
161
275
109
190
194
207
215
245
227
144
188
156
228
200
166
227
211
187
283
175
196
186
195
231
246
198
245
266
213
246
189
151
183
229
214
201
200
181
213
240
182
194
139
174
233
194
184
196
254
204
188
212
196
147
258
202
319
202
196
210
186
193
194
215
231
249
223
192
190
215
186
196
149
195
209
154
216
157
252
219
152
281
224
224
235
224
208
194
213
242
207
155
117
226
194
170
194
227
178
129
164
223
253
204
199
196
153
193
216
178
253
216
165
198
183
236
166
189
160
189
246
189
226
227
158
221
177
224
169
176
255
217
176
210
187
167
199
225
228
194
230
189
186
259
187
193
194
181
164
231
186
230
154
113
161
156
248
166
192
212
135
215
201
169
230
244
217
201
174
249
190
210
180
194
168
194
227
194
200
240
176
198
190
241
161
165
136
175
163
220
173
155
259
159
182
232
181
207
181
208
237
227
199
234
208
137
156
197
196
179
252
188
243
168
108
246
210
189
201
193
172
169
233
183
113
203
178
242
190
206
155
201
227
177
240
171
185
168
179
228
182
172
248
210
224
174
204
215
207
219
176
248
213
189
196
171
229
213
154
203
177
178
161
211
193
216
193
220
193
239
207
261
189
207
238
110
147
221
190
193
193
170
218
127
225
162
196
180
182
184
180
176
175
264
162
166
201
182
183
196
223
244
219
216
163
145
189
233
206
198
201
188
242
268
234
175
230
234
184
246
188
208
182
193
206
151
209
147
265
218
195
172
216
146
233
203
209
209
209
198
182
166
203
195
176
198
161
187
192
201
201
204
177
209
219
168
197
191
214
230
223
200
160
241
207
230
195
110
253
162
194
207
219
259
182
244
210
251
181
199
119
232
176
201
228
181
190
233
211
187
195
211
175
223
162
245
207
186
179
140
165
249
216
246
181
219
222
223
164
232
180
190
193
210
242
226
300
223
211
238
170
219
208
239
174
197
144
209
226
195
189
181
177
216
181
262
200
218
135
200
224
237
155
196
251
304
151
173
201
214
227
213
137
216
183
260
267
180
199
175
198
165
212
225
188
199
261
181
234
256
228
194
202
157
242
206
174
202
115
215
226
174
169
177
205
245
174
177
217
173
219
233
200
250
240
163
209
247
144
267
244
169
205
233
205
232
173
246
216
144
198
182
175
146
221
159
228
253
181
187
253
190
218
221
204
180
174
201
139
204
208
176
227
213
200
220
192
203
211
228
170
245
253
175
233
244
226
220
242
227
242
196
195
159
216
196
195
209
185
191
149
247
228
190
193
239
228
210
154
226
125
191
187
153
178
203
193
171
227
229
164
179
165
192
252
185
210
182
183
196
217
213
173
281
264
160
176
196
183
212
173
182
199
206
192
212
241
231
214
254
217
236
216
223
204
200
224
202
253
197
140
227
181
194
197
177
161
236
197
201
165
221
199
204
224
238
154
235
183
186
235
141
216
189
210
164
187
260
248
259
179
239
152
199
235
189
236
200
217
234
158
166
214
194
183
140
203
213
128
173
222
206
159
239
224
197
180
224
210
220
218
245
205
222
209
177
204
165
219
152
194
159
195
152
228
180
223
247
235
177
232
219
225
161
215
204
198
229
162
218
195
209
206
202
185
225
192
236
230
228
138
181
239
183
200
201
151
198
241
214
172
249
177
178
194
216
225
230
190
179
184
255
180
134
235
247
226
190
215
217
238
190
193
219
184
239
184
223
172
226
202
169
236
244
226
175
176
144
150
210
226
254
217
226
199
180
180
196
203
197
189
193
226
213
227
272
222
158
173
223
157
232
238
206
243
219
186
180
242
203
237
210
218
208
218
216
218
159
215
241
233
223
160
156
172
219
194
239
149
166
187
253
199
217
231
163
187
201
236
196
169
234
269
188
222
223
263
239
213
132
142
242
231
240
235
183
232
260
202
270
184
258
161
156
161
229
230
178
117
262
236
220
215
154
149
197
166
144
152
227
238
154
189
213
202
208
204
216
154
240
156
178
226
169
188
159
249
242
212
199
211
137
199
192
196
183
162
193
243
193
206
250
251
247
145
241
189
192
117
238
211
219
185
226
245
187
183
212
194
236
171
266
190
203
245
269
198
188
183
176
136
164
200
144
213
231
247
199
266
178
220
215
196
254
222
189
167
218
239
250
232
238
230
201
199
228
138
239
241
203
228
206
189
194
217
215
173
196
203
278
207
260
214
135
149
156
132
133
258
182
138
143
214
200
216
236
187
123
168
201
172
215
211
149
202
205
226
198
195
134
207
240
189
232
164
211
237
251
261
269
202
227
239
154
251
237
211
226
125
214
176
199
123
146
195
138
192
207
245
146
139
264
255
238
237
208
205
221
192
199
180
229
251
163
160
174
146
209
187
241
180
209
186
161
218
214
151
211
217
222
147
185
218
247
187
200
145
192
209
219
192
183
237
161
191
184
179
205
178
224
198
173
192
186
204
154
138
224
275
179
216
212
206
152
224
235
201
197
211
228
191
222
235
228
212
266
191
149
173
172
199
189
215
184
226
212
242
176
245
270
229
189
226
198
220
231
188
214
173
153
161
267
104
202
187
195
235
234
222
157
243
221
165
138
166
234
156
210
232
175
232
204
160
243
188
235
185
204
185
217
160
187
193
205
145
154
193
201
214
208
173
223
183
174
131
194
110
154
238
244
190
194
206
164
161
139
193
228
109
156
146
197
201
195
142
154
152
197
169
191
223
255
191
186
234
223
223
261
215
242
245
251
223
222
203
231
239
216
241
178
155
193
142
210
153
248
186
240
166
196
210
203
189
219
206
200
246
223
160
232
166
245
156
95
166
200
203
220
222
184
187
175
281
233
186
216
163
198
191
235
241
250
175
200
218
194
193
200
154
172
137
145
218
169
230
178
213
235
240
214
229
197
180
158
164
163
192
235
161
157
124
196
197
251
213
169
196
227
204
250
201
226
243
234
208
173
161
193
218
246
197
223
232
231
142
246
251
196
235
141
198
196
161
221
160
183
236
203
254
129
266
191
210
233
199
206
212
178
137
157
148
239
127
220
198
219
174
217
236
221
161
193
199
230
193
216
178
209
190
197
153
199
194
196
143
216
216
179
210
211
169
164
227
235
197
203
163
232
216
213
302
197
260
244
207
168
210
232
261
236
190
147
138
222
156
253
220
176
199
190
164
135
121
169
144
197
226
192
111
189
234
186
184
248
218
214
201
227
212
211
190
210
239
268
206
179
230
250
179
209
239
148
185
212
221
210
264
221
189
260
190
239
202
166
229
199
143
187
179
189
185
190
186
187
156
199
181
173
213
211
185
191
175
252
166
228
221
136
200
162
222
190
212
216
161
208
243
177
167
168
184
167
104
192
265
245
170
126
194
195
223
173
257
132
179
239
210
222
192
187
181
203
212
232
192
185
141
176
191
119
219
176
172
170
190
161
182
138
225
190
209
193
133
186
218
166
197
182
201
192
195
193
240
192
200
183
226
142
165
188
158
183
181
255
138
213
234
254
196
217
159
229
201
190
242
172
167
231
223
231
219
203
252
144
202
183
144
166
197
207
200
257
184
116
244
240
195
214
204
205
192
163
152
203
210
232
131
278
196
209
210
225
209
225
180
201
240
184
152
210
211
184
214
239
162
231
198
204
218
242
211
237
167
189
217
244
251
253
244
191
115
178
194
164
237
233
230
170
201
180
205
196
178
198
264
246
232
199
182
204
209
199
157
253
242
191
251
229
143
118
217
142
210
170
228
231
138
223
205
183
218
237
210
265
212
264
282
207
180
141
270
181
210
288
184
201
215
208
193
211
207
211
180
260
210
197
178
234
175
180
186
242
159
141
243
206
213
254
178
214
197
157
176
209
123
177
208
228
144
219
237
221
184
148
245
196
259
236
151
234
142
162
225
215
268
165
251
261
190
270
277
206
158
217
215
273
107
195
204
191
210
153
124
236
228
206
162
195
205
183
241
197
227
162
181
163
215
194
181
193
197
188
258
212
154
167
139
246
132
223
193
228
131
211
221
244
228
257
170
205
179
201
198
250
208
209
186
214
207
258
175
138
135
221
203
201
250
168
240
177
187
207
201
242
246
204
198
251
217
234
231
166
205
240
193
149
188
220
253
190
188
221
238
197
193
176
180
231
201
254
194
232
197
136
199
214
174
216
250
156
145
232
218
173
175
144
118
221
187
216
238
244
234
181
209
221
174
211
177
158
155
195
175
254
219
148
211
200
193
216
197
182
164
184
218
168
174
195
172
141
214
161
218
185
220
187
228
145
225
143
160
213
215
215
176
204
203
168
197
216
198
189
178
190
177
244
211
135
206
191
168
223
213
226
239
143
186
206
246
178
285
241
182
159
200
185
185
274
148
265
206
237
162
204
210
204
227
208
186
252
212
232
195
270
208
186
224
144
220
209
209
172
169
208
178
173
207
159
124
228
195
152
187
223
222
208
165
189
285
157
204
200
214
203
173
198
145
191
227
221
202
244
234
228
135
228
183
142
227
218
194
208
234
220
196
257
186
163
192
217
171
266
178
175
183
196
204
205
183
226
261
135
283
175
270
248
170
220
209
225
144
181
188
232
206
202
191
205
197
223
241
281
176
165
197
229
227
289
190
172
211
138
206
219
137
176
171
209
198
232
182
251
151
202
248
115
251
199
174
276
192
172
235
246
237
176
132
213
140
142
172
209
156
222
216
172
181
226
177
226
148
177
194
142
253
201
220
182
222
193
194
189
185
229
136
181
224
223
189
203
210
209
174
183
236
210
188
223
229
198
181
263
227
219
145
145
205
158
194
274
161
212
192
186
278
190
174
235
148
234
198
150
212
163
191
234
238
259
172
178
144
132
149
218
230
216
138
183
216
166
170
225
191
221
294
221
161
180
234
212
196
148
205
202
246
239
155
199
200
208
181
190
218
213
254
187
201
221
171
223
189
181
189
216
203
163
175
224
154
191
275
158
164
178
165
209
222
185
182
208
206
186
229
233
130
198
158
138
209
178
176
238
143
178
165
223
242
166
206
195
148
180
211
173
194
191
207
176
235
196
184
207
126
155
257
262
216
202
182
210
198
195
214
246
170
163
259
163
188
230
213
255
199
248
243
220
239
212
176
174
138
201
236
186
238
169
254
220
188
181
106
244
195
165
242
187
210
162
199
179
157
184
189
236
191
206
225
252
209
198
169
164
256
161
176
126
248
208
211
196
231
196
125
241
147
186
167
197
234
222
211
219
141
231
190
196
227
255
210
234
179
200
277
114
174
250
236
197
176
166
212
195
217
197
112
196
172
214
210
139
219
156
231
196
247
212
133
269
259
162
203
259
175
210
240
198
125
200
223
253
236
155
223
211
235
150
224
225
196
192
182
204
221
245
196
155
206
232
197
239
170
170
266
218
148
219
187
175
211
249
240
195
172
238
215
157
236
162
235
105
171
206
215
189
242
188
141
156
209
127
255
177
200
176
157
221
224
221
233
199
180
219
253
222
223
190
144
198
265
208
260
200
186
122
211
213
268
230
250
201
194
226
178
200
237
241
172
185
212
191
162
203
228
167
243
159
218
228
160
147
274
207
255
178
239
247
166
111
141
138
212
145
220
188
220
179
196
190
184
134
244
165
165
181
216
183
226
241
201
209
195
207
227
181
206
168
235
161
230
205
235
170
230
152
125
156
240
207
248
144
175
138
190
174
231
190
209
243
196
221
252
227
186
141
176
157
203
229
173
188
179
242
214
189
191
155
120
182
185
177
237
218
186
211
215
173
200
191
180
188
182
206
198
148
163
231
154
238
190
201
220
166
192
189
219
96
183
192
236
166
181
232
258
220
202
166
258
169
224
179
228
154
226
247
182
168
187
165
165
219
228
244
201
188
206
179
242
193
215
197
202
216
243
251
178
190
143
227
230
188
192
168
211
135
206
249
224
232
133
233
133
172
234
212
267
202
231
251
187
157
190
180
209
236
190
169
118
247
168
201
200
126
170
207
170
206
190
196
199
239
129
181
196
173
205
145
184
172
201
211
239
223
229
206
160
229
231
192
184
247
236
190
232
223
164
173
187
155
266
234
161
152
175
155
181
134
268
191
125
163
209
209
196
189
228
176
259
237
224
212
152
197
182
193
167
215
268
143
233
199
170
157
204
125
209
218
198
193
222
216
193
165
189
286
214
170
198
188
155
223
221
200
199
231
195
185
220
242
199
216
262
199
229
155
204
212
233
246
134
179
157
204
218
184
233
156
207
244
139
198
237
207
134
196
209
228
189
220
173
277
211
220
163
168
196
199
207
217
195
205
228
176
195
205
190
191
224
189
169
172
199
186
182
195
195
212
262
229
182
186
263
237
261
227
194
205
236
199
242
212
211
185
204
238
181
190
196
179
221
205
216
150
213
240
203
141
217
221
118
233
227
229
222
217
219
197
198
206
235
207
228
188
236
173
202
187
187
219
259
241
251
227
219
217
179
196
161
166
225
246
229
173
153
185
194
175
196
251
133
174
250
163
224
185
192
187
208
194
233
197
172
183
270
203
204
174
247
233
163
214
201
182
165
225
215
246
222
192
260
198
166
170
229
175
224
213
138
229
227
179
247
186
199
234
220
175
167
181
181
172
183
172
211
176
139
225
187
195
145
142
131
201
210
212
227
117
166
237
130
193
239
245
225
157
227
208
183
159
209
223
200
231
177
196
154
266
237
230
142
239
249
214
195
216
233
135
167
269
237
216
177
255
159
190
220
177
229
210
196
151
183
235
209
163
201
236
169
159
219
250
217
157
188
209
162
200
184
215
246
161
175
145
201
274
204
199
226
180
172
240
180
178
226
188
119
139
260
190
140
183
210
121
120
198
218
200
208
257
186
170
127
231
173
222
191
221
174
192
153
209
151
184
160
152
210
157
172
175
206
207
233
207
270
151
158
187
128
215
108
192
219
162
217
221
218
205
225
173
199
170
184
211
153
191
188
199
237
177
152
170
196
221
234
246
145
211
232
216
209
135
134
205
209
137
217
192
213
202
161
232
246
243
240
191
153
235
195
220
213
240
172
218
240
262
157
183
179
234
254
225
239
203
205
262
150
141
236
253
166
141
203
222
206
239
210
260
121
202
166
229
211
197
222
171
177
217
219
214
177
191
191
222
214
187
178
166
192
204
239
250
132
145
189
245
174
172
147
253
255
163
175
145
205
181
212
169
138
232
214
251
191
211
227
208
195
206
174
257
194
197
162
183
180
146
211
199
166
164
174
247
217
188
190
207
210
232
227
256
205
130
257
136
173
183
225
228
179
248
204
197
210
203
240
195
188
206
253
176
254
133
138
189
214
243
190
181
152
202
268
189
201
206
169
199
209
236
137
186
198
166
225
177
215
172
210
214
214
189
235
190
274
169
221
209
213
202
219
208
215
166
206
189
185
175
239
213
247
259
208
203
214
190
181
243
189
194
227
226
228
196
150
188
172
216
205
187
204
316
228
194
226
228
197
154
58
216
189
200
196
204
215
199
262
143
174
167
269
244
182
132
213
197
218
184
175
207
138
156
181
171
209
221
197
249
224
179
162
194
157
230
158
206
237
150
156
187
152
215
243
259
228
142
183
171
159
202
171
143
209
196
257
206
157
176
197
206
164
162
226
167
229
242
253
243
152
218
194
123
182
165
212
197
164
245
235
284
139
173
127
211
258
195
139
159
162
227
282
217
204
169
136
182
199
243
128
235
278
139
179
239
174
213
157
216
233
214
183
182
214
172
221
248
179
173
177
231
213
253
185
194
160
214
194
159
236
192
168
179
271
216
200
246
200
249
220
189
227
217
192
218
236
203
250
173
215
194
186
197
247
153
204
219
230
204
205
198
158
185
198
211
259
177
220
194
204
218
279
188
222
183
193
138
156
209
211
184
244
164
193
253
140
195
159
208
116
145
247
236
218
155
177
265
169
234
186
210
200
202
176
212
139
186
177
145
202
234
268
185
158
184
240
181
182
166
199
143
159
226
192
254
177
126
223
207
268
196
180
194
206
228
267
160
168
174
205
222
199
186
200
243
204
169
194
165
116
151
278
175
226
282
196
208
164
203
221
201
198
231
217
172
198
232
186
194
154
152
236
181
210
204
185
194
151
242
182
203
189
176
214
172
210
177
174
221
184
172
181
184
208
221
223
193
216
176
215
153
228
209
196
206
170
187
178
257
163
223
174
183
155
150
196
225
157
193
204
212
277
211
159
130
229
156
165
186
173
260
251
180
210
267
221
160
255
239
120
199
144
246
222
238
148
159
230
136
214
207
212
216
187
181
128
184
252
221
235
173
232
158
232
251
179
207
255
174
189
129
241
201
216
242
168
259
218
212
184
231
155
265
239
226
199
196
140
152
181
163
224
196
214
184
211
186
190
213
211
183
166
147
180
226
248
180
186
174
240
128
218
224
182
221
194
183
254
262
176
195
209
216
175
215
189
228
136
173
286
135
242
170
218
184
181
205
193
238
175
244
233
152
217
165
162
237
163
235
235
214
163
257
187
229
218
118
253
203
139
225
205
220
204
192
124
201
188
183
199
261
213
249
171
187
219
200
210
198
198
142
178
174
226
228
171
188
212
161
158
221
232
207
232
147
173
231
190
188
199
220
244
137
203
206
176
196
232
272
213
168
151
166
238
257
214
258
223
205
190
213
213
170
175
185
245
150
257
156
197
212
137
103
231
178
155
230
226
202
239
173
208
191
202
183
235
208
246
187
213
217
229
157
194
194
263
237
228
210
165
195
183
216
202
267
222
220
224
187
177
153
228
195
227
252
136
215
248
189
222
150
184
185
232
200
231
178
240
176
244
193
211
229
205
237
258
246
160
165
226
206
198
219
207
213
169
214
205
223
207
179
281
266
173
230
177
173
206
197
196
226
281
167
211
234
138
181
202
202
214
183
162
196
215
224
190
248
225
126
134
183
118
152
218
217
232
175
231
212
207
188
176
224
185
237
227
215
146
201
144
253
193
189
218
169
156
212
213
159
151
172
193
239
182
245
218
187
214
221
246
190
136
188
185
215
163
172
207
227
142
224
218
181
248
237
253
182
155
267
158
196
184
181
186
252
183
194
192
145
227
144
251
201
129
182
186
242
226
149
244
214
167
204
239
183
131
189
145
192
252
225
152
168
200
177
163
218
190
161
196
217
190
251
148
198
163
172
233
252
217
157
185
177
206
214
209
206
234
184
178
158
202
197
260
169
193
184
159
225
191
181
138
209
165
196
175
219
230
158
151
204
216
240
201
117
198
201
198
235
211
149
144
167
188
207
227
205
217
206
244
229
219
224
221
180
178
187
220
216
191
168
179
189
221
251
204
221
237
131
200
264
214
194
200
169
193
138
209
176
190
168
243
233
166
182
184
175
183
196
270
146
196
186
196
178
198
198
166
144
177
207
157
203
162
251
209
231
227
210
172
210
206
208
184
191
234
196
174
159
248
189
179
219
226
215
80
238
171
194
226
208
231
220
188
213
183
169
157
199
211
212
217
188
215
196
221
242
225
214
177
205
212
211
172
185
215
252
177
201
191
204
220
223
186
186
183
191
161
224
179
223
218
172
175
134
196
239
216
209
168
159
270
187
226
235
246
279
156
195
176
180
220
112
208
166
246
167
223
235
158
162
180
239
206
214
188
187
205
202
172
137
221
202
217
130
234
159
209
175
176
252
214
194
197
249
217
191
218
204
200
217
217
182
258
214
172
183
234
254
178
177
191
209
176
207
146
186
172
197
188
157
197
194
229
242
198
193
131
204
197
134
242
230
175
177
189
202
219
194
187
138
224
186
229
185
171
216
252
152
209
192
213
240
171
272
245
231
227
240
197
242
244
198
182
211
184
221
226
195
253
256
206
172
222
138
170
207
209
168
159
166
185
154
248
244
186
163
191
199
176
181
265
205
206
192
226
176
226
245
153
138
237
200
164
132
205
231
224
170
216
176
213
233
280
158
192
195
212
196
117
130
235
233
217
132
237
242
209
204
241
239
160
193
170
226
209
236
208
170
203
199
158
202
160
183
178
174
217
179
199
187
190
221
169
266
200
234
143
192
150
207
212
207
173
202
151
184
176
221
210
241
206
164
244
226
216
171
181
198
200
211
193
279
180
232
134
186
202
166
204
198
215
230
199
157
222
210
234
199
152
223
202
207
189
215
240
182
225
215
232
245
212
191
222
232
196
246
242
214
199
246
215
286
222
228
206
247
210
246
219
160
216
208
207
267
167
193
195
180
167
224
206
194
196
215
255
200
254
187
240
198
219
196
210
222
166
172
242
195
159
199
202
181
190
199
174
195
166
228
224
242
215
201
168
186
218
231
202
239
132
118
196
189
247
221
212
179
274
220
140
178
216
158
215
274
182
260
192
189
230
248
202
139
170
218
234
229
158
226
206
240
213
147
171
219
211
184
227
132
179
186
205
257
202
212
154
217
207
174
220
179
180
245
250
199
194
164
171
215
264
157
210
212
287
196
215
172
168
187
147
232
270
217
211
146
222
168
211
164
287
242
185
200
195
252
210
190
207
202
165
168
174
165
110
179
182
234
201
219
192
179
212
239
158
255
202
177
160
195
227
164
252
200
270
172
190
217
249
160
209
129
231
197
220
157
239
189
198
177
184
134
206
251
210
165
208
187
176
193
217
217
238
214
169
136
261
181
191
217
222
219
189
169
153
108
218
153
230
175
117
188
222
216
212
222
208
161
238
207
192
227
179
192
247
197
191
167
151
170
221
204
122
253
150
220
249
242
294
219
210
168
173
183
149
194
211
184
217
211
218
190
179
161
248
213
105
172
200
229
164
232
197
180
190
272
206
155
254
173
220
109
170
183
188
219
184
137
187
211
192
243
217
176
206
190
187
211
234
198
213
196
127
224
196
209
241
215
198
244
149
205
197
122
184
235
238
216
205
111
187
191
208
240
166
205
196
199
187
221
204
204
175
181
240
136
189
164
229
199
202
212
226
217
221
176
192
192
205
251
198
210
197
164
222
177
153
170
181
188
218
186
209
167
137
127
243
227
190
197
205
162
169
220
139
204
233
244
199
173
202
213
194
240
224
164
175
184
209
188
192
229
204
198
199
191
217
176
160
199
210
128
218
223
237
207
166
208
193
235
217
189
185
237
203
208
154
173
262
176
180
167
229
165
174
253
248
177
120
113
216
196
254
192
231
205
165
263
191
223
134
251
230
223
210
155
220
255
187
166
182
190
225
240
207
164
254
179
214
249
196
186
200
140
178
183
224
234
202
160
190
218
177
266
199
240
233
187
194
203
227
219
198
226
202
178
227
117
249
212
170
209
202
209
194
255
227
158
203
120
225
205
245
147
190
164
155
266
210
188
237
156
154
252
195
181
204
165
202
197
225
177
191
145
157
206
229
220
109
237
190
216
236
188
201
219
206
220
192
153
182
202
174
190
212
208
191
214
223
228
183
238
189
191
263
157
166
206
235
186
195
175
215
239
226
159
203
231
188
166
206
176
177
238
176
173
227
196
162
194
194
211
160
194
215
287
254
175
228
219
213
221
195
213
232
162
166
168
199
243
253
213
160
127
204
220
164
178
216
201
175
228
233
223
141
229
210
163
141
223
222
207
164
180
249
145
161
235
209
171
256
213
175
156
202
155
172
190
234
218
234
195
247
210
203
243
211
205
224
138
205
195
172
248
203
206
265
210
227
251
150
176
198
199
227
233
216
193
200
232
263
198
197
195
175
197
131
188
250
185
206
165
225
196
264
152
180
258
192
234
221
168
208
226
212
209
93
260
214
151
154
143
201
193
279
221
218
236
211
157
269
199
157
211
232
192
146
257
245
202
203
247
235
177
230
246
176
212
163
132
208
207
176
257
213
216
147
208
194
235
238
162
174
148
154
185
241
234
164
190
150
180
207
194
167
208
199
204
188
183
173
249
181
219
191
212
226
158
193
139
224
223
230
162
225
195
181
171
178
187
216
203
249
221
244
190
201
197
127
231
204
202
192
184
209
220
199
186
205
238
248
254
142
174
193
180
262
194
277
196
175
144
235
170
210
174
156
178
252
179
222
196
197
177
219
214
201
168
258
204
150
206
243
170
214
223
186
282
211
169
213
210
188
169
171
219
214
195
215
204
240
211
180
129
260
199
123
252
156
250
170
227
187
186
181
180
167
237
250
217
194
229
225
215
205
245
201
228
197
166
203
218
139
236
212
232
212
149
276
228
207
159
204
196
208
228
210
224
203
201
183
228
188
204
214
213
160
235
226
152
196
165
240
204
148
212
171
242
154
157
160
201
180
133
205
127
220
261
163
157
185
277
172
139
233
151
199
206
230
175
191
198
231
189
175
196
167
160
160
214
291
179
192
184
195
230
223
192
232
170
172
274
193
245
192
155
173
191
149
229
159
178
211
198
189
190
168
170
156
142
177
190
197
219
174
254
208
254
199
190
212
197
196
202
215
207
223
194
186
198
209
208
154
205
293
258
191
227
201
164
226
154
201
222
245
196
235
165
219
253
225
223
136
195
221
204
221
265
181
168
197
262
206
221
173
227
167
204
232
221
195
181
209
229
187
227
181
233
179
182
183
165
197
143
192
149
198
169
197
189
186
227
188
202
181
203
243
187
209
238
187
167
240
200
238
227
252
174
195
190
185
215
182
189
150
218
161
181
186
243
229
170
224
203
181
136
229
183
126
199
297
204
189
220
178
234
183
221
191
150
212
207
213
218
169
210
154
242
169
234
252
176
209
196
142
166
269
178
239
184
145
205
222
199
156
140
164
247
145
189
185
179
173
192
232
265
200
190
230
227
136
217
223
250
247
225
244
224
256
251
232
263
178
88
199
112
209
181
275
155
173
171
255
163
141
229
175
246
178
175
191
219
208
245
200
225
234
275
218
265
253
184
234
168
149
243
149
202
197
186
219
163
226
230
204
215
239
239
236
208
174
178
200
191
152
187
205
142
163
208
193
160
211
179
222
229
184
245
160
161
175
216
245
189
233
152
185
180
166
182
224
202
196
267
196
240
108
231
202
158
230
159
131
186
158
218
248
193
205
173
250
207
157
194
188
211
126
222
156
203
138
117
219
262
169
242
157
231
247
211
272
124
230
167
242
240
194
180
211
213
215
197
252
195
155
163
184
247
178
176
154
192
187
189
186
165
157
192
183
199
187
179
207
178
220
174
171
238
218
128
247
237
161
151
288
207
168
211
134
196
208
124
211
207
222
181
247
272
197
204
158
170
206
208
240
240
124
235
189
166
209
180
260
199
225
231
177
213
207
170
175
219
204
229
213
180
231
208
186
194
156
164
219
226
175
230
196
261
222
261
176
253
144
216
156
189
166
194
192
126
188
202
228
175
196
150
222
166
246
243
186
241
230
161
177
264
232
231
196
185
154
218
207
254
262
215
163
181
209
171
195
221
192
213
177
169
144
236
222
252
211
186
227
221
224
228
256
235
210
192
193
200
235
201
225
253
180
195
217
213
197
145
221
176
202
209
153
133
196
197
232
238
190
215
238
181
173
154
180
250
230
192
181
158
178
233
234
202
206
254
253
205
157
216
240
228
198
173
212
248
144
172
180
179
222
171
174
145
245
223
158
192
212
200
227
169
170
157
190
187
223
249
181
197
235
210
182
179
283
212
227
195
212
180
193
213
196
259
245
242
175
176
173
175
228
208
200
217
264
170
222
163
244
218
111
166
230
171
200
131
241
175
251
193
125
181
138
248
172
167
252
159
190
172
246
207
228
177
158
203
196
209
223
201
157
211
189
195
177
176
193
234
197
136
195
196
146
165
174
205
238
153
172
189
224
169
234
204
208
154
203
212
201
205
183
253
238
241
182
213
216
195
255
238
172
239
212
211
186
187
182
233
269
220
255
183
181
180
231
216
231
186
237
174
121
182
254
246
166
218
250
245
218
170
204
154
181
205
202
203
234
187
215
284
222
201
205
172
198
217
120
193
163
237
169
188
171
125
227
190
276
198
241
187
183
125
220
232
234
180
154
156
147
290
185
263
192
241
238
203
239
229
219
176
175
214
213
214
151
214
196
197
182
181
222
208
115
223
112
168
216
227
192
164
203
135
184
180
158
147
208
177
200
145
190
139
179
190
149
209
172
207
207
217
212
220
166
165
213
188
241
132
168
225
183
235
194
211
198
152
184
193
193
190
140
241
159
226
185
127
132
167
180
182
187
178
174
175
209
196
191
198
205
139
163
246
263
147
219
169
131
216
196
173
222
98
245
196
175
179
209
181
202
175
208
216
249
147
190
181
172
192
163
236
222
170
247
142
194
213
230
165
184
167
190
182
168
190
250
216
270
209
271
183
132
231
166
161
232
201
221
186
256
198
177
179
222
188
175
195
143
166
255
166
228
241
227
173
189
164
258
199
224
229
236
230
172
122
222
181
212
174
204
150
243
85
96
230
247
196
205
171
195
194
177
188
151
248
211
180
221
167
199
187
195
123
193
207
244
185
158
174
162
212
179
228
180
200
146
212
145
220
212
245
130
204
136
201
215
162
203
199
221
215
172
279
230
146
180
228
118
191
153
172
154
216
201
227
156
126
229
202
174
191
215
151
181
180
191
219
169
183
162
217
185
203
187
164
215
155
177
190
177
195
184
231
240
190
183
193
241
247
234
199
170
191
174
221
199
173
193
187
261
216
194
160
206
207
223
174
225
281
242
171
209
184
197
208
169
171
228
172
232
176
141
266
94
171
213
174
226
194
143
229
211
201
221
212
194
188
163
248
202
253
220
229
143
200
143
182
233
244
186
142
178
206
230
236
216
212
247
188
219
191
144
192
188
139
221
204
222
181
171
182
216
216
165
206
209
210
192
213
224
178
209
172
175
186
213
222
260
182
167
212
222
161
213
192
172
205
101
217
202
246
104
169
193
159
222
187
196
194
209
160
138
164
162
184
219
173
132
172
212
160
232
193
220
173
159
194
226
178
180
187
184
133
162
191
145
252
246
197
195
162
218
154
170
190
153
190
176
149
190
238
217
242
193
201
180
186
237
173
216
251
272
244
207
209
180
218
223
181
283
250
270
120
145
217
197
108
188
200
248
252
204
211
202
173
188
193
205
198
160
184
221
233
166
203
224
170
214
199
213
183
182
213
177
245
150
199
129
237
216
238
243
187
247
227
198
226
159
181
187
206
212
220
216
259
205
199
171
184
123
267
236
153
160
186
152
212
181
222
222
225
183
218
282
210
133
244
220
223
234
192
213
227
137
166
235
214
174
210
242
208
242
218
199
223
199
251
215
209
179
208
154
229
209
228
161
249
220
281
176
186
245
199
191
191
221
240
167
232
259
126
188
162
186
194
181
194
182
166
193
207
198
188
158
221
177
210
206
242
195
230
237
232
182
165
217
202
175
142
209
187
185
227
224
282
157
192
219
187
206
202
210
240
224
230
172
169
233
235
264
249
171
217
225
173
216
174
201
198
159
160
258
240
234
263
202
188
158
217
252
190
251
191
232
167
139
150
151
172
172
108
218
138
166
222
240
230
204
258
231
156
175
186
179
236
218
175
214
211
183
220
206
218
176
186
210
172
234
210
224
239
179
223
216
197
171
120
198
173
210
194
190
217
223
229
201
213
204
245
125
182
209
179
160
206
209
214
201
213
189
220
233
240
197
209
213
223
179
160
207
165
207
181
232
162
215
176
232
235
195
209
183
154
170
179
189
233
238
184
166
238
154
201
183
224
257
177
137
184
183
190
230
229
184
206
195
204
182
194
184
209
257
162
143
226
150
190
217
227
133
159
194
209
202
196
201
212
174
199
163
213
222
215
160
162
177
207
170
219
213
169
237
209
207
208
182
200
204
243
241
177
212
143
161
222
127
196
237
212
152
240
211
240
254
218
166
239
245
191
274
116
226
235
234
183
208
234
224
170
199
152
222
171
250
181
201
230
221
117
239
221
235
182
180
183
129
195
209
157
231
207
205
192
236
175
226
204
205
155
150
226
193
210
183
197
222
191
208
262
193
147
253
213
217
196
183
198
161
236
177
215
199
191
239
231
217
198
207
278
248
163
153
237
189
229
105
152
211
235
149
212
232
229
219
181
198
241
167
145
218
209
223
282
211
201
224
244
198
241
247
134
242
208
150
235
237
194
152
229
194
246
253
223
198
170
222
205
251
189
218
144
211
176
204
210
227
236
153
172
259
176
266
164
189
198
241
211
177
217
134
178
233
223
209
225
174
248
211
259
193
222
249
205
239
260
230
254
177
202
176
216
232
193
177
159
218
171
194
143
242
163
221
198
245
224
230
239
227
230
106
186
200
255
164
247
144
155
232
182
172
209
240
248
256
159
206
164
158
209
222
216
225
266
214
205
154
210
176
189
204
164
218
192
182
238
191
165
185
187
240
161
204
201
201
208
134
273
179
184
202
224
259
265
172
249
223
190
179
177
191
257
216
202
270
180
185
217
172
205
191
156
100
150
229
158
119
189
181
149
139
202
222
242
200
208
181
196
153
196
272
180
176
204
219
243
220
254
231
200
217
169
209
209
230
178
197
178
200
157
179
162
228
197
205
275
217
209
174
224
197
193
230
179
191
163
220
231
169
172
258
196
241
235
147
187
150
243
143
223
177
178
254
216
159
158
231
181
207
233
173
172
161
213
264
181
248
198
190
188
207
243
240
202
175
187
202
230
213
228
223
224
217
227
144
151
189
184
174
201
214
220
227
205
232
215
170
191
209
215
252
225
202
224
192
287
222
181
230
197
222
272
214
150
230
182
148
205
185
180
227
149
187
188
196
142
244
188
182
206
196
181
190
140
162
252
235
204
198
218
194
173
173
158
202
135
261
157
156
235
180
202
255
173
242
172
236
143
208
163
216
130
220
195
207
202
198
159
246
225
202
199
219
226
168
126
236
220
167
194
244
172
204
213
211
182
165
139
195
239
235
175
214
224
173
175
174
269
180
179
232
169
162
151
246
246
203
203
217
184
194
137
250
151
214
231
134
231
193
141
236
143
238
240
200
199
208
171
231
221
176
201
206
210
232
200
209
226
259
218
221
188
206
197
225
203
156
166
196
182
162
160
224
243
225
204
161
217
223
201
216
190
212
197
220
206
155
243
150
135
228
219
190
212
161
222
226
200
214
218
214
155
185
151
248
255
282
159
207
161
237
207
239
183
183
147
213
205
236
165
207
247
209
182
195
182
214
176
215
201
235
252
182
195
204
187
243
179
211
149
189
203
206
264
227
213
148
222
215
280
135
240
161
190
128
177
188
176
242
169
253
211
230
184
195
221
210
219
186
188
167
229
265
197
138
192
151
177
162
246
151
228
199
259
198
189
201
194
236
181
238
130
241
259
188
245
181
251
191
193
201
195
210
208
217
174
217
162
228
137
213
153
181
185
157
183
228
228
140
192
187
184
241
167
228
197
229
174
187
210
158
153
102
158
235
212
217
189
245
194
198
192
194
237
185
147
120
137
219
225
195
250
240
205
224
199
198
251
197
231
209
240
190
245
235
196
202
172
238
225
246
192
220
146
230
217
180
169
249
194
209
245
188
225
180
221
218
202
189
189
213
222
158
219
246
209
171
192
192
214
200
233
169
135
247
215
177
178
186
167
240
170
162
206
122
210
279
249
207
145
193
122
222
206
127
170
143
211
244
232
177
179
196
209
194
202
167
215
176
173
244
186
192
228
227
200
190
156
140
200
255
133
217
198
211
204
207
162
175
160
179
142
206
142
182
133
235
256
216
241
263
221
227
228
221
234
194
145
198
180
227
176
105
213
188
143
224
184
187
228
204
160
221
151
190
215
262
194
193
283
194
197
203
192
236
168
218
193
203
233
250
154
229
187
233
219
256
250
198
209
120
253
209
219
154
208
280
207
204
198
211
253
201
140
219
187
199
149
178
250
242
160
146
233
181
245
197
214
174
241
212
182
209
174
205
188
199
202
192
189
145
175
201
221
228
150
236
189
195
274
146
221
242
188
243
211
216
180
250
139
150
166
180
269
184
201
199
169
177
119
169
143
249
189
153
155
211
177
207
147
189
105
277
253
265
245
236
188
220
222
133
238
174
205
217
154
241
142
183
185
185
121
233
153
189
172
238
255
173
242
165
127
216
178
171
230
217
254
183
235
153
200
219
240
156
211
236
224
208
168
194
270
178
228
209
169
170
209
243
189
204
249
204
210
162
257
212
178
202
206
187
187
227
118
228
167
207
137
231
256
180
192
188
179
182
213
177
155
162
195
190
140
198
209
176
196
144
185
262
224
164
182
185
236
173
179
160
205
240
208
205
200
210
208
234
196
222
199
111
231
186
207
165
236
168
259
253
181
200
225
207
142
192
273
159
231
251
238
194
72
170
229
215
203
209
135
254
239
211
222
210
207
157
175
165
245
224
182
243
195
234
241
267
181
254
221
207
173
265
198
200
235
206
227
157
191
170
149
175
209
190
188
194
189
145
176
241
244
181
212
175
214
204
247
229
200
217
191
226
180
286
183
179
210
145
190
210
219
215
164
203
247
130
209
185
198
173
273
211
187
163
140
234
185
203
149
156
217
185
225
206
178
124
170
132
210
234
231
247
134
206
147
196
191
229
233
218
219
205
160
175
196
268
187
159
202
186
193
262
175
172
192
246
204
148
223
217
176
215
162
243
221
181
185
195
270
174
180
200
237
181
139
168
196
136
184
245
199
214
212
205
188
179
206
158
167
202
142
190
237
234
224
162
223
192
237
151
216
190
186
178
167
225
161
201
214
161
218
231
205
154
172
185
239
197
215
195
149
187
208
171
201
146
181
211
219
186
214
222
237
206
182
148
188
166
223
197
182
209
186
183
190
149
171
224
206
229
151
206
178
220
193
251
222
199
221
139
241
216
184
199
199
183
155
249
165
244
202
215
171
226
173
179
215
198
211
174
245
196
168
218
234
230
203
174
192
211
155
173
157
192
225
235
208
223
225
208
220
154
207
192
211
192
205
260
207
192
145
246
216
179
229
139
244
187
180
223
240
198
197
214
213
220
156
207
198
202
194
219
154
201
134
182
182
214
236
251
184
177
176
236
245
229
219
116
198
236
149
189
207
161
200
178
253
164
212
184
181
200
158
199
196
185
216
249
206
149
239
194
222
187
249
206
178
138
222
176
254
205
178
256
167
201
235
174
127
178
269
210
248
238
172
163
249
234
172
195
193
150
210
192
240
258
197
261
161
228
177
213
158
164
173
176
165
214
234
204
182
213
252
204
150
217
203
194
224
178
204
220
190
181
177
242
183
230
199
201
241
221
268
241
243
144
174
184
238
144
225
187
156
208
161
165
199
201
178
233
159
200
238
240
137
213
166
163
157
170
211
242
184
219
209
219
216
187
248
248
142
210
145
193
168
204
254
190
194
180
189
208
159
117
214
225
160
244
176
139
179
204
215
179
206
151
169
173
188
144
208
227
203
183
210
184
171
225
172
232
224
186
258
144
242
181
195
237
224
193
186
179
208
242
200
153
220
231
160
168
164
185
225
204
161
180
199
201
193
244
180
178
198
158
233
144
194
225
172
185
221
191
199
155
176
227
236
253
127
195
240
199
184
214
165
137
198
176
169
220
158
292
187
171
234
200
195
180
195
200
187
204
176
186
208
173
204
230
226
249
149
215
226
163
253
157
184
243
205
238
182
154
209
159
166
149
195
186
268
277
267
207
218
166
197
172
136
231
132
197
195
245
219
215
192
177
181
127
237
191
190
181
255
179
185
222
191
223
236
175
235
224
216
153
225
258
220
180
216
203
209
170
240
209
213
182
229
209
186
210
220
133
189
175
182
215
173
199
190
227
162
103
197
216
228
247
188
218
239
163
197
129
203
201
206
211
208
173
257
168
202
207
241
233
183
205
181
241
195
190
271
211
231
213
153
207
207
225
215
132
219
200
210
222
181
227
240
185
204
188
237
240
248
168
243
245
231
172
205
241
253
214
215
261
233
160
198
195
149
169
239
198
181
199
157
199
199
224
257
210
224
158
183
200
214
289
203
228
267
168
176
212
189
239
204
196
157
183
207
223
110
226
211
219
180
247
229
204
223
229
165
265
190
233
266
205
253
235
164
221
200
174
209
207
230
137
174
183
187
185
157
155
273
268
201
201
278
215
171
207
216
224
213
187
184
199
187
179
190
207
161
203
201
210
240
228
227
205
171
144
209
208
174
137
210
223
237
224
147
173
232
191
155
208
232
224
208
260
214
264
203
166
151
174
129
228
220
176
187
234
199
185
181
198
222
223
252
209
164
222
207
222
230
219
155
166
165
186
201
233
228
164
207
199
191
246
240
241
240
198
245
167
202
228
189
166
243
125
194
150
173
178
247
194
242
195
176
228
139
192
175
205
222
218
202
245
170
168
113
219
177
215
138
251
230
237
183
146
212
181
172
160
148
207
192
198
174
194
179
207
175
209
138
215
199
175
156
231
158
208
178
161
253
135
152
203
165
185
190
191
194
211
211
192
257
235
234
171
211
183
203
221
189
206
171
199
158
144
229
244
229
180
183
238
208
221
187
204
239
267
198
191
195
217
229
165
157
166
194
214
174
185
178
185
227
207
180
224
191
131
192
184
169
209
227
192
224
251
180
180
203
203
179
153
170
191
174
139
152
195
223
264
202
180
172
192
147
172
170
193
176
154
189
188
240
261
265
162
181
180
196
151
210
222
189
171
208
218
231
150
166
200
236
229
178
187
182
228
207
256
209
150
207
177
156
163
153
245
128
143
238
106
185
189
219
145
193
176
226
214
160
234
180
227
244
241
267
151
201
208
232
182
215
171
196
207
228
174
224
207
234
181
211
174
219
186
262
160
243
185
225
171
131
231
211
155
201
223
199
241
183
167
216
275
207
200
201
234
220
272
189
239
218
179
223
204
202
256
209
180
180
155
178
187
179
240
165
220
160
206
115
157
116
292
227
260
226
262
206
193
155
175
151
240
217
252
186
201
245
107
258
195
179
224
227
186
203
193
237
184
170
236
211
217
215
205
129
181
143
163
269
250
179
131
162
144
249
239
209
232
245
150
184
184
163
204
170
161
151
179
163
261
199
206
182
263
105
191
180
185
172
281
279
228
174
202
174
264
218
237
246
191
230
233
173
256
222
181
230
198
187
159
140
252
241
199
162
191
183
201
240
206
223
194
238
141
264
253
137
219
156
200
191
255
201
175
240
215
170
210
181
160
168
206
216
259
111
159
196
166
225
223
122
218
194
238
154
212
243
237
232
143
245
202
205
276
177
220
215
171
239
183
211
216
168
218
196
178
237
204
203
236
157
230
215
121
179
156
211
211
212
152
177
191
254
250
220
246
179
286
178
226
206
231
230
161
196
249
187
222
232
246
168
156
203
175
170
201
127
213
208
206
303
236
195
125
217
199
137
203
197
192
171
190
201
84
169
245
212
136
230
218
185
209
201
225
177
176
197
260
169
170
188
146
175
243
129
278
165
184
201
237
150
192
205
231
195
143
210
223
228
181
207
173
186
216
176
185
193
218
155
199
150
180
188
195
199
240
160
185
206
219
226
141
176
194
159
263
204
182
200
251
248
186
223
231
200
204
179
185
205
209
223
202
173
161
199
187
152
236
240
167
154
183
259
167
185
206
283
282
199
169
205
252
240
217
256
177
223
178
190
139
174
188
171
204
231
212
119
212
254
197
134
197
127
229
196
191
180
253
169
234
210
187
207
127
219
217
165
257
206
180
200
184
228
174
206
226
250
258
156
139
166
192
172
217
269
216
184
172
189
177
257
220
218
246
154
205
238
210
269
199
222
242
191
228
187
203
219
145
227
232
221
208
216
175
175
189
192
209
249
108
243
231
221
183
169
149
231
171
187
210
223
195
208
182
240
209
176
253
216
198
173
208
174
178
204
150
195
203
236
170
157
162
175
228
220
182
207
200
251
217
239
232
214
182
214
207
204
183
215
203
184
234
222
178
204
255
229
210
194
202
174
236
254
236
147
237
193
212
214
187
207
227
156
213
214
180
285
154
176
220
211
190
208
220
235
239
217
195
241
169
155
178
220
229
206
221
239
153
125
251
197
186
215
177
218
165
173
201
228
209
204
230
184
187
171
139
217
154
200
263
194
196
242
204
237
203
214
232
191
207
198
201
202
178
211
179
195
190
205
166
217
267
161
219
221
218
174
294
164
228
153
212
175
227
221
190
158
228
168
190
202
175
137
185
195
206
202
214
182
193
228
156
200
194
224
234
198
189
181
219
220
212
253
181
169
254
213
175
227
162
190
286
173
184
185
151
194
206
188
163
187
226
189
164
144
181
208
194
216
144
207
230
153
221
231
160
252
168
260
197
183
251
187
172
149
136
178
248
199
218
149
185
191
181
186
227
175
239
211
211
221
192
190
131
155
223
178
239
204
168
141
229
228
218
194
200
173
178
232
192
272
211
189
148
197
116
243
216
187
185
213
214
211
191
186
190
228
255
131
238
228
223
254
264
212
235
224
210
191
143
197
207
256
197
176
215
189
154
151
150
201
168
225
197
211
249
183
190
244
239
229
199
226
198
261
207
186
236
143
235
219
226
147
284
190
247
258
171
146
155
129
153
184
192
171
211
226
220
167
209
229
272
208
230
200
266
230
116
221
208
160
190
174
195
172
227
227
189
206
230
177
234
227
179
182
178
235
188
187
210
169
170
208
218
170
165
187
168
207
228
242
153
218
213
139
238
207
232
198
191
137
207
199
184
234
175
162
218
261
194
204
208
211
221
132
208
164
220
153
175
231
178
182
206
274
227
264
240
236
169
135
199
211
185
225
208
222
194
163
200
216
239
197
177
190
202
232
184
166
93
192
182
177
174
171
200
224
235
210
230
179
252
219
199
229
240
224
223
224
162
238
114
200
183
101
200
183
250
159
166
134
156
263
241
147
175
221
231
131
251
233
170
216
273
152
155
188
218
163
212
228
234
251
178
152
201
209
134
169
161
224
207
231
132
173
183
240
215
207
216
197
200
218
199
184
224
189
203
182
132
190
207
252
252
165
138
155
217
198
168
239
164
153
184
162
210
245
202
205
231
133
153
177
243
161
152
212
237
238
211
219
133
165
213
210
220
188
171
155
228
135
194
201
220
206
128
199
168
230
248
181
200
247
219
187
237
284
181
204
140
217
195
191
264
164
179
215
246
236
204
252
202
233
214
184
170
211
169
202
189
154
270
223
176
194
186
189
234
174
226
199
234
219
162
181
249
197
156
218
192
255
154
212
195
198
215
185
201
217
193
159
156
167
198
194
222
264
159
226
146
142
209
125
191
178
234
226
223
215
203
257
245
184
214
236
202
188
249
214
233
264
270
181
216
163
178
162
208
207
256
160
164
217
219
207
268
145
179
224
144
194
183
187
229
177
247
156
217
236
215
178
189
238
127
185
191
168
179
164
213
176
197
176
251
221
218
199
139
153
220
234
241
155
230
131
191
222
199
195
226
181
222
248
202
180
203
206
190
212
209
193
192
207
240
209
167
245
197
247
195
201
231
142
211
140
221
215
179
225
225
210
201
178
197
202
236
197
181
179
191
231
197
222
221
195
153
199
209
227
153
177
215
165
243
169
238
187
212
212
208
213
255
197
200
175
189
204
213
240
174
211
211
176
250
201
125
217
189
125
194
182
209
239
223
203
235
157
180
198
150
178
167
174
191
223
162
226
202
174
249
159
174
184
167
167
173
227
238
211
186
169
223
188
191
241
240
219
159
218
174
150
268
213
216
208
208
217
212
230
163
175
192
181
168
181
190
183
203
223
181
169
160
237
200
240
192
218
237
213
222
189
185
159
206
156
206
257
261
235
184
174
201
158
248
183
231
234
183
229
227
222
230
167
182
112
226
176
222
194
196
247
199
193
229
163
224
219
121
216
251
200
212
230
118
208
187
176
204
267
235
164
227
156
179
190
162
225
210
215
203
189
181
144
219
271
216
219
184
134
208
163
176
152
201
269
203
163
177
205
238
198
162
171
216
199
140
180
216
190
203
193
198
287
139
139
124
191
209
232
237
208
242
236
197
165
230
182
177
249
223
174
210
203
204
191
133
230
243
188
260
207
194
250
216
259
170
126
203
229
230
211
172
222
154
239
207
128
205
246
174
206
215
268
158
145
207
215
212
228
209
187
141
133
221
233
272
229
214
154
242
158
192
261
183
220
158
160
228
188
175
117
186
255
132
204
120
161
175
145
222
197
185
221
240
238
154
107
190
138
180
185
191
237
209
187
221
177
236
163
195
168
190
219
156
221
186
197
202
251
237
225
205
229
194
238
192
153
183
162
234
274
146
263
202
195
198
177
209
140
224
192
163
176
175
200
243
143
176
223
126
192
240
284
144
199
254
204
217
172
129
203
175
224
267
171
219
247
175
211
174
273
240
214
177
172
207
163
158
207
216
190
185
224
228
156
225
262
119
201
186
193
222
179
230
233
169
133
230
143
160
223
203
197
183
207
215
188
174
193
252
186
170
105
203
255
210
207
208
213
256
158
173
239
163
206
196
176
196
180
132
166
242
202
213
149
213
237
160
247
254
108
224
240
232
192
238
206
231
175
202
174
166
181
180
236
232
175
193
202
216
191
202
246
198
250
227
219
222
167
177
193
214
183
206
227
185
199
223
282
149
215
151
264
208
186
170
186
280
213
256
215
202
161
251
185
288
193
237
143
262
172
233
186
186
210
237
87
249
179
160
249
204
257
193
181
246
182
199
158
251
178
165
162
268
252
212
226
114
205
204
209
156
207
189
189
185
132
251
255
217
241
176
184
204
147
200
189
239
203
241
208
261
144
194
229
163
196
207
239
204
238
206
209
166
260
217
171
236
216
158
241
188
134
215
195
185
193
189
199
222
158
152
209
151
191
163
155
176
249
97
187
233
249
196
246
142
219
198
240
197
198
223
254
153
183
247
148
234
236
279
215
217
188
230
273
196
187
221
232
170
173
233
208
181
203
173
182
207
254
202
233
217
230
248
223
191
240
242
184
199
206
250
244
210
235
235
132
213
168
157
209
161
226
117
166
182
164
190
144
219
222
230
200
196
236
206
197
156
200
204
199
220
209
224
164
160
164
227
187
175
206
185
196
231
199
213
208
185
171
239
138
149
182
238
215
222
185
203
234
202
182
188
234
225
209
220
219
240
218
266
256
217
208
193
212
219
196
195
223
179
134
193
157
222
243
198
225
223
165
187
165
189
229
240
164
176
112
155
193
159
229
241
235
152
197
204
190
220
198
178
151
185
222
213
160
188
195
173
247
126
211
216
205
199
170
197
229
198
151
243
230
215
161
180
275
273
241
198
169
211
169
120
239
181
168
171
238
199
182
217
154
144
207
148
173
178
163
217
213
150
212
151
156
213
207
216
247
165
252
172
224
199
214
227
195
190
235
180
253
259
196
191
202
200
201
195
191
178
203
243
263
247
213
221
208
154
255
171
129
191
183
149
198
212
222
183
230
173
225
173
157
239
142
218
180
206
226
215
233
131
216
186
150
213
226
215
212
194
173
177
215
192
113
194
185
198
161
160
181
208
148
244
184
207
214
231
159
197
188
178
163
196
221
175
180
169
151
194
213
197
168
218
208
173
199
178
189
145
168
238
210
252
203
210
233
235
163
203
220
209
189
209
141
149
242
225
190
236
229
198
224
195
180
224
200
228
156
188
130
196
205
223
208
195
222
248
203
208
200
236
192
190
180
187
210
161
247
156
205
205
207
217
160
178
252
179
152
180
218
236
209
209
193
242
218
209
216
184
185
152
237
206
242
221
179
209
185
210
168
230
235
269
208
164
236
247
138
258
171
150
222
138
246
211
253
175
178
167
240
146
191
187
190
258
242
231
222
196
136
192
274
236
183
199
187
184
242
180
202
228
168
178
164
225
189
187
155
247
192
196
240
138
214
242
229
173
198
192
226
196
188
234
259
197
193
173
148
241
140
179
176
234
222
190
184
188
166
226
247
175
229
123
199
156
194
196
186
197
259
220
247
153
267
195
210
221
137
195
241
194
202
208
203
235
234
176
195
239
203
186
257
182
161
171
203
206
194
244
204
214
208
222
180
145
115
243
263
191
207
181
251
257
214
144
199
187
209
173
213
243
233
120
229
177
165
176
225
229
216
191
173
194
276
194
223
171
166
195
158
203
230
196
214
115
268
229
245
176
253
242
175
186
195
207
198
163
233
225
174
175
248
220
265
215
150
164
220
217
250
249
214
228
234
190
219
177
261
184
200
170
241
181
160
160
174
213
178
265
191
117
235
171
254
253
149
159
197
218
174
188
126
254
233
163
218
210
227
218
141
166
168
190
176
181
160
180
181
222
165
240
128
178
203
178
192
203
249
198
274
175
169
235
228
142
151
157
213
170
196
188
243
177
201
176
185
210
224
267
198
165
258
158
198
150
154
189
174
279
168
237
180
165
125
194
239
191
257
178
166
103
197
178
198
216
165
220
185
179
241
206
194
175
197
146
231
206
170
200
191
191
215
216
203
120
165
157
217
216
198
171
89
159
257
196
216
210
242
239
176
219
156
236
201
194
186
215
181
221
252
214
209
139
197
159
168
188
127
216
217
213
204
220
181
218
232
225
167
188
177
254
190
209
206
212
173
176
160
242
180
207
169
176
180
226
143
238
237
249
171
219
187
220
240
210
238
225
231
181
149
210
159
188
181
216
140
146
136
178
214
255
191
188
224
180
197
243
141
139
200
214
226
234
226
211
208
200
167
245
204
188
236
163
175
190
249
235
197
156
180
194
158
193
269
181
166
142
256
201
222
184
226
221
186
173
232
252
162
189
210
219
187
154
229
227
164
183
183
225
164
159
229
174
212
177
198
202
157
205
155
216
168
207
212
246
195
217
191
218
202
178
201
231
203
148
234
200
145
212
186
249
236
255
146
213
155
163
177
207
267
179
214
199
187
154
213
185
226
199
243
224
230
224
233
240
202
217
232
193
203
209
216
248
215
214
199
212
204
261
184
270
200
221
225
185
165
225
213
229
159
182
188
184
173
283
133
231
194
206
203
247
209
191
107
246
188
221
180
250
142
202
220
237
211
214
210
207
253
151
175
176
162
212
133
231
252
221
205
133
231
222
206
164
232
195
180
180
169
155
190
251
239
178
196
226
216
206
191
119
245
151
191
200
175
216
238
188
195
139
213
227
169
193
188
172
202
233
221
200
218
157
172
203
197
162
200
255
219
162
198
177
229
160
254
203
154
218
151
205
200
179
225
214
252
234
217
205
201
173
235
109
180
229
229
224
263
230
191
213
168
132
180
195
229
179
182
258
153
204
220
204
206
232
186
218
196
225
213
246
164
144
209
237
197
166
189
200
237
200
140
174
218
218
123
181
239
217
215
184
203
162
237
238
216
156
231
219
220
189
173
140
198
202
157
179
225
197
172
177
206
187
228
167
216
215
290
145
197
213
210
133
194
106
184
233
272
256
148
195
190
202
216
255
265
241
233
235
203
249
218
203
241
200
195
158
263
205
146
194
286
191
234
182
159
177
213
123
169
204
225
193
189
190
260
133
215
197
191
266
197
127
212
135
227
165
227
184
169
153
131
209
235
180
164
179
187
167
174
212
239
85
229
244
225
232
232
190
218
204
216
184
189
227
195
161
221
172
250
196
184
218
214
177
196
210
170
217
233
186
138
216
257
161
238
194
228
176
230
209
176
134
238
145
246
171
188
126
99
223
216
209
156
157
213
201
249
183
212
172
227
197
252
205
183
234
208
193
178
235
234
239
178
200
201
268
137
220
212
236
194
212
285
209
197
223
189
226
171
200
191
222
203
166
197
213
259
181
204
232
173
177
177
197
190
159
195
143
215
265
209
197
176
208
234
216
240
174
256
196
218
226
213
120
268
234
147
226
234
145
190
241
172
140
158
246
238
198
225
245
164
204
164
202
184
236
214
221
140
206
253
223
164
239
240
247
185
197
256
184
195
119
246
188
202
222
161
207
146
230
228
137
172
227
189
196
178
171
182
185
203
159
203
187
239
216
213
213
140
267
162
206
211
211
195
228
149
257
203
135
220
205
243
221
227
149
215
136
110
232
236
195
189
164
225
165
174
150
162
198
147
222
168
206
213
240
208
259
169
147
203
154
210
220
213
241
158
215
152
206
209
215
184
148
124
203
184
204
248
158
172
196
199
214
204
253
218
227
194
188
279
179
181
164
251
199
180
146
180
208
266
240
179
183
192
205
209
186
202
236
176
292
176
249
257
145
226
188
142
218
308
199
169
141
257
164
216
185
142
238
184
187
208
237
108
242
200
259
159
212
189
183
204
167
155
184
214
204
223
166
258
184
203
242
176
124
192
212
197
226
263
143
182
217
153
172
211
230
225
194
102
201
245
261
188
209
186
188
218
209
227
92
231
170
227
218
223
202
177
187
233
257
252
250
262
189
147
192
192
199
214
229
169
206
243
219
174
246
171
247
224
201
169
203
236
107
177
219
198
226
162
158
210
135
157
122
238
306
266
148
210
246
242
209
132
219
189
220
177
197
166
182
252
202
233
193
166
209
151
202
228
192
218
198
237
229
132
218
232
135
181
202
210
185
191
191
218
247
223
206
122
131
218
181
183
211
169
258
179
222
191
215
242
261
274
191
224
190
227
156
243
229
190
215
189
153
202
222
204
217
182
199
209
150
233
187
167
211
170
134
215
211
132
207
178
154
162
196
166
285
205
185
122
253
202
197
164
220
106
176
262
227
236
126
181
247
127
240
234
210
167
257
153
157
179
235
205
273
170
187
195
243
199
181
183
186
180
221
206
185
230
221
175
250
236
198
232
156
188
223
195
212
168
180
259
207
162
223
181
177
247
197
141
264
265
166
225
163
165
227
161
189
203
169
217
188
151
160
176
179
201
203
186
207
178
189
163
121
261
207
177
211
155
194
206
259
141
165
249
194
154
256
254
208
157
229
179
163
262
158
192
176
229
213
201
201
213
152
191
171
259
263
143
238
179
157
194
159
216
161
146
249
151
176
228
188
202
212
212
159
197
173
218
222
187
212
171
211
182
206
162
188
224
217
201
204
195
148
225
219
218
235
246
218
207
239
160
154
202
198
207
128
211
215
197
186
220
174
194
202
203
226
188
195
246
185
189
239
164
221
257
215
181
238
231
126
215
169
212
223
239
184
184
176
159
220
222
156
208
247
206
197
236
169
239
130
152
185
127
145
146
131
188
177
232
193
232
178
182
182
207
233
167
241
204
212
162
229
188
195
150
215
189
217
271
205
165
199
219
209
188
243
216
174
229
167
242
149
271
300
138
148
190
178
219
203
201
154
195
157
264
215
184
109
222
188
241
215
236
210
237
219
156
206
228
149
190
232
191
249
224
213
176
210
182
243
152
194
205
201
147
189
208
217
208
233
266
199
218
198
200
222
142
230
136
150
121
217
230
232
164
150
241
161
221
206
201
142
215
207
189
216
161
164
224
146
187
187
205
228
177
179
269
271
209
151
222
213
255
182
223
198
209
182
188
202
174
234
250
299
194
224
200
210
224
160
211
224
203
201
213
191
176
140
201
210
96
164
219
136
189
212
228
217
185
159
219
217
148
168
176
245
173
253
242
200
235
173
155
232
118
197
166
148
183
231
209
212
174
160
246
136
213
163
231
225
178
189
207
189
186
254
198
223
179
218
181
237
184
222
231
231
195
172
223
245
204
189
219
172
243
199
249
215
259
231
167
180
207
248
173
191
259
217
198
170
202
233
238
216
208
198
244
216
213
188
216
271
229
163
216
174
217
172
209
231
246
199
230
178
187
231
179
159
227
177
181
215
192
216
171
177
167
187
159
215
247
243
259
179
215
192
175
222
249
229
247
171
237
214
225
176
254
238
175
206
234
183
215
254
241
149
203
264
201
228
137
190
140
227
188
244
226
154
221
223
183
227
162
144
171
208
188
193
213
220
193
174
170
220
235
182
205
222
163
152
190
231
116
235
246
267
184
168
140
191
203
236
189
223
190
194
128
210
229
185
177
136
248
176
202
169
148
141
183
132
255
206
244
209
218
211
206
145
211
202
144
191
171
155
210
181
177
241
206
226
208
198
156
229
141
147
207
230
222
188
212
170
187
226
174
200
208
239
248
167
256
176
246
200
169
287
236
181
155
241
221
211
209
220
219
158
196
160
129
224
270
153
209
214
195
191
160
272
200
192
220
248
210
184
217
186
249
172
252
246
159
184
191
227
206
225
211
176
176
220
169
215
218
256
119
230
217
206
197
247
221
230
241
234
129
186
193
230
199
191
123
185
169
147
135
198
253
184
175
190
237
226
205
232
170
201
222
214
233
234
208
131
170
139
174
292
171
194
138
233
221
224
186
218
221
201
222
207
208
171
165
211
190
207
220
148
191
209
256
212
210
237
190
169
133
161
214
247
146
163
180
192
253
171
212
183
202
152
207
227
167
225
147
225
184
199
188
187
147
239
196
204
228
184
185
199
184
252
126
145
141
163
207
198
183
253
178
180
243
146
167
219
252
170
191
159
142
187
191
186
178
203
231
192
282
224
227
209
248
193
247
191
226
222
201
220
204
170
225
163
236
174
221
212
224
183
201
179
198
170
185
168
227
220
199
156
184
263
233
147
187
187
248
239
203
175
198
174
195
232
212
195
165
191
214
178
203
184
222
184
153
226
218
247
243
200
192
269
170
213
250
179
208
169
216
190
182
245
186
206
215
209
230
152
252
215
212
213
213
228
155
196
179
182
127
218
205
174
76
239
161
176
185
201
217
241
260
169
191
184
199
192
149
222
231
222
240
193
201
192
140
270
185
181
179
173
188
105
199
207
148
210
132
202
225
201
146
217
235
217
144
211
227
229
211
182
203
192
208
174
159
205
211
207
266
135
260
177
203
180
232
196
197
245
196
157
178
158
202
220
236
188
142
222
199
224
76
213
275
195
227
246
194
230
223
144
170
161
247
152
188
248
183
182
141
148
208
183
162
242
155
167
259
181
131
196
187
188
195
268
253
173
131
214
228
220
185
165
203
203
171
216
195
252
181
216
221
204
251
209
132
224
152
200
192
202
243
198
174
225
153
210
254
269
233
224
147
214
211
213
236
214
213
255
143
224
242
250
213
200
203
187
197
174
219
302
262
187
173
178
227
247
184
203
267
231
216
230
265
191
144
183
214
195
195
218
213
202
151
176
257
188
223
223
193
200
210
220
196
182
243
178
128
186
178
215
187
244
204
228
253
287
223
229
242
159
228
190
160
215
246
198
203
135
214
189
187
185
159
160
168
204
264
202
187
155
166
209
198
251
209
203
197
265
236
239
168
215
226
128
214
194
170
216
193
191
130
246
203
212
155
145
182
219
201
196
206
229
217
179
240
168
182
235
170
136
237
195
251
204
223
267
170
197
235
259
172
176
212
210
153
237
255
206
208
224
150
148
209
165
247
214
232
178
170
216
226
216
179
162
150
201
229
202
220
231
227
181
194
152
232
205
199
235
186
272
185
193
165
192
198
169
190
208
141
149
236
225
217
216
246
188
263
201
206
209
191
199
161
196
211
221
185
167
152
213
178
192
177
218
176
203
210
251
242
142
202
245
154
213
147
189
170
167
128
202
213
212
227
188
263
270
204
131
200
234
198
205
132
170
195
109
199
230
195
184
202
217
182
128
115
219
208
188
217
141
169
171
158
190
179
212
266
205
199
173
94
223
104
127
227
172
221
173
160
196
211
131
198
246
162
237
218
208
208
250
216
166
153
210
153
145
216
253
223
251
217
225
207
197
245
238
211
206
158
168
198
160
135
181
170
194
219
202
168
197
165
137
208
243
183
166
204
226
164
193
175
240
164
229
220
210
251
179
180
186
220
264
218
275
211
208
226
143
200
175
171
218
159
229
170
242
169
214
153
196
185
191
192
186
229
214
253
153
219
196
186
227
230
209
225
142
198
214
160
129
245
217
260
199
246
215
238
170
258
254
180
222
188
226
241
247
209
179
161
250
257
173
214
265
258
199
156
293
170
222
214
218
230
209
207
137
249
103
199
232
185
196
202
194
185
176
200
234
218
215
135
184
175
219
180
208
245
241
196
207
152
197
259
205
177
269
233
275
211
263
179
252
190
197
184
219
182
279
176
156
141
230
231
233
239
223
188
150
217
211
199
241
167
204
187
198
236
227
228
200
194
226
194
201
214
224
216
179
188
165
182
251
242
152
207
165
180
211
207
211
180
170
169
164
162
209
120
230
142
224
201
206
176
213
203
146
218
226
225
256
189
191
203
226
178
190
195
180
162
128
219
231
191
174
217
170
208
235
243
229
189
178
201
120
134
252
189
230
224
223
212
178
171
189
191
205
256
223
201
197
220
182
107
270
266
175
221
146
193
212
193
204
237
222
199
190
213
209
250
178
239
211
221
271
175
184
209
175
238
185
175
175
207
210
201
196
177
208
122
208
232
193
179
214
249
189
212
187
196
199
226
274
246
256
224
205
173
245
179
187
194
214
164
170
254
228
205
205
206
192
232
201
271
174
109
219
157
138
229
234
201
207
195
154
171
187
172
225
190
213
222
180
155
184
220
227
233
222
135
195
140
206
214
224
179
172
260
191
233
185
228
204
213
203
191
221
173
187
225
166
181
198
191
268
167
240
236
178
172
214
237
220
149
231
192
191
200
151
198
138
234
228
142
244
220
209
148
169
165
167
220
241
200
244
216
208
183
226
224
176
178
252
188
157
219
168
229
215
213
265
179
215
248
211
220
204
111
157
242
201
226
207
199
236
162
232
190
219
164
162
259
201
166
277
189
167
228
185
177
183
166
231
177
239
187
177
223
181
206
210
206
194
171
177
180
164
156
179
216
235
205
218
212
213
206
185
165
193
146
197
162
144
134
193
188
146
267
140
185
212
122
193
188
232
180
155
226
197
218
176
145
156
192
185
195
205
222
204
197
257
134
259
156
261
168
245
286
171
198
231
229
233
256
214
190
231
212
219
174
264
250
212
214
261
146
215
164
211
240
159
137
153
212
258
167
172
144
213
174
238
226
136
177
195
150
143
148
185
223
186
226
228
269
232
202
193
193
162
138
187
182
189
185
215
141
202
223
232
253
230
200
183
233
171
248
191
214
185
238
238
164
243
179
211
201
220
145
216
123
212
209
236
178
231
189
220
232
164
194
166
197
193
235
212
207
153
226
230
163
195
227
157
155
201
209
215
174
210
141
185
174
184
181
187
152
207
104
220
237
200
206
188
221
198
175
167
183
191
154
203
156
209
173
199
213
235
186
187
205
148
224
181
191
160
211
140
194
195
230
167
177
154
177
229
87
185
107
267
229
198
192
227
200
203
187
171
240
152
261
186
178
164
166
159
184
138
183
147
180
239
270
171
222
228
234
192
196
209
162
206
229
234
227
187
219
164
152
221
171
214
211
245
230
193
239
233
133
184
214
180
199
147
114
219
207
249
138
145
256
198
201
181
249
180
173
124
182
196
196
185
186
237
232
136
235
237
209
188
239
245
198
191
210
214
230
210
226
193
238
185
144
222
217
190
175
182
214
188
233
215
145
153
224
181
249
201
163
220
272
223
223
225
199
196
210
170
211
127
129
228
222
179
221
191
172
229
215
293
207
214
154
202
275
124
223
242
241
229
220
228
181
156
224
206
115
237
188
163
108
211
218
153
253
204
209
202
213
231
224
237
138
201
160
232
142
179
167
132
210
257
153
159
177
176
249
260
218
200
125
209
205
166
238
156
283
177
150
254
184
218
116
196
262
172
150
174
135
206
178
150
179
231
197
229
130
255
250
158
261
257
184
236
217
155
155
238
183
219
207
134
199
151
157
213
252
182
139
216
220
226
166
253
195
159
184
176
202
243
225
165
182
176
225
197
207
190
129
192
172
262
218
145
181
176
167
182
197
195
245
211
194
189
215
195
185
223
211
213
178
255
213
188
183
155
155
218
202
236
153
229
252
265
224
182
268
136
194
141
205
257
172
232
202
209
153
226
246
214
203
216
155
223
247
190
173
243
87
246
157
205
195
257
197
164
215
156
202
251
252
119
197
216
209
194
198
200
232
231
256
142
199
196
215
142
167
259
250
242
236
171
202
243
207
148
163
194
216
217
191
191
216
179
225
194
179
243
152
236
154
180
213
171
153
174
187
220
183
224
267
180
226
161
217
117
155
198
219
152
234
200
236
190
193
196
185
241
196
182
160
147
190
184
214
146
179
249
208
168
113
225
253
178
244
165
234
235
226
216
228
180
188
252
213
197
212
212
241
197
205
168
200
124
228
224
195
216
155
208
216
192
166
214
169
141
200
186
229
252
180
198
190
145
168
204
225
199
192
205
208
245
203
265
208
156
219
223
170
184
211
168
196
196
173
233
167
225
249
188
163
200
191
238
228
177
117
150
228
153
172
194
171
203
193
122
219
152
164
241
190
228
169
200
230
216
174
213
145
255
155
196
195
136
184
211
231
186
158
204
157
167
266
175
205
165
259
175
190
269
134
208
220
227
165
144
220
180
278
127
218
182
185
197
171
261
200
213
194
234
199
232
170
212
144
180
164
164
277
171
208
219
182
165
181
195
157
241
227
231
223
203
198
191
260
190
191
159
201
229
228
212
162
177
160
232
172
91
176
168
199
256
187
248
233
165
188
180
226
256
238
166
250
246
168
235
208
196
197
225
162
231
183
209
174
164
184
235
228
223
217
226
214
219
184
191
161
242
204
220
148
195
227
209
180
245
173
191
176
189
217
216
207
196
155
181
193
213
216
206
204
177
174
195
168
219
179
200
268
212
183
162
252
205
172
202
216
255
241
175
186
236
186
201
128
241
185
240
148
190
193
129
190
224
129
198
187
141
228
201
156
169
177
167
193
161
202
192
245
182
203
218
215
211
217
201
225
178
230
199
134
212
187
250
179
190
231
163
118
220
205
203
221
207
181
192
187
201
168
168
190
211
263
232
228
189
150
228
181
234
174
186
220
198
227
273
169
224
222
163
189
190
226
216
213
202
172
175
164
235
213
166
172
239
177
169
211
197
96
211
252
224
299
229
231
162
220
167
263
239
236
228
206
236
216
198
197
219
165
192
136
133
177
216
198
269
264
221
243
168
215
161
194
147
239
193
253
208
266
226
134
220
212
235
139
173
238
231
165
201
219
159
231
184
212
182
196
260
211
214
192
195
186
186
152
202
185
165
231
222
199
178
184
137
130
242
195
256
267
174
211
262
197
196
197
199
192
205
217
211
215
161
175
191
221
155
273
190
219
183
200
192
227
186
220
231
237
153
162
157
207
207
231
245
158
155
168
189
248
215
165
169
251
271
230
240
232
152
209
151
192
167
254
171
211
146
220
184
229
223
195
252
145
170
212
172
118
217
194
249
206
202
186
158
246
178
223
259
136
126
187
183
155
218
159
185
151
197
234
181
224
158
217
233
239
212
203
253
173
153
182
194
158
171
186
228
173
182
174
172
203
203
171
156
191
199
192
171
197
194
230
196
177
163
225
183
236
161
175
212
174
203
127
177
193
229
233
164
221
160
232
175
181
218
158
228
177
170
240
202
214
179
187
140
171
186
263
168
179
181
159
184
196
208
199
180
210
245
158
254
158
243
188
178
170
244
156
224
221
162
255
144
185
149
165
209
174
190
131
185
173
239
162
260
232
201
196
150
175
225
162
178
250
202
191
257
196
163
203
159
210
190
232
174
174
214
253
165
183
257
230
217
228
186
232
181
184
206
237
185
190
134
182
233
216
196
208
208
214
157
236
200
262
172
209
201
183
169
185
186
151
170
223
175
238
251
193
210
165
201
197
211
206
253
188
186
145
175
268
190
166
206
217
165
183
246
196
205
232
289
236
202
207
208
241
183
178
163
198
255
179
187
204
237
225
154
177
192
244
144
286
167
198
181
230
230
216
110
157
221
214
230
180
192
217
136
223
231
165
172
191
222
196
213
218
236
140
166
186
237
201
197
198
200
274
262
218
195
178
153
205
215
116
211
204
238
188
155
213
227
206
147
237
122
247
223
179
158
202
226
168
246
170
165
214
167
105
167
238
174
204
225
186
179
197
193
241
145
220
250
147
231
189
182
207
202
149
174
201
246
227
227
255
228
163
193
170
222
241
201
206
152
212
217
221
189
213
194
245
178
197
175
193
175
133
238
227
258
195
235
132
163
178
215
164
114
134
195
246
214
178
183
291
156
184
117
167
218
183
203
152
248
170
166
239
197
209
228
211
229
218
192
214
242
143
249
173
182
221
187
188
152
209
172
163
178
232
264
207
222
178
175
151
256
214
165
223
152
180
186
182
230
188
261
183
170
236
182
217
271
264
180
221
172
179
224
201
164
221
183
186
226
241
176
210
224
233
213
196
167
222
219
180
217
200
204
190
220
180
212
163
177
239
172
208
266
231
203
250
196
240
232
160
210
174
216
182
211
211
221
173
203
206
159
223
183
164
163
222
155
214
179
209
215
206
280
223
174
178
168
228
191
177
245
251
239
143
236
187
197
182
221
211
223
222
196
209
224
167
151
236
150
149
134
140
237
208
232
258
268
190
216
202
192
221
175
196
170
186
230
220
196
219
228
202
171
240
250
237
174
250
188
167
199
185
239
214
214
174
164
240
224
192
213
234
146
203
241
201
189
213
150
218
199
201
176
211
221
180
233
207
234
237
258
209
235
214
101
188
213
207
196
266
139
230
244
179
235
246
188
153
174
226
212
145
259
162
242
175
121
183
217
214
229
211
168
230
226
195
154
230
222
167
223
166
171
173
197
203
201
183
208
235
261
209
192
225
199
202
204
276
201
122
207
204
195
218
188
208
213
178
191
197
164
223
182
209
248
204
219
214
206
226
225
259
192
269
279
227
204
214
192
240
231
234
175
259
93
203
188
187
196
121
146
111
198
204
217
223
209
229
165
156
125
213
178
198
157
259
153
192
254
197
155
145
242
201
165
236
216
225
189
178
192
143
220
240
234
142
157
171
232
247
231
186
183
177
243
265
147
233
148
133
170
170
264
183
225
165
219
233
208
234
199
187
147
208
237
207
231
231
182
262
186
242
232
270
191
134
238
200
193
241
142
184
190
239
237
227
230
200
150
209
161
273
250
144
189
187
209
223
191
234
157
177
173
202
231
193
241
111
151
198
171
245
182
230
190
224
201
257
171
152
170
200
194
196
147
198
190
145
228
243
248
261
165
127
225
148
156
223
247
189
211
171
195
122
225
176
158
206
183
287
172
199
167
243
248
153
280
170
158
144
233
211
235
142
192
144
199
164
190
212
239
193
169
150
180
161
217
221
180
207
192
209
202
147
173
205
250
201
227
139
227
235
178
210
217
234
197
159
176
234
207
228
225
250
156
185
188
197
177
228
198
180
121
181
195
148
172
158
166
215
180
200
231
210
156
212
140
197
245
195
209
229
190
192
224
197
162
173
215
207
169
235
214
216
260
169
171
242
155
193
163
203
223
190
166
201
201
119
255
176
190
211
205
228
213
224
196
236
236
197
138
189
251
189
178
193
250
150
188
238
175
245
215
204
195
184
158
169
297
143
214
276
168
201
216
182
233
173
191
205
259
257
166
159
196
151
183
230
184
187
245
258
200
91
247
270
188
133
206
239
234
219
204
221
199
236
197
203
205
229
172
211
185
238
226
171
235
237
189
262
215
222
183
168
208
235
276
199
192
165
181
228
238
228
196
214
215
196
205
211
197
158
252
175
174
250
147
223
245
177
205
215
226
205
231
242
237
223
267
194
207
184
233
213
193
185
163
258
195
182
212
195
178
227
237
264
251
219
241
217
200
201
194
236
226
191
246
193
209
244
175
188
251
214
174
183
197
190
218
172
223
182
173
225
195
226
218
171
225
254
213
164
210
175
143
177
206
190
246
220
159
175
183
205
206
267
164
165
210
196
197
212
250
152
209
268
149
209
213
236
174
215
245
199
207
143
176
256
148
138
229
183
230
245
147
159
217
194
187
191
244
205
183
208
199
222
199
241
234
178
219
154
165
209
224
241
228
233
216
197
133
257
233
251
203
238
185
200
136
189
193
161
171
206
203
221
225
168
229
192
209
189
211
157
158
162
225
190
203
168
230
187
209
233
254
206
253
167
172
177
211
197
205
190
152
127
139
193
160
239
207
208
157
160
231
206
215
176
169
226
168
190
237
215
156
237
242
159
214
203
193
223
235
226
215
175
163
227
245
199
169
244
216
169
200
189
247
206
187
176
176
210
197
234
176
198
230
184
169
130
197
268
184
164
232
178
198
211
262
230
215
250
198
214
228
220
249
220
183
176
194
182
211
191
119
203
215
242
209
190
207
159
137
172
223
234
168
242
222
241
69
168
264
247
204
232
176
243
218
143
250
164
205
246
184
191
231
186
233
154
165
278
159
194
212
208
247
206
221
214
187
229
208
242
202
189
122
246
185
217
135
205
219
253
174
140
251
215
229
195
158
262
181
140
199
257
210
227
223
199
159
219
229
161
239
190
160
118
179
208
169
193
219
248
141
209
213
242
178
180
251
169
192
173
193
186
149
167
196
177
204
158
176
180
201
170
224
157
139
160
206
195
204
186
149
178
202
161
132
205
191
156
186
192
243
208
176
94
212
187
247
226
214
170
212
220
242
203
174
271
157
225
177
208
270
269
186
190
258
148
271
166
170
202
177
137
218
231
224
240
224
205
243
213
157
207
206
215
148
172
176
146
255
213
202
191
256
123
210
195
203
130
204
203
219
205
199
169
202
240
170
187
299
253
205
203
193
236
133
227
256
208
232
182
159
247
225
206
162
227
295
189
222
181
181
223
161
193
218
225
245
157
209
228
203
250
238
177
160
233
200
155
197
191
247
225
228
164
189
211
181
185
248
197
193
197
284
259
142
228
166
181
209
197
272
175
179
189
243
230
219
208
232
199
200
208
158
131
118
208
241
176
209
166
239
232
207
222
186
175
213
161
187
177
193
207
175
151
227
203
255
199
159
188
210
265
157
169
226
222
205
152
196
218
177
201
182
224
118
243
229
179
232
191
242
250
223
180
167
260
200
215
233
242
199
276
223
198
245
178
214
223
230
146
186
208
207
185
159
174
167
155
188
179
253
128
200
103
196
182
187
176
243
189
194
178
176
210
208
156
187
191
219
154
234
161
180
215
199
228
181
196
223
152
137
156
203
190
221
166
199
169
179
260
196
196
198
236
169
204
230
184
254
139
154
188
160
231
178
190
248
169
194
150
168
227
182
194
178
197
186
202
172
218
224
256
228
201
256
201
141
179
218
159
142
228
172
166
242
197
228
177
188
242
257
243
219
261
211
166
185
182
229
218
198
168
240
214
215
165
193
183
190
201
266
156
256
199
135
233
145
152
238
203
178
246
262
178
163
233
180
214
142
178
201
183
166
251
211
209
205
251
128
201
209
188
195
235
176
194
197
200
155
162
211
158
203
151
210
206
178
229
179
199
208
139
234
180
215
208
194
258
217
214
229
206
183
189
133
209
195
210
165
200
161
162
191
159
233
251
155
184
166
200
179
158
223
205
188
208
226
203
223
261
217
157
243
168
262
255
118
222
109
193
222
137
167
204
182
146
195
209
212
178
168
155
183
195
206
177
216
162
122
176
174
183
179
170
192
176
189
249
177
177
235
191
248
203
177
275
203
177
204
187
151
180
164
239
199
215
214
173
233
203
201
212
184
102
200
221
224
143
274
221
140
158
123
216
142
155
148
212
268
249
273
155
211
249
227
183
238
224
234
168
194
117
188
190
188
234
173
218
190
227
219
213
247
164
227
222
197
252
211
250
173
144
217
196
134
216
183
228
222
120
201
197
115
227
258
225
198
203
245
200
158
174
215
169
193
171
155
200
265
203
158
172
253
151
197
221
215
191
224
224
152
251
245
249
135
260
225
180
213
210
260
240
225
155
242
192
212
155
216
189
225
151
153
270
188
206
157
210
192
238
214
174
229
171
204
146
196
230
210
205
236
203
139
191
197
149
228
208
247
237
194
222
186
198
219
198
191
211
216
164
199
230
159
199
209
204
185
221
184
181
167
105
190
229
163
202
230
208
187
161
155
220
204
183
225
209
198
184
252
247
168
185
198
155
252
164
249
205
204
136
190
230
178
202
235
210
189
167
198
221
211
243
224
159
197
230
172
251
207
207
172
166
228
134
183
196
175
133
171
172
189
220
192
176
163
233
215
204
175
131
217
237
240
176
106
202
190
195
102
185
183
245
177
201
222
240
178
189
254
205
241
171
189
253
219
243
201
294
187
183
176
186
219
219
183
181
212
221
181
199
231
194
137
168
213
203
253
165
176
204
203
167
181
205
106
173
189
227
212
214
223
239
180
285
200
182
200
224
239
198
233
182
211
199
188
243
198
199
190
219
168
176
206
192
210
151
240
195
196
142
168
206
198
224
184
240
210
242
261
171
170
240
247
231
183
204
267
242
236
189
236
221
162
215
217
161
189
246
190
222
217
206
205
245
194
208
190
180
242
166
213
200
238
149
172
179
244
153
226
156
205
136
139
224
218
210
230
213
229
181
215
293
161
222
176
186
161
187
160
225
173
170
275
212
147
152
179
218
179
180
244
166
194
167
209
259
150
167
236
259
162
150
133
212
238
234
151
213
158
222
175
233
186
138
197
179
156
219
170
209
231
259
211
141
191
105
187
265
162
170
178
171
207
218
196
211
184
160
158
217
254
183
251
259
204
214
247
243
164
141
176
204
153
187
146
211
214
162
187
250
128
222
145
146
219
224
211
201
258
113
215
164
209
174
157
208
182
193
197
195
209
185
199
230
215
256
227
226
208
223
185
122
203
191
182
182
176
236
191
236
269
152
152
175
201
175
228
182
247
177
214
167
173
237
180
244
195
196
165
206
185
161
219
259
165
201
198
149
176
166
304
133
250
178
220
200
221
172
245
205
231
277
217
221
216
219
227
180
239
151
225
208
235
184
203
204
252
165
107
221
259
240
233
213
245
229
165
200
163
172
275
184
192
247
270
192
199
231
253
198
229
195
185
163
232
166
179
221
256
229
158
315
199
123
153
229
232
233
194
217
134
145
195
191
232
184
154
252
188
190
198
171
197
167
216
219
224
162
240
185
202
188
158
191
183
262
155
204
197
278
221
247
184
162
268
202
230
161
184
195
224
187
206
238
192
185
219
207
267
173
142
183
177
205
198
175
156
211
168
164
179
207
198
260
184
224
225
175
178
241
192
179
246
155
219
155
229
246
236
253
229
230
230
224
144
232
212
214
160
216
160
179
198
191
218
240
191
260
224
172
176
84
169
198
149
163
220
206
161
182
212
213
260
163
215
220
133
212
190
213
208
245
210
189
238
247
185
208
222
239
182
207
212
127
231
201
193
183
159
221
260
206
240
251
216
263
210
204
194
221
173
199
212
228
224
224
201
211
124
216
196
212
191
160
242
171
202
194
183
188
155
194
223
174
213
243
199
253
176
215
228
199
213
206
135
151
198
226
243
230
218
198
175
188
275
201
180
213
210
244
138
253
236
155
162
221
183
140
214
210
193
142
262
166
179
166
109
205
187
209
186
247
180
196
238
168
218
228
210
202
244
243
234
167
229
207
212
223
211
193
160
233
216
240
246
184
153
204
192
218
223
197
169
223
207
175
156
179
222
199
180
194
196
180
151
152
180
214
194
203
219
190
238
217
170
154
179
188
205
191
225
191
187
244
178
184
180
241
201
199
191
182
162
164
185
169
227
199
221
197
233
256
197
212
165
189
179
155
201
239
217
213
203
215
201
209
160
218
155
191
187
177
220
193
171
203
243
167
224
142
167
182
241
232
206
233
145
215
192
241
170
203
165
199
219
188
193
120
160
229
248
248
193
202
245
172
207
203
160
232
189
261
230
189
174
206
159
169
162
191
194
179
175
197
170
189
288
185
220
224
233
179
228
202
218
217
229
176
252
211
245
277
172
182
155
259
242
181
220
192
210
203
234
203
223
161
179
217
188
212
205
254
192
215
211
195
154
194
192
238
202
200
193
169
204
169
201
255
153
160
210
243
178
229
175
183
240
230
174
207
163
175
248
254
146
186
209
198
176
186
158
195
213
131
230
243
208
218
183
201
145
186
171
217
151
233
175
192
252
237
241
178
253
245
158
212
235
224
202
213
101
213
195
224
193
216
239
235
246
242
200
193
139
207
248
219
200
184
194
225
105
275
197
279
195
186
174
218
175
211
180
184
213
188
197
159
236
207
199
164
128
199
187
219
143
242
160
200
169
253
153
225
188
192
215
217
193
189
238
208
224
201
203
210
214
247
178
190
305
187
275
187
175
170
227
211
134
172
223
207
194
243
226
216
142
171
212
228
248
212
214
199
199
177
222
259
204
185
167
224
179
141
249
188
181
131
173
208
240
248
145
170
242
254
224
211
213
249
151
211
210
211
233
262
158
223
180
167
133
182
240
202
191
249
211
212
211
182
192
224
205
246
196
164
201
128
185
261
221
266
150
257
207
155
217
270
235
222
158
153
248
189
190
226
233
164
164
253
161
221
265
200
149
207
175
260
246
174
179
203
180
180
131
195
200
152
161
154
258
138
256
213
167
169
152
173
222
202
227
231
236
195
246
179
183
152
102
266
188
173
251
161
209
220
163
189
159
172
234
198
175
206
165
215
205
184
228
159
197
199
229
232
198
185
193
202
258
213
167
259
266
184
235
197
264
188
227
133
243
154
123
245
192
195
153
191
250
209
217
242
236
202
238
187
168
182
187
206
204
176
167
209
232
217
206
215
192
247
207
159
175
188
141
235
233
212
228
200
152
258
234
242
189
212
229
165
204
191
224
186
199
187
245
189
186
207
156
221
229
240
220
147
204
223
193
253
237
191
184
214
155
157
156
167
124
228
175
212
199
208
209
144
206
172
187
224
209
214
206
186
244
216
219
193
115
210
211
165
192
229
162
217
239
199
228
182
173
221
214
215
227
173
172
259
239
219
152
246
176
261
212
190
174
204
128
236
242
231
214
191
187
140
184
188
157
153
233
128
270
194
225
146
223
196
212
157
166
192
209
190
203
134
167
139
249
210
178
183
223
185
135
148
206
144
170
224
204
240
223
247
277
153
170
198
176
178
235
169
227
198
230
215
195
118
205
211
198
268
219
226
159
191
148
191
182
179
207
185
210
212
191
206
218
206
214
204
274
255
255
198
171
185
174
262
233
177
170
108
246
197
206
237
197
158
176
224
157
214
225
218
228
154
189
246
226
168
197
172
187
211
154
205
195
201
147
201
193
202
219
167
231
195
175
222
180
126
164
206
264
148
214
221
169
204
210
205
266
154
172
194
219
186
205
201
219
206
136
245
204
213
166
252
158
205
203
192
204
238
247
197
196
250
170
231
300
154
202
253
219
176
177
178
240
194
130
193
205
168
206
209
177
184
182
210
149
213
284
231
232
198
216
167
200
271
147
170
173
173
270
193
267
209
205
191
208
191
199
219
165
218
193
86
206
232
249
186
219
217
194
224
221
226
195
188
228
193
192
254
191
206
207
153
259
207
228
128
218
184
200
121
147
230
156
147
223
226
215
208
234
230
256
223
157
226
193
211
188
230
162
190
238
209
202
178
251
211
153
222
186
221
196
200
167
227
166
197
237
197
219
198
211
201
162
220
177
188
116
172
188
187
197
240
224
204
231
116
192
188
218
199
198
214
227
229
155
237
140
237
208
168
175
218
191
187
188
195
234
179
137
246
209
203
180
199
215
182
250
177
132
185
148
184
187
192
172
113
196
208
146
234
194
201
248
148
188
139
207
128
182
191
164
176
217
249
185
250
201
202
148
214
167
230
214
206
214
214
182
216
143
197
212
169
220
192
268
197
198
220
166
162
169
161
258
168
138
235
232
209
203
162
210
209
127
191
188
214
218
192
225
253
173
193
214
238
209
209
197
143
152
232
244
232
152
263
207
217
239
161
204
192
183
163
196
197
185
250
190
144
235
142
124
233
177
207
203
240
236
224
212
199
193
180
254
222
217
239
186
266
197
243
169
216
219
174
180
185
188
186
176
189
208
200
224
250
203
140
224
184
231
182
175
143
185
227
171
200
248
138
206
187
251
228
180
170
183
204
175
186
204
235
226
202
188
209
173
202
183
148
253
158
239
200
210
191
164
201
257
179
176
160
239
166
201
232
211
230
228
207
209
226
148
200
215
244
194
257
235
215
188
165
204
214
166
182
114
180
123
185
124
130
194
223
135
253
211
174
190
218
133
208
178
202
213
251
183
188
169
134
197
261
164
212
209
219
256
161
175
187
223
224
162
221
171
210
177
204
243
161
190
203
146
167
200
213
193
155
258
224
204
194
196
203
222
173
266
274
190
209
188
140
259
245
188
224
200
224
149
107
171
180
203
232
228
206
232
182
184
200
203
261
192
274
150
219
167
211
157
230
186
170
274
182
170
153
202
223
178
253
225
151
186
149
191
191
167
207
250
235
137
191
173
131
204
215
197
178
181
273
139
173
190
199
171
155
204
208
175
175
190
226
187
253
134
197
147
231
143
200
201
182
188
213
213
203
189
201
183
193
203
217
180
240
197
197
154
129
179
188
237
212
230
177
197
150
128
242
204
186
250
238
201
199
184
220
183
232
204
151
223
186
168
255
228
220
267
176
205
194
133
88
195
191
257
214
222
209
231
202
222
177
224
174
148
213
188
214
231
197
236
180
231
235
170
182
219
200
249
193
221
192
210
253
212
224
181
193
183
183
182
182
195
148
129
175
199
204
249
259
216
188
196
249
178
209
222
199
183
195
224
201
222
193
192
160
133
162
155
245
253
173
214
163
155
169
173
185
135
195
217
228
210
212
207
199
179
233
198
240
164
207
205
174
227
195
246
242
219
197
156
197
183
199
206
245
302
244
227
230
194
169
171
236
142
282
204
167
173
171
157
236
187
217
176
229
231
189
211
176
192
180
249
203
203
144
217
231
255
186
190
232
252
230
229
268
234
214
224
198
224
176
240
162
165
191
190
191
139
183
237
183
211
233
167
167
241
160
183
116
184
230
176
234
211
159
173
176
187
174
201
227
201
180
225
210
233
168
218
212
222
160
193
248
178
213
235
199
212
189
180
130
197
212
225
173
176
158
256
216
260
152
245
137
206
182
229
203
244
233
217
269
197
197
172
167
277
140
169
183
197
161
211
183
87
263
197
234
174
239
188
147
280
161
204
226
213
205
207
227
180
259
217
217
255
235
188
236
187
227
210
187
263
217
134
184
147
199
139
174
176
206
189
205
169
221
144
174
194
180
206
168
231
154
238
159
187
142
197
260
228
170
222
223
149
212
207
192
159
242
230
188
145
224
127
238
135
243
208
194
260
258
180
190
223
205
185
179
279
201
174
192
139
217
147
207
166
189
198
207
232
259
187
229
154
223
158
274
235
184
202
193
170
185
212
145
223
225
187
183
204
169
227
189
219
193
232
165
236
205
268
206
87
226
204
230
225
184
221
203
205
198
138
280
229
196
161
196
241
148
214
242
130
252
192
221
165
171
194
164
180
190
228
144
244
203
190
231
237
230
245
230
219
153
193
222
212
176
198
186
208
200
130
172
227
173
229
179
201
192
178
189
268
149
273
155
175
228
148
176
167
182
176
178
233
183
191
186
230
153
158
135
224
213
236
199
153
188
159
195
171
195
250
186
141
202
171
191
230
201
192
184
162
152
198
192
189
212
243
173
193
218
206
245
209
245
198
176
214
244
232
215
208
267
230
203
167
199
165
202
201
228
176
179
149
172
227
230
200
179
224
213
210
204
231
221
197
188
153
178
174
108
155
252
99
263
207
245
204
253
181
199
198
194
210
192
274
154
252
214
201
166
175
155
209
183
205
164
187
188
271
221
225
222
240
249
164
165
224
161
237
244
209
183
138
233
208
198
252
172
167
218
211
243
226
257
221
252
122
230
113
176
184
174
232
231
196
205
230
218
240
208
159
162
222
221
246
198
270
242
160
225
216
160
213
264
201
191
163
224
249
232
215
180
225
169
199
223
191
170
187
198
216
177
205
220
175
225
232
216
150
204
260
221
142
236
206
237
241
198
161
197
243
196
215
211
166
242
204
257
207
171
224
250
205
156
226
133
201
163
210
202
171
224
258
190
269
192
217
171
218
168
191
208
214
242
200
143
208
196
212
225
158
283
230
217
259
220
183
232
218
235
222
223
234
177
250
245
286
272
121
174
188
202
184
166
170
111
153
200
217
182
223
165
137
182
212
242
222
156
210
171
170
192
242
278
268
167
191
208
144
266
212
223
223
202
243
166
185
160
211
130
221
169
223
223
124
189
173
186
176
206
243
208
188
165
152
222
174
183
160
238
204
233
155
165
206
216
254
222
244
187
230
219
203
164
188
186
171
250
303
231
151
163
187
154
226
189
176
235
213
207
159
225
228
191
175
235
197
232
193
196
220
186
190
209
209
165
184
198
246
221
210
166
151
248
212
236
144
248
184
186
168
221
229
195
206
184
168
154
181
213
185
213
261
149
172
174
273
165
214
209
159
233
131
204
213
197
221
141
152
186
199
238
206
220
217
186
237
262
248
197
234
193
233
204
228
190
254
217
201
235
217
109
139
201
204
227
174
155
195
255
193
172
195
194
250
223
190
159
105
241
211
250
191
231
204
173
148
257
202
170
180
168
190
228
185
255
253
137
193
154
181
161
211
241
233
229
217
114
241
241
168
251
181
185
265
188
200
173
191
207
222
245
220
194
141
130
248
192
219
211
193
229
218
291
139
228
193
241
237
181
237
209
161
186
217
186
105
190
208
242
197
163
165
236
196
139
165
246
236
183
134
189
160
190
188
152
169
214
189
175
229
238
145
235
278
241
180
229
222
257
136
221
222
144
175
178
191
127
228
198
218
243
189
190
186
217
224
250
175
157
168
193
213
149
198
251
231
161
181
195
191
167
161
208
209
254
200
266
228
229
243
185
182
193
172
182
189
239
188
222
256
218
229
195
199
189
224
201
160
189
188
248
192
236
255
185
182
196
213
199
254
139
140
153
167
203
186
180
242
183
186
227
165
180
261
196
214
179
208
188
191
192
217
243
189
172
145
261
201
230
231
198
205
264
218
238
178
209
237
176
161
181
188
262
201
160
198
134
247
192
159
196
227
205
263
175
159
171
214
189
191
169
201
174
203
174
120
237
185
208
151
174
206
176
177
138
281
185
184
188
195
160
168
217
119
159
107
220
151
218
167
195
210
165
234
241
258
182
226
168
172
232
164
179
205
183
180
158
154
227
245
166
206
209
213
209
240
247
165
210
221
190
224
226
223
259
157
230
198
146
190
200
182
256
136
160
157
206
201
233
203
208
185
242
267
216
176
239
143
203
199
186
200
233
205
150
241
224
121
187
193
272
206
187
160
207
201
149
180
178
208
201
235
176
189
169
221
149
207
216
120
189
206
247
212
212
195
232
131
159
208
283
207
207
151
182
228
235
215
196
167
242
211
110
214
193
218
230
249
196
248
229
199
98
189
247
209
248
245
228
207
211
107
201
247
170
169
235
186
224
248
173
174
201
210
229
176
215
238
224
115
237
177
156
169
132
159
255
198
225
174
224
143
213
184
222
161
243
146
187
235
198
209
184
195
236
239
217
208
226
173
175
218
225
230
241
259
201
216
205
153
216
128
232
295
172
183
254
199
231
290
225
218
181
168
275
184
254
238
181
232
155
214
222
228
156
268
213
230
195
162
233
212
135
212
218
219
187
251
145
215
240
195
196
171
156
266
147
151
195
202
213
242
190
187
158
177
147
221
227
171
218
191
223
198
202
238
165
174
155
128
149
197
172
176
181
242
179
164
175
256
238
148
144
181
147
169
174
145
153
176
242
214
193
185
146
199
178
143
171
140
220
184
110
240
203
170
239
175
116
224
186
197
136
189
169
238
189
246
221
273
205
251
227
198
168
222
208
178
151
156
255
178
212
170
174
225
218
199
209
219
226
227
218
193
178
215
190
205
199
164
217
147
187
206
205
221
170
287
110
177
147
245
161
252
179
255
193
160
228
222
256
200
188
222
201
233
228
196
147
226
222
232
212
227
208
238
159
135
268
198
200
171
170
155
201
275
147
176
222
206
218
192
206
199
204
212
173
264
196
203
185
195
248
172
222
174
228
168
149
176
199
197
210
172
241
267
197
223
167
210
152
239
191
245
102
174
156
256
122
218
194
120
209
209
258
234
225
245
196
222
193
236
215
102
182
248
263
231
199
183
221
190
270
157
210
220
197
238
256
213
163
175
174
163
233
222
179
216
198
174
133
201
106
231
197
211
203
255
244
252
237
252
163
178
212
140
214
188
223
186
166
200
200
155
254
149
187
230
253
230
238
188
168
126
189
123
163
247
191
167
193
211
168
238
202
134
256
213
153
211
199
157
222
127
163
187
189
147
203
249
264
212
240
154
205
153
226
213
162
163
207
204
218
165
202
165
148
223
153
166
199
171
223
197
230
199
186
165
185
196
183
205
216
233
222
160
199
221
212
191
220
234
166
215
192
213
186
242
209
164
241
171
181
198
203
153
254
204
194
210
230
200
196
201
143
239
191
191
135
205
203
220
248
179
205
210
223
228
224
203
280
205
125
239
232
227
231
182
195
192
204
215
183
210
200
206
153
232
202
166
170
235
165
212
211
239
138
152
232
170
242
193
244
159
120
226
231
199
149
167
218
156
222
193
195
232
204
250
228
229
176
217
260
146
208
246
194
203
152
175
215
218
220
255
169
207
175
218
175
222
196
238
227
178
254
213
178
229
226
184
167
160
197
222
209
189
184
203
131
219
192
221
217
201
223
157
236
195
216
201
278
216
189
223
231
177
205
177
188
240
163
214
203
208
222
169
179
191
208
244
183
149
193
164
214
219
264
154
201
211
222
255
102
178
210
161
191
206
240
181
186
213
190
212
208
186
201
239
230
198
176
199
238
195
167
178
161
199
209
258
157
203
153
202
160
222
234
223
206
204
200
201
166
228
183
213
169
175
169
167
199
209
122
140
177
153
180
250
242
257
129
244
192
220
174
156
210
251
241
160
203
156
220
262
187
157
241
167
168
248
188
252
256
216
188
212
166
221
164
280
217
247
202
214
219
128
213
124
80
144
165
232
186
206
265
187
243
147
221
279
222
190
156
169
213
201
268
241
181
218
196
233
253
186
182
203
207
187
160
141
214
210
180
249
168
209
227
176
294
217
243
205
212
204
167
255
209
156
205
256
190
221
218
241
205
156
243
213
278
232
237
166
187
220
190
171
244
198
232
219
251
167
227
188
202
224
227
183
184
150
192
216
181
201
216
181
185
177
170
256
148
172
94
249
208
130
183
169
241
200
279
192
227
183
168
191
229
238
143
234
202
249
247
191
225
191
205
219
145
202
128
179
155
230
133
217
234
216
185
220
193
208
213
205
216
194
158
172
198
152
228
195
241
211
167
153
246
119
213
163
183
215
196
212
214
176
155
216
184
212
217
237
228
212
256
204
165
151
138
196
205
219
156
220
170
187
246
251
249
215
227
288
262
146
207
229
183
178
243
240
214
234
227
211
190
178
193
202
174
164
153
149
116
226
136
215
188
188
188
220
207
202
171
254
213
174
167
206
206
235
177
239
130
194
187
261
230
219
208
179
152
205
246
195
150
163
209
204
204
217
115
219
227
236
188
168
214
199
198
212
176
204
169
195
191
216
212
198
140
210
197
160
149
207
174
205
176
134
175
226
167
178
219
154
190
230
204
250
216
125
164
232
187
164
196
248
180
230
216
170
216
139
216
234
128
201
212
232
269
187
229
214
194
95
204
184
174
199
159
157
205
154
271
197
153
199
205
230
221
94
214
181
179
252
148
258
233
134
169
211
257
161
203
178
195
217
226
263
133
230
178
208
201
253
212
147
233
170
212
161
205
213
239
159
229
217
156
193
196
217
190
212
139
240
147
147
172
214
162
219
183
203
201
218
248
233
188
212
163
165
162
202
179
173
263
181
234
228
234
159
178
230
254
164
189
191
172
199
183
190
194
198
249
105
231
225
245
235
134
102
233
246
276
136
198
290
144
198
190
182
255
191
257
162
264
217
242
177
246
232
179
232
151
202
145
160
282
160
190
239
162
197
191
192
231
214
236
181
212
240
257
168
232
227
233
180
144
255
169
270
180
159
156
220
246
220
208
237
205
197
152
238
182
163
195
203
96
173
250
239
228
224
143
243
153
177
168
200
140
201
207
163
210
230
217
237
177
191
183
201
259
261
192
182
194
241
200
198
213
171
140
199
225
169
205
191
188
157
168
196
211
206
175
138
177
218
211
183
192
233
182
163
212
242
204
225
247
248
158
125
280
156
251
200
116
284
174
208
218
145
159
155
126
177
192
216
258
188
135
204
115
187
207
197
195
243
220
174
199
180
210
193
160
160
187
190
169
226
233
155
189
146
234
213
210
232
190
179
192
191
191
195
216
157
205
208
252
197
205
258
164
267
206
199
205
217
223
121
203
177
234
226
167
212
225
237
188
201
266
204
207
236
155
177
227
165
194
214
192
184
181
163
165
235
189
215
259
227
223
153
182
192
180
135
201
189
182
247
162
214
195
205
233
204
200
195
187
135
204
206
297
217
125
190
189
240
176
263
227
255
224
236
193
253
154
227
188
200
242
199
249
196
183
178
225
205
223
116
241
248
173
187
186
253
229
172
223
218
233
203
201
173
183
246
188
145
227
208
209
204
251
240
218
149
196
180
168
191
169
187
211
125
179
179
187
235
247
220
212
180
294
193
217
212
198
235
244
189
248
189
208
213
252
235
164
230
259
229
256
177
229
219
208
197
234
177
179
175
218
159
241
256
149
164
189
192
248
216
190
230
128
255
211
184
166
265
245
205
270
225
177
174
220
185
207
211
261
196
161
212
168
215
273
230
207
213
232
149
156
249
202
194
242
163
119
242
212
239
183
183
208
191
112
261
162
169
224
220
154
173
224
125
168
128
166
229
172
230
205
173
164
193
298
227
212
156
168
178
259
205
225
223
172
151
199
213
187
217
216
169
264
195
215
232
153
198
155
201
159
199
192
209
240
187
231
184
179
220
232
246
200
193
175
169
246
212
169
192
206
222
215
133
153
196
156
218
195
228
200
173
255
146
201
195
216
130
260
203
103
165
154
172
222
212
200
204
206
185
146
264
227
231
194
184
185
187
190
251
193
207
194
169
264
207
223
192
184
185
164
192
227
236
190
154
217
198
230
182
164
201
165
184
187
165
155
176
203
163
159
187
234
279
178
193
194
270
191
218
197
216
253
220
149
248
143
185
218
211
213
188
183
174
218
195
164
288
159
228
207
170
167
245
192
169
216
205
218
212
250
242
178
212
206
220
188
217
216
224
229
190
185
144
161
156
206
204
238
288
235
229
128
168
225
218
179
176
250
261
158
171
198
177
198
171
147
214
204
157
200
200
155
202
238
211
183
208
209
193
199
227
208
219
191
222
167
154
240
206
198
164
163
207
192
148
193
162
176
240
243
243
245
275
199
241
153
177
209
176
163
229
185
151
188
167
195
235
198
177
135
169
240
145
139
207
182
161
256
156
227
196
239
208
210
217
175
229
164
191
217
125
232
229
158
162
151
234
217
131
219
161
137
184
222
206
226
225
202
220
175
210
205
191
268
244
198
200
252
228
182
212
215
204
197
212
219
192
103
206
190
161
251
166
243
157
202
163
161
211
178
145
213
177
193
187
274
180
243
164
255
153
148
203
118
243
210
202
200
222
214
149
211
195
213
182
150
186
184
208
231
190
177
189
236
177
149
222
119
210
212
307
214
210
193
207
213
201
209
205
155
215
177
262
233
157
200
155
195
160
235
233
197
232
233
159
113
189
201
155
248
236
171
186
161
176
215
247
191
225
194
236
231
180
222
217
219
202
202
206
215
206
197
252
197
217
216
214
164
238
231
299
216
192
199
195
166
213
178
230
159
175
229
229
223
125
184
165
186
221
202
129
211
186
211
202
210
192
152
215
163
259
217
183
243
193
238
199
195
188
206
226
190
171
226
193
215
197
209
186
212
219
206
156
196
191
167
205
235
210
247
236
212
260
193
184
194
225
147
178
257
239
243
162
202
169
158
184
193
229
230
182
249
204
201
213
179
153
224
248
194
184
115
170
203
239
215
224
201
285
135
227
130
198
209
222
216
231
238
202
222
132
234
206
216
185
206
183
121
161
230
121
217
187
183
231
177
210
193
180
231
197
174
223
173
214
216
185
196
211
175
202
142
129
183
220
187
246
218
195
246
191
169
180
163
158
235
187
230
208
206
148
227
175
208
226
167
266
223
243
182
196
147
172
208
266
210
235
217
222
192
180
155
221
196
207
155
224
199
172
216
236
192
121
257
205
198
216
146
274
181
183
145
196
204
185
164
167
181
210
251
247
180
260
178
251
205
141
216
212
160
165
224
239
242
204
204
214
190
212
218
202
182
183
174
213
168
264
148
156
185
198
214
198
158
246
212
150
172
184
142
197
195
200
144
243
202
178
268
193
160
176
189
176
203
185
158
186
220
201
260
133
167
237
167
200
192
165
208
232
249
139
184
182
221
188
211
106
194
177
182
198
129
181
260
164
184
246
210
185
154
161
258
174
254
239
246
145
262
190
237
202
191
202
238
188
209
211
202
203
208
167
218
198
223
210
216
215
178
163
121
245
256
190
216
146
220
148
162
215
199
268
241
264
215
162
210
204
233
140
157
160
219
214
203
193
228
190
179
167
209
191
232
164
233
221
233
188
279
138
174
188
207
207
217
190
170
188
179
174
244
191
189
236
214
204
141
193
181
261
188
246
166
242
235
225
171
224
233
151
153
242
199
174
156
165
130
252
176
199
210
241
239
237
193
243
227
246
202
200
229
220
237
153
199
268
204
192
170
161
208
248
199
228
177
183
221
144
220
231
198
186
218
218
169
185
193
177
180
183
189
233
211
193
204
183
235
199
147
160
207
192
223
170
158
223
223
187
192
196
173
207
198
267
187
196
229
148
175
226
201
164
162
173
242
218
124
165
151
159
244
205
209
200
139
179
189
188
190
173
236
223
187
229
217
186
137
177
224
264
169
150
245
264
238
229
237
184
243
185
209
253
222
229
238
160
223
239
229
207
200
203
199
200
207
225
229
161
208
236
174
233
185
219
178
180
207
153
183
184
196
246
202
171
162
193
190
206
220
202
237
196
144
233
202
157
236
151
149
176
122
170
186
189
239
196
207
157
131
145
234
243
212
234
198
241
228
239
268
236
216
194
241
212
143
203
254
220
227
191
193
207
213
203
220
242
222
270
179
186
205
191
196
228
154
192
243
143
213
187
208
198
179
217
199
190
222
141
252
222
172
196
107
224
204
152
239
191
196
220
183
204
253
213
227
182
251
228
203
240
228
141
249
190
268
223
199
214
184
193
207
203
209
246
133
192
255
182
184
186
175
185
226
221
161
202
182
164
237
240
195
216
206
196
224
182
158
144
215
205
217
211
270
218
206
143
225
198
200
225
219
236
214
178
194
212
203
108
126
196
215
205
236
161
190
156
196
241
181
273
155
155
256
224
139
166
177
196
185
180
216
176
141
194
232
182
155
262
248
248
205
248
215
184
197
202
172
172
245
202
258
200
190
236
139
211
216
219
160
179
230
183
185
178
245
194
172
255
196
195
217
240
204
204
148
212
208
208
208
245
210
177
256
241
251
183
236
186
203
260
227
199
245
238
160
219
191
164
199
213
181
218
139
217
173
214
174
226
201
216
229
195
242
221
116
152
152
236
204
227
146
271
122
202
170
193
158
195
177
215
187
205
192
148
183
155
200
204
203
228
215
219
208
225
186
208
138
193
254
264
244
199
202
184
208
183
161
195
181
159
226
201
209
190
263
229
196
234
242
183
159
227
209
184
219
209
126
214
165
202
153
189
203
124
181
214
177
224
199
169
195
165
186
238
221
217
235
231
183
191
223
216
167
238
224
250
161
223
260
156
194
245
270
195
202
226
185
219
207
224
194
189
182
241
133
211
149
216
179
153
148
155
170
190
203
186
208
211
222
189
184
197
222
109
230
173
234
206
203
250
184
241
202
218
221
250
172
136
189
195
254
224
239
240
222
180
165
225
244
267
174
254
304
154
181
177
252
205
178
176
197
189
190
131
187
213
183
168
162
162
205
263
210
163
141
129
202
222
157
153
139
225
234
241
231
214
231
243
154
116
226
208
196
169
198
241
150
168
166
228
172
224
263
148
178
141
275
249
248
251
216
237
153
190
199
179
231
187
191
190
195
201
207
223
233
165
178
154
175
200
195
194
220
204
248
129
214
191
251
191
189
193
228
212
232
166
193
175
172
190
145
185
182
231
193
205
241
236
191
186
221
186
227
200
250
234
184
213
229
250
192
210
195
152
146
232
207
209
210
222
201
197
249
168
187
142
162
215
200
164
208
218
201
197
112
193
169
169
219
246
198
168
155
241
268
204
137
190
194
250
179
214
195
179
235
150
272
185
179
189
234
218
133
241
192
166
239
226
208
190
215
138
144
123
173
177
239
222
146
205
187
159
226
143
190
173
237
153
252
129
203
140
233
187
193
234
186
132
218
178
240
223
212
139
187
252
259
242
128
118
204
217
210
209
178
161
180
216
211
114
256
218
179
186
207
241
182
218
175
220
251
190
184
270
213
206
194
216
190
238
281
241
109
190
219
140
170
182
211
186
207
258
192
172
215
216
173
194
150
259
160
209
191
253
181
258
273
164
196
232
238
195
196
190
241
262
138
190
166
190
273
236
219
188
221
191
175
219
201
199
191
234
196
232
156
201
199
174
188
247
203
247
208
164
164
173
221
154
230
242
215
218
280
197
221
146
123
169
213
199
189
222
229
193
212
228
207
180
226
204
218
210
161
208
203
214
219
265
216
236
207
161
222
290
183
140
282
253
205
218
200
166
214
163
178
228
222
196
258
178
208
245
171
199
184
187
285
209
168
156
155
201
167
260
232
195
270
157
224
164
222
204
221
193
214
200
259
210
199
247
159
121
247
177
207
183
207
210
176
235
187
191
191
211
202
226
201
168
199
216
239
215
214
155
194
234
211
190
185
160
198
200
246
209
231
212
229
156
173
274
206
212
244
209
221
236
211
205
208
234
188
214
211
155
242
200
259
203
151
179
217
205
215
276
237
241
191
219
187
218
179
195
255
187
156
263
186
220
259
137
243
198
158
249
127
172
203
229
234
146
177
205
209
256
240
146
240
180
186
178
246
179
231
185
201
184
222
173
144
212
222
139
150
141
132
171
157
196
236
223
142
167
180
180
142
148
191
187
205
216
196
194
199
212
229
169
230
204
186
216
237
188
219
240
185
216
224
176
233
189
234
236
236
157
237
207
158
167
245
180
164
271
139
232
206
131
164
232
240
115
167
229
122
183
215
246
204
176
223
218
265
162
178
194
190
211
213
197
222
235
265
188
207
126
215
175
209
185
226
233
194
170
230
185
242
166
199
182
215
205
188
184
183
208
209
183
240
195
131
244
206
232
173
164
229
253
171
187
199
158
252
233
164
228
128
148
210
178
212
126
245
214
225
171
237
227
223
216
241
210
196
230
255
179
241
184
175
219
156
193
187
212
201
179
232
191
209
127
197
191
106
201
183
205
204
241
256
223
188
226
186
219
204
188
245
219
170
289
188
194
161
187
162
217
207
172
177
228
215
183
160
245
196
204
136
193
238
210
221
200
183
206
210
214
215
173
240
182
251
228
215
134
193
233
164
217
209
222
211
215
251
212
202
185
168
204
185
165
157
178
185
223
200
243
272
176
191
211
204
190
174
222
240
204
184
172
203
151
191
215
173
198
251
214
193
185
245
172
150
175
184
210
209
172
187
193
207
176
242
148
219
250
129
249
195
240
225
212
210
204
211
173
200
198
170
227
145
120
204
198
189
250
210
221
192
204
151
194
247
192
188
166
235
188
182
227
204
195
197
181
187
230
232
228
184
180
193
191
274
126
241
238
178
184
215
184
223
186
232
171
205
157
150
168
173
198
194
241
256
235
216
277
198
175
270
227
183
230
231
183
204
176
187
239
197
148
193
250
229
210
159
170
208
200
225
166
192
224
190
177
225
160
252
181
142
213
244
220
183
205
160
186
160
183
166
241
191
276
222
187
236
209
163
189
236
210
243
175
225
249
241
221
211
201
223
189
161
206
221
193
174
184
154
157
237
145
198
195
179
175
180
195
203
238
245
161
247
236
203
274
142
238
153
227
175
158
267
236
189
227
162
251
182
228
178
244
251
182
230
181
149
175
218
200
158
163
211
216
188
191
201
236
174
225
223
138
172
220
188
226
191
206
188
201
264
189
269
170
186
202
217
221
195
200
214
223
194
148
234
251
186
248
152
177
186
146
142
258
182
187
230
191
200
182
166
225
207
187
135
232
234
183
211
220
210
193
186
204
243
228
194
205
141
229
248
188
161
240
167
157
227
219
204
165
275
185
250
145
146
166
178
230
164
252
188
220
188
222
114
191
177
239
158
184
198
238
161
213
236
210
205
195
245
191
156
223
176
138
160
160
199
224
167
182
230
227
165
209
200
214
224
172
233
234
171
206
227
160
136
130
224
186
131
158
163
235
141
212
233
193
237
241
192
157
146
160
189
179
260
225
220
230
205
172
189
201
179
206
179
230
195
159
197
211
201
238
194
148
190
222
233
181
228
211
246
174
226
230
214
162
184
263
195
247
251
193
237
208
173
239
170
178
231
200
246
188
211
231
222
197
176
224
236
192
186
210
183
221
189
134
203
135
178
195
131
167
191
175
236
176
199
165
207
212
200
207
201
236
232
153
205
229
238
216
207
139
229
164
194
231
185
164
252
191
176
169
230
263
227
190
202
241
189
182
179
210
183
217
206
166
151
237
188
194
223
186
204
227
152
226
188
201
246
182
202
187
232
215
192
201
214
187
215
229
233
205
198
204
125
179
216
190
201
131
269
229
206
237
236
124
188
240
151
172
237
214
209
140
218
171
272
250
223
196
150
218
193
207
225
177
233
224
184
188
180
216
226
203
170
171
236
137
195
196
217
173
244
199
203
164
235
287
160
138
170
144
187
226
211
150
226
217
208
245
173
168
154
236
170
201
184
175
201
207
199
145
141
240
238
188
224
139
192
165
213
146
200
224
137
231
247
192
238
153
124
225
135
180
144
167
236
216
154
191
224
199
258
194
164
217
281
256
217
163
198
207
177
226
222
247
261
136
214
203
209
223
197
170
220
260
240
211
229
208
174
264
148
163
201
190
281
234
202
234
205
232
175
188
165
201
134
222
156
232
195
243
199
204
221
192
178
210
223
203
223
147
238
173
238
198
255
222
257
207
202
192
191
175
205
204
104
173
227
125
205
185
174
147
199
218
149
202
118
133
210
239
155
258
204
221
155
135
196
198
203
180
227
206
177
163
178
217
155
191
177
283
243
198
225
263
181
159
259
218
195
244
214
235
227
180
216
179
276
170
234
185
213
198
183
216
275
247
204
229
185
182
242
172
202
183
221
196
197
148
209
230
229
203
170
154
203
201
170
229
161
167
201
203
184
254
258
213
178
216
175
214
211
219
239
187
250
263
229
192
221
195
189
168
199
185
112
184
217
173
156
166
251
133
205
224
248
158
249
198
217
186
200
173
231
202
153
178
150
170
189
178
215
176
161
184
230
244
197
170
243
135
166
173
197
188
210
242
238
194
267
118
219
236
216
161
209
218
210
201
231
147
178
235
226
135
140
157
223
190
119
221
188
212
202
236
132
258
243
201
239
245
236
202
133
173
170
208
234
186
196
204
187
214
179
200
170
186
231
174
207
264
228
181
239
247
195
143
189
228
241
163
158
169
189
206
185
252
227
195
187
230
230
200
215
252
229
254
168
223
242
196
122
136
180
208
175
207
240
205
220
184
183
127
213
214
205
166
200
197
197
201
126
195
161
217
252
166
209
181
215
185
196
271
166
130
195
186
199
222
226
145
191
204
166
233
148
288
250
182
228
175
160
191
266
185
141
198
207
178
162
233
155
226
175
146
202
177
237
191
178
208
203
174
226
174
193
192
201
227
183
221
145
188
225
196
187
231
236
209
249
245
234
233
277
251
189
152
205
204
229
163
228
202
173
251
244
235
220
248
180
236
218
188
248
193
177
204
185
259
224
222
295
179
205
199
230
209
191
152
180
164
225
232
201
236
218
212
220
232
176
239
252
163
201
169
229
217
269
221
158
157
161
237
184
205
199
201
238
161
199
235
237
175
195
216
176
151
202
124
176
165
212
241
200
249
235
245
146
240
223
170
166
171
186
150
204
198
209
210
228
220
213
213
270
186
229
304
223
135
182
231
184
254
234
174
221
255
205
118
195
239
190
155
176
200
162
289
212
156
155
158
157
174
218
210
165
189
173
202
199
245
211
173
190
235
234
197
215
202
149
213
114
117
199
265
220
203
212
225
221
180
214
160
189
247
201
194
226
162
229
196
266
194
236
182
219
227
211
279
190
187
230
233
265
198
212
222
186
202
169
172
204
163
167
129
152
197
260
166
239
154
207
196
247
213
214
215
232
214
176
217
145
253
207
156
219
220
174
261
227
149
191
205
232
130
231
194
227
156
221
141
245
224
169
159
171
185
192
170
173
180
165
169
213
249
168
215
218
224
176
212
197
167
155
181
170
230
190
245
246
184
188
196
181
228
199
192
245
235
210
159
174
200
117
172
230
199
231
231
232
251
170
196
230
190
210
179
214
187
189
180
171
169
241
182
226
269
142
186
228
209
174
201
137
169
239
212
175
186
215
153
177
174
223
204
215
199
236
185
189
211
251
202
202
137
183
178
257
139
161
175
179
200
226
196
184
223
180
190
124
153
227
140
203
204
275
162
202
202
146
165
231
258
171
246
181
215
195
241
165
241
207
174
164
230
144
218
176
239
164
173
241
164
129
229
199
181
200
186
255
167
185
192
209
193
243
225
117
237
242
194
170
201
184
150
160
218
199
207
190
151
166
231
180
209
186
146
199
195
187
182
217
201
240
199
202
231
183
221
132
245
161
160
197
211
191
237
204
227
175
191
172
258
192
148
189
183
272
171
205
153
196
187
219
149
244
271
197
208
146
168
249
201
177
174
269
176
163
165
168
229
186
175
195
232
142
155
212
240
274
208
226
252
207
220
189
182
234
174
224
215
211
168
201
228
227
203
199
195
261
215
174
214
208
257
233
232
164
209
219
198
218
250
157
243
221
214
250
186
174
224
200
178
173
187
237
197
226
166
170
188
235
214
180
221
237
142
260
248
204
167
233
182
218
222
226
193
197
163
197
274
238
205
229
198
222
170
216
195
278
240
204
144
236
192
215
205
282
193
200
189
184
221
204
226
175
217
223
184
173
197
145
101
224
219
183
196
189
245
178
226
190
184
113
200
188
172
233
221
207
224
126
180
225
203
184
158
142
234
207
221
254
209
218
237
230
174
197
226
198
171
213
208
129
188
233
184
169
169
204
191
224
208
220
113
205
194
201
260
188
157
269
233
185
213
215
184
207
209
198
217
179
178
191
226
177
181
222
192
201
191
216
235
217
200
212
213
139
214
194
237
202
157
200
202
241
194
205
275
252
141
158
159
196
174
208
170
131
178
204
151
182
173
240
200
110
210
177
154
181
184
218
115
263
220
194
202
214
222
254
223
211
219
192
206
176
163
159
210
103
252
231
197
251
191
212
188
161
244
178
158
190
210
227
279
209
228
204
162
208
193
250
155
268
225
276
199
184
181
165
250
222
279
211
209
191
208
223
208
205
191
206
216
182
204
181
232
208
171
187
204
174
197
123
189
184
208
184
198
116
227
199
231
170
165
206
202
246
187
234
199
220
198
184
149
252
258
235
173
220
198
219
228
140
173
159
190
162
192
219
141
221
181
236
255
200
233
166
198
219
183
209
263
197
233
197
180
198
212
176
141
152
257
271
152
198
207
141
172
228
194
283
149
218
208
145
235
263
173
229
214
190
197
230
185
228
137
207
163
187
257
171
215
251
222
173
196
222
206
101
120
169
194
163
134
165
219
231
174
265
195
153
251
194
183
196
206
184
200
145
219
180
204
151
237
239
221
269
239
187
138
164
191
191
190
291
209
221
259
192
236
121
226
207
203
233
209
207
223
214
235
180
205
146
219
213
201
232
157
226
190
153
150
173
159
198
235
231
171
227
189
151
210
150
179
203
210
127
175
242
284
150
193
221
172
216
216
217
210
194
201
222
249
158
200
194
231
224
183
199
206
224
218
176
226
182
172
188
135
165
140
241
220
177
213
244
222
205
176
227
169
223
185
203
187
191
228
113
186
167
216
279
128
233
221
187
235
187
260
203
207
184
208
175
215
286
263
159
208
162
187
252
200
225
195
172
236
223
199
170
149
220
234
189
251
193
130
246
183
182
232
208
195
161
208
173
176
161
165
171
220
184
196
256
234
250
215
145
159
200
213
250
171
229
179
160
178
176
135
201
197
195
192
179
150
233
220
183
246
179
220
197
231
225
179
155
154
182
223
189
272
180
146
241
239
163
270
210
200
199
166
192
189
168
170
198
161
186
171
144
219
232
195
175
231
229
208
212
239
198
244
169
204
229
119
184
249
162
190
246
150
95
240
151
218
116
223
210
213
171
239
246
235
188
194
182
212
146
246
234
272
268
235
213
285
186
204
170
176
179
198
213
233
196
189
192
244
180
253
212
229
219
199
247
195
199
226
186
137
186
169
173
265
232
190
185
225
233
168
190
193
137
160
222
216
231
216
261
220
172
191
187
123
188
208
179
122
235
157
198
229
195
211
149
201
165
231
207
190
194
279
221
158
206
213
217
266
150
144
138
161
215
221
214
140
203
217
199
210
224
184
237
217
188
161
168
219
228
189
249
198
189
254
187
196
204
229
158
234
198
184
223
185
231
207
223
250
207
241
239
166
225
211
187
216
158
166
258
194
195
202
254
245
227
236
146
167
238
181
182
218
221
228
206
214
206
174
177
217
186
230
233
166
215
214
220
176
134
260
204
232
145
153
231
186
248
191
229
186
223
196
228
228
250
164
133
200
230
208
256
171
231
201
194
211
176
156
232
232
225
215
127
136
173
146
235
187
194
186
247
192
235
135
212
238
234
200
198
169
178
226
145
267
253
225
196
258
201
134
163
213
215
172
233
218
186
212
200
203
200
228
232
188
205
175
247
205
154
199
220
180
194
248
188
209
225
252
189
111
213
154
206
237
204
204
209
163
135
164
218
234
161
155
203
236
225
245
201
227
157
246
215
157
160
241
188
195
140
196
194
196
204
166
189
224
198
198
206
255
176
137
193
176
197
233
214
211
233
176
183
224
207
179
200
138
199
162
181
195
198
143
162
162
203
178
232
155
216
256
185
193
255
203
202
205
227
244
183
194
170
227
251
209
201
228
165
160
189
171
181
159
169
216
152
172
195
245
204
238
225
209
199
206
208
192
192
190
254
173
176
187
132
229
148
269
236
180
181
165
150
226
258
215
215
179
179
230
198
200
202
149
274
174
227
186
189
219
160
196
180
249
187
233
248
229
191
262
170
195
208
205
146
158
270
158
136
199
212
186
207
231
198
212
210
216
195
281
218
233
170
138
211
186
220
219
175
213
220
156
214
220
202
216
204
194
206
295
184
228
202
224
206
141
213
231
194
256
217
234
222
235
193
194
281
214
235
165
236
168
213
184
249
239
194
204
245
167
148
196
189
158
231
201
235
194
213
256
216
207
280
197
229
187
221
242
230
203
169
165
135
135
151
193
162
236
185
219
214
207
257
211
196
228
205
156
225
205
206
188
229
205
226
189
158
220
232
179
155
171
252
264
196
206
181
225
240
232
204
200
203
165
212
206
221
208
210
222
184
155
245
200
210
182
247
178
194
174
174
193
201
221
223
270
215
153
166
221
155
125
213
249
186
187
187
163
128
200
154
172
196
158
190
281
175
201
189
224
210
139
183
156
177
207
143
203
199
195
202
206
203
192
252
203
192
200
239
230
224
228
182
243
200
199
244
245
148
168
236
252
202
167
212
151
202
196
188
236
236
189
194
161
196
200
207
183
181
193
226
173
182
176
227
203
192
167
174
155
208
201
239
127
194
211
233
142
174
225
208
145
184
204
221
231
166
209
162
249
144
237
233
163
131
173
223
142
183
145
170
170
235
228
153
201
281
240
262
145
135
243
205
233
146
237
266
147
270
101
221
212
144
212
213
152
225
212
177
233
176
247
142
182
226
221
226
218
204
153
199
169
248
163
228
122
187
213
178
235
247
230
211
192
221
241
243
202
163
209
191
195
224
261
186
241
195
130
190
204
287
170
150
201
237
147
222
213
239
155
216
216
215
198
146
250
259
166
221
218
207
245
141
225
275
175
224
222
221
246
139
228
218
188
181
153
182
182
150
196
235
187
216
196
242
155
280
216
227
245
210
195
209
178
176
196
198
178
157
216
198
159
254
188
180
209
122
199
238
168
247
183
181
158
206
209
135
126
173
185
210
177
171
233
230
246
170
253
162
255
131
195
220
209
180
238
210
256
221
198
157
196
182
236
174
187
220
240
257
152
160
190
207
188
193
195
202
186
185
243
165
256
267
210
198
242
210
224
136
238
186
205
191
254
211
189
155
185
252
224
189
187
244
196
231
220
199
188
203
213
179
116
174
179
251
212
168
175
187
257
139
222
193
145
183
223
114
199
228
259
215
268
214
231
242
173
183
133
198
179
172
212
224
188
127
218
221
181
215
173
232
215
209
225
227
234
156
211
165
178
172
175
224
223
216
143
250
203
253
152
209
222
240
205
213
179
205
182
180
204
198
227
201
230
205
187
210
227
213
230
192
210
232
234
178
249
229
175
194
185
204
205
211
164
244
252
188
211
206
206
212
272
229
212
149
158
207
216
290
220
189
174
177
255
174
217
222
217
160
168
214
237
252
190
226
249
195
202
227
173
214
264
208
152
231
207
186
193
217
162
175
188
185
190
197
241
188
195
190
224
221
230
234
184
213
166
221
183
260
235
204
176
193
212
190
197
142
249
273
150
187
216
202
259
225
170
190
189
242
253
205
176
192
154
214
235
199
198
191
213
240
135
175
139
136
180
274
162
130
204
191
254
200
231
123
214
269
224
221
147
214
240
150
185
234
208
214
246
139
193
204
241
150
200
238
209
225
181
222
175
205
253
197
214
225
190
177
237
171
172
186
246
135
190
266
190
190
195
201
214
228
219
224
150
181
197
243
183
171
214
219
245
233
205
196
189
180
199
235
188
206
184
189
180
212
181
179
207
186
161
141
153
232
186
204
223
184
127
212
221
228
214
214
137
238
234
200
166
153
178
218
176
188
222
222
214
189
117
168
209
225
155
183
215
234
169
213
262
246
237
225
180
219
193
203
203
241
227
212
197
271
174
260
148
188
188
177
184
201
217
216
211
226
177
229
156
171
169
229
253
242
250
242
217
174
250
177
189
200
205
194
226
252
227
209
215
217
211
163
169
153
199
253
259
171
181
210
195
198
200
192
199
216
218
163
261
182
227
194
257
158
222
213
243
226
215
184
227
185
180
241
217
185
233
227
192
213
226
234
239
202
171
230
216
265
210
198
213
187
181
192
177
149
260
185
154
236
189
178
222
224
231
186
185
223
187
211
231
183
234
204
197
168
164
199
196
238
254
222
166
190
159
188
160
135
217
193
176
268
199
199
144
153
117
269
217
208
163
206
164
182
238
200
191
251
156
235
183
172
220
103
170
259
223
230
159
144
207
231
220
220
224
217
125
141
290
179
210
250
171
188
182
230
249
185
198
213
194
152
119
243
175
202
197
189
214
210
209
186
153
197
197
168
212
239
182
240
190
276
188
201
207
225
201
203
215
233
213
275
207
142
216
148
171
233
216
193
145
168
155
185
213
222
251
208
213
176
226
195
154
223
221
221
219
177
164
196
262
140
166
184
148
181
188
250
195
201
185
145
133
206
195
220
222
189
182
200
160
270
176
140
183
163
206
172
231
187
218
193
227
221
245
140
177
263
211
166
206
148
183
225
186
227
226
177
210
233
214
166
213
156
203
243
224
220
216
259
218
182
198
192
191
279
181
146
237
229
152
232
159
208
160
193
160
170
179
189
171
262
186
212
221
133
218
206
212
199
203
257
188
203
184
172
215
225
209
192
193
169
243
143
182
196
265
200
182
201
243
147
178
210
206
182
233
192
208
163
243
171
244
195
160
240
148
241
209
226
192
229
200
188
169
200
234
217
171
237
215
184
186
264
166
190
175
184
255
193
174
181
220
205
209
274
200
190
237
208
211
162
202
178
229
194
229
110
220
178
199
204
192
199
197
195
166
198
214
233
224
211
179
181
162
183
159
218
222
241
198
234
225
206
212
184
178
224
170
192
146
241
183
167
235
267
146
201
201
172
208
191
186
186
241
185
198
148
211
209
201
208
192
206
209
187
184
199
210
208
208
188
185
214
215
196
239
183
165
236
161
201
180
164
248
260
204
134
235
224
152
193
205
191
249
169
178
235
210
229
230
186
176
193
156
196
227
191
188
232
212
192
198
263
223
238
213
225
113
235
213
176
246
251
199
207
198
142
132
167
213
127
216
223
224
187
205
174
208
244
240
111
200
208
235
239
237
212
277
180
168
184
216
213
194
207
283
224
227
235
174
227
247
174
234
216
158
158
231
204
211
233
175
255
181
162
266
153
226
219
225
190
213
219
194
159
180
171
249
211
234
119
187
182
137
179
213
216
189
151
184
223
163
231
259
230
170
256
205
217
245
170
156
209
197
127
158
240
214
217
176
213
238
207
250
136
247
155
220
198
210
178
127
159
173
211
218
217
256
192
182
175
227
196
168
186
227
222
246
176
234
224
211
252
228
185
204
238
177
237
169
212
237
163
149
193
277
194
154
162
164
144
219
181
213
260
248
182
143
162
172
193
178
209
209
200
211
216
250
199
177
245
257
184
203
196
238
175
148
235
255
239
156
216
230
202
205
149
198
177
205
195
208
225
209
257
136
219
188
193
241
199
253
210
154
225
190
192
162
225
218
263
172
210
216
223
222
150
191
140
186
205
171
208
187
231
207
168
193
261
196
206
219
172
193
224
184
262
259
267
177
208
270
237
260
181
162
204
233
169
167
224
220
180
191
232
149
160
210
191
270
230
161
165
247
212
186
218
151
122
161
196
200
239
275
192
140
196
168
295
245
191
218
257
210
203
187
172
121
211
185
173
181
238
204
170
264
197
193
215
194
201
182
245
135
208
177
180
246
207
174
227
253
177
254
251
260
198
123
190
229
251
174
188
161
186
257
190
207
204
234
174
104
107
124
209
180
247
251
232
207
238
168
171
121
239
235
187
158
245
178
97
149
217
207
220
230
238
201
224
165
148
188
216
185
199
207
227
172
258
171
198
144
201
186
238
207
177
185
197
158
242
210
237
117
185
263
176
261
251
251
236
232
194
216
157
176
186
174
195
241
187
275
200
219
104
189
206
285
226
164
219
215
218
133
230
102
169
210
179
161
167
226
211
179
195
177
214
192
260
199
199
204
197
242
160
194
169
182
207
183
161
233
230
211
159
174
182
202
239
203
196
226
158
198
158
233
263
232
145
181
158
191
158
220
206
179
211
200
202
144
155
169
206
206
244
150
191
190
254
226
203
237
199
210
205
170
226
160
179
234
152
236
269
212
182
201
155
178
154
160
181
214
199
151
162
235
198
186
174
180
201
204
147
239
250
187
187
166
231
190
235
181
174
217
187
198
191
210
119
251
211
177
264
159
190
202
251
166
176
166
224
221
211
246
166
208
234
222
208
166
182
204
181
131
203
215
162
227
192
182
217
164
147
192
200
193
204
233
240
176
213
172
163
205
177
283
193
196
244
236
159
195
231
224
198
189
214
213
252
206
216
180
171
217
223
209
162
178
228
183
195
232
226
220
119
169
232
165
121
215
259
214
212
175
227
252
180
208
183
185
230
166
184
176
182
229
130
175
217
242
153
237
198
230
198
204
225
162
181
232
185
194
133
152
252
163
186
221
227
253
196
293
178
184
132
168
232
202
150
232
229
225
191
166
200
181
264
162
224
197
199
122
220
165
149
257
183
264
269
228
184
245
254
213
203
219
209
204
128
248
199
232
155
230
186
148
259
165
246
228
151
191
175
235
242
190
247
169
206
182
192
169
188
198
232
215
162
225
188
241
162
177
178
252
169
234
183
158
198
127
185
237
224
166
202
186
199
177
239
145
253
152
205
215
165
224
216
163
196
172
170
186
194
195
207
210
184
175
212
186
176
163
210
181
243
217
252
157
186
205
180
189
195
191
218
243
214
151
210
193
202
238
180
149
204
193
133
229
161
202
272
138
223
238
162
254
210
139
216
171
201
143
163
248
175
232
169
219
202
185
208
225
88
160
198
209
239
230
205
202
213
173
196
211
221
222
215
124
140
254
215
221
190
162
253
250
223
174
166
208
234
202
233
148
186
240
136
213
152
151
213
161
144
217
166
143
189
204
197
219
180
155
246
213
174
198
198
218
189
211
202
176
211
241
186
233
272
142
227
227
242
201
170
214
137
219
225
150
149
199
203
163
224
170
115
188
181
167
107
171
231
165
210
171
190
242
236
225
188
214
219
202
188
221
203
200
215
164
174
172
179
169
168
216
221
173
209
255
239
170
187
217
187
186
190
215
220
184
208
146
157
206
171
183
216
201
242
239
218
198
229
192
189
155
218
233
142
254
204
197
187
199
137
234
214
159
170
176
177
141
206
166
214
205
230
246
184
189
118
171
233
265
232
160
178
176
180
218
213
178
236
188
238
170
203
201
244
208
138
170
152
282
223
150
226
193
239
204
207
140
213
161
190
132
191
242
234
259
192
249
223
232
215
184
225
219
228
116
188
234
110
174
231
213
196
234
180
225
150
247
164
218
194
198
160
182
165
225
253
168
218
184
192
264
179
181
146
145
186
205
229
204
177
233
272
222
212
176
162
231
199
200
199
203
205
236
177
180
137
175
179
145
190
224
208
193
185
202
216
220
179
129
217
194
190
183
181
182
177
211
243
202
200
157
222
216
221
211
191
200
213
186
240
174
222
176
197
230
182
210
185
207
214
203
187
256
182
135
149
216
166
135
212
199
227
231
181
224
181
197
182
160
239
206
161
132
151
185
194
238
189
185
168
166
194
212
215
186
220
228
166
189
204
224
250
158
216
218
294
249
222
201
173
204
241
204
165
186
206
218
244
189
193
196
209
184
148
161
206
170
198
208
200
163
174
203
254
173
202
196
251
289
168
181
164
213
212
247
150
247
239
201
207
211
192
209
176
256
214
176
181
180
197
212
183
167
248
198
194
242
189
232
229
228
272
243
218
195
245
202
231
184
214
220
238
241
243
190
217
184
263
182
172
229
197
264
144
228
173
185
242
202
184
244
214
182
224
156
216
157
171
222
212
133
244
229
200
169
195
228
178
169
195
153
227
201
189
223
146
197
194
220
200
214
183
241
122
186
258
215
211
154
211
230
142
187
186
223
192
210
236
186
181
169
201
197
182
169
240
161
225
204
244
219
226
168
175
184
263
155
209
251
98
250
197
263
199
214
241
211
196
202
260
206
203
173
239
175
203
249
189
178
196
189
181
217
136
284
216
197
205
190
206
219
239
158
220
123
158
192
236
153
154
157
214
195
162
223
125
206
188
197
219
185
237
148
216
242
219
216
184
236
203
202
210
242
160
234
200
193
186
175
149
223
180
142
251
200
103
207
176
187
184
157
185
195
215
180
213
224
138
159
183
199
180
178
228
210
257
219
177
216
197
242
183
212
181
180
164
222
222
197
171
263
185
238
191
248
251
249
192
232
195
159
249
266
173
177
192
209
189
193
271
188
231
245
239
159
248
205
243
184
235
210
189
171
248
214
215
195
186
256
204
140
198
199
118
146
175
256
103
199
189
195
195
232
200
185
183
224
198
266
291
146
200
213
216
178
236
240
198
205
219
237
186
170
153
167
200
230
143
223
201
158
192
217
229
107
223
237
217
216
205
231
145
216
214
216
178
167
198
156
150
199
170
212
203
192
206
191
255
115
240
109
206
210
192
218
189
184
245
213
227
153
161
155
221
251
173
198
189
220
236
169
195
249
194
172
175
201
215
206
194
196
192
140
177
140
238
205
230
188
154
138
214
191
133
188
248
213
191
217
209
186
124
207
130
140
150
200
186
222
112
220
203
202
261
131
179
197
163
271
175
194
196
208
180
158
181
196
177
182
169
198
202
192
210
255
255
156
219
200
232
223
177
201
243
228
196
224
176
192
175
178
188
148
172
241
145
213
218
180
208
203
238
214
223
228
221
191
191
222
250
194
214
165
122
217
239
141
203
176
166
149
167
190
215
217
204
204
198
247
135
193
264
216
206
185
289
205
235
197
183
269
185
215
142
160
221
196
155
182
188
209
176
123
206
214
180
218
191
281
139
169
208
161
197
181
147
175
169
261
206
179
174
235
232
243
163
172
264
221
234
211
223
186
281
218
205
175
162
165
184
182
185
203
241
212
147
168
197
162
141
227
230
158
172
251
154
243
157
232
154
168
240
176
198
254
158
210
230
188
182
205
217
179
227
164
194
200
185
221
212
239
260
179
223
166
192
258
214
241
264
158
184
178
234
201
232
212
223
160
221
195
236
185
189
149
138
174
240
223
255
190
158
174
155
167
205
249
123
146
205
153
191
216
148
167
182
191
229
199
182
169
228
168
221
243
207
213
127
230
176
291
171
205
264
180
211
249
240
260
230
214
198
167
220
243
209
179
247
272
173
216
144
230
201
228
196
159
205
191
249
214
223
218
216
213
253
242
167
190
188
217
162
143
240
225
225
174
233
163
164
211
246
174
215
187
196
236
162
184
152
213
174
155
209
227
190
187
257
240
188
280
201
256
191
156
221
198
167
220
200
186
191
207
167
229
171
219
194
210
189
193
176
183
197
223
210
230
197
226
180
192
164
219
231
178
194
209
223
206
203
202
175
238
183
240
192
247
192
186
146
163
176
213
197
216
136
212
173
233
174
135
189
184
240
202
141
196
184
226
226
200
151
223
211
195
224
168
194
188
166
188
241
200
189
220
207
218
185
235
185
172
195
233
170
254
211
200
150
194
237
182
191
174
225
232
207
185
225
149
264
253
206
276
198
119
145
272
198
146
176
211
240
239
160
246
212
215
221
219
148
188
191
233
220
203
255
205
233
229
237
203
90
252
226
236
195
157
212
210
196
218
238
232
213
193
148
255
267
190
224
230
255
165
159
224
216
189
244
238
214
221
127
146
187
180
214
249
196
180
215
231
217
182
258
257
190
222
224
198
172
196
178
234
190
213
196
196
187
204
189
233
251
274
229
211
205
170
205
213
203
216
134
224
198
250
156
127
171
196
208
214
187
217
152
225
201
221
197
152
216
188
190
196
130
181
196
175
181
169
144
179
175
190
216
145
194
245
243
200
225
171
213
174
182
188
191
232
211
226
261
199
151
148
155
137
273
230
221
241
171
172
203
261
181
190
182
219
187
225
199
276
236
159
203
166
192
183
160
236
185
134
168
171
245
149
235
193
199
204
230
246
220
205
221
194
229
148
181
231
157
184
172
224
192
219
238
182
171
198
222
187
242
223
120
200
199
234
256
155
212
206
192
226
188
205
174
226
151
147
179
170
205
211
216
172
158
175
157
220
256
164
236
191
215
212
165
191
168
205
187
203
173
197
177
175
203
188
159
174
210
182
164
230
166
189
198
204
187
172
266
174
218
165
216
195
185
210
135
248
193
268
238
168
186
204
146
227
201
152
201
187
157
182
170
172
202
210
187
218
168
169
135
194
192
207
211
237
192
251
193
168
205
221
223
145
153
207
170
199
263
194
219
209
172
156
86
206
174
203
240
164
207
223
173
226
203
228
198
221
151
200
262
219
208
204
160
195
258
245
250
158
211
192
203
220
183
182
105
216
206
161
248
204
240
183
197
278
221
179
229
181
244
203
211
154
146
268
178
171
202
174
161
180
225
164
205
179
179
311
152
262
174
170
242
185
202
208
169
170
231
208
219
229
219
166
175
185
197
208
130
225
149
254
208
231
242
157
234
230
185
208
181
248
134
185
211
213
196
188
259
213
239
181
234
167
211
159
203
150
178
197
234
186
213
167
197
240
261
184
153
169
227
198
224
135
219
174
193
214
236
183
204
157
235
157
206
177
225
199
147
154
193
189
224
236
212
222
218
249
181
172
179
223
124
201
226
176
254
175
175
199
181
178
188
219
216
205
168
183
182
179
183
197
208
164
198
235
246
210
200
230
256
201
193
242
118
183
171
227
204
171
159
182
197
206
192
209
174
207
143
183
264
156
234
189
239
206
218
216
167
190
214
172
215
213
177
190
148
202
166
234
243
161
249
189
126
229
204
201
183
183
142
220
225
201
229
260
201
156
246
216
179
257
273
237
254
199
137
205
195
201
214
185
193
195
196
207
232
231
212
215
232
220
189
211
220
274
248
211
219
191
212
185
206
240
180
142
219
148
184
214
241
235
258
171
177
165
248
243
220
218
220
219
187
192
177
227
224
157
232
157
203
206
152
183
146
126
182
225
170
202
257
204
260
209
258
179
226
218
171
213
129
232
202
167
210
170
180
174
231
149
195
175
230
263
168
199
228
162
233
202
144
186
173
234
126
180
179
229
213
225
154
163
192
224
214
246
203
203
244
245
145
229
220
193
238
204
146
212
224
135
240
187
153
190
197
199
216
222
205
268
159
187
133
272
207
238
231
173
217
253
208
105
218
228
148
155
240
160
176
220
142
158
187
191
206
221
230
222
193
230
219
178
189
161
222
211
242
214
231
190
166
150
225
196
227
167
208
233
177
189
214
254
210
270
204
186
187
152
153
232
195
235
137
200
152
185
152
216
219
139
234
144
188
177
224
193
194
193
209
180
213
210
228
270
222
222
156
208
179
183
275
120
222
263
169
117
156
157
180
226
181
241
161
202
145
225
201
199
192
210
189
202
152
238
221
153
212
185
137
207
146
191
214
188
179
201
224
263
190
214
203
200
155
161
227
232
193
209
237
250
185
203
198
232
197
194
209
195
164
182
227
146
237
227
174
201
234
160
237
218
119
192
184
226
162
220
146
191
228
219
164
254
234
209
165
217
247
160
263
95
172
196
212
172
218
236
216
170
207
216
197
233
170
263
193
126
262
194
159
220
221
209
212
211
184
194
243
191
232
239
212
200
151
260
267
184
217
174
171
229
218
189
207
239
162
194
219
165
190
221
211
250
247
178
246
262
237
150
202
156
193
236
195
194
163
211
176
193
176
202
189
207
218
166
237
214
196
218
189
127
230
129
217
204
202
183
233
200
225
178
205
174
274
146
212
249
272
214
259
217
235
252
165
175
207
191
175
220
146
214
190
172
198
143
221
281
175
185
254
196
165
204
167
222
182
205
217
211
228
232
185
247
167
153
153
189
161
234
172
207
167
161
224
224
263
156
191
186
228
220
202
235
163
177
153
215
185
159
173
218
185
167
176
252
159
237
174
134
263
217
192
213
156
210
218
235
237
196
194
133
227
215
180
223
205
192
149
254
245
204
223
149
192
171
186
217
146
147
146
168
186
194
189
130
203
174
266
182
138
220
202
166
153
185
164
178
194
172
200
145
232
195
148
191
226
196
240
155
239
238
245
229
230
186
191
243
222
192
236
253
178
198
257
197
202
200
251
154
229
159
186
154
213
235
221
190
209
182
232
168
205
241
204
183
177
173
247
197
183
167
173
223
210
187
224
206
217
211
160
167
234
186
194
226
199
190
231
247
114
243
214
128
227
204
163
187
205
207
236
181
196
185
169
187
169
261
175
195
242
258
150
177
198
169
241
204
279
212
230
204
230
212
227
253
163
206
216
174
206
222
214
222
206
207
259
150
209
229
218
176
211
172
215
249
207
184
213
152
157
217
152
218
169
127
173
268
222
209
226
227
204
206
144
266
240
194
181
210
141
209
148
166
193
249
227
229
190
206
220
242
163
254
197
197
151
215
111
213
231
238
159
222
245
203
190
269
266
226
203
158
243
201
168
180
234
232
217
193
273
189
166
175
189
243
230
207
189
161
154
224
174
175
205
176
226
242
182
215
150
211
258
172
161
166
241
120
227
206
192
250
186
186
209
157
250
225
233
239
188
148
201
152
197
226
171
221
215
163
232
220
219
225
185
183
251
219
244
230
227
211
174
194
209
215
207
188
181
197
150
227
209
214
149
166
163
191
215
214
214
178
242
192
190
172
202
186
173
265
199
122
168
199
214
235
110
187
174
220
209
161
234
162
232
210
144
197
183
216
164
201
205
229
166
169
177
248
214
221
236
132
131
191
171
182
134
198
263
216
214
196
167
242
187
234
216
237
116
192
152
156
173
266
272
186
209
221
209
161
263
229
171
214
225
221
228
220
211
198
207
239
241
201
243
101
243
176
215
255
160
238
175
179
176
219
131
207
125
181
178
154
183
182
252
149
232
229
244
187
240
248
215
203
226
195
260
233
136
164
109
212
218
184
198
224
235
158
237
171
211
260
181
221
183
219
216
195
225
156
276
202
176
169
205
197
192
160
258
191
192
247
273
193
191
203
265
154
245
118
177
149
213
211
268
236
198
189
228
148
226
179
226
189
260
248
164
193
254
155
182
202
247
190
155
195
165
195
261
173
138
233
223
256
255
240
175
182
179
211
222
163
197
175
99
201
254
245
263
231
208
242
224
143
226
147
179
268
199
208
225
227
246
229
229
249
221
183
203
166
141
237
205
218
143
160
225
232
215
188
200
240
239
235
214
175
195
202
213
185
225
232
203
166
214
209
178
228
260
182
190
226
115
236
177
238
216
255
253
161
258
209
248
153
157
214
143
156
236
184
174
212
233
229
222
198
183
161
186
165
141
244
194
172
121
230
173
180
246
209
238
167
189
205
274
234
224
210
183
197
263
213
216
216
172
187
232
180
230
203
214
160
131
209
240
197
229
222
210
211
185
219
238
231
176
241
209
171
152
259
255
230
224
259
174
192
255
185
218
165
173
188
183
255
202
183
188
204
189
236
224
131
202
199
179
182
184
227
193
171
232
207
206
249
261
191
171
134
225
249
156
190
168
254
165
175
128
274
180
211
202
248
208
242
214
159
226
172
229
196
190
223
281
262
152
175
229
230
208
287
160
165
209
221
180
222
183
240
148
246
239
230
204
151
189
194
214
230
214
153
140
251
129
184
219
190
240
158
222
206
281
203
164
174
221
196
237
218
155
164
170
239
173
203
192
190
199
168
168
197
232
238
191
203
195
156
212
189
185
205
252
181
184
241
213
202
206
136
178
279
206
204
243
162
150
238
236
224
193
184
193
158
237
191
266
225
151
200
219
154
167
178
195
182
186
131
224
176
215
206
135
183
178
242
171
128
165
249
264
177
228
221
187
227
207
170
211
198
138
225
199
162
174
196
208
226
188
250
218
211
141
239
230
249
168
202
175
164
142
120
201
186
232
183
152
160
146
229
131
214
181
261
204
170
179
212
197
205
255
218
170
216
201
227
203
186
202
238
190
241
187
202
252
211
172
186
192
168
201
227
178
156
179
182
216
199
193
188
240
144
215
188
174
186
213
178
169
236
173
206
184
180
194
222
223
196
265
173
159
222
185
174
224
205
194
238
210
150
191
189
145
166
230
165
190
220
218
133
200
245
187
211
185
206
254
239
229
161
210
264
219
197
213
193
186
243
204
198
130
206
170
212
265
144
188
259
143
198
151
135
219
213
162
149
203
188
235
189
223
174
182
231
236
157
161
250
232
190
170
211
199
204
184
162
225
192
202
194
166
201
165
171
272
216
207
205
130
107
190
193
259
247
188
151
206
182
181
160
207
168
204
192
240
177
142
218
155
225
220
217
110
225
194
179
163
224
219
232
194
196
241
196
168
157
182
226
194
172
210
207
194
185
198
214
212
200
207
138
161
164
216
178
230
216
195
225
197
289
214
200
162
145
225
175
159
212
197
237
214
218
175
143
207
196
233
211
222
189
206
299
185
197
190
201
236
245
204
197
234
120
240
174
154
199
164
208
236
186
243
197
188
212
260
235
281
188
201
255
227
254
244
179
216
206
185
222
125
193
246
83
180
211
200
185
204
219
234
182
126
237
196
171
193
185
206
262
218
207
248
242
150
211
213
154
264
187
253
174
129
222
220
212
258
240
228
164
268
208
197
152
201
223
179
203
188
178
242
155
230
228
186
186
192
232
205
208
205
227
263
252
243
176
222
136
196
207
221
201
228
192
216
172
148
226
181
214
228
263
203
240
218
238
263
214
219
227
197
154
196
267
236
227
170
165
205
252
224
203
196
206
211
153
265
244
172
228
179
243
163
246
158
161
206
226
236
205
190
188
186
178
190
226
236
224
235
168
241
160
234
201
249
193
266
115
216
212
228
239
250
188
238
157
212
189
127
221
222
219
214
157
146
158
142
265
121
205
268
155
153
184
160
204
244
208
248
161
188
214
201
251
196
203
197
213
219
246
127
209
209
201
221
194
233
287
219
221
200
186
221
146
210
152
233
214
183
175
206
187
182
203
210
216
189
197
227
169
161
203
191
302
217
208
214
195
263
207
153
232
185
197
250
205
223
198
164
219
180
173
282
207
205
226
227
257
167
202
227
220
226
207
198
200
192
209
160
248
150
218
208
155
206
188
231
172
215
220
176
192
189
223
211
202
189
233
170
214
138
229
235
230
191
142
180
176
111
184
184
219
225
218
188
174
171
205
182
251
200
228
193
223
200
224
245
204
229
182
175
154
185
213
198
239
209
195
129
149
237
166
155
121
192
195
221
182
171
187
202
160
179
241
210
258
155
213
133
244
205
164
166
207
268
194
206
248
229
202
131
254
150
221
193
219
205
203
180
162
253
237
242
208
213
140
188
189
193
187
222
215
105
180
200
131
249
179
197
167
191
207
217
206
257
164
228
192
158
190
139
181
222
164
252
277
166
153
197
120
146
178
191
197
165
236
154
219
164
184
173
235
168
254
213
211
157
151
190
211
251
172
149
181
244
197
173
207
206
203
230
233
208
229
172
160
201
189
230
126
211
274
203
195
243
206
223
191
231
174
191
193
182
204
134
194
219
199
242
157
207
205
184
162
207
199
203
226
173
209
202
216
211
194
223
197
217
127
169
117
205
193
205
277
161
188
178
177
230
146
169
227
230
201
212
218
196
203
189
147
177
143
225
211
190
170
164
219
196
181
232
281
216
215
172
172
246
171
237
202
221
242
241
224
188
190
185
218
218
176
119
230
158
149
224
250
281
225
164
206
177
212
144
133
194
157
169
229
202
189
186
227
226
225
190
161
208
256
157
195
219
177
196
177
248
248
208
152
255
136
256
149
179
165
175
148
196
197
222
207
249
179
178
155
233
180
173
267
158
183
206
201
204
208
206
203
203
182
246
219
200
191
165
254
227
185
179
222
212
164
213
131
187
243
251
207
144
184
179
207
197
162
97
174
125
220
173
207
235
240
128
207
188
224
214
177
189
218
186
209
197
218
184
215
164
242
199
220
250
124
238
195
212
222
139
225
192
176
215
212
171
217
232
207
188
238
174
191
222
233
185
189
228
161
221
168
180
142
176
189
200
161
179
188
236
208
240
194
155
181
238
174
162
204
213
246
190
240
232
211
165
216
199
171
217
249
164
184
153
275
111
159
245
238
195
161
223
187
186
171
172
178
218
134
236
259
180
186
199
156
229
222
238
257
168
266
219
244
157
193
215
225
239
177
208
165
209
213
149
179
157
207
214
249
204
225
163
201
219
166
192
221
189
221
246
139
158
258
225
173
192
147
175
237
167
196
199
205
150
220
169
201
202
122
197
172
193
195
186
198
153
185
196
184
168
227
249
238
233
224
200
189
207
167
155
223
160
132
218
193
193
193
182
171
156
184
175
242
233
177
193
199
180
239
234
247
214
195
201
255
266
241
185
198
208
210
166
221
156
194
191
236
182
181
202
215
212
229
212
205
191
255
132
236
113
218
258
222
238
224
256
192
234
228
238
214
185
221
127
228
169
180
138
199
205
256
240
216
180
175
184
176
194
219
169
175
179
203
222
206
228
230
236
204
150
206
183
266
173
204
198
231
199
219
124
214
150
218
163
216
243
194
160
254
163
211
226
248
228
264
221
194
208
200
171
294
234
177
220
232
216
168
172
209
235
218
218
169
283
157
168
269
180
206
197
233
220
187
171
232
201
217
216
165
237
179
220
184
187
147
174
224
162
178
242
229
203
181
114
233
201
191
196
204
181
186
174
167
134
206
200
226
220
257
154
165
135
220
222
151
155
244
137
161
238
210
157
245
229
115
188
149
253
180
181
188
192
196
221
218
231
205
256
200
204
182
179
221
182
211
195
212
219
246
159
231
191
165
200
170
175
166
159
244
210
197
190
200
182
156
181
241
199
183
219
180
235
258
198
169
186
204
240
236
182
189
235
187
183
206
136
181
167
75
199
259
201
272
214
182
245
197
172
230
166
213
114
186
225
215
224
164
211
211
167
183
207
213
224
162
165
228
229
182
182
185
170
214
213
240
124
252
225
195
249
211
196
159
217
132
177
205
155
171
204
230
247
194
246
229
184
177
188
194
196
237
140
261
183
218
230
262
217
178
159
214
186
186
160
197
124
139
233
181
147
140
258
205
173
212
194
162
208
239
230
228
185
165
172
225
178
142
157
177
245
165
204
212
155
128
222
218
205
175
233
188
182
177
192
172
172
206
176
166
186
199
221
190
193
271
189
192
242
229
222
233
215
208
199
204
218
248
174
207
261
198
211
186
143
209
180
241
215
229
245
250
205
228
162
204
217
229
174
234
246
258
221
201
175
198
166
242
219
260
192
223
191
262
195
248
179
298
209
221
235
196
200
129
202
236
212
234
228
214
260
164
222
222
217
183
161
224
199
166
187
181
191
206
210
197
208
179
191
218
191
193
168
232
153
142
140
160
209
206
218
160
191
222
222
244
182
144
213
247
233
239
186
213
213
208
151
257
247
233
160
173
192
228
219
175
137
214
188
241
228
179
194
228
199
211
230
233
174
196
186
167
213
183
177
183
193
191
106
228
209
166
147
187
135
184
223
159
160
131
151
205
176
206
180
173
158
175
237
207
133
205
173
180
221
248
238
207
191
195
155
143
197
228
277
224
187
292
215
131
181
209
207
164
198
185
187
158
242
224
210
236
218
192
236
194
161
242
191
193
224
162
208
227
176
264
206
182
161
157
213
163
238
201
177
199
194
247
198
225
248
231
196
242
242
195
208
210
246
148
194
113
196
181
220
215
182
226
209
169
87
254
123
216
189
142
170
220
146
172
199
190
215
231
188
180
198
220
208
207
195
161
194
214
206
162
119
129
198
236
222
171
194
193
203
171
201
203
159
239
195
167
211
241
221
207
236
228
158
212
217
240
157
221
197
173
214
209
187
195
191
216
247
257
196
174
204
257
171
196
168
199
118
199
198
217
176
187
202
191
161
250
148
203
203
183
169
191
175
186
178
182
158
232
247
215
136
189
257
138
177
161
231
157
231
172
250
170
228
216
202
185
216
192
201
318
228
233
273
235
185
182
218
170
219
233
215
158
149
238
238
193
209
199
163
174
215
243
134
185
233
227
233
152
168
189
205
170
204
169
179
251
151
268
216
186
123
172
196
216
221
235
216
156
179
192
169
165
171
195
197
170
168
164
280
164
214
220
210
174
285
182
190
179
208
206
218
142
192
255
196
184
228
226
288
224
200
136
228
148
230
168
232
161
170
150
204
237
152
219
218
161
223
202
173
224
209
187
223
206
253
160
225
218
186
189
239
218
195
229
196
188
191
172
201
244
207
225
218
114
208
190
154
190
192
240
165
231
232
191
140
219
202
234
237
178
174
208
230
258
194
190
199
155
156
190
177
188
250
221
153
242
169
182
221
217
188
201
213
224
206
174
209
201
212
166
196
208
224
144
238
181
139
229
144
212
178
206
236
249
223
166
158
186
227
165
253
195
237
210
210
230
159
211
201
148
242
190
222
183
138
214
147
252
109
205
199
215
188
146
202
154
184
210
231
136
212
182
197
176
185
214
149
211
202
177
163
143
211
180
225
159
131
210
164
189
173
196
241
153
185
287
218
220
251
218
179
171
182
199
216
196
203
211
217
230
173
203
181
191
245
218
195
242
194
212
223
240
162
180
226
253
145
156
241
173
151
212
205
173
190
183
171
231
206
246
187
232
224
182
207
209
192
199
219
183
183
159
214
158
178
172
233
184
157
225
197
157
207
230
167
198
136
170
236
156
202
214
217
181
208
236
261
184
172
272
170
233
228
197
177
216
202
190
182
241
173
203
222
230
174
233
217
209
210
187
183
194
231
230
152
198
186
190
147
247
178
200
111
133
251
175
229
186
156
168
196
236
305
157
215
178
222
194
126
215
184
185
242
214
147
265
185
136
232
244
210
136
227
214
235
178
225
241
199
158
228
216
177
231
199
203
191
240
210
197
215
226
151
219
257
198
168
146
211
164
170
260
230
172
232
197
194
202
218
235
210
185
262
255
171
168
192
226
195
196
218
168
255
215
219
151
251
202
179
165
174
222
254
206
184
219
208
190
199
186
254
240
188
218
243
235
169
214
241
229
209
179
229
223
136
218
185
170
222
209
207
204
186
215
187
197
208
186
150
259
222
219
174
139
172
188
224
204
119
179
242
234
203
173
202
232
253
136
165
185
220
188
208
177
190
162
204
249
184
246
163
251
172
197
226
159
245
204
215
165
199
204
160
251
194
236
220
105
246
196
165
191
265
174
226
225
175
223
236
169
127
209
155
221
196
190
242
206
201
197
182
210
175
250
212
221
247
205
138
238
234
222
170
133
106
165
215
205
185
207
148
187
220
220
209
170
188
176
253
118
194
243
220
269
256
195
169
199
209
206
213
171
227
166
176
239
174
232
134
169
218
149
220
197
177
189
203
200
220
195
196
185
171
211
177
189
247
231
206
180
220
210
140
176
161
207
244
133
220
197
183
158
173
173
226
171
202
149
131
174
168
234
180
193
210
212
208
172
248
219
183
171
203
269
206
223
225
157
219
180
101
196
177
251
165
178
209
233
166
173
173
146
226
143
140
221
163
216
246
197
164
260
158
192
183
215
161
202
233
201
241
126
231
147
162
187
251
241
260
242
163
192
217
195
253
193
246
207
149
199
230
152
232
171
172
265
218
143
229
251
241
199
239
146
226
180
130
237
220
184
208
219
198
204
166
219
252
235
133
218
153
228
168
135
174
195
178
216
146
180
137
164
224
226
203
259
212
193
239
191
278
222
198
228
233
225
219
201
192
192
253
195
251
180
159
176
177
190
158
159
211
219
209
226
209
207
219
231
215
226
129
182
173
248
181
247
229
225
140
193
151
170
217
205
252
278
216
169
256
194
213
155
218
238
193
187
209
209
249
267
243
143
161
213
140
164
250
208
134
164
205
194
164
209
231
191
170
180
183
195
134
194
170
212
178
146
247
221
188
217
200
149
205
154
140
167
151
239
187
162
204
166
280
241
154
204
177
213
179
177
165
233
169
190
225
184
215
187
231
254
156
221
180
250
194
211
148
176
155
215
205
211
202
217
201
273
141
179
187
195
229
223
186
221
223
137
161
225
239
158
219
178
190
172
201
134
215
180
205
203
184
214
154
217
190
171
155
206
227
151
185
231
147
257
182
187
216
181
183
230
206
170
193
159
145
228
210
174
203
217
136
200
205
253
154
248
194
224
141
203
172
181
224
242
250
231
195
208
208
195
223
133
213
223
177
208
244
185
158
198
110
112
234
192
132
252
195
247
170
237
205
266
219
174
179
221
188
218
219
172
176
163
187
202
149
247
133
191
170
188
202
211
251
203
217
228
213
228
223
180
224
182
168
181
160
191
202
192
142
196
165
140
183
119
155
212
186
192
244
204
188
246
146
170
174
254
206
166
194
154
185
235
187
199
212
196
230
222
155
162
238
137
197
178
204
187
169
204
135
250
214
183
259
207
255
240
194
226
174
201
216
184
225
168
154
257
213
188
146
195
243
151
203
228
208
213
227
234
215
213
204
193
196
164
216
242
151
184
222
191
221
242
217
216
213
235
265
204
110
193
201
265
199
154
233
168
221
192
177
167
142
195
223
188
195
203
235
156
212
199
216
235
178
199
148
206
195
217
195
191
229
216
215
178
178
207
221
199
242
121
212
281
241
245
129
122
235
182
202
193
84
250
153
234
219
172
220
194
205
151
222
167
206
264
182
223
162
217
270
185
195
178
143
153
278
240
193
189
202
230
149
234
215
146
182
227
157
186
108
236
163
201
170
196
183
152
123
237
196
237
194
262
197
183
254
175
222
201
187
215
179
158
250
191
193
206
232
188
197
224
175
152
188
219
205
253
269
197
187
198
212
200
216
209
218
203
231
225
195
227
201
257
157
203
178
172
166
262
216
213
187
156
151
258
217
202
180
247
182
208
167
166
235
225
184
209
221
205
198
213
154
193
229
189
239
213
175
205
203
227
219
170
167
258
184
230
218
217
182
197
220
247
258
192
182
171
200
178
207
177
186
227
184
222
222
220
207
258
156
218
251
190
165
181
238
289
191
118
181
185
183
196
204
211
201
201
155
137
172
216
241
219
177
146
158
206
219
158
178
232
221
160
233
235
187
159
128
197
224
232
155
116
216
199
233
119
251
218
205
184
134
217
226
168
126
211
235
189
161
243
202
138
188
176
167
206
189
197
174
207
203
161
144
162
186
156
220
221
215
219
179
194
185
209
199
275
190
165
230
218
171
204
200
190
238
185
227
197
232
175
166
230
215
201
229
203
201
161
187
181
213
217
213
223
224
248
211
186
183
175
180
218
253
204
151
144
203
122
231
189
213
223
158
182
211
198
246
220
189
210
211
212
167
173
177
194
247
195
252
187
247
195
243
193
265
209
204
189
215
215
233
214
188
210
198
215
173
204
187
150
135
155
170
226
234
210
158
224
155
239
147
190
198
199
213
180
157
189
202
199
251
269
235
167
212
239
153
162
148
193
203
207
203
139
217
177
157
235
196
199
237
202
182
164
221
253
252
252
128
120
205
162
176
170
234
212
134
245
245
193
209
202
229
164
240
180
200
193
202
237
190
246
210
185
213
206
169
246
128
158
236
239
197
177
199
240
195
167
206
169
229
243
172
233
176
178
235
223
147
144
122
178
249
280
270
169
226
194
191
232
213
254
186
224
216
176
230
197
199
192
203
252
181
174
198
167
172
160
148
230
170
185
142
207
151
145
199
192
232
162
222
228
226
204
124
165
200
160
187
182
206
239
249
192
212
210
152
171
180
231
177
185
159
188
236
181
227
242
165
194
168
200
217
239
214
244
212
232
213
170
207
206
212
277
248
176
154
197
206
219
191
213
198
114
210
207
187
204
218
185
193
196
155
170
195
198
183
159
183
179
238
180
134
282
202
240
214
172
166
183
181
239
112
200
194
179
190
205
176
255
202
207
205
162
188
165
258
203
194
123
194
165
165
182
164
180
205
193
219
258
236
205
218
197
206
210
147
254
182
221
192
222
264
238
211
179
181
186
203
192
139
213
218
237
137
161
243
215
202
200
225
138
196
220
185
162
203
221
169
226
160
216
190
214
176
232
156
239
222
152
193
178
184
136
168
223
187
228
184
222
209
159
221
193
225
150
228
215
192
227
225
199
216
220
180
183
189
229
252
198
188
217
189
156
224
203
156
201
197
174
147
211
262
143
211
185
191
238
219
227
214
222
161
198
175
200
208
214
204
216
209
187
241
194
132
155
173
225
161
204
245
227
163
146
171
182
234
151
259
220
246
189
144
202
143
161
152
225
198
267
176
233
202
195
280
203
201
198
190
198
218
188
172
225
156
184
268
204
216
226
237
212
247
179
216
223
244
143
219
227
202
223
107
147
232
207
165
199
151
173
211
166
178
207
142
222
232
253
198
188
135
229
247
214
202
210
190
134
191
217
260
182
150
185
160
190
210
220
191
136
226
191
143
202
201
206
163
233
139
168
235
166
191
190
191
171
229
160
197
175
220
159
237
168
167
252
229
238
204
212
217
224
191
199
172
253
217
204
249
216
185
221
179
200
178
167
214
194
174
197
260
240
227
147
156
194
253
222
154
192
192
168
183
185
224
207
249
238
211
204
179
218
102
223
240
234
248
200
220
219
179
218
230
196
206
188
171
175
182
172
236
186
215
193
193
208
225
180
191
166
179
171
252
188
152
195
263
211
212
142
222
276
216
277
182
216
182
195
182
264
242
183
151
213
183
211
152
206
239
290
104
258
171
156
199
204
189
168
183
197
248
218
235
211
191
192
191
166
190
177
176
212
196
224
200
169
226
137
226
236
213
206
191
148
190
178
218
216
183
133
154
141
191
229
250
220
210
231
219
264
140
152
228
148
245
168
172
133
270
263
233
256
182
230
231
205
160
229
191
225
164
204
229
142
201
236
184
203
237
264
239
181
221
223
162
212
187
240
193
182
190
239
169
178
193
203
203
175
212
212
258
183
202
268
211
265
168
216
176
196
196
206
194
237
152
188
170
168
202
217
228
197
181
206
181
126
191
184
183
162
211
242
255
166
204
162
175
209
219
230
174
237
242
174
156
165
162
245
200
162
208
202
229
183
178
128
275
220
188
204
228
140
243
240
173
185
258
168
183
238
224
223
220
235
251
215
185
176
174
223
161
169
206
197
189
206
227
175
177
200
205
195
225
206
198
222
189
180
173
200
221
181
196
201
165
147
234
233
133
253
172
209
196
188
234
194
190
224
238
172
128
171
207
113
200
223
212
190
202
181
183
252
224
223
211
209
170
159
254
198
231
217
183
204
176
228
170
186
222
164
237
142
212
205
234
222
241
212
208
250
198
240
167
234
210
177
223
196
243
219
187
165
287
173
245
211
159
149
193
169
228
220
208
205
204
181
175
198
232
204
172
190
208
211
239
187
224
225
166
181
231
166
237
192
237
210
228
246
141
229
219
239
189
136
170
280
215
205
242
210
177
147
201
193
217
184
247
186
225
262
167
177
210
267
234
278
212
228
226
209
198
234
214
224
232
190
237
188
188
190
222
224
223
231
221
183
115
202
189
159
164
205
226
213
197
176
140
185
193
208
210
210
219
140
183
189
199
172
230
210
130
212
239
215
229
238
125
190
188
150
203
203
232
178
257
211
100
202
152
224
189
221
256
161
259
199
199
161
177
222
182
187
187
238
187
144
235
221
253
221
288
186
267
195
188
207
196
205
168
231
240
149
186
141
222
225
155
162
197
244
240
219
259
208
179
160
152
228
270
246
171
229
219
202
249
195
199
151
166
196
196
170
217
231
190
217
225
222
202
187
214
210
143
186
208
166
146
254
183
207
237
188
193
155
248
151
240
230
182
235
136
176
101
156
183
230
189
250
164
171
196
222
203
255
191
235
172
247
171
235
148
227
230
164
186
243
249
203
239
263
245
131
158
220
207
176
222
224
221
192
248
196
233
199
251
168
182
212
214
110
198
159
230
228
208
174
207
210
228
160
214
211
227
204
170
158
195
92
241
164
208
169
219
174
208
196
188
185
213
185
250
174
194
170
169
202
163
226
142
235
169
196
187
220
155
228
229
288
184
146
263
195
118
184
238
255
238
191
192
198
227
228
210
198
252
244
199
248
143
169
222
206
231
198
251
174
193
221
144
248
218
188
178
211
108
211
268
220
220
220
172
251
248
163
203
185
209
223
196
201
190
287
197
181
175
117
181
177
209
146
192
221
189
187
259
186
206
138
184
238
199
199
220
206
236
122
170
203
129
152
174
192
173
212
271
232
168
243
208
203
183
181
237
219
128
216
187
215
239
159
172
231
161
193
257
230
267
186
238
214
219
207
213
234
195
198
208
163
173
231
183
226
211
234
224
193
200
216
198
182
176
216
183
214
158
186
177
214
251
199
214
135
213
227
222
203
193
210
184
203
199
196
207
166
218
213
226
237
184
198
124
197
194
206
210
181
218
195
295
121
180
213
202
186
201
252
185
154
147
228
203
228
250
237
233
172
205
131
160
145
231
170
199
222
203
281
218
209
188
201
205
218
193
223
154
190
150
184
276
158
170
214
223
226
196
205
216
155
246
146
216
172
178
209
146
224
213
135
231
215
202
191
167
273
180
128
196
193
214
176
139
232
192
156
214
210
252
176
158
188
198
216
239
213
182
232
221
219
219
118
228
189
168
217
212
255
168
222
190
186
190
196
210
151
223
170
242
152
224
210
236
225
158
235
191
183
192
186
205
227
199
210
207
229
145
153
195
164
189
264
275
179
157
150
214
182
211
195
161
166
118
223
235
160
189
155
218
193
176
223
198
196
157
195
207
167
172
168
195
162
170
206
207
183
180
228
206
185
206
184
213
197
202
222
238
224
227
175
224
245
137
205
153
216
223
156
247
218
204
216
280
161
160
242
226
163
240
136
149
228
197
199
250
254
218
224
171
201
173
208
227
267
166
185
117
161
201
204
260
214
189
235
220
191
223
159
198
168
212
166
218
197
242
177
227
198
164
191
210
195
158
187
238
192
149
227
231
212
166
178
248
246
171
198
194
217
198
179
166
204
259
162
241
205
183
201
212
227
225
259
173
165
215
217
213
216
263
151
208
211
255
204
211
170
199
207
139
241
200
157
210
226
176
233
274
200
164
174
203
238
237
139
134
172
179
183
206
252
189
189
204
236
220
145
237
162
225
209
156
145
215
170
238
143
163
212
242
170
187
246
233
226
182
230
260
190
187
199
125
196
233
157
214
184
239
214
265
193
184
147
210
232
214
239
223
205
233
155
223
173
168
104
179
228
218
229
272
175
164
183
168
223
196
235
197
169
161
262
188
171
217
236
184
172
218
228
176
179
192
228
106
195
261
227
166
201
231
210
249
254
146
262
203
185
201
220
208
190
245
214
207
244
206
222
196
167
225
169
150
231
247
204
172
164
195
240
234
186
241
192
243
270
229
217
149
193
223
175
210
204
169
204
264
212
142
184
127
170
178
226
159
238
221
238
164
208
235
201
240
168
164
194
229
204
295
232
198
174
134
210
153
182
264
228
168
213
175
225
134
159
192
183
186
247
135
212
185
225
195
180
219
253
198
190
164
150
229
141
195
213
201
192
203
202
211
192
233
218
274
270
170
223
200
235
144
224
177
232
253
148
135
187
264
181
155
188
220
202
199
235
119
217
210
201
218
221
126
152
168
174
165
210
170
224
236
215
179
184
201
222
159
199
195
173
220
190
227
189
239
190
191
236
156
162
239
167
221
192
216
271
195
140
194
202
147
166
168
208
206
246
251
227
184
222
192
141
148
181
220
200
201
217
176
171
148
206
156
187
168
195
240
283
112
219
203
192
235
180
187
193
222
239
218
184
158
211
170
196
192
202
216
214
134
265
276
223
222
150
218
105
206
167
228
152
216
273
175
236
141
205
213
229
229
217
197
94
230
177
231
179
154
217
219
180
215
178
221
201
193
217
169
205
243
163
163
153
230
216
120
214
198
232
256
249
133
206
196
254
197
174
184
170
185
236
208
213
239
235
216
247
195
201
134
127
232
184
146
264
204
197
229
235
162
176
238
197
209
236
230
110
196
221
209
196
189
250
243
225
239
220
213
248
243
207
165
235
254
200
213
226
246
158
181
191
146
197
217
200
203
164
216
223
214
181
165
204
193
162
185
190
180
196
207
196
142
235
214
257
198
250
238
209
181
195
213
238
184
250
105
208
129
218
155
194
240
165
217
211
192
250
163
144
153
120
208
206
216
146
185
227
242
192
182
193
206
267
202
253
201
239
212
205
172
161
230
222
240
212
236
196
192
239
157
225
186
228
200
174
169
220
194
230
198
169
173
251
249
191
174
184
259
211
195
180
235
229
225
127
219
192
163
170
218
226
213
240
140
204
205
233
229
205
222
166
162
241
188
210
216
212
175
149
186
202
255
180
151
188
175
167
176
201
177
193
254
231
187
235
187
190
251
164
224
160
206
225
180
231
162
194
198
221
164
182
157
242
159
237
201
148
219
225
180
179
197
176
191
173
181
183
151
220
228
207
223
234
230
213
250
140
219
170
144
215
163
169
212
135
210
189
181
198
234
234
235
205
243
203
265
182
240
208
154
217
178
215
239
177
177
241
197
195
163
182
170
205
153
200
240
134
175
238
219
214
217
227
200
218
220
237
183
249
161
193
200
203
177
166
199
232
236
189
136
167
248
144
210
272
200
230
205
146
156
231
213
258
255
170
203
220
173
162
233
157
204
154
143
211
171
158
176
185
248
169
233
239
263
186
215
219
198
211
145
225
178
235
232
200
196
155
212
217
208
129
242
180
187
181
216
208
152
240
213
181
220
199
192
221
196
191
216
163
270
229
196
201
160
172
169
201
236
249
259
181
196
233
175
146
209
256
242
219
193
233
200
169
216
187
200
191
202
221
244
198
247
222
245
148
241
157
134
205
241
174
242
241
191
213
237
171
160
195
278
225
231
220
119
239
179
210
171
199
189
191
273
165
235
122
174
190
228
214
207
222
221
198
237
187
229
198
255
179
234
180
235
197
212
218
252
166
205
238
210
220
203
163
155
191
170
168
172
208
132
200
247
227
206
195
234
218
218
214
182
212
159
235
227
205
190
197
196
215
242
174
198
205
206
233
215
219
192
214
187
173
217
229
172
189
205
138
181
189
216
130
217
211
227
184
159
258
277
212
203
206
199
177
174
251
171
190
203
216
204
225
234
200
183
198
219
188
192
229
238
240
195
151
195
243
185
194
157
181
207
179
184
159
162
182
171
160
197
204
127
198
220
208
200
187
194
228
212
224
214
211
187
218
173
207
177
104
195
192
183
219
199
211
196
209
117
250
216
151
223
168
229
220
187
173
195
165
228
175
231
157
168
164
214
247
211
226
113
217
179
221
241
249
261
189
213
231
219
226
186
171
203
251
262
231
180
205
166
239
256
159
190
191
212
180
158
163
215
135
169
192
162
219
196
168
152
238
267
180
200
262
154
217
220
203
208
147
214
193
136
178
230
201
181
233
192
194
187
228
184
122
244
231
225
140
192
149
218
208
195
207
238
215
208
182
233
204
247
217
177
157
249
202
247
194
202
224
220
193
211
187
228
226
212
249
191
252
161
246
134
202
204
173
199
190
182
200
187
200
236
277
222
218
218
216
151
148
187
204
193
192
214
246
200
211
137
181
178
190
160
186
194
142
245
260
150
191
220
226
236
184
200
248
286
228
225
184
250
179
232
255
178
190
184
232
183
188
188
200
237
207
285
256
250
180
238
176
112
187
208
186
234
222
247
227
233
144
205
168
186
243
218
140
251
244
228
146
140
167
231
145
217
257
200
118
220
212
182
192
154
212
204
223
236
135
158
212
170
251
196
258
156
226
215
231
213
193
184
170
179
185
152
179
199
278
185
175
196
228
178
259
180
217
167
123
229
212
187
175
126
191
213
197
135
217
182
225
227
176
235
216
257
277
155
238
230
224
146
173
187
220
255
144
218
176
227
196
210
147
213
194
177
165
201
203
168
168
226
249
206
162
248
193
235
190
165
179
147
226
216
229
220
177
261
250
261
200
267
227
155
230
247
252
223
220
226
222
188
189
206
171
200
211
206
237
214
149
215
193
199
216
220
179
200
221
194
233
243
214
203
192
149
271
206
197
208
220
150
184
174
236
216
202
287
214
181
149
181
201
179
174
194
238
200
215
129
151
231
221
104
238
170
162
173
232
191
171
151
224
228
193
230
181
215
258
254
237
215
240
163
171
199
177
214
217
178
214
208
166
246
207
231
160
192
168
247
204
165
165
229
197
177
169
206
239
256
249
161
216
211
245
212
221
215
202
209
208
206
197
232
187
201
179
200
239
120
255
203
165
248
158
173
144
166
197
215
172
199
210
163
243
215
238
208
129
183
229
205
191
275
191
232
223
176
226
144
207
230
262
225
207
210
165
199
224
163
252
196
176
124
225
191
191
255
189
160
195
155
183
175
177
158
158
177
172
236
221
186
199
187
216
191
247
169
168
201
171
159
173
165
218
173
141
188
190
234
169
275
152
177
210
201
171
237
248
249
228
193
175
224
197
178
170
244
189
211
170
199
199
201
154
191
217
174
202
205
207
198
175
180
235
234
169
240
150
220
215
230
231
177
161
214
267
242
188
195
205
158
191
229
194
188
223
181
209
231
169
179
132
157
235
209
185
185
159
263
201
168
247
100
221
252
264
215
220
239
224
203
192
216
284
180
229
156
231
241
259
215
189
200
158
189
198
195
193
249
238
203
233
190
215
230
196
148
148
223
212
209
160
150
217
229
155
235
165
200
146
193
165
139
185
156
212
258
141
243
202
216
277
223
172
204
172
197
223
191
197
222
257
161
159
204
199
183
222
211
130
181
188
203
236
263
208
223
209
184
170
252
176
166
217
182
200
135
219
174
182
207
214
182
199
231
184
226
199
150
175
221
169
207
189
204
181
184
177
219
181
206
133
257
208
259
225
175
240
217
179
161
208
129
168
229
167
266
183
141
199
248
195
142
175
202
198
220
159
211
162
206
194
212
217
228
192
232
239
254
164
177
159
202
232
189
149
260
223
236
135
234
234
188
265
153
189
209
201
221
241
237
205
128
174
170
229
183
183
219
198
252
185
221
206
184
269
235
213
181
185
168
298
202
235
161
237
222
220
152
217
252
197
168
204
240
188
163
203
235
188
142
171
211
288
167
123
191
226
230
213
247
210
161
142
243
195
201
152
176
235
172
285
225
210
183
176
195
225
244
248
132
216
199
202
247
258
211
204
207
215
140
184
197
266
199
184
181
183
165
136
251
207
237
186
194
187
152
226
164
191
173
177
180
275
195
176
156
229
164
200
229
229
209
160
226
219
185
210
203
276
184
176
186
229
242
210
188
201
239
203
204
249
217
194
216
243
152
190
194
225
182
227
132
207
243
201
230
226
232
112
233
200
205
197
259
166
174
175
191
221
119
235
171
136
214
160
181
189
160
219
215
215
185
207
231
188
159
226
161
181
159
178
126
178
254
251
220
265
191
259
201
191
219
137
192
178
179
141
229
257
159
230
256
186
252
154
150
231
127
186
161
221
166
174
220
201
243
135
175
176
192
189
191
163
224
270
212
213
191
199
220
185
233
190
216
204
171
226
161
206
229
240
220
201
173
134
212
216
206
231
167
155
143
173
253
136
191
228
219
146
122
210
274
169
161
236
171
138
207
189
222
225
161
213
174
165
220
245
159
247
182
172
209
202
178
173
228
193
167
175
176
203
216
261
167
212
170
210
217
197
169
159
178
178
214
201
174
172
261
190
146
172
151
210
146
161
239
194
152
100
183
190
154
198
179
206
222
173
166
184
174
226
238
233
173
213
231
231
216
189
198
226
244
161
206
181
140
204
223
180
191
264
166
186
253
144
227
136
142
205
190
222
210
216
140
197
185
197
223
109
139
216
175
159
181
190
183
208
254
216
215
249
186
169
174
215
187
183
157
249
206
194
214
187
184
173
241
186
141
185
188
196
199
135
133
256
214
180
187
157
218
136
176
207
157
212
156
198
237
215
186
177
187
226
142
208
260
192
195
196
182
161
219
193
155
244
192
218
229
204
219
237
246
191
162
227
184
230
144
207
235
224
219
182
197
234
195
175
236
203
154
200
163
219
231
246
259
146
286
262
166
213
201
216
212
222
203
199
200
221
164
224
225
210
195
190
203
195
204
195
160
155
179
193
204
173
217
221
147
223
197
129
203
211
230
182
178
194
254
156
158
111
235
239
158
192
188
244
235
188
184
194
190
186
211
199
147
106
274
149
169
112
217
247
128
162
196
261
192
235
234
273
192
188
199
205
206
158
169
175
219
163
186
182
192
227
125
234
214
228
194
121
129
177
197
187
200
243
164
214
189
231
165
201
165
209
159
177
189
115
201
165
181
257
176
219
205
169
184
171
144
246
162
158
172
228
221
172
226
207
188
202
204
184
178
180
215
168
200
198
237
174
248
188
230
214
229
200
184
215
196
218
222
218
176
238
124
218
267
216
180
177
253
230
160
210
225
243
213
155
156
174
243
216
158
252
156
213
154
114
202
221
155
216
263
223
160
246
194
215
166
246
216
164
162
135
172
224
133
221
242
242
223
237
256
196
178
182
208
120
231
217
215
201
203
191
206
159
271
212
136
184
253
171
170
234
212
181
226
211
189
220
212
249
219
141
243
180
143
211
184
217
189
200
226
154
159
163
178
175
166
192
202
158
222
172
212
171
168
208
277
268
241
208
207
247
179
213
203
177
212
218
225
148
206
246
154
179
201
193
205
208
215
232
206
240
211
211
207
140
173
252
219
217
220
259
119
182
231
219
228
191
163
211
188
172
218
163
148
179
218
211
233
207
189
191
248
231
224
270
147
214
153
210
216
255
192
208
213
162
241
208
185
231
262
183
217
209
221
156
170
154
203
152
174
156
206
97
263
180
153
182
243
210
254
153
215
196
216
200
152
257
178
228
250
216
197
218
210
177
150
202
158
230
202
220
200
273
236
167
179
226
240
186
220
196
180
234
224
253
214
229
208
207
186
219
206
217
161
219
245
214
229
169
212
173
240
167
278
241
260
148
162
207
180
166
253
215
222
250
159
227
233
164
152
222
124
224
191
232
202
198
239
224
207
253
157
261
220
209
254
180
173
160
191
217
214
242
180
220
174
225
199
167
210
134
164
205
232
198
232
194
228
175
197
216
211
187
139
248
172
211
150
224
240
187
158
207
189
182
179
190
210
304
210
244
170
222
236
235
158
182
207
204
270
189
121
230
157
223
244
196
160
191
203
163
206
239
245
234
235
198
227
226
233
174
215
175
229
181
188
191
255
198
173
186
177
115
206
232
198
202
210
208
209
235
233
258
207
177
231
261
207
165
233
181
235
240
138
159
193
162
227
248
207
207
218
190
211
113
190
259
262
230
239
202
185
205
266
240
228
181
209
196
251
140
207
211
264
266
239
229
206
168
268
230
237
249
218
259
186
251
134
233
154
185
176
187
254
224
161
198
209
181
122
212
185
241
176
232
226
181
188
164
235
253
197
232
204
181
221
225
195
187
180
196
165
155
217
210
188
219
218
196
242
215
250
249
277
177
197
187
192
184
138
190
230
200
217
190
212
186
119
202
163
190
161
217
182
137
186
235
179
170
150
220
222
211
220
219
201
119
209
146
234
205
205
219
161
181
204
220
203
202
240
204
213
163
193
158
152
134
185
226
220
235
180
240
218
256
176
179
210
203
238
235
233
180
209
132
218
234
221
172
218
200
200
201
214
280
188
188
243
188
198
157
242
155
194
182
262
216
183
260
212
216
184
205
190
205
221
182
218
190
171
237
214
229
247
204
187
191
196
227
167
206
198
254
163
221
178
219
196
182
197
234
197
217
208
228
169
226
175
220
250
225
168
221
187
235
221
216
174
227
169
119
136
269
191
238
145
205
196
149
233
248
218
146
192
191
229
183
158
174
247
185
250
225
230
211
252
224
205
166
171
200
191
204
223
205
123
266
206
196
246
238
220
183
178
168
236
195
237
155
187
203
203
210
192
193
144
227
188
239
164
143
234
150
182
196
164
156
216
228
200
179
199
219
165
188
165
227
202
208
158
160
182
221
217
179
225
240
193
161
214
217
217
192
173
207
222
203
233
241
148
182
236
175
247
174
243
220
202
206
228
188
165
219
245
245
214
164
241
149
242
221
180
159
183
211
213
229
169
207
225
278
200
230
221
179
227
212
185
200
228
276
143
197
237
220
256
234
257
186
211
148
179
143
157
258
227
208
192
226
154
166
255
232
140
211
159
204
223
191
204
168
221
198
234
157
178
221
195
192
201
190
218
226
221
242
174
221
205
217
189
162
260
165
199
195
219
207
177
176
190
189
197
120
264
262
218
166
207
214
238
200
212
230
208
200
221
206
149
238
235
233
228
198
139
132
222
120
159
226
205
217
164
182
212
136
173
181
189
229
200
199
142
152
220
280
172
172
165
191
238
193
242
225
221
182
247
158
175
224
180
186
218
218
232
162
179
243
219
200
164
202
205
167
138
211
242
219
245
237
183
235
210
183
187
225
124
213
192
202
156
162
202
231
239
244
217
181
171
200
165
185
197
189
217
222
250
206
263
222
144
190
200
200
170
261
221
209
186
147
165
240
126
177
179
158
173
167
234
191
135
184
205
204
236
207
241
208
266
226
139
138
148
211
233
149
201
198
218
141
140
179
227
211
71
187
137
172
246
139
186
182
204
181
220
205
168
225
154
216
186
226
207
191
204
180
226
225
154
220
212
263
249
180
159
216
218
168
228
199
229
129
168
234
193
199
212
210
210
205
183
168
226
213
186
229
195
222
240
185
227
232
240
225
181
244
168
222
226
257
216
220
243
215
160
198
211
153
160
125
219
249
169
137
235
225
230
177
243
209
199
211
176
174
193
233
233
180
211
218
223
206
204
194
160
269
255
185
185
221
180
263
173
237
231
191
188
198
146
164
174
246
162
173
182
216
206
144
139
170
230
218
179
183
199
219
177
213
121
170
198
230
230
176
235
200
193
241
145
158
191
244
178
256
189
215
190
173
195
169
199
233
167
205
233
185
190
171
233
165
224
268
214
200
187
130
226
201
221
136
264
247
188
193
186
187
231
223
190
181
162
221
232
262
169
255
210
217
208
197
146
209
191
174
273
218
265
242
226
126
116
177
218
213
215
165
227
248
182
180
179
202
226
252
148
240
180
199
234
249
181
181
171
243
227
199
224
252
224
187
202
242
263
244
157
224
194
203
183
212
174
224
185
191
142
169
199
182
210
184
206
210
187
154
192
234
203
230
279
191
151
257
237
255
223
201
192
213
196
209
198
191
205
171
203
247
160
216
217
146
199
191
152
139
202
236
252
207
159
176
178
174
171
126
264
223
261
186
156
125
169
238
169
184
232
222
208
220
174
148
232
231
152
272
182
172
217
259
245
199
212
181
217
217
218
237
238
194
190
215
206
272
203
199
207
193
224
228
244
221
262
212
190
157
130
235
194
182
213
212
173
232
244
216
139
160
168
230
212
186
174
205
124
194
221
189
178
200
234
212
210
162
187
230
249
187
249
198
190
206
227
243
177
244
135
241
203
241
168
193
218
212
189
193
169
162
147
233
232
196
218
209
150
190
195
203
201
206
181
194
232
170
186
174
229
159
215
255
227
144
182
261
186
208
211
238
190
174
227
205
207
171
223
197
221
174
238
211
222
148
140
205
193
259
174
204
219
204
217
313
188
193
154
155
165
215
191
195
199
189
150
142
216
140
231
228
155
245
221
169
180
151
268
152
134
193
188
161
200
194
243
239
253
254
214
196
193
153
157
195
259
197
203
196
203
226
273
210
255
237
226
163
232
162
147
222
204
242
236
196
218
202
195
210
165
179
223
204
174
178
195
169
175
244
174
146
203
183
230
208
221
211
218
202
181
183
240
178
115
158
191
166
201
194
193
207
231
159
183
255
235
212
190
160
212
144
213
193
240
194
143
179
147
228
189
182
225
191
249
283
134
177
236
178
214
247
224
171
232
233
183
154
139
237
203
280
183
202
203
208
226
231
206
149
150
243
158
157
163
237
205
233
164
167
174
195
209
191
176
214
220
136
218
147
222
205
197
208
192
245
199
187
233
201
187
198
211
206
262
208
215
205
231
197
187
203
218
206
240
211
242
131
199
188
234
170
178
252
231
224
140
219
187
192
162
288
168
133
239
174
179
222
224
235
180
214
231
232
250
212
227
170
211
139
177
175
181
219
229
175
185
168
209
195
240
168
215
176
211
213
197
177
115
114
172
277
202
212
235
243
160
207
205
177
204
171
216
224
226
273
193
168
222
220
160
220
222
164
206
196
257
194
242
157
159
157
205
136
157
298
224
160
200
193
168
140
146
185
227
205
173
229
246
166
196
244
260
219
201
208
194
159
254
220
222
174
209
188
187
236
214
194
202
195
158
187
223
216
222
195
189
193
246
173
187
178
181
265
183
199
199
194
167
172
184
208
177
168
186
269
187
210
144
206
178
217
191
190
224
190
242
206
202
257
198
163
151
209
226
244
219
240
237
195
196
201
146
203
209
234
186
188
203
212
210
167
190
201
205
193
173
196
235
227
230
232
245
208
147
223
161
96
176
184
188
217
192
152
234
179
231
175
186
229
193
223
180
141
171
178
212
139
207
185
211
164
182
204
180
192
179
131
140
151
172
175
203
192
163
218
215
215
178
246
178
216
177
206
229
200
261
241
185
134
179
193
176
180
186
152
145
211
169
216
181
230
142
240
198
233
225
186
238
178
211
194
257
201
213
167
204
182
152
227
204
209
167
275
186
188
218
247
207
178
213
213
287
205
219
155
235
205
213
163
196
119
163
198
265
194
175
222
212
210
225
236
203
203
150
250
204
225
182
224
196
272
158
255
160
205
235
208
236
238
235
242
229
237
159
206
205
206
201
167
218
246
131
203
259
206
217
186
181
153
210
175
195
183
148
161
176
188
220
182
187
243
185
178
227
195
218
233
165
244
92
129
192
189
244
220
197
214
231
119
281
231
208
207
171
193
184
202
225
229
219
209
237
220
189
228
193
213
134
170
233
195
241
229
160
219
202
185
189
177
214
214
217
186
207
245
248
187
224
169
216
185
180
199
199
228
208
178
229
192
216
204
168
233
147
231
198
247
125
229
248
227
201
189
237
222
194
222
160
217
163
184
220
257
160
199
152
179
236
184
146
196
193
220
235
197
258
181
177
197
198
230
234
174
215
157
224
242
250
207
230
199
158
172
163
246
133
214
176
175
202
196
217
156
190
196
212
171
158
241
220
159
248
211
161
227
193
206
210
191
193
205
226
156
109
199
239
174
225
167
236
138
207
165
150
181
210
176
204
159
147
212
218
219
188
169
209
198
168
201
195
214
133
228
267
161
235
196
217
176
258
174
228
161
168
238
193
212
195
261
281
174
190
201
221
169
106
179
184
193
214
228
163
199
238
191
214
221
169
179
177
272
180
220
203
216
161
171
154
211
193
193
159
170
116
249
182
206
189
177
174
178
173
211
131
240
230
175
195
181
228
225
203
197
183
183
186
165
253
186
220
180
237
198
185
158
189
207
134
239
206
183
249
220
177
205
226
142
243
220
166
135
161
128
265
200
176
220
148
156
195
186
200
207
192
205
213
217
203
182
113
193
194
189
161
164
206
223
163
154
198
236
209
185
224
186
163
206
173
232
208
166
203
146
221
196
272
158
204
209
200
181
253
149
265
216
197
175
213
228
199
106
174
187
146
266
138
195
149
212
216
188
149
134
225
112
222
209
182
242
191
244
194
224
232
205
167
175
192
213
208
179
166
221
190
167
163
232
178
107
172
215
233
214
175
142
202
203
272
200
223
250
176
192
267
216
188
227
223
187
179
155
164
261
231
131
164
157
200
184
165
195
174
232
208
249
199
213
146
154
194
195
219
149
231
222
186
223
234
173
214
125
164
188
187
242
220
197
193
243
192
221
141
218
212
193
206
237
137
236
260
252
180
149
197
210
159
170
210
173
177
179
200
175
207
290
232
141
165
215
159
168
250
191
162
150
156
210
254
212
145
173
220
183
220
177
192
136
204
229
199
212
223
241
215
196
140
208
233
217
208
161
276
115
197
193
216
160
203
159
145
180
178
241
216
283
201
245
249
162
207
132
187
208
237
235
222
215
180
188
240
172
227
174
182
157
164
239
185
126
254
258
243
242
223
171
182
171
227
200
232
175
170
241
221
235
239
214
275
192
204
159
113
144
146
182
206
179
232
207
195
183
183
196
137
206
133
218
163
191
183
206
242
225
207
178
136
208
173
200
208
219
202
194
238
212
277
204
139
199
218
220
176
120
210
211
230
283
202
167
226
98
137
198
197
141
241
232
269
205
173
231
169
191
227
245
169
205
145
250
191
258
180
199
231
218
239
195
231
143
237
172
178
189
217
196
229
248
199
278
223
259
200
207
187
145
231
171
218
198
236
227
252
198
264
152
172
206
149
206
227
233
216
185
272
242
231
178
158
204
239
174
145
184
157
209
156
211
152
184
218
217
243
120
189
200
192
159
248
235
204
238
189
228
175
213
214
207
213
190
174
192
211
191
149
169
243
173
171
171
149
176
160
147
147
246
262
194
251
170
202
249
165
224
199
188
223
223
236
197
122
184
178
226
210
184
170
220
266
198
196
221
179
239
175
222
202
160
240
209
219
241
225
216
161
190
184
227
244
186
259
151
184
192
176
191
273
194
168
224
213
194
209
224
222
218
155
184
147
261
169
177
220
214
233
150
178
127
169
153
200
181
206
210
161
204
201
209
204
175
174
221
162
171
173
233
228
228
246
166
193
200
189
170
207
154
134
187
203
227
134
207
206
221
222
186
239
224
227
203
179
187
173
231
226
192
200
175
216
187
182
211
143
169
202
189
208
221
158
180
214
227
173
139
248
208
187
197
150
232
241
217
272
161
172
246
295
200
226
261
238
168
130
206
267
212
205
193
160
170
170
189
177
189
233
154
189
259
239
169
203
226
178
244
235
223
223
205
239
244
260
201
200
159
213
106
214
145
241
186
156
238
243
279
263
179
190
160
207
215
180
221
208
224
256
211
182
175
145
175
208
218
195
218
183
269
226
131
278
196
173
212
185
162
162
231
120
235
160
237
224
179
250
168
213
197
182
200
219
183
162
199
218
188
186
193
186
248
194
241
156
192
211
231
233
244
222
128
255
183
207
184
204
272
253
181
222
149
179
227
194
224
166
212
213
195
189
219
213
208
225
224
185
203
212
240
247
276
245
174
176
155
178
152
214
262
223
210
194
188
202
195
160
141
218
224
172
156
202
246
127
198
191
176
226
170
174
184
181
202
199
152
252
201
174
194
166
161
207
202
198
216
244
191
176
257
178
190
228
198
191
179
213
192
250
191
263
139
210
212
197
132
224
131
276
162
177
218
186
170
150
250
232
251
204
167
191
193
179
218
197
205
175
230
142
164
106
221
216
225
180
166
249
196
198
149
170
238
213
255
179
222
200
166
222
215
248
264
230
216
189
213
157
206
234
181
231
195
149
175
196
222
289
209
226
217
195
209
222
188
227
179
146
143
155
194
214
258
239
196
218
213
238
285
230
185
248
207
209
207
190
190
160
186
270
209
103
211
121
167
200
174
183
157
172
168
196
197
219
164
158
156
277
203
204
190
246
166
214
169
176
163
293
188
181
193
202
182
184
159
153
184
195
204
205
235
234
187
181
216
193
214
244
208
247
243
198
261
236
147
167
227
224
174
259
211
255
171
292
203
188
126
231
149
199
123
226
219
178
200
219
104
223
138
193
220
145
204
236
183
174
173
177
180
157
171
211
257
186
178
202
201
184
205
262
142
175
206
240
184
136
230
192
254
202
220
190
162
188
205
184
227
217
164
202
204
172
147
224
245
210
244
175
182
147
197
171
209
145
206
230
195
186
206
203
239
97
292
234
250
207
129
214
177
127
182
221
121
236
238
164
239
258
137
199
180
175
168
214
209
165
250
162
264
202
168
147
230
219
239
211
189
175
239
250
142
199
150
221
180
246
121
223
147
220
218
255
179
192
182
202
196
158
143
141
153
180
196
229
179
211
216
188
174
199
168
173
186
205
167
189
257
226
173
224
166
150
265
215
219
209
152
196
248
166
227
165
209
188
141
204
236
186
232
184
187
150
244
217
213
196
188
189
233
214
171
232
210
212
126
217
217
192
214
195
178
215
224
221
184
175
204
170
162
173
143
225
182
162
164
160
241
209
226
184
257
219
241
199
163
177
262
210
208
243
202
229
271
216
213
267
201
123
182
175
285
205
241
113
206
194
148
237
209
214
222
209
168
198
210
198
157
183
213
190
187
161
202
203
157
201
174
204
227
195
250
197
143
164
149
224
174
189
230
172
244
267
222
166
232
200
228
222
180
139
250
205
248
213
195
217
215
204
218
214
258
258
230
259
228
182
216
233
212
171
186
157
229
218
208
205
206
182
187
238
153
223
222
179
221
207
187
170
198
159
146
220
129
123
212
172
185
223
178
212
219
200
240
138
230
218
206
120
157
258
246
191
182
136
198
220
176
234
191
258
184
184
209
129
216
210
206
164
208
191
146
243
190
173
169
183
216
158
141
232
166
163
203
229
166
189
186
164
228
231
226
184
210
191
213
220
144
282
158
183
272
214
168
180
178
196
197
158
189
151
242
179
191
210
173
164
192
244
207
201
190
182
228
100
206
245
192
215
172
236
275
219
173
158
225
198
139
116
208
206
137
140
165
155
183
226
162
219
204
194
207
130
232
190
212
179
256
240
228
222
201
215
193
200
212
177
201
133
268
180
253
195
207
147
259
259
127
179
207
232
245
165
130
197
230
212
157
218
204
208
185
184
221
228
220
176
220
248
156
202
203
209
196
203
166
208
202
218
171
289
231
211
191
189
217
213
262
197
178
216
191
170
179
224
198
249
162
234
208
162
219
215
229
165
205
204
223
156
251
187
191
227
193
227
214
209
213
256
189
180
210
235
274
245
211
194
211
200
157
201
170
196
192
198
101
224
253
200
220
194
196
173
211
181
234
206
223
218
179
181
160
149
223
199
251
220
185
220
177
223
179
200
196
184
216
190
205
141
258
252
167
139
207
249
205
221
231
167
180
232
182
171
215
203
203
167
212
187
191
271
236
263
259
202
205
211
216
216
173
199
145
187
233
165
181
177
198
139
194
251
184
215
144
231
275
177
161
200
185
176
189
173
136
190
228
197
149
197
168
179
248
219
188
214
177
194
233
228
236
196
178
215
189
238
199
249
257
210
152
201
226
230
217
199
161
225
149
190
119
147
286
204
162
255
244
200
190
233
218
191
193
169
159
154
198
215
200
225
192
186
199
168
167
197
241
146
147
232
182
191
191
207
237
247
206
239
181
161
192
158
219
206
240
144
224
237
216
220
209
168
237
255
180
233
237
179
180
216
225
225
207
194
196
200
234
259
186
217
207
201
219
286
202
215
186
158
187
197
209
245
141
185
216
209
166
178
122
198
225
187
213
229
124
176
173
189
180
259
227
181
250
201
220
175
193
225
207
142
241
210
245
187
198
220
181
200
202
190
219
132
155
163
214
228
258
221
223
249
210
185
195
149
202
193
166
217
208
186
147
171
133
235
241
221
188
164
170
226
213
210
185
180
199
214
143
176
248
157
196
176
131
148
241
206
249
207
162
129
180
230
180
216
119
179
197
203
198
235
136
220
160
197
177
218
255
193
201
229
173
182
170
217
223
210
203
211
212
224
220
177
187
110
154
211
113
244
171
226
198
226
173
177
226
218
178
214
192
197
157
187
202
226
156
247
244
227
198
227
165
245
211
268
153
159
288
237
233
225
199
215
163
212
168
179
198
231
187
184
179
167
191
145
175
149
194
204
190
201
178
187
191
193
147
220
170
154
172
243
228
248
206
155
173
223
204
196
224
173
181
207
145
293
225
180
205
207
209
195
211
177
248
202
222
146
199
220
220
173
202
185
224
218
177
220
269
252
184
76
159
99
183
188
215
243
196
185
151
234
170
221
218
272
243
243
261
183
206
247
162
180
212
152
194
187
142
179
171
187
231
263
143
194
202
195
251
246
157
233
167
182
193
163
289
171
162
221
213
203
254
197
212
162
173
180
299
147
179
181
245
200
207
176
252
203
242
201
220
188
239
131
185
266
211
169
169
197
181
207
216
218
170
228
211
194
189
162
261
220
219
194
171
233
193
248
219
130
202
255
210
207
187
191
184
199
144
201
190
157
192
162
230
167
237
248
271
198
220
240
149
182
245
270
160
213
250
165
209
222
178
192
227
208
215
194
229
213
213
126
224
230
153
209
219
214
204
190
226
207
219
224
229
200
241
196
214
145
163
203
178
162
210
200
130
227
201
218
232
153
266
116
245
181
180
223
216
222
178
259
202
189
198
182
256
179
235
238
231
267
257
206
247
274
191
248
206
228
240
233
265
203
242
148
249
235
190
203
232
192
209
198
180
175
238
180
180
203
270
184
145
227
229
178
241
178
153
156
156
244
139
212
207
217
195
202
240
150
172
146
188
237
196
243
140
259
208
159
155
255
202
183
230
221
192
206
223
231
224
244
223
237
260
205
168
186
163
216
198
169
217
217
214
157
218
217
203
249
194
181
144
164
225
154
173
239
184
121
211
168
198
196
189
184
147
213
185
222
212
233
165
205
216
220
227
167
137
193
190
187
220
172
131
190
171
182
175
185
159
225
208
128
257
185
222
276
181
182
277
196
212
183
194
202
246
221
155
198
141
201
231
234
226
252
144
202
214
242
241
191
201
224
183
110
188
262
212
128
233
170
190
197
252
219
222
204
181
207
182
234
238
174
211
177
187
237
240
236
189
145
203
157
220
167
146
214
228
180
202
195
213
268
192
179
216
151
214
245
205
268
186
202
174
224
229
236
193
183
169
250
246
184
197
211
219
246
205
174
164
224
164
209
237
212
251
260
208
56
207
154
199
162
172
222
188
222
155
203
223
225
175
218
148
203
264
197
223
151
272
143
224
150
215
220
195
161
222
245
212
233
225
176
175
260
164
223
220
240
183
209
190
200
218
228
173
184
181
185
163
176
195
158
185
190
114
218
221
178
193
140
259
168
236
200
247
173
216
182
197
219
181
217
180
205
151
174
196
118
112
213
204
246
200
224
213
190
261
166
190
237
128
157
180
182
169
157
110
174
147
228
215
211
252
123
171
240
190
148
221
181
165
221
226
116
196
150
240
195
162
125
204
233
194
233
162
207
203
187
209
188
192
206
182
184
224
200
214
110
188
178
157
213
212
176
161
180
230
244
230
179
178
252
251
126
254
199
234
219
152
149
266
185
247
253
155
186
220
208
238
186
196
201
225
188
207
255
177
252
208
220
169
250
201
228
175
240
206
170
230
248
168
175
186
205
225
198
208
234
170
204
166
186
169
169
222
210
208
244
211
153
212
231
174
146
190
211
189
220
263
231
183
180
260
191
146
185
188
197
237
238
191
197
198
192
228
219
172
173
247
201
141
137
203
243
207
191
188
191
164
243
273
176
146
200
234
226
172
187
257
193
187
152
214
170
234
201
185
228
202
158
184
196
188
217
247
241
219
232
193
171
191
203
143
247
230
214
201
228
214
191
198
223
180
186
183
234
226
150
194
155
244
217
191
258
224
206
201
223
227
230
165
161
160
174
247
194
217
149
194
206
226
188
207
211
143
245
239
163
275
208
142
168
254
228
137
240
200
219
194
160
182
208
248
174
194
180
138
216
131
158
219
174
182
245
191
160
203
201
240
260
200
170
193
212
221
243
194
201
159
194
249
216
180
200
187
171
126
151
267
186
216
213
159
214
142
172
208
206
187
240
179
211
200
224
229
169
231
257
225
252
166
186
218
211
180
153
176
153
259
214
145
210
181
207
250
165
198
193
237
122
213
213
181
165
224
214
188
227
223
225
183
155
218
170
180
232
225
153
245
250
167
240
204
232
189
249
233
196
236
263
185
161
171
285
253
219
222
239
147
226
161
221
206
184
186
159
151
166
200
185
182
181
201
197
213
129
187
245
212
206
194
185
216
148
238
142
161
199
233
201
185
169
169
233
242
184
194
217
154
203
163
189
157
227
205
184
195
217
188
197
185
180
254
185
184
208
206
225
240
248
186
184
192
238
174
230
199
197
177
197
235
205
209
198
252
151
176
179
190
194
235
174
195
240
167
199
174
189
202
256
272
219
242
247
156
174
169
192
183
243
204
212
165
211
214
216
148
215
237
254
217
229
240
196
318
242
219
188
177
120
173
212
203
194
179
157
175
225
208
200
105
189
186
237
220
184
222
230
189
237
136
237
218
201
161
247
202
258
206
206
228
221
232
138
160
225
178
217
181
205
202
198
228
181
222
158
281
189
156
174
231
277
250
179
229
183
258
300
168
283
148
181
189
171
235
258
167
195
194
243
173
157
151
243
202
224
190
211
185
137
146
198
232
186
192
206
219
210
204
280
181
179
195
186
232
167
205
209
198
190
183
251
177
321
229
236
218
212
194
207
214
229
219
250
197
244
228
229
222
183
200
181
166
249
186
210
216
119
208
241
217
183
182
213
308
199
246
210
172
200
218
212
208
189
190
171
174
239
153
183
235
206
216
239
174
131
195
198
185
280
242
170
193
163
214
192
192
133
201
208
176
214
241
169
206
230
191
263
163
247
210
153
158
151
184
227
204
217
189
149
142
199
136
208
280
231
194
234
210
191
246
216
242
209
205
185
210
296
150
250
266
165
166
149
182
146
165
214
192
224
195
207
183
153
242
171
197
240
260
243
231
186
237
238
168
242
218
195
206
220
165
138
185
154
167
202
179
205
157
213
206
177
148
248
195
201
151
143
175
150
186
215
239
243
252
201
206
187
179
178
265
233
216
203
156
233
263
229
267
207
210
231
213
158
185
221
222
133
160
247
208
200
199
172
230
245
141
146
149
140
232
145
208
192
220
206
182
158
267
216
141
194
195
276
185
202
200
234
188
245
188
215
241
176
219
180
204
177
225
250
185
189
139
203
234
262
232
162
198
197
189
200
241
141
152
171
215
189
160
215
262
210
168
189
153
159
208
227
231
205
175
200
159
220
246
265
184
151
189
194
136
254
168
213
231
237
211
141
176
200
222
162
236
245
208
208
192
175
258
210
179
165
178
230
213
244
229
166
219
165
213
164
242
205
190
243
187
197
218
164
204
191
204
248
195
185
187
209
153
229
207
160
233
124
201
235
181
171
148
165
246
228
179
189
204
166
186
225
204
135
195
173
225
226
281
210
264
253
200
221
264
217
206
185
190
192
237
219
131
211
204
214
251
193
199
136
170
163
182
174
201
205
197
143
182
210
198
226
190
234
195
218
234
225
181
208
196
199
279
200
168
170
225
229
244
231
187
199
209
249
144
210
260
137
200
215
155
160
271
241
176
236
164
162
207
232
264
248
233
253
256
195
162
230
224
147
201
248
217
219
238
174
224
263
211
215
189
211
208
154
199
157
202
164
207
177
252
227
172
239
121
147
131
186
161
260
206
207
244
195
220
110
150
204
249
158
191
264
196
235
166
192
195
170
165
223
162
185
206
204
191
157
199
175
222
183
163
166
171
218
197
184
200
213
194
215
265
229
268
178
195
223
279
210
194
170
212
210
225
196
199
238
191
182
185
159
223
178
180
189
229
151
202
178
186
176
190
187
273
239
259
176
219
177
234
151
233
187
171
214
234
261
205
268
176
214
203
178
210
219
236
211
198
198
213
200
171
213
183
216
227
151
216
188
205
159
231
205
129
230
229
188
171
204
170
251
205
202
158
232
185
196
271
227
168
197
169
216
182
125
268
231
232
269
159
165
171
219
220
170
198
167
222
146
240
203
157
216
191
146
263
222
221
199
137
184
221
166
247
179
217
203
213
190
200
200
269
180
219
204
191
197
173
170
188
268
220
192
204
160
200
141
209
240
174
228
148
213
212
187
203
232
126
251
159
215
260
200
238
175
192
190
219
185
181
216
221
158
224
199
244
189
234
166
206
177
173
170
193
203
237
183
215
191
171
211
233
202
243
250
200
247
192
184
190
185
220
219
179
222
258
218
147
173
231
213
190
197
193
218
149
182
181
165
169
187
280
179
232
204
213
176
234
176
185
183
195
177
151
173
182
237
157
199
222
215
188
241
184
187
178
214
167
220
207
99
181
238
231
196
175
244
213
228
177
177
200
206
227
152
213
172
200
212
231
196
226
182
209
197
204
201
213
213
213
207
183
198
170
255
174
197
233
226
279
216
204
201
225
231
174
182
235
234
141
218
115
233
207
164
157
206
246
191
262
188
206
219
230
246
202
215
222
224
236
123
227
203
214
176
207
146
173
237
221
174
207
120
173
135
204
255
182
263
199
277
236
141
213
178
197
183
173
172
213
192
151
155
211
173
183
233
199
202
206
239
165
232
232
253
163
215
226
287
216
228
247
130
224
205
171
183
246
214
228
282
219
175
208
261
232
193
217
144
207
174
146
157
241
230
206
195
178
154
139
162
228
178
150
162
187
148
155
127
259
226
210
190
197
241
188
205
218
239
207
219
162
267
237
179
173
246
148
206
182
103
101
217
223
182
229
161
231
222
209
220
165
219
200
218
190
197
188
194
220
254
188
225
193
196
181
191
174
207
186
191
171
251
255
172
212
209
190
171
241
163
149
222
185
208
167
188
152
159
109
218
184
211
243
237
240
216
222
205
216
203
266
190
174
159
196
222
199
112
199
199
201
246
178
226
223
218
225
154
181
185
210
186
234
233
228
202
135
261
188
217
224
110
212
228
191
188
188
183
224
242
210
184
211
207
179
210
185
224
195
190
255
215
110
170
184
254
196
157
183
175
200
187
180
225
161
248
244
195
188
214
221
160
220
274
225
185
243
257
225
244
208
210
204
184
206
189
248
223
222
159
237
265
208
205
254
203
162
156
161
270
129
255
179
204
149
189
211
224
229
179
238
250
180
208
215
195
236
246
201
216
139
206
175
218
229
179
193
169
191
234
212
216
201
183
175
158
155
166
138
222
178
129
142
192
183
194
177
194
246
204
167
269
141
253
178
179
242
297
228
188
226
180
147
245
183
161
245
144
221
230
198
172
168
272
197
258
205
201
187
209
230
164
182
216
256
251
225
245
222
243
183
261
219
149
250
155
207
166
255
253
206
198
213
153
236
179
200
252
203
200
223
225
185
216
193
218
223
148
176
197
154
165
206
204
205
224
181
248
186
240
175
306
173
228
181
245
163
226
247
190
121
138
175
183
197
220
179
146
219
256
197
185
225
200
227
163
167
234
235
185
200
168
261
260
168
219
193
178
124
195
230
158
198
252
167
125
188
231
158
208
260
196
190
239
193
210
205
264
236
219
158
203
160
200
212
194
200
163
229
253
225
170
154
203
141
200
249
183
277
149
193
182
245
223
183
149
176
247
161
179
223
192
221
188
170
263
221
213
205
252
258
163
201
198
251
222
222
179
208
188
176
215
229
140
231
192
240
147
247
214
222
239
204
150
176
197
172
233
175
175
191
245
146
179
166
104
164
191
203
164
199
181
258
270
249
198
225
207
222
229
113
233
256
160
135
230
144
192
201
173
135
183
153
179
206
189
240
202
185
206
197
192
114
205
200
190
274
190
237
152
207
151
219
245
213
197
238
283
183
201
250
221
149
193
241
187
146
211
201
188
168
249
195
170
194
217
222
231
219
182
204
203
188
169
209
228
230
164
200
187
257
193
172
212
171
216
246
217
237
208
164
194
253
206
222
212
204
254
210
191
142
172
160
190
238
221
196
204
131
132
180
215
186
163
244
286
196
250
258
155
209
177
224
135
215
267
227
184
196
240
215
209
143
136
191
198
231
156
209
176
205
178
181
183
147
241
189
274
143
195
201
225
137
205
160
178
193
176
175
197
227
241
187
155
202
238
156
194
127
163
135
194
202
124
199
242
270
117
157
211
222
201
167
215
192
218
184
128
211
157
183
132
200
238
249
146
178
161
194
209
227
175
231
210
140
253
160
175
232
174
141
168
227
166
215
156
182
183
137
215
242
194
228
244
187
179
161
169
175
138
243
218
135
208
167
192
194
159
171
210
123
142
213
222
260
180
213
228
150
160
150
190
210
189
205
216
152
233
144
170
229
165
181
199
184
205
222
217
170
206
193
170
184
272
188
227
229
222
221
152
228
250
238
247
189
251
185
207
241
202
192
138
159
193
149
142
189
226
205
188
183
168
199
158
138
260
175
249
186
189
212
175
122
128
191
187
262
180
183
160
224
245
154
165
259
228
227
203
217
199
197
187
192
220
169
199
136
222
199
192
211
166
160
159
243
200
175
255
166
247
191
211
164
165
218
221
187
197
193
196
185
218
176
199
215
197
201
210
148
183
181
259
236
249
211
221
235
218
137
196
202
234
198
187
230
187
182
176
257
232
234
231
185
212
193
188
148
162
202
210
187
214
212
191
168
189
146
215
238
125
253
157
210
204
239
203
153
256
131
146
204
233
171
198
162
162
204
149
213
189
206
252
218
245
182
222
198
233
128
200
208
144
224
240
197
217
187
246
183
192
200
229
207
251
228
144
139
193
185
210
200
173
160
172
217
191
123
185
178
147
254
187
148
164
188
156
219
119
216
166
234
245
203
219
216
112
206
173
183
134
221
224
220
146
171
192
189
187
246
236
213
162
251
202
217
186
179
160
171
240
159
169
219
209
280
188
147
197
208
150
231
258
176
176
215
184
175
158
179
189
191
214
213
135
256
237
171
246
180
192
169
241
159
147
193
172
216
197
180
135
168
194
228
170
224
157
191
232
175
249
187
240
190
215
202
146
237
235
180
219
228
219
154
242
165
183
273
143
162
215
235
191
238
187
161
217
198
151
177
253
110
215
236
219
142
179
155
184
228
204
211
186
212
155
218
226
169
231
264
216
235
206
195
207
241
184
200
229
265
186
143
224
128
196
225
175
224
153
187
225
257
191
179
265
186
179
239
196
263
181
193
207
184
229
222
221
231
148
172
176
237
265
229
193
226
201
164
209
252
165
188
231
260
239
201
175
254
221
205
196
184
232
219
212
242
222
201
194
204
189
130
212
206
204
136
245
194
191
209
182
188
169
168
183
169
165
232
219
177
163
231
229
182
229
182
196
206
236
208
148
176
156
239
241
183
235
112
221
164
184
235
182
189
130
187
200
184
154
225
166
207
224
230
177
189
119
158
141
218
204
231
205
173
210
260
189
119
243
181
198
210
158
212
185
179
178
195
206
208
229
187
203
199
176
221
226
188
227
196
258
246
222
196
224
180
158
193
159
174
208
176
230
238
190
214
207
203
192
201
206
158
222
206
182
230
273
218
201
182
203
169
236
209
149
179
150
227
205
224
235
203
248
196
173
269
221
242
212
192
224
197
184
233
225
189
173
224
245
158
195
173
223
187
235
241
140
221
200
213
185
198
219
171
213
201
184
199
178
250
177
161
179
175
208
213
202
146
258
188
130
127
248
191
168
229
248
289
253
165
187
178
253
230
175
111
208
261
155
169
159
201
208
210
183
221
178
140
194
207
274
246
157
238
179
206
247
270
219
184
209
157
184
269
220
197
205
228
205
220
165
226
173
224
178
172
198
199
165
181
172
213
163
219
229
241
190
189
146
199
154
209
197
152
194
241
233
213
218
195
185
255
254
181
253
175
215
198
154
257
190
147
193
248
210
237
203
187
223
197
221
203
230
168
207
171
158
165
207
233
191
209
273
197
150
178
216
128
184
180
226
213
175
244
139
231
216
200
197
243
211
213
180
248
219
198
251
191
238
213
224
169
220
279
168
200
214
150
158
184
173
239
257
202
221
159
167
252
198
195
216
234
217
200
248
165
220
207
221
207
191
206
181
171
194
173
169
218
226
179
190
222
245
159
209
198
112
207
234
243
206
204
216
171
177
144
235
184
179
171
179
170
200
224
214
236
251
175
240
228
194
201
158
254
178
220
180
150
238
193
221
272
207
223
221
176
161
174
231
220
201
219
150
185
199
219
204
219
207
205
230
237
148
187
236
171
214
161
188
181
247
262
192
227
178
183
235
213
207
192
182
241
215
210
195
210
175
137
198
226
139
177
160
250
220
196
255
169
196
218
194
223
232
177
177
161
213
165
184
206
154
205
183
268
228
128
250
184
214
248
204
188
133
168
217
226
257
193
200
166
139
206
181
193
264
179
245
204
184
182
160
198
199
186
134
248
233
187
140
183
159
223
180
166
232
166
192
123
216
237
223
226
193
140
152
162
224
145
163
207
277
220
177
224
192
195
137
161
184
150
203
201
236
249
234
181
198
155
208
206
178
218
228
180
167
242
173
182
247
144
233
257
152
185
172
180
164
146
188
162
237
187
129
158
171
185
301
163
272
172
251
216
160
158
207
275
199
201
197
206
194
183
219
176
211
205
225
193
180
199
269
178
208
221
229
210
214
186
235
164
169
207
195
186
163
189
212
199
121
200
180
159
192
226
242
191
188
237
132
192
198
260
181
216
212
184
183
193
226
228
180
207
222
179
154
188
220
173
238
171
270
237
248
205
274
196
165
189
163
261
201
171
220
244
234
213
188
239
208
166
234
238
183
202
115
211
218
278
226
199
162
242
171
189
211
200
203
177
261
217
229
120
179
208
120
197
266
203
154
171
213
231
239
229
171
176
210
167
256
231
175
150
191
207
178
217
180
172
237
169
173
186
167
227
231
245
208
227
178
183
148
169
259
240
203
213
195
138
195
187
243
175
132
177
221
232
164
194
211
221
231
262
221
223
172
226
218
210
231
202
205
272
231
218
247
217
210
152
174
174
175
227
202
203
255
270
229
202
162
216
198
231
259
214
247
177
202
266
241
220
238
139
166
211
215
174
137
204
174
192
219
169
184
123
210
226
200
244
211
190
190
178
205
237
215
229
232
192
207
253
174
195
221
225
194
215
267
229
197
156
234
238
191
191
125
207
137
201
191
216
206
183
253
170
166
169
120
242
172
188
233
167
192
188
189
228
221
184
193
170
233
220
195
186
206
228
206
221
183
181
203
242
171
192
179
183
156
207
260
186
181
134
228
210
144
205
137
213
226
221
196
187
135
187
198
179
225
172
178
230
177
190
205
195
153
180
200
188
220
206
229
273
240
140
272
190
170
146
195
181
198
233
169
143
140
173
219
176
255
261
188
154
183
142
239
193
206
213
159
224
138
232
244
199
223
225
237
253
208
144
165
224
166
232
234
212
214
176
230
235
113
226
162
179
212
220
208
165
195
228
196
171
232
208
218
193
188
260
190
209
272
205
176
204
214
174
222
195
224
213
162
180
241
214
276
204
245
158
241
205
221
246
182
194
264
216
151
199
148
245
164
203
202
178
196
251
214
225
232
162
125
205
206
208
163
212
147
222
247
160
218
149
261
176
225
184
202
179
205
263
245
162
171
206
196
160
270
194
183
201
231
145
222
203
169
216
234
235
182
228
227
202
191
259
255
169
187
200
197
177
226
229
197
130
241
208
239
187
221
225
234
202
175
178
147
225
163
247
212
199
207
238
173
146
159
211
213
224
219
166
170
227
209
153
209
209
188
184
175
154
194
222
195
213
203
143
173
171
201
229
205
227
196
220
175
210
188
202
190
238
195
174
220
277
173
226
184
197
201
211
216
185
154
192
181
226
230
230
199
151
216
179
204
179
256
164
199
263
250
195
241
221
215
208
226
161
227
177
248
172
211
187
150
196
230
145
220
195
196
170
212
207
188
206
192
192
154
197
190
202
143
191
153
186
138
206
232
186
146
146
173
155
154
172
227
239
164
211
225
227
200
253
164
187
166
163
271
184
238
182
220
219
176
177
229
195
154
162
220
233
293
184
240
191
152
192
206
157
170
185
179
112
169
184
213
221
148
180
157
170
167
207
225
232
197
230
198
199
191
208
252
205
180
177
160
204
202
178
199
205
215
198
214
220
238
241
208
145
167
237
150
193
184
190
236
200
198
173
209
172
206
210
220
223
197
202
312
133
246
220
214
206
170
196
174
170
220
170
190
203
190
158
269
197
182
113
167
167
191
221
181
210
237
190
224
222
222
175
198
261
179
231
216
252
244
234
223
212
231
266
165
213
200
176
241
221
211
162
204
168
237
190
189
187
142
178
205
203
209
229
194
214
185
196
213
200
239
137
234
234
272
238
191
198
218
247
186
173
219
214
247
227
216
198
211
239
187
162
236
186
161
193
182
188
203
194
230
188
246
176
226
195
247
155
239
181
167
205
227
256
152
224
218
225
233
197
186
201
207
226
189
138
204
119
204
179
191
237
209
174
219
232
268
152
208
218
231
183
191
261
190
196
253
197
199
231
167
222
154
177
175
172
126
203
191
156
161
169
239
158
226
150
159
202
125
255
207
184
194
154
250
187
193
230
180
242
157
201
187
206
189
165
191
252
237
199
204
187
246
187
157
200
234
189
282
161
220
219
198
162
172
186
234
198
249
185
276
182
197
210
177
237
194
170
224
240
180
235
194
198
219
187
181
157
131
194
153
232
224
208
171
140
218
173
201
146
153
214
211
225
186
244
204
213
136
243
153
207
213
192
228
258
274
181
165
222
200
171
264
202
243
212
178
180
246
117
199
212
229
151
254
216
191
214
225
228
242
125
205
122
210
229
195
139
180
273
191
184
171
151
206
175
171
174
156
181
188
211
230
194
166
221
257
210
218
221
207
223
192
192
146
194
149
187
199
158
211
218
197
239
208
222
192
163
173
215
191
206
140
198
188
260
246
206
198
249
188
174
233
216
158
205
133
215
184
167
200
132
172
163
219
190
202
175
209
172
200
205
121
235
175
192
249
184
234
230
157
177
214
166
188
236
145
187
201
191
151
162
172
239
232
253
214
179
164
141
240
149
184
203
196
165
214
153
190
211
204
186
149
186
287
184
247
144
195
175
221
229
190
157
190
254
185
215
153
212
166
138
179
193
230
194
171
191
165
216
177
188
183
191
227
265
195
216
133
152
183
243
158
220
206
169
170
263
165
143
240
184
225
199
165
200
188
205
242
204
233
259
204
172
193
243
208
211
160
260
228
237
184
162
228
191
204
182
164
188
188
110
194
177
193
240
172
224
197
192
272
210
235
218
217
207
141
148
206
173
127
207
228
224
169
214
236
198
188
177
258
118
156
197
179
211
291
187
171
166
235
249
167
193
227
224
188
176
200
196
190
185
222
242
218
160
221
174
212
138
213
228
202
184
151
179
179
163
186
254
238
195
216
213
245
184
235
209
204
238
181
237
220
142
191
239
197
227
166
254
252
204
229
209
164
234
233
185
233
187
211
207
161
243
178
208
204
207
243
234
112
174
194
209
183
160
168
134
190
204
206
219
220
227
195
229
153
143
233
155
242
202
223
146
219
165
208
218
194
241
138
139
216
181
200
198
207
145
201
231
188
239
229
195
202
158
138
178
166
177
206
143
167
209
215
186
194
171
232
163
220
216
201
179
191
187
178
187
197
192
213
179
170
196
194
171
212
174
179
196
191
225
199
139
226
224
244
176
206
198
227
142
227
213
155
206
194
196
206
183
142
165
133
236
237
166
166
181
216
179
182
216
181
181
202
138
223
257
189
194
257
181
205
179
212
284
169
217
195
207
205
239
176
218
245
257
144
177
187
202
178
282
178
206
193
196
202
257
240
211
265
211
196
183
192
161
161
217
209
211
190
251
205
205
195
171
226
195
179
198
237
199
184
169
240
187
217
228
243
154
290
214
200
147
124
164
226
162
218
182
163
204
241
175
168
201
223
169
249
217
139
206
159
181
177
243
161
248
159
219
188
264
201
193
236
241
195
196
212
196
240
223
237
210
220
160
253
183
235
290
220
154
212
164
161
227
193
205
227
195
152
138
148
204
218
205
215
218
203
172
229
174
228
244
176
208
159
229
186
152
221
201
205
224
218
173
237
159
132
260
156
163
151
229
199
217
225
221
186
202
216
177
153
198
166
203
226
199
184
203
185
173
265
250
164
211
192
252
230
204
207
198
214
129
165
220
150
203
165
218
235
203
162
188
202
194
193
252
174
198
237
159
234
203
170
235
181
189
190
234
153
222
195
209
228
210
148
159
162
271
151
229
186
151
226
181
254
223
255
234
210
215
185
175
240
189
241
256
162
155
223
171
229
205
188
171
263
225
176
139
178
194
201
160
182
145
184
205
154
204
208
233
196
212
193
190
146
173
235
207
249
162
131
187
249
192
217
167
212
195
218
188
189
213
159
175
168
233
141
193
265
201
176
233
213
176
242
245
216
203
181
179
211
245
109
208
164
138
216
156
248
188
161
217
189
190
267
138
154
180
132
217
222
204
234
252
233
173
125
182
201
176
220
216
203
209
162
250
197
157
219
226
189
199
227
242
174
251
254
227
123
221
180
180
152
176
136
254
206
239
134
136
210
206
274
170
215
191
119
209
206
261
219
241
254
249
239
155
203
111
253
201
244
200
143
152
186
199
203
217
243
148
204
172
151
206
213
139
199
105
210
181
202
220
170
233
210
165
170
185
179
178
186
113
174
154
194
132
232
239
225
136
188
234
204
199
203
208
244
247
169
215
280
210
182
213
212
208
144
190
160
238
184
175
201
229
165
218
227
186
184
212
211
169
239
235
224
241
151
239
126
188
292
159
190
161
235
182
198
172
199
249
166
106
246
211
220
180
218
208
258
204
139
187
127
221
219
205
174
191
218
216
177
229
220
158
251
235
138
257
162
242
235
138
177
137
178
196
192
163
200
231
150
175
173
164
248
195
250
217
266
234
198
236
188
232
171
130
138
296
178
205
157
202
275
196
195
214
221
155
193
221
196
138
185
226
186
178
232
152
228
229
194
122
203
208
227
161
168
252
225
130
155
178
152
140
236
215
205
235
196
231
181
113
149
174
202
232
167
197
208
179
165
141
225
207
187
212
179
263
179
135
169
192
182
229
212
216
221
135
172
192
183
201
163
249
193
168
167
168
214
227
183
198
218
222
209
235
180
209
174
213
201
212
223
187
225
207
189
162
192
168
239
185
234
162
297
235
201
176
162
208
188
180
234
193
200
249
204
170
260
251
203
202
178
205
209
210
231
194
177
192
162
156
183
225
199
242
200
185
133
258
187
163
191
182
224
167
138
199
192
183
251
210
258
246
225
200
204
186
260
199
144
182
197
216
196
184
229
173
223
226
266
227
111
183
181
165
173
230
151
156
155
231
262
153
199
233
202
250
214
205
216
234
188
210
224
175
257
163
198
183
186
172
233
129
149
254
240
227
264
187
168
151
228
196
248
180
180
234
165
156
186
210
220
240
220
252
224
182
128
176
177
187
187
177
232
237
146
242
185
226
280
214
176
229
162
225
210
127
170
261
167
163
224
160
198
177
213
168
225
190
184
254
215
220
191
185
222
205
233
212
194
196
187
146
220
182
224
143
232
234
231
190
157
254
247
187
199
104
176
201
246
209
199
227
140
216
184
175
171
180
190
213
235
175
202
179
177
233
185
213
190
257
190
188
194
198
155
196
162
240
223
186
167
211
238
229
202
196
248
195
160
227
194
198
128
207
178
202
159
244
247
212
234
232
231
229
161
206
253
200
236
149
234
190
215
184
179
197
221
166
195
207
183
181
207
218
238
186
239
186
210
224
181
219
112
192
198
168
209
192
227
239
219
182
204
228
178
118
165
213
173
169
236
237
201
257
237
236
187
212
235
192
206
226
187
210
210
207
170
155
215
192
220
192
216
169
175
189
231
234
224
200
168
205
253
243
157
242
254
229
233
204
187
206
251
205
203
246
159
201
176
212
122
224
229
141
231
162
183
153
241
217
136
223
273
185
209
212
223
182
232
205
185
192
167
214
233
258
204
175
246
262
179
221
153
183
136
267
165
205
210
134
204
242
165
202
165
231
274
147
99
205
176
127
182
230
196
164
192
173
160
239
210
165
178
242
173
233
188
200
150
252
185
260
168
193
203
177
179
209
220
228
224
135
186
191
176
207
167
226
179
166
207
295
244
244
154
210
215
204
223
167
190
135
177
277
186
229
232
213
190
179
178
183
205
205
201
166
269
248
234
208
252
166
260
187
221
224
159
182
255
149
266
173
244
219
162
203
151
124
185
182
198
232
226
185
160
247
155
205
209
187
207
237
148
216
199
176
255
234
124
250
192
167
180
256
209
193
206
176
202
174
161
184
206
196
150
238
229
157
141
274
218
236
255
153
146
191
263
191
197
209
200
162
165
155
196
139
231
198
203
238
231
184
134
178
206
228
181
255
204
151
222
194
174
169
212
169
240
231
233
232
236
217
194
192
201
217
250
228
131
212
204
214
168
152
202
211
183
212
233
179
219
190
193
171
189
256
166
154
180
172
156
188
185
204
143
159
226
119
161
238
216
213
180
174
189
260
181
254
212
237
226
238
152
239
151
217
244
185
176
200
173
188
223
189
194
175
197
231
211
223
182
188
185
187
145
237
220
182
211
207
213
231
201
159
177
137
230
223
220
167
144
153
186
213
211
201
172
132
155
212
208
175
199
272
196
212
196
238
159
197
147
134
182
147
200
176
181
203
187
207
226
232
196
137
211
275
210
146
293
125
245
236
182
161
232
195
152
172
179
182
215
180
238
276
198
192
174
199
196
175
199
190
190
203
159
143
186
251
220
156
145
211
201
228
237
147
175
250
255
213
195
212
233
190
188
171
201
194
151
196
243
270
218
162
202
191
187
208
157
152
230
174
194
225
214
242
223
257
225
166
132
219
182
217
155
153
219
224
239
242
128
194
203
169
215
206
186
276
268
180
146
187
204
182
230
180
185
178
170
222
217
143
220
181
197
207
202
171
196
138
230
206
183
151
243
182
273
177
225
146
225
246
209
133
212
192
218
220
224
204
210
216
206
235
154
169
165
139
240
208
151
178
227
174
187
169
190
191
205
238
176
213
212
246
239
213
211
201
241
225
238
217
195
173
180
189
145
246
216
192
169
173
130
212
211
206
212
205
194
233
170
201
203
195
217
244
183
193
207
223
138
260
215
174
199
166
231
219
220
217
192
181
217
202
157
226
198
266
234
121
178
195
193
185
210
138
160
190
180
215
264
143
194
180
148
160
163
254
197
174
243
169
221
243
216
149
264
186
185
218
261
186
183
173
189
195
155
230
172
215
219
176
213
268
191
237
174
259
180
195
155
170
206
177
192
202
213
206
181
217
230
153
213
135
170
165
194
166
181
149
228
173
240
202
212
186
253
155
191
217
199
229
240
156
174
201
166
177
140
225
195
220
230
196
204
248
209
207
214
206
210
178
193
224
256
251
222
251
240
179
99
213
259
257
250
215
218
204
209
200
193
186
210
217
212
192
209
211
227
177
234
212
157
137
187
198
128
178
230
172
229
172
195
191
201
202
157
217
229
141
225
178
220
180
241
236
246
204
205
173
187
213
201
210
175
166
196
194
198
191
201
221
232
206
173
276
227
244
183
215
184
232
254
189
187
210
212
191
164
220
179
178
173
230
134
212
245
207
232
261
232
169
155
223
230
181
184
227
242
147
173
174
237
211
144
185
244
205
161
260
237
223
193
161
188
274
194
248
171
255
192
199
241
220
161
243
157
206
199
217
159
244
192
185
226
219
219
185
214
188
168
205
181
149
166
274
175
138
218
237
224
196
135
227
263
218
128
244
252
221
265
172
178
222
189
225
274
230
176
113
219
250
185
227
189
220
149
177
240
133
214
214
227
242
210
220
129
180
245
192
229
234
200
175
180
222
168
230
190
161
218
162
195
167
229
140
270
228
165
178
222
198
223
225
309
244
204
223
171
198
239
240
182
166
180
173
209
222
189
207
226
223
140
174
169
174
218
167
204
172
195
148
227
173
159
169
165
111
187
219
217
224
213
208
256
207
252
189
174
262
192
223
243
183
227
217
224
188
247
254
217
217
233
153
115
165
202
237
215
213
171
218
166
201
173
202
228
182
165
169
215
208
179
212
213
215
159
169
191
214
201
155
168
177
259
218
211
195
152
152
144
211
182
275
199
235
132
222
233
220
196
209
223
167
235
215
249
182
242
218
201
205
182
139
254
207
233
208
176
233
223
205
212
147
252
145
190
208
241
202
202
157
235
240
204
171
224
217
189
152
255
174
224
223
233
202
222
169
184
216
204
215
276
184
166
212
169
233
237
216
173
180
218
138
105
219
209
204
219
219
219
209
217
184
159
191
198
192
235
192
258
235
199
207
230
243
219
212
228
192
177
177
202
127
169
134
200
150
248
195
211
236
202
163
211
244
252
156
140
238
148
204
116
254
224
303
184
203
223
177
221
157
211
197
174
262
232
173
187
233
226
186
207
248
246
214
258
216
204
210
130
185
151
185
217
231
203
149
160
190
241
157
163
187
234
241
225
183
200
166
190
239
208
176
261
200
148
166
240
255
154
221
188
258
259
188
231
201
165
161
264
173
220
214
215
206
225
217
197
169
193
176
197
240
157
174
159
226
151
136
209
169
214
153
235
217
274
137
185
173
208
183
210
182
169
245
273
221
148
148
154
183
186
195
190
232
228
231
131
223
211
219
201
237
190
204
263
211
170
276
165
192
209
235
193
271
238
168
197
156
222
195
247
176
247
192
209
205
199
201
230
226
162
242
166
205
172
160
222
252
226
117
210
163
183
185
195
227
191
171
188
194
245
255
271
155
199
176
193
215
176
179
184
190
183
244
186
252
210
192
171
246
257
150
214
168
163
227
269
201
241
252
157
216
178
200
175
210
264
166
191
207
203
233
233
170
241
228
184
229
197
200
204
187
231
215
184
173
257
180
151
209
186
234
245
165
176
231
263
267
200
166
235
182
199
239
206
161
186
186
213
158
161
238
147
182
140
228
215
163
203
189
171
188
184
206
194
198
202
201
220
155
208
158
209
193
123
236
224
177
229
175
223
181
209
184
189
199
230
143
175
172
199
180
210
236
188
222
257
167
176
237
121
220
155
195
176
196
171
154
151
190
199
190
193
110
180
231
226
198
195
160
127
193
172
258
222
189
163
194
161
146
210
148
138
156
153
208
189
191
176
218
177
221
251
224
211
229
172
193
185
181
160
165
213
146
212
178
228
219
157
239
113
172
174
177
220
289
182
216
229
180
170
193
207
147
296
228
232
202
217
214
259
215
181
237
152
192
217
178
170
166
200
142
224
233
150
225
243
252
215
142
181
196
229
231
201
130
168
205
257
182
230
203
229
226
253
158
189
245
223
278
190
245
243
212
236
198
253
122
192
166
157
208
116
201
202
217
204
173
208
214
133
164
197
196
145
252
204
197
245
219
156
150
212
237
216
181
187
174
200
260
182
166
208
215
242
190
193
202
217
196
170
244
238
202
186
203
185
214
256
255
252
140
181
214
209
179
217
207
207
200
203
261
223
189
218
181
194
173
246
152
160
206
231
198
253
175
181
140
211
196
138
144
178
131
221
214
230
237
205
259
212
214
208
215
240
194
180
205
193
231
151
163
193
230
182
194
170
219
196
195
212
198
198
256
188
203
217
206
253
165
207
178
139
197
174
202
204
218
259
222
207
282
205
196
180
245
255
194
185
181
210
213
163
267
224
208
204
225
236
188
201
197
235
183
158
202
247
183
147
275
163
243
205
168
184
142
121
279
222
210
201
122
240
266
217
179
197
163
221
200
234
212
187
147
221
206
130
226
207
229
225
195
230
224
205
216
154
143
196
253
197
243
126
203
225
215
167
190
167
165
158
203
228
210
240
204
219
231
246
232
223
218
207
130
211
118
192
201
195
181
159
149
230
181
161
187
209
182
177
200
254
202
187
232
186
217
224
258
218
177
186
208
138
239
198
188
213
139
162
125
206
189
188
187
195
173
220
254
229
169
237
249
217
200
220
213
244
184
179
185
129
142
204
250
173
199
200
227
164
206
185
205
214
221
188
223
215
188
225
202
169
180
198
182
220
159
250
212
185
208
154
201
175
238
218
166
219
184
203
162
200
193
200
167
192
259
160
152
181
147
251
182
218
233
235
199
195
204
240
224
199
185
167
249
242
221
201
224
223
223
163
169
158
173
191
185
279
252
116
174
164
165
192
162
171
207
170
156
194
88
229
249
162
237
214
181
216
197
201
184
206
194
157
208
169
204
150
197
246
190
201
168
221
187
217
227
177
210
238
227
226
244
206
251
193
171
191
134
247
210
101
123
177
185
245
213
247
229
204
215
276
227
176
206
169
201
215
177
212
200
200
252
189
157
163
250
150
204
241
184
221
247
197
224
216
193
234
178
212
228
245
191
187
231
216
137
218
192
237
210
212
260
219
168
196
208
222
183
210
160
93
237
229
186
231
213
189
150
198
206
269
212
197
177
182
191
192
171
202
239
177
107
178
237
150
189
210
237
204
246
254
240
203
156
267
268
195
177
176
195
257
166
182
189
210
147
204
255
200
198
252
156
212
190
235
141
199
224
178
227
172
231
169
219
219
270
256
210
211
196
156
226
219
204
172
219
221
167
228
166
206
198
226
149
219
180
194
186
199
198
137
238
226
156
211
195
204
118
177
262
208
192
213
187
221
202
200
200
218
159
199
223
173
213
138
272
171
187
192
169
199
219
175
189
179
223
156
249
152
188
182
193
238
191
252
165
221
258
203
205
174
165
187
165
179
211
159
225
190
203
177
247
180
200
212
217
257
154
196
166
233
233
217
212
166
217
231
241
151
198
230
170
226
213
159
216
193
208
230
276
258
135
208
184
248
235
123
202
209
244
224
186
203
223
257
142
225
260
180
199
199
208
147
212
221
215
204
196
210
225
175
173
190
202
177
174
152
165
236
185
202
184
205
207
137
196
194
176
179
248
183
155
142
267
165
172
220
139
160
180
166
162
230
227
196
218
186
209
175
255
219
185
189
193
212
157
182
252
145
175
194
204
151
174
182
210
228
210
192
238
252
209
150
166
218
274
212
235
139
152
188
203
183
243
224
177
231
164
263
134
224
184
227
225
201
167
228
200
180
170
133
200
241
255
219
214
138
219
174
195
205
186
191
207
180
240
221
227
183
202
206
207
237
186
216
200
210
257
252
180
194
221
259
204
187
185
220
153
201
182
203
227
245
222
220
175
251
176
178
264
249
232
232
191
208
235
257
187
240
142
222
201
199
195
233
264
261
225
189
245
148
222
170
160
173
145
250
200
179
128
159
212
261
168
181
177
242
157
211
191
168
161
196
175
209
235
165
232
220
237
187
173
183
193
197
207
252
165
234
200
165
166
264
147
219
135
238
224
178
234
243
170
219
198
274
216
179
223
233
154
239
229
190
225
134
262
196
204
211
224
221
244
206
217
245
215
199
231
171
170
150
206
212
171
205
242
189
235
210
242
229
252
225
142
182
129
173
242
150
212
220
162
166
216
272
209
222
228
265
142
154
176
185
225
169
178
240
195
227
157
190
171
189
152
152
216
200
181
218
158
166
194
193
272
175
200
214
267
198
204
164
146
275
166
203
218
197
254
162
172
169
168
144
205
173
243
238
204
136
196
165
209
166
181
187
183
225
219
218
213
251
158
212
242
198
225
181
188
252
229
232
210
129
262
194
206
194
161
185
233
144
164
133
206
171
144
196
170
168
238
223
217
176
201
248
263
187
204
223
140
236
231
199
193
211
254
129
213
209
229
226
243
155
165
209
245
192
211
180
218
176
226
196
237
211
235
165
216
219
206
207
179
236
210
179
164
168
207
189
151
227
177
176
252
191
258
214
234
196
277
135
233
208
206
232
244
222
165
244
176
238
216
207
168
197
241
222
244
257
216
208
207
149
160
237
182
139
252
208
182
245
232
218
203
222
193
190
219
244
222
232
229
234
192
191
186
243
183
194
211
165
229
224
188
189
208
196
232
179
199
207
240
212
183
227
222
225
226
175
259
214
120
173
184
258
195
217
205
191
123
183
221
182
257
174
190
210
187
152
212
211
160
215
157
183
208
150
257
177
176
204
225
178
167
140
174
165
232
251
144
202
147
167
199
175
195
223
168
169
228
217
193
258
260
150
211
150
200
247
200
223
224
200
216
175
204
218
200
197
208
225
259
168
224
214
229
208
260
206
197
170
210
173
227
204
208
144
165
205
188
194
206
196
196
160
223
177
171
203
204
227
224
193
194
195
179
175
203
195
186
222
198
201
189
228
144
216
173
215
187
193
203
283
185
229
214
216
233
217
212
170
212
161
190
190
171
221
208
162
235
184
172
256
217
232
200
257
232
241
237
231
207
184
223
206
181
165
189
179
182
218
196
233
197
194
207
234
181
175
205
136
227
199
205
215
248
240
241
239
201
168
187
219
231
224
195
135
257
205
249
178
206
205
207
206
148
197
234
179
233
188
191
213
222
204
225
181
217
185
172
151
201
273
211
204
242
241
180
207
136
152
188
232
160
223
194
156
143
191
235
209
179
183
149
173
151
178
206
217
185
124
213
212
167
162
184
215
230
201
218
302
178
214
227
159
211
178
215
230
249
139
178
197
225
219
183
187
201
167
187
224
201
205
159
192
142
215
208
234
198
210
207
240
189
211
211
263
161
212
263
146
235
242
202
284
163
191
169
163
285
204
204
239
208
205
205
235
173
190
193
233
217
201
193
156
182
165
133
177
223
204
112
176
209
152
242
215
206
204
183
222
268
187
215
208
94
169
238
217
209
173
251
213
197
206
219
248
223
253
215
121
193
225
168
206
195
176
207
159
152
235
224
155
189
177
171
248
224
230
174
152
182
200
188
190
236
220
221
189
159
167
193
208
239
188
181
243
219
234
177
183
173
205
165
166
158
240
200
225
242
195
199
197
186
182
166
167
268
310
223
192
204
170
184
217
199
205
184
194
216
137
175
205
147
215
232
165
206
169
179
194
194
171
220
166
156
189
209
246
214
177
168
167
204
195
213
253
182
200
237
133
201
165
161
197
224
251
175
142
190
242
201
220
160
198
203
239
213
183
211
197
188
178
222
223
199
164
232
209
182
209
139
147
214
213
182
222
193
147
282
206
147
192
233
144
201
232
193
252
191
162
171
190
162
185
172
218
213
199
210
176
241
178
194
215
164
203
196
98
173
164
174
221
183
176
212
224
140
206
226
234
214
221
199
198
238
148
126
214
255
118
209
189
202
154
188
212
189
161
205
155
181
174
227
124
216
229
184
172
227
229
157
174
197
224
224
204
191
214
208
198
203
197
195
258
212
220
185
223
238
199
217
157
178
142
163
150
206
182
225
223
203
231
208
196
267
190
225
207
225
252
132
211
257
236
199
169
197
217
207
188
196
213
171
224
197
247
221
174
161
167
227
148
184
166
246
216
202
207
232
175
202
220
173
272
214
186
174
214
223
172
176
197
188
175
214
243
172
172
226
126
226
221
243
274
180
232
257
188
180
225
211
234
237
257
197
197
213
147
242
258
195
209
183
275
205
209
153
231
230
210
250
182
198
182
197
273
227
213
125
140
196
207
253
181
146
223
204
154
175
225
261
137
246
268
185
183
204
230
224
133
180
238
191
173
243
110
146
246
163
209
167
219
138
174
228
251
216
246
169
193
173
173
200
204
236
199
178
217
235
175
191
187
185
208
207
202
205
186
236
247
244
204
167
211
184
193
179
197
152
192
207
160
243
202
202
231
136
263
166
106
178
223
184
151
199
192
300
218
218
150
204
170
175
202
215
255
183
201
160
137
183
163
222
210
168
142
198
212
251
178
128
172
220
191
199
156
166
227
223
164
286
118
172
195
179
226
178
188
192
189
214
203
201
231
176
218
197
189
141
202
185
193
192
188
145
185
177
194
236
222
179
178
240
188
145
224
168
155
215
211
186
173
191
256
139
273
239
190
228
192
127
202
212
140
214
135
170
224
192
250
179
126
173
235
277
218
217
204
149
211
276
134
174
209
205
191
201
276
219
176
213
157
169
136
114
198
179
219
241
164
227
234
242
236
168
202
206
212
193
195
214
216
218
186
127
218
283
226
146
165
191
241
202
193
261
248
210
141
202
211
227
244
224
240
194
160
231
184
235
210
234
207
178
207
221
157
140
182
191
170
197
279
253
136
197
219
197
229
148
192
163
160
194
203
150
209
177
218
201
173
148
194
258
168
212
218
212
206
192
224
188
145
290
178
221
202
159
153
204
169
203
226
180
198
142
231
247
202
188
221
218
255
206
117
201
178
234
222
221
201
243
214
197
236
182
190
197
193
216
195
185
210
225
237
173
174
175
180
229
227
170
215
218
188
300
220
248
185
136
225
224
155
222
185
184
239
182
187
220
134
161
255
212
178
231
160
177
139
206
184
140
248
182
262
230
178
158
246
237
237
197
172
228
238
231
224
210
250
214
255
162
116
251
112
200
217
171
190
149
186
228
179
196
203
126
199
242
217
186
213
186
150
215
210
218
183
140
218
177
180
225
131
180
189
182
209
206
273
152
175
242
229
183
234
190
207
206
134
219
216
244
222
217
220
215
252
179
206
236
214
166
185
232
205
220
183
250
175
246
230
155
226
205
238
168
207
232
153
241
205
206
192
201
238
158
219
162
209
124
166
200
237
196
255
241
207
204
173
169
236
205
204
205
191
209
202
197
207
152
216
265
232
184
207
172
146
202
237
234
214
193
154
209
216
172
174
195
174
208
219
211
160
178
232
197
163
203
209
192
218
145
177
167
222
154
219
222
189
159
166
224
180
214
207
191
191
207
201
260
223
153
142
229
211
113
134
150
224
149
241
69
200
174
190
209
203
196
165
251
237
151
163
178
201
178
184
220
183
206
230
178
247
235
148
251
165
230
230
206
188
206
216
162
177
225
269
218
194
185
225
203
220
237
198
210
186
231
200
189
213
204
202
190
227
188
177
203
172
234
192
209
263
201
184
205
198
200
226
170
209
188
212
167
209
211
183
201
242
232
203
247
151
243
235
224
126
211
198
192
127
160
168
131
259
175
218
230
245
210
144
175
230
203
225
173
207
184
139
160
214
171
177
233
198
219
214
195
260
199
206
172
151
276
229
178
240
133
139
202
178
182
200
158
214
247
215
140
158
221
220
197
192
172
227
156
159
203
195
145
238
158
284
206
248
223
139
173
194
236
169
163
184
193
205
236
149
174
224
195
223
171
198
197
178
222
158
278
201
164
269
210
233
209
235
243
167
166
207
230
228
280
165
182
249
186
211
173
230
185
137
184
247
176
199
162
232
233
205
150
188
197
210
229
178
233
188
179
186
225
259
238
250
184
196
250
249
171
206
205
236
224
184
152
164
188
201
189
172
215
205
109
217
207
153
111
193
157
177
266
168
202
171
198
204
181
266
258
163
132
182
220
154
231
227
228
209
247
195
172
242
232
204
197
205
157
225
221
199
219
191
228
171
243
233
175
181
195
201
150
187
204
184
172
199
235
191
230
273
233
213
193
236
218
190
193
207
168
254
221
229
165
244
182
197
198
166
145
226
191
182
212
227
116
211
227
255
208
126
235
148
189
174
170
237
208
209
162
181
218
170
189
188
224
178
194
233
228
189
189
250
175
198
233
261
251
166
207
226
176
186
206
242
184
207
161
229
190
216
130
187
224
215
202
183
183
216
206
157
261
208
216
221
265
253
128
168
189
242
179
222
190
245
297
168
192
169
223
230
151
271
238
194
172
186
288
252
170
212
185
232
216
223
174
166
242
166
149
182
225
214
247
170
205
226
173
274
169
214
220
188
203
226
148
150
216
189
202
147
174
216
204
217
252
113
222
269
157
257
185
244
182
163
185
206
147
212
164
209
173
205
225
244
219
151
174
230
246
231
219
224
207
228
202
180
267
205
197
184
250
182
175
170
192
198
193
156
156
179
226
263
184
251
243
186
164
254
246
224
236
183
242
219
233
245
272
162
171
203
212
231
181
245
193
171
162
174
144
275
238
187
191
186
223
179
247
262
184
178
133
233
247
204
203
138
235
217
210
193
215
223
247
238
176
205
227
148
224
171
170
231
206
214
228
166
142
225
207
265
185
184
168
171
193
217
175
230
198
199
248
185
223
162
168
186
223
212
208
231
129
186
149
162
184
115
139
262
250
212
190
230
195
222
154
214
186
144
258
224
146
178
200
201
237
196
196
192
207
193
145
250
214
227
175
196
238
152
165
142
232
210
169
231
241
172
158
161
196
196
232
210
224
176
214
149
177
225
229
181
236
260
221
222
124
193
237
195
213
237
236
191
247
214
230
136
203
210
184
214
211
240
225
268
156
257
178
162
252
163
175
200
255
199
251
216
213
178
235
152
186
203
214
216
263
209
206
191
196
227
198
195
163
163
192
203
149
211
154
213
160
210
209
217
147
219
157
171
274
158
250
242
194
233
228
176
174
262
221
160
177
247
218
171
221
176
179
139
189
167
182
184
134
179
201
198
189
176
171
201
188
238
176
183
155
172
209
167
228
165
206
137
156
212
191
166
191
245
205
209
241
201
152
186
128
191
153
228
167
204
212
215
200
158
189
195
194
226
241
209
207
179
195
209
157
201
213
197
171
122
189
222
253
191
210
227
173
123
128
218
243
158
225
152
229
189
218
195
187
201
207
190
211
209
192
224
199
236
156
118
257
200
194
228
174
174
210
223
203
184
256
213
218
162
149
217
226
213
195
144
152
163
162
214
216
229
212
184
189
202
165
167
200
196
183
176
188
173
154
243
244
108
218
213
194
256
215
171
149
195
262
159
189
243
212
182
169
181
252
180
227
173
200
217
151
213
270
247
177
234
255
236
215
123
202
220
235
226
128
154
185
213
223
237
215
227
237
227
197
233
206
155
234
211
248
155
233
187
204
198
158
196
254
190
211
249
118
153
223
159
245
149
198
203
219
113
176
186
210
207
191
199
258
171
198
202
145
164
235
182
238
221
202
237
149
162
215
235
272
241
210
187
133
159
245
176
257
262
263
240
186
233
258
214
259
214
213
148
226
210
185
204
212
160
172
213
158
105
182
134
193
241
169
217
256
252
207
218
257
197
233
237
216
226
174
216
214
150
190
115
218
170
233
224
162
228
152
240
195
174
143
218
189
167
239
201
208
160
204
201
113
207
230
243
203
230
223
194
147
182
217
202
248
219
194
253
161
223
179
202
220
268
225
166
206
244
215
122
169
217
220
213
228
196
191
156
158
159
216
231
194
156
228
198
233
236
203
186
240
199
148
163
158
203
140
211
222
155
252
154
232
212
179
236
148
164
237
163
227
227
182
236
201
196
195
207
268
206
141
203
145
178
175
218
157
136
219
134
239
189
141
183
139
234
169
169
175
232
195
149
252
193
190
238
235
166
203
136
197
160
176
212
201
199
233
231
180
202
203
260
213
206
205
166
172
252
169
149
224
235
202
180
167
176
172
156
248
174
294
208
213
255
149
213
276
230
175
210
183
184
213
154
219
158
208
204
207
197
194
206
189
244
191
208
214
192
167
215
204
155
220
166
208
117
177
208
179
179
239
247
261
237
197
204
188
234
242
235
245
268
164
277
202
196
247
186
179
219
195
172
118
200
215
151
179
222
177
178
191
258
244
129
210
217
131
271
210
207
146
188
237
217
211
239
211
176
155
154
224
200
178
207
239
185
217
202
145
181
165
151
116
170
212
205
112
197
149
207
252
214
206
213
239
179
151
194
186
201
210
179
155
211
205
177
178
165
225
180
137
189
163
177
153
184
159
155
206
168
191
153
193
238
233
218
189
245
188
158
252
168
224
171
202
221
170
247
186
191
211
256
149
168
269
156
102
241
160
189
170
170
148
240
223
170
240
193
173
190
152
182
240
206
193
169
148
178
245
200
161
206
211
237
143
207
206
274
196
249
207
191
241
259
163
151
203
131
204
128
247
211
210
194
104
177
179
240
226
194
159
147
247
216
185
182
186
206
197
235
130
223
214
140
218
219
166
148
212
193
172
227
154
157
224
179
149
116
164
203
216
206
194
179
179
132
241
186
249
215
183
186
209
212
226
227
191
226
164
210
186
184
152
221
197
213
225
182
236
172
189
195
274
193
206
225
232
238
183
181
208
197
191
246
227
234
188
225
173
184
158
172
197
174
190
160
226
170
155
162
191
134
207
135
180
234
199
215
233
188
230
157
179
213
256
282
196
140
211
228
132
189
225
202
202
168
243
180
201
227
219
240
168
210
203
239
204
247
212
179
123
158
144
220
184
213
175
154
249
167
215
143
226
224
245
166
198
155
222
175
204
190
146
246
179
224
153
262
298
207
203
215
194
170
200
194
195
125
202
196
210
237
238
135
236
175
196
180
227
207
227
237
154
126
234
212
202
210
204
234
192
207
188
253
209
180
171
180
246
242
190
193
225
250
210
181
217
127
180
219
244
231
161
186
242
237
193
165
197
155
234
229
222
275
158
184
219
196
243
206
226
185
149
227
191
237
225
135
231
220
213
217
209
200
228
279
152
237
214
223
203
230
188
208
182
168
199
180
123
245
168
212
221
213
292
209
203
161
231
206
204
200
261
202
225
225
206
168
213
215
212
189
228
190
190
236
193
192
152
104
241
172
153
123
147
238
193
171
181
263
198
202
243
195
147
226
182
254
239
171
148
229
237
211
252
262
164
212
199
185
183
242
212
235
260
189
224
156
150
245
158
294
235
190
211
168
179
237
182
203
174
189
226
240
190
194
211
187
221
187
225
180
199
240
189
227
196
252
146
165
193
225
190
181
200
220
241
146
216
208
308
207
141
224
171
164
146
136
175
269
237
199
136
211
212
239
203
194
238
132
206
162
207
169
238
208
195
181
208
220
182
173
158
157
209
161
202
219
194
203
210
215
171
177
226
204
237
150
238
161
165
183
194
172
177
284
153
227
127
188
272
201
127
139
167
197
177
216
219
223
178
168
144
243
198
115
214
167
182
222
215
205
157
220
174
214
233
128
222
200
180
197
258
159
226
202
195
208
206
263
205
196
250
247
227
141
120
227
221
194
211
240
173
208
185
178
213
180
150
176
210
260
214
192
250
186
235
213
163
170
184
185
277
275
149
238
206
241
174
185
191
215
181
229
182
237
192
220
210
201
238
156
226
182
205
210
179
206
227
191
217
180
261
271
185
211
215
195
216
214
198
186
111
179
229
239
247
196
226
194
243
217
215
172
204
207
137
205
187
221
217
186
198
185
196
223
222
243
170
212
233
167
204
138
248
202
119
212
170
182
250
200
261
220
227
195
191
205
223
232
181
185
219
259
179
179
232
216
240
175
120
219
186
231
182
190
139
192
216
212
154
161
186
274
218
209
224
221
220
217
196
167
243
196
181
194
221
166
166
213
168
233
231
220
178
214
219
164
171
152
175
252
237
129
196
239
189
192
180
200
161
173
138
117
125
183
201
249
270
206
221
226
246
136
170
207
203
208
158
156
229
185
196
196
201
204
227
195
171
134
261
195
196
191
171
227
171
194
137
199
167
191
189
259
297
237
186
233
199
188
228
164
169
246
240
183
193
237
158
203
227
238
181
176
148
249
186
154
198
143
229
208
229
203
217
241
208
124
164
192
144
176
164
152
164
235
147
268
209
149
185
234
179
188
208
127
193
223
231
156
237
208
182
196
166
232
232
203
227
142
244
188
207
183
195
219
188
196
228
200
195
235
233
165
171
202
150
226
161
217
148
246
133
180
249
162
215
200
207
177
208
210
176
169
195
149
206
192
182
201
226
168
212
199
195
200
223
176
203
246
234
237
205
247
242
199
165
254
212
220
207
186
163
202
247
187
237
204
267
137
175
230
163
189
261
184
197
188
242
202
202
207
236
137
150
219
181
212
190
209
202
230
191
200
188
175
228
264
241
151
195
147
134
258
137
249
188
239
250
157
238
204
181
196
175
171
233
256
265
190
191
132
218
176
164
180
164
264
206
170
207
200
137
123
187
198
147
159
199
204
149
238
179
191
194
169
243
239
201
153
223
143
133
213
201
256
175
198
203
124
269
298
243
213
189
173
207
165
262
120
226
222
190
185
204
189
136
145
178
178
229
155
191
154
200
240
182
206
145
230
214
191
208
201
211
227
198
184
156
248
218
193
187
246
238
248
139
126
176
242
224
181
232
200
158
209
264
211
249
162
163
157
217
195
269
199
182
129
144
216
186
227
167
245
235
221
207
208
187
147
171
224
222
209
180
210
233
155
182
199
150
200
249
251
204
223
236
166
208
184
209
179
262
226
213
216
223
180
190
196
286
147
159
198
170
213
150
190
198
232
191
255
246
238
178
223
200
155
221
242
239
223
272
160
162
221
232
175
214
178
160
203
201
188
217
231
212
209
146
225
222
143
168
199
239
177
198
133
185
246
192
206
191
198
209
144
167
237
241
118
233
179
181
145
203
228
197
203
206
268
196
239
124
219
190
236
217
226
150
223
242
177
162
191
237
172
185
192
170
184
136
192
230
174
198
200
192
146
225
210
190
192
162
182
157
202
219
186
147
174
232
219
150
237
223
149
235
108
142
249
199
242
204
215
162
216
205
179
215
184
242
202
210
153
185
184
226
227
208
187
168
215
245
195
186
199
188
210
226
213
188
136
165
208
181
168
205
95
169
218
240
191
198
220
183
165
243
196
196
161
162
130
270
239
207
232
226
217
220
243
158
240
228
179
178
201
191
162
229
204
181
199
220
257
229
213
164
244
196
206
59
182
195
227
161
243
244
208
161
208
226
210
247
207
177
182
225
237
236
200
180
205
232
137
202
146
191
235
254
172
223
243
207
120
162
250
193
225
241
210
251
186
226
226
173
147
180
186
226
186
230
195
218
199
218
212
248
228
238
240
157
198
207
183
209
160
199
140
203
182
219
213
176
227
189
227
184
198
159
182
213
212
183
195
266
146
248
209
204
189
213
221
152
155
234
199
211
221
212
211
198
179
191
185
147
193
144
211
160
197
143
169
189
241
191
162
180
216
188
233
210
189
207
197
238
244
176
165
197
257
170
165
227
155
221
228
279
190
201
150
178
196
171
260
239
233
209
216
196
233
246
274
222
219
147
217
199
175
158
193
208
184
190
168
252
196
173
225
239
239
198
260
268
227
217
205
216
200
208
147
253
158
198
216
202
180
216
172
191
257
245
225
171
221
200
207
180
208
291
173
220
152
184
225
128
228
177
198
135
203
214
251
270
260
220
148
182
263
185
196
231
184
226
246
171
197
203
225
204
211
161
215
269
238
208
194
231
199
210
191
152
205
220
205
210
257
226
162
210
159
232
180
239
217
190
203
191
164
182
245
242
197
243
269
178
192
187
240
210
207
203
298
238
227
173
205
248
244
183
193
156
203
220
153
187
129
190
220
207
176
174
191
255
206
133
149
177
164
209
171
236
168
219
179
189
218
206
209
200
229
177
199
195
237
173
182
228
177
198
211
247
170
267
178
238
266
222
145
244
202
205
217
197
115
193
179
143
261
194
221
201
207
205
167
146
200
183
192
185
257
250
186
229
268
188
176
183
196
184
188
200
155
176
213
198
166
211
217
251
147
207
220
179
219
206
191
193
241
230
301
161
180
241
196
203
199
171
104
200
254
251
191
230
216
172
195
198
199
208
182
201
204
199
159
195
123
196
194
149
217
193
134
190
274
222
155
256
214
191
235
205
138
255
201
184
123
226
188
283
214
124
245
212
179
209
241
188
211
215
225
214
197
179
187
145
229
170
217
151
190
231
171
107
242
191
184
238
151
257
211
240
178
254
273
186
178
189
166
227
225
183
194
233
198
229
249
199
215
219
213
205
164
217
208
183
120
189
241
194
143
199
139
207
221
197
192
237
167
185
138
209
210
227
211
230
210
220
186
181
187
235
186
249
215
226
203
166
174
172
184
138
172
237
170
193
220
220
246
178
248
215
224
175
205
271
203
175
202
243
199
156
182
230
232
159
212
189
192
152
243
178
225
230
143
200
184
202
206
200
196
186
210
206
176
251
222
162
230
180
180
203
246
229
181
215
158
196
240
221
185
211
218
159
218
226
130
200
254
145
192
205
214
250
229
174
201
186
178
222
146
144
225
210
231
173
192
224
206
153
213
254
148
188
228
194
233
230
255
235
197
150
168
141
164
161
227
142
208
162
242
198
182
221
209
155
175
194
223
177
205
204
152
282
189
218
248
167
173
200
213
242
237
188
243
212
241
219
188
208
239
265
247
195
146
187
165
251
213
193
205
243
219
232
189
224
165
201
201
173
230
187
177
215
230
146
210
213
164
143
145
235
203
197
201
149
218
192
196
113
220
180
194
220
254
172
189
229
196
159
253
211
204
232
197
206
254
136
160
189
215
201
190
172
189
190
276
212
214
268
204
217
227
255
169
174
174
177
182
207
202
212
193
203
210
182
187
216
205
204
212
174
170
186
221
144
210
152
237
146
115
230
205
152
264
188
251
239
187
207
114
224
203
200
211
158
182
131
225
209
284
237
171
218
210
140
207
236
144
222
238
130
216
212
248
201
240
204
150
212
161
142
205
198
169
251
240
201
234
176
122
200
213
207
202
177
174
221
183
243
186
192
158
183
218
240
194
203
192
218
199
181
188
189
245
188
257
215
241
206
166
233
232
207
278
189
213
226
148
187
148
208
203
204
131
142
241
198
244
137
208
249
222
212
194
215
178
202
205
209
161
204
192
173
227
222
203
105
177
262
205
166
151
130
224
199
218
212
207
174
212
245
169
192
226
235
146
229
189
187
171
107
249
233
199
160
192
119
192
201
228
209
205
232
262
229
196
247
128
233
211
253
170
185
185
209
234
229
250
191
134
202
202
133
184
243
179
192
236
213
155
249
228
150
98
234
170
211
212
201
133
233
231
184
195
220
232
219
163
199
250
206
192
133
184
154
184
197
218
146
183
209
166
182
208
208
276
126
208
194
239
205
158
252
248
204
162
237
191
195
153
219
226
167
179
152
194
250
190
152
190
177
181
208
171
151
203
144
140
183
204
196
212
177
253
209
240
108
226
243
184
234
232
142
233
177
219
201
196
161
252
187
221
250
188
254
191
262
208
245
217
162
212
189
266
208
182
130
230
163
187
165
206
198
231
212
241
132
167
219
220
245
201
208
204
189
150
184
206
193
189
251
229
188
144
234
219
212
192
219
206
166
215
201
280
191
198
213
224
209
170
170
184
197
198
155
177
188
200
179
240
171
237
233
230
228
185
182
203
275
195
195
215
199
242
192
159
214
253
174
182
189
248
223
207
210
214
208
191
167
223
161
136
213
123
212
197
180
231
169
151
181
143
166
170
157
171
200
212
181
208
225
165
127
163
209
159
157
239
138
222
224
234
235
241
178
190
206
219
187
162
211
204
147
186
130
188
164
170
202
183
218
216
208
189
178
191
202
197
198
182
133
234
198
136
257
218
238
257
201
205
174
217
208
227
219
220
189
251
186
203
192
164
206
218
211
203
172
182
203
232
176
207
198
230
163
231
186
196
200
266
227
151
236
192
252
176
207
209
228
211
213
242
182
157
205
165
229
166
206
203
148
192
246
234
226
204
252
205
202
247
221
188
220
202
239
216
227
208
200
155
234
223
184
166
193
261
229
127
222
266
211
120
269
200
204
243
217
137
203
181
189
211
212
234
192
184
163
157
182
247
184
186
160
164
223
183
179
202
163
182
153
265
186
177
230
235
250
161
183
211
232
214
205
272
111
169
227
219
175
174
202
170
139
250
186
187
208
249
174
221
237
200
217
207
216
265
163
217
121
156
151
175
196
128
206
175
197
179
201
230
184
242
128
228
189
161
183
219
120
138
149
214
167
206
170
178
240
235
180
219
217
183
156
260
174
205
159
189
189
171
229
189
204
170
206
203
203
211
133
148
235
131
204
234
159
152
245
201
221
159
182
205
203
250
106
123
218
212
211
214
173
159
196
224
145
209
221
214
199
187
192
158
198
240
231
210
185
155
208
168
226
203
198
173
167
244
143
147
204
225
206
203
267
216
238
213
183
218
192
186
195
151
168
199
277
183
213
166
203
165
165
219
179
165
172
168
234
212
231
199
217
209
202
176
219
191
192
182
206
174
194
196
208
228
202
183
172
218
150
185
185
164
235
219
149
217
167
251
138
216
138
234
244
184
198
149
232
208
213
230
254
217
173
164
224
236
182
213
199
153
202
184
219
148
185
198
156
167
182
193
221
217
129
164
246
231
158
186
231
139
146
231
184
260
226
154
174
206
219
139
213
204
170
133
203
173
229
210
208
208
170
246
255
187
239
199
183
193
177
191
221
207
175
212
191
165
184
203
207
164
175
189
223
252
163
213
167
212
206
196
150
148
202
215
135
98
194
198
215
191
105
210
250
186
230
179
180
153
179
198
204
220
277
165
166
202
201
236
200
213
211
183
193
187
205
167
187
190
245
221
216
214
159
166
207
167
196
239
148
269
228
170
160
219
212
230
162
209
218
165
178
249
174
198
232
205
210
230
286
215
170
212
218
156
140
209
178
152
201
198
199
235
213
200
204
223
143
163
242
233
235
222
238
271
160
202
212
228
204
185
180
208
210
236
236
206
175
219
159
153
197
127
162
200
180
187
172
229
208
225
212
181
224
273
214
192
257
180
184
173
219
199
200
222
189
119
191
212
180
172
270
172
224
209
231
213
208
223
198
240
226
174
170
175
206
122
222
178
254
241
241
163
242
209
232
218
229
199
196
162
198
219
194
225
280
128
213
187
208
256
216
118
133
168
221
214
205
138
125
189
164
240
223
128
252
230
197
199
180
182
185
185
182
229
190
207
191
218
241
182
227
192
204
230
216
197
167
167
171
191
233
207
165
171
161
247
148
236
203
131
183
229
224
148
195
245
207
168
264
233
187
225
154
233
205
157
227
193
166
168
209
189
167
191
180
208
202
216
183
245
165
259
226
174
249
148
237
231
171
198
216
230
182
205
179
239
197
260
199
209
181
171
163
149
212
202
163
235
166
236
178
137
188
120
240
144
205
158
171
225
211
222
182
232
173
169
199
148
278
203
200
227
215
168
202
249
176
221
235
215
259
173
163
148
224
185
228
139
200
223
231
209
241
172
249
119
235
227
240
189
219
220
210
236
216
172
233
213
215
143
300
213
186
258
168
173
259
232
191
210
225
175
254
221
120
257
224
147
172
259
222
219
162
210
271
190
231
228
234
157
219
146
174
177
188
257
134
142
195
183
166
233
223
111
228
195
152
196
229
223
204
206
201
235
156
204
149
222
190
242
238
226
204
238
220
225
151
185
173
157
173
159
235
175
193
182
216
216
176
246
198
220
182
95
160
214
193
165
239
176
211
208
221
197
189
185
147
168
248
175
179
196
213
203
197
201
186
254
251
216
188
203
254
177
178
217
188
192
237
232
151
144
162
217
220
182
178
149
253
194
184
206
142
240
149
204
223
205
234
251
202
194
178
174
227
213
184
215
215
232
205
206
164
204
185
221
199
249
206
187
225
159
247
178
189
156
264
186
236
206
262
213
248
168
156
169
237
159
237
244
194
205
201
184
162
239
219
161
170
231
263
233
214
221
221
185
242
233
231
178
139
211
262
235
205
198
267
178
179
256
183
160
271
204
269
177
205
213
169
234
212
239
195
213
159
221
203
209
180
181
191
135
127
238
192
212
210
194
187
158
230
248
169
172
249
208
121
203
195
204
185
249
240
159
221
231
238
223
287
184
248
205
231
238
222
149
195
227
230
177
235
250
158
236
244
213
170
261
205
210
213
143
191
245
137
175
215
183
184
221
204
162
225
223
207
227
195
190
226
205
164
182
211
184
186
176
251
191
149
188
125
175
193
223
191
187
262
211
208
161
183
179
167
206
145
243
256
212
226
208
208
223
214
213
189
201
177
145
213
162
131
198
197
174
131
185
186
203
184
226
184
218
194
176
212
191
222
244
227
143
183
262
201
261
208
201
223
149
258
136
214
238
239
165
268
195
167
148
178
195
245
206
236
206
259
192
235
238
232
165
236
215
154
167
200
216
211
166
202
166
206
259
282
160
239
188
212
220
252
137
213
197
266
203
221
212
207
244
290
127
186
195
116
131
197
175
196
226
190
219
175
168
175
251
238
174
253
215
220
218
220
173
193
242
173
248
196
182
197
200
208
209
182
141
204
189
241
127
244
238
182
188
204
222
202
230
177
236
153
197
206
155
200
222
272
200
110
221
223
236
177
151
217
219
246
219
212
199
262
124
281
204
159
277
216
264
143
216
176
237
140
154
169
136
236
192
206
197
196
212
214
183
204
248
209
197
216
175
229
216
149
200
221
187
180
168
191
158
192
237
275
208
206
248
186
193
187
191
235
215
245
223
180
177
171
217
201
134
208
195
138
188
255
201
206
170
137
221
186
224
150
196
210
252
165
259
197
197
191
202
208
223
178
194
205
210
178
201
163
133
202
184
221
213
196
172
161
256
256
150
252
201
181
175
224
169
245
183
213
152
227
176
257
213
169
214
171
207
186
219
184
203
219
137
237
192
179
154
186
194
176
184
206
236
270
190
185
212
213
227
160
171
207
241
171
177
230
170
140
206
177
184
214
184
212
185
266
178
225
190
151
167
196
175
287
232
250
169
207
212
141
216
249
157
186
150
213
237
172
196
248
251
190
191
174
193
207
228
181
139
175
178
155
237
193
259
145
210
126
228
192
158
205
179
256
174
206
253
177
219
185
224
192
175
250
186
213
193
223
190
260
185
238
171
248
222
129
186
173
268
153
135
156
149
247
203
156
212
202
174
182
203
234
250
181
174
116
191
198
246
217
257
125
121
234
156
176
237
248
236
225
194
223
165
216
194
116
208
153
175
222
215
201
216
235
219
220
211
194
213
183
186
204
199
152
238
175
277
241
172
212
176
161
214
188
152
253
196
212
175
204
162
172
271
201
206
165
196
179
216
232
222
246
238
190
231
210
220
131
216
246
193
267
172
154
218
202
182
139
209
235
234
230
214
220
162
164
219
238
236
248
157
199
253
182
180
192
210
191
223
217
198
232
154
198
244
166
275
196
239
220
152
169
176
209
164
278
283
239
257
142
230
147
230
207
138
207
177
188
194
185
216
195
78
166
196
139
265
202
239
216
228
164
175
164
222
141
158
189
236
192
179
204
180
225
213
267
183
238
144
217
217
205
252
190
177
161
190
175
210
214
145
198
204
207
243
168
197
297
201
183
225
198
210
234
203
220
174
262
211
210
164
158
165
252
190
219
203
220
219
173
189
165
173
220
167
179
166
230
170
210
233
155
140
228
269
178
228
185
187
192
190
253
234
196
212
258
140
150
99
207
234
238
150
193
243
130
233
162
205
177
234
197
181
203
150
215
241
275
152
269
224
167
231
211
263
169
203
169
282
223
195
178
146
213
241
242
232
255
191
231
162
225
186
135
183
184
150
188
227
212
158
196
210
236
126
184
179
204
189
233
252
202
229
194
199
201
261
234
174
210
141
221
220
236
208
134
199
285
203
195
229
176
202
222
179
223
159
231
162
222
168
209
235
227
198
195
254
238
207
213
138
204
228
192
174
208
244
174
176
156
263
210
185
273
223
155
260
176
210
202
111
183
185
148
171
150
195
254
203
205
154
214
195
165
240
225
167
230
201
263
160
197
198
258
179
259
192
247
150
162
220
177
212
261
208
217
217
171
254
140
182
173
155
164
245
246
179
244
214
202
197
194
238
217
264
201
249
156
165
191
208
191
234
207
145
239
193
183
192
202
220
224
208
227
188
109
166
193
250
230
169
178
202
145
245
216
188
256
169
179
273
194
243
189
211
220
195
173
208
168
129
210
162
195
220
179
230
164
225
188
235
189
208
221
211
160
205
261
204
245
178
244
151
215
165
208
160
190
185
251
175
130
205
207
208
138
175
257
244
164
164
169
226
183
178
245
234
205
212
219
203
160
237
177
245
194
247
183
271
228
213
147
168
204
156
167
233
182
181
161
172
219
196
186
212
231
192
221
295
213
189
249
221
216
235
230
220
159
159
88
118
195
193
210
201
207
244
266
194
228
230
259
190
237
202
239
162
214
215
214
202
250
224
215
172
199
221
206
147
165
198
179
115
235
170
210
179
227
145
215
227
137
231
219
186
203
216
174
140
176
187
162
201
188
195
244
138
190
205
180
216
191
183
188
171
173
182
150
242
227
173
158
236
295
213
174
230
212
185
192
203
241
250
195
240
236
213
235
180
187
183
157
199
197
171
212
213
159
257
188
187
207
157
273
218
154
213
200
178
174
192
192
184
238
140
196
206
235
225
198
115
222
241
154
163
163
165
206
183
243
205
176
240
223
229
232
156
139
170
210
192
192
200
234
121
204
196
194
223
227
235
144
237
165
261
179
173
220
186
187
216
180
188
183
220
197
219
218
187
175
238
198
161
126
249
180
186
195
243
221
259
225
254
214
171
202
200
137
161
181
248
213
228
223
184
197
136
219
209
228
227
175
246
153
216
213
224
219
208
152
213
202
167
227
192
187
198
239
181
111
186
201
124
242
175
183
232
224
276
196
174
117
181
181
224
168
203
216
191
177
142
190
215
240
248
142
162
244
230
189
186
186
207
275
171
144
167
174
209
221
238
181
193
161
220
172
236
141
190
159
198
237
217
171
209
221
160
199
229
247
246
228
179
179
203
190
111
183
159
191
146
207
141
199
222
210
201
200
199
205
283
174
207
223
200
104
168
108
158
176
166
172
175
210
218
215
222
169
224
194
247
203
214
170
257
168
165
202
174
247
158
223
185
205
154
120
232
216
151
173
182
217
183
260
154
235
210
151
251
187
196
149
162
187
239
175
196
228
219
175
222
193
199
236
264
241
189
221
185
219
160
207
273
197
184
217
259
211
172
225
167
221
189
192
226
255
167
206
172
220
213
153
229
191
153
204
195
253
255
134
156
147
193
216
227
182
190
261
162
217
243
169
195
163
227
224
215
180
190
203
172
206
210
179
188
217
241
229
166
220
160
185
200
163
208
257
244
154
195
220
221
170
206
158
261
239
189
216
239
217
217
216
175
227
218
209
259
166
220
197
263
245
170
235
219
214
255
201
234
181
209
160
236
284
209
166
191
270
175
187
263
171
167
213
204
193
221
194
175
152
163
198
199
206
251
215
188
172
189
209
120
161
190
220
188
191
203
263
146
235
201
206
192
220
199
171
246
211
236
169
138
172
147
174
200
145
144
209
139
187
222
191
167
140
204
221
154
207
261
206
249
141
249
154
197
185
156
186
227
216
187
217
159
141
151
161
143
192
135
124
167
149
216
291
190
173
180
213
166
203
169
169
230
115
134
167
240
220
163
219
219
207
214
143
150
212
170
272
192
222
210
212
270
231
149
137
191
152
158
174
129
196
188
224
241
171
185
228
161
199
157
272
221
181
194
229
178
189
139
239
255
236
207
206
170
187
230
233
188
230
262
226
249
190
203
233
249
258
137
154
180
203
243
209
232
187
196
190
164
156
157
228
119
232
220
173
194
167
213
144
156
217
249
190
199
175
217
167
199
223
225
161
181
176
235
188
242
180
249
176
168
266
166
195
246
186
257
166
159
171
276
190
234
148
207
247
159
135
194
188
167
239
211
138
185
230
183
165
197
212
164
180
152
285
175
233
135
150
194
250
226
216
184
218
205
198
215
182
150
151
203
233
237
209
190
190
218
242
259
219
184
164
170
179
178
222
155
196
272
226
166
226
216
249
197
147
187
176
202
236
270
257
199
220
190
158
242
220
209
219
170
210
144
187
230
237
171
188
170
183
247
196
183
205
194
225
243
198
213
207
147
228
214
185
147
214
196
185
140
174
210
202
162
181
130
238
229
214
222
198
189
201
282
221
228
193
222
251
194
243
199
258
233
222
228
196
133
242
214
176
201
144
256
204
172
255
220
244
215
205
135
156
206
221
206
210
200
165
228
153
166
203
138
180
199
178
203
123
222
188
229
165
220
196
183
184
160
221
234
193
235
169
212
159
245
138
169
234
181
127
229
214
198
226
189
197
211
237
165
170
170
174
181
169
237
193
204
146
241
170
224
198
161
162
156
180
216
150
193
163
198
245
214
126
268
161
177
190
161
174
202
235
210
233
290
101
172
208
174
257
272
237
216
222
284
204
186
207
151
120
233
225
201
174
194
213
253
153
158
212
175
183
189
220
203
227
158
186
166
244
217
230
232
238
223
225
157
245
207
226
208
197
187
195
115
225
225
239
220
217
114
153
156
272
177
205
235
178
231
234
213
191
195
250
260
226
222
221
199
184
187
224
181
206
164
136
155
167
203
221
189
226
197
181
188
180
213
102
184
166
234
225
152
174
233
201
151
216
176
143
179
178
170
176
182
166
143
195
232
224
176
251
197
169
222
146
189
188
173
190
142
239
216
168
204
174
210
204
215
175
179
208
206
231
232
248
177
188
138
223
234
213
189
160
168
174
224
113
202
172
194
206
168
168
150
282
164
232
233
250
205
228
199
195
204
223
155
195
199
246
168
184
177
277
238
219
238
165
205
192
187
226
187
198
189
200
203
164
218
173
246
220
143
139
143
154
209
223
200
164
161
167
208
168
115
198
161
232
209
189
224
197
240
261
196
190
259
234
224
198
209
154
186
192
225
145
139
224
208
185
209
198
202
191
189
191
199
150
290
166
252
194
238
212
218
238
224
220
165
189
266
192
218
244
134
97
196
193
225
233
192
205
133
182
190
253
188
137
224
250
158
225
205
199
173
208
187
260
202
230
230
212
159
302
216
238
190
207
190
183
206
185
199
212
190
199
230
224
120
180
139
220
183
214
213
163
172
229
165
202
120
221
177
145
140
200
213
232
184
188
224
196
233
161
119
111
200
227
244
207
246
270
172
147
205
241
234
226
167
192
198
238
201
211
151
185
226
137
202
218
229
195
207
256
203
172
202
170
192
181
185
247
215
165
135
219
206
188
275
207
243
250
210
260
216
158
242
215
203
196
207
167
160
184
197
181
220
189
152
230
237
223
232
197
245
248
220
210
183
188
200
146
194
219
248
222
222
220
216
217
219
224
210
188
203
191
211
178
250
154
208
195
212
263
167
199
179
203
216
182
186
173
223
254
213
176
163
209
165
220
202
141
272
154
166
191
209
190
214
192
184
176
229
173
202
209
169
190
169
222
146
212
205
224
137
133
195
144
197
218
213
237
225
241
198
192
168
151
194
162
233
140
237
233
174
220
202
186
174
237
250
170
165
224
215
218
198
250
135
190
191
185
244
180
178
188
176
181
238
237
160
142
161
165
231
173
297
214
175
214
223
197
218
263
173
221
127
195
196
156
201
277
187
188
215
237
250
191
273
182
145
222
145
209
210
131
205
173
152
193
223
198
241
152
232
201
202
223
192
244
199
225
232
157
156
206
189
189
220
194
221
197
196
207
230
199
167
212
196
267
229
218
255
233
189
164
167
149
173
228
214
243
253
174
232
225
149
224
260
201
208
185
117
206
227
178
186
235
225
164
241
196
213
196
164
207
179
193
210
204
176
156
211
143
142
202
242
159
172
182
126
165
187
210
139
203
263
257
212
212
124
225
227
205
204
175
240
186
243
222
182
234
189
190
212
234
169
220
170
268
189
190
230
183
220
225
164
183
178
155
211
146
173
190
125
195
139
188
159
147
174
227
157
196
174
203
276
223
187
221
188
229
256
157
157
229
157
213
228
190
196
165
224
220
151
218
277
259
196
242
211
206
121
173
199
194
179
160
231
163
136
206
207
231
231
240
209
268
221
164
171
211
196
176
203
130
213
163
158
228
235
134
200
179
153
212
217
194
134
221
220
200
200
148
182
172
214
218
189
139
201
250
160
189
205
244
230
183
236
242
204
239
219
196
228
183
219
167
175
202
183
222
244
234
216
121
184
212
180
100
157
212
177
204
238
185
224
171
120
232
204
241
242
176
181
172
190
123
209
237
213
213
169
220
203
152
209
196
184
184
176
228
156
229
249
219
271
221
214
194
215
197
205
170
183
165
179
223
213
151
229
108
213
186
197
208
193
204
221
231
220
168
170
178
115
184
171
200
212
168
115
214
180
209
191
179
230
219
191
188
192
174
206
199
259
217
208
185
207
216
216
200
245
124
172
257
198
228
204
175
221
146
199
226
188
193
219
233
148
182
178
163
250
221
220
222
159
196
264
157
215
132
225
224
221
168
250
286
223
178
164
179
177
153
193
275
178
222
151
197
171
214
167
190
151
149
128
205
221
232
209
221
199
211
272
158
149
238
179
237
238
136
170
219
158
231
195
228
186
190
171
160
267
240
177
247
161
192
215
181
176
209
179
215
232
228
164
206
169
175
197
276
180
266
160
257
214
145
136
164
178
172
151
143
147
230
248
155
176
210
181
245
225
148
158
166
216
261
240
173
151
124
175
181
184
166
176
211
174
236
174
165
173
223
206
214
132
126
164
209
225
274
223
203
165
211
216
168
159
250
173
147
269
182
189
194
183
259
170
162
130
186
201
165
224
249
222
190
281
156
211
201
194
201
155
230
192
196
199
179
207
190
185
165
172
209
181
160
181
179
211
196
261
163
266
184
186
163
218
243
141
204
219
223
170
212
173
180
221
177
174
216
225
192
186
190
226
229
197
191
226
229
176
229
151
216
246
173
189
255
197
233
177
204
197
186
159
150
221
263
252
227
220
233
215
239
161
209
251
197
209
188
214
236
230
244
232
249
191
183
169
225
140
208
234
231
198
223
173
175
187
266
173
153
186
173
164
163
174
219
214
264
161
157
210
245
220
235
231
129
233
181
179
229
198
214
172
142
222
279
203
197
188
128
213
229
217
227
255
202
217
222
226
193
202
163
102
190
234
156
173
253
224
216
206
169
194
151
180
212
230
230
153
215
184
192
271
139
172
126
234
220
234
120
197
164
189
226
195
247
97
164
191
235
202
242
135
191
203
213
205
201
140
230
221
218
264
221
151
158
208
174
175
211
232
143
256
205
202
225
210
128
204
198
177
231
225
195
193
202
183
169
208
240
236
202
182
164
215
262
165
185
210
208
236
169
238
229
219
204
166
210
138
224
168
262
232
201
261
232
192
223
164
213
210
220
233
237
142
186
178
207
136
205
199
122
227
241
247
207
247
205
216
214
225
216
160
260
241
239
166
197
138
242
232
201
242
194
207
194
213
217
218
199
254
218
191
266
180
180
178
206
182
184
180
216
180
184
216
180
151
151
171
138
184
149
276
197
185
257
239
213
248
218
195
228
166
228
194
240
228
190
178
231
250
245
194
214
185
181
201
187
219
200
199
202
293
156
162
248
213
214
179
162
188
215
180
205
192
201
188
213
133
179
216
152
246
158
233
177
217
228
205
200
168
160
171
181
168
179
290
176
228
192
201
233
214
137
179
201
195
246
214
234
208
212
238
182
187
243
214
135
244
137
124
152
164
156
238
186
195
180
211
225
131
216
193
211
261
156
205
183
240
193
237
244
181
155
146
194
218
175
163
145
245
178
166
239
197
227
219
186
204
204
207
237
215
207
278
225
195
213
263
143
242
221
172
161
159
194
238
217
206
161
190
171
298
157
137
197
165
206
224
215
224
173
186
211
229
220
216
224
187
199
135
214
219
242
156
224
238
207
240
198
209
245
184
230
196
233
161
179
207
129
175
209
169
264
198
218
273
114
198
217
189
248
208
214
231
207
229
253
215
252
161
188
210
280
267
239
154
197
206
191
204
230
221
215
193
117
224
210
222
195
193
237
170
225
194
192
199
180
236
160
155
176
209
204
220
203
168
221
233
224
182
177
220
221
194
222
204
174
269
191
218
140
229
167
193
186
222
187
193
252
198
214
179
215
215
155
202
144
200
97
236
298
227
248
209
225
167
175
166
189
189
161
221
250
228
184
212
193
209
211
210
252
201
187
201
253
233
259
249
231
208
238
198
194
213
189
222
170
204
214
130
203
222
207
207
232
180
213
169
205
211
201
205
191
228
242
266
178
225
164
163
164
199
198
212
205
224
219
187
213
185
171
174
195
230
151
159
236
132
215
229
219
201
179
135
180
187
237
185
253
165
216
170
238
232
225
223
220
251
236
200
143
222
211
185
229
239
156
210
227
229
178
236
207
204
183
250
235
212
197
225
148
172
205
231
167
181
232
263
191
199
185
162
212
212
132
193
169
195
220
204
151
234
185
170
228
172
213
235
119
231
170
166
147
262
228
187
173
201
233
225
156
162
144
208
192
210
184
210
177
189
130
193
213
175
213
187
244
169
247
229
190
166
214
235
237
197
184
209
241
213
256
188
215
175
204
230
183
228
131
178
235
165
264
256
203
191
235
194
175
165
135
179
199
189
181
258
165
184
167
146
188
199
203
201
178
150
133
207
235
244
204
198
173
238
175
182
209
221
225
181
166
215
193
212
232
202
230
167
268
220
191
178
236
263
195
179
179
203
197
227
196
170
174
202
207
202
199
168
228
254
264
222
237
171
210
139
206
182
241
274
130
222
161
170
206
232
218
187
193
234
181
220
220
213
181
158
204
245
267
234
152
251
197
158
215
202
222
170
144
248
144
231
215
202
182
216
179
216
215
206
243
250
228
222
206
181
197
192
172
175
170
134
228
233
213
145
159
218
194
188
209
186
208
256
188
145
193
175
167
227
191
252
189
201
233
174
198
213
237
223
204
165
222
179
228
206
241
234
228
182
193
190
224
237
177
208
171
280
170
151
247
200
205
159
195
193
230
198
213
197
219
183
178
174
214
186
193
185
225
262
255
222
169
214
199
246
198
227
139
224
212
227
251
185
204
151
184
146
200
125
175
217
148
195
172
170
204
155
238
263
212
211
153
206
193
196
242
153
149
225
152
235
256
254
169
197
91
174
150
185
143
157
244
216
191
199
186
262
208
183
254
214
212
202
151
226
213
234
214
166
236
199
209
177
221
210
193
159
169
169
206
179
227
207
211
204
262
246
152
140
171
199
239
215
192
210
206
211
211
202
160
245
212
234
210
233
207
173
236
118
194
196
199
237
236
148
258
231
231
215
218
226
207
137
149
253
226
184
187
186
162
155
253
246
211
240
267
206
223
160
194
176
201
218
183
219
228
203
216
239
220
203
198
239
213
186
204
232
199
217
262
225
184
201
235
192
208
215
211
248
240
186
199
197
227
187
154
190
211
156
197
199
191
100
246
177
184
190
215
226
214
160
209
232
146
172
213
203
229
171
201
237
208
164
237
212
231
244
137
175
114
205
174
181
199
205
230
239
225
201
168
174
210
229
236
191
145
236
264
174
173
197
209
159
223
198
236
224
227
191
184
212
199
187
168
137
178
223
132
184
169
207
179
148
209
201
232
241
233
215
173
192
223
179
230
151
206
200
235
174
223
242
186
239
196
256
268
165
254
190
129
211
164
234
137
211
213
202
225
246
234
198
238
264
176
213
213
211
229
255
220
202
174
181
223
157
237
235
239
208
207
196
199
248
184
195
178
210
198
154
195
208
183
81
238
210
183
222
245
170
188
235
238
216
204
233
215
229
171
180
197
173
143
247
213
188
144
230
175
219
168
133
206
221
173
186
196
217
265
150
179
226
208
154
199
235
163
239
208
164
201
147
157
205
226
171
199
202
197
171
240
120
214
208
179
215
156
220
182
204
179
239
211
185
255
186
166
213
164
196
183
214
248
223
199
183
200
171
211
239
164
242
187
198
166
221
191
201
216
222
246
250
222
195
226
261
240
154
265
200
219
235
180
232
167
200
229
231
257
219
218
121
217
158
250
174
188
184
269
192
179
205
189
172
195
173
260
268
186
223
195
219
177
232
215
238
185
210
257
217
257
177
211
162
167
150
203
213
226
160
180
265
208
175
215
263
165
198
147
255
216
222
170
246
216
219
153
255
252
183
227
229
214
178
186
202
203
229
196
275
149
209
215
252
182
186
263
150
211
212
139
142
223
244
129
152
222
207
175
236
178
212
127
150
210
198
150
222
222
198
239
170
194
206
219
242
200
180
203
214
160
209
233
223
214
168
235
127
208
208
218
158
201
145
282
231
252
174
236
244
232
213
266
228
216
194
185
229
230
172
271
177
225
233
253
238
196
174
187
118
174
180
83
211
227
256
228
167
201
172
222
184
189
193
204
132
165
227
243
184
185
261
182
122
191
190
194
249
195
124
85
301
184
229
124
206
186
181
243
202
204
192
233
219
199
248
266
217
277
185
210
192
200
224
184
245
200
186
220
226
192
194
162
210
226
199
174
194
171
223
169
161
220
229
206
221
231
192
206
159
198
191
176
217
192
195
240
172
211
180
179
218
195
149
270
154
265
264
175
151
180
200
179
197
155
174
204
229
230
213
158
187
242
252
182
204
229
139
235
241
165
139
243
220
204
270
214
152
207
187
174
131
247
200
252
180
180
165
200
226
251
133
167
245
169
228
138
189
201
217
205
270
228
228
258
210
214
214
173
256
204
205
127
204
167
177
216
142
204
241
203
252
164
196
162
178
193
226
259
223
246
234
190
167
274
218
174
237
186
207
212
238
226
249
162
195
204
204
219
225
234
227
241
241
205
163
219
203
287
123
196
173
207
223
173
179
194
210
207
249
207
201
202
189
208
218
224
212
234
209
208
214
216
159
236
262
182
185
183
163
220
217
195
163
182
161
186
194
181
191
162
193
187
197
210
179
158
216
216
223
186
199
171
258
159
231
221
185
186
152
184
200
197
247
217
240
205
183
191
189
203
213
147
211
220
158
207
181
152
199
191
194
166
133
214
225
145
216
174
174
233
212
188
200
256
198
261
192
222
218
218
210
244
209
201
152
226
175
224
206
199
210
196
257
129
227
173
192
232
190
179
214
181
250
185
223
215
156
172
211
214
209
228
205
180
131
204
151
166
218
213
247
195
237
221
158
237
173
210
216
234
206
190
172
231
241
174
226
185
225
197
160
138
204
248
238
178
218
225
259
239
178
243
170
179
241
181
132
221
236
206
167
228
184
163
154
232
220
244
174
176
156
210
198
254
248
221
204
188
220
224
213
173
257
223
206
201
215
174
152
210
217
218
190
129
217
218
182
143
192
199
172
296
167
126
268
217
185
235
197
204
122
149
160
223
211
257
201
133
203
167
200
204
154
185
184
220
232
246
243
219
253
173
190
194
234
163
147
195
180
204
223
196
147
174
191
135
189
181
219
221
215
216
186
146
166
242
244
185
158
155
194
207
154
205
164
199
205
188
195
214
125
250
222
165
226
244
216
235
140
204
215
115
158
219
153
247
210
186
195
165
211
202
215
228
210
208
199
198
253
231
229
228
199
221
233
204
175
178
189
229
238
153
176
260
205
146
237
148
150
157
190
207
144
217
223
259
225
234
176
182
193
234
226
205
148
225
219
218
173
191
221
186
188
226
251
219
217
233
241
175
190
185
152
196
200
175
204
215
238
206
188
262
181
175
214
220
166
177
222
143
230
198
165
245
140
113
185
245
250
133
285
191
196
174
237
205
145
202
249
207
252
209
194
161
196
238
224
229
158
234
185
156
216
243
217
176
234
187
183
236
180
121
119
224
217
205
211
227
162
247
235
227
201
254
213
230
172
140
113
174
167
201
152
194
223
205
199
211
205
187
206
225
185
182
198
265
213
239
113
165
227
213
218
174
224
263
301
190
126
222
187
130
155
162
220
196
212
254
242
157
196
151
185
249
198
171
202
200
212
240
131
234
237
212
167
240
179
162
215
197
264
169
164
261
168
151
219
229
231
171
176
151
137
200
200
163
232
150
155
198
184
243
171
175
190
214
226
239
231
159
267
189
167
227
177
188
187
240
204
221
222
207
234
239
195
186
221
178
239
218
201
124
180
221
168
178
224
141
218
243
190
183
204
226
239
221
221
187
214
177
190
180
211
196
213
217
207
231
214
247
202
166
182
192
149
170
226
221
179
225
190
231
180
213
228
165
146
143
187
159
234
153
268
201
166
198
195
263
204
257
184
228
214
192
238
191
254
204
185
222
210
172
226
258
221
173
217
241
184
168
199
199
164
203
142
216
220
215
205
161
209
144
232
243
160
184
245
196
220
223
177
196
181
168
181
240
206
286
193
198
186
152
160
189
229
197
196
191
204
212
223
230
162
163
225
205
204
238
239
166
197
207
178
212
251
206
260
205
232
176
244
188
175
249
179
195
192
189
202
189
152
184
264
244
179
261
189
208
174
222
228
231
228
201
185
193
205
196
205
180
190
216
157
210
198
163
198
217
222
225
171
230
170
214
220
176
131
186
212
164
217
137
189
181
202
224
217
209
169
208
215
217
207
140
156
269
135
237
183
189
189
197
241
206
213
174
253
161
180
178
225
182
191
185
199
195
174
180
197
132
179
219
207
231
162
149
198
234
157
185
215
206
223
240
165
218
175
178
225
242
200
265
236
226
129
202
173
198
251
253
177
255
124
169
193
249
244
223
150
209
193
205
219
211
234
220
169
178
150
165
225
206
175
200
228
178
214
175
214
172
205
210
249
208
216
204
203
179
203
260
219
162
225
237
195
180
222
207
254
220
211
200
193
211
246
175
178
264
206
245
139
132
238
210
206
209
208
192
196
265
220
199
203
232
225
217
204
230
208
178
224
207
205
213
179
191
217
155
191
239
225
183
237
223
148
167
208
242
144
173
236
168
185
191
210
135
182
227
227
214
215
236
194
168
214
178
139
208
180
179
206
199
202
185
238
232
177
172
216
151
227
190
208
215
225
223
248
169
154
192
247
222
151
262
225
221
145
159
201
136
223
205
183
196
229
153
162
199
192
209
179
189
129
192
185
197
210
131
211
137
207
235
199
159
224
255
177
201
235
183
210
174
243
181
203
140
212
169
175
240
198
166
196
208
212
206
259
157
269
166
145
199
231
212
188
180
181
206
184
165
239
266
163
214
238
206
197
204
225
235
207
175
214
216
209
249
223
233
135
239
190
156
249
213
182
190
132
235
200
202
168
202
156
205
218
240
178
199
273
153
262
243
188
208
134
220
140
240
236
196
161
169
216
172
189
230
168
183
246
201
244
197
157
238
178
217
176
144
145
182
184
276
253
159
175
164
212
190
227
195
231
207
223
190
201
217
255
252
142
214
219
185
191
176
174
184
230
196
263
174
232
246
170
161
185
143
214
199
208
221
186
185
202
195
133
215
183
213
199
220
200
215
175
194
192
192
168
166
239
170
162
205
189
180
151
235
223
245
261
186
217
184
222
205
164
199
224
223
205
126
151
194
267
172
242
206
221
234
210
236
177
170
207
174
180
181
191
176
243
245
228
206
143
193
239
197
160
208
160
169
202
224
200
192
207
217
211
240
241
208
229
186
145
141
202
186
250
185
205
217
201
223
147
216
123
269
230
184
210
232
193
141
213
193
245
236
234
257
215
180
229
180
96
202
144
228
214
191
127
172
208
202
216
214
148
246
146
221
245
225
243
197
212
176
250
243
225
223
213
213
178
214
175
205
200
170
128
255
221
200
230
179
263
144
214
173
250
252
193
231
184
216
182
205
270
160
254
271
220
112
174
204
290
158
181
120
237
199
181
160
195
225
196
204
147
186
184
213
163
246
224
225
220
208
206
201
138
201
222
215
194
200
250
188
282
205
175
177
189
210
225
217
181
268
173
160
143
167
241
228
224
190
221
175
179
175
191
166
210
227
190
224
211
228
172
191
232
202
226
173
142
197
150
199
180
169
239
137
254
187
178
205
193
175
217
244
207
237
164
219
143
229
235
183
216
173
222
145
180
151
162
184
209
156
227
228
249
194
258
237
242
240
216
165
207
139
143
179
164
215
236
160
237
212
225
222
189
212
180
183
240
206
179
163
193
206
228
282
270
183
158
176
204
199
223
173
238
122
168
191
166
226
173
187
211
217
217
206
261
186
237
246
149
193
229
255
115
198
237
240
217
190
220
184
191
164
155
213
119
220
227
225
226
231
195
164
210
193
217
174
265
169
232
156
219
176
133
172
238
192
188
239
200
190
202
146
197
207
206
202
181
143
154
159
216
262
197
209
209
212
224
238
270
276
199
173
186
208
195
213
132
160
172
207
211
167
211
222
236
274
178
227
246
209
225
210
243
197
181
186
210
165
142
232
183
161
183
219
165
178
243
184
211
228
166
226
164
238
263
240
199
240
211
187
206
236
221
184
203
170
169
275
180
223
133
241
161
167
176
173
183
205
195
211
223
197
158
227
159
151
169
205
174
139
168
222
220
177
165
155
253
205
171
228
240
226
263
168
216
270
137
199
225
168
219
267
213
216
189
126
191
167
189
169
188
132
223
226
144
232
206
206
186
185
145
148
195
194
197
208
165
214
236
230
242
186
225
230
223
244
254
195
190
213
166
216
125
151
204
209
170
134
186
189
190
220
134
145
225
225
171
212
168
228
204
230
147
211
174
166
213
226
245
173
158
131
176
131
100
200
158
199
102
209
153
214
261
176
161
225
223
149
238
143
145
228
181
173
189
109
215
197
241
163
147
208
175
239
221
240
182
202
151
167
165
200
212
217
139
181
248
166
261
229
166
180
139
99
191
164
198
229
151
229
182
241
208
188
196
209
230
156
177
197
146
228
263
207
220
215
220
202
191
245
205
188
166
162
205
255
183
194
157
194
195
196
171
197
189
245
290
200
205
131
182
195
133
232
255
169
203
240
211
222
149
201
251
134
205
196
185
250
178
163
214
192
205
151
247
176
217
132
214
234
198
229
172
228
218
196
206
257
182
255
287
149
262
216
151
163
251
121
267
272
175
247
199
203
261
153
171
183
175
212
207
162
149
241
150
192
150
234
236
188
204
179
174
245
206
201
207
180
229
257
190
213
183
179
221
226
171
167
178
219
247
264
176
263
196
230
126
133
131
184
202
236
142
244
204
154
166
223
228
221
197
216
184
211
184
231
211
217
269
178
231
149
176
237
185
205
193
152
218
173
223
225
175
165
172
152
187
214
185
230
209
211
253
166
150
255
256
235
127
223
188
138
170
144
285
247
235
216
225
230
226
180
160
187
215
244
190
211
231
192
220
253
209
226
228
199
213
154
175
138
183
201
262
165
256
189
196
224
199
180
213
241
171
213
198
221
231
200
172
181
154
166
198
194
212
200
208
158
116
207
203
209
211
199
234
210
221
212
212
141
198
198
243
178
181
144
203
198
205
230
162
230
205
215
212
238
260
227
170
146
184
206
185
196
124
171
204
182
213
232
195
191
211
184
163
234
179
201
199
192
214
178
202
223
162
174
189
147
224
237
217
201
162
228
174
181
259
243
209
188
193
250
185
217
164
187
177
136
209
168
164
190
248
203
166
201
214
192
275
130
95
194
179
195
167
171
180
218
222
224
191
194
122
217
230
230
173
230
219
142
243
169
212
246
153
210
170
181
220
174
235
204
189
173
211
204
212
200
241
147
195
198
262
208
187
201
209
199
217
217
155
234
187
166
197
166
183
232
153
187
187
235
194
170
168
235
248
208
197
200
223
202
210
221
174
187
197
187
199
235
206
177
157
252
209
160
193
251
234
216
238
223
150
185
181
258
197
250
247
209
145
203
210
255
148
233
223
246
165
152
200
226
140
214
215
189
258
216
231
132
261
230
234
236
214
191
238
186
213
186
272
162
112
222
213
206
226
183
163
137
211
203
159
224
285
253
260
225
219
218
178
161
150
172
190
235
166
150
237
147
159
166
193
206
242
225
234
239
198
205
189
238
161
141
210
198
209
198
220
157
167
191
192
201
191
163
197
179
203
195
171
206
225
173
203
222
182
225
210
219
212
221
198
226
193
215
155
221
184
198
181
196
202
234
226
217
248
226
180
186
177
161
181
183
194
196
213
181
176
188
202
176
242
179
128
221
234
204
223
217
267
219
232
130
210
202
165
230
258
202
167
223
221
243
203
206
223
205
227
209
166
185
231
148
196
229
205
183
211
170
204
178
220
237
236
168
225
177
211
168
212
140
103
203
161
227
226
236
193
284
193
238
144
184
247
246
227
223
152
202
134
204
128
182
180
202
193
200
216
168
172
253
276
166
257
168
200
203
204
209
171
245
246
186
172
173
239
153
199
203
207
185
220
221
161
203
222
233
240
205
200
209
201
263
237
221
258
161
217
213
255
192
225
149
186
184
174
204
210
158
206
199
178
164
206
204
129
165
170
190
208
231
223
184
205
245
238
183
192
235
210
190
153
239
224
155
166
200
218
245
153
226
190
180
167
163
207
215
173
146
203
202
215
217
171
182
208
195
250
191
135
190
220
153
176
219
264
208
197
183
202
121
157
171
195
211
211
188
212
212
204
233
168
184
174
207
192
200
253
155
219
218
196
163
206
145
178
190
201
165
174
206
144
185
196
188
230
223
189
159
251
190
238
216
186
146
216
175
208
206
221
221
257
186
254
178
210
170
107
186
231
112
168
192
180
186
235
152
194
182
205
257
187
183
238
213
178
192
171
171
215
284
155
223
197
190
217
160
140
162
218
217
199
265
154
239
238
143
175
165
186
206
262
205
205
217
151
145
201
202
235
254
112
244
239
239
171
211
218
188
223
168
200
195
178
259
220
212
128
187
265
197
243
210
182
195
138
204
163
225
227
177
181
200
189
219
241
194
205
222
199
215
195
220
119
145
197
190
233
224
192
206
196
194
192
249
227
210
216
185
198
205
220
192
216
172
157
220
153
171
115
195
206
251
208
149
144
158
178
240
195
179
214
196
185
197
149
170
151
190
260
209
154
229
189
251
230
154
180
210
212
227
199
213
220
217
191
212
226
203
184
192
127
120
174
188
266
215
213
207
153
262
116
173
128
213
174
159
152
129
193
209
216
164
186
244
188
198
165
223
225
205
183
167
221
203
188
210
193
225
207
246
170
249
200
217
184
155
222
215
228
200
241
275
149
202
193
130
215
178
158
201
209
243
209
191
146
180
215
259
140
213
204
158
153
212
136
203
209
160
224
161
214
284
167
208
216
207
216
225
205
229
206
161
206
201
210
174
234
234
220
233
215
163
176
233
166
207
238
217
255
241
184
142
218
203
231
184
203
223
189
161
188
184
208
203
189
166
234
203
231
200
242
217
199
223
148
216
181
243
192
222
139
218
167
204
201
176
195
205
184
243
181
180
216
215
176
195
188
129
150
239
195
187
216
211
127
273
163
176
196
197
253
238
208
210
228
269
197
254
182
180
223
182
238
223
227
213
202
149
197
174
219
197
200
212
161
240
149
202
208
169
246
183
264
191
185
196
144
144
195
232
212
175
202
190
162
227
159
219
143
207
201
178
169
204
167
147
231
193
257
222
194
138
227
206
207
217
166
235
251
220
237
208
155
218
133
185
242
223
134
195
206
225
147
241
204
208
199
179
237
174
223
201
187
158
202
161
221
218
169
149
165
179
210
229
210
221
204
230
174
192
226
218
134
203
218
183
193
214
247
203
168
190
239
154
218
216
243
134
144
216
121
240
175
171
207
181
228
240
128
234
191
169
214
161
176
196
199
224
213
265
202
176
186
184
234
206
145
188
202
199
205
226
148
199
185
174
193
173
204
173
172
175
139
217
202
180
263
179
163
245
189
225
197
165
189
214
183
175
216
118
228
201
261
200
227
182
224
220
210
199
198
192
195
173
251
207
200
207
163
155
141
242
183
142
174
198
145
197
199
154
194
195
172
224
265
229
163
241
202
179
108
128
201
219
185
207
138
265
205
200
179
231
199
220
233
266
148
182
245
134
239
239
244
213
250
269
193
197
206
170
162
194
225
177
133
209
210
150
164
169
246
159
226
167
175
200
248
152
174
162
219
211
229
149
186
228
254
258
194
242
184
192
189
190
175
157
194
175
185
209
239
157
218
207
181
163
196
185
232
213
246
187
230
203
165
217
223
211
228
233
145
192
221
217
175
215
210
175
206
194
204
196
187
213
239
186
205
161
174
167
216
212
218
213
215
214
202
195
210
169
211
195
209
202
220
203
209
208
190
221
228
192
215
237
262
230
178
165
248
212
168
227
181
226
130
167
202
222
205
148
200
211
159
209
189
260
233
184
154
209
222
189
223
229
135
211
225
229
189
229
217
195
173
193
164
237
196
224
163
228
177
241
152
194
180
184
230
222
137
207
224
197
188
247
254
174
142
235
179
178
170
180
194
156
197
162
254
192
187
166
169
196
218
233
163
220
174
149
162
255
179
234
249
173
234
180
190
255
202
251
197
116
175
227
224
267
158
248
257
173
189
173
212
186
144
234
158
269
206
169
248
188
234
168
246
177
181
224
183
239
261
203
195
202
234
279
237
204
216
229
177
178
245
198
265
217
189
207
166
232
173
176
217
236
192
207
139
180
197
227
184
211
208
183
210
209
189
212
253
187
154
171
226
191
187
212
291
244
192
196
197
258
172
251
204
191
226
205
190
187
228
217
185
193
193
206
190
231
236
217
171
188
217
198
198
158
189
196
191
207
229
219
217
198
189
218
216
200
152
166
225
154
168
201
157
204
171
240
219
194
196
154
224
257
188
252
239
220
229
128
182
236
235
202
173
207
238
182
173
256
239
238
225
224
189
191
193
182
213
92
202
176
177
221
228
155
203
212
168
147
188
190
238
234
206
214
264
195
174
180
222
195
162
248
111
222
192
179
186
166
168
205
234
224
208
181
224
189
177
214
219
210
194
167
213
172
186
156
211
199
232
228
268
179
205
234
225
167
207
165
172
217
245
257
186
235
205
156
152
109
202
192
156
226
238
203
162
228
220
183
159
225
198
182
217
142
220
165
182
221
143
192
187
168
192
224
132
189
182
215
167
241
241
185
230
155
152
181
216
212
145
167
244
218
208
258
114
220
175
232
185
229
230
202
217
200
137
208
161
219
120
196
215
206
238
209
223
168
225
230
233
192
201
234
181
220
170
144
193
238
186
194
240
193
208
144
193
139
204
241
151
146
247
210
193
220
244
181
201
169
178
182
246
201
189
184
183
193
197
224
204
240
102
224
140
162
175
208
142
237
250
172
116
213
240
179
209
269
247
154
200
253
224
200
236
161
240
170
196
231
169
150
211
168
178
230
204
202
215
218
194
200
139
130
245
178
221
231
157
183
152
254
220
191
224
184
157
202
220
212
215
220
168
233
224
210
224
208
169
196
208
178
198
218
114
253
233
212
203
192
186
154
239
222
219
234
190
222
194
195
173
170
216
183
189
219
154
189
164
189
186
175
204
162
181
196
169
171
218
261
210
275
241
162
147
193
217
147
244
166
128
200
179
166
248
197
177
207
216
205
183
178
171
221
182
259
169
259
191
179
165
214
208
196
185
227
187
192
210
176
228
164
201
156
234
181
211
175
138
185
170
258
243
175
294
186
233
162
186
180
176
198
173
198
144
204
155
194
161
206
246
187
205
213
123
237
231
166
181
228
268
235
208
222
190
189
249
265
186
191
189
179
138
175
182
187
195
259
242
205
184
163
212
254
166
209
242
226
176
151
227
191
172
185
161
234
177
229
165
236
239
180
161
220
158
192
211
175
169
125
180
217
187
253
209
175
194
213
249
210
176
250
143
242
271
234
212
205
208
192
230
239
246
239
248
178
204
221
140
155
188
249
166
161
220
207
220
206
220
227
194
185
220
237
197
206
214
191
197
205
251
151
164
190
213
255
147
208
160
192
159
152
184
222
216
170
228
238
197
176
190
213
193
235
199
147
180
223
180
172
153
230
211
209
265
246
204
154
221
161
194
152
172
225
151
168
207
154
165
205
227
206
180
213
212
207
237
205
198
206
230
166
150
152
135
194
150
229
188
239
225
188
183
197
240
172
150
250
174
236
198
242
251
194
247
250
174
182
191
170
249
193
267
216
242
188
198
187
170
163
227
190
216
237
245
186
199
145
234
186
211
265
205
166
210
189
196
234
204
217
215
225
158
211
190
235
203
176
225
203
196
182
240
174
190
185
153
157
199
162
138
173
205
218
189
220
232
155
182
137
241
167
243
176
210
194
151
167
192
225
229
179
235
217
153
226
220
178
216
165
170
148
201
166
201
202
178
198
169
214
193
152
183
212
182
202
203
125
175
181
175
219
183
249
207
202
239
182
201
174
184
137
203
172
198
226
241
166
248
206
213
235
206
186
239
163
207
232
254
277
196
267
227
218
232
191
186
206
196
168
207
229
222
224
191
234
218
170
213
175
200
194
228
152
203
239
233
214
195
126
204
220
252
255
131
236
225
172
239
194
198
209
198
168
218
214
216
135
195
253
220
223
150
239
248
178
226
225
160
204
156
222
241
219
237
211
206
154
226
219
102
263
179
215
191
222
186
220
215
192
250
147
222
221
213
226
198
196
206
214
207
216
229
218
223
234
128
162
226
148
188
229
196
259
248
174
160
233
174
231
96
99
205
219
205
170
199
203
239
170
229
172
170
134
190
180
226
182
217
200
220
195
155
148
187
226
140
246
143
216
184
92
194
181
185
187
190
184
236
171
261
226
221
162
140
199
166
219
186
159
146
202
228
193
210
216
256
214
167
112
158
189
256
147
239
179
184
227
202
246
202
156
134
276
179
237
242
152
199
202
152
205
145
250
218
178
224
202
205
150
209
181
180
224
254
184
174
161
191
211
199
163
229
205
189
181
221
219
234
139
147
238
199
198
215
169
145
208
175
234
181
220
218
235
216
200
233
195
190
160
185
183
187
184
233
251
219
212
246
172
216
159
173
183
154
189
191
142
260
209
225
127
170
219
169
233
185
189
180
201
169
244
133
213
244
196
241
217
167
152
165
248
220
173
193
160
227
198
213
226
191
183
180
244
221
210
213
209
247
160
202
214
148
217
151
245
241
195
262
209
215
184
151
247
194
215
181
194
220
222
190
208
184
201
228
194
197
200
233
182
223
198
167
194
212
187
216
158
204
146
198
259
186
156
230
242
194
204
167
265
196
125
184
255
172
163
173
240
275
185
220
249
206
149
241
221
119
209
182
184
201
141
206
250
226
221
184
190
187
168
258
199
285
162
211
175
140
217
246
190
242
171
220
156
160
231
199
190
229
223
191
265
236
162
195
230
230
209
196
174
171
202
240
175
121
237
157
235
235
133
209
195
163
189
202
177
178
190
244
152
221
189
238
249
156
182
241
222
127
134
252
151
229
167
195
192
224
181
170
157
180
218
233
217
212
175
167
216
204
192
247
192
242
196
200
226
165
241
204
182
195
212
147
274
153
220
207
166
202
234
207
232
117
181
180
185
247
228
195
202
207
113
267
187
232
193
231
173
174
205
174
176
179
193
220
155
199
258
185
220
210
230
237
273
229
202
153
221
198
189
181
201
145
183
187
207
236
193
209
170
113
179
253
156
217
134
184
195
213
203
161
170
130
222
191
193
187
257
218
193
160
231
174
146
215
225
256
228
215
218
190
195
213
238
175
218
185
229
156
225
244
219
219
196
202
201
190
238
263
223
183
161
236
149
118
186
245
174
179
191
141
131
228
157
259
218
199
169
174
213
145
213
217
184
228
196
164
209
304
191
177
229
207
262
175
191
219
184
197
157
201
179
225
180
187
194
194
188
154
237
155
218
247
176
239
178
204
174
214
176
196
211
259
220
172
210
216
193
151
163
252
215
174
226
229
201
210
185
190
175
235
230
195
211
239
195
190
214
200
188
193
229
189
213
225
186
199
178
214
180
214
238
226
216
223
212
213
169
241
167
204
200
160
230
202
188
166
222
243
279
184
189
214
238
225
197
195
183
267
197
162
222
265
160
204
120
218
132
216
230
187
162
232
244
198
230
177
186
190
139
211
200
148
156
200
246
179
162
135
100
159
184
203
119
217
123
114
255
204
207
217
227
206
161
260
120
201
282
143
225
209
182
210
244
189
276
210
201
189
235
207
196
202
176
199
180
183
245
161
149
210
198
153
189
241
179
212
158
158
208
248
201
193
252
196
220
183
244
136
186
172
215
206
150
142
258
270
184
196
134
192
208
176
232
237
222
199
161
228
153
235
211
135
243
210
232
195
219
217
196
205
222
192
215
189
149
266
223
145
233
189
243
188
248
191
172
229
170
184
197
220
144
189
182
209
196
199
226
249
132
214
161
196
254
193
204
210
272
219
184
202
240
210
232
178
165
181
231
161
233
203
223
110
206
128
222
201
235
178
172
235
141
231
214
190
169
216
193
208
254
212
189
204
226
214
225
163
177
139
243
228
214
212
135
139
153
179
233
239
266
229
204
225
163
233
172
267
279
152
140
211
160
229
166
197
258
192
198
213
155
176
209
203
209
216
163
164
217
210
231
136
263
257
122
186
161
180
234
137
197
195
200
175
195
234
235
163
172
195
137
168
140
253
201
185
219
185
256
204
133
215
206
193
195
161
204
247
240
189
254
205
153
204
239
219
201
218
194
231
199
188
196
201
211
195
215
146
202
274
235
216
220
212
162
186
167
193
225
201
161
185
219
220
179
192
231
213
150
148
173
193
210
154
144
130
201
179
242
269
205
205
183
192
185
171
202
241
219
177
207
101
181
204
220
200
210
183
163
192
216
202
192
247
223
200
188
248
196
188
185
170
231
176
207
181
157
154
203
210
196
197
220
232
140
192
200
185
251
225
199
226
197
269
198
264
191
195
197
163
212
246
158
195
177
191
246
205
205
151
165
141
219
222
202
179
168
135
227
220
262
251
163
158
218
190
141
245
216
217
246
191
197
217
255
232
225
266
176
192
182
204
224
181
194
231
140
202
210
187
186
271
196
249
224
254
219
205
259
266
195
165
167
191
236
201
174
207
185
196
125
176
256
186
143
110
184
176
191
209
201
196
216
174
131
186
203
200
239
149
199
148
203
210
238
177
198
202
133
199
148
191
219
164
190
247
216
243
215
214
227
202
197
165
163
206
252
185
252
199
199
168
191
217
223
148
183
191
252
207
277
207
176
114
205
156
232
195
191
178
221
214
212
253
211
179
216
205
275
164
253
224
223
223
196
139
240
211
215
244
215
128
170
148
175
132
108
168
226
231
162
124
193
124
187
203
181
157
188
270
188
144
253
184
252
237
170
186
190
208
227
215
132
194
174
150
152
230
163
180
153
220
238
193
210
209
213
210
152
208
227
200
234
281
180
145
229
253
148
127
208
207
237
290
200
175
185
214
160
218
112
162
228
180
217
224
224
179
199
112
241
188
158
146
163
206
302
220
245
179
244
231
154
188
224
222
247
204
247
191
250
199
258
237
209
261
243
218
177
149
260
203
189
220
226
204
209
262
196
158
175
252
253
245
183
211
224
159
220
258
244
133
229
162
178
209
179
203
166
203
236
178
194
234
196
182
164
172
218
209
144
180
178
208
165
258
234
204
225
136
121
193
213
175
208
187
169
191
156
195
246
179
214
212
131
189
157
186
215
209
213
227
213
192
200
194
202
166
229
211
156
202
197
171
222
186
148
157
216
192
170
250
223
271
134
222
189
222
163
203
234
186
206
156
209
208
221
176
211
158
222
202
215
198
200
240
164
204
221
209
177
215
144
218
236
203
254
239
189
121
146
182
161
164
217
166
120
209
195
227
213
82
267
177
166
192
211
236
210
187
194
155
190
187
190
164
255
221
169
181
159
179
233
259
242
186
206
199
212
164
156
191
274
241
220
188
201
168
197
226
183
148
272
195
283
201
178
181
219
195
191
128
201
185
224
196
173
246
235
192
117
217
179
206
221
271
213
173
253
249
184
172
171
230
178
181
150
127
273
173
245
163
198
236
252
197
197
230
223
142
212
187
275
153
198
158
128
226
236
240
171
159
178
186
182
197
239
209
146
184
193
204
212
223
169
240
251
171
164
252
151
180
198
169
192
228
122
245
164
173
188
150
249
262
220
233
100
158
243
199
136
243
216
119
224
208
190
134
228
197
232
204
211
228
148
220
156
154
232
212
238
212
175
220
250
219
183
237
217
209
145
196
222
189
152
132
207
201
248
200
206
251
217
172
140
191
234
233
149
206
185
163
175
189
173
151
174
199
235
208
240
151
203
206
202
207
142
218
225
195
153
199
227
257
179
136
172
210
191
199
263
209
179
180
211
214
123
172
209
237
284
246
182
223
248
199
200
228
265
212
239
193
229
143
198
191
226
176
192
128
103
158
222
179
202
221
189
149
156
176
218
197
190
259
234
191
231
215
204
133
175
180
219
153
168
174
150
185
198
248
195
187
192
221
254
256
186
160
181
215
193
255
210
149
246
191
134
259
179
206
187
191
169
177
150
164
234
259
190
183
184
153
241
197
220
186
217
199
193
186
243
234
206
199
178
254
228
180
268
159
216
214
240
213
200
192
173
162
210
230
230
173
204
213
267
251
177
192
168
181
210
187
208
216
180
263
236
184
213
216
224
224
259
237
253
230
191
172
146
187
174
217
204
161
161
262
269
176
229
176
236
156
151
218
217
198
206
145
197
271
223
217
204
140
178
180
205
175
137
193
121
188
210
186
171
181
219
156
217
113
246
194
199
258
158
187
178
217
205
148
218
234
219
225
203
212
258
159
166
178
224
164
239
168
256
230
190
128
158
252
247
178
222
164
168
149
212
239
221
214
174
189
196
123
149
197
219
215
228
208
207
232
224
198
156
203
214
218
205
176
196
163
238
190
212
207
270
164
162
108
208
236
235
248
249
253
281
153
238
222
178
191
153
249
226
188
216
191
270
214
189
226
169
165
245
210
201
178
259
275
135
240
225
104
211
216
223
183
242
163
207
125
208
200
228
132
259
189
130
162
214
185
207
178
237
143
183
192
176
216
175
225
243
156
215
280
234
222
209
225
172
208
196
264
180
221
189
194
134
203
241
206
202
190
211
171
137
167
209
150
225
160
247
212
233
201
233
180
192
220
276
232
197
165
183
215
247
187
214
213
223
293
187
183
203
212
168
156
230
165
198
230
209
189
207
162
241
261
202
217
179
200
264
228
209
197
272
164
205
195
179
207
131
157
208
199
190
228
236
194
186
180
160
184
222
207
224
238
164
218
176
220
210
222
278
199
163
219
169
163
173
225
220
175
225
193
192
157
222
162
222
174
205
176
202
179
162
194
201
193
258
163
227
170
192
186
160
157
215
175
166
216
172
180
203
166
216
241
178
199
149
196
148
246
232
227
185
169
225
174
167
208
260
145
239
208
240
212
175
160
196
212
178
155
169
215
256
185
132
126
198
184
199
210
147
163
188
214
182
161
246
224
242
127
177
187
208
255
224
151
263
172
170
248
223
152
182
202
145
116
212
201
169
211
220
222
191
199
207
174
124
152
219
164
219
252
144
229
203
206
245
208
211
229
122
203
143
184
197
165
194
267
144
267
192
246
174
168
216
208
172
207
169
159
175
166
220
187
167
188
159
151
168
271
258
203
202
230
125
225
192
238
203
182
227
170
222
152
223
215
238
169
185
210
136
211
220
166
171
172
204
184
187
123
241
201
217
199
178
236
193
232
202
155
207
259
168
216
202
224
199
225
198
219
185
154
204
214
219
240
272
195
180
177
254
186
121
189
259
217
155
205
169
150
209
231
203
211
268
213
179
225
204
156
217
174
171
224
164
239
182
239
191
211
213
219
177
200
178
162
198
197
225
172
182
211
221
165
183
211
147
268
197
195
171
141
187
192
181
241
242
138
178
270
194
241
233
241
226
152
223
148
197
272
258
197
188
167
164
190
182
134
187
223
220
152
229
226
218
257
198
186
184
258
210
287
206
210
168
125
221
211
272
213
197
177
201
186
211
224
151
224
203
165
195
187
203
210
178
193
200
183
235
165
261
241
145
210
181
215
222
201
239
226
196
211
210
241
208
201
222
250
139
218
158
242
201
175
245
178
242
135
171
180
195
208
240
226
167
259
231
240
200
195
214
240
216
179
204
238
169
179
235
162
228
213
196
174
169
236
142
154
148
245
157
123
215
183
174
212
176
156
202
228
141
211
172
182
228
200
160
206
196
214
222
208
201
240
231
209
183
244
256
182
207
176
210
195
222
221
193
164
232
228
179
179
166
268
207
243
234
202
248
191
172
196
146
174
157
236
215
195
212
184
171
175
164
208
181
222
193
229
139
182
227
218
206
158
175
205
212
224
232
228
169
166
187
213
208
216
183
253
214
184
178
147
252
253
192
233
244
247
221
200
231
181
177
200
233
194
176
207
217
216
146
276
131
207
235
193
224
219
169
255
258
179
217
178
136
238
240
199
205
242
232
197
206
177
151
228
174
189
216
220
241
172
204
234
211
205
166
189
247
259
195
266
149
166
150
239
219
150
180
195
218
203
139
252
241
237
246
215
196
188
231
195
221
266
196
191
256
248
184
248
204
212
233
195
190
180
218
112
215
199
256
182
171
212
164
242
200
216
241
219
219
231
171
199
206
218
165
287
235
185
161
205
230
199
212
237
206
177
184
269
227
175
196
165
207
208
189
138
192
156
150
187
178
180
143
173
210
158
176
168
186
212
186
216
176
204
144
209
219
184
177
220
170
179
200
192
228
172
196
215
185
204
246
277
204
178
147
240
183
167
187
224
220
179
192
176
143
200
211
207
136
131
199
195
139
209
213
198
190
199
213
255
256
211
194
231
221
188
248
189
212
198
157
233
155
149
193
211
148
162
237
146
155
186
180
145
196
182
177
189
198
229
191
256
212
220
269
236
261
227
218
226
217
204
214
184
248
211
189
170
171
255
187
237
161
177
204
240
134
231
185
205
223
207
170
198
159
165
191
209
234
181
261
177
235
165
174
140
208
186
185
120
236
168
220
191
199
144
211
178
178
182
185
293
232
187
187
146
153
215
198
228
205
182
179
175
167
189
200
263
203
168
223
176
229
222
169
183
198
220
190
161
224
212
250
166
206
244
181
166
231
174
162
205
191
264
223
226
149
209
180
168
236
151
186
171
167
158
190
214
228
194
223
239
255
246
152
191
182
155
254
202
182
178
269
175
184
185
213
246
212
167
161
222
193
198
245
252
182
187
232
208
216
163
229
246
148
181
233
192
143
257
216
165
211
243
208
202
157
264
172
233
191
245
263
168
167
167
249
191
184
217
201
199
168
151
198
273
141
129
197
214
163
205
272
210
155
158
219
170
225
203
164
168
196
206
173
213
174
195
141
222
145
178
162
161
214
174
226
190
222
173
140
224
200
197
233
192
170
206
237
228
183
243
202
180
267
155
236
198
215
254
181
225
149
237
146
224
187
238
154
238
226
194
215
241
195
201
194
204
207
168
184
249
201
187
102
182
169
211
271
257
191
157
178
205
148
216
166
183
239
210
251
216
124
187
203
185
199
203
224
218
203
193
167
247
216
186
186
222
225
226
221
208
197
121
254
207
153
213
211
231
242
124
168
206
248
222
208
196
222
237
235
158
223
165
183
233
188
146
235
168
176
114
233
194
248
229
163
223
146
190
219
188
188
213
205
199
190
236
146
188
221
174
222
202
217
199
158
155
212
230
250
219
207
135
184
219
201
176
171
210
204
200
155
161
191
198
224
188
215
162
186
219
176
220
202
173
203
215
178
223
150
175
161
159
225
189
220
170
209
199
158
243
166
190
161
225
209
217
200
269
223
208
149
210
192
187
199
223
236
165
206
145
245
193
213
214
188
192
165
218
224
196
230
220
166
204
193
209
232
176
215
200
200
242
202
216
160
161
202
206
221
273
251
203
203
249
171
180
210
170
205
191
138
206
209
163
207
182
192
203
228
145
221
219
226
217
143
181
158
173
167
177
160
212
162
187
177
208
164
222
190
249
203
228
171
250
175
162
236
234
202
188
190
204
227
221
230
171
187
186
146
256
226
211
201
185
177
155
171
250
236
248
254
164
223
230
165
208
172
185
159
218
199
207
130
159
189
228
192
231
177
202
214
215
185
219
193
233
252
205
148
234
189
182
231
220
237
169
177
161
244
209
188
235
164
191
221
170
229
144
228
235
155
220
218
157
179
207
196
269
222
163
198
176
273
197
225
198
217
200
188
225
212
137
150
199
174
225
195
224
266
202
182
181
188
252
165
128
274
194
190
229
198
205
234
208
137
175
221
186
194
207
202
188
170
173
251
180
181
139
250
198
240
179
200
182
137
234
265
246
220
233
169
139
191
171
258
198
170
191
164
127
208
196
167
189
203
154
259
206
229
208
267
184
263
239
218
222
166
155
129
236
223
175
220
227
191
231
138
151
149
195
133
134
234
200
260
146
209
164
217
230
200
165
212
166
197
262
184
231
207
171
205
239
158
164
178
215
189
249
201
215
197
212
218
183
267
182
178
136
219
189
193
171
178
221
183
229
194
198
165
190
189
225
248
246
206
254
194
185
216
253
233
225
263
202
133
185
244
204
167
123
208
277
243
174
230
196
194
142
164
205
214
156
191
182
190
205
169
235
215
201
178
225
174
255
221
184
223
183
193
196
135
233
187
197
181
200
182
171
171
214
189
201
221
182
162
183
196
203
161
197
171
217
172
262
210
235
151
179
134
203
178
152
215
214
218
194
203
93
203
153
234
217
197
193
205
177
199
114
147
170
219
212
191
189
148
232
171
210
204
201
179
207
231
184
225
231
188
160
251
155
247
237
134
235
170
240
204
188
207
208
133
166
231
220
150
152
219
229
157
233
220
212
163
249
215
198
218
235
120
194
226
170
127
249
177
205
158
146
246
194
187
224
176
230
143
126
202
169
208
193
188
177
237
194
229
176
157
214
192
215
183
145
228
206
191
221
172
213
184
188
212
139
194
206
229
158
196
234
154
195
180
155
234
236
196
268
176
193
214
140
216
196
227
218
163
171
273
202
157
191
211
207
190
174
188
218
140
250
201
164
199
212
112
140
179
206
192
184
217
114
221
227
209
208
196
189
196
145
202
228
169
222
155
169
243
193
217
224
189
217
175
172
179
227
182
224
202
200
214
122
251
218
171
184
191
255
241
210
239
159
230
205
210
211
245
197
221
229
205
293
192
200
210
174
165
224
161
157
202
182
210
206
215
164
230
212
217
129
223
173
171
304
177
155
196
178
174
253
219
204
236
174
207
230
238
124
157
179
204
245
206
259
242
190
204
154
122
212
175
213
259
134
248
213
186
227
269
201
175
161
176
220
194
249
172
228
163
203
194
210
220
168
211
183
188
216
225
272
251
232
222
232
145
171
193
190
259
238
180
175
205
196
238
244
205
189
218
149
232
200
250
217
199
196
225
227
234
241
142
208
252
194
195
221
255
177
236
170
217
199
214
142
216
162
184
205
250
219
227
116
219
156
203
154
157
117
198
143
158
220
186
199
208
168
191
133
193
218
222
170
168
237
211
214
166
237
192
208
172
198
212
227
213
203
255
217
176
204
231
181
187
232
258
187
158
165
200
217
221
152
141
198
240
144
149
260
237
223
187
173
222
218
152
234
197
167
198
230
189
201
177
255
260
165
212
184
256
190
216
245
217
204
192
181
242
212
177
171
202
185
194
181
154
221
199
207
220
213
182
188
196
188
180
224
205
183
212
242
253
186
255
184
178
267
240
221
246
193
175
209
150
201
188
195
221
205
154
193
232
178
191
164
109
181
202
156
174
191
148
222
237
218
154
230
205
208
208
215
141
205
235
250
140
204
200
250
244
200
231
204
173
252
253
182
263
168
185
185
159
212
169
249
208
162
200
218
269
146
202
174
196
215
268
209
235
181
257
189
200
171
142
212
202
207
203
248
243
262
158
210
220
175
206
204
139
237
211
242
172
220
202
209
166
223
183
221
196
227
156
208
246
229
203
215
227
201
180
182
184
179
171
207
252
204
211
198
210
171
174
224
215
180
233
248
190
193
185
224
217
296
205
266
218
230
185
211
190
205
177
213
194
181
192
170
199
225
176
177
205
198
176
265
203
174
202
262
157
198
198
166
236
230
213
176
225
241
173
192
221
193
175
181
181
190
237
213
210
146
192
207
201
201
219
216
152
236
214
237
183
210
173
191
231
166
265
181
232
201
200
225
216
175
216
173
232
227
118
201
157
175
228
181
213
157
209
203
242
211
234
231
200
156
203
94
206
215
199
252
155
212
167
236
184
223
202
196
167
210
212
241
196
172
219
206
205
180
237
171
232
192
244
149
179
217
185
167
211
125
193
169
247
238
201
182
216
197
206
212
196
104
228
227
175
205
195
123
191
159
217
276
156
235
189
135
197
157
274
203
152
198
166
213
218
207
166
186
203
164
194
112
171
206
213
229
235
226
236
253
184
172
217
199
170
251
173
232
224
244
195
216
186
181
206
177
214
194
197
181
269
202
225
244
111
159
92
222
203
150
233
218
125
270
210
164
143
208
252
132
240
174
201
247
184
143
229
238
223
217
191
198
256
147
226
198
162
224
191
239
241
139
210
239
214
210
217
197
202
213
159
180
196
264
204
115
198
206
208
213
182
199
226
192
182
222
151
191
202
190
173
181
238
165
144
158
192
163
183
202
200
224
240
171
242
210
236
242
171
207
142
283
258
151
209
197
184
234
124
201
244
239
216
229
188
148
251
201
196
195
211
194
189
202
160
155
269
209
249
238
149
235
213
210
221
163
218
157
198
215
170
209
210
245
201
182
255
257
172
171
228
201
248
205
241
179
233
171
217
214
158
132
188
170
158
193
224
236
224
227
173
173
194
179
177
198
248
245
210
265
174
154
250
224
251
235
218
163
236
190
230
232
184
179
198
171
205
173
217
210
215
199
281
158
165
185
150
168
181
189
167
198
247
250
204
160
247
233
185
198
213
189
208
202
215
184
178
218
223
192
248
234
220
208
172
177
261
158
130
187
180
205
221
209
236
229
206
169
248
216
131
209
200
171
191
182
161
195
220
164
161
230
200
185
135
173
154
211
231
174
162
269
204
182
218
212
253
233
257
242
245
178
210
237
220
221
200
183
211
137
252
253
194
183
158
225
202
227
252
187
177
152
188
238
198
181
241
231
172
260
197
217
223
216
183
194
208
199
189
160
177
214
187
186
131
220
235
210
192
235
169
212
209
260
194
218
215
193
174
235
153
255
184
260
252
261
217
151
244
197
203
131
154
240
186
160
182
229
219
235
118
196
249
156
176
183
146
184
176
213
208
226
221
199
183
272
213
207
228
164
163
233
228
209
196
214
184
153
192
225
202
209
183
234
202
275
179
162
256
174
206
206
209
217
198
186
198
178
162
214
189
223
244
234
188
195
159
222
192
205
247
197
120
237
174
185
168
261
217
183
157
178
214
215
128
257
188
232
174
199
205
278
183
150
193
233
186
189
193
203
196
199
137
165
142
168
178
225
180
185
264
221
174
216
183
228
196
173
229
204
237
203
209
206
218
196
265
209
263
213
237
217
189
227
185
208
201
130
187
132
204
188
229
189
181
200
140
177
176
230
211
157
192
134
216
264
216
144
175
183
221
215
168
231
147
241
204
167
167
208
184
181
194
208
169
198
179
181
205
160
186
215
105
240
212
175
246
124
213
183
179
201
138
243
203
277
204
196
167
184
187
200
254
204
179
183
214
167
214
129
220
178
267
231
194
231
182
200
183
185
118
194
204
187
206
256
216
168
182
211
195
165
226
178
208
202
187
253
200
239
196
152
197
195
205
194
200
189
160
213
187
199
167
216
225
172
198
144
187
239
143
183
163
223
205
231
147
162
207
180
229
199
246
233
226
283
183
199
226
187
258
198
224
204
176
236
218
172
235
202
229
137
191
205
238
223
224
175
188
227
199
222
259
250
129
205
185
166
264
159
189
187
172
193
203
160
169
212
176
237
152
178
159
227
200
264
173
242
242
250
105
147
225
190
204
259
214
227
220
211
228
258
219
207
215
190
165
240
259
185
217
220
185
205
201
198
209
190
199
186
219
185
270
235
197
201
198
128
163
212
193
236
195
241
211
173
161
195
247
179
203
226
218
212
275
236
202
156
190
189
189
207
173
202
188
161
160
229
214
274
191
184
179
213
190
214
102
123
167
198
236
152
276
170
178
186
199
172
220
180
186
157
148
205
220
227
239
218
149
221
158
233
214
151
186
254
201
250
232
206
200
197
175
112
244
228
206
168
254
205
199
160
207
199
137
173
197
199
230
233
215
222
202
128
166
176
233
197
202
223
244
272
211
159
230
205
196
199
170
177
175
161
169
224
239
193
205
198
236
162
167
178
235
244
146
200
149
184
159
275
218
195
162
233
209
206
295
231
249
207
160
208
236
236
230
183
172
215
217
223
191
222
175
193
233
174
145
225
233
235
187
209
238
217
114
226
190
199
186
178
223
242
208
187
249
119
177
185
217
253
238
170
174
147
203
178
187
229
220
224
230
211
195
217
137
199
235
206
206
194
264
197
201
198
201
143
188
193
183
198
229
203
233
187
236
207
261
212
196
206
202
233
194
183
162
268
177
220
198
209
140
227
219
195
186
188
196
236
211
218
149
235
218
155
186
180
176
203
255
183
202
188
154
212
285
168
282
214
148
212
212
201
177
125
151
151
157
166
268
205
261
248
195
264
166
260
198
185
232
217
193
170
199
257
196
213
258
167
170
156
208
138
173
290
217
193
148
193
221
180
185
227
266
243
166
170
204
188
177
264
184
196
162
238
139
206
235
272
206
171
196
269
214
232
204
197
221
212
201
184
192
251
222
227
219
134
163
200
161
189
204
178
202
130
211
166
192
239
174
215
198
168
220
222
218
278
238
176
228
169
157
234
285
164
177
265
166
154
184
187
223
192
206
156
218
131
194
289
165
205
207
242
228
216
206
215
229
214
199
254
236
235
241
232
168
144
227
135
179
155
148
193
220
180
262
231
151
219
197
220
180
185
164
109
188
216
239
137
188
260
236
182
145
247
202
158
191
192
184
217
187
199
176
219
221
168
210
141
175
187
207
228
206
177
196
228
139
217
186
148
194
178
193
161
180
191
195
183
172
216
159
167
179
251
248
161
182
184
151
212
188
186
190
209
242
130
180
184
162
163
197
190
196
234
192
193
263
194
215
236
190
208
153
226
244
161
165
159
182
201
199
154
144
225
262
234
150
183
226
183
90
140
225
179
188
242
239
178
174
248
176
228
191
197
217
171
214
172
186
205
135
203
231
220
262
205
201
164
245
240
233
204
177
155
182
216
198
226
150
192
161
207
229
238
182
168
219
212
215
201
259
195
189
224
140
219
211
237
201
168
165
228
203
181
205
204
159
195
200
185
188
199
213
210
210
242
147
222
210
185
170
221
209
251
226
218
225
196
190
198
228
260
261
254
189
187
221
216
201
252
212
138
203
174
210
198
195
215
205
179
183
191
236
134
168
229
191
207
232
157
196
214
204
144
191
231
202
165
240
193
226
216
187
224
181
233
221
220
241
211
227
147
198
191
236
220
170
190
194
192
248
237
173
241
187
190
187
269
161
240
138
226
211
249
187
213
207
194
222
242
145
168
230
251
177
202
249
218
170
205
221
196
208
198
192
207
136
234
208
211
234
155
204
167
211
237
225
245
192
199
171
180
146
201
233
107
152
199
191
136
139
190
206
222
239
176
219
193
178
272
244
223
147
207
167
128
224
219
214
219
156
176
235
141
168
221
165
180
229
153
179
129
144
191
183
216
204
210
185
187
224
212
201
232
187
246
238
178
238
234
221
196
196
181
183
172
237
210
256
228
208
232
188
220
162
220
183
163
210
236
211
233
221
179
170
218
189
138
199
154
182
200
199
191
187
152
188
202
175
181
212
251
169
229
223
189
221
198
209
214
146
205
207
155
194
194
238
176
203
196
208
208
198
213
168
184
174
235
241
199
192
260
196
233
215
250
210
168
205
207
152
226
178
223
241
200
195
269
246
152
231
222
172
178
237
200
258
210
229
192
209
226
164
241
170
235
203
231
125
165
207
213
198
171
239
224
181
244
194
206
225
224
168
178
236
189
244
229
162
193
234
161
217
192
158
198
248
204
178
242
211
266
179
168
247
207
189
155
230
240
240
192
181
221
220
222
135
185
231
289
207
190
184
173
208
226
247
156
231
226
214
192
179
122
165
176
244
211
185
236
176
199
198
234
138
203
182
218
236
199
158
244
151
221
202
184
229
234
199
192
254
254
149
212
135
239
151
207
162
188
188
163
189
224
208
131
175
157
184
263
176
199
150
195
105
147
190
204
153
215
136
161
238
239
217
230
212
196
223
196
198
220
170
198
190
219
221
189
199
260
252
243
187
266
167
225
213
195
140
189
218
197
184
171
230
176
187
136
177
263
227
167
173
148
182
164
140
259
271
143
218
187
206
227
241
227
162
152
214
209
175
284
219
199
220
220
140
217
169
258
189
150
218
222
120
155
226
233
180
223
236
168
139
218
182
192
206
220
196
156
223
193
166
200
222
189
185
190
263
196
168
197
203
191
129
127
202
222
179
170
257
197
204
227
232
165
172
283
180
194
241
198
200
223
215
207
177
209
203
189
187
203
198
181
194
168
142
203
225
263
154
229
162
216
219
179
174
202
190
216
242
177
175
228
192
230
206
236
129
211
190
206
215
240
184
234
260
212
252
215
169
154
196
229
181
236
214
167
162
190
237
203
165
225
173
259
243
152
196
209
195
211
125
121
190
202
248
194
231
204
253
204
164
236
193
148
190
202
171
169
172
173
260
214
181
216
235
220
140
209
183
178
177
267
231
227
184
172
172
210
186
188
222
185
281
240
247
228
227
191
220
226
172
202
222
235
228
154
229
170
197
228
198
161
217
244
211
193
128
191
147
188
222
196
200
170
213
193
237
191
223
151
295
222
152
273
244
189
168
209
207
171
110
235
208
211
223
151
162
161
248
209
192
131
177
190
189
188
253
261
222
199
134
206
201
210
166
187
140
159
187
274
151
200
209
225
187
136
194
223
211
178
172
167
212
211
123
180
203
156
194
206
170
208
183
254
154
185
214
162
260
249
179
271
217
250
224
161
186
208
243
207
184
256
196
143
221
277
239
227
206
211
170
192
107
207
237
228
158
94
251
159
128
181
231
193
191
230
266
243
210
149
212
193
171
212
205
219
196
207
251
228
241
208
165
209
150
188
255
189
225
249
204
242
204
232
192
173
154
233
260
193
198
204
196
162
225
166
214
231
187
188
191
177
151
165
142
195
247
127
191
135
213
240
204
174
173
157
137
273
194
223
174
258
192
242
153
204
251
205
179
170
126
196
232
178
184
214
209
111
137
198
209
188
216
209
188
211
220
221
176
231
228
157
175
118
207
223
154
209
136
240
192
215
225
157
200
170
207
154
213
187
189
205
153
254
219
150
127
188
172
203
229
196
158
234
237
236
167
216
192
157
155
148
186
270
237
189
190
242
170
211
229
205
199
211
246
237
198
245
205
172
197
164
198
207
211
237
238
241
234
181
164
227
205
189
151
243
151
232
242
164
148
137
185
195
173
231
187
174
169
196
181
179
148
154
208
219
182
263
179
257
233
142
163
242
231
216
218
245
195
206
188
207
158
231
192
220
168
234
221
206
175
186
213
178
251
176
228
234
203
232
173
200
240
216
231
208
181
182
224
235
205
191
176
201
175
240
169
188
192
246
167
215
199
176
221
218
209
216
205
223
175
209
167
223
252
187
158
202
229
202
240
243
174
244
233
155
170
134
223
219
241
185
246
222
222
166
230
270
217
201
173
230
214
158
127
204
185
240
235
205
219
207
177
168
141
173
165
263
198
203
159
143
245
215
198
200
197
216
165
210
200
228
163
250
191
183
242
160
230
159
246
181
152
166
180
144
185
181
198
168
229
237
165
207
193
228
210
160
219
222
205
179
205
202
172
164
158
183
229
185
230
169
178
215
180
155
182
141
178
210
206
216
179
189
161
220
160
200
175
236
155
201
149
212
210
128
269
266
227
152
171
192
179
251
200
177
232
197
255
234
166
213
221
224
197
202
189
193
220
214
218
206
184
152
219
150
161
211
229
150
274
187
202
242
186
200
159
179
221
194
172
236
199
267
218
211
173
195
217
210
179
202
186
175
212
174
243
217
229
264
193
172
175
234
200
229
167
223
230
225
223
231
162
209
152
193
194
258
205
166
228
205
207
150
184
190
185
215
182
163
267
155
188
241
164
220
169
223
210
218
179
239
175
247
219
168
241
206
250
235
213
203
172
277
130
148
252
233
214
189
238
208
207
231
160
204
191
154
167
165
160
185
233
228
216
184
163
190
144
277
195
148
234
200
167
222
210
143
178
212
183
250
220
209
184
169
199
161
258
176
249
227
182
278
157
237
180
236
146
201
150
225
175
157
178
202
189
178
264
171
199
190
182
225
202
136
197
228
197
186
161
182
164
147
160
229
180
159
167
230
257
172
190
124
251
224
162
213
239
202
180
207
190
219
193
166
146
195
154
255
189
196
161
240
245
126
245
224
219
209
170
189
194
225
206
240
235
245
177
166
150
151
228
188
231
203
234
235
164
183
139
199
238
193
245
214
183
175
196
156
219
204
156
168
248
219
221
184
211
217
203
175
88
134
213
230
215
183
200
264
145
194
165
214
145
189
256
173
246
223
132
169
182
189
184
212
203
214
194
104
247
216
181
233
210
167
237
224
181
208
215
156
199
211
153
206
221
207
200
228
183
138
227
214
253
210
202
204
204
211
161
181
220
163
202
151
209
182
203
209
182
136
243
234
201
257
121
218
147
189
254
193
207
194
149
170
253
109
200
202
188
242
250
163
241
231
206
165
143
160
230
211
225
195
162
223
266
225
168
168
239
164
124
165
217
253
182
225
264
185
144
226
145
170
210
166
241
215
157
230
235
208
173
170
203
208
186
167
122
214
213
194
204
158
203
172
187
205
239
199
183
244
164
170
167
154
190
250
185
244
212
237
185
198
215
207
203
194
154
216
140
254
134
245
207
210
175
225
172
134
195
233
259
225
182
218
192
235
130
219
239
221
224
178
198
274
199
210
230
191
275
153
194
228
268
199
218
174
202
153
218
231
267
169
193
199
192
204
177
148
166
221
209
241
228
230
168
181
213
206
254
170
256
188
249
100
237
217
170
168
160
220
213
157
150
144
183
85
198
201
237
209
220
113
208
167
191
272
219
244
201
201
287
220
164
259
147
257
193
216
257
178
199
197
224
174
165
214
237
197
189
233
236
129
137
159
230
201
198
209
201
176
222
228
175
226
164
259
215
188
209
209
150
160
209
184
233
190
260
190
256
205
232
192
209
160
201
149
197
204
174
211
201
200
191
172
193
197
236
192
211
136
173
205
222
235
189
220
170
135
164
223
195
144
174
125
126
261
225
175
121
128
157
193
193
229
203
228
226
214
212
186
239
170
194
202
149
248
194
154
238
216
241
246
206
127
205
274
236
191
168
240
206
244
184
211
140
184
192
241
175
209
231
226
110
201
211
201
203
160
160
235
268
175
238
167
222
252
168
155
204
189
212
200
202
274
212
212
253
201
245
222
183
159
261
227
203
242
203
228
164
225
226
234
169
208
198
208
189
194
140
185
279
262
180
241
199
200
209
231
115
186
158
189
185
196
241
201
197
190
200
232
200
121
98
243
223
209
189
223
157
232
165
214
251
237
217
168
211
241
189
145
176
209
196
214
188
166
154
136
179
234
208
243
228
278
175
226
175
223
202
190
145
210
166
210
151
169
206
186
218
219
166
256
152
227
190
265
216
201
234
233
241
239
180
222
155
141
198
220
220
233
180
304
170
186
168
181
188
205
149
183
231
219
203
196
201
127
202
219
134
281
194
255
214
227
140
175
227
180
153
227
184
217
236
262
207
235
178
206
212
127
240
249
207
138
269
217
189
222
236
162
250
172
236
182
225
153
233
139
151
246
234
203
218
137
203
230
166
139
187
260
210
180
233
207
212
243
142
150
307
194
236
236
216
185
222
182
182
246
169
192
195
232
176
213
178
166
269
233
163
196
227
194
233
119
181
137
227
190
164
199
230
203
209
157
112
238
156
184
141
136
204
164
142
198
230
144
241
184
200
230
233
229
202
188
283
175
233
210
240
216
165
192
190
186
176
194
202
143
204
229
207
258
208
164
221
177
225
182
163
212
195
219
208
154
196
217
206
176
244
245
160
193
228
194
224
147
202
232
194
192
160
164
256
205
182
215
220
207
261
234
204
253
178
168
244
228
229
271
182
223
176
277
229
240
225
204
181
158
186
211
145
159
200
166
236
230
142
194
202
244
211
177
206
229
226
166
198
205
182
168
156
216
203
199
208
172
157
200
195
223
188
194
264
225
154
171
191
184
203
221
209
134
187
267
181
263
184
245
233
214
207
231
213
221
160
221
240
216
169
152
218
203
282
153
186
180
178
237
183
281
202
220
178
248
155
182
209
151
187
237
192
172
194
208
188
207
207
189
213
284
194
160
169
167
216
167
206
187
225
131
195
187
276
205
183
199
248
216
195
196
196
221
173
135
241
148
238
205
255
145
184
190
188
191
210
245
160
185
256
204
198
174
205
193
197
260
225
208
130
216
208
194
192
203
183
176
194
157
273
183
182
201
199
214
205
171
224
212
217
184
182
223
239
192
157
234
263
129
121
210
192
186
262
199
226
189
240
148
172
197
163
152
168
194
233
223
190
132
160
197
242
233
254
249
179
170
157
160
236
235
175
237
138
154
179
227
258
203
135
173
202
211
179
163
138
220
183
196
141
231
224
216
203
189
144
210
203
231
224
211
224
188
196
190
251
245
212
192
229
207
185
239
203
160
229
172
273
208
148
231
189
183
157
204
181
234
197
177
206
209
221
190
166
213
179
176
239
231
218
174
186
224
188
253
193
240
262
250
176
92
259
167
159
210
242
137
196
210
192
212
246
248
219
204
157
214
215
208
176
253
213
176
165
225
221
173
196
194
187
241
187
227
246
182
255
191
195
158
198
144
217
255
245
189
257
225
185
173
177
183
216
204
158
176
168
224
265
189
141
185
181
186
168
211
144
231
175
136
255
211
184
241
223
191
258
259
174
181
114
225
206
123
219
220
154
149
226
213
246
175
201
225
214
229
148
226
259
207
219
162
215
202
174
184
181
188
132
204
243
175
157
208
234
194
217
195
204
192
228
214
195
199
195
192
208
252
221
158
199
226
167
154
140
133
196
212
190
210
115
205
200
278
245
169
199
216
198
189
229
186
153
209
208
164
208
217
241
234
242
179
258
184
155
173
201
171
217
242
234
223
231
159
182
184
195
155
214
185
242
179
236
252
256
227
261
205
157
214
200
150
207
202
209
168
203
216
202
263
250
210
205
149
171
199
144
228
192
239
176
204
202
227
173
190
191
180
132
176
146
241
196
173
156
157
190
224
225
180
184
212
181
201
120
241
151
227
246
208
257
187
192
219
198
211
185
228
159
187
206
197
217
157
249
198
224
251
199
185
157
240
268
209
219
255
205
247
181
192
186
223
185
214
212
258
217
231
180
242
195
159
211
194
227
189
235
252
204
133
164
171
131
227
202
209
203
176
246
239
135
223
217
287
230
224
199
201
116
141
263
223
184
164
201
205
198
216
213
193
171
227
151
173
198
251
216
191
220
155
255
156
227
220
144
232
228
242
214
183
217
151
223
178
272
203
212
150
228
219
174
154
191
197
257
204
234
177
210
207
175
148
162
126
198
170
214
261
169
228
215
198
215
190
183
215
214
200
176
245
147
217
187
195
193
205
245
151
195
199
197
194
198
206
220
228
168
237
237
205
193
188
187
177
168
180
176
180
143
233
237
171
241
178
212
235
173
251
169
205
221
109
244
171
249
227
210
228
218
150
185
183
223
252
162
182
184
278
269
194
201
126
243
170
208
262
275
168
210
157
214
148
169
184
204
189
180
215
205
166
161
167
231
236
229
186
230
178
224
185
170
217
113
221
173
174
209
262
196
235
197
238
165
165
197
182
179
261
154
201
183
168
234
215
202
223
198
203
247
179
262
194
175
239
168
264
185
241
200
172
209
255
225
201
193
203
202
173
218
229
207
206
185
245
233
186
166
211
195
257
230
148
196
171
176
157
189
195
237
188
185
143
176
188
230
188
211
197
184
263
200
245
198
169
209
173
172
134
225
218
234
144
232
196
261
255
179
224
240
272
227
177
190
168
157
159
207
128
247
226
250
176
178
222
162
158
189
198
178
217
172
187
224
228
199
211
167
188
136
256
223
176
211
159
184
225
223
170
174
185
173
175
143
189
174
198
190
200
147
199
151
216
183
176
184
177
130
229
261
136
200
145
223
195
259
199
219
186
238
190
230
190
235
167
174
192
190
166
210
217
227
181
115
157
179
180
287
166
260
191
245
197
209
157
244
201
211
177
211
185
196
245
106
211
200
213
224
155
212
239
179
250
191
242
193
242
206
155
233
237
215
223
220
194
176
179
174
207
228
165
183
224
222
151
229
170
203
195
224
226
212
251
265
218
207
207
219
229
199
218
250
225
225
224
150
179
223
205
195
242
171
168
203
274
258
219
231
137
192
240
173
199
158
215
195
168
226
249
184
236
196
199
198
168
247
242
189
167
135
201
153
184
201
180
245
229
200
202
182
170
169
206
211
252
165
172
204
191
184
202
193
189
161
187
228
220
146
165
208
249
235
214
164
249
172
130
214
235
162
236
172
214
183
209
137
234
241
208
279
216
191
217
201
225
231
239
259
182
232
194
230
179
161
187
238
237
202
210
222
207
213
192
191
196
196
173
165
183
224
209
194
212
176
190
214
207
215
192
200
195
230
154
197
189
232
143
189
221
166
180
241
186
183
241
198
105
175
252
171
185
188
266
146
219
187
219
241
179
137
213
176
170
202
198
146
274
221
203
211
234
187
206
150
156
156
215
218
193
248
221
152
213
230
200
150
229
170
222
224
194
268
175
239
201
165
158
185
235
94
156
124
165
194
156
183
138
192
153
233
250
145
190
169
157
263
230
199
164
175
208
173
221
222
176
226
162
170
232
201
200
198
197
178
155
243
191
206
228
179
237
203
235
233
212
194
231
157
241
133
192
218
236
243
244
133
202
209
214
223
193
217
193
261
173
180
213
234
229
208
245
145
235
212
169
207
163
202
222
190
229
105
172
222
149
170
222
227
225
228
220
176
204
197
213
191
145
146
199
233
195
215
205
208
201
253
176
196
185
231
163
203
222
219
254
174
186
157
211
181
186
204
211
206
218
207
181
249
185
135
178
227
228
189
182
250
132
200
243
270
196
169
202
166
174
194
191
141
178
159
217
152
182
225
144
195
221
183
125
183
222
260
212
226
216
252
181
118
226
185
147
220
212
242
204
206
195
169
244
236
148
230
232
193
179
239
244
201
215
153
167
223
216
243
194
201
182
214
209
164
144
233
179
250
222
275
198
233
158
214
226
241
266
208
222
197
176
231
197
131
140
184
221
185
188
200
197
201
254
219
195
220
272
226
208
174
224
257
239
141
199
198
217
190
128
199
169
151
232
188
171
177
259
214
181
163
153
156
207
253
138
216
208
180
232
203
213
166
211
225
220
204
293
224
224
211
193
187
186
237
207
168
221
223
287
172
209
276
233
128
189
217
195
160
180
177
179
159
154
227
177
169
213
214
282
202
184
241
203
224
191
202
258
165
167
127
187
185
181
219
216
214
181
241
195
130
160
157
188
232
175
144
186
195
207
248
214
174
205
133
215
169
182
201
233
195
229
204
138
225
221
263
236
195
135
248
208
224
174
219
130
202
186
223
146
190
179
185
260
223
184
186
232
139
226
186
190
245
125
221
168
192
205
236
247
209
184
230
184
225
214
219
194
259
157
230
213
226
250
148
175
258
238
269
167
217
221
196
172
201
210
194
166
244
215
150
97
205
246
228
205
271
180
203
209
178
230
219
191
164
188
152
206
190
179
200
217
226
256
201
168
244
225
213
209
202
234
181
187
171
182
204
218
181
180
210
210
175
179
224
255
144
204
179
127
249
172
185
133
217
115
131
177
158
200
152
218
210
244
248
200
208
182
199
173
191
219
164
131
189
138
214
124
159
245
217
218
135
212
229
143
181
162
219
154
196
254
153
196
258
141
225
192
228
144
253
240
169
210
223
237
261
143
229
207
139
135
148
178
219
208
250
234
173
155
243
196
223
198
233
197
233
186
114
170
187
171
188
160
226
172
189
180
124
201
213
224
182
212
189
218
216
185
189
210
264
216
233
223
244
222
147
208
221
174
222
212
171
207
174
209
195
209
170
196
140
261
144
251
175
188
248
190
230
201
184
178
247
177
147
208
166
238
192
207
211
168
131
198
144
207
232
189
132
233
219
161
194
162
181
144
186
225
197
185
181
189
161
211
196
139
188
183
215
202
170
179
218
152
187
196
216
159
268
153
184
233
227
211
224
215
237
240
205
257
191
232
239
154
233
177
165
232
167
211
220
193
226
234
162
163
243
212
212
196
197
266
183
158
241
216
201
135
237
208
214
189
176
214
220
198
160
183
215
165
149
185
243
225
138
226
216
222
218
241
167
153
169
224
158
150
225
193
173
165
188
233
222
257
234
163
180
162
225
233
222
232
243
146
180
189
169
152
197
195
199
235
199
203
208
193
160
249
181
170
206
214
246
175
202
193
219
178
219
163
180
234
215
152
196
268
204
233
136
198
222
253
158
179
260
108
165
224
145
166
181
153
210
173
211
150
184
202
222
230
212
165
186
127
186
219
200
249
188
208
213
227
224
228
199
241
215
208
176
223
223
222
201
187
181
143
208
186
242
201
152
255
220
213
173
230
235
255
224
166
222
264
212
208
235
177
243
231
204
250
214
215
214
233
244
178
190
164
222
272
235
170
159
266
162
148
115
166
205
265
177
199
198
198
230
181
197
199
189
178
197
261
235
200
185
183
221
198
211
174
184
208
198
176
246
213
157
260
138
207
246
220
141
175
240
146
207
218
218
216
215
209
165
162
201
199
137
167
133
213
170
154
205
214
214
238
217
177
252
227
236
196
171
186
197
186
168
209
173
217
150
197
216
162
151
205
167
138
184
240
244
259
216
230
208
207
248
175
166
187
161
270
262
240
184
192
213
192
208
223
199
209
222
170
253
217
93
207
170
170
238
175
242
219
160
156
182
200
214
222
193
185
228
148
139
187
216
191
216
193
139
239
181
195
192
197
161
173
138
222
173
197
178
247
210
123
249
203
256
185
305
183
126
179
195
224
232
214
205
166
229
218
167
191
271
194
210
211
252
208
210
217
166
124
214
161
167
203
169
266
266
197
209
183
154
126
136
216
156
175
204
188
205
196
238
189
213
207
239
205
217
203
224
237
265
221
207
179
201
186
213
198
242
230
176
221
175
198
227
225
203
213
225
187
266
192
228
238
175
150
297
178
204
196
142
160
222
245
178
205
215
203
194
147
213
258
168
191
128
180
223
185
165
261
201
241
279
152
250
143
182
237
238
202
243
227
210
223
220
183
132
283
159
217
198
179
222
210
234
190
268
163
159
128
203
186
223
200
215
157
203
238
169
254
187
234
233
205
284
178
208
223
231
185
173
148
200
179
213
173
211
271
202
153
160
201
193
205
208
231
143
220
190
200
175
232
207
166
220
286
230
212
166
207
195
235
247
188
253
215
212
178
227
215
205
206
208
256
128
224
207
179
224
220
173
287
227
195
160
214
195
206
190
178
239
214
231
170
184
184
202
199
147
154
254
180
138
240
197
188
202
197
116
179
222
254
154
227
218
147
282
209
253
220
185
200
192
146
214
264
138
197
205
257
135
225
196
171
185
281
183
244
186
226
231
203
204
138
218
205
216
176
264
225
160
229
167
179
200
178
205
233
231
186
185
177
189
244
158
207
156
241
227
216
184
207
278
240
255
225
194
149
156
206
204
153
160
182
196
183
188
248
198
214
157
170
200
203
194
175
175
143
222
188
211
179
217
97
193
203
194
135
115
191
237
233
207
227
208
166
257
153
240
206
166
216
142
206
222
164
219
181
254
159
198
169
221
192
258
187
168
263
196
198
248
195
281
146
205
216
255
167
187
215
219
189
170
135
175
172
271
237
191
215
220
185
208
220
176
191
242
247
190
166
208
174
200
236
242
135
236
160
168
205
148
181
176
219
226
128
199
226
178
223
169
193
170
202
174
188
236
163
175
216
195
262
171
197
176
245
130
184
261
240
234
229
109
187
274
208
225
202
216
224
244
234
147
119
193
190
271
230
190
190
210
191
175
200
171
237
141
188
155
251
177
266
225
233
188
207
191
242
191
212
243
180
232
164
203
178
175
109
247
226
272
161
198
208
226
155
213
180
203
222
202
180
194
231
196
213
262
235
204
186
251
235
179
239
195
205
165
237
249
214
203
187
178
220
178
179
233
191
125
164
169
237
209
236
232
204
183
175
218
242
158
235
205
166
177
167
239
149
148
193
269
253
181
201
203
132
187
119
214
226
168
202
173
240
239
212
262
206
170
229
211
160
145
224
217
201
191
198
186
187
221
205
111
231
167
169
177
224
199
242
169
226
205
188
145
202
184
183
195
195
247
238
213
268
191
192
232
199
180
200
132
172
252
103
216
209
242
145
190
289
176
187
163
240
182
213
161
177
180
218
223
257
252
201
240
219
225
197
222
225
183
176
145
152
219
197
208
236
210
205
173
238
223
179
266
217
162
258
198
190
184
187
220
195
202
229
199
234
222
209
200
141
202
215
256
198
232
240
168
164
191
190
246
187
104
171
192
202
197
175
173
225
176
162
251
229
182
188
193
225
186
233
194
176
230
237
181
181
246
199
196
240
166
196
202
188
191
199
213
148
133
187
208
200
187
181
193
231
232
227
172
203
181
195
148
191
229
173
182
177
158
238
220
229
253
227
191
165
210
219
188
240
221
156
209
202
175
270
177
207
230
153
213
159
172
196
119
214
150
141
244
218
219
211
242
245
201
173
211
198
138
237
197
239
163
153
176
244
245
235
218
206
177
228
213
232
219
162
206
151
206
104
217
127
180
204
186
166
172
221
235
242
202
193
135
230
224
229
192
242
229
191
227
247
170
129
202
177
282
196
194
183
225
236
188
166
214
178
214
164
219
181
201
222
225
210
260
241
205
189
249
134
197
210
204
239
230
206
245
190
171
167
115
270
203
212
202
277
200
218
218
153
142
212
163
225
203
220
196
201
193
243
180
207
234
156
190
214
161
213
170
208
128
222
203
193
265
154
198
256
214
155
190
189
194
127
209
271
205
218
173
180
203
285
199
173
151
224
132
211
198
172
202
184
282
188
155
151
213
157
264
185
218
206
230
168
217
209
147
196
204
203
220
230
156
237
137
203
150
222
228
187
203
179
155
229
169
158
128
183
142
221
231
206
134
221
225
177
143
231
206
255
213
259
188
203
178
192
189
287
215
220
168
164
173
235
209
222
206
197
178
228
250
182
245
204
247
179
200
228
164
206
237
202
219
195
221
247
170
143
151
118
208
191
171
188
195
200
199
181
214
199
228
162
207
191
229
161
191
194
220
239
216
186
249
175
182
182
208
262
213
184
198
195
169
240
163
164
223
198
232
155
272
201
175
226
182
169
151
259
245
165
248
137
216
145
241
218
230
155
201
252
188
192
196
250
236
199
192
223
173
222
251
230
184
203
227
194
205
261
265
187
177
200
247
191
255
180
219
224
217
204
232
181
183
260
134
225
269
201
221
154
197
220
226
177
145
154
192
221
231
198
201
196
185
170
158
224
246
197
188
245
225
212
204
210
216
128
205
213
192
214
141
146
233
220
162
152
221
206
186
214
184
231
198
177
198
176
252
198
221
201
195
194
130
242
205
213
229
197
247
248
164
246
96
165
232
185
212
129
231
204
112
225
233
204
196
174
160
277
217
183
223
250
196
288
183
189
158
161
168
228
146
192
269
178
225
249
211
208
218
182
233
230
174
173
230
206
117
233
208
294
204
230
196
169
169
253
213
160
211
269
220
211
202
156
183
282
200
198
220
198
167
219
221
180
184
205
204
181
233
187
224
200
205
196
137
229
217
186
147
175
215
219
224
167
221
170
242
178
209
222
215
190
210
261
226
157
204
249
261
257
208
145
188
207
115
166
222
270
203
195
131
129
201
201
147
176
214
205
242
171
235
265
184
192
230
191
207
231
229
211
162
241
217
203
130
152
274
235
210
177
241
205
175
131
232
194
201
205
175
223
228
153
229
186
151
220
224
173
134
179
219
214
242
190
124
241
225
234
224
262
228
151
228
246
231
149
160
219
216
235
206
203
185
222
189
246
178
218
214
198
193
166
218
177
223
184
167
125
184
209
207
226
184
229
167
202
179
148
238
223
141
258
252
176
192
241
187
253
185
184
174
185
216
204
160
199
186
178
176
198
231
201
185
185
175
238
204
212
218
256
224
238
187
217
263
216
216
231
234
212
223
202
254
216
232
214
209
180
206
128
199
221
205
199
230
193
188
154
192
153
215
193
144
248
167
182
153
239
145
169
217
207
158
204
223
142
188
178
203
165
223
157
173
216
139
206
194
193
179
191
200
158
193
208
166
176
192
149
191
201
131
188
228
253
236
199
153
158
200
203
174
142
146
183
175
193
196
179
206
191
229
209
213
190
241
224
246
212
271
198
189
193
205
137
111
166
228
231
252
202
239
195
256
237
105
190
196
203
237
223
226
221
218
155
206
273
182
180
217
225
203
225
216
200
190
138
181
187
236
176
112
217
221
187
169
236
149
170
210
204
223
185
227
165
169
258
214
234
190
235
194
216
148
209
225
224
179
200
208
108
214
214
188
249
192
193
186
200
239
276
145
234
217
259
188
171
140
218
207
200
257
150
241
146
216
162
213
195
214
177
233
210
185
233
152
190
233
238
199
252
258
201
157
186
192
168
175
226
212
276
221
209
142
188
189
245
195
193
242
219
241
220
191
262
144
228
217
242
237
211
211
169
213
145
173
226
181
194
256
233
199
206
252
213
193
156
257
151
240
201
160
176
149
179
170
157
204
163
185
134
191
161
204
226
274
144
204
198
243
221
183
177
187
149
177
181
225
150
237
166
152
181
251
149
201
193
239
228
194
167
155
235
270
160
242
208
148
183
199
281
183
204
202
123
162
224
163
232
238
159
210
196
205
221
191
208
237
213
216
204
167
176
184
181
199
197
175
213
194
218
229
221
187
212
230
202
221
240
178
228
208
191
169
235
171
211
215
199
195
210
253
200
211
254
227
214
216
193
177
208
180
207
222
172
126
281
179
179
203
218
165
138
230
185
175
250
213
139
206
216
218
223
212
198
202
239
170
245
116
176
221
226
241
202
200
151
132
254
198
165
214
143
177
199
223
163
180
125
202
211
200
241
270
178
185
226
202
157
227
212
200
297
143
207
200
223
186
181
178
256
157
209
154
177
223
187
206
206
211
227
178
135
224
242
227
226
203
140
190
176
196
174
251
133
222
190
138
183
190
109
181
203
198
277
211
209
155
208
233
139
206
172
237
169
267
164
212
232
203
257
234
180
220
189
238
122
267
193
222
258
182
230
166
216
224
222
140
255
198
243
228
215
196
229
172
205
186
196
208
231
176
168
151
203
203
237
198
174
165
200
186
187
154
146
223
124
159
218
170
197
231
215
204
186
222
160
234
195
258
208
190
210
208
212
132
244
167
261
164
194
195
214
196
149
236
172
175
248
145
151
205
184
157
199
302
185
132
209
243
269
279
200
220
216
200
203
201
190
151
150
192
140
154
194
230
192
122
219
151
183
170
174
224
217
197
239
235
190
239
231
245
223
213
216
223
198
206
172
215
206
252
186
252
182
176
178
199
118
170
200
179
203
206
232
222
205
246
191
165
185
221
244
147
207
188
213
218
257
216
192
222
189
181
151
224
152
109
134
146
209
204
119
117
231
183
173
203
206
232
208
186
197
180
204
223
222
202
253
218
155
252
165
225
171
232
176
250
225
258
157
274
160
195
200
180
219
172
199
180
217
188
224
250
225
205
295
180
213
179
206
198
195
234
222
204
213
164
164
229
232
193
182
212
250
232
179
141
154
133
263
216
237
143
167
223
204
184
172
152
218
144
162
193
189
182
192
220
175
137
222
131
132
155
278
244
221
259
243
215
231
164
190
239
232
214
199
229
142
171
194
182
110
190
205
221
186
164
191
235
173
214
220
154
211
158
143
200
211
196
234
228
228
264
210
214
231
194
220
217
196
158
155
234
144
170
166
260
222
182
191
181
188
216
144
232
209
164
267
145
201
238
186
233
188
250
150
182
200
148
174
267
220
162
194
228
190
208
162
231
217
238
146
266
155
215
252
278
189
277
236
171
195
222
282
190
197
250
156
202
165
247
230
240
197
240
219
211
202
206
231
199
203
224
155
181
216
228
147
113
174
172
213
206
232
191
158
143
254
210
128
189
192
251
180
181
210
210
178
200
168
233
242
242
188
128
207
227
174
225
204
219
212
208
170
210
208
151
186
238
256
209
216
206
206
187
167
226
200
185
197
208
117
216
209
235
185
212
209
164
240
181
207
211
217
251
203
213
229
185
163
148
232
213
257
195
159
159
194
197
200
219
244
118
156
252
146
211
141
193
178
141
139
207
226
178
190
214
167
197
152
143
230
203
204
210
242
246
238
231
225
184
180
143
226
136
96
205
212
245
248
225
210
262
149
218
208
250
211
160
126
180
221
260
205
222
189
202
265
274
252
143
185
223
197
154
236
217
196
109
241
213
216
184
219
205
191
175
256
213
194
215
265
159
245
241
238
253
168
208
168
163
186
124
207
126
134
220
173
249
169
180
200
197
245
232
198
171
241
248
244
181
207
222
131
179
198
173
119
176
170
215
158
193
245
206
196
213
209
173
194
206
249
180
190
205
264
258
229
122
202
174
225
196
249
201
189
161
243
214
189
199
219
192
236
200
186
224
195
201
179
204
162
199
216
260
232
192
212
168
213
183
218
197
197
182
216
165
224
223
255
251
225
179
166
243
260
288
233
249
202
218
243
211
222
159
249
243
180
204
206
235
235
238
155
189
149
214
180
232
205
157
182
229
232
241
213
200
195
140
197
190
144
227
232
158
187
157
127
266
171
211
246
260
256
246
188
193
119
197
154
187
165
175
181
201
146
194
227
200
214
212
226
163
174
222
217
238
157
200
182
277
286
166
232
203
243
229
142
138
206
153
188
197
233
165
173
241
147
185
202
194
221
119
179
209
195
259
227
227
178
200
188
180
206
202
166
221
118
242
218
169
160
207
131
206
161
217
153
244
219
216
198
215
197
177
217
245
184
232
250
196
179
194
199
267
211
196
207
207
150
232
205
226
239
193
216
211
185
215
219
154
160
257
196
182
212
233
171
197
197
218
227
196
187
222
205
238
205
206
226
235
231
200
198
252
227
170
188
147
229
209
219
194
199
176
179
184
199
160
198
233
207
207
206
217
199
229
199
153
244
177
194
238
203
186
214
172
210
225
205
166
191
227
153
197
210
158
214
206
222
195
219
228
261
246
197
210
155
151
191
105
216
232
234
234
192
175
213
240
207
232
241
198
155
206
149
258
218
245
174
184
203
224
230
189
141
176
241
227
195
187
213
180
177
220
207
222
243
140
253
144
185
215
133
207
162
212
186
258
275
234
190
215
208
153
189
204
170
220
261
200
192
213
179
193
209
147
206
236
203
161
178
209
180
242
226
240
200
148
228
248
189
159
224
142
221
200
229
214
172
171
285
212
151
205
147
211
219
192
210
145
206
155
163
158
184
255
206
263
266
209
230
178
228
188
236
246
154
259
219
211
172
192
198
185
155
163
195
261
170
216
203
136
235
226
181
260
227
231
206
147
220
251
195
190
168
228
151
184
177
187
161
217
160
195
236
192
195
235
162
225
168
213
182
185
177
221
185
237
212
153
201
241
163
183
155
184
207
204
206
214
186
144
188
169
172
268
199
130
196
169
124
261
147
245
191
142
155
215
179
179
114
220
234
272
241
174
200
260
151
232
161
208
209
147
214
149
199
187
232
211
195
252
211
196
205
164
178
217
191
245
207
223
211
122
217
182
222
157
241
226
138
257
194
133
161
196
229
196
178
227
147
208
143
181
168
132
256
202
221
259
260
240
219
227
247
197
134
211
223
192
193
212
210
233
198
243
166
165
250
127
272
152
231
128
275
212
196
229
203
153
184
184
265
229
191
254
172
146
185
133
222
194
181
170
188
207
214
190
191
210
206
190
199
201
215
155
208
196
140
248
195
107
138
209
203
211
200
222
193
257
220
222
131
165
175
252
171
208
162
201
227
216
211
233
189
245
145
207
208
154
164
210
249
236
192
206
171
143
112
187
193
155
226
198
191
237
252
209
206
206
255
195
228
129
187
163
216
185
188
212
204
143
188
188
228
169
149
238
189
224
196
200
164
196
183
205
157
146
210
236
120
170
165
224
235
189
236
188
246
208
184
259
188
161
157
244
216
177
201
180
213
219
198
248
164
168
189
194
174
180
218
260
155
200
183
199
191
199
210
224
183
210
222
227
235
183
237
213
195
207
160
213
189
250
218
190
199
252
221
214
185
199
193
190
148
252
229
143
191
191
265
198
222
198
222
199
212
217
152
187
243
236
199
188
212
221
247
219
160
212
215
202
187
185
273
175
225
218
237
219
239
180
155
146
191
242
195
205
215
227
211
211
206
215
173
250
216
223
159
179
179
192
148
179
227
176
277
129
125
215
223
168
224
207
168
199
192
179
203
144
247
219
174
228
160
178
194
220
242
190
159
232
176
243
258
205
191
197
187
199
224
225
188
205
256
191
196
181
191
211
165
238
240
203
127
212
150
233
189
115
168
193
204
213
146
127
225
208
124
129
216
178
181
228
187
198
207
179
209
206
149
233
195
201
189
177
263
247
175
170
256
259
224
237
189
169
237
184
148
229
208
218
146
240
157
193
194
193
117
239
185
249
184
175
244
179
161
195
146
193
226
241
177
194
144
158
185
204
192
131
224
179
195
174
173
162
223
153
190
192
231
208
203
169
172
238
101
218
144
202
204
241
205
187
181
190
168
239
212
179
207
154
195
169
175
188
244
224
191
228
196
191
201
262
174
236
167
168
152
196
204
180
232
220
192
190
221
230
207
224
221
174
231
224
210
180
174
228
210
221
211
186
169
179
193
187
211
205
244
189
204
214
169
176
202
209
159
209
240
134
150
158
150
213
189
242
250
195
128
221
179
208
174
237
209
155
223
205
194
218
190
213
211
137
158
242
188
212
222
225
241
197
201
160
229
202
204
231
121
225
166
170
193
188
196
203
173
230
239
203
221
244
182
264
197
177
254
178
188
208
177
232
187
164
184
237
187
240
212
208
213
271
234
191
181
159
193
153
222
201
184
186
191
257
171
148
204
206
223
198
220
223
211
235
148
256
186
226
210
199
154
226
169
214
239
173
148
190
206
201
248
189
224
223
173
239
279
161
208
173
144
141
189
165
209
153
204
168
163
180
197
164
189
195
215
182
185
235
253
160
235
241
229
217
204
250
156
176
246
214
246
135
214
198
223
196
263
249
184
217
193
231
89
165
186
212
231
189
211
199
215
198
247
210
162
192
223
171
186
202
183
221
188
209
255
233
168
209
196
231
235
179
223
164
163
190
175
201
253
216
233
188
227
237
177
200
159
150
206
228
209
163
203
189
206
178
182
234
211
236
206
209
219
185
179
232
164
177
202
238
210
230
246
217
171
205
188
238
178
215
158
191
218
174
220
223
230
194
195
138
171
194
214
233
221
240
244
241
176
187
172
193
252
203
208
189
171
191
212
229
171
205
222
118
158
176
243
215
258
196
203
236
239
194
233
221
172
227
258
233
177
196
183
228
209
215
224
262
167
228
203
206
239
170
192
201
164
224
148
210
222
212
232
217
123
196
157
243
173
201
198
147
139
153
136
232
235
202
207
158
151
185
262
223
227
195
243
154
142
221
171
234
227
174
245
185
235
228
148
208
170
195
211
265
179
278
195
207
218
267
207
217
188
201
148
224
153
197
204
192
138
166
206
270
155
153
191
185
258
243
199
237
178
171
235
234
134
225
152
211
236
192
215
235
256
160
204
171
254
177
182
192
183
231
237
253
227
125
191
161
180
202
153
175
175
194
145
262
189
210
192
207
214
185
201
244
223
214
178
157
210
231
220
189
188
265
211
228
196
216
232
184
192
182
214
222
195
214
145
166
209
191
142
150
181
197
232
196
187
183
206
262
126
257
223
160
198
263
222
218
192
216
230
197
220
232
138
154
164
244
201
203
226
194
145
235
197
222
156
191
172
183
205
283
242
192
165
223
219
245
236
156
206
140
163
158
175
163
176
221
168
209
250
278
215
167
240
157
170
208
259
187
190
222
223
181
222
257
129
161
195
218
186
138
217
190
133
170
147
129
181
124
220
174
177
180
227
160
194
195
203
147
207
219
208
257
180
226
186
174
175
167
173
233
233
183
223
217
248
165
226
205
165
233
215
174
190
229
235
181
211
173
183
177
253
220
195
167
151
196
167
178
162
158
90
177
184
255
212
231
216
179
240
207
244
227
207
226
266
193
179
194
262
126
135
201
185
188
174
153
224
202
126
111
198
253
219
175
207
227
210
237
158
173
224
163
219
194
262
243
233
186
166
122
202
213
160
211
225
174
254
205
133
200
181
178
209
169
218
174
209
258
226
126
219
205
258
185
209
203
146
255
192
221
174
175
236
186
223
175
252
187
221
153
216
186
230
228
153
157
165
255
198
214
211
181
181
230
128
249
241
244
219
239
244
199
218
188
148
187
191
185
132
208
198
234
181
209
219
234
186
151
135
264
235
233
225
180
190
155
245
197
188
211
195
201
136
224
209
213
177
213
209
186
214
218
238
117
176
213
174
211
180
203
222
200
203
273
196
272
179
210
177
186
122
225
209
217
186
165
226
163
162
165
114
226
162
169
246
266
201
95
150
228
208
205
211
137
230
184
224
170
214
183
192
156
185
258
248
162
258
191
265
206
188
194
265
228
266
226
136
214
173
275
152
158
144
198
235
218
229
229
205
131
186
202
190
262
222
185
168
217
261
166
137
148
272
169
191
215
232
194
213
164
216
188
227
225
218
204
185
213
200
193
185
185
214
211
222
197
200
183
180
222
196
199
194
274
199
191
216
223
224
233
183
180
169
167
201
172
179
221
204
272
194
218
193
109
183
218
209
229
174
258
152
178
139
144
211
225
258
219
189
197
232
236
197
198
195
248
196
165
239
184
227
191
202
154
142
226
159
194
185
193
159
222
221
181
232
248
248
199
269
190
198
235
230
268
269
183
162
164
225
208
192
191
211
155
172
199
171
234
153
205
220
167
170
159
215
160
199
232
157
177
214
167
184
249
148
221
175
195
147
212
213
210
257
197
242
204
243
213
194
197
213
197
188
193
270
183
188
231
180
200
208
206
234
227
225
167
227
182
166
158
217
209
257
182
195
217
171
240
178
179
201
208
199
229
180
262
218
171
163
179
199
191
178
184
161
184
207
226
223
233
186
208
236
188
196
201
236
216
161
214
153
199
213
160
199
180
250
173
239
206
200
166
235
148
205
164
248
200
171
242
177
212
195
188
181
214
255
171
247
268
197
174
141
169
198
223
231
242
265
177
224
239
183
187
176
160
211
159
194
203
175
186
215
202
207
218
261
185
221
247
163
233
173
187
152
234
188
186
165
229
220
214
200
186
201
186
215
162
218
230
243
256
143
186
213
219
177
223
259
196
190
199
250
229
233
192
227
253
155
177
219
222
204
240
138
155
146
191
220
207
173
221
248
192
157
173
169
228
194
240
235
199
177
200
230
219
244
244
208
182
216
247
252
226
213
180
193
208
226
166
184
144
159
104
181
227
182
149
199
240
200
194
170
143
202
215
182
267
226
195
197
235
203
150
238
216
267
229
171
256
160
156
250
258
195
211
253
300
240
143
237
209
253
224
224
187
159
218
171
161
159
148
206
225
178
200
229
192
204
206
172
185
182
214
222
207
111
201
163
236
186
215
176
168
181
212
208
217
186
201
206
219
278
198
145
145
223
196
243
142
179
224
172
190
153
142
237
188
163
270
197
232
178
169
199
211
219
105
203
144
169
224
241
233
213
208
188
173
125
120
217
186
198
127
233
156
237
246
235
216
203
196
292
201
193
178
150
218
230
240
181
212
235
180
160
231
192
178
208
163
266
185
218
186
146
232
195
186
193
204
187
175
227
227
159
142
210
180
124
135
217
224
174
204
180
242
210
199
190
221
212
197
206
233
283
221
182
162
246
218
191
209
175
171
239
163
208
178
223
224
135
251
186
182
197
217
167
159
231
121
255
182
198
214
214
235
189
140
250
211
196
219
232
238
176
245
179
203
267
140
230
189
186
189
205
223
232
197
247
171
239
214
242
212
215
220
259
158
136
247
213
162
222
231
271
126
230
195
247
254
204
183
211
183
145
193
227
146
187
154
209
237
265
240
200
197
193
151
174
164
166
222
170
212
235
181
209
203
183
159
230
210
178
214
259
196
193
167
196
193
173
212
228
188
183
241
195
200
240
199
246
211
191
242
179
210
203
216
246
217
167
180
203
232
197
212
168
192
168
226
218
177
185
121
173
188
184
273
198
182
196
174
213
168
221
176
237
219
143
117
226
238
270
208
202
185
207
162
162
156
212
117
294
136
223
174
187
192
184
177
250
215
192
211
168
197
167
215
263
227
190
160
219
271
198
145
208
211
174
185
253
195
259
209
137
194
193
186
191
193
258
177
227
136
178
157
158
207
153
218
158
189
216
146
116
221
195
193
257
219
181
249
216
232
183
229
194
212
146
185
200
154
209
154
155
204
220
191
219
200
177
218
220
158
227
170
189
251
259
179
223
249
155
222
159
203
141
152
204
227
239
181
204
213
200
177
182
166
179
189
179
225
154
220
206
233
168
233
219
210
228
209
190
180
189
191
186
274
224
243
147
164
173
134
221
222
207
228
209
217
182
247
146
139
175
191
230
214
182
206
197
265
192
200
165
229
164
214
203
223
113
223
170
168
203
199
202
226
188
184
161
226
139
161
260
241
186
141
190
222
188
209
262
245
217
177
207
223
181
203
221
232
195
223
231
211
203
192
210
204
205
266
229
173
179
183
244
172
181
188
163
237
159
218
223
156
208
162
214
173
138
183
228
146
170
242
191
228
205
243
223
199
184
189
183
232
179
206
185
183
192
200
222
216
195
189
215
223
200
218
266
230
208
106
161
204
223
151
233
216
219
233
193
143
242
175
179
201
180
205
202
284
227
166
247
164
204
190
178
164
165
212
206
195
221
189
224
241
202
225
252
207
236
251
130
242
183
174
226
255
201
218
214
238
189
195
192
256
207
179
201
180
211
175
203
204
192
193
172
178
191
213
177
218
222
176
149
148
242
107
172
217
198
239
195
223
268
238
168
194
195
211
145
234
163
210
214
151
226
263
256
238
233
201
181
272
187
219
212
216
234
203
237
225
221
158
194
148
213
217
206
212
142
224
194
181
155
142
221
231
178
242
163
179
188
180
175
153
173
158
178
208
211
192
198
164
188
249
169
227
257
207
155
238
199
245
176
188
172
151
190
227
196
181
235
186
208
125
218
183
218
211
166
204
138
162
184
208
182
166
181
235
183
209
193
244
174
238
192
219
263
212
213
148
210
243
197
199
237
234
186
201
165
172
196
209
136
202
226
139
203
250
152
160
185
141
155
206
222
177
188
225
152
207
229
231
197
132
202
122
174
208
178
222
239
207
255
198
216
256
191
243
200
257
204
194
168
233
218
199
208
149
176
174
194
154
144
160
189
204
227
206
186
209
266
164
233
220
190
220
121
200
221
163
189
190
177
208
249
225
214
197
212
254
146
238
184
200
190
185
176
152
241
201
189
179
176
190
211
192
148
234
201
209
230
213
151
210
172
151
194
212
230
215
237
231
207
202
192
158
142
195
290
118
216
198
207
207
209
211
195
202
197
213
206
244
241
201
155
280
226
225
206
228
219
238
137
245
229
266
212
263
222
195
175
202
206
199
155
191
184
223
213
230
234
256
171
224
203
165
182
251
220
195
219
232
225
247
272
221
257
184
248
158
163
196
186
282
170
169
227
199
141
224
179
159
215
186
197
257
232
227
197
259
164
234
270
226
248
218
206
188
211
231
105
274
226
169
235
235
257
198
232
168
158
216
188
212
177
189
200
212
186
217
204
237
235
158
226
154
197
212
183
206
191
207
173
239
215
198
142
172
159
202
222
188
166
257
184
238
269
175
133
181
230
210
185
211
213
192
224
198
237
175
155
141
255
226
192
134
199
230
240
166
184
143
208
171
243
244
209
172
212
258
154
191
176
208
206
244
188
184
232
212
223
200
201
208
168
252
160
222
236
229
156
116
198
182
199
208
190
177
161
192
205
220
192
150
271
241
163
223
199
170
212
201
288
172
179
224
226
213
232
200
205
149
191
183
157
174
174
119
229
166
172
168
237
214
222
219
199
146
213
219
231
210
195
227
209
200
209
227
278
157
198
211
166
182
168
203
211
194
201
225
133
208
164
199
244
224
181
223
148
293
236
184
273
144
164
231
225
138
160
204
257
155
124
197
219
212
233
234
218
239
194
207
180
151
242
227
230
197
213
231
226
200
150
174
192
233
198
228
173
230
222
223
182
193
251
154
157
225
197
249
228
192
239
218
242
191
196
219
183
200
207
209
187
168
148
177
233
189
238
215
232
239
217
188
261
159
236
251
200
199
184
218
217
180
194
209
134
193
279
213
239
189
221
170
192
184
154
252
150
164
241
231
178
206
236
227
239
154
130
203
206
188
184
212
188
269
199
189
230
166
258
284
173
237
264
228
130
183
222
184
142
190
148
177
240
124
134
152
218
201
164
185
170
190
173
237
217
192
153
268
166
246
155
199
247
204
165
198
137
174
208
157
230
151
156
150
238
208
153
181
162
199
217
132
206
241
158
236
228
177
192
210
211
222
161
230
206
182
176
181
172
163
188
231
210
213
219
268
235
226
146
176
174
117
229
208
139
241
218
204
105
223
202
229
163
154
235
192
187
135
148
227
225
161
281
195
186
159
186
217
217
223
143
236
208
207
199
252
162
273
236
214
228
252
198
227
189
206
165
254
211
158
211
199
244
142
223
181
145
253
181
221
277
209
227
196
216
216
234
168
193
216
156
234
192
198
196
232
233
95
208
207
161
195
236
222
200
184
184
222
228
149
188
194
183
210
257
162
218
179
190
225
182
189
194
203
205
227
212
141
184
217
222
125
232
195
235
187
228
185
201
239
232
175
143
211
171
254
258
187
215
274
166
170
210
159
152
204
231
195
168
240
249
225
255
244
207
225
157
229
269
221
136
200
234
176
297
223
233
212
212
221
189
210
228
209
162
217
192
242
205
236
205
184
157
149
206
234
212
168
222
255
192
170
263
190
221
187
220
166
193
205
220
190
243
212
228
235
177
222
221
185
190
213
226
187
216
202
179
206
240
153
222
207
232
219
211
240
215
181
194
169
143
181
161
301
168
250
197
201
160
199
209
216
197
228
224
233
243
236
185
187
164
150
238
199
164
223
216
191
205
158
212
229
254
225
193
235
184
194
189
238
220
222
301
233
227
193
161
236
214
208
189
179
252
237
196
207
236
268
194
151
212
217
169
200
172
203
180
216
214
179
158
235
137
232
202
194
153
272
178
188
196
224
170
185
244
204
212
193
183
173
249
260
205
199
221
195
237
215
221
180
159
216
188
198
266
191
197
221
157
177
156
231
170
244
185
207
168
233
173
197
208
160
157
283
193
225
211
157
177
192
134
152
203
193
226
179
170
213
220
146
198
211
218
166
146
195
194
224
189
174
167
179
215
182
171
160
225
197
208
249
180
220
155
159
197
168
235
207
236
125
177
159
232
248
265
176
258
192
189
268
216
234
199
190
241
171
245
227
146
170
246
194
228
202
274
196
159
178
197
241
228
198
252
190
138
186
177
271
227
236
152
172
245
166
217
211
189
196
224
239
209
199
167
246
234
176
84
199
224
183
192
224
142
223
224
220
169
220
176
169
228
234
205
149
227
173
235
260
131
235
142
225
188
166
184
142
147
180
191
175
229
217
227
199
179
189
159
210
209
204
251
217
189
243
161
182
218
165
163
198
188
186
191
153
210
216
175
222
216
251
202
194
83
179
245
219
207
221
239
246
180
128
170
173
184
214
216
126
114
152
219
231
203
266
139
220
240
240
208
193
122
167
213
180
119
216
231
207
126
160
206
185
242
240
211
165
239
162
182
207
177
250
175
175
227
246
171
161
232
218
167
181
234
234
185
209
151
220
238
172
210
208
205
213
201
237
204
127
189
210
166
230
269
215
240
194
168
198
221
201
243
127
213
221
133
197
219
199
173
158
200
197
172
204
235
246
163
142
223
192
233
198
158
220
227
233
181
175
138
230
182
181
189
152
238
170
214
183
218
149
207
143
184
147
187
203
218
177
225
149
170
236
192
199
233
233
205
143
234
236
197
221
262
226
207
111
149
187
187
278
171
176
250
176
164
233
278
211
202
181
239
220
147
137
165
170
175
179
212
221
190
172
225
239
232
213
201
263
243
220
156
184
156
181
188
229
236
159
164
128
173
228
208
177
130
224
235
170
231
189
132
194
232
167
210
194
299
200
128
176
268
203
222
225
179
186
192
229
138
191
189
234
254
146
183
229
240
209
225
174
203
252
260
147
213
215
201
177
206
191
224
214
150
232
169
151
129
181
185
198
191
185
200
191
223
232
232
196
241
226
213
229
266
170
201
228
214
267
200
209
218
173
203
204
232
217
181
176
176
177
152
236
245
214
136
204
214
261
220
247
178
209
197
213
186
198
159
224
135
264
116
198
211
160
205
242
231
190
226
156
211
232
221
131
247
163
211
269
201
178
203
159
204
230
220
248
220
225
210
221
241
152
184
189
195
147
233
219
243
202
268
206
201
244
185
133
173
200
216
199
206
172
227
196
236
167
162
218
199
221
212
170
205
232
188
220
201
152
229
176
249
146
200
202
227
218
179
185
234
168
149
160
231
233
162
200
162
175
160
235
229
203
222
165
215
250
149
280
222
248
219
242
202
183
253
204
211
202
166
192
196
200
173
258
261
206
193
195
227
220
186
206
181
259
223
181
215
182
166
171
212
207
265
265
207
143
202
204
177
189
252
203
201
148
191
178
207
260
226
209
294
247
221
212
185
213
151
127
230
259
191
215
173
236
253
231
225
193
197
255
195
214
233
254
188
249
223
226
234
217
139
236
209
207
258
181
205
174
219
243
232
250
191
198
224
196
206
232
193
187
217
260
163
202
221
234
234
182
233
165
189
226
183
216
225
232
187
167
224
120
187
137
166
141
223
135
197
160
197
192
223
152
220
220
164
172
194
209
207
173
214
218
218
186
200
164
203
181
202
225
184
196
213
221
235
148
162
167
218
207
222
211
207
178
168
177
243
164
164
187
195
155
195
181
172
262
174
185
193
198
235
186
188
243
208
200
235
171
202
139
183
204
166
185
193
184
190
257
254
179
203
277
187
181
158
168
191
207
148
253
268
213
215
239
198
259
234
225
159
224
196
219
204
177
190
153
212
227
233
198
142
169
193
207
219
179
136
276
207
193
207
191
202
152
211
225
170
185
160
200
224
168
237
258
198
162
154
215
168
239
262
173
204
193
183
193
222
193
208
209
231
254
183
184
224
197
204
235
210
223
252
221
129
247
151
187
234
180
220
240
172
191
163
182
243
213
88
183
242
245
189
265
220
223
178
232
127
228
140
226
209
159
236
234
188
203
274
274
184
215
210
265
205
225
216
191
156
188
167
209
199
190
197
199
160
237
232
225
204
242
168
211
253
138
214
184
171
185
239
253
202
229
131
158
237
218
214
224
265
188
177
178
264
254
161
180
217
209
237
212
167
162
248
172
162
169
218
193
205
212
166
195
275
226
165
195
202
239
162
179
233
214
159
202
146
225
144
188
220
237
181
213
187
251
171
168
178
179
151
226
237
199
173
133
177
203
212
207
222
234
208
204
150
175
210
155
187
188
183
205
176
208
244
197
221
246
214
230
184
201
194
227
231
230
191
229
206
215
205
210
243
224
264
181
191
231
196
228
174
214
168
259
257
186
257
216
210
205
198
248
196
237
150
225
237
157
179
138
198
162
208
238
209
189
233
194
195
167
278
140
247
193
216
261
190
124
205
237
190
194
165
235
245
240
272
253
193
239
221
172
220
181
203
247
234
243
179
198
144
155
203
211
186
236
163
138
208
230
195
204
189
200
180
189
208
203
266
206
211
177
210
218
187
222
239
237
209
239
216
237
141
257
199
287
203
191
155
189
256
251
251
239
188
244
173
199
160
155
222
233
225
202
287
232
209
220
177
118
242
221
228
170
203
236
171
188
182
250
188
154
224
219
181
245
174
150
216
230
251
205
228
195
269
169
217
201
218
193
196
182
226
227
222
179
249
199
243
233
173
177
207
173
192
180
201
195
225
183
244
197
180
201
180
190
138
224
155
154
177
218
185
181
227
205
195
223
232
231
229
200
198
170
185
207
190
222
218
174
220
226
253
233
243
206
219
219
168
223
186
255
219
232
215
186
175
230
212
218
187
136
157
168
247
187
179
154
243
158
217
170
182
193
193
180
146
231
234
243
220
198
125
220
168
236
141
144
215
256
237
188
161
223
162
200
144
207
239
133
149
155
250
180
157
213
156
219
242
145
186
191
116
156
262
225
169
199
209
198
171
213
248
209
218
207
165
271
199
162
179
148
252
172
135
158
203
217
210
189
207
202
241
218
266
157
176
194
162
135
208
201
175
181
197
160
165
210
213
179
273
224
182
236
119
184
137
175
292
187
175
197
208
222
131
252
226
174
246
222
214
169
262
174
172
152
261
173
204
116
121
262
252
224
220
245
181
189
284
138
196
240
216
220
181
227
199
248
248
201
154
246
222
161
213
260
189
242
243
244
233
190
179
251
139
172
244
149
178
170
217
147
226
281
197
228
255
262
170
268
249
229
222
229
164
132
166
214
223
160
225
172
177
183
183
228
205
174
222
262
240
148
183
223
136
183
266
158
175
146
208
200
152
189
222
176
214
207
188
164
196
220
149
185
207
236
148
174
243
211
200
197
191
202
249
136
271
245
163
241
210
231
166
180
198
185
199
213
228
260
224
210
215
170
161
228
188
170
138
177
230
243
213
115
184
234
189
183
205
237
223
202
262
210
225
233
205
169
212
246
248
216
249
206
176
238
185
256
137
163
223
212
171
215
224
240
204
267
232
235
230
196
202
251
195
232
197
200
165
217
219
174
198
189
183
140
214
210
238
233
229
194
187
228
192
170
210
109
119
178
166
217
182
136
206
238
215
213
217
208
249
228
158
259
223
186
152
144
238
188
206
218
242
218
188
240
108
227
231
254
259
245
189
216
220
206
163
216
178
249
182
193
179
99
214
239
152
229
227
179
207
223
180
196
227
196
271
179
216
230
265
216
202
246
230
171
283
184
249
165
214
124
163
184
153
179
275
216
216
196
191
203
162
225
186
203
154
220
167
156
164
223
183
235
210
198
177
222
216
139
213
222
211
204
202
191
173
194
213
212
182
192
190
152
237
209
199
226
195
199
233
267
163
185
226
186
188
178
243
194
186
152
175
154
276
148
186
102
219
204
214
204
142
184
152
177
190
218
210
167
202
180
232
128
163
199
155
196
159
226
200
243
187
230
204
226
235
138
203
171
205
148
168
256
242
201
162
152
202
209
207
210
206
131
233
182
191
214
166
210
176
129
192
219
180
186
235
183
219
185
212
243
162
216
239
201
210
170
214
129
214
159
147
222
177
226
119
129
213
171
186
247
218
203
150
208
188
197
190
182
195
198
188
194
147
251
229
182
174
186
200
169
220
152
143
258
253
170
214
259
166
261
192
227
232
224
162
187
192
178
264
204
241
117
249
183
196
265
241
106
194
227
286
178
222
229
192
159
198
191
183
232
207
239
145
150
211
181
194
160
209
240
174
220
178
212
226
204
219
201
181
238
149
163
197
233
195
213
212
241
118
257
223
151
152
184
179
190
218
171
186
241
191
185
238
210
160
159
160
172
214
204
197
169
198
189
201
193
185
256
202
185
218
124
131
137
236
188
213
260
211
153
255
188
197
114
151
220
190
215
278
177
233
214
185
171
189
183
132
248
172
230
173
146
183
144
235
199
179
226
135
174
153
178
240
187
199
211
228
219
185
236
162
193
190
156
163
186
262
170
210
208
257
211
224
189
229
189
148
224
183
200
194
164
180
202
210
174
188
243
194
173
192
203
155
152
198
229
235
218
225
170
236
181
186
178
237
202
217
243
241
170
253
257
129
195
148
122
201
198
168
149
177
200
212
246
190
230
162
205
153
243
189
213
186
166
226
198
207
218
249
143
182
118
202
219
248
204
245
212
229
214
212
233
218
181
169
210
216
170
198
218
231
220
214
231
212
168
214
149
239
211
143
221
192
155
212
223
197
184
273
185
160
246
239
260
193
233
175
222
182
233
173
194
225
241
225
247
276
203
210
216
207
153
200
231
228
197
189
247
151
160
193
201
223
213
209
182
190
238
153
207
156
159
196
212
230
205
192
217
267
231
228
225
207
208
155
178
198
133
251
172
189
200
169
191
124
196
198
153
176
203
176
198
206
154
227
249
243
221
183
216
255
179
231
216
224
177
150
254
157
233
196
180
153
200
196
222
100
195
112
202
150
192
203
176
228
199
200
206
223
215
157
194
158
189
208
198
184
197
210
154
144
174
238
134
201
238
186
241
165
182
309
245
206
164
177
246
171
200
152
235
206
228
132
201
209
197
194
243
137
205
217
214
244
146
153
214
213
230
210
202
189
289
233
185
206
193
175
164
203
200
212
183
121
162
173
177
179
202
245
138
236
152
212
254
208
235
229
157
138
190
141
207
256
222
251
197
177
237
238
181
231
199
201
222
252
255
200
194
211
255
208
200
135
229
216
182
234
180
196
215
226
173
189
207
194
218
236
211
179
140
198
253
197
163
216
199
220
256
228
207
190
211
248
232
203
165
176
223
162
223
262
183
205
171
200
208
250
221
147
179
138
175
241
147
135
205
209
239
231
196
179
191
143
170
169
208
218
174
229
119
158
232
211
205
119
201
268
199
261
121
170
259
185
183
227
226
189
186
160
175
210
177
181
230
225
197
184
277
216
212
233
171
224
132
124
150
232
224
119
187
232
228
180
174
197
219
166
212
221
144
189
206
149
191
209
191
210
201
217
215
199
170
235
175
152
153
240
232
246
227
162
198
218
222
215
132
189
180
263
189
191
248
213
179
215
220
126
186
170
171
147
177
197
205
194
213
220
196
205
138
183
212
153
179
225
238
204
240
191
181
220
190
232
176
220
224
144
179
174
183
155
230
119
192
206
208
211
229
207
220
173
181
165
258
196
169
163
161
240
187
178
177
233
199
213
178
201
231
204
233
210
238
229
154
261
224
229
153
213
200
196
243
213
250
208
222
209
165
207
217
188
203
178
204
195
162
219
202
233
190
211
201
172
143
223
214
228
221
239
199
248
180
235
156
188
171
206
249
165
211
178
168
235
217
267
222
198
208
204
241
130
179
191
167
212
154
203
209
187
228
195
228
234
238
228
193
145
228
229
226
170
197
170
197
145
218
227
198
256
200
171
192
197
231
198
142
208
226
191
165
214
132
192
166
184
230
193
234
189
198
239
201
163
236
180
213
247
186
228
250
154
248
201
270
239
196
144
240
196
215
229
187
241
163
167
214
238
165
222
232
244
167
159
178
225
248
188
221
171
207
219
196
201
180
227
210
189
206
200
216
185
257
177
214
183
165
214
172
193
214
183
166
226
197
220
212
201
145
186
188
224
131
250
184
249
226
231
237
247
191
236
180
192
148
204
138
220
202
198
192
160
166
139
230
207
205
161
178
212
182
187
285
141
278
109
221
168
136
178
256
251
205
241
222
229
221
215
192
224
202
184
260
189
239
208
227
224
246
193
174
254
186
223
182
190
217
186
178
170
241
232
275
211
210
162
231
228
167
205
180
159
132
231
213
224
184
209
186
211
259
283
187
188
206
187
233
153
150
244
205
202
205
160
161
249
192
235
146
220
158
189
174
153
187
204
208
167
192
175
219
207
202
203
176
199
197
187
267
204
204
200
207
215
196
180
208
229
270
205
201
200
211
204
218
222
226
240
188
214
244
237
193
170
244
192
211
133
144
247
245
202
214
185
184
271
253
204
153
262
200
157
199
260
173
244
212
269
232
206
172
195
233
124
153
222
269
151
145
237
234
185
144
154
223
257
202
244
166
209
161
193
230
256
209
247
162
214
252
132
221
254
231
191
196
171
187
193
204
206
161
242
191
237
229
169
163
261
209
206
160
180
172
189
211
196
192
222
152
163
235
177
258
251
191
201
291
197
236
215
211
177
205
209
237
203
130
227
201
244
215
156
260
198
211
181
246
178
243
189
150
159
180
243
238
208
201
192
200
284
131
171
179
172
138
257
201
182
214
158
181
210
162
196
232
168
153
182
149
170
173
183
239
184
193
203
209
214
170
213
215
220
228
224
198
189
194
220
233
207
166
205
158
217
241
261
195
221
212
213
253
234
270
151
295
201
204
236
141
264
228
265
229
213
177
219
191
204
145
252
195
211
225
184
154
225
222
207
227
183
234
205
178
256
173
184
145
198
180
192
267
205
163
199
215
187
178
176
190
197
158
160
229
152
238
218
291
227
219
225
161
232
242
211
155
232
194
236
171
126
164
209
192
252
231
207
176
180
234
260
207
156
183
118
234
246
189
166
224
218
184
208
181
228
165
202
231
191
187
239
196
236
257
219
149
170
211
186
137
240
215
229
181
193
180
143
214
189
125
119
183
164
240
210
143
232
206
195
260
140
203
228
178
126
217
188
226
216
207
197
118
173
148
245
227
232
213
153
194
215
228
225
207
195
141
180
190
170
248
216
239
234
246
119
192
185
193
145
249
213
218
219
187
199
193
242
128
238
229
181
205
184
259
139
217
184
231
175
197
194
208
234
145
295
178
179
171
197
261
180
127
170
223
179
194
176
234
248
209
220
228
221
142
213
211
209
148
229
134
206
234
214
201
117
102
247
197
194
154
150
176
216
204
163
202
228
164
242
199
184
194
225
153
175
215
182
182
153
104
208
226
175
209
188
177
212
203
205
174
145
157
143
154
202
182
162
196
136
255
194
197
201
173
229
184
193
245
179
175
172
184
153
211
188
187
205
246
130
170
230
205
173
219
144
136
166
202
211
181
204
182
217
190
215
204
206
190
227
189
250
215
195
251
174
163
220
214
155
158
273
179
237
250
179
230
216
196
238
180
178
171
185
191
231
144
236
232
216
251
217
198
176
222
214
171
247
181
232
278
225
228
212
184
237
213
241
178
208
228
174
177
183
180
219
196
211
157
183
218
198
144
204
188
178
227
158
191
189
228
237
172
191
195
197
213
199
200
230
187
205
205
196
209
220
230
234
220
179
186
171
192
196
224
215
160
201
246
215
181
177
203
190
209
177
165
226
123
241
222
144
184
210
180
169
237
174
115
204
204
195
219
186
137
229
234
203
189
235
195
189
235
226
199
177
207
211
205
226
160
155
220
180
197
175
223
213
170
229
191
207
234
197
206
253
146
227
157
190
187
215
171
220
179
200
236
214
191
228
228
170
185
191
158
214
232
226
184
206
195
196
230
251
147
165
178
171
190
170
187
224
240
223
211
211
177
171
173
260
182
245
184
215
222
120
188
229
174
204
152
219
131
181
212
195
129
233
234
226
205
140
209
272
170
180
193
226
170
189
197
247
218
197
188
210
225
217
204
225
245
241
217
181
229
146
208
223
223
142
240
204
181
170
143
204
212
201
236
207
199
218
203
162
215
184
213
122
196
179
176
256
242
160
212
192
180
258
197
161
246
225
159
176
146
163
200
217
232
260
217
158
195
234
193
188
151
196
158
196
176
169
178
243
215
192
173
216
206
187
202
189
190
243
243
189
235
231
207
210
204
184
198
180
217
239
228
231
243
157
223
244
247
218
215
159
251
148
243
203
226
223
232
190
175
197
216
203
231
206
284
206
191
245
178
224
248
225
207
241
255
189
196
222
174
259
241
178
164
205
227
187
186
217
207
182
197
216
158
154
244
189
220
199
248
233
180
213
217
225
229
126
223
189
172
219
197
229
219
191
125
177
190
203
172
139
209
236
224
178
198
199
222
203
176
198
240
194
175
236
114
185
210
222
182
195
207
195
166
179
196
116
133
150
186
218
195
191
270
198
211
188
156
235
232
204
243
200
203
220
206
236
152
155
192
215
248
163
211
187
237
86
172
207
236
200
221
183
228
205
198
232
260
225
245
164
261
249
180
217
253
185
186
212
185
223
195
192
232
181
124
127
215
223
192
169
196
185
191
202
191
158
199
238
180
181
186
206
203
195
198
173
205
199
255
231
196
206
188
231
189
224
184
196
142
212
187
171
183
219
213
255
252
217
113
229
223
216
250
167
182
213
130
208
225
192
116
186
235
224
177
146
210
176
242
266
208
237
186
173
258
223
221
176
179
189
135
145
221
169
200
159
200
197
229
111
189
210
233
200
201
214
231
181
185
160
177
188
253
227
194
189
184
237
185
191
229
242
195
210
188
210
124
216
266
203
217
162
241
240
215
227
181
252
194
180
235
256
169
189
241
238
248
175
191
193
200
220
245
199
232
206
204
214
190
128
224
185
218
122
196
172
192
175
192
184
202
250
217
203
160
205
216
200
207
290
220
233
247
171
195
211
192
202
140
196
169
222
229
230
215
179
174
203
159
190
231
246
213
137
188
184
189
226
275
217
208
222
150
226
188
222
200
134
202
163
231
236
214
144
194
216
239
212
224
190
242
214
196
213
182
200
189
200
192
126
175
184
207
196
205
132
193
244
181
218
219
163
218
155
257
217
194
183
203
165
219
258
235
230
263
266
223
196
209
162
181
174
178
233
166
218
173
223
174
278
170
257
201
220
218
182
149
163
246
178
141
182
196
184
169
177
184
249
197
170
225
234
192
171
210
236
182
158
230
255
138
176
160
200
229
203
237
241
167
227
184
193
235
206
151
168
172
259
207
237
195
202
220
228
238
209
195
188
164
218
163
187
218
188
233
175
167
229
187
182
202
202
200
230
194
185
251
163
189
209
171
213
276
170
169
174
164
228
210
213
192
175
197
141
217
275
191
209
244
109
200
198
212
233
198
236
147
208
228
182
240
239
162
211
254
148
198
191
190
166
201
187
261
191
169
176
191
202
181
173
181
193
195
175
210
117
238
166
193
274
167
187
215
203
151
226
231
267
176
194
161
211
208
230
162
194
208
211
137
220
224
232
129
213
231
195
156
142
196
190
196
194
140
208
208
203
253
160
202
202
212
177
204
163
214
222
164
223
234
174
247
232
196
198
181
237
188
182
227
185
172
164
165
174
190
221
171
214
163
204
245
162
247
201
184
220
160
189
189
154
197
219
211
198
226
234
181
161
190
198
191
204
204
237
201
179
201
180
218
157
156
147
214
225
184
189
246
209
219
224
231
202
217
249
147
210
210
203
186
196
214
175
192
205
169
233
216
225
167
247
201
165
185
208
228
236
147
232
171
216
174
237
197
181
188
191
194
204
151
153
222
175
190
171
137
249
197
212
207
114
234
211
208
176
205
184
240
219
158
214
162
194
265
183
211
207
192
253
160
209
234
250
179
224
190
147
220
226
192
205
257
219
237
221
192
217
209
201
232
169
245
208
194
188
193
156
217
184
239
157
158
181
202
208
188
221
209
170
225
182
244
198
156
184
237
210
229
154
197
174
211
185
171
186
203
232
197
196
233
200
184
207
234
191
222
252
252
193
225
282
233
223
200
206
197
230
167
167
221
131
201
207
218
227
182
197
221
153
187
198
164
187
236
192
228
170
193
183
215
221
214
185
173
149
186
192
219
220
193
205
184
215
197
191
158
173
233
161
176
204
231
207
158
167
209
234
169
215
197
185
175
221
223
227
147
211
212
169
222
209
229
216
221
204
217
148
200
216
193
192
149
228
212
172
234
185
215
156
195
130
233
207
223
212
172
169
240
266
242
154
216
181
199
143
219
265
149
185
139
177
212
185
232
135
220
150
229
155
249
242
242
251
172
143
203
249
223
172
205
188
190
199
155
187
202
165
194
190
253
225
184
209
245
183
209
211
187
267
234
146
226
212
139
179
225
190
165
193
203
231
179
169
207
214
273
131
203
149
222
250
210
213
166
184
197
166
254
178
215
244
240
210
285
227
220
199
246
188
216
214
172
192
197
186
208
241
166
191
182
173
198
154
198
278
166
136
242
241
187
176
218
197
198
190
166
266
257
234
229
258
166
199
217
149
203
239
203
159
202
205
194
186
183
166
147
199
217
239
234
216
209
207
200
173
189
282
200
168
112
235
146
233
188
157
263
198
190
167
262
221
222
224
190
223
229
238
270
245
243
204
216
133
249
222
169
195
156
186
259
162
144
245
179
179
205
240
217
197
217
153
208
196
256
225
141
95
161
220
199
207
225
183
197
216
187
169
265
214
230
252
182
139
229
202
194
249
159
186
216
193
207
182
220
169
184
208
209
250
184
190
236
251
160
225
258
196
217
209
216
169
235
207
182
259
192
196
266
253
206
147
222
223
188
201
265
145
182
236
207
207
211
230
171
239
189
250
246
222
215
252
245
244
193
208
229
178
193
257
187
242
203
197
208
239
190
242
160
177
249
282
215
174
148
233
171
222
288
200
188
158
228
213
272
201
182
238
224
181
179
149
242
215
242
160
190
182
226
192
243
194
239
220
140
203
215
194
186
210
260
174
196
182
151
212
153
139
206
211
238
187
139
145
190
228
220
163
244
185
235
136
196
211
190
197
132
160
219
165
172
173
174
173
202
224
178
192
184
242
186
264
186
203
211
243
174
198
217
178
244
214
195
152
232
251
217
143
212
171
202
209
196
214
165
234
208
208
235
169
191
236
202
176
224
184
254
221
223
214
223
213
241
243
217
241
129
237
205
214
161
143
180
223
242
135
202
121
211
141
188
220
214
172
223
183
178
175
231
231
148
157
143
215
204
166
160
222
213
178
195
201
195
183
230
182
241
181
186
181
243
238
212
175
212
139
170
190
255
261
198
155
275
204
182
217
212
266
193
177
222
124
218
220
206
236
187
233
174
201
153
179
260
206
153
176
247
156
204
201
215
195
231
225
193
187
190
234
128
228
165
231
230
218
234
219
173
217
148
155
170
227
235
243
220
237
201
191
185
194
247
256
239
208
202
229
220
162
229
254
186
244
162
216
244
228
193
154
155
208
182
150
210
231
207
226
289
213
232
180
222
208
151
204
189
200
167
162
142
186
235
219
186
188
138
201
199
256
183
218
211
160
235
173
198
245
210
184
227
198
220
160
220
139
209
194
188
223
235
192
198
212
236
233
158
204
254
246
196
196
169
195
279
182
170
196
219
220
214
209
162
257
179
177
241
263
143
250
237
211
183
171
222
202
197
205
276
168
241
213
213
178
281
238
160
147
211
242
167
175
237
153
128
207
197
125
198
212
243
233
195
189
226
247
224
178
157
208
162
163
216
173
255
154
226
219
200
227
181
219
167
202
219
186
153
218
164
158
186
207
145
229
221
161
222
204
161
226
198
156
199
226
119
204
183
233
177
224
151
171
254
224
261
177
191
180
232
159
161
222
210
199
267
173
222
219
183
211
192
181
211
224
221
223
163
229
263
245
263
212
150
211
223
183
216
207
191
218
211
213
239
227
250
235
184
189
223
181
168
241
117
168
165
187
224
234
161
221
220
159
182
183
162
169
174
224
264
239
242
255
236
290
181
239
271
155
229
150
241
255
226
240
193
151
208
241
206
194
204
214
167
224
240
254
198
205
233
206
171
192
204
225
174
162
226
180
167
259
144
238
203
213
156
170
263
165
188
143
124
214
191
184
150
216
159
196
144
220
202
215
220
201
232
216
215
206
241
193
168
158
220
165
158
247
254
255
207
180
177
202
238
224
167
262
174
214
224
192
177
180
187
188
193
170
162
192
162
166
201
166
195
221
154
192
176
209
190
159
133
240
246
154
230
240
211
224
170
235
224
225
170
167
214
171
263
185
172
249
204
236
236
208
154
202
215
226
202
222
230
260
221
170
173
199
229
164
207
230
127
134
188
201
246
239
130
177
228
237
187
223
167
195
200
151
202
186
202
172
189
215
216
165
212
183
167
134
212
249
244
171
180
227
182
239
214
238
159
161
242
195
265
199
225
241
208
213
241
189
225
197
202
221
165
218
223
237
222
218
209
217
190
202
254
206
191
234
221
161
174
185
187
218
215
146
213
125
207
200
165
246
276
249
200
182
215
228
241
194
195
171
201
201
181
225
235
171
152
204
181
202
189
182
183
235
182
191
164
146
175
144
189
183
194
97
204
235
172
153
214
190
203
187
254
189
184
254
231
219
162
199
198
249
109
167
152
257
196
179
167
182
235
226
183
259
216
207
188
237
224
209
136
179
172
193
244
197
170
191
239
186
171
208
176
213
197
208
174
183
267
228
214
152
129
193
232
230
205
158
235
222
207
178
208
150
134
175
176
208
220
210
272
168
203
157
139
231
197
221
195
229
197
69
163
221
237
167
192
210
215
160
251
177
235
182
209
161
176
228
168
230
192
174
172
231
251
249
178
166
200
197
171
192
158
195
217
135
209
226
208
219
249
204
194
207
231
261
226
142
246
175
154
206
140
157
217
229
289
205
196
171
209
239
214
191
284
207
187
285
199
130
153
175
188
183
179
185
226
242
206
141
128
125
196
189
157
213
201
126
192
167
235
166
176
191
200
211
192
193
188
216
191
214
239
214
201
171
177
297
262
165
159
227
225
174
183
191
164
203
217
221
183
180
145
188
133
214
246
223
129
153
178
211
145
208
225
214
205
212
172
254
173
228
198
239
180
163
204
208
132
261
255
181
174
183
192
181
250
210
184
216
209
137
189
236
198
165
213
192
175
197
267
210
211
183
143
188
204
190
212
200
225
167
179
218
210
148
197
176
197
164
201
195
207
170
132
189
204
187
224
181
203
172
198
153
170
174
189
194
174
212
215
213
176
173
195
223
183
174
178
237
256
189
185
197
207
227
240
253
200
188
203
186
185
234
173
209
161
196
157
205
160
223
215
276
253
128
197
217
169
214
186
215
213
192
245
238
152
188
181
217
303
236
118
207
160
201
228
146
207
234
216
218
183
200
235
126
245
237
205
245
257
203
259
216
234
185
229
150
202
213
148
183
194
259
215
201
193
180
230
203
263
209
211
212
179
196
223
207
217
221
204
168
263
162
273
165
232
216
171
197
167
166
169
237
214
214
232
226
146
215
239
193
181
159
179
240
168
237
184
156
175
160
181
263
183
183
215
196
189
160
179
225
229
207
179
165
258
152
221
224
195
193
235
215
224
224
222
241
229
164
251
179
133
232
232
220
238
155
207
197
216
164
185
197
232
209
218
197
228
190
242
162
176
263
223
210
203
160
196
222
217
191
215
236
188
143
187
196
159
185
239
227
191
223
277
256
242
264
218
238
199
201
221
275
181
218
256
219
136
215
175
132
201
195
187
176
173
189
201
259
209
170
198
230
225
222
253
247
194
197
217
203
153
198
218
174
191
191
208
222
226
160
235
157
180
218
220
248
185
173
216
195
166
187
218
192
159
165
203
227
187
178
285
164
207
152
146
205
204
234
193
172
192
141
133
209
220
211
192
229
211
237
224
207
198
238
232
162
213
190
162
165
137
150
223
198
172
121
174
178
215
186
197
233
141
199
124
185
128
159
219
199
191
196
175
163
125
241
154
185
225
218
192
185
175
248
217
209
195
149
221
256
168
226
222
214
134
203
233
210
242
252
160
150
151
189
169
213
172
170
218
156
173
240
232
151
247
233
232
164
169
188
137
200
139
222
206
180
217
201
150
204
198
167
222
194
198
188
244
208
197
111
176
182
200
205
162
207
232
243
250
194
175
111
159
167
201
164
156
261
205
178
127
202
239
174
155
213
223
207
222
239
229
241
257
272
126
172
213
170
134
243
205
244
195
179
194
200
242
222
164
266
136
212
171
234
186
201
185
211
104
155
204
110
226
218
222
168
189
171
256
231
211
176
242
204
195
155
182
212
224
180
246
193
235
185
172
184
226
222
228
157
185
207
221
208
220
151
223
175
211
174
224
161
219
223
174
207
235
224
205
215
228
149
252
190
227
253
227
146
183
140
194
124
207
119
269
96
206
203
225
143
188
217
184
181
205
169
213
224
192
206
187
232
249
184
186
188
202
207
212
154
218
176
206
193
179
247
245
191
212
148
166
187
187
202
176
194
189
206
256
238
195
219
172
215
209
215
242
219
245
208
161
157
230
250
152
138
173
214
228
217
222
174
247
224
111
205
223
237
194
194
204
183
144
169
189
158
229
214
214
258
246
227
188
143
183
240
195
231
152
160
195
199
176
238
254
185
223
231
148
223
172
198
211
174
210
172
226
199
245
202
167
217
201
187
207
205
188
169
157
222
195
210
216
177
221
190
218
169
213
215
204
217
191
185
202
186
168
93
229
225
182
200
195
186
176
198
195
225
185
158
229
253
228
169
227
160
152
243
174
207
200
216
157
232
216
145
171
158
166
173
196
181
182
199
141
188
164
162
227
196
200
227
166
140
169
215
138
219
117
181
236
246
203
196
259
200
170
156
229
187
224
227
194
228
249
181
194
181
179
189
194
177
167
225
208
214
207
222
173
241
255
244
232
221
252
166
257
187
153
230
170
161
186
187
188
186
214
224
169
187
117
175
215
171
233
231
145
221
231
213
176
229
228
223
179
160
193
264
216
171
167
193
187
226
208
165
202
253
190
222
149
204
174
191
116
180
220
194
165
189
216
214
194
169
185
187
215
164
194
238
234
240
180
202
182
229
192
179
239
294
287
207
175
224
200
252
245
220
174
195
190
236
202
141
233
273
151
184
201
254
164
231
218
205
252
217
163
213
110
184
220
159
136
234
227
197
168
173
131
177
169
241
184
174
248
169
186
209
203
220
238
206
139
202
185
181
158
208
248
239
168
167
239
157
244
170
200
243
195
239
167
206
188
187
154
253
215
196
183
208
157
218
257
141
221
166
155
145
179
205
196
189
177
255
209
180
292
308
172
260
217
201
221
207
217
199
231
204
229
234
170
238
248
181
231
181
197
235
182
227
147
175
224
221
212
227
248
244
212
185
188
192
175
196
195
203
185
247
102
223
236
251
190
168
218
231
241
199
162
150
199
233
211
209
186
231
147
198
141
249
167
193
190
207
171
159
236
176
189
208
267
185
191
215
253
211
150
204
238
116
167
223
214
235
184
231
179
240
257
211
217
221
173
206
205
202
199
198
165
210
166
217
208
236
139
235
201
240
129
164
160
235
189
199
219
206
173
192
145
241
230
208
177
176
155
234
240
174
257
216
167
162
194
190
220
240
196
175
198
239
194
149
178
240
220
173
150
217
227
200
199
199
220
205
189
101
165
177
165
239
226
238
181
166
216
207
258
222
182
157
211
168
146
208
244
247
174
155
237
208
179
207
141
147
184
164
236
190
188
199
216
225
177
252
164
219
159
199
229
217
198
177
214
172
229
264
228
201
270
203
137
243
124
242
258
200
196
211
203
196
194
248
204
200
186
187
180
178
218
190
245
244
223
160
163
276
213
255
255
207
193
194
208
172
154
228
194
192
214
173
176
224
227
208
236
176
194
161
173
207
161
184
237
180
227
260
216
256
243
221
161
205
164
178
299
144
172
143
258
229
216
169
157
183
163
187
218
146
183
166
214
233
164
167
219
200
207
256
228
210
241
186
220
218
211
210
205
201
192
185
180
170
204
253
255
162
209
235
172
215
186
180
225
167
190
204
232
270
148
197
235
196
233
249
208
169
212
210
164
265
204
181
159
247
193
153
207
134
151
198
216
180
229
175
204
240
167
232
171
178
212
232
186
90
233
175
148
216
207
176
236
201
194
164
169
192
238
168
184
191
213
215
220
189
166
210
203
174
239
212
198
224
178
242
245
147
236
247
202
135
228
248
201
198
224
261
224
238
211
232
195
148
278
163
178
247
225
173
208
190
165
161
204
235
209
225
195
195
190
178
242
227
203
203
180
219
177
232
211
129
215
206
173
197
177
190
203
248
254
202
182
174
244
203
208
237
92
158
132
222
234
155
198
238
231
168
231
239
252
150
144
163
229
253
227
213
234
190
259
178
176
211
221
205
247
189
200
255
218
173
254
193
206
177
129
201
176
208
174
150
165
239
221
249
225
206
209
237
158
232
250
208
196
187
206
209
229
161
164
193
183
238
228
207
175
188
192
216
242
209
253
186
197
197
192
203
174
214
224
111
195
195
146
136
128
206
185
181
190
208
188
169
172
206
193
235
187
243
240
135
206
125
214
207
197
167
157
157
221
222
158
220
225
199
262
213
187
197
176
198
235
225
194
212
204
240
202
188
222
194
221
184
173
227
202
210
150
170
168
124
219
223
194
249
196
143
182
169
181
207
191
189
189
264
224
187
130
203
150
283
187
190
190
234
206
172
166
205
225
183
208
220
195
292
229
177
192
189
193
217
188
238
165
213
133
208
181
240
191
162
266
184
224
224
227
215
225
206
202
158
172
214
218
241
219
161
192
171
172
187
192
216
171
223
221
243
184
252
196
142
159
181
146
175
214
134
244
198
173
208
194
238
207
226
236
168
193
162
180
191
214
211
215
136
235
181
137
212
223
196
176
123
239
158
186
250
212
208
190
155
208
237
186
197
231
214
160
197
244
267
252
193
162
226
250
181
164
192
193
206
178
240
221
187
176
195
193
228
253
186
130
262
148
191
218
149
170
219
194
207
171
219
202
215
182
223
243
167
180
228
169
187
274
204
183
227
188
187
191
172
248
263
215
195
149
190
140
161
161
239
241
151
234
175
209
180
164
243
199
206
155
225
158
191
195
221
227
167
187
205
200
169
169
190
215
197
200
193
255
227
188
102
165
197
220
169
168
177
192
182
224
198
211
177
222
286
213
259
163
205
212
243
266
251
146
223
167
204
219
183
234
232
197
166
247
228
205
155
155
140
195
273
217
172
156
192
177
244
209
185
205
208
253
216
175
266
230
245
191
179
204
129
175
198
144
207
179
272
192
167
245
221
220
200
193
262
238
209
169
239
205
221
143
164
187
213
229
222
223
192
208
184
158
143
218
184
198
212
225
147
175
255
187
229
284
193
143
212
129
192
173
237
212
211
218
167
187
221
238
215
216
165
191
192
209
209
175
209
174
206
173
155
219
177
232
161
213
179
201
154
203
219
219
274
143
160
188
184
172
178
219
181
253
211
178
228
219
154
202
254
154
206
236
171
164
238
205
263
227
204
185
203
197
156
208
136
221
127
179
180
243
209
289
173
207
212
185
212
219
264
146
176
169
212
202
172
242
177
227
191
141
208
201
204
142
184
182
242
219
163
172
196
213
233
250
269
209
215
187
156
240
174
215
151
219
194
276
187
126
204
199
252
162
176
210
98
212
188
211
206
178
207
192
165
169
251
167
163
231
211
216
184
114
189
164
230
185
144
223
190
189
218
188
144
197
214
225
162
222
143
193
186
143
197
187
253
238
232
171
227
221
225
205
181
162
218
209
199
196
217
253
180
158
267
194
202
225
188
215
146
184
190
119
191
188
188
238
177
230
235
200
221
213
183
239
204
206
228
178
181
204
178
233
208
231
239
239
248
188
193
213
182
234
154
207
195
208
184
207
233
170
133
173
134
230
211
192
258
205
201
177
182
199
237
181
193
210
187
248
220
201
210
204
216
214
194
200
227
187
232
240
183
160
132
180
228
230
196
122
192
206
165
192
252
216
171
211
227
169
159
200
190
176
202
222
275
202
244
240
175
198
223
255
221
198
162
168
188
236
166
221
158
223
182
120
236
165
198
191
224
140
179
197
183
201
195
256
232
179
128
217
200
248
236
228
204
197
224
240
170
178
155
248
273
190
201
209
210
191
201
195
208
204
203
153
220
200
227
287
231
136
235
191
198
186
216
190
142
250
165
152
189
227
191
185
220
150
146
209
228
195
207
144
223
93
217
164
120
225
194
196
192
158
194
215
214
179
243
136
247
155
173
280
183
165
170
269
204
216
181
168
188
194
169
182
270
175
177
212
242
184
182
126
201
210
166
220
165
213
208
233
130
189
197
290
163
230
155
200
209
239
181
223
212
215
223
224
189
128
207
183
137
171
176
177
189
247
181
191
171
194
218
175
198
192
249
245
205
213
185
191
136
246
230
215
262
133
285
190
174
225
147
232
244
162
146
235
201
209
241
183
242
176
206
188
180
185
199
243
229
197
191
196
208
194
176
169
163
241
222
201
265
164
207
252
175
141
218
187
250
211
209
221
171
151
203
219
254
148
196
150
245
209
152
173
213
212
230
197
194
218
185
228
164
188
148
215
223
215
185
190
182
218
220
173
202
208
202
187
188
243
175
136
148
230
193
219
191
228
181
230
130
210
201
226
174
235
189
172
207
210
220
264
196
172
206
158
176
190
205
248
124
244
209
268
191
204
167
218
151
222
267
130
187
200
235
213
171
228
235
218
173
166
185
164
221
201
176
197
232
183
248
200
188
213
153
197
232
186
169
82
186
165
188
251
205
198
262
187
224
169
204
187
229
218
208
250
159
145
175
212
243
182
244
158
218
144
204
228
156
234
195
200
160
138
236
265
154
216
182
207
218
191
250
197
198
198
193
226
185
156
185
159
228
213
246
205
173
185
132
258
214
216
181
183
220
238
231
169
146
202
191
239
197
174
240
236
180
194
165
147
275
244
199
209
236
173
144
151
289
232
181
228
271
141
201
188
212
204
248
204
186
172
256
165
225
187
195
152
223
174
209
270
200
207
273
208
227
213
249
155
184
198
240
150
187
261
236
193
202
214
250
226
190
183
171
123
224
171
180
237
225
234
234
177
166
135
240
178
219
162
114
227
230
228
155
177
237
201
181
197
146
175
198
249
147
186
220
196
235
196
195
178
189
203
192
226
209
174
147
160
203
218
215
202
237
174
259
168
240
132
140
193
175
209
88
171
215
247
209
216
209
158
188
196
188
170
233
225
278
190
196
242
161
203
170
233
209
179
189
190
181
247
256
263
158
231
207
158
224
200
168
171
186
168
213
217
230
196
218
192
225
214
190
170
216
142
230
208
167
156
304
233
190
223
161
209
222
260
162
194
207
224
165
197
250
250
225
136
197
198
207
227
186
154
145
182
199
233
215
212
152
119
224
157
198
185
220
176
137
224
214
151
171
202
207
187
108
207
206
170
171
225
231
251
202
164
220
217
199
206
206
217
211
234
181
219
190
202
233
192
200
277
169
207
228
145
176
197
214
252
212
230
152
198
222
267
192
221
185
234
167
99
167
211
233
256
192
190
225
183
174
247
209
196
180
211
218
175
210
205
225
209
238
192
148
265
279
211
199
194
270
204
196
166
222
195
178
209
196
267
216
209
161
241
222
166
194
225
153
233
160
221
150
224
211
176
154
169
148
197
191
221
161
205
202
244
157
217
196
214
208
170
212
160
254
220
195
177
208
190
160
160
162
184
216
142
162
152
163
128
203
199
257
184
255
150
166
171
149
175
246
196
149
191
232
220
162
167
218
195
179
216
202
253
223
212
221
256
210
216
193
218
209
190
196
233
219
209
207
220
217
193
237
213
159
191
198
178
181
242
215
209
216
137
234
127
230
172
208
193
266
164
250
210
157
119
172
187
193
189
216
253
162
187
145
177
164
201
188
241
220
137
218
232
241
226
274
197
255
224
185
161
173
235
182
152
273
206
243
215
192
261
198
269
228
217
244
129
243
219
202
116
170
201
248
248
209
243
194
262
143
252
208
207
184
213
228
165
235
179
195
202
154
213
240
187
188
234
146
217
159
224
196
199
236
228
174
172
239
154
180
225
244
254
257
241
188
188
241
213
133
158
251
283
214
245
219
198
214
215
137
201
279
135
125
205
189
174
221
205
199
238
227
167
184
169
252
223
223
228
189
214
178
185
202
192
252
209
197
229
244
175
206
220
193
231
175
200
190
191
161
154
207
249
158
218
226
220
217
175
233
176
207
207
260
174
261
216
200
206
166
208
189
154
167
194
200
173
172
168
222
232
194
187
102
216
184
160
212
165
150
232
193
219
192
139
196
164
177
191
178
136
209
165
243
150
187
224
193
222
211
249
214
183
222
132
179
245
158
181
153
225
238
261
123
232
258
197
216
182
247
216
206
202
197
207
209
138
160
223
215
173
221
129
191
233
226
178
261
166
215
170
231
193
168
137
173
202
259
212
220
218
197
229
167
180
183
215
239
199
218
217
243
252
163
228
234
217
250
182
195
172
222
220
252
137
250
218
240
204
122
165
126
156
194
182
223
195
204
227
164
220
198
233
168
206
187
235
197
194
142
234
240
177
257
208
166
183
225
196
179
219
189
212
177
219
206
204
226
224
219
200
198
202
179
230
276
197
167
228
132
220
185
228
164
195
267
232
204
224
216
196
185
212
242
197
199
205
159
173
221
152
222
112
238
175
217
236
176
172
191
261
220
180
223
200
258
231
229
193
170
191
239
186
283
228
180
175
215
134
212
185
252
218
208
171
242
177
171
254
193
202
177
169
162
226
210
221
125
243
177
235
204
240
207
239
172
233
228
203
194
207
226
150
129
180
160
194
239
198
237
239
191
163
193
146
234
236
188
279
189
120
205
223
199
217
138
162
232
124
221
264
213
156
143
163
169
182
242
188
191
177
212
162
181
225
236
171
221
242
168
187
216
233
239
171
212
183
226
175
198
253
195
233
225
136
224
248
149
187
159
158
210
211
203
196
193
258
234
168
158
215
193
196
167
223
187
170
201
182
201
187
170
215
216
206
221
201
272
184
246
204
135
192
153
213
179
166
196
196
257
166
160
154
158
199
221
148
211
225
172
235
168
151
206
287
275
222
187
200
158
201
180
215
245
228
235
231
197
126
231
240
157
175
182
202
223
243
171
230
233
246
261
193
226
226
241
254
240
201
209
165
230
181
210
177
217
213
189
235
256
201
174
262
219
298
184
197
154
242
242
217
202
210
204
176
190
203
205
212
160
284
166
213
219
170
180
153
193
219
181
210
243
173
186
195
224
216
186
199
186
189
245
198
187
217
198
204
195
143
145
162
145
147
175
218
181
182
185
222
187
205
203
124
251
185
247
176
283
169
180
136
220
172
209
240
196
211
217
177
179
190
216
220
217
249
261
245
163
189
194
118
216
191
163
202
174
227
218
198
238
201
210
310
182
140
172
221
262
180
199
255
189
174
160
270
186
186
226
186
218
181
221
153
249
238
163
178
197
230
201
209
242
225
209
266
256
191
254
192
237
186
133
202
203
171
204
119
188
180
170
166
245
217
177
191
210
157
157
167
235
147
196
192
178
224
242
221
233
267
223
175
270
223
209
130
215
131
238
177
193
220
233
189
236
151
191
215
220
239
191
140
221
229
156
203
199
237
137
170
269
183
168
261
140
179
194
189
214
180
165
208
206
198
133
193
155
144
230
233
284
181
206
233
211
171
207
241
220
189
248
150
152
206
207
294
180
224
136
175
208
174
227
225
210
159
216
193
178
199
229
180
236
158
175
179
157
240
235
172
166
251
188
157
207
238
171
170
163
223
242
176
176
195
137
228
248
218
148
161
159
228
160
184
163
200
168
199
151
156
226
212
228
244
213
174
197
225
215
159
224
147
249
171
213
168
172
181
181
219
227
234
253
148
156
241
254
179
196
177
181
212
111
229
210
174
233
219
215
221
215
145
221
180
153
162
202
200
201
219
197
188
263
191
191
215
260
232
237
220
200
239
206
158
175
191
288
219
196
215
222
169
212
202
257
195
231
154
187
165
209
181
300
207
232
156
147
212
185
215
216
195
251
208
220
211
208
215
242
193
173
155
162
164
240
180
266
239
220
211
235
141
260
194
108
149
200
177
233
192
195
182
250
212
225
175
205
221
248
245
203
230
179
218
190
258
219
228
209
188
206
164
236
134
150
217
226
193
189
181
230
209
216
218
179
240
244
192
208
174
228
225
143
169
209
232
254
237
184
199
185
194
191
239
233
213
244
233
207
140
183
252
226
251
201
223
147
182
185
190
176
163
203
221
191
200
150
225
225
235
170
256
198
217
243
223
259
217
266
175
245
259
239
227
172
212
198
227
202
211
232
190
130
170
243
180
240
210
203
187
243
264
232
241
194
206
207
236
219
192
215
246
226
191
252
134
234
209
228
213
174
228
196
209
185
197
221
146
192
173
238
229
214
252
135
170
140
205
186
173
231
146
254
149
204
258
147
212
197
177
210
112
210
213
210
215
184
222
168
178
200
128
200
198
204
239
143
259
194
209
192
257
253
159
223
245
225
142
228
164
175
192
259
212
218
194
236
242
194
205
238
215
231
196
247
205
230
171
246
213
190
211
207
187
144
176
191
166
214
239
198
181
171
207
212
216
222
173
136
146
153
246
148
220
184
186
241
245
197
171
163
205
192
178
217
247
195
214
217
180
174
178
162
138
190
148
170
147
185
169
139
246
157
224
181
224
159
248
211
157
189
193
184
202
258
171
222
199
205
175
172
158
190
193
227
182
161
218
259
232
198
210
192
184
224
206
192
134
222
174
211
151
207
191
219
156
239
125
228
183
235
174
205
205
109
142
210
239
229
153
218
200
204
269
221
155
185
164
160
210
156
211
225
230
202
179
219
167
178
148
185
243
240
190
183
211
211
188
190
228
190
220
209
222
180
187
182
176
197
213
217
170
169
171
226
198
158
169
205
240
189
152
192
244
216
190
208
229
160
229
127
266
257
194
196
201
184
238
208
195
134
226
175
144
198
233
168
223
179
182
195
230
207
204
198
153
220
208
167
212
201
206
212
193
232
134
200
206
162
213
182
234
195
208
219
251
226
193
201
186
224
232
163
181
240
185
191
154
237
258
153
191
169
135
270
192
202
262
206
197
257
238
202
138
165
176
148
179
191
167
193
232
169
169
218
201
171
208
193
212
190
210
236
206
236
174
175
203
232
163
226
222
193
184
269
181
192
194
207
190
170
239
156
218
227
206
153
213
212
194
199
210
162
140
185
163
243
183
204
216
181
162
157
191
176
157
187
161
212
202
241
229
206
118
183
255
217
187
256
162
183
232
191
188
188
192
158
241
216
275
233
205
206
220
205
164
196
166
189
179
173
187
198
253
224
181
177
267
211
199
133
225
224
220
195
181
191
123
194
248
187
218
204
149
192
190
160
184
238
220
174
231
169
206
146
180
176
211
103
189
204
153
248
238
227
154
199
181
170
223
206
126
276
247
157
205
128
242
183
146
260
183
152
268
225
159
168
204
216
223
186
194
165
183
212
213
255
168
193
231
156
185
150
259
211
195
167
126
237
199
171
265
246
195
221
277
192
241
266
215
203
217
189
225
199
216
178
172
182
201
189
201
277
183
167
205
212
252
163
175
245
137
286
207
244
140
217
238
178
178
182
173
204
184
211
195
169
105
163
236
223
239
234
204
117
233
195
210
161
250
240
213
231
151
218
151
204
136
155
249
195
182
203
142
176
169
187
242
208
206
271
167
196
196
259
229
172
217
172
253
170
227
149
172
219
180
214
252
160
258
205
217
206
184
169
198
240
202
242
205
223
147
215
123
222
241
226
218
207
264
232
167
230
153
242
178
150
159
194
177
143
217
226
251
179
200
183
208
210
208
220
247
244
138
215
265
144
180
239
208
223
183
223
180
143
158
222
174
204
115
194
189
203
266
208
107
147
162
181
198
211
200
196
174
132
217
254
200
127
184
196
212
183
244
196
168
182
237
252
218
138
176
193
178
201
245
166
180
210
163
207
247
210
175
162
261
255
234
196
262
215
180
168
188
153
204
239
147
188
245
213
211
192
241
224
263
197
215
190
174
226
182
263
202
202
212
229
187
135
247
209
236
205
232
213
199
243
123
197
177
131
195
168
231
237
211
211
194
228
226
218
171
199
193
192
185
259
194
202
164
247
144
229
198
196
233
216
226
210
242
214
207
213
241
235
208
206
132
164
217
172
200
193
246
246
225
218
148
214
184
169
235
176
231
206
214
198
119
243
221
211
238
220
191
153
240
248
183
181
169
227
176
239
183
252
180
207
196
235
201
162
269
192
174
130
204
200
194
157
191
203
202
179
174
231
144
242
212
156
262
154
136
206
208
212
191
172
228
174
206
204
201
174
177
177
179
216
242
215
234
246
257
214
181
171
174
212
200
233
194
173
224
194
195
213
225
281
239
171
111
223
199
246
229
213
199
224
194
168
122
207
210
200
182
173
236
227
215
303
196
171
171
202
205
204
240
227
175
202
204
199
213
215
184
211
194
145
246
207
238
183
205
197
250
234
169
177
197
183
204
189
170
187
206
249
168
196
213
172
270
234
147
215
167
162
195
191
211
198
186
192
231
247
205
183
211
247
167
167
146
229
247
216
200
177
183
208
179
187
216
206
271
209
190
195
228
139
226
181
171
222
185
192
228
261
201
204
196
188
204
208
194
207
217
165
235
166
225
229
202
246
197
257
153
230
181
227
193
166
219
220
198
255
152
190
187
180
248
174
220
198
209
240
162
174
205
207
148
245
207
117
176
215
244
183
202
269
207
172
198
156
158
137
149
243
214
201
191
235
210
140
199
195
210
202
157
149
174
217
248
258
152
196
211
179
182
209
225
172
251
239
120
272
201
222
263
183
199
247
235
207
247
190
254
239
179
253
216
280
212
218
179
228
218
192
230
256
219
163
158
170
200
228
233
186
178
235
213
165
148
241
211
184
179
172
220
211
197
204
178
240
202
212
200
194
187
186
236
206
194
213
253
167
214
170
202
216
190
223
171
170
217
224
209
219
198
224
256
212
250
159
240
150
181
234
202
170
192
222
245
259
216
154
180
222
219
168
270
207
203
218
217
249
178
157
201
224
249
186
134
231
202
189
225
214
211
159
249
202
197
113
245
200
201
158
240
129
170
208
180
208
202
187
217
195
195
217
192
247
244
211
165
148
221
206
186
303
216
188
229
229
221
177
219
172
203
215
198
195
137
241
190
187
156
162
180
196
155
203
240
165
196
174
226
217
185
248
260
233
164
146
206
137
157
167
220
239
231
128
249
203
134
198
147
151
216
202
197
186
151
250
167
204
237
153
174
192
168
202
247
185
138
216
199
191
227
162
175
238
185
121
200
192
196
167
195
223
203
164
140
110
268
201
233
190
233
235
242
215
190
180
199
257
181
226
181
138
192
204
191
194
198
151
185
210
208
217
259
202
208
194
190
207
188
220
129
226
193
186
178
125
194
195
217
186
212
199
163
184
169
164
118
190
224
180
248
228
164
203
218
221
255
191
240
223
235
168
231
161
185
208
164
217
198
233
287
220
223
205
203
180
205
206
273
197
143
216
172
187
159
208
177
194
179
167
181
202
193
207
202
229
172
252
99
146
204
174
196
237
237
227
214
204
222
198
248
205
206
264
161
179
213
159
183
151
197
185
208
178
247
158
187
234
232
172
182
199
128
215
189
216
229
163
214
233
222
234
200
208
242
190
225
190
252
213
228
254
259
241
177
200
212
174
216
174
174
229
246
236
202
182
130
199
222
164
232
211
190
197
268
207
200
237
220
102
218
166
156
128
230
189
207
212
169
171
232
273
130
143
187
229
192
209
169
197
161
244
217
240
206
234
156
161
220
206
260
266
190
222
195
237
192
207
248
215
183
187
197
272
158
157
201
273
194
215
165
157
212
209
177
229
225
183
231
203
218
111
139
277
214
159
150
162
181
202
221
193
184
209
182
204
204
237
182
221
183
157
165
204
240
156
210
173
206
169
214
206
216
203
204
154
184
161
221
259
140
143
224
245
214
142
156
172
181
172
225
240
146
149
178
243
180
210
129
182
222
213
163
195
193
197
245
211
257
204
174
153
180
190
223
147
181
193
189
202
158
204
171
200
152
176
183
195
190
150
89
144
257
228
254
176
240
207
186
156
206
208
168
278
209
249
236
269
219
228
231
215
166
210
171
123
194
161
202
143
228
197
145
232
237
234
232
180
192
158
193
200
176
210
172
135
238
246
213
147
192
179
213
165
204
251
182
216
189
175
192
256
234
239
233
205
164
142
199
175
159
205
209
190
140
233
149
205
162
213
177
199
151
164
202
198
171
214
138
206
197
233
189
187
206
246
232
204
173
234
157
163
247
220
181
199
230
245
198
204
204
147
190
171
200
209
205
261
189
249
211
131
238
251
197
276
209
206
151
181
214
191
199
223
187
184
163
206
220
205
229
219
238
179
177
110
181
187
229
171
210
160
131
186
257
229
208
160
191
169
214
193
241
193
226
212
186
219
149
236
249
196
278
195
264
231
222
214
207
163
218
170
202
209
203
207
195
193
224
204
196
118
213
141
223
209
129
164
254
219
216
185
203
219
271
275
202
188
169
226
164
242
156
179
244
160
243
238
210
233
184
186
181
246
181
238
189
149
201
192
194
169
230
217
215
138
183
191
200
276
164
190
259
148
239
203
202
225
206
192
160
163
180
202
210
181
175
192
241
174
152
200
207
230
211
259
212
188
257
199
196
228
209
151
214
243
208
275
196
204
119
251
247
222
211
177
166
179
267
220
184
235
179
200
239
190
193
231
238
202
232
230
145
221
256
201
185
235
200
234
248
138
212
237
210
169
199
215
167
257
185
184
208
181
242
178
182
221
169
188
223
174
195
182
184
164
165
169
198
179
145
159
179
184
176
172
128
131
243
211
164
227
223
201
134
230
167
153
240
234
230
206
145
197
235
126
165
195
168
188
210
209
178
217
252
263
150
160
153
146
186
226
177
195
213
190
180
176
175
170
168
180
197
193
105
193
198
203
245
245
212
197
176
216
222
172
256
118
178
177
135
188
220
232
213
245
231
187
216
224
187
208
178
168
188
190
235
193
225
142
201
149
217
245
214
170
265
182
177
232
230
232
183
143
191
204
202
166
256
189
214
178
179
180
257
203
135
218
173
206
181
223
213
210
203
208
217
140
148
209
182
200
114
232
212
220
223
168
225
226
213
168
183
203
154
207
222
259
151
170
251
170
187
273
241
167
162
195
206
182
198
226
237
189
221
210
172
192
196
274
165
186
266
233
204
195
167
197
200
246
168
155
202
229
234
204
176
191
155
145
184
204
152
224
214
188
129
217
216
178
151
180
274
174
159
276
228
215
200
212
232
281
193
192
196
232
204
185
233
213
203
153
129
191
184
209
236
249
164
281
228
197
235
229
180
229
130
178
251
243
183
150
154
205
155
193
198
186
222
173
190
210
223
224
188
209
210
189
216
170
193
234
211
203
231
205
193
186
178
120
134
171
223
146
179
166
193
190
126
186
220
223
237
221
146
225
175
155
169
195
182
161
205
230
178
191
130
155
211
222
187
181
142
268
199
206
166
163
175
185
150
244
144
177
285
151
162
175
198
255
208
247
159
221
235
168
257
246
211
174
219
184
192
229
223
239
180
166
219
214
140
172
214
155
217
207
196
229
164
249
230
211
175
178
222
175
174
256
231
196
179
192
217
171
261
213
197
201
208
227
193
253
259
229
211
211
169
179
232
180
244
160
150
193
229
162
227
206
218
226
177
220
159
208
270
235
187
176
180
242
223
155
220
192
161
205
227
213
218
234
226
178
222
246
208
216
241
211
185
139
254
169
259
225
204
188
195
165
190
259
180
187
196
231
240
236
220
205
186
124
134
145
193
207
157
223
204
274
181
162
284
183
213
190
157
159
139
199
203
242
215
178
217
180
150
238
178
194
218
214
177
270
150
224
215
253
212
204
141
236
208
199
240
177
237
182
217
226
213
210
197
195
161
213
245
232
194
155
172
195
174
183
178
200
195
224
186
199
217
231
224
202
236
182
200
186
230
229
216
238
178
176
243
218
258
245
197
230
164
223
196
210
217
158
199
187
203
223
152
172
142
172
187
149
215
197
209
202
231
239
175
247
219
233
156
217
238
206
128
212
158
190
181
208
170
233
156
206
203
211
229
157
181
256
202
214
155
255
241
151
172
220
189
159
240
152
224
221
178
214
224
215
189
190
236
137
180
229
156
183
207
232
212
165
221
255
226
192
125
149
187
176
250
186
193
142
191
245
188
223
174
188
212
170
236
210
247
223
234
176
251
196
199
234
226
210
166
194
247
249
170
176
225
129
235
223
265
197
171
168
219
197
273
224
201
181
228
239
212
124
190
162
177
183
173
253
179
228
174
208
238
229
135
251
142
250
257
188
155
199
212
235
153
136
228
149
128
169
154
186
218
226
127
208
147
265
123
211
211
190
192
225
180
122
170
249
222
220
231
218
199
221
195
202
192
228
177
181
193
213
178
141
179
206
179
237
210
238
154
204
270
194
202
171
177
205
196
212
237
203
193
168
244
156
166
215
202
237
267
194
234
168
225
200
173
177
178
221
211
198
225
250
238
181
148
215
142
149
176
228
179
167
160
169
130
177
258
207
210
137
240
179
220
241
157
224
196
191
203
170
198
230
232
193
215
190
269
207
256
193
180
202
142
212
210
248
156
178
226
224
231
259
189
205
241
119
242
202
223
204
216
239
259
254
191
193
223
197
198
241
225
186
226
231
169
175
224
164
223
149
223
207
212
158
162
248
149
200
263
191
189
200
206
135
213
160
219
190
161
236
187
194
173
176
211
195
185
179
178
187
198
168
262
201
136
171
200
190
133
227
124
253
173
160
238
218
228
188
216
233
218
145
241
148
221
216
179
188
220
219
227
192
182
204
234
217
227
217
259
208
160
197
229
188
164
180
191
185
156
238
197
239
156
224
197
211
162
190
178
236
209
200
205
226
122
270
252
212
217
116
151
162
166
233
164
268
235
276
221
211
197
199
161
206
195
206
184
199
164
223
216
259
162
196
205
257
209
190
178
163
191
202
200
204
221
144
221
200
186
256
188
221
223
168
220
200
260
144
204
234
173
238
243
154
260
193
142
203
133
160
248
149
230
203
213
238
158
179
134
176
173
241
227
199
150
216
168
155
210
194
186
164
190
265
222
210
244
216
195
145
289
246
167
181
252
160
164
204
210
112
189
172
239
196
239
237
173
157
214
175
233
170
182
180
158
200
173
226
240
245
231
209
214
173
185
245
184
208
176
228
244
179
218
220
189
219
180
217
204
140
158
174
230
245
162
220
165
249
178
176
247
246
173
190
171
269
192
197
142
285
203
189
145
197
158
198
216
172
203
212
217
173
236
203
204
224
204
198
234
246
142
259
142
189
214
152
159
253
214
235
187
185
225
226
176
231
217
230
204
166
255
225
122
214
204
219
144
230
199
277
222
249
187
177
187
208
200
275
214
226
258
220
135
215
235
183
241
235
189
249
198
216
173
228
199
207
244
233
169
166
163
197
145
157
230
165
188
189
183
149
188
259
196
233
198
173
202
227
157
207
208
213
272
220
288
161
196
217
204
179
283
239
225
192
211
231
224
248
260
206
218
136
175
206
169
202
165
222
198
200
218
214
218
260
218
183
199
205
189
203
193
140
218
209
228
250
212
191
202
192
208
214
216
197
124
178
219
187
246
265
169
152
210
129
249
196
258
191
210
153
246
214
86
191
241
145
222
198
264
166
135
201
250
161
211
211
198
111
216
207
154
234
191
254
218
212
216
173
248
150
204
182
183
208
193
244
236
195
179
173
217
259
239
243
180
187
233
194
166
166
195
220
190
182
219
202
185
223
194
230
138
194
200
179
233
142
196
262
161
147
174
240
181
210
144
231
212
205
159
167
172
243
186
131
103
140
270
218
122
170
201
214
146
241
220
200
230
249
170
227
196
175
202
222
135
212
198
219
203
221
251
235
244
235
202
247
227
161
277
235
193
188
165
204
246
209
263
237
230
228
202
229
220
106
144
265
186
171
210
156
160
224
224
173
179
175
216
227
240
200
201
205
205
166
185
223
197
188
180
133
230
221
242
141
204
165
149
259
193
157
188
208
196
183
209
181
220
151
198
241
214
209
192
172
217
189
172
230
243
222
181
182
209
193
153
214
176
210
236
230
224
197
240
260
173
233
208
218
219
218
111
201
249
236
236
159
211
197
276
208
239
196
272
262
205
157
171
189
215
243
208
221
144
223
204
219
171
169
218
227
173
202
192
168
229
221
211
271
191
244
230
208
219
106
222
100
239
182
177
261
150
182
118
136
229
257
259
166
176
118
216
251
166
239
153
206
238
198
226
147
186
210
182
193
168
238
187
135
255
203
194
226
204
212
161
234
179
202
253
203
241
225
181
175
193
197
245
203
164
157
162
228
191
181
231
262
190
246
137
237
191
199
176
199
181
165
225
204
219
189
191
238
173
183
188
170
194
215
231
194
223
224
138
251
156
232
185
205
246
210
204
208
239
220
203
204
138
201
191
172
208
192
206
205
235
153
225
220
219
231
189
193
169
190
151
218
197
233
215
170
225
217
216
184
229
230
197
280
198
184
209
189
202
133
190
110
242
206
180
208
176
187
212
205
159
225
227
230
173
156
251
150
200
185
175
178
169
113
92
223
159
144
218
199
222
145
261
211
219
208
221
218
207
167
217
172
227
178
238
149
212
210
235
238
206
235
159
247
210
197
225
177
192
177
160
222
227
258
219
211
223
213
173
194
158
211
201
149
220
147
154
212
200
212
181
188
177
196
164
212
200
199
216
154
199
235
227
197
225
200
236
321
139
179
180
242
230
197
221
191
172
246
171
127
180
130
138
230
192
220
216
200
257
232
212
146
175
231
236
220
225
165
190
169
230
136
247
267
197
194
163
183
239
205
172
209
171
211
185
221
264
219
180
226
174
232
233
218
220
193
126
253
223
220
201
169
134
230
178
240
283
203
173
166
184
197
175
160
249
214
197
243
195
229
209
229
206
161
150
123
221
216
243
170
210
267
233
97
175
198
283
172
157
262
152
230
160
153
226
196
200
171
198
141
205
189
153
218
220
257
109
213
196
198
238
210
245
187
223
172
221
251
147
159
191
206
175
185
216
220
156
238
187
161
234
214
239
202
171
185
184
211
259
183
176
227
239
158
186
187
162
146
211
243
242
194
148
185
211
121
174
220
126
274
231
225
195
190
176
189
188
203
193
215
147
221
184
201
223
181
193
147
209
230
194
162
147
210
154
170
184
202
168
135
218
193
215
219
201
213
148
198
186
210
142
171
218
215
184
168
236
169
170
176
212
211
234
194
232
180
195
180
215
216
194
211
197
157
145
199
206
216
193
182
143
205
106
213
214
186
224
223
174
151
175
228
238
170
186
219
215
128
226
183
143
227
208
183
271
227
208
253
196
191
189
191
185
247
172
177
128
164
154
184
212
227
216
216
228
203
245
195
215
166
183
166
252
216
196
236
188
226
189
215
240
206
166
210
262
239
141
184
245
258
192
205
196
218
241
225
233
248
222
165
200
228
244
214
212
230
178
256
165
279
215
153
212
199
256
242
233
117
187
174
267
200
186
207
247
171
197
223
222
138
263
230
161
182
202
190
163
176
246
219
215
199
215
154
185
183
200
205
224
233
181
190
229
183
237
229
207
188
221
174
223
166
135
202
215
231
167
178
159
223
145
218
261
165
253
242
186
163
162
250
235
207
139
204
222
155
207
213
191
244
245
162
140
153
124
164
215
201
184
235
187
129
235
230
213
176
161
268
200
201
216
168
235
232
220
188
214
214
269
170
227
240
171
282
263
253
221
153
123
216
279
292
191
163
208
143
234
210
153
185
214
173
178
222
153
210
195
226
254
160
220
236
240
195
197
162
190
263
218
216
151
175
163
212
142
108
192
209
183
193
220
244
274
172
161
211
165
128
172
215
236
205
218
242
200
185
237
211
246
189
166
190
239
254
173
232
183
207
226
186
163
204
223
103
220
220
184
195
155
191
183
199
229
188
183
229
250
207
226
258
248
148
212
251
172
187
194
201
234
214
179
254
229
226
236
213
217
215
207
216
174
205
232
160
242
161
223
204
175
241
210
187
193
194
205
196
115
157
232
225
202
201
191
216
199
222
131
206
205
207
265
241
213
261
154
233
215
223
201
220
216
158
207
156
148
153
188
222
187
220
184
236
173
143
179
164
242
166
226
179
209
236
176
207
207
169
193
220
213
225
205
181
158
146
177
161
178
151
271
222
191
204
147
237
206
168
254
219
183
234
189
262
232
213
215
245
198
198
224
139
217
212
98
169
297
207
246
256
201
210
213
233
199
163
254
162
212
266
174
126
142
188
238
238
201
175
182
208
228
231
254
258
227
135
145
179
217
203
232
217
199
232
241
168
225
201
208
205
187
259
196
249
140
172
185
188
217
182
201
216
206
149
165
220
201
224
210
217
230
229
202
211
257
188
204
193
216
136
159
204
180
266
241
179
161
173
223
242
197
150
237
225
181
202
119
218
249
194
174
177
249
185
231
230
153
192
243
193
241
235
148
235
228
236
190
166
89
162
199
154
167
104
181
204
202
229
166
246
166
199
182
222
209
183
193
236
212
244
177
177
208
206
141
191
221
151
162
179
189
147
189
198
145
239
237
212
229
222
223
182
218
253
252
153
112
200
210
194
215
235
256
239
170
195
164
196
196
159
184
196
210
245
256
209
221
185
194
165
178
166
227
176
233
288
195
233
217
178
173
176
171
186
192
228
255
151
259
164
202
174
199
232
204
222
172
206
168
137
155
163
159
195
225
219
235
186
205
252
210
235
151
213
242
203
246
209
208
176
217
202
187
171
169
195
239
188
199
181
216
263
192
159
199
217
208
182
229
134
218
252
220
228
216
225
226
211
131
186
170
249
224
228
202
143
212
226
226
207
227
227
202
182
181
210
96
209
264
196
164
179
215
141
161
198
196
200
184
231
173
206
187
149
192
217
223
217
167
155
260
188
196
217
203
188
199
195
212
214
194
226
169
230
165
188
238
259
202
186
166
210
174
196
193
189
206
120
185
148
215
182
184
269
166
185
222
188
222
156
241
231
202
246
181
192
249
164
211
240
214
259
137
230
124
183
170
163
200
207
169
172
208
152
214
184
201
186
163
190
209
197
110
179
192
191
204
185
121
192
212
220
97
229
221
208
182
258
159
253
203
203
160
236
161
161
185
174
198
182
203
223
162
182
197
191
211
231
173
203
220
170
225
181
203
209
236
200
184
183
259
245
217
170
228
175
180
233
221
182
198
209
191
182
144
228
167
203
217
165
184
214
206
234
265
182
198
191
259
188
204
177
224
224
260
173
242
201
160
172
178
235
195
203
192
201
143
253
274
168
207
191
173
190
181
241
231
174
188
235
156
152
175
253
161
229
224
201
120
195
225
148
153
205
163
214
243
191
147
180
185
183
147
153
255
233
205
195
174
193
192
211
203
210
218
204
123
157
162
209
195
213
284
208
186
225
172
146
166
248
205
219
246
168
153
178
195
177
195
155
156
192
154
139
163
245
249
182
217
109
196
222
251
255
256
244
205
196
221
211
241
220
208
159
162
230
240
201
185
209
177
251
236
184
245
250
209
259
160
158
203
241
134
234
155
268
208
183
236
196
138
136
227
230
242
216
166
170
251
190
270
210
210
252
190
212
235
106
160
216
168
199
212
230
193
187
206
228
193
264
212
199
220
183
182
153
176
226
154
171
174
210
220
197
179
265
185
222
206
226
219
163
215
242
204
135
209
195
179
205
218
259
176
185
153
188
254
188
231
228
191
164
188
168
153
234
200
145
229
206
203
220
195
233
120
205
181
247
252
220
266
199
188
169
235
177
182
191
248
125
234
199
219
177
131
186
179
169
188
231
265
225
218
152
146
203
222
152
208
251
114
157
166
139
177
226
186
199
252
203
225
153
154
224
169
159
205
164
181
155
228
202
181
209
204
240
158
180
181
173
176
239
154
172
198
220
205
138
235
220
211
234
220
147
178
205
193
207
258
212
177
228
226
199
196
230
200
181
206
161
148
192
156
160
221
150
237
197
232
215
148
261
128
231
184
222
143
181
237
208
240
211
198
176
218
199
183
141
137
242
173
175
178
252
211
136
222
227
256
217
212
151
139
135
201
233
205
176
199
201
209
238
245
164
157
208
158
158
199
173
257
215
163
186
159
175
179
176
218
231
252
164
213
218
243
193
231
185
220
234
209
185
208
233
236
171
197
185
152
118
252
219
182
239
227
234
180
244
211
220
212
203
183
233
206
248
245
225
264
190
217
148
247
233
156
220
198
252
159
210
170
232
182
183
257
172
191
143
265
169
195
201
215
174
181
195
201
186
181
211
213
192
156
227
226
185
222
160
184
226
180
145
230
192
105
236
243
246
199
211
181
242
195
250
195
161
163
142
187
221
237
223
227
202
182
165
161
194
171
227
232
242
197
128
190
227
177
216
232
247
250
217
205
172
233
205
245
184
183
191
188
222
137
137
157
187
199
211
145
205
252
239
207
206
209
205
181
230
232
229
212
177
173
222
238
194
223
212
178
238
237
233
187
202
236
204
206
234
133
208
183
193
182
216
226
158
217
248
171
240
188
226
228
236
160
143
212
256
218
243
195
250
181
179
207
147
260
162
230
198
172
251
171
237
249
154
275
130
189
222
238
205
225
233
214
147
184
233
215
220
252
213
240
186
244
195
182
189
185
226
167
202
199
188
180
193
165
168
265
229
242
225
209
225
258
256
190
187
259
202
193
241
175
235
166
220
192
173
214
166
243
242
197
215
178
203
187
202
189
213
193
203
256
234
158
171
191
227
222
246
168
202
171
115
201
252
222
179
170
174
226
216
211
159
228
232
184
269
192
258
182
202
206
253
176
240
236
248
228
214
219
230
231
188
217
134
215
223
224
164
253
188
193
233
142
203
146
206
155
239
163
198
184
186
138
125
236
251
171
185
182
191
170
220
207
195
177
211
208
195
203
269
235
247
242
156
207
200
136
216
205
171
213
179
221
219
192
190
255
139
205
148
212
277
200
210
222
214
232
184
252
221
205
194
212
187
244
227
168
207
247
210
175
168
208
207
198
184
174
218
188
220
283
235
189
249
193
194
227
210
142
202
206
136
165
251
165
195
263
210
213
209
204
172
186
177
231
159
288
243
203
241
248
249
202
225
159
178
227
202
142
208
198
203
203
181
218
183
222
272
209
211
193
250
243
195
216
236
222
192
195
206
169
201
214
230
171
235
188
178
179
227
184
181
214
218
207
279
207
184
178
176
170
226
221
209
156
221
169
218
189
232
221
211
137
199
198
248
223
209
193
212
212
130
188
211
197
193
155
229
228
219
230
181
253
259
228
227
237
190
196
203
182
182
168
223
232
263
185
228
174
173
155
229
244
173
154
211
156
203
185
200
174
252
198
239
181
138
255
220
193
186
213
145
207
210
228
237
187
193
243
180
179
262
210
230
213
200
187
182
149
201
196
220
175
225
209
157
240
223
242
234
196
159
201
180
176
210
190
208
219
145
193
161
223
174
201
150
181
247
133
206
267
226
245
173
238
186
235
240
239
133
222
205
183
195
205
255
210
231
228
151
202
205
247
132
188
177
264
262
187
158
153
166
160
190
244
198
234
173
229
162
144
227
117
167
173
147
200
237
152
239
185
288
191
193
191
188
215
226
240
177
212
169
179
175
272
169
203
171
260
235
213
188
239
178
178
212
246
181
251
196
223
224
231
147
122
245
289
206
219
224
190
244
250
211
272
171
161
182
275
175
155
189
203
184
197
205
163
235
193
197
256
164
200
147
182
190
243
254
266
212
199
150
167
218
208
137
136
220
218
263
197
215
253
164
279
215
248
190
174
227
198
234
190
174
194
123
254
186
187
209
239
213
206
204
217
237
159
202
219
216
193
194
195
147
200
249
218
234
179
187
159
226
186
243
163
251
242
206
226
249
216
159
172
181
203
180
283
202
241
246
195
174
229
159
170
227
171
250
222
255
182
165
189
223
188
170
216
204
228
238
212
153
186
152
145
223
228
189
201
175
206
217
247
172
185
200
205
240
193
184
252
143
184
197
164
220
221
229
228
202
179
190
211
238
195
180
195
228
132
168
104
257
208
233
142
172
216
155
181
180
218
213
235
236
160
191
197
263
230
219
219
244
187
205
247
170
160
175
176
193
289
253
250
213
238
181
256
186
182
182
172
195
173
223
249
210
192
228
169
179
152
206
199
160
172
233
198
216
149
197
161
228
211
158
239
228
266
217
208
210
199
217
135
239
232
159
237
138
176
183
204
220
304
265
282
269
186
184
156
260
199
187
185
197
184
189
199
227
158
217
242
209
151
202
167
171
250
167
176
198
200
227
175
184
240
273
178
285
200
238
201
173
192
154
242
250
153
154
210
190
223
205
209
217
224
191
168
256
177
195
204
258
243
164
219
199
227
198
205
226
145
197
212
191
204
225
203
197
214
182
272
206
238
215
235
140
185
187
195
178
192
203
171
226
208
201
221
199
186
192
185
165
220
189
192
219
222
173
196
210
238
215
195
212
222
272
186
206
190
207
154
186
214
234
234
234
212
192
128
212
233
187
230
206
197
167
233
165
177
256
247
248
171
110
220
206
200
116
180
187
172
241
156
156
139
239
166
181
178
183
186
160
210
215
236
215
230
231
207
193
217
211
197
188
234
182
246
220
200
237
200
175
172
243
256
180
255
228
238
235
181
129
146
172
201
122
198
239
225
221
205
182
161
231
227
220
210
224
279
208
222
194
203
174
191
259
185
193
145
231
151
200
187
219
184
234
187
152
184
190
232
204
173
183
158
214
227
225
185
141
236
173
189
214
195
252
217
199
200
210
184
238
132
186
193
155
185
206
193
168
187
264
213
203
214
178
261
201
178
199
230
173
143
177
177
237
245
164
148
173
176
266
218
185
188
209
243
178
222
235
195
153
198
230
179
217
190
237
197
237
163
207
168
171
216
120
218
174
201
185
245
255
228
187
197
211
163
221
182
205
261
210
185
231
219
155
198
211
234
170
214
204
143
262
262
257
257
200
202
174
202
152
208
221
217
157
180
230
224
300
166
163
229
197
206
210
163
226
173
195
220
224
192
232
261
213
190
217
189
194
205
176
184
174
248
249
195
141
170
208
234
158
220
229
175
175
198
182
232
208
238
205
235
192
215
224
235
176
260
241
228
182
121
232
191
221
159
225
196
269
171
226
170
212
218
206
234
169
177
175
192
230
206
218
196
245
150
184
186
180
252
169
219
145
256
227
148
193
179
206
210
203
219
176
257
232
212
266
168
158
188
181
268
179
262
223
233
164
214
204
242
254
176
180
204
221
232
268
151
151
142
259
217
203
168
229
232
250
170
198
151
243
188
244
235
209
206
202
177
169
180
242
203
155
235
216
228
171
231
216
207
219
171
211
170
229
174
247
111
212
164
210
265
232
207
234
187
218
221
220
233
205
223
181
191
207
133
217
259
259
204
242
188
234
236
177
188
186
160
198
127
239
165
236
244
187
192
155
162
176
202
202
211
216
148
164
185
206
188
196
224
223
235
178
210
244
235
182
157
164
142
205
236
263
174
191
164
253
265
175
174
214
221
179
245
188
202
195
199
206
224
166
230
235
232
184
228
210
210
211
156
178
216
262
157
217
211
159
196
212
172
176
154
211
238
214
207
126
233
161
215
246
195
182
185
266
143
188
254
234
232
192
226
246
219
240
221
212
224
226
181
178
228
203
217
183
212
216
184
154
177
300
178
159
174
171
179
216
255
239
212
205
200
177
203
223
168
186
169
187
197
181
139
198
243
211
235
183
227
214
216
227
164
223
210
155
248
171
217
161
102
148
172
230
172
195
218
168
169
225
223
157
260
159
183
156
164
185
186
150
218
221
215
182
161
202
149
199
204
226
183
173
199
138
166
191
217
171
247
210
207
132
198
220
183
198
160
224
222
215
197
192
252
271
195
165
161
113
220
190
240
225
220
228
171
161
214
220
162
172
181
166
185
153
253
189
226
167
190
181
237
179
234
159
155
208
185
161
268
193
168
247
228
252
184
195
177
171
224
158
178
147
233
182
192
206
219
136
145
165
174
199
230
214
213
199
251
216
167
243
192
137
187
237
236
196
266
166
166
191
202
234
238
208
185
274
242
247
172
253
234
187
158
178
178
224
171
262
207
174
267
234
218
198
223
235
202
242
219
239
128
188
181
241
156
218
213
229
254
223
173
165
226
158
246
208
222
229
225
215
244
183
181
181
210
207
211
148
185
158
192
192
189
192
253
157
218
219
182
186
184
188
199
165
157
216
121
111
232
175
216
249
170
278
200
244
215
229
220
258
173
184
247
235
206
212
199
252
243
250
211
191
214
155
130
186
179
193
169
185
198
197
222
214
188
161
207
180
162
225
170
222
206
226
258
191
281
195
182
141
192
206
232
234
214
153
238
211
229
164
177
202
198
186
214
182
197
181
226
205
251
128
216
185
203
197
208
259
142
166
155
218
234
181
182
218
234
148
181
216
238
204
231
233
190
135
237
186
181
246
174
165
240
191
255
223
235
199
172
124
169
239
194
181
173
210
259
188
193
163
173
238
218
208
195
183
194
202
155
182
220
201
218
196
238
204
195
141
195
215
203
200
213
191
195
220
236
140
195
254
177
139
206
186
217
229
173
212
184
198
213
165
228
288
132
191
166
204
191
223
244
170
167
215
208
142
208
197
252
216
201
200
200
218
226
208
194
181
174
195
220
177
110
185
168
194
239
194
123
229
180
155
245
144
182
232
224
244
195
183
209
163
224
220
213
181
233
225
159
212
202
232
204
182
184
185
183
193
219
165
171
220
204
189
243
251
197
195
211
241
230
247
200
199
201
203
208
186
191
154
269
201
177
193
244
213
186
196
187
247
185
193
215
220
162
246
148
165
152
200
166
201
175
239
193
205
233
131
212
242
224
182
187
175
177
170
188
180
228
249
171
224
204
99
198
176
183
179
160
127
184
180
205
179
197
255
218
185
217
215
177
172
221
193
204
225
212
154
261
214
170
154
154
214
214
223
263
174
229
165
190
244
270
158
188
112
191
213
204
167
190
138
268
169
176
224
137
170
132
228
197
210
163
214
224
177
231
187
220
231
194
241
214
155
207
213
224
210
150
141
223
225
166
238
189
129
178
209
215
200
148
191
275
139
212
196
229
262
257
121
185
216
183
251
178
221
159
219
218
186
241
218
219
215
226
215
248
194
179
248
156
177
168
229
183
248
182
201
185
193
227
131
166
219
192
197
155
127
183
189
215
220
182
218
216
169
175
217
216
181
206
264
229
170
216
183
258
172
199
150
226
117
200
257
191
201
134
180
106
208
177
169
213
253
159
233
168
199
234
205
212
182
167
185
229
218
280
231
171
209
249
203
167
229
272
174
236
211
197
137
204
197
208
237
217
205
152
172
191
188
228
171
200
177
230
151
251
199
194
251
247
207
240
228
182
207
181
236
247
162
252
104
166
158
165
158
241
184
190
248
228
200
203
179
127
171
265
157
199
166
156
225
251
235
190
274
219
228
187
242
224
213
229
155
161
164
172
217
178
202
190
196
181
269
199
182
184
151
176
180
222
185
228
171
164
179
204
166
266
221
216
216
170
159
166
178
208
258
201
95
196
221
261
207
214
221
247
209
220
191
122
241
162
240
298
164
164
213
211
234
256
177
264
181
192
185
224
220
185
190
169
220
206
246
188
200
150
188
188
132
234
224
173
216
196
184
197
166
263
180
214
165
220
253
191
229
158
231
202
189
221
225
258
236
170
227
179
206
257
191
199
194
179
151
193
199
170
137
223
207
194
211
231
267
158
216
230
195
207
200
126
213
217
153
168
216
251
160
209
219
177
178
234
202
197
131
173
183
178
193
201
237
191
184
186
180
212
171
253
223
249
273
188
212
225
233
96
215
176
151
242
261
154
206
153
215
216
207
234
205
191
219
187
210
168
205
156
194
196
167
255
211
180
206
176
187
234
188
202
201
185
212
172
200
161
243
244
195
161
165
190
229
209
154
173
192
190
187
143
233
239
166
147
190
193
238
206
204
211
230
255
248
226
149
230
146
233
230
187
249
169
231
196
206
187
228
231
207
193
230
247
299
180
232
240
196
219
190
263
230
223
259
178
180
204
193
124
207
245
238
204
251
194
137
163
191
233
211
211
160
221
233
178
221
220
217
211
158
155
219
198
193
238
209
231
228
192
233
221
238
197
179
200
210
177
129
158
207
264
228
219
197
233
183
196
232
204
177
175
199
253
228
171
206
229
179
271
245
176
190
150
171
245
181
219
171
262
185
158
148
187
143
179
252
136
166
170
179
181
197
179
166
230
153
182
214
195
247
215
135
232
172
160
202
117
239
168
189
205
237
222
246
210
132
208
207
156
214
193
184
177
202
225
224
175
220
212
172
195
199
173
208
178
231
141
205
242
220
225
146
152
216
221
176
237
133
260
191
169
236
198
218
242
233
249
172
209
225
203
210
168
138
237
238
273
188
106
170
190
196
207
213
241
233
220
240
215
179
207
230
229
222
255
252
159
202
173
207
152
172
175
221
221
234
152
178
251
198
180
131
205
193
280
248
217
174
146
224
158
172
186
250
194
150
189
192
147
193
199
226
233
154
210
172
159
225
172
141
119
203
185
193
162
159
266
228
269
212
197
163
225
199
259
149
207
235
174
225
199
134
228
177
175
176
150
202
158
165
206
175
144
201
221
158
125
212
200
216
210
149
253
224
184
268
273
221
223
200
198
268
218
199
167
171
177
190
264
194
211
203
156
232
158
193
203
185
231
192
150
170
208
217
161
263
182
233
230
131
154
230
195
254
208
226
186
242
131
180
211
231
187
225
186
201
128
194
212
246
201
147
216
256
190
225
206
135
240
195
212
221
216
177
191
204
249
251
184
202
218
197
266
238
197
194
237
128
187
207
242
214
221
214
188
211
211
233
227
195
128
198
215
218
191
229
275
209
201
227
176
164
203
177
223
173
217
206
199
200
218
153
164
193
177
170
203
165
237
170
183
247
239
220
120
220
145
228
220
217
207
170
150
180
233
230
190
207
167
231
210
153
189
208
228
232
162
203
218
232
152
188
215
226
192
196
149
143
205
235
233
226
205
171
170
144
229
203
200
246
227
251
203
236
161
227
209
154
244
274
210
193
183
187
145
158
189
183
216
192
153
179
210
180
147
191
217
225
177
153
257
234
206
192
200
203
172
218
186
245
247
200
183
256
204
207
195
176
158
201
237
194
227
172
219
165
259
165
159
186
192
194
229
208
174
184
198
121
191
182
207
256
223
224
191
194
154
186
200
243
252
198
166
204
199
186
83
175
230
240
244
193
261
142
249
283
186
215
171
161
179
229
180
236
193
117
207
217
214
160
223
201
181
198
212
216
178
177
186
253
185
142
165
202
220
168
213
205
205
208
214
177
205
266
199
187
189
158
283
263
186
230
162
214
206
214
129
185
261
172
177
162
242
234
262
180
214
217
188
219
179
241
181
217
204
156
220
209
212
198
175
189
254
213
240
199
245
208
199
180
198
219
192
197
147
134
211
137
242
195
203
148
192
166
190
222
186
237
201
241
176
258
220
214
196
211
173
220
171
161
166
235
183
235
233
228
182
219
201
171
214
187
225
236
198
236
183
164
214
108
198
188
202
240
183
150
215
179
233
171
228
196
180
174
205
151
246
223
244
203
215
176
213
191
152
248
162
191
236
209
217
203
188
183
81
292
257
219
156
201
180
151
214
220
238
192
215
251
214
199
220
163
132
244
142
248
175
254
129
243
229
185
236
208
238
218
201
200
181
151
216
182
190
192
226
194
167
169
227
225
233
238
197
128
173
204
232
170
185
215
162
177
217
274
194
187
183
240
222
254
264
218
185
160
176
218
226
256
229
239
210
210
177
153
207
212
252
167
176
181
227
266
246
197
243
204
185
150
158
220
268
113
227
201
232
80
200
191
137
181
172
149
167
236
244
166
155
181
225
147
165
178
159
201
275
241
179
212
233
163
230
176
152
259
231
188
211
218
185
218
230
220
164
156
250
147
234
173
208
158
266
213
234
231
235
151
205
220
169
215
256
163
186
185
204
142
201
219
236
120
266
232
225
178
206
110
187
213
167
191
149
215
245
212
207
207
194
185
167
204
180
148
228
165
168
158
141
201
261
231
206
225
133
196
213
178
196
206
147
178
171
182
235
149
205
224
259
170
224
233
195
182
235
244
195
206
206
126
165
257
173
208
169
228
174
185
153
182
206
137
205
127
171
190
193
213
144
186
143
200
218
243
192
146
248
202
169
194
191
229
141
250
175
133
151
189
169
307
147
231
168
192
187
223
227
209
181
195
199
199
143
129
221
170
182
154
206
209
171
177
220
175
157
275
240
237
170
209
140
218
154
196
217
160
217
165
126
202
193
183
153
141
168
149
165
116
252
183
192
214
193
233
177
247
254
220
253
268
199
265
178
142
92
193
199
225
126
216
203
213
198
219
174
191
177
169
199
207
228
223
246
245
230
164
138
186
217
238
107
201
221
148
205
217
166
210
199
232
215
219
210
251
177
194
250
222
206
146
168
187
161
214
230
190
227
257
210
175
171
146
244
148
191
219
247
211
171
253
220
195
202
163
184
209
172
229
222
218
212
193
224
237
207
222
153
125
174
179
150
243
178
139
192
199
202
259
221
102
130
171
201
242
239
176
210
203
233
201
154
117
183
212
213
259
223
222
175
151
233
169
187
242
173
157
180
173
200
213
224
154
199
159
180
178
197
237
193
244
160
195
187
195
166
180
175
187
229
176
199
191
191
217
236
196
237
166
147
237
219
226
163
189
196
195
218
209
144
192
234
197
161
222
233
191
184
215
226
204
201
200
234
192
182
225
204
194
251
179
177
219
162
205
183
170
240
226
166
213
240
177
216
178
155
184
180
180
185
230
201
196
169
173
210
207
177
226
250
175
204
184
268
219
195
187
220
296
261
221
205
113
231
169
267
167
188
189
223
226
153
185
170
178
203
221
171
168
222
196
216
144
185
212
157
154
242
180
182
270
204
155
218
185
252
177
178
243
185
166
229
232
198
185
245
69
163
267
257
178
204
185
231
189
237
185
168
209
199
198
173
163
186
166
206
181
142
210
173
223
210
216
165
174
235
221
218
227
169
196
222
264
171
222
164
206
201
127
143
194
186
184
171
176
240
252
215
178
178
220
222
194
169
203
187
216
139
124
215
248
204
171
245
208
266
197
198
197
151
215
236
139
200
207
180
194
215
200
218
179
182
184
165
195
219
176
184
253
174
116
229
199
242
176
202
229
171
226
175
146
175
136
222
201
224
220
146
211
139
173
216
229
183
298
220
171
214
211
188
205
251
201
205
219
217
224
176
197
184
171
245
192
223
147
172
201
226
206
212
190
206
185
256
224
212
174
189
203
154
197
176
211
147
232
226
224
193
190
158
154
216
196
178
203
172
213
211
201
242
228
159
204
228
224
192
160
162
219
199
236
211
170
218
215
185
174
211
193
233
193
214
206
167
180
202
147
227
176
235
252
186
157
195
257
212
197
196
185
242
189
163
189
240
217
163
233
215
158
204
190
156
219
174
258
155
251
277
232
210
164
164
195
220
201
220
133
226
201
135
289
153
119
227
216
243
264
154
221
177
178
242
277
231
189
147
162
210
176
192
166
131
191
143
155
187
206
153
220
198
176
194
205
149
242
189
206
195
198
240
221
178
191
253
233
162
171
198
270
204
194
179
181
232
160
222
176
169
219
177
182
140
229
220
243
142
180
164
248
223
236
204
188
184
194
137
166
223
184
214
235
229
219
242
174
221
168
231
199
175
170
207
219
167
178
174
172
158
215
197
222
131
198
223
202
186
213
151
198
196
208
191
222
206
190
197
222
233
238
233
169
257
180
111
226
199
197
237
151
208
254
182
222
179
181
242
180
157
195
202
185
129
194
129
210
188
264
216
197
229
126
153
201
179
138
264
194
204
153
220
189
175
154
251
195
156
116
236
178
212
214
147
206
100
166
217
159
243
233
193
175
197
236
195
178
205
234
226
212
221
188
235
175
204
209
256
179
194
243
218
222
153
223
208
225
195
196
222
211
161
184
213
163
226
132
170
203
186
209
215
163
214
218
244
220
275
188
205
218
133
250
227
185
191
217
237
194
169
235
222
147
290
227
190
202
204
169
207
191
252
138
201
172
265
223
210
140
201
210
203
156
216
183
206
176
227
209
160
204
187
161
183
167
173
212
243
179
225
166
199
192
182
194
156
206
159
200
228
207
187
205
180
171
190
178
215
186
208
245
217
180
216
180
122
120
221
255
185
166
209
187
172
194
195
145
248
189
229
224
204
210
148
167
138
189
235
203
211
263
224
199
175
214
180
222
196
209
213
201
201
215
188
120
220
217
195
211
283
221
177
135
181
226
219
206
194
199
196
288
191
171
217
277
215
179
210
185
200
196
190
218
216
188
214
177
150
190
196
245
229
200
195
256
208
223
244
284
239
154
199
192
245
269
241
181
206
235
192
222
193
191
261
219
235
213
206
294
263
219
202
239
99
216
227
203
154
233
204
204
215
184
204
269
224
190
201
213
232
196
164
261
230
198
173
165
244
213
215
176
169
166
195
262
256
235
193
126
215
186
211
176
216
203
179
177
165
197
156
151
241
191
158
206
174
179
179
190
220
222
166
160
233
157
212
239
194
192
231
197
179
141
239
239
234
201
172
236
229
160
237
225
219
166
207
193
182
202
225
192
236
185
215
236
166
181
219
167
229
207
213
198
241
240
241
195
181
206
153
237
198
134
140
181
228
194
177
199
195
169
204
177
136
150
227
208
209
169
193
191
125
250
167
155
192
159
226
223
125
243
258
216
177
201
253
226
182
221
176
263
163
190
205
219
156
202
237
225
214
229
227
150
220
156
146
241
168
189
195
210
158
176
197
221
230
204
236
179
149
206
187
153
225
231
150
187
234
207
231
227
275
152
203
174
216
237
200
202
182
203
243
246
215
166
199
183
219
171
195
158
182
233
200
171
165
192
194
225
178
250
206
238
241
213
169
231
229
234
200
109
184
224
179
176
217
247
203
188
219
277
151
231
266
220
191
220
191
128
232
213
202
240
190
185
173
171
172
179
222
206
205
228
203
170
182
122
184
237
166
227
230
209
263
205
222
230
183
117
183
244
193
284
225
207
161
215
209
124
202
212
185
180
221
226
181
164
196
126
186
222
233
196
210
209
167
164
221
170
256
168
124
243
178
176
202
197
224
205
253
202
147
202
197
214
192
197
257
173
253
206
170
206
237
213
188
201
220
113
254
155
198
224
268
128
196
161
202
183
178
203
207
216
205
230
268
205
228
177
225
160
177
226
196
179
149
136
208
191
258
214
218
263
175
233
183
181
240
219
176
197
141
169
221
255
216
248
165
228
215
199
258
180
166
166
210
81
263
192
133
225
175
209
192
198
219
211
249
210
243
225
199
233
241
241
224
164
195
197
170
203
234
222
252
214
190
182
181
171
210
194
280
192
170
180
240
158
195
167
175
200
168
202
203
170
167
202
189
234
193
205
180
224
163
265
172
246
193
189
195
220
208
179
175
224
216
178
181
213
176
195
275
229
232
226
213
125
204
139
206
223
259
204
217
187
214
244
213
188
279
273
208
151
210
195
198
153
183
176
216
225
183
235
212
185
209
151
198
134
207
137
191
215
232
231
172
169
214
224
243
228
144
191
248
255
196
203
288
202
139
226
133
201
197
246
162
145
201
176
196
198
209
253
200
181
184
214
212
152
207
220
207
215
233
148
235
256
206
193
212
200
200
208
214
184
169
212
133
209
189
209
209
204
221
162
207
203
134
213
167
165
222
174
185
138
187
220
237
249
285
211
205
204
249
149
246
227
143
232
199
226
211
241
281
269
187
212
204
201
209
189
171
256
201
213
200
220
246
169
168
209
192
241
207
256
219
164
259
131
223
188
229
179
243
216
205
246
169
178
229
235
251
203
225
214
164
142
251
119
218
205
237
183
235
184
264
248
193
182
209
207
159
236
205
172
178
206
176
201
175
174
178
234
275
245
231
221
174
168
171
177
169
177
236
233
217
202
213
243
192
207
206
164
198
194
168
220
168
200
150
232
232
231
209
171
228
172
242
294
226
242
241
140
207
203
156
148
117
244
185
246
252
221
271
233
227
203
187
156
147
277
232
197
195
234
211
218
250
187
149
188
160
238
202
163
190
182
197
196
184
205
231
151
174
218
254
236
145
210
223
216
252
137
209
142
199
173
177
193
235
200
174
241
183
227
230
208
208
176
131
196
209
158
192
261
219
183
165
176
217
192
192
240
253
188
215
232
197
211
196
218
194
211
236
230
206
148
249
240
126
191
265
211
229
207
223
168
210
215
229
199
237
249
172
238
190
188
157
244
232
170
231
195
191
218
188
216
199
235
237
230
212
200
186
177
227
213
170
236
217
143
244
220
234
239
192
211
199
181
185
137
240
182
216
220
255
233
220
239
210
144
189
139
165
202
204
256
186
220
171
205
210
160
203
163
239
202
110
257
145
243
148
207
142
260
189
200
200
187
243
177
217
178
239
275
243
192
164
219
166
242
191
224
197
232
155
228
212
195
222
209
168
260
263
183
199
180
183
165
242
210
192
159
224
238
172
205
263
224
205
178
179
200
179
206
192
176
193
174
219
158
185
207
241
152
116
181
186
183
206
182
182
166
190
210
191
213
194
218
207
282
193
176
164
140
169
214
154
235
161
216
151
222
174
218
172
170
203
194
202
188
253
258
243
185
190
170
178
225
245
215
197
249
213
176
248
206
184
154
233
211
202
182
158
274
211
283
252
176
257
215
221
186
261
214
182
214
173
223
192
259
162
207
162
224
209
183
214
186
166
268
231
158
248
238
146
220
157
202
182
217
148
238
220
194
224
163
183
190
165
176
246
182
222
202
247
200
222
191
136
250
90
204
281
240
229
140
114
212
162
200
186
168
206
255
177
206
210
188
234
242
228
227
216
217
195
154
203
234
215
210
170
257
237
179
184
188
169
240
211
238
281
193
151
203
194
189
199
191
232
218
200
178
182
226
156
197
231
246
214
194
253
201
219
194
223
236
199
249
232
208
253
239
154
189
177
211
221
280
287
218
154
207
199
114
237
256
265
209
207
215
202
151
206
292
225
150
159
147
191
217
180
132
247
231
204
257
239
196
207
127
231
172
196
161
205
204
182
159
210
211
208
165
168
142
214
261
237
162
157
193
196
203
207
199
221
156
286
220
172
213
214
198
234
248
152
195
131
233
149
158
177
170
131
178
200
162
219
156
190
206
179
215
203
164
205
178
151
219
207
118
121
245
191
180
272
195
232
220
203
143
153
202
194
146
208
202
224
231
207
219
201
219
195
234
151
208
147
217
209
190
233
202
242
173
230
197
203
233
216
169
212
220
263
186
202
171
161
165
216
224
197
217
201
171
168
163
181
197
125
153
271
267
244
128
187
193
219
145
211
193
195
207
208
279
235
222
260
262
188
227
257
193
143
214
181
196
226
234
224
182
179
218
251
243
207
218
173
194
166
237
209
241
250
260
216
165
267
213
206
152
191
190
214
171
185
209
181
254
230
174
142
266
255
147
218
180
210
211
216
187
231
173
221
216
198
167
168
234
198
166
182
193
277
194
214
145
255
197
228
236
194
196
216
181
209
195
161
245
184
211
199
211
176
158
190
183
191
198
197
212
178
147
227
238
189
187
166
199
153
211
183
225
168
188
235
237
211
193
170
180
201
147
128
188
188
210
217
253
243
255
151
165
216
167
176
173
181
202
215
121
259
184
195
223
148
173
257
194
155
141
201
171
148
163
171
118
152
219
200
161
248
204
243
122
150
145
188
206
202
195
196
150
221
229
231
123
173
163
149
175
223
236
220
219
247
140
163
217
203
190
200
207
162
253
213
229
186
138
220
163
207
197
186
220
164
212
158
225
262
188
181
135
232
195
228
232
176
198
242
191
226
187
125
202
189
181
212
215
263
233
150
176
190
205
204
186
181
186
202
157
185
141
162
162
241
207
203
179
212
207
224
217
244
202
163
208
195
186
201
260
209
189
228
161
208
222
219
127
200
172
200
217
285
197
138
188
215
185
220
230
215
248
206
212
175
229
206
202
201
182
182
239
211
256
199
204
185
229
190
135
195
150
164
210
182
248
206
183
173
166
183
217
209
236
237
212
176
224
257
227
225
214
236
181
284
172
238
214
248
211
218
179
155
179
197
173
145
209
260
198
172
218
214
197
180
156
175
189
194
197
167
223
218
231
190
200
231
264
184
221
214
198
243
191
151
220
237
198
277
150
208
128
210
187
269
107
179
234
143
222
183
204
231
245
202
219
209
156
115
183
126
232
207
234
194
236
186
219
184
189
211
221
216
201
213
229
223
236
219
179
229
194
202
243
235
115
230
172
204
221
236
218
193
192
228
161
168
197
232
171
252
180
233
183
182
223
206
273
163
230
203
184
124
204
161
240
170
227
201
186
193
159
143
198
236
126
168
190
190
174
191
264
268
181
262
225
141
230
254
143
225
191
260
196
217
226
184
204
189
243
168
234
242
195
233
191
193
143
178
233
204
224
143
236
190
185
176
177
241
121
174
236
188
210
178
178
165
228
162
255
222
155
230
163
220
208
183
173
229
237
188
170
179
151
218
184
243
236
241
209
222
188
198
180
177
154
230
214
146
192
148
178
211
212
212
212
131
210
175
188
170
223
151
242
165
243
148
223
212
265
163
172
213
233
211
142
155
215
186
216
255
199
201
227
218
236
137
169
240
232
229
224
186
197
239
258
221
166
196
231
212
232
181
184
206
185
151
220
209
197
253
176
180
190
193
228
197
225
208
159
219
170
160
246
127
196
215
177
118
194
247
196
227
131
237
196
199
185
205
193
258
164
229
155
169
254
213
224
177
163
205
174
225
179
136
249
178
218
189
225
163
168
146
175
220
215
247
245
220
228
172
203
236
168
232
199
179
219
156
205
202
209
199
195
132
225
191
237
177
156
175
188
201
178
170
203
262
178
221
201
196
177
224
186
200
218
241
221
244
227
152
234
274
229
189
202
223
166
195
194
206
198
174
191
164
169
197
144
186
170
157
187
234
234
180
231
158
186
207
156
215
205
192
187
246
231
227
230
268
239
219
205
204
227
175
197
204
167
216
197
195
194
271
142
160
152
215
223
207
143
203
197
183
230
169
259
185
214
245
194
186
159
239
188
179
181
225
184
169
199
193
237
205
157
211
260
203
236
196
259
208
181
172
185
187
153
233
205
167
204
210
187
240
223
225
193
200
157
232
224
204
217
213
148
184
201
207
204
211
170
185
226
231
163
234
207
221
232
222
136
193
147
138
202
176
197
222
198
168
191
157
173
107
186
203
209
172
188
255
188
212
170
140
202
228
193
203
202
143
264
235
213
153
204
262
244
198
174
201
197
186
150
226
181
169
193
186
245
173
253
191
212
180
155
178
159
226
202
221
197
193
249
220
176
232
179
216
214
266
146
230
240
227
162
243
213
151
177
171
191
170
225
128
195
206
277
198
238
181
239
200
204
207
221
201
186
225
192
218
192
191
180
217
194
165
170
205
218
160
248
164
190
235
175
207
234
223
182
186
179
219
185
199
200
199
180
196
266
251
223
229
232
237
149
240
161
172
192
197
212
190
258
171
226
176
182
206
196
183
224
192
211
212
211
239
184
229
247
185
203
211
200
160
240
221
183
171
185
181
187
179
181
159
206
202
196
208
161
231
199
211
194
242
164
205
229
269
208
263
172
226
235
226
202
156
204
204
208
209
215
191
182
151
210
152
189
168
198
210
213
187
149
149
165
247
185
244
218
161
174
251
179
199
213
160
206
182
190
253
177
228
233
265
237
180
155
184
229
222
201
229
178
203
188
261
192
224
175
185
223
268
127
186
247
226
240
214
213
184
206
198
200
159
229
208
255
188
178
198
134
190
180
258
185
276
182
254
190
222
136
207
175
206
200
161
174
235
142
210
228
135
196
118
247
171
152
195
235
209
178
195
268
211
193
233
190
181
219
168
207
211
193
183
174
188
211
218
220
235
260
231
198
223
168
221
182
198
132
188
201
246
188
200
259
231
212
245
216
255
240
184
129
266
229
195
259
175
145
222
194
169
176
218
158
227
168
112
190
193
181
193
199
266
196
199
208
244
173
200
190
207
158
275
267
202
146
204
238
220
202
213
225
187
159
197
185
249
145
215
269
142
194
177
185
219
201
213
192
200
231
230
168
202
201
180
220
235
214
215
204
163
225
249
260
194
193
223
220
185
232
213
229
226
250
225
250
200
224
203
170
209
165
230
169
167
224
221
215
233
191
164
208
171
251
239
127
189
146
228
167
198
188
197
180
229
205
224
278
152
254
251
179
249
211
153
206
213
198
158
185
180
195
254
230
250
239
168
234
214
254
144
164
213
216
200
141
141
215
208
163
218
145
215
219
225
177
221
226
228
174
179
215
149
165
165
180
271
159
175
216
194
211
202
183
205
198
147
245
196
198
231
222
192
184
171
192
135
173
195
145
196
219
168
162
139
209
176
216
236
228
153
272
205
226
187
181
214
222
151
218
110
247
245
218
209
195
245
226
185
142
204
151
239
251
184
232
202
169
234
209
197
163
188
169
197
217
208
262
202
190
148
253
238
159
221
182
221
252
211
221
159
255
222
189
215
228
222
165
118
216
251
184
230
185
157
196
169
122
255
163
246
187
236
200
189
235
176
143
254
193
248
152
218
156
180
216
227
197
221
257
242
189
80
225
177
197
187
159
193
240
228
264
152
167
204
275
184
166
146
169
257
201
226
149
220
206
249
187
207
187
202
183
194
136
229
196
237
164
159
153
196
267
234
264
204
206
234
218
197
204
198
180
210
226
168
180
236
148
180
177
202
252
196
241
160
267
101
159
137
190
218
202
222
193
194
235
180
194
181
204
144
165
182
250
193
229
190
185
138
176
221
181
284
216
138
187
262
238
148
222
139
176
200
192
162
192
178
186
229
183
244
198
213
205
260
265
167
262
201
220
177
169
257
152
184
169
178
231
172
144
189
151
205
259
164
234
211
233
189
224
110
175
146
200
206
239
194
145
170
192
177
217
191
117
233
180
205
119
210
224
128
110
220
195
147
238
232
190
221
202
205
144
113
163
220
220
233
173
243
148
229
124
181
213
172
217
245
151
168
206
247
157
260
215
187
172
206
210
213
201
216
194
212
128
231
227
205
159
225
199
186
218
188
159
175
230
213
172
207
147
192
165
119
94
255
190
266
220
206
202
160
216
241
152
214
146
218
196
174
179
161
214
186
219
211
158
197
184
175
189
220
178
297
196
255
173
133
232
203
209
187
244
226
254
207
181
246
201
157
275
209
256
156
158
217
212
250
193
203
204
206
146
194
212
241
200
156
259
228
207
150
209
199
141
214
203
188
165
161
209
192
244
206
182
140
195
155
212
170
197
250
175
169
221
203
210
222
216
213
236
220
198
259
188
227
199
239
225
160
234
182
179
255
146
243
204
185
172
199
260
168
168
187
214
201
222
199
234
194
175
183
172
148
214
219
215
180
129
217
182
207
223
201
191
233
247
232
198
230
232
269
181
219
187
231
175
230
206
211
202
171
208
202
214
180
159
192
196
187
203
258
179
158
227
192
181
204
237
225
157
178
147
240
250
157
213
165
206
203
238
170
166
185
202
232
177
186
227
217
191
217
202
182
220
216
170
232
209
191
218
163
225
240
211
155
201
213
196
171
266
189
246
206
189
256
167
189
161
211
181
194
304
183
231
189
211
198
216
258
169
164
165
171
238
210
199
219
161
173
116
206
257
181
137
172
212
185
276
218
123
213
189
169
160
196
234
252
205
231
198
186
180
195
206
220
184
190
277
192
239
206
183
227
214
187
208
224
148
162
194
170
212
177
138
212
187
144
140
238
189
203
207
163
154
170
214
193
189
202
222
183
185
205
175
150
183
250
234
214
197
253
187
133
175
118
195
163
205
158
139
218
174
215
199
177
111
229
231
169
246
208
199
151
203
218
255
156
170
176
128
196
248
197
178
173
261
230
183
148
209
203
204
193
254
208
200
176
201
178
217
208
244
186
198
192
194
221
165
167
217
187
194
191
168
228
204
188
231
182
211
201
223
149
215
186
193
191
216
211
246
164
172
235
180
142
243
171
158
139
223
212
232
215
191
197
207
200
146
215
205
201
221
257
230
255
165
158
224
208
202
187
155
169
197
141
190
212
224
181
142
220
196
132
135
208
189
199
148
206
194
190
189
192
182
186
186
236
181
165
184
234
206
142
118
200
222
176
195
202
202
183
130
191
281
166
231
220
212
175
235
236
231
209
189
184
201
232
195
189
235
215
189
195
178
175
210
226
259
155
168
189
172
140
220
183
157
198
196
238
223
170
140
166
192
205
220
202
185
157
203
141
230
221
208
204
241
181
232
103
152
222
250
174
247
248
213
215
179
241
246
236
183
207
123
175
250
119
208
176
160
253
237
213
192
265
231
164
231
168
257
193
118
168
211
158
213
227
185
195
162
224
207
227
301
196
231
221
193
204
221
157
266
138
148
146
200
175
201
200
207
200
179
246
211
170
200
178
218
296
211
246
166
168
218
163
158
233
252
207
186
218
220
198
248
232
153
188
216
151
143
188
183
222
234
202
165
176
219
177
229
231
204
217
187
193
240
195
146
209
163
226
228
221
187
248
257
163
220
99
220
201
214
169
245
180
203
179
211
212
216
189
208
154
145
239
218
204
215
149
277
163
171
186
234
201
228
201
204
214
197
193
160
181
190
136
165
193
230
218
194
204
192
206
126
218
180
183
198
170
166
194
175
186
154
224
214
234
219
196
234
265
185
188
202
266
104
201
171
162
176
192
162
249
265
217
179
227
245
170
188
163
172
176
162
157
225
151
202
191
197
197
201
184
223
181
226
187
199
223
218
217
221
204
234
134
216
213
213
185
261
229
244
174
194
178
217
174
191
160
251
203
186
254
197
245
229
141
205
213
197
212
230
188
257
234
118
188
233
250
153
172
166
185
170
213
202
239
200
148
170
188
149
233
256
216
212
228
146
168
184
174
223
206
178
230
204
251
191
168
200
188
147
243
222
192
214
236
213
210
154
233
213
163
222
209
258
198
169
233
151
274
251
213
206
203
170
210
200
224
174
232
173
235
212
196
230
136
144
173
168
252
156
212
165
162
115
265
177
226
187
152
157
221
193
141
208
220
210
251
160
203
173
182
210
211
205
195
173
201
228
190
164
265
252
172
242
136
164
153
213
146
219
151
187
220
234
169
229
201
155
213
136
184
179
218
154
184
164
212
181
230
206
223
248
180
294
214
246
143
261
192
176
229
122
156
250
153
262
219
276
138
234
183
78
189
204
219
213
169
181
185
211
187
154
171
231
193
256
218
164
233
214
190
243
252
209
198
253
181
206
262
200
157
214
171
160
182
204
185
174
177
202
166
181
173
196
182
136
182
215
193
244
236
158
173
187
157
253
165
177
228
161
190
208
218
223
214
204
276
214
136
164
218
177
134
226
212
222
161
246
231
157
238
238
207
243
130
172
207
201
269
223
183
136
183
232
217
114
152
176
153
227
168
192
245
182
251
184
204
202
210
149
231
174
198
142
178
172
204
205
202
234
157
174
161
180
135
247
177
183
155
209
259
241
225
238
254
190
216
175
103
221
154
210
193
240
207
239
288
178
169
182
171
184
211
149
175
172
165
206
139
209
199
181
276
246
182
202
145
213
245
199
258
204
156
186
213
253
238
186
217
227
211
139
194
232
137
272
200
238
218
182
230
201
162
148
239
163
204
209
224
191
184
204
276
186
187
180
118
199
197
220
185
159
170
232
198
186
297
234
200
263
210
207
242
173
212
189
126
173
193
250
146
237
225
196
209
185
252
224
217
187
243
207
218
202
162
240
212
171
185
194
195
152
186
194
158
239
216
218
136
225
164
266
182
230
186
202
194
162
184
162
163
204
182
189
184
259
188
189
190
148
221
174
201
199
200
221
224
235
195
192
197
215
202
233
144
176
176
134
214
143
188
239
180
219
181
217
270
161
205
200
164
184
153
212
251
225
204
197
162
229
234
214
139
173
188
154
178
207
201
180
217
193
181
185
245
232
230
181
137
212
179
244
228
237
217
129
186
177
247
165
173
266
164
214
251
178
170
139
209
194
174
221
128
141
254
196
165
206
185
210
164
187
213
231
181
177
202
184
239
243
203
221
229
156
178
206
192
164
216
170
180
220
199
168
191
206
210
223
163
225
160
231
246
232
194
154
160
180
204
151
173
189
170
199
261
251
185
218
125
175
170
241
218
223
180
183
205
193
210
155
183
207
150
219
166
130
192
237
180
271
136
214
182
193
199
236
211
167
152
170
172
250
198
233
197
221
206
222
147
164
179
244
206
155
220
196
131
231
200
199
231
224
186
219
237
213
212
217
130
206
203
197
238
240
104
182
190
180
206
216
260
142
230
204
232
200
182
188
222
150
181
195
235
230
196
193
166
236
215
278
173
152
254
179
190
236
167
239
189
187
250
174
146
175
234
210
211
176
286
203
215
140
181
200
222
150
219
163
173
230
221
206
210
145
197
211
277
201
168
250
223
261
175
210
218
222
209
196
210
210
203
200
189
236
169
231
222
259
195
208
222
185
248
225
266
154
257
223
230
227
228
159
184
182
172
148
222
201
219
221
214
162
195
207
238
182
207
236
288
125
221
192
135
285
137
123
215
196
171
213
191
243
192
273
171
209
241
146
250
161
234
202
191
177
202
138
146
196
213
223
203
266
172
173
231
180
242
191
188
206
174
193
216
204
146
182
171
200
172
183
184
246
155
208
235
158
191
206
221
194
186
180
185
224
248
226
176
157
217
209
242
187
158
198
248
248
216
188
200
202
230
166
151
203
151
212
220
186
178
155
228
230
216
222
168
200
167
247
244
216
244
159
268
222
228
208
204
185
173
185
232
198
144
219
126
195
176
188
171
152
181
170
243
233
247
209
232
152
196
268
187
216
189
211
192
228
158
212
170
155
254
217
155
220
170
237
197
126
179
204
230
267
221
175
205
140
183
215
182
170
256
169
155
200
221
182
198
234
204
235
212
181
257
182
147
208
221
159
161
157
241
275
181
178
199
223
186
198
254
194
208
171
142
161
237
160
207
223
168
172
237
245
232
229
225
221
213
211
188
212
203
229
203
172
211
194
256
186
230
195
218
189
147
186
175
248
197
207
187
236
177
216
221
210
219
217
196
203
191
198
236
157
199
202
168
163
249
160
238
216
166
149
193
183
201
185
198
133
162
224
225
148
196
235
224
236
216
167
148
184
209
187
282
252
207
228
210
233
212
194
213
151
153
160
190
242
292
134
160
115
176
204
241
172
178
197
163
237
221
219
185
238
195
173
192
233
205
222
209
217
201
210
184
223
146
254
258
271
163
216
191
154
208
205
140
209
207
215
229
193
188
204
188
217
226
208
172
221
206
138
194
154
214
238
219
152
189
164
199
235
144
159
119
187
177
197
229
156
185
206
153
262
181
186
261
243
197
217
190
166
222
215
207
199
225
212
186
201
186
215
224
216
214
181
212
222
184
175
170
268
225
197
252
186
212
224
241
223
195
173
203
183
219
189
220
217
190
215
217
250
150
158
222
238
207
181
201
244
189
242
161
227
194
202
196
146
208
215
135
236
197
211
211
183
157
185
172
261
219
193
243
172
175
214
169
186
192
170
202
206
170
165
186
214
230
180
205
202
149
231
182
226
203
226
159
165
246
227
242
228
153
208
225
232
203
225
163
228
174
223
213
162
185
265
257
206
193
224
187
216
182
247
217
207
209
220
238
190
183
208
201
208
107
215
233
183
189
235
227
198
219
200
224
174
186
192
193
254
247
181
246
178
198
216
209
232
181
212
213
216
221
182
170
235
160
219
185
219
193
135
181
150
147
162
187
214
185
196
209
212
256
165
171
166
202
192
210
223
157
250
136
170
209
206
227
145
223
263
168
202
185
194
207
241
236
237
223
216
178
175
159
170
206
168
165
131
205
235
207
147
166
173
199
204
228
213
204
144
265
266
200
234
193
207
155
206
274
225
171
207
242
217
216
240
220
142
226
190
173
183
199
174
245
203
150
188
245
246
239
186
216
164
232
230
201
158
221
200
237
209
232
210
174
165
190
180
195
231
197
239
229
256
161
170
236
198
191
155
190
220
201
152
183
200
172
220
215
227
178
207
227
201
235
247
199
182
186
244
211
194
152
212
177
194
166
196
169
189
236
181
232
202
250
149
210
181
209
217
221
198
279
195
206
203
219
158
209
170
272
144
144
250
173
207
212
188
215
219
193
162
192
187
188
176
158
218
171
160
193
199
257
181
184
245
153
262
216
287
224
237
176
230
236
175
207
187
198
168
137
238
158
147
196
158
207
176
255
206
167
243
163
232
180
251
175
213
235
157
230
238
213
195
227
140
233
203
199
156
239
168
186
201
170
198
187
157
227
176
200
237
219
130
229
179
243
144
203
186
211
198
190
202
171
174
219
247
234
244
197
205
134
215
209
223
117
211
257
223
193
242
218
239
202
233
230
192
204
183
178
216
194
222
199
222
224
118
274
189
167
268
223
213
164
217
210
205
228
209
163
192
226
194
135
233
196
242
169
205
135
140
251
202
243
155
224
164
174
252
121
206
185
257
219
202
190
165
195
192
192
176
249
168
227
188
211
224
239
182
262
244
193
207
200
194
189
178
200
198
176
178
163
220
213
270
193
188
169
194
168
232
195
173
182
230
186
217
193
174
231
215
187
240
172
144
193
202
230
244
172
192
202
194
217
177
225
141
154
180
153
189
204
185
257
173
180
216
167
202
205
181
214
191
187
228
241
230
197
176
205
168
182
156
195
241
209
209
230
186
217
203
163
173
182
263
261
226
154
201
152
215
163
206
190
201
224
193
233
196
184
196
153
171
144
199
159
241
202
156
188
238
160
192
198
238
240
134
191
178
177
197
238
210
177
203
160
198
148
228
142
257
232
191
159
253
200
122
204
250
181
176
189
184
199
179
244
150
224
234
232
241
252
250
165
221
131
280
159
253
172
245
135
177
179
234
158
251
256
225
229
227
218
191
165
199
224
234
160
197
272
205
196
201
165
165
197
170
264
167
173
229
206
290
122
198
155
193
217
160
170
153
228
194
241
138
155
221
217
150
219
200
180
238
127
207
197
157
229
206
190
231
210
203
149
194
166
232
215
279
220
275
212
136
215
221
163
241
182
147
200
137
245
225
193
260
181
233
133
258
179
202
172
168
175
275
196
253
231
221
178
255
191
199
243
211
230
225
210
145
276
209
246
235
239
236
177
172
179
173
177
166
243
155
187
205
167
168
160
199
239
223
181
176
187
181
165
163
247
210
207
200
218
247
196
123
226
208
242
150
221
209
175
227
232
226
267
241
205
162
212
254
149
194
243
246
182
171
172
225
210
193
222
233
236
238
196
199
195
208
224
190
215
170
214
172
221
180
167
243
158
141
133
174
166
223
146
256
211
208
182
234
216
163
188
193
207
179
164
250
154
227
183
215
251
211
222
166
147
222
215
232
213
188
255
231
189
204
205
193
231
172
160
251
184
217
162
213
193
161
188
199
245
228
204
225
199
223
257
154
270
165
189
180
185
253
179
178
193
182
215
213
197
232
236
238
180
211
233
195
230
166
256
273
228
210
166
149
166
234
167
197
188
223
214
213
244
264
177
159
219
209
238
177
208
215
191
205
184
223
145
216
192
227
167
181
218
189
244
185
229
136
220
166
214
212
168
266
248
212
308
250
210
173
146
224
197
265
182
215
185
170
202
199
210
149
226
159
111
162
195
204
207
213
225
159
196
199
212
121
165
135
154
196
267
227
217
159
222
195
162
184
225
180
208
252
188
217
212
184
187
215
228
193
201
237
178
248
236
175
217
172
235
213
183
203
204
187
203
234
154
184
210
210
145
193
207
168
200
175
215
175
143
115
206
225
235
225
250
151
232
207
171
272
141
228
173
190
189
209
176
219
215
165
262
213
147
223
218
221
156
195
159
247
237
221
187
189
234
223
227
250
153
201
225
180
195
208
213
229
211
193
142
147
204
221
186
196
249
200
171
207
192
227
182
204
221
201
234
218
207
190
204
229
222
200
201
204
207
233
169
208
180
256
169
193
187
172
171
213
205
247
151
230
211
267
147
201
186
223
237
206
232
195
161
298
231
235
244
153
120
283
197
227
245
213
179
187
218
227
163
227
122
254
154
217
219
215
145
221
219
172
236
216
194
235
145
224
237
257
163
218
183
189
175
228
225
218
111
222
199
271
158
186
221
215
197
249
246
166
214
249
220
186
173
251
167
217
162
185
195
155
196
193
240
186
237
188
212
200
247
123
118
192
194
179
213
179
194
161
187
201
236
184
203
254
183
161
259
233
235
177
189
187
154
158
204
238
221
197
202
170
238
184
187
177
192
217
246
131
201
183
176
155
186
251
244
210
188
210
161
227
244
208
186
213
265
224
228
243
191
212
220
204
206
207
230
195
216
176
118
207
210
183
226
188
197
174
218
183
168
188
200
196
232
198
200
132
193
262
159
160
225
154
176
122
249
214
231
161
175
192
205
245
187
236
209
229
225
182
181
190
201
242
154
224
253
138
217
212
196
203
171
165
239
222
205
225
217
246
157
180
212
177
194
144
205
188
212
235
187
166
239
179
255
190
211
159
180
269
272
158
211
236
130
159
204
209
216
185
173
196
232
150
222
236
216
220
186
213
158
146
213
146
250
166
159
124
212
256
216
199
211
272
186
225
155
278
212
204
195
209
196
166
218
149
224
262
184
161
247
274
222
266
235
171
262
191
204
180
152
165
232
180
233
222
292
222
149
185
143
202
240
175
153
184
213
224
171
248
171
207
216
248
215
226
187
188
179
254
192
216
194
207
221
215
217
141
203
167
198
222
181
239
240
167
190
135
212
181
158
180
116
224
245
226
155
201
167
125
219
226
222
224
188
166
204
213
216
146
215
259
221
216
227
185
216
195
204
152
161
198
162
230
219
196
185
183
214
225
262
210
201
219
232
248
226
210
200
222
105
256
261
162
189
178
166
228
174
206
159
151
196
202
165
205
171
179
208
164
210
236
233
238
244
203
152
254
212
229
231
183
243
148
173
237
237
180
179
135
169
174
192
170
192
120
206
174
216
174
149
213
215
171
195
232
248
217
196
163
153
191
252
205
199
209
229
191
217
144
207
264
160
197
273
184
263
226
181
216
215
160
233
264
164
230
221
242
164
202
216
189
260
241
188
248
182
208
228
192
173
186
204
255
197
238
197
151
180
229
145
135
194
190
234
201
202
245
219
205
234
204
170
234
217
227
177
181
195
205
190
202
207
130
252
218
226
245
222
164
233
254
129
188
180
241
254
145
191
190
156
243
180
182
175
223
243
180
216
245
210
205
209
164
118
204
219
171
119
237
205
163
154
206
175
200
236
147
124
215
215
207
192
235
214
198
151
177
192
222
165
175
198
214
238
245
199
230
179
218
209
257
200
156
181
259
207
161
223
144
114
242
150
130
140
191
270
227
216
158
202
249
225
153
211
126
175
180
223
267
156
123
211
155
179
222
199
160
235
200
248
154
220
156
214
180
215
207
223
238
231
159
194
207
178
264
237
228
241
194
206
208
223
214
155
126
269
169
222
239
158
173
189
217
246
123
203
205
154
218
203
199
221
181
218
204
241
206
193
227
211
204
290
186
166
138
220
210
261
211
255
224
179
236
220
247
265
126
164
177
221
184
113
210
195
137
259
257
167
186
128
187
219
206
151
182
238
217
192
154
194
129
163
215
168
196
238
198
188
192
211
209
129
157
164
209
222
129
121
174
176
218
164
195
215
213
148
246
170
206
231
135
199
246
221
179
130
217
257
222
223
233
229
140
174
187
226
152
179
211
201
238
254
246
211
236
213
186
190
241
171
183
220
166
231
260
214
148
221
201
251
264
157
198
252
191
127
176
217
148
267
269
225
203
220
211
283
222
188
210
155
193
196
219
227
217
237
175
163
218
194
227
202
218
207
208
164
191
185
166
191
188
208
231
195
158
237
153
185
207
232
222
204
254
208
197
264
190
262
226
160
188
222
188
243
222
201
226
191
210
150
194
197
220
218
169
159
184
223
224
188
198
164
139
202
205
201
197
184
177
187
242
228
233
239
199
216
158
196
156
128
249
227
181
212
111
206
168
149
230
166
191
243
241
238
200
228
211
193
232
156
137
185
269
181
147
210
222
202
237
188
204
182
213
184
159
212
277
227
250
254
225
264
258
201
260
186
169
225
237
202
187
215
207
222
271
189
232
194
215
195
186
216
237
200
186
180
257
200
205
190
168
201
209
193
243
219
217
188
231
192
226
174
201
201
182
209
159
262
176
193
210
204
217
168
231
238
179
228
171
191
140
204
193
258
170
154
143
168
190
241
211
207
211
231
178
209
211
193
246
175
227
208
202
156
248
107
204
211
218
223
139
205
194
165
215
187
233
219
226
186
174
201
145
125
190
183
212
219
183
171
179
215
287
222
184
162
210
205
195
140
266
245
252
232
185
215
245
208
178
196
246
156
196
231
214
227
205
241
242
252
220
242
191
216
157
211
184
203
225
214
195
211
196
165
236
169
219
201
189
175
200
275
227
147
229
165
158
234
185
196
179
201
135
241
276
255
177
234
198
205
175
217
242
202
237
200
211
180
248
219
147
182
214
171
262
194
168
194
146
167
261
180
176
119
178
148
153
212
225
253
219
244
187
221
192
210
241
146
165
223
264
205
251
184
268
237
254
218
155
191
226
223
208
247
183
219
185
149
161
250
158
179
153
244
194
220
185
169
196
134
143
218
250
210
183
213
168
212
192
196
174
219
191
190
222
229
208
164
272
209
243
189
227
174
144
260
196
183
215
170
231
188
278
185
211
222
154
193
220
219
177
170
231
230
221
185
201
164
245
200
165
186
147
259
252
223
232
182
214
266
240
194
227
219
226
150
112
191
207
240
220
200
175
184
198
156
209
231
222
193
203
210
199
192
160
234
192
222
163
203
242
202
222
212
190
233
218
139
244
206
244
164
134
217
200
232
162
227
190
206
194
206
236
200
145
170
263
210
160
198
246
247
197
190
185
218
138
172
218
268
184
190
200
140
206
217
260
151
171
162
150
181
192
164
258
216
159
167
188
194
219
203
217
226
213
204
184
229
242
234
222
252
199
206
207
221
206
154
255
208
197
161
198
235
213
198
220
232
180
189
228
207
210
145
224
247
221
181
198
183
159
165
186
194
183
226
170
178
171
211
155
235
179
224
177
205
237
218
246
109
221
211
243
188
243
175
212
116
180
182
190
165
115
155
250
207
185
125
184
261
200
200
212
165
194
215
208
192
244
219
228
214
254
130
237
201
211
258
148
177
224
212
197
203
180
227
201
182
189
150
157
230
108
180
153
265
198
197
220
217
150
243
227
207
173
214
193
179
148
226
240
255
230
219
204
227
214
135
218
181
212
238
185
185
177
199
232
222
204
244
249
210
200
164
194
252
165
243
212
173
249
236
220
200
188
160
212
200
185
172
256
177
203
211
180
177
199
197
220
253
245
149
200
203
241
156
193
221
180
163
190
151
216
227
219
199
228
237
213
248
225
157
182
201
120
252
273
170
268
183
176
185
181
154
192
217
220
188
198
132
195
222
203
163
221
206
254
172
176
214
166
229
174
194
194
189
190
175
155
242
215
191
217
182
221
242
189
200
251
189
205
266
168
194
192
207
174
198
188
197
198
253
229
261
187
195
240
242
190
221
259
150
210
216
205
221
215
175
189
207
167
212
212
227
209
178
211
226
214
253
157
213
213
247
208
197
162
221
118
201
226
209
220
240
212
202
207
187
163
188
161
210
214
230
212
192
203
177
210
232
178
206
172
203
202
160
197
209
199
117
159
245
156
186
215
174
251
126
180
237
238
190
228
154
151
245
177
227
229
177
235
132
206
221
233
176
197
175
232
227
220
245
181
221
194
196
210
214
237
176
188
235
218
250
156
158
174
148
231
288
210
140
191
223
203
199
174
194
183
194
240
267
170
214
165
269
203
212
201
167
251
214
229
240
195
222
219
217
221
211
167
182
254
165
189
181
211
139
194
203
152
221
188
170
243
204
209
206
168
177
219
172
220
189
232
180
192
255
225
257
232
221
247
268
203
192
217
248
240
228
223
229
168
159
211
156
230
232
197
183
187
179
173
184
227
238
155
225
201
216
211
205
188
161
228
200
155
240
181
240
197
151
192
206
223
218
204
270
189
147
211
222
168
208
166
226
167
180
172
123
249
192
210
214
181
216
243
236
246
189
201
151
208
207
219
174
210
190
175
174
249
169
186
251
229
190
174
196
199
195
214
209
193
196
200
164
202
190
143
249
230
143
213
189
164
230
176
200
223
225
191
184
186
195
206
235
261
211
261
222
246
239
164
243
165
268
263
211
236
171
172
228
194
197
116
160
212
207
172
265
161
205
215
179
172
233
212
238
136
171
202
192
178
178
191
183
153
211
240
220
125
103
219
124
176
199
217
240
161
175
191
189
208
151
265
220
160
185
205
222
185
217
243
198
219
222
195
182
217
214
230
243
145
167
204
238
199
173
205
159
172
225
212
214
199
117
181
211
178
255
207
180
217
186
257
177
217
255
258
230
152
233
181
185
212
240
212
221
228
223
238
222
230
217
164
219
184
150
175
174
251
132
219
197
162
206
209
154
189
179
187
146
211
290
182
224
197
149
232
257
128
179
128
164
158
207
180
169
243
201
174
253
233
157
214
208
203
219
196
154
134
176
236
112
199
118
185
201
210
220
248
245
191
152
150
130
213
128
208
228
202
240
212
197
219
194
244
180
173
160
123
202
239
113
193
143
222
188
234
235
229
241
246
208
206
198
237
214
257
151
209
237
186
174
262
213
226
181
217
216
217
250
286
227
217
181
216
246
180
185
167
256
196
170
187
157
192
124
139
213
223
159
196
246
225
222
216
170
207
170
226
147
150
128
196
203
214
258
193
234
185
231
218
140
142
181
194
213
175
187
207
231
251
189
182
200
232
185
234
192
176
155
214
219
203
233
156
229
177
162
225
133
186
234
243
206
192
175
162
215
210
158
251
215
245
197
187
151
211
204
187
209
226
152
260
224
205
215
208
189
216
151
196
226
222
202
198
203
210
145
216
210
225
206
221
197
158
269
197
180
237
249
212
132
217
190
193
189
126
178
184
202
139
268
125
229
270
225
195
219
171
248
172
195
202
247
219
191
167
205
230
219
182
162
199
209
228
197
207
191
205
223
219
219
153
203
182
174
172
208
147
147
278
179
231
166
202
212
277
175
184
173
182
244
163
189
212
192
206
164
174
219
170
211
259
160
230
194
213
186
194
201
177
149
207
259
201
261
219
199
185
157
274
195
251
187
241
166
202
216
203
228
173
148
196
220
192
196
200
218
197
211
177
208
185
210
216
238
139
218
153
184
189
201
138
224
232
223
173
143
253
226
180
227
193
153
193
220
251
278
193
144
211
197
168
225
127
237
135
187
195
180
144
181
195
145
239
229
236
258
216
217
172
189
200
193
144
108
144
194
237
187
164
182
243
229
202
163
195
181
208
215
165
196
178
270
230
190
238
266
110
177
203
202
198
169
112
244
198
204
226
198
233
211
147
181
164
228
254
210
182
179
203
209
166
235
171
193
182
149
194
195
248
151
218
140
175
185
217
150
203
210
180
168
216
242
198
206
138
161
187
193
209
237
162
148
219
165
236
245
209
239
229
154
193
164
215
200
171
209
181
196
182
240
205
164
168
153
198
222
162
207
117
208
203
201
176
219
208
185
200
117
209
213
220
152
219
202
197
195
190
211
212
211
162
204
184
188
204
201
176
206
245
212
186
178
193
135
140
161
265
220
148
179
182
256
200
217
222
164
190
226
158
175
199
232
173
173
188
233
235
164
169
178
271
196
183
190
227
176
272
220
226
268
207
242
192
231
183
206
310
234
186
131
219
238
216
211
155
251
162
247
198
209
190
185
167
202
214
171
270
211
204
237
180
168
225
236
262
179
221
193
213
178
243
210
180
168
221
189
219
179
235
249
247
170
210
165
259
199
238
150
201
217
191
234
125
210
205
244
182
167
212
220
200
198
195
229
215
183
188
267
202
209
236
250
189
196
224
198
174
181
183
231
183
215
196
215
194
212
211
236
234
234
215
234
195
175
211
184
210
173
142
297
211
145
232
213
171
231
171
168
234
218
199
184
168
248
227
127
194
192
194
223
155
183
270
244
211
231
172
213
294
147
169
213
257
225
159
188
197
206
224
216
146
154
193
215
221
200
178
227
225
143
258
236
185
170
235
152
184
174
233
236
217
201
184
165
229
205
191
182
149
205
199
155
211
160
225
261
203
207
230
254
206
194
163
224
205
245
177
190
223
234
233
213
161
210
189
211
206
167
188
205
167
221
260
167
238
244
250
198
221
249
200
153
188
219
196
234
144
172
164
175
177
160
181
162
183
186
245
133
234
211
181
209
125
209
270
190
180
228
246
155
178
223
199
109
230
304
168
197
225
199
174
170
172
202
169
175
186
180
268
223
172
128
232
247
203
196
217
206
249
246
252
157
232
221
159
215
205
180
179
163
225
150
157
190
194
152
237
182
224
196
202
181
182
176
273
194
202
184
239
219
149
199
211
134
219
211
239
206
204
168
141
201
199
211
248
166
261
234
188
280
239
178
226
184
220
189
213
175
160
184
210
184
265
213
229
209
230
160
182
255
253
191
149
231
193
245
202
199
257
202
233
180
233
155
224
141
174
256
203
132
201
169
227
261
154
208
281
138
194
225
204
192
190
237
226
178
197
176
235
229
206
235
191
202
194
138
214
204
204
161
117
270
247
229
227
229
210
241
183
200
242
190
210
206
174
199
196
175
215
223
215
157
191
160
191
228
254
207
175
202
138
266
128
156
172
196
185
173
245
226
203
194
176
153
246
271
246
204
182
226
159
154
243
185
177
261
174
177
125
178
198
191
197
203
154
241
173
200
208
193
184
203
167
214
195
173
124
161
150
150
148
260
192
246
253
230
164
209
210
216
229
189
159
183
158
229
236
208
223
205
244
256
192
220
228
257
255
242
253
192
179
158
179
218
193
185
217
212
181
220
220
199
198
171
210
223
212
222
188
240
226
199
171
176
189
177
198
105
203
202
191
194
226
213
189
238
229
181
170
225
216
208
260
213
270
163
238
205
158
207
199
172
177
222
146
243
179
192
182
217
190
186
212
226
250
170
217
202
213
190
233
231
204
206
179
211
191
206
225
199
254
272
114
251
129
175
191
137
211
143
148
224
139
231
160
230
176
113
186
227
212
166
228
258
221
229
236
165
198
245
209
241
249
201
177
196
135
215
195
207
239
175
251
227
264
159
166
249
165
216
201
139
168
250
228
191
178
135
231
213
133
185
202
255
172
158
164
176
229
189
203
229
96
194
187
124
252
192
194
203
220
167
185
244
151
116
190
252
206
152
219
224
207
233
218
206
196
179
193
235
212
250
199
178
199
211
183
191
214
206
165
227
181
204
213
147
163
193
219
187
168
199
166
211
215
194
170
229
205
154
207
211
245
237
237
230
229
189
212
221
233
170
204
203
156
235
184
206
194
161
226
227
190
182
187
270
183
193
187
220
188
193
181
172
193
204
221
199
230
190
167
198
180
204
250
207
138
219
203
208
170
166
239
143
223
213
196
211
181
176
245
155
163
211
222
167
181
200
214
214
209
204
191
196
169
203
202
151
171
222
277
208
228
144
229
241
133
185
215
251
162
196
204
179
150
251
223
209
192
253
177
183
217
235
200
105
195
224
211
176
205
230
195
197
203
253
238
198
156
183
203
207
255
175
171
226
246
210
158
213
180
233
155
244
152
201
129
185
186
138
108
190
195
171
165
161
269
171
191
250
196
161
209
209
200
233
212
212
198
203
230
183
221
254
185
245
196
177
187
198
216
230
213
221
214
236
204
231
181
177
178
186
194
225
179
122
138
243
199
166
150
195
218
191
199
167
181
224
183
211
243
196
169
237
198
174
158
172
187
181
279
168
165
185
192
228
212
170
166
105
279
166
154
214
217
161
149
221
141
244
201
125
232
184
244
205
224
235
186
245
220
196
243
248
201
225
216
219
219
238
265
163
170
186
196
197
234
199
217
209
185
220
227
190
181
178
209
223
220
187
171
212
195
203
192
230
193
125
220
193
213
239
125
187
175
145
221
188
180
197
261
260
206
237
172
185
203
216
182
197
189
240
223
177
245
220
167
143
231
228
159
237
215
190
200
204
224
180
204
194
208
216
163
225
272
156
202
149
221
206
240
254
170
226
186
199
250
206
244
235
192
200
209
238
182
190
164
262
211
207
163
239
206
235
176
212
162
197
157
219
212
245
151
205
227
219
151
183
265
226
172
219
123
179
219
209
200
177
173
203
223
200
148
260
212
168
251
215
247
165
259
222
209
239
269
201
174
175
264
221
197
213
104
168
172
191
174
211
213
219
224
148
232
221
162
221
200
247
176
204
149
226
268
206
187
213
232
139
193
182
199
164
234
207
222
136
162
215
221
235
196
216
229
244
198
209
211
155
267
226
146
189
220
150
208
133
182
229
241
245
211
238
253
169
177
161
196
212
239
199
219
232
208
220
206
214
192
125
279
206
234
231
134
162
185
242
167
240
198
174
255
238
240
241
202
236
225
256
193
208
192
210
182
183
193
228
235
214
213
222
191
148
179
166
212
186
185
185
202
179
156
206
209
180
174
165
240
258
201
218
157
131
180
212
241
227
226
213
221
175
201
171
174
178
167
218
174
243
204
177
197
168
172
160
186
198
209
177
156
233
128
249
143
195
218
214
211
166
170
204
178
216
195
127
131
191
169
196
155
205
223
172
172
224
219
185
198
235
236
241
139
173
183
172
218
161
196
187
190
211
137
255
156
175
139
238
119
181
214
258
206
214
181
166
228
225
158
230
185
210
240
215
245
180
208
193
189
179
181
192
175
165
215
224
216
105
269
187
175
232
139
202
177
240
211
170
200
142
155
189
167
210
232
189
172
198
184
122
180
179
180
221
277
233
145
161
259
167
177
230
171
173
243
203
167
196
209
161
222
172
240
214
189
170
156
251
229
191
227
184
205
209
241
234
126
214
216
257
230
205
202
160
227
219
221
238
195
200
162
203
252
223
209
246
243
116
228
172
203
134
212
213
234
232
181
229
185
107
232
241
132
197
188
201
146
158
226
245
249
215
232
165
165
147
218
221
171
222
167
190
269
219
187
148
143
198
229
187
254
251
207
200
184
218
213
214
285
142
169
181
148
237
230
218
239
243
125
215
176
208
201
152
200
148
212
257
164
206
171
195
142
204
226
145
155
149
207
219
211
132
185
177
198
259
169
178
261
140
171
159
213
168
180
188
163
184
206
169
215
217
180
209
171
208
189
224
215
254
214
175
201
199
223
188
241
156
264
134
204
230
254
164
254
219
192
228
235
167
147
183
204
183
240
214
175
178
206
248
212
177
189
223
163
257
211
217
246
167
177
229
159
142
131
173
169
143
213
239
177
218
208
188
127
237
153
219
210
251
212
201
214
211
156
176
146
162
191
194
199
259
160
187
206
199
201
193
197
166
230
197
196
208
199
181
174
179
221
219
203
172
183
179
202
194
210
144
206
253
219
181
207
183
238
199
156
174
237
135
192
229
223
263
190
219
198
204
204
260
240
174
288
165
188
213
232
164
215
225
231
204
154
197
230
130
220
204
219
182
211
192
196
197
203
212
159
232
134
214
223
170
243
177
170
189
159
176
204
208
223
262
222
191
243
205
206
205
180
200
222
210
202
228
244
154
135
174
149
220
183
227
248
212
183
174
207
234
117
222
232
220
191
221
260
277
242
273
204
176
211
191
201
154
305
191
213
155
216
150
195
209
184
190
176
217
239
213
154
256
219
227
182
153
253
163
212
251
130
245
198
177
234
140
156
199
165
233
225
195
206
251
213
178
191
204
221
205
171
253
170
198
159
219
236
174
252
254
139
180
221
191
207
150
214
141
150
251
276
230
175
217
247
248
160
217
189
220
217
199
158
247
184
248
229
184
218
234
231
178
217
176
150
172
279
239
256
165
174
176
238
193
183
136
172
160
233
223
176
225
212
200
207
212
213
261
187
171
234
230
176
232
168
196
161
82
209
221
214
214
212
209
196
176
210
180
194
247
229
230
186
162
177
191
117
168
150
185
158
162
169
202
236
136
217
233
187
199
170
163
157
229
191
172
204
163
163
232
266
218
247
185
246
205
173
138
163
268
224
180
234
217
235
153
132
192
149
203
205
165
217
181
184
222
243
188
195
243
235
266
207
199
189
178
244
220
188
230
262
216
174
181
222
242
186
132
195
202
246
178
212
208
195
155
209
215
216
232
236
180
150
194
199
145
206
170
187
237
205
236
219
196
249
191
185
194
203
220
252
146
216
198
253
146
169
243
161
248
235
232
211
176
217
178
241
203
254
185
269
185
172
181
226
190
178
202
195
164
224
168
174
210
226
159
189
137
178
195
228
244
232
191
156
110
221
195
244
189
183
143
241
231
269
215
253
179
267
198
263
149
140
215
158
239
172
232
296
232
230
217
187
154
224
229
195
214
236
211
195
203
198
207
213
191
217
243
219
187
216
143
197
235
175
175
199
198
262
216
244
214
215
240
197
211
194
138
256
227
232
168
203
212
229
170
229
219
191
130
223
191
233
209
184
245
237
146
185
192
182
242
208
176
168
161
231
149
251
212
207
209
182
175
192
210
233
195
159
175
159
201
183
219
184
176
221
156
217
143
181
239
196
155
199
171
178
199
226
199
222
268
186
150
206
174
220
159
189
197
261
251
133
231
189
226
242
124
206
234
161
214
248
154
222
161
238
155
200
248
239
212
246
200
197
238
227
156
247
242
245
243
115
166
213
194
168
280
136
199
226
206
228
242
191
203
186
174
264
236
167
184
252
193
214
184
197
152
163
272
227
156
293
240
189
145
231
152
145
160
220
230
175
253
163
188
208
194
209
202
230
217
211
239
166
199
224
188
277
172
148
227
231
183
210
248
220
284
192
193
139
141
195
230
117
243
115
203
182
169
269
212
179
194
196
176
177
186
173
156
147
195
204
231
228
213
207
147
227
228
197
228
249
203
211
186
179
242
226
199
228
238
237
169
222
219
170
248
179
243
208
123
200
182
151
173
210
211
217
154
232
227
224
204
226
172
206
215
252
178
246
199
188
206
275
235
235
212
218
256
242
233
199
222
188
273
231
155
199
147
142
156
174
275
220
176
204
201
169
210
242
206
212
157
211
233
188
254
197
161
211
203
155
188
180
194
185
218
203
214
215
174
200
226
191
182
174
210
175
209
204
224
252
144
141
249
172
288
201
210
242
166
170
107
229
183
150
157
148
215
173
229
177
238
212
200
206
222
167
232
184
212
183
232
164
245
200
244
213
204
203
247
224
229
276
220
255
233
168
221
131
190
228
225
196
137
218
249
288
169
198
176
131
231
217
190
207
188
205
211
151
257
241
263
131
191
219
175
193
259
184
256
212
119
209
228
234
169
167
138
176
158
192
147
235
199
198
156
231
225
169
200
187
150
141
169
238
164
202
275
213
218
177
123
203
230
193
191
245
206
206
156
221
192
218
196
158
161
177
241
202
231
208
193
219
191
191
205
183
144
145
214
266
206
200
254
204
222
201
184
215
197
218
209
179
180
191
179
235
256
174
242
195
185
204
267
182
217
184
191
163
254
200
218
174
209
173
199
190
215
163
229
241
184
193
164
157
267
176
193
168
282
168
204
202
159
237
223
211
157
171
166
226
155
223
246
198
176
169
158
177
235
163
195
254
220
166
164
214
238
219
201
232
201
201
219
204
213
164
204
162
214
204
220
228
217
186
259
260
159
258
196
152
252
197
189
215
133
197
204
178
140
209
218
181
193
171
198
170
223
245
176
199
187
236
186
242
229
210
197
166
199
248
230
200
230
201
252
226
173
217
221
238
211
259
229
248
148
221
154
175
226
226
213
187
172
155
242
204
229
143
189
259
158
141
201
206
170
229
146
157
220
217
178
216
208
230
180
171
205
224
165
193
224
218
208
179
214
227
220
133
155
210
199
239
186
178
188
182
193
183
258
191
186
225
182
263
201
147
236
145
174
236
165
178
226
251
184
194
213
180
193
217
218
236
145
130
205
231
225
219
250
171
265
191
201
195
212
192
226
214
161
182
179
165
169
225
192
142
256
218
186
223
186
205
204
198
262
190
208
169
181
142
162
236
147
177
159
196
150
224
180
251
192
240
198
157
249
252
220
194
265
175
200
193
189
216
231
130
195
208
226
173
170
253
227
191
168
219
218
215
187
222
231
169
200
283
225
161
194
205
209
204
219
120
194
223
200
220
167
266
268
288
170
205
174
205
257
192
160
235
237
174
195
157
188
211
204
205
283
231
182
200
171
255
211
286
183
174
176
196
231
229
213
189
202
186
174
155
208
172
208
222
238
197
267
206
174
210
149
210
166
197
169
242
220
143
206
124
162
228
206
213
193
174
213
231
243
133
235
214
208
116
193
198
253
286
249
214
233
219
225
156
255
185
181
153
203
214
169
208
181
190
175
140
211
185
180
233
185
247
179
220
246
225
200
156
207
243
145
228
210
212
204
226
167
176
262
161
180
120
259
161
173
237
106
248
252
168
217
168
141
153
276
217
178
265
216
224
244
182
222
191
193
196
161
255
211
211
162
206
240
199
224
288
137
205
224
231
234
201
213
206
190
182
142
263
233
148
223
188
247
270
222
229
183
164
212
196
222
219
184
216
195
205
241
235
219
247
209
165
208
121
177
216
155
141
208
199
154
173
190
197
221
154
164
142
201
153
226
206
210
180
184
199
217
257
239
149
256
178
205
197
176
217
215
213
189
233
218
139
187
209
274
188
178
173
208
197
164
191
154
188
236
219
206
254
190
175
241
230
181
220
248
182
224
234
233
223
192
229
199
216
182
165
200
182
179
174
182
193
95
174
304
221
183
174
212
177
236
240
243
199
225
151
184
203
184
213
172
212
261
243
222
162
183
210
220
217
167
252
231
194
177
220
168
240
228
144
219
259
177
180
243
230
189
156
127
183
192
195
167
191
131
208
202
249
220
235
284
194
224
181
173
224
233
247
214
190
183
183
174
162
237
241
226
160
244
185
199
150
206
155
155
213
179
194
227
287
233
201
174
164
253
191
173
172
170
232
226
220
154
190
210
189
204
214
245
168
183
196
223
169
231
129
140
230
196
225
210
232
225
184
168
248
208
238
195
193
193
188
227
201
159
143
205
175
151
201
232
226
204
174
188
202
226
186
239
207
204
174
194
176
227
172
267
253
218
206
114
200
178
178
170
209
166
186
252
194
239
237
199
160
189
214
235
140
201
231
259
176
159
199
233
197
166
256
192
207
225
271
210
164
231
185
236
173
206
244
207
151
208
176
220
247
180
268
231
245
254
183
183
229
199
118
185
196
226
248
190
220
185
234
211
245
212
212
222
286
194
199
221
141
194
189
176
139
260
232
102
241
182
189
165
206
204
248
185
272
259
205
174
211
277
206
179
138
265
209
210
148
185
254
244
173
153
208
240
170
158
213
85
228
222
207
169
184
196
244
154
223
218
191
187
136
220
179
148
209
214
204
216
237
232
236
244
145
147
183
185
164
233
189
224
220
238
192
189
193
193
168
217
214
200
187
204
200
179
227
210
213
258
209
225
213
256
143
240
231
227
219
245
204
163
170
171
212
220
185
208
180
223
232
212
256
219
208
202
185
169
187
178
156
200
231
163
207
229
231
178
219
193
239
272
239
230
184
175
207
243
168
200
196
197
143
164
227
187
242
198
273
248
220
205
209
213
202
189
208
231
232
152
244
199
205
198
142
247
159
187
226
232
239
194
262
142
280
235
179
186
217
157
236
205
208
257
179
211
170
187
198
180
206
197
210
159
214
253
261
231
171
211
215
175
176
164
257
98
203
232
207
221
203
209
201
233
118
166
238
235
215
168
202
205
185
154
237
177
208
196
210
189
112
129
241
205
235
180
117
226
236
236
221
225
225
230
197
236
194
215
191
195
188
278
219
226
140
152
204
183
191
228
240
206
248
185
165
223
145
221
225
196
184
151
230
265
203
167
228
184
249
214
180
186
149
207
274
211
223
232
176
173
235
221
262
215
193
213
213
197
224
247
188
206
226
179
225
192
190
167
177
189
176
186
192
224
200
181
237
212
171
243
196
183
186
209
206
241
195
198
178
164
200
223
257
173
193
199
172
106
181
180
165
148
145
215
274
145
225
191
209
212
206
229
234
210
253
207
184
184
173
221
204
205
158
227
226
231
269
238
210
199
227
129
166
209
234
174
186
206
186
171
206
186
217
170
118
143
201
228
203
236
223
269
188
156
153
264
205
162
142
217
174
233
197
208
207
87
194
159
188
232
218
187
271
147
216
232
225
244
179
244
72
137
182
160
163
193
210
160
229
195
225
230
221
178
198
227
221
170
210
245
189
125
131
221
260
214
271
204
208
182
211
216
190
155
224
243
219
170
274
217
192
179
148
203
244
260
269
234
190
221
208
183
157
228
238
177
193
175
242
161
249
221
138
205
217
215
236
247
226
183
264
230
244
241
151
199
227
157
248
224
187
209
202
202
202
191
212
196
266
181
264
160
178
199
188
197
165
180
227
203
153
208
199
253
193
235
227
225
228
228
194
212
204
226
198
213
207
255
235
179
219
172
142
185
133
203
231
239
280
213
184
177
169
120
230
206
251
228
189
179
207
193
237
223
239
191
172
281
237
180
227
218
191
188
230
186
180
167
208
175
188
208
171
174
172
222
199
231
241
136
176
202
215
174
233
188
180
187
228
237
226
142
196
231
216
194
182
224
187
202
239
180
218
255
239
173
187
238
244
156
201
232
144
211
219
213
233
206
230
208
199
204
188
150
247
210
195
189
202
161
137
253
172
183
180
190
209
140
178
158
199
235
198
245
148
200
196
210
225
164
197
210
189
218
191
224
232
229
256
237
198
201
204
178
246
196
174
210
230
186
163
237
205
211
141
219
217
215
236
219
196
174
188
137
261
182
160
201
218
187
197
177
243
230
190
152
219
225
258
205
175
233
278
267
167
199
213
165
167
140
258
234
187
164
213
177
179
246
165
182
198
250
267
203
181
216
249
194
211
145
175
190
191
216
212
246
191
249
210
159
238
241
239
184
169
189
190
242
198
98
218
186
190
181
184
230
223
197
279
220
202
188
257
167
149
260
227
189
198
244
203
206
184
202
212
194
184
188
193
145
272
222
243
184
212
173
208
247
211
215
183
166
215
171
227
152
133
174
217
218
198
184
210
192
145
185
174
229
173
219
219
266
162
180
141
214
229
233
122
210
221
196
170
172
167
231
171
193
205
202
212
196
200
175
203
179
268
184
187
183
205
216
209
138
155
183
208
195
221
198
153
149
172
251
166
169
186
186
183
230
171
239
186
238
184
204
201
234
156
171
152
206
239
122
158
167
199
122
197
175
204
204
237
183
167
207
172
246
258
184
159
228
206
190
215
155
226
233
225
215
212
188
271
241
229
237
215
218
147
242
154
230
179
205
220
223
264
172
212
244
203
217
138
261
172
255
198
242
192
239
229
215
207
125
205
210
152
205
170
226
191
193
217
152
200
209
166
188
146
147
264
166
198
242
168
111
222
149
176
188
207
174
183
229
148
207
244
211
176
217
283
164
234
247
182
180
189
177
226
215
186
262
161
211
145
207
158
130
146
129
199
179
210
236
230
179
198
162
228
182
197
147
160
234
226
178
230
186
172
226
235
194
121
244
185
195
195
130
238
218
273
241
163
186
231
184
190
213
193
216
173
207
215
207
139
185
205
173
156
229
203
187
179
174
233
236
271
231
205
178
238
205
209
218
239
208
176
164
211
223
221
198
148
220
249
170
180
243
242
212
195
158
140
243
203
171
239
204
184
147
190
173
236
138
240
143
209
207
145
233
211
197
130
168
224
231
184
227
194
230
164
283
217
171
221
212
192
147
154
189
195
225
132
173
219
204
169
195
215
249
221
220
232
197
173
204
194
179
233
181
244
173
221
186
178
204
208
209
219
167
201
178
217
216
209
224
233
242
241
287
199
147
197
289
159
194
173
181
211
170
190
188
253
154
187
173
205
173
118
164
229
164
242
157
131
276
206
213
222
205
178
213
222
172
202
211
199
211
162
209
206
258
196
225
226
240
273
210
166
260
221
229
205
210
292
215
165
218
200
228
261
189
202
208
167
285
219
156
186
222
252
167
183
188
197
214
253
198
155
134
124
187
220
241
274
212
210
237
169
175
224
180
196
162
171
148
210
200
213
126
241
142
199
215
247
129
229
157
154
185
219
206
210
160
155
190
213
228
172
246
193
196
186
221
242
188
161
222
178
175
189
163
199
222
137
216
227
197
204
198
239
186
220
244
168
144
230
172
167
197
204
256
219
179
190
215
178
174
142
229
193
185
191
246
182
171
226
193
192
227
255
221
217
143
138
205
131
171
206
196
212
236
271
165
214
159
189
227
182
152
261
172
144
243
161
230
202
162
189
177
256
132
242
198
231
193
235
175
268
210
232
215
240
195
190
179
190
156
249
199
258
180
190
160
228
184
224
232
163
187
237
185
246
132
202
204
205
179
158
213
229
248
262
240
168
192
123
149
230
197
209
190
169
158
196
293
199
216
243
246
264
219
240
207
221
218
180
177
203
134
148
251
169
153
226
217
111
187
205
216
236
185
203
225
148
198
232
183
158
192
245
270
162
204
181
219
202
144
247
181
186
161
173
193
185
201
197
168
230
170
254
166
164
228
206
182
215
151
204
221
226
130
202
214
203
207
247
140
246
177
198
110
248
232
185
220
216
181
183
261
221
122
216
209
156
182
212
265
176
216
218
225
190
188
214
182
190
111
220
213
188
189
160
195
136
190
162
214
185
170
185
247
191
205
186
243
212
130
198
194
186
168
204
168
186
215
185
222
192
225
184
231
164
229
183
221
188
195
235
212
206
238
223
220
143
188
191
258
182
224
180
247
120
256
203
269
165
217
183
267
211
217
225
252
254
221
188
158
173
210
244
221
198
146
250
225
206
188
220
104
248
178
233
160
226
202
239
150
231
215
189
156
160
159
212
248
155
206
197
240
195
256
213
181
255
240
153
212
213
167
216
209
185
176
177
226
194
177
220
180
299
147
160
238
224
231
203
257
186
202
185
140
239
242
167
249
247
251
221
188
261
215
159
178
221
178
269
236
178
137
253
168
207
219
166
228
171
190
176
169
214
155
196
217
139
254
224
193
135
214
191
220
170
157
201
258
195
194
227
215
212
159
215
125
180
247
176
192
164
255
168
196
171
205
228
152
125
183
192
139
191
234
165
220
196
198
188
209
165
251
161
225
252
180
184
176
228
220
223
239
205
224
245
174
201
194
170
231
219
240
267
149
151
168
186
217
195
174
179
189
206
228
187
226
188
196
246
157
237
208
132
245
211
201
139
165
186
214
193
237
188
219
168
230
245
239
221
154
189
258
227
159
193
209
210
145
201
206
243
190
168
196
181
160
247
221
249
267
187
212
224
201
220
185
180
175
185
194
175
198
212
240
188
252
205
153
239
193
231
186
138
218
226
202
223
188
240
178
197
161
234
281
138
186
205
237
178
184
181
168
147
224
170
266
110
242
244
195
212
241
212
168
187
216
172
209
221
257
192
164
189
183
244
200
215
222
273
197
188
188
253
153
195
228
211
181
155
177
246
179
209
235
171
202
185
168
157
160
228
142
123
218
207
213
169
218
198
185
229
189
191
253
90
214
229
259
223
201
249
222
169
249
182
203
241
228
173
207
206
212
220
167
202
250
229
215
200
209
207
206
179
156
207
237
239
238
207
200
212
241
256
126
217
241
208
249
179
173
185
184
257
233
232
233
145
191
155
231
178
193
209
250
212
238
207
182
224
247
248
188
227
187
119
267
213
253
150
168
211
223
193
140
169
235
165
162
218
226
238
227
222
180
185
186
162
197
184
164
187
271
265
143
216
188
191
202
222
195
257
230
188
220
175
176
262
207
182
191
234
209
208
245
246
157
252
196
215
187
198
203
168
198
165
99
270
163
129
228
168
235
139
164
181
217
139
168
238
179
165
214
223
162
138
205
220
213
259
209
205
197
228
203
179
234
203
168
198
221
237
137
146
237
189
193
204
115
215
254
222
210
196
220
220
217
140
175
201
205
182
166
209
276
195
214
216
214
164
207
157
206
193
194
204
176
214
272
135
246
217
162
208
200
215
304
154
121
205
211
196
252
175
243
164
183
148
145
231
193
226
174
222
206
232
223
163
126
233
235
215
215
201
194
127
205
183
154
167
173
249
207
184
203
175
183
194
207
249
174
206
180
209
138
180
122
218
200
194
190
214
220
142
193
201
253
185
226
205
218
198
241
122
171
224
150
136
206
227
194
213
230
190
223
200
217
139
217
196
176
213
188
222
199
215
266
197
134
195
238
144
181
162
243
201
219
234
195
202
202
183
214
226
214
235
131
260
231
214
266
239
226
234
183
188
233
197
200
168
182
196
214
263
140
131
218
232
219
196
195
169
198
229
217
193
169
209
171
206
211
206
185
179
201
192
214
175
216
260
124
191
168
214
151
192
231
184
214
143
224
212
223
184
172
236
200
226
177
188
195
234
139
209
208
216
203
187
193
83
213
168
185
209
207
123
192
192
222
174
221
213
183
200
223
238
167
226
237
226
218
227
196
150
223
127
209
210
223
232
133
156
179
230
178
176
228
224
182
171
225
257
207
226
253
187
186
183
217
211
235
137
164
166
199
136
146
151
211
191
223
213
245
168
239
240
222
156
193
181
160
190
185
218
207
183
194
289
214
203
186
189
197
205
183
231
218
176
230
156
180
183
192
154
164
220
174
232
201
200
170
248
206
154
183
252
188
223
200
237
217
220
225
220
204
142
231
203
198
229
212
225
153
161
184
220
223
132
239
183
227
199
221
206
237
196
154
210
207
164
184
214
256
187
191
218
235
212
168
191
253
136
189
211
209
181
202
175
188
206
188
218
187
250
196
208
182
222
195
181
242
215
172
241
149
244
249
254
160
229
234
197
199
203
225
171
213
239
159
140
162
198
200
206
207
231
218
196
149
179
145
133
201
200
184
155
277
213
252
232
193
202
192
174
190
231
250
233
189
193
165
163
200
161
180
224
170
214
191
214
234
196
152
242
165
223
198
191
173
230
255
176
181
180
246
220
204
207
269
179
160
281
121
227
184
202
223
226
172
238
269
141
220
143
142
224
202
226
231
140
150
199
180
203
187
211
199
183
242
184
165
174
209
202
134
216
157
197
261
167
177
155
175
181
230
155
257
203
248
169
170
224
177
162
209
179
230
199
191
235
235
217
212
202
181
143
226
220
204
216
195
240
210
220
239
242
227
201
164
204
200
190
196
160
209
182
182
201
184
157
156
176
229
227
160
181
217
193
174
217
191
158
136
254
189
202
168
217
220
206
160
183
222
267
188
255
178
214
230
192
270
174
256
174
182
229
211
242
177
239
162
116
183
197
161
218
216
181
160
227
186
216
167
162
147
153
203
178
236
186
168
184
192
260
137
240
250
166
157
214
155
257
254
162
160
169
178
203
219
227
207
245
185
141
219
205
206
258
214
169
204
232
185
237
149
190
153
220
176
218
188
209
194
129
173
154
241
234
157
221
282
202
216
204
174
214
164
232
162
227
153
191
161
242
194
235
193
218
160
227
179
232
163
217
224
211
186
124
209
126
226
118
107
213
190
177
170
226
197
160
159
208
170
255
215
166
209
196
178
209
209
160
190
260
204
239
220
200
146
176
201
165
152
185
244
230
231
264
171
152
226
222
196
180
187
168
179
169
221
234
173
177
185
191
160
197
242
179
196
157
174
138
176
266
219
203
227
195
117
165
205
218
219
258
203
179
241
243
235
237
244
207
207
188
205
220
179
158
144
191
172
249
208
211
215
171
229
206
225
209
171
232
204
210
190
220
240
221
208
222
220
272
175
125
231
124
196
251
227
261
185
215
193
181
193
193
223
229
148
213
201
190
196
184
178
231
221
242
219
189
247
252
171
221
157
150
161
191
228
155
187
188
236
173
163
200
233
223
248
192
211
249
125
191
232
238
164
172
187
207
166
199
212
234
248
198
140
201
218
191
183
234
209
179
222
181
230
215
244
227
214
204
197
232
223
217
196
247
147
218
197
168
205
178
215
201
122
155
217
151
179
216
206
239
206
203
220
182
228
207
172
146
174
256
240
205
123
257
215
237
185
180
179
221
213
199
150
171
205
174
202
255
196
187
145
190
274
188
198
226
214
256
188
143
213
142
216
208
237
220
166
174
174
248
175
244
239
215
231
156
219
138
193
215
233
205
249
192
182
176
184
167
185
215
196
232
219
177
171
198
179
177
189
200
204
235
131
215
207
151
261
163
228
191
153
239
169
120
219
235
270
198
220
200
237
217
207
172
198
246
164
238
275
219
157
235
187
225
228
154
188
181
238
249
218
155
199
232
246
205
213
232
234
175
200
184
247
257
226
249
195
192
205
188
213
173
232
184
178
236
184
131
230
194
202
181
232
178
174
220
180
213
218
186
249
200
174
137
143
183
193
179
235
171
208
166
248
180
153
187
211
155
132
204
188
187
119
268
232
210
218
224
217
248
181
225
222
183
252
156
153
186
248
138
209
273
178
209
162
177
173
107
186
194
182
209
201
280
220
192
160
135
279
161
229
229
200
253
192
148
213
170
211
237
120
172
178
171
161
207
250
251
210
234
188
189
183
247
155
211
230
164
180
238
228
215
226
192
203
219
110
205
200
155
201
224
185
171
235
198
215
190
184
181
263
149
167
196
174
191
221
184
221
250
223
161
192
282
195
83
242
269
185
165
239
168
186
185
226
191
218
173
176
245
241
169
183
256
230
227
192
203
217
199
179
233
191
240
194
214
137
163
224
203
209
227
218
225
235
173
234
141
194
274
181
231
151
227
138
219
154
109
265
223
204
206
254
221
209
181
191
209
167
176
179
193
248
223
218
265
225
171
214
221
246
199
239
209
172
303
191
205
134
267
142
207
219
234
173
169
218
119
224
180
230
212
242
204
154
221
206
235
230
202
204
143
268
225
191
203
223
255
186
205
178
211
226
191
195
173
225
140
199
240
233
162
271
147
273
221
202
175
235
232
232
229
230
163
284
177
243
163
151
171
254
212
198
157
221
204
188
216
186
219
168
224
213
244
178
200
235
161
169
189
214
183
129
233
239
207
210
168
202
211
198
150
255
238
182
220
142
186
116
195
211
157
237
183
189
169
189
220
197
163
209
224
238
223
181
215
288
167
239
160
219
192
228
196
261
253
227
122
238
216
175
189
159
263
176
198
104
218
211
169
254
167
202
215
209
209
159
223
227
178
231
225
279
196
181
170
177
212
210
218
181
200
219
267
244
204
174
231
252
158
186
200
242
270
217
143
117
137
220
242
193
176
201
188
224
300
202
204
236
245
188
245
198
224
190
183
147
226
184
225
215
225
206
188
181
247
164
208
199
202
192
247
176
250
149
207
186
152
224
161
236
215
188
210
176
202
248
226
224
115
249
234
155
200
236
266
179
209
228
205
227
181
238
219
208
196
217
193
211
217
221
213
222
197
215
197
189
231
264
189
215
204
195
148
191
227
176
187
187
225
249
190
240
256
155
198
227
222
216
165
203
137
165
195
233
244
138
150
200
163
219
158
227
234
208
192
200
186
161
197
169
194
194
204
203
212
252
197
175
205
180
173
263
186
162
234
166
221
155
184
125
192
211
175
222
261
190
201
211
220
201
215
250
299
191
225
226
181
243
195
178
246
264
185
204
101
195
171
240
218
189
172
208
109
204
173
190
246
194
227
205
153
247
254
217
182
222
167
226
196
221
149
233
210
213
174
197
181
244
228
256
188
185
163
184
226
243
163
236
147
220
190
252
128
151
180
219
191
187
203
172
197
203
218
214
240
255
212
139
229
224
185
206
239
157
230
240
214
240
159
170
259
149
238
221
232
193
215
149
216
148
169
206
212
178
239
165
124
184
221
190
184
202
136
238
193
174
209
210
215
161
241
253
198
190
216
208
146
128
192
218
185
225
245
212
206
181
248
216
244
174
243
203
229
163
148
209
228
220
199
203
213
146
187
179
167
213
197
209
211
186
211
237
204
251
200
201
150
154
162
170
232
158
196
191
240
207
199
220
204
206
151
210
253
155
193
232
277
158
160
196
168
150
165
229
231
209
214
170
198
210
211
223
195
245
207
230
177
199
236
211
151
237
244
215
186
232
206
275
164
231
173
252
213
167
220
161
192
248
168
193
194
232
158
203
210
183
228
205
128
245
199
183
180
233
203
194
194
200
177
211
254
223
260
166
202
219
192
173
197
151
156
232
201
250
257
202
218
168
215
197
143
268
188
189
174
191
195
208
195
148
238
244
198
233
240
212
215
185
249
213
210
210
226
182
152
243
236
179
265
210
119
234
191
200
171
229
188
203
245
143
230
289
230
212
187
240
165
139
211
183
200
235
207
196
131
174
190
206
270
142
215
202
204
156
189
230
164
183
206
234
203
206
212
207
248
235
190
228
175
201
187
225
204
179
209
178
210
162
134
221
240
178
195
226
211
194
234
195
141
152
262
196
213
168
198
211
181
237
229
258
238
251
201
218
180
204
171
218
263
230
198
186
222
230
169
219
218
262
205
214
167
156
203
232
255
204
200
244
165
189
242
181
181
217
131
152
218
226
140
134
209
233
221
181
212
168
193
199
173
157
152
237
160
160
194
174
160
199
166
228
213
198
221
232
201
200
263
191
191
149
205
211
243
196
204
223
222
169
188
224
225
169
244
212
192
217
140
138
113
209
246
239
191
162
172
248
212
169
208
201
235
204
200
180
241
208
211
207
173
218
210
223
185
224
228
232
211
137
183
182
212
156
145
144
225
188
214
209
193
249
217
197
230
198
241
216
171
218
215
232
199
262
200
203
142
213
251
146
228
170
175
190
172
242
228
139
145
176
224
220
236
181
187
148
203
218
167
230
189
175
191
212
245
171
254
187
162
152
189
179
199
225
187
132
235
215
235
224
155
224
226
187
176
167
228
203
188
252
153
210
202
198
241
248
154
243
212
165
163
171
171
148
154
189
132
234
160
237
261
195
145
225
204
188
225
166
196
185
223
185
224
190
201
222
229
149
235
168
199
147
252
209
151
146
163
204
184
238
203
229
205
185
172
173
231
174
210
212
260
179
177
228
216
164
230
167
224
175
192
227
244
163
188
199
182
210
213
202
207
97
267
188
215
181
203
151
231
243
151
170
230
178
214
271
153
203
245
142
186
218
181
226
218
221
249
176
229
189
166
175
226
214
234
225
166
166
250
262
216
243
197
189
162
147
230
249
267
194
232
174
190
176
175
246
189
183
180
222
179
201
212
193
213
217
248
229
187
221
272
183
205
201
155
221
206
205
220
141
185
228
209
243
209
156
236
173
215
226
222
214
194
226
256
195
175
223
184
176
150
148
133
173
221
217
238
126
214
178
201
199
217
202
136
179
197
196
239
202
199
214
219
125
190
172
186
178
222
251
238
175
211
178
188
214
223
202
231
243
216
179
171
198
221
139
227
179
175
172
169
215
168
201
220
248
199
214
186
247
183
250
169
216
163
183
248
147
167
226
203
191
255
267
209
174
133
273
237
231
210
198
182
187
187
204
117
189
200
216
248
122
245
266
278
275
238
187
221
160
180
186
213
209
219
228
126
184
140
143
179
233
168
189
252
112
217
192
203
174
258
236
191
224
203
246
245
145
218
276
169
246
225
234
187
158
240
207
218
218
206
215
175
216
200
161
179
213
188
164
226
223
236
195
180
161
162
222
172
149
146
141
239
203
246
205
203
198
199
162
216
176
229
203
195
197
175
232
184
223
210
213
167
275
160
255
231
234
238
168
170
172
240
204
288
210
255
169
233
194
200
217
268
168
194
174
185
186
210
210
225
230
183
223
209
209
185
221
158
190
157
212
172
236
174
204
166
155
222
210
185
174
249
270
184
167
139
200
140
200
203
255
201
234
194
238
219
222
190
213
122
279
168
251
206
212
213
159
189
229
229
202
208
220
154
196
178
238
170
216
142
196
197
184
252
166
208
232
150
184
230
176
144
228
212
199
188
218
160
237
195
194
217
207
188
143
206
165
198
209
195
208
214
202
223
199
213
227
191
195
207
150
239
218
178
205
190
231
278
229
227
208
231
230
183
171
193
255
207
127
182
186
225
203
183
216
243
159
233
171
242
171
207
265
193
205
199
182
192
199
185
218
218
186
206
212
257
218
264
238
180
224
140
198
269
198
200
166
219
214
211
263
258
188
199
224
189
131
219
238
182
222
197
201
199
232
236
174
245
284
181
195
173
176
236
218
213
224
208
150
201
232
242
261
221
123
181
201
185
268
234
229
169
243
181
259
126
205
154
184
201
239
224
219
247
236
235
257
146
147
211
266
162
217
181
199
180
202
155
162
222
200
193
216
177
154
255
192
237
128
211
255
192
211
188
185
205
124
177
161
166
254
224
160
191
214
211
231
184
221
241
194
205
198
225
192
219
181
182
222
229
215
166
251
245
181
239
185
259
287
181
196
252
160
242
197
209
240
215
178
198
128
242
218
239
175
255
198
206
171
188
227
181
134
249
180
126
169
233
168
233
185
156
179
187
204
244
191
262
199
216
150
180
189
228
224
255
183
222
164
136
249
194
189
218
201
158
186
142
230
195
214
269
275
207
154
189
173
208
204
226
114
247
186
242
138
222
185
202
187
192
231
198
242
183
186
176
228
222
208
221
238
182
200
207
187
226
189
236
144
141
186
254
155
153
209
263
172
136
211
251
205
185
195
225
214
210
166
205
179
238
208
199
243
224
217
240
174
227
254
183
184
216
156
227
193
191
198
229
203
217
211
180
169
196
179
185
194
186
207
223
185
133
172
253
210
201
190
240
151
174
238
160
254
258
234
225
206
202
170
160
158
169
227
130
173
168
153
173
230
217
182
189
194
190
233
208
272
189
172
196
204
257
191
253
157
268
148
173
133
208
260
197
206
213
220
211
193
192
153
144
208
172
207
196
204
188
159
170
175
218
197
222
102
173
246
215
205
145
236
242
245
247
202
154
226
265
196
212
202
201
236
168
220
172
191
252
219
221
213
168
195
193
216
161
245
194
211
186
158
209
219
193
212
145
158
138
186
203
177
227
217
231
223
204
182
214
208
217
254
224
201
141
212
187
207
217
202
157
233
210
233
194
199
157
272
222
252
172
259
230
227
195
207
278
208
239
239
174
235
182
185
218
182
221
218
216
168
193
209
216
210
244
152
185
207
244
238
126
152
172
148
262
198
239
249
264
202
165
253
216
208
161
174
161
190
130
213
161
268
206
203
230
159
184
192
172
189
179
153
236
233
176
223
203
225
171
184
184
228
229
223
261
148
248
222
177
183
223
185
228
140
239
204
218
229
200
208
232
230
187
197
260
278
221
216
135
225
157
189
195
227
187
140
162
228
173
248
166
178
242
186
208
170
230
201
175
245
160
163
203
131
212
164
190
218
181
222
191
186
204
234
216
247
208
206
197
197
228
176
266
199
191
209
279
265
194
210
217
184
174
154
192
208
230
213
192
167
253
202
192
249
259
196
197
162
241
198
257
194
149
219
214
221
272
242
167
226
251
252
252
225
169
229
164
230
204
172
175
228
155
173
199
161
225
182
195
250
187
185
173
168
206
136
230
202
155
189
232
189
176
202
188
192
195
130
165
216
250
159
177
168
221
245
278
220
222
164
234
195
132
187
207
191
145
242
210
232
246
196
188
229
235
199
254
193
157
258
196
235
191
237
197
221
203
182
222
165
211
183
229
179
162
171
241
224
221
224
178
185
199
207
161
164
223
196
195
215
137
185
190
164
182
189
224
207
253
211
231
146
261
199
193
214
222
107
222
158
226
201
285
211
237
231
181
155
205
195
157
167
237
183
255
177
157
244
183
231
233
208
194
180
123
223
217
204
224
216
231
251
194
217
232
171
129
173
182
250
240
235
232
187
185
146
165
187
234
214
200
290
164
228
235
228
230
163
207
224
212
142
221
241
244
189
204
176
146
194
237
183
204
211
155
203
232
166
154
158
185
242
214
221
222
141
148
213
225
235
191
202
198
179
175
199
248
181
185
206
146
215
188
189
222
233
201
164
183
195
211
232
179
210
117
236
229
202
227
170
209
241
233
239
211
245
181
235
248
206
201
214
180
213
167
248
151
239
256
169
201
169
200
192
189
182
232
235
189
205
164
230
172
225
208
267
194
142
225
261
171
190
251
184
188
238
201
212
149
168
198
126
207
200
206
179
225
172
158
181
209
206
149
159
238
241
196
266
164
200
176
247
145
201
236
199
225
144
227
255
160
228
147
192
229
220
225
163
175
188
201
188
202
184
215
216
254
239
128
231
237
163
173
243
214
275
246
204
234
210
186
197
206
235
285
240
157
122
245
200
208
237
187
174
233
169
163
188
149
163
220
240
206
214
193
154
111
240
166
163
195
200
237
219
136
111
188
204
194
210
231
208
211
187
230
165
233
243
162
167
169
252
159
242
222
193
244
172
222
214
242
200
194
173
212
229
195
224
216
201
222
245
208
210
153
250
180
201
201
206
140
184
188
250
230
229
186
203
200
184
207
235
199
199
168
195
185
195
206
166
161
243
152
215
173
189
254
225
223
248
249
233
130
126
172
234
212
186
207
196
178
189
227
137
245
206
197
214
245
173
205
196
212
196
174
135
136
189
186
147
214
158
170
207
238
232
157
208
191
139
193
213
228
199
152
150
147
159
188
224
249
228
197
208
175
214
132
195
182
243
147
213
208
181
211
237
242
249
233
221
174
219
137
188
190
183
189
295
227
208
92
219
242
176
199
206
245
192
236
238
191
154
219
214
233
208
181
206
201
191
244
291
140
167
218
145
240
263
273
221
223
188
157
188
228
182
189
214
172
205
202
222
231
170
210
182
230
185
167
252
223
218
157
185
247
134
178
133
278
218
209
200
183
185
192
139
227
232
212
195
214
193
219
216
180
217
217
210
248
155
179
126
152
214
223
162
233
173
169
213
143
257
161
209
174
180
216
194
217
221
194
181
178
169
158
218
208
241
176
131
209
217
207
185
161
229
128
200
191
201
253
161
191
261
140
197
171
212
175
223
192
235
237
185
183
178
170
212
195
211
226
195
194
196
219
214
201
169
241
261
163
148
180
260
158
216
242
156
201
186
157
219
174
208
200
188
160
183
218
210
191
201
211
134
232
197
223
154
171
196
193
195
166
193
222
175
204
205
182
198
279
236
231
201
184
177
241
140
169
231
201
195
222
212
209
219
194
197
195
214
159
213
155
195
204
182
230
222
233
188
155
254
208
229
226
233
202
262
181
197
195
183
190
200
223
215
190
239
142
179
237
189
227
208
256
235
187
212
195
190
222
145
190
164
133
200
210
233
134
186
195
167
207
178
149
131
195
192
191
135
192
206
222
211
191
188
213
142
163
186
253
196
138
184
317
286
161
200
144
230
164
219
186
188
221
151
213
222
182
217
203
169
203
190
238
249
228
225
256
238
247
279
219
232
200
163
239
188
273
235
203
223
178
202
215
211
250
234
186
148
153
204
228
216
194
247
189
151
198
158
246
198
164
199
193
172
168
264
187
219
175
260
236
254
205
271
180
198
226
178
141
201
188
100
227
204
141
215
181
132
191
191
167
197
204
194
216
228
142
235
195
176
141
227
184
179
121
191
213
199
209
181
202
204
172
161
212
213
211
209
198
197
174
166
203
220
302
214
183
229
214
154
217
217
232
201
219
238
148
229
158
256
172
218
210
160
229
173
271
233
188
174
143
214
167
203
222
187
213
199
230
259
203
232
208
164
160
167
233
226
271
176
232
230
212
233
220
187
192
149
218
184
162
236
208
250
203
224
115
177
227
221
221
235
227
210
157
183
231
203
179
194
239
172
142
136
186
94
255
233
157
194
256
196
240
195
138
184
200
131
139
275
170
215
222
168
207
200
203
220
198
204
178
172
233
215
210
175
200
197
220
139
266
182
216
225
196
153
188
210
258
201
287
222
233
262
231
229
247
196
245
143
188
186
192
176
139
163
150
172
192
225
193
197
230
190
226
252
146
175
237
121
257
188
229
228
208
166
226
193
144
142
210
175
206
207
214
237
243
192
211
153
213
181
140
190
148
213
205
167
148
185
215
226
165
204
196
181
233
216
212
223
242
205
200
152
209
196
266
271
214
206
178
187
201
132
201
241
222
208
279
217
249
209
215
208
129
194
267
173
256
172
200
233
175
155
185
223
202
219
210
171
240
175
168
141
171
228
245
187
201
163
191
135
168
156
199
206
154
209
188
228
176
178
174
209
182
179
181
188
220
145
205
251
108
176
152
220
135
225
167
205
151
191
203
183
223
145
152
167
216
191
213
222
190
205
204
195
231
183
174
164
223
203
276
177
248
163
224
244
171
174
229
252
169
233
214
192
225
224
216
248
199
148
190
183
198
221
182
222
205
169
183
176
187
240
252
183
218
234
190
238
143
216
227
218
177
171
183
203
176
147
166
207
149
118
169
227
191
182
151
197
165
218
206
178
226
155
172
182
213
206
221
226
225
206
125
261
223
236
204
250
210
235
241
178
190
180
195
199
221
141
219
225
194
204
179
215
243
181
222
214
220
251
249
243
174
296
169
169
221
212
205
213
233
170
187
251
206
184
182
202
206
169
210
192
165
208
193
196
180
205
184
220
171
200
221
169
205
215
157
205
224
203
211
248
192
196
173
248
203
167
250
197
177
209
211
182
199
158
223
223
227
266
182
229
184
181
218
204
167
254
200
194
260
176
207
207
168
185
202
202
308
184
209
203
167
207
181
270
149
229
252
188
257
235
196
218
253
259
184
203
227
117
188
226
215
219
160
222
279
173
218
238
179
201
133
180
246
218
172
221
209
162
180
175
189
207
263
218
209
234
204
225
184
243
193
238
207
220
176
257
208
176
181
253
189
247
227
220
199
191
207
222
215
202
182
70
186
170
193
212
248
183
224
222
193
168
240
152
177
243
163
218
170
265
278
202
185
171
179
196
208
170
210
177
262
214
228
157
228
210
171
170
182
168
174
204
213
183
189
196
188
238
261
231
233
141
261
144
198
157
138
173
185
186
220
215
124
193
225
189
176
217
213
241
226
182
267
119
225
177
180
220
147
250
198
197
181
199
229
164
132
203
183
193
152
205
211
218
213
114
244
202
152
212
202
221
174
202
204
242
240
285
116
138
163
211
230
236
234
210
202
219
169
178
109
176
167
184
222
151
238
165
228
144
210
221
259
231
184
225
192
228
236
163
200
209
276
227
186
88
215
184
211
157
190
170
188
178
185
205
164
248
192
202
242
230
116
163
161
270
212
194
185
200
190
264
186
190
187
210
254
224
241
173
193
202
139
180
186
136
176
244
216
117
225
195
208
174
182
205
242
237
210
243
178
218
206
183
214
192
240
214
145
204
158
196
182
202
175
238
215
232
229
211
145
191
164
225
251
168
244
156
197
256
206
190
169
157
205
210
204
265
172
230
174
219
208
203
233
184
193
226
171
228
229
239
204
135
136
245
261
146
142
265
234
192
246
234
159
147
265
199
199
237
189
193
226
249
193
201
219
125
232
260
147
188
190
210
231
234
185
200
198
151
175
174
265
196
168
254
240
180
166
240
197
174
198
188
230
162
237
190
185
204
180
244
196
181
178
184
215
175
152
187
255
217
139
185
122
185
214
183
163
203
244
218
294
215
199
212
244
172
180
209
195
209
196
209
186
181
170
151
185
181
159
161
172
166
220
237
206
169
204
252
144
209
222
147
241
159
137
255
189
174
216
204
168
254
211
225
253
208
232
208
224
179
205
234
215
206
135
214
177
226
162
208
160
192
136
234
186
228
205
174
198
161
120
154
194
170
222
200
145
218
195
245
187
221
238
199
150
152
245
201
211
190
188
174
197
182
197
177
207
209
201
225
187
235
199
182
176
225
216
191
217
222
165
250
227
184
190
202
181
153
236
192
228
204
162
190
165
153
114
216
200
206
239
230
200
262
170
223
181
193
200
159
266
203
153
230
205
161
167
226
218
227
115
190
133
225
220
149
203
201
225
169
162
172
231
210
247
179
147
191
171
265
207
210
173
195
188
167
234
197
177
164
186
129
111
194
194
220
214
222
194
181
215
198
161
181
250
212
254
180
198
184
223
229
279
164
240
197
210
152
264
241
218
190
209
241
175
209
186
223
209
189
245
155
255
169
200
201
168
214
238
179
210
198
244
185
205
211
163
182
180
176
197
207
172
264
223
242
112
192
214
206
220
240
267
208
200
163
162
133
225
218
201
219
173
209
178
205
177
213
142
207
160
195
267
179
163
223
184
215
210
247
188
210
158
181
191
172
266
162
214
230
223
223
243
190
207
155
182
209
229
214
242
212
163
189
223
240
194
155
173
223
212
264
188
179
170
139
208
203
256
171
203
170
233
223
237
227
195
177
184
190
157
215
249
172
226
199
211
262
187
188
213
200
214
191
215
202
269
283
209
227
214
218
223
229
197
207
157
223
229
208
207
227
194
191
212
153
161
253
175
229
207
196
177
278
102
169
143
255
231
164
222
219
204
171
218
265
256
195
195
195
217
291
177
186
189
197
164
223
130
142
170
188
237
195
208
233
206
211
247
182
166
200
171
205
201
170
217
236
247
179
213
210
211
212
189
195
243
148
266
169
130
159
192
165
198
147
207
193
200
204
138
239
205
239
108
163
145
248
198
191
227
180
167
227
235
221
190
195
207
188
176
260
215
165
205
210
263
215
189
166
188
226
138
181
229
182
189
133
163
222
197
230
153
185
206
248
148
175
146
189
155
222
192
119
224
218
179
206
222
183
224
205
232
183
210
228
211
157
174
227
193
171
203
203
250
227
184
146
175
206
241
185
216
197
175
169
217
140
147
180
207
199
205
238
216
168
179
254
163
169
216
232
175
137
158
162
229
247
228
256
244
257
178
233
155
194
248
184
220
208
222
170
237
257
231
232
142
204
198
179
238
173
203
228
185
243
196
245
179
258
245
125
152
220
236
192
217
204
177
209
179
191
230
198
163
169
221
236
232
179
235
151
243
206
188
217
122
201
231
198
133
212
162
253
199
209
162
167
185
197
171
222
179
183
227
188
233
215
288
222
148
247
167
200
143
273
184
149
171
144
190
193
222
219
175
177
211
139
259
216
250
163
182
253
147
242
185
269
164
219
212
208
207
198
100
176
241
167
171
161
230
232
186
238
228
198
240
218
231
222
206
194
137
210
203
226
220
257
220
235
189
210
215
254
282
201
235
169
167
160
150
228
213
229
222
208
195
162
197
192
183
229
232
155
176
260
215
194
257
197
176
179
204
151
224
141
203
219
244
271
202
210
183
234
88
182
206
240
175
127
231
204
238
218
187
206
207
164
221
238
187
216
123
204
139
201
175
143
202
254
226
168
177
230
232
237
190
172
194
231
261
206
271
215
249
179
145
236
103
233
213
156
160
213
217
213
263
198
180
242
199
265
229
149
241
165
205
227
228
149
202
184
225
187
137
163
154
199
135
219
189
206
218
214
186
216
217
202
232
192
231
167
177
127
215
148
212
269
261
193
147
187
185
220
193
197
165
180
185
165
196
195
264
253
188
171
213
204
204
247
227
202
217
162
184
204
183
184
165
179
268
195
249
213
245
213
210
226
202
175
236
194
201
181
187
127
183
175
181
172
208
164
197
168
246
151
173
175
238
242
229
180
234
246
166
235
252
205
160
206
255
183
237
248
165
207
200
206
242
232
215
218
220
240
177
170
217
207
255
237
220
160
202
178
159
309
195
222
206
119
229
205
233
190
121
241
226
265
224
189
230
191
225
234
140
241
158
191
154
206
156
166
184
235
200
194
214
260
131
239
242
211
170
153
194
196
243
174
231
233
218
236
268
148
229
146
209
276
215
161
140
252
247
173
204
251
238
220
189
149
184
230
195
199
150
148
240
195
229
202
184
174
229
198
205
154
154
212
205
196
184
165
198
169
174
196
235
122
174
223
176
197
167
238
160
208
236
224
214
237
196
158
234
216
200
152
161
267
225
196
194
189
222
163
241
208
213
233
158
125
253
188
187
198
208
259
190
220
187
204
170
192
221
140
226
213
222
171
188
204
237
169
262
202
143
191
161
254
192
185
232
171
232
173
213
189
229
178
236
223
245
183
140
227
138
174
222
124
159
185
206
238
255
198
246
213
198
227
249
175
194
198
166
198
213
239
212
212
207
215
274
192
261
184
181
261
163
239
207
218
199
201
234
243
176
236
142
221
148
250
222
258
228
185
150
194
202
159
145
210
237
172
166
187
237
248
160
194
229
201
230
150
234
186
245
208
224
212
188
213
229
174
198
198
228
233
216
229
189
198
206
209
172
212
183
152
167
190
161
213
165
160
215
211
209
161
187
226
200
203
218
165
147
212
160
214
198
225
219
178
178
271
212
229
146
212
201
219
231
148
206
188
188
230
219
210
205
220
238
157
194
213
165
159
170
165
243
155
232
264
211
225
191
193
265
161
210
248
228
134
205
136
182
170
170
157
222
278
173
214
194
145
122
183
205
222
284
176
258
237
131
256
191
232
246
238
160
196
199
182
222
188
230
301
214
238
204
181
208
240
210
210
221
199
152
191
209
191
255
147
157
184
197
191
201
229
167
224
207
196
192
196
206
219
131
211
222
220
209
200
184
152
250
185
189
190
189
181
217
225
221
251
193
217
221
112
210
234
219
206
158
173
204
151
231
192
167
206
231
215
247
215
224
176
199
165
236
209
236
193
211
252
221
256
242
187
263
160
192
186
180
159
234
185
189
140
234
186
183
172
208
198
212
163
230
210
216
256
228
194
188
176
224
203
215
168
230
178
236
220
225
214
234
114
160
226
186
154
200
135
264
149
238
181
241
192
204
229
194
158
162
226
150
251
223
152
168
194
146
157
193
247
206
194
254
208
196
124
199
166
180
191
194
211
248
145
231
209
201
281
213
236
196
243
246
243
146
142
184
195
207
220
250
143
257
266
160
237
260
112
261
196
206
114
182
273
198
177
112
171
221
213
186
184
200
230
247
227
189
236
225
194
193
175
202
224
187
230
190
242
168
123
195
219
165
180
252
199
197
236
232
226
233
179
160
211
217
194
213
228
182
160
205
169
214
230
246
268
208
218
236
279
195
120
300
208
222
203
199
185
229
162
204
176
223
220
235
146
183
243
179
223
209
205
229
174
194
175
190
205
238
217
125
212
223
249
213
219
162
214
232
217
177
223
148
231
226
195
211
170
185
256
108
165
176
183
157
152
255
251
204
259
244
228
176
206
237
200
143
196
198
257
142
256
131
231
245
242
211
162
197
201
163
223
195
190
156
176
153
155
248
249
164
202
221
190
220
242
188
218
205
244
248
210
182
232
206
234
196
214
200
202
231
152
186
192
197
209
164
251
213
179
218
213
186
162
207
235
189
228
192
207
256
150
206
203
179
165
207
181
248
219
176
117
186
254
194
234
150
225
248
235
169
226
224
199
192
191
176
218
208
283
234
134
173
184
213
225
192
239
107
245
214
168
161
134
167
213
216
192
213
251
187
270
217
204
220
197
218
186
244
231
204
207
170
180
214
239
230
221
170
214
239
218
196
187
195
179
199
163
201
217
223
275
194
204
209
223
239
179
175
174
203
207
268
138
194
212
143
182
126
208
173
244
219
173
172
180
164
227
137
254
205
162
183
137
238
151
233
153
188
227
196
226
139
237
192
154
168
251
183
231
158
231
186
200
182
136
132
197
150
209
235
193
145
141
211
179
184
111
185
188
236
173
191
192
193
166
178
188
216
223
211
101
207
179
212
189
226
150
251
250
165
203
208
184
188
129
258
185
194
174
209
179
259
228
290
237
184
137
198
156
219
135
218
207
143
203
187
250
203
250
246
228
235
240
196
180
232
214
256
250
202
182
187
210
192
200
223
190
175
158
234
146
219
219
221
193
204
227
218
232
184
125
253
205
211
178
148
183
212
260
203
232
234
153
214
170
236
137
252
220
250
186
196
246
211
200
213
215
148
136
157
210
284
155
222
241
227
187
241
201
197
220
210
158
200
186
161
171
202
235
213
212
229
192
197
237
222
220
152
199
227
246
129
154
229
236
251
158
226
216
233
231
221
232
123
253
185
251
235
211
238
124
208
182
226
221
250
175
265
198
220
209
154
212
195
182
175
178
247
249
209
177
193
218
246
196
232
191
217
202
202
197
234
213
202
218
165
242
211
202
231
167
179
178
231
213
269
213
197
212
227
246
258
167
228
197
162
203
217
182
236
134
151
173
148
126
190
178
206
190
167
203
208
237
132
170
231
172
198
209
160
196
207
269
231
242
171
180
188
228
247
180
183
175
208
213
150
166
263
156
159
204
157
235
214
225
185
176
185
220
226
170
227
124
244
192
234
143
214
222
175
159
195
190
216
241
230
207
229
230
230
167
241
182
169
182
218
169
192
212
214
207
191
172
199
243
167
175
237
179
241
192
213
194
243
130
234
192
222
199
157
237
176
121
199
229
173
223
182
176
195
214
223
204
236
163
245
187
184
162
202
225
224
232
188
150
230
242
176
256
216
171
278
256
146
184
273
175
222
184
246
209
209
242
185
151
198
163
232
232
166
154
175
163
203
162
286
211
200
212
179
263
253
202
139
210
185
190
174
196
237
192
166
158
231
232
122
133
210
225
207
127
175
179
176
176
189
145
193
168
200
142
182
151
219
166
189
229
231
142
250
132
210
227
203
178
222
222
224
216
151
248
224
243
224
225
209
160
176
182
145
257
203
190
230
178
216
194
198
194
192
191
168
173
180
146
243
240
261
234
177
173
189
176
232
141
178
260
225
173
191
206
205
206
178
213
228
189
218
215
103
198
180
191
243
205
224
221
150
196
210
189
249
228
204
215
154
224
212
180
195
206
205
226
170
249
202
231
197
176
267
196
246
204
197
205
211
208
117
234
207
201
213
232
205
210
192
248
214
169
228
156
196
268
235
235
218
175
211
183
251
149
139
179
145
206
242
176
238
137
173
231
244
210
207
238
218
212
237
184
229
221
230
152
201
213
239
174
255
171
211
264
236
197
189
189
199
238
188
184
151
209
173
220
174
161
224
184
206
197
231
240
244
193
300
196
194
218
207
212
223
160
238
192
209
146
215
189
187
177
143
184
241
239
207
185
208
161
231
239
146
235
224
146
173
193
178
218
183
185
176
211
239
172
223
128
172
237
162
191
244
211
166
196
171
169
215
182
132
223
200
203
187
191
181
180
223
180
170
193
158
202
194
185
177
215
164
247
254
208
156
183
171
189
170
202
153
224
171
213
200
231
232
184
220
214
213
266
209
206
170
227
229
212
161
172
190
205
208
208
185
228
234
188
109
142
172
189
246
292
191
158
172
184
187
202
252
216
201
184
215
246
234
250
215
241
213
254
147
179
222
255
178
165
136
185
208
121
200
182
141
227
267
193
210
161
178
187
194
215
241
177
252
192
252
180
181
198
150
220
149
243
129
131
216
177
199
241
170
169
160
238
182
119
179
187
221
219
228
232
181
181
238
222
181
227
194
189
285
207
233
279
210
183
204
250
204
229
172
108
189
215
195
212
207
199
241
160
245
195
243
195
197
170
157
172
209
190
166
185
193
182
234
171
192
237
194
179
186
195
202
172
180
209
185
156
224
220
148
191
208
203
120
220
194
227
228
192
117
248
175
181
192
191
231
164
204
197
176
151
191
153
214
213
192
136
186
191
206
191
143
193
187
205
245
163
277
197
182
248
189
239
198
194
116
165
230
174
229
157
160
155
242
168
156
199
243
235
230
202
199
200
194
182
150
172
197
179
189
222
174
203
174
236
154
165
201
224
160
219
213
184
262
232
200
253
149
165
175
212
156
235
207
223
189
177
244
231
148
252
270
163
198
174
265
157
158
176
224
192
154
209
162
197
217
233
283
159
204
253
200
144
189
195
158
211
118
217
127
250
197
154
206
198
151
170
217
234
187
202
217
228
246
204
185
176
177
182
281
192
184
267
151
264
95
207
239
227
200
178
165
174
212
137
233
235
267
176
180
206
254
236
186
261
257
174
130
181
211
163
223
197
220
181
230
223
256
231
161
156
220
151
132
238
219
182
207
169
239
217
253
220
235
190
222
182
205
195
234
263
235
181
195
180
135
160
270
218
190
105
113
203
218
217
210
181
215
242
147
131
164
220
254
217
146
214
141
219
253
160
168
218
181
222
179
218
207
215
212
202
245
196
219
223
206
232
263
191
248
164
142
217
202
240
283
234
217
271
191
183
209
184
187
202
258
178
230
246
171
279
216
159
165
199
208
179
230
183
195
201
222
149
232
192
221
253
193
261
228
165
133
234
219
210
220
200
176
133
182
227
196
141
219
249
215
196
207
154
208
228
160
189
275
183
138
205
207
219
217
231
208
199
140
220
144
270
233
241
203
223
222
238
198
203
180
214
201
218
212
250
249
232
221
205
161
165
205
191
195
262
223
200
188
151
180
149
268
177
189
170
197
186
226
238
236
227
192
249
189
202
192
149
180
209
234
159
180
208
213
232
176
264
197
242
162
189
201
150
190
214
149
156
146
196
149
219
204
268
134
225
188
178
176
171
247
175
227
171
159
267
147
185
212
181
245
141
172
254
201
234
153
160
208
159
175
197
142
199
252
266
208
215
154
180
164
270
229
267
190
242
218
194
202
187
190
203
244
175
146
155
220
179
199
218
204
261
207
205
117
188
244
227
190
206
188
250
161
135
224
235
194
200
223
193
241
216
201
185
232
147
184
178
128
174
230
218
217
164
160
223
219
195
212
231
212
195
174
198
213
271
141
190
230
177
214
222
199
189
213
189
173
241
211
242
213
224
224
199
265
165
208
211
207
129
158
196
76
221
220
172
148
211
231
195
191
237
245
223
223
204
262
262
213
182
199
188
193
169
231
220
217
210
162
197
177
177
206
227
183
164
213
224
209
170
155
199
206
184
184
199
241
214
198
231
212
179
267
120
169
233
188
181
181
186
200
242
192
196
224
190
190
157
178
183
171
252
212
222
181
222
196
252
202
208
253
167
214
207
186
190
212
181
197
230
246
173
209
205
176
239
232
193
175
202
196
187
182
234
191
199
246
171
211
241
173
245
190
207
163
231
215
216
252
248
211
226
180
196
221
159
274
172
192
211
178
195
252
213
174
193
231
171
192
163
179
171
213
181
180
179
154
188
153
220
137
168
208
256
218
190
202
263
218
180
233
140
197
204
186
179
185
226
146
171
195
194
201
163
221
182
190
214
175
217
214
127
197
190
238
208
207
254
195
143
234
192
216
178
230
184
220
199
193
235
200
183
136
188
225
262
183
172
193
197
260
191
234
195
184
232
208
216
205
167
177
173
186
138
165
218
182
197
201
239
182
169
200
160
231
222
160
174
148
186
214
191
211
241
181
197
162
172
181
170
227
170
179
200
192
194
199
203
195
257
169
205
160
191
218
150
271
152
215
231
155
181
148
195
151
224
222
265
213
205
205
226
146
189
240
214
186
222
249
214
198
144
181
200
218
236
232
195
263
183
219
153
147
188
132
176
169
157
148
280
144
242
179
140
186
150
173
146
177
226
197
215
114
248
189
187
218
204
201
162
188
179
224
186
227
230
209
184
183
167
193
203
197
277
200
213
204
195
143
181
234
258
188
195
218
202
154
279
177
150
217
217
213
217
196
138
124
183
199
222
170
188
228
222
195
195
153
240
199
175
239
212
146
215
220
178
134
188
172
188
193
215
185
230
230
198
189
198
230
197
174
164
267
177
151
175
207
214
173
169
228
219
166
204
200
153
203
166
242
117
225
240
149
202
186
188
164
235
208
206
202
192
230
211
204
244
223
164
197
207
145
183
207
269
220
175
199
171
205
186
220
266
208
195
257
166
180
215
214
176
200
167
192
217
270
183
208
249
145
215
167
200
206
218
188
189
194
243
183
174
269
219
240
242
203
216
203
177
192
221
246
200
243
224
163
192
241
199
230
193
291
185
200
212
203
145
216
207
167
158
204
193
232
215
228
222
152
248
207
246
213
214
241
233
204
190
187
212
195
228
238
206
201
191
253
236
166
225
214
238
239
188
161
198
195
209
181
248
229
173
195
192
184
240
212
189
237
280
154
180
196
204
158
225
179
208
197
223
237
222
170
187
192
212
185
262
187
202
238
211
236
180
234
177
228
200
193
135
285
152
209
229
247
192
167
207
174
164
213
230
183
184
160
134
220
199
226
240
188
231
113
217
244
230
220
197
126
174
261
232
199
162
205
207
243
226
156
142
228
173
166
252
164
252
233
174
223
226
219
224
191
155
164
170
174
234
187
138
186
248
186
121
210
178
155
170
231
238
162
210
196
239
171
216
212
189
197
208
244
237
226
173
209
196
188
235
196
200
207
189
143
197
180
218
220
202
226
254
202
204
201
207
236
205
229
243
222
148
214
169
206
214
250
270
233
198
187
154
191
206
203
196
182
203
199
224
233
162
187
236
249
162
205
214
219
177
228
192
200
145
238
122
253
191
190
242
208
193
234
187
193
217
204
244
168
216
205
158
183
225
206
208
190
231
192
197
253
202
200
203
154
170
222
132
272
198
198
181
186
227
196
237
197
248
247
182
184
162
159
208
226
173
212
253
188
193
142
255
181
185
245
196
196
206
170
192
141
145
241
183
186
200
181
184
179
179
179
159
186
147
141
217
214
191
177
234
203
224
184
170
247
161
227
208
223
168
110
161
253
206
144
215
221
196
184
192
213
230
205
209
220
239
206
147
212
211
160
139
236
221
153
219
135
151
200
235
157
171
135
194
221
153
197
197
198
188
168
246
165
206
220
280
213
218
151
210
217
181
217
198
198
215
208
163
209
264
173
240
242
254
193
219
195
174
213
210
252
193
167
210
230
225
156
216
230
189
197
213
189
169
233
224
236
228
226
168
259
162
113
179
267
235
174
171
180
194
108
190
162
222
244
238
187
141
205
151
192
180
186
244
238
205
237
192
227
236
150
224
186
222
137
189
216
235
192
225
198
172
176
182
217
188
181
189
237
184
171
219
244
225
196
173
171
269
180
149
119
215
189
195
188
241
240
233
228
215
193
209
206
261
229
246
191
221
220
214
135
232
204
253
149
227
186
199
203
233
203
230
196
212
204
176
180
199
192
200
250
254
210
219
185
144
161
186
171
215
195
188
233
240
189
197
123
144
231
182
195
205
209
207
217
199
163
182
216
127
255
182
224
259
154
183
189
204
182
211
138
201
205
209
268
210
170
189
168
217
222
186
263
161
254
188
187
170
171
114
255
162
205
230
205
188
123
263
224
151
209
160
246
189
200
195
192
139
229
184
251
140
187
199
248
205
218
213
210
216
169
232
220
238
219
184
225
131
149
181
128
220
188
202
252
186
244
235
202
204
213
192
178
254
158
256
193
165
218
204
183
161
119
249
208
179
190
232
185
155
179
207
173
232
136
198
147
172
232
215
199
235
217
191
202
165
181
124
184
157
230
221
233
252
255
232
169
159
151
193
146
238
230
275
203
253
212
246
184
181
206
204
182
267
234
215
192
250
251
185
230
222
241
185
205
165
168
140
220
211
244
249
131
229
282
195
202
265
172
215
134
196
159
220
208
181
271
185
233
234
209
194
218
164
254
200
180
169
245
170
162
152
150
244
225
117
207
130
136
223
120
132
266
145
198
155
238
196
214
197
158
236
193
203
167
215
234
215
232
229
171
171
142
237
196
273
213
211
250
207
171
245
212
212
219
227
178
286
233
176
181
213
248
173
171
184
173
203
207
141
185
236
214
109
207
177
217
261
182
163
218
162
237
226
212
211
188
259
150
154
201
133
182
206
183
183
213
196
224
212
196
193
202
216
280
175
185
240
180
229
219
174
132
170
265
207
200
237
219
242
240
209
242
143
147
171
177
211
181
257
116
239
168
162
183
176
212
193
216
162
215
207
186
195
181
186
151
224
210
179
242
156
214
250
200
180
201
206
178
207
182
229
195
144
198
176
183
248
188
194
244
227
187
170
201
217
245
296
169
196
184
195
158
217
153
187
235
231
218
180
181
256
183
154
170
195
206
226
258
207
243
194
187
219
211
160
233
187
182
196
186
166
188
218
223
152
247
250
153
197
153
163
164
170
137
188
177
152
122
189
186
198
202
146
156
231
214
117
190
194
144
223
137
214
214
189
265
187
185
218
228
216
177
233
189
220
229
237
237
199
215
241
226
237
225
173
152
195
192
236
192
191
197
186
223
230
168
185
234
149
221
209
187
180
163
223
231
166
199
198
155
221
154
187
223
246
218
202
189
178
226
171
185
214
167
119
212
248
182
148
164
173
143
186
153
175
240
146
212
148
177
163
248
166
198
175
219
254
227
219
210
163
179
127
204
158
158
220
166
167
190
228
256
239
260
200
212
212
248
219
164
160
249
222
176
240
156
264
173
180
260
228
174
203
209
171
198
220
200
239
151
247
202
165
219
183
155
214
185
164
167
189
157
221
226
245
165
187
232
246
187
137
153
209
200
180
247
251
209
215
188
197
232
231
208
208
240
205
188
260
165
156
227
220
192
224
160
150
197
192
149
215
219
222
230
173
215
170
201
173
168
204
200
189
171
183
234
178
153
182
240
221
219
144
164
224
198
196
150
201
215
281
251
229
149
248
216
198
169
259
218
161
258
194
174
215
215
182
168
268
202
167
210
209
150
130
205
191
252
251
197
161
204
204
138
182
225
247
169
166
204
214
183
210
187
205
220
181
154
230
179
228
222
182
132
205
256
228
227
224
235
155
200
221
227
282
164
242
206
208
224
172
159
161
251
199
236
191
159
209
185
235
225
152
275
248
238
235
176
253
164
218
192
202
133
218
242
208
140
129
235
188
207
177
248
205
210
159
223
202
197
249
279
173
155
241
172
173
137
196
194
196
209
209
208
138
163
216
166
171
240
161
270
196
175
178
239
149
242
241
227
199
160
184
190
236
199
220
254
272
183
200
243
216
230
204
274
172
187
144
233
186
173
125
155
161
164
255
214
177
214
177
204
185
181
152
180
212
236
186
226
190
195
149
153
204
232
246
192
183
162
175
192
202
122
129
216
227
221
199
222
163
166
212
193
164
193
240
218
195
242
196
190
141
201
217
242
174
224
229
170
200
191
205
189
240
221
195
237
159
195
261
177
193
232
182
172
210
178
272
216
225
130
252
154
181
170
245
187
195
252
213
278
241
199
143
200
214
223
201
219
206
207
216
190
114
179
184
220
257
197
218
153
144
260
240
226
146
216
225
153
152
199
211
273
162
198
196
134
171
239
147
257
235
205
224
185
134
235
216
189
192
176
207
222
197
192
175
215
236
255
242
162
203
120
237
139
266
168
209
208
161
147
252
175
204
192
232
230
197
179
194
179
179
253
195
241
248
170
130
188
178
180
176
159
186
226
189
187
250
220
234
215
242
157
223
185
274
148
248
130
170
237
227
208
211
179
181
200
178
194
211
229
246
93
146
231
207
201
243
219
144
209
247
191
224
187
176
257
173
239
214
152
168
205
139
213
244
253
229
210
144
230
229
201
247
236
244
183
176
166
204
185
208
251
202
244
207
224
193
195
221
179
224
205
186
211
187
224
226
141
165
260
211
227
252
232
221
204
150
202
221
209
219
217
228
248
207
197
257
173
205
159
243
156
151
257
201
204
215
183
250
185
239
209
218
214
147
220
253
236
236
186
191
250
174
137
181
224
211
192
189
245
170
222
178
110
197
243
257
190
146
221
158
159
222
182
217
202
144
237
284
210
145
208
146
201
220
151
248
255
235
195
144
181
224
146
153
200
168
143
205
173
281
253
241
194
182
220
211
214
189
167
227
205
151
212
217
235
200
239
226
174
238
196
260
208
201
243
205
237
245
210
235
181
201
203
185
258
215
184
230
192
219
216
219
166
203
197
195
209
227
167
213
242
265
229
247
223
190
219
173
168
172
230
248
200
218
229
187
191
120
212
162
184
243
213
170
137
220
194
200
222
223
195
224
141
243
154
206
156
206
245
209
119
191
181
212
188
222
180
157
195
197
148
236
204
234
174
228
182
184
221
234
193
187
226
157
281
153
119
143
202
143
179
229
210
275
225
194
172
148
218
228
272
156
251
250
232
169
179
235
207
228
176
207
218
236
221
207
193
162
197
190
185
202
156
161
196
195
188
179
207
218
217
198
252
197
199
147
231
229
235
204
187
149
198
199
186
193
195
217
250
199
167
261
193
276
198
136
246
242
182
172
191
193
200
192
243
183
230
212
213
168
198
245
223
169
186
194
206
259
215
196
143
221
214
243
218
175
225
169
198
217
232
156
191
222
139
183
179
209
183
249
182
199
182
163
187
166
206
173
121
185
209
248
146
182
203
214
194
212
193
171
181
160
173
188
195
181
208
188
185
192
213
195
161
192
241
250
151
264
150
219
174
202
259
200
175
194
250
186
200
267
202
225
223
192
188
218
245
181
234
229
213
178
178
163
149
220
181
142
106
223
213
305
185
219
199
171
205
214
230
129
155
210
226
181
216
193
229
223
211
216
211
226
224
222
164
210
193
202
177
202
214
154
200
204
256
204
194
178
165
170
140
238
224
242
179
202
189
165
147
186
204
214
161
207
261
200
214
247
216
217
195
223
267
236
199
231
207
234
163
255
244
211
217
203
191
192
198
143
196
213
230
146
262
275
255
173
195
219
203
215
233
165
257
186
183
131
239
147
235
242
218
249
221
182
216
200
193
249
192
183
206
204
132
114
225
216
223
150
160
218
186
147
229
208
217
213
171
145
226
185
208
191
199
232
180
217
200
187
216
149
225
204
198
252
202
193
204
221
199
168
166
163
208
200
236
180
185
181
201
210
215
244
240
203
204
152
230
216
276
212
198
261
207
177
216
247
127
172
200
238
210
178
235
172
243
184
161
194
223
207
228
276
142
196
233
89
192
159
221
168
210
212
242
198
167
195
213
179
152
238
259
219
198
225
163
201
234
182
194
180
201
206
189
182
264
217
213
189
152
219
225
197
230
211
171
178
229
242
167
179
221
137
166
177
219
238
216
227
200
238
182
240
258
161
180
207
191
291
196
185
222
168
208
220
232
212
186
210
190
160
242
218
202
256
211
249
161
194
179
164
205
221
182
176
211
200
193
223
211
174
202
230
207
219
233
155
232
218
177
213
203
153
231
174
210
178
185
215
175
214
173
236
213
204
181
147
189
208
202
140
255
243
224
224
207
243
217
155
182
213
198
245
155
189
220
182
155
207
200
166
290
215
166
198
154
159
181
208
203
162
175
234
153
196
233
198
204
240
225
242
192
213
234
138
253
224
199
166
156
252
200
228
254
120
219
228
201
140
182
223
186
181
256
195
225
211
220
217
243
154
204
211
189
191
211
214
226
201
187
218
205
226
179
243
193
157
218
135
193
208
183
233
183
177
177
239
213
237
214
185
170
189
200
149
209
175
207
226
193
196
231
224
261
203
199
183
181
218
220
173
153
202
253
210
195
173
143
124
154
195
197
233
226
189
173
151
225
211
202
236
198
251
152
189
236
187
241
144
168
194
236
203
200
185
189
160
171
165
197
208
217
261
127
208
198
169
174
221
169
269
267
153
257
170
185
86
225
192
245
180
189
236
163
204
221
198
192
213
150
215
233
197
204
213
190
213
218
189
229
231
233
227
199
197
217
230
252
159
239
187
231
169
189
156
116
225
196
215
240
152
276
163
154
228
172
201
216
191
163
169
143
180
161
195
164
171
183
260
191
190
214
218
134
215
146
223
254
198
236
227
282
210
190
246
266
196
180
237
206
223
236
163
174
206
198
248
254
203
197
247
258
189
160
202
205
185
237
180
191
213
178
243
157
171
202
220
210
250
223
195
192
139
189
160
221
240
155
222
253
141
138
226
201
242
188
259
261
213
128
256
201
182
224
158
172
147
213
219
193
155
193
188
217
237
140
253
199
143
226
197
223
186
180
159
226
204
156
183
208
212
223
191
216
260
159
230
210
156
171
227
220
121
200
251
125
169
173
152
218
143
186
240
167
210
258
166
175
197
131
196
220
151
239
183
161
240
211
177
185
176
280
238
276
233
183
171
169
188
223
166
179
208
116
198
185
217
202
173
186
183
202
184
241
237
186
202
214
247
240
150
204
223
286
280
209
219
184
143
183
264
298
219
218
207
215
204
208
208
249
225
141
195
265
265
196
196
199
225
215
113
196
178
177
172
228
129
253
174
233
177
219
201
216
248
210
233
199
204
206
131
160
215
257
224
214
172
162
181
231
158
189
183
176
174
148
229
179
138
196
170
234
206
253
173
199
188
199
245
206
107
228
206
128
228
223
141
200
198
220
231
223
190
129
189
236
174
213
226
216
205
223
159
214
182
258
207
217
151
257
143
219
142
264
226
220
149
201
269
235
185
224
212
248
185
208
279
197
249
226
228
170
143
229
174
222
196
163
189
211
176
163
175
115
182
169
210
174
188
208
223
176
224
177
130
210
207
192
177
219
139
233
199
211
226
199
250
158
245
210
218
175
245
246
214
167
237
223
172
218
166
189
170
208
212
152
152
216
183
183
206
186
182
134
219
247
199
228
190
165
256
171
246
194
177
257
233
190
175
193
170
230
255
237
209
200
180
218
205
183
200
178
164
145
171
182
172
189
194
254
218
209
221
163
172
202
184
149
101
193
254
189
104
248
208
230
219
207
209
165
264
206
186
214
170
260
203
160
179
197
219
158
229
184
211
193
189
198
177
159
199
216
199
111
217
210
226
216
257
183
277
226
242
197
231
207
216
200
211
207
124
186
239
182
205
211
236
209
227
157
182
148
195
198
209
174
224
234
228
201
282
163
177
215
192
197
265
183
195
185
275
209
188
198
222
122
224
217
216
228
158
234
180
208
176
172
269
225
224
198
181
233
161
186
205
190
220
176
163
211
239
222
220
175
226
146
166
188
233
205
193
179
211
189
199
167
243
185
197
197
183
200
228
250
198
178
209
219
203
158
228
177
204
219
200
222
224
200
202
181
202
247
249
239
220
177
181
205
236
180
184
200
226
203
146
151
191
208
150
231
189
211
227
166
227
243
177
172
212
171
166
180
231
163
185
224
183
215
194
213
271
141
163
185
223
221
191
218
223
156
215
184
154
185
188
156
196
253
173
241
201
211
232
214
210
256
227
227
193
166
204
204
193
164
235
213
185
259
164
186
196
238
220
210
119
197
220
179
163
227
148
247
217
251
215
202
204
176
219
180
203
207
239
230
206
224
202
258
186
204
192
204
151
204
245
225
209
191
237
232
172
236
246
212
250
227
140
187
176
250
165
212
222
235
234
188
258
227
161
182
192
187
185
209
181
231
159
167
208
193
117
207
128
244
215
197
220
151
245
122
226
203
169
255
225
192
215
179
267
237
228
255
205
202
175
194
234
217
165
176
195
217
271
154
180
227
170
219
199
221
205
98
248
123
196
118
205
252
181
169
198
235
216
179
248
166
169
262
170
197
221
212
164
197
191
260
257
228
191
165
223
224
230
197
177
178
154
187
178
196
279
205
256
237
154
243
117
253
191
215
166
154
192
197
218
204
180
231
198
183
213
218
236
217
221
206
164
107
238
213
183
90
220
230
245
250
189
217
206
226
235
179
199
206
156
176
218
210
191
191
173
199
238
234
187
182
239
199
198
247
246
124
196
127
248
208
151
142
230
197
197
201
207
261
158
188
201
170
157
197
172
250
183
210
239
211
207
207
221
210
191
181
212
192
225
192
221
221
203
182
237
276
211
177
206
203
211
237
216
177
239
187
178
227
202
205
196
167
208
204
191
230
219
173
198
238
225
178
217
203
189
204
209
177
164
259
263
229
226
158
229
194
190
253
195
220
185
196
243
233
186
183
165
258
195
222
193
247
191
194
176
230
217
230
207
163
202
225
173
212
237
178
176
154
196
236
179
163
164
271
204
179
182
181
135
264
219
243
180
212
153
242
150
193
210
170
224
182
196
196
113
208
230
254
220
242
188
177
181
236
221
165
189
238
192
223
157
186
222
224
209
231
176
227
243
157
260
89
198
209
194
158
224
210
266
199
228
162
265
229
220
183
204
177
199
232
246
256
211
243
231
204
236
205
210
144
112
173
102
196
165
256
152
202
254
247
196
192
206
188
145
186
209
209
269
137
152
158
159
154
207
178
225
217
230
240
223
223
182
200
264
232
117
198
182
169
186
171
209
180
237
223
237
203
214
178
217
209
130
197
199
202
231
226
146
202
120
158
123
233
161
153
233
202
159
207
204
233
204
220
179
205
191
211
153
196
197
222
222
160
225
228
220
211
217
218
181
230
270
184
211
169
208
206
184
215
207
268
146
191
231
104
189
158
232
224
220
143
191
220
194
196
178
200
307
203
200
184
164
215
211
185
197
170
239
205
194
190
168
186
217
198
197
241
182
231
225
185
216
217
208
210
176
196
210
177
165
281
288
229
218
204
151
174
178
190
214
160
226
234
211
214
241
178
205
204
170
215
234
214
156
149
234
154
214
205
233
221
233
178
160
211
200
161
250
185
220
137
141
165
226
191
191
267
147
224
252
195
211
187
183
223
166
196
86
182
120
196
188
189
190
133
209
186
219
216
241
175
253
184
208
162
214
187
204
175
198
251
184
231
204
182
222
218
188
199
204
155
198
212
234
195
227
170
185
205
128
222
172
220
189
200
215
131
191
248
230
155
196
218
203
177
169
195
235
189
192
191
181
192
216
219
201
159
198
210
191
143
181
221
226
258
122
164
198
273
150
216
209
192
211
139
210
272
237
205
230
213
191
149
170
248
213
265
167
243
231
182
209
201
232
212
160
214
233
152
205
155
146
235
163
197
201
247
195
241
173
191
233
176
168
226
215
144
165
175
236
145
160
203
187
201
197
231
143
236
249
166
193
243
212
192
209
118
200
154
192
193
178
242
175
181
197
237
183
156
216
201
200
189
207
217
229
144
230
171
185
237
207
126
207
146
175
229
212
203
207
120
186
198
261
186
194
187
192
137
168
113
201
190
261
170
235
243
205
285
131
242
266
169
188
176
231
212
169
209
169
157
193
171
149
166
180
189
191
160
210
161
209
208
270
205
193
166
156
150
216
190
188
237
212
146
220
164
202
197
260
211
245
236
161
153
206
223
192
226
199
187
177
224
246
145
143
181
239
130
213
251
232
147
222
220
177
167
161
122
183
244
185
176
188
185
247
182
192
189
242
209
190
184
231
187
188
168
190
205
180
168
190
230
164
177
184
167
189
130
203
200
236
232
200
239
233
187
201
222
216
215
193
210
162
222
228
220
242
230
142
184
228
225
208
222
177
190
192
192
165
234
180
168
186
207
171
189
163
221
267
181
231
228
280
224
174
236
203
209
218
202
174
207
204
222
167
248
260
196
203
175
202
260
175
248
227
121
218
204
176
159
194
245
227
162
244
168
200
199
206
211
278
193
218
172
168
232
256
192
220
232
194
217
169
202
215
150
249
237
187
238
204
217
182
168
190
207
194
183
120
266
182
213
160
255
229
187
239
238
224
243
243
218
203
207
177
169
126
201
201
185
256
213
255
216
200
200
190
204
166
216
166
163
202
195
252
244
144
149
216
238
215
204
159
181
193
196
182
222
147
211
214
165
161
152
149
221
177
276
237
265
209
198
187
175
234
182
249
264
202
178
191
193
187
157
177
117
237
168
190
181
167
221
202
195
193
125
252
214
167
181
197
213
141
196
233
240
175
189
210
134
181
237
279
168
236
231
188
222
180
224
189
252
269
183
187
268
190
169
211
189
221
230
185
182
225
241
206
168
214
182
235
214
195
205
196
195
245
179
186
210
203
157
212
217
154
203
176
210
211
226
228
179
203
196
186
253
186
200
212
153
183
182
225
137
231
179
242
205
172
191
178
237
100
143
252
189
223
172
200
211
223
217
212
218
209
230
209
172
223
208
181
221
147
220
165
205
193
162
176
182
198
186
156
151
200
200
168
181
187
163
181
168
192
192
177
192
171
178
199
185
242
146
148
195
176
170
210
150
227
261
230
210
205
209
239
212
185
175
241
188
268
139
161
219
209
162
181
151
216
214
146
251
190
215
264
202
218
222
206
232
214
169
206
206
174
213
162
217
186
194
168
182
214
177
214
229
232
200
172
296
221
235
232
173
184
239
253
250
165
215
237
195
185
237
171
220
185
188
267
173
202
173
269
231
177
233
242
198
264
184
204
217
234
248
179
206
215
221
171
167
171
231
205
163
235
160
217
194
225
213
185
198
204
210
209
179
238
196
166
210
171
206
162
209
210
161
145
197
269
165
246
192
195
146
217
187
252
225
244
214
209
215
228
194
205
184
189
209
212
208
240
231
185
180
177
175
184
204
159
232
215
122
184
158
252
208
110
168
156
254
193
225
189
217
132
179
184
254
219
264
199
198
207
174
203
218
189
201
235
201
192
198
221
176
251
152
209
280
201
240
220
267
203
290
216
206
198
208
167
223
162
238
186
146
252
186
213
178
237
201
219
236
267
197
113
164
179
146
126
166
195
169
208
156
192
165
137
211
190
147
263
152
205
205
172
229
195
151
227
187
197
204
191
254
249
150
170
150
216
190
215
266
264
184
234
181
137
212
193
187
173
187
221
199
228
178
185
186
233
210
212
234
145
200
144
259
206
161
247
231
208
183
192
161
215
226
165
157
249
129
180
203
230
189
192
214
199
208
169
146
230
221
304
225
216
168
162
221
214
256
174
241
207
196
217
127
166
223
214
153
199
224
224
187
175
189
203
217
212
267
180
197
203
198
206
171
257
183
145
204
229
173
230
136
229
184
193
144
201
197
184
247
202
182
215
159
200
187
154
213
185
210
177
198
232
241
137
217
198
132
180
222
172
231
224
197
203
179
227
260
219
177
252
134
252
286
207
189
205
252
196
209
152
172
184
254
210
245
180
186
185
222
217
200
202
156
220
219
269
153
216
209
201
228
143
120
154
147
232
193
212
140
209
283
212
184
211
190
212
203
213
217
228
193
166
196
207
191
211
187
181
176
239
220
238
202
95
177
203
202
205
144
200
192
268
164
178
203
197
189
88
224
206
151
216
188
213
196
123
215
233
255
176
201
162
189
121
161
203
226
218
200
207
129
238
197
193
116
138
194
162
240
159
207
212
124
206
214
224
153
136
187
163
222
171
238
149
242
105
205
208
248
182
220
166
179
166
176
212
224
149
206
163
173
178
207
247
181
197
164
246
198
237
234
192
211
227
273
239
273
165
189
212
228
178
163
178
156
208
181
229
195
229
218
219
203
218
147
209
126
144
213
125
253
170
128
226
198
205
143
240
205
193
239
193
214
225
196
212
230
172
144
200
221
212
220
120
202
206
143
172
213
152
213
168
255
176
195
178
216
252
161
177
182
190
205
266
169
163
200
207
215
198
224
109
168
222
179
187
142
187
154
164
241
174
164
197
174
210
127
195
179
236
201
217
228
204
209
131
199
210
162
224
162
193
201
187
209
240
198
216
176
158
192
142
249
179
213
204
167
206
197
259
209
196
201
228
181
215
208
252
180
219
228
207
208
239
168
236
183
203
234
219
200
182
247
209
186
202
191
201
249
223
194
220
196
234
197
244
254
211
222
215
217
216
200
164
198
207
256
251
245
175
128
271
193
198
254
188
245
214
172
207
249
177
198
176
211
249
202
220
218
224
167
194
222
174
219
222
200
123
228
163
202
133
231
244
165
213
197
220
200
252
182
214
166
196
204
229
195
163
227
192
211
202
203
240
175
182
107
196
217
191
209
236
165
146
194
191
219
166
174
257
213
191
259
263
250
202
219
189
135
176
229
174
205
189
177
274
207
191
235
205
176
229
212
173
231
226
237
213
214
115
194
214
270
190
277
218
195
230
253
224
161
215
201
260
245
133
194
247
236
257
196
255
258
216
202
170
235
177
203
120
146
171
233
196
206
122
275
195
193
238
139
249
209
138
199
192
197
198
178
192
182
208
199
183
175
216
215
304
150
210
234
218
147
226
231
157
184
225
285
162
146
169
198
159
228
189
226
225
195
155
204
182
189
226
188
232
147
198
128
140
241
150
252
202
203
197
234
204
186
246
220
97
207
151
173
164
172
198
215
234
150
163
208
198
187
141
209
126
202
163
213
267
225
205
185
155
280
219
229
167
144
228
145
114
184
242
201
216
212
166
223
126
186
181
194
125
156
134
193
245
201
170
242
180
200
201
198
221
112
232
195
209
208
189
183
198
290
186
208
191
196
233
240
147
213
210
164
168
178
149
140
223
217
168
207
220
144
224
247
178
172
150
192
211
198
201
153
244
241
140
180
193
232
212
224
253
248
238
148
183
260
197
229
221
271
196
218
267
155
203
187
213
143
226
199
210
220
212
192
219
175
183
174
152
235
250
213
161
157
151
147
220
163
216
146
241
163
165
181
193
265
205
187
234
200
227
255
192
220
194
189
172
206
223
189
239
225
226
206
210
247
172
201
233
185
168
195
186
189
167
189
185
147
221
251
231
230
194
276
192
217
188
249
236
252
246
190
199
268
212
194
204
223
255
187
243
141
212
261
173
178
212
167
216
211
217
147
211
202
169
176
270
179
179
156
173
219
193
218
202
135
176
175
251
258
264
202
220
227
154
194
167
205
146
227
225
141
197
205
172
199
191
203
211
239
186
171
227
241
237
220
163
158
151
181
205
267
173
196
240
186
183
168
173
227
156
215
212
190
192
136
191
194
189
161
181
170
226
210
187
263
213
205
198
241
217
203
217
145
210
168
191
191
175
174
212
225
246
204
235
174
174
217
226
201
204
182
162
192
268
194
181
239
167
253
130
160
143
202
218
226
128
181
183
116
208
167
201
200
217
198
177
212
133
181
193
151
181
210
227
214
204
234
205
173
176
209
265
241
186
192
211
185
209
195
148
222
162
207
217
192
192
215
224
151
203
216
174
229
199
154
166
255
189
231
211
156
197
212
148
186
227
208
194
237
229
211
229
211
226
189
124
244
223
206
160
199
228
216
275
168
204
172
181
203
235
163
132
247
163
201
236
192
169
196
216
237
226
138
187
177
158
222
239
177
195
186
192
182
216
246
200
191
165
201
213
202
221
194
222
193
231
220
205
195
216
225
158
249
213
191
240
211
244
157
146
179
195
231
241
214
227
132
246
245
186
220
182
158
187
162
185
207
181
213
227
228
139
259
235
164
272
240
191
247
249
185
177
185
275
197
294
212
174
168
232
254
138
258
254
212
200
165
157
183
204
164
208
172
152
165
173
169
237
171
227
249
186
202
219
215
214
181
169
224
225
148
150
168
180
184
168
250
242
199
241
185
210
171
153
196
127
289
174
92
165
188
128
210
233
165
256
163
227
205
187
166
213
242
196
189
125
214
257
228
210
222
166
137
204
153
231
219
182
181
231
150
162
216
232
259
198
198
176
192
242
204
194
181
166
198
234
232
270
176
204
214
210
140
250
226
198
213
132
230
192
214
248
249
181
204
200
174
220
127
233
193
167
181
193
167
165
173
200
173
262
193
149
204
153
167
224
287
189
221
182
214
222
151
214
216
154
233
225
250
292
220
165
135
189
151
210
152
191
222
206
207
238
209
200
197
215
250
195
194
198
155
229
177
234
252
189
158
212
157
253
175
212
243
211
228
192
159
222
221
236
186
212
198
219
212
174
219
212
180
219
135
228
178
245
221
215
226
208
189
184
173
213
191
168
141
182
170
195
225
198
182
224
173
248
212
212
191
246
155
147
206
207
173
226
184
204
148
236
166
153
199
222
150
187
132
174
231
195
246
191
198
188
207
165
167
200
198
193
237
206
209
211
255
248
178
185
258
218
249
221
185
161
208
238
196
206
220
206
230
229
248
199
282
145
201
217
190
279
205
237
228
208
107
162
223
207
175
178
209
157
221
180
178
223
206
181
210
222
194
162
237
192
173
185
217
180
169
128
248
241
165
179
238
261
129
177
151
266
190
228
238
191
198
213
224
184
248
253
195
194
155
204
204
165
145
129
212
201
254
146
148
198
216
156
223
230
154
199
200
226
214
213
187
236
211
211
229
176
227
142
178
175
223
200
158
222
174
209
250
249
208
201
196
187
183
185
241
200
220
163
132
125
157
248
141
183
197
219
189
222
255
171
242
242
168
186
202
174
217
228
199
178
242
126
179
242
192
205
200
200
148
201
174
176
179
219
236
209
237
186
161
210
147
251
259
198
142
221
240
242
174
202
213
228
184
169
212
237
167
230
179
147
194
132
216
225
205
159
218
234
136
192
166
201
194
170
237
159
207
225
204
159
203
258
217
228
146
213
158
199
214
196
176
196
215
216
220
182
235
167
215
204
187
176
179
181
246
250
199
177
160
201
153
255
197
271
230
206
211
204
162
155
213
197
198
182
244
247
208
183
219
168
213
202
191
209
175
227
234
252
230
212
172
252
245
165
241
242
215
143
199
224
249
229
225
242
262
168
231
268
147
230
185
172
171
189
209
196
191
192
189
164
164
182
201
218
198
154
185
203
154
187
188
182
167
202
199
221
148
208
255
226
190
176
229
146
197
249
201
221
191
197
233
190
291
206
253
234
258
214
169
141
194
188
233
237
230
188
187
161
228
170
179
190
251
200
232
221
149
203
254
206
249
238
186
229
220
209
197
183
175
247
224
265
214
164
235
140
267
265
165
144
191
236
157
183
200
155
259
180
196
233
204
228
184
226
248
197
229
203
178
222
206
213
200
189
250
221
206
200
197
185
204
207
244
224
260
165
210
241
246
205
193
166
163
204
241
156
181
203
200
213
172
198
194
168
192
231
265
187
231
208
194
244
148
173
195
207
204
161
188
223
217
221
168
180
206
182
165
196
212
213
221
263
241
222
234
197
192
163
245
167
204
226
195
196
191
174
192
270
252
193
164
192
192
220
192
262
131
221
198
175
166
178
198
166
199
234
203
205
221
217
219
211
180
167
207
211
252
244
162
187
194
190
191
143
224
261
264
146
199
189
259
177
176
201
229
232
176
186
218
216
200
232
229
235
186
133
275
255
190
139
198
187
208
188
202
194
199
209
195
177
249
212
272
183
250
169
169
194
218
175
192
220
194
226
273
202
224
183
193
143
245
133
203
218
190
210
243
179
201
205
222
169
199
204
234
126
154
229
223
192
177
276
143
239
228
256
205
180
232
113
177
207
207
161
209
150
134
176
220
250
182
202
201
264
211
213
139
229
201
194
184
172
229
214
216
214
192
248
247
190
106
219
239
179
253
185
213
206
224
195
242
193
204
212
209
239
125
183
188
198
202
217
211
224
164
193
200
161
186
148
210
227
163
219
222
249
199
236
226
204
187
182
181
215
207
213
193
109
201
165
158
228
203
191
222
212
263
216
271
212
215
147
216
215
207
227
164
135
214
195
124
224
234
248
119
229
174
184
133
219
243
135
191
145
173
158
226
215
227
204
206
137
274
186
152
282
204
218
255
199
189
186
160
132
233
165
179
182
208
186
209
188
160
210
229
175
268
220
214
212
216
199
198
189
149
200
172
217
166
211
168
200
180
218
137
213
174
215
222
254
221
220
205
280
158
223
233
251
205
150
162
212
154
195
205
169
133
157
204
235
176
238
168
201
234
177
226
212
271
204
238
230
180
176
170
257
221
195
198
171
231
219
191
246
240
88
229
230
182
152
243
210
201
257
221
172
257
191
179
256
161
170
150
176
232
200
202
180
238
153
213
184
252
202
210
129
210
230
176
207
206
180
213
223
233
219
200
197
235
233
138
208
227
184
214
295
235
151
186
186
214
188
205
217
256
207
259
223
200
204
199
180
161
254
198
256
219
196
194
205
245
219
200
230
176
220
244
245
170
217
163
196
203
222
198
185
227
198
226
258
193
194
193
208
152
223
170
136
209
146
227
248
191
240
214
206
218
173
243
218
207
267
197
176
243
153
182
175
218
211
215
147
225
237
204
200
212
201
206
123
197
228
196
227
177
143
181
135
229
186
186
152
193
231
244
157
242
228
224
202
150
196
228
167
201
169
147
208
222
184
224
192
181
222
200
183
218
247
211
236
214
213
192
232
208
197
135
150
164
190
138
164
202
201
158
210
229
242
204
224
184
249
195
163
210
249
143
241
193
269
194
181
153
251
195
222
225
204
238
208
188
175
223
221
192
134
207
177
215
162
193
215
220
147
189
165
193
204
217
194
197
144
201
168
168
249
231
209
137
218
163
190
252
153
180
217
153
237
150
218
208
170
228
274
193
191
197
206
217
157
181
185
233
228
215
193
173
207
221
240
169
169
258
238
163
218
241
202
163
227
193
204
225
189
258
175
183
232
176
278
203
229
198
181
173
173
194
227
273
169
255
168
185
256
213
196
186
143
190
155
199
157
176
176
169
184
202
228
187
204
211
121
212
222
129
218
186
210
202
203
124
166
183
215
217
149
198
207
204
179
215
229
154
183
163
228
187
190
194
193
253
272
263
185
248
209
171
228
223
209
212
206
149
209
197
217
176
193
195
244
248
197
234
195
216
221
210
177
175
202
216
149
235
195
195
148
182
236
214
227
215
211
248
135
120
191
271
176
206
188
214
221
192
222
227
232
214
226
192
218
170
249
225
212
229
225
199
191
223
183
227
220
142
177
214
248
153
216
252
200
203
225
198
146
177
166
112
162
203
214
170
255
173
206
251
160
213
188
162
198
192
196
227
203
168
168
208
191
191
243
156
214
153
205
172
201
247
223
228
187
124
207
131
169
196
205
181
209
186
248
192
238
219
144
198
250
212
228
179
160
133
197
179
214
137
211
162
215
179
187
193
138
178
237
214
189
229
201
201
215
145
242
179
259
171
187
101
249
262
187
218
170
282
205
192
207
169
245
243
203
201
209
183
228
243
242
108
198
156
223
202
215
176
203
226
216
217
172
248
220
191
205
164
173
238
189
224
161
189
202
155
185
201
195
244
233
229
148
250
198
203
192
235
263
254
188
156
172
171
217
118
207
225
224
220
162
167
135
171
178
235
186
158
138
176
196
180
213
144
178
205
226
179
207
164
200
197
164
194
176
221
181
106
234
190
173
158
211
241
159
223
236
174
215
247
177
297
151
231
225
228
185
198
218
188
188
163
173
219
212
151
208
152
220
133
213
241
209
213
188
152
219
190
163
166
207
225
160
206
187
200
212
175
243
199
195
203
143
116
194
208
154
248
193
163
122
242
249
139
158
147
261
177
232
139
205
174
226
265
230
269
201
229
216
214
161
201
213
200
284
195
220
165
227
249
237
236
195
215
143
205
194
174
192
187
216
192
195
132
161
165
151
156
197
202
195
172
236
270
224
201
251
190
231
173
193
263
187
165
139
220
208
167
200
234
192
172
202
176
195
222
199
254
221
141
144
162
160
162
187
178
213
216
248
228
174
160
207
166
188
208
203
241
204
202
224
195
250
206
206
182
130
199
230
207
164
177
237
212
208
263
184
173
231
196
217
173
241
208
213
147
224
186
203
172
171
238
233
174
249
233
187
225
173
180
197
146
179
216
184
221
205
206
183
249
203
253
263
169
240
241
208
165
171
195
210
165
220
207
210
155
226
234
233
197
238
235
199
195
199
229
119
213
244
246
243
223
200
200
232
146
233
184
165
176
178
166
228
228
181
117
188
226
318
230
216
192
187
220
121
137
182
231
173
226
231
214
188
178
251
196
222
173
237
184
225
210
178
191
216
227
210
215
241
224
248
166
168
202
215
208
175
196
187
187
211
179
187
226
199
218
235
237
191
187
194
123
151
227
237
192
200
151
252
208
269
246
230
177
193
224
204
222
108
209
209
248
196
198
186
181
229
168
191
150
189
194
156
177
161
272
190
229
252
191
153
174
248
182
183
188
170
208
196
191
188
198
257
180
216
186
205
186
239
145
203
261
249
204
203
201
185
199
259
159
199
182
189
232
249
182
244
230
138
185
249
198
161
214
157
182
221
155
199
195
203
212
195
235
217
201
235
255
157
185
160
222
169
195
206
189
206
205
238
220
158
180
171
171
214
260
179
220
168
135
216
182
144
205
198
183
245
168
180
181
189
255
194
205
219
226
283
168
131
202
197
216
232
245
165
227
210
146
216
164
262
179
164
214
180
191
234
95
213
141
254
189
213
218
268
236
150
195
153
146
244
203
143
177
152
130
193
168
155
176
157
236
214
181
167
165
225
204
202
221
192
229
191
226
194
202
203
207
267
215
145
209
170
167
231
221
216
207
231
165
181
224
166
212
206
251
209
197
232
191
220
235
189
174
171
221
151
216
178
211
241
159
180
228
194
202
261
249
122
179
221
151
242
232
133
240
229
182
214
212
113
217
220
251
193
248
175
218
167
230
172
234
206
220
165
184
153
225
198
268
180
188
228
133
182
201
106
172
232
216
210
255
217
227
187
164
209
209
229
175
173
210
202
239
238
216
255
192
176
192
178
148
163
220
190
192
175
240
190
158
182
177
170
217
117
167
228
135
175
162
175
188
213
207
179
185
252
240
174
220
241
204
173
239
228
203
207
245
205
173
187
176
192
203
169
170
180
209
249
152
158
257
161
176
200
244
254
198
220
149
208
201
182
184
192
202
149
203
238
186
173
265
150
251
139
241
243
213
202
224
207
201
200
191
201
214
193
191
190
134
202
202
224
168
221
248
159
175
189
241
202
155
190
248
176
199
216
245
283
212
176
189
191
227
232
177
185
176
196
184
174
247
186
253
222
289
167
169
237
175
229
207
208
172
280
205
190
244
165
209
217
175
219
238
157
211
255
232
223
176
178
163
210
177
148
243
233
181
247
161
190
185
136
231
233
206
220
207
212
204
226
208
141
200
238
237
209
190
182
143
182
144
256
249
206
183
194
174
150
200
210
258
180
211
236
198
133
190
198
169
169
239
236
196
180
213
194
141
214
204
166
224
168
208
169
203
230
169
195
246
214
168
166
178
207
178
188
214
176
189
227
223
238
120
204
168
185
229
191
219
214
215
194
147
214
251
148
188
234
225
166
184
221
179
201
249
215
254
212
205
199
189
223
200
184
191
295
187
200
193
239
221
200
199
206
210
176
249
241
223
134
203
191
180
230
160
195
228
174
214
219
199
182
277
228
200
210
199
215
201
202
255
148
147
221
153
221
159
197
217
238
258
163
190
226
234
261
169
210
174
215
221
124
225
163
169
235
232
240
156
153
117
172
164
239
157
177
214
208
206
206
275
191
244
261
202
231
210
178
267
165
142
195
211
233
162
236
147
188
223
236
202
195
223
191
220
193
232
203
255
173
245
175
246
186
144
223
239
205
203
173
175
231
210
203
204
264
204
220
201
224
188
200
162
200
192
185
248
232
199
188
205
207
191
226
180
176
174
219
232
208
190
233
199
205
219
215
177
224
215
172
261
207
232
180
235
154
163
210
199
257
224
181
235
177
215
137
231
230
163
149
274
219
246
183
236
183
192
240
123
144
223
186
177
216
173
254
206
170
243
302
204
253
208
175
154
189
222
243
214
170
192
153
259
237
227
179
210
199
197
208
202
252
127
237
178
209
218
234
233
217
130
218
264
177
226
181
186
175
182
201
172
227
228
212
188
240
210
228
225
203
215
251
230
236
216
203
203
190
236
148
269
181
172
182
114
191
243
189
159
193
159
200
177
221
173
240
226
252
206
211
211
199
254
177
239
197
218
228
210
234
229
190
201
179
172
169
240
196
213
215
237
211
233
191
225
239
167
198
142
238
208
211
219
222
176
161
226
181
142
198
270
246
183
189
247
302
190
196
239
207
210
170
201
228
216
186
216
240
236
194
245
176
189
209
205
186
206
232
193
205
185
207
210
188
235
228
190
234
162
187
232
225
188
247
178
155
256
151
200
177
222
211
272
170
207
218
188
213
173
172
213
175
205
235
193
250
213
176
223
186
267
231
219
200
156
207
245
180
179
256
174
227
201
164
166
193
191
183
142
158
187
170
209
156
223
207
232
229
176
222
173
195
209
226
232
230
214
190
217
227
132
192
203
204
132
208
275
209
254
252
234
194
124
145
173
216
190
196
186
241
200
227
265
228
186
177
152
188
194
191
188
228
235
146
181
186
224
211
236
175
172
148
274
195
200
202
169
183
221
187
216
197
179
223
259
173
259
275
172
193
167
203
208
166
228
210
238
232
196
156
231
240
180
211
184
252
212
96
250
195
200
238
201
195
184
154
239
182
119
247
212
194
180
183
185
201
214
171
237
220
214
165
213
212
219
187
252
244
223
231
177
157
221
158
210
204
190
142
265
210
159
189
245
208
219
209
217
237
165
244
214
155
178
185
170
192
190
170
235
153
269
216
220
158
169
229
212
168
192
183
253
199
247
243
210
217
220
188
231
215
173
138
219
179
171
218
234
258
189
236
206
193
149
231
185
204
249
176
129
165
187
241
177
196
188
215
185
249
261
230
224
141
188
191
206
202
162
243
182
180
168
225
172
213
180
201
216
213
179
240
229
233
201
215
166
227
234
173
233
240
235
198
232
243
237
218
202
235
223
179
185
204
213
184
227
168
172
215
202
219
210
196
205
182
169
249
153
199
227
129
124
146
243
137
190
276
238
244
205
241
223
183
242
202
223
231
205
207
265
194
235
178
241
170
210
186
237
217
176
219
247
234
234
231
233
128
190
138
196
108
205
230
156
226
181
171
224
183
179
239
156
205
244
219
188
268
206
181
201
154
250
248
186
268
204
252
194
244
226
184
138
210
197
233
243
187
199
125
221
190
220
228
215
169
175
214
164
186
220
225
194
219
188
119
185
168
224
204
213
156
190
191
186
174
237
204
199
154
216
247
233
192
239
262
215
233
197
212
194
230
245
166
104
120
225
160
164
157
210
193
231
177
206
200
156
237
174
233
188
225
236
219
244
242
167
243
255
247
194
248
170
183
262
220
196
259
229
259
194
244
149
188
213
235
221
205
236
236
258
147
194
190
189
189
101
211
178
165
175
261
198
165
191
246
221
203
209
206
230
185
195
243
245
265
197
218
137
198
169
164
238
237
199
209
169
196
140
208
191
207
219
278
194
191
196
215
204
186
165
172
223
192
183
223
219
168
213
145
193
214
177
194
179
185
213
218
248
234
146
235
221
225
248
207
200
167
198
158
233
165
181
190
209
223
134
238
170
177
169
165
266
254
221
226
197
161
172
181
170
186
168
190
122
228
222
208
164
220
258
239
242
208
267
201
215
215
170
191
174
179
195
202
196
234
263
234
191
203
272
220
206
148
200
204
152
159
188
227
241
200
254
245
243
201
180
204
232
209
271
162
209
159
222
251
212
207
158
219
247
159
195
162
151
206
214
248
194
214
220
229
232
163
163
231
191
182
123
192
190
174
152
208
201
204
173
212
182
172
129
160
194
154
197
169
249
173
248
165
206
226
254
187
205
198
242
181
201
132
191
170
283
250
256
203
250
154
222
213
187
223
237
229
236
140
179
226
221
210
153
193
206
198
127
184
214
199
255
204
205
193
212
203
251
202
219
157
234
172
154
200
173
173
182
150
268
181
228
160
217
151
186
177
192
249
125
177
135
174
196
148
189
169
209
167
189
250
207
202
201
167
156
214
161
172
163
181
201
197
151
209
172
224
202
131
180
287
231
208
174
249
172
245
205
270
211
209
187
168
237
208
163
231
198
149
207
143
244
203
218
226
256
209
248
196
182
176
124
125
229
145
157
252
193
234
221
130
230
208
211
197
149
199
216
154
174
257
216
157
226
266
227
195
223
134
199
193
211
151
206
166
203
176
198
171
156
177
186
222
205
182
178
132
191
163
233
198
198
245
183
167
196
151
247
214
235
225
227
168
170
235
204
174
193
190
246
129
207
189
164
185
198
194
178
198
182
94
168
234
222
241
174
229
201
182
215
182
180
212
189
253
179
174
121
223
231
197
132
181
173
187
232
262
196
227
243
185
199
226
198
215
144
217
224
259
191
188
214
178
120
266
254
160
274
197
196
189
222
196
177
149
167
117
227
208
230
157
197
145
182
251
238
212
227
284
124
242
221
290
231
203
216
197
139
181
162
199
179
197
276
171
230
204
187
205
196
208
164
232
188
245
173
199
203
223
208
229
175
162
230
173
259
177
245
224
156
187
233
204
170
208
221
245
166
131
157
192
191
243
249
222
191
220
258
200
220
232
242
228
157
179
262
157
230
122
236
216
137
194
228
149
216
183
193
231
211
155
200
182
162
207
241
224
127
173
208
236
211
216
195
135
246
171
223
198
247
158
192
210
200
231
270
227
196
182
192
186
208
246
206
154
231
186
177
243
321
173
207
190
207
197
169
195
197
228
279
201
186
222
202
159
212
228
204
141
210
242
145
224
241
176
185
158
133
201
201
207
212
226
174
243
173
203
243
149
193
205
171
262
150
189
139
211
234
175
177
192
185
173
158
172
150
195
255
162
220
197
202
164
263
228
180
243
257
134
171
217
189
173
193
214
249
120
202
125
170
210
225
150
166
220
162
171
175
232
230
233
203
227
175
251
178
204
190
168
220
187
163
232
204
201
266
169
147
210
161
251
122
177
152
190
211
118
160
223
184
193
222
213
220
257
168
186
185
166
148
252
227
207
160
210
206
166
183
282
193
157
182
226
104
188
172
206
215
248
272
253
250
233
231
208
231
186
220
242
139
221
220
199
230
197
240
218
134
202
216
129
195
181
246
226
167
183
253
194
197
205
185
143
195
228
151
205
212
208
226
160
211
225
176
254
161
231
181
139
194
200
217
228
230
236
220
200
145
179
192
213
235
163
192
235
157
172
200
214
166
213
164
257
214
222
258
198
198
254
205
266
180
119
223
179
225
198
287
207
183
168
188
195
247
218
182
199
175
221
232
147
201
228
180
228
228
157
220
176
209
179
196
246
245
175
261
151
191
204
173
224
201
256
208
284
235
164
224
201
231
155
225
153
207
241
235
215
192
251
162
201
141
200
200
245
242
245
180
241
265
167
205
187
235
172
173
233
230
161
198
182
149
232
171
200
170
250
200
226
161
234
159
240
213
230
197
246
177
176
183
187
196
218
206
194
200
207
239
219
225
188
214
235
172
126
194
151
210
121
224
170
195
191
195
211
261
246
229
234
200
236
160
249
203
184
211
240
256
170
186
252
164
152
145
129
159
206
221
159
209
186
249
243
160
239
146
176
210
172
172
222
166
231
174
218
205
188
186
185
214
146
206
179
219
163
194
186
238
151
166
199
217
181
195
238
218
230
136
186
188
173
201
171
195
119
244
211
131
189
199
140
174
225
219
186
194
175
203
210
234
200
245
209
202
197
209
192
197
195
193
222
239
130
246
247
243
182
195
167
175
196
183
221
157
174
142
227
190
197
228
188
208
222
144
210
195
235
161
233
233
167
221
220
242
222
199
248
295
195
143
225
238
199
202
200
141
246
183
206
178
220
212
190
139
222
157
170
142
241
134
183
220
181
265
206
163
231
226
225
196
181
159
176
207
222
238
264
218
242
121
200
205
197
180
191
213
154
207
195
144
238
249
210
201
177
190
222
213
187
182
247
210
227
199
221
183
136
210
189
203
166
192
209
183
304
274
195
182
167
245
165
185
186
200
212
212
206
189
226
266
234
189
202
236
226
246
285
214
231
199
206
128
177
213
209
239
188
171
216
150
252
184
230
237
180
177
267
190
180
215
216
182
225
149
176
233
211
209
235
197
191
219
190
240
241
253
175
162
195
211
156
212
204
225
232
142
233
224
194
189
171
202
176
276
191
174
204
169
229
199
255
144
157
187
211
224
158
233
193
131
187
172
205
221
216
149
233
255
196
225
205
178
196
230
185
196
228
173
209
149
210
212
226
231
248
163
215
169
138
158
199
225
228
216
240
152
223
190
224
186
200
182
175
192
132
221
193
226
176
208
198
196
190
191
223
163
207
184
213
224
140
219
204
212
193
217
187
184
212
162
99
166
194
225
154
239
166
161
194
264
236
178
264
262
241
241
186
239
181
197
139
218
251
205
268
207
194
224
240
134
120
211
204
245
189
193
211
246
231
243
186
197
191
199
224
222
200
135
206
243
224
236
168
241
225
228
236
171
200
225
204
185
193
201
179
191
231
196
174
238
187
172
231
222
208
213
193
231
172
187
195
189
185
160
211
210
213
222
157
213
252
156
131
210
187
211
214
131
180
124
133
231
239
206
197
128
208
184
201
209
208
244
204
207
207
221
226
178
197
210
197
134
238
137
176
209
225
182
125
197
190
170
233
170
238
220
222
242
156
174
163
209
180
219
171
176
180
261
164
139
163
215
132
204
173
226
215
181
266
178
208
292
186
159
154
167
175
206
238
162
139
207
179
172
187
239
222
176
209
234
205
257
198
146
163
162
243
208
188
192
194
243
217
242
169
230
176
234
191
177
222
155
221
260
248
148
222
240
207
158
274
196
153
226
153
228
91
213
164
211
179
206
222
245
185
246
192
198
234
144
225
205
182
161
177
241
300
148
215
196
240
197
161
153
119
228
232
199
145
224
194
189
173
229
244
200
204
224
180
190
215
153
235
222
185
195
182
231
188
230
184
202
189
234
175
132
206
203
201
221
189
174
172
183
286
218
225
252
208
248
182
197
199
228
194
199
237
240
184
219
245
240
191
247
256
247
182
227
233
179
217
174
174
205
264
202
215
185
219
215
146
202
220
148
163
207
186
242
138
184
147
145
203
186
194
246
174
215
229
252
181
199
222
146
260
244
164
175
240
247
199
274
135
181
220
217
258
192
155
171
181
240
198
249
163
171
210
173
154
118
264
229
208
207
206
207
161
182
150
270
182
216
173
126
253
199
164
183
127
190
203
178
239
220
207
176
211
209
178
184
175
216
223
219
241
82
245
165
245
150
134
160
215
200
208
221
196
207
170
210
175
178
215
171
160
230
194
230
190
244
142
180
205
253
197
226
201
231
222
166
223
224
294
184
179
253
236
141
190
179
214
182
199
207
273
199
197
226
213
246
135
174
230
186
170
231
210
171
234
227
189
148
201
199
206
241
229
241
185
197
185
176
215
225
205
137
159
219
201
215
236
219
187
186
122
163
216
181
201
210
230
218
238
143
259
191
214
203
176
206
124
211
127
178
161
213
217
177
211
194
183
193
180
176
264
177
208
186
204
215
170
154
168
156
172
179
190
140
220
188
243
226
208
164
183
171
200
190
213
175
201
171
154
202
225
237
207
198
240
240
194
202
210
211
249
243
161
180
233
202
229
197
154
199
194
208
218
235
198
232
225
168
128
201
218
206
128
137
211
142
230
238
237
234
162
225
202
205
191
181
180
295
178
186
233
169
207
198
264
177
186
206
208
162
269
211
134
184
220
269
204
206
150
224
170
239
175
157
217
159
234
153
172
177
201
230
208
182
155
208
182
159
164
185
174
219
211
250
203
261
174
174
235
181
181
208
118
194
187
287
162
164
243
224
203
225
247
248
241
172
190
215
208
209
199
173
226
147
226
251
166
251
168
231
237
184
179
266
183
205
230
178
265
237
104
205
223
205
223
178
158
202
183
195
153
186
221
217
207
158
124
212
214
255
215
174
246
229
191
229
170
248
178
170
186
248
193
214
174
176
235
193
229
184
185
201
189
195
252
242
201
131
247
208
168
204
168
212
212
144
167
164
169
214
263
204
222
234
190
254
182
227
141
194
212
174
124
193
213
191
174
223
186
204
194
124
229
191
183
218
178
200
181
240
133
221
237
185
154
238
190
220
150
172
196
214
192
190
247
179
196
192
210
194
233
211
229
179
221
181
236
193
222
191
277
209
209
184
206
195
187
239
148
251
196
183
225
174
189
209
202
159
180
279
230
160
147
177
214
191
251
238
187
199
170
206
218
154
207
197
189
211
198
214
217
269
200
173
239
198
150
199
176
233
145
259
195
223
241
220
184
219
218
203
222
255
246
192
228
173
211
226
177
203
239
200
158
228
161
216
199
229
218
221
198
247
214
233
203
221
197
230
184
250
251
181
208
192
202
180
169
212
226
159
161
166
242
226
186
198
222
92
227
178
261
205
218
238
188
168
220
162
201
146
186
246
172
156
190
204
204
191
206
192
141
252
226
177
144
194
215
225
133
157
130
200
167
217
156
190
147
182
180
176
177
243
234
281
210
160
165
214
197
221
232
229
241
208
196
259
215
199
165
224
227
227
203
199
141
204
187
137
184
193
187
151
167
183
225
213
159
183
172
177
189
200
204
213
228
211
215
216
245
240
236
180
241
233
142
195
211
252
189
202
223
241
196
170
220
203
189
158
263
212
130
267
138
205
245
209
226
178
190
186
213
219
204
201
197
230
184
141
210
203
205
206
163
217
233
160
213
203
213
233
184
177
210
211
186
148
246
241
171
169
258
169
142
190
159
177
201
196
154
223
162
221
230
266
166
251
165
152
192
206
179
219
165
197
231
240
207
209
245
158
232
193
251
208
242
188
225
209
198
259
216
163
221
178
129
232
193
188
156
235
262
191
181
238
213
179
150
166
166
270
199
188
182
240
168
220
216
202
220
252
183
188
157
209
223
225
169
219
229
248
235
219
236
220
275
196
260
225
234
185
202
219
212
180
175
167
155
167
165
205
192
178
226
155
194
160
198
154
160
208
210
189
183
201
209
126
196
254
173
190
192
188
195
157
238
242
227
139
177
196
144
175
185
184
167
127
233
219
226
174
201
204
215
186
219
140
182
165
197
202
157
167
238
157
197
165
195
217
162
185
199
172
184
228
213
149
201
245
169
175
205
159
167
158
206
210
210
211
190
160
163
217
242
207
216
239
218
211
178
207
184
169
222
214
224
216
174
206
169
207
224
206
214
245
162
197
228
243
186
232
190
200
216
191
227
195
205
187
206
211
118
247
247
209
233
258
232
199
152
200
217
95
195
199
203
182
212
211
268
232
156
191
192
198
191
192
193
206
241
230
182
235
232
220
214
164
217
194
225
243
153
199
212
192
171
164
175
202
213
174
159
169
148
229
261
215
180
239
201
230
205
245
191
192
214
229
179
275
243
146
198
217
231
161
194
162
263
201
229
260
198
193
176
181
185
150
203
185
240
214
143
185
229
188
138
169
198
190
217
195
206
204
143
208
163
153
222
283
178
153
211
229
223
244
211
178
219
231
190
208
215
161
200
240
208
195
207
200
203
186
211
185
192
220
192
246
208
212
202
221
189
198
181
144
248
204
222
201
226
212
155
163
184
233
168
242
175
216
226
223
206
233
173
217
183
226
183
178
194
169
164
178
208
223
210
233
219
222
239
246
197
161
243
227
167
148
301
211
235
230
182
201
184
191
176
98
208
210
204
132
227
248
213
116
213
259
189
200
187
194
207
219
251
226
193
209
219
248
240
204
234
216
210
213
162
224
226
218
121
197
189
195
188
225
195
222
201
222
170
238
200
251
149
231
245
173
159
210
208
162
235
224
211
190
193
168
101
223
222
242
214
223
190
158
202
223
171
141
185
166
174
230
228
198
189
165
203
242
177
230
159
232
191
164
200
273
145
196
231
198
200
117
190
213
194
251
177
187
229
212
222
228
186
193
228
149
196
154
208
244
162
263
215
223
238
173
185
192
212
162
195
170
183
213
143
192
178
221
135
203
222
211
170
131
247
148
148
207
195
225
233
171
199
206
210
244
250
183
202
170
123
233
198
201
140
261
218
228
107
226
182
205
244
232
193
176
160
137
203
224
182
181
148
204
213
168
246
219
238
184
158
194
146
235
183
236
164
210
189
210
180
185
227
221
234
189
207
216
249
156
157
146
228
211
219
184
235
176
156
215
180
200
225
184
210
166
201
258
169
172
262
159
184
210
150
215
221
211
235
241
185
203
118
263
265
238
217
245
208
185
222
179
196
214
251
233
201
233
214
202
221
237
213
182
156
192
172
142
205
170
196
233
257
228
207
229
227
193
209
244
213
200
164
241
158
275
228
211
139
224
213
239
199
247
230
232
203
197
241
227
202
229
142
232
257
200
210
214
203
201
231
213
250
220
151
206
202
193
249
209
181
171
198
187
233
144
165
176
139
203
180
231
189
219
205
182
188
223
184
151
161
137
186
213
191
156
217
172
154
260
215
170
248
273
228
153
157
188
209
241
168
168
179
182
154
182
217
210
195
190
223
193
167
174
186
219
221
223
124
188
153
224
162
227
164
229
218
217
291
239
159
211
284
211
212
188
206
175
198
194
259
143
253
133
224
177
230
171
170
193
194
146
259
170
216
198
164
187
217
110
220
243
176
215
184
145
178
181
116
144
261
198
205
161
166
168
209
162
223
201
216
144
220
190
209
198
214
210
214
218
243
210
160
223
203
267
139
203
223
221
194
188
156
212
155
207
262
173
262
198
142
203
166
260
164
197
180
240
239
217
254
174
213
216
201
238
213
230
227
196
175
236
203
149
211
194
199
225
171
175
200
229
184
173
193
205
161
148
243
184
213
181
130
250
162
202
218
189
176
153
172
158
241
172
218
188
215
184
190
175
225
270
174
157
225
216
222
247
251
205
211
171
205
188
180
142
237
221
234
222
205
116
254
204
170
226
181
258
169
182
251
160
213
250
144
226
228
148
220
199
132
221
186
206
229
225
177
215
240
112
154
266
197
202
252
225
185
220
213
124
165
194
261
199
178
176
167
220
199
261
175
207
202
242
223
191
198
183
178
222
206
220
144
240
174
168
205
158
205
282
98
181
240
213
200
204
217
173
196
224
106
196
244
175
197
230
212
118
221
259
226
241
202
184
153
217
192
200
256
169
224
192
257
171
242
202
215
205
189
186
200
239
182
269
166
203
264
218
151
211
205
241
193
216
131
184
204
241
264
171
185
254
171
154
175
194
256
235
179
118
242
218
146
209
217
200
242
204
196
221
222
243
193
213
250
229
189
240
204
202
228
147
181
219
234
214
269
199
228
223
257
216
241
163
181
220
150
233
211
188
149
202
205
181
236
181
215
140
224
221
220
284
151
206
213
181
194
221
256
225
212
244
170
211
176
242
218
187
249
247
173
164
181
190
163
230
251
178
160
196
221
178
191
236
231
166
236
181
134
149
182
211
245
221
158
188
242
206
161
209
269
179
191
191
172
253
229
160
228
270
198
220
207
199
211
204
200
201
225
237
250
184
224
223
207
230
200
158
189
232
257
220
172
228
125
240
222
292
215
250
186
179
164
255
215
212
213
177
184
173
115
236
222
198
229
245
218
222
175
218
136
250
199
180
146
189
198
201
222
174
220
220
215
216
255
186
241
210
168
243
135
198
239
138
182
200
169
189
187
199
173
209
206
152
246
237
194
188
223
228
200
185
210
245
234
212
262
166
222
253
162
191
139
197
192
244
248
186
177
152
140
172
213
210
192
216
167
182
195
245
240
263
171
231
216
207
183
138
250
194
132
183
231
183
166
213
182
150
184
224
139
190
194
237
205
123
212
176
189
275
149
155
198
210
194
209
200
241
212
208
248
171
255
130
154
248
191
250
191
260
248
182
185
250
216
209
179
219
248
214
218
171
172
205
182
185
163
202
275
190
181
260
166
191
205
289
159
222
159
232
220
178
202
206
167
140
255
220
230
179
196
218
129
238
160
208
242
195
171
229
197
121
255
202
193
231
195
222
258
198
123
211
184
132
183
158
179
173
256
178
198
200
201
228
207
190
263
188
190
191
189
219
260
201
158
236
174
229
153
212
194
172
202
176
218
241
167
218
190
193
255
235
122
220
254
210
196
135
166
150
268
163
240
207
144
204
242
161
164
249
234
250
237
154
174
168
163
191
193
215
240
224
181
228
199
216
161
128
258
236
243
191
235
135
151
216
210
248
205
195
234
214
234
211
236
194
192
214
229
242
203
204
230
228
114
197
204
183
187
192
199
165
199
178
167
230
208
143
184
218
243
209
189
152
193
195
193
169
236
157
208
133
214
226
215
209
177
182
199
177
223
157
210
219
135
232
241
205
135
204
209
157
211
205
152
185
150
238
119
151
207
195
156
211
228
204
273
213
174
247
205
161
158
138
150
216
170
156
194
218
190
163
186
254
162
259
177
151
185
211
183
241
231
194
153
198
188
247
198
109
204
256
222
211
219
239
227
245
246
190
194
180
180
184
255
217
179
145
163
211
177
147
236
196
133
213
147
239
230
208
255
161
157
192
210
184
203
212
235
198
211
212
119
203
146
185
232
232
223
184
171
218
208
167
240
226
273
218
214
186
170
132
221
186
204
216
224
213
202
102
190
216
204
221
191
185
210
180
190
165
198
175
175
120
220
201
212
276
255
208
137
167
255
252
180
259
190
161
204
229
214
214
179
181
193
168
210
205
238
212
220
188
238
250
221
153
189
216
233
183
244
238
232
163
237
198
278
160
174
168
181
118
179
195
181
213
163
215
238
245
227
242
180
172
230
246
226
140
212
239
171
170
134
202
161
246
231
127
214
245
172
158
270
165
154
182
224
215
169
202
190
263
275
242
182
178
247
204
203
206
227
230
174
230
181
133
154
191
204
181
177
118
225
169
218
184
178
196
198
186
224
190
191
194
254
186
170
241
203
194
207
136
207
220
264
186
194
169
213
122
245
197
165
192
209
237
245
194
204
228
168
100
203
183
231
230
207
159
225
179
217
234
185
185
231
256
192
190
144
187
192
179
240
208
208
218
199
131
204
173
194
223
231
205
241
167
149
164
169
268
197
173
207
238
205
201
204
238
223
209
232
185
162
105
166
205
200
141
181
132
135
206
216
217
243
155
166
190
222
209
134
195
217
199
225
167
176
200
251
234
244
203
251
191
177
149
174
202
226
205
143
196
250
151
215
198
163
145
214
168
153
195
189
239
241
224
204
198
190
125
265
181
161
179
233
207
239
150
176
225
187
232
177
214
237
240
151
242
237
236
268
178
220
245
175
181
219
185
126
202
240
204
191
203
174
204
238
230
178
278
197
183
247
221
213
172
238
173
151
214
214
232
265
177
196
220
216
277
182
207
183
223
229
237
160
200
216
179
199
206
243
169
197
215
251
217
183
212
208
226
224
218
184
219
174
218
233
229
238
239
167
258
191
206
191
220
171
175
228
139
187
247
214
214
202
256
165
279
222
157
173
187
200
205
174
159
225
280
152
153
201
248
194
226
182
256
194
212
221
182
202
218
192
211
230
239
220
211
212
235
187
179
177
195
186
198
201
264
212
206
202
244
216
165
220
193
197
224
174
174
224
191
193
159
135
182
185
232
263
222
202
263
210
172
174
164
174
149
196
200
177
243
166
177
231
226
194
150
262
214
174
180
173
211
210
182
255
142
184
232
172
180
228
217
216
204
153
173
157
255
226
198
207
201
158
171
236
185
165
201
210
205
150
211
230
168
209
190
208
174
257
237
219
160
238
171
253
271
188
272
207
173
256
185
223
230
200
159
247
178
209
257
201
170
206
225
230
177
271
213
190
207
120
229
188
187
275
228
177
168
231
234
199
176
212
179
240
113
151
191
199
261
166
146
246
178
198
204
185
228
181
156
168
143
195
221
267
199
211
152
226
211
242
201
171
181
245
219
241
209
177
207
213
181
161
225
175
194
207
279
155
181
223
178
206
253
207
207
249
198
236
235
123
214
240
172
249
211
180
198
200
162
254
156
145
225
229
285
233
197
199
226
222
198
226
169
190
200
235
208
233
245
184
205
242
236
227
229
238
210
175
191
197
191
193
249
178
224
205
157
247
238
188
239
244
227
181
214
185
265
169
219
247
214
228
148
171
180
164
181
224
214
243
232
164
218
155
263
184
254
196
174
199
193
211
218
168
192
213
178
190
202
180
171
235
199
173
135
252
246
198
214
201
215
237
178
208
178
182
259
258
207
195
139
211
227
160
186
202
228
190
202
227
234
256
167
202
228
198
237
167
172
197
216
210
226
192
179
196
183
212
212
183
211
210
140
224
233
204
240
250
162
153
156
214
197
147
196
232
153
227
225
227
235
174
200
201
160
233
243
210
211
247
239
262
193
174
210
153
195
188
220
146
233
195
241
170
243
179
222
199
180
157
184
267
197
203
152
212
177
231
202
229
171
141
178
228
227
155
211
189
244
160
241
188
190
185
278
222
241
239
227
172
193
239
235
174
191
168
211
206
188
191
214
184
180
247
196
187
210
219
217
236
171
210
282
179
191
152
291
177
230
219
221
131
187
194
203
174
178
216
189
220
136
172
175
165
180
168
257
249
238
207
179
260
191
202
213
250
199
168
235
216
227
208
202
222
204
194
253
208
207
233
186
231
196
157
236
129
223
129
204
170
200
194
243
173
214
235
214
159
222
201
211
187
209
167
217
179
181
215
208
198
196
255
233
217
206
203
219
226
235
255
216
246
219
201
215
150
249
229
255
179
203
210
176
188
245
188
227
226
217
226
218
221
197
201
191
181
208
176
200
269
210
190
215
152
190
233
208
212
183
209
160
150
199
198
245
181
172
169
196
187
233
157
176
147
219
234
199
170
225
212
254
247
206
181
137
207
220
192
248
256
217
199
215
198
188
186
206
226
204
175
222
181
196
204
161
163
206
206
194
192
152
120
196
189
173
199
186
252
232
226
246
153
253
206
167
167
196
109
204
183
213
208
199
184
251
151
205
220
225
185
212
222
203
210
223
243
222
188
237
168
182
240
227
169
164
189
229
184
190
178
169
226
256
204
125
159
202
211
174
223
173
191
217
194
153
184
190
167
173
243
202
202
185
247
206
211
175
156
254
153
212
228
208
160
246
239
205
192
203
219
185
256
207
186
228
223
150
197
231
217
222
155
221
163
200
223
191
147
195
199
211
190
201
145
208
219
103
206
189
154
208
175
231
219
222
224
192
223
150
209
252
191
249
219
199
224
210
226
180
249
187
190
194
271
221
198
229
215
250
195
205
263
178
192
222
216
202
206
225
167
238
217
215
173
184
205
159
212
243
181
204
195
206
223
149
236
236
231
246
241
212
205
241
157
207
172
185
200
241
218
180
189
207
201
161
153
271
211
225
234
234
213
178
265
201
222
168
197
179
221
172
226
251
200
223
181
205
247
223
212
140
164
255
208
134
213
175
227
181
199
237
226
239
136
205
151
186
228
218
216
195
196
261
194
199
178
172
258
218
196
133
265
203
207
156
159
184
225
231
217
143
147
242
256
226
176
193
169
192
211
201
168
175
161
168
222
200
182
119
169
162
202
208
135
214
161
205
208
125
199
226
140
158
202
147
185
144
219
189
172
232
202
212
203
168
213
228
206
213
237
186
206
196
231
214
236
246
192
244
260
194
178
174
169
115
244
191
254
233
145
258
235
216
226
238
239
246
206
169
119
167
216
200
234
201
179
154
153
153
116
143
192
176
263
236
198
202
220
236
226
153
217
149
168
220
196
157
240
168
254
189
214
160
232
156
187
185
247
107
164
151
185
210
178
235
150
164
180
202
156
260
182
203
206
198
185
219
243
191
209
249
210
178
194
249
203
160
176
194
243
159
179
237
237
150
149
238
202
192
237
207
192
208
195
170
221
227
224
196
182
145
172
182
196
267
200
123
258
184
192
153
247
198
220
180
180
191
197
215
214
162
162
156
207
156
231
207
201
203
170
248
195
181
192
258
165
108
200
224
188
201
203
185
178
251
143
166
235
192
186
244
246
214
214
220
197
154
185
131
248
215
256
160
248
198
216
163
239
213
183
201
141
189
226
192
210
249
224
194
192
213
185
148
255
217
158
221
146
247
183
204
255
147
208
153
239
181
201
136
195
243
203
193
182
115
238
194
247
240
236
191
148
172
176
265
153
161
196
218
136
233
236
151
163
189
191
222
158
101
164
182
171
236
165
189
181
210
261
222
264
221
161
198
261
182
242
187
181
203
175
220
161
239
252
226
159
217
173
185
227
205
174
178
258
173
207
157
262
201
183
170
184
185
240
253
218
154
244
133
192
178
246
197
136
222
186
195
230
274
165
219
179
165
245
191
189
191
206
194
235
202
164
188
191
248
241
155
204
185
189
179
234
146
247
190
172
210
185
207
187
208
223
179
191
257
173
193
236
227
207
132
217
144
186
213
216
157
257
246
222
202
170
150
230
120
174
219
229
257
212
213
201
219
207
141
200
167
209
191
229
192
156
187
205
190
243
193
189
172
189
253
212
143
170
278
209
156
146
195
138
151
180
204
211
204
244
238
217
256
240
229
174
187
207
249
230
162
200
213
209
223
242
185
205
220
168
175
246
172
191
182
139
192
177
169
192
163
183
224
236
243
239
200
173
249
190
229
173
178
155
166
198
203
234
173
177
222
200
214
182
177
196
135
185
180
183
198
186
217
218
244
217
192
147
193
191
208
233
192
140
214
210
228
190
134
170
183
162
192
171
236
246
221
184
130
203
269
194
191
215
209
215
271
168
175
125
157
211
250
210
194
198
194
233
204
195
197
232
232
150
216
295
213
195
247
211
205
181
245
210
237
177
176
164
169
261
196
242
269
214
190
217
195
194
178
168
197
250
200
208
210
189
150
219
239
168
175
182
119
210
193
221
187
243
252
172
185
221
167
191
239
167
151
227
243
214
186
238
232
222
175
162
213
181
206
194
271
197
211
152
229
184
166
240
192
170
254
169
220
259
206
135
183
176
187
213
200
254
203
174
150
248
197
197
172
228
177
237
195
199
208
217
140
256
137
221
240
175
204
203
130
203
265
204
236
189
216
213
254
225
230
191
202
158
190
257
184
157
216
183
204
166
256
243
212
237
166
187
208
216
182
228
198
232
227
179
149
256
190
221
211
203
192
238
215
194
185
152
257
162
160
223
188
195
228
223
159
180
197
213
229
195
129
173
214
208
181
233
233
149
228
108
164
175
135
237
220
230
271
159
231
185
210
162
194
223
239
156
184
219
237
228
151
151
213
210
209
244
121
193
234
200
224
170
214
187
222
220
239
231
168
157
187
245
203
200
163
179
129
191
158
204
239
237
218
159
183
230
186
227
234
173
200
180
196
241
114
204
210
231
179
218
195
173
241
197
163
234
216
206
209
177
149
228
180
302
246
163
210
219
227
203
182
145
199
215
189
185
207
237
171
204
239
168
160
204
195
221
188
205
132
128
215
188
134
182
163
242
144
176
199
182
198
214
197
188
229
223
143
281
221
243
206
197
191
221
195
246
154
205
186
180
272
202
189
137
192
278
193
206
190
250
141
222
154
185
207
165
193
182
218
226
156
153
125
171
208
240
206
183
152
196
186
137
223
238
178
193
163
233
206
177
268
154
202
199
179
175
206
166
210
199
188
217
229
233
218
228
194
228
196
231
209
230
303
168
219
138
156
120
235
243
232
155
248
186
155
240
224
186
176
212
202
252
162
211
150
218
177
181
223
232
197
190
211
175
206
238
190
188
231
215
222
227
230
267
251
248
203
159
187
204
196
182
236
249
209
143
219
229
231
220
164
207
233
213
200
84
211
152
228
235
255
189
265
216
197
236
162
185
155
208
163
204
201
195
232
200
149
236
159
163
203
176
236
251
119
149
183
143
199
218
181
147
194
225
183
207
248
207
261
204
153
201
172
193
159
211
130
211
222
158
194
153
188
172
253
197
212
197
186
183
213
234
185
157
211
162
190
153
195
218
207
193
209
272
248
161
103
250
228
254
222
167
231
217
259
187
206
169
179
187
166
218
248
175
177
221
226
213
209
189
163
162
174
155
244
167
266
162
190
188
194
270
265
183
173
192
241
190
167
145
252
191
164
159
177
200
228
224
208
182
182
132
205
188
189
249
134
159
199
212
231
139
167
211
277
212
268
213
181
216
181
156
200
222
224
204
130
113
193
157
220
239
182
279
193
260
211
254
245
188
207
181
114
298
203
203
191
211
231
174
198
224
168
194
171
183
187
224
193
208
188
160
122
126
221
171
235
184
170
216
219
187
164
206
245
179
192
216
228
237
245
186
173
215
222
153
161
233
185
202
208
169
204
223
242
239
165
192
214
137
165
232
156
226
237
180
229
181
181
180
170
218
133
227
204
218
227
195
177
223
144
213
197
204
211
166
150
158
233
151
191
216
196
178
178
198
212
221
219
214
224
235
189
220
194
205
171
151
170
108
268
171
239
116
191
251
163
189
172
162
119
257
162
259
206
217
190
227
227
217
239
197
249
174
236
196
233
210
210
191
185
193
171
172
228
200
205
181
190
176
201
168
195
284
211
194
245
243
182
214
233
197
155
193
174
202
176
185
184
206
188
198
239
214
291
209
202
200
218
209
222
166
192
199
238
208
196
191
240
163
202
223
209
199
162
226
230
151
213
168
229
211
193
164
203
211
106
189
180
218
108
155
159
252
218
242
171
235
127
201
183
162
243
222
185
179
249
179
231
190
198
168
180
195
193
162
165
228
239
225
137
206
192
242
171
153
244
219
240
201
194
246
195
208
218
238
221
195
196
223
179
232
250
198
184
150
205
258
167
164
207
161
186
213
224
215
248
248
175
224
270
231
248
178
157
204
178
152
212
222
147
132
230
192
175
167
199
232
236
213
187
202
219
220
163
194
193
211
213
209
252
150
170
216
184
235
155
246
201
195
206
206
192
164
198
292
248
226
177
170
184
242
164
182
224
195
228
186
211
208
188
185
203
177
214
204
218
188
228
202
193
233
160
164
217
197
215
194
219
174
162
212
228
259
259
236
199
196
240
207
167
189
196
214
131
222
173
214
247
151
205
180
197
217
249
205
196
247
212
231
189
223
257
206
205
213
245
156
169
172
178
223
160
169
220
253
232
169
194
183
217
132
179
143
175
205
207
212
171
226
159
182
199
209
207
256
164
201
239
255
278
212
225
129
242
182
205
252
188
180
251
154
163
161
148
188
263
265
194
232
204
246
153
181
222
171
189
224
158
163
219
227
121
188
121
219
211
192
209
258
229
266
206
159
161
214
224
214
200
124
210
159
210
209
159
250
222
221
149
210
159
171
202
153
170
161
214
159
255
218
193
233
242
204
154
206
205
197
188
213
176
234
241
230
260
224
175
177
192
209
228
197
206
231
226
216
202
164
215
197
224
225
200
206
157
162
177
200
240
253
180
238
192
182
192
214
226
173
229
202
163
217
145
136
199
246
211
288
260
218
266
219
198
230
146
194
265
168
202
151
210
195
216
161
214
230
197
104
198
169
206
182
235
207
185
242
188
185
233
243
172
240
271
225
191
137
201
193
251
160
169
203
148
173
249
170
190
202
216
121
172
166
215
197
164
201
121
202
185
83
205
199
173
276
211
223
190
184
215
203
214
223
125
197
193
161
186
254
251
200
220
188
236
179
246
171
164
125
192
165
181
166
194
175
172
166
184
290
175
166
191
177
149
187
208
198
144
157
158
225
205
182
246
152
247
192
228
273
229
220
158
183
224
220
180
184
154
281
137
221
210
187
226
202
148
202
209
200
201
196
230
210
164
178
208
224
269
198
177
198
153
186
142
212
177
198
229
238
249
259
196
238
184
147
178
181
201
185
201
188
161
179
196
212
243
172
159
204
185
198
209
209
224
159
216
178
237
125
216
181
223
237
222
223
220
197
220
217
163
165
213
183
205
206
197
228
204
250
195
204
233
205
259
198
184
228
222
248
126
221
246
231
216
154
175
178
184
225
227
207
124
165
150
175
226
133
212
192
181
250
192
240
221
221
175
179
233
166
173
251
229
156
215
218
194
251
245
170
258
221
201
189
166
191
144
238
199
153
196
230
197
259
150
163
215
214
163
271
206
224
136
221
172
234
241
200
161
264
222
152
156
218
182
191
268
205
223
225
195
224
180
237
256
170
239
201
202
194
182
228
181
261
237
207
228
219
176
238
237
207
130
213
173
240
203
175
225
272
141
244
226
178
163
278
233
210
246
205
167
260
210
157
226
199
192
185
237
179
289
215
164
169
220
202
184
183
201
201
162
220
174
201
154
208
193
225
141
212
216
248
201
248
211
197
239
178
162
231
222
280
171
218
160
176
264
215
253
140
216
216
227
172
201
185
184
244
159
227
185
238
179
203
172
176
176
221
239
190
223
145
226
155
161
201
214
203
205
190
236
184
174
106
240
220
199
197
165
219
254
187
228
233
206
233
282
233
237
247
271
194
160
222
228
208
242
195
176
253
253
207
167
201
210
120
151
222
141
245
228
242
261
179
254
175
230
212
233
231
214
212
268
208
229
262
144
184
208
184
228
225
168
204
199
203
148
161
205
103
221
235
261
201
223
230
211
238
131
187
235
138
258
233
242
164
235
100
184
158
234
189
220
175
223
163
185
155
162
201
203
160
224
207
222
208
186
236
209
183
226
197
228
176
106
196
170
112
214
303
197
174
180
219
192
236
281
228
221
158
197
225
186
231
145
245
244
220
189
223
185
195
219
234
194
213
188
237
190
244
207
244
170
239
219
226
169
135
211
183
200
218
235
195
202
155
205
250
243
195
218
265
163
189
165
214
223
207
260
245
161
271
203
221
162
186
212
275
219
226
168
231
195
179
233
209
175
225
182
263
205
224
251
257
257
212
228
131
174
142
211
230
236
212
225
161
145
157
199
208
256
151
241
151
203
222
167
149
183
187
144
172
202
151
240
192
179
173
194
198
237
207
179
230
186
187
182
196
238
168
207
166
174
194
165
222
241
205
241
171
178
134
211
217
191
263
245
161
258
144
225
197
159
225
199
207
254
226
179
240
230
216
231
182
229
130
227
167
208
208
194
189
181
197
150
93
286
196
167
225
181
176
216
175
261
226
167
219
213
177
289
198
185
260
218
238
176
206
170
193
183
190
157
200
134
208
225
121
199
265
136
194
212
188
221
189
231
202
204
206
213
213
192
188
199
219
188
223
195
179
241
207
172
202
202
201
216
234
227
175
211
209
199
202
218
238
264
215
235
192
224
235
179
223
194
216
222
225
156
213
244
214
214
271
217
219
259
139
196
186
211
214
178
175
193
167
215
233
192
178
157
234
204
236
175
157
127
128
169
188
237
136
179
265
156
174
162
140
159
162
206
224
179
212
267
193
165
145
175
230
193
262
231
203
299
209
202
197
202
224
196
205
182
224
171
174
241
229
215
227
202
218
222
223
171
247
168
194
239
223
196
272
211
189
269
168
257
189
193
244
233
224
186
203
201
221
244
174
216
211
194
161
220
190
159
185
201
140
190
206
207
152
193
209
205
203
134
203
214
241
149
242
201
212
206
214
224
214
167
212
198
211
259
161
188
174
240
213
214
249
202
258
204
203
217
192
228
169
216
161
163
219
213
195
125
218
140
153
229
245
223
251
163
191
211
255
267
204
144
206
252
147
226
187
262
192
159
246
243
198
210
198
240
191
227
184
184
171
202
259
142
213
218
166
211
218
210
163
263
236
203
228
202
213
192
169
177
159
154
243
220
178
201
169
231
249
222
197
174
174
162
205
209
215
199
150
168
172
164
231
190
187
174
160
204
190
192
180
208
204
214
234
198
202
180
187
154
275
220
201
273
237
206
192
171
217
208
161
196
111
182
260
189
179
185
201
257
238
187
147
163
193
263
193
151
245
250
202
217
245
196
217
154
184
200
209
160
138
221
217
169
230
200
247
228
258
201
168
246
202
218
189
183
230
189
171
206
167
179
198
238
278
192
189
168
140
188
163
183
229
204
199
212
213
229
213
162
231
275
223
271
205
189
201
190
187
222
227
305
239
171
173
169
171
207
243
175
170
196
163
273
181
178
198
262
190
209
223
160
246
234
219
248
212
158
191
230
236
178
264
220
247
129
197
212
214
211
155
173
154
198
199
229
169
186
164
187
200
172
154
152
186
232
230
179
159
238
205
175
221
138
154
144
147
253
171
177
245
138
179
193
237
215
280
247
226
181
222
182
200
210
178
229
130
208
161
148
188
234
138
137
234
191
234
205
238
242
164
188
250
164
172
237
225
205
249
137
199
232
180
238
206
186
269
224
212
181
194
171
162
186
198
221
142
211
202
164
204
184
160
195
199
195
168
220
202
173
164
146
209
172
184
185
195
187
169
217
189
213
207
227
193
149
195
198
180
163
204
279
213
240
216
122
173
269
226
176
195
211
184
242
221
188
212
168
203
194
190
229
212
185
260
152
242
199
189
254
209
210
235
200
188
208
212
191
212
198
251
229
156
248
203
161
253
179
161
245
225
250
223
197
190
251
229
230
187
222
159
139
203
247
210
222
175
156
258
213
222
259
192
253
145
154
159
135
181
151
184
246
211
230
192
162
167
189
265
225
217
230
175
219
175
238
205
227
237
179
213
196
219
150
201
260
238
261
177
186
193
240
209
138
192
156
188
261
203
220
239
169
138
174
213
248
232
197
272
271
178
149
219
236
230
220
201
210
230
192
200
200
243
132
119
281
198
220
230
230
218
182
228
205
199
196
199
147
221
179
222
183
158
193
213
199
175
248
185
265
187
212
222
204
248
215
221
214
177
202
92
246
203
167
265
175
97
164
232
202
222
230
167
212
129
226
229
226
204
225
180
257
203
189
247
195
213
243
243
208
221
229
199
247
186
165
207
201
228
245
257
183
164
231
233
237
150
196
240
167
154
190
190
210
195
226
200
162
169
186
185
304
188
256
95
226
240
175
230
221
246
214
183
147
191
227
145
216
230
213
204
225
215
212
157
230
154
160
243
201
138
148
150
255
190
213
233
226
240
176
200
190
161
184
211
178
181
196
225
155
248
183
256
214
155
180
240
223
253
231
226
163
122
221
241
237
127
134
168
191
148
198
204
225
207
233
203
235
136
212
168
230
196
241
211
163
168
162
156
255
156
242
184
190
199
145
184
186
188
244
221
219
229
191
224
225
258
241
204
209
228
167
207
179
237
189
201
199
181
152
261
214
187
207
145
220
128
188
169
179
195
186
136
220
217
219
172
221
235
155
236
157
216
180
189
246
227
134
267
188
215
158
218
158
283
177
202
211
150
228
172
238
193
204
196
228
180
170
262
172
230
234
206
190
169
205
173
211
255
176
182
207
240
288
141
166
184
216
193
217
152
229
174
211
277
158
173
233
207
198
258
232
194
189
201
222
182
208
261
227
144
251
198
196
198
256
261
208
182
224
237
156
222
188
207
205
224
203
177
220
237
226
281
211
171
135
229
149
160
253
232
215
195
225
196
207
149
217
122
231
138
215
239
203
198
154
228
200
220
172
200
166
193
181
208
210
163
230
221
171
257
161
192
134
237
220
230
237
246
215
183
164
178
224
235
172
171
198
184
188
227
166
228
220
196
185
162
166
192
199
232
204
287
95
200
190
196
223
236
199
195
153
246
256
191
208
261
188
213
197
178
154
154
235
220
260
142
184
218
182
217
196
166
166
127
284
216
211
173
202
194
231
225
193
203
176
158
273
156
208
257
265
210
210
242
155
226
145
129
199
205
183
149
264
192
121
185
199
204
229
236
171
191
195
267
204
233
191
218
205
241
195
199
234
196
196
208
170
182
219
238
157
143
195
231
114
211
249
248
219
185
242
233
161
199
236
234
182
135
150
201
219
194
232
188
203
209
237
198
204
226
142
251
199
165
197
206
185
199
207
220
196
208
179
229
204
226
173
219
268
174
176
218
228
254
225
238
205
149
213
137
234
190
214
205
160
232
226
196
271
168
168
169
183
243
143
209
184
233
161
184
222
225
180
189
175
240
255
222
222
165
246
214
158
174
203
160
228
205
230
222
155
290
198
184
230
197
230
111
218
191
193
235
278
246
220
203
224
209
208
210
249
237
132
179
244
169
172
184
197
199
207
237
214
242
153
148
202
225
176
171
142
164
189
164
238
194
210
118
173
220
200
182
223
211
224
182
199
151
212
213
147
206
171
167
185
201
167
248
190
224
212
213
190
176
240
243
230
184
219
213
162
169
185
188
211
150
162
189
220
219
241
215
213
183
215
196
198
220
203
192
246
169
196
217
251
193
235
203
217
204
212
175
164
266
206
226
213
133
169
219
246
249
192
260
194
201
139
212
205
274
163
245
208
203
263
194
134
282
213
237
237
221
206
242
168
231
141
237
174
196
214
212
198
173
221
238
206
256
219
157
229
186
203
216
145
193
218
204
143
175
203
175
204
203
226
202
142
212
252
241
187
199
148
155
200
209
177
205
133
224
247
148
225
217
162
163
185
256
178
247
114
227
170
288
221
213
179
152
281
154
151
130
211
211
142
173
174
239
208
210
184
192
155
213
196
158
204
226
215
164
286
170
252
148
193
185
228
213
219
183
200
233
183
155
140
223
243
148
201
193
211
164
203
170
158
225
173
234
212
210
195
193
240
244
154
247
178
218
213
160
219
190
239
199
206
188
239
187
207
168
147
179
183
190
252
228
166
188
245
205
242
213
243
242
201
181
295
226
143
195
180
192
205
221
210
145
190
210
229
176
195
163
179
171
280
244
178
141
171
191
212
201
221
184
210
187
182
217
195
210
189
195
182
217
173
126
155
240
212
228
149
226
176
177
205
234
193
203
215
180
209
187
167
201
188
249
214
210
203
227
240
183
108
185
205
284
192
206
255
162
207
154
187
229
222
160
215
195
217
174
177
125
207
227
215
257
213
168
102
184
170
169
130
194
259
196
156
207
211
164
160
200
148
192
261
198
253
176
179
177
189
226
257
200
188
240
154
228
192
181
232
161
188
152
193
235
200
198
188
189
139
107
216
231
179
230
200
190
188
245
275
189
181
171
206
296
162
175
213
239
169
233
211
257
201
187
186
224
214
170
165
196
231
156
199
238
93
192
224
251
233
217
198
243
242
231
195
184
168
213
219
193
211
149
151
214
224
135
242
178
234
143
164
219
224
165
133
205
164
180
181
238
221
137
188
245
253
180
241
264
190
178
242
175
160
209
229
182
192
180
161
186
233
154
181
182
190
164
215
239
224
140
185
244
229
200
254
188
202
311
183
113
178
224
234
170
225
199
179
139
158
188
187
250
223
205
193
193
166
221
214
192
211
181
208
183
223
209
172
168
174
202
183
221
227
178
248
105
220
186
156
201
192
170
185
206
187
157
218
204
185
186
207
225
231
221
226
234
212
206
299
197
244
194
210
182
241
178
232
196
213
159
239
175
163
182
191
185
229
265
199
210
224
231
165
203
186
188
196
208
229
228
183
125
216
227
115
204
171
168
233
240
257
206
232
217
179
235
236
210
209
202
219
154
212
222
217
227
203
214
210
176
209
227
198
155
129
192
218
198
208
202
145
270
148
240
166
195
199
235
215
229
185
244
197
191
238
179
209
209
183
155
207
206
226
224
164
263
178
195
230
174
237
215
159
229
186
172
240
172
234
218
223
243
169
214
205
167
190
220
219
162
151
227
218
181
242
163
255
225
191
172
236
169
228
144
234
197
183
195
220
216
136
183
201
174
202
202
200
220
150
263
189
196
181
192
183
203
207
246
177
166
199
200
182
205
215
164
192
214
166
209
217
195
172
181
208
195
200
227
161
212
194
204
226
191
183
200
204
179
232
185
237
201
245
218
205
228
203
232
183
183
157
247
186
219
148
169
281
191
210
262
227
282
196
191
186
253
180
136
188
236
187
79
240
174
196
154
216
234
158
157
177
214
198
202
202
194
204
179
203
270
267
210
169
213
181
276
209
164
188
185
251
204
160
185
159
205
162
208
183
141
216
226
221
206
170
235
169
181
227
211
220
247
218
277
190
192
156
121
180
144
210
172
211
207
181
124
167
173
218
183
194
180
166
176
214
192
233
216
172
168
194
180
211
168
167
156
216
239
151
187
243
193
194
243
243
199
168
209
219
149
168
241
176
176
190
266
193
177
208
172
221
194
184
215
251
135
209
263
173
200
188
205
241
156
177
228
195
257
261
244
232
239
188
184
142
147
183
189
199
209
190
210
146
262
240
241
201
135
188
171
178
174
234
240
222
214
187
216
211
221
210
214
206
247
215
236
225
230
161
223
213
201
189
185
230
191
229
217
144
213
182
198
210
242
230
216
129
194
211
193
141
173
236
185
289
139
234
200
165
134
202
246
199
166
218
214
147
253
154
211
199
184
161
190
182
225
197
173
239
257
152
124
159
210
168
205
183
145
211
231
250
240
203
140
166
223
184
220
264
198
175
208
201
230
177
159
156
206
168
188
226
162
183
155
105
184
166
199
172
175
195
256
204
206
146
176
182
277
202
224
156
250
236
193
224
252
170
194
201
181
204
203
236
205
213
241
251
185
186
212
213
175
175
192
183
183
215
178
186
184
158
234
237
153
240
206
193
186
166
254
241
203
182
185
215
187
190
146
200
196
186
191
175
241
170
221
151
266
182
148
220
214
217
185
207
195
199
174
214
207
201
187
192
280
203
157
213
255
159
211
175
180
234
209
157
253
205
186
169
196
144
215
239
137
217
197
201
219
192
203
252
195
146
226
208
191
276
239
174
169
190
167
241
218
138
202
169
193
266
141
244
181
222
184
194
224
212
184
178
243
195
214
201
185
147
259
238
171
177
159
207
179
284
197
152
182
234
172
184
183
238
193
224
200
216
201
145
177
234
229
193
193
182
197
243
195
161
173
202
246
244
161
252
205
237
217
188
173
197
197
193
189
223
248
260
155
235
177
224
186
218
235
141
237
208
203
218
243
255
201
226
200
156
197
203
216
225
263
169
200
224
233
208
197
216
195
247
212
222
200
218
229
209
197
150
213
187
176
189
248
184
208
208
184
240
173
174
229
176
227
155
166
218
287
226
251
223
266
173
209
222
209
189
174
215
201
227
215
207
239
239
184
260
295
213
156
183
199
182
172
207
224
232
231
238
163
165
231
236
146
227
231
169
217
238
209
177
233
231
223
207
211
235
179
214
267
265
219
186
168
184
209
196
197
222
207
243
170
162
141
183
176
204
243
207
195
238
193
168
155
242
155
191
203
162
183
192
215
192
203
215
166
199
192
234
214
194
190
210
181
161
206
176
205
216
236
173
222
229
236
198
207
207
261
229
197
236
177
204
169
181
183
158
181
245
181
159
158
215
247
215
245
191
225
262
184
193
255
225
196
146
164
201
290
253
188
182
186
216
218
178
161
174
199
171
219
230
142
197
175
172
127
146
169
208
197
215
211
183
214
214
220
249
213
220
220
206
177
231
166
230
203
157
192
284
240
256
239
284
130
239
230
171
141
178
269
221
177
195
207
206
208
204
186
249
208
255
198
152
225
186
175
222
234
200
259
267
211
198
280
137
196
214
194
171
163
252
219
186
215
151
168
209
175
166
241
189
201
240
242
180
183
244
233
195
223
207
189
236
233
217
223
169
202
190
163
191
167
197
227
225
173
177
158
188
202
216
143
204
250
229
173
269
182
219
124
253
198
232
191
172
180
141
202
205
209
199
176
228
250
167
163
239
195
200
194
183
202
167
210
218
217
152
207
180
255
250
207
227
159
254
174
229
255
193
234
221
236
266
211
162
205
195
265
218
162
210
232
211
203
157
253
149
205
252
204
216
195
185
181
159
272
244
224
174
236
211
215
143
223
233
196
208
249
178
257
168
195
190
161
195
239
242
224
173
153
201
204
215
128
219
235
238
223
167
263
211
211
167
161
207
197
210
208
223
251
167
169
200
210
153
210
260
206
170
154
205
215
230
165
145
257
201
171
235
149
243
184
230
220
218
221
209
198
242
228
249
220
183
227
195
238
202
195
229
243
180
168
212
213
193
142
202
189
210
216
263
167
195
173
182
177
176
241
203
208
243
175
222
209
240
224
200
251
231
183
165
184
137
141
177
179
198
181
244
225
242
256
223
230
138
181
228
211
216
180
216
206
165
255
178
191
218
261
192
199
164
219
230
249
188
162
122
161
166
197
193
171
240
207
224
213
198
182
201
176
207
188
181
175
238
165
147
175
227
183
195
193
172
170
255
281
149
218
221
186
176
196
180
254
208
199
151
237
220
207
213
201
267
228
134
220
197
173
234
167
214
192
177
208
255
192
257
189
187
207
146
225
212
223
151
213
210
198
186
162
217
162
149
227
197
159
237
167
183
201
219
231
171
172
209
158
246
138
246
193
186
227
167
168
235
186
214
186
273
196
218
207
273
184
198
190
170
231
195
144
193
271
175
221
200
204
114
156
168
249
192
235
182
150
209
197
224
213
243
207
137
154
118
244
197
223
220
142
159
203
243
161
207
175
203
205
203
204
213
191
215
230
242
139
235
228
271
191
186
134
153
211
153
208
151
155
167
224
253
150
238
194
258
234
264
231
240
223
134
223
174
177
182
204
219
161
182
259
190
191
212
228
264
204
265
208
211
217
111
236
148
181
225
146
201
185
187
249
147
187
169
178
182
198
178
237
243
238
188
226
182
162
181
201
236
193
190
163
133
217
215
185
125
221
198
195
140
146
240
165
185
211
194
245
262
140
253
143
178
221
228
241
156
234
208
188
197
200
225
217
195
185
194
220
178
229
162
212
189
262
185
225
242
208
228
244
231
228
183
180
151
198
225
208
208
215
181
199
228
216
231
194
184
184
221
259
231
184
190
193
188
254
229
188
154
191
206
182
200
201
162
244
227
217
194
279
198
215
175
255
194
138
221
206
112
288
240
194
246
187
250
263
181
169
170
200
206
241
249
209
125
243
225
207
265
200
207
194
183
196
186
191
201
210
203
248
159
211
212
259
204
189
179
166
216
248
170
182
174
224
192
199
236
210
150
114
158
166
230
230
237
208
218
200
169
151
118
179
189
232
188
124
243
229
168
174
172
223
199
200
211
193
252
181
205
227
195
220
185
199
230
209
169
201
270
158
225
209
214
251
176
197
228
214
227
277
165
204
236
209
249
210
225
202
192
220
125
156
209
256
249
220
202
256
234
155
167
233
239
215
185
209
220
206
256
170
226
132
190
185
268
203
236
119
239
178
183
254
205
204
204
123
190
160
194
160
224
151
193
189
203
187
215
214
215
217
175
182
171
149
135
210
228
179
239
180
241
218
194
262
189
222
224
218
176
203
177
232
242
210
250
181
206
207
204
200
169
241
260
233
209
197
159
199
227
186
179
171
176
244
141
185
229
202
201
242
223
146
229
241
167
203
237
274
225
194
186
210
197
162
159
272
281
171
233
175
122
187
212
209
256
243
169
110
209
198
207
195
206
222
269
271
198
158
212
162
151
163
185
238
225
155
215
270
233
184
144
215
213
238
226
178
170
197
211
191
172
215
167
255
227
175
169
213
254
221
151
193
220
230
197
174
131
204
167
200
200
171
183
192
200
218
182
252
233
254
194
201
217
183
222
239
240
194
164
213
228
209
212
211
184
250
232
166
207
276
206
208
191
160
162
197
244
185
259
213
261
217
189
190
207
202
255
234
270
213
259
112
179
175
176
207
215
170
216
231
163
170
152
218
210
241
265
193
216
129
248
235
226
207
199
235
156
218
215
239
136
196
213
185
223
189
178
201
173
170
213
230
130
166
203
149
207
151
186
197
189
214
233
228
206
135
233
179
215
248
170
242
181
150
205
255
200
268
211
162
192
196
203
204
208
135
217
198
175
203
224
245
192
292
242
209
151
205
135
236
182
156
172
181
215
211
194
273
222
176
181
208
230
255
169
175
209
224
219
271
188
195
143
236
230
252
232
207
165
181
205
190
192
206
216
189
96
194
184
238
164
161
187
135
192
191
176
175
235
264
202
187
248
163
174
267
252
192
243
184
192
227
218
207
199
212
202
211
177
194
216
228
245
194
224
214
178
189
228
233
191
152
249
189
217
164
208
217
205
214
235
215
218
194
217
152
168
242
260
240
229
144
176
209
224
144
187
230
204
178
139
230
128
226
152
146
167
200
242
256
183
196
200
252
172
154
209
200
155
156
266
235
132
239
195
189
215
187
142
231
203
190
225
202
235
172
208
214
253
238
226
151
213
172
194
213
207
225
229
145
237
224
219
227
218
238
254
184
176
251
232
211
211
197
225
181
235
218
184
203
240
192
232
291
185
196
194
249
217
224
191
221
208
178
224
177
198
218
228
283
175
212
199
264
203
223
204
265
176
225
167
191
223
150
165
160
205
173
204
193
160
149
202
230
202
244
205
228
197
164
169
200
199
263
216
153
219
198
199
147
168
188
208
285
210
178
178
213
177
155
254
211
213
208
187
209
235
248
150
238
228
212
180
209
215
219
214
152
156
288
137
219
222
173
169
227
213
225
143
233
222
245
222
252
220
192
220
169
226
189
252
242
217
161
247
190
194
206
200
170
178
244
283
189
223
264
241
219
191
238
217
203
194
153
159
214
234
189
188
188
219
171
213
203
168
209
247
162
164
214
213
201
215
192
210
203
166
184
162
183
177
223
227
211
210
227
238
190
262
212
213
239
161
177
242
245
226
180
178
207
168
164
156
227
160
222
229
260
255
199
191
181
156
192
188
219
235
208
214
250
244
241
221
192
150
216
201
223
220
198
212
194
231
200
197
209
226
193
142
231
222
182
239
257
190
177
289
141
169
243
193
173
206
176
175
184
200
156
184
166
217
188
131
201
211
227
213
184
238
223
182
246
222
226
195
229
172
234
168
226
203
210
183
214
242
174
203
169
185
212
257
173
271
165
180
158
212
222
224
185
175
220
223
187
189
182
147
146
186
188
262
188
192
161
190
222
188
204
203
166
186
232
110
195
157
204
195
164
217
276
248
258
114
175
217
217
213
177
195
259
187
270
197
203
229
192
204
197
127
225
192
124
274
122
212
166
160
223
239
234
217
192
262
191
189
149
168
216
146
215
214
172
239
223
199
225
200
114
240
173
205
178
208
209
153
159
231
210
149
214
177
261
158
195
188
183
205
209
249
252
221
209
179
234
201
201
145
203
199
187
232
220
241
176
235
205
142
198
216
199
201
186
144
167
283
222
153
219
213
183
210
178
163
214
150
249
241
235
207
244
200
249
142
256
187
194
212
182
193
158
157
222
122
233
216
195
158
174
234
228
208
226
204
136
194
184
213
168
221
221
235
184
194
163
226
215
223
209
213
191
225
98
194
189
189
193
251
173
133
219
154
220
230
253
161
204
237
280
183
240
194
211
198
185
173
183
222
214
206
157
134
209
221
180
229
224
178
230
237
145
182
184
241
206
181
232
274
140
144
173
216
192
212
182
251
197
235
122
157
234
163
180
165
239
239
240
221
193
159
245
210
207
261
165
258
221
201
234
250
175
210
236
250
203
239
173
219
223
192
159
216
196
178
196
223
224
187
197
163
257
223
225
254
221
207
134
209
208
188
149
248
166
244
256
203
207
241
211
170
177
201
196
102
182
194
241
207
194
139
187
281
202
188
151
174
207
193
220
217
207
187
171
230
198
179
239
188
215
243
239
164
274
241
242
159
179
167
102
227
175
239
201
221
183
232
193
166
198
215
204
206
207
153
162
229
251
198
235
220
200
219
160
227
257
196
146
226
194
229
268
166
183
173
217
254
180
181
227
240
259
245
264
183
221
206
256
169
185
204
185
210
215
229
206
116
169
244
262
143
203
148
208
159
214
193
155
245
231
165
225
204
210
235
227
221
267
165
153
264
244
251
181
161
212
210
182
259
214
139
144
213
243
234
214
179
167
207
179
226
237
222
205
135
179
198
173
242
193
230
278
237
179
229
210
179
222
240
179
181
174
175
223
187
210
290
237
243
211
212
229
210
193
209
173
225
248
232
164
178
193
260
219
191
199
219
258
148
248
225
156
193
171
193
192
217
160
185
169
215
236
140
207
226
178
142
174
234
165
165
173
248
202
168
175
214
181
190
228
250
195
198
212
169
286
218
190
183
179
155
233
250
285
195
162
134
227
180
204
237
204
219
192
233
175
184
223
208
170
160
217
232
224
217
211
146
212
189
203
209
162
252
127
192
188
189
217
176
172
229
225
235
232
195
160
185
199
201
192
178
219
239
175
225
129
166
245
240
191
215
215
261
214
132
201
202
204
188
157
177
216
178
199
242
167
263
248
182
233
140
185
183
203
233
228
224
131
230
233
186
237
184
105
199
167
210
132
215
174
230
167
174
222
194
222
200
191
244
246
185
208
237
185
213
213
232
240
221
174
150
193
204
274
249
253
226
248
191
175
188
265
198
163
223
170
196
219
202
193
212
230
151
184
160
249
218
200
230
199
118
223
223
169
218
244
128
252
157
146
189
228
168
144
222
158
170
188
256
168
186
232
219
182
188
211
147
212
210
234
233
122
180
210
138
227
200
177
164
234
209
190
236
153
221
190
151
212
204
216
204
202
191
189
178
199
210
156
146
181
226
200
238
171
239
159
204
219
141
212
201
151
208
140
205
210
190
118
171
247
223
191
179
250
221
247
176
211
148
277
136
174
219
178
259
198
269
133
198
235
188
216
208
211
201
154
196
201
222
230
253
247
195
215
139
240
216
151
214
191
197
178
188
212
164
180
250
210
210
209
194
229
190
246
140
174
192
238
222
239
232
197
153
156
170
266
238
253
245
237
139
248
204
221
199
187
233
195
208
189
235
251
146
151
162
177
215
171
209
245
244
209
181
128
244
199
142
224
242
260
186
227
137
149
249
219
203
178
140
231
177
203
173
204
220
161
210
173
216
247
246
207
226
236
205
225
196
214
215
194
148
201
159
231
138
234
201
176
200
209
210
218
202
199
189
205
199
229
199
211
222
166
190
236
176
283
218
253
268
156
191
200
155
185
266
225
193
211
212
201
164
215
171
169
251
173
180
256
140
254
160
199
241
225
237
161
90
175
171
208
109
205
199
209
190
255
185
207
231
238
271
254
159
240
229
170
234
201
202
233
244
203
202
199
192
181
175
228
156
215
204
251
205
238
269
220
250
195
201
197
233
224
180
178
196
195
257
249
199
166
220
231
166
170
204
209
241
215
206
196
243
205
210
213
200
206
255
211
263
206
168
222
192
209
202
183
161
178
183
131
191
186
186
247
148
169
164
196
174
215
190
152
254
244
230
161
153
235
197
192
201
248
195
193
218
233
164
220
222
185
257
214
214
282
165
197
208
224
185
224
211
189
224
200
206
186
199
179
222
197
193
254
203
191
231
213
211
287
167
227
197
176
177
198
228
185
228
230
152
180
214
261
210
194
180
229
203
232
201
178
265
181
238
132
183
199
229
202
185
206
213
208
159
190
246
132
203
230
200
261
167
205
209
222
154
145
226
236
249
214
139
208
211
248
183
242
228
252
175
216
247
191
174
209
250
234
158
180
243
247
192
143
231
218
223
225
223
223
144
180
214
192
242
255
257
159
174
141
217
184
180
245
202
86
141
169
194
180
185
156
214
281
144
228
191
264
185
197
222
219
140
208
238
167
239
210
199
149
248
161
260
201
204
214
176
290
239
167
248
195
194
215
248
198
258
195
190
246
251
211
238
194
162
226
112
181
135
173
233
185
179
196
212
267
231
214
246
175
229
254
196
201
199
200
159
210
183
222
236
172
161
215
266
165
215
143
191
211
214
236
179
236
207
198
186
239
198
239
221
146
199
154
177
187
183
133
121
150
145
221
256
182
196
186
173
182
205
199
197
174
231
145
216
228
205
182
246
188
180
231
260
191
196
126
176
190
254
229
138
182
187
225
224
173
178
178
159
164
161
146
179
208
224
237
239
195
172
218
227
312
183
238
245
200
257
202
178
222
218
207
185
219
199
192
106
197
202
241
258
162
237
169
223
153
238
231
145
252
187
209
236
175
205
185
244
202
221
226
172
159
166
223
176
215
200
163
203
191
198
206
195
239
240
253
161
245
242
157
204
199
192
177
183
117
146
256
146
193
175
221
215
241
207
250
203
165
269
183
177
211
194
212
152
231
133
157
241
167
175
222
198
142
245
161
183
189
197
254
148
215
212
221
157
191
167
208
253
153
152
210
187
197
221
185
160
188
203
254
200
204
226
195
185
151
185
174
281
230
187
186
202
152
154
214
207
159
200
213
130
207
177
203
181
205
174
177
182
196
142
213
203
204
228
193
189
206
236
204
258
236
176
150
194
161
198
121
261
229
208
226
243
224
221
168
238
202
198
233
213
178
211
201
212
187
213
200
181
223
223
221
219
183
208
158
195
144
197
182
191
223
230
242
201
230
232
131
245
250
237
157
171
188
183
206
190
222
197
178
203
198
215
188
182
191
153
193
218
184
244
217
158
208
198
185
181
215
159
207
186
272
182
199
159
172
221
192
220
214
164
163
190
204
187
198
235
229
179
214
232
204
203
187
182
171
193
232
171
192
264
240
225
260
180
165
180
194
192
250
210
253
222
230
185
232
194
206
117
276
231
224
229
192
208
224
217
163
262
223
238
192
193
181
205
211
178
194
185
235
178
252
208
207
240
228
218
168
238
224
171
217
229
236
215
193
192
133
215
210
216
178
222
201
224
220
158
208
203
261
117
214
193
200
191
227
226
154
133
189
240
183
143
170
235
221
202
273
195
258
231
132
171
184
217
201
180
203
200
238
230
277
205
190
180
187
182
222
156
192
193
153
206
229
192
214
207
213
222
209
229
201
183
181
195
252
241
232
162
199
250
235
193
203
172
269
206
206
172
184
167
167
161
213
182
262
173
193
207
208
216
209
187
189
252
217
184
232
168
223
238
144
188
211
219
219
219
112
217
194
208
162
182
219
185
219
229
173
232
215
209
228
91
212
239
199
188
211
281
222
148
193
219
206
241
189
195
208
175
182
174
177
166
177
187
227
174
190
158
211
211
210
250
241
208
184
237
162
215
152
144
201
154
185
219
215
229
246
219
213
219
206
236
172
169
249
147
196
138
203
165
201
203
229
167
178
210
214
208
214
183
219
214
211
253
208
217
157
107
222
211
159
234
192
234
243
227
143
184
155
197
236
227
257
161
196
138
209
171
194
195
172
166
218
240
240
210
170
171
238
161
221
242
224
242
221
187
193
225
229
107
213
191
211
244
236
117
223
165
129
152
180
214
214
200
143
177
177
190
221
231
178
236
193
176
205
235
198
172
198
203
241
250
164
179
240
194
249
240
190
254
174
250
206
270
213
181
219
154
202
168
225
145
283
195
188
217
254
187
231
146
256
170
192
193
227
166
184
183
190
158
156
166
205
196
201
145
249
237
274
226
183
115
163
182
179
198
184
223
199
214
193
216
176
254
225
154
253
195
145
138
210
193
221
200
166
236
196
238
185
237
174
156
169
222
179
221
149
203
239
240
168
180
245
199
209
198
173
246
139
281
198
179
191
173
151
282
203
218
183
170
136
152
134
221
173
243
214
183
229
159
167
209
145
184
311
259
227
271
206
253
192
185
167
194
223
221
187
181
216
179
233
236
235
240
153
168
232
200
186
283
210
210
173
239
206
175
241
191
193
158
170
236
226
173
211
239
218
191
221
272
230
165
207
185
210
198
180
251
206
156
198
208
185
190
190
231
230
228
195
209
206
250
205
198
208
167
189
204
163
269
176
200
135
208
232
157
237
227
200
166
159
219
159
206
241
162
208
232
219
200
218
196
198
271
197
226
191
225
225
229
172
268
207
199
253
196
205
221
199
210
223
232
179
174
226
191
149
158
246
202
149
208
210
191
183
212
209
203
176
218
220
194
218
196
240
217
169
163
223
178
185
249
217
180
118
193
193
237
204
228
288
167
183
169
234
159
247
170
231
226
128
194
228
205
152
222
300
172
184
259
174
140
174
212
184
161
227
221
213
189
184
190
155
223
178
191
240
143
178
214
233
196
189
171
122
253
242
147
169
170
220
188
165
202
169
238
186
243
153
192
252
187
219
232
195
175
210
225
199
200
253
165
176
196
181
179
144
195
179
222
274
147
205
201
127
236
200
215
222
164
224
189
217
218
134
155
185
206
257
162
227
199
222
195
215
199
245
274
177
157
166
204
170
181
224
256
210
198
153
198
268
155
230
202
200
214
207
211
240
231
265
222
181
162
246
177
237
260
199
171
211
216
208
246
210
176
177
210
224
251
218
147
153
155
215
202
199
238
185
209
196
185
175
166
181
203
218
195
209
152
235
181
212
193
158
201
180
238
183
232
159
249
213
227
139
256
192
271
246
179
232
235
171
197
156
196
173
222
189
222
157
209
197
199
231
263
232
238
189
205
221
213
175
231
238
232
198
208
172
262
167
246
216
249
191
154
165
189
229
202
233
221
173
261
209
217
249
188
209
190
189
238
268
145
184
185
162
198
255
193
205
239
289
186
200
144
213
178
135
221
218
148
222
200
198
218
183
230
216
177
176
191
178
137
193
193
182
278
211
237
208
249
243
214
214
190
193
243
205
202
177
191
196
201
222
205
216
148
240
125
215
216
121
201
215
179
230
226
221
200
216
226
231
193
234
235
195
208
246
170
115
215
218
140
204
172
223
224
180
200
150
218
258
146
194
217
215
199
160
222
228
235
248
190
195
214
218
169
234
227
209
225
194
163
173
231
211
194
165
231
192
213
213
195
113
242
184
192
104
244
213
201
246
151
177
174
228
209
187
247
201
215
192
189
192
160
214
203
127
138
243
214
207
246
212
223
198
183
162
246
220
238
211
212
195
186
143
184
191
191
243
199
188
163
205
207
155
225
231
250
171
242
155
204
192
235
204
234
198
239
231
256
212
220
142
174
235
196
140
196
203
244
186
185
191
230
170
181
234
218
243
229
221
223
237
216
157
233
191
207
216
190
253
269
199
212
142
221
212
194
190
167
156
169
245
284
234
258
276
188
191
176
183
260
169
175
205
190
225
254
253
254
187
211
208
175
218
186
216
164
171
199
239
241
212
214
212
184
217
194
156
211
247
236
228
210
233
234
220
203
220
198
247
255
202
171
171
156
227
196
231
207
172
248
171
178
204
128
192
193
181
177
210
153
192
213
159
204
202
195
169
242
179
229
203
226
204
203
253
218
171
234
228
217
164
236
202
257
116
232
196
136
237
210
265
182
271
172
230
161
191
175
228
184
236
200
204
191
199
128
158
250
211
217
191
226
208
217
236
197
201
174
202
191
189
166
264
185
210
237
203
193
202
175
221
222
189
207
152
206
190
183
224
164
193
207
230
175
227
175
154
183
208
177
194
174
180
223
234
186
238
180
195
226
232
140
197
212
225
184
230
179
196
200
247
179
220
215
172
205
199
225
236
129
268
199
225
208
123
173
179
249
224
137
245
241
195
214
197
247
185
170
180
177
231
222
207
174
215
190
215
110
133
223
231
198
224
196
194
138
198
152
198
177
203
215
153
215
181
225
182
243
252
172
233
250
214
175
245
205
146
222
173
210
164
188
210
222
249
179
187
213
201
233
209
242
229
210
218
197
197
225
232
190
218
225
181
239
193
247
107
156
222
200
235
162
188
227
196
209
207
223
213
159
232
199
142
247
164
235
223
229
238
243
203
131
192
193
220
235
190
201
170
208
172
155
196
189
154
240
155
197
152
160
166
151
161
243
129
185
190
140
182
221
257
180
201
194
158
211
235
209
138
209
208
179
202
212
261
204
189
209
222
204
158
175
177
149
211
227
245
252
174
225
244
192
204
254
155
222
217
174
181
193
194
205
200
211
189
218
195
193
271
141
214
188
180
216
198
148
134
176
185
203
202
219
197
174
204
190
240
156
255
224
211
220
210
166
228
232
188
204
177
213
205
225
192
173
179
192
237
210
233
224
215
221
202
237
226
216
169
187
224
176
221
174
196
187
245
222
219
216
210
140
228
234
148
189
217
191
177
192
172
201
181
214
197
236
176
181
178
185
172
241
262
194
227
219
189
174
179
194
150
195
248
226
188
198
230
168
254
227
210
242
215
170
211
194
231
179
197
248
195
228
173
213
245
169
153
239
222
219
174
226
209
230
156
199
230
189
241
133
193
137
197
196
185
191
229
172
208
141
194
264
177
217
202
210
261
210
247
104
186
213
206
202
196
182
228
102
221
170
267
253
236
232
202
184
198
198
206
176
238
158
170
245
144
203
227
213
233
217
173
138
192
248
254
189
225
168
202
235
237
178
217
224
246
229
167
191
185
216
171
180
293
179
178
183
157
173
159
166
247
213
217
306
217
184
206
261
189
209
209
229
196
188
194
214
215
225
144
187
198
217
177
226
177
165
221
191
190
198
220
257
247
132
229
248
197
236
216
202
215
203
214
176
223
220
188
195
187
202
224
166
242
240
164
162
223
241
196
200
220
209
213
185
251
166
191
227
135
234
161
204
226
159
258
224
230
181
192
161
187
175
168
198
239
207
211
257
214
233
240
205
213
196
175
204
192
199
188
212
221
139
254
204
194
155
211
211
151
173
273
195
224
193
212
159
189
140
116
226
101
237
156
181
138
222
213
221
164
219
231
247
235
216
166
216
170
227
258
208
123
186
227
211
156
213
233
230
220
168
246
229
163
195
188
200
197
209
238
165
229
143
183
172
210
167
211
203
181
143
190
197
202
181
140
220
185
143
146
170
236
171
153
257
166
162
218
228
197
170
226
196
199
199
141
180
214
201
223
242
263
224
206
136
165
218
236
204
221
206
170
202
202
159
170
209
162
267
225
183
155
207
216
196
196
163
204
192
225
160
214
154
221
189
209
191
273
248
217
153
144
186
243
237
207
218
176
190
168
232
202
226
161
210
199
202
186
272
185
212
196
153
220
185
217
233
181
205
185
214
171
189
208
200
186
206
187
213
189
183
164
188
259
131
209
221
240
222
284
197
248
243
224
239
186
277
244
220
268
176
230
167
254
251
216
177
191
166
226
240
165
233
261
211
203
145
184
197
219
237
159
151
210
193
162
210
224
191
187
230
213
163
163
214
238
225
214
203
198
268
174
150
234
230
232
270
176
223
250
177
131
140
144
193
192
195
198
176
204
192
159
199
208
256
232
213
214
220
188
192
187
253
271
222
229
196
192
203
169
240
170
184
173
238
235
200
205
177
196
168
172
233
262
203
224
151
196
241
241
227
258
205
213
165
235
200
216
225
178
261
243
188
165
133
137
214
185
189
174
178
234
179
177
200
185
196
196
252
193
204
201
270
210
173
195
209
193
196
206
164
214
202
168
199
131
236
239
240
225
182
224
236
223
188
195
244
202
209
160
177
213
182
239
221
187
172
234
221
246
201
127
192
189
143
194
164
229
188
147
228
248
154
206
214
234
233
275
247
135
244
175
199
242
246
115
154
184
140
245
215
186
241
224
202
242
215
186
183
176
183
186
194
240
240
215
268
162
242
241
181
136
156
235
154
226
123
188
206
230
191
223
208
140
196
205
214
156
188
216
159
95
218
208
197
198
235
155
214
185
161
224
185
224
202
159
217
186
217
178
242
201
201
203
155
247
207
133
171
169
237
212
200
211
174
208
289
218
204
239
193
205
187
237
202
258
202
203
191
168
205
174
165
193
207
219
233
237
186
190
193
139
188
174
204
155
210
228
193
177
194
128
196
137
180
175
156
199
120
169
192
242
253
206
196
169
184
246
220
148
211
220
227
228
208
218
222
181
206
155
157
234
181
176
224
167
172
240
216
275
188
151
159
150
149
188
255
273
216
189
159
197
246
206
245
235
192
220
220
169
255
243
229
243
244
246
273
214
157
240
214
219
251
140
212
207
172
182
175
159
218
225
174
211
183
235
210
183
249
164
189
171
182
224
189
187
216
223
167
213
131
172
224
201
233
177
216
220
184
164
158
169
211
185
201
188
189
186
170
175
229
155
170
138
225
220
191
257
195
203
185
241
182
238
294
120
198
202
167
199
172
220
195
169
168
279
152
108
121
188
275
218
235
180
239
207
179
267
193
217
177
174
222
202
204
165
129
160
220
210
228
157
188
223
229
229
209
146
230
190
201
197
273
214
221
180
191
162
178
218
206
211
184
238
219
157
281
196
211
212
181
206
239
172
234
250
211
273
169
162
191
193
156
190
227
210
257
258
164
177
267
211
246
165
204
171
187
272
216
180
208
227
194
200
216
191
175
222
183
233
235
192
203
252
205
158
237
145
180
217
243
189
185
164
165
170
173
164
217
199
210
220
219
219
214
172
223
157
222
200
184
174
245
191
178
215
142
239
204
248
233
210
202
224
274
169
166
208
226
192
231
214
248
174
142
151
231
216
132
229
217
126
231
219
239
255
159
161
195
232
174
192
164
203
279
153
237
204
187
216
193
232
188
232
239
202
174
188
230
226
171
217
181
155
176
232
238
240
190
243
233
164
261
208
198
217
160
247
227
196
251
147
219
249
183
110
226
214
195
221
265
167
235
185
134
208
197
194
257
247
222
212
172
202
149
217
231
252
193
237
178
175
179
219
194
172
224
193
231
192
238
229
203
149
223
178
227
212
215
214
191
185
234
236
203
207
214
173
226
142
209
193
215
193
203
175
217
213
205
230
199
149
162
198
178
228
208
236
162
245
245
224
158
199
135
142
245
173
214
221
208
221
169
247
207
160
232
221
174
235
247
218
185
155
233
182
220
200
162
190
205
175
201
212
183
178
251
259
195
257
153
184
202
201
231
189
238
240
232
220
231
224
181
169
249
180
214
162
179
218
185
160
157
169
231
169
182
198
145
230
203
167
216
171
260
260
191
205
205
209
188
175
200
208
224
147
126
225
221
215
211
225
196
219
222
227
190
189
204
152
210
142
253
167
211
187
232
226
184
159
171
191
250
188
151
239
205
181
150
218
195
144
232
180
201
181
209
260
238
221
155
217
184
199
192
189
186
224
160
228
190
243
201
244
171
207
208
120
154
246
222
238
202
208
201
220
199
202
172
220
230
180
232
241
234
140
122
169
185
282
184
182
193
166
160
191
221
174
191
222
222
245
187
146
176
243
220
233
193
215
242
209
182
173
208
240
214
189
226
139
146
246
217
230
196
220
275
184
243
227
255
206
199
197
192
178
203
176
255
164
214
237
255
240
160
239
106
198
176
206
96
194
191
245
267
141
182
200
223
198
268
257
194
190
200
237
121
168
186
218
233
211
226
205
216
215
240
172
161
254
211
203
182
216
206
248
207
154
207
201
268
235
142
142
219
232
233
180
213
221
205
246
229
257
215
226
263
239
191
147
206
221
178
234
222
164
247
222
210
160
255
224
189
244
243
227
230
232
186
253
170
180
161
167
155
218
243
159
267
172
207
189
257
165
210
180
137
127
285
197
206
262
165
253
204
209
185
203
247
228
212
205
188
236
197
195
144
212
202
183
149
153
186
163
160
231
200
228
138
201
200
155
144
223
224
171
175
236
215
218
262
207
215
211
138
216
176
227
222
200
161
235
212
213
259
190
203
158
223
164
146
177
218
217
171
213
152
194
200
180
275
192
173
257
165
204
207
232
265
205
150
195
166
167
257
234
170
189
219
136
235
217
238
211
217
210
200
240
253
267
128
234
197
263
233
195
222
225
194
190
186
244
208
248
226
264
265
190
251
232
230
216
159
215
166
204
199
239
171
259
209
174
154
219
150
188
232
169
186
207
137
205
251
204
181
182
172
217
225
221
221
258
111
154
203
128
212
272
208
191
199
193
157
242
179
196
236
143
194
194
237
165
221
224
137
183
231
195
227
247
233
219
204
204
270
218
151
172
225
225
220
253
259
167
214
196
200
238
113
227
269
168
214
204
159
210
185
252
187
206
197
220
157
202
220
192
167
226
182
184
229
228
176
229
243
218
160
194
194
232
178
179
197
231
200
182
196
162
163
212
172
175
228
240
149
224
236
214
209
223
185
233
240
260
160
166
174
205
173
238
174
220
142
229
230
195
151
150
182
214
221
221
198
244
250
145
175
246
182
162
210
188
228
165
148
158
240
247
173
162
222
234
236
213
174
175
120
144
187
268
158
175
256
206
174
210
237
216
202
226
230
189
220
227
198
199
209
201
215
186
158
243
225
209
246
195
176
226
205
191
178
177
174
161
220
203
187
195
205
201
268
299
182
202
252
141
209
168
194
229
187
155
196
160
175
212
228
220
250
175
257
252
212
158
149
133
191
206
247
257
202
225
208
223
140
183
239
247
170
171
198
160
189
167
225
189
186
145
186
224
226
184
226
211
115
150
144
184
230
239
182
160
202
184
217
203
214
128
211
147
177
155
195
185
227
131
255
203
210
232
221
224
200
217
239
243
209
211
227
180
177
145
212
189
245
189
167
195
181
144
195
232
106
223
155
158
195
192
189
252
184
304
267
189
147
149
231
233
201
240
191
227
211
181
193
247
206
205
155
139
219
213
235
234
231
195
194
155
158
170
171
170
163
225
211
195
199
213
181
198
181
155
235
217
141
221
127
245
157
239
201
221
218
164
180
196
190
283
193
199
195
105
219
207
221
232
174
191
150
228
230
184
230
252
221
215
222
222
211
222
107
171
240
177
167
238
177
198
231
185
214
236
197
245
218
265
240
157
218
202
248
177
156
209
241
231
253
243
156
225
232
198
164
195
157
204
191
197
124
207
230
189
245
142
254
217
149
150
219
199
199
181
214
162
223
193
247
231
217
230
224
251
177
213
198
213
234
202
219
146
148
270
175
217
202
101
115
176
184
222
117
173
164
184
221
216
167
234
186
272
178
254
197
148
209
73
255
206
256
218
200
159
211
177
222
244
203
206
169
244
191
173
208
144
218
233
188
217
243
226
187
189
246
166
210
237
195
175
210
188
225
216
176
271
180
231
211
211
196
222
202
151
228
182
185
261
133
129
229
238
191
244
188
152
179
224
219
228
169
182
169
223
189
172
127
231
219
273
207
152
211
232
200
235
238
213
175
216
210
137
157
245
249
184
215
165
193
169
216
156
211
190
222
188
176
206
208
187
193
219
215
248
175
214
163
133
223
207
170
173
180
122
223
238
196
136
202
213
223
176
172
186
217
219
201
268
246
176
229
186
207
187
213
146
262
232
182
207
145
228
149
212
189
180
187
166
214
249
183
146
186
189
169
287
211
215
220
224
229
165
167
150
184
214
240
228
247
251
240
199
183
203
147
260
198
220
171
152
175
224
158
148
237
237
146
147
254
201
200
235
167
235
216
215
266
238
190
286
177
185
179
246
175
206
243
195
236
186
215
210
208
168
233
241
247
188
231
236
220
265
181
120
203
188
227
198
182
217
202
228
224
234
260
250
196
243
184
170
183
211
184
202
229
178
201
192
200
167
239
220
236
181
161
159
214
211
243
159
265
220
238
216
186
211
181
253
208
187
189
185
200
195
186
169
138
192
171
191
186
201
196
224
265
220
262
227
238
182
196
258
214
162
215
243
223
213
191
181
202
129
180
119
195
228
181
221
221
135
199
142
253
167
204
212
243
203
113
162
188
267
265
230
203
143
231
171
243
233
196
189
239
246
138
251
194
153
231
183
270
258
191
203
242
211
213
183
232
203
222
234
111
185
211
153
216
193
191
208
223
208
205
219
196
230
248
153
183
242
219
279
164
177
226
173
233
229
203
208
253
228
190
249
205
224
178
184
180
140
219
185
213
146
157
222
158
220
252
233
154
235
198
205
184
201
183
196
185
208
215
213
135
191
159
210
192
167
296
220
177
219
198
167
205
134
148
173
192
161
231
234
169
147
167
199
199
248
204
195
212
204
185
153
205
202
225
171
229
169
246
216
206
231
180
89
216
205
169
181
155
170
250
211
125
68
227
238
191
266
194
199
196
206
189
178
234
232
215
220
157
187
201
213
152
175
192
235
228
121
252
218
197
159
200
175
142
222
226
243
173
251
206
205
200
227
239
170
251
205
220
205
187
181
168
138
214
231
175
160
150
159
201
200
140
186
181
167
157
212
197
195
203
219
207
214
175
176
123
185
238
188
196
169
190
223
181
274
194
237
150
225
242
209
249
246
213
246
204
220
167
229
156
246
149
158
234
213
152
149
220
206
196
222
185
159
239
210
260
219
226
144
206
190
190
252
205
170
222
212
151
157
209
229
164
236
218
199
259
237
237
166
269
219
191
186
165
190
302
202
91
178
224
178
165
217
201
232
266
234
195
185
172
175
194
180
227
217
202
224
234
158
197
182
195
226
221
181
256
199
244
205
205
182
244
194
191
286
194
152
209
136
167
217
223
177
185
239
245
225
186
191
221
217
275
177
254
175
250
239
201
180
170
239
188
233
154
173
177
142
173
233
300
254
174
230
221
184
203
183
188
194
224
206
168
190
232
181
192
254
145
136
179
252
212
234
204
193
218
177
169
258
130
240
166
246
205
188
234
156
187
186
213
202
206
233
178
164
200
243
145
208
189
230
165
126
166
215
240
173
212
242
196
220
246
195
195
163
202
185
175
183
145
164
151
178
227
165
221
184
190
257
159
229
220
172
200
189
136
245
179
174
172
220
231
271
198
156
208
186
211
157
167
239
192
181
247
185
161
211
139
263
200
220
226
203
214
219
162
191
193
220
240
161
151
196
194
222
214
142
205
155
152
273
240
221
202
248
177
267
205
188
238
208
161
195
211
181
234
203
220
199
177
228
229
154
154
192
195
189
231
199
83
169
222
182
230
197
187
188
203
208
202
140
174
174
250
202
166
196
219
169
245
149
180
215
167
230
194
227
190
213
206
235
210
192
215
185
179
209
222
122
152
198
192
159
212
160
186
239
201
189
202
135
181
195
185
224
180
184
173
177
267
204
166
194
262
199
159
193
166
213
220
166
211
170
186
225
248
170
223
257
177
211
222
247
186
227
194
203
229
186
238
172
213
126
200
178
159
161
279
195
252
223
211
206
217
229
181
234
225
212
136
195
182
152
206
184
156
266
192
233
198
175
197
251
212
166
198
230
218
136
178
216
200
227
215
200
259
217
191
186
223
134
201
221
162
204
227
137
164
183
201
184
173
201
188
193
166
176
182
240
214
245
184
213
217
251
174
244
235
242
174
258
244
245
156
173
207
223
163
273
244
198
134
147
224
201
255
203
206
189
194
157
193
166
208
113
205
191
222
180
144
168
160
243
228
225
218
195
217
228
178
212
209
202
198
200
200
199
191
204
213
206
283
166
195
179
231
226
184
227
216
165
182
246
219
225
253
192
154
176
224
202
214
189
162
214
212
250
220
176
195
196
152
236
174
188
160
175
163
206
205
225
225
159
241
203
247
169
202
164
210
209
196
184
199
270
226
204
194
175
180
195
194
133
256
241
198
288
231
140
224
140
161
213
203
153
181
204
177
209
183
155
202
179
256
179
121
219
160
192
178
244
157
184
207
247
147
206
178
218
186
207
241
160
217
182
217
213
192
227
133
228
226
190
170
189
165
199
218
178
207
204
237
217
226
168
186
206
214
231
218
199
219
228
158
214
183
212
205
212
215
186
197
211
128
189
250
200
144
180
225
209
187
234
220
238
201
277
215
177
238
182
229
211
144
280
206
210
236
136
146
148
236
172
216
213
209
183
169
210
213
164
154
171
169
238
177
208
185
194
286
234
239
190
182
221
202
256
221
183
229
148
223
166
136
264
256
231
223
250
227
221
271
250
229
210
269
190
154
210
119
175
230
212
186
280
170
169
155
194
217
193
222
204
229
147
189
208
170
201
195
140
198
150
172
190
205
271
218
188
198
203
208
169
169
183
252
167
223
198
226
184
218
233
243
176
122
99
160
167
236
204
171
245
164
235
168
171
200
205
180
232
242
169
179
211
212
145
216
229
250
239
216
195
216
233
237
207
241
217
192
200
201
193
139
198
144
196
220
260
197
180
125
267
247
209
183
145
131
188
221
198
230
235
196
214
172
158
206
214
210
203
256
236
133
175
233
223
212
151
195
155
199
243
181
165
203
234
177
125
177
211
204
200
158
204
208
234
193
214
217
160
250
168
227
136
224
224
191
193
199
190
249
234
192
214
171
212
226
202
241
222
245
156
134
216
169
176
124
222
206
242
172
178
214
160
233
213
176
185
222
178
181
147
230
186
190
160
206
259
155
210
170
282
187
211
221
186
202
166
195
243
179
198
185
203
233
239
203
207
122
282
231
240
208
223
229
207
226
224
199
269
244
144
186
178
227
167
234
179
196
245
233
212
236
136
181
210
196
237
210
217
212
185
202
144
215
227
183
219
190
194
203
208
223
173
189
158
174
145
210
209
178
188
164
203
240
247
154
197
187
154
204
207
212
139
194
231
229
251
225
207
170
246
192
156
126
190
262
177
190
176
237
119
199
224
166
199
232
238
188
251
230
185
222
267
208
186
227
136
200
233
230
160
241
207
187
241
179
309
217
240
217
155
148
226
211
176
179
256
207
201
166
151
161
191
188
152
178
217
169
206
231
171
188
148
173
246
160
190
152
211
178
253
189
240
170
171
217
148
239
172
211
215
216
192
253
170
184
178
187
189
194
196
161
189
215
186
200
226
197
216
138
184
207
145
242
196
147
212
247
140
285
230
200
228
282
162
190
207
211
203
219
203
201
159
197
228
211
241
282
156
235
194
242
217
242
230
235
174
175
219
139
153
207
245
148
165
231
177
241
176
212
225
194
194
189
247
225
228
225
184
200
132
174
139
164
251
188
231
215
181
149
274
204
195
169
119
160
228
193
216
216
237
178
185
162
182
182
246
185
140
190
179
164
246
256
209
226
231
201
180
221
181
218
206
214
153
223
229
186
236
200
224
176
187
149
256
173
232
149
216
200
220
206
225
142
249
208
225
234
221
160
181
216
147
233
240
180
186
206
208
209
183
185
252
169
180
239
142
164
226
164
214
273
182
177
168
190
143
212
218
231
219
270
143
218
189
158
228
168
170
159
161
212
205
177
208
177
189
211
232
169
247
206
264
208
261
222
236
138
210
229
172
197
198
245
190
204
173
216
216
230
140
190
190
207
210
239
196
214
210
231
224
184
167
168
234
235
236
228
166
219
148
172
190
194
210
215
151
137
235
190
216
162
163
191
196
226
183
202
192
223
198
245
200
189
208
263
182
234
227
195
246
238
225
188
252
247
190
171
186
174
200
157
197
204
187
190
235
173
177
208
219
217
261
128
280
203
237
192
215
189
151
244
172
255
162
202
157
191
187
209
168
243
171
189
225
183
220
157
222
215
165
199
168
181
201
261
154
227
189
254
154
249
156
166
173
230
159
186
226
168
169
224
184
189
188
165
220
204
192
154
231
129
147
221
191
181
203
248
206
172
188
235
243
178
249
163
216
241
230
200
207
254
229
191
205
194
223
192
244
224
223
232
173
220
209
242
214
253
225
231
195
213
202
229
180
176
142
150
223
267
174
246
164
203
182
193
240
162
217
168
239
253
205
209
182
224
177
197
194
226
262
162
212
213
231
211
186
173
206
167
231
110
223
219
176
134
194
231
253
113
197
252
186
192
184
154
210
211
161
222
181
212
211
227
197
202
236
198
195
178
143
278
260
205
212
215
180
208
211
187
184
191
183
195
167
191
191
181
252
158
160
253
212
157
192
248
257
194
196
204
169
157
252
197
217
207
219
184
184
187
195
168
240
289
185
187
190
166
206
217
193
257
210
186
231
193
211
219
193
194
193
204
196
221
195
188
172
197
180
218
205
227
248
93
152
160
158
163
186
189
194
252
200
192
224
203
184
137
227
256
215
212
213
217
203
175
157
195
178
250
176
193
158
183
206
231
218
249
186
233
201
212
166
244
218
234
247
205
194
159
189
211
256
231
230
237
190
110
211
256
199
189
208
164
187
217
231
181
264
242
213
213
207
227
175
118
205
140
268
194
206
176
168
185
183
179
205
237
217
137
189
192
205
187
192
215
193
237
216
188
164
170
177
187
262
210
227
190
280
256
243
221
189
219
129
210
209
225
227
202
164
172
202
230
247
210
236
229
190
231
193
184
200
261
180
203
245
251
191
199
213
188
254
202
134
202
224
187
195
254
147
176
214
211
215
210
132
211
212
154
212
172
238
224
203
191
226
204
244
193
219
147
183
173
234
241
256
209
252
210
196
197
240
237
195
184
225
197
165
233
167
225
250
147
206
189
252
199
180
210
189
215
198
172
187
152
227
225
269
282
184
151
219
256
207
163
205
204
166
202
229
211
208
215
207
207
168
218
159
260
229
248
174
196
275
230
159
194
181
226
126
169
156
196
222
221
180
150
225
209
226
261
107
241
188
242
130
213
188
228
183
138
249
187
252
206
199
196
258
213
146
212
186
198
221
183
147
215
125
223
172
249
260
248
193
275
187
214
188
216
195
208
192
224
258
218
171
243
185
205
189
178
132
190
199
215
145
190
191
182
163
221
150
270
167
253
214
205
233
241
217
179
251
211
218
229
185
258
221
232
145
249
237
191
266
223
207
219
145
223
215
211
226
146
257
124
208
220
130
198
186
180
222
255
183
253
167
269
224
215
163
164
188
236
120
252
236
259
138
233
209
235
244
246
201
228
193
146
231
204
199
176
158
192
231
217
245
292
182
155
170
237
211
236
206
183
211
250
244
255
147
177
129
235
231
191
172
186
190
167
162
168
181
173
278
170
161
179
172
233
233
165
209
220
211
215
225
189
201
216
237
189
220
204
140
207
239
229
270
208
230
212
253
143
247
121
222
252
245
204
228
191
198
238
152
223
209
163
129
149
247
212
203
219
162
219
231
216
154
174
234
195
250
171
208
179
205
246
210
221
146
189
198
173
197
257
173
183
274
232
169
200
151
255
133
223
241
233
243
188
148
244
177
196
268
229
214
223
224
208
143
152
202
240
205
207
181
235
152
199
194
179
224
206
239
213
201
193
200
185
248
146
232
223
181
192
179
191
109
240
245
214
184
233
197
169
191
193
206
222
213
167
244
206
159
232
211
171
159
193
247
198
198
215
158
183
160
199
175
204
224
222
191
174
178
246
126
243
175
137
96
194
193
209
173
162
240
164
144
239
144
211
183
192
231
214
191
186
188
215
177
237
157
169
190
205
229
144
193
263
196
190
203
175
209
198
232
203
227
153
262
213
164
248
224
221
210
236
161
131
154
185
229
215
231
189
198
203
163
156
262
203
194
143
242
179
255
188
194
228
208
227
205
205
164
238
190
206
204
230
240
118
212
246
203
198
142
196
196
159
183
193
157
230
206
192
225
198
235
263
204
178
229
191
156
200
232
229
184
248
220
257
127
198
166
223
192
232
211
246
192
234
183
193
229
173
179
191
207
182
184
207
206
160
222
225
170
237
164
157
184
149
179
252
255
179
195
164
145
190
189
248
227
227
149
220
130
252
220
169
110
215
179
170
222
165
183
177
248
224
243
203
196
178
249
205
185
185
238
137
157
257
242
210
225
256
209
197
195
155
140
176
168
235
170
208
197
148
218
211
203
211
265
252
218
227
245
198
167
218
166
191
198
261
226
245
167
198
288
175
256
196
174
248
249
230
191
199
209
194
190
263
224
171
216
218
183
161
156
211
261
210
228
215
251
240
174
149
215
185
141
211
163
162
188
194
210
212
191
207
228
197
186
136
274
163
130
228
213
257
167
258
174
196
217
210
254
150
249
197
196
243
271
168
255
200
149
154
200
214
180
193
216
148
201
215
178
162
156
205
145
173
209
221
223
232
260
189
222
200
177
206
202
213
201
204
232
190
195
179
198
114
236
145
186
214
133
220
220
151
223
179
230
168
215
218
153
171
202
171
197
197
223
168
191
254
227
224
170
198
212
232
186
146
237
196
208
151
166
217
204
196
182
223
206
181
176
183
264
235
204
171
219
237
175
196
199
145
198
180
205
241
191
232
250
171
222
246
240
146
218
224
242
238
201
227
156
170
160
170
180
155
204
159
231
187
229
114
211
77
207
153
201
248
231
146
212
232
186
221
286
265
201
243
213
200
203
195
208
233
200
183
142
203
156
189
211
198
263
213
179
198
201
243
200
195
193
184
205
265
139
205
164
180
227
161
201
194
184
202
157
221
169
210
217
185
166
163
234
172
186
250
168
201
231
226
230
204
200
162
157
205
194
234
253
218
187
241
231
308
206
223
175
205
243
169
200
197
174
185
234
146
248
183
181
253
264
224
209
225
172
197
212
242
111
218
215
196
154
189
228
205
221
209
181
240
185
149
243
217
232
179
234
219
217
180
166
213
191
226
155
159
184
200
203
219
203
190
198
164
201
181
176
155
208
164
162
184
255
214
226
153
183
168
181
159
204
179
145
212
169
218
270
260
208
151
189
196
201
172
136
172
226
216
214
266
182
227
258
245
230
182
154
198
233
176
237
228
212
240
178
224
233
217
252
142
201
190
141
216
154
238
173
192
199
186
189
146
243
223
212
179
216
213
181
208
173
178
214
199
249
175
196
204
163
234
217
197
132
223
175
173
227
179
199
145
128
237
178
166
187
195
177
195
275
195
195
224
184
228
244
191
159
189
230
209
266
181
198
172
146
164
165
187
215
222
144
233
201
274
226
118
171
217
174
234
136
229
229
257
190
156
103
168
195
202
168
182
238
186
131
218
170
159
269
167
148
272
223
172
198
162
206
187
225
224
218
219
189
227
171
202
188
174
219
218
192
166
181
209
219
142
187
133
239
176
247
172
214
154
232
224
203
192
207
249
235
197
246
237
173
191
256
154
221
235
204
198
231
185
194
209
246
174
209
230
149
234
208
213
153
188
268
221
194
183
183
221
194
205
186
227
241
153
235
242
226
260
231
236
137
171
144
208
237
180
210
195
223
229
191
198
158
219
123
139
219
172
188
200
176
180
243
257
178
257
198
235
228
149
185
221
158
212
222
230
155
260
248
195
180
193
177
260
190
219
272
184
240
148
178
241
193
200
188
184
204
156
212
226
208
167
200
230
248
162
201
204
196
193
230
208
139
228
232
205
233
220
181
271
177
124
201
155
239
154
221
230
219
238
181
197
224
195
208
190
198
206
235
206
203
143
214
223
232
198
141
231
146
145
164
193
239
202
186
177
173
191
230
236
228
180
222
244
220
219
174
225
213
211
252
187
143
194
261
213
221
242
193
182
175
217
155
255
253
235
215
248
180
208
206
201
175
190
225
166
241
198
201
228
244
181
247
210
169
179
250
215
165
164
196
187
234
187
181
189
228
238
195
217
226
240
243
225
191
206
194
209
198
234
218
178
251
230
186
230
206
138
101
205
241
145
184
130
168
234
186
199
247
190
202
195
215
215
230
126
176
209
215
188
184
248
236
214
196
186
177
162
229
207
202
223
222
191
209
159
164
199
158
246
202
202
165
187
213
176
169
224
221
210
207
212
216
231
220
198
141
254
247
182
164
170
189
241
239
219
199
212
172
230
119
196
206
233
276
204
267
192
249
199
202
211
227
233
244
168
227
243
191
229
134
202
196
177
192
169
214
168
172
224
154
227
166
182
242
218
226
197
172
221
214
155
256
199
210
235
213
188
211
230
148
167
196
237
221
215
282
228
184
176
192
197
165
149
166
257
241
198
208
247
280
157
167
256
166
217
214
218
178
198
179
227
191
173
215
204
204
174
163
139
232
161
250
194
152
127
194
202
189
211
181
156
116
181
183
212
161
253
198
268
252
192
233
233
220
220
224
188
156
155
184
190
189
224
174
198
221
189
217
125
182
215
199
241
191
224
235
130
235
136
187
174
188
243
212
197
219
232
183
226
217
231
216
211
174
188
200
238
194
173
160
168
189
169
143
171
212
188
157
185
250
207
255
159
145
256
163
198
160
162
171
220
225
174
153
203
217
240
197
172
192
204
174
212
245
194
181
244
170
95
242
194
214
170
200
207
210
190
219
166
215
233
161
141
185
228
195
100
181
231
203
142
171
206
205
284
222
174
212
162
167
175
245
185
178
130
174
205
232
210
138
181
135
207
273
180
195
242
146
185
196
136
217
220
123
198
211
207
222
245
210
212
148
169
151
255
172
172
217
146
184
220
251
204
209
253
195
174
167
233
216
186
168
178
165
189
249
251
193
225
229
217
207
194
256
186
142
175
252
169
167
203
190
184
239
231
202
162
200
205
228
187
225
170
278
187
221
223
232
206
266
109
232
171
236
144
189
201
188
280
210
167
188
181
244
211
200
171
174
208
181
186
171
211
162
202
165
209
126
197
194
237
224
116
198
161
211
265
299
206
181
192
189
170
212
160
174
234
201
217
230
232
223
241
189
204
145
283
225
288
173
232
195
211
209
159
202
175
226
178
215
191
203
195
223
192
153
179
170
218
162
149
215
232
132
165
234
250
148
205
262
201
220
159
235
223
218
197
218
228
216
220
219
243
217
194
154
218
197
215
215
204
198
148
221
196
150
193
255
264
174
212
218
183
202
217
234
229
171
175
259
231
233
217
193
175
172
214
242
229
187
176
256
171
192
201
197
206
215
182
200
231
249
198
169
238
200
206
237
110
194
142
177
185
193
237
191
158
208
159
156
231
223
228
221
218
218
170
195
174
186
148
149
192
200
221
157
188
182
210
211
171
178
229
154
252
172
174
194
156
166
252
219
222
209
233
227
184
174
232
199
186
171
179
133
206
211
136
175
182
209
169
264
167
229
195
277
194
263
188
161
264
168
170
236
235
233
203
202
204
205
218
247
196
233
221
210
186
148
239
191
193
212
250
211
213
221
166
246
248
188
217
210
167
186
204
151
190
238
193
240
140
210
229
192
125
230
146
195
172
256
203
144
249
216
151
193
180
188
189
205
215
207
203
189
194
151
169
145
198
216
183
195
141
139
177
284
189
136
137
210
210
159
245
151
241
262
179
239
204
275
194
155
184
161
232
176
222
148
258
160
234
177
202
280
260
178
195
220
247
174
161
241
211
217
176
187
240
142
220
212
208
208
213
170
215
185
209
229
160
179
135
211
171
189
222
195
189
154
199
234
226
241
190
248
159
194
236
173
216
141
194
104
162
193
215
184
272
190
187
174
208
230
190
196
239
223
150
225
237
239
220
182
281
211
152
258
204
198
202
195
194
186
162
222
121
162
137
185
170
180
204
210
158
259
222
217
198
192
254
250
240
224
190
129
212
159
161
219
185
233
212
194
133
138
142
260
170
190
236
163
238
241
197
228
225
255
185
234
223
200
255
147
189
247
195
153
241
225
228
212
192
193
220
153
183
236
130
213
222
260
183
193
242
245
180
155
237
173
247
160
248
165
268
250
213
247
205
248
239
179
239
130
220
174
208
204
182
261
247
255
175
218
201
186
128
178
227
207
260
222
232
189
214
160
232
228
184
174
197
141
189
218
191
266
144
248
200
183
183
133
192
182
194
192
219
220
170
206
189
228
212
194
212
202
169
225
248
259
225
244
152
237
167
175
161
254
189
175
236
245
159
197
218
138
184
169
185
242
214
194
228
272
188
210
196
233
187
238
159
200
213
189
197
201
259
231
230
143
192
204
235
297
117
180
201
209
173
199
252
218
179
223
194
218
143
261
119
227
235
224
173
204
225
162
210
216
214
226
129
183
208
203
261
199
233
227
224
205
226
249
257
143
190
168
226
180
173
224
158
175
216
211
216
260
144
199
209
248
238
244
165
237
170
158
201
144
216
249
201
191
224
215
178
219
226
248
217
199
189
198
239
194
201
281
196
197
130
216
200
156
238
207
173
166
180
182
178
227
208
214
154
214
158
185
169
219
256
206
268
214
219
196
81
182
224
202
216
230
194
145
193
203
239
209
208
135
240
206
246
187
182
125
223
277
248
202
163
238
260
235
227
144
208
144
208
167
217
227
200
230
156
206
208
261
265
234
236
226
259
214
179
254
204
229
205
152
192
189
114
209
169
269
179
138
195
222
209
271
256
200
252
142
260
210
182
222
218
148
230
155
236
178
192
145
262
220
212
206
212
166
189
188
226
228
204
215
213
241
255
187
196
174
225
193
198
212
201
168
194
215
166
143
201
119
240
139
153
226
245
251
214
182
190
168
211
188
233
207
240
226
183
155
163
190
193
212
234
206
219
197
205
204
159
201
226
223
178
187
197
223
165
184
217
190
226
207
206
224
243
195
139
135
176
193
200
177
135
149
122
286
222
161
211
266
206
214
175
206
195
287
206
222
230
236
228
219
176
172
213
155
196
224
160
225
172
239
176
192
212
177
280
198
248
134
175
181
198
218
278
203
243
231
208
187
192
252
218
255
226
249
201
244
171
233
180
157
239
230
148
242
227
237
216
222
204
178
232
216
273
214
214
149
102
220
193
194
225
190
168
158
163
158
206
195
140
234
203
255
226
235
200
128
209
214
216
266
229
201
202
202
177
246
177
194
198
227
258
182
246
205
175
247
166
170
173
154
193
213
209
245
195
213
239
189
191
234
208
186
213
234
181
184
263
148
156
257
197
215
168
196
202
240
256
210
239
178
233
180
134
187
248
160
154
198
221
181
171
175
200
217
168
198
157
192
157
194
258
173
215
205
174
218
228
196
162
177
146
206
130
212
237
179
209
199
244
162
220
118
184
190
216
246
211
176
196
242
129
204
135
201
274
237
221
210
154
268
218
180
141
246
215
212
138
237
191
184
242
208
175
256
243
210
135
229
221
193
170
216
253
152
218
195
210
203
181
127
245
174
165
236
266
207
226
188
182
208
184
190
160
183
212
159
192
90
139
201
218
176
239
179
225
224
217
237
205
253
157
196
193
138
191
185
226
228
214
168
215
168
195
199
156
212
226
190
206
217
179
237
172
200
169
181
251
225
181
244
165
225
219
170
181
215
221
177
160
209
201
233
201
234
245
204
189
260
187
195
196
234
149
152
256
162
208
204
215
235
205
261
162
185
228
116
215
171
261
245
196
202
221
241
239
236
215
171
185
171
195
224
130
220
218
215
213
179
211
237
152
203
216
161
235
138
225
217
245
184
202
190
214
172
210
180
211
205
222
211
233
206
200
171
204
169
198
204
198
158
216
179
210
203
226
161
226
238
190
164
224
258
222
238
248
186
173
241
189
237
221
213
215
199
158
220
254
160
208
217
182
231
207
225
211
239
197
253
242
163
207
177
191
163
149
229
184
197
181
183
240
176
206
231
224
226
156
219
130
172
147
161
170
257
189
152
221
210
229
148
216
232
189
214
223
214
217
207
180
194
226
220
226
186
211
255
167
161
172
145
176
191
185
198
213
237
207
178
209
213
233
167
168
185
150
200
244
201
232
182
208
264
215
150
173
136
189
205
162
191
168
192
146
194
183
150
242
229
183
232
246
214
193
149
147
176
182
218
176
201
178
227
151
205
229
191
203
182
196
163
240
230
205
180
205
209
243
201
248
212
176
196
195
180
196
166
217
224
227
201
187
264
215
219
185
272
147
211
226
269
197
256
215
259
214
212
180
184
261
190
173
232
188
238
249
267
202
175
246
209
201
194
270
209
140
205
198
155
203
237
210
182
210
261
160
223
185
169
188
138
171
206
275
222
234
251
239
158
167
225
194
270
166
214
235
250
236
230
183
155
158
166
168
191
248
193
237
187
152
178
154
194
233
261
222
169
189
206
200
219
175
256
211
208
128
118
217
183
212
197
200
232
166
258
200
255
210
223
187
183
234
222
204
239
175
194
176
165
177
187
249
209
201
116
151
212
203
148
169
173
213
186
187
250
203
209
160
143
159
244
172
167
151
198
249
193
204
174
191
150
167
233
176
217
177
108
203
210
253
200
202
206
141
219
244
214
216
218
203
172
215
169
233
207
189
163
156
205
201
214
260
212
193
222
229
254
169
220
207
181
144
195
170
272
214
171
243
181
170
198
177
196
173
195
222
247
198
217
213
121
192
150
232
218
217
214
164
222
181
258
311
236
232
249
221
172
164
272
185
163
175
243
145
192
203
218
184
235
199
200
194
272
207
227
215
152
203
151
142
196
172
170
166
283
204
178
185
179
189
151
159
229
144
247
195
253
168
210
218
193
218
227
193
208
204
222
222
169
117
163
255
196
191
176
206
207
180
232
168
237
211
158
171
208
202
171
144
234
164
216
187
214
224
174
202
194
218
186
224
197
214
193
204
186
216
225
244
185
186
127
170
171
228
220
213
164
222
201
212
240
230
182
191
190
187
190
135
208
247
206
214
182
206
231
192
123
219
226
157
158
216
231
158
190
165
230
198
154
266
213
224
117
256
178
198
201
175
268
167
140
191
219
194
229
182
272
163
183
237
211
130
220
221
248
214
248
176
237
197
206
235
166
259
219
198
248
175
205
207
195
173
191
169
243
192
210
238
225
218
224
171
181
205
181
188
171
232
213
161
152
203
202
220
220
156
206
173
211
190
270
206
177
229
189
172
179
249
237
204
163
227
229
199
167
200
191
269
212
219
191
168
173
185
200
165
210
210
162
212
230
182
174
182
203
204
172
218
177
200
174
166
273
205
166
174
172
200
233
147
208
163
197
213
208
190
159
183
205
178
191
200
181
219
245
180
203
206
196
233
216
155
229
211
247
171
180
216
248
170
198
165
181
222
206
248
189
213
144
131
227
133
221
201
219
230
180
199
170
232
220
139
252
261
232
171
251
230
243
241
182
200
194
235
202
253
136
183
243
196
239
162
212
152
211
118
256
191
214
144
210
177
165
179
139
239
140
193
237
210
196
193
169
173
173
170
182
258
212
272
226
238
215
196
199
124
193
272
160
209
235
223
251
183
246
143
261
226
164
204
192
189
225
229
195
270
192
149
205
209
200
186
209
232
199
204
158
224
219
169
177
198
208
182
230
142
189
175
233
185
194
217
180
192
232
232
169
221
207
212
253
156
232
215
214
235
246
235
218
142
197
165
242
174
218
175
166
206
220
227
239
117
247
189
176
239
210
186
235
215
115
207
195
178
176
192
193
160
223
213
198
135
193
254
240
218
187
147
234
230
199
213
256
247
167
233
136
201
105
201
150
238
146
151
172
211
155
205
195
229
185
216
179
201
222
227
227
156
228
169
173
198
208
190
193
194
173
233
212
248
123
214
189
139
263
186
189
175
227
232
210
165
217
216
231
212
189
218
212
212
175
173
226
158
111
218
200
178
223
196
163
201
147
226
225
115
205
229
200
209
211
158
278
136
167
199
200
234
268
222
215
186
192
165
196
224
164
180
186
208
166
199
195
118
221
215
221
216
244
239
188
195
170
162
223
167
175
165
194
242
129
184
241
109
174
256
185
257
227
236
231
193
200
168
212
183
223
174
199
175
237
128
204
224
197
234
218
211
138
233
168
267
126
191
254
167
209
150
236
229
191
224
194
197
157
206
208
241
173
190
166
214
208
206
200
200
198
178
190
135
199
196
173
188
177
172
204
200
195
239
196
221
206
251
274
167
177
133
149
235
175
229
260
153
215
157
190
218
223
235
147
191
225
257
241
195
107
236
206
229
231
137
193
268
229
161
200
197
215
215
185
172
264
162
210
150
227
182
139
221
206
232
243
221
228
160
221
251
231
145
267
202
256
232
190
280
226
170
257
180
222
199
241
237
230
143
189
199
155
214
268
180
181
162
213
200
202
151
200
218
210
181
211
166
186
233
187
216
250
223
205
223
248
235
162
203
195
185
219
190
196
193
273
241
131
186
209
220
140
217
172
148
181
168
136
191
268
231
209
206
235
198
235
148
239
207
213
120
244
160
195
239
168
243
256
215
251
232
179
184
209
214
171
131
171
242
152
186
200
220
173
178
199
206
165
201
202
150
221
164
219
168
185
196
145
220
180
191
254
242
208
178
193
215
213
218
163
203
211
163
175
241
184
162
208
254
199
203
203
184
246
223
226
139
247
166
249
238
164
118
201
212
170
154
220
172
210
201
218
192
178
166
229
159
162
199
195
181
221
184
212
135
225
158
234
289
170
268
223
233
148
194
254
194
196
227
206
157
215
239
179
199
194
181
216
209
219
213
154
214
195
175
228
157
234
241
196
216
200
246
199
205
212
173
115
214
206
200
189
234
206
214
184
158
242
110
245
230
221
260
174
250
134
162
150
214
207
169
231
201
186
144
232
226
247
249
112
225
139
165
180
232
272
207
213
170
152
166
247
260
182
219
286
232
225
201
248
235
293
230
260
198
219
179
212
153
223
157
177
235
157
194
166
186
160
183
194
208
226
201
156
241
187
167
259
217
225
240
291
225
165
177
144
224
244
200
226
254
214
202
175
218
181
169
220
227
242
220
186
147
196
164
138
241
209
190
192
191
220
221
173
153
183
212
180
228
160
170
243
200
176
233
214
221
217
213
185
188
196
182
245
244
177
177
220
184
159
136
185
223
214
139
158
198
172
212
187
237
158
229
159
159
213
164
190
161
259
173
169
231
204
168
213
208
162
256
216
261
208
195
197
232
163
171
251
196
158
175
187
205
226
158
240
203
144
204
156
140
184
197
214
206
235
185
217
174
221
263
174
152
166
182
177
136
213
214
243
223
185
217
266
179
204
192
172
118
197
232
220
127
196
145
257
240
231
174
209
268
216
134
155
188
210
209
157
185
201
116
205
281
202
195
183
193
244
205
155
219
195
203
164
186
201
168
251
208
163
179
205
190
214
217
214
117
153
130
182
194
230
183
181
209
202
183
264
193
200
204
175
222
184
203
197
201
237
211
171
233
218
248
168
176
203
176
184
192
131
162
178
130
249
194
195
178
172
254
196
194
191
206
200
190
201
217
155
206
155
215
194
182
170
166
244
216
236
238
214
213
161
230
201
197
126
183
220
216
211
195
140
189
228
234
186
181
238
258
157
206
153
236
187
151
181
152
169
218
205
142
188
203
165
156
191
178
181
246
268
170
176
203
180
197
105
182
252
196
252
197
244
212
212
131
154
253
252
167
162
176
140
166
230
173
203
196
195
162
236
186
156
227
192
171
201
254
230
218
229
166
182
157
150
213
220
202
188
192
178
195
224
214
248
247
118
198
210
219
224
145
201
270
153
219
133
220
230
172
143
170
238
214
214
234
221
222
210
153
250
180
186
246
180
200
270
208
231
250
203
201
182
153
165
170
157
144
198
196
216
166
144
195
177
168
229
178
241
211
204
146
222
175
151
237
197
225
201
162
167
196
232
184
167
200
210
185
243
237
206
152
184
226
187
209
197
147
193
142
180
228
191
216
135
177
130
214
237
181
214
239
166
169
139
222
210
217
202
162
149
245
240
192
214
160
152
219
255
180
208
226
243
241
179
243
199
186
178
233
227
226
212
181
239
195
160
233
212
159
200
202
197
194
235
197
166
183
183
228
218
152
231
200
230
211
244
262
230
175
178
210
204
207
120
156
227
219
174
136
242
187
172
157
189
172
199
209
214
193
187
207
186
212
194
74
287
190
165
203
215
194
213
225
236
195
212
256
228
226
206
245
184
153
192
245
183
214
121
235
156
195
209
217
233
225
191
174
192
203
244
225
179
225
234
224
184
202
231
185
171
160
235
157
172
163
187
230
204
219
216
243
172
184
213
150
217
220
233
198
233
234
241
168
225
197
191
221
134
182
187
180
191
174
228
203
182
234
190
183
175
228
154
198
257
192
206
235
160
171
182
197
164
217
247
201
207
157
179
199
216
244
223
195
209
194
260
166
254
181
207
199
213
205
168
149
248
191
217
218
198
189
130
211
158
165
225
147
202
200
183
221
168
252
160
206
224
142
222
215
253
157
208
158
193
215
153
179
247
232
212
214
208
254
255
181
191
260
241
277
159
217
211
227
202
249
207
158
168
233
226
212
206
225
202
269
188
203
148
212
220
143
163
169
203
150
168
201
204
189
148
185
218
192
201
104
201
260
209
187
174
173
228
199
225
180
172
240
224
204
188
162
188
193
231
265
198
212
217
204
194
188
207
223
152
204
160
246
267
199
212
221
207
162
203
213
155
195
159
167
182
174
166
258
149
226
236
121
199
171
196
175
198
214
302
196
122
227
293
222
215
168
159
182
150
189
219
206
197
178
228
246
224
213
85
197
181
250
196
216
246
190
219
174
223
250
236
166
160
213
156
127
196
247
149
196
176
205
153
185
179
220
251
205
169
202
131
214
197
170
231
192
227
146
150
189
127
236
129
180
203
233
253
180
206
222
176
124
189
175
229
229
203
217
179
162
236
151
202
249
188
224
233
150
193
202
203
216
269
188
165
211
135
195
193
232
248
279
145
243
218
287
211
190
207
187
176
146
203
238
157
256
201
219
193
167
215
111
235
166
177
233
181
204
246
194
209
252
170
251
181
217
242
188
203
216
156
158
181
238
230
182
123
181
173
136
153
198
224
206
200
178
208
185
179
221
146
170
191
225
182
222
155
199
196
208
192
183
225
204
130
184
189
183
134
228
200
223
153
197
217
233
195
150
232
148
211
157
177
185
215
157
264
210
160
211
221
237
237
253
225
197
224
212
185
214
159
232
207
274
218
207
222
190
231
243
197
176
140
201
116
187
219
240
204
189
236
165
141
191
213
207
235
239
178
197
211
164
147
197
185
182
209
145
258
226
214
138
164
198
199
185
234
168
249
203
183
269
214
211
217
262
225
194
124
182
204
142
219
194
203
163
149
124
178
179
126
214
195
180
146
188
191
200
212
231
208
252
165
209
171
241
217
142
263
232
212
148
238
221
194
234
207
242
236
176
239
179
177
190
225
208
175
216
142
200
188
207
238
116
275
208
242
219
209
243
200
237
280
168
201
202
174
208
238
243
200
153
240
190
195
214
229
212
274
251
178
226
207
185
179
209
184
231
178
206
151
213
219
177
176
215
236
235
227
176
161
219
162
232
198
96
203
210
207
231
187
175
257
245
184
235
273
186
189
207
227
158
212
194
203
177
172
206
170
219
190
236
230
177
162
213
218
183
215
192
247
193
192
174
202
233
188
200
176
205
205
184
167
211
218
210
147
220
203
190
199
178
266
251
202
225
191
181
150
169
189
171
206
118
199
186
136
252
186
160
221
260
165
194
237
159
211
217
195
204
194
167
221
235
203
157
177
220
220
171
137
133
273
241
181
214
186
167
170
192
249
256
204
261
155
175
221
168
165
194
218
163
231
140
186
200
246
219
196
187
242
198
255
220
164
204
214
176
189
198
241
147
197
242
200
201
249
269
187
225
188
159
256
207
265
207
171
175
186
186
208
204
224
221
208
150
224
227
233
217
177
181
140
213
216
223
166
132
231
200
226
161
170
162
171
223
299
251
202
227
185
208
206
241
243
181
159
184
195
185
188
160
233
214
248
194
253
156
208
264
239
198
180
246
239
257
173
255
196
169
225
203
206
197
232
232
176
241
171
180
181
223
210
202
178
248
228
221
233
163
249
146
179
176
220
190
241
176
199
166
244
209
237
241
176
178
203
236
210
215
211
142
169
191
227
274
204
224
233
229
149
212
195
197
197
214
193
158
227
215
191
240
172
147
200
214
216
265
219
260
173
235
177
232
125
224
156
180
191
178
193
248
184
209
234
152
236
171
257
132
206
203
194
203
229
210
206
148
205
176
193
206
154
186
137
205
167
244
218
185
211
204
264
205
227
212
188
198
196
170
143
228
163
228
147
222
177
205
184
232
236
154
208
179
205
218
152
193
209
217
249
218
230
213
263
232
184
231
240
169
210
185
268
202
216
191
216
248
230
199
204
216
217
174
177
262
223
179
210
275
253
187
163
169
249
180
202
205
165
181
124
184
169
221
224
206
179
197
211
158
166
241
143
192
155
180
235
202
167
173
252
157
213
202
194
183
132
183
178
148
284
203
174
220
189
217
184
165
238
217
213
154
207
228
194
190
229
178
226
125
195
221
216
228
233
244
225
190
216
224
182
202
201
241
165
191
219
203
217
198
210
181
143
209
175
211
174
197
183
168
170
164
193
235
209
230
217
200
159
196
158
207
242
205
163
253
186
201
232
157
213
226
212
189
156
257
226
209
220
230
230
160
190
202
198
245
205
239
282
239
146
173
192
228
142
174
175
230
243
168
227
194
220
256
270
125
172
156
211
213
151
177
178
228
94
181
238
196
197
245
185
245
200
153
171
184
225
235
252
187
206
240
176
156
194
146
171
176
200
152
180
246
230
191
193
206
199
186
198
172
231
184
240
135
215
160
174
207
286
199
210
200
206
195
238
215
217
195
174
236
172
228
194
232
214
173
147
165
208
216
231
180
196
187
176
196
182
226
150
208
177
244
253
255
246
295
179
217
232
239
282
247
105
196
197
244
182
195
195
238
207
221
168
209
173
211
213
206
228
165
131
192
214
247
242
273
196
162
224
190
212
216
141
234
193
194
206
184
244
150
171
153
236
208
233
200
250
172
196
205
200
241
173
197
157
135
198
234
199
208
218
178
185
172
186
199
176
158
146
174
249
220
159
250
124
224
177
178
201
203
209
170
186
221
222
204
168
220
215
165
209
234
241
167
242
232
239
220
159
184
166
194
189
260
238
118
184
170
255
226
132
176
172
230
104
264
209
189
210
243
226
213
207
240
234
194
239
156
232
185
198
228
179
205
175
188
159
140
195
204
253
221
181
288
183
190
187
193
197
149
148
193
227
172
227
201
147
169
180
176
182
204
171
204
264
187
119
202
226
150
182
160
153
157
208
164
179
215
196
180
180
233
244
242
178
96
213
261
239
194
173
206
241
222
191
227
193
239
211
257
160
228
284
202
189
166
153
192
253
243
222
215
240
158
217
158
180
163
126
217
173
176
230
171
226
184
226
207
203
209
216
203
213
159
136
160
172
206
137
172
243
267
260
219
230
195
200
246
226
150
197
228
228
167
134
159
207
180
177
182
129
143
205
218
237
238
151
210
225
239
210
212
177
204
251
211
226
157
236
198
179
221
233
186
205
201
219
214
173
242
199
204
156
189
159
189
165
289
186
185
194
295
145
258
153
148
218
178
172
162
230
203
136
200
202
177
219
167
251
219
195
186
262
220
201
182
199
186
125
231
221
181
138
208
167
167
234
216
211
162
196
236
203
167
161
197
220
199
201
201
209
211
174
172
149
200
229
252
175
181
182
157
190
229
203
232
246
178
227
251
181
137
190
168
128
252
238
138
140
196
238
244
248
203
221
195
204
175
194
252
223
230
176
216
210
240
229
190
188
176
205
208
210
262
140
161
210
249
150
166
164
162
267
219
186
212
231
229
118
202
246
225
125
172
242
191
177
217
126
213
229
211
145
207
231
189
198
237
254
229
217
207
212
212
189
200
145
196
188
161
167
197
196
220
160
261
185
183
237
175
225
197
185
218
156
242
229
239
198
229
145
220
224
190
256
173
240
178
196
204
218
160
178
250
230
205
149
209
219
158
186
214
159
221
245
150
239
200
223
231
210
171
164
158
234
196
199
210
230
211
224
157
244
232
214
207
188
245
173
244
195
178
276
250
208
251
187
202
203
166
227
212
216
240
209
173
170
229
197
173
195
168
193
191
164
161
247
233
170
228
145
227
239
210
188
143
171
207
181
181
188
221
196
212
171
203
238
166
262
201
202
178
203
203
184
257
198
162
153
246
231
169
235
189
203
214
225
262
196
249
224
214
233
183
238
157
193
244
156
236
206
185
177
157
231
193
264
189
143
210
238
196
128
238
220
183
269
251
189
189
203
210
190
264
186
156
242
243
165
133
250
205
220
200
185
274
210
216
228
149
185
219
158
208
72
217
197
191
180
221
220
142
198
201
243
214
177
197
184
169
186
179
171
157
200
230
237
181
194
170
146
181
291
237
172
167
236
179
182
262
203
206
238
170
163
152
228
211
220
212
250
150
157
173
212
181
236
223
180
126
252
287
143
176
178
215
178
156
243
172
278
222
155
231
218
216
213
203
224
205
193
210
232
149
193
198
261
155
211
193
174
229
132
210
200
174
266
174
178
231
238
226
196
218
187
188
175
250
148
123
275
219
129
204
232
152
250
132
270
236
238
174
187
162
248
225
137
213
202
149
175
227
216
227
160
141
196
205
148
253
226
201
201
259
159
108
219
263
202
154
154
211
273
208
176
212
246
208
213
177
160
208
162
244
201
251
163
182
231
246
210
251
203
200
224
241
217
147
217
200
191
163
298
215
216
160
187
178
188
160
222
205
228
234
203
218
167
201
139
245
161
195
208
214
138
153
236
219
185
219
173
206
176
278
161
215
226
175
169
128
197
213
199
148
185
165
258
212
182
234
211
244
183
177
253
171
259
146
186
146
161
183
178
211
243
181
219
204
209
207
156
150
188
198
226
220
189
210
193
199
192
240
200
139
136
194
147
147
151
244
181
169
252
185
130
163
206
200
191
215
143
246
178
166
166
221
234
218
215
211
184
213
226
223
237
202
230
214
213
212
212
197
203
243
163
188
138
154
194
252
139
218
148
184
132
173
190
230
249
211
147
232
102
182
221
185
262
239
223
214
163
200
171
210
193
235
246
218
212
199
223
206
170
205
211
215
226
223
273
257
179
146
286
158
192
113
136
231
203
152
208
191
113
155
205
190
223
166
186
186
206
225
181
207
212
171
120
234
184
187
228
216
207
231
238
211
203
190
224
208
247
169
157
167
187
250
247
209
155
191
187
214
211
180
200
195
200
241
226
181
214
232
172
271
203
176
244
211
259
245
156
195
212
161
205
176
183
274
198
171
238
244
216
218
273
226
220
160
182
183
230
265
189
205
197
208
178
223
194
218
210
219
236
209
252
155
130
273
213
229
180
192
240
250
200
213
224
236
247
282
159
185
177
148
208
243
246
208
221
205
229
169
195
135
243
182
263
198
164
152
214
200
227
240
211
270
199
204
193
247
232
132
166
259
183
181
237
193
244
201
195
167
182
238
168
209
179
188
194
245
231
160
240
203
170
223
232
174
196
205
205
152
178
159
189
117
217
204
199
228
186
202
216
185
202
193
234
230
164
241
187
261
265
177
213
203
246
197
243
213
228
161
232
219
167
223
183
194
190
174
146
113
191
191
210
191
183
193
242
197
182
231
173
228
280
193
210
217
186
211
198
219
207
186
204
201
194
163
243
223
250
166
235
280
214
238
202
207
187
191
200
196
162
204
185
172
155
191
267
256
186
210
170
218
131
237
170
189
179
181
185
212
185
161
237
233
248
273
190
185
124
185
187
216
244
172
213
145
149
186
258
209
228
257
199
160
246
257
172
181
149
205
141
176
185
185
228
140
227
236
155
215
188
187
203
210
153
185
184
168
209
259
208
160
207
200
202
223
264
215
219
227
216
225
213
218
119
229
208
244
179
112
250
207
258
124
186
219
187
217
178
168
245
167
192
238
161
202
206
218
260
210
192
240
168
187
230
179
210
212
251
200
203
220
286
131
227
130
196
151
251
171
231
204
185
228
164
208
238
175
200
191
226
202
199
220
215
199
200
179
198
240
223
229
211
199
265
201
251
186
216
239
249
190
221
202
186
232
241
201
273
163
164
174
202
223
224
199
159
205
185
166
237
177
180
255
148
259
197
219
219
166
274
198
182
208
167
269
246
233
187
180
155
223
219
131
226
224
173
131
186
184
152
226
186
185
226
107
197
216
188
196
256
136
201
226
242
221
108
228
207
238
160
194
212
169
171
214
164
212
189
259
213
208
217
163
150
198
211
152
219
182
223
215
172
153
152
168
178
182
180
250
257
200
231
203
199
223
141
167
233
193
259
177
201
137
202
210
233
193
173
154
217
172
243
237
208
243
150
199
228
215
209
159
182
227
214
233
207
172
234
198
225
221
208
174
195
245
166
205
249
208
169
176
217
169
253
201
175
188
215
192
161
253
175
190
166
172
238
215
196
157
219
244
187
186
222
267
256
176
223
209
251
191
187
208
238
177
192
247
167
189
215
240
216
188
213
152
214
160
170
204
184
239
213
189
180
189
194
192
152
178
263
181
224
187
202
173
136
216
195
149
216
213
174
168
170
223
127
150
182
192
165
188
182
159
167
221
170
260
178
166
213
145
163
185
225
129
176
243
230
206
176
230
196
255
148
178
118
268
130
218
260
244
253
161
235
142
238
173
194
259
210
184
249
176
170
219
217
162
194
224
208
266
253
218
227
235
158
224
222
214
216
87
252
242
216
144
210
172
171
146
147
190
263
225
171
240
263
159
183
186
187
162
224
256
218
180
182
201
177
147
208
219
245
224
241
186
244
216
200
258
201
104
194
225
257
201
172
185
213
231
133
251
140
198
192
246
179
235
153
188
192
188
230
215
151
174
200
115
209
230
242
151
131
212
234
181
235
142
178
129
189
206
226
173
254
188
137
177
153
206
152
202
135
215
236
204
162
217
215
257
192
215
203
216
153
183
236
181
229
224
127
196
256
211
237
200
204
184
204
244
183
234
195
193
204
250
214
160
204
172
225
228
196
167
238
223
187
123
194
222
158
224
243
200
191
233
220
158
177
257
249
174
210
211
218
218
152
213
204
170
257
182
158
246
135
207
212
185
255
153
249
197
183
203
221
155
251
234
161
203
169
243
233
203
220
167
187
165
176
177
197
232
251
190
251
226
215
252
188
139
228
243
184
225
247
225
193
151
193
114
240
235
169
214
175
204
95
194
192
186
188
236
172
198
247
207
188
188
169
179
199
221
196
209
228
194
268
211
250
225
201
196
204
157
237
210
233
250
266
236
185
209
210
197
276
180
228
200
203
234
115
223
157
252
218
210
183
195
204
148
220
239
187
166
221
181
187
210
240
186
180
166
241
197
186
196
216
231
227
173
182
231
261
172
201
231
245
192
189
238
153
204
212
207
259
249
161
142
218
233
174
271
258
178
172
147
219
200
210
120
192
166
184
235
158
195
158
225
193
185
243
154
225
198
187
163
172
193
247
272
152
174
165
245
162
205
209
237
201
240
216
205
212
276
174
221
202
212
204
183
179
209
140
202
203
228
149
208
221
209
156
241
204
179
267
210
231
223
229
148
180
209
231
211
235
187
176
187
184
188
266
194
225
245
220
167
174
177
193
178
239
158
199
249
161
196
187
219
175
231
239
178
155
231
202
228
214
192
231
150
155
195
163
203
229
208
212
202
175
172
201
188
156
204
222
186
198
206
190
242
180
205
177
229
184
203
165
175
190
259
217
232
170
228
175
167
191
217
218
196
248
184
263
165
213
176
170
194
191
163
205
293
222
196
134
192
213
212
201
273
160
208
210
241
200
192
253
219
158
108
239
214
155
138
221
204
129
234
131
224
163
224
230
173
229
217
208
165
182
202
67
248
186
196
202
264
190
183
165
224
203
211
185
268
254
224
177
185
222
197
178
186
230
186
194
232
222
210
174
201
164
238
165
187
197
216
158
170
162
181
229
166
112
200
194
176
226
162
209
185
261
222
166
218
200
224
245
211
165
231
266
180
208
216
189
234
250
188
169
142
197
252
255
176
225
231
146
188
168
216
138
163
191
229
161
208
158
185
201
234
214
241
183
160
178
154
164
199
181
181
159
173
207
166
166
187
210
204
158
144
162
214
204
220
151
169
143
163
201
192
241
189
171
294
126
163
257
139
210
196
179
209
251
186
179
197
198
194
209
168
248
229
172
208
184
225
175
144
240
246
189
131
187
196
244
163
166
244
192
203
192
166
180
239
224
160
223
139
191
226
190
228
235
174
187
158
149
257
179
213
279
201
211
134
233
171
214
191
152
120
200
211
174
200
244
197
195
209
133
190
210
205
218
227
138
211
163
225
167
120
211
237
166
220
233
229
227
207
203
163
190
192
132
174
222
212
225
220
150
156
192
151
201
173
232
196
201
191
214
236
205
224
208
241
190
139
213
164
241
126
217
192
255
206
259
249
167
234
158
146
170
157
169
239
183
183
195
204
186
280
263
181
152
200
205
184
250
164
112
166
224
142
210
196
212
201
218
200
234
188
247
227
243
232
210
224
198
169
223
239
234
189
175
211
225
206
220
165
175
198
172
177
244
151
192
205
202
197
172
148
198
197
201
231
162
205
196
172
201
138
208
195
225
230
186
231
189
183
149
225
173
191
226
159
254
168
172
225
178
189
225
192
194
167
203
153
155
265
182
197
186
194
170
236
252
137
175
161
206
190
143
216
234
200
185
269
245
162
177
167
219
206
186
209
274
161
146
216
195
158
209
134
240
158
227
237
222
279
218
249
184
162
207
227
188
205
141
220
197
138
226
185
123
153
194
211
182
230
183
169
180
171
207
261
261
233
185
233
163
187
169
254
227
216
147
233
229
221
217
210
108
146
212
227
146
223
232
186
215
189
241
155
243
215
165
189
190
185
164
196
233
224
190
237
276
174
199
239
179
183
201
182
178
177
187
226
196
217
183
182
216
234
202
148
222
192
227
198
284
207
223
189
208
203
225
195
230
149
167
219
172
214
131
191
216
200
203
190
140
192
195
165
184
269
192
190
217
193
219
218
195
204
148
204
216
105
231
132
233
201
197
219
197
253
212
194
181
237
196
242
223
221
194
183
245
203
192
185
211
182
265
166
178
201
187
227
167
225
180
184
231
207
263
205
232
174
208
168
182
189
226
129
226
247
197
174
172
131
203
218
225
213
220
235
204
249
177
155
187
215
141
149
202
194
200
127
187
179
168
207
162
199
136
134
239
146
205
191
240
203
211
248
223
196
263
161
153
222
196
153
218
188
179
221
188
237
262
225
174
229
164
168
185
208
260
219
206
215
245
231
176
200
186
208
252
223
236
220
223
161
218
248
215
193
195
172
170
240
168
287
246
167
187
225
211
189
244
216
150
206
179
233
197
195
213
242
225
215
192
172
170
172
276
214
176
193
175
209
193
219
186
163
226
249
234
193
221
188
175
192
236
180
200
229
180
158
197
123
192
130
208
189
191
223
225
245
215
165
180
183
228
191
192
179
201
205
212
177
118
185
203
186
211
189
177
172
134
213
257
220
198
204
152
185
184
184
181
225
221
164
230
196
199
202
175
213
159
171
164
224
168
195
201
226
253
144
243
173
177
212
144
173
218
151
221
206
193
173
237
208
196
245
237
198
205
195
177
174
173
224
208
166
211
186
223
199
217
186
234
145
169
219
214
234
226
210
172
183
174
182
214
196
259
211
210
203
208
171
193
209
222
153
249
263
227
234
226
203
203
180
195
218
196
185
255
156
278
157
215
195
241
194
152
196
218
204
188
159
225
133
164
171
175
207
214
241
142
242
215
215
173
163
170
204
253
200
217
151
227
223
204
188
145
231
228
179
191
188
210
215
220
135
196
229
256
239
204
134
192
199
241
218
235
211
170
218
188
187
203
268
215
185
216
202
263
241
200
200
231
209
195
214
253
187
203
213
232
272
240
176
235
182
167
198
150
186
226
148
188
225
184
221
160
200
200
180
190
215
188
157
184
245
167
172
206
182
153
226
198
238
220
197
152
177
186
169
183
166
211
183
158
228
184
226
186
214
166
186
193
144
194
172
194
211
164
205
233
140
198
161
157
238
229
195
236
183
173
260
195
213
157
232
162
250
208
185
143
162
194
176
226
219
183
226
195
194
137
247
232
194
220
203
253
171
185
258
214
231
262
184
228
178
174
232
201
182
201
212
235
221
171
149
188
139
205
237
217
240
232
212
194
224
184
198
218
274
198
150
206
203
213
183
120
244
197
201
192
250
200
202
216
246
258
189
218
177
158
208
211
173
193
159
172
155
162
164
192
166
231
189
221
266
231
183
172
229
199
280
235
217
180
198
189
189
160
219
177
203
168
171
104
206
176
218
187
176
247
185
223
197
221
176
161
200
116
183
148
222
150
199
241
225
177
216
223
178
149
213
155
217
183
217
175
223
190
234
182
175
183
223
231
205
203
224
177
189
133
223
194
209
154
182
186
251
212
225
142
222
182
230
173
166
200
230
199
286
210
165
206
229
173
198
167
109
245
213
171
253
139
189
247
200
172
240
191
162
159
215
181
171
205
218
206
165
213
180
184
194
224
200
213
209
120
234
213
207
191
193
154
183
185
215
185
203
214
241
172
231
195
250
236
226
165
211
197
261
197
206
239
217
163
178
185
177
193
201
184
162
162
174
214
247
234
211
275
198
179
149
198
179
151
233
160
219
181
236
175
188
154
235
212
223
219
193
200
172
229
167
149
235
249
173
225
274
236
199
169
183
161
181
190
188
264
157
234
193
230
169
173
219
197
207
201
171
256
221
236
204
226
249
203
224
197
176
262
189
262
105
164
190
186
203
162
179
262
223
176
210
258
156
179
212
169
173
101
187
184
180
159
192
247
225
168
203
238
196
209
245
136
197
180
212
240
199
173
138
237
209
168
205
146
145
191
144
199
208
191
231
212
197
160
131
210
166
251
279
163
232
215
257
167
251
208
203
175
220
165
211
260
178
235
242
200
190
185
191
162
238
191
224
205
178
233
213
248
233
182
228
214
200
206
237
240
191
210
180
209
79
196
217
229
184
191
201
196
241
183
227
232
171
231
151
194
227
239
218
208
229
195
213
168
204
178
244
156
212
234
176
176
192
202
183
141
146
225
166
176
218
245
182
240
216
240
236
144
209
190
218
144
209
186
170
215
189
156
165
180
158
156
175
220
198
187
216
181
236
139
180
216
248
239
253
166
252
199
219
222
219
222
188
145
190
209
220
173
136
232
233
148
189
150
179
164
225
214
173
208
224
205
249
161
226
195
171
241
191
176
160
160
165
246
202
136
198
219
179
122
242
221
207
257
211
228
175
135
186
195
210
189
171
162
160
230
226
247
226
163
203
251
190
245
219
233
220
177
138
217
174
236
183
212
199
220
156
226
207
228
180
159
213
191
237
168
188
225
216
182
194
228
238
149
226
206
208
190
142
183
219
218
203
208
250
157
227
205
209
236
149
222
184
178
247
172
121
185
191
171
206
230
190
183
177
141
230
201
167
188
212
190
202
257
161
208
179
153
182
129
191
215
224
210
207
140
130
229
212
173
198
193
136
200
239
208
234
200
126
170
148
238
157
187
170
163
196
205
228
213
255
218
256
213
175
285
190
218
152
211
227
199
85
255
251
201
160
190
222
157
198
188
218
210
217
204
147
178
168
193
196
189
203
161
199
173
223
236
187
194
202
203
186
224
180
236
178
138
203
156
221
191
262
145
166
187
169
216
121
234
205
135
182
174
190
198
201
207
173
159
150
140
235
205
238
233
223
184
235
252
230
236
257
248
194
211
215
196
200
183
228
262
171
230
141
203
197
246
236
144
208
176
137
220
212
250
138
214
184
179
219
159
177
194
229
226
162
194
203
191
198
170
233
231
213
176
158
241
210
219
217
202
228
199
174
172
196
228
232
257
159
198
171
164
229
245
184
171
221
175
215
174
162
176
205
242
217
195
275
206
226
228
235
185
200
162
270
168
230
110
221
179
208
259
227
199
221
141
272
205
161
165
230
215
126
219
233
180
157
231
212
202
223
217
154
208
179
194
139
178
176
176
162
145
201
190
249
223
207
217
182
199
172
224
208
179
204
244
237
141
195
227
237
242
172
207
193
132
226
216
177
229
191
197
185
210
245
178
204
210
151
215
161
237
215
254
159
196
130
273
218
172
208
197
206
203
196
178
240
198
209
178
261
216
198
250
212
180
221
202
192
180
213
189
224
235
213
218
223
204
239
188
220
195
165
215
185
196
204
279
159
169
223
176
213
254
207
185
177
202
174
226
185
225
204
240
201
211
247
189
189
214
183
251
185
196
185
177
226
208
187
216
213
197
236
163
191
252
125
255
174
246
215
189
176
170
205
162
176
151
242
193
190
230
182
203
188
207
260
192
229
211
187
196
224
192
194
244
108
216
233
234
230
250
208
191
206
186
145
169
141
233
245
183
187
222
144
261
273
222
147
228
231
246
239
183
228
168
166
250
227
211
172
210
250
206
209
140
203
204
215
234
160
245
169
208
212
213
179
236
203
261
213
180
300
177
263
206
197
192
140
249
245
247
190
212
214
153
203
179
260
234
174
189
263
211
171
201
180
203
154
194
236
225
258
162
226
216
172
187
255
255
170
180
165
165
232
215
197
209
214
201
219
238
193
116
278
281
248
208
231
191
193
247
241
185
163
198
265
202
185
246
180
222
191
322
169
172
229
156
225
215
211
191
197
150
203
111
194
197
218
176
177
265
200
132
203
184
198
131
181
143
256
216
170
164
180
207
188
212
180
210
220
161
200
212
169
215
201
224
199
237
233
219
180
186
151
220
187
176
185
259
203
236
224
216
190
161
208
184
202
218
181
204
243
171
173
227
171
210
207
223
259
174
264
247
210
233
242
190
234
170
185
236
207
193
182
193
209
228
208
207
205
125
232
157
233
203
196
175
199
189
200
169
194
173
198
200
215
229
198
207
222
183
212
223
153
210
197
168
218
179
240
225
189
175
170
214
200
135
230
146
240
180
196
250
265
149
200
200
220
232
196
234
180
221
161
232
200
223
130
164
219
228
173
230
227
199
180
245
166
145
190
193
198
148
219
143
273
225
214
182
190
153
253
192
228
187
150
226
146
121
177
146
186
165
254
255
249
174
158
199
213
111
236
191
221
167
220
194
142
153
230
239
247
208
171
245
264
182
211
202
231
184
179
224
188
204
271
171
159
199
252
194
161
114
204
205
226
198
191
206
230
146
207
189
159
150
155
239
199
243
215
200
189
205
177
246
159
232
163
164
164
212
205
163
196
260
193
226
189
179
212
235
256
246
183
242
202
235
252
209
188
247
207
187
152
159
234
219
217
245
232
199
177
202
203
158
215
273
190
193
176
253
169
263
211
235
221
273
260
203
164
231
226
194
181
204
245
192
219
196
159
180
223
187
231
187
229
236
193
127
236
220
219
213
201
256
182
204
217
166
156
157
180
172
181
200
193
217
236
149
178
218
168
235
161
209
206
163
161
139
174
216
159
212
221
152
245
209
240
263
231
224
172
154
180
127
184
239
203
237
169
250
134
201
185
190
217
243
231
224
203
159
179
181
221
179
209
186
218
208
147
195
257
219
229
201
209
209
203
184
215
171
229
242
199
195
199
206
182
142
242
205
224
234
169
155
191
142
215
190
195
262
187
190
219
211
200
195
197
219
153
197
199
243
221
223
174
203
246
144
171
215
225
212
217
207
151
210
198
154
189
155
221
218
223
156
168
247
179
182
234
140
221
212
212
166
241
203
234
175
208
147
255
116
201
154
221
246
164
183
217
203
160
207
218
211
196
225
215
232
217
283
161
189
205
223
180
196
194
181
210
232
212
234
158
191
253
164
172
199
216
224
179
264
226
151
147
217
223
147
204
213
200
201
252
194
199
209
209
150
251
186
198
143
213
196
174
176
212
197
197
244
196
188
163
167
210
156
148
202
168
145
205
138
172
256
178
190
231
252
188
199
230
217
218
222
230
181
206
216
170
189
171
171
204
136
227
177
183
198
253
145
263
201
197
186
188
159
210
243
215
186
229
204
164
240
259
167
150
249
179
211
175
229
190
255
159
256
194
170
194
213
208
245
228
247
191
221
221
200
224
192
261
177
227
250
210
196
222
250
210
190
158
187
162
178
162
131
152
192
208
245
225
271
195
209
251
184
176
244
174
192
186
179
191
153
215
147
213
206
235
135
199
244
145
188
193
210
201
275
187
201
174
259
189
164
181
231
168
240
185
178
227
203
194
236
246
168
177
141
159
207
180
241
204
188
256
168
158
207
175
253
252
225
172
188
207
175
205
250
196
238
157
260
194
179
177
175
210
223
166
155
125
235
201
185
138
259
168
208
186
250
171
258
138
231
231
133
201
236
170
172
170
201
157
171
187
228
189
175
211
182
213
185
236
212
177
245
200
194
169
204
176
222
159
212
179
218
235
189
196
221
238
238
142
207
223
230
197
203
254
173
212
182
183
191
172
255
145
164
261
184
188
178
233
178
217
126
221
234
210
259
218
165
196
160
276
264
220
227
149
240
220
171
252
215
114
172
203
218
187
209
128
238
165
245
178
205
216
227
222
177
197
229
194
264
164
226
261
182
161
186
196
181
223
187
163
223
188
205
200
185
230
223
175
151
200
161
191
204
261
173
261
204
177
238
178
239
219
221
199
193
244
179
268
195
197
202
169
128
217
230
220
245
196
151
230
202
214
213
167
222
245
271
155
185
211
222
162
213
265
201
255
209
204
218
182
220
200
137
197
154
152
229
224
217
243
158
186
218
184
171
132
215
222
179
200
194
235
228
205
184
203
185
222
202
225
154
158
244
191
204
127
224
200
204
240
231
225
210
197
239
221
202
222
153
204
174
190
256
229
186
234
193
274
192
220
192
257
198
208
177
184
234
127
203
155
227
232
165
144
230
134
170
198
272
204
223
148
211
167
196
182
171
170
192
220
249
195
248
234
183
132
215
229
278
221
226
135
171
174
211
200
223
262
225
172
233
233
171
180
233
227
207
234
196
221
187
144
210
146
160
170
219
189
213
240
160
192
179
244
198
197
242
212
193
177
218
195
216
175
160
206
124
221
193
187
191
233
129
215
226
157
157
234
227
259
162
183
179
134
223
193
170
163
254
180
260
126
179
139
199
210
201
183
218
217
229
284
203
197
207
243
168
209
139
139
235
220
212
159
230
206
204
209
211
238
163
185
186
235
154
178
157
173
181
223
228
224
160
212
225
218
179
198
228
212
224
212
213
173
235
193
248
290
176
206
244
176
232
234
206
197
219
196
212
142
162
167
219
239
218
178
173
144
194
168
169
231
183
140
206
207
190
224
222
196
167
160
180
231
235
215
222
273
189
225
247
143
180
246
193
170
234
209
168
194
237
239
174
211
235
191
229
207
168
192
224
228
182
219
216
227
178
196
270
243
158
184
230
201
172
223
176
168
245
133
178
218
126
213
201
188
199
202
186
208
162
214
225
183
168
249
189
229
242
226
93
220
165
216
174
175
242
186
231
214
162
208
213
205
208
208
228
185
268
221
208
173
130
168
227
253
159
204
238
154
159
251
151
176
143
260
215
215
178
192
237
223
165
200
155
211
239
233
234
219
208
183
201
232
202
211
180
241
259
212
157
162
226
186
233
251
236
113
200
175
176
218
133
176
162
252
213
204
217
242
220
249
236
192
273
231
216
246
160
139
283
211
186
182
214
171
176
235
168
227
175
178
173
172
213
175
193
194
145
155
167
172
170
166
199
233
187
172
214
224
164
175
182
102
217
273
178
254
210
225
220
248
180
244
191
115
169
222
270
192
234
171
177
194
205
190
173
220
216
216
195
204
200
164
203
202
220
207
188
252
232
178
238
129
159
253
173
171
201
172
216
212
214
189
230
216
192
140
179
254
192
270
198
141
185
195
220
225
180
178
217
224
169
228
173
187
273
222
269
246
188
212
236
247
178
257
205
242
232
202
233
230
184
246
238
131
186
173
184
213
201
151
207
162
209
166
209
164
188
153
153
222
173
179
268
220
172
212
185
224
257
148
187
130
185
166
161
158
180
193
197
198
254
190
250
187
234
246
194
209
216
263
208
194
149
183
222
250
190
209
181
175
195
194
240
174
162
172
240
225
250
210
231
172
220
183
172
217
203
187
235
264
226
177
185
162
204
196
187
173
203
230
259
258
167
176
203
232
202
191
182
239
218
216
202
209
155
168
230
193
169
235
230
187
228
225
208
215
215
177
180
228
189
209
269
189
215
247
229
165
227
162
191
182
172
202
190
141
167
212
270
189
146
185
214
218
252
234
235
199
211
163
246
201
187
195
186
233
238
160
225
246
228
198
198
163
234
208
204
197
200
213
193
174
251
158
200
148
246
203
215
198
224
188
205
187
205
239
185
183
214
241
203
170
171
160
261
186
214
157
188
174
237
192
186
259
225
157
219
190
216
165
171
196
193
208
163
133
243
162
176
233
197
163
123
212
238
132
207
199
152
182
213
237
169
211
175
247
148
177
191
211
230
248
138
178
222
170
219
223
187
207
187
239
215
214
167
222
129
206
161
180
215
182
199
166
256
159
182
212
196
226
231
156
181
245
173
210
197
248
250
251
218
229
153
196
188
152
215
171
180
182
139
249
204
193
106
175
155
195
208
218
195
188
212
192
166
223
198
193
157
191
221
172
216
181
192
246
258
232
224
209
182
233
197
213
122
206
245
193
222
211
211
215
126
182
237
272
215
151
200
218
152
206
151
224
298
168
223
230
148
209
153
201
174
141
196
201
252
209
167
144
184
193
209
186
220
231
248
207
197
170
173
233
166
219
149
195
225
148
139
219
176
239
209
186
123
220
181
233
241
191
215
249
258
210
163
159
210
179
212
207
210
224
148
177
225
195
282
184
242
205
180
253
224
192
179
234
233
231
189
259
275
189
191
133
230
221
227
181
161
124
112
189
210
196
192
245
225
209
162
230
276
264
145
210
219
201
251
148
181
173
196
208
188
224
191
151
133
212
177
180
242
198
177
216
213
220
237
151
175
211
247
204
158
152
206
197
195
181
225
198
220
199
165
207
268
217
195
217
217
210
186
210
161
141
189
200
196
184
218
256
219
211
212
211
216
235
179
172
209
258
169
156
200
205
213
187
177
179
232
254
148
205
158
184
216
211
179
182
135
174
187
185
219
206
248
210
191
216
213
175
232
184
224
240
173
192
198
111
215
193
230
207
216
176
235
188
189
205
207
249
165
208
129
216
217
229
167
184
136
233
174
237
215
161
207
214
221
211
197
200
208
189
196
244
145
243
190
165
183
141
192
259
168
205
210
249
159
212
139
188
244
196
194
251
189
164
137
204
181
154
184
139
204
199
170
209
226
178
257
203
207
248
213
203
227
134
242
192
219
209
213
197
174
130
245
235
172
186
148
144
248
210
210
230
218
126
188
209
198
204
256
222
183
249
184
190
204
207
136
227
191
212
226
156
173
213
213
207
210
180
194
185
181
163
241
182
189
210
209
212
195
245
139
191
180
189
203
230
172
196
168
195
230
143
280
191
188
212
205
184
225
209
230
192
106
174
192
248
193
209
271
227
229
171
186
233
168
163
220
222
195
187
234
191
172
218
207
230
199
204
240
220
245
198
216
178
205
96
163
223
237
159
216
202
176
234
274
202
247
195
185
206
212
251
238
211
242
228
133
154
215
196
185
207
160
195
224
132
167
242
160
231
173
168
237
224
241
249
199
210
197
218
191
230
176
213
175
159
194
201
201
225
228
230
204
233
234
193
202
148
180
155
255
199
169
226
232
157
210
196
198
213
167
171
195
169
206
224
145
144
164
147
192
236
250
167
233
199
167
272
184
183
173
261
214
140
162
202
134
201
192
169
270
236
152
175
186
170
192
198
198
155
237
250
284
231
168
199
170
120
187
237
243
231
241
125
172
227
232
237
212
229
212
146
127
136
163
240
235
176
233
218
177
199
207
189
226
219
147
249
272
221
231
218
177
177
160
209
213
258
197
162
231
119
183
176
138
202
149
211
163
193
162
229
201
196
221
173
221
233
197
185
168
167
228
197
158
142
191
201
224
172
177
181
191
212
217
155
223
146
192
233
251
193
209
258
164
190
239
225
193
232
188
206
169
194
246
163
188
221
184
204
187
222
251
219
218
170
221
214
128
255
127
237
137
238
228
204
184
219
177
219
144
226
252
214
202
201
253
185
168
245
167
190
199
147
154
224
164
266
216
228
148
176
184
203
230
181
240
187
187
196
137
196
159
214
203
225
211
182
178
179
181
218
189
140
177
171
166
150
172
157
176
190
165
193
218
186
238
216
231
230
192
188
173
220
127
147
168
163
221
243
249
190
231
155
195
147
159
208
157
216
226
227
154
161
212
167
229
112
233
234
177
249
193
136
235
194
206
266
213
215
253
224
142
248
205
196
242
191
199
196
204
229
178
172
225
221
252
144
213
117
197
154
231
166
196
166
218
175
194
209
195
155
235
216
135
205
188
188
104
226
153
226
221
222
197
266
170
221
90
208
267
212
214
205
247
251
192
221
235
152
194
176
257
172
233
163
204
190
198
236
200
173
200
245
189
240
162
191
274
114
265
201
198
150
232
227
202
212
185
175
136
196
241
185
179
181
219
204
217
213
174
199
224
212
190
214
216
201
157
165
191
263
183
220
195
190
205
228
233
229
220
220
164
198
141
167
175
205
190
208
210
175
274
163
227
252
213
213
117
185
166
208
209
165
206
204
217
189
182
162
169
229
163
144
216
137
146
223
228
182
193
213
171
151
206
182
164
158
229
199
208
202
178
261
179
147
240
219
158
163
225
175
229
194
204
208
163
128
209
175
243
210
250
198
214
192
173
228
191
222
157
209
212
145
174
190
83
220
218
204
188
270
158
203
172
151
235
204
194
244
166
218
199
259
200
169
209
195
192
185
179
186
224
162
180
198
193
198
170
142
182
144
202
188
212
233
218
211
213
214
227
205
187
210
172
229
173
227
159
177
217
214
189
201
183
238
237
222
197
180
261
215
202
241
169
178
186
238
225
207
186
246
232
192
183
240
174
217
189
189
265
189
172
241
197
208
138
217
220
218
199
253
197
208
188
275
238
158
201
170
211
197
227
174
216
183
240
201
198
234
133
234
147
228
122
166
141
217
245
195
264
190
167
231
159
150
265
188
186
241
214
174
175
205
163
202
260
163
208
173
196
101
170
202
245
192
276
153
130
214
174
202
139
156
194
243
202
225
218
193
223
186
162
220
231
202
177
185
193
220
193
174
168
183
176
172
199
210
176
175
175
230
163
241
268
200
205
216
236
204
193
214
175
169
188
169
218
183
225
159
239
171
176
216
268
168
201
200
207
224
225
163
224
250
194
174
171
161
235
221
199
230
259
246
135
227
179
168
172
178
226
196
108
160
247
190
221
167
177
215
215
205
186
225
177
172
223
244
199
209
201
183
220
223
127
233
173
212
181
249
178
186
135
178
207
202
217
230
195
256
212
207
237
244
237
230
244
106
168
227
241
156
187
204
189
216
242
172
177
211
218
160
212
148
173
265
253
167
200
170
168
243
132
158
167
218
198
138
219
280
223
202
223
162
231
247
226
244
219
200
207
220
222
136
181
177
120
257
176
200
247
192
250
133
125
204
168
170
209
212
147
154
151
239
193
250
192
204
222
206
177
196
185
237
156
226
171
220
208
248
197
144
233
216
222
224
184
179
226
197
204
161
186
236
192
197
237
215
219
150
223
130
152
199
227
129
239
142
185
250
199
267
175
258
214
180
185
234
195
203
204
219
152
165
195
200
251
140
230
204
226
238
161
232
216
183
196
238
177
206
163
222
225
195
204
241
210
246
231
219
240
242
250
196
155
215
273
178
163
223
131
284
234
220
258
185
145
211
172
187
251
205
170
163
254
208
240
190
191
221
197
161
198
190
167
251
166
146
192
181
132
179
221
218
211
209
168
202
192
190
143
145
197
92
234
192
175
200
170
200
237
190
227
236
233
163
184
209
165
139
198
195
271
139
192
179
231
196
172
213
167
217
219
229
237
223
196
174
198
181
229
228
166
216
229
104
242
139
227
212
166
235
169
218
237
193
165
195
180
172
176
252
232
182
150
192
227
175
180
179
149
142
174
196
219
219
216
226
145
232
257
281
95
186
260
210
195
248
172
216
174
160
163
248
234
171
246
187
237
213
231
246
249
168
203
171
192
212
176
281
199
198
201
166
262
225
207
192
234
178
180
180
160
229
215
206
115
250
156
214
204
245
220
271
173
228
257
190
199
237
125
165
182
205
266
203
160
211
211
171
241
227
204
162
169
205
155
195
234
161
189
205
211
229
151
252
139
174
228
172
232
289
168
154
220
209
250
212
123
201
177
222
182
153
187
178
186
227
197
166
208
144
251
176
188
118
203
212
218
256
233
233
254
175
212
199
207
153
174
172
166
248
185
190
221
218
197
205
208
246
161
220
152
201
220
176
166
201
202
216
165
245
258
254
210
151
236
226
219
209
177
241
214
203
209
149
231
212
202
267
218
251
248
153
146
241
158
158
174
250
167
150
238
215
177
232
181
209
237
156
134
207
168
186
260
180
170
184
209
172
147
203
185
226
172
190
213
144
204
205
158
265
122
261
208
184
217
254
175
158
169
141
201
248
180
225
103
258
211
254
191
177
179
134
147
233
119
207
287
162
121
184
162
172
199
214
158
158
165
268
162
232
195
211
183
202
230
201
96
142
146
230
236
237
164
183
240
210
195
191
248
259
203
213
256
143
259
217
240
215
229
193
244
175
219
247
158
191
234
236
201
162
156
219
204
193
183
258
216
147
216
217
208
260
207
217
153
156
204
172
228
225
155
151
155
209
185
191
170
166
216
136
200
168
173
172
230
189
172
239
213
242
214
245
245
153
245
173
223
258
235
169
130
203
222
207
193
198
125
216
176
189
204
174
161
256
199
143
189
249
219
202
215
202
188
232
225
256
193
204
247
153
222
216
194
188
211
226
265
210
181
230
220
154
154
178
199
185
196
222
233
167
127
245
205
241
225
169
204
202
192
250
167
209
197
191
159
185
220
176
173
175
213
176
208
233
197
205
148
238
255
194
232
255
206
185
235
156
264
196
267
184
197
198
195
265
133
171
137
216
206
135
222
166
205
218
195
238
214
194
281
217
177
190
226
178
242
149
176
226
224
251
193
174
176
182
228
180
130
265
172
210
118
128
237
209
211
245
129
230
186
197
215
198
211
243
240
219
238
187
195
186
208
153
174
173
222
130
241
165
214
230
145
210
256
208
147
177
224
212
205
145
179
166
265
213
271
211
275
262
161
237
218
204
228
146
238
190
256
197
198
207
240
208
172
253
227
218
218
184
205
202
262
193
190
177
226
176
261
167
179
189
180
235
99
264
203
213
235
212
161
199
173
148
186
145
264
118
261
203
206
187
208
141
220
228
172
226
184
184
204
213
199
212
214
227
193
217
219
243
243
215
234
233
174
215
132
236
173
232
136
130
187
212
246
260
248
144
223
272
241
226
183
264
180
180
213
192
235
172
231
203
223
206
152
233
237
192
242
217
190
227
181
192
149
171
171
200
248
151
202
211
205
257
227
183
189
216
245
220
172
214
197
178
212
183
230
148
213
216
190
167
217
193
218
176
241
219
220
269
261
220
150
195
227
153
182
159
195
154
199
268
195
172
160
231
208
184
136
188
254
235
177
195
177
232
211
178
203
245
206
210
212
259
169
198
166
169
190
235
231
227
234
229
254
175
174
257
208
264
145
228
166
122
255
198
219
182
186
206
177
218
175
181
154
201
177
243
212
162
186
222
239
213
220
167
234
239
173
138
169
252
144
227
196
232
177
164
182
179
150
171
181
185
221
151
225
154
172
172
151
257
191
203
237
308
144
188
155
179
168
173
218
225
239
262
145
207
159
164
197
201
209
190
195
203
301
239
235
239
193
205
197
252
205
186
198
193
263
181
167
217
172
263
206
175
247
161
218
176
185
192
163
212
201
244
203
204
156
243
255
225
136
193
225
231
223
157
262
211
153
191
197
239
210
252
206
269
259
263
223
194
184
122
199
186
186
171
177
219
238
176
254
161
197
230
220
212
176
255
193
227
144
183
265
214
227
183
176
160
183
170
230
219
227
194
172
200
155
210
202
192
197
124
238
184
222
205
254
161
195
241
219
212
238
187
220
224
204
200
182
241
253
157
217
122
183
233
253
189
181
221
155
198
192
218
195
282
174
162
171
196
250
220
183
223
158
238
201
268
155
217
239
218
245
220
208
170
198
155
196
208
134
264
215
190
146
152
183
179
239
190
220
266
193
170
196
221
252
209
186
146
201
263
181
210
194
235
263
242
198
154
196
200
252
216
207
180
196
224
160
196
200
172
209
147
154
194
224
130
156
196
180
213
215
227
221
213
236
155
223
231
145
212
193
228
203
163
181
199
142
238
146
231
222
185
194
197
164
195
152
212
137
227
174
218
247
189
245
242
226
201
143
213
209
175
247
224
241
208
242
255
241
201
194
179
184
247
187
152
202
226
200
155
182
196
152
165
201
183
190
164
217
194
187
207
222
199
148
208
231
190
205
262
203
252
168
241
194
177
200
220
214
255
158
198
270
193
136
194
178
226
239
245
242
176
222
183
162
149
239
233
215
217
153
212
188
172
214
193
180
168
187
156
160
203
175
168
229
231
146
169
209
160
212
269
240
172
238
200
196
181
210
156
245
186
186
180
255
205
146
161
227
162
215
200
206
202
172
158
162
230
154
225
246
169
220
211
254
235
177
181
131
195
206
277
212
148
271
179
278
215
156
231
227
197
180
183
225
173
238
182
195
263
191
221
180
186
247
209
253
220
154
178
161
178
259
198
183
203
225
199
226
263
184
235
172
187
150
235
212
217
199
222
159
270
194
186
203
185
191
161
178
205
213
147
161
232
223
282
215
195
190
137
183
190
156
237
188
244
222
211
211
220
166
179
203
167
219
185
195
234
186
246
170
211
175
171
226
137
245
182
145
200
213
176
207
159
230
241
218
245
231
237
200
230
240
236
213
190
222
239
185
187
194
173
195
213
184
201
197
256
198
166
228
231
162
217
166
170
204
193
134
179
198
215
180
240
195
215
173
274
171
180
186
239
193
178
256
243
203
205
212
153
246
166
212
195
256
204
169
223
136
274
211
223
221
192
195
155
174
129
256
248
167
165
192
163
202
250
198
223
255
178
232
224
187
140
245
171
196
231
171
230
186
208
153
190
165
82
229
227
225
172
226
213
180
241
243
261
249
227
183
201
170
244
223
244
184
212
231
195
185
189
252
241
219
209
197
153
249
234
222
202
200
192
193
240
228
145
161
190
220
162
161
110
172
227
174
154
241
157
147
257
166
210
192
115
199
194
218
198
205
203
197
215
170
230
142
209
167
163
266
222
210
220
194
200
241
162
257
175
200
190
243
248
219
197
218
214
204
160
205
220
147
176
159
205
166
221
230
201
201
235
192
208
218
152
201
141
231
195
207
144
160
271
217
165
183
211
247
212
165
192
188
172
211
173
206
202
120
204
204
209
210
194
187
209
188
196
173
208
169
158
159
209
195
197
242
231
186
214
237
210
223
129
255
210
119
172
248
217
202
196
166
213
181
219
193
178
195
277
180
215
181
258
170
181
229
204
230
218
168
177
231
192
230
230
221
184
225
159
199
195
202
202
143
242
202
137
229
229
217
193
211
169
130
229
152
192
215
219
192
193
132
155
208
207
74
153
180
162
215
230
240
165
195
203
207
152
207
224
183
190
201
189
218
178
204
158
205
189
180
158
159
217
175
226
278
213
241
219
178
200
155
175
223
172
193
212
246
252
202
167
209
194
137
199
249
199
167
196
191
177
197
207
259
204
208
226
100
142
88
147
144
209
157
213
195
147
225
222
228
221
168
262
245
180
244
230
194
222
172
211
239
150
210
201
186
167
180
211
184
228
207
140
168
265
167
215
148
171
206
177
165
236
186
265
245
232
220
230
185
122
207
176
168
260
202
215
247
188
157
198
224
141
259
219
229
206
171
192
166
178
254
245
236
215
203
197
217
267
139
169
244
230
197
241
183
122
167
202
194
208
179
204
175
200
152
233
185
183
198
179
220
240
219
249
104
169
225
165
204
223
238
164
185
186
182
239
211
174
187
182
199
191
186
169
231
193
184
144
240
199
181
124
185
191
170
226
177
159
176
209
139
233
198
187
267
212
201
163
224
165
271
134
180
234
212
177
214
259
142
229
218
198
279
246
199
178
237
239
232
250
195
191
145
175
233
186
239
205
253
208
221
146
221
251
171
202
156
201
170
143
225
198
239
198
177
161
158
194
213
219
182
229
185
209
227
195
201
220
164
201
204
161
142
161
162
193
189
160
200
181
231
263
241
210
149
189
199
244
133
185
235
182
217
170
204
240
132
190
169
137
212
242
225
212
179
215
191
216
237
186
187
234
207
236
205
196
231
257
177
222
165
238
209
273
150
185
148
170
237
197
231
212
195
242
238
128
195
241
236
232
212
224
166
223
140
199
277
145
236
279
215
186
250
202
177
211
226
215
225
141
170
156
216
284
202
194
137
224
228
196
275
241
194
216
191
209
251
245
250
198
162
229
198
270
205
247
239
223
198
207
215
244
255
121
199
214
257
213
178
275
239
210
206
164
247
205
240
220
164
202
179
158
197
233
225
158
163
203
245
218
266
224
122
184
202
233
211
277
145
199
224
197
182
189
214
157
155
202
127
222
202
199
150
212
230
216
221
211
250
231
211
118
221
161
222
150
183
211
258
162
185
222
241
212
194
197
174
191
211
177
209
194
153
191
168
217
176
199
145
172
188
222
212
168
229
208
226
140
204
129
166
140
222
219
172
260
193
187
195
145
229
146
224
185
189
247
206
247
231
188
182
246
222
180
195
197
230
234
168
228
232
191
181
210
182
199
245
151
184
198
207
185
233
252
206
180
140
250
209
206
200
164
218
213
225
156
212
222
163
205
216
209
229
168
178
187
197
175
260
231
177
204
233
231
201
229
183
200
276
186
201
167
228
274
225
213
183
220
150
202
199
207
176
234
200
202
181
245
197
177
155
146
205
223
228
213
253
192
233
251
188
244
208
206
218
182
227
197
216
166
216
169
198
229
210
250
209
177
160
210
213
169
171
209
179
251
222
231
193
175
266
190
211
268
172
273
194
185
175
230
223
191
209
253
215
209
176
167
147
166
206
172
248
186
203
203
210
205
189
199
189
258
219
194
244
136
126
274
192
198
194
162
203
153
176
245
180
176
162
246
219
226
208
158
192
204
218
93
231
266
169
233
160
221
217
167
216
164
218
204
162
232
166
152
244
233
219
162
221
253
227
159
200
158
209
140
199
205
196
175
154
177
197
265
238
219
234
133
214
205
229
204
172
190
224
117
242
211
145
191
216
237
210
150
160
180
229
253
191
241
200
224
204
203
121
169
168
222
111
249
169
227
169
227
210
224
179
255
258
197
167
219
199
137
206
173
179
248
188
182
235
175
211
232
184
210
159
199
254
271
195
171
178
194
136
186
184
205
222
193
154
162
192
173
143
196
221
149
178
145
224
185
240
193
205
190
222
154
182
146
199
226
207
235
216
234
260
208
139
217
213
209
257
175
212
186
172
243
189
203
173
233
187
291
230
155
183
187
158
160
186
221
197
187
177
190
228
191
242
236
252
243
167
152
231
171
203
155
184
136
210
212
258
230
210
199
158
150
224
187
181
189
258
231
193
247
265
153
204
176
196
140
258
220
206
175
212
215
193
205
193
219
186
218
206
261
150
217
172
202
218
218
186
161
116
216
258
216
246
209
247
196
244
213
231
128
221
251
173
207
182
189
235
252
257
160
146
194
124
195
224
128
175
272
209
147
270
211
194
238
185
208
230
188
194
173
215
180
245
215
203
238
277
233
175
169
155
159
233
188
170
232
156
220
242
195
209
175
175
170
242
202
182
130
173
204
201
171
181
212
218
221
155
206
268
139
234
155
269
231
133
260
266
195
159
213
260
252
223
204
244
166
225
229
198
144
217
248
250
166
233
166
245
214
258
228
204
211
232
157
201
200
212
245
233
213
262
241
181
207
259
162
231
179
171
205
269
240
171
247
269
243
234
200
180
194
161
192
173
213
185
204
197
202
219
198
182
237
193
133
226
197
179
189
221
207
169
209
207
211
153
251
204
265
208
134
201
174
194
246
213
156
215
184
227
241
221
209
228
180
166
219
172
147
222
224
214
126
169
151
195
217
258
180
165
194
173
148
156
169
144
172
224
131
183
199
193
223
218
208
127
190
212
141
201
257
253
187
182
167
185
203
204
179
189
236
164
206
207
133
170
193
193
142
259
213
129
274
119
182
166
257
203
184
191
169
148
230
191
174
196
182
214
264
185
191
221
190
207
144
243
219
185
275
252
177
228
234
229
242
193
209
178
259
203
251
212
252
247
206
238
215
155
240
222
200
236
194
196
170
161
162
264
207
209
236
219
265
193
208
177
230
148
167
170
240
184
204
217
178
158
205
175
226
186
175
266
161
242
186
184
164
210
224
156
150
218
237
157
187
167
219
202
218
197
247
202
208
186
233
171
229
211
176
231
104
215
214
244
195
190
143
155
169
193
195
186
171
124
226
211
188
212
194
205
161
209
195
202
210
166
189
252
202
139
223
237
227
131
171
193
170
222
203
200
218
215
228
175
227
157
151
236
220
223
91
218
81
233
188
151
217
189
184
182
174
272
161
154
200
129
177
143
186
133
231
179
239
259
200
190
183
156
239
264
239
227
205
209
221
164
217
238
237
157
251
168
266
139
218
179
192
250
246
219
203
232
138
227
194
205
237
193
211
178
174
235
181
223
188
229
208
247
228
188
159
233
176
227
280
204
255
184
175
187
209
189
206
180
178
252
168
219
180
242
223
208
208
256
191
221
196
255
287
234
179
177
202
234
211
200
201
218
216
244
209
185
190
190
216
230
220
232
224
230
197
235
180
274
175
179
169
280
250
157
184
222
174
262
139
197
158
159
200
211
188
197
253
162
191
145
220
241
237
244
231
217
209
170
267
214
229
187
184
210
181
235
246
178
218
211
182
217
210
218
164
210
272
149
231
213
175
250
230
269
201
244
152
194
187
252
216
234
228
205
223
152
216
175
231
188
151
190
220
216
188
214
193
131
197
217
187
189
193
152
159
137
212
177
190
200
230
184
180
166
208
217
193
191
225
187
184
184
209
203
198
215
194
170
251
185
189
241
216
223
180
257
200
216
208
227
176
146
170
197
232
227
211
202
178
243
226
239
246
158
230
225
211
260
204
200
206
202
233
174
160
200
173
235
249
279
142
147
111
204
163
249
194
172
243
214
203
202
192
177
258
248
158
259
163
252
208
219
171
171
166
142
245
254
213
211
218
236
210
231
221
237
256
195
182
225
155
202
168
213
168
206
131
244
276
234
198
243
277
145
171
211
152
200
212
219
216
156
121
244
240
210
220
213
230
219
222
241
218
230
155
121
161
189
217
263
226
241
217
269
247
193
251
209
197
199
233
160
191
163
234
211
171
249
217
139
250
201
201
196
208
232
129
217
199
235
201
210
254
237
210
163
192
155
197
234
140
199
168
207
137
171
136
238
184
249
252
174
160
225
202
179
203
158
225
273
204
197
244
204
246
221
197
221
224
224
223
161
189
154
195
207
198
219
166
170
207
188
112
181
190
196
155
256
231
194
178
220
142
174
219
208
222
151
183
208
108
241
187
185
209
225
155
222
205
223
199
148
215
214
197
270
162
192
200
238
132
114
258
272
162
237
201
294
228
193
192
225
190
184
263
221
196
203
158
184
205
180
250
219
156
209
245
214
197
195
188
260
269
213
175
123
177
217
203
196
217
195
207
196
228
228
203
224
166
221
189
216
181
202
210
198
227
221
200
198
171
237
198
201
226
211
224
151
188
163
213
163
173
195
247
242
234
182
211
192
213
224
166
188
195
214
238
158
169
217
192
187
245
198
200
169
141
146
141
206
241
264
170
169
178
189
192
246
234
248
216
240
235
206
221
168
167
187
184
155
253
250
189
203
176
148
185
175
104
203
219
204
195
221
203
151
243
210
148
212
159
138
217
197
179
195
179
202
139
175
227
185
162
209
163
199
195
248
147
185
178
248
171
273
234
205
226
249
232
202
197
193
166
234
176
275
140
188
269
217
190
247
198
224
249
176
157
175
158
159
214
203
141
202
134
237
190
213
187
227
171
167
250
210
203
192
191
223
236
252
228
225
219
162
212
141
221
179
235
208
186
166
181
269
191
197
198
147
235
184
164
235
192
235
133
237
201
248
185
255
145
165
212
193
173
170
209
166
201
236
162
197
230
226
194
134
144
205
211
196
182
226
198
271
169
221
206
233
124
158
169
204
169
190
226
215
196
168
200
237
212
161
163
200
220
159
239
257
165
220
172
153
135
259
213
186
228
203
267
178
206
252
231
236
250
249
195
196
251
195
175
229
196
227
224
215
152
211
193
206
179
191
153
150
146
201
223
192
210
187
219
135
204
170
239
214
196
182
210
168
194
249
230
189
201
210
216
194
185
195
118
202
173
165
235
218
219
146
198
175
208
239
164
231
155
228
165
234
229
232
193
246
224
215
182
230
184
192
187
216
250
218
210
162
220
269
193
162
182
225
182
195
197
150
152
158
200
188
261
199
235
189
222
228
237
192
269
224
209
153
205
242
244
194
198
183
219
208
171
195
178
186
280
212
186
199
255
134
187
174
255
238
197
166
186
219
236
240
207
209
189
214
168
213
231
189
195
215
264
251
179
198
161
191
218
186
221
177
145
219
228
151
230
222
211
236
195
165
139
233
252
175
266
207
187
150
161
220
148
227
216
228
171
176
213
192
233
159
198
185
254
256
214
236
153
160
238
241
253
141
196
191
211
272
166
243
197
113
212
239
218
219
205
225
176
215
158
199
188
178
191
206
247
179
221
255
195
162
185
210
204
184
223
234
175
245
203
210
228
220
205
191
143
192
157
218
209
162
171
181
184
242
188
199
187
220
219
160
198
256
218
174
246
230
143
222
188
168
217
119
202
165
258
160
231
247
221
184
163
153
271
200
236
202
168
220
171
163
246
204
202
267
199
191
202
247
153
170
201
254
232
207
234
196
235
160
205
166
200
199
185
229
200
224
170
165
205
207
137
232
240
165
159
237
192
203
173
189
223
184
192
238
217
163
194
160
210
208
189
119
240
186
191
193
219
146
214
157
232
136
240
180
194
274
232
203
215
227
188
211
137
183
239
193
208
161
186
178
226
157
195
232
213
241
220
214
201
220
186
203
218
152
149
207
193
203
148
210
230
212
195
165
223
230
181
165
198
275
166
242
179
243
183
237
225
219
179
194
196
195
180
195
168
219
212
248
222
159
198
230
274
201
270
186
246
153
225
123
190
210
223
171
187
213
235
209
210
164
184
219
187
212
212
176
236
242
168
216
183
172
174
193
129
204
177
255
204
205
186
197
205
186
197
147
263
178
164
224
167
163
180
252
183
165
262
194
207
162
169
189
211
230
189
211
241
189
253
211
209
216
205
196
171
187
218
206
255
222
197
168
244
209
210
182
179
128
186
207
197
244
198
235
161
232
248
201
188
166
164
229
221
206
203
222
265
239
179
155
287
148
230
195
203
161
190
165
211
176
238
210
273
198
134
167
154
205
185
149
167
203
236
136
204
197
198
233
161
175
226
181
202
269
196
279
194
199
174
157
171
189
190
173
188
223
162
222
181
179
175
183
281
224
190
208
185
160
201
184
200
180
162
155
208
223
170
139
247
174
231
213
185
214
220
172
180
212
196
163
197
184
164
181
178
222
231
215
241
219
202
218
245
229
220
188
165
117
219
258
194
222
197
139
210
176
247
171
221
162
211
206
246
206
154
242
188
215
171
195
207
182
190
232
196
215
189
180
152
154
186
210
160
209
211
211
179
151
210
196
183
203
193
171
189
162
240
176
241
260
140
249
248
154
203
221
204
193
233
211
234
182
206
216
224
194
232
219
181
285
176
170
209
181
186
205
177
222
192
190
177
185
165
207
182
194
226
143
182
216
188
174
223
227
211
245
175
145
209
233
170
221
190
242
201
258
172
182
208
159
178
198
153
208
163
159
231
143
185
198
222
152
210
190
208
160
210
158
146
205
187
206
229
207
170
178
210
110
176
215
192
195
208
221
131
179
222
206
145
157
218
235
207
262
190
135
185
220
191
222
152
186
180
140
205
204
251
229
176
182
204
203
208
271
171
155
203
237
129
217
233
219
199
191
212
193
208
201
170
229
183
251
155
128
211
274
197
183
263
248
186
222
186
177
200
213
172
265
141
157
177
250
222
209
227
188
195
143
156
175
173
179
228
218
192
205
222
193
227
232
199
241
229
140
214
297
147
171
157
176
220
138
180
226
218
208
247
246
177
191
136
175
195
214
208
216
256
218
180
168
245
162
143
186
155
189
225
176
166
171
239
200
220
138
183
235
203
269
136
184
254
214
199
210
222
149
251
211
215
197
186
192
231
249
204
224
142
236
257
173
183
189
201
239
212
179
186
203
161
195
253
182
194
204
204
207
175
246
211
238
159
216
218
153
106
173
192
163
194
206
255
243
210
186
190
201
161
206
164
185
184
211
233
212
233
194
207
157
170
179
250
241
198
138
221
126
213
198
166
197
160
230
194
241
217
183
234
195
185
184
141
210
243
190
219
215
247
241
222
193
179
191
201
129
179
203
185
178
234
249
214
242
217
199
206
205
165
177
140
188
186
248
299
255
209
197
176
198
242
221
153
219
201
202
226
271
229
224
209
147
224
159
169
180
241
178
199
224
195
190
164
193
181
163
204
170
166
210
213
169
156
230
200
193
137
161
217
224
222
226
203
177
233
261
240
167
183
176
225
224
189
206
192
216
208
195
132
166
161
225
142
191
174
193
130
243
198
236
160
158
197
248
243
190
198
231
237
251
179
196
240
198
183
239
195
287
175
176
162
123
192
194
256
241
171
179
140
253
238
219
235
188
228
204
208
186
159
157
233
259
218
152
213
209
178
207
171
246
189
264
267
210
194
154
183
220
159
197
230
191
168
196
189
198
132
190
178
183
251
216
210
185
263
167
207
191
172
190
174
203
181
218
188
219
281
133
205
211
205
176
188
242
199
170
209
174
198
214
237
207
225
203
229
190
190
186
242
137
244
203
171
251
260
236
232
171
204
161
164
162
226
172
208
236
156
190
220
187
155
245
215
164
166
248
175
234
222
150
212
240
168
209
181
193
235
151
194
185
228
211
225
192
198
118
190
240
167
169
229
288
211
246
171
149
202
227
221
237
178
217
127
128
229
169
233
218
161
180
190
252
149
243
218
205
231
229
148
199
201
181
196
250
192
183
178
214
170
195
205
176
219
203
166
163
231
154
225
157
133
216
263
153
182
189
222
218
155
179
220
209
197
203
184
243
192
242
189
236
195
148
196
171
209
226
169
152
251
228
185
196
218
201
216
201
178
207
172
216
205
187
218
192
195
221
191
120
207
187
205
181
196
151
196
215
173
231
177
208
188
153
156
204
136
182
244
133
246
220
185
224
150
182
191
207
215
212
264
186
180
189
176
244
142
211
244
174
199
200
169
183
172
171
194
173
215
171
186
191
223
238
146
173
232
254
219
189
213
246
260
168
215
193
210
148
203
176
159
188
131
189
230
212
184
211
211
131
159
256
226
202
130
174
266
181
173
248
178
186
184
200
169
216
168
215
191
209
217
217
240
237
198
138
233
187
211
192
200
180
196
154
177
254
221
182
229
234
148
221
187
216
201
202
241
172
174
144
171
250
168
233
263
196
225
144
217
191
139
212
228
217
226
205
226
134
245
198
215
219
155
186
169
190
132
216
191
167
144
221
200
212
183
211
170
251
230
212
202
190
234
196
239
198
207
188
186
209
227
225
158
196
189
203
184
129
208
210
215
205
188
233
157
196
170
197
193
243
210
226
208
143
245
208
220
221
192
231
188
228
207
237
271
204
154
196
148
244
231
185
182
217
264
150
204
206
203
202
214
216
170
183
175
230
162
230
227
231
195
158
190
178
168
206
144
169
228
180
239
183
208
223
203
210
178
183
209
175
231
166
215
223
207
190
198
174
178
203
175
207
261
194
226
302
186
150
189
224
201
197
187
213
196
205
225
173
217
237
186
194
184
189
216
221
186
232
150
179
226
203
176
221
210
210
183
239
216
189
170
169
228
249
200
199
227
189
227
199
154
172
200
223
206
193
203
247
233
176
235
175
121
185
166
175
184
176
183
226
200
227
228
224
237
261
245
164
236
249
131
174
196
239
256
222
238
224
248
248
241
164
177
203
183
196
214
204
168
179
259
222
242
173
232
235
170
228
246
259
260
211
175
185
180
207
215
194
237
193
191
218
267
214
180
182
234
223
226
226
167
106
239
122
238
218
244
282
204
220
200
178
181
192
216
200
166
206
185
268
240
223
213
299
143
248
206
206
213
173
258
202
119
219
161
225
207
216
199
249
222
142
228
175
239
142
249
205
199
195
185
174
183
180
204
195
142
196
213
223
224
191
206
198
235
160
233
179
221
274
192
179
194
232
153
222
244
187
228
138
194
195
199
194
198
159
226
207
204
209
206
161
139
200
218
244
227
166
260
203
189
209
230
147
211
260
236
180
250
188
203
186
211
173
195
257
183
213
228
188
196
192
245
232
203
225
226
165
209
166
225
170
206
182
216
186
177
200
159
131
193
222
225
159
217
173
171
174
177
153
188
207
215
191
170
187
201
208
192
314
185
140
194
196
186
196
186
191
218
146
182
227
216
221
186
225
161
179
170
193
167
206
245
173
195
179
218
150
231
183
210
145
151
223
229
178
154
193
248
213
179
144
175
117
202
142
166
160
155
234
180
228
187
260
170
155
176
210
230
257
267
215
174
223
272
210
222
166
212
236
183
180
176
189
132
197
162
181
145
152
175
195
175
205
202
173
223
196
275
188
222
167
187
205
200
192
171
225
162
164
231
274
132
209
293
260
204
255
230
224
216
239
257
146
193
178
212
215
103
161
210
204
211
218
170
220
214
226
212
190
192
249
156
185
173
195
240
232
180
244
224
150
226
194
168
239
178
154
192
223
223
202
211
124
227
232
230
252
240
213
262
216
197
231
186
178
197
185
207
212
147
171
144
204
175
201
162
195
151
167
184
216
226
154
260
198
190
175
198
214
190
154
219
241
209
229
212
136
238
201
236
193
231
140
135
152
221
203
192
181
216
178
145
201
202
268
165
183
141
151
168
188
207
238
223
198
187
202
232
154
112
144
243
215
221
160
255
240
243
209
204
159
174
232
213
183
211
130
188
261
167
213
206
152
246
252
252
241
159
196
211
197
205
216
194
220
198
229
211
222
201
258
161
176
164
186
309
199
222
193
163
241
251
217
216
188
220
215
231
205
238
238
249
230
169
157
244
247
156
175
209
206
221
257
230
180
204
229
184
209
199
206
150
237
220
236
196
237
199
165
217
219
169
207
185
187
231
214
201
180
260
185
157
170
158
242
244
190
208
168
185
181
159
172
226
208
242
238
218
175
198
234
218
177
204
178
206
164
233
281
139
144
184
160
216
195
210
184
228
193
198
215
182
207
180
176
207
215
175
189
175
252
140
220
189
218
200
227
212
239
167
213
159
226
212
225
228
177
225
171
207
209
179
200
141
249
213
216
171
226
207
168
193
247
149
194
178
164
171
158
221
255
139
155
179
218
224
239
214
204
195
251
194
224
177
251
128
190
191
194
167
196
176
202
264
202
235
219
246
211
211
223
238
257
197
207
253
201
158
213
220
162
169
174
213
185
236
140
267
218
232
186
226
141
173
244
171
189
167
137
164
159
149
179
202
199
212
212
214
191
138
148
266
226
169
207
167
236
157
195
234
165
213
201
189
169
163
148
187
250
182
157
246
253
221
186
168
210
218
197
200
192
180
196
231
263
206
216
211
223
179
211
169
232
224
208
214
180
186
217
138
224
228
204
227
253
221
223
197
207
170
220
171
224
256
172
250
212
138
187
240
195
251
188
158
198
220
250
229
227
173
240
271
153
108
147
226
214
184
240
202
241
171
217
209
178
201
211
168
203
259
206
170
201
223
172
216
253
207
206
238
156
236
319
184
215
208
199
183
221
229
272
166
228
144
219
236
137
176
220
152
145
219
192
189
161
213
222
146
204
211
197
195
233
222
184
202
235
103
159
169
141
217
188
257
226
166
189
189
216
163
217
219
161
230
166
218
208
230
194
277
113
176
256
195
244
184
237
205
292
170
199
162
177
164
175
190
193
132
200
237
191
214
204
204
220
225
139
207
230
300
225
220
164
201
176
143
203
225
178
218
209
215
179
229
216
183
211
237
201
184
219
175
176
205
256
190
226
232
229
165
183
223
246
191
168
189
240
185
216
198
216
260
151
194
176
177
175
269
200
214
150
128
163
127
257
168
220
192
250
193
220
225
206
116
227
221
233
197
237
233
205
189
220
181
214
193
231
267
257
207
124
174
199
245
250
184
173
218
204
196
257
241
157
252
204
187
133
210
152
239
144
228
220
141
150
226
214
198
215
179
271
223
234
205
202
116
150
214
153
177
224
212
210
187
205
208
220
235
191
220
220
249
256
185
243
195
198
212
179
207
262
178
252
203
197
235
230
266
226
167
160
180
186
215
201
221
192
145
248
205
208
207
119
226
175
205
209
236
271
196
202
227
203
133
174
245
208
213
185
201
174
233
184
185
213
210
229
130
177
210
127
189
159
155
173
244
208
220
253
199
226
147
154
166
188
186
169
222
209
230
218
184
194
158
155
196
186
255
209
134
134
178
229
175
219
233
205
215
173
218
124
216
168
233
133
240
172
214
257
178
220
224
147
210
245
228
178
205
236
187
196
230
209
234
229
197
224
197
202
165
216
198
192
170
198
228
157
236
237
216
223
166
152
134
196
102
179
184
264
199
275
231
237
237
196
179
191
164
197
228
176
146
235
217
173
193
144
235
210
212
174
199
170
207
197
197
223
227
202
153
223
253
200
108
171
182
185
213
191
195
152
202
221
231
247
183
198
199
236
175
222
176
249
254
207
202
162
182
172
191
172
119
206
238
132
196
167
239
202
175
194
239
273
220
220
202
200
231
218
201
177
216
224
198
245
162
200
219
256
180
196
198
164
236
244
207
181
208
143
187
216
190
188
177
217
242
279
183
244
155
194
256
183
223
151
186
183
227
223
227
191
246
260
230
211
210
193
166
191
225
149
234
178
204
200
208
205
182
190
258
177
239
174
173
184
214
188
168
215
221
195
202
183
161
189
158
239
263
185
230
77
239
243
204
247
217
269
189
208
189
156
257
184
230
197
215
177
195
197
208
198
257
228
145
236
238
189
207
241
177
157
190
222
225
202
185
225
190
204
219
169
178
198
233
150
158
216
165
165
227
249
239
160
224
249
184
166
132
236
178
211
243
197
144
175
245
211
177
230
198
235
206
228
207
234
207
188
187
181
228
243
167
228
179
141
170
189
192
204
99
127
161
133
194
179
127
227
199
175
234
170
226
191
243
216
201
189
218
233
174
153
229
213
216
219
187
209
236
163
176
187
176
172
193
231
165
127
247
230
205
253
203
217
213
231
162
217
233
190
166
212
228
123
158
267
128
195
198
253
191
186
201
203
243
199
191
178
215
191
247
248
213
236
276
234
164
146
206
244
171
194
244
159
138
157
238
224
233
154
226
218
206
197
220
131
199
117
214
196
221
188
233
177
205
150
240
158
159
170
185
187
154
153
158
139
185
278
218
140
211
172
178
206
203
196
241
165
148
218
134
159
186
182
204
171
173
189
189
220
242
180
202
147
232
237
233
211
233
186
120
189
124
200
165
140
217
177
222
170
218
213
231
182
215
138
174
253
225
178
257
195
206
247
222
232
188
217
226
204
189
194
173
151
176
207
269
224
174
202
145
168
222
212
173
178
193
183
246
138
188
215
193
158
184
190
200
213
296
213
167
151
209
160
193
275
212
177
218
180
213
213
153
213
199
203
222
180
186
239
240
215
219
161
255
135
209
137
204
194
219
227
237
204
162
207
209
230
242
255
180
205
200
195
190
199
205
235
151
177
232
198
211
237
225
171
191
246
198
180
203
212
222
152
163
162
241
210
179
144
224
183
185
215
200
150
204
196
244
173
163
257
161
218
277
208
236
225
193
174
201
190
155
212
206
256
144
240
193
137
197
192
221
158
210
143
184
171
170
146
180
113
189
174
206
203
206
180
161
189
170
248
184
103
220
187
182
219
177
232
154
225
225
168
217
186
217
169
189
250
110
172
212
184
161
142
169
189
165
225
223
179
146
257
232
202
196
225
164
164
159
255
186
187
194
226
186
200
187
165
237
218
246
231
243
218
180
245
154
223
256
221
188
145
172
225
194
227
172
159
210
258
224
229
249
249
226
214
224
191
172
191
235
253
165
176
211
224
207
168
207
254
256
158
175
187
251
230
242
136
208
189
199
233
199
243
206
283
246
218
235
272
216
172
156
205
136
152
177
140
185
261
230
135
290
169
173
221
204
224
180
224
185
187
121
235
194
238
201
168
221
218
206
187
246
212
217
191
130
222
209
216
243
151
285
247
210
237
216
215
200
149
150
175
126
218
254
173
209
227
151
202
165
197
195
143
199
202
188
192
173
220
197
213
213
285
191
236
190
262
148
152
207
175
202
251
113
211
214
188
231
214
158
196
228
237
202
166
189
122
113
198
208
237
197
209
193
197
216
158
163
237
213
183
165
190
222
242
196
204
215
192
141
222
222
169
211
171
153
186
145
200
215
164
227
201
217
208
191
201
216
241
244
154
184
145
119
245
209
142
165
261
141
163
225
261
190
195
260
177
176
209
167
210
164
158
156
243
166
192
126
229
173
196
212
194
232
251
183
214
183
205
218
176
206
228
215
180
220
256
217
168
223
211
182
205
204
109
272
201
236
232
181
178
222
202
193
225
147
221
188
133
158
232
179
193
213
212
259
237
181
196
173
210
214
197
155
188
196
198
204
218
155
143
214
179
161
226
248
192
231
248
172
254
190
213
146
214
186
216
178
209
178
194
218
226
195
245
178
170
174
201
220
222
150
197
161
170
180
163
194
247
213
191
177
219
232
225
181
187
229
108
251
238
238
177
173
178
151
232
214
225
212
108
192
197
164
196
212
200
242
190
174
205
173
130
136
182
209
247
218
237
138
240
218
150
206
163
250
187
218
224
198
160
166
227
163
203
238
117
180
207
254
218
178
149
222
221
163
289
261
237
233
140
224
140
204
153
142
152
195
240
209
168
197
238
188
215
162
203
192
229
210
205
267
248
217
212
162
199
190
223
212
222
193
129
118
195
203
243
233
181
229
221
196
160
151
227
164
160
217
251
205
153
204
146
155
205
202
197
149
175
178
233
230
192
194
195
218
171
181
209
226
175
231
172
178
196
171
227
164
212
217
217
243
226
212
170
202
203
212
217
173
208
188
179
183
203
179
193
237
195
241
147
212
164
263
191
191
237
309
198
175
159
190
221
222
200
201
221
227
189
230
219
190
164
222
179
265
153
236
216
170
250
201
209
206
169
150
253
154
213
226
160
167
220
169
244
197
246
170
217
218
205
233
219
219
169
173
132
130
214
188
230
206
213
161
182
189
172
150
203
190
204
193
251
199
235
165
104
257
198
203
203
217
149
202
221
213
224
198
237
122
242
265
202
176
195
246
170
251
176
226
177
110
179
201
212
174
194
241
166
200
213
156
199
196
245
165
170
241
186
141
159
252
205
257
216
192
211
198
240
204
215
227
196
227
227
253
115
164
193
231
218
167
239
210
243
174
226
240
98
177
204
179
185
179
237
234
156
200
202
232
242
164
217
223
282
210
246
200
223
164
168
185
197
200
224
162
225
181
221
201
212
178
144
152
220
201
177
151
207
202
242
199
247
193
213
229
209
190
227
175
217
215
199
161
150
176
212
210
172
197
181
158
161
219
180
192
190
211
205
138
185
210
190
219
232
124
176
233
210
234
223
196
214
228
207
218
193
189
172
153
190
205
209
271
243
194
192
248
169
162
254
128
248
228
188
194
191
240
227
230
211
295
249
192
126
241
183
244
216
248
239
204
222
171
165
191
218
188
196
226
207
105
216
144
238
174
197
209
187
224
217
249
178
138
253
134
196
185
197
207
262
164
237
233
216
236
177
161
193
260
203
169
148
93
198
205
224
231
253
212
188
253
191
262
230
222
253
135
218
189
224
170
202
215
244
196
153
204
199
233
219
197
195
221
182
200
192
229
177
199
215
225
208
135
227
224
215
208
206
175
167
200
182
231
176
216
147
219
178
220
175
216
188
195
164
188
164
230
220
167
138
188
159
192
208
192
200
182
197
164
273
137
197
209
146
214
208
188
232
180
151
199
186
196
236
169
207
178
199
249
176
239
167
155
196
246
191
286
258
227
168
152
216
147
216
233
152
237
176
207
225
255
184
213
247
242
222
234
213
211
224
189
200
225
181
170
149
136
170
218
218
183
254
228
179
159
175
202
213
214
203
229
171
219
122
214
216
149
171
219
216
187
146
234
182
197
211
159
239
210
176
221
184
238
186
181
217
203
159
196
167
179
165
214
242
239
202
187
222
210
197
158
223
173
224
193
198
221
194
194
188
208
239
190
233
216
219
162
181
127
208
173
197
124
179
220
177
209
212
172
169
232
152
163
210
191
235
200
217
222
123
169
273
119
227
197
241
220
175
198
170
255
178
264
195
207
216
214
183
178
203
186
162
155
197
183
214
224
286
185
195
249
172
163
276
213
159
194
203
189
225
222
200
189
253
170
193
195
196
213
247
233
192
187
199
157
189
194
233
158
257
172
215
179
201
210
169
217
148
151
233
181
148
188
218
209
216
128
169
225
212
190
189
223
200
230
173
153
193
183
217
235
197
191
214
164
239
156
254
196
255
203
226
229
220
226
139
123
156
177
161
251
163
294
231
225
149
270
223
166
224
139
195
217
231
235
196
140
225
236
224
186
186
198
186
159
201
161
211
223
175
271
226
230
235
293
180
170
246
216
206
189
205
196
224
193
214
253
180
212
236
237
221
135
190
171
262
207
159
155
174
231
199
181
213
244
153
229
182
181
193
204
148
150
205
214
242
157
209
195
213
131
248
232
138
233
186
171
207
175
223
163
238
215
267
195
215
193
149
172
297
196
233
199
207
191
166
203
193
200
204
222
220
275
204
163
166
204
216
254
184
261
194
145
171
218
183
202
229
178
243
237
100
166
229
206
161
176
214
266
226
198
218
198
166
192
225
201
176
194
252
256
223
188
217
245
196
197
219
215
257
216
233
267
183
241
240
179
176
183
213
204
209
255
229
183
238
233
223
163
132
176
124
169
192
201
144
211
233
216
196
234
248
170
166
191
241
229
194
203
132
229
199
175
240
189
206
215
131
174
242
225
187
209
219
213
206
208
194
197
124
136
229
209
215
181
239
192
199
208
191
220
193
202
241
206
239
216
220
158
174
224
176
160
220
166
185
167
196
190
197
183
212
213
205
203
190
173
148
228
208
226
189
229
171
175
163
221
171
210
209
234
225
176
206
218
265
227
250
199
123
233
246
213
197
207
167
223
191
163
240
225
169
155
253
199
221
180
239
241
151
149
220
237
161
232
212
157
119
187
227
218
231
172
205
164
227
168
173
195
224
184
255
191
225
154
225
173
230
211
213
188
171
249
220
226
266
142
170
215
224
262
151
190
226
258
244
220
264
162
221
142
242
206
193
202
217
213
189
184
215
214
214
142
210
184
177
203
227
173
185
177
211
146
163
179
261
192
163
208
188
201
217
183
165
188
237
192
174
181
133
260
249
177
252
174
231
184
201
159
213
192
225
142
214
136
170
232
191
177
249
217
227
268
238
171
235
199
165
204
177
233
202
218
204
172
254
256
189
174
175
253
216
164
227
118
194
195
255
236
211
220
186
217
167
191
242
210
217
129
169
168
180
204
175
166
194
159
231
134
209
239
209
170
190
222
208
213
196
189
220
162
217
211
171
179
186
206
260
138
230
270
169
150
158
195
202
215
183
214
253
223
166
219
201
198
209
272
143
163
185
162
185
167
160
204
244
192
189
187
231
149
218
181
215
206
220
218
221
194
196
213
225
266
208
175
185
157
183
172
216
220
243
197
173
210
238
197
185
198
149
221
274
196
205
250
253
189
160
211
236
203
226
274
185
192
234
228
272
212
238
252
181
238
189
182
225
178
249
213
223
247
212
139
170
238
200
235
157
189
163
201
167
241
229
181
198
219
203
219
196
223
257
200
178
191
201
195
218
142
190
232
244
148
180
172
149
217
182
264
138
217
215
166
180
218
248
207
161
235
151
229
180
140
174
222
245
212
157
162
183
238
180
244
195
249
226
219
275
202
225
185
222
179
145
161
169
210
182
193
167
245
219
225
217
223
250
227
207
190
222
184
151
188
169
237
235
222
208
204
197
201
151
252
131
203
196
205
174
220
153
161
186
152
178
173
297
209
190
157
239
196
148
254
203
229
212
198
247
187
173
204
225
132
261
261
191
150
192
210
194
180
141
229
189
156
203
226
215
235
152
143
243
192
143
148
234
165
211
164
196
216
228
233
224
190
180
161
184
223
205
198
254
221
176
216
158
165
256
264
194
207
204
212
185
269
190
237
263
182
242
224
270
187
172
232
192
209
155
247
232
182
289
222
190
211
218
244
173
161
217
172
229
171
204
260
186
180
249
262
168
228
195
156
219
199
196
201
233
213
220
217
230
179
171
185
177
149
219
241
179
187
173
163
273
234
187
136
183
206
200
216
171
187
186
243
229
179
200
245
149
223
192
146
163
120
207
204
247
263
257
242
253
247
200
263
185
197
209
209
247
181
254
166
178
222
179
195
172
186
134
196
169
146
216
205
188
211
171
199
173
183
222
185
186
202
233
189
202
164
236
225
244
161
243
214
213
232
157
185
202
169
260
169
196
190
191
183
233
175
250
190
169
203
215
129
165
138
198
230
226
150
140
203
253
192
161
193
217
204
170
187
194
217
180
240
201
174
207
223
149
235
156
185
191
214
166
242
173
192
160
261
222
206
164
231
159
195
241
170
169
239
268
210
200
157
214
216
190
158
112
217
227
224
171
192
236
148
272
238
191
251
249
238
206
196
231
182
189
163
244
222
168
201
169
202
159
172
247
226
232
178
219
125
178
269
119
203
182
187
185
247
166
193
198
211
147
189
263
177
197
219
165
249
190
167
196
206
242
204
213
234
196
205
221
122
156
179
140
210
216
191
240
202
229
149
210
190
169
236
206
241
176
223
222
228
210
200
199
200
223
204
186
190
97
154
172
208
208
227
161
172
205
236
209
152
196
205
144
209
183
177
159
185
227
241
200
224
143
212
168
158
229
257
205
183
130
243
207
170
208
209
217
262
191
229
237
235
148
126
177
158
165
200
238
202
200
174
194
255
186
256
173
195
233
178
239
195
207
157
211
197
179
186
189
212
170
220
233
210
208
194
234
260
169
221
233
225
186
171
192
239
179
159
168
151
102
173
213
180
139
183
189
201
161
167
215
192
198
214
291
234
193
212
180
195
174
208
214
146
241
168
181
159
179
203
205
236
186
216
209
196
220
218
151
227
198
193
191
126
173
201
245
198
213
200
187
245
239
173
206
185
171
198
161
167
211
221
184
183
221
253
204
151
196
186
219
215
240
193
229
188
209
166
269
137
203
166
201
161
275
224
126
195
235
195
213
225
180
199
207
154
277
200
221
235
209
197
253
212
135
257
236
249
162
218
202
138
246
210
245
235
189
186
240
213
212
273
151
244
151
150
152
289
146
192
231
189
165
168
203
229
197
165
179
222
205
186
241
244
221
188
256
234
185
197
198
188
238
132
221
184
189
156
207
249
173
161
214
231
228
271
210
188
269
265
237
221
157
215
226
247
175
210
169
245
159
229
263
209
226
224
242
235
225
240
113
146
235
244
218
210
224
175
180
149
193
248
212
188
182
225
185
221
198
142
199
156
177
205
209
149
152
214
212
208
144
211
195
188
257
241
192
196
158
175
284
206
221
172
173
252
192
222
263
119
207
198
211
152
158
195
232
250
226
146
185
166
178
265
180
197
202
176
226
199
179
148
124
198
233
176
197
237
194
176
217
215
181
218
217
157
226
217
196
172
196
130
197
203
224
195
217
177
182
225
122
204
234
169
197
140
209
192
209
168
123
212
158
277
237
159
180
248
198
190
200
226
158
207
189
174
163
183
249
182
204
238
252
170
134
244
195
177
179
192
188
223
150
179
194
171
135
166
196
202
202
226
230
168
157
142
221
175
174
198
195
174
225
161
204
167
185
211
206
160
182
271
216
202
215
216
233
245
148
144
242
243
178
248
214
260
188
187
163
185
208
179
208
221
161
249
174
184
143
215
177
239
232
241
181
205
154
191
190
197
242
175
153
144
169
236
239
217
198
235
212
192
160
226
208
232
242
228
217
204
179
193
166
107
224
230
164
228
166
191
212
149
181
191
166
173
231
139
210
232
170
173
197
191
220
229
181
187
180
169
151
219
203
257
168
195
186
206
147
228
165
154
228
186
182
200
231
188
203
207
163
209
213
158
222
176
182
222
216
233
183
173
129
181
157
196
280
226
225
193
175
177
200
251
208
204
196
255
158
188
239
144
188
183
159
202
223
157
176
252
168
219
149
165
199
239
143
175
178
151
181
185
232
237
170
231
201
217
196
163
186
238
219
174
200
236
222
177
249
221
177
147
211
170
157
171
250
234
236
231
235
217
221
250
173
167
217
240
267
239
168
189
170
230
206
202
199
233
163
233
209
227
191
207
173
186
208
232
207
125
170
238
219
262
256
237
204
245
148
224
211
208
232
203
231
192
181
180
194
190
193
164
193
184
257
210
182
152
201
210
167
148
223
238
220
204
98
197
193
240
196
195
221
175
254
235
119
134
244
154
192
167
244
255
247
172
143
249
200
202
235
241
240
254
189
171
150
183
174
222
221
186
201
145
227
195
180
223
165
210
160
170
196
238
173
225
176
221
131
211
216
219
209
228
199
171
201
190
151
250
263
166
211
240
195
201
229
172
185
247
179
248
227
212
159
179
235
206
193
184
163
169
141
161
252
157
135
200
191
193
224
201
159
108
121
167
274
147
237
249
191
203
165
215
193
218
223
200
228
171
212
194
166
223
208
185
205
219
234
215
245
168
129
241
221
231
240
177
235
176
198
219
168
213
210
244
208
144
171
162
239
216
254
201
181
158
222
191
214
166
235
213
238
190
232
209
174
187
183
193
248
181
247
168
210
204
198
203
216
215
253
187
166
194
193
236
207
239
216
179
202
260
230
184
208
228
246
201
242
205
237
196
221
193
199
205
214
141
241
236
193
197
282
214
219
197
215
228
202
202
240
244
225
200
221
203
191
212
218
186
201
189
215
284
237
175
238
164
217
188
209
191
213
196
177
209
215
181
187
177
193
182
185
218
209
222
178
202
200
157
217
246
204
203
114
229
171
169
210
206
203
190
215
162
235
151
215
192
221
197
211
229
168
226
190
88
217
213
264
213
189
263
153
195
240
239
131
193
212
150
206
216
238
229
179
256
258
199
222
216
187
177
176
282
168
227
234
185
162
217
175
129
205
189
214
232
196
179
196
179
164
209
199
209
190
201
200
232
174
157
132
167
266
186
198
136
180
193
190
169
210
215
256
212
160
237
194
218
181
259
158
195
145
190
192
239
203
183
184
192
143
258
179
197
229
237
174
200
203
134
237
108
197
187
176
172
195
209
163
238
244
205
291
163
244
233
130
222
168
153
205
172
181
208
186
173
220
231
179
219
172
191
218
201
200
221
208
197
211
266
233
197
229
147
218
141
159
165
193
214
168
251
209
186
195
175
183
202
220
215
145
180
264
201
222
209
198
224
188
198
190
210
207
163
166
206
270
178
213
216
175
201
211
258
209
173
193
174
192
213
155
111
177
193
238
159
213
187
288
153
188
242
235
231
167
183
274
220
165
180
225
239
167
187
158
208
224
191
176
237
186
199
196
204
254
189
246
190
252
186
222
170
228
214
223
242
227
173
238
182
284
230
170
217
236
166
201
187
220
204
212
202
178
154
219
209
137
206
223
217
164
223
151
248
175
253
172
225
160
231
227
200
235
230
226
211
239
239
203
244
216
182
241
194
141
200
233
181
216
225
206
230
208
142
198
211
211
227
142
182
197
161
204
197
195
214
208
230
140
180
253
156
104
225
175
220
233
192
175
184
194
237
227
169
142
223
189
162
204
182
219
174
186
178
132
183
217
245
177
182
149
231
163
206
168
165
231
224
204
182
219
192
229
199
176
172
194
233
204
90
175
255
230
154
201
203
161
142
238
154
153
250
198
209
226
138
179
171
182
163
198
197
232
202
191
198
244
155
261
189
203
212
235
210
170
173
219
181
209
201
234
257
195
187
211
207
160
253
194
159
238
170
103
220
189
238
120
159
236
190
233
240
203
252
132
221
243
213
167
189
169
194
247
210
166
205
161
204
191
185
198
142
195
229
134
202
162
263
191
229
213
160
196
175
209
238
89
196
240
203
189
209
224
277
225
153
240
226
227
237
221
179
165
186
216
183
180
167
210
166
196
164
181
240
220
192
218
169
186
229
255
217
141
169
184
209
198
208
222
192
222
178
197
225
230
166
151
205
158
221
201
239
197
175
195
167
200
199
228
137
167
163
220
237
225
139
235
240
213
223
217
218
194
175
210
166
222
205
259
175
169
225
135
178
189
195
158
199
167
185
190
168
174
224
239
210
213
192
211
203
233
153
226
206
179
228
177
191
164
244
214
207
180
142
234
214
204
209
208
214
248
240
256
211
208
125
231
241
218
187
171
149
219
210
183
186
232
209
259
228
204
168
191
236
186
181
176
176
214
208
243
237
188
230
140
241
153
163
171
233
227
189
209
190
220
192
229
164
192
212
232
180
185
198
179
169
258
189
218
197
158
193
167
165
179
196
198
191
190
216
241
224
180
188
202
234
184
148
231
193
208
236
208
236
267
230
196
190
167
217
154
112
205
242
157
244
239
214
219
131
182
234
160
220
176
196
214
213
210
209
199
243
236
209
169
172
234
223
200
255
254
200
194
198
213
213
210
170
195
223
118
179
260
231
203
177
164
192
185
232
216
221
199
248
231
208
150
168
196
188
198
192
204
250
226
167
197
224
181
177
177
238
181
166
202
148
194
167
200
211
200
237
219
219
225
149
200
253
247
191
230
174
148
199
188
192
206
236
188
237
250
185
246
184
196
215
225
186
232
211
182
239
197
216
195
270
241
214
242
133
200
235
182
204
189
186
166
187
246
243
226
267
199
220
149
183
192
188
265
161
161
232
239
203
195
200
144
203
194
169
194
172
205
233
257
228
223
192
231
204
241
231
204
198
213
209
178
235
194
248
177
267
206
166
233
238
220
160
146
207
215
222
185
259
196
195
236
139
136
219
191
240
244
196
210
191
163
212
181
172
198
198
191
178
180
165
213
230
146
233
181
128
196
169
121
210
171
199
207
159
255
196
201
180
190
235
195
186
222
176
170
243
131
206
232
165
231
242
235
187
192
174
169
186
186
195
271
219
246
250
211
213
192
165
213
236
138
214
162
232
235
215
223
204
164
247
200
217
225
200
237
222
205
179
220
181
257
174
179
244
161
190
246
136
161
226
143
223
171
179
237
176
269
199
179
167
142
230
207
209
244
209
227
181
223
205
231
185
205
196
263
207
121
208
166
169
221
230
180
142
201
201
221
195
249
209
172
145
219
252
198
261
213
127
194
262
208
209
218
193
198
195
142
196
233
183
198
196
159
177
204
201
190
179
107
196
192
224
238
193
237
193
205
221
210
216
179
225
199
206
200
184
197
181
156
183
206
142
226
180
237
221
191
189
175
198
212
235
214
254
249
225
182
204
164
172
238
141
171
212
190
179
208
187
183
204
188
237
218
178
243
221
222
169
189
190
157
217
151
257
182
151
217
216
245
206
223
218
173
238
174
227
168
210
196
246
163
173
189
227
147
160
197
191
223
134
229
166
199
231
212
201
239
245
186
225
211
171
215
223
160
216
163
162
245
213
191
180
225
199
215
222
189
199
181
224
208
213
185
241
166
186
209
201
148
209
176
212
260
151
196
189
155
141
223
259
166
218
223
225
195
185
228
212
215
231
242
151
203
191
125
234
220
278
275
154
236
189
275
184
208
256
205
200
160
211
232
232
132
209
220
177
157
195
207
209
245
206
200
279
232
243
238
125
165
197
247
102
197
247
188
231
221
186
195
218
239
194
148
211
233
165
129
216
246
239
184
174
233
211
202
217
233
181
197
205
258
181
175
215
205
202
248
204
164
196
191
169
200
208
208
173
170
206
203
207
236
205
221
151
185
223
213
165
223
174
131
133
229
182
200
241
180
263
186
188
218
172
222
176
202
190
235
226
156
166
245
192
210
245
189
217
175
187
166
210
182
159
241
201
274
197
241
221
206
215
180
162
252
234
134
181
182
193
248
275
219
241
176
182
96
197
223
114
164
206
183
232
189
94
198
206
220
223
250
243
185
211
147
201
179
279
231
195
211
196
115
157
209
148
208
189
194
194
171
192
195
247
161
234
173
178
135
142
161
178
171
262
185
185
166
288
206
196
112
216
185
206
227
218
186
176
220
245
231
272
206
183
241
186
189
228
216
175
248
174
207
205
249
210
266
140
192
211
155
213
271
208
149
179
203
224
235
155
188
154
235
182
155
171
174
160
259
206
202
257
220
246
215
164
186
234
154
199
209
178
240
222
198
202
177
216
222
186
152
212
222
205
196
97
250
193
158
192
248
182
210
221
208
213
170
223
226
228
220
194
160
182
219
190
194
140
132
203
141
153
227
202
148
142
226
222
205
151
223
183
183
253
215
226
169
222
207
171
241
219
205
195
209
216
146
212
249
227
206
204
236
127
188
152
188
171
203
176
130
218
212
171
128
189
204
188
212
182
194
203
182
214
142
179
185
221
203
198
203
269
160
219
243
214
221
192
211
236
202
190
193
230
212
156
149
219
201
138
213
171
208
196
229
250
212
187
139
246
179
229
190
223
213
246
181
176
269
200
203
198
208
214
219
138
198
204
139
183
200
230
214
214
161
132
204
202
221
245
198
156
209
224
261
160
207
198
187
220
202
138
160
203
192
260
112
188
246
156
180
241
243
170
197
220
213
192
215
175
257
150
198
179
188
206
225
169
219
148
184
198
219
167
171
181
220
255
213
198
243
193
286
188
300
174
221
193
203
186
254
164
190
195
238
247
257
126
233
136
196
252
246
231
224
158
258
207
190
194
246
160
199
165
238
223
230
196
155
212
214
246
229
207
229
262
202
198
148
115
244
236
106
181
204
186
198
158
217
183
152
166
189
211
211
192
232
172
175
239
240
240
128
238
182
199
201
262
216
178
177
156
237
217
201
218
116
237
183
218
148
196
183
202
201
233
262
206
165
213
219
160
164
224
159
183
223
154
231
207
182
209
133
167
147
226
230
206
184
231
177
212
227
184
229
127
221
176
198
219
213
197
170
197
252
210
220
212
160
168
225
220
205
225
226
222
180
228
193
187
206
191
221
185
157
263
211
154
211
286
228
191
220
165
280
238
235
256
209
207
182
230
145
246
207
223
155
247
176
207
242
106
200
120
234
168
162
249
204
244
197
242
182
182
207
196
166
192
245
227
254
153
244
231
138
186
254
200
179
217
219
118
205
203
206
198
163
235
189
142
160
233
209
197
124
252
190
193
226
130
230
215
136
187
211
154
190
181
174
235
211
191
255
165
215
193
214
210
189
181
246
206
218
121
194
173
155
238
230
158
151
199
173
197
184
208
205
190
169
195
179
193
129
193
182
225
207
164
238
221
151
213
259
231
196
245
241
210
224
233
167
182
188
116
234
160
194
294
226
254
165
252
190
198
207
218
111
124
210
212
226
236
215
171
162
187
223
225
196
164
192
228
170
220
236
237
125
227
230
226
188
219
224
222
240
144
176
218
263
222
151
180
230
214
248
180
205
181
143
164
214
194
189
205
152
136
233
210
181
183
148
278
165
229
138
175
210
190
239
148
138
236
199
185
96
204
219
150
242
213
190
267
234
207
208
184
215
204
205
185
185
228
181
233
204
162
180
169
155
175
258
120
170
199
180
215
232
212
146
204
162
251
154
201
141
169
127
176
225
165
199
204
214
211
223
177
185
191
222
189
162
162
129
248
172
229
170
203
165
272
204
191
274
208
227
162
243
236
179
156
251
254
140
201
189
252
170
223
217
231
178
149
219
186
263
202
193
244
195
214
126
207
155
177
186
225
228
190
235
189
279
171
197
159
102
164
134
154
202
218
219
181
185
165
204
256
204
214
165
231
199
157
214
243
183
203
203
172
242
199
195
176
194
157
217
235
216
204
207
261
223
161
188
218
154
210
219
221
175
213
167
208
202
209
197
228
191
217
207
188
219
279
182
179
179
232
202
263
201
229
200
196
220
233
192
206
153
195
141
203
203
150
221
219
192
225
211
130
211
199
178
205
217
242
185
226
184
230
227
213
267
172
185
160
165
217
220
184
213
231
203
173
152
209
220
179
231
223
210
197
200
198
110
183
181
190
216
171
182
218
172
226
222
226
159
163
178
209
184
276
250
259
175
184
174
151
198
214
201
192
147
200
200
149
217
180
175
216
274
172
197
166
203
150
213
224
249
185
237
217
223
202
185
230
191
184
164
200
158
192
217
233
237
169
223
212
224
160
195
153
124
153
229
216
231
179
216
193
278
208
199
234
169
207
216
190
217
186
245
195
230
143
198
210
215
246
221
216
152
169
196
204
196
231
273
198
229
136
212
223
199
232
223
214
225
188
169
196
171
200
223
226
228
166
169
227
243
190
230
165
153
255
178
158
163
225
203
188
259
178
194
222
224
174
149
181
226
226
191
194
205
216
186
143
245
199
180
188
268
166
243
225
199
228
236
195
230
184
185
204
171
135
230
153
163
195
226
221
152
199
177
167
232
190
216
254
167
183
170
210
259
215
120
184
196
227
188
209
119
202
229
184
196
196
200
214
173
178
182
161
231
232
141
224
255
231
204
227
179
245
247
216
153
230
235
204
144
200
165
216
237
243
164
233
167
191
211
155
146
176
237
184
194
245
154
237
279
194
169
229
239
211
187
133
245
206
229
242
188
199
248
174
233
148
194
179
195
252
271
267
209
211
175
140
226
228
211
244
192
205
281
204
222
264
147
184
185
190
165
191
183
120
142
135
217
195
186
232
212
193
210
207
174
150
208
173
228
221
189
211
207
166
161
195
255
203
196
160
219
156
151
206
175
236
207
193
244
218
200
189
159
257
227
191
138
106
171
217
191
231
178
194
196
237
175
177
137
231
237
227
191
198
218
192
204
184
145
189
170
154
196
164
200
168
130
220
108
223
193
185
209
201
92
185
177
164
210
230
181
195
236
268
227
239
169
204
239
197
122
158
243
203
170
220
204
239
155
214
182
175
210
140
170
181
115
147
194
230
246
177
154
159
186
200
216
208
219
247
144
169
284
150
229
227
191
195
192
205
205
215
155
229
157
185
233
158
237
239
220
198
204
172
172
231
215
240
213
199
229
96
226
222
168
158
157
184
175
231
166
207
236
156
227
167
170
205
206
211
203
157
183
232
133
215
226
142
231
179
227
179
208
208
205
181
160
159
241
175
164
229
226
144
254
173
187
138
163
250
193
188
230
118
121
167
192
161
227
189
257
224
230
279
194
209
229
208
259
178
203
227
266
197
213
243
215
217
241
198
224
193
162
206
200
248
212
234
181
182
184
228
248
197
257
193
258
188
203
235
235
164
177
141
232
183
162
141
154
215
208
189
187
278
243
260
204
225
191
214
210
215
177
186
241
231
269
148
224
239
200
147
204
263
167
249
222
136
190
190
178
218
209
212
216
217
160
198
213
144
205
208
178
215
192
222
231
223
167
246
171
236
178
196
196
240
187
145
198
244
168
126
123
190
249
204
189
186
224
165
192
201
251
225
223
228
214
190
202
211
207
240
167
167
241
200
153
127
172
250
280
241
200
267
225
178
209
209
226
150
197
169
206
150
234
180
177
235
228
215
256
229
269
186
169
212
180
179
221
181
141
232
206
189
89
190
196
199
92
247
258
199
166
239
213
179
111
187
235
222
177
206
232
208
163
207
218
232
209
133
191
218
134
168
202
218
276
253
155
233
170
142
151
240
236
161
186
153
235
194
212
180
220
159
181
219
216
195
200
191
194
225
137
155
161
180
173
147
237
227
150
214
194
200
198
170
268
238
209
243
172
220
209
239
223
162
209
175
245
229
219
203
151
226
180
222
167
281
232
272
217
175
185
196
235
241
195
199
226
192
192
193
172
205
212
203
213
195
240
107
182
152
171
216
186
156
188
227
185
223
210
241
163
162
186
253
147
154
155
149
191
176
234
241
196
232
151
175
139
204
179
206
183
193
216
218
245
192
176
193
197
134
162
154
197
208
157
185
210
170
146
159
263
213
250
237
155
162
205
208
256
197
159
228
232
203
170
193
131
182
211
262
240
213
208
255
230
156
198
128
216
238
154
144
193
136
219
237
129
187
256
123
132
201
214
184
267
187
184
203
203
184
205
204
275
247
275
235
209
167
264
244
231
178
182
213
167
168
230
211
242
168
238
203
176
221
206
160
246
251
251
230
111
201
204
227
218
250
166
272
221
221
203
206
212
257
202
211
202
246
218
262
205
180
202
205
187
210
240
188
198
216
197
216
156
223
196
230
179
177
232
263
157
195
238
188
169
244
218
198
209
244
166
133
194
134
217
163
207
201
207
210
241
168
172
310
162
196
242
218
213
242
138
195
200
214
218
224
175
251
233
229
173
191
249
269
231
151
187
175
183
204
182
139
216
178
249
225
154
216
179
213
155
174
198
238
167
173
193
141
208
198
196
182
181
148
177
178
203
219
192
174
206
263
200
174
156
189
227
201
218
227
243
198
191
232
214
230
220
221
172
236
133
178
248
218
221
223
265
229
268
146
230
238
178
143
223
174
225
196
154
233
252
228
157
178
250
167
142
225
174
221
202
231
166
190
228
223
210
195
202
206
233
156
230
194
205
143
224
258
238
255
181
216
149
219
218
204
226
242
229
199
237
175
217
224
217
191
220
197
216
151
225
201
212
221
119
235
169
117
210
205
205
190
188
230
204
195
179
165
220
247
207
174
204
235
211
230
137
183
155
178
169
194
258
181
185
194
168
238
232
187
137
197
148
199
198
233
234
224
195
198
212
197
184
181
208
226
167
324
171
219
204
193
235
172
164
182
218
232
209
176
177
259
195
260
224
195
225
187
232
216
212
192
271
258
218
257
174
261
223
222
250
209
191
205
234
228
183
158
201
175
230
158
221
216
198
238
188
192
204
178
295
169
183
213
171
191
169
153
146
148
196
179
182
253
216
212
239
166
245
207
165
231
205
135
220
246
172
219
251
211
215
172
156
181
170
220
175
203
183
245
251
205
185
185
168
153
206
160
255
165
243
172
218
236
213
198
284
178
221
201
217
175
243
208
221
133
231
197
142
151
185
188
238
167
212
236
155
182
156
223
252
161
181
174
231
221
268
229
188
171
190
175
126
191
169
220
204
211
156
236
169
173
149
228
216
229
176
205
181
190
202
230
212
257
183
217
217
188
134
185
210
169
172
194
143
249
222
200
230
209
211
191
138
220
193
196
144
225
199
254
174
169
247
190
206
228
234
178
192
177
154
254
178
280
208
203
208
223
199
180
186
184
231
187
211
213
224
200
186
207
163
197
185
212
194
241
163
223
176
218
130
205
210
225
204
168
207
168
218
169
209
157
244
194
191
254
184
193
217
246
186
166
249
179
224
190
212
197
158
181
212
203
217
177
170
237
213
243
167
144
173
176
204
237
218
158
187
200
224
191
163
235
249
118
150
204
252
178
231
178
197
166
237
255
227
241
218
173
182
203
241
218
196
225
148
171
204
207
187
213
157
174
162
193
160
229
155
214
189
170
218
150
198
219
174
233
166
193
147
219
223
175
255
236
263
168
122
174
171
229
224
187
135
267
183
151
231
205
197
240
229
223
175
167
233
242
216
122
271
186
163
202
258
166
155
190
136
166
117
181
238
185
245
192
216
210
186
180
210
179
219
141
196
149
198
211
200
248
225
160
190
189
241
199
214
188
245
216
210
210
204
130
159
235
257
197
242
279
241
203
207
241
118
210
178
240
197
224
198
229
225
195
246
219
151
219
215
202
247
171
243
183
169
162
172
224
236
197
236
172
197
240
248
169
138
167
190
236
255
248
245
203
180
214
271
141
182
297
155
138
218
181
163
233
205
219
198
218
195
192
204
204
206
220
166
207
212
141
191
190
199
241
235
271
257
198
210
147
219
207
192
226
241
233
169
247
195
280
159
188
191
242
239
170
182
234
154
192
112
218
153
253
205
216
196
248
242
194
199
180
129
222
244
158
129
201
171
183
223
295
141
205
175
203
212
218
126
195
222
262
181
141
248
204
151
259
156
266
228
240
177
226
195
231
223
179
194
186
222
175
218
236
265
231
186
207
201
190
205
199
230
216
198
250
242
220
221
248
228
190
188
252
252
203
143
231
206
190
219
189
250
172
205
218
236
171
193
121
209
211
212
245
191
222
214
242
229
213
187
225
197
189
170
232
201
162
226
208
180
201
188
182
198
202
182
216
164
156
219
210
196
212
193
171
250
245
209
217
232
94
188
244
213
176
233
213
260
199
153
188
221
219
237
211
224
272
208
182
175
230
200
183
201
174
149
198
252
172
185
193
164
244
250
187
259
175
250
184
255
195
219
198
233
217
141
200
228
187
193
160
191
173
190
183
235
164
210
218
211
179
177
190
225
212
200
239
200
170
214
170
237
210
209
149
175
244
188
212
172
242
242
193
185
248
210
143
129
247
193
171
217
217
245
211
191
173
243
195
248
215
195
291
252
209
170
152
225
144
171
157
147
195
179
195
200
222
178
166
217
151
147
173
118
210
181
216
134
219
208
214
105
150
190
274
181
238
215
166
189
190
169
195
144
154
211
206
202
216
212
195
201
274
218
196
243
273
193
215
167
191
254
194
211
181
241
236
168
173
168
220
166
201
208
206
220
234
157
168
189
206
205
220
228
224
140
225
196
178
224
243
234
212
270
194
206
228
185
219
169
174
209
213
272
178
221
158
235
209
184
204
191
180
161
202
140
169
187
195
205
220
256
233
124
167
150
242
214
206
178
157
152
253
218
247
193
210
181
177
265
167
162
191
205
170
188
185
177
196
202
207
194
213
212
259
165
226
205
197
242
158
250
204
254
214
136
156
185
197
151
211
214
185
227
231
227
159
186
179
154
126
208
177
188
220
189
188
203
226
287
205
229
204
277
204
185
181
216
182
157
136
162
151
207
194
260
204
173
206
238
222
226
183
109
146
206
209
215
229
159
213
186
248
213
164
202
191
243
233
190
148
189
219
195
199
195
249
186
212
192
246
194
221
288
245
183
185
196
133
150
244
266
204
187
184
169
238
177
230
217
190
168
203
105
204
201
247
167
161
269
214
246
238
190
209
236
205
195
205
163
167
201
252
193
210
226
175
250
198
236
214
231
178
195
250
233
225
208
226
204
229
175
156
205
192
178
216
178
271
159
236
206
138
249
164
178
200
209
279
229
202
197
213
155
237
154
208
281
160
196
214
267
196
187
158
150
155
239
220
119
244
148
133
176
212
267
176
229
232
193
142
223
163
244
164
226
224
241
256
170
215
155
202
234
256
222
185
231
182
209
250
146
127
164
232
210
217
166
230
248
190
243
152
203
182
177
174
190
235
213
209
270
215
178
169
213
169
155
188
215
213
177
177
155
192
129
202
170
241
237
230
202
187
227
259
179
240
206
169
185
227
162
201
225
193
189
181
216
214
234
236
164
207
226
215
122
236
187
207
164
172
122
145
169
181
230
203
184
188
207
244
220
192
147
192
157
235
237
223
252
177
189
179
247
195
160
214
151
161
174
164
236
227
144
264
207
182
264
156
235
160
199
244
221
212
228
209
216
132
182
237
173
200
186
184
177
212
196
194
272
236
177
178
221
205
238
210
241
214
135
200
193
189
244
240
231
185
189
222
198
241
126
183
197
210
205
203
221
180
185
129
221
179
164
265
210
168
215
226
186
206
153
189
194
181
197
204
148
196
214
197
173
178
176
167
204
220
200
184
157
179
156
213
262
273
241
203
299
189
198
180
220
191
203
194
196
209
157
236
180
205
184
239
226
147
222
205
179
255
217
219
205
249
267
222
227
244
192
172
218
171
213
237
230
230
278
116
150
137
238
158
219
222
222
205
247
213
257
233
239
202
272
233
160
195
173
242
195
199
221
187
247
211
201
203
237
257
255
167
121
143
221
196
237
227
211
203
245
208
169
153
178
171
256
225
160
170
177
203
194
186
237
165
208
188
208
212
155
230
168
208
268
222
269
234
197
184
175
171
208
238
205
250
214
189
190
125
239
176
188
202
187
205
206
226
182
187
205
254
253
224
199
232
182
241
199
191
199
216
171
204
185
261
195
201
197
255
235
141
205
144
193
203
246
224
165
188
162
115
210
218
197
199
296
160
233
226
210
178
169
149
255
237
136
208
245
172
183
195
238
177
217
207
167
237
196
237
126
239
179
195
156
171
245
194
192
124
130
204
203
239
193
242
206
213
227
147
173
208
238
240
267
194
283
210
211
175
256
220
230
152
231
211
243
207
189
243
188
187
195
205
180
251
213
221
176
126
165
243
137
230
158
213
181
223
216
218
211
254
177
186
224
195
174
135
236
178
163
224
200
197
210
122
205
262
224
159
236
184
234
218
171
181
203
157
257
188
248
219
210
199
251
153
276
229
236
249
175
153
211
228
227
189
242
189
197
181
239
207
176
208
204
223
210
230
187
179
138
201
201
226
255
165
223
241
257
154
217
213
198
224
215
180
202
227
261
217
159
182
182
197
143
242
203
256
143
252
179
146
243
226
213
224
230
243
163
230
197
184
198
274
230
243
183
216
225
204
184
213
194
232
173
173
183
216
224
145
149
169
224
206
178
228
238
171
251
190
222
237
225
174
181
209
256
175
167
188
189
202
233
206
250
235
208
232
207
250
193
244
212
173
202
217
186
238
205
209
237
251
195
125
185
201
223
187
187
193
216
181
196
165
165
223
246
205
143
238
221
203
163
196
186
232
144
230
203
209
187
145
154
199
165
199
168
239
242
187
228
237
180
208
196
211
213
255
191
229
238
251
220
202
269
247
180
210
208
255
178
182
178
259
194
217
199
186
239
212
154
170
188
240
225
210
154
227
238
205
191
166
238
198
195
173
221
187
203
236
176
181
235
249
185
196
148
219
225
192
140
255
167
193
157
200
247
188
258
192
200
179
188
207
127
295
209
242
222
174
248
146
203
186
238
224
206
222
134
220
185
185
237
175
260
163
255
201
151
184
181
218
223
238
199
244
244
185
149
169
228
192
181
143
261
187
272
189
214
183
231
204
175
169
155
205
249
198
217
227
192
206
162
231
161
184
185
175
245
188
175
183
201
194
183
225
263
202
169
236
278
226
232
223
200
281
180
167
159
216
219
185
177
222
248
204
157
258
115
276
214
197
186
169
243
192
230
215
206
183
217
230
160
194
194
178
221
208
162
247
228
205
217
217
186
131
252
200
198
199
203
249
156
174
160
212
216
209
208
208
207
213
251
197
216
206
138
197
252
170
203
195
203
161
181
164
213
232
265
226
205
167
222
136
188
207
193
207
192
225
236
223
180
219
175
186
145
140
174
193
217
230
164
224
180
192
169
200
149
188
161
180
201
238
231
230
196
157
220
208
193
235
238
179
183
229
167
168
212
206
143
222
217
177
198
252
179
144
198
233
193
190
156
175
210
186
189
211
265
152
218
252
242
200
197
228
219
202
277
174
242
152
177
206
257
198
163
201
174
174
215
184
197
173
277
184
202
130
214
174
219
203
228
222
192
161
156
174
209
174
253
186
222
263
220
162
209
218
246
222
197
229
219
182
226
198
201
226
228
199
147
200
199
234
200
214
163
204
267
238
210
183
196
205
180
240
311
226
162
167
212
196
251
175
220
188
185
253
136
197
200
216
223
207
215
201
193
183
223
229
147
180
176
216
181
203
188
188
169
204
165
261
227
189
201
216
159
139
193
223
259
190
164
209
158
226
189
190
243
107
201
236
193
204
192
157
175
211
180
197
187
187
193
203
167
201
129
266
223
189
221
124
198
123
179
197
208
206
150
223
172
185
205
245
176
171
136
241
174
211
197
235
170
242
244
214
267
193
205
219
180
218
208
173
276
175
189
129
169
217
237
132
214
204
195
214
240
188
232
135
192
166
145
217
251
252
185
199
244
230
213
189
196
210
268
263
211
231
186
227
209
226
200
183
185
157
191
229
180
213
197
138
238
164
203
215
225
217
234
207
134
184
186
182
240
153
195
226
243
211
214
205
219
261
225
242
199
184
244
238
209
251
260
194
212
231
184
174
199
201
215
146
150
173
169
226
217
180
237
158
188
153
222
187
172
197
197
181
228
239
207
212
210
166
168
219
235
118
125
220
236
205
161
202
175
114
212
169
189
186
174
201
189
252
232
237
296
260
169
206
169
142
227
174
216
252
145
252
245
214
193
192
230
227
208
206
231
173
151
196
227
188
221
258
254
158
193
192
209
202
199
190
240
234
221
181
222
199
246
183
202
214
194
205
223
122
127
150
222
201
227
125
268
223
172
213
241
176
220
223
182
208
137
185
219
137
203
154
151
194
241
135
167
112
167
158
163
214
200
188
165
179
172
195
182
210
241
246
164
141
166
221
146
200
225
242
209
208
109
151
232
216
208
224
204
190
159
227
208
168
234
244
203
175
256
250
196
222
227
237
234
178
249
226
156
231
119
229
132
167
163
142
194
176
249
232
217
204
162
201
209
229
150
227
226
196
208
203
187
256
184
197
226
192
137
187
156
138
139
174
207
254
172
229
182
223
170
197
186
137
229
209
150
182
168
222
216
216
236
200
188
213
164
218
211
180
205
190
195
170
214
246
187
188
200
168
216
116
198
145
195
132
194
186
215
226
162
161
217
189
195
174
182
187
218
194
192
199
232
226
194
267
218
208
209
213
242
190
161
212
224
167
195
171
193
202
232
172
121
204
204
209
195
197
174
188
190
230
219
184
248
204
218
227
189
219
249
222
139
199
101
209
192
223
222
227
250
188
182
220
150
212
210
163
227
170
195
222
218
251
137
183
216
145
204
197
186
224
260
137
246
212
207
194
240
213
213
206
151
178
207
195
233
197
178
218
195
214
236
208
216
250
214
181
216
224
179
169
215
217
127
234
268
226
169
249
196
244
239
193
194
189
164
261
242
215
205
192
139
168
173
216
191
132
224
197
212
208
187
237
124
284
184
217
123
194
174
210
210
171
212
236
198
178
254
138
151
207
210
195
208
197
219
236
209
192
178
256
172
249
241
243
232
209
194
230
215
224
172
204
313
185
258
232
261
157
243
232
258
212
237
207
242
264
235
167
232
207
194
218
204
111
251
220
204
218
188
169
189
244
258
228
172
217
258
158
175
155
188
214
237
218
197
215
195
248
144
155
169
187
198
181
156
144
193
180
217
147
201
199
188
183
208
185
254
155
215
176
144
227
218
224
204
243
247
227
268
191
234
195
198
259
211
144
159
185
197
211
243
158
187
168
157
218
192
235
186
208
162
164
231
136
240
206
211
220
206
158
152
171
202
140
201
158
216
220
145
138
271
157
157
198
145
207
213
250
160
221
195
197
182
211
254
222
222
218
213
158
174
175
236
281
225
222
153
246
174
213
281
194
250
195
252
203
230
173
199
200
199
182
232
236
213
265
153
191
199
194
180
189
184
237
222
215
199
242
160
180
182
207
243
188
144
218
113
203
177
242
215
186
201
251
222
180
140
146
297
193
243
245
120
214
240
224
173
218
199
223
223
175
220
201
142
272
170
196
238
168
264
201
201
165
230
215
177
247
219
175
269
169
197
178
183
245
242
172
180
181
215
209
244
207
179
207
208
188
184
156
250
198
197
178
180
184
228
205
231
220
232
192
176
192
184
187
236
182
217
153
163
151
223
212
194
212
159
225
196
185
154
231
179
201
230
185
195
194
159
234
186
215
158
189
179
164
161
192
197
111
231
209
225
256
152
161
250
256
197
211
207
195
181
165
237
155
213
207
199
231
187
273
230
237
192
178
195
217
192
228
223
144
189
177
187
182
231
210
241
237
183
180
194
196
209
219
134
219
195
228
255
183
259
160
193
228
173
200
149
247
174
209
213
198
231
181
212
211
197
238
175
240
195
253
237
196
159
189
214
241
245
202
297
182
228
162
163
188
159
250
217
186
204
204
170
225
210
194
198
196
253
255
222
188
211
191
228
132
237
204
214
202
140
80
108
203
146
202
202
192
182
201
186
161
202
222
239
207
192
173
164
223
212
133
138
205
193
236
232
205
141
251
193
165
224
201
192
145
150
162
202
252
210
139
234
180
209
216
171
250
164
210
212
216
157
198
144
216
176
138
181
176
187
236
259
172
160
191
248
199
213
215
223
132
152
249
179
184
246
157
194
218
92
190
203
174
208
201
173
182
223
193
186
196
170
155
223
172
242
191
225
205
238
202
222
172
216
213
126
214
221
196
175
224
214
248
216
191
188
207
160
167
243
163
224
227
150
225
223
185
184
192
220
221
191
121
156
222
211
169
264
229
197
210
267
196
190
230
178
171
181
195
212
197
216
216
216
142
164
276
192
239
226
148
149
165
217
182
169
194
218
223
230
170
173
205
207
170
223
161
157
181
210
146
269
222
174
225
218
210
279
291
205
226
194
250
211
215
230
211
232
227
165
230
204
179
254
204
222
207
167
244
213
167
191
190
196
195
212
256
220
184
214
199
216
184
250
211
212
207
151
236
175
156
213
143
142
160
227
164
249
148
146
225
210
207
203
179
238
202
216
210
211
146
278
196
213
155
187
202
219
174
238
189
236
150
241
210
236
242
148
172
236
185
160
202
186
203
162
183
234
201
215
198
217
200
198
238
128
201
233
173
221
173
159
152
221
187
213
239
188
192
210
243
246
237
197
265
162
188
251
176
277
224
196
233
240
204
164
216
217
195
215
236
147
190
150
251
223
195
187
181
191
247
177
194
214
129
181
204
233
224
258
252
191
187
162
201
244
203
205
235
138
252
188
215
180
149
214
181
178
244
255
261
181
239
236
230
182
223
209
243
160
185
198
215
181
225
205
215
219
172
189
187
220
225
116
232
198
217
246
154
156
210
229
159
219
233
176
183
179
204
148
230
213
219
177
218
217
202
155
208
206
206
205
176
166
210
201
229
187
198
227
222
221
211
161
173
242
111
159
212
183
211
194
213
233
234
227
214
258
245
240
248
193
153
202
185
197
208
197
196
216
203
220
207
133
257
212
213
236
148
205
207
184
226
148
185
202
227
216
170
189
195
203
196
194
199
222
193
188
228
231
161
179
180
208
175
117
223
234
245
214
199
199
152
176
194
237
212
206
213
252
201
178
215
233
182
199
221
182
186
231
218
193
269
196
176
114
235
155
180
209
203
192
175
230
245
220
254
208
219
175
237
206
215
184
198
180
219
168
181
199
231
193
178
182
250
299
135
229
160
206
207
170
185
201
238
169
205
210
143
202
167
172
225
189
240
206
151
170
216
192
151
251
205
191
206
231
188
205
181
199
212
204
202
221
274
203
244
194
292
209
207
204
225
194
217
231
138
193
188
169
213
257
212
167
256
257
243
237
229
228
190
131
146
161
232
175
206
217
253
195
154
165
190
201
204
181
230
286
123
148
264
191
204
181
214
214
182
220
201
199
212
178
204
204
172
221
189
183
168
153
203
155
257
173
194
198
210
180
141
190
164
240
208
216
241
170
145
186
143
184
212
272
190
233
274
232
201
164
154
216
197
149
263
234
237
212
186
168
176
185
263
187
254
203
166
159
146
232
256
152
185
181
223
281
143
173
183
265
169
246
177
247
159
131
194
261
170
166
197
207
184
224
184
178
228
149
182
236
186
212
230
170
205
150
230
169
269
220
201
233
151
240
134
219
223
226
222
183
173
207
202
167
193
164
248
120
252
191
183
225
240
249
183
211
194
198
201
270
203
151
235
208
171
245
182
184
218
167
160
241
180
188
233
189
224
148
213
182
211
245
187
173
161
216
208
147
195
156
233
204
240
219
205
169
223
152
191
221
104
240
207
260
196
202
214
226
212
185
192
212
149
208
198
194
210
278
225
188
225
203
179
187
174
239
229
212
169
168
188
205
174
160
192
201
208
204
222
217
181
173
240
155
196
149
193
262
181
198
186
220
205
197
186
166
155
184
166
221
193
213
160
172
251
112
248
269
182
202
213
182
197
170
210
195
179
136
198
189
266
255
232
223
200
129
215
223
221
158
163
188
185
242
207
175
262
189
214
232
204
240
183
162
190
174
247
145
221
218
194
267
188
126
268
213
189
223
176
172
259
268
171
174
206
184
213
182
201
191
165
188
177
177
208
198
194
240
159
218
145
192
205
125
183
223
202
214
207
195
210
159
138
254
257
176
148
202
268
232
209
167
213
206
143
228
236
232
190
174
205
211
226
152
207
167
189
209
168
201
235
244
167
183
159
175
182
155
183
173
185
137
280
218
214
200
219
202
270
211
165
178
227
258
206
255
235
184
219
179
169
198
139
223
187
216
206
194
167
169
209
245
188
171
229
210
161
220
247
182
238
186
167
170
223
202
158
238
194
200
227
237
188
200
133
239
218
230
219
196
215
180
130
202
178
234
187
167
127
192
222
159
253
207
146
181
167
215
166
206
221
174
209
216
260
243
178
145
206
164
204
270
157
231
220
137
182
220
233
233
150
221
265
173
208
211
171
185
229
256
209
213
210
191
286
225
143
199
250
229
202
163
235
235
251
232
170
262
186
172
231
189
217
232
179
250
240
235
272
202
145
242
199
222
208
197
212
188
203
222
209
244
190
222
158
195
207
211
121
252
174
263
207
189
223
237
243
211
133
190
243
165
179
173
202
249
199
197
206
258
192
204
250
235
227
209
212
230
182
126
181
198
231
218
161
199
161
153
168
218
169
178
192
238
235
151
222
173
193
161
136
199
195
194
136
196
138
197
185
176
205
186
192
211
241
188
196
220
196
219
196
207
157
220
155
233
209
172
182
190
101
228
221
227
247
226
167
167
232
194
220
206
179
197
211
203
172
215
224
153
218
229
180
237
199
202
166
187
205
198
212
207
251
236
218
164
188
179
239
221
222
202
222
190
185
241
212
224
185
252
174
244
218
220
237
142
202
170
252
207
190
214
177
118
202
212
277
196
225
226
185
227
290
177
262
194
274
150
222
167
210
196
217
107
210
248
243
242
136
214
199
247
221
197
244
223
169
231
207
252
200
167
227
215
174
221
192
196
216
167
188
189
201
194
257
192
198
194
190
231
153
206
247
245
247
233
210
228
195
198
141
206
214
209
189
193
165
235
162
189
145
240
146
214
183
233
176
245
134
158
164
204
203
183
230
207
202
239
247
227
174
221
185
117
175
177
188
205
170
238
151
199
193
175
192
176
177
117
166
156
216
198
167
221
234
238
192
207
237
249
278
199
215
173
213
150
267
213
150
265
173
214
154
209
223
250
186
194
204
248
255
223
225
243
221
201
167
213
185
186
196
139
204
235
219
121
202
160
161
212
160
210
213
89
235
172
202
218
160
202
172
169
172
205
210
140
139
141
132
178
142
191
197
231
159
176
186
179
267
246
172
203
188
205
228
221
142
176
182
213
220
286
230
224
180
235
202
196
208
210
187
254
244
188
193
200
247
193
239
208
168
210
191
220
196
287
201
188
189
227
219
260
176
147
279
209
224
185
182
229
199
214
222
227
240
243
211
144
199
269
177
147
198
248
186
189
214
194
158
199
165
222
191
128
134
246
234
203
243
203
186
154
205
239
180
166
232
136
225
223
172
216
172
160
242
201
233
221
226
220
264
217
118
181
172
147
160
187
185
190
214
182
170
251
166
270
194
201
196
175
242
114
164
230
171
205
262
178
249
163
208
224
217
213
184
179
210
202
181
178
150
206
213
188
203
131
153
161
199
207
211
181
245
215
201
257
229
233
213
183
202
203
179
182
176
228
130
143
190
192
184
234
137
156
226
178
219
168
198
221
200
176
224
159
223
262
207
190
152
203
209
160
192
244
223
185
153
206
201
252
227
177
157
211
200
219
205
142
201
177
180
197
160
247
87
204
201
204
207
153
238
165
228
174
226
220
240
232
192
209
209
141
150
161
189
187
212
243
188
155
204
152
259
156
227
169
198
175
214
132
171
197
202
205
224
237
160
194
200
143
219
228
205
123
240
223
241
200
202
152
174
200
239
246
216
215
183
237
213
221
174
241
189
132
127
201
185
238
262
188
185
238
151
182
203
219
215
166
165
192
233
226
194
188
200
193
223
173
199
248
269
160
182
165
145
246
189
171
229
199
242
202
289
217
252
146
188
143
179
186
187
189
271
215
202
211
202
204
227
231
200
172
248
261
196
191
191
157
202
203
252
160
299
215
156
163
160
219
180
253
176
170
163
196
235
220
141
196
165
242
223
176
217
221
235
140
191
169
176
150
188
184
162
173
236
190
242
244
243
175
225
219
184
170
208
201
178
232
188
192
175
196
208
238
192
181
242
180
174
227
151
164
250
233
195
161
162
235
224
183
241
212
148
216
188
248
183
213
238
162
126
170
230
241
191
165
201
201
149
231
158
194
226
186
202
200
198
178
170
192
244
233
156
243
178
178
221
201
240
132
210
232
184
177
225
202
216
261
195
208
196
167
154
186
170
260
182
227
217
217
278
213
146
241
188
176
247
156
247
180
165
209
175
237
158
219
211
269
180
221
228
209
157
256
169
190
184
245
141
122
213
246
167
161
270
186
198
243
195
227
233
146
226
130
218
159
199
188
212
245
210
186
156
182
281
242
196
267
202
217
183
234
207
229
209
210
212
199
196
190
204
138
164
192
156
186
217
222
206
218
183
212
237
117
222
189
222
193
170
216
262
245
149
185
189
187
233
199
253
205
109
217
190
198
223
222
174
226
163
176
210
162
217
237
181
257
161
229
251
267
243
243
237
193
230
172
212
222
141
186
168
264
149
211
258
188
175
165
235
244
276
187
173
220
245
209
160
159
194
148
244
255
199
170
146
165
251
183
187
220
242
230
202
176
226
222
197
229
246
150
138
183
205
247
215
226
184
226
187
200
158
201
187
191
237
258
199
222
195
205
108
205
270
210
211
199
116
165
195
223
216
176
243
178
215
241
137
198
176
214
193
168
276
224
253
210
201
135
151
180
229
168
142
187
167
225
154
228
144
251
174
230
179
226
159
247
155
241
166
205
235
196
180
136
250
232
243
187
188
218
206
255
239
201
291
239
179
204
153
205
165
204
176
214
225
235
191
184
223
95
179
156
203
167
190
220
220
177
178
203
229
172
226
190
211
246
232
221
216
199
216
203
192
240
191
207
192
236
242
192
188
265
211
204
241
208
189
216
130
196
172
198
180
264
124
162
196
210
110
201
159
159
216
193
248
199
240
248
185
162
218
214
133
184
116
255
181
234
252
205
185
195
196
173
209
253
191
225
232
190
157
187
280
190
234
155
252
187
196
218
203
161
227
204
255
198
173
180
217
278
177
164
212
210
177
201
197
253
190
227
214
229
255
222
183
234
194
136
208
151
208
171
132
239
255
161
210
183
227
196
251
219
230
173
219
234
240
260
139
203
207
204
154
125
181
229
272
297
230
203
169
226
191
232
228
203
163
232
185
139
221
195
154
183
233
236
152
207
213
176
164
212
171
153
220
161
213
227
193
176
160
184
199
233
172
155
184
214
181
209
196
233
191
222
123
205
171
233
174
251
205
219
183
208
208
206
210
190
206
226
195
202
219
228
238
164
202
194
157
190
197
151
263
211
139
233
237
244
146
151
179
246
206
219
222
229
154
190
236
194
191
164
240
203
241
183
226
183
188
221
153
163
239
222
242
233
181
231
211
95
193
185
169
177
172
259
197
238
216
212
194
251
177
286
172
210
198
232
184
240
161
171
216
192
270
133
155
168
182
167
250
194
197
174
174
231
223
230
192
165
253
250
194
219
212
213
165
186
224
183
212
226
151
153
201
189
219
226
186
199
208
202
209
217
198
203
260
134
243
241
172
148
124
131
193
227
194
228
190
157
149
245
235
180
221
235
210
256
249
219
131
173
166
265
244
153
181
185
251
178
209
241
212
164
245
192
175
175
197
212
226
178
241
245
216
231
165
227
215
188
126
223
210
184
170
121
208
249
234
248
106
174
187
216
228
211
183
145
165
225
189
208
229
185
213
177
214
205
178
212
205
227
223
221
186
136
186
214
270
142
157
137
173
240
238
192
232
225
223
213
183
236
199
203
200
164
235
232
184
236
169
259
195
158
150
205
220
229
254
198
233
183
258
243
160
240
170
163
230
191
234
134
229
213
249
144
141
177
203
187
244
253
247
144
149
180
242
232
129
187
209
215
212
195
220
210
168
141
243
179
152
165
187
217
234
207
211
223
168
248
170
212
153
208
176
244
206
233
222
198
161
172
250
219
186
240
218
206
190
209
242
168
149
207
181
195
213
248
164
263
193
194
191
208
203
259
161
253
221
232
218
210
182
194
181
205
232
160
228
233
212
161
212
157
269
270
221
276
156
215
199
172
211
247
190
214
181
259
204
250
198
139
200
203
135
179
186
185
240
207
200
216
186
214
203
212
205
181
259
219
247
268
226
257
159
269
231
165
242
214
165
183
190
248
186
134
230
257
296
207
227
175
221
184
166
152
223
202
146
197
163
229
244
176
180
217
233
217
181
162
233
167
241
249
212
174
212
197
193
185
230
189
187
232
240
208
125
202
146
204
225
222
204
166
247
198
175
236
202
186
163
233
132
201
188
203
194
216
295
178
248
219
220
172
206
233
222
214
243
202
137
198
117
214
176
191
217
219
171
206
270
137
221
216
227
184
198
237
207
193
219
197
164
175
253
196
189
199
162
241
167
180
128
226
179
163
176
179
227
253
223
154
231
230
182
151
193
262
200
242
163
245
200
194
253
227
217
200
234
173
188
161
222
214
218
218
133
246
209
149
206
143
228
177
222
194
244
202
205
240
185
216
235
211
251
218
204
205
174
172
193
145
193
175
179
199
185
274
196
149
238
189
181
181
224
217
227
223
127
215
205
154
257
208
215
179
195
213
244
210
217
196
197
230
246
160
187
234
156
149
189
227
167
219
208
229
236
217
223
242
167
236
208
192
231
188
158
223
252
193
108
264
206
143
195
191
191
193
168
139
155
202
141
232
159
246
207
171
224
191
176
195
208
248
259
195
229
153
150
123
190
222
135
169
221
202
275
188
224
156
217
191
112
244
246
203
158
181
185
180
224
213
206
234
225
168
235
191
175
204
198
229
209
211
206
225
207
182
162
211
238
190
217
194
175
199
226
252
175
260
230
188
203
209
156
210
161
255
228
251
169
184
161
206
214
180
131
208
195
245
230
209
200
229
172
159
176
159
171
232
235
203
135
217
245
203
175
231
194
271
195
171
174
214
206
182
199
151
223
214
181
195
211
179
191
243
155
168
166
301
228
202
256
202
207
180
192
117
80
233
196
230
171
259
259
206
221
171
267
223
220
190
205
205
210
236
222
198
241
249
242
237
228
239
237
203
234
187
148
168
189
166
255
213
148
194
243
261
190
162
230
252
184
206
228
189
129
199
223
213
193
222
178
187
177
182
242
156
189
177
168
139
169
172
205
178
206
215
197
180
145
193
227
213
154
202
180
213
191
180
201
205
229
206
199
144
203
199
201
173
149
206
210
228
193
207
241
151
246
182
206
245
237
195
200
139
143
155
269
149
163
174
224
216
147
219
154
192
191
219
234
228
197
232
146
257
209
206
197
212
159
262
193
135
258
189
208
192
151
252
257
185
148
212
226
180
150
187
191
193
201
214
239
207
164
137
203
251
171
217
187
178
220
256
197
224
212
186
146
203
174
159
219
279
166
181
244
233
253
222
133
199
221
231
197
212
213
258
196
236
227
119
230
216
153
166
293
226
193
210
196
175
267
270
179
246
235
198
274
191
172
180
190
170
199
272
178
223
226
191
239
199
143
198
265
196
186
123
200
169
187
243
206
236
267
205
169
215
205
244
174
202
202
216
157
198
183
243
180
122
206
192
216
238
213
188
227
196
168
177
197
165
159
252
175
237
185
193
227
176
219
176
306
246
168
248
206
185
215
190
148
187
202
169
201
200
227
209
204
234
195
175
175
198
196
170
156
177
233
254
164
222
233
185
231
151
232
171
270
161
166
171
195
239
192
179
187
205
219
211
201
193
235
171
198
139
238
227
197
158
253
203
181
190
207
253
177
202
180
196
181
211
220
133
255
201
169
228
127
239
186
249
166
148
202
237
200
198
204
186
195
223
249
177
213
195
281
183
244
159
226
222
235
196
196
208
200
217
254
194
124
180
176
188
233
167
148
232
236
186
232
175
124
241
228
175
201
186
152
210
188
216
237
140
202
205
218
243
223
216
204
221
192
212
207
130
213
222
221
189
188
185
184
238
171
152
225
147
234
230
194
183
216
208
189
234
198
214
240
182
182
177
195
220
163
191
217
216
270
219
182
206
169
197
220
224
121
193
161
197
196
203
226
234
243
236
114
199
241
207
193
185
208
236
223
238
157
177
230
218
207
208
221
245
186
168
209
229
166
225
239
217
176
189
208
248
229
246
176
67
169
214
189
216
229
234
230
168
196
195
195
198
174
228
217
158
165
220
246
160
185
250
251
243
221
248
217
145
228
235
222
175
184
202
162
195
242
191
192
132
220
197
198
147
133
179
231
263
209
220
222
206
145
230
223
214
237
201
207
260
178
189
235
207
195
227
200
209
162
204
170
215
208
199
211
208
193
233
212
186
249
155
217
168
182
239
222
163
225
209
184
233
217
168
194
209
181
155
191
259
231
210
116
176
133
223
194
222
231
186
166
180
246
277
224
177
234
102
217
186
179
233
229
185
182
159
143
225
237
137
233
211
183
176
188
195
193
219
202
161
144
260
175
233
224
122
217
222
124
168
168
203
212
139
207
193
244
197
177
197
171
194
188
176
221
233
239
220
189
233
155
174
229
233
206
215
234
185
213
192
204
232
196
262
196
203
193
183
181
246
182
160
227
143
215
216
174
169
201
138
169
165
226
178
251
209
172
162
169
209
169
184
157
153
226
214
203
237
211
220
171
174
252
181
210
222
215
242
177
230
137
185
236
214
170
224
165
206
225
218
203
247
193
171
256
211
211
204
215
223
228
202
217
222
224
229
208
166
234
176
231
231
206
203
163
178
167
190
154
178
209
201
190
209
253
207
223
249
184
165
156
160
174
156
176
192
148
219
182
160
184
188
179
213
127
114
207
223
205
136
190
151
225
210
212
240
249
158
150
121
212
160
184
162
162
192
154
235
156
215
112
169
164
173
193
193
188
201
198
111
239
171
181
195
224
125
222
127
196
202
261
237
212
159
244
202
195
191
229
187
218
196
193
245
144
177
162
160
232
221
211
190
260
229
199
190
138
143
219
217
196
237
165
206
240
232
188
154
205
259
153
165
236
278
227
218
210
168
266
217
162
165
203
266
236
172
229
230
173
254
142
261
215
171
198
220
234
197
259
238
213
194
203
166
214
167
203
210
197
239
137
159
135
210
206
156
217
210
229
219
202
180
174
243
213
192
130
209
179
148
237
228
218
188
222
195
186
188
129
206
171
189
263
196
164
195
194
155
225
227
192
191
211
218
214
196
156
243
235
206
207
237
182
217
199
238
204
183
160
163
247
239
180
198
205
235
205
269
220
236
217
251
202
252
211
194
240
201
196
198
249
158
176
193
191
208
254
201
118
201
208
222
179
203
241
178
209
189
231
276
228
183
181
287
226
154
211
212
171
252
215
203
225
188
193
184
231
185
260
253
162
225
275
196
181
171
140
208
144
253
204
134
150
258
211
199
209
137
196
241
148
149
231
175
193
215
215
162
161
140
210
248
191
227
204
181
184
201
190
195
205
189
172
178
117
209
141
216
174
189
196
162
213
146
236
200
195
174
213
195
202
215
172
203
243
175
155
225
170
219
151
176
238
189
120
231
153
217
243
115
198
174
163
187
236
234
158
184
191
231
245
175
217
227
159
234
168
211
187
182
175
154
160
148
191
167
231
153
246
177
180
262
248
245
177
137
210
197
240
234
157
234
147
229
193
280
192
234
242
211
220
190
267
207
206
168
165
198
291
233
222
177
129
232
199
193
255
206
205
149
213
139
195
219
179
186
215
274
211
244
211
140
231
217
201
226
233
190
229
189
159
209
184
213
230
138
203
222
160
196
261
170
206
236
240
173
222
155
201
247
224
215
164
199
221
225
178
236
261
211
227
200
188
221
234
226
235
249
236
214
235
207
184
221
170
212
251
192
196
233
216
266
225
243
142
267
141
153
158
169
175
208
211
178
227
172
246
181
251
273
187
120
224
204
155
222
253
221
207
203
199
223
204
208
231
183
195
236
233
197
217
190
192
217
203
180
155
201
157
200
214
188
252
143
193
166
175
182
197
236
175
180
182
205
242
253
175
219
208
191
241
201
210
229
213
132
192
143
229
145
255
195
214
148
217
215
168
139
231
241
161
157
195
195
178
184
286
206
195
214
171
202
253
205
172
120
236
206
189
131
208
247
197
275
202
195
232
237
179
189
195
241
191
169
118
214
182
233
193
221
192
240
221
215
263
237
183
186
140
220
152
245
177
235
182
144
216
246
243
216
146
237
269
197
219
179
178
186
183
181
214
195
162
233
228
246
216
238
174
153
201
254
262
207
198
250
210
216
217
107
187
196
233
125
194
205
192
170
206
265
205
171
176
226
181
187
173
184
196
223
193
220
225
227
244
247
232
266
246
244
240
181
183
239
202
198
235
212
189
192
168
178
223
142
206
218
221
189
231
156
179
202
216
169
190
231
187
179
256
203
241
185
220
208
165
155
144
209
159
227
168
159
168
182
180
235
248
203
210
219
189
199
235
174
194
166
186
165
228
196
208
96
218
194
213
189
194
254
219
113
126
177
182
247
201
241
176
211
207
183
233
168
229
178
231
168
137
215
224
223
217
190
223
195
119
178
155
175
219
175
236
190
242
282
217
169
202
216
225
190
161
268
196
167
207
221
125
224
244
212
182
254
175
182
233
243
222
110
211
196
187
194
254
179
152
190
228
168
216
249
178
190
178
224
138
217
142
179
257
182
216
163
186
201
79
147
128
166
220
142
220
224
224
169
179
210
140
221
259
200
176
188
201
178
220
196
144
163
196
192
123
226
208
194
231
97
178
241
245
215
206
153
232
246
261
185
220
179
205
207
217
164
220
178
229
207
205
215
157
226
158
275
183
222
222
135
208
236
251
124
181
233
215
222
255
163
180
172
211
225
213
222
182
122
178
156
202
253
220
215
154
197
172
193
189
212
210
198
206
184
149
249
244
219
210
110
195
171
187
190
175
185
171
168
182
271
183
201
196
164
238
200
184
190
185
193
188
205
216
161
159
155
189
191
186
172
183
236
188
186
167
204
214
199
200
190
141
195
181
240
189
229
197
190
186
198
204
202
178
236
192
217
199
227
223
180
204
234
238
165
178
185
190
165
173
207
212
199
281
222
259
234
221
199
234
252
188
189
222
241
223
156
190
218
220
180
232
158
241
191
234
173
211
203
226
217
204
196
226
200
212
193
156
172
93
162
180
186
245
150
207
216
171
166
255
161
233
203
237
214
181
149
242
118
218
239
233
155
181
170
233
207
175
182
219
152
148
181
155
257
205
246
225
228
181
200
246
215
134
228
221
157
183
187
230
176
177
181
211
238
244
203
184
217
223
248
206
249
209
241
215
178
215
150
272
243
218
235
207
180
160
263
248
210
253
191
207
218
276
138
172
177
209
238
222
220
209
192
174
133
154
177
218
153
226
174
192
137
173
221
203
194
221
218
264
173
187
211
211
197
197
242
162
158
186
174
212
231
218
187
185
180
186
240
156
182
194
227
214
209
215
184
224
202
208
181
193
216
192
235
227
201
255
177
223
231
230
174
239
199
208
238
195
175
187
184
232
227
95
230
214
157
202
139
195
183
183
215
243
141
137
197
217
231
168
126
176
191
198
163
149
126
200
205
165
169
204
163
215
241
133
136
216
180
151
198
171
156
253
244
234
231
150
214
220
215
188
146
185
238
191
139
215
234
172
210
199
208
233
252
186
226
160
214
200
144
193
141
207
241
219
213
220
166
200
160
181
217
205
193
171
143
234
161
196
213
185
181
220
209
221
132
195
226
164
229
253
207
208
236
158
176
172
151
196
192
157
212
211
201
218
248
188
257
164
190
214
132
198
218
224
180
212
188
140
261
220
163
183
206
201
211
215
231
204
189
178
162
220
229
165
217
202
197
204
180
199
233
164
178
166
263
139
162
172
178
129
191
204
193
164
151
169
217
230
195
233
137
199
173
229
196
189
213
174
170
247
209
182
189
139
170
197
213
158
178
236
255
239
279
188
197
279
181
229
242
266
205
186
120
140
225
190
203
169
284
186
165
209
181
212
160
227
229
236
159
158
178
184
191
195
158
193
174
196
176
198
207
210
240
201
227
230
136
235
245
192
218
175
207
210
158
218
174
162
227
228
191
221
208
184
179
165
177
140
202
231
187
181
224
150
213
174
229
182
122
204
222
161
192
228
184
191
196
222
163
168
228
177
186
233
200
256
227
233
175
228
219
204
226
196
195
214
188
155
218
147
151
194
215
181
233
244
249
231
219
184
299
241
232
288
195
165
159
192
208
198
138
194
262
203
212
205
220
162
164
209
174
219
174
174
209
264
208
206
188
209
182
171
169
202
139
223
227
241
157
136
244
164
264
166
232
220
161
191
162
211
184
193
284
223
248
211
145
152
195
264
211
160
167
252
217
178
244
221
192
151
208
247
208
191
246
136
240
203
127
216
208
228
184
177
177
160
154
212
161
161
242
176
167
180
180
186
194
178
149
271
145
202
250
254
176
222
258
162
200
181
201
221
261
201
140
219
212
238
165
181
201
238
210
156
271
204
141
148
166
178
182
195
177
214
197
195
210
179
230
210
209
273
264
214
222
228
219
189
200
120
216
119
206
230
224
227
191
199
226
221
174
187
184
188
142
199
259
167
198
203
227
251
194
154
189
213
233
127
215
225
177
231
150
223
193
169
181
186
106
181
232
241
218
216
206
222
209
156
222
244
227
228
158
213
189
182
224
199
183
230
165
212
177
145
223
243
208
248
272
184
236
142
220
143
203
183
189
186
210
215
180
234
173
237
148
182
213
204
214
152
207
222
234
138
177
166
192
195
219
198
188
179
246
149
223
215
175
174
220
163
228
197
154
166
200
229
204
204
214
162
114
116
225
197
200
195
226
161
164
219
168
218
217
172
167
151
244
207
179
238
156
196
220
239
180
200
235
276
177
187
172
223
204
174
214
217
161
218
249
227
221
205
227
233
203
200
187
230
229
246
223
196
165
218
175
170
236
175
183
247
194
212
201
160
167
165
200
176
144
251
201
187
178
203
166
239
209
183
193
205
230
128
223
232
191
179
270
254
189
205
252
206
258
226
165
213
248
174
223
199
166
184
126
188
144
207
178
274
224
182
262
218
200
273
218
195
197
228
181
174
200
208
182
145
89
213
208
183
257
189
238
190
243
208
224
139
217
233
206
156
127
272
190
166
245
112
270
287
171
136
213
193
258
230
263
162
142
200
220
159
190
189
164
236
223
180
198
179
233
213
238
226
199
208
185
197
238
189
184
147
234
196
220
198
167
215
150
110
203
198
177
202
186
174
231
216
180
184
165
143
196
215
272
183
227
200
262
266
201
212
247
219
162
110
160
184
226
228
204
252
174
167
184
192
280
201
192
224
179
177
152
178
138
204
146
200
200
239
228
205
183
222
280
195
252
215
203
246
146
176
192
207
238
263
186
279
204
231
173
157
219
190
212
177
161
263
227
190
196
190
154
194
178
239
186
205
162
183
183
229
159
211
179
159
233
163
201
220
184
207
137
148
150
185
216
158
195
148
167
179
239
196
168
210
199
263
193
232
241
234
138
149
143
237
191
279
230
165
168
209
234
196
184
184
224
178
243
221
229
200
171
202
168
229
242
242
201
236
186
190
209
215
202
240
187
223
198
232
209
246
182
205
246
179
229
178
166
173
247
205
162
142
120
187
220
200
206
203
248
225
221
189
168
220
217
216
193
152
167
185
221
151
156
191
185
210
231
136
176
275
216
161
185
219
278
208
175
135
189
207
195
213
193
212
218
189
174
244
117
237
238
173
198
206
201
258
236
214
169
105
238
179
183
186
179
259
194
227
162
207
197
221
206
205
166
184
194
141
161
155
198
130
231
176
247
198
278
220
213
210
238
184
227
195
211
219
232
189
161
179
176
250
205
259
240
234
201
187
220
157
263
202
250
201
195
195
168
212
169
147
164
185
222
169
226
141
164
184
165
227
236
182
217
162
178
271
185
182
209
199
218
161
135
170
117
228
216
112
257
212
145
220
203
170
183
235
200
231
252
244
186
219
240
225
210
169
185
203
174
256
204
217
258
239
125
242
147
220
225
188
200
288
246
211
235
200
204
159
185
254
211
228
184
197
193
175
159
159
193
209
172
170
192
217
219
158
148
177
213
150
178
226
131
219
167
208
207
225
154
160
158
182
177
199
172
151
199
214
171
201
266
222
208
175
174
186
235
184
191
204
161
209
168
183
180
168
212
164
174
193
225
214
179
162
168
209
124
209
218
191
264
201
170
216
128
233
193
165
185
154
238
212
218
205
164
154
129
220
176
184
211
255
168
213
209
200
238
225
154
194
177
192
244
217
172
204
157
248
174
221
199
219
252
217
187
219
201
233
185
192
219
220
170
200
193
167
192
166
221
157
170
270
169
159
217
216
214
186
194
150
220
196
230
200
163
272
199
216
168
156
228
203
247
210
212
150
230
105
215
210
219
221
162
219
216
187
175
198
160
219
225
189
273
160
233
259
207
184
164
208
136
163
143
215
242
199
186
260
144
191
193
285
198
160
212
191
210
203
206
205
243
176
250
245
259
198
247
244
188
194
246
219
193
138
214
146
180
227
199
220
218
220
191
200
200
187
228
188
185
205
156
174
192
151
184
205
192
223
188
189
170
220
110
190
131
226
193
223
174
200
197
259
185
185
217
173
156
205
124
194
222
168
194
231
210
168
182
196
162
197
193
214
220
166
225
263
203
145
179
167
148
219
224
218
177
246
229
214
149
191
199
230
160
239
192
192
254
212
238
244
196
279
210
237
235
178
199
188
130
206
187
204
206
218
218
136
207
235
182
185
217
164
154
152
183
137
169
197
249
155
122
178
175
182
251
208
234
231
177
178
211
147
293
216
217
210
234
258
266
168
207
156
215
222
209
222
184
208
191
241
147
255
219
146
262
199
198
208
216
216
194
253
245
214
233
155
234
215
242
271
213
289
134
175
229
202
172
214
221
201
172
191
177
228
210
245
162
167
226
262
217
172
239
227
239
230
127
241
170
198
227
195
200
176
207
179
229
175
175
221
185
201
180
124
187
241
194
239
203
228
226
160
251
209
177
113
224
172
173
141
159
198
219
207
208
188
156
248
192
180
231
197
246
186
201
212
158
227
191
209
123
186
231
236
230
178
250
232
210
218
253
156
208
215
122
163
157
189
221
170
214
174
182
228
212
189
167
115
226
226
236
207
213
215
241
234
257
248
224
141
238
187
162
164
181
224
158
222
225
221
244
164
234
186
215
170
241
192
147
175
207
194
258
128
173
151
133
164
139
254
142
204
195
218
224
271
203
189
246
215
208
177
237
218
131
273
191
248
131
232
182
239
207
214
167
273
202
237
213
170
209
182
200
173
242
112
232
231
199
253
227
180
187
195
180
257
230
221
242
206
206
212
228
153
168
180
157
120
184
190
164
239
236
204
257
210
182
154
222
195
242
212
188
243
189
215
194
179
163
193
212
148
212
222
169
195
198
146
153
184
213
239
215
199
143
205
274
193
165
266
267
210
183
198
200
201
212
217
199
202
167
143
195
146
214
157
183
170
139
203
232
196
231
202
179
188
184
207
196
225
247
134
151
191
209
257
157
197
212
158
212
222
137
167
172
157
162
204
231
169
151
159
213
271
192
199
252
252
163
172
214
169
173
131
162
158
222
205
157
264
240
199
201
187
188
215
183
235
176
204
193
167
165
189
221
169
189
152
171
196
209
250
192
229
259
190
213
228
211
160
210
160
227
172
243
190
174
266
159
226
219
202
228
138
254
187
239
167
272
200
218
180
244
159
217
140
186
214
239
174
176
165
185
257
256
131
155
213
202
229
282
210
215
190
231
165
245
131
153
204
192
229
227
198
220
246
193
157
255
228
230
227
190
216
235
213
223
230
250
268
214
236
203
187
217
226
158
241
217
216
235
237
175
152
195
201
240
164
160
223
197
209
229
184
225
218
225
222
151
208
228
239
179
200
166
225
222
186
217
217
166
180
230
201
144
167
133
217
132
190
235
206
228
225
176
172
202
206
223
174
206
205
213
186
161
204
228
272
221
243
237
186
164
191
248
143
220
159
152
233
194
228
167
211
190
129
200
157
239
199
166
154
213
266
193
217
122
199
206
115
200
200
220
208
126
241
207
177
220
171
253
222
267
231
148
247
248
177
177
255
195
234
256
244
266
208
207
262
191
200
173
250
214
188
194
229
234
207
151
193
219
159
203
233
196
196
221
208
272
212
142
223
184
255
195
212
188
158
178
199
229
211
226
157
189
219
168
214
158
191
174
242
210
188
209
197
218
184
213
189
187
179
179
305
214
221
133
181
211
231
197
273
132
202
197
183
207
193
212
206
192
227
150
224
267
170
189
160
146
247
186
211
199
151
187
187
194
183
259
227
161
228
242
215
198
219
203
227
194
247
175
223
231
222
184
196
163
250
226
282
148
147
154
219
230
213
237
211
235
155
269
225
182
229
191
167
200
183
243
209
214
209
201
210
185
228
203
277
212
181
192
178
222
214
178
193
158
155
260
185
255
134
180
245
178
150
203
186
262
214
251
179
230
174
223
199
198
124
144
178
240
185
193
258
182
271
184
177
128
229
253
207
181
216
261
227
155
244
254
266
149
201
225
231
210
248
189
229
189
219
145
236
125
172
201
239
194
273
206
140
209
171
221
236
189
215
266
210
210
264
225
206
150
162
117
178
195
262
158
204
182
186
251
209
225
228
201
233
217
195
284
196
231
191
246
280
207
197
212
188
227
183
186
143
226
207
202
174
224
213
188
205
215
147
179
183
215
172
228
210
205
287
256
238
240
207
139
229
272
159
219
201
208
206
246
256
211
233
172
170
164
179
217
201
219
202
170
232
146
237
228
212
223
173
229
202
208
188
164
198
188
107
171
158
209
218
201
219
231
233
217
190
231
249
200
123
210
208
221
159
222
152
171
189
228
134
211
152
259
162
212
215
188
165
192
176
203
133
254
191
227
150
153
205
257
174
187
252
190
200
220
208
194
189
212
231
164
222
203
206
256
250
197
218
201
162
187
176
183
164
188
216
240
210
187
227
205
124
227
169
201
153
188
224
199
200
222
250
215
208
236
215
201
228
213
224
178
178
248
221
186
249
229
156
257
219
230
147
164
206
199
192
123
157
155
198
198
204
229
162
268
188
174
192
221
119
238
199
184
152
192
196
156
215
199
176
176
168
257
212
192
165
228
254
197
206
221
199
197
275
159
235
259
193
206
219
229
164
180
212
242
237
180
127
235
185
197
207
191
135
220
173
229
185
158
191
172
210
164
177
209
241
246
276
175
151
213
184
208
203
197
199
212
140
199
208
202
204
220
237
192
182
200
156
205
191
143
190
214
268
182
242
208
198
278
168
293
189
200
220
166
199
241
183
258
221
269
212
166
181
173
228
189
155
203
220
197
197
154
221
207
244
204
247
261
204
241
230
156
147
224
230
241
199
179
249
231
168
182
176
196
272
248
190
202
181
208
221
180
155
246
208
257
166
178
200
188
162
198
191
197
182
223
218
185
222
217
148
237
201
184
189
220
230
162
198
255
167
173
180
161
135
238
189
204
193
178
255
200
198
148
163
241
177
168
209
162
172
125
155
212
258
218
222
201
181
157
214
175
203
194
167
160
182
223
207
157
221
140
250
239
221
152
132
205
196
256
197
201
194
234
199
172
147
205
186
163
212
194
223
155
188
197
178
211
232
143
171
263
239
218
196
153
211
233
254
165
148
194
234
132
210
242
204
154
177
224
189
223
199
165
191
211
254
225
264
153
233
200
183
147
177
200
227
247
235
153
232
189
197
207
233
185
168
238
210
210
219
201
154
209
142
240
215
171
154
154
194
216
165
202
201
222
244
198
162
159
127
188
199
228
220
230
132
271
147
204
252
128
216
137
183
207
133
175
229
83
193
192
218
215
171
200
159
150
194
241
191
230
159
215
188
236
177
222
219
226
230
233
162
204
232
162
205
198
233
161
185
238
218
177
177
221
174
215
208
180
166
191
196
213
172
204
266
212
161
190
215
150
160
171
188
198
164
234
248
198
196
236
244
154
203
213
135
203
206
192
167
191
179
186
170
132
224
254
158
180
218
283
225
225
110
190
181
169
253
220
186
160
193
175
203
209
138
171
177
189
230
204
190
170
166
211
199
185
219
195
174
232
247
192
252
199
222
138
232
204
181
257
150
214
240
228
217
209
229
254
212
192
153
201
215
207
143
169
189
218
115
215
195
158
239
207
161
246
212
254
188
214
228
215
162
187
253
144
197
248
163
203
198
178
221
184
260
230
210
185
173
201
126
240
168
247
154
206
156
158
189
159
149
227
167
269
196
201
207
232
213
163
183
173
173
185
145
226
173
212
136
207
170
270
166
189
131
160
163
173
206
249
213
176
204
170
212
157
200
149
174
191
198
210
136
150
199
205
184
167
189
180
255
196
184
206
231
192
211
148
224
149
188
195
232
232
189
225
186
221
191
196
235
206
162
210
212
192
156
188
195
239
192
237
205
171
172
229
209
210
187
187
250
200
238
170
151
230
203
258
123
196
178
159
143
194
200
219
152
207
201
202
205
196
204
243
176
197
202
225
213
238
219
200
220
208
191
207
208
223
116
184
243
215
260
224
223
240
164
228
189
183
177
214
193
161
148
215
186
181
221
142
217
177
262
209
170
188
205
234
225
202
158
140
226
208
168
233
249
156
231
213
272
205
201
117
176
220
195
190
182
139
190
218
206
126
186
258
211
209
227
207
228
175
182
182
199
173
240
125
247
155
199
223
189
214
236
224
245
143
239
191
215
259
233
221
226
205
167
155
187
195
197
173
159
227
165
265
198
178
202
210
182
206
208
191
158
208
223
261
203
134
240
223
229
210
187
225
134
218
222
241
192
195
142
183
236
192
175
255
219
240
206
254
159
166
174
157
210
202
193
180
178
249
168
192
220
156
180
212
175
194
165
225
182
213
192
144
232
162
209
185
201
204
181
163
148
192
175
206
192
232
163
273
166
201
190
180
242
194
243
213
198
106
181
222
139
216
205
217
147
235
168
176
106
138
223
177
198
233
244
247
159
184
178
199
230
162
261
267
198
248
237
194
230
200
189
150
160
188
220
282
211
169
237
199
183
187
194
200
207
153
183
184
202
178
229
160
267
234
213
192
175
156
209
183
233
191
194
189
217
136
221
173
146
171
218
211
217
214
221
142
215
128
243
277
231
173
218
222
216
150
242
166
145
176
183
265
199
226
176
258
224
206
198
258
202
163
175
252
209
211
204
216
229
228
182
245
213
228
227
163
215
140
237
186
151
188
213
189
210
215
210
230
213
202
224
225
198
222
178
156
202
208
182
198
143
206
188
230
164
243
173
219
254
191
196
237
193
204
230
173
142
219
194
217
225
174
176
171
183
216
231
227
179
233
187
195
212
190
209
172
212
138
175
196
188
223
207
214
188
149
218
198
236
170
231
213
229
210
159
214
206
187
189
173
256
185
151
159
194
248
155
231
133
168
164
85
256
145
222
157
166
180
188
222
164
239
159
204
165
237
210
202
173
192
172
173
131
194
220
212
197
252
228
170
157
202
196
209
211
203
213
179
262
208
203
206
216
217
158
147
188
154
189
179
203
206
153
234
156
169
200
194
209
209
244
159
231
201
132
206
133
193
235
163
173
245
236
214
198
274
247
165
157
182
257
150
196
162
241
161
198
224
200
222
157
106
226
191
128
216
215
176
169
123
193
219
124
221
213
209
151
169
232
217
242
126
225
157
223
230
222
222
165
204
232
141
157
232
209
177
256
168
228
171
251
131
138
200
179
229
172
155
210
196
200
167
161
210
240
123
245
186
140
175
217
237
245
168
204
222
278
219
144
171
229
172
240
151
204
217
205
238
187
235
248
227
232
165
190
162
200
199
201
154
211
230
247
247
173
193
233
218
223
227
220
256
242
247
207
192
258
142
195
105
194
138
235
165
193
245
242
217
87
131
253
223
171
209
196
197
206
206
262
191
215
169
235
172
220
232
201
193
257
185
260
261
130
221
163
230
178
177
182
169
156
207
263
200
268
161
242
177
205
261
170
255
179
247
187
194
170
144
177
243
243
189
200
215
146
204
223
150
243
251
207
185
165
226
136
242
171
217
239
208
250
225
180
195
156
215
242
150
230
232
176
222
220
213
217
227
190
163
210
235
202
167
239
277
219
166
223
175
186
165
189
109
166
254
136
223
190
179
235
198
193
252
254
224
235
170
223
194
198
196
175
245
140
229
247
240
152
203
227
111
218
194
225
209
232
170
202
231
227
175
236
145
257
144
194
200
219
204
193
237
210
200
207
182
218
183
243
119
158
172
159
187
240
140
188
219
187
193
162
167
176
189
205
212
201
181
149
202
229
173
150
205
198
243
164
157
184
252
231
251
224
222
214
172
187
169
162
175
205
186
243
170
275
177
259
157
210
273
247
221
165
218
204
176
142
185
173
172
241
204
256
253
243
246
183
185
174
197
218
163
206
228
259
147
203
185
146
231
171
167
214
209
260
205
197
140
210
188
170
192
187
96
227
186
210
181
259
188
170
240
217
154
235
198
191
219
173
235
192
157
188
231
208
225
208
172
237
212
213
171
201
197
230
233
202
206
177
212
209
226
142
231
157
211
247
159
169
183
185
236
214
213
193
136
240
173
178
195
260
179
221
210
212
207
190
224
192
220
211
262
130
198
186
211
204
227
223
215
191
215
264
179
155
185
235
189
244
186
212
217
136
216
192
161
228
202
193
252
184
202
149
206
170
219
174
148
190
188
201
221
250
222
205
221
202
237
177
250
228
206
158
219
221
222
222
222
185
162
215
167
193
217
206
199
184
199
235
232
249
189
192
162
185
153
206
260
177
239
194
241
218
168
233
203
221
187
221
163
153
213
196
224
215
161
169
202
178
239
215
208
167
225
224
151
229
257
219
262
200
219
166
214
225
176
189
232
199
120
144
257
248
197
216
142
167
203
194
176
256
250
243
207
234
199
209
147
181
160
223
172
112
179
217
311
209
281
191
201
202
205
200
213
197
245
193
174
207
219
206
185
201
285
192
152
228
197
177
244
223
189
186
155
220
229
124
171
162
167
149
169
162
153
191
207
248
186
224
174
187
175
160
217
243
196
164
208
182
218
250
210
250
212
186
169
183
173
235
209
127
228
174
203
248
175
159
161
219
108
197
226
213
206
207
185
247
220
231
213
234
189
194
205
220
166
224
224
144
228
229
168
161
251
188
239
220
206
205
122
219
187
222
190
235
174
148
247
289
236
209
185
140
202
180
208
237
189
184
202
254
256
163
143
170
119
244
242
184
187
221
155
238
236
195
188
239
218
234
226
204
243
162
221
180
186
205
206
180
182
151
261
203
212
166
173
211
238
227
205
186
214
230
244
262
199
219
141
131
217
195
234
145
183
228
226
198
234
181
159
198
273
198
284
228
187
155
231
233
189
231
173
164
203
224
192
155
167
163
133
256
206
141
157
198
204
262
231
218
205
262
180
256
197
238
192
226
247
196
216
197
180
206
194
220
153
179
203
228
182
190
259
181
249
209
197
110
231
178
131
239
195
215
190
195
211
159
192
188
210
179
190
216
205
244
164
183
155
142
259
191
233
199
183
160
134
171
177
209
152
201
244
207
188
190
183
178
228
279
203
166
180
189
166
240
221
155
172
231
226
260
189
190
177
205
192
241
118
197
179
218
144
244
181
197
208
191
223
136
238
169
164
181
143
218
156
214
215
251
138
221
177
194
204
202
265
187
224
171
197
218
214
236
215
125
232
247
159
226
221
217
176
151
194
159
227
179
184
223
205
201
227
165
182
140
198
211
237
206
233
169
245
182
209
212
199
194
209
214
154
204
186
227
167
155
211
189
208
228
167
208
251
171
212
230
202
219
275
157
177
225
217
189
209
178
159
207
205
251
239
224
205
206
217
232
203
205
191
225
133
208
203
164
168
207
195
214
151
219
241
215
123
222
184
243
172
126
219
188
189
249
158
129
212
208
143
210
197
243
226
234
199
183
212
189
174
239
181
185
163
223
206
214
210
179
241
221
183
231
252
214
182
199
193
210
255
149
161
179
203
169
173
202
231
203
231
140
217
189
204
174
176
239
151
217
186
225
180
227
240
179
207
214
201
227
221
121
241
240
206
170
121
192
231
197
195
226
230
224
250
172
209
167
155
203
238
173
155
272
153
218
141
217
218
189
257
171
204
203
172
220
143
154
196
199
190
249
234
159
224
211
188
193
260
165
204
201
239
167
199
265
273
174
244
205
232
225
152
159
253
170
240
188
204
207
258
223
225
190
226
251
186
185
260
151
203
210
219
244
156
142
227
193
152
274
191
209
223
190
185
184
207
193
179
218
204
228
147
217
228
219
170
201
233
267
246
226
182
189
192
203
219
170
222
153
172
173
224
201
223
204
220
235
178
244
215
241
211
208
167
203
194
157
255
236
248
240
210
212
209
213
213
188
203
221
185
231
203
234
249
228
176
184
206
200
160
198
212
174
244
212
232
207
205
181
212
240
210
207
162
211
182
193
272
184
251
231
191
189
242
177
267
214
216
174
211
156
173
236
152
178
212
143
231
178
165
96
229
265
171
194
174
222
233
210
181
205
224
208
195
115
208
200
183
163
162
199
247
209
257
203
216
177
215
234
224
223
243
238
172
240
167
214
153
211
218
200
158
202
138
251
178
207
179
102
189
144
215
245
213
156
210
185
195
211
215
150
227
166
118
215
191
236
184
212
221
193
247
227
247
196
166
207
206
171
211
199
175
179
149
171
169
82
174
153
197
260
194
196
170
263
148
124
228
165
179
211
247
200
238
204
181
221
190
220
261
261
169
163
200
212
258
195
179
200
199
152
213
226
168
268
156
180
236
164
164
241
203
153
215
205
161
247
144
210
193
205
204
212
189
241
176
197
265
205
145
203
229
203
169
231
198
202
210
246
183
165
262
202
151
204
195
220
199
191
202
227
234
202
176
218
173
217
174
241
92
196
236
203
204
201
253
241
251
200
174
207
209
291
164
234
171
218
163
178
232
225
180
217
202
190
212
160
191
237
225
233
240
246
182
224
185
204
184
105
158
167
208
209
143
225
221
204
199
220
227
288
174
226
226
252
190
224
224
182
181
191
178
188
129
178
195
176
232
197
179
211
231
189
169
218
207
206
210
206
205
197
187
215
246
214
163
238
228
183
181
172
197
196
174
209
212
162
209
126
178
224
188
186
182
151
228
183
199
244
235
200
219
231
186
133
196
229
254
171
198
196
164
233
193
259
246
224
179
206
183
219
227
189
249
229
231
146
148
224
204
179
207
140
212
190
204
195
193
278
192
200
250
162
174
202
163
164
263
181
211
225
192
139
190
141
144
220
239
221
144
195
249
111
209
200
153
202
179
205
184
153
213
249
218
182
193
228
254
187
154
157
251
263
244
194
246
222
220
146
185
219
182
179
161
262
203
193
180
206
231
252
175
152
181
208
185
194
252
146
222
221
221
210
134
196
149
188
165
233
178
171
190
251
191
215
216
176
219
195
192
165
206
199
206
218
203
156
226
208
164
215
165
233
198
211
207
117
247
216
237
262
205
191
151
234
232
226
183
195
224
243
220
235
164
173
156
233
184
238
242
185
231
182
182
191
240
163
178
199
233
171
114
195
210
244
195
254
180
169
208
236
224
139
152
202
225
222
236
123
190
189
144
281
115
219
186
201
207
189
263
211
184
186
237
217
251
208
189
143
158
188
197
226
183
212
187
299
253
225
184
218
258
178
145
232
200
159
211
223
181
150
132
159
234
239
212
219
216
184
225
232
166
149
206
149
224
203
142
144
169
184
264
190
185
209
178
159
172
220
197
208
294
209
140
200
248
157
163
228
251
215
164
204
166
187
184
208
193
213
179
233
225
279
195
210
217
169
221
246
256
232
202
222
201
259
194
176
213
158
223
238
203
208
181
182
233
198
239
230
233
171
206
188
164
239
158
184
193
195
222
255
204
210
203
230
151
205
269
195
188
220
267
213
202
202
204
161
163
200
145
206
243
205
198
139
234
209
215
122
174
242
190
232
186
190
180
186
248
203
226
174
203
225
199
220
240
174
232
174
228
197
166
203
173
157
197
186
170
183
222
186
185
169
254
127
220
172
139
189
158
165
186
217
218
197
116
197
223
135
212
275
193
235
116
170
164
231
146
244
196
169
216
182
202
200
243
199
168
193
238
248
242
184
184
177
206
186
151
202
176
237
264
165
227
166
162
154
191
164
218
170
193
219
190
159
161
221
98
270
182
188
224
196
239
190
217
138
207
167
201
207
186
165
261
191
188
192
181
200
233
180
196
182
142
187
185
180
214
225
188
182
232
214
212
213
184
177
196
246
171
143
221
214
217
151
219
248
195
187
178
196
222
221
184
237
150
166
253
163
211
212
181
198
153
161
152
180
168
199
234
176
234
211
225
208
96
256
162
203
166
201
240
209
246
246
251
165
134
229
235
227
214
255
173
195
235
186
178
221
185
247
233
176
193
157
201
169
225
261
194
248
195
238
141
207
156
203
194
239
211
235
145
172
150
192
194
210
183
177
184
238
190
195
138
168
194
229
227
111
155
142
226
228
208
156
141
223
202
189
206
232
188
176
221
204
189
210
195
208
236
202
240
218
223
250
227
192
217
167
193
182
173
185
193
189
207
206
211
221
167
150
204
218
220
217
165
132
209
146
156
226
237
229
214
186
230
197
226
175
233
215
158
155
219
207
197
197
140
244
193
187
168
213
185
170
177
175
228
266
177
212
201
233
198
214
228
206
199
239
199
170
145
194
135
221
188
133
215
191
231
189
201
250
211
150
196
208
252
144
203
235
265
202
125
227
195
167
255
190
217
162
189
206
181
184
121
224
168
179
175
243
230
202
171
221
230
141
163
213
195
191
225
237
189
169
191
251
234
116
206
190
221
175
226
253
236
166
219
150
172
168
179
189
203
196
218
203
236
215
158
234
219
186
209
184
184
240
237
211
200
139
232
253
212
210
190
168
188
205
204
272
181
168
188
158
199
220
166
205
199
120
213
162
247
206
181
195
173
237
214
259
181
188
195
206
181
129
159
152
175
215
207
223
215
256
182
205
204
196
234
205
190
202
247
218
149
226
150
282
232
177
152
220
194
197
180
227
199
176
191
208
141
244
203
217
175
239
241
155
178
178
221
213
174
235
269
198
186
182
146
214
163
253
197
196
195
161
230
176
216
254
235
257
230
199
256
227
184
177
171
193
222
269
216
191
174
180
224
192
171
202
283
212
201
251
224
237
247
218
222
247
133
167
179
239
202
185
189
184
155
192
257
201
240
212
230
178
174
213
140
226
207
204
244
263
188
262
187
193
193
230
213
162
230
231
243
168
187
160
207
196
200
221
217
246
185
171
215
193
202
189
173
170
235
176
187
189
156
206
240
266
175
223
228
176
184
186
188
177
196
192
218
200
224
207
142
128
172
121
201
278
202
233
238
232
243
263
266
215
175
196
216
195
247
193
180
219
212
195
153
198
192
272
230
152
212
214
188
187
177
200
155
201
138
226
214
193
207
181
207
210
174
240
187
259
215
178
221
249
250
206
201
106
174
217
190
223
206
171
240
222
233
187
145
201
125
149
224
199
188
239
202
222
184
179
189
213
186
190
164
216
175
204
232
211
225
215
201
184
185
194
198
160
156
245
237
195
150
163
218
198
206
236
220
188
246
196
185
159
195
143
204
169
225
252
112
210
153
204
218
198
177
252
181
209
219
138
287
192
198
167
183
204
225
167
188
173
201
208
150
215
224
159
155
209
233
165
195
193
133
219
229
165
178
202
208
270
220
224
232
204
188
176
137
235
198
189
200
215
175
204
212
189
123
186
222
207
205
191
244
265
167
235
199
195
148
209
209
157
211
161
164
185
224
222
176
228
226
150
157
206
162
202
205
176
214
203
193
220
153
187
202
179
188
149
163
263
204
259
197
185
232
181
151
152
221
190
162
174
196
188
219
172
198
205
182
255
230
231
198
165
258
277
238
240
153
199
216
169
187
169
215
220
206
228
157
207
182
209
180
176
130
189
222
163
159
209
165
142
228
209
157
228
231
173
234
198
248
231
193
220
197
164
204
140
181
262
201
204
164
243
201
256
199
197
239
172
164
183
215
174
209
257
217
202
157
149
218
231
235
240
149
244
215
127
233
195
241
204
231
244
228
216
162
192
247
211
209
241
221
172
179
207
135
231
188
196
138
234
242
193
185
239
185
221
200
236
159
146
241
240
187
269
225
233
200
161
157
165
118
180
218
200
199
211
272
203
208
174
219
206
166
191
215
221
145
261
199
192
252
212
184
243
236
216
172
187
197
180
119
209
151
165
236
190
163
142
243
168
219
263
222
131
234
172
206
223
232
224
187
205
232
259
226
213
224
212
204
207
221
235
179
206
234
202
220
164
209
222
210
272
213
191
238
205
185
245
235
157
189
246
201
260
166
238
204
166
202
217
189
217
179
195
209
243
216
219
237
187
221
212
265
183
198
186
208
242
180
244
227
271
191
178
171
183
217
149
221
198
147
169
215
281
222
236
203
178
219
219
237
222
197
202
192
246
203
215
253
182
170
192
204
226
267
161
181
148
222
177
215
179
186
211
225
193
204
184
213
183
190
232
215
197
137
250
209
277
174
232
196
232
170
237
225
107
217
170
233
176
166
205
187
248
209
110
197
215
248
234
258
240
190
228
189
202
266
205
165
230
185
181
170
158
194
159
199
187
225
224
232
261
213
198
188
200
235
206
267
160
228
187
207
267
159
164
220
245
202
177
217
202
214
199
185
206
195
186
223
194
162
233
238
239
140
182
212
191
248
187
156
218
198
200
142
142
241
277
197
169
197
153
219
213
201
218
191
207
186
265
245
241
255
225
141
152
213
215
226
211
128
247
220
184
180
157
199
156
151
217
217
226
208
133
186
260
209
209
166
199
216
199
239
216
234
168
171
238
170
210
230
181
188
171
218
195
171
181
250
231
197
266
197
197
253
250
236
197
231
178
225
213
219
166
203
212
251
172
168
250
174
166
229
256
176
174
198
208
169
196
196
222
243
223
206
218
214
257
262
214
219
220
228
211
221
171
227
158
197
196
207
246
250
165
209
207
190
249
253
226
148
151
198
183
218
210
250
162
194
205
228
230
204
200
225
205
155
256
180
285
178
251
129
250
143
228
135
236
203
202
206
147
199
200
203
152
226
227
201
238
165
225
225
201
256
176
167
273
222
227
189
187
213
167
162
215
223
225
214
203
237
160
250
192
215
224
223
129
200
209
187
156
172
193
234
217
237
164
237
241
272
161
188
206
183
215
165
202
248
189
233
227
194
204
171
219
233
205
192
180
152
243
171
142
248
151
212
204
242
209
167
216
215
227
215
225
190
216
152
163
150
187
184
190
218
175
185
175
252
189
157
182
233
170
152
231
174
207
247
215
240
229
182
208
194
233
243
212
229
203
232
241
194
212
193
229
180
193
217
179
226
199
224
244
234
246
232
156
167
248
229
235
195
178
203
241
252
183
154
242
161
263
194
208
204
144
167
194
126
138
145
225
138
223
174
249
218
233
164
211
151
244
180
150
155
164
184
245
183
206
262
194
275
188
238
157
185
229
210
145
179
271
157
184
187
186
212
247
231
157
157
168
160
194
172
218
201
240
245
239
172
183
211
208
224
225
188
184
175
196
245
186
226
137
202
200
257
203
157
204
157
258
248
251
223
173
125
214
206
175
238
191
159
102
178
199
252
227
235
254
185
196
198
179
176
190
164
207
162
109
228
245
201
185
209
179
128
228
218
132
204
221
235
244
176
145
155
154
131
251
179
185
217
192
222
219
164
219
217
107
218
228
221
212
163
203
211
180
204
248
201
214
180
215
175
219
161
196
176
255
265
188
226
211
183
206
211
157
233
140
216
164
205
221
209
201
168
204
147
186
230
175
195
203
170
217
174
188
235
161
188
150
219
146
178
221
218
207
226
162
229
213
191
182
177
186
185
189
137
169
167
215
209
163
212
209
177
229
211
189
210
193
190
167
230
199
276
238
187
253
192
196
222
149
212
186
168
210
209
208
234
237
156
214
221
194
215
235
212
246
251
245
188
188
162
189
206
196
203
128
204
239
183
197
172
161
163
227
202
252
202
190
168
239
120
203
147
177
210
227
239
226
258
176
199
198
227
142
197
166
241
192
196
228
186
218
218
146
122
239
200
202
214
226
179
181
257
224
224
214
201
201
162
103
242
162
169
239
135
207
159
200
217
176
233
222
238
219
212
192
221
223
206
160
156
209
208
247
174
258
227
219
245
238
199
203
224
176
263
197
196
172
235
138
181
179
218
193
235
152
185
181
152
227
206
184
147
178
165
148
233
214
230
157
221
210
179
183
220
220
215
171
193
193
232
203
230
213
222
230
258
171
178
240
164
144
178
203
157
247
244
204
197
195
197
140
185
254
201
240
203
173
128
214
276
175
198
190
231
240
193
144
192
173
274
166
188
269
238
198
153
178
139
190
180
275
159
251
188
231
171
204
185
224
184
189
173
247
265
205
265
192
205
202
227
170
197
188
179
225
193
209
210
208
200
208
221
221
228
213
191
220
285
232
162
227
152
162
194
189
264
222
208
187
234
188
203
174
203
200
159
251
204
238
180
183
211
211
164
184
198
210
122
187
179
198
236
232
243
214
174
163
169
176
128
215
203
176
234
170
189
238
170
216
197
229
191
222
185
165
210
173
213
159
261
192
235
220
211
173
246
151
208
193
229
205
153
160
225
180
205
208
167
235
160
209
249
225
212
264
191
159
200
169
179
196
260
251
191
242
193
214
256
181
134
180
136
183
208
140
232
215
228
206
216
211
175
233
172
175
194
177
158
234
224
213
230
133
213
210
170
135
184
196
202
205
224
195
226
231
181
186
120
216
271
230
167
178
218
202
231
215
184
214
159
112
150
195
262
235
231
198
245
222
182
149
196
213
149
217
183
218
191
162
148
243
175
175
253
218
186
157
127
235
242
187
182
176
260
239
218
228
161
214
225
248
187
159
153
281
177
147
170
142
216
155
166
231
257
201
195
180
190
212
166
190
223
233
169
258
214
158
183
274
176
255
178
222
253
228
175
187
168
171
187
243
180
183
202
169
188
231
190
185
162
188
257
203
197
149
134
250
174
205
196
179
213
151
259
188
203
172
201
229
226
234
268
194
193
179
212
213
227
256
151
236
246
215
205
203
189
190
240
235
221
133
212
268
230
188
228
194
221
157
203
137
179
186
191
240
230
256
166
186
220
227
130
158
159
233
241
211
159
202
207
186
261
175
209
258
193
208
189
240
216
203
164
122
270
210
240
187
212
165
191
230
183
173
251
177
240
246
159
215
210
189
243
232
210
149
223
220
215
187
250
251
229
167
221
213
207
211
162
190
166
255
218
241
178
224
190
198
203
157
235
160
193
199
199
206
184
187
197
261
202
193
255
223
193
237
196
169
188
278
230
240
228
177
264
213
219
171
221
237
176
219
206
202
184
192
225
164
217
218
178
237
232
209
120
148
156
242
268
213
191
187
197
157
238
190
219
186
240
199
161
202
159
225
207
186
142
185
161
207
223
262
171
202
168
178
156
176
167
159
233
222
222
147
220
189
204
186
229
167
194
167
196
207
220
195
119
240
137
257
213
220
200
216
257
220
203
234
227
194
228
214
177
249
148
235
184
197
185
238
196
201
143
239
180
193
193
146
225
213
186
166
224
220
213
200
210
237
212
184
214
136
135
172
210
204
227
243
218
207
168
264
252
219
178
209
181
193
213
190
205
247
199
138
231
169
232
207
194
230
192
247
182
216
170
218
225
225
187
257
203
151
193
185
176
228
129
227
209
227
239
196
209
252
198
263
171
257
180
188
180
229
232
234
173
146
208
129
201
195
158
262
202
201
214
222
213
239
165
250
164
216
134
196
245
163
154
232
122
215
207
237
154
178
229
242
185
222
227
167
164
242
214
238
227
197
192
221
221
206
191
235
207
177
193
219
173
191
228
159
140
177
165
224
142
176
155
197
222
210
250
189
210
287
103
208
212
233
215
175
216
257
206
184
155
225
253
222
190
208
146
157
179
146
212
102
206
193
230
214
234
260
210
147
171
213
221
249
261
237
214
236
201
263
175
181
242
151
238
227
207
256
138
179
202
223
214
228
206
166
222
113
246
178
236
174
192
280
181
160
201
180
183
217
176
222
170
179
220
192
156
235
165
181
194
191
165
193
142
177
202
249
236
200
218
170
211
164
135
228
132
163
248
145
164
157
193
200
261
195
193
182
142
224
206
258
176
168
163
172
248
199
201
112
233
207
193
228
191
233
247
243
179
181
215
211
213
96
222
201
253
230
217
229
211
260
173
235
176
207
231
238
192
204
201
230
169
206
258
260
169
260
144
229
162
172
213
253
215
201
226
269
253
164
124
237
220
199
164
221
190
243
203
142
211
167
173
203
175
275
242
220
142
230
269
167
179
217
200
225
176
234
214
260
208
188
202
240
206
139
180
165
181
181
187
195
143
205
147
183
176
207
159
154
189
221
251
184
219
138
205
193
166
161
227
185
195
200
170
258
158
198
189
166
193
236
229
254
198
180
214
190
155
223
232
222
189
197
191
178
193
274
198
203
228
219
189
173
247
228
186
241
202
261
248
197
229
253
157
202
253
163
202
192
189
148
256
222
202
179
193
155
186
202
209
237
218
131
225
231
232
180
206
241
227
214
239
207
187
233
203
150
193
176
174
211
188
167
180
196
236
228
196
182
203
222
201
246
161
220
170
232
186
241
172
218
246
199
227
192
182
188
180
203
173
199
300
168
192
213
220
165
124
248
259
232
189
256
236
259
218
209
179
201
203
189
218
217
244
217
255
194
191
209
245
208
253
134
92
148
211
247
222
168
250
139
174
223
226
194
107
170
191
285
213
155
205
177
118
169
118
206
148
202
193
166
206
165
205
200
168
262
148
136
241
168
249
250
224
280
166
164
196
225
203
191
225
216
216
186
202
263
201
165
179
213
193
200
245
184
208
244
165
273
217
242
240
208
255
262
216
186
170
147
171
182
157
190
220
255
216
247
160
226
166
211
209
162
217
190
229
220
245
230
202
158
218
232
238
163
223
174
183
196
257
209
155
260
241
189
168
150
146
183
194
236
176
227
234
170
173
187
213
208
240
225
202
159
245
213
156
134
166
168
227
217
251
173
174
188
264
176
177
261
250
263
203
253
262
178
119
150
235
202
212
204
139
122
223
139
184
189
200
206
141
206
181
177
212
211
196
237
164
233
224
215
150
173
213
138
194
212
215
238
198
201
229
215
175
279
138
280
211
154
266
183
232
195
223
126
216
279
213
176
187
268
214
201
196
232
223
222
203
221
148
182
217
182
191
245
216
237
199
215
215
132
176
229
194
184
189
168
170
248
202
160
229
153
233
181
188
208
142
189
184
208
163
217
210
179
212
175
242
204
195
196
163
192
191
161
154
202
217
215
212
135
225
167
284
204
243
212
153
212
182
180
145
213
196
192
251
111
243
223
175
173
162
172
192
229
215
156
194
197
206
164
165
272
141
218
163
194
171
210
224
227
204
259
190
164
258
186
171
257
194
198
122
189
205
223
213
235
195
192
139
220
143
183
234
242
185
221
253
264
166
170
211
145
183
215
235
190
159
216
231
213
214
217
210
179
171
178
175
139
222
287
264
214
135
144
232
193
211
238
200
196
231
204
213
229
189
180
250
213
208
195
146
250
207
191
196
182
219
216
227
203
219
188
185
213
205
239
222
204
190
224
252
225
113
199
204
149
191
190
225
194
218
158
183
124
190
201
205
163
166
253
280
199
193
286
159
146
195
258
190
196
195
209
248
235
159
203
204
224
235
242
198
206
205
240
182
231
171
173
202
155
192
236
226
239
206
240
190
231
139
184
224
221
221
194
217
251
182
174
154
226
236
239
126
177
249
147
180
162
206
204
240
268
180
201
207
268
188
137
202
138
243
222
139
203
217
194
231
226
193
196
205
242
176
230
237
137
189
242
204
212
217
227
245
235
218
217
213
177
213
205
197
232
191
241
153
174
185
180
185
182
146
236
232
251
190
229
205
270
209
201
277
218
186
251
161
189
146
197
216
217
210
224
139
247
186
192
105
219
250
234
232
200
237
180
174
117
205
190
216
282
170
237
203
156
235
168
177
222
135
153
173
174
162
139
245
188
249
187
214
220
134
229
215
251
209
163
258
268
237
204
240
197
162
257
155
173
177
147
177
176
172
174
152
229
168
245
164
204
210
176
195
278
237
196
162
198
181
225
221
216
180
212
206
182
192
184
214
170
212
242
270
127
238
206
218
181
216
204
206
190
239
167
216
215
220
167
232
141
207
249
119
250
219
184
247
205
210
198
180
178
181
139
244
235
218
234
187
216
245
171
170
181
182
217
119
231
230
226
180
233
175
208
198
134
271
203
177
253
171
188
178
174
203
164
212
226
231
225
204
192
244
244
219
219
198
185
168
216
192
213
174
211
163
196
202
225
168
226
221
212
235
213
260
199
137
236
198
240
190
169
240
184
199
206
188
251
172
227
230
159
209
219
180
179
156
209
234
166
264
226
250
236
247
167
218
163
247
157
165
178
139
233
158
198
158
223
157
134
221
206
123
221
194
230
246
180
207
227
174
220
191
209
225
167
240
184
269
158
242
189
201
215
174
162
215
189
250
123
217
225
267
167
229
129
192
162
217
195
190
181
204
257
185
192
268
219
205
150
185
138
139
202
121
163
212
202
201
205
122
259
179
222
211
174
229
211
207
213
256
191
257
196
163
203
229
176
242
263
236
239
205
143
216
213
265
222
212
147
274
177
198
155
165
225
221
253
150
184
221
235
197
232
181
215
213
229
59
228
151
194
164
160
176
196
241
188
241
179
222
167
232
226
199
170
195
250
177
185
199
208
254
174
203
172
223
218
176
179
255
238
198
227
224
172
229
275
149
211
169
212
196
188
141
189
239
196
145
229
175
146
216
198
169
119
233
232
218
220
210
205
266
192
166
180
187
205
167
187
246
196
203
245
148
188
199
238
152
270
194
204
154
218
197
168
166
219
131
223
230
213
254
214
185
176
200
230
202
222
171
162
103
173
193
219
172
282
160
217
128
250
210
188
243
215
240
165
180
233
212
166
229
210
215
190
272
231
139
182
216
232
191
191
218
202
163
231
207
197
210
209
224
193
223
211
230
210
217
272
207
204
277
228
201
181
213
206
201
240
163
161
206
204
235
229
166
186
264
212
196
202
208
202
208
274
223
197
191
152
240
179
194
246
221
205
164
132
184
204
205
211
251
181
234
240
246
164
158
209
202
193
198
210
202
170
249
231
179
208
214
249
232
211
244
237
193
181
197
224
204
192
193
189
176
246
247
249
194
173
191
168
209
223
188
249
171
133
184
169
172
241
192
203
199
212
165
199
199
211
164
230
186
205
174
236
219
219
236
163
228
173
189
190
234
247
196
261
278
235
176
197
125
175
193
225
215
193
161
199
199
209
227
247
172
247
179
218
206
194
193
165
135
206
132
181
194
201
197
182
212
215
190
171
123
225
221
227
159
156
192
189
243
163
211
166
248
192
150
140
234
190
136
154
202
190
123
150
236
157
217
192
178
131
228
242
154
192
225
283
241
237
214
175
248
206
180
193
224
201
251
199
256
173
231
202
189
210
234
174
122
252
218
221
207
211
189
172
130
199
136
214
199
203
225
128
245
263
252
133
240
177
157
186
247
142
166
201
245
198
220
217
180
243
195
159
198
197
148
178
170
195
186
154
231
221
255
202
214
177
252
224
180
208
231
225
194
151
203
172
169
155
246
173
151
193
182
224
240
197
238
182
171
189
201
245
183
195
206
268
214
193
227
210
201
167
162
192
219
215
184
262
183
197
167
198
274
170
241
183
217
232
120
234
253
217
201
218
251
164
204
153
183
178
194
195
241
195
188
184
217
221
234
209
198
203
238
238
194
177
144
220
192
203
180
200
235
249
192
181
139
166
212
246
217
180
204
246
228
197
178
213
231
154
238
153
223
243
242
148
179
134
185
207
202
220
157
151
210
152
219
158
181
179
170
142
242
157
172
189
196
168
205
273
198
220
133
156
162
204
211
181
213
207
207
164
179
143
205
190
205
291
234
209
210
175
202
208
208
179
164
163
144
170
147
156
200
248
165
216
266
224
214
178
209
178
169
233
175
175
254
227
166
177
234
239
205
191
219
195
161
211
160
168
172
182
173
188
169
214
166
193
217
226
208
215
269
206
236
182
137
230
215
237
173
214
263
217
247
220
240
236
142
203
177
131
229
214
205
221
186
179
163
209
216
216
186
222
197
159
223
151
233
149
205
190
200
196
182
187
200
134
185
200
194
156
215
203
262
163
234
167
177
245
255
177
176
144
243
205
154
217
227
117
173
223
164
257
216
249
234
214
213
259
164
200
274
114
179
215
147
196
223
209
266
192
160
221
192
262
229
198
160
178
225
193
210
199
222
185
124
182
231
186
242
214
217
231
189
248
234
163
199
206
144
200
227
219
193
213
171
178
228
233
181
129
200
176
187
160
210
224
189
216
235
269
153
172
203
198
119
221
208
150
231
262
209
231
247
168
200
246
176
215
239
217
232
255
181
178
241
230
176
223
221
178
147
223
170
197
161
206
152
220
224
233
200
214
186
210
191
231
160
223
286
257
241
122
191
205
242
196
206
242
177
201
219
210
220
212
218
176
221
165
196
190
171
206
216
188
177
214
228
219
155
178
163
240
200
201
211
178
122
216
228
170
155
224
219
211
212
151
211
210
188
161
198
215
125
213
204
281
189
183
180
208
151
139
255
199
195
189
272
164
157
235
194
178
257
154
232
246
206
190
211
174
185
189
210
228
211
170
213
151
167
194
146
272
201
229
207
169
226
139
161
194
135
152
220
200
106
229
161
211
212
150
217
262
189
184
209
242
223
273
226
220
238
234
234
224
216
245
138
269
172
200
179
217
259
164
206
172
187
259
192
210
254
214
236
180
188
215
247
204
195
142
181
205
208
250
235
205
233
225
162
131
195
164
202
187
235
236
239
226
224
170
206
92
219
241
208
197
214
258
172
211
177
197
168
156
177
164
186
188
150
230
196
219
170
211
234
210
210
206
243
131
263
239
150
150
173
174
272
205
204
196
214
219
245
220
196
216
220
123
204
226
169
232
177
252
183
213
180
246
165
253
211
203
178
217
232
208
189
196
236
219
223
149
188
127
186
165
251
186
211
130
192
230
215
182
163
197
205
272
184
210
205
193
271
227
199
163
178
230
206
144
184
302
175
184
192
205
250
183
197
181
146
172
175
150
265
217
185
184
219
171
199
144
196
155
127
194
217
223
176
215
192
220
212
160
227
210
190
161
208
146
165
261
223
204
219
166
116
132
139
141
213
167
237
194
200
160
128
226
181
279
183
232
201
222
261
227
190
211
231
193
208
239
238
200
254
139
200
157
212
188
192
235
201
133
200
210
214
177
207
231
217
172
214
235
212
231
194
155
199
222
211
200
185
198
268
167
249
222
206
146
279
133
230
171
217
180
224
90
179
207
230
224
228
141
233
189
223
142
213
225
125
126
194
228
229
201
253
211
237
235
165
223
169
184
185
254
199
219
211
163
199
245
155
196
233
209
234
201
149
208
233
133
184
206
234
166
226
215
169
204
201
246
235
235
228
175
206
197
151
218
116
219
221
199
200
195
177
209
207
203
215
258
255
201
230
194
210
135
231
187
196
180
214
210
150
209
185
205
175
205
220
208
232
154
241
183
195
234
223
195
203
234
154
199
256
195
232
187
193
194
139
157
199
185
180
161
230
136
169
235
189
201
160
166
226
132
211
170
157
232
191
155
217
191
128
184
173
215
200
173
168
144
195
215
170
158
187
223
183
230
219
214
203
222
181
204
205
194
195
199
173
185
194
184
250
237
225
161
212
230
204
217
277
271
201
193
117
228
218
186
127
198
188
226
146
166
169
200
194
161
229
241
177
201
250
248
175
225
137
221
285
247
205
188
224
182
218
218
211
132
182
215
193
150
186
202
197
215
204
168
247
171
212
234
182
132
234
155
191
179
243
154
199
160
238
170
218
229
138
251
194
185
211
208
186
152
131
186
200
169
220
216
199
190
197
250
150
183
218
244
183
162
201
247
209
211
245
177
214
146
166
243
204
223
214
212
182
159
230
211
234
218
244
138
177
236
198
218
209
235
168
182
150
130
215
247
180
267
200
197
204
208
150
159
212
174
180
208
194
200
213
237
226
113
228
235
232
209
137
198
170
179
189
231
177
189
178
192
159
127
226
162
194
202
167
200
234
257
189
201
194
210
235
263
236
188
222
177
142
150
177
155
232
211
232
209
245
225
221
198
167
267
178
244
237
153
165
206
160
207
212
243
235
252
172
219
194
158
281
191
194
255
217
214
159
248
285
226
132
216
202
230
253
120
282
231
188
205
212
184
202
192
228
179
194
142
221
268
186
183
238
261
234
214
167
226
207
170
131
185
173
179
213
245
169
156
133
249
163
255
132
190
243
230
172
181
207
149
222
185
189
189
239
167
208
143
201
216
163
233
206
189
191
226
202
202
204
208
188
205
203
212
210
163
148
232
236
201
258
202
210
263
181
116
130
213
225
229
217
234
166
213
195
184
219
208
187
177
247
220
208
152
223
219
198
241
103
160
188
233
186
200
202
229
182
172
233
223
204
237
217
215
200
291
196
182
168
140
154
210
210
206
201
198
156
218
231
227
275
176
141
198
232
235
228
186
183
189
138
182
214
198
218
212
197
235
213
265
156
164
193
157
188
218
209
156
174
222
184
162
207
119
229
216
245
183
127
150
193
227
173
203
170
170
147
139
184
222
210
158
214
193
234
214
126
156
197
213
171
211
241
111
215
190
237
208
185
231
212
148
187
238
194
272
184
187
160
167
183
191
255
186
156
208
228
188
148
240
197
214
83
207
183
222
196
147
241
202
140
171
212
189
235
221
144
251
156
167
219
187
236
186
233
198
205
177
156
218
229
194
222
219
158
174
156
211
185
192
237
271
172
217
184
249
231
174
166
199
216
151
253
183
197
244
216
143
210
132
211
183
213
184
182
184
185
224
172
159
221
230
183
207
237
202
281
226
122
198
181
235
160
233
155
214
153
237
210
217
235
191
255
180
263
168
210
213
207
209
164
249
171
173
224
244
187
151
207
197
241
189
197
244
225
229
248
225
270
195
182
183
160
206
250
157
213
194
197
243
179
168
185
229
200
184
211
197
245
204
246
198
203
219
207
188
188
198
242
169
170
137
250
267
173
169
206
202
231
198
233
247
216
225
185
244
183
194
222
190
222
171
154
187
186
200
155
219
194
217
218
240
190
205
175
233
151
215
219
168
286
160
206
216
233
158
161
210
201
213
211
170
227
183
226
197
229
230
220
265
204
159
223
177
265
179
153
155
186
194
214
174
193
230
235
192
225
162
188
141
125
223
166
166
191
210
197
181
217
139
240
270
219
224
227
205
162
230
155
194
205
220
202
187
165
182
193
214
204
259
162
166
203
221
227
227
193
163
231
209
230
211
250
170
227
182
199
179
145
218
187
194
243
204
203
201
224
188
269
148
185
224
176
228
159
193
239
238
267
211
224
204
267
210
221
216
283
252
211
141
165
174
217
209
194
207
193
155
161
246
187
248
189
177
206
181
202
160
203
212
131
247
221
203
179
236
159
299
215
208
274
169
142
194
231
234
157
224
172
160
268
106
256
149
214
230
237
180
179
204
218
242
222
182
217
169
170
218
186
167
258
170
192
174
137
248
199
186
216
196
212
176
172
203
134
199
182
205
214
200
244
189
161
228
197
247
220
188
216
178
165
203
215
191
173
184
252
247
152
192
146
197
178
160
209
234
173
154
221
230
211
165
179
186
211
215
135
161
210
205
217
233
248
178
211
192
233
217
208
162
127
220
255
149
230
216
233
236
176
104
157
220
254
173
224
221
158
208
146
230
215
228
203
184
209
196
239
244
259
225
170
215
227
204
147
235
169
176
217
170
185
193
212
136
223
221
205
214
211
146
188
120
220
176
165
261
206
184
191
214
202
165
261
197
154
211
259
221
150
189
187
179
176
153
212
200
184
227
241
207
225
216
201
237
200
148
238
238
189
121
239
229
253
163
186
209
256
216
196
257
245
230
214
125
183
231
170
228
137
209
244
253
130
189
192
272
165
196
275
171
196
212
211
194
268
197
175
199
234
166
204
241
154
219
162
233
211
204
220
215
211
184
227
172
196
177
194
181
244
192
242
238
198
184
158
168
220
198
185
217
169
234
192
141
215
107
186
176
146
205
184
278
173
264
145
173
171
231
223
203
183
196
197
227
129
228
192
195
196
188
154
242
194
151
159
204
214
196
248
193
223
223
237
230
255
160
204
224
242
202
242
211
223
177
181
244
211
235
208
224
167
210
223
167
218
188
238
225
252
182
195
120
155
148
213
169
194
175
221
212
233
228
174
176
241
188
143
182
236
184
249
216
174
192
111
152
185
262
231
221
191
198
233
200
246
202
266
192
157
178
158
207
192
265
185
250
189
198
178
185
175
163
247
230
201
195
201
186
201
227
260
151
254
110
211
213
189
174
211
200
198
162
189
261
209
128
234
221
176
234
180
187
157
213
209
172
209
208
267
203
195
183
186
231
152
210
193
217
202
210
237
205
271
187
211
167
243
143
168
195
190
242
187
236
208
156
235
254
261
232
226
142
253
222
203
168
238
216
227
201
203
203
167
183
266
204
267
149
208
218
232
163
133
228
243
216
172
263
183
166
224
176
230
202
266
226
232
205
218
151
206
200
136
186
186
238
201
268
188
240
173
226
166
216
194
197
195
173
166
212
183
159
290
177
169
187
282
201
237
185
189
134
232
196
184
204
198
143
216
217
194
230
233
194
201
185
212
218
223
257
205
243
219
196
160
175
142
186
185
203
189
212
230
199
127
233
236
166
174
175
161
126
167
154
200
201
260
173
217
220
212
194
211
186
179
300
201
208
200
209
241
229
269
217
165
215
217
215
217
174
195
245
204
210
214
197
207
155
147
144
242
244
218
244
139
168
202
211
235
193
198
236
157
135
210
146
180
115
231
159
189
202
182
194
228
184
216
200
236
168
165
219
235
242
212
171
149
240
169
206
130
161
182
219
234
211
222
198
203
178
189
224
177
152
238
197
184
183
215
250
257
172
216
240
162
222
184
180
145
185
247
179
174
216
210
191
227
200
198
236
187
195
176
151
204
147
270
202
244
260
187
210
214
240
177
165
198
220
198
254
200
227
184
211
234
208
214
155
175
223
192
182
256
206
197
210
220
176
223
166
158
227
115
175
208
168
202
252
224
139
234
193
238
221
215
192
192
235
217
108
235
205
259
195
222
159
181
189
232
139
218
189
189
208
184
214
241
202
195
188
249
199
263
220
177
196
243
174
228
251
188
178
189
196
198
165
204
216
218
169
229
223
247
125
176
229
231
152
195
191
214
203
115
148
211
243
172
202
158
195
171
157
180
252
216
219
226
212
176
208
220
218
202
235
184
190
146
209
206
139
210
159
210
244
169
200
222
232
209
179
189
227
229
170
208
238
154
227
183
194
188
221
169
189
258
193
176
172
208
203
255
176
197
171
190
172
199
278
210
210
189
214
189
136
165
230
238
212
194
214
205
147
197
181
186
174
189
208
221
201
194
164
172
231
259
171
225
180
187
187
228
228
208
219
190
198
204
159
233
234
205
200
173
242
235
235
235
202
177
223
238
266
174
222
213
128
207
231
227
140
211
237
167
207
250
227
205
204
209
232
176
220
179
227
236
137
203
239
228
131
221
202
216
166
228
200
241
214
247
186
192
232
135
184
253
175
189
231
262
244
215
189
184
169
173
215
232
193
209
180
200
206
193
225
215
253
236
198
165
185
233
175
211
289
200
195
162
200
216
201
176
254
246
215
280
193
263
163
277
210
198
199
219
171
189
150
173
222
201
189
218
204
179
245
245
238
202
231
168
187
187
168
249
209
227
240
216
205
159
160
201
151
156
215
148
205
196
197
176
166
172
191
212
219
232
201
130
180
156
171
196
180
166
164
170
204
190
172
231
201
202
205
188
143
202
214
237
209
197
205
152
209
231
188
129
221
192
213
218
172
202
198
249
161
185
162
210
168
233
212
216
247
173
245
207
196
232
157
176
240
143
181
200
257
274
199
266
138
216
198
217
216
212
209
255
147
205
224
194
166
226
162
217
218
189
235
187
181
161
259
217
228
240
264
220
164
243
222
181
213
219
235
219
219
180
199
197
205
191
190
232
176
235
247
221
202
263
197
179
258
262
177
159
196
271
153
222
169
211
191
169
215
194
224
118
214
168
194
151
244
179
223
184
164
257
252
227
184
191
129
170
274
195
180
226
240
226
199
244
176
217
132
189
218
180
194
170
173
251
216
208
147
250
128
212
272
168
209
245
200
196
182
209
187
149
249
185
214
137
207
229
216
176
231
221
173
272
229
227
203
217
167
136
159
179
190
151
215
241
203
229
162
217
178
177
125
248
172
200
150
155
185
237
210
190
164
222
214
187
108
240
210
147
216
167
187
204
226
166
165
177
161
225
214
260
183
239
182
168
238
247
163
187
185
227
182
232
199
191
147
213
192
117
172
213
191
219
214
228
244
177
236
183
188
227
235
227
190
221
193
216
204
172
194
181
274
184
243
216
222
161
210
209
240
170
197
184
164
256
143
172
171
194
129
218
207
212
204
198
100
171
202
181
138
171
183
192
262
208
193
198
229
302
189
204
226
178
274
178
209
168
217
212
168
231
208
115
247
189
131
257
293
224
162
180
203
163
187
233
180
219
210
129
181
202
167
114
178
208
202
212
176
205
210
137
216
226
239
242
227
162
164
158
215
190
201
195
168
276
184
184
199
192
191
191
193
183
151
181
161
212
185
179
159
221
158
184
210
202
166
163
208
234
199
248
164
200
153
197
156
157
214
253
179
215
202
223
201
185
220
176
98
167
196
230
190
215
223
214
187
122
185
159
205
154
198
247
179
230
208
169
224
252
181
156
198
194
276
158
247
224
191
230
245
199
190
236
228
235
224
172
237
213
206
197
188
242
211
199
192
215
187
127
206
206
196
181
213
155
227
161
210
187
230
171
186
197
186
177
207
209
237
241
218
145
239
207
252
101
254
211
184
155
175
192
213
156
194
235
247
224
181
184
220
193
194
156
150
179
200
192
161
227
147
207
228
171
197
198
204
205
208
224
135
211
282
184
169
186
155
246
191
206
221
189
217
240
245
192
226
197
218
255
202
212
169
223
201
182
209
241
204
217
107
158
188
188
209
139
201
178
155
232
158
219
158
226
176
212
183
226
156
252
196
241
153
244
237
242
159
253
150
175
210
181
222
189
161
250
205
247
206
148
201
220
199
175
223
204
151
157
166
251
224
176
233
143
200
237
203
137
153
196
169
242
230
134
232
190
250
210
205
222
193
232
182
144
121
243
260
208
188
249
180
214
276
232
133
150
190
237
154
165
174
158
147
170
134
144
182
247
162
161
213
180
188
228
210
234
158
189
227
248
195
209
169
209
165
191
195
169
225
205
112
189
165
195
198
210
152
218
155
163
185
243
160
197
164
155
195
203
182
204
195
226
206
178
182
190
221
156
234
165
273
259
229
240
116
191
175
191
179
206
194
207
145
200
169
270
226
206
178
214
197
245
244
174
208
229
186
219
238
180
180
204
201
227
233
237
176
206
211
232
243
204
178
176
183
245
175
202
212
218
131
159
222
127
177
218
210
196
146
253
194
214
172
224
221
111
215
213
199
155
237
202
234
249
152
192
266
224
196
167
165
202
260
193
196
167
230
165
178
183
190
182
201
200
191
215
209
214
194
177
251
208
194
226
218
164
220
217
236
222
213
200
167
262
245
169
192
128
203
194
181
200
203
170
218
170
251
182
254
186
223
123
253
218
196
237
200
201
238
245
195
234
230
213
185
225
237
203
230
203
200
160
195
214
139
170
211
182
144
227
248
162
215
165
165
237
235
199
224
169
193
195
174
214
191
161
134
201
218
238
198
202
207
212
165
200
230
196
237
207
167
189
183
223
180
240
221
169
222
186
258
235
216
203
147
144
234
198
232
198
195
204
251
183
223
257
209
183
242
197
181
131
249
158
183
210
224
208
232
226
167
247
196
215
278
172
197
173
209
183
179
140
178
178
204
183
150
145
216
228
199
205
159
206
164
245
291
169
235
140
261
177
200
249
240
152
232
214
246
219
173
159
228
156
163
172
163
192
221
175
176
177
215
224
172
203
172
216
161
188
281
127
212
171
297
166
241
161
253
228
190
241
186
192
167
206
247
174
184
193
160
181
171
243
198
157
201
262
206
217
201
143
214
222
151
243
175
182
183
211
219
168
212
156
188
202
189
171
233
223
188
137
175
138
201
206
262
252
234
146
201
153
222
170
196
191
192
201
195
222
173
139
239
222
225
210
213
261
200
162
234
237
202
138
246
231
257
205
153
216
176
190
172
182
170
197
186
214
229
178
209
181
217
225
225
242
204
184
176
199
224
210
257
204
223
217
215
144
236
201
156
195
173
207
211
110
221
245
267
188
226
244
261
187
226
234
180
196
204
209
180
201
242
215
162
182
205
204
239
254
189
211
214
229
265
133
195
207
224
175
147
221
246
247
191
150
219
155
260
202
178
218
135
211
223
180
150
203
213
193
199
205
196
165
209
190
180
194
176
292
222
189
218
214
162
135
236
189
247
200
224
196
221
266
209
198
224
245
170
232
262
162
191
155
235
150
240
158
204
226
163
213
233
215
174
152
228
261
221
112
272
211
152
207
171
181
161
258
117
187
265
235
156
175
223
217
192
146
213
226
224
141
221
212
181
189
244
203
244
218
208
210
203
244
164
177
157
217
146
200
221
204
191
195
205
197
170
218
219
239
199
192
212
199
236
200
233
199
241
249
211
192
89
207
213
118
214
170
191
243
223
178
226
156
194
217
246
254
219
221
164
191
192
202
234
241
193
156
171
153
135
230
183
141
193
161
189
230
208
244
264
154
212
194
217
202
214
191
115
194
222
175
163
184
184
213
210
206
185
229
217
176
171
227
194
202
238
171
168
128
206
171
156
205
185
197
208
170
184
253
253
220
233
220
210
218
207
255
200
283
221
177
241
225
255
208
213
164
212
221
238
237
211
252
197
210
167
225
188
248
212
208
119
134
211
171
230
243
228
182
223
179
241
260
161
149
179
201
229
147
256
167
174
205
224
164
166
216
198
230
152
142
190
182
223
171
213
185
188
254
259
201
163
262
210
229
173
192
168
179
230
167
216
209
218
206
172
213
172
242
118
232
212
145
185
195
184
203
232
177
231
146
165
164
245
168
187
143
158
220
210
178
226
202
223
195
150
219
114
175
216
156
163
154
227
193
214
267
128
171
204
182
209
199
273
236
215
247
130
216
212
215
124
266
214
131
204
161
193
200
192
178
198
216
179
216
248
174
191
247
150
175
155
233
286
214
240
188
181
167
214
177
182
194
178
263
132
150
200
223
244
217
228
194
219
231
165
154
192
147
189
148
236
156
152
155
198
234
261
220
212
184
138
197
241
225
127
219
204
163
194
203
193
162
149
242
207
137
177
243
144
241
233
216
210
197
183
171
230
208
245
204
240
232
203
138
161
241
242
225
221
217
160
180
161
189
229
200
242
219
237
190
205
213
217
202
173
230
193
180
235
203
117
235
247
142
185
173
190
232
225
208
219
190
211
288
252
246
186
204
193
197
267
204
228
132
156
179
162
213
158
228
205
212
183
261
180
131
136
186
205
200
158
215
237
160
221
240
208
219
231
151
222
166
129
200
191
184
242
237
221
186
225
240
169
254
223
220
216
195
266
157
214
204
180
148
211
125
179
231
137
265
178
209
213
209
200
193
187
240
208
237
229
206
295
190
189
188
176
181
150
252
236
179
192
166
245
206
208
233
239
202
186
220
249
217
245
189
229
215
232
152
230
242
142
233
121
185
180
218
152
159
191
160
223
171
166
210
229
181
215
204
197
185
211
229
222
120
178
282
238
239
136
242
180
226
177
196
198
194
230
223
236
161
205
144
209
167
164
173
212
167
160
203
231
151
218
172
226
206
190
248
181
256
174
194
195
215
220
194
253
218
225
200
254
248
221
197
172
239
198
220
220
169
216
163
229
151
235
178
200
178
140
213
238
180
199
232
211
193
166
190
117
209
163
232
230
217
208
190
159
198
248
233
153
139
214
181
205
162
241
252
183
170
151
194
185
186
219
150
193
219
242
246
140
199
220
223
217
173
223
128
163
197
216
214
161
211
224
210
220
196
147
220
167
169
226
219
239
166
197
167
148
208
187
209
251
229
201
187
171
173
212
187
193
148
193
181
173
223
218
208
252
211
199
214
200
148
150
221
186
222
268
147
192
195
154
233
236
188
225
208
214
250
187
229
192
247
181
229
130
193
241
162
217
190
201
226
180
203
182
209
198
239
244
158
191
200
240
252
197
180
232
210
177
235
154
213
224
213
210
211
246
265
164
179
194
152
231
188
216
211
138
209
239
197
138
199
190
217
185
233
218
174
179
173
219
208
192
204
162
191
146
240
173
113
208
197
223
253
175
189
227
208
186
190
157
142
207
175
222
103
218
283
182
194
258
243
223
261
207
212
179
245
191
188
229
186
210
223
176
167
206
183
186
243
152
164
230
171
214
164
260
224
155
179
151
195
245
211
242
239
180
201
209
206
222
161
207
198
190
238
219
236
185
237
168
188
193
229
258
184
180
200
227
241
215
201
242
189
200
231
144
224
210
206
224
198
194
223
196
216
178
197
191
239
191
199
170
198
230
186
220
218
219
189
231
175
215
181
231
161
212
180
218
256
213
238
219
206
247
166
265
218
180
214
154
223
188
187
208
180
176
199
230
182
188
162
227
186
203
183
187
258
210
234
270
212
175
213
155
125
186
189
264
224
263
195
179
182
196
219
240
205
195
215
177
201
263
156
138
206
196
250
203
207
190
182
227
181
258
160
214
254
236
272
193
168
181
237
259
245
145
218
166
141
225
176
230
220
207
232
285
163
169
300
179
209
200
261
166
191
205
213
244
190
148
215
236
218
237
170
198
228
216
202
197
246
180
219
201
207
174
214
165
259
184
149
172
220
206
144
168
156
140
176
186
157
183
165
185
157
189
259
193
251
198
206
146
198
216
173
188
187
160
196
207
154
236
181
235
262
235
226
256
98
191
135
227
237
184
180
217
243
189
190
242
207
193
252
200
241
206
223
239
182
183
198
201
216
187
263
217
220
208
192
213
228
147
135
183
171
178
212
210
190
182
188
192
184
198
189
233
255
171
163
182
184
127
204
208
204
194
228
230
179
162
188
203
225
251
199
196
186
193
143
264
245
142
176
228
210
191
213
189
164
191
167
225
140
230
198
230
189
205
172
211
239
259
222
290
224
223
260
217
203
159
212
221
178
188
216
141
187
227
162
123
191
229
173
168
192
266
223
267
236
225
202
242
156
204
185
197
189
238
107
162
164
136
235
178
196
177
203
239
225
146
255
219
244
240
179
197
192
209
184
231
221
177
205
205
248
187
186
163
164
163
165
196
177
182
176
165
167
238
221
168
177
198
247
200
183
180
196
222
246
172
220
226
209
221
216
139
150
126
210
167
206
209
197
223
229
199
186
179
208
199
187
108
258
208
269
215
193
204
221
177
212
170
217
189
169
246
162
263
139
179
157
212
202
202
168
204
203
157
174
231
166
189
100
201
235
139
227
191
203
218
184
201
230
153
262
208
190
182
218
204
227
215
178
213
203
142
190
228
211
157
239
249
158
232
233
167
151
132
188
226
219
249
238
179
156
211
212
180
217
194
239
235
158
200
235
218
187
189
168
157
203
239
176
219
255
256
287
173
237
186
224
178
217
197
228
191
195
228
227
205
187
246
189
188
182
200
143
241
155
218
149
245
203
190
193
179
173
164
239
186
262
213
196
198
165
233
219
233
258
236
195
174
159
183
221
217
213
209
279
235
209
201
163
237
220
237
205
165
208
207
222
156
165
235
143
160
234
214
141
129
172
218
201
226
150
181
233
242
284
255
227
215
194
163
251
194
207
239
220
195
156
220
214
214
197
171
233
188
190
256
185
234
305
206
172
212
184
127
192
193
220
243
174
206
176
224
169
154
228
236
205
204
226
217
212
117
179
240
216
217
109
216
139
228
183
216
255
247
189
249
210
157
250
143
165
184
209
208
271
227
160
223
205
198
194
251
185
204
196
199
158
158
230
215
241
199
158
160
177
174
185
247
194
198
195
229
197
194
265
268
216
231
199
218
228
176
147
204
206
246
180
195
247
194
240
175
151
146
193
216
167
156
162
240
136
157
205
211
241
206
227
225
169
159
207
176
213
138
254
203
177
189
207
147
162
147
208
219
233
189
175
201
212
257
212
198
226
197
190
220
216
198
202
198
200
170
160
196
201
167
240
203
175
256
154
209
206
169
144
172
252
225
229
180
268
275
264
189
221
210
190
230
139
189
200
173
141
174
190
183
155
167
182
199
224
162
195
180
144
233
201
241
201
162
195
185
177
200
125
179
195
235
142
192
258
191
181
214
156
201
200
205
225
195
239
237
214
210
105
191
102
205
214
225
194
211
181
185
191
275
167
186
189
260
198
244
224
288
192
199
226
162
243
201
226
153
166
205
245
172
198
222
157
212
212
180
201
137
242
205
201
211
223
220
236
177
193
222
230
253
196
226
237
217
195
230
162
189
201
195
211
222
197
187
186
183
208
205
115
155
209
127
232
178
237
217
228
209
184
199
206
143
228
208
187
266
230
166
170
176
232
197
225
223
215
177
131
248
258
240
219
204
234
189
180
206
212
235
196
228
207
211
146
235
210
226
215
188
142
169
220
225
248
263
160
218
174
246
200
224
173
181
172
170
196
191
252
160
221
140
205
187
229
188
202
227
222
212
245
165
231
160
195
164
153
228
213
205
193
200
170
253
147
188
236
172
168
199
121
194
198
234
173
167
240
188
236
214
182
212
150
132
268
214
232
197
216
178
203
201
223
207
206
164
183
153
264
241
222
207
230
206
181
227
142
208
187
225
181
225
210
203
181
223
189
261
171
176
145
205
226
228
129
232
149
226
215
150
226
171
253
185
161
197
189
160
147
222
190
161
220
207
205
231
163
222
168
257
225
226
290
224
216
209
229
216
242
240
183
251
210
169
176
198
218
219
187
182
238
136
203
243
230
227
203
185
182
236
181
174
203
211
196
268
218
234
186
226
172
163
162
201
199
218
171
171
206
213
187
187
240
224
192
210
217
200
148
210
110
181
161
129
179
148
221
225
213
228
221
234
206
198
192
214
198
207
179
199
210
173
201
203
257
170
182
170
245
265
231
199
228
197
204
248
153
198
149
217
233
217
240
173
265
137
262
222
214
230
166
195
143
210
172
165
165
165
251
223
275
193
298
210
177
227
198
243
216
214
171
223
230
184
253
191
244
223
179
160
186
212
191
167
173
190
266
240
213
269
226
142
221
252
204
198
229
185
196
217
171
127
233
241
200
196
156
161
213
210
224
219
226
191
214
157
236
192
223
142
207
183
222
235
202
195
287
210
172
179
260
218
203
241
177
262
222
159
188
222
135
203
257
221
230
211
182
198
182
215
230
215
202
241
153
243
195
138
148
172
186
219
197
224
187
242
196
166
167
213
173
233
269
260
172
171
185
230
230
137
207
190
184
179
246
170
197
183
222
173
144
196
211
147
209
174
153
182
196
155
222
209
264
224
163
232
154
138
177
223
228
196
80
189
212
198
228
175
139
138
189
232
200
198
207
159
188
178
285
192
228
212
263
259
223
164
218
228
188
253
194
210
146
140
217
168
257
184
182
262
186
208
205
210
233
230
213
188
239
169
170
179
183
206
129
144
226
129
176
227
178
184
240
182
113
237
251
185
191
149
222
214
246
256
147
207
221
239
260
183
259
161
217
229
142
238
260
229
178
173
215
248
184
149
205
150
254
263
174
243
145
219
186
208
183
246
217
195
195
142
215
194
174
208
195
176
211
206
256
224
143
206
175
259
182
213
162
224
180
189
254
148
217
199
157
201
176
225
237
157
249
235
226
171
261
193
234
200
212
169
212
174
164
196
228
157
207
255
194
184
230
210
161
191
267
213
236
138
198
170
219
161
247
246
238
244
156
204
202
221
183
177
204
222
242
146
132
155
238
256
269
235
185
180
195
155
224
191
167
203
220
243
200
169
234
179
149
202
216
225
229
186
269
211
231
206
225
194
222
216
197
188
231
212
249
193
176
199
224
206
235
211
276
213
166
139
164
138
214
169
216
177
222
137
176
201
161
160
182
216
215
233
203
154
221
173
135
223
252
201
197
180
227
209
216
221
221
203
170
155
202
173
223
188
225
217
218
210
151
202
241
225
175
148
146
231
182
177
180
207
249
150
211
250
204
201
219
177
219
181
162
202
218
100
223
239
227
183
171
185
238
190
237
164
230
174
219
178
207
174
193
177
178
170
137
206
197
180
176
149
236
259
236
150
250
193
226
169
169
222
260
209
245
217
253
141
202
196
176
187
217
192
200
201
172
194
226
220
239
216
196
228
212
178
296
120
191
269
187
166
204
221
259
152
238
230
185
118
203
182
193
188
181
274
213
239
235
184
214
138
182
264
171
257
185
240
181
213
190
152
246
194
123
189
117
228
127
215
222
235
139
218
165
217
155
171
146
197
183
211
236
165
255
205
205
192
126
242
225
212
249
202
210
174
209
220
230
199
206
219
156
251
237
172
220
199
242
173
256
167
247
224
234
248
266
200
233
203
218
164
212
153
174
176
216
230
165
221
114
172
158
210
188
155
264
201
211
253
195
216
160
176
252
158
156
198
186
237
203
166
245
179
211
157
228
194
213
223
192
222
177
303
188
206
219
192
162
224
196
240
184
133
166
159
202
201
141
193
173
208
183
269
175
250
196
196
237
188
192
137
150
204
200
203
152
199
203
252
240
163
195
194
190
164
155
215
197
234
182
274
251
229
222
156
110
175
178
202
253
210
258
124
256
117
198
200
252
172
199
207
158
196
220
189
165
145
218
213
194
180
200
194
165
202
240
189
220
232
237
256
209
160
183
180
182
227
203
220
194
183
209
191
283
165
203
168
243
224
162
204
301
190
170
190
206
217
218
214
209
191
140
177
200
223
241
241
170
222
244
195
216
193
228
179
179
161
220
288
225
225
207
248
224
160
269
203
202
179
197
186
193
224
195
234
204
159
204
187
214
242
229
257
210
125
222
237
194
200
203
179
214
185
156
178
188
120
271
253
183
212
165
195
258
195
162
237
230
134
213
246
159
144
164
123
204
167
144
217
203
257
166
219
214
181
158
192
186
153
206
151
215
237
250
181
200
185
149
235
184
221
243
143
174
198
221
215
217
165
175
201
147
198
231
187
205
147
238
164
167
234
229
214
226
196
234
220
145
206
208
228
157
201
208
179
205
253
163
130
159
195
223
200
242
231
189
187
244
208
201
220
217
218
207
207
211
191
169
173
147
148
200
127
209
205
161
187
217
245
195
148
197
228
204
195
224
195
220
184
184
201
211
183
256
241
205
151
173
189
244
187
199
157
196
233
174
271
192
184
180
184
121
212
175
160
246
240
113
186
200
169
235
232
216
233
233
217
265
223
183
175
122
208
238
249
182
209
178
225
196
223
203
199
133
218
223
188
211
165
173
172
179
267
144
208
221
225
214
199
219
241
219
165
202
244
191
218
207
164
261
224
153
172
149
204
199
245
251
219
222
257
275
179
226
231
197
164
236
143
206
211
235
193
103
224
244
214
233
192
182
229
217
231
230
206
168
203
158
214
193
205
197
229
187
242
262
188
259
217
144
151
157
205
252
180
184
181
193
188
197
207
197
207
221
127
176
214
156
186
162
233
186
139
273
204
216
216
235
207
189
257
171
207
232
192
197
214
268
215
238
176
221
225
230
201
283
235
179
249
195
220
193
205
233
182
186
207
182
159
148
183
217
250
231
245
199
153
220
218
199
255
196
186
231
236
197
158
225
165
224
200
169
161
220
186
248
194
168
205
140
215
168
187
242
238
151
190
223
143
195
182
252
207
148
155
240
118
238
189
216
154
145
197
192
271
253
150
232
199
162
159
187
172
262
190
171
229
238
256
164
187
248
164
223
123
208
131
158
225
207
200
243
219
166
223
182
238
220
213
254
233
160
204
198
190
145
179
190
254
194
178
180
196
226
130
155
236
198
153
150
195
240
201
165
167
190
243
178
174
119
235
209
201
281
219
213
244
209
170
186
195
197
224
197
189
207
166
138
146
173
208
186
194
180
228
137
139
190
241
204
222
202
182
138
200
195
206
188
248
207
140
147
215
236
236
199
188
125
225
182
198
128
161
189
252
137
184
190
221
210
223
197
142
189
169
200
185
178
173
168
257
164
192
166
234
190
211
208
186
153
168
235
217
204
177
167
243
246
156
159
198
167
221
155
206
174
193
173
229
189
178
228
198
198
194
208
192
181
197
212
183
171
224
188
222
237
216
162
248
227
208
268
222
193
208
263
215
215
166
185
254
170
209
240
221
213
146
234
192
145
211
175
229
190
226
225
212
249
211
258
281
211
231
201
217
246
175
205
198
257
175
200
206
228
236
187
156
217
188
260
157
187
176
206
227
212
231
188
229
206
166
225
209
226
178
202
224
159
214
195
179
194
222
252
135
189
167
197
224
185
189
225
126
208
176
219
246
214
179
242
201
278
155
202
200
216
208
225
159
220
206
139
184
187
148
168
262
156
237
201
195
196
239
177
231
204
175
226
165
225
192
198
190
228
236
191
199
166
193
163
237
207
184
210
212
240
199
218
196
255
208
192
181
187
242
179
249
206
200
268
171
208
196
218
209
173
169
186
201
152
205
194
171
214
198
209
245
243
180
160
219
221
178
178
234
250
245
212
206
242
177
235
190
214
196
217
174
162
196
147
139
157
181
197
215
222
162
200
175
238
186
194
264
208
203
145
224
164
177
201
207
207
193
151
165
178
205
170
261
206
131
237
189
218
229
210
201
200
209
236
229
200
160
218
154
219
157
143
238
233
200
166
200
203
199
178
172
159
190
189
176
247
192
199
276
233
226
275
222
248
276
206
160
201
191
193
197
240
285
197
187
222
215
180
230
197
197
210
219
240
241
170
155
245
183
209
189
240
203
167
232
172
221
134
214
139
171
176
231
197
198
166
239
244
209
122
173
228
198
188
201
208
189
209
187
112
216
155
216
219
178
257
188
198
220
186
219
223
185
153
146
230
193
220
197
281
245
164
227
182
207
175
163
259
187
246
206
240
234
217
169
152
194
188
240
213
212
229
225
297
158
172
249
211
143
155
257
262
222
258
224
231
174
271
232
240
163
161
199
223
185
210
146
214
149
198
217
217
194
260
148
221
198
222
134
110
200
179
194
198
181
254
182
124
232
206
217
166
170
230
164
188
208
200
249
194
210
206
232
223
222
235
251
136
141
199
204
170
184
220
186
222
192
208
216
233
133
213
214
225
205
163
217
171
225
204
228
224
191
190
190
223
128
213
240
224
239
162
165
161
148
109
165
192
182
225
120
221
201
162
192
160
227
196
213
233
163
216
180
186
176
183
201
163
174
186
163
229
214
198
197
246
198
189
212
200
227
282
174
175
147
182
96
217
146
197
210
208
247
229
272
189
174
221
217
277
198
210
139
176
162
195
194
191
213
161
272
209
264
208
126
189
163
244
211
193
180
166
187
218
176
195
174
193
194
204
245
178
144
212
225
233
206
167
261
171
161
232
162
204
206
169
182
147
224
209
213
146
191
219
159
247
203
100
170
174
183
199
153
193
133
175
206
204
135
181
232
175
130
160
266
197
213
216
176
174
215
193
188
141
196
217
220
173
206
201
193
165
176
227
171
204
219
201
135
241
217
240
150
199
117
208
241
234
158
164
196
194
173
145
247
203
159
220
229
164
224
199
228
254
194
128
168
182
179
212
204
218
212
256
175
205
149
179
181
172
215
220
201
249
168
210
153
184
215
180
182
156
126
186
145
173
223
203
198
199
183
204
198
177
244
189
205
295
203
215
209
137
207
219
164
191
160
246
207
196
159
156
195
171
231
237
217
230
152
161
280
165
197
248
198
201
220
194
162
188
192
170
205
210
209
204
207
228
186
201
165
206
286
177
169
190
176
147
210
222
138
262
232
169
196
183
195
153
193
248
241
117
184
228
219
181
162
218
272
250
239
215
205
163
164
226
178
238
155
232
172
153
132
144
200
178
240
185
211
203
114
196
236
229
215
203
255
188
260
230
166
116
202
185
204
215
235
242
193
214
227
194
239
182
205
163
226
188
211
182
227
148
180
247
191
215
161
203
249
214
186
162
235
187
225
207
200
244
228
191
149
234
234
173
191
188
214
194
202
182
132
178
206
170
208
225
212
200
166
242
250
221
245
189
166
226
203
192
216
195
139
208
240
153
217
189
208
203
220
234
166
200
162
196
205
180
222
203
160
180
155
185
181
224
202
197
226
253
143
193
221
114
240
220
237
236
240
144
219
204
196
200
206
189
149
225
206
228
191
229
242
147
247
194
207
253
236
214
210
219
192
253
192
239
240
216
229
240
194
232
202
206
213
214
159
147
239
233
204
248
228
220
206
187
213
197
194
191
145
212
222
123
192
208
278
258
195
187
191
213
209
161
249
226
247
214
180
142
210
227
153
230
172
167
176
192
170
231
220
234
175
212
98
233
191
210
285
207
185
169
261
151
161
221
217
190
245
198
218
211
173
154
187
217
223
238
148
111
248
208
205
245
208
246
227
186
165
166
132
226
161
178
214
221
185
174
154
197
236
246
189
223
131
230
188
227
234
214
193
192
215
205
147
178
225
197
149
234
199
144
135
172
238
233
254
148
137
212
174
163
187
211
229
163
195
181
201
245
220
211
248
209
175
199
223
160
193
173
177
184
203
181
182
211
198
205
201
144
243
205
177
203
160
166
219
245
222
191
213
218
154
199
155
188
187
232
228
148
230
195
190
242
160
237
203
240
218
222
187
174
155
181
218
245
218
182
178
234
209
186
150
218
198
173
211
227
250
198
255
197
233
222
247
240
224
151
232
171
210
288
246
161
230
191
177
279
158
191
165
228
232
146
281
179
209
261
176
264
218
188
218
182
158
195
213
215
222
200
253
187
169
187
150
207
196
136
172
200
235
249
197
220
240
176
223
187
187
201
248
197
204
193
183
205
222
144
180
245
210
200
191
176
235
174
213
164
227
154
176
241
214
198
185
167
233
215
169
230
255
236
175
182
152
189
178
219
169
197
233
230
110
228
263
205
178
184
152
232
190
191
213
275
259
212
214
224
205
147
164
237
183
186
138
239
186
232
207
211
200
243
182
214
237
151
178
218
246
184
227
254
225
153
100
236
177
215
198
256
190
110
153
200
166
162
216
226
144
241
201
206
209
172
234
208
196
270
248
224
275
209
248
252
196
217
198
206
147
192
224
131
182
208
235
215
178
188
142
194
199
214
224
156
191
217
193
224
253
197
229
174
172
224
247
209
234
210
183
192
174
170
237
214
213
162
176
236
147
157
195
241
239
174
208
140
236
139
233
224
241
221
208
204
168
229
198
222
202
229
137
161
258
152
212
178
256
184
139
109
243
185
239
230
206
184
214
146
216
137
201
252
163
178
188
244
175
207
248
217
135
178
193
108
166
237
166
196
224
227
182
147
195
205
202
157
234
196
203
177
221
207
219
202
187
240
226
190
202
238
209
259
229
222
269
164
184
226
223
219
201
213
190
202
221
190
187
204
164
257
184
180
185
200
233
279
214
215
210
283
223
236
230
209
174
192
202
238
224
225
216
212
210
164
192
213
179
168
197
205
253
205
125
188
153
186
215
182
252
216
124
182
211
184
240
170
178
271
228
206
216
197
232
200
237
223
182
190
171
190
214
217
266
148
195
194
195
181
132
172
199
216
213
240
204
216
181
123
208
194
183
210
217
156
164
170
126
205
181
172
196
150
180
200
253
228
225
194
216
155
202
141
165
221
149
236
183
175
159
148
235
186
181
167
174
272
193
220
205
188
227
182
196
225
177
198
225
253
219
228
200
180
251
223
215
236
196
236
197
214
225
210
184
195
202
209
141
205
178
216
236
204
207
183
162
206
228
208
197
197
191
204
230
183
154
208
208
199
186
223
204
214
126
240
176
150
205
232
248
187
219
239
207
244
188
235
175
220
208
217
221
194
230
209
154
183
272
184
240
234
180
184
228
170
216
206
195
161
237
238
245
188
227
170
168
222
211
144
150
193
206
184
226
137
177
223
192
191
226
213
229
200
227
188
207
213
217
205
241
141
219
215
220
215
199
231
157
202
176
199
206
214
180
181
164
131
212
161
218
213
219
225
162
184
265
231
164
193
258
233
201
193
187
169
244
178
196
228
256
212
248
223
224
204
232
249
206
206
168
209
226
186
204
174
224
169
160
205
220
206
214
231
189
201
168
154
213
211
142
181
211
204
170
192
158
194
222
196
103
193
147
223
134
151
270
191
253
217
218
267
209
142
185
174
181
175
224
165
183
208
280
206
172
264
205
193
221
216
235
229
195
158
228
165
247
234
180
242
195
194
197
203
208
198
171
183
182
191
177
172
178
232
205
206
177
185
247
204
200
239
217
213
207
249
244
147
191
194
236
200
215
258
184
193
247
215
190
207
171
209
232
199
177
184
186
219
151
182
245
185
201
179
186
214
200
224
142
246
161
193
165
185
192
237
152
227
234
192
210
102
130
160
171
133
236
212
249
169
153
184
174
174
219
245
159
244
213
153
220
181
234
236
209
181
194
190
189
246
239
234
196
144
208
225
233
180
207
205
221
168
182
213
195
128
243
162
166
193
148
217
196
191
160
262
216
227
198
215
172
211
186
200
226
163
230
163
182
226
146
162
238
236
206
206
183
181
217
205
174
194
257
233
214
227
198
233
170
166
233
215
248
214
207
181
165
226
235
196
223
233
217
192
216
175
230
244
208
141
177
184
208
253
146
151
202
176
191
176
251
206
257
227
206
204
174
248
252
253
223
221
151
236
199
209
195
153
197
168
198
242
249
181
198
207
167
153
213
183
242
238
217
148
239
162
180
240
187
195
140
242
172
204
187
222
181
192
150
205
182
248
239
165
195
163
106
214
207
233
222
216
245
189
192
133
193
226
261
166
190
251
177
180
187
263
184
194
201
233
164
152
194
222
223
295
180
158
251
218
181
244
176
212
198
203
180
245
235
224
263
171
221
206
237
201
214
246
198
183
184
220
185
237
184
244
213
183
245
193
250
261
219
204
148
132
160
181
244
230
219
220
164
195
205
251
130
222
213
158
198
252
239
235
216
177
177
171
217
170
231
175
225
234
215
227
146
178
231
221
243
261
203
218
162
239
135
240
174
148
214
240
210
211
240
241
234
210
172
192
263
166
167
184
217
164
174
180
230
217
140
199
128
244
153
245
180
188
207
194
235
209
168
202
201
250
138
197
182
211
240
231
156
243
139
186
177
204
188
216
163
189
167
256
248
257
229
190
187
277
187
216
259
151
143
232
220
230
224
226
246
230
157
200
194
233
226
194
150
176
220
241
240
233
224
226
204
223
187
213
216
146
267
278
171
162
189
156
229
244
189
230
239
189
227
203
203
224
148
195
175
198
216
132
154
145
197
186
157
236
232
102
157
215
217
158
191
142
230
209
209
197
221
202
209
162
167
137
188
208
178
181
251
205
165
162
206
240
227
236
202
178
219
283
213
221
205
164
177
197
212
165
191
164
161
211
186
211
173
259
248
196
177
188
208
190
192
232
244
200
159
238
118
135
202
198
194
220
246
172
233
195
155
275
171
176
204
238
131
183
201
241
159
167
208
161
153
233
228
223
178
223
175
217
218
192
204
182
173
200
215
186
161
199
199
244
240
200
219
220
148
246
181
232
209
240
204
164
200
153
211
183
180
214
249
217
134
242
207
201
224
232
196
242
250
211
236
162
237
204
148
200
150
242
186
169
240
184
186
166
155
237
201
191
209
232
153
169
168
240
211
212
182
265
162
186
223
148
191
171
186
167
200
189
133
203
152
190
231
242
180
182
237
221
188
184
219
175
197
213
209
186
147
194
169
213
260
163
186
148
255
222
209
169
237
157
157
178
177
155
222
240
177
198
229
185
215
210
132
231
152
194
201
202
163
231
194
202
167
213
241
230
192
153
212
178
227
222
163
245
213
198
157
225
185
203
189
141
236
167
202
214
166
198
186
184
251
170
199
207
203
192
258
224
238
242
151
205
205
213
204
182
262
200
235
189
177
189
218
142
194
206
214
167
182
216
205
213
137
187
240
183
217
227
244
191
221
226
223
155
193
214
236
269
243
231
193
156
178
195
194
246
188
166
173
219
121
211
243
161
211
222
192
199
194
221
217
170
223
214
212
267
200
259
182
251
182
168
223
245
178
198
225
171
287
171
224
255
172
167
206
173
200
234
268
194
236
197
157
196
199
120
217
142
227
210
252
179
196
168
184
243
253
183
206
193
176
233
227
231
219
209
229
199
247
263
208
132
213
227
190
149
214
202
188
199
197
226
245
191
252
216
197
170
223
282
170
154
178
194
212
168
187
209
212
208
189
163
183
195
130
149
152
204
200
178
181
243
220
201
223
217
195
197
201
193
178
150
205
198
165
288
185
182
181
242
223
247
206
232
113
205
177
243
155
114
205
213
137
188
182
241
235
170
187
178
197
227
244
250
240
188
221
228
131
220
194
169
240
159
238
193
203
240
211
197
211
224
200
173
194
146
191
258
193
174
172
199
192
223
187
175
184
157
170
221
183
244
177
220
169
192
234
223
207
223
222
185
216
215
260
243
210
183
201
197
183
231
215
208
196
137
149
241
179
206
211
230
259
138
176
252
175
254
173
188
170
218
235
142
241
240
207
159
261
218
166
199
193
138
145
193
111
211
145
169
205
197
182
215
229
213
205
226
116
188
118
171
186
152
238
222
165
232
250
229
267
205
181
108
180
232
175
227
198
200
179
140
236
215
180
204
138
185
170
196
235
177
193
176
182
265
210
205
175
258
224
192
216
204
190
210
180
184
193
156
174
236
217
201
196
164
242
241
212
181
250
156
235
214
300
164
187
172
200
236
222
172
180
186
235
217
195
207
208
208
200
215
219
160
159
176
181
165
192
198
242
250
192
174
210
157
224
211
208
192
248
173
212
225
222
192
204
195
191
175
205
210
178
161
209
260
278
250
204
208
219
158
143
195
201
248
200
190
158
120
206
192
187
180
235
199
192
172
207
197
159
154
195
198
200
182
235
225
204
227
176
220
238
165
218
132
166
222
192
197
205
233
242
222
175
278
214
227
264
169
153
203
196
116
255
183
233
276
169
232
196
199
198
210
135
296
188
174
175
231
171
223
232
172
189
205
238
159
238
214
219
201
222
198
209
198
175
175
177
212
156
173
168
177
132
162
185
248
259
192
162
135
195
167
174
242
262
168
152
184
207
172
162
188
222
224
257
178
189
189
175
185
213
210
217
185
212
259
227
216
224
167
156
208
149
229
197
202
160
232
255
190
176
197
236
178
207
231
190
171
199
138
242
218
190
222
243
201
139
150
229
227
105
197
270
154
277
193
164
175
164
192
207
170
204
221
164
193
198
250
141
233
220
192
200
193
164
201
221
185
187
118
205
186
210
170
218
235
261
184
167
260
180
150
219
169
220
222
182
146
153
216
152
212
215
262
143
227
184
236
192
238
190
156
236
190
215
214
241
186
148
190
213
193
222
210
198
246
217
179
198
223
167
253
206
255
204
199
255
200
226
283
173
214
174
186
243
182
54
184
190
160
191
179
204
180
237
212
213
254
220
124
237
219
179
211
209
208
218
155
212
237
192
189
162
189
155
172
179
198
272
201
202
212
205
206
145
190
144
250
232
232
231
202
235
182
175
204
183
125
195
149
158
207
194
213
171
206
170
170
168
182
187
168
191
271
175
227
167
184
223
133
119
199
160
240
199
195
203
155
176
140
215
193
260
236
150
176
213
104
236
157
216
218
259
232
240
204
181
210
260
215
172
166
192
246
198
238
159
212
177
191
221
185
183
259
224
207
142
212
160
220
210
175
190
239
220
185
193
250
239
138
209
221
224
170
247
203
215
210
265
181
245
126
249
247
207
220
264
206
182
171
221
224
236
215
169
188
200
181
201
196
243
209
236
186
251
211
157
250
190
183
186
209
189
223
206
211
190
232
221
161
144
188
240
189
218
201
222
170
192
179
201
149
237
219
162
220
242
185
217
174
173
179
161
197
183
222
239
223
178
225
177
178
197
204
206
187
213
220
227
241
155
202
205
170
190
243
195
218
202
211
204
192
218
158
236
227
209
196
231
260
224
214
185
247
137
213
277
217
194
160
202
115
179
271
255
251
215
198
255
183
206
261
226
175
231
199
202
162
189
190
253
194
226
189
239
214
169
223
215
224
247
187
158
153
259
231
210
234
248
203
167
159
188
219
217
215
192
193
174
235
191
223
224
207
198
184
221
148
177
228
173
237
204
191
199
256
235
155
256
126
202
213
200
151
173
186
130
180
294
180
152
203
167
166
191
155
194
199
186
235
257
174
232
162
250
198
150
194
157
157
177
134
255
206
241
241
171
198
127
213
173
187
239
248
219
141
251
180
148
177
175
159
184
228
150
203
195
265
216
221
195
175
183
239
219
163
272
104
230
160
243
237
193
183
217
227
166
236
161
219
141
197
140
180
204
194
204
197
207
241
234
111
265
232
206
180
206
194
200
186
244
179
197
204
185
214
165
198
175
170
146
170
152
187
208
190
186
203
184
211
226
254
151
237
160
242
275
211
232
205
191
171
216
170
226
170
189
212
211
186
152
181
178
236
158
221
176
236
175
205
152
203
151
188
174
225
239
153
118
225
235
183
198
208
206
178
136
205
168
195
252
231
223
201
155
224
81
201
213
183
228
212
235
230
214
149
211
205
194
143
181
244
216
222
175
212
157
225
247
259
203
173
233
202
185
128
130
183
192
241
210
271
208
197
163
218
132
179
193
197
253
246
227
114
225
192
208
183
228
185
253
192
191
225
189
147
192
249
202
204
179
153
180
194
92
216
182
197
161
237
205
227
195
142
210
181
186
227
209
171
223
220
173
243
208
229
137
180
187
228
193
250
203
132
139
174
249
224
245
257
149
139
206
245
210
215
200
174
245
159
188
214
167
241
239
275
171
187
160
196
236
243
224
206
231
231
226
192
237
212
151
177
179
240
193
198
159
188
220
205
179
216
186
187
163
186
155
121
219
226
219
181
209
208
157
227
182
212
172
190
243
202
198
164
188
228
164
220
225
217
223
138
158
233
179
215
229
217
219
158
276
184
223
155
198
167
277
197
191
174
168
225
260
182
107
232
151
188
197
217
164
270
228
170
239
201
259
170
212
206
216
173
197
293
223
196
226
222
171
170
210
218
267
218
209
183
211
119
219
242
169
171
148
149
199
183
144
182
201
241
188
221
147
272
239
224
172
212
225
245
274
230
203
193
182
117
187
252
195
210
182
164
212
166
225
243
207
195
256
253
173
212
230
225
224
223
214
226
221
198
188
211
192
196
124
220
272
199
228
233
231
193
237
182
188
206
197
191
163
190
205
151
180
262
148
219
202
125
234
213
199
227
159
197
237
170
232
198
204
270
194
242
175
244
170
222
207
200
192
219
211
249
193
224
195
217
204
208
189
166
196
146
207
211
242
179
198
242
204
247
179
224
176
193
231
173
187
189
227
233
197
260
221
204
222
225
233
247
136
139
184
200
170
201
228
250
186
272
249
171
180
229
232
226
266
183
120
241
183
207
187
258
259
232
156
171
208
213
198
195
211
202
207
243
228
200
159
215
203
234
214
142
224
235
160
238
196
220
158
182
208
192
157
213
192
200
217
212
171
168
183
200
136
206
236
217
204
173
223
218
232
200
290
233
226
190
223
181
191
118
217
183
210
208
127
209
258
201
202
218
246
168
155
176
225
220
178
147
291
205
237
254
202
166
247
192
222
212
199
243
268
188
226
212
252
205
226
224
168
250
239
156
254
163
200
213
224
195
155
196
120
150
258
228
241
168
183
207
202
203
160
225
193
196
218
210
241
177
197
182
228
154
192
189
191
160
210
192
186
156
187
234
247
177
211
227
194
213
194
175
228
253
219
218
222
230
194
224
163
249
184
143
135
205
219
173
218
194
222
157
120
147
227
131
225
259
193
260
188
212
160
181
229
185
202
167
237
245
230
175
182
223
178
144
149
221
190
235
232
215
187
177
213
217
230
210
175
237
224
153
180
154
146
202
150
208
219
217
186
202
245
206
212
146
185
267
215
236
179
172
180
170
189
155
210
206
191
202
208
196
255
248
251
166
211
143
267
227
268
195
201
230
201
209
216
187
197
207
205
251
197
211
237
233
185
190
157
247
223
166
189
213
146
191
210
195
147
127
226
223
143
208
193
163
166
240
170
164
195
191
188
216
260
227
210
253
205
236
258
148
215
214
234
220
272
222
137
258
181
192
244
190
206
226
156
221
200
264
194
219
227
174
224
137
195
155
180
160
276
211
212
236
233
184
218
276
174
187
206
188
196
202
176
193
215
209
201
162
196
161
223
210
202
242
241
199
129
122
206
232
257
216
231
182
199
160
160
251
205
207
159
208
189
219
199
238
180
158
213
197
187
163
185
156
197
186
159
155
189
209
220
217
192
235
228
238
227
169
183
198
211
233
191
206
208
252
217
203
225
193
241
186
190
240
281
174
157
201
223
176
237
196
233
191
274
227
150
196
243
218
167
217
159
241
180
234
219
183
187
215
225
179
243
163
179
254
223
229
237
193
190
149
236
221
181
190
207
201
197
160
235
179
212
143
228
195
175
197
235
216
209
214
192
254
186
200
186
192
286
217
209
221
210
124
247
216
180
142
202
135
192
170
311
156
221
274
252
167
239
211
259
246
207
204
169
163
193
269
178
169
190
190
193
185
160
172
167
190
206
130
191
179
212
242
242
198
174
219
201
192
223
262
244
239
280
193
235
157
164
212
171
210
220
199
249
226
218
170
175
174
161
198
212
237
203
182
159
165
245
218
214
191
173
227
263
192
200
116
199
150
222
174
217
207
224
151
224
178
230
162
178
230
181
246
191
236
231
179
207
205
174
201
167
173
157
156
256
181
206
242
180
169
210
158
228
182
210
243
133
161
244
208
253
292
251
170
136
185
212
130
233
197
232
205
191
232
219
206
198
175
205
221
196
206
196
137
242
194
243
145
240
192
185
207
194
212
215
181
215
212
200
169
211
180
213
260
191
168
227
228
197
235
228
145
157
167
178
192
202
263
232
194
242
199
183
166
263
208
190
225
257
207
116
191
128
185
149
224
202
277
208
210
189
226
195
183
217
163
153
243
169
172
186
171
210
205
205
205
178
146
200
246
157
209
154
207
214
212
209
235
111
176
211
234
104
237
182
255
203
217
230
184
162
184
264
220
204
178
216
212
223
164
108
215
219
241
196
144
214
214
193
192
207
162
148
234
195
221
217
214
182
250
204
202
189
199
218
167
161
236
236
225
223
230
189
150
224
167
205
217
223
254
145
132
252
213
210
208
226
191
222
196
183
242
182
188
190
185
211
229
215
183
240
210
154
115
161
159
193
199
189
184
226
193
214
212
162
217
172
173
167
191
160
184
205
220
214
191
212
156
195
162
200
66
135
244
249
168
180
104
224
240
198
242
174
185
194
246
192
200
187
235
147
220
224
222
179
173
166
256
213
201
267
222
239
213
184
184
152
202
237
204
227
141
189
165
211
262
182
217
209
182
175
214
168
199
209
232
182
130
144
219
204
217
166
189
212
179
173
169
252
182
175
135
200
239
221
154
292
201
215
195
229
234
205
213
208
211
205
227
212
166
147
176
208
127
220
203
190
250
203
224
163
156
191
248
175
232
166
195
239
210
199
171
186
203
175
201
158
203
193
222
184
194
179
183
250
174
177
189
214
230
172
213
196
287
245
234
233
203
258
195
174
193
195
159
160
222
205
249
170
186
213
237
234
199
253
218
172
177
197
199
212
193
196
178
206
211
228
157
207
219
175
221
225
283
241
159
176
182
265
244
219
239
179
227
169
167
197
293
208
224
185
244
215
195
237
159
147
202
201
167
143
206
216
154
218
117
185
186
232
241
305
232
182
185
136
196
142
224
197
211
259
166
171
199
208
216
173
270
189
187
130
266
199
193
220
186
240
233
173
191
153
216
181
177
259
227
203
233
231
175
211
196
209
182
253
193
236
198
198
196
169
169
201
141
111
206
151
230
196
226
204
157
181
197
189
142
193
212
193
131
196
199
151
207
208
198
194
175
204
180
201
250
173
187
221
208
189
189
189
241
247
230
191
226
168
246
236
177
189
176
227
120
222
228
180
166
217
182
178
161
182
173
170
219
162
191
190
201
181
267
145
206
234
172
222
210
192
224
206
224
224
218
202
178
230
247
239
187
215
229
183
248
245
260
175
220
188
186
211
212
178
203
168
207
212
186
178
216
231
242
221
241
218
255
209
241
183
209
223
160
200
214
150
163
243
195
242
226
237
196
200
226
239
190
136
189
213
160
184
174
169
219
254
201
217
239
211
197
248
189
223
191
197
205
134
181
146
145
151
199
165
207
242
232
210
267
197
221
166
176
231
210
152
212
136
223
144
183
208
217
154
155
182
163
182
204
199
167
208
227
147
164
195
186
210
192
253
153
159
228
175
194
205
207
258
206
247
184
221
151
211
198
193
185
173
256
192
214
207
206
161
169
206
223
172
218
210
148
243
265
203
197
231
186
180
182
148
179
204
129
234
238
252
260
171
170
169
179
166
177
149
282
198
199
271
230
139
226
229
232
172
202
214
251
197
196
229
172
187
265
129
193
220
212
226
182
199
200
207
169
217
205
158
224
213
154
192
248
250
178
195
209
222
213
221
237
184
182
182
218
199
210
197
221
253
220
157
147
211
223
265
209
284
171
231
188
147
228
136
229
214
207
129
175
240
194
148
223
230
220
187
255
204
213
183
229
188
209
198
215
176
204
256
197
202
203
197
229
150
213
211
193
201
188
191
214
247
197
198
242
240
203
178
205
174
228
199
169
230
251
172
128
192
152
251
255
222
196
142
203
251
206
135
224
218
206
172
185
213
186
174
220
185
232
156
258
194
160
182
242
217
184
209
169
160
154
204
223
195
162
212
181
228
256
213
178
240
259
161
212
231
237
217
210
193
172
228
172
226
203
166
241
211
209
217
202
172
229
157
272
239
229
215
170
197
263
206
154
187
229
180
200
213
185
183
262
158
208
243
175
203
210
221
226
207
197
144
232
197
200
103
258
216
140
170
269
231
191
183
219
170
250
176
203
167
214
172
227
216
183
200
167
246
216
187
174
150
176
238
179
223
170
203
171
244
209
199
206
151
164
255
242
264
244
209
177
209
106
204
200
133
197
202
190
172
197
225
246
218
211
203
213
252
225
191
197
233
224
184
192
224
201
168
201
233
152
233
263
196
171
209
172
196
190
231
220
251
198
200
192
176
212
258
143
233
172
224
174
241
277
237
196
235
217
198
214
201
193
233
261
187
153
231
165
202
171
189
181
218
261
175
215
226
207
168
162
158
186
189
218
180
198
146
219
219
155
149
180
209
271
175
211
180
214
154
212
242
150
191
222
187
148
211
214
162
206
175
185
271
212
203
206
267
275
162
222
169
187
286
208
224
205
156
143
188
196
200
177
223
241
226
187
182
205
184
168
271
163
177
165
191
255
165
154
199
219
185
174
210
180
201
202
223
235
213
205
191
230
178
233
203
216
174
200
181
256
174
235
237
169
186
150
237
206
206
203
179
212
138
169
263
226
166
290
173
159
176
196
219
217
211
213
132
148
254
217
240
213
255
180
178
136
166
162
130
183
179
178
210
213
220
235
257
263
173
227
196
220
238
224
195
198
190
239
187
235
168
211
150
210
219
216
166
158
218
199
236
196
218
169
217
215
143
188
212
206
179
248
149
161
171
218
157
206
169
153
157
131
247
221
233
227
182
173
181
215
220
209
172
154
188
179
232
185
168
185
206
193
193
234
179
158
183
263
201
241
96
179
180
178
211
188
165
166
195
214
296
209
220
181
198
222
266
268
158
196
167
213
214
257
155
178
189
130
273
271
226
244
243
214
201
210
210
182
124
208
246
228
251
221
161
207
183
232
237
163
206
208
199
158
189
186
157
181
181
197
205
163
213
238
210
208
198
183
207
170
202
160
244
180
208
170
171
195
188
134
193
204
193
206
163
213
241
170
208
102
205
192
159
161
179
113
166
255
233
131
190
211
269
207
173
184
105
172
184
218
224
185
172
287
158
170
199
195
238
164
234
218
196
245
228
261
251
148
211
266
178
237
237
213
233
226
180
163
216
232
266
158
191
177
197
197
185
254
201
176
226
184
206
203
213
208
223
237
146
222
238
223
254
205
206
141
212
252
177
202
171
220
179
176
176
194
215
208
196
194
250
250
226
200
250
163
208
191
203
155
190
176
207
170
148
252
191
191
168
228
170
168
235
202
191
164
189
187
153
207
207
286
187
107
245
257
185
181
153
228
182
234
209
205
159
211
184
234
242
216
255
209
203
197
170
238
292
181
185
203
154
240
178
210
203
186
222
226
193
140
241
143
186
212
203
190
192
185
235
223
171
147
191
228
180
199
259
216
197
227
175
163
241
135
226
140
156
132
217
231
263
179
172
157
137
182
204
213
199
235
196
159
189
199
128
182
230
195
221
161
221
203
228
225
201
184
233
236
242
205
171
203
209
163
184
239
214
174
252
154
244
244
176
204
141
193
186
227
181
217
216
186
218
214
157
178
204
160
243
196
182
201
231
194
243
234
218
218
216
181
131
208
237
212
258
204
257
246
215
209
189
173
182
186
214
193
217
225
198
151
206
191
225
220
230
213
145
187
207
97
172
201
176
229
204
226
195
221
189
211
220
183
185
234
208
191
218
185
135
208
166
243
200
127
164
159
198
210
154
188
229
158
224
120
253
174
251
244
230
166
177
196
275
265
176
152
204
181
164
170
191
253
219
166
214
227
214
214
157
135
152
208
210
185
190
182
151
240
182
221
181
209
166
257
151
132
126
109
172
160
202
212
244
237
190
130
194
240
142
238
266
210
190
248
194
263
97
200
171
186
193
187
208
262
179
231
209
188
221
232
188
226
169
191
204
190
153
155
273
144
203
172
216
130
128
283
173
112
186
163
289
250
217
221
283
206
194
275
182
135
207
191
181
141
182
209
230
177
181
234
217
136
153
159
260
201
202
239
232
192
208
171
176
227
231
169
233
145
230
178
177
218
226
216
169
165
232
217
245
233
237
240
210
226
267
238
200
148
146
145
215
185
108
175
160
211
178
182
197
156
191
192
217
218
195
157
183
214
229
160
253
187
212
284
202
230
181
189
159
186
246
193
213
195
190
214
153
266
158
209
219
186
222
180
252
168
222
211
176
242
191
203
236
106
235
195
218
240
225
257
198
241
242
218
237
229
194
192
208
171
223
199
208
137
151
204
230
217
213
210
262
165
236
258
228
222
150
163
225
196
197
207
227
241
187
227
232
220
194
176
251
190
277
241
219
203
211
223
131
227
176
201
191
216
223
236
220
204
160
235
233
278
222
198
221
215
154
169
239
206
222
252
198
219
215
139
186
199
196
201
251
179
226
212
209
281
223
253
179
224
126
181
209
206
222
170
202
198
245
214
178
184
201
130
263
192
220
184
204
209
123
167
196
208
248
194
212
138
214
201
242
230
202
223
252
191
180
168
239
157
195
244
214
124
207
219
238
213
270
104
233
158
206
146
229
205
260
208
169
142
183
193
233
211
156
247
178
213
249
223
109
155
148
208
166
191
196
184
160
176
207
151
209
244
163
225
159
212
200
153
218
225
281
222
198
188
153
287
227
221
193
207
200
186
236
222
242
262
183
201
209
247
206
155
221
225
164
233
200
166
238
183
220
161
249
178
203
204
185
199
227
229
227
123
183
169
152
198
187
195
229
217
179
179
244
190
217
213
132
208
238
270
237
190
177
172
139
209
218
222
122
238
189
211
140
128
143
214
221
201
238
185
201
253
145
238
211
218
148
221
186
236
194
225
203
241
230
227
202
232
263
157
210
161
260
252
192
199
202
220
141
191
241
209
212
170
215
231
147
205
194
197
116
192
251
216
223
221
215
169
228
234
209
226
172
181
159
230
170
177
186
156
192
183
154
234
170
176
185
149
132
209
190
252
225
186
236
208
208
192
171
204
259
260
176
183
182
143
238
150
144
207
140
178
207
204
281
177
220
197
186
135
226
211
235
162
237
177
243
182
203
276
222
200
228
176
208
180
182
215
193
160
277
159
167
196
138
191
207
219
239
277
172
177
179
212
225
192
184
215
191
217
211
238
182
186
164
207
227
184
194
285
187
233
224
112
161
233
187
169
236
197
234
175
208
165
193
217
208
167
189
218
188
169
222
162
126
210
235
211
279
214
264
161
170
236
129
231
181
173
206
191
246
187
153
174
155
171
205
180
243
150
237
211
187
267
233
165
227
262
182
232
220
222
212
198
153
139
184
228
210
255
198
144
195
190
247
181
238
188
222
179
219
209
144
266
242
209
182
218
177
219
130
220
208
177
122
177
167
185
151
212
216
132
243
235
244
232
236
237
173
197
200
272
210
164
238
179
186
234
249
141
242
157
145
186
242
188
183
256
207
257
250
224
168
225
252
145
192
220
161
137
250
264
248
183
218
217
245
163
230
196
202
172
165
188
203
185
220
236
174
202
169
225
244
146
225
191
202
249
173
232
195
153
186
219
247
186
182
230
222
189
160
238
146
117
179
203
196
188
174
180
128
140
193
216
216
185
193
242
180
193
152
188
228
228
121
175
195
143
232
233
185
202
204
221
155
145
166
206
150
261
154
294
274
212
214
198
207
182
236
203
220
137
210
207
189
166
215
205
210
200
216
178
212
208
227
203
132
258
138
231
209
145
223
238
221
151
234
175
238
173
197
203
127
172
219
212
206
266
218
190
210
222
219
223
265
234
180
300
103
239
165
231
243
179
141
211
197
138
220
221
220
214
152
184
198
160
191
211
265
212
245
213
198
148
158
203
209
203
180
245
151
174
197
277
232
181
183
223
216
204
253
172
229
167
202
198
194
220
241
200
246
178
209
146
237
222
151
203
211
200
215
207
237
198
186
191
252
190
250
227
181
196
204
252
170
211
117
194
230
213
146
215
200
225
214
199
226
167
133
202
220
206
181
176
123
232
238
120
217
217
204
207
227
227
186
122
173
205
191
185
235
178
171
223
220
172
151
150
228
253
174
227
204
165
183
269
227
232
235
266
217
188
189
204
220
171
243
210
269
222
195
226
270
163
224
188
239
188
182
210
205
204
158
257
202
183
141
203
154
212
213
218
198
229
170
179
214
153
241
245
252
165
254
220
160
179
188
274
177
184
222
208
180
187
203
160
204
219
227
189
240
236
242
179
174
212
273
197
209
135
176
282
156
200
208
181
173
202
194
177
171
204
227
196
193
188
188
227
241
176
249
182
244
196
193
180
180
249
113
123
160
226
191
215
151
236
198
233
177
173
173
224
144
257
234
179
211
191
196
255
148
170
201
251
197
225
208
220
188
186
175
185
227
176
242
254
159
176
186
188
170
182
206
193
214
215
187
204
181
115
182
204
137
210
213
198
269
201
180
177
228
180
189
205
199
183
211
150
193
201
234
210
234
217
192
152
193
188
161
175
168
197
243
180
237
209
184
187
189
120
192
244
184
103
189
171
187
233
197
235
202
223
219
234
248
124
204
179
240
178
226
184
197
244
210
176
124
182
153
207
154
239
177
198
192
190
190
240
197
145
255
221
244
176
166
206
223
200
173
208
216
225
224
174
150
153
192
213
185
142
129
150
231
199
182
190
171
166
225
245
240
229
197
233
244
208
202
222
205
151
220
246
156
185
248
211
136
159
225
191
182
196
209
165
140
181
196
179
168
176
204
219
144
218
162
182
243
207
152
195
231
170
271
149
238
161
198
230
233
209
111
238
204
163
197
231
226
223
187
160
222
134
223
228
208
220
243
170
227
248
242
210
139
220
238
155
127
167
241
153
188
205
170
256
274
243
202
209
209
213
148
218
237
240
169
178
216
151
172
215
165
146
222
191
183
206
188
235
234
248
206
180
224
225
198
208
192
272
136
187
162
167
185
202
157
212
193
170
169
201
206
149
226
186
180
218
189
235
152
208
184
220
183
251
180
218
178
241
166
182
147
168
204
217
175
183
216
221
207
136
240
199
237
222
198
184
139
175
280
178
200
179
199
177
227
184
254
183
133
185
221
194
210
248
170
196
169
193
173
203
200
228
255
246
197
201
227
191
242
182
207
192
180
236
202
178
253
174
193
209
213
172
243
143
165
212
127
155
226
207
206
196
149
162
281
186
170
231
205
206
229
258
154
199
197
228
251
236
214
213
99
182
192
216
217
201
217
240
216
144
205
178
184
183
171
183
222
197
193
139
229
188
145
235
142
192
190
196
161
199
204
180
212
236
206
186
254
181
186
212
219
192
211
252
222
195
196
177
235
140
246
222
210
179
181
212
193
232
191
197
217
219
251
237
234
210
253
180
253
167
115
141
193
118
184
221
179
148
223
215
159
193
202
244
216
197
232
199
213
128
242
224
234
120
238
190
214
200
212
212
213
159
188
234
228
225
148
176
211
183
194
194
188
194
135
192
205
168
183
222
166
192
217
179
185
252
247
156
189
82
179
194
202
190
251
157
217
204
189
210
251
151
91
145
223
202
192
154
219
141
242
164
171
220
222
189
213
208
177
194
189
209
257
184
203
144
180
233
151
233
137
167
175
209
220
127
177
188
182
190
143
208
213
143
191
168
165
197
201
210
157
139
211
177
185
173
239
248
206
166
218
142
191
227
229
229
224
208
208
212
230
257
205
232
239
213
211
196
217
226
152
160
224
216
169
238
175
232
173
163
233
241
238
234
231
222
261
206
204
225
189
246
158
170
156
123
137
231
210
182
220
202
241
156
224
194
195
219
143
172
245
209
237
161
201
150
212
189
152
163
223
220
201
182
183
119
193
193
216
189
192
197
180
160
191
180
169
185
241
229
206
187
238
244
218
187
254
191
228
215
280
195
196
171
217
110
253
189
209
244
214
248
213
228
196
177
168
222
204
257
140
247
203
225
184
207
180
193
180
232
211
235
175
212
232
200
202
235
125
203
166
213
166
181
220
175
213
242
156
195
214
229
144
198
184
165
148
235
206
218
189
190
259
259
210
95
172
167
173
230
144
204
233
195
159
220
192
182
194
230
208
259
196
231
241
252
230
268
145
191
164
158
218
228
160
226
235
183
188
179
203
187
253
189
223
198
236
246
177
168
208
212
181
140
154
156
224
171
242
178
132
173
194
164
236
113
241
186
172
253
199
228
217
185
214
198
273
152
157
171
199
254
154
192
224
222
193
216
196
228
231
246
212
165
213
171
219
224
269
105
255
164
188
215
208
141
185
228
201
215
197
214
198
160
162
112
144
238
206
205
288
223
243
194
208
200
186
225
203
167
184
216
214
229
215
175
268
263
197
235
200
178
213
171
208
217
228
196
183
196
149
198
181
207
180
201
244
199
186
148
202
193
188
242
211
259
190
173
218
252
200
220
138
186
277
190
156
283
220
205
225
159
239
203
132
261
162
201
203
221
166
244
217
186
116
204
225
177
106
222
258
229
193
168
197
272
228
196
247
250
213
202
259
204
182
212
237
199
189
223
152
196
133
200
262
185
152
211
164
218
167
182
213
223
217
225
207
161
245
212
207
263
178
194
188
172
239
232
225
219
167
260
155
231
184
243
216
197
209
222
155
200
243
177
205
140
241
181
163
211
212
191
196
224
224
244
243
215
199
261
222
161
183
187
202
189
145
159
179
169
216
186
210
177
202
188
178
167
164
172
162
223
253
143
223
201
195
197
263
180
204
148
177
231
220
148
218
237
197
236
278
205
181
243
287
161
220
206
248
183
222
194
155
255
182
251
142
130
181
239
181
197
179
197
217
187
228
200
172
190
149
173
243
207
210
186
158
176
190
150
150
167
215
142
272
233
204
263
197
163
148
196
202
156
211
126
279
205
226
205
147
166
184
224
206
286
147
218
184
156
197
206
190
193
254
104
242
206
152
170
206
254
248
242
210
162
221
184
144
171
183
230
215
228
220
241
177
222
160
170
129
194
215
216
207
193
112
181
245
213
204
221
167
176
190
175
206
255
164
184
217
196
248
181
189
253
200
201
168
216
140
167
117
189
196
173
236
217
165
191
214
117
199
210
220
245
234
191
177
235
158
223
202
149
217
152
236
253
176
150
231
103
196
168
208
177
184
181
192
224
219
250
256
150
138
241
164
240
224
98
194
191
218
230
237
243
201
231
261
242
238
161
179
164
223
204
233
159
216
212
223
238
225
144
181
222
196
242
194
245
232
223
190
193
220
172
202
211
197
224
183
171
202
140
172
247
224
235
174
188
232
193
237
244
166
217
176
179
249
195
236
193
115
204
178
164
225
226
194
204
194
235
244
240
242
219
231
170
126
245
206
184
196
227
240
269
242
149
229
283
143
199
233
167
246
197
211
221
176
238
214
243
183
210
240
187
257
237
181
207
233
192
190
195
207
167
208
161
237
161
259
234
190
218
189
171
227
202
211
242
172
192
201
217
128
200
214
251
199
194
215
223
187
192
260
149
218
174
138
191
221
223
212
201
213
169
184
228
173
215
188
163
210
285
239
193
227
177
194
155
179
257
184
291
253
247
174
205
230
231
157
142
202
250
224
163
227
215
273
158
209
197
247
228
219
208
203
138
190
261
213
212
221
154
189
161
151
151
135
198
250
155
254
188
153
210
212
184
231
192
193
177
115
178
163
218
244
202
166
169
143
216
195
290
180
233
180
220
191
219
252
216
115
177
225
144
250
166
236
261
177
193
179
229
202
194
169
195
172
185
206
162
162
180
173
163
191
200
209
115
169
185
210
173
208
214
208
227
214
225
157
197
198
203
203
207
151
204
216
217
214
132
219
234
191
254
184
224
189
190
246
179
206
174
201
209
187
183
170
233
203
181
196
172
232
227
185
253
185
192
176
180
222
205
198
188
164
241
191
189
225
254
191
203
249
135
199
225
173
181
196
227
245
193
140
247
184
213
189
210
229
226
168
219
176
212
109
214
187
217
221
201
187
211
194
227
147
197
208
182
184
153
207
181
208
263
183
167
166
228
144
271
218
134
225
173
156
183
199
223
181
183
256
183
168
177
167
229
154
187
203
214
165
208
187
181
218
205
250
183
212
152
248
132
224
263
185
217
201
198
217
199
123
169
194
193
180
214
199
219
159
155
171
208
215
151
223
261
263
246
199
217
156
224
215
211
210
194
206
144
215
211
210
259
229
212
155
232
256
249
179
226
203
179
181
263
250
148
184
148
200
158
189
214
185
246
231
201
147
197
221
218
182
220
175
203
173
172
165
236
228
240
174
192
238
218
168
222
163
180
230
161
111
169
185
233
146
250
188
199
255
257
256
165
218
187
202
236
201
223
206
232
176
187
161
208
197
160
198
170
130
271
245
245
235
201
190
194
192
184
233
190
257
207
171
210
246
218
153
121
213
214
264
201
220
248
174
204
205
201
192
221
183
169
173
202
244
205
186
224
207
191
227
173
220
196
171
205
165
149
215
173
216
210
231
231
170
228
172
153
235
186
201
163
193
250
193
193
148
165
185
185
244
231
243
239
216
156
147
231
206
181
128
170
213
244
244
200
267
221
194
168
227
148
189
215
215
168
247
203
192
247
185
137
211
233
227
187
206
191
225
242
215
199
119
235
178
201
247
237
146
198
252
202
146
238
169
198
210
234
165
187
225
237
173
217
201
250
149
192
224
250
192
228
196
216
195
227
227
219
262
220
195
244
167
180
253
163
291
157
201
198
210
174
194
205
242
200
236
217
169
203
201
185
199
168
148
166
201
186
247
226
204
260
211
252
182
188
221
235
130
226
229
187
169
244
190
122
230
230
236
194
244
206
197
162
219
208
232
187
201
147
233
237
220
172
174
191
199
235
160
213
234
163
185
192
167
214
174
208
212
312
197
240
148
196
207
239
161
188
210
143
189
152
211
216
222
200
133
217
220
189
265
254
241
199
176
214
193
171
176
218
229
240
206
226
180
211
208
217
162
239
192
249
214
201
247
140
198
225
187
244
186
234
220
173
179
212
198
194
229
250
213
144
181
243
154
183
195
186
183
170
208
212
212
195
185
178
218
204
232
146
227
193
214
165
197
159
219
213
146
147
161
203
229
201
215
187
256
232
166
201
216
255
200
214
194
213
170
240
187
197
189
245
244
242
159
241
190
197
227
258
251
249
196
185
224
227
210
233
208
188
235
181
213
235
148
215
211
210
171
244
236
155
219
227
226
231
219
203
195
231
150
245
162
193
174
212
232
195
235
180
208
195
196
236
118
182
193
211
114
158
101
171
185
233
202
165
195
253
181
244
205
216
148
161
196
215
173
226
199
253
218
232
173
128
165
205
181
198
119
216
200
175
214
182
194
226
165
194
133
244
206
125
236
206
274
226
164
196
118
195
207
174
204
213
235
219
197
231
203
208
181
197
237
147
170
257
171
151
201
227
135
267
162
191
185
218
177
202
228
229
173
254
162
210
243
180
161
198
207
215
215
209
244
225
102
267
216
188
215
191
231
143
231
252
200
209
115
219
169
161
155
178
201
219
222
221
144
187
212
109
190
249
162
180
108
189
138
189
191
209
241
194
211
239
218
260
215
205
205
180
197
172
206
262
204
190
208
204
208
212
247
224
177
193
163
193
218
245
145
173
136
191
207
254
171
228
185
184
190
232
195
208
227
155
255
199
276
192
222
218
202
215
179
199
237
162
204
210
158
220
169
197
225
147
170
167
276
174
199
117
265
244
241
187
162
277
202
208
192
212
186
214
138
211
177
254
199
199
215
241
176
214
174
221
211
171
234
179
190
186
150
130
219
205
230
258
217
185
200
257
206
192
186
196
226
164
221
160
198
223
205
260
118
202
187
235
227
185
189
204
258
205
258
211
181
154
220
224
213
98
193
230
174
215
201
246
229
207
257
216
217
195
226
197
190
206
201
209
269
198
232
210
236
230
168
246
204
252
202
241
208
182
172
213
184
221
245
187
247
212
154
202
201
173
206
226
200
261
193
139
180
199
193
196
207
181
185
181
247
172
169
234
222
179
178
176
209
217
187
191
197
166
198
180
235
189
234
181
251
208
176
209
175
239
148
154
184
235
163
176
167
178
169
234
229
249
194
216
236
164
139
216
184
201
226
206
189
194
217
236
202
217
252
195
230
259
261
198
187
173
224
132
220
224
154
168
217
212
209
203
155
198
251
219
195
192
177
139
238
124
170
197
157
206
223
224
202
105
159
193
238
125
251
176
196
164
187
188
210
179
96
211
144
273
205
214
172
182
176
181
237
214
188
243
234
208
217
257
248
166
184
232
144
201
131
208
194
225
231
181
210
222
187
182
216
230
204
203
219
215
194
223
186
242
213
216
169
262
187
194
196
201
216
207
250
210
134
196
208
243
230
200
219
191
231
184
224
240
215
224
234
217
203
198
247
249
233
173
247
205
254
205
178
230
224
204
204
192
179
145
242
193
219
200
223
182
210
174
240
246
174
183
219
204
209
245
153
163
243
207
224
239
208
237
176
178
207
216
211
205
232
186
168
238
192
251
173
165
223
184
212
253
174
273
232
255
195
179
159
223
194
150
230
153
231
181
220
232
214
179
197
244
220
198
167
189
259
156
156
223
212
253
231
146
233
246
202
168
201
194
220
151
211
167
209
197
199
163
206
202
194
170
194
162
243
172
183
218
194
198
187
223
232
196
164
202
152
240
203
186
158
200
255
158
150
232
227
179
240
190
249
185
268
218
182
229
134
170
220
154
260
203
172
196
188
191
194
188
223
230
195
239
183
222
140
211
179
236
196
232
244
224
191
227
161
210
195
164
181
244
232
240
228
243
215
101
210
183
233
160
209
268
239
153
139
166
175
238
195
189
243
152
206
204
265
154
124
200
247
215
241
137
212
229
159
116
258
180
169
238
250
155
216
192
148
186
210
173
146
198
208
150
246
187
245
241
209
194
150
161
168
246
165
127
182
198
242
225
181
225
234
192
171
177
138
175
207
176
232
149
248
233
200
131
178
209
160
231
206
232
200
256
181
251
197
233
229
218
267
199
234
146
162
229
227
253
144
203
192
213
145
178
168
267
226
189
181
191
175
231
265
172
210
225
239
186
185
217
151
214
217
210
184
278
230
220
261
196
241
158
189
198
243
200
145
201
206
128
142
245
251
210
178
244
199
208
176
231
162
152
184
174
195
218
164
215
165
199
228
178
210
242
191
281
180
142
182
132
262
209
103
272
223
127
217
234
160
198
126
221
161
202
214
139
200
177
229
195
209
202
189
189
222
167
289
162
194
206
193
214
220
181
167
182
188
199
173
125
207
204
197
191
154
211
235
184
179
258
183
167
165
187
236
141
193
227
142
195
242
186
221
167
163
211
231
161
212
186
202
192
162
249
223
211
193
255
184
189
178
176
200
197
230
214
207
123
174
229
207
195
216
200
186
250
228
225
161
238
215
212
189
207
177
135
291
188
257
237
214
196
181
196
178
239
177
198
189
189
210
215
194
198
206
175
242
218
205
200
251
218
122
176
192
205
231
217
231
189
176
184
244
245
208
197
187
194
180
195
245
178
200
201
151
235
230
245
229
239
264
218
178
222
196
193
168
234
181
163
186
251
192
209
245
226
207
255
216
220
178
154
234
224
231
217
184
204
198
193
155
209
180
213
227
211
196
216
158
216
145
152
178
134
185
237
180
156
189
207
218
149
129
222
223
222
225
183
201
218
161
173
191
169
228
189
149
161
246
231
172
203
193
234
157
271
186
159
211
237
190
202
156
131
256
229
217
181
219
202
226
234
153
209
198
196
254
253
237
205
198
201
241
159
198
142
204
211
240
186
231
132
127
232
220
197
220
149
202
178
212
157
231
221
180
199
155
86
200
182
179
177
217
216
199
164
244
250
227
237
186
250
231
217
199
204
217
205
234
211
235
221
260
182
211
94
210
233
196
160
209
191
197
214
178
157
223
182
218
208
181
179
210
210
199
195
198
230
167
181
166
138
237
207
179
196
204
187
215
208
260
218
164
161
244
189
177
223
203
233
229
85
171
222
217
215
234
258
173
164
251
178
237
141
155
181
177
224
158
234
192
195
158
201
202
232
237
185
215
186
189
209
234
228
258
228
221
169
151
163
284
247
224
183
189
199
175
156
184
229
234
210
223
154
198
208
196
238
210
177
170
148
165
178
176
207
223
175
227
187
168
180
183
172
223
243
203
228
207
162
205
140
204
218
213
151
166
147
205
226
191
209
210
218
260
234
149
139
221
238
242
209
201
249
106
230
186
226
195
219
128
216
123
208
191
203
187
246
200
130
154
190
180
192
181
250
186
177
173
233
187
160
233
233
229
182
170
207
186
170
214
231
264
182
210
184
168
181
152
223
168
185
187
204
205
185
206
243
204
249
187
195
246
204
175
215
143
240
159
204
223
211
190
205
206
246
261
231
174
176
105
231
243
238
195
226
179
203
189
194
161
209
219
244
236
192
234
144
194
166
200
255
180
146
200
198
186
203
238
192
173
178
208
151
250
233
195
107
174
206
197
251
190
259
234
195
197
175
202
215
270
174
145
214
204
217
240
192
146
106
169
186
256
189
258
249
251
225
178
120
162
183
261
166
232
224
162
242
165
199
159
197
195
200
191
216
221
228
154
190
153
181
124
230
210
226
130
226
183
172
174
153
186
240
165
254
176
188
244
211
268
219
170
159
165
249
191
170
289
253
238
243
248
135
238
166
176
252
205
208
237
234
160
179
189
179
215
171
167
100
182
210
137
148
178
201
169
182
215
203
167
196
202
236
148
198
162
152
166
192
164
172
189
223
231
199
165
237
189
159
228
198
212
169
175
204
112
240
232
194
247
206
234
203
240
221
189
189
186
204
175
172
186
192
194
196
226
178
140
205
151
196
237
204
187
193
166
219
204
268
214
207
135
164
128
143
255
231
159
152
215
158
210
265
247
246
257
216
210
186
184
127
200
179
237
167
207
160
206
202
174
218
169
147
185
135
186
186
196
236
226
175
175
142
172
241
128
139
180
242
210
226
226
189
212
215
173
201
257
242
187
149
153
265
139
168
155
250
214
161
219
211
253
180
205
196
220
225
222
202
256
182
200
268
203
196
191
206
225
188
215
183
202
217
222
243
199
235
232
208
202
230
174
188
209
209
213
161
196
200
237
229
214
240
196
208
251
202
186
141
190
180
223
196
198
239
241
118
185
201
212
262
222
225
173
192
177
217
154
181
187
215
229
172
188
182
256
135
250
225
216
244
214
190
216
218
167
169
169
198
157
207
186
184
228
220
163
222
153
233
233
187
195
196
154
248
244
215
251
156
258
218
217
202
245
259
188
231
179
207
193
198
256
188
184
232
203
208
208
236
227
120
241
147
213
174
213
226
158
181
208
211
229
180
218
216
161
193
175
239
214
277
228
201
179
144
172
210
214
176
216
230
234
189
203
190
188
220
202
132
133
201
197
248
182
204
264
139
201
186
182
213
232
216
200
261
183
187
198
201
284
172
173
152
193
281
222
194
193
164
229
258
257
229
216
211
227
180
204
203
205
180
205
185
201
249
156
248
189
228
171
124
222
184
176
206
206
219
258
230
182
181
219
200
191
211
211
167
251
234
230
262
197
264
212
144
279
194
222
216
246
215
234
247
207
258
209
171
194
239
182
207
258
204
180
198
203
261
172
170
250
233
249
152
226
201
129
212
209
148
174
181
266
181
227
173
242
270
231
222
155
215
180
272
230
183
215
232
217
199
220
206
170
233
174
193
236
232
197
235
215
198
191
196
241
178
191
224
177
237
185
179
191
160
214
153
265
192
235
231
230
174
209
205
176
235
193
174
186
237
200
235
212
257
210
206
184
189
231
213
198
240
250
159
241
209
243
206
248
190
177
180
199
271
222
224
220
237
192
212
201
193
212
236
152
230
219
223
180
218
252
214
162
185
177
222
212
230
210
159
218
190
186
179
150
221
217
197
204
232
187
222
186
151
201
213
236
200
165
188
218
210
179
257
182
189
177
119
191
145
214
221
153
203
108
224
199
176
223
186
206
213
156
246
195
195
227
102
231
211
211
234
213
192
205
262
272
235
191
235
250
223
189
142
227
196
202
145
177
176
190
256
192
192
196
201
264
185
215
140
224
242
183
175
172
228
161
199
184
194
228
187
196
219
193
260
225
185
132
223
224
190
175
192
151
203
149
172
189
220
189
213
222
242
235
222
231
242
231
191
230
120
189
217
203
179
157
143
220
206
166
152
126
216
222
207
194
148
156
220
211
268
258
172
158
209
178
202
189
203
214
189
222
185
121
163
217
187
199
234
295
162
198
229
147
229
204
158
150
224
211
199
216
246
185
228
232
204
291
279
233
174
255
167
213
175
219
245
181
199
170
175
224
170
183
155
208
164
249
233
218
233
157
206
202
176
245
184
246
205
224
210
210
176
255
162
203
246
127
247
239
149
96
192
198
265
191
179
196
219
183
173
150
170
177
158
167
194
196
145
250
219
117
184
181
219
220
219
175
201
186
201
147
223
171
177
199
262
213
231
185
241
184
246
202
181
240
175
187
212
167
171
157
231
211
218
206
185
139
197
247
205
204
183
256
238
217
264
137
217
236
234
235
257
246
248
214
162
197
219
188
201
163
182
159
185
142
191
212
171
170
205
178
270
226
236
168
217
222
199
199
173
229
230
222
222
158
192
165
279
171
187
174
178
258
171
261
159
232
178
211
213
204
186
159
153
190
197
168
201
180
215
199
225
224
170
225
177
162
239
240
203
241
195
162
268
243
213
163
291
225
189
190
226
170
185
196
193
198
195
169
161
227
224
226
181
211
222
241
201
204
231
177
143
223
210
180
201
180
193
244
203
186
193
237
167
241
185
250
170
167
199
220
249
220
171
233
245
236
205
239
190
163
199
188
245
227
239
206
168
215
163
226
137
166
166
160
244
190
215
194
228
217
233
216
257
124
198
214
210
216
225
233
147
182
186
259
133
209
214
221
168
254
203
211
223
183
164
212
172
159
195
255
208
216
169
147
227
251
202
208
172
211
195
211
241
118
192
163
193
226
202
215
198
203
134
142
222
205
170
160
220
215
167
212
215
196
278
202
197
127
190
217
187
124
170
178
258
173
243
186
187
262
168
208
234
212
173
188
159
244
225
169
198
120
204
171
195
187
183
179
109
200
241
197
168
153
134
162
191
198
189
208
205
242
163
219
183
189
261
216
133
201
219
212
176
226
260
217
164
109
216
239
158
259
92
206
222
203
223
206
199
217
245
176
217
239
247
243
171
195
227
194
166
191
215
179
216
220
198
218
165
184
179
215
127
178
197
141
231
187
189
239
188
271
178
195
251
214
227
214
230
223
159
242
215
226
218
193
190
171
260
197
227
221
217
191
220
197
209
195
196
234
233
215
210
183
247
231
148
134
220
195
153
202
218
210
167
223
200
173
215
206
210
223
148
160
182
206
210
218
165
211
216
202
251
221
216
228
164
213
199
222
207
212
229
167
137
203
239
196
249
238
222
189
126
158
212
223
227
169
183
162
147
190
248
224
243
213
182
233
176
195
179
186
198
194
148
193
192
208
257
188
176
199
248
229
220
171
199
259
212
153
228
232
308
191
178
239
170
241
211
241
171
187
224
222
219
195
186
206
179
246
215
233
171
205
237
157
156
165
190
177
200
233
176
158
221
164
203
273
214
207
162
185
181
199
166
207
244
144
237
215
212
176
175
188
188
182
247
169
189
269
209
238
211
239
222
243
150
171
236
133
172
211
189
207
173
180
221
218
160
213
117
174
198
233
205
215
202
164
251
202
226
173
185
178
205
222
147
191
181
217
224
194
192
196
150
188
173
214
243
148
178
174
202
212
183
188
225
180
227
227
261
240
186
204
185
254
137
215
202
170
216
228
199
181
209
153
192
241
218
242
182
234
213
175
202
267
200
158
208
192
192
204
211
220
171
264
218
261
276
181
156
232
222
214
222
209
202
220
146
174
116
225
169
194
220
215
164
153
229
201
231
168
215
153
192
230
229
140
180
213
240
228
223
207
176
230
224
188
217
178
194
182
253
172
244
276
184
193
196
156
230
213
152
176
220
180
203
233
228
167
211
198
241
240
229
171
189
221
185
119
172
185
204
237
246
151
181
200
221
157
235
197
149
204
177
144
226
224
262
178
160
226
287
170
193
184
164
188
182
241
204
239
223
183
177
172
147
204
208
186
194
214
212
254
190
217
253
190
161
157
263
201
219
159
165
197
170
231
231
210
164
232
186
176
186
216
132
159
188
203
149
198
176
145
196
216
168
195
195
211
144
161
178
158
205
187
247
173
232
141
208
177
119
195
201
229
154
243
226
202
235
164
247
171
245
203
127
157
190
163
173
235
202
247
185
226
238
172
262
276
233
277
235
220
197
222
237
204
117
167
171
202
215
234
206
207
208
188
201
183
211
164
155
243
129
181
248
195
166
211
179
172
251
164
185
144
159
238
161
201
231
179
224
214
200
214
209
221
217
223
212
245
219
139
222
191
220
193
194
217
180
225
210
234
181
160
163
120
227
233
213
231
230
238
283
171
150
198
229
197
197
196
187
193
202
185
208
219
166
197
179
214
177
226
195
131
121
156
215
283
201
182
164
110
217
274
183
203
221
198
140
215
167
173
183
240
139
114
208
195
216
194
209
188
236
202
208
226
195
146
181
157
202
201
191
181
232
190
280
228
174
176
208
171
176
228
192
228
206
143
263
205
223
204
196
200
183
211
192
222
229
158
221
178
185
195
214
129
174
229
142
150
231
177
168
272
186
222
169
191
160
128
216
177
172
179
180
210
260
168
185
156
184
230
234
183
238
225
162
207
270
179
144
224
220
172
228
234
190
244
160
260
210
157
152
189
235
297
193
210
196
237
234
203
201
108
236
246
255
159
224
181
234
125
214
203
178
203
184
172
171
195
160
178
262
236
140
223
175
170
193
246
250
220
169
186
184
139
166
133
157
272
217
190
244
197
202
181
229
242
251
171
215
201
216
216
223
209
223
168
179
228
120
228
188
166
258
229
171
294
236
170
176
175
221
250
233
238
196
191
253
202
223
175
221
211
241
187
208
244
216
270
199
194
208
193
212
260
153
141
143
200
215
256
264
223
195
233
185
170
109
251
230
97
217
173
179
112
247
218
217
191
218
195
108
129
229
203
196
222
176
214
256
243
197
196
188
164
210
189
228
209
233
172
187
178
227
192
167
168
198
188
217
226
212
248
180
192
230
194
251
171
218
240
202
185
250
157
199
191
180
190
226
140
152
179
184
228
224
258
142
161
113
220
215
237
269
202
182
202
151
180
223
193
237
248
269
194
268
197
165
206
249
176
191
165
188
187
151
218
119
212
172
196
161
220
236
192
237
248
186
156
273
223
201
160
271
194
206
160
228
160
188
205
256
228
115
219
171
227
190
229
145
212
245
173
197
212
220
230
233
189
165
208
274
208
183
221
203
210
189
203
205
131
214
255
214
215
239
220
248
215
165
226
180
227
182
182
261
141
159
152
198
175
207
220
193
254
146
227
191
178
202
207
255
112
230
213
118
179
225
155
249
203
236
176
141
146
177
244
220
179
172
148
196
157
180
235
173
255
148
182
124
238
152
238
152
218
282
210
181
187
178
236
223
250
162
231
225
205
195
187
185
223
244
204
124
166
229
265
245
230
234
176
209
177
187
169
211
211
241
141
189
159
229
184
185
216
205
223
204
164
220
183
151
163
175
195
235
240
232
165
226
197
194
262
203
234
133
155
191
146
277
183
200
208
167
217
177
215
178
198
214
188
160
186
193
223
149
210
200
165
212
230
207
184
173
118
232
178
180
208
202
199
268
118
205
204
205
107
168
236
204
236
229
203
227
147
254
271
171
181
206
226
111
178
150
197
218
182
248
263
228
162
217
97
149
253
186
193
199
229
163
200
134
199
144
258
224
213
172
197
194
144
191
178
212
208
187
203
191
130
182
154
191
220
181
236
203
185
180
190
113
248
205
200
198
224
187
186
214
229
202
180
241
157
150
199
234
173
177
184
165
235
219
209
177
198
191
159
167
232
214
216
163
185
153
194
247
204
296
222
189
212
203
205
244
206
228
251
229
269
137
166
133
184
224
205
206
195
165
207
232
163
201
234
261
193
220
171
219
227
189
155
227
101
214
204
134
162
150
195
152
166
180
201
184
220
205
226
209
203
224
189
215
160
218
232
202
221
246
218
181
256
166
161
212
169
264
121
179
160
197
203
213
162
114
151
204
178
193
251
246
169
237
188
212
163
208
221
219
215
224
224
224
208
213
181
191
227
179
234
199
238
212
197
216
150
181
261
187
281
223
153
204
249
212
156
202
159
232
118
202
242
214
185
140
252
215
207
211
189
153
146
176
159
257
230
230
178
191
292
224
166
98
237
258
184
223
185
176
142
194
119
149
189
178
221
242
253
161
171
210
238
185
216
267
236
149
188
227
149
215
171
206
236
229
216
240
245
205
173
153
221
140
205
195
196
188
236
201
202
245
177
131
136
240
168
144
166
184
193
164
167
223
230
206
208
171
213
132
216
235
188
179
229
203
223
218
252
207
169
147
179
268
218
186
204
227
155
194
269
145
178
163
117
193
226
208
143
208
188
155
181
207
201
237
168
219
202
201
183
172
198
173
238
153
226
153
216
117
169
190
259
165
166
191
207
192
120
191
213
144
211
206
203
176
255
200
274
235
160
194
226
137
162
222
230
252
186
196
213
217
233
163
135
208
198
231
139
182
145
210
197
247
223
203
238
204
192
178
151
182
189
245
181
251
214
207
246
230
182
222
194
216
140
248
190
198
197
167
224
250
210
211
225
237
189
174
173
198
154
234
149
149
218
144
159
213
211
228
193
224
228
253
151
188
255
224
232
208
253
161
171
154
250
151
212
172
222
178
278
146
267
189
195
141
138
212
207
160
240
132
208
226
224
110
194
176
127
266
147
174
231
180
283
225
173
205
190
269
146
177
157
255
214
219
252
182
191
153
157
253
172
222
179
194
260
210
217
221
233
215
248
180
161
228
197
188
211
160
221
173
151
228
229
211
162
141
228
220
254
184
181
236
226
148
224
185
177
230
175
171
225
184
223
232
230
232
254
248
184
205
228
146
168
240
261
185
216
284
203
196
197
202
176
183
233
212
152
208
202
230
170
187
178
275
224
182
172
245
189
242
181
209
200
203
204
178
267
261
252
205
200
214
202
193
192
206
127
221
171
235
92
169
201
195
195
248
187
178
230
195
213
174
234
251
205
221
237
202
189
218
193
238
171
200
222
179
185
193
201
240
238
218
186
166
169
159
215
219
219
252
167
180
171
189
221
229
189
233
230
196
198
254
247
224
272
182
219
217
167
182
238
243
213
251
159
196
224
238
194
196
206
210
214
201
187
204
230
191
190
186
235
172
244
172
199
208
201
179
164
185
220
221
233
185
173
158
205
145
221
178
217
136
190
237
245
234
199
174
237
166
163
246
194
214
233
217
189
103
227
210
134
205
194
199
221
185
200
157
151
280
249
183
193
233
230
175
184
223
215
204
261
253
206
199
217
230
191
216
168
218
229
157
167
214
189
238
193
202
174
211
208
246
214
218
148
175
238
213
168
182
141
272
197
153
180
176
213
222
226
239
157
177
204
158
171
189
209
116
174
223
158
192
201
178
137
200
196
188
185
176
149
151
254
240
300
162
145
216
231
232
198
200
229
212
215
206
207
149
224
188
200
179
187
205
183
236
185
168
158
137
280
193
203
254
164
223
243
211
146
194
185
166
209
227
206
184
179
193
152
203
207
218
217
214
201
173
223
270
195
236
209
143
147
174
180
217
170
200
249
202
169
250
180
203
234
189
213
194
195
217
248
196
175
214
194
185
188
225
202
193
210
170
177
247
176
179
236
200
158
216
246
154
211
237
270
192
196
145
186
246
189
215
149
142
246
161
190
177
193
165
209
176
228
192
247
175
176
166
194
208
171
198
236
176
217
206
222
245
196
202
224
200
252
193
169
210
207
224
186
225
218
251
236
200
199
213
173
168
222
243
200
218
237
206
232
252
254
227
151
196
193
221
173
204
183
163
213
160
251
164
185
180
239
187
228
202
192
153
218
284
199
214
194
217
228
170
200
206
181
216
252
220
257
229
212
212
162
197
212
254
149
184
189
203
208
199
145
167
208
126
202
165
243
230
185
141
142
196
180
184
152
184
217
205
197
218
195
198
183
161
225
212
235
161
192
278
210
179
150
201
212
185
202
226
234
165
222
198
218
208
212
191
190
129
212
195
250
131
204
223
213
183
115
165
165
235
174
278
172
149
256
170
211
197
238
240
173
203
185
212
186
253
172
243
195
180
245
188
222
184
232
169
192
171
208
230
213
189
190
191
247
240
186
161
170
153
186
180
180
191
186
179
204
193
181
182
249
155
146
231
246
252
216
168
178
257
209
215
209
208
218
205
208
193
226
233
181
193
229
165
205
164
205
167
185
195
183
279
226
206
213
208
206
194
191
224
173
202
133
176
200
247
232
250
146
231
220
212
186
136
225
238
112
199
205
218
250
227
256
173
177
197
199
174
185
163
257
204
234
198
223
166
217
221
251
197
144
200
247
187
193
268
215
125
190
173
234
230
288
252
193
223
190
182
226
179
204
183
214
202
222
225
195
205
239
257
188
229
211
241
207
257
149
228
190
235
242
161
195
223
251
122
183
155
196
206
199
238
207
203
235
191
150
172
182
153
190
201
176
98
246
237
230
204
244
195
284
107
264
157
169
192
181
212
168
160
189
228
136
224
160
184
262
166
196
176
177
212
224
219
219
193
206
237
178
283
209
198
247
206
242
183
211
212
215
222
172
201
207
216
181
251
224
139
208
206
192
238
222
254
205
266
184
228
196
159
204
222
222
197
208
156
183
191
215
179
257
247
281
184
206
185
236
177
187
237
243
212
134
259
279
208
161
185
213
154
190
183
234
182
244
193
232
216
163
181
214
130
192
144
179
235
211
157
248
204
144
196
116
197
255
150
192
228
178
229
155
167
164
238
262
156
184
236
215
176
218
151
197
234
271
190
180
134
180
195
274
152
224
200
237
179
193
135
226
182
211
154
226
214
155
201
234
196
232
229
202
176
238
150
238
118
155
175
184
236
204
228
167
135
166
169
204
173
201
237
271
174
231
194
246
194
175
249
207
207
214
216
265
173
194
157
199
150
202
225
207
203
174
175
149
246
188
214
282
248
233
156
187
159
161
194
158
217
196
163
185
268
249
249
229
178
156
194
150
228
182
203
188
225
236
223
194
242
258
167
182
204
204
267
200
212
233
201
222
273
203
240
166
198
157
234
228
230
222
212
173
200
201
211
183
196
165
184
195
260
234
201
199
224
204
188
181
228
239
210
170
213
201
222
170
226
168
188
206
155
156
183
251
222
229
231
169
159
229
217
241
153
142
283
211
193
254
235
184
180
175
134
187
187
154
195
193
179
139
228
187
230
198
208
184
247
251
207
164
242
228
212
169
151
190
220
153
126
258
166
161
200
246
205
184
220
226
206
182
191
171
197
248
205
257
172
222
164
254
169
236
195
239
203
190
180
207
179
150
255
131
196
182
230
202
208
178
158
116
229
227
217
190
174
242
182
225
218
225
247
181
205
172
131
179
174
153
201
160
186
186
203
219
203
223
152
202
218
227
188
253
191
167
235
186
138
216
177
205
297
202
146
182
175
221
170
189
203
194
188
204
259
199
157
154
293
194
231
218
203
218
219
181
218
90
183
158
193
204
202
204
203
213
210
270
211
231
179
154
227
202
165
254
152
206
188
215
187
194
186
214
204
176
188
187
142
190
205
217
180
167
191
250
242
160
265
155
204
177
217
216
185
173
175
215
248
264
212
172
241
206
139
201
137
228
169
258
203
155
164
169
204
174
173
165
250
133
148
128
95
238
201
125
168
230
166
250
207
218
189
169
198
160
195
234
180
182
187
171
203
185
225
195
210
206
205
175
190
203
228
204
196
151
248
122
220
247
195
200
157
181
186
189
253
208
216
219
190
136
258
202
221
212
239
212
142
227
142
204
212
190
153
193
177
193
177
179
115
232
223
174
203
204
150
232
281
143
189
182
266
254
177
215
203
251
182
179
164
244
148
223
210
210
217
190
210
171
227
216
164
170
241
192
181
223
240
211
209
250
223
173
233
177
177
251
191
191
223
180
200
235
197
236
165
202
216
254
201
189
211
176
218
282
219
162
154
157
158
253
267
182
203
199
221
212
185
161
160
178
236
273
175
175
226
200
160
144
205
186
221
281
240
151
204
190
180
199
231
223
245
232
135
134
234
220
211
206
195
241
190
163
179
187
174
188
161
238
181
193
177
207
181
205
204
248
210
201
273
170
137
185
251
183
159
151
204
212
227
221
189
151
186
198
140
222
248
196
210
93
218
175
191
188
187
152
195
201
177
242
157
252
232
215
232
151
209
151
287
195
222
187
185
220
158
192
145
126
140
242
209
236
193
166
192
195
236
204
197
232
121
149
224
199
145
211
211
180
232
184
140
295
162
173
264
185
211
210
232
242
154
278
163
203
200
191
193
177
207
189
236
199
182
266
167
169
259
197
232
178
220
170
216
194
248
207
276
207
233
190
203
219
172
255
175
209
230
212
197
176
194
230
232
181
201
180
153
213
223
219
226
202
185
233
181
189
164
178
202
200
190
252
197
233
221
243
236
185
170
201
276
153
155
225
221
202
179
210
206
217
238
210
258
239
188
187
207
249
180
232
244
190
248
218
157
156
194
236
188
185
207
201
207
186
258
208
269
179
215
229
252
205
186
150
244
173
191
215
191
184
188
222
188
216
218
202
171
221
191
155
215
227
213
242
159
175
251
220
190
181
180
240
198
195
208
229
192
207
211
161
216
154
140
157
198
245
211
203
193
204
211
177
242
212
231
242
174
237
181
194
128
207
213
184
275
258
202
236
210
200
143
263
205
251
165
171
210
235
256
157
194
209
226
249
249
139
182
223
172
224
172
185
134
206
197
216
207
189
230
224
197
184
242
199
202
206
236
106
254
176
188
231
206
239
209
126
170
230
139
178
191
195
153
163
183
178
250
233
172
126
211
190
193
219
226
249
194
176
197
240
200
235
147
186
221
217
161
220
212
241
214
204
161
150
272
197
150
227
202
217
176
250
184
169
202
188
188
192
189
160
185
254
217
123
188
157
226
164
173
177
157
177
174
234
227
268
231
177
143
124
193
219
227
232
190
213
177
218
213
197
188
214
165
136
199
226
216
169
183
196
223
144
208
173
221
155
176
228
235
235
191
150
207
189
185
156
213
186
242
147
217
178
199
237
188
237
208
185
194
188
181
168
174
156
234
212
191
251
257
148
219
211
228
233
226
216
185
188
163
213
143
171
248
198
196
236
208
160
132
230
160
192
244
232
244
150
166
213
204
244
184
191
176
160
214
228
204
199
218
143
263
230
212
287
174
187
220
192
162
169
221
217
252
203
160
156
209
207
235
165
177
241
206
181
190
187
192
253
222
179
248
178
227
167
246
198
128
146
226
199
183
227
211
196
165
152
210
163
207
246
234
185
174
232
263
225
214
162
255
147
238
200
185
229
244
229
273
207
204
185
215
216
211
216
151
215
205
229
201
189
173
155
208
186
209
242
216
197
139
174
166
200
189
159
223
155
263
208
174
118
247
230
192
211
216
196
181
184
189
151
235
214
127
219
168
147
232
178
193
251
267
206
172
206
168
222
236
157
240
197
139
189
222
227
221
247
251
237
147
116
224
202
203
228
220
177
247
195
194
188
199
244
149
224
246
242
205
202
227
202
229
212
222
148
199
203
164
202
217
148
215
262
239
232
159
203
190
218
175
229
254
227
197
238
251
169
204
211
176
207
230
133
127
187
183
227
183
171
206
168
230
223
168
223
221
219
194
237
218
217
146
187
227
187
213
174
245
187
255
157
217
144
264
240
178
160
206
172
166
197
225
158
156
232
257
234
201
150
191
209
182
152
198
220
155
224
255
159
187
266
165
180
215
230
219
176
191
173
181
233
211
187
229
223
219
229
134
164
161
216
243
198
186
181
179
198
198
213
248
202
187
146
211
175
191
247
210
213
191
196
217
139
213
178
202
174
218
269
241
148
190
204
155
159
215
214
172
156
260
199
198
160
170
275
244
195
167
195
161
239
242
158
192
204
167
216
194
183
217
242
194
237
157
161
171
175
239
214
216
116
166
175
175
169
203
202
191
185
142
191
218
283
180
198
166
238
204
231
195
283
193
194
182
209
222
222
124
185
220
245
217
217
191
214
270
230
134
190
135
175
210
235
179
238
214
244
234
157
204
207
176
158
204
118
209
138
197
172
137
241
227
230
256
201
141
202
166
180
221
205
219
212
216
137
189
267
292
225
232
191
217
290
184
150
173
196
204
212
225
214
172
177
186
221
198
191
108
216
248
207
158
234
179
215
198
201
141
196
196
152
188
135
191
227
171
178
203
210
153
236
216
205
178
205
212
181
169
187
200
223
221
173
166
201
202
192
236
222
208
210
190
233
181
255
187
217
189
173
268
248
195
133
215
167
238
192
227
194
167
197
221
160
231
187
196
219
153
226
195
185
238
248
226
139
145
210
227
231
187
135
166
172
203
178
222
184
181
182
186
224
186
199
257
262
233
217
191
210
219
173
206
218
190
189
206
195
227
249
130
251
214
209
229
200
204
172
176
123
263
228
237
233
189
212
215
202
204
203
251
214
155
144
204
271
157
191
260
213
233
226
197
213
245
202
245
255
173
214
204
191
254
210
237
258
235
206
219
244
221
201
171
222
223
139
215
273
260
155
162
139
171
179
186
157
283
165
204
188
252
188
242
232
190
249
169
184
134
181
216
192
143
149
178
107
226
200
166
194
222
143
181
141
189
190
125
248
203
225
193
191
130
216
201
171
174
155
183
174
257
217
188
202
193
243
188
187
209
170
169
209
152
238
218
138
197
153
229
176
196
185
159
196
237
244
183
198
206
196
164
188
190
235
178
225
122
291
181
216
143
202
220
230
234
223
188
242
202
165
192
231
182
227
199
185
120
208
195
195
245
214
138
173
169
235
232
195
228
212
230
127
180
271
143
218
252
177
254
147
171
190
200
181
151
264
226
230
233
199
196
163
193
157
255
209
240
233
159
156
227
169
224
209
232
199
256
190
237
201
212
171
136
159
183
195
176
256
247
234
203
201
240
225
273
182
168
192
151
216
203
194
176
175
196
272
192
238
167
222
150
190
212
208
196
187
227
236
176
228
222
235
153
239
158
151
247
204
233
250
181
204
207
174
253
158
223
198
268
145
225
190
205
212
150
215
182
201
149
153
218
153
226
239
175
187
185
230
193
226
178
212
184
198
191
251
177
179
172
220
186
202
243
232
230
245
165
176
184
137
214
156
137
210
191
210
206
214
106
245
286
188
221
240
219
258
190
153
158
223
237
189
237
246
200
205
230
158
218
226
223
257
227
183
256
214
209
173
206
260
226
231
241
194
245
228
146
154
181
191
182
177
228
195
165
225
189
164
204
140
178
174
183
192
142
206
219
190
213
146
220
230
176
238
208
222
208
198
229
165
123
160
140
194
161
228
204
221
222
244
255
191
212
209
222
157
205
245
229
151
179
242
231
229
180
139
155
197
195
236
215
209
244
221
199
212
227
212
199
183
203
148
223
202
245
220
220
267
124
182
221
183
219
163
192
153
192
169
186
200
115
276
252
147
220
260
217
194
236
214
169
237
214
179
225
157
211
238
151
218
195
272
215
216
215
253
136
225
234
176
209
188
227
221
235
244
158
169
230
141
191
175
247
228
245
190
202
242
149
147
195
264
229
234
118
181
190
204
154
141
183
165
211
194
223
154
228
166
215
147
258
163
206
186
211
206
164
164
172
246
263
262
198
179
210
221
200
180
154
219
200
203
168
185
198
137
215
211
196
190
184
195
228
203
219
207
200
184
188
241
244
180
192
197
156
205
204
206
223
173
221
244
119
292
194
152
189
209
158
219
270
213
235
137
211
150
213
234
149
187
216
172
150
142
211
203
207
172
185
206
175
198
253
228
203
259
194
171
218
143
224
171
226
222
194
216
223
208
232
189
212
216
158
204
215
212
231
211
181
234
269
197
227
193
182
229
169
238
207
224
206
180
189
182
195
213
176
220
180
183
230
240
234
196
229
187
211
204
203
227
228
207
218
183
208
208
209
281
184
208
222
223
198
255
216
174
258
204
174
246
236
155
176
259
222
164
249
252
187
253
211
123
206
230
145
132
211
178
247
243
175
152
218
256
157
192
179
206
189
169
189
185
157
174
180
190
223
163
218
196
158
209
204
244
212
186
216
186
121
191
186
180
222
187
217
194
228
261
258
180
207
183
195
137
164
171
200
187
198
59
180
284
128
167
239
246
197
191
207
188
159
132
226
177
196
222
191
218
170
194
239
182
201
124
226
171
215
194
281
229
158
241
263
196
190
238
180
121
178
182
225
170
247
190
222
196
196
226
203
114
200
193
199
213
274
185
220
245
222
199
224
179
236
232
244
255
167
210
195
181
191
217
158
157
201
161
134
197
262
205
215
162
262
194
219
238
161
188
255
166
226
163
168
202
259
227
175
209
252
209
235
171
228
261
192
217
221
220
156
195
145
217
143
214
256
182
210
173
190
221
272
198
192
227
209
205
183
217
258
179
189
208
135
219
196
200
218
188
189
185
184
225
246
193
271
141
222
211
204
208
200
183
200
226
184
183
200
153
193
126
149
208
201
190
143
184
220
195
147
247
211
175
219
207
221
233
175
183
146
235
175
184
181
251
240
208
241
236
160
158
227
208
238
226
188
180
216
195
221
166
140
219
196
235
163
272
273
170
199
197
139
223
206
157
218
223
231
241
115
147
189
251
236
131
170
191
181
151
170
193
183
158
219
167
226
232
230
210
237
243
240
226
150
150
229
165
190
169
172
179
222
248
199
212
226
209
144
175
227
265
243
187
194
259
146
186
166
250
238
229
243
192
193
231
231
231
225
149
276
189
265
247
157
176
227
218
217
230
203
193
225
147
174
246
265
199
244
174
225
201
235
210
176
173
136
248
206
175
167
196
184
230
188
199
255
217
146
235
266
202
213
173
166
174
170
170
206
215
199
164
248
245
230
202
236
151
189
216
252
187
202
253
250
158
123
234
160
186
208
175
215
273
220
168
183
190
193
211
200
203
139
198
134
212
189
184
130
216
123
175
198
181
216
147
161
261
229
131
169
210
132
192
178
207
174
261
178
201
188
194
130
172
228
156
235
196
196
135
189
189
250
157
223
214
189
204
172
254
199
231
215
161
245
152
181
260
161
193
227
180
163
205
209
190
242
199
230
199
120
227
252
127
208
228
235
165
206
228
261
177
206
243
208
173
218
217
152
189
242
144
222
149
238
219
176
184
256
199
245
285
234
153
159
167
208
193
201
187
244
169
147
167
221
256
245
227
233
166
172
192
249
208
168
252
193
201
124
204
161
234
214
211
221
225
255
142
239
216
168
241
279
143
233
163
187
224
216
261
186
193
190
226
143
230
272
218
161
174
209
237
186
207
160
250
178
219
208
191
206
182
150
180
217
227
215
186
184
245
200
207
213
198
243
197
192
217
176
162
176
246
163
278
184
220
142
183
235
224
148
147
234
134
282
296
226
220
153
114
177
194
159
241
171
138
197
236
252
186
220
195
231
199
214
182
179
228
225
183
248
272
200
204
174
198
181
144
161
233
160
236
235
261
149
169
210
185
246
158
210
191
209
209
208
153
200
173
190
203
233
222
192
214
133
181
173
199
185
164
172
168
193
158
197
218
196
237
224
180
246
179
173
198
267
216
192
178
143
152
237
154
200
211
178
203
174
229
186
204
163
242
245
255
155
225
210
175
248
158
180
206
180
179
223
132
206
228
200
180
177
207
197
211
136
168
220
212
209
219
195
176
193
231
182
204
229
165
188
236
199
221
218
158
267
165
160
194
245
182
218
263
245
181
132
221
193
198
235
166
152
218
125
172
250
191
222
165
204
220
201
200
209
155
110
196
204
204
119
195
226
211
243
181
167
247
245
218
168
210
162
131
192
175
218
202
204
185
237
209
193
214
263
184
213
187
225
178
236
197
190
219
160
181
119
188
167
242
215
219
183
217
165
152
230
168
228
149
211
218
254
208
155
228
175
191
142
198
154
206
165
208
184
248
233
161
188
219
213
197
254
162
228
219
233
207
212
204
174
258
139
220
177
244
245
192
142
215
243
172
234
177
194
127
209
204
189
202
226
191
202
123
165
187
152
188
215
226
175
254
200
213
145
226
205
221
192
206
233
216
149
172
187
271
222
212
190
149
262
230
160
171
230
198
218
207
196
193
166
208
235
247
185
202
163
248
198
178
235
188
232
264
226
204
216
246
231
242
219
165
252
204
172
184
185
164
193
210
158
176
249
227
221
266
236
209
182
178
216
225
171
242
214
213
147
221
197
139
189
155
199
226
145
163
208
223
250
203
191
166
251
189
232
167
191
232
157
217
151
196
210
203
140
176
145
212
304
200
203
177
183
236
188
185
181
200
166
249
162
180
211
183
236
122
221
131
191
155
211
170
215
167
228
243
215
220
202
239
189
202
202
209
184
160
229
217
206
236
230
191
206
183
198
172
246
212
227
174
165
185
176
121
267
151
228
233
147
205
266
156
268
222
207
212
222
211
264
230
182
186
201
229
227
179
191
213
240
185
154
206
197
265
205
248
169
182
228
187
243
178
82
198
193
175
195
182
226
242
232
270
203
229
217
221
215
163
197
196
237
238
269
226
223
153
227
212
174
174
254
264
197
191
161
181
213
258
250
183
271
228
193
185
192
182
183
180
199
215
214
247
238
187
145
204
193
227
230
230
168
209
163
176
190
137
154
239
202
254
196
215
161
247
219
192
179
249
157
154
220
237
209
181
243
211
246
151
215
181
207
247
200
209
207
171
214
219
264
284
264
194
183
177
219
255
219
189
256
245
228
192
156
122
245
249
250
205
210
234
225
159
198
208
117
158
223
222
199
282
236
140
209
180
208
156
259
236
279
249
218
116
153
205
237
149
188
189
146
122
171
204
193
158
202
129
198
228
238
181
194
117
201
189
190
152
231
178
158
211
213
179
160
183
185
225
240
213
207
272
250
192
184
172
185
232
190
217
135
189
239
221
205
199
224
257
243
131
247
232
225
210
168
215
236
206
241
156
140
163
240
192
136
164
209
210
182
243
200
126
169
155
223
218
206
210
210
220
135
235
189
148
245
157
214
218
170
181
188
152
208
100
199
127
147
216
189
243
215
206
183
189
207
204
116
124
225
197
184
241
144
189
201
214
208
227
194
233
264
206
233
227
190
119
168
198
257
190
196
220
232
171
260
186
133
203
184
169
165
196
237
247
150
132
155
180
205
214
201
236
227
232
166
161
176
239
227
174
172
195
250
227
231
176
197
214
228
185
199
230
184
142
189
171
251
236
216
207
173
234
218
220
161
250
183
204
205
254
196
143
188
242
150
135
155
143
172
227
168
189
154
167
250
244
234
200
247
250
159
183
233
224
226
188
173
161
180
219
212
232
166
153
240
214
190
184
212
233
272
248
208
252
232
191
155
160
187
200
187
178
212
182
268
199
178
189
160
247
172
235
237
185
159
165
257
198
221
196
242
265
186
215
205
249
200
191
152
263
191
176
218
202
212
165
226
205
275
218
186
251
191
185
181
207
178
181
188
160
203
226
158
178
167
154
213
294
274
167
194
211
188
194
181
230
193
237
179
202
181
164
166
217
214
156
254
159
218
182
237
151
185
225
185
228
182
173
151
154
193
145
215
165
197
174
177
241
265
193
141
228
185
204
240
261
214
165
254
216
236
167
178
91
221
256
223
174
242
216
127
212
154
227
199
191
173
208
247
160
151
222
222
170
194
118
226
239
244
237
194
207
246
178
182
163
207
209
188
224
267
177
247
140
197
170
190
212
210
261
224
242
226
201
179
187
151
160
190
150
193
214
190
161
179
184
250
193
179
141
200
192
200
194
211
191
196
209
195
218
187
103
219
229
222
133
225
199
180
227
171
195
227
155
221
122
201
152
199
173
179
160
228
199
224
200
209
224
189
151
274
216
189
147
212
224
151
120
232
229
205
282
209
150
191
163
227
134
184
200
205
183
187
140
136
206
152
198
156
224
258
231
192
198
235
220
161
161
202
161
170
228
121
239
225
261
231
201
171
226
195
220
205
257
214
143
211
183
162
184
193
199
174
230
229
220
176
235
205
143
194
256
223
181
266
195
215
218
206
149
218
213
223
225
196
253
184
198
220
190
221
270
191
174
166
145
190
167
114
193
245
227
212
169
197
228
193
189
214
222
187
195
190
207
150
169
181
213
201
184
256
245
197
249
219
199
156
210
244
230
158
190
183
247
174
164
238
237
267
213
183
213
213
221
216
218
168
199
197
148
181
198
240
213
234
181
226
201
190
201
216
218
190
168
218
231
146
218
166
210
204
221
243
185
233
160
209
193
206
246
182
185
215
242
225
216
193
192
159
224
185
217
196
208
181
142
256
224
262
216
198
182
138
210
231
202
196
156
208
183
141
177
211
133
244
167
162
205
193
170
230
245
192
228
180
184
201
224
185
207
224
199
203
261
230
217
208
192
163
164
236
215
152
175
166
182
182
176
256
169
224
166
213
211
148
194
175
227
168
141
291
220
223
186
233
236
199
197
177
183
270
240
154
210
196
214
204
225
151
163
186
180
204
176
160
252
174
177
119
169
156
155
234
184
194
246
175
223
226
188
222
144
218
230
199
233
180
228
202
207
203
170
200
174
224
190
222
165
219
177
203
197
196
204
212
181
224
214
129
172
201
177
189
198
190
221
184
147
146
239
219
265
192
162
205
175
147
157
168
152
146
177
189
229
140
167
149
233
231
265
192
189
213
150
242
221
209
202
247
212
196
170
222
223
199
206
209
249
169
196
220
258
244
198
211
199
224
241
176
130
252
211
177
221
190
232
132
242
182
142
213
230
188
210
164
167
153
204
168
187
225
191
224
193
165
250
279
225
200
227
216
194
238
181
215
212
145
177
191
191
210
178
213
235
249
166
211
181
220
204
235
169
203
225
238
238
235
235
250
222
218
241
198
215
192
123
214
201
227
194
127
266
192
183
199
200
203
221
218
187
206
184
214
220
187
221
187
203
253
230
224
168
215
218
212
215
205
228
159
190
148
182
177
150
190
201
211
285
218
174
196
197
128
135
148
198
264
201
192
145
219
157
223
183
169
212
110
214
219
205
242
146
155
135
231
204
168
211
171
145
194
129
251
188
186
226
151
173
231
156
208
182
249
172
119
233
166
176
203
182
186
164
206
225
232
152
243
163
201
273
206
197
208
214
165
180
220
167
207
183
233
222
160
266
120
225
191
179
187
211
205
198
114
184
182
200
241
186
186
205
206
271
189
251
200
292
275
161
185
225
204
228
228
200
148
135
236
198
231
235
204
216
138
238
221
163
187
235
245
154
197
118
223
146
191
137
218
232
169
214
237
214
122
187
218
182
204
183
223
244
237
183
200
201
214
244
196
203
186
264
165
159
227
183
160
219
191
236
247
220
195
180
237
183
160
195
205
244
211
206
198
184
248
215
213
259
243
212
224
205
209
209
171
245
288
205
179
203
221
223
227
200
126
199
178
222
219
182
200
191
209
154
184
229
204
174
171
253
196
259
205
223
208
161
160
226
212
239
205
226
154
181
184
162
197
139
173
186
174
223
193
176
111
226
139
205
216
190
191
132
182
250
96
213
203
189
153
156
253
222
204
204
150
237
195
237
207
192
237
150
245
193
127
150
181
261
201
179
180
209
196
192
166
225
250
242
165
183
170
154
224
227
220
167
173
234
237
171
194
235
212
180
226
204
174
182
236
229
177
221
218
227
248
213
182
222
207
217
214
191
189
260
231
210
222
237
213
225
222
177
156
211
190
197
169
188
68
257
151
196
156
168
220
266
213
280
197
189
205
165
211
219
205
218
179
160
146
206
251
160
160
162
265
211
194
204
192
255
237
151
217
233
184
215
146
173
216
195
213
174
209
195
195
229
182
197
188
168
206
174
178
200
166
209
144
199
180
245
268
155
212
170
184
230
164
202
220
172
169
190
150
220
239
158
212
232
222
254
195
187
157
177
205
202
230
196
185
213
216
235
194
207
224
192
154
229
147
209
180
207
231
194
167
232
193
197
162
180
204
153
216
179
218
167
185
206
201
212
203
226
220
143
218
179
194
114
206
215
248
164
172
216
232
257
183
206
198
224
257
239
173
209
126
185
146
162
208
172
259
219
228
218
196
212
164
215
243
197
211
203
241
172
167
197
188
224
158
209
175
184
247
216
224
206
199
211
219
183
181
100
204
186
218
205
263
184
190
207
194
200
193
224
219
225
261
241
218
197
220
229
191
220
208
227
241
173
205
211
226
139
203
269
268
197
159
227
170
174
168
163
149
226
134
201
191
125
231
162
218
190
203
183
184
214
165
176
192
160
212
251
208
226
226
188
164
143
231
190
213
194
196
214
254
206
197
272
186
186
233
176
183
216
212
206
181
191
220
193
192
216
222
137
166
249
197
171
190
182
258
205
243
125
241
207
269
203
116
197
174
244
136
157
225
223
150
169
210
266
200
116
195
154
127
214
233
184
151
177
264
182
196
202
203
184
252
290
196
262
174
210
191
200
228
193
234
215
227
191
195
161
228
236
174
205
181
199
182
180
173
164
210
160
155
223
190
187
264
201
198
167
285
250
179
149
205
148
199
206
190
216
229
233
218
171
217
147
205
212
226
232
215
229
194
244
184
194
170
210
147
166
188
186
221
244
245
260
234
194
221
214
232
193
182
258
182
243
209
172
195
251
127
248
235
203
194
202
192
201
199
217
262
213
163
241
221
228
190
156
180
186
168
251
199
192
181
241
187
244
221
205
181
192
187
239
249
213
233
203
253
135
235
191
204
166
245
235
185
221
182
191
188
147
198
226
216
175
172
213
182
192
165
143
203
219
200
144
203
203
209
206
173
249
189
232
216
185
192
181
219
282
162
194
130
209
198
194
153
232
241
143
232
206
133
176
221
243
225
239
183
197
240
183
211
147
204
186
197
161
120
196
211
218
234
227
234
255
159
234
204
209
175
205
170
165
237
259
164
261
219
234
231
192
209
184
203
209
164
244
226
254
223
122
225
185
206
247
193
233
217
214
208
272
165
213
208
201
141
187
215
162
229
209
203
156
141
171
215
262
218
222
245
189
222
181
160
206
215
170
173
178
233
226
182
223
236
238
182
225
216
228
196
250
289
181
213
201
220
258
175
161
154
203
162
140
125
213
239
175
208
246
189
230
227
180
180
217
242
176
211
203
183
188
214
217
157
175
126
210
223
227
177
187
209
181
250
185
224
133
218
180
203
227
213
217
173
180
213
239
163
206
243
216
251
197
276
199
201
192
164
211
214
247
204
240
137
196
252
191
167
229
252
179
242
201
153
153
279
268
157
177
186
228
225
224
205
219
249
243
134
164
232
183
220
232
250
283
234
185
264
209
230
230
203
189
234
180
183
208
286
180
187
203
203
222
178
207
180
139
144
217
193
221
174
229
201
222
172
190
220
242
184
188
256
201
214
229
176
226
202
168
162
213
181
206
194
195
212
195
236
224
152
150
124
223
120
162
181
199
170
161
172
205
129
178
183
194
218
213
223
191
267
239
163
144
191
227
247
214
186
247
155
165
171
246
280
251
193
209
206
181
228
223
250
253
146
165
262
245
116
199
299
237
164
178
194
222
216
187
201
216
196
226
173
162
232
212
235
226
162
193
177
202
186
206
231
178
196
274
197
192
182
185
214
200
210
129
184
263
251
220
265
192
205
190
114
199
173
203
134
249
234
196
207
120
201
233
262
179
195
204
168
228
177
212
231
175
239
173
222
228
217
221
176
158
208
214
188
183
219
214
218
153
209
241
181
232
161
156
193
177
208
219
189
270
246
253
220
195
204
223
209
195
192
174
161
273
139
244
167
187
223
185
259
229
181
192
229
212
189
167
196
162
188
212
195
187
230
228
238
229
169
260
222
233
171
178
214
221
135
233
202
181
244
252
228
192
250
222
243
168
188
184
231
136
209
216
205
182
234
215
178
252
164
235
190
216
234
191
193
226
226
186
204
179
192
220
201
210
152
223
232
164
282
177
221
158
190
197
202
164
159
224
244
198
225
209
186
174
159
158
179
251
195
203
145
167
182
207
245
203
183
158
253
249
111
182
232
189
204
270
173
197
230
204
185
196
263
196
215
203
210
218
226
216
240
163
227
140
187
255
223
198
201
199
139
172
204
216
207
182
250
234
228
200
252
231
161
218
145
229
220
240
229
188
165
238
197
158
211
193
172
229
219
220
192
227
233
166
239
207
171
147
188
282
251
165
231
189
240
189
172
245
169
209
229
210
214
215
237
194
187
192
197
213
191
118
163
164
179
185
123
169
188
209
224
196
209
183
175
246
221
202
137
141
108
199
151
250
224
227
175
232
173
228
141
207
230
169
238
226
232
223
154
189
205
248
170
272
223
232
181
238
154
179
224
166
170
175
259
205
105
228
186
211
206
183
204
220
194
188
183
213
148
245
172
229
194
182
188
240
171
171
161
179
160
206
141
211
238
188
200
205
214
203
187
229
219
164
239
255
188
176
199
113
197
210
206
295
213
252
188
227
245
226
244
183
176
271
169
205
192
170
271
243
186
248
175
170
227
219
202
174
198
121
248
188
219
202
165
144
218
175
193
153
205
253
221
169
279
228
215
211
191
199
138
178
256
174
184
181
168
191
247
209
180
189
188
203
219
239
189
194
212
158
202
201
172
221
185
236
176
220
179
153
219
236
197
220
236
263
184
165
221
198
227
198
183
189
199
172
248
258
194
200
219
208
193
227
238
229
210
128
131
259
201
238
232
201
168
210
186
235
192
206
213
226
186
167
181
226
140
266
194
182
188
206
147
168
162
220
223
200
181
193
244
245
172
147
146
103
212
196
225
230
208
224
177
165
209
206
208
184
215
208
220
231
170
236
197
197
218
237
188
230
221
179
156
226
199
192
211
199
224
173
185
192
226
206
204
176
183
195
207
109
164
205
142
167
185
229
172
144
206
212
239
187
215
219
207
200
238
193
178
235
198
238
199
186
193
178
217
263
231
181
223
162
186
220
169
199
225
229
164
217
183
125
231
176
130
124
165
280
216
178
182
241
154
185
188
216
210
152
208
212
204
216
221
239
206
194
192
202
202
153
213
248
222
217
198
204
187
190
183
148
216
184
123
213
152
134
225
167
152
237
200
268
204
167
217
183
155
122
212
236
237
243
101
169
181
233
214
202
220
226
253
203
124
147
232
171
226
212
210
167
209
196
157
217
188
160
238
170
248
171
175
217
117
210
182
162
242
245
194
217
194
182
185
180
151
187
235
234
159
181
254
162
167
175
230
200
237
150
215
212
206
244
197
149
132
135
231
184
177
183
232
202
247
145
236
228
229
188
265
175
175
199
207
176
177
201
121
200
248
132
166
190
153
202
102
157
275
140
206
210
194
213
245
226
136
263
185
209
210
221
180
220
177
197
224
203
218
175
185
199
231
254
209
154
180
209
192
177
154
239
171
160
199
218
247
243
213
141
212
166
143
212
157
141
132
233
212
213
161
197
221
169
191
202
212
227
156
228
184
162
234
202
231
265
187
213
245
203
265
211
226
123
213
243
174
170
217
258
259
191
185
145
264
202
136
204
143
144
193
191
227
198
206
188
213
247
177
228
153
227
238
224
201
196
213
185
214
141
220
201
143
133
203
209
172
217
238
242
240
225
189
184
214
179
195
205
213
197
243
230
209
221
197
144
193
246
170
173
133
205
179
282
163
210
201
217
169
225
228
197
196
211
191
183
191
166
178
222
228
233
182
183
236
183
193
146
229
176
187
211
259
220
242
119
175
162
201
226
232
200
195
247
170
217
136
164
162
201
169
259
260
172
193
213
198
190
192
211
176
223
193
192
222
163
196
235
187
201
265
187
213
216
183
171
194
298
188
243
186
223
225
170
249
168
224
143
221
156
238
197
192
190
153
273
183
164
128
171
201
229
170
227
115
199
145
225
213
211
188
173
164
198
185
257
220
187
161
285
259
191
234
125
204
186
180
213
218
199
213
169
196
218
233
203
132
134
236
170
198
256
205
198
186
231
177
237
140
187
140
213
219
211
206
181
223
207
195
233
253
190
194
194
186
126
215
208
139
246
236
156
222
257
173
211
224
151
166
210
233
249
263
236
153
240
221
234
204
208
245
211
218
209
178
230
219
172
175
217
195
235
199
205
260
233
229
225
190
165
192
164
247
191
185
236
211
226
205
274
212
154
228
187
203
270
150
188
200
251
187
153
172
225
172
192
184
193
196
246
183
229
220
233
221
151
303
257
271
181
195
196
173
157
218
227
225
184
156
167
180
212
201
224
196
145
233
125
138
209
106
182
231
176
216
223
147
203
153
213
169
275
201
216
210
216
186
153
201
211
146
212
190
227
192
167
162
184
208
204
257
191
205
203
269
217
213
221
229
134
181
181
193
176
157
138
149
232
251
260
191
158
195
112
170
219
235
168
163
189
211
196
238
205
211
197
170
257
246
190
209
176
213
197
181
198
211
170
160
166
210
194
237
144
219
243
197
162
228
219
162
216
194
216
223
204
203
173
187
222
213
187
200
227
229
204
195
189
141
175
123
234
217
185
212
138
176
258
190
233
216
240
172
196
160
233
147
218
195
192
148
146
205
224
209
238
106
134
169
198
166
131
156
193
165
175
209
188
233
162
154
174
156
193
212
225
159
136
217
253
212
176
254
183
202
121
211
242
219
211
242
208
216
255
170
172
208
187
194
200
223
198
209
180
214
157
241
217
135
207
193
259
264
144
152
193
189
278
181
227
150
137
135
189
236
185
234
162
177
159
172
277
193
216
167
195
157
254
210
211
244
183
178
228
107
187
195
199
234
168
179
160
234
175
209
210
175
157
178
291
148
216
159
184
243
230
154
222
234
189
209
244
226
206
173
210
214
134
192
225
195
215
177
255
221
197
257
179
90
202
165
134
218
184
217
188
191
187
202
184
161
117
135
197
233
196
192
246
166
215
190
243
236
181
159
153
199
146
194
198
207
250
191
212
159
228
180
210
233
183
218
152
151
234
196
173
214
127
174
225
216
215
204
203
264
181
226
216
223
217
210
176
136
152
177
199
237
175
176
154
217
225
175
225
249
176
212
218
242
220
235
168
241
238
144
249
195
195
177
180
159
213
148
208
231
196
172
256
208
185
164
183
236
250
235
169
204
214
174
228
199
187
211
176
198
242
213
250
236
193
160
269
142
222
193
174
228
214
180
181
231
218
255
223
200
203
199
211
198
172
218
162
96
264
209
172
232
202
146
269
168
228
232
138
274
256
244
202
233
250
184
129
209
219
195
180
218
183
191
194
189
294
213
244
148
244
169
193
213
230
171
195
132
164
250
171
205
154
255
185
215
138
177
237
177
287
186
199
173
234
184
169
233
192
215
201
238
210
191
159
176
245
230
214
233
135
195
283
159
254
152
198
234
174
195
237
171
196
169
243
193
190
207
223
162
185
219
168
189
249
259
231
273
218
223
211
184
168
126
179
141
200
149
177
181
236
234
163
206
201
211
196
237
218
171
189
220
217
218
215
183
201
261
177
194
163
238
195
182
158
180
268
175
147
210
187
185
217
170
118
192
178
181
184
270
297
179
198
182
217
182
244
189
239
269
202
211
209
206
222
133
232
215
212
164
193
167
223
163
224
208
211
172
176
153
180
194
245
176
200
268
202
196
210
147
191
203
197
177
213
128
181
258
250
186
208
215
203
221
226
135
193
197
216
218
206
256
192
123
182
184
221
217
232
233
197
205
187
180
233
208
216
241
216
184
265
158
169
218
157
259
159
211
167
210
172
168
220
207
246
159
174
156
145
229
182
196
142
203
245
121
159
200
173
159
240
215
179
204
277
144
213
176
248
201
209
201
153
223
247
186
166
143
210
227
198
185
193
200
265
229
235
219
228
184
164
194
181
235
205
230
239
192
276
243
176
179
244
241
182
181
237
176
223
179
122
269
243
212
174
189
183
252
131
232
278
172
219
183
190
212
269
186
228
225
152
197
223
191
219
220
201
231
260
160
187
180
226
181
175
151
202
223
210
181
193
204
207
242
212
191
172
193
214
186
208
217
188
139
159
202
170
174
216
172
208
182
163
176
235
178
220
191
199
196
213
221
206
191
172
195
212
231
194
217
170
246
209
175
217
194
229
148
193
219
116
160
197
160
215
202
167
227
185
234
238
160
184
197
276
156
202
244
193
213
122
194
139
214
180
217
179
224
125
146
235
234
147
194
214
190
274
198
223
195
206
172
213
254
169
236
127
253
251
223
188
159
197
172
211
239
213
211
215
191
297
123
215
178
234
171
253
162
225
189
213
206
172
180
244
223
255
115
196
160
198
160
186
192
162
217
155
216
225
190
240
181
201
242
201
196
247
195
219
208
176
248
150
207
210
248
178
177
203
232
173
197
216
192
233
83
197
277
176
247
194
178
191
226
240
233
199
156
214
199
202
188
168
246
166
189
215
199
186
131
174
231
268
271
182
258
216
214
170
223
237
276
235
231
249
154
168
141
198
188
235
203
172
209
156
244
238
223
220
206
204
197
126
168
227
182
193
169
162
146
218
236
133
255
199
187
97
223
226
209
194
259
226
262
206
191
179
193
191
252
186
219
182
204
248
238
213
167
210
241
142
142
203
187
201
194
198
247
268
252
191
197
216
251
210
178
180
192
151
162
163
224
233
247
172
221
181
178
201
216
235
216
202
139
235
197
263
206
222
220
218
213
174
206
266
197
222
196
222
252
185
217
208
215
248
184
226
218
169
191
239
210
187
229
214
182
190
238
265
201
214
231
208
227
145
202
200
146
239
157
208
224
242
232
258
280
147
208
195
225
261
211
221
247
195
217
229
170
189
260
214
263
219
202
221
207
216
199
215
178
198
177
174
253
258
197
232
154
262
178
219
190
265
131
190
211
210
248
201
207
152
212
249
206
176
169
249
208
200
257
191
175
221
227
212
254
188
218
171
212
215
187
134
193
195
222
184
178
215
201
205
181
200
166
204
235
157
222
251
263
177
208
146
188
239
254
173
193
167
188
149
206
204
246
158
200
245
192
151
215
214
215
215
190
211
176
177
225
223
206
185
218
173
223
209
194
202
210
278
186
256
219
232
200
186
219
164
242
203
169
251
242
210
174
243
211
183
165
272
177
174
207
168
197
208
165
219
197
228
176
218
189
257
161
234
208
206
165
196
153
200
198
172
216
242
195
279
250
242
194
141
179
227
195
195
210
196
257
261
176
226
141
194
184
185
269
257
165
235
180
207
212
224
223
176
189
251
153
148
214
185
164
196
260
185
206
186
215
211
171
188
231
190
212
188
205
170
185
237
161
197
180
184
225
231
185
198
209
274
194
135
146
202
181
212
238
164
136
213
186
180
246
244
241
246
200
246
230
214
180
223
185
242
239
217
204
142
260
221
188
218
269
215
229
152
202
150
201
178
175
189
195
156
207
141
158
225
222
165
140
221
224
237
246
148
203
220
169
159
254
214
198
206
219
149
147
194
187
213
218
181
240
250
234
220
200
193
183
216
233
245
235
255
221
206
232
151
186
172
203
241
193
260
225
189
227
193
218
147
217
250
203
198
226
230
228
233
195
226
182
207
225
229
150
229
223
181
250
226
157
200
156
233
171
220
172
196
199
140
195
204
193
247
201
183
235
172
140
166
250
189
160
218
217
238
172
215
232
243
199
148
237
167
194
286
237
233
185
182
185
244
195
206
201
261
154
217
152
225
212
123
233
112
164
266
213
218
232
256
181
139
182
151
230
185
222
202
174
154
232
169
207
180
194
277
195
193
219
194
193
156
191
221
191
225
185
130
249
142
229
156
118
227
246
208
284
179
212
164
251
202
217
184
226
215
142
174
184
190
209
147
201
219
198
161
155
245
168
187
168
198
224
211
226
193
150
140
261
202
249
211
227
224
170
167
253
120
194
225
223
208
232
221
205
189
217
196
198
193
246
190
255
189
260
153
224
129
222
247
124
231
217
218
220
165
254
254
228
203
231
223
216
262
210
220
149
267
210
229
232
182
165
249
222
211
224
200
218
141
172
178
195
176
192
200
230
228
189
191
286
241
190
196
161
219
223
161
249
157
238
251
201
150
185
257
152
195
162
187
128
127
181
179
201
206
256
193
218
124
271
194
209
162
102
183
174
225
186
197
208
162
165
139
224
187
203
200
181
185
227
181
213
237
253
154
206
186
191
195
152
235
217
224
241
295
235
213
231
167
219
170
177
248
199
241
259
236
258
169
205
165
314
228
153
181
209
199
206
162
187
166
170
252
199
215
164
198
142
163
167
182
155
237
180
179
163
149
233
232
154
178
260
226
226
184
229
178
198
146
211
264
167
150
271
134
242
171
164
193
208
226
197
242
248
185
203
203
173
199
208
183
185
194
217
250
215
180
259
179
181
168
198
210
199
202
215
231
239
205
245
190
256
179
163
242
217
217
232
169
195
215
145
183
206
246
252
200
134
179
209
152
171
200
173
231
228
273
101
243
181
185
188
246
205
219
249
208
138
247
127
178
241
199
205
208
239
218
197
110
198
186
220
253
140
190
209
201
134
224
190
239
201
156
210
202
222
168
212
217
211
185
213
220
165
220
204
236
238
205
183
227
218
212
194
208
205
216
207
209
224
216
175
179
222
187
180
208
181
104
224
184
133
272
166
182
222
152
178
242
189
214
149
203
163
173
212
266
209
223
156
227
211
254
215
208
225
235
166
210
199
220
179
166
149
174
192
190
177
224
160
199
211
273
231
224
208
169
129
243
188
212
258
240
161
207
189
184
209
189
207
206
200
189
223
226
191
195
172
197
146
168
221
256
210
194
229
175
182
126
192
207
94
259
199
153
181
206
254
206
173
227
201
207
195
247
232
234
229
292
130
215
233
173
165
202
209
235
161
148
210
216
118
111
201
185
238
232
227
156
206
183
149
185
192
185
215
218
196
202
242
228
203
227
149
205
205
165
212
201
174
181
164
139
217
256
169
188
189
132
251
182
207
243
185
214
239
208
171
190
182
217
226
247
171
151
219
224
203
209
237
200
226
132
235
234
176
259
234
254
204
211
225
171
132
243
213
185
115
208
202
178
215
127
171
258
129
167
210
191
246
176
184
264
212
194
185
231
208
156
221
223
241
171
163
244
187
133
243
202
173
197
154
254
227
228
205
171
215
185
173
220
144
254
220
171
223
257
189
172
177
185
191
184
207
194
227
200
221
174
175
270
187
141
134
175
216
181
199
187
147
186
247
174
267
171
199
145
263
202
274
244
118
179
168
225
236
220
204
198
183
173
175
191
213
193
232
177
220
163
203
182
235
170
185
201
238
213
200
241
178
240
290
143
193
244
198
208
133
102
155
231
227
188
219
239
170
172
168
213
284
209
184
199
163
214
229
227
213
240
208
236
173
228
163
165
207
187
168
265
207
192
259
251
173
157
248
215
240
186
199
170
165
201
231
240
186
161
201
186
197
169
241
156
164
165
220
165
175
225
150
196
178
146
178
192
209
238
208
233
233
219
213
220
205
198
214
222
231
242
208
245
156
171
160
233
206
221
214
216
215
164
168
222
263
209
249
213
171
227
254
195
223
251
244
126
169
144
240
215
170
208
245
225
156
237
203
184
202
165
237
203
167
191
129
246
189
261
199
206
126
158
238
193
144
160
175
196
241
237
239
181
209
179
216
207
227
168
200
227
207
224
222
176
253
166
167
183
167
235
186
252
220
195
211
157
223
173
139
251
232
210
243
235
177
257
213
212
207
199
188
161
225
226
149
224
198
211
185
235
238
204
215
233
189
202
227
244
181
188
201
203
234
151
222
228
198
210
136
190
192
210
189
205
158
177
167
210
227
180
210
177
223
221
211
218
225
218
193
252
207
237
237
168
185
194
153
235
218
237
189
156
173
188
226
198
197
236
203
181
183
138
198
229
251
222
162
242
162
185
156
208
243
226
238
218
196
167
207
183
192
225
200
201
222
163
164
173
206
209
183
173
205
256
224
174
207
189
242
202
217
205
204
208
176
212
201
140
234
273
215
228
183
257
194
178
202
170
220
222
201
155
219
208
162
245
137
256
174
166
208
189
179
186
209
272
214
183
243
244
200
215
256
202
168
181
143
238
217
214
181
171
204
175
255
232
194
200
178
208
234
241
258
189
223
224
182
197
217
235
205
226
225
215
232
239
235
176
288
188
200
159
161
224
255
195
190
204
226
156
249
187
212
192
276
242
226
189
181
150
216
226
172
227
240
222
250
242
184
169
225
209
239
198
209
214
156
185
167
235
202
155
211
221
200
183
171
121
245
239
196
215
168
200
159
240
178
211
188
229
150
220
206
148
176
208
260
157
249
241
193
195
202
192
253
199
244
237
193
205
217
184
215
266
172
177
158
157
272
190
182
122
169
211
194
237
188
173
156
142
179
204
189
255
196
134
180
174
185
138
218
215
190
188
188
199
168
228
221
219
241
216
171
165
115
159
166
184
162
192
189
174
266
221
238
210
215
240
223
250
184
234
149
232
226
221
234
168
170
223
205
253
216
237
189
230
306
206
221
240
185
184
156
216
148
196
227
222
165
212
165
185
248
197
187
216
231
198
147
221
195
173
223
222
240
245
167
196
141
222
144
154
216
237
178
194
179
150
217
195
244
261
221
202
195
201
184
174
202
154
247
158
237
249
218
164
200
148
182
212
213
178
245
232
201
152
223
202
238
217
209
172
180
139
256
188
150
208
173
165
192
200
254
206
221
147
157
185
192
212
226
226
194
224
226
220
213
178
252
220
235
257
216
201
202
180
197
212
132
181
172
192
166
175
189
184
188
188
177
222
217
233
216
211
200
223
269
128
214
213
218
153
242
155
246
218
233
235
195
201
175
239
206
205
194
181
212
223
199
229
244
215
203
156
234
207
206
196
138
220
194
236
191
262
224
160
211
218
195
174
191
197
188
136
141
149
146
152
203
215
222
124
181
197
170
207
173
165
162
281
207
161
207
232
147
210
204
233
193
210
222
177
246
198
212
207
222
178
186
279
194
197
175
255
253
205
220
229
140
206
225
178
202
208
215
238
229
246
190
177
150
203
186
217
197
176
198
205
218
239
214
182
211
203
205
164
241
226
184
198
263
213
204
209
235
181
159
222
225
182
180
221
172
206
234
210
220
150
192
166
204
223
205
160
192
177
248
199
254
174
138
171
220
180
276
225
225
158
132
199
189
210
245
161
245
196
183
175
201
152
247
246
224
208
150
197
203
199
211
188
178
167
183
195
195
265
253
184
190
160
251
174
194
206
196
165
206
195
200
198
230
233
221
263
168
178
193
251
167
196
168
173
152
244
233
225
130
159
209
121
155
196
202
211
192
195
233
176
168
195
247
158
204
232
179
216
239
182
242
238
171
172
183
264
162
171
199
191
250
210
223
201
130
207
209
174
224
244
247
200
191
159
170
185
278
192
183
201
178
227
195
235
189
173
246
213
214
212
215
190
188
198
262
206
173
192
250
215
268
180
169
173
209
202
271
220
127
209
193
225
159
175
193
169
235
183
253
248
259
226
145
211
181
172
194
216
241
199
171
216
128
179
234
192
221
228
190
240
175
250
196
161
217
168
266
215
194
219
220
171
134
240
136
251
218
145
171
176
237
179
246
224
220
243
264
243
204
169
220
167
226
225
240
217
174
184
210
174
190
196
214
151
221
212
192
254
218
173
153
145
216
204
251
237
215
177
238
186
250
175
210
193
261
164
238
179
147
229
182
212
209
229
241
98
197
273
186
210
184
147
225
191
177
137
220
178
256
193
224
238
231
229
211
146
220
196
257
179
193
159
198
217
167
192
227
200
234
228
152
225
167
144
204
224
117
230
156
194
251
213
190
188
170
151
204
236
252
178
199
268
209
203
211
169
187
242
171
188
146
232
154
173
159
168
194
262
211
260
247
203
171
203
218
221
233
145
217
184
192
218
252
211
194
259
156
202
175
186
186
179
196
200
193
213
195
184
180
174
173
233
228
218
188
162
166
197
225
141
217
187
225
218
140
225
160
246
259
189
171
174
225
171
175
209
244
152
184
236
236
200
229
189
169
218
167
198
245
207
202
178
198
218
184
264
264
187
204
215
233
225
227
223
173
228
173
189
205
261
229
204
202
153
232
220
203
174
149
175
211
196
177
156
227
208
220
160
198
179
206
153
238
185
266
232
175
204
199
170
226
196
219
189
206
184
266
197
220
252
194
227
254
203
198
123
224
132
162
211
225
194
224
110
233
176
144
226
227
252
224
180
135
200
177
174
157
253
181
235
170
243
196
164
236
212
207
170
124
243
177
199
183
241
170
212
223
186
245
172
197
154
117
231
244
191
216
232
203
162
210
163
128
144
182
170
144
173
173
208
152
228
175
213
209
189
227
225
213
162
199
122
220
225
197
218
176
174
215
238
155
247
155
200
180
253
193
246
255
140
179
147
203
225
197
182
125
168
76
157
245
160
220
168
226
183
196
194
244
176
218
205
223
241
142
146
173
178
207
196
207
187
246
196
204
216
239
189
194
199
172
163
188
209
172
268
194
247
193
224
194
186
246
207
172
239
224
245
241
175
199
199
147
206
206
186
147
192
149
177
202
206
236
123
236
211
209
148
215
236
190
205
170
250
206
157
186
247
191
252
209
213
144
115
173
216
238
226
221
200
292
156
212
180
229
246
204
149
220
230
221
233
238
211
186
165
263
195
208
164
162
198
190
166
156
190
154
159
219
200
189
205
169
114
138
198
241
177
161
255
196
253
144
228
214
193
208
159
218
255
183
163
162
207
207
239
177
189
166
247
112
206
225
203
234
198
184
143
254
202
221
131
178
191
188
235
180
169
192
171
202
230
141
269
176
234
223
199
226
143
170
206
223
129
185
221
254
183
179
211
220
160
225
246
214
247
218
133
147
213
202
257
217
233
149
157
200
214
124
135
174
168
200
174
143
244
180
232
213
163
220
200
213
171
224
208
190
204
162
163
243
108
121
139
208
217
179
164
229
138
141
155
240
171
119
168
231
190
262
237
171
252
133
185
193
202
205
200
279
228
155
253
183
194
161
169
215
220
208
198
193
210
208
198
212
261
162
162
170
216
184
212
206
201
151
214
189
211
183
156
200
233
164
197
203
170
140
173
230
205
233
180
187
230
141
194
134
164
157
165
230
152
152
239
209
278
168
196
255
178
215
209
144
189
222
254
243
158
226
223
208
211
181
255
245
134
145
237
225
232
217
195
207
108
222
170
148
218
200
229
179
245
185
213
217
237
230
200
195
182
233
145
215
255
191
180
217
202
190
158
270
252
157
172
197
182
251
137
187
210
263
239
238
158
206
203
221
191
242
166
214
158
188
185
217
178
179
255
224
173
181
183
185
155
220
188
205
188
225
215
192
178
229
216
159
209
177
218
171
156
223
149
237
174
241
157
202
224
205
212
172
177
197
195
196
176
192
231
158
250
245
156
226
229
131
217
214
250
162
176
195
224
231
179
121
177
209
166
224
155
181
170
245
200
159
210
198
194
250
170
261
223
199
251
199
201
167
147
115
243
240
202
197
215
190
202
216
279
186
210
179
217
166
244
224
116
240
212
134
129
228
177
140
237
108
234
178
215
200
177
189
151
231
174
254
172
231
134
157
205
149
166
186
275
199
196
153
144
205
183
253
193
211
232
141
195
238
217
139
191
258
237
214
181
220
250
232
150
158
170
226
165
267
205
158
200
168
218
128
174
272
194
246
152
202
181
144
154
198
205
187
228
147
202
167
215
180
252
178
191
150
243
192
160
193
192
221
177
174
165
206
207
203
212
203
236
190
210
182
206
205
239
146
191
207
207
197
136
156
263
216
189
227
235
225
222
200
223
171
240
223
155
217
227
199
204
194
193
144
309
220
191
184
227
171
219
150
198
156
207
249
196
186
248
169
217
234
185
189
233
215
189
230
231
242
167
249
215
184
202
180
189
199
147
239
152
165
168
205
144
161
266
240
271
142
160
217
206
188
165
201
198
200
198
171
187
210
172
239
193
189
153
217
203
230
138
208
250
207
163
160
238
184
228
183
239
182
198
191
270
149
150
192
202
248
235
183
202
252
252
197
238
162
144
198
157
123
191
199
217
210
266
180
211
210
190
253
169
176
210
217
193
167
108
172
147
168
173
150
207
204
232
178
173
266
225
199
229
151
236
149
229
200
220
259
196
207
195
207
221
276
228
204
239
169
221
240
211
183
214
207
169
191
226
225
198
140
145
213
253
187
216
179
209
246
186
233
244
152
201
218
236
211
242
217
216
226
188
231
138
170
225
214
184
161
179
290
238
199
188
223
169
209
182
235
190
245
206
219
195
188
214
197
146
210
197
159
179
257
215
191
227
182
161
161
193
165
183
266
222
263
134
216
180
254
131
194
267
206
201
254
195
166
221
189
261
237
176
154
207
209
181
165
243
195
156
234
165
232
204
180
161
191
244
235
210
198
237
205
180
265
247
210
221
197
219
193
226
233
144
182
179
183
222
211
181
168
193
195
203
164
193
180
181
155
210
157
223
170
105
164
111
235
149
214
140
234
254
181
206
178
222
183
185
204
211
225
237
256
211
151
194
174
170
155
184
191
190
172
206
186
184
204
260
207
228
148
272
174
146
221
201
192
201
188
124
182
245
205
199
182
138
240
240
162
198
227
211
212
209
138
186
231
223
174
215
230
204
204
253
165
213
186
230
220
185
232
157
162
174
185
180
201
160
246
211
256
167
201
228
241
168
201
192
206
165
208
187
195
224
251
253
253
195
160
165
222
217
199
148
202
138
187
232
206
195
275
135
275
201
182
191
206
206
208
168
179
148
235
216
195
198
202
197
150
200
197
156
195
211
195
238
145
227
216
183
201
207
193
201
143
194
176
214
204
189
135
120
220
243
174
130
141
140
236
149
208
224
193
210
136
194
187
256
209
186
272
213
244
178
219
183
262
165
184
139
185
193
228
194
212
131
195
201
172
203
219
190
166
162
172
190
267
224
170
205
151
180
165
200
195
172
203
202
176
222
163
189
257
237
202
227
147
285
155
168
220
178
219
246
175
185
221
227
208
169
221
206
175
241
198
240
194
215
257
202
200
212
233
258
260
206
201
213
250
187
183
232
240
188
181
201
167
173
171
180
237
166
210
239
237
197
214
231
203
212
180
210
237
183
190
239
159
143
256
272
224
227
217
222
264
214
226
161
208
218
224
175
216
214
215
202
147
187
190
125
194
182
135
243
165
216
214
256
211
131
188
132
171
191
225
226
204
198
219
197
191
247
232
164
219
207
196
227
223
256
185
117
243
183
190
159
221
160
234
224
179
139
210
208
205
193
162
171
246
224
248
189
205
174
220
202
250
191
217
197
230
181
215
193
169
252
157
205
238
175
205
212
227
228
164
264
192
186
269
172
209
218
232
229
159
185
254
269
203
198
178
203
181
179
223
184
166
160
170
210
181
230
195
188
242
205
216
154
206
256
235
250
210
180
172
204
202
233
210
190
152
164
257
213
227
190
221
231
283
211
119
223
236
236
176
151
236
180
212
163
168
250
160
170
158
210
221
208
229
155
178
234
199
244
202
188
201
202
220
179
199
225
170
223
190
214
211
155
234
174
212
152
222
166
126
245
230
193
198
247
180
211
213
192
148
223
245
288
187
251
176
138
237
191
219
257
201
194
214
237
177
212
187
250
141
117
223
197
176
206
234
193
196
170
200
186
145
195
199
200
184
240
219
215
243
183
153
173
204
262
103
190
224
237
205
195
252
250
186
203
155
217
183
161
196
203
230
178
158
189
197
213
198
222
197
260
213
224
252
224
162
251
270
180
184
154
163
191
252
227
196
144
204
236
151
198
176
228
120
213
136
258
198
198
214
200
233
246
209
188
192
229
221
250
213
238
206
198
208
170
241
137
274
215
168
177
204
240
238
191
211
154
227
235
148
138
175
176
151
166
251
228
225
193
272
157
226
249
217
216
206
226
147
195
188
236
206
240
192
222
196
193
131
246
167
252
245
201
177
214
201
179
186
164
190
176
173
188
192
217
219
227
202
187
203
188
193
199
178
235
223
228
204
178
242
235
178
169
163
232
191
206
241
238
207
227
146
199
216
175
192
145
179
226
210
154
192
196
216
178
156
272
133
155
128
211
176
210
212
191
220
160
232
164
200
216
217
165
258
246
196
158
205
219
190
225
152
185
246
208
275
227
189
228
207
192
212
192
200
218
207
260
198
251
210
260
148
250
199
169
215
236
227
169
218
229
189
173
231
165
252
203
193
220
243
224
163
234
183
143
225
272
176
254
241
165
205
216
160
209
220
250
177
183
196
227
201
174
193
225
194
215
232
143
127
234
207
204
210
183
148
175
174
126
147
188
208
192
225
225
235
233
242
216
231
203
135
206
198
181
218
239
176
255
196
213
258
206
232
165
179
196
219
276
213
181
252
175
215
243
101
210
253
202
271
215
163
183
181
166
223
215
219
209
254
217
175
210
132
130
228
190
152
224
195
241
211
199
165
191
153
251
201
241
172
220
212
157
180
184
197
253
224
211
209
186
199
245
181
203
230
208
224
182
183
193
190
251
180
240
181
175
180
206
203
219
205
140
181
227
230
219
213
204
233
213
231
217
122
190
195
290
243
175
140
165
230
179
188
195
197
244
221
205
158
234
218
211
189
177
208
165
148
165
248
191
208
215
169
198
184
216
184
225
215
217
302
205
203
155
186
207
224
168
208
238
222
160
183
165
187
176
177
206
192
126
177
187
208
186
229
212
117
216
229
194
185
193
210
227
167
183
131
208
121
172
240
254
186
232
189
203
231
128
207
254
233
214
235
239
182
222
164
290
207
147
158
217
182
208
207
197
183
195
160
192
195
212
223
201
213
177
191
219
237
140
248
198
173
188
228
221
222
177
230
183
241
190
239
195
190
188
251
184
205
177
207
168
200
194
173
219
225
251
225
208
176
205
198
242
163
193
149
216
179
156
144
107
196
118
206
229
210
248
236
231
180
201
246
221
237
227
130
209
205
206
228
239
210
204
210
237
164
214
246
196
240
134
232
179
195
207
184
222
231
246
182
203
203
221
233
187
218
194
221
206
228
239
212
264
240
232
218
199
258
237
178
223
179
246
168
180
209
200
208
196
175
156
243
193
173
160
193
185
207
235
205
165
132
206
236
138
194
209
181
169
148
204
196
193
132
176
171
232
229
213
178
208
198
226
233
174
255
198
232
217
126
174
199
169
230
236
236
213
218
243
225
219
178
181
179
139
215
165
230
212
125
273
203
203
244
241
151
177
245
217
273
225
256
159
171
154
221
240
164
255
231
146
216
198
234
191
218
186
226
234
247
200
134
205
237
220
199
162
227
163
245
222
170
203
264
243
152
177
218
186
214
228
217
181
102
245
157
149
167
161
209
113
171
205
210
223
174
234
204
181
185
217
131
200
236
206
188
203
222
180
226
226
170
183
161
231
216
234
174
187
184
192
194
177
252
185
146
236
202
171
210
203
249
142
218
188
194
117
200
158
183
211
278
204
165
208
222
194
182
231
188
223
253
150
256
184
228
169
242
226
124
178
206
249
189
189
174
196
143
236
185
178
159
238
191
170
228
216
237
204
238
202
176
184
185
177
203
240
199
244
276
253
206
195
207
141
175
249
180
279
205
243
167
208
192
204
167
194
224
226
207
260
207
203
246
217
207
150
192
254
173
177
189
153
221
249
167
245
245
236
200
177
163
228
219
169
189
218
142
188
149
222
167
224
239
229
196
212
211
247
224
203
213
177
211
166
214
198
197
195
178
126
174
170
142
261
213
210
205
175
220
217
194
195
187
236
165
141
206
196
216
221
162
193
270
136
235
183
229
225
243
226
209
218
230
171
204
167
225
170
176
212
226
164
229
234
181
179
216
214
182
171
235
185
188
195
202
209
167
223
198
151
186
173
198
134
202
203
246
207
194
193
220
236
167
149
169
177
194
199
223
193
215
239
220
207
168
213
196
180
296
220
201
207
162
144
159
165
209
190
216
211
227
160
214
224
170
185
190
171
215
229
192
228
182
244
172
207
212
212
206
187
158
110
121
250
184
190
189
216
223
201
227
227
206
249
200
181
102
222
204
220
218
185
212
232
193
186
166
210
199
170
194
265
241
216
154
172
246
201
184
203
198
200
164
174
184
186
227
205
230
228
183
195
171
189
219
234
239
229
241
153
260
218
161
187
142
220
163
243
194
168
209
241
218
146
198
145
261
232
188
212
266
152
167
190
210
248
171
264
194
185
189
162
223
180
220
250
234
218
196
209
225
178
230
194
198
183
230
253
204
227
254
184
205
151
167
224
212
162
225
181
225
229
192
233
231
197
187
192
183
174
237
205
179
205
216
210
214
199
217
181
156
228
170
197
178
159
252
164
202
178
206
255
177
183
238
235
202
190
233
208
146
243
198
201
238
190
206
254
206
212
244
193
184
194
180
162
177
209
278
251
179
284
213
212
193
269
220
167
219
228
174
268
192
188
236
197
187
206
136
233
200
184
194
138
194
222
193
221
228
228
176
195
235
252
219
226
196
155
123
207
205
189
181
194
228
188
169
197
166
234
144
212
206
239
195
255
208
255
203
230
213
209
185
188
249
229
243
207
214
113
208
253
214
208
229
157
213
215
136
248
252
188
204
269
185
198
182
156
185
226
226
207
264
214
197
201
106
150
160
168
188
151
216
247
217
199
224
221
174
215
199
220
210
172
252
169
192
216
236
199
214
190
226
220
212
171
178
205
222
135
256
197
145
242
130
250
184
192
220
153
225
199
153
159
255
229
263
157
222
188
165
180
217
267
252
146
203
234
214
162
197
213
200
215
204
221
159
224
232
233
199
200
189
188
211
193
228
258
203
242
145
141
239
196
205
215
253
140
192
272
199
200
255
175
195
226
182
205
241
249
268
225
181
232
254
153
191
113
180
158
136
214
235
131
221
116
223
208
207
195
223
207
169
239
182
173
214
234
224
221
211
247
190
162
190
213
198
168
113
231
168
241
184
176
194
251
206
185
211
203
182
196
189
252
184
172
195
239
194
251
171
211
147
198
247
190
204
155
151
127
187
164
199
212
236
147
194
249
195
207
233
194
168
222
242
173
178
166
224
240
214
264
174
236
239
204
205
218
209
205
196
215
227
196
174
166
270
230
179
243
206
222
227
150
210
218
212
190
138
218
195
220
169
204
170
208
264
202
141
218
203
201
193
143
146
200
266
197
173
196
181
264
122
254
178
113
236
207
243
160
169
205
278
201
145
174
190
229
140
208
250
194
188
283
96
218
213
229
214
245
208
205
157
162
218
174
211
249
219
197
159
204
144
194
196
201
183
255
193
182
192
157
183
207
152
209
205
267
203
256
204
218
155
171
229
190
240
204
220
214
194
201
229
289
260
203
252
222
185
135
270
265
247
157
156
227
137
238
193
205
186
158
205
144
223
170
205
139
181
152
189
243
198
189
203
165
196
161
157
195
190
220
267
225
207
197
243
184
222
246
176
206
229
222
198
208
203
248
160
221
222
216
165
176
188
194
233
233
149
164
225
227
95
166
125
243
151
158
156
159
185
278
204
226
174
216
214
204
237
249
241
259
173
191
132
191
186
244
250
219
123
174
148
206
199
214
158
234
135
172
172
189
190
219
214
129
205
228
170
176
221
225
202
197
146
217
200
156
226
166
223
200
223
174
238
188
220
274
190
199
182
161
222
248
199
195
219
208
153
179
207
196
191
157
191
163
228
192
252
200
177
200
199
242
168
236
150
195
218
187
187
227
197
212
148
215
256
151
214
256
239
195
191
165
261
197
222
170
195
170
225
204
241
183
224
175
210
227
226
242
185
227
201
148
151
231
171
195
207
209
154
224
164
246
193
229
154
236
164
212
201
176
229
154
193
213
210
275
126
250
195
241
233
205
277
205
166
228
198
179
207
205
244
215
188
209
217
194
142
249
189
265
160
242
160
245
184
250
256
208
201
150
139
188
179
203
177
243
186
174
201
212
208
166
155
187
148
155
181
210
102
193
176
227
150
183
198
178
189
216
245
223
201
196
226
220
176
212
173
159
267
200
261
240
155
224
249
234
234
167
161
171
147
129
218
234
147
240
164
169
259
180
216
170
171
105
199
140
188
190
231
202
143
179
217
181
173
255
228
188
210
220
154
167
154
102
264
242
257
233
238
171
221
196
194
246
213
202
191
199
194
201
177
168
183
244
195
252
177
176
188
253
216
152
201
189
212
189
163
218
150
218
259
183
179
201
128
185
260
192
173
125
192
250
237
209
196
159
246
261
105
248
221
161
251
213
208
186
223
188
254
189
203
201
191
251
240
149
187
189
175
202
187
161
145
118
204
251
191
199
225
154
146
162
150
207
225
191
224
184
253
262
249
205
232
229
235
220
216
236
164
180
241
285
223
165
173
226
224
207
181
213
246
238
208
213
192
211
208
198
205
167
222
147
249
238
228
191
171
217
226
176
195
219
221
235
221
148
193
216
218
196
214
156
197
250
225
231
178
176
158
258
186
236
182
220
208
248
182
162
189
203
201
173
204
215
209
164
158
243
236
206
194
217
221
213
161
225
213
149
185
245
264
248
188
177
231
209
202
236
195
162
186
221
181
266
177
237
182
141
202
263
209
158
267
155
208
165
172
210
223
156
142
188
162
194
225
187
208
212
188
187
123
123
137
197
263
246
187
180
187
212
223
229
148
213
195
222
262
227
150
201
193
180
249
240
274
200
165
238
176
227
198
186
172
176
222
207
171
200
200
182
210
226
191
213
230
144
180
244
205
167
128
148
225
197
217
200
201
212
187
192
153
181
219
181
210
189
188
181
224
238
181
124
243
216
184
193
201
295
217
204
255
201
212
158
182
167
172
175
203
159
215
199
160
210
155
153
194
244
214
241
191
195
195
192
189
172
204
209
256
191
230
222
161
208
203
207
200
181
263
182
158
180
212
236
196
190
207
197
205
176
238
218
261
190
204
236
178
199
227
156
155
217
236
179
161
172
200
201
235
229
209
215
216
160
196
167
192
188
160
216
227
221
230
218
255
165
196
215
187
253
255
206
135
159
237
241
199
198
197
150
181
190
190
152
190
288
192
171
207
220
210
194
211
185
154
247
137
241
235
272
252
177
162
228
213
233
192
220
178
181
209
204
197
199
258
231
249
221
240
211
193
187
207
217
221
228
193
206
185
212
204
237
194
164
191
179
224
129
185
171
207
201
208
205
212
172
210
151
218
225
180
189
195
247
182
202
203
191
136
177
210
217
237
169
163
293
222
157
206
231
152
226
240
155
225
184
140
212
167
199
206
233
194
134
208
207
194
253
237
180
207
179
219
178
227
192
203
243
241
199
241
197
179
237
217
169
189
107
193
229
231
190
200
233
227
176
189
213
240
230
117
221
163
223
188
155
192
181
273
237
228
224
176
195
239
217
212
207
191
245
192
166
147
170
134
204
208
221
218
278
164
223
235
170
210
223
227
197
170
179
168
233
160
126
196
249
167
202
235
234
202
227
237
243
206
208
256
186
181
158
196
255
220
242
157
164
183
204
207
213
61
145
169
142
184
199
193
162
226
179
230
177
137
200
212
213
195
215
208
93
182
162
243
238
155
238
202
191
184
218
221
242
204
164
206
261
256
171
198
175
216
191
209
145
213
227
188
118
257
268
218
231
185
156
222
214
164
151
201
237
227
201
194
195
219
207
221
127
185
245
213
192
203
178
212
152
242
201
190
180
226
226
267
176
170
191
181
227
231
146
238
167
177
234
217
268
154
139
173
219
198
224
131
196
172
153
184
246
198
214
214
230
185
145
164
254
178
169
208
180
211
183
220
182
191
203
218
204
201
197
206
216
156
197
206
168
252
149
150
146
250
226
235
201
114
212
251
217
184
239
192
178
272
144
236
110
217
203
261
192
224
147
223
168
194
187
147
141
193
160
205
185
199
171
190
229
159
187
251
131
172
219
248
180
211
194
187
204
157
268
147
181
239
201
183
119
214
227
163
198
187
152
217
275
232
206
247
226
200
204
188
236
221
176
214
194
235
208
211
225
194
215
194
195
101
224
215
137
204
223
130
239
224
199
196
193
191
212
202
244
203
187
199
197
210
179
224
191
189
214
189
202
123
244
151
237
157
187
187
200
200
160
159
229
255
167
172
238
226
186
179
190
223
266
212
261
173
127
198
153
251
167
157
163
159
210
169
158
133
180
159
180
193
212
191
176
163
224
180
167
177
129
200
211
183
162
227
202
180
197
219
184
177
216
229
247
219
197
154
209
178
230
166
226
168
225
199
176
184
285
237
165
219
207
207
152
217
188
210
144
217
111
210
218
241
212
211
185
177
224
219
238
162
172
226
192
227
166
169
205
214
229
110
273
238
212
234
222
186
181
217
225
145
202
190
196
205
162
209
155
208
192
214
200
163
208
227
240
181
246
232
199
147
176
217
216
196
236
196
186
168
205
166
205
210
219
184
159
200
190
179
174
230
201
198
154
163
210
223
137
237
140
171
162
127
253
201
256
162
197
184
208
238
207
194
203
225
222
179
182
227
222
223
203
167
215
156
153
187
213
151
210
147
134
217
200
220
192
160
210
231
179
225
223
176
237
181
211
203
233
133
177
172
203
216
229
223
180
207
215
244
239
196
176
179
248
204
221
232
239
201
177
215
198
241
220
129
116
173
161
249
208
203
191
168
205
135
175
180
238
153
142
176
191
223
218
241
193
202
264
178
223
222
145
180
207
197
192
230
241
241
164
133
247
173
257
218
221
249
192
175
222
201
211
221
204
215
158
107
194
218
191
201
166
214
203
217
263
213
185
208
246
227
202
180
256
226
215
257
168
167
197
216
214
176
159
216
189
174
214
267
159
192
125
161
205
211
210
202
230
231
217
236
247
257
205
174
161
175
204
170
225
193
163
232
172
256
186
167
167
203
199
232
250
220
197
249
231
230
229
181
214
238
226
214
216
198
237
128
220
195
230
199
218
203
186
219
231
243
183
193
217
211
259
188
184
110
216
158
261
224
109
212
179
207
188
211
162
199
182
141
269
216
206
183
208
198
175
240
211
179
268
223
187
181
225
226
254
230
195
134
169
243
179
194
196
231
125
275
213
187
223
181
188
233
175
170
176
217
220
216
154
240
253
205
203
239
246
257
151
216
236
185
237
227
196
162
183
180
231
213
154
201
174
212
230
167
170
151
188
254
215
215
200
250
154
228
189
189
198
181
246
232
140
186
165
197
207
157
207
171
247
227
253
167
153
188
191
240
244
180
247
198
209
165
167
223
216
156
209
168
186
196
190
215
226
254
232
165
155
190
139
273
232
249
166
157
200
212
182
234
153
133
216
223
268
146
200
202
142
190
221
177
188
237
210
131
163
202
221
221
195
175
184
136
204
167
243
219
150
176
232
198
202
213
236
212
279
231
148
178
233
190
212
233
196
257
264
183
182
204
239
212
153
199
157
159
175
142
178
144
161
125
186
177
204
207
217
233
185
155
189
194
210
142
224
203
239
207
192
229
197
176
232
197
210
234
176
168
140
182
213
162
213
166
176
247
150
155
235
192
202
264
221
238
173
161
218
188
183
167
207
189
178
189
151
193
229
203
175
166
201
243
262
238
167
171
207
204
265
183
263
205
261
191
220
173
200
152
208
269
210
187
175
192
233
203
165
182
194
200
167
195
211
237
266
188
194
236
217
232
180
173
225
181
218
231
231
166
252
212
199
209
217
163
275
202
146
131
204
239
200
227
179
160
194
195
198
187
260
146
260
245
234
183
213
156
239
201
205
197
203
227
204
199
197
243
212
203
226
255
204
159
210
172
175
234
195
214
235
263
138
154
213
216
160
199
200
169
172
176
175
222
218
203
166
246
177
203
166
233
222
228
194
163
217
199
241
236
159
171
214
230
172
246
258
159
186
141
261
188
266
168
223
203
208
215
205
267
174
177
220
202
184
177
222
234
203
171
174
209
218
226
170
197
204
208
219
227
260
205
164
197
195
235
209
201
199
261
138
188
189
223
192
118
244
223
150
204
193
204
215
226
169
200
211
247
166
191
263
219
180
211
201
228
255
148
267
222
228
169
150
149
225
279
215
224
192
146
246
248
189
181
179
206
219
197
192
138
193
178
180
177
277
284
210
175
224
204
190
194
221
254
180
199
154
197
230
203
201
210
155
200
163
172
210
169
201
214
182
164
187
220
200
214
216
211
207
223
235
139
143
179
193
197
178
161
167
202
239
169
159
205
231
217
208
179
179
197
207
234
238
232
202
144
218
216
203
116
147
164
240
163
190
177
235
173
167
179
212
175
167
221
169
184
222
192
210
181
175
264
186
242
246
163
197
182
188
228
193
102
158
266
163
213
190
172
192
220
215
178
214
211
193
180
187
216
205
191
188
144
192
126
233
221
239
199
217
203
216
210
214
189
185
176
227
169
177
219
194
175
195
138
170
198
226
194
211
121
154
212
155
223
192
208
158
237
223
122
225
254
169
199
166
200
189
169
198
212
227
217
185
176
129
222
207
215
226
235
203
187
245
177
185
241
211
205
167
269
189
162
178
177
199
224
196
158
185
201
209
222
224
209
208
244
219
201
181
171
190
217
181
220
271
212
193
170
227
167
156
208
181
196
213
192
185
225
210
184
229
254
146
177
167
291
198
213
166
220
175
157
195
159
232
248
215
175
208
222
184
205
171
253
185
140
243
188
188
209
196
186
189
211
155
218
213
160
191
177
218
135
181
178
226
209
213
147
231
220
162
255
202
220
209
204
224
195
194
169
164
181
200
222
236
237
214
223
199
252
231
240
191
253
231
239
191
188
209
196
256
200
147
192
221
221
241
204
231
223
194
125
150
215
219
243
254
250
106
196
218
253
186
149
159
236
233
239
188
240
200
159
257
182
191
154
228
248
169
222
159
218
211
181
246
227
255
257
238
230
237
205
148
256
265
243
209
180
207
229
198
229
119
161
155
188
179
184
188
174
189
208
237
205
216
154
146
167
161
219
267
203
209
179
193
288
175
252
193
192
183
147
236
163
192
189
229
167
203
244
237
199
166
225
220
233
167
200
184
213
264
155
235
171
235
168
198
270
173
159
201
230
185
254
205
208
205
212
206
176
179
182
182
174
197
151
204
179
204
194
186
187
214
258
208
191
246
177
227
213
205
207
269
213
230
161
164
203
181
240
178
178
213
228
203
134
168
187
173
201
210
168
233
266
204
234
202
197
225
230
175
216
246
172
252
199
203
248
208
227
224
289
176
180
187
240
212
240
249
205
178
185
213
208
180
211
214
175
235
222
160
242
251
176
204
174
161
195
222
196
203
190
207
237
175
170
222
189
116
176
196
212
265
177
153
254
223
167
218
207
204
220
204
162
213
196
217
172
216
257
195
143
222
140
178
235
214
182
214
165
189
193
128
239
183
251
176
195
157
230
140
217
174
219
241
239
239
188
227
239
181
170
215
224
183
245
240
212
212
229
241
193
222
165
160
120
152
186
235
206
206
152
214
178
188
208
164
182
192
221
152
208
253
229
206
214
208
198
181
207
183
176
149
204
202
185
217
217
237
231
199
147
179
228
231
192
203
175
231
184
170
187
206
261
171
256
190
217
173
176
216
219
195
222
190
263
195
167
210
279
216
123
183
234
294
199
163
225
227
164
208
202
167
233
174
185
212
192
188
152
182
156
210
254
208
222
135
249
134
209
210
178
219
207
148
265
197
197
206
193
146
208
198
246
198
212
141
187
158
147
203
179
221
162
185
170
220
191
245
214
179
147
210
177
188
170
180
171
206
226
212
203
256
237
232
188
212
192
201
194
171
171
161
192
202
144
253
222
209
158
225
216
172
246
201
168
237
222
203
200
194
185
194
147
159
253
241
247
136
217
224
185
181
199
182
236
182
189
201
183
218
301
223
150
251
174
159
186
201
195
179
217
245
134
227
133
224
221
158
165
198
253
170
213
174
217
246
197
192
222
193
159
223
219
149
276
172
255
214
235
176
232
133
162
204
232
233
176
177
226
198
156
217
139
213
193
155
191
165
201
170
221
192
187
141
204
179
234
223
138
164
233
268
242
169
170
145
167
134
211
166
216
181
163
214
207
134
169
192
211
246
240
233
181
259
198
182
226
199
159
153
132
134
183
188
231
221
188
204
216
203
213
222
193
128
173
205
225
130
157
205
116
182
284
184
207
188
167
207
179
237
246
148
230
168
260
145
238
173
229
161
177
213
136
175
187
218
205
215
182
230
141
207
213
197
182
143
132
133
133
200
208
271
172
237
211
192
246
181
204
162
196
217
188
212
164
268
176
194
186
206
230
223
202
209
218
166
187
180
197
175
158
236
187
203
196
172
229
232
219
240
214
115
271
220
250
217
223
251
192
217
214
249
240
170
200
193
146
189
153
246
181
147
229
235
156
210
231
177
164
188
190
178
216
184
155
264
163
240
199
208
112
159
232
189
239
227
209
198
171
218
237
149
196
124
189
207
177
180
229
230
177
135
187
197
170
219
170
228
235
235
164
204
208
224
199
166
228
192
162
228
259
192
160
227
208
176
244
203
194
150
190
230
196
201
165
230
212
187
180
186
218
179
259
209
169
277
193
257
241
123
218
166
228
205
181
174
97
203
165
147
145
214
205
204
278
204
233
150
192
156
217
219
233
245
175
227
186
186
165
184
254
207
274
222
225
197
179
201
207
178
181
173
156
160
208
174
199
234
228
230
209
213
286
184
232
259
202
190
219
199
260
225
235
129
168
217
179
208
186
193
194
180
187
250
247
240
185
212
218
240
214
249
216
203
202
201
194
215
193
186
159
133
197
189
171
173
181
272
194
198
200
218
207
217
194
266
211
194
205
157
184
199
151
233
166
204
195
239
209
177
160
175
217
178
229
175
213
165
235
239
279
250
193
238
208
198
179
228
243
131
218
238
191
137
173
148
264
218
179
277
199
201
198
185
218
185
159
230
216
221
159
189
157
121
156
232
164
159
148
170
236
180
234
140
208
226
159
163
180
238
230
162
169
210
210
218
212
180
212
154
171
220
158
175
254
176
233
224
196
264
224
183
212
149
192
228
201
237
232
200
247
218
166
201
152
220
168
194
196
180
165
235
196
251
166
176
211
208
146
212
192
206
203
223
235
214
195
170
202
208
193
208
211
163
236
169
201
190
214
233
146
196
210
135
242
196
182
145
253
211
191
267
211
134
210
190
195
261
209
203
198
160
182
202
147
241
233
204
189
185
235
211
189
234
204
151
211
211
251
255
174
229
176
169
242
179
292
177
238
186
213
214
199
217
260
203
225
254
278
146
264
138
266
253
212
186
198
181
171
137
178
254
251
205
225
220
172
220
212
163
166
178
241
140
216
105
232
174
224
135
210
185
222
183
139
181
179
168
230
228
166
205
153
158
201
224
209
202
225
216
207
194
240
139
223
166
184
132
220
194
208
244
179
210
209
240
172
177
194
231
224
141
191
233
207
207
134
204
188
289
165
131
221
234
166
205
255
207
132
209
189
237
203
166
238
174
183
198
244
243
273
205
192
200
202
219
190
182
210
196
197
195
216
237
197
195
217
241
196
203
162
205
288
152
183
146
228
174
159
221
200
195
206
214
211
161
244
176
178
184
216
242
221
177
177
256
148
178
230
231
219
227
121
228
196
217
188
244
181
215
209
216
207
154
176
228
185
130
229
172
164
178
188
216
181
196
209
201
187
191
179
205
245
141
231
208
179
183
232
166
150
144
253
159
173
197
243
145
197
254
203
164
267
211
123
216
207
249
175
205
240
187
227
159
180
161
147
217
180
189
163
218
235
164
227
191
214
280
248
226
241
197
191
205
210
212
203
225
175
179
237
208
260
229
205
163
151
204
233
201
232
228
177
211
230
196
178
216
189
193
125
195
171
247
225
222
186
198
181
242
210
248
156
172
138
231
168
129
201
173
145
224
226
116
207
223
197
148
201
234
157
275
155
213
266
263
216
232
220
155
160
198
232
225
167
214
166
198
184
148
165
135
175
193
205
169
168
190
220
185
195
202
203
176
180
229
229
179
221
220
138
229
223
138
219
218
198
176
187
176
219
226
179
190
229
249
174
177
216
170
208
125
193
207
141
285
168
185
173
220
194
206
178
232
143
120
214
205
250
157
163
201
166
189
138
170
229
197
241
177
240
178
195
185
160
212
160
237
192
159
210
192
145
190
258
151
193
218
181
209
237
261
211
155
269
224
238
221
219
203
186
204
131
236
205
184
174
175
240
158
145
200
159
206
206
169
203
251
273
225
183
183
199
208
191
216
294
223
222
153
214
200
225
238
184
165
146
161
160
224
203
217
149
272
108
211
165
220
202
174
200
166
158
184
192
229
216
161
215
193
182
170
255
243
152
159
199
144
233
192
162
215
162
255
188
181
208
188
209
272
252
186
172
261
254
240
264
179
179
246
210
152
234
184
244
203
194
188
185
223
234
221
189
158
173
223
156
160
163
248
196
226
232
141
145
247
172
198
207
208
164
188
203
208
236
220
229
155
202
184
189
150
187
125
160
192
210
202
220
239
200
180
178
210
231
191
208
242
238
201
192
268
200
136
192
152
289
175
210
191
176
219
234
145
251
220
207
222
226
193
144
170
186
221
233
183
208
182
187
221
175
200
191
189
196
239
224
211
164
141
158
278
222
254
217
177
216
186
192
144
199
244
201
175
102
140
141
157
165
259
231
246
208
241
149
175
158
175
196
191
214
235
213
202
218
220
201
210
236
182
162
184
220
183
189
174
143
257
218
162
155
209
230
250
193
216
221
252
167
150
176
213
229
259
211
230
175
197
198
195
168
197
193
156
222
153
211
166
181
233
224
220
214
200
165
216
206
238
188
195
262
251
246
207
226
187
225
219
228
219
186
208
168
148
193
161
270
218
192
181
190
208
250
184
152
194
197
231
128
224
172
191
161
199
214
242
217
223
227
213
207
183
239
230
234
230
204
223
184
248
125
169
217
166
261
233
260
152
232
208
223
199
142
181
165
203
210
168
146
164
172
238
189
232
237
213
257
192
204
188
264
198
243
197
192
196
202
143
238
184
146
191
175
257
216
176
204
224
237
211
225
155
234
184
142
255
210
210
168
193
217
211
226
155
201
156
160
235
221
199
164
178
276
237
208
227
226
209
193
158
174
136
164
171
188
193
187
201
226
191
271
220
240
120
255
154
165
181
178
214
236
184
130
257
158
266
206
249
180
148
241
148
219
243
264
142
183
242
185
157
211
194
204
198
257
239
223
206
219
163
171
200
166
141
163
151
185
118
185
197
212
240
132
262
189
233
193
211
180
227
202
196
191
188
235
181
187
217
230
187
277
185
183
233
252
182
260
181
164
190
184
242
236
240
222
206
202
185
225
228
220
215
191
222
217
144
235
182
185
258
168
218
199
202
212
187
171
170
165
198
207
163
182
213
213
217
146
231
177
251
196
191
198
148
226
180
140
218
132
204
207
244
203
181
191
164
246
149
176
198
231
158
211
218
205
234
237
256
238
217
207
156
204
218
209
134
230
161
214
210
214
147
217
145
193
172
193
211
139
218
147
196
224
216
173
179
176
222
216
188
199
186
218
178
166
185
165
175
161
225
188
242
219
176
161
231
211
160
205
211
204
170
179
191
196
149
184
251
213
224
223
160
197
150
213
148
169
256
214
202
214
286
240
155
262
210
233
243
170
162
156
299
253
256
229
149
185
162
205
240
221
200
218
218
257
197
150
199
206
185
226
197
166
177
185
183
169
165
187
160
220
239
256
215
143
170
171
158
106
240
236
240
135
194
210
179
174
239
227
194
260
178
223
195
181
230
224
281
231
225
200
191
228
191
195
200
153
185
213
213
176
215
225
212
160
176
178
217
208
247
264
228
189
206
210
217
244
153
190
222
259
217
249
178
171
182
222
175
128
178
127
219
185
259
183
265
247
192
145
210
135
211
155
185
236
169
217
215
228
174
218
248
215
179
201
170
252
221
209
164
217
270
194
181
138
200
229
177
220
159
192
192
120
172
160
203
153
167
140
152
197
182
126
206
195
234
185
136
188
153
222
174
239
157
238
201
186
225
147
181
225
213
187
224
226
209
296
224
224
221
252
248
140
216
211
180
190
214
221
178
240
142
170
188
215
226
218
172
138
175
201
207
197
205
193
270
184
203
209
251
206
221
232
202
86
232
166
181
221
226
180
234
208
250
253
208
230
257
242
253
201
129
181
253
214
241
227
202
246
253
156
223
216
212
172
202
254
160
219
214
218
191
200
228
189
249
155
233
179
205
195
171
172
193
216
147
229
181
269
225
196
200
230
232
239
163
205
214
172
186
217
207
157
187
218
217
189
239
155
171
224
171
267
247
184
182
257
256
202
204
277
205
266
197
229
221
177
219
200
176
271
172
218
231
173
148
160
197
254
191
222
220
203
195
217
165
243
185
195
229
223
195
214
205
212
202
176
201
181
243
228
221
258
214
253
175
238
192
125
168
192
148
257
178
213
218
212
266
232
214
222
218
227
236
176
204
206
188
190
183
204
227
213
165
183
252
215
188
199
189
184
197
184
203
195
221
178
197
150
220
184
201
189
135
151
238
136
198
206
268
182
184
245
191
171
166
177
207
246
195
229
202
159
191
163
240
181
212
243
233
177
205
252
138
106
129
173
190
191
167
214
244
185
206
140
215
205
209
234
232
200
144
198
175
206
234
192
209
231
137
161
267
148
205
151
268
215
181
159
175
215
187
138
265
174
196
247
167
202
213
171
219
227
115
222
173
247
255
210
185
185
233
299
199
192
224
239
183
170
236
213
189
181
232
133
123
278
228
189
207
183
210
227
173
171
211
237
125
216
184
225
177
213
180
197
231
184
169
255
202
204
229
260
223
187
210
202
242
142
261
191
196
251
248
211
210
150
174
211
196
207
209
198
253
90
183
165
193
237
211
169
211
207
213
114
211
189
195
196
121
174
157
125
212
226
192
207
147
177
208
220
161
157
187
182
190
227
194
240
204
223
202
201
239
202
212
222
164
155
214
160
239
230
199
203
204
240
167
211
106
192
197
197
244
251
216
231
171
185
160
270
162
132
172
189
183
253
219
203
205
201
236
170
215
172
203
152
184
214
164
143
164
211
229
188
220
225
205
231
195
199
138
226
226
224
209
142
212
215
231
250
217
212
128
213
204
199
196
216
217
161
174
153
153
171
252
194
184
210
192
196
253
189
248
216
237
190
208
243
170
133
246
218
228
193
239
197
257
165
191
150
236
241
158
192
194
257
234
169
249
148
180
154
240
184
219
214
204
205
151
218
163
138
179
173
210
178
179
254
190
215
195
222
184
188
230
195
168
244
174
259
169
221
180
213
151
216
176
219
218
198
190
202
193
216
179
227
211
272
189
242
157
216
164
240
155
157
227
228
116
203
175
213
203
224
210
225
202
202
229
229
225
242
203
203
136
207
200
211
197
183
172
184
184
177
196
151
185
188
237
228
170
249
233
163
158
243
162
140
220
235
204
162
276
167
214
254
234
206
257
179
227
186
166
207
184
168
257
248
195
125
149
197
194
206
153
192
208
222
155
224
211
248
237
173
189
232
186
267
214
187
142
227
180
172
207
170
169
215
214
228
174
158
258
172
234
170
172
199
234
206
143
249
212
214
219
177
214
235
270
231
229
170
209
119
192
189
215
178
213
195
224
161
216
184
157
223
177
209
219
190
204
220
165
271
155
181
183
165
220
202
216
214
209
211
267
162
233
270
175
222
236
243
165
244
196
221
191
223
175
217
246
217
225
246
232
201
191
195
179
215
170
226
206
204
209
172
194
189
169
209
205
143
180
213
181
206
248
216
160
224
204
286
183
206
245
156
168
205
253
190
225
214
204
228
247
212
169
253
223
210
114
208
221
228
135
179
234
206
212
177
199
207
200
242
218
223
225
280
229
167
233
165
158
175
268
255
182
181
182
180
152
190
177
234
181
228
242
188
247
253
225
143
229
260
130
208
257
239
207
215
177
188
222
199
145
174
181
205
180
167
277
255
222
199
140
132
220
143
115
210
146
137
234
167
179
255
239
242
240
213
219
152
155
244
173
182
247
156
197
283
134
180
223
195
185
255
150
260
172
175
231
184
173
240
159
235
284
194
249
208
177
149
245
152
221
220
189
184
265
171
217
198
198
243
202
224
176
230
213
201
205
244
212
148
214
199
218
162
191
180
149
147
163
203
166
240
202
195
193
228
195
191
151
203
126
168
216
233
101
171
226
203
211
177
207
198
250
237
167
190
224
221
204
208
181
198
212
203
173
187
208
169
194
213
230
174
191
208
145
218
166
265
223
197
229
205
228
202
186
176
215
202
247
211
159
235
204
258
199
204
216
219
202
223
163
140
198
201
190
201
230
138
200
212
217
182
266
204
247
201
185
152
226
210
166
158
249
159
168
226
255
196
159
187
194
236
236
197
223
173
146
205
230
162
229
190
173
208
247
225
211
152
256
201
188
165
169
198
243
197
215
181
229
198
208
200
212
183
228
223
158
203
174
181
200
197
154
188
219
200
138
206
193
221
125
133
185
235
132
127
183
217
222
205
140
228
180
183
226
263
182
219
251
178
177
171
187
190
197
209
180
254
209
229
204
167
171
227
172
133
203
194
219
171
211
267
158
236
215
153
206
195
219
221
255
206
187
274
245
161
190
213
186
217
264
209
184
209
184
211
181
192
190
180
156
173
180
237
230
247
158
175
203
187
221
229
234
212
185
182
217
161
225
177
217
205
188
236
116
200
173
212
167
251
188
194
174
235
218
233
267
170
199
219
163
194
180
157
207
175
214
168
224
144
192
235
209
138
233
206
192
171
225
211
212
206
209
235
149
220
212
227
251
227
209
255
143
202
185
250
184
213
226
203
203
189
248
201
142
132
184
223
190
169
226
269
221
199
161
188
188
214
245
249
215
217
189
165
215
170
291
225
239
217
179
233
221
225
175
225
185
234
191
207
213
239
117
194
207
213
161
232
230
208
209
237
202
198
196
207
131
212
237
215
202
203
248
204
222
214
214
189
220
188
178
234
132
139
212
146
154
187
182
197
246
195
182
173
263
163
189
145
231
191
226
249
147
184
189
195
205
229
173
228
207
193
135
225
202
184
164
230
215
174
221
137
217
240
234
234
207
194
181
216
204
170
229
218
176
241
218
135
156
216
197
211
174
232
220
195
177
197
195
203
190
247
257
221
267
187
208
211
173
179
130
198
212
173
170
176
148
173
207
141
149
193
242
202
233
163
212
172
178
205
221
192
207
195
215
182
174
176
225
197
187
209
155
202
139
184
201
193
213
225
198
249
188
192
302
251
196
202
186
209
186
160
175
237
215
110
204
157
115
199
252
253
220
174
176
185
207
184
188
156
216
218
211
202
171
210
272
164
205
164
189
235
169
235
270
179
252
160
178
203
213
234
161
228
234
205
223
226
216
216
204
164
234
189
228
139
177
167
222
232
227
215
157
206
248
157
189
220
182
227
204
163
200
193
222
204
153
171
225
286
177
214
225
232
190
241
273
152
223
174
167
198
199
177
160
219
172
223
184
183
266
242
223
188
302
273
272
204
211
213
175
177
190
179
207
196
225
182
241
230
223
181
196
252
255
234
196
175
205
135
201
195
230
216
193
247
238
204
208
214
208
175
184
223
179
192
230
249
233
221
208
222
206
182
83
171
196
196
235
195
167
266
155
180
266
188
219
214
220
146
156
272
201
227
174
172
132
202
177
265
231
221
211
211
178
185
248
222
173
217
255
128
192
174
148
249
258
217
177
167
234
184
248
158
126
216
182
187
198
190
191
189
252
222
147
215
202
155
213
236
227
197
173
249
233
250
193
232
240
174
199
257
190
191
224
211
135
163
202
206
241
162
176
177
162
139
166
196
239
189
201
137
269
243
161
238
190
226
162
149
203
200
217
167
181
252
171
289
191
157
212
238
167
229
199
197
208
216
176
182
236
222
223
227
132
211
204
244
160
212
238
184
232
130
221
203
159
252
201
246
207
217
192
171
206
219
251
195
192
215
205
223
220
230
191
193
206
191
184
210
210
190
175
257
144
237
179
247
202
212
203
143
231
192
200
329
208
181
152
169
160
195
246
223
162
167
215
177
155
166
167
186
241
155
210
191
193
208
263
223
233
204
204
250
199
234
215
232
206
237
162
222
242
249
186
207
213
189
210
150
153
259
211
118
250
179
211
194
213
164
239
223
222
154
170
216
225
216
265
233
156
202
214
254
218
224
170
194
231
169
148
223
176
187
191
211
174
129
171
112
206
237
220
154
212
225
177
210
214
179
158
200
203
223
205
146
202
189
275
212
204
181
187
173
209
226
159
213
193
222
213
214
241
219
207
189
187
201
212
254
180
228
129
214
179
277
233
255
226
214
164
156
195
228
181
156
228
255
266
242
233
165
228
193
209
197
148
210
140
126
158
159
226
219
161
248
254
188
219
162
223
253
158
252
192
203
193
211
208
168
242
199
266
147
233
138
208
215
206
209
237
226
133
241
241
212
126
293
230
128
180
181
197
151
168
236
192
149
215
206
184
212
223
153
194
203
267
189
189
179
230
238
173
174
186
204
210
214
192
145
166
134
171
200
223
198
211
173
183
177
208
166
186
214
184
236
208
224
144
220
172
163
216
217
178
236
213
252
235
212
191
192
195
176
210
191
203
225
210
161
247
234
192
196
150
234
243
201
218
188
211
182
195
171
147
228
180
198
224
174
196
234
168
188
174
279
180
170
272
231
286
166
171
198
217
229
245
220
152
279
156
180
137
228
176
202
152
232
208
235
204
208
222
226
227
177
175
221
103
162
189
147
187
181
208
184
160
217
227
141
255
227
231
210
205
147
215
191
162
221
229
139
159
182
133
159
224
198
254
238
222
133
205
141
205
214
213
139
235
193
252
253
209
178
179
235
179
146
223
242
176
190
181
220
223
194
183
217
203
175
224
142
187
197
219
264
222
165
201
216
179
119
183
142
196
160
182
192
173
179
206
227
216
255
219
140
187
212
208
164
263
202
194
167
188
196
233
182
238
197
199
160
201
173
206
168
216
207
225
199
234
164
188
203
174
278
218
182
190
177
235
176
195
201
249
236
231
207
147
217
191
174
214
194
181
216
169
185
155
231
220
115
197
172
220
196
243
133
221
195
232
149
246
222
211
163
179
251
169
192
235
246
252
184
224
130
235
229
209
214
158
216
190
198
148
118
168
195
245
198
148
239
198
175
206
157
221
185
234
222
156
196
226
156
189
182
192
177
168
201
184
214
224
193
204
198
189
204
289
155
171
177
196
146
174
205
203
190
182
200
227
208
242
127
204
166
224
150
205
206
171
205
149
201
210
237
202
184
213
237
207
142
195
234
156
272
147
174
220
218
224
199
198
211
160
216
169
152
154
181
225
139
131
196
250
184
177
172
231
224
236
187
296
192
176
259
166
174
169
178
224
159
246
200
216
219
208
210
218
181
206
203
169
209
236
183
244
183
254
191
169
180
165
257
200
177
213
144
228
162
241
239
209
235
200
205
217
247
214
204
193
246
161
164
192
206
225
175
248
240
193
164
204
189
208
224
232
220
204
186
223
184
217
179
157
147
204
216
228
207
160
214
200
237
207
165
210
197
189
187
196
193
269
232
222
213
216
241
193
173
130
243
225
212
267
192
218
200
186
156
249
199
244
142
207
158
273
177
172
219
196
131
203
170
195
254
189
213
167
144
177
187
213
181
230
169
222
224
198
194
258
179
238
262
178
225
250
160
177
221
215
179
177
176
268
190
185
154
200
197
153
208
230
173
135
165
260
181
266
211
259
239
204
173
216
217
216
215
224
159
209
214
214
209
220
199
207
128
184
232
177
235
222
104
203
199
245
198
202
231
241
196
181
232
229
167
194
211
205
188
202
217
256
262
180
169
180
208
261
229
120
244
205
209
174
196
198
121
183
208
215
155
254
226
256
194
190
147
216
178
166
148
146
254
193
206
193
149
209
223
135
147
207
226
188
226
201
256
211
218
240
173
246
173
228
237
157
239
194
155
231
176
182
208
252
165
119
227
204
215
202
163
150
193
209
244
268
199
197
175
195
184
164
234
221
160
275
146
198
231
196
169
173
242
171
202
174
212
175
291
251
206
220
209
177
178
159
169
203
256
190
222
146
177
178
169
225
215
199
194
220
159
264
181
156
209
184
164
160
238
177
213
199
195
147
204
190
203
159
209
173
218
232
187
163
203
167
154
165
281
192
224
212
224
148
232
194
191
157
141
155
183
230
183
287
228
249
206
177
170
161
215
115
211
189
208
214
255
165
187
134
234
203
228
198
210
197
167
158
125
230
155
213
176
184
274
216
162
240
163
195
171
220
153
150
226
154
217
182
214
212
187
238
217
205
189
223
159
156
259
172
227
210
124
172
153
142
229
227
187
260
157
219
230
197
212
236
127
192
224
279
199
175
199
204
196
179
181
255
252
220
223
180
224
240
139
215
229
247
195
205
172
174
214
169
255
173
190
175
199
215
240
225
192
188
180
229
182
173
202
176
154
202
163
237
197
192
225
176
194
214
186
167
137
172
264
199
239
204
249
205
201
172
221
198
209
146
211
200
204
198
252
174
182
265
164
236
269
231
252
187
248
199
206
191
173
248
168
163
170
201
186
216
242
167
227
168
197
202
202
240
228
171
195
190
251
241
195
215
253
254
279
152
220
189
272
184
184
174
205
189
213
225
248
245
216
195
143
220
108
168
166
140
189
220
247
251
178
235
207
168
233
228
216
194
260
183
215
171
233
164
245
141
201
255
209
200
192
161
153
207
195
231
235
219
167
241
210
210
190
237
213
163
201
214
224
172
197
228
166
196
192
148
194
224
206
209
179
221
256
162
209
255
255
163
149
208
187
225
227
169
230
116
195
167
199
191
251
185
136
217
195
171
222
219
225
174
185
227
206
268
176
218
162
203
193
249
216
173
206
247
178
146
171
207
178
171
196
172
166
208
175
213
132
196
184
202
184
216
208
231
243
171
242
232
212
202
209
205
185
180
193
259
146
236
131
202
191
186
215
184
229
187
194
196
170
184
173
140
255
190
244
179
237
168
225
205
195
128
187
223
225
264
201
185
202
164
145
214
218
180
220
270
236
222
209
189
146
255
188
226
229
168
160
124
209
245
230
186
261
199
205
193
203
237
212
204
129
216
217
198
169
244
229
260
233
191
208
248
230
224
163
217
198
194
148
237
210
192
194
217
183
166
151
168
184
155
146
152
183
217
217
153
173
182
129
192
243
260
210
234
251
204
170
222
230
225
218
226
235
195
154
181
229
252
241
211
236
269
212
197
217
196
196
198
240
188
167
193
210
184
267
223
240
216
190
246
208
184
239
210
271
185
221
191
204
161
199
208
172
203
170
173
225
261
214
210
143
207
210
231
184
222
254
197
182
230
188
178
195
206
196
183
252
224
190
228
221
173
233
220
206
185
144
255
195
229
162
232
179
132
198
180
190
179
195
150
236
188
192
198
214
205
176
222
227
239
254
182
204
203
199
243
182
196
169
123
198
170
195
213
133
218
220
201
260
184
152
147
174
147
265
258
214
213
160
206
201
173
174
216
178
163
228
200
229
159
205
180
225
190
160
180
163
228
193
172
194
170
225
195
212
144
229
258
228
152
256
199
204
193
208
145
201
220
206
182
184
212
241
208
198
235
189
186
179
210
187
200
180
168
185
187
182
229
214
196
192
141
242
214
172
148
202
255
213
256
171
189
227
237
288
224
201
229
140
168
194
203
253
218
208
210
182
220
189
192
202
232
184
185
278
210
226
267
188
217
235
239
187
163
217
163
162
201
216
176
230
219
261
214
264
264
215
225
216
255
249
241
207
242
207
244
218
203
189
173
171
187
216
222
145
221
193
223
190
172
243
171
231
194
224
236
143
222
248
215
235
216
232
173
222
183
153
194
148
223
197
250
117
212
157
220
178
242
176
247
175
212
142
213
214
151
236
209
184
179
226
166
199
253
243
164
136
134
165
172
243
232
203
231
238
202
168
184
177
243
192
198
147
229
208
173
222
171
243
140
149
207
195
140
189
236
239
219
234
188
216
180
194
222
244
156
179
155
188
204
188
145
189
201
144
206
217
199
146
170
198
138
259
197
208
195
158
211
243
146
221
190
260
86
180
192
209
238
211
220
194
174
271
191
163
188
208
239
184
226
205
200
211
224
214
242
199
228
154
199
181
187
232
202
132
257
183
184
249
191
238
217
206
172
170
226
205
234
255
222
211
275
207
223
205
192
158
199
226
267
165
189
230
250
241
306
222
189
226
165
248
203
209
237
236
262
221
161
172
269
171
179
238
254
178
133
140
217
224
195
105
195
203
254
240
225
148
156
190
212
201
251
240
185
203
185
116
121
186
213
199
233
181
213
181
204
252
172
200
143
158
214
200
199
241
187
150
195
160
206
217
146
206
225
225
245
130
165
182
187
240
193
178
209
213
236
214
252
205
180
163
180
135
193
171
170
160
221
212
257
172
180
195
222
217
212
193
216
158
227
237
193
206
268
247
189
230
141
204
213
246
245
228
202
179
218
249
188
193
264
236
177
160
213
223
198
209
209
206
162
221
134
193
141
219
216
241
209
159
181
207
231
229
203
229
257
139
209
132
172
202
155
144
227
217
261
131
157
174
171
206
153
212
204
166
197
192
191
230
175
211
145
160
212
158
192
207
160
180
195
216
240
201
213
170
184
181
199
191
188
190
288
190
117
190
217
186
205
214
206
97
237
207
191
228
159
169
213
211
262
183
158
242
187
174
187
270
221
158
178
208
231
172
242
177
211
209
273
138
257
203
233
210
265
203
206
188
273
234
198
252
257
188
200
182
253
209
172
213
219
154
81
128
210
200
179
206
242
160
262
184
161
242
162
224
157
160
244
186
231
244
165
216
167
254
211
202
230
237
189
184
183
211
203
195
206
175
286
211
205
209
226
153
243
208
205
216
250
185
138
172
246
107
208
202
145
217
209
219
238
163
203
196
214
253
179
231
260
172
192
108
214
209
176
200
221
252
178
163
227
203
181
188
224
203
220
196
192
210
193
202
202
168
210
126
232
253
262
184
158
157
160
212
214
182
232
176
196
165
210
243
192
173
202
237
138
138
158
230
209
211
132
155
210
200
256
152
242
176
260
186
165
189
264
177
161
185
209
224
192
250
262
216
207
184
246
203
248
203
191
200
197
234
187
213
176
213
249
249
166
186
184
181
229
181
149
229
214
175
225
199
194
225
177
197
212
208
228
216
213
252
204
272
220
193
224
211
160
250
208
217
163
166
228
211
255
186
108
200
183
175
223
202
219
232
218
214
240
217
190
192
253
179
185
238
212
209
178
153
229
201
174
201
185
190
245
195
215
154
180
214
160
146
165
141
221
177
140
183
234
159
209
223
195
231
204
207
249
212
251
220
192
240
247
210
223
228
226
221
195
125
206
191
180
156
130
215
202
178
215
227
169
238
242
227
195
208
230
152
201
198
188
204
173
235
241
181
139
172
227
245
160
208
113
256
164
200
222
178
197
123
229
199
164
168
127
186
180
194
212
217
216
195
186
171
205
182
178
213
160
240
202
203
147
165
200
248
185
173
204
207
179
207
197
215
211
139
240
180
165
216
202
261
255
199
251
228
253
177
181
198
176
212
169
214
250
258
222
255
201
216
208
158
170
187
202
156
181
233
208
189
226
238
179
154
217
220
192
177
207
235
212
215
234
168
204
289
167
231
250
197
181
195
155
179
182
185
149
194
174
212
162
220
258
171
173
264
202
223
218
190
219
207
207
205
176
228
168
203
260
180
222
176
195
168
204
172
181
209
194
177
167
208
188
182
241
220
249
217
206
230
175
147
193
154
164
148
202
200
180
170
224
209
201
184
204
177
199
193
184
161
152
232
167
212
272
241
179
180
224
234
245
206
223
189
176
214
207
192
223
206
204
204
155
212
159
216
167
216
185
245
254
240
173
162
133
184
173
202
187
207
190
183
244
216
235
139
299
198
208
185
197
227
210
192
161
189
206
180
224
265
180
243
193
214
184
211
163
184
178
252
249
179
176
170
225
206
222
207
208
225
227
198
165
168
233
162
162
177
207
222
229
123
225
181
144
216
235
190
156
208
240
210
152
197
219
178
250
211
167
208
215
228
229
203
178
240
192
142
237
212
250
262
203
179
196
185
183
185
178
161
221
210
225
227
213
202
232
197
188
230
169
212
183
172
232
170
236
157
200
216
229
206
200
222
244
216
263
167
181
222
182
179
220
230
233
272
249
193
239
124
111
230
249
206
199
163
253
184
196
212
224
202
205
171
186
178
186
237
202
231
171
204
221
186
187
202
173
194
221
233
161
199
199
184
237
236
194
160
193
157
225
184
216
147
265
237
250
169
247
204
155
154
174
198
175
164
164
231
193
169
146
147
180
193
283
231
200
164
170
212
212
259
210
195
184
173
196
232
145
181
212
216
240
246
175
232
260
166
222
211
190
134
196
208
215
233
130
231
252
241
206
174
184
185
127
177
185
197
168
210
263
197
175
248
215
195
203
218
198
198
223
222
243
142
165
214
182
229
193
217
238
235
238
199
166
218
205
215
226
144
211
233
199
229
153
239
207
222
198
185
222
183
189
189
191
142
222
217
218
160
138
223
216
181
198
188
208
203
159
214
226
223
161
281
110
245
179
158
149
180
225
232
190
263
211
230
199
172
196
207
191
204
199
157
175
195
226
163
249
210
252
179
210
217
133
153
174
199
184
218
221
172
278
233
211
201
295
246
176
179
155
200
200
215
210
182
189
196
209
201
134
247
227
177
197
186
222
237
210
191
270
150
176
176
194
194
200
237
173
153
230
247
163
198
172
217
205
191
183
159
202
196
149
202
172
192
166
208
173
231
216
251
156
150
226
142
139
215
140
189
170
185
146
212
172
226
194
177
200
190
244
194
209
187
232
150
227
242
183
239
241
198
189
204
215
180
173
194
191
186
205
218
203
221
195
172
228
240
238
199
232
169
231
166
125
171
166
182
138
254
209
232
277
231
166
191
181
141
161
215
218
186
180
170
198
159
231
149
269
245
275
251
217
177
174
208
216
213
268
132
231
195
248
189
262
197
174
216
167
229
241
177
193
137
198
242
180
205
206
249
210
253
188
185
219
210
211
244
131
246
179
239
146
223
223
159
204
250
270
178
191
212
224
144
163
248
203
234
193
147
197
290
213
222
182
219
205
212
227
198
206
192
238
204
194
186
163
220
224
185
268
215
155
246
259
248
182
242
158
198
197
155
269
158
197
168
208
187
207
186
250
187
282
252
182
175
236
151
277
121
182
202
179
195
172
236
229
190
184
209
188
257
160
208
182
144
150
267
111
193
167
180
190
258
267
184
198
186
207
151
173
223
178
195
220
220
274
180
172
202
197
226
251
185
242
193
227
211
201
171
205
235
161
219
158
121
166
167
200
196
249
230
243
197
264
180
222
208
235
221
205
264
172
239
179
226
218
228
181
195
159
177
176
224
174
231
192
194
260
230
168
138
131
215
287
200
167
169
246
256
205
211
213
203
190
165
198
256
192
183
190
220
221
226
133
168
175
212
176
251
215
215
232
165
142
256
194
171
221
181
255
254
253
160
200
247
157
186
204
150
158
161
214
173
188
259
211
148
204
192
244
232
193
174
232
199
258
275
194
177
246
226
240
211
230
159
162
164
222
223
232
200
207
157
228
237
123
147
190
223
144
153
199
193
192
227
162
196
239
228
224
224
255
199
145
223
184
226
180
131
219
224
187
175
168
186
170
194
253
176
208
159
258
260
232
234
219
213
224
224
216
235
181
254
186
244
270
274
248
243
223
193
179
160
192
210
148
205
203
221
162
172
202
204
232
224
227
183
167
230
172
173
132
203
206
162
214
175
155
268
195
211
185
215
190
200
144
261
139
141
232
196
216
216
180
161
206
210
149
121
146
219
174
152
221
210
193
224
188
210
173
210
261
180
218
169
225
186
222
195
173
199
229
251
199
166
186
204
189
227
206
207
193
208
166
135
224
224
221
223
151
221
241
197
213
237
183
216
193
158
137
206
184
192
196
175
199
214
200
221
188
218
203
180
245
210
214
238
154
141
160
232
183
265
281
159
151
249
155
195
179
203
180
254
210
160
207
174
210
206
234
266
208
246
216
257
173
203
204
276
278
247
223
224
203
187
216
257
215
240
232
214
185
261
181
173
145
199
187
184
183
176
192
275
158
179
215
145
246
232
203
212
195
214
139
194
220
197
203
243
225
192
173
176
184
184
217
186
168
150
251
197
216
171
220
220
225
183
233
235
238
243
184
152
145
183
236
171
169
200
227
153
210
178
172
189
172
203
193
151
226
181
237
205
159
283
194
191
135
193
234
198
234
218
211
266
179
153
193
195
229
191
196
180
242
197
172
189
138
218
246
246
123
171
256
207
176
197
213
206
168
146
210
213
264
205
206
201
216
190
183
180
189
182
124
212
187
182
212
256
239
237
192
160
186
142
226
189
203
149
128
209
230
267
194
157
102
228
172
214
215
224
228
201
191
194
175
162
162
198
195
195
226
239
211
204
250
182
219
143
144
182
156
193
261
215
146
255
247
211
223
234
232
188
149
203
160
233
139
217
211
201
192
201
205
264
231
169
141
252
221
246
221
196
239
157
177
206
200
216
228
169
212
208
214
227
235
165
165
218
225
215
214
236
140
108
248
188
194
204
203
154
193
212
221
187
187
199
216
253
240
197
187
96
192
215
211
180
185
189
183
200
132
159
213
212
169
204
206
232
143
177
226
175
207
252
234
251
252
160
261
144
163
189
165
204
207
219
235
190
224
228
215
223
211
191
224
246
173
227
183
204
216
240
243
230
262
233
229
207
225
190
237
208
215
199
226
246
186
180
157
208
177
213
154
195
189
204
173
241
237
199
199
232
175
163
200
249
237
203
214
158
151
196
240
136
192
187
275
202
192
241
186
195
181
161
211
196
174
168
226
202
208
207
193
251
177
129
190
140
155
186
196
181
244
158
194
159
181
171
187
211
247
185
198
221
134
245
238
239
201
266
235
220
205
226
227
196
134
206
235
143
134
212
243
209
226
217
165
238
188
219
142
236
264
199
225
168
189
175
156
177
189
170
179
224
186
202
180
169
277
239
208
231
211
165
207
234
135
224
138
206
178
178
213
213
213
252
262
272
171
201
225
169
266
138
218
252
173
195
151
124
175
169
208
182
234
214
156
169
201
206
119
205
224
193
243
177
246
186
181
200
200
195
202
192
180
216
245
204
143
247
194
224
177
181
253
225
187
186
212
184
179
206
163
197
254
242
215
252
240
190
177
190
134
212
160
136
227
210
192
239
202
234
182
195
174
215
195
252
151
160
211
169
211
171
226
197
155
187
112
208
166
214
128
225
200
241
188
157
225
165
216
202
176
225
165
206
219
184
185
212
191
254
247
121
220
220
169
172
201
172
224
166
195
224
204
214
218
156
252
204
176
222
277
173
178
218
197
212
227
249
209
210
167
143
245
224
171
175
206
210
298
195
241
213
251
150
157
159
206
171
202
193
181
305
226
183
252
256
288
254
196
178
180
193
158
229
200
174
207
125
205
113
214
245
186
187
207
211
185
231
202
187
174
174
234
275
170
244
176
200
244
216
189
209
130
186
224
223
165
202
194
163
241
164
154
186
221
184
262
201
195
262
215
216
177
188
226
128
207
212
187
125
181
139
166
181
209
173
225
226
224
166
215
152
176
228
191
262
193
126
212
156
202
198
233
205
190
174
282
258
190
186
185
204
221
143
176
167
236
214
190
218
220
212
157
204
207
182
211
205
207
217
228
247
208
186
225
216
219
202
175
152
196
205
148
196
222
176
236
265
188
177
188
243
221
193
202
202
189
190
227
146
164
202
130
236
204
187
187
154
194
157
282
171
209
180
159
146
208
219
215
239
252
211
218
148
182
180
202
153
218
173
211
193
205
246
248
141
204
264
117
193
210
185
171
212
220
164
231
149
196
174
166
184
203
164
202
217
170
156
213
192
171
242
233
196
190
137
224
166
211
115
220
200
188
138
204
187
159
200
194
191
236
242
194
172
186
191
197
200
198
233
221
238
163
198
143
188
194
193
179
254
231
166
214
224
204
193
137
177
206
229
252
219
213
207
219
193
193
174
238
136
186
202
297
242
242
177
210
185
153
253
148
221
198
189
212
152
217
255
238
187
166
209
266
194
246
248
246
276
178
195
206
182
187
189
193
200
199
208
190
191
205
227
168
235
184
218
221
200
196
180
157
230
197
183
176
219
202
226
182
130
166
208
278
220
204
162
227
242
236
167
207
173
153
202
209
250
210
212
192
199
254
171
168
199
117
221
251
219
265
142
137
180
184
243
189
179
204
196
238
228
145
226
170
156
165
219
182
196
173
216
273
194
270
196
284
182
196
235
84
155
298
274
220
217
179
179
188
189
229
201
171
191
166
145
156
221
215
166
194
216
196
191
235
180
221
220
176
183
211
217
194
174
192
165
265
239
191
180
166
184
218
224
264
233
173
151
175
259
186
158
206
202
163
225
170
213
154
178
112
197
243
200
199
201
221
92
198
195
176
212
213
231
239
213
244
224
190
188
131
178
226
164
129
202
245
181
203
179
215
210
193
235
206
157
195
129
193
242
226
233
202
203
156
194
243
148
132
203
162
232
198
189
143
135
209
189
197
224
205
202
139
152
227
182
233
195
214
182
196
170
231
199
237
205
188
225
236
224
242
195
218
192
233
228
180
218
160
191
219
210
162
248
215
138
221
178
238
174
254
172
237
192
235
151
197
225
236
230
209
184
206
185
178
215
171
233
242
201
216
224
184
275
214
255
246
212
163
257
137
218
160
211
188
206
209
199
161
139
186
218
201
222
244
215
199
262
247
186
189
209
219
211
250
182
244
231
169
223
180
130
160
168
208
179
217
154
221
236
165
179
202
163
182
156
149
192
168
172
137
160
213
257
169
224
194
258
102
149
236
194
262
163
220
234
209
239
220
167
223
183
189
191
259
189
192
161
219
187
213
155
170
150
203
230
145
223
156
239
211
226
206
201
241
161
214
237
205
230
187
183
260
206
247
208
196
213
221
214
184
225
158
214
239
156
244
223
233
170
172
220
276
242
175
209
196
191
203
169
154
188
224
153
201
141
226
234
211
181
186
153
175
229
252
192
193
215
177
177
175
218
220
128
198
222
175
148
249
162
205
176
190
187
136
202
254
238
150
194
183
133
195
205
236
216
106
176
219
187
119
240
198
266
226
139
211
169
187
198
156
257
213
166
214
228
200
152
254
245
164
169
160
221
254
212
215
185
227
227
183
230
253
241
169
193
188
209
192
203
170
188
175
187
217
249
218
220
164
184
172
192
198
195
199
181
178
249
248
165
221
195
183
265
81
151
201
229
254
190
197
171
191
175
195
201
121
221
216
268
171
205
211
201
257
196
237
214
233
185
232
208
192
163
166
132
163
171
169
166
244
194
244
174
236
155
197
244
163
198
192
216
203
234
215
196
241
152
180
196
243
167
219
226
246
185
217
186
198
201
232
183
260
170
267
301
192
231
155
242
234
150
189
216
208
188
215
192
245
200
172
205
240
222
135
193
157
208
198
153
243
206
143
200
197
240
156
182
168
131
201
166
239
230
222
138
183
143
207
241
269
247
251
140
253
200
235
167
207
161
204
201
230
232
251
158
189
187
241
256
255
155
190
196
166
194
191
179
139
198
179
196
180
261
246
223
173
220
198
234
157
168
231
221
266
150
155
178
205
247
219
231
156
208
186
168
151
218
190
198
169
239
231
152
207
125
226
200
240
236
225
173
218
179
154
166
175
177
208
282
232
226
167
178
222
218
234
226
220
208
174
272
144
198
211
182
196
215
136
235
238
221
167
191
250
232
149
206
236
185
211
189
163
245
174
191
164
193
194
236
188
228
127
190
212
197
158
232
178
171
165
153
251
262
156
222
167
195
197
162
240
245
224
151
153
188
206
184
195
224
238
218
178
207
190
235
258
202
246
185
173
174
157
186
274
222
164
196
131
196
236
199
127
154
253
229
193
210
138
212
152
94
214
244
148
217
214
187
177
207
168
223
146
253
193
216
188
205
171
216
250
198
258
164
193
241
150
201
240
231
252
234
226
221
211
194
211
194
218
166
267
142
212
149
194
231
226
200
186
196
215
149
204
199
221
187
234
231
213
148
225
202
227
182
244
163
143
188
192
206
210
206
241
169
158
271
187
199
214
273
146
228
213
225
192
205
182
232
204
189
215
255
204
213
306
201
108
220
187
202
171
192
173
204
228
185
209
132
133
235
156
215
171
181
220
216
184
158
177
212
236
183
165
249
321
236
198
226
182
172
201
219
187
191
220
200
194
232
177
229
157
213
206
216
209
223
160
223
185
232
227
156
172
116
261
218
224
190
186
156
251
197
204
205
194
185
130
180
228
174
219
188
151
159
119
212
206
173
201
189
237
219
228
233
244
211
157
142
227
195
193
208
193
185
209
180
182
197
248
156
200
183
165
178
166
131
133
256
188
174
212
180
263
154
273
197
215
204
228
231
147
290
209
190
284
133
224
218
241
187
183
165
214
229
190
212
175
145
214
211
166
255
150
201
261
189
207
194
179
271
227
206
211
179
162
183
224
198
136
145
227
217
214
233
256
189
121
232
181
173
155
162
216
194
173
191
232
144
182
169
159
221
235
185
166
193
205
212
155
256
244
208
240
241
120
203
221
227
203
190
223
171
184
160
152
255
238
233
267
154
185
218
159
165
187
253
217
164
199
246
209
228
200
208
189
173
231
213
248
217
169
219
197
173
172
180
229
170
172
187
241
259
204
180
249
276
202
231
196
220
246
167
186
214
198
185
179
189
251
183
189
187
221
237
203
222
213
166
157
247
218
191
224
180
218
191
185
153
232
165
170
101
193
222
237
208
228
252
197
212
224
218
184
215
209
209
216
253
244
196
183
191
191
121
186
176
164
233
155
235
180
162
213
186
201
191
211
201
251
173
178
248
135
198
181
179
227
203
161
171
183
221
162
179
207
225
243
204
194
225
177
178
200
151
177
211
174
223
194
144
218
267
178
162
205
266
200
232
153
251
171
216
178
219
175
158
168
209
275
205
253
185
229
182
233
205
217
244
157
212
189
183
200
185
241
239
217
220
243
194
173
160
228
161
221
205
121
259
215
187
224
174
236
232
212
250
251
190
169
221
233
215
182
192
218
218
195
213
229
220
129
159
213
219
202
199
193
198
213
218
192
185
258
225
237
250
189
169
210
248
229
243
184
215
191
228
217
240
149
141
215
191
192
197
222
220
182
144
202
231
228
189
139
214
197
197
257
270
258
168
215
267
207
163
227
238
179
210
267
193
219
233
116
240
178
195
148
190
206
168
209
250
213
169
212
150
210
264
151
165
175
273
106
219
246
240
135
155
251
264
195
173
199
211
196
146
186
223
212
202
229
193
172
182
194
216
203
200
281
200
157
207
250
210
164
135
201
194
209
172
180
187
191
255
224
220
236
185
271
183
202
241
251
184
217
230
184
216
166
208
205
207
207
214
244
254
137
196
151
213
135
216
237
176
184
167
155
192
258
235
190
239
187
215
224
222
179
178
158
206
208
182
231
184
244
161
182
184
186
163
207
242
185
189
204
148
208
174
240
167
158
170
222
179
226
216
164
157
151
188
229
236
263
229
219
178
243
215
221
206
227
243
198
207
166
209
160
217
203
135
215
185
219
196
224
209
216
250
186
210
154
181
193
247
143
208
137
211
168
239
289
210
227
273
233
175
195
268
221
187
192
219
241
172
192
164
173
198
204
192
178
235
230
216
215
168
224
212
206
181
218
221
225
194
206
194
159
190
220
175
176
216
229
201
226
214
253
197
189
189
192
180
261
210
179
207
215
158
171
203
222
211
200
114
194
176
199
156
225
187
170
187
204
239
195
229
224
211
227
203
180
179
206
172
196
226
202
185
169
191
187
210
249
129
178
208
117
254
181
190
204
204
190
208
170
177
161
187
166
158
254
237
173
228
169
180
230
184
216
145
166
224
222
203
207
170
257
244
198
215
174
209
233
248
216
138
270
112
103
150
241
190
237
214
191
210
190
161
170
218
205
268
181
215
210
221
205
196
134
214
224
209
239
234
208
219
186
132
151
203
168
123
260
213
181
165
255
143
246
207
139
248
227
165
213
160
247
166
146
205
244
181
260
237
205
177
195
219
250
205
192
230
199
240
138
232
242
204
203
238
152
129
193
240
228
220
206
152
222
170
224
147
224
141
153
186
269
200
221
214
225
185
237
190
154
243
219
218
182
269
208
184
224
138
241
188
195
221
229
221
217
252
178
215
224
212
174
212
150
206
215
201
254
181
163
151
198
298
173
147
202
150
188
187
225
279
193
190
276
183
225
191
260
188
251
248
245
154
192
189
190
229
185
236
190
240
167
177
247
231
247
197
207
265
186
234
237
268
200
169
171
183
168
212
202
141
152
165
246
261
245
228
212
187
213
200
224
212
200
208
165
158
237
217
243
121
188
202
209
211
190
147
221
216
159
205
154
213
209
207
236
199
240
230
164
202
194
210
220
251
141
208
188
150
257
189
211
193
137
200
180
203
203
151
214
183
173
205
241
153
200
210
219
237
237
156
157
214
143
198
241
161
182
232
220
192
129
176
141
199
187
175
208
155
239
161
170
200
212
221
263
190
127
229
191
197
251
161
192
170
152
204
192
207
240
229
246
197
234
232
207
176
197
188
180
161
165
196
113
189
229
176
145
185
222
168
216
209
241
194
159
189
178
247
171
226
186
209
168
201
189
152
258
162
201
207
243
180
183
210
258
185
163
265
193
194
162
153
209
177
171
249
166
140
192
187
223
233
187
240
227
176
186
226
175
185
122
190
245
180
138
167
184
233
228
180
175
223
169
219
189
167
173
170
285
226
212
179
247
154
242
264
197
205
219
209
159
180
214
203
193
223
134
209
221
206
161
233
185
228
183
161
161
194
206
274
173
185
198
196
221
190
269
210
244
165
147
197
174
200
190
213
226
219
211
126
189
208
179
193
217
205
183
211
198
232
166
237
208
221
224
154
239
212
162
155
254
194
191
169
226
185
188
176
175
204
216
199
188
146
229
139
149
208
137
179
220
169
190
205
200
158
218
180
199
164
266
88
166
187
196
171
220
207
212
196
224
151
155
182
222
223
189
204
212
132
218
217
221
238
207
143
208
197
243
122
234
140
191
191
254
187
125
196
210
195
200
246
144
233
210
131
182
100
198
202
177
269
171
180
169
162
142
193
179
151
196
175
178
192
153
245
213
211
195
246
198
218
164
211
167
211
169
139
190
205
216
207
145
205
231
197
189
176
217
226
165
202
220
249
204
223
251
163
180
144
183
215
155
195
221
212
218
174
174
157
185
155
219
225
221
198
211
237
278
204
247
233
177
239
168
203
173
216
193
160
188
195
224
146
198
224
221
199
221
221
169
217
196
233
140
202
189
135
257
214
221
258
235
248
217
176
214
129
173
212
206
200
197
233
154
226
200
245
218
145
214
235
194
226
198
215
155
207
187
219
162
195
161
275
174
241
201
177
178
183
177
244
220
169
220
203
238
203
205
206
208
249
147
217
173
183
240
186
189
167
222
231
217
241
203
116
205
240
198
181
194
200
223
183
192
121
251
182
212
145
190
219
207
240
220
229
166
157
257
216
208
150
173
214
256
211
195
253
208
148
220
232
162
127
187
188
173
218
190
217
239
222
182
202
208
228
230
228
226
262
123
154
236
163
228
212
146
242
159
224
151
224
177
227
160
169
135
154
208
241
178
249
164
210
183
184
221
203
183
173
207
251
253
208
129
193
112
182
172
175
182
163
248
207
233
224
155
139
254
216
189
156
227
113
129
214
172
184
172
192
177
200
201
259
238
202
231
134
235
214
172
167
209
220
155
167
153
260
206
208
177
156
217
172
180
190
198
214
190
190
134
153
239
213
186
196
198
269
212
221
198
181
176
209
230
189
190
243
171
240
119
216
261
248
208
233
162
217
213
191
178
182
222
204
193
197
244
201
194
180
216
229
169
189
268
198
161
235
209
209
203
234
189
177
259
213
141
153
209
231
137
228
237
252
197
215
155
188
228
244
226
242
220
212
206
219
160
235
220
133
168
175
219
130
202
167
130
230
221
226
253
228
201
235
196
215
232
198
240
143
211
236
165
197
260
240
156
235
222
220
146
191
210
158
230
259
190
217
137
237
232
182
191
183
201
212
223
186
182
251
162
210
173
235
143
220
192
182
240
219
125
156
214
246
215
252
193
222
213
199
175
250
158
197
236
196
171
198
199
244
160
234
154
209
245
186
167
204
204
227
193
188
169
130
251
176
228
213
255
204
215
117
235
268
167
197
216
209
209
228
193
232
234
256
205
205
228
262
203
243
129
214
198
242
228
211
253
184
189
191
239
220
218
194
268
203
236
194
224
205
225
208
236
170
211
140
216
156
206
193
200
187
138
267
191
210
167
272
186
204
214
189
242
195
200
219
191
227
139
194
213
154
227
196
262
185
117
246
184
202
165
167
180
226
225
205
252
176
232
190
221
154
155
227
234
182
183
219
218
251
170
191
252
235
202
175
179
222
270
154
224
248
186
143
245
220
184
152
201
228
214
237
287
165
238
136
122
257
176
242
161
204
189
137
191
195
212
207
231
210
164
281
165
161
116
115
188
176
160
185
197
105
215
192
204
177
213
235
233
221
116
222
188
219
200
224
132
163
238
253
234
225
213
234
183
199
159
231
172
236
233
200
172
228
177
211
204
218
229
226
272
143
209
235
213
287
193
253
177
150
110
220
115
165
172
215
149
158
184
243
157
216
171
271
199
259
231
216
170
186
166
185
273
218
219
210
179
158
90
215
214
245
192
185
215
204
219
209
226
222
234
183
164
178
191
234
167
181
189
214
223
252
206
185
195
175
245
217
209
203
245
253
154
179
184
172
173
163
187
197
177
132
193
209
238
242
186
205
167
249
262
202
174
185
183
228
153
245
193
175
181
173
136
216
196
180
240
130
244
213
181
149
191
203
173
177
260
215
148
180
204
209
267
172
207
193
214
238
223
255
203
188
167
221
190
195
178
209
202
151
209
191
185
165
151
190
118
250
183
199
224
252
172
205
205
238
212
180
159
174
253
269
200
204
196
153
157
154
272
216
239
232
230
133
201
164
218
209
233
226
222
254
175
145
173
174
207
177
243
174
235
190
175
246
252
144
216
165
228
189
246
158
204
143
249
220
231
151
202
198
168
217
177
218
286
180
197
181
135
244
212
189
244
237
182
240
235
173
215
178
181
146
170
195
133
204
188
175
139
216
197
214
269
211
249
157
205
219
228
207
177
282
202
229
174
199
218
171
242
212
194
160
239
207
220
221
216
191
169
234
206
241
172
196
210
224
183
255
203
275
202
264
235
167
167
229
244
229
241
226
166
196
222
243
179
224
199
191
174
243
225
191
155
209
168
144
242
167
211
213
257
221
252
172
258
231
175
193
198
190
191
212
230
197
261
113
201
226
156
194
183
212
171
225
178
205
171
212
203
185
141
146
234
195
234
218
268
164
207
227
239
222
236
208
175
164
202
212
203
187
225
214
202
206
206
223
228
171
174
180
217
174
197
194
216
201
184
202
193
236
230
228
207
178
201
224
227
119
259
234
261
207
174
246
238
142
208
188
226
101
218
204
197
180
236
187
173
169
207
206
202
261
242
236
181
187
248
207
237
168
226
238
205
170
245
236
201
265
141
236
212
197
200
182
179
237
201
186
204
186
190
203
188
200
211
218
211
231
172
186
199
297
213
193
205
189
129
238
248
158
185
189
240
196
224
190
236
119
225
200
195
292
213
182
134
223
194
243
218
209
184
258
273
222
181
204
165
243
151
153
131
201
198
177
216
176
247
232
227
229
151
188
202
257
236
209
221
255
241
254
187
169
217
217
221
234
213
236
235
249
190
142
215
203
152
194
191
191
206
206
195
141
166
226
246
217
199
139
255
207
211
241
230
215
216
251
198
221
242
210
198
239
129
175
166
210
143
223
225
251
184
215
187
220
191
182
190
200
158
173
228
183
166
173
199
223
215
269
195
206
175
248
186
192
165
208
239
231
176
171
183
221
172
258
267
177
263
178
194
214
210
218
234
236
197
192
171
224
185
211
208
152
251
222
238
173
209
209
191
209
207
158
240
185
229
218
233
139
217
190
185
229
183
201
232
155
166
163
145
189
260
225
165
188
101
234
176
139
239
187
273
192
232
218
182
164
193
177
238
159
189
142
159
220
166
190
269
257
171
285
199
224
255
251
187
158
136
222
167
220
220
229
244
182
208
213
175
182
248
223
213
230
192
157
214
238
173
204
157
189
234
181
198
177
225
184
232
234
231
110
181
152
231
138
218
187
237
209
188
219
210
223
178
181
161
235
163
217
218
269
141
166
201
210
207
237
178
239
232
183
223
186
206
221
261
202
208
174
153
237
211
254
128
128
178
217
220
214
226
219
202
168
150
210
117
214
154
245
214
155
189
182
200
203
225
175
193
222
187
183
202
189
167
180
198
219
211
167
182
270
206
219
197
204
223
183
218
197
216
180
184
204
189
183
220
227
152
210
219
131
132
203
208
199
268
204
221
215
191
164
215
115
206
219
230
194
167
183
241
241
186
236
215
218
199
247
161
209
182
188
191
190
236
117
192
248
118
239
175
208
174
212
178
157
195
145
199
155
217
188
167
258
212
164
143
239
169
173
192
199
250
174
216
201
200
166
133
146
232
236
195
242
165
118
223
160
203
191
144
168
140
203
227
173
204
206
276
189
115
262
171
211
237
227
183
211
164
234
184
150
160
170
206
187
191
208
195
160
193
204
227
221
260
214
224
212
180
174
136
235
191
195
133
225
176
164
269
219
146
184
260
225
206
189
178
217
232
137
189
186
228
227
177
242
202
198
241
206
236
212
206
192
243
145
167
146
174
162
191
241
208
241
219
244
201
227
232
180
191
191
160
186
186
199
205
162
262
226
184
219
158
243
203
216
183
160
216
134
182
211
188
208
196
200
188
254
199
244
218
229
205
139
162
199
192
208
191
188
194
180
216
193
212
152
183
175
203
243
199
197
265
183
143
213
147
166
238
213
188
197
138
218
148
191
173
167
170
219
240
205
228
210
200
267
255
228
172
149
248
243
218
222
240
204
201
235
156
202
165
169
174
247
161
160
157
151
214
186
182
171
159
186
210
94
203
204
192
146
261
227
222
207
176
242
173
247
161
217
231
213
171
203
170
177
160
202
155
187
189
134
239
192
201
293
201
199
237
178
195
205
93
244
231
255
175
239
241
190
163
190
211
234
204
229
145
231
171
219
166
228
161
202
219
211
219
197
192
201
186
190
197
222
189
251
191
171
229
254
190
164
168
202
193
206
156
205
158
256
230
155
221
185
204
228
242
147
185
169
190
173
204
226
201
196
208
164
253
177
155
112
224
203
185
163
184
189
152
216
124
173
161
235
165
250
159
231
298
268
207
212
263
183
204
205
213
125
212
216
247
167
245
132
217
226
182
196
181
169
194
233
217
174
162
159
218
187
244
243
219
167
295
236
221
209
185
116
247
212
204
190
205
197
150
206
209
156
183
199
182
202
185
211
176
193
213
184
127
188
232
193
195
167
212
176
174
213
186
169
121
164
243
240
231
221
183
206
178
236
256
238
169
236
193
179
200
194
179
253
148
172
201
156
227
191
214
224
190
219
202
147
213
208
162
177
128
137
149
219
221
146
195
236
225
139
136
222
204
182
171
227
132
191
206
198
180
186
149
247
224
184
210
201
205
212
162
151
167
225
211
200
226
174
173
198
241
199
217
200
178
169
191
219
181
174
107
225
237
202
198
208
157
173
225
169
174
257
234
201
218
203
192
186
215
213
231
211
140
135
242
191
161
168
175
227
226
232
183
181
284
211
224
159
165
241
177
175
185
173
124
161
127
223
190
242
218
187
170
206
236
250
179
264
230
143
207
227
193
203
177
260
174
167
140
185
213
171
220
262
178
219
228
165
196
246
278
203
170
145
228
238
196
246
137
182
239
169
222
184
223
213
199
232
164
226
155
241
208
190
187
179
139
203
164
205
207
247
235
176
228
227
196
182
191
234
217
205
251
149
185
233
220
174
199
167
164
242
221
151
170
262
208
186
226
180
200
218
219
203
172
239
140
234
202
203
208
195
119
244
162
188
196
160
169
226
213
152
218
182
241
199
166
129
140
143
231
174
195
180
218
156
149
216
219
160
239
203
170
252
176
166
200
199
256
232
187
216
259
231
177
184
253
237
183
265
185
210
154
232
188
224
189
217
158
212
188
225
165
248
178
196
205
237
206
248
266
202
172
224
197
159
135
176
211
130
255
206
169
173
209
192
226
183
200
190
216
174
172
166
155
197
223
183
244
264
170
218
205
178
219
242
148
240
217
184
204
199
128
203
226
232
188
226
225
217
175
193
197
160
206
233
178
167
191
177
197
169
232
200
248
151
199
206
145
178
203
192
170
157
183
214
199
216
225
257
187
173
222
149
221
147
216
188
205
219
210
234
151
247
271
186
221
222
217
192
214
248
179
220
211
254
237
151
270
188
123
194
174
204
235
191
171
186
164
201
202
203
165
264
223
245
228
193
177
218
215
164
185
178
238
203
193
189
244
212
231
178
286
210
242
161
274
218
215
233
136
178
226
228
161
183
230
225
233
215
164
226
206
227
176
159
160
183
231
171
221
196
157
188
180
239
205
245
188
161
212
163
182
225
250
223
260
226
224
264
154
174
266
214
137
207
198
173
241
194
156
203
128
178
189
236
155
242
168
198
228
162
250
197
211
213
193
193
209
178
170
182
192
220
209
175
178
222
196
136
254
186
180
203
169
206
231
176
237
199
189
227
226
190
214
233
154
166
283
187
160
196
175
156
184
190
218
150
253
151
149
162
175
214
204
194
167
202
236
213
173
186
155
222
153
183
213
238
262
166
194
204
240
255
154
167
239
209
254
200
199
174
227
160
225
233
244
192
137
246
142
214
230
192
159
165
212
244
189
177
154
153
205
228
160
212
219
163
222
207
167
207
226
191
154
263
238
121
194
224
147
177
169
205
221
171
177
161
167
260
187
189
91
214
185
166
233
255
222
197
175
183
231
171
230
160
189
246
204
205
220
208
189
183
207
230
204
207
154
175
256
145
175
161
167
175
224
193
173
192
152
237
110
212
188
157
196
185
238
240
232
211
165
195
216
194
311
138
173
97
204
177
214
244
154
206
162
191
202
228
185
215
216
115
165
197
178
195
266
201
216
157
250
91
210
204
226
208
202
174
162
197
228
190
189
177
197
168
242
212
175
220
156
139
198
206
191
199
251
210
221
157
205
263
206
176
156
242
231
201
183
164
207
256
201
250
155
218
207
245
169
185
254
240
244
238
188
250
188
153
161
188
241
165
112
157
180
183
207
224
235
188
171
187
206
203
226
188
221
238
260
211
230
172
145
168
228
210
218
204
236
205
156
189
219
245
222
161
254
215
228
184
153
204
227
210
172
207
207
181
195
275
205
198
197
220
230
172
187
210
163
204
199
244
219
203
193
157
181
254
223
208
208
214
228
194
175
265
162
161
221
199
163
228
220
257
161
180
111
158
160
173
216
156
189
218
159
163
213
197
209
208
198
216
244
175
243
220
272
174
206
160
149
194
206
249
213
196
121
252
222
195
110
221
248
222
172
133
183
255
172
191
232
244
240
200
176
174
266
188
185
242
192
192
238
222
154
215
130
225
175
221
198
174
157
215
164
201
248
187
189
164
162
202
198
186
170
191
238
220
207
223
202
224
227
212
201
238
187
190
184
190
190
243
249
224
142
131
230
179
230
173
205
206
199
255
174
179
188
245
205
170
269
250
215
199
242
190
219
233
201
177
218
183
187
192
235
136
166
241
234
190
212
217
193
158
166
149
197
193
192
149
213
180
231
222
200
216
202
250
205
215
224
240
194
175
185
230
223
182
138
232
154
166
191
130
151
206
204
158
203
183
156
201
191
196
173
196
204
166
264
159
205
216
183
162
242
210
208
218
281
221
194
214
220
222
188
174
223
220
198
171
201
227
240
205
211
176
193
261
147
164
187
162
162
219
199
173
171
202
191
274
213
158
229
222
219
220
210
245
117
168
181
153
273
219
226
256
213
195
162
218
240
131
195
217
237
220
171
230
205
143
212
253
198
238
248
194
203
197
257
194
114
230
258
200
218
182
189
195
169
123
234
202
205
177
182
198
237
260
236
214
185
212
184
200
175
215
239
220
156
227
225
186
176
181
221
148
254
200
239
174
240
186
234
158
217
169
223
114
224
177
242
257
241
182
204
186
163
169
248
202
187
178
244
180
215
245
234
221
249
187
207
174
168
187
251
223
189
118
236
159
260
235
213
190
164
208
186
142
231
233
189
235
210
193
202
212
165
159
204
167
219
181
206
235
246
187
201
216
221
279
173
221
195
242
218
177
199
204
158
210
199
201
146
166
180
144
144
244
206
292
203
254
170
189
182
234
199
212
189
261
176
215
177
240
216
161
187
232
197
243
240
209
232
173
151
131
203
190
200
203
178
151
162
222
199
228
185
206
183
251
147
209
242
181
226
208
181
93
135
184
196
198
217
162
144
232
197
259
202
240
206
200
219
167
194
161
192
231
233
186
187
225
155
195
223
183
234
199
180
229
188
208
241
241
247
151
198
229
250
197
169
171
184
199
139
160
254
200
193
192
152
146
213
206
203
229
138
200
130
237
131
214
247
223
256
207
172
269
208
219
212
252
192
212
204
205
259
210
240
164
190
233
223
136
208
188
238
144
163
178
187
208
128
185
184
224
249
213
167
223
170
266
177
190
198
129
249
135
231
203
203
220
150
238
268
251
235
207
173
183
233
193
199
200
198
204
237
170
164
169
224
174
231
151
224
236
217
234
217
235
201
186
132
233
211
196
213
151
198
240
121
168
230
224
161
239
218
182
215
197
154
140
186
198
242
201
203
257
170
225
184
218
269
253
210
248
250
194
214
228
245
180
231
237
206
256
196
186
205
215
238
189
190
235
176
207
155
231
214
265
241
178
174
282
211
219
211
191
163
217
196
196
206
242
149
204
215
201
204
220
133
212
180
223
185
199
128
174
222
246
195
213
185
195
208
181
182
163
214
233
214
197
214
183
149
209
213
221
242
208
239
214
181
179
189
254
213
199
221
245
169
202
208
204
152
110
183
192
233
175
204
235
221
218
192
184
188
212
202
144
191
183
174
247
198
203
237
185
162
149
238
211
224
205
198
227
209
166
212
190
193
154
234
204
185
220
143
235
209
196
180
237
145
210
233
190
228
155
138
208
262
179
234
245
166
202
160
173
159
205
193
255
186
160
222
179
222
172
143
193
236
202
159
240
258
216
193
234
210
234
171
179
183
169
120
203
177
175
195
153
254
154
254
166
133
204
169
163
232
184
206
207
231
169
221
224
185
181
171
202
246
166
196
170
172
213
243
175
196
182
250
172
159
162
215
217
149
182
181
183
185
226
203
224
173
203
234
182
216
214
199
204
246
245
124
248
189
236
224
128
230
187
221
189
208
231
189
261
203
133
148
187
213
189
236
152
268
182
154
168
133
144
192
193
241
206
232
202
217
211
239
233
186
226
263
189
183
254
257
215
239
170
204
227
134
164
182
151
206
186
181
226
200
212
125
214
140
165
164
268
237
237
231
181
224
205
270
282
143
194
237
179
202
159
260
176
118
206
244
205
241
201
211
119
186
144
171
171
142
257
188
209
212
152
235
226
265
184
208
160
164
219
229
191
250
193
193
190
197
209
164
175
184
202
241
243
241
169
164
217
203
179
103
171
157
193
216
249
274
208
200
203
158
186
232
171
255
223
211
235
189
236
208
193
159
179
205
185
185
209
185
216
222
232
218
217
193
123
170
194
174
146
203
153
170
222
195
186
190
209
228
249
188
124
168
197
201
148
240
217
218
218
148
209
198
267
187
204
222
193
182
201
199
208
190
181
230
188
163
257
246
209
185
229
225
205
159
211
182
186
144
202
271
146
204
219
190
198
186
227
172
168
198
168
186
200
171
197
187
145
266
217
203
200
178
142
182
229
140
221
158
208
107
229
207
199
234
154
193
185
209
133
170
131
219
234
165
218
227
229
134
157
237
247
160
168
243
281
207
184
189
215
207
163
200
165
249
204
167
253
261
253
186
194
226
189
167
192
201
192
214
210
180
159
213
194
270
166
237
203
215
245
180
193
217
210
207
246
221
204
218
211
235
197
200
175
212
196
204
183
183
191
171
227
213
166
110
187
163
217
238
181
244
143
200
248
188
232
213
199
214
161
185
179
209
231
204
212
203
244
161
207
236
229
245
226
218
198
203
170
203
146
202
213
190
178
181
162
236
205
165
222
178
206
205
191
257
206
198
211
182
148
187
184
206
116
249
201
180
221
218
207
207
158
239
193
178
189
186
233
212
220
234
172
187
225
261
260
219
223
272
237
163
222
181
145
191
228
215
237
159
172
207
164
146
226
196
211
249
207
207
220
206
166
173
209
167
227
219
224
221
198
194
239
196
272
159
209
250
216
230
195
178
222
234
211
218
210
200
217
219
191
186
207
160
218
176
187
178
222
192
193
230
213
185
234
243
191
230
195
200
211
215
204
192
186
192
207
188
170
206
149
214
216
209
224
228
202
220
238
174
197
205
123
213
203
231
173
249
137
161
220
186
235
168
206
161
174
255
198
163
242
190
213
160
195
164
237
226
188
236
230
206
257
184
142
234
241
240
245
167
191
263
171
188
172
217
193
220
177
200
217
152
247
139
204
189
134
172
200
199
180
169
142
158
204
153
204
155
163
172
167
169
193
196
186
206
181
203
232
171
104
221
243
118
157
208
216
198
207
179
172
194
151
208
173
263
215
152
194
209
210
155
157
99
216
136
272
154
185
161
210
141
134
120
200
212
163
174
222
196
155
249
147
170
296
257
209
247
238
244
203
173
244
260
242
173
182
142
179
150
202
201
204
198
207
122
183
180
173
218
245
198
158
130
237
204
155
215
223
192
201
164
231
227
269
200
176
200
181
176
165
272
197
230
175
258
205
122
244
179
170
174
159
176
169
267
202
240
179
201
221
193
203
259
210
183
209
197
160
221
118
205
205
191
197
194
250
207
220
239
239
193
197
231
190
207
188
244
178
171
204
221
124
176
218
214
257
249
198
268
283
149
190
177
161
183
151
223
265
239
208
194
148
180
218
156
206
175
180
224
200
173
170
243
215
170
212
208
213
199
191
232
229
177
183
237
195
143
199
149
175
261
222
227
245
220
172
224
212
154
235
169
126
186
126
185
171
242
220
219
234
198
214
202
229
200
194
153
205
160
140
230
181
159
239
163
186
214
169
144
136
185
211
212
164
249
197
191
190
165
220
176
185
236
207
191
174
173
216
228
223
200
223
222
224
188
249
227
199
192
246
201
140
246
221
176
165
177
212
236
178
225
180
185
272
218
253
174
229
260
240
226
149
194
162
169
188
135
163
213
279
167
156
168
229
153
222
200
191
233
171
171
252
171
187
146
106
173
197
145
237
255
242
238
155
201
161
218
200
168
197
234
273
161
174
196
152
228
190
237
206
255
230
240
185
201
162
129
202
178
211
223
186
207
176
219
178
221
236
153
189
161
151
253
190
199
181
220
195
232
181
212
262
188
209
226
171
191
237
248
215
259
187
185
146
245
234
197
194
260
170
192
251
117
202
228
224
177
179
199
158
199
183
188
180
227
188
226
153
183
161
247
187
203
194
187
236
210
131
279
144
224
151
203
153
158
228
170
209
203
186
222
177
259
237
176
162
199
164
211
183
233
224
164
199
223
255
183
183
291
194
168
231
239
226
215
143
239
198
157
178
128
198
214
231
222
208
143
221
171
158
266
113
220
258
184
182
246
233
199
202
189
213
193
179
197
212
188
142
238
163
149
169
167
155
229
181
235
173
190
220
220
202
178
202
257
242
253
201
267
215
155
203
223
247
207
193
216
176
189
272
218
213
180
228
119
231
150
229
271
226
173
189
209
203
202
228
234
222
210
248
195
188
193
221
199
246
219
183
189
247
238
235
121
242
179
229
240
202
188
133
200
173
219
217
220
238
167
171
146
203
106
203
216
206
260
220
197
123
233
212
184
196
208
188
221
170
202
162
231
189
203
215
242
180
214
203
153
186
188
215
259
220
185
239
219
257
222
190
235
176
233
232
159
202
220
215
213
214
237
227
245
242
264
235
174
206
184
175
249
158
232
239
163
208
182
171
182
212
194
168
130
256
170
177
211
191
138
225
227
205
258
222
208
200
251
239
184
194
164
199
158
224
193
205
206
180
98
229
113
259
183
232
193
243
198
217
217
176
253
217
178
136
183
158
178
218
148
195
242
132
224
206
176
232
189
212
261
167
227
162
199
223
289
151
135
165
202
214
208
217
222
192
229
232
257
195
195
246
147
194
223
226
175
162
191
188
203
181
218
227
227
219
165
189
188
208
250
173
180
185
235
203
179
234
202
224
222
191
192
204
165
184
182
168
171
245
184
219
153
258
243
157
198
174
202
189
196
211
206
152
190
189
250
194
271
203
137
125
188
164
180
193
240
133
210
218
206
171
257
219
210
153
173
240
165
214
189
144
198
221
196
160
169
202
184
246
196
222
253
195
218
225
202
106
167
192
168
249
201
225
216
195
166
230
242
125
206
209
128
189
197
182
208
217
196
205
205
199
270
179
219
255
205
189
220
185
187
186
156
175
214
193
214
227
227
145
176
226
195
181
197
163
178
232
184
213
244
167
240
167
193
246
206
205
271
237
188
157
268
179
247
168
202
224
198
246
203
166
148
168
244
231
236
226
235
218
148
155
260
249
117
200
194
212
236
234
191
156
193
238
160
209
137
146
237
152
242
209
205
186
236
173
228
287
183
238
193
210
239
199
161
178
233
204
173
228
250
291
215
218
218
244
198
255
244
178
262
229
204
141
293
164
165
203
290
225
275
215
189
282
179
239
171
163
210
190
174
182
196
247
250
223
175
216
196
222
180
220
226
216
138
183
153
137
207
187
197
256
233
221
185
187
222
185
198
248
167
206
216
203
134
176
175
215
165
204
192
227
209
131
221
128
241
151
133
202
178
192
204
203
214
224
169
211
206
245
255
192
158
202
204
148
230
206
160
228
133
199
237
148
225
253
187
126
224
161
194
204
204
208
228
135
209
243
156
201
164
204
177
222
206
214
217
126
191
192
189
205
179
141
178
204
205
234
196
205
243
124
179
223
207
216
136
210
173
194
221
200
259
203
184
226
172
189
217
166
168
191
182
193
249
182
202
222
135
158
207
165
232
245
198
216
202
232
248
109
233
228
243
263
252
194
231
221
142
259
177
208
175
223
238
154
173
259
157
175
181
159
170
214
223
230
124
216
194
227
155
236
174
218
204
240
154
175
211
186
153
192
269
151
156
191
184
208
210
285
126
180
253
140
259
191
173
235
194
190
221
171
234
163
271
198
149
193
206
230
179
183
222
217
172
233
156
231
261
200
220
194
186
201
200
156
195
177
167
187
205
197
200
195
201
185
116
220
229
239
227
163
158
170
192
211
205
206
214
225
190
321
215
210
216
218
188
214
175
222
211
170
264
216
201
237
200
197
224
186
190
237
185
239
224
229
205
202
196
236
250
199
141
210
163
188
249
221
218
286
166
244
191
154
166
168
203
178
169
196
277
200
179
175
264
180
252
229
240
249
140
157
272
213
195
179
196
218
244
203
218
174
229
117
199
194
197
249
175
162
183
219
193
218
188
253
160
196
184
178
130
207
180
180
256
219
237
195
251
221
198
138
233
145
187
167
174
130
178
184
214
173
162
212
200
227
211
224
238
200
184
192
191
266
217
195
267
191
184
199
203
169
240
229
195
248
242
203
150
192
208
279
207
203
189
202
210
217
200
158
211
188
204
253
153
149
191
249
196
245
226
209
208
176
247
173
203
204
162
130
169
185
246
188
190
208
166
180
158
194
194
180
253
184
224
179
194
196
155
187
144
132
205
229
229
228
256
258
189
215
225
223
189
223
206
135
264
172
226
228
217
242
228
173
187
211
129
202
265
210
198
205
231
211
256
169
110
163
238
253
196
211
197
219
257
152
262
218
128
195
119
206
228
144
254
216
153
256
238
223
191
185
222
158
245
165
200
188
215
270
181
204
215
188
204
197
183
237
216
218
174
177
205
238
146
248
200
208
223
180
173
226
135
186
177
211
245
230
208
226
245
206
201
231
157
215
234
188
257
200
200
199
199
210
196
123
187
209
146
229
141
179
238
238
206
185
223
145
214
235
173
223
229
149
212
176
159
230
195
203
159
203
137
195
193
183
194
159
235
182
168
261
254
254
232
310
122
184
214
211
121
157
230
219
216
164
197
218
199
208
250
206
215
242
165
205
286
172
255
192
164
164
183
203
171
166
168
169
225
238
172
146
178
187
158
207
162
199
245
256
142
180
178
230
158
215
147
227
246
119
200
210
160
202
195
200
204
185
151
141
191
240
231
77
201
191
164
182
156
194
231
191
233
239
163
191
217
179
215
182
176
167
196
186
262
248
164
155
217
168
173
254
235
200
175
241
293
130
255
201
100
173
183
213
218
185
219
178
182
235
205
166
210
205
151
147
219
244
223
275
219
209
191
250
154
188
220
236
136
192
136
185
261
188
197
195
128
191
185
208
137
208
137
223
239
140
186
155
207
195
188
163
204
222
226
264
240
244
182
226
215
159
225
199
247
158
181
117
266
188
162
226
223
208
215
169
177
204
187
247
191
190
235
240
226
172
249
235
248
218
158
270
196
239
233
172
214
203
224
178
147
201
236
244
183
228
210
204
224
232
132
173
214
132
183
234
197
218
149
247
191
189
220
245
148
146
209
161
199
174
167
221
208
192
213
233
157
175
170
202
203
239
142
207
212
131
221
104
165
261
164
207
180
233
177
206
162
179
187
188
221
168
182
176
231
208
220
159
137
204
221
254
173
239
185
255
200
218
223
209
223
189
213
162
151
223
186
224
198
247
200
181
144
221
148
194
239
214
223
201
251
114
172
182
224
203
222
174
193
214
235
249
220
221
231
164
244
172
242
202
216
227
144
209
235
201
229
197
193
164
221
214
200
120
188
184
169
216
223
215
225
240
245
180
212
182
203
187
188
183
172
176
197
169
194
285
237
243
195
213
207
146
195
237
244
197
232
253
241
206
216
261
259
214
244
183
214
161
233
200
203
228
269
226
245
251
210
167
207
185
243
152
207
185
136
227
213
243
206
178
180
210
230
242
147
236
195
211
220
234
223
195
230
168
179
199
228
179
203
265
187
169
223
176
183
184
277
206
229
157
202
187
199
215
126
215
212
224
241
198
192
209
141
191
240
224
221
222
231
204
219
170
170
235
191
223
209
258
141
166
186
193
222
185
231
117
212
162
173
166
216
234
198
213
135
272
242
233
211
181
206
276
198
194
206
171
218
267
197
200
222
178
265
201
201
207
233
163
258
232
121
188
174
254
287
221
188
181
198
178
217
220
147
230
203
210
226
243
194
177
165
208
250
192
207
225
167
190
200
171
226
176
140
184
246
170
242
140
234
155
267
125
224
223
184
236
238
223
190
205
253
184
272
211
165
163
197
203
183
205
219
226
226
203
179
252
205
204
256
223
218
173
214
105
233
240
118
245
276
194
209
148
205
213
216
217
191
194
232
186
220
215
142
205
183
205
205
207
151
210
171
157
191
181
187
216
224
179
178
216
185
201
180
257
204
191
221
184
220
210
159
253
214
183
151
192
167
197
110
179
182
179
183
259
206
207
155
232
241
218
191
197
196
176
240
163
177
204
261
222
197
186
206
217
192
215
220
194
173
191
214
202
257
161
194
255
171
183
240
232
169
252
204
202
229
209
247
211
173
196
212
241
197
239
193
170
226
178
216
223
247
222
255
202
207
202
218
219
253
233
243
145
201
213
223
248
207
175
239
128
240
226
246
163
186
291
177
275
189
236
148
259
170
209
174
247
183
143
215
236
203
252
141
211
181
195
170
243
231
256
209
167
233
169
162
208
146
207
262
195
197
157
198
191
158
146
215
177
182
211
157
207
244
176
173
236
231
216
241
190
132
262
180
179
109
154
230
179
182
136
247
237
179
222
238
188
182
170
249
192
173
221
169
254
214
189
204
258
187
166
224
216
264
206
208
212
178
233
118
220
156
223
205
217
181
227
178
264
244
196
198
187
230
207
194
171
246
206
199
226
173
204
198
243
146
194
184
211
276
226
250
150
169
151
229
174
187
209
208
179
163
194
199
149
195
168
183
263
215
168
197
266
202
252
231
203
207
157
196
145
211
219
160
181
197
218
200
175
171
250
159
204
231
169
184
254
255
179
159
185
267
229
197
199
147
230
238
260
154
191
229
220
173
198
157
188
200
141
226
211
256
157
233
186
230
216
183
198
221
179
218
186
134
168
182
212
213
234
176
192
244
159
216
190
200
223
150
238
192
212
206
223
173
196
114
206
181
193
253
210
221
196
187
186
242
245
165
183
220
182
202
143
195
234
200
225
223
167
189
240
224
198
170
178
189
197
178
224
238
229
204
219
233
222
227
279
187
176
260
163
195
221
175
202
222
193
237
214
215
242
229
227
175
155
193
239
210
254
168
187
200
171
216
204
168
214
168
129
199
232
216
203
228
226
197
174
212
94
215
196
161
173
257
282
200
247
216
223
185
169
204
199
156
233
144
202
196
244
190
196
197
172
188
188
248
233
228
211
176
238
216
190
208
198
195
210
155
237
186
194
177
171
181
162
234
220
199
178
172
146
199
152
233
173
174
233
233
198
216
160
164
146
208
136
187
197
154
184
204
167
227
200
193
167
249
138
268
196
225
164
226
221
204
267
251
240
188
184
172
198
252
227
159
189
205
147
229
219
165
217
248
167
261
164
173
149
183
249
243
257
202
141
252
239
140
231
202
175
190
248
213
168
241
149
165
208
207
250
169
188
238
191
150
176
224
187
270
217
201
203
204
248
228
164
210
189
158
254
171
209
206
235
168
223
235
238
180
165
236
206
157
193
130
191
189
156
204
170
195
169
199
253
207
210
270
213
200
195
228
200
208
118
204
188
219
226
189
171
270
184
185
156
180
190
233
212
222
198
138
181
176
178
197
158
206
179
165
201
183
208
207
201
187
181
192
190
203
170
233
157
160
220
173
179
223
257
198
236
133
229
182
173
187
210
176
207
235
191
234
270
197
179
147
225
194
212
228
236
271
172
224
173
215
260
251
258
181
233
171
207
244
211
197
226
192
246
209
269
208
164
165
157
180
199
193
184
182
194
158
187
163
194
241
210
227
243
203
204
263
133
249
228
195
148
166
221
211
195
215
275
192
211
207
206
186
170
165
233
221
224
231
205
167
165
259
227
204
228
155
231
254
240
218
220
219
153
221
195
199
261
203
158
144
157
250
236
150
239
152
160
179
194
155
196
219
198
164
167
198
148
209
161
231
182
142
177
147
211
222
206
239
178
185
228
254
242
166
228
219
241
251
201
219
185
252
222
180
218
206
218
204
197
214
232
191
185
184
271
176
151
262
204
163
219
193
186
195
216
179
229
173
200
217
108
202
200
216
232
175
178
181
231
189
231
181
226
289
232
220
210
172
180
254
218
264
183
224
247
219
153
193
203
134
232
210
172
205
157
198
213
227
169
256
179
206
165
231
239
251
214
222
143
213
212
219
265
188
217
191
209
253
245
195
193
200
201
214
228
282
229
203
181
196
158
185
148
124
248
235
163
239
172
237
253
209
249
153
260
245
158
195
223
219
232
151
206
222
195
245
191
161
190
269
182
205
192
189
247
229
224
160
187
179
155
213
169
214
207
155
239
188
218
184
229
241
218
204
236
210
113
157
139
215
237
192
176
226
223
191
144
190
192
137
168
195
220
250
198
220
269
241
201
205
190
120
211
201
244
228
253
214
234
210
227
171
159
148
219
191
154
148
272
165
227
193
175
192
163
188
232
212
222
210
175
154
162
198
182
253
207
199
221
241
185
163
185
207
223
213
166
244
225
281
216
240
211
198
193
148
186
173
203
197
200
182
229
191
202
199
158
127
217
202
216
174
200
181
282
249
224
213
205
200
125
222
199
180
160
264
212
207
170
198
163
241
193
226
146
209
203
163
232
200
164
206
198
218
169
266
194
226
259
127
189
171
223
170
222
188
243
205
176
204
218
187
247
166
242
186
138
192
226
207
216
161
224
247
202
211
152
170
178
213
194
214
140
180
178
208
196
252
165
231
174
249
283
222
243
232
193
158
229
183
231
216
242
205
197
187
143
197
189
195
218
168
217
205
209
237
184
184
201
237
147
178
182
192
239
211
180
255
229
223
209
208
276
207
243
172
188
181
200
222
166
230
122
255
200
147
235
237
232
196
138
198
232
229
222
164
214
194
207
185
169
222
201
153
237
196
205
252
190
220
234
217
232
258
219
161
226
216
239
229
165
211
191
181
217
256
194
214
272
247
172
165
232
235
160
233
164
195
219
185
162
192
204
122
191
141
188
188
192
170
240
230
250
189
189
249
222
174
178
239
247
223
190
195
196
202
231
209
170
241
197
209
213
216
196
197
164
219
160
218
240
195
157
179
142
244
165
154
217
198
158
185
242
192
143
219
226
199
239
195
191
190
161
209
181
162
176
215
179
111
228
251
175
206
215
217
228
171
223
184
210
177
172
165
246
242
195
160
210
238
167
202
221
191
228
222
183
201
122
133
245
152
211
242
212
199
202
126
191
116
186
178
252
217
215
160
212
215
242
227
220
193
235
179
195
208
202
167
193
262
138
159
208
243
254
221
214
177
143
167
180
217
174
224
180
173
230
201
215
197
169
198
238
166
206
211
175
235
209
174
206
189
218
205
229
139
191
191
225
211
128
212
198
156
220
204
182
194
209
170
126
235
222
163
230
259
251
249
126
226
135
196
169
209
174
194
211
217
187
186
228
189
209
205
234
149
207
201
137
209
228
177
187
181
242
223
219
189
194
197
201
181
200
214
169
152
213
142
202
228
238
204
183
272
250
248
213
192
207
224
225
196
218
193
183
234
246
121
193
178
195
214
196
251
196
238
176
200
190
193
274
221
193
208
251
219
205
226
270
169
219
200
185
208
166
153
157
202
178
187
281
153
171
213
249
206
194
160
230
246
230
222
185
213
164
230
198
177
226
228
206
194
157
244
252
215
166
187
203
206
167
165
244
200
204
174
149
172
193
136
194
244
184
202
165
248
193
212
213
207
152
242
226
263
199
154
199
202
168
196
236
197
169
225
196
163
243
192
197
217
197
218
210
228
194
226
228
205
219
128
195
217
171
184
240
151
187
215
190
269
282
240
189
101
147
188
224
225
160
170
196
233
222
230
236
210
223
214
158
219
130
181
198
193
189
232
184
210
179
171
226
189
215
206
197
217
246
256
226
213
187
152
226
213
130
259
171
197
264
171
171
149
200
197
211
223
215
199
211
207
204
188
228
177
192
229
218
224
163
232
246
215
219
254
204
203
197
249
202
196
167
227
208
194
187
224
213
179
223
210
257
254
94
204
261
217
245
201
212
168
268
223
181
186
282
182
206
176
196
234
249
244
220
150
228
238
130
162
162
230
185
201
196
184
249
207
244
249
147
234
262
163
205
222
220
201
172
216
174
220
259
207
191
186
223
230
231
167
163
151
226
225
218
182
231
179
176
225
178
177
205
218
199
195
187
230
186
227
208
171
227
194
232
188
233
174
238
223
247
251
227
226
223
189
172
199
200
213
260
129
236
225
175
218
196
192
214
133
194
239
183
185
242
189
181
114
212
261
152
209
197
200
176
202
151
222
219
212
208
227
225
161
227
182
206
243
243
235
202
212
173
137
189
141
195
242
264
207
138
179
172
146
153
230
211
227
261
201
197
252
215
164
194
226
231
163
217
206
189
145
202
212
194
173
163
208
210
173
200
234
169
194
238
200
199
232
238
225
164
242
163
220
230
188
210
202
218
150
213
201
176
211
181
184
194
227
230
183
215
216
240
160
267
271
188
235
236
221
162
218
247
218
179
229
231
232
262
251
195
190
144
172
213
235
207
252
229
226
188
247
179
131
177
249
171
173
196
149
158
102
187
250
239
174
173
183
199
155
172
230
188
214
180
200
217
172
182
169
188
194
197
219
181
174
207
218
179
214
154
275
132
169
264
184
212
201
235
251
157
201
215
174
173
150
258
233
258
221
262
227
209
206
180
189
172
233
190
206
208
208
198
236
156
209
240
181
137
184
170
204
233
225
223
238
209
215
240
215
190
223
179
157
146
178
232
156
266
181
238
199
194
235
202
173
243
168
181
150
149
183
222
230
194
163
194
233
175
135
171
264
177
166
207
237
260
221
260
251
96
173
208
189
257
205
219
217
256
259
242
235
181
167
241
140
161
185
244
195
174
191
225
200
192
240
170
201
222
203
167
235
199
244
262
181
245
175
233
158
233
214
257
195
193
229
143
156
164
185
234
205
217
212
155
202
236
211
227
178
200
227
112
184
185
206
213
207
271
218
160
251
167
258
198
218
189
205
144
185
211
229
154
186
194
242
204
236
181
223
197
154
194
207
288
238
210
222
174
119
193
201
198
196
230
228
198
221
208
160
171
251
210
160
193
150
177
283
160
234
268
163
205
199
216
77
214
189
219
210
179
191
203
165
261
224
209
183
194
247
167
179
214
190
189
205
166
223
196
154
154
243
254
204
217
217
273
210
247
186
124
151
262
160
239
220
205
201
230
166
221
249
206
167
198
176
209
211
218
204
211
210
211
209
204
106
159
227
217
198
287
177
268
221
230
180
177
222
231
162
213
209
194
205
156
242
199
193
214
177
212
218
201
200
177
282
183
208
228
230
232
213
212
220
161
240
248
234
206
232
251
183
227
210
202
251
212
175
191
131
169
259
185
228
213
133
244
210
231
267
215
240
181
208
156
155
240
219
192
248
127
183
216
144
212
189
188
199
181
164
177
209
240
168
163
155
228
257
218
218
209
212
205
270
242
197
224
211
169
196
151
211
213
147
202
218
194
200
176
209
210
219
230
189
224
125
213
216
233
197
154
202
190
195
181
216
161
179
290
177
172
177
207
161
242
144
278
195
223
201
234
214
161
193
214
147
243
269
220
238
151
143
153
183
197
168
128
239
179
229
192
229
238
180
114
208
170
190
224
152
171
179
207
264
218
217
176
168
213
179
198
227
174
178
218
166
183
168
244
262
213
169
189
182
232
160
186
167
239
123
199
221
181
171
230
192
224
171
177
245
214
176
244
165
204
178
220
160
209
233
218
199
212
176
243
171
219
163
179
245
196
192
157
244
182
190
187
182
218
203
199
199
235
184
212
186
185
187
237
182
146
226
167
162
225
156
229
232
198
190
210
162
193
198
219
235
192
201
233
229
220
223
240
215
236
185
239
104
268
190
249
200
230
201
124
224
226
163
210
160
186
209
166
176
212
242
221
234
158
205
206
210
219
253
205
242
226
211
190
207
156
222
223
200
198
231
260
203
227
241
176
162
194
194
203
190
207
155
156
189
174
220
181
168
206
178
223
176
201
228
204
267
211
149
218
193
161
181
215
160
254
281
192
162
143
169
189
137
199
236
207
234
206
135
194
216
193
192
210
207
181
228
234
168
177
202
233
215
184
180
233
172
179
244
186
215
150
226
145
249
181
170
153
229
144
161
230
252
246
214
236
219
274
164
209
142
199
166
186
143
227
176
210
182
308
250
278
208
189
183
136
208
229
259
207
177
229
266
215
216
213
210
185
227
150
242
199
231
212
227
245
214
183
203
182
153
240
220
222
202
168
186
155
256
187
221
190
189
203
242
250
169
236
192
210
144
197
239
178
154
164
184
232
226
198
245
177
220
211
203
224
209
245
250
174
176
232
227
275
126
127
234
246
141
201
246
188
232
199
138
143
270
281
241
238
177
167
135
211
194
175
200
177
186
224
197
208
162
205
195
226
191
200
150
291
102
242
193
186
137
255
223
257
182
174
169
161
188
241
191
144
180
178
184
236
221
219
274
212
180
202
269
232
228
207
269
186
212
198
216
149
268
169
230
194
147
173
159
270
224
252
208
214
184
184
190
190
173
201
162
212
229
207
129
183
244
180
214
202
228
165
261
251
246
207
166
217
141
246
215
197
200
151
225
165
170
219
248
224
271
235
212
199
173
276
198
181
227
219
193
225
178
250
200
215
212
243
192
198
197
224
178
209
232
212
242
191
182
198
214
225
149
186
229
200
199
225
166
231
203
184
169
177
176
211
146
208
227
233
252
208
194
223
165
218
209
187
220
226
179
182
183
214
174
229
222
206
210
201
195
215
200
176
201
199
188
190
257
230
171
126
183
189
208
178
224
156
262
148
197
213
184
195
186
208
224
249
233
213
183
190
190
225
154
222
197
217
107
191
193
238
256
198
164
219
214
198
200
156
114
178
245
241
235
196
234
251
262
263
182
222
184
167
234
224
190
201
242
168
202
226
152
193
223
215
212
226
218
247
252
148
204
210
107
225
181
228
184
171
157
214
160
175
200
246
206
206
238
158
212
199
207
202
251
172
178
210
135
182
189
182
182
170
215
178
204
192
169
218
175
188
206
201
200
210
132
257
211
210
178
219
248
169
219
189
204
193
196
224
130
251
212
162
279
168
251
231
233
275
169
196
194
266
161
180
174
230
237
224
172
227
169
252
177
220
240
200
227
199
164
156
208
252
179
174
263
187
202
195
184
229
182
130
234
142
200
217
230
209
168
192
265
204
226
220
195
235
205
218
192
163
194
239
188
244
161
208
277
233
220
219
172
172
231
199
174
173
178
137
167
227
204
184
169
229
224
196
260
141
179
187
186
218
169
241
160
262
183
220
191
170
225
235
179
167
147
216
177
211
179
149
258
201
202
154
221
202
216
227
212
183
192
175
171
196
166
226
226
196
164
148
178
224
189
265
258
152
195
256
233
265
185
260
238
199
144
198
238
235
176
174
175
235
236
248
184
197
180
230
162
180
219
254
188
214
202
134
207
241
204
218
221
214
166
193
209
139
202
217
227
235
219
233
165
188
144
198
210
184
232
212
104
248
210
206
202
208
222
235
201
247
190
196
230
192
231
141
210
211
264
220
171
223
237
187
246
207
234
218
189
180
205
174
227
160
221
176
176
258
199
192
221
199
215
166
204
254
205
199
254
245
139
163
221
189
204
218
154
144
166
223
144
221
205
206
196
215
215
260
236
245
209
177
141
232
195
224
237
212
247
206
233
233
172
118
176
239
181
180
233
222
238
212
234
200
239
173
177
192
270
234
136
255
244
238
202
181
210
169
233
200
156
222
188
153
155
202
187
222
237
229
147
155
192
199
199
203
234
184
310
175
254
199
177
228
201
157
190
195
247
215
244
229
200
212
204
219
201
208
187
183
211
191
188
129
134
162
192
222
183
168
216
199
175
173
144
219
243
231
152
230
102
205
187
225
187
223
204
151
162
248
241
218
240
138
178
144
165
166
180
229
225
197
200
227
116
163
173
209
203
201
196
249
181
190
217
182
209
252
218
231
195
221
269
215
215
189
187
196
160
177
199
167
145
199
250
199
188
185
143
225
232
236
211
230
239
193
197
159
191
164
176
178
195
227
238
195
262
191
243
213
249
255
231
191
226
230
157
210
250
224
181
215
234
226
176
221
205
190
214
249
175
218
184
246
217
266
181
229
223
215
267
180
217
222
187
131
195
217
225
196
182
226
180
137
228
257
244
157
121
172
212
224
172
200
235
228
180
236
184
199
209
225
149
175
179
235
179
142
170
248
189
184
203
189
227
195
254
229
203
109
149
134
175
173
217
174
185
214
206
206
204
220
228
190
169
204
232
182
185
153
216
207
178
201
243
214
206
218
172
188
186
167
162
268
180
241
218
232
188
246
183
257
237
175
169
165
166
197
242
206
153
252
216
160
203
215
245
210
161
186
250
192
249
197
199
179
119
206
235
179
188
256
265
206
255
237
222
238
212
160
145
251
220
233
270
191
164
228
206
174
207
188
195
203
166
247
190
189
150
228
279
177
225
158
161
193
206
193
205
179
187
230
179
159
206
144
198
243
185
204
215
255
228
195
203
195
217
209
165
217
209
194
189
246
206
194
186
243
179
152
214
181
173
216
178
144
159
224
224
141
191
206
235
191
184
276
203
180
213
99
220
214
269
257
123
186
211
203
194
183
197
158
196
202
186
195
209
169
171
211
205
230
105
206
211
164
146
165
153
211
195
241
156
165
133
199
242
210
214
181
259
188
176
248
257
195
189
196
233
223
177
254
174
216
207
234
182
203
177
235
207
207
203
207
216
206
178
231
249
180
188
148
163
215
261
186
174
222
247
177
94
249
257
124
224
216
246
127
211
194
223
139
229
218
166
180
180
169
203
213
162
236
133
249
252
235
227
133
177
202
246
171
242
200
225
123
178
240
174
197
179
225
201
172
216
218
221
233
192
150
247
247
215
133
186
208
205
122
229
162
236
181
171
222
188
196
185
241
217
191
154
278
197
158
194
223
233
245
194
191
244
229
132
201
228
176
241
218
243
208
186
168
186
167
223
203
223
203
205
239
173
197
176
220
220
217
207
209
239
187
192
185
264
216
196
208
157
216
183
244
217
197
160
151
209
160
228
239
200
221
208
204
154
182
188
225
198
194
220
197
193
205
191
177
131
151
203
244
156
225
226
252
213
259
180
222
178
245
157
268
188
210
159
254
201
225
238
152
191
204
155
162
192
161
280
185
192
191
200
229
210
206
191
228
131
212
224
233
170
151
264
207
184
223
157
184
157
207
208
234
143
202
176
259
177
219
264
175
192
267
265
198
177
219
193
205
213
178
186
200
219
212
208
108
141
217
196
228
225
216
214
158
241
171
184
224
249
221
196
235
176
189
268
200
157
140
131
185
209
185
161
144
238
269
242
196
182
172
167
219
188
185
227
211
135
165
195
216
193
254
235
179
217
241
259
171
234
137
147
221
134
196
218
169
163
234
190
233
116
213
237
232
177
214
185
181
230
167
255
194
173
168
232
189
211
190
162
155
164
226
224
211
173
184
207
158
213
213
178
184
143
229
210
139
195
227
149
235
196
202
236
189
195
222
189
180
201
219
188
206
189
147
251
208
226
237
147
195
246
180
210
122
244
157
250
187
209
220
245
200
153
163
136
212
146
173
160
182
148
185
223
210
177
185
178
231
231
281
175
199
204
209
191
233
186
143
163
187
211
200
227
224
198
238
183
201
123
183
198
225
144
164
168
280
156
216
245
177
227
214
199
216
234
253
202
201
150
192
169
151
207
159
289
230
196
140
211
212
235
219
253
228
199
200
171
203
176
161
285
189
180
201
192
247
185
247
165
186
218
211
176
207
234
155
216
192
206
218
251
166
184
217
251
233
120
232
227
145
225
238
185
264
156
189
256
241
212
228
192
192
206
203
226
160
159
189
200
290
173
209
141
214
231
174
266
217
198
234
183
243
189
172
225
170
202
236
162
257
176
224
217
137
164
199
205
227
207
210
224
200
250
201
253
148
196
150
156
231
216
188
222
179
177
226
199
237
151
192
267
168
227
204
154
168
180
186
228
179
205
176
198
185
139
206
212
215
215
161
253
219
147
180
171
228
193
131
219
194
212
168
200
158
259
243
174
201
249
159
160
177
245
148
229
199
204
183
208
156
171
204
164
178
182
192
250
193
282
219
214
132
147
174
235
233
150
246
235
255
239
200
226
247
231
208
188
218
240
194
146
192
222
213
184
153
188
225
176
242
235
187
229
179
174
215
222
251
161
216
149
142
198
190
126
167
229
272
170
225
235
214
168
229
187
149
183
242
202
180
200
204
176
220
162
210
257
183
177
264
212
215
226
240
208
181
207
201
229
198
216
174
160
238
205
144
202
196
237
202
222
252
141
220
170
212
216
206
187
139
160
212
236
228
193
168
227
198
194
186
175
198
133
208
210
214
178
208
247
210
173
200
206
214
224
164
251
218
141
163
161
251
154
235
289
141
225
216
215
198
167
219
220
206
188
189
225
159
224
231
212
176
187
182
250
184
197
209
197
192
192
200
199
203
213
207
200
188
247
182
249
193
205
200
237
154
191
196
165
239
174
181
188
195
159
132
201
176
206
211
221
183
265
170
193
191
172
209
206
257
216
216
206
224
196
212
234
187
200
267
152
163
177
193
172
192
224
141
219
205
185
232
222
256
160
251
250
215
230
220
148
199
230
219
155
227
226
157
179
181
219
235
198
166
212
223
216
142
235
163
236
158
168
213
224
297
190
107
227
221
165
266
182
233
224
210
221
204
216
259
222
183
214
171
168
199
191
202
223
226
178
185
212
181
200
214
226
238
230
229
192
226
152
190
189
244
242
220
211
231
227
205
211
207
218
205
229
232
137
150
167
224
185
169
264
217
101
163
180
222
200
221
155
179
185
235
191
144
219
223
183
201
209
163
160
210
199
189
214
218
229
132
197
192
229
199
126
226
172
197
172
224
210
208
209
256
160
254
167
163
138
226
149
156
201
161
180
110
160
240
263
144
205
139
155
181
217
233
224
238
231
177
214
178
236
239
238
169
223
123
266
269
224
226
203
170
190
258
167
145
223
193
200
159
190
204
197
153
141
163
220
195
284
207
187
163
259
246
155
147
220
183
220
230
226
241
248
206
214
208
179
223
188
157
197
140
205
237
148
214
209
196
230
190
197
198
213
218
145
211
175
216
190
253
147
210
186
260
251
220
214
199
133
247
190
189
204
206
212
217
192
250
227
187
226
214
232
187
250
151
213
176
168
163
242
141
159
200
197
241
216
185
248
194
182
232
159
135
178
180
210
189
222
209
215
240
223
255
203
228
188
187
178
190
146
216
157
200
180
183
139
219
268
147
212
146
218
172
186
259
187
257
186
210
234
232
226
191
225
215
160
163
165
192
204
182
226
199
222
152
165
232
168
185
267
227
189
221
143
195
204
184
183
155
183
210
191
220
194
223
188
268
169
154
185
197
197
253
195
173
255
212
230
195
206
200
199
198
185
175
179
206
122
252
176
205
190
191
193
200
208
175
249
166
182
180
216
174
168
247
135
231
190
208
158
263
170
206
161
176
206
185
179
167
173
137
214
213
233
237
215
171
201
196
192
206
213
224
177
165
208
255
217
151
209
192
164
230
199
165
194
134
163
198
162
155
202
153
213
192
231
203
190
148
168
173
172
179
160
284
118
197
218
263
195
180
201
130
203
177
159
213
185
222
154
201
207
268
177
133
244
155
183
185
192
157
221
228
241
201
240
202
215
171
201
166
223
159
222
160
212
180
225
214
199
194
150
241
197
191
135
141
250
238
243
174
213
250
279
218
198
232
169
152
259
228
202
208
219
236
244
148
221
199
304
240
220
169
197
259
161
192
149
215
219
136
194
221
151
138
182
166
220
176
213
229
205
218
236
220
244
160
225
120
233
179
213
227
220
242
240
234
173
221
209
249
210
189
205
156
181
198
169
155
218
244
193
197
121
206
142
194
221
231
232
192
201
259
154
210
214
189
205
181
181
174
213
175
204
220
140
226
221
181
219
204
207
208
215
231
224
188
186
230
159
218
152
212
204
204
208
234
223
257
218
257
204
244
149
190
233
166
199
171
208
270
181
173
185
225
189
145
259
203
152
207
236
213
227
205
162
175
196
191
195
218
204
233
165
209
127
167
209
220
169
179
215
238
233
193
232
234
157
201
169
170
157
264
204
179
234
223
218
225
230
180
228
225
96
241
158
226
251
128
214
144
195
169
192
197
192
166
225
210
190
198
214
223
166
157
201
222
182
274
163
157
212
260
205
144
171
254
188
194
184
183
212
238
177
210
152
179
209
242
213
252
137
209
224
241
232
178
195
145
188
143
192
201
162
204
191
207
223
217
221
122
214
119
306
260
150
209
175
147
205
114
219
173
200
176
204
191
156
170
210
220
222
160
200
255
167
169
220
217
255
209
169
155
203
273
227
137
262
218
224
184
225
186
205
227
185
183
189
225
212
195
160
243
175
193
223
201
200
178
204
234
138
232
198
144
200
193
213
200
171
152
122
241
233
274
189
224
227
184
238
210
223
201
171
228
217
175
240
182
235
183
207
228
233
207
192
175
199
222
234
149
254
192
210
135
222
209
207
232
199
192
213
191
199
166
166
191
229
225
154
223
259
175
137
231
225
210
143
187
187
190
192
207
196
199
166
191
208
229
231
200
141
131
261
175
157
207
262
248
191
240
225
196
194
186
212
214
170
217
207
206
198
193
230
234
216
244
231
172
135
212
248
216
209
172
160
247
211
219
249
143
209
172
143
195
103
164
163
168
183
170
196
141
160
114
228
225
245
158
206
228
185
191
195
154
155
251
182
181
157
207
195
195
250
237
229
199
168
245
269
176
255
241
239
170
195
153
228
232
256
204
228
210
194
239
175
198
234
179
210
234
208
190
150
194
153
152
260
128
186
173
221
237
192
157
190
198
208
193
221
214
232
227
226
116
173
193
199
164
207
220
171
213
236
212
192
143
199
216
189
138
225
219
239
146
213
216
204
160
259
202
236
199
139
215
161
146
144
248
272
158
161
242
164
214
184
167
210
227
200
199
195
202
252
166
203
133
270
185
197
211
254
220
211
229
227
238
213
155
163
215
221
173
253
219
145
252
150
163
230
165
192
237
228
245
263
196
220
207
207
211
218
174
212
184
142
194
177
260
178
243
196
216
229
236
164
190
215
183
164
203
198
169
208
188
256
269
179
194
193
229
158
210
184
242
173
210
235
213
155
150
199
235
200
238
211
188
174
224
195
223
265
232
244
196
184
209
153
164
218
226
177
210
226
165
188
166
179
212
179
154
204
194
166
122
247
100
131
184
143
216
193
242
218
206
232
186
129
226
218
266
266
194
208
225
215
235
236
209
206
196
184
251
190
160
144
212
216
224
223
250
112
187
218
155
195
242
139
176
259
153
187
206
176
224
236
241
159
214
222
202
255
256
179
215
232
242
182
198
172
184
227
229
213
238
133
129
242
190
215
203
201
158
250
228
187
120
231
217
204
151
190
222
218
199
256
251
207
219
195
186
202
239
239
184
222
215
174
230
165
203
190
250
192
204
196
243
165
238
140
213
144
127
236
233
166
283
212
252
215
151
236
201
145
248
180
135
223
187
232
146
229
194
183
220
208
226
307
202
203
165
221
176
204
151
191
252
206
274
190
225
227
153
178
176
200
216
253
228
257
190
247
145
211
215
166
223
197
214
227
185
205
211
170
174
185
202
125
196
179
156
216
199
220
182
253
287
209
238
186
76
216
165
199
238
185
167
231
263
183
218
243
208
178
215
176
203
202
269
229
204
158
158
173
204
203
135
217
257
162
218
213
169
219
253
246
225
219
156
180
163
236
248
239
216
202
224
212
233
242
173
229
186
247
170
200
205
188
224
204
170
249
241
209
219
229
144
213
230
218
221
238
159
178
167
127
230
177
185
127
182
185
191
199
129
238
218
174
168
163
212
143
186
268
232
171
197
230
204
107
197
197
180
220
211
223
231
199
183
248
132
206
170
195
217
165
235
231
199
228
232
203
255
191
203
218
205
184
212
207
250
162
222
192
153
207
145
165
152
244
247
164
176
253
204
185
205
216
174
230
254
271
172
225
169
226
195
206
123
256
210
228
197
243
207
230
199
228
206
181
229
188
232
237
199
227
239
187
180
251
255
251
201
198
206
235
239
185
218
195
211
152
176
274
198
229
152
178
234
217
179
242
190
186
119
123
257
166
222
220
239
162
199
175
186
242
261
185
178
177
154
205
121
227
186
165
200
246
222
240
262
231
130
223
202
244
242
213
174
158
258
176
199
184
201
151
226
193
142
186
166
170
190
183
193
202
214
184
231
213
238
195
175
203
235
175
154
220
217
204
271
253
172
177
177
252
181
236
256
185
199
223
173
183
196
172
215
135
185
248
164
210
173
225
273
228
151
228
243
267
255
167
157
184
194
197
172
200
177
227
241
178
156
149
201
203
242
170
166
228
210
176
158
206
229
230
198
232
203
239
240
168
223
200
205
209
265
241
264
278
244
218
190
201
248
210
210
213
236
180
155
228
205
230
169
203
129
170
189
229
166
207
194
147
145
222
194
259
197
221
183
222
185
218
221
268
206
186
217
167
175
167
218
175
227
179
121
186
164
161
231
211
190
249
167
219
209
205
225
165
167
217
194
136
197
195
132
168
299
275
197
219
212
183
252
191
188
198
208
158
192
178
190
237
135
213
217
167
187
180
233
185
210
116
166
216
195
189
194
188
227
212
232
231
196
200
207
178
180
250
196
242
216
183
217
175
189
214
196
186
206
237
163
204
169
237
220
159
207
225
137
234
158
174
248
156
237
198
184
228
216
195
226
203
218
150
217
148
174
205
213
220
212
268
207
238
210
173
183
213
159
218
189
157
138
216
214
195
207
167
188
229
189
184
146
225
171
206
244
181
206
218
247
167
168
205
230
218
178
226
215
220
188
206
211
213
223
216
262
181
169
270
220
231
221
175
184
181
218
187
182
148
196
195
152
151
232
144
193
231
203
193
184
269
258
227
150
230
219
176
215
146
125
246
208
167
224
172
196
271
277
144
213
224
244
215
130
190
196
181
242
186
277
206
170
164
220
155
173
135
189
162
200
146
152
225
211
198
247
196
157
197
110
120
243
210
224
174
234
207
201
168
203
178
179
171
224
232
187
192
244
197
201
221
191
226
202
240
256
194
186
226
180
226
161
202
193
131
163
142
235
168
245
123
222
259
222
181
180
242
217
248
200
184
227
138
136
203
147
176
248
198
195
256
243
238
239
195
229
139
235
190
191
159
196
186
251
162
171
250
215
222
176
236
169
242
203
158
219
134
211
195
225
187
225
231
197
174
127
237
198
230
250
164
195
209
200
162
134
186
177
157
132
206
219
262
185
200
232
229
236
234
198
248
194
277
224
241
176
162
180
210
222
197
181
198
206
207
225
218
251
202
199
258
195
235
207
219
179
223
262
227
269
183
196
217
248
233
257
181
166
180
183
109
211
184
166
193
200
209
243
181
188
228
236
160
219
241
185
217
171
214
180
231
196
172
260
252
174
188
249
254
177
159
232
245
269
202
217
151
238
217
170
140
132
227
187
208
167
181
213
174
212
169
176
225
168
157
212
165
199
224
209
245
178
165
195
166
212
253
186
145
154
209
178
206
208
137
153
222
222
204
204
254
172
212
207
178
196
210
201
167
237
167
182
191
216
212
211
221
195
158
180
184
189
169
195
166
196
158
194
202
180
235
211
183
217
189
247
234
205
228
122
227
183
208
209
172
190
200
157
240
124
170
207
186
196
178
217
151
183
262
234
199
151
113
228
160
192
138
249
188
183
231
176
172
224
162
148
201
209
133
199
241
199
220
119
246
182
147
243
189
234
210
154
181
147
215
192
193
194
196
254
195
233
187
274
180
165
183
158
213
208
246
181
258
147
139
193
213
234
187
208
217
231
164
214
156
220
201
229
230
249
220
159
181
148
144
166
234
170
119
147
169
235
235
253
265
226
182
222
172
229
227
215
188
165
211
206
191
210
195
152
164
192
223
171
158
203
181
210
206
188
181
273
196
180
199
187
205
211
148
136
147
226
218
213
241
188
226
210
182
219
207
239
293
262
177
168
216
201
246
177
159
196
189
237
173
195
244
161
235
133
167
216
250
200
197
176
167
209
175
159
275
218
229
176
252
208
187
259
222
150
202
230
148
209
215
191
206
204
235
157
212
217
195
220
235
226
164
110
240
218
211
198
209
206
200
227
193
232
198
229
202
253
228
210
218
210
130
158
216
188
257
170
218
142
134
198
220
201
219
199
191
241
235
171
114
187
136
202
170
241
172
219
152
162
244
226
171
206
181
132
216
191
206
173
247
194
190
200
198
149
225
210
181
198
247
151
162
146
208
194
187
172
196
217
206
202
255
223
174
223
217
174
150
190
159
236
215
211
232
179
212
214
219
155
219
199
178
200
124
260
251
243
244
254
186
213
194
194
210
152
162
181
235
185
205
165
192
238
151
237
252
169
157
217
187
229
207
184
203
125
208
199
160
221
208
193
227
183
148
210
220
195
153
214
157
185
153
161
219
135
193
201
198
150
206
161
173
172
193
287
174
249
187
217
186
202
144
258
244
224
214
215
145
222
157
241
200
204
258
237
207
125
220
208
207
216
160
196
177
181
180
188
263
201
193
178
203
169
171
195
219
167
220
200
170
194
213
187
215
255
162
208
201
117
209
214
205
169
155
187
101
239
197
231
173
158
269
182
229
204
235
256
186
212
140
218
165
214
131
220
179
209
211
213
238
181
232
275
210
205
123
216
194
127
219
175
227
194
200
211
195
251
198
185
182
229
234
182
187
184
204
188
180
173
191
217
174
197
214
262
169
192
158
240
190
259
223
199
226
175
213
233
205
198
212
202
202
238
172
237
176
154
179
229
261
227
242
197
133
164
207
186
230
232
223
181
216
166
206
220
144
205
148
184
219
203
219
220
215
243
170
228
200
216
231
146
224
246
155
174
171
258
212
237
222
230
215
130
191
232
203
157
175
158
261
196
191
187
177
217
185
197
206
153
167
146
183
245
202
141
228
194
238
155
262
216
212
231
210
202
238
161
209
217
157
237
204
148
221
170
231
245
227
187
215
200
180
241
270
108
88
242
176
195
237
217
165
150
166
238
179
187
132
232
194
161
199
167
235
205
275
264
241
232
216
187
238
244
194
207
230
193
235
176
190
211
177
194
178
196
138
217
232
145
196
219
217
204
221
182
186
265
190
195
181
242
233
269
221
239
157
185
255
196
298
234
205
176
187
177
201
187
177
250
159
210
194
225
177
216
224
201
228
142
234
180
209
188
202
156
135
198
216
242
195
217
218
266
236
228
184
230
168
203
191
187
170
188
201
211
231
218
132
230
143
200
178
219
202
200
204
154
208
224
181
155
176
233
123
194
204
231
160
171
222
236
214
188
180
164
197
229
264
189
170
241
193
166
259
205
239
183
138
242
247
183
166
154
240
238
174
219
210
168
201
235
203
213
239
226
188
242
210
214
227
190
207
249
177
196
207
237
243
247
226
221
183
272
189
161
189
276
221
180
219
235
202
194
202
209
281
167
148
228
169
168
188
136
208
252
214
185
186
239
213
154
189
202
171
164
219
209
164
120
208
209
237
205
143
248
158
201
211
226
203
188
153
189
149
181
273
238
240
208
190
199
270
227
155
222
222
266
249
230
202
226
220
232
164
204
213
218
150
258
196
195
228
191
215
216
184
197
241
213
198
174
184
236
187
190
161
223
157
117
179
180
177
121
161
224
239
216
243
230
247
183
178
166
264
212
206
194
209
131
146
195
242
215
194
194
186
232
182
140
234
224
171
246
88
247
225
203
184
222
230
156
192
180
246
175
163
200
175
205
223
214
179
166
207
195
180
245
261
177
200
219
236
218
173
161
210
178
174
229
152
236
262
167
184
254
210
140
198
192
290
173
168
172
239
199
209
266
174
169
162
140
234
214
167
179
215
225
186
266
215
230
237
213
172
222
219
225
171
177
151
202
122
134
209
198
89
275
197
229
184
149
196
211
202
109
127
177
229
229
220
210
136
180
222
154
125
152
180
150
180
186
254
274
211
213
236
176
213
208
173
146
149
152
194
191
196
178
235
219
255
204
216
169
156
212
213
177
148
190
226
142
123
180
196
227
144
251
219
162
187
212
224
220
206
204
170
121
167
164
138
172
162
224
183
203
259
146
178
155
246
217
189
207
221
155
217
171
182
212
186
217
222
209
235
157
242
187
230
228
213
175
217
176
209
255
249
189
264
189
185
243
231
235
197
149
189
211
233
207
198
213
209
180
223
234
181
231
208
194
166
190
216
209
182
184
250
219
194
212
158
267
170
208
197
221
179
167
189
168
256
195
163
185
174
240
187
137
198
176
255
218
187
187
173
295
205
200
239
242
176
190
197
228
214
216
240
189
195
267
229
219
161
285
161
191
127
212
163
181
215
220
237
226
186
227
215
139
194
193
147
201
162
207
175
231
248
196
161
202
230
217
197
246
207
165
191
174
184
269
170
195
194
216
152
245
139
201
186
192
177
221
189
126
199
209
226
186
217
200
170
142
176
216
222
147
172
209
163
186
219
199
148
287
231
233
136
198
151
188
225
204
167
187
268
222
144
120
243
222
169
200
145
218
226
249
157
181
201
151
176
198
160
158
248
258
234
184
243
170
206
229
185
232
220
223
152
146
201
236
204
197
297
170
167
197
180
201
174
226
261
232
225
217
206
259
225
173
231
228
197
244
152
222
195
236
152
196
212
275
154
211
229
184
177
214
171
213
173
159
173
238
242
139
213
205
249
190
252
240
207
219
259
162
165
181
127
202
199
145
140
227
183
229
212
245
162
264
255
195
205
193
169
255
228
205
162
150
246
111
206
189
202
153
200
219
233
205
149
168
210
145
240
182
204
175
184
145
261
205
237
268
157
174
178
170
189
268
209
189
221
215
232
261
199
160
203
149
192
222
206
217
163
201
134
207
168
223
198
138
195
144
255
237
193
194
199
198
224
179
247
164
173
207
210
165
168
127
151
195
212
169
243
233
184
250
204
130
199
241
174
198
228
198
199
182
141
217
186
202
255
231
205
209
210
226
151
179
202
261
207
245
250
139
192
233
191
256
223
190
245
215
203
168
196
208
164
173
193
255
221
215
235
189
219
127
281
152
229
240
215
233
194
246
184
203
163
176
200
276
183
167
234
178
220
203
249
227
215
229
228
216
182
204
193
226
197
220
231
215
244
214
238
218
209
237
179
150
196
221
209
199
246
195
124
179
194
149
179
208
220
222
191
156
214
215
253
258
238
214
219
223
205
198
209
217
230
247
189
211
189
214
219
236
188
174
168
148
167
148
208
217
224
170
176
169
295
199
153
193
169
254
180
211
202
222
219
260
230
212
261
233
218
200
106
167
218
246
232
229
200
173
189
232
174
161
199
252
243
189
171
177
174
166
241
190
179
171
181
212
193
180
262
197
292
245
196
171
193
143
184
163
249
216
185
217
198
246
213
232
191
186
159
183
194
251
223
211
232
186
228
241
115
211
220
187
229
181
226
163
207
227
236
201
182
221
177
235
208
154
236
169
222
166
245
218
202
209
224
184
182
249
212
226
175
245
206
148
201
181
174
146
236
219
223
205
234
177
177
195
251
225
191
225
197
250
162
200
176
210
169
200
191
195
259
266
220
239
162
214
236
194
157
159
173
228
240
225
167
171
127
183
169
240
182
167
229
213
194
163
167
176
176
206
164
162
168
156
210
188
226
212
123
184
161
150
241
165
246
163
241
238
158
271
214
202
237
220
155
165
169
189
133
186
206
216
114
232
166
203
203
230
174
184
242
202
151
205
102
239
223
213
187
193
215
225
222
235
193
196
180
178
193
216
189
167
159
203
256
108
195
222
198
209
230
190
156
233
215
158
234
221
218
193
226
236
206
203
197
153
213
186
128
197
191
196
168
201
188
146
229
194
230
202
239
193
168
174
151
203
137
161
149
206
189
172
213
202
240
218
217
187
200
161
245
190
217
196
188
153
130
206
207
155
152
178
247
236
222
183
212
166
152
237
232
193
163
231
255
215
204
216
218
175
171
163
185
188
173
213
170
224
233
185
175
174
239
165
241
153
191
247
162
222
226
238
241
223
153
209
245
219
204
149
223
174
208
148
209
197
189
181
248
234
205
195
256
185
242
165
219
181
160
237
179
193
130
159
199
202
228
213
201
219
175
215
183
168
165
190
214
196
188
230
231
182
246
243
112
193
189
229
193
197
190
220
202
193
226
183
144
165
177
226
145
174
161
204
190
209
183
198
181
230
205
216
215
202
192
173
218
200
148
165
191
140
243
151
141
139
176
236
223
201
187
153
212
209
192
189
170
271
219
152
184
211
231
303
166
256
143
208
217
237
163
156
213
233
201
212
197
192
232
144
166
259
231
163
215
109
215
211
183
262
207
239
175
245
247
219
275
213
175
186
239
230
223
254
185
217
174
195
233
192
246
206
163
206
184
203
188
210
218
183
132
224
195
191
216
175
184
207
155
231
253
221
212
197
171
230
248
213
245
216
243
229
181
215
237
179
171
146
217
147
197
215
181
186
173
238
182
207
208
220
252
249
188
174
215
213
164
224
223
224
214
237
221
211
237
217
210
186
244
232
176
138
253
188
111
248
182
231
183
208
125
203
230
244
174
166
203
206
190
265
195
213
195
226
278
222
224
222
194
206
177
135
216
125
197
179
148
191
271
235
176
222
250
194
154
227
148
164
215
138
206
221
145
199
237
213
173
212
245
185
222
175
206
171
195
175
221
149
200
204
207
155
238
250
222
189
256
238
252
243
196
196
195
235
165
239
131
178
193
164
200
231
256
119
229
155
188
178
214
265
164
178
153
226
202
184
184
212
212
227
190
220
190
158
216
242
157
244
150
236
227
207
141
178
209
210
220
244
163
184
224
145
170
174
236
171
239
195
160
191
137
123
243
203
112
216
233
192
112
268
198
241
190
215
207
250
227
215
201
164
193
176
165
212
202
156
164
203
181
158
245
176
222
196
199
154
215
208
172
172
191
186
257
178
207
161
194
254
208
217
206
195
156
232
272
222
208
242
173
145
178
176
205
218
162
232
205
258
259
142
233
205
227
250
126
184
191
177
259
187
211
236
113
259
180
169
222
235
180
238
241
243
233
183
204
198
192
184
175
238
215
177
195
154
238
167
246
226
203
243
240
167
214
200
168
165
217
206
209
196
186
244
151
184
179
191
109
218
262
178
240
182
180
167
195
155
223
231
156
191
127
216
252
235
186
246
257
211
211
167
208
155
171
200
199
252
180
217
162
237
243
171
209
216
219
132
141
218
214
173
175
264
154
178
252
163
261
195
147
227
234
183
191
241
224
245
211
178
186
164
239
211
158
163
204
199
199
238
177
196
260
251
194
144
208
177
162
216
198
264
228
168
204
247
184
216
218
251
235
197
211
195
165
196
241
215
173
118
231
182
142
234
179
169
218
191
239
238
205
179
224
186
254
211
175
190
155
235
191
245
185
197
201
197
213
186
186
212
159
183
179
159
185
191
194
185
225
168
167
203
197
210
219
200
158
218
236
220
204
183
203
227
242
200
229
234
142
266
178
195
175
185
212
200
161
221
212
238
223
185
149
194
225
239
195
194
211
204
149
237
220
201
128
188
226
176
183
197
203
219
206
197
207
251
191
142
179
220
199
196
179
204
193
270
219
161
235
222
245
243
207
168
250
207
240
151
159
308
204
135
185
127
245
113
163
203
235
245
194
208
168
167
163
207
186
186
144
225
217
240
185
205
169
157
190
191
224
160
171
260
253
174
225
181
172
120
216
149
212
177
197
190
288
253
137
204
190
198
206
157
232
186
207
207
181
200
257
138
253
226
190
199
171
226
253
223
168
261
180
207
178
169
173
210
184
154
133
180
175
194
164
191
166
198
196
151
182
190
208
190
177
175
236
155
150
208
167
144
258
211
208
209
223
176
254
156
191
194
196
178
139
248
175
262
235
197
222
228
208
208
236
179
210
263
166
128
249
279
213
170
236
163
105
125
193
159
178
250
118
201
202
273
201
217
197
191
254
197
181
234
224
221
199
181
141
247
208
169
237
175
196
182
225
188
179
121
220
171
186
180
178
154
174
156
209
246
218
233
210
175
230
240
168
253
214
173
198
214
164
146
229
183
157
193
260
190
270
165
166
254
165
160
172
195
217
228
162
193
273
196
168
222
179
233
195
168
212
204
223
182
182
238
188
165
190
217
180
232
240
166
175
241
238
210
224
236
198
210
161
226
186
167
225
217
181
252
229
189
208
205
142
221
226
208
178
202
185
182
239
157
207
150
178
201
204
174
193
139
169
227
204
154
194
191
195
195
196
232
210
215
165
222
220
122
222
205
144
190
204
211
182
147
180
166
241
229
214
242
214
222
202
122
206
218
158
182
163
174
243
158
174
178
219
220
200
179
202
197
159
211
205
208
157
221
206
176
161
161
188
201
211
157
215
221
218
255
190
177
148
240
224
196
168
211
280
200
251
235
178
170
135
232
155
216
208
271
191
226
195
147
212
209
209
136
230
183
141
242
159
243
247
116
118
167
122
214
204
199
208
192
266
153
181
155
168
140
162
264
195
187
213
285
192
167
202
242
218
169
266
186
151
196
240
168
195
236
220
185
184
190
221
241
171
131
203
165
194
195
224
155
157
176
180
185
183
144
222
181
183
168
148
235
191
189
208
194
166
198
218
164
162
199
174
216
228
149
247
204
167
210
179
183
209
205
198
152
175
205
200
178
184
180
208
216
182
214
264
164
172
175
268
230
235
201
171
179
203
188
191
177
181
241
227
230
164
224
182
212
264
190
159
210
206
195
225
217
209
162
179
236
209
243
238
191
138
147
164
232
154
225
237
205
182
166
222
214
164
165
246
182
167
206
158
193
246
197
204
264
239
166
206
173
237
243
203
208
254
169
200
202
229
229
126
209
219
211
236
213
179
222
186
240
125
174
216
157
188
181
235
224
188
158
158
262
220
240
229
202
199
261
193
191
245
196
172
177
269
162
152
216
148
204
194
173
163
245
180
183
169
222
199
202
147
203
206
233
231
178
223
156
202
198
188
220
249
249
235
194
199
162
215
224
160
249
206
195
241
164
144
266
205
199
185
203
181
181
192
178
201
176
240
172
189
145
193
236
145
245
215
214
169
251
186
211
160
189
171
188
230
173
232
168
152
182
193
188
192
237
177
239
208
211
196
187
191
198
171
177
179
188
204
199
182
195
155
175
194
193
257
194
182
145
230
237
180
258
97
158
210
195
198
177
189
199
125
145
171
134
165
218
205
269
152
236
182
198
175
208
154
155
159
238
217
193
179
176
208
244
209
273
215
175
230
216
213
186
202
222
218
200
167
146
157
215
212
220
208
238
223
210
213
239
211
186
213
176
226
273
206
156
227
193
250
192
191
209
243
187
231
235
201
229
225
224
205
216
149
213
189
164
249
184
216
256
176
232
265
217
199
180
165
180
153
147
259
180
179
209
254
164
256
162
191
228
191
146
202
240
168
216
173
250
217
161
184
216
140
162
127
250
205
199
226
179
186
259
193
234
174
234
187
236
153
195
177
152
186
217
240
223
135
217
124
195
182
188
269
262
165
226
227
195
163
185
196
211
226
221
276
187
259
230
230
201
176
203
215
180
248
178
219
157
213
253
179
232
201
210
171
183
246
228
133
208
264
270
199
168
174
259
225
160
190
198
173
251
221
129
210
241
254
177
211
231
222
239
171
183
232
182
202
230
218
266
229
185
259
218
210
250
208
208
198
228
210
159
208
209
227
184
250
180
139
184
240
171
265
170
220
177
220
162
175
184
134
217
236
220
244
254
190
164
256
208
169
205
177
142
189
156
199
247
217
208
185
273
232
183
191
147
242
174
236
204
143
194
198
201
220
221
200
198
223
182
185
206
185
199
183
230
181
234
252
100
217
189
159
158
225
228
205
209
179
271
215
247
183
162
213
151
199
159
228
213
219
215
187
268
176
199
186
259
194
146
193
254
209
243
199
147
208
212
245
188
150
167
174
198
212
206
210
175
167
229
198
194
216
181
158
219
223
101
221
220
171
166
272
190
228
177
215
260
151
174
203
182
182
240
195
219
222
189
204
213
159
190
167
184
183
221
271
160
125
224
244
192
215
186
179
181
205
249
186
190
215
216
216
251
143
176
222
196
155
170
158
173
198
213
209
149
136
210
185
213
177
211
230
222
222
221
277
155
156
221
225
198
227
123
156
196
197
260
178
210
136
184
154
268
165
192
212
186
212
222
117
183
199
200
210
195
204
179
223
165
221
160
207
162
203
167
201
276
257
157
149
178
154
213
248
257
208
209
137
193
187
135
215
171
159
205
229
174
182
207
198
185
191
215
193
219
256
169
226
181
218
198
207
259
180
174
167
153
211
154
242
162
274
168
256
228
209
218
196
137
233
196
227
183
237
227
234
186
198
182
145
181
204
237
114
273
176
164
209
192
203
261
180
188
263
167
176
214
168
144
170
200
209
212
256
179
183
207
235
223
222
237
229
164
200
211
186
145
165
118
222
176
183
177
212
204
232
208
149
235
256
221
196
188
252
168
195
246
235
169
175
181
149
117
203
210
234
198
191
233
204
172
223
158
224
221
210
255
179
230
200
179
243
235
210
259
147
146
171
216
228
197
205
253
199
202
239
162
253
173
133
200
149
162
249
172
201
236
268
182
201
236
201
181
178
209
247
228
218
183
209
234
198
193
236
258
187
246
250
210
195
250
199
212
235
135
237
248
163
250
201
224
181
159
163
188
189
189
195
232
225
176
237
217
216
167
271
183
207
170
175
151
216
230
164
153
134
229
254
227
196
229
207
245
214
180
241
221
199
180
153
205
160
225
192
259
288
166
181
162
160
241
181
142
187
178
155
248
239
250
199
217
194
215
183
207
197
181
169
260
155
157
152
238
196
225
260
231
176
186
220
214
169
169
259
262
182
207
213
187
203
153
112
206
216
241
165
190
173
178
183
241
173
234
206
245
162
197
201
202
173
250
242
224
223
178
246
203
143
248
210
251
201
207
211
144
236
213
203
221
251
231
201
128
207
249
176
219
213
208
213
223
152
272
121
145
232
128
228
180
132
156
171
221
120
212
202
204
223
223
175
189
221
163
163
160
222
243
199
177
256
193
163
110
218
258
156
174
197
215
212
188
177
264
167
171
129
158
212
229
199
165
199
230
200
182
201
216
174
223
222
178
217
170
178
256
206
218
266
177
185
205
171
230
223
215
147
199
167
141
159
223
208
229
239
201
126
221
231
151
244
198
239
160
192
178
174
231
204
239
246
264
235
217
215
183
210
223
191
151
188
258
181
260
138
211
165
158
212
172
227
147
243
272
185
154
218
270
212
165
236
104
158
224
197
148
179
173
167
232
121
203
215
213
138
188
139
208
198
229
161
169
220
211
192
183
213
230
245
213
205
192
199
213
260
177
240
199
202
185
213
169
182
243
242
169
259
213
168
157
191
167
239
171
228
154
161
137
196
200
208
251
188
245
236
217
268
207
216
215
174
185
212
156
140
239
176
159
178
219
209
154
222
225
199
240
181
189
230
204
159
275
211
251
199
146
178
182
159
261
168
182
176
204
157
232
170
249
209
276
162
238
195
155
191
195
182
268
146
209
158
133
214
159
217
196
175
177
168
243
180
230
161
162
230
221
170
156
242
193
179
239
187
208
230
194
182
225
235
179
175
145
215
245
147
191
164
169
265
199
220
151
217
200
204
196
184
242
200
210
166
266
234
142
149
159
195
256
229
210
176
238
208
152
230
257
207
193
192
127
208
247
196
222
162
185
192
165
203
202
238
242
200
205
235
178
223
241
230
209
204
205
186
161
153
253
185
185
242
239
150
163
154
210
142
125
175
178
204
203
131
158
171
233
247
196
197
177
244
227
210
219
216
152
121
159
221
216
217
197
226
194
145
183
206
245
145
112
274
209
181
232
230
228
211
240
205
224
181
238
238
214
189
214
115
228
163
171
191
193
192
202
217
201
252
183
197
196
170
210
238
184
180
222
238
200
180
233
182
157
207
245
256
249
217
192
173
232
194
206
119
229
215
220
226
200
122
208
194
182
240
190
224
212
231
233
236
207
218
205
209
207
197
191
159
169
175
204
211
211
112
207
206
200
244
208
225
193
189
175
202
191
230
192
226
182
229
255
221
242
254
216
228
171
162
221
219
209
205
211
235
149
239
156
201
168
230
224
188
168
162
242
250
217
204
173
153
223
219
187
219
196
187
196
253
248
229
221
244
186
205
183
268
221
197
185
163
235
186
224
167
153
123
193
217
235
218
278
166
212
268
241
241
172
276
218
192
189
238
188
235
192
195
205
200
189
168
217
127
160
182
246
201
201
231
176
205
171
174
217
200
211
163
190
165
123
241
166
246
227
187
195
176
176
167
226
226
212
206
141
148
194
178
220
162
275
197
158
202
175
185
180
204
209
242
145
131
208
186
255
168
219
144
196
224
180
181
157
176
215
190
213
266
143
212
209
171
218
258
143
183
238
179
255
226
228
213
152
129
147
183
196
240
192
215
199
205
183
211
164
203
243
126
257
176
142
166
210
200
140
188
123
235
163
143
226
201
180
194
203
211
163
202
228
242
168
129
183
256
223
238
264
199
177
222
255
224
161
172
158
238
221
163
234
196
240
177
223
167
245
147
180
141
229
145
239
180
252
184
210
152
222
174
177
233
153
231
213
154
232
234
162
219
221
142
234
183
161
220
206
216
233
165
134
220
190
197
191
203
204
159
195
214
247
194
205
202
191
196
226
208
168
166
165
249
231
225
193
149
217
158
200
220
178
190
199
167
194
223
213
223
130
186
229
218
219
237
258
191
188
169
186
240
186
274
186
220
228
245
135
193
230
191
157
174
202
176
163
175
212
197
219
226
205
192
190
208
205
263
245
207
170
215
143
136
130
197
188
177
255
198
184
202
141
201
216
209
175
193
226
178
150
183
138
169
217
185
211
170
151
201
153
169
223
213
161
220
168
165
169
183
206
197
198
223
191
176
234
196
186
202
245
206
195
173
247
264
166
155
186
205
217
255
195
200
234
157
157
215
218
190
202
146
183
138
171
195
188
194
169
192
275
162
151
232
190
137
238
156
228
246
215
223
169
224
185
168
198
163
184
223
149
196
194
227
179
149
166
235
216
214
209
179
249
264
186
209
207
172
206
219
203
214
166
214
163
163
201
160
148
130
208
162
252
188
196
168
226
192
254
219
199
156
136
205
200
153
217
160
198
210
187
181
157
213
190
145
181
189
144
184
222
221
200
239
222
146
185
257
185
199
188
166
185
120
212
175
140
244
172
209
250
184
203
231
199
197
213
186
235
228
170
191
223
195
227
119
219
260
227
204
227
162
233
168
228
169
156
182
204
189
202
204
187
113
188
219
201
154
211
199
260
194
173
227
214
262
170
157
225
177
166
209
234
229
216
178
250
173
175
247
203
144
203
199
226
238
225
147
243
237
148
225
220
211
179
207
210
243
195
209
206
248
177
133
214
212
210
245
189
215
193
209
239
195
171
164
194
220
179
205
249
198
162
202
258
199
176
162
246
168
159
238
162
165
198
180
234
182
236
263
133
252
299
197
206
176
180
213
146
212
165
192
182
195
254
195
266
210
247
223
186
169
247
236
238
250
177
199
185
188
199
208
186
163
194
148
224
247
230
170
217
160
241
192
186
198
207
225
185
216
164
178
160
250
198
207
251
209
259
170
193
243
159
223
221
200
238
256
272
209
219
224
217
194
212
217
167
265
212
191
239
217
178
204
231
187
226
197
172
205
159
176
198
176
242
245
144
192
173
184
182
221
204
189
224
184
177
204
170
190
225
226
194
184
233
166
158
265
167
197
218
221
137
133
251
144
203
230
249
170
166
226
167
221
150
202
223
243
252
167
222
97
211
198
227
239
195
143
234
161
153
168
205
261
192
176
209
182
203
160
215
224
237
217
153
185
197
167
127
262
171
190
222
186
275
195
235
191
180
159
236
189
213
244
181
204
233
271
183
176
168
207
215
167
170
249
187
259
213
223
228
176
194
203
127
212
209
151
194
199
200
149
213
172
154
135
209
217
207
183
175
186
172
169
208
168
166
182
192
211
207
222
181
176
205
214
234
143
183
242
162
163
211
117
121
133
225
227
132
193
171
207
197
220
208
206
166
160
185
174
173
198
149
191
234
185
231
105
256
195
220
150
173
254
178
224
231
252
250
168
180
141
188
193
169
149
222
197
192
238
206
147
175
226
190
151
222
209
207
206
218
180
230
176
249
255
200
228
256
256
235
218
133
175
203
213
208
290
208
180
149
219
186
240
141
195
201
174
168
172
255
157
213
192
233
270
234
208
204
134
225
207
179
225
236
198
214
240
242
203
194
204
236
206
144
162
241
258
132
227
99
162
213
167
221
191
154
169
190
171
250
203
167
266
277
226
237
213
237
185
217
220
205
207
189
202
248
219
200
206
146
178
207
249
229
174
230
171
202
189
182
271
195
237
237
254
268
193
201
267
221
179
149
195
212
239
177
167
228
172
260
208
158
210
165
195
161
231
184
184
172
203
209
126
223
144
207
212
201
191
171
131
105
181
209
205
201
188
218
223
173
224
210
224
194
215
202
220
290
219
206
182
211
207
179
285
160
167
182
221
241
239
181
222
229
203
249
209
141
233
205
164
183
200
210
238
218
166
194
230
246
158
139
223
230
228
144
259
202
180
166
161
231
239
207
196
160
202
249
193
215
202
164
185
176
101
209
261
188
194
215
170
152
190
202
212
153
185
133
196
194
165
202
197
210
221
229
231
214
200
161
289
166
234
158
216
200
100
210
221
198
174
107
120
233
202
261
262
248
248
210
232
156
172
198
136
232
237
177
204
159
206
185
128
97
236
193
178
169
236
196
162
115
197
221
196
153
116
208
216
102
141
196
168
166
180
201
199
185
224
236
211
196
220
219
218
247
227
211
209
188
203
262
183
175
215
222
171
242
180
150
165
191
183
166
237
230
200
181
221
171
239
237
188
210
264
164
140
204
252
195
152
224
178
254
247
179
187
246
251
180
148
229
216
202
213
105
192
166
195
166
188
166
149
245
242
177
213
159
229
219
196
161
201
196
241
225
101
151
191
136
235
163
206
144
252
165
190
252
179
174
160
157
216
239
138
245
226
199
186
240
217
167
252
169
196
249
156
226
184
267
180
167
210
173
176
208
222
172
193
284
218
208
209
272
134
238
207
186
229
154
218
207
225
215
174
184
150
154
151
183
248
245
193
154
229
265
196
215
239
226
206
195
258
207
176
251
241
192
167
228
201
168
218
243
200
209
225
171
207
185
249
181
190
165
151
243
225
183
185
202
160
195
189
227
232
198
210
213
253
199
197
214
213
194
185
232
157
159
175
206
171
229
131
191
215
209
210
181
198
197
209
237
155
227
215
164
209
186
163
216
210
216
180
226
170
192
196
234
196
152
214
174
255
240
259
178
168
211
184
196
217
183
202
252
157
150
232
205
143
244
180
181
194
200
180
209
176
223
227
282
198
219
226
246
144
234
161
197
212
180
204
213
199
203
192
210
192
197
167
189
179
214
202
219
238
168
250
206
98
248
164
186
167
155
191
211
248
229
122
167
225
193
199
170
147
206
249
149
208
233
227
171
182
216
135
199
197
150
261
207
169
231
198
197
225
206
162
197
207
177
200
225
247
202
246
143
233
154
181
218
214
279
180
138
214
187
215
234
142
224
242
191
217
247
216
216
203
139
220
188
209
179
190
180
231
219
204
218
205
218
199
198
193
228
201
185
196
212
153
228
164
189
218
233
202
184
197
260
165
134
190
189
249
207
172
219
209
226
248
175
162
182
231
219
202
226
198
122
239
190
214
240
171
229
252
175
189
179
207
248
181
200
158
205
177
170
191
243
234
239
227
204
245
159
207
140
210
188
229
256
207
170
171
210
186
253
189
225
183
213
234
205
188
186
214
231
193
204
222
189
204
225
235
199
228
239
188
195
160
177
182
234
141
146
151
216
227
149
145
176
200
224
211
210
222
177
248
248
194
209
243
160
226
220
155
208
247
214
192
278
185
211
259
219
223
187
169
178
179
221
239
137
260
255
152
232
160
196
152
221
197
212
232
226
262
179
226
242
164
196
199
207
267
176
190
204
173
167
142
211
136
228
209
230
190
173
170
180
191
124
275
152
276
166
241
196
213
216
166
196
181
184
234
268
137
202
170
215
189
182
180
154
273
210
200
229
173
226
230
235
176
174
216
247
251
196
215
208
226
179
216
179
269
243
269
216
207
217
187
179
241
123
188
169
253
205
209
252
212
181
249
199
202
231
196
191
213
242
151
173
187
235
220
257
167
224
240
206
179
178
106
212
142
147
201
220
211
164
167
180
202
217
157
192
211
179
204
252
184
243
177
170
166
151
215
205
255
219
242
182
139
234
219
171
266
221
177
229
178
191
133
232
209
176
208
243
243
277
178
169
230
180
132
160
227
173
241
186
262
143
230
192
188
239
193
209
220
186
210
159
260
183
158
246
233
172
213
187
199
187
212
184
227
174
172
180
208
185
190
169
245
214
160
160
211
228
254
220
148
220
149
196
201
188
247
146
172
243
204
192
211
173
200
223
168
248
196
203
211
254
154
119
163
174
245
177
235
173
221
220
206
181
206
228
228
142
199
175
243
175
163
203
219
261
206
201
210
259
216
242
198
240
185
165
189
197
230
225
206
229
177
154
237
231
234
164
160
135
207
227
182
182
175
155
225
264
203
164
246
243
141
189
194
232
218
235
264
244
174
209
140
167
242
226
193
192
227
185
189
170
165
249
157
217
210
199
159
200
168
219
247
206
189
133
177
255
143
189
207
165
180
174
224
197
217
154
229
158
189
228
213
202
174
174
193
159
219
211
194
134
199
163
191
193
183
233
192
183
134
211
150
252
252
148
233
193
175
238
193
183
229
250
225
188
162
175
260
228
239
181
229
201
246
164
169
180
243
183
174
207
247
199
165
171
239
200
199
191
242
210
196
192
227
185
161
218
225
230
117
164
228
180
222
176
190
121
205
187
269
186
230
182
162
238
167
143
236
167
193
250
189
206
128
198
252
158
221
256
169
247
173
193
171
196
164
178
190
87
172
237
167
220
169
161
183
202
165
198
167
227
219
201
170
225
188
197
186
167
167
229
196
209
205
203
205
213
190
212
206
227
185
233
135
207
194
213
195
213
206
181
173
188
164
176
165
176
248
198
198
151
240
233
165
216
172
186
160
215
231
206
196
181
185
235
183
242
210
217
192
227
270
232
209
176
251
208
168
218
244
250
220
182
151
236
141
163
200
186
189
221
154
214
220
188
241
193
224
215
190
182
221
197
194
177
195
209
258
201
193
167
200
230
169
202
241
170
187
224
214
240
222
198
220
154
231
215
218
182
192
165
207
235
270
230
206
216
261
196
212
190
205
235
249
224
238
218
190
157
237
240
218
267
96
228
206
192
227
176
218
219
164
171
218
203
198
205
188
195
159
189
179
188
217
181
235
206
241
132
243
218
210
192
233
210
266
237
166
195
255
258
195
134
253
242
123
196
211
270
201
212
221
217
217
216
177
190
234
140
196
215
194
251
216
140
166
200
174
237
194
253
223
285
156
135
176
237
211
173
167
187
243
154
219
158
247
241
255
143
216
180
213
200
227
231
203
177
191
183
182
135
188
182
191
175
156
152
215
259
194
165
155
233
244
189
155
127
216
202
163
200
209
172
191
231
187
161
215
224
218
214
190
211
258
229
248
188
239
242
230
191
186
181
266
238
220
259
191
170
236
247
205
270
238
101
224
221
201
172
199
177
273
250
263
171
173
223
232
140
189
196
215
229
208
225
216
225
252
181
158
221
171
193
145
222
215
192
214
211
189
238
177
207
270
117
243
188
217
178
185
170
199
250
136
196
190
244
177
160
171
217
241
214
216
225
193
213
166
186
189
253
176
229
154
195
177
224
214
236
212
204
164
240
116
194
206
214
102
224
222
175
180
171
226
214
226
219
210
214
227
197
222
219
172
144
143
242
236
210
170
192
174
217
197
168
200
243
137
164
190
221
219
190
169
195
188
192
198
183
216
192
211
211
189
201
159
225
258
205
133
178
199
227
215
179
136
177
187
207
165
237
100
191
175
240
217
207
199
256
163
225
249
248
187
181
175
171
201
264
194
199
159
204
130
232
216
183
167
197
174
238
146
244
164
133
218
217
255
138
232
164
300
227
178
196
210
170
179
212
217
209
173
184
151
201
223
213
221
216
198
208
208
202
223
225
177
233
212
175
232
201
233
207
213
172
219
192
223
167
204
172
207
169
174
205
179
201
229
165
221
199
157
135
237
148
254
180
195
209
215
123
232
180
211
189
190
216
199
173
260
129
146
256
234
191
208
231
193
196
200
151
198
227
147
274
162
233
165
194
190
194
179
216
171
209
285
198
198
205
210
190
164
213
182
141
188
181
205
219
274
197
225
255
224
198
179
228
239
229
167
238
166
196
230
248
231
193
251
218
183
237
244
113
241
210
200
175
185
172
249
226
124
230
183
239
161
221
214
180
222
197
254
181
186
273
198
222
158
185
206
241
202
166
240
202
178
252
186
193
140
162
190
236
225
154
251
138
197
201
204
204
223
254
183
216
178
155
242
237
184
182
250
217
217
209
163
217
242
193
149
197
222
167
157
177
220
222
174
175
100
199
162
171
252
195
227
225
159
126
156
287
186
160
214
227
197
243
201
128
210
202
181
229
240
241
252
183
245
180
244
231
226
181
179
172
235
166
167
212
186
229
160
193
289
213
195
240
200
171
210
183
175
209
182
159
181
248
216
205
220
224
216
202
153
226
217
268
172
218
180
191
169
208
204
164
249
160
181
207
170
210
162
198
229
181
234
187
213
194
222
192
199
194
255
146
194
190
237
237
202
205
232
254
182
207
223
118
199
177
242
276
245
255
153
206
236
225
233
154
219
202
188
209
123
191
210
220
184
163
183
202
146
225
154
208
165
200
194
204
198
178
153
208
114
196
124
205
139
195
202
196
191
220
229
175
202
169
184
188
206
204
235
250
145
172
189
206
193
244
202
165
191
161
174
264
212
195
181
158
168
231
212
184
137
209
212
246
243
247
226
208
217
173
193
246
178
203
161
215
194
208
213
172
204
209
196
215
212
237
225
219
206
227
198
182
188
163
172
166
208
220
211
203
206
206
178
213
160
138
178
236
194
214
200
223
251
166
178
260
202
195
74
170
177
190
200
153
210
223
210
197
146
201
152
153
264
196
219
198
252
151
167
170
187
236
219
181
168
162
126
231
220
182
196
188
195
196
235
184
231
207
174
144
248
116
219
232
165
212
235
195
201
182
230
250
248
172
221
215
220
167
261
226
220
211
207
209
264
237
228
215
240
182
218
218
223
161
215
238
237
193
236
239
224
245
256
175
207
214
213
246
221
158
168
203
133
206
144
167
210
242
193
170
249
202
209
161
215
180
212
148
150
189
176
187
262
242
257
202
261
183
258
228
199
204
189
211
193
195
159
238
173
193
238
215
142
225
126
256
199
208
221
184
209
187
210
182
266
225
226
162
182
199
204
170
219
211
212
168
222
221
175
188
258
217
265
222
195
176
153
145
226
225
224
133
176
222
166
169
242
206
178
219
197
200
179
242
195
224
200
181
173
143
212
224
206
164
239
121
174
202
200
204
194
244
225
161
195
182
239
155
214
210
227
173
184
241
185
192
217
262
183
222
168
215
199
189
215
203
215
136
141
166
209
225
185
182
142
159
244
155
251
213
202
239
182
162
201
185
212
206
191
209
174
243
247
163
197
146
249
161
203
168
237
224
183
224
191
237
218
263
214
241
146
248
178
264
154
229
136
223
190
206
200
218
261
178
186
203
182
202
234
200
200
162
179
202
241
231
114
237
249
202
248
156
278
147
245
152
208
231
188
192
141
191
219
254
200
176
175
146
175
182
247
233
242
199
178
186
127
211
172
193
225
176
160
181
295
158
184
161
175
194
165
160
194
234
255
188
190
164
209
183
204
191
185
193
208
120
235
204
215
160
215
219
249
216
189
189
168
226
218
148
164
261
205
178
161
230
261
245
243
183
209
221
243
223
159
149
235
183
203
217
146
154
184
271
257
279
207
176
194
183
169
199
175
191
183
180
202
166
253
161
222
196
155
191
249
250
194
201
193
187
241
173
200
149
174
139
208
135
235
246
215
165
175
186
210
240
179
153
196
220
172
242
211
169
208
151
92
147
197
172
245
222
237
185
187
178
230
149
192
219
220
162
153
202
231
217
255
109
202
205
201
224
163
213
181
197
185
207
200
206
162
187
196
214
260
267
251
178
165
131
204
223
233
214
193
226
205
172
263
234
228
219
209
223
205
155
158
178
198
149
238
226
182
219
261
185
225
213
186
213
185
160
184
247
212
213
191
218
209
199
247
130
220
178
199
261
140
258
261
199
211
215
226
224
258
132
179
195
172
215
194
203
225
204
212
188
183
193
199
219
142
200
223
208
167
174
200
258
202
231
217
161
238
251
242
271
172
219
166
263
161
185
128
128
207
205
187
251
232
221
167
186
180
145
274
235
247
185
175
231
206
265
197
222
217
188
202
224
231
199
234
206
228
188
232
185
242
263
156
171
245
217
214
193
184
200
210
208
244
180
195
191
242
164
209
148
208
205
95
227
208
218
234
198
164
183
219
166
260
246
204
251
213
143
199
215
183
121
135
182
226
229
153
181
235
165
253
249
202
153
187
209
228
175
153
120
150
169
175
162
177
202
195
160
242
175
212
187
197
197
180
237
220
191
151
111
195
235
267
192
247
213
181
206
211
219
229
184
202
254
222
200
186
199
195
150
268
223
259
201
205
201
234
241
200
249
202
118
178
224
232
225
191
167
187
151
196
211
183
258
214
204
198
236
234
203
221
180
180
212
194
183
207
160
192
128
259
199
156
137
202
185
162
190
207
206
194
202
173
237
231
241
218
188
161
220
219
242
287
185
267
152
180
217
184
219
282
254
213
176
181
205
182
145
204
220
262
250
144
203
208
187
234
138
179
226
235
224
179
211
176
235
201
269
147
267
216
192
195
175
230
177
165
211
216
203
193
162
180
146
237
185
282
184
172
184
207
217
214
244
191
116
180
158
235
210
208
251
202
206
238
158
225
166
206
155
189
238
180
203
221
200
163
136
204
177
195
249
176
198
159
172
220
194
252
219
210
189
203
222
219
197
204
180
180
229
225
227
192
200
181
193
153
236
203
253
221
231
229
196
261
187
144
227
223
248
203
144
190
160
234
201
181
166
198
247
217
166
188
187
222
223
156
211
163
214
221
239
197
215
151
159
218
201
230
199
242
212
215
190
220
214
228
208
221
153
255
141
152
221
222
151
199
199
116
200
196
187
172
210
201
250
189
174
219
272
253
240
148
171
216
194
183
197
110
180
154
194
225
190
220
168
218
165
156
182
197
179
184
151
170
222
174
218
235
254
196
223
205
220
198
248
152
196
161
230
130
171
210
164
244
199
166
235
262
191
230
143
259
204
183
154
188
221
115
254
208
227
217
235
165
193
174
239
135
176
244
193
213
214
208
206
133
209
230
242
182
224
142
205
266
225
162
178
180
150
226
210
245
205
247
163
191
217
218
200
158
170
195
256
279
234
199
196
202
222
203
156
168
195
182
134
221
219
192
152
254
191
200
154
169
176
194
236
230
139
166
217
203
172
208
238
249
170
205
272
218
159
212
199
192
197
203
229
211
209
230
197
181
154
246
222
238
219
204
186
250
250
194
183
177
116
123
167
141
193
176
245
215
235
238
206
189
219
246
117
218
204
197
228
160
195
222
189
230
173
172
195
218
201
208
196
231
155
195
213
194
196
185
184
189
206
194
233
257
160
229
244
237
193
171
196
214
235
219
220
247
85
165
238
201
176
207
184
168
182
271
238
252
190
196
212
192
205
269
200
147
199
227
186
259
165
194
176
208
252
126
238
215
191
201
144
194
210
252
199
190
225
168
244
147
181
243
184
171
201
238
216
272
191
174
169
274
231
242
180
236
172
233
151
167
215
245
199
173
188
241
133
232
153
228
220
224
194
127
238
209
168
221
216
189
231
239
215
198
173
191
222
170
209
218
228
181
193
213
175
208
260
222
193
162
157
214
191
231
195
214
162
209
200
184
250
202
110
184
260
197
170
200
134
212
208
191
179
178
176
175
198
148
236
189
172
176
195
152
202
246
277
141
206
116
205
229
252
207
172
212
157
221
204
208
201
219
235
237
209
133
192
239
262
220
240
221
133
186
155
237
224
226
176
175
213
181
148
180
164
211
253
229
231
215
138
214
231
231
214
266
187
203
219
146
172
222
233
250
209
216
178
198
173
192
200
225
179
152
167
176
187
172
157
222
173
189
168
187
193
192
144
199
260
223
197
221
231
183
227
222
168
168
145
210
171
244
210
139
184
228
199
136
166
152
240
153
219
151
247
190
228
107
174
155
204
164
201
225
216
159
269
183
194
175
172
227
187
152
213
233
195
188
227
207
197
227
247
188
173
164
154
227
209
201
201
192
231
195
246
239
196
208
238
196
161
160
194
213
165
215
193
214
204
146
226
194
202
198
191
181
169
248
222
183
230
196
264
191
203
181
219
213
250
200
147
239
248
269
214
175
231
215
238
138
218
221
204
191
215
239
179
173
145
254
200
256
252
213
190
149
222
174
199
246
124
201
142
167
200
200
164
209
178
207
203
202
213
230
140
204
204
193
132
280
286
162
200
186
223
202
274
231
239
172
185
206
258
213
204
208
176
230
248
220
176
184
175
181
251
202
234
173
203
199
226
204
180
241
204
236
200
187
179
209
160
213
239
229
183
148
212
191
152
242
178
197
211
206
219
199
229
204
181
129
215
173
218
196
199
225
176
262
217
180
165
267
212
201
196
226
165
240
184
227
214
187
166
207
165
173
176
228
186
211
138
168
175
178
163
159
167
213
141
195
142
211
163
196
242
131
218
170
181
240
170
195
218
223
232
258
212
195
193
222
176
173
137
229
190
168
202
156
161
240
231
166
184
195
181
194
197
195
178
191
204
214
193
265
214
183
240
212
187
219
170
204
248
222
216
153
188
181
164
180
171
239
258
199
206
173
262
217
244
244
218
222
246
225
206
258
148
165
259
213
193
193
219
233
190
201
247
166
191
109
220
197
213
200
232
146
227
186
248
212
243
198
202
191
252
213
201
247
223
211
220
157
229
218
179
223
231
255
176
150
246
168
139
200
232
271
282
166
200
239
136
194
224
219
182
179
171
175
151
226
236
265
225
96
193
171
150
215
206
176
231
198
209
193
200
124
222
227
236
211
187
246
216
188
250
235
220
112
182
172
211
231
173
137
205
205
168
220
194
224
188
203
216
261
201
205
233
157
216
199
209
138
216
153
142
255
133
199
246
174
237
253
193
146
183
205
171
228
240
183
205
247
171
165
216
145
199
203
173
205
228
214
244
200
196
178
175
203
171
170
177
182
165
162
131
254
186
199
185
148
179
232
179
212
263
145
189
199
195
214
184
242
234
213
194
197
209
148
190
271
183
199
245
214
204
253
158
200
218
197
274
236
234
160
172
190
196
228
235
134
180
198
182
188
172
182
172
197
113
220
208
141
183
201
169
219
183
168
204
196
233
151
216
195
217
257
255
212
205
195
232
165
177
192
217
214
251
242
192
132
193
200
192
217
214
154
241
169
217
178
225
207
200
227
176
183
203
206
187
216
238
212
177
229
242
145
198
189
194
197
247
196
223
220
170
211
200
213
168
199
144
159
183
197
185
262
207
178
228
184
196
187
219
237
214
220
185
199
156
191
154
180
185
229
218
244
215
293
210
221
166
280
172
142
219
203
186
173
193
218
221
199
191
218
301
137
218
187
201
202
199
222
139
216
206
111
172
146
226
211
167
203
273
220
170
141
179
142
198
196
186
175
143
194
213
199
234
270
191
202
184
211
206
251
222
180
155
183
198
213
210
273
257
213
247
175
183
163
232
195
253
243
165
243
249
223
178
242
185
200
180
222
199
228
149
253
209
166
263
217
126
219
223
192
203
201
171
201
227
240
169
176
198
212
215
196
177
261
227
239
259
194
182
243
168
168
240
240
233
202
221
118
198
232
226
259
180
211
133
196
120
184
191
225
189
125
191
226
221
196
173
280
259
189
189
243
180
229
179
149
197
275
235
190
167
194
215
246
210
112
237
208
189
243
185
201
231
201
222
198
203
160
191
184
219
229
135
206
130
215
197
178
248
185
227
186
170
223
222
111
207
211
194
171
216
117
241
183
203
191
177
173
224
130
186
211
203
229
180
171
214
219
198
252
152
223
241
259
189
213
170
204
200
235
232
166
250
194
164
218
216
217
188
246
193
220
184
196
177
172
195
234
176
225
174
201
208
172
147
225
211
217
174
274
183
189
218
234
192
225
252
208
229
181
234
219
205
223
218
240
232
201
183
211
181
182
149
93
224
217
155
231
145
203
196
228
202
207
189
193
199
245
169
211
215
154
133
144
185
250
215
166
215
215
239
217
162
192
159
128
241
188
176
194
154
219
171
224
209
173
252
169
195
208
201
228
183
195
186
167
214
238
176
169
236
167
202
240
225
196
227
198
208
263
172
272
211
215
231
240
180
179
230
178
186
181
200
179
207
177
242
265
252
205
134
213
153
238
166
252
231
203
194
190
210
184
195
240
207
225
186
199
223
176
158
222
198
206
163
188
200
184
208
254
173
268
227
233
211
201
224
198
235
189
263
218
205
268
230
228
178
174
207
177
190
268
224
213
189
136
195
200
214
186
207
196
143
175
201
168
230
193
161
209
214
178
227
222
275
151
228
224
276
189
209
175
248
219
180
163
202
184
218
175
233
163
204
157
282
222
192
169
170
167
218
163
250
209
185
157
158
237
213
166
190
223
131
196
223
228
219
234
204
225
208
170
179
207
158
138
144
178
155
185
267
189
205
213
252
134
176
163
189
209
234
231
234
171
183
264
179
215
210
154
186
199
215
191
261
226
172
186
151
235
216
188
221
205
278
174
178
273
202
186
214
181
274
207
217
185
214
122
230
255
221
221
301
141
212
212
208
168
204
180
178
242
180
172
137
180
203
218
145
195
155
210
181
235
269
218
250
155
169
223
177
189
212
210
119
195
213
223
233
196
141
215
190
185
180
231
206
243
222
146
247
230
212
188
209
209
251
226
205
227
175
158
198
150
217
221
227
168
222
193
182
197
134
108
221
134
166
211
251
192
203
265
211
204
229
225
191
164
209
205
225
196
169
275
240
115
129
220
228
225
214
203
209
208
255
216
149
164
218
222
218
209
160
158
209
168
230
120
173
171
227
210
216
165
182
231
246
170
209
231
175
226
246
216
191
225
210
198
186
189
250
131
165
171
242
212
184
196
238
243
229
183
234
200
197
209
238
168
191
189
224
244
166
152
209
175
227
287
215
247
267
213
205
170
277
221
169
203
190
238
221
242
181
245
192
195
227
176
151
183
253
155
216
219
226
275
203
212
181
177
187
174
223
212
225
204
189
204
250
208
196
186
180
210
179
173
156
235
140
219
231
218
146
229
188
201
221
214
204
200
234
181
127
115
244
234
161
198
180
192
186
220
163
206
277
190
158
181
174
229
129
206
238
177
179
194
179
181
127
201
158
183
139
223
174
217
196
197
173
154
162
213
240
189
219
172
213
191
260
191
253
220
201
213
178
260
199
133
149
246
208
194
148
210
218
169
195
162
188
206
261
237
237
249
217
162
175
179
130
198
191
210
219
220
179
184
220
243
239
167
217
251
206
184
261
156
131
229
188
221
222
251
242
245
232
259
216
199
194
175
209
195
157
218
190
239
156
233
168
161
228
207
260
261
207
239
200
237
249
188
136
205
201
152
198
206
151
189
200
220
188
174
165
189
194
217
262
217
153
223
157
209
240
219
221
220
214
187
217
181
244
205
268
232
225
181
257
144
138
237
177
250
203
200
242
285
272
186
237
176
226
204
201
158
150
230
188
161
216
177
211
195
200
125
199
208
268
215
213
134
232
248
192
220
164
181
177
200
201
140
241
202
167
228
184
213
206
184
228
230
188
189
211
234
260
130
252
222
193
249
226
177
213
173
182
216
163
178
199
214
250
186
248
163
200
216
225
212
170
187
168
214
220
190
241
178
177
169
161
146
204
258
211
203
143
201
200
187
187
187
162
192
271
225
172
192
163
192
246
158
177
218
259
209
163
207
138
212
206
201
187
202
233
169
179
198
203
207
218
218
232
246
241
251
230
155
235
181
232
251
162
217
186
194
183
214
235
205
217
159
181
195
160
274
172
173
260
252
187
225
196
180
189
143
222
212
123
258
182
189
231
159
173
259
218
214
186
202
229
154
189
259
176
187
206
211
243
237
228
188
217
257
222
165
173
197
171
229
181
155
138
228
192
215
174
188
236
220
211
218
196
127
172
251
187
227
188
164
260
182
211
207
194
222
158
218
204
149
126
231
214
191
156
240
193
254
248
193
173
122
218
229
198
185
182
198
254
229
151
193
218
190
254
243
257
207
209
222
221
168
160
216
174
220
219
242
214
210
185
151
216
189
204
176
249
264
212
149
196
237
189
193
193
150
222
193
163
234
239
228
209
258
268
247
212
199
196
176
135
267
179
221
203
204
129
237
171
200
204
212
212
217
234
197
212
206
237
138
220
146
235
165
183
250
193
257
200
180
170
181
188
238
219
231
151
208
239
244
140
224
190
230
172
224
248
224
236
137
144
146
171
177
131
243
172
170
223
198
193
225
212
193
228
198
203
186
251
184
238
214
188
225
244
159
202
104
219
166
203
237
257
176
164
174
188
194
200
188
241
212
244
171
150
222
155
220
222
213
247
196
234
161
180
225
228
204
237
238
241
255
262
192
239
212
190
214
139
225
210
191
192
183
259
218
228
231
232
168
242
237
147
179
92
255
194
232
238
203
218
161
191
192
226
228
156
229
289
267
189
161
226
204
241
227
223
190
193
212
232
205
156
208
183
132
189
177
180
246
255
126
188
232
208
237
197
213
252
268
259
127
227
235
209
252
200
261
197
208
188
153
187
205
179
218
186
219
238
257
204
199
217
230
176
157
178
183
231
217
285
205
227
209
150
189
167
133
212
201
207
222
153
153
200
254
238
206
214
221
183
180
136
249
185
209
262
268
229
165
154
171
184
147
218
214
233
222
237
239
213
187
141
233
158
201
234
161
213
179
161
162
219
129
212
183
207
150
241
207
199
173
200
200
244
164
232
172
170
184
192
208
178
220
189
200
132
221
208
163
202
132
187
221
225
193
193
257
196
156
208
163
168
236
136
203
250
193
208
186
185
210
230
123
173
199
169
226
145
208
241
235
222
194
192
251
167
229
243
208
177
136
200
233
229
151
188
176
205
198
129
237
215
188
201
212
194
224
134
215
256
198
205
217
151
154
183
209
182
181
222
181
194
200
192
210
230
224
222
236
232
242
155
241
182
179
181
213
245
254
208
254
184
208
200
220
216
150
165
177
211
135
266
250
237
262
176
215
198
190
220
203
162
214
164
162
229
196
235
170
264
224
202
253
241
210
196
233
222
192
262
150
218
193
214
163
183
147
241
198
206
222
175
214
178
209
148
189
188
217
211
157
292
267
228
224
208
118
224
151
208
201
193
191
197
211
194
210
153
167
233
233
202
163
230
176
240
128
223
238
216
232
228
212
96
169
220
192
101
158
182
189
226
237
170
205
159
145
151
187
136
246
188
164
209
155
230
216
229
230
207
130
252
237
194
220
109
196
169
203
162
144
148
277
191
220
254
233
205
203
202
207
160
255
182
214
184
178
216
178
132
168
159
205
220
146
238
205
210
211
185
183
196
212
193
168
190
255
163
168
181
232
190
212
276
197
140
208
220
248
253
183
213
195
146
203
199
223
244
146
190
151
208
229
147
234
208
183
247
156
139
168
173
122
230
224
252
144
162
247
205
244
197
182
218
151
226
194
211
200
191
247
190
247
174
205
209
209
204
177
221
224
153
195
165
149
222
258
207
204
240
213
211
183
184
213
143
216
270
244
257
238
201
253
143
177
159
147
137
195
184
229
211
186
208
195
229
167
240
226
222
204
170
223
195
156
180
252
219
171
236
201
222
222
206
202
186
200
134
219
241
174
153
197
233
249
200
159
135
197
160
207
239
188
140
212
253
118
144
234
169
200
143
211
207
226
272
214
201
230
181
200
215
153
126
223
240
182
150
152
255
155
205
214
144
239
191
215
207
201
239
187
256
242
214
224
218
151
195
203
171
193
207
225
138
205
197
156
175
231
267
169
221
208
208
181
223
209
191
226
228
186
191
177
144
204
200
216
235
186
222
114
192
207
230
196
203
153
216
177
212
239
157
164
167
215
196
222
258
178
185
182
225
209
209
149
214
175
171
243
251
163
219
242
269
221
137
205
186
202
146
222
240
237
195
207
138
174
154
247
195
221
273
179
231
191
186
190
132
178
229
172
228
205
265
222
199
244
272
239
237
199
150
151
181
239
202
192
167
167
201
157
125
182
237
189
172
175
231
229
177
228
257
152
230
202
207
189
210
178
210
219
189
207
204
247
219
145
208
228
213
160
202
165
283
184
121
214
230
157
212
209
241
189
165
122
165
165
172
271
211
171
140
275
238
199
210
185
170
172
146
188
167
162
214
200
202
132
201
188
188
199
224
133
228
156
240
245
200
152
210
290
248
181
272
236
265
206
193
124
235
180
182
167
178
169
213
253
256
258
197
220
232
191
162
215
217
166
213
223
204
241
153
207
217
212
128
210
241
205
182
185
251
213
187
203
228
209
206
220
210
223
248
216
260
180
234
208
219
195
172
147
148
236
199
193
181
165
205
183
189
171
191
212
217
173
187
178
185
176
180
206
203
225
206
281
196
224
241
175
186
213
200
271
208
210
218
195
222
236
187
197
170
145
167
187
179
229
110
188
153
239
148
219
190
232
216
201
164
202
246
282
236
218
214
233
217
103
159
259
207
214
140
160
205
211
213
245
201
195
243
136
216
245
207
198
125
220
196
231
199
212
206
240
158
158
221
200
212
228
176
182
143
191
219
246
151
208
215
177
201
185
224
232
238
232
248
189
198
141
207
173
145
236
236
216
193
183
228
250
217
172
196
215
197
207
145
123
155
255
138
162
250
186
213
147
212
177
161
178
215
198
183
223
196
141
226
241
185
171
214
178
206
228
199
207
217
185
196
184
182
177
188
213
141
189
206
169
188
194
165
235
190
204
226
172
169
243
179
234
205
206
192
202
221
204
246
232
162
175
203
179
230
186
152
201
210
187
204
190
136
221
245
230
186
272
201
188
153
167
164
198
210
216
202
179
241
202
207
198
261
198
206
145
234
200
179
230
190
259
202
222
293
225
226
158
157
178
175
175
164
163
240
213
230
134
159
182
206
248
105
185
183
191
193
112
176
143
170
235
244
182
202
166
174
222
126
184
218
101
184
203
238
228
163
148
217
151
157
235
228
193
190
251
202
260
213
218
189
183
262
202
236
120
146
179
179
147
249
254
208
245
161
226
206
236
191
246
139
200
262
248
153
245
206
232
219
252
179
202
214
220
260
223
212
203
208
187
232
211
197
191
181
199
182
225
240
240
194
162
234
125
171
265
207
145
159
163
211
180
201
238
173
203
236
212
200
200
199
227
194
250
216
178
163
190
222
161
118
171
162
217
182
239
241
188
232
226
218
170
179
207
177
217
236
104
180
259
166
143
241
198
195
203
200
177
189
260
193
178
95
153
163
190
183
220
228
168
168
216
220
207
173
200
215
176
255
153
213
181
252
244
219
215
218
152
274
197
214
215
210
196
227
208
213
249
206
229
187
206
230
209
249
233
219
185
235
124
150
261
193
165
263
200
186
189
194
133
248
231
237
181
210
204
203
220
195
185
198
222
238
185
186
110
257
196
238
245
209
228
170
147
212
166
236
150
145
127
171
242
212
196
194
189
261
221
264
247
216
247
179
197
242
186
212
196
172
208
171
202
168
215
211
180
227
153
128
180
219
196
251
208
202
206
142
216
229
254
235
176
182
223
207
176
188
241
220
199
136
188
166
216
231
211
182
205
178
185
218
177
237
212
180
203
206
83
214
240
165
234
200
146
247
163
200
210
235
183
239
222
220
220
214
223
201
209
196
122
232
215
188
181
219
240
272
188
195
211
200
215
178
242
171
217
185
180
228
184
163
170
177
212
208
236
218
167
237
242
162
251
198
216
186
184
267
143
134
216
282
242
188
208
193
217
164
219
224
164
196
187
159
157
178
184
214
180
214
205
218
219
225
184
158
260
198
201
214
204
218
167
221
230
160
188
235
225
193
261
121
195
223
216
245
247
204
164
235
212
227
240
216
157
255
139
193
207
210
234
235
195
135
170
216
227
174
210
213
165
195
126
215
180
131
240
196
164
147
190
218
184
229
197
193
177
234
139
249
257
178
168
229
199
208
246
179
221
211
190
186
209
129
178
220
180
201
216
166
174
189
192
133
190
171
250
167
130
257
199
203
222
223
166
220
189
215
265
192
215
192
226
197
226
247
231
235
238
211
181
182
225
231
178
172
193
228
233
141
170
180
253
158
222
167
191
211
202
232
158
205
269
196
206
241
201
166
176
190
186
134
187
195
178
234
165
223
155
204
161
183
170
184
192
206
207
189
245
238
239
190
151
243
188
248
205
149
225
145
184
217
218
200
222
217
208
243
184
248
192
181
219
198
248
260
229
126
242
252
205
207
208
163
188
248
166
245
192
212
167
202
179
249
232
222
185
228
189
202
204
190
233
184
218
230
190
237
230
213
200
222
196
222
269
223
223
160
253
172
225
191
233
166
212
202
212
171
257
226
205
294
232
162
225
193
267
233
215
216
190
174
226
290
134
167
206
241
206
240
195
165
134
237
223
188
234
257
219
162
218
215
192
236
172
208
189
186
252
203
217
214
176
224
225
156
216
159
215
177
220
206
184
110
240
244
246
204
197
220
156
173
164
207
229
168
195
206
174
209
168
220
183
234
193
210
181
206
202
247
123
264
199
254
180
198
257
248
184
190
162
203
213
163
171
165
248
236
200
201
171
197
194
176
213
216
196
110
168
196
237
223
251
203
271
214
150
195
176
233
199
216
181
164
218
192
135
169
186
191
228
250
181
180
215
209
188
165
222
199
189
237
210
218
159
270
213
105
190
225
230
189
237
264
230
272
220
218
222
225
204
218
221
228
199
182
213
169
198
134
219
178
167
222
163
237
249
192
273
165
199
228
156
304
176
242
174
219
237
197
222
166
208
154
126
133
188
170
187
229
241
202
216
251
244
160
183
192
157
141
210
240
233
151
147
213
149
211
191
178
230
203
149
244
212
202
186
189
218
210
129
126
223
221
214
139
122
216
212
208
197
185
256
160
199
190
228
188
187
235
213
176
186
172
162
186
166
201
172
197
258
204
200
240
214
229
185
175
172
268
218
181
253
196
233
246
213
160
147
183
150
240
186
242
172
225
217
172
214
179
212
194
177
126
188
142
187
150
150
185
196
191
229
265
211
209
162
197
171
197
210
155
243
234
169
195
213
206
251
213
191
218
186
269
195
219
164
235
203
163
161
144
262
175
204
201
206
232
180
173
218
201
192
166
184
115
178
253
163
265
189
181
186
189
152
150
232
219
137
186
214
227
224
116
191
186
197
238
231
178
181
154
212
175
221
185
247
203
159
194
179
177
226
187
216
196
220
218
167
271
136
153
160
186
280
227
198
148
195
213
205
179
195
213
246
279
185
256
222
222
202
263
201
162
200
219
218
198
231
184
150
177
169
172
200
241
242
193
221
187
211
201
222
218
135
176
248
226
224
248
201
159
192
180
190
207
178
141
189
248
192
207
185
134
196
181
186
170
242
249
214
256
212
187
220
172
217
217
193
133
168
131
216
227
230
243
189
242
182
234
261
189
193
209
194
234
151
197
261
286
250
215
209
174
200
255
212
200
210
182
190
226
200
228
196
198
152
248
167
185
222
218
225
162
179
205
192
179
247
194
183
217
189
231
203
147
184
228
166
213
131
172
214
213
175
207
176
216
182
221
132
234
251
223
151
165
210
204
196
153
116
220
199
188
207
230
159
202
212
244
204
233
268
217
275
197
191
201
153
208
206
228
186
153
225
196
197
126
188
143
255
187
187
240
231
158
176
233
226
205
213
198
215
253
162
235
206
164
140
205
186
193
246
223
201
173
169
204
288
160
147
210
178
203
199
209
156
231
184
197
197
236
211
184
212
251
190
239
210
176
241
234
214
151
157
169
155
231
229
159
228
215
188
115
237
167
204
215
156
205
206
221
229
242
215
210
135
214
157
219
219
195
200
215
149
203
167
214
200
182
207
247
247
189
206
202
229
141
225
181
228
277
232
255
232
242
241
142
224
197
199
234
186
185
147
156
224
197
184
224
311
172
196
198
238
222
188
179
182
245
174
258
222
169
206
160
168
212
216
233
194
172
198
226
176
179
197
255
278
199
197
226
233
235
166
232
240
206
183
193
227
203
182
193
192
199
232
186
206
196
200
261
251
248
179
232
210
237
207
214
204
177
186
214
281
215
219
205
243
164
246
246
170
164
213
182
232
196
196
171
152
227
232
268
220
217
230
211
217
132
206
230
192
221
217
172
213
234
193
209
157
198
183
202
197
136
133
211
223
178
103
174
214
148
223
228
128
185
179
209
231
171
189
182
231
252
212
190
222
190
282
193
167
237
189
201
187
223
243
156
146
225
144
183
121
144
220
155
137
167
228
205
201
269
291
245
208
230
179
207
227
201
253
173
209
234
125
190
202
146
228
227
217
206
247
236
193
148
232
214
119
113
159
160
211
189
196
218
229
266
198
172
165
235
174
182
189
168
148
219
160
221
224
214
186
200
129
146
179
172
221
138
264
224
196
208
187
211
184
172
137
193
193
193
193
250
190
160
192
227
288
184
217
173
208
257
204
161
216
171
195
174
221
247
236
220
137
215
154
223
222
239
220
262
169
212
204
192
195
200
198
213
181
164
149
137
218
248
153
225
218
187
160
289
188
234
188
185
208
245
188
192
158
226
176
189
223
209
193
155
182
181
199
144
221
252
192
181
201
192
142
208
247
196
206
178
138
199
192
227
152
236
202
156
278
238
222
133
191
166
110
238
211
219
214
231
308
235
199
193
172
165
213
196
203
244
229
105
180
184
191
173
208
180
284
151
181
280
185
215
137
208
221
191
222
234
184
192
286
145
224
151
201
258
278
177
197
227
242
211
151
215
129
162
183
197
220
214
201
224
189
218
240
164
218
228
226
170
227
140
184
158
230
144
182
195
268
190
195
219
179
173
245
142
162
174
213
203
165
241
158
230
205
242
134
222
168
215
164
197
179
240
162
162
194
128
202
209
234
223
210
217
236
161
258
143
176
185
192
194
210
151
217
214
216
231
186
165
161
181
203
253
150
258
223
198
241
170
219
173
246
130
188
138
151
197
149
197
185
146
273
184
151
174
115
161
290
198
211
190
213
205
195
145
207
173
157
150
204
220
173
242
239
207
178
242
150
197
199
177
216
205
246
215
144
214
205
189
169
189
258
227
182
173
203
205
138
207
205
192
164
244
244
179
201
141
219
220
233
226
203
179
224
144
164
154
198
168
199
186
262
179
173
172
242
234
135
211
191
219
212
230
210
175
206
228
191
228
171
185
185
197
226
175
188
233
170
225
140
181
182
178
190
201
176
151
280
240
166
203
150
174
147
209
196
249
203
215
228
166
147
159
117
192
224
216
205
123
108
175
207
209
139
216
216
203
205
183
128
193
207
172
243
193
223
199
183
206
237
178
238
131
190
225
214
212
175
219
203
209
203
229
181
150
128
194
265
210
190
197
114
165
185
174
231
135
170
156
179
169
219
178
211
140
190
151
249
241
171
222
155
141
225
231
210
205
231
252
218
220
199
145
255
130
184
214
192
192
185
189
194
155
180
216
188
163
155
162
171
202
208
269
208
229
212
156
155
212
208
220
207
213
220
214
182
202
187
188
194
273
179
227
197
197
199
241
217
215
191
234
197
241
179
241
142
212
189
270
173
167
266
198
239
234
214
246
253
192
254
234
201
140
249
216
209
237
149
190
243
200
248
220
230
238
278
187
110
143
183
209
194
182
235
183
170
243
172
201
212
250
275
164
185
120
219
183
176
168
177
193
231
250
214
215
224
230
215
197
218
158
227
222
197
241
177
235
191
214
242
150
187
245
177
218
204
207
134
236
206
171
193
177
192
168
176
198
124
192
181
200
232
206
153
219
203
218
214
123
124
234
238
233
201
184
294
187
216
215
220
211
285
162
240
242
199
231
218
169
140
187
169
196
170
215
171
199
213
196
239
156
158
246
215
235
183
176
193
120
187
207
163
181
243
226
246
195
192
201
172
193
179
228
204
181
195
277
181
157
240
200
209
187
181
204
176
189
149
215
252
220
201
220
204
208
243
223
218
208
269
220
223
181
178
201
198
260
220
157
176
211
191
144
238
117
253
236
171
221
187
186
179
182
242
133
175
228
245
213
141
239
152
192
179
256
195
246
201
225
278
235
225
179
219
252
212
128
143
173
208
164
176
228
198
244
221
186
207
156
235
160
147
204
172
153
252
162
227
197
264
238
157
175
168
209
189
190
188
173
255
194
223
178
179
216
177
174
210
233
145
276
266
195
176
188
281
276
106
201
200
193
226
120
128
187
235
178
133
134
200
235
190
222
289
174
177
222
198
176
208
206
217
147
243
247
208
192
159
193
234
206
196
144
175
232
208
258
189
152
176
173
258
213
203
236
194
239
257
205
169
229
182
189
233
241
244
211
151
173
213
216
191
157
258
145
181
209
210
159
206
195
161
214
189
197
233
182
193
249
132
240
192
186
224
231
230
246
217
168
201
201
207
175
141
172
201
233
194
204
210
223
221
259
154
192
216
189
204
188
236
229
221
194
221
177
146
221
172
218
235
223
229
202
257
254
257
178
188
223
244
188
162
188
202
237
219
146
222
247
195
240
161
153
229
209
182
256
188
199
176
136
139
204
271
180
157
236
220
104
260
180
142
219
188
227
186
143
174
182
241
161
265
218
218
186
232
212
202
197
281
149
238
190
241
236
180
198
179
198
224
208
184
218
190
207
229
173
122
178
161
239
166
302
224
210
161
234
168
149
234
196
225
142
196
193
234
194
201
205
193
190
183
184
179
234
252
178
177
204
198
295
241
189
166
229
227
216
183
159
199
155
146
240
129
186
143
220
208
251
148
176
229
247
221
195
284
120
196
157
185
179
150
195
145
219
192
167
211
212
163
205
217
198
217
172
218
197
249
228
115
192
180
242
221
251
230
204
156
215
200
240
224
300
238
234
230
182
153
225
220
194
230
284
253
192
178
185
189
215
177
161
223
159
190
204
209
226
188
157
207
261
155
176
173
100
152
246
197
213
269
215
210
200
222
200
198
143
157
257
255
231
235
217
207
241
193
203
236
242
155
202
161
179
185
225
227
198
231
264
227
252
202
254
230
163
194
266
227
247
197
266
235
192
167
195
194
212
272
234
177
196
163
217
231
252
233
207
185
225
226
222
233
243
258
119
202
247
182
214
174
166
233
270
229
199
188
210
208
195
211
182
235
156
218
172
206
200
265
182
187
105
201
225
261
204
204
179
163
235
196
185
150
218
187
193
142
210
194
156
204
230
199
210
191
234
217
192
207
227
180
213
231
162
231
189
194
164
144
199
164
232
176
180
183
191
156
240
147
153
188
257
199
174
240
186
226
227
148
186
213
231
198
254
162
227
167
195
202
154
236
173
173
159
251
192
172
194
118
270
185
167
247
188
163
166
228
211
230
199
260
216
181
320
199
196
181
190
212
188
255
166
183
179
222
181
167
153
226
206
194
233
257
215
132
177
203
189
182
218
184
199
220
211
232
170
140
216
177
226
252
241
173
195
179
178
212
255
205
252
206
183
207
189
258
213
172
215
126
210
164
178
162
227
143
210
223
192
246
251
284
174
178
152
197
221
203
162
197
165
165
242
226
189
200
192
156
179
195
196
250
163
213
231
215
167
168
196
264
248
204
250
195
163
183
183
152
157
213
148
262
221
245
160
233
273
203
186
203
177
242
192
208
227
210
142
224
177
204
218
212
295
162
227
224
154
229
193
150
248
175
247
224
177
221
159
180
218
216
188
190
233
196
228
258
215
214
177
246
138
200
208
175
206
233
221
244
227
194
202
214
165
254
223
172
175
166
216
185
172
206
240
204
250
213
171
242
185
200
225
177
205
228
202
232
201
162
212
210
206
206
229
253
188
237
189
228
172
135
249
208
190
199
174
207
250
193
181
244
189
174
219
221
193
146
201
161
182
216
189
208
268
188
214
252
189
196
250
204
217
177
213
195
210
245
179
208
205
177
183
250
192
241
210
129
126
150
252
224
165
224
228
201
237
165
115
198
219
256
245
239
220
127
182
234
219
183
220
221
194
174
239
154
200
117
218
183
212
164
185
256
204
149
225
178
203
160
179
205
233
263
224
219
254
259
202
229
196
233
182
237
218
161
186
192
181
210
209
224
216
172
253
172
205
161
217
192
231
209
221
167
175
196
206
161
240
231
171
181
215
224
198
218
227
249
207
151
221
175
212
174
206
210
204
114
243
265
199
171
198
225
235
232
157
179
233
218
201
219
236
217
176
224
258
181
213
229
244
148
260
233
160
210
213
238
233
164
219
181
171
232
191
216
163
214
171
207
294
163
213
185
218
120
187
224
239
186
223
181
154
172
160
227
269
186
245
224
226
117
203
212
244
215
242
175
228
197
214
305
154
221
228
209
196
191
256
242
232
167
215
196
195
264
175
218
211
234
126
131
196
221
139
194
227
210
182
168
197
139
185
176
201
215
167
200
233
213
239
193
140
228
172
201
174
179
188
186
238
204
176
218
191
265
196
203
238
214
177
170
140
200
235
228
250
227
153
198
268
240
228
192
208
222
183
216
194
225
215
232
182
187
250
253
241
167
231
232
202
182
161
184
165
166
146
201
227
166
193
219
168
191
178
220
169
212
232
195
185
213
212
148
184
178
175
222
182
245
188
161
136
223
159
211
175
207
157
252
165
148
204
219
213
182
127
200
167
262
189
294
279
206
241
207
198
249
215
201
225
131
223
177
120
214
194
153
187
202
226
179
205
211
187
213
198
184
163
198
204
193
230
170
201
174
168
181
162
242
204
227
175
186
146
211
187
229
142
184
230
251
175
199
249
193
200
134
205
225
242
230
198
229
252
193
220
170
243
179
267
180
182
221
243
193
152
199
252
279
196
187
205
220
215
253
229
192
224
209
226
200
167
154
226
227
165
224
202
216
173
238
185
205
227
228
204
243
182
248
151
192
248
221
267
244
178
151
211
199
159
223
172
255
172
131
143
163
170
225
206
210
168
244
225
146
173
203
253
183
155
217
149
162
198
184
252
187
154
211
217
186
192
252
199
151
220
236
205
230
193
195
219
207
250
230
186
149
215
168
241
218
191
205
223
171
210
152
226
233
210
190
198
181
173
157
229
186
268
139
202
231
190
121
186
172
219
219
184
212
223
176
210
160
223
205
229
188
227
215
161
183
225
126
207
202
181
157
222
147
208
205
273
226
231
181
183
180
181
134
244
221
161
174
213
207
238
204
211
155
248
189
159
170
152
253
217
227
163
173
210
213
154
185
205
256
248
201
194
276
214
234
208
211
192
249
196
277
201
182
193
184
157
195
270
265
179
156
170
190
200
276
147
146
204
189
161
272
181
164
183
126
173
198
178
199
190
206
177
222
208
194
201
244
164
241
234
195
208
255
186
222
177
247
185
214
232
225
217
141
239
224
214
152
178
152
197
194
198
152
262
190
227
205
217
209
173
251
155
160
224
224
218
139
258
196
217
201
225
236
186
198
202
221
185
244
206
256
148
183
263
175
223
190
159
269
209
198
171
191
132
194
212
182
186
205
204
163
209
189
164
205
200
215
164
208
290
163
177
224
219
188
265
173
197
213
153
228
178
168
167
162
186
253
216
245
186
220
222
192
176
170
228
188
205
199
241
230
191
251
174
198
177
195
218
189
235
210
174
179
168
145
153
221
210
194
203
230
184
252
174
244
122
199
195
252
248
212
185
219
159
246
225
240
215
151
180
199
162
213
142
224
239
238
196
190
215
165
159
239
127
202
247
212
138
232
167
234
218
225
198
231
240
139
196
173
235
232
158
202
236
119
186
235
218
201
176
223
164
204
169
210
236
205
214
182
168
152
224
236
165
237
220
155
208
195
243
235
230
240
138
200
186
159
239
200
216
208
164
205
174
131
231
134
173
240
205
204
189
151
240
249
183
185
204
147
238
130
193
191
219
211
202
214
157
265
198
238
268
163
264
213
212
217
191
208
195
183
181
221
170
253
178
252
169
192
217
235
227
226
174
257
230
251
177
217
240
233
217
242
235
233
200
163
239
227
140
192
152
206
162
145
232
189
183
216
196
182
218
230
175
261
188
170
200
255
223
170
191
195
153
226
236
257
167
155
188
110
222
242
176
159
177
225
232
181
199
131
189
222
167
176
227
224
205
219
136
208
222
185
233
193
169
220
183
212
178
185
204
174
223
179
201
240
154
190
176
218
191
147
196
221
206
241
224
154
228
221
155
211
217
150
200
194
178
95
180
249
118
213
184
161
203
204
229
193
240
195
162
217
234
224
228
218
204
190
172
287
184
163
200
184
157
193
229
189
240
183
137
169
205
220
187
151
186
230
214
223
210
252
215
165
193
176
233
232
202
252
157
214
198
241
166
217
214
227
228
236
223
222
259
195
160
153
226
232
190
151
212
206
206
256
199
222
185
196
140
236
217
213
204
260
206
208
219
212
213
172
216
253
270
259
168
193
261
184
204
194
190
214
195
221
194
238
139
215
233
228
215
183
188
169
161
235
161
267
249
219
205
212
197
235
140
253
223
208
214
254
137
176
172
204
213
221
150
224
149
219
177
238
242
234
261
175
185
184
137
232
146
236
167
156
141
236
153
223
203
231
229
224
241
203
176
188
193
200
224
235
216
199
232
241
141
167
212
238
176
227
203
185
230
217
226
197
187
141
211
174
183
244
114
171
224
225
100
184
230
215
225
231
199
214
263
138
239
229
189
237
163
236
200
210
180
160
134
241
191
229
195
181
258
268
172
169
234
152
216
203
220
225
162
219
160
188
208
267
176
270
211
216
181
203
195
198
171
194
246
217
167
229
227
246
211
192
219
105
227
168
200
207
191
225
183
220
132
116
218
223
189
173
235
80
245
250
189
195
188
213
158
207
242
166
189
247
232
218
222
257
187
250
257
225
161
224
135
202
110
189
131
196
179
230
239
258
238
238
209
191
167
236
215
132
81
177
245
188
237
217
221
275
239
174
210
220
190
199
243
165
224
183
247
189
223
208
224
236
213
226
178
207
165
223
192
157
188
193
208
175
158
228
203
222
215
207
189
266
125
220
178
246
235
172
191
165
181
208
174
227
269
212
220
213
206
188
193
269
214
288
217
246
177
217
166
177
225
162
196
195
178
188
249
277
247
214
171
266
149
160
214
152
239
213
180
215
236
230
247
214
160
236
147
200
276
247
195
223
162
195
216
217
247
220
122
202
220
175
200
217
213
168
181
167
156
195
259
199
243
251
222
158
132
224
167
142
204
130
212
215
198
132
220
200
203
192
228
194
140
203
263
187
204
211
200
202
172
205
186
198
172
207
158
229
218
264
211
162
279
221
281
239
236
229
122
194
202
112
235
227
200
257
201
122
172
200
218
192
200
198
246
225
154
182
185
233
183
229
180
203
122
177
143
254
156
188
236
217
164
200
234
206
201
239
195
157
216
229
203
155
237
173
169
249
184
211
244
190
258
230
234
199
177
210
236
248
239
133
227
166
264
195
191
253
169
204
231
230
204
207
212
255
258
188
208
186
156
242
191
262
256
176
219
231
161
187
213
218
186
251
180
194
214
203
186
232
152
201
191
250
169
202
224
169
170
204
202
214
168
256
207
236
192
229
170
187
150
203
172
228
228
192
210
193
217
217
234
240
177
218
217
151
164
230
180
218
150
246
214
156
157
212
178
148
192
242
140
159
179
184
219
240
169
212
229
226
186
172
173
242
172
280
226
205
189
222
157
203
223
172
227
204
244
214
184
204
236
162
118
226
226
243
151
247
198
179
184
186
217
155
263
248
198
254
178
204
228
144
218
155
163
237
207
203
153
216
189
186
197
219
189
167
240
216
216
219
256
166
227
115
174
197
253
211
185
155
198
236
190
211
202
251
184
191
216
218
186
186
228
179
188
238
215
177
229
230
211
186
245
226
208
195
196
243
224
214
184
202
181
230
172
192
201
210
269
223
201
188
180
240
216
211
209
214
186
176
197
233
198
209
196
188
216
188
164
214
209
146
186
177
215
189
215
181
181
259
211
198
205
180
254
213
211
232
209
183
152
194
202
212
234
207
264
272
208
205
252
209
208
207
202
192
175
241
220
207
224
269
120
171
186
143
170
212
233
173
164
143
186
262
265
152
232
193
200
193
235
210
198
248
243
215
175
232
183
218
190
186
194
190
190
259
163
181
206
240
181
146
212
228
247
142
200
193
192
229
180
223
219
180
256
233
147
207
241
168
179
222
150
203
207
202
239
183
232
184
143
195
164
236
250
187
172
164
118
229
213
216
189
234
271
269
154
200
215
143
201
186
181
179
241
212
158
191
173
185
194
211
189
171
136
167
183
199
201
175
214
247
178
279
167
320
242
222
261
205
138
246
183
173
167
229
151
194
214
222
132
205
185
221
238
244
199
206
211
194
208
189
153
205
149
199
204
183
242
148
174
185
128
140
193
245
232
160
200
209
171
235
217
173
96
223
173
191
246
226
157
259
254
145
253
238
205
189
171
225
165
205
194
192
220
239
270
240
234
190
226
222
182
173
155
198
159
171
177
190
188
233
177
199
203
226
173
128
212
178
214
127
147
183
241
197
213
223
163
185
231
208
186
178
189
225
217
245
177
222
227
218
209
225
149
176
213
239
150
188
175
134
194
205
184
236
193
260
187
213
189
166
211
163
194
227
242
208
233
190
161
208
228
237
194
281
181
195
239
203
257
198
163
204
142
185
178
203
189
175
169
225
171
164
166
158
203
182
226
228
217
206
202
163
215
221
202
199
201
172
190
151
176
224
217
136
207
193
152
219
207
223
283
263
223
122
205
240
200
168
186
206
132
204
148
201
168
187
177
243
172
237
155
178
218
163
216
236
211
132
183
197
161
169
214
214
174
247
154
194
208
183
189
183
134
189
180
293
216
168
205
204
225
184
240
215
131
178
178
174
242
201
217
183
243
207
218
239
171
236
222
177
201
219
228
159
178
105
212
170
190
173
224
214
216
211
186
245
295
267
220
108
208
241
258
210
179
206
236
205
162
190
203
129
227
183
209
210
197
249
225
145
205
105
213
203
159
213
190
248
174
188
177
169
174
225
148
178
167
201
213
203
166
223
196
142
214
151
231
219
185
207
216
186
240
170
223
194
207
217
182
232
190
229
189
145
194
199
237
213
169
151
237
222
187
208
212
164
236
182
220
160
190
163
206
195
255
193
175
218
225
200
220
182
251
149
190
132
231
237
207
97
188
194
174
158
212
262
229
155
180
218
175
193
262
184
203
155
212
217
262
214
195
258
228
205
146
154
165
228
239
174
178
211
188
207
134
200
240
220
129
239
211
196
181
213
126
157
251
245
191
228
144
186
235
188
206
224
205
236
255
133
159
244
243
205
203
116
200
175
185
233
237
210
200
186
229
195
227
205
231
213
219
227
215
158
235
228
197
199
206
196
166
222
168
223
224
254
186
211
224
213
167
222
250
198
177
222
181
202
189
159
132
215
242
205
207
175
212
181
181
227
244
174
169
234
181
178
189
242
231
195
205
211
239
215
208
249
271
206
183
184
183
180
235
214
200
195
224
207
214
247
147
154
180
195
222
190
143
153
164
150
236
204
189
220
219
269
204
164
214
251
164
187
244
193
228
179
209
198
200
164
176
101
148
209
221
169
212
250
176
247
225
196
201
227
254
177
215
149
177
210
225
220
304
242
237
182
136
195
212
205
201
161
168
191
133
249
153
149
216
212
226
191
248
187
187
155
197
207
133
197
233
186
188
187
200
184
206
214
214
241
216
207
184
209
204
148
268
201
129
185
138
169
235
181
206
251
191
211
147
119
201
115
148
224
162
222
221
240
149
174
192
175
238
197
186
226
136
246
225
143
262
194
190
203
183
160
213
157
198
211
200
280
213
246
214
194
270
215
113
197
244
200
230
211
197
155
196
231
161
226
186
210
214
206
264
208
231
158
200
207
213
166
159
176
204
243
218
230
216
179
207
186
219
197
175
181
117
208
182
159
175
168
220
229
231
165
168
231
185
197
147
214
168
202
162
182
146
190
211
238
215
171
248
232
204
232
199
158
172
221
228
170
250
206
211
174
238
239
199
226
176
130
196
268
133
190
130
236
199
235
93
230
225
178
188
238
161
202
171
157
179
212
236
240
134
232
201
210
275
233
216
239
252
213
218
161
156
218
149
230
167
246
265
201
147
219
183
198
196
172
196
208
216
207
191
209
182
228
186
265
183
244
121
157
181
190
230
214
232
209
223
225
210
181
233
200
170
224
183
210
192
222
200
180
231
162
266
153
206
194
210
179
186
174
251
236
192
139
213
215
243
225
211
96
165
164
231
207
200
185
173
233
191
192
208
268
209
278
199
144
204
179
179
215
247
173
241
201
171
229
163
213
174
195
95
231
166
251
171
181
244
193
223
201
205
219
213
262
261
229
150
233
211
231
202
181
165
203
239
238
226
211
160
197
274
213
229
194
227
181
228
193
203
172
270
223
271
229
192
209
240
246
171
194
160
208
195
179
224
214
229
248
200
167
181
191
220
178
212
245
188
183
218
173
152
212
187
191
116
174
277
168
237
190
275
248
197
195
210
202
240
168
220
118
222
172
242
258
160
221
170
179
161
206
206
219
225
179
165
192
195
183
201
121
163
152
187
207
175
163
228
148
248
203
162
244
227
255
214
177
196
235
230
259
190
242
151
284
225
257
213
217
192
198
188
185
176
258
223
255
251
209
153
151
168
239
168
220
243
176
192
185
192
171
223
180
243
203
193
165
243
204
206
232
173
194
206
248
164
278
248
162
161
184
193
171
212
169
167
243
189
223
165
237
176
194
140
257
206
149
207
203
192
221
193
228
213
252
167
238
208
193
201
180
170
208
244
186
203
182
209
243
195
228
242
189
187
216
207
249
163
232
104
207
256
226
166
189
248
191
190
225
158
171
183
189
115
188
191
186
262
186
227
163
228
231
235
171
125
242
197
190
176
215
209
248
219
197
188
224
166
166
176
229
195
184
221
193
204
165
184
196
191
189
205
240
163
147
226
181
161
195
224
160
274
202
225
181
219
260
212
158
139
250
151
164
273
185
190
128
156
179
185
179
246
218
197
196
209
237
278
230
275
199
233
226
162
137
175
168
186
252
222
207
224
200
192
227
176
189
227
254
173
210
115
194
195
204
190
217
189
246
234
198
233
154
250
231
195
186
159
156
170
253
158
219
229
211
143
216
161
184
204
260
193
226
198
226
201
115
200
224
162
166
216
238
166
217
194
176
268
174
214
232
213
178
195
241
206
201
252
216
149
190
159
225
177
234
152
176
188
189
172
222
165
156
165
201
178
224
214
215
222
213
251
208
224
196
218
186
153
118
217
223
233
263
212
184
214
236
256
127
200
151
232
196
210
215
196
245
174
188
218
228
244
158
123
177
205
135
202
170
181
187
163
192
213
244
207
148
200
220
228
156
177
184
262
232
223
181
198
191
204
167
223
172
194
187
114
186
251
206
180
216
233
195
210
177
225
224
237
188
263
216
257
200
176
171
174
237
248
151
210
216
193
221
187
202
162
201
207
186
183
197
124
191
224
192
155
240
237
224
161
198
173
247
225
100
144
217
273
270
149
207
266
169
206
205
244
188
192
193
222
205
182
207
160
201
194
164
161
138
195
203
170
176
203
242
140
228
184
168
239
189
229
193
198
146
177
186
177
137
232
174
213
223
159
207
202
174
238
161
195
176
230
207
162
169
171
205
226
186
240
233
207
192
218
192
209
214
253
247
169
235
231
159
249
170
164
209
258
202
168
179
213
179
202
137
153
130
237
147
208
162
170
120
196
187
184
225
236
243
181
200
223
224
160
221
237
210
236
112
223
249
183
161
169
206
209
168
157
214
173
216
207
178
192
128
236
216
237
218
193
179
209
231
229
177
233
208
94
224
188
128
124
228
234
158
170
217
173
149
205
232
232
172
198
168
190
200
192
171
249
169
180
220
239
186
216
258
211
227
221
197
203
124
228
232
212
228
229
195
217
231
228
244
132
224
172
191
188
192
204
206
193
190
205
223
248
139
240
219
191
147
245
214
237
208
199
118
124
138
181
216
152
178
236
150
146
175
170
217
175
202
220
179
267
174
222
217
225
201
222
200
261
170
178
171
166
238
224
243
201
215
202
201
207
233
263
184
114
193
178
209
223
164
225
180
250
227
184
245
201
170
239
209
163
246
222
187
206
170
198
164
187
185
236
152
198
137
182
213
201
188
196
242
179
202
194
205
232
137
181
135
204
109
166
212
239
232
163
226
256
206
232
242
203
162
219
291
159
202
211
227
188
196
233
230
176
127
172
248
202
152
153
182
206
256
221
146
133
113
182
219
182
214
205
135
212
232
190
227
194
131
214
177
212
121
213
192
242
204
244
214
214
189
212
213
199
222
216
272
204
163
195
184
188
203
168
203
251
211
185
233
192
175
191
180
168
172
219
191
137
233
236
219
176
153
168
201
186
199
170
218
127
269
171
264
233
234
162
121
183
188
206
189
194
193
178
202
198
237
166
167
212
240
234
261
236
197
105
198
272
131
166
198
215
251
244
209
233
210
142
220
191
183
261
192
265
186
251
201
153
211
215
171
229
155
196
198
209
202
208
142
211
194
188
277
173
210
199
197
215
226
213
218
194
184
214
203
248
179
129
245
240
183
216
243
174
215
127
139
223
228
239
252
152
229
192
185
205
225
162
184
230
152
202
190
197
216
229
209
189
196
182
194
191
179
194
123
166
209
213
222
125
226
205
203
181
222
210
218
167
166
208
183
187
224
158
185
165
200
140
183
226
238
158
200
245
171
253
171
257
208
288
219
183
204
154
235
184
144
234
197
240
225
175
198
246
173
219
199
147
176
185
199
180
232
181
189
186
227
182
228
214
192
220
261
181
165
180
191
204
218
216
249
243
184
246
219
219
180
246
140
140
184
254
186
170
226
208
265
237
245
185
117
162
209
185
179
176
237
185
163
191
190
240
226
187
199
202
171
233
139
168
192
246
232
215
257
203
164
210
169
188
171
153
250
245
267
215
244
241
215
171
195
264
216
210
211
103
261
214
206
162
178
229
206
212
243
176
152
247
211
138
163
201
223
226
235
161
276
182
227
184
231
160
227
215
274
282
225
226
181
197
236
193
220
211
219
204
116
200
227
186
126
263
238
177
200
273
163
235
172
221
232
141
188
210
238
243
202
207
253
243
209
191
249
256
208
212
157
220
139
189
212
209
195
159
221
180
200
233
226
211
274
118
259
129
216
258
267
168
287
243
201
202
114
247
218
222
239
135
221
193
123
239
296
209
148
263
218
204
154
211
164
191
157
140
162
211
208
232
225
234
218
177
204
149
258
195
244
239
164
206
222
165
203
251
216
207
160
222
228
171
153
235
248
166
201
193
303
157
186
142
182
179
230
146
238
204
163
156
213
188
187
185
215
173
259
215
175
174
212
132
234
217
195
245
195
260
179
216
182
220
221
209
211
211
198
228
183
188
162
231
235
135
246
182
208
244
179
184
170
248
184
262
186
171
156
206
189
122
226
173
230
201
223
242
220
210
167
209
172
213
232
231
181
226
267
225
175
168
212
203
229
190
142
163
130
168
205
183
239
175
138
202
191
238
195
235
233
107
198
216
231
258
129
198
153
148
214
199
227
206
148
152
198
254
251
112
229
236
194
145
160
161
129
203
228
227
216
231
196
218
169
172
234
191
176
194
209
212
166
224
206
202
223
192
205
183
201
223
126
224
198
155
229
136
168
203
220
198
248
194
204
204
163
169
219
209
174
229
211
272
194
210
165
197
184
178
193
217
261
191
190
222
135
175
217
200
175
214
203
162
185
161
241
220
244
169
225
221
244
170
188
245
256
247
235
221
207
248
250
187
221
173
163
219
198
199
165
193
155
149
225
125
163
193
150
207
196
258
193
221
211
223
243
204
194
244
192
257
251
144
194
166
197
217
177
184
233
188
196
171
181
238
229
205
237
244
214
215
227
156
177
197
164
180
202
123
147
208
176
164
158
185
284
167
228
233
214
225
173
205
172
217
205
175
167
198
264
148
201
219
256
236
203
169
131
204
200
215
166
209
250
222
295
216
221
141
179
117
214
219
216
217
177
246
231
234
230
222
153
160
124
224
279
139
195
217
216
134
261
222
199
202
237
239
206
187
196
195
242
216
204
239
185
266
229
186
129
191
190
164
166
201
205
225
207
168
128
223
229
196
204
230
225
148
212
158
131
182
208
168
210
180
239
187
201
178
206
215
180
148
213
178
188
185
233
184
153
193
208
217
194
254
284
246
229
166
256
184
177
189
147
169
196
249
191
177
157
177
149
141
179
216
144
245
212
214
224
198
211
186
190
188
239
204
191
157
248
135
209
250
219
234
173
162
238
184
247
211
168
179
180
128
218
204
236
262
279
136
224
189
176
243
218
166
239
202
170
162
220
152
194
209
231
184
270
172
185
194
173
194
187
198
219
169
178
221
140
146
162
232
223
216
169
234
198
171
251
193
113
148
162
177
261
174
248
217
218
240
247
247
214
165
201
165
202
240
230
206
193
230
227
246
189
217
192
216
211
164
217
137
251
227
209
248
232
240
212
217
242
152
196
217
209
233
180
189
148
181
198
213
182
220
183
173
226
238
166
209
219
194
228
185
211
184
212
158
208
181
278
161
220
170
198
221
177
207
204
238
174
172
234
244
160
103
192
236
199
111
162
206
135
238
220
237
170
228
198
238
213
148
120
223
164
141
206
213
200
214
222
218
261
164
193
242
131
155
102
181
194
212
157
217
198
203
171
255
197
233
177
182
213
145
202
218
262
170
168
192
182
192
191
223
227
189
201
184
166
236
194
166
231
231
234
203
236
162
166
202
225
127
211
191
172
137
212
219
230
183
252
254
213
231
150
213
188
212
172
190
212
230
221
185
237
203
147
176
209
218
146
237
203
252
205
201
171
193
207
180
194
213
205
194
228
200
177
227
185
211
132
220
202
196
214
213
172
211
166
237
248
239
188
244
203
163
139
195
229
216
193
195
220
191
194
176
190
180
169
147
200
250
171
168
295
208
159
214
177
245
185
223
214
264
182
199
211
258
253
225
190
182
193
185
247
203
214
206
202
224
219
178
271
169
161
208
192
145
237
196
190
155
166
209
205
212
195
155
213
156
140
177
221
174
192
155
180
207
185
253
164
157
220
226
196
142
199
191
211
225
167
210
227
176
234
239
177
209
155
187
239
243
225
220
185
231
203
225
218
201
215
214
139
173
205
215
158
167
186
192
227
194
183
175
124
212
190
254
187
190
182
130
183
182
218
226
220
172
203
130
229
121
202
173
258
241
219
143
138
259
235
183
242
206
200
170
221
172
255
166
195
166
251
172
190
255
195
241
159
206
245
204
218
159
218
199
213
197
143
158
146
182
130
192
235
217
244
251
179
203
155
251
158
213
239
232
156
184
206
232
142
188
220
203
225
207
257
184
255
220
269
151
232
176
207
248
214
219
202
205
201
214
217
105
260
146
235
254
194
155
206
223
160
205
209
233
219
236
234
177
159
206
156
191
165
271
229
168
179
284
248
174
202
203
212
209
238
210
194
172
158
226
170
152
250
176
226
229
203
243
144
201
161
272
196
207
145
237
247
251
162
196
270
235
145
148
208
177
172
230
243
118
151
191
239
223
197
221
205
168
153
212
207
201
197
176
181
202
213
205
213
215
226
248
174
139
249
154
221
245
213
168
184
176
255
245
194
170
227
178
233
214
243
174
216
212
215
170
206
258
152
231
169
234
254
259
174
201
205
194
206
223
194
228
212
179
180
185
204
188
181
245
226
178
198
147
191
192
275
236
209
217
243
151
230
191
273
210
178
190
259
175
141
208
197
150
216
196
289
184
209
167
214
175
191
176
184
210
254
226
200
165
215
196
161
213
233
228
216
203
192
218
174
205
191
142
216
231
167
260
199
197
198
164
145
195
224
192
177
196
168
180
203
226
176
233
180
234
140
168
145
240
223
197
201
256
172
207
234
184
150
240
193
79
192
230
172
221
158
168
195
182
250
218
213
196
177
138
239
163
202
167
220
187
252
210
200
167
177
216
205
188
259
166
124
189
208
155
251
247
183
207
159
201
263
187
186
208
188
204
188
238
159
232
203
134
227
210
211
195
254
209
225
207
189
221
211
212
263
225
221
218
243
181
182
199
192
193
234
211
228
196
158
151
205
219
154
203
243
210
209
259
198
189
247
198
182
234
197
138
197
189
187
219
195
263
253
149
201
164
211
217
167
221
255
237
201
216
232
227
225
183
211
222
206
147
178
175
172
201
246
282
185
217
208
166
143
172
238
193
135
171
218
204
179
236
203
128
184
113
239
221
187
194
140
199
203
177
255
170
193
246
167
232
254
211
172
226
172
245
122
260
215
145
174
196
196
178
210
205
170
243
219
194
190
216
240
145
224
186
219
180
151
158
244
180
212
125
185
166
208
190
177
268
160
198
228
221
183
211
187
228
194
187
140
213
212
250
196
175
229
205
180
231
193
159
199
240
165
148
159
193
215
240
207
151
218
170
262
215
250
208
169
245
216
156
184
203
179
248
194
128
195
207
169
199
184
224
258
175
184
163
225
156
191
166
166
250
191
243
216
135
154
184
260
201
181
190
225
230
193
234
188
175
184
242
193
145
215
192
263
185
165
169
170
179
217
178
199
169
143
168
241
216
183
235
184
191
183
186
178
236
178
228
179
192
195
234
184
212
164
186
221
126
246
170
211
215
140
184
246
204
219
232
178
184
174
235
156
257
261
219
192
186
245
212
155
208
122
151
181
194
206
197
195
224
154
178
169
205
217
127
189
232
194
238
237
118
190
229
169
143
162
151
195
178
222
227
267
192
207
196
190
237
185
239
208
234
195
269
227
149
220
175
160
121
213
146
179
195
255
135
137
198
201
275
190
132
220
192
176
244
234
149
213
243
199
202
201
216
239
185
160
207
185
166
227
224
205
246
196
249
231
211
218
165
244
177
132
175
165
156
156
229
170
208
210
230
196
178
244
221
189
212
194
243
209
176
160
131
179
185
217
226
212
263
210
240
239
196
178
208
212
201
210
221
218
218
174
248
232
195
191
175
205
212
233
206
142
201
168
179
147
234
172
199
232
178
247
156
127
159
249
226
158
148
236
208
191
285
239
201
202
266
190
170
206
213
208
215
248
201
178
196
279
213
201
135
257
223
230
189
163
217
240
225
172
217
177
241
189
200
235
177
213
209
214
239
196
119
203
180
152
232
229
199
159
169
218
231
232
255
194
124
211
234
221
254
262
172
154
186
230
246
187
246
247
274
207
250
185
214
209
140
267
105
206
168
218
193
187
190
270
251
248
187
187
188
221
220
250
162
181
222
284
264
101
202
161
181
160
233
231
186
171
190
224
202
211
241
161
195
218
204
198
237
210
164
245
124
172
127
184
250
185
180
197
255
181
197
203
157
237
240
161
147
225
223
146
231
172
217
204
227
204
203
203
200
193
211
168
221
215
260
151
129
234
201
163
170
232
246
172
123
181
156
239
220
223
162
223
160
196
168
251
133
252
275
178
209
116
189
274
267
245
193
160
163
233
252
187
197
194
185
173
201
201
230
182
191
146
198
218
185
172
219
228
245
193
202
181
160
186
135
167
179
214
209
239
219
205
173
230
197
204
227
244
136
146
235
215
184
157
171
218
234
190
184
205
237
178
241
188
218
196
220
220
193
247
222
191
148
245
212
147
236
214
185
155
172
217
226
218
159
122
232
195
220
174
208
228
163
219
193
132
171
244
153
191
201
213
173
210
153
142
200
221
215
198
247
196
201
186
265
185
234
182
175
187
156
201
153
228
202
187
141
203
247
219
223
138
152
178
202
141
197
217
190
213
230
221
200
128
197
235
199
204
170
179
197
209
172
224
159
241
193
177
239
232
226
193
280
202
260
175
270
168
237
182
177
231
204
194
178
211
216
148
267
171
148
224
173
230
215
194
219
195
192
217
171
251
183
222
235
177
157
174
226
222
238
201
191
193
197
183
157
172
116
150
184
209
195
240
149
239
192
171
189
208
208
209
233
120
160
193
182
223
164
185
262
256
227
154
196
208
199
223
279
240
174
181
242
130
191
156
195
222
186
180
181
188
196
208
199
132
211
222
229
191
229
218
154
194
287
207
227
240
214
215
112
242
229
185
211
186
223
142
246
187
155
194
182
211
124
236
236
146
227
215
259
284
176
233
246
182
208
230
164
151
132
174
238
240
166
214
199
196
192
172
238
226
223
229
207
190
186
250
196
219
181
215
232
213
187
134
197
168
206
218
230
202
228
162
191
232
173
188
228
212
217
215
239
217
262
203
210
232
163
217
153
229
210
218
150
201
202
193
213
181
194
187
225
94
260
191
178
153
227
185
158
224
198
213
164
161
212
182
220
133
178
114
194
200
191
202
200
267
144
210
236
215
204
181
139
136
217
231
169
187
207
179
250
257
254
209
178
213
223
228
256
230
191
214
266
151
245
183
197
208
202
243
207
227
218
191
152
119
210
257
246
257
201
222
187
225
188
218
175
192
224
214
193
177
152
176
195
202
194
218
250
185
211
231
171
154
222
212
136
211
223
223
223
231
196
231
283
178
221
226
236
232
187
150
240
269
207
195
183
264
162
164
221
201
218
185
188
213
250
217
167
176
187
193
213
242
262
204
224
192
235
171
262
233
207
149
223
247
158
190
208
129
219
238
189
181
177
250
211
195
215
223
145
148
144
325
216
205
196
216
186
163
221
115
245
234
222
218
207
178
185
250
230
190
161
205
200
195
214
238
221
177
139
161
231
211
208
186
185
170
249
207
216
161
220
228
193
245
215
183
137
208
182
272
167
196
176
210
235
262
211
160
194
167
239
193
195
115
193
146
108
208
195
248
211
225
201
166
202
179
171
201
229
225
201
202
138
158
172
191
207
197
127
135
165
213
198
197
212
185
206
224
178
235
148
233
190
213
175
203
198
191
190
180
260
182
217
207
208
217
190
143
269
169
224
183
195
216
208
192
234
242
220
243
201
242
192
214
124
167
185
172
198
209
215
210
180
173
224
198
164
224
164
151
161
202
192
175
244
204
217
211
255
180
230
222
210
222
220
233
129
207
181
174
192
212
203
241
172
246
196
213
212
186
194
223
229
171
182
193
184
129
131
224
235
234
239
116
196
137
161
181
196
224
221
225
233
200
216
174
204
156
246
172
221
184
259
217
170
209
216
184
204
164
202
217
149
213
148
163
230
152
225
209
220
163
273
184
204
170
161
163
220
176
174
245
192
241
245
241
206
228
203
241
199
194
180
186
168
219
146
181
102
281
212
178
248
220
201
242
217
265
231
195
179
166
168
160
181
188
212
214
162
212
227
151
231
200
161
235
208
229
185
254
183
228
209
197
210
232
201
174
230
231
240
179
240
233
227
177
182
216
258
278
157
148
203
179
256
233
203
172
147
205
218
215
202
160
181
188
172
220
217
230
170
175
213
166
211
164
151
186
257
193
198
134
199
161
177
201
193
231
173
210
101
169
132
201
194
253
268
168
212
175
200
217
218
239
124
210
204
223
149
198
172
239
232
137
190
142
182
147
187
239
250
206
180
161
269
211
219
188
262
271
168
194
162
211
225
188
190
163
207
214
235
264
222
217
196
198
194
191
132
213
226
187
146
201
215
219
194
224
192
217
241
224
186
233
265
161
156
205
189
268
220
197
167
208
190
199
245
180
264
199
231
200
143
132
245
204
163
223
224
183
214
248
240
178
207
177
177
229
147
227
263
194
234
206
149
243
198
224
216
151
184
154
273
164
236
227
181
254
196
268
214
185
251
155
218
206
152
227
277
225
152
213
196
249
236
251
205
202
138
158
171
150
140
171
145
232
218
205
222
212
200
189
126
213
186
215
202
172
174
195
176
218
202
192
160
219
246
159
223
249
155
238
231
180
206
186
188
213
166
204
146
205
198
196
176
202
203
245
198
293
162
254
192
217
212
189
208
202
226
199
189
230
225
215
210
221
197
122
192
148
220
171
201
221
205
167
220
248
186
218
221
157
195
232
128
136
231
222
192
209
261
232
138
142
173
195
285
198
204
190
234
184
211
230
226
232
126
161
205
227
179
171
238
209
224
212
211
151
186
243
286
173
201
212
233
242
266
130
198
224
266
226
143
240
204
231
156
271
173
217
182
160
251
191
120
211
185
128
174
213
182
180
259
213
216
201
177
236
129
194
251
204
265
194
185
178
196
177
190
219
241
155
196
186
195
242
217
186
177
273
185
216
182
236
229
189
177
151
191
205
269
175
233
211
261
192
190
187
190
211
212
251
240
224
200
195
178
177
214
238
192
215
182
229
190
201
195
195
191
174
163
231
216
174
228
167
143
196
216
217
199
209
210
213
223
113
207
197
187
248
204
187
204
230
191
220
161
263
230
237
184
225
169
180
181
173
203
212
241
157
237
181
195
120
215
193
194
222
224
208
255
172
255
271
186
236
258
180
170
215
185
245
210
168
223
249
179
219
193
197
216
218
170
148
184
168
166
249
201
167
218
205
200
231
191
196
188
160
228
207
229
172
187
196
164
178
222
250
236
152
205
156
142
221
154
157
244
133
167
202
168
204
131
198
234
241
251
251
192
185
210
247
257
225
191
183
234
243
250
154
167
226
226
265
194
208
213
172
174
173
161
189
257
237
230
131
254
179
211
192
214
190
180
226
264
162
185
252
230
253
166
134
252
145
124
248
232
220
224
149
163
255
200
175
211
258
165
169
225
194
226
253
219
105
203
216
193
236
200
240
203
177
201
176
165
157
168
234
252
169
256
234
216
191
257
202
194
150
219
237
229
223
191
174
211
225
262
223
229
204
158
174
216
199
214
165
238
181
221
245
247
194
255
215
188
204
220
239
194
138
223
197
189
243
224
167
171
235
225
156
142
177
170
181
163
232
207
251
165
244
172
227
240
213
183
209
204
186
215
208
200
207
206
152
196
182
198
120
182
194
171
181
185
237
170
244
204
253
193
163
205
216
209
224
185
267
212
174
234
261
248
227
198
144
219
196
194
208
209
198
210
199
216
248
135
181
210
100
199
230
219
178
223
212
189
228
138
250
183
237
248
235
205
175
199
207
208
174
213
220
188
217
181
238
123
255
189
213
161
182
209
198
230
221
207
197
208
207
161
195
228
227
163
188
248
169
227
193
200
219
162
196
167
156
206
142
197
219
258
249
150
172
154
167
237
256
227
207
249
245
229
221
214
172
234
164
240
208
170
205
203
240
148
183
211
168
178
185
233
198
228
243
198
198
227
219
241
182
140
189
255
202
217
261
180
225
156
269
168
217
202
251
233
185
245
176
227
168
217
217
212
207
203
170
149
233
185
189
211
202
184
223
200
165
199
136
191
227
190
170
200
203
220
177
147
214
220
180
255
209
246
238
284
187
186
187
231
207
154
180
175
225
175
163
180
233
220
191
211
206
192
198
265
201
217
209
183
225
217
217
167
138
208
199
228
186
180
243
201
244
255
204
234
245
181
172
92
198
177
165
185
232
170
262
167
194
222
173
234
171
195
226
195
258
152
208
179
212
275
254
155
199
259
216
203
227
158
204
183
226
235
227
161
247
166
262
211
203
151
229
195
219
199
223
174
182
225
165
230
254
192
149
193
205
230
183
193
192
193
214
286
183
197
219
197
197
222
171
219
239
173
222
239
211
200
208
218
262
213
238
195
189
267
213
123
169
184
168
238
227
255
182
168
218
178
172
213
154
161
260
182
235
186
199
184
228
202
207
176
214
133
191
201
171
245
206
166
227
192
237
182
154
190
204
198
157
164
162
205
186
160
166
246
197
260
151
194
225
155
175
213
257
236
169
209
164
179
252
194
139
127
150
216
208
267
233
223
246
226
219
138
192
201
195
229
234
193
202
199
166
164
210
190
218
214
177
166
194
159
220
161
189
196
189
191
220
219
226
180
229
253
163
172
159
187
182
185
224
225
234
211
217
186
232
242
181
186
154
163
194
205
216
205
190
137
156
202
256
207
210
154
193
249
201
260
210
248
212
204
268
221
246
130
188
264
260
163
226
199
165
165
225
204
162
197
215
245
204
177
210
184
202
238
196
165
192
213
233
176
166
202
203
212
224
173
186
140
185
214
186
216
260
190
164
193
168
218
177
185
212
204
220
249
224
148
249
238
167
287
172
123
158
173
189
139
184
248
180
216
222
199
242
194
218
206
168
207
183
236
187
236
146
186
117
188
210
174
223
137
162
217
195
182
142
223
228
150
217
216
208
243
199
202
195
233
138
231
190
156
194
171
226
156
176
125
207
172
209
178
221
197
167
196
123
134
209
227
228
133
204
268
222
174
254
226
248
199
170
265
231
238
172
213
225
248
173
188
164
250
205
141
267
227
278
188
191
214
216
244
206
192
159
210
212
220
232
186
176
165
189
242
217
208
180
233
235
158
242
258
225
180
174
168
217
219
176
170
271
189
233
201
179
189
216
222
216
196
219
194
290
232
199
169
194
220
232
128
188
167
191
190
197
163
230
157
267
248
206
231
184
228
180
165
204
167
154
231
167
202
212
222
195
183
164
220
214
164
254
240
190
252
209
181
159
147
221
218
199
227
192
191
171
248
215
240
220
245
196
224
190
252
191
161
210
183
231
190
201
207
208
138
183
220
184
192
193
252
119
163
153
115
209
277
201
211
224
184
276
208
149
177
179
227
173
209
134
214
174
227
202
197
248
198
241
222
152
208
205
218
239
249
176
187
130
187
136
284
110
202
243
164
221
192
207
216
229
249
179
226
182
164
206
236
150
172
138
214
209
285
226
178
221
179
176
165
269
184
245
226
183
200
210
200
199
204
230
183
169
140
174
177
214
211
201
111
201
264
249
236
267
194
213
185
197
207
171
203
188
240
213
204
164
195
117
171
219
224
247
208
184
218
218
214
173
126
215
95
233
145
233
247
185
178
192
211
193
182
173
273
250
161
170
194
215
209
200
179
230
164
212
166
134
206
169
198
206
222
180
194
189
168
227
241
223
175
253
216
140
223
222
176
198
184
199
188
166
236
194
192
200
227
176
179
145
254
262
244
260
199
216
253
211
205
193
166
230
201
173
211
213
146
184
220
145
224
146
191
176
229
257
207
183
204
185
183
261
144
157
273
218
224
153
196
190
224
203
130
203
214
212
234
198
151
235
204
187
226
196
203
223
162
183
202
151
275
202
160
188
209
202
194
192
173
190
199
196
184
224
181
246
179
144
171
173
226
222
164
260
180
197
213
193
240
164
212
207
240
150
181
201
213
189
237
206
211
210
202
186
147
239
177
286
210
186
193
189
174
163
278
184
146
207
187
201
188
211
195
203
202
167
285
193
114
186
203
187
208
206
209
171
236
256
188
243
232
159
239
241
176
271
227
199
206
178
193
135
197
217
222
241
187
214
187
137
225
202
246
197
161
222
251
174
234
243
238
139
184
233
260
171
193
193
234
182
249
189
216
233
160
199
221
200
198
179
190
245
214
227
190
209
187
217
177
176
205
172
218
197
234
200
172
163
225
177
181
182
231
163
191
192
225
277
142
206
158
181
165
201
256
166
182
248
245
224
193
142
231
168
187
181
198
188
180
184
129
229
261
227
162
180
241
176
174
232
184
242
185
229
213
156
180
192
115
175
239
245
206
181
219
196
198
226
216
220
272
232
186
208
192
179
178
177
270
193
278
229
201
203
236
160
243
236
160
171
177
192
234
267
227
141
188
279
200
234
184
235
171
217
177
213
145
213
234
211
194
231
202
148
239
239
127
140
191
212
171
240
209
174
227
205
178
189
177
212
144
222
129
201
181
183
161
220
207
207
235
146
231
182
215
191
224
231
165
164
185
218
255
206
211
146
175
176
203
202
246
221
229
238
167
220
207
230
209
156
201
182
96
229
167
180
210
224
192
234
94
263
227
179
161
201
210
187
223
214
173
193
272
198
219
202
247
147
205
242
194
182
130
185
187
188
160
212
208
246
201
171
151
260
185
192
237
181
241
224
178
182
256
207
243
211
249
231
181
255
197
176
212
222
191
220
241
152
213
252
244
182
193
216
195
165
193
192
240
176
221
162
199
187
231
147
227
284
244
242
208
230
171
179
159
193
160
180
158
223
178
146
187
205
243
152
171
149
288
232
202
204
169
147
173
149
229
235
151
209
165
179
238
248
199
225
206
239
221
119
209
164
177
193
196
217
208
241
226
217
195
162
195
188
229
238
187
288
219
187
256
167
220
217
280
233
178
190
226
240
203
161
216
208
229
167
232
178
171
173
226
143
234
132
220
234
161
211
171
227
189
177
179
211
251
218
196
215
189
189
195
179
228
224
229
193
227
205
204
153
242
223
179
223
197
221
187
199
193
170
215
199
209
138
175
235
212
171
177
197
203
237
230
176
226
212
153
239
246
212
247
207
205
139
190
216
158
234
174
207
156
216
226
226
197
262
181
181
154
172
242
167
167
141
138
229
219
177
208
160
193
219
212
170
221
190
223
203
148
191
177
263
179
177
168
179
175
107
193
156
165
186
242
154
185
216
160
186
231
197
182
200
233
185
202
220
166
117
208
199
200
171
224
240
196
203
220
235
109
153
172
199
184
217
231
213
221
143
243
240
234
192
234
222
136
155
214
235
160
165
163
169
211
197
130
216
161
208
179
249
186
179
252
226
238
207
165
143
249
170
231
174
222
186
215
225
244
204
169
203
238
224
222
170
193
203
216
195
268
174
261
208
214
229
195
187
249
259
216
189
224
188
139
174
181
183
232
183
177
174
106
191
185
181
269
209
224
200
190
178
222
213
138
179
223
142
165
204
138
231
211
184
218
215
189
149
216
171
194
204
183
237
140
206
203
226
215
232
266
288
147
167
180
185
167
183
198
167
223
180
204
220
221
187
169
200
142
252
172
233
230
179
211
240
200
194
159
146
239
193
224
210
213
173
152
219
156
213
232
229
169
241
184
220
158
195
190
212
177
194
238
217
274
181
181
248
198
251
118
207
109
170
223
199
192
230
171
198
235
240
144
209
278
250
203
185
147
164
197
201
245
204
219
156
207
191
179
147
178
258
213
209
190
187
159
244
224
237
186
142
211
190
244
172
210
245
165
198
261
153
264
248
228
156
205
166
200
186
194
171
265
143
196
190
217
258
220
158
166
204
241
197
171
165
154
151
225
218
217
171
210
213
236
182
223
183
221
188
216
219
180
170
216
250
207
157
253
220
143
224
244
215
179
214
188
227
173
170
173
122
190
163
245
187
217
153
190
191
162
177
287
247
199
260
259
222
203
213
201
237
185
234
174
269
269
161
222
159
184
250
202
180
214
253
204
175
188
268
166
158
239
170
215
196
219
241
233
163
221
246
204
229
191
154
224
203
200
220
231
222
182
193
217
262
175
205
177
184
181
209
213
152
233
189
241
191
196
212
181
173
214
169
181
243
225
154
228
168
155
173
239
199
180
161
208
135
191
230
208
219
151
189
263
242
201
201
227
168
170
212
244
235
201
227
176
122
196
223
224
229
166
234
173
190
198
227
194
210
238
215
230
139
189
250
176
225
230
197
187
203
234
196
182
212
193
219
229
270
157
225
249
162
196
249
243
185
210
244
241
208
222
174
162
207
250
230
140
195
235
166
214
229
142
191
198
185
183
227
182
191
119
211
172
190
203
261
166
218
226
197
210
177
167
230
147
171
217
225
187
240
145
228
203
231
176
259
217
200
162
240
157
209
234
193
178
224
192
191
217
249
202
205
190
221
195
179
194
172
252
178
200
203
217
229
163
144
267
165
223
201
161
219
237
188
268
172
196
214
182
217
174
179
203
221
260
209
187
225
230
208
184
211
192
205
171
197
127
192
195
232
168
200
163
161
232
182
218
218
253
203
188
246
233
248
231
213
166
250
178
197
259
157
166
175
176
244
190
216
241
208
126
245
207
165
204
221
110
227
176
255
176
190
181
171
244
223
256
172
222
193
219
217
161
180
193
206
192
168
224
193
218
248
226
152
222
160
209
130
185
198
200
205
132
155
149
184
216
123
267
217
189
177
238
231
145
209
218
212
237
194
267
210
149
219
272
214
144
156
219
219
175
115
194
171
205
152
202
205
199
167
247
227
171
232
193
214
243
202
226
203
168
230
195
234
266
198
190
170
247
243
169
212
207
229
233
214
213
202
167
247
205
174
217
236
172
188
172
142
181
197
179
223
171
190
264
230
161
176
134
187
131
183
175
142
215
195
231
195
209
268
190
195
228
192
202
205
270
185
216
139
208
216
211
188
255
142
185
244
256
196
257
135
161
193
181
154
184
229
187
209
184
219
207
195
205
160
287
245
185
203
167
197
250
222
160
156
207
182
225
223
164
229
214
237
163
218
238
173
217
200
206
232
157
191
252
227
208
180
234
206
220
163
260
216
186
177
172
210
111
172
186
218
239
213
235
211
247
167
213
121
234
203
118
123
207
189
212
200
211
174
198
165
219
187
153
233
190
222
167
247
180
253
160
205
212
221
258
143
206
219
202
214
208
230
199
194
204
179
189
185
178
127
209
172
257
232
251
251
204
154
259
219
159
177
188
220
162
259
172
172
195
148
150
207
289
237
261
187
183
246
221
203
236
234
239
174
171
238
168
216
199
159
142
173
131
211
161
177
198
222
176
156
224
206
226
271
216
194
175
165
186
231
183
258
210
244
179
181
155
149
223
128
218
244
276
238
188
144
173
227
205
289
147
281
211
206
185
191
176
113
218
232
188
222
193
206
208
188
170
240
187
211
270
211
241
218
186
237
212
222
184
209
180
167
254
179
194
161
157
233
231
225
130
219
198
173
190
157
232
155
182
183
227
220
237
201
167
195
174
280
196
181
181
202
151
130
121
183
204
227
171
150
158
229
230
232
272
163
169
191
177
187
175
203
245
236
202
154
213
207
210
112
200
196
206
187
214
261
204
154
171
212
138
201
262
145
258
264
217
230
277
187
133
195
223
168
170
212
195
190
192
144
284
187
202
172
171
129
242
197
152
220
208
190
240
253
248
183
190
215
219
218
283
175
193
170
231
194
204
196
211
206
194
192
192
183
225
211
157
197
232
232
224
215
180
216
204
224
244
209
187
162
209
181
172
239
199
171
236
188
229
208
190
163
181
223
253
211
223
228
190
180
172
222
194
173
222
227
210
212
198
170
220
199
195
183
212
125
224
196
215
178
146
192
205
200
198
161
197
236
188
208
190
105
194
182
225
185
206
189
234
212
152
156
255
200
200
219
217
183
221
233
241
176
189
243
157
175
183
221
221
278
204
199
170
201
180
237
194
194
204
194
208
179
188
139
158
188
175
166
235
227
213
206
177
198
177
224
137
163
213
199
262
147
180
200
190
197
230
199
223
204
213
138
199
182
292
212
159
194
210
206
209
224
210
150
239
261
171
180
191
239
169
204
133
110
218
232
243
127
193
191
242
200
168
189
229
230
187
200
179
216
124
199
246
194
182
205
255
134
200
123
210
124
173
141
235
193
189
216
233
177
162
206
211
193
224
189
203
197
197
206
124
207
270
198
172
235
171
236
214
182
234
161
267
220
248
240
144
241
129
239
195
185
143
215
174
201
205
209
255
171
228
212
225
195
181
205
189
195
213
156
245
154
155
186
217
234
178
191
221
158
163
215
238
202
206
169
191
253
204
170
204
291
174
197
197
222
179
267
210
203
236
183
196
264
188
225
207
176
206
220
209
167
213
171
256
139
193
213
211
202
146
244
249
273
197
178
187
189
189
187
181
149
221
171
179
255
212
215
199
264
226
185
236
223
238
205
188
131
195
163
203
182
197
189
181
196
211
191
170
161
169
213
195
95
214
231
227
245
213
204
189
215
132
190
251
215
234
202
197
227
165
212
191
205
173
200
229
204
161
171
111
165
237
162
197
183
209
182
215
155
231
267
181
163
215
206
264
156
180
211
211
160
210
180
215
141
249
158
197
184
212
286
217
184
192
171
184
233
152
223
246
199
194
173
259
230
225
182
131
195
134
168
208
191
200
182
213
235
244
172
173
229
199
169
187
240
148
201
206
230
155
174
220
156
168
200
128
209
221
236
276
171
255
160
189
204
237
252
201
161
297
259
148
171
233
244
179
200
268
200
248
146
202
175
221
220
150
188
167
216
247
193
152
202
209
184
194
160
187
178
220
171
197
238
199
184
159
207
228
239
202
196
176
188
195
212
165
235
174
244
233
205
96
205
200
224
150
196
226
258
115
203
230
174
220
252
226
266
204
253
174
259
241
208
200
191
153
230
157
196
182
205
229
156
189
188
214
166
181
192
229
134
237
173
221
230
233
204
202
214
131
171
194
227
214
209
163
180
249
193
263
267
173
151
178
200
163
218
200
201
189
205
203
175
129
210
210
128
131
217
194
243
209
187
135
169
230
237
194
199
187
243
182
178
186
171
177
165
228
246
148
210
239
208
220
176
203
186
215
203
186
170
189
196
231
189
153
186
186
190
246
175
211
281
187
237
171
139
234
181
213
217
203
246
160
256
219
237
194
217
226
223
209
232
147
210
197
223
250
197
235
200
177
193
196
236
177
210
165
199
198
178
168
203
141
183
174
248
176
207
197
189
185
209
170
216
243
153
205
211
150
228
181
234
257
174
190
184
169
190
226
208
187
210
174
256
231
185
159
235
257
164
139
207
236
169
195
179
238
239
199
166
206
256
203
193
131
160
173
133
222
173
218
212
229
210
187
211
221
199
187
159
215
125
201
227
230
184
210
195
177
247
242
213
211
187
265
223
209
216
196
217
244
207
172
147
229
237
235
172
189
209
211
233
201
256
237
214
286
173
144
225
239
186
211
182
171
224
206
196
208
194
216
209
162
239
189
205
212
202
106
238
221
224
195
208
214
218
213
215
167
174
238
239
280
158
183
185
212
140
219
134
212
226
211
213
170
234
199
177
138
184
213
146
183
158
225
195
196
237
206
219
216
193
208
132
178
241
188
230
190
202
205
149
158
200
226
191
239
200
222
190
252
196
199
214
174
153
172
234
254
224
229
261
157
235
225
192
124
195
206
180
157
226
192
278
255
147
181
237
158
234
188
195
231
227
187
164
227
229
210
274
250
194
192
224
179
227
206
189
239
212
232
182
149
270
184
192
271
138
142
148
214
219
194
160
126
184
206
177
156
254
152
305
230
154
171
175
229
198
206
144
235
188
247
221
280
165
159
202
239
176
245
249
168
222
149
183
259
201
190
209
206
222
116
203
202
227
216
180
238
231
199
207
217
153
173
241
230
182
198
225
191
141
211
192
236
237
158
159
178
172
203
181
219
173
204
158
203
197
207
179
214
240
205
206
227
240
251
213
243
191
224
211
196
181
199
244
184
171
174
184
199
206
190
227
187
202
160
195
204
245
193
144
160
207
187
215
218
257
278
199
243
176
122
140
246
204
210
198
129
130
174
161
181
191
163
271
212
143
220
157
214
190
229
226
224
150
215
197
242
156
198
227
235
142
192
225
192
210
180
217
208
199
139
205
257
240
193
139
137
215
216
182
213
250
190
153
175
168
218
162
210
180
147
166
160
193
231
252
204
209
233
237
233
235
184
217
232
244
202
230
167
238
186
263
177
220
247
180
225
165
196
228
236
151
204
217
176
226
223
187
187
158
205
152
209
184
187
178
151
202
155
224
184
207
165
225
119
214
170
174
231
139
215
235
196
240
242
219
209
181
227
270
202
156
285
225
174
190
209
177
208
249
164
250
265
227
167
233
283
226
212
191
168
159
179
239
168
160
194
219
217
259
206
217
213
268
225
239
151
153
192
211
221
212
207
215
210
238
204
262
210
204
217
202
231
226
238
223
156
205
176
230
147
204
204
206
160
206
194
230
217
149
237
145
241
229
172
233
192
197
163
176
171
200
229
231
217
216
182
187
206
216
176
210
178
198
214
217
210
197
259
272
172
249
225
165
227
183
227
156
202
194
238
176
177
223
204
277
192
128
195
125
146
215
213
230
195
204
242
165
209
214
204
142
150
191
230
225
184
216
237
255
267
210
207
174
177
202
192
262
164
206
238
250
194
220
201
224
278
209
183
203
208
146
104
171
194
170
263
255
190
228
181
176
131
148
131
199
208
206
178
178
184
150
246
189
170
144
193
161
247
116
223
168
226
188
176
206
231
144
182
222
119
110
250
240
112
176
158
192
178
250
227
164
172
191
188
180
160
155
221
214
216
255
201
222
205
207
181
229
151
222
221
222
185
188
179
165
193
170
169
187
141
208
291
219
222
186
167
195
187
226
213
184
191
176
203
213
157
265
201
184
194
250
244
220
173
227
192
245
209
135
175
159
191
248
255
178
199
207
186
169
188
190
186
279
212
253
219
198
197
245
186
168
168
208
219
165
207
233
181
149
188
190
166
173
251
192
241
171
175
208
274
190
274
197
142
193
185
191
268
246
222
138
218
173
187
207
234
218
181
225
251
150
204
217
214
181
189
94
214
238
194
222
179
150
203
182
247
200
177
237
220
189
144
164
208
137
175
218
203
107
181
187
180
184
220
204
136
262
182
248
195
246
254
189
200
182
223
207
247
184
108
190
207
241
229
178
232
209
204
232
201
246
195
210
219
158
205
226
246
195
162
176
201
205
164
188
156
211
214
184
171
144
197
176
162
203
211
180
189
244
234
167
185
176
164
193
150
139
184
179
241
260
221
222
195
236
174
205
173
187
240
252
224
158
241
146
166
248
206
232
200
247
167
192
173
191
198
219
142
200
171
255
249
156
209
112
209
269
247
183
221
247
202
262
231
216
237
187
235
158
266
170
215
220
233
208
154
230
216
199
263
269
127
229
211
234
206
229
195
194
199
214
206
209
205
163
212
163
240
251
179
299
177
204
208
222
211
241
156
192
248
158
214
149
120
156
217
233
207
247
178
215
239
175
139
229
199
159
276
222
159
179
218
226
192
226
193
236
174
259
234
220
156
111
123
260
160
177
198
181
239
254
219
249
204
194
222
232
212
212
202
228
239
231
242
198
185
199
240
171
226
274
133
226
220
150
155
194
191
179
207
189
183
204
112
218
151
230
164
226
188
177
170
218
193
193
184
245
172
230
222
194
207
200
200
234
251
190
159
169
166
182
174
245
190
178
251
198
214
192
230
171
192
209
212
218
192
222
138
218
213
232
211
141
202
229
170
201
194
160
234
170
214
213
234
176
182
214
138
176
193
251
239
168
206
195
124
168
230
242
202
221
195
214
141
219
178
222
212
198
155
210
226
203
228
294
201
232
182
235
228
193
134
193
142
166
208
211
230
214
251
125
196
212
197
208
175
142
152
190
137
274
262
203
196
174
238
208
237
230
179
139
187
181
175
154
144
161
180
176
159
218
203
176
239
212
147
204
191
186
185
213
188
229
220
224
164
248
209
192
61
168
150
152
143
206
255
168
134
237
157
159
170
173
181
203
212
202
209
196
235
155
219
178
212
255
189
250
192
187
286
189
189
204
171
201
186
200
235
175
129
215
185
213
152
165
166
165
208
171
214
203
174
186
179
177
213
162
265
203
196
181
186
181
182
192
190
135
239
207
135
170
162
142
245
219
178
232
162
207
244
216
193
209
202
195
138
235
170
192
210
181
216
205
227
200
198
232
206
208
164
228
150
244
143
199
242
206
227
218
255
194
165
231
177
184
217
165
167
218
205
220
203
203
204
184
243
210
180
255
143
217
229
207
240
122
173
195
190
190
168
201
192
237
197
238
177
169
189
191
234
278
174
193
169
233
206
187
132
212
205
208
159
167
223
176
224
138
213
175
204
266
207
246
205
199
274
217
182
192
202
233
228
160
228
217
166
225
181
242
191
210
132
184
233
150
249
234
200
208
193
138
213
181
192
244
145
211
279
240
165
154
172
169
221
138
246
179
197
181
206
229
213
253
137
168
159
215
227
257
231
191
161
208
246
171
179
241
227
248
209
207
171
183
195
197
206
165
213
198
154
178
193
197
223
196
162
198
195
181
252
247
237
220
201
167
241
195
227
172
225
177
184
205
199
170
160
221
174
230
266
232
231
181
220
222
200
252
222
161
255
259
232
222
223
206
158
185
228
173
240
166
213
219
191
240
154
201
217
151
238
204
224
109
234
223
206
219
222
211
238
189
229
262
200
211
177
244
245
235
207
161
154
219
178
179
213
181
179
233
204
202
247
175
200
153
200
227
238
240
180
214
200
208
179
168
183
254
220
229
214
128
229
188
129
173
196
209
147
154
145
200
174
252
151
168
240
116
158
146
215
150
177
212
199
160
141
213
211
181
237
156
128
175
213
191
185
159
224
254
232
223
166
210
161
167
187
262
238
230
192
195
169
240
245
167
160
210
188
226
140
168
210
190
252
149
202
156
147
200
232
175
211
205
219
189
202
162
179
243
187
224
195
156
161
221
225
218
223
209
255
154
172
250
211
212
217
170
179
199
228
182
233
158
241
135
218
226
220
215
202
176
208
196
221
236
229
219
131
166
258
270
192
274
246
174
241
191
200
219
173
242
231
173
187
227
213
204
230
227
177
191
146
258
228
232
168
208
185
213
182
174
216
147
199
206
224
219
238
147
254
164
182
245
148
235
217
242
164
217
210
212
191
169
194
146
270
242
146
185
155
235
177
237
158
141
207
225
180
246
212
203
214
185
174
211
199
225
192
252
179
183
179
216
190
187
251
190
201
221
239
182
240
209
167
180
206
135
205
171
199
148
216
99
185
195
171
145
202
236
227
213
219
208
193
201
213
238
203
172
213
222
147
201
207
177
160
210
261
112
189
150
220
165
158
212
234
235
235
261
180
226
184
199
234
190
235
212
194
237
229
190
181
218
209
228
226
161
192
205
185
185
224
154
217
184
282
227
187
214
235
209
239
176
223
243
194
163
225
212
204
205
188
247
241
189
186
192
211
133
210
220
167
169
244
237
232
241
184
215
237
225
224
203
217
286
172
203
180
249
150
273
176
147
205
186
200
204
196
269
216
218
180
179
158
165
173
156
194
206
205
198
185
197
249
191
196
163
213
208
155
166
224
169
186
156
169
265
181
232
155
224
180
217
140
210
217
205
208
168
186
185
216
157
169
219
199
193
220
270
205
223
221
192
219
180
146
281
191
229
219
182
219
173
199
201
257
174
183
190
200
241
253
217
211
230
239
215
219
251
292
224
220
159
167
190
210
207
215
152
250
238
270
159
163
209
136
147
175
245
185
184
145
277
151
231
240
184
182
168
192
224
211
190
213
178
161
234
166
175
216
197
169
187
270
200
196
246
161
147
229
222
177
237
265
158
156
209
178
172
232
230
179
175
172
247
212
213
165
151
123
253
226
244
204
183
205
219
217
99
224
223
136
173
178
284
194
217
165
238
162
226
212
102
211
232
162
200
206
180
191
225
217
181
230
160
170
166
178
216
208
235
160
218
168
207
225
223
160
175
187
221
201
187
182
202
180
217
217
215
184
208
196
180
177
162
226
209
203
225
210
159
154
225
185
163
209
222
180
177
245
241
204
204
221
207
244
240
219
204
135
199
139
174
215
199
231
213
169
182
242
195
242
190
200
147
221
214
191
260
215
188
162
146
218
206
150
222
152
181
213
243
214
226
185
185
189
174
264
70
203
165
202
249
186
182
171
289
197
257
198
163
144
204
234
226
169
199
207
181
184
205
126
209
197
208
193
200
235
136
252
228
181
170
197
205
205
208
201
237
180
243
210
195
183
178
169
188
217
130
196
134
159
153
185
211
174
170
239
152
202
199
174
268
235
238
211
190
191
198
214
175
211
228
194
170
219
182
196
232
187
211
129
202
197
194
244
192
199
197
268
229
171
116
268
175
186
168
282
134
205
178
171
225
179
165
121
217
204
196
153
146
227
257
214
192
198
239
230
175
203
180
249
218
175
235
184
199
221
200
248
175
227
207
194
231
205
254
243
202
148
192
167
160
182
193
259
166
182
185
248
161
158
161
207
186
239
190
194
267
172
192
296
179
170
207
207
219
256
209
211
182
174
236
257
202
222
244
223
220
168
214
170
223
224
194
168
233
153
186
200
220
227
212
197
207
198
208
219
123
190
223
241
116
199
152
168
162
208
234
232
239
159
187
155
206
221
179
218
206
228
233
169
151
224
154
191
198
220
191
209
238
215
152
214
206
153
179
169
248
215
206
236
200
147
184
237
248
223
221
204
283
181
195
245
199
194
236
193
159
235
273
268
148
159
229
208
171
152
185
182
198
231
190
184
144
161
199
211
148
173
161
199
220
200
220
247
153
230
189
230
240
140
217
249
182
158
246
175
215
204
223
240
276
241
213
184
198
243
197
197
178
187
231
211
238
186
212
199
201
161
151
272
165
184
232
186
181
215
163
212
252
183
225
181
243
172
171
160
263
141
193
237
194
204
234
207
228
183
173
207
163
217
152
231
200
212
193
180
203
203
151
216
174
205
128
197
165
173
245
202
165
121
132
226
150
176
138
224
132
238
271
171
204
196
175
199
205
206
204
163
230
130
171
187
235
251
171
188
242
154
180
211
223
195
199
165
185
197
248
163
146
207
218
278
202
171
212
146
233
178
181
229
278
114
191
181
205
225
206
171
193
233
201
182
206
153
150
221
175
196
175
250
234
169
202
219
209
234
214
172
195
247
188
184
250
150
171
238
182
202
234
177
138
209
213
146
241
229
231
244
227
203
237
188
216
188
232
218
162
203
219
161
238
208
234
258
194
194
196
236
227
190
170
195
159
201
126
191
229
226
231
164
205
185
233
141
213
171
148
211
154
199
197
176
207
200
229
206
136
160
172
164
234
255
174
210
180
177
189
128
212
234
243
232
233
205
189
205
198
237
206
272
178
215
171
248
245
178
174
231
205
229
216
206
212
204
166
219
181
226
205
232
208
210
224
226
224
215
206
209
231
199
198
211
214
192
259
180
163
190
257
277
148
235
209
225
234
222
137
221
190
164
242
238
211
234
182
251
224
261
211
208
194
238
178
251
176
253
198
233
179
203
192
212
216
197
234
184
211
204
203
206
225
179
160
179
161
227
177
153
181
190
217
170
211
141
154
195
234
246
213
220
259
138
209
224
136
198
259
203
231
243
216
169
177
241
241
228
251
240
241
211
232
231
165
193
215
247
232
197
181
207
218
237
202
198
280
265
218
115
203
189
213
194
180
214
178
149
161
254
237
207
215
180
201
109
202
243
212
243
237
241
206
196
221
215
193
242
242
180
259
193
209
197
208
188
203
177
141
196
221
242
181
227
192
198
183
259
208
231
232
203
233
130
214
175
183
223
178
247
220
132
152
149
224
259
158
267
172
218
233
226
199
242
205
237
207
191
225
216
153
182
154
201
197
228
131
153
194
192
188
183
178
201
147
198
211
184
208
183
199
199
188
234
166
260
196
168
162
180
200
207
162
192
239
217
266
192
145
212
163
143
133
221
233
227
179
220
176
149
176
210
159
213
127
244
222
235
191
193
209
162
227
248
161
226
173
177
188
180
203
188
202
186
244
232
201
186
233
160
165
238
237
252
176
130
239
236
208
240
147
172
204
148
164
173
137
199
180
245
231
168
187
209
131
197
200
201
201
248
239
200
255
162
197
201
186
177
238
220
236
261
140
194
209
186
206
250
126
197
144
234
235
132
193
216
239
151
207
165
240
245
222
174
235
162
183
158
176
161
203
210
164
238
220
191
224
192
241
223
204
246
187
151
228
238
196
188
175
185
271
220
186
164
178
276
238
204
206
212
228
185
224
178
204
162
186
178
158
183
157
223
235
189
199
178
213
196
226
184
190
183
227
244
173
214
195
195
173
134
201
163
206
231
245
200
235
254
184
179
233
130
270
146
195
177
185
196
183
160
186
241
197
127
205
204
198
247
178
176
193
205
131
164
235
152
155
248
221
225
261
193
166
250
246
244
193
225
203
166
213
207
195
215
182
261
233
210
212
245
189
262
190
165
262
176
253
178
182
226
235
189
147
225
209
213
245
266
223
248
245
202
187
203
243
194
208
220
182
217
198
143
196
158
239
173
209
206
185
167
204
217
203
167
238
258
246
202
195
235
206
237
246
259
239
213
206
255
116
178
159
169
181
180
163
189
263
207
276
225
192
189
189
181
169
202
185
225
110
188
117
217
206
190
224
175
264
170
185
171
199
218
137
188
240
255
217
230
288
160
215
207
163
214
215
201
208
215
221
135
245
219
225
163
189
267
228
138
203
225
196
172
139
228
186
156
241
241
149
208
182
194
183
210
252
267
200
242
157
209
160
171
238
241
205
241
199
222
231
160
216
160
174
173
227
171
228
184
183
225
214
179
187
216
151
227
191
172
179
246
222
218
207
246
234
245
204
114
230
184
144
139
216
226
198
192
190
155
189
196
162
260
239
199
194
231
202
210
196
192
173
217
210
206
154
197
154
155
135
187
110
213
161
250
236
188
143
226
209
199
202
217
215
251
166
219
179
177
232
249
133
207
267
181
170
251
235
220
276
168
201
177
195
186
197
213
143
159
168
206
235
226
240
216
178
193
237
190
213
174
225
161
198
174
228
159
232
176
147
204
215
204
183
207
214
185
200
222
254
173
170
165
196
209
206
177
198
244
148
157
196
195
236
175
268
212
232
192
266
196
234
223
206
195
170
229
233
211
217
198
185
147
154
148
223
171
167
219
210
220
211
128
173
244
212
221
198
214
183
254
176
245
170
225
215
198
206
199
217
176
259
207
119
213
193
191
161
168
158
216
247
229
199
197
177
228
194
241
127
259
178
138
194
230
191
182
175
195
194
219
198
227
174
191
229
207
287
201
180
228
237
242
180
195
222
188
247
211
152
271
202
201
208
231
254
212
175
174
144
221
173
177
201
250
220
225
202
194
135
196
181
237
185
183
210
208
199
189
165
151
179
181
205
199
225
186
173
169
177
234
159
186
199
192
222
207
211
196
228
211
229
223
196
261
203
189
233
197
175
234
259
215
182
280
141
160
220
182
203
166
204
185
131
244
190
174
139
230
231
152
150
183
186
133
242
176
219
207
271
241
104
243
181
194
218
182
189
235
182
149
209
203
228
206
168
194
172
211
191
242
223
214
217
154
210
216
172
160
184
230
235
195
211
200
214
189
244
214
191
214
136
226
173
187
217
214
179
237
166
244
225
213
234
188
169
263
227
249
202
193
200
254
262
155
119
131
203
198
200
245
195
240
259
201
147
189
208
237
162
213
230
199
249
270
206
213
232
196
210
199
238
243
177
217
222
150
271
225
183
209
261
250
254
215
208
217
144
245
200
192
204
235
187
224
209
231
198
209
228
145
190
216
187
210
174
192
219
196
195
234
192
207
255
227
205
148
166
186
157
193
202
173
188
199
163
194
227
229
158
247
233
201
188
219
209
170
193
199
229
227
225
208
201
232
196
201
224
170
246
195
222
262
181
218
177
208
229
222
194
140
193
228
245
226
194
177
198
218
190
245
213
201
167
161
229
233
215
243
198
242
234
193
143
192
178
181
265
225
123
208
196
167
215
228
252
178
261
203
172
217
161
248
251
236
217
227
151
229
252
154
184
197
248
203
154
233
163
160
248
251
281
192
248
238
186
184
176
162
202
215
194
234
216
222
186
213
206
232
207
209
136
186
237
199
117
218
174
232
204
232
194
181
167
194
190
167
223
235
211
245
158
212
240
218
211
152
218
266
173
217
160
207
229
200
191
200
189
171
170
195
254
215
200
164
182
197
244
200
268
167
253
239
138
277
251
182
177
217
233
162
235
265
169
180
185
190
201
191
233
195
191
163
223
214
208
238
200
181
187
137
196
119
187
179
196
126
278
260
217
233
219
198
198
212
204
224
172
163
187
196
182
241
197
196
230
191
160
119
168
155
127
270
186
194
152
207
218
182
162
179
162
172
229
190
227
174
229
240
242
229
201
191
179
181
152
220
190
154
210
139
207
181
204
235
251
241
190
220
232
228
182
205
238
246
209
172
288
214
226
188
228
168
199
142
228
152
220
232
207
215
199
230
188
198
226
234
219
191
159
199
215
181
166
238
213
213
147
181
202
228
194
165
141
169
179
233
162
233
181
233
176
186
240
228
197
185
230
127
223
193
213
250
182
178
178
222
215
188
246
188
204
195
132
160
213
178
230
207
227
262
202
167
189
202
156
177
201
228
199
189
222
222
191
285
208
246
203
267
152
162
205
209
212
221
177
210
228
218
234
227
208
248
160
130
223
108
210
222
145
167
228
183
143
168
203
219
196
198
181
240
201
195
175
183
171
193
195
171
221
181
204
177
121
229
190
223
222
121
155
233
165
225
212
256
210
197
219
225
196
160
114
227
194
223
187
213
126
214
240
166
215
180
188
147
173
233
212
236
132
220
215
193
254
219
222
224
205
191
197
240
201
198
160
211
156
225
220
199
202
210
166
264
229
163
180
179
213
191
125
218
222
137
245
216
190
252
222
149
169
153
186
190
167
238
192
245
202
114
212
203
147
269
174
193
174
233
270
200
255
180
235
196
231
188
249
223
257
176
169
213
189
194
206
198
143
173
194
171
203
192
240
179
219
288
193
209
243
144
235
187
148
189
209
157
170
133
209
211
190
174
179
175
200
232
245
218
179
265
197
237
184
221
241
224
169
182
224
206
195
231
200
203
171
213
208
167
131
234
112
223
200
200
246
181
190
210
271
178
190
172
209
183
237
277
181
227
181
261
150
208
225
256
173
220
204
170
148
224
176
208
171
211
240
118
208
157
188
165
213
262
158
252
100
187
239
226
223
183
217
212
208
227
138
212
220
216
182
228
149
199
171
236
192
168
200
218
149
199
178
266
167
240
116
191
209
165
205
192
169
132
228
196
200
200
276
198
189
179
157
201
148
249
213
229
211
216
198
251
215
225
270
164
195
130
214
189
216
151
155
229
208
165
252
236
223
224
245
193
208
184
212
236
173
182
192
207
177
148
172
191
263
269
183
155
216
218
235
194
207
169
142
181
170
154
197
224
213
206
196
184
194
253
232
202
224
141
216
219
170
160
235
217
248
230
214
212
228
256
181
176
152
190
225
162
222
243
186
216
195
221
176
215
203
236
247
204
117
208
170
181
241
231
204
146
181
154
230
167
230
254
185
202
239
215
218
216
233
224
236
242
180
230
317
163
202
209
194
232
212
153
200
186
265
251
165
169
164
225
188
196
229
232
160
235
171
204
129
241
219
173
175
243
264
187
171
155
207
183
176
253
198
210
257
176
268
190
233
216
203
252
167
207
195
228
193
171
197
236
231
246
166
190
209
217
215
197
226
198
200
176
161
226
177
256
196
241
230
205
117
270
218
142
172
197
201
152
221
216
200
234
179
175
240
193
199
209
245
162
242
235
252
187
218
182
238
160
206
208
227
218
276
247
250
206
232
176
185
212
235
140
205
209
143
183
185
209
188
226
263
206
199
153
241
216
218
179
216
192
231
249
217
191
191
202
212
259
151
195
244
189
126
204
205
174
201
187
196
155
154
259
194
234
195
229
128
214
204
167
139
215
189
156
231
266
173
168
178
203
177
209
216
220
154
188
211
195
194
205
198
167
168
227
145
178
204
224
150
228
185
157
184
233
160
181
197
198
167
241
191
204
184
193
208
204
263
143
231
260
198
231
221
155
153
168
203
185
224
205
137
198
223
185
218
210
196
210
229
145
229
209
192
166
205
209
197
228
247
202
203
225
226
220
126
253
210
180
206
236
170
247
165
171
178
167
226
155
220
211
136
203
217
200
191
166
206
166
172
246
206
242
187
229
290
225
202
205
177
226
201
214
199
230
155
224
163
234
218
242
185
226
219
202
221
213
176
186
254
222
172
205
226
140
181
133
219
209
206
182
160
232
240
218
124
283
185
182
272
188
162
193
200
214
187
187
167
128
189
234
226
213
166
160
252
195
193
222
218
224
192
174
195
168
188
197
253
228
218
169
262
244
203
228
176
225
180
126
220
199
217
242
214
182
274
185
244
212
239
202
192
141
217
201
215
165
178
172
227
226
206
207
200
153
199
181
195
252
112
221
217
229
212
186
277
213
245
223
231
187
162
184
136
234
252
168
182
192
229
268
165
202
174
240
188
240
152
219
145
199
236
221
193
199
245
225
207
175
201
179
192
208
230
141
199
183
198
216
254
156
192
175
174
162
191
203
232
133
188
194
191
231
238
194
214
179
172
178
211
198
184
198
183
186
210
242
237
200
141
177
204
180
138
207
214
190
219
173
187
221
203
210
220
172
133
228
229
211
169
182
219
186
251
231
210
196
153
235
236
218
189
234
216
224
193
184
197
222
253
213
221
207
232
193
166
132
232
225
250
192
193
215
176
199
204
204
148
198
281
201
196
162
234
167
200
225
204
231
153
179
131
223
215
253
217
236
174
196
152
176
188
199
157
170
226
208
181
251
236
148
192
215
213
214
192
180
245
176
167
168
158
172
165
177
133
166
157
176
203
217
195
229
236
214
226
155
253
194
207
169
213
188
182
191
257
168
196
233
179
161
176
194
201
205
199
211
177
215
156
213
174
213
223
199
194
244
185
217
259
257
224
243
223
181
169
225
199
241
190
200
202
166
240
219
187
250
183
152
175
194
196
203
208
181
170
198
251
163
244
173
209
253
205
187
205
149
137
187
205
203
156
217
194
245
150
145
244
236
211
199
190
241
222
260
223
241
228
222
164
172
158
190
165
189
243
237
208
137
219
124
177
142
199
219
186
209
198
226
216
173
181
185
143
208
170
242
212
195
212
120
224
193
220
250
270
195
206
195
209
215
161
180
175
242
196
261
143
274
164
186
198
179
189
185
217
189
174
243
238
194
244
184
147
180
189
217
224
172
178
193
228
189
222
228
203
210
286
241
199
157
245
200
203
157
171
181
196
171
219
179
173
187
212
189
194
264
167
219
173
154
187
150
174
227
215
230
134
241
243
207
199
197
208
191
219
222
228
154
186
213
186
166
144
212
214
165
213
203
203
166
203
224
235
194
249
190
192
215
233
140
188
162
206
197
164
258
182
239
219
241
138
219
221
149
247
195
278
213
187
155
180
154
228
249
179
192
155
170
238
206
196
232
233
257
218
219
215
191
165
196
213
240
246
145
178
213
166
262
178
216
257
210
229
258
227
187
208
202
194
196
272
213
238
166
152
161
227
210
219
202
257
243
249
235
149
220
227
213
222
204
233
178
154
180
258
205
225
180
179
219
196
255
211
188
188
174
176
185
238
155
214
178
216
224
184
185
170
179
167
215
247
140
235
217
210
231
230
132
227
192
161
219
216
212
167
117
168
174
242
199
239
179
133
246
250
206
218
197
240
202
176
264
190
226
200
233
213
142
197
199
251
161
226
122
263
256
192
154
223
209
99
187
209
203
242
203
194
204
204
185
187
181
199
227
212
194
223
184
201
176
168
218
232
93
267
215
94
158
222
203
169
187
218
202
196
228
235
214
203
173
163
149
237
236
132
205
222
190
148
221
223
194
204
124
232
176
228
222
150
225
226
228
214
225
232
204
195
185
159
223
265
233
218
223
207
180
227
256
191
241
208
208
227
142
244
173
218
217
172
212
152
188
179
261
138
212
184
161
132
208
282
225
106
267
228
179
192
209
196
146
140
207
109
210
193
186
174
199
227
154
155
200
154
173
196
195
167
229
201
203
199
265
158
174
170
163
201
214
270
218
113
191
223
218
231
228
188
172
158
192
249
262
198
153
166
212
127
179
171
242
223
226
187
259
206
204
261
183
192
181
169
149
213
182
228
254
192
180
160
209
154
155
166
224
203
243
179
251
142
245
186
216
227
242
234
199
174
238
218
211
162
203
255
198
165
220
156
230
162
203
228
246
210
117
242
187
182
166
189
245
199
198
209
231
231
183
168
193
156
186
213
260
161
154
245
218
171
197
188
224
208
168
233
206
162
129
187
188
194
191
231
177
260
187
192
235
155
202
178
153
225
217
199
167
252
225
195
178
215
265
201
238
260
235
170
209
209
179
175
163
230
201
173
178
189
249
211
156
181
161
248
236
167
170
152
216
250
240
240
169
248
173
209
214
251
199
169
175
162
206
233
304
179
180
174
190
216
204
221
197
195
197
210
229
208
191
199
233
153
226
221
162
184
263
249
178
196
201
203
250
193
230
206
268
236
186
181
255
244
259
202
216
181
232
209
233
205
172
218
213
201
194
181
192
189
213
247
206
159
230
206
226
189
217
176
184
183
172
204
216
189
229
229
257
203
217
261
212
250
167
241
195
161
255
234
180
197
208
271
192
241
205
195
232
184
249
186
179
195
217
232
223
201
142
247
268
249
149
178
233
161
219
182
116
209
127
253
232
211
218
274
157
178
139
220
187
215
209
189
243
213
214
193
193
179
161
211
178
188
254
162
240
162
210
156
255
165
192
151
110
165
225
235
200
172
166
170
231
198
152
206
109
177
202
150
156
157
249
234
192
177
200
115
201
187
253
252
257
202
227
213
162
225
242
196
220
225
182
218
194
263
197
242
169
183
162
193
215
122
248
233
195
193
190
192
203
196
209
148
217
167
261
249
148
282
230
208
160
204
185
157
210
262
118
251
234
216
218
214
218
219
178
212
163
176
154
248
227
118
191
234
228
158
190
292
194
252
179
216
217
257
217
260
224
238
175
142
204
197
275
224
207
153
161
151
178
203
160
238
174
167
214
192
224
181
178
225
238
186
184
206
235
203
202
146
196
170
232
202
207
175
236
148
175
206
256
195
211
129
203
143
119
217
226
242
185
146
166
202
179
106
180
156
200
233
155
222
233
148
217
151
151
208
237
221
249
219
226
207
192
150
236
238
241
184
191
243
219
174
159
228
225
254
268
241
93
225
171
128
243
214
258
174
183
218
228
231
234
179
208
139
204
173
219
235
205
210
216
206
212
197
157
147
144
227
222
258
127
241
168
220
215
164
199
224
194
278
217
218
175
210
160
198
210
144
190
183
240
192
247
193
202
225
221
230
176
243
201
207
175
246
211
189
179
156
130
165
301
186
185
240
213
220
175
189
240
183
255
222
193
207
276
265
232
138
221
207
192
264
168
255
219
216
77
240
204
213
220
238
216
217
154
235
235
245
157
181
199
246
197
161
175
176
237
236
175
258
172
229
191
255
189
173
240
228
174
111
203
181
173
252
187
108
172
197
221
212
225
180
166
201
201
153
166
241
185
187
180
192
220
231
217
269
173
156
165
210
182
263
251
227
195
248
211
205
181
184
246
183
167
189
209
228
112
204
235
214
158
211
225
144
227
156
203
202
223
185
252
191
193
207
213
178
169
246
175
176
216
170
199
159
165
235
198
183
190
234
206
142
206
193
228
153
188
181
188
194
234
140
182
206
207
188
204
175
166
183
178
200
207
200
223
227
210
151
168
241
223
203
144
157
229
205
234
203
260
241
201
201
228
225
140
244
241
200
186
166
201
190
149
131
154
214
271
266
196
126
261
189
208
214
175
191
167
189
218
173
151
163
228
190
231
188
201
223
212
165
184
219
194
186
233
236
188
191
161
180
142
192
189
191
216
186
228
104
197
173
154
242
200
183
207
182
155
162
239
191
196
180
240
270
116
205
219
164
234
219
190
216
291
147
197
230
246
232
202
190
209
237
207
148
147
198
191
154
131
182
197
216
215
257
188
201
199
242
164
220
168
204
215
243
129
141
218
260
177
251
235
205
223
194
166
204
199
208
197
186
174
213
188
247
205
205
181
183
283
194
185
217
253
161
149
207
184
200
221
232
233
228
195
205
201
120
155
267
165
214
216
259
174
214
195
131
216
206
202
164
233
187
212
197
173
197
209
233
230
238
135
172
157
268
228
152
263
233
192
242
197
241
120
243
157
156
181
180
181
235
223
256
209
207
210
196
193
187
171
225
236
167
211
250
196
194
204
167
238
248
180
223
169
139
194
217
132
225
204
127
247
210
206
236
243
206
219
201
203
234
186
210
242
202
210
257
171
225
212
249
206
177
183
198
236
155
209
146
197
255
180
188
232
224
220
217
226
202
197
183
133
211
141
168
236
223
188
241
220
161
249
233
261
224
169
253
244
192
191
235
224
223
225
236
175
155
254
164
230
221
219
155
182
233
236
164
176
238
258
247
168
208
153
246
200
145
163
223
166
200
161
168
229
137
203
178
246
238
231
203
226
257
198
175
189
208
163
237
161
217
192
198
216
122
222
243
197
202
211
199
215
185
203
269
214
204
248
195
172
182
162
164
239
245
181
233
168
229
225
163
191
290
228
123
236
133
171
224
163
156
149
247
148
205
166
216
208
178
193
171
211
202
276
236
191
219
210
167
277
237
206
163
207
262
186
212
155
209
203
232
156
223
148
193
213
228
199
186
237
168
194
232
243
243
222
153
215
185
162
215
214
182
150
218
225
233
220
182
209
185
176
234
150
172
222
216
174
280
150
210
153
216
226
206
185
196
193
113
205
151
172
283
225
143
157
194
205
276
209
210
137
148
195
214
108
200
199
267
190
207
190
186
250
182
218
225
180
242
197
230
165
220
145
198
229
200
243
287
232
188
205
203
226
190
187
194
201
159
162
164
228
173
226
231
164
226
233
144
247
190
187
176
214
199
130
204
247
241
204
209
211
179
198
223
220
207
199
241
212
203
186
199
234
274
251
216
197
233
227
149
214
228
212
182
210
158
226
185
186
238
248
179
270
217
221
215
203
214
261
235
212
245
211
238
164
226
244
248
223
258
150
225
191
232
194
205
176
198
200
186
208
175
222
253
152
220
262
241
218
168
199
258
248
231
160
206
171
183
180
191
214
167
208
218
170
249
181
148
190
185
156
262
217
249
211
207
156
181
211
190
228
182
188
207
193
212
181
203
172
178
168
231
210
261
182
224
217
214
210
184
180
172
232
203
195
193
233
275
216
210
194
175
141
201
225
185
248
155
219
237
159
244
154
121
173
165
216
198
219
173
212
189
270
137
190
244
218
234
202
139
140
197
210
175
186
198
201
189
172
180
252
200
203
240
186
221
201
229
208
168
195
171
187
206
206
179
244
232
218
232
209
191
203
217
229
205
213
222
209
190
232
182
234
239
151
217
181
213
202
187
212
171
175
208
249
257
279
228
193
148
162
252
222
229
226
187
159
231
215
215
174
242
196
162
177
181
179
173
195
242
220
219
210
181
202
199
232
200
171
196
210
213
243
169
149
246
175
133
207
198
201
215
214
168
245
220
162
241
228
220
190
222
213
243
259
210
211
224
235
264
190
212
236
186
187
225
175
178
219
186
203
207
218
241
234
210
205
129
215
220
176
178
184
205
233
116
202
165
207
215
233
189
247
170
231
247
146
250
179
209
217
222
152
212
175
192
211
258
202
222
197
185
230
142
180
222
243
191
195
233
219
225
246
232
155
203
219
170
177
175
188
177
158
215
211
182
193
143
219
230
272
234
193
115
240
242
224
219
190
200
187
214
220
249
160
202
242
191
205
147
248
195
270
202
199
272
196
216
185
254
138
223
149
185
194
236
163
202
195
145
189
230
189
237
221
175
196
216
191
211
210
162
140
162
104
179
137
233
224
187
229
230
195
214
135
203
175
229
230
204
198
197
250
168
251
249
193
193
163
138
246
228
214
157
199
240
197
205
211
192
174
201
210
198
250
257
152
184
236
229
160
254
216
197
215
201
202
200
222
186
229
214
202
170
173
146
180
197
260
160
199
129
220
262
238
208
218
229
175
177
211
255
105
191
217
211
200
275
227
223
144
185
201
122
199
180
168
132
179
216
182
198
245
222
217
208
259
226
240
206
167
159
232
210
245
236
227
159
227
185
234
162
202
198
182
223
166
195
198
246
262
166
227
234
211
225
219
166
232
146
218
172
167
129
186
208
225
189
198
124
191
223
208
195
203
171
205
234
127
151
169
189
223
227
231
219
172
234
238
241
201
193
174
268
239
191
207
178
206
213
201
185
220
267
164
236
210
231
119
212
148
232
255
179
142
220
157
183
241
202
184
210
136
240
181
173
224
218
201
207
233
175
162
208
186
199
151
192
186
226
278
226
244
164
170
226
184
164
166
187
228
207
176
267
259
193
252
141
232
186
138
215
211
235
209
214
205
122
209
196
209
221
210
195
242
188
229
207
184
222
168
209
216
226
224
177
194
145
176
236
259
275
186
174
191
192
182
202
209
179
174
204
236
212
219
198
210
160
203
232
222
216
245
208
197
214
238
199
159
187
241
194
247
240
140
234
160
179
195
213
185
230
239
194
200
204
237
115
223
202
261
263
143
159
226
255
239
226
247
201
254
198
153
201
177
212
208
233
160
180
161
195
247
194
176
192
223
186
248
225
189
216
209
141
185
136
231
170
224
239
237
216
187
288
233
267
162
243
239
215
210
189
183
235
181
220
194
181
211
170
169
189
181
204
222
201
169
253
175
162
189
191
209
226
164
187
227
231
196
228
210
189
176
205
197
220
227
230
235
174
227
175
225
160
172
170
195
217
188
150
217
208
166
190
138
220
170
156
200
207
181
236
202
262
173
189
285
268
215
229
182
145
212
210
169
228
231
250
248
180
225
236
209
247
146
257
205
223
246
214
121
248
242
209
228
144
172
183
206
255
234
170
236
178
235
163
232
224
154
201
204
214
243
223
196
197
178
199
170
156
155
164
248
195
247
143
195
226
134
158
175
185
158
196
246
145
164
181
178
220
156
150
176
188
196
194
148
222
194
181
148
204
197
208
209
209
233
217
202
180
202
153
184
235
189
238
155
236
212
211
193
177
233
221
175
204
133
240
239
172
150
178
157
228
226
238
120
208
224
223
222
152
198
274
139
186
216
241
173
201
167
254
198
221
212
189
116
174
183
247
208
219
169
211
158
219
178
233
214
200
174
192
228
164
211
222
206
193
229
255
201
192
181
263
172
232
166
202
203
178
161
199
191
240
239
194
173
193
149
211
261
253
170
187
250
217
208
192
170
205
235
271
204
213
227
235
142
219
199
179
174
233
271
258
219
247
162
179
237
158
168
204
155
211
245
229
165
235
199
176
179
178
193
175
247
125
178
182
217
218
154
118
222
214
151
243
186
215
259
189
202
202
158
256
245
208
199
204
167
172
147
272
226
233
274
203
133
195
168
244
159
223
237
180
137
218
240
203
158
107
229
238
170
166
229
207
163
217
206
203
216
210
244
146
140
219
167
264
180
226
186
208
160
227
231
166
175
265
197
203
255
216
228
181
174
170
217
196
163
160
251
227
176
183
242
182
141
145
225
218
239
169
234
225
144
236
232
178
147
210
222
214
178
240
218
257
181
193
193
139
230
225
228
159
233
169
242
253
173
213
142
177
176
163
174
221
182
205
232
209
132
164
162
241
166
238
149
185
183
238
239
222
136
230
229
226
204
229
215
182
140
161
167
219
182
206
208
162
207
229
187
251
223
217
204
229
230
193
269
232
192
230
215
171
198
217
204
164
248
153
178
206
212
180
223
207
152
152
182
165
158
221
220
167
227
221
228
187
198
228
201
224
130
218
206
226
130
158
177
191
210
236
202
230
181
183
207
176
182
211
231
210
233
166
164
203
167
197
214
153
250
189
227
230
234
177
157
224
225
125
172
140
183
246
179
224
259
271
215
187
205
229
188
259
136
256
270
177
154
234
237
212
234
214
205
286
193
172
232
267
231
166
168
187
172
147
147
223
249
216
198
196
165
234
234
166
203
200
172
151
181
211
243
171
201
231
178
174
244
246
198
178
196
243
213
229
237
198
221
232
215
188
198
161
208
162
191
199
228
245
263
163
151
192
195
138
205
183
203
184
231
197
151
179
247
172
291
191
221
254
258
175
203
181
205
276
202
177
195
200
216
166
179
221
272
161
180
180
190
190
179
130
148
121
193
211
184
214
190
190
156
196
245
218
233
202
220
229
171
207
176
194
167
235
216
205
196
167
223
204
188
218
154
199
163
99
229
185
154
184
260
226
216
191
190
129
226
188
183
217
231
165
172
254
190
187
228
220
189
193
240
222
234
237
179
191
198
142
161
187
213
177
197
247
170
180
163
141
190
180
107
220
178
263
240
195
228
225
124
195
175
180
211
214
213
144
191
219
226
155
268
236
198
216
186
179
170
200
212
217
172
211
222
191
241
213
155
176
203
175
209
220
226
188
182
202
229
132
249
201
238
130
219
174
164
252
185
166
196
200
200
149
177
135
137
159
204
221
176
185
170
159
142
239
213
181
215
234
184
203
214
225
141
213
164
205
269
156
199
234
240
136
198
188
236
187
216
201
190
203
179
171
191
111
224
232
163
224
211
200
217
186
181
181
207
203
191
190
154
213
218
247
202
221
130
230
240
251
222
175
217
194
145
121
230
201
123
164
221
139
168
176
266
150
197
205
204
264
199
191
161
225
224
194
230
192
203
287
196
244
190
206
260
194
195
170
151
138
231
181
189
197
204
141
212
193
235
254
208
235
209
199
160
194
170
181
123
200
229
207
131
247
223
118
83
189
164
224
198
197
194
166
179
265
242
250
168
176
177
146
185
223
170
223
175
198
205
196
194
253
164
208
197
229
265
145
156
196
190
178
203
185
178
220
193
141
277
174
203
150
160
199
212
279
223
243
202
229
254
159
170
172
156
152
183
179
228
225
215
172
179
185
197
196
194
135
162
194
170
188
215
220
167
206
191
246
208
194
250
198
234
156
242
190
152
189
164
205
223
206
218
121
249
242
215
180
173
201
182
165
174
116
233
195
178
182
270
182
152
247
178
188
251
155
118
241
216
240
160
171
208
201
236
238
213
190
175
205
206
169
180
208
127
200
176
209
166
140
169
210
232
187
195
151
177
230
158
245
249
224
181
211
262
214
216
234
251
202
135
148
149
237
143
247
225
184
219
198
225
178
234
143
238
246
211
194
238
197
150
257
130
148
120
164
214
201
255
247
197
139
192
169
153
231
189
213
209
194
214
226
184
169
214
211
250
206
268
183
192
127
196
269
225
270
166
244
153
241
181
199
202
192
156
196
188
139
215
251
170
196
177
224
153
199
196
181
210
197
194
230
240
156
192
192
214
241
185
179
177
192
201
234
213
140
171
195
209
150
242
184
202
170
219
180
234
202
179
191
177
210
220
191
269
224
221
129
198
261
183
203
211
248
274
258
148
249
176
210
234
205
168
201
228
137
220
92
140
201
194
208
226
123
173
221
155
190
170
195
159
206
218
152
123
188
204
144
192
240
212
158
203
249
139
163
210
224
253
148
199
218
170
231
201
280
183
207
221
263
236
263
196
205
233
193
181
238
209
223
215
260
186
144
224
166
211
180
193
262
186
133
212
205
163
205
220
195
193
215
173
198
201
227
236
248
205
238
227
192
181
205
203
203
177
252
160
205
206
151
170
260
227
195
187
205
239
206
211
239
224
215
161
278
174
176
187
258
138
115
202
225
183
171
285
224
215
167
214
149
194
215
212
194
218
135
211
176
243
203
187
235
191
113
215
178
184
234
235
192
168
230
259
235
240
175
166
207
177
222
190
175
179
154
246
199
225
203
177
218
222
227
197
187
205
192
266
235
209
210
201
136
181
278
197
203
256
272
172
206
221
206
172
189
155
216
258
164
189
176
241
190
199
184
228
218
183
228
195
229
169
180
229
175
204
165
224
230
249
228
199
226
227
173
230
162
236
188
96
198
172
204
137
179
151
165
179
232
214
175
199
205
238
224
223
198
202
239
221
216
158
188
231
128
165
261
194
203
170
240
206
279
259
222
179
184
212
249
191
202
221
173
210
239
161
167
192
187
177
195
116
217
205
287
175
156
263
182
208
154
219
207
174
241
179
185
206
201
262
248
157
215
194
149
234
219
160
204
286
197
198
246
236
130
237
179
210
231
238
159
157
225
170
217
128
172
136
203
141
201
245
262
199
147
162
200
255
209
150
167
228
216
231
203
190
219
164
171
132
143
192
225
201
267
218
214
181
143
180
220
216
213
227
263
137
204
165
208
206
155
220
226
188
179
254
170
184
227
237
195
173
110
133
203
220
218
210
233
180
179
178
168
168
270
197
207
225
242
174
176
226
184
152
179
182
182
143
199
231
185
253
239
258
123
223
226
208
215
224
175
237
212
223
215
237
187
196
176
249
146
225
226
225
224
188
250
226
267
217
196
225
162
199
147
194
188
194
231
205
189
199
105
216
244
162
195
180
282
196
217
179
216
172
203
157
197
218
209
181
175
203
236
230
191
206
169
238
231
186
219
195
214
246
215
227
169
166
190
227
197
178
279
197
234
145
199
224
244
202
173
205
145
165
203
160
213
133
191
176
192
207
161
251
183
228
120
240
170
140
170
169
160
172
234
191
190
202
211
186
226
187
211
177
192
213
183
204
191
195
231
212
236
193
206
187
256
203
231
147
150
156
186
209
183
150
189
181
223
147
194
273
228
161
190
159
206
282
174
202
213
168
220
197
183
214
232
176
210
260
156
216
245
152
162
266
163
233
214
150
189
173
223
209
229
153
231
208
226
201
255
195
158
258
167
163
161
246
149
245
220
222
162
225
203
208
185
248
174
221
160
206
193
170
238
218
225
223
207
158
213
174
215
194
200
247
164
260
238
128
225
206
130
223
134
141
172
216
199
237
179
192
206
219
199
175
188
211
225
226
236
248
208
244
251
249
241
193
199
154
197
188
210
149
114
236
226
215
206
163
206
208
147
190
170
277
161
148
217
238
210
240
192
218
216
219
179
182
185
203
181
177
188
221
150
216
183
186
212
226
226
157
193
198
214
188
190
282
219
156
168
234
203
209
179
243
218
183
218
147
220
184
202
249
246
217
196
211
196
138
227
208
164
172
213
186
239
286
145
172
196
177
225
116
254
202
158
207
230
190
190
223
165
226
180
229
211
203
221
224
183
183
183
163
233
189
212
204
164
224
144
252
287
191
137
237
222
188
235
210
161
189
232
163
150
221
144
200
204
180
89
227
177
214
231
190
208
161
221
207
203
214
197
237
153
182
199
210
247
167
193
212
208
232
197
145
220
227
170
197
148
220
198
239
228
241
172
243
163
271
182
214
242
156
239
171
196
199
256
212
190
224
150
246
165
185
146
233
200
201
166
205
217
292
178
173
197
195
216
255
190
169
228
252
127
120
211
236
177
228
181
237
176
224
176
214
157
184
169
194
227
138
176
172
195
134
194
186
147
213
225
204
175
199
183
215
254
226
198
162
196
232
167
214
208
201
232
217
218
204
177
172
192
178
233
189
254
175
206
180
196
200
220
190
226
198
157
182
122
236
234
224
179
226
167
261
198
197
129
208
209
212
233
175
175
188
223
225
192
230
175
217
164
183
217
190
228
217
197
160
176
156
226
188
275
192
146
233
196
250
210
270
176
196
205
200
214
166
204
169
212
240
176
216
219
165
152
231
248
217
169
217
166
119
208
165
181
226
156
209
214
193
228
249
184
172
228
213
251
235
138
224
266
184
151
248
116
178
244
240
227
197
192
242
184
175
183
199
169
215
189
109
165
230
256
240
200
180
186
185
210
227
206
199
103
161
241
129
138
181
219
208
169
181
170
146
140
215
150
196
229
204
196
239
185
195
196
232
182
167
214
176
187
244
141
179
197
191
166
156
225
167
141
204
209
188
151
231
220
171
244
171
149
165
223
221
205
157
159
233
167
210
259
206
167
197
148
157
236
226
194
242
216
201
153
235
175
211
162
239
159
186
140
236
169
152
152
234
180
196
235
153
286
150
208
213
148
256
198
161
171
198
231
231
199
206
247
141
271
191
193
229
190
197
219
182
200
169
235
187
265
171
227
176
248
201
245
259
154
227
209
255
232
159
199
235
186
211
233
172
152
262
203
228
211
178
174
182
146
200
197
216
164
209
195
217
196
128
142
216
194
189
264
200
214
208
160
177
209
140
152
193
208
216
234
149
225
167
228
251
212
202
156
204
210
191
179
172
187
260
210
165
181
283
201
235
196
184
175
192
216
171
166
237
147
276
207
220
250
182
255
246
202
242
216
250
208
239
139
181
262
225
271
223
189
255
204
232
191
162
223
199
200
231
218
120
159
235
204
128
215
228
253
191
185
143
228
226
162
262
176
220
181
157
166
207
178
276
178
217
182
165
173
207
174
211
215
177
167
255
170
244
189
205
115
213
209
166
213
239
166
229
209
209
188
140
208
211
193
186
223
170
211
207
213
231
188
192
173
221
227
221
203
185
129
175
214
203
200
191
239
255
174
261
194
220
115
236
143
125
192
207
238
240
166
147
199
214
185
231
215
186
183
189
192
225
156
254
225
245
205
247
237
274
228
210
232
155
199
171
165
215
198
212
236
232
242
160
234
185
184
263
130
215
172
211
210
274
200
183
201
195
190
235
191
215
194
206
234
164
226
213
183
198
162
211
192
219
252
250
192
271
115
206
167
275
218
140
222
207
157
185
240
183
223
179
187
177
215
200
196
257
175
241
180
215
160
161
246
259
114
273
213
150
143
174
201
147
240
186
232
119
180
149
140
189
214
151
207
162
217
176
126
222
222
181
229
228
273
243
178
193
90
206
138
180
224
220
203
199
179
164
201
249
169
192
219
184
167
237
201
207
214
143
169
126
251
258
265
202
219
173
190
233
198
261
86
218
178
177
164
223
208
150
187
210
215
196
205
199
257
225
238
198
146
173
201
185
228
137
213
212
213
203
231
169
201
213
176
214
205
165
147
226
195
253
164
168
192
243
108
162
158
166
246
134
208
170
233
208
251
184
221
185
139
216
178
226
129
232
263
180
151
148
202
237
137
189
226
212
260
208
132
241
219
153
253
185
188
205
199
217
212
159
222
188
251
158
288
196
211
203
196
214
195
200
188
187
198
228
175
220
232
255
191
211
175
214
182
176
157
205
240
284
262
180
229
194
167
258
125
191
232
191
177
165
210
153
161
189
207
202
198
190
260
248
173
144
212
192
216
195
151
210
172
215
215
180
278
215
142
215
184
191
185
188
150
196
184
253
197
157
234
113
222
211
248
270
165
232
215
219
218
151
208
169
195
200
197
232
212
171
253
179
255
242
184
223
212
200
164
181
190
208
267
222
176
228
191
222
168
196
205
243
187
217
193
190
199
190
198
146
182
228
211
222
209
132
218
211
236
208
166
210
226
223
198
175
204
203
242
105
238
168
202
220
196
189
230
233
195
158
208
214
190
224
222
240
278
186
222
217
197
217
239
186
141
226
198
104
238
203
244
215
192
186
165
213
209
217
178
179
234
245
194
202
198
273
236
160
166
160
188
154
237
178
221
167
178
200
126
228
259
204
252
273
198
248
215
219
171
231
188
209
156
191
217
195
233
217
153
193
254
191
184
189
232
230
219
188
149
187
209
236
209
193
154
187
255
176
199
251
173
272
266
181
184
186
230
242
219
194
269
166
141
223
196
159
191
264
173
174
207
194
233
216
196
168
226
245
183
220
195
144
219
181
195
202
183
209
190
177
175
153
164
185
250
265
167
233
211
118
210
161
185
207
183
230
180
202
199
223
197
202
209
249
231
198
155
189
220
241
194
233
246
185
253
204
130
205
173
223
177
254
207
247
252
183
171
252
204
196
234
225
214
204
181
175
154
226
210
133
236
215
227
204
162
203
239
201
234
168
203
179
170
149
193
139
237
221
125
256
249
178
221
245
210
192
232
192
157
175
230
221
200
224
192
218
166
214
149
219
210
180
222
167
244
155
138
173
197
193
146
194
209
174
157
214
220
233
140
207
233
213
174
164
230
206
183
188
200
150
169
262
189
216
236
184
217
192
193
178
189
246
220
226
198
220
168
145
201
202
234
178
172
179
237
210
189
172
225
173
186
195
254
185
186
238
179
201
187
195
185
180
219
224
142
216
209
184
137
209
208
182
217
167
191
195
171
208
172
223
232
149
154
216
172
177
219
195
235
180
169
247
157
193
256
228
182
152
238
193
175
238
127
155
213
191
224
201
256
181
259
291
252
196
201
214
130
167
185
209
248
232
210
242
193
218
240
148
252
184
179
203
160
155
220
225
214
181
152
219
184
232
220
266
272
204
180
209
272
179
175
234
250
193
186
230
205
244
227
183
233
269
207
174
154
159
171
249
253
253
159
219
166
226
280
238
208
154
192
181
164
193
210
210
205
186
204
198
211
222
194
253
188
139
216
218
196
210
229
208
271
199
178
144
225
210
185
270
178
180
176
185
189
150
179
228
182
188
251
211
210
184
194
177
163
252
187
232
201
238
255
190
204
273
168
244
200
270
216
212
210
169
112
181
169
214
180
203
196
190
238
138
194
181
128
216
212
240
258
238
219
157
181
187
229
198
138
173
189
205
202
261
184
184
194
225
221
213
180
229
207
159
192
256
146
218
223
238
249
251
183
214
159
199
189
165
149
229
175
195
198
206
228
198
193
190
190
202
232
232
181
215
172
182
185
266
200
194
173
197
228
122
178
171
197
212
170
184
199
190
230
199
236
205
196
251
242
199
156
240
223
224
172
229
197
250
285
175
166
177
180
141
221
255
157
249
251
214
242
191
228
178
241
233
166
178
197
204
231
158
190
166
171
170
182
262
172
152
218
185
183
221
235
201
139
194
160
203
163
113
217
129
203
185
217
181
150
191
222
222
212
180
178
223
203
244
175
233
212
210
171
202
242
161
135
202
217
142
191
165
230
155
159
244
233
234
246
160
214
193
151
247
214
233
189
185
162
193
203
244
207
153
215
198
159
141
197
193
224
182
190
230
145
149
201
209
198
236
228
261
222
167
105
226
257
192
218
217
200
190
246
217
244
176
227
280
243
117
224
204
156
200
201
195
226
174
180
115
216
178
183
189
212
202
224
156
144
237
196
220
180
203
225
205
249
222
212
221
231
147
205
214
189
194
135
175
155
187
175
174
234
238
239
236
198
139
187
199
176
206
220
201
216
208
177
204
243
190
177
172
213
175
204
178
273
178
200
130
192
183
230
217
236
183
172
207
189
203
207
193
219
189
214
260
213
168
159
243
210
237
170
225
252
183
198
237
220
193
192
207
184
173
202
213
214
153
222
247
95
184
191
148
194
150
216
181
209
219
172
162
172
251
163
231
124
232
185
193
197
225
188
232
228
167
254
246
177
191
144
226
268
210
201
207
247
152
151
204
192
160
239
237
235
191
158
164
211
210
159
216
259
175
207
192
198
198
191
228
196
247
183
212
236
244
206
152
163
186
243
169
174
235
190
197
99
183
207
200
262
211
170
252
257
209
251
267
117
170
161
197
228
238
192
193
187
170
240
134
154
235
160
269
161
169
213
251
219
237
150
225
165
213
161
207
149
238
206
227
262
251
184
208
155
151
176
226
232
196
171
214
265
170
168
217
163
224
208
207
181
232
185
183
235
273
213
151
224
234
163
175
262
235
269
206
163
267
166
264
241
223
257
223
204
156
230
234
215
185
228
199
238
216
229
278
166
168
177
188
231
179
232
258
194
162
248
189
226
231
230
197
201
224
230
225
214
180
172
230
239
161
194
214
218
170
224
190
214
151
180
165
267
239
202
248
180
201
202
181
193
141
237
172
217
213
181
174
139
174
192
175
211
185
130
173
203
224
202
206
264
173
213
221
185
174
268
177
198
212
229
191
262
198
215
219
185
152
208
211
242
234
229
184
229
181
220
202
143
151
176
127
214
267
218
262
184
225
172
213
160
253
192
203
189
155
259
188
138
213
217
229
225
258
137
187
183
211
114
203
220
181
233
138
203
178
133
208
225
189
224
149
188
196
201
195
202
214
227
193
197
202
264
196
201
229
190
247
259
170
150
167
226
254
223
223
116
162
170
186
155
178
197
204
184
202
193
174
222
205
128
158
205
153
235
227
155
200
230
250
180
177
219
142
228
217
130
220
219
192
191
156
228
221
187
143
212
170
214
232
247
197
128
258
184
160
219
145
169
172
268
207
189
178
231
201
187
187
277
168
263
179
191
214
170
167
176
208
194
252
213
212
209
213
207
178
204
209
247
142
184
215
204
207
151
228
210
169
224
157
208
197
201
193
152
207
221
178
137
179
142
247
185
205
219
188
181
217
148
207
205
184
158
223
195
258
216
180
186
173
171
210
182
217
195
229
180
202
183
177
124
188
164
207
131
142
188
157
189
201
217
212
248
133
192
218
214
226
187
113
207
203
237
209
195
169
102
154
201
217
182
137
196
165
173
199
228
224
192
187
193
199
186
164
152
175
216
172
161
266
231
152
198
137
241
158
245
169
188
230
224
183
180
148
253
217
245
213
181
233
214
188
149
158
205
124
231
196
142
178
228
219
195
239
179
194
224
189
265
217
224
233
170
131
238
135
193
172
238
247
226
158
205
157
198
181
158
217
220
207
208
195
178
234
217
216
196
169
233
154
190
198
242
167
175
186
192
236
210
128
192
135
242
197
185
204
154
218
241
225
189
190
149
158
110
177
135
181
255
204
252
225
190
181
197
263
241
195
165
190
163
207
186
183
145
206
266
162
183
198
183
145
196
164
203
219
167
189
188
203
183
172
162
196
178
220
214
262
230
192
270
205
190
198
256
190
186
231
244
214
163
202
218
196
202
184
191
184
245
256
226
218
140
209
189
225
178
232
195
202
196
186
197
217
255
209
135
174
186
179
176
162
129
189
189
203
185
187
248
237
236
222
226
192
231
219
185
200
205
219
244
195
228
129
190
188
185
202
154
238
199
173
193
167
224
252
213
232
205
187
224
169
258
220
168
172
238
172
214
172
128
253
196
177
193
176
205
163
205
207
218
161
193
222
171
246
218
129
224
205
254
228
168
212
183
235
220
212
226
266
242
171
215
141
151
247
226
257
226
240
209
174
219
221
235
176
204
245
233
189
253
249
153
238
166
272
230
148
185
193
180
244
134
196
197
197
234
192
201
183
206
200
146
195
218
192
222
227
191
238
147
240
170
174
210
188
156
229
159
172
193
182
188
212
271
192
267
224
135
174
202
235
153
224
172
174
206
139
223
219
238
233
197
270
207
200
232
213
189
266
191
167
181
196
197
248
178
168
236
236
218
201
205
227
207
240
242
178
199
194
185
199
165
222
176
212
151
219
204
162
236
205
176
222
207
208
185
190
222
247
265
256
160
179
258
221
230
137
185
218
247
245
154
224
158
202
150
202
200
173
199
157
165
242
185
184
207
176
236
167
177
154
193
173
164
199
188
200
213
155
192
240
217
216
214
209
125
143
174
189
192
211
160
246
129
195
243
219
177
206
185
219
144
148
202
237
219
231
175
169
227
148
231
228
215
185
134
200
217
243
233
150
174
159
211
239
170
243
247
250
193
203
167
176
210
196
223
208
224
162
212
165
264
186
116
186
227
171
197
226
212
180
204
157
149
231
213
140
270
197
215
201
213
149
166
214
211
92
243
226
197
200
149
225
184
234
175
184
264
244
217
252
192
155
203
200
181
178
182
207
210
182
211
243
187
235
223
189
175
232
166
240
128
205
179
179
280
192
215
180
227
214
157
219
158
219
254
220
199
234
219
225
202
195
124
208
212
199
195
172
194
229
207
193
130
184
174
224
155
213
169
252
200
143
255
250
224
221
279
177
213
138
198
185
204
220
201
202
159
163
252
216
214
193
225
186
212
190
193
199
191
204
185
169
189
194
210
178
218
189
181
161
205
197
174
145
201
160
191
201
276
215
226
152
192
161
210
198
173
245
219
220
168
174
183
225
239
179
174
158
282
160
254
231
239
198
215
195
174
240
208
179
161
192
229
184
214
137
179
214
195
158
209
164
190
186
147
192
142
205
162
164
266
189
172
218
232
200
214
211
198
234
189
198
217
205
176
196
139
218
236
282
231
193
235
211
164
215
219
191
159
200
221
172
220
170
164
196
172
203
243
251
172
257
161
235
171
178
249
188
181
223
121
237
267
183
144
244
219
209
125
182
252
232
154
217
219
188
206
232
215
207
214
206
213
178
168
227
214
199
188
184
205
182
219
212
179
176
250
196
256
133
245
178
201
211
235
173
210
255
154
179
170
205
217
174
167
220
223
130
180
234
238
205
151
165
243
141
245
210
219
171
206
195
205
133
173
226
225
180
180
240
122
226
220
181
201
163
174
229
179
167
235
191
166
204
207
137
200
180
92
196
228
227
172
167
203
191
272
203
174
225
189
222
213
218
177
173
172
238
144
217
198
112
228
163
145
164
215
193
222
173
207
210
233
162
219
195
203
150
172
224
194
199
206
152
192
168
192
157
165
232
245
176
181
169
186
188
199
258
189
195
221
215
221
211
169
193
193
221
193
170
209
224
137
238
215
176
233
195
226
212
201
199
206
256
202
210
158
242
186
185
205
185
227
253
215
224
220
241
154
232
202
165
168
169
201
254
174
225
139
203
189
162
163
199
124
184
200
191
199
175
249
176
141
215
186
216
197
113
210
179
215
192
256
237
217
184
245
223
178
177
248
232
198
185
157
183
223
168
164
217
207
132
194
217
235
235
225
241
195
224
219
218
239
205
206
244
184
186
154
227
215
253
194
175
136
249
217
184
202
223
138
226
268
152
200
240
208
156
227
163
195
161
157
167
233
226
175
192
197
191
179
183
185
180
155
195
185
181
172
162
199
181
232
214
214
193
218
129
201
205
221
236
210
178
168
148
202
227
207
145
193
168
202
217
226
210
185
171
221
222
156
219
208
195
202
133
162
203
231
171
214
208
97
216
197
211
188
188
235
181
215
192
182
239
190
160
185
258
137
140
172
241
201
186
214
177
170
179
202
196
180
188
252
195
262
193
258
267
197
233
178
219
233
207
200
232
221
209
228
213
209
240
264
163
173
231
169
146
128
195
189
234
175
232
227
173
252
157
227
146
192
199
254
197
191
147
160
187
218
196
284
245
202
186
233
155
228
207
175
210
230
227
209
191
204
198
204
197
166
256
204
194
147
196
279
231
185
197
178
180
143
208
220
201
234
194
245
195
227
243
251
214
202
169
183
203
188
169
220
187
203
208
238
253
182
242
222
133
177
226
207
182
247
204
175
172
175
180
159
183
232
162
194
137
144
207
211
200
228
199
220
166
193
181
210
197
111
189
195
203
287
204
175
190
265
208
152
189
184
188
190
218
206
122
115
211
263
250
184
272
154
180
226
180
189
229
161
165
275
207
186
159
205
203
217
247
206
197
166
200
223
195
202
163
196
245
183
173
129
217
204
209
231
214
206
242
171
195
220
252
193
172
205
205
248
232
205
241
174
183
215
150
271
107
204
217
176
242
216
196
151
183
221
221
232
205
230
184
236
207
224
221
177
198
206
267
211
129
171
192
173
141
198
160
214
202
164
232
150
173
158
196
261
190
159
159
190
235
225
174
208
214
233
172
225
241
182
240
191
205
186
201
226
209
189
176
152
157
236
164
160
235
282
231
268
210
216
225
174
169
221
235
194
184
274
147
186
249
220
146
229
189
228
243
178
186
236
222
244
215
110
170
165
228
209
194
227
256
166
254
141
134
206
201
161
204
197
195
192
204
157
170
267
145
206
169
196
159
282
179
184
205
260
211
252
218
194
156
123
219
234
208
161
134
229
218
174
179
181
170
181
216
185
156
196
159
218
256
197
242
169
219
166
242
269
146
169
218
208
251
227
137
214
243
202
183
231
234
181
235
191
164
166
183
171
192
170
198
225
227
196
175
161
225
220
178
221
173
177
215
199
224
174
209
210
161
154
211
130
170
206
238
211
210
192
197
257
239
199
167
251
259
183
217
237
199
164
183
194
240
216
182
154
140
205
216
215
197
247
165
266
256
196
233
183
224
238
163
195
209
213
129
228
174
161
238
206
209
225
146
206
173
190
153
193
227
206
235
243
187
148
205
192
204
240
214
146
242
222
213
168
260
191
214
179
176
174
165
188
194
233
155
210
214
201
196
200
191
199
214
124
214
222
212
188
221
179
183
216
159
211
177
168
197
208
170
226
198
173
214
230
196
147
167
124
195
199
184
201
192
240
140
219
182
205
199
166
177
207
169
204
245
160
199
201
214
169
152
178
237
177
192
170
186
194
153
194
140
211
240
231
171
213
188
234
185
261
206
251
146
179
208
206
106
204
219
179
196
238
200
163
150
176
233
258
200
178
225
153
177
209
199
189
221
208
217
167
190
192
152
171
204
147
141
191
227
168
211
239
166
163
194
186
195
211
191
282
207
245
211
134
187
209
142
188
138
135
160
228
254
190
182
199
222
231
173
217
243
198
161
161
210
169
200
201
178
217
225
232
232
198
169
215
216
200
195
142
208
238
182
143
218
228
214
118
206
149
184
167
245
193
186
170
193
236
216
163
248
247
217
236
197
231
205
229
227
227
253
197
158
184
198
122
187
208
140
236
180
251
172
213
217
225
212
159
222
199
223
206
211
190
224
207
228
247
202
186
231
208
192
284
226
236
226
203
180
161
209
204
192
268
199
186
170
203
163
205
190
190
239
148
223
177
148
180
204
187
165
200
132
226
179
193
209
168
285
238
222
215
163
283
180
229
211
184
200
175
196
202
265
180
200
242
157
192
191
218
207
213
204
245
232
255
212
178
214
219
199
159
202
202
170
199
203
211
180
240
153
149
174
216
188
263
135
287
173
156
234
163
170
138
217
216
216
136
172
191
170
180
267
269
188
248
200
139
194
156
232
219
249
241
232
214
253
169
156
194
203
141
179
169
191
185
208
156
166
169
170
170
214
197
224
221
164
224
179
236
212
190
167
166
213
165
218
200
220
185
217
187
134
226
174
215
268
208
163
170
233
227
206
213
149
216
186
159
236
147
223
232
238
210
238
175
172
250
164
219
181
162
185
201
169
215
215
235
132
193
213
210
172
206
237
258
199
175
226
220
157
228
250
267
178
161
236
203
210
232
269
187
245
179
213
175
246
210
198
249
244
192
222
275
183
171
220
184
216
155
247
211
181
210
179
199
240
268
171
181
237
251
210
210
217
171
257
142
168
206
156
212
172
163
200
170
264
193
229
201
166
189
237
194
208
167
210
218
204
187
229
188
173
189
109
175
201
189
244
193
189
206
208
186
227
224
149
201
238
209
172
207
108
219
136
215
211
144
210
211
174
200
225
183
201
167
165
197
193
182
184
204
208
233
186
205
246
217
216
229
196
173
221
126
248
223
134
215
215
260
233
225
185
143
224
255
199
159
203
164
211
193
256
229
204
237
223
179
177
235
217
174
219
243
155
247
222
228
242
208
152
208
160
211
188
151
235
212
230
223
174
213
219
195
209
198
208
173
186
147
168
174
158
215
256
193
215
181
288
141
181
234
194
234
200
223
276
229
204
200
242
249
179
223
223
214
212
197
196
268
223
149
266
200
157
152
193
226
210
179
218
195
208
215
195
217
164
204
156
245
227
219
169
164
223
181
213
150
197
169
220
157
250
207
192
179
203
227
171
238
203
182
247
232
184
198
226
240
192
234
170
208
270
230
181
130
176
172
197
205
172
243
194
152
199
215
199
199
181
212
164
142
158
152
113
146
219
228
213
206
241
239
225
173
197
169
200
162
151
223
120
184
210
204
146
240
241
118
233
205
204
170
220
172
192
234
262
254
176
155
188
200
211
243
199
190
202
157
264
247
226
197
208
182
234
237
205
175
226
213
210
220
197
149
255
176
223
167
186
198
203
239
219
217
178
157
219
101
199
208
247
138
199
193
256
168
201
137
169
218
175
160
195
139
212
227
247
168
211
140
163
262
217
211
220
128
186
225
258
183
194
205
164
176
208
215
170
228
166
215
196
168
221
122
181
252
274
198
131
159
124
215
235
195
167
161
237
229
204
202
202
265
183
202
234
209
174
168
204
245
207
235
226
156
128
216
148
252
198
129
201
237
198
189
196
184
182
148
224
241
234
236
231
227
176
245
250
163
155
187
174
242
216
140
202
171
179
189
192
204
202
140
238
217
219
153
225
206
150
172
202
143
222
278
194
204
163
170
185
269
184
212
217
165
175
265
214
217
238
161
195
220
174
219
157
210
183
217
192
257
158
243
206
184
270
197
254
234
195
184
138
217
198
150
228
236
180
184
195
232
183
166
214
187
247
168
186
168
202
201
217
199
266
204
189
264
207
196
232
162
204
158
155
177
168
244
185
163
165
154
202
297
180
203
157
104
154
214
161
203
201
248
202
235
165
178
194
214
163
215
138
283
236
187
223
248
151
223
228
228
149
219
202
237
241
172
238
216
252
256
142
155
174
221
240
169
201
230
184
199
202
230
247
224
221
209
162
199
210
240
247
210
169
217
216
235
251
169
193
222
148
213
190
192
180
198
155
191
141
209
246
231
258
235
180
222
215
248
257
184
154
296
220
184
209
206
245
204
177
236
235
197
220
216
192
174
180
227
222
193
186
163
233
215
183
214
199
191
163
236
250
209
212
258
200
212
153
266
241
250
220
262
133
223
200
180
212
207
204
231
239
183
204
190
230
171
167
153
222
235
225
235
152
155
222
282
198
222
242
184
247
212
191
284
249
164
177
193
174
137
186
196
217
186
138
129
254
254
247
199
199
250
225
239
148
127
199
201
171
216
199
178
231
180
210
148
187
207
221
216
187
190
167
217
179
155
197
246
211
211
221
190
163
221
213
155
214
260
186
213
259
228
233
183
193
195
230
245
190
193
105
175
223
167
226
195
215
226
223
133
225
124
216
140
239
196
237
227
266
182
164
223
238
231
279
176
187
186
202
239
244
213
245
173
163
196
149
210
241
187
218
210
221
209
197
187
210
139
219
211
130
241
211
191
209
215
262
194
238
188
220
133
126
215
177
126
208
179
220
209
196
236
182
163
168
178
185
136
258
193
221
263
216
225
184
135
222
223
183
201
165
219
217
250
183
246
186
225
163
186
181
166
204
173
200
202
199
237
204
148
232
191
168
222
255
208
210
198
208
188
185
251
231
259
195
242
218
184
195
206
161
163
260
220
191
142
152
153
171
225
239
204
250
205
181
126
137
175
171
160
199
164
213
195
202
203
175
182
222
176
189
175
194
212
209
235
217
243
205
182
214
189
195
240
212
238
238
151
194
178
202
222
162
188
234
233
217
125
206
194
193
195
239
217
155
215
197
116
184
162
168
203
279
187
225
167
196
228
227
215
263
229
181
213
261
183
244
269
203
201
234
218
150
225
158
212
214
150
240
237
210
206
214
159
199
196
171
268
97
205
176
179
217
222
168
179
173
257
177
138
198
239
270
170
165
247
192
157
211
166
256
166
142
197
190
143
200
181
155
160
196
193
185
177
193
216
243
231
153
231
199
183
194
166
243
184
168
230
185
217
162
168
187
198
261
251
189
232
206
167
187
243
149
173
206
199
252
254
210
232
175
208
205
212
160
175
179
183
145
167
212
221
200
187
177
220
188
203
274
178
205
240
242
244
203
161
218
163
192
193
208
199
152
248
204
213
227
257
195
222
203
260
239
241
211
135
200
194
237
190
225
205
263
256
162
187
229
197
264
198
174
212
143
198
184
214
239
187
215
253
205
191
255
225
160
162
177
191
176
235
196
184
209
239
280
218
233
141
188
186
220
178
149
179
188
177
153
253
131
205
171
232
218
220
148
187
169
250
132
225
137
211
204
204
206
197
150
218
273
248
185
228
199
191
174
222
223
198
164
194
200
220
196
186
160
200
161
170
221
265
206
221
232
253
226
243
194
210
172
219
202
170
232
178
249
226
178
224
217
198
208
216
203
140
224
229
201
242
168
179
221
174
225
242
233
189
177
203
228
153
169
201
234
206
176
209
232
217
192
199
216
223
175
225
199
188
254
205
206
188
197
201
226
148
197
121
231
177
203
133
193
249
195
159
234
223
217
209
220
154
199
256
170
208
216
179
179
254
179
186
205
169
238
200
207
166
183
176
250
159
175
214
222
235
253
201
179
235
229
213
158
207
213
160
166
197
201
219
245
220
236
159
168
223
201
166
205
173
139
234
139
194
200
183
247
216
207
114
224
243
233
240
227
227
239
222
199
194
204
220
215
238
191
207
207
213
232
168
243
180
162
230
179
232
221
149
218
157
233
216
185
223
202
148
197
228
234
204
207
251
179
240
215
181
191
190
140
183
175
248
202
203
163
184
200
207
162
187
235
178
225
186
221
165
170
235
246
160
164
251
129
199
203
199
228
256
165
277
213
250
155
193
213
170
205
216
116
200
226
179
179
151
248
127
219
218
203
208
227
232
215
205
198
255
220
196
202
182
202
216
195
227
191
185
206
201
183
231
221
202
228
201
167
237
184
145
177
176
187
178
211
175
240
188
181
210
244
191
198
245
199
194
104
253
215
242
185
229
240
206
215
179
199
215
212
229
167
250
201
229
216
180
207
268
255
147
170
140
226
194
252
196
210
238
201
227
160
170
227
178
224
129
207
226
216
176
224
215
199
243
226
180
240
167
228
223
214
167
176
215
201
199
168
114
203
161
209
223
222
166
204
180
173
260
185
215
247
190
177
223
193
211
128
228
178
248
239
189
236
191
219
245
230
242
186
262
140
199
183
180
177
207
200
152
272
206
250
248
206
208
209
133
200
199
243
192
231
276
162
248
135
210
258
214
163
187
158
144
208
170
231
189
198
234
239
216
190
137
251
188
197
189
181
219
194
210
155
229
193
174
147
237
181
253
196
177
242
230
156
231
205
208
188
183
199
144
240
172
209
205
229
166
169
217
237
196
265
155
159
123
231
269
245
209
224
195
231
237
149
199
264
192
172
197
215
232
231
205
210
243
159
239
217
191
234
233
196
241
149
225
170
154
183
187
245
273
232
216
194
186
222
184
149
173
236
179
234
214
248
159
200
236
171
170
217
177
225
144
254
223
227
167
149
220
248
177
161
247
179
212
183
202
214
187
255
168
163
205
198
139
160
192
188
188
253
204
272
201
212
241
237
164
150
212
270
198
166
209
189
191
233
239
254
197
226
169
204
194
210
186
228
185
209
205
227
189
171
195
177
190
150
240
215
176
165
235
208
185
229
212
144
180
203
235
180
205
203
232
200
198
171
207
207
195
251
254
166
191
167
165
177
163
216
173
169
196
141
187
178
138
220
221
178
279
260
197
198
147
166
175
191
226
245
185
202
227
158
210
228
210
236
225
222
241
148
147
200
205
248
230
173
176
248
212
243
213
188
202
187
156
134
206
219
157
180
196
201
215
252
122
206
177
256
203
251
245
128
166
170
175
177
262
136
172
257
225
179
171
229
170
131
236
185
153
126
208
227
195
228
251
235
166
203
124
224
178
196
158
152
231
225
155
255
183
238
218
211
166
167
195
214
195
160
177
215
208
237
191
223
214
181
172
157
195
146
140
232
239
197
188
233
164
204
210
176
163
227
232
168
200
188
197
154
185
216
137
186
204
229
219
245
178
168
187
155
205
105
200
213
250
197
162
210
185
183
214
166
129
246
177
251
248
215
235
258
212
98
223
201
221
186
214
148
175
181
183
209
213
206
169
190
211
217
184
245
199
188
223
243
192
247
187
224
176
174
253
119
166
238
168
170
174
222
207
225
211
249
168
236
225
158
210
203
216
196
207
208
199
237
141
214
212
269
192
276
218
199
239
232
289
210
180
194
168
228
225
192
177
214
241
196
202
256
120
254
137
217
179
201
206
208
165
218
180
258
224
180
222
185
153
210
177
201
225
238
232
163
201
177
241
203
134
231
251
160
242
216
242
208
177
162
188
186
206
247
179
196
202
181
184
238
233
215
191
171
214
205
210
214
177
196
180
255
241
256
222
269
203
167
188
168
205
273
152
217
188
262
204
150
199
195
195
210
232
151
166
207
165
198
244
196
164
146
217
261
236
220
161
255
164
192
239
244
166
234
242
198
247
133
230
202
219
237
186
198
189
213
182
198
175
185
203
155
199
93
184
203
155
217
192
250
149
243
207
176
208
203
232
136
242
197
230
244
202
192
209
204
175
217
157
175
227
188
217
249
221
209
184
208
169
208
220
219
234
227
120
184
227
243
216
243
239
139
233
168
256
277
169
123
141
205
214
188
127
226
212
221
199
180
218
204
207
157
191
278
191
158
231
145
197
235
185
189
207
201
235
163
238
152
236
242
218
257
160
207
207
185
214
211
171
219
238
143
258
222
183
188
220
156
167
174
209
247
200
211
164
187
148
138
255
212
202
157
244
231
245
220
197
218
234
188
222
233
244
261
176
183
220
174
228
169
190
241
215
179
196
231
242
203
199
173
220
145
166
177
235
181
215
251
228
139
166
186
264
204
168
168
185
224
288
225
161
218
255
213
180
121
185
241
221
200
195
164
139
215
215
230
184
217
147
220
204
234
164
255
201
208
198
178
204
182
163
252
159
202
245
246
202
147
208
195
221
203
228
198
176
173
168
229
250
223
214
207
183
213
198
195
207
190
199
224
229
246
154
257
153
200
270
173
251
271
243
196
191
248
198
189
238
196
239
223
219
249
260
202
196
247
170
247
153
252
167
240
156
251
242
206
222
205
170
197
199
170
194
159
248
227
237
228
242
249
195
228
236
203
225
273
178
251
236
239
185
206
164
175
206
193
147
178
200
199
157
277
215
189
161
213
168
247
145
185
148
182
201
241
161
203
271
239
220
188
209
246
222
229
182
165
216
185
182
214
229
219
220
202
199
154
228
221
176
202
208
270
217
211
189
190
131
214
166
221
165
220
261
150
219
208
219
250
211
270
215
126
240
171
223
170
220
222
225
236
246
199
174
214
167
184
192
250
169
207
212
152
178
174
182
215
200
179
176
235
269
195
208
243
230
176
116
196
214
199
187
147
190
243
180
224
127
186
192
224
135
165
141
189
188
228
196
158
210
181
156
162
181
247
200
236
149
216
194
224
230
229
202
201
262
191
203
213
265
237
264
246
248
185
117
206
184
241
182
274
185
219
210
157
192
260
145
196
221
116
249
227
192
239
250
220
234
228
215
193
158
207
193
228
237
220
201
221
229
144
143
218
210
250
193
172
185
218
175
212
137
226
238
152
221
225
152
253
203
184
224
186
234
200
192
228
183
234
116
211
253
236
198
223
199
229
202
195
181
221
166
236
224
158
186
228
189
244
177
174
139
208
167
262
214
257
201
240
237
216
201
209
153
150
175
209
211
147
247
242
201
193
215
218
219
224
224
172
242
215
191
195
228
164
214
176
226
137
233
251
210
238
216
196
232
142
208
222
158
204
141
196
174
142
189
196
197
240
223
246
132
174
199
260
224
199
291
207
130
127
189
189
227
208
156
245
239
192
232
214
173
119
259
211
242
216
234
218
188
179
193
234
203
267
155
218
241
181
187
147
239
148
169
283
152
234
179
216
249
125
189
233
161
200
201
180
193
216
182
233
251
231
205
213
232
210
253
207
170
167
186
211
150
190
206
202
186
202
196
246
270
140
194
173
281
173
155
242
227
259
172
230
240
223
162
219
205
215
201
194
222
225
138
209
242
163
162
236
196
180
235
203
185
216
211
224
198
138
218
185
222
182
137
250
198
172
206
118
170
186
189
245
164
237
274
168
223
207
214
238
214
159
209
219
200
162
204
240
130
194
182
184
201
172
115
196
166
224
211
252
276
214
244
167
177
170
211
238
241
186
164
189
176
187
213
196
253
223
167
231
159
180
175
174
168
192
252
249
212
231
263
187
204
162
162
197
215
201
162
237
176
259
204
208
283
168
193
222
132
190
160
125
123
240
231
186
206
238
210
250
235
193
202
265
164
202
237
241
229
184
244
203
201
196
203
212
226
216
160
235
180
204
160
229
238
197
220
185
205
170
188
252
211
201
208
209
141
241
233
226
248
186
198
193
168
194
168
181
174
116
196
227
190
164
204
202
212
152
195
179
128
215
163
204
246
145
211
237
202
189
189
234
255
197
171
130
228
184
183
229
99
155
165
183
136
198
178
174
200
252
218
201
178
184
195
196
255
200
190
243
231
241
237
192
161
160
205
236
199
224
240
189
247
127
285
248
259
217
212
220
277
260
254
200
162
250
167
232
234
231
172
157
194
195
234
177
179
182
180
224
165
146
218
136
218
242
176
251
172
261
184
213
176
229
141
164
235
231
217
226
158
170
239
215
156
213
204
203
232
212
184
215
243
229
189
226
207
198
234
184
200
164
142
182
159
183
159
232
201
221
176
220
190
190
171
198
278
194
212
187
221
135
232
226
193
144
201
211
206
226
178
172
171
212
211
224
164
234
192
255
150
224
214
136
236
177
208
255
213
232
182
162
243
162
226
231
263
232
196
211
181
222
174
171
219
177
239
194
230
141
182
187
143
264
204
200
219
171
183
131
206
192
198
200
242
183
180
161
245
263
201
204
249
189
242
182
192
128
218
208
167
118
218
217
236
137
208
232
161
198
225
176
211
214
189
140
150
204
191
200
184
267
224
189
221
230
204
134
146
196
235
261
164
230
200
198
197
185
118
159
222
189
166
189
162
205
221
209
204
200
191
190
194
202
250
178
230
253
155
237
174
209
155
152
214
228
159
179
213
227
141
200
205
180
137
233
236
168
165
286
238
180
186
194
170
246
162
272
209
178
163
166
190
241
254
280
215
173
261
257
207
266
248
249
262
250
229
225
177
243
234
174
203
212
222
231
248
203
155
191
228
174
188
201
227
254
174
235
219
202
245
283
166
131
180
179
248
210
207
177
183
219
236
197
234
169
300
122
212
136
163
187
250
211
245
156
140
222
253
171
191
282
190
247
233
253
187
219
158
246
246
131
169
202
110
146
189
158
140
202
144
182
197
254
173
200
253
206
181
154
217
217
148
219
263
211
244
169
178
185
211
231
198
152
175
252
171
190
163
210
182
204
175
208
226
244
170
239
231
217
223
151
253
184
232
210
209
242
208
171
208
262
192
163
181
244
220
190
243
159
225
229
182
198
221
272
180
201
212
262
267
190
189
228
135
184
190
261
139
175
215
264
251
230
172
141
205
199
194
216
171
212
188
238
223
147
199
254
244
234
154
266
184
189
236
189
287
217
149
215
142
181
258
231
193
176
203
190
157
184
237
171
245
264
225
192
190
173
162
206
210
203
190
210
233
224
199
152
181
154
162
161
241
216
193
116
224
195
148
179
149
212
199
193
232
173
235
160
211
235
230
217
188
180
200
219
220
204
174
231
212
201
159
191
255
175
185
273
229
227
205
167
152
176
175
230
173
251
195
125
173
220
203
224
261
130
230
205
212
180
225
252
248
218
240
147
164
271
238
235
176
194
129
242
235
186
204
224
196
204
220
187
244
172
189
253
172
199
133
243
200
197
158
179
207
149
218
219
197
232
235
195
160
156
159
184
255
128
183
232
199
196
249
95
193
162
164
164
213
178
247
195
219
218
162
206
180
190
199
182
248
192
175
241
165
162
157
227
226
195
251
176
191
202
209
237
168
194
188
236
149
254
143
175
237
176
224
258
173
169
163
245
220
181
157
134
238
204
130
214
209
147
185
209
206
184
178
220
167
176
185
198
187
213
165
135
175
146
197
196
254
234
177
147
202
173
238
195
175
194
128
170
241
209
239
212
208
249
215
210
122
200
150
203
173
186
185
187
183
218
203
223
233
243
205
149
166
225
193
223
224
244
240
183
211
185
161
167
225
184
242
196
189
163
227
179
232
204
216
181
216
210
202
239
173
197
175
245
253
227
245
227
226
205
250
209
155
228
227
208
196
247
222
230
250
224
259
276
214
208
192
170
219
130
161
195
269
230
158
132
195
240
177
196
217
201
175
208
219
148
212
188
166
217
252
214
234
228
212
246
204
167
222
234
156
255
193
148
157
213
242
228
172
242
241
258
173
167
219
205
206
197
158
268
214
235
222
225
174
190
168
186
167
204
223
183
223
233
270
190
192
186
259
195
186
165
212
225
182
178
166
136
225
178
184
192
190
229
237
183
202
211
236
251
174
243
194
189
190
211
170
204
166
221
170
203
261
211
171
230
149
203
235
213
202
230
229
258
198
239
206
218
195
212
178
165
215
200
282
244
229
191
213
223
207
241
154
257
209
162
186
243
222
203
252
211
197
171
207
224
215
183
262
220
190
166
179
212
204
178
194
186
179
194
199
160
155
194
246
163
279
173
136
170
218
219
184
199
181
155
127
223
198
153
194
196
167
149
251
185
182
191
235
195
230
184
168
175
163
192
177
213
218
232
174
189
160
175
197
215
187
106
153
216
205
260
173
227
211
179
190
228
212
210
222
194
189
218
174
193
162
276
200
168
180
256
142
192
197
219
238
210
142
194
278
160
261
181
153
202
218
198
190
171
180
232
207
219
199
167
242
206
220
188
213
203
194
198
212
185
152
234
200
123
207
208
164
231
222
180
145
223
179
231
234
197
237
224
212
164
188
201
217
177
210
193
205
187
196
142
218
229
184
239
217
183
152
187
206
137
130
218
162
228
175
180
185
193
204
213
185
183
158
216
248
263
230
229
187
203
194
146
211
174
204
228
228
168
190
199
233
168
239
166
254
172
219
207
212
165
241
158
178
162
154
182
218
229
136
190
117
175
181
213
232
260
198
182
214
233
269
237
171
175
157
193
228
229
172
207
175
229
183
204
189
183
231
216
201
197
219
213
195
225
226
183
206
203
203
242
209
226
185
192
163
268
215
255
124
210
199
181
155
202
232
165
245
189
207
231
159
196
229
162
200
152
237
242
205
177
236
215
240
195
254
212
196
144
167
172
241
272
217
188
199
142
221
219
183
212
151
119
234
173
172
241
129
270
169
207
219
174
164
219
243
188
188
216
188
253
214
179
176
158
231
159
179
122
98
188
210
179
116
169
225
260
185
227
193
195
199
260
200
237
245
211
154
167
172
200
242
214
184
167
182
174
214
194
192
180
188
186
176
258
149
174
234
180
176
233
218
202
179
194
224
286
229
224
186
216
204
147
167
242
190
191
256
221
143
203
152
241
216
238
184
211
165
204
171
215
216
235
172
235
202
174
200
244
186
270
153
191
201
215
204
219
223
185
232
199
220
212
176
229
191
210
151
215
171
251
253
172
223
187
189
229
141
177
122
182
168
207
130
228
223
227
275
204
132
129
169
215
246
188
199
177
201
189
179
211
242
225
227
231
187
174
197
241
258
252
216
236
265
177
200
177
163
114
207
185
199
228
192
201
255
223
180
220
171
235
160
160
221
213
184
201
182
231
161
186
213
215
182
162
157
209
200
131
220
172
170
165
144
190
238
149
219
203
244
250
182
154
225
215
195
200
178
184
218
162
193
141
145
163
218
208
156
130
211
168
247
170
161
185
251
212
225
235
173
196
206
225
195
201
224
245
171
193
214
197
123
213
221
190
225
209
151
180
226
124
248
172
222
229
245
207
197
197
162
230
199
181
168
147
219
224
211
136
197
187
192
206
163
165
187
201
183
218
201
146
296
147
204
193
167
111
274
182
130
189
206
166
217
133
216
225
191
210
160
164
227
153
134
210
167
202
229
183
118
122
228
179
221
176
184
233
206
182
195
219
222
254
224
212
199
211
238
188
175
249
256
178
263
259
193
142
229
201
252
225
188
174
254
217
175
186
175
122
184
180
171
186
207
202
198
209
242
85
202
213
238
184
239
194
204
243
224
228
231
151
192
155
129
208
200
183
182
196
239
190
269
227
199
117
238
170
215
250
222
167
163
207
233
231
227
204
194
235
203
166
211
154
212
171
166
174
174
191
231
223
208
217
166
232
231
180
219
197
260
196
229
267
217
177
169
210
189
184
165
218
191
204
180
154
211
158
238
219
214
203
163
149
208
231
213
165
235
186
183
112
215
194
176
238
203
249
102
181
230
169
168
193
196
152
248
186
153
187
212
244
199
239
206
222
206
236
241
187
237
237
193
129
178
195
204
238
173
248
214
208
233
219
160
179
251
190
244
163
178
246
224
224
201
139
236
139
208
159
186
235
199
237
203
182
213
150
117
134
153
218
200
222
201
145
203
239
211
208
177
142
182
174
213
247
197
184
187
222
213
179
230
130
174
201
219
254
215
272
207
218
190
171
215
239
152
202
199
225
172
193
234
242
201
291
184
185
171
206
188
173
171
172
205
241
194
256
167
223
168
286
241
188
208
196
223
198
208
171
230
185
205
190
198
211
232
224
225
218
199
219
172
174
209
214
186
186
217
196
189
141
229
213
221
246
243
181
239
230
182
221
233
173
204
192
208
227
193
211
211
138
210
248
243
209
121
227
234
279
226
190
177
220
158
187
207
249
188
192
274
179
201
157
199
243
205
211
214
216
92
258
234
230
228
260
142
232
189
206
181
179
185
222
170
284
215
161
199
199
257
232
219
203
194
247
295
150
208
196
189
179
187
141
200
177
256
196
201
233
241
221
168
178
208
223
200
151
166
209
241
254
241
203
203
215
181
202
202
195
125
172
144
181
199
189
178
245
232
144
176
205
189
198
127
218
165
172
174
201
146
162
186
177
161
200
240
199
157
186
215
201
186
205
165
198
248
216
204
203
149
173
216
160
194
153
253
203
177
198
175
170
162
178
206
224
194
214
195
220
200
235
190
208
219
150
205
236
191
194
208
160
190
193
180
223
176
117
179
270
192
178
210
157
220
244
222
226
199
222
178
304
166
187
124
167
202
183
194
218
208
209
225
175
206
222
210
205
259
231
233
185
191
169
183
235
254
205
288
164
198
269
201
216
161
166
210
196
248
215
197
111
218
191
194
237
164
190
223
219
135
196
192
127
214
219
145
202
151
140
144
172
135
228
224
204
256
167
174
223
194
193
256
159
236
201
250
100
185
230
195
160
200
227
248
173
185
248
194
189
149
194
178
228
191
172
180
173
257
242
208
206
180
187
249
130
220
249
228
218
171
250
186
180
184
228
185
138
211
252
221
238
232
177
264
187
200
154
208
195
264
249
217
227
257
156
141
184
183
211
202
141
264
145
152
206
223
174
165
253
203
192
165
239
180
190
227
162
201
143
199
215
226
203
201
164
233
192
256
190
239
180
178
227
213
219
216
169
190
251
133
135
211
245
202
176
262
208
120
169
199
237
238
124
161
142
186
233
162
228
221
217
230
113
153
204
220
280
190
236
226
162
211
206
196
167
198
185
178
218
199
167
233
159
232
184
184
242
197
170
205
248
214
253
154
206
227
190
170
184
159
147
173
208
166
161
163
198
223
236
142
194
201
249
249
250
273
238
170
194
204
168
194
199
196
207
185
167
189
160
168
217
184
231
191
185
224
138
222
207
237
193
183
134
163
211
184
180
247
191
185
252
124
158
204
227
244
254
211
223
235
175
219
189
158
169
236
267
225
117
202
201
205
251
169
221
167
211
198
156
216
183
144
215
212
255
184
233
236
109
155
204
210
199
216
168
167
177
142
151
236
203
197
214
209
176
207
134
208
251
177
226
187
199
122
230
201
193
190
111
152
210
228
178
198
205
196
188
206
246
260
192
203
209
217
262
209
158
242
209
191
186
203
192
159
228
267
211
232
276
189
211
172
155
232
192
213
101
223
255
231
233
228
156
178
235
173
160
144
139
238
180
183
143
138
256
204
212
200
194
282
185
180
234
203
170
203
185
209
178
142
289
154
186
149
195
152
119
207
219
243
198
243
177
242
194
151
176
191
107
209
194
229
216
151
194
257
215
263
173
219
126
161
201
162
144
205
185
193
220
203
247
177
135
208
150
192
176
196
78
184
218
169
228
202
231
209
152
170
194
203
183
187
139
184
223
154
159
183
160
229
196
210
185
203
144
180
226
211
163
164
163
178
281
163
221
216
110
184
243
230
224
245
204
217
229
169
121
201
235
219
204
171
183
230
194
221
182
193
230
218
212
222
237
207
179
188
248
179
188
182
255
184
201
230
178
198
194
178
226
201
201
144
207
229
154
200
251
230
232
220
212
204
151
175
233
243
211
159
153
185
197
229
217
179
199
236
170
247
170
144
175
225
201
216
200
176
197
215
161
187
160
165
219
199
197
238
213
184
187
134
206
243
244
187
123
166
199
218
173
228
245
176
183
194
176
225
204
184
204
216
237
234
188
119
176
157
162
230
196
121
231
207
228
245
193
219
278
232
193
245
185
220
159
213
203
222
210
166
196
173
210
221
229
149
193
206
265
229
167
153
225
185
274
173
202
232
221
207
189
156
197
156
218
249
208
145
214
225
206
201
202
183
205
278
185
262
206
187
238
170
218
227
186
231
218
224
189
182
244
198
194
215
190
198
211
193
184
208
233
154
157
197
189
181
178
173
198
167
117
229
156
227
215
161
228
154
128
183
181
203
198
121
217
183
153
184
157
220
181
195
218
220
164
153
215
170
262
229
218
175
199
228
198
248
226
203
259
232
175
188
233
197
236
176
191
159
180
223
226
215
146
229
245
238
193
245
218
268
224
195
191
183
143
215
219
199
130
242
167
200
139
187
170
176
181
170
129
149
199
215
175
143
125
184
154
218
202
190
210
176
194
223
243
271
170
177
163
268
283
173
156
256
235
259
214
241
182
258
186
230
178
224
262
186
286
195
255
217
192
215
197
173
199
227
225
160
131
174
207
192
160
197
192
232
236
249
170
160
181
222
206
115
234
188
172
218
201
231
139
185
185
206
147
186
193
214
188
186
186
235
221
160
203
168
225
169
202
199
232
212
210
186
201
224
236
143
229
185
159
210
228
241
205
279
245
160
206
129
212
242
243
192
247
194
215
200
245
224
221
114
160
225
161
224
187
159
173
275
233
213
187
169
231
226
191
196
201
196
196
230
167
248
236
227
179
170
187
229
222
253
209
216
167
232
229
232
236
210
248
174
190
172
196
164
167
210
200
156
227
232
222
192
219
191
192
198
201
200
230
208
228
118
249
187
219
178
177
191
296
210
223
161
236
241
146
223
212
127
182
204
213
140
179
175
179
199
264
187
226
215
162
225
216
246
232
189
198
197
255
181
235
223
170
203
217
190
186
196
145
218
159
230
216
262
219
152
232
160
196
239
201
152
241
194
129
145
202
214
214
233
157
128
254
179
185
219
189
190
222
120
206
151
220
185
191
239
214
190
213
215
179
228
141
174
198
180
197
208
186
232
261
187
222
222
154
211
259
154
214
134
186
224
221
180
249
219
221
222
260
259
209
170
177
166
145
173
213
196
208
212
167
201
209
254
212
212
197
270
260
222
203
205
137
209
148
239
216
208
250
143
218
204
250
232
231
236
189
196
190
183
182
174
203
257
255
206
257
231
242
157
169
212
211
237
202
132
217
171
228
187
217
214
208
199
171
215
193
244
233
139
256
152
157
161
210
270
188
166
234
237
199
182
192
160
206
239
235
169
232
218
233
124
216
192
162
174
190
164
202
183
197
173
156
148
208
143
217
221
140
205
229
234
235
187
248
295
138
137
206
205
227
213
165
168
228
193
212
128
228
185
110
180
193
256
231
242
286
141
206
202
205
175
199
220
140
141
179
203
207
159
142
202
212
256
214
180
163
218
150
172
167
201
212
219
148
251
227
218
208
229
247
223
204
172
227
187
219
160
193
167
207
175
204
239
208
182
205
242
181
247
152
190
228
194
141
158
160
267
161
182
225
202
145
131
228
202
146
209
215
215
229
217
261
224
199
228
169
182
199
233
183
220
200
229
131
184
175
198
237
198
197
183
190
143
195
209
161
238
254
231
244
209
207
150
155
185
232
143
202
195
209
162
173
227
230
179
200
243
225
247
157
236
150
171
237
164
227
170
174
206
233
140
206
239
237
240
199
239
207
220
278
225
218
204
174
167
197
225
138
246
181
151
217
233
247
214
225
194
168
241
250
216
176
195
287
250
158
209
225
190
254
211
153
184
184
221
246
246
138
199
187
236
239
214
242
254
250
192
158
195
231
194
214
246
233
214
148
268
219
168
214
203
175
183
209
182
195
182
201
168
188
165
251
190
242
241
161
196
197
198
151
203
218
198
148
187
252
175
169
193
211
212
209
222
180
233
256
275
245
219
214
219
169
121
213
247
225
217
232
249
221
151
181
199
175
220
214
203
203
195
220
181
116
187
171
207
165
231
208
222
223
214
269
217
219
229
185
186
215
205
220
207
188
198
173
205
245
124
181
231
138
214
151
238
256
201
148
175
192
214
206
295
199
257
185
165
211
124
129
215
154
182
180
230
191
182
174
222
195
214
170
196
140
212
191
148
231
190
204
135
129
158
187
194
203
198
189
258
162
255
90
157
233
141
210
205
208
205
190
221
174
209
197
138
201
200
180
212
190
176
237
208
189
213
235
214
170
143
197
209
236
197
199
188
188
159
258
174
169
168
203
205
170
170
242
216
197
199
205
179
197
222
118
228
253
151
154
222
214
197
228
168
224
164
192
99
160
207
204
151
187
166
219
143
177
239
169
239
202
143
227
189
188
152
204
153
182
173
189
152
293
157
244
133
208
248
242
176
225
225
252
192
233
167
195
215
228
161
192
153
172
202
267
250
218
216
223
244
187
163
233
184
184
229
195
235
227
228
131
198
179
222
228
268
209
272
243
186
186
207
164
207
198
193
218
189
188
260
200
196
150
229
265
248
186
215
230
183
226
206
208
172
144
232
285
225
223
181
190
173
238
243
199
192
242
216
209
175
189
169
250
216
227
208
163
227
260
160
206
241
217
155
212
217
187
169
170
209
237
257
159
191
150
164
245
231
137
198
164
130
230
140
211
211
241
245
177
200
213
153
194
166
219
188
273
220
167
219
220
201
209
211
252
148
201
175
228
199
233
154
116
213
127
186
201
250
222
237
209
154
204
235
171
215
223
167
211
177
163
199
186
262
176
204
209
227
153
231
185
229
209
241
213
214
168
221
222
190
125
171
198
199
150
201
170
164
276
217
209
243
191
206
224
162
222
179
166
148
254
233
193
245
174
150
193
125
162
246
190
257
198
174
192
180
265
212
218
201
208
152
152
178
204
150
215
263
193
229
227
211
240
212
175
266
168
243
174
237
218
123
212
226
208
201
152
246
243
166
145
212
187
213
218
196
236
230
247
221
190
185
247
173
188
212
178
244
225
194
180
185
155
211
254
254
163
259
264
196
169
256
233
199
175
197
189
182
257
187
213
198
157
204
179
192
216
198
184
136
199
227
164
181
236
224
201
254
224
185
204
174
207
212
224
163
268
238
121
196
188
171
191
191
148
210
210
219
172
265
160
183
217
245
191
207
186
232
141
157
210
182
218
145
118
215
199
147
236
261
227
199
186
154
241
183
222
100
198
235
218
195
164
170
207
193
219
185
163
240
230
251
268
231
172
173
199
163
268
198
211
167
153
173
123
248
192
158
210
127
160
222
239
245
210
153
242
204
220
145
187
228
160
179
174
232
227
181
171
250
173
200
138
168
196
224
198
208
211
224
195
151
168
195
165
184
121
238
252
249
261
211
145
207
218
199
182
208
171
189
169
219
147
237
253
220
150
211
246
204
182
177
165
181
193
245
125
194
183
242
193
165
222
289
139
230
204
213
168
154
155
164
195
220
219
179
243
135
207
159
218
237
171
246
185
204
228
249
229
201
229
205
244
188
195
187
259
184
165
242
217
180
215
182
232
168
225
166
165
225
205
193
171
236
144
232
236
204
169
206
194
172
223
212
172
189
218
241
192
210
198
202
261
146
221
233
226
191
204
184
165
215
195
188
206
195
256
221
195
161
120
225
121
213
231
234
187
233
181
228
178
199
131
144
244
179
240
193
173
194
172
199
219
214
173
179
112
246
185
156
178
194
179
198
178
173
167
151
238
256
144
162
275
135
198
161
249
142
200
185
150
178
179
222
189
200
197
156
238
182
186
188
161
154
247
252
281
236
130
231
227
199
186
240
247
132
227
237
147
248
152
201
215
189
199
234
189
201
253
187
276
192
227
231
183
237
208
167
203
195
185
194
146
239
180
199
287
225
197
210
195
179
233
141
195
188
172
266
211
170
253
207
233
211
268
224
221
146
215
231
219
131
239
213
153
188
208
104
201
233
169
163
260
178
189
144
188
203
247
146
150
201
192
193
178
165
242
156
209
176
174
175
179
195
206
194
222
268
166
197
142
170
185
195
234
148
232
181
183
239
214
210
90
127
154
215
184
190
190
183
173
253
231
195
193
192
224
227
175
220
182
202
226
219
219
250
154
199
201
118
185
182
163
141
197
187
137
83
176
174
237
222
182
284
242
194
151
225
261
198
150
145
178
248
157
147
205
201
245
209
178
194
209
208
197
236
223
206
185
208
175
240
197
153
154
121
222
180
206
147
199
112
193
210
179
218
232
235
141
194
202
194
166
191
160
208
243
230
154
190
259
168
177
239
140
238
133
207
235
212
190
195
233
209
238
209
136
257
208
176
213
214
133
172
177
176
203
198
211
191
274
174
215
211
231
239
116
239
202
201
182
179
163
173
158
189
210
167
231
173
181
195
161
105
175
171
174
266
199
183
161
171
169
238
224
197
169
229
242
222
240
147
218
189
206
185
233
180
155
200
158
207
245
209
181
209
116
195
192
238
231
237
154
204
151
223
212
235
236
143
246
176
173
183
186
135
204
250
253
172
203
180
128
231
242
203
207
194
218
172
208
202
176
175
267
220
193
139
238
190
241
170
156
192
245
193
163
201
214
194
210
214
198
205
188
239
195
212
222
227
200
192
250
241
229
256
204
129
209
244
149
168
126
201
150
220
200
139
258
207
212
224
224
197
216
94
185
194
208
227
196
228
196
167
153
231
186
191
211
161
216
182
251
170
273
183
154
178
213
241
178
189
150
241
154
195
147
203
217
157
189
134
266
214
245
174
216
151
253
243
150
227
204
224
200
231
203
179
217
188
222
155
211
135
259
186
161
202
214
203
238
180
203
230
276
231
202
282
154
191
187
197
239
162
258
157
157
242
213
197
169
190
221
143
228
184
169
229
230
243
216
213
152
198
205
182
225
219
198
195
241
266
250
277
230
151
226
205
170
210
180
168
207
250
152
175
240
190
218
186
236
169
233
227
196
187
132
186
236
162
251
183
203
255
254
169
211
151
209
172
222
172
130
220
210
136
183
183
179
193
200
220
201
186
217
242
144
207
165
218
185
195
151
232
212
150
227
161
247
243
158
195
170
207
172
272
253
257
180
244
186
191
286
232
188
168
148
266
209
225
213
175
140
210
196
159
196
237
205
197
185
205
225
204
200
225
222
127
241
290
143
209
226
216
225
142
183
178
259
210
190
222
179
240
208
215
167
196
168
200
202
171
232
227
170
136
202
220
204
184
183
159
130
214
214
212
141
135
229
188
230
249
219
202
242
229
213
206
187
209
240
223
174
187
187
151
247
248
145
180
234
216
154
237
279
188
225
185
150
216
241
222
247
187
302
164
177
170
185
203
179
200
185
205
186
213
231
230
185
191
212
189
213
231
222
255
198
202
222
220
201
242
227
253
248
220
217
247
173
206
205
188
198
207
155
236
295
223
243
240
230
228
190
220
200
232
176
168
178
236
214
242
175
218
145
200
229
254
227
173
162
218
224
179
229
159
185
202
190
246
226
208
176
148
190
243
204
202
215
252
199
141
167
242
210
194
201
231
179
175
238
159
152
239
223
170
206
215
180
211
162
213
185
199
260
213
282
194
211
183
169
222
201
212
245
230
253
188
212
233
195
168
191
216
125
185
194
261
236
161
180
190
251
234
203
189
222
221
146
146
254
222
199
179
223
225
203
139
185
187
186
211
202
203
228
151
218
229
176
229
186
206
176
177
190
253
212
199
242
225
169
193
167
207
258
226
191
261
214
205
177
235
130
199
182
168
270
224
226
215
133
220
199
230
127
223
186
178
164
244
142
250
207
92
175
213
185
174
208
197
258
258
130
240
188
199
208
162
224
217
257
145
172
226
159
184
226
185
229
190
210
224
217
187
151
260
188
213
236
185
208
213
237
200
273
206
250
227
206
174
270
202
133
157
249
250
157
240
126
199
182
251
250
220
225
176
170
223
161
176
217
180
222
197
185
191
169
213
226
206
205
161
123
226
211
167
140
205
149
157
191
190
244
219
204
165
232
208
165
146
225
246
177
270
234
208
235
237
187
237
281
191
185
229
199
194
264
243
214
208
250
113
189
185
191
146
221
201
184
166
217
210
192
193
252
247
157
208
232
206
216
229
220
196
247
245
172
236
151
205
186
181
253
205
153
222
123
199
218
225
238
212
216
198
235
223
226
252
226
209
208
254
189
181
169
198
152
168
168
264
130
201
198
228
182
127
211
88
255
149
235
197
244
188
213
217
178
247
162
187
191
155
179
161
232
189
196
217
220
145
212
190
183
258
196
161
170
232
226
189
183
209
264
193
228
196
218
246
236
229
192
228
161
161
210
173
181
216
197
235
117
236
185
273
145
221
231
164
209
181
141
295
206
220
247
218
180
162
199
244
197
128
220
213
178
192
252
235
196
213
195
205
258
210
224
185
161
217
189
185
190
194
278
227
184
258
221
214
200
169
294
218
193
175
164
162
198
203
175
227
250
201
193
209
195
253
234
243
238
200
93
202
174
207
223
189
230
197
170
211
169
171
196
165
246
184
155
215
230
222
207
207
97
217
183
190
227
221
206
181
219
233
225
204
198
248
183
235
251
177
174
285
193
204
199
249
230
189
236
217
161
189
162
210
196
191
178
169
195
188
227
265
153
178
200
202
150
187
218
232
233
199
180
235
185
153
188
226
255
210
260
184
210
239
248
209
211
285
172
162
187
247
233
233
223
252
253
187
262
217
145
171
179
199
134
239
261
220
192
177
218
200
190
204
192
231
148
170
125
198
230
205
243
180
195
152
130
218
173
198
187
202
202
214
153
211
176
258
176
208
196
189
189
211
214
178
194
203
200
207
218
219
203
203
220
211
178
187
228
144
184
182
228
231
207
229
223
194
106
206
267
160
150
189
229
125
206
209
259
233
176
201
205
200
195
219
199
210
220
210
232
235
222
201
272
230
160
200
232
161
157
167
162
242
213
244
244
271
247
252
217
146
244
240
174
237
232
223
213
193
242
202
155
161
195
255
255
213
172
176
210
190
262
241
197
274
257
230
228
185
238
200
175
215
189
201
208
195
182
95
116
154
236
204
206
223
215
203
156
207
202
167
196
234
191
237
158
181
169
185
223
198
205
222
247
194
170
223
211
158
211
160
156
106
160
167
247
135
191
150
210
173
179
156
164
170
200
175
245
245
228
240
224
205
208
267
156
165
167
169
269
193
110
241
224
183
224
194
272
229
227
180
275
196
164
267
172
210
196
212
219
135
195
262
180
213
205
180
185
170
233
162
305
201
255
225
180
219
145
185
158
208
124
261
201
180
242
242
152
176
193
223
277
183
184
191
223
250
171
198
180
180
164
172
243
181
182
176
203
234
236
237
189
191
260
228
253
214
235
232
161
192
206
199
184
268
158
232
212
195
207
255
180
196
213
195
173
204
220
255
191
223
211
196
245
206
204
221
235
230
230
205
217
182
178
256
162
129
176
127
203
266
223
216
208
241
189
200
211
178
154
267
221
224
243
181
212
186
212
210
204
174
220
183
227
157
170
163
150
146
236
118
192
190
201
224
231
208
196
210
168
224
134
223
242
151
189
174
257
164
130
184
176
229
165
245
144
218
196
196
185
163
216
145
236
190
247
162
229
132
223
194
179
134
197
222
185
184
140
198
221
162
238
248
132
210
199
204
193
201
172
255
203
178
165
173
222
220
213
254
180
181
222
210
223
255
123
232
133
218
237
203
222
162
168
231
225
206
193
203
164
194
165
203
228
114
188
200
180
168
251
183
152
230
188
183
147
194
213
207
95
212
140
246
212
229
240
225
169
227
197
223
258
228
171
172
183
175
119
157
225
204
203
202
257
185
171
173
158
206
225
183
201
235
209
243
214
191
198
184
259
200
255
249
212
191
222
159
259
213
233
210
270
147
209
231
215
191
257
181
236
201
207
177
208
207
216
263
199
215
155
234
164
195
171
123
205
218
165
249
160
213
207
219
181
153
246
202
224
184
153
257
246
255
241
254
222
151
200
161
196
190
204
165
180
157
233
213
165
219
165
207
164
183
188
177
200
165
172
155
177
173
262
186
182
136
174
212
208
192
184
267
206
145
241
210
188
172
244
198
210
179
190
195
217
229
201
239
167
176
255
220
246
186
181
221
120
159
228
175
233
227
171
200
234
149
199
189
194
183
216
234
201
212
269
242
246
200
173
139
202
139
171
196
215
167
146
231
167
167
232
211
174
217
183
242
196
219
188
253
238
225
151
238
189
176
247
220
198
229
212
216
217
141
204
177
192
205
209
225
212
175
172
201
215
211
121
179
188
110
155
208
200
220
93
213
233
211
217
197
202
211
245
237
167
247
221
244
277
204
170
182
201
181
224
272
192
174
179
179
217
180
242
162
258
204
114
262
193
214
188
152
183
236
135
211
241
182
182
166
235
231
205
244
202
144
223
245
157
194
240
181
157
131
238
186
147
171
167
214
182
183
203
197
242
152
257
211
192
223
165
189
201
210
195
174
264
203
228
237
202
192
177
158
203
213
154
236
193
258
177
179
186
240
257
171
229
160
241
253
182
207
145
211
240
196
184
248
195
183
230
177
218
254
237
227
242
242
153
182
219
217
190
294
192
261
174
245
193
163
252
175
207
188
241
193
188
151
198
239
175
217
191
182
241
241
210
158
149
192
161
231
182
184
241
216
118
212
233
176
187
208
196
193
224
231
183
178
160
161
281
237
158
186
215
232
272
157
168
171
230
169
205
195
220
205
237
194
214
181
174
225
175
234
190
139
220
204
203
210
203
163
261
114
186
186
179
183
226
205
190
229
183
172
218
159
235
194
166
212
164
177
143
229
207
215
199
156
169
201
219
216
173
205
199
216
187
155
175
228
198
174
181
216
193
213
229
188
185
149
237
188
156
160
203
201
210
186
189
257
191
227
228
199
201
184
198
226
241
185
222
225
232
190
149
204
218
238
215
247
178
251
214
167
197
274
227
245
212
199
174
235
181
247
196
255
170
170
183
173
183
218
159
202
181
178
180
171
157
225
213
168
161
210
171
154
203
182
196
201
229
168
223
177
166
224
206
231
160
168
230
200
214
201
262
193
239
217
228
185
210
212
179
219
213
223
209
248
214
205
140
247
217
183
199
221
169
220
187
211
201
165
214
135
202
154
186
242
210
162
228
192
195
185
230
174
235
238
167
249
232
183
198
168
198
223
201
261
197
214
190
178
247
251
184
186
114
208
253
221
233
221
226
120
228
261
246
194
124
208
247
214
180
158
154
170
281
172
221
229
195
263
237
224
140
184
213
243
249
209
223
179
162
224
248
176
194
235
261
236
216
188
259
134
200
189
150
171
157
210
265
193
212
162
161
104
160
209
214
185
226
244
245
208
125
166
181
208
126
194
217
204
125
172
226
149
255
217
189
211
180
224
209
186
233
194
219
250
223
239
231
259
239
146
251
188
205
208
265
203
203
187
206
239
260
230
135
190
182
221
163
202
234
201
144
263
187
184
203
277
219
188
217
166
231
260
253
220
176
250
204
205
205
237
192
234
219
191
154
137
237
221
181
112
204
230
184
212
237
211
242
206
181
185
197
206
205
222
163
208
129
190
238
201
239
214
217
214
240
200
164
215
179
217
220
153
151
173
176
199
259
172
159
243
246
204
170
244
187
160
172
218
215
211
239
138
211
193
250
236
122
258
248
206
229
178
213
221
167
282
164
258
167
219
160
220
164
185
178
174
221
207
193
193
239
201
179
153
166
220
177
164
134
131
164
227
165
211
228
196
160
278
211
184
243
272
176
217
218
205
236
197
153
190
199
124
162
192
223
214
240
179
189
196
196
182
208
235
82
242
204
160
243
210
206
232
223
221
226
162
247
224
194
218
190
239
195
195
255
234
232
200
212
138
243
129
111
180
173
210
174
149
203
210
235
188
215
215
212
166
209
292
216
200
231
261
220
193
226
171
215
229
198
205
202
215
190
171
161
188
236
162
103
178
144
230
125
259
247
249
180
196
261
201
127
159
201
206
196
207
200
205
141
186
137
166
179
168
149
193
182
146
218
193
213
254
176
210
172
165
221
211
204
218
265
156
146
194
162
167
211
167
176
226
191
249
189
171
153
191
142
178
188
183
198
147
270
212
180
257
189
240
186
231
217
192
216
166
213
195
147
198
249
214
287
177
172
231
176
196
175
228
205
237
151
221
149
208
201
169
206
198
201
225
208
243
198
163
210
220
238
234
192
221
245
184
161
144
193
211
199
235
237
184
161
224
220
175
237
209
200
233
141
197
252
204
131
220
197
217
206
223
164
232
259
202
201
115
198
187
144
171
128
207
204
234
202
201
220
214
215
247
206
188
171
197
147
225
173
232
204
202
250
169
172
237
191
292
173
236
152
170
231
181
205
206
192
208
160
170
186
257
200
216
209
163
260
153
146
172
155
145
241
195
245
171
193
170
197
192
218
180
218
138
153
230
200
229
189
189
175
157
200
250
213
196
200
174
223
188
235
202
259
271
198
202
225
185
189
193
284
212
165
164
249
146
210
183
139
188
224
160
246
138
185
233
173
243
192
191
251
195
193
197
183
186
175
143
234
247
213
214
184
278
222
147
176
233
196
145
206
223
232
211
198
198
211
193
190
154
239
161
258
205
200
213
196
170
182
161
228
149
171
204
180
200
226
206
198
195
152
226
191
220
192
205
201
271
207
253
223
189
168
210
225
151
174
202
209
174
201
207
151
195
212
199
210
243
208
176
229
223
178
239
146
231
179
202
184
235
247
159
248
141
184
218
205
193
182
252
204
263
185
214
197
199
217
217
227
142
240
195
183
197
167
228
240
232
182
248
222
159
172
162
183
202
171
158
171
166
205
153
195
223
159
178
181
242
195
181
201
183
198
168
135
194
249
195
175
170
160
186
261
159
220
207
168
186
236
266
127
186
238
136
138
228
199
151
167
235
175
188
227
244
164
222
212
199
145
176
214
185
242
218
154
167
248
153
230
142
242
184
197
201
156
222
139
145
202
233
170
251
160
141
173
155
190
186
207
184
252
208
174
240
175
213
161
182
190
227
223
233
160
191
222
235
173
202
180
195
186
220
159
181
218
128
194
210
208
201
255
198
195
213
197
279
247
227
198
113
237
209
199
158
214
167
156
215
195
147
178
286
160
208
226
172
229
148
206
246
149
172
195
197
170
184
188
250
160
170
221
173
168
166
206
142
178
221
135
234
163
221
236
265
215
181
185
197
175
167
196
208
195
162
219
238
172
231
225
181
217
243
206
199
206
152
197
259
179
215
226
212
228
203
203
206
187
183
170
292
218
188
242
229
166
165
193
214
178
207
178
241
161
245
213
155
218
210
201
236
170
181
254
228
226
206
214
161
190
238
196
85
225
212
177
269
175
182
222
196
196
277
211
240
181
173
178
185
244
210
216
239
252
254
212
199
267
246
209
200
204
167
220
197
176
132
155
171
218
182
271
177
218
261
244
223
235
188
148
147
185
144
186
223
160
149
155
230
248
213
186
171
220
223
210
171
184
184
217
243
168
186
179
226
161
203
165
201
134
219
213
233
175
147
168
147
240
189
189
218
236
203
202
187
207
229
185
220
242
147
210
158
161
184
198
211
224
153
224
173
196
185
206
187
186
208
197
191
211
205
199
131
174
217
236
187
200
217
189
159
205
199
156
139
195
249
196
203
225
228
165
106
159
261
231
173
196
200
226
188
165
176
197
212
204
141
188
197
196
108
154
194
213
177
172
218
187
171
187
245
275
241
259
205
201
218
236
132
184
172
157
206
182
250
154
210
223
291
211
168
189
243
195
206
194
174
240
201
219
153
230
209
216
192
202
230
242
267
218
245
249
179
254
181
184
226
214
212
161
204
246
184
232
200
217
217
161
233
161
177
158
182
236
278
205
167
205
192
189
171
167
201
195
156
178
218
185
206
163
195
203
163
250
148
153
199
206
164
196
145
159
152
204
199
173
204
178
215
160
177
221
204
188
205
180
206
175
197
185
166
185
185
154
236
249
189
190
211
228
239
162
199
279
181
229
174
202
217
94
237
160
240
167
192
216
191
176
120
185
215
160
184
213
209
231
152
230
163
178
162
236
252
147
241
196
151
109
237
161
190
216
160
172
163
192
212
217
178
123
189
208
229
190
186
199
180
228
209
209
177
223
205
239
201
220
199
151
181
192
134
206
225
203
222
212
219
152
195
196
224
193
236
214
214
216
151
205
196
244
174
190
176
190
210
220
124
183
196
159
204
228
162
198
193
190
214
181
191
209
191
194
112
229
206
220
140
158
145
208
203
233
203
211
216
185
208
232
243
218
131
263
223
178
190
163
158
203
180
127
213
217
201
160
244
132
232
193
180
198
222
218
212
131
186
243
147
170
191
193
207
250
231
242
228
260
178
153
235
131
210
217
186
169
189
255
142
206
187
145
192
224
203
159
235
219
177
201
190
207
185
150
225
174
236
205
176
252
188
194
216
218
162
209
195
152
148
214
212
257
215
192
133
181
209
213
219
167
198
206
192
234
233
213
193
132
191
219
168
190
188
123
242
159
191
149
210
263
235
155
214
191
188
220
212
114
197
225
152
139
191
172
185
215
240
140
236
229
200
192
233
219
198
193
228
244
173
231
150
117
244
154
233
205
181
141
241
192
197
169
208
159
214
168
184
185
157
173
216
234
200
212
181
244
228
246
278
178
177
212
223
231
187
232
235
183
222
162
184
158
271
158
186
259
203
154
190
195
253
207
243
230
175
214
192
194
145
182
175
221
128
228
245
229
227
211
177
146
232
198
206
168
203
239
194
190
237
188
191
196
143
193
223
187
229
241
175
182
178
183
170
204
157
156
210
143
120
183
241
212
224
220
195
237
233
237
208
221
183
229
164
231
184
210
200
199
210
197
156
197
201
181
141
204
189
135
203
216
229
176
223
228
96
152
230
184
196
195
154
209
199
176
164
209
145
176
205
224
242
210
207
175
261
205
207
214
197
196
181
97
220
240
138
179
205
157
169
134
164
264
216
214
130
211
199
236
235
212
200
222
188
243
219
175
189
163
178
210
190
211
231
140
227
200
163
164
223
211
235
247
193
210
192
193
202
210
190
221
222
192
204
204
219
200
248
140
178
239
264
216
194
159
160
264
154
279
150
192
141
156
160
179
193
221
225
174
218
191
162
162
183
181
191
182
192
153
179
259
192
145
218
196
226
210
190
176
95
163
191
168
138
205
211
185
178
169
177
204
190
211
168
199
192
234
232
181
196
228
205
230
196
249
206
210
222
222
211
219
218
209
143
210
215
167
281
238
192
169
203
203
234
163
197
168
222
216
218
201
185
165
186
134
196
199
215
223
234
180
179
252
167
115
167
188
251
223
251
191
235
168
223
143
208
164
207
214
221
186
162
161
161
148
221
168
206
207
220
182
237
219
239
193
204
174
160
177
121
183
183
120
204
156
256
162
143
184
187
218
232
150
124
172
219
179
174
278
139
175
197
148
178
171
208
255
142
174
225
197
224
187
191
248
202
196
159
235
189
201
232
191
229
159
207
224
198
188
201
122
208
205
220
202
262
192
151
177
176
241
218
198
200
234
185
224
180
182
265
218
180
182
205
174
216
203
214
243
199
153
227
260
262
163
231
210
267
171
145
201
190
194
204
204
177
205
281
227
215
139
197
169
212
195
159
156
221
186
219
163
166
177
222
227
246
224
165
188
236
160
235
233
246
236
238
190
218
212
154
223
165
215
245
258
142
188
192
109
224
225
167
189
230
190
188
138
256
213
269
229
140
242
229
181
214
181
135
229
180
195
191
303
185
223
221
194
210
198
263
167
198
213
180
148
242
205
217
217
203
203
257
157
174
253
187
201
197
210
189
179
172
217
197
171
208
186
173
227
217
198
250
244
191
175
143
204
186
185
174
197
184
240
245
219
197
192
184
222
235
146
202
232
182
146
197
202
180
231
201
175
213
240
137
128
162
234
172
209
231
129
210
205
241
201
194
195
149
144
219
215
190
169
229
198
155
218
218
216
219
182
227
172
219
249
194
232
213
187
236
197
225
167
197
208
212
193
208
204
119
199
206
209
212
202
224
242
220
163
239
209
170
235
152
244
197
153
184
212
198
210
208
248
202
166
240
193
206
275
249
205
186
171
243
234
108
149
204
239
215
224
184
162
214
223
187
194
210
257
225
208
250
262
224
226
227
144
200
191
196
181
234
238
147
193
143
217
202
183
191
228
226
197
216
210
182
200
228
181
261
153
199
175
180
162
192
210
211
163
167
205
151
204
123
139
162
187
173
237
207
194
202
213
175
197
233
157
213
175
140
168
185
197
218
169
182
254
214
159
183
179
182
250
220
195
196
234
167
134
188
248
179
157
214
176
194
161
198
193
158
238
180
242
204
203
213
218
256
184
172
195
139
173
186
197
271
135
197
185
254
184
206
222
199
222
224
215
215
130
221
152
179
231
181
201
261
202
221
232
138
201
177
191
214
217
145
178
238
201
199
196
250
190
136
213
229
199
199
183
226
142
221
274
169
250
212
181
217
231
191
161
189
185
210
232
172
229
204
234
183
130
186
200
214
198
185
191
221
201
192
209
230
164
265
211
200
138
209
215
223
225
222
242
206
229
199
150
168
228
187
182
188
228
227
172
215
168
283
177
168
248
237
168
208
175
159
220
161
220
265
223
192
208
139
210
241
222
221
191
187
238
227
164
125
147
198
156
186
129
225
138
220
240
150
219
215
186
207
221
189
244
226
237
210
174
200
228
200
229
262
199
190
150
296
251
164
224
206
191
194
218
251
179
202
160
229
208
228
248
192
255
227
258
191
173
172
163
224
198
268
186
139
174
223
201
270
132
159
241
148
174
166
173
208
226
292
172
153
144
199
209
197
171
210
202
138
152
223
207
196
157
236
234
212
229
193
197
208
225
217
193
257
164
213
170
224
226
185
226
232
181
211
211
156
189
216
214
211
140
218
197
244
229
161
144
254
197
165
200
170
204
225
131
197
177
215
159
215
197
181
157
191
232
239
208
221
232
150
225
173
243
215
199
210
181
230
201
260
246
216
238
144
164
213
190
236
192
203
219
197
140
140
196
154
279
231
184
175
202
183
133
248
189
210
175
270
187
198
179
173
164
151
161
155
185
176
228
178
230
181
226
238
114
154
177
158
193
263
206
260
203
150
162
214
146
175
146
215
189
173
206
226
230
271
179
236
205
218
208
216
238
196
202
171
145
250
141
182
162
222
198
259
191
196
211
245
181
197
236
153
207
178
243
240
203
192
185
185
239
182
172
110
173
254
186
219
187
242
249
220
243
191
260
197
185
242
248
250
245
244
228
188
179
207
236
207
241
187
212
216
205
238
205
167
252
180
250
200
215
262
183
233
219
234
197
187
194
182
244
194
248
194
153
147
272
185
162
239
166
210
248
181
218
202
226
231
198
156
229
212
247
218
216
204
190
107
244
143
214
200
206
217
223
216
188
224
244
194
201
162
216
154
140
160
183
223
200
222
178
241
193
263
189
227
234
197
215
237
208
146
241
173
190
182
212
193
186
122
230
214
153
186
178
247
205
206
133
206
116
225
215
215
177
78
234
193
226
223
139
222
152
200
202
184
178
157
224
172
185
182
150
240
237
210
203
251
238
167
150
175
245
226
233
140
212
188
226
240
279
223
175
203
248
165
245
217
188
269
252
156
214
174
158
185
123
202
164
171
184
185
212
189
199
178
187
231
250
237
183
196
191
217
122
233
313
220
207
229
155
260
191
199
170
190
207
201
220
148
218
214
218
117
154
247
214
152
157
234
231
184
186
256
200
205
222
171
148
247
185
215
204
164
203
208
173
221
160
203
216
245
191
190
171
111
244
187
156
188
224
225
214
182
223
152
202
210
181
223
233
161
160
236
140
232
229
205
187
194
155
193
258
202
165
173
239
217
192
238
228
207
185
228
214
209
260
167
177
188
202
213
204
238
204
190
234
242
165
213
161
157
213
219
141
254
221
155
240
194
222
152
203
159
203
211
198
209
166
190
201
192
206
226
121
156
204
221
225
155
283
217
224
175
180
145
184
245
197
195
186
197
191
236
232
224
140
196
201
194
171
192
235
183
206
204
257
219
264
176
217
258
207
222
226
183
205
274
199
161
152
216
190
196
202
242
229
168
152
187
240
242
159
196
186
187
208
251
201
209
194
239
147
210
217
194
208
156
163
209
267
147
179
154
202
174
256
198
260
192
204
197
207
207
252
173
182
207
167
178
156
199
265
229
161
231
168
187
237
248
255
211
220
210
166
207
210
240
232
184
204
158
238
223
198
237
120
201
189
201
203
235
275
178
197
207
233
223
293
204
233
223
220
271
194
115
173
229
200
233
196
259
167
207
220
145
229
216
152
234
222
267
180
166
142
177
212
248
187
226
250
255
222
205
213
200
167
203
179
208
120
165
198
164
198
130
149
181
169
238
237
199
201
223
197
224
229
240
219
187
85
197
232
178
203
269
237
187
195
160
187
205
276
203
221
183
191
192
174
222
130
176
149
206
160
211
178
193
198
172
146
184
193
209
187
199
181
194
214
229
169
129
154
174
196
239
203
196
189
194
220
161
174
208
245
193
242
228
202
235
143
189
137
219
182
218
177
206
167
98
200
233
231
248
146
264
134
185
181
195
242
219
214
258
174
252
185
183
141
199
225
185
162
162
146
227
182
224
188
168
189
215
275
253
186
143
230
248
208
286
223
239
225
201
221
192
250
205
178
203
220
199
270
148
206
146
174
147
232
225
191
189
249
141
197
198
151
202
210
178
184
178
203
179
192
164
193
206
239
208
246
212
154
200
243
243
200
191
198
155
155
165
234
169
153
158
179
248
166
166
137
189
160
145
151
259
226
199
110
152
183
183
248
220
238
175
182
198
245
214
179
210
209
279
182
178
151
199
219
245
150
165
267
185
164
225
139
202
215
158
141
232
196
243
149
164
190
187
203
215
258
180
125
207
221
172
217
203
231
149
193
243
207
228
182
227
210
181
198
229
188
257
216
202
173
191
174
169
190
246
196
190
170
185
190
178
174
167
206
256
233
234
198
199
184
184
156
275
217
166
118
227
179
221
155
197
128
199
215
246
158
275
222
117
220
171
195
141
191
276
159
276
112
221
248
217
214
213
119
208
237
257
223
183
245
159
172
212
260
213
165
191
230
178
168
216
194
205
250
295
169
227
147
172
216
158
195
181
220
241
242
200
171
193
185
171
199
217
274
206
199
184
168
206
224
145
222
226
216
225
190
178
236
200
203
204
200
207
230
246
194
209
159
229
205
210
249
177
133
238
202
238
190
230
219
255
219
270
236
193
194
205
197
148
218
199
211
195
215
198
184
191
187
211
145
167
185
220
132
185
233
219
248
223
166
180
220
159
240
267
249
184
171
212
190
190
178
174
181
207
194
182
161
156
183
238
207
263
249
208
203
212
188
177
161
166
188
192
255
151
187
248
245
238
252
268
120
242
241
229
213
265
259
188
182
234
211
202
241
187
207
285
199
205
263
175
198
248
250
218
188
203
241
154
225
257
187
183
175
172
221
176
231
245
184
172
240
180
177
233
209
166
219
103
158
136
131
250
187
152
255
187
193
211
224
244
189
179
193
225
229
216
225
243
180
172
211
175
190
186
201
229
250
227
149
189
142
197
254
187
257
228
226
187
165
230
206
172
183
229
282
178
245
188
254
258
183
190
208
255
224
182
178
169
241
224
208
218
194
254
221
198
188
220
167
201
236
220
218
285
216
201
200
236
163
199
194
176
238
170
234
221
208
257
137
247
228
227
201
218
246
173
179
231
252
229
142
277
202
169
211
187
198
215
179
241
238
162
271
233
237
196
182
218
203
230
181
207
240
228
209
192
173
262
226
191
149
152
124
161
188
237
151
162
204
179
159
195
198
242
193
237
189
223
219
240
212
213
200
261
194
242
158
250
228
204
213
238
227
260
207
267
207
224
258
142
254
194
204
183
212
178
246
148
191
190
265
221
223
205
253
249
208
186
245
258
188
169
161
153
173
195
256
193
133
213
208
240
172
162
173
250
194
148
139
194
214
223
221
171
269
166
192
125
233
196
174
212
185
138
214
148
161
152
206
250
206
142
222
226
191
159
213
148
184
189
217
168
222
212
183
171
202
187
214
168
248
233
216
234
197
181
226
184
233
168
267
206
196
251
173
223
186
154
209
202
183
230
200
222
158
157
173
209
191
260
189
197
239
152
170
216
192
161
231
169
224
225
189
221
190
180
176
208
197
143
225
210
211
222
181
130
261
201
160
211
244
157
239
195
209
227
217
215
211
250
201
105
205
228
240
163
214
181
164
195
201
169
226
187
178
182
197
194
222
224
231
158
220
196
196
200
247
129
190
214
211
153
161
167
161
145
155
152
219
160
228
232
242
226
193
189
181
184
218
262
182
275
214
191
249
176
132
186
211
174
106
264
180
219
146
207
216
219
179
253
205
199
242
209
232
220
219
185
268
216
207
209
212
239
233
194
159
203
231
198
197
214
260
166
186
178
220
167
173
228
208
212
240
182
211
153
232
185
209
211
200
269
234
187
199
128
214
264
238
228
168
218
194
243
223
229
225
202
240
132
155
168
232
192
162
217
152
230
165
198
186
226
198
221
147
209
180
192
177
198
170
147
215
183
141
180
209
175
201
166
172
268
281
226
153
183
198
224
181
180
192
190
257
187
201
242
234
192
143
182
153
206
229
182
186
232
219
224
217
247
253
184
178
184
218
223
259
221
203
168
211
184
184
189
227
203
164
170
236
153
195
218
206
189
226
165
222
214
203
209
150
206
140
190
191
270
240
230
141
237
219
200
247
228
215
200
206
207
187
202
209
226
252
215
257
167
211
236
190
221
187
248
193
176
225
222
193
212
296
270
187
237
235
249
235
181
134
190
191
216
220
221
216
220
118
232
219
205
167
170
257
198
174
184
213
226
196
179
186
146
222
140
204
200
245
212
178
214
184
166
179
210
230
204
231
255
199
222
189
142
210
186
180
147
226
192
180
186
165
225
181
265
224
144
188
195
232
213
248
218
141
152
212
209
214
198
235
201
230
231
206
232
189
250
185
195
181
278
172
223
164
207
117
196
202
235
230
203
215
286
247
221
203
184
155
175
204
216
199
194
133
192
207
254
172
172
218
168
218
174
150
201
168
188
179
247
240
234
162
201
190
138
219
221
209
233
217
250
165
159
225
161
189
191
167
222
220
231
207
181
224
138
206
198
181
206
212
207
207
213
247
241
201
221
246
183
210
244
182
268
233
245
197
191
242
215
168
190
226
205
226
191
142
108
197
191
186
155
103
222
167
218
261
235
228
202
222
209
169
182
183
207
135
211
225
215
211
226
204
191
186
221
195
200
238
176
174
176
213
239
243
234
212
204
195
237
162
229
148
185
198
215
200
187
234
209
162
190
123
140
154
128
219
279
243
200
171
217
239
229
200
221
148
222
144
232
212
198
179
132
159
178
180
171
219
150
208
227
154
222
187
170
176
193
209
209
241
219
196
237
164
191
168
203
217
188
240
155
169
261
248
218
143
166
231
209
238
260
237
203
253
220
218
191
192
151
158
181
188
232
254
204
154
210
272
230
229
204
159
145
140
154
237
203
224
193
186
233
136
206
197
134
234
200
226
194
230
145
185
163
193
143
220
243
247
195
235
212
209
210
173
220
245
153
187
236
174
181
230
203
216
182
199
176
224
226
238
209
212
210
199
75
173
168
188
258
226
240
238
139
216
178
231
180
211
149
198
163
215
185
200
162
152
144
132
154
177
175
190
212
247
267
185
187
194
265
177
228
206
237
211
240
226
197
239
207
215
223
147
198
185
220
247
277
189
165
167
178
230
201
224
185
203
202
249
266
222
222
222
253
171
196
224
151
178
235
203
224
256
127
192
213
161
165
162
187
216
190
214
211
143
159
269
237
181
185
233
209
287
230
251
234
201
143
216
201
214
187
186
212
206
212
225
172
240
173
207
112
179
154
290
222
120
137
194
206
269
252
207
265
243
181
202
235
232
221
242
231
194
198
240
148
246
186
217
185
200
260
168
242
240
255
211
247
258
209
161
225
214
206
168
186
149
162
171
218
183
164
224
153
253
215
179
221
217
153
192
162
195
151
177
122
195
173
184
152
209
198
202
229
205
209
187
227
249
214
241
154
205
199
197
190
199
158
215
236
253
193
237
176
179
266
220
230
183
193
202
154
190
168
163
186
125
204
194
233
178
245
219
187
225
220
212
261
228
196
194
213
225
228
172
196
167
190
192
176
220
177
201
201
184
215
193
200
187
253
179
204
231
175
177
202
246
173
175
188
252
221
191
195
171
177
255
161
205
191
215
117
174
190
226
215
134
217
124
184
236
224
182
141
157
196
203
212
255
201
199
188
226
122
207
155
197
240
214
222
189
192
186
166
209
190
235
235
250
228
268
262
161
185
175
212
192
175
203
179
199
235
263
203
223
191
203
249
196
202
211
216
200
233
215
223
191
154
227
206
199
196
243
214
194
213
195
213
237
234
216
223
199
177
159
203
134
215
136
178
189
180
153
194
127
190
141
151
203
209
132
187
152
207
201
208
205
198
211
214
228
225
168
167
247
121
242
177
177
181
188
165
240
231
198
216
223
187
202
143
234
169
146
225
220
179
213
163
219
187
252
216
199
182
174
206
264
200
162
150
208
142
246
198
215
236
199
219
201
168
192
195
178
203
235
130
211
189
255
122
224
196
212
168
215
169
156
207
210
155
236
184
266
141
186
182
247
194
265
158
194
229
187
191
193
177
180
230
206
187
240
179
201
246
194
181
191
224
153
184
236
229
232
199
219
266
219
224
209
241
254
233
171
195
217
200
187
212
228
182
202
175
198
176
205
248
145
135
145
187
179
214
281
158
172
136
192
189
161
218
211
229
214
209
226
212
224
245
185
210
199
224
179
180
150
237
182
207
178
172
245
218
232
164
228
206
193
172
142
267
203
223
214
206
281
265
202
233
154
142
239
197
203
209
179
217
139
185
173
155
201
215
178
200
228
230
208
173
210
232
223
192
205
175
244
200
235
241
221
206
155
193
244
223
187
186
206
213
230
181
192
154
238
258
174
224
193
134
245
193
210
204
295
258
294
203
195
170
199
189
188
268
209
169
236
192
174
152
201
226
207
152
217
265
205
250
232
211
177
236
192
184
269
192
204
239
147
235
214
194
173
166
94
233
181
161
229
203
222
230
188
151
233
178
158
203
190
200
221
189
220
215
198
253
181
240
208
222
279
152
227
228
171
161
172
167
151
264
128
225
175
203
230
215
264
218
242
226
223
190
229
210
236
228
211
197
190
198
216
165
198
144
220
185
170
206
88
191
231
144
196
261
226
196
157
176
188
215
146
200
169
210
216
204
221
208
176
255
219
228
199
196
235
195
168
220
147
278
205
221
221
199
239
183
188
199
253
228
232
223
193
210
94
190
153
213
194
249
153
172
185
250
230
181
220
193
182
265
204
243
194
156
176
181
194
271
196
158
220
195
221
202
192
194
224
263
237
245
201
203
161
204
229
124
231
144
217
192
253
205
183
227
144
217
241
243
251
145
208
206
224
169
182
192
201
202
215
199
242
218
180
204
212
187
173
187
157
249
241
156
205
244
228
149
158
249
204
267
214
164
237
220
257
166
215
229
230
152
171
238
176
149
245
182
225
229
251
229
243
207
200
177
180
206
137
238
240
205
226
178
163
229
179
179
171
189
215
186
236
227
202
145
233
180
205
216
207
230
158
238
210
209
206
213
253
234
273
174
235
206
162
149
187
211
226
236
258
150
282
215
202
176
156
202
229
165
221
243
190
166
168
216
238
208
233
226
162
185
194
221
154
179
193
199
135
184
274
209
120
246
190
174
194
216
221
237
269
169
275
231
250
218
241
197
202
223
170
196
184
170
175
148
181
140
282
158
248
172
157
209
145
167
185
150
179
114
207
235
219
209
228
290
183
261
172
204
170
193
222
217
165
178
218
129
194
184
252
188
227
220
158
179
150
168
197
156
196
150
204
176
229
210
169
155
219
258
285
208
156
159
190
179
223
194
210
214
185
284
211
237
209
217
174
206
177
204
183
179
179
243
210
246
210
146
191
191
223
234
206
198
181
280
229
231
249
201
222
180
205
191
219
207
160
189
183
170
222
183
181
174
247
196
257
232
233
199
162
181
215
245
218
240
227
234
223
202
229
191
227
241
252
187
241
203
230
208
235
174
166
230
146
205
252
121
216
175
195
195
223
177
178
246
141
183
283
225
248
189
224
238
239
225
131
133
238
210
139
190
195
186
250
248
211
166
236
195
182
199
256
194
245
248
199
240
286
175
193
267
136
186
139
227
235
179
220
225
227
192
210
137
196
137
125
104
184
233
159
167
231
209
170
213
219
209
177
177
214
133
196
244
193
261
184
162
183
179
194
203
228
252
162
238
172
185
179
219
189
116
188
166
212
249
257
164
196
177
219
137
242
164
207
190
220
267
209
212
223
186
195
208
195
139
266
142
169
131
185
158
268
241
220
163
172
238
235
209
178
176
216
232
152
169
158
236
202
167
234
210
179
235
191
232
160
175
160
155
185
157
209
203
224
165
215
210
140
223
190
221
213
199
233
191
224
200
280
200
202
187
167
212
183
199
247
275
231
203
223
160
196
170
149
187
180
172
209
205
255
181
241
242
223
140
266
198
190
211
173
213
126
201
224
169
194
265
196
251
210
129
195
189
221
234
132
173
211
201
164
211
219
253
187
187
164
204
248
166
194
170
244
192
226
191
229
212
220
210
237
166
212
197
143
270
182
214
217
183
146
205
224
217
218
157
229
157
136
144
216
164
163
166
210
197
233
136
179
251
202
252
230
247
123
218
191
209
192
183
222
143
108
201
247
264
189
239
279
192
137
207
202
218
151
216
241
182
192
231
167
250
201
212
153
196
245
228
164
132
188
152
225
228
129
112
187
198
181
179
209
189
226
177
208
135
187
252
241
138
231
211
132
217
179
186
215
199
218
249
223
197
211
172
180
173
165
106
233
218
182
229
217
185
243
232
199
225
188
162
157
215
194
245
179
221
198
170
184
231
197
215
203
249
254
216
243
225
162
202
189
199
223
162
202
229
208
201
250
227
258
199
211
212
159
219
148
164
198
207
226
243
194
180
267
238
209
167
267
242
178
218
196
196
276
225
247
209
230
205
231
172
206
202
212
165
236
171
219
189
238
209
202
228
205
189
169
216
204
218
200
208
210
224
247
140
190
220
228
179
191
150
212
215
220
143
183
204
202
255
258
205
220
210
225
138
211
140
277
176
254
145
179
190
181
203
220
199
161
209
209
265
239
189
220
199
225
205
155
184
228
202
192
210
217
180
176
248
167
203
175
199
229
215
227
226
181
208
286
168
176
162
157
225
147
235
232
190
231
139
283
237
177
231
154
206
155
207
119
202
181
195
170
226
176
155
211
192
204
247
135
142
172
171
223
256
173
246
229
160
164
237
195
188
253
204
166
164
196
198
241
167
163
240
157
172
230
279
186
184
155
162
185
126
162
169
209
187
172
181
155
147
217
181
184
154
123
194
204
191
181
205
265
172
234
151
254
189
137
170
175
221
186
137
194
165
214
197
139
152
165
229
157
166
165
142
214
234
227
197
226
250
211
205
198
223
183
230
201
245
188
171
208
198
136
229
252
222
182
191
207
179
234
230
230
165
267
250
218
136
144
188
265
145
222
172
171
223
201
192
196
223
183
182
202
183
162
213
167
242
216
178
204
173
226
190
252
243
147
178
237
207
179
192
239
228
202
135
181
233
237
280
188
230
236
229
153
170
185
167
183
199
182
243
215
135
239
237
153
228
224
173
210
205
159
183
215
190
202
245
191
195
144
183
237
257
149
222
232
206
169
144
173
244
158
206
237
160
197
242
219
165
243
230
131
212
214
255
242
172
194
239
196
138
186
217
194
190
153
197
226
212
199
138
237
229
189
150
191
241
235
205
208
170
171
218
197
120
261
124
200
250
226
196
200
230
223
256
212
247
235
154
166
162
175
210
195
214
191
223
168
251
232
249
236
163
210
201
241
224
207
243
229
219
231
211
196
267
188
148
187
220
167
205
186
219
187
119
204
174
170
197
171
193
241
209
252
198
227
162
167
163
190
277
189
191
221
176
219
184
198
243
198
244
147
190
204
185
217
156
235
192
193
201
201
214
113
201
240
179
187
232
128
234
171
257
249
128
213
203
177
179
233
243
184
159
245
135
192
262
247
224
151
157
203
154
232
218
217
209
192
211
222
208
104
205
241
185
266
166
195
210
204
233
239
229
229
189
164
261
132
225
220
179
246
186
182
182
247
228
197
231
170
180
237
216
169
138
160
149
231
171
199
267
190
173
241
254
176
174
191
232
199
184
175
299
170
212
229
233
203
167
269
187
194
123
164
139
255
154
189
232
195
248
188
173
189
242
207
239
203
199
213
222
176
209
194
233
186
277
273
173
249
185
248
216
172
203
170
200
237
216
218
169
242
215
212
202
223
202
195
218
192
201
181
162
220
209
276
193
226
225
192
201
237
208
180
154
161
178
204
255
236
205
195
178
156
191
240
175
184
193
232
226
185
236
277
225
176
239
200
187
215
220
226
168
215
210
217
221
146
231
188
197
212
189
230
156
203
179
137
201
180
204
225
144
166
215
166
204
167
219
186
201
185
204
229
191
171
136
199
259
231
223
216
180
207
136
189
254
177
171
160
170
209
241
198
218
174
188
189
222
193
203
117
140
215
241
230
212
186
228
188
188
259
136
208
239
234
253
175
232
192
186
129
237
160
208
209
173
124
252
237
173
202
201
201
220
232
212
146
188
236
157
234
237
170
171
191
233
138
198
210
173
233
166
199
185
245
188
213
248
168
246
182
252
202
201
238
233
201
166
180
241
261
205
213
217
233
205
160
164
204
239
170
227
188
203
162
242
224
255
194
143
150
237
236
205
181
213
251
171
192
227
219
166
220
175
151
171
178
237
153
176
245
197
178
208
222
151
198
223
235
190
246
204
142
205
212
197
194
173
209
260
172
202
241
149
220
118
163
215
139
210
191
225
216
205
207
231
233
185
209
258
158
186
178
216
241
203
204
199
218
243
203
223
188
265
215
245
197
228
154
194
181
180
247
197
155
192
225
193
176
175
197
196
208
221
182
202
239
189
180
167
133
158
169
249
219
228
281
131
229
190
184
195
195
218
170
182
201
183
234
156
203
157
152
169
228
196
199
159
102
196
185
176
177
175
202
179
265
246
235
256
227
275
202
274
256
223
177
163
186
175
184
190
177
195
166
224
209
210
207
213
152
174
209
226
229
212
175
181
184
219
176
245
187
229
186
146
185
195
182
187
176
216
207
189
235
203
201
201
215
223
206
201
201
206
246
206
154
211
238
239
175
229
232
201
211
215
207
157
221
167
233
132
207
208
212
237
183
282
105
208
229
248
232
204
196
214
217
220
145
192
214
244
194
162
170
244
238
219
262
232
192
219
163
197
171
154
200
218
189
222
202
239
181
197
271
188
222
182
166
213
250
200
164
239
206
183
175
167
212
207
212
247
192
233
234
181
232
190
258
232
197
156
207
178
239
214
193
226
208
180
195
187
143
196
197
159
150
198
218
204
183
181
191
216
215
134
207
198
252
222
208
254
226
209
273
246
224
215
220
194
209
160
165
185
255
225
217
156
186
237
272
226
178
187
226
200
182
178
135
204
174
210
151
177
251
217
161
132
178
203
246
178
227
196
205
227
199
210
201
195
232
245
208
262
244
209
238
206
221
177
161
198
183
220
217
190
248
283
215
207
193
235
166
200
201
163
224
197
241
208
133
207
182
201
215
221
194
206
227
214
219
193
185
184
245
227
185
275
129
126
156
210
209
172
163
255
220
175
251
256
159
257
210
212
160
196
203
199
152
195
227
185
197
224
204
194
230
182
178
188
262
144
174
141
237
173
189
208
179
201
216
200
136
180
152
203
237
147
217
161
190
99
171
219
215
207
228
159
213
232
160
165
181
201
211
159
223
182
264
212
227
269
207
252
171
146
230
249
221
241
149
174
175
196
201
197
167
178
218
151
151
220
243
253
210
195
194
132
226
258
215
211
223
179
197
184
256
220
231
168
155
247
191
203
244
162
163
216
188
189
229
196
203
253
173
204
231
222
238
193
216
200
145
154
236
159
247
237
261
243
175
186
236
142
171
228
222
170
152
218
247
167
116
187
259
213
220
252
150
202
193
228
191
233
185
233
174
210
152
216
250
177
211
152
130
214
226
136
166
213
174
168
268
179
214
179
202
189
174
225
201
175
148
150
212
245
196
257
217
201
277
201
164
256
199
106
242
167
233
204
241
172
233
266
180
229
215
173
169
206
211
232
217
185
169
196
186
206
213
230
219
245
129
204
185
171
216
176
182
248
243
184
204
236
155
176
252
243
183
172
259
147
174
169
118
195
219
254
126
253
148
204
177
185
204
213
209
179
236
165
179
191
203
190
257
206
184
185
143
217
205
176
139
160
168
242
234
215
171
200
181
236
200
212
234
224
220
230
162
221
187
135
137
236
213
179
245
204
224
190
192
197
219
259
186
200
213
208
230
231
208
178
227
189
193
170
144
179
182
203
215
205
179
193
221
238
235
211
150
102
214
181
230
241
164
172
220
216
217
196
186
154
209
230
190
232
263
165
240
236
238
275
188
233
135
204
214
177
178
201
243
246
210
217
192
204
142
244
249
190
150
220
128
238
235
224
160
211
181
192
243
229
198
210
202
203
205
259
218
157
238
172
289
231
167
139
185
198
246
213
220
239
128
193
200
223
267
202
142
170
143
253
213
235
185
202
124
145
228
190
200
126
237
213
188
190
246
187
257
156
149
183
199
171
179
193
184
214
210
227
168
232
181
157
202
163
201
173
205
229
214
246
191
191
191
218
179
169
172
242
223
196
203
202
179
218
189
226
161
156
191
232
205
267
208
213
163
194
188
221
212
154
172
208
196
188
218
191
192
193
191
229
168
184
214
246
187
199
172
201
252
174
219
184
185
209
271
184
201
194
160
208
213
148
228
187
200
247
185
179
176
170
192
201
257
195
222
224
195
214
193
210
210
197
249
205
208
194
178
246
160
229
148
208
217
254
209
235
214
130
149
173
167
175
166
175
183
199
183
187
188
188
220
244
240
185
249
176
217
241
217
184
191
192
160
250
184
225
153
195
258
208
170
249
170
158
172
178
159
242
218
164
269
199
209
226
263
207
150
249
161
209
185
186
182
252
202
187
238
253
198
170
225
200
168
189
165
164
187
209
148
194
230
225
145
226
207
144
200
231
149
185
199
231
231
226
229
217
202
174
215
162
207
225
236
233
221
181
134
212
209
232
211
196
202
125
222
175
159
146
190
155
236
219
215
178
216
237
132
211
191
208
210
189
230
176
166
159
159
187
186
125
152
124
216
261
222
150
218
204
212
162
243
206
208
188
204
154
166
171
181
187
150
155
233
285
217
180
215
174
263
148
180
212
250
228
191
175
259
173
210
168
235
234
185
203
177
149
218
213
257
196
221
221
216
230
176
190
166
218
172
208
201
243
206
199
181
260
231
224
215
208
150
250
215
201
223
234
255
181
247
251
249
153
183
186
217
220
167
197
208
182
162
247
182
153
189
161
189
188
140
174
189
200
166
200
205
207
130
205
141
234
271
253
157
183
191
222
159
228
196
143
149
207
197
197
164
194
181
204
111
193
223
157
206
205
215
112
192
236
188
197
212
218
177
192
212
198
218
209
227
193
192
228
188
198
177
219
226
230
239
191
188
156
165
222
168
249
163
191
206
217
155
244
252
187
178
169
232
210
138
233
206
200
237
244
185
283
246
197
247
178
208
171
186
172
274
214
222
179
171
169
179
240
162
181
222
192
212
236
174
187
162
212
250
156
208
197
265
196
170
201
201
257
207
222
187
210
171
210
198
161
155
211
149
225
220
148
165
118
158
222
190
244
240
178
247
183
201
117
170
180
202
241
175
185
185
115
218
255
200
202
215
216
144
179
215
178
200
174
248
180
213
251
191
180
236
175
195
213
214
287
188
202
195
133
211
180
175
190
228
187
116
225
184
250
213
256
261
157
191
149
206
179
207
152
221
189
184
179
285
171
264
255
200
156
153
272
193
192
154
161
207
184
218
168
245
276
168
201
195
258
225
183
178
272
236
188
206
264
243
159
214
154
195
235
204
239
204
201
201
210
234
238
201
267
186
214
172
194
214
186
180
212
211
196
230
197
245
128
193
165
148
184
192
233
145
190
191
240
214
213
184
172
217
219
146
164
144
151
206
215
201
219
149
168
179
169
213
176
154
148
216
199
228
209
191
202
222
171
214
237
134
251
201
224
184
194
202
166
182
192
214
223
180
170
184
219
238
180
195
182
151
188
182
216
245
195
192
205
207
241
158
158
221
209
223
165
121
192
175
169
233
170
182
162
208
222
235
179
203
144
225
116
191
236
221
190
197
174
174
218
208
164
186
196
217
211
263
160
165
215
187
246
226
207
205
132
167
238
229
187
212
198
127
191
219
181
214
186
261
204
238
190
156
220
178
178
228
130
145
228
207
222
188
211
210
217
199
186
255
166
211
281
134
240
193
195
186
186
192
166
261
172
128
193
192
198
174
194
185
230
215
224
220
167
180
215
228
234
157
167
136
245
196
222
203
193
157
179
231
144
167
192
289
195
230
251
223
146
182
178
229
203
217
150
246
171
185
214
125
205
219
219
162
169
187
226
215
172
254
135
187
166
237
196
187
239
212
232
171
229
213
237
240
166
191
197
194
260
238
196
220
201
207
209
231
94
230
145
180
173
283
193
213
235
185
237
178
150
220
274
219
142
209
211
173
218
219
228
240
204
214
149
197
135
189
231
176
217
150
198
209
247
206
177
197
226
246
241
196
201
191
186
213
206
245
179
194
214
190
158
226
162
213
160
210
211
192
238
123
194
226
220
190
192
243
163
176
200
210
204
219
264
214
220
170
185
227
162
183
170
176
168
129
196
199
220
197
208
205
194
243
151
199
208
186
215
193
184
248
191
217
179
161
187
192
203
112
194
162
179
155
202
156
192
262
210
189
233
259
222
135
210
211
158
233
245
239
140
183
142
237
158
217
227
230
187
192
220
164
236
224
221
212
152
238
231
160
148
196
240
228
190
228
226
161
204
232
211
185
225
184
162
250
179
222
206
236
225
197
195
192
201
221
231
196
193
201
210
218
216
216
206
230
242
124
217
145
159
146
223
164
159
135
222
205
189
163
209
236
177
129
227
249
160
198
183
204
201
196
181
207
214
231
208
159
234
213
149
183
203
208
156
259
163
142
233
234
216
261
204
171
207
216
215
169
211
217
217
225
206
144
168
188
194
234
208
197
252
182
170
133
235
187
121
233
259
247
211
244
180
176
218
171
207
202
194
231
199
238
157
140
173
197
192
197
232
200
193
248
157
203
199
211
262
259
173
214
130
174
196
192
249
187
177
141
237
247
212
241
226
212
223
143
228
206
109
153
205
222
186
137
189
138
212
203
210
200
216
141
198
188
210
185
224
211
193
195
208
193
208
158
222
177
196
188
230
157
245
230
229
223
231
205
198
239
174
186
204
275
187
154
240
221
213
190
257
206
237
237
201
219
169
253
260
207
189
213
209
236
199
160
227
205
210
208
212
172
199
177
136
84
135
218
251
244
239
189
245
181
205
184
238
177
272
225
188
160
191
194
205
212
148
194
236
229
249
170
231
188
245
206
215
224
229
180
251
210
226
208
187
248
166
217
215
244
185
222
147
239
226
205
183
232
213
237
228
210
192
216
148
174
204
157
191
194
172
228
203
241
191
204
214
185
276
152
153
206
171
254
267
210
171
234
229
203
219
210
201
201
209
201
227
219
211
225
233
205
172
212
191
187
204
222
216
141
194
185
209
212
252
231
248
129
224
226
148
223
233
253
211
254
218
252
185
132
163
131
185
260
237
188
232
210
113
250
186
282
164
226
140
211
187
221
220
203
190
244
206
176
211
229
192
174
152
203
179
262
171
219
228
214
138
139
235
227
146
215
197
229
215
273
197
104
187
164
180
186
152
223
223
149
154
192
198
230
221
226
228
242
233
205
218
148
226
202
244
214
206
185
269
170
201
215
217
224
151
218
150
235
244
230
206
159
203
180
216
217
185
210
135
178
183
185
192
200
153
180
206
257
230
254
196
198
196
137
223
154
189
225
148
232
273
170
189
193
255
259
157
189
225
178
135
188
212
170
160
222
183
187
153
254
213
222
197
222
148
272
203
231
247
204
196
171
207
142
161
192
197
222
136
192
253
281
244
226
210
192
177
184
224
184
171
252
268
215
194
198
199
206
226
201
175
117
208
216
191
146
201
209
214
227
207
205
195
212
127
130
201
219
250
259
198
168
169
243
173
264
181
232
169
138
191
211
200
161
211
184
196
295
193
246
162
234
108
214
201
234
224
247
207
217
228
236
179
228
264
211
250
218
242
266
190
203
223
159
176
154
268
157
229
185
174
254
222
139
208
212
207
181
205
179
129
159
208
200
226
240
234
177
171
191
214
184
175
147
206
270
239
183
130
217
190
185
147
226
186
263
242
139
236
156
215
221
164
217
174
234
206
264
220
169
190
188
243
219
234
168
195
177
169
200
235
204
205
143
170
217
151
200
192
177
184
193
211
163
188
211
143
222
221
215
202
230
207
252
178
260
203
222
220
289
205
193
213
201
186
182
210
189
216
163
158
176
214
184
166
189
189
210
206
231
194
229
231
218
162
237
176
181
143
182
212
161
217
208
220
157
197
161
156
257
207
147
240
170
243
270
191
222
230
223
188
153
168
177
257
242
169
227
225
237
222
208
210
205
198
233
173
169
148
228
205
158
211
278
152
196
250
197
236
213
216
180
215
215
175
253
207
149
157
197
227
195
179
228
266
143
255
226
230
212
252
245
218
200
232
228
153
243
148
234
196
188
194
238
143
259
219
179
131
264
227
217
177
176
283
207
217
224
196
235
178
210
219
209
146
228
214
241
183
237
229
176
240
263
183
182
242
183
233
181
219
170
246
107
182
193
195
194
136
142
226
154
211
207
223
232
158
187
169
199
158
180
217
233
262
181
226
226
188
204
191
193
228
140
180
189
157
208
272
179
158
201
122
252
197
212
155
231
197
229
239
234
211
148
104
206
190
142
197
233
201
204
228
188
202
188
204
180
243
190
245
150
219
243
251
148
188
152
254
206
239
259
238
221
227
197
233
185
130
180
217
210
156
194
207
155
156
211
186
213
194
182
194
221
224
190
200
165
253
227
204
191
187
250
167
201
213
210
226
228
184
202
155
219
204
206
264
208
205
189
158
239
191
237
116
243
205
274
174
189
156
242
221
157
212
204
194
218
221
209
193
203
213
205
164
278
190
197
187
182
198
210
181
246
201
236
240
218
225
212
222
228
202
202
225
125
205
193
216
172
226
260
227
217
198
202
202
205
191
106
197
166
180
167
282
171
256
207
165
247
253
251
243
237
179
176
185
213
196
162
175
163
194
227
216
190
223
209
205
227
162
189
184
167
169
221
204
168
217
158
237
192
252
176
243
239
184
235
195
246
240
261
187
194
248
220
200
157
163
191
186
192
229
208
216
184
186
187
244
237
131
214
191
209
204
170
209
207
262
238
242
198
219
200
219
211
187
220
244
214
202
152
218
178
254
152
252
191
130
205
108
210
183
194
159
204
161
203
288
199
196
161
178
156
206
186
196
230
169
203
213
146
164
216
164
211
214
176
200
205
248
178
135
196
233
206
234
223
194
207
185
134
197
236
198
229
260
202
217
228
188
195
239
186
194
210
243
168
160
169
255
175
179
115
207
219
203
207
183
283
149
195
197
182
192
241
262
220
259
194
184
200
185
167
259
262
172
121
141
202
205
153
199
237
183
253
203
146
217
262
169
218
157
139
208
227
225
213
187
190
191
205
224
199
214
162
221
206
183
177
202
183
244
181
164
133
212
221
212
254
230
194
174
156
169
142
205
152
203
169
223
185
164
245
187
192
211
200
230
146
213
95
233
187
233
147
131
179
148
190
186
226
241
225
214
189
195
202
167
184
230
199
218
152
194
290
165
212
189
190
208
135
155
274
175
181
202
123
198
206
207
272
196
227
232
299
183
211
207
173
179
212
169
219
268
156
195
172
232
233
179
206
221
198
188
172
170
190
242
156
202
201
224
240
194
142
174
195
243
207
178
163
190
200
275
215
176
226
173
221
212
285
261
221
254
202
215
189
178
215
165
224
234
239
198
168
207
153
225
170
198
147
221
235
204
247
200
168
280
147
152
227
227
307
261
181
255
190
171
206
223
249
222
215
185
219
171
226
221
188
185
145
221
212
271
215
199
173
204
158
169
177
195
187
172
172
213
213
230
120
256
232
239
202
204
189
205
196
169
198
144
164
201
176
149
151
202
246
257
224
239
229
115
223
241
198
210
165
204
208
179
190
190
191
269
231
220
189
194
122
275
126
160
185
158
187
218
274
199
172
240
246
173
181
167
188
196
226
223
198
162
180
202
201
199
252
263
146
167
218
177
171
151
190
203
166
185
191
243
136
290
148
218
211
188
232
227
172
180
186
231
176
174
234
166
225
169
232
248
227
162
175
180
122
229
233
225
172
211
225
172
241
242
164
218
216
173
182
196
229
198
186
151
180
211
193
193
168
239
209
140
142
246
230
261
124
165
173
175
178
196
178
184
198
165
127
218
221
214
226
235
154
223
211
232
197
171
211
182
171
195
192
122
190
192
265
240
218
174
149
217
237
240
185
204
230
178
182
189
186
246
203
229
202
173
191
112
190
175
173
138
154
282
178
222
216
234
204
197
209
205
192
212
231
196
218
254
166
247
216
220
174
165
204
203
192
189
212
104
171
196
196
166
272
219
200
173
190
235
225
217
228
197
161
179
209
124
160
173
163
177
240
185
210
222
183
148
219
169
158
187
138
208
231
213
264
182
181
184
117
189
207
202
135
197
132
166
206
222
181
224
208
207
217
112
230
234
241
171
247
238
131
198
200
188
192
223
190
191
230
154
185
217
190
199
144
224
187
157
185
220
190
164
227
226
193
183
195
139
220
179
221
212
200
226
198
191
207
196
206
143
192
175
161
137
141
227
220
161
226
184
183
218
187
180
205
200
265
197
169
202
178
234
186
183
248
203
228
196
226
237
185
164
171
167
256
172
156
254
245
256
157
175
152
213
146
236
142
240
204
215
175
154
159
209
216
175
170
167
153
257
217
212
228
192
172
186
158
201
250
222
174
212
181
229
197
229
254
198
255
199
172
134
177
243
176
211
223
119
258
244
191
245
197
174
206
238
201
259
152
212
234
199
175
126
175
193
286
205
265
178
216
188
225
227
208
200
256
139
179
149
215
168
216
244
123
156
193
175
235
230
154
124
187
184
178
223
186
205
267
212
195
223
217
168
149
192
229
221
252
201
144
189
223
212
193
178
176
145
141
166
217
240
172
157
232
189
191
201
181
211
189
147
120
185
128
199
235
190
196
226
199
206
218
181
195
238
188
172
265
288
244
234
268
194
202
243
215
162
157
227
210
175
230
179
208
162
164
228
237
223
193
193
256
184
196
221
265
189
226
177
161
204
165
152
213
232
181
226
257
216
233
192
164
179
223
171
160
253
211
211
166
178
198
226
160
275
186
179
256
226
225
258
192
196
188
190
258
151
194
242
175
192
179
196
239
110
205
243
219
216
259
209
194
181
167
247
151
196
151
229
220
149
191
173
147
256
191
212
202
232
181
201
244
279
195
228
164
213
212
190
139
164
207
205
220
239
163
213
195
203
285
215
212
168
204
230
205
143
183
233
192
163
253
224
147
189
225
142
179
221
199
161
239
220
174
196
226
219
199
224
183
196
182
173
182
278
190
225
250
178
199
207
224
135
183
173
235
199
218
213
158
170
190
211
142
201
174
193
190
186
191
207
127
169
223
255
165
207
223
225
212
206
243
181
170
222
191
247
191
212
131
277
224
229
196
141
214
170
164
249
187
223
232
197
158
232
200
141
217
172
189
217
213
228
234
202
158
165
187
211
277
227
240
265
216
188
175
202
189
208
231
168
176
186
199
207
215
212
161
243
134
205
190
213
201
247
165
226
165
245
207
219
180
180
246
238
233
218
252
206
237
213
206
193
194
164
215
168
223
173
146
209
200
281
214
207
216
221
245
221
202
204
248
200
159
229
183
224
224
225
252
212
226
163
178
255
215
202
210
142
248
230
220
214
203
181
220
128
230
200
148
193
204
215
156
192
195
192
197
202
211
191
213
186
212
177
223
250
197
148
193
193
278
123
171
181
152
120
281
222
198
169
221
190
226
188
214
238
213
238
195
182
123
182
197
215
228
265
177
223
162
194
188
189
189
264
170
234
220
184
176
232
231
201
224
191
189
269
205
163
185
214
237
234
237
164
189
208
221
230
173
194
169
168
199
279
170
184
149
266
246
225
200
242
119
232
165
206
152
161
170
196
162
213
259
190
145
212
241
221
165
230
257
236
202
181
242
154
268
193
176
258
197
245
249
143
195
241
301
165
211
203
188
226
253
203
184
255
186
177
231
202
153
248
252
180
241
204
106
214
165
230
275
264
238
199
157
178
223
199
219
181
198
190
224
185
176
193
260
278
232
209
225
180
181
218
217
166
197
232
257
181
190
190
182
178
186
217
158
234
214
200
260
228
229
158
249
179
197
169
278
271
227
204
230
146
200
175
264
249
206
250
133
216
242
234
170
226
210
180
153
151
239
260
208
169
212
164
249
212
196
206
238
263
179
250
198
155
246
215
148
169
194
198
256
132
246
190
196
187
236
228
258
220
178
185
158
213
226
190
236
224
198
208
149
171
231
212
244
222
176
218
176
259
228
172
175
247
223
258
203
204
172
221
176
192
182
190
176
158
231
152
216
226
226
169
225
175
187
218
222
178
192
205
220
181
192
219
202
140
163
166
184
220
218
256
223
177
199
232
207
200
193
277
192
178
213
176
219
218
165
189
212
234
244
217
236
196
222
141
176
176
218
161
194
190
192
206
109
237
175
226
153
149
212
148
194
135
129
239
164
177
257
246
175
202
192
198
237
213
243
162
149
280
166
159
192
230
232
159
212
126
217
199
141
218
265
222
175
202
241
183
219
206
224
173
192
183
231
171
158
133
228
221
157
172
200
198
163
208
160
182
158
218
171
179
206
201
166
224
222
218
224
132
203
215
158
262
190
217
199
166
241
223
175
253
186
138
231
181
207
266
152
189
161
192
218
173
205
213
211
158
160
204
161
179
176
224
142
193
204
260
168
241
225
244
220
199
183
219
168
199
169
177
168
134
248
232
204
181
207
249
179
233
171
117
161
187
170
212
187
170
206
187
161
299
174
155
195
197
172
145
226
247
162
264
201
226
166
229
248
183
238
193
183
222
248
126
159
179
226
178
207
183
252
206
162
195
214
176
235
139
203
254
217
221
222
152
176
214
214
156
233
229
192
211
179
151
161
175
191
243
179
199
241
228
212
260
191
220
193
209
232
181
240
237
189
201
210
222
192
205
209
225
244
175
197
146
162
148
158
230
176
211
219
223
166
146
152
165
190
246
218
179
152
182
184
140
218
242
224
197
179
189
187
176
220
241
225
243
201
154
229
186
224
189
265
239
169
223
160
210
224
228
183
217
238
237
163
205
203
190
154
260
203
244
210
144
233
203
242
198
151
171
190
230
188
210
163
241
234
239
191
175
201
219
196
210
232
211
168
253
233
202
201
190
167
169
201
225
177
254
191
213
200
203
211
283
179
168
242
180
191
140
184
225
185
206
247
172
221
195
234
115
194
260
252
216
219
204
154
218
188
220
188
181
236
237
235
177
170
200
169
183
209
130
195
173
183
229
263
207
159
181
215
155
205
147
198
176
187
210
231
202
159
160
239
234
266
148
227
163
229
200
153
199
244
236
165
175
181
172
202
192
213
225
232
149
192
154
209
172
190
150
226
172
257
222
219
252
228
119
223
214
223
115
253
126
155
173
240
258
173
222
202
250
146
267
219
180
180
181
139
184
217
221
252
209
188
174
148
217
197
205
202
226
214
212
187
198
133
91
219
273
199
196
151
229
227
223
144
167
167
238
132
176
171
194
200
227
155
212
230
237
230
150
182
200
229
162
194
266
184
170
257
194
171
175
191
196
192
252
212
205
207
196
223
189
238
176
169
188
187
215
232
204
194
180
252
164
242
252
195
146
198
206
213
181
239
169
190
197
194
209
176
168
228
237
162
183
217
191
203
206
192
169
199
182
130
179
146
195
249
207
138
201
151
233
110
197
239
192
223
249
226
174
273
211
267
148
180
102
171
154
275
195
265
218
188
222
181
191
225
166
178
216
252
247
241
242
204
208
138
198
192
223
169
170
256
162
208
196
216
165
178
205
177
132
191
217
217
143
208
249
181
288
201
272
160
218
143
161
196
201
219
286
253
208
205
221
162
241
198
156
252
169
166
227
213
194
217
166
199
193
176
231
233
235
207
267
231
236
159
215
233
182
196
274
277
185
226
199
252
230
225
153
195
230
213
141
238
222
136
267
242
243
215
185
219
159
208
218
200
199
265
124
209
180
221
240
241
175
203
215
227
208
208
188
225
165
231
207
154
196
233
175
165
266
226
198
190
225
204
180
204
255
195
222
228
202
215
186
203
204
200
215
199
139
202
256
204
198
200
202
212
247
152
193
237
166
157
171
211
204
205
216
226
224
222
196
181
218
200
189
223
190
190
202
234
166
218
196
197
120
233
181
253
155
173
205
199
165
164
246
180
225
260
194
200
165
187
230
196
226
145
151
168
242
195
204
191
159
187
190
186
223
186
203
159
230
236
193
225
164
166
184
229
213
150
136
187
180
271
190
225
177
172
214
257
229
177
155
174
226
258
245
215
222
231
139
211
210
183
163
184
144
176
152
251
109
212
195
178
247
214
165
143
190
174
215
228
194
158
243
179
166
224
141
205
183
193
237
160
179
150
268
109
149
207
180
223
256
155
231
242
150
215
201
239
244
220
201
150
213
235
172
208
196
231
176
215
165
190
200
182
164
242
245
185
186
212
199
248
170
206
204
275
215
187
200
161
214
243
216
259
194
202
167
220
255
166
135
189
167
148
177
126
245
205
177
215
177
200
182
171
200
246
184
209
245
239
221
244
200
218
129
186
145
247
184
177
247
195
256
218
150
196
221
187
170
163
218
215
198
159
213
202
159
236
233
219
235
175
172
180
215
257
220
212
226
230
205
238
173
161
171
214
227
178
134
228
189
193
195
182
138
150
190
176
196
214
164
212
197
200
206
258
196
211
212
200
235
165
144
255
164
205
217
239
225
286
237
179
228
155
178
226
211
179
220
174
181
203
210
192
225
243
170
216
250
210
163
234
226
174
199
181
226
181
184
228
200
220
235
247
211
214
233
201
199
173
181
200
205
205
176
159
225
215
202
252
210
177
222
219
175
229
243
160
204
181
204
232
217
170
219
247
185
252
198
190
254
244
198
130
179
164
195
111
194
184
217
193
178
163
163
211
157
144
209
256
196
195
250
184
193
172
160
305
255
247
176
113
137
181
216
228
157
196
224
224
186
255
174
231
211
184
163
131
178
121
183
191
222
246
223
221
219
152
238
215
203
200
277
207
207
177
220
225
79
149
208
231
270
232
184
199
208
151
141
173
225
198
187
220
200
239
188
211
222
254
183
226
217
135
207
244
230
152
210
240
232
204
190
172
208
164
205
162
116
238
155
244
145
112
160
155
233
201
206
192
241
184
218
199
108
192
209
164
166
166
216
157
211
150
181
223
220
142
221
181
244
166
237
253
167
167
276
177
251
194
170
243
153
226
210
191
161
210
183
200
241
169
207
185
229
224
231
224
202
194
279
200
245
170
240
133
144
125
238
229
228
148
190
211
225
170
226
209
261
188
143
238
252
211
174
287
162
242
218
164
187
237
213
223
176
178
188
155
176
202
233
137
238
168
234
163
186
209
160
222
200
191
229
220
212
201
171
234
228
195
217
202
189
162
190
178
109
233
194
174
203
223
175
215
211
214
185
142
237
245
198
194
189
161
224
188
260
223
151
179
237
253
214
139
190
198
197
177
232
156
213
233
188
241
208
219
168
191
216
219
181
257
197
167
226
225
168
144
161
226
194
186
206
203
158
207
143
213
176
214
222
208
214
250
204
188
155
216
172
210
208
229
131
198
231
205
199
207
191
153
208
235
191
214
226
236
202
220
182
203
209
225
140
210
216
232
190
231
224
201
167
147
172
234
242
175
204
185
235
149
206
277
153
130
213
222
217
212
206
165
151
186
218
173
231
203
219
164
200
217
196
164
237
174
140
201
209
279
217
198
156
172
222
240
220
215
221
241
276
193
159
219
171
206
209
240
176
234
180
204
145
195
144
162
272
165
212
165
229
205
204
211
191
201
158
208
231
166
216
142
133
192
206
171
230
200
269
222
128
212
303
192
162
221
158
187
259
146
192
165
214
250
175
183
206
239
149
203
242
148
181
117
169
247
207
148
200
159
206
203
216
159
158
180
215
197
246
221
266
161
111
199
235
262
189
216
162
187
269
152
234
195
203
214
180
195
163
229
185
222
207
185
217
187
127
210
169
194
162
209
233
213
190
200
212
183
246
208
166
190
214
154
142
175
241
214
199
190
171
236
178
91
209
166
177
151
120
230
150
196
173
175
271
172
154
227
242
234
195
218
166
182
115
146
182
151
254
216
212
162
150
239
151
190
222
229
185
207
166
216
168
225
208
210
163
192
178
210
175
240
224
203
149
208
279
179
201
151
184
185
218
198
222
195
222
167
220
182
248
180
175
220
198
179
154
234
185
195
166
226
212
262
182
120
235
238
248
192
205
235
229
147
205
202
199
181
175
190
132
151
204
242
195
203
223
219
189
143
189
160
186
156
217
138
230
217
157
195
157
170
165
213
230
175
231
220
180
192
145
131
187
171
240
185
260
145
166
201
202
141
197
202
163
260
233
225
248
246
205
241
195
232
137
233
243
208
197
174
176
263
227
159
214
214
197
195
173
239
188
193
200
222
215
188
124
215
211
154
279
155
215
251
152
261
217
181
217
228
179
96
203
203
149
217
195
167
212
137
193
220
189
193
216
160
219
178
181
235
145
127
197
229
194
229
170
221
186
206
247
205
226
215
188
162
225
303
172
228
151
232
153
245
205
201
144
234
155
233
190
240
229
204
236
216
150
163
217
265
199
138
244
217
170
155
237
274
163
185
184
189
193
218
176
227
279
197
220
220
198
142
213
210
169
195
179
224
280
214
181
194
233
169
213
229
237
195
194
221
230
162
204
284
282
156
239
134
262
175
250
188
197
197
207
191
124
247
170
220
163
217
245
193
170
170
184
169
198
154
246
155
169
233
205
165
245
180
172
206
192
139
193
202
168
182
205
145
252
163
219
165
237
179
193
204
188
221
150
258
290
175
257
142
196
198
223
247
245
199
212
185
226
243
137
186
197
151
142
216
237
265
216
191
267
146
197
217
227
228
210
238
145
181
198
184
141
140
171
214
157
214
129
205
212
218
169
172
249
234
198
216
217
211
147
167
188
178
224
179
167
210
131
177
268
181
191
234
239
261
208
229
176
229
131
125
208
239
202
194
189
225
150
185
240
208
201
179
274
157
165
178
250
185
245
241
231
287
188
197
202
215
180
193
280
212
190
224
191
236
173
185
170
185
212
155
243
207
211
163
157
168
197
178
207
192
208
221
152
186
175
165
189
166
165
180
211
181
177
217
221
226
201
244
192
212
198
249
111
200
218
288
229
273
218
187
121
225
171
160
199
168
137
203
242
194
170
142
174
236
271
208
133
166
169
180
188
234
223
190
210
210
194
240
198
251
199
197
217
219
235
244
135
243
219
162
173
169
204
269
205
187
225
158
183
234
187
254
231
168
212
221
148
240
178
182
218
177
196
186
235
215
214
190
267
143
240
223
191
218
251
248
156
195
183
131
159
194
198
196
195
138
234
253
221
205
194
147
271
144
268
137
193
183
193
131
198
180
214
253
205
249
212
207
199
162
202
180
190
238
198
203
193
187
209
194
173
177
129
142
194
212
183
158
221
289
226
228
267
221
245
173
231
233
208
154
213
226
217
244
208
217
226
225
133
203
207
255
244
188
238
209
212
226
199
190
213
225
229
202
202
183
196
191
188
176
193
216
198
178
249
227
188
233
121
204
242
204
230
215
181
296
227
248
162
250
169
214
201
209
223
165
266
169
142
175
285
209
212
162
239
199
191
162
176
151
182
168
161
184
146
170
191
187
251
254
171
212
251
175
253
236
265
203
181
231
191
199
146
187
254
241
187
174
143
175
250
237
201
187
184
185
212
198
193
171
208
196
205
247
199
231
174
188
210
205
161
206
129
185
165
142
235
216
156
207
197
205
207
179
200
173
240
227
247
168
202
222
202
120
240
162
157
186
115
249
212
222
189
263
216
223
197
102
170
247
241
217
261
224
226
168
191
141
243
153
181
203
179
155
173
191
207
185
171
245
211
228
179
213
227
225
205
177
187
176
177
212
213
192
219
237
226
176
157
225
217
174
228
187
201
239
188
232
167
192
270
227
259
160
186
218
184
226
177
250
254
156
189
174
187
195
228
159
140
140
214
165
220
156
214
177
182
240
203
199
269
247
185
213
225
163
205
180
219
212
259
171
270
205
175
247
181
131
219
135
191
195
246
224
205
199
212
215
174
266
118
164
171
216
179
205
203
233
203
233
189
213
223
231
204
175
285
202
190
209
135
165
260
194
223
181
247
206
155
151
164
172
172
183
220
243
217
250
229
200
259
201
233
209
214
214
207
243
157
211
215
192
200
197
208
197
223
147
201
208
182
211
222
143
193
168
186
183
157
241
243
213
220
176
202
233
94
166
203
185
130
189
231
225
207
198
240
173
245
227
231
220
257
250
214
166
208
197
218
169
208
221
184
189
212
233
228
177
231
229
252
168
279
235
269
182
248
188
188
208
240
206
175
190
238
189
200
145
164
188
225
187
183
245
251
197
209
148
256
165
274
232
225
139
184
222
216
171
177
172
224
206
200
218
233
180
188
175
151
227
224
176
209
199
156
223
204
184
274
238
181
164
146
175
229
214
250
246
193
198
180
206
206
244
237
258
214
207
145
210
231
193
222
209
143
190
203
220
204
209
227
238
191
181
219
189
184
177
211
177
190
188
241
233
230
188
204
186
219
214
271
221
229
233
192
253
185
201
230
228
204
195
239
194
265
258
154
165
233
207
142
264
212
266
220
183
170
188
221
183
230
246
174
211
200
182
214
231
170
144
254
217
231
229
254
235
191
218
171
264
168
225
198
243
159
186
180
139
247
284
237
246
163
243
166
196
219
183
220
172
227
226
180
199
180
189
273
164
193
173
197
184
224
264
230
172
158
190
229
173
172
258
241
154
152
211
238
192
190
202
184
203
166
218
237
225
204
293
256
195
158
162
224
176
211
233
208
233
236
206
204
179
200
245
239
179
204
190
250
211
221
172
210
164
237
211
229
209
212
180
223
190
139
231
199
255
208
159
161
194
158
203
258
234
178
211
195
204
112
237
216
193
197
213
220
250
186
217
170
162
152
245
187
204
197
192
154
196
162
258
205
277
179
259
214
153
225
199
205
210
188
192
209
160
204
197
185
178
194
239
237
231
234
140
190
170
197
172
268
260
201
135
157
198
236
206
189
132
222
192
242
198
157
198
205
276
198
132
173
151
186
151
173
176
184
223
154
149
268
243
233
178
192
227
163
211
134
181
220
163
133
179
185
155
171
151
203
222
263
197
161
197
165
190
190
183
201
240
204
218
211
238
270
195
238
249
183
169
239
231
166
242
162
191
149
178
255
274
233
224
185
211
170
215
202
245
214
230
258
221
206
114
222
166
235
200
181
240
188
185
195
225
169
247
279
253
111
168
164
211
186
206
195
174
254
228
251
181
215
212
283
213
308
190
164
209
220
224
158
185
178
171
169
176
183
174
235
155
172
176
201
133
182
160
203
206
174
215
179
184
148
215
188
181
196
234
233
203
239
167
204
210
269
244
234
265
156
185
185
251
206
195
237
200
234
230
247
172
204
189
242
215
221
205
225
188
201
184
190
232
216
197
224
265
166
235
147
163
217
160
193
250
177
187
212
202
166
216
170
127
257
193
203
173
222
216
164
159
203
238
164
198
198
156
171
201
209
214
204
168
227
222
184
209
177
184
248
179
230
172
227
211
184
187
238
151
191
151
169
176
157
224
191
176
181
174
228
240
182
168
133
217
168
181
213
220
230
210
258
182
149
176
196
211
202
201
168
194
178
184
220
259
233
150
218
177
210
199
193
184
168
195
125
230
222
165
241
231
149
231
218
215
133
228
158
179
172
215
262
195
269
235
210
187
189
187
244
215
203
199
195
134
163
219
185
131
216
192
174
236
184
175
188
198
182
262
210
195
197
171
203
230
206
217
181
165
199
151
181
146
154
207
166
178
238
222
299
171
218
214
183
231
209
168
133
215
157
175
222
153
128
249
229
148
158
193
242
204
234
193
187
183
151
223
151
254
207
190
161
196
211
214
150
244
150
236
193
174
221
231
172
237
224
125
207
175
188
202
169
181
157
138
279
177
142
262
242
238
251
209
242
192
245
142
173
202
185
204
262
232
192
231
214
142
176
173
200
192
210
259
237
243
179
176
218
202
203
244
244
211
248
239
204
198
242
172
280
134
125
144
138
228
189
235
190
200
138
218
217
151
185
216
203
140
190
229
179
200
172
205
170
197
198
224
178
138
187
216
180
170
178
222
234
179
179
249
182
235
236
194
194
169
196
231
197
190
90
210
166
117
171
193
215
103
248
175
178
194
140
166
150
216
175
220
214
179
159
155
213
191
183
166
166
225
194
185
195
179
230
176
214
202
161
211
141
216
190
254
235
150
212
223
245
196
205
170
155
221
196
232
187
179
307
248
201
241
195
221
182
161
244
224
184
192
198
219
149
218
234
175
229
204
232
169
226
215
219
215
192
174
244
222
212
147
152
152
226
251
267
134
169
228
211
234
186
280
196
250
179
202
269
172
220
212
151
205
136
234
179
241
230
212
224
174
216
194
174
192
185
199
160
205
182
219
173
204
236
135
171
187
149
200
205
187
184
184
191
187
172
182
169
206
107
224
270
175
241
264
247
189
255
210
174
184
154
192
195
252
184
218
179
193
236
222
177
159
160
196
206
199
194
225
211
184
227
189
203
222
276
251
175
234
214
202
203
146
212
207
227
211
207
228
191
138
176
246
193
228
214
206
192
186
168
221
171
171
185
237
197
185
224
244
192
198
249
214
175
195
206
123
215
252
206
218
246
147
243
152
199
198
216
238
190
182
228
222
171
151
154
251
190
226
203
210
207
217
191
146
233
196
197
197
216
158
163
264
126
176
212
201
219
224
260
178
141
217
164
286
174
235
225
232
206
226
194
240
214
228
200
188
185
192
183
245
248
150
209
223
225
138
173
223
194
202
218
215
206
155
227
206
204
204
190
233
198
234
157
182
149
195
221
147
175
207
232
173
155
224
186
244
201
267
215
219
258
163
215
194
188
220
242
234
210
235
224
226
182
175
228
226
242
228
156
199
165
209
169
268
214
199
137
218
219
215
191
192
198
244
229
215
236
163
226
291
175
199
263
176
243
214
191
246
196
173
134
212
212
257
177
132
193
194
165
226
266
212
223
152
217
230
185
206
206
262
213
167
235
196
169
198
168
185
181
148
249
201
206
259
246
276
178
214
141
193
176
211
252
178
238
208
152
190
224
227
208
237
143
197
230
224
169
209
222
193
172
217
196
172
177
236
216
230
216
176
243
173
165
149
189
229
239
193
209
171
168
144
201
201
180
172
163
263
200
181
166
216
161
123
192
184
218
216
254
204
217
196
197
216
175
253
160
145
155
197
184
183
208
220
230
225
179
190
169
159
175
182
168
253
225
228
265
146
170
155
169
230
200
232
238
158
241
147
228
222
242
175
187
218
219
176
200
183
228
256
195
189
165
201
143
194
191
209
119
172
202
236
229
200
184
226
259
223
128
119
183
178
243
230
127
224
212
226
156
197
229
215
215
226
185
185
200
200
222
194
242
222
148
236
240
154
194
229
176
186
260
226
214
139
146
214
272
197
178
207
204
205
229
211
209
264
232
160
220
180
195
255
276
197
200
199
213
189
184
191
182
238
164
184
254
208
207
200
213
223
120
277
147
218
202
172
140
200
209
227
220
210
178
174
192
172
212
221
276
172
166
193
207
171
233
183
225
227
255
164
181
230
160
248
212
213
223
160
221
201
169
215
219
245
156
189
256
218
210
206
179
223
230
180
200
204
187
211
169
177
151
217
144
182
161
197
203
200
170
196
189
202
193
206
296
129
202
235
213
168
278
224
219
180
219
249
225
207
207
209
149
175
167
199
181
141
202
165
184
249
179
170
234
186
165
257
202
222
233
213
194
227
212
253
179
238
158
204
197
145
186
160
189
206
152
202
188
205
184
193
208
133
179
214
238
241
251
180
231
206
216
151
228
173
123
167
181
172
145
176
107
223
173
180
210
247
224
172
160
190
203
180
164
186
231
180
203
183
185
102
205
209
217
203
193
246
188
229
161
185
219
235
200
153
186
214
242
146
182
136
227
197
185
170
200
245
237
190
183
234
225
211
147
198
244
223
182
241
199
223
220
231
218
213
212
189
208
268
246
204
200
256
194
163
214
263
205
167
168
197
186
236
259
212
255
175
216
218
191
244
162
226
205
96
241
231
200
169
172
188
156
184
209
164
187
180
168
149
210
190
243
200
190
258
201
149
186
223
170
198
152
187
153
205
232
195
192
164
201
205
227
209
212
229
177
221
177
258
229
194
185
222
181
188
215
170
209
157
128
193
235
176
249
181
139
154
218
212
227
216
198
129
261
182
166
208
204
192
204
226
249
241
175
160
188
192
222
187
215
258
203
156
245
256
139
201
196
198
283
201
203
187
206
205
198
212
188
212
160
210
196
243
164
219
218
207
203
188
244
194
209
228
183
256
269
179
190
191
184
208
161
218
181
180
226
166
170
246
196
185
209
176
178
160
135
192
203
154
214
174
249
240
198
205
188
193
198
243
209
250
142
199
216
226
171
219
247
215
185
241
159
234
176
176
194
223
154
248
204
139
207
230
254
245
144
174
192
227
250
177
189
221
214
155
240
198
219
190
149
124
173
206
214
194
192
240
148
248
190
175
237
173
194
206
208
202
164
257
199
273
201
233
175
218
201
154
166
215
187
229
205
191
196
188
258
196
200
206
198
218
176
140
210
181
164
177
195
189
174
242
143
278
172
217
210
166
263
187
158
199
249
167
208
185
255
164
202
173
245
168
186
152
243
250
236
222
239
185
238
226
175
246
192
233
188
180
179
213
185
200
168
148
239
244
214
216
247
163
198
187
174
226
228
192
243
165
206
224
183
187
179
173
182
224
202
170
188
227
228
193
235
201
221
209
178
169
209
224
241
214
191
228
181
168
190
237
190
210
217
201
174
162
186
206
224
249
266
181
183
229
149
196
154
254
170
136
206
144
237
214
270
144
152
260
149
199
206
183
230
133
174
172
179
223
220
186
234
241
172
230
168
157
152
168
210
212
221
159
180
219
213
119
254
161
193
201
188
194
245
218
176
177
175
192
232
208
172
273
225
169
210
238
231
281
134
257
230
208
176
221
182
216
194
216
218
187
259
197
194
228
249
205
212
212
214
148
206
172
211
229
143
196
239
193
155
290
227
187
192
235
241
164
190
148
242
187
149
181
227
204
159
115
183
153
159
141
203
254
177
176
220
161
216
239
232
193
221
213
171
206
215
174
223
115
181
131
239
182
212
199
235
250
217
245
192
198
181
168
178
181
231
203
241
205
158
151
252
236
184
198
220
219
243
178
250
107
204
163
240
186
155
198
282
201
215
250
128
205
234
151
213
149
172
239
167
243
152
159
250
235
216
153
169
184
162
161
143
151
195
155
171
224
195
239
149
173
153
172
171
189
250
242
176
237
181
175
193
196
253
180
180
244
176
138
167
185
160
196
157
200
176
163
226
157
175
134
194
235
208
242
196
231
176
198
177
229
224
173
188
234
234
240
209
178
214
237
201
273
193
217
244
245
220
221
179
247
190
222
220
154
213
161
143
229
189
199
192
265
219
184
252
212
189
249
233
203
180
249
147
188
194
155
184
137
193
238
192
170
126
161
261
121
191
250
189
212
143
145
178
237
191
173
175
214
203
220
163
152
173
246
207
202
181
226
204
210
189
165
224
150
197
182
153
227
200
214
220
234
251
256
166
218
158
134
243
236
170
191
153
190
195
202
242
192
231
234
205
211
160
226
164
206
148
186
217
285
259
215
244
202
215
191
175
220
217
216
251
189
194
202
233
161
199
174
235
194
190
176
208
154
173
210
161
216
194
138
179
201
251
164
275
216
118
172
248
215
165
209
230
196
169
209
181
239
211
214
234
223
208
217
205
246
165
210
254
241
172
228
165
253
232
166
211
212
204
251
194
164
193
162
215
185
211
231
183
188
168
195
209
216
222
170
196
242
143
233
250
159
185
189
216
208
210
129
170
185
154
161
186
213
227
224
212
150
113
198
214
156
196
157
220
84
220
204
194
207
231
188
213
140
229
189
132
242
204
237
230
235
186
232
158
216
195
124
228
183
162
187
177
250
202
182
264
175
191
233
245
199
213
228
181
215
200
245
176
222
140
175
158
235
150
209
189
184
210
189
200
187
254
185
197
242
167
209
265
202
201
229
206
250
195
206
219
144
198
217
167
180
233
156
177
252
198
206
221
165
261
186
191
184
211
232
198
213
236
180
229
209
231
203
199
219
128
196
192
265
202
182
182
254
177
202
146
179
197
212
197
173
202
204
216
215
171
161
196
187
195
223
148
127
196
222
149
252
227
230
151
216
207
242
172
240
172
215
201
231
209
198
252
193
227
216
226
231
258
198
198
243
205
166
155
172
261
202
199
205
234
211
197
213
233
144
176
150
229
194
165
154
216
163
201
152
230
276
165
208
233
155
239
173
244
249
202
197
194
200
231
194
177
128
218
221
124
215
219
167
158
149
214
152
217
229
208
211
207
185
248
227
249
261
236
244
240
162
160
141
178
175
228
264
260
193
236
250
219
201
179
227
184
190
255
190
200
200
178
234
154
214
176
195
197
158
170
231
137
241
166
185
190
162
180
218
208
168
199
145
109
133
221
154
202
227
276
178
233
210
176
196
209
215
224
202
233
221
128
246
198
156
251
181
157
221
209
220
168
123
232
211
204
241
195
230
192
218
134
179
218
231
175
190
199
206
235
188
250
182
191
180
237
215
181
189
171
214
180
213
192
203
174
246
141
162
221
223
221
176
238
245
92
238
226
214
227
264
190
219
216
209
235
183
256
203
178
178
206
197
219
177
179
160
230
252
249
217
143
155
222
196
216
159
162
152
190
217
158
236
181
196
176
194
240
234
230
185
124
220
199
246
231
248
195
187
234
154
190
174
238
190
189
165
211
253
157
164
155
202
181
167
216
169
224
220
212
173
155
246
183
235
234
199
161
195
207
195
167
237
231
178
211
235
176
232
218
204
242
163
210
183
127
214
234
227
199
139
174
216
217
289
142
117
265
240
153
231
173
219
167
247
180
217
257
213
211
201
201
243
207
232
227
266
200
224
209
191
200
208
195
240
209
177
249
234
190
231
171
225
182
178
226
221
224
196
149
269
168
121
215
265
249
182
261
227
224
168
160
176
162
160
158
183
228
205
179
200
207
225
164
215
137
230
224
211
214
207
188
193
151
231
217
181
162
206
233
211
185
197
149
207
164
213
235
213
179
212
260
174
193
232
194
162
205
162
205
193
284
149
166
151
243
201
208
235
202
197
217
215
175
181
153
167
217
182
220
179
203
168
212
196
184
172
204
200
204
161
164
175
175
196
190
134
153
232
233
214
210
145
190
183
195
206
225
234
237
166
162
115
179
235
225
181
274
248
153
256
200
208
194
268
202
237
198
210
252
196
189
215
196
148
257
204
189
198
246
169
169
192
214
179
198
204
233
209
152
210
191
181
244
154
198
227
206
209
198
153
162
228
172
177
150
189
151
173
165
175
217
190
146
163
113
190
212
163
215
133
259
182
198
183
203
181
157
180
178
267
187
197
167
178
204
200
162
217
158
212
194
189
253
241
168
215
134
159
188
171
140
270
215
211
204
185
235
222
254
169
209
204
211
261
223
127
179
191
173
181
196
190
197
177
224
187
177
123
239
250
208
178
150
130
172
197
195
221
198
228
235
206
183
184
235
174
226
241
196
160
222
247
176
231
192
218
177
184
224
260
266
180
194
184
153
189
198
210
194
188
282
203
234
232
219
221
229
216
203
185
138
176
204
180
160
232
238
268
202
170
223
258
222
221
247
171
195
203
237
223
201
183
186
109
158
243
148
259
213
207
163
236
190
238
176
256
197
227
222
264
217
250
177
163
189
183
205
212
137
238
218
230
248
206
237
163
103
263
162
186
231
239
213
223
278
210
216
147
182
160
196
168
208
215
254
206
178
170
217
178
231
189
171
199
180
187
260
243
226
258
227
169
229
256
164
181
101
193
261
148
174
232
175
158
154
200
224
197
242
258
217
206
221
209
210
230
141
164
167
211
167
191
180
143
174
203
196
175
181
185
234
234
186
194
148
238
224
216
165
196
164
187
207
174
232
180
224
188
192
161
174
180
171
197
151
229
178
202
165
190
227
132
201
239
196
175
181
220
200
210
193
204
184
217
222
178
220
226
177
253
238
174
184
202
219
196
181
222
212
195
162
185
240
223
241
228
233
217
157
210
168
213
214
154
199
254
191
217
189
255
125
164
177
210
143
222
187
206
255
137
227
166
247
151
185
175
184
211
138
203
232
240
140
229
176
223
139
165
196
206
182
148
194
181
219
233
236
285
234
174
156
111
208
198
189
178
167
271
220
167
169
210
164
189
162
162
160
209
165
272
203
203
227
259
217
208
211
175
150
216
191
207
221
219
192
246
213
245
229
164
231
222
132
239
163
187
255
227
183
165
147
204
213
248
176
202
204
180
146
186
211
191
222
209
129
231
223
188
251
251
205
244
134
175
224
187
235
204
227
192
166
185
214
206
224
178
183
194
227
246
222
194
182
183
221
216
210
199
217
172
200
250
228
210
270
143
221
136
264
172
241
190
263
197
224
165
243
192
191
186
225
274
203
238
203
173
173
177
272
194
158
170
120
178
217
154
185
255
223
243
184
235
110
224
159
241
173
232
209
168
254
246
202
206
195
254
216
224
225
230
195
197
192
152
175
233
193
167
195
154
257
226
266
235
181
273
217
212
125
208
165
169
203
232
175
122
232
131
200
179
165
226
228
139
190
193
238
148
179
209
183
174
214
211
201
216
166
202
207
207
169
207
165
184
147
213
129
188
218
149
233
223
222
252
173
176
206
205
120
176
199
196
240
177
161
257
232
176
221
213
146
192
250
170
219
195
209
179
160
177
239
157
244
215
184
158
165
193
198
152
262
211
255
186
179
196
193
228
198
259
240
196
207
172
214
176
209
161
228
170
275
220
203
143
155
191
207
211
171
222
284
230
242
202
226
230
249
144
142
280
201
262
189
248
197
237
235
244
174
209
223
182
215
190
208
216
219
168
240
235
169
179
194
201
219
210
217
217
252
222
240
220
195
142
162
163
232
186
182
129
258
168
223
136
182
207
235
224
232
253
247
160
240
195
215
191
146
220
186
227
229
218
228
155
203
164
223
192
227
186
248
234
181
198
159
235
243
129
230
165
258
218
249
248
201
188
225
203
206
216
187
144
147
170
209
225
139
195
173
175
202
175
224
212
161
198
144
281
175
238
230
213
190
176
253
153
156
153
208
209
215
209
215
198
260
178
215
128
226
208
180
208
224
183
173
175
220
182
237
154
221
271
271
230
160
201
188
229
187
163
180
260
212
184
179
161
225
224
170
230
220
135
235
217
179
144
231
242
221
219
192
177
202
216
245
225
226
217
227
191
162
221
212
195
174
178
225
246
194
205
149
200
142
224
240
229
230
177
182
235
227
206
187
173
223
202
185
201
231
177
240
216
222
182
167
167
223
166
189
257
222
212
180
155
138
180
191
256
216
188
189
188
248
237
276
195
252
221
232
241
151
223
275
191
157
181
235
237
260
281
212
191
200
166
239
157
204
189
223
214
195
188
140
204
194
190
246
266
234
217
201
219
177
216
212
181
184
226
193
148
223
205
224
216
196
157
245
166
264
165
210
186
195
183
205
237
227
208
239
265
243
208
163
174
203
193
265
214
199
234
207
185
208
166
194
150
203
182
149
235
135
179
158
214
211
252
228
217
151
155
198
252
227
189
249
243
180
187
179
244
199
208
245
187
161
192
209
234
243
251
183
226
180
170
157
164
135
242
163
188
213
217
222
242
185
181
188
205
199
225
197
206
246
175
110
209
179
193
259
223
208
209
113
218
221
211
222
182
162
215
129
193
199
279
174
249
213
273
179
189
198
226
178
215
270
198
227
192
151
228
169
170
169
142
158
138
102
185
213
199
198
225
175
169
139
241
208
167
202
254
226
250
190
237
177
247
243
193
197
200
167
204
230
169
207
185
202
184
201
210
126
244
190
206
177
195
236
230
206
229
240
172
189
170
242
162
206
192
147
227
209
190
161
135
226
232
200
199
179
172
168
136
224
160
200
224
172
137
178
218
196
229
213
184
123
123
159
222
234
182
156
197
209
235
197
232
179
233
184
141
193
230
191
175
214
227
157
194
264
178
215
185
181
189
188
205
149
252
207
204
191
135
157
165
175
146
189
268
225
248
194
221
196
188
172
201
207
104
197
195
294
212
157
131
183
207
203
240
141
175
178
144
175
232
237
234
167
248
223
224
177
143
229
153
161
191
124
233
227
219
222
209
237
190
205
156
246
196
152
171
201
208
208
166
186
174
186
244
157
185
226
223
156
220
236
205
257
258
154
183
208
156
173
214
192
189
162
147
197
192
189
235
142
254
139
270
162
211
215
143
156
198
192
139
192
148
217
184
165
215
229
217
228
235
188
157
213
235
137
242
225
140
122
198
256
146
179
253
192
212
177
242
195
251
191
187
205
202
222
258
192
190
158
184
169
279
140
198
265
238
151
174
226
240
217
183
161
219
195
216
200
218
188
208
172
230
194
173
200
156
234
263
233
212
124
183
229
261
198
217
188
238
166
221
233
220
196
220
175
146
158
215
171
217
256
232
184
183
178
210
223
218
179
202
177
219
209
154
186
200
186
136
238
215
202
234
176
215
232
275
147
265
237
173
178
172
242
210
212
235
190
185
194
186
207
220
173
206
200
180
225
176
208
211
202
196
211
195
157
182
194
234
221
214
202
227
153
193
228
253
250
262
165
237
183
172
153
187
194
180
214
241
169
134
173
217
200
176
188
187
189
224
244
153
171
223
214
165
229
196
161
150
172
194
167
204
176
183
237
187
235
178
199
184
207
133
207
198
204
183
199
178
203
163
203
215
221
175
113
178
186
219
197
187
196
211
202
201
230
202
206
233
239
196
192
180
199
169
154
253
181
211
239
186
192
166
200
170
226
203
122
215
194
181
196
132
234
205
239
177
174
201
181
257
238
177
168
168
151
226
188
205
213
189
188
224
232
231
158
178
243
171
209
199
201
204
141
177
220
196
179
214
211
175
207
206
183
184
194
163
193
286
207
190
193
248
212
149
251
232
190
226
199
231
198
210
237
207
203
162
235
165
177
259
190
208
248
130
266
213
179
170
189
189
197
213
221
176
234
224
227
238
219
233
232
198
200
161
212
228
109
209
242
228
203
215
164
203
199
177
184
159
230
219
139
199
144
184
170
203
208
193
246
98
262
190
193
223
257
174
273
226
130
180
158
199
187
184
171
195
231
191
233
241
190
176
249
157
221
156
228
178
183
196
221
174
188
129
208
238
193
215
205
249
261
201
169
212
152
195
204
209
185
181
204
218
233
195
216
152
215
236
154
161
219
198
156
182
233
156
218
266
209
224
211
181
161
176
232
208
211
238
179
156
136
185
157
154
172
224
232
262
210
205
237
203
212
152
184
193
250
224
197
164
244
165
177
149
192
166
177
283
242
205
179
206
186
185
235
264
175
137
206
236
238
154
215
167
182
203
165
214
169
165
197
181
163
211
199
167
251
179
234
217
218
243
244
174
270
227
159
168
154
222
230
219
190
92
191
256
153
203
188
203
208
148
215
214
220
204
207
154
140
149
213
242
243
151
197
196
219
224
162
220
217
202
159
252
214
138
207
165
242
161
209
154
227
212
190
251
262
223
244
186
236
196
213
217
200
216
158
156
200
206
189
235
177
175
181
210
208
153
150
213
231
229
150
183
177
142
191
272
227
193
254
193
225
184
256
195
190
211
176
209
241
172
169
249
232
190
209
183
232
235
278
233
228
227
198
231
161
230
173
208
200
220
198
252
174
180
253
220
181
261
162
193
223
161
245
144
268
242
156
238
131
157
207
205
186
155
138
232
211
238
172
144
184
212
181
119
202
183
169
220
222
206
197
121
205
177
155
153
206
129
158
151
205
152
198
207
276
227
202
225
171
172
136
175
240
118
215
223
148
195
208
172
174
194
155
250
202
241
212
215
204
211
249
213
281
204
215
195
177
152
222
183
247
170
214
157
211
193
214
237
246
199
137
185
222
231
181
240
167
159
226
191
134
171
218
187
148
207
250
230
219
249
165
176
208
189
165
178
222
263
180
175
203
196
201
157
262
194
149
186
220
244
220
246
180
231
216
250
252
192
148
178
174
164
269
218
203
184
219
201
175
218
272
218
251
189
181
246
213
220
206
183
182
179
135
209
260
167
270
224
176
197
190
165
209
195
212
266
216
195
139
269
246
212
228
243
189
230
185
248
178
141
182
250
229
173
254
177
186
174
215
191
186
204
209
216
173
219
220
138
220
213
183
166
106
210
99
155
131
187
196
247
162
244
172
205
218
174
277
183
252
219
222
179
244
174
186
245
223
169
187
171
126
147
154
165
207
164
228
187
171
233
162
265
236
164
177
195
227
189
181
241
221
206
124
172
188
220
178
207
211
209
195
203
180
182
164
240
206
210
229
180
192
143
202
238
200
199
231
233
211
188
188
240
180
163
185
200
220
178
210
233
205
188
130
222
188
139
262
211
174
239
172
280
235
219
208
211
200
172
147
184
219
190
203
249
216
231
214
184
188
251
226
202
171
182
237
184
174
196
214
208
255
227
209
239
132
224
189
260
168
170
199
127
193
202
241
138
139
150
223
178
246
185
182
228
208
163
125
185
198
207
238
243
195
230
236
232
171
216
173
187
196
193
199
151
168
253
194
242
245
243
182
128
189
230
186
180
258
187
180
222
146
197
179
203
208
162
194
134
214
219
184
261
159
153
213
248
225
173
230
135
223
220
194
205
223
222
191
169
198
212
204
176
198
184
212
185
236
245
265
166
230
168
161
192
201
201
226
249
175
212
223
200
169
250
169
268
214
190
179
200
233
259
220
176
152
104
188
210
175
210
131
203
187
190
199
200
198
197
210
194
186
187
199
223
162
240
186
244
181
155
213
235
233
139
197
218
178
238
184
170
220
249
216
179
225
146
159
182
201
178
254
187
177
190
160
147
196
186
225
183
213
223
198
201
170
228
254
214
241
216
238
221
184
222
213
175
189
216
185
199
232
192
256
241
154
239
185
154
197
162
198
187
219
221
182
232
231
226
166
186
225
227
165
171
246
190
238
216
196
235
229
215
154
197
189
241
204
224
162
204
210
277
204
154
124
207
222
236
267
220
178
185
194
206
258
163
265
143
205
236
172
239
224
180
223
158
239
207
209
183
158
167
225
153
209
191
190
215
153
162
261
201
190
241
99
195
171
147
248
214
235
242
187
251
195
168
259
165
215
251
190
171
156
151
228
200
194
185
143
194
149
202
194
180
191
219
209
154
276
230
167
218
232
237
209
199
226
183
190
213
220
116
246
131
200
141
235
219
192
173
193
175
268
237
217
161
243
200
163
253
163
234
181
236
159
200
213
211
241
156
243
206
240
248
218
198
165
157
208
163
168
191
231
171
195
229
138
182
127
226
194
223
276
149
163
215
161
193
208
173
242
177
235
206
175
185
170
158
182
258
177
192
189
209
200
212
195
237
221
198
191
164
216
146
261
213
175
138
130
185
203
202
235
217
225
201
181
248
252
195
196
200
245
156
165
196
195
190
153
231
179
238
196
231
284
220
216
182
158
208
220
241
221
268
126
185
227
151
227
188
169
210
214
236
127
191
257
242
174
203
179
194
218
184
202
195
214
215
168
229
260
155
252
219
172
246
193
191
231
207
203
243
213
194
250
254
248
248
189
195
185
167
211
182
185
166
182
183
184
185
138
132
233
238
143
136
238
220
207
232
236
201
199
151
138
251
204
185
166
275
222
249
225
178
168
156
151
233
225
183
192
178
176
169
196
178
204
115
211
210
196
161
163
152
174
235
140
276
223
167
165
190
200
216
171
202
147
227
243
191
172
224
180
206
193
196
156
192
175
156
231
214
255
205
223
178
231
173
249
207
176
257
166
153
147
270
145
204
150
149
206
153
233
241
117
227
232
174
268
228
203
232
217
206
199
188
185
149
224
186
124
237
230
139
138
187
231
218
244
215
182
226
216
203
199
259
186
184
196
273
168
204
161
235
119
172
205
121
201
261
171
200
167
199
267
154
210
196
172
198
169
247
187
221
208
194
222
203
245
218
204
210
212
152
234
199
295
144
163
201
175
199
170
158
220
145
155
226
113
183
175
211
241
214
181
165
262
206
205
199
208
129
117
192
162
245
163
216
212
231
174
235
199
198
210
232
197
189
221
204
194
191
240
267
201
182
186
201
148
128
176
177
220
196
199
208
261
175
257
189
242
251
212
226
244
232
211
229
156
167
178
177
219
241
192
193
200
232
239
170
161
221
165
240
206
223
235
246
199
243
209
190
206
232
199
204
192
183
129
196
156
182
225
210
173
281
178
187
184
204
167
134
171
215
211
254
241
146
198
173
191
135
223
204
232
203
210
238
226
224
167
194
171
214
234
161
142
196
207
170
179
200
236
158
159
218
186
235
243
193
204
132
214
201
176
252
236
167
202
210
253
203
243
223
190
237
174
202
201
201
180
219
235
214
205
223
198
158
190
248
225
210
175
180
185
217
192
148
194
153
90
161
168
218
149
211
212
239
210
266
164
140
216
181
206
217
243
240
181
208
219
210
205
239
174
235
184
164
210
230
235
191
163
161
251
267
164
161
171
182
189
239
211
163
205
238
200
195
223
239
190
175
278
247
195
202
235
187
244
197
174
235
197
199
210
219
172
187
181
188
203
172
220
224
167
225
216
203
158
225
258
135
172
237
114
209
135
189
169
195
219
208
188
202
217
178
184
208
238
200
252
186
217
174
193
141
155
176
159
193
226
221
222
193
203
227
190
197
153
199
235
161
181
153
170
234
170
222
159
141
177
179
226
246
194
219
194
181
180
158
232
219
210
149
174
197
203
233
241
202
162
233
189
199
245
171
253
212
173
209
250
262
200
192
229
168
220
181
195
208
212
181
241
171
209
218
197
214
198
210
175
216
189
186
241
175
189
216
189
189
137
178
187
225
189
193
229
151
242
186
210
132
244
237
197
212
269
171
242
210
269
224
191
226
247
210
190
168
189
226
135
209
249
178
243
183
161
188
189
209
158
197
203
198
194
204
214
219
176
215
249
218
195
150
176
185
182
263
195
203
232
190
180
231
204
217
219
259
200
166
175
169
211
197
202
235
237
251
217
297
227
169
160
225
209
193
192
195
285
210
212
175
212
162
195
215
204
130
206
186
233
187
153
178
198
215
172
214
222
155
213
153
169
198
216
183
211
231
153
169
207
208
231
210
247
175
182
201
186
171
166
173
238
220
183
142
223
176
187
139
210
217
149
111
202
210
264
222
183
184
185
192
243
252
255
254
211
229
162
193
172
174
250
200
197
175
231
183
183
169
221
176
174
200
207
231
258
178
163
225
176
180
241
130
156
160
208
201
239
208
222
168
179
243
192
249
239
163
192
176
214
215
183
223
231
138
209
203
220
196
250
212
172
161
226
200
219
198
269
193
250
243
224
194
190
253
180
166
170
216
291
205
197
194
184
162
239
231
191
217
188
201
196
195
253
206
205
222
218
164
150
187
182
250
193
194
214
172
227
200
219
191
185
128
189
206
143
208
153
183
208
202
163
214
224
188
119
280
237
201
189
187
224
211
185
232
187
199
214
179
161
211
159
180
226
170
186
184
231
203
212
204
206
156
231
196
161
255
164
168
163
217
115
175
202
177
193
156
215
187
185
252
234
235
190
168
271
202
196
190
257
175
186
212
204
221
209
221
199
153
237
238
194
213
207
160
205
212
156
194
213
166
232
232
225
171
198
229
196
176
245
142
234
190
182
154
143
152
215
198
188
167
249
228
134
193
255
235
207
172
218
184
159
239
236
180
253
163
183
164
152
179
229
150
190
166
198
172
216
221
237
222
197
199
175
203
214
258
175
224
164
248
194
137
180
221
213
234
94
172
242
201
181
206
226
234
198
213
211
182
215
161
207
220
154
230
208
207
165
90
200
252
199
130
175
166
282
181
166
182
184
255
223
250
189
212
176
244
189
198
212
195
205
213
157
243
207
182
206
192
269
227
223
184
173
237
200
161
234
245
192
204
208
188
227
160
211
222
201
167
171
157
123
191
216
187
243
261
177
212
149
158
146
250
213
218
149
176
247
212
196
256
240
171
212
226
195
170
201
202
144
237
182
187
190
208
205
219
187
221
173
207
229
195
204
217
202
158
173
140
156
176
224
134
216
193
151
238
181
214
227
218
164
178
160
198
193
188
234
182
176
235
192
115
223
161
207
187
179
195
135
213
220
232
213
212
227
245
159
172
231
191
167
173
175
165
268
246
254
202
197
236
156
164
180
231
244
236
250
205
169
161
212
195
190
222
164
209
202
199
197
210
156
153
240
166
232
133
272
241
229
191
146
217
123
197
170
181
183
209
185
151
200
236
244
161
126
194
193
245
179
165
193
213
242
230
210
211
228
223
183
245
242
206
212
159
203
236
182
185
199
191
211
224
229
219
261
257
228
173
178
185
227
271
210
192
215
211
197
213
177
200
225
198
220
205
206
117
201
199
144
206
120
234
253
192
171
185
182
221
135
223
197
191
188
236
135
226
169
127
224
258
188
200
203
128
133
231
223
221
197
235
262
177
214
252
193
190
173
230
192
158
203
158
218
240
202
170
205
155
191
262
189
208
218
187
230
160
223
213
213
242
184
229
165
245
198
159
166
217
176
167
187
217
205
221
254
181
171
212
203
214
185
167
209
193
238
197
244
197
186
207
175
188
175
170
172
174
225
202
139
261
206
234
213
184
246
189
161
208
155
208
165
226
207
208
248
181
190
136
233
185
189
148
142
205
200
264
203
231
286
169
204
221
152
250
219
213
131
222
165
230
154
182
198
181
252
256
206
182
215
212
172
213
184
220
239
245
232
218
158
167
265
191
203
222
190
212
173
214
162
257
155
171
265
172
206
229
157
242
240
172
203
150
183
244
134
176
190
200
239
174
171
189
226
197
143
213
242
269
175
169
201
206
123
194
240
138
232
188
215
178
200
207
192
118
207
166
172
198
197
194
185
176
178
244
231
204
205
248
227
168
168
173
199
179
171
238
186
246
194
138
238
197
207
203
242
178
174
196
109
187
172
223
175
159
159
180
218
149
184
261
185
220
233
157
207
157
156
227
279
249
177
221
183
186
183
230
178
240
193
193
183
171
144
219
166
211
192
210
193
231
242
151
199
225
127
202
207
177
194
243
170
223
126
222
163
161
192
212
161
229
176
178
203
213
184
246
235
146
207
206
246
202
166
271
247
176
235
187
196
178
221
263
156
161
213
214
203
185
186
221
176
154
184
215
201
175
197
239
234
225
244
204
193
199
197
198
195
254
201
182
199
173
211
232
221
244
216
185
203
234
212
225
160
211
197
214
241
224
253
196
187
152
215
195
171
177
204
226
148
213
202
218
183
253
184
184
233
171
160
180
213
208
212
122
211
196
162
215
263
131
183
173
154
216
226
161
175
222
171
256
260
254
128
173
221
171
191
209
158
208
190
209
135
167
214
167
227
180
145
228
208
138
232
191
166
230
170
185
150
184
230
177
158
202
207
281
201
212
190
240
217
124
218
221
222
239
234
171
230
222
226
186
224
117
127
248
132
200
215
191
178
151
196
128
236
136
192
177
147
174
184
237
239
254
260
213
159
200
258
153
168
203
202
226
223
230
238
183
251
248
148
234
234
212
152
237
216
208
205
151
237
188
154
178
239
179
222
223
205
200
206
199
175
229
183
168
269
218
215
223
156
187
166
213
215
236
182
106
272
156
219
161
151
199
276
200
185
188
239
214
226
274
225
207
272
181
175
194
207
198
192
252
242
210
126
212
224
196
172
165
263
169
234
224
189
229
188
184
260
151
187
219
168
194
245
216
193
191
236
170
181
194
190
152
142
158
127
188
220
166
222
224
195
248
210
162
234
255
212
196
196
163
216
245
224
219
155
177
165
161
200
247
213
251
195
175
220
222
183
223
218
186
176
225
194
105
169
227
259
182
164
197
166
215
175
197
151
245
199
217
230
157
159
252
178
204
203
141
198
240
207
250
213
202
163
201
218
177
231
231
160
189
142
253
210
165
216
234
214
218
215
150
214
207
219
225
228
168
193
177
199
209
166
226
160
266
210
156
152
182
156
218
112
180
201
191
206
233
153
193
211
243
130
199
243
182
218
149
199
193
212
217
193
277
244
227
189
192
169
263
217
209
262
263
196
185
218
196
209
238
190
125
165
241
231
176
139
246
191
207
193
238
245
203
170
194
161
178
220
169
136
196
196
182
146
218
218
204
200
153
149
192
193
186
146
161
257
191
166
243
166
197
216
248
222
215
170
254
199
251
236
231
220
174
172
139
207
193
172
195
242
205
216
171
228
143
212
139
177
150
226
201
169
189
181
202
226
254
206
205
257
244
224
243
180
220
203
222
158
125
206
229
179
199
151
181
205
196
203
118
166
136
192
228
243
179
209
193
189
273
195
228
232
201
188
218
245
187
175
216
210
178
234
192
212
262
220
259
155
228
249
167
234
224
197
170
255
197
231
202
126
229
192
224
211
173
271
193
243
242
211
175
174
203
217
209
189
167
248
220
206
206
246
226
188
217
242
261
190
187
218
214
226
166
222
236
225
207
281
189
170
199
191
240
252
111
238
194
232
235
159
163
163
208
223
220
135
191
209
157
172
195
248
200
200
246
213
248
210
206
179
212
258
239
193
180
187
234
152
241
247
255
93
224
237
194
130
174
229
188
246
216
232
191
192
172
236
243
222
206
190
221
200
272
167
189
261
257
209
181
192
204
172
226
186
247
182
126
200
146
176
231
214
171
196
184
201
233
221
204
181
252
208
206
191
255
186
205
246
218
187
230
210
207
175
203
196
197
243
188
194
153
239
220
171
212
188
234
223
248
203
222
150
195
219
208
276
218
211
193
178
306
203
161
193
225
112
239
225
220
194
217
212
228
184
253
230
175
208
182
173
204
202
231
248
204
249
143
222
201
222
184
174
211
237
218
247
209
171
201
185
137
213
204
216
171
189
237
149
184
124
229
251
171
209
224
163
169
253
217
200
159
188
258
186
135
207
203
248
181
124
197
200
203
166
242
177
270
242
201
219
151
229
234
226
220
219
187
245
211
207
259
189
157
204
240
199
134
230
230
198
242
210
196
163
229
238
240
274
211
162
261
214
233
193
194
216
221
219
213
262
231
206
296
186
156
198
189
243
233
208
201
149
135
174
201
213
263
243
172
260
189
189
192
131
227
147
182
257
205
208
200
188
189
130
272
243
183
205
207
193
209
200
233
177
186
231
180
189
226
214
222
219
175
199
169
164
256
149
183
203
247
225
160
148
167
193
170
163
128
209
186
186
236
213
229
176
241
191
192
160
242
218
235
238
209
159
218
186
212
206
221
216
209
209
199
241
151
196
138
181
146
264
170
164
187
101
167
231
146
203
218
212
150
197
171
155
182
215
181
176
203
227
247
246
203
179
230
182
227
270
194
195
194
197
211
222
226
226
149
180
138
157
250
216
202
154
167
253
205
236
160
176
245
153
220
217
136
210
211
234
234
254
212
258
197
242
197
246
189
183
248
191
204
171
267
258
206
165
173
268
227
193
227
224
289
203
195
199
208
181
224
157
221
168
185
203
218
207
195
192
120
194
194
214
186
165
259
117
250
229
140
247
206
195
174
169
231
183
245
178
219
212
212
199
214
164
187
218
198
216
243
258
257
234
219
163
191
273
272
192
165
188
222
230
161
180
198
243
225
167
183
245
197
200
193
196
182
189
207
223
132
103
215
251
207
172
203
259
231
211
210
217
185
256
201
151
211
172
231
230
211
222
219
214
182
190
206
234
191
195
260
218
209
98
145
193
147
239
223
215
192
206
186
181
248
167
111
149
255
259
208
178
281
192
160
217
171
198
247
207
204
159
179
263
246
131
227
196
164
212
224
262
176
232
208
166
202
141
248
227
177
233
201
176
222
207
232
223
238
236
244
209
203
179
186
159
136
127
201
185
227
218
179
208
169
123
235
176
208
162
164
201
264
207
201
202
159
162
179
165
174
208
179
177
246
256
192
170
205
163
195
219
236
193
260
209
205
183
191
245
126
153
220
167
198
216
210
208
192
189
184
155
201
183
204
181
219
95
231
195
212
212
179
201
219
182
184
191
233
194
178
190
218
250
183
170
152
141
161
206
232
162
212
161
198
247
194
252
199
248
193
196
192
166
231
158
233
228
160
186
162
144
201
250
188
196
207
249
189
222
159
253
168
220
232
189
224
266
227
224
232
180
189
234
234
140
183
191
240
160
213
200
200
188
215
196
267
196
223
224
178
242
248
184
160
223
204
220
155
204
225
168
228
180
203
167
214
178
185
209
185
264
136
231
129
186
192
191
154
188
228
197
211
185
246
220
194
200
204
253
219
246
224
229
216
224
219
204
187
149
212
225
269
183
153
235
147
189
205
220
256
170
103
208
241
156
216
185
185
197
234
230
184
201
148
222
210
194
231
232
191
224
229
297
150
190
203
235
214
181
185
253
227
125
166
264
231
241
241
224
211
173
134
223
168
126
178
211
195
237
200
248
220
238
226
246
144
197
193
186
227
227
158
204
261
250
230
234
183
238
194
255
186
210
216
240
208
205
217
154
181
191
200
172
180
219
217
106
257
160
214
249
213
222
192
215
159
267
209
169
196
149
144
224
170
179
249
170
237
148
215
242
191
205
221
129
197
255
195
218
215
222
208
231
216
176
253
202
159
260
218
210
171
223
226
200
205
162
203
179
206
206
197
185
223
231
194
195
187
227
201
217
189
211
219
207
220
202
231
252
219
200
172
231
174
246
189
186
155
158
176
232
230
229
227
221
173
158
159
184
146
201
149
178
194
260
166
232
152
199
202
206
227
225
227
159
212
174
215
182
217
139
101
194
178
239
194
184
222
161
205
188
214
210
188
215
207
168
179
198
177
169
220
106
214
136
214
200
211
184
194
172
219
178
145
197
163
196
176
217
187
222
214
195
198
208
124
180
172
210
160
198
183
223
208
205
235
206
206
196
153
197
191
176
227
170
241
198
193
198
148
196
160
234
259
184
134
224
153
214
285
191
201
278
183
139
238
182
230
185
241
213
199
219
192
240
179
264
258
223
212
219
188
204
218
178
216
198
178
193
215
155
243
204
157
245
238
244
146
241
170
242
203
184
230
239
230
157
192
122
230
187
241
189
194
218
171
209
218
263
174
213
220
244
153
133
197
178
225
152
183
205
124
209
205
202
192
196
252
228
178
134
121
226
190
226
221
158
131
216
163
158
256
193
209
224
183
130
119
203
247
131
203
189
170
198
180
218
239
189
161
156
166
231
173
213
267
177
138
208
186
242
180
175
246
215
210
190
216
237
239
236
231
176
224
227
228
152
204
240
268
212
256
188
189
162
220
231
191
211
216
175
194
170
159
184
173
213
218
208
199
239
154
180
285
224
268
164
220
195
236
216
192
167
210
199
179
206
280
178
142
208
240
201
196
174
164
234
217
204
127
285
182
207
134
218
196
144
198
240
166
164
144
186
245
229
216
208
289
195
165
214
220
235
174
215
204
211
205
161
187
201
186
250
158
208
220
192
203
219
226
150
173
234
208
173
212
218
217
243
222
169
210
193
233
206
195
224
201
209
182
176
126
181
283
169
265
189
206
186
260
229
174
218
173
159
140
230
191
154
155
226
212
214
220
176
193
227
205
271
198
189
176
217
164
192
224
211
220
202
269
147
261
194
140
174
206
217
198
121
151
229
230
216
193
222
240
205
175
245
195
182
261
172
262
169
184
193
211
219
162
210
264
175
171
180
196
199
147
186
218
190
246
153
210
232
236
220
141
211
221
233
188
235
213
237
197
241
189
228
184
188
209
274
199
132
256
212
187
218
201
166
252
205
252
206
186
233
156
199
228
211
258
173
211
130
213
166
175
159
254
146
216
230
172
197
235
218
225
213
203
158
211
235
203
194
231
211
179
250
188
210
183
209
169
197
184
250
138
178
226
219
143
231
196
180
155
156
156
195
174
199
215
243
284
240
245
174
189
178
252
115
186
142
218
246
175
218
223
218
245
255
118
262
178
232
168
157
153
238
177
211
201
232
166
142
216
249
230
238
221
142
266
254
254
169
191
165
184
233
197
200
225
242
186
241
233
120
236
229
161
216
225
228
180
209
250
169
187
225
238
271
175
158
187
180
223
232
228
152
201
235
209
228
231
161
181
273
173
237
240
144
177
206
117
188
231
179
225
205
246
251
163
262
173
210
223
180
207
235
212
162
197
183
166
224
267
143
217
164
137
122
157
215
235
209
136
206
229
231
183
195
200
182
191
294
209
201
205
190
209
220
247
222
214
241
219
185
222
220
187
246
160
212
154
253
181
191
219
196
166
134
167
229
231
223
157
186
234
189
163
231
206
221
157
163
246
165
144
224
274
223
161
158
149
125
257
328
200
203
197
221
194
215
248
224
210
182
151
197
236
196
231
240
212
180
167
200
153
204
161
143
265
190
199
144
163
194
133
201
173
170
209
236
248
154
149
201
217
206
200
247
208
176
164
215
197
221
262
202
203
179
220
190
172
204
210
250
138
159
191
180
235
168
229
193
240
195
164
211
217
268
212
215
198
203
210
169
196
205
257
228
146
191
168
225
203
201
156
237
219
174
141
189
145
152
271
228
197
183
242
168
220
203
251
179
158
203
253
177
263
175
202
218
254
272
180
238
176
193
181
120
248
215
172
194
134
199
193
241
200
143
244
215
146
182
157
215
195
198
201
192
200
201
197
151
222
150
184
228
218
166
213
174
213
175
205
111
207
187
151
160
209
184
181
174
140
182
230
211
242
194
199
167
153
166
144
176
174
264
204
229
271
238
167
152
207
130
148
257
206
147
225
154
183
221
246
221
260
211
251
175
216
194
162
233
197
197
204
184
147
149
237
173
196
226
221
224
221
128
212
205
205
188
188
174
202
191
239
246
204
184
197
174
150
242
268
246
189
252
150
211
151
255
214
139
155
170
198
168
242
130
173
192
206
223
204
131
163
187
223
208
217
174
143
211
234
212
213
206
172
224
205
215
210
206
223
227
187
214
138
198
195
231
203
196
197
190
166
194
205
243
192
145
94
186
195
207
190
207
210
154
213
202
260
217
234
258
184
195
184
194
213
206
184
199
211
221
250
206
199
291
143
236
180
188
194
172
174
221
215
193
144
150
174
250
163
204
225
140
211
187
175
270
208
198
216
183
224
174
158
219
193
199
208
196
156
205
215
168
239
193
220
199
173
191
266
214
133
229
258
205
171
154
174
216
236
213
164
172
195
203
179
214
171
234
214
198
191
247
216
180
222
186
193
181
178
173
188
239
180
256
218
219
221
236
206
189
175
136
256
183
220
164
241
242
115
238
148
192
202
195
159
214
200
207
137
227
160
176
177
211
222
203
218
210
206
174
211
218
171
219
233
190
137
188
234
217
162
230
187
199
245
202
178
219
186
208
218
194
159
172
290
186
257
277
179
215
214
171
248
258
238
163
208
182
204
238
154
217
232
148
223
106
191
217
217
183
188
219
195
271
210
138
162
165
186
160
229
236
168
192
188
159
167
207
191
181
235
189
231
188
275
198
170
233
209
166
227
227
207
170
152
223
156
188
239
189
211
231
233
219
195
214
167
157
209
213
184
252
122
236
133
148
173
170
185
203
171
181
152
188
151
170
237
246
220
182
219
231
224
176
168
197
226
159
160
189
206
183
199
213
199
187
260
159
170
198
202
146
194
208
203
236
236
158
149
254
205
177
256
226
235
172
175
183
228
155
134
250
192
231
189
142
237
229
189
191
223
200
205
212
198
212
210
181
172
147
259
226
140
117
219
220
215
200
163
207
218
246
174
217
172
178
191
165
208
202
221
154
202
175
110
160
179
185
215
173
198
253
177
264
167
233
190
215
139
166
253
184
220
197
219
217
179
241
196
196
202
204
223
191
146
182
191
170
242
245
174
197
202
163
252
242
240
202
233
215
199
230
265
238
205
189
227
234
179
215
246
166
178
107
205
147
190
202
229
283
261
177
139
210
218
232
208
236
225
235
225
225
151
211
184
202
243
153
250
226
165
207
162
215
189
167
226
226
169
237
213
182
164
226
256
194
255
218
247
159
288
183
166
217
228
191
167
191
153
192
182
225
191
143
235
193
222
205
189
155
137
153
219
207
176
196
198
230
161
153
177
199
231
231
226
145
251
228
188
215
198
260
183
146
173
151
243
121
196
228
178
208
233
211
167
172
238
215
146
170
182
199
168
227
178
166
238
138
257
210
180
194
166
158
177
245
199
185
175
232
181
174
181
223
196
259
225
202
234
208
215
177
175
221
247
184
174
215
276
146
183
218
164
231
158
112
183
263
223
208
197
204
148
201
150
231
177
220
234
219
122
240
185
187
197
178
189
235
159
220
229
191
209
161
226
141
201
196
203
243
172
234
232
177
157
218
213
183
218
207
266
230
173
216
270
234
228
191
171
168
136
195
229
185
196
215
183
190
128
206
183
259
253
211
173
198
230
265
257
204
229
244
210
183
189
172
181
247
184
248
208
200
177
166
118
271
184
177
181
207
231
161
188
205
278
191
200
236
275
121
89
208
175
167
198
128
244
211
228
160
203
165
211
262
154
198
163
135
237
231
222
225
212
187
158
130
210
178
199
244
198
210
183
154
177
213
185
227
192
256
240
121
169
226
225
240
192
185
223
237
194
182
187
201
288
251
200
149
165
217
180
224
201
195
190
176
193
159
178
191
259
237
203
214
213
186
218
194
173
173
130
184
178
232
139
268
185
226
212
206
203
257
213
167
185
213
188
221
243
187
200
167
179
164
245
222
247
216
214
202
179
241
224
248
191
198
199
256
150
200
173
192
216
265
197
254
215
174
220
200
200
204
153
227
163
138
219
261
184
208
174
177
220
218
172
174
163
183
207
191
178
194
186
119
216
216
182
180
185
203
194
262
174
196
239
195
276
218
200
193
168
150
234
185
255
144
196
198
201
248
237
143
175
222
170
149
192
166
257
180
283
215
218
190
223
200
219
270
223
228
205
192
246
238
215
221
185
219
151
188
222
189
217
159
223
143
241
221
193
176
174
236
197
185
210
269
174
246
159
217
192
169
165
204
218
217
173
196
235
193
218
214
207
203
172
159
142
168
241
205
244
232
191
162
181
235
169
157
185
210
171
186
232
243
182
179
237
247
237
241
220
152
169
252
228
193
225
227
210
143
240
215
192
184
206
187
176
160
180
141
247
170
153
227
188
203
228
211
116
194
144
226
223
237
245
165
212
235
231
227
203
242
218
231
241
228
256
215
211
261
177
230
182
183
158
210
141
178
171
170
185
197
228
193
286
146
252
219
235
206
192
196
197
223
234
178
222
184
193
215
166
214
220
181
205
204
151
268
140
211
191
203
198
130
192
221
195
136
237
224
184
142
156
237
232
228
166
133
176
209
260
174
154
207
180
214
165
191
151
231
214
173
213
192
209
218
237
221
196
209
232
148
161
157
202
225
228
171
197
244
232
249
238
201
287
168
224
201
239
222
174
202
247
169
237
204
195
254
171
189
218
133
192
235
124
162
210
228
231
276
193
161
180
177
184
163
268
193
195
218
234
118
154
226
241
231
169
174
252
205
167
242
270
195
242
173
188
162
233
204
162
232
240
180
225
203
148
215
177
190
250
222
178
243
199
164
191
166
190
233
199
199
231
166
88
149
178
198
219
238
229
252
242
131
190
246
177
238
213
221
219
227
205
230
238
214
251
187
185
176
145
149
165
186
210
220
263
230
197
223
151
210
196
272
199
168
181
195
143
154
240
145
264
232
195
214
177
247
205
210
261
195
204
153
165
155
216
246
190
174
226
178
197
165
134
180
191
223
122
196
188
185
231
189
229
189
210
253
246
122
220
258
210
219
208
207
196
243
153
219
217
264
213
231
259
203
245
215
201
193
211
225
177
217
222
217
251
249
268
151
222
200
133
207
228
185
193
208
259
208
184
164
184
150
215
192
255
188
190
254
192
181
239
255
207
193
204
243
206
199
157
193
207
140
169
238
229
175
216
169
178
202
132
196
140
214
175
188
183
239
196
227
205
188
208
152
220
270
236
168
209
238
202
227
162
214
195
172
259
235
179
216
238
217
242
153
169
202
235
184
240
188
161
179
196
210
248
210
241
151
211
136
176
218
150
143
192
211
187
249
200
212
235
223
191
178
219
241
205
190
240
237
181
153
199
203
218
207
243
250
296
188
263
226
221
184
242
195
289
243
217
202
207
163
191
194
238
230
187
161
190
223
211
239
248
167
217
143
206
207
227
184
184
157
191
149
148
180
201
278
222
222
218
183
231
181
165
241
211
254
226
224
181
129
161
185
164
188
173
248
268
176
207
205
193
216
240
139
221
225
224
242
222
185
184
220
224
190
220
223
174
217
223
195
177
269
196
192
241
173
240
260
124
184
219
158
148
192
192
186
171
217
185
169
225
190
215
225
177
182
165
181
227
225
191
199
180
185
186
213
158
231
198
185
278
231
257
171
242
214
221
227
193
250
176
236
193
140
165
151
224
156
219
193
254
171
155
116
201
230
298
210
161
223
216
227
212
225
217
246
235
182
174
252
252
222
229
186
196
222
186
137
196
241
213
212
242
186
253
247
160
256
224
239
219
225
197
190
241
183
235
173
228
208
213
189
147
234
180
144
221
204
201
177
177
204
184
138
167
206
138
207
234
169
247
158
163
195
130
195
196
237
207
175
202
247
256
174
136
153
172
197
128
210
200
165
194
232
265
200
220
196
242
153
197
202
218
177
169
256
151
246
163
188
186
216
202
261
234
202
156
164
224
207
212
182
233
233
149
222
251
228
229
183
210
216
217
216
154
224
195
171
178
179
226
253
208
190
212
183
126
210
193
227
217
170
192
141
173
183
164
228
237
203
186
199
219
198
214
214
245
220
248
208
107
145
247
250
178
238
195
133
148
193
171
193
180
228
237
209
158
218
175
192
151
247
256
144
211
215
188
212
196
178
176
229
162
213
213
207
258
244
242
204
140
179
191
196
188
182
159
186
192
264
217
232
171
191
210
251
122
177
190
182
165
231
201
173
213
254
201
152
260
153
157
145
133
167
270
221
227
243
216
231
175
302
240
253
215
215
225
251
187
220
230
246
243
163
123
155
239
220
141
220
168
169
170
169
176
220
196
172
183
209
196
275
212
196
280
271
201
191
232
216
156
221
177
202
183
221
163
235
205
213
210
269
209
195
217
169
251
196
154
133
202
195
182
130
164
235
186
154
126
163
200
175
201
208
198
163
206
214
221
226
191
284
155
192
234
189
190
271
262
213
209
206
180
200
221
233
201
165
213
221
226
208
219
232
182
219
236
183
213
145
212
184
212
150
165
186
215
189
177
191
186
209
218
156
169
196
224
229
236
202
222
208
183
192
150
242
252
203
183
206
189
231
172
216
182
165
178
188
211
232
202
254
178
213
184
193
216
261
187
265
206
189
234
162
219
197
173
242
234
214
215
185
212
202
190
195
212
252
269
208
187
224
200
209
179
156
140
187
260
221
179
239
263
250
231
144
204
147
173
173
179
269
215
256
188
196
252
185
247
141
225
250
171
197
147
164
294
191
274
132
205
206
190
155
138
156
199
232
263
203
215
218
190
167
194
199
173
205
193
198
234
186
221
210
201
213
185
205
231
153
159
173
175
171
188
199
238
179
206
219
222
208
256
175
217
247
194
268
203
183
153
176
162
239
215
203
185
163
215
166
163
143
224
212
273
193
156
173
189
246
183
196
257
212
199
209
178
167
197
180
216
182
175
242
221
176
271
257
235
205
153
166
200
230
238
187
169
178
203
190
251
205
247
185
268
201
205
208
259
172
243
244
222
146
176
161
185
199
192
196
266
191
193
207
186
188
223
191
193
233
147
247
172
220
189
176
212
165
207
181
233
167
200
220
227
181
191
223
198
199
217
171
170
253
153
194
167
155
205
140
169
230
247
132
241
187
285
165
182
135
167
213
171
227
227
234
203
199
192
193
165
204
191
194
286
164
174
194
227
273
206
209
238
122
160
181
213
153
250
237
190
217
169
160
212
130
205
221
179
225
246
179
193
179
191
177
201
230
134
150
171
217
158
212
224
229
223
196
206
217
233
176
171
238
199
185
212
195
206
166
200
182
237
189
220
241
179
208
224
243
223
241
210
144
153
211
190
216
155
159
192
175
195
175
223
198
179
161
198
208
242
185
101
205
289
204
155
236
178
187
196
184
170
182
217
178
254
228
246
141
147
226
203
201
230
243
211
145
212
157
182
206
235
208
164
234
157
204
194
204
196
260
241
165
181
199
235
195
160
212
230
173
289
249
226
199
215
181
190
146
180
204
200
201
145
181
220
213
216
221
151
180
250
190
224
181
182
187
233
220
102
171
218
203
238
138
212
268
212
182
230
138
208
148
230
261
235
182
170
228
194
235
125
217
278
224
186
234
191
251
226
213
213
208
188
229
193
168
172
227
177
212
166
213
180
163
226
167
204
245
210
214
219
208
162
261
179
196
217
187
186
219
150
195
196
215
252
177
208
201
217
173
198
227
167
236
243
185
244
118
201
227
269
231
227
234
195
169
237
102
111
292
176
230
249
207
237
202
169
158
229
221
222
205
238
236
199
195
182
251
218
227
178
194
123
251
250
242
161
184
183
193
221
181
244
209
200
203
253
175
184
162
197
218
175
211
153
194
199
163
191
192
270
256
252
201
182
155
194
182
158
209
153
210
154
167
133
211
173
221
218
204
196
242
214
231
207
180
234
186
216
166
229
222
207
223
174
184
170
244
150
209
195
209
233
259
167
234
226
191
194
189
220
165
244
196
228
178
213
211
211
212
231
191
160
189
275
202
249
160
214
198
208
219
157
133
172
258
263
217
197
135
209
265
133
112
196
225
214
206
131
194
183
209
235
229
191
225
170
167
185
260
182
201
218
178
200
234
198
199
229
211
230
196
179
196
235
194
226
189
224
189
258
214
248
239
207
206
244
152
164
246
113
225
130
212
269
132
242
181
193
155
218
180
198
252
174
235
157
224
177
213
199
199
230
257
120
170
204
216
161
227
196
207
169
88
144
247
199
196
237
186
208
202
178
177
193
207
208
165
174
138
184
206
217
151
265
174
260
239
179
208
210
163
174
176
182
246
216
226
249
143
196
174
226
242
138
196
123
145
236
143
222
258
177
182
201
202
216
167
168
199
210
184
142
172
191
135
197
145
198
178
187
212
205
186
238
169
148
208
154
189
185
177
246
240
269
223
231
215
246
246
280
214
262
193
210
137
156
203
216
175
179
196
220
155
296
170
173
162
208
222
170
192
209
233
155
211
204
143
167
160
109
224
246
251
209
235
214
245
219
225
160
271
227
206
213
202
219
223
205
241
267
169
200
230
209
148
222
168
213
199
224
158
181
169
227
242
158
159
219
150
189
148
162
170
231
164
215
207
198
218
194
158
204
247
254
167
232
219
201
202
236
196
223
180
206
151
205
227
194
198
213
224
207
169
183
239
175
233
163
222
186
245
214
176
189
238
249
190
188
201
203
211
201
115
217
238
195
159
129
229
171
162
173
200
179
187
150
222
232
191
212
168
159
182
202
235
175
160
201
168
175
235
178
172
221
180
178
206
213
194
229
185
190
227
174
213
184
169
224
209
176
211
217
249
155
159
201
214
211
213
202
237
202
177
203
233
225
225
190
246
183
179
165
209
261
288
150
201
198
234
177
202
216
229
190
127
144
234
248
187
158
204
223
200
187
155
220
169
165
238
230
187
237
189
180
216
157
174
210
221
190
155
217
203
232
236
193
212
192
178
238
224
239
228
203
266
186
193
172
190
204
185
193
189
170
192
223
168
176
171
146
187
210
217
219
203
184
144
194
202
224
174
201
229
241
186
191
218
228
181
203
218
174
195
190
197
170
242
196
199
146
168
118
206
163
228
228
227
192
199
169
255
178
161
131
224
211
170
232
200
238
216
136
238
201
182
248
180
230
240
169
189
227
217
210
200
192
144
111
192
235
198
183
167
174
196
163
225
210
168
184
167
238
189
179
199
216
212
204
236
215
230
132
224
265
156
213
117
235
157
192
257
231
186
139
231
95
191
200
154
200
211
254
188
235
179
226
213
160
240
207
159
171
216
205
201
198
207
221
216
222
171
192
218
209
132
237
226
175
221
187
209
128
227
169
180
212
232
189
208
237
235
210
182
199
230
260
236
234
225
268
192
188
212
133
193
209
236
215
172
208
190
238
212
225
201
284
198
176
203
198
246
229
153
133
211
222
194
258
197
244
140
184
166
179
194
174
174
140
274
135
172
160
183
253
195
147
243
218
201
186
182
159
182
200
242
212
219
171
200
223
171
194
230
135
182
246
190
252
179
165
167
206
201
153
185
233
205
201
236
152
166
162
174
154
175
228
250
206
158
145
173
272
208
261
154
204
235
170
248
185
241
237
152
243
216
262
231
190
158
255
158
142
178
250
129
115
151
211
197
225
191
171
184
165
247
229
200
207
191
187
169
262
195
178
192
251
217
216
168
254
181
175
231
235
186
241
227
203
208
180
135
201
167
183
241
203
244
188
100
210
183
180
178
200
242
192
142
237
231
164
205
229
164
190
208
221
208
164
221
191
204
204
157
214
153
101
114
172
218
218
129
148
155
222
141
213
237
254
164
226
174
212
151
176
219
215
240
207
221
181
140
244
192
196
197
175
196
213
233
207
213
200
281
216
153
158
253
257
236
244
195
271
237
200
245
223
159
157
180
191
196
206
197
193
192
209
259
177
186
192
190
196
188
180
269
252
209
217
154
193
240
204
164
218
182
211
225
232
178
158
253
218
286
226
198
146
212
234
196
242
197
191
186
189
189
168
180
167
268
200
244
174
237
229
200
172
215
230
292
179
204
205
236
212
237
214
184
159
135
183
210
179
174
226
263
227
188
172
219
225
227
132
173
162
160
195
185
266
161
217
166
197
156
194
218
214
179
247
201
175
189
213
214
252
114
173
164
218
269
173
225
212
226
162
245
140
175
215
186
246
192
230
249
184
167
222
282
216
199
163
203
201
203
235
196
170
232
152
153
192
190
152
248
180
182
197
200
234
248
163
184
223
283
195
152
239
206
210
263
246
227
160
243
256
160
176
249
226
176
190
225
189
214
152
272
196
203
186
224
206
250
194
222
228
190
153
252
235
212
206
173
181
209
221
175
220
257
197
176
202
202
229
248
128
214
188
211
235
134
199
219
168
190
100
248
192
230
114
235
210
219
208
149
211
278
218
183
226
213
278
212
245
203
155
187
231
219
210
189
252
197
201
188
253
192
221
222
238
154
199
224
240
213
222
187
201
179
170
230
189
248
250
200
186
172
99
190
200
185
202
181
185
199
246
152
188
137
213
212
201
124
251
219
199
201
266
227
200
246
190
179
212
178
170
149
155
217
243
211
216
207
205
193
163
160
202
185
187
213
225
166
177
176
149
185
166
209
232
220
170
177
206
203
223
224
214
233
199
249
171
236
238
238
214
197
203
221
208
223
204
249
197
150
173
225
178
163
247
201
262
202
158
211
237
195
234
204
205
169
193
161
197
237
191
192
148
228
210
224
217
163
225
258
230
221
205
218
238
204
236
255
192
213
200
199
201
204
134
161
207
175
224
216
242
248
241
232
278
207
220
208
169
159
171
192
204
213
227
182
169
190
188
131
194
116
222
222
208
141
245
158
191
172
202
245
225
210
271
261
172
206
144
222
194
172
209
205
152
182
255
228
148
226
205
190
253
207
220
197
236
187
209
177
172
217
201
185
213
226
186
148
160
233
247
167
166
216
224
224
219
212
223
252
261
240
190
222
162
165
128
205
130
202
213
131
211
200
190
175
250
194
208
163
203
264
197
158
234
177
115
183
239
237
227
206
234
198
152
225
188
214
192
176
143
200
197
173
270
135
221
203
259
221
163
203
178
210
214
176
188
180
199
220
255
218
147
230
213
178
188
209
227
180
208
261
253
136
180
206
252
241
164
218
234
195
188
138
226
182
134
210
216
170
188
214
149
252
198
156
150
215
186
200
187
237
180
225
233
129
199
151
165
227
213
176
160
187
231
157
156
181
214
213
202
180
196
198
180
228
182
233
195
223
169
219
196
203
204
243
160
135
188
170
194
213
225
208
237
220
221
228
239
168
175
190
175
262
171
181
248
213
220
239
243
141
191
239
200
221
173
165
266
213
221
236
259
182
203
199
177
150
262
141
216
231
200
242
228
193
256
185
242
230
139
142
136
202
166
218
273
218
166
191
227
225
183
246
234
200
165
194
182
227
222
193
201
199
158
265
185
238
243
190
184
183
186
168
165
261
215
180
230
171
233
209
265
178
134
184
211
192
146
198
166
201
151
197
244
260
213
217
178
166
240
206
214
187
135
134
261
179
254
185
222
249
236
211
177
157
258
148
179
159
264
238
213
189
203
179
171
197
264
234
148
277
286
185
167
167
187
167
236
219
223
273
241
215
226
226
237
170
197
254
228
157
199
171
212
167
207
204
294
202
243
194
161
186
231
172
203
209
186
181
187
196
234
142
181
264
202
244
192
233
234
187
163
213
207
204
179
231
202
221
124
178
227
212
120
181
225
220
123
234
259
110
181
193
196
133
225
246
230
187
207
194
193
151
184
192
195
194
148
198
151
154
264
222
223
209
207
273
198
191
181
210
223
185
181
154
231
240
151
222
227
150
183
233
246
219
196
252
219
181
188
203
206
229
171
255
144
228
168
247
189
221
229
262
219
225
230
240
208
222
162
291
241
189
186
165
180
143
188
187
230
258
190
189
159
114
197
186
226
178
185
174
231
187
164
230
190
263
292
147
197
203
211
187
206
223
156
167
209
169
140
205
214
223
190
226
185
228
203
137
179
287
188
199
129
242
183
190
164
200
198
208
212
243
193
229
201
232
225
184
231
178
187
174
207
218
173
216
238
217
240
235
203
239
192
187
193
201
217
190
137
188
160
235
195
224
177
224
152
179
203
245
155
203
177
242
248
155
187
223
220
244
234
208
211
265
142
162
161
225
185
186
190
144
185
248
243
215
137
181
188
200
176
212
136
184
161
235
192
161
252
181
175
197
164
153
192
207
200
185
206
204
262
196
175
253
246
154
188
158
177
150
192
174
165
200
183
193
140
190
175
186
141
202
176
166
164
104
222
198
145
288
192
232
211
172
225
145
224
177
230
217
206
215
165
245
236
181
167
207
159
174
233
206
238
203
141
177
145
194
144
158
181
221
203
193
218
233
194
244
251
162
236
236
250
206
199
121
180
194
245
215
222
236
160
164
192
247
202
163
250
147
193
201
143
234
152
191
161
245
208
188
214
220
198
196
120
204
233
158
208
250
200
208
177
160
153
111
154
244
252
225
190
120
186
244
136
223
230
181
120
178
246
220
277
232
194
273
147
231
158
198
193
214
219
252
224
251
211
232
146
186
230
256
193
182
192
172
192
259
250
225
226
180
162
281
171
158
189
252
155
156
163
180
124
244
163
157
201
216
234
227
182
217
161
254
187
172
218
257
198
205
205
162
219
182
228
204
180
216
159
179
211
202
163
150
218
208
162
198
196
161
172
205
200
184
181
170
272
124
232
210
179
200
197
196
170
212
243
172
238
153
175
197
251
139
213
198
176
195
127
191
172
212
190
233
226
137
230
245
168
211
200
230
259
235
185
211
204
143
241
186
239
241
210
179
160
198
168
191
203
237
191
141
223
228
181
241
209
164
190
214
163
168
228
204
220
168
176
231
194
141
183
200
218
168
153
179
177
209
205
171
174
237
170
129
223
175
257
170
250
189
225
261
208
222
186
232
229
202
202
172
231
211
176
214
120
184
268
255
214
149
215
216
154
172
238
204
231
192
211
287
244
288
236
160
209
192
213
208
191
223
183
162
123
150
237
255
185
241
212
213
180
220
170
212
178
233
228
255
181
169
178
199
197
199
274
240
202
167
175
156
246
230
165
161
258
229
198
236
266
140
249
177
196
200
190
232
261
179
139
171
179
201
189
242
197
174
194
197
214
228
194
237
170
172
191
207
226
205
186
242
222
179
251
253
216
214
118
215
178
192
197
171
191
190
124
181
227
195
232
207
217
140
189
147
163
210
267
207
169
148
182
236
189
195
195
183
212
152
226
173
173
155
229
160
198
228
207
192
163
188
178
181
182
192
174
175
231
259
229
198
216
209
239
255
185
251
155
268
168
273
155
212
236
208
190
221
175
207
247
206
168
163
215
209
210
223
180
228
203
205
232
219
173
171
180
229
211
220
149
151
250
212
220
189
174
201
223
186
174
199
146
149
282
202
287
174
139
226
205
221
246
159
212
163
246
233
214
195
151
184
225
223
231
229
188
209
173
189
195
232
196
239
184
157
247
176
187
196
233
234
246
179
165
201
173
203
142
190
161
224
254
266
169
242
174
189
189
248
277
190
244
204
191
140
253
213
148
258
165
251
184
193
205
157
199
203
234
166
182
170
190
254
190
228
174
216
199
174
124
178
233
155
172
85
189
137
242
194
177
276
244
163
154
202
264
211
183
288
182
195
207
198
139
180
212
186
218
226
133
196
213
146
230
123
115
148
185
152
194
169
192
180
179
226
183
205
104
177
267
214
225
187
192
162
221
215
220
224
207
127
226
153
131
193
204
185
234
179
233
205
177
176
255
191
182
185
188
233
196
198
168
169
134
198
174
209
219
221
248
204
234
193
175
161
193
187
195
192
206
164
271
235
232
174
189
208
216
135
179
187
233
266
124
194
214
196
167
212
189
194
211
134
168
254
163
288
254
207
271
189
193
201
280
158
221
247
194
206
227
204
171
244
181
179
232
202
255
186
172
220
248
240
199
140
238
214
153
167
208
177
190
228
234
202
161
118
223
266
145
196
248
234
211
203
224
191
201
243
161
243
159
235
199
203
183
233
180
255
231
201
176
175
203
222
224
231
184
213
186
195
267
165
234
199
203
228
241
186
236
193
198
151
190
211
189
141
149
222
184
205
195
120
161
175
223
194
206
225
185
221
233
232
207
265
246
185
240
185
186
167
181
214
176
217
211
223
248
205
209
212
239
144
210
224
263
139
184
185
203
231
191
216
190
213
160
224
247
263
264
212
229
219
211
212
224
236
181
210
205
160
250
211
166
221
175
166
221
170
249
216
199
164
167
127
215
183
209
187
176
196
182
165
229
158
164
146
202
157
192
214
210
148
172
232
182
203
147
170
216
166
156
153
186
249
160
197
157
182
214
211
196
187
205
222
124
188
224
234
186
263
145
194
191
259
243
167
167
188
196
152
225
162
186
186
234
221
228
178
221
226
261
226
215
151
226
156
125
238
191
182
188
189
254
187
208
222
188
179
217
248
172
249
173
238
239
236
228
187
206
248
218
227
152
199
159
190
159
221
228
168
235
186
107
163
215
231
196
203
194
162
244
234
256
235
169
192
179
196
169
177
183
176
236
166
183
203
198
206
185
190
224
248
209
190
211
214
195
265
223
208
241
138
196
174
166
226
190
273
261
222
174
193
205
222
206
253
198
238
205
210
198
252
263
175
227
204
183
264
248
209
192
164
230
188
165
210
213
212
141
131
166
228
202
155
210
210
197
135
220
193
207
205
167
178
210
191
226
223
242
186
205
206
206
206
186
198
168
182
188
277
140
221
199
238
212
157
177
190
123
241
113
269
179
173
208
228
144
140
240
139
119
213
232
238
198
227
168
184
150
196
162
250
191
208
172
150
259
258
188
230
252
229
161
207
206
252
203
182
211
254
241
158
227
240
168
201
215
241
226
171
222
138
178
169
212
214
154
192
173
161
153
201
202
220
161
198
185
195
239
236
179
180
201
190
202
190
191
229
253
233
224
190
257
206
183
238
154
228
190
162
202
165
157
200
215
142
199
232
126
196
241
178
186
210
205
224
231
159
169
218
211
154
131
162
175
189
207
194
220
197
188
228
205
209
117
128
168
165
202
230
139
207
211
239
253
210
205
183
190
191
200
215
186
150
196
181
220
181
186
226
243
204
193
181
265
211
173
194
237
137
205
165
255
197
226
218
224
204
149
208
213
239
248
166
179
236
162
187
225
216
160
203
168
209
223
235
270
243
149
202
169
127
179
128
245
257
257
168
233
189
229
241
177
207
207
163
159
185
111
211
187
204
184
146
206
182
179
198
205
209
185
194
236
225
183
227
187
157
186
191
183
191
166
226
164
179
240
205
168
161
222
155
209
231
193
198
209
197
205
136
175
239
221
204
209
165
182
242
194
237
162
207
117
176
216
173
225
234
184
217
223
160
231
209
210
156
225
210
166
168
233
182
225
203
141
250
196
247
232
157
202
175
124
179
221
162
216
144
170
243
214
167
176
207
172
247
207
207
164
245
252
210
217
226
231
180
171
229
186
225
161
156
239
201
152
202
173
249
212
187
186
213
274
190
192
195
214
234
135
203
203
183
207
198
211
145
198
180
213
238
145
199
217
194
278
201
177
162
151
166
171
119
201
214
158
162
192
209
224
172
204
189
248
207
169
179
207
186
160
166
196
220
179
209
200
175
182
178
209
233
164
217
227
218
171
179
249
224
187
246
241
196
234
241
222
175
225
199
180
179
160
280
232
245
219
175
211
217
174
150
156
179
221
175
238
158
269
245
190
157
144
137
192
153
206
204
204
246
235
238
133
191
228
148
239
196
112
181
140
179
181
171
255
146
203
240
200
208
164
185
159
201
239
139
270
171
207
162
192
219
209
194
218
213
185
174
215
243
130
203
146
260
150
187
230
220
267
210
120
251
185
221
205
219
207
205
209
138
179
149
187
209
245
214
224
201
217
178
203
184
119
192
229
171
147
189
235
195
201
171
174
212
179
227
214
144
262
237
195
192
211
175
214
240
279
224
160
252
159
200
212
235
182
195
227
201
151
139
104
238
185
214
190
214
210
191
231
170
189
237
176
220
207
137
187
166
203
206
213
151
237
185
247
164
219
229
211
166
224
194
220
204
90
171
229
221
175
222
174
281
187
241
235
195
205
244
147
152
192
206
210
162
253
202
225
221
264
189
178
170
209
189
250
173
204
172
178
247
129
240
190
190
203
179
188
126
210
166
202
150
188
205
154
166
170
237
159
225
188
188
266
175
221
159
231
168
240
184
211
184
240
235
223
259
153
135
201
171
251
259
210
227
234
235
202
214
173
208
202
224
212
247
228
229
253
150
227
219
178
196
201
150
219
230
179
204
243
178
202
130
241
185
253
173
185
160
199
200
166
230
177
199
199
179
228
202
168
157
179
218
209
148
171
190
213
246
249
210
210
156
237
156
157
215
148
172
215
128
283
180
211
245
232
230
225
151
182
208
172
232
153
240
176
193
239
193
191
250
198
184
253
183
126
197
231
206
203
196
225
206
235
267
197
210
230
210
138
152
193
231
215
193
206
189
185
227
221
165
205
173
240
183
175
220
225
196
252
237
211
237
209
197
257
167
139
159
181
245
229
230
242
286
177
211
236
207
201
227
212
179
226
194
189
229
213
222
192
292
209
176
231
164
188
204
237
261
149
229
225
230
222
179
195
211
220
221
184
211
175
240
156
222
196
231
191
209
132
113
143
231
215
196
201
204
195
226
198
216
224
219
158
188
110
156
180
223
228
164
180
181
198
195
198
163
180
214
252
245
105
198
225
209
212
188
250
226
152
223
186
179
199
174
135
235
194
214
229
200
199
205
190
232
219
197
233
132
211
195
220
187
167
154
202
174
197
258
231
246
184
176
194
209
202
154
181
166
170
227
233
232
215
164
210
154
214
252
234
245
192
203
246
227
214
218
213
201
231
179
162
130
242
184
131
123
163
144
182
167
241
212
195
168
195
219
220
179
199
198
176
168
203
272
180
188
208
193
218
185
196
195
158
215
218
261
180
206
203
224
167
174
231
208
187
228
215
197
162
253
214
233
131
173
180
217
201
227
253
236
216
251
172
229
184
202
218
191
271
236
203
160
197
178
236
172
175
222
173
232
169
186
169
226
246
171
192
182
213
134
229
238
220
265
202
179
208
170
217
164
210
189
253
232
266
211
177
215
159
224
181
221
248
250
184
123
246
167
165
235
181
192
198
181
201
221
182
161
217
217
237
191
252
206
255
222
192
219
174
234
201
217
234
205
227
142
181
268
216
187
202
199
200
196
218
196
240
172
184
219
188
240
181
215
160
158
201
178
191
168
160
199
263
165
246
151
222
214
178
180
150
192
187
210
174
234
222
233
173
232
238
233
188
187
194
227
160
242
253
208
213
232
167
229
214
158
175
222
186
153
209
250
181
163
201
162
168
223
238
191
235
211
234
174
223
163
149
239
206
217
156
177
184
173
213
224
202
229
222
110
162
193
173
230
137
218
196
185
135
226
218
249
175
245
141
189
201
235
180
240
214
147
181
196
210
184
162
206
170
235
254
236
165
194
163
220
225
150
208
196
236
195
169
207
233
201
176
213
163
224
261
171
143
190
199
153
201
173
196
207
164
200
193
213
190
177
134
186
168
224
191
147
255
208
173
168
204
162
272
285
188
204
181
258
171
192
161
104
203
185
207
244
196
147
174
278
190
231
217
196
204
149
212
251
154
233
214
184
147
215
185
177
238
205
201
181
239
231
190
251
236
209
261
215
245
216
261
249
193
162
227
161
195
200
196
141
269
242
187
239
185
147
260
186
208
194
198
209
159
242
155
181
194
204
245
139
217
235
211
235
226
186
244
223
238
245
231
301
200
261
250
212
225
159
231
245
163
176
235
180
244
242
261
174
225
279
212
211
143
224
222
200
239
225
193
199
185
207
224
212
196
225
210
191
219
112
215
184
236
176
214
235
162
141
232
223
206
217
224
204
237
183
224
208
156
151
145
131
193
195
162
265
193
211
266
143
188
219
235
147
217
261
206
169
136
192
159
186
234
216
185
208
182
170
188
202
233
166
169
149
203
166
238
195
170
191
199
226
192
210
158
174
239
140
179
143
176
213
194
226
251
187
165
177
206
228
201
247
206
170
169
220
241
150
229
242
203
229
205
176
197
162
217
183
181
182
155
211
195
214
143
154
229
188
184
216
237
162
160
141
174
210
150
243
218
166
183
204
211
250
143
263
239
217
188
194
233
239
149
214
262
210
200
219
165
167
230
196
195
185
169
216
171
229
210
229
207
202
186
186
280
194
166
173
216
187
237
216
164
226
170
186
235
192
188
237
220
216
254
204
205
253
199
210
260
197
249
238
194
224
158
171
215
219
172
214
153
208
185
233
260
235
157
231
217
239
205
198
230
209
289
204
201
207
156
237
209
246
188
199
213
234
202
186
206
212
251
247
205
226
140
235
247
233
203
196
204
146
206
258
230
184
252
221
254
226
173
176
255
216
136
222
224
173
167
173
160
244
173
226
216
231
165
177
157
273
228
205
212
204
166
168
208
219
178
198
247
203
211
230
248
173
273
164
232
143
220
196
177
243
223
170
232
200
234
218
213
240
199
196
204
177
158
232
194
254
184
174
271
200
241
185
229
215
240
189
165
189
204
276
212
229
220
174
179
231
182
233
178
212
221
144
212
256
222
233
230
183
180
171
218
218
173
174
183
233
230
187
195
147
210
254
195
202
153
226
166
190
148
208
192
195
198
176
194
248
188
192
183
164
216
191
189
250
160
246
175
237
213
194
128
224
209
188
217
201
242
236
188
218
218
210
159
182
132
157
173
178
192
211
199
232
186
165
182
249
281
236
198
177
182
177
155
182
223
220
162
139
184
231
233
227
177
225
182
221
204
153
215
203
183
226
195
176
219
212
249
221
242
209
194
221
140
170
238
131
181
180
161
158
156
243
206
181
275
211
195
179
232
212
169
175
206
228
179
260
138
197
262
206
186
143
219
183
196
201
137
206
240
257
146
210
223
236
218
208
162
190
222
110
194
148
208
188
189
180
197
234
153
230
173
210
223
141
218
236
197
179
133
185
122
180
221
205
210
214
183
185
156
179
226
186
290
208
196
210
186
219
244
237
238
224
221
166
263
205
250
201
189
215
232
198
162
179
230
199
257
190
189
215
231
243
266
198
173
199
248
137
190
233
210
227
239
179
196
139
167
203
239
186
154
169
207
163
191
178
178
261
180
251
190
188
249
207
197
187
217
208
177
231
194
260
216
213
210
258
268
191
204
233
240
216
205
179
209
169
234
268
157
204
273
243
254
175
216
147
160
201
260
119
211
141
225
155
222
216
222
190
179
192
123
131
171
238
168
225
263
185
209
160
194
209
215
109
154
172
192
232
238
200
138
182
195
185
169
169
223
204
233
217
149
126
209
210
155
240
188
246
196
208
203
207
235
151
232
176
240
188
157
216
150
219
248
199
215
187
246
190
228
244
222
175
183
253
133
191
123
218
175
221
184
239
224
204
190
194
234
289
193
133
223
212
228
165
193
209
177
226
235
212
191
212
158
178
190
193
224
224
199
249
201
226
244
201
170
213
188
212
216
208
208
234
181
240
173
244
224
192
203
232
215
246
218
183
217
157
182
179
155
158
219
197
258
184
281
197
177
231
246
180
280
169
211
218
177
202
244
180
211
213
180
204
167
239
190
194
224
205
193
200
231
182
197
227
251
167
172
213
156
203
219
150
215
219
175
139
141
238
179
195
203
253
276
254
171
157
180
147
213
230
243
231
218
206
238
240
205
197
231
184
193
233
257
151
184
192
200
209
202
184
196
173
250
232
186
179
223
217
178
168
187
193
228
222
233
196
191
251
199
226
206
218
212
217
221
268
144
198
143
204
192
234
201
207
187
251
186
179
188
216
144
207
245
158
173
207
154
203
170
188
147
177
228
171
132
192
225
215
162
194
186
185
161
218
185
177
205
242
101
163
178
204
244
186
152
219
140
207
229
175
257
230
197
162
185
92
188
147
237
228
192
229
223
242
206
245
167
236
152
200
251
255
191
165
203
228
248
223
200
189
219
160
216
198
246
146
175
172
185
199
200
173
77
270
186
248
178
236
171
184
240
204
196
154
184
214
210
190
262
192
213
188
222
261
236
249
199
234
248
209
193
253
225
174
155
224
140
206
242
183
168
254
134
241
234
183
180
174
213
224
197
254
153
208
195
200
215
226
200
185
212
205
228
195
210
187
165
239
240
236
213
214
199
175
207
231
199
170
162
198
277
250
148
225
179
207
181
223
160
134
217
215
193
206
213
201
214
160
225
196
168
198
202
231
204
142
134
175
142
225
198
180
244
236
197
220
203
278
221
229
177
234
230
206
260
198
199
210
218
282
162
200
196
201
197
214
215
198
204
144
232
209
198
177
132
217
224
138
198
191
168
213
201
221
241
281
228
248
221
244
221
230
201
188
227
256
216
241
186
170
184
229
214
240
219
213
194
206
190
178
176
221
251
130
217
156
268
180
182
203
244
191
167
145
213
239
175
177
191
179
231
187
186
194
207
220
225
275
249
132
256
224
202
192
207
200
247
173
236
262
257
248
211
259
211
256
117
232
240
173
223
144
213
242
221
266
165
211
187
233
174
175
182
179
195
211
199
185
220
184
246
170
185
231
213
244
177
188
188
250
166
180
123
167
219
235
215
210
200
207
265
243
258
214
141
232
224
177
218
245
183
223
223
233
227
216
170
185
204
214
107
173
181
244
172
145
178
246
239
273
184
246
248
205
207
250
199
200
245
212
204
154
175
135
244
230
175
239
219
188
203
209
212
149
195
189
175
167
191
211
162
211
197
176
227
218
178
165
229
244
172
245
181
157
182
186
230
221
253
187
240
173
246
190
169
173
161
167
180
258
187
205
255
247
231
182
179
192
255
199
163
113
222
180
211
192
187
201
194
212
236
220
237
220
197
205
175
223
190
245
206
160
172
251
229
196
189
205
219
198
175
218
112
192
228
150
197
198
220
238
150
186
229
133
148
253
214
179
250
116
183
210
230
252
243
158
193
260
214
185
177
229
187
195
199
182
280
291
205
213
239
229
200
225
217
252
208
196
201
174
171
169
201
195
170
144
211
228
198
171
194
224
176
194
263
204
202
169
178
159
183
204
210
172
203
259
180
243
147
203
226
165
183
156
215
233
148
225
230
218
128
242
223
211
146
242
184
216
210
233
215
229
205
195
203
189
187
209
203
179
205
225
189
204
267
212
154
216
223
181
170
128
96
192
216
193
188
159
217
184
183
214
174
198
206
210
210
174
218
248
225
190
177
236
137
177
223
229
156
188
186
200
225
206
192
224
170
207
237
158
220
223
223
230
199
158
184
211
205
159
179
244
168
217
175
149
134
221
223
229
232
255
167
224
247
167
201
195
220
188
217
161
236
192
232
182
253
228
215
233
206
194
185
136
174
244
155
179
214
224
201
188
227
180
170
252
125
225
165
173
220
177
212
136
185
216
189
226
145
194
153
225
189
226
168
239
211
211
183
160
180
151
267
261
215
193
184
179
234
236
137
177
156
215
188
162
164
192
188
199
243
212
255
165
234
212
219
203
234
186
210
190
192
209
251
192
185
177
157
193
167
232
167
223
206
230
195
135
198
193
246
175
192
197
194
258
160
201
207
204
210
209
206
159
212
101
190
238
190
143
218
217
181
243
246
201
211
235
186
173
163
244
170
202
172
231
148
220
177
251
218
145
291
172
224
240
164
215
164
215
210
137
189
199
231
255
213
207
198
219
170
174
223
224
235
203
209
169
95
225
136
228
143
200
213
179
192
131
182
227
242
178
186
233
257
202
223
190
226
130
171
215
168
167
161
178
181
227
121
131
194
200
163
156
161
205
264
171
172
176
208
210
202
211
186
250
195
185
191
188
214
242
163
178
185
215
203
130
161
215
192
247
238
190
199
199
226
217
223
182
255
216
207
252
165
169
178
149
179
124
244
209
187
206
204
195
191
195
170
186
136
219
183
222
203
261
211
283
117
174
165
145
174
193
184
226
167
147
183
220
202
164
220
172
174
237
220
184
165
249
240
212
223
182
153
243
204
185
217
224
248
203
220
242
204
187
150
212
152
219
190
273
220
199
240
213
225
135
132
170
200
177
200
184
194
167
231
171
187
133
221
130
162
150
209
165
163
185
202
179
202
178
190
272
228
177
205
212
211
136
187
189
197
256
277
175
189
221
234
145
241
187
197
225
238
221
232
169
210
227
163
189
168
159
214
184
262
204
227
202
163
211
247
171
221
232
235
219
158
150
171
217
184
207
260
198
119
168
145
209
261
79
169
240
222
184
133
167
226
183
193
191
238
162
187
153
176
210
190
269
240
171
197
179
196
227
174
211
285
233
178
232
196
192
171
189
125
196
224
194
195
208
232
212
243
243
144
253
166
219
231
214
226
183
189
165
149
222
170
178
171
246
250
197
264
247
232
193
244
201
231
168
236
143
249
186
210
236
208
203
172
232
213
177
159
122
174
216
221
122
189
220
187
194
238
243
202
263
215
223
228
199
199
195
201
161
164
211
185
221
219
205
239
251
193
195
139
194
149
179
202
216
180
270
185
246
241
274
173
218
214
163
208
234
209
225
190
213
150
170
150
139
170
196
215
195
210
203
192
173
160
173
154
166
252
286
244
195
172
196
215
171
237
205
121
197
160
179
224
147
236
229
155
154
183
234
174
171
213
144
163
262
244
225
237
141
225
176
231
284
154
221
140
232
212
149
193
223
178
269
192
196
164
221
214
181
265
264
225
200
179
145
217
240
195
238
181
156
183
216
251
176
143
204
187
183
220
173
219
218
220
202
159
212
172
266
201
219
202
203
181
170
200
251
193
158
218
189
192
246
172
261
135
259
181
247
146
226
185
150
223
142
140
156
182
209
238
175
176
252
160
173
221
247
256
247
159
212
181
198
205
229
185
197
252
182
155
198
245
186
248
174
238
227
221
240
215
173
196
170
158
255
151
134
199
144
173
208
209
139
239
164
205
228
169
223
192
151
187
222
136
194
213
179
230
169
223
196
163
191
193
220
154
219
232
190
204
172
108
182
166
193
206
209
206
157
163
214
193
164
216
173
204
163
239
176
197
247
276
140
208
233
188
226
147
172
196
134
181
235
134
225
238
190
197
206
202
209
263
236
183
193
189
270
205
150
208
188
250
199
229
198
290
186
244
216
205
272
206
246
187
215
195
183
254
218
219
238
246
212
211
194
185
213
181
245
244
132
224
259
197
170
150
201
251
215
209
220
143
191
225
238
202
165
134
237
200
211
189
112
204
184
232
235
195
203
211
134
222
237
192
196
240
206
174
206
216
148
217
191
165
163
149
261
193
179
158
196
200
239
213
222
199
184
226
163
217
257
201
165
234
177
237
226
226
131
242
149
159
216
211
236
224
149
262
127
256
171
272
144
193
188
147
250
205
209
193
173
209
232
263
181
154
183
193
211
252
254
185
280
227
227
182
207
255
206
211
198
222
187
193
140
199
168
256
192
150
249
185
205
228
176
214
201
138
229
144
174
236
197
266
183
216
178
204
189
175
181
254
221
128
160
197
255
214
190
242
250
212
195
192
208
236
213
208
134
206
166
191
155
176
145
226
115
257
184
230
220
211
264
225
196
214
222
222
202
169
213
197
177
220
172
221
183
178
197
199
192
233
133
180
200
149
253
242
201
222
256
236
206
199
188
209
267
168
177
176
163
185
266
139
208
176
190
158
234
252
172
153
190
201
218
228
215
213
134
171
229
172
219
129
150
177
239
239
205
195
250
175
228
197
217
165
168
261
193
221
137
232
235
194
251
230
151
237
232
175
217
195
162
165
201
238
239
256
195
209
125
156
239
166
253
207
220
205
171
204
195
202
136
200
213
180
185
132
191
250
190
191
215
180
166
169
188
182
165
218
212
267
198
242
172
203
198
246
235
184
152
228
175
254
226
188
217
160
175
183
178
243
208
199
186
209
286
119
188
201
186
150
209
209
197
166
232
237
120
266
239
210
189
151
202
211
220
203
239
188
201
218
251
211
205
202
223
210
174
169
189
210
212
203
232
167
154
201
199
211
211
186
155
138
137
215
216
161
199
185
198
217
161
193
190
226
233
224
220
169
205
194
175
193
200
201
234
154
222
184
205
193
265
182
232
265
247
225
225
265
197
179
187
115
211
213
172
195
174
200
197
261
231
168
201
164
227
205
223
214
175
179
184
166
151
240
179
188
197
212
196
179
134
189
201
222
235
149
271
175
241
244
222
204
194
166
185
210
231
188
219
190
206
193
214
203
189
162
259
215
181
216
188
180
152
216
206
170
251
209
214
231
182
151
229
198
244
218
274
161
210
165
228
203
116
191
117
253
205
224
201
211
165
230
166
231
173
215
160
193
177
206
153
149
188
237
218
153
128
220
238
149
240
167
203
171
233
202
139
235
152
226
184
157
192
198
233
155
211
261
232
194
205
185
153
179
251
261
155
213
204
202
155
232
171
215
163
259
221
175
205
167
147
189
196
252
201
190
250
137
161
205
194
183
130
220
260
227
239
237
154
164
171
202
255
241
165
226
212
297
216
129
217
196
195
232
178
142
231
222
217
297
268
176
212
131
243
192
168
216
206
230
200
206
224
205
191
171
159
187
241
160
210
215
183
228
212
273
249
209
165
184
182
153
197
181
256
196
154
215
167
207
240
220
134
197
166
224
174
187
236
192
157
143
201
191
225
239
162
209
202
180
178
166
203
239
209
247
218
258
151
154
156
237
228
180
205
233
197
184
183
250
255
251
249
182
147
183
207
211
150
169
249
217
194
261
215
239
210
221
164
173
209
170
213
235
239
260
218
209
232
133
260
210
200
184
192
182
214
173
204
179
198
167
274
238
193
167
114
248
217
150
157
232
191
235
153
196
185
219
177
134
248
199
202
199
203
169
144
193
193
207
170
198
175
215
191
172
254
172
201
160
191
176
201
239
204
219
261
195
214
217
235
232
203
181
177
209
190
170
118
230
180
196
202
153
147
155
207
157
177
214
230
230
231
190
164
210
220
165
188
198
148
156
262
202
197
149
206
129
205
167
143
183
133
198
199
193
157
157
213
245
194
229
292
181
206
210
204
213
209
246
132
248
237
248
199
136
244
262
223
191
208
176
224
204
174
226
201
273
224
161
177
260
187
193
216
151
164
205
212
220
206
210
229
232
198
188
214
197
215
223
189
260
187
264
160
123
198
222
174
188
124
243
250
229
219
165
212
215
173
164
269
217
185
193
300
254
213
229
131
253
251
181
186
165
202
170
199
195
203
237
185
207
184
221
131
178
204
196
226
178
209
147
162
245
246
193
162
206
212
198
222
242
178
173
257
172
183
204
230
200
202
137
169
231
177
205
178
184
131
169
256
207
231
182
225
152
212
237
134
218
249
232
262
227
191
237
146
242
188
176
219
252
215
169
237
199
142
224
186
171
249
228
206
146
150
197
232
199
195
185
167
181
238
247
239
267
187
241
177
195
201
162
210
214
204
188
245
212
218
234
208
184
209
179
231
217
232
175
198
252
195
181
249
243
209
199
209
200
222
242
187
230
223
215
129
171
227
171
146
134
226
181
208
186
164
202
227
161
171
170
237
236
185
162
275
215
246
155
234
223
222
292
223
155
120
224
235
210
215
246
235
204
187
248
203
164
187
155
169
158
203
234
193
191
171
206
212
228
235
155
191
187
175
129
199
182
179
266
151
233
204
162
188
242
129
234
208
176
262
190
185
228
249
169
168
200
214
240
242
196
208
247
177
210
210
231
217
239
195
203
171
211
215
171
233
224
209
235
143
185
181
223
154
230
171
222
187
172
191
207
218
239
210
229
202
189
202
176
203
187
167
212
196
169
133
193
194
190
229
221
154
239
198
148
246
225
155
246
186
142
206
183
217
242
198
219
196
169
133
248
167
212
192
153
189
225
197
199
273
157
176
216
159
217
246
203
213
229
248
255
147
238
197
145
183
203
240
228
188
144
174
207
169
157
254
207
187
222
262
168
230
142
177
223
190
163
218
187
155
148
236
243
177
199
205
220
207
205
160
186
235
213
239
286
168
229
199
171
224
202
154
238
235
167
159
248
192
185
220
199
225
212
225
229
203
199
201
210
261
255
209
216
230
224
215
227
188
222
220
256
199
263
159
235
185
198
143
182
183
227
141
142
203
176
157
157
252
179
233
218
224
224
188
237
229
234
253
188
184
149
243
158
217
207
221
178
167
205
281
224
199
186
181
205
224
147
240
218
185
184
205
189
187
227
198
155
197
219
230
195
219
124
151
175
176
217
163
181
202
228
159
201
215
167
251
243
217
163
196
223
224
207
168
181
228
143
193
193
240
215
243
148
232
231
194
206
184
204
193
174
189
218
220
196
205
178
176
150
249
254
281
223
256
222
222
161
188
195
176
291
189
205
194
244
196
155
214
204
101
200
220
152
201
197
226
228
223
202
199
216
155
219
199
192
235
166
183
242
165
224
205
193
154
186
208
159
215
266
188
199
180
202
168
205
206
156
239
221
216
146
187
222
209
219
163
146
253
204
223
213
155
222
217
208
193
204
160
132
203
192
245
226
266
217
245
172
199
186
202
187
198
215
164
197
190
249
229
153
196
266
247
222
204
196
198
233
179
138
224
205
175
237
183
200
127
295
263
239
178
168
201
256
197
182
212
238
122
204
170
206
174
168
194
218
287
195
262
197
222
259
133
165
181
228
223
214
123
201
238
225
235
195
130
263
187
165
184
216
261
254
197
174
266
151
195
229
164
203
226
180
186
153
139
206
219
228
201
295
202
244
201
203
178
145
199
155
180
108
166
191
218
235
145
248
194
193
238
185
232
184
190
184
168
172
154
215
147
115
196
230
218
127
235
243
218
202
219
159
174
187
232
171
183
210
162
182
174
220
166
161
174
166
154
235
172
188
206
200
167
245
134
193
208
161
251
195
152
218
189
276
145
176
186
196
208
156
188
215
230
125
224
211
223
222
250
197
200
237
220
196
193
197
235
207
184
183
250
235
186
175
175
192
221
256
213
189
173
163
241
208
192
158
179
118
187
214
182
210
189
256
147
192
209
183
222
254
187
244
193
199
215
235
251
175
198
188
276
199
217
207
196
185
183
194
130
180
224
210
183
249
153
222
194
234
256
171
225
184
247
237
276
255
140
209
225
199
227
228
180
219
220
180
218
224
189
159
184
210
196
196
204
204
174
195
242
203
155
166
189
211
228
211
236
186
243
219
251
128
236
207
231
215
183
244
200
102
185
176
213
222
200
188
178
216
206
151
121
238
170
247
156
184
190
230
192
242
180
229
167
248
244
142
210
224
151
204
187
202
226
224
241
237
175
190
186
260
169
212
175
244
141
171
248
188
217
196
250
238
201
204
110
194
207
214
189
241
182
247
202
199
229
230
196
235
195
177
188
225
181
210
159
212
205
211
175
183
205
224
230
202
232
243
171
241
188
251
205
234
178
219
206
216
202
186
239
209
193
185
202
239
165
205
164
210
192
259
207
248
143
180
235
196
203
210
191
212
195
168
180
188
230
240
266
182
116
135
190
238
216
229
193
195
210
240
212
225
239
157
186
236
234
177
207
156
125
236
212
226
230
221
146
196
225
215
224
221
219
197
120
206
229
238
212
260
178
237
245
191
232
218
189
176
198
238
240
165
190
165
192
147
131
180
206
234
184
207
214
230
229
183
257
263
130
155
163
216
239
227
203
291
262
191
221
165
251
245
171
126
172
173
198
207
180
263
207
155
209
147
219
210
182
211
206
173
186
217
187
226
227
213
167
141
185
243
211
234
150
190
180
197
186
177
202
262
114
204
225
226
157
213
212
113
240
228
182
227
238
147
196
223
235
178
247
175
272
231
191
190
226
216
234
211
238
185
226
206
149
158
192
203
173
218
185
210
203
205
234
210
210
217
195
217
247
228
291
199
191
267
204
217
160
207
231
167
174
204
228
203
179
168
189
213
183
262
202
180
232
197
243
225
180
176
237
206
276
257
175
253
130
168
212
199
114
216
227
240
195
203
182
297
155
183
147
215
230
165
197
226
199
227
199
209
264
180
214
238
181
204
226
188
150
104
232
240
223
210
216
148
214
265
208
203
245
247
174
166
111
230
179
206
161
190
231
248
240
229
151
182
136
168
216
153
235
200
243
162
202
216
226
165
192
218
218
184
267
181
178
226
192
245
196
185
190
256
208
170
200
148
197
208
218
122
245
170
216
134
220
200
160
187
191
172
207
295
177
164
197
214
186
199
188
213
232
153
198
200
208
230
196
227
206
158
260
183
238
288
263
204
126
166
220
194
236
232
213
152
223
196
173
182
238
176
209
214
200
260
207
237
199
262
291
188
165
253
216
241
218
239
220
202
220
169
238
185
171
215
164
200
231
154
191
217
212
148
247
176
227
189
271
186
234
209
194
156
195
204
200
156
222
238
221
142
212
175
179
159
223
202
240
175
171
229
175
195
181
243
236
205
250
171
166
209
215
235
224
242
188
213
195
180
168
162
215
196
201
218
222
189
179
147
258
203
224
178
186
230
198
119
180
243
240
231
167
172
184
179
194
239
257
243
171
233
191
221
207
237
176
183
213
209
126
149
210
152
130
199
179
192
250
298
189
229
219
204
184
125
242
204
195
164
226
194
219
241
197
217
252
174
237
201
213
178
194
221
193
224
193
142
206
224
174
148
211
147
182
207
200
144
149
194
257
172
254
142
187
184
196
200
221
126
186
145
220
160
202
102
269
124
172
262
209
232
203
227
240
204
181
262
139
210
164
232
221
187
220
190
168
258
239
179
200
196
247
157
182
156
153
217
187
224
207
184
192
220
125
208
216
222
239
228
230
268
185
195
242
176
220
217
197
208
163
231
152
210
249
189
217
192
202
196
203
176
217
215
224
161
218
188
231
218
222
145
220
155
215
249
140
205
199
252
170
175
209
191
168
143
209
188
201
139
200
183
199
236
250
172
199
181
178
171
241
185
233
211
214
211
224
209
132
174
194
257
237
201
237
141
179
167
183
191
185
176
185
203
252
196
209
153
216
236
150
258
209
195
187
217
169
188
220
170
201
145
219
239
204
172
218
108
228
204
163
239
230
200
181
198
235
199
152
241
174
253
139
204
238
161
217
151
196
174
226
223
224
189
226
127
207
229
160
192
225
207
217
217
223
211
237
211
132
198
282
241
206
203
197
158
213
232
207
199
178
213
179
195
181
182
255
171
172
191
212
203
206
203
209
201
163
226
199
182
251
198
158
154
241
230
160
249
165
192
236
229
183
158
142
122
115
172
164
179
221
191
216
228
234
231
255
196
230
216
203
160
226
234
174
251
177
138
143
261
177
180
205
181
217
217
167
274
251
197
134
224
202
219
134
229
153
193
218
187
237
196
229
212
254
215
234
204
154
175
204
162
125
210
211
202
164
275
207
175
204
266
160
228
180
183
275
207
219
227
217
175
263
240
172
240
234
193
227
222
196
173
215
225
229
246
213
222
229
253
164
160
202
191
196
206
245
212
177
190
234
193
194
224
206
189
213
136
204
172
182
194
216
170
140
192
206
254
205
211
184
194
151
145
196
231
179
152
242
170
241
239
131
271
212
195
246
157
249
209
227
193
220
188
208
194
159
229
226
222
197
175
198
214
215
174
233
246
150
232
238
202
198
179
218
221
176
202
242
220
166
186
151
184
200
165
170
130
231
194
148
231
185
223
271
163
195
220
165
176
187
174
269
210
213
118
232
176
208
193
172
216
149
209
175
235
225
155
196
240
225
187
190
208
200
182
200
244
180
221
197
213
182
198
227
233
215
182
224
207
175
239
228
227
222
184
156
163
154
214
223
186
232
228
273
140
167
244
247
193
244
202
217
216
195
168
215
207
208
227
207
180
188
195
266
154
232
220
237
157
167
190
233
233
244
215
147
160
229
237
246
174
212
156
150
181
207
179
211
223
218
191
189
212
180
190
219
175
244
201
177
188
219
184
155
232
176
184
200
167
223
184
190
234
124
237
184
214
243
192
218
206
260
171
206
155
196
239
257
257
154
237
240
218
242
190
193
213
159
142
205
205
237
174
179
246
196
225
271
163
167
180
187
190
190
182
168
231
211
220
192
175
175
177
178
142
208
234
160
222
174
176
158
240
244
118
186
213
184
234
238
215
206
195
235
194
202
210
262
228
224
194
218
214
224
217
137
195
169
240
230
187
210
187
144
206
153
202
215
215
204
167
239
262
200
168
186
213
219
245
215
167
137
199
229
196
167
142
246
118
266
174
196
274
199
229
221
248
178
194
185
192
196
193
232
247
219
144
204
199
213
177
186
210
262
194
185
197
229
227
174
219
178
199
181
157
244
250
148
189
233
175
199
185
184
117
248
173
235
231
258
207
202
254
254
145
215
194
218
159
190
220
254
142
193
219
272
219
214
153
182
196
218
230
216
179
143
170
191
197
159
246
198
160
195
132
174
183
227
194
260
191
194
236
227
228
215
163
193
150
208
250
222
230
240
243
192
188
214
245
176
268
184
192
245
193
208
190
170
218
193
179
240
234
136
234
203
192
147
186
157
192
239
200
267
227
137
136
169
187
199
177
200
184
160
179
188
187
264
176
217
233
195
216
207
223
265
191
154
212
253
242
199
230
197
200
207
214
178
210
168
182
237
188
158
198
271
207
193
168
232
217
147
236
227
188
185
210
215
177
213
261
211
203
198
273
188
254
222
226
162
276
151
213
230
203
217
188
210
191
204
208
208
204
205
212
221
211
190
145
237
171
184
160
187
267
224
185
224
163
208
186
189
238
219
192
201
220
173
217
209
220
213
252
240
150
264
212
100
232
223
172
227
202
161
222
218
177
135
218
230
173
237
237
200
193
199
238
195
243
203
200
194
229
237
166
170
172
224
198
178
212
206
239
177
160
212
196
205
200
206
217
125
216
179
238
249
247
178
219
202
210
182
141
152
213
171
212
129
183
231
168
228
195
231
177
179
177
166
208
143
214
126
215
209
163
199
140
205
203
167
167
159
177
197
219
247
234
230
180
206
201
188
210
185
222
186
235
193
146
178
209
180
156
193
183
148
190
247
205
187
190
156
145
222
212
129
141
172
232
148
257
231
157
156
191
188
222
139
125
270
147
194
163
202
260
178
269
210
219
215
215
209
215
220
214
200
165
155
208
166
202
220
220
212
208
200
222
193
186
206
212
189
198
203
170
204
224
250
252
224
241
246
155
190
92
212
192
130
139
223
184
249
205
235
220
173
225
242
250
194
216
126
179
269
191
240
280
183
223
244
194
226
232
186
178
161
240
125
183
176
241
175
221
239
130
255
192
193
219
194
178
164
202
178
114
187
198
245
180
224
241
181
222
229
114
259
247
206
202
158
196
247
231
212
232
233
165
217
186
258
244
193
190
236
211
207
179
172
203
244
240
210
182
151
153
188
197
210
168
202
227
210
139
249
233
201
249
198
219
222
237
242
132
194
219
242
180
205
193
241
154
171
122
110
238
226
213
191
226
183
175
208
172
186
178
200
178
230
189
201
192
185
161
181
183
187
162
185
224
176
207
209
255
255
203
231
249
188
166
159
166
150
183
95
201
191
192
175
224
274
181
203
194
196
179
162
153
212
176
205
216
139
193
153
171
197
207
165
189
236
230
214
252
216
244
238
239
200
195
207
164
240
221
190
244
177
177
202
184
219
193
284
184
208
208
218
134
201
253
206
213
151
229
147
218
221
216
185
176
248
183
180
258
182
229
195
214
253
141
208
164
218
208
239
201
208
145
175
200
185
207
197
213
202
215
174
246
193
203
212
198
197
131
267
189
219
165
218
164
209
207
179
179
170
201
161
258
184
211
184
148
173
142
176
221
210
183
190
263
198
229
257
209
206
160
210
200
140
245
168
126
147
250
186
181
234
159
136
229
194
231
255
164
147
220
199
262
158
194
163
174
201
243
142
219
172
177
258
174
170
239
189
221
226
181
200
242
125
177
238
161
185
153
173
205
205
205
194
154
147
149
212
192
162
219
126
222
217
253
204
151
163
195
220
203
249
197
153
240
203
200
213
238
188
179
205
172
186
234
205
156
165
182
220
213
141
182
255
218
192
177
215
162
189
249
181
203
209
123
175
201
227
245
191
227
219
173
211
234
154
140
211
180
237
277
187
198
245
273
133
216
204
213
228
226
195
250
183
259
151
145
164
180
176
187
184
210
192
204
165
196
191
221
142
193
200
148
223
206
200
191
225
250
235
214
174
224
238
190
152
155
188
176
186
212
199
216
206
180
183
230
268
212
236
181
181
200
214
170
144
228
245
202
208
171
253
227
274
196
205
194
171
168
221
216
218
184
197
210
174
88
220
201
205
167
236
230
171
266
203
192
260
227
213
135
182
176
132
209
245
187
151
168
184
230
206
213
212
243
175
232
198
166
236
219
154
219
124
181
223
174
166
213
214
249
152
205
264
153
236
220
139
216
272
214
185
182
253
212
249
187
208
210
185
214
211
192
192
173
190
243
149
234
202
177
206
163
202
227
148
214
178
173
253
155
189
240
176
141
237
145
270
137
225
276
222
272
251
188
170
233
133
248
190
181
191
175
225
181
224
230
212
224
216
223
211
253
217
182
235
231
207
236
248
211
143
239
202
233
161
190
238
182
208
190
146
130
152
248
206
210
182
196
276
163
212
229
186
205
144
244
181
110
225
179
184
163
157
250
210
233
150
156
215
169
142
247
202
238
199
182
218
214
118
176
184
158
230
196
190
175
204
196
177
176
259
176
210
154
138
184
186
223
226
199
135
217
210
192
284
229
195
224
180
199
219
239
235
184
144
187
197
272
223
206
181
198
226
184
221
233
175
190
186
184
231
199
212
149
208
209
271
221
233
172
271
202
218
264
185
209
239
173
164
169
234
212
250
211
174
158
201
205
220
118
198
178
260
241
216
226
189
192
207
204
214
203
209
179
213
177
182
216
243
199
251
233
225
219
169
157
153
203
159
260
214
157
171
207
149
176
231
183
217
237
223
164
185
227
189
174
217
210
211
207
150
264
167
133
253
182
250
205
223
196
223
222
158
199
239
237
169
227
206
181
223
209
153
200
224
151
175
215
196
248
211
263
269
166
181
208
262
225
210
191
198
166
236
200
193
209
179
264
196
244
196
206
206
145
155
172
190
146
187
194
144
203
191
155
170
239
210
183
263
126
226
162
206
166
224
230
157
204
221
198
152
177
245
238
189
178
169
245
203
147
177
224
171
215
197
186
177
233
165
187
159
215
200
201
209
227
199
165
191
182
176
156
195
174
213
204
200
241
183
192
175
147
168
198
214
221
240
170
258
215
211
201
204
187
266
115
147
189
194
186
202
216
189
205
192
166
151
209
227
195
159
259
218
232
256
244
207
190
183
188
236
235
205
215
231
193
158
210
248
201
199
177
213
269
242
206
205
191
231
253
121
160
256
203
166
173
208
254
173
166
185
203
107
252
223
215
153
208
224
202
184
237
207
184
166
206
213
176
163
143
264
208
189
233
161
188
194
196
187
170
254
115
221
167
213
122
144
187
183
197
222
175
208
172
222
150
172
129
182
219
239
204
225
229
236
181
211
211
215
173
235
195
184
146
219
198
175
180
170
243
174
242
182
205
180
268
220
236
235
272
177
167
176
186
227
167
188
160
216
234
225
189
194
186
121
178
120
189
192
207
203
217
195
257
161
213
199
186
179
170
180
235
166
178
245
267
192
244
142
224
207
255
179
197
281
194
164
284
163
234
185
208
234
203
193
132
250
222
173
173
263
183
141
220
181
242
275
246
183
199
170
209
178
217
158
191
231
236
188
194
196
236
210
202
244
212
230
182
179
167
203
254
187
135
243
206
151
212
212
220
180
168
161
227
179
150
228
237
177
255
217
169
92
191
194
220
246
186
149
151
159
230
259
182
180
170
164
225
239
144
201
199
225
186
224
212
140
253
200
136
131
175
204
259
235
183
248
214
208
192
148
233
182
205
246
218
197
158
179
226
243
228
202
200
227
206
204
125
186
196
129
180
176
126
189
166
280
181
152
226
247
180
209
236
257
160
223
215
223
236
226
161
180
181
244
179
183
123
171
244
173
249
147
229
203
190
189
203
178
222
194
217
145
143
159
193
229
298
224
241
228
198
241
212
210
249
182
169
177
212
186
236
149
201
155
169
187
207
180
181
179
145
168
256
157
232
176
250
188
168
167
215
133
149
176
156
274
236
192
229
180
191
193
183
202
159
217
171
214
166
225
174
164
166
126
264
197
201
155
246
97
216
227
200
149
220
188
182
232
177
234
251
129
222
172
119
165
263
222
242
241
199
175
201
183
224
168
175
209
238
170
180
198
192
178
220
216
134
188
146
223
195
231
202
218
223
284
216
243
226
239
152
232
158
190
201
262
213
197
173
156
191
229
252
141
128
193
198
156
237
109
289
181
213
239
245
253
270
200
198
238
218
200
117
143
217
238
176
177
213
246
165
185
183
244
177
159
210
257
221
239
218
244
236
170
201
212
219
202
200
233
162
203
211
153
164
176
198
153
185
113
173
124
213
235
155
150
198
219
189
262
181
216
218
196
172
207
195
221
211
202
233
169
220
159
196
200
182
211
217
239
213
199
192
159
158
237
214
234
199
176
227
176
185
233
159
180
143
211
193
119
258
198
235
139
205
178
177
197
159
188
210
203
222
219
179
167
167
225
129
230
256
196
207
240
219
194
218
198
196
219
182
229
145
131
248
245
122
175
163
189
213
179
212
197
203
171
197
205
210
204
165
188
217
166
213
209
208
203
213
184
209
148
97
237
158
165
168
191
208
233
246
223
184
189
135
193
221
250
253
189
155
181
221
149
255
216
220
213
200
100
169
172
178
177
180
212
140
226
222
217
224
181
240
214
241
200
171
226
222
235
210
201
197
246
204
140
235
222
186
206
202
263
169
196
230
156
192
152
245
246
218
163
147
150
242
213
242
220
244
165
206
165
202
192
203
187
162
193
206
179
187
214
225
213
194
199
236
218
237
170
243
249
211
209
174
199
195
240
141
211
201
228
218
205
150
276
185
187
220
209
202
208
217
166
242
182
227
222
228
170
241
182
182
231
138
221
262
207
204
200
252
149
240
223
213
182
170
219
191
187
208
215
165
229
219
209
265
197
229
158
231
199
233
203
147
219
212
132
207
220
200
156
171
199
193
143
237
192
172
172
177
209
216
208
175
199
256
166
246
222
236
211
176
207
197
170
185
193
214
169
161
247
238
157
221
153
252
198
179
163
175
251
237
169
204
212
238
247
96
212
176
140
231
227
250
211
264
216
227
190
220
179
214
99
150
208
221
200
214
144
199
215
180
221
235
218
139
249
263
260
190
175
162
232
144
187
216
230
240
136
207
157
208
165
151
131
203
159
211
258
210
195
165
213
139
229
222
165
195
196
241
229
175
210
158
147
177
287
158
194
194
219
198
171
175
211
217
217
213
168
189
266
190
193
232
186
207
223
233
204
217
190
233
164
209
255
233
238
189
167
165
219
260
184
247
143
242
190
222
195
121
182
199
223
196
181
226
216
220
163
185
171
205
207
117
250
197
162
218
173
243
176
222
195
225
228
125
210
135
243
267
209
192
224
233
184
198
189
172
260
230
236
183
149
218
198
165
186
156
242
140
169
189
182
239
229
223
136
197
147
236
271
152
137
219
181
231
218
190
196
210
195
256
222
277
282
235
207
181
180
241
237
212
195
222
191
134
189
254
226
215
258
200
227
165
213
220
229
188
167
208
212
155
237
164
137
165
212
189
162
216
187
217
188
188
214
207
167
128
239
292
225
208
170
178
192
219
228
184
190
160
148
138
195
177
219
132
208
119
118
204
203
185
196
270
216
211
203
181
195
201
171
225
241
248
189
217
191
254
183
182
166
221
243
232
183
209
256
205
206
213
186
241
175
220
223
185
258
222
194
216
237
162
213
236
121
200
229
193
189
157
178
215
185
199
241
258
200
208
238
191
186
210
163
241
169
171
228
216
219
256
222
175
201
163
202
219
239
243
202
197
187
176
193
179
217
176
206
180
236
219
190
234
258
183
195
230
182
164
176
193
187
186
182
221
253
196
169
157
185
237
171
208
231
209
170
214
170
191
244
255
129
180
288
258
212
190
185
152
157
251
260
232
296
216
205
159
178
164
192
202
203
215
150
160
130
154
223
247
191
225
193
188
163
217
152
189
204
200
155
226
186
202
242
277
207
210
159
223
250
144
203
234
234
151
149
126
240
217
228
186
188
193
126
218
242
240
201
227
181
142
215
267
230
192
234
184
235
195
240
175
235
216
163
236
159
209
170
209
204
143
194
181
203
216
263
150
239
195
222
184
265
144
228
197
215
208
226
151
156
246
192
218
232
199
161
180
179
208
221
226
239
220
206
204
217
195
225
225
142
222
152
216
214
238
204
185
297
230
250
235
202
261
186
174
140
188
154
135
171
197
217
198
223
230
232
253
194
254
189
179
170
256
252
237
232
220
183
218
143
216
201
239
175
211
186
224
226
184
205
221
203
221
149
187
233
162
222
233
212
172
296
229
189
152
205
184
263
222
119
220
203
240
246
202
202
218
216
245
187
211
255
181
163
235
214
152
191
202
246
141
257
192
186
155
243
179
151
131
242
185
236
228
159
233
231
238
205
244
142
201
133
156
184
194
182
227
218
165
176
278
197
196
205
234
216
177
191
230
211
247
224
153
175
194
200
181
195
197
219
223
132
226
208
245
172
174
224
231
215
175
171
247
207
162
242
205
223
165
163
142
195
249
182
257
259
184
222
207
186
146
146
182
173
183
260
195
240
171
200
166
211
142
233
211
215
240
195
235
234
161
242
229
189
204
169
176
206
154
230
305
219
169
178
197
180
177
189
168
199
180
161
237
249
227
179
228
224
157
234
152
157
196
188
197
205
232
222
176
190
213
180
193
184
236
189
193
243
162
241
186
170
227
213
207
236
166
243
214
212
147
227
253
207
227
187
201
244
160
187
161
211
149
177
248
156
182
162
240
148
152
190
209
162
161
230
234
175
251
151
160
219
224
266
215
150
191
174
216
221
199
231
249
241
180
161
231
145
215
180
181
141
235
226
180
225
249
177
177
217
190
163
138
270
183
225
160
246
265
169
226
206
157
112
150
240
181
247
163
194
199
231
166
214
214
206
184
268
187
257
186
136
228
199
125
223
230
177
202
135
218
180
237
143
160
184
220
269
226
219
176
199
244
147
236
206
223
219
241
237
176
180
211
146
204
213
136
184
254
199
159
196
222
152
225
244
180
251
198
155
167
182
189
214
110
211
178
209
178
182
220
138
131
168
163
128
231
279
226
223
186
220
180
229
247
157
245
147
199
220
256
215
176
204
238
193
239
149
187
229
141
228
163
190
254
166
177
151
200
230
199
199
199
172
182
203
163
239
164
210
226
241
167
198
196
237
250
127
157
179
143
185
191
209
143
191
211
214
237
220
212
229
145
229
172
158
225
106
278
208
135
191
215
209
201
147
180
222
197
228
248
310
168
163
184
142
230
209
180
214
220
228
176
187
229
199
163
216
156
122
217
212
173
196
185
173
265
229
200
257
258
188
275
202
190
194
227
184
194
164
240
148
230
201
218
245
212
210
206
155
205
220
191
215
164
243
113
202
186
182
120
166
204
153
238
174
197
245
214
166
229
220
198
261
197
243
173
180
170
159
196
202
135
240
245
165
184
183
214
209
232
221
131
177
202
187
152
197
146
237
209
180
210
199
165
221
206
240
188
165
252
211
170
160
180
174
222
180
258
189
191
184
210
224
173
234
205
218
127
158
241
189
192
202
142
181
260
143
182
222
149
212
172
165
239
207
204
245
114
188
235
226
226
218
237
271
265
199
190
206
244
115
213
235
179
198
241
144
167
210
251
215
209
233
216
195
263
241
231
194
219
173
217
224
212
179
186
112
193
188
146
154
208
179
194
212
221
147
246
229
243
203
238
149
239
154
240
197
205
165
196
236
208
232
248
219
284
205
217
134
222
212
228
238
216
214
192
145
210
212
127
176
230
154
202
218
191
193
188
110
197
225
226
228
212
223
212
195
198
252
185
161
190
240
213
197
218
197
202
204
217
183
196
226
224
143
183
170
217
210
204
178
187
207
194
198
202
172
233
231
198
221
217
223
239
189
128
251
227
236
208
200
269
157
265
215
214
217
157
148
182
229
189
228
177
226
171
274
168
195
183
238
139
147
200
199
190
188
241
178
216
232
185
211
278
151
264
178
254
187
122
204
157
166
167
172
230
238
214
161
198
221
139
198
244
173
175
205
277
141
232
224
225
192
185
194
206
217
183
195
196
206
146
173
216
255
204
244
158
136
240
198
227
184
211
230
251
235
175
199
253
215
169
225
233
219
171
220
206
157
240
168
288
191
200
211
268
152
191
229
227
140
223
200
193
193
200
215
217
195
218
200
189
167
216
147
241
233
159
176
188
181
210
178
157
199
222
221
253
163
217
194
176
164
263
208
221
188
228
165
193
277
235
255
192
201
249
192
161
254
205
214
199
193
177
245
212
217
218
219
188
191
190
121
169
195
218
210
219
238
169
195
154
219
207
231
150
241
223
257
212
219
169
166
154
217
173
153
190
178
179
173
178
159
253
176
155
204
240
160
264
229
189
183
172
176
163
139
215
169
229
187
137
225
222
191
214
221
216
167
178
234
253
171
152
239
198
198
207
239
133
188
222
218
242
204
190
200
248
200
212
190
193
190
165
178
147
154
294
229
202
171
214
171
146
174
218
155
256
240
164
230
181
276
155
235
172
167
229
176
127
233
166
202
240
213
164
169
178
194
175
149
204
197
222
219
189
245
208
181
216
246
175
205
176
130
227
235
169
183
213
172
202
243
152
217
192
170
261
239
213
222
164
140
172
218
283
165
176
139
236
215
197
214
243
225
192
228
151
204
240
204
219
192
213
206
238
133
187
205
176
226
270
210
193
197
202
211
225
184
207
203
167
185
189
213
194
229
217
206
215
223
240
189
137
246
227
143
231
168
198
227
192
174
161
152
200
252
159
214
181
147
153
210
229
223
268
224
162
153
173
149
167
161
175
232
163
186
162
249
187
215
208
198
207
177
329
236
158
232
224
202
170
172
227
204
137
226
196
215
224
141
245
213
198
199
243
219
236
200
254
232
194
198
215
151
238
272
212
188
197
220
175
230
251
242
172
228
226
186
166
193
211
156
169
187
161
169
183
201
245
176
221
213
196
190
204
178
176
226
190
174
226
175
230
128
231
212
181
203
235
203
160
174
212
171
163
164
190
229
189
192
139
228
207
208
173
180
237
238
200
206
152
223
182
215
190
199
228
186
206
235
172
200
212
181
218
223
201
199
201
226
250
276
218
178
240
199
194
176
224
173
225
187
185
185
192
221
167
209
204
264
209
191
189
225
200
260
260
190
205
128
191
237
168
224
234
134
161
212
198
190
186
222
174
261
190
191
175
219
186
183
235
206
236
233
239
187
240
144
211
244
226
216
170
184
251
165
239
191
253
246
180
179
178
200
167
192
145
201
214
182
191
189
231
178
277
176
190
236
165
190
215
219
190
188
162
203
193
212
167
255
179
142
222
203
178
176
221
124
153
165
204
214
205
214
230
261
199
149
135
199
173
277
222
216
169
175
185
154
196
190
215
181
238
232
222
154
189
187
196
225
208
162
173
201
250
176
219
158
258
177
306
192
187
233
186
181
198
233
177
133
232
235
184
240
196
232
192
158
271
189
168
194
192
190
255
196
203
160
246
209
128
196
212
209
184
176
230
175
157
181
243
127
238
238
175
192
208
217
235
223
208
244
159
209
161
163
282
203
187
149
191
188
181
208
229
228
170
236
212
202
223
235
216
217
158
170
189
218
186
100
197
204
216
170
215
184
168
201
236
198
233
257
178
221
161
241
168
227
184
217
240
173
191
159
157
185
245
258
169
217
154
146
172
206
184
191
240
222
171
183
206
135
189
197
154
178
254
204
184
200
230
178
183
192
160
231
232
164
224
139
151
241
150
179
179
196
226
228
235
215
264
199
232
182
200
262
201
182
184
249
209
194
142
182
186
103
194
214
234
225
122
146
205
217
200
170
144
206
166
199
178
223
259
203
202
263
209
169
180
215
221
231
212
110
227
202
207
179
203
204
205
152
238
227
167
262
225
113
215
207
180
145
247
168
232
173
203
154
248
191
207
222
210
237
216
178
201
186
182
218
223
152
166
201
151
209
191
208
182
167
260
203
233
194
222
254
233
126
151
204
167
150
192
163
249
197
192
211
226
207
195
221
184
144
124
156
210
197
241
222
193
224
114
235
199
186
213
239
202
173
213
161
228
205
130
217
249
203
211
229
172
180
234
223
166
209
216
229
209
177
192
199
181
195
170
291
147
245
252
161
233
209
211
184
170
241
181
294
112
254
236
188
252
210
208
233
151
195
183
130
157
232
207
255
206
213
196
233
185
236
210
253
185
176
226
209
239
130
261
189
222
222
223
225
255
218
175
185
226
183
188
244
222
198
195
228
172
178
224
163
183
201
179
206
204
164
241
160
217
206
169
109
242
231
182
169
171
250
184
212
136
182
226
125
190
239
174
160
219
198
146
189
226
172
181
177
181
132
201
197
184
163
195
260
235
182
213
262
194
198
211
241
225
231
170
227
240
129
120
187
206
222
201
161
217
133
188
227
221
222
180
185
255
199
168
244
99
273
180
176
245
161
215
173
202
162
172
212
187
171
235
169
215
245
164
209
206
189
173
181
210
161
212
194
215
196
198
184
222
226
224
175
163
135
179
254
265
186
210
198
203
245
198
200
202
211
169
142
232
207
225
165
178
252
179
212
264
212
185
184
188
168
221
230
231
182
173
222
203
193
207
199
203
241
212
205
192
200
171
145
243
181
131
219
187
182
166
176
184
157
212
146
164
201
140
232
200
225
230
151
216
194
207
176
183
157
161
258
218
221
228
193
165
224
207
181
207
162
236
179
229
205
155
221
178
214
189
226
242
188
246
172
193
246
223
231
207
177
245
237
290
206
254
201
208
233
184
207
157
288
172
219
168
224
190
131
202
199
210
246
181
202
201
222
213
255
225
213
264
139
166
183
190
212
191
246
176
210
181
224
210
216
235
215
253
186
240
207
211
258
215
238
188
160
224
212
245
198
154
171
212
201
235
255
212
197
217
180
192
270
209
192
220
268
232
193
174
247
197
210
214
272
168
187
188
209
225
227
251
205
155
226
188
201
174
214
199
206
192
196
168
243
213
228
212
245
183
205
197
160
203
202
240
248
287
177
238
238
160
215
166
207
212
177
164
167
137
183
268
168
204
248
159
199
217
130
222
184
147
245
249
163
207
264
197
165
263
234
205
165
224
205
221
158
211
203
138
243
217
206
151
196
153
238
150
186
268
136
220
167
153
259
212
219
171
231
197
197
159
193
150
161
177
208
157
213
273
188
248
219
243
236
202
222
122
215
235
115
206
172
140
181
222
202
227
222
241
191
183
126
210
126
158
203
197
264
268
216
180
175
209
208
246
221
204
236
175
180
152
194
275
175
141
203
241
216
214
253
224
221
201
209
209
171
153
193
190
202
211
196
261
281
120
238
168
208
211
196
163
167
259
197
251
141
201
180
160
169
276
213
188
156
169
163
182
184
193
207
175
233
167
177
175
157
190
136
165
194
151
183
205
164
195
208
207
181
209
136
245
152
199
175
241
207
260
219
261
217
250
177
238
252
259
187
208
240
244
182
186
206
203
180
252
226
207
179
180
203
196
157
201
227
239
169
159
242
163
162
172
209
184
205
248
178
225
244
213
205
187
181
224
254
198
273
211
209
181
217
151
191
185
202
169
166
188
199
181
204
231
257
158
246
241
214
205
169
138
241
307
218
184
195
205
207
164
252
177
201
240
208
275
192
225
172
167
214
135
217
279
176
253
219
237
214
215
246
198
177
208
148
146
214
200
180
203
196
168
170
172
210
247
159
199
183
208
125
193
226
212
131
260
233
148
266
232
204
220
163
171
155
265
209
184
161
127
175
260
246
125
286
241
227
242
225
122
192
206
187
189
192
216
266
169
179
226
147
216
164
222
232
219
286
245
280
191
151
252
247
211
186
189
181
176
83
207
229
243
226
211
188
174
185
265
224
237
206
181
198
168
223
263
160
228
181
233
234
231
193
226
284
195
254
165
169
245
208
224
149
161
244
202
195
183
229
239
204
198
235
182
212
238
173
186
200
224
246
247
160
224
169
224
206
145
278
159
243
238
204
118
214
176
241
202
205
208
277
236
178
153
262
236
205
260
206
236
152
249
205
182
185
228
203
212
224
105
208
251
203
249
190
185
218
215
195
144
268
197
159
190
146
224
244
187
184
204
224
177
208
183
216
239
215
228
214
227
203
221
169
249
225
259
183
221
253
160
257
152
201
170
227
173
168
179
190
153
258
207
158
225
238
204
176
267
203
195
155
247
212
172
175
197
170
184
205
201
218
202
210
218
199
160
154
147
215
239
187
247
202
215
230
212
197
222
175
251
189
191
257
224
196
127
199
218
177
199
200
189
203
201
179
204
153
145
207
183
211
165
190
196
253
153
175
199
210
234
200
182
256
213
204
212
200
191
189
216
180
149
204
211
239
240
242
261
182
230
186
179
153
252
212
174
231
221
179
218
192
204
171
173
147
227
190
156
221
237
222
192
157
176
226
217
130
150
163
153
249
202
234
161
252
205
211
210
208
216
282
134
217
184
216
212
177
169
148
251
268
228
186
182
149
262
203
211
216
188
132
214
162
214
205
125
167
225
164
147
187
232
224
181
254
161
171
240
168
208
192
174
183
192
177
191
203
247
174
162
182
221
262
170
251
236
228
193
218
237
198
153
151
214
181
208
203
165
195
273
188
164
189
241
199
216
201
259
165
170
242
267
179
212
151
231
233
189
156
200
204
181
267
229
199
189
192
148
186
225
232
228
190
244
173
170
205
218
220
225
268
157
132
153
215
190
189
227
155
182
186
200
172
173
205
195
214
251
195
166
220
177
191
256
213
209
227
187
151
193
204
207
254
255
169
280
204
243
266
175
158
198
202
210
157
192
184
235
223
193
163
223
188
199
145
254
245
193
211
214
158
178
301
244
175
190
150
269
213
128
158
239
186
187
264
226
221
252
234
216
232
225
219
228
207
220
205
241
212
185
242
169
206
247
203
218
198
218
208
179
161
192
200
263
171
152
200
208
197
223
220
225
243
233
190
224
236
262
203
180
175
203
281
217
161
235
179
199
230
201
209
211
235
209
160
195
197
148
183
143
207
194
240
224
187
202
202
166
149
204
172
205
136
192
196
201
215
244
290
141
217
174
208
205
180
188
208
246
255
214
234
249
196
191
203
147
257
219
221
215
230
153
200
269
170
196
160
204
229
171
196
251
245
161
247
202
176
195
215
230
179
234
164
139
196
197
188
238
204
211
252
230
199
209
223
192
203
190
280
249
191
192
209
223
215
219
219
169
183
203
211
171
219
210
207
169
207
195
190
176
213
206
198
245
161
188
161
168
202
220
229
157
117
238
190
213
239
150
166
209
202
192
192
192
240
200
225
207
227
184
192
231
197
167
191
250
247
201
217
220
204
210
196
225
127
186
236
215
239
265
190
219
238
190
153
253
187
243
222
243
201
179
130
229
202
172
285
239
214
179
176
144
222
184
179
172
210
202
189
190
175
208
181
259
189
230
185
200
237
175
209
184
230
195
235
170
215
223
260
191
251
221
245
168
147
159
224
150
232
253
182
203
167
200
170
201
174
192
187
177
210
184
176
158
182
268
263
175
179
227
220
132
189
190
176
225
238
226
227
202
173
201
176
212
176
192
199
204
177
288
252
197
163
201
128
163
200
255
179
197
145
197
210
214
228
193
241
175
201
180
139
258
226
161
199
231
161
159
223
195
217
185
144
177
264
213
258
205
153
196
236
180
212
155
192
146
171
180
183
222
178
186
257
195
244
204
166
222
196
212
155
195
176
224
163
185
128
179
233
236
202
177
166
188
264
232
214
225
140
208
196
214
183
200
261
224
192
146
224
209
246
200
191
168
205
196
180
196
201
216
177
227
185
215
144
187
215
196
193
222
175
187
237
194
194
197
162
238
239
191
185
162
225
201
221
218
232
236
226
179
223
239
155
148
201
225
164
250
121
191
198
150
209
153
128
162
184
201
177
165
230
149
159
141
203
187
226
207
234
187
235
159
145
191
205
159
156
249
191
201
274
187
223
210
231
210
193
226
162
257
178
166
156
233
170
228
202
216
205
204
189
215
205
219
167
235
248
205
235
239
235
280
189
160
220
195
266
221
182
187
164
192
236
214
236
166
158
182
204
212
214
194
182
174
167
237
222
154
122
168
230
176
190
195
226
220
234
260
237
188
157
192
254
191
237
202
206
200
213
193
211
153
227
191
175
237
214
157
190
159
202
178
222
118
214
195
231
190
238
174
264
215
129
167
193
206
235
183
182
160
256
195
179
180
228
204
206
153
215
205
225
192
224
162
100
231
272
246
195
195
241
247
211
178
200
256
246
234
188
234
214
68
281
174
207
133
248
205
222
206
225
280
275
210
192
186
201
228
219
174
163
254
247
214
195
121
238
237
195
139
231
258
243
241
254
189
150
187
183
173
136
181
202
214
169
232
197
196
213
196
239
162
220
165
158
161
251
175
168
206
120
159
203
159
174
229
205
186
239
174
98
204
154
172
187
183
181
201
216
250
190
242
209
215
182
165
187
249
211
242
195
204
247
230
216
197
148
223
187
187
243
241
183
222
159
159
175
229
200
256
216
207
190
210
173
236
233
148
177
202
191
203
179
227
267
187
156
186
192
205
199
138
165
240
236
223
257
214
178
145
218
259
168
206
241
197
171
188
150
140
208
213
136
197
250
181
190
194
206
172
244
212
180
215
183
241
200
209
140
174
133
232
224
216
168
135
212
206
214
183
174
218
255
166
188
250
175
166
211
253
156
169
206
158
221
184
201
218
181
217
192
146
269
228
220
163
187
174
182
241
205
227
146
157
154
200
164
139
261
205
248
146
162
184
123
135
199
146
188
164
215
183
192
207
154
142
177
180
177
167
245
183
237
246
177
203
115
255
195
282
171
245
215
254
198
144
238
269
184
195
194
152
199
136
153
258
234
210
197
197
162
247
153
238
180
227
139
195
232
253
256
198
209
226
158
196
216
213
188
149
152
243
162
173
190
201
243
187
195
209
209
233
180
223
191
184
249
165
144
203
197
194
186
148
187
181
183
145
144
240
155
262
219
220
214
173
186
189
154
174
221
190
212
206
245
163
213
256
283
158
199
224
186
231
174
213
174
169
263
224
241
182
249
184
158
238
184
208
203
100
204
213
209
147
209
159
163
218
164
243
204
126
205
216
217
186
223
176
221
236
203
213
215
184
210
168
223
168
205
203
162
202
215
190
166
201
242
175
183
180
188
216
168
184
202
230
111
210
172
148
220
203
218
184
229
263
254
209
210
186
212
168
236
160
245
168
227
221
193
143
249
142
181
156
195
229
287
153
167
171
178
124
190
192
209
216
184
174
258
218
206
167
183
256
200
167
207
226
221
173
155
173
166
231
207
273
174
166
186
228
180
195
129
244
223
276
219
211
230
233
181
216
232
188
212
209
186
200
189
178
216
208
150
232
232
167
187
221
201
244
214
169
203
175
216
212
207
209
189
158
204
189
208
214
222
179
233
201
204
177
212
155
230
214
247
212
191
154
202
153
135
165
194
204
207
206
235
254
148
151
208
213
232
194
167
246
228
215
155
193
145
240
256
230
187
167
148
135
225
173
216
253
258
248
178
191
139
168
268
183
206
150
244
186
126
195
160
104
208
227
178
219
206
159
210
168
233
190
231
232
204
218
187
174
223
176
191
181
254
182
184
203
135
237
223
194
197
206
241
209
213
231
175
145
276
219
170
198
168
212
243
243
207
186
166
221
225
193
160
232
184
254
177
169
162
207
215
169
177
155
163
234
139
135
175
199
178
139
230
166
198
139
154
138
218
198
202
231
264
195
168
218
230
199
190
226
204
229
177
226
133
190
217
193
234
251
217
206
213
198
263
140
248
239
218
222
190
181
245
202
210
207
109
234
215
187
164
199
274
189
184
213
208
189
222
215
143
209
176
204
186
212
222
198
237
180
198
202
246
197
242
204
165
181
209
239
263
200
203
219
207
181
212
151
217
158
246
190
211
188
205
164
138
232
131
240
189
196
173
194
175
170
252
180
239
208
186
182
183
175
209
181
147
197
146
211
227
168
230
243
223
221
199
155
162
167
197
169
174
231
218
201
190
189
236
179
158
159
188
209
239
226
210
166
130
229
222
203
231
248
249
164
175
157
199
184
153
168
209
213
187
231
159
219
185
215
226
219
196
174
248
165
196
249
269
223
203
182
246
194
227
161
213
197
258
200
173
231
238
183
250
234
255
233
233
163
239
205
207
205
193
211
221
204
166
176
202
214
245
200
229
218
223
210
228
228
216
221
203
180
230
196
233
174
169
182
201
183
190
159
147
164
164
243
203
247
160
192
201
262
190
176
189
165
143
229
197
208
158
196
219
134
163
221
266
231
174
221
182
208
124
207
260
234
242
165
111
174
212
166
213
214
190
138
157
176
138
200
162
188
181
218
116
192
201
152
181
175
225
257
186
154
170
243
203
129
227
159
192
217
225
230
194
146
222
197
203
157
215
230
192
199
174
201
137
165
177
193
213
197
219
119
272
202
233
190
169
216
207
173
153
216
218
234
232
171
154
244
204
230
227
149
244
196
205
188
212
201
239
199
198
171
224
166
264
193
217
196
219
157
220
169
188
229
196
192
218
169
298
215
200
171
223
181
227
160
256
195
212
155
226
230
222
212
197
213
158
162
231
228
202
230
235
248
245
144
250
190
184
204
217
213
225
165
210
222
252
161
220
248
201
232
157
172
193
232
213
234
197
172
173
235
201
187
126
166
230
233
254
187
174
167
153
148
176
155
124
222
241
150
226
259
231
172
225
199
219
192
188
190
152
224
223
218
121
206
172
171
83
236
175
185
192
137
168
166
174
193
239
243
213
239
223
231
196
193
272
189
194
207
213
187
147
158
185
205
153
233
224
172
241
228
177
215
243
143
229
168
164
246
147
172
295
213
200
157
172
207
214
239
269
205
221
151
249
189
206
131
198
162
182
196
202
169
187
162
221
193
225
247
201
256
159
196
150
173
246
161
248
223
128
204
154
193
235
208
201
190
157
194
229
191
225
210
227
233
201
243
172
176
192
179
188
199
189
205
215
194
174
179
199
116
234
238
166
225
121
232
190
154
130
180
212
214
248
168
162
224
134
244
197
245
204
208
229
170
170
182
274
208
198
206
212
210
160
184
273
226
229
207
210
116
156
149
209
219
227
207
202
205
153
222
227
184
210
229
232
214
202
238
239
163
235
190
256
179
226
218
236
198
182
167
186
165
187
207
152
148
167
207
202
166
196
225
199
224
213
219
246
203
147
175
168
241
242
199
220
146
225
163
151
234
225
233
194
208
163
196
212
112
216
204
234
223
130
168
173
201
194
188
188
228
204
224
209
183
182
219
152
197
232
298
187
200
237
191
236
153
207
161
194
232
211
167
261
224
210
198
240
229
189
135
182
173
201
248
179
184
251
213
204
218
152
196
161
190
272
230
184
214
216
185
179
202
211
216
208
197
151
161
201
227
243
178
112
237
236
148
191
196
210
197
192
205
233
209
206
202
183
189
221
203
163
165
231
172
108
196
200
226
162
218
194
208
232
228
213
230
255
256
189
217
203
207
275
247
239
203
250
222
263
169
236
192
202
179
177
212
200
202
209
225
225
143
221
182
178
249
283
172
153
194
194
179
233
170
136
219
202
137
187
167
242
239
196
186
263
212
242
205
213
158
193
121
204
213
267
273
185
218
217
258
198
186
200
211
265
236
256
183
173
196
166
150
224
195
237
213
168
250
193
186
169
212
191
219
230
239
191
205
194
192
212
235
192
242
210
194
220
170
218
207
210
175
155
252
213
289
160
214
202
154
185
193
190
285
171
193
198
150
190
187
260
185
209
229
192
217
239
175
181
208
182
118
243
175
216
207
218
167
153
151
219
156
138
211
164
205
185
199
190
214
241
149
203
232
174
224
248
175
220
137
227
195
215
214
263
193
196
237
201
180
207
223
145
217
166
217
207
170
188
85
206
235
195
191
237
160
160
263
231
162
220
161
234
234
180
215
175
200
215
220
178
171
224
229
222
170
220
237
196
186
202
231
225
212
182
212
144
155
171
236
150
187
221
220
253
221
213
183
186
255
260
262
170
181
257
142
249
191
139
195
146
178
176
182
224
252
221
192
201
239
176
223
199
235
114
254
161
216
247
212
197
244
115
202
225
191
199
164
171
176
215
274
181
170
202
188
197
159
210
149
203
185
212
176
210
223
207
209
206
174
183
256
126
114
204
239
189
175
197
227
251
167
213
201
185
190
204
133
216
177
255
206
198
282
206
163
217
198
193
199
229
144
180
224
199
213
242
231
213
185
210
185
259
140
199
195
205
168
211
243
229
253
237
208
228
260
235
117
194
217
183
224
191
215
220
175
179
164
213
188
238
172
199
245
238
202
149
194
144
222
232
202
215
154
218
223
228
213
194
224
170
207
226
211
197
191
209
195
163
211
153
205
231
236
142
214
222
172
262
189
166
196
209
248
230
228
248
187
192
181
262
168
157
205
163
197
189
224
223
229
214
196
164
198
225
228
152
235
165
198
158
246
145
245
192
219
213
168
205
191
209
230
187
213
166
166
194
189
190
238
223
193
205
150
261
175
217
148
217
240
260
220
177
238
124
187
171
196
170
208
206
212
223
219
217
165
251
236
148
224
188
187
239
200
169
215
157
190
253
197
236
223
197
228
192
249
149
171
210
181
194
168
191
175
188
217
217
177
227
189
200
207
217
193
197
196
204
160
217
166
186
154
213
221
277
127
185
143
197
244
194
143
171
165
145
183
172
193
142
207
207
250
194
228
179
196
152
190
154
194
203
176
194
216
162
223
244
232
186
216
225
220
185
198
165
223
194
202
178
243
185
148
181
162
169
226
246
249
170
174
182
284
255
220
179
221
209
216
208
122
187
177
156
159
232
190
189
171
305
151
187
194
147
231
187
181
240
201
226
186
172
241
199
205
177
145
259
184
205
195
162
238
220
164
159
157
224
217
149
158
180
215
262
232
152
193
214
243
196
235
155
179
223
173
198
199
210
184
194
248
222
287
228
209
212
198
220
237
174
247
195
213
202
159
181
197
153
120
153
271
210
211
180
164
231
120
239
167
198
230
181
234
216
227
162
193
259
205
174
156
209
175
235
140
230
267
153
236
163
178
189
196
228
172
181
254
203
155
197
172
224
158
227
215
131
174
180
203
176
186
171
268
130
186
199
181
143
216
163
170
239
207
110
184
198
220
174
229
129
224
223
201
244
199
155
229
225
186
217
258
182
159
182
180
223
187
234
181
222
186
230
221
252
191
243
259
274
177
224
189
186
220
147
165
215
187
194
263
180
228
231
230
166
189
171
182
238
261
214
162
169
191
301
168
219
182
183
199
224
215
212
230
145
226
192
201
180
197
221
200
150
215
207
188
208
220
172
191
206
221
262
264
222
158
186
254
211
297
182
222
178
184
166
111
202
137
222
182
234
196
208
190
202
182
228
189
209
241
207
151
216
214
229
272
210
190
264
255
157
235
134
240
151
193
215
234
251
214
169
218
153
182
156
262
180
261
174
223
204
166
231
203
157
216
233
219
120
185
194
226
188
224
244
141
230
234
208
219
195
197
204
194
239
210
114
206
220
236
199
160
161
207
200
275
214
174
187
237
162
226
210
222
163
208
149
252
209
195
246
160
220
216
160
147
189
179
175
155
208
192
231
240
236
195
261
216
146
204
160
245
218
147
161
220
167
159
258
143
169
140
196
183
203
195
151
142
152
229
214
214
189
205
177
221
234
168
169
121
187
203
203
260
161
189
228
158
231
196
166
205
169
208
171
211
228
185
207
178
200
186
188
257
265
252
162
201
223
200
210
219
150
270
228
223
233
230
196
238
165
232
163
195
216
230
156
206
210
126
244
187
207
209
218
158
174
195
134
197
184
124
128
232
221
182
208
196
169
215
232
227
172
270
179
247
237
187
255
141
203
200
225
161
208
178
202
214
223
225
230
213
217
201
192
258
211
204
186
209
182
216
199
248
203
214
178
148
243
232
179
148
218
198
207
222
251
197
226
220
128
230
222
196
246
171
200
196
210
204
167
166
208
214
207
199
230
204
170
193
235
216
167
125
198
208
185
173
210
214
159
228
185
188
224
229
216
241
171
238
163
174
196
199
199
180
174
201
167
252
277
171
206
169
228
204
167
207
163
133
192
214
171
208
211
254
177
224
230
170
254
188
163
211
188
193
242
207
197
263
215
235
149
239
170
187
211
216
231
163
199
201
203
209
228
212
210
178
233
185
194
237
238
181
200
224
193
151
195
177
211
237
214
225
142
213
180
177
218
211
218
140
193
245
128
181
182
223
204
195
216
178
204
245
193
160
202
252
213
177
146
194
204
181
229
272
190
200
143
209
158
155
233
177
186
202
241
199
212
229
238
151
230
218
151
224
202
218
199
135
208
185
229
197
198
153
146
191
227
181
146
168
218
204
219
197
204
204
151
244
224
248
223
174
159
209
136
161
250
193
231
229
147
148
165
235
199
183
198
228
223
193
171
215
177
186
161
173
240
164
203
205
246
208
132
185
146
191
227
221
214
152
166
166
129
165
174
196
149
214
186
171
158
205
199
193
210
206
249
268
180
183
258
176
223
237
201
175
220
251
123
180
217
191
208
220
217
151
206
176
226
200
203
209
173
232
169
182
176
280
201
190
224
174
166
163
150
127
198
175
199
163
228
238
224
193
241
162
141
217
200
172
183
177
218
177
169
156
250
182
237
215
222
246
127
214
211
206
210
169
213
211
158
170
223
185
123
194
182
188
249
277
244
214
190
191
250
181
202
177
248
200
248
243
187
157
174
149
203
239
258
200
200
215
206
228
195
234
237
233
241
180
162
213
246
165
269
141
215
226
155
140
276
232
256
158
140
172
207
219
179
187
179
215
183
239
172
185
156
217
163
267
250
215
179
195
213
170
187
128
222
174
218
217
196
170
207
177
213
103
179
197
219
184
171
215
213
195
184
237
152
208
214
218
239
202
220
196
202
182
213
174
216
217
194
197
249
249
149
188
191
220
149
195
189
227
190
213
195
199
235
207
218
174
153
162
225
196
244
191
220
254
205
135
188
173
204
193
194
214
189
252
205
218
197
196
160
218
260
201
248
205
176
169
171
153
229
225
267
261
204
219
160
192
156
237
205
263
205
214
146
203
150
178
185
181
126
183
199
227
136
230
246
224
222
200
215
206
182
180
267
224
253
189
203
210
239
219
155
240
218
276
213
228
222
143
249
221
206
258
246
163
164
207
211
170
188
234
154
240
215
179
189
225
202
229
174
186
137
195
219
175
220
179
215
287
120
200
247
232
215
169
234
226
222
187
167
200
212
168
167
238
145
124
189
166
153
222
194
171
216
194
128
184
173
126
189
227
207
215
255
235
160
186
207
214
145
214
197
283
249
142
158
203
191
265
207
255
175
222
192
192
144
174
141
236
243
253
184
175
178
267
170
147
148
198
191
163
199
209
198
271
168
240
239
220
222
196
194
234
251
197
265
134
197
233
204
246
214
219
128
176
119
178
192
179
196
213
160
163
224
207
289
238
175
229
173
154
180
219
211
204
204
198
217
137
169
183
180
222
174
150
207
210
214
229
231
193
234
231
278
198
241
235
168
266
225
202
236
251
122
186
178
259
243
190
179
196
213
229
126
248
179
179
156
223
216
187
192
207
300
206
199
185
247
224
243
192
253
201
193
165
237
210
221
241
163
194
166
181
183
245
200
233
209
231
157
190
227
186
237
222
196
219
150
233
181
210
224
207
201
194
211
165
234
165
187
157
187
232
169
193
106
200
261
151
171
245
159
175
148
224
172
197
183
195
181
200
193
285
179
155
193
244
198
231
167
223
211
225
258
165
255
190
238
172
172
239
190
214
214
241
187
194
212
235
176
168
148
231
131
212
284
184
267
181
225
207
163
142
193
215
212
137
208
153
250
194
263
166
163
198
192
232
229
204
197
198
252
225
189
219
140
232
117
249
147
181
165
172
230
177
215
138
192
174
211
173
90
216
177
200
197
184
185
231
192
221
202
216
234
203
236
244
194
226
197
132
206
173
181
151
167
241
159
234
222
167
261
223
172
233
210
202
222
162
199
161
173
222
232
280
138
235
196
274
202
189
179
233
229
215
225
165
140
167
244
146
204
234
229
223
252
167
200
155
145
158
231
169
226
185
218
218
201
154
284
212
192
198
217
189
195
199
207
216
209
278
176
191
191
229
191
203
223
191
174
231
233
210
244
176
190
221
201
183
153
176
216
252
165
146
240
262
176
204
204
205
213
210
155
226
173
175
232
148
158
184
166
234
200
175
191
158
249
252
175
173
227
268
256
165
223
153
195
178
172
227
149
206
206
239
268
238
204
178
166
200
189
226
211
139
241
160
217
178
166
192
239
113
180
215
219
205
181
160
157
208
235
233
243
138
155
177
214
185
162
123
265
248
198
163
234
211
205
269
159
184
253
222
217
166
207
234
165
220
252
159
223
158
210
265
171
228
252
227
187
175
196
202
226
195
178
229
169
196
203
208
256
215
175
196
196
259
193
180
135
188
254
210
267
169
205
142
164
165
142
182
198
146
153
183
141
269
206
182
208
147
197
225
204
236
219
192
219
190
179
191
267
208
176
185
160
201
214
134
246
226
209
184
218
133
206
169
118
233
214
237
198
180
126
182
156
186
162
196
221
225
212
163
220
219
233
169
235
192
174
212
170
100
170
181
228
182
187
258
169
212
173
191
183
195
119
191
194
215
233
204
204
229
153
178
211
193
168
219
247
217
193
207
219
160
236
183
134
224
165
229
257
123
192
198
185
198
210
186
217
190
185
149
210
238
193
173
198
224
268
221
165
251
199
221
237
206
124
171
190
155
170
143
166
180
219
188
255
256
227
225
138
175
218
185
248
152
178
227
171
183
200
162
228
197
235
160
179
247
201
157
172
187
210
160
206
250
217
214
225
242
221
243
268
198
150
235
248
190
212
171
203
159
227
136
205
242
194
188
251
229
115
170
222
195
224
201
183
233
211
132
285
202
267
205
185
189
200
179
224
281
242
223
261
292
222
223
258
215
225
200
254
175
224
143
210
131
261
220
245
148
164
171
176
221
210
196
186
180
253
212
211
195
166
170
222
180
232
250
252
214
233
157
173
190
224
202
157
282
258
207
198
243
191
234
255
215
158
192
252
155
168
199
229
191
181
177
261
182
245
209
250
238
201
148
156
231
208
209
170
234
256
201
142
194
176
203
226
192
177
196
227
177
227
213
195
179
206
189
230
179
218
229
172
228
209
250
198
188
232
153
252
208
266
164
247
117
193
257
205
157
187
220
160
194
239
287
232
148
217
130
120
268
257
192
149
238
230
198
156
202
254
141
202
187
267
164
211
219
142
163
214
252
179
176
253
237
210
219
171
248
178
144
181
176
244
223
225
182
209
173
169
166
244
219
258
186
197
202
211
217
252
117
215
237
279
236
207
233
169
193
215
143
203
211
190
138
194
162
161
149
160
228
193
188
224
233
194
200
179
186
145
240
243
240
228
117
218
181
207
192
132
236
211
205
245
236
212
190
244
211
179
186
209
242
173
242
211
241
169
208
265
220
195
245
228
188
224
225
263
223
191
171
250
176
170
148
147
206
206
210
167
192
212
231
204
175
230
242
259
170
203
195
176
169
223
209
218
172
208
187
205
164
149
224
119
189
214
126
209
193
224
191
199
160
245
154
205
243
162
219
207
222
157
201
175
195
218
199
176
201
218
190
222
217
222
130
207
203
218
223
190
159
187
252
248
229
207
216
186
163
225
193
150
222
211
179
194
206
160
213
253
206
180
162
195
185
192
184
169
213
177
146
197
234
189
219
185
156
258
173
165
228
214
230
213
233
258
223
179
183
186
166
174
223
224
201
191
174
186
156
202
247
152
216
241
194
200
200
225
200
159
137
206
138
221
186
227
174
218
195
151
212
267
220
209
163
208
134
168
254
239
164
211
180
189
201
168
203
149
222
188
217
227
189
207
219
199
184
208
232
236
248
207
193
190
161
256
166
170
173
150
208
166
218
242
167
187
180
210
158
225
191
160
207
194
233
219
227
218
161
192
185
211
177
217
223
218
128
215
218
196
201
282
205
209
227
228
203
201
201
230
215
172
217
213
194
209
155
153
221
198
184
182
163
215
207
166
223
162
167
192
220
204
179
124
195
217
211
185
212
201
283
226
153
136
202
251
224
185
194
224
234
211
222
132
223
181
227
169
130
224
259
209
180
192
197
176
148
242
248
183
261
168
225
210
241
237
193
248
208
160
107
208
147
139
198
211
227
247
160
191
192
199
109
233
175
171
184
217
177
182
205
219
166
161
210
201
245
206
254
201
219
217
150
187
259
166
229
200
219
235
210
226
127
199
188
234
226
132
152
185
207
246
226
184
209
203
150
192
178
205
190
122
237
225
215
148
183
202
222
223
163
249
193
189
195
210
231
181
176
125
186
249
210
147
190
222
259
240
223
178
246
247
226
136
195
176
269
201
229
191
184
186
201
193
220
196
213
168
238
232
221
170
215
174
196
212
239
236
193
205
244
162
208
187
223
159
195
245
252
180
226
197
220
251
217
184
195
185
141
204
183
200
256
208
233
203
229
215
184
164
178
177
201
161
214
226
218
209
201
214
167
219
164
274
205
167
243
210
178
178
220
203
245
118
223
165
200
161
185
212
215
215
244
248
241
219
203
161
126
175
158
220
171
196
187
187
135
182
214
150
229
171
219
183
176
193
165
208
217
227
150
221
189
154
199
244
179
210
192
204
202
221
162
178
201
234
147
238
174
261
202
225
218
240
239
213
260
209
276
195
163
112
204
244
204
140
207
220
228
173
231
206
222
196
271
123
241
214
194
231
106
175
187
212
210
220
178
205
213
222
183
183
247
143
192
192
236
246
221
174
220
172
203
193
260
246
218
220
132
259
233
155
203
185
197
176
177
178
185
184
126
201
250
248
176
189
177
206
204
233
206
217
161
242
206
216
178
200
240
220
263
193
220
261
181
170
220
176
164
265
165
235
140
257
212
219
201
176
167
160
238
166
196
150
202
162
163
269
229
225
187
163
211
174
234
194
166
248
224
208
278
211
243
150
214
194
252
262
213
183
197
211
200
267
185
148
181
171
262
207
225
195
238
131
212
226
162
164
215
251
222
225
156
217
205
231
174
194
244
124
231
162
195
193
151
262
232
212
240
236
220
179
187
201
228
118
180
198
236
189
218
184
204
165
236
186
238
188
186
264
184
234
187
187
183
230
220
202
220
226
234
218
177
147
187
255
168
235
197
222
175
189
231
219
226
212
203
207
205
261
196
209
217
198
187
221
234
250
290
212
180
240
146
181
214
230
160
142
168
227
252
131
198
201
208
221
240
142
213
159
140
154
225
283
121
256
200
192
93
248
237
257
158
123
210
254
214
200
232
186
174
208
160
173
182
207
199
156
232
177
209
160
216
168
229
178
208
173
211
228
214
93
251
166
241
125
198
187
201
265
182
189
157
224
246
176
238
119
250
181
248
160
201
271
178
190
210
121
190
169
217
211
213
211
270
188
186
245
196
162
172
182
202
74
214
260
170
169
185
210
267
210
180
193
232
197
223
227
153
168
213
165
210
209
268
211
199
150
189
231
171
184
236
217
170
168
145
194
196
281
187
202
243
208
127
179
164
165
241
192
183
162
188
212
169
199
228
153
207
215
186
220
163
153
205
190
173
174
177
245
145
252
186
227
217
220
255
207
146
228
217
202
163
169
217
231
202
211
219
149
164
152
188
205
210
228
181
215
215
209
224
167
212
269
260
194
201
180
217
145
238
179
145
175
213
239
225
203
166
118
238
176
195
225
227
187
224
223
163
135
216
192
230
231
211
227
236
208
231
219
233
250
168
167
247
237
247
162
169
184
223
225
184
137
212
245
205
218
167
177
188
146
158
232
225
156
181
164
200
219
262
133
195
207
197
211
261
231
208
222
224
171
201
177
201
240
220
192
171
228
170
182
226
223
201
207
225
252
124
213
160
206
193
228
222
191
183
263
179
211
187
227
124
231
179
178
180
200
208
219
224
237
196
196
232
185
203
203
178
220
197
211
207
234
227
206
219
191
165
209
240
159
240
178
248
258
186
139
197
187
204
219
200
186
217
169
158
159
185
130
220
170
203
166
145
216
224
192
200
191
179
187
191
197
253
223
186
169
219
213
166
224
232
221
236
194
268
205
197
227
227
161
210
203
244
194
192
252
203
182
193
183
279
202
192
190
183
188
186
184
217
213
256
154
276
174
232
157
242
258
226
252
202
172
136
214
208
167
238
166
193
178
208
194
228
146
213
179
245
214
175
228
199
226
207
175
178
206
188
205
214
186
216
175
229
169
209
179
159
232
214
218
142
224
206
249
172
212
203
197
190
192
216
224
215
164
184
174
237
206
203
179
202
209
171
164
215
213
203
184
221
164
177
174
255
241
168
220
213
183
163
137
243
189
207
216
188
241
166
209
216
228
260
210
171
172
202
180
228
175
212
180
190
159
205
155
235
215
210
228
257
217
254
197
198
175
173
221
205
199
185
191
178
176
171
181
201
218
185
213
226
229
192
229
200
142
193
251
211
198
229
154
184
195
226
231
183
186
182
202
218
233
191
238
201
172
183
265
242
171
152
171
218
122
204
195
222
215
211
209
189
169
228
200
196
164
221
251
191
159
254
244
257
213
148
245
243
229
248
223
222
176
254
169
145
176
178
233
238
146
197
165
188
159
224
215
213
191
239
214
132
196
200
175
123
231
222
186
208
242
200
218
170
194
172
231
263
242
194
194
143
215
196
141
219
229
187
220
205
202
224
213
216
184
194
192
183
207
197
145
169
171
158
190
260
255
142
187
179
215
216
166
154
201
178
222
193
114
235
180
254
169
226
166
142
212
198
230
250
195
236
176
190
170
257
257
155
224
114
232
229
246
206
154
166
165
192
184
255
171
208
262
264
203
216
222
208
169
194
187
207
206
207
212
212
208
256
186
266
227
204
232
125
240
236
160
166
212
239
173
153
232
212
159
235
256
215
147
239
178
195
242
259
172
202
141
164
193
166
188
212
225
245
261
233
260
213
131
208
177
231
193
193
180
186
214
233
188
228
183
229
210
200
217
227
186
249
288
213
173
201
207
191
140
227
190
196
211
150
202
210
191
188
231
140
173
262
194
233
229
231
174
194
160
259
173
202
153
233
204
209
220
180
197
160
223
159
264
221
174
172
206
245
246
253
205
205
169
201
227
158
249
211
218
246
174
170
237
233
220
171
190
218
231
188
218
196
266
228
182
182
234
215
220
184
178
193
221
209
160
259
167
156
165
217
221
173
236
151
156
206
225
131
202
241
165
268
191
138
190
162
137
143
191
187
174
159
169
185
195
207
218
232
206
180
171
194
175
248
265
166
247
262
215
144
177
184
235
195
145
176
213
160
193
165
158
201
242
195
218
211
194
216
142
197
158
188
310
237
214
142
217
213
223
178
210
103
250
177
252
152
205
192
208
215
225
210
196
190
114
195
211
208
196
148
189
174
214
191
183
212
201
219
158
270
202
138
200
153
164
245
214
248
164
263
183
227
171
153
208
155
187
258
217
175
231
193
227
254
213
156
177
222
179
242
160
215
227
176
262
166
134
172
253
152
188
83
125
146
184
192
191
235
190
217
185
158
186
212
216
219
214
168
197
174
168
179
211
235
175
230
201
199
272
168
199
207
219
154
189
267
231
226
194
212
232
200
174
160
203
244
197
225
197
237
175
229
208
181
206
218
218
274
223
210
165
163
147
191
211
153
205
185
197
253
280
181
219
170
190
184
196
229
219
190
214
203
189
170
208
207
159
211
166
190
242
186
180
238
211
221
204
218
231
193
176
182
221
241
221
225
178
176
254
188
260
176
267
131
229
208
221
167
221
222
193
183
153
160
218
174
267
174
211
235
168
258
227
205
192
221
225
214
176
181
217
151
223
216
197
214
185
191
190
201
181
227
142
160
232
198
247
156
277
248
185
211
175
227
208
239
231
216
236
254
204
176
189
206
155
236
206
223
182
110
256
177
144
166
231
204
273
139
162
148
207
209
207
162
225
224
186
173
182
218
237
109
281
141
192
239
233
205
241
216
162
165
237
161
153
218
229
245
164
200
232
156
203
178
256
182
156
225
218
204
221
213
129
148
166
195
204
180
238
237
203
184
144
213
187
183
168
207
173
163
158
185
198
238
188
210
192
235
228
192
191
274
213
183
214
187
260
250
186
156
182
217
157
195
171
241
192
178
243
222
160
208
165
239
195
217
208
243
211
202
195
221
203
245
240
220
183
106
243
167
222
191
200
220
198
174
165
197
197
209
208
229
268
158
268
232
251
267
169
283
148
204
167
191
203
198
200
245
206
186
176
150
149
205
245
275
213
242
183
194
224
221
186
213
189
222
181
212
215
182
229
152
155
226
192
190
245
186
239
221
208
169
179
208
200
224
232
236
234
201
165
227
278
189
212
163
223
178
206
200
214
170
252
193
188
211
156
271
195
138
197
183
241
162
235
162
232
219
193
179
240
208
224
232
183
194
214
222
220
202
257
151
246
183
192
168
209
168
176
176
175
213
212
258
196
227
179
185
214
201
154
238
168
207
232
180
209
205
249
174
173
197
178
252
224
193
272
233
213
227
188
171
203
274
214
179
206
212
236
252
212
144
133
247
206
213
164
220
141
206
159
224
215
264
200
181
207
157
221
218
224
195
201
190
234
180
151
193
136
188
197
275
234
218
186
259
143
228
220
214
223
252
184
224
219
206
224
208
161
243
190
258
258
207
169
242
179
149
236
163
194
173
245
199
209
209
231
189
219
180
233
158
206
209
173
229
243
240
207
191
223
229
153
108
134
197
189
183
217
127
202
229
162
164
264
232
251
180
155
167
225
223
180
133
96
209
200
166
214
165
222
161
193
187
236
210
180
161
262
190
158
180
230
177
220
183
230
212
161
236
234
168
212
192
224
152
201
171
219
231
193
201
199
220
195
178
222
192
229
231
219
200
196
271
249
211
179
198
208
214
248
128
245
190
253
177
235
184
251
168
238
185
224
234
224
151
205
230
137
185
164
194
214
183
214
238
264
243
182
291
179
152
192
228
201
247
189
199
198
193
236
203
186
219
192
179
207
220
167
146
257
214
221
197
191
182
182
139
181
189
152
192
238
205
194
215
184
241
223
176
222
176
170
193
224
171
166
180
245
162
174
227
209
259
183
131
241
219
247
263
253
185
236
203
189
209
209
155
223
207
175
170
213
218
140
201
181
168
217
185
149
211
190
217
234
215
198
233
154
229
200
199
227
259
196
185
249
296
227
137
189
208
212
204
181
148
246
218
225
234
187
199
213
245
238
222
222
163
132
165
191
202
152
241
201
145
240
250
154
195
268
159
209
205
163
220
233
146
198
189
162
164
214
158
221
188
137
256
199
207
179
255
121
209
253
159
236
221
208
199
204
190
153
201
258
252
284
225
150
260
196
186
162
240
224
216
245
213
224
204
184
239
248
199
254
226
221
195
185
185
176
187
205
218
248
220
200
216
223
195
254
228
219
199
221
186
206
239
201
198
166
164
237
259
154
261
217
174
183
203
221
272
233
115
258
187
164
214
185
219
222
177
239
228
236
182
104
165
226
205
214
212
253
212
208
224
252
208
201
245
167
238
218
181
253
211
176
230
202
243
184
199
207
231
183
253
259
220
197
188
171
212
202
233
201
192
193
236
244
216
224
159
254
174
161
199
195
187
197
189
266
229
163
216
228
165
222
163
171
217
219
139
199
197
217
210
152
171
165
246
221
252
149
248
211
252
218
235
228
215
210
175
228
227
129
150
151
228
205
214
218
193
194
175
202
175
260
188
230
198
139
197
189
209
206
198
200
176
188
163
223
201
217
211
232
179
234
177
222
169
212
248
197
182
245
247
196
194
192
208
208
188
159
220
162
162
253
204
191
254
188
228
136
200
176
148
230
184
183
169
257
225
194
178
184
147
156
175
221
202
187
229
249
131
150
234
174
210
147
220
203
181
252
244
193
200
196
167
211
208
173
172
212
154
210
161
179
154
187
216
206
176
146
189
194
268
193
146
226
224
239
188
166
164
204
176
192
219
162
185
186
176
144
236
232
129
233
192
244
255
211
227
287
194
224
91
224
244
247
166
174
243
241
236
184
226
200
230
167
190
118
230
184
152
144
192
158
237
186
132
147
259
218
197
251
157
186
219
134
231
265
226
213
230
187
217
214
242
223
196
160
156
208
185
178
240
132
210
144
267
177
184
162
212
151
226
154
150
135
161
188
168
152
191
186
237
167
188
175
185
188
209
190
270
160
227
245
209
169
217
177
152
205
214
170
229
245
155
215
184
189
192
225
166
180
235
233
261
227
226
155
118
200
197
243
118
182
237
229
184
198
247
172
176
188
179
241
163
185
240
242
185
220
197
212
210
205
195
217
200
213
186
174
194
170
201
258
180
207
201
219
237
225
194
175
161
158
260
207
143
204
206
220
154
170
233
166
150
188
179
228
174
244
179
155
174
206
219
192
217
169
264
255
161
200
244
224
218
183
211
207
181
227
144
216
209
259
184
200
225
180
199
207
241
175
244
191
211
172
120
168
223
194
268
141
167
149
260
224
185
133
236
267
222
153
249
174
149
168
219
254
199
190
242
213
206
172
207
218
192
162
185
193
200
235
197
203
214
207
271
253
173
229
213
238
141
148
218
230
194
177
225
254
194
233
208
217
187
177
208
212
204
204
116
222
240
171
210
214
211
226
184
236
205
184
218
206
201
184
212
219
215
224
195
212
225
183
184
193
197
180
197
97
173
252
162
202
197
166
211
188
194
139
122
171
175
193
203
205
241
160
222
270
232
211
256
207
196
177
188
205
143
218
258
215
211
235
212
135
211
165
220
215
207
171
267
227
158
198
235
194
184
241
201
206
179
224
203
209
219
226
194
201
213
206
125
260
203
132
166
200
190
220
202
166
223
165
167
235
201
235
226
220
245
180
147
128
155
151
227
239
124
164
246
216
198
192
193
204
207
191
241
193
143
178
227
198
227
206
186
238
247
206
202
168
173
228
194
202
176
175
152
205
204
227
222
208
238
237
233
139
127
227
161
244
204
232
195
173
145
215
207
201
170
183
149
197
259
141
229
202
212
195
188
222
169
209
196
158
197
174
188
240
250
209
220
239
237
196
148
73
197
213
215
220
211
232
167
157
168
197
282
243
282
236
223
198
168
271
271
236
239
194
121
249
172
199
171
212
168
117
197
211
244
171
208
164
251
182
158
186
216
249
155
172
203
216
251
204
179
176
243
213
219
203
153
153
220
207
192
239
179
246
243
156
143
208
208
140
242
216
187
239
183
236
231
146
250
205
182
216
182
264
172
208
137
105
240
150
170
178
224
175
134
219
204
190
199
223
246
251
172
221
221
232
177
230
181
174
115
177
172
190
184
162
166
215
178
248
200
171
157
204
243
182
239
207
159
136
175
190
236
222
192
238
167
197
168
181
229
165
216
233
177
188
207
220
215
207
217
222
190
250
197
234
195
197
133
262
195
197
248
199
151
165
188
211
249
166
197
233
197
201
200
198
160
234
204
165
137
234
193
207
212
176
286
190
216
198
194
178
242
178
201
214
204
233
147
216
235
222
281
243
201
214
145
208
198
240
189
208
188
178
228
196
150
200
202
184
189
212
160
183
166
179
208
106
172
195
191
207
223
198
230
229
174
202
186
249
143
146
230
190
204
125
188
181
240
194
145
229
162
258
203
173
256
162
197
162
193
189
208
199
185
183
175
177
175
143
188
224
190
229
223
204
203
260
181
247
166
192
208
184
208
217
137
195
179
214
227
186
198
209
254
172
194
281
240
231
189
260
210
223
255
171
222
209
200
155
179
228
182
205
205
191
189
156
192
203
258
208
191
201
172
243
246
167
167
192
251
147
200
211
210
163
275
191
177
242
198
171
221
226
254
187
220
188
204
206
192
199
187
283
169
214
162
216
193
161
197
208
220
228
234
179
187
188
195
136
197
180
253
195
179
230
215
206
190
247
222
175
224
136
230
194
219
254
197
144
234
278
181
202
153
231
231
222
228
177
243
239
178
221
182
208
212
182
203
283
217
293
181
192
160
244
248
184
230
166
217
173
226
160
219
185
278
232
166
234
160
160
210
245
185
218
182
206
190
144
276
216
241
176
138
123
206
244
189
183
265
250
234
263
206
248
185
227
186
165
172
193
160
214
188
219
197
231
244
239
127
189
198
204
225
218
258
162
201
160
172
199
224
210
161
220
199
215
215
164
185
176
214
170
151
201
273
205
227
188
211
195
195
249
146
243
212
246
249
238
175
149
185
233
232
180
230
186
188
142
232
185
215
279
168
185
158
150
226
203
211
237
227
200
203
197
172
190
143
174
164
111
130
205
206
209
252
155
209
300
171
228
233
194
221
144
207
189
220
163
248
218
219
208
193
254
163
220
203
202
165
171
156
224
259
152
233
148
220
220
234
178
147
184
219
203
250
244
257
177
161
207
185
177
212
179
190
136
237
191
167
195
202
140
231
247
233
239
186
184
185
132
159
206
177
196
162
151
207
189
197
198
147
215
231
213
161
178
231
206
221
231
213
199
243
196
215
270
197
232
175
206
223
201
193
181
161
196
165
255
214
265
213
170
192
241
177
196
148
197
254
197
139
252
241
144
181
258
209
243
217
267
175
191
175
160
207
221
173
171
221
214
109
184
243
162
207
190
212
208
250
218
188
204
182
223
195
196
189
196
289
220
181
232
231
233
163
253
177
212
239
214
228
170
225
179
190
147
178
208
186
205
205
198
252
241
140
220
180
139
214
204
144
215
184
236
223
188
198
208
145
142
198
178
212
207
229
219
250
193
208
144
146
198
214
231
217
203
275
217
166
147
168
194
206
155
201
221
198
189
167
122
189
195
162
189
205
178
228
182
154
194
178
136
202
234
204
190
202
238
144
246
203
242
234
171
190
211
219
170
163
152
161
163
164
211
227
199
199
222
186
168
220
174
227
237
207
203
161
180
241
265
254
217
235
283
224
225
158
178
225
227
209
257
167
179
127
193
206
181
213
267
237
178
147
140
245
189
200
188
141
143
225
201
249
212
185
189
288
190
235
242
173
203
174
187
200
151
163
217
205
276
163
213
146
202
165
203
206
187
216
223
204
196
200
194
179
193
199
136
272
259
208
180
255
211
216
250
214
164
251
230
176
238
212
221
200
215
236
208
258
181
166
175
176
153
179
198
230
172
198
167
122
147
125
230
184
219
152
185
161
150
230
218
154
199
244
223
232
261
194
208
190
186
208
223
188
172
195
212
199
240
211
191
206
172
186
198
183
237
194
250
257
168
248
176
265
227
196
170
214
226
259
189
198
198
227
206
175
142
239
182
187
181
182
206
216
244
198
204
186
176
270
183
192
253
206
168
197
172
154
136
183
187
199
239
223
214
211
259
185
161
208
125
175
222
162
180
185
247
175
252
244
204
156
202
191
217
210
243
190
193
224
236
234
222
166
186
250
253
165
122
221
219
125
241
244
202
184
236
238
207
269
207
228
245
199
215
204
210
210
223
180
201
194
234
234
227
227
205
224
267
191
238
176
190
242
178
216
237
171
183
140
188
212
167
193
232
189
250
207
189
247
185
166
165
223
187
180
209
142
203
172
148
215
167
265
147
140
205
195
191
210
212
207
187
215
145
227
248
204
205
272
219
185
274
262
216
228
178
280
143
235
140
230
221
143
180
207
200
231
233
259
180
185
201
199
181
183
221
197
144
195
214
257
228
187
207
160
229
226
216
197
213
161
153
220
197
197
227
200
178
163
228
158
192
230
192
262
210
169
205
242
178
254
234
136
240
108
202
207
230
217
209
196
160
190
278
240
168
138
207
207
230
241
194
171
236
163
218
223
207
162
220
177
231
181
226
161
173
205
218
209
202
217
200
242
179
223
226
227
261
177
192
211
228
182
161
229
205
123
246
173
216
270
208
209
162
195
199
242
202
245
258
227
227
150
205
187
191
256
240
188
187
197
174
172
239
213
233
129
186
205
221
168
170
256
260
212
212
146
232
125
226
265
180
149
157
222
190
312
185
214
131
182
177
137
169
175
212
250
229
195
254
190
220
245
205
220
193
207
247
166
196
196
245
222
189
172
245
179
212
168
185
207
231
215
200
220
250
178
217
145
210
209
213
174
238
261
196
224
222
169
158
270
187
260
200
184
167
173
245
159
208
194
204
229
215
213
224
169
188
156
251
251
224
103
154
188
243
126
232
233
174
190
172
159
194
195
177
184
164
147
237
158
238
256
201
223
215
151
207
228
214
162
205
227
207
209
232
154
163
175
234
212
203
148
184
235
172
141
169
216
241
190
221
190
164
184
199
184
195
282
158
224
184
208
219
252
217
233
142
200
200
270
242
198
168
199
190
187
188
199
243
218
202
224
131
236
166
236
223
211
116
159
196
181
219
165
235
251
187
151
232
238
224
206
259
205
225
209
234
208
243
159
221
224
171
205
243
215
186
228
140
169
139
217
180
215
143
203
203
180
249
200
203
183
119
226
177
251
223
174
239
231
226
195
121
232
234
180
214
168
197
249
175
206
215
259
218
229
197
193
235
201
159
188
161
169
214
214
173
169
176
266
213
207
207
211
178
185
210
233
216
241
209
194
186
183
174
225
208
185
228
141
198
204
210
181
199
224
186
150
220
142
170
212
196
209
179
194
170
208
236
196
149
208
211
188
206
254
219
160
239
191
238
222
162
228
237
190
171
182
172
195
212
215
168
204
181
218
154
203
163
201
157
172
209
240
213
238
228
215
146
169
153
185
203
249
208
178
231
125
214
176
206
173
211
237
230
232
205
208
208
220
226
203
223
205
174
203
217
201
187
173
263
225
185
235
209
202
242
190
232
231
237
194
253
199
187
153
188
205
235
225
151
254
238
229
168
162
177
215
246
230
207
205
222
204
220
216
213
208
214
203
204
215
255
165
166
187
222
218
166
185
229
157
190
210
136
112
214
212
205
178
246
146
253
205
213
230
169
229
196
204
232
153
231
211
253
183
185
209
216
189
180
136
207
204
252
242
207
256
198
228
231
187
195
178
214
190
137
249
194
186
200
223
170
195
241
232
216
215
149
145
176
241
180
174
220
215
208
199
223
305
223
224
257
187
251
153
182
185
217
177
188
174
201
195
192
192
224
234
187
219
189
180
197
202
221
201
220
165
178
243
177
184
167
214
222
201
168
183
184
141
143
206
163
176
200
182
149
220
192
211
155
139
250
148
212
208
208
210
224
212
222
208
215
186
173
232
224
199
191
258
162
190
151
155
192
200
200
199
203
178
246
174
248
196
207
178
178
152
188
191
215
192
231
252
234
208
219
228
176
211
176
170
232
216
266
196
186
204
203
173
240
223
225
206
207
200
216
172
128
215
143
227
214
145
237
186
182
210
243
210
130
174
268
222
228
281
196
131
249
235
162
207
180
210
150
90
217
168
150
213
244
241
248
165
232
251
182
172
211
206
259
249
210
224
222
174
198
228
199
208
241
173
212
184
220
208
199
228
225
180
147
203
189
245
173
132
159
175
165
166
141
154
203
162
214
236
168
166
139
214
246
231
232
220
219
214
211
226
196
245
244
248
166
183
182
222
175
228
131
208
228
251
186
155
182
186
171
250
197
229
213
173
237
245
181
271
125
206
157
193
219
226
147
146
202
185
196
265
164
181
214
238
256
202
230
175
242
219
206
265
216
221
189
179
252
237
211
216
170
157
196
252
215
230
156
192
203
153
233
208
180
231
174
206
196
252
205
275
149
175
231
224
236
146
187
193
188
196
157
215
192
200
196
163
209
182
237
182
177
252
169
215
166
212
168
254
207
168
169
223
167
240
209
154
212
213
188
159
154
177
143
192
181
198
137
219
204
214
187
199
222
180
163
215
190
139
228
199
248
183
230
159
226
240
155
186
191
136
255
202
185
241
247
211
196
225
240
250
242
120
225
239
190
184
206
203
226
176
166
230
222
163
185
124
200
197
113
225
269
188
154
209
207
172
210
236
230
135
187
196
194
165
236
189
175
228
224
252
159
233
189
234
180
199
150
256
189
201
208
121
229
168
255
197
218
149
145
201
191
198
199
167
261
262
205
202
238
221
151
182
224
201
258
183
249
197
210
209
225
224
194
181
202
187
202
209
182
177
194
183
268
170
169
176
207
238
242
253
245
172
185
164
222
203
234
218
177
261
216
216
272
185
231
198
162
196
199
208
192
153
278
175
250
167
205
159
212
254
209
99
239
205
173
244
213
110
172
250
150
181
236
188
280
228
240
224
244
204
172
188
179
231
154
278
222
236
236
186
147
201
187
247
172
187
211
223
212
238
274
142
259
185
250
212
217
186
196
237
184
211
232
180
210
217
216
203
149
248
212
249
161
223
203
198
230
260
159
238
195
228
195
208
194
178
204
206
191
256
250
191
238
239
237
274
186
178
154
166
210
241
177
168
170
203
259
198
295
167
120
206
174
197
170
226
202
218
231
192
269
220
188
201
243
154
128
190
218
214
191
197
218
191
219
231
212
271
158
166
163
152
211
159
146
235
221
170
160
216
189
216
236
204
171
253
234
208
126
239
232
175
188
242
204
210
176
219
154
183
173
178
230
173
246
255
160
192
181
139
188
194
166
190
242
160
231
202
192
170
208
208
176
225
222
190
166
251
214
173
177
181
191
232
216
222
208
211
275
183
168
165
185
178
138
227
241
199
226
206
190
218
207
238
188
226
221
228
203
170
197
236
245
216
241
264
220
156
228
258
180
236
214
295
225
213
250
164
216
218
253
234
244
211
268
196
170
261
220
106
270
204
234
115
162
269
181
251
157
233
219
181
143
225
201
229
214
230
201
187
211
206
234
124
234
214
206
207
216
186
188
188
187
201
158
168
231
196
232
235
140
194
181
290
185
220
155
181
244
212
176
156
223
200
185
230
168
137
186
187
156
158
194
232
213
240
184
257
144
191
213
174
204
198
163
206
222
214
143
175
185
209
176
159
215
169
151
213
235
209
192
226
198
196
102
160
241
265
183
157
122
247
192
215
220
122
199
193
215
205
168
191
233
178
222
236
195
156
192
182
179
203
184
214
225
180
185
235
190
207
192
217
216
238
213
78
118
249
226
248
201
232
210
190
197
210
244
212
235
218
252
235
201
239
236
169
184
236
160
203
192
184
163
197
188
139
201
141
270
248
213
243
191
208
213
180
236
219
205
216
192
224
227
203
179
184
134
255
221
172
243
164
175
203
218
168
242
219
137
188
197
259
225
218
187
170
189
186
167
177
202
172
168
182
223
210
254
217
246
211
246
184
168
269
173
202
157
259
200
200
214
229
198
181
223
143
142
173
243
242
167
202
184
199
235
199
219
241
165
183
190
202
195
230
196
203
235
140
157
197
217
215
136
163
226
178
204
225
177
205
187
201
175
171
239
274
313
214
282
233
213
262
185
177
196
104
228
211
223
257
192
194
227
215
110
239
177
197
213
239
255
156
184
160
217
242
253
174
132
175
231
140
165
187
159
148
229
236
219
176
206
152
224
214
192
163
203
172
179
193
206
174
247
222
232
175
258
129
187
182
248
236
198
190
168
174
217
170
202
143
159
223
253
209
231
218
239
148
228
242
228
215
197
215
210
228
187
236
217
186
192
176
233
172
170
158
258
177
254
184
255
208
208
264
274
128
153
152
183
146
158
206
165
119
183
208
204
271
216
211
204
229
253
186
187
137
227
170
170
285
210
257
231
228
167
236
155
232
160
200
215
180
221
143
141
230
187
197
202
228
235
191
185
237
216
256
144
190
188
221
224
186
178
136
187
184
251
132
180
216
220
193
181
234
213
252
210
178
154
205
148
220
226
214
253
255
181
174
240
223
185
216
161
160
164
217
155
202
153
159
240
221
199
193
177
188
190
181
158
238
216
207
240
232
213
191
214
199
226
82
173
188
232
183
224
220
228
201
202
166
175
149
208
254
158
205
197
203
238
227
217
207
201
204
256
210
219
192
194
272
186
213
212
199
238
205
255
195
250
216
192
147
170
181
194
224
187
207
159
192
177
169
214
190
215
226
238
147
228
144
162
242
195
211
171
176
226
228
156
213
169
157
127
159
157
209
223
246
268
213
166
222
167
205
180
218
171
300
204
261
131
245
189
188
261
235
242
185
228
208
203
194
125
136
214
250
212
138
180
194
213
181
203
183
206
188
192
156
176
262
302
234
238
196
175
192
161
260
180
196
212
179
260
178
271
266
147
248
244
213
176
167
207
208
177
155
243
206
201
214
213
178
229
166
233
103
181
134
195
241
210
153
183
251
196
161
193
197
224
155
199
188
205
192
148
231
205
188
188
226
236
198
178
178
199
206
234
174
214
247
235
256
198
228
223
230
166
211
176
191
246
172
203
250
192
246
211
174
212
199
245
212
195
223
240
259
221
192
180
299
279
192
190
141
155
120
196
203
207
179
201
256
229
187
198
232
212
139
191
181
200
228
209
198
190
219
200
223
151
154
190
191
147
180
202
255
172
176
169
172
189
223
198
174
190
169
208
166
224
232
216
166
197
192
261
201
146
204
210
215
154
224
208
196
227
166
208
147
224
171
215
212
179
196
184
130
185
99
175
189
231
229
155
218
229
205
208
168
181
233
201
185
222
179
206
178
217
237
228
253
204
210
161
235
199
184
231
205
207
217
226
245
185
203
178
159
230
215
247
189
255
183
201
200
237
202
184
219
183
265
200
197
202
151
192
150
199
239
187
225
200
264
166
186
241
193
202
215
190
200
175
245
198
142
175
208
177
233
210
208
240
177
203
233
262
233
186
209
184
197
203
235
244
185
183
194
228
189
156
201
189
215
174
170
202
178
257
199
172
131
291
242
177
188
248
172
200
171
187
150
229
225
224
224
252
231
217
250
186
250
247
232
202
231
241
246
133
193
206
207
114
172
240
252
245
155
222
146
192
193
197
199
252
186
197
232
133
179
185
252
198
190
190
172
249
180
180
149
183
224
195
172
215
188
157
152
155
154
214
234
148
184
241
220
265
157
208
191
249
203
249
205
219
190
221
203
166
253
195
212
209
202
186
213
182
131
237
134
169
222
180
165
209
156
217
195
199
190
224
195
169
138
203
168
151
140
175
235
193
248
198
211
229
186
229
156
194
276
212
194
194
157
164
205
176
179
155
169
180
142
202
250
172
180
231
223
219
216
189
243
227
260
201
164
206
217
175
205
210
204
162
170
164
136
174
245
116
204
213
182
163
241
198
182
167
202
212
158
234
144
252
281
166
210
200
243
200
200
171
216
218
156
249
170
234
180
174
157
185
166
216
205
229
209
100
179
160
187
201
196
192
134
176
211
247
154
248
221
225
138
216
294
197
133
219
150
220
289
161
146
166
254
196
244
187
228
183
289
202
195
155
184
167
212
143
186
214
221
227
200
207
203
158
282
198
236
181
229
224
209
199
242
202
194
226
208
195
173
181
225
207
219
178
188
265
154
231
179
137
193
133
209
188
169
194
215
156
142
225
186
154
240
170
203
181
186
202
181
246
207
227
173
142
248
180
184
211
176
216
235
209
204
166
180
223
220
229
187
249
158
180
169
238
196
194
209
205
203
207
174
223
145
192
214
243
241
158
217
207
206
188
205
204
193
236
194
180
213
206
219
219
187
164
166
230
161
243
212
209
240
164
197
178
157
217
134
178
155
195
190
170
220
244
168
196
204
206
238
174
228
269
179
138
181
197
207
154
165
178
197
160
188
161
227
208
127
248
249
151
217
238
249
200
247
118
251
218
198
172
237
184
253
220
208
123
233
176
221
182
229
178
234
187
237
202
188
224
183
134
192
183
253
181
201
252
213
242
186
239
229
210
211
192
175
186
199
142
203
233
178
185
138
187
216
220
259
235
254
159
143
123
176
198
178
242
190
184
253
172
204
202
246
168
171
185
181
161
216
235
174
197
211
154
163
196
240
227
163
230
176
215
161
193
211
210
204
200
235
197
262
240
228
215
248
229
167
157
188
226
213
204
238
207
224
202
149
176
203
170
205
205
213
155
180
182
128
160
206
147
205
231
156
219
207
185
233
218
182
209
178
224
210
223
175
187
192
188
155
198
159
226
219
150
188
215
183
242
216
210
162
212
250
202
190
157
169
152
195
241
159
176
213
226
271
176
194
240
177
211
182
267
137
242
258
155
178
162
180
155
165
164
212
249
238
216
218
214
245
190
170
211
230
185
224
254
226
262
193
200
206
209
255
232
193
168
117
203
230
174
224
179
138
215
174
209
167
179
200
192
228
190
233
199
172
181
208
258
143
144
181
248
219
253
132
138
218
221
239
181
147
226
156
185
166
194
178
196
175
199
239
247
248
214
219
152
149
111
157
259
247
294
181
209
236
250
150
209
266
147
215
192
174
164
247
242
208
201
207
187
143
189
207
231
196
135
271
111
193
210
217
229
246
186
161
228
189
161
201
183
202
212
224
271
204
200
188
201
165
154
198
188
204
165
200
207
243
196
205
239
226
252
218
172
254
256
224
199
228
201
199
165
160
185
248
196
237
225
272
125
242
156
162
173
198
154
248
232
200
137
182
199
220
181
141
200
175
214
205
190
275
201
203
233
163
201
209
220
222
192
203
182
240
167
213
202
201
236
194
205
186
240
199
212
202
198
195
240
185
218
185
198
232
209
202
196
160
230
218
250
261
209
271
225
186
174
224
175
194
207
213
232
219
187
200
223
258
219
235
146
280
220
180
225
250
150
195
193
163
166
208
195
157
174
175
193
150
167
212
166
151
198
199
221
141
166
186
209
172
216
162
182
175
202
169
240
212
200
257
217
207
142
166
201
233
258
207
254
209
182
170
153
127
214
202
193
236
179
204
151
238
249
192
210
145
242
233
211
187
179
186
225
188
216
186
265
115
199
211
185
170
197
219
183
171
222
209
172
247
208
195
287
220
212
247
212
164
190
235
177
156
195
151
180
192
178
186
216
209
192
221
197
177
200
229
165
203
215
220
149
183
149
187
215
236
247
133
93
231
240
222
265
166
198
234
206
139
168
254
193
238
236
174
196
233
248
190
191
235
88
177
308
145
237
153
173
175
199
210
121
166
226
154
152
215
211
209
181
238
219
145
211
203
191
200
267
226
130
193
168
175
139
223
262
235
184
214
167
153
218
195
182
159
205
206
170
165
219
149
188
212
171
261
207
164
218
188
206
179
182
236
182
158
224
172
257
253
234
244
194
233
170
209
210
221
102
221
201
235
202
228
198
173
182
236
217
195
131
242
156
212
153
189
172
155
222
203
158
215
187
205
228
174
184
264
160
221
183
224
139
183
227
199
230
257
201
179
178
245
165
195
189
241
230
165
241
165
220
221
185
230
257
153
237
172
203
216
173
226
195
231
234
213
252
209
142
226
186
168
181
221
135
173
214
134
224
201
132
211
174
213
248
164
185
237
223
155
192
183
218
216
215
181
234
179
261
160
139
169
155
151
173
195
158
195
163
172
206
212
193
203
215
151
256
184
195
179
185
237
226
190
204
174
214
125
148
127
202
206
184
191
268
226
187
266
174
260
153
212
164
240
144
157
140
202
243
191
208
246
215
151
251
237
239
202
215
220
152
190
244
175
206
134
172
194
223
195
158
182
156
169
191
139
215
194
181
148
168
175
224
191
240
167
227
205
187
230
164
153
219
196
214
242
221
117
212
164
224
252
152
230
158
226
186
152
193
197
190
186
176
163
165
186
224
212
198
165
262
200
243
223
242
182
219
186
194
242
192
229
196
238
239
185
180
242
176
173
171
198
190
228
212
190
189
201
268
200
205
201
200
183
156
245
140
174
186
197
195
207
197
196
223
158
209
186
241
222
246
137
156
201
209
239
212
208
173
222
246
208
234
181
197
149
204
186
234
178
210
212
191
181
197
224
249
174
149
205
201
260
226
177
198
135
136
211
135
121
201
221
223
234
172
153
154
226
225
199
188
173
203
239
258
231
246
169
251
220
164
246
147
215
109
173
176
202
182
183
228
215
221
178
248
260
211
202
226
245
206
172
174
199
169
182
205
136
185
237
207
232
190
143
133
190
194
148
154
227
232
168
225
220
206
158
147
191
212
246
155
194
237
216
196
201
177
217
195
157
190
158
210
205
196
212
203
249
155
208
184
126
203
277
246
142
191
149
197
182
243
173
188
181
198
218
266
159
183
151
152
224
144
139
182
164
224
196
200
196
240
150
188
210
172
133
180
235
207
251
233
204
263
194
170
184
185
211
169
250
227
180
176
170
130
191
194
238
211
183
173
109
246
185
209
188
294
216
210
209
195
236
145
224
241
190
204
183
200
153
217
220
241
189
162
230
224
197
191
197
213
186
229
201
236
210
231
208
192
203
249
184
183
211
200
223
217
112
239
159
190
225
271
249
208
211
220
200
209
178
186
212
180
171
247
251
190
230
170
237
190
151
179
216
186
163
170
171
205
108
256
232
187
167
260
171
161
183
209
144
165
217
252
215
209
225
247
198
215
255
138
221
186
202
179
226
239
185
197
250
169
190
217
202
254
235
260
223
258
174
174
245
149
178
160
229
163
232
162
240
252
284
159
259
186
220
232
213
255
206
188
193
174
284
198
168
223
168
213
147
191
155
210
206
251
137
189
205
233
193
222
219
212
163
154
211
106
179
158
144
217
198
164
227
195
212
161
225
179
190
165
169
265
209
207
208
174
213
204
197
159
233
223
183
198
159
207
191
203
198
183
203
219
142
175
206
185
176
239
181
217
202
195
217
153
145
125
174
107
180
182
233
144
249
153
226
148
282
188
164
195
222
203
211
187
188
238
196
192
176
217
206
245
170
210
232
217
165
212
228
178
257
202
176
186
183
201
230
147
195
272
164
179
228
144
267
217
247
262
233
243
159
200
239
191
208
220
190
207
191
150
196
238
185
174
125
194
250
223
137
173
270
180
187
197
233
217
215
186
201
183
178
170
179
222
211
176
183
135
225
166
172
232
220
144
200
193
215
210
211
157
248
157
157
95
221
221
263
230
264
166
146
164
247
181
170
181
167
198
184
211
201
201
249
224
202
206
184
240
237
230
202
200
221
156
218
190
213
182
134
162
213
174
141
237
214
175
239
229
196
165
232
172
187
271
258
240
215
168
187
210
227
244
211
206
192
199
196
166
181
252
220
203
193
210
239
194
233
195
155
258
236
181
192
203
242
199
234
180
207
162
203
195
189
218
238
170
201
201
222
176
186
220
182
195
174
150
225
215
155
117
189
138
186
145
217
234
259
177
203
270
216
230
213
162
193
254
221
231
215
231
230
186
192
212
215
255
178
196
198
227
267
234
169
175
209
188
220
211
212
251
212
208
222
211
223
200
191
217
119
172
226
183
244
208
197
210
210
204
156
204
228
193
181
227
207
254
169
162
222
191
221
212
213
225
218
184
182
151
213
163
153
291
191
227
222
196
172
203
179
183
248
195
239
197
188
170
160
198
207
256
164
177
151
219
253
146
202
196
222
203
145
198
184
189
192
221
147
282
161
197
179
166
239
240
202
229
151
192
243
210
143
222
106
238
218
184
204
177
264
193
208
224
197
279
229
140
167
169
240
146
164
202
211
210
163
187
202
239
188
195
218
223
185
157
207
218
239
193
269
235
225
221
193
194
268
240
198
206
155
187
177
189
196
243
196
179
181
217
158
191
136
192
213
188
215
216
196
210
212
253
170
224
114
119
202
155
202
228
144
187
250
216
227
222
183
205
187
228
213
199
252
185
217
190
204
205
230
230
244
226
161
184
193
219
175
254
136
184
185
285
212
193
186
161
172
276
219
209
224
117
195
206
253
206
164
179
237
240
170
168
218
178
195
206
183
222
209
210
224
226
140
284
192
207
248
210
173
186
155
218
227
203
190
208
192
242
225
160
210
165
224
228
161
189
196
167
186
201
247
174
161
243
146
188
211
219
228
235
255
180
194
152
202
179
164
167
191
226
207
222
201
142
208
164
215
182
161
213
179
207
247
202
254
183
247
194
215
195
273
152
163
190
179
204
129
216
228
234
222
194
209
190
179
197
189
216
170
237
228
176
155
150
218
240
233
181
192
161
204
179
192
171
212
176
193
170
241
228
193
181
179
202
229
155
238
174
191
150
170
203
186
234
174
185
227
209
148
222
191
237
193
210
152
185
192
232
228
227
224
156
261
172
213
221
229
169
223
153
218
194
204
245
156
193
177
290
170
168
209
227
169
219
216
181
224
232
135
131
164
161
205
209
215
201
189
145
190
231
155
230
185
156
187
122
252
130
180
196
238
165
162
116
167
235
198
149
219
151
162
248
174
233
180
252
204
214
232
207
183
254
173
117
169
213
214
185
185
186
211
228
172
227
171
201
211
189
189
198
188
208
177
246
201
218
175
208
195
221
237
148
167
233
151
247
134
187
208
232
266
214
221
235
175
168
238
224
152
183
212
262
191
185
200
229
202
186
191
173
214
236
159
191
179
203
177
161
244
179
208
116
236
171
246
186
210
218
242
170
184
263
244
226
201
173
190
235
180
171
227
191
241
211
158
193
171
191
182
148
107
196
241
208
207
199
241
169
199
207
196
138
183
177
250
206
230
222
243
224
240
210
204
212
177
288
186
247
153
263
235
215
251
219
145
232
187
203
224
159
162
282
200
259
181
258
199
231
204
208
183
168
201
184
140
179
198
142
161
246
177
193
196
261
251
162
139
156
238
225
159
195
108
204
217
198
221
163
182
143
269
215
186
216
202
240
170
195
184
194
217
205
237
178
218
215
158
172
195
166
241
196
174
213
179
213
169
242
177
229
262
219
226
241
274
262
164
248
181
203
174
187
162
129
189
220
208
224
259
213
218
194
135
173
220
240
230
196
192
212
170
178
255
234
189
209
113
243
160
238
235
193
155
215
198
194
264
207
185
259
189
196
236
148
194
171
218
232
215
226
251
215
218
210
178
155
224
173
213
214
232
210
199
231
165
175
231
228
171
243
217
177
239
163
160
261
292
181
228
241
177
146
278
173
218
197
218
194
210
160
208
203
236
243
191
242
174
220
203
231
249
234
217
229
265
200
218
190
237
172
191
239
225
228
189
237
196
175
178
184
168
248
205
254
163
186
178
209
226
217
216
197
225
193
177
229
134
149
149
184
166
178
120
177
216
261
193
220
173
206
200
229
244
183
204
160
207
222
254
173
202
201
177
251
195
181
223
202
140
150
193
206
212
185
150
162
151
239
151
222
258
150
190
267
101
159
209
165
173
162
185
230
235
146
190
269
204
162
136
222
170
243
150
186
244
205
221
142
216
175
183
236
191
231
153
209
205
191
180
241
204
185
272
156
265
230
157
196
182
204
187
192
225
186
239
237
238
161
220
166
148
191
243
186
222
219
174
227
146
163
201
207
193
240
205
252
215
209
223
206
268
211
192
273
165
202
198
132
170
211
187
201
209
224
177
249
244
200
239
215
222
183
195
184
197
220
146
177
224
197
217
204
131
231
236
240
186
205
210
205
184
201
203
154
208
154
290
239
225
241
239
217
240
118
213
229
280
167
188
260
214
227
226
237
245
223
275
219
274
235
248
219
212
200
182
228
233
215
168
170
159
240
179
197
173
250
172
171
221
139
189
171
182
161
154
181
139
194
245
266
176
182
164
184
171
229
183
215
206
198
252
235
189
221
165
220
246
140
256
241
232
187
240
254
203
230
133
173
180
204
162
160
236
182
221
195
228
195
244
208
219
207
188
200
164
138
167
208
207
200
199
116
192
291
213
167
190
194
223
188
162
220
241
154
181
230
252
191
220
281
164
156
156
193
204
189
247
215
209
140
202
189
130
220
263
238
213
222
234
229
168
241
238
182
174
234
225
191
241
213
178
205
203
177
172
197
193
148
187
184
237
220
225
110
150
249
186
175
207
185
226
246
218
190
205
217
241
195
162
258
139
186
177
206
207
160
173
191
205
245
252
259
265
226
207
245
213
173
214
220
161
210
187
222
192
201
210
251
214
170
222
208
198
177
251
220
181
199
154
229
223
183
191
211
204
225
165
135
210
245
203
220
134
206
191
223
176
180
153
162
222
179
219
170
187
183
195
207
246
244
180
165
202
191
192
185
237
148
138
242
189
96
196
207
222
179
187
147
165
209
156
245
264
187
152
171
152
137
196
203
125
235
189
206
211
168
171
164
180
220
198
185
184
129
152
189
192
214
235
208
208
237
168
161
232
178
195
226
241
171
161
241
190
228
245
136
234
166
177
217
233
171
152
173
175
180
181
202
144
197
221
209
219
240
242
203
212
140
191
204
152
179
245
224
179
138
250
215
217
251
250
204
200
196
150
154
183
179
255
221
160
171
176
192
160
239
228
224
166
144
237
253
155
167
209
176
274
191
201
220
197
157
137
187
309
189
198
174
212
161
210
201
191
169
181
223
198
150
197
213
218
198
259
259
154
232
185
172
121
206
201
194
245
202
182
219
191
241
198
159
196
157
248
208
238
233
174
212
148
238
116
194
191
190
210
165
224
158
185
173
234
177
155
239
231
193
165
184
229
244
209
256
184
185
174
233
164
194
218
172
185
216
237
213
238
207
194
153
212
215
247
239
200
263
239
152
208
230
167
236
153
179
170
245
214
215
224
222
176
229
229
206
263
204
185
248
228
230
194
212
191
230
223
122
147
192
140
204
200
202
155
104
192
221
163
170
234
208
170
148
137
171
264
214
254
157
226
185
212
191
221
213
224
211
176
201
214
184
194
141
132
216
142
161
207
231
204
175
131
268
202
226
242
176
206
192
166
234
133
161
197
183
173
239
150
218
171
171
178
221
206
215
205
185
167
203
205
222
176
218
214
292
135
218
194
192
242
176
165
181
219
234
181
206
155
224
191
196
230
207
188
185
233
217
188
176
201
194
211
232
198
227
266
203
246
156
181
209
266
244
169
240
235
176
169
148
214
163
204
245
232
235
179
173
154
224
240
134
214
237
220
185
243
259
133
189
170
260
228
266
200
213
175
193
255
181
253
237
162
158
182
199
141
181
190
151
201
177
131
199
223
249
174
232
201
230
205
204
167
144
181
212
245
194
207
156
243
101
192
234
171
248
210
258
214
237
168
175
149
122
182
253
214
189
214
154
156
211
179
247
189
221
221
175
256
208
180
223
202
268
181
202
183
221
177
218
155
203
226
152
204
175
166
156
176
220
212
169
195
174
215
185
271
194
188
187
255
172
245
158
173
217
190
209
235
182
197
225
209
255
146
148
241
216
191
255
220
193
235
206
210
198
158
151
219
166
209
142
266
215
197
156
198
259
244
232
211
243
168
218
166
187
149
194
198
149
257
233
188
211
202
250
165
247
204
203
244
174
243
204
206
212
163
194
179
178
155
170
247
187
198
220
197
168
259
229
190
237
252
231
210
209
272
277
210
221
228
299
188
264
109
186
244
237
221
189
238
206
154
199
239
164
231
177
240
187
175
214
204
229
181
182
184
141
187
180
219
173
164
209
217
211
179
226
238
188
199
162
105
139
209
171
209
154
216
175
162
185
199
186
222
145
234
135
209
162
213
226
193
203
267
131
197
179
201
226
147
143
178
245
225
191
224
251
171
188
228
238
214
219
250
139
198
194
216
193
181
228
228
210
183
222
181
138
225
185
185
259
205
175
203
286
208
209
161
256
218
169
256
232
217
217
202
246
113
185
150
148
222
208
238
178
196
227
150
268
165
190
171
153
185
237
170
216
227
185
189
173
231
207
215
217
208
184
168
214
221
228
158
239
197
223
206
152
227
205
241
193
198
208
216
190
207
224
230
198
193
220
188
162
188
219
219
181
204
229
146
235
174
249
222
222
202
227
218
224
221
196
182
215
236
232
184
105
225
204
116
185
203
233
216
160
252
236
204
234
164
164
154
198
233
166
204
174
263
237
182
170
221
217
164
204
142
197
233
176
157
176
144
224
213
221
255
118
204
187
227
235
187
211
147
178
230
257
199
261
218
174
131
254
181
170
209
207
215
210
234
158
249
159
164
149
183
190
208
181
209
159
220
130
207
205
214
189
239
189
186
195
179
215
196
200
104
177
183
227
241
196
174
240
211
160
149
228
156
167
186
205
191
168
235
192
208
150
228
248
230
185
207
119
251
154
220
190
184
220
162
250
156
147
224
211
192
264
246
219
162
205
168
265
195
264
232
203
195
247
159
227
238
218
223
149
215
238
186
259
198
206
240
217
179
192
174
228
211
190
213
227
143
180
175
129
146
202
203
139
193
202
159
182
179
219
230
180
232
216
169
206
187
240
193
198
209
173
220
160
163
257
161
168
197
138
205
190
222
156
225
241
246
198
153
231
222
212
236
286
217
185
176
186
150
254
230
168
167
203
218
158
192
211
187
248
119
163
243
194
214
163
157
206
228
174
197
207
179
230
246
205
217
203
260
207
179
192
260
201
185
192
200
243
201
250
169
238
225
160
284
153
202
221
188
141
179
185
237
223
195
209
213
234
214
215
282
221
197
243
211
199
188
232
190
173
270
189
253
234
188
229
251
215
219
234
153
219
188
197
169
216
216
159
204
158
130
204
136
174
186
218
250
166
208
250
261
195
203
186
226
191
201
180
180
215
253
146
197
215
189
237
197
221
213
130
202
265
192
228
171
123
242
160
215
235
190
242
247
202
169
238
207
175
189
154
240
140
90
192
229
163
145
201
172
136
218
152
174
145
200
173
167
229
170
213
163
247
236
210
212
199
133
208
240
175
168
176
152
139
204
163
247
218
157
182
218
200
227
232
160
212
202
147
189
222
179
202
205
237
192
203
205
166
253
175
195
256
168
232
214
286
172
188
199
253
104
226
191
170
211
176
193
186
286
259
193
190
229
218
196
205
201
126
250
272
237
229
206
172
149
173
259
214
150
244
208
171
222
199
210
184
212
227
200
172
272
210
167
241
213
233
175
201
170
182
195
184
186
268
220
206
177
168
154
213
159
214
231
203
151
157
221
242
198
163
209
165
177
202
221
146
187
195
228
220
196
257
203
225
212
240
238
131
235
179
183
196
204
197
185
257
193
201
198
165
229
257
166
288
187
217
204
139
162
159
242
214
264
268
182
208
183
209
229
248
209
130
154
222
236
121
221
158
177
205
265
188
231
221
221
233
269
251
145
205
124
198
220
183
207
217
204
249
162
253
126
197
155
209
173
222
223
216
200
242
181
184
215
209
181
141
174
236
193
245
162
169
206
202
212
241
228
251
131
197
204
156
220
244
150
185
202
175
182
206
251
173
114
206
256
194
191
188
189
191
217
217
243
196
155
175
253
211
209
225
211
246
225
237
228
233
178
189
174
209
143
227
87
179
199
205
244
220
232
204
235
179
141
228
193
193
170
240
133
188
153
169
213
111
260
154
207
204
205
185
214
228
196
238
185
187
221
209
236
201
220
206
178
216
178
231
139
183
225
176
208
204
202
211
220
180
169
186
229
190
190
225
173
182
226
174
222
181
207
215
221
178
214
183
161
226
207
180
236
204
181
216
252
227
197
209
213
225
174
184
197
174
166
168
163
224
228
227
194
223
116
227
177
139
135
240
274
191
193
188
252
192
194
279
221
257
214
207
171
270
202
202
169
249
171
195
210
209
187
133
232
187
200
188
170
153
226
232
168
163
192
204
166
163
213
154
154
209
236
183
140
243
227
213
190
178
240
229
245
225
148
245
216
237
176
210
230
245
233
195
165
162
244
228
215
205
234
142
164
241
198
212
273
250
179
191
165
194
200
142
249
234
234
201
238
178
267
209
234
217
153
223
225
227
189
188
209
184
218
195
165
203
189
200
168
195
254
207
166
218
216
162
217
194
247
176
231
187
200
225
233
259
217
170
178
198
184
168
224
197
159
183
185
147
201
193
193
242
238
194
237
201
175
227
264
170
163
201
204
177
232
205
166
158
246
231
153
176
198
221
116
177
162
186
234
112
211
166
217
245
166
226
120
246
177
216
181
176
150
205
172
174
180
243
223
199
191
180
226
208
233
229
205
151
156
238
259
224
220
204
230
164
227
153
103
256
210
219
217
211
219
181
191
260
171
216
181
168
107
218
153
150
177
232
229
232
153
191
216
244
196
205
224
133
149
184
202
293
184
161
144
168
120
220
198
164
184
215
235
172
191
134
217
199
208
203
181
233
189
143
246
208
222
192
225
213
258
184
210
167
203
211
202
185
204
181
197
179
204
206
176
225
215
151
206
216
198
274
214
215
219
199
175
214
146
203
200
137
211
209
193
211
224
201
249
220
215
171
222
146
252
203
137
211
152
181
174
230
226
227
220
192
247
187
172
149
244
164
126
242
84
241
150
172
204
203
272
213
150
221
142
212
174
177
232
233
156
230
223
230
171
253
237
213
228
135
206
194
205
183
202
256
183
244
232
139
155
243
258
244
208
151
238
180
209
260
230
225
225
186
138
129
197
270
244
153
251
220
183
210
231
174
196
199
202
252
170
174
266
187
167
219
235
206
171
190
214
196
192
159
173
256
179
211
172
204
136
111
207
193
245
209
260
175
171
246
224
243
222
260
189
145
179
177
227
152
258
132
238
236
264
249
211
184
210
148
175
221
237
216
248
203
190
144
252
194
219
207
229
154
170
231
254
165
209
194
185
246
145
224
220
206
172
112
133
189
192
183
199
231
174
194
164
256
240
206
175
231
228
225
217
269
228
271
168
234
249
294
199
259
195
187
223
202
184
226
199
178
245
231
193
182
213
246
178
221
167
127
184
167
212
184
215
238
174
207
210
208
211
192
156
204
164
193
158
208
213
188
199
209
197
222
213
210
186
213
234
193
221
240
252
186
186
158
209
140
186
221
193
147
192
216
252
191
187
197
213
198
149
166
156
127
201
236
247
205
265
100
205
167
231
208
177
94
184
227
100
227
179
217
147
208
223
253
170
180
204
204
208
224
246
212
203
202
209
127
177
169
199
257
180
197
197
175
202
210
192
195
216
203
222
172
182
243
139
199
212
190
251
243
154
151
209
197
213
176
223
166
175
119
221
243
215
241
298
209
215
121
201
183
204
223
231
161
210
143
197
170
192
219
239
209
189
175
199
231
159
202
240
226
180
189
205
265
194
217
269
191
148
205
280
263
208
246
217
204
201
150
174
210
227
142
187
234
217
212
194
199
216
196
247
178
213
244
229
203
254
199
182
197
204
264
152
253
196
218
165
144
216
220
254
219
198
170
187
232
228
209
206
192
262
221
194
169
228
182
238
198
195
243
306
192
216
170
167
213
182
143
252
208
262
153
238
201
273
254
171
183
177
182
169
255
232
194
203
211
176
238
200
190
169
185
234
166
161
194
248
226
180
139
204
128
232
258
244
139
215
170
160
233
126
232
198
201
217
228
205
255
218
146
146
176
202
185
203
195
190
196
192
259
221
155
143
141
163
210
233
183
240
221
203
264
155
141
194
215
209
275
214
250
137
205
194
180
122
199
196
178
239
173
237
256
170
212
267
153
218
246
218
161
184
206
233
157
232
202
220
204
182
195
134
212
169
216
233
227
150
153
166
209
209
205
172
203
169
176
190
257
173
238
165
155
178
189
203
229
212
173
188
266
212
201
228
134
214
226
202
174
233
165
265
242
157
237
186
126
215
245
246
227
209
219
169
198
174
200
109
223
252
205
172
169
258
173
196
244
188
249
95
197
189
200
195
200
237
245
222
296
175
213
244
199
247
232
175
191
238
214
148
187
231
187
206
173
183
230
187
163
228
204
171
202
162
187
180
208
213
158
224
249
210
207
190
187
214
222
135
162
229
225
183
182
205
230
168
214
226
215
157
206
210
149
267
176
247
170
194
168
173
185
293
189
227
178
228
194
213
200
226
130
252
198
183
175
214
142
209
195
185
182
204
252
244
184
202
216
195
198
195
149
169
190
273
203
218
246
138
196
193
171
221
198
215
209
223
220
214
190
194
256
230
164
221
216
211
261
220
188
216
208
219
223
231
153
235
162
193
201
234
204
194
250
190
246
213
251
219
203
157
231
168
210
205
228
206
250
195
197
216
204
142
189
218
226
175
214
174
179
173
137
177
225
232
183
218
160
207
171
200
239
193
177
162
153
192
220
205
206
141
238
245
169
264
190
218
218
178
184
209
207
254
259
137
224
207
164
174
206
153
159
207
237
184
228
229
206
207
212
98
182
226
73
251
226
204
235
185
186
128
204
243
128
180
194
170
129
230
200
176
191
183
150
219
254
235
175
244
146
209
181
196
228
174
202
211
209
225
265
220
213
219
190
182
190
173
240
235
207
203
181
186
214
219
183
185
184
229
189
212
250
204
164
170
234
177
230
173
202
173
172
248
182
217
189
232
160
202
216
172
211
231
150
206
226
236
203
176
137
208
236
188
155
220
208
224
151
205
194
201
189
183
257
150
214
159
170
233
184
210
211
202
188
172
179
206
196
112
201
225
223
206
247
163
253
191
209
218
223
254
235
205
192
258
253
195
192
151
178
192
223
165
215
228
199
181
233
170
213
253
167
206
205
186
199
168
170
246
237
246
212
201
166
226
223
280
165
222
196
234
223
256
174
162
198
210
203
231
226
195
187
181
242
221
199
170
245
244
155
228
245
125
205
163
218
142
179
225
189
229
165
195
196
183
197
164
198
214
151
216
254
155
163
208
111
186
211
177
199
156
263
248
255
179
225
163
214
181
161
208
236
222
185
202
221
187
201
100
233
238
208
196
186
235
218
200
243
244
204
210
212
197
160
179
235
219
199
197
234
198
170
223
245
245
191
226
157
147
190
156
215
215
243
176
185
239
204
228
143
134
199
212
199
178
212
198
210
192
154
217
222
203
215
221
210
275
214
162
277
231
202
247
257
202
213
155
213
186
154
146
241
219
228
196
177
237
177
205
239
224
197
243
213
258
180
231
174
208
187
205
167
247
190
185
173
235
159
177
148
263
221
188
178
230
191
208
196
242
215
221
216
211
233
153
196
227
207
173
199
204
195
231
187
229
195
224
170
235
130
247
234
222
252
140
151
236
179
169
238
193
238
237
227
206
274
162
192
234
238
157
204
147
165
172
183
216
159
227
184
203
217
162
179
197
205
257
206
245
196
244
221
221
236
152
230
191
155
148
152
190
145
143
184
227
159
232
172
200
186
162
141
228
175
248
264
211
197
232
121
184
215
272
185
200
237
215
234
232
253
225
218
180
203
171
137
190
130
201
174
196
192
185
177
212
238
210
247
188
158
193
213
187
242
168
180
245
170
160
141
149
231
182
219
208
188
246
141
225
140
226
157
153
182
188
253
249
204
278
260
220
175
194
216
223
217
152
191
240
183
249
201
264
210
192
137
190
139
221
164
184
220
192
179
177
203
175
186
200
165
213
152
170
242
208
217
191
254
199
212
160
217
205
227
211
161
159
246
195
236
185
240
237
187
143
237
263
213
214
217
177
187
170
228
150
212
175
166
194
204
208
246
240
168
170
239
183
193
222
190
214
183
220
194
185
191
133
188
199
254
261
176
237
228
225
181
219
211
237
221
196
228
215
242
241
184
149
215
219
162
204
240
199
225
174
233
164
196
175
176
166
196
216
143
211
179
225
242
211
258
218
213
273
251
189
207
202
200
171
143
182
165
240
233
175
201
223
215
234
186
164
185
250
232
169
229
223
235
187
131
207
232
181
257
181
248
104
271
228
201
210
201
219
177
191
167
201
232
228
222
214
211
229
197
250
210
200
245
208
206
209
158
243
136
214
202
206
184
121
176
216
260
210
255
173
226
179
204
174
217
188
181
211
207
199
150
243
163
164
250
195
176
228
276
194
190
185
174
211
224
198
195
163
232
264
198
259
146
188
196
179
227
177
245
194
157
156
183
182
224
213
236
219
196
185
282
135
134
209
127
144
176
248
170
214
192
226
147
233
195
173
191
153
157
201
145
185
212
167
241
166
185
190
236
250
181
151
176
205
212
126
210
210
273
230
230
187
206
204
226
211
192
201
173
212
216
172
224
205
149
182
129
185
192
212
182
196
226
161
142
170
266
195
209
204
246
211
229
187
195
186
271
148
180
219
208
245
246
204
175
178
213
176
185
195
237
230
175
140
197
202
233
190
152
176
191
153
206
205
167
233
162
174
187
173
179
222
170
212
233
229
204
184
173
183
218
207
199
218
185
197
200
181
239
218
191
127
240
266
188
168
189
167
250
151
224
190
163
238
146
249
142
233
178
245
179
225
221
247
244
237
155
208
149
167
219
214
190
183
194
231
195
157
186
190
199
197
238
232
215
158
135
174
153
234
191
213
249
141
211
219
210
186
222
250
205
229
229
179
165
190
127
224
195
232
195
277
170
262
177
113
218
197
209
178
232
240
208
239
215
152
162
179
146
154
205
231
227
191
170
227
202
194
207
225
129
234
218
250
173
235
140
194
158
200
181
217
240
198
222
220
258
194
185
257
197
197
219
188
143
169
185
223
236
247
204
273
173
190
222
205
205
214
185
225
249
96
173
135
186
194
204
220
198
206
219
197
198
231
185
242
250
197
222
202
135
201
177
207
171
197
242
213
230
141
236
226
219
188
226
188
194
239
218
234
140
158
197
177
175
209
184
259
242
248
290
182
210
215
217
129
228
207
158
240
158
181
218
191
175
196
216
207
166
255
147
243
214
228
214
170
204
195
201
174
222
166
226
200
223
263
243
245
227
217
162
169
224
170
199
189
228
240
224
146
221
195
202
195
163
247
152
227
180
220
178
200
194
131
178
153
214
231
259
242
151
169
228
209
254
224
117
167
210
158
204
209
180
255
271
205
189
223
245
262
204
178
207
181
171
194
218
226
197
130
173
191
205
205
163
189
132
186
210
189
237
248
192
156
120
223
154
203
223
177
180
132
207
224
205
138
217
179
229
257
262
119
235
184
183
169
188
233
227
202
228
218
213
238
236
260
205
187
181
261
222
197
231
231
252
101
135
227
203
237
189
289
203
189
210
208
180
242
194
175
171
183
153
180
221
211
211
202
201
228
193
227
181
193
200
198
202
186
225
167
252
142
254
180
227
206
274
226
230
197
220
184
222
207
198
253
234
146
250
170
221
230
151
239
208
229
239
234
196
194
153
228
173
217
175
228
197
226
207
211
246
219
242
184
169
207
223
162
210
174
194
254
188
206
214
161
184
229
213
199
202
187
189
261
232
157
172
231
150
240
213
189
200
181
222
242
187
206
249
216
258
194
229
224
173
205
158
225
175
168
159
216
232
202
193
249
162
161
190
188
254
185
225
248
195
259
218
201
163
245
177
164
224
257
243
182
179
266
213
160
196
191
149
193
209
263
150
225
255
216
196
218
186
261
205
220
275
226
210
213
192
190
187
236
222
194
185
100
179
260
207
152
202
207
137
153
149
158
182
184
207
199
184
165
132
232
229
168
160
182
178
115
253
218
184
155
201
219
203
147
223
180
206
175
245
208
231
179
168
237
200
224
197
172
220
197
208
203
195
226
137
159
202
204
237
179
185
238
150
224
256
219
191
179
213
151
141
197
201
164
209
183
221
237
250
259
208
188
210
245
192
181
182
168
170
203
204
176
162
185
234
223
162
152
154
140
172
170
238
242
206
214
221
246
150
207
206
238
215
210
250
212
198
190
194
208
208
224
200
203
168
200
194
270
242
169
169
221
257
158
240
142
184
202
233
124
225
227
207
215
194
218
207
213
199
210
238
227
199
191
174
234
210
192
177
183
227
180
220
198
190
182
171
173
216
204
159
181
222
118
213
216
192
165
209
220
270
202
205
210
239
253
150
173
223
192
230
187
183
168
200
255
180
177
191
264
194
186
229
198
209
233
229
261
194
151
98
202
206
274
211
150
250
254
218
157
223
196
177
217
192
229
210
244
243
180
242
263
194
227
219
247
140
222
198
161
210
217
207
219
187
242
197
215
210
170
255
131
255
198
242
105
209
223
231
295
197
168
193
169
242
168
148
154
200
208
220
205
215
161
274
231
185
171
203
192
220
174
203
209
231
186
182
167
208
193
197
209
140
147
143
157
159
96
169
200
218
210
221
225
166
258
188
228
195
230
211
200
161
241
213
245
209
207
202
193
199
194
172
259
200
146
213
197
232
171
209
160
188
180
244
229
150
187
184
233
217
188
193
192
275
174
205
221
195
230
183
213
225
290
233
231
221
232
222
99
188
168
248
211
156
196
188
184
198
138
274
238
143
239
178
253
190
171
192
215
190
200
212
123
170
206
236
187
192
211
160
216
175
158
185
247
141
229
249
166
167
185
131
220
200
146
183
133
247
231
234
239
207
154
214
250
209
203
222
186
220
197
254
285
224
202
194
142
179
114
249
174
197
175
144
209
188
207
144
171
171
180
165
229
274
232
207
203
174
241
153
222
251
225
170
217
190
202
210
201
114
213
172
174
161
151
279
184
175
236
169
198
191
263
244
209
227
144
234
219
260
217
164
219
185
188
250
169
171
207
207
123
224
154
280
237
214
191
120
238
241
164
189
211
186
217
212
146
195
170
208
164
214
167
228
208
183
198
235
191
151
164
210
215
220
165
212
248
170
186
160
237
155
242
168
211
161
174
210
206
150
166
210
163
201
146
237
194
204
198
251
108
166
167
235
170
173
157
187
151
206
159
262
148
270
145
213
212
216
184
173
223
229
211
234
199
183
202
250
158
223
236
205
265
236
200
220
253
218
218
236
164
244
249
200
156
190
176
204
183
198
219
172
146
221
270
183
194
241
222
191
214
217
269
179
159
215
181
132
243
189
268
239
231
140
205
229
212
186
198
191
159
185
203
173
194
228
230
213
132
212
250
189
216
189
190
228
263
173
210
216
232
234
191
191
242
217
183
201
277
181
184
222
190
239
147
201
192
255
189
201
173
242
167
178
199
195
201
199
214
176
204
167
254
230
196
226
187
222
162
186
242
216
192
205
221
225
253
232
250
227
262
236
141
105
202
183
242
213
184
175
246
191
227
169
172
238
249
202
247
227
247
186
195
180
229
198
205
190
207
196
162
171
172
191
165
101
176
247
231
149
186
196
210
202
140
141
123
163
136
186
199
179
241
171
201
157
195
158
173
186
209
189
198
182
219
233
194
281
232
195
244
150
212
127
232
205
188
196
205
260
231
204
233
196
214
212
200
203
196
203
150
223
168
172
189
252
224
196
212
209
197
158
229
219
205
180
226
171
171
153
188
183
176
195
179
245
188
269
236
206
207
217
212
191
147
254
264
236
183
139
225
175
231
176
204
208
217
194
237
218
246
246
192
165
218
163
182
192
218
161
206
207
197
215
202
198
179
213
217
161
205
237
230
161
235
246
257
270
171
157
186
227
217
203
145
237
284
243
175
213
170
232
212
208
204
229
275
238
223
165
203
223
204
160
228
162
119
180
235
217
236
262
158
162
248
175
215
173
183
245
205
198
206
202
212
198
223
224
147
203
195
213
218
215
249
235
174
194
188
202
180
183
237
178
158
209
219
186
153
231
270
179
178
188
185
203
198
246
161
191
249
219
213
187
174
153
204
141
168
212
210
266
166
235
233
178
154
214
215
154
206
147
168
260
169
197
236
138
142
202
192
195
213
227
182
192
222
164
201
216
132
201
225
195
238
172
140
199
222
238
183
242
252
214
204
198
137
242
248
217
244
212
153
173
209
186
222
204
199
176
238
209
125
275
205
191
246
213
210
195
175
217
225
174
240
208
197
182
203
218
213
269
163
198
244
180
256
214
165
185
220
171
191
254
192
188
186
170
172
232
140
227
93
173
223
202
152
243
245
208
230
203
179
279
193
232
228
229
191
108
227
248
218
178
247
249
202
254
228
189
238
236
235
246
229
237
168
281
244
161
133
172
201
219
249
208
161
248
198
199
215
205
172
242
197
231
118
214
198
219
219
237
226
251
209
179
218
187
180
206
224
174
199
195
196
199
206
202
206
244
185
234
233
278
191
256
196
197
186
216
211
174
222
212
281
275
114
223
180
252
216
206
268
192
184
163
197
204
229
233
168
182
255
236
203
203
196
188
184
207
137
227
193
227
222
131
154
223
195
134
227
147
191
219
244
186
200
210
175
224
228
142
169
227
178
218
216
198
225
137
169
130
256
180
185
200
208
173
222
205
170
182
174
170
232
165
209
189
196
270
238
154
208
258
166
217
132
127
246
197
188
201
199
165
238
205
230
260
224
160
236
180
187
175
191
220
184
193
299
251
225
238
172
194
181
243
208
210
177
178
183
260
208
228
193
271
142
204
232
196
212
208
177
257
168
208
173
219
247
179
194
148
222
172
189
132
219
202
201
209
126
234
191
184
182
119
175
220
188
176
256
269
219
159
204
144
186
200
124
186
194
158
129
234
254
176
194
173
218
193
207
177
187
204
211
125
128
158
168
211
267
201
251
179
166
213
172
151
154
177
158
212
243
273
127
216
219
243
272
219
213
241
204
169
207
187
252
225
201
143
263
265
226
248
156
230
196
247
164
225
172
262
231
179
218
196
192
223
256
193
166
181
216
231
278
214
219
192
253
182
168
257
197
177
197
161
166
197
199
169
220
219
247
154
161
207
222
228
156
173
178
164
202
188
184
252
230
219
249
227
232
212
171
171
215
148
182
223
152
128
232
154
173
220
205
226
237
197
235
135
193
263
244
257
163
260
151
190
176
170
180
154
210
216
287
255
222
248
231
161
186
184
230
217
182
184
222
252
164
260
173
196
216
174
234
231
171
205
223
214
209
178
215
206
235
233
207
212
196
270
134
238
172
192
212
168
195
187
211
230
206
216
227
213
145
159
178
197
154
181
225
198
135
86
256
174
283
204
199
181
204
213
172
196
169
235
203
122
210
235
161
208
199
235
205
232
211
223
203
187
224
209
199
198
192
265
258
149
223
161
226
228
177
204
222
193
188
212
175
211
205
231
152
257
245
114
210
208
255
197
152
176
175
197
125
200
235
162
212
206
220
184
177
257
192
181
152
248
125
211
191
219
128
176
172
256
163
239
180
204
156
246
234
250
173
220
199
183
142
187
213
214
218
228
189
195
172
150
213
201
130
179
158
181
215
219
153
180
216
207
228
178
160
242
187
183
151
195
237
218
235
264
184
174
209
202
180
219
248
231
196
172
148
266
264
241
214
182
211
168
189
205
253
194
194
209
162
192
145
265
182
255
164
209
178
198
199
135
213
240
182
178
253
246
226
201
207
255
150
190
192
236
277
271
182
167
189
233
209
200
169
209
153
223
250
256
255
254
229
207
176
253
128
208
252
163
175
207
203
186
216
192
196
124
173
204
185
258
200
221
142
221
189
240
182
162
238
231
208
214
178
191
242
204
219
243
144
246
220
232
151
208
170
196
265
202
176
222
204
248
237
209
241
181
203
231
120
200
197
235
250
199
203
197
214
180
196
198
238
202
203
160
212
170
243
176
186
215
208
203
198
200
223
216
190
144
207
162
216
231
226
169
183
145
270
194
196
193
205
223
193
197
251
167
154
178
216
156
231
196
208
245
259
139
173
270
218
176
219
227
185
141
252
266
169
249
183
160
219
207
197
222
226
226
176
226
181
156
207
252
164
250
174
219
138
175
157
214
237
261
219
213
229
146
263
237
237
225
215
194
267
231
208
209
226
219
270
240
196
217
199
229
222
185
203
184
180
199
191
266
219
223
230
193
257
248
226
213
163
161
172
165
249
198
240
188
164
193
222
212
205
236
153
240
209
207
178
213
195
237
173
213
225
269
132
199
202
243
148
232
263
199
221
187
196
217
172
173
184
183
129
228
177
153
214
217
177
181
202
194
206
184
182
242
227
211
228
157
232
179
179
260
222
219
178
234
230
127
220
232
233
146
201
195
183
175
201
185
257
219
184
154
239
219
125
197
228
226
262
183
141
248
180
149
225
222
269
185
181
180
212
145
220
229
216
186
236
220
185
226
254
147
170
221
179
219
205
219
166
197
217
250
200
254
217
229
269
240
188
172
218
195
258
157
183
178
207
139
152
182
220
306
198
273
169
256
209
213
196
227
199
201
168
142
195
207
237
200
230
184
206
207
212
130
179
161
191
251
227
259
237
231
161
138
211
248
200
163
211
159
229
154
229
144
217
181
227
186
212
252
150
155
204
209
127
196
164
170
203
199
204
118
205
230
215
261
163
169
233
181
207
224
170
226
225
264
260
185
190
189
187
245
149
133
205
198
171
111
171
195
192
218
183
202
189
108
187
173
179
225
229
244
244
223
201
212
232
215
178
199
197
187
179
216
223
160
152
175
227
235
157
222
143
229
238
229
271
172
182
148
184
207
188
204
215
225
184
181
190
259
227
222
199
222
193
229
243
195
209
225
189
209
239
200
218
174
213
197
185
179
312
198
188
121
216
184
210
178
147
184
230
179
222
232
219
135
259
234
234
190
205
176
171
237
167
234
219
221
195
200
135
180
239
168
230
245
203
250
184
161
166
173
141
163
201
214
175
173
243
136
152
187
156
302
161
171
213
178
230
217
178
229
190
160
210
192
224
197
153
177
165
174
233
185
224
197
185
248
211
199
214
201
154
215
224
214
189
184
200
200
251
242
190
201
252
186
221
172
216
236
180
223
220
220
230
191
153
203
182
188
151
150
211
223
201
191
222
196
206
247
223
153
229
237
190
254
163
160
170
160
218
179
229
147
196
153
171
179
230
259
213
183
207
209
254
214
221
207
199
243
177
213
201
239
196
271
190
225
197
149
236
206
115
179
132
215
192
225
179
206
136
231
203
200
217
210
153
158
260
177
196
194
194
194
199
123
214
233
210
182
174
163
226
199
142
151
216
214
168
227
171
204
209
220
195
198
292
222
187
196
210
169
177
209
163
230
177
198
172
218
174
217
159
162
166
244
182
195
236
183
163
261
229
213
250
207
227
193
128
270
223
247
140
151
202
194
228
158
116
212
233
168
196
181
208
168
211
216
216
238
192
187
157
139
181
147
206
202
157
254
230
214
138
236
156
227
212
227
123
203
229
209
175
164
269
144
193
199
150
157
180
179
211
218
169
218
238
197
253
189
173
230
180
209
193
167
165
234
218
182
167
144
184
190
160
175
202
168
177
241
209
153
133
190
139
163
246
186
206
165
162
255
186
215
143
198
177
194
187
119
146
220
204
204
230
182
215
220
224
202
183
231
190
245
201
186
224
214
209
152
201
202
232
193
214
205
231
173
189
185
164
249
199
224
202
164
252
216
212
200
129
189
208
260
221
217
290
178
253
216
180
169
169
183
214
207
206
149
200
225
150
164
216
215
307
222
214
181
165
215
182
254
264
166
203
164
223
161
207
144
206
189
232
213
219
229
142
199
193
153
239
179
152
133
120
222
229
179
204
212
137
203
180
240
218
228
245
145
180
207
134
199
214
201
223
146
248
162
263
198
171
152
132
225
252
179
234
195
149
174
232
180
195
214
154
214
239
188
184
189
227
207
173
171
207
163
186
251
176
182
199
171
143
220
199
221
214
205
207
202
170
233
217
206
136
261
169
141
236
172
194
172
192
149
186
158
216
192
144
247
289
137
217
202
253
107
230
185
163
192
149
177
207
229
158
222
191
223
198
202
194
181
243
147
166
208
208
166
215
212
181
153
192
178
204
218
246
156
211
221
173
196
206
143
221
208
186
194
241
240
191
142
191
167
221
267
251
173
156
194
178
177
186
214
275
224
204
195
168
240
217
140
217
143
235
188
225
291
151
241
174
232
175
169
170
158
193
171
201
210
226
179
199
135
159
207
230
173
225
236
223
187
156
260
221
165
191
183
123
138
234
191
248
235
177
193
196
158
241
218
185
185
196
196
178
206
178
189
257
262
217
238
214
247
204
210
203
215
229
186
191
255
187
185
244
208
176
245
156
173
249
212
160
122
166
163
199
158
206
226
169
192
245
193
178
181
184
221
261
155
241
200
180
208
219
270
240
231
194
213
191
195
165
183
195
174
228
135
181
210
157
190
196
201
214
190
232
163
207
201
188
217
205
222
204
239
226
226
198
254
199
183
170
229
203
187
189
155
171
174
212
221
230
168
255
194
202
189
250
167
224
281
211
191
240
207
196
263
195
213
157
148
207
222
188
193
159
221
221
202
215
184
176
141
224
247
120
239
212
211
258
233
166
142
178
235
193
150
164
238
251
184
179
211
188
172
228
207
210
149
213
156
131
239
220
186
173
177
200
198
156
198
155
147
189
235
148
236
193
203
212
205
223
193
216
263
141
236
152
189
205
186
210
132
240
206
162
158
193
194
194
227
207
254
205
251
193
224
202
205
201
167
183
188
234
214
181
212
195
234
167
195
225
171
250
207
223
214
161
165
223
234
217
235
238
199
181
143
217
236
137
156
219
238
182
194
230
248
217
184
222
206
180
193
211
246
151
200
187
272
160
192
149
129
190
206
255
196
193
184
183
219
187
214
241
213
146
206
243
238
249
225
183
182
202
260
265
207
147
218
173
231
228
234
193
231
192
227
180
219
186
216
215
195
215
173
238
134
205
201
206
254
227
191
192
182
152
224
229
169
206
225
206
118
125
178
266
235
233
213
212
197
213
217
202
188
265
229
133
206
224
164
183
133
257
231
260
213
211
137
169
250
192
153
241
149
154
180
209
151
213
214
252
224
196
194
230
198
184
186
192
232
164
202
139
197
173
195
209
227
184
198
238
188
172
205
164
160
247
152
225
225
188
165
205
199
213
227
211
222
203
129
191
184
122
134
142
209
150
204
218
238
219
194
220
181
178
187
157
227
245
228
204
218
222
187
123
173
158
168
183
237
153
227
185
175
222
231
187
254
213
238
196
208
256
232
183
149
187
261
201
261
203
216
190
212
203
214
183
215
183
196
173
203
217
212
138
197
169
186
171
211
172
138
244
192
165
187
195
181
244
195
260
193
202
158
237
189
273
225
206
244
221
236
146
218
158
172
180
196
220
283
207
199
187
238
159
158
186
229
155
204
165
236
151
189
171
276
226
231
116
139
245
225
222
231
232
158
192
251
194
224
185
177
136
192
216
204
220
205
145
209
226
201
151
118
219
180
233
167
241
236
191
162
208
184
202
108
187
181
199
243
164
171
170
191
192
185
226
174
230
177
161
216
201
196
220
187
227
191
218
178
173
174
205
181
207
187
196
222
187
238
220
210
218
197
189
284
214
138
163
254
207
204
249
167
149
161
198
200
192
170
227
179
187
231
234
208
260
155
210
182
176
161
164
188
211
192
165
181
182
155
224
207
203
133
176
242
200
179
236
274
243
173
163
195
202
207
235
224
218
211
147
182
192
236
219
248
236
208
237
178
266
166
219
223
200
210
229
211
223
178
182
219
220
197
193
198
153
117
179
170
260
210
171
112
205
146
166
207
158
209
178
161
147
260
222
235
215
170
210
260
157
232
162
251
175
216
222
146
169
184
192
223
145
204
238
211
203
224
185
247
130
182
219
196
240
152
142
225
229
189
169
181
169
188
205
170
209
215
228
207
243
198
236
175
201
167
180
194
162
185
165
211
185
163
199
185
146
196
172
207
172
193
178
168
242
218
235
242
208
124
248
209
289
170
182
134
189
204
224
196
188
214
233
199
180
181
202
120
145
175
214
238
172
151
193
220
224
184
213
171
178
170
158
210
189
134
211
234
223
149
188
226
206
221
194
202
224
211
219
187
173
156
198
173
205
227
189
212
206
254
209
275
187
184
217
189
169
199
249
207
168
249
175
241
190
242
165
148
213
213
238
208
252
197
142
166
213
174
208
228
204
194
231
192
161
183
179
226
207
224
174
249
241
204
206
177
219
222
197
193
123
205
223
248
183
236
246
199
177
163
172
181
178
238
218
170
251
215
225
172
159
237
211
211
202
233
229
186
191
210
203
280
242
138
249
154
150
181
223
163
200
203
207
210
262
185
187
196
177
234
183
231
196
196
187
214
231
183
201
140
179
190
232
224
131
248
208
190
142
174
183
175
251
181
179
206
200
179
219
213
199
170
184
199
193
191
155
213
205
243
156
177
156
224
185
224
197
189
192
146
203
193
228
238
295
212
224
180
150
224
209
202
126
163
229
232
187
211
218
204
166
208
254
182
215
168
162
260
175
217
188
171
234
219
131
179
261
243
192
199
180
245
216
169
158
207
141
206
121
213
135
192
205
173
248
263
172
197
160
179
218
271
148
185
155
183
203
151
207
224
235
156
186
205
265
218
194
230
226
224
213
243
227
155
186
147
139
195
138
242
140
76
173
249
175
207
175
228
216
188
160
178
170
222
172
192
255
147
224
189
235
210
227
223
172
196
220
241
132
236
217
206
204
114
177
136
193
192
212
149
272
208
201
178
232
213
241
139
241
217
214
229
140
198
218
246
179
182
225
208
191
137
199
198
221
229
220
165
250
153
273
152
175
227
199
159
138
213
154
188
267
228
144
190
163
214
178
231
201
191
158
189
185
193
187
203
163
227
145
232
204
220
225
148
200
229
219
248
195
201
193
240
250
217
185
168
262
229
202
209
260
232
137
207
167
155
185
237
189
238
247
202
156
238
184
177
222
216
166
159
164
201
203
250
192
208
242
283
247
198
163
171
149
178
116
202
222
220
207
200
268
125
205
250
201
195
228
177
192
159
168
156
170
178
204
168
212
182
193
181
136
223
236
212
224
255
210
170
238
218
196
142
157
223
198
165
218
212
189
148
252
185
208
165
182
196
195
209
259
206
216
253
172
258
204
200
220
173
243
152
221
215
215
208
199
189
188
167
213
176
185
238
235
221
246
212
223
180
210
183
210
228
224
194
167
187
180
172
208
165
201
199
203
150
248
218
227
208
216
211
146
196
259
162
166
213
147
224
161
192
191
172
193
171
165
257
214
187
182
201
252
191
154
219
173
225
176
153
215
270
170
173
175
194
140
156
196
232
218
230
221
192
155
209
174
197
246
208
189
215
233
226
131
197
212
209
249
212
213
195
249
214
194
207
218
215
153
170
268
236
220
185
223
234
215
231
287
204
208
209
228
231
204
186
203
158
146
197
170
222
195
223
148
221
217
227
188
238
255
225
206
134
162
245
196
210
244
185
228
215
208
180
239
161
192
182
167
190
176
180
150
217
201
244
199
261
267
206
180
239
145
129
191
160
174
175
155
192
229
162
214
219
255
188
219
188
190
261
170
215
146
172
228
118
222
219
180
191
232
165
203
253
197
279
204
196
225
242
198
128
195
200
187
230
247
176
164
213
225
181
160
191
234
231
166
194
175
198
209
240
180
173
226
158
189
189
186
201
195
246
233
180
220
123
210
204
216
197
243
246
215
192
212
226
172
228
231
209
192
211
147
223
267
183
198
195
232
163
174
218
270
203
187
183
211
175
233
238
245
232
271
230
234
209
201
109
176
170
198
187
217
191
174
177
218
150
114
169
225
180
186
210
195
182
215
168
218
206
204
253
210
226
258
235
215
237
169
211
210
237
201
170
231
243
174
229
212
187
149
176
179
179
148
216
189
197
237
182
265
217
216
234
216
195
225
177
218
228
212
268
243
223
97
212
235
257
248
215
223
178
129
177
175
211
239
220
156
197
135
177
213
219
259
213
176
221
176
237
195
239
195
226
150
249
181
229
271
225
227
211
162
196
183
175
250
203
234
205
179
200
201
157
240
240
192
220
195
308
224
231
207
104
144
200
206
205
232
202
234
196
248
151
215
197
195
216
155
159
246
187
210
213
211
205
186
207
199
228
190
149
201
233
206
239
131
206
179
171
188
178
128
180
205
201
207
222
243
181
235
165
177
90
191
141
240
230
188
222
257
150
157
193
234
258
182
232
210
227
183
211
186
203
172
226
184
253
260
211
194
230
205
178
175
242
217
190
201
171
223
200
188
171
234
232
203
237
160
186
140
173
201
140
216
167
238
208
258
197
224
197
191
242
188
236
218
209
219
185
185
161
178
226
190
179
150
200
221
174
151
210
213
134
169
171
234
166
188
141
231
150
221
186
189
265
203
204
274
196
201
222
188
182
215
151
248
128
204
227
192
153
199
179
140
137
216
185
205
250
193
161
214
195
203
160
167
174
210
195
177
176
135
171
200
180
141
192
249
169
192
256
206
219
223
209
248
212
171
258
229
212
274
285
130
173
215
216
214
169
227
193
157
198
193
196
271
195
182
230
248
209
259
235
192
172
161
211
144
244
176
190
194
173
127
166
201
175
224
275
141
245
184
297
237
262
224
216
212
152
172
172
244
214
200
189
197
203
201
216
237
202
203
263
220
222
190
204
243
246
193
213
188
94
159
209
218
204
206
166
246
196
157
218
260
204
137
203
241
233
185
223
233
196
164
205
229
288
172
190
155
236
201
232
220
221
220
201
166
223
81
173
212
163
218
191
228
168
194
151
195
217
210
230
274
184
224
132
172
174
179
210
216
207
96
204
273
271
158
215
222
172
175
195
233
200
225
203
166
201
185
237
180
209
204
225
200
195
144
224
164
96
208
220
263
101
152
177
230
211
177
238
205
237
175
263
153
179
170
205
170
225
200
228
200
259
235
207
272
174
191
217
141
183
226
193
174
179
213
248
166
185
194
194
229
175
222
218
102
177
136
239
185
150
206
176
161
195
160
241
205
210
158
223
197
249
144
147
212
188
198
173
202
221
218
266
192
183
227
169
205
185
179
221
212
197
207
269
166
173
175
227
285
221
207
276
190
211
243
218
216
207
237
221
141
216
245
223
184
262
174
217
161
228
211
159
200
127
255
214
166
165
205
207
158
214
231
193
211
229
225
170
199
211
189
223
226
168
166
238
174
175
174
176
148
186
181
239
229
245
188
212
159
237
153
172
212
274
211
249
184
124
204
126
151
238
285
185
234
212
181
186
228
230
168
184
204
178
186
213
162
150
212
255
141
250
217
169
223
266
195
221
120
238
229
218
209
252
171
164
164
241
226
235
236
181
174
230
186
203
241
149
231
235
196
155
217
196
258
184
208
222
151
198
255
220
126
186
178
225
196
194
219
195
229
231
214
214
205
207
217
154
245
213
267
235
183
176
230
148
223
235
159
169
163
167
162
254
242
208
187
239
230
194
153
139
197
248
238
211
194
189
208
180
214
206
198
221
198
179
192
233
189
242
161
241
166
158
204
275
249
208
198
246
215
145
213
204
270
219
202
210
186
180
255
204
238
231
153
229
193
190
144
155
162
162
245
267
217
161
212
182
193
223
221
223
205
219
181
216
186
226
158
172
199
157
203
215
220
179
215
255
227
227
207
275
141
223
182
230
245
181
186
241
230
213
201
190
217
217
193
156
183
183
248
198
172
256
165
217
223
172
205
194
220
178
167
257
187
199
212
145
248
160
193
198
114
172
270
189
184
191
143
233
196
207
197
263
213
176
209
188
174
177
208
220
197
157
168
202
204
171
131
182
159
210
227
212
169
249
169
205
177
146
139
249
165
204
181
111
234
197
216
154
242
189
192
177
147
144
250
224
146
210
177
240
166
230
246
221
258
203
204
195
224
218
202
252
125
154
142
163
214
181
247
238
241
246
233
255
200
155
200
181
143
166
195
202
251
207
145
165
197
238
165
187
200
209
224
180
226
211
225
204
231
206
237
140
159
205
123
215
207
233
186
234
180
233
183
192
149
170
137
204
189
210
196
187
187
211
227
277
241
201
134
218
139
197
129
237
243
217
189
217
207
213
255
188
233
258
200
168
223
208
298
213
221
175
212
156
194
184
272
224
185
229
210
219
170
130
179
242
191
231
198
207
189
233
195
141
241
206
204
217
187
180
162
200
182
222
140
212
166
208
215
222
169
219
261
196
223
194
204
153
249
239
166
189
185
178
213
203
184
218
226
172
189
197
202
190
178
221
177
170
200
150
165
178
198
204
215
159
181
221
168
254
216
212
240
252
119
212
174
236
164
201
211
165
234
233
196
293
184
195
234
161
194
194
205
225
270
166
259
210
167
227
180
239
248
177
203
182
267
139
217
229
147
284
147
213
220
183
139
131
252
194
221
215
237
212
238
124
224
169
155
253
164
196
203
233
200
170
209
132
262
150
237
254
154
224
208
173
206
175
222
205
155
140
143
227
154
158
198
192
212
135
257
148
234
254
204
155
223
174
121
146
178
190
204
184
200
206
254
213
184
185
195
186
183
195
162
234
200
201
220
247
195
219
245
197
251
210
198
142
128
128
226
175
227
194
256
140
194
183
178
151
148
180
248
227
204
205
187
222
184
134
206
193
179
212
223
203
166
205
156
170
169
199
192
199
208
234
156
211
176
193
223
206
209
192
177
201
181
196
142
245
247
239
235
144
144
202
187
243
217
190
214
163
178
231
244
173
212
226
194
180
203
219
169
182
270
228
235
150
196
188
132
190
206
217
164
201
179
187
202
231
208
145
121
146
144
229
220
181
285
242
191
221
164
210
205
158
267
182
231
189
211
219
213
166
142
179
262
193
173
225
198
166
153
145
217
152
198
151
229
215
254
185
142
166
218
216
200
207
236
232
200
226
207
208
174
259
172
237
216
234
208
215
175
156
179
212
168
127
217
252
170
227
223
137
173
231
228
172
203
188
231
169
160
195
213
282
195
199
104
227
135
234
233
142
226
205
206
192
165
196
211
185
222
219
213
150
193
205
193
153
249
209
159
192
220
206
225
279
207
148
179
160
234
239
283
200
185
228
235
253
210
193
201
220
224
210
221
186
197
156
197
149
239
178
164
208
165
179
200
221
195
208
233
228
247
228
255
197
258
166
145
204
163
205
152
222
226
218
223
131
266
179
271
222
220
203
209
177
187
228
174
255
244
205
177
172
198
254
213
250
142
211
185
212
151
190
186
199
186
151
141
219
179
173
209
185
195
223
152
190
198
194
124
286
200
211
143
179
206
198
167
239
259
158
212
225
155
209
223
211
232
196
160
197
208
190
186
173
176
193
159
197
220
266
242
186
188
234
165
151
175
230
215
233
212
173
164
194
183
221
202
221
230
248
213
212
175
185
236
174
204
165
194
237
210
221
216
159
134
242
186
209
199
185
228
193
201
142
218
181
177
194
204
174
224
240
137
182
164
269
231
167
170
224
213
170
187
195
225
167
222
254
140
195
228
236
179
170
165
217
245
235
212
232
149
232
183
216
93
221
207
206
245
238
232
208
224
184
152
230
253
175
256
162
196
207
207
186
165
257
238
224
197
188
213
239
142
161
187
208
228
240
206
204
216
253
167
216
192
281
264
188
157
244
183
196
237
220
183
168
232
224
229
216
128
222
168
238
211
131
183
237
168
226
215
159
224
200
191
226
220
184
237
260
216
197
162
211
262
124
187
229
221
177
256
175
236
234
197
171
99
255
134
171
253
260
261
193
210
176
242
147
177
195
210
151
235
238
233
248
181
148
187
147
152
220
193
164
204
193
201
208
230
228
189
143
244
154
191
257
192
216
260
175
206
207
171
219
200
211
172
216
200
224
209
205
190
197
195
239
142
219
188
260
240
196
219
141
260
215
161
189
202
169
167
170
205
204
176
218
215
210
202
227
252
162
245
180
228
124
123
216
228
269
161
191
261
153
154
176
117
181
163
210
187
215
245
212
238
174
179
166
203
162
220
225
190
176
242
124
166
136
201
228
209
159
205
164
174
196
194
209
204
238
250
216
190
198
229
219
226
230
165
177
189
153
206
226
181
219
145
137
226
215
180
168
224
181
252
242
174
216
224
97
211
145
216
202
221
178
202
188
193
168
272
198
197
220
205
199
192
196
214
166
145
258
183
166
143
206
219
143
144
183
170
159
193
180
178
189
204
226
189
100
206
212
207
194
209
242
177
192
221
209
249
114
183
209
178
115
242
158
212
202
185
212
229
245
151
158
223
219
183
200
160
236
193
240
205
217
236
223
160
196
262
215
210
224
212
218
223
208
215
263
168
218
193
217
190
166
134
158
166
128
139
250
205
211
228
147
130
176
208
212
143
189
141
203
280
234
218
199
192
212
228
182
71
199
116
129
129
181
176
204
239
172
158
204
241
229
243
132
210
248
167
251
256
187
214
208
150
228
194
232
220
190
111
221
250
189
173
199
161
160
187
189
151
167
218
220
192
129
234
202
244
165
171
249
212
234
167
225
176
157
201
206
229
251
244
192
222
185
213
186
224
198
187
205
181
225
213
257
170
172
190
197
177
217
190
228
213
207
170
230
184
221
183
212
185
161
236
198
195
228
156
153
246
197
161
157
210
176
232
150
205
167
243
205
234
177
205
171
215
100
185
194
157
194
174
202
206
146
201
264
203
251
218
200
175
212
239
189
173
208
183
199
211
255
206
185
214
227
215
232
252
211
251
239
206
174
200
201
221
227
241
216
199
248
223
197
203
116
186
235
244
194
222
229
206
170
237
158
242
272
207
217
171
198
226
192
239
200
214
208
256
187
217
209
183
187
207
147
222
211
201
188
264
220
213
279
202
198
122
173
171
190
233
213
193
176
180
229
300
255
130
267
248
196
157
201
306
177
178
234
232
188
216
193
223
248
209
265
208
218
165
220
164
196
139
222
189
260
241
133
198
220
165
201
254
135
190
167
229
206
153
222
207
220
208
191
149
243
223
192
103
107
185
247
230
180
214
157
240
226
165
237
149
207
213
211
180
175
190
205
195
161
236
180
205
120
156
219
162
206
209
217
210
147
209
189
179
211
192
179
172
174
241
223
162
170
230
205
174
188
190
178
145
149
183
274
196
177
217
193
186
216
218
185
192
149
224
192
146
231
196
173
221
213
237
185
235
183
219
146
139
221
146
228
192
172
146
205
238
178
236
177
189
192
242
260
222
193
212
209
195
243
144
201
199
217
225
206
224
167
244
195
215
179
197
213
231
216
209
211
184
167
208
202
164
178
262
255
189
207
256
198
213
192
220
184
291
211
244
200
236
167
265
211
243
234
230
204
186
255
185
206
224
203
249
179
211
269
176
202
157
252
238
167
179
177
205
211
173
195
227
233
142
146
190
221
234
262
252
194
200
148
205
160
251
257
237
196
192
190
188
169
200
195
185
174
214
214
243
198
198
164
148
150
240
189
202
190
238
200
223
191
154
194
218
154
195
179
170
214
229
147
171
222
211
233
156
181
213
198
226
198
110
197
171
175
205
231
184
247
198
206
243
177
195
114
241
228
169
233
185
190
242
222
249
151
231
234
176
168
220
174
171
227
202
234
209
220
208
183
182
168
243
233
176
169
189
183
198
202
242
201
189
267
209
200
223
255
130
167
248
217
186
198
221
228
197
184
204
134
163
120
213
203
179
201
233
185
127
211
203
223
227
250
180
233
243
247
243
269
248
209
193
168
193
150
246
211
189
185
236
216
269
238
206
201
216
204
169
207
225
157
184
125
214
164
214
250
176
197
227
164
191
162
185
149
170
199
229
255
202
267
221
226
271
186
208
186
222
173
186
219
258
213
241
192
151
135
257
184
208
240
227
200
209
200
288
208
243
190
214
220
182
266
226
209
167
197
212
186
229
160
185
201
242
222
182
163
248
215
235
240
225
215
212
222
183
238
165
213
205
118
247
213
202
206
195
184
266
241
84
195
233
209
192
187
179
193
223
237
132
200
230
228
169
216
240
212
147
195
224
186
210
253
153
176
195
212
163
131
199
199
186
221
265
208
199
172
187
214
186
163
217
244
232
167
220
216
160
165
172
195
193
172
195
179
209
232
177
243
204
192
153
129
136
216
226
174
250
240
234
226
134
238
187
230
220
225
214
214
192
193
141
196
159
189
174
171
202
201
234
207
248
245
177
210
191
140
164
200
206
201
297
214
152
265
170
186
217
197
184
215
184
139
162
189
187
218
244
265
240
133
230
159
248
202
236
114
187
219
187
220
193
205
177
200
175
224
238
230
233
166
181
183
219
276
177
225
184
186
236
187
265
163
213
239
228
163
174
203
192
255
177
270
174
222
204
270
181
205
184
184
224
215
182
279
146
179
207
199
142
228
199
140
212
171
178
252
231
218
220
182
194
258
261
162
172
176
180
130
181
231
224
200
216
193
263
191
217
245
210
167
171
226
222
289
189
209
193
171
186
217
190
263
207
219
219
194
196
182
147
265
227
231
200
179
177
206
141
207
138
225
216
190
181
158
182
156
209
246
130
159
229
229
189
252
214
187
201
188
145
172
175
214
217
210
253
273
176
245
197
205
210
209
218
179
235
262
199
146
207
202
225
175
163
171
186
210
213
209
257
253
209
200
132
210
204
197
170
200
253
216
204
183
195
185
209
198
175
175
219
168
222
192
251
212
184
229
226
193
207
223
195
234
186
217
247
227
272
217
182
242
174
230
229
215
211
204
156
225
149
195
202
176
224
181
203
153
225
119
190
243
213
211
170
212
175
193
271
247
232
168
234
254
253
217
219
258
210
156
167
152
206
222
223
189
206
157
238
266
196
197
217
166
255
227
232
266
146
170
171
243
211
199
189
192
188
228
163
222
201
268
208
231
223
195
184
254
177
206
232
180
156
175
140
193
209
167
213
176
253
231
242
175
236
198
280
181
215
217
209
190
186
222
186
228
167
171
211
212
158
192
196
184
187
250
259
174
250
234
235
227
250
261
283
154
233
150
203
258
180
153
231
198
189
237
176
193
168
216
181
231
203
199
241
235
226
125
140
130
146
182
199
217
169
214
205
266
139
235
234
201
246
197
171
201
151
152
242
280
233
176
230
194
211
171
161
241
242
179
230
151
224
130
189
199
163
147
211
256
153
174
172
174
211
149
183
198
177
213
191
239
215
212
172
199
242
196
167
182
159
218
262
134
190
239
220
217
206
209
213
246
157
140
235
122
188
129
175
163
188
235
206
300
224
227
239
172
153
152
180
185
163
128
175
228
209
198
189
204
210
204
186
240
140
197
225
249
236
222
231
191
197
182
226
230
203
212
256
207
257
202
235
222
159
224
203
117
233
179
218
187
206
195
233
223
253
243
240
234
173
175
246
239
243
222
194
225
208
216
221
191
195
188
171
239
251
186
193
214
200
147
212
208
159
181
181
157
154
229
208
163
221
232
215
224
121
180
196
185
258
197
108
250
185
202
171
201
216
135
189
268
189
150
202
247
126
290
218
162
179
220
142
188
217
108
225
176
235
223
210
230
208
219
206
149
134
173
202
182
196
123
202
195
204
163
212
240
131
190
210
201
240
165
197
212
245
168
271
182
227
210
218
183
190
216
244
265
220
188
215
208
177
216
248
208
165
190
153
200
227
170
260
214
192
197
243
257
212
177
253
171
137
200
164
197
238
215
243
199
180
186
172
218
217
201
212
213
271
187
201
231
177
115
202
203
192
245
223
226
209
192
261
224
198
302
106
146
169
289
204
252
215
157
237
147
223
253
205
233
225
169
215
170
182
181
220
147
202
187
221
146
222
240
203
246
147
213
179
230
204
237
211
135
184
161
174
181
173
197
172
220
226
219
117
154
176
117
188
221
142
130
173
249
158
223
138
183
157
243
152
261
191
239
134
152
265
213
191
216
162
182
230
216
153
229
217
214
206
210
166
136
143
173
164
201
223
261
135
175
186
131
206
204
297
229
267
209
173
230
213
201
254
256
144
158
182
221
209
191
181
181
226
202
229
202
227
213
221
173
187
198
226
192
173
174
200
216
234
224
209
212
212
203
280
239
175
214
221
178
192
197
187
168
221
177
195
256
240
238
163
259
238
191
230
193
187
102
202
250
202
146
235
277
181
208
211
145
197
175
191
243
185
232
201
221
223
210
244
123
122
265
211
211
199
237
203
250
170
202
231
234
199
197
225
189
246
211
239
161
174
245
222
168
176
249
170
155
219
228
148
230
223
151
182
191
209
222
174
224
238
225
190
215
236
179
238
248
214
212
233
212
239
194
223
158
153
197
234
258
215
207
204
198
188
167
166
214
246
218
233
212
197
178
207
261
181
256
287
242
186
185
245
242
227
248
213
219
164
215
215
216
216
234
255
158
205
236
192
184
250
163
244
196
174
164
232
180
224
153
188
204
205
211
224
204
226
157
158
192
199
213
231
210
218
210
235
181
231
185
239
138
157
228
184
232
201
197
186
188
212
226
254
266
187
194
241
205
141
212
179
219
241
312
134
226
180
161
206
216
251
225
252
224
225
231
206
240
147
259
182
162
183
212
217
178
212
211
184
257
160
152
181
148
200
212
219
214
145
166
173
205
212
185
143
184
217
194
236
164
235
206
232
218
190
232
204
173
231
196
206
230
194
189
200
148
177
146
225
221
198
216
156
232
170
154
217
136
181
218
195
216
122
180
202
186
181
238
234
217
145
188
181
142
118
191
203
214
151
167
202
226
159
212
207
184
230
269
150
248
189
265
193
131
211
151
112
253
170
232
181
273
167
172
188
132
228
186
164
237
144
151
236
196
203
171
192
237
179
178
180
223
243
232
234
198
160
224
212
218
228
210
185
162
214
204
145
252
224
252
263
138
179
194
229
202
168
171
206
225
132
203
209
161
237
217
144
208
240
202
222
180
208
171
221
183
232
278
201
172
201
201
169
256
217
204
192
211
182
168
216
211
249
170
195
210
212
167
178
237
175
223
193
218
184
154
183
223
262
202
161
138
281
227
218
231
257
204
152
208
150
224
197
199
202
200
150
206
195
184
216
165
188
204
165
199
227
232
234
144
235
231
178
138
191
187
239
206
250
250
196
199
200
167
163
249
247
225
196
178
117
196
235
229
200
206
265
228
153
227
183
255
255
255
209
233
208
233
200
200
187
188
152
169
195
176
240
189
168
150
181
230
196
181
230
195
223
199
183
173
108
157
183
197
142
201
234
192
261
167
226
131
192
212
203
170
222
258
191
208
194
248
188
124
188
237
161
188
210
225
235
123
180
183
185
159
214
252
213
211
156
181
170
208
182
120
133
182
165
225
166
266
156
197
199
157
227
178
204
185
151
187
190
223
171
180
217
214
244
159
197
224
205
176
216
223
208
203
244
194
195
179
163
195
203
179
152
181
229
174
190
196
170
201
230
230
256
190
219
214
197
208
147
193
250
189
184
242
245
192
213
203
164
130
190
181
258
211
262
238
238
177
221
204
192
213
222
238
145
246
155
203
271
208
181
183
190
199
202
215
139
129
212
217
195
146
199
261
175
196
181
186
202
175
189
195
215
180
186
222
198
170
246
172
216
212
222
181
195
207
170
250
240
263
212
213
216
246
183
210
176
182
200
203
229
244
181
256
171
127
188
225
224
216
215
175
205
212
191
162
192
187
246
173
194
217
174
239
282
204
177
148
197
187
141
239
202
238
209
229
238
171
206
135
218
196
175
276
220
244
250
179
132
229
216
247
206
208
211
215
227
236
228
216
234
185
139
98
271
283
212
221
155
167
266
136
190
192
236
225
160
239
210
179
236
204
215
214
161
185
160
243
170
147
146
249
188
201
276
189
179
202
111
183
142
190
203
211
177
229
194
225
176
138
197
238
143
232
112
196
176
198
281
219
255
168
220
172
141
223
174
194
180
238
212
229
206
192
200
138
232
187
198
216
214
212
191
200
207
162
206
164
216
161
217
224
177
184
197
251
204
247
236
174
191
181
184
220
184
225
194
224
249
197
187
148
143
197
155
231
181
194
219
273
227
195
172
172
168
242
231
127
175
174
223
203
278
168
202
212
171
190
147
197
202
233
181
219
211
151
140
208
246
255
179
221
263
251
265
232
151
200
166
182
212
195
217
163
199
161
107
255
230
159
236
260
194
219
229
234
236
181
266
201
246
243
160
184
210
219
213
165
223
204
173
120
250
242
160
219
240
207
167
242
144
142
155
194
220
233
144
188
190
182
248
189
212
225
273
153
267
195
155
244
156
168
236
177
176
216
151
200
217
210
229
257
234
239
179
172
239
212
191
197
231
156
197
227
177
195
148
196
192
215
235
182
205
168
208
218
173
178
179
197
146
162
203
233
182
231
145
256
189
168
209
202
151
192
243
154
229
178
215
224
143
236
186
186
238
172
222
216
223
196
190
138
194
274
187
181
196
245
234
154
162
180
249
205
105
183
225
155
242
216
173
141
205
180
171
262
239
186
200
197
193
214
211
236
135
242
188
194
264
250
160
196
159
191
168
231
213
258
242
202
188
136
185
176
224
180
141
165
205
275
150
187
190
207
236
162
206
196
242
187
233
295
132
240
247
201
198
198
191
217
172
186
174
218
236
206
164
192
231
143
168
211
151
202
173
204
203
228
208
160
216
247
181
185
205
161
176
234
213
179
194
196
171
178
249
200
215
154
260
197
245
166
258
202
162
206
162
225
157
147
156
225
184
220
164
249
154
217
183
207
163
180
189
268
170
233
166
188
150
209
246
275
200
195
193
193
186
232
244
198
191
262
163
172
200
217
160
178
81
195
186
205
245
174
232
234
201
187
196
171
206
172
229
211
191
226
202
194
212
201
189
135
177
208
174
198
170
249
233
247
187
187
172
191
209
171
276
163
156
181
144
191
247
180
196
216
163
206
246
211
195
220
131
232
210
130
236
257
231
233
217
220
242
224
113
204
200
238
161
253
233
216
198
211
217
189
201
195
226
215
221
230
204
202
230
180
209
186
193
232
185
224
179
186
188
213
200
196
178
179
143
165
188
245
137
235
193
246
114
175
197
261
155
270
225
222
241
216
189
220
227
183
184
209
197
250
239
189
206
151
183
139
229
284
180
204
262
219
188
172
206
197
211
213
182
190
183
184
218
169
226
187
170
212
252
213
192
193
175
200
236
208
188
223
166
217
195
183
193
173
215
210
242
205
226
176
257
176
207
174
231
190
250
232
246
234
195
196
193
170
223
179
234
188
228
226
142
218
222
222
209
192
251
138
212
204
191
244
207
160
271
185
225
216
218
241
254
232
206
227
207
159
195
268
239
246
259
158
248
184
194
205
238
192
226
195
208
192
165
215
219
144
194
178
179
232
196
194
246
169
148
247
173
244
239
199
233
254
193
216
187
182
200
207
246
222
175
191
198
176
254
189
211
288
222
225
205
177
220
231
201
239
206
210
188
195
178
204
261
179
254
189
202
183
192
187
181
147
160
199
178
201
183
230
209
213
236
231
179
261
194
243
160
190
216
193
188
214
189
211
216
197
184
281
169
189
183
177
209
165
183
169
145
218
216
191
184
184
221
246
182
201
181
101
185
198
208
219
263
128
192
213
248
160
154
181
154
244
249
178
210
228
216
216
215
192
238
190
239
142
231
249
166
226
251
197
172
266
183
175
217
214
219
189
166
188
277
185
164
235
164
193
205
183
294
216
233
247
197
158
271
250
203
219
214
135
244
167
233
175
165
194
271
186
182
221
181
181
223
200
201
190
175
207
214
211
209
212
160
175
205
198
248
202
244
219
221
191
161
220
154
219
229
132
170
191
191
196
213
149
171
209
208
243
162
218
245
152
204
201
220
208
226
201
132
267
239
235
207
226
181
185
195
252
239
198
245
217
207
257
252
215
181
206
224
229
215
210
168
199
219
179
216
195
179
219
157
236
216
243
225
209
163
256
173
170
198
163
246
214
206
230
236
210
199
220
171
250
223
197
206
281
179
228
228
186
209
246
199
194
220
234
201
250
195
207
217
187
245
149
210
234
160
197
185
122
164
186
203
201
223
190
148
150
166
227
230
233
127
209
219
185
198
250
206
214
177
217
180
263
194
190
222
187
204
137
213
188
190
230
166
211
243
182
163
214
187
219
189
188
179
134
234
175
150
260
140
146
204
224
182
177
267
182
203
219
204
152
212
190
252
127
111
186
214
238
154
252
220
206
195
238
183
155
230
217
179
198
141
257
211
203
247
259
240
223
171
217
139
158
250
253
184
243
219
225
206
173
175
187
267
187
230
201
169
192
246
130
204
236
187
160
220
183
196
222
186
184
261
268
171
201
210
195
196
159
234
178
224
179
141
203
221
172
225
196
196
217
203
198
194
245
211
150
202
184
198
168
248
234
232
268
214
241
188
280
165
192
170
211
214
234
169
238
235
191
186
191
198
212
165
229
196
139
207
187
219
167
205
210
153
200
171
271
165
187
201
155
191
229
184
186
179
173
191
234
215
255
236
220
196
174
219
194
102
248
184
155
139
202
214
192
170
201
189
181
181
200
150
225
176
192
205
218
251
158
216
158
138
213
204
141
253
183
203
194
223
149
161
191
253
179
269
227
193
170
187
260
177
222
163
231
215
141
223
214
197
198
219
164
206
212
160
215
173
241
179
255
197
235
165
209
188
199
219
210
243
121
249
208
211
240
191
161
134
211
180
177
186
237
230
263
241
212
190
143
200
160
210
172
214
233
181
242
158
265
213
168
234
210
167
217
150
196
261
204
163
179
179
193
199
222
193
228
236
234
183
207
197
146
154
125
236
155
192
193
135
204
188
184
235
225
190
216
166
188
219
171
164
182
237
224
208
199
248
190
203
184
208
178
166
168
236
222
183
231
145
142
172
180
219
223
170
139
254
234
227
237
215
258
188
257
238
184
256
134
175
178
200
173
143
230
219
185
268
136
228
212
189
215
237
180
191
189
205
195
217
220
210
228
247
200
169
187
196
191
139
229
187
157
244
160
234
208
162
193
228
173
197
145
226
196
193
174
220
194
200
199
159
103
164
205
176
175
176
262
209
194
248
228
166
145
205
173
198
205
202
192
157
150
247
203
224
190
230
202
187
204
257
209
128
175
232
225
200
218
236
146
243
219
206
185
280
193
254
198
192
167
177
236
224
168
194
249
264
216
197
181
216
187
206
167
145
224
186
136
155
186
192
138
192
143
212
141
197
152
165
183
245
186
228
198
190
231
217
228
240
249
220
149
219
233
207
90
210
121
228
157
231
209
223
164
277
177
143
237
181
113
224
225
170
163
231
275
165
180
171
229
168
200
217
147
173
200
196
206
136
194
187
218
187
190
225
269
188
180
196
235
235
177
193
202
209
222
205
240
228
182
154
219
233
257
187
239
211
248
152
192
179
170
151
217
209
173
181
260
196
231
220
212
222
287
157
215
159
143
236
273
208
236
231
187
191
250
216
180
215
185
206
171
264
206
143
156
228
198
174
203
216
234
269
197
225
182
181
195
200
189
113
219
235
144
275
185
179
255
190
160
235
233
166
231
230
199
143
239
215
159
200
184
153
210
206
169
261
194
224
216
239
186
189
182
129
232
232
256
201
176
178
206
157
196
94
194
202
135
218
189
168
169
189
214
142
204
158
130
220
208
188
214
193
196
216
183
145
193
225
222
233
208
199
248
168
232
221
250
250
191
206
228
223
171
186
183
173
180
212
243
182
208
234
218
235
185
246
208
223
185
260
223
197
183
194
238
210
205
193
189
231
193
182
249
170
239
232
241
177
199
204
197
215
277
265
181
210
183
238
227
208
208
217
196
201
207
207
199
218
139
165
192
256
193
191
220
262
211
192
201
223
197
241
191
247
220
180
218
177
227
157
209
249
211
181
289
211
216
189
195
175
203
228
216
205
195
196
254
284
170
186
216
253
185
216
122
147
152
246
228
191
150
160
235
223
202
226
234
202
204
168
172
225
198
237
210
215
262
200
257
174
226
168
201
165
129
245
140
170
237
182
177
219
240
220
179
119
230
207
188
197
166
191
235
197
214
198
231
150
259
203
223
235
227
175
157
189
216
195
242
173
199
262
158
199
234
245
158
178
239
163
219
235
174
219
158
267
190
206
264
155
212
219
249
260
231
173
215
304
179
228
160
215
207
234
178
183
203
180
194
194
187
227
249
193
257
117
212
173
205
212
161
134
210
222
222
150
238
192
182
248
184
171
178
194
200
242
239
216
192
239
204
188
180
141
231
195
184
188
236
177
177
164
183
199
217
159
249
176
267
166
241
227
180
239
216
165
218
146
205
219
144
139
188
199
178
201
170
189
217
197
205
238
231
236
194
205
157
154
210
210
198
175
197
162
264
240
279
210
222
194
213
119
211
229
251
193
221
151
141
186
162
176
213
200
166
191
253
188
234
271
200
243
200
203
177
206
161
220
168
202
156
196
237
228
202
245
187
201
246
180
199
271
208
193
231
180
185
273
244
231
158
188
206
225
207
244
253
158
224
250
189
188
166
168
208
257
244
197
203
214
259
184
259
221
215
183
252
198
175
265
244
238
250
194
160
231
185
215
228
135
218
211
232
175
184
160
212
227
254
186
240
223
219
199
147
256
163
181
109
197
198
289
152
214
190
242
228
171
233
218
182
232
184
207
282
202
174
230
245
191
202
188
200
236
183
200
251
176
236
178
184
231
200
162
152
141
249
176
210
206
248
211
267
168
190
127
202
224
181
204
188
160
221
161
192
179
227
217
228
163
129
222
206
89
198
238
228
184
224
214
214
224
172
232
223
191
174
199
242
139
190
217
228
232
139
216
167
200
162
249
218
252
197
178
183
218
208
155
183
221
173
196
207
212
219
208
210
221
164
204
195
157
251
194
178
187
176
191
197
205
179
169
215
182
186
203
187
201
216
170
118
176
174
136
207
218
275
226
223
192
264
227
188
206
207
195
130
239
198
242
190
265
238
165
200
222
254
187
245
252
218
187
219
157
217
223
213
144
153
207
214
192
176
201
186
265
206
209
120
122
172
178
191
202
205
217
190
224
166
234
182
120
183
177
179
219
165
250
202
273
255
163
230
240
212
150
253
170
201
205
254
206
116
192
182
205
176
203
206
239
225
169
224
199
219
123
252
126
132
243
254
206
158
238
181
185
165
194
200
224
176
241
207
192
182
215
256
163
224
184
171
208
235
203
239
220
240
223
202
138
201
85
219
190
201
225
210
176
172
120
182
231
200
211
208
167
164
181
238
231
141
198
179
200
166
156
148
243
258
218
159
232
217
184
160
248
217
228
210
197
168
248
148
192
279
205
202
156
255
195
211
201
222
143
206
163
240
203
178
224
254
193
177
217
236
208
168
171
218
201
286
272
100
264
187
253
198
180
197
243
221
176
219
214
203
156
143
167
198
226
197
171
164
160
179
195
248
204
168
176
221
254
193
192
146
145
176
245
242
226
240
189
192
235
174
184
197
228
228
180
263
182
167
161
210
163
230
259
157
206
191
178
225
194
160
153
145
189
151
222
217
135
160
204
165
140
202
186
236
135
184
234
186
194
194
219
195
180
172
200
202
163
179
198
203
263
226
204
255
184
242
146
166
185
224
208
154
186
167
233
197
208
232
181
249
209
196
165
201
178
170
172
181
182
259
178
162
201
181
252
222
246
246
219
138
164
161
157
245
144
173
276
153
150
254
230
234
224
215
142
227
173
182
231
228
182
257
193
225
150
229
168
164
208
233
208
244
269
200
226
173
202
227
153
199
193
172
143
214
175
238
177
207
273
194
218
176
285
195
207
155
186
185
226
232
183
215
175
243
200
125
149
235
166
227
145
215
208
217
182
204
194
196
203
186
252
239
184
152
246
142
214
245
178
175
213
192
186
231
174
192
223
175
189
195
185
256
256
176
242
232
290
224
215
166
195
226
261
127
219
202
207
216
258
215
264
246
174
134
127
192
196
111
164
240
196
214
219
143
190
146
195
243
140
207
238
197
141
189
183
234
175
194
177
158
227
171
253
136
163
150
147
202
187
140
280
176
208
149
196
227
185
181
205
181
218
237
244
203
180
179
247
210
198
191
211
231
135
175
237
125
235
227
238
199
233
190
166
113
137
194
202
184
250
190
219
261
279
226
181
244
164
173
145
213
210
171
196
216
154
143
150
176
218
195
186
216
218
189
202
170
228
175
252
170
217
190
173
243
247
174
180
162
242
198
187
134
191
236
221
166
195
189
142
193
233
133
174
207
180
195
178
251
178
209
215
241
151
167
214
257
216
190
178
225
223
262
249
153
205
194
249
198
233
196
224
242
107
157
203
237
204
286
213
161
198
264
190
206
147
176
199
112
194
174
191
188
229
158
218
245
171
193
153
170
209
190
181
224
178
215
206
248
232
176
159
196
211
210
173
194
172
226
181
158
163
133
199
171
245
217
164
171
150
148
185
155
198
203
149
211
156
204
204
176
205
242
180
169
182
232
244
225
191
219
262
240
189
220
231
238
212
183
220
179
178
185
220
164
161
114
101
179
184
141
221
160
240
238
159
191
285
152
206
206
200
210
178
194
172
218
204
247
211
244
203
150
221
105
196
160
204
202
190
145
179
229
207
228
198
190
192
204
218
235
247
239
235
252
212
229
260
192
226
219
223
241
245
223
217
191
252
195
202
162
181
243
207
192
212
181
240
224
203
213
191
246
254
163
187
160
198
274
246
221
214
245
235
214
206
210
195
178
225
163
282
234
167
228
214
190
204
231
117
261
138
244
139
250
221
209
191
247
180
221
237
174
226
225
262
191
198
167
201
195
216
228
197
216
194
215
209
188
217
204
220
182
187
229
227
236
204
149
209
134
228
170
200
157
153
156
258
214
249
191
216
177
210
262
202
222
209
138
149
257
174
155
191
211
221
170
199
254
201
248
166
179
172
203
224
145
210
259
219
219
170
263
203
182
226
193
246
274
217
182
191
173
229
168
110
265
206
247
187
190
229
160
157
173
169
223
151
222
217
175
185
195
178
177
220
171
181
220
240
180
252
200
240
186
239
162
163
250
184
150
167
192
158
195
261
198
192
168
223
208
231
199
228
180
218
206
244
174
196
185
175
252
191
221
264
220
210
233
148
182
249
166
200
256
147
128
215
271
151
195
242
238
224
174
173
137
224
250
203
195
172
190
192
220
221
177
219
248
197
152
211
210
199
235
234
250
186
135
182
204
266
161
199
198
221
185
197
172
217
190
177
213
195
128
271
236
220
224
128
195
184
196
174
152
210
171
263
201
177
180
216
248
226
189
164
177
158
238
135
143
167
169
194
205
193
150
225
227
194
243
193
169
200
239
193
213
241
154
234
216
165
193
190
129
228
180
226
160
271
199
198
214
194
251
217
200
214
227
284
172
212
250
215
239
238
176
259
229
221
168
178
201
194
191
210
169
201
205
186
204
171
194
278
166
159
242
168
226
186
207
234
213
254
181
171
245
207
162
127
180
198
175
235
174
210
139
210
224
173
220
212
213
206
230
281
187
191
194
193
219
251
204
144
170
218
257
190
194
242
227
167
222
156
207
199
214
218
199
240
151
212
201
287
244
200
207
218
212
189
119
218
242
269
191
163
195
204
184
202
219
194
236
187
249
288
174
198
167
221
185
189
201
240
207
218
245
180
172
192
175
148
182
185
184
225
222
194
200
160
190
191
125
185
172
174
210
176
189
254
155
179
155
204
135
201
211
233
202
196
185
141
230
236
147
206
228
150
200
190
228
157
152
234
164
165
216
184
171
257
152
213
203
237
210
213
124
195
195
243
205
217
171
227
173
198
159
157
195
243
216
183
217
257
242
186
170
215
270
235
268
256
169
167
161
239
212
156
190
207
188
166
225
184
187
214
231
227
179
261
207
158
229
173
131
220
267
228
192
138
197
264
178
137
195
250
161
158
207
233
205
233
205
211
234
160
153
187
248
191
151
237
231
164
195
205
128
254
201
237
245
228
180
229
218
187
213
164
169
159
230
196
163
209
218
158
175
172
213
157
162
233
244
176
264
232
201
162
229
213
191
235
232
258
165
195
122
158
197
185
197
234
218
152
197
218
183
164
233
135
219
179
240
200
191
179
189
234
231
199
175
203
212
233
190
176
206
193
209
173
158
189
183
164
197
189
190
196
230
180
249
147
201
170
228
177
175
236
208
141
176
210
144
243
251
158
153
171
223
159
182
142
165
221
204
198
202
145
190
162
168
195
183
203
112
110
234
256
205
206
189
138
222
158
152
207
224
172
115
239
284
221
252
191
183
244
229
246
175
180
249
246
203
163
167
233
238
181
188
196
235
135
195
206
216
216
224
243
165
191
239
238
180
165
167
234
249
188
205
185
217
191
183
195
189
212
235
207
266
152
218
155
245
214
185
166
186
233
202
229
225
208
129
205
207
238
175
157
185
209
190
201
177
211
197
241
171
208
207
200
253
153
205
193
240
225
156
160
172
172
213
156
229
232
227
176
169
127
209
224
192
183
126
246
242
202
153
189
155
155
148
246
212
225
140
175
216
228
173
162
200
165
202
172
224
225
181
138
209
142
240
198
192
251
200
198
241
168
222
205
118
200
160
203
198
185
207
111
204
288
196
209
167
204
236
206
247
196
254
173
194
265
177
229
183
208
221
160
199
190
212
205
210
221
193
263
228
212
174
234
142
209
183
197
176
237
193
197
177
206
194
160
261
203
170
154
218
251
237
177
232
128
189
201
247
208
257
264
195
203
212
212
193
173
249
198
211
194
219
245
191
232
194
173
230
155
166
263
154
275
218
187
212
203
183
236
173
234
273
78
216
196
197
229
209
146
253
237
248
229
198
209
166
224
161
166
233
184
218
155
252
185
223
172
231
219
233
183
175
153
205
174
213
205
204
169
239
153
201
198
227
67
210
112
219
220
246
184
222
194
161
258
215
231
287
175
200
196
194
179
265
208
219
223
196
199
217
194
139
146
221
196
203
238
170
177
227
166
253
273
223
209
231
159
127
173
238
164
183
196
175
182
190
177
181
180
215
170
198
196
205
218
248
208
211
248
214
236
218
229
215
139
176
246
183
191
212
145
178
195
197
131
179
182
179
272
241
194
199
278
257
236
194
182
167
220
255
169
175
201
192
184
188
221
217
217
158
151
189
263
140
223
205
231
194
209
222
136
225
202
190
188
190
207
179
211
260
196
167
252
216
163
201
221
204
181
209
191
183
216
233
191
152
210
151
196
215
214
258
236
210
163
205
214
166
180
200
224
226
191
142
193
249
174
231
211
243
162
250
212
215
213
236
227
221
188
186
165
208
193
201
218
201
203
198
233
176
226
210
151
172
226
196
180
198
236
201
184
164
276
164
275
218
179
269
187
242
244
161
173
205
181
240
216
167
236
174
236
229
185
217
218
171
180
163
228
225
226
232
195
201
229
160
255
158
181
202
236
162
179
225
132
162
203
214
215
208
171
178
150
138
220
211
157
165
232
202
195
207
221
194
234
158
150
170
173
150
188
259
205
240
195
249
258
204
193
170
248
199
191
209
226
198
170
158
208
238
159
256
177
211
250
223
204
180
205
191
196
185
220
164
248
220
171
191
188
258
169
174
205
205
213
174
191
183
226
224
206
171
167
190
191
199
243
194
202
200
217
221
212
200
220
216
200
175
256
163
192
217
206
218
171
208
159
277
163
199
187
216
175
232
191
199
226
213
140
206
228
255
137
239
241
204
225
254
178
153
220
174
173
178
190
176
211
192
209
193
212
179
197
257
202
220
173
222
201
295
227
202
218
189
202
181
187
236
177
227
191
199
210
213
175
194
250
165
238
174
212
211
258
210
265
167
184
193
251
199
192
205
249
233
231
224
203
174
226
237
150
194
223
253
108
164
274
242
201
270
204
177
242
244
211
204
171
210
232
192
208
212
132
142
244
255
127
108
169
255
157
224
167
167
228
192
241
165
195
228
167
229
213
196
203
107
192
224
183
220
154
213
241
214
237
225
196
269
173
202
234
196
252
236
185
249
208
116
174
201
201
204
201
215
177
196
185
181
169
209
168
183
228
196
203
182
218
257
246
184
160
208
260
213
213
222
235
226
187
188
219
248
193
218
181
248
213
191
206
193
200
173
197
162
186
150
201
230
193
224
195
156
156
208
267
184
203
210
285
152
207
185
195
190
226
189
264
201
154
234
187
230
213
228
209
271
208
219
196
185
224
199
207
232
193
192
158
156
245
193
187
196
131
112
192
152
238
224
210
202
257
176
165
190
166
180
180
170
227
219
172
141
198
194
179
229
226
182
193
218
185
171
153
213
115
182
211
202
246
240
230
179
274
232
240
188
118
237
199
160
242
230
165
193
254
210
217
238
159
230
164
147
148
239
182
139
255
169
196
275
237
166
192
194
275
208
239
224
267
198
245
124
213
225
150
176
178
206
152
185
156
137
219
167
222
225
226
205
160
221
244
219
288
163
185
150
172
172
261
161
136
216
216
145
196
196
161
199
264
194
238
164
143
213
196
224
228
112
243
179
160
160
183
170
183
208
157
197
164
212
188
180
155
205
159
253
187
236
177
197
242
199
208
208
182
156
194
144
225
215
198
176
208
175
181
157
182
180
199
160
132
188
235
174
147
262
210
183
237
200
220
179
197
210
236
203
216
153
257
170
213
190
179
221
152
232
252
167
246
210
196
189
235
202
226
201
169
137
188
148
164
187
201
203
141
222
180
128
169
209
144
190
130
152
177
149
200
162
229
233
176
209
207
244
252
191
224
153
190
225
152
227
189
210
140
175
188
155
195
205
181
230
243
168
172
123
219
204
228
244
266
176
176
202
205
141
182
245
210
242
216
165
213
170
245
240
218
221
173
197
255
190
236
183
185
180
200
157
217
165
174
263
199
252
210
174
192
201
193
215
227
256
190
219
154
204
207
153
194
235
279
197
209
154
229
204
226
194
169
183
153
218
147
194
196
195
222
172
153
172
205
262
223
214
166
137
179
179
214
203
219
168
220
178
202
185
216
181
242
193
187
173
155
217
228
242
157
215
229
183
185
171
169
239
194
207
134
181
140
212
156
228
212
214
160
201
153
262
237
209
187
189
167
240
142
220
196
243
210
138
171
239
221
202
212
146
253
152
228
202
157
236
223
193
185
201
223
168
210
161
191
161
212
194
178
233
202
173
209
170
208
175
139
168
177
164
213
193
208
158
197
224
111
187
221
221
206
177
211
180
183
212
204
194
245
198
209
207
184
147
170
196
194
146
192
224
147
175
215
169
149
134
199
201
302
149
209
169
226
219
202
163
224
175
260
280
169
275
253
171
185
218
213
162
179
185
193
174
167
181
225
138
220
216
171
186
196
187
221
200
136
205
233
224
199
222
224
203
153
249
185
167
165
247
199
214
157
252
147
210
233
193
172
226
246
214
226
212
199
174
217
154
225
221
214
209
259
170
195
206
232
135
180
257
238
123
184
175
172
188
175
215
231
210
235
182
250
193
232
214
201
220
128
234
177
235
221
188
251
237
232
159
214
176
144
226
215
197
224
137
150
202
219
207
257
221
224
195
159
184
153
206
191
181
180
204
178
193
227
221
203
234
255
248
162
195
265
150
220
156
202
227
173
115
218
209
247
277
228
183
268
177
179
216
207
182
191
173
197
205
242
156
206
251
161
190
217
216
241
229
178
155
175
212
203
235
247
161
165
262
187
281
194
215
203
229
232
185
218
191
191
195
170
191
241
187
213
160
250
215
278
191
206
258
245
199
246
181
173
211
243
225
182
197
218
236
125
230
222
176
221
180
219
142
190
205
228
89
196
199
242
191
138
208
203
193
160
159
220
188
158
230
203
200
230
187
179
199
230
197
202
129
194
206
163
202
129
169
136
202
153
204
170
178
224
205
157
196
221
211
227
182
211
233
236
192
184
175
243
267
190
134
190
263
191
171
151
235
173
184
186
139
209
234
214
217
176
235
247
251
213
244
202
212
218
214
173
121
224
217
204
239
193
183
228
224
222
183
203
229
169
211
228
143
212
184
161
227
247
211
204
166
130
236
220
234
184
137
214
232
220
187
180
165
168
215
188
210
262
139
217
221
238
179
188
143
156
213
242
244
177
236
234
231
219
212
200
217
200
234
190
228
220
138
194
259
215
209
141
189
195
139
208
172
161
207
171
182
155
146
187
257
184
244
147
254
183
218
208
175
165
185
222
198
245
188
178
218
194
140
170
222
221
159
186
172
203
187
210
186
179
250
264
173
238
278
179
193
147
231
159
247
268
225
220
196
222
134
210
206
252
183
205
191
216
155
211
145
210
199
223
183
184
209
236
229
205
209
216
170
238
180
196
194
141
203
172
170
168
131
223
200
192
196
210
123
173
193
209
216
266
219
226
109
222
249
262
194
163
237
222
169
209
228
209
218
192
218
265
175
173
246
209
141
221
186
169
184
203
210
169
160
189
167
189
223
227
203
233
166
249
227
123
162
177
164
199
163
158
107
167
268
224
169
238
227
158
246
240
160
205
158
234
203
173
202
210
151
228
158
182
115
143
186
154
198
242
258
223
221
161
211
219
206
170
221
201
158
226
191
222
244
258
187
117
204
181
252
210
213
242
180
207
181
123
216
216
194
198
230
214
194
201
128
173
187
138
131
235
169
179
240
187
135
176
185
201
205
151
154
224
178
228
246
204
172
188
170
194
135
207
181
145
194
188
206
215
177
244
182
200
191
225
194
233
190
255
200
177
223
134
241
191
189
261
197
219
245
188
173
181
157
251
278
211
258
244
217
209
220
240
207
253
177
211
296
195
204
206
148
162
201
188
202
155
202
200
197
256
183
189
184
177
161
235
169
182
206
227
185
204
168
197
124
206
193
237
132
183
231
207
202
190
154
194
239
253
208
161
236
140
151
213
184
235
228
178
176
215
157
180
284
189
200
189
209
132
222
207
204
166
160
236
198
199
213
217
262
222
194
221
240
212
225
205
189
168
185
164
144
221
184
252
231
209
201
249
189
240
237
217
237
205
156
183
170
219
252
148
159
227
173
135
213
215
268
228
173
207
206
242
222
240
208
167
181
176
177
213
169
174
196
242
190
205
182
219
167
195
213
228
178
168
267
233
246
237
220
193
245
201
217
165
179
173
246
211
179
156
177
188
228
208
154
235
248
172
189
185
166
249
155
183
186
214
227
262
183
207
208
144
216
212
230
240
142
159
170
225
159
194
178
211
198
166
184
226
208
185
204
210
139
233
151
241
217
192
195
142
188
235
197
210
174
150
242
209
155
236
196
194
216
170
228
200
207
188
201
222
177
198
195
151
228
221
214
140
251
242
167
189
166
194
265
203
203
245
143
152
219
225
186
189
220
173
226
232
218
184
138
185
202
163
260
208
232
242
234
182
201
154
249
161
223
126
219
226
213
203
230
183
219
199
265
195
214
233
186
196
184
199
218
270
168
175
204
222
186
239
130
165
234
143
174
193
197
234
170
209
192
115
167
196
241
178
196
155
175
227
187
246
170
208
231
174
204
219
217
172
201
237
213
213
171
159
188
145
218
165
148
190
117
212
185
226
192
234
204
230
180
202
136
226
110
242
211
230
234
198
246
194
208
146
134
213
200
226
189
196
257
263
210
254
184
244
144
194
212
226
173
171
217
281
199
215
221
182
195
212
191
149
150
214
161
179
212
182
206
184
167
169
216
146
195
234
198
196
176
194
203
234
230
190
173
194
186
235
120
229
129
139
219
201
188
242
189
207
227
182
228
220
119
241
222
232
194
221
241
180
174
264
214
199
220
264
265
187
235
175
154
202
201
265
219
187
208
180
181
187
258
234
223
198
171
182
185
182
169
186
211
211
193
207
200
218
240
184
262
172
229
198
169
138
209
228
178
158
153
171
166
182
260
206
235
233
209
167
259
247
215
171
205
226
205
148
234
203
261
206
275
184
246
178
207
136
175
244
135
199
213
226
271
157
264
209
206
165
203
207
215
258
232
221
250
243
158
202
190
161
268
201
240
177
238
213
149
238
191
242
200
184
201
213
173
206
197
239
198
210
203
212
163
181
224
174
208
187
204
216
206
190
220
251
163
214
212
215
274
194
199
205
257
219
180
160
206
184
214
194
225
167
133
193
237
211
232
192
207
241
199
180
192
138
209
241
200
193
197
241
188
243
198
188
176
213
138
209
207
227
152
199
183
192
209
204
198
238
221
220
197
235
197
158
267
168
152
237
209
148
201
176
247
105
186
242
242
179
171
168
161
216
126
175
204
173
226
211
203
219
207
235
170
241
166
210
157
174
218
156
167
199
225
177
215
236
220
227
219
189
235
208
173
178
238
164
167
139
235
198
198
199
188
167
206
221
154
200
248
227
211
209
204
257
266
222
245
204
249
184
217
170
291
172
173
178
201
290
271
197
230
103
190
200
154
189
208
215
172
211
230
255
184
235
227
230
208
291
169
216
150
271
164
259
187
222
187
231
202
190
222
174
198
165
235
246
187
160
144
216
194
245
243
210
193
198
268
186
159
172
207
216
280
181
280
193
147
178
174
223
164
232
225
189
221
176
236
218
252
198
180
173
231
220
239
211
222
218
167
224
166
223
190
188
186
232
196
214
213
168
221
183
193
201
155
200
239
201
254
172
189
200
209
183
251
207
155
205
181
236
212
173
212
187
205
221
184
274
183
191
155
188
233
218
181
242
215
236
190
218
175
148
138
204
173
198
144
202
207
158
153
191
174
228
209
229
184
183
214
169
203
152
181
185
176
178
185
220
202
168
215
255
193
217
252
219
223
220
185
176
198
177
202
165
170
249
217
202
190
168
192
192
238
241
229
218
157
216
262
178
238
244
235
254
247
173
203
169
206
241
219
185
226
176
178
203
190
175
215
176
205
223
237
183
234
217
197
178
195
142
233
193
207
215
135
196
250
202
183
167
185
215
227
251
230
150
162
237
240
163
255
178
173
211
182
201
193
197
160
249
214
179
228
146
143
128
171
214
200
179
209
261
122
224
256
233
207
182
226
155
197
246
187
196
162
182
237
229
220
194
247
257
204
162
221
163
201
208
155
228
211
273
202
201
197
150
213
213
200
140
159
223
232
197
169
208
233
215
219
254
214
175
213
160
266
285
260
144
155
224
224
228
127
158
258
187
188
209
245
222
169
267
200
208
206
225
190
210
252
238
139
215
210
196
249
168
149
259
208
219
208
168
288
223
201
191
156
220
149
206
190
189
190
216
200
206
230
210
258
177
198
196
191
213
228
135
153
146
228
253
165
213
244
183
222
178
233
142
182
220
170
239
235
127
139
230
202
161
228
199
229
213
169
204
222
181
251
168
199
207
233
276
204
211
190
204
212
224
140
202
232
189
195
130
240
219
195
206
261
224
200
211
230
201
216
126
178
102
212
249
237
185
179
152
196
251
165
174
204
167
189
224
183
199
147
202
198
178
226
228
214
174
229
168
204
204
136
238
236
174
198
164
208
211
224
175
253
225
244
184
201
214
196
205
159
230
196
204
191
233
208
182
133
186
251
150
154
176
290
168
212
227
242
203
204
190
204
230
228
187
165
219
219
255
213
183
193
214
201
198
236
204
192
242
193
263
160
165
165
255
187
192
214
172
164
129
252
180
161
230
146
245
186
125
198
244
229
282
145
118
225
207
165
211
264
193
206
179
171
222
180
171
129
175
215
251
210
227
214
255
156
187
285
178
179
266
270
176
200
139
209
223
158
173
234
226
255
199
230
151
207
186
229
245
205
175
200
191
171
153
186
257
118
234
160
240
147
257
225
205
158
204
220
153
220
176
205
176
167
230
156
204
235
190
193
141
208
259
195
195
275
221
181
183
198
193
157
129
204
221
193
171
173
238
199
207
224
183
201
241
216
228
246
165
110
220
202
203
235
210
245
169
248
208
243
238
131
177
252
204
199
268
223
216
235
173
211
220
141
176
137
223
197
201
212
198
198
166
183
228
235
188
224
225
231
227
179
180
225
209
214
211
143
208
189
195
195
157
205
240
219
207
197
250
140
207
178
192
261
179
127
185
128
227
218
198
223
116
169
144
182
184
221
173
232
222
213
242
192
200
244
201
144
192
215
235
236
165
210
239
152
188
214
214
194
182
203
205
153
163
225
173
249
147
192
197
173
213
210
179
215
180
226
145
157
209
201
246
228
238
213
175
218
216
188
164
146
206
144
258
269
196
190
164
222
145
144
186
221
247
167
236
158
224
204
229
242
208
179
179
210
222
147
198
172
249
207
262
181
197
208
218
214
196
201
183
186
241
182
175
232
186
199
150
222
190
149
228
176
181
194
200
189
167
217
179
193
250
227
198
206
161
238
163
183
213
129
175
108
183
230
164
201
231
166
174
222
217
173
150
194
190
189
157
194
178
204
203
212
160
171
217
247
158
228
251
165
208
179
240
210
171
220
260
220
236
211
179
166
113
170
224
229
218
198
216
182
211
201
222
174
152
185
290
174
257
199
193
176
215
211
237
182
226
191
222
203
248
217
233
186
214
178
211
233
209
189
181
171
218
196
217
211
243
172
227
211
155
187
246
201
236
176
230
147
191
200
237
191
141
229
176
221
164
145
176
203
161
147
252
204
195
160
258
198
167
228
180
217
214
175
194
214
210
213
171
211
175
183
109
194
212
173
136
176
213
232
205
259
142
201
217
206
250
139
201
188
208
176
216
214
222
186
155
195
205
205
190
229
209
191
193
192
218
192
173
202
241
248
189
215
219
208
246
213
180
197
200
187
212
171
166
150
152
147
176
202
174
205
173
174
174
198
203
233
205
114
215
245
200
272
178
249
238
166
228
227
111
168
136
184
216
184
207
240
247
209
191
196
193
181
163
182
229
288
146
183
179
197
194
130
234
177
208
109
213
218
257
206
171
206
245
217
231
169
171
198
197
236
181
180
255
208
181
196
158
183
201
226
239
233
196
201
251
175
188
169
181
196
231
203
194
218
162
204
204
200
211
233
157
162
213
259
191
241
203
210
239
145
182
120
159
210
194
220
116
168
200
181
206
232
232
180
176
234
173
263
190
195
180
253
282
199
158
185
193
212
167
208
222
176
145
206
248
235
190
143
165
170
255
177
163
210
189
191
183
244
170
219
209
199
174
244
143
237
194
209
171
207
209
188
254
154
234
238
142
125
179
170
190
199
213
198
212
235
170
185
232
151
199
190
185
212
215
188
259
190
277
221
192
179
192
230
184
185
213
207
145
165
180
195
177
224
243
288
245
205
170
176
228
213
163
145
172
191
213
180
186
190
98
164
175
204
217
184
213
148
218
157
209
247
209
147
162
229
211
215
217
200
224
177
166
215
219
233
248
208
196
170
187
180
221
208
160
189
195
170
266
183
172
183
181
218
180
145
191
169
185
210
195
181
233
236
253
216
192
194
165
155
194
201
233
240
184
188
212
168
153
189
180
201
123
260
257
189
187
190
265
154
233
170
257
226
140
167
212
137
229
172
249
128
199
204
211
216
131
221
210
212
192
211
247
187
227
148
222
134
232
203
187
130
195
196
141
199
159
227
230
284
167
186
180
195
233
201
228
248
204
223
253
237
131
150
172
198
203
126
163
179
202
210
206
209
147
165
198
206
222
213
206
211
236
215
181
177
215
202
247
188
189
196
184
251
143
214
232
198
194
130
166
198
184
271
221
202
181
223
148
139
241
223
218
258
146
187
196
159
266
243
205
178
160
215
262
189
254
224
173
242
215
194
210
202
173
230
162
192
197
199
149
221
227
209
144
172
188
247
199
228
220
151
156
194
208
238
234
192
217
279
181
145
198
164
216
267
209
263
142
199
139
205
162
238
185
169
195
178
198
149
197
227
208
221
222
143
163
185
267
213
152
228
172
213
162
230
207
203
228
189
206
216
193
202
147
188
208
257
179
167
225
273
217
235
121
152
249
244
184
206
177
192
253
228
202
180
115
209
230
205
154
239
180
221
167
231
155
179
192
212
234
188
209
175
166
248
198
171
200
177
142
240
174
235
262
175
213
127
232
215
239
193
145
187
183
254
226
201
225
212
190
130
267
199
235
254
192
225
247
172
137
217
233
247
180
192
176
232
210
185
198
227
203
191
237
198
165
196
188
176
176
187
179
145
192
118
198
187
151
248
174
203
171
266
265
226
200
238
193
226
173
226
257
214
155
193
221
150
140
209
240
190
253
216
157
200
188
186
249
210
218
262
233
243
153
210
196
257
188
250
204
196
114
249
230
173
162
179
185
137
177
179
192
200
216
145
216
148
245
201
200
177
253
222
156
226
167
225
180
233
257
147
157
199
185
173
221
258
218
211
111
209
210
107
182
157
227
153
186
216
184
218
174
184
162
176
166
183
175
162
143
186
202
215
210
236
182
145
193
176
145
159
244
165
239
205
153
213
166
239
208
196
258
182
242
129
198
238
202
170
148
231
242
254
175
159
154
172
198
206
204
259
186
189
251
172
257
218
153
203
189
195
205
285
219
184
188
188
182
176
205
201
107
204
222
163
239
171
194
173
158
229
146
243
222
252
155
174
202
181
207
224
187
184
185
198
137
269
205
246
305
201
204
243
139
158
207
216
136
208
114
225
197
111
222
197
192
155
242
232
208
169
140
213
276
176
164
239
163
198
205
186
152
199
216
145
168
173
211
239
161
156
234
224
214
215
273
133
169
199
118
174
185
192
185
196
175
191
241
223
203
200
152
174
199
238
186
194
201
219
246
191
191
212
178
183
168
191
139
254
190
134
249
218
240
244
178
230
235
243
196
163
205
226
173
155
185
182
176
205
213
175
194
225
245
235
223
270
178
167
197
195
179
180
246
207
153
227
212
212
154
150
250
177
143
206
191
177
211
213
142
204
201
181
113
201
216
165
187
179
165
237
246
209
223
132
246
175
235
157
232
194
216
172
169
165
216
154
205
164
141
262
197
219
230
176
136
170
204
187
218
219
167
196
217
154
241
222
251
219
207
213
177
260
126
287
210
173
228
232
236
259
173
219
140
202
239
149
190
221
215
229
189
162
223
225
208
198
176
208
192
198
197
146
201
168
156
222
232
185
223
183
256
212
240
187
241
194
193
141
223
222
154
228
190
191
196
202
264
259
180
178
191
202
178
139
178
157
228
230
211
226
244
209
220
186
238
213
201
249
270
218
226
174
161
148
251
155
211
202
223
257
196
229
165
156
216
144
186
152
228
191
172
164
254
207
163
207
222
196
218
259
153
242
161
246
214
168
221
186
180
255
251
201
156
217
213
220
207
181
250
198
194
228
172
186
181
233
144
225
255
200
247
172
173
196
260
213
278
196
139
174
206
168
175
248
155
229
222
215
149
199
221
222
130
140
148
140
235
176
195
221
284
220
254
169
204
194
213
237
221
217
199
211
187
204
256
180
242
208
169
207
194
178
222
161
196
177
248
268
114
188
208
180
174
251
235
239
225
159
207
207
165
195
172
258
190
211
127
198
209
203
234
254
222
162
213
197
178
209
241
208
180
198
221
219
240
199
206
192
147
196
168
200
238
191
226
268
186
237
178
132
163
188
241
245
232
205
241
248
244
256
173
163
212
199
200
211
135
263
222
201
189
244
180
228
162
243
217
156
233
240
144
182
167
175
186
265
163
222
214
253
195
197
177
204
188
209
167
217
296
169
236
203
218
209
165
184
241
235
141
207
176
174
177
207
230
134
206
170
224
201
230
268
232
205
208
257
245
172
227
212
231
257
220
235
226
239
238
259
192
242
197
192
208
144
194
250
212
174
229
173
262
183
214
172
174
260
181
244
176
175
163
236
228
172
226
179
247
202
199
204
168
165
232
157
184
174
171
198
187
196
169
161
168
198
204
173
194
206
188
189
219
270
164
199
247
212
189
235
166
207
210
178
266
239
246
163
216
160
269
191
161
243
163
162
192
173
136
170
244
158
188
237
176
283
191
254
206
168
166
244
203
221
201
186
161
163
221
194
182
153
199
192
184
190
227
249
221
263
192
261
252
245
231
209
220
243
280
251
250
193
174
209
224
198
215
272
215
175
185
238
218
226
193
159
251
260
164
179
184
258
219
187
257
157
257
221
204
222
204
250
151
243
154
184
164
168
245
221
175
195
190
213
237
181
171
194
170
152
198
174
193
172
219
186
226
214
157
183
241
168
165
234
193
239
167
220
177
198
223
231
204
136
244
213
198
193
167
168
201
163
205
178
224
208
179
220
241
183
243
215
246
230
214
172
171
219
222
150
196
247
191
225
181
182
237
203
229
182
256
236
184
233
237
197
230
217
188
219
269
130
194
245
201
217
237
210
208
222
249
204
137
186
209
215
234
144
251
254
198
151
230
158
245
165
197
217
263
231
182
190
180
217
227
165
121
218
172
222
126
164
176
203
178
192
167
204
162
224
210
202
143
143
202
230
233
130
189
169
163
188
171
209
220
186
156
221
126
257
202
219
204
230
216
214
189
165
170
151
207
259
217
248
256
192
169
224
194
166
183
153
245
170
174
173
248
270
231
249
208
224
168
167
180
212
187
218
189
242
211
140
161
203
174
158
213
248
185
209
187
230
194
265
186
243
183
205
179
189
237
148
208
205
231
199
203
195
196
180
204
157
254
163
197
179
263
181
198
222
219
137
144
202
149
260
166
180
179
236
233
163
124
187
109
238
208
210
144
218
178
180
192
202
199
182
142
207
205
219
178
183
207
240
218
187
168
204
251
222
222
226
183
185
146
244
252
253
220
218
209
176
169
194
233
202
148
247
216
188
251
162
196
235
190
241
159
236
189
208
199
127
249
234
195
222
216
201
191
217
214
237
204
265
187
202
218
191
267
172
205
217
221
183
211
228
253
225
156
157
179
191
166
201
230
232
148
219
149
238
250
205
206
157
170
134
192
159
247
178
204
176
154
216
147
158
167
170
243
241
235
217
195
205
211
164
216
182
140
247
204
154
195
225
209
129
217
138
217
225
169
244
140
171
169
233
218
217
110
190
187
192
166
231
143
130
237
220
136
202
244
222
229
195
174
265
212
132
170
217
184
175
245
224
202
228
176
197
220
234
214
209
237
237
217
193
197
121
193
179
178
197
179
169
256
247
211
228
153
254
221
194
144
234
242
167
221
197
262
226
172
252
205
202
224
196
201
232
157
192
198
177
185
235
267
223
185
196
199
232
245
232
212
202
167
162
223
166
252
152
234
226
232
248
254
179
151
175
151
215
230
218
238
235
237
246
211
156
153
152
208
200
205
175
212
215
126
268
185
196
158
197
135
189
206
255
174
236
228
145
161
253
191
196
217
180
197
187
225
214
230
161
245
149
232
210
218
176
168
203
175
191
218
220
188
218
158
185
246
207
175
149
209
166
187
240
242
251
197
219
170
225
199
236
181
208
145
210
213
198
225
264
228
187
208
147
284
215
212
216
189
175
210
215
188
88
201
159
220
242
218
219
189
279
241
231
185
233
227
191
235
252
230
150
196
255
139
182
178
206
252
168
184
207
178
236
217
201
193
229
226
181
217
182
199
215
233
247
185
213
195
212
195
183
143
241
209
196
201
126
240
253
290
175
147
220
248
153
213
192
192
186
223
222
163
220
190
207
208
224
180
207
225
220
197
203
188
131
164
198
235
230
218
166
181
252
224
152
160
203
172
193
224
194
170
183
213
224
155
237
192
197
191
184
176
93
260
115
222
136
198
169
155
164
208
95
232
210
261
240
241
198
201
248
175
188
233
143
248
192
271
205
194
196
168
153
212
238
215
215
228
195
155
227
143
257
184
221
191
216
170
184
221
187
193
149
192
237
161
247
236
199
138
256
175
159
196
164
192
234
200
237
184
151
160
194
250
211
153
187
137
182
228
214
179
225
188
201
220
223
203
226
162
198
217
215
207
180
243
208
247
242
224
112
198
157
140
209
233
196
233
166
167
175
192
258
207
168
172
271
221
179
220
264
153
214
205
238
177
148
205
186
158
166
188
166
194
222
182
173
206
175
227
193
184
163
220
217
187
147
190
183
137
238
213
137
152
253
215
261
200
198
176
215
227
180
215
165
178
232
224
235
185
161
152
213
123
210
178
189
199
217
196
231
179
229
184
213
245
160
193
177
227
250
145
190
197
276
155
204
216
220
144
238
194
154
185
174
168
192
230
107
156
202
234
244
232
165
280
157
186
153
157
208
237
182
220
269
166
215
219
184
184
235
198
167
158
212
160
197
190
198
257
168
137
165
155
151
228
223
124
243
262
153
252
246
175
164
215
190
178
172
215
201
185
210
216
131
152
215
130
226
116
172
201
146
189
180
194
140
223
229
267
126
200
240
199
116
181
201
241
246
160
166
230
190
237
224
142
151
139
262
264
226
189
157
209
214
206
126
249
187
212
212
183
190
181
159
209
203
173
182
171
218
188
225
177
254
235
201
177
183
270
160
207
191
227
162
231
247
200
245
182
210
222
245
157
190
183
180
253
156
204
255
247
199
275
106
180
204
132
204
155
149
154
129
205
245
215
232
241
220
132
227
202
198
240
183
192
221
202
248
193
229
260
174
183
214
248
178
217
209
186
204
201
255
200
242
246
213
177
238
293
211
211
254
173
142
218
135
221
202
202
159
155
218
184
170
222
262
190
159
176
196
228
166
183
223
218
170
187
255
228
156
231
240
230
209
254
188
245
165
230
234
226
207
180
235
240
191
148
216
266
144
125
251
197
161
164
141
126
182
241
202
226
224
218
202
218
200
194
230
244
160
203
229
227
175
222
239
243
199
197
169
258
222
129
176
222
225
206
193
194
210
239
212
211
243
208
218
179
141
195
136
242
88
160
286
241
265
186
139
187
211
244
137
214
238
178
303
198
144
211
168
209
216
221
174
195
234
201
200
210
207
116
236
237
244
144
177
175
237
176
161
172
151
180
178
236
198
249
188
116
142
159
201
216
158
241
209
161
126
193
113
160
205
214
188
204
171
192
163
251
232
201
159
226
202
285
138
202
267
233
238
203
200
158
218
218
251
163
203
202
279
223
175
185
220
193
150
225
235
148
229
189
158
178
186
201
204
208
133
162
178
193
249
229
203
208
207
224
235
259
206
167
209
186
231
257
157
193
182
220
163
198
179
210
226
238
185
157
183
233
189
200
225
180
224
225
166
207
181
232
236
222
181
163
194
202
200
173
209
164
207
137
180
179
234
177
180
215
203
202
192
196
141
125
109
190
165
205
154
228
219
209
134
175
238
182
170
184
196
200
222
247
178
277
205
191
218
224
216
174
183
232
234
227
214
223
159
226
195
204
173
211
187
212
206
171
203
268
159
189
219
230
143
193
176
155
172
230
252
212
256
240
216
227
249
196
236
194
204
206
233
199
188
270
188
167
232
230
214
235
177
177
229
160
229
176
193
246
208
250
139
179
237
240
196
179
195
181
223
191
245
215
164
249
185
153
189
156
156
196
169
229
238
144
202
231
193
218
184
213
157
156
205
235
181
187
162
159
138
170
206
174
243
213
222
259
291
155
216
179
220
177
176
176
176
172
191
222
197
210
180
213
184
145
171
184
197
221
216
189
223
240
173
235
181
179
199
170
228
187
196
159
217
156
192
213
145
200
189
194
210
255
154
191
178
238
237
220
154
232
222
187
214
184
227
119
147
230
196
202
217
218
219
256
276
281
194
224
206
154
228
166
256
212
159
227
226
204
241
235
258
203
226
157
213
250
205
196
229
219
128
221
233
215
238
242
202
183
236
103
187
124
182
209
201
236
182
163
243
182
206
228
271
156
214
145
129
155
270
174
222
176
210
206
184
127
240
249
166
184
199
217
192
251
132
205
207
217
221
192
218
198
173
206
120
220
172
170
164
238
220
221
210
225
216
185
193
203
183
190
163
257
252
214
205
194
171
171
213
203
189
197
158
226
200
235
251
192
175
197
181
215
241
181
213
141
192
243
198
174
182
173
188
139
189
238
262
179
118
210
225
220
220
206
183
193
173
221
239
288
229
191
208
204
164
190
194
187
202
214
166
204
222
188
259
223
200
210
207
210
188
148
219
196
183
253
211
206
236
171
202
207
162
154
189
166
225
206
188
196
236
223
120
214
183
156
218
203
233
239
185
203
212
198
271
256
161
213
198
196
184
237
194
221
206
167
208
201
215
282
248
180
201
197
185
124
184
190
227
174
217
199
191
236
204
187
190
127
200
206
202
281
206
261
253
266
168
197
269
225
224
176
189
207
228
211
138
190
191
231
175
205
218
240
237
196
239
192
161
213
186
215
193
181
204
169
198
181
213
168
181
180
242
211
161
221
244
212
188
182
144
204
192
242
144
168
180
239
205
199
185
228
234
159
167
247
242
243
252
220
224
245
159
247
231
244
133
158
182
210
188
212
221
118
299
171
238
191
152
221
257
196
169
201
210
214
226
187
247
153
244
225
247
212
194
189
165
229
173
195
231
190
213
213
226
173
238
206
203
195
248
232
200
131
239
188
181
205
278
227
229
158
175
174
182
209
174
240
218
228
200
264
202
163
201
205
191
208
264
192
213
177
117
229
255
185
148
185
253
208
211
164
143
212
103
152
227
211
203
202
144
196
200
206
249
278
194
119
157
175
93
233
246
220
185
194
203
210
256
171
143
277
189
129
223
179
187
238
272
208
186
182
207
202
220
246
234
224
220
264
112
266
174
187
183
187
219
150
216
214
179
274
265
221
132
206
254
237
166
214
195
109
183
194
242
169
175
199
169
139
215
231
216
172
186
212
259
233
252
213
239
219
149
198
200
223
177
203
194
260
188
138
253
252
197
231
225
137
207
222
205
188
189
231
207
241
211
180
187
124
257
199
160
207
219
183
221
235
166
242
235
206
137
158
181
226
188
193
163
207
212
151
246
208
151
247
152
228
196
270
154
130
201
250
249
165
229
166
261
155
162
131
254
193
192
213
244
202
140
195
218
155
214
249
207
221
184
219
162
202
197
220
215
191
187
150
214
174
175
206
256
257
239
155
201
174
178
241
207
181
127
229
229
275
201
201
197
162
162
206
137
189
227
222
181
233
203
239
177
193
196
230
182
181
228
246
284
250
190
208
128
254
217
216
231
222
185
254
151
203
197
205
189
210
179
188
167
142
232
198
135
215
229
207
221
153
218
195
148
171
225
205
203
181
161
208
181
176
157
204
237
203
177
236
200
261
156
172
156
204
208
248
194
191
136
231
236
159
201
178
171
182
206
183
204
191
206
169
173
174
194
273
191
199
193
160
214
233
248
209
184
218
169
210
226
267
178
206
237
186
218
236
274
275
188
204
192
189
198
213
190
200
185
163
130
205
175
232
206
168
186
231
251
209
174
211
197
256
144
148
161
178
233
197
175
213
130
217
188
219
160
217
153
244
244
229
247
212
226
252
212
178
171
159
203
203
175
183
221
226
223
172
185
215
152
191
244
219
206
237
191
154
208
267
214
242
103
222
199
198
204
179
208
163
191
208
231
228
189
196
205
137
215
201
242
238
209
247
194
269
183
218
145
215
203
193
183
225
213
206
184
209
156
163
221
171
196
170
249
226
150
167
173
190
180
187
230
218
187
163
217
238
220
200
163
180
137
259
179
244
183
223
150
243
153
241
203
196
239
189
182
148
266
150
173
212
118
253
190
159
206
230
125
191
167
181
208
165
170
229
190
192
135
234
230
217
203
225
172
279
187
198
244
208
266
178
212
181
233
193
204
143
180
270
221
211
224
217
242
204
181
160
177
240
244
210
191
162
154
198
167
190
211
116
185
152
218
160
129
221
231
233
232
179
243
231
185
199
197
228
245
217
211
161
190
185
214
163
191
242
205
188
195
184
166
204
203
220
170
212
133
181
203
200
179
239
116
209
198
218
197
176
210
188
195
175
184
223
261
224
168
165
223
235
165
174
250
204
224
144
204
178
163
284
218
242
185
263
221
230
224
203
208
240
248
112
150
115
201
258
196
198
190
202
242
266
147
198
197
235
267
234
153
255
214
248
204
233
197
186
225
196
222
219
214
198
181
171
223
164
241
244
90
224
220
243
208
183
243
225
157
123
149
150
199
194
157
191
198
179
219
196
242
219
206
233
246
183
189
133
234
181
271
250
282
236
203
197
241
188
163
127
197
180
227
244
180
198
207
236
190
224
200
224
179
194
242
241
181
245
175
229
195
200
203
198
200
239
199
215
223
126
161
151
211
168
166
170
241
148
179
232
188
171
167
152
203
247
268
191
156
166
217
234
239
241
227
217
211
179
209
235
224
248
209
195
204
208
128
210
213
263
239
178
233
193
196
233
230
224
234
192
196
240
181
151
126
228
219
219
215
247
217
222
184
185
142
166
246
205
248
201
177
222
238
178
177
138
167
189
204
232
193
225
189
236
206
247
249
200
263
197
208
199
180
226
243
107
178
206
250
172
195
192
204
143
166
150
164
200
181
258
224
176
224
214
279
242
177
206
218
198
207
201
230
225
193
215
189
212
208
170
188
196
169
168
208
222
172
219
220
113
211
163
235
247
219
184
244
250
184
237
245
205
127
192
173
208
255
256
190
236
194
234
191
251
213
251
210
226
216
195
205
181
172
168
230
213
206
188
150
149
233
181
204
237
235
209
237
225
232
232
183
228
156
234
188
224
178
213
268
163
176
198
116
193
236
243
190
196
190
231
192
179
218
221
250
199
166
254
150
252
177
180
149
260
212
198
212
172
239
186
237
224
197
188
192
229
175
165
231
205
185
199
180
262
277
210
169
163
132
208
239
184
215
259
188
223
197
224
219
183
229
202
188
242
187
174
220
172
253
253
139
206
233
188
193
236
174
189
180
197
193
186
227
169
222
187
215
240
215
197
217
220
223
179
204
222
209
211
254
233
187
193
220
181
242
170
207
153
220
215
188
207
214
204
221
262
205
208
151
243
184
234
272
184
236
155
232
223
250
197
186
155
219
216
183
214
216
173
226
217
202
176
207
212
182
234
210
250
172
179
225
159
206
226
187
196
196
208
180
228
181
176
231
229
209
269
206
188
197
191
173
217
199
211
185
199
213
187
175
255
176
242
169
164
178
233
168
197
156
228
157
178
230
184
196
196
218
178
225
245
258
206
146
166
180
137
205
227
172
225
164
190
192
215
199
161
213
185
112
223
187
242
183
244
180
161
157
205
285
164
164
271
133
195
239
214
204
228
214
216
207
210
252
168
223
226
227
127
182
197
203
157
173
220
227
143
200
145
215
222
250
162
225
157
208
207
185
175
208
192
202
182
227
245
188
196
186
159
168
226
213
185
226
191
256
166
280
163
214
163
241
179
170
207
217
226
171
219
247
237
193
188
250
190
209
229
199
229
180
235
187
214
253
239
230
215
205
173
216
160
208
245
205
244
222
216
200
212
228
191
230
248
181
236
191
202
227
197
255
177
177
194
194
183
184
191
194
164
243
208
250
159
247
193
229
213
211
232
145
111
162
243
239
171
225
97
202
240
198
189
186
180
137
241
235
241
211
174
180
184
204
177
259
186
190
203
147
210
140
222
147
218
166
216
236
128
184
185
179
243
243
137
279
216
251
259
156
209
184
198
133
193
208
164
265
242
229
206
239
218
280
233
168
231
172
234
229
134
179
247
190
199
200
190
224
217
186
236
218
231
216
160
207
260
179
243
225
212
162
151
228
244
173
228
259
179
197
110
165
186
260
242
192
204
174
150
162
234
251
226
152
173
196
232
141
218
187
208
257
177
236
185
218
182
233
227
153
150
176
204
164
173
150
172
224
182
230
190
183
202
221
176
152
175
231
238
216
218
206
182
165
248
178
182
246
187
193
228
171
207
203
175
223
246
160
221
179
236
211
257
172
196
173
232
169
176
218
203
170
190
207
154
209
230
229
202
186
208
219
197
261
280
203
165
213
190
153
180
217
201
165
273
212
221
239
207
192
199
227
245
192
168
224
206
188
190
143
199
191
204
235
192
264
159
194
182
201
161
189
225
231
239
189
195
179
193
181
190
186
221
164
241
179
250
163
180
214
241
161
114
232
211
185
129
149
146
164
229
224
217
238
208
186
197
220
234
178
237
164
244
265
223
242
209
227
235
198
201
219
174
203
226
187
210
194
223
216
160
201
163
209
144
161
200
146
200
203
210
207
142
207
156
214
156
263
215
223
233
254
230
237
212
223
207
230
185
211
203
202
228
168
207
202
157
207
178
200
246
125
208
172
205
177
196
223
154
190
227
219
163
187
171
256
153
200
197
213
233
249
148
177
153
185
242
261
224
201
208
208
181
166
233
248
161
186
235
225
207
213
241
189
187
121
238
225
193
197
144
249
194
200
232
126
223
215
197
218
167
204
223
198
175
158
206
232
193
184
208
232
225
207
256
144
224
218
193
209
215
151
173
235
164
197
259
189
167
184
170
166
235
169
102
176
226
179
190
179
217
170
195
213
252
194
241
225
159
152
243
208
197
198
262
196
186
180
206
174
221
125
224
249
153
172
285
181
193
162
187
147
248
242
154
217
125
171
174
195
176
202
228
164
204
136
157
209
129
187
230
224
246
156
134
188
157
256
166
213
189
223
222
238
210
193
156
237
268
189
147
173
229
231
257
218
215
228
202
165
167
135
221
196
220
129
217
224
255
240
178
225
201
214
190
202
206
202
159
158
218
202
181
147
203
201
179
221
252
201
161
209
205
230
207
162
184
220
223
213
240
212
191
178
186
225
69
131
240
194
211
148
187
205
185
196
240
224
263
223
208
225
189
152
203
226
162
124
149
188
190
176
220
204
189
240
226
190
227
255
251
151
180
180
165
181
193
175
248
187
207
227
189
278
167
197
176
194
194
201
162
204
148
224
191
227
237
178
253
207
183
230
206
142
175
153
194
221
208
212
243
231
238
224
197
182
249
173
239
140
208
197
223
221
163
231
201
200
183
164
167
213
197
188
180
162
192
243
221
233
177
205
145
235
233
176
117
185
169
219
185
240
193
244
237
194
211
204
216
187
189
198
281
232
229
158
235
143
231
223
224
176
191
203
243
221
249
158
181
173
211
246
262
206
162
236
170
178
236
248
149
221
207
217
208
156
235
228
223
151
172
226
186
209
213
154
213
231
178
260
239
165
205
233
276
254
236
175
172
213
215
199
264
210
198
209
263
221
213
166
107
140
152
219
210
202
217
189
149
233
188
199
201
183
239
195
182
200
225
184
172
210
232
247
195
165
148
156
202
207
185
181
183
204
196
203
198
170
217
240
197
225
230
199
208
174
222
200
190
157
156
203
150
188
178
169
175
143
213
196
214
173
192
231
190
223
115
177
196
213
238
228
200
226
190
243
195
175
193
158
191
206
180
141
179
193
218
229
174
201
170
185
229
212
195
165
226
173
230
147
258
193
191
166
186
225
207
238
199
212
205
229
221
198
220
212
166
196
172
240
174
179
225
162
182
222
214
207
186
236
201
189
200
173
207
263
220
205
156
179
165
205
226
166
221
213
183
165
198
175
173
185
131
209
209
209
215
185
274
224
167
183
172
174
179
194
183
186
216
245
166
180
184
203
203
177
170
203
247
171
186
175
256
216
163
167
230
163
241
178
195
147
159
178
182
254
201
260
230
213
185
218
227
229
214
209
197
232
195
202
196
231
245
242
188
162
237
199
246
201
177
169
196
192
231
186
174
245
218
203
216
283
202
250
168
193
197
154
214
218
169
165
175
180
189
187
173
176
234
196
215
188
192
209
212
160
262
200
217
168
243
211
213
217
250
265
195
193
197
183
234
305
204
138
225
161
189
160
172
157
222
209
183
216
183
237
198
173
135
209
189
143
205
202
248
237
203
268
146
198
200
162
208
200
236
172
248
199
161
206
251
168
165
165
192
233
190
239
168
212
215
275
158
202
227
196
236
225
274
132
211
191
142
257
205
210
170
218
197
209
161
152
237
224
230
239
194
193
232
183
136
216
196
180
184
139
144
202
154
210
182
225
134
290
155
172
232
149
185
190
232
185
248
195
239
164
250
163
183
197
213
170
241
240
228
189
189
168
230
204
186
263
213
147
192
239
186
171
243
150
224
233
256
231
269
227
253
235
186
196
147
170
200
140
168
208
189
240
165
256
179
216
120
214
204
151
155
224
215
190
231
201
177
231
164
173
210
273
126
196
235
205
185
205
155
191
225
150
209
159
221
216
197
152
222
181
184
228
176
186
139
191
144
203
201
272
219
195
184
211
234
205
229
231
196
184
194
196
108
146
179
201
188
193
186
219
203
148
172
229
167
197
173
161
220
208
182
182
140
249
255
153
206
224
240
174
212
242
133
240
162
208
222
205
176
226
183
209
213
165
231
194
200
204
158
179
177
152
190
160
194
217
184
189
165
200
183
207
159
233
162
169
191
222
195
151
210
175
221
115
215
222
189
220
232
165
193
231
208
224
194
226
262
235
254
199
199
197
227
178
200
253
187
225
193
244
207
180
218
177
167
237
171
232
222
204
195
240
240
239
229
241
217
188
127
220
159
217
230
224
136
179
179
193
210
209
202
191
240
219
260
202
216
202
162
202
261
208
167
248
192
291
214
176
251
166
182
192
206
217
213
260
219
195
245
164
161
252
139
199
206
150
227
188
201
220
194
209
219
190
187
210
172
187
192
215
219
179
233
212
274
206
232
166
204
158
260
158
247
239
247
214
207
273
214
217
200
222
167
249
128
179
185
261
218
163
240
241
204
146
179
258
196
219
228
270
205
224
204
201
227
171
173
197
175
244
248
228
205
207
205
238
146
238
275
203
236
237
220
185
260
204
187
210
152
178
204
179
162
200
224
236
233
199
206
211
229
202
209
206
136
211
219
194
174
194
191
181
249
271
210
146
246
167
223
209
143
193
178
218
187
198
194
153
179
179
181
210
197
209
178
196
130
231
218
219
209
202
166
187
175
206
178
247
154
207
186
170
263
234
232
151
190
117
285
178
159
192
201
232
266
231
166
223
208
143
136
185
198
262
144
223
225
146
231
165
159
146
207
193
204
129
222
180
223
209
205
180
195
226
171
214
187
196
147
169
234
157
219
214
122
155
143
187
170
242
208
194
230
155
202
157
243
182
228
155
219
167
236
187
238
182
243
190
217
259
184
211
189
218
251
199
199
186
211
217
113
183
209
193
242
214
206
161
188
223
185
191
233
212
178
245
211
155
237
195
195
158
189
219
220
160
224
185
130
200
198
246
235
248
203
203
216
253
229
240
245
165
212
185
188
199
209
177
242
162
202
173
243
202
230
211
204
263
186
203
109
263
190
190
228
196
143
198
182
191
167
221
232
251
171
267
208
168
166
168
247
162
146
232
145
205
222
118
199
202
194
136
232
205
241
246
213
240
231
189
179
222
179
215
193
198
158
223
215
227
143
214
219
207
255
172
197
172
199
171
228
161
225
234
212
202
257
188
213
192
171
138
135
228
196
247
209
232
187
243
199
217
227
166
190
184
210
238
153
185
198
225
217
212
235
190
146
220
226
236
218
178
187
187
142
216
233
192
163
173
247
204
172
253
221
167
222
232
190
167
235
198
214
212
124
118
180
183
218
214
185
208
104
166
190
183
147
198
146
238
224
168
178
165
191
168
177
147
237
266
193
189
201
163
206
170
233
233
190
208
237
253
213
211
240
210
211
220
185
214
129
190
191
202
158
220
249
195
219
196
209
203
227
212
228
198
263
196
237
267
235
138
223
199
183
185
214
151
129
188
206
180
233
198
189
199
232
140
184
229
203
197
248
191
156
202
172
213
187
191
165
234
189
176
190
179
228
235
218
200
191
236
185
126
169
159
235
225
226
215
207
185
194
192
178
176
247
142
175
228
232
238
237
164
193
223
196
192
202
208
229
211
191
162
176
189
182
224
197
192
190
219
227
214
151
187
268
278
262
203
197
240
178
234
260
180
217
211
216
213
172
169
194
240
288
242
215
214
202
147
270
194
183
212
184
300
210
234
172
200
189
256
278
169
229
232
275
198
161
187
225
161
246
191
194
216
240
237
204
194
201
235
152
190
221
159
261
150
201
224
207
276
172
163
110
200
214
247
241
235
237
170
263
236
238
93
205
201
267
145
152
239
100
256
206
240
210
255
194
195
205
176
234
172
235
128
272
164
175
236
212
219
220
196
127
246
239
172
153
189
229
225
202
236
221
225
256
199
250
244
221
204
222
224
136
217
190
200
260
178
162
204
246
232
212
165
233
208
222
167
273
183
198
153
153
179
209
153
148
236
210
222
184
253
194
234
216
233
208
194
269
195
233
230
147
168
180
250
231
156
201
225
159
239
205
223
208
185
241
226
281
214
134
191
220
184
182
204
210
216
215
193
150
236
194
226
159
206
215
170
215
255
261
236
244
233
178
245
236
216
263
222
212
190
214
283
231
224
199
163
215
246
161
183
120
229
231
238
205
148
206
241
155
196
137
263
195
204
224
139
202
174
193
190
199
260
224
195
172
217
235
155
156
257
219
208
213
157
153
192
132
167
202
176
183
187
177
168
201
279
191
200
202
187
140
227
178
194
165
181
206
224
214
191
204
156
163
224
192
234
200
215
235
198
149
256
255
174
227
214
210
140
235
212
131
211
212
201
200
137
203
164
207
206
216
155
185
182
195
185
224
193
133
233
258
235
175
186
132
202
235
197
156
206
230
203
200
168
268
210
220
176
193
221
238
151
239
207
224
167
190
199
205
196
222
204
174
217
185
211
280
190
174
222
166
214
173
167
196
200
202
109
202
247
229
256
191
216
125
181
233
107
238
165
208
205
223
224
192
241
146
217
188
210
184
269
236
283
219
228
180
207
192
143
165
226
232
243
202
165
216
168
248
140
192
251
223
251
237
212
190
204
197
201
213
209
224
204
170
212
163
189
193
157
199
242
216
191
206
206
201
235
167
233
213
278
202
238
252
223
191
233
239
211
239
170
201
259
208
174
232
180
210
245
186
156
176
228
231
182
257
217
198
207
142
115
225
217
240
233
239
239
157
256
192
221
151
160
200
142
161
174
248
188
191
212
179
255
227
218
200
185
185
241
133
169
183
177
250
183
176
190
230
233
160
187
212
114
174
220
212
228
185
222
195
179
211
167
126
233
197
186
248
149
196
183
208
227
148
146
250
149
221
223
211
207
185
239
228
201
227
275
227
248
140
224
235
142
207
208
134
215
227
248
189
173
188
176
210
220
214
216
174
197
243
209
217
155
155
90
229
177
204
216
192
187
219
238
174
276
230
178
173
174
155
211
165
226
158
198
193
182
169
184
248
229
220
200
221
159
176
179
226
209
129
221
177
180
200
179
233
160
204
201
216
178
268
185
171
180
243
181
198
173
163
258
267
176
187
227
231
179
237
171
221
236
190
165
157
239
150
194
184
229
205
169
165
201
141
144
194
291
210
193
240
145
239
229
196
192
222
183
174
185
175
168
136
217
229
183
248
210
200
175
237
205
170
183
200
166
195
224
168
262
205
153
218
217
226
174
221
210
252
227
131
211
229
164
215
126
215
210
206
271
250
224
219
222
98
214
145
187
216
125
213
216
181
262
228
184
226
228
157
198
183
236
203
170
241
204
181
149
224
267
210
231
242
170
172
189
240
165
184
207
211
224
154
246
196
210
168
204
187
146
241
192
183
170
192
161
233
176
229
229
285
125
241
236
203
182
239
200
207
219
152
204
215
222
191
171
251
241
187
152
190
171
222
157
243
203
206
224
201
191
158
238
238
204
185
239
176
105
228
210
211
210
174
186
226
193
239
266
224
182
200
247
267
222
173
175
240
154
186
195
194
207
221
251
181
216
223
187
210
222
172
176
152
155
145
167
204
156
260
175
263
186
215
197
198
252
224
186
146
196
158
231
183
271
189
222
165
273
198
182
228
179
214
218
174
250
162
214
188
177
184
240
252
224
209
216
237
165
283
269
186
194
203
193
165
215
160
164
169
169
217
130
190
178
168
190
239
166
163
206
204
200
217
178
205
255
186
232
192
136
207
173
185
253
222
193
174
216
233
234
176
186
208
164
169
172
208
190
247
230
218
233
146
184
229
213
198
241
179
192
166
228
240
219
173
197
151
209
202
209
160
196
221
222
190
142
173
153
206
186
225
204
251
163
219
228
221
241
143
213
205
190
253
208
209
249
182
235
187
197
184
195
180
254
212
156
184
247
225
186
191
252
207
166
261
189
235
150
176
164
198
158
128
212
301
155
247
141
201
163
209
214
219
184
128
230
187
191
214
157
136
257
250
219
234
145
198
214
166
213
167
177
202
201
195
133
246
196
208
251
227
190
223
150
183
199
227
152
220
213
170
227
185
210
193
232
212
204
199
188
188
189
230
210
184
183
138
189
218
183
186
145
159
185
200
275
226
221
218
168
164
187
230
222
255
220
189
202
173
226
188
192
194
177
214
204
161
184
136
164
225
177
177
233
95
239
233
211
170
215
189
211
231
228
157
191
159
201
216
241
237
237
191
178
197
255
124
189
213
169
158
232
270
204
155
160
234
225
263
207
250
196
119
172
251
195
240
201
173
192
268
172
202
238
209
244
179
205
168
213
192
144
252
189
195
177
220
237
131
169
247
186
188
227
229
124
250
201
189
171
200
201
235
233
201
224
143
197
213
228
188
185
212
189
195
201
198
200
233
202
214
233
236
217
146
200
142
190
223
233
241
199
193
159
202
222
226
134
186
187
193
186
230
189
233
180
194
184
212
246
133
184
199
176
137
243
209
221
217
206
204
180
174
220
209
167
211
204
163
144
192
154
139
153
231
183
218
246
171
155
250
209
216
207
194
241
177
253
172
180
194
188
226
226
213
208
129
239
212
138
219
155
232
183
173
187
253
160
137
191
193
202
178
212
223
244
202
196
170
198
165
199
160
220
165
145
231
153
109
195
200
215
216
176
223
222
203
211
203
206
185
215
202
189
187
137
198
226
206
224
182
227
187
187
179
201
210
193
211
217
170
178
206
197
169
233
255
167
170
184
235
246
164
235
219
175
161
204
222
213
194
114
192
206
149
257
230
114
135
207
219
208
192
237
178
185
151
220
228
154
196
156
219
201
252
215
251
247
162
233
168
206
151
176
235
229
236
189
184
251
255
209
169
205
225
198
213
240
163
207
190
221
172
220
181
196
195
220
227
235
144
213
212
215
99
125
227
224
188
243
199
192
226
194
246
192
173
206
168
157
176
192
235
233
171
128
202
212
254
215
241
235
165
250
176
201
218
225
187
245
201
228
174
225
248
206
193
148
158
229
231
204
175
187
224
199
172
172
156
220
246
223
188
221
263
195
162
235
130
245
209
178
209
215
160
206
140
187
209
243
212
173
183
184
221
198
194
211
207
178
173
164
257
200
162
236
218
187
199
243
242
187
127
181
182
212
202
233
245
232
174
212
182
201
229
217
125
209
210
217
196
191
245
229
187
193
214
191
205
255
173
209
183
222
282
233
166
217
244
206
193
245
236
257
244
193
183
151
207
143
197
182
141
248
191
183
141
143
205
196
230
241
201
209
245
177
204
218
139
259
234
148
185
199
211
169
174
210
267
150
208
206
206
194
247
196
227
246
204
240
165
195
168
230
159
165
215
223
173
197
195
182
186
196
160
196
215
228
211
182
287
194
200
171
234
173
263
225
192
242
188
174
222
239
271
213
215
200
266
258
126
219
243
194
217
167
139
167
195
190
186
231
165
177
246
249
216
192
217
224
162
192
195
162
217
234
243
131
223
263
242
250
215
123
217
257
258
249
175
274
219
182
271
220
200
268
260
198
238
234
262
200
213
198
212
224
154
152
224
194
178
250
206
225
199
141
213
133
151
217
164
188
167
219
158
239
231
153
205
185
232
227
191
202
231
177
231
227
150
183
131
170
188
209
188
245
228
205
162
183
240
221
159
243
195
168
253
210
211
238
194
220
192
237
236
242
195
245
170
227
251
215
180
192
164
257
227
173
156
131
202
205
167
195
181
268
218
217
229
225
154
221
242
211
259
232
158
175
195
213
218
180
190
141
153
77
205
148
212
269
235
132
202
222
204
155
199
230
160
218
166
238
242
221
176
194
194
199
252
189
244
211
163
165
216
206
201
170
134
199
186
176
271
200
177
166
179
178
167
179
211
234
209
187
209
259
254
196
222
201
216
193
194
189
214
193
162
261
149
159
205
233
222
227
220
207
177
195
176
178
147
223
267
256
216
174
193
191
215
177
186
213
208
234
208
231
211
232
181
175
169
228
157
161
188
173
221
228
176
170
204
231
188
137
132
207
109
258
211
225
183
230
201
181
175
153
216
194
201
181
226
187
186
186
142
237
166
243
185
229
222
182
206
202
177
254
181
228
221
144
123
208
214
227
200
191
217
192
161
211
199
173
203
197
216
181
193
159
173
234
199
263
149
203
214
189
183
241
224
154
176
192
263
144
196
165
182
235
251
192
147
223
219
175
133
236
211
212
198
159
233
217
223
191
172
143
228
235
153
206
215
201
201
184
194
245
173
178
162
168
179
222
229
220
158
213
157
229
214
226
239
210
192
225
165
203
188
215
195
191
264
223
148
203
184
258
234
231
228
196
155
194
207
202
192
165
161
257
183
187
207
177
227
233
152
161
181
181
184
218
198
220
174
167
207
233
197
177
211
249
216
170
134
246
138
177
142
147
213
238
190
189
201
216
247
158
214
199
122
125
158
201
157
254
216
183
201
218
215
173
195
177
215
218
173
219
236
243
221
196
211
254
211
159
184
141
215
206
175
226
158
191
246
209
163
192
249
224
152
190
178
165
184
177
137
147
185
210
209
207
207
217
147
195
163
227
241
185
200
242
164
254
195
183
141
157
224
232
174
197
169
190
169
171
214
159
189
227
196
203
183
179
218
209
139
240
218
164
187
152
206
163
179
208
221
196
166
129
215
189
218
221
213
162
228
197
227
206
164
221
170
159
196
210
211
195
203
167
234
224
190
216
220
206
204
179
172
258
210
163
204
252
174
194
200
180
198
233
184
197
207
239
193
222
207
211
256
161
221
189
199
184
199
223
230
185
204
191
227
175
252
250
210
242
184
207
218
252
193
164
176
205
258
121
190
246
229
221
125
209
215
180
180
162
206
244
123
160
214
177
196
150
152
188
215
156
249
268
270
159
198
162
242
172
178
162
232
203
195
192
232
168
196
204
186
241
156
211
222
165
129
173
253
164
235
127
247
226
218
211
248
184
190
182
168
240
167
206
195
163
213
169
202
201
259
188
171
233
198
200
182
198
230
155
256
184
212
187
285
224
192
199
196
178
268
202
193
166
212
181
184
250
198
207
251
208
212
187
206
213
217
198
229
149
155
192
218
148
262
224
200
210
233
226
184
189
179
240
206
232
229
118
146
126
181
207
207
227
193
148
244
159
217
194
208
173
194
271
199
211
233
127
174
193
201
247
167
150
191
229
235
193
212
220
207
139
136
199
224
228
201
216
176
231
232
236
255
286
171
248
183
183
184
150
212
227
179
210
212
201
198
162
256
176
192
210
211
135
222
177
160
148
101
202
239
263
188
131
211
217
180
199
211
186
138
238
187
232
189
222
216
180
207
181
172
153
244
186
167
225
191
231
212
190
256
246
197
231
207
225
237
203
211
223
195
217
110
224
192
199
217
206
207
142
142
136
202
214
160
187
277
194
207
256
162
215
240
212
191
211
255
181
156
227
197
275
234
263
119
195
201
246
218
267
233
234
174
71
210
150
224
228
239
193
228
175
175
263
179
203
193
155
159
191
147
231
162
219
181
200
235
110
175
185
174
231
189
168
237
177
164
184
233
157
200
181
214
168
160
229
208
243
241
169
165
197
228
200
249
233
178
163
174
157
204
227
280
199
256
210
254
209
157
203
151
186
234
218
154
190
232
238
182
159
181
165
200
184
235
216
168
177
219
203
192
218
191
256
152
133
161
263
201
147
177
220
186
201
204
233
183
173
193
145
189
159
218
106
186
179
189
247
161
220
190
267
202
168
170
123
180
256
192
175
150
226
162
163
149
181
200
156
197
199
226
214
191
245
205
265
217
241
204
175
263
215
235
172
164
185
204
255
232
222
277
263
228
227
172
187
176
261
165
190
189
255
236
239
277
211
164
208
233
160
220
233
166
205
181
247
179
169
220
201
197
250
155
213
195
195
216
241
160
134
189
208
231
220
205
200
200
259
249
184
169
166
214
234
241
189
230
235
231
85
104
170
242
249
134
201
219
255
211
193
152
203
227
160
172
176
148
169
221
226
227
182
200
186
215
255
191
219
217
223
264
157
205
175
169
242
196
218
182
211
175
167
172
233
221
218
185
209
208
134
262
192
123
103
208
211
219
289
234
227
175
199
214
241
181
220
148
189
164
187
202
208
193
186
152
138
174
163
209
223
192
167
203
141
187
216
168
268
194
211
207
215
207
173
156
165
233
193
242
194
189
149
258
201
150
172
259
176
182
296
207
201
210
241
161
237
235
220
151
156
222
236
137
212
221
169
152
132
214
201
153
215
178
150
259
191
159
250
213
188
184
157
211
230
204
185
178
206
182
181
211
239
175
183
231
201
227
224
216
199
236
151
225
249
241
193
202
178
203
180
227
177
212
198
227
172
187
156
171
193
150
184
131
265
221
181
198
258
226
192
180
212
241
203
231
181
190
160
247
182
183
140
122
231
218
209
208
207
169
168
234
190
180
175
212
175
185
233
188
139
262
154
211
134
194
195
199
216
243
223
212
177
190
180
221
178
188
161
163
220
192
183
162
168
201
228
190
148
193
241
203
128
221
199
182
116
209
196
193
170
172
242
180
222
157
175
228
151
185
193
240
175
194
201
214
182
214
158
184
228
184
270
179
199
117
190
219
165
235
277
211
171
230
197
197
178
177
173
140
231
169
210
253
192
127
173
121
180
136
146
176
202
242
116
225
154
217
196
274
217
199
159
232
217
240
185
179
190
205
199
211
213
223
293
225
201
185
193
166
195
270
147
238
151
178
156
206
201
133
168
244
202
239
219
158
181
134
220
188
210
215
146
279
257
155
183
181
214
201
225
193
253
246
214
225
208
115
229
143
161
182
220
164
236
214
219
162
138
257
168
231
251
180
222
164
208
189
222
200
229
205
167
251
209
215
184
204
193
257
187
172
198
176
154
183
185
166
200
196
190
199
238
233
233
219
130
179
211
197
192
211
246
180
181
195
144
229
164
253
249
207
209
267
215
187
151
109
199
174
150
200
199
277
216
190
212
178
232
170
200
200
158
174
255
215
210
243
190
152
235
255
218
160
203
201
131
219
217
264
126
167
226
174
206
93
256
177
228
233
168
162
229
176
180
194
207
259
188
244
205
190
182
285
228
207
217
247
208
197
220
163
180
228
207
232
187
204
170
206
219
265
259
178
167
172
187
252
225
155
170
191
206
229
178
232
148
150
169
152
190
213
173
254
152
216
201
217
167
185
138
165
205
157
206
224
183
161
119
188
200
174
208
223
251
167
230
228
192
142
211
210
172
162
233
255
224
203
193
237
178
121
230
209
214
200
187
220
222
220
252
256
168
165
219
205
133
246
242
217
259
201
194
187
254
192
198
212
233
189
189
201
265
249
220
244
158
144
186
202
138
173
116
176
149
159
260
197
172
184
138
205
191
199
220
172
189
147
252
185
234
281
209
222
208
219
217
153
165
174
173
213
223
179
256
232
174
175
182
226
251
217
205
199
185
181
203
267
226
203
228
234
173
182
223
246
212
204
211
151
185
195
275
172
210
169
198
186
179
281
170
197
211
241
217
197
251
227
207
254
289
240
268
200
248
225
215
167
244
263
211
181
255
189
168
135
222
239
212
240
223
250
253
229
212
214
203
190
205
166
238
219
232
182
250
199
204
273
164
239
255
177
181
180
241
221
171
232
218
173
158
221
188
151
187
230
246
206
162
137
229
183
265
174
178
172
171
210
240
203
178
155
154
237
267
181
222
178
205
259
221
251
261
195
143
229
256
160
209
170
210
194
204
135
153
209
209
213
220
236
268
151
252
194
263
165
211
218
215
185
251
191
204
208
145
187
190
131
188
166
196
245
193
235
178
170
126
227
140
187
163
151
201
192
180
132
271
185
190
146
180
203
174
226
212
218
210
180
244
173
150
160
241
227
254
208
234
173
197
136
232
198
270
175
223
240
237
243
217
217
227
156
239
182
197
183
162
183
216
177
267
216
191
227
163
177
189
188
200
230
267
209
176
248
190
233
257
203
225
236
236
221
176
263
175
179
173
145
293
174
185
232
133
171
185
212
234
176
186
204
202
219
187
173
212
189
230
239
195
164
247
205
237
176
168
209
232
167
208
236
236
201
170
215
242
181
217
218
213
241
166
201
228
191
159
199
217
230
168
211
247
189
185
212
254
214
169
232
192
169
251
199
204
229
158
177
167
234
213
167
217
140
155
223
148
194
194
201
207
195
222
171
159
214
234
187
222
209
239
171
236
259
198
168
174
214
246
228
231
228
220
181
164
142
219
210
214
223
161
154
175
218
165
225
188
189
214
242
206
184
198
131
279
258
170
232
273
133
213
259
217
191
178
189
225
168
226
204
214
222
192
235
254
165
182
187
214
218
259
172
177
224
212
167
159
149
174
202
213
171
209
225
239
274
176
124
234
228
214
221
183
224
174
187
221
189
209
209
252
236
195
167
216
243
183
210
186
172
217
211
200
186
193
205
135
213
197
226
203
218
203
216
207
210
211
182
255
122
233
194
191
138
208
211
226
261
256
189
181
236
121
154
175
267
205
216
174
170
219
263
204
225
239
267
199
200
180
208
214
220
169
235
209
149
198
191
235
197
169
202
239
218
239
218
129
203
257
150
165
200
253
177
165
143
180
254
255
122
179
221
241
195
119
219
241
215
191
229
187
256
192
224
234
192
137
272
193
217
199
200
217
254
177
194
140
248
166
233
240
216
164
146
246
245
213
207
160
196
173
233
216
196
171
187
261
208
243
216
215
229
202
176
221
210
204
233
206
260
202
164
246
189
185
218
154
239
225
203
209
212
147
151
261
222
224
187
198
178
209
229
167
197
181
189
200
198
241
183
187
170
187
207
230
151
173
142
183
232
203
200
228
209
178
198
155
207
150
215
235
231
164
256
154
197
125
205
217
203
195
217
155
217
183
217
214
209
198
173
235
251
225
221
245
220
190
201
206
252
188
208
154
230
225
189
178
198
122
155
233
208
219
201
220
200
208
179
259
215
263
145
202
234
167
229
196
180
247
238
210
179
93
157
194
223
123
172
214
261
254
186
205
146
226
182
206
173
231
161
218
211
245
220
226
150
214
187
194
298
164
144
215
173
209
178
175
198
198
172
144
218
231
185
186
186
225
224
152
185
188
221
138
254
210
200
178
175
228
176
179
182
194
226
156
190
167
211
153
223
155
192
188
235
199
228
191
160
173
182
220
187
212
179
188
212
195
231
196
194
187
145
208
226
181
215
207
172
207
235
191
195
159
250
203
238
255
223
163
199
185
214
224
225
214
198
192
136
229
187
175
231
187
207
168
206
251
228
170
179
207
190
204
162
205
262
229
168
245
186
140
137
177
215
186
179
237
174
235
245
117
230
261
218
224
174
195
209
181
209
239
233
178
212
167
216
216
242
159
209
207
273
269
138
231
187
151
163
173
161
251
202
256
202
132
185
182
243
224
199
134
218
267
235
208
239
223
180
224
229
205
199
225
247
171
188
264
171
227
163
202
208
242
149
197
207
203
237
231
194
203
181
225
157
156
249
183
184
187
187
214
230
148
194
226
146
257
170
159
149
168
211
150
212
227
109
218
126
188
251
206
159
205
171
170
221
227
198
222
207
186
198
185
195
165
148
211
184
172
214
178
195
238
192
180
185
178
185
165
210
186
214
195
239
173
221
191
250
173
234
211
138
223
239
217
165
183
238
212
179
149
215
184
232
228
132
145
226
210
187
230
192
220
267
217
148
220
222
197
225
249
198
217
203
215
200
135
211
196
154
189
210
238
204
152
196
112
207
211
113
183
212
238
174
228
208
239
212
162
186
146
223
241
182
232
224
183
187
234
120
186
239
186
228
185
262
196
186
244
206
156
215
190
161
188
266
170
140
195
187
216
199
172
163
213
239
178
212
162
199
206
230
226
195
198
160
199
202
261
193
230
157
244
108
180
212
208
196
232
159
189
172
229
240
171
220
165
187
236
188
209
176
211
212
188
199
245
180
190
184
163
124
182
129
190
191
214
182
220
236
233
223
224
201
261
193
161
200
243
183
206
177
194
187
245
166
216
202
238
177
124
212
187
269
202
187
193
134
224
221
187
178
195
214
151
214
151
210
197
200
216
236
223
190
203
231
198
232
229
189
258
192
175
246
164
186
216
238
157
232
208
263
206
189
210
225
210
229
204
236
105
231
190
213
170
172
232
262
172
184
198
186
200
172
189
173
199
184
201
168
174
173
207
190
190
217
249
174
168
151
246
175
107
230
174
181
235
194
191
228
264
204
198
158
249
209
162
201
193
189
213
228
225
170
283
229
202
258
209
173
158
118
208
255
230
160
167
245
190
219
258
247
214
242
293
131
241
196
223
148
202
145
191
207
181
225
223
205
229
209
209
170
233
193
194
196
249
205
186
223
136
201
183
275
142
176
226
143
227
223
158
214
206
198
206
197
219
235
192
194
212
255
149
234
173
170
185
229
163
176
224
180
274
164
216
201
192
245
252
209
212
232
199
242
197
198
210
205
206
211
155
183
138
181
196
251
215
150
186
211
178
224
168
209
193
183
194
200
212
206
165
163
229
250
210
169
146
172
181
212
227
196
196
155
179
182
171
187
159
223
228
200
243
238
154
131
190
206
243
169
178
190
263
184
233
136
212
194
216
173
202
188
154
239
223
212
213
104
235
278
175
196
174
216
201
204
245
184
260
249
215
209
198
201
197
245
168
153
228
118
151
171
254
158
245
229
182
251
240
198
262
229
191
138
176
135
160
147
217
218
189
265
228
175
146
196
225
239
185
239
207
237
220
212
147
188
156
197
209
146
205
221
245
212
204
222
150
194
224
153
152
177
220
217
161
199
202
195
141
175
220
182
232
257
287
146
146
259
193
166
255
209
198
236
146
205
132
154
159
191
246
209
228
220
179
212
171
248
251
198
173
181
215
251
133
218
185
228
204
166
239
192
211
177
204
259
184
203
236
213
176
168
142
253
218
149
184
214
192
216
176
142
229
232
183
219
187
238
182
212
198
163
216
149
190
245
207
145
177
208
150
249
167
228
167
213
208
194
203
180
200
167
226
200
249
198
243
240
214
179
159
182
201
244
205
127
256
196
215
223
162
189
234
215
222
194
182
140
190
172
203
204
249
188
216
191
161
230
154
154
242
216
276
188
225
221
177
221
178
157
146
206
182
179
216
216
179
192
211
202
250
189
195
191
233
192
178
196
196
229
253
173
217
190
207
229
264
224
156
214
242
216
232
171
190
230
191
141
199
166
235
154
261
211
216
172
157
203
196
217
256
177
242
193
233
156
191
175
240
234
197
128
162
194
220
265
206
203
191
180
162
142
253
181
226
184
287
160
237
204
213
240
229
185
214
171
203
216
214
180
141
172
222
190
250
152
168
150
219
218
201
188
192
103
186
201
208
194
207
205
242
204
245
242
151
195
175
186
221
173
203
154
209
204
201
145
217
169
207
160
176
154
175
191
187
187
203
203
184
192
203
232
216
223
172
230
146
199
188
250
237
172
175
186
182
203
190
219
134
153
208
237
188
226
221
170
198
158
197
177
242
211
216
160
211
195
242
152
217
196
221
246
184
182
205
218
202
225
213
198
205
191
191
229
167
229
167
195
199
231
209
145
215
195
253
195
194
176
181
195
207
113
190
182
216
165
150
216
141
217
213
215
253
245
228
235
205
206
253
179
175
234
182
214
154
103
257
209
249
220
126
254
271
215
210
172
211
202
226
272
168
134
226
149
183
155
180
166
211
227
108
187
200
170
211
240
209
215
208
199
235
188
181
238
220
198
210
238
152
173
172
154
179
222
189
189
249
224
191
223
185
209
185
138
212
220
175
238
222
152
229
180
194
183
178
158
226
220
179
213
175
235
239
182
242
188
161
179
246
172
201
212
266
151
160
193
204
223
159
146
224
213
216
218
199
238
246
228
196
233
202
195
209
264
243
204
122
186
186
161
191
274
256
205
285
199
190
258
251
244
205
225
156
179
208
272
196
193
233
141
199
254
255
242
192
218
200
166
170
119
181
214
222
190
211
191
208
198
147
202
165
167
222
219
153
136
160
144
159
152
160
183
230
158
184
192
178
216
246
207
195
150
178
139
192
193
225
217
202
151
159
177
212
246
236
161
216
234
214
213
193
212
168
176
214
275
260
197
186
171
212
217
230
156
243
190
236
176
219
192
161
206
194
185
163
119
191
170
229
166
206
160
214
225
256
197
173
206
166
280
233
244
214
223
199
232
169
179
185
159
153
156
152
235
266
237
158
184
191
175
235
184
168
202
227
261
147
139
175
211
196
208
204
195
230
215
190
234
216
176
243
164
141
162
218
243
214
230
153
186
243
232
185
221
235
162
137
172
220
209
230
191
202
223
191
218
192
170
175
159
225
221
225
230
158
143
226
148
194
179
145
258
201
182
189
199
225
240
249
245
192
206
265
172
210
166
243
229
204
181
230
178
159
209
201
170
218
151
199
217
207
229
176
221
154
196
130
237
176
195
183
197
205
198
242
222
201
159
105
183
185
221
201
183
173
220
185
175
212
186
230
176
232
114
192
166
167
132
153
211
204
277
204
222
203
201
209
220
257
195
203
217
194
205
186
197
169
207
188
212
152
148
172
258
118
160
198
191
227
188
235
232
172
268
221
160
225
198
222
232
272
198
136
187
231
143
201
224
201
139
181
281
176
208
244
165
167
170
227
221
230
215
169
164
214
241
242
203
233
239
172
192
255
243
231
121
217
185
173
178
177
178
180
235
184
170
152
227
236
151
191
194
193
174
193
207
170
166
221
173
192
201
253
226
173
194
144
184
189
137
221
235
196
186
209
153
207
194
210
217
233
180
186
176
243
251
129
216
201
212
208
238
229
245
196
264
193
188
216
287
243
265
263
170
207
206
218
170
203
194
176
216
195
188
176
179
190
163
196
244
175
210
206
233
108
231
234
239
168
210
227
206
245
261
226
184
102
167
252
147
231
137
224
147
213
211
203
123
211
175
219
205
180
117
184
230
221
195
271
213
206
165
264
277
192
224
210
178
226
237
214
201
157
195
179
215
211
161
222
180
212
143
253
257
216
209
205
134
156
200
180
216
222
201
253
177
156
187
231
253
191
166
188
206
194
199
260
166
202
216
240
148
195
272
190
290
155
147
117
137
195
225
193
195
193
261
236
243
213
227
178
155
236
226
279
220
207
199
188
216
206
169
199
135
190
176
227
193
151
228
221
227
200
200
219
160
202
182
227
184
243
201
155
169
219
201
265
241
173
228
164
157
214
219
192
229
198
232
206
219
211
260
175
211
200
206
216
232
235
135
207
211
157
211
212
252
228
250
158
196
195
213
166
189
260
163
149
252
159
151
227
154
180
236
249
133
215
183
167
133
239
209
216
187
218
190
206
177
247
216
237
212
261
189
189
242
199
209
198
207
158
180
262
164
225
177
184
184
235
224
205
237
231
200
182
219
138
176
208
223
221
219
189
161
234
164
208
217
190
261
215
196
221
175
203
182
216
191
134
204
185
204
197
246
228
224
204
209
243
192
133
143
229
224
223
202
220
126
239
157
204
231
180
250
202
108
211
241
214
268
223
202
217
193
144
135
174
223
183
236
202
179
217
209
134
167
246
185
219
148
205
244
163
155
219
210
170
174
225
167
204
155
279
164
212
243
182
221
209
193
173
254
224
205
191
198
205
169
202
197
162
216
167
199
268
231
167
170
181
201
214
182
180
239
189
256
210
240
230
164
225
156
241
216
158
160
242
191
172
259
168
256
249
239
247
271
238
169
157
166
223
185
179
248
212
197
218
181
186
251
181
199
276
231
203
189
157
230
195
188
188
150
166
137
227
191
221
256
194
161
196
241
224
186
196
260
167
226
222
202
168
156
156
226
232
171
166
142
212
219
183
146
199
179
256
220
194
285
141
228
219
216
239
146
166
171
201
151
216
181
138
213
205
216
174
207
244
191
125
197
204
203
161
161
151
255
221
212
166
181
252
225
270
267
247
200
218
263
223
164
199
185
181
192
144
212
192
183
255
207
211
128
141
259
202
210
233
222
199
179
249
124
194
157
207
172
226
255
191
177
193
203
161
230
233
188
186
169
217
206
217
207
210
212
194
188
182
226
167
170
204
248
159
188
151
150
239
224
159
159
186
202
197
193
218
176
260
245
179
198
168
135
193
208
154
216
173
215
209
224
198
184
160
159
224
208
217
198
221
230
119
198
144
201
153
210
230
190
224
154
194
234
217
181
205
144
180
253
168
208
156
216
244
240
252
159
220
213
181
208
152
209
160
195
199
171
141
235
212
241
247
221
230
112
185
172
213
198
214
221
223
146
228
224
150
118
179
251
227
177
168
184
190
241
222
160
215
178
244
178
219
185
223
151
151
196
157
193
206
170
216
178
247
206
209
147
184
202
240
191
180
150
181
243
130
150
204
153
198
189
132
175
226
232
163
155
194
161
172
235
184
180
211
223
181
206
145
231
232
237
169
208
207
252
204
218
200
178
211
174
193
214
225
142
171
161
212
158
168
161
288
184
179
203
126
175
255
201
193
208
110
203
201
167
257
181
191
242
197
228
256
203
216
231
115
158
230
130
259
180
224
207
193
141
150
216
237
204
252
209
216
284
245
185
155
187
175
239
180
141
205
205
199
191
194
246
160
235
141
181
202
176
237
153
220
211
222
146
217
137
231
237
262
222
211
179
153
138
290
199
203
209
274
224
205
266
227
174
201
256
149
187
185
181
215
203
219
227
222
253
227
153
129
224
219
168
202
118
160
200
233
186
232
159
207
218
161
183
187
183
214
259
193
228
236
218
219
245
226
148
216
200
167
209
204
216
186
250
206
274
150
193
204
235
203
215
217
206
155
182
178
216
172
250
211
179
207
167
176
143
123
228
236
229
190
201
180
180
212
196
135
224
160
212
206
239
234
237
202
221
164
230
195
151
207
161
204
178
236
201
231
243
185
213
240
157
244
232
201
195
140
202
205
209
188
204
238
143
210
195
143
222
214
220
165
218
187
188
220
160
172
235
178
209
232
171
270
209
181
244
151
184
191
140
266
222
174
207
232
169
201
234
221
224
225
208
227
205
155
201
204
244
183
152
242
211
191
254
118
251
206
183
159
140
196
145
179
258
212
196
231
197
180
167
200
210
160
204
157
238
183
171
140
234
117
230
176
182
150
149
180
184
189
235
163
249
247
222
223
237
209
246
160
253
198
176
243
164
135
248
140
240
180
177
192
224
193
184
228
175
200
149
192
232
243
172
170
235
230
195
192
211
205
198
256
179
182
153
200
204
233
217
191
163
207
252
209
176
233
193
195
174
218
244
211
231
255
176
245
151
286
197
218
210
169
251
236
223
183
202
150
185
189
221
172
238
188
203
121
250
208
150
188
161
188
197
234
221
232
210
213
210
226
212
195
213
250
202
196
178
173
230
241
316
226
203
199
141
207
197
132
232
199
175
178
205
224
213
201
179
205
212
234
175
178
198
186
230
233
136
154
214
170
193
210
178
132
184
135
171
174
210
193
172
176
176
262
165
219
234
108
240
196
207
196
179
196
214
208
188
178
210
180
145
222
220
179
217
203
203
216
195
202
187
234
230
231
247
225
176
203
220
216
240
211
206
214
284
206
210
203
203
182
195
153
245
184
168
156
156
192
234
205
227
232
206
195
219
230
246
200
260
166
149
226
170
200
177
161
220
187
218
185
214
312
138
224
206
218
234
235
79
211
185
192
192
164
184
185
219
215
253
155
168
213
214
244
136
139
177
231
160
196
117
224
128
206
165
191
192
160
178
155
246
126
223
169
226
216
219
284
178
180
209
107
199
228
226
194
233
225
191
189
184
243
116
192
210
198
179
225
233
223
215
208
186
183
206
188
166
200
197
230
164
169
177
192
200
265
156
215
193
202
212
168
209
183
172
168
188
112
201
198
239
244
152
139
167
217
190
223
170
193
223
172
155
183
166
180
222
235
165
211
207
210
187
176
237
159
255
179
181
209
165
202
242
189
195
132
235
170
266
214
285
220
207
121
195
254
276
179
168
134
261
138
233
198
187
219
165
202
191
234
196
145
196
240
227
229
256
201
136
158
207
88
156
247
234
223
186
271
209
223
246
182
148
222
222
129
225
177
199
206
185
254
148
162
236
252
158
198
130
197
196
134
184
150
257
169
217
212
170
234
219
256
191
153
187
215
181
233
177
167
147
206
231
240
197
186
165
185
130
209
167
216
210
192
161
185
227
187
147
177
195
221
222
203
213
207
239
196
222
172
272
189
195
213
202
176
240
126
230
144
157
199
174
155
150
215
200
233
239
159
235
248
183
245
172
174
245
298
284
241
182
152
215
184
205
178
168
168
254
191
217
150
176
233
180
161
165
209
154
216
242
198
164
232
222
206
166
177
244
167
206
185
146
210
229
186
249
175
221
203
175
172
277
174
223
163
195
204
184
222
205
176
179
198
233
230
205
148
171
213
203
156
184
233
169
181
218
219
137
213
183
221
195
176
181
251
195
184
100
215
216
215
197
243
229
168
201
197
219
206
201
206
159
180
168
218
241
242
233
222
186
240
149
211
253
153
203
167
206
187
197
242
166
181
205
203
210
144
180
141
213
247
184
159
172
200
193
160
246
145
191
214
239
254
249
227
169
215
185
204
243
202
126
213
207
202
226
192
233
223
157
230
200
187
150
204
166
137
207
224
157
245
199
151
260
201
192
259
149
211
168
202
161
184
159
226
200
118
206
110
241
190
238
182
236
241
168
201
179
210
161
204
265
180
134
210
154
219
244
189
161
137
211
175
254
239
195
206
128
269
186
160
231
162
163
217
168
207
232
174
168
154
173
243
240
104
220
164
233
235
173
225
172
159
177
212
211
196
137
223
241
234
175
173
189
211
181
187
156
222
160
159
206
188
203
228
221
242
161
224
207
218
244
235
186
203
202
249
146
200
194
190
200
190
231
178
197
193
181
231
217
153
201
159
216
240
171
208
158
254
232
273
192
214
232
159
188
218
200
244
273
219
184
222
159
188
229
197
172
184
215
225
254
165
228
215
174
145
191
167
185
213
243
230
192
173
168
241
222
194
207
222
112
183
181
242
133
173
207
232
237
221
199
210
202
198
195
214
205
176
202
166
226
198
198
144
186
262
216
214
261
230
227
214
178
180
209
180
218
205
181
122
248
227
167
249
197
159
276
156
196
241
192
196
191
205
234
173
224
235
178
228
200
244
241
184
239
161
186
196
210
160
262
98
196
230
183
115
148
186
178
179
202
227
166
191
176
170
211
154
153
208
167
184
189
213
189
215
210
191
258
199
208
225
180
135
160
184
226
199
185
184
253
193
253
185
220
179
203
167
127
156
217
238
150
163
239
219
177
154
173
222
206
233
213
242
222
253
124
215
115
269
166
229
266
269
186
197
224
192
172
136
138
171
171
183
166
247
201
186
209
154
166
167
176
273
198
276
188
230
217
280
247
203
224
239
200
182
243
196
218
188
259
194
182
180
193
189
142
145
236
173
235
168
158
188
178
186
193
245
206
196
240
201
232
167
201
167
231
148
171
195
196
210
253
277
175
252
199
172
142
226
213
221
204
231
177
178
238
184
209
236
159
151
204
129
171
149
182
190
253
116
226
192
190
198
163
238
187
216
220
212
218
235
130
202
234
236
188
148
187
191
218
190
269
199
180
190
186
206
195
164
242
230
231
203
243
181
265
227
202
202
245
207
201
152
211
218
217
176
220
228
184
190
222
232
231
166
180
212
185
225
193
212
234
208
119
222
215
200
202
243
196
194
106
134
168
144
150
202
252
231
173
211
220
207
219
163
223
251
145
163
227
136
189
170
183
230
208
118
208
244
196
162
231
245
190
221
152
185
216
157
215
199
206
185
215
233
164
229
157
212
174
234
250
181
215
229
206
223
168
240
159
232
179
163
231
235
167
172
224
137
171
207
151
228
122
189
199
263
190
287
219
199
226
157
178
191
217
208
165
197
176
151
158
173
134
184
225
200
194
201
170
162
198
205
172
195
194
217
212
223
250
222
173
148
234
143
240
189
235
189
187
219
203
114
187
230
167
210
164
197
218
298
215
193
172
243
171
184
185
222
233
213
239
96
227
162
179
186
132
217
204
157
212
237
216
223
198
184
293
189
184
147
233
221
199
229
231
151
182
215
208
228
252
108
206
215
208
206
247
178
186
233
182
182
216
221
209
223
158
161
168
159
272
249
229
183
198
195
225
217
231
250
195
191
181
253
147
209
196
195
188
212
258
136
222
168
205
166
194
223
156
178
215
177
169
209
224
261
199
203
114
210
153
169
259
244
184
228
244
183
228
199
242
210
251
218
194
230
258
211
160
216
241
184
205
205
272
211
204
239
208
215
233
239
173
147
182
237
181
193
196
219
210
194
219
215
223
170
184
184
171
222
191
226
171
227
169
205
146
244
193
192
226
197
118
263
254
114
207
249
212
192
203
205
166
89
128
183
220
184
200
177
205
227
234
205
205
214
249
176
182
196
186
136
192
204
263
226
211
218
203
153
236
213
193
209
184
211
213
161
229
171
237
191
165
215
176
179
206
187
202
176
140
189
242
193
229
207
202
172
251
187
220
238
207
235
179
190
160
168
220
203
239
216
218
259
253
223
251
210
235
111
206
163
151
162
153
222
171
193
214
176
184
200
167
231
245
242
172
226
203
240
197
288
183
158
208
194
238
210
168
182
188
152
209
256
176
115
219
179
187
170
235
200
251
151
166
227
220
209
263
218
196
230
229
252
226
177
233
237
196
249
146
235
181
194
172
210
237
177
237
183
185
244
184
205
277
225
201
274
215
163
231
225
170
177
171
276
196
267
211
237
158
187
271
206
259
192
205
226
209
244
180
118
190
202
144
192
153
185
191
211
177
241
220
188
200
228
124
146
187
193
191
209
291
203
227
191
199
201
192
203
184
182
197
156
174
201
234
240
207
196
235
207
239
225
136
179
206
174
265
249
216
195
195
164
180
197
196
183
207
174
161
252
218
171
223
162
192
180
174
206
229
224
156
211
215
240
221
205
224
165
205
244
104
207
110
235
176
245
192
131
189
174
262
176
202
223
168
248
209
216
174
179
185
221
203
229
214
203
170
172
246
180
184
203
246
201
157
238
187
176
147
234
186
258
201
177
257
205
246
232
174
200
218
169
228
200
229
225
140
217
206
149
174
225
251
165
227
224
201
240
247
224
209
140
176
253
187
206
148
207
126
188
164
251
191
169
269
190
183
217
210
219
207
221
282
197
211
185
200
190
193
220
214
199
239
203
200
219
198
216
168
248
198
216
212
216
204
218
192
139
237
209
187
163
178
257
219
270
157
184
188
265
206
145
175
204
143
160
159
197
208
186
238
188
167
186
203
193
214
153
260
218
183
206
198
142
217
192
201
186
237
176
208
183
185
257
189
215
239
132
200
208
165
174
220
227
175
177
199
230
209
177
223
231
205
183
229
188
172
125
204
229
250
140
211
242
223
195
193
241
224
220
226
204
132
206
245
189
202
228
165
163
227
240
205
206
145
255
248
163
159
170
166
198
165
263
255
212
215
185
248
193
270
190
211
165
240
148
236
212
232
244
219
157
194
198
225
208
156
129
183
222
233
210
245
189
208
185
240
217
184
217
208
216
208
225
226
171
221
161
168
224
185
236
218
217
208
139
164
159
229
198
247
113
209
171
201
198
255
178
174
240
157
156
155
205
209
162
219
221
197
220
257
167
247
192
254
177
194
164
144
225
224
177
214
208
152
158
167
122
207
209
202
238
177
205
139
177
192
153
172
141
247
206
228
160
183
167
285
224
197
192
275
186
229
242
207
262
128
188
226
195
202
235
248
191
154
210
231
220
151
226
200
166
275
155
187
195
167
224
167
159
275
175
147
218
256
188
183
174
194
253
210
187
166
240
232
226
196
226
226
213
195
218
185
179
122
172
221
216
207
198
217
155
165
167
174
243
252
196
223
116
211
187
234
144
197
203
198
127
185
166
180
215
219
212
205
192
221
187
212
177
233
214
225
158
216
225
217
184
201
178
261
201
163
200
200
197
228
253
227
162
238
245
254
276
177
231
156
199
202
246
225
223
187
187
167
210
180
216
187
227
180
218
147
169
134
167
142
191
196
215
273
210
177
233
200
207
192
248
212
222
272
219
182
185
186
208
237
238
219
181
227
226
224
174
213
191
194
192
171
202
161
164
206
190
217
222
150
227
207
220
232
185
160
176
173
176
163
245
161
214
251
247
220
207
186
187
192
177
233
217
218
215
191
212
215
111
232
205
185
184
191
228
143
207
188
202
231
267
197
200
164
180
165
144
182
159
245
189
216
179
233
223
245
220
204
136
228
188
177
231
224
176
208
211
221
158
161
184
268
169
183
117
222
184
214
219
197
226
221
196
151
218
231
264
202
162
193
194
157
227
98
187
153
211
201
227
184
115
206
195
207
173
213
200
251
153
185
180
203
169
179
204
199
204
173
210
216
213
146
229
173
213
240
199
191
159
202
226
224
223
236
173
147
179
183
179
188
213
193
191
226
237
131
235
228
216
169
218
136
230
167
180
227
183
133
231
219
180
276
240
142
195
240
198
234
151
247
180
153
210
211
230
184
218
137
173
254
172
227
187
151
226
232
248
167
151
148
202
218
208
251
211
186
205
235
182
170
248
155
207
222
234
243
203
198
228
170
217
198
225
209
134
153
220
201
161
135
211
170
215
251
161
151
177
178
207
216
137
262
277
211
207
207
249
188
99
223
216
277
264
271
208
161
157
177
243
206
220
116
119
149
207
165
170
229
204
148
238
205
176
171
213
213
191
247
184
224
215
235
139
179
181
208
235
222
276
212
238
227
218
197
209
187
138
256
158
214
212
158
181
217
202
172
218
247
231
180
233
185
229
179
189
199
234
208
292
183
213
223
234
208
236
238
150
191
230
202
154
243
177
160
224
245
190
236
217
139
209
227
239
101
232
235
201
223
174
206
237
189
212
251
227
151
226
189
176
227
203
209
237
252
224
140
137
192
264
196
140
188
194
222
157
173
140
197
173
227
198
193
183
198
184
149
192
221
201
150
182
221
237
252
231
251
238
232
222
189
183
148
172
231
184
206
178
199
221
191
210
206
162
164
177
236
192
173
173
221
106
201
257
217
180
182
226
233
200
209
163
203
173
234
185
191
164
129
225
162
196
219
182
235
194
166
220
212
230
279
170
240
159
188
245
257
175
230
178
208
252
182
222
204
201
177
164
222
209
201
163
233
221
181
180
221
148
121
199
187
194
165
207
237
198
174
236
211
242
186
228
100
221
211
169
272
203
200
189
228
170
222
96
177
251
245
149
201
250
228
236
233
210
219
175
202
222
236
229
235
213
253
163
206
238
227
190
215
222
162
191
253
170
204
218
219
178
144
205
210
209
176
224
232
185
220
226
159
180
258
179
267
210
178
213
180
203
184
218
139
166
194
150
166
205
256
183
208
217
206
216
199
177
197
213
201
166
226
206
155
255
291
226
190
220
226
176
177
225
164
212
231
208
158
126
206
253
230
172
221
159
208
231
131
239
188
233
247
207
204
171
227
233
233
183
124
140
246
264
174
232
218
113
206
198
218
204
270
208
176
256
239
147
236
212
200
190
194
171
184
235
210
199
216
199
177
164
148
146
210
253
215
175
233
201
219
205
214
193
256
182
129
248
205
205
128
226
251
182
190
148
233
181
213
245
196
174
232
206
206
214
237
249
214
222
222
221
221
163
266
221
213
246
163
142
166
170
216
224
214
201
187
209
156
178
157
219
183
184
207
149
195
157
213
170
215
163
176
169
140
264
149
226
224
200
254
142
205
261
206
141
170
226
185
206
219
180
225
266
177
250
215
225
243
222
191
164
237
186
174
185
202
227
191
187
189
173
185
172
284
261
227
200
190
216
209
250
218
214
233
222
160
209
233
213
232
125
176
199
245
213
228
215
197
208
209
186
237
138
189
162
191
168
190
215
243
269
242
231
250
158
267
87
191
189
185
196
213
212
192
212
228
245
190
168
191
227
152
205
209
219
250
192
166
251
212
244
186
203
197
184
192
206
188
210
210
226
215
196
198
185
181
188
217
219
191
188
92
215
234
234
248
181
242
214
216
190
220
243
171
165
157
231
167
207
206
219
195
249
223
187
171
194
175
173
175
196
205
168
178
201
159
168
196
219
218
205
194
231
244
113
195
153
221
177
196
246
202
201
141
219
185
214
200
165
123
212
200
205
252
173
193
141
149
223
215
182
205
178
216
215
181
103
135
242
195
235
191
134
204
222
228
162
238
203
246
187
198
154
234
223
229
192
201
141
192
227
180
194
199
183
265
178
249
215
225
216
194
190
186
189
229
251
197
246
228
152
196
244
189
223
261
190
182
199
181
163
235
209
211
225
184
246
213
215
178
290
269
168
203
216
178
218
214
216
193
199
187
167
212
182
146
206
247
221
215
137
235
175
254
167
210
209
245
169
232
216
138
230
189
152
182
214
245
169
260
235
231
226
196
134
265
209
205
188
249
217
190
233
181
256
212
204
191
215
246
212
191
200
165
230
161
192
212
192
242
235
256
142
167
200
224
274
165
151
182
204
182
151
166
240
153
229
129
206
151
225
184
232
235
163
217
176
144
223
225
144
207
263
197
232
173
200
217
182
259
170
185
229
202
185
209
188
177
211
200
218
208
192
160
213
195
184
163
185
200
230
150
208
176
247
117
155
163
237
157
237
195
228
190
190
176
146
222
156
248
231
176
200
161
149
252
248
167
155
189
222
162
196
211
259
213
207
232
174
231
137
212
184
232
169
157
158
144
252
273
191
168
124
198
208
180
161
194
167
227
190
219
173
197
202
168
249
211
234
245
264
255
213
235
193
264
217
233
213
223
196
249
157
172
162
180
220
220
181
163
168
251
265
196
269
270
187
174
295
212
180
228
189
240
169
229
178
180
174
189
179
222
181
188
224
216
201
195
192
211
156
234
117
171
227
196
205
218
243
149
186
161
239
244
200
259
216
161
221
181
139
177
217
146
186
217
175
147
200
180
176
232
236
234
222
221
164
176
170
173
243
228
174
209
200
207
142
231
216
229
256
219
208
257
190
231
199
208
205
185
227
182
221
109
221
240
216
203
227
255
262
214
190
181
177
219
137
188
181
209
183
193
216
245
232
212
182
195
185
223
174
196
155
173
198
203
202
173
155
184
228
249
164
252
207
236
135
208
209
138
225
223
165
195
233
212
136
165
168
198
143
259
84
272
252
178
169
159
156
175
235
171
212
165
189
280
140
225
237
183
131
273
204
218
244
219
212
157
227
220
229
216
237
142
200
235
188
188
232
194
176
180
248
250
199
163
184
171
202
214
203
175
110
192
181
179
207
194
232
187
185
221
148
194
181
148
213
215
144
178
202
213
264
272
181
235
206
199
159
217
194
185
254
232
112
245
173
174
253
189
181
201
237
203
188
185
224
201
205
239
174
184
156
186
194
127
200
229
116
267
210
200
197
183
160
175
235
215
162
236
190
194
208
227
205
169
263
240
174
254
224
234
174
227
207
213
227
192
218
179
258
127
284
235
232
190
201
222
221
207
201
242
201
146
134
206
231
199
189
231
213
155
160
186
153
211
219
181
169
238
192
197
205
229
184
228
255
151
236
203
201
166
229
238
163
159
207
185
209
176
170
209
171
109
185
213
211
159
180
154
174
237
193
203
229
265
160
189
214
224
250
197
245
191
207
179
201
226
236
202
223
240
232
202
199
186
216
178
211
215
231
233
173
223
194
216
164
192
161
215
162
225
216
175
245
166
189
174
184
206
178
178
211
241
195
230
159
231
213
262
242
194
207
256
139
195
184
230
194
174
189
173
218
285
243
197
213
233
181
243
241
196
204
144
186
201
189
152
219
213
206
156
211
176
133
137
196
190
240
226
245
212
169
254
150
212
198
153
200
202
185
187
157
201
202
205
231
214
217
213
167
180
253
191
238
185
230
125
157
189
218
254
219
145
278
160
244
233
253
211
160
252
169
142
249
224
199
181
228
267
216
163
182
146
184
190
178
226
251
203
175
242
236
187
221
181
175
198
168
190
239
178
157
133
197
189
256
194
201
196
207
163
162
213
199
265
157
172
206
185
211
224
214
163
183
215
176
194
245
148
222
238
145
190
243
183
227
176
251
204
187
180
127
181
189
151
214
199
213
217
188
239
182
230
174
170
119
181
139
217
191
222
193
212
198
218
181
188
157
204
249
180
181
185
140
226
234
149
194
163
284
204
229
230
187
179
210
138
134
184
214
190
221
193
135
174
239
176
176
245
205
210
198
170
220
207
163
172
228
204
188
179
253
222
202
186
187
243
161
205
188
127
194
251
252
281
168
225
175
245
159
226
198
205
240
174
122
214
245
163
200
191
270
207
257
252
154
197
262
145
207
168
265
170
188
224
177
157
193
221
265
188
154
192
214
179
179
240
230
274
169
177
134
159
163
130
207
191
197
231
292
220
226
189
200
173
251
130
184
218
215
187
214
234
217
128
181
254
282
238
201
229
221
212
238
189
215
217
175
128
205
158
263
162
160
207
209
181
234
142
232
229
171
220
230
142
131
249
188
245
235
262
173
255
185
215
210
140
168
255
230
232
212
146
242
222
193
222
216
171
228
210
199
167
247
166
223
173
194
186
117
225
251
211
149
206
198
238
169
196
189
175
179
176
211
223
186
213
194
184
217
169
138
195
184
231
225
218
201
225
225
178
203
266
196
210
215
210
103
198
237
225
200
226
216
229
240
169
204
230
246
219
233
204
183
230
177
229
164
151
164
228
264
160
199
246
170
244
164
257
155
216
224
198
167
208
155
222
229
184
121
204
139
199
227
232
194
244
228
203
144
216
175
249
202
226
247
210
224
159
226
225
200
166
182
228
226
226
235
248
197
146
194
265
160
180
175
173
259
229
206
212
133
139
177
194
197
276
190
177
191
219
227
208
142
247
210
215
156
155
171
197
206
164
229
128
232
150
241
179
185
184
239
194
234
256
195
193
181
206
250
169
215
187
234
197
243
210
190
232
230
201
196
193
228
229
198
214
197
176
172
187
149
150
198
167
196
120
225
181
222
174
215
208
249
180
163
154
225
160
208
203
190
99
204
188
206
196
194
195
139
190
213
182
231
230
239
235
220
219
214
196
204
189
184
212
253
170
214
167
116
171
208
216
181
199
241
319
187
165
226
224
240
198
216
213
239
242
190
177
158
236
196
238
263
238
209
215
194
205
179
227
253
195
184
243
188
178
198
175
128
207
237
238
229
171
190
214
217
183
205
203
194
194
132
210
235
257
193
159
190
186
203
163
140
225
197
214
195
205
172
227
225
189
230
193
185
159
176
239
207
209
218
225
128
180
156
234
221
175
222
232
203
169
206
207
178
194
194
142
217
189
153
203
247
183
208
169
149
234
246
188
130
186
271
176
146
174
226
144
214
229
167
162
202
147
186
219
220
266
220
147
190
169
214
237
212
198
225
244
140
203
187
156
173
176
173
206
224
195
226
182
168
190
236
258
221
214
215
187
186
252
189
220
190
171
199
170
233
176
193
251
224
221
168
219
213
230
200
140
200
234
178
185
198
223
199
240
240
251
193
200
151
249
165
182
135
235
192
211
184
207
229
248
222
217
244
214
208
219
230
223
222
189
215
187
268
216
280
267
212
219
188
213
236
261
205
166
203
143
225
197
238
214
159
188
202
256
216
179
205
251
189
192
162
234
281
230
207
251
164
216
256
190
193
182
242
180
236
168
167
188
244
198
271
216
220
247
157
189
169
167
180
226
162
242
205
161
239
226
193
187
250
265
256
187
220
191
227
212
205
145
200
172
217
165
254
222
187
231
193
216
255
224
234
233
171
216
202
250
228
231
248
212
172
182
186
205
197
179
214
239
226
215
153
198
174
243
211
182
179
259
193
168
173
163
162
175
204
242
220
169
188
246
254
209
197
218
189
257
228
191
152
215
182
239
240
247
222
222
209
151
185
177
227
194
215
168
248
127
267
191
265
230
167
167
157
241
284
207
217
233
181
245
139
219
281
214
208
170
238
223
183
123
175
162
232
206
251
194
248
208
233
184
196
250
193
222
200
228
162
156
242
258
205
167
211
224
197
257
140
200
208
215
196
193
201
179
189
190
234
241
251
153
178
203
232
197
301
193
190
212
215
194
196
185
188
144
186
122
281
252
247
172
196
129
249
190
177
192
171
260
168
193
211
193
249
182
251
206
155
226
129
160
202
203
216
129
136
176
212
169
210
152
204
172
211
232
208
215
191
126
195
165
232
124
249
179
193
197
178
224
185
173
199
203
224
175
128
213
225
222
237
241
205
254
232
245
241
185
245
168
151
193
205
143
203
186
244
192
230
127
212
209
220
219
224
245
213
179
197
186
112
160
174
222
193
152
204
206
183
176
183
204
179
226
155
224
193
203
226
254
166
217
152
177
198
235
173
255
126
222
160
233
199
240
174
217
235
198
218
259
249
190
236
162
173
207
176
206
227
210
248
156
236
217
244
274
195
269
163
194
203
245
213
182
212
231
224
180
261
217
200
200
215
165
160
143
194
222
200
225
159
185
248
148
211
228
178
172
169
197
191
232
228
292
221
159
198
206
191
201
203
176
137
118
241
213
186
228
207
173
183
193
184
208
132
178
248
139
153
170
211
188
161
220
177
168
204
222
212
177
198
217
218
187
226
241
221
173
168
189
205
150
216
266
288
172
133
210
188
222
166
187
223
165
212
229
231
218
185
223
198
171
222
162
220
230
210
208
209
164
242
209
217
200
217
180
187
153
243
197
204
153
216
219
179
256
167
192
216
152
177
218
216
160
249
234
196
213
277
172
210
210
236
185
189
202
216
151
241
181
204
207
127
230
182
166
194
198
225
169
195
212
242
183
241
236
219
191
222
199
163
158
196
197
231
206
147
290
161
176
190
241
170
212
244
293
193
207
189
193
169
243
238
165
194
167
224
218
188
146
205
173
252
207
203
256
181
162
209
215
213
256
190
232
270
162
176
181
227
168
248
233
201
207
194
273
237
182
213
198
187
160
220
168
188
186
201
222
126
158
153
183
246
121
225
248
205
210
202
223
232
211
178
256
197
171
187
209
136
203
239
140
199
174
189
244
190
159
119
183
160
236
205
188
250
207
159
156
231
123
198
204
208
218
229
237
249
254
177
198
252
138
205
183
187
207
229
258
222
260
184
205
244
132
237
228
242
183
231
257
179
204
170
226
184
206
176
126
205
205
176
240
216
232
224
172
236
258
187
261
215
152
230
233
142
159
209
205
225
174
224
134
205
198
209
230
223
165
245
214
230
233
202
227
198
159
262
208
227
152
225
192
184
199
214
159
177
224
150
225
157
249
202
194
183
228
261
162
196
126
206
263
217
217
211
212
206
211
178
205
253
176
244
148
156
161
205
165
181
199
169
219
221
132
182
198
218
218
209
286
190
170
230
211
199
193
189
223
172
231
193
231
188
225
209
219
164
197
177
211
152
189
190
230
224
206
219
198
223
208
206
188
205
194
235
192
191
194
229
257
153
280
193
223
296
227
227
254
196
213
209
202
170
194
226
189
161
164
181
227
131
205
152
227
200
210
165
171
258
174
209
171
181
210
174
176
222
216
209
203
190
162
215
247
188
216
208
219
194
239
164
237
150
217
206
240
245
206
224
200
198
191
173
256
175
163
177
127
172
271
230
235
145
184
145
222
214
202
200
203
210
168
237
180
237
263
114
270
166
197
258
180
201
227
234
190
245
223
157
219
168
234
207
233
191
161
178
194
261
248
189
162
246
280
208
174
143
250
229
175
220
225
129
148
262
160
262
162
181
154
244
193
202
228
172
205
160
168
248
237
213
210
154
245
230
185
233
183
215
195
206
190
161
240
238
229
176
193
242
176
184
241
228
235
259
174
162
236
225
204
259
213
149
189
209
242
206
197
203
204
153
222
187
200
214
218
126
205
149
182
147
219
154
242
193
204
225
227
213
183
161
220
240
150
207
265
205
199
206
199
196
184
156
218
165
126
227
185
156
248
153
262
224
205
252
255
114
196
192
198
197
194
204
196
206
192
225
213
180
191
173
247
189
111
204
236
235
143
204
207
223
249
245
260
222
218
201
222
195
218
185
180
219
232
118
250
256
238
189
114
203
175
148
293
220
172
222
157
242
250
185
238
181
179
236
179
202
192
196
168
218
187
168
166
160
234
192
228
168
218
189
129
244
223
225
200
230
219
207
233
184
232
176
193
182
180
186
196
275
205
163
212
185
172
229
129
176
154
202
184
216
177
183
197
179
224
185
145
238
220
207
234
182
182
195
211
249
185
217
217
139
214
194
166
177
239
239
230
225
200
141
194
139
184
213
225
227
159
234
204
179
153
203
218
232
212
186
218
249
188
187
189
228
194
218
213
126
184
169
178
201
213
155
218
133
134
188
182
224
216
187
191
140
218
207
179
211
271
201
228
195
189
169
165
228
213
214
175
212
203
207
262
192
220
218
207
252
181
209
178
160
225
201
198
196
178
192
131
212
229
221
200
207
146
202
199
141
233
252
153
199
182
199
152
180
201
203
265
220
230
202
173
225
170
231
222
172
208
163
239
239
254
226
200
165
206
205
188
187
223
154
176
142
186
179
225
184
230
134
238
253
152
236
180
136
197
262
280
288
246
185
156
124
221
236
163
205
197
202
228
199
167
174
255
141
130
210
201
184
184
157
151
176
204
148
231
204
231
139
213
223
204
161
243
199
189
156
195
171
233
200
173
212
256
186
268
203
219
212
208
245
234
229
156
187
237
147
216
259
176
180
194
161
212
154
157
187
200
226
150
109
209
212
193
256
259
162
199
143
194
108
206
235
213
201
263
212
245
166
228
258
266
148
211
201
189
181
170
179
177
230
148
165
182
229
254
196
200
229
220
249
244
162
146
163
192
193
216
153
148
205
143
196
225
148
210
162
194
225
235
220
241
239
234
220
227
152
286
193
212
249
218
150
178
239
150
198
148
219
192
291
195
154
250
207
170
215
167
181
119
241
182
230
174
240
191
187
161
143
179
158
227
144
163
179
207
177
195
198
212
242
171
177
173
169
196
204
170
228
194
173
182
239
178
154
183
258
238
210
248
232
182
237
220
218
238
219
231
227
211
209
277
171
157
187
177
161
201
179
198
211
201
207
164
206
178
165
183
183
240
177
194
142
193
264
211
243
228
127
159
201
249
144
183
229
206
181
143
204
177
162
239
158
215
231
244
165
210
145
218
268
196
184
225
211
286
170
177
257
210
160
238
181
199
231
229
181
188
228
188
209
194
203
175
169
189
208
221
188
206
162
273
186
258
254
211
252
192
211
164
223
231
201
240
154
145
220
219
140
186
208
218
196
174
197
133
162
226
170
201
185
237
190
195
202
167
119
185
197
217
208
220
173
246
222
240
222
190
180
205
159
144
196
175
188
215
189
194
177
178
177
175
211
189
145
222
271
158
219
226
219
192
211
250
209
255
265
175
184
223
173
259
174
171
234
233
173
213
245
211
166
224
237
222
218
221
160
260
269
179
194
207
174
177
212
212
239
141
148
171
188
219
213
193
208
240
229
167
192
216
200
171
198
176
213
181
144
214
198
196
187
226
149
222
201
216
194
212
240
243
215
199
140
223
156
200
238
267
270
180
216
174
248
180
215
212
177
225
211
161
185
149
193
227
235
186
220
203
134
222
166
193
204
185
191
235
214
147
153
224
216
224
240
226
137
172
190
223
237
161
196
213
151
182
181
239
271
209
224
180
245
243
170
156
192
294
204
213
239
157
280
219
222
151
221
199
203
264
210
202
136
202
171
119
128
218
161
228
158
236
107
302
257
179
129
194
184
191
248
135
179
195
174
169
191
165
221
206
184
249
152
252
194
243
188
195
184
226
208
217
246
203
244
161
194
158
179
231
213
263
167
224
197
211
175
192
268
267
253
227
164
197
140
183
223
230
231
150
167
236
140
240
109
127
237
138
237
253
170
142
180
227
200
161
231
214
211
215
162
150
189
221
245
251
205
205
207
205
213
175
208
195
158
176
213
204
198
206
251
234
214
191
219
200
133
255
221
260
249
141
164
212
251
191
219
216
144
205
204
183
172
206
159
189
190
197
219
185
178
228
175
198
161
215
220
241
207
215
190
167
148
208
190
125
215
176
272
212
214
243
238
270
204
236
205
176
191
148
249
157
194
221
198
189
239
184
164
165
176
168
215
210
206
190
251
204
242
206
201
175
201
221
160
215
173
214
239
250
250
208
225
189
191
171
188
238
226
179
202
245
158
160
191
255
254
222
208
225
149
203
141
189
189
175
253
171
128
121
145
166
175
266
201
202
212
223
205
258
183
191
225
183
182
188
209
242
227
154
223
157
204
210
223
217
215
167
157
228
155
190
214
218
171
195
178
232
262
176
270
204
188
183
154
202
148
165
165
229
212
275
236
178
211
178
226
184
219
197
237
236
189
206
200
216
181
261
271
211
176
200
230
226
223
169
163
252
201
148
212
208
218
210
229
230
221
181
222
215
127
275
155
235
229
192
272
221
161
217
261
211
212
209
185
218
205
209
154
234
206
169
204
225
220
222
218
104
278
205
202
218
224
201
238
195
173
265
174
158
190
175
157
225
186
200
210
246
211
191
254
196
136
243
180
235
214
229
235
190
137
187
192
88
121
173
253
265
173
189
200
191
160
194
145
202
217
194
171
189
153
188
127
217
171
246
234
147
236
222
178
219
235
225
248
289
185
175
214
234
184
173
154
271
171
235
169
104
206
168
103
274
168
168
253
223
172
193
193
223
148
230
221
189
206
224
201
148
198
224
214
197
156
167
108
185
207
167
184
182
265
175
218
140
214
149
190
160
135
239
207
250
186
201
178
208
170
210
180
265
217
181
210
228
173
202
161
201
219
246
247
133
208
195
209
122
246
246
197
185
184
176
152
195
196
220
191
207
194
210
167
126
148
257
209
203
155
239
227
281
194
206
179
196
245
177
150
234
181
208
243
156
165
170
206
230
179
109
143
210
174
218
180
229
210
215
206
194
172
223
171
157
155
229
148
133
164
165
226
255
222
229
206
236
222
234
166
231
169
196
164
192
228
230
169
165
163
171
236
126
228
173
184
236
172
196
185
198
242
152
226
176
216
211
218
236
234
201
237
175
215
243
198
166
154
156
218
222
236
250
233
211
238
173
176
253
212
204
257
176
212
179
238
210
227
212
243
209
155
217
197
231
217
235
250
160
220
158
110
219
163
269
156
149
222
187
221
231
190
224
206
212
255
182
249
209
208
196
228
220
184
194
172
243
184
191
197
201
196
210
100
185
160
245
251
194
161
173
211
222
218
238
235
198
220
160
196
163
226
181
217
165
191
214
214
128
210
235
207
239
261
172
186
165
210
241
223
226
190
209
209
197
212
204
271
171
196
205
165
181
132
197
236
215
159
209
195
150
213
176
201
168
224
193
173
198
144
189
188
167
237
183
180
224
155
195
194
209
220
205
227
223
240
221
210
210
151
204
175
144
212
169
193
212
270
174
216
166
273
217
228
174
214
173
244
221
248
166
185
222
252
191
184
153
180
229
204
133
256
171
212
168
154
191
231
208
174
188
120
141
187
180
161
228
230
202
211
200
188
145
195
177
195
198
185
214
170
207
223
199
198
207
173
199
176
251
203
261
204
208
176
213
196
182
248
239
185
243
239
192
147
237
230
240
172
205
232
254
258
238
240
175
242
191
149
145
205
200
173
232
253
223
174
214
236
217
184
233
185
155
169
168
183
240
216
158
194
176
126
203
200
253
182
207
233
151
200
230
217
216
213
232
193
268
243
249
124
144
185
214
216
167
219
217
202
211
216
265
155
185
178
222
176
218
161
190
262
190
243
257
180
232
224
206
181
169
232
144
218
203
192
148
139
210
223
152
179
190
194
160
150
246
233
211
183
182
198
257
236
190
190
216
235
196
234
138
205
157
232
204
135
211
189
208
174
217
219
232
230
194
215
170
206
201
213
173
199
170
161
199
208
194
181
203
126
139
204
176
141
229
184
143
160
180
173
230
231
223
222
207
198
194
279
218
188
220
149
216
153
234
158
257
215
124
244
250
219
187
136
249
245
156
156
219
162
161
175
200
230
189
188
210
214
149
190
187
212
181
212
113
185
191
203
180
161
206
227
217
202
202
225
268
179
162
212
169
257
184
133
171
218
187
215
221
238
167
240
228
156
153
244
166
157
220
231
202
171
206
199
249
148
128
177
220
229
219
264
189
167
168
205
208
229
169
238
309
132
152
188
219
149
212
234
215
157
181
202
185
231
204
163
140
214
212
179
217
211
232
215
195
244
202
204
249
213
204
258
186
167
93
205
132
246
207
225
212
203
214
228
222
259
150
135
242
164
241
172
185
176
241
190
153
177
175
202
231
226
243
128
289
243
225
197
248
204
220
200
238
165
212
207
207
155
200
265
176
288
185
194
178
228
190
193
199
240
159
175
187
206
193
177
218
221
219
241
209
223
255
161
180
171
227
213
176
202
220
169
153
194
232
140
184
235
189
160
174
213
235
164
189
212
158
224
203
188
213
243
131
177
260
201
158
241
231
155
234
210
174
222
143
131
202
208
211
205
200
224
225
227
222
204
235
223
227
212
177
204
208
211
197
190
220
177
160
197
238
226
217
176
155
251
148
269
183
252
169
177
201
221
187
211
216
222
172
212
150
175
210
208
154
182
183
190
145
173
166
181
185
188
258
197
229
210
192
181
193
191
151
146
171
209
168
187
215
183
246
190
216
180
198
166
228
191
212
197
262
217
255
218
220
197
173
234
213
186
199
199
247
190
175
174
214
230
247
257
276
181
192
189
177
209
157
155
232
169
210
251
170
155
175
194
193
144
166
230
202
174
194
146
188
206
216
234
199
168
202
196
201
228
154
189
188
260
193
244
171
211
179
209
225
221
225
215
173
164
158
182
155
219
165
199
153
207
231
225
263
182
215
168
189
268
135
215
215
227
206
239
194
236
216
224
175
130
214
241
206
165
199
231
192
165
225
184
225
182
235
182
214
231
182
236
192
233
214
227
210
215
163
277
238
194
146
224
191
226
224
179
228
165
217
155
139
143
125
159
156
211
181
238
228
263
161
164
208
181
188
269
203
233
182
149
144
237
248
177
224
219
259
172
153
242
261
178
224
176
89
211
195
185
214
169
148
241
216
261
159
172
156
166
191
262
188
181
176
221
123
213
196
188
176
216
154
213
195
232
206
219
205
194
194
210
189
238
184
266
150
204
148
205
245
166
176
223
159
190
258
196
251
149
222
190
220
155
242
156
169
195
220
168
269
181
152
220
236
161
167
249
195
237
165
175
177
231
256
189
183
253
155
208
271
264
178
172
206
222
166
231
239
139
138
216
151
172
238
131
183
198
176
224
192
224
186
225
208
230
227
182
215
183
203
177
173
208
191
150
203
222
205
258
215
164
231
208
213
186
149
212
173
205
267
186
179
171
212
229
171
241
159
215
174
191
170
195
154
161
234
249
139
141
188
240
166
187
238
243
172
150
205
210
173
256
188
252
195
206
198
165
244
213
192
212
190
192
205
224
175
176
238
214
251
114
200
238
231
223
190
233
213
220
174
173
173
173
177
183
211
164
251
260
173
246
156
207
191
149
234
209
242
239
199
228
154
254
226
200
252
181
198
202
221
230
204
197
203
164
185
170
204
211
145
202
236
202
211
197
222
191
246
212
209
247
121
184
218
237
193
183
117
216
224
155
275
200
170
152
210
177
175
271
217
205
167
238
219
172
228
223
193
145
195
248
216
199
229
262
163
186
249
229
169
126
196
170
139
172
211
246
259
255
167
232
184
146
212
234
172
205
238
213
220
149
187
181
176
223
205
184
212
159
167
217
198
243
183
135
183
229
196
161
202
198
188
195
132
249
237
149
232
226
170
196
235
217
188
177
198
226
208
194
187
179
165
225
157
257
173
171
149
176
280
192
166
128
238
201
197
184
191
182
202
151
205
219
202
141
199
202
144
217
277
252
182
134
178
177
225
251
169
217
215
166
169
197
244
196
202
207
214
200
190
182
263
233
117
130
194
211
205
119
145
211
233
192
265
162
150
170
181
217
241
165
226
183
149
217
203
214
193
181
167
213
199
157
182
213
290
117
229
243
228
258
231
211
212
133
170
177
223
202
177
202
204
188
203
236
160
241
251
148
172
240
179
211
288
202
171
200
207
178
191
187
233
214
223
269
171
188
191
131
232
232
208
235
227
210
154
249
275
215
217
181
216
188
224
227
233
213
231
257
218
187
216
237
217
203
172
226
220
228
200
225
225
196
201
215
240
210
175
207
180
223
234
212
158
196
169
183
245
257
176
135
233
250
207
249
206
265
180
141
181
209
210
160
139
230
157
241
237
197
215
247
233
163
228
242
136
143
259
170
205
240
178
229
171
157
206
184
187
198
155
202
169
255
233
129
196
182
183
215
244
189
213
191
141
183
231
185
224
216
233
209
229
184
200
190
201
203
206
237
261
219
192
160
210
190
230
204
215
172
205
209
217
186
267
197
147
141
230
170
186
270
204
178
201
230
245
206
238
230
202
186
218
133
219
168
232
190
169
225
207
167
166
215
245
210
207
222
120
201
170
193
187
194
145
189
218
229
193
196
165
172
199
180
234
149
207
192
229
223
209
152
203
163
234
200
139
262
111
180
169
191
211
241
213
174
184
231
161
184
222
192
172
195
170
211
218
238
180
209
182
160
230
177
190
216
242
229
201
174
229
215
170
197
213
225
193
240
186
218
235
195
221
253
208
196
164
176
234
166
180
272
200
185
146
232
186
163
153
210
203
220
243
166
218
258
179
166
202
175
260
207
199
211
207
158
153
232
204
129
188
248
264
198
174
247
147
244
193
154
240
220
133
134
183
205
237
169
164
190
223
228
204
177
220
193
232
161
215
181
237
166
283
146
247
223
197
164
215
259
134
221
188
181
228
207
199
193
203
200
218
195
192
168
232
233
236
225
192
198
187
216
171
202
195
194
246
242
147
235
153
215
148
261
118
206
246
179
187
151
175
201
148
189
202
239
203
132
139
196
183
209
192
204
168
174
214
206
271
250
237
142
242
166
236
285
196
194
207
132
192
224
233
132
227
202
240
184
237
118
182
218
258
240
176
178
257
176
219
225
194
151
188
174
209
167
203
190
245
217
211
249
212
252
190
169
175
175
198
190
232
142
142
172
184
204
193
198
229
192
241
198
210
215
178
229
257
263
239
133
180
230
198
187
195
170
238
152
216
164
225
175
162
218
131
275
231
183
154
255
185
164
202
173
176
272
166
191
233
206
211
195
230
181
227
242
228
232
204
197
189
201
205
283
190
216
206
215
214
223
175
200
198
172
164
189
189
167
213
186
214
233
155
221
189
198
201
145
182
216
153
266
172
184
202
182
232
195
211
180
229
222
208
242
247
196
214
156
126
225
188
200
196
196
210
127
196
215
215
190
147
153
206
144
245
237
225
182
184
209
183
208
202
287
174
152
198
183
160
232
214
215
198
194
101
209
265
207
138
201
162
237
239
225
206
197
256
241
186
214
178
233
192
185
260
206
150
282
140
202
214
284
189
230
229
184
225
208
212
202
198
222
153
211
231
234
180
167
157
210
226
206
249
247
169
237
170
196
157
130
208
198
168
198
257
241
99
206
199
257
242
230
215
166
204
180
250
182
196
216
198
233
258
160
189
196
219
225
190
185
231
175
200
181
206
260
192
198
247
187
194
232
231
208
274
179
184
179
190
201
204
193
168
173
226
201
262
222
201
119
187
227
196
279
164
177
234
212
196
182
191
164
170
178
217
174
237
240
195
172
217
207
206
170
240
188
208
217
175
198
247
177
241
225
204
168
202
200
129
232
259
187
207
137
188
180
233
171
153
246
169
182
186
229
166
214
225
139
203
191
239
146
230
154
219
157
244
186
186
278
233
253
198
204
200
192
185
195
213
220
154
221
203
215
195
224
214
187
213
205
185
255
182
157
178
162
200
183
166
213
208
258
215
266
138
235
168
147
167
177
216
141
229
239
185
155
201
174
247
156
161
260
219
234
226
210
256
273
198
238
222
209
262
170
142
236
232
182
193
165
249
192
175
229
168
192
200
187
193
195
128
174
240
197
164
219
201
188
186
237
270
181
208
161
205
162
203
200
228
197
245
239
188
147
164
222
122
206
234
203
221
197
218
191
233
124
155
192
139
218
222
266
245
178
185
181
155
159
186
183
239
195
205
199
194
236
208
244
221
129
229
194
239
239
167
192
224
166
127
185
192
188
206
210
250
219
254
199
195
245
181
173
194
149
233
228
161
243
217
170
157
164
190
214
225
186
196
187
196
214
150
188
199
206
134
180
230
193
209
189
169
228
235
156
195
233
286
191
172
214
227
227
236
202
233
173
188
207
221
173
186
193
256
236
195
170
184
166
173
219
228
199
175
181
145
190
227
183
206
132
183
171
194
216
193
129
168
188
242
187
210
244
166
247
170
188
211
184
178
268
157
192
243
167
160
259
244
236
166
244
189
183
206
226
168
201
195
229
202
212
148
177
221
185
200
150
199
225
196
179
219
235
101
163
187
234
221
213
204
261
253
240
178
249
211
165
245
188
142
198
208
249
204
178
230
197
178
248
210
165
220
182
184
218
229
236
152
222
269
209
159
224
229
192
225
137
175
235
190
200
208
174
199
232
159
153
156
248
229
231
203
246
212
218
223
195
222
177
177
189
198
205
197
187
194
158
200
167
264
233
104
181
226
222
172
157
186
221
176
219
162
245
139
142
263
206
199
203
189
243
223
216
163
159
167
162
212
239
149
156
171
191
240
253
213
150
170
226
207
227
205
181
210
169
202
195
163
157
146
174
218
158
230
183
229
236
183
186
202
288
207
158
213
251
176
218
141
151
242
170
201
208
225
231
200
249
238
108
164
153
231
165
190
269
152
165
209
180
230
165
252
162
226
241
200
124
211
209
179
216
227
197
213
188
229
209
227
216
230
216
217
203
268
137
136
200
200
218
224
292
156
221
196
191
188
235
131
237
149
179
171
223
258
198
188
231
161
185
237
214
186
178
195
135
183
220
204
156
187
179
235
205
120
213
192
157
166
136
261
216
220
198
168
222
176
229
200
212
199
185
180
234
172
269
195
150
218
199
175
125
209
207
239
203
217
224
186
206
203
196
150
124
231
148
189
241
211
197
196
181
198
219
234
207
202
220
232
190
170
228
197
199
239
248
249
201
247
227
166
169
228
115
245
225
238
180
257
220
161
228
204
173
188
236
205
138
232
191
240
185
124
217
224
183
221
229
151
213
183
192
243
184
194
255
232
207
187
215
168
240
185
215
162
156
158
161
213
203
180
211
208
190
229
197
163
213
208
227
122
157
227
226
181
230
214
233
156
201
189
155
146
206
170
278
174
213
199
214
206
246
238
246
199
135
241
190
196
185
204
179
236
254
239
221
236
217
174
181
179
158
157
212
233
185
198
232
237
187
180
182
203
276
147
204
161
228
191
227
172
174
176
136
209
138
238
197
239
254
215
208
218
222
186
206
186
288
214
185
252
184
230
125
233
237
258
200
255
158
262
226
231
221
233
271
196
230
195
222
239
189
166
197
234
196
187
224
222
194
271
194
209
238
228
264
227
133
237
233
221
190
191
212
197
228
189
254
233
226
192
215
225
209
197
209
169
173
249
210
212
196
288
209
258
255
245
149
198
206
224
175
228
219
240
165
184
246
193
237
245
163
192
180
183
155
170
164
190
144
217
168
226
230
187
218
195
217
248
228
179
171
170
241
123
167
202
186
193
164
230
128
194
140
125
201
166
161
205
235
169
224
139
226
210
248
179
216
196
196
224
171
256
226
142
227
244
206
241
149
242
291
208
192
184
156
210
195
224
233
168
252
186
255
165
153
209
206
239
215
188
202
182
214
176
202
214
252
171
214
211
172
209
225
183
249
257
284
173
233
202
253
152
199
195
161
188
206
142
212
229
281
155
209
247
180
220
163
153
191
219
178
248
150
181
182
205
216
152
218
207
237
183
247
199
196
198
205
209
218
239
228
225
230
248
233
228
141
203
241
217
168
251
201
194
261
205
143
235
210
235
240
233
205
199
201
161
120
280
195
238
153
280
178
195
224
196
244
183
244
211
221
194
167
244
226
237
200
215
227
222
162
156
194
232
206
209
192
170
240
235
254
147
215
188
235
280
186
199
188
227
206
241
238
223
183
157
215
221
247
233
205
256
163
183
124
222
145
201
179
217
222
252
163
233
208
216
227
301
167
233
190
239
135
168
156
213
192
226
214
217
123
206
182
210
213
166
238
204
228
198
197
209
190
196
177
242
218
154
225
196
220
216
258
150
233
167
128
201
204
139
224
162
185
205
213
153
248
181
195
231
175
215
159
148
201
213
252
175
188
213
199
142
205
165
144
182
210
219
209
168
197
191
237
150
149
255
210
233
233
159
180
238
203
121
243
169
236
173
180
208
201
234
185
208
204
188
157
198
185
168
217
259
151
125
247
164
161
245
202
181
168
130
190
201
226
263
164
248
193
181
194
163
182
133
240
188
126
179
198
195
195
235
224
224
155
191
256
222
132
211
201
193
262
148
238
139
196
216
193
171
210
178
162
209
227
155
128
205
202
242
214
207
260
184
193
193
148
212
206
161
204
234
222
218
203
256
156
172
202
203
216
184
164
191
239
189
196
220
202
198
226
210
196
205
241
191
171
216
161
215
135
193
216
228
214
197
165
248
177
169
240
181
206
199
186
221
223
174
208
167
205
180
150
179
137
229
209
225
181
164
193
201
176
186
135
191
178
191
191
211
284
125
224
174
177
168
229
134
171
156
182
201
217
200
250
192
209
179
119
196
227
221
195
233
174
206
235
156
218
207
176
227
210
177
195
178
213
235
241
231
254
236
210
214
213
209
173
182
200
240
253
222
262
214
206
146
189
169
156
175
186
175
202
163
171
193
192
220
203
212
117
214
186
250
184
166
142
231
212
180
216
228
164
137
240
215
240
173
214
186
227
196
205
223
219
188
237
206
227
198
231
192
185
157
177
179
157
201
269
212
169
202
164
223
246
175
222
218
159
172
198
230
158
237
186
182
168
261
207
177
147
170
163
264
183
205
202
186
163
206
192
163
262
206
210
236
200
152
179
201
260
154
170
243
182
160
174
186
233
212
131
205
231
265
215
129
251
227
165
180
234
205
183
205
170
264
187
198
183
226
179
234
188
247
261
202
248
208
168
263
249
236
189
176
243
205
190
230
150
167
158
242
179
156
241
208
192
175
256
221
227
256
230
232
218
251
214
246
187
234
182
198
218
196
130
211
206
197
155
219
116
198
211
239
238
218
208
190
212
203
227
249
212
200
259
199
209
251
214
193
142
178
233
232
170
208
168
196
217
248
209
198
190
245
225
175
189
218
233
273
174
240
242
213
164
243
190
204
253
222
259
205
149
214
203
193
194
147
210
233
200
204
177
169
163
231
150
254
162
187
146
173
163
173
234
210
181
195
217
194
182
146
208
202
208
257
173
227
179
178
240
230
258
202
225
212
230
222
215
244
215
252
231
217
206
127
244
150
226
143
251
196
234
190
207
234
197
230
179
191
214
218
116
196
191
224
203
241
206
261
256
133
197
194
218
207
165
203
230
236
119
224
167
200
190
173
206
186
183
220
210
178
175
189
175
270
178
199
170
143
195
206
212
181
207
214
260
174
258
189
235
163
257
208
161
243
232
125
209
189
227
177
225
253
183
214
182
266
189
217
190
178
198
210
181
250
203
199
208
162
205
232
197
252
183
151
219
160
211
173
233
228
196
217
222
184
175
160
152
195
185
168
205
153
241
211
216
185
129
216
217
151
205
204
178
212
187
161
225
198
252
240
153
239
210
191
163
178
161
185
177
243
210
184
231
227
222
235
199
141
196
211
208
166
182
162
187
135
212
171
201
150
116
188
135
216
189
238
115
219
108
212
191
127
204
198
249
148
211
226
201
189
275
242
239
175
232
265
233
223
234
154
184
191
192
163
205
165
182
247
222
171
165
229
191
169
205
188
247
190
176
278
251
210
235
197
175
202
179
202
144
232
109
185
228
166
248
207
139
148
164
177
169
191
157
246
200
208
148
179
247
234
207
199
250
161
211
134
247
168
243
198
212
207
284
285
244
202
276
225
218
185
239
239
186
179
221
206
170
161
224
208
161
249
257
155
148
177
209
207
198
223
189
202
191
176
240
187
190
145
183
186
156
130
183
189
177
242
162
175
155
232
218
218
194
227
179
218
172
262
255
192
226
223
163
155
194
211
243
221
214
207
107
232
235
172
141
189
219
162
184
268
159
182
237
213
173
143
167
160
261
161
282
203
181
247
196
170
171
207
239
182
227
177
169
198
165
192
180
207
200
176
174
194
211
95
240
171
168
176
200
184
232
214
210
177
206
188
208
250
242
221
162
128
153
205
244
180
216
249
227
202
238
201
175
193
199
226
220
211
220
226
155
223
202
194
153
223
196
204
186
198
176
227
228
197
202
245
197
165
217
256
190
230
210
203
200
191
278
164
155
185
190
191
238
236
215
206
188
254
248
220
225
180
218
176
234
218
229
185
209
150
204
208
256
185
235
167
180
249
256
127
187
140
136
197
144
179
210
170
203
210
184
252
176
204
193
173
198
197
245
215
171
212
136
239
225
234
172
182
177
156
201
208
197
216
209
115
232
194
203
218
216
215
225
220
235
248
205
184
135
216
221
226
192
190
236
228
194
185
226
159
197
145
201
184
177
132
258
256
181
190
192
165
190
176
204
230
186
171
245
224
198
107
220
97
163
197
197
179
256
122
142
142
270
200
245
143
153
211
155
165
154
173
197
201
127
261
258
238
150
255
145
146
218
195
202
222
153
186
228
225
163
236
136
176
166
232
141
243
226
205
186
189
155
135
252
252
173
162
231
162
206
158
214
249
199
237
145
124
196
228
257
214
117
229
259
243
243
198
202
195
178
235
216
235
233
206
190
208
196
201
202
199
157
209
176
185
218
171
174
210
231
222
186
172
199
205
165
255
142
259
223
233
170
202
157
205
203
181
230
249
288
140
150
190
219
117
191
156
237
219
215
235
164
167
196
169
231
198
185
244
207
183
251
202
203
256
235
199
181
250
165
214
199
216
153
234
223
215
214
168
182
259
204
157
181
188
209
248
237
182
138
156
160
246
218
237
254
213
222
173
225
227
189
164
239
219
200
189
202
188
230
239
224
237
215
205
176
233
233
255
233
183
237
231
279
174
142
185
213
191
175
247
136
199
238
260
202
198
177
196
179
136
211
208
205
180
211
257
184
181
151
162
233
239
187
237
186
255
282
307
230
224
202
210
199
206
238
246
204
131
213
286
152
178
250
213
183
174
192
210
233
185
241
198
164
232
199
221
225
202
186
232
190
226
176
166
176
185
143
223
216
230
162
235
152
178
230
248
175
239
208
159
170
158
201
214
150
162
210
166
225
203
233
132
229
228
220
213
169
240
207
172
220
180
130
198
180
228
201
161
220
143
200
211
203
183
210
127
243
222
181
122
185
217
197
202
191
179
190
240
189
234
170
187
262
250
192
216
157
233
128
143
197
244
195
175
169
177
135
184
187
258
162
228
179
218
225
159
181
246
204
182
184
238
183
210
230
203
183
209
248
258
251
200
191
181
240
202
121
178
232
188
258
207
216
201
191
208
207
190
229
188
231
219
184
183
200
229
207
148
194
201
204
216
168
166
171
191
249
165
174
233
199
201
222
163
213
233
158
176
189
191
216
202
214
141
211
180
217
209
177
217
194
188
225
222
170
244
138
166
190
198
232
202
249
231
195
184
209
219
138
182
186
181
213
165
189
226
204
261
200
235
204
188
158
202
145
193
227
165
194
214
244
179
231
163
148
127
176
167
191
156
251
174
195
221
231
216
210
141
214
178
167
233
192
210
213
216
176
210
210
236
211
263
230
174
191
228
224
214
145
216
222
179
249
161
169
179
163
238
260
159
212
250
200
210
190
284
168
202
218
215
142
161
239
202
162
187
288
237
174
237
206
243
158
192
151
214
125
224
197
192
202
159
201
191
184
155
161
247
172
184
233
227
187
196
196
216
172
254
219
260
241
220
210
217
174
220
173
232
180
158
202
202
171
211
133
189
268
203
204
215
216
214
241
178
149
181
202
162
137
201
171
216
202
182
214
109
187
157
219
186
237
171
209
219
178
152
220
227
233
215
185
189
211
202
186
165
218
212
168
252
193
220
230
221
190
175
218
166
144
214
183
176
149
234
237
205
239
249
197
209
194
153
174
195
183
257
256
215
206
222
239
235
207
202
207
226
206
171
208
273
259
212
207
197
248
120
194
199
205
140
247
197
201
223
242
171
150
228
231
152
196
197
142
195
215
214
158
247
192
184
162
243
192
167
140
197
180
195
193
118
223
191
182
174
245
237
262
193
258
194
218
197
203
246
208
155
222
173
185
190
170
220
170
179
233
191
151
191
209
171
201
152
239
200
242
227
159
127
210
210
247
188
208
243
232
227
160
207
184
169
149
155
267
158
261
245
221
204
211
163
127
216
231
158
138
113
193
131
192
159
261
194
235
171
178
158
219
208
157
168
136
181
141
241
189
197
236
150
191
274
184
117
227
213
141
244
141
175
187
241
191
238
210
164
183
197
186
212
211
229
151
177
239
198
237
266
215
174
163
197
247
149
167
234
179
170
260
221
239
195
233
183
272
263
166
227
141
175
175
122
242
212
237
184
220
188
237
195
203
202
100
171
148
187
134
209
144
230
237
124
223
229
227
253
171
146
238
254
181
131
252
201
156
128
159
161
160
237
239
224
206
280
216
201
200
202
247
190
184
230
198
224
206
166
166
182
169
233
225
266
145
232
201
255
196
173
168
162
241
234
195
235
242
218
224
167
231
249
208
204
199
203
153
193
210
176
203
181
238
182
254
203
182
176
181
220
222
195
142
172
192
237
226
215
253
226
247
284
195
140
229
146
270
200
137
240
195
211
171
200
184
176
209
191
229
164
212
176
213
230
177
203
178
195
190
231
207
212
199
185
170
189
207
186
240
185
183
195
230
109
241
214
212
243
202
229
266
181
214
205
178
184
156
182
198
235
204
189
206
149
245
192
245
177
225
153
212
218
197
201
166
184
228
189
163
112
229
228
217
203
247
209
125
169
207
161
195
221
222
232
149
187
250
141
226
202
239
223
177
233
160
204
183
204
168
214
163
170
162
218
221
190
215
191
217
180
187
259
191
193
236
222
166
194
203
179
289
248
129
157
254
173
200
209
196
195
195
226
202
208
222
216
184
230
203
211
177
196
205
154
205
221
211
194
199
206
164
134
245
174
114
221
250
214
119
240
144
256
229
220
181
191
234
174
187
200
212
189
139
192
198
167
193
235
239
200
224
244
139
180
253
207
196
241
161
246
222
180
195
145
262
227
176
123
158
196
178
203
189
230
183
221
208
193
162
159
242
157
231
215
178
199
258
210
192
185
236
219
208
220
196
179
168
193
167
148
208
193
180
226
192
211
197
177
228
259
204
200
256
250
234
159
245
100
210
189
196
171
213
182
202
205
196
193
195
285
175
206
228
180
217
209
171
128
201
175
199
233
252
217
180
200
193
226
210
160
231
226
191
175
185
165
186
182
226
184
176
236
262
218
166
211
210
206
177
210
214
175
197
218
213
233
202
205
194
206
193
239
194
206
210
209
152
236
212
213
164
189
192
259
192
207
161
147
220
221
173
265
141
170
179
215
246
191
183
157
197
267
162
266
201
167
211
229
205
250
237
144
222
256
186
158
206
280
187
252
237
161
232
166
201
248
165
222
170
199
186
214
169
179
132
233
162
261
213
199
206
179
160
251
248
206
225
213
213
166
179
210
175
135
213
204
220
191
194
164
159
215
224
202
239
168
201
190
165
228
146
151
216
240
231
183
206
107
234
185
223
213
238
240
209
166
239
250
179
164
212
160
135
270
203
193
185
187
169
203
183
198
210
130
187
199
178
217
160
201
195
184
215
183
188
147
244
220
214
245
240
187
202
170
227
172
159
239
151
167
226
171
214
220
218
204
173
249
222
104
217
254
232
166
164
233
183
210
246
235
186
187
212
227
221
131
149
167
177
224
153
142
175
229
226
197
241
189
194
191
203
227
287
242
158
181
219
148
174
164
208
247
197
258
232
206
104
208
173
175
195
193
220
184
257
172
231
222
130
178
232
204
231
215
126
235
159
201
177
191
215
160
175
176
113
200
184
196
197
241
253
229
192
196
207
238
241
239
160
239
182
193
167
138
212
287
202
223
179
190
179
248
227
180
246
203
239
193
240
230
218
190
198
197
231
210
184
183
205
241
226
158
136
225
175
226
257
230
179
250
191
224
206
185
219
202
157
171
231
164
179
192
159
184
240
213
230
213
274
167
182
188
200
170
209
190
243
251
218
181
205
200
168
202
238
206
209
157
215
222
177
214
193
207
154
222
200
197
203
196
204
254
183
223
189
185
260
237
176
187
218
138
209
183
209
255
218
131
275
132
137
203
180
243
199
224
169
239
259
179
151
201
218
214
172
145
197
177
249
198
167
218
213
201
231
168
238
209
162
227
192
269
244
181
216
246
201
235
168
201
212
172
191
176
168
209
176
208
171
185
226
143
184
214
128
196
252
227
238
213
141
159
163
200
250
133
185
158
156
172
222
206
147
250
250
195
137
194
282
202
203
232
175
139
244
262
171
223
171
137
163
225
182
176
171
242
201
243
194
173
123
172
187
126
171
208
213
207
172
187
192
183
232
195
212
194
254
240
255
149
168
177
185
200
196
204
199
180
247
224
224
162
237
225
231
210
204
240
212
157
228
224
183
164
193
221
153
227
108
209
210
240
235
202
230
213
177
195
241
144
164
197
242
214
199
187
210
168
201
155
167
215
190
168
165
171
178
241
253
187
200
169
193
186
195
217
247
195
235
205
243
151
155
192
206
224
258
289
177
195
196
200
175
128
205
172
210
171
221
240
276
193
202
264
195
200
241
222
196
214
254
122
283
211
191
162
251
219
181
145
253
211
133
188
156
247
220
163
169
146
191
178
213
196
151
176
220
263
196
175
209
147
153
196
183
191
267
168
266
109
202
223
122
203
157
205
204
191
198
171
159
219
269
251
149
179
223
213
182
204
153
209
231
165
190
238
184
194
203
178
233
190
203
178
227
190
103
228
174
226
182
164
239
196
166
250
202
260
266
178
226
255
247
266
209
193
234
253
180
155
182
159
158
129
189
139
188
196
196
250
169
224
216
206
237
163
231
121
251
210
169
89
202
266
142
246
186
194
159
218
196
160
226
247
226
230
198
216
174
213
177
210
176
196
190
168
216
204
264
159
212
197
196
181
190
155
194
222
150
252
162
204
266
235
152
176
217
172
216
209
214
162
158
221
231
188
232
184
187
173
187
222
214
232
207
180
198
247
207
233
222
193
173
227
203
217
121
249
223
221
142
190
258
209
216
258
190
188
231
179
185
164
186
236
179
230
216
221
226
277
175
198
191
218
190
225
213
221
229
248
182
195
275
260
214
230
261
212
171
184
220
202
168
241
224
206
250
137
171
200
189
151
267
162
222
143
192
235
260
169
154
175
216
215
162
223
173
170
163
213
196
187
151
206
150
244
202
164
160
174
209
245
146
150
222
196
207
188
195
218
193
166
245
191
185
233
118
134
213
202
198
198
204
260
269
159
232
196
167
173
187
223
164
136
230
135
229
206
143
198
211
209
214
269
177
250
207
230
187
213
260
214
146
158
176
257
174
218
175
228
233
135
193
209
229
225
234
192
190
153
248
186
200
206
170
174
229
245
227
165
196
148
247
128
235
198
200
247
224
187
200
223
196
155
236
231
230
167
171
152
171
196
198
203
210
112
208
140
178
167
169
185
259
173
192
204
203
223
221
226
231
223
187
149
130
175
138
204
209
181
198
233
159
262
189
260
171
155
210
184
170
208
211
160
213
195
221
190
168
178
166
165
259
216
211
221
209
237
239
233
224
213
174
148
176
232
213
270
247
194
240
212
233
267
223
204
248
199
198
226
200
177
181
247
219
202
198
260
164
121
197
173
249
160
238
160
199
257
194
174
184
128
166
213
210
144
199
185
220
189
162
237
195
210
226
175
221
233
223
247
253
208
180
182
173
209
189
199
224
250
175
177
196
216
183
214
240
256
188
221
179
222
142
219
198
218
235
166
152
145
212
177
152
227
135
260
191
225
202
207
158
215
188
230
194
233
212
189
215
183
176
233
208
207
194
192
225
202
217
304
213
208
189
207
190
215
214
199
258
117
237
185
253
184
178
223
226
246
241
195
204
185
223
178
216
142
227
191
170
175
162
193
145
265
163
232
216
212
198
232
264
194
164
215
234
169
202
180
231
168
229
174
253
199
187
226
171
158
188
207
225
246
260
192
167
190
200
240
238
206
121
241
198
156
213
213
251
231
195
114
192
196
176
204
175
241
209
230
207
161
164
215
263
165
171
238
191
245
193
193
217
191
205
173
176
242
133
176
148
137
205
262
188
206
160
202
217
177
161
235
244
252
204
164
157
183
193
205
258
236
201
173
173
219
224
183
239
179
153
169
177
175
144
250
226
203
224
213
186
233
176
233
268
270
158
181
207
174
216
202
258
146
204
163
174
148
201
188
226
252
187
232
232
179
207
205
255
230
225
252
186
173
237
194
219
163
156
161
232
199
256
241
207
258
256
236
179
209
184
225
159
122
207
216
199
251
237
237
211
180
168
219
153
171
173
105
186
214
213
227
190
225
180
214
242
191
186
217
236
199
133
226
218
235
163
203
247
187
208
194
184
182
238
162
209
202
230
147
242
187
258
213
182
212
218
191
244
184
246
179
182
205
186
221
198
135
181
173
207
275
238
211
209
228
221
219
210
197
187
200
223
201
201
211
192
189
188
155
199
233
250
218
178
199
202
205
221
216
216
206
143
217
206
217
210
195
146
172
199
230
186
237
225
236
186
205
176
183
212
211
203
213
194
193
220
216
206
173
186
193
226
256
182
185
170
167
189
200
115
173
229
241
198
226
146
211
193
231
241
237
246
233
255
169
231
223
233
266
215
221
238
193
252
162
180
154
194
259
138
180
152
186
165
199
222
200
188
164
220
149
242
189
186
151
189
211
231
145
180
165
116
174
254
158
203
185
211
192
197
162
160
226
170
178
174
196
150
257
228
259
197
198
219
257
219
228
164
154
170
190
247
208
240
231
243
256
213
224
275
232
248
191
251
217
247
140
166
210
152
146
175
187
151
222
222
205
240
221
169
267
175
132
198
222
252
238
199
156
189
215
241
200
172
200
245
169
216
216
223
190
140
257
233
216
198
253
184
182
132
187
187
174
208
110
175
159
214
243
136
214
215
213
240
180
166
144
177
212
224
177
225
184
136
188
305
235
200
160
223
150
212
137
202
210
245
206
265
195
244
238
167
211
161
180
181
236
188
194
286
191
180
197
149
148
181
236
281
176
213
172
232
186
180
208
261
174
166
228
167
218
289
190
197
133
198
187
205
243
157
202
215
232
185
251
181
280
183
183
182
118
215
196
166
231
244
240
202
228
233
219
231
218
240
179
178
172
148
200
208
251
201
188
221
216
198
187
178
189
174
213
194
158
226
232
236
227
208
188
166
198
193
236
192
173
215
255
161
216
211
208
180
164
204
186
221
203
224
234
239
145
156
171
237
148
193
191
191
174
183
191
181
230
260
164
166
149
209
213
248
215
205
161
176
232
212
191
197
175
213
212
248
159
207
163
225
232
148
230
232
239
199
206
252
205
182
245
176
174
223
186
269
233
147
188
214
197
262
224
214
172
146
160
202
230
216
133
233
211
158
166
257
190
217
181
138
247
235
222
177
227
225
230
234
182
201
207
204
190
147
206
208
248
189
196
177
213
193
207
190
161
143
227
186
169
211
143
213
185
172
183
258
140
149
263
209
190
221
200
194
247
249
212
246
143
232
199
254
173
158
181
198
215
215
240
179
224
217
185
216
132
146
212
236
203
212
219
261
156
233
167
241
247
181
201
141
196
167
178
216
167
211
252
160
253
238
233
238
167
240
239
125
198
263
192
205
130
210
158
200
279
147
162
278
142
220
128
210
198
187
238
259
237
233
191
182
176
252
144
253
225
136
175
225
199
197
196
174
174
201
199
191
245
307
174
212
254
185
141
222
181
238
166
193
189
212
247
156
188
250
130
222
215
239
205
202
234
162
177
237
172
242
161
236
227
127
144
195
182
196
182
219
205
160
212
299
213
205
202
212
161
215
219
219
178
214
182
285
227
198
195
250
158
243
226
147
233
167
145
213
142
227
147
237
243
171
179
252
220
195
250
157
130
150
180
250
136
209
172
240
175
160
209
228
219
259
226
193
199
239
218
165
173
200
240
177
219
205
154
248
196
150
213
208
164
127
203
204
194
205
227
171
222
200
227
213
179
275
214
139
158
192
154
207
239
230
202
264
230
166
175
182
243
207
215
222
153
207
203
195
218
225
178
191
224
204
190
246
232
157
203
170
235
246
138
217
195
190
173
243
216
203
243
200
222
211
215
212
161
243
218
200
234
178
194
197
193
229
126
184
184
190
193
220
152
158
226
200
212
189
186
251
151
194
168
146
267
151
217
211
242
201
181
206
171
202
199
237
194
174
195
195
208
199
217
226
175
196
161
238
182
183
199
179
183
176
251
201
200
211
166
201
178
226
190
201
246
257
226
199
227
236
167
178
182
254
227
201
234
195
187
177
181
134
239
214
196
261
195
234
235
215
135
210
196
133
138
143
168
193
157
223
230
203
253
164
196
203
241
193
199
228
233
169
200
197
172
168
181
207
232
149
166
201
244
193
214
218
185
198
244
215
210
201
164
162
264
195
196
235
229
216
158
210
180
151
167
187
184
201
230
198
155
263
219
171
185
225
174
170
184
249
186
134
227
198
184
166
226
172
242
186
250
162
206
197
220
189
134
200
195
249
194
158
219
161
156
199
254
216
169
247
258
172
206
219
109
189
217
144
228
247
186
238
176
175
203
233
216
240
269
195
244
176
166
193
158
258
169
239
230
225
254
192
274
235
230
216
202
161
214
176
232
100
193
251
163
132
155
142
147
230
276
182
200
216
199
207
87
190
187
226
162
198
173
231
151
169
228
178
211
203
139
237
148
228
226
214
235
238
185
170
196
161
213
246
169
188
160
190
183
232
203
162
227
181
230
201
215
147
191
234
276
219
205
173
119
159
195
227
181
185
151
208
230
259
256
241
256
206
167
205
227
165
251
223
163
233
220
187
181
193
191
168
165
205
163
284
237
217
195
173
207
252
253
208
135
201
168
166
163
161
170
211
248
197
212
252
219
208
243
205
186
225
206
169
182
193
222
155
231
243
235
190
204
175
209
198
217
191
219
200
252
177
141
210
186
238
248
217
202
157
170
243
234
221
213
212
255
219
176
210
211
157
181
243
157
234
217
180
226
237
184
266
174
162
172
204
160
123
238
167
168
206
192
99
209
208
156
180
190
163
204
252
213
232
241
163
216
192
216
207
117
203
206
207
220
253
215
181
174
242
168
161
236
206
189
219
226
228
168
199
269
203
195
231
203
153
159
197
206
219
185
231
243
174
162
210
179
186
205
228
150
173
207
167
160
218
258
260
182
214
203
216
231
258
217
249
232
242
211
224
120
195
247
138
205
231
230
158
162
219
201
226
162
188
124
210
205
199
292
219
208
177
188
213
163
203
124
189
223
217
214
205
239
185
241
207
226
155
210
172
184
172
207
211
205
198
212
161
204
269
276
213
165
189
167
286
238
187
246
157
210
152
238
219
170
230
180
191
192
162
217
218
186
161
192
219
229
155
266
191
204
174
218
191
123
217
201
243
275
264
208
181
271
202
191
193
235
244
181
212
105
170
251
186
182
193
250
230
229
247
217
222
239
193
241
199
164
250
179
226
153
174
172
205
240
203
169
177
183
214
192
250
162
173
167
139
181
268
167
198
193
235
208
153
166
147
229
210
245
204
160
221
126
262
162
176
206
227
206
181
149
209
200
174
157
217
240
219
238
186
218
147
210
193
195
203
178
143
262
254
255
187
196
211
158
212
172
216
181
241
180
193
268
262
226
200
234
236
265
222
200
224
179
121
243
162
183
161
232
141
203
166
246
203
196
166
241
188
183
250
162
213
231
185
192
210
181
183
215
160
179
247
188
229
243
209
160
268
147
236
195
196
169
182
191
201
153
187
117
218
204
222
246
204
198
193
212
141
195
231
220
198
186
243
194
190
165
238
187
199
197
178
153
176
220
222
205
172
190
216
249
186
193
193
169
165
223
216
222
202
243
218
209
202
199
178
167
110
250
191
166
129
200
206
271
208
161
247
188
209
246
214
166
175
176
158
137
209
200
139
265
234
207
183
148
207
190
244
197
168
279
224
98
185
166
235
131
229
193
221
212
222
223
177
212
219
196
250
190
188
166
198
221
232
192
172
190
238
208
140
215
161
189
193
106
267
220
239
141
171
189
230
275
214
187
195
205
247
164
253
232
184
235
252
169
282
247
203
193
184
177
225
239
201
170
203
233
236
229
208
204
188
188
208
202
216
224
230
206
234
185
145
204
172
178
202
154
189
145
148
165
215
234
188
234
245
178
182
258
187
186
213
165
237
177
229
229
130
135
212
148
153
219
228
216
155
226
203
220
190
196
221
199
197
247
165
174
164
179
223
264
197
144
176
124
185
171
245
207
215
165
143
217
215
258
202
186
275
174
174
180
243
194
191
163
229
159
174
197
219
194
194
226
257
162
126
209
267
233
268
217
201
213
190
146
212
196
205
252
163
152
226
113
151
205
188
162
187
207
194
185
235
175
178
175
242
165
204
189
209
180
188
197
195
152
205
231
258
219
172
294
246
217
189
213
218
236
212
148
167
222
150
227
260
189
249
260
247
181
221
248
194
212
183
171
135
232
145
157
191
166
162
215
221
156
225
200
225
182
210
224
179
257
204
141
203
246
257
197
119
247
230
211
189
187
175
134
236
177
239
166
211
217
196
227
185
210
169
171
259
271
247
153
236
196
200
199
193
172
186
260
189
215
142
234
240
180
248
227
205
210
212
166
165
194
146
206
184
231
147
212
220
203
205
180
132
189
165
253
177
189
209
188
209
233
200
177
165
207
216
216
211
239
168
207
248
140
258
277
180
207
168
203
182
162
210
223
209
151
143
194
242
128
179
230
247
183
207
203
201
212
225
182
218
274
153
228
162
222
185
221
240
280
240
172
179
236
201
178
193
260
204
202
229
172
239
214
171
246
153
181
182
255
212
174
228
245
183
221
221
229
195
242
162
159
195
146
230
197
223
224
186
211
253
186
175
234
170
183
194
225
235
176
208
194
190
168
225
213
224
230
213
183
203
182
205
152
187
223
214
140
165
181
203
201
298
259
270
196
189
142
138
216
228
186
200
236
147
188
267
178
159
189
182
222
215
242
209
172
184
224
292
138
177
179
210
90
215
178
204
195
184
139
225
203
175
251
140
231
200
207
204
210
214
205
195
169
221
263
191
198
218
183
216
208
207
236
212
208
229
238
241
147
213
175
234
213
167
119
188
192
221
241
258
224
152
233
200
240
171
175
192
200
164
170
196
209
184
224
162
208
225
285
188
195
235
172
197
223
145
193
225
232
168
250
205
239
249
198
198
191
155
230
237
202
123
174
228
221
189
201
246
179
220
209
171
211
238
183
204
188
240
252
230
201
130
213
206
253
222
135
163
141
125
239
281
176
146
213
200
181
101
216
245
145
187
161
148
208
194
155
191
253
229
236
163
140
161
224
201
200
185
124
218
258
214
217
255
135
173
241
122
139
242
192
222
214
167
184
247
234
136
180
205
206
209
181
220
191
144
220
222
204
275
193
241
251
183
187
227
144
252
155
241
182
220
152
210
221
215
103
250
193
246
217
238
167
199
143
173
258
185
194
196
218
183
214
177
194
211
151
208
223
172
205
204
146
235
199
253
240
210
184
168
218
224
170
249
142
164
167
185
267
228
228
158
180
248
228
243
150
191
215
241
209
218
177
235
187
230
201
221
251
183
238
266
221
150
225
205
198
209
176
231
221
186
204
254
172
174
239
178
220
229
200
246
215
173
168
268
159
246
186
183
177
255
170
230
141
250
254
200
217
193
184
187
201
202
156
165
181
196
190
238
200
211
209
187
203
175
225
173
195
177
183
187
137
219
191
188
212
212
230
149
159
226
225
188
205
182
200
221
194
202
201
167
176
186
221
238
197
226
163
257
132
200
230
197
218
132
186
231
199
241
137
223
198
196
213
165
213
181
212
142
184
205
165
189
190
192
191
247
224
196
227
192
182
195
163
207
197
124
124
191
133
214
192
199
186
198
220
156
190
189
106
200
154
159
193
182
249
158
183
171
184
194
135
171
169
189
242
172
197
237
204
187
235
205
160
183
205
206
120
161
248
222
213
239
220
181
176
181
159
207
228
242
207
230
155
178
179
249
182
179
196
177
136
264
149
176
243
191
196
193
217
183
209
138
216
184
188
186
204
197
253
221
155
152
211
171
180
114
233
150
218
178
241
255
267
204
261
218
307
153
129
202
208
221
176
170
213
220
248
180
189
175
233
228
252
126
239
153
204
198
158
277
194
221
235
167
254
219
200
204
175
242
203
155
225
235
250
172
171
172
172
233
148
210
165
212
204
209
166
212
262
220
161
259
187
206
215
142
177
220
190
223
200
241
188
283
175
226
227
174
207
156
195
190
179
172
225
186
217
171
153
208
166
211
169
218
213
157
142
199
152
222
233
215
243
149
170
188
212
189
169
143
185
166
229
193
165
139
171
218
240
229
209
177
209
209
160
155
198
231
232
285
160
162
230
243
131
172
183
238
218
190
212
218
196
239
283
154
261
224
229
228
181
242
205
152
213
233
230
192
264
161
279
266
223
182
210
213
168
223
283
164
205
178
225
248
247
197
149
175
97
232
216
217
202
211
230
220
164
221
177
233
223
129
233
147
256
171
279
155
194
158
247
115
147
147
179
231
196
194
181
206
208
151
266
169
255
176
181
161
152
227
222
208
215
162
215
197
197
247
247
272
238
169
189
113
180
231
162
168
188
250
182
227
157
140
196
163
209
175
142
166
197
253
263
232
159
206
198
201
155
193
198
266
191
188
203
241
258
215
222
150
209
162
190
243
237
203
206
191
182
221
158
143
241
211
205
220
198
156
208
154
227
204
217
227
173
243
194
178
183
250
225
233
227
195
228
237
176
142
239
273
184
195
173
186
245
181
149
232
193
238
142
150
198
206
222
179
212
191
232
244
171
231
127
219
187
205
161
204
186
226
222
236
183
196
189
222
190
148
227
172
156
202
228
228
201
218
226
222
223
253
165
169
237
165
141
197
219
166
193
236
242
189
195
150
157
205
197
174
149
170
178
190
164
169
142
242
171
219
141
224
261
191
215
205
220
173
203
296
161
166
136
258
158
254
165
198
192
234
254
202
202
194
174
183
161
209
156
191
148
168
194
197
231
181
191
182
229
223
232
222
237
156
267
172
235
216
187
222
213
209
202
201
209
154
205
199
180
208
208
179
228
255
201
202
189
170
229
212
186
202
164
172
150
222
228
204
209
212
224
180
193
173
211
200
234
178
248
192
285
240
222
244
216
189
174
231
205
173
152
229
235
246
198
149
174
178
200
185
237
163
257
211
222
199
197
221
187
217
218
220
124
187
253
248
185
155
246
195
207
263
159
203
157
249
151
221
182
210
153
214
212
236
215
218
198
131
174
228
259
189
231
157
176
217
194
206
167
223
209
204
217
173
188
236
257
179
227
233
154
193
186
176
202
227
255
179
228
116
146
186
223
263
235
163
183
163
205
162
212
142
163
259
145
201
199
201
216
215
227
209
237
139
221
177
158
208
191
223
166
247
203
190
277
200
190
162
191
108
298
177
198
206
211
164
208
178
138
219
248
117
187
204
210
205
256
220
224
231
204
164
141
181
208
125
223
189
201
191
207
238
228
219
211
212
219
246
178
141
186
165
158
223
202
203
230
201
171
221
192
175
163
181
158
203
225
168
166
194
199
277
246
251
256
188
283
253
173
193
193
191
184
163
191
201
176
201
168
176
184
177
220
160
192
240
186
176
184
136
251
245
211
211
210
209
231
207
205
206
255
215
186
196
182
193
125
203
213
240
166
192
197
189
162
154
217
245
237
257
227
182
156
208
183
166
231
257
251
220
205
203
200
197
201
266
179
227
186
211
240
182
214
214
195
189
166
202
225
193
257
238
206
168
137
151
204
240
155
208
221
283
265
214
244
207
255
137
234
221
158
210
168
170
216
257
227
175
235
235
201
236
133
206
200
207
230
217
184
253
214
196
279
197
213
154
212
231
191
207
194
210
191
154
153
178
150
155
144
174
137
194
140
175
225
185
191
172
211
209
161
196
188
225
244
241
150
234
188
210
193
174
218
233
202
157
243
174
209
214
185
218
223
260
166
219
189
192
178
224
233
185
213
213
201
275
202
213
239
116
237
195
281
252
145
225
254
164
164
259
236
268
227
177
224
205
169
198
212
142
254
206
286
207
245
195
221
200
188
234
194
248
179
168
181
188
181
199
240
148
223
194
253
217
200
182
194
232
218
205
256
215
174
206
195
247
232
206
236
190
172
251
225
218
286
260
219
211
176
224
187
204
230
210
204
230
205
187
195
138
217
206
112
173
225
194
149
207
212
196
167
204
266
187
199
153
213
181
140
238
176
209
216
157
223
203
221
216
139
175
258
228
166
169
124
144
244
195
199
175
255
215
248
191
215
173
220
210
182
168
219
141
179
230
167
128
214
210
157
189
250
169
147
235
192
218
192
141
231
141
226
215
150
240
181
189
195
201
206
230
183
176
212
160
252
187
239
147
206
244
213
192
188
189
209
213
241
176
173
219
166
228
137
217
236
206
190
146
207
197
198
210
239
164
257
210
244
208
187
225
165
132
228
251
165
167
198
173
209
208
185
141
184
216
239
261
200
229
222
189
174
219
162
275
169
208
226
215
208
255
183
215
260
166
234
218
224
229
218
194
134
194
222
213
208
188
209
232
217
232
163
205
202
150
214
211
227
231
214
218
174
175
181
244
230
196
206
198
230
226
192
190
212
199
200
241
270
194
164
251
211
174
182
210
185
242
144
117
224
189
166
190
162
156
208
201
231
180
253
158
189
252
97
168
192
208
218
203
228
193
206
255
187
157
161
236
256
141
252
231
222
165
153
147
83
147
201
218
206
162
181
219
199
228
180
260
181
210
203
260
218
241
205
220
192
235
181
241
143
184
252
199
203
195
239
208
219
105
210
202
140
202
185
212
195
249
225
162
224
207
195
199
160
204
227
187
160
208
239
173
143
203
241
251
143
253
230
212
208
317
224
189
220
223
228
229
121
197
178
210
209
188
152
208
179
170
233
220
231
138
223
226
193
203
225
184
237
181
205
202
180
145
176
231
167
195
159
197
160
196
189
230
211
166
217
210
199
173
216
210
112
155
199
202
223
190
177
177
161
234
164
225
259
227
154
192
219
207
144
243
220
165
215
200
195
143
171
228
159
224
168
215
207
217
239
219
253
150
196
203
207
207
163
215
180
194
229
194
218
184
238
215
200
209
267
181
82
170
208
199
223
247
269
183
180
208
209
183
204
169
158
240
192
233
165
166
102
248
192
212
245
191
210
213
133
226
202
200
160
215
125
223
188
130
169
266
226
211
207
185
224
216
155
175
233
159
204
178
158
235
253
208
186
158
180
201
221
240
258
187
224
223
167
218
184
164
222
225
252
182
207
148
268
190
221
203
211
212
134
228
195
206
159
184
159
170
224
184
162
205
222
224
239
191
219
158
166
192
151
216
244
260
201
199
168
209
202
228
208
249
191
203
207
170
170
186
201
222
224
201
201
220
252
192
245
185
214
155
202
207
252
219
199
216
155
197
174
213
242
192
172
194
137
247
257
167
178
197
197
172
165
177
203
166
187
243
293
178
218
210
215
225
185
122
235
248
249
200
190
181
172
196
160
196
180
199
223
209
169
135
268
245
239
264
248
219
232
212
195
197
197
193
197
223
146
171
140
182
177
234
254
250
192
183
199
216
201
229
219
200
210
244
193
221
202
268
211
210
206
236
181
172
233
200
111
246
201
223
174
242
203
215
242
248
204
153
163
178
180
180
259
230
212
224
214
144
163
202
211
227
233
203
208
268
199
163
201
188
282
178
242
218
208
212
178
253
123
227
202
173
206
195
198
167
189
176
230
152
168
222
260
249
124
274
165
238
215
166
234
192
194
108
219
184
228
236
243
137
161
179
213
174
151
202
177
171
264
155
205
167
213
190
233
239
257
213
166
112
203
216
163
209
180
156
230
190
251
184
176
226
211
163
199
231
212
166
250
193
185
162
216
242
163
203
231
147
218
150
176
209
238
200
205
197
188
155
164
199
248
204
218
184
247
205
194
146
196
218
283
205
182
190
213
205
211
254
199
173
202
191
199
205
247
161
135
174
130
216
212
225
208
182
97
179
217
173
220
179
233
248
190
213
216
232
179
279
210
195
243
199
170
240
170
215
241
105
195
182
233
193
204
218
258
198
218
262
157
173
246
195
181
145
214
173
170
264
203
224
211
212
207
220
211
242
222
204
243
194
152
193
207
153
214
214
179
221
200
182
237
211
212
216
161
221
172
166
149
152
183
197
155
199
205
158
193
170
201
235
114
227
202
171
199
271
196
218
204
184
180
202
174
177
225
193
214
211
223
156
163
149
195
191
237
185
163
219
131
269
216
160
231
187
224
207
201
217
226
220
141
194
217
233
205
182
184
184
174
190
195
188
264
201
209
191
151
227
189
219
220
213
186
220
172
200
225
198
205
212
208
195
172
204
186
211
228
231
211
163
228
160
218
247
199
226
204
228
187
241
216
207
157
208
221
171
202
211
219
224
198
153
188
172
160
255
253
231
227
203
231
205
229
145
160
145
198
172
218
236
240
205
160
208
212
152
200
210
172
211
228
184
175
246
183
213
198
188
134
219
249
154
149
195
231
240
159
181
216
200
202
223
191
204
198
229
224
178
223
243
226
219
188
139
198
199
207
208
218
167
182
243
278
232
217
159
121
191
172
151
236
195
260
153
253
178
238
216
144
249
244
203
208
200
140
171
211
253
190
286
183
183
163
215
249
241
263
180
214
197
248
218
184
184
192
237
189
234
214
210
228
194
176
182
186
221
171
275
148
200
231
171
173
214
226
140
251
233
218
163
130
182
197
161
182
214
153
189
236
185
131
281
238
183
202
192
265
230
229
162
228
176
187
190
217
193
183
157
226
175
198
225
212
144
249
238
189
195
166
190
236
179
217
177
138
197
178
244
155
194
258
165
223
193
204
227
153
203
143
200
183
192
238
135
231
234
243
212
196
213
196
220
229
209
222
134
185
195
177
222
205
209
204
233
126
208
194
218
224
201
186
197
181
214
243
222
183
198
221
224
263
211
249
247
169
169
221
188
241
216
245
224
210
93
228
229
157
206
228
186
231
197
128
191
230
234
152
128
297
223
181
222
161
248
217
222
238
255
258
212
200
226
222
187
185
233
262
213
215
187
191
220
234
231
162
233
249
247
242
147
204
171
194
226
135
186
209
215
227
240
225
219
190
193
177
242
200
152
191
149
208
223
197
261
196
179
218
212
185
189
217
261
211
146
249
184
173
174
189
213
150
217
187
241
263
170
191
221
169
191
227
222
213
212
235
145
178
222
187
192
235
217
125
185
213
200
170
175
217
166
160
226
163
256
156
234
189
185
187
307
214
220
173
136
197
201
137
244
220
179
220
168
161
179
184
212
249
221
196
209
232
203
261
198
112
158
219
229
171
241
190
249
223
223
202
181
172
225
185
234
190
199
184
229
225
216
276
221
196
220
222
193
238
258
224
162
217
171
228
201
177
174
197
257
221
157
232
206
182
227
231
183
143
212
151
244
199
197
204
174
201
166
260
171
149
210
206
188
235
197
166
239
232
241
228
173
190
199
200
143
170
207
239
192
250
223
162
183
276
146
248
188
222
206
223
228
131
224
213
188
197
163
190
214
235
188
208
171
232
215
142
232
214
238
208
159
199
214
184
236
242
203
168
192
260
175
210
178
166
155
230
240
231
162
198
214
197
184
199
219
186
232
205
154
244
190
141
222
185
172
234
247
245
210
212
140
201
256
134
217
188
197
138
177
240
187
221
156
192
201
215
172
249
206
212
206
175
222
168
172
169
162
191
186
208
206
222
200
155
166
204
199
233
211
171
121
264
240
180
185
179
153
186
205
198
200
174
198
244
245
231
245
198
188
217
103
233
217
207
179
219
194
244
179
166
195
171
155
206
240
260
221
270
205
218
181
187
220
143
192
186
254
230
143
208
117
270
199
241
246
196
212
207
219
205
286
182
228
241
237
219
180
229
160
172
143
232
172
207
208
197
263
147
221
221
254
209
200
206
204
198
172
157
202
178
217
160
191
184
239
167
149
151
233
233
188
177
203
159
207
192
181
239
238
213
154
233
222
184
229
236
238
169
223
242
160
204
232
232
143
198
226
224
221
205
199
163
208
239
233
147
240
159
192
221
249
186
221
166
127
250
243
241
174
188
217
213
206
248
216
163
168
193
216
207
216
181
192
244
201
166
134
165
191
200
220
188
258
176
184
218
259
157
198
204
234
256
224
255
216
188
205
227
237
219
195
226
196
234
247
198
195
187
135
246
167
269
189
131
180
250
188
257
226
152
231
143
146
201
219
158
231
253
201
202
226
155
190
241
223
189
171
235
184
173
183
252
199
151
123
173
221
217
218
199
199
159
197
128
242
266
219
205
173
214
168
211
195
206
245
253
144
209
211
123
203
197
252
249
187
186
175
199
212
176
139
152
141
197
169
191
216
176
244
194
224
249
253
164
203
160
150
240
195
253
147
187
194
229
158
187
256
199
202
223
208
239
233
174
203
230
212
283
220
179
203
205
214
200
174
140
205
193
212
228
195
202
263
203
209
150
195
175
209
181
258
229
231
225
200
260
257
195
223
222
191
177
246
131
168
194
201
196
203
186
147
201
148
180
248
218
228
186
203
175
163
224
268
182
203
183
220
153
163
208
123
183
192
276
249
197
224
149
137
238
228
240
198
210
169
208
207
185
130
182
210
209
202
165
158
151
248
191
204
193
191
248
195
189
141
222
243
166
255
191
190
200
251
238
188
206
187
242
222
219
156
224
212
249
177
182
198
217
204
207
182
175
198
193
188
170
240
164
216
231
152
189
232
151
191
174
156
171
194
185
225
215
219
234
206
218
198
169
205
220
174
142
235
190
218
224
204
240
144
183
233
187
168
205
177
254
262
291
170
188
197
204
244
197
227
236
201
259
227
209
154
204
223
190
201
183
202
211
164
136
123
249
226
204
206
270
226
251
259
270
145
164
202
225
173
156
175
231
184
197
230
169
170
227
257
194
227
255
200
259
180
115
191
248
223
153
154
218
293
189
221
217
202
174
186
202
214
248
205
225
143
177
221
242
148
131
257
230
203
251
217
186
160
199
264
184
166
222
255
196
160
206
146
200
236
185
158
194
157
196
177
162
232
233
202
198
219
220
200
213
273
189
153
196
214
193
171
201
234
226
209
247
231
190
216
206
175
236
169
241
224
194
202
231
165
194
215
285
199
213
206
202
171
215
197
229
221
227
253
275
168
224
223
209
213
243
160
226
193
273
199
244
217
166
178
203
194
153
181
200
185
205
166
169
152
230
200
137
214
211
178
218
159
176
169
181
158
193
190
195
208
221
207
196
162
173
203
221
280
127
237
206
203
199
157
160
178
212
253
204
203
204
189
119
195
213
141
164
121
177
201
188
178
178
184
200
189
208
172
252
181
199
222
178
161
189
252
184
213
189
180
235
198
235
180
224
213
146
163
237
169
242
240
244
233
206
152
148
183
237
208
215
209
191
210
215
179
177
158
240
180
188
163
247
248
217
201
234
284
151
198
225
162
193
153
231
187
211
149
206
262
238
197
199
224
148
215
178
216
198
154
254
243
222
121
215
168
197
247
248
188
208
196
185
226
158
162
236
220
196
199
234
205
202
174
235
250
237
180
206
168
204
221
188
176
244
127
184
235
229
183
210
221
234
159
227
204
202
209
181
212
168
164
225
126
159
236
172
221
211
223
221
222
208
202
180
187
166
209
257
130
145
218
213
227
190
150
205
230
214
175
197
185
141
177
186
161
203
280
133
255
177
158
211
214
191
194
246
228
228
252
195
225
203
177
201
174
230
226
202
168
207
190
177
247
215
194
158
240
205
172
242
170
269
184
242
178
184
180
146
240
196
183
247
212
189
160
166
214
222
243
168
198
242
262
175
194
183
154
195
169
141
229
247
162
138
174
220
188
257
178
156
205
215
187
199
167
178
221
282
192
188
227
183
198
200
241
227
219
171
180
217
200
172
216
257
168
202
219
156
145
233
224
195
229
207
132
272
247
158
216
220
220
202
204
163
188
158
188
237
215
200
197
164
249
283
223
183
189
204
229
198
227
200
183
223
109
139
204
250
207
178
245
157
200
174
218
200
178
176
214
178
255
234
159
146
221
137
138
178
163
232
191
200
232
254
198
205
197
149
187
173
171
220
210
261
163
182
239
197
203
136
249
219
244
151
201
209
189
223
189
261
221
185
245
162
185
213
201
226
165
228
207
167
241
203
201
142
147
178
203
176
215
183
199
225
188
195
220
156
215
178
235
190
204
245
260
230
188
169
208
224
189
157
181
201
168
203
178
195
220
188
182
208
231
200
210
224
209
285
211
212
203
215
183
197
200
216
214
285
164
195
183
163
130
194
228
178
214
204
177
205
215
222
199
196
155
237
225
177
235
147
187
247
234
231
214
192
179
264
195
210
169
184
222
159
236
130
194
191
250
192
171
242
188
207
276
147
222
186
202
208
174
155
171
254
202
195
178
209
234
261
191
191
164
166
151
229
192
179
193
166
148
208
219
183
199
221
170
231
209
223
191
241
230
200
242
242
228
243
172
220
211
165
196
225
244
247
205
203
173
166
236
193
235
154
183
223
162
198
159
205
208
195
210
159
197
138
225
175
235
228
226
215
187
239
188
146
171
208
200
189
195
196
210
184
229
204
195
205
212
201
146
208
228
244
239
201
193
171
185
188
208
139
186
160
248
160
211
195
164
200
179
168
221
214
208
221
142
181
192
191
244
236
224
214
166
189
234
235
173
266
232
173
278
160
188
169
213
242
195
232
129
243
235
191
258
160
239
231
173
237
197
215
233
213
197
212
234
193
204
172
161
222
144
175
249
186
214
219
223
196
229
208
156
243
200
206
179
201
235
226
202
243
241
150
196
201
165
211
168
189
168
234
162
220
166
180
246
173
133
242
220
162
227
203
205
204
288
171
210
169
169
160
163
246
239
135
225
197
198
216
216
225
184
245
183
242
241
191
234
214
179
221
182
180
149
202
201
248
198
179
228
232
156
216
189
180
193
229
249
184
207
225
155
188
236
208
185
145
174
163
268
198
219
186
230
197
264
176
157
205
218
231
243
247
232
176
170
121
212
191
142
203
154
233
145
147
202
183
152
218
175
159
216
203
174
234
154
261
196
198
227
141
160
228
176
246
144
200
258
237
294
203
195
273
163
239
180
196
230
231
171
182
201
180
207
232
209
169
174
267
210
228
169
219
183
191
183
138
207
209
102
193
188
185
150
218
246
177
246
179
276
152
243
173
267
163
220
224
223
187
135
210
242
228
198
215
238
211
157
208
173
200
198
175
225
234
137
179
179
229
202
214
206
169
202
206
222
198
190
222
192
236
190
161
229
154
188
188
147
197
184
199
231
258
199
208
217
196
185
206
179
220
184
168
238
246
143
187
130
251
184
176
195
178
174
141
130
201
248
156
164
161
199
191
251
199
123
127
156
192
135
173
217
197
163
230
193
184
196
198
239
232
168
246
171
246
202
178
204
192
232
203
196
179
220
226
177
224
181
193
184
115
218
137
233
213
190
192
173
204
148
197
225
204
222
160
225
296
208
199
183
185
192
175
211
188
169
235
141
242
211
121
188
184
190
200
193
189
230
222
135
219
189
210
199
202
179
259
214
249
166
107
227
232
250
220
170
185
187
195
237
181
215
225
197
235
144
231
195
215
200
216
191
228
246
242
226
191
242
177
196
213
132
229
177
203
208
179
197
181
211
174
222
224
268
154
154
234
210
220
160
185
243
193
240
244
178
252
225
232
239
197
200
271
201
209
199
173
167
155
229
236
160
228
212
189
152
218
236
184
170
193
227
197
229
204
224
246
235
253
231
150
233
162
216
217
235
188
214
202
204
215
220
146
188
232
169
243
182
202
176
139
178
204
234
260
243
212
229
194
216
160
175
238
262
197
206
165
142
177
229
158
154
202
215
194
225
269
232
214
198
192
168
134
200
204
257
200
158
196
241
258
247
217
196
223
260
224
233
229
201
194
241
225
162
215
220
202
175
222
168
180
224
194
181
160
240
234
199
199
281
196
246
170
227
102
215
154
201
175
260
182
165
268
238
191
210
213
207
175
182
268
162
216
196
210
236
197
185
191
213
236
213
189
200
226
234
170
177
224
244
239
185
169
135
183
206
259
253
210
191
149
206
198
205
212
177
183
174
268
226
174
243
212
241
157
216
237
174
189
170
146
251
205
193
180
153
244
247
238
159
160
192
191
226
209
214
183
180
187
130
133
158
227
205
163
163
211
277
159
256
229
204
245
203
185
195
216
207
232
212
243
166
219
227
210
242
214
193
188
241
166
196
175
171
198
212
142
178
163
178
160
207
254
248
158
240
216
198
158
233
149
160
192
158
234
149
205
233
198
199
235
190
195
235
191
227
242
163
250
235
278
258
254
230
227
223
258
157
237
184
218
141
160
207
186
156
234
215
214
165
217
197
198
227
197
173
148
144
195
234
156
247
215
196
241
176
127
143
155
147
211
188
205
210
204
228
219
285
182
212
236
189
188
204
161
218
189
222
226
212
211
247
189
185
150
195
263
211
172
221
209
186
240
182
171
193
157
170
240
252
259
179
192
170
203
215
201
219
182
181
199
260
247
194
114
227
257
194
215
177
153
156
205
248
121
142
132
211
154
200
203
227
238
189
118
223
226
144
166
222
130
187
189
159
198
151
186
220
209
189
230
176
206
211
228
202
219
210
209
213
147
143
227
193
235
222
239
184
175
235
206
231
249
248
112
166
209
168
222
192
161
168
217
253
157
202
204
195
160
143
193
231
189
204
204
232
179
203
245
215
145
192
171
208
185
227
163
168
191
189
193
209
188
191
148
168
267
240
171
189
221
222
178
237
175
202
226
219
222
170
172
233
220
224
252
194
153
286
205
229
151
215
223
168
180
262
215
209
229
189
230
174
212
282
228
166
228
161
169
196
231
185
260
143
224
196
205
289
178
251
230
163
226
166
203
206
302
219
180
205
188
153
200
242
166
189
192
201
177
158
151
192
249
217
231
200
223
216
258
176
248
167
218
222
224
266
224
207
189
141
222
260
166
196
246
178
202
174
209
169
220
201
169
183
222
188
248
242
230
219
113
167
157
212
204
239
234
188
156
136
212
214
201
235
217
202
186
242
178
198
232
157
203
194
180
245
239
181
244
225
244
250
258
197
221
234
251
198
248
163
171
185
205
191
206
180
257
223
171
158
153
251
235
170
174
179
170
150
241
235
248
209
199
223
180
243
215
155
175
183
225
213
197
176
178
217
179
195
185
132
211
145
182
178
178
180
208
238
290
177
214
198
221
243
269
226
199
176
185
183
215
249
185
169
192
177
114
238
219
131
218
217
214
209
213
206
220
230
222
221
255
192
152
186
232
205
108
290
145
234
160
177
260
190
229
213
193
209
161
230
214
158
161
234
234
213
138
205
147
200
193
193
180
187
190
194
184
190
180
191
135
173
242
240
171
217
115
205
209
165
224
178
163
218
159
193
231
212
180
232
180
194
262
179
274
244
102
224
227
144
201
251
172
200
165
201
250
175
224
205
198
164
225
194
164
144
231
224
217
188
295
175
250
239
230
165
174
219
203
192
235
222
241
219
147
225
203
206
166
165
152
204
239
218
189
136
263
250
242
229
198
154
162
205
191
127
155
185
240
217
193
237
250
235
215
190
184
221
187
170
224
201
182
178
236
272
129
211
186
252
152
220
178
178
217
212
163
185
195
193
203
222
259
222
176
193
187
208
273
216
197
166
213
190
230
211
133
207
167
166
237
171
216
192
206
194
210
183
231
148
185
174
212
159
183
216
204
200
175
251
201
190
199
219
182
205
202
176
246
172
254
213
216
222
226
235
208
162
191
193
186
203
190
196
186
194
207
173
190
174
187
200
236
237
178
192
206
152
277
152
248
167
193
180
214
235
217
252
219
178
137
183
210
198
241
190
197
239
169
169
185
236
140
195
212
220
223
198
187
207
259
232
159
186
240
267
202
173
191
180
147
210
182
194
253
174
158
169
211
167
251
148
245
223
245
179
229
210
185
182
232
219
190
219
283
243
171
196
157
212
272
137
127
231
241
129
204
186
156
140
206
266
217
170
209
210
194
210
238
217
201
259
182
210
160
223
242
255
200
209
177
209
227
127
238
178
209
218
177
201
194
190
156
267
165
221
162
221
218
188
164
157
219
176
206
146
174
191
220
262
220
236
188
188
219
180
125
211
229
224
214
156
136
205
149
195
204
159
191
242
215
228
192
195
167
232
160
172
222
226
203
163
184
178
201
151
159
149
192
227
222
223
187
201
273
183
196
239
207
183
222
156
212
175
189
203
159
189
222
167
118
237
205
155
263
219
187
148
163
216
203
246
186
212
203
179
169
157
235
232
209
192
212
193
238
168
187
159
180
192
184
198
223
198
219
195
215
207
171
232
170
211
183
199
216
199
203
220
110
202
227
171
195
174
256
180
230
236
224
197
186
254
211
155
219
261
171
248
201
154
202
191
231
144
242
226
235
249
156
194
205
218
172
179
183
214
206
207
249
186
221
167
199
262
191
220
191
225
198
198
217
163
206
200
205
184
174
253
155
197
215
242
197
167
180
244
152
192
167
191
201
199
218
207
117
212
139
230
159
247
186
201
176
169
211
208
216
163
237
200
189
206
226
253
183
229
170
161
185
146
191
213
231
220
146
225
221
183
209
177
219
212
204
209
199
302
221
223
286
213
166
242
134
193
253
151
180
206
221
193
225
267
225
214
217
268
182
215
249
174
202
257
215
216
174
191
239
204
268
198
228
198
172
137
240
260
211
176
237
138
190
232
205
182
203
256
222
228
170
138
257
246
217
262
221
146
234
128
228
230
149
202
234
201
209
203
212
188
203
157
202
225
222
257
249
169
251
253
239
221
221
210
190
173
223
269
150
205
189
188
228
231
163
154
196
164
191
230
262
214
197
206
183
162
142
225
222
177
209
155
207
138
173
177
239
155
160
220
207
210
158
207
208
209
137
132
216
231
171
180
215
210
168
212
204
233
234
161
145
198
242
226
200
159
222
174
205
209
166
225
226
200
192
261
208
194
194
162
225
193
167
225
157
211
224
237
151
213
210
162
209
182
233
182
260
240
236
224
188
130
211
244
256
153
224
205
165
192
175
202
233
169
153
183
257
202
167
206
168
207
252
238
140
115
181
192
273
236
188
163
160
247
211
189
156
189
171
190
216
218
228
164
170
228
267
238
171
252
195
202
190
251
182
223
188
212
223
141
262
169
133
117
207
173
298
226
143
169
158
219
239
217
185
210
196
232
223
194
212
202
109
232
213
203
213
253
211
212
217
219
235
176
182
166
226
183
199
214
153
195
165
132
181
146
272
204
201
182
247
181
223
180
163
179
177
198
202
257
137
201
190
165
182
254
233
211
182
219
176
181
188
224
212
197
267
218
185
194
202
173
212
194
202
220
224
156
187
260
235
186
196
222
207
185
111
206
156
189
242
143
203
218
212
243
178
212
132
174
226
182
191
201
234
244
202
234
186
205
163
212
205
234
145
134
235
171
240
144
185
240
195
205
269
254
236
231
113
147
196
149
242
217
242
195
165
203
144
204
201
208
186
194
255
219
153
136
214
176
174
237
241
290
179
165
261
225
132
179
195
232
209
140
231
224
208
194
265
189
221
187
214
208
203
200
165
220
182
228
253
228
247
239
182
223
204
225
279
167
226
208
223
192
186
162
176
200
245
185
181
234
279
189
121
164
240
221
165
214
172
222
196
133
271
225
178
190
176
234
172
235
171
167
202
220
121
202
135
217
186
232
190
165
219
141
174
228
203
202
172
110
211
210
219
201
203
125
109
192
261
200
174
112
244
200
260
199
253
203
177
180
246
221
183
185
191
121
258
237
200
194
192
141
229
167
230
208
191
182
229
213
158
179
239
232
203
285
209
184
166
191
249
147
192
157
235
195
192
220
217
213
207
152
198
202
142
238
227
144
247
201
210
186
226
230
254
146
199
174
185
151
225
223
230
187
179
216
189
229
206
250
199
241
261
185
201
117
215
170
184
195
167
143
160
208
215
259
215
198
216
226
205
227
204
191
185
204
198
218
207
237
249
195
193
178
180
128
175
182
196
194
186
196
197
176
200
167
155
167
144
219
202
237
209
227
176
220
225
170
207
204
249
169
192
262
239
192
234
163
178
183
162
253
134
140
173
228
227
193
119
178
192
183
217
195
187
179
261
161
210
143
170
160
228
232
161
220
162
194
196
211
201
185
179
226
249
214
262
149
193
213
150
176
213
201
233
227
219
165
171
169
220
236
233
201
132
178
182
221
220
195
197
148
172
176
113
207
205
228
272
215
202
220
265
226
193
203
203
206
208
269
117
161
219
216
161
237
198
188
163
232
208
232
222
195
212
205
220
234
237
180
172
182
240
179
220
233
117
246
205
186
185
193
212
195
210
241
179
221
221
147
142
219
224
260
230
225
291
224
200
228
222
192
237
238
182
282
208
229
184
198
203
220
128
223
188
220
167
232
232
180
239
210
164
214
159
198
216
243
208
164
234
215
163
194
172
156
178
230
130
179
163
134
168
189
171
262
176
204
192
218
208
204
200
223
253
223
191
233
141
204
217
268
211
139
268
170
177
243
155
172
138
237
167
198
234
173
209
231
160
180
186
200
219
230
245
184
211
208
226
172
205
184
177
192
214
250
217
169
226
240
254
174
191
150
216
231
160
176
187
185
248
212
113
207
187
202
203
201
210
242
224
215
269
222
216
237
226
226
225
177
271
144
190
223
186
206
169
181
230
135
173
211
112
178
193
160
197
171
144
213
171
227
208
226
259
218
229
240
233
234
145
202
238
193
172
202
185
219
191
187
260
215
194
205
233
225
220
196
218
217
163
214
180
166
193
248
258
165
192
240
165
209
232
187
251
215
148
211
203
226
170
221
233
224
175
218
266
229
189
229
145
256
222
194
230
215
194
190
271
152
148
188
197
236
208
185
188
179
186
229
158
267
151
151
201
262
258
199
230
186
207
164
234
190
198
212
189
191
234
193
197
125
157
251
223
188
172
213
209
225
189
108
220
238
174
268
148
247
168
185
217
243
222
216
253
208
233
266
227
214
221
212
157
192
127
228
255
259
147
225
201
190
192
179
272
177
252
239
245
191
217
185
224
263
231
222
130
167
240
166
219
179
212
125
152
117
172
198
191
167
193
230
235
245
195
131
204
182
153
162
164
181
234
194
207
241
209
213
126
214
198
173
212
211
172
177
132
245
257
162
171
207
211
166
237
242
208
208
230
267
187
221
237
252
193
211
174
236
211
215
141
206
231
218
185
203
213
191
208
227
181
226
183
234
146
204
191
237
231
237
191
258
184
171
181
191
221
149
180
176
165
247
153
182
201
217
218
164
180
149
219
193
178
136
170
200
199
222
202
186
227
235
223
217
213
237
158
222
170
208
215
228
196
191
208
206
263
217
201
263
173
220
203
144
224
149
213
236
227
148
172
174
262
257
154
190
157
217
175
222
215
203
234
156
201
151
194
235
188
212
259
207
227
133
185
131
156
191
162
259
225
170
232
168
210
170
168
219
170
192
160
226
203
220
162
218
184
150
205
218
183
247
157
227
169
150
187
201
185
233
191
189
201
225
189
211
191
188
184
188
189
211
168
191
160
236
207
214
126
210
166
234
225
222
270
273
254
187
251
172
188
165
162
215
201
119
176
221
211
228
245
245
137
193
185
210
202
211
213
160
189
254
193
210
175
175
193
199
158
184
250
199
235
182
139
202
229
221
185
139
207
232
226
195
227
184
240
200
221
212
233
258
224
141
240
225
131
243
190
227
246
183
208
201
272
215
213
219
153
206
219
210
190
188
145
192
161
183
164
253
210
155
179
216
187
219
194
175
188
147
206
217
176
175
288
129
220
259
204
205
172
199
212
224
210
252
211
190
125
239
183
230
197
172
219
178
164
193
202
250
198
188
185
193
200
181
213
202
189
203
185
206
149
211
146
206
182
160
183
159
167
247
250
191
194
249
193
133
215
265
247
177
203
202
155
176
192
173
208
240
100
185
192
204
135
193
211
246
180
214
214
143
221
161
134
157
163
234
208
141
213
182
224
234
241
182
266
188
211
146
205
238
228
262
243
220
143
186
241
243
157
186
232
233
241
251
211
214
245
219
256
165
149
230
136
199
167
227
207
241
181
185
246
188
211
172
197
184
147
222
201
246
244
182
174
237
226
158
148
240
181
123
211
206
204
192
209
177
220
254
180
232
269
206
224
200
230
203
221
229
236
233
126
158
182
173
207
213
204
234
179
236
200
251
208
226
117
183
225
177
240
135
218
155
242
221
265
135
224
222
185
201
178
220
208
201
90
217
217
176
171
139
197
182
215
254
219
204
198
143
186
204
196
161
214
197
203
260
215
161
239
162
244
194
190
205
170
224
150
186
201
201
180
250
231
181
240
217
189
250
216
196
180
228
197
114
258
248
225
183
188
206
200
226
243
179
224
213
186
173
158
210
175
191
202
202
227
220
283
270
197
208
201
277
243
124
223
227
208
200
242
204
137
239
173
221
136
201
202
172
192
175
172
209
223
220
188
192
229
199
225
209
206
216
192
226
190
161
216
230
224
154
172
237
166
232
125
107
160
197
259
235
201
208
123
182
107
178
210
192
97
205
187
203
201
202
155
221
196
218
214
165
173
217
228
225
151
251
180
187
132
193
181
210
236
182
239
181
194
250
254
267
189
220
204
201
188
210
132
218
235
200
218
202
164
124
161
255
179
200
177
142
144
169
267
197
225
257
170
186
272
232
203
177
191
176
154
201
172
180
175
121
224
266
203
196
166
222
225
212
236
215
189
231
262
250
252
232
222
261
221
216
138
179
229
234
217
213
192
216
205
183
223
179
207
168
177
209
146
180
217
196
175
124
268
125
134
227
252
220
218
178
229
173
208
152
225
229
204
185
220
222
146
275
225
167
202
176
216
171
226
130
221
219
162
219
220
156
216
227
154
165
198
148
212
241
227
153
236
255
217
224
254
142
208
236
200
203
248
170
195
209
152
144
209
189
237
178
204
226
266
207
169
156
158
208
180
200
199
224
234
167
232
207
199
136
228
207
199
215
123
207
250
135
187
207
190
205
214
183
185
172
158
218
186
249
267
229
219
164
173
202
247
234
250
231
241
183
189
208
199
240
180
192
178
183
248
201
167
237
222
182
241
173
203
163
210
176
200
206
165
165
233
253
184
191
231
210
247
183
232
158
183
172
176
137
180
167
222
185
191
251
210
189
167
232
185
216
173
175
142
168
203
174
214
152
206
202
232
227
193
236
179
204
179
168
173
267
228
103
174
213
190
194
194
217
142
141
186
223
220
180
223
211
219
234
258
173
190
220
247
226
189
176
146
167
202
226
204
176
175
220
185
200
142
195
187
168
212
162
205
212
187
114
213
190
229
233
181
172
209
147
200
161
148
234
278
207
193
150
184
201
225
241
215
166
197
247
234
253
184
195
243
173
192
162
235
245
205
190
174
191
158
197
158
202
182
232
236
275
167
220
162
181
193
207
213
166
167
247
209
232
184
194
228
229
277
138
199
168
164
149
236
209
200
165
210
222
171
135
205
162
188
180
177
184
264
192
201
215
245
215
215
148
238
227
246
203
199
161
210
279
214
206
190
214
187
213
203
239
211
275
176
176
295
215
161
190
195
246
254
194
154
232
221
240
216
186
224
194
218
232
194
223
151
249
172
204
144
186
199
258
183
201
182
183
217
285
184
178
178
210
205
220
198
203
169
197
217
270
199
198
211
229
200
223
168
243
255
204
228
189
126
222
186
206
222
267
162
180
150
228
129
266
177
230
233
239
166
270
201
230
224
215
233
253
266
154
232
223
191
168
239
200
143
203
150
263
144
131
259
136
241
216
194
209
210
235
192
230
207
184
246
187
203
204
204
201
164
188
211
212
251
213
174
142
187
231
181
161
269
181
205
220
160
151
215
259
133
251
189
188
229
180
198
152
233
185
152
139
210
169
237
221
217
188
127
180
227
184
227
174
270
96
197
254
160
134
232
199
184
223
192
184
214
241
191
167
210
191
121
106
171
253
275
201
236
221
203
209
209
200
226
164
256
184
154
257
206
143
223
215
216
174
162
199
166
184
161
211
193
254
275
174
206
173
146
192
228
230
210
185
211
178
187
252
227
184
183
224
226
192
186
223
244
207
251
227
155
157
199
165
261
221
214
164
206
196
234
201
191
209
197
172
169
214
205
200
204
178
190
219
267
224
215
202
183
190
177
186
172
233
213
167
192
132
233
132
249
210
182
177
177
202
196
192
152
196
210
256
234
234
194
189
251
220
234
228
239
175
251
207
229
214
222
198
222
179
196
135
239
144
191
158
181
199
204
187
242
180
216
186
214
213
205
181
251
156
184
171
155
170
213
211
200
224
207
306
209
224
195
187
250
206
220
196
153
185
206
211
203
281
186
191
195
139
141
195
208
156
201
184
219
198
186
234
217
192
159
185
170
187
221
180
195
203
272
225
210
180
174
165
235
159
177
173
217
210
252
166
203
241
109
227
202
189
191
197
222
150
195
162
209
197
211
146
172
245
196
177
215
178
182
232
176
211
209
187
119
207
235
217
214
201
205
200
189
207
176
211
229
212
244
221
213
173
205
223
240
203
206
209
251
151
225
194
213
209
258
146
130
185
241
196
222
209
184
191
220
196
178
155
237
211
171
247
126
212
163
194
173
193
208
264
165
182
220
137
205
187
182
257
240
259
204
217
179
253
223
206
259
196
143
274
203
204
196
198
219
171
241
181
149
233
217
252
182
124
108
229
214
252
199
117
199
200
127
189
217
171
218
228
216
232
198
192
213
225
234
191
191
208
280
156
156
179
243
270
226
232
271
219
207
268
152
217
182
210
206
182
165
199
210
198
203
228
194
134
190
176
173
251
170
147
220
195
224
219
161
277
236
210
223
233
204
157
146
217
144
215
227
176
220
208
229
224
201
230
110
197
251
241
190
191
246
238
181
235
161
242
245
101
223
222
169
169
199
255
254
227
144
196
248
185
199
227
165
189
271
249
182
188
246
202
197
249
269
205
194
196
199
203
182
243
229
166
179
232
162
267
217
221
209
177
213
252
192
250
96
247
182
216
204
217
222
196
232
151
193
218
217
151
161
206
191
148
162
201
217
172
252
278
221
225
166
146
176
206
220
194
223
156
184
218
181
242
197
207
189
155
215
223
173
201
169
257
196
99
139
159
157
242
204
249
213
204
160
236
164
195
220
187
200
189
180
241
190
281
251
228
241
148
203
205
217
189
238
129
222
240
242
220
218
160
246
148
141
176
128
196
171
196
118
277
192
173
218
176
261
163
219
223
259
194
236
220
164
219
213
215
205
202
215
204
212
189
189
231
156
154
204
174
198
198
160
180
266
176
225
197
206
195
200
254
250
153
184
230
217
144
133
240
215
226
162
205
207
202
204
233
223
179
263
164
201
238
182
191
231
228
234
166
244
226
141
173
190
208
153
223
136
209
197
196
168
208
243
224
244
167
211
176
213
250
197
184
205
170
192
175
178
255
224
193
277
198
217
193
216
195
201
224
127
217
217
214
218
193
162
234
181
179
261
205
208
206
165
134
225
214
252
168
190
206
192
231
210
214
198
215
164
271
182
197
205
220
241
189
238
234
266
251
243
241
159
129
229
167
230
228
215
183
243
124
254
208
171
212
183
177
171
258
141
233
210
222
221
169
236
225
203
181
172
109
195
159
272
234
242
174
189
148
222
184
172
212
90
234
205
158
171
173
224
177
248
225
189
250
197
269
226
211
182
170
172
244
167
218
246
154
229
151
148
173
160
191
189
213
227
261
146
180
182
165
214
161
183
236
130
217
150
238
166
146
192
268
197
175
213
184
209
151
265
160
149
171
161
228
169
206
198
176
133
227
208
175
223
201
143
206
207
186
257
158
228
230
219
184
180
174
165
246
189
207
197
185
207
152
232
234
281
238
213
144
242
178
165
209
217
207
198
175
252
209
189
237
223
168
158
264
191
170
148
221
216
211
194
238
226
153
245
123
165
255
189
176
257
189
219
211
175
229
178
219
167
224
176
269
192
244
164
230
166
227
249
183
168
234
197
200
235
213
220
225
263
248
224
212
168
190
184
196
196
233
210
244
128
206
144
181
202
238
239
167
187
152
245
207
177
200
190
223
208
170
200
232
244
258
212
196
247
199
137
186
233
187
157
188
191
196
200
168
214
208
231
178
212
159
208
192
230
168
187
216
182
243
246
226
213
237
173
280
153
248
167
222
126
162
174
205
212
138
201
201
214
165
199
173
208
152
208
211
197
235
185
173
226
188
160
193
233
130
184
210
248
165
205
187
203
259
213
177
184
218
144
239
233
210
248
247
173
179
221
250
238
190
234
222
231
163
187
241
220
152
192
259
175
227
243
220
175
183
228
280
196
174
184
161
170
190
178
182
198
189
234
181
158
153
202
169
214
244
252
182
230
172
214
242
180
212
131
161
221
213
213
185
205
139
197
167
205
246
228
262
188
260
209
128
193
162
139
180
228
210
203
179
209
154
191
183
173
261
169
174
175
227
228
248
219
205
239
209
234
214
209
213
238
223
177
155
266
230
149
160
240
184
189
201
204
173
233
201
190
202
246
265
201
188
239
250
202
173
180
237
183
122
191
204
213
286
260
191
189
91
226
188
201
179
142
228
208
179
185
269
179
187
231
218
229
189
185
195
168
175
238
208
224
229
182
216
180
245
229
184
195
204
209
194
169
210
141
253
226
239
97
206
191
194
225
191
275
143
199
190
230
195
231
240
231
266
196
174
146
215
191
233
165
203
237
139
155
188
263
170
155
197
208
204
224
145
137
204
204
166
206
184
257
214
202
160
205
193
207
201
195
203
233
118
175
211
183
242
208
202
245
269
231
156
172
234
190
268
182
207
148
192
239
227
194
146
177
217
209
236
207
213
213
136
259
240
190
161
170
174
189
225
206
159
231
197
221
218
209
192
219
177
208
178
205
200
138
195
161
201
273
226
197
244
117
158
195
234
181
220
233
159
228
251
148
215
199
132
176
168
226
160
160
99
203
189
190
199
236
168
169
194
266
200
171
155
221
184
141
231
205
224
247
190
237
189
217
154
213
203
157
160
207
161
179
222
215
148
178
139
207
188
198
109
156
208
183
305
197
154
180
223
201
228
190
166
159
203
171
258
263
145
285
224
202
215
236
187
168
134
185
228
225
219
247
138
220
236
137
256
181
147
214
199
223
201
163
221
207
153
234
185
149
167
191
206
139
235
212
226
224
170
164
196
110
235
236
242
228
236
190
147
240
178
242
194
207
243
200
243
192
183
232
159
224
233
157
183
255
205
241
258
178
188
234
213
193
222
223
242
185
244
231
191
220
200
175
210
252
170
203
199
194
182
219
164
235
183
232
192
191
217
217
205
178
197
271
187
238
225
233
184
194
173
156
191
182
171
209
226
220
190
174
210
208
202
222
263
233
184
217
268
191
208
245
163
213
171
214
173
222
198
163
199
175
217
193
202
145
178
190
224
129
191
187
267
221
183
240
221
254
258
203
211
215
205
180
235
161
244
241
246
279
240
211
186
218
272
168
215
209
155
169
174
156
168
220
164
260
184
193
227
172
187
187
228
250
253
187
187
196
204
212
144
218
194
226
154
215
214
154
219
225
249
204
196
216
178
202
201
175
191
196
189
256
207
115
237
188
210
238
224
165
199
114
246
156
224
195
149
167
250
219
181
163
193
182
177
188
180
179
181
178
190
140
205
182
194
208
242
219
254
177
202
167
212
226
221
200
207
225
166
215
203
196
259
150
187
176
186
184
207
215
226
124
160
161
247
169
153
164
218
193
204
189
194
246
144
274
222
274
164
178
167
179
206
228
213
166
210
180
231
215
216
157
181
226
228
189
147
278
246
236
192
201
191
199
208
240
182
173
253
200
189
208
244
188
247
187
179
198
151
114
149
151
220
176
255
154
189
177
199
168
214
169
206
196
202
186
199
227
221
163
179
176
233
225
175
258
197
214
254
237
222
189
223
209
206
117
241
183
217
192
160
237
174
193
213
208
197
196
207
164
188
253
140
235
214
189
188
195
211
226
189
173
231
225
185
199
232
197
285
207
232
239
210
174
196
258
212
253
164
170
152
251
154
237
238
203
199
211
178
264
201
142
188
169
136
247
175
201
198
166
150
227
212
207
190
231
274
215
230
175
205
204
200
170
242
226
156
166
202
251
212
185
261
183
174
187
146
218
199
192
201
201
163
176
146
203
219
203
164
259
284
218
204
189
242
154
107
212
141
184
167
145
223
194
196
217
229
175
249
204
202
199
165
172
141
195
239
225
191
203
115
250
194
234
233
185
178
147
216
156
234
194
263
246
260
240
250
220
282
236
230
269
217
190
133
185
129
181
224
268
204
134
165
119
205
191
215
177
202
260
223
191
202
196
251
175
149
201
208
138
216
189
221
182
239
236
196
221
169
204
204
198
203
188
200
259
205
160
184
213
207
248
281
239
214
249
193
212
272
165
166
200
202
224
228
258
191
141
215
184
197
176
204
161
227
242
156
207
228
276
269
182
281
206
248
215
190
223
203
199
168
172
207
142
151
236
187
278
258
123
233
202
198
177
136
214
184
191
180
201
218
174
190
223
225
199
165
188
232
176
189
201
231
259
230
230
187
214
217
244
272
170
206
214
175
228
135
198
225
142
161
263
184
191
248
175
206
220
181
156
230
191
101
236
172
206
195
230
176
205
181
238
232
233
194
162
197
220
185
183
217
253
199
216
217
219
119
217
170
169
228
226
193
255
149
199
209
237
198
168
231
264
177
216
232
224
220
239
203
211
149
164
192
175
213
227
153
198
179
302
212
200
199
201
230
177
152
203
197
135
223
207
141
100
276
142
242
172
270
151
184
166
264
205
191
214
155
184
234
187
173
163
190
152
167
213
221
181
134
110
166
228
172
194
155
227
166
226
188
162
215
216
166
188
120
208
153
187
182
182
200
198
272
242
241
183
247
240
210
195
211
284
267
209
205
179
225
199
177
226
258
188
151
251
203
167
148
243
202
245
183
158
187
188
173
236
210
254
240
114
217
241
234
220
219
194
221
232
229
139
127
179
141
166
176
168
200
158
229
158
181
228
211
185
202
237
169
186
159
197
204
176
205
154
210
164
231
207
196
214
228
222
190
186
205
201
150
215
200
203
182
208
162
180
232
227
235
211
211
214
212
132
220
212
199
248
147
200
220
188
272
236
185
150
247
254
255
177
142
255
201
206
206
287
131
219
136
252
213
222
269
213
175
148
186
209
178
260
242
224
257
215
165
216
247
146
218
167
187
197
134
220
194
199
149
247
227
225
215
198
209
243
252
205
183
221
240
220
202
218
188
198
247
194
215
167
182
229
197
199
191
206
223
202
180
249
208
187
216
231
218
173
238
187
187
218
236
140
183
200
221
245
216
184
199
153
247
215
190
250
197
146
163
243
156
129
214
204
184
192
220
236
198
209
224
186
206
208
213
148
232
178
186
197
186
205
275
152
143
220
209
151
202
202
215
225
187
180
198
200
226
170
170
145
180
209
166
207
189
220
218
216
276
273
187
279
122
231
188
192
173
236
261
217
176
201
186
150
158
191
245
172
167
226
209
200
209
258
195
135
142
200
273
173
198
157
181
218
168
207
185
189
239
187
236
233
212
128
177
211
231
211
180
150
192
172
214
184
270
252
239
254
241
265
210
201
234
148
219
189
205
157
235
188
116
236
201
171
211
137
204
171
208
194
268
211
176
187
182
200
250
184
199
155
198
235
189
173
177
191
221
244
232
244
217
186
161
212
209
224
207
242
196
239
152
190
202
271
204
192
187
231
157
227
177
159
164
205
216
108
178
187
201
138
202
198
271
158
143
261
190
183
214
219
257
172
160
248
114
213
204
195
228
186
150
179
222
239
223
231
176
168
195
176
192
219
194
156
234
226
200
148
192
256
209
243
199
207
198
195
168
196
206
256
208
144
207
180
175
145
260
184
209
200
169
181
224
151
179
217
206
218
239
135
223
213
164
142
188
224
161
139
155
171
184
182
183
224
222
227
217
232
217
172
195
224
158
177
226
196
221
144
221
194
254
159
206
227
191
185
137
252
161
228
232
232
215
212
159
197
205
223
180
135
223
236
226
227
221
200
182
229
180
132
190
160
169
145
141
213
173
193
244
227
208
237
199
231
174
210
276
205
232
214
156
139
189
174
141
162
197
270
190
146
167
208
211
175
262
184
248
264
199
212
246
219
223
211
241
227
265
248
199
203
297
184
209
174
144
225
288
195
171
208
201
243
187
244
145
189
189
245
233
142
227
171
173
224
252
185
208
179
164
189
209
219
160
173
270
206
155
191
208
235
269
210
204
243
214
182
275
214
209
149
228
164
229
188
230
215
147
210
238
173
177
196
204
198
154
234
165
171
226
214
186
184
269
193
213
258
203
228
204
204
168
213
206
168
204
273
217
150
200
233
230
203
204
219
183
192
178
150
248
243
216
210
197
179
166
219
215
216
184
255
250
209
246
247
173
186
184
224
198
180
155
138
199
218
112
212
250
175
232
182
175
233
131
184
197
173
222
186
271
172
170
233
238
255
185
184
151
224
176
203
203
182
247
170
186
223
206
207
204
266
130
146
232
170
169
196
163
201
179
208
185
180
176
161
223
226
163
259
244
199
142
219
171
199
175
213
212
205
260
173
218
189
189
158
194
180
176
185
210
183
233
232
200
201
247
231
136
202
200
183
198
214
279
221
263
176
200
178
206
139
191
213
226
167
194
230
208
185
213
210
203
196
203
253
183
177
218
175
192
250
184
175
178
196
198
129
243
201
202
207
161
180
192
165
221
241
210
219
197
192
181
157
242
150
151
144
216
222
209
191
169
245
229
238
192
132
191
192
181
270
223
173
178
220
230
191
192
263
185
202
231
210
173
195
167
197
197
196
193
238
155
228
216
185
158
227
201
209
179
231
154
222
194
215
203
158
201
231
278
225
174
215
231
235
239
214
171
183
197
244
158
251
216
161
146
219
205
150
215
245
206
164
112
243
123
253
206
154
251
163
182
213
212
184
253
163
158
171
177
163
203
221
215
225
170
207
222
151
186
209
200
242
149
142
180
149
160
222
167
163
168
141
219
196
161
207
187
234
184
212
194
234
215
218
213
219
215
243
214
234
146
254
230
211
189
213
195
179
150
204
206
242
197
172
250
252
203
245
208
247
187
267
132
150
247
179
158
257
198
178
140
181
198
195
129
266
162
199
239
202
194
138
144
181
197
226
206
117
181
172
194
220
188
187
208
262
201
224
209
245
195
228
244
190
236
145
176
177
217
284
134
138
240
244
237
226
167
156
174
154
226
170
204
233
230
245
233
183
218
207
204
227
217
172
220
217
248
177
171
179
208
138
216
191
220
189
233
196
167
177
257
173
214
194
242
209
189
195
246
155
164
142
209
187
168
204
118
271
151
207
252
252
196
211
192
191
191
207
245
181
248
206
201
250
203
237
233
251
279
178
232
202
195
224
211
192
230
240
212
232
164
211
166
229
147
187
255
215
268
186
209
184
206
170
161
194
219
133
201
178
195
207
221
230
221
210
233
168
191
201
147
182
195
225
195
204
185
190
145
224
166
253
178
220
199
193
238
257
157
209
191
147
261
183
174
172
188
184
226
170
208
192
243
197
247
243
296
157
203
151
242
250
208
246
216
221
163
251
234
187
153
242
173
116
205
219
200
174
146
167
95
219
252
216
229
248
209
208
189
205
222
226
226
188
240
217
236
267
196
195
248
175
199
195
183
198
244
187
219
180
178
239
164
230
134
189
224
186
212
164
138
252
259
153
238
234
207
241
203
218
172
161
208
227
186
222
183
242
215
163
238
159
244
208
191
199
238
190
145
213
172
174
232
160
167
230
160
124
216
215
219
207
227
221
246
246
198
193
206
166
228
191
215
241
178
209
210
204
128
211
220
226
164
191
185
242
181
231
199
226
192
175
237
195
191
155
255
183
247
286
163
198
231
194
216
216
242
232
153
147
185
227
169
209
180
150
209
244
203
236
194
228
202
220
178
243
192
188
149
230
170
223
197
237
218
211
236
264
227
143
175
195
268
209
172
231
195
279
251
201
264
106
205
200
215
202
161
214
160
231
153
191
169
216
148
162
252
211
197
195
160
209
230
163
204
141
240
222
211
203
192
199
225
219
201
237
206
156
199
151
170
149
132
191
232
174
223
184
196
162
243
174
213
254
276
204
178
166
200
166
233
240
198
186
224
242
212
219
166
200
216
174
181
213
182
226
108
200
224
189
183
241
182
192
203
162
131
146
155
215
241
189
200
269
248
127
196
183
181
161
194
222
222
127
227
154
211
227
87
200
186
207
209
205
195
150
279
209
187
243
198
234
215
236
213
189
201
234
243
184
239
190
177
197
160
274
240
260
227
199
253
225
167
205
181
191
201
245
215
181
258
233
211
173
201
244
189
202
142
268
244
195
162
202
209
207
199
236
200
236
262
202
205
200
256
219
167
239
197
163
163
126
186
191
148
193
215
257
226
183
251
177
196
145
234
235
174
179
251
251
184
258
218
245
276
171
160
236
171
197
255
176
199
222
223
170
238
231
210
156
227
190
176
176
254
232
199
180
199
194
156
204
160
163
202
216
175
214
262
230
174
175
180
211
145
192
270
197
110
240
225
217
211
189
265
208
107
220
218
204
129
249
214
229
216
165
200
245
243
260
259
202
171
186
240
222
254
172
202
153
202
183
127
164
125
227
252
192
250
167
219
196
169
203
181
248
214
210
160
238
209
213
236
213
208
217
210
209
248
148
183
220
220
202
217
211
246
235
181
184
194
216
253
201
199
181
177
190
211
239
196
175
169
205
270
183
129
167
206
234
161
260
226
250
139
250
177
228
226
222
206
165
207
240
211
189
246
161
243
199
258
105
182
209
237
148
120
281
177
174
250
201
291
213
209
215
185
202
220
153
145
206
185
138
222
197
251
190
212
232
199
228
226
204
224
206
167
202
204
228
198
129
101
256
161
146
167
169
221
129
215
217
165
84
201
227
185
177
184
174
173
176
198
234
191
242
172
235
215
202
187
166
235
153
210
168
172
252
189
221
199
184
235
193
280
212
153
187
172
187
181
194
164
125
186
170
117
194
216
236
204
171
190
245
212
164
181
228
186
169
214
176
187
250
218
212
245
259
249
231
179
186
214
225
238
237
173
225
224
156
255
205
211
178
169
216
200
165
209
228
173
213
223
193
190
258
221
199
184
137
152
237
197
240
130
207
227
220
226
167
181
155
147
190
140
235
200
181
239
188
185
175
202
255
226
162
206
147
234
162
239
162
188
218
198
236
184
215
273
215
181
191
166
210
216
147
200
243
198
237
180
239
247
252
179
218
227
268
179
245
236
202
201
159
137
263
192
166
225
184
196
218
226
177
194
212
237
177
216
157
226
236
218
203
199
244
194
214
182
153
230
172
235
199
248
272
161
234
168
183
227
211
204
207
171
160
256
166
160
228
201
160
210
211
222
202
252
214
253
190
272
213
166
233
196
180
224
182
183
234
208
169
170
227
220
187
164
189
198
194
237
160
228
218
206
247
229
213
189
220
198
116
218
186
198
234
212
191
197
254
152
202
180
195
249
169
189
167
161
215
175
137
190
205
210
152
213
179
209
199
230
207
161
138
168
233
254
209
211
239
223
220
160
146
230
132
177
188
173
293
156
240
177
212
179
178
225
197
202
230
123
121
208
211
198
188
166
189
198
204
258
208
220
206
227
202
141
197
227
217
152
191
245
185
125
196
192
141
256
272
214
208
196
224
157
190
226
235
187
228
259
200
141
162
257
177
253
211
194
201
227
181
185
239
216
256
237
164
234
229
157
120
234
163
211
240
268
219
225
219
219
194
195
155
160
120
170
181
188
237
195
153
147
116
231
234
238
228
239
210
216
213
173
193
207
134
219
239
180
163
174
209
164
211
159
165
185
199
235
207
159
163
129
252
203
197
233
164
229
183
186
225
194
231
207
135
162
198
241
184
197
212
210
206
222
203
225
201
195
196
171
218
160
241
218
200
190
191
229
175
271
214
252
232
196
210
129
204
177
224
243
276
212
191
82
247
210
220
214
187
244
206
230
203
252
226
220
201
226
188
204
190
224
174
165
167
230
207
201
204
212
199
168
225
227
215
180
220
231
183
233
188
158
198
190
209
232
117
175
133
232
198
248
277
166
226
227
166
198
230
219
234
145
248
137
188
176
213
214
180
199
255
150
188
220
151
217
155
232
212
220
238
200
221
169
164
195
165
185
259
175
191
111
178
116
214
142
184
217
181
225
176
242
208
192
213
187
169
139
214
164
166
186
263
170
165
180
214
199
231
234
195
200
264
233
238
221
114
186
137
241
174
168
214
210
191
193
279
224
235
225
243
122
252
223
195
192
246
223
238
222
223
167
183
215
262
201
178
216
252
239
196
234
201
142
237
229
191
268
163
189
199
225
224
166
186
199
247
222
243
139
204
167
270
171
202
122
212
222
200
199
210
209
232
208
164
216
153
228
189
224
171
263
230
146
190
228
211
204
218
209
232
243
225
164
183
200
248
170
218
219
189
178
176
188
217
223
243
209
205
190
234
256
257
191
243
247
237
230
162
198
207
150
248
179
177
136
161
211
220
179
207
180
193
219
226
215
191
127
201
230
254
193
186
154
232
174
233
235
198
212
228
187
179
249
154
253
215
221
185
259
201
219
197
202
245
162
191
209
204
208
192
179
242
214
211
255
228
213
259
241
175
220
222
161
163
259
228
156
228
199
211
212
142
247
166
245
206
201
205
223
189
207
165
180
223
132
185
187
227
219
250
246
220
169
196
178
211
206
185
212
223
192
205
211
155
213
214
206
232
202
218
172
177
173
240
224
216
245
172
229
244
199
210
175
213
220
212
249
148
226
225
218
194
229
217
159
241
205
229
188
165
240
242
254
240
169
230
275
134
206
179
217
193
235
244
175
249
216
238
236
216
191
203
247
244
194
217
202
191
202
211
192
225
262
218
144
142
182
230
221
187
181
238
162
203
203
160
253
177
184
144
177
167
206
265
139
173
255
220
192
237
178
212
234
157
172
180
124
188
207
192
179
220
202
231
191
194
263
194
213
204
174
243
207
151
198
192
219
199
201
228
203
145
229
189
221
193
233
189
236
193
173
141
235
226
191
229
203
228
210
229
241
206
202
224
232
249
193
212
208
213
163
221
190
187
275
228
220
210
181
206
199
215
196
191
214
179
186
157
224
241
228
229
169
185
198
169
192
189
183
196
205
203
124
223
247
170
224
202
250
150
229
226
215
224
255
174
192
198
197
220
246
160
181
111
182
191
148
157
208
211
254
234
265
198
128
165
147
251
201
211
172
204
256
167
215
177
184
195
251
186
180
210
204
163
155
230
244
265
192
213
263
191
153
234
188
189
257
266
181
135
217
210
222
103
192
214
213
157
251
169
210
185
184
155
228
242
196
243
214
153
251
219
137
246
194
206
221
177
147
166
228
249
141
157
229
208
159
204
223
187
235
170
196
196
177
220
188
158
259
204
209
219
227
175
211
236
182
136
191
220
191
173
202
250
178
228
226
208
210
207
261
188
250
177
252
145
162
227
212
192
171
227
177
242
239
211
155
191
208
181
224
203
251
189
235
210
167
156
209
254
171
197
119
191
203
195
212
215
183
203
181
197
192
254
225
135
211
273
200
175
176
181
224
165
225
230
188
248
209
204
197
161
169
212
210
216
219
140
175
240
174
180
191
185
231
227
217
196
179
213
213
202
147
262
193
165
215
144
176
187
295
187
215
194
234
263
198
211
285
185
221
168
267
189
130
192
153
276
219
172
149
182
225
128
204
160
184
211
186
175
192
239
161
227
135
243
170
208
181
198
160
175
174
212
201
176
265
128
217
135
242
196
102
226
239
133
173
181
256
210
183
188
165
147
239
225
217
166
235
238
248
256
195
207
207
208
162
221
206
152
165
169
154
213
218
176
189
195
209
183
257
202
168
244
222
224
189
174
202
281
202
203
163
206
188
182
245
213
185
209
202
225
211
135
189
221
171
236
242
194
189
172
209
184
211
175
195
277
216
157
250
187
214
257
178
157
197
186
262
157
192
189
235
175
179
136
185
196
202
225
223
150
237
270
230
211
208
253
226
175
185
204
199
189
169
243
228
198
223
208
202
148
156
208
193
221
186
245
265
246
251
252
259
221
217
141
237
236
183
193
250
217
221
173
210
220
199
138
213
238
204
229
166
216
192
206
135
135
175
221
220
196
241
259
212
202
202
163
166
213
188
172
220
218
179
225
190
175
195
196
241
193
191
206
190
168
198
198
233
192
152
205
204
135
134
200
158
196
236
205
205
181
203
137
130
237
180
199
265
228
256
190
255
185
154
225
200
169
228
132
182
178
219
247
203
178
174
234
146
238
195
211
165
161
231
111
163
174
181
203
183
202
250
216
184
247
183
152
182
193
239
200
162
211
219
225
205
147
189
205
195
215
145
163
205
158
280
223
202
244
172
210
236
224
201
224
192
179
169
215
166
221
165
238
203
205
250
230
186
161
197
278
246
220
221
185
244
190
151
172
189
167
253
215
222
169
224
157
143
197
195
248
180
182
192
190
167
202
189
213
220
191
210
219
148
184
216
211
179
210
211
223
158
190
254
205
174
187
195
174
212
158
195
195
126
196
275
146
167
197
227
206
252
277
202
161
259
152
167
214
216
171
170
191
174
223
248
228
280
189
190
209
174
174
153
178
180
205
215
230
166
212
228
224
268
253
211
205
180
163
194
174
216
202
202
182
194
199
186
181
235
143
253
210
212
185
132
243
140
223
190
238
157
199
281
152
192
214
282
113
279
239
261
222
161
225
190
259
158
148
221
185
275
256
224
130
228
233
228
231
209
289
267
180
189
215
145
160
213
228
184
183
183
186
212
193
184
123
179
225
258
181
207
227
156
183
201
166
187
151
240
198
165
219
268
181
242
190
172
212
175
218
144
191
208
183
161
213
129
258
237
211
199
192
237
192
213
251
172
128
210
202
141
164
202
227
219
239
195
249
162
186
211
226
148
228
173
237
224
202
222
181
184
197
240
184
195
175
216
198
154
209
182
210
177
229
191
184
150
208
214
196
200
169
159
249
157
237
154
191
191
174
234
212
177
201
170
218
182
201
241
262
184
233
164
215
284
172
204
148
144
177
195
166
169
171
213
204
237
218
274
181
199
205
174
177
208
199
184
218
205
257
157
187
272
199
152
135
169
224
185
214
214
193
190
182
164
210
243
224
165
220
229
239
173
253
161
153
188
225
221
159
164
126
225
188
185
159
199
211
206
218
219
213
185
225
188
187
218
136
96
187
207
194
185
203
173
234
174
233
167
199
125
212
193
195
188
238
235
192
193
212
170
152
180
149
222
147
167
225
167
213
223
125
161
158
159
182
258
191
200
212
214
155
250
209
200
222
203
230
195
126
254
237
147
164
231
233
229
213
203
228
228
195
159
214
247
143
246
206
168
245
196
200
204
251
249
179
199
195
193
192
211
190
228
223
274
204
204
219
146
188
211
239
202
219
146
177
164
214
248
181
192
231
213
192
221
205
240
223
197
261
273
168
201
195
195
241
205
225
205
239
179
167
212
241
157
203
159
179
203
262
195
196
259
191
201
146
179
181
263
205
167
218
196
226
219
142
214
229
200
154
157
194
223
245
175
156
187
197
212
195
154
128
202
222
173
206
223
206
220
140
169
258
265
162
192
257
207
163
152
147
171
162
214
257
133
191
204
146
211
172
197
220
219
259
184
159
224
255
166
115
166
182
183
189
234
204
235
193
173
178
186
148
182
220
196
228
182
188
198
196
203
231
229
185
204
175
176
158
201
250
213
155
216
189
244
202
171
201
214
172
175
190
190
157
230
206
197
166
196
233
193
181
221
194
247
176
227
169
246
244
177
150
166
195
240
225
199
218
175
202
199
201
147
168
246
194
238
177
230
249
196
164
195
195
238
216
154
247
208
212
198
226
179
188
135
231
182
224
170
218
146
235
210
199
257
212
254
181
200
248
218
152
189
199
240
135
166
131
187
159
203
226
195
157
162
207
167
212
207
185
185
224
212
171
205
244
140
211
155
145
238
191
222
255
216
213
192
251
187
174
162
179
194
139
218
195
177
222
198
180
201
183
242
184
201
174
215
169
194
225
206
185
257
211
184
106
194
177
224
179
156
199
174
204
242
195
220
207
256
234
144
211
143
201
204
272
171
205
188
225
186
205
256
136
178
237
204
127
171
167
227
150
249
254
195
227
198
182
210
214
211
194
194
283
284
181
152
185
206
144
166
183
176
193
212
189
188
178
209
236
188
191
211
175
256
227
146
226
228
204
227
191
170
217
242
249
198
242
226
183
255
212
184
225
184
209
180
227
217
168
173
157
211
142
161
206
168
206
222
172
138
210
208
228
187
204
176
268
182
237
160
227
225
148
197
224
219
143
217
176
181
242
196
212
234
235
193
202
140
183
261
193
218
228
200
259
147
223
141
172
229
231
189
221
220
246
256
155
201
258
180
187
154
235
169
194
226
174
194
250
237
208
173
168
185
230
189
199
183
220
229
135
131
197
225
231
202
255
170
171
207
202
164
177
244
155
255
155
225
164
232
179
237
237
239
233
176
170
201
228
240
213
213
198
121
233
258
234
166
222
233
170
204
164
210
222
248
165
164
188
147
192
218
218
206
230
264
150
220
168
255
191
229
204
200
239
176
204
205
179
186
217
187
147
218
221
160
281
249
273
198
158
164
248
137
153
181
167
158
172
194
149
122
215
187
191
187
254
185
244
214
228
141
235
176
228
285
169
180
228
211
217
148
148
217
197
242
208
162
232
223
196
238
248
205
231
205
186
236
156
207
193
246
167
218
125
233
221
187
138
198
183
182
217
279
169
179
183
192
189
280
212
209
176
150
211
224
204
215
217
155
274
251
231
225
216
229
271
181
163
238
219
177
203
202
141
177
162
222
205
228
246
217
219
183
232
196
154
219
242
210
202
171
171
214
209
236
234
180
148
239
238
190
219
212
195
213
194
201
195
190
209
219
202
183
213
134
157
187
168
201
218
207
179
176
200
224
236
179
198
219
136
176
173
207
205
235
216
209
211
206
207
199
171
163
156
192
212
201
195
277
183
171
262
185
222
235
197
200
196
241
217
259
169
183
195
195
223
127
223
177
194
238
145
252
215
200
212
194
201
172
208
235
150
214
191
199
176
193
200
219
191
225
203
153
232
201
209
223
188
223
213
224
207
235
258
244
212
196
214
217
230
272
215
208
176
232
218
212
167
222
190
142
228
197
246
166
182
229
233
177
151
137
243
168
189
214
98
206
207
229
220
230
180
160
183
232
246
208
193
234
220
156
232
255
217
225
141
161
149
173
198
182
226
210
251
218
274
252
166
208
203
196
264
229
267
204
164
186
212
155
213
128
132
157
193
202
178
140
176
177
138
156
162
182
191
176
227
198
205
241
219
206
228
236
174
181
214
130
231
187
205
189
192
145
191
218
180
189
173
134
202
186
171
214
205
189
197
192
253
154
183
197
207
174
214
196
244
145
188
132
204
165
211
175
171
210
216
219
205
212
214
224
194
192
144
158
143
188
216
190
154
176
245
195
219
216
264
156
203
134
231
194
142
179
191
213
153
207
228
231
211
221
169
116
263
216
213
262
180
243
132
97
149
187
194
120
185
193
248
279
172
145
221
221
246
268
252
195
144
244
184
199
146
167
261
191
208
217
206
120
190
225
208
273
192
252
174
215
108
226
204
193
201
228
240
199
173
187
199
210
243
226
130
222
260
251
199
234
218
221
246
226
209
162
216
244
242
211
210
228
141
219
196
213
159
206
192
211
180
279
199
185
214
205
228
172
145
225
236
197
229
252
240
199
150
190
224
205
150
195
192
225
130
183
157
173
206
238
180
209
195
193
172
222
183
237
225
192
247
220
216
177
254
234
236
193
236
157
193
224
192
159
140
169
223
204
231
240
218
226
213
175
193
211
219
204
213
177
193
208
218
260
201
168
248
200
196
249
199
208
208
193
230
227
253
212
190
174
212
200
156
174
174
133
203
185
221
220
195
227
191
194
198
202
171
188
202
213
185
191
220
256
245
198
169
162
232
207
219
241
176
225
269
213
111
255
211
186
203
197
207
188
207
208
157
168
208
210
222
186
144
189
163
259
170
198
215
227
204
157
200
163
244
177
195
219
180
212
223
170
210
256
211
149
191
174
201
160
211
188
227
186
201
239
210
208
249
162
180
187
200
187
185
241
204
176
245
153
206
165
204
279
213
202
187
219
157
194
183
216
250
176
204
195
173
219
202
92
215
197
135
151
200
170
235
235
235
250
188
193
211
159
137
249
202
208
180
155
173
214
190
243
197
212
227
214
206
191
190
242
184
144
196
172
242
115
179
191
229
193
238
244
173
74
194
183
176
280
231
165
193
206
236
195
218
227
185
221
203
260
213
137
206
206
205
183
185
265
136
207
177
195
230
171
201
151
243
131
196
282
138
126
274
168
245
155
217
263
176
179
158
202
180
201
159
177
156
148
236
177
201
204
177
167
177
181
132
229
258
230
201
265
138
221
262
188
121
187
193
261
168
244
207
210
157
233
173
135
231
182
161
189
177
148
181
258
244
242
119
209
191
209
210
235
242
255
209
181
127
203
183
179
214
229
196
167
202
234
169
191
188
213
179
234
204
189
234
165
142
211
185
198
269
236
181
261
203
153
204
220
187
224
247
183
193
215
147
176
175
257
188
244
208
202
211
182
220
160
176
237
226
194
160
246
176
196
175
203
169
208
204
155
208
229
201
196
178
177
148
194
165
170
183
159
205
231
161
174
177
163
234
210
297
183
266
224
221
228
215
153
162
161
165
199
179
186
217
197
238
171
208
133
207
148
277
171
215
139
226
172
191
172
205
160
245
168
166
159
260
175
229
198
179
205
201
210
162
203
276
192
245
210
239
227
152
181
268
228
225
201
199
168
191
205
229
188
175
194
149
208
230
187
219
200
250
157
262
207
165
220
235
197
188
168
197
137
215
240
196
263
205
195
197
136
149
194
223
165
179
176
153
250
213
249
236
205
197
179
231
199
246
205
240
159
180
174
188
229
114
155
216
217
220
167
232
172
238
244
133
236
213
143
223
180
204
173
145
193
158
205
151
138
249
159
237
247
229
194
171
157
179
221
219
178
164
192
247
168
139
226
148
141
193
213
234
188
248
200
201
231
160
201
244
118
150
164
262
135
230
211
166
131
212
223
259
234
233
185
180
244
215
226
215
213
242
201
150
125
184
221
229
200
275
210
185
182
222
182
241
201
200
180
228
142
200
197
213
199
171
183
218
161
227
252
252
233
221
221
235
215
151
240
210
200
145
187
205
241
161
221
169
198
219
175
189
156
206
187
206
210
221
268
218
168
192
158
232
158
222
234
162
150
211
200
185
235
178
142
179
195
209
208
219
232
173
187
163
213
241
215
220
260
169
196
261
185
224
238
193
184
226
133
225
263
254
187
229
196
179
209
176
174
168
194
174
183
140
226
226
117
223
219
201
180
212
184
176
228
165
170
182
187
247
203
269
186
212
251
170
208
159
152
229
176
173
216
206
182
237
191
231
233
189
233
210
232
184
219
249
230
210
205
194
191
215
206
245
208
162
189
174
269
184
184
177
228
159
208
216
221
173
134
217
193
205
142
192
215
126
157
238
186
167
185
193
186
218
233
235
224
217
232
235
241
196
119
253
193
219
238
201
221
228
182
173
237
226
168
196
181
139
174
225
194
140
250
200
163
195
266
198
226
200
217
169
224
248
191
173
237
250
182
219
144
187
225
255
209
264
263
217
225
164
200
212
183
97
171
290
205
243
216
194
154
170
252
159
184
216
222
188
136
210
183
215
202
138
228
205
184
188
199
196
214
161
186
182
215
191
197
223
155
176
199
189
206
200
179
200
261
184
189
187
231
174
223
151
223
178
190
198
213
252
189
251
158
258
203
169
229
273
198
212
158
197
159
219
132
158
173
205
148
229
241
212
126
183
183
224
244
186
199
196
149
188
231
149
209
216
204
204
147
267
232
127
210
229
161
140
193
254
245
208
182
170
212
156
224
213
169
153
214
181
217
193
229
179
197
247
215
180
137
184
192
128
209
179
212
231
142
241
153
183
142
240
200
181
219
260
212
200
250
230
251
214
213
239
240
164
169
187
234
228
191
171
215
182
222
259
163
214
224
225
178
174
174
168
197
240
203
198
215
217
189
238
215
232
276
237
210
198
192
228
191
205
206
181
199
163
200
174
157
108
236
171
184
209
274
188
225
243
252
223
161
183
172
148
158
258
205
229
221
206
139
176
232
153
196
232
221
210
227
240
155
168
147
195
215
230
260
225
243
150
218
193
155
217
218
187
186
217
220
205
246
235
216
242
145
181
221
206
167
187
205
213
185
213
205
198
245
171
157
250
197
217
192
210
223
233
234
272
214
176
269
226
242
236
215
220
231
240
214
205
180
161
189
223
256
203
202
220
161
208
188
183
268
166
210
203
196
141
141
208
215
189
194
228
181
173
147
190
194
197
164
211
220
171
236
234
175
220
205
233
109
228
188
244
232
185
161
189
184
184
210
222
204
186
135
187
188
200
215
152
193
280
202
231
241
172
219
167
230
236
175
220
262
222
203
139
213
258
201
189
166
149
213
199
185
178
212
274
199
177
234
177
230
180
219
231
206
212
202
167
180
228
207
230
161
218
231
187
139
165
225
175
177
216
205
190
179
138
183
199
195
211
238
187
207
164
271
253
207
185
231
196
197
200
174
141
203
223
210
219
185
211
227
231
155
169
153
227
185
231
205
221
238
226
118
208
202
182
223
221
223
214
210
211
185
235
143
233
192
247
183
216
239
209
153
230
212
187
165
224
195
230
168
185
250
225
275
270
168
157
216
208
238
179
235
214
238
232
180
158
176
249
253
214
258
150
210
268
254
205
191
224
191
162
146
196
178
224
171
241
199
210
216
225
168
253
154
221
225
213
207
175
233
226
207
192
199
172
205
201
231
196
160
204
138
204
235
177
220
237
148
231
180
241
163
202
212
137
204
241
154
157
184
210
181
134
170
229
216
220
167
208
178
198
215
260
259
238
134
185
230
151
191
208
197
246
218
218
235
249
244
183
184
179
213
244
191
178
195
196
165
211
175
178
225
152
206
212
208
197
124
166
165
251
138
165
172
152
151
184
195
196
250
230
186
199
181
173
245
186
249
185
214
206
187
266
233
228
182
240
156
157
205
193
218
223
212
210
188
248
213
195
224
209
180
233
198
185
194
200
126
233
180
139
152
223
222
214
132
191
181
231
202
187
214
176
212
213
222
171
198
250
149
186
221
164
270
174
193
153
181
233
196
209
169
208
209
269
239
138
167
180
185
118
224
220
210
124
215
147
201
231
228
137
176
188
210
190
147
193
154
204
235
244
215
204
215
162
177
245
186
152
215
215
255
170
186
228
211
239
210
184
235
233
233
183
201
216
202
228
203
263
187
196
144
214
218
245
164
250
154
148
162
265
186
167
231
190
205
177
117
156
163
257
262
221
222
216
243
241
200
176
197
207
201
192
184
184
227
230
193
241
244
158
163
147
207
205
171
194
129
214
155
203
228
252
157
216
166
206
200
218
158
191
210
193
190
226
224
214
249
212
220
206
223
236
166
250
135
245
302
217
166
213
202
215
191
220
248
208
245
195
252
205
245
253
194
193
159
191
236
244
243
169
245
177
235
176
201
187
123
246
248
210
205
196
210
142
186
219
200
216
150
158
250
146
234
196
176
125
204
168
223
223
178
189
172
216
146
205
219
169
190
109
235
194
226
176
220
189
263
215
167
200
208
134
246
225
195
227
120
261
210
222
97
182
211
198
165
193
183
209
188
215
217
232
167
210
209
207
152
199
191
240
157
161
211
244
209
211
196
228
254
240
193
139
193
236
217
195
202
212
105
151
152
186
185
255
173
147
221
243
143
209
205
253
139
202
200
213
244
241
199
201
165
205
215
209
226
221
136
169
204
126
167
183
153
210
242
117
209
151
228
232
201
189
149
186
215
170
209
163
127
139
210
212
221
227
230
175
223
175
179
182
150
212
189
224
191
165
244
167
223
226
176
255
232
210
217
251
174
130
210
193
192
183
199
208
178
163
224
196
189
221
186
170
171
187
221
238
218
132
215
141
261
203
219
192
181
206
146
222
265
188
193
214
195
196
219
231
236
227
215
191
220
223
207
231
158
191
175
175
104
235
194
221
241
235
235
226
183
187
212
236
205
142
224
224
192
228
222
159
146
138
151
181
229
232
103
200
221
269
192
143
258
158
214
178
199
190
179
188
174
194
147
149
244
249
226
171
178
192
186
206
189
215
199
195
225
215
260
175
257
186
124
213
270
201
160
230
205
246
216
212
221
253
189
208
265
209
161
284
229
180
264
211
157
174
215
211
170
230
202
189
213
192
267
161
175
111
211
206
202
257
236
121
159
223
220
232
175
219
244
191
231
186
209
232
219
194
204
206
212
224
189
216
217
147
167
215
202
289
249
272
217
192
176
134
161
215
216
211
180
184
221
218
201
229
174
284
112
224
178
168
215
170
236
223
221
238
160
169
181
159
175
225
236
196
280
243
211
266
199
199
180
227
232
217
213
158
204
260
164
223
228
169
222
181
196
204
249
166
159
238
162
162
177
211
226
199
156
208
204
132
188
237
209
179
168
250
189
258
139
248
249
179
159
177
200
183
201
204
221
181
228
182
248
258
217
143
223
201
217
212
150
252
199
158
208
190
151
237
176
219
167
196
253
146
163
245
227
236
195
210
248
188
190
189
209
222
232
166
216
182
156
162
218
274
250
156
195
174
172
136
186
146
231
211
159
185
178
223
218
233
163
181
217
207
184
186
237
182
195
138
183
211
159
252
221
171
204
225
181
155
190
267
222
231
176
135
212
187
112
206
213
178
197
211
252
248
208
171
187
166
191
183
200
178
249
178
192
237
228
155
144
176
179
148
195
228
188
171
217
228
247
210
161
223
242
204
220
215
157
209
240
233
166
214
213
230
223
169
272
213
94
168
193
207
161
194
250
174
238
111
261
268
127
261
207
174
198
178
230
176
219
189
241
193
197
193
156
179
221
223
206
253
235
175
178
136
179
199
208
242
285
191
205
232
260
189
180
183
209
187
210
181
238
188
180
208
173
166
196
198
257
201
264
226
213
216
177
234
240
191
164
212
171
224
219
224
234
180
232
163
208
237
228
192
182
215
211
276
209
192
201
161
230
230
208
240
211
155
203
212
219
193
218
172
237
230
189
198
172
174
249
175
205
170
168
188
208
223
268
168
175
182
169
178
210
198
208
204
262
235
167
164
251
257
194
176
158
202
211
254
202
192
242
161
239
189
238
217
195
203
181
251
179
205
156
179
233
165
194
195
181
225
225
161
231
154
197
242
237
242
217
160
270
194
195
228
179
160
260
163
176
190
209
257
182
166
232
157
204
174
255
191
200
253
215
224
87
252
174
181
156
147
225
154
174
221
183
237
228
103
165
208
186
239
184
213
252
151
224
125
232
234
173
233
208
189
159
178
179
256
257
230
268
173
133
196
228
197
202
189
235
136
179
214
189
144
241
163
263
188
203
262
165
265
249
275
249
229
250
187
231
228
207
220
184
213
281
168
203
268
220
132
211
176
258
170
234
208
201
239
257
255
160
223
247
164
217
230
188
170
210
149
250
155
208
178
225
264
199
181
130
198
245
119
213
250
176
229
188
247
223
208
170
220
200
239
206
160
148
165
236
198
218
183
217
177
208
201
168
235
210
189
254
153
172
134
218
187
203
200
199
154
182
205
119
188
187
206
229
225
207
209
223
189
247
153
229
226
229
189
215
211
194
186
187
156
248
166
206
166
200
217
201
181
228
187
232
164
180
232
233
224
216
242
182
189
176
211
216
236
191
163
227
224
215
171
155
238
212
202
248
183
236
207
135
169
183
214
176
189
197
161
180
187
201
228
170
216
131
145
128
202
239
196
202
233
228
209
178
230
207
177
138
264
192
236
189
257
168
176
180
195
165
160
147
197
165
173
212
196
220
211
189
181
205
236
199
223
235
243
207
233
231
199
202
223
159
169
219
203
249
234
206
242
234
185
152
193
125
185
239
176
183
289
252
245
224
127
221
242
162
211
208
214
200
219
230
184
144
233
275
193
142
165
165
169
216
199
237
249
208
232
137
208
248
189
204
209
173
242
172
252
177
187
234
184
204
229
159
167
223
242
177
146
138
230
209
225
180
193
178
214
125
205
216
247
238
192
126
138
194
244
223
130
195
182
188
170
218
176
252
240
224
207
233
202
241
226
253
176
231
198
206
222
224
227
188
229
223
204
177
205
200
188
212
189
249
163
223
205
207
212
162
179
202
207
237
136
199
242
212
203
234
242
223
160
168
140
197
206
226
239
184
207
147
198
242
196
201
249
179
189
196
190
185
212
237
210
162
215
249
260
188
249
234
224
195
232
172
192
204
197
158
261
198
225
194
212
120
231
141
249
272
173
256
227
213
202
184
195
180
186
169
159
198
190
159
194
195
187
188
164
158
196
205
205
179
155
153
150
236
228
198
158
125
220
175
164
184
184
236
198
197
223
160
151
245
205
251
244
158
215
234
153
178
152
207
230
224
188
184
223
227
279
187
166
222
190
156
211
159
232
183
154
240
196
144
145
199
185
250
250
187
183
178
146
248
255
228
171
240
179
218
248
213
226
194
194
180
209
201
239
202
214
190
189
219
225
195
174
259
187
198
240
178
210
214
153
187
180
217
205
177
173
140
128
194
205
179
231
288
169
242
192
215
201
197
189
239
217
142
179
190
208
148
205
234
199
144
201
228
247
201
217
228
206
235
254
132
199
151
199
182
246
231
182
212
220
210
193
190
184
206
240
214
148
245
186
187
133
186
121
198
206
230
232
174
267
159
155
204
205
217
214
212
218
204
204
127
155
212
135
203
214
198
161
186
200
192
214
210
251
176
193
190
196
230
232
219
163
160
173
166
242
233
245
174
180
228
199
236
195
144
159
215
169
135
183
185
190
142
224
242
236
188
210
194
189
182
135
172
213
196
218
261
232
250
142
199
146
168
159
137
236
230
148
226
234
253
213
197
170
211
148
236
181
181
238
184
199
231
205
155
163
214
213
219
233
212
199
168
223
192
223
171
225
188
197
183
203
202
269
176
251
171
200
211
149
168
176
165
180
193
197
181
275
185
225
202
164
187
197
275
188
237
204
132
123
161
198
242
253
226
221
262
284
177
106
240
222
287
202
154
199
172
146
213
205
204
166
108
238
224
199
233
158
239
156
215
226
205
265
160
221
202
227
179
140
279
229
156
170
244
194
166
248
180
108
213
179
204
215
193
255
212
220
194
159
271
231
191
149
216
205
180
174
246
142
184
198
220
189
184
247
222
165
232
207
156
174
162
232
196
171
227
255
147
208
222
206
225
212
192
188
177
157
177
176
204
230
240
203
222
268
223
207
205
195
150
185
229
189
228
154
160
199
224
247
195
230
253
209
220
228
174
152
276
142
165
207
183
194
197
222
237
212
138
174
218
168
219
197
255
177
159
154
151
213
168
140
264
216
219
191
164
265
245
148
204
199
246
189
194
190
212
114
235
219
277
224
199
145
189
180
173
176
237
110
186
247
183
212
207
225
208
186
208
264
180
185
200
226
251
170
254
153
188
130
234
165
156
232
208
173
239
187
223
222
188
271
254
228
212
250
222
219
242
190
188
225
192
207
162
209
228
214
154
224
221
224
236
128
246
203
169
188
202
146
141
157
201
168
245
212
178
219
210
196
229
178
221
163
164
235
228
165
219
178
186
195
177
197
199
219
168
187
230
198
233
176
236
199
220
166
201
167
223
214
171
122
174
233
184
191
175
179
221
151
208
184
169
221
196
209
212
165
246
136
243
93
189
206
221
166
227
212
231
195
187
188
261
138
216
196
224
204
179
174
188
196
164
213
176
214
223
181
202
189
201
212
138
151
225
110
207
204
227
179
215
281
188
199
158
260
182
225
173
122
227
193
170
204
237
200
190
136
202
173
244
186
171
151
132
240
228
205
210
212
227
183
170
258
179
191
219
176
204
161
210
189
216
235
236
214
193
210
252
191
203
205
177
283
232
178
129
189
230
239
203
200
159
170
202
137
218
168
203
200
218
180
225
203
167
242
212
232
210
193
188
172
176
152
205
228
231
231
275
185
176
148
148
233
198
259
177
230
148
134
174
169
182
193
194
258
213
259
127
152
223
268
216
140
218
251
235
276
215
243
201
156
236
219
189
177
143
248
175
200
160
164
196
168
215
132
208
153
220
172
259
191
184
150
226
213
177
198
177
203
192
224
189
261
180
237
210
164
255
214
208
162
160
178
251
146
202
205
187
205
206
268
202
158
194
249
160
241
204
181
255
219
200
201
189
204
249
173
220
172
144
164
215
216
246
200
253
202
230
164
244
158
225
170
150
205
262
212
229
190
247
164
204
229
213
205
266
252
250
180
196
168
123
224
209
225
187
238
192
165
199
200
214
193
224
234
172
195
197
166
202
184
225
251
208
197
210
194
148
151
164
175
226
258
159
183
171
217
199
147
150
159
172
196
247
238
230
207
276
172
225
164
193
205
145
219
152
145
212
234
234
176
231
183
133
198
218
135
206
205
206
224
186
203
177
148
169
248
128
198
184
141
189
191
161
207
172
158
172
228
129
196
191
202
194
126
197
193
198
203
149
174
191
173
204
164
196
200
174
206
201
127
222
178
199
233
262
159
226
216
171
239
173
202
233
232
164
183
212
161
194
182
190
171
235
185
251
231
195
215
176
203
161
207
246
174
198
190
235
243
173
251
183
205
274
248
181
216
245
234
218
246
196
178
248
244
187
206
224
222
201
204
169
223
187
226
236
114
232
224
240
146
180
192
158
193
201
188
158
217
234
195
188
230
205
232
250
139
197
188
199
182
175
148
206
216
133
213
154
208
206
142
215
150
177
187
191
247
183
273
189
204
226
215
164
232
236
219
238
201
211
167
144
195
234
176
262
219
205
230
216
230
141
186
191
209
204
197
199
206
158
217
217
206
246
215
265
199
192
179
198
156
202
183
197
226
186
216
153
256
163
248
192
153
228
139
196
202
199
235
213
172
238
190
174
245
259
243
239
186
215
171
179
212
219
170
255
168
202
173
225
218
209
186
111
164
256
144
218
182
248
155
153
186
224
204
273
209
245
258
205
161
127
159
219
141
205
186
150
206
256
214
216
174
143
242
152
197
251
181
242
182
175
228
206
153
193
261
232
185
191
239
227
203
242
173
215
173
206
217
241
303
196
209
190
183
159
141
243
187
181
158
230
219
199
177
219
218
228
200
275
221
223
191
156
189
185
208
170
211
218
263
224
189
153
188
211
225
229
210
169
173
208
232
261
258
220
184
218
226
195
196
156
151
177
173
156
184
235
125
179
223
210
195
173
211
191
228
151
176
248
169
186
135
212
125
247
208
192
202
205
188
184
203
178
189
173
193
202
223
173
234
178
250
225
220
208
188
208
200
139
192
189
206
183
206
186
145
182
232
177
270
245
165
219
192
253
190
245
197
186
120
266
189
155
211
215
228
225
192
205
173
238
103
227
237
196
195
168
238
264
179
211
232
202
205
154
161
240
170
164
206
189
195
214
184
253
209
220
244
203
231
202
170
250
217
179
231
241
220
223
197
237
136
207
110
156
202
209
213
228
207
235
179
210
188
168
251
205
179
228
226
215
188
195
227
214
256
233
196
226
184
137
243
198
164
174
213
219
185
180
199
143
189
215
228
126
206
230
198
243
191
190
204
215
229
219
169
192
203
172
223
262
166
170
181
173
191
222
233
208
216
200
182
145
210
204
201
261
219
173
224
192
191
277
215
180
231
227
176
173
206
184
214
251
252
229
221
195
176
171
209
236
223
178
224
233
195
236
132
245
213
187
207
198
199
260
240
177
192
219
161
177
200
203
208
185
258
138
245
227
177
244
186
187
218
170
208
153
220
225
205
150
239
210
218
177
169
155
141
218
212
204
214
255
203
220
220
162
181
215
225
188
143
184
236
245
214
239
190
208
189
164
264
190
136
130
130
171
202
165
183
169
171
235
173
167
173
167
289
204
169
261
149
235
196
137
146
172
193
258
254
234
227
266
187
214
237
167
206
214
240
243
184
296
177
199
227
188
223
199
224
164
257
217
238
125
220
155
193
140
218
176
185
231
145
211
151
201
241
264
216
121
146
205
197
198
252
223
220
208
199
152
203
218
204
157
164
255
235
178
178
183
240
174
205
140
238
179
220
219
183
145
153
208
234
254
222
244
181
151
197
185
193
256
124
217
205
199
255
229
185
195
204
186
192
203
240
236
202
204
167
192
211
277
207
175
150
243
217
181
196
219
183
197
213
226
155
149
219
214
228
242
228
219
188
261
182
221
219
220
158
222
196
207
184
152
189
217
254
245
107
147
227
250
232
171
209
190
213
232
120
169
227
186
239
159
194
240
185
226
217
192
166
221
197
267
172
218
213
191
247
198
243
268
224
245
248
199
154
196
148
215
265
201
276
195
203
259
231
201
169
211
189
174
285
139
108
179
239
177
223
171
158
222
223
220
168
223
236
161
157
216
168
148
190
121
189
194
239
237
189
240
241
210
226
225
162
155
174
217
168
185
202
192
232
285
191
182
251
233
194
232
195
267
156
147
201
230
197
133
192
188
200
181
205
180
255
228
169
206
197
143
180
199
255
183
253
165
169
188
186
171
152
200
145
201
143
137
148
197
173
185
211
253
173
146
241
150
196
194
226
205
212
147
193
175
191
133
206
206
224
119
161
225
226
180
164
235
229
171
189
201
183
166
192
226
212
170
225
226
218
234
232
207
163
216
169
244
240
222
197
221
157
252
215
214
207
204
183
208
213
180
259
195
173
226
161
187
272
256
199
196
223
168
215
222
218
255
192
197
218
227
215
225
184
249
191
202
144
224
227
186
183
183
216
172
197
239
145
256
205
210
192
126
233
260
179
191
212
147
246
150
194
196
170
220
219
195
147
239
150
176
254
175
211
203
238
156
146
164
235
255
206
136
179
208
149
233
219
141
200
176
165
179
219
220
180
194
156
201
114
256
212
231
163
178
231
201
223
195
229
173
193
229
169
257
207
206
242
196
197
166
139
187
240
201
201
160
248
180
144
226
201
199
204
221
249
188
244
172
225
199
203
233
236
165
147
131
168
226
127
234
202
202
199
224
190
225
159
200
201
233
191
227
205
201
183
228
188
180
217
173
198
170
199
181
203
220
160
203
213
194
183
229
199
226
175
207
171
207
170
224
174
156
190
182
178
196
153
229
208
231
193
242
202
203
214
225
257
236
181
244
215
154
192
133
190
190
162
170
246
178
169
208
198
203
176
190
220
248
240
185
211
217
164
242
204
196
213
211
156
251
185
195
251
227
187
189
216
242
181
155
192
184
209
188
188
196
174
132
243
195
187
240
182
212
231
176
201
204
164
162
188
224
191
237
147
201
192
197
138
194
161
151
197
196
187
244
170
176
206
119
166
188
150
206
161
167
210
182
176
209
214
207
299
245
193
239
200
227
207
210
198
187
277
152
207
132
193
184
202
173
167
243
164
115
234
147
195
124
147
173
209
218
190
173
189
211
139
210
186
171
194
174
208
223
216
244
174
237
134
178
168
221
113
174
227
195
180
224
266
167
218
157
173
129
227
209
226
227
158
191
199
160
258
188
194
156
189
242
231
211
125
226
212
186
155
236
201
220
198
229
231
252
176
206
140
250
219
167
196
222
145
113
211
168
242
175
218
208
202
207
196
198
159
226
189
174
189
212
173
187
251
149
163
191
195
223
236
250
200
214
161
217
191
135
230
227
154
157
183
212
245
229
196
162
169
173
236
166
229
183
120
232
239
247
171
216
241
253
245
191
233
168
194
155
200
207
181
135
251
187
199
197
206
169
235
175
185
230
285
193
229
176
184
247
206
224
213
211
204
201
217
160
170
150
215
213
190
196
287
214
148
198
194
220
210
208
138
178
233
203
140
167
263
156
257
215
155
234
165
221
225
252
236
186
241
161
134
192
173
168
212
235
201
189
192
200
192
241
230
187
235
270
222
209
121
185
180
226
181
212
206
190
250
248
181
161
195
240
207
155
243
209
225
190
202
191
171
194
162
236
214
204
220
129
237
148
228
234
237
163
236
181
169
223
182
205
172
163
253
184
171
229
250
132
171
244
203
183
152
219
203
193
217
192
228
190
229
172
145
217
173
208
248
195
181
190
166
178
200
156
239
239
246
124
176
192
203
203
161
216
189
164
125
179
103
195
186
165
197
155
231
245
182
225
242
244
159
246
193
248
188
204
223
189
124
233
190
107
214
164
172
191
151
196
235
267
247
212
195
176
246
204
208
175
181
164
178
274
218
224
170
203
279
208
206
195
218
212
162
253
236
145
163
230
181
197
183
261
243
198
221
185
205
211
180
230
220
161
196
167
163
208
169
226
216
142
269
209
231
239
190
204
159
210
178
222
193
215
168
166
201
131
257
187
233
220
122
215
205
208
170
168
198
223
188
212
216
233
225
167
183
169
197
201
242
192
248
204
185
194
224
193
149
203
234
195
175
205
214
188
177
177
252
200
188
139
207
180
194
247
234
182
247
168
220
220
182
190
200
155
162
182
233
162
178
244
248
205
184
173
126
235
255
239
197
220
200
201
187
166
210
159
198
176
151
300
191
167
179
261
195
192
243
221
227
193
247
159
221
220
216
277
186
204
237
156
202
168
199
228
233
215
224
182
208
210
179
231
203
197
164
192
223
250
237
201
254
209
210
194
202
225
197
177
233
192
219
220
222
171
219
226
175
205
166
211
127
237
203
223
214
179
229
202
191
152
170
266
180
169
274
206
170
135
179
169
203
191
207
177
195
171
222
157
223
192
179
237
234
181
193
233
213
223
229
196
192
216
197
165
211
173
255
200
213
196
158
256
249
168
183
183
223
224
200
217
219
188
217
155
185
203
220
174
207
150
232
147
201
205
183
227
180
179
173
193
238
240
232
239
228
247
203
235
220
182
266
146
221
198
164
188
154
215
176
236
216
187
228
150
126
225
266
173
233
192
130
209
197
203
244
211
139
160
193
176
166
211
224
152
157
164
154
216
216
163
223
225
220
216
222
166
257
199
216
165
250
255
230
151
237
163
154
201
167
221
148
256
157
183
113
217
190
207
271
274
190
226
156
220
182
189
209
192
241
165
216
133
164
147
200
216
239
230
161
229
210
173
242
225
206
157
216
187
142
192
216
243
258
201
221
183
229
216
205
279
207
179
196
234
139
244
201
198
195
211
152
205
168
211
205
204
220
238
213
147
237
217
191
225
164
206
191
166
205
202
216
224
230
210
197
236
199
230
210
157
202
206
225
188
175
212
144
221
162
180
205
224
161
217
162
160
228
186
180
206
230
217
239
168
228
245
235
167
174
215
222
199
173
174
229
202
185
209
162
199
175
165
216
253
192
194
214
215
227
222
212
158
156
234
197
152
254
272
190
210
231
173
233
225
217
237
236
178
254
204
176
194
155
187
180
187
175
286
169
148
238
150
153
152
213
243
235
234
217
182
226
231
166
223
228
179
244
149
191
236
164
258
202
188
185
241
193
252
168
147
208
182
229
194
243
237
133
194
196
150
192
192
207
206
207
168
240
228
208
165
212
231
222
226
259
218
126
159
251
150
167
191
202
214
172
236
236
166
284
187
222
192
217
186
141
162
165
218
227
232
134
133
170
216
166
236
236
198
190
220
171
182
193
203
222
219
186
215
210
207
230
142
245
168
168
214
246
178
186
136
189
158
181
193
240
187
268
194
210
193
260
154
242
233
184
213
99
197
243
184
162
138
203
198
174
224
211
200
174
243
198
186
162
213
207
170
198
195
222
182
162
169
105
145
228
148
234
163
211
206
181
196
189
195
229
161
173
192
199
230
199
135
159
222
205
174
113
173
184
186
173
183
189
146
202
99
145
151
220
197
179
160
251
223
182
206
142
250
229
198
211
177
157
213
205
228
172
141
240
136
147
231
209
187
221
203
246
227
217
156
236
192
196
157
148
187
223
164
184
211
225
223
228
249
202
207
187
188
247
221
195
173
219
168
188
257
220
185
130
159
172
259
254
203
168
184
219
151
246
198
204
223
204
263
216
225
200
141
196
164
174
195
190
215
131
170
147
186
152
178
178
198
160
132
176
170
161
172
242
149
201
188
216
139
176
179
192
176
196
175
188
266
208
276
196
234
191
207
204
216
178
150
229
165
171
167
196
219
249
236
188
216
257
200
206
168
137
198
236
198
181
237
238
235
259
201
223
223
190
198
139
205
200
219
195
211
203
193
213
193
240
124
146
192
167
179
225
217
228
176
130
174
204
234
266
220
220
201
221
224
193
210
194
219
199
180
223
183
263
226
195
245
143
168
184
188
131
194
214
246
273
214
197
198
152
246
195
142
180
183
203
258
197
176
238
157
181
231
182
143
196
223
241
191
127
204
173
227
224
158
227
192
240
174
218
261
206
207
227
151
141
210
245
226
194
172
220
171
188
263
162
226
170
234
249
241
223
179
239
199
250
168
257
137
229
271
221
155
221
250
190
196
216
242
202
240
183
228
169
202
182
210
193
223
259
215
216
228
186
202
150
174
208
166
250
241
193
129
234
208
194
200
159
192
215
208
213
201
202
309
203
208
210
200
215
150
180
239
203
261
179
202
216
222
257
191
185
195
199
257
207
247
202
170
217
235
166
163
170
182
203
213
213
213
184
227
205
240
190
163
209
191
167
215
276
167
207
213
177
191
191
203
190
223
154
150
273
219
178
135
211
202
200
221
165
215
183
140
191
145
183
187
243
204
156
198
214
229
271
203
182
206
210
146
200
282
203
270
204
209
150
186
151
186
142
195
267
156
210
141
204
236
205
242
182
191
263
241
253
191
200
135
136
197
164
168
183
200
254
191
195
142
139
192
181
190
218
235
85
266
212
268
145
231
190
200
194
200
126
281
162
186
235
214
173
248
252
218
180
166
216
236
202
216
160
216
168
259
175
184
184
221
193
224
168
227
225
192
174
211
200
234
199
142
198
227
175
241
232
197
222
123
219
160
234
251
252
204
179
198
231
213
232
215
213
278
157
220
229
220
206
205
195
190
148
237
189
201
198
183
260
242
211
210
199
237
172
208
165
159
253
275
178
156
176
235
237
223
170
190
158
181
210
217
220
149
216
174
295
201
267
180
180
242
198
174
237
220
240
204
216
121
197
177
227
210
217
222
187
182
178
279
246
189
192
186
224
253
170
200
224
194
215
172
118
132
229
221
190
204
202
205
136
194
238
165
163
222
143
222
247
215
151
137
157
192
229
218
129
190
142
204
168
184
227
185
201
225
231
142
229
151
166
169
202
251
233
152
257
188
178
245
221
186
184
167
218
211
244
206
167
253
187
202
186
186
218
245
244
187
153
212
210
212
221
212
170
163
250
220
218
203
205
190
265
192
227
225
156
180
244
176
185
197
227
170
192
186
187
223
200
181
192
205
194
154
203
243
115
143
262
146
215
240
196
213
177
217
200
154
164
213
270
212
224
197
218
265
200
178
143
239
253
242
262
228
221
180
160
215
195
198
194
195
208
201
198
218
184
209
199
221
158
233
216
157
196
196
126
188
225
170
254
190
155
186
225
211
168
187
219
201
212
162
226
289
145
164
171
272
153
249
213
233
194
185
101
220
237
243
184
198
181
224
191
178
188
175
240
191
193
192
186
220
156
276
168
228
156
177
228
224
210
278
184
203
202
230
154
152
191
132
189
216
186
245
242
150
247
197
235
261
222
230
205
183
255
184
191
211
176
203
225
170
175
232
180
176
179
234
238
231
199
173
222
210
187
180
156
160
195
176
263
161
127
239
113
290
196
133
195
213
196
198
238
189
196
139
200
198
233
229
181
193
209
161
221
241
256
192
142
269
222
179
207
227
198
180
229
192
247
182
165
168
152
193
189
226
242
153
199
219
146
203
221
212
162
202
228
200
187
247
243
159
264
179
186
157
196
212
254
256
195
177
206
185
212
166
252
189
202
180
228
134
183
200
175
188
197
151
232
223
188
194
198
160
176
160
128
192
147
175
182
242
194
145
229
225
175
212
194
221
190
236
219
234
224
199
185
167
192
212
201
226
228
128
139
167
169
182
208
205
129
212
156
218
153
198
161
239
243
251
150
258
257
202
262
200
129
245
236
208
181
228
259
177
130
187
143
243
221
233
215
200
259
255
228
234
201
216
165
172
209
194
168
185
212
172
159
191
239
130
249
143
251
150
152
262
190
193
188
238
197
232
150
254
172
183
219
167
176
199
212
216
172
175
203
203
170
138
205
218
192
198
181
105
181
204
231
147
161
175
229
212
163
204
210
172
185
172
250
140
174
248
256
232
158
216
226
185
163
220
236
226
179
202
253
233
168
199
213
209
213
265
226
192
224
176
210
241
183
219
176
152
156
147
180
197
146
208
213
271
183
232
227
194
204
185
198
154
156
229
218
160
171
191
201
200
186
163
189
227
192
196
255
175
137
201
146
216
203
178
162
158
192
185
219
159
254
187
219
239
173
164
213
196
193
174
247
221
227
165
169
259
223
218
167
197
219
224
192
221
211
193
165
135
199
233
258
224
224
204
208
240
228
235
213
246
220
211
223
152
238
190
156
168
209
220
208
209
164
212
203
137
193
202
198
190
175
205
231
235
200
187
182
219
236
207
255
235
214
227
275
238
188
166
197
200
224
192
186
227
165
235
165
220
229
210
178
246
168
194
166
146
231
246
204
161
247
212
215
140
228
185
221
199
193
215
172
188
228
161
185
246
246
218
152
237
204
215
151
187
199
230
191
221
239
210
230
224
188
191
159
174
254
213
237
255
192
213
196
160
191
195
167
186
156
179
174
216
194
251
179
176
147
209
243
153
179
157
278
154
282
182
268
240
219
216
154
240
171
205
188
161
123
165
198
218
175
205
166
234
259
205
147
171
219
114
246
233
209
232
217
218
169
196
189
189
246
204
227
217
154
204
258
183
164
201
177
180
183
184
166
187
137
240
184
277
151
182
198
192
233
227
156
207
272
202
242
199
186
211
194
208
217
247
225
227
138
216
171
269
243
198
235
206
209
194
207
205
248
205
150
226
237
205
182
271
210
158
212
238
251
224
222
191
132
168
180
235
192
230
182
190
136
200
190
125
201
177
219
223
247
206
223
205
197
235
174
208
209
223
242
224
194
247
193
238
184
183
112
178
189
195
186
206
276
230
225
200
205
256
158
172
183
175
185
165
196
256
215
192
211
158
236
219
159
175
140
173
244
215
200
206
163
266
158
205
185
247
186
246
198
181
148
165
244
194
173
203
238
187
221
266
272
196
195
168
169
229
273
205
199
225
179
242
196
197
208
188
157
212
152
243
202
196
199
210
178
225
198
210
174
228
178
232
172
193
243
184
236
251
218
177
187
296
218
156
194
211
197
199
208
151
195
197
187
137
167
196
214
231
215
128
236
215
272
219
191
174
185
181
192
117
180
186
169
226
230
262
150
229
191
214
201
173
206
185
219
185
199
225
233
168
200
175
221
218
246
171
255
241
150
238
228
194
229
194
230
164
222
248
206
216
237
218
217
148
248
203
185
178
205
245
203
180
160
199
156
216
197
182
189
230
166
251
184
208
201
168
229
161
218
186
220
170
258
181
194
210
217
215
177
218
147
202
195
247
171
134
189
168
195
179
213
202
145
194
239
239
227
216
177
232
261
107
213
239
210
219
147
194
202
206
192
237
188
227
209
187
239
210
208
167
138
155
240
235
185
181
180
217
183
233
197
176
228
220
210
236
190
242
192
188
168
210
208
221
187
238
193
159
198
249
170
214
179
245
203
210
172
262
247
208
194
152
211
226
160
158
153
197
182
209
180
181
155
235
216
179
194
199
172
208
178
244
155
258
209
230
224
223
189
192
190
241
270
188
245
156
152
162
197
169
225
249
175
240
225
161
244
243
188
219
259
199
191
205
146
237
257
257
214
216
238
159
234
186
117
194
195
197
233
221
231
193
224
151
210
251
266
166
188
236
226
169
167
148
211
181
175
146
182
175
235
177
275
152
183
208
226
219
223
216
222
141
217
201
219
188
163
223
204
213
234
206
197
160
178
176
237
210
216
277
237
229
223
194
202
222
162
167
200
134
156
194
197
264
167
200
220
196
110
240
245
228
211
187
191
228
217
163
206
222
203
252
226
195
184
221
187
223
239
151
174
265
234
183
222
200
134
166
221
178
263
195
206
212
222
212
199
237
162
192
196
201
207
192
171
243
183
217
193
160
184
160
202
223
212
176
170
183
264
171
238
229
129
220
255
139
198
221
260
241
213
244
189
222
223
215
162
255
223
211
188
179
166
173
151
192
282
265
200
235
175
160
178
220
125
209
209
238
239
238
199
191
163
187
252
242
179
133
218
258
263
192
217
219
200
212
124
163
192
195
218
127
204
161
196
200
258
258
186
204
153
188
221
236
194
186
217
183
139
171
190
154
176
165
195
201
193
218
184
227
166
179
242
199
171
201
194
190
168
198
202
194
186
195
207
219
198
201
257
198
189
122
214
182
152
176
179
204
186
128
210
257
211
175
236
122
209
228
217
217
240
182
189
204
199
182
198
192
239
198
170
228
183
193
203
184
193
166
222
232
145
233
142
231
194
187
172
161
221
220
199
169
191
200
227
153
267
198
195
118
235
259
254
241
206
200
175
213
201
195
178
216
242
232
180
259
248
151
231
198
212
237
230
183
148
218
158
124
200
197
175
179
190
154
246
190
229
152
211
213
222
224
262
237
207
223
178
226
140
224
214
171
159
235
176
207
215
233
198
240
148
174
192
249
225
181
179
202
277
223
205
207
202
229
242
242
198
195
165
218
152
221
212
176
209
194
171
181
192
229
171
136
246
142
212
247
144
238
166
160
181
128
182
172
196
168
222
184
188
199
183
211
176
238
194
78
149
192
201
105
206
178
203
200
218
255
202
150
149
261
156
224
196
197
276
201
195
226
199
204
184
179
153
199
189
211
170
169
220
134
209
221
209
238
203
186
246
233
191
176
203
192
224
146
136
122
122
205
222
264
147
177
197
288
229
216
211
195
198
179
178
199
156
191
225
173
201
165
209
176
170
127
175
134
198
217
207
189
207
165
158
172
181
215
191
188
249
215
206
254
249
234
167
238
225
266
208
121
190
246
225
141
139
171
213
201
204
189
232
174
191
241
167
216
177
192
182
197
201
194
210
231
198
196
218
196
235
201
207
190
200
213
188
155
217
177
189
168
152
247
210
195
212
164
215
279
260
137
234
179
213
217
173
132
140
200
209
201
298
249
179
225
186
213
229
234
174
199
242
222
191
200
194
171
175
166
205
190
237
235
194
154
223
150
134
244
186
234
149
225
197
222
174
238
182
235
183
213
220
184
212
192
194
214
139
226
109
235
261
176
218
172
226
193
234
193
178
216
220
235
210
170
210
251
164
243
203
146
187
226
226
230
239
192
195
244
142
190
196
193
220
208
178
201
180
195
257
221
244
286
217
231
176
132
170
176
237
187
194
243
156
223
201
238
228
193
159
176
221
246
202
175
197
204
127
218
212
233
221
183
193
188
222
216
180
237
236
227
197
221
183
168
195
216
248
213
203
224
262
239
203
251
223
174
237
193
152
206
204
215
150
217
189
195
180
210
217
216
215
153
237
231
177
148
193
230
203
171
226
232
213
188
121
252
218
202
231
241
193
263
158
230
186
219
249
208
236
220
218
215
259
203
181
199
193
214
183
168
192
163
159
202
187
183
181
174
149
174
175
216
166
180
209
171
147
168
202
174
199
230
217
123
208
292
209
207
132
197
194
218
170
197
182
220
197
215
265
229
141
158
160
246
201
130
216
196
223
178
152
176
251
234
163
230
271
216
204
179
183
227
197
179
187
265
191
164
230
242
229
146
226
203
177
134
178
219
262
235
175
251
229
255
228
218
199
200
182
127
229
227
159
198
159
193
243
216
238
226
149
207
252
205
222
204
234
194
246
204
173
207
195
213
189
199
174
151
227
155
235
162
179
201
136
175
255
161
208
195
178
179
222
181
163
199
151
221
162
253
202
189
206
185
231
222
192
149
212
242
232
228
203
234
201
222
175
166
213
236
256
171
249
193
206
140
205
244
180
269
147
152
267
219
209
208
213
224
197
253
191
158
215
213
157
212
207
187
175
216
238
190
234
237
221
205
196
183
217
220
241
197
175
180
179
168
181
195
197
221
167
193
252
234
207
203
173
250
232
196
183
253
127
227
209
248
166
189
208
189
168
200
169
260
221
194
213
211
199
225
195
207
255
216
210
222
131
155
202
144
231
186
215
175
172
185
191
180
201
262
114
189
292
183
194
238
192
182
211
226
210
216
167
224
247
174
220
200
195
248
151
170
197
170
241
166
183
203
113
254
168
184
234
150
135
214
222
190
162
190
177
165
161
138
161
238
231
178
132
170
201
246
194
219
235
187
176
234
154
158
212
168
191
253
249
134
226
196
234
204
182
139
218
159
236
196
220
234
177
184
185
194
245
124
163
232
207
192
193
242
246
172
231
261
155
150
191
245
194
185
166
225
168
264
148
186
210
181
207
203
144
233
181
222
211
219
228
186
189
249
159
216
170
240
183
169
198
194
256
233
222
207
175
230
160
173
223
183
224
171
230
230
202
211
194
204
238
204
206
226
230
194
121
196
192
185
188
249
178
175
235
126
202
204
218
180
144
189
199
133
225
203
258
217
214
231
159
186
228
224
209
157
140
242
208
155
174
180
198
263
218
240
202
221
248
196
170
185
252
237
191
125
216
172
190
232
169
236
147
158
167
242
178
194
188
194
163
159
165
198
204
224
194
131
164
204
164
209
204
184
163
201
163
238
188
226
162
151
191
216
169
231
204
174
149
217
210
234
144
185
144
202
179
181
188
201
174
203
237
203
157
230
161
205
181
302
174
218
181
163
210
186
178
181
169
183
138
221
243
173
158
216
202
166
153
139
204
199
166
178
263
184
220
250
178
236
196
211
184
200
163
120
218
142
184
215
208
175
211
130
202
206
227
163
223
234
157
198
150
191
269
175
191
237
223
153
169
215
184
182
220
226
206
223
144
220
206
239
197
140
177
190
181
214
238
209
255
239
174
163
172
206
192
206
214
206
233
226
132
215
209
174
135
209
198
157
188
242
198
184
232
234
160
216
246
217
224
190
151
149
170
241
180
234
202
213
215
207
201
222
198
226
203
224
197
199
256
195
240
277
179
221
155
202
209
202
293
182
179
210
295
169
244
135
216
169
221
230
273
207
215
250
232
265
190
277
178
213
216
240
190
162
220
218
200
104
175
203
162
171
230
142
246
248
212
169
185
184
199
266
157
187
217
211
212
217
152
209
194
291
217
232
249
238
220
190
210
129
198
140
162
195
166
169
211
217
212
232
194
181
225
143
218
273
213
212
163
140
220
224
238
166
238
226
240
208
186
242
238
207
174
140
150
196
185
186
251
121
242
226
197
203
256
214
228
234
187
206
192
281
177
250
204
249
214
198
251
237
179
198
219
215
210
174
154
227
139
189
273
197
188
147
254
167
219
231
210
178
236
219
148
159
231
249
242
218
177
205
257
207
215
227
217
273
253
167
181
200
271
219
261
226
168
154
170
228
250
236
222
222
229
189
242
199
198
232
160
199
234
193
230
252
230
174
209
171
146
217
135
201
194
248
183
217
157
219
206
205
237
121
188
214
198
207
225
191
180
263
242
234
173
231
267
182
189
176
232
189
180
238
170
185
181
193
195
238
232
176
188
156
206
169
229
180
190
200
148
229
207
186
202
218
306
189
203
204
167
247
190
175
211
183
198
231
168
228
220
178
152
162
234
233
221
189
208
181
200
219
249
198
194
167
208
235
191
192
226
233
203
264
182
225
213
145
250
224
147
151
155
185
216
186
170
196
218
235
270
162
237
205
259
150
200
252
201
172
204
230
177
218
212
220
184
156
272
161
236
255
157
195
190
227
239
208
201
183
167
221
221
233
238
200
205
138
202
231
229
214
234
190
152
175
197
185
130
224
140
205
225
202
189
199
224
210
188
147
160
224
219
141
218
235
251
175
242
120
228
207
214
168
154
179
157
143
147
228
206
196
227
274
139
205
226
188
189
131
208
175
251
223
137
160
211
79
209
223
198
194
168
164
214
256
190
209
210
175
156
212
201
177
183
194
192
207
129
196
265
178
193
151
235
151
170
250
122
123
227
121
213
176
198
137
254
185
208
152
160
249
237
238
221
212
154
238
154
195
174
209
170
187
248
225
162
186
171
215
178
130
240
191
206
132
226
250
227
218
229
218
257
227
275
211
214
206
146
219
232
137
228
228
181
181
164
197
161
206
248
261
238
220
186
224
211
184
184
125
135
220
209
218
183
250
241
230
202
164
219
158
221
222
263
202
218
173
262
245
219
141
213
217
182
180
217
167
182
179
222
183
175
205
239
176
171
164
251
227
191
243
187
182
278
168
183
209
243
224
201
197
228
161
206
221
148
208
182
187
162
230
174
214
232
207
205
134
232
244
221
194
249
186
217
133
192
221
211
271
206
227
266
175
204
250
155
209
231
231
207
201
199
234
142
244
182
211
251
200
133
184
227
191
209
165
108
204
229
231
239
131
198
198
219
222
265
160
226
188
184
236
225
217
205
199
187
238
200
177
209
175
166
228
238
221
217
210
177
187
253
173
184
168
260
232
176
232
246
214
173
228
194
161
164
212
231
152
139
200
197
208
174
218
162
195
201
150
228
258
160
183
241
197
219
213
192
137
159
252
167
202
199
240
214
125
179
200
140
235
188
198
223
219
228
183
246
197
189
212
209
241
202
212
232
195
198
198
198
230
177
216
141
225
177
244
108
223
201
217
246
196
238
184
230
237
166
192
178
168
226
191
227
188
148
166
222
227
174
174
192
216
149
160
203
230
245
174
139
216
155
185
212
165
200
167
267
197
213
173
251
185
241
171
201
183
201
244
177
248
265
175
198
206
130
188
227
187
200
183
244
214
229
250
187
161
172
212
127
180
178
145
255
173
193
198
227
218
156
236
159
185
209
214
205
203
272
110
218
227
217
215
184
187
224
220
213
232
224
200
144
271
213
231
198
228
236
205
200
187
183
166
205
124
211
229
181
107
214
192
266
162
223
220
155
213
275
170
246
230
187
198
238
161
157
170
181
238
213
188
250
177
217
178
182
186
239
206
248
195
177
235
231
160
197
229
223
166
194
236
227
148
204
212
203
189
206
208
199
192
230
234
159
217
130
231
126
229
196
220
180
170
171
245
236
160
256
218
162
216
225
205
219
216
227
205
142
230
231
154
233
186
230
235
218
140
181
237
226
213
214
171
248
235
238
136
175
131
230
233
236
213
219
209
213
141
240
223
230
198
151
176
208
183
243
191
215
225
191
213
224
172
191
232
224
222
132
218
181
225
189
204
212
199
177
205
179
130
199
252
155
270
213
152
150
257
186
194
133
201
183
177
237
211
238
225
256
209
211
268
203
220
159
143
184
150
217
205
232
133
134
168
218
254
257
204
218
188
212
231
173
164
183
227
202
201
215
192
245
210
163
257
184
209
199
239
215
224
222
206
230
184
186
217
182
229
162
208
227
159
211
169
199
209
150
242
211
222
208
220
214
178
202
193
192
188
198
199
209
233
168
211
201
223
255
172
228
166
200
221
255
165
217
210
229
182
188
228
137
207
211
215
196
159
175
239
166
246
201
203
164
189
249
152
206
250
209
253
192
207
180
228
216
173
231
143
231
198
197
186
189
226
199
201
176
221
182
216
212
205
218
204
237
236
208
276
175
203
227
223
231
260
182
169
200
250
171
220
243
199
289
235
177
206
235
241
153
191
222
196
203
152
146
170
174
213
180
120
203
177
199
151
210
137
130
200
195
221
192
226
215
197
220
158
116
226
227
202
230
229
211
231
225
172
270
204
230
178
153
250
191
223
166
213
141
222
190
228
204
159
288
172
140
172
165
193
186
164
185
278
174
203
197
241
188
191
226
213
226
196
230
226
165
205
222
209
215
203
203
250
159
220
220
187
182
206
113
258
176
191
151
186
227
205
204
240
221
200
236
209
198
202
202
217
211
150
224
222
229
172
191
260
175
181
135
204
151
186
175
120
94
223
142
219
170
146
258
137
186
236
213
122
217
181
187
242
238
176
233
227
168
200
276
214
228
212
215
243
220
252
242
238
215
236
181
167
178
236
201
249
233
167
199
202
197
221
216
242
182
222
203
217
170
216
241
219
256
201
189
145
149
217
194
189
160
222
196
225
206
197
178
152
173
237
262
186
266
201
245
233
218
167
193
205
187
186
184
165
228
148
194
229
173
158
161
197
242
198
193
240
157
186
218
195
189
165
213
175
154
214
196
224
237
163
200
116
176
198
248
210
201
226
227
216
240
200
252
186
135
195
192
181
193
197
212
249
255
195
247
231
227
240
245
224
235
218
275
209
166
180
189
237
240
202
215
188
222
212
264
253
102
208
215
159
201
139
189
262
207
271
197
138
202
131
252
213
188
245
150
214
204
165
196
190
185
193
174
164
190
216
200
211
188
194
164
197
196
187
238
265
196
171
173
223
207
205
182
213
232
214
170
244
150
190
176
182
222
199
147
200
194
243
204
163
228
185
252
194
195
169
233
218
249
212
200
209
194
213
182
191
208
219
241
191
211
194
203
169
204
233
162
222
164
225
182
235
257
277
168
194
225
178
185
178
205
220
240
158
211
219
187
151
223
244
218
143
177
169
211
214
183
160
191
143
167
157
279
186
204
237
221
175
185
197
239
145
213
183
205
194
216
225
157
158
121
147
221
171
235
241
243
162
236
173
199
241
231
199
184
231
210
161
253
173
225
228
227
214
177
205
220
137
165
159
130
174
213
210
192
242
149
245
167
189
205
223
188
199
208
205
194
177
186
176
173
188
223
158
196
245
196
203
262
198
174
216
167
174
127
163
184
185
284
221
138
199
206
175
196
191
234
223
170
136
198
180
233
166
196
222
119
236
218
205
170
212
187
227
223
216
176
158
173
247
182
169
214
175
190
210
140
187
257
251
162
149
205
128
180
180
170
188
238
216
181
156
131
205
203
213
169
203
226
205
203
228
178
199
157
184
257
216
120
206
211
183
216
233
229
201
210
221
203
243
211
208
183
230
234
260
162
223
207
175
204
239
209
222
214
193
208
125
213
212
198
217
230
208
223
179
179
244
194
176
238
279
208
179
178
236
151
216
174
161
186
151
192
187
205
179
210
209
210
163
221
191
216
203
247
243
223
211
229
127
179
237
247
214
207
163
157
204
225
163
195
211
182
179
229
213
210
199
153
200
237
222
210
175
137
240
210
168
131
222
258
161
306
211
214
174
214
182
205
269
151
227
217
226
214
153
172
160
238
227
199
209
229
258
182
223
160
187
211
209
202
235
233
198
184
191
262
199
264
193
238
219
232
202
214
199
181
297
240
151
205
231
183
193
228
191
219
218
159
181
208
147
169
140
212
261
197
195
214
163
236
185
195
197
221
178
223
238
197
182
194
206
179
179
202
214
171
263
227
226
185
215
230
264
207
225
227
188
214
237
194
193
213
166
174
191
168
176
219
207
170
245
179
219
174
244
190
245
196
134
197
166
222
222
215
203
175
239
229
152
196
215
206
198
231
141
211
203
216
213
145
187
209
256
184
240
159
213
177
231
218
201
199
189
229
233
205
158
198
240
241
186
235
210
249
122
138
169
188
181
240
198
158
224
178
127
210
156
235
206
247
268
156
196
187
256
186
164
267
203
169
180
176
193
206
186
202
184
233
164
127
225
223
222
182
215
244
167
183
230
156
245
152
162
194
170
216
196
195
190
192
160
238
157
220
222
161
184
212
220
213
278
183
237
246
252
230
195
227
210
179
190
215
147
169
199
200
201
150
220
186
192
243
244
221
163
176
181
221
216
236
217
174
187
193
228
156
189
186
212
154
163
232
241
191
200
250
232
241
156
212
193
215
225
260
220
128
186
212
229
183
222
227
167
171
256
178
186
221
234
201
209
240
234
244
194
173
201
206
243
213
219
200
184
180
182
180
190
182
184
217
213
196
193
138
225
211
201
208
180
155
214
138
171
133
154
245
172
228
198
229
238
190
158
177
185
141
209
190
211
190
270
169
205
230
132
237
144
172
179
197
241
203
178
198
231
257
228
305
164
200
195
185
191
222
209
215
198
230
208
247
172
199
175
215
172
227
167
203
229
205
220
160
176
185
210
189
205
240
207
150
172
150
130
211
219
170
157
165
208
205
263
150
205
200
172
223
210
215
124
202
145
230
214
197
195
210
172
185
192
128
202
248
180
255
186
195
231
169
186
166
193
113
146
145
244
148
231
201
225
231
145
215
247
229
210
225
196
166
189
194
200
228
237
214
252
219
241
201
139
224
222
111
235
232
242
190
229
202
160
221
238
108
192
226
214
218
193
183
145
247
196
208
170
174
213
248
153
194
172
186
218
240
211
170
181
254
231
195
184
232
252
120
175
246
203
146
194
137
209
192
183
216
184
200
195
205
205
245
174
195
208
201
171
193
142
206
209
179
193
217
123
166
187
190
199
222
195
232
256
217
203
236
163
195
234
201
219
204
185
227
166
163
210
197
271
208
162
191
156
235
150
227
175
201
204
173
258
188
206
175
253
168
239
242
125
208
225
208
175
241
174
238
206
168
203
181
207
206
206
183
203
250
171
204
229
153
189
200
210
179
168
205
226
252
219
187
145
173
218
222
148
226
239
202
242
145
234
200
173
201
181
211
186
244
218
249
240
181
247
220
184
216
205
203
185
185
145
161
218
173
210
129
220
164
215
165
180
149
233
199
210
233
263
237
156
196
167
173
189
203
184
193
128
219
242
212
167
201
191
226
209
182
157
177
233
210
149
209
125
185
231
154
227
212
177
163
212
203
209
116
210
220
215
213
269
195
155
229
212
182
203
207
230
196
221
179
199
218
205
198
224
181
195
211
182
264
177
176
235
210
232
258
198
242
250
187
242
192
192
251
185
209
223
202
210
174
194
222
152
224
234
230
220
172
237
160
220
205
248
171
208
220
187
176
167
229
152
213
155
181
224
204
202
220
226
206
192
154
159
188
204
233
227
264
199
175
162
180
219
243
242
186
178
194
206
194
205
202
216
204
188
211
220
222
194
168
188
223
194
190
202
227
160
202
215
196
220
154
247
234
219
279
194
204
221
231
147
179
146
186
167
257
188
235
141
129
201
224
209
187
164
225
143
228
196
190
267
217
183
180
109
200
210
163
219
212
91
213
182
179
159
160
178
200
206
277
211
237
190
242
112
197
177
139
193
189
172
185
198
208
229
166
191
176
241
205
212
217
200
207
184
165
169
200
233
213
175
195
193
157
195
241
181
233
230
178
174
179
230
210
234
229
228
236
186
252
258
222
183
215
157
221
194
250
212
193
164
166
232
196
221
157
208
209
223
183
242
207
200
199
202
225
217
257
170
190
155
173
231
240
167
177
198
180
156
202
186
164
178
196
178
179
190
167
243
183
227
158
230
176
239
217
199
176
164
170
129
206
192
231
152
257
208
244
202
189
244
237
169
151
215
167
208
216
163
177
202
211
112
165
237
208
190
195
201
206
147
188
202
188
155
243
220
232
197
176
244
222
223
194
193
173
206
227
182
189
197
297
215
157
233
270
200
199
214
197
231
238
185
182
218
221
249
175
265
168
170
175
196
194
158
183
139
234
117
167
177
244
213
265
206
289
213
216
205
167
153
187
227
203
214
238
240
233
178
145
262
214
151
237
131
241
197
163
218
239
209
208
149
216
216
229
184
167
208
179
194
175
226
225
124
188
225
213
225
187
226
203
196
179
235
217
240
235
188
251
180
177
185
193
189
200
207
183
180
210
193
189
162
194
214
195
186
215
159
175
244
248
211
209
193
186
144
197
198
210
210
254
147
229
220
157
181
263
124
191
211
198
187
146
250
179
198
207
187
197
157
194
200
168
185
219
186
214
214
227
210
261
191
155
197
207
194
206
234
228
206
187
210
220
259
205
227
253
152
217
188
209
192
242
192
168
205
221
139
187
216
160
205
142
234
237
165
210
159
224
230
164
188
221
216
165
211
237
143
205
194
194
224
176
207
254
246
164
216
181
232
211
157
199
194
233
212
249
173
227
240
142
145
218
185
140
183
139
163
141
184
207
236
200
209
250
192
249
245
200
251
173
125
248
193
197
184
182
154
214
149
200
217
190
196
199
167
176
205
196
234
194
170
197
185
220
149
206
178
181
265
216
174
248
234
197
164
197
217
193
215
187
224
259
195
161
181
216
164
169
152
150
252
200
199
285
172
180
211
203
246
129
147
215
213
255
241
205
195
233
152
227
214
163
163
186
215
171
130
186
232
201
154
172
250
192
160
216
245
210
141
241
228
198
177
249
175
180
194
243
172
166
265
152
177
175
222
229
190
206
222
246
194
212
102
229
229
214
226
229
170
231
130
217
204
167
121
226
194
126
236
205
163
161
142
192
176
211
229
188
223
246
158
212
182
128
167
187
160
214
277
235
241
107
248
224
181
220
170
219
241
195
245
201
173
234
185
191
234
188
192
190
187
182
257
105
200
228
221
200
201
223
183
165
262
168
177
217
171
199
203
231
136
239
206
183
157
161
206
155
191
144
170
142
196
224
188
197
249
177
205
171
192
221
218
136
223
253
163
255
228
170
105
208
208
174
156
236
234
207
146
132
139
225
219
245
244
185
138
192
188
256
226
193
232
214
173
206
173
214
257
221
120
225
182
210
195
206
231
217
265
214
221
227
174
268
161
202
205
228
256
180
188
245
203
240
185
146
198
176
254
187
185
150
244
240
190
236
226
191
178
192
186
200
208
228
241
198
182
196
181
178
153
204
213
262
218
255
139
259
234
218
198
227
224
148
246
246
255
258
208
189
190
191
168
204
205
188
132
207
220
174
200
180
203
238
209
187
247
185
209
239
188
223
223
164
262
165
222
188
218
216
175
231
221
162
242
237
197
183
182
264
225
216
202
172
171
197
152
192
237
229
230
241
200
194
220
253
180
231
251
157
229
210
156
278
236
222
202
202
223
208
142
159
245
208
132
188
265
136
148
180
188
186
268
240
219
180
251
205
234
116
228
253
185
203
188
242
204
137
267
227
192
205
186
146
160
217
214
204
137
195
187
159
207
230
193
214
198
277
190
215
176
213
188
186
189
148
257
191
213
228
241
89
179
223
183
205
145
157
207
201
212
252
182
246
252
193
202
203
206
213
247
163
177
156
193
224
222
222
138
174
199
200
233
164
265
169
180
237
230
207
238
223
171
199
203
191
167
195
157
250
129
203
135
267
122
166
195
221
207
129
195
148
245
169
160
154
249
225
262
208
216
188
229
199
217
220
162
191
200
143
200
212
212
263
157
201
139
162
286
201
176
151
201
180
227
200
187
257
203
248
246
184
180
193
214
175
241
188
233
114
195
188
161
222
190
196
260
243
181
163
197
228
277
205
165
242
104
163
171
163
170
184
213
239
143
200
191
160
179
209
168
182
191
178
211
257
213
198
236
241
226
192
152
280
215
204
158
189
139
182
199
210
206
215
249
168
197
202
188
196
178
210
168
185
201
176
136
196
176
230
252
193
113
234
189
119
258
220
231
181
206
300
230
223
206
203
194
243
213
199
137
201
212
246
190
186
206
226
241
224
220
181
152
203
177
195
207
254
189
246
245
189
113
211
149
247
162
232
225
276
179
221
183
134
205
179
250
174
221
148
204
219
230
146
166
216
232
208
211
213
148
182
278
162
237
228
203
221
185
195
172
194
172
228
192
235
238
114
178
228
101
171
277
202
224
222
223
241
212
207
247
148
219
231
181
192
234
257
252
224
234
257
186
180
204
210
186
140
196
203
178
229
169
188
207
155
251
224
166
139
224
239
214
164
171
184
233
152
245
207
182
225
146
250
233
150
193
181
172
233
265
182
194
180
175
212
188
185
188
167
233
213
169
201
201
157
249
166
163
178
201
187
211
221
207
260
177
237
176
201
261
148
190
203
189
195
174
198
221
179
182
191
275
185
176
241
244
282
184
221
215
164
204
228
211
133
244
156
242
174
173
250
193
189
167
208
206
251
185
204
219
203
222
203
144
202
253
196
211
178
195
196
175
246
187
240
169
142
222
216
201
252
186
220
190
212
197
153
231
236
187
223
194
182
179
144
181
175
161
223
167
190
162
225
187
166
226
197
167
173
222
205
189
185
204
139
198
159
255
215
279
155
216
248
237
192
233
176
204
225
221
196
173
188
213
209
257
186
206
189
195
250
216
189
161
202
157
203
223
225
110
218
246
257
226
169
181
164
216
220
186
202
146
195
192
176
269
233
167
179
220
217
184
167
164
225
240
216
187
201
196
194
219
189
214
254
187
178
191
196
220
239
258
150
138
233
189
268
203
170
195
205
228
191
235
220
164
214
225
206
170
163
223
221
194
161
182
227
193
226
191
245
181
159
191
168
251
238
191
223
222
228
261
176
220
178
194
158
190
157
222
134
213
218
260
157
128
204
232
226
168
123
215
192
224
186
231
190
212
186
195
169
174
185
268
247
173
160
177
201
193
215
188
258
208
171
177
140
210
207
194
263
165
155
163
241
201
217
243
256
185
199
250
215
237
251
177
172
223
249
196
207
160
211
241
177
234
141
212
233
164
155
178
197
204
198
206
200
234
174
185
174
130
219
251
200
129
220
198
256
205
231
167
173
119
225
229
187
237
104
179
211
182
193
204
125
222
237
153
217
162
198
216
172
221
226
230
239
162
184
213
155
218
188
204
142
174
249
184
201
224
244
263
172
209
238
191
174
151
260
213
197
207
223
173
248
168
141
225
169
215
208
158
176
197
162
175
237
174
196
210
259
194
166
152
199
161
250
196
199
120
240
200
154
225
154
228
164
223
202
257
170
255
240
237
196
233
242
228
237
147
240
234
211
244
263
207
200
194
188
154
200
244
185
237
197
211
182
265
152
226
253
188
169
170
196
249
204
185
263
235
216
230
228
152
177
222
193
113
169
190
217
179
220
224
187
161
174
181
188
184
232
197
226
167
120
194
176
219
209
215
219
216
202
193
172
184
236
245
138
163
236
207
159
219
122
212
196
210
203
235
207
207
237
177
232
204
204
164
210
108
223
192
170
202
228
263
206
179
184
229
189
239
153
186
222
186
206
176
235
228
130
189
222
250
196
143
204
176
152
170
221
201
214
203
174
191
173
225
205
145
191
166
138
252
153
222
209
172
207
254
149
235
167
206
222
208
198
188
207
210
172
144
210
227
159
228
186
213
164
190
242
210
141
212
185
209
194
241
220
175
196
204
216
165
257
256
199
147
171
208
225
193
187
226
177
204
196
255
181
251
163
190
159
194
154
264
186
174
206
263
206
147
223
141
244
250
205
209
178
277
221
201
198
170
159
219
255
200
196
201
141
188
206
168
174
152
198
243
242
193
224
140
150
235
207
221
225
207
168
169
208
190
258
276
172
265
193
179
233
131
198
115
222
189
210
254
190
242
183
209
182
180
189
223
204
164
252
219
205
202
185
147
168
265
214
176
232
215
229
168
196
231
251
200
143
240
211
174
189
212
194
243
165
233
161
257
273
219
196
198
182
189
237
246
245
171
203
140
177
145
230
161
130
162
201
229
212
173
199
195
205
197
186
222
201
162
218
243
189
212
222
242
223
96
193
207
174
189
154
163
204
169
121
172
193
235
221
211
225
227
187
194
200
224
220
190
190
179
258
125
208
146
209
222
217
209
201
234
245
174
202
140
211
287
225
187
223
219
226
205
239
189
130
207
236
228
175
222
223
206
154
176
185
165
239
254
228
217
226
160
263
217
210
204
127
206
191
204
187
209
273
167
247
201
200
204
226
222
175
165
144
178
191
241
236
207
214
198
245
164
156
199
158
204
189
189
230
212
194
192
222
228
242
175
229
162
181
152
227
244
226
172
218
176
215
266
219
205
172
203
211
177
190
223
273
166
164
179
151
189
206
215
195
217
198
187
170
221
161
224
142
258
144
179
233
160
252
217
244
143
189
178
210
180
208
193
205
210
180
236
146
211
200
166
145
151
233
202
240
150
194
253
190
205
198
204
172
271
170
138
123
232
212
261
163
181
166
245
220
137
226
232
208
223
184
193
212
188
127
265
212
172
117
248
220
153
218
204
219
192
238
183
214
188
160
188
184
237
240
196
214
225
175
205
210
158
212
167
168
197
187
194
236
279
183
159
165
261
207
172
118
219
212
195
192
148
201
162
172
177
209
154
236
226
204
217
191
257
193
224
192
211
189
195
197
244
255
213
174
215
233
173
201
210
179
220
186
208
231
235
213
236
237
187
253
222
130
205
221
238
198
199
217
225
146
200
216
183
241
204
200
226
211
273
174
185
221
146
183
189
133
195
203
172
239
119
127
159
247
236
121
203
203
175
202
204
239
186
238
203
137
219
197
145
223
184
196
180
210
210
198
250
208
253
202
158
188
202
174
182
138
201
220
184
161
145
225
196
193
169
209
267
161
209
259
169
243
174
214
230
207
260
198
214
210
192
207
212
234
215
246
204
211
179
158
226
214
158
197
150
200
233
232
221
151
212
165
240
227
198
144
124
196
212
188
130
219
230
201
217
204
227
214
249
288
212
174
196
260
117
213
249
193
195
191
252
229
190
168
190
160
136
200
230
165
198
151
257
194
232
126
144
224
185
244
163
262
245
200
121
213
182
177
166
173
219
113
183
267
214
215
170
243
249
213
226
226
189
189
284
188
247
192
270
203
224
165
225
175
191
238
235
267
181
164
148
145
190
173
221
180
188
117
233
211
140
164
188
177
222
119
236
184
204
214
193
190
188
155
226
220
236
177
190
216
183
224
184
202
160
229
147
210
183
222
238
188
191
162
209
205
228
174
187
136
241
214
181
257
242
227
229
230
186
241
197
136
266
123
274
171
168
187
154
204
218
263
172
185
241
256
190
184
222
201
173
220
238
190
166
194
181
205
238
150
174
229
216
200
168
161
238
220
161
144
202
231
216
172
209
210
182
181
234
203
206
220
110
175
180
200
146
177
183
197
162
178
242
265
207
170
229
243
256
174
137
138
217
162
248
205
229
156
204
175
157
220
173
249
269
159
222
231
169
224
213
187
201
214
191
178
247
186
249
142
185
228
181
209
232
138
227
198
204
203
197
207
212
278
97
188
175
278
155
256
194
228
217
201
228
228
245
251
243
106
165
156
173
177
247
189
232
233
135
225
198
145
215
182
231
251
223
167
269
153
177
245
176
275
184
226
154
220
228
212
261
210
267
245
195
183
256
180
239
249
160
208
179
166
190
159
207
227
213
160
272
145
179
164
205
234
223
198
192
197
155
172
126
194
205
183
146
211
162
175
159
234
192
243
208
217
160
209
189
219
169
213
222
189
227
132
233
209
219
181
258
201
248
214
255
194
210
271
188
211
203
214
206
185
207
163
197
193
159
183
197
204
159
219
248
222
136
145
203
263
208
224
223
190
224
194
205
204
254
250
151
148
245
188
182
214
184
258
182
268
128
161
204
206
151
237
193
230
190
198
206
217
165
165
226
165
213
209
291
196
179
180
265
179
157
205
187
185
160
237
220
237
208
182
176
178
137
123
182
205
119
262
257
229
207
156
158
204
269
249
175
245
201
193
232
173
209
192
189
254
230
184
172
117
210
220
258
173
178
182
201
231
167
243
203
186
194
258
160
129
121
210
209
234
190
241
212
220
177
234
224
213
205
242
242
207
167
169
235
195
207
177
219
213
178
227
171
187
192
183
170
151
188
245
173
208
204
197
219
237
195
142
228
217
204
220
219
261
224
238
247
190
188
214
163
233
204
181
225
219
184
193
216
160
152
219
155
224
148
259
202
179
178
176
158
227
189
238
217
211
163
254
204
153
163
243
176
194
268
146
221
114
186
223
262
198
213
181
204
241
163
185
208
178
225
203
174
154
194
161
229
157
218
169
210
252
298
144
243
219
225
219
190
219
197
156
167
196
194
170
158
173
203
191
206
249
230
176
186
156
167
203
231
199
193
198
235
209
262
173
196
246
204
188
222
118
195
205
233
196
181
198
190
218
210
224
173
176
252
195
165
232
245
162
180
193
189
168
194
218
228
235
164
211
184
222
241
172
201
191
177
166
260
217
209
251
197
195
223
196
194
169
189
227
225
158
233
155
190
172
175
158
109
205
130
195
170
187
190
223
192
202
156
238
190
222
227
129
210
237
237
181
205
192
169
229
171
201
179
235
202
164
185
216
192
157
133
192
108
213
257
152
242
217
257
224
208
189
151
176
175
135
177
193
192
201
147
231
182
221
266
172
196
214
249
187
164
206
229
201
196
255
221
249
116
148
151
190
248
147
199
165
236
223
268
232
232
185
170
214
200
166
234
244
242
183
212
252
115
238
194
181
226
202
238
229
233
200
133
163
149
207
161
214
175
168
236
272
235
173
189
196
264
270
179
186
241
232
171
261
191
184
230
259
155
183
144
245
139
186
192
205
194
179
186
287
247
222
174
178
169
158
198
215
249
246
229
219
211
249
186
178
188
188
151
174
218
272
206
195
213
173
210
142
248
225
178
269
195
186
204
204
188
160
246
228
200
223
207
206
167
206
167
218
196
239
133
225
168
246
221
210
225
157
232
230
249
173
214
214
240
216
206
205
188
259
140
206
204
163
201
208
170
235
214
252
169
229
202
174
209
220
159
217
189
207
241
189
211
194
165
194
172
226
183
193
164
204
185
186
267
238
191
227
189
221
207
171
191
179
201
177
178
236
226
171
229
214
238
170
205
196
133
210
187
217
168
225
195
244
208
278
232
178
231
244
219
147
219
205
223
273
197
192
234
205
115
200
187
218
194
213
201
226
168
216
234
186
243
224
237
255
172
222
241
183
254
158
172
221
239
157
191
257
162
235
224
168
218
181
196
185
156
208
189
186
184
240
246
187
219
120
239
241
211
232
274
161
239
168
225
176
171
170
202
242
177
171
196
167
234
191
238
186
166
193
169
180
217
152
127
253
220
200
229
229
146
155
287
178
215
205
144
181
209
217
237
197
177
195
199
177
186
136
283
195
232
262
183
197
212
179
191
184
192
128
187
134
202
192
226
227
153
223
159
183
164
172
237
181
237
200
176
240
216
197
208
175
186
217
188
237
235
132
152
222
233
164
160
235
172
220
226
161
168
174
158
204
157
246
193
213
240
239
157
175
154
232
125
180
252
146
212
175
209
235
214
178
237
216
194
208
200
209
149
178
166
188
283
167
102
243
237
250
187
183
246
242
259
171
153
228
170
182
239
207
156
200
212
148
208
195
183
240
240
194
139
252
200
215
185
218
187
159
178
167
155
211
201
199
190
228
171
200
183
213
214
209
249
186
269
192
189
210
223
185
193
182
192
206
160
188
209
195
248
213
254
143
209
169
198
231
188
191
208
181
151
123
248
192
196
227
295
255
181
214
198
161
102
202
174
180
205
225
159
154
196
164
220
208
196
185
176
223
237
261
182
204
212
201
212
189
166
243
193
202
223
230
205
161
175
222
224
195
201
155
118
183
164
247
200
178
209
179
220
213
223
222
179
150
145
240
198
180
185
216
236
272
155
141
168
216
249
141
228
153
167
224
209
188
254
291
241
152
168
213
233
262
150
181
215
240
264
210
187
232
142
185
141
208
226
198
174
260
198
199
181
258
253
214
224
165
173
193
154
202
161
263
198
242
238
184
179
194
222
222
179
181
227
223
252
218
242
236
176
162
220
183
199
171
173
193
143
214
185
232
144
195
229
215
254
144
172
207
227
223
212
220
165
250
197
227
234
221
263
158
218
190
149
161
146
172
261
196
235
230
183
151
222
200
209
216
223
265
220
221
167
244
144
232
221
165
176
238
172
212
236
203
250
187
238
178
140
237
186
192
237
203
175
143
221
196
216
216
153
155
256
269
243
246
158
234
188
182
239
204
181
141
156
241
234
160
230
207
227
239
182
201
186
200
265
228
233
217
158
191
179
155
178
228
187
197
208
262
236
161
214
209
173
174
166
202
174
169
181
225
205
205
196
166
201
116
139
233
220
246
225
196
191
200
151
161
220
217
225
187
223
247
230
238
209
216
188
133
200
231
233
213
176
223
166
147
206
175
157
217
237
159
243
212
197
248
165
153
163
215
250
149
123
226
208
165
189
165
151
231
183
237
213
158
211
237
228
177
198
244
135
235
124
198
234
172
217
162
205
234
156
204
225
219
161
166
207
222
183
221
187
185
197
214
182
214
213
182
243
223
198
220
260
131
201
242
195
204
147
179
150
245
223
238
155
199
260
240
176
243
148
187
204
175
230
252
166
159
125
216
149
139
199
210
231
229
248
143
137
234
196
128
176
199
225
215
191
117
255
202
196
161
198
224
204
198
217
227
209
152
132
233
206
213
198
235
142
192
205
237
211
201
154
231
150
266
211
200
219
186
194
219
236
157
212
224
236
199
173
204
227
206
173
161
225
207
196
248
189
183
201
249
177
202
187
253
172
203
129
219
196
151
214
186
221
258
138
196
213
183
209
274
210
143
210
214
212
202
190
261
201
247
186
168
254
247
238
204
145
271
198
185
207
255
221
190
176
147
201
185
130
242
200
202
212
217
150
241
123
219
150
134
236
207
167
238
196
100
174
191
189
193
204
182
211
223
204
244
209
237
214
224
252
254
205
229
204
235
273
220
233
172
183
204
132
241
209
232
117
203
148
183
181
178
203
189
171
163
234
203
259
216
236
182
233
257
220
181
190
195
226
206
166
216
189
165
174
245
205
229
182
201
140
247
230
216
233
213
241
240
213
227
219
170
233
238
165
208
151
185
216
188
156
203
173
195
200
208
215
136
157
192
172
170
185
160
252
157
209
195
218
236
237
188
233
201
266
254
192
230
208
206
99
175
207
205
247
151
190
213
213
240
257
205
206
228
204
167
197
238
198
196
168
269
237
136
217
256
187
165
186
243
243
168
228
129
196
201
205
197
163
268
189
164
201
218
175
166
213
143
200
208
123
236
146
232
164
170
193
225
190
186
155
209
179
207
173
198
186
223
237
203
233
267
248
223
199
208
233
190
244
166
185
234
184
244
166
198
189
156
237
186
143
259
233
205
161
150
226
137
209
181
262
216
249
195
204
189
166
203
192
175
173
214
189
228
209
155
213
150
203
218
244
179
201
210
212
198
204
221
195
211
176
209
179
199
190
162
224
243
195
199
252
209
198
246
227
204
139
229
160
175
219
223
225
241
213
200
190
221
196
205
151
165
213
213
222
210
210
208
169
190
209
208
224
169
176
261
240
170
271
200
174
171
173
207
209
214
247
249
216
194
229
232
197
213
217
215
193
180
204
193
158
207
209
165
237
209
192
209
156
251
229
177
195
157
241
226
246
170
188
193
179
169
175
243
191
213
157
201
179
182
217
201
200
278
214
197
158
279
230
201
203
198
214
217
208
194
193
174
202
190
243
240
247
190
212
161
173
235
150
253
230
204
180
189
202
225
198
162
168
185
127
202
190
206
195
201
192
162
219
258
98
146
179
190
158
211
245
272
179
175
213
210
263
209
205
189
177
198
178
148
208
198
179
155
180
225
213
212
231
225
264
194
170
145
219
195
257
236
179
210
187
185
223
217
202
190
185
141
278
235
234
207
206
148
212
209
216
236
192
220
198
195
229
209
188
214
235
168
204
227
162
175
211
188
136
200
136
173
216
155
193
192
244
206
179
233
187
210
249
197
247
242
192
159
225
226
238
231
210
214
140
215
155
199
214
263
225
199
203
144
197
231
171
172
230
181
150
205
169
210
188
225
234
233
214
188
189
99
193
254
164
177
145
188
254
118
226
203
177
213
180
175
221
230
162
165
213
234
124
245
198
175
214
224
232
201
199
172
178
228
162
204
208
172
244
227
253
258
211
175
223
230
216
187
194
209
173
196
204
233
146
214
197
181
148
190
178
206
166
263
211
216
210
157
196
137
187
170
140
193
162
201
215
189
172
272
217
198
165
230
217
190
118
254
188
184
167
240
233
215
170
188
167
159
225
170
238
219
174
168
210
222
191
229
130
292
216
156
122
265
237
216
224
222
166
229
186
221
181
231
163
228
210
236
187
209
181
186
153
216
154
159
219
162
181
254
248
184
227
170
281
213
206
176
125
206
233
197
218
150
110
204
187
192
180
233
190
226
182
224
187
210
234
194
206
219
147
204
204
200
222
162
202
178
135
121
243
215
157
223
211
193
230
224
159
199
193
229
213
196
209
203
227
171
221
164
154
287
225
293
213
236
193
216
194
169
236
189
223
215
188
142
200
231
171
155
197
196
233
144
181
169
158
210
175
155
199
214
230
176
219
181
161
129
196
207
203
199
213
210
211
240
217
138
242
214
204
257
134
223
241
205
181
167
131
218
201
216
231
262
225
169
170
217
214
250
239
198
167
177
229
244
169
206
169
185
183
223
192
162
242
193
280
182
225
254
194
189
159
185
127
183
142
235
154
183
203
193
225
221
186
208
238
189
213
235
235
263
190
140
206
179
251
191
242
188
187
242
196
179
175
243
246
202
209
231
186
201
197
203
180
152
188
145
238
219
132
228
166
131
264
173
237
230
214
166
180
216
237
212
213
209
206
223
267
182
189
185
249
186
181
179
212
190
203
163
230
209
194
149
234
199
122
216
217
249
157
190
174
195
189
169
199
257
262
170
235
191
208
202
217
192
246
158
175
250
163
242
196
238
237
214
164
166
170
216
138
235
208
258
209
207
131
232
156
218
193
251
232
191
255
191
216
188
169
131
218
182
164
194
188
185
143
258
209
145
241
209
182
221
208
265
201
203
210
267
192
196
116
215
227
232
171
190
209
219
221
263
233
166
152
123
170
200
244
205
195
172
153
263
163
218
158
138
148
249
184
255
166
211
268
190
268
220
226
161
217
232
203
206
213
140
148
233
229
180
215
271
180
199
158
228
149
248
177
212
192
190
151
200
98
157
179
172
218
164
146
211
180
232
177
212
248
202
170
194
180
194
219
196
190
189
186
172
177
180
228
239
190
218
255
245
259
206
231
191
187
131
159
191
164
264
164
192
188
223
174
182
176
208
220
138
181
221
218
167
177
169
209
144
228
205
151
193
182
190
192
239
220
196
217
173
182
254
227
178
160
161
140
159
206
227
232
215
141
166
222
174
237
124
196
165
173
188
212
130
203
186
140
190
167
166
209
224
213
149
187
176
181
245
241
266
208
242
221
187
207
143
146
217
194
292
148
204
220
180
134
127
188
266
216
194
186
235
195
187
193
227
192
196
177
198
158
160
186
204
209
186
185
173
208
247
134
199
147
174
248
167
258
214
214
257
177
228
234
217
238
151
172
204
243
167
215
154
212
234
221
195
191
207
234
187
190
138
202
189
200
199
158
273
146
173
197
201
186
200
152
219
195
191
228
140
177
160
205
206
261
224
170
129
195
213
139
247
157
220
200
233
167
215
232
236
179
193
190
207
211
205
197
215
204
242
247
213
265
203
207
232
189
200
188
180
227
208
189
174
210
173
222
199
215
199
157
239
211
223
197
182
203
172
246
217
163
224
183
234
221
223
247
193
224
179
185
212
162
185
215
226
238
141
266
238
216
183
152
218
191
213
273
220
102
169
169
160
224
181
218
212
183
237
169
220
172
178
137
205
190
218
221
178
213
203
201
210
236
265
151
270
177
188
209
237
149
231
291
186
199
151
232
184
127
226
184
261
214
140
152
256
218
169
244
186
191
261
198
214
185
294
259
224
187
220
191
223
186
226
220
131
184
206
173
193
142
266
194
222
228
236
188
159
190
194
207
211
156
221
173
221
213
247
212
189
158
174
232
214
227
190
159
225
243
226
233
163
250
220
141
200
185
215
218
170
215
189
215
260
222
197
175
148
218
194
199
191
192
188
254
200
255
267
182
205
230
189
171
202
142
219
219
181
199
211
213
182
257
244
160
207
246
134
241
223
205
182
229
151
99
196
256
174
220
210
258
200
231
253
172
144
165
228
208
224
272
191
208
139
215
129
151
152
181
211
164
212
175
203
152
219
270
221
192
148
221
182
239
198
195
172
263
216
229
188
178
193
158
180
254
212
188
112
213
205
223
144
238
255
282
205
219
175
265
200
195
231
210
214
226
189
148
256
197
178
221
199
206
200
115
152
184
199
244
166
182
213
220
182
215
217
138
182
171
194
224
202
214
234
201
243
263
195
205
216
228
220
212
168
164
251
201
162
215
187
172
210
169
198
191
168
177
248
199
214
197
224
224
276
131
218
262
205
190
234
187
145
122
158
226
169
204
183
252
219
217
184
227
193
212
262
164
232
172
151
174
129
234
160
203
230
148
210
204
210
193
145
203
181
183
198
205
283
177
135
224
189
195
186
165
204
182
214
87
245
234
186
160
149
244
171
186
216
245
198
206
231
147
170
259
263
260
216
205
195
219
192
257
219
186
159
193
291
183
188
177
154
195
245
242
217
196
210
206
209
238
260
202
207
156
176
211
230
228
178
217
195
188
130
197
167
204
166
212
207
209
210
190
188
148
218
203
249
202
250
235
217
179
216
251
206
144
246
217
114
225
234
191
207
229
212
212
239
190
234
224
217
233
201
212
203
231
216
188
193
263
239
167
228
170
223
227
245
257
242
193
216
207
156
195
163
189
137
179
253
159
190
190
168
159
140
235
193
161
230
210
202
195
239
171
220
284
250
206
233
202
224
151
259
237
219
226
235
242
199
166
181
241
165
171
209
225
214
132
227
258
196
263
206
225
160
212
164
278
193
199
228
194
235
168
186
198
117
179
177
220
226
181
221
202
221
268
207
209
214
213
191
179
175
249
184
247
178
188
203
187
197
249
166
159
196
227
237
190
143
161
206
153
179
258
224
219
244
185
186
214
225
281
184
283
182
145
227
250
167
235
202
226
257
238
136
206
187
248
174
205
212
219
168
166
213
238
262
255
182
219
196
277
177
226
247
224
167
202
224
160
238
214
222
198
239
198
175
248
234
191
183
151
171
242
233
226
224
201
202
233
221
200
182
101
209
270
157
208
187
201
205
172
162
124
183
199
222
140
121
180
175
199
165
250
217
194
271
122
217
258
225
186
215
141
220
196
218
229
278
224
222
246
123
187
210
187
207
253
229
210
222
233
257
195
249
251
188
169
248
192
174
213
211
187
188
200
212
181
181
195
152
211
140
182
191
178
198
208
231
202
220
127
211
217
229
142
121
206
214
270
200
199
138
212
198
162
230
154
216
200
239
147
233
171
232
240
205
225
175
154
232
197
207
274
157
143
222
188
202
273
263
188
190
203
151
203
238
189
234
207
234
148
235
231
173
122
245
216
205
175
209
251
184
229
185
219
224
219
173
204
260
232
240
156
216
176
200
213
156
196
223
239
168
176
157
211
217
217
199
177
155
162
178
198
208
217
187
201
162
243
142
195
218
174
220
208
153
111
246
239
196
250
180
203
180
193
209
311
229
159
211
193
169
267
229
154
207
216
220
169
220
210
119
192
218
167
212
191
227
191
227
156
207
206
188
155
174
211
213
179
185
172
194
225
208
229
195
210
147
205
257
111
220
278
187
154
177
231
177
219
214
279
192
160
252
228
225
280
190
270
209
166
263
200
188
196
170
277
222
242
223
216
162
212
227
226
252
216
199
136
156
208
197
182
148
234
172
163
191
167
199
215
154
209
209
138
172
171
188
238
157
245
242
199
206
194
155
218
228
183
218
209
140
250
182
204
196
226
213
233
194
224
217
177
242
199
149
220
238
208
181
151
245
190
199
148
193
219
225
242
144
221
183
221
254
221
189
250
140
177
225
227
219
219
166
197
143
187
183
191
184
241
205
208
228
186
191
129
152
249
167
191
231
253
191
195
182
235
221
204
252
136
245
177
225
211
209
174
209
236
232
180
251
176
147
214
224
141
229
220
225
180
268
255
225
241
198
199
223
161
232
222
201
212
240
234
202
245
190
164
196
229
188
216
219
203
157
170
182
203
278
214
234
237
174
222
181
193
208
207
193
183
231
224
233
140
201
235
186
182
202
220
218
142
130
236
203
144
242
186
142
251
226
206
215
189
246
250
153
222
156
202
196
249
212
204
197
211
230
238
171
173
218
148
151
217
227
163
188
202
255
216
170
206
143
134
219
206
207
227
176
203
214
226
187
215
177
239
162
147
235
242
179
166
247
192
213
213
188
170
206
182
183
224
235
224
220
259
213
187
202
212
221
253
210
208
238
232
141
196
192
226
211
198
224
195
226
253
205
232
210
260
156
228
150
188
203
272
151
193
198
227
173
168
238
187
204
181
199
195
198
204
159
241
268
153
191
178
213
277
190
145
221
225
189
273
196
101
230
161
242
158
140
164
195
186
188
223
218
227
187
160
170
185
223
244
165
164
218
156
170
202
207
230
185
243
222
195
201
202
258
171
235
256
190
184
186
188
149
250
170
172
154
161
200
182
204
172
146
199
232
232
205
213
151
228
150
177
158
204
213
180
202
214
176
216
215
202
218
182
231
225
132
177
212
167
220
176
288
230
187
200
186
160
143
223
136
139
193
135
212
205
178
202
261
201
241
210
236
181
159
147
210
168
162
214
231
246
244
204
179
234
208
211
221
193
243
266
251
198
224
172
238
210
240
223
129
172
178
153
224
152
210
265
223
241
204
193
190
304
227
150
170
241
222
171
225
178
130
224
154
248
145
225
192
130
212
278
240
167
174
213
162
254
179
152
206
231
109
193
246
246
174
270
203
220
232
195
216
259
263
245
136
235
194
242
179
224
283
213
193
263
186
169
175
231
201
177
153
249
184
204
112
176
206
208
181
198
216
225
195
248
223
193
196
236
205
194
215
187
208
179
248
168
224
216
228
190
239
155
169
219
172
207
123
137
163
228
211
173
190
239
189
212
217
237
156
164
135
233
204
270
151
236
211
271
229
172
240
212
181
155
171
185
165
226
196
163
147
239
180
176
225
150
205
256
193
197
285
166
216
140
211
219
206
174
219
186
230
204
160
194
265
217
209
202
181
239
168
237
171
187
136
228
203
176
178
188
161
166
238
169
142
174
226
254
146
295
239
281
114
210
218
248
172
203
176
186
116
199
186
230
197
152
178
136
212
199
218
218
198
181
208
204
188
258
231
159
136
208
195
211
239
228
197
232
149
180
189
222
234
182
122
165
208
203
190
198
210
168
188
164
225
180
200
223
216
171
143
221
181
190
164
214
183
265
207
143
150
217
180
186
247
121
204
206
154
203
253
201
232
220
187
184
197
170
211
190
182
126
236
143
182
232
190
227
225
252
204
198
167
187
269
231
202
218
215
217
206
198
218
217
180
168
143
188
146
159
202
178
211
218
192
261
227
163
147
255
228
184
257
239
238
176
157
226
166
174
154
190
187
138
161
197
219
197
224
190
158
214
157
272
244
173
185
136
193
208
211
226
205
222
188
202
165
184
220
197
198
230
203
232
206
214
235
198
203
220
240
192
219
111
144
184
127
147
239
148
189
168
217
193
148
191
215
183
183
220
230
213
211
195
148
184
204
158
167
211
216
191
210
210
165
244
246
211
230
156
193
176
197
227
148
225
247
240
211
204
211
210
195
232
182
230
174
231
216
192
233
251
184
235
225
240
164
172
162
211
219
277
193
212
231
235
186
168
235
250
251
192
222
208
168
196
185
230
198
197
178
188
288
168
227
214
201
244
208
280
183
183
179
204
211
203
214
242
227
248
156
216
152
255
172
217
185
201
165
152
209
220
153
224
200
189
176
200
125
235
241
235
222
167
197
201
171
197
187
178
200
236
200
221
155
220
208
185
199
199
189
216
189
186
245
176
194
201
184
249
209
159
174
271
225
227
171
218
244
150
159
152
150
209
191
205
246
224
239
187
147
125
211
252
120
208
236
155
216
222
145
147
152
187
210
203
218
163
280
223
194
190
297
188
184
168
210
150
189
219
158
202
202
193
187
240
217
217
176
244
179
221
207
161
236
184
212
173
172
214
160
146
257
172
182
189
143
138
234
251
168
179
212
196
193
206
154
213
212
161
182
135
185
257
215
243
182
244
196
217
180
272
189
183
198
220
180
219
144
263
255
238
190
236
244
224
159
159
196
190
272
271
172
178
182
158
178
208
175
183
202
204
174
200
204
228
240
245
215
178
214
183
222
161
220
223
213
229
165
187
255
159
227
234
210
209
146
249
228
202
189
208
189
230
181
190
226
182
189
210
195
211
240
203
166
180
168
240
180
150
183
199
261
194
208
220
180
167
179
227
187
253
247
191
199
229
173
159
205
192
243
259
154
198
204
196
233
233
199
158
215
185
177
213
235
262
186
256
145
205
214
158
141
219
240
222
198
221
124
169
230
197
181
225
218
135
190
163
157
189
182
222
151
174
227
220
183
213
218
149
162
220
247
121
227
248
229
254
217
173
146
147
246
199
234
152
232
201
172
228
291
189
152
182
256
260
172
153
210
198
237
173
204
242
176
133
224
200
153
166
191
234
170
200
216
237
252
231
256
145
208
217
229
202
208
223
199
182
197
235
180
246
199
124
201
249
209
193
148
264
179
251
258
187
221
214
191
198
185
191
246
160
215
196
241
197
155
138
197
221
206
196
197
225
215
214
206
141
231
195
233
183
261
210
191
207
197
210
219
236
194
164
206
195
175
243
215
250
207
189
154
287
262
228
236
208
112
214
238
250
196
217
236
227
223
234
259
213
179
227
173
166
221
223
210
220
196
215
178
231
164
230
250
157
253
146
186
226
190
226
219
174
186
204
167
216
187
272
204
237
224
226
166
167
219
194
138
195
78
222
254
234
235
163
210
185
225
234
232
201
153
259
252
261
195
288
180
205
214
227
229
275
186
166
220
170
244
293
220
183
256
195
182
154
238
166
257
208
120
149
188
240
156
184
244
165
231
216
206
212
210
210
170
239
229
241
213
223
229
168
170
243
108
204
298
214
242
201
134
233
186
203
199
176
201
179
166
196
195
195
215
167
158
213
155
162
192
185
146
230
161
207
207
201
167
210
242
199
240
155
191
207
222
194
250
191
241
171
218
169
202
160
217
224
164
186
187
215
202
161
269
215
195
202
172
221
233
184
263
191
219
238
216
193
197
200
228
221
209
203
171
243
175
188
195
228
203
180
179
151
182
131
235
171
217
261
185
205
173
154
204
158
180
237
224
254
210
238
208
188
196
134
218
237
199
190
229
198
222
190
119
226
279
248
196
111
191
196
176
222
212
193
206
200
156
235
233
244
165
254
220
225
162
215
165
208
257
228
170
189
235
194
221
265
221
187
177
222
208
227
201
210
284
170
153
231
216
172
246
221
177
201
230
267
186
197
206
186
163
225
214
163
137
199
219
178
187
217
167
183
192
212
215
230
227
231
235
164
180
239
262
223
178
176
170
205
216
214
197
165
210
181
206
178
216
173
222
229
95
244
183
229
189
265
180
235
135
136
166
159
184
116
209
150
176
246
221
192
220
151
204
229
216
120
241
163
173
198
167
183
175
233
183
213
170
208
254
187
212
240
221
139
202
252
158
154
224
234
221
196
165
251
183
207
195
158
252
248
239
190
216
214
232
200
203
207
165
168
229
165
218
203
194
128
205
141
177
156
225
166
155
188
199
181
195
145
226
205
156
144
202
177
194
222
197
189
236
145
180
169
250
185
187
203
195
153
211
267
184
196
219
213
172
198
196
221
164
194
162
169
226
220
217
169
170
217
181
243
256
224
201
228
166
217
206
270
217
163
190
218
141
205
197
201
170
231
192
132
209
181
237
216
160
170
218
192
174
164
264
141
276
229
272
181
202
137
148
214
192
194
193
205
189
175
216
184
187
189
183
238
172
205
175
203
171
198
155
215
233
173
162
239
227
246
184
235
126
150
195
175
225
183
158
169
254
187
190
192
184
133
173
167
235
207
221
154
189
143
156
178
225
175
187
218
218
226
185
240
146
191
173
209
214
160
193
163
193
212
211
173
213
142
179
173
224
152
169
188
168
207
216
182
207
189
261
251
174
145
255
194
234
189
162
216
223
212
235
129
223
261
181
206
240
217
193
211
156
200
209
226
181
170
167
199
244
152
207
185
181
156
207
240
276
181
163
175
176
180
162
216
181
266
173
214
244
158
214
196
178
201
225
146
197
214
232
288
241
219
219
182
214
212
131
248
201
194
213
265
145
240
202
180
157
194
213
206
239
176
179
180
148
244
248
169
252
208
241
181
253
139
224
211
147
194
215
198
250
177
219
170
235
245
207
197
194
196
185
147
157
245
254
191
174
202
220
288
146
178
181
166
162
192
229
177
240
136
169
229
195
195
196
206
151
208
192
211
282
291
112
161
196
175
190
232
156
216
229
203
186
273
203
197
156
209
194
210
218
246
244
239
191
180
245
239
181
193
133
252
211
231
238
163
174
175
179
205
179
175
195
222
164
175
226
245
137
178
170
193
213
163
205
185
183
175
174
140
196
172
176
210
227
165
265
194
150
182
174
171
209
240
196
183
230
210
201
199
162
196
241
243
165
187
206
234
194
202
162
185
215
204
148
202
197
211
175
193
223
191
211
230
187
213
198
238
190
227
190
163
167
273
233
188
272
189
213
204
233
200
214
190
201
208
212
203
209
182
233
216
159
158
213
234
219
270
177
260
245
124
263
250
172
167
208
158
209
105
225
252
189
230
202
227
239
159
278
257
190
266
203
179
164
171
135
248
261
207
217
180
170
233
211
192
201
183
202
193
128
161
233
244
214
221
206
187
248
205
259
192
228
241
172
235
217
129
236
223
203
186
233
207
197
295
136
185
207
219
180
198
166
196
211
169
200
182
219
184
202
155
195
180
171
232
184
195
208
197
166
223
168
237
225
257
192
179
182
194
193
201
171
177
201
224
238
192
181
219
255
219
226
160
198
205
90
169
225
175
168
256
201
159
230
177
239
177
187
226
238
251
226
177
193
168
219
173
225
168
190
214
114
170
243
228
165
158
245
229
222
234
279
228
237
215
268
166
166
249
221
169
217
207
238
188
164
184
157
209
197
194
247
180
171
102
153
159
206
282
267
215
242
178
204
158
211
185
159
221
198
231
167
232
248
185
227
266
202
229
142
181
230
189
196
201
198
159
240
160
157
181
232
205
193
210
184
196
136
224
199
215
204
159
209
182
147
178
231
226
227
183
165
217
189
168
244
182
201
160
140
149
173
175
220
227
199
196
133
160
206
243
214
172
210
173
221
223
166
252
198
204
184
208
192
200
220
195
222
135
216
221
240
240
193
268
195
221
166
194
183
187
165
175
154
177
240
197
187
264
207
204
120
245
227
215
263
189
215
161
175
239
181
204
208
191
239
221
183
178
224
235
230
187
228
210
225
207
238
221
211
209
278
174
233
174
187
200
222
146
181
243
206
153
271
193
258
180
195
248
168
239
179
175
207
215
230
200
195
274
216
270
222
203
212
191
184
240
221
204
194
189
195
191
202
134
179
193
210
178
229
213
177
203
240
244
239
224
167
170
261
213
238
194
178
208
205
208
222
199
169
196
220
199
239
164
230
174
201
247
213
142
223
246
182
257
231
262
202
176
164
199
145
207
160
161
173
251
215
147
223
210
234
216
238
244
240
193
206
140
141
231
162
247
221
241
182
117
228
207
179
210
245
172
235
140
207
224
196
259
159
180
163
257
232
175
133
213
184
227
153
202
196
163
228
213
184
178
237
253
155
134
253
198
178
191
181
193
199
166
176
226
269
205
159
229
202
221
158
195
224
200
132
263
187
203
200
181
167
198
156
175
200
166
140
154
174
215
205
148
240
155
219
177
230
270
167
191
193
218
204
237
207
197
169
236
200
141
193
171
208
144
175
215
178
210
232
214
179
154
163
244
174
222
234
173
220
144
134
193
275
142
205
234
193
191
207
193
202
206
208
225
207
238
205
208
250
243
147
197
167
173
220
181
203
122
209
233
253
248
229
206
192
224
260
192
224
183
153
184
220
265
150
138
219
220
143
183
143
171
181
264
249
225
209
151
226
119
188
218
165
193
247
160
185
152
211
212
148
178
192
232
186
257
176
264
214
241
177
145
221
265
238
193
202
206
237
186
186
252
173
211
195
169
230
242
231
122
182
241
210
222
169
210
164
174
230
166
131
211
156
156
182
142
159
209
163
243
225
193
216
167
153
223
131
179
202
250
216
235
181
172
248
168
176
218
237
236
167
249
224
235
192
183
243
190
225
171
202
210
200
203
227
211
246
282
153
167
251
231
199
216
156
208
192
172
135
250
200
227
201
230
151
227
251
207
193
178
217
307
178
206
215
188
189
236
189
186
160
174
226
216
257
234
179
222
216
183
252
220
218
203
184
242
234
194
177
189
209
218
157
118
188
229
233
155
203
194
201
210
145
237
196
237
142
273
213
207
235
183
229
208
155
231
176
253
207
181
204
242
195
222
234
208
192
194
136
223
185
215
158
204
179
201
218
171
114
272
191
237
184
189
212
151
201
208
250
193
221
220
136
218
143
231
212
213
194
231
220
231
189
212
237
178
202
155
223
153
199
239
220
172
213
213
194
229
200
255
231
161
178
210
220
141
212
235
225
241
178
219
248
220
208
183
139
202
212
215
185
155
160
170
204
198
231
181
193
189
214
161
229
162
208
257
218
229
188
204
194
230
199
154
214
144
204
259
241
170
173
199
174
187
216
178
162
186
139
186
144
222
246
198
209
196
219
255
118
215
189
174
236
167
177
160
161
204
254
259
233
252
166
216
187
194
184
207
205
181
217
189
240
208
208
240
185
206
224
233
193
221
250
213
246
161
151
197
155
209
199
170
198
229
198
245
241
211
201
186
202
228
260
229
195
237
169
254
194
215
168
190
196
218
199
215
142
246
286
205
201
176
291
171
232
180
195
203
149
201
226
83
202
163
234
278
153
129
209
225
223
235
207
218
220
125
204
203
194
162
219
229
177
179
246
205
200
227
177
215
186
135
162
248
163
175
238
201
223
198
190
273
220
182
153
162
180
223
161
184
221
113
216
124
215
169
161
193
212
140
196
183
151
209
245
211
212
187
239
193
166
184
211
184
233
154
248
185
263
248
200
208
223
227
236
254
212
196
178
208
203
226
184
186
266
193
141
196
165
151
213
174
178
226
175
243
174
141
198
206
249
187
208
173
215
227
183
271
177
189
194
177
221
185
201
165
163
193
151
261
212
176
190
224
181
222
205
207
228
230
204
198
147
246
244
243
231
211
193
205
197
216
215
147
236
191
225
209
275
178
176
186
173
239
168
148
141
180
182
165
189
191
212
203
211
187
159
225
228
243
227
193
169
199
184
132
195
217
186
218
223
177
196
181
125
119
209
207
161
145
163
210
247
247
262
223
174
182
144
197
233
204
185
189
201
198
155
214
219
230
193
221
139
230
193
220
214
216
242
224
227
217
244
214
146
190
198
196
168
239
232
246
220
169
185
143
229
163
251
185
187
231
124
219
164
225
148
124
187
238
197
191
270
147
253
207
194
166
124
242
179
205
249
188
245
240
222
189
209
210
198
216
191
249
226
199
206
224
188
186
205
205
195
238
204
212
192
218
190
179
160
220
240
206
196
199
140
145
287
229
229
151
238
226
179
195
188
234
244
189
221
210
238
214
219
204
207
171
173
202
228
226
209
151
253
251
211
211
196
280
180
163
245
195
184
232
223
222
258
221
141
229
249
253
210
207
176
200
208
219
172
136
267
228
170
177
193
217
163
239
185
198
130
219
217
150
231
190
225
238
230
245
228
142
224
168
165
148
122
195
205
181
240
210
153
236
253
166
240
183
217
184
209
118
214
227
215
237
167
123
239
268
237
198
220
184
248
205
191
191
193
165
178
210
189
159
157
217
258
237
274
234
205
227
187
223
250
203
205
202
198
179
195
203
205
221
132
122
209
128
228
204
237
219
210
209
213
164
235
201
234
143
252
193
207
188
154
216
230
188
219
245
196
220
223
221
201
195
246
176
231
218
223
180
191
236
202
207
193
159
202
268
204
241
154
230
238
226
184
131
216
169
162
243
188
191
195
205
156
172
288
247
169
247
207
195
193
190
184
234
260
271
222
208
184
240
193
201
159
201
185
258
256
171
222
248
211
237
182
144
192
265
236
194
137
172
206
190
200
229
204
210
182
203
194
154
181
241
189
182
228
173
201
162
201
186
256
213
213
230
217
180
176
232
185
209
238
157
204
161
140
177
117
243
259
157
169
252
217
242
171
221
209
279
166
201
252
173
256
128
235
177
158
221
163
163
212
192
148
219
182
215
204
206
192
201
229
186
185
186
165
216
155
203
144
208
235
208
190
166
229
193
226
282
275
184
198
220
219
166
177
249
240
164
183
196
177
199
145
184
247
131
205
232
213
154
123
172
170
213
187
248
166
205
161
210
241
171
190
238
214
237
170
301
196
227
199
192
164
207
213
231
133
223
249
190
202
225
163
257
190
169
251
172
140
181
139
193
241
202
250
256
182
193
186
228
219
173
240
227
197
220
232
201
215
259
250
249
232
193
228
231
199
247
247
171
166
164
228
162
177
227
227
240
160
238
266
222
218
199
269
198
201
123
265
210
227
203
229
171
237
175
159
197
161
220
185
202
238
167
186
138
185
206
210
208
217
169
195
189
202
166
217
234
197
221
221
167
193
262
202
236
231
147
154
211
218
222
167
205
219
267
204
180
208
186
177
189
252
175
171
180
175
219
199
262
201
252
153
176
198
205
157
149
181
218
161
171
235
176
165
121
106
262
189
222
185
243
165
209
220
271
183
204
191
255
272
210
224
191
299
243
233
168
108
157
226
259
212
210
193
199
197
232
197
219
135
161
152
218
187
186
186
253
179
136
208
211
149
220
167
225
195
212
157
211
229
174
219
228
202
229
178
166
197
211
140
214
222
195
175
218
136
184
172
162
247
167
230
164
229
221
236
155
183
233
155
279
213
234
203
249
176
220
224
229
177
232
254
237
248
180
238
247
197
224
208
212
243
160
237
151
241
209
231
168
207
248
219
192
187
190
218
184
196
225
198
157
156
162
206
166
262
227
165
234
204
174
155
225
127
162
205
191
235
259
155
149
235
209
228
236
215
172
201
200
189
214
265
206
211
205
236
207
190
212
208
213
231
228
171
194
160
201
155
177
198
182
212
193
236
263
221
208
160
175
164
236
172
215
178
159
231
204
190
243
212
182
279
225
214
155
210
273
180
180
221
208
127
234
222
171
150
227
176
255
221
205
222
202
230
187
163
200
199
221
188
244
254
200
203
248
213
155
246
160
182
144
170
199
185
177
176
245
266
195
285
284
214
226
222
224
284
153
169
186
167
221
159
281
266
220
170
234
132
235
171
214
200
214
190
213
188
255
198
155
247
187
236
217
212
218
204
182
231
201
208
167
179
182
240
162
227
197
122
139
107
170
249
226
178
247
162
231
182
225
219
197
224
210
211
215
158
263
215
235
214
177
182
166
183
202
227
144
208
251
178
145
259
214
247
213
212
153
156
291
145
279
183
168
202
246
193
242
173
268
220
199
220
176
171
187
259
219
222
157
236
192
200
170
196
180
191
149
179
177
107
212
260
198
177
196
220
189
219
184
213
157
248
183
199
259
137
173
217
187
247
173
199
249
195
166
282
245
238
188
224
208
187
164
231
184
128
212
242
189
209
190
255
238
244
259
164
163
240
166
224
194
278
230
213
181
169
154
193
220
210
282
196
172
248
171
154
134
214
165
213
163
177
147
162
194
192
166
189
211
134
199
202
200
201
261
175
151
220
157
197
185
230
185
207
218
237
153
214
178
148
215
198
192
172
208
202
181
220
232
137
222
246
123
185
172
241
204
158
211
183
233
218
272
178
222
200
181
204
207
186
147
169
181
188
161
180
153
116
152
176
226
255
209
249
227
185
204
150
198
192
241
228
215
201
200
170
191
225
177
216
198
188
217
150
227
165
198
184
163
179
186
200
166
231
192
225
195
218
196
161
158
251
152
194
195
228
156
171
163
163
233
223
208
209
245
194
184
200
165
182
246
213
233
155
189
210
275
204
151
207
202
200
205
229
229
186
218
186
206
180
199
198
226
174
144
220
210
125
265
200
270
203
202
211
245
230
195
229
233
192
196
137
257
226
197
212
201
255
142
201
246
178
250
182
221
170
218
224
205
193
150
248
190
243
228
193
225
215
210
166
218
238
225
154
218
233
196
170
187
188
154
202
225
173
127
187
190
237
144
156
208
255
210
157
205
204
211
143
188
210
230
221
184
228
197
155
206
232
183
189
219
190
203
186
185
167
211
193
212
204
161
201
163
195
172
214
180
196
177
232
238
202
120
205
222
154
184
206
151
188
227
171
197
210
242
191
201
249
274
212
222
199
242
189
186
225
186
221
236
172
203
235
210
222
194
203
208
201
206
257
204
201
226
233
183
210
238
134
253
160
193
174
230
221
241
164
215
230
254
206
243
216
147
208
203
153
218
211
259
195
185
246
216
166
207
243
164
285
169
223
170
202
179
272
170
231
240
232
216
230
216
173
224
237
154
227
251
224
232
216
225
220
188
176
236
168
206
214
206
189
189
198
248
174
192
217
204
197
230
181
215
199
200
174
198
143
200
222
166
108
226
173
174
239
195
217
139
234
186
220
163
130
199
144
238
159
195
193
213
166
161
162
153
207
209
204
271
203
254
235
263
181
212
225
203
170
238
193
183
262
196
140
192
192
196
180
197
142
181
163
147
243
215
213
200
169
236
231
213
210
193
139
209
176
157
171
253
240
187
212
210
252
178
228
238
220
218
157
164
209
256
187
187
237
247
199
167
164
199
273
204
228
156
236
105
234
151
191
183
166
177
186
231
232
216
230
184
175
156
249
171
241
219
161
169
248
211
169
192
187
211
187
223
149
223
221
237
186
228
179
177
206
135
214
149
172
192
208
194
248
252
196
284
140
173
186
203
245
193
249
175
227
141
223
226
228
234
181
247
233
151
196
150
149
228
204
189
210
211
241
172
186
159
185
172
170
206
187
210
252
189
199
206
164
193
155
234
194
188
185
183
187
123
194
241
164
183
188
206
221
189
217
196
209
151
182
206
149
140
207
214
200
242
221
153
200
197
206
205
204
202
198
255
184
213
231
199
260
161
229
234
228
194
232
243
234
207
212
193
233
205
200
218
185
275
220
235
195
150
174
168
200
219
208
262
162
173
170
230
172
235
223
192
253
252
227
221
227
184
230
161
233
220
167
164
246
182
205
243
117
244
202
224
160
215
196
158
167
203
132
207
243
202
201
264
219
196
198
206
145
127
199
170
224
136
218
208
145
203
242
156
181
151
237
220
187
187
190
173
177
154
189
231
170
235
205
190
227
144
185
184
150
162
105
220
208
144
215
171
203
150
214
253
246
187
169
212
162
184
146
183
207
139
204
230
237
223
184
218
222
179
200
206
236
181
261
216
172
204
212
206
209
193
156
190
138
222
215
215
159
186
132
226
181
235
211
175
238
225
201
188
228
229
164
197
190
134
189
246
217
206
223
128
175
196
201
224
247
162
231
209
158
238
235
202
175
197
223
185
258
162
195
216
198
174
135
155
250
225
229
192
230
214
232
147
251
172
142
163
172
179
186
186
182
238
226
216
247
186
214
155
215
137
258
224
144
274
239
202
255
176
219
215
155
227
134
169
221
188
206
284
204
211
198
209
178
279
198
168
276
159
225
202
174
168
162
235
181
242
158
222
171
154
200
178
193
201
238
173
156
169
219
258
223
186
188
229
263
216
218
196
138
171
253
174
255
209
133
238
231
225
187
142
203
179
158
187
193
165
220
217
234
164
226
230
185
205
205
166
140
215
218
188
184
205
174
194
258
227
149
208
246
210
214
222
205
170
251
227
133
120
228
169
242
211
230
179
181
216
208
211
164
175
227
180
206
182
150
175
191
259
150
185
256
162
242
251
164
165
186
215
182
152
186
171
193
140
206
165
206
188
248
272
231
187
137
223
198
247
218
202
135
220
239
189
165
242
177
190
175
212
170
184
165
242
212
197
189
197
231
266
170
215
206
231
173
218
195
201
228
222
144
215
210
120
158
158
141
108
191
204
223
155
201
197
257
231
206
188
219
239
125
221
194
198
205
225
261
130
164
158
239
203
185
151
226
173
190
206
197
199
247
164
242
193
199
230
248
266
217
165
241
215
209
246
189
286
229
218
190
173
172
234
199
173
195
192
239
209
200
176
220
147
178
169
213
236
252
180
242
178
127
189
240
241
139
131
210
254
190
150
221
205
227
173
210
217
225
192
206
174
164
244
164
225
187
202
177
154
182
164
203
220
228
247
201
194
237
200
195
201
231
258
221
229
238
149
132
223
262
244
232
205
255
150
177
221
226
273
178
155
284
221
191
196
181
224
185
198
240
244
201
242
256
199
223
234
147
192
212
203
214
190
230
174
196
244
178
215
171
235
168
165
124
149
175
220
154
291
123
223
175
239
186
173
166
172
184
238
212
189
197
196
232
168
188
198
149
211
243
275
206
212
183
182
166
238
160
208
147
239
221
207
253
212
240
219
258
192
222
192
225
227
174
198
177
156
217
168
172
237
145
223
222
180
244
188
244
166
174
135
246
218
217
242
216
199
164
185
167
219
213
199
202
164
221
240
167
193
185
235
226
147
155
151
206
189
194
241
213
198
170
213
224
120
238
228
143
164
160
186
150
185
184
256
228
208
228
186
220
210
204
241
242
205
204
238
201
237
186
215
263
176
148
275
233
205
195
166
220
227
161
228
219
190
268
253
216
233
186
246
157
216
215
185
222
226
175
245
230
160
164
217
188
261
212
188
199
250
162
224
172
200
216
171
203
195
234
224
263
213
131
186
242
189
149
202
188
204
262
160
246
172
206
160
178
195
202
224
222
136
201
184
240
255
226
191
171
233
171
264
186
184
194
196
190
195
154
240
253
194
176
198
220
194
173
175
198
184
233
270
189
253
240
146
189
204
209
229
212
166
228
170
206
190
143
147
197
171
255
130
215
153
131
264
217
165
222
207
241
156
223
194
205
248
166
204
156
217
184
212
187
190
185
238
201
231
238
203
177
213
232
199
211
177
225
161
217
187
194
227
170
224
173
194
166
241
189
210
237
146
209
207
110
246
199
153
195
227
168
222
127
239
178
200
182
220
187
207
179
172
229
237
163
185
117
147
195
229
251
249
208
265
224
221
196
157
227
222
138
219
230
219
210
158
265
177
216
202
201
165
167
180
174
204
221
222
182
220
205
198
190
227
164
207
208
174
209
204
150
234
210
251
231
262
207
229
298
185
216
230
234
133
188
204
212
198
172
203
244
177
179
194
211
217
229
205
258
191
226
182
205
149
147
270
192
189
138
200
209
142
187
174
148
175
287
203
156
286
184
174
195
162
230
213
232
170
179
220
216
201
220
221
233
186
212
219
226
181
249
173
242
187
265
194
183
159
179
188
233
248
235
217
225
241
257
204
178
217
182
217
212
218
178
213
235
215
222
212
230
176
193
201
248
187
235
247
180
221
216
213
243
170
190
173
149
227
201
195
227
187
156
189
139
230
210
180
243
230
176
177
165
168
244
233
261
187
186
201
219
261
230
162
160
192
178
227
220
180
235
120
174
227
248
177
232
259
158
182
224
235
225
206
174
180
244
155
195
219
213
211
191
181
158
212
212
229
170
134
175
174
198
267
248
200
134
183
224
191
170
187
189
207
161
258
148
230
211
212
203
209
254
190
185
216
156
168
233
230
243
168
182
210
161
190
160
253
194
197
200
221
230
173
187
163
223
222
215
237
225
231
181
238
215
156
179
226
194
136
252
206
118
221
164
218
199
157
172
189
245
225
200
204
184
195
170
202
236
259
177
256
198
166
163
266
193
199
183
181
243
158
190
154
146
191
177
229
203
262
201
171
225
141
198
231
238
208
235
89
201
212
153
244
178
171
194
188
190
215
184
151
216
216
191
149
178
171
187
219
171
141
214
151
237
127
227
132
228
208
242
159
199
155
200
182
200
243
205
149
232
214
163
198
252
217
215
192
178
261
175
239
132
236
183
227
162
198
230
200
233
162
222
167
245
223
211
199
219
277
193
228
208
152
221
234
159
139
208
215
193
143
191
223
229
186
238
211
190
245
173
203
230
232
241
182
172
155
208
168
142
176
293
166
218
180
190
217
187
239
169
256
230
215
130
213
229
149
156
204
197
246
172
180
221
187
193
172
204
182
153
221
223
212
225
171
210
258
156
195
205
258
162
257
265
202
199
245
227
194
204
209
183
236
171
162
138
201
248
162
240
202
236
224
227
193
180
197
226
163
258
153
188
166
177
184
209
188
227
197
253
197
251
143
236
224
187
220
237
197
220
239
223
180
174
191
232
211
202
231
179
274
202
210
234
190
249
248
257
244
206
202
158
163
217
211
197
206
224
185
201
222
215
173
242
162
249
185
163
234
193
130
220
168
203
212
143
215
186
182
280
221
148
176
237
232
222
239
182
264
178
210
202
207
112
218
212
219
115
153
209
138
185
200
226
173
209
198
237
192
148
223
217
203
218
258
256
165
202
207
223
240
234
219
236
185
162
196
196
190
235
200
230
126
155
228
182
191
129
219
229
190
156
219
251
232
203
229
255
215
200
221
170
113
266
220
157
226
192
157
215
154
242
220
183
190
250
214
187
216
170
164
228
264
206
219
218
219
124
246
213
219
236
188
225
216
190
176
176
193
196
156
174
214
218
185
204
246
160
215
227
209
222
174
156
230
176
198
247
156
212
246
186
237
225
206
212
208
242
193
164
204
168
235
184
207
155
239
167
248
116
238
156
231
212
224
220
162
144
192
212
179
186
169
175
190
135
218
181
213
190
211
229
209
194
166
149
175
231
193
265
170
139
221
226
263
218
221
212
177
208
227
211
219
150
245
241
195
216
187
185
181
131
206
194
206
151
263
215
172
229
201
186
174
250
161
222
191
242
187
161
161
196
166
235
209
218
203
239
188
219
192
197
183
189
170
177
161
248
185
189
135
207
210
188
248
165
231
147
204
189
208
211
140
212
223
199
264
250
246
186
237
207
198
178
157
221
135
193
158
207
225
137
192
197
176
163
224
248
130
133
190
129
235
239
214
207
163
207
180
208
207
248
209
195
186
147
123
149
206
159
160
250
243
188
199
188
228
176
204
217
175
161
225
245
168
175
221
165
251
147
223
198
201
134
253
188
190
177
236
199
170
155
211
228
224
146
220
201
221
218
230
162
206
188
175
121
227
240
199
158
180
214
121
217
147
211
162
232
193
193
208
191
191
204
194
239
164
184
163
194
157
195
189
155
228
196
142
158
164
182
264
196
244
262
175
128
195
197
164
201
194
222
117
219
196
199
232
135
237
189
171
223
199
193
192
197
233
192
242
198
241
288
141
228
173
159
201
254
157
195
267
236
210
238
226
167
200
234
156
179
178
187
166
237
189
227
246
218
235
159
229
227
233
188
211
167
204
224
211
262
159
229
207
207
194
184
213
243
227
200
192
191
192
203
234
199
211
185
153
230
264
237
204
227
143
227
98
188
188
182
253
141
243
225
200
155
259
154
197
217
166
213
172
164
190
169
195
153
206
196
213
148
219
176
236
151
225
177
223
227
253
215
215
197
198
181
213
219
247
149
176
192
207
242
204
253
136
203
196
244
136
223
232
145
238
194
203
243
197
166
163
194
150
206
229
231
198
235
206
214
188
173
196
177
230
216
204
220
171
208
183
229
184
167
233
203
192
222
170
207
202
167
194
215
191
212
239
177
180
231
208
201
213
188
174
230
176
151
248
177
259
233
205
184
172
234
210
173
187
185
195
184
182
162
190
125
247
210
124
232
163
144
188
230
191
252
224
235
199
240
213
210
188
266
219
198
161
208
189
226
226
229
183
195
200
187
144
255
165
220
244
201
233
170
214
184
124
184
154
169
233
174
189
165
205
213
220
135
219
236
119
220
220
124
170
255
267
158
177
209
256
146
224
254
224
228
248
229
226
246
167
203
214
231
192
204
187
182
195
130
205
195
205
176
186
219
216
222
237
178
234
196
192
142
175
173
215
185
216
201
182
250
149
147
165
184
152
229
210
200
188
144
170
196
255
196
238
149
231
202
289
211
169
200
210
220
211
146
178
185
230
183
129
266
225
194
177
188
234
230
207
210
152
221
187
216
156
194
223
193
176
164
196
154
223
138
245
172
219
204
201
169
222
198
140
237
191
240
187
212
229
234
221
212
204
174
186
193
133
207
203
243
272
213
224
206
201
253
191
199
155
219
229
250
174
218
249
195
237
185
169
149
130
215
203
174
194
154
222
224
196
180
223
246
159
229
253
271
243
189
254
230
223
183
220
221
222
210
167
194
200
211
163
170
193
222
233
164
241
157
138
182
170
193
179
195
199
221
147
161
205
228
221
185
159
222
237
166
142
210
244
155
215
210
155
203
177
212
230
92
175
180
206
245
163
193
197
253
157
207
217
205
224
205
191
208
226
203
205
210
248
166
185
210
232
233
218
207
207
256
221
190
172
244
214
234
146
250
210
204
143
233
137
212
179
270
220
210
229
236
205
220
205
250
218
183
219
224
187
178
171
252
216
190
229
184
181
163
232
139
172
244
187
122
187
222
222
235
139
238
206
220
198
216
170
151
156
237
187
206
248
202
197
198
242
199
246
182
137
158
233
161
215
213
157
165
200
206
196
186
172
198
169
156
247
183
223
247
203
198
243
224
173
250
197
163
204
237
165
171
173
229
150
270
207
217
234
177
227
175
176
205
175
170
154
192
199
160
221
205
218
157
169
199
151
208
227
176
182
189
172
176
248
177
214
167
272
186
253
217
240
236
155
161
230
211
212
207
140
205
188
190
236
170
264
151
233
263
202
236
243
197
184
217
212
204
206
248
195
218
238
170
243
210
185
213
202
160
194
239
223
180
185
177
242
171
268
118
215
203
218
249
177
227
165
229
199
156
242
165
153
206
206
155
233
172
145
211
192
196
171
233
205
231
201
169
175
245
233
148
159
142
174
231
177
153
292
228
152
210
124
178
168
162
181
184
215
191
173
230
166
230
197
212
233
212
182
143
223
173
246
162
169
220
182
185
226
156
223
178
251
223
162
226
193
195
149
166
212
131
189
206
164
231
213
123
204
154
185
167
173
167
191
152
229
157
199
218
264
161
177
191
154
193
203
211
173
225
238
182
270
254
290
211
229
172
243
226
214
172
138
150
193
181
193
219
197
168
197
159
192
238
217
204
188
191
165
195
236
206
266
206
158
192
192
218
208
145
175
200
173
191
232
170
214
177
229
254
189
261
175
226
148
164
254
147
202
200
198
215
135
189
273
223
215
262
176
185
156
163
212
184
230
185
183
207
231
234
237
195
211
201
150
205
215
192
176
186
224
172
210
225
177
171
126
188
173
167
186
147
153
186
181
279
190
149
151
243
193
208
192
238
200
230
187
196
228
200
213
230
158
186
270
289
236
201
208
181
274
218
225
262
211
202
188
203
219
223
214
175
223
155
195
234
138
226
165
245
206
199
209
170
215
253
250
227
185
265
174
271
211
154
244
209
164
166
241
211
133
265
228
216
220
119
173
159
212
230
240
204
147
196
238
181
213
184
191
165
224
181
243
169
185
203
163
191
183
220
241
252
172
145
239
248
186
140
233
242
148
186
236
245
179
222
156
189
195
226
222
178
184
210
187
257
179
239
182
271
203
200
185
204
227
237
242
150
220
190
189
213
235
162
212
209
213
152
233
234
229
235
225
204
234
181
215
194
179
267
208
238
173
160
150
228
220
242
213
193
202
185
221
99
211
244
231
245
250
209
142
238
204
177
221
204
185
222
189
178
163
214
204
167
185
216
223
217
179
183
156
219
182
206
141
141
229
185
230
205
249
162
202
170
228
235
186
247
239
190
238
213
185
262
201
215
195
287
194
241
244
177
190
247
194
226
206
191
125
195
231
200
209
228
218
213
230
247
222
167
174
236
146
120
164
151
203
200
223
196
240
255
240
168
191
260
215
234
281
193
184
147
174
221
197
209
201
192
166
204
132
198
244
239
213
198
148
175
202
142
158
208
213
172
210
176
196
149
147
209
173
265
225
251
141
183
255
203
137
234
188
143
249
220
172
191
268
222
259
162
224
220
174
244
180
166
278
271
157
235
187
212
235
250
203
219
214
190
193
214
168
230
183
174
166
239
236
124
174
164
171
213
185
203
188
187
196
217
174
208
194
208
235
161
236
217
206
213
154
212
240
162
185
202
232
213
173
173
178
162
132
184
229
186
192
217
256
216
121
232
198
217
142
195
135
236
164
218
195
161
255
149
155
190
276
222
186
247
115
292
166
236
229
222
236
259
201
219
212
216
237
196
258
186
187
202
254
258
132
168
169
161
210
235
211
173
171
170
239
165
166
197
175
200
259
222
236
153
170
159
159
216
192
128
169
218
237
160
183
142
177
202
182
239
223
150
185
186
221
146
197
170
196
191
143
167
146
208
208
228
255
182
203
187
159
261
240
134
205
197
197
207
214
174
174
184
225
203
170
209
202
182
237
162
181
185
210
206
222
220
223
184
237
186
195
216
166
192
150
189
164
208
202
192
266
259
159
167
165
200
182
195
227
214
240
190
149
157
139
210
191
252
234
172
122
171
247
193
220
196
243
272
205
227
175
142
263
189
192
240
147
199
205
152
233
219
201
275
250
222
208
195
152
186
201
187
256
272
153
149
193
146
228
186
203
193
182
163
113
187
203
189
218
154
172
248
227
223
171
236
258
184
145
260
169
199
195
190
197
243
231
200
177
189
152
251
150
211
191
164
154
203
189
171
238
147
227
178
184
255
125
175
176
236
193
200
163
208
268
191
215
181
194
257
166
184
205
248
196
231
236
134
204
190
231
196
141
177
194
160
198
237
212
159
254
218
196
223
234
225
232
196
203
200
206
230
223
195
188
151
164
252
163
90
216
235
149
234
203
205
238
237
239
200
169
225
183
189
236
170
219
237
206
223
186
155
280
203
251
206
194
201
215
142
227
210
233
153
228
213
253
174
203
185
221
209
143
218
169
145
221
202
210
212
219
231
166
242
186
210
275
203
217
155
191
253
225
215
194
175
202
203
188
196
248
197
185
214
170
209
166
277
167
148
269
214
175
206
232
170
212
194
167
247
167
174
206
196
220
225
180
160
207
245
201
150
157
249
269
240
154
237
166
139
170
270
205
214
171
165
224
233
193
196
174
132
148
229
244
205
213
197
171
253
234
195
188
124
209
195
220
193
192
248
175
180
206
176
191
171
143
169
172
193
201
203
149
140
191
218
195
218
175
175
201
228
187
201
148
233
242
245
220
210
189
192
200
209
182
203
141
210
211
179
203
203
191
197
181
188
205
241
154
202
223
218
106
183
259
218
239
213
238
207
194
186
239
240
205
205
137
224
248
184
170
213
191
234
182
201
159
179
192
184
186
147
243
157
195
210
213
163
163
126
245
217
219
265
174
178
229
239
209
192
219
162
264
195
188
299
199
180
206
219
127
228
241
195
234
223
192
195
183
180
205
220
244
155
161
248
220
209
203
257
234
106
181
199
148
239
183
173
174
240
204
225
163
178
119
237
120
235
217
216
186
237
234
192
217
200
155
195
195
191
223
113
247
199
159
152
185
178
245
184
251
135
194
225
212
193
242
184
192
275
202
138
187
222
238
133
198
194
229
147
260
222
253
199
222
116
254
233
183
218
243
203
209
215
219
234
253
200
225
228
223
206
222
149
191
240
212
213
225
176
210
218
166
219
214
187
233
162
209
244
130
205
227
259
176
209
212
199
254
197
162
259
219
184
256
214
211
155
212
206
206
168
147
233
213
187
132
225
204
256
229
180
234
180
225
229
243
175
208
194
241
167
207
267
230
189
246
210
169
174
202
203
241
190
178
220
228
201
204
201
171
224
262
161
197
199
163
167
193
187
182
139
250
188
204
154
191
186
219
187
198
215
183
202
135
206
253
199
172
208
220
209
216
153
233
214
221
237
227
224
213
236
206
234
201
192
193
164
214
180
143
179
228
213
235
158
246
133
195
230
217
147
176
185
157
196
234
184
259
198
172
196
251
155
206
215
235
218
124
201
176
225
204
236
217
256
242
227
204
198
194
204
167
210
173
239
214
165
197
208
217
161
209
255
179
215
190
177
167
207
239
160
179
236
205
229
198
210
203
208
172
163
212
165
187
249
211
164
189
218
197
181
168
233
194
149
240
197
174
201
205
194
201
223
263
179
250
222
141
184
199
163
202
240
230
220
154
193
280
242
140
209
162
163
172
197
220
213
214
218
167
217
210
235
224
206
140
174
158
204
235
191
277
222
127
142
212
214
171
195
136
164
167
165
285
223
190
207
229
196
167
215
268
192
184
157
145
217
194
239
236
161
223
232
221
134
165
214
193
222
191
179
209
199
175
133
195
234
199
197
143
216
180
164
249
243
141
237
182
222
156
142
221
206
191
227
158
199
191
217
178
210
145
200
277
198
187
165
175
211
160
220
142
216
118
215
135
202
207
256
172
183
149
188
235
174
164
178
206
162
202
245
216
167
219
173
192
179
215
225
242
194
219
163
196
221
146
237
178
152
144
157
237
217
249
173
192
200
196
197
223
204
205
190
219
204
138
207
137
174
209
239
117
141
228
242
169
219
218
250
169
228
141
190
272
186
150
223
223
207
240
227
243
211
205
188
195
258
215
168
167
202
191
189
264
215
231
216
134
250
187
187
196
224
205
251
236
220
180
232
270
214
236
217
117
223
233
226
146
188
221
177
162
188
214
206
163
231
180
188
192
130
196
240
198
151
165
220
159
247
159
182
250
228
194
203
155
214
215
195
199
228
226
238
164
188
186
183
230
196
212
110
189
197
193
186
167
208
169
175
218
240
110
191
157
215
188
267
172
224
194
187
188
194
143
202
241
207
151
193
207
235
224
198
213
168
141
167
182
196
174
211
92
165
231
200
188
195
160
260
141
259
181
158
210
247
220
209
150
217
203
234
196
193
223
216
169
173
278
221
236
180
240
181
161
137
221
155
180
214
169
206
155
193
162
162
202
218
223
235
214
197
182
112
250
146
200
158
183
224
211
164
205
227
228
184
204
214
223
158
200
202
197
214
221
175
198
198
234
209
183
239
250
222
202
241
184
216
193
152
194
186
202
166
161
204
233
160
294
243
177
193
264
181
198
188
224
180
181
220
151
201
206
230
192
218
178
198
145
196
194
204
268
164
193
202
121
181
205
175
256
165
287
200
189
210
208
125
217
198
204
169
168
170
196
180
162
137
285
192
220
188
198
201
214
245
147
214
232
226
178
199
219
203
158
169
211
172
272
184
192
173
214
137
200
214
201
226
189
252
197
248
258
186
152
255
191
202
166
188
243
190
246
264
161
251
180
172
209
174
169
168
172
212
208
220
220
205
165
116
237
148
189
178
174
151
204
159
214
192
198
192
224
195
258
200
242
198
145
177
254
176
200
261
159
191
192
176
155
206
172
190
234
121
251
222
236
211
238
246
251
190
215
228
242
245
200
237
270
206
180
194
218
180
250
196
240
269
158
234
179
213
216
183
171
231
156
181
176
260
211
192
187
155
162
199
234
231
171
209
228
194
219
167
201
221
197
204
228
162
203
180
171
158
183
187
127
257
205
172
142
183
216
234
204
246
164
209
195
215
228
239
253
178
217
222
213
198
215
195
191
136
225
246
222
201
183
244
205
178
228
220
203
221
199
235
173
212
182
213
184
186
236
144
168
267
162
209
236
184
194
189
232
211
216
175
184
149
202
178
230
204
209
200
187
178
198
174
215
216
240
191
193
204
181
214
221
168
195
176
212
174
249
143
237
219
142
203
252
190
161
177
167
183
182
149
151
175
179
182
171
256
267
217
219
201
187
186
262
175
217
264
224
209
180
224
181
225
192
207
191
155
213
239
195
200
229
113
244
188
172
125
224
151
185
171
181
229
210
206
198
157
205
169
190
164
166
150
165
223
175
257
188
223
176
215
221
230
213
169
198
190
174
119
209
235
220
234
223
232
240
234
149
223
171
156
201
188
240
240
199
192
227
178
250
223
178
224
222
156
180
205
204
177
218
231
203
150
223
158
195
234
143
254
204
168
231
277
171
161
236
199
137
227
228
166
190
240
208
211
204
238
173
203
145
177
200
198
175
211
219
165
219
232
262
194
185
229
177
180
192
144
138
190
232
239
194
201
229
230
218
166
184
184
224
207
229
206
226
121
242
143
204
237
209
159
166
216
183
174
182
190
215
222
203
200
205
167
209
144
202
227
247
165
149
203
227
142
271
215
169
193
191
183
231
178
198
253
185
164
176
184
240
217
211
212
144
230
208
206
218
142
184
202
174
166
215
228
195
206
195
171
184
241
233
157
198
193
168
191
178
246
188
210
177
227
240
223
211
214
200
259
186
237
174
195
257
227
192
240
197
143
234
250
180
170
173
223
223
216
226
181
229
167
207
166
141
184
263
178
182
147
188
220
223
131
168
206
262
204
166
210
177
222
174
320
131
199
247
190
197
215
161
218
220
230
226
210
194
187
204
225
228
193
220
162
153
223
199
202
173
172
227
190
252
249
133
177
217
208
213
202
170
155
199
218
244
206
183
226
218
219
226
228
256
199
180
157
237
211
193
257
195
150
198
274
226
209
188
207
171
133
243
196
165
209
157
169
230
226
183
201
148
157
194
177
207
196
126
166
212
207
205
260
172
188
181
153
207
190
230
152
170
149
215
225
195
249
188
207
145
172
141
204
260
234
136
206
106
258
180
116
190
205
196
232
265
173
134
236
158
236
160
198
253
222
262
169
212
210
213
177
147
213
219
191
213
196
231
212
220
141
161
207
214
189
178
185
209
170
205
196
197
212
236
151
251
142
232
168
193
228
199
97
236
182
149
154
223
228
167
201
176
183
196
315
172
161
218
120
177
219
190
203
188
194
128
227
228
197
248
178
232
159
247
271
185
195
171
231
261
191
240
187
157
235
234
167
226
248
235
168
227
245
219
225
206
188
171
166
143
206
168
189
218
267
183
202
215
135
221
234
213
214
244
172
183
190
231
181
250
236
155
234
183
89
233
186
250
227
219
196
147
189
222
203
176
186
144
206
174
146
181
186
227
251
146
194
216
177
135
138
174
211
127
234
188
257
277
148
196
186
287
265
178
157
248
182
214
201
157
193
217
209
216
245
257
206
216
223
179
215
177
231
110
212
156
157
187
172
206
136
250
158
201
187
142
216
207
115
265
171
183
162
191
176
264
141
246
197
192
132
217
182
224
200
278
177
188
196
141
172
215
169
210
170
164
184
229
187
186
188
200
229
218
130
186
253
199
177
191
169
167
202
225
237
206
210
199
122
244
212
212
206
207
185
165
273
198
199
237
214
217
251
202
223
261
244
203
193
152
135
222
166
210
241
171
189
161
178
192
189
199
194
214
190
184
248
197
136
179
252
227
203
219
250
248
241
215
201
196
249
206
210
217
202
157
211
171
156
247
134
236
188
217
188
179
173
194
244
237
194
208
223
242
188
225
172
172
172
230
221
203
221
222
223
177
233
165
180
282
160
250
250
177
171
140
239
238
169
207
188
230
200
246
147
228
224
190
206
142
183
219
159
254
211
250
166
121
133
161
205
191
221
155
246
150
195
187
217
241
170
235
252
213
130
272
148
156
233
203
216
172
172
211
199
199
129
213
206
200
184
190
213
174
195
236
275
212
211
214
198
238
207
222
216
212
165
175
166
273
207
200
221
189
280
175
158
178
150
209
131
217
203
191
230
180
193
222
167
193
175
188
190
210
196
163
148
198
211
177
162
143
236
182
207
234
225
220
167
244
224
239
178
245
216
190
225
178
210
204
139
249
222
127
146
131
192
162
163
227
191
267
215
225
184
218
219
185
163
124
257
190
175
237
229
191
223
251
190
169
182
175
181
195
237
225
196
195
208
204
202
177
175
250
142
153
187
224
234
189
191
168
170
216
230
180
172
150
225
187
157
232
228
213
182
217
225
187
164
231
194
231
273
203
181
182
185
187
159
223
211
175
152
197
166
188
124
151
150
178
201
243
229
196
214
212
211
241
192
197
242
148
210
175
242
201
227
195
208
175
181
165
234
149
159
227
156
234
191
230
176
219
202
210
171
191
208
166
220
224
199
234
234
222
168
224
259
200
243
161
195
237
241
173
219
190
212
202
189
174
176
224
200
201
200
287
192
169
248
213
203
162
205
231
290
225
210
229
171
199
137
254
171
220
247
218
183
208
156
110
200
240
145
179
230
178
164
237
214
212
286
164
236
140
162
182
179
182
189
215
208
175
204
165
176
168
228
282
210
154
194
149
209
169
231
203
186
212
165
242
274
178
244
181
299
139
200
233
198
265
173
181
230
234
232
131
178
263
139
171
239
218
173
213
231
178
221
240
263
180
174
269
183
193
250
188
209
166
188
193
151
206
217
203
184
208
236
193
252
171
215
201
203
179
183
134
211
232
223
240
164
183
223
214
206
176
174
96
228
231
142
185
166
189
175
202
193
152
260
209
193
216
142
162
178
271
175
232
214
217
180
262
211
270
259
231
204
248
250
175
222
216
191
231
196
220
172
219
197
209
169
182
271
213
158
160
236
236
159
204
139
194
172
216
207
286
145
241
183
234
189
232
234
158
243
188
190
209
202
168
216
194
220
205
171
232
172
146
219
196
220
246
203
209
230
235
162
215
181
134
160
239
177
219
203
273
213
199
218
182
207
282
183
139
172
208
153
170
140
224
223
210
198
245
248
128
207
129
255
246
207
192
218
221
174
206
200
151
202
163
160
185
214
156
169
196
216
205
152
198
181
185
228
234
177
249
214
194
242
239
160
214
172
164
178
179
185
212
249
161
228
243
237
245
196
244
146
183
236
168
223
162
203
180
218
235
164
117
256
232
213
198
207
221
174
215
201
246
183
242
245
154
160
163
219
164
204
161
172
243
179
178
177
172
192
210
245
235
260
176
244
150
206
218
174
185
185
205
147
158
227
152
215
181
239
172
193
193
152
181
213
194
191
198
246
157
277
178
176
203
214
217
213
151
210
210
211
217
272
231
193
173
222
266
231
184
247
228
199
199
225
278
217
186
219
227
212
203
221
191
240
179
175
238
160
183
205
233
194
198
244
209
191
265
208
212
262
247
167
192
182
222
226
237
235
203
244
191
204
233
235
181
226
233
178
272
227
207
174
195
209
123
209
231
198
163
187
227
231
216
199
179
179
172
264
211
211
236
170
223
179
204
192
177
141
181
204
148
236
230
223
227
226
209
205
238
164
144
164
235
162
159
252
244
211
172
241
174
198
244
241
164
253
156
252
145
241
176
201
226
171
191
207
208
149
224
205
213
163
189
182
163
179
164
265
177
196
247
175
233
118
214
182
213
186
191
186
207
141
212
228
214
169
203
261
211
204
189
227
254
190
184
140
209
206
280
209
140
224
194
156
246
209
165
200
150
169
202
203
200
221
264
245
145
135
186
229
126
228
243
184
156
195
171
207
187
214
221
207
212
264
192
172
216
218
193
233
213
255
229
230
202
158
238
218
179
175
218
158
219
205
138
197
157
214
150
219
238
195
224
250
191
149
215
154
200
183
199
231
161
258
225
190
182
226
147
196
243
212
235
215
234
205
202
198
269
226
174
165
227
187
167
209
175
204
197
115
224
228
191
192
229
210
216
187
200
251
223
235
199
173
165
122
244
206
193
155
221
190
150
250
194
182
178
251
213
217
158
304
211
219
223
201
209
247
226
246
188
240
149
228
194
228
202
202
212
171
220
234
240
187
249
190
254
168
110
217
235
234
220
198
219
187
226
206
183
191
168
226
221
200
201
201
236
234
251
175
197
268
229
172
194
201
269
209
231
159
234
191
236
203
200
162
196
181
193
178
209
144
241
225
196
204
238
221
143
171
216
206
165
183
221
216
163
180
223
233
181
235
253
214
216
140
162
200
171
165
216
249
183
260
236
223
233
242
190
211
168
84
203
132
201
138
233
189
169
219
222
109
234
266
136
189
200
246
185
206
167
264
176
219
230
228
192
251
194
207
259
148
200
207
181
189
214
207
185
205
239
230
248
218
188
214
156
227
201
195
225
236
228
234
146
178
196
220
239
233
182
262
182
190
121
187
219
216
187
211
225
183
187
223
236
242
223
187
172
263
217
228
134
150
268
223
202
171
169
201
192
154
200
224
190
181
196
231
268
246
199
212
258
179
197
190
203
223
194
204
206
166
197
226
190
198
216
180
185
195
231
201
228
193
216
235
198
187
209
221
208
192
195
179
167
215
188
133
254
208
177
201
226
188
239
145
216
177
254
206
228
165
208
229
177
154
206
251
202
170
205
282
173
175
254
221
223
197
261
229
220
206
194
150
174
216
171
238
204
176
195
193
199
142
181
167
181
207
197
178
166
244
175
212
267
116
205
183
246
198
211
248
217
258
223
130
192
167
155
249
223
183
241
235
242
180
217
167
182
142
237
202
183
268
246
265
103
232
184
231
212
190
194
187
161
235
218
268
187
187
196
210
199
216
249
215
196
190
208
188
249
142
194
214
241
221
223
209
191
197
213
143
202
213
230
250
244
217
176
216
166
174
227
126
187
237
122
183
188
170
212
168
242
175
180
259
252
239
203
189
186
248
135
181
185
204
174
184
260
227
256
221
176
205
205
185
251
183
171
213
232
232
199
178
190
217
257
199
154
233
189
167
193
181
179
160
172
188
234
182
200
226
217
151
148
168
164
178
149
204
245
246
149
157
252
259
173
172
247
256
301
147
172
179
211
200
244
215
164
196
158
168
216
241
236
244
183
206
172
163
216
171
139
217
209
254
240
169
196
241
210
211
209
164
147
176
199
187
296
223
106
240
249
239
182
188
186
193
241
231
217
188
200
192
214
171
170
213
203
253
187
245
208
208
239
203
163
147
267
131
169
158
197
195
211
143
170
225
179
189
197
160
151
197
140
212
189
185
203
232
184
165
285
233
190
231
224
202
268
205
199
191
199
165
162
221
172
230
153
218
181
162
160
174
164
187
201
201
195
198
238
161
228
187
179
212
208
169
167
219
178
225
136
231
217
143
206
194
188
175
171
179
224
162
224
246
194
166
212
206
235
230
262
185
186
167
222
205
227
264
275
263
248
148
165
140
197
146
216
197
209
201
219
213
171
191
227
219
203
161
205
217
171
223
250
156
166
169
207
187
192
160
183
244
220
219
122
249
147
234
250
174
242
219
199
220
249
142
121
208
182
191
209
212
224
184
217
236
260
239
200
185
231
198
196
209
206
205
213
241
249
230
156
226
194
182
158
171
156
189
155
231
215
169
261
140
204
151
182
224
189
177
199
168
169
232
204
185
217
202
137
244
206
259
184
195
197
167
169
214
188
200
167
154
183
246
148
204
181
208
137
214
204
247
264
216
235
205
207
201
189
195
125
271
221
165
210
244
122
188
207
166
210
169
116
210
213
132
244
183
219
161
167
193
219
216
171
243
231
255
232
282
274
150
199
194
186
240
201
201
204
113
135
152
172
144
184
225
268
240
211
249
236
249
201
209
207
229
181
213
252
213
203
204
165
196
193
181
155
242
180
150
252
237
208
262
248
161
221
179
213
126
188
252
167
143
173
210
186
208
157
198
232
275
214
164
207
187
154
172
216
193
193
209
130
211
201
132
217
174
147
139
214
152
216
197
195
180
167
181
260
225
190
186
235
180
179
159
216
105
220
183
210
164
161
163
186
165
174
147
150
194
278
234
151
173
178
241
208
180
218
190
159
169
251
179
225
195
192
179
219
210
261
160
221
248
204
263
199
257
223
226
207
245
203
223
209
204
184
216
205
224
182
223
199
170
207
264
191
199
185
212
217
192
233
212
172
256
222
240
273
210
203
195
255
197
183
235
179
170
180
206
202
184
202
202
222
145
201
171
150
265
152
226
221
206
172
207
200
211
221
218
246
186
213
201
100
196
169
208
168
226
187
244
171
209
187
202
213
284
238
210
209
208
230
240
210
227
224
210
154
175
147
233
260
171
222
175
233
159
233
166
264
257
186
189
183
247
175
212
218
246
205
237
202
193
163
213
265
216
201
206
201
215
180
249
211
215
193
236
177
232
196
197
206
167
199
191
244
239
183
202
217
241
131
223
213
190
215
212
230
172
187
254
167
214
239
169
190
218
192
190
151
221
261
172
147
195
189
235
227
260
243
249
212
204
263
253
228
113
228
227
169
251
207
175
210
252
233
226
147
238
211
210
230
244
195
191
216
195
209
232
189
184
244
226
241
184
195
157
210
247
112
214
266
170
182
119
240
208
196
206
184
241
237
198
144
210
199
204
215
251
257
150
190
200
176
250
187
261
172
203
154
194
158
232
210
192
211
259
186
250
152
172
164
160
213
271
214
179
237
231
159
151
173
184
188
157
174
208
177
174
175
241
194
254
151
229
212
197
229
192
167
205
177
161
221
160
189
208
201
215
185
245
188
154
205
194
154
246
180
151
171
192
185
168
238
193
194
161
147
147
215
188
209
224
217
203
238
220
228
179
185
172
226
233
192
205
268
251
225
216
178
228
181
214
233
155
241
225
211
180
242
241
217
185
224
214
217
199
222
217
222
245
207
212
175
242
191
240
193
238
184
233
201
162
212
173
175
188
200
214
231
192
216
231
222
153
195
194
203
234
197
220
157
222
122
206
170
163
218
201
196
115
167
139
206
195
170
246
185
162
188
217
173
175
249
207
230
247
197
242
198
199
125
204
206
171
171
191
266
176
187
189
222
190
185
252
122
256
256
227
229
240
188
212
189
212
199
199
203
202
167
226
227
225
172
206
226
245
235
213
171
181
237
248
221
185
221
261
262
217
214
243
190
218
206
171
172
137
241
154
238
149
178
193
201
225
201
158
186
145
160
192
214
185
244
238
149
195
178
157
197
183
238
137
187
186
236
202
209
216
250
176
188
240
239
205
192
171
247
199
215
215
259
137
167
175
159
134
220
204
192
195
159
152
242
175
231
265
242
213
259
187
222
191
215
222
188
145
267
199
197
223
217
250
167
210
183
227
196
215
146
213
131
172
211
227
173
203
133
223
216
218
212
214
171
200
197
200
177
189
227
216
222
197
194
221
141
140
175
202
226
251
179
201
143
248
227
161
156
187
209
192
198
222
186
188
144
186
158
185
178
221
147
134
253
191
231
228
194
147
223
170
230
250
211
176
168
142
229
224
226
156
123
270
183
177
272
233
193
204
187
206
219
204
165
229
266
189
158
234
179
194
122
181
205
221
212
208
229
162
268
152
151
206
226
180
240
193
203
144
182
204
229
175
177
197
213
236
224
194
223
157
192
299
248
195
242
211
202
219
144
250
184
187
212
199
216
218
253
162
227
233
238
217
255
173
203
200
242
215
184
222
191
212
211
187
213
231
206
212
186
242
197
212
203
227
202
179
206
277
214
130
251
177
217
147
131
159
235
245
217
230
236
169
206
120
218
215
203
184
250
209
184
182
206
233
226
236
210
200
203
231
251
252
243
143
149
215
228
174
220
237
141
229
195
236
185
200
242
134
210
172
193
241
179
221
214
194
215
204
172
214
222
195
224
159
238
189
235
178
215
220
183
126
176
192
241
265
245
208
212
206
231
193
86
230
202
153
192
184
195
119
231
173
175
199
183
205
224
166
221
187
238
186
208
139
125
236
206
161
154
188
170
169
215
212
172
197
272
234
249
210
170
190
207
166
200
145
146
201
208
172
187
205
213
185
242
220
142
248
184
147
154
194
199
190
223
155
203
210
192
229
157
207
192
158
171
182
195
172
170
252
111
188
224
237
193
295
199
215
207
162
247
141
224
187
218
230
209
184
192
191
220
309
224
167
221
171
213
192
205
183
173
185
158
208
166
196
222
203
194
220
178
227
174
217
176
176
149
138
226
200
266
176
257
224
199
225
142
173
246
204
131
176
166
212
213
152
193
159
219
189
203
229
196
244
213
185
148
204
159
221
183
170
164
171
221
192
179
147
208
158
258
184
158
201
242
220
243
198
195
153
203
134
205
210
209
243
182
115
208
216
170
286
164
183
226
240
201
253
163
246
250
218
204
211
249
208
183
205
167
162
242
194
204
196
156
152
202
179
206
208
160
182
240
206
243
240
190
154
157
150
201
174
188
178
187
217
149
214
254
186
175
231
149
167
237
198
207
192
211
207
197
137
200
215
194
225
212
184
196
153
207
231
187
215
168
230
232
198
176
208
201
249
215
227
162
240
186
165
162
151
181
220
207
189
205
210
194
279
220
235
181
170
227
206
241
202
161
230
205
252
230
205
169
154
208
257
168
232
219
240
267
149
232
152
205
207
179
219
209
130
216
238
208
212
151
175
218
155
242
227
200
236
169
218
207
197
214
158
214
183
232
203
202
221
161
200
198
207
229
167
219
178
228
199
198
258
233
182
243
202
204
137
181
143
159
221
226
170
220
243
244
191
208
245
229
219
186
211
148
141
201
207
243
226
186
206
237
201
113
194
223
180
170
178
215
196
153
200
249
212
196
219
196
183
208
221
198
211
274
185
235
147
179
202
182
185
121
257
180
226
243
235
181
237
162
220
197
162
206
187
160
173
151
161
205
210
275
193
218
259
200
201
174
134
192
237
173
212
162
262
175
172
208
197
177
272
190
171
232
193
194
223
209
202
199
221
199
196
199
133
187
215
263
180
234
190
223
212
122
278
176
161
196
206
179
219
223
206
185
216
183
158
245
229
232
141
161
130
213
224
194
203
217
184
203
243
172
234
275
197
201
190
220
251
273
180
252
194
224
204
182
227
164
236
222
187
195
212
131
245
246
131
209
184
239
194
227
163
207
217
211
156
263
222
181
242
169
191
178
264
183
223
232
193
256
202
192
208
268
167
178
200
200
122
191
230
227
230
247
182
179
224
192
181
152
217
193
214
180
236
186
170
222
195
221
165
183
267
218
208
181
219
237
287
252
218
198
191
139
165
179
200
236
253
254
216
246
178
137
218
214
208
160
154
221
225
247
236
217
217
192
153
145
179
181
214
187
154
162
158
187
153
178
208
183
266
182
262
228
176
189
172
200
252
178
164
205
215
223
201
156
143
282
242
197
199
186
172
187
203
218
182
164
197
208
237
267
204
217
251
148
272
253
254
126
178
234
188
142
157
223
146
131
200
233
199
228
180
204
190
252
203
170
185
206
207
159
262
222
173
198
165
253
198
121
182
215
220
197
220
199
137
254
221
231
145
218
152
228
235
149
191
167
228
233
200
210
173
226
144
187
232
127
198
192
172
227
239
230
213
204
243
189
228
209
216
210
178
220
194
186
203
198
170
264
220
145
136
157
252
239
209
265
226
162
209
203
154
197
231
228
183
244
196
176
204
181
186
169
175
214
171
184
208
211
231
198
192
196
176
225
192
244
229
199
213
215
158
215
191
183
196
228
162
176
179
207
270
185
206
178
174
221
126
167
244
222
190
167
213
186
216
209
225
235
211
189
138
102
185
220
155
192
122
163
248
174
202
201
230
229
233
221
249
196
176
180
230
192
194
180
276
208
223
193
240
220
194
210
249
152
242
208
174
121
209
246
209
243
225
174
246
220
162
196
220
230
194
234
142
164
240
251
136
183
204
251
184
165
222
138
227
255
213
205
190
143
241
224
192
216
266
190
129
183
153
159
200
202
201
144
123
200
187
203
160
215
219
231
158
123
234
219
234
204
266
240
149
216
228
143
178
252
211
185
245
217
141
146
150
257
133
199
154
197
202
177
197
235
163
182
202
179
223
194
149
144
164
198
235
199
172
199
241
176
212
170
169
223
193
196
174
170
217
174
155
181
215
196
181
185
242
239
209
201
170
174
226
229
147
225
163
194
228
196
218
224
234
192
202
196
225
189
149
163
181
178
142
175
238
239
185
226
144
218
262
270
200
200
194
209
241
229
200
268
244
209
189
192
232
178
250
221
217
161
158
206
203
173
205
227
222
198
130
212
133
206
263
215
226
190
236
166
215
186
245
181
266
198
227
173
177
165
217
220
231
188
114
187
145
176
136
232
183
204
135
254
211
215
214
244
176
238
193
249
203
211
226
216
211
233
171
169
202
235
230
189
200
229
121
199
203
208
257
170
177
180
230
163
162
174
247
290
171
265
122
221
197
201
180
252
148
230
212
249
245
264
191
174
227
193
189
222
247
212
224
231
214
208
172
201
180
230
169
217
175
230
235
247
179
222
183
196
129
236
196
135
191
182
201
143
228
234
187
213
153
217
214
158
222
218
265
208
224
212
234
207
214
238
169
198
270
189
219
182
201
247
217
219
171
173
192
141
220
203
239
253
176
185
192
225
216
219
216
226
217
196
195
227
204
93
200
152
178
198
211
223
136
100
193
226
172
205
186
236
119
204
171
233
260
252
217
200
209
249
120
106
197
162
257
234
171
265
226
223
125
192
245
277
254
175
174
193
195
219
171
213
226
174
165
179
240
200
217
198
223
272
265
140
227
121
145
168
222
235
224
191
189
226
184
183
195
225
219
225
222
177
242
204
247
195
203
225
177
187
163
213
207
202
188
227
205
201
240
87
198
216
185
224
195
193
239
233
204
162
215
159
230
253
217
205
245
208
235
210
199
214
184
226
240
162
239
202
226
141
274
245
257
193
195
198
234
157
165
192
170
201
193
190
166
146
196
164
213
210
198
186
259
233
155
212
147
226
152
180
227
219
169
197
194
153
205
206
238
203
214
188
225
224
219
198
225
249
271
239
233
172
179
170
228
181
220
210
232
153
139
209
193
133
195
222
153
218
197
194
188
192
184
192
201
219
187
179
210
243
186
175
220
191
216
212
194
248
206
170
200
235
187
166
244
219
228
191
119
214
185
196
233
118
242
187
141
191
227
184
113
240
138
214
213
251
228
166
200
227
236
222
203
203
213
211
184
209
167
199
229
215
212
166
185
159
199
235
215
220
252
208
157
160
237
236
171
227
174
207
190
243
146
196
210
210
201
207
164
167
198
256
196
185
201
198
199
214
209
161
144
206
191
169
175
233
191
232
193
162
205
179
159
198
234
156
191
278
192
175
255
195
175
169
184
147
188
204
201
174
153
218
194
149
241
206
172
199
147
200
222
260
198
201
207
189
149
201
235
197
153
174
155
186
170
146
221
201
222
183
203
172
219
141
207
127
176
195
149
189
222
254
156
197
207
150
205
127
163
187
242
188
176
199
197
138
205
204
215
212
191
263
216
180
174
212
173
172
206
183
201
165
215
212
176
238
192
159
233
226
226
216
213
215
239
217
234
197
150
202
135
247
175
157
218
204
180
142
196
207
201
254
257
196
167
189
207
197
179
217
161
194
200
187
195
205
217
240
226
199
174
231
252
250
237
260
132
195
154
241
228
167
185
210
197
180
187
211
207
156
206
207
219
219
179
191
196
267
214
216
235
161
173
192
168
260
200
190
171
160
266
204
201
204
207
256
217
173
217
187
176
226
202
203
132
199
239
178
165
244
229
172
223
197
172
206
176
269
288
183
210
191
158
199
178
110
226
172
231
193
254
178
188
215
206
230
194
199
199
182
234
170
113
157
192
198
233
190
119
213
189
160
175
171
110
150
194
156
236
194
225
204
127
176
191
154
187
173
195
248
184
184
200
216
228
227
170
215
194
211
167
171
232
133
241
183
201
166
191
204
166
211
205
144
229
216
234
202
176
177
205
217
180
188
246
228
201
215
135
217
206
215
219
174
175
225
155
227
183
209
244
213
235
252
179
200
252
151
223
127
174
173
210
198
215
257
251
204
208
194
215
241
219
181
190
168
218
157
210
201
217
226
189
249
224
144
257
220
210
170
213
176
249
158
190
238
157
194
220
168
178
169
166
128
209
212
207
118
182
233
210
207
228
245
230
208
279
128
228
188
224
169
240
201
246
202
161
182
199
178
254
247
234
197
192
157
163
197
194
196
153
219
180
257
255
166
236
236
205
246
256
175
217
164
258
194
255
275
222
192
185
217
227
192
272
172
219
244
238
243
189
171
248
174
244
198
227
144
199
243
166
193
218
189
168
154
187
190
190
143
230
164
240
180
194
146
192
189
223
246
248
169
201
205
180
203
194
212
210
195
208
102
251
237
220
148
261
234
230
196
214
135
183
193
177
205
191
226
242
196
220
206
191
226
220
172
209
200
143
254
175
220
213
192
201
143
177
230
139
210
254
223
257
175
218
205
187
244
184
249
209
198
229
175
172
199
222
215
185
231
246
191
171
222
201
165
270
223
215
200
263
191
199
193
202
268
244
171
238
257
245
176
142
232
203
187
170
216
204
228
158
195
165
250
197
168
163
241
228
162
215
158
218
232
152
291
202
206
176
181
187
223
275
174
132
219
191
220
185
219
193
283
212
159
174
286
241
172
221
230
236
233
138
204
200
191
249
170
158
144
133
208
220
131
164
235
188
226
208
185
176
236
179
141
206
168
148
190
195
233
155
200
248
236
168
241
249
212
225
208
213
189
228
187
195
199
136
197
162
217
167
162
211
206
188
162
218
243
183
172
190
187
186
190
197
171
179
215
227
167
188
224
238
218
220
210
166
144
239
237
192
209
141
128
170
204
282
201
204
147
238
223
146
222
171
221
223
116
272
157
221
145
102
159
212
150
205
188
203
223
206
250
166
205
256
174
219
198
235
213
199
162
184
159
201
167
98
205
188
226
147
157
249
202
200
187
196
161
247
159
204
256
176
151
251
249
243
201
198
150
273
209
195
131
202
176
195
208
213
267
213
225
211
159
210
192
205
208
216
212
171
228
276
203
213
189
196
222
249
220
217
175
196
142
258
213
169
222
185
215
190
187
183
225
237
200
206
225
176
183
243
211
202
287
177
273
193
193
211
192
130
195
178
209
162
184
239
197
241
187
219
200
186
193
233
203
187
208
247
216
196
176
237
112
176
193
268
222
217
160
215
244
244
259
195
210
209
226
224
187
204
180
195
207
181
208
222
178
133
234
216
213
182
216
134
222
222
222
227
223
165
192
236
185
205
178
230
139
174
218
262
149
224
163
238
149
210
225
157
220
188
243
213
185
169
193
212
174
228
218
219
91
211
181
153
181
232
207
235
231
188
177
164
224
180
196
198
180
148
175
188
223
270
232
219
219
241
258
239
189
211
238
222
208
240
217
179
162
143
185
212
167
187
257
195
232
199
159
215
226
174
189
230
211
189
155
244
172
207
208
174
216
205
208
200
265
151
170
184
156
212
220
205
151
132
132
243
236
195
226
153
240
191
225
184
193
177
190
258
207
214
240
209
217
172
243
213
195
228
209
187
171
210
157
173
217
183
164
199
158
162
177
217
248
178
176
190
151
147
209
239
220
217
234
209
217
194
235
210
185
188
197
154
250
148
180
249
206
195
231
98
180
257
200
215
213
226
224
161
185
230
143
198
182
242
223
212
200
221
218
230
157
229
154
233
204
261
143
244
174
220
219
189
228
218
251
181
253
203
211
222
146
223
171
201
161
250
182
206
244
180
189
181
240
230
181
183
208
181
239
224
263
264
256
201
218
237
197
179
182
201
182
233
250
208
190
198
179
240
129
240
192
219
265
193
232
213
202
245
170
219
115
222
151
259
185
211
194
238
200
190
168
148
194
218
98
208
157
169
175
207
211
180
207
236
193
251
248
191
189
185
110
178
143
131
173
166
193
166
180
191
258
188
250
184
237
212
224
208
202
147
171
206
268
146
197
161
226
145
162
160
242
241
251
176
228
242
180
228
154
176
199
198
201
215
178
201
199
254
222
227
191
244
170
193
163
243
228
215
167
246
228
231
195
265
208
212
226
207
197
208
185
212
178
185
180
184
200
169
215
199
218
200
193
181
186
199
248
186
203
236
207
180
164
225
169
238
185
210
219
153
209
202
208
244
179
226
216
164
177
235
185
219
205
146
185
180
194
163
152
169
187
229
230
179
234
290
212
196
174
179
163
190
207
151
162
208
202
192
166
218
197
209
209
221
176
215
214
146
201
213
265
205
257
196
205
182
183
241
191
193
146
152
231
235
182
218
235
178
173
215
217
191
203
243
246
226
193
227
183
242
184
248
153
253
226
156
207
213
168
172
189
226
148
187
214
177
163
214
190
233
157
206
208
196
179
267
168
211
225
182
211
168
206
174
232
174
220
227
180
218
235
231
246
252
166
161
166
188
194
229
173
163
175
252
231
233
228
139
198
182
238
187
146
155
187
172
250
160
213
205
223
193
172
258
236
202
169
193
201
190
234
242
181
201
176
222
211
280
158
202
171
192
232
135
185
208
178
184
175
206
210
195
178
172
217
136
270
133
177
156
192
239
185
218
204
205
170
191
184
248
246
197
153
234
231
194
253
229
276
200
202
217
188
221
161
146
206
234
194
208
262
197
194
204
244
227
195
200
184
198
226
216
148
245
251
199
233
167
260
269
193
206
180
184
224
210
242
219
190
242
205
191
230
181
262
205
202
242
213
138
146
193
160
212
217
199
194
267
182
198
236
272
201
203
216
248
158
161
159
164
194
163
200
166
212
188
173
199
193
201
155
261
262
231
227
202
241
216
196
195
181
134
137
192
227
180
183
165
202
142
236
204
215
187
225
166
206
169
250
197
247
216
149
209
197
227
150
207
198
223
160
159
203
219
194
288
171
166
231
194
208
202
240
221
203
195
209
162
161
196
219
192
194
170
210
186
221
218
210
200
160
184
202
151
150
245
226
265
167
220
159
195
239
194
204
239
182
210
202
142
139
253
201
266
225
198
198
125
185
153
158
194
188
230
222
163
133
203
180
187
194
224
202
204
191
210
183
257
220
254
207
217
228
228
226
148
197
216
199
147
202
176
201
202
157
220
214
154
248
215
208
169
257
198
171
223
243
150
212
135
163
194
176
149
185
250
167
164
218
179
201
173
188
218
227
130
234
155
191
168
248
202
189
205
219
215
169
236
175
210
180
162
237
185
179
199
214
185
197
225
267
104
143
199
218
262
208
206
195
218
163
160
195
105
129
211
141
182
214
157
253
144
134
257
165
245
186
203
173
199
183
214
205
201
215
204
211
250
207
166
179
223
157
161
177
189
217
144
201
232
177
261
201
188
136
235
177
148
223
217
238
201
240
171
211
216
210
227
204
211
162
153
205
209
203
203
211
254
237
165
181
216
207
235
207
169
219
224
188
164
208
174
186
225
224
152
201
174
163
208
202
219
212
195
111
224
219
139
127
229
193
151
177
255
245
171
226
199
180
168
207
224
241
184
235
132
269
193
209
179
196
204
185
254
156
275
202
184
237
184
176
183
214
259
189
270
204
206
227
205
163
153
186
266
146
255
313
196
188
229
206
202
150
186
250
270
202
235
198
203
257
232
238
190
184
239
133
222
239
145
155
209
219
252
201
156
159
218
159
143
210
244
199
214
156
174
199
125
200
231
223
245
203
180
217
143
216
181
140
180
162
179
148
210
223
241
229
167
186
184
276
209
179
170
139
225
227
167
190
177
256
178
229
268
157
146
206
208
170
233
153
222
170
196
191
133
183
206
157
225
167
190
181
209
197
211
126
165
183
149
218
168
242
166
180
202
142
207
210
147
165
171
221
228
205
179
184
234
252
196
186
163
219
241
209
199
196
177
185
183
195
192
203
188
309
233
166
156
235
221
191
275
245
192
196
128
196
235
215
203
283
202
206
203
187
217
203
173
167
150
228
205
238
243
171
190
158
186
200
181
190
197
147
190
198
122
214
214
175
242
228
170
233
176
224
214
202
158
122
233
216
220
236
237
143
213
171
236
203
210
173
214
185
200
202
228
225
250
182
126
227
177
196
225
133
148
186
194
229
212
266
209
205
226
114
195
199
211
200
182
233
215
206
255
150
145
202
243
196
104
169
218
205
245
232
234
146
195
233
198
178
133
200
205
226
170
224
214
172
235
193
233
178
157
149
190
200
247
175
187
153
185
206
213
205
284
187
240
190
171
208
195
268
225
199
203
162
202
145
180
234
180
138
189
194
164
248
199
180
198
195
207
213
223
270
220
178
228
208
157
211
217
176
112
185
213
238
216
95
231
233
137
278
196
222
162
175
229
235
133
194
154
210
218
184
187
210
190
236
222
191
212
141
210
173
136
260
183
188
189
189
217
229
232
162
180
179
209
218
196
239
242
232
274
227
214
230
172
124
237
159
268
187
207
182
172
190
218
236
236
202
204
194
205
238
200
164
210
245
160
154
199
261
184
186
229
210
187
274
159
219
206
167
240
184
234
209
210
261
118
151
192
180
171
177
156
235
208
165
202
200
190
159
94
190
210
202
149
154
161
181
203
171
173
208
234
177
242
189
177
170
190
221
206
226
173
221
187
212
176
222
192
206
165
281
208
227
244
152
197
187
153
199
260
209
205
176
208
235
214
257
181
213
202
167
245
235
157
151
225
204
194
223
229
142
201
250
188
206
170
227
153
246
216
225
159
163
209
219
146
126
185
143
150
166
227
269
136
202
237
209
218
209
220
197
229
238
214
202
200
204
276
216
216
177
234
192
219
176
204
133
227
221
147
230
194
184
187
226
188
153
211
244
192
164
207
200
182
223
192
197
256
233
206
206
196
180
204
261
267
146
148
290
230
243
184
143
205
274
217
185
186
171
171
154
145
241
210
172
141
248
193
222
209
176
212
253
208
216
206
190
264
223
264
216
176
192
178
254
192
198
224
205
232
196
190
178
230
237
223
189
227
202
218
207
153
227
176
217
187
134
196
204
227
176
193
185
248
243
207
192
247
200
226
239
198
170
188
206
275
193
251
237
239
229
243
225
178
180
157
170
233
215
167
236
152
183
163
184
132
151
197
247
201
205
267
148
262
235
136
232
205
190
190
198
145
204
232
254
254
135
215
215
193
150
179
217
186
191
178
201
202
223
236
212
246
214
190
191
157
279
184
237
197
255
206
134
211
233
200
212
231
206
239
220
209
159
208
193
229
185
210
158
186
129
187
183
242
235
216
179
187
244
157
172
223
259
225
186
180
178
165
184
233
194
194
231
189
204
191
176
151
183
259
196
191
166
257
194
198
194
217
208
219
139
239
181
175
184
158
193
239
161
198
144
143
153
207
192
215
259
210
232
173
172
214
252
170
283
198
131
218
236
143
180
178
194
180
194
219
184
258
212
193
211
214
176
207
203
151
171
175
219
243
179
207
193
218
192
209
205
172
199
243
183
236
231
164
238
196
232
199
128
180
199
158
202
153
229
162
218
210
157
178
248
177
215
228
196
223
182
203
217
147
171
131
197
239
184
227
186
210
209
206
215
221
229
204
186
238
210
229
203
239
217
232
216
220
198
168
201
175
206
171
206
197
188
222
214
177
176
153
237
243
198
172
197
187
195
205
214
163
158
268
234
215
222
221
197
176
212
208
154
213
196
207
184
186
216
246
228
213
269
234
211
197
219
221
217
160
179
178
173
174
140
228
204
165
181
168
271
189
210
235
197
195
200
203
243
198
112
134
190
207
207
218
201
199
215
240
225
175
145
182
210
260
169
253
213
177
212
206
182
250
180
240
222
206
202
221
93
169
183
243
197
232
240
95
193
164
178
288
225
158
167
149
193
177
221
179
217
167
199
162
160
167
188
228
218
215
174
211
231
166
228
267
259
178
149
162
188
178
170
253
201
207
257
190
135
197
213
181
167
165
145
234
241
224
123
195
221
257
186
199
216
198
162
242
208
202
246
193
193
206
173
152
211
212
207
245
178
195
217
185
183
202
218
172
196
137
221
152
234
230
194
217
220
235
227
260
215
220
210
159
232
226
221
140
234
243
170
239
266
221
167
228
204
215
251
204
207
184
193
161
129
181
231
233
193
171
184
218
213
154
213
253
186
128
201
212
193
211
185
251
191
162
206
222
168
198
195
165
216
188
184
229
251
175
173
198
219
201
214
235
180
145
192
204
143
233
155
208
258
148
217
208
194
195
172
260
238
152
221
224
164
173
220
198
163
181
218
158
199
181
149
229
256
190
212
212
175
277
236
211
194
218
217
172
238
204
209
220
225
175
171
169
227
213
151
154
154
151
190
226
176
184
170
202
208
187
115
209
214
221
183
147
232
193
217
259
164
224
208
172
249
199
154
207
198
145
213
193
227
158
199
229
200
158
218
185
161
199
233
168
262
234
158
174
237
151
184
177
195
209
183
209
188
175
247
219
210
197
199
235
114
165
207
204
242
166
167
170
217
239
240
175
194
212
209
160
191
154
184
210
199
200
214
150
208
211
217
179
206
167
156
135
199
143
147
233
197
249
210
184
216
275
178
184
228
206
227
218
164
239
242
233
170
162
196
188
146
151
109
215
181
167
143
190
219
179
203
160
225
150
209
237
156
163
222
140
146
189
242
122
186
209
230
188
233
197
230
196
201
220
136
188
224
115
205
241
187
249
185
144
152
190
160
214
206
192
135
221
210
161
181
198
178
240
202
206
201
195
197
215
171
230
232
215
230
183
199
127
122
184
190
258
213
222
212
158
197
265
131
249
220
252
166
196
189
176
198
152
256
217
226
202
208
190
198
220
201
248
191
163
245
136
238
173
174
150
236
217
231
224
213
154
224
236
195
211
164
209
253
229
172
271
205
226
233
156
180
199
226
246
275
196
141
184
176
161
238
207
186
259
219
145
233
188
218
236
127
182
230
188
227
174
208
240
198
117
224
202
233
215
183
201
242
231
117
213
235
167
221
195
173
171
145
269
181
208
209
202
172
248
213
188
141
255
185
190
125
188
243
267
103
156
157
161
248
196
220
166
191
184
173
210
229
185
148
207
217
228
177
218
165
212
175
212
241
224
240
179
166
148
158
178
201
204
238
190
170
200
161
174
156
162
237
233
204
232
239
194
194
213
243
189
208
201
185
234
219
227
228
159
241
114
205
176
264
190
219
154
144
148
238
171
167
207
215
242
173
178
229
269
197
143
196
229
182
178
197
183
183
205
215
181
253
156
241
166
191
232
166
228
228
256
239
223
241
154
188
186
246
223
206
103
231
107
129
246
167
185
227
255
257
227
196
233
220
246
224
252
177
146
252
232
204
174
206
171
182
238
181
259
162
235
219
231
224
143
201
170
156
243
188
211
172
168
164
245
230
173
195
211
178
228
158
203
210
216
220
172
165
223
185
230
257
178
235
182
192
215
206
202
168
196
149
246
173
184
212
219
143
191
168
210
171
216
153
186
186
216
209
201
240
223
208
158
236
203
174
237
231
189
196
195
180
191
185
235
203
203
150
242
224
218
224
194
222
175
262
165
201
171
168
173
246
225
253
198
154
210
246
200
224
158
211
259
292
202
187
189
218
223
190
183
231
156
229
134
218
173
158
141
183
228
213
258
214
232
166
231
144
135
176
184
257
225
203
159
207
189
100
198
239
182
237
280
238
176
240
182
169
188
174
197
199
172
191
215
245
179
183
214
161
223
233
161
146
220
211
180
192
211
240
204
115
207
230
227
191
160
178
183
201
203
126
205
150
154
252
193
207
191
218
178
165
236
207
150
231
205
213
201
134
264
213
199
174
143
154
278
183
172
188
203
210
169
211
189
253
208
178
156
204
182
176
242
177
182
283
212
193
184
250
152
224
204
245
174
199
174
175
162
223
213
202
232
217
195
249
179
206
233
150
222
208
259
120
217
152
208
190
166
218
227
136
172
175
213
215
242
221
203
133
233
220
161
199
206
176
231
206
153
202
204
261
215
187
195
213
168
217
244
208
241
227
254
222
239
108
253
195
231
208
272
205
226
220
220
167
231
182
178
195
221
194
179
179
188
166
179
230
241
273
199
219
155
172
194
166
233
205
216
189
238
210
165
195
215
195
228
145
210
272
190
151
190
191
181
158
198
188
172
151
213
197
177
210
202
180
188
255
217
228
221
199
219
176
233
167
141
158
228
202
238
146
219
256
165
236
219
207
181
212
154
219
257
190
173
207
209
237
180
195
231
162
189
168
168
211
166
205
258
228
194
209
210
200
224
207
200
197
190
180
217
193
234
187
224
197
220
156
219
135
218
162
170
204
208
212
142
205
213
230
206
204
184
235
157
124
196
187
251
195
211
161
174
116
189
165
226
236
256
256
240
225
172
205
208
175
186
225
200
189
197
200
179
235
270
225
249
272
243
231
113
227
195
203
208
220
240
175
212
203
184
169
255
207
182
178
193
245
228
242
201
154
228
187
164
174
178
162
186
208
242
199
213
183
247
247
214
222
208
207
223
214
221
237
146
183
212
221
184
180
218
204
169
212
214
152
131
193
186
228
213
150
210
166
168
155
210
210
209
145
164
272
163
230
165
188
118
220
172
203
204
243
228
175
147
213
276
197
148
231
239
282
205
242
196
228
221
188
207
173
151
159
183
224
244
200
194
103
261
260
204
175
203
140
202
239
174
174
250
207
152
152
201
120
241
195
196
177
206
226
213
190
148
181
200
230
142
155
261
269
245
206
255
210
179
239
225
194
210
254
209
218
199
199
262
224
237
213
238
210
119
212
172
187
189
155
199
206
228
203
208
205
167
267
241
223
233
186
176
208
207
149
223
185
225
197
158
207
163
195
207
166
244
251
205
122
193
170
228
223
203
195
190
210
188
188
204
186
128
196
222
217
256
145
229
226
185
179
193
201
195
188
144
163
169
264
203
201
177
119
235
245
187
175
153
131
177
267
175
129
210
131
239
223
202
134
225
209
225
240
222
125
209
229
211
187
255
194
180
236
221
217
224
246
177
203
173
213
203
216
226
175
242
112
208
269
201
209
200
208
201
230
137
163
169
209
162
170
249
167
225
188
174
284
226
182
221
185
253
129
201
214
209
180
184
250
232
253
171
130
227
235
180
206
230
230
212
193
179
115
215
203
195
206
154
211
198
198
235
144
189
182
216
219
128
210
223
201
211
169
229
233
208
158
167
129
174
135
119
224
243
229
142
263
245
188
217
159
195
202
214
137
171
243
283
220
188
203
151
219
212
245
242
171
176
192
196
205
170
221
266
184
242
248
250
164
227
213
224
176
152
181
198
241
219
199
244
142
212
131
182
193
175
250
202
228
214
206
206
213
198
264
232
202
191
161
215
223
209
220
179
200
174
243
180
141
153
207
164
167
213
208
159
212
290
183
122
244
208
192
198
157
178
212
210
248
183
243
187
218
231
158
238
183
199
231
238
252
146
223
187
255
162
162
160
224
223
211
163
133
198
233
143
208
150
183
187
239
257
171
202
237
171
253
262
212
243
190
104
168
241
206
187
161
176
197
168
192
180
181
192
141
217
220
214
193
210
167
223
139
206
172
201
210
149
231
188
250
257
234
166
225
110
218
211
218
150
199
181
254
177
201
237
177
224
207
167
192
194
219
172
209
201
206
228
228
161
224
212
174
237
222
170
214
196
195
248
204
230
188
203
217
153
226
293
237
134
154
236
257
189
252
272
202
135
230
202
217
231
178
187
151
145
181
145
147
146
214
223
139
206
214
250
245
195
212
191
182
181
234
232
201
147
199
171
190
200
191
167
204
230
235
160
175
201
231
195
174
198
237
179
214
191
191
208
216
206
202
225
216
146
222
230
255
163
220
276
161
213
240
169
167
213
188
195
232
232
229
199
136
146
166
226
184
246
196
152
243
177
218
228
214
201
176
207
174
140
250
211
204
193
172
193
179
223
156
193
206
194
164
192
264
144
218
204
189
244
167
207
235
205
179
213
214
180
178
274
201
109
203
162
245
213
232
198
233
197
219
173
204
234
195
173
193
186
158
251
201
170
227
150
205
170
137
211
249
224
185
188
179
227
199
219
192
229
220
213
171
229
179
248
217
266
169
163
225
151
221
207
171
166
228
231
215
195
196
209
243
234
200
190
221
154
169
237
185
109
201
175
156
162
189
177
188
173
228
204
150
212
146
202
183
210
223
199
123
142
158
215
219
116
225
145
206
245
267
223
218
222
143
213
238
185
151
204
189
190
207
225
132
220
173
219
242
200
190
193
233
174
201
161
131
256
267
133
168
111
216
213
221
201
169
204
236
175
221
186
233
165
201
150
206
190
204
158
202
215
188
200
208
130
157
255
201
241
260
195
251
193
185
183
176
233
160
203
167
160
262
225
192
182
205
283
219
157
151
204
244
184
225
129
224
167
200
154
152
193
179
238
207
207
241
239
186
227
152
224
192
227
226
181
196
226
173
199
217
163
233
206
154
211
197
215
227
163
193
146
156
158
164
212
249
187
245
198
246
209
166
178
167
185
241
241
220
212
233
152
195
183
174
233
175
217
153
227
227
158
169
177
134
144
241
188
272
237
216
197
206
228
214
185
183
165
172
166
219
227
212
234
166
226
178
200
146
114
177
216
225
206
219
155
190
222
123
157
163
219
216
219
207
173
192
204
201
185
223
193
182
236
209
175
204
230
137
221
204
204
233
130
242
206
217
235
202
261
257
246
236
217
241
207
217
141
213
222
203
152
269
192
202
171
211
114
274
160
160
160
233
218
233
261
214
230
195
168
206
181
179
205
194
266
124
254
205
189
122
134
195
218
178
230
235
157
213
193
178
209
157
181
186
172
214
176
155
247
236
156
176
165
154
181
203
148
179
195
211
154
271
185
230
205
211
118
257
248
188
168
211
175
183
225
204
200
268
196
220
224
230
198
232
211
225
220
192
194
214
269
188
196
214
195
178
161
164
225
171
217
248
181
186
204
181
218
235
213
188
190
173
228
259
187
259
221
185
190
215
223
209
212
210
170
241
225
243
214
196
235
185
216
255
199
220
202
212
210
201
179
225
207
187
174
200
227
200
177
177
138
201
211
174
138
182
209
193
184
232
256
199
231
166
250
209
217
179
325
165
133
239
158
225
174
270
233
155
169
186
148
224
210
191
178
220
212
154
150
139
252
157
191
262
267
198
207
233
246
219
165
222
202
213
183
211
215
233
215
196
217
245
159
137
183
221
153
199
193
226
264
177
172
195
253
170
161
219
214
204
195
203
178
227
269
145
189
235
157
186
265
122
181
237
197
211
146
207
155
201
178
208
203
161
186
182
215
199
179
166
152
220
237
219
176
137
201
181
204
239
171
157
214
134
246
200
227
190
199
201
156
145
264
162
243
179
126
222
212
204
119
193
187
226
219
227
186
76
178
256
152
258
108
236
216
180
145
211
246
214
231
218
210
163
243
208
161
173
238
232
207
206
217
216
236
220
114
216
195
231
195
203
226
181
207
242
169
223
195
237
253
187
217
144
185
231
233
156
246
209
245
196
194
270
256
183
206
236
182
192
246
196
171
236
182
168
248
183
201
172
188
251
140
159
207
168
210
181
205
242
139
196
280
174
185
178
180
224
204
209
211
141
194
219
222
233
156
189
141
195
204
183
209
225
231
154
219
216
156
176
229
140
208
230
185
242
231
217
198
241
231
220
211
193
167
187
203
238
266
195
247
197
211
209
192
200
180
240
212
190
240
248
207
219
190
199
208
240
156
190
195
204
233
207
212
210
199
190
196
178
252
208
180
233
128
233
206
154
204
227
199
244
185
219
195
207
182
195
242
234
217
132
147
154
144
159
200
188
217
252
234
190
243
235
195
190
210
180
163
147
195
134
184
221
214
138
193
189
164
246
256
238
155
162
237
166
201
230
190
177
142
202
238
196
240
228
249
189
128
160
202
230
133
188
233
186
177
244
215
140
202
275
186
203
227
166
258
217
212
265
220
274
207
171
229
256
228
124
193
241
205
166
218
190
190
226
188
251
232
245
224
208
264
164
225
214
211
205
154
197
249
225
224
191
201
201
198
235
187
181
207
210
196
191
232
201
218
220
171
272
233
218
208
148
213
181
152
220
173
227
261
201
156
235
148
233
223
221
208
263
197
199
195
208
189
220
193
160
166
229
229
217
158
183
229
284
164
204
184
149
197
180
243
171
141
232
219
240
219
153
176
274
241
168
220
184
188
149
188
228
161
180
200
184
204
216
218
212
122
155
212
168
229
235
195
162
219
207
210
211
174
163
212
163
217
218
195
206
191
222
247
201
174
212
191
225
212
198
161
248
210
204
222
216
256
251
153
152
167
197
208
200
258
196
162
204
168
180
235
192
172
200
250
214
204
173
174
277
219
145
213
135
204
246
142
179
163
207
186
174
146
213
221
139
222
215
190
201
166
200
226
168
256
197
254
266
163
134
227
252
208
242
210
209
130
207
231
197
243
165
147
187
201
228
215
165
241
174
183
158
222
229
218
221
168
186
220
211
174
251
209
191
207
206
166
217
173
233
162
186
233
252
164
247
223
229
173
202
192
189
219
248
167
218
212
291
225
191
148
244
193
220
213
209
176
163
234
176
138
227
188
181
206
198
163
219
150
236
209
204
190
230
183
189
171
257
193
192
151
186
232
216
204
230
231
175
202
200
199
223
186
179
189
197
153
202
188
273
238
243
213
245
206
175
192
193
182
254
223
207
243
252
215
185
135
153
210
215
216
237
200
200
187
175
245
205
190
225
218
110
171
197
189
201
213
242
211
141
155
177
162
213
259
181
157
219
192
142
207
251
209
158
201
195
193
168
149
196
196
267
180
200
213
220
194
223
208
148
193
156
205
204
199
185
179
230
160
218
136
184
182
179
189
142
208
214
176
221
210
190
213
116
207
187
242
166
127
249
137
256
208
208
194
149
240
176
195
222
224
174
236
192
225
231
238
203
224
230
189
147
210
189
241
205
202
226
241
171
227
193
214
248
192
197
227
205
177
211
186
229
231
201
128
212
202
215
253
151
202
173
260
219
191
229
215
204
208
187
199
225
194
229
182
131
227
222
181
167
223
197
155
160
252
168
227
120
180
220
262
222
196
250
199
200
141
235
149
185
174
199
157
239
200
187
165
176
235
195
221
214
191
174
111
220
225
237
237
235
221
269
189
226
240
238
194
221
192
181
221
247
204
199
270
247
135
197
214
244
190
199
230
221
224
218
242
178
252
199
177
213
192
244
146
204
111
201
184
259
175
185
292
156
193
196
180
252
186
232
204
232
195
185
222
120
185
240
236
207
211
179
257
184
165
186
196
243
207
172
234
188
236
181
145
209
117
242
214
118
188
221
195
241
187
210
220
128
141
187
209
194
191
161
230
231
223
185
209
199
233
212
214
168
189
178
134
282
227
184
206
184
220
277
166
258
199
207
140
197
204
145
173
214
209
183
218
242
217
176
165
201
209
246
147
161
211
209
150
211
269
236
180
94
175
225
214
180
228
184
203
219
185
235
183
183
197
200
221
182
187
227
169
270
249
223
190
216
159
220
234
198
168
223
208
171
202
222
230
244
219
96
192
154
180
206
224
219
194
192
197
144
173
197
245
184
164
224
200
199
126
211
191
226
213
151
152
230
157
225
187
176
241
271
93
210
226
185
167
207
222
204
171
183
202
218
202
214
209
224
169
132
225
171
225
213
239
163
230
208
196
229
221
142
185
189
278
220
140
187
172
233
142
235
261
222
170
204
161
229
254
205
207
219
152
189
270
236
213
185
247
195
204
157
224
143
206
249
176
237
167
184
212
206
201
269
229
216
226
194
213
161
211
236
169
207
195
204
186
222
199
200
159
182
162
171
218
222
252
161
174
197
251
216
266
111
153
183
202
197
204
214
187
167
166
185
210
207
184
215
205
199
231
194
233
239
209
197
169
131
201
247
206
180
218
169
261
174
265
235
194
183
154
177
207
173
211
163
194
221
171
221
169
208
188
124
256
180
203
168
206
247
179
194
195
217
187
243
215
198
216
167
181
194
145
194
233
143
145
181
233
161
161
188
160
178
200
189
213
203
202
232
186
237
201
162
191
185
187
222
242
202
207
191
210
167
213
184
207
215
209
182
185
250
151
213
196
136
237
213
200
192
216
163
229
225
216
189
263
225
181
145
119
201
225
170
228
201
162
198
184
190
232
223
244
170
204
220
174
202
171
198
156
215
248
169
202
207
210
176
182
213
208
179
271
168
193
234
178
204
131
141
180
213
139
207
168
167
209
201
161
245
177
171
234
176
275
214
165
227
167
186
208
194
193
174
146
240
210
185
199
247
244
161
163
241
189
179
162
199
202
201
253
257
220
179
185
220
209
211
134
135
175
169
178
185
165
230
242
230
202
172
178
254
149
212
221
194
162
196
245
165
235
217
202
221
180
144
198
152
235
160
182
189
252
191
184
218
209
186
189
151
195
204
144
190
192
185
190
196
238
189
179
192
211
168
181
163
179
239
223
206
166
162
187
178
213
245
203
229
117
207
274
152
225
213
187
168
255
211
191
203
221
223
179
194
184
163
161
211
247
222
190
208
227
244
149
178
203
213
211
240
204
211
229
196
244
208
236
226
179
200
206
259
121
254
162
190
197
202
115
262
206
217
159
261
207
187
233
225
139
176
206
208
261
235
217
181
178
255
236
171
195
165
237
168
246
267
161
174
174
112
171
227
206
210
201
239
224
174
155
201
247
157
184
207
151
206
224
135
201
230
231
165
151
175
215
248
187
184
175
152
237
222
177
229
153
173
190
136
181
192
252
180
240
256
177
235
165
144
187
230
171
179
184
212
263
179
292
214
210
201
229
136
167
235
179
239
187
188
247
120
171
232
168
168
236
89
164
252
119
228
222
179
193
161
221
191
229
183
203
192
216
166
194
117
172
200
211
202
201
179
217
230
127
170
157
228
216
233
111
205
212
155
166
182
201
152
172
237
232
189
266
130
191
185
181
164
250
227
193
193
181
205
204
207
171
239
167
217
159
195
209
168
262
154
202
216
200
204
265
165
236
233
230
163
195
203
210
204
251
212
206
155
193
238
161
209
173
189
243
145
191
220
249
172
157
204
195
179
221
214
149
167
151
224
263
192
219
158
246
194
257
232
180
238
236
228
213
207
196
163
107
232
193
132
234
197
217
247
205
129
219
191
192
218
209
233
214
250
153
186
204
225
258
248
243
192
234
199
204
202
209
166
240
168
216
117
188
173
173
175
116
195
221
248
238
190
187
200
217
209
231
226
185
263
194
189
203
240
209
210
214
207
218
211
193
195
186
165
187
190
210
229
230
192
230
201
148
179
187
254
226
205
180
261
278
203
190
223
198
174
227
187
163
228
189
216
204
221
215
245
223
242
176
252
229
159
177
193
211
241
203
182
189
167
171
264
179
221
169
243
116
233
269
235
295
230
204
145
174
165
194
266
209
227
240
194
170
205
237
117
191
161
246
202
204
202
193
166
228
232
187
226
223
170
197
136
193
187
172
224
226
161
195
225
227
216
146
193
232
153
202
169
200
237
259
197
201
284
212
159
183
146
219
232
147
194
222
220
225
202
219
171
214
149
188
205
192
208
121
210
204
224
201
247
193
206
201
185
162
204
234
226
218
234
200
168
268
202
191
255
221
202
137
214
164
161
238
197
197
212
228
145
206
229
233
189
128
205
185
213
223
175
177
204
179
178
183
239
255
209
230
207
198
186
224
195
145
193
228
208
175
161
202
156
187
234
205
229
201
216
215
236
198
244
228
139
198
178
176
253
156
180
196
208
225
186
158
244
183
104
237
242
170
231
171
170
171
208
268
195
168
225
173
221
223
230
237
187
174
168
218
256
221
229
216
246
181
220
141
150
185
182
186
161
180
179
219
191
154
176
230
180
200
187
221
226
209
201
172
216
203
232
197
172
152
170
233
217
223
201
203
126
201
224
151
218
220
163
144
175
182
190
200
205
160
225
182
236
201
212
293
255
198
188
168
205
128
191
240
200
198
157
97
251
211
218
203
177
199
179
240
209
216
202
289
124
195
212
179
182
200
218
207
167
205
194
168
194
257
207
260
176
200
180
179
161
180
179
209
154
188
210
222
222
186
195
222
184
177
146
184
213
158
167
124
168
157
259
235
215
163
184
190
159
179
262
160
193
166
194
227
213
205
136
173
230
204
203
196
221
162
211
245
211
182
223
132
231
230
197
152
215
232
180
164
148
211
224
205
231
212
202
215
183
161
209
169
173
190
217
299
194
178
238
244
181
222
208
177
250
186
252
179
185
252
146
291
209
237
200
213
260
240
207
231
229
200
224
240
220
222
251
184
128
185
204
146
229
209
156
241
208
212
213
204
203
213
192
229
199
217
238
147
164
168
212
221
229
154
209
219
183
199
217
171
170
208
225
206
193
189
133
196
282
135
215
163
220
198
187
156
216
234
201
190
241
180
212
190
136
186
255
177
222
190
239
245
235
230
197
165
223
224
187
197
170
227
153
205
187
203
192
234
223
201
198
234
281
215
202
186
199
217
153
264
192
193
168
195
160
219
226
149
200
203
173
234
189
177
197
209
223
129
183
210
198
149
188
137
223
177
222
252
166
232
177
229
212
171
212
144
196
169
188
185
199
174
205
163
157
222
173
198
228
201
128
206
139
161
257
285
237
190
219
204
229
208
211
221
195
180
195
186
183
205
199
161
257
242
224
184
198
203
182
201
211
224
219
166
171
179
162
192
206
144
229
267
195
163
197
195
151
229
237
240
237
222
143
243
183
155
196
207
160
164
186
220
213
258
161
255
196
172
194
171
223
218
127
223
165
202
240
245
183
216
165
228
215
222
272
216
174
215
195
158
203
240
188
224
196
217
170
230
162
204
129
175
244
189
203
228
204
197
223
232
238
212
170
143
159
260
152
192
207
222
170
273
144
149
195
223
158
151
138
201
208
207
193
135
155
211
252
178
178
194
167
207
121
189
186
228
185
191
258
186
271
224
238
191
213
242
167
212
229
273
196
259
200
194
125
158
203
249
244
253
221
186
275
196
188
229
198
172
171
194
220
165
147
251
164
121
206
172
219
175
180
246
159
198
208
187
126
200
235
142
182
213
223
193
203
219
214
176
133
169
206
190
209
187
219
204
153
187
188
200
174
199
247
182
185
209
243
228
220
182
178
233
206
204
171
192
200
244
228
200
179
228
173
183
274
259
283
177
229
184
185
241
157
240
136
172
174
138
230
199
164
229
231
182
200
214
165
134
181
226
202
179
210
183
216
169
161
175
224
242
217
212
191
166
193
172
197
234
154
226
188
216
194
187
209
173
167
204
250
216
168
197
185
250
233
144
257
198
229
147
187
174
188
260
211
248
259
225
240
205
217
212
197
188
186
176
232
223
126
225
247
147
217
170
188
187
154
229
235
194
256
219
228
165
150
186
204
256
184
205
175
258
252
161
231
215
215
219
192
253
257
168
188
192
268
161
191
174
196
178
227
153
194
231
163
239
195
231
216
229
155
248
267
209
195
235
232
220
176
194
179
237
158
144
209
219
134
226
201
207
215
234
247
206
194
211
243
212
211
124
207
202
249
231
144
228
206
197
183
170
157
140
213
243
227
164
168
169
180
152
190
212
202
161
181
263
167
218
216
220
204
227
134
275
210
201
182
237
191
195
268
189
227
212
234
252
205
233
162
272
210
174
228
227
111
184
152
183
238
290
153
215
219
197
205
209
204
196
119
166
194
180
231
189
187
176
194
255
202
204
201
176
240
135
243
239
239
166
242
302
186
205
164
266
162
226
168
234
204
248
168
203
237
225
245
203
226
178
242
178
190
258
226
204
151
209
181
235
241
161
157
189
203
197
162
137
104
169
222
199
231
249
156
179
205
152
202
197
198
210
173
156
202
172
197
199
188
207
229
174
213
244
188
254
232
165
148
154
272
227
228
236
242
178
145
219
199
202
228
205
169
186
174
231
175
220
176
190
142
188
207
202
196
252
165
198
205
160
180
223
160
191
226
222
137
228
130
171
267
237
208
222
237
185
179
264
163
181
173
211
192
182
215
185
144
154
151
184
156
200
185
151
208
186
215
191
169
205
161
122
215
211
180
203
237
172
234
177
203
200
202
190
168
187
239
195
263
215
210
164
202
190
177
202
226
225
174
167
175
165
238
189
256
128
208
174
208
202
171
232
183
227
161
193
226
201
208
174
173
191
227
190
201
225
169
191
154
178
203
262
203
233
144
199
212
154
183
234
166
194
229
184
204
157
171
211
200
194
227
200
180
225
173
185
179
165
215
181
230
156
135
181
153
175
135
211
232
180
192
253
208
223
155
165
259
186
204
168
123
178
228
165
259
203
175
183
108
233
212
141
148
208
226
107
255
183
151
233
214
147
134
168
159
178
205
212
235
166
201
214
229
233
233
210
210
216
169
240
169
203
205
209
215
148
222
219
215
229
192
207
189
178
232
256
215
172
188
249
221
205
199
208
199
215
180
193
192
147
199
211
273
214
143
218
219
182
153
162
174
198
128
208
169
163
216
182
238
253
251
187
211
223
181
235
165
173
235
148
226
245
225
244
219
234
168
228
142
173
252
246
261
152
177
197
224
161
208
205
150
161
209
227
191
178
236
237
234
176
193
139
271
147
148
95
139
224
227
206
230
245
248
218
212
216
252
210
237
217
218
254
127
258
184
166
267
144
234
211
237
269
277
219
212
161
193
194
262
139
174
146
242
129
181
260
146
208
204
176
235
216
173
189
240
178
189
208
222
233
182
226
255
234
217
220
196
160
149
173
222
245
186
244
229
207
240
208
194
109
240
152
147
257
150
247
188
188
218
241
223
192
204
172
224
205
153
194
144
181
270
217
189
219
213
200
177
172
235
157
216
287
159
107
235
162
176
237
234
214
168
170
242
126
160
183
240
216
211
176
174
254
205
222
229
224
175
210
189
241
212
166
163
218
198
180
152
178
192
165
198
136
218
260
189
192
193
264
246
216
114
207
201
194
250
203
216
233
186
186
189
100
185
226
240
186
185
179
199
209
267
243
212
127
198
248
202
244
189
194
146
141
293
128
191
145
200
167
239
182
203
221
195
204
153
217
229
147
208
196
161
209
234
206
197
240
167
224
214
206
191
197
161
235
169
193
222
216
179
261
180
243
128
246
221
197
229
230
154
208
198
218
171
199
131
163
201
231
222
184
200
180
227
239
243
139
204
234
202
163
239
175
175
206
196
212
217
213
146
215
141
172
186
212
245
224
243
181
208
189
199
236
242
196
214
262
204
187
230
236
161
218
118
202
237
212
190
162
210
170
194
178
124
258
192
211
224
173
142
209
174
162
179
184
194
290
198
220
233
213
217
125
231
165
189
195
219
223
234
212
246
208
243
223
179
210
224
285
237
243
204
181
183
165
228
209
250
153
144
199
194
259
229
134
188
168
223
230
172
192
190
215
162
205
231
279
207
191
165
136
148
242
195
174
178
231
185
188
221
184
255
158
214
199
197
204
183
261
206
255
200
161
147
234
219
156
164
183
215
192
209
229
206
209
215
188
207
199
204
175
208
171
171
166
222
206
217
179
199
226
191
172
149
179
217
132
196
231
182
256
144
244
208
173
158
229
184
219
174
202
249
220
205
251
180
205
201
232
187
168
208
242
203
196
220
235
190
174
244
189
180
217
258
209
170
249
227
237
234
214
271
192
159
225
216
197
245
151
239
170
168
207
209
209
214
207
152
162
172
194
185
141
202
204
182
174
158
209
235
217
221
214
188
212
231
163
142
210
204
209
212
202
167
194
241
185
229
191
240
294
143
162
195
176
227
179
248
178
195
243
224
194
231
205
149
190
217
244
223
238
215
263
185
206
215
188
234
227
239
188
132
201
187
220
207
229
203
194
214
188
214
156
194
230
214
233
156
204
180
195
170
237
137
231
210
224
209
159
104
136
125
217
214
184
181
142
181
244
252
264
190
181
150
244
122
100
220
161
165
135
203
171
238
197
183
267
225
206
188
211
177
184
223
232
255
237
241
211
180
199
231
217
149
209
206
153
215
201
165
223
198
214
181
193
231
221
208
211
214
233
200
162
213
205
222
176
204
193
172
167
195
234
194
234
190
240
112
169
206
213
216
169
143
202
183
164
219
141
189
210
210
245
210
171
194
279
226
230
215
198
206
252
179
188
239
223
217
115
203
232
289
194
198
245
235
213
155
195
150
185
272
255
213
207
207
189
256
227
232
200
179
151
192
213
228
204
195
210
183
187
190
259
170
167
267
130
206
203
211
205
150
193
141
160
229
195
193
161
166
220
194
230
213
169
178
195
147
195
199
185
193
178
175
194
205
235
170
262
220
194
277
227
205
237
204
179
248
200
212
157
268
213
217
234
185
195
171
209
147
211
215
202
230
265
191
153
197
190
164
268
232
244
149
232
248
197
185
157
215
233
189
204
199
211
175
164
218
204
240
166
206
237
165
229
165
240
286
172
211
228
213
241
204
180
209
223
209
176
254
181
215
223
183
215
188
200
160
227
232
219
258
182
193
228
123
165
215
151
196
175
203
212
227
226
221
184
223
155
245
167
255
172
223
154
216
231
212
186
227
219
224
248
169
218
190
200
222
208
193
184
177
206
207
183
252
223
202
173
164
269
223
165
207
218
289
133
183
239
216
212
228
206
175
215
180
197
196
226
175
190
192
135
219
177
189
235
184
200
188
254
222
202
171
153
217
209
193
205
225
182
187
182
232
177
245
175
261
233
240
193
208
192
232
177
169
195
202
218
190
216
229
178
215
206
206
161
179
177
203
217
189
183
194
149
220
179
160
194
167
224
229
187
171
190
177
235
202
183
221
169
171
181
196
168
205
230
205
199
204
167
230
215
198
202
230
171
173
136
255
214
185
214
255
244
191
225
276
183
105
217
205
218
219
206
180
237
178
210
190
226
235
205
138
192
214
212
225
207
263
199
235
228
229
183
229
182
195
230
238
201
236
215
176
238
227
215
257
190
229
154
233
235
225
171
173
194
193
220
174
165
180
205
159
187
148
177
171
254
188
190
175
252
245
224
237
160
285
221
115
202
205
184
251
201
166
229
194
195
138
260
205
229
255
193
129
208
241
194
203
173
207
242
198
215
164
174
152
214
215
219
136
224
212
248
195
212
207
256
262
168
163
190
204
204
171
218
138
196
196
227
212
205
209
204
171
168
194
244
181
192
166
166
189
202
190
205
195
150
226
154
256
179
246
209
170
184
184
167
268
233
249
190
258
230
179
212
196
183
139
179
220
199
224
198
273
191
221
220
246
184
153
206
213
158
226
229
224
243
173
214
196
201
200
235
191
223
207
210
173
245
169
177
187
188
187
215
245
231
245
155
182
211
209
201
189
232
125
162
126
225
204
232
174
174
161
187
219
215
186
174
207
180
146
130
239
192
201
170
194
220
189
178
187
184
173
222
212
200
263
265
224
172
250
243
239
169
181
173
124
136
201
188
181
223
183
179
222
211
231
172
154
194
164
122
173
181
218
180
212
162
163
177
276
186
221
200
184
205
203
211
243
245
239
216
259
185
266
196
211
169
210
181
187
221
185
198
209
211
231
131
248
169
147
197
186
184
165
176
246
170
230
191
211
163
225
196
174
194
182
218
197
217
230
206
214
179
258
199
195
150
214
201
219
236
135
216
195
224
233
210
270
177
243
230
231
203
209
264
139
154
176
210
213
206
206
237
190
233
201
208
240
172
237
203
231
262
242
180
149
184
227
161
227
210
153
149
222
206
213
217
221
164
207
149
291
200
232
272
172
232
168
242
194
205
125
253
185
192
201
235
189
194
256
221
167
203
228
223
236
273
266
208
155
233
172
167
129
222
216
207
164
180
242
215
185
187
243
147
225
245
217
222
198
180
188
194
173
221
206
201
181
210
158
239
211
186
235
155
243
249
176
197
198
174
198
167
214
160
235
239
238
255
235
222
190
147
186
147
159
232
177
212
169
164
217
209
213
178
192
180
226
155
196
257
193
169
238
203
200
219
157
219
226
231
224
241
268
161
158
253
125
177
198
197
170
240
137
202
261
175
207
200
218
232
177
242
205
127
204
174
180
223
215
156
185
201
147
225
136
224
201
244
185
212
244
230
193
197
189
224
224
187
168
190
240
162
181
246
182
141
211
215
226
289
227
210
199
162
216
224
189
212
188
158
169
233
231
196
219
215
208
172
206
227
305
182
188
223
173
171
168
175
235
160
228
181
126
177
201
224
213
180
296
264
216
220
197
183
199
161
228
229
187
212
237
182
132
198
196
202
225
167
167
211
171
202
248
259
127
222
148
187
194
135
227
190
232
182
158
187
202
210
201
271
235
203
218
191
204
196
235
163
168
206
185
194
176
262
239
156
201
253
253
235
206
172
206
211
158
249
236
262
205
180
181
186
210
250
235
189
196
205
109
245
205
203
179
245
219
182
189
205
210
204
259
179
199
245
198
223
203
183
162
225
233
261
175
210
237
171
213
176
201
203
231
148
212
201
246
228
170
227
165
214
164
223
163
215
184
225
242
159
214
167
253
206
194
236
162
233
193
189
160
233
222
183
199
191
189
166
297
243
228
163
241
167
228
197
157
247
189
155
268
191
159
200
225
218
177
219
262
182
221
199
176
170
221
244
222
222
198
212
191
180
215
198
226
238
199
200
264
208
177
268
189
129
232
209
200
235
201
167
233
194
199
186
185
229
142
211
211
198
245
245
224
229
201
198
192
221
129
134
217
211
242
210
252
190
225
161
200
149
180
177
255
177
242
215
183
190
197
161
231
243
156
240
266
181
182
210
213
214
216
209
167
183
200
194
151
264
166
234
201
218
249
188
165
213
229
189
188
158
248
217
194
215
209
258
121
230
202
171
179
253
148
229
196
229
157
208
255
211
188
208
239
186
232
107
240
234
137
200
163
159
156
193
209
223
232
174
215
216
200
202
228
164
189
159
275
208
173
210
199
205
244
172
204
203
223
221
246
208
263
213
204
238
165
188
201
177
211
229
187
215
207
172
172
192
249
245
196
204
218
203
192
168
190
168
195
214
174
202
224
241
168
178
199
187
199
229
222
168
206
186
188
171
116
198
198
198
226
195
242
207
242
160
183
177
194
201
219
151
199
250
202
237
137
251
227
170
210
226
167
234
207
211
139
115
162
222
183
248
250
184
223
149
227
171
139
300
220
194
193
159
172
225
272
213
154
273
217
204
186
186
183
155
148
185
201
225
193
212
224
239
201
238
148
284
216
234
116
139
227
205
204
207
170
156
179
167
183
245
149
108
211
188
201
168
243
205
215
258
205
220
196
245
141
166
223
207
244
189
181
197
192
226
215
180
204
188
223
184
159
193
178
181
226
188
129
200
231
255
197
186
244
229
207
115
171
189
211
196
256
170
214
166
218
160
148
247
248
158
175
163
202
206
176
161
204
188
211
189
161
212
176
221
154
218
259
191
237
244
218
236
169
222
156
146
208
239
167
251
154
220
162
192
254
230
141
165
186
159
153
206
221
222
202
230
158
272
187
196
180
171
205
273
151
227
205
204
225
230
188
184
231
204
171
201
252
199
239
186
172
258
157
196
184
207
184
208
158
212
250
204
171
149
177
187
226
185
178
242
147
219
221
217
143
253
180
192
219
215
226
219
209
174
185
109
218
162
202
210
133
201
149
194
217
216
187
166
126
237
140
208
231
186
223
254
244
199
236
183
106
196
187
215
218
254
174
188
247
229
148
235
161
154
254
202
217
181
242
220
254
221
221
218
160
173
201
163
116
257
122
113
217
234
176
87
190
220
185
242
254
167
187
193
128
166
120
198
188
183
157
156
260
183
159
216
182
244
205
238
196
179
202
227
180
204
202
222
205
141
157
218
250
206
233
264
198
226
176
246
180
199
192
146
266
186
200
226
218
211
218
191
188
224
167
173
181
197
233
249
247
197
145
243
232
217
159
174
194
208
213
202
172
236
180
183
165
265
243
235
213
147
216
199
196
220
155
173
230
139
211
165
207
197
180
218
269
214
178
141
212
184
231
187
164
209
186
234
230
198
177
120
197
216
149
203
209
191
216
214
200
146
199
164
202
225
181
202
165
262
192
230
252
134
177
179
196
222
165
232
195
133
185
228
242
253
219
163
220
199
227
199
134
210
207
180
254
248
222
189
123
193
218
204
211
194
254
195
228
201
197
213
233
170
101
220
231
183
235
232
181
201
147
183
216
174
216
219
216
205
201
241
168
165
150
206
279
179
229
207
182
162
215
148
186
160
198
213
199
189
185
237
178
210
216
168
263
223
192
211
172
172
261
204
220
191
166
203
223
209
254
172
173
180
169
151
200
181
146
211
211
185
173
139
211
193
172
235
146
216
199
250
161
187
238
138
147
190
230
174
283
264
175
184
183
187
165
202
213
175
235
141
224
224
208
206
184
244
172
185
190
204
198
247
214
204
222
199
180
203
235
242
217
159
162
178
176
161
270
197
162
227
81
197
121
178
216
158
170
141
248
202
201
208
140
209
181
177
236
220
216
156
243
143
208
208
215
160
200
213
248
121
199
217
219
172
185
206
216
185
200
237
176
177
214
140
217
232
185
223
169
207
233
255
199
254
197
203
163
196
217
293
208
207
208
177
160
195
186
228
224
222
223
169
184
195
200
277
212
222
155
178
240
191
207
166
185
201
202
181
197
248
153
212
196
241
142
143
206
183
170
201
195
236
251
166
142
241
187
214
135
161
207
181
221
213
198
216
174
225
205
276
154
164
221
241
117
197
236
211
222
230
246
191
219
257
235
192
214
219
209
194
189
176
230
229
187
167
240
136
216
181
183
206
146
189
192
246
213
154
243
231
154
177
213
228
195
188
215
226
206
209
222
212
243
215
172
244
284
237
178
195
180
185
203
155
226
149
187
198
264
173
233
169
201
231
260
171
237
138
176
244
256
252
184
199
208
199
209
204
227
208
197
163
240
181
231
258
248
207
200
217
165
202
170
251
217
243
166
224
173
222
235
226
200
188
220
219
124
246
212
189
219
215
217
174
151
225
195
202
258
188
235
251
249
218
234
156
185
127
181
202
149
211
189
176
121
152
251
197
242
213
217
157
211
277
211
218
195
180
272
199
248
176
294
192
234
126
256
181
230
274
229
193
200
174
241
173
179
189
223
181
189
284
187
165
205
203
184
236
232
201
171
226
196
211
219
175
210
248
180
154
185
180
224
226
180
254
187
222
176
156
142
198
189
179
162
226
148
189
147
213
217
220
203
176
181
220
126
193
253
236
226
268
254
218
245
212
214
174
168
190
167
186
155
196
206
168
211
153
248
193
221
254
204
217
231
217
244
196
180
232
258
211
219
228
164
153
162
241
204
219
234
230
190
212
191
180
186
209
183
253
154
237
195
227
156
123
112
220
213
179
225
212
224
220
260
160
153
255
171
236
206
185
221
233
245
202
190
188
177
204
179
216
206
170
180
228
210
237
211
205
207
196
201
196
193
194
172
177
272
142
177
223
217
223
178
238
204
224
232
234
181
244
143
184
202
236
150
217
205
146
214
260
251
199
167
202
196
202
184
172
197
174
106
179
199
223
131
190
207
219
215
151
244
219
199
147
167
192
203
176
139
190
187
182
148
195
121
160
215
190
191
235
156
211
138
177
218
212
174
191
189
226
191
149
158
228
214
154
188
223
234
172
182
143
247
214
172
179
173
199
173
232
232
145
203
219
217
186
249
212
223
247
216
198
224
145
196
171
192
187
152
136
214
251
271
261
226
171
274
226
278
185
188
227
234
197
184
221
191
240
210
185
230
265
201
209
239
190
239
162
203
235
194
204
214
197
186
260
200
137
270
212
194
131
222
176
253
171
159
185
153
140
238
190
165
177
228
148
202
136
234
217
202
254
218
142
168
143
168
180
154
167
170
179
171
137
240
213
220
150
259
253
180
245
164
187
221
142
162
261
232
179
169
212
209
252
167
181
261
191
227
155
218
191
167
201
213
216
179
211
204
213
255
201
217
171
199
162
210
206
240
198
195
172
193
136
128
221
228
205
260
155
247
118
200
230
198
229
236
171
212
226
219
160
203
166
157
156
292
202
236
225
175
220
180
223
227
211
227
234
188
223
164
190
184
136
225
193
194
239
141
180
195
226
185
238
158
188
198
142
188
211
130
225
235
244
230
188
220
237
206
219
243
191
219
204
142
210
251
188
246
219
231
210
136
176
214
248
224
169
269
164
214
205
176
172
183
216
205
213
239
196
194
156
257
195
166
233
238
197
232
231
206
251
189
178
155
188
226
199
211
232
171
136
230
214
216
252
180
172
223
230
166
171
162
187
185
273
194
226
192
215
206
204
160
234
224
101
248
169
216
252
163
175
196
214
220
214
196
186
247
244
241
106
218
249
187
229
197
210
167
262
182
188
155
202
235
156
251
223
184
196
207
207
155
211
217
240
252
197
223
225
242
195
227
198
192
253
168
243
264
148
194
169
127
199
213
195
155
146
227
162
189
198
195
229
189
169
213
172
158
201
161
162
231
224
193
303
183
92
192
177
221
177
172
195
232
193
258
167
159
200
201
201
216
196
210
241
193
184
162
200
201
238
215
175
220
167
227
202
125
203
217
198
221
247
159
164
201
231
165
184
240
212
228
209
182
221
226
171
230
209
221
267
204
167
201
193
179
144
198
195
213
222
230
133
187
202
173
174
219
233
177
209
239
146
139
204
233
212
209
240
210
265
230
195
157
205
232
107
237
183
184
157
247
232
217
126
211
214
203
277
206
164
197
189
183
237
168
183
191
197
214
184
140
180
230
179
200
105
197
256
214
203
196
184
191
125
227
214
219
212
222
277
187
213
204
178
199
164
254
210
129
186
196
232
236
156
204
183
177
187
213
178
210
235
253
158
169
228
173
205
218
204
149
182
237
234
210
223
161
232
174
221
204
199
211
181
229
146
147
170
212
223
249
193
186
262
203
303
179
211
179
184
191
187
167
211
156
261
288
184
270
183
168
152
216
163
220
207
147
258
139
203
226
162
200
194
109
171
185
263
154
239
196
214
135
194
185
227
176
203
209
184
179
245
164
226
169
211
183
150
140
159
183
182
244
187
207
236
201
222
281
174
199
205
213
172
253
220
156
152
188
281
238
179
204
194
153
182
183
211
161
195
228
240
131
143
150
224
170
174
188
216
175
199
206
177
200
167
217
220
215
198
250
230
206
172
256
192
147
233
193
164
209
163
157
183
196
269
189
222
184
229
215
210
202
206
143
225
189
207
152
241
187
225
172
164
133
226
212
182
165
153
223
227
213
153
229
179
169
187
194
197
238
247
187
197
188
244
246
209
230
150
180
188
195
142
155
148
163
199
192
221
233
193
162
220
158
199
213
160
174
223
143
233
230
199
199
185
133
221
173
239
226
201
186
235
125
233
155
242
137
242
173
208
160
164
169
192
275
235
132
192
218
229
165
260
226
216
202
130
182
207
236
256
169
148
207
131
163
249
209
195
189
179
164
109
211
218
200
234
194
235
135
164
244
188
247
232
151
209
128
204
189
185
206
183
225
186
205
177
195
228
193
145
180
153
207
199
223
202
203
199
198
217
161
221
174
221
227
246
218
169
239
166
236
234
197
173
229
173
206
190
177
189
157
154
237
196
233
254
145
173
190
196
201
194
228
190
223
204
200
152
220
216
124
156
226
195
220
275
204
213
194
152
239
192
185
197
211
175
192
233
184
186
173
267
184
164
239
185
242
143
190
183
154
168
238
152
189
193
230
218
203
184
250
223
179
250
163
272
233
233
216
147
102
211
221
217
216
211
170
154
225
199
153
255
258
234
213
179
243
194
218
183
148
236
205
212
230
240
210
182
206
242
232
231
221
206
182
177
160
195
141
197
183
160
161
228
248
192
190
188
179
224
146
186
241
254
143
186
270
211
234
223
223
240
223
243
206
176
211
218
179
228
198
222
244
182
176
177
161
207
265
215
184
213
264
227
197
138
223
171
193
133
222
225
197
244
178
241
216
148
249
229
178
215
181
197
156
238
167
231
204
224
210
180
224
186
241
200
168
214
229
219
238
214
204
175
194
148
225
158
228
236
160
146
270
204
178
194
145
199
240
174
188
219
191
231
218
222
193
214
200
221
235
206
183
210
158
221
145
253
286
201
171
190
162
246
227
267
187
196
225
209
164
247
162
218
208
221
179
195
194
153
234
197
174
212
210
217
180
188
201
236
240
243
153
208
157
182
143
170
169
183
237
129
261
195
204
277
207
173
185
138
132
186
182
226
172
237
203
245
214
171
203
221
210
189
200
232
231
241
265
233
146
250
212
185
240
199
155
128
202
203
190
224
252
184
170
165
153
175
201
187
209
200
225
169
187
190
198
269
244
209
203
226
216
198
187
130
167
278
161
204
193
244
180
215
188
216
139
163
219
178
243
231
167
170
169
159
207
140
216
202
277
212
138
167
157
182
217
244
149
193
185
243
204
150
178
245
176
208
156
155
189
186
153
217
154
249
220
209
174
203
203
179
149
198
180
167
225
186
133
198
190
157
200
161
216
232
178
163
243
244
219
90
179
135
250
282
214
218
256
231
220
255
172
198
181
242
130
216
158
188
210
148
175
150
244
223
211
227
219
197
204
191
205
244
231
200
190
217
203
193
132
167
157
250
248
183
209
184
206
204
177
207
188
153
208
164
178
212
161
170
169
213
184
234
239
215
166
220
176
167
212
180
135
216
129
196
209
182
231
198
243
180
160
149
253
185
187
215
186
200
257
161
182
241
226
216
180
234
222
195
240
183
212
185
191
177
218
186
255
170
198
213
245
269
176
227
195
229
228
147
211
159
227
189
229
221
199
228
169
219
202
164
184
185
221
209
144
173
228
252
153
213
199
140
212
165
216
177
242
157
235
233
161
140
210
238
219
289
207
215
162
200
134
235
180
235
262
221
205
207
165
169
219
211
247
193
225
197
163
177
180
192
233
205
208
188
158
233
145
235
258
272
137
243
222
222
148
220
248
274
225
190
208
213
235
181
215
242
182
203
180
195
187
206
176
181
130
123
163
249
168
182
230
162
207
126
161
153
207
186
241
209
182
206
188
212
133
189
202
201
221
252
184
176
225
198
199
228
230
252
152
106
139
207
222
254
163
202
145
229
233
174
208
220
183
177
207
183
162
216
165
275
248
161
153
223
252
203
239
224
188
219
195
207
184
247
229
204
190
180
236
237
197
288
228
227
148
191
269
194
216
223
219
241
200
216
141
248
252
155
239
208
221
277
250
187
132
200
212
155
218
227
170
205
219
214
227
247
222
201
174
230
209
238
248
151
171
245
227
191
206
203
266
197
155
245
160
192
283
126
238
181
162
217
237
198
218
174
202
200
152
204
182
167
200
209
209
213
200
195
165
183
268
214
209
203
185
204
170
148
217
173
223
165
189
210
202
238
216
219
146
168
175
182
219
164
278
224
232
246
192
206
234
240
174
227
229
205
216
130
193
240
244
243
222
206
194
243
194
235
247
273
190
212
209
183
165
255
194
250
216
243
194
247
246
192
267
193
146
217
165
254
188
243
119
232
237
176
182
242
180
209
226
244
194
231
203
179
205
223
202
197
211
212
167
221
170
173
223
235
180
233
192
230
164
186
197
227
195
244
169
205
213
240
196
239
151
212
231
167
245
254
174
134
209
139
140
149
185
186
140
242
199
213
201
170
230
243
267
176
189
203
162
255
207
153
193
235
242
178
157
264
250
226
186
209
193
224
156
196
234
226
192
225
143
217
229
157
246
185
140
189
226
195
192
205
196
258
150
122
206
200
221
191
309
189
205
263
195
230
228
225
174
255
239
216
183
188
239
237
216
202
220
227
170
127
238
210
200
233
165
152
212
237
208
237
216
254
167
176
196
186
186
221
195
214
191
208
229
245
223
239
185
252
208
238
207
168
189
240
223
191
172
204
223
213
259
245
196
243
218
201
203
221
124
245
210
193
190
192
210
262
256
232
200
161
176
228
212
158
194
197
242
233
204
185
144
246
139
217
165
242
219
224
193
150
176
217
224
212
256
177
149
166
208
154
201
197
206
223
234
213
196
177
194
145
147
219
220
261
210
171
185
196
200
177
176
220
231
171
142
266
231
191
203
154
194
230
242
182
232
196
128
271
209
130
179
185
221
203
251
213
208
199
150
238
213
205
225
168
110
180
223
187
220
220
211
132
258
153
214
142
231
157
242
213
234
167
154
216
253
275
181
199
210
156
168
134
163
197
180
214
217
196
188
206
179
212
210
234
195
218
224
220
191
204
255
219
190
204
217
251
184
188
222
178
218
157
189
270
252
139
241
247
206
159
185
210
208
180
152
224
188
218
200
196
186
227
212
269
163
234
232
181
154
244
242
223
253
160
181
196
248
159
209
229
235
182
185
190
213
108
222
165
224
233
119
222
227
151
214
138
190
168
161
183
255
223
224
212
239
188
195
228
207
169
124
207
174
207
196
200
152
234
196
224
202
242
255
175
243
198
208
193
180
258
174
196
190
229
232
188
161
201
197
191
172
226
208
201
196
246
168
159
161
249
184
152
183
215
180
174
178
204
181
250
166
187
219
187
208
163
184
185
197
192
190
255
239
131
189
156
139
195
258
255
223
203
204
197
227
139
176
216
229
204
193
148
238
226
240
170
219
192
201
175
197
197
256
219
181
162
222
204
148
230
276
250
160
158
237
201
240
238
202
209
212
227
178
251
216
184
168
178
219
214
228
157
246
239
204
229
199
193
218
222
221
217
256
213
204
190
170
178
181
207
196
195
218
172
262
196
186
170
156
182
209
174
202
295
190
177
150
174
255
274
200
240
159
190
225
176
190
131
185
244
214
246
189
238
211
170
163
219
203
236
195
200
239
274
160
191
182
225
206
186
179
111
185
203
143
140
206
200
220
215
232
216
244
208
221
210
219
243
167
248
203
186
209
197
229
218
193
300
193
254
206
208
160
181
217
170
213
149
168
238
199
247
198
232
233
200
216
241
188
182
195
199
138
240
164
200
178
185
214
157
217
195
211
192
196
214
176
187
221
267
199
229
201
170
150
184
234
137
209
154
172
194
195
207
186
201
243
266
206
166
206
239
122
181
234
248
183
178
223
193
231
182
201
235
231
170
180
218
192
188
280
165
247
248
205
138
188
256
203
255
199
225
248
188
198
255
139
225
137
202
221
191
212
233
241
246
190
220
92
187
191
192
209
230
222
245
184
150
169
200
289
247
169
233
185
269
208
250
139
210
239
247
194
176
238
239
187
195
160
197
211
156
214
148
254
148
183
176
247
242
256
222
209
221
211
138
152
221
198
222
208
240
205
209
224
242
174
246
255
173
176
169
193
198
155
166
214
202
158
235
233
203
174
209
155
239
187
174
183
154
237
216
158
218
173
166
190
244
209
210
225
220
184
202
203
214
88
262
242
213
142
180
144
187
196
183
205
191
95
180
163
178
206
182
244
208
252
247
162
142
206
275
134
115
199
203
215
180
239
214
185
211
115
260
180
243
166
231
185
258
223
204
195
216
215
187
200
247
257
101
253
182
210
236
200
211
170
206
182
167
168
220
207
237
137
208
213
214
227
222
228
188
174
181
245
129
155
291
242
235
150
166
211
282
278
187
188
217
184
232
200
167
208
221
179
274
220
229
255
266
226
211
205
220
204
209
206
161
182
174
198
230
237
238
248
204
185
182
196
229
268
209
211
233
140
208
176
202
271
168
198
206
161
149
207
182
243
204
204
252
164
196
225
187
188
237
156
205
206
160
209
245
178
180
179
239
168
216
214
229
160
186
171
245
137
184
184
140
250
214
205
189
215
162
191
234
206
204
213
200
165
217
181
188
202
135
91
219
213
240
211
175
202
188
214
223
205
188
247
158
181
191
246
191
175
262
202
226
217
173
203
200
200
215
210
196
204
276
263
216
168
269
175
224
210
174
138
242
163
209
185
205
168
186
250
227
191
170
208
204
172
207
248
217
242
176
181
128
209
181
192
174
204
233
164
161
212
250
190
180
245
188
205
179
210
228
128
191
207
139
170
184
163
211
182
191
228
213
193
187
193
178
161
203
98
188
175
214
236
202
227
221
185
144
209
205
190
200
201
181
254
164
214
222
215
155
177
149
249
271
244
179
164
247
213
215
239
167
187
199
151
179
239
239
170
243
232
93
183
183
200
211
269
157
242
215
152
247
144
201
165
259
161
210
225
217
230
180
194
221
232
205
136
138
212
194
168
146
206
206
187
268
148
241
239
214
198
219
132
244
169
179
169
183
158
134
226
212
232
157
245
192
170
149
130
246
200
178
233
232
218
244
197
222
162
190
222
207
254
184
191
186
185
140
244
245
206
200
243
184
188
254
162
216
198
167
271
192
212
175
198
192
212
195
184
202
149
181
190
173
239
149
274
194
242
265
255
182
231
243
207
216
154
163
248
239
267
160
217
179
227
226
247
216
197
226
193
217
226
181
235
210
155
232
207
174
229
217
219
195
151
222
203
217
214
223
197
198
171
170
207
261
195
141
175
221
216
208
221
150
250
209
181
197
186
198
232
227
213
214
218
189
244
185
135
190
230
197
194
215
196
193
229
256
210
162
205
196
164
213
175
291
187
238
221
194
216
245
246
192
151
262
261
205
189
240
161
203
229
119
194
220
183
211
223
204
199
185
151
185
145
221
192
245
235
243
198
249
218
208
224
269
167
173
236
159
109
160
193
214
177
178
220
182
226
197
231
167
184
251
179
265
242
204
144
186
228
150
200
177
218
152
189
204
135
241
161
155
146
267
199
173
169
184
163
157
236
178
206
232
139
209
211
242
197
208
169
197
237
180
263
178
190
240
192
143
225
198
197
166
221
226
214
252
199
175
205
186
197
219
230
199
217
207
143
230
167
251
221
231
279
145
225
166
213
234
137
197
213
192
203
179
180
137
210
192
201
260
183
199
158
194
186
246
243
162
175
254
222
219
187
178
159
163
183
187
200
195
215
161
207
135
250
151
224
217
199
247
199
211
180
231
166
199
203
153
157
195
200
242
243
127
240
182
132
165
219
181
116
172
207
246
204
171
163
217
242
194
188
228
235
226
165
237
206
172
211
226
202
205
181
210
209
199
178
183
225
229
157
214
241
207
157
236
212
185
185
206
205
214
225
178
222
238
219
246
257
257
151
219
247
205
216
119
259
188
195
203
202
181
224
207
143
193
169
234
231
198
183
197
233
240
184
144
242
206
234
272
182
195
201
218
137
171
213
133
216
219
231
266
244
192
122
182
250
151
156
243
188
209
195
194
239
198
163
200
177
242
169
181
200
209
234
188
235
167
198
241
180
188
195
194
200
249
198
205
146
219
236
252
126
190
221
241
177
220
114
237
175
140
217
201
210
218
164
210
214
170
135
183
175
185
217
233
222
152
239
232
263
173
203
252
182
225
174
194
143
205
163
207
226
261
190
163
198
229
227
161
203
179
228
182
258
212
266
235
181
135
157
212
149
184
223
240
214
141
266
179
234
186
221
182
211
204
120
132
257
297
196
210
204
241
182
186
221
213
290
179
225
128
217
146
219
225
204
183
191
153
173
205
179
221
195
252
165
240
219
205
220
260
229
219
232
220
146
172
206
219
195
235
174
224
215
207
206
137
182
207
231
222
221
213
204
201
238
203
215
223
209
192
252
186
205
232
195
209
192
230
282
234
182
223
204
188
157
226
206
156
177
246
188
224
184
187
241
242
165
210
208
158
261
217
182
190
164
181
189
212
155
214
161
212
178
128
193
176
181
184
169
173
237
240
216
155
221
211
172
215
216
175
198
236
211
151
256
191
159
253
216
189
175
210
206
178
213
232
216
217
232
183
202
161
190
137
229
185
179
146
190
218
192
200
146
142
138
201
258
200
206
218
201
213
214
180
139
197
228
245
207
238
218
216
190
261
174
216
241
164
189
232
186
234
182
191
149
89
214
208
245
218
203
159
200
183
237
191
252
220
80
184
178
243
202
206
150
190
162
204
234
214
222
170
210
196
255
208
240
240
184
171
197
217
195
229
215
214
239
158
147
245
213
183
197
256
264
154
223
258
213
247
222
128
257
172
244
243
219
198
153
256
209
225
228
149
243
204
224
230
133
280
185
175
227
143
252
202
228
237
244
239
225
153
246
222
220
152
173
248
208
207
164
181
131
225
216
214
182
242
295
200
270
219
187
177
233
219
134
234
237
199
214
204
226
193
187
241
264
182
183
241
192
224
208
212
251
246
185
201
172
208
147
244
239
161
161
171
216
150
182
182
205
206
182
141
185
117
197
199
235
210
197
193
115
206
243
234
247
201
255
261
181
214
244
184
237
198
205
244
201
241
185
224
178
219
204
182
229
155
215
205
142
237
224
180
224
211
217
143
177
210
220
206
169
144
201
199
167
227
174
238
201
180
188
129
222
221
184
162
212
203
140
216
241
205
202
251
204
118
191
209
221
257
180
205
200
202
204
175
182
158
194
219
188
288
211
166
183
157
210
171
225
196
229
222
221
236
222
189
165
183
169
181
189
142
211
236
224
181
236
219
209
195
198
186
179
235
234
213
196
225
189
194
169
240
206
245
161
203
166
193
184
221
179
210
225
200
186
209
191
184
148
232
208
231
237
285
210
209
233
172
196
255
167
235
221
210
217
166
156
169
176
188
220
187
255
211
227
157
175
134
146
138
190
216
213
240
204
253
147
176
167
210
231
162
203
157
230
204
221
206
215
235
207
164
249
235
203
182
189
199
232
232
214
217
147
172
181
202
216
197
204
150
209
192
216
244
219
264
103
238
214
216
178
186
182
241
176
200
171
162
201
189
215
235
206
132
197
184
171
200
194
167
189
215
206
217
216
166
223
232
188
215
247
220
225
211
215
187
170
198
159
228
225
207
202
239
185
202
233
204
166
172
151
245
125
158
157
180
271
220
165
258
213
188
177
188
172
187
195
169
270
233
208
172
207
211
201
245
142
152
225
197
214
253
173
203
216
221
234
190
157
228
257
291
228
160
190
172
244
166
213
243
175
162
168
181
179
207
261
177
183
221
221
178
163
205
227
148
249
181
185
248
196
253
262
249
184
187
196
205
135
203
200
120
196
171
257
208
159
214
224
252
229
221
182
172
203
234
199
257
170
270
213
172
226
221
232
193
185
229
236
200
252
159
215
254
259
169
195
236
250
178
176
193
223
201
200
194
165
236
219
197
238
189
173
180
193
211
256
145
188
195
170
200
197
203
186
178
185
171
215
131
196
187
222
252
154
177
188
153
184
219
109
247
196
200
199
157
162
265
168
189
207
164
187
228
279
253
179
211
235
171
246
206
256
209
134
175
231
160
259
262
211
175
249
261
284
198
203
222
194
177
199
209
229
195
263
198
175
177
198
231
179
234
190
225
190
177
219
174
195
164
192
254
273
167
200
187
212
218
220
202
191
217
227
226
215
246
234
232
268
225
214
206
185
161
199
219
193
213
141
193
201
253
180
213
245
209
225
178
218
177
257
179
274
194
219
150
143
223
224
222
240
223
133
216
233
208
257
222
197
173
252
166
179
205
193
249
203
141
165
223
211
236
162
196
202
247
179
201
184
205
210
213
159
224
230
249
218
165
196
169
173
146
190
128
164
222
203
170
168
281
250
218
213
146
183
253
286
185
201
209
188
236
161
254
205
248
226
127
176
254
211
211
239
166
187
151
206
194
197
222
222
221
194
181
170
249
204
235
218
196
274
227
225
164
187
242
162
207
258
207
175
183
212
204
149
250
212
224
238
210
253
224
217
196
220
217
228
200
198
142
191
200
188
170
186
207
155
207
221
193
134
166
206
205
212
229
238
217
212
275
219
226
207
200
154
195
194
232
169
209
281
184
173
239
240
207
169
121
228
177
166
213
273
241
224
207
235
246
173
235
230
172
283
184
219
208
192
225
227
206
160
239
134
245
210
178
215
192
224
200
237
250
206
196
196
175
195
188
175
242
183
251
172
215
183
159
130
209
173
207
220
207
245
210
156
160
220
182
259
190
227
192
240
237
216
190
158
165
235
168
199
218
174
199
253
164
127
205
106
224
190
155
214
203
185
185
216
176
228
187
199
196
174
218
218
166
186
252
223
166
208
211
175
255
203
152
108
169
214
188
227
168
210
212
212
225
183
155
233
166
151
202
252
187
154
220
226
196
182
250
129
200
191
228
262
210
155
190
188
254
158
177
149
179
237
194
237
224
207
161
145
201
222
191
192
198
184
168
215
238
206
134
267
220
231
138
175
213
236
220
201
164
160
191
182
205
263
214
229
273
217
211
154
307
164
216
231
142
193
226
195
170
209
218
294
228
196
182
235
255
230
136
186
198
224
243
207
200
180
232
170
221
205
231
234
193
241
203
202
215
214
185
154
200
203
235
255
239
189
197
215
208
211
229
170
141
201
229
223
196
237
163
168
201
253
193
257
218
288
153
158
187
224
234
179
199
207
163
194
263
203
274
154
179
182
189
219
188
186
245
206
231
139
154
275
126
207
188
174
162
197
255
167
160
232
172
183
175
195
221
218
181
209
180
218
233
201
204
238
200
234
146
214
176
205
257
160
204
249
187
174
200
230
159
204
236
196
229
224
181
222
261
192
264
269
254
163
194
145
213
184
155
201
175
221
131
160
246
237
221
196
240
248
157
216
168
238
154
163
231
247
202
185
243
199
231
146
157
224
192
186
204
177
230
180
216
166
238
173
205
203
204
240
204
198
221
184
240
167
236
194
240
188
167
178
175
155
204
226
183
254
174
204
162
198
235
174
178
230
198
258
244
196
197
190
154
206
186
242
201
145
208
155
207
238
200
199
210
210
224
247
219
169
202
219
144
248
228
206
237
182
275
191
217
278
204
223
255
187
210
147
185
250
225
186
218
164
234
210
202
214
173
230
201
215
187
255
222
206
194
185
245
161
173
166
161
191
193
201
142
230
205
253
209
238
139
202
182
268
170
148
265
165
213
189
238
162
208
197
213
276
201
154
213
161
175
226
225
133
169
182
246
178
167
189
244
202
230
205
187
235
156
242
172
158
200
196
248
197
194
194
145
243
216
242
219
268
174
173
249
250
227
173
164
163
218
182
120
236
249
205
152
174
179
221
203
239
193
219
192
197
168
122
201
165
209
190
216
219
196
214
227
199
212
187
187
139
224
180
251
200
162
238
176
104
191
207
150
203
204
267
260
235
174
271
215
190
169
240
181
295
278
170
207
176
191
199
190
136
228
157
143
210
191
192
253
168
166
151
157
195
175
198
164
208
164
207
160
168
193
218
234
214
203
174
193
205
157
155
190
222
199
180
179
225
222
134
249
200
176
235
108
224
245
183
208
228
202
187
210
241
203
242
199
186
232
212
272
177
169
202
226
161
226
191
210
197
242
180
210
119
158
256
191
269
198
146
223
211
256
146
222
192
219
207
257
152
207
248
248
209
145
205
204
258
185
219
165
189
212
237
178
189
181
198
196
183
213
236
151
238
136
216
112
209
214
191
168
183
198
217
178
215
156
179
189
218
216
226
257
245
234
177
234
192
170
192
181
236
191
147
186
228
190
208
185
238
172
235
146
151
234
217
281
173
208
171
203
176
224
217
199
169
188
163
170
252
175
221
155
207
197
215
241
218
185
224
167
238
222
225
238
195
189
217
179
173
214
164
241
146
222
136
233
180
132
196
174
178
235
256
227
215
143
234
230
162
208
222
130
170
170
165
230
167
155
166
200
211
207
173
248
283
224
226
163
303
202
194
228
234
267
186
179
189
281
194
237
169
211
200
177
137
250
194
211
175
183
203
172
145
192
224
168
110
152
209
248
152
263
161
178
186
189
157
192
126
183
264
261
215
195
183
180
197
193
172
261
260
276
204
211
177
224
182
180
184
163
155
203
181
193
219
236
209
218
231
214
251
205
163
214
184
149
226
199
167
203
191
195
240
194
190
179
215
244
204
249
199
226
241
192
211
195
179
243
199
213
203
223
187
229
213
209
201
170
191
242
216
180
239
248
222
186
203
222
157
148
188
224
224
192
199
215
167
234
165
156
213
216
199
191
254
192
195
186
168
160
203
168
151
234
240
205
217
207
207
110
208
233
216
243
160
230
242
258
147
210
155
273
146
252
207
198
189
204
227
164
208
208
215
185
222
173
157
226
188
135
145
184
197
197
219
206
202
211
224
230
189
219
244
208
201
192
233
167
194
219
220
217
170
186
266
155
229
169
213
244
224
198
263
222
164
226
215
179
155
192
245
174
195
195
196
157
205
243
212
248
196
174
226
253
200
285
179
226
167
168
180
188
137
186
157
201
210
164
205
121
204
285
176
224
199
223
200
185
209
195
195
287
180
226
148
176
196
115
239
226
199
193
181
232
157
197
176
210
196
198
209
205
197
203
181
246
176
215
160
192
169
168
217
158
195
206
92
205
172
200
121
248
242
187
281
183
211
183
171
199
191
211
242
224
229
196
197
212
177
192
195
209
194
202
214
216
220
192
196
217
181
187
187
201
263
157
164
181
248
262
185
219
221
167
246
167
176
222
231
232
200
187
191
201
200
199
203
149
170
165
183
203
224
184
203
180
188
183
242
216
248
199
163
180
170
219
145
172
238
246
190
215
248
168
235
251
197
117
175
193
193
222
184
250
190
184
224
132
199
198
242
221
229
187
218
232
196
163
207
141
207
192
247
146
235
182
196
147
115
238
166
248
180
197
206
245
206
243
167
209
228
228
216
278
195
276
189
234
201
179
220
176
177
193
216
175
210
205
173
208
208
259
215
202
163
228
205
253
214
255
213
236
224
172
226
229
181
214
232
186
179
116
225
233
211
180
147
220
153
190
144
183
171
270
218
260
207
207
218
190
169
236
215
236
155
205
216
183
178
241
195
152
174
194
187
133
212
198
216
251
188
265
176
195
150
168
160
182
298
235
207
177
210
294
252
207
198
210
227
244
226
205
241
195
154
164
135
246
138
147
177
185
195
188
198
200
156
122
182
183
194
209
247
231
147
188
269
220
213
238
239
172
264
231
169
191
235
172
160
220
207
171
193
152
209
144
158
191
167
186
197
139
183
203
210
201
228
218
163
209
203
164
163
174
160
213
214
209
183
191
234
136
236
225
212
135
174
242
174
207
231
141
204
277
183
181
200
218
226
189
187
232
142
215
136
239
217
189
146
221
238
220
215
163
174
246
214
203
223
244
217
233
126
191
248
216
168
219
193
151
238
217
219
227
234
193
183
210
173
210
220
229
171
143
162
191
212
153
193
210
181
270
227
187
173
201
164
237
242
133
254
170
209
189
210
181
210
151
221
183
153
232
240
263
166
137
227
245
177
221
249
265
188
242
266
235
228
172
242
180
193
191
259
182
266
252
165
183
157
188
191
229
152
200
220
203
205
258
237
214
150
200
222
186
159
186
172
148
207
241
219
206
171
227
219
252
203
233
159
216
226
166
210
195
119
192
163
249
201
208
222
270
157
193
198
222
246
224
206
224
272
159
152
185
291
183
175
198
110
218
175
182
201
143
211
183
232
236
210
173
166
235
118
193
280
228
235
182
186
129
160
255
182
219
213
212
152
184
196
167
124
170
152
149
220
179
210
197
138
138
136
250
135
242
264
239
174
223
230
153
239
220
218
258
225
190
165
187
220
234
174
177
240
211
221
195
202
245
116
239
241
210
166
215
221
197
233
222
208
197
260
194
166
207
175
218
130
255
199
227
198
224
170
253
209
191
166
216
199
217
189
159
293
233
205
195
228
173
214
213
155
291
244
160
253
221
208
188
238
188
194
200
209
137
194
154
189
194
171
207
204
233
198
189
201
228
166
195
233
155
219
200
188
187
266
220
218
183
180
282
221
233
256
194
227
216
177
222
168
168
210
203
226
165
216
214
162
228
266
217
137
189
124
201
232
180
186
232
164
236
220
194
185
241
206
163
301
131
209
295
259
206
177
210
182
158
154
152
243
180
115
203
160
183
188
141
193
205
248
179
218
229
228
192
162
194
240
235
196
260
192
232
230
261
217
267
160
171
225
249
188
228
169
160
158
180
246
229
163
249
186
218
232
238
174
157
206
200
200
177
211
193
256
231
199
193
204
198
232
180
162
229
117
153
242
222
208
138
182
241
131
203
238
224
190
217
156
165
215
229
250
219
206
214
188
216
199
225
183
197
164
210
210
247
229
232
168
199
217
206
170
187
239
177
162
193
182
188
279
208
175
251
159
231
163
120
269
290
181
156
208
158
195
250
235
163
195
162
217
178
160
214
206
208
166
230
158
166
183
120
207
196
216
194
156
134
186
190
167
221
188
179
211
167
294
218
233
157
193
203
208
209
200
203
186
154
267
204
217
211
164
235
191
228
180
185
200
235
211
245
204
189
195
228
175
223
243
227
220
238
200
237
198
127
233
171
190
167
170
135
252
207
174
188
190
227
240
181
201
168
194
169
178
195
149
120
183
252
180
209
202
187
130
232
162
231
234
178
249
196
235
210
214
195
259
239
182
230
182
216
257
236
167
146
212
173
189
196
204
230
146
202
173
174
156
195
224
228
211
192
243
185
174
163
203
207
195
182
240
173
204
171
215
203
182
244
212
232
192
223
209
160
174
235
229
150
220
177
189
231
218
203
261
204
112
158
178
214
177
179
217
209
285
195
213
232
201
256
203
239
232
195
195
176
193
230
179
142
179
198
180
184
160
145
247
251
170
184
187
211
134
178
206
223
198
198
108
235
217
241
160
197
243
192
190
177
225
197
180
158
167
112
221
201
249
173
246
172
135
115
134
167
198
178
165
222
196
185
196
220
184
182
242
241
243
245
190
208
131
201
173
246
183
242
243
193
208
218
217
238
226
220
285
167
199
196
180
195
157
163
203
252
260
211
167
217
216
246
240
213
219
286
184
208
238
175
219
252
147
196
157
143
180
190
250
176
224
206
204
233
220
239
183
170
222
249
187
201
209
166
224
170
159
164
234
156
191
150
190
203
269
239
109
213
210
233
203
256
221
255
223
261
130
223
145
182
201
205
146
201
229
172
223
151
242
173
184
229
229
203
186
192
201
162
219
170
218
187
185
171
254
244
221
286
216
222
177
227
183
239
209
215
219
189
185
177
201
200
177
212
190
200
215
194
195
202
240
197
219
191
227
226
237
162
219
208
157
184
179
210
196
152
123
159
223
216
202
223
241
197
203
199
200
217
188
193
155
204
128
216
211
219
207
193
180
173
157
196
246
211
258
215
195
193
154
170
232
226
205
211
226
159
213
237
182
127
221
240
85
169
212
207
227
178
127
204
174
186
198
195
211
202
145
195
196
242
227
253
170
215
191
211
158
164
191
260
210
202
250
218
182
193
222
187
207
203
183
162
186
171
185
187
187
216
197
118
211
186
188
208
207
175
223
197
220
215
222
251
177
252
220
198
142
178
215
148
183
179
240
203
178
178
237
157
236
166
172
240
204
236
148
220
163
212
199
198
165
174
174
180
236
208
206
184
169
165
217
186
159
237
159
211
232
198
223
194
207
264
200
194
222
167
231
228
113
192
218
252
229
242
238
178
214
186
206
190
220
194
144
169
193
176
196
234
137
215
157
203
219
290
192
129
188
248
188
183
204
161
148
139
151
222
219
169
195
179
214
219
255
223
186
171
190
155
186
219
218
201
225
167
159
222
184
153
223
203
196
180
221
244
215
180
254
127
189
156
244
227
208
153
193
214
175
191
262
214
223
199
162
199
207
119
215
163
216
186
201
215
211
239
239
194
202
250
191
214
249
199
173
220
142
175
175
192
253
227
169
255
171
131
142
191
243
160
146
220
232
219
193
207
243
175
191
253
255
245
193
204
200
166
170
280
165
182
198
225
176
248
242
207
184
193
224
192
235
244
160
198
194
159
187
218
180
198
173
234
156
198
127
207
226
230
216
165
210
210
208
239
182
187
212
179
128
197
203
209
193
194
169
202
203
228
200
264
153
173
156
151
180
207
164
232
118
223
251
155
235
238
172
139
169
192
231
219
132
221
178
198
198
209
202
107
156
157
206
172
237
295
160
178
185
206
162
170
152
200
252
157
183
226
211
210
183
225
210
134
240
199
240
157
168
155
133
131
166
160
221
216
202
208
166
187
162
148
212
192
154
178
258
128
138
173
191
159
195
182
182
177
183
188
238
246
156
249
161
235
200
174
167
238
189
199
267
211
242
219
196
215
192
144
199
158
184
177
192
191
212
192
209
232
158
192
255
144
213
161
229
145
253
176
212
166
238
157
242
136
145
158
298
190
223
201
217
219
230
187
149
172
180
186
217
232
202
199
124
249
200
210
193
203
186
139
240
157
212
186
133
182
136
194
248
195
181
166
180
218
203
178
174
178
187
238
162
224
183
170
162
146
194
169
233
193
253
191
229
210
206
224
243
172
221
172
213
184
222
128
243
238
194
186
217
189
269
153
184
208
222
192
214
205
173
209
171
137
168
209
231
262
179
184
157
159
138
157
205
150
183
160
214
179
192
231
191
169
197
225
207
238
172
161
167
189
214
187
231
168
196
222
168
200
210
188
169
272
185
195
241
166
190
236
169
218
206
233
166
181
215
158
238
218
169
175
213
223
256
167
221
98
158
214
213
223
214
215
194
187
200
177
158
221
235
246
253
186
173
198
207
234
138
229
162
152
194
207
224
191
251
234
244
192
203
168
184
125
155
187
218
216
200
210
199
150
226
166
216
210
259
249
169
230
171
227
245
195
205
156
230
227
282
210
240
220
186
211
139
242
214
260
198
194
217
221
153
188
161
256
141
173
229
196
184
178
224
242
174
248
188
182
213
176
258
205
231
285
201
242
209
230
223
186
143
159
200
223
191
213
222
117
191
165
212
217
228
200
222
186
197
194
238
230
248
190
185
249
218
198
213
201
221
241
202
183
232
164
235
230
207
198
175
231
221
227
188
226
215
165
199
219
174
137
112
230
170
214
253
218
187
239
221
206
150
179
240
217
119
200
157
162
200
288
182
188
225
272
208
220
225
254
213
243
204
147
212
200
121
238
174
181
153
198
140
225
279
252
214
243
250
212
209
178
215
224
177
178
203
195
186
145
210
166
172
213
176
222
204
161
270
242
238
208
167
222
219
178
212
148
221
145
223
142
148
251
208
234
192
227
222
215
198
260
195
218
140
156
261
210
254
243
228
213
186
165
207
206
218
209
232
246
259
212
135
202
259
248
186
249
221
194
196
191
154
169
202
174
235
185
139
224
175
193
194
131
218
143
254
211
202
254
232
103
197
188
224
307
244
183
250
178
265
174
233
220
199
207
261
207
202
241
248
180
199
112
242
219
168
188
206
212
182
207
233
174
211
159
184
265
144
231
121
217
171
247
281
194
205
187
257
247
164
230
246
211
188
185
210
248
166
154
180
175
168
204
213
153
222
226
185
147
151
177
191
214
208
243
214
186
205
208
165
222
182
211
251
219
164
201
200
160
197
185
237
230
241
186
228
192
191
216
184
171
161
190
218
171
200
207
198
179
183
203
205
199
238
186
133
208
164
185
188
225
178
122
199
237
142
219
212
151
225
191
227
238
245
158
173
244
200
161
208
231
237
197
242
209
190
123
234
197
209
215
151
176
208
184
201
220
220
191
172
183
181
140
228
195
202
171
213
182
255
224
177
276
212
167
196
244
196
183
181
179
204
125
166
184
190
273
225
155
152
177
151
167
176
208
223
174
176
251
175
159
226
117
223
209
239
225
217
222
178
214
236
242
247
189
192
198
206
226
194
212
153
218
212
176
170
219
250
262
186
223
229
221
199
232
284
193
225
181
204
132
232
189
238
211
222
239
253
202
236
213
224
182
196
178
214
179
184
235
252
257
131
166
148
220
154
142
283
249
218
171
167
202
186
242
182
206
199
180
238
282
188
237
212
152
212
122
126
205
158
194
257
261
195
199
255
165
238
164
270
235
207
231
243
238
264
178
217
216
196
192
212
261
152
243
209
257
151
226
235
219
140
244
185
154
213
178
226
240
201
193
204
228
171
206
164
201
203
174
204
218
208
213
112
300
168
140
156
245
176
195
203
205
239
164
182
157
165
236
203
190
197
184
211
162
188
151
222
197
224
219
205
228
228
224
205
233
207
193
260
238
204
211
193
195
232
171
213
149
179
192
188
146
178
181
175
202
165
188
184
199
121
205
176
171
190
216
173
207
211
175
187
211
142
214
165
200
174
170
213
174
164
190
231
270
179
176
163
155
213
156
197
165
279
165
224
174
245
288
181
236
162
230
231
180
233
195
219
243
212
231
180
223
180
188
173
162
213
261
177
154
221
188
185
206
143
218
233
169
202
247
232
204
151
189
196
183
168
253
226
237
214
197
263
192
190
217
223
148
193
249
234
215
219
219
203
174
259
230
146
184
187
129
238
200
198
156
247
182
174
218
211
187
197
238
249
187
209
191
217
103
166
194
234
224
212
231
217
170
200
197
182
165
184
193
157
188
207
195
186
154
253
196
178
214
227
148
240
171
207
185
238
201
139
180
164
223
195
189
232
142
169
169
275
202
266
215
211
233
174
214
145
196
177
221
207
174
212
196
183
190
200
246
153
221
226
190
207
208
203
237
160
256
192
163
249
232
215
187
173
183
234
180
144
264
218
197
230
211
183
117
186
223
225
176
164
164
223
235
223
163
189
177
206
255
201
197
215
180
178
178
205
226
216
249
207
197
115
220
199
209
198
221
195
181
274
201
188
207
217
169
158
154
196
196
174
153
266
263
146
195
191
193
201
186
243
223
156
270
170
183
161
211
238
167
214
182
165
181
191
198
168
253
140
183
209
241
199
169
164
207
240
197
180
132
204
173
254
179
148
212
209
219
216
223
156
141
218
224
181
221
205
196
170
235
244
214
137
214
243
218
186
173
233
189
192
174
224
153
146
230
203
206
188
235
196
171
207
203
236
193
191
195
136
259
222
184
238
168
199
214
118
230
210
209
220
184
202
212
272
159
165
152
143
185
183
229
172
202
213
264
175
189
231
247
226
214
230
245
221
231
205
195
172
159
198
194
182
240
198
171
213
201
192
253
140
204
145
173
185
215
256
243
202
232
172
118
126
190
186
181
176
214
233
208
186
225
198
189
145
155
208
232
178
183
136
221
232
236
162
183
218
155
171
176
211
176
207
241
215
191
171
261
224
210
264
248
239
213
219
178
105
222
222
240
232
200
197
251
263
257
220
204
171
172
269
192
195
238
179
205
191
211
202
183
255
215
194
171
222
237
179
223
235
124
122
166
208
186
189
253
245
299
230
228
205
211
178
208
157
187
178
238
203
162
197
181
227
172
246
258
161
146
117
173
276
182
204
106
191
259
148
227
212
206
158
244
197
173
197
163
201
251
234
245
163
241
208
185
188
252
192
216
148
241
179
179
177
190
293
229
218
220
208
248
227
173
215
262
233
260
195
195
131
246
211
268
209
174
120
159
215
198
200
183
168
237
165
278
174
271
213
198
212
160
173
208
238
144
227
176
245
173
187
233
176
170
230
258
166
213
202
165
213
269
187
180
205
194
168
242
241
218
190
214
196
169
204
195
144
215
212
238
212
107
234
230
179
178
150
203
139
238
191
152
229
195
149
192
170
168
170
174
215
243
217
219
204
158
213
169
189
180
189
221
202
217
202
191
181
190
227
177
174
198
250
215
213
199
223
175
172
149
164
302
172
232
177
237
158
227
227
174
237
222
179
152
153
225
215
189
213
207
240
236
164
222
186
149
211
236
215
188
119
250
199
191
251
275
132
179
238
194
229
162
231
276
272
222
265
246
203
238
205
224
161
251
161
203
206
202
185
220
188
175
161
182
166
221
198
254
217
210
208
258
178
245
229
216
156
247
224
214
193
156
182
181
187
182
173
194
149
124
207
200
242
250
186
177
184
232
234
235
143
235
234
188
202
196
207
182
142
158
253
249
168
201
268
90
157
192
179
165
248
159
177
155
235
164
121
244
224
234
234
211
225
127
209
161
184
168
229
255
200
186
182
244
157
217
202
175
216
226
218
219
155
266
200
258
180
216
179
205
213
268
202
168
244
156
235
216
206
205
213
157
243
235
302
203
197
169
280
177
203
158
175
147
154
210
172
229
154
175
225
166
202
224
183
200
235
191
289
170
206
198
224
190
210
224
190
153
199
211
155
209
195
227
192
221
164
221
250
207
151
257
210
155
180
184
129
171
205
194
219
197
214
191
238
198
164
148
195
203
271
223
218
241
220
203
137
167
229
193
217
160
196
208
228
199
153
170
215
199
199
193
229
230
221
195
185
221
268
212
203
260
214
167
165
181
236
189
261
267
163
189
175
205
183
209
211
247
252
225
155
153
221
188
214
218
188
167
136
235
233
193
219
184
223
183
243
224
259
185
211
198
201
276
228
231
229
169
176
209
268
184
196
148
239
195
222
233
183
200
222
192
235
233
175
214
192
225
242
201
213
162
183
216
199
159
215
243
181
199
241
185
144
212
220
159
162
179
239
191
208
207
250
230
155
234
183
150
233
241
167
203
169
138
197
170
133
188
189
236
231
198
228
167
188
242
188
280
163
218
201
227
175
197
210
205
163
183
182
174
151
223
165
241
201
202
188
200
214
206
167
178
224
139
187
205
171
206
180
276
238
196
175
246
169
104
209
224
181
194
200
185
243
206
156
170
266
208
160
280
194
242
194
191
171
160
207
197
206
243
145
139
131
255
216
231
194
261
198
234
240
251
185
160
185
192
139
208
168
222
251
242
168
190
245
213
189
256
180
145
184
228
191
206
258
259
219
230
203
192
183
214
256
183
195
193
170
195
211
227
237
171
227
259
170
246
215
230
179
205
264
200
164
218
174
201
243
236
184
269
196
170
183
166
160
203
226
145
174
167
234
222
212
191
218
203
203
194
184
214
201
193
191
185
243
142
259
223
106
228
196
172
136
213
188
232
243
164
175
208
187
210
215
189
251
202
179
245
168
200
162
227
236
157
138
201
183
136
181
246
231
121
237
214
194
274
217
239
157
217
233
240
214
215
169
137
218
139
215
198
171
213
220
154
223
180
234
217
199
208
169
197
206
203
161
231
158
178
181
229
260
213
204
159
168
201
240
240
160
158
248
133
202
197
214
167
224
192
253
184
146
156
199
250
158
187
138
143
212
240
175
200
241
184
115
218
205
161
193
193
205
196
187
269
178
247
199
270
214
226
169
182
212
215
219
212
210
193
217
229
241
180
160
195
216
213
170
201
213
268
170
261
214
205
133
238
223
162
148
284
249
207
211
179
200
262
202
269
230
260
220
185
215
283
158
197
117
173
160
165
167
149
200
169
215
229
163
169
262
282
232
216
179
173
192
249
204
156
141
247
178
193
188
183
242
200
233
229
250
225
163
226
194
185
185
173
212
204
178
165
235
214
156
174
194
219
213
132
251
223
260
216
122
191
217
183
128
209
181
229
193
171
288
211
249
225
194
276
227
164
217
224
174
234
192
209
192
205
215
188
158
134
179
169
189
140
203
208
174
204
181
197
210
187
176
175
206
188
192
211
196
204
223
281
153
188
227
150
224
139
167
254
159
181
236
157
194
83
186
193
194
195
231
150
202
220
226
213
176
119
208
247
215
244
181
163
241
198
170
234
163
259
214
234
233
227
245
198
190
191
141
176
218
239
212
181
192
198
192
246
202
192
189
227
190
188
166
210
208
171
174
233
173
209
155
226
136
243
189
225
163
160
246
225
195
210
174
213
182
250
217
152
236
219
185
192
242
203
206
215
208
242
223
242
187
186
248
184
185
256
192
202
152
261
183
188
208
213
224
182
155
195
187
217
218
219
210
231
207
192
192
133
179
192
234
208
170
250
222
249
178
135
206
194
158
137
129
259
250
202
153
195
223
237
191
175
185
169
213
255
187
181
194
129
201
176
202
179
175
160
208
227
200
225
159
220
220
130
169
127
255
121
236
219
209
237
208
204
190
152
225
172
246
217
157
248
224
237
199
217
186
251
134
279
211
154
209
214
199
163
230
216
207
249
251
204
208
261
158
206
164
217
131
245
209
221
185
233
228
180
180
199
223
233
190
220
196
203
209
127
256
187
226
207
194
204
125
148
176
173
156
221
168
209
225
171
162
184
172
161
211
188
196
224
224
185
147
215
206
146
155
213
230
231
139
288
202
155
218
152
173
164
193
212
197
184
244
164
193
217
210
166
193
215
176
197
236
180
175
147
218
210
189
215
196
241
188
176
268
198
240
177
141
173
157
197
194
234
124
221
199
214
143
229
147
131
206
199
194
187
225
266
190
226
221
140
236
161
191
201
162
232
207
180
201
221
176
226
133
120
167
222
234
187
206
205
223
213
206
252
199
236
258
135
203
134
238
177
250
182
179
235
188
205
180
178
170
184
157
249
201
178
210
160
264
173
193
188
204
234
123
198
241
217
217
261
177
195
182
195
178
188
203
195
238
161
194
213
209
232
224
182
178
132
186
119
183
197
216
186
195
203
192
246
196
236
217
218
170
140
220
238
250
162
208
182
203
162
227
222
244
189
238
250
160
196
184
224
228
226
182
219
135
159
220
187
209
245
214
219
166
212
137
181
233
219
181
185
202
183
252
161
167
220
171
162
244
231
213
269
245
181
255
224
227
232
156
146
243
175
171
232
212
225
142
167
209
213
152
190
182
190
177
173
169
163
162
182
202
213
232
175
224
172
162
172
167
150
254
248
228
163
182
271
193
213
231
180
184
202
185
175
193
160
198
230
163
178
114
197
186
229
199
184
251
167
178
266
148
220
166
174
175
213
210
195
221
203
172
147
226
216
178
207
225
237
156
288
253
152
246
212
143
219
188
218
260
191
221
180
223
175
195
160
205
251
202
236
179
196
165
224
241
238
168
184
189
144
179
215
196
211
169
227
175
229
180
237
217
197
200
219
238
140
236
221
156
212
217
147
237
176
151
205
106
205
207
187
190
191
276
142
155
216
158
175
179
198
245
245
177
203
182
183
221
160
191
139
261
229
186
211
205
153
156
201
188
185
213
197
166
191
257
188
180
188
224
205
233
201
220
187
197
195
206
219
171
203
218
210
205
213
185
274
107
204
179
210
175
180
100
171
259
186
125
182
189
206
213
220
256
187
203
190
159
220
129
168
155
216
241
223
206
199
176
169
135
259
202
208
194
256
122
204
156
183
147
189
181
236
244
253
223
245
199
206
137
184
190
185
140
227
203
194
196
215
227
209
237
217
185
205
177
179
246
251
250
223
192
181
172
194
198
189
224
133
224
209
187
256
220
135
211
224
189
272
212
191
130
233
173
209
217
220
217
165
167
217
203
138
205
189
230
242
217
226
211
214
227
211
168
215
183
170
193
193
164
144
167
214
188
245
252
226
125
171
187
195
184
179
224
105
233
179
236
209
186
154
225
271
188
169
271
214
226
184
263
217
155
190
211
169
172
182
216
230
167
189
217
185
163
171
157
192
265
189
186
162
184
213
183
177
268
222
209
248
222
207
211
239
178
245
214
259
227
245
237
198
236
203
200
225
166
209
229
210
207
167
209
228
196
220
167
220
214
198
245
170
195
198
173
202
218
194
200
189
201
175
200
231
244
181
197
223
180
213
234
251
206
167
209
172
217
185
160
192
222
148
195
215
202
238
196
174
196
238
214
251
153
195
188
141
177
171
201
218
202
209
207
176
280
200
237
164
252
182
237
124
205
219
181
149
160
207
201
239
268
185
201
148
211
210
184
129
219
221
163
180
216
237
187
178
266
176
191
196
235
203
198
202
227
179
222
183
228
233
213
109
250
179
226
201
208
216
170
192
205
227
235
238
152
202
205
236
195
224
155
211
287
181
187
129
226
198
228
145
178
200
243
199
187
194
257
177
157
223
215
157
256
197
200
255
248
206
183
242
224
191
137
182
188
156
218
170
210
198
216
188
255
190
180
178
203
134
224
171
189
221
239
196
138
243
176
213
134
205
222
165
149
183
194
233
215
229
197
196
239
205
199
206
170
160
217
202
223
148
199
138
213
147
185
269
234
255
238
167
143
232
196
271
205
176
195
145
212
185
235
166
197
200
193
204
230
195
173
121
194
178
205
191
201
236
195
192
188
236
156
205
156
203
247
213
167
210
276
150
229
194
179
254
260
173
180
181
205
164
202
166
199
191
188
208
213
197
120
163
116
196
164
233
177
261
163
176
179
197
228
228
221
235
219
160
239
195
186
247
130
248
159
167
186
203
199
219
209
213
188
253
159
190
262
124
238
218
180
218
179
202
147
203
248
244
267
193
212
182
203
220
181
247
219
156
193
215
189
225
244
210
201
190
145
231
182
261
171
221
205
191
172
209
168
119
170
210
176
279
239
196
171
151
241
219
170
247
235
214
241
199
132
220
98
180
204
211
242
162
206
154
230
164
209
146
209
148
247
152
202
197
218
166
136
206
187
263
197
207
254
187
242
157
214
186
234
229
192
216
224
189
194
210
216
205
254
194
255
199
211
145
185
181
170
214
233
180
217
166
199
213
156
207
208
261
256
183
179
202
209
235
241
125
218
244
230
176
173
158
161
200
246
266
216
166
230
243
156
196
258
232
256
253
217
124
202
253
245
216
199
207
142
288
205
243
211
223
241
147
186
203
197
212
126
243
193
158
237
216
230
140
267
218
236
140
204
194
225
244
171
198
148
220
226
142
226
200
230
202
215
153
203
190
223
164
195
160
155
165
249
205
127
202
230
160
165
195
193
209
217
130
194
207
163
168
206
125
229
233
163
189
212
160
223
206
178
204
245
215
201
216
143
196
196
213
210
240
194
227
196
200
176
163
269
193
180
200
215
161
240
211
261
238
145
183
189
186
185
232
161
211
161
166
212
231
203
176
175
208
222
240
214
248
201
136
171
217
170
230
201
219
245
255
156
214
149
185
204
190
218
249
224
231
175
175
157
181
235
168
237
190
145
184
178
180
207
218
182
204
127
236
203
211
206
182
223
160
260
200
214
228
239
168
232
259
239
166
132
254
193
177
179
220
172
248
268
222
247
159
180
211
206
202
143
150
264
119
218
148
224
130
251
238
199
202
217
218
218
239
177
255
182
123
158
200
202
239
271
188
213
213
238
206
170
109
184
190
228
218
218
197
192
256
255
240
204
186
178
178
240
189
265
208
179
200
163
253
176
215
176
166
194
148
283
221
180
139
166
242
223
168
218
254
206
228
203
168
230
206
175
210
108
197
170
216
199
181
173
251
232
192
214
237
217
208
138
195
195
132
179
246
173
227
183
220
224
260
238
235
181
161
161
206
251
206
206
219
187
214
210
236
174
183
150
226
192
267
227
173
244
238
199
246
193
205
192
223
235
176
161
219
216
178
222
175
248
124
216
226
202
203
264
242
220
224
232
185
234
171
196
203
207
136
118
249
239
226
177
189
196
170
189
175
202
225
226
208
213
168
188
236
228
198
204
169
182
203
193
249
190
261
178
217
193
173
220
173
156
243
180
212
224
169
143
276
119
191
161
180
224
181
224
215
196
231
186
194
232
205
117
237
248
174
266
222
182
186
223
193
212
201
279
261
202
180
247
241
241
202
183
241
214
245
208
173
195
217
193
161
196
232
267
170
245
153
242
164
199
227
225
241
171
200
165
208
183
127
178
229
190
188
151
205
212
140
174
203
172
257
180
251
204
162
150
197
194
146
242
174
134
198
207
176
205
219
213
248
236
196
216
229
208
235
263
173
122
197
167
203
188
168
215
157
151
231
203
218
260
194
192
156
215
179
184
198
238
175
142
191
176
247
213
177
113
170
205
201
214
250
199
170
178
126
210
238
161
229
185
226
160
175
148
245
194
153
228
233
187
192
178
170
213
215
177
227
138
277
233
190
121
187
260
219
165
160
160
215
233
252
198
180
243
195
223
144
193
219
137
187
166
215
174
160
144
194
176
179
213
191
176
183
191
211
235
203
225
217
163
212
192
172
187
162
236
170
140
207
170
221
184
263
204
204
178
245
253
222
207
261
217
235
227
215
212
213
238
199
221
231
163
201
214
232
207
241
118
157
230
176
219
231
153
144
193
170
179
220
274
222
193
257
248
179
205
143
179
152
214
264
189
162
188
172
107
150
152
215
242
188
189
170
213
175
226
127
186
169
197
153
214
206
239
223
194
191
215
206
192
179
154
239
229
225
149
227
252
236
233
197
225
206
139
164
228
162
215
179
188
166
212
212
263
219
172
223
205
178
173
161
187
231
200
239
158
205
240
236
185
171
184
289
231
180
198
196
167
230
128
174
227
229
218
199
168
226
203
177
135
230
221
207
228
197
249
239
203
230
223
191
228
144
268
243
204
221
279
218
266
213
204
229
176
229
232
188
216
190
212
210
176
137
240
202
248
186
278
221
226
244
164
193
196
147
175
171
172
179
224
213
147
210
208
202
217
201
170
214
221
209
215
173
198
159
182
208
175
246
178
210
192
157
185
190
151
206
220
256
201
192
180
166
211
171
234
168
204
194
221
186
194
219
143
184
202
201
160
102
107
178
203
243
146
247
230
219
246
248
136
185
208
166
265
259
196
187
204
207
213
280
221
176
180
199
145
225
234
282
192
203
262
176
246
216
177
215
222
216
151
216
179
195
228
192
160
264
229
207
235
135
188
157
244
165
202
204
220
155
184
183
212
144
174
184
228
145
259
212
184
130
197
184
183
189
153
219
232
198
206
271
170
184
164
211
228
152
235
195
163
182
258
216
217
120
249
203
170
211
192
171
193
249
228
220
213
217
187
148
212
171
225
180
267
235
156
180
243
219
242
130
238
194
270
246
200
191
186
142
146
246
220
146
159
208
214
226
221
187
149
251
177
226
234
184
217
219
218
173
206
245
179
183
216
135
194
189
202
156
232
214
191
215
187
136
237
234
179
233
113
180
240
197
177
181
209
172
198
212
223
207
174
200
190
112
204
240
180
198
218
225
190
171
161
172
140
194
259
237
172
226
181
235
236
267
211
232
192
175
188
222
195
181
230
199
255
179
140
170
199
192
223
175
223
199
208
173
190
203
261
188
217
234
221
173
165
198
262
203
202
189
159
183
199
273
211
146
206
198
175
189
265
199
241
221
213
206
182
234
237
271
137
187
272
236
214
216
188
249
191
244
168
229
186
191
213
214
198
201
188
129
155
209
192
201
258
223
194
160
208
215
211
220
146
208
149
214
191
219
176
199
169
170
214
242
209
182
248
192
147
162
267
163
193
222
272
182
210
214
170
255
195
165
200
195
198
257
185
166
164
192
232
210
167
229
254
250
191
167
255
121
188
246
217
214
192
201
156
226
218
133
204
248
185
178
249
197
208
171
161
163
211
167
161
211
174
175
185
181
154
175
165
224
199
267
250
199
169
224
204
155
220
191
184
287
105
204
223
213
195
188
219
204
189
136
225
235
197
249
209
222
237
212
151
195
177
171
227
225
194
175
162
150
250
182
202
179
170
196
231
139
217
198
174
207
209
242
181
246
173
155
220
238
265
157
241
198
207
249
175
169
200
189
173
231
249
170
236
197
213
175
243
164
186
142
237
249
173
178
192
197
200
233
233
170
182
179
216
245
194
136
226
175
159
245
171
243
238
176
165
167
226
150
176
199
167
213
197
279
213
160
156
199
184
267
221
164
192
142
188
246
174
182
174
213
223
222
184
203
182
205
245
255
150
183
188
174
190
161
232
231
220
173
215
251
133
181
233
165
164
153
208
165
181
263
192
163
174
184
256
246
169
179
149
281
225
229
207
211
192
163
141
229
193
175
203
208
220
221
142
169
163
205
176
146
205
216
237
176
234
194
233
229
192
211
165
241
172
183
228
144
204
175
211
181
171
257
179
134
142
235
169
234
198
219
199
154
202
216
189
177
228
235
190
175
250
179
221
177
202
230
192
180
221
227
177
186
189
221
214
188
200
221
195
212
164
244
170
220
194
218
179
221
164
197
200
204
152
201
246
208
180
93
210
162
216
203
180
181
221
237
192
246
231
169
202
183
219
228
183
189
220
237
243
181
166
160
237
181
203
190
150
190
197
230
211
193
184
166
223
236
174
213
209
204
228
193
212
185
204
202
220
224
244
211
181
210
183
146
143
216
162
217
170
205
205
213
223
217
239
163
236
195
200
195
187
215
187
214
224
225
206
196
158
237
235
192
201
196
232
203
140
162
181
209
175
239
236
239
195
99
211
191
207
221
191
206
193
193
208
229
167
235
275
185
170
215
200
279
229
193
183
183
239
219
190
223
252
221
220
170
212
220
184
136
217
207
242
234
227
169
127
151
188
194
257
232
261
190
239
142
189
253
224
263
211
183
203
122
218
177
238
256
198
180
162
194
249
226
209
183
259
168
208
240
132
187
192
233
187
241
244
193
137
163
194
211
156
185
171
194
198
222
202
227
165
188
199
202
213
185
210
207
217
220
186
209
218
200
182
159
197
199
189
199
182
183
162
187
228
189
245
230
203
191
253
248
191
200
182
274
237
234
157
158
162
239
177
223
231
192
150
150
233
193
142
150
198
240
211
228
164
136
229
250
204
194
183
135
228
243
222
225
200
203
205
242
161
207
207
259
165
151
215
150
204
195
160
122
191
242
220
259
204
217
246
205
239
238
196
204
185
210
163
170
179
192
169
195
196
247
216
189
254
177
215
210
193
196
157
149
193
178
227
203
234
187
197
257
171
179
188
206
199
201
227
127
192
137
174
162
201
210
236
188
154
164
244
217
212
246
202
214
241
242
231
204
187
217
218
140
209
202
223
225
180
232
198
189
212
177
249
211
210
215
200
124
163
208
202
198
244
157
206
246
170
153
184
178
203
254
221
208
241
259
287
138
193
162
266
168
185
165
168
206
152
223
199
202
181
157
222
209
225
163
265
188
249
199
198
283
262
249
195
175
172
213
190
253
186
184
163
198
196
224
167
240
195
216
225
219
217
262
158
245
223
241
236
261
218
157
164
173
173
153
247
148
235
183
161
176
189
160
268
225
182
233
113
186
253
203
241
181
162
175
233
147
246
177
192
188
274
237
212
155
219
148
191
202
197
188
190
167
294
213
208
209
188
207
225
252
174
154
200
251
221
225
187
180
207
207
200
180
197
215
181
190
230
200
210
216
213
239
197
202
232
186
224
250
216
175
150
211
150
192
218
237
188
199
165
210
150
227
256
224
238
184
176
218
182
227
226
267
249
199
192
212
226
219
187
196
210
236
172
213
192
267
235
257
251
238
201
184
222
233
247
229
161
197
258
250
152
241
262
216
210
197
202
223
195
234
195
165
233
188
211
227
212
177
176
154
217
182
199
196
233
194
175
167
165
179
155
204
215
177
195
189
184
276
210
194
278
181
243
221
218
173
233
204
210
181
225
220
198
215
159
160
182
171
182
187
136
181
227
267
222
231
227
257
261
185
194
196
121
106
193
176
161
154
159
128
196
230
165
149
217
232
188
186
215
245
247
160
172
257
181
178
223
256
215
200
187
184
204
205
204
211
219
239
204
162
182
214
215
200
256
201
221
239
164
224
181
186
256
196
209
171
159
238
163
83
170
218
140
173
170
223
167
231
229
167
234
162
165
135
166
184
189
252
226
219
244
185
187
218
253
245
223
200
224
222
173
163
201
223
202
250
159
208
203
216
157
188
179
180
227
218
200
184
234
170
193
232
221
197
185
232
193
152
226
190
237
222
190
201
195
225
231
217
252
180
205
178
138
170
230
128
266
191
172
136
165
153
207
216
209
168
194
220
198
156
241
139
218
195
198
184
287
207
181
190
191
152
169
162
147
198
234
219
171
254
194
169
242
159
190
244
213
210
107
207
175
206
226
237
210
196
246
198
147
231
202
199
223
224
217
179
161
234
150
192
202
121
199
248
231
181
210
241
177
233
217
139
199
156
176
252
173
168
154
193
214
191
182
221
191
197
157
196
221
193
251
196
189
157
191
213
138
242
200
200
223
198
213
199
224
247
197
249
214
191
245
199
239
211
155
213
189
173
189
152
199
169
170
145
184
226
183
217
242
201
161
249
195
163
175
209
189
155
207
242
191
205
193
224
262
189
237
214
204
212
170
181
245
227
201
204
187
211
216
233
176
234
198
213
212
145
173
162
153
237
254
223
212
177
235
184
140
227
185
232
187
193
169
264
246
143
238
156
235
139
211
218
169
221
219
214
144
232
250
192
249
176
172
143
164
253
192
192
219
241
175
176
218
187
178
182
189
182
205
231
198
198
173
160
233
198
211
210
171
200
200
188
187
222
213
195
257
156
211
199
187
166
256
192
258
118
235
225
141
177
255
215
239
141
177
189
176
230
205
246
207
196
233
255
196
176
211
146
188
239
245
177
284
224
144
183
257
221
220
211
166
221
199
182
204
194
169
295
253
208
197
182
218
285
205
244
211
216
177
183
128
213
245
176
190
224
187
215
220
173
170
237
198
228
245
200
156
209
229
228
264
219
166
194
205
250
216
170
218
260
215
207
239
225
142
209
208
237
194
183
179
181
173
231
218
207
246
176
194
208
248
144
203
206
154
237
158
218
228
229
153
212
186
222
177
176
237
160
223
232
178
211
250
181
212
227
223
215
187
212
216
186
208
199
230
245
218
132
154
186
222
187
202
237
189
200
192
217
146
203
204
212
162
182
165
189
221
193
242
202
183
242
199
220
175
120
180
239
247
216
158
212
169
181
233
155
201
162
235
159
171
166
198
238
253
158
236
226
195
224
200
195
243
160
123
177
214
153
228
186
171
209
160
232
182
194
187
176
231
232
182
201
230
191
190
169
184
173
184
175
158
258
224
198
176
287
245
149
159
202
149
234
141
159
204
246
208
212
206
196
156
188
185
114
157
185
213
199
219
244
222
239
178
249
207
172
178
187
200
114
165
201
200
247
232
212
223
187
180
171
239
150
201
244
237
141
252
192
249
176
245
165
247
237
284
254
198
220
216
192
202
246
206
188
195
209
177
235
221
240
160
184
230
194
168
159
189
206
255
233
197
261
170
227
175
209
192
249
214
175
210
185
125
188
165
196
259
213
243
185
131
224
213
208
195
196
136
184
223
205
148
192
189
229
237
276
156
132
219
263
163
199
241
227
205
238
226
190
275
233
214
230
251
208
204
244
198
204
175
147
249
246
211
213
240
236
267
193
213
191
192
194
201
148
236
195
234
191
150
182
189
215
210
241
207
218
125
178
206
199
176
207
216
189
167
165
243
235
245
180
224
170
143
250
150
152
194
204
231
195
198
180
187
232
223
203
170
254
192
225
211
239
114
230
176
123
241
152
166
193
190
148
235
188
205
193
200
211
208
181
236
282
211
210
216
193
198
147
109
211
190
232
182
214
216
124
244
185
150
203
228
169
208
229
197
177
263
193
215
184
194
247
160
203
165
239
113
222
156
198
195
171
148
178
152
206
222
191
169
196
207
145
102
248
208
204
212
195
245
216
137
163
220
190
192
166
283
225
200
206
165
191
164
200
226
181
153
201
227
196
215
199
201
165
156
196
213
157
236
216
125
205
214
194
202
199
261
169
161
208
231
230
166
210
170
245
220
214
231
223
240
234
118
164
218
259
157
163
213
189
220
213
155
205
220
130
210
221
154
243
203
169
140
124
223
153
127
238
139
195
252
193
242
238
164
244
215
160
171
171
198
247
217
185
234
200
197
190
173
171
182
200
133
222
234
202
241
172
212
196
247
198
160
225
199
245
176
153
199
228
247
216
196
168
256
202
165
212
143
128
180
153
239
214
228
154
167
255
181
184
143
176
225
180
200
181
148
185
241
244
200
172
252
207
154
199
210
202
203
176
200
209
140
234
208
207
213
239
198
227
200
190
186
150
258
241
167
200
207
195
194
237
176
214
170
204
208
131
201
238
223
265
190
211
232
197
190
157
213
175
233
189
186
213
166
165
151
170
178
179
215
254
227
210
207
149
180
206
142
156
199
157
198
215
249
217
191
103
146
174
221
114
226
170
207
129
170
219
166
142
169
225
217
195
182
167
183
206
203
140
149
180
221
197
148
196
136
146
274
197
230
158
202
131
171
185
197
219
195
156
219
199
163
128
182
202
132
238
236
217
290
185
183
122
195
239
216
172
195
210
153
213
238
247
189
195
272
112
186
177
213
220
180
178
170
226
198
216
232
242
139
173
182
194
269
101
266
206
247
197
124
140
202
160
221
252
222
154
200
140
227
143
169
171
191
230
169
236
170
229
180
191
204
139
212
236
199
209
223
133
150
254
244
116
148
211
199
193
201
214
196
207
139
165
209
202
180
223
175
236
222
255
229
194
192
194
215
223
143
236
174
204
193
235
184
158
205
258
222
224
141
178
227
241
170
200
238
194
207
195
148
228
230
195
258
216
203
214
218
172
171
200
205
199
212
158
199
229
242
208
239
199
220
199
233
197
204
212
184
201
179
197
174
148
160
255
181
150
221
213
221
197
229
228
212
185
156
192
179
268
178
262
166
223
183
160
169
195
203
230
216
243
219
127
173
226
229
245
231
193
192
166
182
216
219
232
200
192
226
190
215
186
223
152
229
221
222
235
205
180
256
185
227
265
163
227
174
204
203
209
213
208
206
212
221
233
243
235
213
230
215
154
163
171
161
185
232
208
198
248
200
177
215
202
263
231
157
222
207
205
190
180
238
213
230
222
234
179
183
222
185
185
221
228
126
230
266
146
169
186
190
108
213
172
246
172
245
206
162
278
194
204
187
182
207
221
274
237
249
251
201
179
166
187
202
200
159
226
203
194
148
237
223
210
214
242
176
207
254
247
181
223
200
170
215
143
222
296
149
206
135
227
222
241
236
176
191
226
222
178
190
141
218
160
199
217
184
213
220
178
137
157
162
200
176
218
169
181
237
239
195
184
256
162
169
259
176
203
243
152
171
161
172
166
204
197
148
138
190
200
206
250
175
157
143
211
264
215
191
191
240
214
225
214
184
152
221
139
209
172
197
198
226
209
173
175
201
228
241
233
236
263
216
211
190
134
244
199
188
173
194
243
148
246
156
240
211
231
231
260
238
204
217
243
239
184
192
256
216
231
258
193
202
205
168
244
244
158
192
173
219
146
197
215
220
157
199
157
220
219
181
183
178
252
201
189
208
182
135
211
250
195
233
252
211
227
207
257
199
228
175
191
155
166
219
178
178
234
235
201
197
199
258
223
150
183
150
120
230
215
186
157
224
163
197
200
180
219
220
236
251
169
210
220
181
181
212
201
204
264
195
203
216
226
216
214
218
194
193
212
219
218
189
196
182
212
190
218
230
238
235
149
229
213
208
283
128
186
219
212
258
190
131
273
229
227
245
258
207
229
218
194
189
233
246
277
238
261
189
213
239
206
200
202
231
233
193
157
220
209
239
197
178
178
150
267
183
251
169
209
166
199
119
216
152
194
158
170
174
213
227
177
187
165
183
216
253
251
174
187
210
172
190
263
205
237
238
197
131
175
233
209
237
154
159
277
158
215
215
223
152
202
201
225
217
195
200
188
241
212
161
229
223
159
236
158
220
214
212
202
210
164
152
236
191
127
274
240
231
158
156
143
216
187
246
251
204
179
192
162
180
131
162
129
175
185
155
264
199
219
225
157
214
199
200
118
169
165
220
245
248
214
223
231
220
200
251
170
193
226
172
192
235
227
247
197
243
168
121
235
236
200
178
265
283
195
190
136
295
154
231
158
242
195
262
144
184
168
169
205
193
249
219
243
226
193
243
168
230
218
180
217
182
146
212
236
237
192
168
174
227
188
150
206
229
167
213
262
178
203
280
198
243
171
234
209
256
209
246
111
176
223
250
139
183
147
214
201
171
182
212
166
184
210
239
254
214
155
152
159
191
243
220
227
207
177
196
242
175
230
135
140
224
183
199
241
212
185
166
173
211
156
197
231
188
191
177
219
265
163
213
189
216
226
212
233
190
221
175
179
137
266
218
199
254
179
184
242
209
191
182
200
254
209
203
156
216
237
189
156
202
165
234
125
236
162
162
123
159
213
225
251
226
237
225
274
254
233
170
225
221
236
222
169
255
152
237
163
245
209
188
188
204
127
173
181
200
218
146
179
175
219
163
199
217
201
173
218
230
156
222
214
206
220
211
176
261
240
184
220
231
224
201
174
178
266
200
181
220
167
254
141
163
194
177
213
213
164
216
198
174
163
211
239
152
191
175
168
214
232
250
166
180
233
183
197
189
169
207
269
195
179
236
248
206
234
202
256
245
274
217
133
155
250
196
185
215
254
189
152
205
208
192
252
164
176
148
190
157
213
238
195
247
180
170
193
242
204
179
251
267
186
263
218
218
189
190
224
195
228
152
203
211
216
192
217
266
234
230
176
186
138
190
148
244
225
168
230
164
238
164
209
206
188
157
231
174
232
137
182
207
193
183
191
182
232
266
95
227
222
206
169
155
240
180
237
206
182
205
213
152
174
163
184
201
232
226
226
237
160
225
203
248
239
236
260
201
147
206
238
192
157
176
139
256
233
212
259
145
149
163
207
216
209
219
235
212
206
248
148
122
239
255
144
200
239
258
184
171
216
235
220
224
244
162
149
235
151
163
162
196
217
282
162
233
214
245
201
232
207
143
230
207
229
219
183
204
171
226
235
187
165
136
122
200
142
216
153
214
168
162
182
249
238
148
210
198
173
157
171
185
235
221
238
233
164
272
218
205
215
173
218
185
196
205
222
203
238
191
183
273
213
202
181
221
154
191
182
154
191
176
249
162
217
217
257
229
176
195
106
182
163
276
222
154
236
197
186
215
224
195
217
156
134
147
189
200
150
208
206
221
228
249
255
214
200
201
204
188
190
210
195
257
229
184
185
259
167
239
168
200
179
200
194
256
224
177
195
185
236
196
216
187
265
165
249
215
203
207
220
182
189
188
207
235
231
213
212
117
266
132
199
225
256
205
177
200
180
221
180
145
245
216
245
188
182
218
266
197
238
246
207
178
177
210
196
180
200
228
192
225
190
185
240
234
231
218
158
199
196
152
186
214
180
134
206
216
182
168
213
231
178
171
172
207
189
179
225
188
209
230
216
143
221
217
217
201
163
244
217
191
151
204
201
251
174
218
186
233
215
192
205
185
179
192
191
114
199
225
185
258
185
202
185
216
149
249
180
284
192
168
217
188
231
247
231
171
154
242
144
233
174
194
279
222
226
216
198
168
218
164
221
197
209
273
224
210
258
151
255
176
202
174
198
198
215
216
215
261
140
204
211
196
202
255
233
176
213
200
210
151
221
193
215
263
227
245
189
163
208
251
173
193
219
242
227
212
208
243
215
181
197
145
233
228
219
176
175
178
223
175
184
167
184
234
233
117
228
180
193
166
221
238
229
179
163
209
158
133
214
262
245
201
205
142
176
127
188
231
238
132
223
223
206
224
150
183
212
193
211
210
212
169
203
197
234
224
228
174
160
260
163
223
185
170
201
231
216
192
120
206
181
248
152
160
234
237
190
193
250
194
184
212
246
235
224
213
208
223
211
212
197
188
133
213
273
220
122
206
206
221
148
150
167
173
162
232
153
108
167
190
230
201
200
138
210
197
160
222
170
174
217
244
239
234
209
289
147
167
192
241
205
192
242
224
210
258
171
178
226
161
164
215
205
239
162
227
268
197
162
193
249
231
211
196
254
148
205
205
168
225
129
225
255
244
241
239
205
172
122
197
215
227
215
176
161
226
210
177
217
258
189
232
246
229
182
224
148
223
211
206
196
201
170
271
164
188
133
157
193
188
194
223
240
132
110
195
184
224
178
217
270
203
185
201
223
219
183
190
137
156
236
207
267
192
146
165
248
221
142
195
206
166
194
206
227
256
244
209
220
218
224
226
207
206
163
173
261
205
214
186
216
215
229
224
140
197
188
217
231
266
188
237
226
198
216
173
222
200
194
220
191
204
187
178
235
167
155
204
269
193
163
150
188
162
225
214
183
164
274
258
228
220
173
186
172
231
189
220
122
217
218
158
172
238
240
231
163
207
187
169
204
237
201
176
144
200
201
172
163
186
199
148
210
206
230
140
136
195
144
200
190
224
188
200
208
220
234
124
206
209
151
181
134
176
177
211
188
164
226
182
163
209
250
242
220
180
173
170
170
221
198
108
187
241
243
239
173
180
179
226
224
217
174
179
249
225
161
235
191
192
219
195
204
213
123
174
233
234
286
210
225
169
165
168
216
175
199
142
170
231
160
239
152
152
184
155
204
202
147
203
196
210
173
206
177
257
246
218
193
145
180
235
214
205
208
250
166
155
205
171
206
137
216
181
258
230
171
263
166
178
167
187
165
214
210
181
213
183
243
194
178
197
149
218
206
141
93
133
198
205
219
224
184
199
164
209
211
189
215
183
227
152
214
251
211
181
186
197
180
176
268
213
135
162
161
185
218
204
168
184
215
217
266
189
149
138
192
207
163
181
201
202
197
240
126
155
186
232
185
207
180
203
170
199
176
176
268
221
251
233
190
241
152
162
242
209
143
176
184
173
218
199
174
210
235
156
194
165
247
235
167
240
201
186
239
157
265
263
212
187
180
238
187
202
201
204
193
186
176
201
231
158
163
240
109
254
163
271
217
175
165
175
265
205
210
209
216
227
186
157
230
244
236
187
227
185
137
215
206
199
237
140
170
213
186
240
203
103
197
195
223
237
184
198
211
192
176
220
196
196
245
193
173
206
173
174
183
235
183
234
216
188
196
204
225
165
218
243
221
191
192
159
226
263
201
223
114
148
200
178
187
200
169
211
252
223
196
229
182
217
173
191
222
161
221
228
238
210
207
213
169
202
187
302
253
228
219
165
212
223
173
241
228
219
177
263
191
180
248
155
165
239
220
210
216
167
220
166
187
216
218
224
254
205
223
155
102
253
201
250
138
138
193
229
189
182
206
191
131
178
187
197
254
230
215
200
217
273
243
203
166
175
190
199
238
201
237
232
259
186
222
174
211
223
196
193
214
204
235
166
162
190
227
233
195
146
207
203
208
240
169
148
241
219
209
186
256
157
212
163
117
161
183
248
223
211
226
179
201
240
176
192
178
229
261
190
254
157
184
119
209
212
180
189
210
244
156
182
136
256
205
157
219
197
194
154
283
146
193
218
257
237
264
209
151
204
138
152
171
199
169
196
159
199
195
219
212
191
150
158
230
167
233
226
250
201
194
231
232
199
142
231
224
200
169
246
214
195
187
177
202
196
174
158
228
182
184
124
245
246
217
198
180
185
224
203
180
196
216
223
205
184
204
226
157
232
259
191
188
170
201
153
207
190
226
194
239
235
213
160
119
230
245
180
244
237
189
251
217
237
218
263
199
209
133
216
219
210
176
175
205
226
161
184
172
182
252
258
254
218
184
151
130
193
259
199
200
227
228
228
161
319
230
206
219
120
108
184
201
243
171
175
257
177
211
248
203
147
224
204
211
140
195
228
160
188
208
173
238
248
281
228
181
214
178
191
161
219
185
218
221
177
231
158
210
191
127
192
174
179
189
221
204
229
182
146
218
207
207
155
193
207
170
215
220
172
217
176
198
145
191
180
181
292
162
224
139
173
236
163
246
181
224
249
188
180
179
155
193
189
189
261
220
205
224
270
189
221
186
278
186
172
223
240
236
153
176
194
169
172
195
190
209
222
203
219
88
208
232
234
201
240
175
212
156
193
174
168
226
240
246
166
196
264
207
187
214
216
197
210
241
128
246
217
179
178
168
207
218
213
180
222
231
191
177
216
199
210
213
138
192
222
243
228
167
229
214
187
224
192
172
228
218
212
181
137
170
161
155
210
178
244
152
183
216
146
231
197
196
235
211
194
205
191
206
191
211
171
206
252
222
219
187
236
241
229
162
236
227
217
223
224
187
159
123
213
193
205
168
238
162
262
129
254
155
193
258
191
195
198
230
172
149
203
154
141
175
236
183
250
254
174
201
258
206
217
212
231
166
136
176
256
198
233
196
169
192
211
195
196
234
197
138
159
187
233
227
201
214
248
159
203
181
176
174
169
224
200
262
230
224
195
229
205
154
192
175
195
232
203
201
257
147
217
200
204
176
160
166
209
215
240
189
182
205
213
167
245
221
180
221
208
205
222
182
188
170
173
225
214
245
188
176
233
225
196
231
119
117
219
175
212
254
236
191
202
213
168
227
237
167
224
185
73
181
197
210
249
251
207
222
203
239
178
239
193
240
182
189
244
138
178
252
270
208
204
205
200
206
230
191
236
227
183
205
194
183
207
193
158
181
197
217
185
236
247
174
185
179
203
187
188
202
191
194
150
190
247
218
201
192
204
159
197
240
188
211
163
118
314
179
153
197
175
181
249
224
213
218
208
206
166
157
181
172
190
146
145
226
232
190
239
207
239
217
160
233
194
214
178
133
141
228
195
152
229
234
147
266
133
219
160
175
233
223
183
208
217
203
249
227
234
162
179
192
272
178
221
194
197
170
235
163
167
205
171
144
186
204
186
226
182
165
168
223
217
121
202
189
160
206
171
228
207
172
203
182
136
211
268
181
215
184
210
174
175
213
245
180
180
232
181
194
229
208
240
204
139
261
196
217
232
244
164
199
180
197
186
95
226
212
230
193
162
261
187
185
187
278
187
206
215
159
225
254
202
177
200
144
221
190
195
204
205
192
246
209
228
148
258
183
228
136
225
190
164
227
173
156
185
204
189
185
186
230
223
162
215
234
172
148
190
190
121
200
209
271
205
237
185
163
230
241
175
159
169
181
221
216
175
245
221
182
202
190
176
194
212
251
229
229
225
249
222
132
237
255
238
238
210
179
221
264
172
230
172
230
151
159
239
186
243
169
195
240
187
206
199
192
217
221
176
178
163
196
214
138
264
253
201
197
203
140
269
155
238
213
203
169
208
228
254
127
241
225
204
242
231
230
245
233
212
204
151
185
150
255
198
248
196
205
204
197
143
168
167
198
173
258
190
234
261
229
166
184
210
227
168
165
194
181
205
200
162
172
229
237
213
165
199
188
255
218
222
143
160
174
191
216
251
187
204
207
208
201
124
243
164
150
249
202
173
230
226
222
260
126
206
210
178
207
149
161
149
169
176
153
217
189
205
196
207
201
197
210
210
160
195
224
192
203
120
144
167
201
213
141
131
221
184
200
155
186
198
200
218
148
248
229
199
191
171
231
196
180
232
132
256
154
216
203
194
204
231
198
204
247
262
192
231
196
174
128
189
150
135
213
226
220
179
213
206
146
221
217
213
247
227
167
275
176
136
227
208
190
195
273
135
190
216
207
200
210
197
146
177
259
217
192
171
244
167
233
174
221
180
209
212
191
164
181
225
225
267
168
189
193
198
206
223
254
182
183
206
186
189
133
175
207
189
213
185
158
189
209
195
228
168
262
229
207
229
164
181
228
174
216
204
152
237
156
215
208
168
174
273
251
245
201
228
234
234
170
204
222
211
87
267
164
275
231
201
159
259
221
191
184
230
228
192
165
204
183
194
254
199
218
164
151
118
262
148
213
150
115
142
198
230
148
200
232
220
168
186
197
204
190
231
249
204
199
208
259
214
191
215
230
206
194
150
264
243
124
167
217
191
220
248
222
217
220
157
185
196
247
189
188
179
198
177
210
243
226
202
189
203
230
173
173
185
235
191
199
166
199
179
188
170
239
181
188
218
249
214
172
223
193
159
201
158
206
195
259
221
198
261
183
236
211
185
260
154
247
203
186
217
206
175
192
223
189
217
255
213
241
172
174
216
200
220
221
191
149
168
134
200
183
177
210
179
273
163
249
182
193
197
182
191
121
189
204
208
171
159
209
187
190
171
234
250
265
188
221
179
257
211
173
188
195
200
159
154
234
188
207
261
221
158
254
241
232
144
216
204
234
178
243
233
208
237
182
263
209
203
145
195
208
173
187
179
181
149
243
224
201
200
206
214
194
188
230
231
242
266
194
255
209
197
124
157
215
215
137
200
206
170
200
184
242
233
252
174
226
169
216
190
187
226
177
269
190
167
178
182
220
111
197
233
239
208
199
169
193
167
217
169
176
236
226
178
252
171
151
190
113
215
184
140
228
168
203
187
194
158
156
224
229
160
235
230
177
212
138
233
157
200
200
215
189
249
113
235
152
205
231
195
242
143
134
142
186
154
231
122
171
263
192
134
238
159
225
174
205
189
233
205
212
204
167
175
178
210
191
221
131
182
172
197
157
255
216
127
164
237
220
223
250
263
190
251
208
256
261
189
257
207
252
202
154
182
182
233
190
224
246
227
235
231
243
259
153
222
194
216
183
205
218
220
197
138
235
250
243
230
158
147
187
238
161
256
246
238
207
149
191
205
193
215
241
230
194
156
219
137
218
252
190
227
175
266
202
269
156
161
199
209
226
206
214
225
188
181
166
199
234
170
253
276
172
149
184
169
261
216
269
191
282
153
186
199
235
200
232
198
135
201
173
234
269
228
178
154
169
202
249
193
222
245
182
228
203
213
238
160
185
174
189
141
153
165
248
214
238
244
228
274
182
159
168
167
220
147
210
219
200
177
175
209
194
232
194
190
263
147
159
202
181
232
239
203
191
196
233
184
201
224
177
211
253
195
129
191
265
179
163
226
242
227
240
202
173
208
208
177
242
195
145
195
237
247
156
172
175
165
173
216
188
227
220
216
167
224
204
197
198
218
199
225
198
214
226
203
189
236
217
161
223
201
213
162
179
227
216
236
200
193
220
225
219
191
142
224
148
265
217
200
231
265
239
155
243
232
205
154
198
307
220
250
187
111
120
218
188
171
226
197
167
239
195
198
255
200
251
193
223
231
157
230
207
213
142
142
231
188
178
175
241
215
155
220
226
198
183
248
207
180
171
157
209
163
183
201
246
175
144
232
209
217
188
218
171
235
224
176
268
215
178
196
184
243
226
169
196
190
195
203
201
113
261
191
206
201
218
217
204
221
160
211
161
174
224
174
181
223
174
204
209
227
224
242
175
237
240
219
182
228
230
195
216
217
151
183
249
212
155
192
169
263
177
235
150
192
216
224
198
227
320
182
194
231
256
178
202
199
160
244
233
135
209
151
225
238
202
202
256
197
234
152
265
156
187
204
215
211
176
185
227
179
148
170
176
223
220
264
204
87
210
192
164
174
176
171
175
266
162
118
233
246
213
222
157
218
224
191
206
193
156
213
199
216
245
245
150
231
165
204
250
123
157
210
209
180
219
220
171
190
194
219
169
220
183
243
194
202
157
193
172
237
169
248
266
127
187
167
159
218
226
256
225
214
223
168
233
187
176
193
270
203
280
231
192
207
219
231
208
219
239
177
215
247
221
166
197
168
214
243
215
237
151
175
213
195
168
269
224
154
135
221
176
204
166
206
171
247
224
220
222
180
262
144
205
173
155
194
194
263
218
225
219
213
209
232
178
253
256
190
206
194
212
153
203
238
214
209
205
147
179
200
196
174
234
185
222
178
186
180
176
266
212
227
191
228
221
240
186
202
205
146
229
188
226
194
148
223
197
238
201
245
209
174
241
206
218
165
143
210
240
226
222
227
193
206
204
215
167
170
198
196
232
208
221
158
125
196
266
182
202
216
190
192
201
179
212
197
222
245
216
233
179
186
230
244
250
206
185
180
216
214
218
236
227
195
135
199
231
176
192
193
189
204
210
161
200
217
234
191
196
255
201
187
176
175
189
204
224
263
216
191
239
189
169
175
195
193
201
212
245
233
235
184
171
212
209
207
198
205
234
256
225
253
142
175
230
175
153
195
176
219
199
195
170
195
211
201
189
234
223
139
248
152
232
234
205
208
191
238
160
216
205
201
206
213
163
134
211
176
219
189
194
184
178
202
206
249
153
245
158
244
171
199
165
246
133
191
231
182
175
200
214
225
173
202
250
187
195
209
150
209
231
136
238
237
138
238
184
218
142
208
184
198
226
219
195
169
202
215
230
206
257
255
227
243
220
197
229
172
228
162
174
228
231
198
235
185
269
239
185
189
147
199
191
219
156
210
198
191
217
178
179
246
218
221
148
271
238
187
220
189
271
217
236
171
149
191
248
209
196
199
239
193
194
242
178
214
157
198
181
220
179
203
163
212
228
165
167
173
164
144
238
192
203
237
161
269
173
183
155
217
192
182
242
230
180
164
162
214
158
154
151
153
172
118
113
229
126
153
264
183
174
186
178
192
167
257
223
267
220
150
207
244
233
235
164
205
231
183
183
199
146
173
231
201
188
199
239
169
226
229
205
191
191
200
201
185
139
234
182
218
173
147
215
249
208
215
234
165
215
230
192
241
200
217
148
204
254
192
162
222
200
156
240
256
179
172
126
171
214
228
262
187
205
200
194
204
224
129
115
243
192
258
117
197
251
209
199
188
228
159
191
177
231
206
178
230
240
229
168
216
206
243
212
261
186
166
211
218
180
203
226
170
205
155
212
156
250
199
212
179
244
182
185
172
164
144
177
169
209
210
180
252
213
144
171
242
203
207
192
211
207
235
222
146
230
154
237
146
243
131
153
184
228
149
170
227
219
226
208
248
184
226
183
236
168
181
212
232
245
179
247
228
207
232
234
192
185
213
244
167
229
165
186
192
242
233
249
173
172
173
183
195
226
205
217
143
203
195
148
195
177
209
226
140
224
250
218
195
211
290
214
210
217
195
179
200
193
170
161
186
204
256
248
178
218
206
193
257
129
198
220
198
200
173
191
158
211
172
189
204
189
215
252
175
192
285
226
217
166
243
214
257
147
220
133
235
207
210
210
139
210
237
220
176
248
193
194
235
184
222
224
164
212
168
208
228
175
177
223
207
175
245
114
224
167
259
227
209
203
208
238
215
170
163
176
160
203
179
220
189
227
201
179
160
225
198
194
165
218
294
179
235
205
203
184
171
242
214
151
221
201
159
215
158
169
226
176
195
222
257
222
175
212
251
195
197
230
246
167
257
228
175
194
208
177
207
196
185
163
173
175
211
217
211
175
139
163
140
220
147
144
168
208
139
234
178
209
213
117
237
178
155
265
210
189
197
167
220
203
200
213
213
176
232
250
217
228
192
182
225
220
287
178
205
155
224
200
236
175
191
205
184
231
215
222
217
204
203
173
139
197
203
180
225
237
163
181
227
184
214
237
204
198
226
200
209
202
188
228
104
222
230
217
206
208
197
167
179
254
177
204
194
176
198
191
293
200
238
162
264
227
276
214
195
209
152
217
246
221
208
193
204
244
175
168
187
176
236
157
232
246
202
142
226
179
288
202
176
190
193
136
183
223
144
202
189
114
237
106
143
194
215
167
228
203
169
170
255
225
302
210
205
180
216
143
191
223
200
218
172
188
228
263
191
185
215
232
195
213
179
144
210
209
102
204
202
205
200
202
201
195
253
244
188
220
248
140
176
133
230
185
255
199
178
192
223
197
188
197
197
181
181
219
203
193
204
202
185
198
206
211
253
206
215
252
242
205
168
178
231
271
181
189
175
221
187
184
237
217
208
205
163
141
167
222
274
230
162
184
243
164
202
176
159
209
233
195
172
183
182
141
188
231
152
231
204
207
182
238
198
210
229
156
171
244
189
220
193
204
218
226
238
212
210
175
258
184
220
231
207
222
226
137
219
196
267
162
196
232
227
234
179
211
198
190
225
169
213
221
181
194
212
235
177
203
277
231
199
153
157
210
221
162
211
256
184
137
201
227
219
174
226
225
211
179
204
184
171
188
186
224
153
224
201
199
187
220
251
209
222
150
187
225
252
151
233
158
238
216
149
141
168
173
192
174
227
194
202
197
211
205
152
179
202
249
190
244
153
225
241
186
263
173
195
151
177
200
218
151
183
183
237
194
198
213
262
253
218
183
194
154
211
174
224
166
182
235
218
172
244
235
211
205
216
230
152
204
288
252
199
155
202
195
268
184
149
218
244
225
176
244
180
209
178
149
228
163
202
175
191
193
180
129
156
198
222
254
221
275
172
163
187
185
195
209
165
234
225
203
250
196
180
183
148
176
200
213
210
248
205
246
261
221
180
223
228
188
244
225
210
183
243
202
274
260
205
186
209
219
223
223
185
224
191
157
222
191
222
121
228
224
164
267
168
153
189
195
192
194
208
165
174
180
262
210
193
184
158
181
240
172
204
240
169
214
208
218
230
226
157
269
228
171
262
193
181
222
128
167
159
181
184
192
252
229
162
245
213
180
208
198
155
181
214
172
224
206
184
229
204
237
223
206
162
208
179
190
167
181
206
186
255
250
196
264
202
206
217
151
173
227
199
276
107
205
135
192
161
172
164
135
194
178
236
213
206
157
221
206
146
226
151
237
169
221
208
165
220
229
254
216
255
208
182
235
163
187
140
234
233
221
230
181
220
179
202
169
209
245
194
195
172
152
231
206
209
204
206
216
222
198
191
139
155
204
253
206
132
212
253
229
196
221
240
181
164
115
275
256
214
178
213
178
149
146
145
200
243
246
172
233
217
214
243
126
199
247
231
241
257
229
194
175
133
187
224
177
247
222
202
221
151
180
201
210
162
256
206
222
212
200
155
195
178
199
229
155
188
267
150
238
152
269
183
216
138
233
185
203
147
222
169
218
234
227
195
155
261
219
178
194
171
159
188
195
231
181
199
125
211
173
156
238
241
224
240
247
199
195
233
237
215
208
192
223
198
256
217
171
188
188
218
209
180
223
219
251
235
190
217
170
226
276
229
175
138
208
162
276
191
218
162
220
180
228
211
162
198
245
214
277
220
210
188
186
156
181
180
210
253
161
207
201
258
219
245
271
199
190
222
225
260
243
209
220
237
233
187
268
185
259
222
245
165
235
196
254
183
168
252
182
247
209
196
168
198
203
190
206
148
221
207
230
173
178
219
193
186
166
239
244
210
237
220
192
206
204
194
162
178
186
175
200
192
219
155
182
213
181
234
153
238
181
152
268
157
180
176
139
226
220
226
218
198
244
204
217
235
139
199
230
195
202
193
164
173
215
122
194
254
159
236
168
264
199
169
226
198
196
153
148
190
169
143
195
174
153
160
249
194
163
237
198
183
227
194
212
209
174
180
238
180
143
174
170
185
203
211
188
195
164
190
204
194
179
191
241
192
107
186
194
207
203
199
237
223
237
190
213
182
160
178
200
155
192
229
174
200
214
154
177
190
197
184
191
203
218
230
221
258
156
194
138
136
158
173
144
127
227
246
190
181
210
135
221
182
202
162
183
209
270
244
234
198
274
194
188
216
272
221
209
221
229
216
164
256
126
199
253
201
164
148
197
260
222
196
195
234
237
208
226
208
213
194
225
213
176
147
268
221
189
167
150
224
224
186
235
217
187
138
150
179
251
214
164
168
242
224
182
182
189
259
149
206
206
226
213
174
203
129
190
120
141
169
180
183
198
229
202
175
224
206
196
158
181
172
225
198
204
159
179
251
171
194
253
213
225
179
208
240
250
168
169
255
237
153
214
199
216
241
192
242
204
179
183
265
160
278
175
228
210
221
200
205
191
167
227
254
148
117
210
202
200
205
227
260
261
214
233
134
263
183
250
214
174
214
198
192
185
224
237
257
207
219
208
184
184
177
196
195
254
242
204
208
156
249
197
238
165
175
221
180
197
153
181
197
147
189
214
197
251
218
180
171
187
225
204
200
221
144
233
214
212
226
214
266
246
162
195
185
191
199
181
202
225
222
207
205
208
223
206
183
251
202
206
206
226
166
188
234
231
206
206
147
190
231
200
202
233
205
205
208
219
217
191
228
210
144
239
229
226
108
231
219
167
206
201
179
161
208
219
134
168
203
203
186
256
141
192
204
170
161
184
240
219
110
244
203
220
161
127
204
234
168
249
157
161
210
200
119
169
166
231
163
160
193
223
220
230
157
165
188
227
221
222
234
238
190
209
139
258
187
178
251
213
224
201
217
192
189
176
186
151
165
274
159
202
206
253
240
243
187
181
186
241
209
212
197
172
182
195
198
248
195
163
207
233
166
218
124
205
190
201
165
180
170
217
196
246
219
126
183
226
240
174
120
146
187
203
176
156
195
188
189
259
238
229
163
224
157
210
201
217
146
245
201
182
189
217
230
213
179
202
250
252
190
221
217
265
198
246
190
227
221
262
138
159
196
194
198
161
211
183
220
181
180
209
162
172
203
211
223
225
237
176
162
154
213
154
237
215
232
215
170
255
170
180
243
231
271
233
202
198
157
219
179
194
212
217
183
213
193
186
207
123
125
154
181
258
237
215
207
180
196
170
200
166
250
179
179
175
148
198
232
193
254
200
234
230
200
211
219
248
188
158
231
214
214
212
203
214
203
213
178
256
194
213
170
191
263
192
200
254
204
183
195
220
159
163
194
213
198
163
220
266
170
190
198
176
179
178
188
164
209
172
153
217
213
213
132
238
176
168
221
153
174
253
197
275
160
191
262
205
194
183
224
192
223
157
222
172
151
192
258
229
175
228
191
217
192
214
188
182
168
251
159
204
218
171
199
176
210
194
182
212
210
158
271
227
182
219
241
193
236
214
257
197
245
226
222
275
187
134
179
163
245
194
237
208
246
275
117
200
193
248
215
188
205
224
192
201
210
196
186
201
215
196
226
171
158
220
221
206
210
253
164
180
221
164
163
216
191
194
238
226
229
164
240
205
168
275
239
179
204
238
255
186
200
202
235
206
219
152
170
143
234
166
210
209
215
156
192
214
228
177
201
198
194
260
192
159
245
227
210
198
151
171
243
244
151
230
141
230
162
204
165
202
191
248
209
222
188
211
274
183
167
198
175
206
258
211
191
243
254
195
214
212
242
204
252
163
204
146
202
209
233
216
172
216
146
251
226
179
231
221
171
189
255
165
217
209
263
170
169
208
183
252
212
182
212
198
205
226
174
180
231
197
210
227
158
223
216
189
270
182
165
212
160
186
205
188
212
114
195
140
198
162
250
185
197
197
219
194
171
260
198
181
204
190
185
218
223
232
224
215
231
265
164
220
214
210
242
203
222
206
124
183
236
124
215
170
227
213
202
168
209
244
135
197
205
249
159
177
168
196
248
249
198
217
164
196
215
215
159
224
168
215
196
178
232
254
212
234
191
185
223
252
241
179
227
191
179
191
230
212
296
229
187
158
213
165
169
235
254
247
184
148
203
249
206
164
176
155
172
184
248
150
198
235
125
208
165
210
208
248
212
146
151
192
145
147
240
149
166
183
203
206
241
219
185
228
185
187
127
163
210
169
194
229
182
222
164
183
220
251
166
197
164
207
218
229
241
223
222
218
188
163
276
168
223
219
217
153
192
172
255
216
190
222
214
221
153
179
241
217
170
189
191
216
204
184
190
250
168
178
230
185
217
256
166
155
221
207
244
218
154
233
215
262
149
210
220
156
190
178
230
215
153
221
210
187
187
188
232
225
184
216
193
168
213
195
166
190
224
194
155
242
195
206
221
217
159
140
179
168
172
192
233
217
254
241
219
151
222
234
208
187
241
199
214
220
173
224
211
130
136
165
147
185
193
199
137
213
172
223
168
239
243
220
171
160
167
142
246
180
216
268
187
217
198
192
135
198
220
127
206
195
197
208
162
191
191
245
219
128
207
181
205
186
187
225
238
286
248
239
221
165
164
175
156
159
173
249
199
276
231
243
225
198
235
222
122
192
222
235
176
227
227
245
180
152
183
207
204
181
187
183
240
186
243
175
222
208
229
209
210
194
195
107
230
222
224
252
184
181
208
193
199
189
167
177
237
236
179
187
219
162
197
258
144
200
242
173
202
181
185
197
213
254
198
170
259
182
241
227
174
165
169
208
199
201
217
173
185
233
230
180
175
239
205
186
190
233
245
161
221
151
183
183
212
186
248
232
162
142
201
140
166
182
197
182
166
189
198
250
236
132
224
166
222
200
214
232
186
242
205
218
223
226
178
214
183
187
170
202
221
130
229
197
132
199
183
146
248
203
179
246
251
151
184
232
163
224
177
218
197
192
199
222
231
181
223
125
205
233
196
171
196
208
227
202
210
227
230
236
237
232
214
189
252
199
244
203
211
217
228
143
195
229
232
170
192
224
232
241
193
168
202
188
155
211
221
160
156
228
232
175
107
233
241
188
143
157
175
233
208
216
201
190
236
222
227
196
220
219
188
244
209
163
213
205
214
215
251
196
232
224
174
236
169
199
201
224
196
224
207
251
234
231
265
226
177
157
182
221
249
171
193
243
151
198
226
229
233
187
195
243
242
303
218
223
168
238
222
184
160
223
199
213
194
193
186
166
185
206
208
125
255
219
264
229
259
249
208
159
144
167
231
100
202
180
276
209
229
248
192
213
222
143
206
150
153
181
184
212
186
256
244
240
152
196
187
179
214
221
203
246
213
241
184
159
211
225
196
201
116
212
194
201
218
202
183
157
193
207
145
266
237
153
255
226
258
175
186
180
206
203
173
199
168
204
246
170
167
189
215
244
208
174
215
223
183
230
215
195
195
186
197
253
175
180
206
226
168
192
160
142
206
241
209
173
207
206
174
205
202
181
277
193
203
207
209
126
235
215
146
223
167
187
190
209
219
202
194
193
169
233
124
192
269
140
168
214
178
239
219
141
184
164
236
188
179
181
212
223
131
229
231
184
207
210
157
240
194
170
179
162
170
140
192
174
220
172
132
242
215
195
200
216
232
217
132
135
220
176
205
205
244
192
242
222
183
214
231
228
156
187
187
253
202
193
183
169
210
197
231
239
190
158
213
157
197
209
178
240
174
197
233
178
247
220
242
221
205
241
144
166
180
181
205
199
203
210
204
152
93
178
217
190
209
174
157
237
152
184
196
178
249
208
209
187
207
127
201
223
185
206
214
260
176
208
163
190
167
213
140
185
191
189
154
184
179
219
207
271
256
199
167
174
178
194
204
204
213
211
160
168
254
226
190
246
178
199
207
177
208
205
150
208
160
235
171
206
258
171
201
237
151
176
309
186
142
125
168
150
246
203
215
254
209
188
144
219
227
178
213
147
162
206
209
176
224
154
213
140
164
212
189
234
245
207
186
183
221
213
172
233
247
214
162
216
202
220
268
187
179
196
257
175
226
192
209
183
197
190
198
215
243
166
218
173
216
259
222
217
171
268
248
266
228
210
235
241
196
223
208
217
199
215
216
267
215
223
183
234
215
164
198
234
222
221
167
165
147
132
185
211
135
248
215
279
229
229
229
200
191
220
201
262
216
280
176
180
264
163
172
242
186
233
195
192
208
204
185
285
166
202
192
191
146
183
227
210
231
206
198
209
132
170
203
180
149
234
210
115
196
184
147
150
241
152
230
184
248
200
179
223
148
156
140
195
214
170
158
167
254
200
195
191
151
189
297
256
212
170
127
215
214
193
240
190
207
209
263
264
172
188
219
221
191
214
219
206
195
187
197
161
222
209
244
236
248
232
221
205
229
192
208
179
218
170
154
219
255
188
175
189
145
202
212
159
221
225
184
233
162
218
190
117
169
178
189
202
161
241
166
218
275
141
177
206
207
220
187
184
195
240
213
226
172
231
230
146
165
259
222
133
131
250
229
181
173
191
216
181
220
187
196
211
163
156
271
202
207
245
148
199
180
208
257
179
223
153
232
232
222
150
230
210
152
179
186
242
208
128
212
163
140
238
202
238
216
173
206
252
218
177
164
215
239
218
177
239
154
225
238
177
204
163
170
249
188
229
216
126
193
214
191
222
208
196
194
252
184
177
248
265
286
241
240
210
257
228
215
222
144
211
178
205
179
209
204
208
263
187
223
233
175
229
198
224
194
229
168
161
230
203
203
212
219
144
186
236
207
229
231
209
222
176
214
220
200
158
247
228
267
146
211
251
280
210
232
197
201
148
249
258
228
224
219
167
202
205
234
198
145
219
166
187
173
215
160
214
234
191
168
224
165
226
158
192
247
205
150
224
203
226
232
223
178
236
188
165
185
181
177
241
242
187
213
154
196
262
129
238
207
186
229
211
207
159
218
224
252
229
227
259
174
178
238
171
243
194
194
194
231
171
215
221
183
207
216
151
203
196
176
216
271
159
130
198
200
211
212
178
193
197
171
215
224
209
218
258
297
196
224
232
241
242
214
199
163
204
171
236
185
175
211
225
184
161
206
181
169
247
196
149
203
179
268
216
217
209
210
190
200
243
229
196
192
162
216
208
227
258
208
170
163
197
179
238
206
224
205
151
166
194
235
156
163
203
237
207
244
223
220
278
137
211
217
266
152
184
218
156
151
156
284
182
231
222
173
172
261
236
237
214
295
194
147
241
191
137
172
233
234
136
225
263
246
142
210
210
211
237
175
174
203
227
150
193
216
163
219
210
238
218
181
169
230
187
214
241
183
200
209
203
175
225
219
249
142
254
232
160
179
280
170
200
213
213
240
226
197
264
243
208
230
163
193
197
207
240
218
190
168
228
240
208
191
234
181
160
236
201
118
235
194
165
201
211
251
130
213
233
223
208
234
222
240
174
243
177
192
201
227
185
243
194
205
261
203
190
170
200
140
209
162
219
222
239
218
151
250
180
192
219
220
219
222
210
214
187
183
225
216
150
248
222
116
189
208
230
270
200
221
128
231
185
222
248
163
181
172
200
146
224
167
228
237
182
233
245
241
160
218
220
185
237
232
209
203
195
193
229
171
233
208
172
166
159
222
184
217
175
198
208
213
164
237
178
199
222
216
181
240
203
214
177
223
207
210
185
167
185
203
223
198
168
179
166
159
198
213
185
220
191
219
173
259
233
188
171
166
224
243
209
228
187
185
197
202
216
210
162
211
207
230
224
211
238
220
200
115
208
244
256
207
258
208
219
228
158
199
195
185
103
182
195
212
180
201
213
195
186
224
187
203
241
248
226
187
235
251
247
224
261
222
139
277
132
204
230
153
151
179
204
201
221
255
225
212
157
200
209
179
177
245
221
181
186
162
252
226
215
217
152
191
201
206
199
167
165
213
241
217
203
196
234
217
248
154
197
217
224
188
209
201
176
256
170
203
214
204
236
192
217
219
133
251
239
227
206
132
254
210
187
233
201
142
202
218
181
172
214
232
190
190
183
214
176
191
195
203
123
214
125
279
219
165
134
220
197
182
213
211
203
175
176
194
252
215
184
173
168
241
143
166
110
196
206
180
138
171
241
178
203
254
200
203
254
245
225
244
233
221
229
171
174
231
236
177
188
200
172
128
178
169
197
193
189
221
189
175
150
224
187
103
234
232
158
200
199
208
135
233
143
143
156
155
234
231
175
173
265
222
209
185
191
162
155
227
156
207
164
209
228
207
178
167
156
214
98
173
141
211
265
195
282
184
226
214
215
199
244
205
229
208
173
135
211
196
157
180
212
204
153
151
274
180
232
242
219
167
158
228
205
149
185
192
229
151
178
200
253
185
189
230
190
217
193
145
206
241
192
164
158
196
179
227
169
217
246
167
237
229
236
284
142
251
195
201
208
190
196
196
233
148
114
247
182
253
173
214
165
158
210
173
95
220
211
148
216
200
187
163
206
220
176
179
230
215
216
194
204
220
230
236
216
163
142
202
188
241
233
222
202
228
203
165
149
229
233
204
184
240
210
244
187
191
191
222
217
211
133
239
209
115
213
174
208
141
234
212
198
187
171
214
213
209
203
215
192
189
196
244
184
224
188
252
174
233
192
210
204
221
205
200
202
218
205
188
236
123
177
218
237
177
138
122
238
183
177
224
206
246
156
236
223
178
154
208
230
215
165
211
265
152
174
202
206
196
165
201
177
124
188
196
231
189
166
233
194
219
192
176
209
221
190
173
193
198
236
94
140
202
177
179
210
198
219
171
197
203
243
151
246
193
185
191
105
179
203
206
118
185
197
217
208
259
195
242
195
221
194
208
191
193
197
202
178
204
228
218
200
224
128
164
208
211
201
176
208
206
229
190
183
201
200
211
147
166
259
142
125
245
231
227
143
254
173
234
202
232
166
169
164
163
158
251
224
247
195
174
126
199
239
248
222
221
179
203
229
170
177
147
258
186
229
214
216
229
121
215
176
184
193
262
179
198
217
144
181
214
192
145
157
205
231
202
170
216
174
177
219
200
173
228
233
165
213
233
236
155
261
221
217
250
171
182
162
181
161
196
202
165
183
173
200
133
186
228
183
195
177
210
170
144
222
231
177
214
203
229
204
206
200
208
262
202
220
148
216
168
201
214
81
220
201
208
215
185
153
161
197
161
199
245
234
255
170
224
171
218
223
206
188
187
162
205
135
221
252
205
180
193
221
271
168
137
220
176
241
200
155
204
219
252
209
209
189
154
227
202
253
184
158
218
141
193
251
200
205
223
188
180
167
204
192
132
146
213
227
225
242
222
175
194
232
206
221
145
174
233
206
156
186
201
185
202
203
201
175
249
214
208
200
185
216
192
261
246
157
215
229
206
167
181
206
192
165
162
163
200
253
231
199
235
135
204
163
236
218
145
229
208
131
221
248
184
204
209
159
184
229
191
183
209
204
219
194
117
156
170
229
141
203
200
235
258
176
194
202
162
204
227
176
220
241
227
171
243
228
209
233
198
235
141
202
225
198
191
278
164
204
167
247
184
204
203
202
252
207
229
250
176
247
200
227
206
171
209
124
236
189
223
177
212
247
241
308
217
185
223
236
226
253
154
175
220
160
162
210
173
145
195
238
208
176
225
229
197
143
217
245
181
143
186
242
276
147
181
190
167
248
243
169
204
225
214
248
258
259
190
180
236
216
190
218
204
160
205
175
207
198
131
219
276
262
222
172
148
189
186
196
235
234
248
225
221
179
149
270
192
175
169
247
175
198
174
245
238
227
255
198
240
176
181
208
148
231
238
164
228
219
190
214
201
124
192
231
195
190
181
226
197
160
176
228
219
202
194
173
161
164
207
208
206
211
184
209
174
170
190
165
245
162
227
184
125
179
166
233
170
203
185
189
152
236
191
211
227
230
218
183
257
242
220
140
226
203
175
207
212
117
260
201
190
213
200
268
260
121
226
146
189
193
197
195
210
226
158
161
158
199
169
201
165
124
155
169
251
201
212
198
201
174
160
227
215
235
165
161
222
209
226
189
154
122
198
185
188
203
131
202
208
187
211
240
115
201
166
117
224
228
186
159
121
202
209
181
195
233
239
232
207
216
170
120
188
204
204
204
193
251
140
197
199
227
245
193
194
257
234
245
200
240
203
170
223
208
168
243
243
216
180
211
177
215
227
204
226
223
229
208
229
221
175
245
212
210
198
181
162
167
129
227
253
251
207
164
196
194
214
209
189
218
225
257
218
218
223
248
196
156
210
142
198
256
226
216
252
161
201
220
185
228
151
283
204
226
177
207
236
228
215
220
207
234
176
182
241
143
181
215
227
218
191
215
251
206
254
235
192
188
163
236
196
158
125
217
193
212
241
185
214
143
206
231
200
236
202
193
207
209
221
208
260
249
176
172
234
209
238
208
181
219
166
163
240
201
136
220
230
165
254
189
221
255
177
141
234
129
165
155
180
150
203
194
250
199
217
218
243
174
195
205
205
198
180
199
148
212
226
197
130
203
222
196
177
236
192
182
209
232
175
181
216
168
228
205
206
211
194
232
187
229
184
205
190
104
262
179
263
204
200
233
226
228
185
159
212
214
194
186
254
221
209
174
177
233
173
167
155
278
172
184
217
185
256
226
199
155
150
161
183
219
222
154
163
197
203
276
101
217
234
192
174
233
153
245
167
174
213
136
234
171
206
221
246
250
146
202
212
213
166
187
166
208
223
171
145
284
206
246
223
186
156
185
226
170
199
151
162
176
186
145
231
232
175
153
262
166
209
188
178
232
218
175
195
215
201
210
182
220
246
190
213
212
215
228
171
180
198
191
188
120
200
243
219
166
240
272
231
213
175
211
144
156
202
184
201
209
183
218
220
250
196
177
187
216
191
227
174
184
160
191
163
157
191
232
194
193
267
155
140
183
240
208
166
248
200
239
209
172
207
193
97
219
230
247
237
194
221
169
159
202
170
281
178
209
212
190
139
185
229
223
221
172
266
221
244
197
218
158
191
185
182
223
250
182
227
201
217
222
174
136
236
196
247
207
176
212
243
191
237
199
194
205
173
113
182
225
233
175
204
231
189
223
186
178
280
219
215
241
270
241
203
201
205
255
159
192
207
225
181
218
217
192
165
226
214
230
240
230
261
174
190
239
219
192
156
157
192
229
181
189
187
184
199
207
262
163
114
159
201
253
216
221
154
229
244
232
221
204
230
189
188
237
175
219
208
194
162
200
196
195
147
191
211
225
201
233
237
173
157
131
238
226
201
218
196
194
154
166
140
230
191
159
202
221
190
244
232
188
215
262
190
260
262
181
184
130
225
216
182
221
189
196
197
230
152
233
168
209
181
240
186
173
219
184
212
242
181
240
132
181
267
160
212
214
217
228
137
210
190
157
199
142
263
194
254
194
210
215
156
239
184
271
234
244
211
203
172
212
220
273
206
233
232
172
169
188
202
238
238
262
158
199
194
185
228
211
248
147
250
215
195
250
228
211
157
154
199
204
197
196
149
168
190
136
153
177
170
216
184
182
204
233
216
223
196
248
184
223
194
227
183
152
166
155
187
214
176
167
290
238
186
193
233
218
167
228
177
242
217
185
269
212
220
199
235
216
237
193
150
176
210
179
210
210
208
214
178
249
200
208
273
213
163
215
188
184
210
245
169
190
157
215
222
220
189
213
176
174
165
256
189
153
176
212
235
250
133
225
167
216
213
201
208
234
149
174
218
243
190
169
127
194
176
223
185
182
209
218
205
215
173
162
231
227
170
179
163
234
198
246
242
216
241
215
229
211
211
194
213
196
263
244
248
211
204
232
225
250
149
194
177
132
243
220
155
235
193
206
162
192
184
160
169
216
249
191
233
222
248
163
170
230
201
220
163
165
206
198
175
240
208
174
200
227
208
288
189
260
235
210
213
182
261
171
250
250
236
135
184
234
216
191
216
168
156
171
196
259
186
270
260
238
210
186
182
201
195
201
134
159
180
214
222
273
168
198
188
210
191
225
197
179
226
127
210
233
156
262
218
212
222
146
200
193
245
180
239
132
238
217
240
187
210
151
166
199
183
212
165
211
203
166
212
151
187
161
201
222
186
195
184
225
115
176
181
240
175
176
151
183
225
234
188
142
215
233
267
224
215
182
214
200
224
194
214
198
193
189
152
261
188
199
196
234
258
232
190
222
179
219
195
183
124
148
233
208
182
252
175
221
116
259
204
208
155
247
235
210
197
169
169
212
247
236
242
226
225
126
174
234
140
195
204
111
134
205
182
187
202
213
180
146
242
207
194
216
165
248
185
219
137
185
221
216
226
123
207
174
199
180
203
134
158
135
151
151
247
257
195
139
201
218
214
180
182
140
238
290
160
162
213
169
222
191
142
175
203
226
162
173
201
227
162
156
223
235
225
230
235
145
210
144
249
266
159
264
232
140
292
224
182
196
247
190
248
255
234
200
193
216
173
252
179
195
276
215
250
224
158
140
254
263
170
145
109
151
184
234
216
202
269
178
240
268
161
212
214
238
133
257
214
127
246
234
271
163
178
212
217
172
251
215
234
232
138
219
134
213
218
156
233
242
259
203
199
205
213
212
221
193
165
186
160
202
222
252
248
200
183
205
236
213
197
213
234
147
191
215
186
214
292
172
188
254
121
229
208
236
188
119
196
160
254
206
251
239
129
180
181
182
215
234
142
221
191
159
253
201
141
176
203
210
227
223
194
164
160
202
147
225
210
152
222
201
238
275
233
178
211
150
153
224
228
196
154
236
212
209
142
205
184
193
241
147
199
248
242
191
231
200
209
240
212
234
234
196
254
200
227
198
177
263
191
203
185
218
257
246
213
239
138
214
139
172
174
209
238
204
145
171
166
188
208
222
235
216
223
203
211
156
257
199
231
175
209
217
246
205
200
188
220
159
224
183
166
180
224
238
198
162
230
225
224
231
184
150
154
151
192
171
235
195
158
223
283
209
211
198
206
159
176
124
223
206
190
197
215
225
239
216
167
208
242
233
220
231
192
181
215
196
295
116
218
184
158
223
244
165
206
211
198
186
189
228
213
153
245
173
164
253
173
219
227
210
230
229
184
251
188
131
164
184
160
190
222
157
155
211
203
209
236
262
252
208
247
266
195
190
220
232
170
178
177
173
188
176
213
203
225
189
215
176
164
172
177
222
189
204
146
190
170
235
193
154
225
240
191
262
178
171
225
204
227
196
173
205
203
230
222
161
209
173
249
222
256
281
187
239
199
217
228
202
213
218
196
188
235
205
194
148
161
156
221
195
261
177
192
189
260
171
208
155
201
196
204
139
192
239
225
190
219
222
189
210
210
202
159
170
160
228
201
184
244
219
234
193
156
226
188
169
187
248
195
185
261
192
222
198
141
240
204
225
129
185
211
213
195
169
114
185
195
163
136
177
201
221
223
204
207
218
206
209
174
234
193
155
158
193
222
216
221
179
178
193
184
124
222
217
170
217
178
236
159
134
197
217
206
197
206
219
255
216
278
120
250
217
195
171
175
205
196
160
175
225
235
195
266
170
190
227
270
216
255
264
181
212
199
184
226
199
254
158
239
194
180
229
229
171
192
212
238
184
220
241
246
201
221
147
256
213
213
256
205
171
233
216
181
170
202
225
187
181
185
185
213
199
142
193
133
232
193
162
226
204
169
242
230
230
124
247
191
142
222
211
196
218
185
240
150
224
183
237
230
197
276
193
203
241
146
217
205
252
220
194
189
249
198
231
191
188
152
240
173
196
216
176
193
267
226
180
224
175
210
218
253
288
178
199
184
172
228
208
179
236
200
179
185
162
205
220
147
241
162
246
224
149
222
140
165
246
218
154
188
185
210
247
203
209
215
206
149
145
218
227
242
286
217
228
176
218
217
126
190
220
183
276
200
223
177
238
146
170
236
236
167
160
195
194
174
164
201
181
190
236
163
216
164
195
303
204
142
235
216
200
241
233
223
233
222
156
204
218
153
173
200
213
184
234
239
214
200
222
174
189
182
181
189
178
158
177
238
149
218
181
216
153
207
121
202
161
136
191
242
224
253
194
165
143
224
198
197
170
221
192
211
255
180
210
257
149
217
228
221
203
215
188
213
131
225
238
144
218
183
189
221
203
220
214
163
221
236
167
252
232
229
223
216
242
155
227
201
221
205
178
209
200
223
146
191
197
228
205
217
223
213
196
232
160
221
218
208
155
191
219
174
210
204
217
183
212
176
154
206
248
169
173
221
254
236
209
211
212
189
195
190
112
243
182
190
177
241
175
252
267
262
164
208
207
217
173
255
149
161
170
195
174
181
226
188
166
189
135
140
243
259
218
185
202
168
229
160
157
182
250
195
196
158
219
164
215
157
163
169
217
187
208
159
195
202
201
197
252
236
195
164
181
134
173
139
215
139
206
218
233
266
201
125
223
227
201
234
163
133
162
281
212
200
249
225
208
242
149
173
189
166
178
163
154
178
201
208
189
197
179
199
216
190
170
179
221
202
180
190
229
185
237
165
150
186
185
157
137
187
223
212
181
200
157
200
224
236
245
209
212
209
247
210
203
249
207
267
176
243
237
183
211
242
199
253
209
163
222
192
170
216
176
180
192
194
198
175
171
138
173
235
239
214
166
225
247
194
219
175
234
177
226
222
191
238
243
207
175
162
152
217
243
245
207
232
181
208
183
182
247
264
173
182
150
200
175
200
169
190
165
192
211
168
224
194
186
198
159
215
179
226
175
248
250
171
217
217
181
237
134
180
236
188
198
135
195
190
131
202
243
165
196
222
216
253
189
184
198
240
180
209
234
244
175
143
206
220
221
161
235
174
193
220
188
217
185
198
257
244
237
156
195
165
165
157
183
204
207
244
190
244
205
183
212
239
173
172
210
173
208
178
149
188
190
170
229
221
219
215
197
192
152
237
238
190
233
203
211
211
192
201
206
252
244
167
254
235
119
177
260
163
234
118
188
219
188
253
207
186
228
226
227
218
220
240
200
221
180
218
203
191
201
180
133
241
199
245
211
207
230
191
178
147
133
226
239
258
207
207
157
197
272
208
199
162
138
228
174
261
195
242
199
245
228
156
200
195
234
227
208
215
269
221
184
177
222
212
152
169
194
160
135
138
188
218
181
195
248
237
206
223
210
154
216
184
227
203
255
164
224
171
252
191
183
221
201
189
233
233
185
193
214
182
180
184
193
154
191
177
187
220
206
153
182
218
161
214
199
200
201
246
164
245
202
183
180
144
192
211
162
252
237
211
226
180
236
204
165
195
167
162
241
238
197
186
201
210
197
185
213
191
184
180
178
204
170
253
152
239
155
160
192
239
151
199
171
206
242
79
229
247
175
190
142
220
221
215
204
213
188
211
193
196
173
194
163
193
187
169
212
203
184
198
258
205
167
196
258
272
162
232
213
177
229
166
235
244
180
314
256
157
219
248
200
264
207
231
214
172
107
199
206
174
248
163
209
213
177
154
175
237
230
198
203
195
175
213
235
189
197
228
212
219
272
229
221
248
168
215
206
188
195
151
135
222
191
179
206
201
173
121
245
206
123
201
191
204
163
167
149
274
186
176
197
180
177
205
186
163
210
235
200
213
171
202
138
240
158
128
145
163
131
204
237
160
198
251
160
174
265
187
207
259
210
197
216
200
169
210
226
239
255
224
164
236
188
206
160
251
203
167
169
195
155
193
230
230
231
225
188
177
191
233
194
172
148
162
175
243
235
191
232
167
174
125
193
258
254
259
183
189
240
193
231
159
158
204
165
209
200
207
165
153
247
198
154
208
232
241
198
240
236
177
211
124
134
213
208
185
248
162
147
218
216
190
215
267
179
187
203
153
183
182
167
259
163
194
254
232
188
164
147
207
198
153
215
175
208
197
260
245
241
202
253
203
224
167
223
153
229
156
225
197
231
227
200
213
252
185
195
260
204
196
142
236
154
194
232
213
233
165
286
223
192
203
185
195
186
209
179
153
219
228
208
198
123
187
217
194
246
221
193
221
213
200
196
167
198
207
199
186
212
216
199
213
201
199
219
245
163
215
158
248
220
203
176
222
153
221
254
171
186
195
218
134
151
149
147
133
170
228
205
198
204
204
243
264
261
222
176
225
202
182
217
211
178
227
233
171
204
220
228
157
228
174
207
173
162
263
150
199
175
171
218
174
157
191
195
198
196
195
154
205
248
159
227
171
157
250
202
156
207
247
212
212
243
210
173
201
217
234
208
232
207
188
167
168
241
142
194
184
205
182
202
195
258
233
144
286
180
210
178
194
250
208
157
185
168
253
124
196
204
237
188
179
183
175
272
195
190
216
143
218
196
204
224
209
151
211
237
158
210
203
170
196
253
202
173
185
236
169
204
200
210
203
215
267
217
191
281
207
203
167
148
206
195
217
191
162
178
196
170
228
169
175
185
166
163
249
234
209
181
240
242
106
149
214
251
193
178
175
179
173
208
210
215
167
146
157
245
205
193
204
222
141
161
171
189
177
228
222
178
225
189
185
217
153
178
137
218
224
182
224
171
234
237
159
174
177
226
201
225
202
251
220
255
207
169
202
225
214
197
187
101
174
223
209
214
189
145
228
229
246
204
148
220
205
212
167
222
240
144
213
134
198
210
199
216
153
140
174
217
203
139
266
161
199
225
209
215
193
169
183
226
261
194
226
218
127
164
196
221
206
205
230
232
177
184
219
230
184
223
119
190
198
184
143
209
210
175
202
157
243
277
167
249
259
209
173
206
224
226
227
176
206
208
193
217
173
230
141
225
240
221
215
229
187
251
191
270
229
232
193
204
226
192
193
139
210
235
226
198
186
190
197
183
134
158
186
131
218
198
168
253
211
166
217
229
218
256
188
231
211
207
224
204
195
249
231
158
293
193
133
139
195
189
189
179
216
218
188
246
189
176
195
180
153
214
205
163
250
271
182
205
206
226
185
225
154
203
145
240
202
202
256
152
177
267
192
216
198
184
277
259
157
238
237
172
162
227
182
211
173
231
183
162
242
220
245
260
223
185
200
212
172
179
206
208
227
139
217
197
208
204
178
182
257
154
208
168
234
224
180
217
235
248
177
231
190
178
221
236
217
194
199
203
222
170
191
181
208
157
220
174
242
192
195
210
198
250
178
157
237
211
233
141
205
215
247
161
85
180
248
170
188
202
206
249
227
264
149
174
186
189
211
227
185
180
176
185
176
227
195
186
155
212
210
185
221
221
174
167
182
233
255
238
237
220
192
153
197
191
194
184
219
210
203
201
184
239
121
280
222
222
234
196
179
159
205
170
204
227
188
234
131
177
208
194
219
171
227
185
212
199
192
177
222
174
236
192
203
228
209
248
200
203
236
211
218
229
190
180
196
181
183
199
225
134
260
211
160
174
195
153
219
207
224
177
172
232
192
214
206
187
251
204
205
222
220
208
222
226
207
235
153
188
227
249
221
246
193
203
209
204
180
202
213
215
231
188
247
167
259
119
222
193
163
215
244
186
249
163
207
188
217
252
243
202
208
205
230
206
179
150
231
175
127
211
245
211
110
237
190
148
255
241
164
252
201
225
173
166
156
165
161
171
213
217
197
217
189
161
252
180
241
228
215
240
174
203
192
161
192
173
129
188
212
219
173
180
187
206
226
204
212
194
188
191
197
176
202
197
221
163
214
199
198
213
219
219
187
140
182
226
164
185
137
187
276
263
213
183
153
195
144
216
199
167
188
216
231
197
185
169
176
187
201
257
167
238
225
170
212
230
190
170
185
249
186
196
248
249
226
285
166
210
216
207
242
194
173
200
274
208
190
223
211
209
160
191
169
157
191
151
205
194
174
235
274
191
155
186
196
253
190
232
185
185
182
215
108
216
260
190
244
147
201
175
241
202
231
229
193
209
211
216
236
172
141
210
142
256
206
170
221
168
127
214
216
210
131
244
165
214
149
226
223
248
199
181
245
262
191
207
165
215
224
253
220
205
159
178
149
222
141
172
185
177
201
208
111
182
183
166
206
191
215
205
204
209
229
223
269
210
166
209
246
244
233
199
123
246
213
213
245
224
157
261
220
160
199
137
206
207
179
157
217
230
120
188
126
185
212
270
195
229
223
171
191
212
174
222
171
190
166
201
194
211
272
156
175
209
277
185
199
213
203
201
224
227
217
162
144
223
226
229
178
210
214
219
196
139
180
213
173
137
256
202
174
149
195
227
202
175
231
195
204
187
206
213
261
199
216
204
223
211
192
244
167
186
235
156
163
178
165
175
189
252
257
210
277
185
232
204
243
120
187
179
203
200
217
222
251
266
221
182
190
208
181
188
213
271
191
197
205
260
188
224
205
182
174
140
167
167
183
207
242
164
258
146
195
117
242
236
243
214
234
209
295
185
190
184
193
215
169
235
163
202
135
228
189
223
221
241
144
213
232
225
244
144
260
226
189
230
223
165
179
197
233
228
193
176
160
261
92
207
189
184
264
159
168
159
178
238
176
236
178
237
210
206
185
204
206
193
169
214
206
165
156
180
185
193
236
219
191
170
191
179
217
159
153
234
236
191
177
227
238
226
168
202
192
201
196
206
198
267
190
128
208
260
190
205
175
182
249
249
262
254
188
188
203
203
204
236
233
230
192
179
152
250
196
185
235
203
137
223
210
166
205
217
205
219
192
171
179
206
222
209
239
166
224
184
219
179
233
195
220
231
212
206
258
190
242
210
200
232
207
199
191
202
249
134
232
206
195
222
138
181
219
152
178
192
225
145
241
225
226
185
207
127
237
199
200
219
193
231
232
216
199
196
236
154
186
279
181
220
198
264
213
216
239
259
131
201
180
209
103
124
177
219
136
186
219
157
166
184
234
208
160
254
163
238
172
169
206
209
157
246
221
235
230
176
217
125
217
135
173
220
254
197
240
212
182
207
222
185
219
225
94
214
156
205
209
172
256
226
153
182
200
212
194
269
169
177
201
168
243
199
196
181
204
211
213
223
143
200
175
215
259
231
209
211
163
245
252
153
188
213
219
150
224
162
222
214
260
222
221
141
165
271
154
149
234
264
166
220
155
144
203
254
185
249
161
207
169
222
180
214
168
205
202
159
178
241
157
224
169
173
234
117
219
229
219
271
242
196
223
183
132
200
216
189
205
182
216
186
198
137
194
213
156
206
182
219
252
248
198
224
107
228
211
194
205
242
149
212
225
184
252
171
198
182
258
187
214
215
186
161
177
199
213
193
239
249
221
242
190
160
139
261
197
181
187
267
194
261
244
164
245
221
180
265
162
200
216
268
152
217
237
217
158
226
203
196
204
188
207
208
188
142
187
156
229
239
159
182
183
227
201
189
258
189
238
224
169
130
229
189
215
205
180
199
162
188
234
223
127
184
138
200
190
197
174
135
187
176
112
243
225
225
258
174
160
210
192
221
245
208
178
194
238
229
175
220
183
190
139
211
174
187
225
207
177
183
212
211
222
225
239
153
255
170
251
145
199
240
187
186
191
210
174
227
227
181
197
187
260
145
219
254
189
241
230
172
156
204
164
165
159
221
221
204
241
162
133
212
217
227
157
197
154
253
187
231
180
146
144
202
206
194
229
206
187
224
184
212
224
233
171
152
191
209
193
273
217
170
184
153
203
161
154
250
173
214
191
167
203
211
193
236
231
226
161
211
131
244
234
192
231
219
151
172
133
187
206
207
191
234
238
172
196
200
222
166
228
203
202
199
211
212
193
232
122
155
153
217
247
157
222
231
199
189
135
226
184
200
157
243
233
205
218
211
254
216
232
168
169
202
125
151
173
195
189
167
259
247
225
245
198
234
219
158
215
260
188
167
178
182
172
251
199
166
140
206
204
193
171
194
240
254
183
165
137
201
171
220
158
183
216
189
181
221
227
145
205
216
184
232
190
116
218
209
171
234
224
223
173
196
179
248
147
228
215
217
165
226
237
198
181
205
190
178
229
239
233
128
124
197
160
189
175
223
187
185
132
223
202
130
215
206
228
178
202
229
195
268
167
229
196
150
146
224
242
190
180
212
209
199
245
211
239
202
237
233
238
161
271
175
198
175
209
177
191
191
257
260
260
260
234
148
232
164
219
153
197
201
116
217
234
226
250
162
237
200
172
223
245
220
181
180
224
158
185
165
215
178
190
140
250
178
178
199
197
176
232
232
187
191
224
148
218
227
159
239
203
241
179
246
128
199
256
119
206
241
175
155
244
194
225
212
181
197
154
202
164
252
146
217
236
228
192
241
187
178
175
227
192
182
151
167
235
212
222
254
180
219
190
231
218
225
180
206
167
178
216
217
172
232
195
230
123
217
170
220
173
207
190
200
166
206
194
218
107
207
243
228
184
137
170
223
168
176
192
215
242
196
195
237
220
220
189
205
212
187
186
154
175
177
145
244
143
185
247
171
270
205
188
221
142
241
202
197
222
200
267
223
229
188
247
257
170
188
215
180
159
205
157
222
242
184
207
221
199
177
217
205
266
263
250
245
246
259
219
196
217
211
217
194
185
243
221
227
217
178
201
162
276
194
154
232
218
194
235
238
224
243
217
232
230
206
153
220
173
221
221
250
221
153
204
139
181
142
252
225
196
206
242
196
232
167
202
225
197
186
208
228
135
199
200
218
217
146
255
159
259
169
246
185
108
132
208
179
177
206
255
157
250
190
157
187
225
212
186
240
136
234
160
157
151
178
216
137
186
172
227
246
202
228
244
270
179
222
209
205
222
245
186
196
194
231
204
140
189
192
245
230
177
191
205
186
210
221
127
273
215
197
216
150
183
226
243
211
197
228
199
165
206
280
225
215
146
166
198
203
188
249
209
223
226
192
207
222
195
178
136
246
171
169
246
182
231
219
189
175
189
208
200
227
206
112
192
203
204
214
219
248
201
163
227
208
213
214
197
199
159
122
173
217
195
189
204
222
232
273
180
177
191
196
205
190
188
145
203
236
188
130
235
218
171
244
217
231
186
213
178
237
224
255
176
208
231
248
203
162
165
225
178
207
191
190
245
224
235
184
177
204
215
203
215
225
220
240
227
162
194
226
222
178
221
186
220
197
191
201
253
201
267
243
225
177
207
186
180
261
200
214
222
166
221
183
252
222
171
282
188
237
219
182
164
183
189
195
158
192
225
248
185
170
224
179
186
209
239
208
190
223
156
177
189
195
210
162
159
230
199
195
135
175
243
174
202
208
235
179
221
187
186
203
179
277
214
232
148
207
231
205
212
234
231
223
222
178
168
179
232
148
219
160
186
208
254
188
192
214
172
247
203
221
137
256
156
197
187
185
126
204
231
183
215
135
144
224
213
161
198
170
217
213
201
269
160
241
215
193
166
222
187
203
193
131
228
185
184
237
178
188
166
217
257
181
214
182
204
194
177
133
186
203
186
184
225
191
174
200
239
178
230
172
194
200
216
205
197
220
166
228
112
229
192
190
201
184
217
192
207
226
168
201
242
132
110
137
195
191
193
191
183
154
178
196
239
160
245
128
195
174
178
230
197
194
247
168
196
180
185
111
175
221
179
207
197
185
199
186
191
204
158
213
209
234
196
223
211
165
193
202
141
179
213
235
202
187
264
188
207
166
249
203
196
173
242
203
228
267
212
145
225
201
172
195
255
194
232
182
176
196
193
222
232
239
247
176
223
220
232
196
200
235
152
233
141
222
231
209
201
207
181
202
228
231
209
195
203
207
216
159
209
201
182
197
160
157
137
230
214
227
215
170
186
221
291
197
216
207
243
190
198
231
232
257
163
193
197
231
273
255
196
229
225
200
152
242
217
207
204
175
167
204
187
183
237
156
207
175
191
258
210
255
213
200
223
216
221
219
198
216
240
190
161
212
232
229
237
196
210
205
262
205
251
193
218
237
186
225
211
193
221
212
246
216
186
186
227
243
248
222
186
211
169
248
142
190
188
240
195
203
176
190
190
187
203
188
272
164
234
230
154
206
175
140
201
230
206
221
229
159
271
191
219
198
231
216
228
237
159
228
198
214
237
193
272
212
215
212
215
119
207
130
274
193
187
185
183
157
184
146
228
143
205
256
142
188
209
228
187
214
224
175
239
148
198
218
234
202
127
111
147
249
168
217
195
192
208
200
231
222
183
201
176
189
228
163
175
214
177
201
145
250
221
215
201
146
184
181
133
170
208
216
211
199
169
138
143
259
162
184
196
220
216
193
217
170
233
192
200
167
228
210
139
219
234
237
191
186
224
256
210
181
117
197
205
230
199
191
161
196
256
211
209
268
197
220
241
204
221
185
199
221
185
173
189
214
208
253
185
191
164
184
219
192
158
188
198
223
168
191
222
216
226
189
251
177
202
164
216
236
241
173
150
218
221
268
208
206
153
215
198
239
185
231
249
142
177
216
177
214
162
160
190
186
218
144
182
220
255
159
149
158
135
205
238
211
150
233
255
174
198
200
177
196
177
171
239
188
251
220
234
184
238
226
198
215
176
223
264
196
209
188
179
176
184
253
143
235
196
212
161
181
153
175
168
219
171
152
224
191
228
176
231
150
203
187
176
151
219
189
139
159
217
193
217
197
201
213
194
194
154
181
180
240
191
206
213
194
225
171
183
179
204
227
240
187
239
226
230
163
189
218
223
239
208
150
235
171
182
218
159
229
229
129
239
235
241
150
181
238
172
275
182
209
199
235
179
193
170
183
203
241
184
184
244
220
180
241
192
166
167
156
239
172
231
194
232
180
264
177
231
218
253
112
196
114
157
152
199
213
183
215
167
218
211
180
199
248
219
230
165
229
232
219
252
172
242
207
222
196
235
191
142
224
182
164
117
244
211
238
185
209
181
160
191
192
196
206
200
170
248
151
148
220
284
202
202
194
208
232
220
173
253
216
214
154
238
192
174
181
192
92
252
174
237
207
199
230
233
220
177
189
231
217
213
195
196
202
145
188
247
201
199
218
163
218
165
203
160
220
196
167
182
173
212
168
219
202
283
192
168
206
255
189
150
194
237
240
163
233
286
225
158
199
203
239
245
220
199
134
256
225
185
158
204
247
207
210
182
205
245
187
207
217
220
256
139
216
249
210
186
210
265
227
180
246
217
238
207
162
186
248
186
225
133
243
235
212
184
188
163
192
212
151
241
168
174
211
222
223
187
123
192
247
275
148
228
245
208
170
169
223
262
221
174
229
190
258
192
190
165
183
182
222
193
201
201
120
256
216
195
257
227
189
206
227
225
240
206
165
180
175
235
173
241
218
238
199
264
216
193
216
162
182
160
181
238
248
179
212
210
138
175
183
208
190
192
228
203
168
206
240
163
172
237
162
189
191
195
218
237
187
211
218
168
178
220
200
198
295
211
188
127
221
191
254
169
212
258
210
188
212
176
234
180
208
210
138
189
131
162
217
181
200
210
227
136
244
271
178
205
206
128
228
174
205
248
231
240
251
163
132
200
252
184
194
132
179
234
185
214
197
216
211
206
177
219
192
190
193
192
188
196
170
160
250
222
172
159
179
207
170
178
279
145
207
154
266
178
210
161
246
186
180
183
240
250
153
250
167
195
146
160
225
241
196
225
188
204
269
199
185
218
185
197
200
253
231
250
201
191
184
160
206
194
138
218
193
196
207
247
192
224
202
204
145
229
156
212
211
235
200
170
191
196
143
169
210
180
171
235
172
188
257
196
275
155
217
216
178
211
180
200
182
212
208
203
181
254
222
199
170
203
206
159
219
161
221
193
237
217
188
241
228
227
172
178
251
165
220
185
150
208
204
246
216
141
211
207
222
249
176
217
224
295
204
209
207
223
210
159
163
228
206
243
256
182
165
226
211
147
170
201
185
109
195
167
260
208
161
186
149
268
197
235
214
240
236
170
172
240
145
103
191
193
224
181
201
247
233
199
189
228
225
177
248
198
222
212
248
196
261
219
224
190
198
146
236
211
156
236
252
193
171
130
201
152
276
214
184
136
244
212
152
200
184
202
252
234
213
184
202
162
236
215
148
167
241
154
209
219
175
205
149
242
204
273
177
211
172
216
153
233
239
219
194
190
218
177
214
188
194
203
188
210
219
205
204
146
222
162
210
200
210
173
245
210
229
187
122
150
217
180
208
270
207
157
194
199
184
174
209
251
236
197
180
270
201
170
251
199
197
174
211
185
197
153
206
185
189
202
190
246
189
232
253
253
222
227
215
173
187
164
219
222
186
176
158
158
120
213
224
149
183
253
201
207
120
222
210
186
180
229
184
170
229
138
228
211
204
214
214
235
121
253
156
182
202
193
183
212
153
210
130
205
209
149
248
186
211
190
166
180
252
252
199
273
208
170
162
241
211
229
159
295
185
201
276
182
165
129
161
215
288
207
180
163
173
210
211
224
195
227
183
262
253
239
192
175
245
157
235
192
200
244
223
248
195
206
221
157
213
183
253
233
214
242
235
273
264
170
247
163
193
143
225
200
200
193
235
185
233
196
164
221
216
213
186
172
234
210
217
162
210
198
253
185
237
182
236
194
211
185
182
211
214
188
183
166
235
205
215
228
267
214
169
176
189
146
276
188
202
176
165
180
228
238
232
176
125
252
243
156
229
196
198
154
194
204
191
220
213
207
238
184
158
185
220
196
108
216
169
168
191
197
242
171
199
243
258
163
223
159
230
247
234
199
216
144
136
239
161
83
204
190
264
213
150
226
207
246
182
185
161
193
173
184
194
176
215
214
207
186
124
203
177
223
186
207
194
238
233
228
195
191
221
231
186
247
205
252
139
248
250
163
194
217
252
226
243
212
168
148
244
149
149
215
271
154
170
217
205
189
260
238
236
202
239
191
259
180
219
200
233
219
199
168
204
159
200
213
235
224
207
175
159
218
183
236
204
181
185
201
195
169
149
150
247
181
250
222
213
121
207
233
221
184
168
244
216
176
250
216
178
203
234
248
176
226
193
209
146
157
234
218
182
143
255
204
170
174
257
217
200
189
183
144
191
192
205
210
260
210
218
248
201
162
209
264
213
171
238
168
176
173
163
142
240
215
164
188
187
233
203
265
207
154
193
180
180
175
250
190
209
223
249
204
218
206
228
247
200
167
187
269
239
187
226
224
170
246
194
192
177
225
228
196
187
268
163
195
171
160
168
244
175
197
246
178
222
233
161
225
267
217
224
257
193
277
209
197
191
218
144
202
189
229
136
143
218
165
210
216
203
162
178
206
199
183
161
237
165
200
162
245
212
143
176
236
246
221
205
236
186
195
212
201
212
219
156
186
204
237
179
191
173
182
198
225
192
226
210
116
136
251
124
179
233
170
197
194
187
233
136
144
200
212
201
174
157
243
171
206
219
199
190
159
242
184
262
184
290
186
215
226
137
168
194
220
183
247
260
179
136
241
187
202
268
177
204
136
201
204
202
210
210
197
160
195
244
200
221
280
215
266
180
179
199
258
165
183
225
201
206
165
214
182
205
204
217
224
264
193
183
210
208
280
123
199
215
234
236
174
178
184
194
251
197
230
213
115
139
181
212
212
224
149
157
227
198
209
136
177
180
224
276
300
172
215
221
215
227
214
235
222
158
214
187
219
212
232
263
235
173
215
235
205
224
191
215
180
142
182
237
170
224
192
228
229
193
176
161
171
148
207
180
230
269
206
173
218
213
198
202
227
144
151
181
278
252
257
180
207
210
159
208
165
217
233
273
249
192
223
176
247
178
174
201
238
190
251
201
198
227
223
174
251
197
225
182
221
175
242
210
181
139
221
168
179
216
186
188
172
208
207
184
201
149
194
213
216
156
166
213
211
206
216
214
262
217
177
243
181
193
186
117
192
237
193
242
121
164
206
175
158
199
241
199
143
175
233
136
239
227
198
154
220
233
248
165
245
212
233
187
218
158
243
214
236
201
188
232
252
193
180
188
263
234
156
254
148
249
151
279
160
224
181
250
220
211
223
229
131
229
195
219
229
230
189
196
186
250
169
217
215
219
246
225
141
204
198
244
165
201
225
246
178
257
180
118
247
233
211
174
132
171
218
219
198
245
221
170
201
212
236
248
241
219
167
218
202
278
169
191
197
179
198
229
274
226
214
166
176
237
199
209
237
153
173
175
177
212
165
215
206
211
183
195
146
202
223
163
218
181
243
126
131
141
245
169
196
220
206
191
240
241
183
193
219
163
167
216
164
172
201
161
252
155
224
180
172
233
209
253
226
252
160
224
211
212
175
199
217
231
143
257
136
206
232
252
225
265
180
158
202
205
220
201
244
206
242
242
187
212
240
156
241
230
164
221
208
211
267
210
225
183
223
224
192
206
294
151
158
211
237
194
233
263
211
196
155
237
212
209
217
197
249
194
209
221
236
204
228
179
252
209
185
238
203
227
150
154
163
196
189
238
204
155
191
192
259
150
207
168
223
215
251
146
212
178
226
125
176
265
204
226
169
170
149
194
129
247
194
221
235
223
206
155
144
145
169
235
122
234
214
170
168
96
219
205
294
181
163
209
235
239
211
207
195
193
264
202
198
213
216
245
151
178
157
216
193
193
172
239
164
148
191
157
199
194
157
163
193
219
193
187
287
225
210
228
215
204
203
182
151
207
180
156
146
149
244
200
188
189
182
203
200
210
166
275
138
241
199
235
244
246
217
194
265
173
171
187
220
225
169
223
164
174
173
216
147
188
217
227
183
191
187
209
221
158
215
272
201
194
149
243
167
209
202
243
222
180
173
281
226
246
229
274
254
236
255
219
207
182
225
181
236
203
175
140
193
250
165
231
179
249
229
224
134
236
272
242
194
182
239
187
223
166
248
170
176
161
203
180
208
205
195
145
195
177
237
240
181
178
180
180
200
176
201
272
206
175
194
195
204
152
170
188
219
204
203
232
191
207
243
190
147
253
177
280
217
164
218
267
235
164
168
232
231
203
169
223
191
157
220
221
235
250
202
178
163
275
251
255
172
214
221
214
225
223
194
79
156
182
233
163
226
205
186
167
212
192
232
201
255
158
206
228
220
214
152
203
167
139
224
245
212
188
222
188
233
174
216
180
236
174
216
201
204
228
247
206
174
217
228
213
233
206
199
225
219
217
234
160
263
128
234
206
177
250
261
154
229
189
188
211
169
208
234
183
222
211
171
190
173
232
216
212
119
206
200
192
151
204
235
181
208
236
199
240
226
202
202
214
219
236
189
223
198
168
206
167
151
182
221
167
137
167
181
193
227
256
236
229
225
207
201
189
208
191
218
187
147
167
197
209
248
191
238
191
203
201
196
198
180
233
206
161
241
167
164
221
196
188
228
184
152
143
201
188
252
209
221
222
231
235
200
234
226
240
214
211
212
182
205
187
197
91
202
202
157
244
135
192
225
188
177
226
261
157
242
203
222
192
236
247
126
213
157
243
221
226
248
185
162
241
218
158
248
242
270
184
209
215
173
174
223
201
170
173
149
228
229
166
171
204
206
207
190
250
188
206
202
172
246
178
254
181
255
194
204
196
205
208
163
214
140
200
228
203
199
209
199
217
169
204
178
183
204
216
264
153
178
196
182
197
134
148
149
229
253
145
160
238
231
210
274
223
203
215
231
264
226
228
170
237
182
240
220
222
250
177
209
221
203
115
301
249
136
229
230
245
128
223
193
162
217
175
179
199
216
183
237
195
173
228
226
167
176
176
204
132
200
271
252
210
175
166
167
151
241
181
192
233
137
204
221
248
261
192
201
207
231
192
169
245
179
193
181
172
185
205
247
192
219
180
206
232
214
208
174
253
235
182
248
146
162
198
251
196
229
215
184
119
174
171
174
213
228
243
226
192
194
236
182
243
236
188
233
187
187
222
206
149
235
192
191
173
233
186
249
182
190
245
227
229
166
246
215
222
262
195
173
182
202
187
204
211
217
199
200
224
193
229
210
309
173
192
212
199
165
225
275
236
113
168
215
235
195
165
176
154
156
197
180
264
264
184
163
234
215
223
226
166
189
182
199
230
139
200
138
236
208
151
126
253
235
202
212
173
210
243
176
234
198
191
192
193
206
179
205
239
221
242
206
237
176
148
252
190
172
210
250
267
168
246
240
144
174
239
155
280
197
201
163
216
174
196
207
221
193
204
182
118
230
206
240
210
179
175
243
114
241
197
227
251
206
248
214
232
172
241
202
218
148
272
211
251
244
210
241
133
171
200
205
171
211
196
197
202
206
225
274
222
251
203
238
206
205
144
146
222
208
195
201
160
162
163
198
163
225
186
193
177
211
171
256
163
177
234
225
182
170
114
231
200
210
224
228
193
167
180
209
151
213
224
191
256
188
190
191
240
223
175
216
203
156
253
195
213
206
200
177
227
227
259
227
223
228
192
223
145
223
229
237
279
260
121
126
223
240
194
214
234
198
174
205
201
225
188
144
210
254
213
259
241
200
238
142
126
217
129
223
230
245
197
176
216
172
183
236
203
166
167
136
219
182
170
174
201
206
245
196
181
180
166
151
196
201
192
213
250
183
225
190
190
131
236
210
250
172
189
205
231
251
170
232
185
179
231
225
232
164
187
210
248
155
140
172
216
236
167
198
190
215
210
189
173
241
236
151
244
181
240
184
223
166
207
216
241
209
278
139
224
196
178
186
220
262
191
224
240
183
177
180
144
225
144
185
253
257
233
189
178
185
276
161
239
208
187
163
195
203
214
228
170
242
250
236
209
142
197
240
205
223
197
253
245
192
214
193
149
241
187
198
190
239
205
175
216
197
223
252
169
233
208
176
209
199
167
223
194
264
210
107
225
172
177
237
183
161
214
273
171
224
146
133
223
259
189
224
177
226
214
132
172
184
238
186
183
148
200
288
176
191
166
211
210
213
190
141
175
220
218
252
180
180
189
207
222
198
202
199
190
253
197
220
104
275
201
165
201
258
121
241
175
257
135
220
159
201
190
121
159
113
244
206
203
205
233
258
220
126
169
194
193
210
176
209
165
224
220
211
245
217
217
191
189
185
182
169
210
181
168
125
224
213
223
173
199
222
205
201
212
251
221
228
229
201
187
219
205
234
198
266
231
204
208
171
203
165
210
230
205
267
220
143
169
205
216
182
182
187
243
201
244
239
226
191
161
196
203
158
192
218
192
166
173
209
45
107
260
201
217
225
180
182
214
193
218
165
166
217
158
237
182
235
163
196
195
184
206
190
161
162
209
218
189
178
213
193
252
202
195
187
162
143
160
135
262
189
217
177
202
164
178
170
180
260
183
210
211
208
251
260
193
227
200
190
156
185
204
148
222
177
224
156
120
241
206
199
164
208
179
211
237
209
224
214
221
225
180
227
185
203
212
244
185
235
244
166
213
227
184
234
137
202
161
164
214
268
209
191
146
200
174
214
269
177
175
184
245
178
181
225
155
180
213
201
226
242
265
177
163
180
219
181
216
153
282
132
265
214
244
175
168
204
195
219
233
232
232
240
188
162
188
258
182
204
241
218
90
153
178
256
163
165
204
235
225
233
208
203
264
195
176
243
205
228
183
195
226
217
227
169
266
210
211
219
244
165
230
214
207
191
254
176
206
118
194
196
219
220
200
253
181
243
204
223
222
166
265
226
215
208
159
235
182
204
211
234
193
118
197
217
197
217
203
233
161
141
196
193
230
217
133
221
223
164
138
157
206
218
182
188
183
204
242
167
247
186
178
216
205
272
212
231
207
175
159
212
176
238
199
145
120
164
211
207
183
222
166
198
213
117
199
230
191
200
265
211
244
216
190
182
147
169
186
210
214
219
182
241
195
187
194
145
252
180
199
207
185
236
185
201
245
243
191
187
143
221
166
200
173
223
192
226
180
204
232
257
163
189
197
160
173
200
224
170
202
178
239
198
229
216
155
164
255
177
162
209
159
201
207
205
157
152
191
235
227
239
154
169
215
153
205
211
223
142
180
203
201
223
156
136
213
242
203
194
167
216
95
234
133
276
193
169
203
180
192
182
182
159
238
198
243
170
247
200
214
260
230
155
246
155
191
173
255
202
249
220
150
158
182
187
218
143
228
204
176
174
174
139
151
174
233
207
226
133
140
192
176
180
167
170
200
187
183
228
227
166
169
299
222
161
151
240
153
204
233
167
206
198
179
212
257
238
260
257
209
203
154
156
194
165
204
237
151
168
190
197
200
176
237
252
178
200
163
157
169
190
210
189
190
191
183
199
230
227
212
224
219
208
179
191
145
192
152
236
168
177
186
192
214
205
219
183
245
196
236
207
173
182
198
225
171
202
171
231
116
241
184
193
168
210
222
212
161
249
239
205
158
187
251
142
137
123
204
209
187
178
249
191
199
159
146
100
200
176
195
197
164
277
165
137
207
201
210
173
240
205
153
227
213
176
182
232
204
215
152
188
234
215
206
185
183
165
200
187
232
249
247
164
103
248
177
141
181
204
152
270
198
254
164
187
216
207
227
180
264
191
132
165
174
177
193
225
229
218
157
221
186
166
198
219
223
166
221
264
194
205
210
243
171
189
182
232
219
227
188
231
239
222
241
144
183
248
216
222
187
189
131
230
171
183
167
193
152
234
187
205
178
170
197
175
218
169
144
195
147
222
210
196
230
182
229
216
167
250
183
177
262
239
224
248
178
159
166
130
195
232
179
232
204
181
224
235
221
236
209
201
224
202
191
199
215
176
288
165
200
241
232
223
155
204
208
197
188
173
193
182
241
165
161
246
213
219
222
184
258
237
229
150
137
202
213
183
173
207
150
202
205
169
183
173
197
180
187
235
215
196
200
223
242
203
225
182
198
237
243
268
190
204
177
199
191
217
225
254
153
157
218
264
201
211
241
175
189
184
180
247
124
215
233
245
111
119
171
283
141
135
233
196
193
215
173
162
196
249
183
198
173
260
234
211
254
189
176
190
199
222
191
238
259
252
161
181
182
207
160
245
169
193
275
145
170
171
166
213
205
212
251
226
160
212
238
199
189
188
268
192
226
169
188
215
186
197
255
204
214
250
171
157
171
234
218
186
272
174
139
152
227
225
193
243
205
233
226
202
228
245
199
264
240
183
138
231
211
150
224
158
184
171
222
160
210
163
288
165
218
146
149
224
153
184
176
221
192
226
158
164
157
221
187
176
230
173
202
208
167
235
185
185
190
226
166
204
177
259
218
154
208
234
223
182
217
256
230
165
212
159
223
208
166
213
220
186
215
241
220
182
186
200
191
213
231
134
168
206
247
219
177
224
218
202
235
222
229
200
175
150
168
241
216
222
254
198
209
210
222
206
147
144
222
205
171
234
165
196
230
200
204
245
226
244
158
183
192
204
128
215
236
243
189
208
225
235
177
256
180
156
185
155
197
185
185
141
252
154
220
236
144
178
231
210
208
181
251
116
234
223
263
177
229
210
201
196
188
188
252
202
208
271
196
192
219
148
193
247
150
175
197
234
203
193
224
191
172
172
199
208
145
171
201
223
196
202
240
224
193
221
233
214
237
236
171
92
183
245
219
200
201
167
226
222
185
227
214
197
227
198
226
182
184
204
166
211
200
231
215
173
204
196
187
222
229
229
230
204
222
163
182
211
169
218
198
170
226
228
177
222
220
211
244
210
174
185
225
168
194
205
132
227
157
234
186
235
234
198
266
233
218
194
204
235
217
231
221
256
165
196
213
236
182
141
248
163
199
185
220
221
170
172
216
200
274
210
185
211
210
193
237
198
261
224
208
147
224
192
204
187
175
229
220
247
221
181
233
205
275
256
170
188
276
223
212
186
214
203
209
173
247
280
197
242
238
203
230
162
206
231
210
189
193
250
233
200
230
194
167
174
204
193
163
205
246
223
229
207
129
255
135
193
216
251
169
200
209
209
228
168
232
198
209
182
210
134
237
184
181
204
184
183
179
273
172
217
166
134
242
180
220
246
227
186
201
185
216
188
204
237
186
169
214
204
224
229
197
231
172
181
131
201
164
200
185
200
241
234
176
184
190
207
193
241
253
166
216
206
188
227
172
203
200
151
228
204
222
138
182
271
145
213
243
231
256
215
201
206
190
222
210
196
205
120
210
147
215
209
222
216
215
244
174
237
188
123
238
205
181
177
182
180
246
132
227
232
218
137
199
204
187
219
192
213
154
187
192
156
199
149
246
251
222
159
239
194
223
249
225
166
220
246
228
245
182
188
192
226
181
149
226
242
125
195
185
189
197
213
169
195
210
173
231
212
185
235
204
213
176
169
185
142
182
262
215
238
207
164
177
204
211
215
190
170
193
177
253
161
152
237
223
151
174
213
192
191
190
263
240
232
141
164
128
226
151
197
184
190
223
218
194
213
177
240
203
193
223
186
141
213
270
200
212
187
242
242
145
202
174
220
172
263
248
194
224
223
147
215
166
274
230
164
228
229
153
224
224
180
250
210
176
229
155
184
168
206
172
197
184
233
181
219
197
256
140
177
221
241
245
227
210
196
261
174
132
209
229
208
245
226
228
184
249
168
198
174
183
146
146
215
201
199
222
162
174
230
138
193
244
210
198
223
194
216
145
224
142
141
175
180
195
187
244
164
222
173
263
246
207
257
253
212
213
175
200
239
180
204
132
263
155
144
289
145
195
257
168
233
203
206
211
178
171
203
227
197
186
240
205
151
179
279
190
196
244
195
240
203
251
194
272
176
247
174
178
193
254
258
192
210
185
222
200
217
246
223
207
159
196
250
227
204
227
202
237
248
231
260
215
276
172
223
190
195
233
169
196
230
124
182
195
265
227
151
250
195
163
227
97
219
201
151
228
248
236
267
192
202
229
253
189
147
245
205
203
178
136
199
161
195
227
137
196
170
191
188
244
236
181
118
217
150
207
239
191
182
196
180
187
153
98
278
205
172
203
181
162
173
149
196
202
189
154
180
204
254
209
209
232
168
244
186
195
233
167
189
224
235
155
212
209
231
254
140
278
247
137
193
226
252
180
179
191
211
222
205
190
247
111
197
248
201
272
111
215
236
212
171
198
214
206
206
194
170
220
226
254
247
212
185
221
226
135
238
190
166
178
208
222
184
224
239
182
176
239
226
251
183
182
220
189
182
214
136
204
174
227
236
221
131
196
199
177
178
207
192
189
167
222
204
190
189
149
217
204
199
278
260
169
172
214
146
196
259
185
188
230
278
178
241
196
161
177
196
182
195
212
190
154
247
190
251
188
203
180
226
169
225
234
195
211
192
216
190
178
264
170
157
174
140
204
177
212
187
250
209
192
188
243
213
203
219
225
224
201
254
168
172
213
209
221
223
160
199
206
249
242
166
204
257
152
209
194
221
194
148
197
164
246
246
185
163
184
166
189
241
243
217
187
238
215
213
192
164
174
192
202
208
198
214
182
207
205
261
219
195
216
230
260
233
176
188
210
148
193
236
150
138
182
168
193
172
173
205
209
189
177
181
193
191
165
193
175
247
139
226
202
185
217
224
217
145
179
147
135
209
242
216
193
157
174
201
204
193
213
191
224
265
153
199
245
207
193
202
212
249
218
263
158
193
127
286
210
164
229
200
202
198
211
108
159
176
227
193
202
141
134
185
245
185
214
202
210
202
202
229
186
220
251
145
201
212
241
237
288
241
197
228
213
286
232
139
157
262
186
199
197
207
226
155
198
178
180
186
198
227
201
195
188
219
225
154
196
178
216
198
220
225
177
217
166
176
207
170
218
169
148
211
226
216
184
215
186
203
222
222
193
252
249
232
213
193
125
210
192
202
167
201
177
236
212
242
201
128
162
182
219
171
171
170
201
211
193
184
146
133
212
244
226
105
179
270
191
270
191
199
191
196
165
225
244
155
180
249
161
134
261
158
231
233
227
230
220
250
205
154
204
210
192
164
240
211
201
218
195
186
177
213
226
187
151
248
198
238
202
238
166
268
141
178
222
166
194
188
165
221
142
205
209
190
175
203
158
195
170
222
160
209
204
169
171
282
240
162
229
248
291
225
240
232
174
181
184
265
253
239
185
226
181
154
178
254
216
198
204
186
215
192
199
162
182
206
247
211
142
250
198
258
140
273
246
241
261
188
215
165
195
174
232
213
248
162
282
177
261
245
219
221
158
200
184
241
197
147
215
237
186
227
238
197
171
258
197
235
193
160
203
250
215
251
160
204
236
239
211
199
174
251
212
221
145
159
178
221
213
227
273
200
217
173
210
173
184
181
191
203
240
136
224
168
234
186
260
182
197
202
221
191
167
176
215
207
203
234
210
250
193
178
218
248
232
247
185
179
199
218
173
186
190
189
209
197
200
190
198
229
202
212
186
180
226
189
240
227
175
207
154
237
266
211
200
226
138
227
207
175
186
240
224
154
245
208
206
191
186
164
191
203
223
212
222
167
250
150
187
161
181
160
266
196
200
190
236
228
188
183
163
256
236
226
195
129
162
202
202
230
163
156
151
219
173
177
195
161
184
189
105
176
238
165
218
265
227
212
197
162
222
217
252
218
176
170
259
219
127
234
216
168
212
200
239
211
193
235
176
189
224
231
170
138
175
195
241
232
98
208
199
199
266
229
160
251
223
203
174
191
198
231
251
234
234
209
209
222
209
146
237
224
170
164
224
221
233
205
234
268
213
250
189
148
201
137
199
180
231
216
151
136
183
200
141
183
241
217
194
203
173
183
215
242
216
210
122
176
170
157
246
169
218
224
226
239
203
196
235
136
225
234
183
183
133
248
199
220
170
267
180
167
185
178
147
162
243
256
215
218
190
238
228
134
229
236
194
187
167
114
222
211
221
183
244
239
216
176
221
220
185
201
224
193
214
187
163
218
167
238
228
208
171
259
217
192
234
233
184
222
218
182
186
199
221
185
146
216
233
194
244
162
241
184
182
247
137
236
266
205
173
253
234
226
242
233
244
153
167
197
182
238
203
191
236
139
257
164
162
254
256
238
166
197
240
189
158
213
227
212
198
240
259
236
220
187
213
190
215
222
208
154
195
233
178
153
172
167
251
201
120
173
215
209
183
196
253
185
164
219
144
155
171
188
239
225
181
180
171
136
210
223
201
226
221
171
214
196
185
221
176
227
248
211
218
217
233
230
160
176
209
231
183
186
174
206
219
182
185
191
161
183
204
200
182
176
206
217
199
201
237
138
228
158
191
244
169
198
194
213
186
228
215
179
175
233
149
214
228
195
204
195
191
181
231
281
206
156
182
136
185
200
175
258
294
254
145
197
164
161
233
236
240
194
249
212
150
210
216
220
161
219
242
209
208
194
234
158
167
168
240
225
225
249
243
173
150
214
137
269
204
176
181
140
205
256
225
122
241
216
190
228
236
192
166
216
218
205
190
168
166
272
194
230
228
170
246
218
202
215
259
235
221
178
178
237
229
244
177
119
187
184
107
189
221
250
207
207
162
115
262
228
173
208
190
126
263
208
237
176
142
125
227
147
168
88
252
205
258
236
180
181
199
181
220
255
173
181
224
187
140
223
216
159
188
238
213
216
144
206
160
188
240
200
248
252
130
231
175
205
255
189
203
152
203
216
216
167
215
218
177
205
201
217
271
232
150
220
178
140
194
198
185
188
209
212
157
200
155
207
214
200
193
216
170
224
186
159
167
149
238
211
174
255
137
210
224
195
220
190
155
211
237
237
231
215
163
189
281
226
167
196
159
208
180
194
220
175
218
220
238
136
120
241
199
224
226
228
212
171
243
235
203
200
180
198
188
171
183
179
207
154
196
122
212
189
233
221
241
182
210
212
234
243
243
126
215
196
165
181
227
111
207
260
220
218
209
190
250
254
220
253
187
208
208
208
203
176
172
239
222
205
231
175
199
217
222
242
217
215
122
239
248
249
267
242
229
231
178
136
212
143
204
230
188
238
248
156
220
191
191
159
224
234
161
171
227
222
149
199
185
171
181
200
183
178
210
225
272
188
160
181
267
182
181
230
253
196
188
195
231
180
180
203
186
158
192
210
257
192
204
158
207
216
194
192
208
158
196
198
169
243
215
128
203
150
176
192
214
188
242
214
198
205
219
154
175
246
228
192
164
172
166
210
202
196
175
179
193
264
194
171
143
157
166
142
226
201
193
177
200
193
209
130
174
219
212
186
160
143
210
192
217
132
248
213
183
213
223
242
179
183
173
254
215
194
191
163
193
133
183
242
173
139
166
190
180
170
126
193
293
145
246
173
215
174
139
187
180
215
227
120
146
158
190
233
145
193
191
124
227
250
233
255
148
187
181
220
207
232
175
211
161
143
171
246
250
210
255
237
172
190
142
181
212
172
192
132
196
166
212
175
188
170
199
196
163
170
145
201
210
204
178
240
211
177
178
173
171
204
200
150
202
219
241
213
229
216
163
183
189
205
196
169
200
272
232
201
243
201
205
128
222
151
211
178
210
205
142
181
237
235
230
198
222
151
177
163
222
211
191
262
179
228
167
194
187
197
163
176
186
193
240
186
230
214
226
213
212
188
203
237
202
246
187
141
219
180
261
185
191
162
220
188
224
144
231
137
238
223
168
171
227
211
104
243
224
187
181
167
217
239
228
183
174
222
170
207
210
161
205
195
129
192
197
196
246
217
166
166
197
180
223
229
223
155
200
218
200
176
183
229
193
237
202
120
228
203
229
122
208
214
165
197
188
201
182
230
163
172
254
197
219
176
196
196
205
220
154
217
137
202
231
190
199
218
175
166
191
220
165
219
159
179
195
237
198
164
192
193
204
222
239
242
197
251
239
196
213
203
222
209
183
150
185
240
223
196
153
251
154
169
200
196
224
150
243
227
235
215
199
190
214
199
177
171
162
240
256
214
174
226
161
203
189
236
177
181
233
211
211
241
204
239
197
173
161
147
196
246
185
178
224
194
215
218
262
234
196
195
178
172
210
217
125
187
148
214
176
172
258
135
153
201
241
192
162
143
139
202
237
243
211
265
196
161
179
212
149
138
203
234
143
224
192
189
149
168
213
188
183
202
168
206
191
247
124
166
202
228
229
183
220
202
179
192
198
258
198
200
175
214
239
145
184
229
166
163
205
157
149
196
227
194
266
206
191
133
140
175
214
236
221
188
208
196
243
181
195
170
194
179
165
218
240
193
232
170
220
217
215
248
176
189
182
191
132
197
164
270
170
145
202
249
201
286
222
142
243
210
161
217
219
272
195
250
229
210
174
217
157
232
191
139
151
210
248
172
184
214
215
214
177
180
225
221
179
215
198
149
237
219
167
213
220
160
231
236
194
188
202
154
175
162
219
172
161
201
232
177
185
197
140
198
181
193
245
193
214
144
177
161
280
154
245
198
190
231
160
207
221
143
219
214
203
193
176
219
196
204
180
187
177
174
187
158
209
178
216
185
182
173
292
148
225
225
169
222
233
204
212
230
178
204
170
237
233
141
163
218
183
175
124
213
208
132
217
188
188
187
213
287
150
177
162
242
227
169
182
211
193
182
162
173
172
220
182
227
182
242
172
203
187
183
168
220
235
189
273
175
163
216
237
175
230
217
224
242
253
213
192
192
146
220
168
221
203
203
187
185
206
269
254
190
181
237
136
198
224
233
214
141
221
171
181
189
199
242
189
211
176
219
185
188
196
181
201
212
192
177
194
210
228
198
240
175
181
217
121
164
145
223
206
293
232
136
156
197
192
209
174
242
194
212
255
160
155
210
164
232
205
218
153
171
214
143
237
231
154
227
189
199
158
250
213
203
248
222
248
199
131
227
140
237
169
162
197
167
224
193
272
139
192
204
190
231
187
191
222
189
191
211
175
148
156
209
128
235
227
197
224
224
123
271
182
250
166
250
232
218
228
164
194
217
180
266
270
246
260
194
176
229
240
152
209
204
214
214
192
166
162
195
172
223
158
222
272
208
187
156
186
151
167
184
210
170
210
194
154
135
174
205
201
203
255
177
203
230
227
168
203
150
245
245
242
235
182
213
247
183
232
274
237
187
199
201
198
99
141
180
212
199
204
220
208
166
199
199
134
166
252
193
212
214
196
182
198
228
247
175
235
232
204
192
191
209
240
227
166
249
155
233
218
264
229
145
174
185
175
211
191
164
221
219
202
160
238
184
179
177
203
202
197
204
255
258
170
223
176
190
229
164
171
187
188
174
173
252
213
228
194
178
182
226
195
226
176
260
217
172
167
181
171
231
175
254
182
201
162
226
231
183
212
215
177
229
235
245
215
222
255
245
192
141
252
226
178
204
215
191
191
159
233
230
239
284
224
225
261
196
228
215
282
163
212
233
186
173
183
183
223
122
260
194
193
247
245
234
143
128
281
183
214
190
170
161
186
225
233
160
158
252
226
244
126
181
219
177
188
218
211
220
206
232
152
201
190
189
190
170
253
270
250
148
127
282
210
178
229
225
164
141
234
217
154
234
192
220
178
206
162
215
163
210
198
216
220
213
250
171
251
238
215
210
183
130
251
239
232
156
228
149
212
216
202
165
265
245
215
181
197
215
206
195
192
174
197
263
220
249
153
187
257
188
233
157
162
234
167
160
208
239
146
235
174
165
174
259
148
169
179
166
225
153
164
194
149
201
129
207
192
221
186
230
233
207
243
197
217
187
245
208
205
183
128
166
225
154
238
217
240
211
196
236
167
217
220
234
222
205
280
189
217
198
247
207
194
195
248
224
208
181
202
260
265
203
176
201
130
230
225
249
184
195
195
195
170
225
237
243
192
190
172
255
172
181
237
221
197
152
170
205
181
194
231
231
234
206
215
125
191
195
226
159
179
228
130
201
146
166
275
171
150
198
189
208
165
239
216
125
250
191
208
215
209
247
203
218
204
171
162
240
238
208
201
202
171
137
186
169
134
222
234
255
192
153
178
204
209
247
198
203
218
185
190
179
174
274
169
144
124
241
154
169
210
253
257
146
240
146
143
230
171
227
211
173
174
168
261
169
199
185
227
210
160
227
110
183
219
168
150
212
198
148
182
251
225
162
234
210
210
175
248
278
266
213
225
218
127
216
194
133
184
218
255
151
187
182
189
183
185
212
183
221
230
204
206
220
204
185
225
232
198
169
212
194
211
141
114
176
183
133
202
211
236
166
247
208
214
202
189
195
196
218
240
159
217
155
207
190
183
232
140
194
245
167
200
187
180
224
156
162
247
144
220
221
128
229
197
220
200
190
150
212
230
194
160
155
229
279
185
170
150
192
203
214
145
198
187
199
186
199
231
237
208
183
244
203
162
204
268
253
229
271
135
238
212
171
188
206
210
180
246
223
206
179
141
133
205
149
164
223
178
148
166
191
213
210
155
200
124
125
212
174
207
186
235
173
198
96
219
197
225
184
206
206
179
207
212
132
222
149
176
233
198
190
198
273
185
212
179
180
187
229
180
232
214
136
198
202
189
131
201
167
165
261
213
237
197
153
128
193
187
246
194
244
104
249
186
196
200
252
227
274
223
154
217
123
197
241
226
260
178
223
215
247
210
193
244
222
248
217
218
225
135
213
127
231
257
227
218
191
203
160
228
233
215
177
212
178
245
231
160
206
183
199
230
227
128
216
178
187
222
145
142
213
142
109
210
212
226
219
236
256
213
207
238
204
252
202
225
126
234
176
174
239
200
303
244
202
193
228
154
87
150
219
153
194
189
180
141
179
205
216
237
139
221
240
217
188
219
225
161
235
155
243
178
214
224
159
208
219
210
211
206
219
213
207
220
207
193
168
147
169
223
210
200
196
193
181
161
203
228
155
239
207
179
168
201
212
171
238
182
225
226
264
218
138
224
176
208
228
152
198
191
140
237
220
241
139
245
132
206
208
236
164
210
252
234
174
196
223
205
228
189
220
191
206
149
226
242
196
212
225
224
180
160
192
123
191
173
234
250
208
276
163
138
171
254
204
242
264
214
171
208
132
171
199
254
218
169
196
199
200
220
274
173
165
184
181
247
221
190
186
186
157
214
149
155
167
208
220
223
184
198
198
233
209
254
188
186
163
223
163
214
273
254
198
271
194
179
167
206
155
210
239
148
222
270
211
147
146
252
177
145
157
208
239
262
199
258
139
170
231
206
214
218
191
190
176
223
230
160
223
229
176
208
155
241
220
197
186
191
177
237
216
223
170
199
147
204
197
218
165
225
210
137
212
204
247
225
221
223
187
207
233
182
211
176
183
251
201
141
173
153
139
217
192
183
226
189
210
189
237
178
212
218
237
185
216
203
132
172
231
233
198
198
239
168
220
144
216
262
200
165
145
188
182
219
208
166
208
217
181
200
178
202
204
248
197
148
173
218
225
184
227
152
156
203
165
245
235
195
230
159
237
160
202
141
177
237
193
159
201
226
221
242
233
162
184
252
192
232
141
164
174
203
165
227
183
186
194
223
198
184
249
183
224
252
194
199
224
277
174
228
195
205
239
202
224
181
135
182
186
216
208
176
226
227
188
185
227
242
206
211
110
130
158
175
149
193
214
223
209
156
161
185
230
207
201
233
177
159
157
204
265
256
143
169
166
217
194
185
176
212
230
175
232
213
150
200
209
192
180
167
201
187
179
184
210
272
176
193
237
212
221
201
188
180
249
202
152
201
198
187
154
232
233
252
206
128
184
166
201
151
248
223
206
178
173
186
194
118
227
193
225
251
197
219
130
270
183
197
174
232
207
219
173
184
184
187
216
225
245
206
218
216
223
237
130
231
241
190
197
192
224
177
121
213
270
200
199
214
178
224
126
182
153
104
178
235
248
203
237
203
242
235
224
206
164
182
143
173
170
256
183
144
245
146
235
216
246
210
200
205
288
201
185
193
170
210
168
184
190
224
218
165
186
198
245
242
172
234
136
202
206
228
203
205
185
218
161
195
119
183
248
169
191
251
266
224
193
210
234
226
210
209
231
127
140
203
193
209
120
159
236
202
136
220
213
212
167
244
223
194
165
176
255
213
214
164
145
220
223
232
150
233
217
172
186
187
223
220
223
169
172
228
240
158
190
126
172
209
255
193
222
220
222
236
231
219
253
253
194
123
171
214
206
217
199
167
231
203
129
259
193
180
201
254
187
146
176
173
179
222
138
192
150
173
143
214
175
155
133
190
160
201
225
193
233
212
175
185
192
180
181
226
188
210
184
153
187
177
185
238
245
191
212
175
195
259
232
210
204
187
201
197
169
182
170
210
213
239
164
228
186
172
243
221
222
215
229
187
190
218
208
183
191
295
145
240
160
192
230
208
217
244
214
241
114
194
229
237
207
241
223
220
229
201
222
177
253
158
195
231
221
156
214
177
209
235
139
224
212
218
253
211
234
232
152
160
219
227
221
134
183
170
201
167
188
224
232
213
161
283
214
194
168
193
239
211
205
142
261
209
178
133
179
203
162
259
142
257
175
217
175
234
201
166
190
166
224
221
264
223
203
261
228
236
205
209
195
172
217
177
218
188
193
208
176
154
161
127
264
149
132
227
237
216
177
164
186
228
166
173
173
242
223
266
196
177
148
238
173
237
169
193
218
224
246
150
176
195
176
200
208
212
211
246
228
208
209
194
244
235
223
162
233
204
159
163
183
168
190
109
177
196
146
224
249
145
238
158
173
222
241
139
219
183
142
245
172
212
253
224
233
212
252
142
117
207
220
188
163
189
232
224
175
229
206
220
239
164
194
226
207
208
211
197
224
251
200
240
203
243
158
148
189
229
144
206
197
183
219
185
163
177
159
226
184
187
192
216
246
191
166
196
220
250
190
206
234
206
180
239
160
198
208
168
207
216
191
246
230
179
238
208
205
198
160
160
178
182
209
252
190
243
222
277
191
182
258
171
222
165
268
168
187
204
172
201
219
162
170
197
157
152
167
159
193
222
177
231
134
192
202
239
199
211
170
173
222
139
188
252
244
158
216
154
189
215
180
196
167
201
215
189
169
164
216
202
172
196
173
226
173
193
189
204
200
221
206
187
231
203
239
187
143
200
200
180
146
222
191
179
205
173
177
198
174
178
157
219
190
238
198
193
205
204
217
155
227
233
222
199
201
192
209
185
150
237
232
195
165
168
171
214
244
177
220
244
160
191
139
207
150
202
179
234
199
255
259
214
227
247
161
160
156
169
175
183
178
97
220
133
168
186
215
195
145
188
197
209
185
198
195
200
222
178
156
185
212
167
220
167
167
216
224
142
195
195
244
173
162
148
116
204
192
219
183
233
228
225
173
183
153
268
185
272
230
232
142
259
233
172
189
181
146
136
182
188
237
210
165
208
177
163
246
263
176
166
141
172
258
137
190
240
175
175
180
246
195
211
228
199
166
241
187
183
173
168
180
196
162
139
186
200
226
218
180
197
211
193
199
218
186
214
225
215
116
228
212
149
188
179
219
225
190
176
170
201
222
162
260
239
215
146
251
215
162
189
194
188
202
227
189
212
124
187
198
244
256
216
239
236
233
235
216
203
128
215
194
251
171
158
208
224
177
147
167
191
214
235
186
234
277
162
217
165
213
147
209
216
255
240
244
192
170
214
176
204
186
242
167
198
235
195
180
175
243
188
184
162
171
247
160
135
229
159
224
139
205
269
225
202
244
245
170
188
117
205
219
230
141
224
174
227
240
216
138
154
153
211
225
198
209
239
158
207
207
251
220
152
193
188
181
119
193
219
185
178
236
170
163
144
219
186
207
219
174
160
165
208
253
224
208
211
228
231
146
255
196
241
233
262
196
193
191
182
201
241
200
151
207
254
164
227
241
186
152
184
201
240
274
218
210
186
209
177
233
217
182
159
153
207
191
158
194
209
212
196
221
217
239
180
126
189
173
178
221
256
130
189
232
193
162
232
249
212
202
175
160
254
233
171
225
140
266
222
203
199
173
226
205
148
185
176
146
187
169
227
227
262
172
176
175
205
163
210
242
261
157
217
221
228
251
178
243
203
192
199
212
235
189
229
229
189
190
204
249
240
171
160
184
189
229
203
227
194
223
176
206
201
208
216
114
193
200
255
192
197
204
239
200
153
204
199
206
244
174
197
245
184
169
227
230
212
206
231
167
206
221
200
223
247
186
226
152
249
179
165
146
192
148
250
191
158
266
265
218
200
208
232
230
241
210
187
227
207
174
220
231
250
232
205
205
198
184
165
214
206
210
163
189
209
231
182
184
218
254
146
193
231
216
167
193
136
215
138
273
187
217
172
155
244
152
232
226
233
142
195
202
163
188
179
229
197
224
243
192
210
224
172
170
211
100
204
164
156
198
211
243
203
207
196
186
203
203
253
157
170
254
255
209
194
146
180
167
242
116
225
234
218
221
178
166
178
206
173
210
219
180
236
202
194
181
219
240
232
201
133
181
179
170
191
155
250
251
232
192
162
238
242
209
179
161
170
157
185
202
204
275
210
162
247
240
186
149
236
214
128
208
143
222
224
217
196
230
190
244
199
146
217
224
210
251
225
225
183
205
166
246
194
196
190
209
242
236
165
201
194
212
170
182
182
199
161
152
213
169
170
196
228
220
220
246
185
181
201
225
211
206
178
183
246
208
121
231
224
167
175
223
139
218
242
176
208
230
208
165
200
240
197
163
183
162
246
138
185
257
186
164
174
170
190
196
216
230
247
187
225
213
196
250
228
153
259
209
183
157
224
252
193
256
231
260
189
203
159
208
175
201
224
222
182
213
206
192
193
171
186
155
191
197
207
278
213
179
188
229
249
226
138
223
209
152
228
176
231
212
229
204
203
239
230
224
112
171
256
218
181
180
171
208
202
182
284
212
163
202
196
194
194
228
173
189
201
248
193
229
156
204
209
159
172
148
222
211
201
172
186
199
221
209
230
198
208
218
220
232
261
201
133
156
152
154
241
281
204
163
116
282
193
143
134
197
239
247
162
192
164
154
241
207
150
127
244
186
218
237
196
231
245
118
229
151
196
146
180
158
164
170
216
216
249
162
255
207
242
209
237
231
218
174
162
177
166
188
210
210
221
230
189
181
177
233
176
188
209
245
229
163
245
195
187
248
217
181
251
185
223
247
164
213
202
195
203
271
189
219
190
156
191
228
198
165
251
167
211
185
186
189
184
234
202
168
200
195
259
197
190
205
215
209
163
210
257
199
189
217
184
199
203
181
214
196
192
172
239
226
155
148
166
164
242
257
202
173
242
203
169
189
257
219
207
179
151
219
200
196
196
151
209
217
228
174
199
174
225
207
242
237
209
200
205
214
244
227
230
221
191
210
171
200
178
143
194
189
181
207
148
156
216
202
166
203
209
204
228
247
168
217
165
190
249
181
212
193
178
166
200
207
250
218
221
166
216
193
202
190
187
208
239
235
231
221
244
197
150
192
207
130
183
165
242
180
223
201
182
209
233
234
235
179
195
116
199
207
297
234
252
152
242
177
261
176
200
218
176
215
237
211
227
232
208
84
210
102
159
229
234
188
239
197
201
186
191
224
225
196
191
212
219
146
231
225
163
216
148
234
178
145
147
162
131
231
294
168
182
220
185
136
221
257
244
159
238
276
244
141
192
162
194
262
157
168
286
222
205
222
224
233
192
175
208
120
193
193
159
240
200
234
209
209
164
183
175
187
179
219
201
177
217
219
217
215
213
185
237
203
198
196
193
218
161
188
209
169
207
205
224
214
182
239
172
190
256
224
262
217
214
219
242
198
178
174
212
247
220
192
214
164
244
238
180
210
197
223
200
219
163
196
190
213
128
204
159
189
190
206
234
222
200
169
220
239
155
140
191
215
197
200
217
156
159
193
261
228
164
233
269
203
244
240
194
200
247
208
253
180
258
179
172
231
215
171
191
171
169
167
179
141
193
264
214
180
256
191
118
152
231
140
229
166
205
208
212
167
170
223
175
176
119
176
186
170
247
247
219
140
164
159
140
225
173
169
273
136
205
186
230
190
268
141
172
278
175
176
216
206
223
205
233
271
227
176
210
208
205
290
224
185
142
217
162
215
219
225
207
172
225
199
279
201
223
216
197
212
237
155
237
258
231
183
250
223
200
179
183
227
215
157
218
189
150
212
179
224
216
205
256
204
158
163
187
244
173
249
192
243
220
246
206
189
144
233
182
154
213
245
219
206
246
168
238
235
259
168
221
184
153
157
180
148
191
214
135
216
234
179
229
210
174
209
213
212
208
238
192
221
255
171
166
207
138
173
191
186
205
213
183
200
215
196
148
200
253
167
166
174
208
204
241
136
215
218
186
176
207
214
170
198
155
205
202
146
204
194
224
239
134
197
226
185
226
185
213
184
249
214
180
186
208
228
216
216
155
204
142
216
229
147
202
255
159
217
190
204
145
162
222
178
176
234
226
201
169
190
227
189
210
192
263
174
250
152
195
248
231
246
194
177
207
169
232
196
206
195
211
182
215
217
144
170
265
208
129
193
203
186
176
224
184
170
209
295
193
155
165
173
179
219
171
216
231
202
218
189
219
151
239
172
174
173
236
169
231
182
173
211
194
228
199
178
210
185
213
233
195
238
202
265
249
199
180
94
247
280
193
221
189
195
237
160
202
148
194
219
170
204
186
206
189
203
178
197
185
273
205
249
240
155
234
250
163
211
177
212
167
193
200
213
207
217
197
263
214
169
183
213
165
192
201
166
144
176
190
273
209
200
270
213
259
140
218
277
176
231
247
185
144
224
231
180
223
145
199
175
185
249
234
280
209
224
199
201
232
245
256
207
234
172
265
222
243
234
227
245
243
129
179
196
171
219
222
178
139
204
262
214
200
248
217
195
176
209
242
195
210
206
219
194
206
160
194
214
179
244
158
214
190
208
241
114
133
183
201
189
173
209
203
243
201
233
207
213
196
192
168
185
207
218
212
191
198
237
198
172
236
196
189
115
182
228
187
195
150
244
168
185
258
146
194
179
204
223
232
198
220
155
206
186
174
227
154
212
169
190
194
231
185
208
269
219
175
237
182
218
215
234
238
204
103
184
169
170
176
226
168
208
201
206
222
192
129
214
234
191
168
212
174
179
174
184
148
182
234
222
226
205
121
159
197
235
235
212
174
192
209
218
175
225
164
191
226
168
212
226
210
233
196
182
240
283
167
187
201
167
226
150
210
254
202
195
195
150
248
237
194
209
188
170
196
250
147
214
164
243
252
199
175
175
208
216
155
262
216
188
223
219
170
172
220
174
169
167
266
238
153
224
193
189
231
123
228
204
222
193
198
187
230
182
188
234
121
200
245
201
191
221
195
197
190
217
222
133
221
195
191
196
213
154
161
203
177
102
234
205
159
235
161
141
180
218
176
190
227
268
214
172
175
248
157
185
222
260
161
216
181
190
178
207
204
259
188
194
169
220
159
183
154
227
253
186
215
238
194
176
215
176
177
226
175
188
154
205
187
253
187
225
169
207
249
178
234
257
225
225
133
189
223
211
218
230
184
206
233
189
212
249
199
206
197
199
210
235
230
196
205
208
222
194
230
259
212
146
176
252
170
232
187
154
227
179
182
261
179
176
231
259
150
224
185
205
161
211
163
222
180
173
228
224
194
213
168
186
246
147
172
198
218
186
222
250
227
91
178
107
213
178
177
219
250
246
195
222
167
164
155
166
205
167
218
182
174
239
235
227
204
165
162
207
284
183
245
217
205
171
194
207
244
238
202
232
205
85
227
193
224
226
238
225
237
162
210
265
241
242
242
205
233
187
285
228
208
155
179
201
198
196
257
122
205
212
245
226
247
265
215
137
246
202
169
223
236
212
177
188
224
232
138
119
189
229
181
219
159
180
147
216
193
162
175
209
178
181
170
212
238
246
218
265
201
246
199
188
191
133
179
183
170
244
196
204
196
185
162
174
180
178
251
208
261
146
178
197
239
199
205
250
240
187
239
198
227
218
186
185
252
126
252
140
220
172
243
202
151
182
178
213
208
263
200
211
209
167
217
246
243
198
104
114
236
241
223
188
214
161
170
201
201
191
192
196
237
183
206
240
203
115
193
182
220
178
205
180
106
174
242
221
192
235
183
198
191
204
222
147
223
170
231
206
236
227
251
262
178
204
212
242
194
220
247
168
174
205
153
203
185
187
259
226
139
214
169
218
213
187
199
158
172
210
212
189
194
188
210
177
257
158
202
167
214
205
217
205
200
193
170
223
185
182
156
189
158
223
140
159
153
162
181
234
248
136
226
244
196
265
229
225
149
230
176
202
262
155
273
199
196
216
168
200
233
159
225
242
231
200
207
138
221
176
199
196
182
202
214
276
228
161
208
286
207
179
197
176
223
244
155
165
217
203
260
202
116
181
241
156
245
248
130
246
175
137
201
207
186
176
203
207
183
189
169
158
112
219
167
232
219
164
173
135
199
202
180
211
204
224
199
133
160
167
188
216
205
186
210
255
213
201
121
193
185
152
220
228
162
170
235
147
216
220
146
274
155
219
204
205
184
127
234
203
189
218
171
198
211
217
226
217
197
235
153
219
189
209
238
217
209
187
191
209
197
238
156
145
206
173
239
211
252
207
227
229
246
126
217
231
241
188
250
213
203
168
178
216
167
229
208
196
217
274
134
155
170
277
192
245
204
179
174
191
245
175
223
176
204
159
198
81
240
256
221
242
210
149
195
249
208
223
194
186
266
123
172
234
193
178
246
158
183
287
142
127
174
125
184
216
198
222
204
209
238
155
207
194
258
161
259
183
196
232
245
200
156
213
196
247
229
222
246
231
157
238
203
240
236
200
275
177
249
178
212
106
146
222
181
198
231
204
192
182
217
244
158
198
175
243
190
217
225
164
152
186
199
161
240
205
207
180
183
199
229
173
250
222
280
254
112
173
253
194
192
195
231
163
216
257
245
226
222
229
157
237
215
170
189
246
269
188
265
221
233
205
186
148
127
202
215
276
246
188
181
241
206
221
205
214
227
170
252
225
191
202
254
216
156
155
220
139
177
198
160
214
229
225
208
203
163
204
171
197
150
209
203
220
166
154
190
225
244
172
186
215
182
265
158
237
173
154
202
233
149
187
219
262
158
236
199
167
158
173
179
243
178
239
218
195
267
178
158
135
161
190
273
190
225
147
256
200
224
181
193
175
146
241
133
208
201
174
234
205
257
228
162
179
161
193
192
188
184
136
161
136
201
192
145
286
231
160
239
169
170
156
248
172
172
219
247
168
178
204
215
224
215
231
181
202
199
235
240
222
179
184
232
247
244
225
216
249
182
202
141
193
132
220
238
191
230
204
282
186
234
225
227
215
228
216
195
235
203
187
147
140
174
191
158
168
163
173
172
149
209
197
183
215
190
199
209
143
213
208
179
190
229
178
233
211
218
247
255
203
214
174
203
159
250
187
157
190
210
165
157
216
177
226
206
243
157
256
234
211
204
238
197
200
202
191
160
270
238
206
187
246
220
181
183
166
197
151
227
184
235
239
227
190
140
259
229
225
211
256
179
138
203
228
155
189
253
243
156
163
171
175
274
204
241
166
219
191
247
247
225
237
224
203
239
183
226
170
191
253
235
201
182
230
181
192
205
176
211
207
228
179
182
192
223
160
192
189
222
257
172
187
218
176
235
186
282
170
179
176
195
276
242
185
209
176
176
154
171
185
185
182
283
228
152
220
164
189
165
272
226
204
247
179
198
213
225
157
217
214
238
198
211
229
230
248
164
136
177
239
174
163
225
173
246
214
181
150
158
208
169
221
235
174
214
262
292
214
263
136
156
258
228
242
258
145
163
234
267
207
185
220
196
224
251
193
190
167
133
232
208
221
186
186
223
241
253
225
183
206
231
189
211
160
179
132
148
216
256
183
270
184
222
205
172
199
170
156
230
186
204
226
184
253
229
202
173
208
251
219
179
195
226
212
155
185
230
246
144
173
197
241
244
219
218
200
192
229
152
254
192
234
202
233
136
232
161
180
216
175
218
211
217
192
144
232
226
253
246
172
215
280
218
245
155
205
177
192
204
144
262
225
214
268
246
257
192
198
137
182
238
230
135
189
215
155
161
234
213
206
180
227
163
172
188
214
206
249
187
186
209
214
151
165
208
217
230
191
257
194
278
214
177
230
314
186
186
249
185
180
207
208
238
238
172
141
216
174
192
165
220
221
154
205
230
195
200
237
148
169
207
190
221
213
167
152
231
271
195
179
222
180
227
179
144
215
224
245
127
229
245
154
195
209
197
218
242
253
209
203
204
226
283
156
195
228
184
217
171
169
224
250
205
175
159
196
202
210
169
153
176
176
206
246
224
208
189
222
193
225
201
214
230
213
245
157
208
231
228
173
193
178
252
171
167
224
170
242
207
209
179
196
227
164
145
199
217
127
182
162
149
239
186
222
171
193
172
149
226
199
244
269
245
194
242
247
221
169
188
222
170
237
199
222
169
274
226
199
129
175
223
202
232
163
180
226
165
237
257
206
189
207
189
244
231
197
199
217
231
201
189
183
199
225
219
207
214
208
227
220
182
220
145
178
180
200
275
245
200
199
203
184
244
113
199
185
182
143
210
205
120
272
240
192
249
166
162
212
201
229
209
239
184
210
195
217
203
219
193
162
133
228
219
189
205
183
169
235
251
182
265
171
214
204
177
211
200
148
217
158
153
228
145
210
225
234
184
188
199
212
171
230
178
235
179
159
220
148
142
188
244
213
264
181
173
228
215
207
134
223
186
163
203
224
197
223
160
134
211
230
178
199
152
161
183
239
163
230
216
139
219
230
128
174
177
255
191
229
140
242
165
263
186
245
182
220
220
202
209
153
176
204
142
221
186
212
192
194
201
254
232
167
200
170
137
225
196
163
164
191
263
183
211
201
167
203
173
215
181
204
196
230
204
183
217
236
186
226
218
152
195
209
136
180
248
143
145
202
204
220
177
162
139
190
190
235
204
204
217
194
154
212
218
196
179
184
257
227
177
139
182
175
234
194
204
156
149
210
187
156
115
271
182
200
248
222
153
215
208
151
230
269
241
167
251
242
205
236
209
202
252
176
225
206
216
213
265
225
193
177
236
175
188
154
188
144
188
228
232
218
220
169
175
258
224
183
188
205
170
224
248
155
195
121
220
215
218
249
183
182
168
191
191
223
239
186
219
198
186
217
215
217
238
202
236
200
233
239
177
237
228
212
210
169
228
258
136
225
198
227
177
208
145
142
212
200
198
192
199
209
194
202
207
172
182
240
152
180
156
223
267
158
202
162
176
215
172
210
222
221
221
229
253
205
254
229
230
249
175
201
266
195
206
198
244
213
265
164
186
212
195
265
209
207
160
193
177
180
174
239
182
217
204
217
250
250
128
222
246
103
156
197
201
239
150
278
218
227
219
264
177
167
241
208
221
184
182
227
178
251
206
174
189
248
158
209
217
266
230
219
213
233
189
211
249
171
196
190
226
148
226
189
146
247
223
214
141
187
208
184
222
146
177
242
226
214
209
169
133
173
162
191
163
233
209
258
169
269
177
156
151
177
214
250
227
230
191
163
180
203
242
219
218
223
156
206
264
243
256
215
221
202
158
210
219
244
123
196
146
160
195
189
195
229
220
122
179
250
239
205
219
177
223
200
199
254
115
217
195
247
201
185
201
196
232
224
191
255
226
201
228
203
240
197
224
253
205
224
198
217
174
225
204
186
196
184
225
220
210
208
210
234
194
168
259
213
132
210
228
159
220
233
160
139
167
243
187
191
261
220
214
205
213
189
189
174
188
180
234
178
224
213
141
207
250
161
202
245
189
177
185
206
182
252
215
218
177
267
207
134
191
210
170
186
158
180
192
171
231
217
175
217
201
243
216
191
163
172
237
164
182
230
167
205
236
224
170
190
223
244
221
208
200
215
180
163
204
174
196
150
196
194
201
199
233
137
190
194
185
287
261
192
177
249
223
212
210
205
197
187
198
217
178
181
250
195
179
221
139
192
217
159
203
201
177
180
204
188
210
161
225
220
176
171
225
222
265
250
234
188
145
201
178
193
137
181
252
161
241
227
220
170
220
199
240
217
207
205
196
244
182
236
208
179
210
185
267
102
221
145
246
163
193
247
194
222
141
208
195
220
207
202
194
206
241
232
169
270
231
186
174
149
218
216
214
281
211
153
183
181
226
180
236
205
243
190
218
209
196
166
191
216
251
231
216
216
280
141
166
179
183
218
184
199
206
183
156
150
203
152
162
153
228
151
183
195
209
211
130
198
207
278
279
232
184
195
219
122
174
225
173
272
264
202
233
185
242
230
198
188
175
206
211
259
224
227
214
175
207
178
195
181
200
252
194
196
206
200
191
196
216
201
178
119
148
251
173
230
136
145
172
213
237
186
222
201
210
242
222
194
261
194
229
169
180
253
233
170
268
134
211
180
259
147
172
181
242
226
225
206
249
232
184
188
232
158
131
184
220
113
225
184
175
255
192
170
280
208
205
256
162
243
193
188
176
211
173
219
208
202
167
206
241
220
220
214
215
258
179
202
153
274
199
229
189
168
198
212
196
200
179
93
201
218
276
177
233
214
171
177
155
216
175
218
167
135
196
159
225
189
221
231
181
210
192
234
199
195
207
250
117
252
175
221
175
197
223
185
193
147
134
221
186
189
219
202
289
188
170
181
180
168
205
213
177
199
246
209
173
138
241
213
193
193
166
218
160
199
195
159
169
248
212
272
274
188
161
219
234
140
237
209
152
199
262
242
242
193
231
161
169
260
176
277
137
155
167
227
233
203
273
168
245
226
234
199
204
236
221
228
213
237
266
225
198
239
197
162
237
225
223
230
176
226
202
217
176
197
172
185
207
215
169
209
190
141
179
209
119
202
181
197
234
112
159
216
269
184
215
215
177
273
139
183
231
218
219
156
231
249
189
219
221
251
228
212
209
207
232
173
185
113
135
112
239
259
171
189
186
161
212
252
174
174
165
175
223
241
200
231
178
182
226
188
204
187
209
202
153
193
211
196
201
251
241
230
147
236
172
206
217
236
250
231
262
200
191
212
208
216
259
221
149
246
158
261
197
218
175
221
213
211
170
240
180
273
216
247
243
152
192
199
204
195
229
165
217
244
189
194
214
251
173
231
261
183
185
177
167
199
265
192
235
198
191
259
155
173
231
233
214
226
253
184
168
190
203
250
246
230
251
206
226
163
212
228
188
187
201
153
173
198
204
204
177
126
214
274
228
170
172
224
214
204
248
141
229
231
255
214
187
157
226
183
227
237
206
228
229
161
239
244
249
233
167
169
169
202
142
265
249
219
193
267
263
222
238
176
171
250
194
203
200
185
166
219
215
243
203
218
222
215
242
153
217
234
152
245
209
198
223
205
133
220
198
224
189
196
223
169
180
216
180
202
194
217
157
196
185
177
195
196
216
154
242
203
138
230
172
152
154
263
243
226
187
219
191
203
208
167
140
226
191
206
184
178
168
168
254
188
225
197
204
223
253
252
201
218
151
164
186
238
239
206
216
186
165
249
149
168
202
195
233
207
244
211
220
152
189
187
165
216
135
195
173
132
156
189
222
188
180
219
212
210
167
217
124
230
190
225
142
195
174
243
179
191
180
147
205
197
218
224
195
200
155
165
137
178
202
144
240
203
175
178
196
210
221
205
184
169
204
172
221
217
209
198
207
216
248
195
200
173
197
98
164
223
196
157
211
141
189
189
240
223
197
220
194
186
206
194
236
212
167
228
245
147
197
168
236
205
159
192
175
144
160
204
216
182
199
164
214
157
147
181
280
229
173
198
209
223
203
244
239
157
208
212
240
178
180
195
196
154
195
209
154
213
230
235
156
123
213
177
236
137
146
230
259
163
215
174
196
175
207
268
230
239
191
222
233
241
136
217
214
240
190
256
279
190
229
214
184
200
148
213
217
171
216
221
148
197
225
190
220
237
224
231
146
200
232
153
207
193
155
193
202
229
153
206
148
244
238
187
173
228
219
195
103
193
199
188
158
240
233
140
253
177
187
169
181
215
173
253
219
182
159
184
195
211
198
235
148
186
132
223
205
167
227
147
188
200
240
206
166
217
212
172
202
213
155
188
234
227
245
160
227
223
206
188
209
229
223
234
214
154
193
167
216
189
144
120
194
139
248
185
217
214
166
173
227
186
221
219
212
187
241
220
196
243
194
249
208
239
237
244
158
232
171
151
229
214
192
176
214
240
201
195
219
157
234
191
215
192
254
259
195
133
221
196
241
199
190
185
209
130
196
184
167
238
147
291
241
187
153
222
142
235
176
211
177
222
194
179
242
204
266
203
170
226
172
196
229
236
224
202
172
211
201
162
164
161
191
266
209
189
235
179
163
227
229
181
144
204
170
214
198
252
164
242
237
206
258
206
188
194
254
167
185
145
138
234
201
204
207
236
215
263
221
201
168
196
158
194
198
236
186
148
142
171
228
212
262
172
169
159
280
234
182
156
245
195
211
183
216
216
169
220
187
208
171
152
163
174
193
226
160
211
209
161
193
217
133
187
235
251
252
208
194
175
165
170
235
204
124
207
228
240
249
206
225
208
209
182
195
180
234
132
210
181
216
214
160
166
208
188
195
237
182
200
224
184
222
219
206
204
204
174
202
119
255
238
202
213
253
208
209
143
210
194
250
205
267
220
221
178
224
203
170
175
235
205
122
188
268
195
202
219
177
183
256
200
184
236
214
176
253
219
158
173
231
202
252
250
193
174
200
133
142
221
219
255
191
221
202
252
177
118
193
165
233
211
110
175
219
173
213
150
195
217
189
207
233
207
126
237
258
135
230
224
229
181
187
175
161
217
176
193
159
207
216
169
187
198
175
185
192
252
271
177
121
199
150
165
234
284
241
189
185
206
193
191
200
209
184
203
129
182
193
209
268
251
209
295
215
216
149
221
199
167
212
247
178
165
231
222
183
154
128
224
175
203
181
244
250
221
303
211
213
221
213
176
227
224
209
146
225
185
251
221
230
226
159
195
244
162
236
151
146
207
182
224
222
263
201
194
233
176
164
206
197
196
184
249
214
251
179
221
222
163
198
230
257
156
196
188
147
176
226
206
242
236
151
192
206
241
235
262
160
212
207
204
227
211
258
187
207
193
176
225
233
213
179
220
163
198
182
163
210
233
203
208
245
184
230
173
233
216
207
254
251
233
233
173
173
158
173
247
241
201
190
193
202
155
231
239
172
285
145
206
176
180
201
206
170
157
235
154
218
198
185
191
170
230
200
183
235
210
188
200
162
178
261
163
158
210
220
209
180
224
234
241
228
170
198
193
241
254
220
196
172
157
169
204
164
196
243
148
202
219
112
149
221
199
258
250
239
185
158
172
219
201
230
242
192
164
234
201
135
238
171
249
252
190
164
237
233
245
159
225
204
185
138
227
148
226
237
216
226
205
161
228
169
229
167
202
200
185
232
161
226
230
171
195
252
218
205
188
200
163
268
185
219
196
178
236
241
190
250
264
148
87
153
197
184
193
186
183
214
259
249
209
191
188
219
232
209
283
131
213
243
198
190
230
142
159
171
209
194
190
205
207
260
231
219
255
262
240
230
231
99
195
212
195
190
234
169
242
179
190
183
165
191
205
192
187
201
196
168
162
219
180
168
200
220
255
187
214
156
200
226
140
233
182
225
214
219
197
215
235
217
169
233
173
179
199
219
181
213
177
196
240
174
172
216
217
224
216
157
207
195
119
169
209
173
229
138
189
85
237
182
240
146
196
199
161
154
176
149
173
225
167
149
224
267
211
216
194
222
158
179
206
100
226
202
188
157
174
152
174
245
230
221
248
200
209
222
218
213
210
199
186
237
175
215
218
93
211
217
216
155
154
210
184
173
170
166
211
144
237
139
186
234
171
220
216
181
253
150
155
229
108
174
192
206
212
178
191
178
237
218
223
169
265
191
147
195
210
195
222
211
269
157
161
225
253
179
133
246
265
243
246
222
170
147
202
183
208
164
166
240
202
174
204
155
198
218
178
221
200
129
222
206
223
160
240
194
214
219
178
163
125
222
233
223
226
189
197
163
154
219
145
153
251
160
240
251
234
248
144
179
292
213
149
227
180
215
213
189
196
176
165
175
182
218
165
190
191
191
216
198
194
217
179
185
206
163
176
223
177
173
205
143
149
245
252
197
237
179
229
203
219
190
225
237
186
211
189
183
213
249
202
237
163
216
200
170
216
272
184
140
225
273
192
177
130
221
170
231
191
168
194
215
205
182
194
176
208
185
156
234
204
250
184
184
200
190
196
186
127
186
198
177
187
130
235
229
249
222
225
193
216
251
248
175
223
198
155
220
171
206
201
239
219
190
232
244
221
194
173
115
187
187
202
230
250
208
189
281
172
158
170
144
200
199
256
232
191
229
78
225
173
267
216
204
244
132
221
199
157
205
177
201
217
231
237
224
151
160
239
195
166
204
186
168
198
224
184
177
216
175
190
233
247
196
187
218
260
243
190
202
210
158
174
238
235
209
215
235
249
264
213
234
181
217
195
227
238
258
209
188
141
185
136
222
151
184
179
225
175
162
205
214
246
206
191
193
178
144
190
226
180
157
214
163
186
181
212
163
201
245
194
134
210
185
163
204
170
132
265
174
259
172
194
191
199
239
162
182
217
216
164
232
114
194
132
232
273
198
205
202
228
144
270
267
196
176
159
256
229
215
172
243
165
246
222
215
188
153
187
176
264
197
134
159
247
127
230
168
151
209
207
182
204
220
255
189
199
274
201
173
201
190
149
219
170
208
193
176
226
195
229
226
192
271
154
218
205
174
242
246
111
182
237
171
180
210
177
195
153
205
189
165
208
145
192
275
215
172
123
200
165
173
127
201
188
207
217
145
220
245
198
188
163
226
201
228
142
195
157
169
244
180
228
229
172
172
204
201
223
218
205
236
149
164
192
202
246
237
210
184
175
178
171
234
153
200
212
220
195
238
194
190
162
243
150
179
198
226
124
176
138
279
232
241
191
242
201
210
223
159
240
198
225
183
228
174
180
189
203
248
210
175
188
177
195
184
220
216
145
263
195
181
208
241
200
183
208
190
254
223
201
226
121
201
192
145
170
238
176
133
222
171
211
207
208
194
164
248
188
222
159
219
231
254
212
198
235
150
180
163
176
189
264
206
222
216
185
205
205
185
179
251
231
228
227
162
201
177
153
252
135
218
145
205
236
213
164
198
230
186
162
163
165
161
138
174
175
276
196
223
157
179
221
147
205
163
206
156
151
205
247
217
191
110
235
214
182
273
187
226
183
172
205
179
209
248
186
259
222
257
170
192
228
257
220
181
217
127
164
144
193
197
134
255
200
197
135
197
209
213
231
205
192
185
223
204
270
206
240
207
203
177
222
225
129
174
221
190
224
202
195
210
197
250
243
208
118
207
206
202
229
200
272
232
231
216
132
206
121
221
152
177
164
200
246
235
207
234
176
171
241
218
195
218
217
229
211
242
248
263
268
223
198
206
194
222
215
180
211
218
185
161
233
197
142
264
207
246
100
183
151
206
249
196
263
222
197
210
205
217
180
227
232
191
206
178
166
175
233
230
204
216
178
219
102
178
211
179
242
205
208
212
245
230
200
200
209
134
207
221
120
167
214
190
194
239
140
227
208
135
260
221
170
178
201
212
206
135
182
235
221
233
256
207
189
208
209
176
208
188
175
157
151
202
247
191
204
192
234
187
176
252
172
238
192
234
175
210
148
184
181
218
159
221
204
138
146
199
163
180
252
131
187
176
183
206
161
134
116
205
190
227
164
189
191
206
240
216
213
196
237
202
186
209
226
180
166
177
207
246
283
165
199
175
265
230
171
229
224
204
208
186
232
235
200
196
194
197
173
238
223
218
198
200
163
172
213
180
188
201
205
214
188
212
151
268
260
238
230
212
228
209
225
154
240
197
205
189
220
232
214
212
222
138
247
218
200
203
171
213
235
163
219
247
239
191
194
158
179
260
217
169
197
191
260
205
179
191
192
176
227
187
242
200
226
194
173
160
169
221
172
147
216
248
150
242
205
261
266
254
181
179
117
195
216
173
208
238
146
179
161
221
159
172
194
211
183
201
138
160
175
222
152
213
125
194
229
243
193
183
205
165
177
178
251
213
190
204
221
181
227
207
175
252
186
221
206
198
200
215
216
205
206
234
184
151
190
178
189
171
197
181
224
188
238
233
199
158
202
176
214
163
208
213
193
199
172
234
213
164
239
253
229
147
143
159
184
169
193
216
202
185
217
184
216
171
245
232
159
198
210
166
197
242
219
170
177
207
198
203
201
165
189
219
206
253
215
239
189
214
226
231
271
156
222
238
232
224
210
199
222
193
198
176
178
171
262
217
243
177
141
155
186
138
189
211
224
217
219
144
186
248
224
227
182
194
199
182
240
158
185
232
173
238
126
182
217
247
215
205
236
211
247
251
210
217
173
220
197
249
184
209
232
230
190
215
212
240
257
162
258
166
209
185
199
266
238
207
149
242
192
267
198
181
204
219
182
230
179
202
191
161
218
210
223
168
212
231
169
191
245
238
227
211
188
174
170
164
225
173
231
178
169
191
207
195
210
201
186
227
222
262
159
170
187
199
158
172
176
132
189
217
208
159
199
195
118
187
222
248
205
175
214
239
211
233
211
210
255
247
220
198
173
211
189
173
213
202
200
195
225
257
108
241
167
196
258
181
201
202
131
183
217
172
185
210
231
211
219
220
203
231
276
227
227
162
208
223
275
221
198
195
219
224
208
209
150
209
198
219
197
232
193
204
211
236
207
216
217
195
251
188
206
157
188
203
201
260
196
221
137
132
209
247
208
216
202
201
193
194
220
228
203
210
178
205
220
191
199
215
184
238
198
205
153
258
140
162
165
197
257
188
238
208
208
197
223
260
211
236
179
262
214
174
216
189
182
196
201
155
241
204
206
209
175
162
157
223
243
245
192
208
216
177
136
181
162
193
183
260
235
131
137
151
156
190
200
161
189
230
208
193
267
225
239
172
222
227
163
193
247
137
182
162
209
236
229
209
205
149
173
189
131
220
197
189
188
183
235
229
165
165
215
191
182
238
191
233
249
232
200
197
241
278
261
213
213
191
229
192
229
237
160
165
227
243
214
132
200
225
220
242
239
206
172
190
240
132
174
257
144
200
210
177
179
190
238
200
169
213
188
148
205
174
206
238
192
205
234
130
231
173
218
217
199
107
139
160
221
185
154
185
185
137
206
146
243
231
213
123
229
202
193
154
203
189
226
126
167
187
220
239
227
231
166
185
235
200
156
145
174
207
138
184
141
177
194
180
193
217
222
135
154
176
202
240
278
137
243
233
193
231
260
226
240
181
158
158
214
229
214
180
193
263
191
172
230
185
176
173
207
221
183
177
247
191
200
221
193
258
173
222
185
261
251
231
179
245
229
240
188
236
209
182
173
192
213
194
232
218
205
260
169
205
171
187
202
270
224
233
204
159
185
219
180
204
139
198
193
205
214
173
247
171
190
241
157
121
171
237
236
167
228
232
202
182
253
240
136
213
206
188
195
201
252
224
204
225
218
224
168
187
216
228
179
231
247
177
176
173
220
172
257
231
198
207
168
161
177
176
200
158
150
126
275
172
277
226
234
217
176
203
193
241
242
237
151
185
220
183
230
235
195
221
220
229
253
266
192
228
177
171
210
136
253
192
239
207
209
230
189
163
200
139
167
227
233
235
217
192
179
237
204
190
101
179
179
206
181
165
185
166
246
217
195
158
143
184
202
199
198
238
200
136
249
180
165
222
217
210
211
215
171
229
240
237
256
230
247
212
194
219
199
190
228
260
207
175
180
125
266
225
194
171
182
187
141
205
240
209
228
222
171
175
234
243
174
187
201
292
156
224
188
179
203
164
256
177
162
221
187
147
224
145
199
226
211
243
230
204
170
168
224
159
196
166
213
219
206
216
194
147
223
260
215
155
185
177
226
258
211
183
212
230
153
250
193
215
148
211
231
166
157
175
209
288
245
228
182
202
205
226
177
182
250
203
212
193
172
234
168
147
214
204
271
212
191
187
179
199
254
153
136
232
228
163
201
253
203
195
202
143
178
176
218
181
225
210
208
198
241
175
228
258
205
240
157
186
149
175
202
228
208
181
214
210
206
212
230
225
177
229
216
145
218
168
190
123
206
189
215
227
195
164
200
162
177
229
167
212
155
206
235
195
235
246
179
200
208
202
202
202
173
217
199
258
157
233
219
274
156
265
254
208
175
223
180
169
208
177
202
181
159
183
167
221
170
174
201
176
231
218
197
253
217
174
201
209
216
227
215
210
186
210
223
200
221
245
181
203
208
146
177
260
178
212
252
240
251
242
148
185
214
214
206
200
210
157
182
229
160
246
215
236
136
231
226
181
120
198
167
183
210
189
216
190
196
235
204
220
201
242
252
207
186
123
202
197
187
196
197
228
172
182
208
236
153
256
188
209
198
247
129
206
153
255
170
212
236
191
139
188
220
156
240
112
162
197
266
244
188
149
143
197
226
198
205
170
227
219
174
170
164
234
195
185
192
113
146
171
158
149
193
175
185
211
188
224
212
232
208
215
200
213
186
219
171
193
222
186
156
193
197
181
186
182
163
188
160
186
142
214
244
218
178
221
206
198
243
186
274
248
151
179
274
231
232
214
173
178
225
229
228
215
225
244
168
211
188
135
177
182
241
162
158
249
240
256
121
217
216
208
188
214
212
223
190
236
279
191
212
205
162
202
253
118
196
231
221
204
167
222
218
180
213
167
156
220
228
184
255
206
212
208
216
195
216
204
220
204
227
151
208
198
217
233
146
188
176
120
153
184
128
252
140
210
179
186
151
193
226
175
165
253
156
198
208
218
151
194
257
202
152
253
153
162
201
203
213
196
215
288
214
236
171
146
223
220
196
205
197
248
260
180
245
190
225
223
201
138
131
259
198
185
208
179
183
208
250
231
225
219
221
200
190
215
211
226
219
160
192
231
165
230
183
212
164
167
193
178
212
212
211
214
232
177
215
147
175
178
227
222
246
171
252
184
232
230
183
199
159
219
226
154
196
267
214
203
199
238
135
128
205
229
173
227
164
187
234
183
226
147
201
236
200
212
222
237
209
199
197
158
164
152
175
203
187
148
157
209
193
174
178
150
191
202
223
168
190
244
226
199
184
185
201
105
143
209
219
181
204
259
188
240
237
217
195
148
261
165
249
167
164
172
149
193
185
165
244
271
206
130
190
203
195
199
263
239
221
193
149
201
216
208
175
204
171
190
232
258
191
169
169
228
259
184
164
205
169
195
195
207
186
215
213
204
169
181
192
169
224
197
192
189
191
176
200
172
170
252
167
146
191
182
155
233
204
152
259
215
148
187
198
287
135
252
212
216
167
151
178
218
207
216
212
174
227
224
197
192
225
250
277
252
217
221
195
212
172
242
196
210
188
168
183
172
239
187
245
211
236
190
153
100
166
139
171
164
143
195
172
176
206
260
223
224
178
166
215
168
181
259
223
245
222
278
221
208
189
221
152
247
178
193
147
252
254
199
237
192
171
154
205
185
241
183
167
273
259
186
168
240
184
265
238
203
197
252
173
217
216
268
103
160
232
176
193
221
166
197
194
223
245
144
178
236
245
192
205
259
207
216
234
195
181
124
195
190
223
159
192
171
182
170
272
203
242
197
205
127
184
188
271
206
182
162
155
151
201
174
156
187
236
202
242
103
175
225
128
267
218
134
159
200
230
173
275
176
225
122
193
210
240
228
220
227
205
205
170
263
190
191
214
216
216
240
232
215
222
202
281
196
184
218
177
177
202
127
204
206
117
195
140
212
232
222
269
185
199
194
219
167
177
170
173
199
186
133
214
205
191
167
247
252
230
197
173
192
203
217
189
198
260
206
193
216
189
214
206
225
249
203
299
200
242
173
179
197
188
208
228
182
179
216
125
252
248
226
162
245
198
225
190
172
196
229
193
230
191
215
190
162
241
180
230
193
215
227
222
154
219
214
220
176
175
203
182
206
190
237
192
210
261
231
219
149
198
224
183
221
150
241
171
201
216
210
235
184
133
246
192
208
181
201
226
156
211
236
249
238
122
214
262
186
206
168
177
225
178
217
167
167
191
197
181
161
207
194
196
150
195
255
229
193
202
231
127
197
186
211
208
167
121
167
175
195
123
229
212
183
154
176
253
216
168
183
153
177
189
166
172
206
199
124
208
206
200
197
179
230
231
129
206
129
170
184
178
222
156
152
215
235
237
225
207
194
176
205
244
187
212
144
163
226
158
197
257
227
197
207
217
214
202
204
215
194
194
206
202
135
155
181
169
206
200
194
214
165
222
224
158
179
224
147
135
165
177
221
227
239
183
176
179
144
150
183
200
192
148
238
157
187
270
135
210
177
139
151
209
199
207
221
184
208
224
196
233
165
204
211
206
222
155
214
214
193
166
231
136
152
229
249
132
174
205
235
112
201
244
233
230
180
193
254
196
223
167
252
253
207
172
213
251
185
170
206
212
144
184
175
225
172
164
204
202
128
218
222
225
193
238
240
200
202
193
177
221
226
165
255
251
213
211
180
99
249
155
161
244
223
176
190
253
268
258
203
203
213
166
197
180
226
185
279
166
123
160
262
197
225
160
191
238
209
192
186
226
172
182
227
225
227
178
166
164
216
175
159
174
188
246
248
192
115
188
212
221
243
216
245
189
167
184
156
226
230
205
195
216
204
175
177
235
189
194
182
219
163
200
201
265
173
223
198
221
154
188
203
204
192
215
166
243
194
196
249
188
184
209
222
201
235
187
216
234
193
153
95
191
286
260
196
213
224
202
164
223
178
157
139
246
239
174
187
228
223
204
208
230
199
252
241
236
112
203
264
217
229
253
218
132
209
192
248
167
176
151
282
139
204
266
209
167
217
244
199
155
240
202
158
188
219
202
204
213
200
181
215
141
162
209
187
230
211
201
206
196
211
234
202
196
204
154
189
216
202
125
167
237
164
189
131
172
164
206
197
226
207
188
204
139
208
205
155
208
212
194
239
279
203
162
170
194
223
242
198
241
195
230
177
214
162
203
182
200
211
182
212
140
209
156
199
268
232
218
243
178
229
217
216
158
221
144
228
203
180
234
258
214
173
214
200
205
269
244
210
193
127
196
200
156
260
121
187
132
210
181
226
219
209
222
291
194
196
211
185
174
191
192
177
235
227
150
160
187
127
233
209
232
185
240
257
187
220
217
234
154
224
215
157
183
173
225
216
224
146
178
249
272
168
180
193
200
205
239
241
189
146
169
215
206
163
205
183
176
226
268
201
212
211
188
192
191
168
229
254
195
193
248
199
208
248
186
197
187
141
174
179
164
280
186
189
211
180
242
201
155
205
167
251
182
204
200
161
182
210
192
173
254
185
230
184
139
222
286
191
253
181
203
138
216
268
221
245
219
186
200
214
187
203
201
154
220
227
248
163
149
218
204
165
232
216
260
219
174
178
216
249
111
265
243
205
253
174
192
182
256
228
232
239
221
191
184
175
213
196
220
147
178
176
243
272
238
248
247
171
152
199
231
195
238
183
181
181
166
185
189
124
165
175
211
236
179
210
187
202
221
202
175
195
169
184
180
173
225
252
211
182
288
239
209
270
178
221
217
181
190
172
194
215
213
189
243
190
196
198
218
205
159
192
193
210
224
208
214
206
252
188
199
156
195
194
196
197
230
226
207
214
210
165
222
247
247
120
217
173
234
239
144
180
219
233
209
173
197
199
223
234
203
238
127
248
180
184
175
274
215
144
230
210
189
223
200
264
184
226
173
191
211
231
182
210
146
143
204
256
211
217
232
212
196
243
212
154
179
197
245
193
186
215
231
183
254
227
178
241
238
226
221
183
208
175
211
195
204
171
216
176
232
277
157
180
222
201
182
184
222
248
157
231
223
139
211
173
167
205
213
185
197
208
257
288
182
231
237
206
134
174
171
171
189
245
172
200
171
195
192
164
191
249
170
210
204
236
275
143
224
206
108
211
168
139
151
175
224
267
181
167
237
257
146
165
234
222
193
160
231
165
186
207
234
213
182
209
211
215
179
214
225
152
146
205
219
239
230
176
163
230
189
201
198
194
242
163
130
142
195
155
172
177
150
211
299
185
245
180
166
199
161
212
212
176
101
276
188
269
234
249
201
200
205
222
218
213
182
254
188
209
152
166
243
126
146
214
214
172
225
188
190
201
240
190
185
215
207
206
186
181
310
244
234
190
173
191
213
178
174
202
192
120
151
242
202
170
123
204
201
188
169
172
294
188
233
199
206
198
146
200
160
149
231
177
191
223
173
202
172
208
185
159
216
255
216
163
219
207
164
200
238
226
246
217
189
168
221
176
208
153
228
188
218
190
220
197
238
134
194
204
192
182
156
232
214
199
177
243
223
253
177
211
178
189
216
154
228
229
146
186
220
198
181
155
189
125
216
205
132
140
210
198
197
206
179
215
223
188
199
233
153
231
173
178
194
181
149
202
179
194
197
204
210
138
201
236
106
229
185
178
206
236
242
150
190
200
209
185
191
228
205
203
188
160
203
159
245
224
216
189
249
193
182
200
231
210
201
136
200
196
146
174
239
243
196
156
224
186
144
228
211
194
235
201
247
182
170
218
227
175
195
201
143
187
205
200
276
214
156
208
251
150
204
194
117
216
185
229
186
219
260
283
243
178
228
195
200
238
213
187
212
210
226
195
188
217
211
101
250
225
188
153
213
203
190
195
162
155
238
212
188
169
106
151
167
214
210
234
184
182
229
169
204
227
203
231
149
182
197
140
176
231
161
209
195
189
214
207
235
201
158
206
172
205
226
165
251
204
183
126
167
205
193
216
162
191
168
184
191
222
240
147
194
209
217
236
241
217
164
201
201
169
162
210
192
127
216
158
212
149
150
222
239
200
207
276
225
173
198
153
212
219
193
227
170
176
205
196
215
219
190
217
174
230
227
192
143
217
223
205
231
274
224
202
173
213
207
220
188
205
251
205
147
277
237
229
184
183
189
215
202
156
208
236
200
237
182
173
177
200
209
157
175
188
210
168
238
172
221
264
237
197
172
224
264
215
227
213
180
198
179
135
164
150
197
241
207
221
137
237
134
201
254
248
206
194
238
176
155
199
142
158
226
175
221
148
192
217
155
161
164
139
229
201
210
174
231
209
185
201
233
235
237
193
157
229
249
216
225
202
208
139
201
196
192
192
221
207
98
154
154
148
208
226
188
191
270
164
235
223
254
228
127
203
276
286
197
244
200
227
196
188
240
145
211
216
218
189
183
219
209
188
232
154
209
191
215
198
214
202
158
127
114
166
197
154
183
199
175
234
124
169
191
198
139
170
219
210
207
210
111
183
169
184
212
227
205
202
244
206
232
200
230
248
226
227
171
186
199
181
178
199
210
163
152
229
241
235
198
163
152
252
121
178
214
174
211
111
184
234
201
182
160
173
224
201
200
230
191
197
217
176
147
215
181
208
148
191
225
231
212
207
170
171
174
121
238
255
183
180
206
216
265
231
185
181
246
221
209
241
223
199
174
218
267
222
163
190
225
218
218
219
152
245
118
212
243
206
204
250
209
227
238
178
164
284
203
269
182
215
115
180
129
200
211
169
222
228
174
254
163
231
211
231
192
235
176
172
271
127
203
206
219
165
204
191
222
159
185
190
193
244
185
227
199
275
225
261
258
220
172
227
171
211
248
183
107
133
183
145
154
173
218
164
219
180
224
211
185
143
177
177
192
171
217
119
246
214
205
155
210
158
222
98
211
198
171
154
196
189
186
208
174
208
189
242
188
217
257
174
196
197
177
219
230
168
257
257
159
131
227
170
225
192
228
204
242
180
184
221
186
188
225
246
270
256
181
202
278
118
187
211
170
181
249
218
204
113
173
277
219
219
243
207
187
219
192
252
240
218
215
241
253
235
191
263
203
134
224
177
174
196
206
149
233
220
245
216
221
175
237
178
183
223
199
265
172
278
248
219
180
250
249
146
169
194
213
235
161
247
151
212
164
232
198
235
235
166
148
174
199
201
173
201
216
223
249
206
240
174
205
197
153
224
177
205
230
235
185
203
156
135
190
163
140
198
223
210
173
182
235
154
191
177
170
186
187
150
228
212
147
187
192
248
210
261
213
199
177
199
212
238
264
244
229
206
230
145
235
252
166
196
209
145
186
169
223
238
178
180
206
185
206
199
169
180
238
168
221
114
253
192
187
203
176
195
231
176
162
179
257
202
230
212
250
240
230
166
167
229
193
175
207
204
198
160
191
185
231
182
211
151
263
203
224
216
206
226
190
192
210
226
134
219
202
189
219
231
249
213
244
177
200
183
163
222
201
206
181
237
226
211
247
205
207
240
221
230
218
172
200
248
179
205
196
122
144
195
228
198
183
160
230
224
213
168
183
144
255
198
206
223
256
232
177
186
235
185
191
162
177
186
251
198
208
181
167
202
144
182
272
96
254
190
138
251
206
228
199
186
183
123
189
193
223
189
196
201
181
194
189
182
239
208
228
234
218
216
264
204
223
230
220
277
209
212
199
151
219
225
217
202
159
193
173
247
204
201
201
204
205
203
213
191
187
226
190
204
190
262
204
179
293
214
198
174
167
140
160
137
211
173
239
220
179
196
196
276
178
227
199
179
176
234
213
203
194
194
219
172
222
183
228
265
160
168
207
176
249
230
227
264
173
189
261
222
221
168
238
193
153
196
253
223
251
214
209
196
175
208
243
221
170
200
170
177
280
148
233
215
232
220
243
135
177
188
186
231
175
189
215
248
182
139
261
227
204
205
215
182
195
210
189
157
186
242
227
213
176
229
197
130
166
197
242
182
192
218
213
195
197
246
184
204
214
228
252
220
155
173
207
221
162
204
237
179
147
201
205
147
160
243
197
209
201
225
247
203
200
178
140
235
175
189
250
252
158
184
220
251
220
190
241
190
177
216
216
187
188
200
201
183
222
181
183
175
208
227
154
268
232
152
171
203
203
160
194
178
198
187
234
193
202
224
168
201
239
227
187
180
219
190
204
249
192
201
174
279
179
163
247
196
225
236
192
158
206
241
209
248
222
212
231
183
228
181
206
166
122
267
182
216
213
189
209
197
230
161
165
193
156
183
130
279
203
244
163
155
218
211
176
197
204
208
167
137
182
232
169
177
180
169
242
124
182
178
215
210
238
198
169
188
176
211
236
237
203
155
203
243
209
225
171
177
232
197
189
215
236
190
151
198
166
131
202
125
203
183
200
236
229
204
170
211
211
233
208
282
154
262
127
197
254
184
240
254
167
228
213
190
171
225
233
206
224
192
214
160
182
188
257
195
214
262
206
204
207
218
201
181
228
261
210
221
173
239
242
269
202
215
192
150
198
173
217
239
207
207
210
224
248
284
152
168
247
232
176
227
164
170
237
135
222
191
258
230
214
267
184
213
167
186
133
185
179
186
188
163
189
201
197
195
185
247
219
218
219
187
204
213
234
216
255
268
173
171
162
214
234
204
213
227
214
152
228
193
191
238
223
226
162
191
223
203
134
222
135
207
213
186
202
213
171
232
194
229
166
198
214
281
276
212
218
256
234
241
164
235
176
218
141
224
220
207
216
213
198
142
174
214
275
233
190
240
193
239
232
167
205
232
195
190
201
230
159
217
178
202
193
205
233
250
271
192
251
197
154
247
175
256
203
197
166
204
221
186
196
218
132
238
190
251
215
224
251
177
162
208
225
176
162
176
199
211
188
197
222
237
199
152
180
182
243
179
214
191
180
234
181
246
167
222
216
201
202
226
177
210
198
246
250
229
259
131
185
217
246
157
215
217
197
218
162
154
251
223
220
183
183
205
252
175
231
219
242
191
167
211
197
256
162
209
197
231
189
170
184
252
191
210
225
170
136
186
236
230
160
233
297
147
206
164
228
198
203
156
240
230
271
196
206
245
143
231
226
251
217
248
147
163
188
213
174
196
214
235
189
214
204
182
232
182
227
242
216
115
197
219
214
179
196
229
165
183
250
205
235
196
163
196
152
231
201
211
184
205
172
227
191
169
274
195
233
215
210
257
206
229
217
144
199
234
196
234
222
253
191
252
180
193
224
204
170
182
151
214
250
163
200
175
157
135
175
257
234
178
240
185
251
168
160
230
155
215
250
203
166
245
229
225
199
163
161
203
218
172
184
255
276
185
198
212
235
156
186
179
127
138
199
233
185
215
174
233
166
161
210
185
203
180
215
248
239
201
190
140
166
151
215
250
208
209
201
242
227
204
221
220
165
226
237
193
193
202
146
149
176
244
204
237
228
202
212
196
231
214
210
114
214
199
233
268
193
171
204
220
245
203
181
148
177
164
257
230
167
249
213
208
198
168
173
184
212
144
229
202
160
189
193
152
273
152
223
187
185
156
201
178
209
148
217
239
163
169
157
238
198
239
200
183
234
202
214
229
241
179
209
208
232
225
212
167
235
193
200
171
159
182
198
211
236
168
189
177
216
254
229
218
198
202
259
191
206
171
180
211
193
197
222
229
193
227
131
284
179
194
209
216
228
241
144
175
160
208
267
237
209
154
196
182
214
194
191
233
162
225
201
250
159
201
226
180
152
123
250
231
268
112
275
212
242
249
242
229
153
210
231
171
165
173
180
158
201
198
145
235
218
257
144
219
203
199
229
210
221
177
226
247
200
181
206
198
197
203
198
199
183
211
194
242
158
175
195
146
195
215
209
161
224
150
134
232
199
198
162
186
215
233
181
193
173
208
189
197
218
177
200
202
180
198
173
175
195
188
208
199
181
158
247
174
204
211
221
190
194
168
191
200
292
233
216
239
181
132
206
130
202
193
212
246
186
181
239
194
210
192
194
226
214
201
149
200
250
199
184
204
205
207
192
255
253
161
164
171
191
181
266
248
209
234
246
206
203
225
214
166
183
186
204
194
205
160
152
246
202
168
149
149
207
185
207
229
162
162
224
165
165
191
238
217
204
193
237
190
189
199
202
218
147
244
182
200
217
218
267
213
211
245
215
138
207
183
246
169
241
203
217
267
253
183
176
192
160
191
183
180
242
204
250
180
182
204
164
204
230
201
208
188
214
259
204
248
230
173
210
204
293
150
108
224
237
235
148
226
215
197
162
192
204
144
192
197
226
193
195
212
172
204
214
148
212
177
181
186
248
216
228
213
256
133
212
180
207
202
176
211
195
237
220
199
204
223
176
225
219
205
199
179
266
118
201
198
164
178
279
182
232
223
216
257
195
191
257
150
217
258
146
211
193
232
221
180
180
275
208
155
205
219
242
243
169
175
205
249
166
178
179
236
167
188
213
208
171
231
203
195
160
152
214
190
221
206
195
227
188
176
218
175
165
171
218
204
176
132
169
182
233
238
199
205
191
188
217
228
235
247
216
164
170
229
232
262
217
213
214
126
216
191
251
217
205
144
165
187
253
221
213
213
178
201
217
206
189
206
176
209
245
124
200
202
190
212
182
205
163
203
194
168
199
192
237
222
156
203
117
151
219
208
190
148
168
211
168
244
190
255
163
182
195
217
224
203
211
196
227
188
217
200
183
233
231
175
187
195
252
129
203
214
127
218
206
183
128
192
233
197
143
229
182
176
245
253
197
238
169
272
152
248
219
193
180
239
208
206
291
219
218
129
195
197
227
165
171
246
207
236
247
219
194
218
174
246
170
235
184
157
215
257
200
212
180
204
182
229
171
200
184
228
230
181
242
147
240
204
272
201
224
234
201
214
211
191
201
189
188
220
210
199
187
226
198
186
177
226
140
210
167
204
156
265
199
220
200
215
215
186
225
270
231
216
197
228
175
203
159
172
221
212
245
155
261
112
190
188
222
215
215
196
234
203
255
193
238
132
210
161
152
247
224
185
247
164
198
229
237
226
144
200
192
215
183
163
222
142
234
135
263
169
209
133
149
230
226
213
180
155
233
227
160
234
193
225
215
174
225
214
186
212
231
232
184
237
190
262
193
213
134
256
170
233
225
202
208
159
226
197
194
218
216
206
223
235
204
231
207
209
165
224
202
186
189
186
194
202
195
192
165
186
146
230
172
177
205
129
210
180
236
223
149
145
172
152
208
197
240
237
181
247
167
191
206
173
188
224
237
231
268
243
204
111
204
239
165
173
173
84
219
255
192
225
260
205
162
142
213
220
216
200
186
237
209
247
152
236
206
217
213
145
152
217
192
238
202
200
186
191
232
169
204
156
232
206
206
195
186
198
213
213
102
231
237
250
182
256
194
150
190
274
206
277
190
196
206
158
194
180
144
187
199
171
204
170
226
147
211
178
230
246
199
187
229
217
188
176
151
227
191
202
215
139
212
137
191
165
279
211
211
231
177
219
186
200
139
188
152
183
253
192
234
246
272
200
215
233
219
166
196
206
199
262
152
187
188
177
247
206
185
226
238
207
252
235
207
249
148
218
168
212
238
244
191
168
146
231
170
143
232
155
224
218
187
157
224
239
227
204
229
263
168
222
148
203
227
160
216
225
215
166
220
235
214
190
145
235
187
191
195
181
185
197
219
225
244
171
221
174
166
158
183
184
225
172
212
220
219
217
141
225
142
178
258
216
187
222
196
245
233
236
194
211
175
157
179
233
234
215
197
180
151
194
192
184
225
183
201
133
192
272
212
250
235
220
202
185
199
201
227
183
242
196
242
188
168
262
137
180
142
174
172
222
223
175
223
250
210
262
274
223
216
156
222
203
193
208
213
140
226
184
174
245
228
278
145
187
171
223
223
220
253
233
199
199
194
217
168
171
256
191
206
175
217
140
225
187
231
159
154
194
200
258
183
221
183
199
142
197
184
228
265
172
164
154
230
174
220
141
152
172
242
147
161
162
179
207
170
164
178
258
194
198
261
192
172
108
200
221
153
166
216
229
217
121
160
224
232
197
265
204
238
227
170
193
184
155
174
167
167
226
179
192
222
270
191
143
244
166
230
211
246
204
177
195
225
203
187
203
187
285
200
179
199
166
198
198
206
196
247
221
158
182
259
173
169
191
173
163
171
148
175
182
185
213
187
207
176
202
173
210
218
178
234
200
260
241
253
145
162
217
166
196
184
267
173
222
223
255
219
241
125
204
183
206
160
255
227
258
195
204
243
103
160
198
195
199
185
207
193
187
241
182
217
239
202
208
123
195
256
218
134
167
197
155
220
243
155
175
252
204
262
252
180
194
214
223
227
228
123
156
200
194
172
187
264
205
209
126
246
173
230
202
195
213
223
150
172
183
209
154
152
231
179
160
241
168
157
175
154
194
232
217
163
148
202
182
180
186
151
205
197
221
219
223
205
235
215
197
225
256
169
205
204
217
234
250
167
131
205
231
210
131
207
243
181
207
193
262
197
179
214
184
241
157
214
218
188
202
188
182
157
225
196
185
236
185
186
167
191
206
164
222
242
228
209
202
189
231
223
195
189
207
199
218
187
169
181
209
248
195
244
192
129
204
210
192
205
177
184
198
136
127
177
149
211
190
211
141
246
159
239
192
186
195
203
218
233
176
177
221
209
217
217
187
160
177
200
192
216
174
249
176
189
228
140
153
190
233
185
172
238
197
175
242
230
243
230
250
190
93
147
184
242
208
189
213
243
267
213
192
193
166
153
176
197
268
181
233
245
165
258
210
195
237
240
246
223
197
155
211
248
219
215
267
188
213
167
188
217
188
244
189
219
209
197
210
164
172
216
208
189
186
225
215
184
189
217
157
181
233
175
223
189
215
266
184
206
161
244
166
202
196
164
195
219
183
226
233
209
173
189
180
217
242
229
153
232
262
242
194
248
168
208
176
243
221
232
174
200
269
246
171
234
205
240
243
212
186
202
182
208
136
218
141
196
250
194
220
196
231
209
227
156
180
216
166
236
274
189
196
230
210
201
247
176
205
188
249
167
229
230
205
128
243
227
218
147
219
152
213
236
231
224
235
212
233
201
218
210
194
200
224
247
170
269
234
188
199
253
216
275
223
212
141
246
221
216
198
242
188
184
219
130
126
167
224
161
167
222
173
233
200
242
222
216
188
157
248
191
171
173
152
163
198
142
265
289
155
185
234
135
204
189
176
160
198
206
135
178
214
133
201
275
198
205
186
244
193
185
239
213
204
227
141
211
206
245
223
169
192
217
221
186
238
148
173
239
216
195
226
261
143
155
201
226
236
154
221
249
204
202
204
208
210
230
164
170
200
197
208
243
212
201
228
231
236
218
187
213
240
216
220
195
252
238
172
250
206
203
185
185
215
175
197
188
248
164
178
179
203
181
226
204
142
217
166
120
206
199
197
244
227
200
172
197
203
215
242
183
191
209
284
261
263
185
135
188
234
212
208
218
212
193
187
168
154
180
222
207
254
157
246
203
174
136
196
239
211
212
171
221
199
205
217
195
238
216
225
162
180
128
180
161
155
201
163
231
300
233
205
234
226
227
221
174
144
148
238
174
257
201
159
201
205
197
166
171
175
155
209
196
188
229
157
174
154
225
204
196
193
194
247
248
251
161
128
197
176
222
253
244
271
248
207
214
191
201
149
173
191
181
226
257
239
149
206
257
211
172
194
196
265
195
161
163
205
191
201
206
219
210
168
141
229
186
219
177
194
161
129
183
254
171
216
194
214
184
182
185
145
149
180
172
238
150
178
193
191
223
213
199
191
182
200
225
240
166
184
195
215
241
226
232
248
222
260
242
206
230
164
209
287
94
225
161
182
233
240
147
265
203
205
260
233
168
193
244
175
219
234
175
194
134
154
120
150
205
253
191
251
211
165
216
269
205
204
226
189
203
212
110
238
164
247
197
257
179
205
250
293
215
181
186
209
163
145
248
211
159
263
193
189
193
182
186
151
243
199
240
113
194
247
190
191
177
208
225
138
259
181
245
218
189
178
183
199
219
156
175
189
214
194
171
181
193
201
209
153
245
265
181
134
149
183
219
206
225
219
196
199
183
173
209
205
222
231
131
190
214
235
240
264
177
154
184
192
128
233
215
229
189
272
190
254
237
202
211
226
198
186
145
243
248
130
211
197
254
225
179
188
224
252
227
252
208
154
147
218
272
157
142
195
175
182
162
224
245
213
203
244
244
190
214
144
110
203
151
177
202
199
193
228
184
205
289
156
174
159
156
199
120
187
228
229
164
191
159
210
158
197
216
245
170
212
204
203
199
223
177
155
253
213
182
128
201
171
257
247
206
186
219
202
182
224
169
196
205
155
231
215
200
171
177
224
205
160
213
193
239
244
238
195
222
192
175
230
217
202
218
230
95
165
174
146
175
191
217
166
143
229
152
223
242
244
149
273
235
187
187
211
161
192
168
163
189
232
225
241
212
220
242
224
223
173
182
212
169
250
174
237
229
174
197
252
194
202
222
193
206
229
227
180
178
174
207
222
182
182
240
162
216
206
220
199
196
195
196
199
217
227
228
174
225
184
228
179
217
159
192
187
219
251
220
215
216
192
161
203
173
190
173
170
184
226
247
222
214
167
194
207
260
161
174
213
178
180
203
217
202
190
157
252
97
167
223
173
214
179
185
181
166
146
239
144
211
161
190
267
164
248
165
211
181
180
199
227
199
214
263
232
178
140
156
220
164
220
154
238
188
199
234
185
210
199
191
239
196
225
216
177
208
195
212
194
269
201
172
203
235
218
223
228
191
241
188
219
140
224
197
155
259
210
248
120
182
170
184
284
178
197
238
207
151
249
251
218
191
208
228
241
230
239
195
171
167
199
168
204
181
260
172
256
240
157
262
186
219
219
233
217
273
246
115
196
207
196
202
146
155
203
137
222
206
291
242
232
133
166
179
166
186
200
205
195
192
189
159
233
230
175
151
164
166
259
202
234
223
195
170
229
287
258
252
162
222
243
165
191
141
222
238
278
226
154
150
224
206
226
181
181
213
170
215
204
165
283
197
150
242
217
232
194
255
174
168
224
168
190
228
215
211
184
196
250
238
183
173
162
228
228
197
221
218
234
215
198
200
209
156
241
251
244
188
191
185
216
173
174
222
188
196
154
245
123
236
181
164
255
194
154
222
197
187
216
199
176
211
195
167
275
164
222
273
268
183
163
213
134
165
194
242
158
198
137
140
138
137
177
107
216
205
262
273
190
259
230
205
198
230
183
181
196
220
251
214
259
234
179
166
219
209
159
174
232
190
190
208
175
227
209
146
191
195
190
216
170
196
175
186
226
196
153
184
173
218
257
181
225
198
180
135
185
185
200
158
200
182
185
118
225
211
229
248
169
228
253
250
228
175
140
203
258
190
128
189
239
257
173
157
250
235
210
195
193
207
142
219
237
217
132
175
163
211
171
205
177
155
133
215
267
249
167
181
239
202
199
239
187
205
213
209
129
206
239
199
189
230
212
158
200
247
161
165
157
171
176
178
200
206
208
216
259
206
251
193
193
133
213
161
247
199
150
134
209
227
93
237
228
213
178
167
171
240
189
201
185
205
192
275
207
214
193
167
204
220
236
241
190
205
214
279
199
205
201
186
172
208
187
187
228
181
171
232
251
212
216
194
179
242
187
171
210
214
219
186
182
159
229
189
241
225
215
221
167
166
189
225
169
194
222
255
232
192
180
217
185
235
166
223
138
244
104
202
223
175
154
203
172
211
197
134
302
255
211
218
225
136
234
183
233
191
212
196
171
132
227
195
198
226
156
239
155
208
162
207
218
222
147
180
251
166
168
145
165
266
203
197
229
215
244
181
229
155
210
182
173
181
184
277
175
200
206
212
187
121
175
222
199
252
218
166
124
186
196
207
179
249
219
211
199
198
182
194
202
209
176
182
149
213
231
205
268
208
234
183
228
213
144
219
148
194
202
167
192
250
178
188
138
190
190
196
141
222
213
243
233
170
207
235
184
189
187
208
187
174
158
279
216
222
177
219
177
251
177
233
162
200
243
114
220
212
218
187
169
167
137
203
158
240
186
208
226
183
109
212
255
206
208
231
195
243
189
231
233
272
189
181
163
209
149
175
225
238
215
225
190
248
202
205
156
194
233
178
142
199
193
225
214
197
173
196
268
201
231
225
153
186
171
175
208
240
157
260
183
213
221
203
232
198
171
146
153
189
200
219
223
254
187
236
172
266
191
208
250
207
238
193
272
194
214
148
154
206
186
231
171
172
221
227
211
206
191
233
226
233
223
212
255
177
186
185
195
170
239
199
251
219
219
202
210
227
179
194
185
151
208
211
204
151
209
222
205
227
181
173
209
235
199
105
196
197
196
216
128
225
202
189
177
160
167
223
240
168
202
188
181
189
211
212
245
247
196
213
257
260
204
190
189
197
194
203
221
248
197
222
210
181
268
179
218
217
175
189
238
206
282
214
194
120
208
259
228
166
171
193
162
154
202
164
134
189
211
80
153
179
218
201
230
247
207
227
220
174
237
190
228
252
178
183
187
156
200
155
189
204
214
220
230
209
138
221
218
234
195
212
156
239
171
187
208
218
207
207
255
161
209
180
185
249
182
134
206
164
196
228
235
196
236
163
138
225
222
219
205
257
208
180
228
176
188
201
183
243
259
165
214
233
255
203
217
211
190
156
271
217
191
190
206
207
272
235
176
232
214
199
190
229
192
193
204
166
190
166
205
234
160
176
203
218
200
176
158
178
208
251
139
182
167
132
179
175
129
218
203
240
227
202
203
250
215
221
150
263
129
180
187
183
222
173
218
175
189
218
168
226
217
180
183
230
226
215
234
200
190
210
218
176
161
210
258
154
240
228
250
233
186
271
231
220
222
210
148
210
136
264
147
167
197
220
209
205
247
208
191
125
221
181
180
170
205
243
173
154
204
193
225
224
172
235
168
182
214
235
262
233
155
169
184
219
151
175
200
162
182
206
227
172
227
187
224
188
167
248
136
194
194
231
224
159
206
189
229
187
203
248
181
228
218
235
132
146
138
161
165
243
221
195
177
214
238
163
197
237
176
187
180
214
217
174
225
211
199
203
166
162
215
249
207
197
234
219
234
230
214
251
239
199
155
204
231
233
152
170
216
176
237
209
248
222
208
201
186
249
186
247
178
234
168
127
261
203
250
175
153
228
216
218
210
170
161
175
203
205
191
174
195
155
230
199
204
189
272
217
184
131
229
132
193
214
225
197
268
172
174
210
221
183
221
240
139
145
223
149
215
219
235
223
218
184
203
232
186
227
246
250
202
260
129
191
169
214
224
181
138
137
176
205
165
188
216
259
168
161
265
250
207
226
226
224
246
216
212
184
197
139
227
210
234
231
175
220
192
210
214
205
236
174
234
221
218
157
218
216
233
199
256
153
260
193
189
165
186
215
153
215
192
209
198
233
223
178
189
186
228
224
127
208
245
185
176
201
227
173
183
207
188
260
199
242
289
198
166
187
170
164
151
243
171
189
200
269
157
188
190
249
209
188
182
193
161
213
201
200
230
141
181
232
239
159
202
153
219
196
195
179
208
204
208
114
189
143
196
204
186
196
268
222
222
185
253
262
203
194
235
174
253
235
198
169
225
225
176
188
226
211
196
233
156
225
240
189
203
190
166
262
222
230
160
211
227
245
240
192
226
157
235
236
224
212
204
152
273
208
184
244
161
237
182
257
190
248
277
185
243
146
193
204
220
240
203
169
196
246
232
153
225
271
238
199
226
229
198
159
222
220
153
232
152
179
212
240
248
231
123
212
159
268
202
229
251
242
196
152
162
212
137
236
209
169
184
150
164
193
204
201
223
213
127
215
187
207
176
193
255
148
160
208
166
208
180
231
212
279
189
187
130
257
159
265
237
207
194
225
214
260
247
226
232
227
206
173
239
163
227
225
219
229
251
241
153
212
224
141
278
220
175
174
132
207
227
203
203
220
222
137
123
216
220
171
235
203
216
170
242
195
183
165
245
184
221
166
171
208
178
178
162
188
174
193
237
119
174
251
229
188
223
165
171
191
221
223
212
128
220
148
197
216
92
193
211
172
141
178
192
234
239
249
196
216
212
227
212
220
245
218
207
214
236
211
252
150
181
230
214
190
236
232
200
250
192
204
159
225
213
205
182
136
141
135
222
185
166
163
166
170
193
212
213
211
151
184
174
218
231
209
198
159
228
223
206
225
193
151
160
173
200
173
212
245
188
204
188
158
221
147
180
223
200
202
176
199
187
162
230
150
198
206
230
216
197
246
219
244
218
216
233
211
158
184
180
222
188
235
231
165
253
219
216
240
212
185
238
147
157
162
164
172
283
193
221
150
238
183
194
192
236
206
160
217
170
206
164
160
170
230
220
207
201
199
184
182
206
208
214
173
135
296
170
211
193
202
146
187
187
260
233
172
209
130
247
200
195
236
153
190
200
206
188
144
203
155
202
208
146
192
188
174
189
212
192
236
232
228
203
187
264
217
191
174
202
171
199
273
235
222
185
221
193
165
171
186
195
195
158
200
196
254
183
233
276
170
194
188
217
167
197
207
174
183
244
246
197
240
197
214
226
215
215
227
192
211
238
208
204
185
162
202
207
173
235
225
205
201
184
191
177
212
227
265
109
198
192
199
173
250
201
161
273
154
194
238
176
161
259
212
166
212
185
167
155
216
166
200
211
158
240
198
130
198
189
123
157
205
202
167
195
134
216
250
192
148
219
309
218
199
195
167
163
202
206
191
163
226
181
157
221
207
197
179
247
178
170
138
182
157
109
183
137
234
211
177
155
158
193
247
249
168
135
199
185
176
163
198
156
150
173
189
222
241
225
210
151
194
183
215
122
250
137
270
160
241
165
113
195
202
145
209
172
193
206
224
204
237
209
231
136
242
226
230
200
208
225
225
199
284
193
206
184
245
214
168
183
171
176
260
189
159
197
161
204
193
205
216
234
166
237
264
202
174
199
195
220
180
247
207
152
184
214
231
167
253
185
214
204
246
222
231
159
213
252
179
177
177
179
159
177
256
178
159
185
249
241
250
227
180
195
263
211
174
192
218
230
258
165
209
162
122
187
237
204
222
240
143
165
236
157
197
211
223
200
220
178
205
203
145
193
221
230
249
166
205
188
238
214
233
208
224
157
239
158
189
211
190
187
201
213
130
200
202
157
257
184
202
145
209
233
202
164
144
229
218
219
193
201
137
234
253
191
284
227
216
278
162
275
211
205
212
227
169
166
183
208
198
224
228
161
235
189
158
183
231
193
249
221
184
167
155
190
236
215
197
173
155
198
175
164
215
265
198
155
196
244
177
274
139
254
192
252
211
201
205
229
196
139
207
151
166
122
239
192
208
212
182
223
202
169
260
188
186
262
208
192
158
198
172
150
196
233
195
152
219
162
145
212
189
245
134
205
184
190
225
142
188
195
240
213
193
146
169
201
234
196
182
221
200
162
178
146
211
239
206
163
167
266
285
179
194
220
273
185
222
221
173
211
203
186
169
187
175
210
182
222
235
196
202
214
197
241
190
205
204
158
152
217
191
243
191
260
220
218
201
172
170
175
214
189
203
236
196
229
223
211
191
177
157
205
207
188
215
248
276
203
254
229
178
237
196
207
174
218
205
223
171
192
149
213
252
230
161
167
207
197
225
217
180
145
209
211
261
204
206
181
241
157
163
172
180
241
204
221
229
207
234
246
175
204
228
244
194
195
115
238
221
244
231
233
164
248
218
245
190
181
175
250
237
192
213
199
190
162
255
199
195
164
220
173
242
167
211
246
221
160
181
204
112
224
226
210
240
191
198
173
180
221
154
82
223
204
193
158
205
210
163
204
179
184
234
217
148
197
228
194
219
129
209
227
198
247
202
240
176
185
154
216
185
237
193
164
269
170
181
241
175
249
183
232
203
209
160
216
256
206
186
227
206
146
204
167
215
181
225
135
156
234
120
188
201
235
249
207
148
244
196
225
203
162
190
212
183
210
173
180
223
146
189
258
196
224
187
231
192
199
224
193
170
225
274
191
178
234
220
152
184
200
262
212
201
262
195
170
220
261
232
174
141
173
167
207
213
198
195
188
175
162
230
192
164
212
221
250
222
235
206
221
170
185
252
132
171
252
226
199
186
236
212
211
216
222
171
154
129
242
205
199
149
266
218
251
165
191
206
226
111
217
178
174
210
208
205
183
153
220
192
174
170
127
186
205
212
186
195
164
177
164
150
187
183
237
204
223
204
233
183
141
159
215
268
212
225
202
192
203
236
148
136
163
211
195
155
187
220
159
95
242
184
151
241
194
193
209
175
151
236
196
225
202
204
211
253
211
154
121
179
190
219
205
189
185
239
192
246
250
189
227
181
182
186
207
266
202
163
253
156
191
264
202
202
161
233
211
149
250
223
229
155
243
218
210
136
189
133
235
224
249
181
192
157
198
232
206
201
203
167
133
209
174
228
300
192
216
213
179
148
217
211
201
196
186
227
203
199
215
179
190
156
239
182
164
219
240
163
186
132
201
153
207
198
199
220
242
209
158
195
212
171
208
221
178
190
211
266
206
210
236
261
195
175
235
144
221
193
283
201
183
252
249
209
195
155
228
195
214
193
275
120
169
214
146
179
180
117
171
190
220
164
188
227
127
176
236
169
221
214
210
232
213
241
176
206
173
173
142
242
204
172
200
179
226
176
205
215
202
274
191
236
130
126
223
208
191
227
188
192
206
189
243
204
237
152
164
153
225
198
184
230
225
235
158
214
191
163
161
218
115
268
184
217
158
192
205
198
162
211
187
221
165
247
231
192
202
205
226
253
216
219
160
210
226
203
178
204
230
250
228
228
149
191
255
193
280
198
210
160
187
202
251
207
233
190
222
237
137
197
132
194
192
230
198
224
187
259
138
226
187
175
229
138
230
174
199
163
119
222
178
214
166
213
171
202
196
133
233
201
255
160
96
201
136
202
222
241
206
248
172
149
198
225
185
265
187
233
209
186
180
224
206
204
131
237
163
206
159
119
160
202
217
186
139
178
220
242
154
213
193
198
226
125
194
277
197
140
222
257
260
211
205
110
196
178
235
220
173
153
167
200
210
270
196
221
173
151
216
238
211
168
216
218
152
252
205
158
280
233
178
233
208
200
214
168
215
158
143
230
205
190
157
198
149
169
244
206
189
238
218
214
231
218
146
190
226
222
234
203
195
175
200
199
176
263
193
234
255
266
173
208
179
182
246
183
210
154
241
184
194
206
237
172
195
196
214
206
222
169
137
189
161
109
186
225
183
157
196
217
224
162
249
252
212
198
211
256
190
201
207
170
227
127
172
154
204
264
189
201
150
277
229
264
202
225
136
202
220
165
279
209
193
229
197
176
198
273
242
214
180
196
147
78
160
229
205
220
198
188
187
187
167
173
205
163
230
158
229
224
183
207
108
176
180
279
177
206
231
199
252
147
210
212
225
198
184
209
252
185
235
186
182
241
224
208
162
220
193
185
237
147
232
173
182
202
247
213
184
220
132
238
230
209
188
195
280
236
235
214
257
220
204
158
223
190
283
185
161
245
125
188
221
185
209
230
299
241
200
188
203
198
158
235
234
162
173
187
230
163
178
159
203
240
164
282
188
196
283
235
148
161
192
241
166
236
136
164
165
258
252
134
158
224
260
183
238
210
160
195
162
181
204
211
209
226
177
175
207
243
256
180
177
242
180
252
154
116
216
235
244
213
111
227
184
173
188
228
157
182
200
247
160
213
193
226
129
164
152
203
187
237
214
212
242
215
106
174
169
209
177
123
195
160
253
262
225
161
232
239
196
182
195
169
191
102
140
190
220
99
217
212
216
212
176
180
184
167
245
221
240
211
186
214
196
240
221
188
235
205
143
128
248
200
220
244
175
174
215
255
211
202
196
228
135
165
247
223
189
163
175
199
213
222
132
186
198
224
153
153
182
157
226
196
192
250
229
175
201
230
203
167
133
206
205
251
187
210
150
167
214
245
138
249
182
274
227
125
153
196
164
177
184
227
237
266
184
198
131
165
212
237
238
235
212
217
216
223
184
161
168
164
235
141
200
222
163
195
223
173
217
235
145
186
238
215
217
224
106
176
207
199
193
154
196
139
156
191
233
266
187
205
197
179
165
229
245
208
221
223
155
255
239
186
176
166
174
245
216
242
188
213
219
205
154
242
175
183
270
240
223
204
219
250
200
192
238
144
241
124
174
142
234
247
178
231
220
206
200
207
184
177
178
207
292
256
221
220
131
199
223
233
173
213
209
234
202
179
201
192
190
138
208
225
203
154
216
201
207
191
220
193
197
213
237
187
212
214
162
244
238
210
229
169
231
223
153
195
181
224
232
245
202
212
230
273
242
213
223
174
234
175
140
201
223
190
232
150
166
247
201
211
104
129
230
240
224
221
176
262
155
197
188
208
230
159
144
150
221
211
186
211
190
242
206
218
228
197
191
213
203
235
187
211
194
239
190
184
202
225
201
171
216
229
198
200
195
167
235
129
144
211
204
226
242
230
170
240
252
190
206
173
198
228
201
193
242
216
215
189
203
182
231
144
223
193
197
165
204
185
197
231
198
227
199
182
152
232
193
263
208
182
250
191
262
203
184
217
136
186
170
147
199
186
156
219
97
236
176
282
178
199
166
221
171
99
136
252
235
241
191
244
221
207
211
211
235
153
206
235
167
218
218
207
248
145
209
212
187
235
281
214
220
224
220
165
138
196
201
195
227
213
205
163
182
218
217
222
210
162
240
246
181
200
240
179
175
232
103
178
245
144
199
137
113
203
175
151
254
171
189
229
224
164
244
161
191
208
127
167
216
206
236
212
173
130
133
196
224
170
189
192
191
203
219
225
195
173
270
272
243
197
169
207
133
185
215
192
175
175
208
236
203
157
225
150
237
268
170
214
216
160
198
186
182
179
218
234
194
146
214
229
232
213
202
202
132
226
194
141
135
228
175
207
213
228
199
254
156
138
185
220
213
243
229
222
160
225
223
202
209
166
209
216
194
177
237
217
185
231
188
227
147
271
193
221
152
227
132
178
173
263
271
185
280
201
219
204
166
168
209
218
214
223
220
240
178
214
225
187
188
145
181
120
206
230
182
230
256
256
239
221
166
165
237
163
264
172
209
153
228
190
246
297
209
197
229
195
211
208
199
225
206
217
181
213
176
171
212
203
250
279
208
156
209
187
210
191
239
187
242
161
232
189
251
161
228
166
196
242
236
186
170
193
227
190
190
191
195
125
211
269
243
203
189
169
225
204
163
164
266
187
196
282
241
201
204
200
239
124
220
203
120
211
163
236
135
200
174
204
219
193
169
166
197
187
236
146
196
186
204
230
239
255
148
214
240
172
209
228
186
159
214
257
175
205
238
171
178
149
206
207
158
219
180
248
259
195
173
194
164
267
225
186
208
209
186
209
204
174
203
165
240
258
193
229
217
132
175
208
167
189
219
199
261
207
202
197
145
142
162
178
243
141
199
274
257
148
211
205
196
222
193
209
223
205
220
222
189
181
233
238
197
206
234
293
213
94
229
182
207
222
219
198
223
240
192
175
164
213
156
155
179
239
190
255
198
184
184
146
190
248
195
165
205
165
185
196
260
179
212
218
179
249
215
261
222
153
190
188
200
176
160
139
220
189
222
227
168
182
205
198
203
275
183
172
205
124
289
221
212
198
188
208
229
185
193
268
159
204
163
172
207
258
191
216
255
189
218
157
146
196
237
171
224
209
161
207
217
231
217
202
154
255
196
229
205
202
220
165
167
173
202
174
226
255
182
219
264
180
235
214
214
169
161
143
140
138
206
112
187
222
173
183
202
221
260
233
145
223
162
201
216
201
259
215
211
157
192
249
199
210
231
199
218
196
233
177
228
248
140
222
211
224
170
177
197
184
166
221
236
279
209
158
184
146
157
188
205
193
178
182
224
221
225
204
265
159
163
265
244
261
247
246
227
187
195
172
211
263
135
211
244
214
242
152
127
227
170
185
120
140
159
146
183
224
173
174
152
246
192
211
190
177
196
212
133
216
224
160
203
176
212
244
215
155
171
178
202
212
191
160
218
139
186
195
214
224
155
182
137
150
162
229
221
200
185
166
258
205
218
231
177
219
189
164
176
202
209
173
218
190
133
169
196
161
182
161
175
134
286
253
177
178
176
227
157
174
229
249
174
238
212
122
237
249
162
228
210
240
191
221
178
150
235
175
233
226
213
272
207
166
234
197
187
247
239
180
258
223
147
215
236
171
203
184
226
195
234
190
244
168
229
153
241
203
136
219
204
207
283
230
188
149
172
173
193
237
225
188
202
195
187
220
213
222
225
150
223
229
270
243
238
221
152
198
181
170
225
184
163
214
184
207
232
223
178
179
204
200
215
206
193
148
167
271
249
167
178
243
172
226
194
126
201
158
224
253
232
215
267
224
220
230
204
149
142
196
160
206
208
223
179
210
241
183
255
228
219
215
218
207
211
194
200
197
196
189
150
198
185
205
160
177
250
164
157
160
252
248
192
238
186
173
235
207
197
190
136
134
184
250
223
188
166
201
219
120
214
173
171
252
144
115
179
198
229
159
195
143
216
225
190
232
184
188
227
233
156
191
237
205
183
199
221
143
194
198
236
223
143
126
247
147
211
228
226
184
213
218
183
190
228
256
189
186
206
187
226
218
247
168
155
180
202
221
207
255
171
211
167
159
272
158
186
136
208
232
184
262
207
230
162
191
203
207
188
124
178
153
183
217
206
277
234
246
246
206
225
164
255
251
146
173
265
211
238
213
189
180
207
205
192
228
164
200
212
202
184
211
185
239
173
248
201
241
229
196
249
185
190
187
147
200
199
232
246
221
196
206
222
161
275
239
258
134
190
123
153
195
206
193
219
208
219
163
161
201
179
187
180
148
114
226
242
143
182
164
275
166
176
156
218
226
235
224
189
173
240
174
176
154
214
221
169
121
223
207
212
113
220
213
176
235
176
220
196
217
232
228
195
227
179
214
212
227
222
234
205
214
251
233
181
231
135
193
265
198
156
183
159
184
193
221
203
207
229
171
136
233
270
224
186
196
201
220
195
172
150
205
232
208
208
157
126
243
162
164
227
181
217
241
198
213
175
132
236
175
264
218
213
233
213
232
179
240
220
252
227
201
156
228
230
214
205
185
244
200
274
178
202
224
215
139
188
183
186
209
203
244
143
204
194
181
264
193
252
232
197
185
186
248
169
192
233
243
179
168
241
198
184
160
171
141
207
150
206
216
142
167
180
192
231
151
234
213
200
218
225
253
225
221
174
164
202
189
246
235
214
200
197
247
255
200
195
218
101
222
177
184
174
204
182
232
181
232
188
142
188
184
226
228
217
141
173
171
143
162
214
266
192
180
208
215
141
218
165
178
198
256
218
251
200
195
138
239
216
262
225
283
202
210
190
227
115
113
221
220
214
240
185
195
190
142
189
194
204
190
254
174
204
245
191
210
228
205
185
138
203
195
266
181
197
163
206
246
232
257
186
117
184
175
191
228
212
182
232
209
269
237
181
204
181
178
266
250
207
136
188
234
241
219
202
250
239
170
178
245
232
198
218
193
189
213
180
239
202
194
181
225
275
195
207
204
190
265
147
194
220
201
176
240
182
89
175
198
250
159
192
240
172
98
202
188
200
174
177
119
183
151
238
171
172
170
221
176
214
195
171
215
167
187
188
219
260
252
179
165
201
172
183
169
123
122
158
245
189
249
233
250
213
121
177
156
192
229
231
246
168
148
200
128
197
232
187
180
244
191
205
197
231
227
226
183
234
90
266
208
123
184
178
217
187
248
177
213
200
187
186
190
189
235
251
263
202
203
270
183
155
137
253
250
200
190
223
257
226
264
189
202
205
179
213
234
280
226
241
183
162
242
209
185
245
233
268
206
237
232
200
235
254
254
174
211
144
179
248
257
227
163
213
134
252
140
173
215
158
218
212
161
205
249
204
209
183
170
204
252
171
250
255
186
225
271
181
235
214
199
209
202
175
247
220
191
138
156
219
189
252
202
189
151
239
223
196
233
280
99
229
182
245
191
280
202
191
173
261
165
240
183
206
157
171
152
184
211
164
215
149
197
230
138
238
204
200
201
238
196
186
167
186
204
212
151
217
176
221
181
188
207
122
173
129
164
202
156
173
203
171
209
165
214
202
236
216
169
161
175
168
223
171
171
201
164
194
216
184
185
235
187
265
213
230
195
205
188
288
184
156
230
246
186
239
272
273
194
243
205
168
185
162
162
258
192
251
168
248
212
214
256
196
207
200
259
250
199
243
214
194
183
197
240
288
214
123
183
206
146
205
166
198
233
215
177
224
158
194
187
180
203
213
195
223
189
190
161
177
226
247
149
175
204
222
189
217
233
184
191
166
237
267
190
156
214
175
245
186
282
184
168
167
158
214
215
228
242
173
169
190
144
214
223
200
196
211
213
219
184
176
233
199
215
166
151
231
191
190
151
206
269
119
110
218
149
190
178
213
192
167
143
209
190
209
148
234
191
159
199
127
187
197
237
194
147
110
203
184
198
166
186
141
226
204
158
185
202
228
225
228
177
168
147
212
242
236
231
181
231
193
166
210
170
229
125
210
208
197
196
157
221
211
181
232
161
156
150
176
136
216
206
214
224
215
219
188
196
182
195
172
197
216
162
111
257
238
256
191
274
207
207
215
145
195
228
178
243
220
251
125
182
135
179
218
220
186
217
162
171
223
229
187
196
202
194
226
186
254
193
204
240
220
170
214
154
199
207
159
162
144
181
186
240
169
187
234
170
199
194
173
154
257
231
260
246
253
198
270
189
215
178
149
217
166
178
138
234
170
208
211
241
242
239
181
143
118
166
160
151
228
143
185
203
169
234
254
182
199
138
201
153
202
168
156
263
213
235
214
185
198
174
240
208
198
223
225
249
155
234
210
222
242
187
194
227
199
165
192
180
237
153
180
138
236
162
164
193
202
242
199
197
205
147
190
177
211
184
172
246
200
189
166
231
204
149
250
188
256
178
268
217
168
129
249
185
136
203
243
227
200
237
157
225
243
216
200
132
166
208
205
164
249
229
194
208
181
204
226
216
141
222
183
201
248
223
206
242
171
229
216
199
221
173
238
236
217
148
202
231
217
200
250
250
185
217
235
218
234
173
205
211
190
203
221
241
168
200
146
191
172
167
211
189
269
230
219
161
180
249
216
151
140
169
272
188
184
171
256
173
195
216
223
254
185
194
155
231
236
206
232
192
200
189
185
261
158
158
189
204
248
214
226
170
121
226
180
198
154
189
248
190
185
245
249
238
201
175
214
189
200
248
170
209
225
186
220
217
209
243
193
241
180
213
256
182
208
178
237
210
173
239
200
179
213
164
183
178
186
274
170
194
190
190
227
198
167
163
218
181
247
246
225
184
203
160
183
145
188
231
242
161
200
238
178
170
156
184
200
206
216
181
177
158
214
232
153
171
186
172
173
156
180
191
187
215
167
213
239
190
229
208
140
179
207
192
248
218
194
203
197
217
196
210
193
183
232
212
178
139
177
221
234
200
167
178
230
252
198
193
124
197
171
241
184
226
201
257
194
230
193
222
226
165
227
200
222
197
268
206
262
142
134
206
199
202
124
212
179
218
134
210
175
222
204
153
231
195
180
181
226
180
224
229
182
193
234
196
250
213
181
141
225
151
191
141
208
205
230
161
193
188
275
243
191
227
212
197
257
185
273
208
146
247
159
225
211
174
192
183
166
238
224
227
189
229
217
218
184
240
253
225
189
186
209
186
246
208
206
259
210
250
189
225
192
205
227
155
200
245
151
186
200
171
234
162
159
210
194
216
166
168
222
221
205
202
205
238
185
194
204
201
231
144
239
174
247
260
167
219
215
153
236
159
208
197
193
175
170
147
162
196
160
225
204
213
223
251
238
259
229
203
218
160
270
104
219
201
194
249
211
235
212
182
214
164
185
209
183
212
159
187
251
198
190
171
173
242
198
212
206
167
246
265
190
240
114
183
143
192
226
202
184
219
181
197
242
216
204
251
253
174
201
136
238
235
172
190
175
198
223
200
201
205
225
216
207
191
260
231
241
219
258
204
175
178
166
192
198
222
241
215
206
199
218
260
248
203
199
236
216
188
173
198
256
215
197
186
183
167
187
265
177
199
150
201
175
161
232
192
208
233
185
156
167
194
202
159
164
206
151
244
138
234
199
257
182
228
212
261
199
254
125
200
180
157
224
149
196
225
136
230
199
175
233
158
161
167
168
220
213
221
168
185
177
203
210
205
213
222
156
217
199
237
160
203
229
212
193
212
167
171
175
140
186
237
221
239
186
205
191
177
199
175
147
181
182
235
233
183
151
180
118
187
226
234
196
208
229
267
184
211
170
141
150
186
272
213
246
194
230
136
174
173
212
171
190
202
178
183
141
208
169
222
197
242
165
208
241
186
130
266
231
206
187
251
131
263
184
242
197
208
196
225
208
146
179
211
237
196
219
132
210
258
193
185
262
222
203
278
215
148
229
249
237
102
230
209
199
182
210
231
241
246
202
182
189
239
200
240
232
162
182
197
144
188
219
216
154
187
214
244
157
217
216
271
164
244
204
200
217
220
228
178
207
206
179
196
164
272
248
211
280
195
143
248
252
261
242
249
232
229
213
249
215
157
172
189
228
170
219
179
131
222
167
236
163
248
148
167
202
218
167
211
123
281
225
271
189
250
185
239
234
252
210
163
152
210
244
248
194
200
238
221
135
226
180
208
160
219
154
172
174
185
128
206
209
195
189
210
227
235
222
206
185
204
147
172
169
143
206
234
192
216
213
217
155
148
215
181
225
195
211
162
196
160
227
210
257
86
166
153
226
201
193
208
239
229
261
194
176
197
204
179
204
199
180
148
160
192
202
211
202
198
180
139
188
173
186
136
264
154
177
182
200
208
207
175
196
219
212
196
169
216
186
194
163
191
240
220
205
257
228
178
224
193
179
252
184
222
220
291
243
182
188
176
211
244
122
205
256
230
134
214
238
191
244
219
181
201
204
211
221
199
163
255
251
133
206
142
172
185
110
170
257
241
233
237
182
245
215
184
215
201
184
170
206
216
188
225
245
176
177
165
235
183
122
150
200
232
189
213
223
278
158
218
179
197
176
191
240
176
228
267
176
228
260
209
199
189
209
197
227
176
193
206
206
174
201
241
216
178
240
174
175
214
225
180
188
201
173
185
180
202
185
230
191
192
154
241
173
156
206
239
218
245
231
188
222
208
215
210
222
261
205
237
142
166
198
250
181
164
167
232
168
196
229
228
220
225
197
230
172
182
216
291
219
211
189
259
208
208
191
211
226
208
168
182
164
264
183
212
155
186
166
286
216
159
182
203
182
234
226
163
280
207
199
193
171
194
221
182
219
227
165
213
150
199
182
248
247
140
219
197
238
253
198
187
141
216
243
196
252
205
216
164
172
179
199
173
238
194
175
177
227
121
261
282
164
200
202
184
214
150
234
250
146
193
191
221
172
186
189
216
148
182
153
235
224
227
214
286
242
222
170
215
220
254
204
276
233
200
152
146
227
203
231
210
197
237
242
216
154
208
263
219
199
176
195
190
189
188
199
179
240
112
208
193
182
198
199
222
147
200
206
165
135
200
136
231
204
181
199
194
180
195
180
230
254
160
207
160
196
259
271
254
148
192
228
253
205
209
103
224
201
185
167
197
152
244
96
229
208
209
150
195
183
186
184
176
220
195
250
174
182
247
147
163
217
110
241
160
187
238
219
209
170
207
112
177
174
175
139
289
209
245
222
251
194
173
163
170
229
182
220
230
136
215
245
269
191
142
205
199
234
147
244
242
204
215
252
230
218
186
251
129
216
232
168
174
187
189
207
253
200
199
223
170
160
237
166
201
203
246
234
211
180
180
143
177
197
195
155
207
199
184
236
164
207
226
198
165
215
154
153
222
245
209
182
195
188
215
184
219
182
163
194
216
225
234
251
215
231
216
186
216
183
216
251
176
167
173
232
181
165
151
242
275
202
180
244
264
111
152
237
192
160
181
231
171
196
162
155
182
203
243
216
163
170
153
209
204
240
245
164
190
250
205
187
181
194
237
252
193
218
198
237
230
144
186
172
213
249
243
150
159
240
180
191
205
177
255
177
251
230
214
196
253
164
135
161
199
162
185
237
218
160
236
184
214
134
209
173
257
258
174
113
136
205
227
172
196
167
169
221
194
177
125
154
178
245
167
213
162
253
196
141
264
281
215
122
119
214
176
254
183
181
161
226
164
182
230
217
189
172
256
257
194
224
281
218
201
152
219
197
209
213
243
265
226
217
171
192
207
214
184
186
260
267
166
221
173
202
113
238
241
210
198
188
212
148
202
229
156
143
177
229
172
217
199
158
143
207
245
251
271
167
190
196
192
182
134
186
170
160
200
221
253
201
208
186
246
211
172
172
194
207
208
203
205
212
198
171
260
176
169
180
230
229
206
211
206
112
184
126
156
218
246
143
192
197
152
181
240
233
213
217
180
154
223
177
206
164
248
186
187
199
187
191
165
196
211
175
139
182
249
202
118
212
177
135
210
161
131
166
240
242
165
167
227
185
204
194
215
202
180
242
210
164
223
172
210
204
199
201
174
210
264
208
224
233
224
159
192
191
261
237
245
169
232
205
201
192
220
161
199
209
262
176
228
216
193
232
181
191
206
167
161
250
161
230
242
189
205
187
188
211
157
184
175
177
207
205
215
226
209
217
240
248
222
198
203
200
159
183
204
213
113
188
242
226
265
230
213
206
220
127
209
163
186
148
159
152
174
207
189
272
221
139
165
248
229
204
207
262
200
222
217
231
179
208
214
202
119
168
222
230
148
170
229
168
218
235
282
192
199
170
215
216
120
243
189
212
173
189
225
181
184
194
232
215
243
194
153
210
142
198
167
183
229
182
239
190
244
139
187
149
170
148
228
257
221
225
221
196
183
219
204
204
182
218
224
174
206
189
210
215
211
200
225
163
179
209
197
203
172
194
128
188
240
143
229
253
193
206
168
228
219
248
218
182
223
187
196
234
230
259
186
203
238
239
231
155
247
228
128
189
186
185
142
154
248
225
208
175
200
224
251
198
198
189
185
234
205
230
244
164
235
186
202
280
164
213
193
196
193
213
208
229
191
223
163
207
135
131
169
161
271
248
232
201
172
248
188
230
148
178
202
261
165
187
208
158
196
165
245
171
179
214
198
206
242
187
222
187
177
228
211
157
210
182
198
212
161
292
218
165
210
188
218
204
187
256
171
211
215
252
174
130
199
207
245
173
149
239
221
246
153
176
244
208
156
239
227
161
204
98
230
236
165
212
195
211
126
202
189
138
255
174
168
203
243
206
209
263
177
201
150
188
251
134
243
161
171
169
191
140
188
145
202
239
181
265
198
259
147
202
212
199
205
179
159
251
162
199
197
173
226
209
177
174
179
244
196
220
161
182
196
162
202
285
248
223
193
174
223
233
251
262
191
254
198
199
234
204
221
184
169
181
181
173
205
205
162
246
221
254
212
171
123
215
191
215
255
242
149
175
223
172
203
237
266
195
223
199
167
179
172
202
236
252
151
214
179
153
184
207
153
262
176
194
225
195
191
196
196
166
261
196
221
217
190
155
218
193
208
190
180
207
148
190
178
168
228
208
207
180
194
294
239
169
236
220
231
195
180
209
276
206
261
221
218
151
188
214
237
202
131
237
210
190
200
141
147
199
202
172
203
238
213
220
192
241
182
226
203
232
170
246
165
235
145
165
216
188
189
218
183
202
205
225
188
170
225
185
176
152
229
117
215
242
237
247
178
193
198
202
159
229
227
209
200
209
189
143
205
227
168
216
214
199
219
158
193
209
165
202
279
205
165
228
192
196
189
228
242
161
193
207
250
221
216
191
164
189
221
211
200
234
254
217
168
188
156
171
211
203
177
219
223
240
143
264
207
250
150
219
262
227
83
154
189
220
203
207
314
153
167
213
228
215
255
242
267
219
136
234
170
223
215
295
191
224
187
203
222
219
228
167
200
261
212
240
154
206
233
200
176
233
148
190
168
181
174
203
151
204
255
214
212
179
204
205
202
206
232
166
178
210
158
193
154
220
206
210
201
217
239
153
165
245
171
184
198
178
232
225
216
182
232
263
189
215
217
200
201
176
225
217
218
180
149
188
199
219
189
208
195
222
135
181
166
223
234
233
220
222
257
200
185
244
189
223
186
141
243
221
174
170
114
256
78
199
208
213
231
240
194
164
211
234
201
123
274
165
192
219
204
208
204
223
201
272
213
215
180
187
185
195
178
218
236
204
178
158
215
221
147
176
185
201
242
219
165
193
189
218
137
227
214
175
203
251
218
204
164
196
244
249
235
203
190
194
206
173
180
216
160
229
312
168
249
201
212
173
217
137
211
207
171
199
201
244
156
167
224
263
184
240
220
195
235
206
246
220
171
154
193
239
181
166
236
234
188
114
217
223
156
262
169
235
214
215
182
182
209
208
157
191
193
179
186
162
226
172
239
203
196
209
207
174
176
262
204
231
200
251
216
174
240
199
153
247
184
236
159
243
208
216
153
241
210
202
189
148
228
168
181
251
259
192
139
199
187
184
178
168
260
138
140
190
230
201
226
269
202
218
202
210
215
239
169
175
203
214
218
231
264
210
197
187
221
140
169
245
216
242
220
176
276
255
253
200
203
196
203
175
216
216
193
205
204
210
221
276
172
200
224
149
175
206
194
203
190
136
196
196
192
207
197
189
243
226
163
216
221
195
169
249
219
198
228
243
223
262
209
183
189
224
204
216
205
201
188
175
196
183
236
170
209
226
170
177
181
170
217
164
184
205
212
176
185
193
237
235
222
185
140
192
239
225
236
236
135
164
208
146
137
143
215
266
235
200
177
215
202
239
206
193
242
195
239
194
267
218
176
174
219
170
196
190
205
153
212
188
228
205
125
233
199
137
177
232
202
153
179
204
204
213
158
153
216
253
222
285
250
150
198
187
257
250
227
156
198
191
229
214
179
217
221
234
168
200
236
184
207
227
230
194
228
221
219
225
220
188
156
232
197
221
180
198
189
139
243
156
228
187
253
182
173
180
235
166
165
172
190
203
155
247
199
213
236
196
136
178
201
240
239
202
260
226
237
203
119
201
208
213
228
174
146
190
196
268
171
211
159
274
186
196
201
178
217
205
233
199
196
166
173
194
229
189
213
225
151
201
125
160
231
172
209
195
163
166
191
175
205
180
163
210
139
216
132
226
176
146
237
265
186
206
194
229
161
257
223
184
225
250
229
204
220
190
255
142
185
156
222
273
190
197
194
218
176
191
207
231
171
184
231
170
212
212
187
157
224
227
210
238
159
189
171
211
184
208
144
148
171
173
213
202
242
227
230
241
265
215
162
185
200
214
228
216
188
188
159
147
222
261
220
177
169
210
177
183
179
145
173
212
167
210
207
121
220
124
197
183
226
212
210
225
183
222
224
143
191
185
166
191
196
216
151
203
219
232
225
191
267
275
229
217
199
263
176
188
220
245
192
164
212
231
204
192
192
94
224
235
203
159
193
184
184
188
211
153
216
240
191
242
190
285
246
213
217
165
218
213
235
216
184
229
206
194
186
208
145
215
209
222
190
214
252
221
204
175
132
163
264
222
284
244
245
228
206
210
172
205
198
129
145
167
206
196
182
213
138
234
203
214
177
211
207
230
227
154
229
215
295
208
226
178
179
208
240
202
158
159
177
226
206
197
214
166
268
204
225
250
138
192
199
261
207
237
162
160
227
254
160
219
192
218
115
191
181
160
257
239
209
232
280
194
216
249
203
162
248
240
159
267
158
225
188
228
138
175
192
140
250
167
206
161
166
210
183
201
163
180
197
236
223
196
227
223
210
247
164
176
256
225
183
157
171
162
191
192
163
251
156
249
231
203
252
187
189
196
194
219
190
223
177
246
184
172
216
179
167
161
140
151
179
204
140
199
163
195
223
205
217
155
219
175
167
110
212
208
236
192
175
198
217
141
219
224
198
209
208
161
236
178
269
227
189
202
178
214
167
140
183
193
156
170
252
227
147
268
212
201
206
239
190
236
186
241
172
240
200
214
163
176
127
220
259
202
135
173
235
215
215
204
144
162
221
171
218
246
210
200
168
151
219
170
218
264
211
236
197
131
280
136
172
182
150
203
216
206
195
210
171
235
203
176
219
217
261
172
190
258
215
230
154
252
214
174
173
193
242
240
211
220
165
216
180
192
190
140
188
267
203
169
189
258
172
263
231
212
185
124
232
226
202
202
196
245
190
214
204
153
138
181
205
222
172
221
165
182
256
191
210
183
255
225
218
224
182
210
186
186
200
148
250
258
175
192
193
272
215
216
211
228
218
247
252
194
216
205
213
185
206
242
194
253
183
201
223
173
195
172
225
153
184
185
199
206
219
190
155
220
163
181
156
204
158
191
241
178
143
192
177
195
204
240
223
188
203
197
210
135
225
251
177
203
159
180
239
153
201
242
192
193
212
199
242
203
226
206
249
178
183
258
163
175
173
253
190
191
191
174
178
245
186
269
192
271
256
211
228
149
209
243
271
269
148
224
228
220
241
242
154
205
140
208
246
222
240
176
207
151
193
198
234
166
204
170
161
161
182
200
195
228
103
244
195
232
207
146
148
232
203
192
156
181
204
207
208
136
175
218
161
192
155
189
222
190
158
175
216
185
226
239
227
217
208
242
205
214
205
210
214
223
212
193
156
184
208
160
179
207
153
201
170
203
201
161
234
260
204
182
140
228
227
196
196
109
219
207
199
145
202
141
237
266
226
227
248
165
215
201
254
215
146
189
238
214
198
195
244
149
205
256
129
293
226
185
164
196
210
177
197
202
200
129
186
154
190
227
161
143
196
248
217
216
177
229
220
242
200
164
132
161
272
180
215
158
134
237
185
172
244
180
194
192
209
206
237
182
198
181
177
238
225
133
181
224
193
252
143
206
158
174
226
219
277
188
206
151
227
182
259
211
199
202
251
180
159
177
245
155
196
176
197
204
184
208
213
201
198
194
278
137
208
213
205
219
140
169
166
194
153
131
224
215
195
199
199
197
223
204
211
199
212
245
236
180
224
217
240
204
210
117
224
218
192
211
215
186
228
178
202
219
194
162
236
177
126
186
117
171
199
138
210
188
197
127
137
246
219
183
207
191
148
164
145
149
232
218
196
242
141
203
156
221
261
228
202
251
167
187
242
227
195
231
189
205
227
162
201
164
276
242
149
231
237
259
234
229
154
174
169
239
192
116
181
200
152
214
213
195
225
198
245
244
176
200
201
167
265
154
244
140
197
187
197
191
178
197
215
144
207
214
244
268
165
200
184
196
223
192
221
204
197
183
233
252
205
149
219
152
166
204
187
236
240
171
178
126
237
208
174
236
194
230
184
114
258
220
214
139
249
214
200
156
255
206
195
205
201
260
157
230
238
222
193
252
103
207
166
183
220
160
193
145
171
192
111
187
185
200
218
121
255
240
190
225
216
215
210
248
186
227
187
113
220
196
144
226
214
181
198
196
175
247
166
130
203
172
165
203
219
216
220
198
203
151
237
216
169
183
228
137
253
176
205
152
214
199
242
189
118
188
207
215
256
176
161
272
199
185
215
206
228
200
192
153
149
168
247
221
190
213
223
208
180
215
222
158
184
237
247
206
255
221
221
198
250
185
172
254
151
126
212
244
172
275
217
194
202
224
224
223
200
174
138
212
198
235
239
173
195
263
184
186
137
229
208
236
198
212
212
200
265
211
253
207
215
197
188
181
228
173
176
179
213
176
144
208
205
101
222
256
223
155
201
202
161
191
247
223
253
212
230
267
196
235
243
159
152
231
242
163
174
172
190
207
208
224
256
240
216
145
203
222
218
231
224
216
190
170
195
247
137
245
195
206
170
207
235
228
199
291
174
238
212
159
175
221
224
224
207
200
208
206
242
163
213
217
223
192
218
218
141
218
269
140
218
188
199
198
255
227
216
207
144
187
183
183
196
198
182
242
221
173
182
220
165
157
186
235
157
184
198
208
198
156
270
192
180
215
141
212
174
211
240
267
235
191
213
193
167
245
199
191
185
148
158
153
125
190
230
206
255
261
184
193
254
187
190
143
163
138
177
254
242
134
194
199
142
215
180
167
223
162
251
208
185
127
152
162
156
236
124
227
154
233
224
212
231
157
150
168
177
231
212
262
234
219
142
229
236
258
223
161
181
197
211
185
165
199
156
142
231
163
192
262
191
203
118
239
193
199
185
208
178
174
215
225
225
253
147
201
243
139
247
179
196
261
218
234
155
207
142
138
191
177
227
187
185
195
196
152
265
228
94
211
178
124
268
244
210
189
161
186
186
192
202
190
275
244
264
178
176
209
213
174
229
120
238
258
276
222
199
146
210
141
214
218
203
228
202
179
232
217
245
264
230
210
212
168
181
214
187
177
219
175
225
204
210
115
187
226
218
183
216
257
168
208
247
146
185
165
171
173
191
189
217
214
225
217
204
221
259
186
167
207
174
189
219
193
128
181
184
230
209
262
204
244
201
163
245
220
166
236
204
233
217
198
224
214
247
234
219
166
249
223
176
168
171
199
177
219
237
159
218
193
254
210
179
160
227
219
213
193
258
215
170
265
225
223
210
168
168
240
268
249
177
163
195
103
198
201
248
209
203
240
268
163
246
288
228
274
195
161
157
237
241
194
197
132
174
209
280
191
241
258
210
173
175
175
234
220
247
162
199
193
172
168
206
168
206
173
176
201
130
194
124
180
180
258
183
187
218
136
245
231
146
232
216
256
266
188
181
239
218
202
213
201
191
180
205
174
212
198
225
240
218
189
255
214
214
239
201
201
266
218
189
195
181
188
220
240
190
249
195
186
222
243
240
198
183
225
249
183
233
214
148
159
228
271
135
201
187
200
256
181
196
199
193
179
235
166
199
218
204
197
182
209
191
239
184
238
218
227
200
231
196
198
237
242
219
189
192
229
261
224
155
142
195
241
193
215
235
220
195
175
273
164
177
220
210
231
162
213
224
170
190
143
206
207
158
239
201
211
168
178
213
188
205
218
260
178
163
234
160
189
254
196
156
181
233
230
235
197
202
252
228
223
217
219
228
185
274
249
140
159
236
239
211
196
269
192
244
217
229
181
181
208
248
236
176
180
265
160
160
192
247
229
249
217
183
205
236
210
224
174
247
253
171
200
179
261
170
211
256
180
179
196
143
235
199
201
153
226
178
143
225
207
189
124
233
164
206
195
152
140
151
194
213
180
202
224
149
185
157
216
244
153
217
177
190
222
239
215
217
216
185
166
197
243
220
187
149
183
182
182
235
206
188
206
173
152
224
155
210
214
233
155
228
223
176
212
284
202
170
188
235
205
145
148
190
200
183
172
213
195
171
227
192
262
243
202
254
224
177
202
174
184
179
243
166
219
180
152
201
220
194
200
193
239
209
258
202
185
199
208
264
203
145
250
185
226
190
165
154
148
205
186
228
215
227
197
173
188
231
236
197
181
211
167
254
187
205
227
173
148
95
172
237
199
214
212
231
192
234
202
172
210
240
223
179
244
193
211
164
262
195
228
161
181
244
255
200
208
176
239
192
252
238
195
185
239
193
182
268
188
182
239
173
195
221
231
199
186
191
204
228
192
218
209
189
166
239
237
146
212
131
271
197
205
242
270
229
198
215
143
251
184
172
223
231
248
226
140
222
178
193
230
177
255
232
176
227
238
188
252
157
154
203
183
222
164
200
180
195
195
210
207
209
155
187
213
214
210
142
197
130
196
155
233
241
178
190
109
190
135
137
241
189
209
174
268
208
180
222
151
187
180
178
239
150
197
278
159
173
236
230
159
191
228
189
216
131
183
151
172
261
170
208
172
231
193
209
155
168
199
190
217
176
232
156
200
287
191
200
188
209
138
212
212
236
170
213
189
220
219
198
245
193
198
189
120
213
156
203
151
264
171
151
182
249
172
222
170
191
177
261
194
180
139
217
147
190
179
163
267
205
237
239
196
238
255
203
232
195
232
200
196
253
251
177
194
205
221
196
199
214
174
208
219
274
174
226
266
174
204
197
255
224
236
180
174
178
145
207
238
136
197
178
149
151
186
181
195
241
250
163
218
228
182
235
163
198
167
242
227
128
197
240
192
152
150
232
165
129
256
233
165
195
152
174
215
187
177
229
192
214
195
270
175
196
284
161
231
210
217
177
207
188
225
186
153
176
176
194
186
237
202
193
220
117
213
132
189
273
153
243
244
183
174
158
204
205
218
199
202
141
212
159
185
257
162
162
220
202
258
214
210
193
205
229
174
133
228
233
262
256
180
186
194
204
214
245
151
172
206
215
183
173
196
208
223
210
188
190
150
150
234
127
215
269
138
177
239
213
304
198
235
210
185
218
183
208
186
202
270
172
203
178
179
181
194
205
206
215
207
163
175
181
201
188
182
226
156
234
212
202
221
168
171
156
221
236
182
192
266
246
190
185
211
210
175
234
261
207
210
176
261
141
227
203
245
156
204
216
204
264
257
186
198
172
208
194
181
257
207
202
186
235
228
222
182
204
245
248
134
199
246
158
211
151
181
175
170
115
264
280
169
225
182
259
167
172
251
169
151
219
176
143
208
191
225
256
256
212
192
204
175
249
174
200
148
189
228
171
150
166
248
215
195
234
185
234
212
225
163
176
149
257
174
204
192
239
244
221
213
180
207
239
216
144
163
192
213
227
153
206
258
160
200
204
211
181
205
206
212
223
244
265
196
204
195
238
121
204
263
110
194
163
239
175
181
145
147
204
197
165
209
194
198
221
201
174
215
266
221
186
192
263
221
168
160
216
243
177
201
256
263
262
193
159
237
214
251
182
181
202
241
164
208
257
194
211
163
147
240
173
185
185
253
227
193
135
126
154
176
191
156
217
155
201
194
220
187
208
173
199
251
214
175
136
220
219
199
166
181
241
224
190
228
178
163
223
252
180
125
253
146
188
182
208
153
197
266
204
216
261
208
227
213
202
183
240
248
211
188
192
213
226
253
112
216
157
194
238
277
201
157
197
170
210
219
203
205
167
190
155
161
238
268
232
232
185
176
190
133
187
177
219
267
231
207
195
178
147
181
213
132
189
214
223
240
232
244
165
150
157
203
174
220
192
157
196
115
177
181
228
155
190
197
157
176
253
198
191
169
231
196
163
225
257
144
247
199
157
192
169
258
193
214
170
172
180
167
217
204
159
223
230
151
231
214
274
223
165
201
184
228
196
213
220
225
262
176
208
173
248
211
159
232
191
207
210
168
273
210
204
201
161
167
213
232
219
201
212
158
192
146
187
241
207
228
258
162
195
176
210
183
217
189
166
205
202
199
223
224
172
164
189
229
175
253
211
218
224
177
197
213
188
209
175
192
112
211
188
173
205
211
115
196
225
275
181
281
220
221
205
211
171
244
204
144
167
246
251
234
152
227
141
220
219
205
175
184
215
229
233
244
173
235
262
184
237
180
184
201
166
180
220
251
206
173
190
208
200
190
191
233
136
212
203
232
203
190
241
220
202
213
181
147
152
213
132
193
191
200
185
157
199
124
192
249
156
181
173
222
215
233
211
182
202
191
185
182
160
229
186
253
200
234
156
196
152
230
195
134
242
187
178
283
202
166
168
176
217
178
211
231
198
223
207
143
205
206
194
141
253
189
185
157
191
221
220
236
183
195
159
212
200
225
237
189
197
177
176
190
199
228
206
243
236
196
245
151
214
171
196
181
203
209
217
210
145
210
177
211
178
212
160
208
263
222
237
169
212
237
213
230
197
160
206
156
146
152
126
169
208
198
186
252
219
241
216
226
231
197
162
183
202
207
212
247
188
245
188
185
202
191
215
151
230
210
257
240
176
192
148
224
190
221
184
227
240
226
246
153
230
229
212
185
89
250
208
172
218
160
193
238
201
197
224
207
180
169
223
155
217
179
215
236
220
262
263
220
225
188
183
212
145
202
145
199
146
172
220
222
113
158
241
175
241
190
180
186
252
252
164
213
162
213
214
273
213
233
160
243
160
185
208
243
194
206
218
181
227
171
130
283
237
220
211
174
144
225
201
227
195
167
158
184
189
151
219
212
214
199
214
156
190
137
247
237
155
206
187
147
153
198
240
147
184
190
223
242
163
205
174
135
239
222
156
172
231
185
169
197
225
253
157
180
239
256
218
99
132
232
178
204
219
162
171
199
226
213
214
211
130
221
223
188
201
222
210
226
172
164
176
217
182
260
185
160
143
233
203
217
214
179
151
212
256
152
242
201
211
176
138
219
204
229
214
228
195
212
198
221
211
201
213
152
202
197
192
204
244
153
223
259
224
174
245
251
185
247
180
208
201
194
169
138
147
240
214
193
142
277
198
239
170
253
206
206
203
164
259
200
188
222
220
176
215
234
244
180
238
257
180
246
211
246
206
183
232
172
222
174
257
205
190
188
238
225
231
231
240
192
188
221
258
147
185
190
223
136
238
245
152
184
169
201
177
229
229
235
227
226
142
175
164
254
160
196
155
199
207
189
203
220
214
192
187
183
177
180
220
201
217
205
235
155
286
219
211
215
247
216
215
164
164
240
151
220
189
277
176
198
175
197
269
151
228
179
199
265
267
232
242
166
165
242
194
166
204
184
189
226
231
223
226
220
223
156
135
180
186
211
229
184
206
184
177
250
210
177
208
201
180
263
147
252
167
209
219
129
183
169
205
162
240
88
211
176
216
138
233
187
169
187
240
199
246
129
162
200
215
239
151
268
158
230
213
231
162
211
228
204
234
159
213
207
236
220
122
157
215
184
163
169
204
182
224
194
213
159
238
182
205
213
173
191
140
185
197
189
217
196
188
186
191
250
194
208
199
158
178
218
174
225
208
178
196
204
199
145
228
191
171
132
227
246
200
190
294
198
265
180
219
207
238
228
201
160
168
187
215
253
159
180
173
166
202
253
224
195
172
218
212
232
183
170
227
151
253
185
133
203
186
166
197
202
133
235
199
224
167
166
159
219
246
198
190
183
170
156
212
221
190
156
209
218
109
247
175
123
148
195
267
191
195
180
181
176
214
211
187
146
182
190
226
212
227
194
183
144
219
241
150
151
184
212
193
186
200
216
174
250
178
173
161
236
187
202
240
169
228
207
175
217
193
221
159
201
170
238
192
187
242
202
142
168
238
190
193
247
134
160
218
233
212
166
264
134
240
120
126
222
205
199
160
119
253
275
178
216
185
150
201
209
259
209
226
190
232
200
201
200
214
200
131
186
203
222
241
156
177
167
151
206
179
243
176
178
203
156
177
217
155
225
236
193
203
237
200
252
186
179
181
208
204
235
221
196
152
191
262
187
216
126
182
202
216
193
246
234
206
209
240
164
188
172
195
243
247
189
222
214
202
169
219
169
232
147
272
197
232
207
191
194
224
202
160
174
247
156
249
243
279
236
228
228
186
164
214
257
218
193
281
161
222
242
187
123
213
231
228
187
183
174
241
183
219
176
170
173
224
235
199
160
179
228
191
192
233
235
174
151
192
193
156
159
187
165
186
180
234
233
187
190
193
188
143
233
165
144
231
248
192
268
223
152
203
148
192
162
178
189
218
214
213
240
221
184
177
159
204
165
205
201
229
181
189
215
223
211
161
219
204
157
242
227
210
237
184
179
213
138
228
215
180
157
208
164
169
201
251
173
216
174
181
203
178
237
219
242
208
189
284
149
223
234
205
247
136
149
219
226
141
248
208
228
224
162
217
142
219
258
217
206
235
218
177
200
181
173
209
227
159
229
190
193
203
168
200
142
243
239
179
198
200
209
192
222
229
221
135
199
156
190
217
258
221
208
242
165
188
189
238
241
178
218
198
127
189
199
197
206
207
180
143
146
225
205
199
200
199
189
245
181
252
248
233
203
174
218
200
198
238
186
151
195
177
209
208
187
207
161
237
230
174
221
210
198
179
145
189
194
200
219
188
259
130
179
282
208
203
244
161
183
192
194
248
205
250
189
196
225
246
184
232
175
230
208
282
227
217
168
238
215
220
207
226
217
186
158
192
233
185
220
211
226
226
173
177
161
194
145
201
170
237
196
159
235
250
192
221
209
169
191
190
208
157
249
213
171
223
242
158
176
172
211
213
283
265
148
153
222
186
218
224
197
187
257
238
198
239
246
156
183
177
191
140
145
213
215
190
196
189
207
161
186
204
217
226
139
244
228
223
193
193
162
198
219
262
170
184
215
207
187
191
228
240
250
251
241
204
225
150
229
245
172
195
185
183
213
205
249
179
209
177
168
164
213
192
213
228
237
255
203
144
189
233
223
203
177
262
222
210
191
257
201
154
157
216
193
243
224
192
210
227
188
149
190
249
174
208
196
202
235
163
240
138
184
222
167
146
191
174
217
192
164
245
246
205
247
215
178
217
176
215
188
223
244
275
229
224
223
192
201
162
247
195
198
224
195
212
199
253
181
202
227
224
200
207
218
187
152
208
208
187
177
235
192
165
157
210
205
233
263
198
178
145
142
195
209
193
173
164
209
199
187
198
254
190
216
184
229
211
241
187
158
232
158
230
231
182
218
219
283
150
264
145
146
201
203
185
145
221
236
195
259
230
151
229
190
209
149
243
253
221
177
155
193
214
205
183
262
234
179
185
211
226
244
241
211
209
211
168
212
200
223
219
180
184
182
210
194
194
223
224
218
216
216
237
201
173
216
189
204
191
198
208
237
141
176
186
184
208
174
248
168
184
178
142
201
149
211
192
223
145
172
149
250
193
160
207
189
222
224
192
187
177
218
203
192
213
220
201
206
133
172
193
177
222
185
213
190
214
208
197
139
130
194
255
154
207
181
240
164
200
250
186
192
243
199
232
138
234
204
166
211
193
247
204
239
206
229
174
151
241
208
189
216
236
139
217
218
169
208
159
174
183
204
186
230
234
205
213
180
209
181
191
229
190
141
199
261
129
239
95
189
214
213
186
228
238
235
181
217
163
150
185
190
209
213
144
153
227
163
215
212
198
251
175
205
184
257
240
223
230
212
216
203
174
219
215
163
233
284
185
167
241
206
185
260
171
239
225
164
203
199
228
204
183
194
181
168
190
203
177
182
217
231
163
204
152
228
193
187
204
181
188
178
219
202
187
214
203
217
202
227
215
171
192
220
202
218
204
189
219
266
206
192
220
154
272
200
164
203
205
197
167
163
176
220
231
197
224
197
199
230
208
236
183
209
158
159
213
210
210
205
239
180
211
182
247
191
229
170
184
230
195
212
217
198
256
250
172
221
190
144
160
217
200
206
229
180
233
124
187
235
260
193
273
179
231
204
247
183
187
255
173
162
173
159
226
163
190
180
224
227
197
229
245
202
240
138
259
275
185
199
199
243
204
221
190
225
161
202
226
215
203
202
206
216
161
197
233
163
244
210
158
190
222
194
220
133
172
198
215
218
250
196
238
227
230
199
205
251
176
226
185
239
202
219
169
192
200
228
166
227
242
186
199
161
237
235
219
186
226
201
182
169
163
248
165
210
258
214
228
219
191
218
176
263
244
214
214
158
213
181
175
189
179
237
208
237
239
198
216
171
186
195
222
231
213
184
166
151
268
251
181
245
186
228
225
190
210
210
228
156
229
195
258
240
185
232
203
206
209
245
184
179
188
128
197
190
141
152
211
228
146
241
199
221
142
215
185
219
165
186
211
190
143
210
165
177
195
153
169
287
162
232
201
231
251
230
157
221
233
229
223
181
117
158
233
176
200
260
211
131
186
228
182
239
150
217
125
235
224
224
192
207
277
160
177
205
201
172
190
210
239
196
187
153
243
220
168
222
200
87
221
223
151
247
174
199
198
156
206
234
244
233
254
239
225
255
160
250
197
198
249
239
176
195
223
256
226
239
205
138
202
238
218
241
202
226
226
242
211
138
243
171
220
154
206
175
134
271
197
197
287
175
193
217
153
176
151
186
154
237
233
241
176
216
153
201
155
205
206
242
155
180
218
183
220
221
180
253
221
236
248
198
205
158
158
172
187
215
192
157
227
145
223
239
270
237
238
200
185
216
218
182
222
198
205
177
180
169
182
251
173
207
186
178
201
179
179
198
187
159
183
191
203
229
212
158
165
177
175
268
241
157
169
137
170
232
181
177
168
188
184
181
197
205
164
148
199
246
209
188
262
214
132
211
212
256
211
214
170
221
151
229
166
162
174
204
195
194
162
249
212
191
185
255
167
213
197
199
126
175
176
188
255
184
245
255
212
212
161
233
210
238
195
166
226
222
204
182
192
207
277
187
186
238
221
173
203
242
164
211
247
257
209
183
210
226
209
223
211
190
205
244
227
233
180
223
128
192
177
267
133
134
211
152
182
231
149
207
194
142
252
156
219
210
211
203
203
183
183
207
235
213
214
156
254
236
202
186
211
195
228
292
110
217
181
191
197
192
146
248
209
230
147
238
212
229
190
255
252
180
173
190
235
199
226
263
185
213
195
179
170
217
231
243
177
189
232
213
187
182
164
200
170
235
256
179
130
202
224
212
190
184
243
229
208
263
185
197
200
130
220
234
199
200
225
163
179
225
192
216
243
141
165
182
178
192
238
215
190
191
225
191
159
209
181
191
176
197
229
217
170
200
223
181
177
208
202
148
173
205
138
192
205
272
234
128
195
250
263
248
162
220
220
195
217
205
135
172
157
219
217
150
134
228
227
233
170
176
203
176
153
130
200
173
158
180
268
261
193
217
232
198
169
200
235
198
221
208
235
178
142
157
173
217
194
238
224
128
246
119
196
258
162
166
155
195
244
137
183
202
185
213
147
249
127
193
151
198
276
250
218
204
229
233
205
185
243
251
159
177
219
204
238
182
156
241
170
166
242
173
206
206
213
248
206
242
183
191
220
226
234
215
217
199
128
167
208
217
184
166
209
261
179
238
215
185
186
184
217
232
238
205
197
178
198
233
220
180
172
219
187
151
225
142
141
257
229
226
153
207
216
191
196
253
223
191
200
220
239
141
245
203
248
164
223
177
206
289
148
134
204
242
222
223
207
215
242
217
245
177
226
202
218
211
268
105
168
196
204
231
247
159
136
219
190
181
213
198
237
272
200
192
173
221
186
179
156
191
168
200
188
183
182
187
192
248
193
190
183
261
166
193
188
192
201
199
193
197
203
200
221
238
171
226
219
162
234
203
193
220
181
157
173
175
166
245
241
255
204
226
231
237
208
244
222
195
171
202
201
192
195
140
223
249
176
272
173
221
203
197
204
219
234
184
226
191
121
200
261
181
236
202
220
255
212
224
244
214
256
214
193
137
177
195
202
190
197
132
196
201
201
106
235
183
224
239
125
174
231
198
242
180
206
240
238
187
197
151
210
153
243
227
195
230
152
229
228
174
207
242
186
212
197
185
143
123
152
118
182
160
176
141
223
180
179
256
245
205
174
234
138
193
176
204
256
166
211
227
163
239
253
225
234
183
126
202
228
166
266
171
225
148
167
175
220
200
182
196
207
239
237
162
184
100
193
201
169
175
174
193
210
205
152
212
137
215
219
199
230
159
243
135
186
255
144
180
212
163
210
191
180
234
145
124
131
196
154
176
208
208
187
169
194
206
151
227
202
240
164
247
222
224
170
218
286
126
230
245
214
250
157
253
220
142
186
152
162
228
209
181
236
199
173
209
184
244
201
113
201
143
197
158
172
163
184
209
192
146
185
144
188
234
127
189
252
170
174
245
129
205
179
191
218
147
269
225
189
212
196
176
209
195
240
219
239
228
225
127
165
224
199
217
247
193
247
168
216
203
212
230
111
261
174
159
172
185
233
153
182
273
171
255
270
203
238
223
217
176
204
160
217
193
195
157
163
221
153
183
185
183
177
274
186
257
199
215
171
174
240
181
175
167
134
199
230
219
165
182
206
189
215
202
220
154
187
140
122
223
226
218
169
212
208
190
234
226
207
206
202
143
213
181
182
208
246
158
171
191
300
229
185
250
188
174
176
150
182
224
123
228
204
158
201
213
204
217
165
190
221
233
155
131
195
236
198
143
159
217
219
208
204
260
184
189
204
170
163
207
250
233
218
225
222
221
199
243
133
175
226
216
232
178
195
213
197
220
241
237
251
165
215
178
172
232
184
178
195
224
246
134
209
135
207
190
210
232
177
206
208
172
143
196
200
203
242
183
193
215
161
283
161
129
218
216
205
217
240
188
229
171
246
178
197
175
261
183
223
266
215
139
196
221
249
211
218
180
183
215
223
238
201
181
194
182
147
205
225
130
220
183
208
197
189
261
229
169
223
215
224
167
172
191
224
158
242
190
193
227
217
221
199
171
259
185
180
213
215
224
239
247
251
207
248
229
232
188
188
225
154
135
177
232
104
201
202
162
212
187
183
197
209
217
232
202
220
214
162
251
222
193
193
186
214
164
108
295
188
202
189
201
214
189
232
150
189
237
211
159
200
174
123
213
150
189
173
242
267
214
222
188
213
232
192
243
208
227
274
190
222
208
232
254
115
183
195
205
160
195
223
175
235
150
214
272
192
168
193
209
181
254
237
227
205
187
237
187
195
205
184
226
204
216
231
219
148
210
217
169
180
227
224
127
160
152
223
255
180
186
192
161
212
245
150
178
267
189
196
238
154
272
186
166
232
214
199
246
211
141
146
175
190
208
179
163
201
230
146
171
189
199
233
197
217
148
204
246
175
191
194
186
235
181
225
211
193
197
222
160
249
229
260
144
244
214
175
203
106
242
245
173
214
252
184
182
215
206
194
252
257
226
180
205
236
222
158
186
266
256
161
208
201
175
198
210
138
230
259
199
204
170
226
233
146
191
180
186
205
212
210
173
202
158
273
201
199
253
198
209
185
174
203
242
234
222
193
161
212
185
208
187
180
146
242
169
226
204
166
236
180
179
230
178
192
243
186
233
260
139
189
162
170
228
227
193
150
180
183
180
255
195
162
202
219
227
173
231
199
221
195
211
174
202
234
235
226
199
189
195
198
164
199
186
213
210
189
206
201
189
203
178
215
206
146
266
202
254
199
222
220
233
195
202
263
194
260
223
179
238
198
232
200
199
223
164
224
227
213
217
242
269
213
199
161
239
222
195
184
182
199
150
218
215
196
213
204
210
216
217
205
192
208
206
134
229
172
218
224
201
112
172
254
267
173
226
179
93
136
124
141
222
119
274
173
189
230
166
191
138
247
190
265
216
241
239
196
190
170
211
194
267
168
234
247
175
236
174
188
163
212
269
192
232
183
226
199
204
184
164
232
242
168
203
186
180
211
196
246
238
202
218
171
161
204
227
174
170
184
211
221
249
190
180
233
212
241
171
205
247
256
136
242
229
228
192
199
152
167
197
223
209
225
167
259
224
266
200
191
106
172
175
211
164
241
185
180
228
150
183
216
212
290
181
229
174
174
209
182
214
228
183
240
211
184
159
154
220
171
208
217
244
224
219
168
154
253
140
181
218
129
189
164
166
201
179
258
153
198
171
187
141
215
229
239
247
217
202
267
167
206
169
215
268
228
211
207
207
196
234
154
199
183
182
174
224
203
222
183
196
230
225
224
176
171
188
169
182
149
210
188
160
157
159
237
143
200
143
239
187
248
196
153
193
194
200
206
200
171
132
235
208
251
249
228
242
230
189
237
218
146
172
193
208
166
236
215
140
167
223
268
258
212
249
238
178
242
249
149
247
208
207
220
153
178
238
178
211
192
211
233
168
148
237
179
231
233
196
178
222
193
229
148
201
167
202
203
217
138
190
175
160
210
201
228
208
255
239
192
174
173
220
201
180
155
163
240
219
212
192
220
228
200
276
223
194
190
244
170
212
177
162
153
171
209
238
273
159
218
186
200
219
169
166
233
210
202
162
182
217
138
187
181
221
198
199
183
198
263
245
235
200
190
261
158
177
196
263
207
230
248
211
197
252
241
134
224
251
220
221
168
251
156
189
212
184
196
281
186
201
193
149
204
248
174
197
200
252
222
238
135
184
227
138
225
181
196
195
263
171
196
140
212
205
191
263
213
182
178
206
167
209
208
164
267
232
135
192
147
225
216
202
155
191
283
208
225
212
204
217
191
181
227
206
188
203
192
211
262
199
167
222
155
185
262
195
249
263
223
218
223
254
136
208
219
207
216
243
173
207
236
195
260
180
229
182
218
216
174
162
164
249
242
195
211
149
188
170
217
152
278
222
203
190
154
193
205
224
195
238
184
182
230
257
229
195
187
203
168
220
227
212
225
235
186
224
246
206
233
201
190
140
208
261
206
216
254
211
189
187
207
192
174
253
205
153
172
214
286
181
177
115
236
232
236
212
265
219
198
181
139
210
123
174
236
185
212
249
284
175
200
200
221
150
185
226
220
194
229
215
172
219
196
190
143
238
185
207
207
223
222
169
213
181
256
186
243
194
191
141
200
172
211
249
235
224
222
211
240
187
194
245
225
175
200
146
222
170
186
245
189
255
214
207
228
154
279
172
136
230
218
162
203
216
220
212
226
162
120
208
187
233
201
244
189
232
252
117
242
153
200
185
182
195
225
214
233
230
200
210
214
208
288
208
208
159
216
128
249
217
227
167
213
153
172
194
243
239
197
223
267
204
227
152
148
175
249
229
240
208
184
171
253
190
238
244
232
225
220
164
191
164
123
284
200
239
203
239
167
215
184
198
197
180
226
219
231
195
207
200
163
179
245
129
235
199
252
196
159
184
235
197
216
169
245
197
203
168
153
171
168
203
163
200
245
186
248
216
218
175
236
265
254
255
214
215
155
213
173
219
247
191
185
214
209
130
175
232
209
267
270
260
209
182
207
174
166
206
247
237
214
214
184
176
200
195
232
161
212
215
146
258
213
164
209
227
171
195
138
171
171
175
272
205
144
239
179
188
245
197
219
166
149
245
213
197
172
216
218
201
155
194
214
219
195
204
167
266
170
183
212
192
200
207
156
172
223
223
130
244
151
166
223
163
235
177
221
224
262
205
242
183
260
207
172
226
183
183
190
218
238
207
162
126
175
150
251
177
187
194
140
211
191
199
264
210
192
186
222
175
241
142
208
231
207
192
269
178
216
226
241
217
202
181
184
146
231
219
222
190
226
213
208
151
242
215
179
220
196
177
78
224
179
246
193
183
193
202
181
170
220
181
220
207
217
154
191
223
206
181
229
200
259
206
240
187
197
206
213
164
186
153
200
162
223
250
221
169
204
228
172
155
237
192
191
196
220
223
198
184
216
251
186
171
172
156
174
153
182
258
199
176
227
194
188
223
248
180
208
174
203
253
193
152
228
211
218
192
221
237
164
229
178
181
136
209
212
267
236
169
204
235
211
277
218
196
149
185
184
185
209
169
173
211
167
226
222
246
226
182
236
233
192
193
173
178
192
216
267
220
124
130
105
137
200
225
169
232
168
203
193
171
117
249
270
204
187
130
236
188
173
202
241
259
162
136
132
183
244
176
153
271
183
210
200
162
223
208
163
201
189
194
236
214
207
262
199
208
186
151
200
137
174
163
223
243
178
155
180
179
225
124
234
239
194
240
218
214
227
141
213
281
167
206
180
162
217
182
226
196
148
204
165
181
191
173
202
163
174
222
242
177
182
224
260
195
235
231
216
188
164
212
254
77
230
225
192
179
229
139
212
197
218
172
189
180
155
181
219
211
227
191
244
157
204
193
122
176
234
162
119
185
272
245
178
233
189
169
157
223
151
218
227
213
201
248
224
228
205
223
198
180
230
242
272
133
257
179
196
152
209
178
182
183
166
227
141
181
252
183
199
268
196
210
204
248
180
160
152
239
224
224
170
172
211
179
168
251
181
234
244
175
220
193
248
207
188
259
206
215
237
137
229
171
149
151
220
126
248
181
189
166
188
225
232
221
179
201
236
204
188
209
154
183
203
230
182
277
276
184
180
162
214
113
215
197
200
225
182
225
223
174
160
184
224
152
184
205
177
220
167
225
170
161
216
204
185
190
238
185
191
221
244
218
224
274
227
172
202
165
181
172
170
172
215
149
261
205
206
186
177
221
109
185
208
156
146
252
182
233
193
159
187
270
171
197
201
223
223
221
160
231
175
189
199
200
196
181
215
235
200
231
220
215
276
211
220
200
236
243
194
231
220
166
178
238
151
156
182
220
200
211
183
198
163
212
206
208
212
216
211
192
242
180
269
154
271
203
171
251
259
245
209
219
179
162
204
212
263
223
207
231
210
190
202
153
184
225
190
154
199
221
224
243
217
225
248
178
180
199
191
185
186
244
236
187
249
181
125
140
178
265
200
246
197
130
200
192
217
228
205
209
132
190
164
216
226
231
156
213
175
195
238
145
232
193
237
220
214
184
218
185
205
227
124
166
180
212
208
136
142
138
227
214
159
177
255
176
247
225
195
159
151
236
198
223
277
177
198
183
210
164
255
238
241
239
252
202
197
166
217
220
167
142
194
220
115
199
232
205
210
191
177
255
203
228
211
222
200
216
209
189
234
203
187
262
191
188
194
148
259
175
195
169
206
185
175
234
206
232
198
162
194
173
139
218
201
216
218
232
217
195
177
207
263
192
224
205
186
208
200
185
205
191
182
205
193
206
197
228
180
248
185
188
212
191
180
167
205
212
193
178
203
206
164
212
211
253
195
259
202
150
246
172
226
224
252
235
212
229
210
210
243
219
236
197
170
245
211
175
207
168
178
211
170
217
182
197
225
220
206
213
173
199
194
211
235
200
231
236
177
173
192
199
211
235
234
212
149
173
214
211
172
165
173
234
233
243
187
191
200
178
189
217
167
198
145
170
223
185
197
219
162
228
179
198
186
218
245
273
262
182
154
180
191
167
179
213
213
195
177
214
231
206
180
213
215
201
263
209
195
217
171
208
203
226
197
125
216
119
198
209
259
187
193
208
210
224
176
244
218
248
219
152
196
155
203
223
213
201
229
160
175
266
233
198
226
258
126
128
190
234
181
237
234
199
150
69
218
186
187
224
203
222
196
174
227
151
198
193
226
197
205
249
241
234
180
201
221
160
193
185
225
238
150
137
185
182
241
197
187
131
202
152
211
150
275
237
239
191
197
216
271
180
224
228
180
227
154
251
242
171
209
227
160
179
149
116
260
202
222
146
186
242
221
170
211
192
137
168
220
183
194
183
168
198
279
248
198
215
179
187
217
213
238
214
189
219
189
143
210
222
220
240
228
175
174
176
186
148
169
158
213
183
294
188
185
163
204
169
223
150
186
230
150
211
216
160
189
214
227
206
152
210
193
204
185
219
155
197
146
193
280
128
250
184
234
199
200
148
245
193
205
162
203
156
133
266
217
220
179
153
179
266
209
218
258
168
176
236
187
171
153
246
260
190
190
142
177
207
193
167
201
221
143
175
164
218
177
126
194
180
185
233
225
207
217
194
181
201
201
185
152
211
182
167
217
172
177
185
182
196
221
234
202
154
226
235
147
244
226
187
205
163
222
202
191
268
218
175
225
190
244
175
216
185
174
176
193
214
224
112
209
189
86
174
178
212
218
150
169
210
246
231
145
179
283
182
193
207
203
204
192
189
224
233
174
239
232
156
169
226
188
171
231
152
134
150
174
212
249
201
203
206
217
180
224
210
222
151
180
157
171
206
178
231
188
264
156
151
224
239
201
214
207
128
136
235
191
186
307
184
178
216
175
235
165
172
203
192
206
177
196
230
263
216
179
217
219
241
165
164
225
210
176
207
223
156
178
189
211
207
194
190
253
222
229
204
244
200
222
242
234
200
209
270
157
198
147
205
183
198
191
195
257
224
212
216
173
166
250
167
213
246
213
225
245
158
163
248
203
151
286
207
194
200
247
204
194
195
165
212
234
225
234
226
201
220
222
155
185
125
233
172
162
180
143
226
247
197
230
228
233
228
219
235
170
191
215
181
167
228
202
174
187
209
178
236
170
224
178
187
166
161
156
145
222
189
171
206
231
89
204
224
117
203
223
215
212
221
177
174
179
235
164
236
197
209
165
219
228
145
236
251
221
247
188
218
210
195
135
186
234
163
226
205
199
237
248
194
200
218
197
229
264
202
173
140
246
164
192
207
244
159
169
223
219
231
195
178
232
208
204
187
173
195
231
201
170
160
182
190
144
157
219
246
246
160
219
200
254
131
205
236
173
179
194
156
170
213
245
174
242
227
215
195
221
237
165
195
229
162
131
190
280
214
214
159
104
195
224
130
224
208
254
193
131
203
265
193
218
152
171
219
186
204
190
239
232
174
223
146
203
207
275
200
137
154
225
230
208
227
140
194
170
175
238
180
260
145
200
220
163
222
206
162
182
215
198
206
138
216
159
171
144
179
221
235
148
252
228
244
186
219
221
249
187
133
219
201
191
154
163
206
180
169
220
192
181
184
175
268
170
241
218
246
241
229
194
171
178
195
196
229
226
187
208
200
196
194
212
186
209
192
225
279
144
215
151
216
210
202
206
155
247
278
169
170
171
145
203
205
240
292
248
187
216
194
217
291
228
203
186
171
164
194
205
211
244
201
199
225
179
221
127
193
198
193
167
209
221
158
258
238
206
189
209
201
262
150
191
223
162
187
247
205
217
186
184
233
172
210
242
220
212
238
163
198
176
246
230
229
190
212
194
202
219
183
181
214
159
234
239
167
171
203
160
186
195
133
236
152
179
203
242
172
170
208
155
238
255
158
224
237
182
177
192
204
204
219
179
183
198
221
218
176
161
175
151
196
220
179
196
268
176
219
199
167
184
234
230
183
176
206
250
241
138
187
131
202
220
175
202
212
218
200
159
218
277
223
236
192
194
171
224
199
215
208
154
207
197
201
186
202
208
210
174
176
98
224
244
186
170
193
211
211
172
190
230
182
195
206
176
249
226
216
196
175
141
203
268
211
313
179
174
158
164
171
195
132
177
209
224
201
195
194
168
158
195
230
205
189
178
265
245
198
212
226
194
242
118
184
199
194
161
195
150
195
181
177
182
238
125
221
215
209
170
188
210
231
229
252
201
152
194
206
198
204
191
281
170
209
133
178
179
187
197
159
262
180
189
207
207
240
208
224
199
173
181
189
215
200
144
227
214
205
166
259
221
187
149
244
182
199
229
234
254
246
109
222
255
203
194
208
175
225
192
176
203
188
196
218
223
207
199
157
189
213
225
194
225
194
194
218
140
202
213
162
166
152
272
226
197
149
212
212
226
197
224
203
198
204
199
205
168
216
144
189
223
192
143
174
196
203
238
140
170
171
142
206
203
174
186
205
153
217
194
149
206
193
221
205
240
199
198
169
187
214
228
195
192
174
154
186
185
255
214
263
232
148
197
185
208
188
215
185
211
258
167
235
235
211
218
169
132
188
231
207
228
195
198
201
157
238
205
207
238
231
206
163
244
205
197
194
218
201
220
217
230
188
172
187
208
222
193
177
236
172
220
200
204
175
155
214
198
153
226
176
147
257
244
218
228
250
204
186
207
234
201
182
190
217
114
259
248
206
193
221
236
197
194
233
234
288
221
131
261
156
200
250
210
177
167
273
258
135
168
175
174
215
221
208
197
220
241
151
212
161
230
216
170
240
174
186
219
142
167
187
226
188
195
175
176
227
173
203
130
181
179
284
246
228
277
245
157
247
170
216
203
181
183
152
238
280
230
166
183
185
154
194
180
169
172
196
211
203
205
167
239
144
183
207
226
126
249
240
215
215
240
210
173
205
251
220
213
213
191
164
200
201
187
97
168
217
193
185
151
188
255
218
208
213
199
217
267
143
202
161
197
216
207
164
170
187
167
238
189
107
189
186
153
174
188
190
213
208
190
236
131
216
187
218
153
269
180
217
151
168
219
172
228
203
158
213
265
156
208
228
165
159
188
177
246
155
165
196
132
185
172
191
249
188
183
198
218
220
207
242
255
184
157
154
221
198
178
241
176
217
243
129
262
205
226
159
187
235
238
165
256
232
213
223
183
250
263
235
238
229
145
148
220
167
202
151
200
221
175
196
216
236
171
174
230
172
177
230
224
199
252
164
201
225
179
245
198
188
116
228
167
251
196
138
163
203
202
252
204
243
198
211
270
74
195
181
200
207
215
233
249
231
171
194
205
192
233
198
221
225
179
112
211
238
220
201
222
215
244
205
242
143
234
215
201
227
221
217
247
184
199
241
199
206
183
191
182
253
204
243
211
235
189
162
224
277
254
215
194
199
164
181
182
182
211
159
122
224
154
157
119
161
230
198
190
170
203
246
180
173
195
243
223
195
171
244
201
168
144
220
205
254
142
226
206
218
192
179
169
205
177
253
215
116
175
199
210
171
225
237
130
179
117
224
214
175
216
164
206
177
184
222
187
219
168
205
168
218
222
191
205
188
255
175
156
135
177
196
237
209
205
220
157
195
218
133
178
230
157
207
235
223
251
221
241
175
245
196
136
198
213
152
203
173
174
200
179
170
180
192
222
148
221
238
134
212
172
221
163
242
224
182
205
257
239
220
181
169
241
267
256
200
208
194
166
235
213
236
231
197
213
242
251
147
189
220
255
195
147
226
153
246
270
198
179
195
205
201
221
170
191
173
224
202
240
186
256
255
164
201
213
221
160
213
167
210
220
254
129
235
169
250
131
192
264
191
196
212
132
215
250
191
201
191
175
221
168
200
141
204
222
221
204
130
252
150
176
196
243
219
238
137
249
213
178
258
166
192
253
188
222
174
167
181
174
222
258
188
242
145
203
179
157
278
177
240
204
164
198
164
252
167
183
159
218
211
171
184
153
205
236
142
216
245
193
257
211
158
179
218
214
236
214
172
236
160
178
163
217
228
182
174
191
255
215
241
232
185
136
122
221
202
241
204
190
180
228
228
226
202
140
130
173
168
262
135
182
208
185
180
194
232
136
239
186
217
213
147
154
143
256
186
226
152
286
214
170
187
215
204
213
232
234
219
229
234
232
222
145
196
204
227
214
183
189
195
145
186
247
237
163
173
206
218
181
173
181
164
201
242
181
165
197
218
152
210
173
180
245
219
186
215
193
167
188
166
191
229
222
222
205
221
236
247
156
199
172
170
259
146
175
234
192
157
177
151
219
284
168
177
131
188
211
249
194
211
164
146
238
178
188
234
147
233
192
219
162
133
222
211
194
214
148
173
174
153
145
179
253
203
119
138
215
239
237
234
234
250
189
135
241
205
214
170
216
239
235
216
201
223
190
227
143
217
259
163
211
228
188
201
207
198
172
215
197
225
167
220
226
157
220
229
214
187
182
243
209
189
217
144
242
191
225
177
181
207
233
243
187
166
218
183
220
140
176
187
209
200
243
205
225
243
242
182
144
176
176
188
250
219
207
215
193
232
215
188
152
239
150
211
202
153
163
227
249
208
220
252
213
192
143
210
193
169
218
114
248
192
130
249
225
163
92
155
192
265
242
181
156
216
218
157
254
212
179
197
189
218
183
221
134
147
219
171
199
216
228
209
198
180
188
226
200
117
251
154
217
254
231
159
148
193
169
203
235
213
158
176
208
246
176
165
194
196
260
178
262
259
270
207
226
184
190
203
194
186
192
165
213
281
164
269
196
162
185
135
185
216
200
211
222
133
189
269
189
169
215
217
238
216
192
156
181
185
199
222
157
215
204
140
205
176
172
229
236
187
226
131
206
183
162
222
180
173
178
170
200
231
199
222
174
209
162
178
200
166
212
144
217
200
230
246
191
260
225
219
242
207
187
121
221
123
173
227
208
176
251
156
181
247
219
206
208
263
251
173
159
191
181
207
155
215
193
218
183
251
178
221
238
248
171
186
225
185
168
220
197
185
148
203
292
203
238
184
175
202
235
203
186
186
148
158
219
232
212
211
169
155
171
223
122
144
226
214
171
208
222
169
123
189
207
203
203
184
181
266
185
250
221
229
172
133
181
148
227
205
222
262
212
190
209
260
212
184
219
180
207
208
182
219
261
224
238
219
201
196
235
176
211
185
214
165
254
166
226
160
219
181
221
244
255
154
157
153
256
191
154
192
165
227
215
147
220
202
189
252
235
216
239
194
136
215
236
216
164
193
270
192
194
166
193
161
218
208
220
248
164
165
229
208
213
204
167
226
259
206
186
215
205
164
252
221
250
107
151
214
185
209
199
226
224
228
146
170
217
284
167
209
217
164
208
192
206
233
208
222
248
219
186
227
248
191
183
249
177
123
264
224
190
163
188
204
281
231
218
276
205
249
235
177
205
171
258
204
210
198
140
200
126
202
208
98
232
139
208
245
213
236
171
228
221
216
202
220
192
241
157
245
95
149
205
169
206
160
173
201
177
111
152
230
226
206
250
192
226
159
211
199
152
184
224
205
104
191
277
208
265
167
269
222
211
201
245
161
208
175
244
256
238
221
206
233
184
209
199
213
164
239
194
184
145
219
171
221
162
209
203
202
141
211
210
221
192
227
223
182
200
258
200
260
198
160
276
205
244
167
204
230
217
174
158
141
191
242
217
150
201
239
186
197
200
222
250
230
208
237
208
221
210
211
183
216
76
120
239
243
167
197
238
204
215
245
264
148
173
174
174
249
136
262
203
247
189
217
208
209
207
283
182
216
166
189
205
203
174
142
202
211
200
234
170
206
152
247
125
204
216
216
189
186
213
173
175
155
230
197
233
175
209
160
177
182
207
159
208
231
302
191
259
207
184
214
191
250
201
167
187
245
208
223
202
199
236
221
231
210
177
190
172
219
130
198
232
219
211
238
196
181
200
218
189
226
218
236
188
145
193
187
186
259
162
207
256
225
202
157
183
200
183
244
279
130
192
206
237
230
191
217
172
213
206
133
207
180
193
207
238
189
244
168
242
206
165
175
178
151
231
208
217
230
212
176
187
195
202
231
182
141
249
201
201
243
157
201
163
159
148
226
175
240
219
261
202
144
161
197
268
193
201
201
209
192
237
172
254
187
175
247
169
222
193
202
172
159
233
237
214
202
183
196
177
199
169
175
222
141
151
205
229
140
247
175
186
220
220
227
210
232
243
177
183
220
181
263
132
193
252
188
227
166
219
262
199
207
231
220
211
194
165
266
173
244
212
198
200
168
187
200
179
204
183
188
236
241
136
195
215
186
222
205
185
149
166
205
175
157
225
175
153
140
192
272
201
148
181
241
212
194
186
227
246
187
230
210
185
184
207
277
220
157
252
227
196
157
245
167
215
225
212
187
183
184
188
196
180
201
189
169
212
203
224
197
203
190
192
269
177
192
212
191
264
207
168
176
131
212
181
267
200
219
222
232
163
229
243
230
215
221
237
210
195
197
160
171
232
235
188
164
271
198
189
116
219
184
190
215
231
170
206
191
207
191
225
173
216
186
202
203
213
163
222
167
207
216
173
221
201
136
213
242
142
179
201
217
200
264
226
186
200
212
212
203
213
274
173
206
202
213
166
198
205
192
203
197
126
168
181
242
254
224
239
163
220
211
155
246
212
188
226
185
172
210
240
224
223
193
227
220
219
221
158
262
154
228
163
205
199
187
235
173
174
178
188
264
177
215
239
241
226
227
160
125
230
195
196
192
182
245
231
228
203
167
177
192
201
178
162
195
183
216
135
252
248
222
219
143
160
217
233
209
178
229
277
162
249
184
183
246
180
206
179
196
147
208
182
247
184
201
256
166
212
228
168
213
261
227
224
133
235
178
195
241
190
207
130
195
210
155
192
234
218
165
154
213
256
166
203
185
179
238
228
195
239
181
169
204
266
182
227
275
167
146
193
170
205
184
206
223
243
186
195
179
227
199
246
221
223
269
211
183
247
218
203
161
192
201
204
185
236
201
229
211
217
188
218
245
212
168
213
202
239
171
219
179
188
216
245
178
187
225
234
135
253
210
170
171
175
151
145
204
176
200
226
206
188
188
203
183
182
178
220
256
187
181
178
222
249
186
243
181
181
189
184
230
212
208
239
169
191
182
228
163
176
158
215
144
123
198
169
226
134
160
167
178
159
165
212
189
210
180
226
185
193
184
224
142
245
236
204
221
181
183
183
223
208
224
228
207
191
268
230
179
205
177
227
233
231
105
193
185
215
211
236
191
202
209
217
230
229
212
190
192
226
196
294
164
204
214
223
234
115
209
240
136
192
202
168
147
219
206
213
223
210
198
116
258
172
210
148
202
200
230
131
186
167
218
190
235
132
230
203
215
245
303
174
199
175
217
177
185
220
214
188
206
183
202
134
188
174
242
201
233
192
200
192
246
225
217
251
114
201
183
146
225
148
223
246
230
218
212
178
233
196
183
154
216
190
169
170
246
188
143
135
186
163
197
200
204
232
184
205
190
157
272
211
200
256
181
230
193
177
241
192
272
194
179
154
245
241
199
210
230
215
165
225
224
185
232
166
121
180
232
186
175
126
178
213
236
213
237
146
196
95
188
204
217
183
225
185
206
183
168
210
138
201
225
256
234
193
135
211
174
185
193
218
217
168
208
235
226
217
245
207
176
228
239
190
159
181
176
167
143
257
201
192
226
246
144
155
215
270
226
239
203
210
182
230
214
249
171
200
196
96
195
208
182
219
172
245
227
211
147
212
241
214
183
151
234
203
152
188
213
228
233
214
157
154
267
197
162
221
195
187
169
183
288
168
163
151
245
176
206
186
205
230
154
232
209
147
215
205
163
182
206
164
144
184
271
155
157
238
256
192
189
184
153
269
226
244
252
198
217
193
194
220
238
149
197
159
194
228
217
157
164
193
220
206
153
275
232
192
234
175
197
190
220
272
165
172
201
186
165
197
254
169
171
236
178
211
226
147
175
189
234
231
183
196
149
193
220
240
198
196
225
135
212
203
213
205
167
156
205
196
226
155
185
184
241
195
238
152
212
242
246
186
174
154
239
135
180
203
256
151
198
192
162
196
237
218
215
226
193
247
211
184
169
226
225
242
182
169
239
164
195
199
191
204
202
189
232
174
214
176
147
197
235
184
203
196
102
203
219
259
234
194
204
182
169
214
237
177
185
177
244
232
180
160
216
174
172
182
211
233
200
253
232
207
207
243
249
199
248
187
222
211
198
162
236
202
205
201
217
234
254
279
208
159
199
175
252
239
181
248
206
209
216
187
225
159
189
176
226
256
246
260
143
157
157
151
233
194
164
265
235
194
208
226
156
216
226
165
241
199
166
184
184
237
187
142
174
250
212
147
203
242
231
124
176
183
193
184
122
212
195
176
208
263
242
223
203
166
216
132
200
207
202
174
195
188
180
221
153
162
193
198
214
241
232
203
132
178
180
172
131
247
187
197
206
243
230
208
215
209
274
245
212
171
259
220
182
189
226
159
137
223
179
240
171
164
169
221
183
184
196
271
238
252
207
222
162
195
192
188
198
235
180
203
198
186
257
173
143
187
251
210
233
225
182
167
198
179
214
204
238
212
211
154
240
234
167
197
208
162
164
183
170
185
201
183
242
242
231
218
186
193
183
222
207
233
317
203
207
278
295
212
261
189
259
173
220
147
234
204
182
248
198
205
145
203
248
236
131
164
138
209
203
212
247
178
186
209
226
262
150
169
147
166
200
202
186
247
198
188
182
255
179
209
151
214
220
199
216
214
190
248
238
181
216
157
153
178
152
229
172
147
159
102
133
154
244
197
193
129
208
213
172
203
222
148
184
180
151
227
191
219
227
204
161
232
154
233
165
190
217
254
220
140
201
156
203
248
221
134
221
158
213
193
222
280
237
204
184
145
175
187
254
197
185
218
204
192
240
235
218
176
210
115
205
197
171
210
218
198
254
225
286
177
211
143
199
261
214
251
191
162
194
199
248
203
270
264
200
243
178
264
187
171
202
220
115
173
124
191
223
197
198
252
211
201
165
247
176
160
211
219
198
211
185
181
139
229
205
216
139
179
177
163
237
203
159
193
180
137
180
154
163
252
223
217
208
210
191
174
182
213
192
163
191
181
136
190
151
172
145
196
240
161
173
201
161
202
183
198
215
230
216
216
158
233
191
206
154
191
214
218
244
143
180
211
236
247
198
162
265
190
233
205
192
158
214
223
170
208
170
165
191
236
194
243
203
177
213
211
285
229
213
190
215
243
212
222
216
219
258
187
172
201
155
231
202
183
255
149
205
227
264
174
114
223
229
164
259
250
215
193
271
218
197
159
159
214
171
156
139
249
145
226
158
197
209
156
228
243
171
238
145
196
214
147
169
212
231
257
221
236
247
204
180
210
222
177
257
195
194
226
226
149
237
213
163
222
160
185
170
221
174
237
219
247
240
189
245
213
167
240
255
236
130
197
146
154
187
176
196
265
164
219
200
217
219
222
188
200
185
173
216
151
156
241
243
159
241
204
165
196
230
209
163
136
235
191
205
216
227
205
141
158
228
263
218
230
224
151
175
180
190
157
221
243
217
219
160
219
151
211
255
203
229
230
170
186
195
206
160
195
230
239
200
221
157
135
250
222
197
186
201
206
175
250
243
254
183
163
194
154
192
241
245
181
155
189
149
208
234
240
127
261
223
183
134
203
228
208
198
228
210
207
275
213
195
205
181
196
226
215
232
138
195
181
244
177
191
242
230
235
193
208
242
213
215
159
172
235
172
182
143
227
213
202
259
159
238
222
218
221
175
210
184
199
173
162
171
151
201
173
174
198
161
232
225
171
209
126
210
212
211
250
194
204
171
194
177
204
203
170
263
261
214
223
141
217
203
173
200
147
232
207
260
258
116
234
224
229
259
171
178
149
244
192
161
237
201
213
205
202
182
228
162
163
182
207
198
228
213
120
227
164
160
214
248
181
239
175
163
152
202
217
164
162
154
239
185
200
159
206
191
189
201
216
219
178
197
176
214
216
196
266
209
214
245
222
156
103
227
177
201
252
266
202
182
123
206
220
198
170
279
194
226
216
253
258
206
236
218
248
216
184
220
191
158
180
202
218
217
235
175
211
192
141
207
210
191
193
205
197
214
200
130
249
226
231
214
230
164
224
218
122
229
148
235
176
209
249
244
238
219
228
190
220
214
207
245
180
191
181
182
151
201
196
165
249
214
188
167
205
214
132
246
280
223
210
220
126
183
122
230
234
217
227
186
217
200
216
242
184
235
197
179
251
256
186
193
187
215
181
226
167
207
137
221
227
191
204
192
183
167
189
246
195
193
164
208
166
228
207
211
201
253
232
228
226
218
220
224
198
221
272
268
196
147
202
237
174
207
237
168
179
224
195
205
163
195
167
220
203
226
177
198
226
133
158
228
218
199
253
182
223
257
221
145
201
190
230
230
166
215
171
225
253
178
171
197
143
209
141
177
185
221
212
213
258
223
203
143
178
159
184
194
156
171
229
242
175
227
165
222
245
184
222
213
165
247
142
241
160
193
176
207
183
232
244
171
198
127
214
166
188
253
256
222
171
147
198
169
160
170
244
213
131
219
164
178
138
228
215
214
152
198
181
265
244
170
201
200
113
187
215
206
131
206
195
177
176
136
198
224
166
171
156
261
273
243
204
209
237
207
258
260
172
227
128
203
153
228
195
223
187
143
175
191
265
226
243
142
255
173
212
178
208
174
189
188
160
173
230
201
219
185
191
184
142
229
218
196
199
199
142
123
192
151
138
158
196
227
242
180
190
226
237
174
204
137
210
195
212
150
196
181
207
162
180
226
198
277
218
175
194
234
166
258
187
224
179
242
200
204
201
249
149
153
251
105
169
148
220
184
222
184
233
214
253
191
275
225
174
168
184
224
184
213
214
148
234
212
245
157
207
205
175
203
165
217
204
245
189
220
169
161
222
234
269
251
238
212
204
201
230
196
217
143
104
173
189
200
151
170
160
215
215
205
173
217
236
204
198
194
244
260
222
217
222
213
141
202
236
215
198
205
224
116
245
186
204
125
191
169
174
242
166
102
271
175
214
220
189
228
184
179
215
141
192
148
187
212
214
198
201
171
220
242
244
209
232
112
140
188
221
227
215
214
223
174
212
225
203
211
202
208
232
233
222
245
205
215
225
203
171
220
131
239
202
164
163
207
235
203
190
166
196
184
133
220
283
203
173
203
109
155
228
180
238
218
183
190
196
195
204
240
230
138
222
234
162
219
148
252
228
145
219
196
162
189
223
202
185
236
253
191
136
220
196
198
275
218
250
222
187
184
172
159
195
220
205
204
166
151
295
226
203
155
224
219
144
124
152
212
200
111
197
151
255
220
208
234
234
173
238
215
205
185
202
198
178
216
231
164
169
177
193
265
166
212
223
158
225
196
215
187
229
165
183
173
222
187
215
198
180
222
197
168
196
177
182
196
222
73
203
207
165
104
181
194
174
269
130
234
189
149
196
188
158
221
178
177
236
200
152
218
185
268
210
162
177
266
219
151
234
222
197
240
203
190
256
184
174
225
249
235
183
151
190
214
187
207
198
165
190
193
170
227
210
201
264
217
211
143
198
208
197
193
238
185
203
161
159
200
235
218
116
227
231
224
195
236
178
170
165
241
230
203
276
249
234
216
211
196
219
166
255
251
216
216
151
237
209
189
153
193
146
205
260
240
173
260
141
177
182
192
175
230
235
215
222
187
248
185
222
192
234
203
182
228
231
274
147
211
186
175
233
193
184
136
198
216
244
208
213
250
206
212
210
195
188
250
252
241
238
229
247
158
185
217
191
134
207
218
156
186
131
253
236
231
178
224
182
184
213
200
181
153
230
199
178
160
199
220
245
235
236
149
254
226
205
194
129
179
173
160
160
217
230
208
181
170
200
201
161
214
190
175
199
183
219
168
212
171
178
222
251
197
191
235
225
176
207
169
238
141
193
153
232
196
204
199
259
225
162
171
176
169
235
167
187
180
200
194
281
240
196
202
207
225
260
156
242
202
242
204
196
219
265
145
248
174
203
213
243
203
244
228
120
212
257
158
243
206
142
142
220
156
145
260
186
232
173
237
185
206
163
237
206
178
216
223
148
123
169
166
152
252
180
204
175
192
152
252
240
168
221
182
140
171
206
227
226
213
222
202
185
237
178
227
213
220
195
246
237
197
245
270
167
169
199
123
137
241
219
234
214
176
109
220
199
223
240
155
185
269
181
209
180
176
247
220
142
224
211
223
233
207
183
183
258
221
249
225
207
212
237
222
263
144
240
234
214
175
199
124
176
171
246
124
190
151
240
175
221
211
202
201
208
198
196
154
274
188
212
210
183
163
227
203
195
178
258
167
203
218
212
189
215
285
228
245
172
252
190
216
205
188
169
202
241
220
243
203
199
196
241
169
213
203
271
181
205
233
193
266
176
170
201
197
161
195
215
180
194
184
204
199
196
165
189
268
215
138
277
224
201
191
260
220
204
220
154
152
126
193
194
258
164
189
202
200
216
236
190
220
269
212
198
172
143
182
177
184
180
215
145
165
239
158
201
139
192
219
176
113
221
178
222
174
171
186
238
214
170
205
216
209
148
259
259
172
154
150
191
221
214
264
209
184
194
276
219
176
148
221
200
233
206
208
204
166
182
239
223
227
144
206
254
238
225
158
235
181
171
149
191
192
212
171
213
197
184
233
216
191
201
219
218
190
191
246
241
158
174
179
221
207
275
167
192
151
220
143
168
240
182
196
228
233
263
228
185
205
180
153
178
240
138
197
149
204
209
257
183
144
143
229
165
180
147
240
163
178
222
188
222
225
232
194
174
203
236
174
248
181
175
218
187
208
195
184
188
189
153
254
254
148
164
154
211
254
230
153
258
181
137
174
181
138
216
171
206
181
183
211
193
170
192
199
199
225
201
156
205
191
177
212
202
225
175
189
179
206
247
212
174
241
252
256
263
171
193
208
183
118
192
194
248
223
207
141
168
183
222
201
211
236
176
146
183
120
205
153
212
224
216
210
261
197
165
180
131
143
173
238
204
229
177
125
250
179
187
245
222
228
190
211
161
200
237
191
159
181
171
239
170
188
187
218
212
191
221
208
201
212
205
225
181
167
163
157
203
193
216
131
201
138
244
209
177
176
166
178
173
180
148
197
167
210
214
198
208
209
192
196
234
251
221
162
224
182
180
136
114
141
262
196
235
219
272
259
202
155
200
145
245
158
161
235
141
248
233
162
167
246
195
227
183
242
211
265
189
171
193
167
184
154
133
186
232
136
230
222
230
153
196
195
167
213
272
179
257
199
234
220
192
289
208
220
218
195
137
182
204
222
157
193
191
156
142
217
212
197
211
163
199
229
177
216
180
189
187
230
188
204
278
226
149
156
219
252
192
140
173
192
234
216
266
228
165
192
196
173
187
220
264
165
179
235
177
170
234
239
253
159
160
188
213
239
265
208
202
188
185
124
229
174
172
201
245
163
202
228
106
179
194
232
251
168
231
225
221
112
174
189
207
250
219
255
200
137
176
213
195
220
184
269
191
221
187
168
201
216
238
171
209
198
192
215
151
174
185
199
224
291
227
176
219
232
242
239
202
255
189
184
150
182
171
198
114
226
225
216
191
266
207
124
225
218
217
171
204
241
185
228
225
159
180
189
203
225
148
231
190
208
217
201
195
226
196
165
258
178
186
132
205
197
157
159
173
215
205
251
197
221
181
183
171
193
208
162
162
245
218
159
170
252
212
201
188
143
220
205
238
233
239
176
117
187
168
167
204
179
229
149
245
179
208
184
182
185
159
200
191
157
199
128
227
189
198
171
176
259
131
188
153
182
201
199
163
187
215
205
197
212
188
158
177
159
242
257
185
176
159
178
169
234
171
181
210
188
204
252
170
175
232
237
175
229
199
194
164
216
181
203
203
176
188
181
203
142
172
188
198
213
117
203
148
209
174
157
244
173
185
215
193
195
237
235
190
187
246
148
219
194
214
150
178
225
192
233
232
303
109
216
203
266
194
235
169
243
226
210
244
194
177
263
228
184
190
259
204
138
160
204
140
139
256
213
233
212
225
173
163
212
195
187
161
188
257
141
256
201
233
250
209
249
243
228
238
169
256
183
252
244
177
154
267
254
239
195
215
212
254
190
153
205
225
249
136
182
222
182
141
229
184
192
219
230
229
222
217
219
209
187
206
223
218
191
238
188
256
198
229
262
214
169
145
187
141
266
248
111
230
225
217
159
205
192
194
226
128
223
191
162
172
236
211
211
149
177
187
197
180
210
148
207
223
210
164
209
183
154
207
215
280
146
182
235
209
227
221
179
189
216
202
153
184
146
254
211
181
196
173
229
223
230
173
146
171
230
173
157
215
261
166
181
134
227
230
197
240
221
224
241
207
221
240
166
203
228
197
210
175
249
214
154
140
223
162
208
219
170
242
197
189
177
217
196
183
174
159
178
206
237
241
199
188
209
209
167
217
206
200
242
220
206
135
191
183
209
175
154
187
242
181
233
184
217
234
161
124
144
122
185
166
169
201
188
191
223
203
232
245
129
225
192
214
236
196
172
181
235
267
148
197
146
178
165
140
168
223
171
113
244
212
275
165
189
293
171
220
272
184
209
143
182
235
226
208
247
198
183
206
215
195
142
221
206
219
202
152
152
204
209
153
151
223
194
156
192
205
158
240
214
142
199
159
205
173
178
211
269
201
133
238
202
228
217
257
196
105
145
214
256
162
127
253
278
245
211
207
189
166
175
222
212
181
173
230
185
210
234
136
189
250
203
214
193
170
211
233
206
197
212
259
225
173
269
260
214
182
176
227
262
190
225
208
164
195
149
210
216
232
167
252
213
201
205
156
277
212
222
140
225
224
178
246
237
186
226
183
226
206
210
171
183
125
196
162
190
172
173
234
221
227
174
202
149
151
211
196
174
169
214
203
229
225
234
215
208
199
210
230
214
222
208
234
159
224
222
256
204
164
195
201
221
237
215
202
167
237
184
195
203
210
269
181
205
183
139
224
198
224
169
235
221
172
214
158
202
231
194
213
197
241
186
136
217
238
237
138
190
194
153
203
234
151
252
155
268
222
192
182
242
228
278
214
143
213
200
230
175
225
180
209
220
162
171
244
194
208
210
180
213
222
199
186
235
201
233
140
207
179
227
210
281
248
199
194
269
233
214
164
194
127
154
161
197
225
227
219
224
195
198
183
167
154
243
172
176
202
224
182
91
193
199
168
229
138
207
165
226
193
159
202
234
170
203
178
172
179
206
258
191
169
260
180
173
217
151
172
178
155
207
209
237
211
150
202
185
217
134
238
188
134
237
138
195
213
194
128
197
198
214
163
158
237
236
190
214
207
199
218
245
266
168
270
247
200
203
210
200
204
171
203
182
229
179
181
217
163
240
221
173
227
140
155
182
140
263
191
256
192
156
183
202
171
165
205
210
214
229
177
198
162
243
171
198
182
208
207
168
242
169
196
215
195
212
188
266
231
278
164
191
214
227
229
191
195
259
231
187
159
174
227
249
245
256
144
210
178
137
165
234
253
176
241
189
205
176
208
150
229
246
167
231
202
178
234
123
151
176
192
228
230
234
257
179
201
179
149
170
121
210
207
178
198
223
253
172
240
196
195
221
217
250
213
249
233
223
171
203
157
185
167
162
205
183
229
188
158
242
196
157
170
227
189
242
176
134
232
217
220
203
224
229
190
232
202
210
265
166
194
242
223
180
208
249
195
179
195
222
200
197
195
188
212
114
195
174
248
169
112
264
245
158
221
208
210
194
236
261
195
157
240
190
239
188
162
182
244
181
231
193
173
191
155
197
196
232
239
187
246
198
233
269
205
213
256
144
110
182
244
179
212
143
198
255
227
137
225
234
214
225
137
186
214
239
200
173
135
247
183
250
154
191
229
254
178
181
178
201
169
193
244
211
157
213
133
248
162
206
165
207
191
228
190
191
211
148
221
246
190
119
152
168
255
185
203
139
242
262
202
198
131
245
183
198
197
169
203
249
227
208
176
270
139
153
195
234
233
237
261
199
191
222
244
191
184
224
195
208
199
215
153
217
218
164
191
192
202
183
215
129
209
226
229
166
173
215
178
195
122
243
140
180
189
215
171
194
213
199
243
184
189
174
227
194
238
214
218
236
199
245
159
207
203
213
257
210
179
206
157
195
214
204
232
184
183
185
200
232
197
250
289
198
170
147
221
219
221
202
142
183
177
258
230
224
241
135
206
224
243
199
213
201
174
187
196
187
139
223
201
250
187
155
189
227
195
158
195
146
218
222
182
208
232
220
211
214
155
193
205
196
225
165
189
215
143
143
207
195
209
209
207
257
217
213
165
212
191
214
243
198
184
164
180
153
180
240
161
205
204
259
161
191
257
204
194
222
133
220
223
115
159
251
203
168
205
214
205
212
164
198
258
209
149
161
265
225
221
140
215
163
220
194
252
189
201
189
196
160
152
214
145
208
207
187
153
212
225
192
175
180
282
257
262
213
241
249
134
159
210
218
216
187
254
232
192
235
199
255
150
179
159
208
179
207
192
237
186
169
204
206
237
215
242
160
135
202
236
196
184
215
232
199
193
155
165
188
185
237
189
268
230
214
169
195
208
222
203
222
214
169
209
188
236
161
214
193
226
200
201
214
255
202
171
249
240
195
219
204
229
246
182
246
170
248
235
209
211
206
218
156
230
242
139
232
169
219
204
215
213
251
105
248
221
254
225
204
217
125
139
170
203
243
231
237
161
134
137
193
195
173
257
159
196
283
225
269
227
213
166
198
79
188
194
174
209
124
243
216
211
197
162
208
207
205
218
213
206
156
231
182
202
191
170
209
197
204
214
178
180
164
263
220
192
236
245
213
201
190
141
206
190
137
209
187
227
178
165
279
273
207
210
189
176
167
207
171
173
222
239
189
164
166
147
181
206
187
272
220
209
226
243
183
205
218
147
224
240
220
234
161
174
227
190
141
167
218
209
195
151
238
208
250
170
232
181
246
164
202
207
162
178
248
242
198
233
213
158
190
200
234
237
192
164
213
188
198
221
187
220
252
227
218
208
191
230
156
142
181
226
216
238
221
252
202
150
181
190
207
186
206
204
204
189
162
207
205
192
239
218
230
180
230
216
248
208
232
127
170
216
215
179
166
213
244
134
176
203
221
168
170
144
159
198
173
219
162
218
166
205
198
125
180
205
206
152
200
165
158
214
233
108
280
183
150
226
201
168
185
222
215
209
194
216
195
221
248
217
157
205
235
175
196
248
204
171
154
221
159
199
213
161
145
182
208
175
250
239
247
238
226
214
166
234
102
241
239
208
211
188
210
200
204
208
175
140
172
165
188
241
159
283
216
182
222
156
172
196
150
207
222
194
235
183
180
231
196
220
213
168
212
269
244
215
188
261
143
262
241
219
186
203
178
224
231
251
193
174
228
201
201
185
153
239
218
226
278
161
193
202
167
134
193
240
233
218
188
175
218
185
195
228
235
204
156
216
91
246
176
222
234
245
174
166
129
225
249
196
201
218
208
235
207
215
200
186
177
236
195
191
159
215
209
153
228
210
176
272
221
221
193
242
227
216
197
175
222
172
231
221
218
163
213
154
217
205
192
194
242
222
244
245
130
235
197
167
177
170
210
175
228
199
256
192
199
227
181
229
246
192
162
195
150
202
187
155
211
190
168
182
193
248
195
135
223
221
192
263
254
192
203
259
219
212
152
236
146
200
199
237
219
201
190
197
136
199
175
229
228
187
220
198
186
258
240
209
241
161
208
195
202
221
203
210
188
214
246
234
166
178
134
208
138
191
208
209
164
247
210
160
207
197
199
266
158
221
125
202
235
170
207
170
254
206
192
205
247
146
212
200
137
173
237
170
250
182
126
198
247
233
247
249
115
205
197
178
190
151
197
239
168
196
225
206
206
202
253
232
191
214
218
186
174
225
265
152
215
180
183
160
184
206
217
134
202
234
184
202
240
241
208
202
200
198
209
167
198
191
167
163
235
80
231
240
200
246
188
222
207
230
235
205
201
228
129
202
212
169
229
213
191
197
179
144
228
132
140
204
169
241
206
204
211
157
217
167
156
225
224
233
207
138
195
216
161
236
182
176
187
202
232
209
207
174
240
238
165
213
193
190
199
186
142
164
211
144
210
208
230
220
222
212
218
234
194
202
166
201
173
143
200
248
166
184
177
216
216
183
178
216
137
240
179
173
219
272
197
166
237
173
179
218
147
181
148
211
194
199
235
181
264
224
221
252
238
150
168
154
244
216
177
206
160
200
211
200
147
214
178
199
232
188
198
222
203
182
231
173
241
228
201
192
202
233
230
185
179
195
234
203
254
225
221
192
257
210
207
157
216
161
257
207
249
147
218
196
193
196
165
271
241
189
215
216
244
185
198
188
263
230
174
204
151
212
175
228
234
208
200
209
247
191
214
162
247
217
195
165
204
196
171
227
236
193
234
236
238
157
206
199
146
199
193
124
190
179
152
207
245
193
201
191
253
238
183
168
164
143
152
197
153
193
202
179
262
235
228
275
226
240
203
213
241
201
239
211
199
220
216
233
238
173
241
174
235
181
217
194
238
182
220
184
173
153
222
224
255
205
193
243
138
197
174
237
243
175
217
194
264
172
222
202
222
186
158
186
244
177
253
244
166
169
188
202
232
204
208
129
196
225
226
197
246
228
190
181
192
244
189
276
207
236
147
230
196
194
207
219
249
195
196
213
179
169
218
263
225
237
181
254
216
223
224
179
230
194
174
210
249
192
273
218
208
177
173
188
200
185
234
155
202
163
221
179
234
224
202
196
184
246
192
221
163
130
155
191
160
270
178
193
161
170
224
184
214
197
247
173
228
256
180
211
228
200
184
216
202
175
172
218
183
198
220
208
171
229
222
194
156
160
264
159
135
109
214
199
203
106
139
195
234
190
187
233
235
231
167
210
191
228
224
192
203
203
214
223
205
201
229
194
168
143
214
224
237
188
214
184
206
125
233
234
175
136
248
277
182
165
171
226
111
141
250
234
180
98
197
274
251
200
245
189
195
225
219
236
189
268
164
222
226
207
197
175
180
214
221
272
179
237
221
158
217
243
202
180
228
226
165
234
196
193
206
219
184
96
230
175
212
157
169
143
210
238
256
183
228
234
201
186
188
230
224
167
166
223
173
190
212
167
191
183
169
184
163
181
173
151
184
220
190
199
241
163
226
224
141
190
244
151
194
230
223
204
167
236
223
166
241
170
167
150
211
256
207
197
145
207
211
209
288
195
154
198
200
237
168
152
217
177
208
239
243
187
250
182
149
223
186
215
169
194
195
225
167
178
254
162
147
292
274
220
129
199
228
181
179
133
222
203
201
193
186
199
191
214
185
215
270
231
207
167
190
215
156
220
191
241
258
182
244
192
195
190
164
195
236
224
172
241
181
223
227
157
211
202
244
180
224
193
192
234
238
175
243
184
151
204
238
227
200
162
195
198
211
226
219
167
207
174
209
178
116
198
76
182
210
182
176
151
224
251
211
185
182
167
237
234
288
140
215
184
201
194
172
216
189
211
171
210
178
234
169
185
205
214
240
153
220
171
126
210
229
251
192
172
160
189
187
213
219
172
217
225
220
199
205
145
226
199
216
238
221
231
239
220
257
224
160
160
189
226
200
178
157
203
146
181
146
180
207
212
171
235
220
198
247
212
201
254
206
165
184
230
219
237
171
223
234
256
235
215
215
223
194
230
205
183
169
199
146
241
152
205
206
104
227
179
186
115
214
196
246
237
195
215
197
234
209
193
217
226
164
142
250
198
209
196
164
230
187
182
183
251
230
218
156
161
240
278
230
217
171
183
130
160
203
242
195
147
262
203
241
198
248
212
239
176
196
156
229
164
172
198
223
191
154
156
199
212
146
250
193
237
180
255
184
213
194
149
213
205
201
191
196
171
187
188
163
241
187
164
190
151
223
236
213
148
216
149
207
235
232
226
226
204
221
252
199
195
240
234
250
168
146
234
210
175
204
222
198
226
228
219
160
179
170
252
219
224
175
193
226
206
241
203
159
219
207
189
208
190
232
224
208
160
194
227
231
187
215
195
205
182
166
194
225
233
237
141
224
190
215
194
174
140
158
194
242
164
219
173
216
179
213
228
175
221
209
220
178
191
231
236
184
112
221
165
149
220
197
207
234
132
168
203
223
164
155
204
249
203
211
158
217
234
255
243
231
194
176
209
215
194
223
192
206
173
158
172
206
200
262
137
259
226
159
176
252
149
253
229
209
168
95
255
192
165
224
207
127
206
192
182
252
238
275
234
227
237
172
132
219
243
190
201
199
206
169
226
164
196
246
220
152
177
149
220
235
172
183
122
192
202
204
252
242
220
174
174
274
154
197
209
200
204
233
204
220
232
198
229
183
196
243
187
186
197
139
194
209
189
241
203
169
177
145
208
253
247
180
197
250
186
230
234
256
193
256
236
220
194
232
182
171
187
230
256
189
219
183
163
214
235
188
248
233
205
192
197
198
235
212
232
236
219
126
206
195
244
215
153
170
198
171
183
196
176
188
184
241
225
186
179
240
185
196
136
147
236
213
235
221
202
176
169
192
239
183
189
245
146
190
247
218
178
174
196
163
133
211
262
154
174
132
225
218
224
156
178
100
215
230
195
201
184
163
206
234
216
152
166
167
218
210
172
195
191
210
187
225
194
191
195
160
143
168
166
175
171
181
225
245
143
177
180
162
182
234
200
174
151
189
247
229
193
262
220
254
182
160
180
180
197
195
213
219
150
189
275
207
188
136
182
209
182
217
160
220
158
166
210
212
206
129
226
155
193
191
199
211
171
223
208
140
103
218
221
285
258
243
202
189
248
208
248
176
257
185
250
177
235
228
179
204
242
260
201
195
213
216
237
197
89
239
159
219
251
170
222
210
148
231
223
196
183
226
230
269
226
195
178
164
221
200
248
207
200
201
182
242
266
218
198
240
213
170
234
226
274
247
207
236
236
211
195
154
226
273
164
249
215
213
283
210
207
177
205
257
185
155
227
210
281
189
219
203
269
231
286
244
214
215
276
190
156
240
146
188
241
183
203
219
175
205
233
210
191
167
194
164
151
199
185
192
259
206
226
202
136
200
195
247
183
197
167
192
226
228
216
241
249
247
228
241
181
244
201
184
197
191
253
207
154
170
189
190
170
184
183
153
155
229
231
234
185
197
203
180
215
199
257
206
212
163
199
242
185
154
188
227
197
294
154
234
267
267
236
201
262
233
218
167
215
283
240
202
182
202
234
208
216
203
193
175
130
215
201
157
215
185
226
160
214
262
232
223
218
175
180
195
176
187
189
177
159
208
152
206
224
253
255
233
151
230
226
244
170
260
182
208
189
191
199
159
293
166
133
178
257
156
211
252
199
237
135
277
226
244
174
196
183
220
245
155
180
247
228
245
171
204
126
231
202
213
223
235
174
200
192
166
232
216
130
199
184
210
188
185
198
186
167
192
196
215
211
155
238
253
207
245
226
225
247
190
187
142
183
203
200
281
195
185
190
224
216
203
235
216
203
133
262
176
160
223
261
173
220
233
183
191
236
179
232
190
156
207
218
213
220
280
220
249
182
134
148
145
254
177
203
178
194
155
203
197
233
209
148
213
219
234
195
204
170
201
248
243
140
251
205
173
230
221
228
193
153
204
173
249
206
218
245
206
244
186
174
141
245
236
169
190
169
195
244
212
259
206
147
226
247
222
207
141
224
198
201
180
229
169
233
185
246
168
215
187
227
188
218
175
168
223
119
207
242
217
227
230
146
244
281
209
212
195
231
155
155
156
214
181
210
162
249
193
228
230
224
167
172
180
203
195
137
226
242
188
227
230
224
165
211
228
219
177
164
140
210
197
305
258
148
202
206
207
164
214
173
221
270
165
225
239
245
245
166
231
80
157
253
274
173
210
187
177
202
141
233
213
139
210
154
224
240
156
125
229
190
198
180
202
215
156
182
191
169
193
254
134
142
215
181
172
150
232
184
148
183
154
151
188
184
186
190
202
248
212
246
231
180
171
173
273
186
206
133
232
187
187
160
216
228
163
187
170
253
178
179
202
216
172
259
195
211
206
187
181
172
218
196
176
239
145
208
106
253
181
208
193
232
243
156
175
148
229
205
155
225
231
208
186
209
196
188
188
202
149
122
233
225
202
218
198
259
216
196
220
206
150
213
254
255
226
202
181
164
135
270
208
251
207
233
234
251
183
180
250
207
157
218
169
244
158
167
159
239
191
175
205
235
180
242
222
215
189
224
189
237
181
208
202
209
249
176
152
232
228
198
156
250
218
167
158
183
244
194
234
206
242
201
174
149
160
161
210
167
263
175
129
185
144
194
122
184
259
167
187
140
173
202
166
243
185
212
174
201
193
193
184
136
180
238
228
169
192
217
245
160
212
170
189
223
193
239
233
230
215
133
194
203
243
209
219
244
262
196
243
176
212
211
198
169
198
137
192
278
232
222
213
256
195
167
192
160
199
174
208
175
170
204
221
166
209
189
226
194
154
206
218
226
227
205
210
231
170
198
225
227
247
235
195
185
197
190
166
177
208
207
203
247
267
237
197
216
175
245
195
234
230
166
173
161
180
202
189
232
238
215
243
177
172
194
207
199
188
118
174
205
225
167
237
182
178
232
245
191
222
167
177
175
255
174
181
208
184
237
174
191
169
191
255
207
211
213
164
201
186
198
226
172
158
187
198
102
193
179
185
153
239
228
176
165
207
234
202
223
222
154
171
262
171
121
231
255
251
187
166
190
161
145
219
184
203
145
155
160
225
196
248
231
218
221
165
196
186
216
192
203
159
173
224
210
201
242
178
212
204
130
204
176
216
180
161
216
201
178
236
257
226
188
161
202
201
229
215
160
178
173
253
219
182
140
203
202
147
158
173
166
224
133
246
136
210
204
244
205
166
224
180
170
188
192
192
237
150
219
129
240
194
229
149
138
152
190
158
192
196
208
218
220
250
170
194
236
204
165
222
210
178
236
160
153
155
158
168
150
259
177
198
211
224
204
151
243
205
175
184
214
184
235
185
198
186
182
212
209
165
214
250
238
176
186
177
148
187
195
171
207
219
202
163
173
205
157
199
176
189
185
235
193
137
236
182
181
180
206
208
184
242
261
222
154
193
185
200
230
180
146
174
242
173
151
145
227
141
198
178
201
154
263
273
272
190
244
218
209
274
189
208
259
212
173
229
237
217
235
206
217
254
226
199
167
212
234
196
256
112
176
163
181
212
181
184
143
198
211
208
198
159
243
279
176
185
230
212
228
178
203
228
197
223
195
170
225
230
200
202
190
223
195
193
231
229
182
182
159
227
179
181
160
220
192
182
216
194
226
159
239
204
211
203
244
212
105
219
186
271
195
143
185
207
201
150
178
252
154
168
182
248
159
141
183
179
224
158
186
237
233
222
176
197
158
203
240
198
205
186
124
177
163
210
258
143
188
223
204
221
187
133
226
217
175
217
204
205
172
179
175
232
256
176
224
170
206
184
183
225
226
214
194
231
271
207
191
239
190
228
177
258
213
166
154
223
230
204
150
197
234
224
252
114
209
181
160
240
135
221
191
269
213
190
164
235
251
244
258
212
248
194
193
150
200
192
203
187
195
170
147
169
168
202
175
159
160
221
216
202
261
179
204
211
228
210
181
215
200
191
199
220
191
218
227
245
230
222
186
220
209
258
159
135
180
171
183
188
202
164
182
180
208
131
213
196
180
133
222
199
225
207
229
184
267
257
182
268
159
221
167
232
153
142
172
196
203
224
199
218
218
155
176
246
155
204
214
245
198
189
192
192
188
230
219
261
133
189
167
240
214
110
230
227
118
204
241
177
214
204
228
140
287
168
215
186
229
200
206
200
183
239
277
233
174
200
222
260
256
240
211
200
202
276
134
173
166
227
214
195
193
243
156
242
172
185
195
186
286
192
225
233
154
131
213
233
208
182
228
184
160
174
187
199
136
148
280
173
228
232
170
234
244
206
183
206
172
206
224
202
199
197
174
235
194
198
198
209
141
230
141
259
258
271
179
173
210
203
146
130
229
199
232
185
205
242
213
204
251
228
252
200
160
151
203
228
179
223
208
165
166
178
210
207
201
259
197
142
247
201
215
180
159
216
218
198
157
244
199
150
192
223
210
159
266
185
187
208
209
220
246
222
194
186
172
198
177
209
195
219
197
222
136
219
215
234
232
214
201
195
201
161
241
219
180
176
189
187
200
265
166
218
215
187
153
172
144
196
150
191
201
276
195
195
253
222
207
195
185
194
214
188
206
195
184
227
229
244
212
192
205
217
252
228
202
203
217
166
226
161
223
190
153
136
224
210
237
208
255
202
130
234
222
124
240
215
222
222
184
132
219
196
159
162
265
190
212
189
138
191
221
193
137
146
209
215
216
137
190
255
269
233
189
219
179
159
195
151
152
162
216
221
164
181
175
156
207
173
235
190
238
185
185
144
212
233
163
217
204
218
175
260
188
196
170
258
221
211
226
235
226
200
158
215
207
154
216
162
148
214
122
213
224
212
248
239
168
203
213
173
152
198
195
254
244
191
160
253
159
195
229
218
204
213
149
190
222
208
186
244
240
161
181
191
200
195
189
139
198
209
210
167
238
248
157
146
178
142
218
225
206
173
183
191
206
175
264
235
221
242
251
187
138
140
206
181
223
192
185
202
118
229
255
217
157
215
174
221
169
239
251
181
189
206
231
248
243
203
224
251
197
237
202
226
225
121
222
177
187
183
235
200
215
210
248
243
179
155
231
229
199
186
187
151
172
196
200
195
220
210
228
168
229
248
221
161
206
187
227
214
191
231
164
214
239
199
211
186
141
171
199
213
153
258
241
220
223
221
207
191
259
187
195
187
218
187
244
196
172
184
183
139
152
181
141
198
233
194
224
205
156
187
170
184
174
220
172
263
169
229
191
169
127
202
241
229
159
227
216
207
193
217
180
217
196
198
178
208
162
220
224
232
148
223
257
218
190
137
213
180
250
229
284
149
206
159
213
215
222
174
244
220
173
248
263
215
148
271
204
191
221
134
205
191
297
213
155
197
210
221
251
164
198
205
159
247
163
260
210
209
206
190
206
141
191
149
207
210
190
203
247
188
197
240
173
196
220
110
231
240
207
247
188
189
171
201
154
201
149
188
242
207
189
164
209
261
198
257
162
175
243
182
159
229
160
237
234
185
157
180
152
201
257
230
186
196
235
226
213
249
217
229
169
185
204
189
223
148
175
221
243
123
209
203
184
158
167
209
196
154
178
146
205
231
262
226
178
225
216
203
118
177
179
157
233
149
243
206
226
228
229
136
292
228
195
140
224
235
259
154
225
186
189
230
266
122
204
205
269
197
255
262
210
176
188
268
213
147
201
219
178
246
210
162
218
214
176
177
143
143
232
184
198
210
237
177
174
150
186
212
269
172
121
144
219
149
165
192
192
209
178
214
215
245
237
183
195
241
216
207
215
168
181
176
169
224
207
146
248
237
235
204
163
220
248
208
187
132
184
227
216
193
149
164
211
147
201
204
228
230
159
221
231
241
216
209
163
154
178
183
181
155
234
205
208
259
164
161
244
163
245
216
203
226
184
207
175
135
213
221
195
210
170
181
232
220
192
156
269
149
231
241
160
191
219
174
180
199
129
214
223
176
209
185
211
172
109
213
194
209
222
213
141
146
209
166
221
201
210
150
185
124
186
183
145
187
216
194
260
180
223
205
179
166
117
264
205
168
162
187
226
232
223
186
157
236
216
270
209
260
234
243
222
226
246
200
202
209
180
169
158
179
248
205
149
176
144
124
192
198
208
197
195
191
213
260
230
179
157
191
254
197
216
199
207
191
144
180
198
157
202
234
162
195
184
207
188
202
172
122
205
153
213
284
218
205
293
222
167
120
172
172
148
205
187
236
181
199
223
162
243
256
142
248
167
181
175
189
262
197
144
156
194
229
155
196
260
181
188
181
177
217
232
245
182
230
190
178
192
213
168
217
227
199
191
209
173
175
126
188
248
172
170
181
158
199
212
155
226
135
216
220
217
176
212
235
159
183
250
208
180
192
189
213
250
252
296
254
264
212
297
233
193
205
223
224
193
160
191
159
133
179
213
224
179
215
171
165
167
172
220
163
208
169
182
234
178
206
142
244
219
188
199
217
198
218
211
202
224
143
217
217
211
181
238
190
169
200
217
135
147
235
148
180
258
251
272
209
240
241
170
228
188
207
201
189
183
211
231
192
238
207
192
228
223
148
121
202
206
148
250
178
238
176
189
167
211
213
172
239
117
234
192
148
163
228
196
219
202
163
193
177
175
189
171
212
212
168
254
174
204
225
217
165
171
231
148
188
232
234
267
212
199
208
153
167
271
194
208
149
196
169
227
208
136
222
176
224
206
254
297
183
243
205
214
205
169
195
157
196
223
232
214
199
208
156
200
209
229
225
166
225
170
216
221
244
182
197
175
146
237
207
169
216
199
247
272
204
213
147
253
156
197
245
232
189
232
228
220
202
214
219
241
167
148
184
204
227
171
135
229
211
172
234
196
221
224
151
242
176
143
126
216
166
156
195
187
155
208
202
211
251
206
161
195
231
286
191
217
209
162
204
252
219
178
229
155
275
159
167
261
221
179
197
166
250
168
254
249
244
165
134
176
175
203
209
165
233
182
208
181
250
230
210
178
234
246
188
185
218
199
236
191
162
217
205
202
199
159
165
173
236
185
211
256
223
178
223
199
174
204
203
218
258
143
198
163
210
217
179
207
186
183
210
161
169
144
126
216
190
217
172
206
204
223
233
221
243
227
209
282
181
248
180
192
160
159
180
193
221
217
255
252
188
212
198
206
169
249
179
154
226
181
210
176
201
180
179
175
227
147
196
245
198
202
247
185
176
106
157
165
219
170
176
234
171
211
146
191
219
175
152
181
214
212
246
184
178
158
183
224
205
214
134
221
210
181
212
223
237
168
173
186
163
215
278
178
217
124
165
179
197
269
169
269
274
240
160
156
181
218
170
233
229
191
166
192
224
191
183
193
263
175
149
200
175
232
250
191
207
226
139
217
154
184
191
173
201
155
190
235
199
143
234
189
204
171
207
239
221
231
192
162
160
205
181
195
210
166
156
195
259
162
214
198
179
181
252
210
182
152
211
201
244
226
239
244
189
228
168
213
188
204
157
223
190
218
197
214
236
211
175
269
208
196
241
224
239
175
194
189
170
203
249
217
202
130
157
243
176
211
187
280
184
145
192
213
220
245
184
179
174
222
207
252
195
221
109
243
149
216
245
246
157
264
196
229
241
194
192
203
246
249
157
195
191
143
194
199
229
248
205
165
225
194
191
171
143
183
208
194
145
241
225
245
217
220
257
207
75
209
189
127
291
225
253
226
175
217
162
167
151
232
197
186
110
134
218
211
200
214
192
188
272
108
175
265
137
229
183
172
180
267
210
234
193
143
201
212
168
119
230
228
216
190
257
176
209
251
159
161
230
187
164
220
186
228
206
211
208
229
245
263
201
210
250
190
212
215
186
179
234
222
239
228
184
179
172
226
213
258
187
210
213
177
133
244
248
155
209
204
235
159
139
145
237
180
194
199
246
216
266
191
222
149
181
201
202
266
204
204
219
194
215
174
209
121
177
197
216
179
246
289
159
227
231
213
143
241
256
230
128
178
227
179
143
201
135
187
115
257
172
166
160
190
220
191
206
187
198
140
176
205
197
196
172
221
236
130
157
216
212
210
225
201
198
164
249
191
206
188
168
212
209
215
173
224
226
137
125
221
196
249
208
159
166
246
159
248
206
258
202
257
200
167
151
213
219
197
196
210
230
185
231
176
182
180
228
258
202
194
209
157
166
231
251
221
168
182
203
256
180
259
164
153
201
201
236
210
127
168
241
202
182
179
205
283
237
181
185
167
196
157
215
230
213
181
178
280
209
160
235
168
182
215
127
239
174
217
255
204
192
202
209
170
213
203
213
190
202
183
241
222
209
184
208
223
213
163
203
183
210
176
131
190
183
160
170
184
255
170
250
217
143
171
214
200
214
219
177
214
122
194
229
188
165
151
165
242
229
155
186
144
98
181
200
193
194
224
189
206
265
208
181
153
184
189
230
208
173
157
287
170
252
231
223
213
165
243
190
243
217
228
181
217
156
244
193
219
228
132
228
210
218
179
226
235
208
199
229
210
132
163
205
201
228
196
238
164
197
190
180
243
254
185
232
196
176
150
237
191
181
240
193
195
212
222
230
213
226
131
199
164
121
254
260
173
161
224
214
121
247
166
133
200
212
160
165
193
219
174
153
148
252
199
202
143
230
186
196
188
154
171
200
132
179
180
209
183
240
184
198
160
218
147
160
142
148
187
226
192
200
171
237
170
186
219
158
155
188
154
261
208
220
235
213
184
167
204
252
165
186
210
223
139
255
196
241
183
240
205
175
227
214
154
213
229
182
202
192
199
235
233
192
211
150
233
225
247
202
210
167
252
234
246
202
184
201
209
264
211
199
176
190
199
174
178
212
210
214
170
228
180
174
194
192
169
161
155
223
138
216
221
168
216
179
192
245
186
200
227
191
183
192
177
229
257
167
192
211
188
240
132
174
186
202
242
146
122
211
229
199
240
263
175
173
202
158
234
202
259
109
200
205
247
251
144
255
195
171
179
166
165
185
225
200
212
267
158
184
250
202
165
175
216
91
249
201
184
230
143
166
256
174
243
278
202
239
255
197
193
180
226
144
219
234
253
153
190
213
215
282
204
225
176
218
248
179
199
189
218
232
274
220
192
220
214
194
258
247
217
174
190
184
262
189
260
188
247
124
163
283
197
181
137
246
217
155
224
169
223
209
210
183
163
222
202
192
176
213
199
176
198
217
242
156
153
194
191
164
199
260
191
261
176
206
189
232
232
217
210
244
168
196
233
118
228
185
208
177
242
174
206
229
157
168
109
125
124
233
182
276
134
155
185
194
265
162
205
243
207
163
172
195
250
228
257
133
223
193
212
201
170
167
229
187
234
164
197
172
202
202
255
162
169
219
196
214
171
189
263
192
174
133
212
207
236
217
234
144
264
163
244
141
235
188
151
170
214
212
228
214
184
243
194
186
246
243
147
299
199
236
194
220
172
191
234
210
209
185
240
186
179
226
222
248
239
172
162
239
115
263
144
147
205
266
150
214
186
242
215
203
120
233
210
168
253
150
194
182
190
166
187
119
159
160
139
221
209
228
193
237
213
247
189
210
216
241
197
178
223
194
211
235
215
192
169
197
186
240
220
193
182
233
136
218
236
254
189
206
192
206
208
193
243
240
215
253
138
167
214
166
181
183
135
184
266
206
222
224
155
203
236
207
145
218
239
179
256
181
221
173
165
187
203
199
188
226
198
211
142
177
191
213
208
196
189
214
222
224
154
194
250
206
196
190
179
199
216
221
228
168
161
248
176
174
201
185
198
171
195
174
232
183
212
229
146
157
159
244
207
222
238
233
214
225
130
211
218
183
163
177
143
252
136
164
202
183
184
242
138
240
174
200
267
144
111
176
194
178
189
215
226
180
171
230
251
159
274
164
162
267
176
136
203
184
206
236
244
215
221
154
245
167
226
178
197
202
237
182
207
165
217
180
178
203
203
180
240
227
194
201
131
233
205
256
220
190
171
174
209
259
202
240
226
150
228
153
202
276
221
253
170
198
213
229
195
222
193
198
200
255
140
233
244
227
154
208
201
199
231
175
179
234
169
242
174
241
197
215
183
166
179
202
186
178
228
267
239
146
219
188
265
198
219
157
170
191
215
160
132
231
157
184
259
196
125
180
249
210
226
183
197
176
222
180
131
198
154
193
286
189
178
179
185
208
204
205
233
205
176
186
220
221
201
154
201
211
186
266
196
246
248
193
210
176
191
251
137
149
188
234
229
242
171
170
156
198
241
202
220
245
176
174
216
171
184
244
261
136
211
207
253
268
178
181
171
210
184
188
152
179
203
188
191
227
186
218
208
163
215
187
214
216
193
161
243
216
144
215
216
181
195
194
203
142
123
226
175
178
155
218
201
217
196
173
195
122
170
207
195
169
177
216
164
171
207
231
251
192
244
161
243
233
169
149
178
155
196
232
218
192
152
198
252
197
205
246
140
237
182
205
204
213
212
235
201
215
265
227
201
172
240
210
264
175
225
234
167
152
151
239
252
172
102
224
156
216
206
231
185
209
147
172
143
218
178
165
240
200
238
232
108
144
214
180
184
233
196
222
186
210
158
169
206
211
141
225
213
211
188
198
218
281
178
228
200
195
223
179
209
214
211
204
222
212
133
210
223
146
206
186
141
256
258
203
234
167
164
183
179
186
179
177
217
240
285
233
237
174
200
250
234
163
186
219
230
223
218
247
203
227
198
247
175
216
250
219
214
172
189
198
191
179
199
163
187
182
234
225
239
211
272
260
229
155
188
178
176
196
213
208
193
226
222
170
162
233
259
263
179
206
182
219
155
265
189
216
177
158
253
209
226
199
209
218
158
204
229
242
224
239
151
212
246
184
161
223
252
208
273
205
146
210
233
186
188
169
244
123
154
195
194
183
273
259
183
263
179
286
110
210
194
166
164
251
196
174
235
212
163
187
201
219
252
185
217
227
283
175
240
194
228
246
196
170
254
184
175
235
138
187
228
245
172
272
144
223
265
225
202
225
190
224
228
140
286
204
220
158
220
209
153
172
170
159
173
213
214
170
276
162
204
174
212
180
183
174
174
187
184
206
204
230
217
149
168
169
185
226
212
242
224
245
220
240
226
198
190
257
232
188
149
187
215
231
207
199
192
157
188
114
297
192
227
191
217
164
153
238
191
205
198
240
243
152
130
179
180
229
222
116
160
181
213
196
237
192
220
191
193
160
206
199
169
202
184
246
189
201
186
200
208
169
153
210
184
183
195
160
254
165
168
199
170
175
187
178
184
171
197
215
228
201
218
216
200
200
197
163
198
171
197
195
218
219
200
189
221
240
191
181
187
251
200
201
228
201
165
262
206
192
249
218
247
240
237
200
241
182
209
205
168
209
177
205
227
245
198
221
246
255
202
155
199
200
241
177
160
236
162
171
222
206
212
239
193
194
198
182
246
222
181
236
210
171
174
243
163
255
173
201
201
184
182
211
210
206
168
274
287
195
199
227
140
184
153
204
164
215
193
250
202
176
209
193
144
194
214
176
212
225
231
192
171
149
151
206
211
183
174
219
236
180
199
166
183
202
229
191
249
247
161
146
216
245
180
139
241
161
193
206
210
258
154
194
245
183
266
201
176
192
158
191
152
220
184
210
195
216
151
216
157
192
172
222
166
160
178
181
202
246
250
198
195
169
144
164
253
156
197
207
234
230
197
230
204
210
219
203
179
213
241
190
236
227
176
129
232
170
149
179
204
206
182
224
193
261
230
205
222
166
236
186
179
146
257
213
261
199
224
191
248
164
220
149
169
111
222
211
144
199
186
235
238
203
158
212
198
231
152
186
235
163
158
192
184
222
275
255
191
239
168
135
230
227
197
260
210
179
191
231
164
161
187
267
195
158
165
245
267
201
270
203
260
186
174
237
176
185
154
194
120
179
233
133
168
248
198
230
224
207
204
179
225
176
259
213
183
160
267
157
184
221
256
250
212
251
213
218
181
207
211
252
243
138
235
214
212
207
192
164
174
227
227
293
204
193
209
210
165
206
195
150
154
175
156
208
177
191
148
198
231
100
159
192
212
220
113
206
204
220
165
181
170
145
137
163
180
160
220
203
154
190
237
145
182
187
232
238
169
230
158
158
119
184
189
208
216
230
154
203
245
160
113
214
229
165
191
262
203
213
235
186
156
200
236
179
230
229
202
143
242
254
174
138
243
219
246
218
200
181
189
156
154
188
217
226
265
236
186
175
225
173
150
165
240
287
251
271
178
177
135
192
198
235
280
168
213
176
172
201
186
129
254
252
201
187
196
223
163
168
162
181
220
245
205
147
243
129
220
172
228
200
219
224
183
140
217
244
224
160
200
219
180
152
166
225
217
187
243
240
187
211
158
168
213
187
240
195
202
227
135
241
188
168
217
240
224
211
140
211
215
183
253
145
165
209
206
183
190
189
164
249
230
261
176
206
267
242
268
172
173
210
213
222
231
235
179
166
231
235
221
201
164
227
241
204
182
194
165
178
206
190
231
205
266
221
219
218
227
217
182
209
190
215
147
203
231
252
212
148
219
232
246
187
236
129
159
191
196
194
171
236
153
204
200
195
206
172
209
225
179
178
201
196
172
229
229
153
190
160
263
126
177
188
187
168
216
137
224
169
223
233
229
156
147
222
185
218
195
243
191
136
205
163
180
221
208
166
197
146
208
154
179
191
196
210
193
207
219
245
236
179
113
164
227
227
165
224
214
208
231
157
222
166
190
234
157
190
204
213
207
130
179
236
142
246
229
256
250
231
148
183
242
199
211
250
187
188
164
138
252
227
286
183
193
211
230
168
229
160
141
145
217
210
169
200
217
162
200
187
226
224
156
214
95
147
172
256
217
261
201
250
228
164
248
195
170
184
160
178
232
149
222
191
143
213
198
234
199
215
272
151
192
126
180
230
210
190
187
206
167
215
196
174
198
216
188
232
212
175
244
187
159
234
157
209
162
180
198
221
200
220
151
184
193
184
193
153
207
152
170
208
280
167
199
171
188
252
217
243
239
257
220
171
211
178
212
165
262
213
212
275
210
212
192
241
230
217
171
155
170
245
181
154
183
176
227
207
229
160
231
212
245
172
171
184
209
256
158
215
236
227
229
230
224
158
199
171
167
183
153
236
194
141
216
252
250
211
231
165
178
254
228
203
185
188
124
217
180
201
302
244
132
174
256
273
141
190
220
233
311
158
233
175
129
204
198
181
188
198
182
214
181
161
189
210
184
217
197
189
184
149
207
142
200
203
188
186
220
163
205
205
244
189
211
214
128
240
163
179
217
171
217
233
249
222
218
201
173
171
205
148
210
240
191
196
250
194
212
265
166
190
224
190
162
198
242
164
253
192
186
164
197
176
225
180
234
168
157
195
162
196
241
188
169
236
147
202
210
211
161
183
206
235
207
213
218
199
209
219
191
217
187
190
230
208
179
174
158
238
239
197
183
261
205
226
218
153
233
160
209
197
152
223
217
170
196
190
228
216
139
192
230
212
193
215
239
195
242
188
233
213
218
182
183
252
223
187
193
206
184
225
213
218
251
179
193
144
206
225
190
212
211
212
199
229
244
246
196
222
223
211
229
206
165
211
191
147
168
226
220
158
150
162
249
280
231
188
156
192
154
233
196
245
272
181
274
141
158
205
244
174
190
250
188
206
239
261
262
130
168
195
182
183
160
235
224
175
157
190
179
277
203
214
182
172
195
230
126
221
204
191
197
240
207
227
216
182
175
162
195
156
184
181
172
193
135
204
165
210
167
230
196
235
225
206
192
223
184
219
159
177
203
273
197
210
206
188
176
226
176
228
249
184
222
131
180
249
141
212
264
165
238
201
198
197
194
178
173
189
225
201
246
213
224
196
183
163
218
162
201
243
215
226
163
208
162
195
82
212
223
236
257
233
189
170
187
214
211
165
207
217
174
164
241
221
259
161
229
213
192
199
171
230
246
253
130
189
157
135
194
226
204
204
199
220
230
179
148
198
216
168
205
181
166
212
259
246
252
192
243
246
205
212
241
151
235
214
198
170
218
140
195
226
244
199
220
247
187
166
188
181
212
200
175
159
220
120
189
165
256
172
236
162
169
178
178
198
169
197
249
213
257
214
232
230
247
232
216
158
200
176
225
212
136
234
139
170
137
223
237
192
175
225
196
217
212
136
202
244
228
217
166
277
180
178
193
202
222
191
222
174
199
165
160
210
170
151
223
206
265
240
171
140
181
240
253
159
270
200
253
218
237
157
216
217
198
169
216
255
234
228
220
231
188
187
253
180
235
207
190
207
182
168
202
233
181
225
244
250
169
219
195
221
253
172
166
205
176
222
250
235
184
188
206
217
169
198
207
208
204
158
240
230
168
238
140
178
249
239
250
203
207
134
205
232
198
174
202
236
202
204
198
144
200
184
230
142
201
128
204
189
169
168
173
161
202
186
239
166
215
236
229
209
151
227
261
254
138
159
179
180
203
190
199
231
203
200
212
179
185
208
191
192
247
203
214
218
253
168
193
185
245
193
230
225
222
211
219
231
162
155
170
178
184
172
222
176
192
185
186
174
138
134
204
205
230
231
239
217
227
245
162
184
129
185
190
135
165
214
257
168
169
227
238
190
155
218
154
194
225
221
205
193
202
253
224
237
249
216
227
212
114
234
228
198
197
205
250
215
211
241
186
262
153
137
229
211
224
280
238
195
258
232
230
163
222
192
200
166
160
147
183
222
281
201
198
178
223
177
234
190
208
225
153
199
140
190
226
189
156
192
190
168
260
233
206
192
158
147
236
207
205
209
117
186
197
149
123
212
163
184
189
250
220
211
200
187
168
179
206
198
157
235
280
195
268
196
204
244
248
145
199
175
172
216
217
153
237
219
191
212
202
259
234
170
202
179
198
190
213
174
134
208
234
232
157
241
217
219
198
194
148
167
244
243
183
247
237
217
181
145
184
152
176
176
187
226
190
204
274
142
295
176
264
141
223
170
234
159
247
161
247
240
232
212
162
156
253
185
226
214
208
232
217
183
181
178
179
165
227
262
231
182
197
226
172
153
140
226
263
185
246
181
239
172
139
235
228
210
190
134
169
208
234
234
187
207
228
243
205
205
232
181
191
176
168
213
204
256
202
140
200
220
242
226
263
248
266
217
252
184
189
216
231
215
196
200
262
174
167
196
210
245
175
210
204
140
189
175
205
158
185
190
185
188
200
237
225
170
235
132
241
218
149
224
230
170
292
183
143
223
217
189
191
213
226
214
210
178
200
221
222
243
169
243
233
202
213
180
246
228
249
201
227
175
209
219
216
191
237
216
203
221
169
215
222
228
224
261
242
136
237
230
257
203
238
214
199
247
154
222
168
207
204
196
245
197
182
170
196
198
196
237
137
269
207
146
180
117
184
260
217
188
178
189
158
250
218
166
183
214
159
192
221
249
207
173
163
192
202
250
244
163
237
207
147
205
178
187
134
218
170
192
209
226
207
230
200
114
252
176
230
219
196
201
153
183
193
287
138
237
204
185
182
168
213
197
164
239
193
125
156
166
224
221
248
241
204
202
259
228
200
169
194
190
201
172
220
239
218
176
154
228
200
265
247
162
196
210
203
140
176
207
220
177
179
195
214
162
223
236
232
211
208
236
214
208
238
233
237
220
215
155
225
218
205
173
184
207
253
173
180
210
189
210
214
205
223
147
154
190
173
218
220
171
242
163
202
164
249
275
257
198
244
218
227
189
247
235
228
191
96
210
188
102
216
201
238
211
257
209
236
243
253
183
166
162
199
232
211
205
213
165
193
195
246
261
219
255
209
175
229
224
156
234
142
228
261
177
243
212
171
247
188
255
194
135
257
211
215
224
172
150
216
189
205
219
202
228
184
219
160
188
135
226
224
227
216
201
198
210
187
182
147
226
176
203
171
201
233
173
174
172
230
192
189
222
177
162
213
214
209
184
209
144
168
199
191
201
211
159
201
199
255
168
207
149
154
128
187
226
217
190
244
207
223
214
132
170
193
156
201
207
208
168
134
208
159
174
227
236
169
132
204
258
135
205
169
203
134
189
136
275
200
152
216
183
195
214
180
242
181
229
207
214
217
257
206
196
237
229
191
219
239
180
221
209
263
199
217
166
217
162
215
195
189
204
169
202
250
248
192
264
213
189
218
187
164
189
152
215
174
194
196
183
215
234
195
193
169
182
210
257
196
206
202
201
235
239
257
227
253
235
231
249
225
217
209
167
230
237
238
218
153
153
199
126
225
226
162
245
200
159
175
223
102
180
245
187
176
244
156
200
261
227
173
187
215
207
241
225
114
205
223
196
154
265
218
220
161
118
149
189
181
213
190
158
221
230
180
208
174
180
138
167
152
219
205
243
166
218
225
204
212
204
181
203
203
199
184
173
197
167
142
166
241
226
169
168
170
157
214
204
251
217
183
202
138
186
148
249
179
218
218
238
152
140
214
224
219
194
166
224
201
217
136
192
223
213
233
222
165
233
186
190
173
115
237
190
258
228
183
174
199
206
156
184
200
275
181
185
203
192
234
250
212
148
219
163
216
218
230
249
229
205
158
228
193
144
200
243
141
127
191
243
190
205
246
201
274
225
154
234
211
232
257
215
192
197
169
181
164
204
243
208
186
136
174
174
204
246
183
160
220
175
185
176
196
225
169
225
144
185
235
241
208
228
151
109
183
242
158
202
208
201
197
200
252
193
204
174
179
203
196
240
141
215
106
241
256
230
199
211
178
250
129
217
147
267
142
189
224
238
153
172
232
213
163
200
229
193
262
230
222
144
205
216
181
153
186
126
196
285
250
248
194
176
192
198
166
160
289
215
223
149
225
210
209
254
210
182
219
222
205
229
161
177
250
123
191
248
186
151
203
220
119
246
250
231
171
177
253
198
214
211
251
229
155
251
179
161
169
164
222
223
222
220
248
199
213
204
192
222
189
303
216
197
163
210
208
241
203
221
212
219
181
194
231
242
219
201
195
196
218
186
190
219
166
246
154
235
219
217
200
180
220
217
151
227
232
201
196
201
207
142
226
182
223
153
188
232
179
196
189
155
222
156
298
200
251
176
181
209
188
184
228
258
161
204
180
234
179
201
159
221
188
193
226
148
211
160
242
194
146
220
244
187
212
221
297
233
234
253
221
192
187
206
185
222
220
224
252
264
249
205
125
200
252
199
175
159
205
175
190
230
172
182
233
211
214
222
153
235
156
155
210
197
243
230
212
206
250
150
206
223
171
237
243
226
266
241
223
165
191
213
217
213
198
176
185
224
206
233
244
193
187
142
166
220
205
191
191
204
193
184
258
193
147
216
247
240
207
228
146
202
205
161
168
169
229
206
181
144
187
174
193
208
185
193
198
247
209
171
226
168
244
231
250
216
141
235
165
217
242
189
237
187
206
215
197
172
208
229
201
189
200
175
173
231
147
212
169
211
169
179
204
206
182
196
209
214
239
184
200
234
209
245
188
201
172
238
191
244
202
214
247
259
119
202
185
205
159
184
285
257
194
211
194
224
176
218
257
225
220
218
220
203
196
192
258
133
183
144
205
88
179
227
208
227
183
255
183
218
236
173
223
207
214
185
254
216
214
190
227
160
179
253
268
242
182
191
226
144
218
275
214
261
211
284
224
176
218
179
232
193
229
225
210
226
179
151
219
201
243
175
216
233
200
231
210
151
187
199
234
188
206
197
141
159
161
257
224
208
193
214
179
270
224
227
242
249
168
230
234
160
180
153
141
132
172
203
208
191
199
188
260
188
239
189
108
192
237
209
212
201
216
150
187
225
233
284
151
149
175
271
309
199
215
203
196
197
218
195
287
119
247
142
250
246
256
217
206
199
159
196
245
203
182
237
257
197
162
198
213
235
224
213
185
229
188
255
211
123
227
186
220
193
124
181
233
188
231
255
185
161
165
204
248
117
210
205
215
201
208
208
242
188
200
150
132
257
199
178
251
232
210
234
213
202
247
223
177
102
129
199
291
109
197
175
218
226
254
141
147
229
224
212
145
222
215
267
199
206
217
223
145
206
150
245
187
198
210
234
186
209
194
176
231
243
210
224
201
186
215
172
187
176
236
217
180
167
217
211
162
257
227
190
240
158
281
143
242
197
275
170
264
217
182
191
222
238
219
153
211
151
219
267
237
171
258
191
213
191
251
232
266
212
194
186
270
241
209
219
175
210
213
229
219
196
199
235
234
201
169
182
227
223
183
201
183
247
156
213
176
220
236
194
192
203
201
209
238
213
132
209
224
237
209
234
184
190
217
207
189
228
249
176
208
194
147
197
205
183
181
210
173
177
255
225
172
158
144
217
212
129
239
217
172
214
207
254
207
165
153
197
173
218
251
232
159
232
185
200
217
260
185
169
203
145
196
246
160
190
255
208
243
175
137
136
239
215
203
164
224
184
210
246
234
231
231
175
185
198
242
194
236
156
184
202
226
226
168
215
245
244
244
210
230
282
147
203
184
240
187
216
188
205
106
167
218
182
214
228
202
218
165
212
201
252
200
130
177
183
242
260
152
236
152
221
177
244
199
203
196
192
201
160
172
254
205
213
222
84
220
211
146
190
192
214
195
186
167
199
218
240
168
258
259
152
189
261
157
235
175
199
126
252
235
165
249
212
176
233
236
155
172
240
167
178
224
227
224
239
222
179
183
158
231
128
161
232
209
250
172
202
216
225
232
231
144
217
206
201
185
243
175
237
239
169
200
169
235
184
194
241
239
201
187
217
243
241
310
223
156
206
173
153
218
216
231
180
181
189
191
187
232
227
219
193
184
208
284
208
235
202
233
167
199
246
178
199
211
183
208
147
195
159
223
203
225
260
198
184
168
252
175
229
206
139
229
260
181
228
232
190
224
163
236
209
182
214
145
151
200
170
163
215
170
201
166
208
155
245
246
216
298
195
207
166
231
183
215
176
215
197
257
184
175
174
233
234
251
240
210
217
199
208
196
213
148
168
199
180
224
182
263
169
148
179
192
220
94
236
213
133
211
205
163
171
174
236
218
184
171
248
227
171
211
248
261
204
163
162
236
138
196
230
203
151
211
186
210
210
199
237
163
220
224
170
190
190
178
162
175
190
243
260
245
210
206
195
181
255
207
212
212
194
191
110
178
152
244
222
238
225
225
201
223
262
129
185
226
179
216
190
195
194
208
165
140
246
183
227
217
134
173
236
171
239
272
198
229
217
203
202
185
191
185
144
167
174
213
270
179
191
209
179
167
121
179
213
163
235
233
159
242
235
140
204
173
179
205
162
169
233
207
257
250
183
225
174
277
182
261
232
164
222
211
195
204
216
142
209
305
195
181
124
166
190
137
203
215
111
219
201
199
243
208
189
220
223
205
222
140
187
162
171
140
279
203
211
182
203
243
215
204
259
176
220
211
267
221
195
243
202
202
210
252
171
221
231
203
221
186
231
183
225
205
211
222
166
198
215
207
194
193
191
149
205
212
211
207
214
212
204
192
238
239
152
246
213
164
233
219
156
182
203
181
232
233
172
232
150
173
226
212
229
206
203
202
226
207
191
154
236
196
170
192
254
201
202
216
252
218
215
224
199
220
193
177
183
224
196
145
143
259
219
203
210
246
221
171
198
204
206
174
212
286
209
259
189
215
159
217
196
227
172
246
216
234
146
235
187
176
141
170
180
209
234
254
205
239
222
249
204
259
221
180
180
228
219
181
163
204
173
200
130
236
241
199
201
159
227
178
171
204
188
157
180
222
212
152
180
161
171
202
231
208
197
247
221
283
181
206
175
213
156
245
176
160
215
176
206
172
226
205
166
200
216
190
140
197
165
127
194
174
170
134
216
113
203
222
182
142
181
246
215
224
164
200
198
224
222
226
152
196
241
194
177
190
210
150
229
182
190
224
248
195
194
199
182
221
181
189
266
271
179
195
189
171
216
271
166
180
206
238
231
186
175
252
217
243
155
196
188
236
195
136
148
195
197
211
233
206
178
171
196
187
152
177
177
248
177
205
188
174
143
168
191
146
184
180
157
192
149
161
230
178
178
184
231
211
227
167
176
186
158
164
227
221
212
258
195
177
166
181
172
196
202
263
149
236
141
175
188
190
249
166
227
236
268
213
218
179
192
225
93
178
187
182
192
219
169
202
157
221
209
218
156
172
203
224
203
213
233
169
165
178
150
197
172
246
274
238
246
239
237
179
205
204
230
181
238
228
214
213
149
217
166
202
138
145
199
157
194
219
137
256
233
172
190
219
229
236
265
189
236
206
202
184
211
128
248
216
182
281
198
182
226
186
187
204
260
224
178
165
224
196
164
237
249
149
185
229
252
201
228
282
182
222
167
237
217
204
183
216
235
247
234
200
220
217
180
209
191
218
223
278
234
177
237
210
225
265
199
212
155
184
219
186
180
222
228
225
156
155
253
198
226
187
231
250
207
239
188
224
169
192
257
188
182
249
217
162
198
205
149
235
153
178
143
246
234
217
187
122
189
233
232
232
212
145
176
253
246
173
231
161
250
164
187
190
226
204
187
187
211
238
168
193
233
217
234
225
209
163
224
173
222
198
199
248
205
214
203
163
193
213
226
191
166
223
223
102
226
157
151
280
157
226
167
218
206
189
196
164
174
240
237
205
214
189
218
222
180
235
211
219
232
218
218
204
203
207
272
271
210
235
203
169
172
239
193
215
168
212
208
145
135
182
180
212
152
196
211
193
166
177
122
219
144
236
211
176
172
236
249
208
189
125
256
197
242
224
151
175
237
205
185
161
206
212
150
186
177
144
227
227
160
213
146
271
222
209
171
131
197
219
212
257
180
249
193
222
163
199
174
154
234
223
187
251
153
200
129
195
231
243
175
154
268
147
209
193
247
139
205
196
133
193
129
183
153
221
283
210
189
237
220
193
126
227
207
187
154
257
162
195
216
179
243
224
123
159
183
166
177
265
175
219
196
268
181
245
242
160
198
245
211
210
213
197
174
150
219
194
213
250
232
166
221
141
229
179
208
231
209
160
293
256
203
203
191
230
214
214
221
240
129
144
181
146
179
194
193
195
127
276
138
153
213
183
241
237
132
220
216
156
230
172
180
246
185
234
249
209
194
168
176
262
249
172
184
131
239
129
174
234
269
145
232
217
297
245
208
205
226
180
209
205
210
161
199
229
198
213
161
220
211
234
135
229
212
189
193
209
171
163
256
157
160
208
175
173
207
181
207
223
222
245
172
199
204
201
152
156
215
215
191
161
248
249
188
210
253
184
175
182
234
188
206
229
214
219
180
224
198
145
127
198
203
190
208
254
162
204
168
220
158
214
237
177
151
184
213
243
224
227
196
129
236
252
182
230
181
232
172
230
243
173
180
196
193
170
226
181
270
191
250
200
181
152
202
224
130
148
198
164
213
216
244
149
270
160
272
224
173
215
209
175
198
215
217
234
198
232
196
162
114
210
175
190
194
179
242
210
247
215
199
210
177
228
223
239
250
216
164
209
269
156
191
218
171
227
164
188
117
221
158
178
154
130
150
174
222
170
228
196
244
233
210
171
218
232
184
236
247
196
186
221
219
202
212
239
192
233
130
238
241
247
153
194
161
190
198
183
200
150
141
237
155
198
166
208
216
200
220
205
204
197
230
215
197
206
191
229
228
197
226
203
169
197
146
169
156
224
260
230
188
165
200
221
224
177
240
230
207
260
221
239
184
257
207
197
252
187
174
170
221
174
220
192
205
221
196
214
210
197
210
224
225
214
225
124
190
198
203
124
197
233
162
239
139
137
132
235
211
212
178
189
199
229
169
177
217
198
182
150
215
265
148
196
259
150
162
225
182
220
216
221
143
200
195
217
176
191
198
238
242
136
168
203
219
154
215
205
170
183
221
259
151
146
180
233
206
227
217
216
238
241
141
188
127
134
155
178
188
207
159
216
158
160
208
208
224
164
224
248
205
204
204
178
177
199
218
157
257
171
205
132
216
241
266
246
188
196
176
199
168
164
226
151
188
173
255
199
165
231
203
147
203
220
135
147
175
206
247
174
191
232
194
167
180
196
215
177
164
209
226
148
227
186
211
180
164
164
214
226
229
202
222
184
203
202
199
200
134
135
135
165
188
201
210
180
216
191
197
182
215
160
213
149
160
207
226
180
253
201
251
246
268
217
112
257
194
216
149
185
218
218
184
159
238
238
211
187
207
255
203
210
206
201
212
252
204
269
158
215
155
202
191
168
200
166
180
233
226
179
168
220
130
216
188
182
237
212
179
142
170
155
212
197
201
178
176
232
190
209
220
213
262
188
174
185
208
181
170
241
264
238
255
208
236
132
252
161
209
162
168
169
138
161
185
255
238
185
196
238
246
217
231
229
196
137
242
161
160
153
210
240
192
205
143
175
178
123
198
184
229
260
207
249
198
164
228
191
219
168
259
177
220
168
249
181
226
183
263
197
162
207
147
231
205
192
190
203
217
155
166
195
192
199
149
170
171
166
173
173
171
213
165
202
239
255
231
190
179
199
163
168
297
179
182
227
164
179
211
216
225
269
213
173
213
186
181
208
147
223
246
193
245
227
163
191
183
163
209
193
135
161
171
186
177
222
180
255
162
249
162
194
231
208
224
158
230
188
204
151
162
219
191
267
179
163
206
180
196
184
184
165
251
189
208
215
161
241
153
156
149
200
281
203
220
257
190
196
194
249
147
140
171
178
227
222
125
178
223
181
199
208
171
168
163
171
152
228
214
211
141
260
201
195
200
129
197
229
178
231
176
189
197
184
212
187
233
236
231
229
187
228
195
213
213
122
141
224
191
184
228
242
239
193
206
175
212
215
181
188
213
128
192
157
192
179
164
237
189
181
137
213
232
149
175
152
178
171
165
222
204
222
166
206
217
207
251
211
200
205
152
212
151
203
218
162
214
138
184
181
226
203
145
204
254
200
168
218
137
217
217
204
226
192
181
159
224
196
200
252
231
169
203
120
203
208
236
159
202
217
205
211
172
205
214
218
167
203
149
162
170
207
204
172
262
257
179
188
205
184
204
207
158
197
129
157
216
233
183
147
130
181
161
195
134
215
234
160
256
253
201
201
149
182
231
163
181
225
160
282
237
196
246
159
218
162
206
116
198
196
202
238
215
214
196
169
116
182
178
271
256
213
170
209
186
132
193
223
181
273
232
239
205
205
200
198
234
203
190
207
176
212
219
163
230
195
197
191
233
225
190
198
122
189
183
153
187
205
161
229
158
219
198
200
220
177
249
167
191
130
204
197
216
193
173
262
245
150
157
261
192
183
212
247
225
231
184
192
191
173
233
203
205
138
202
172
175
180
218
216
208
258
161
248
255
196
171
177
147
186
165
176
230
183
196
176
161
227
228
200
196
218
215
89
197
152
208
241
219
189
194
154
189
184
250
237
234
234
239
235
180
140
220
226
218
165
133
176
201
188
157
259
155
143
212
205
193
238
215
181
229
209
219
177
191
176
191
215
208
166
198
213
149
191
115
244
220
166
251
184
204
189
227
219
191
169
108
221
181
175
121
220
209
156
227
148
194
202
187
226
185
196
247
267
137
156
208
213
237
235
211
180
232
224
213
204
239
196
183
204
160
139
187
248
189
228
177
162
142
174
219
183
195
140
207
184
185
184
236
202
263
211
184
187
232
159
165
207
235
208
141
195
211
224
166
189
181
203
108
162
180
172
199
197
160
194
225
226
209
150
178
184
257
185
214
226
218
129
188
167
270
237
178
167
134
185
207
202
217
250
217
153
167
232
209
180
212
271
255
217
189
220
258
164
194
169
121
192
205
248
212
199
169
214
243
245
213
282
187
147
147
150
217
201
151
203
238
135
198
233
170
189
200
235
145
209
246
214
91
159
188
165
211
201
173
189
200
186
220
195
198
162
233
167
196
183
224
173
143
206
251
221
250
172
173
203
132
245
137
200
155
217
228
172
197
196
236
155
241
203
208
164
239
174
199
167
214
276
128
206
171
209
179
180
183
188
249
221
148
266
208
230
221
201
228
193
206
186
211
189
183
210
205
216
239
227
193
242
219
194
273
164
191
218
165
213
230
193
243
222
218
169
184
222
172
204
185
169
189
218
225
208
169
190
174
136
207
151
180
166
180
174
129
195
167
219
227
195
228
211
161
237
271
187
162
186
241
171
227
259
206
237
161
219
191
205
148
200
189
219
176
200
215
157
213
214
199
198
151
142
219
223
257
241
236
205
227
207
220
236
180
177
188
196
288
132
193
199
202
165
246
208
245
182
228
153
173
238
222
193
257
187
173
250
222
206
180
184
222
208
174
194
212
196
191
213
236
228
201
196
152
172
222
219
146
151
258
195
176
187
205
170
208
221
177
220
225
206
170
168
239
155
160
204
252
218
203
217
197
198
163
106
177
198
227
241
191
254
230
269
216
236
242
254
234
180
246
148
249
280
229
244
183
206
168
214
233
196
163
193
170
221
200
223
173
238
185
173
172
180
246
162
208
194
233
164
208
282
171
166
193
112
198
164
163
279
189
206
190
195
144
152
194
208
188
149
210
213
213
242
177
156
151
245
179
159
210
204
270
199
232
213
201
242
204
215
209
260
211
210
241
204
215
203
178
276
210
176
208
220
162
202
208
215
124
186
228
277
262
181
219
179
218
237
243
198
204
195
207
202
205
218
153
179
229
288
255
169
217
219
113
183
237
257
226
174
220
265
202
171
197
214
220
173
213
176
217
228
180
210
139
170
134
231
225
179
162
221
209
179
239
245
183
167
230
147
208
173
223
191
147
201
229
212
212
261
210
208
264
178
144
276
203
178
235
256
161
214
243
159
221
204
264
208
201
163
187
243
222
183
208
160
248
197
202
167
174
240
228
195
222
201
222
234
225
226
240
185
204
228
223
173
205
230
208
202
253
182
212
181
167
218
187
179
199
192
196
186
117
194
190
218
117
191
200
226
214
194
145
200
195
181
262
281
230
225
236
167
165
228
243
236
185
212
173
140
156
196
233
236
234
198
190
190
213
172
202
164
159
209
176
197
236
169
202
218
189
188
230
240
250
212
116
287
191
186
184
201
218
186
152
170
192
249
231
202
176
228
144
197
154
266
240
207
193
186
145
175
195
244
188
163
183
185
182
260
181
238
180
168
160
232
187
189
194
133
223
159
202
195
153
161
177
218
160
230
220
207
145
211
136
208
222
179
184
180
162
254
229
217
201
237
263
238
192
215
168
231
165
235
179
198
196
162
188
175
184
227
231
221
211
199
217
196
201
173
207
201
222
260
220
205
152
184
240
159
211
236
180
168
198
194
227
218
179
235
152
201
221
167
187
187
175
209
253
238
201
136
218
205
284
161
207
171
254
234
117
180
167
221
208
217
221
162
183
220
165
179
215
169
185
116
188
118
204
204
188
173
236
188
263
198
231
172
182
189
180
205
169
217
240
265
214
197
239
160
275
222
182
166
172
138
171
193
181
209
186
197
255
238
237
222
175
173
214
171
213
195
153
249
207
227
170
237
163
252
135
194
249
192
246
247
194
182
168
207
209
255
147
201
124
174
214
200
199
143
222
251
237
148
123
236
254
195
179
252
177
168
214
182
172
189
220
231
188
176
246
233
206
241
149
163
217
198
232
208
256
208
214
217
186
265
211
224
227
157
214
158
193
203
215
212
246
228
228
184
204
103
191
204
184
261
230
222
197
168
182
228
207
169
199
219
224
194
218
226
172
236
171
202
188
177
213
129
181
242
192
200
191
213
248
164
146
211
230
251
143
198
181
219
195
158
188
225
190
197
234
229
236
197
242
208
164
204
132
181
130
248
226
197
190
202
186
206
194
232
181
184
169
229
192
201
133
220
191
212
145
210
215
274
166
204
246
202
243
213
198
203
166
170
162
279
155
202
212
198
152
194
245
163
167
225
232
168
162
213
231
242
223
194
172
160
184
282
224
126
190
252
218
217
130
235
230
195
188
183
236
145
200
197
197
235
149
179
210
232
227
235
195
233
230
238
250
160
139
169
191
166
139
200
183
266
243
125
179
189
144
198
190
219
211
203
223
221
252
119
215
189
219
160
198
186
206
150
223
181
257
241
150
231
226
209
192
185
153
235
218
143
241
215
203
178
201
141
161
198
243
182
193
234
211
164
214
199
193
210
202
169
204
230
245
196
160
216
156
229
175
196
193
220
239
224
238
199
228
184
211
232
254
237
231
220
241
204
224
185
171
212
212
196
181
218
244
177
202
258
211
164
164
174
158
158
164
162
192
253
177
179
211
259
164
175
205
182
254
228
127
193
210
209
229
277
186
214
187
195
203
174
251
203
282
191
183
164
114
157
218
208
186
232
197
217
138
219
171
189
237
215
236
193
256
239
193
207
125
148
235
239
222
201
201
187
192
195
176
220
247
202
195
247
186
190
230
185
208
206
198
183
225
245
214
158
190
267
192
191
258
125
213
200
151
256
145
190
218
199
207
189
151
155
207
217
240
203
172
208
233
220
204
198
132
182
256
202
160
115
217
141
168
199
267
189
181
163
231
166
231
182
262
218
149
187
224
202
236
210
165
235
234
240
204
179
227
225
183
245
174
164
182
206
156
227
207
229
178
186
201
213
280
221
187
190
171
201
155
252
208
185
178
209
200
170
135
200
203
200
105
205
223
148
175
219
211
209
222
197
199
225
210
199
155
184
207
124
222
218
228
187
198
204
258
254
247
232
173
216
173
164
227
231
240
196
185
184
150
192
197
176
191
241
151
153
190
221
208
156
179
155
194
192
213
206
224
193
215
203
108
152
215
202
175
176
142
152
225
178
157
164
252
223
194
236
160
202
217
179
183
224
183
137
225
188
237
214
201
154
168
155
210
209
192
170
158
238
161
227
215
187
201
229
211
205
215
203
222
215
176
170
189
256
251
199
260
188
226
217
139
181
217
179
210
217
196
201
244
190
175
177
253
118
211
230
179
231
202
191
242
171
196
126
243
222
256
151
217
216
199
211
192
160
204
224
227
257
186
240
220
144
258
211
127
190
224
200
179
208
206
212
239
243
200
182
198
254
158
218
223
199
195
206
145
168
205
170
276
182
160
169
217
205
200
219
230
190
231
223
191
196
196
180
200
179
210
252
204
184
229
213
190
148
153
230
218
162
163
157
154
259
209
242
160
224
197
173
146
168
246
133
266
230
161
210
202
199
152
159
192
131
186
175
202
199
228
230
226
144
221
199
150
231
163
218
188
161
241
187
114
244
239
209
167
235
204
239
210
203
187
234
240
246
177
231
257
211
192
187
176
171
193
158
199
186
160
219
178
218
234
219
211
212
182
183
172
281
216
199
172
216
256
181
231
260
220
210
188
132
163
165
215
221
208
156
248
246
198
158
238
208
218
233
156
202
229
165
237
140
216
239
223
233
152
212
194
225
222
236
225
217
182
165
166
266
203
177
164
238
209
271
226
206
169
266
196
202
210
190
209
235
202
247
177
244
213
142
166
246
241
215
180
185
185
243
231
211
179
161
194
207
160
239
172
193
164
236
173
255
221
239
226
137
200
196
228
227
201
107
133
207
163
233
214
202
170
199
168
209
211
196
205
167
152
136
210
133
219
245
208
179
254
162
195
276
196
173
279
248
220
214
218
193
235
247
239
191
204
187
162
190
184
182
163
136
217
191
204
196
277
159
224
187
220
220
189
179
195
210
203
199
169
217
201
224
220
163
237
218
195
201
120
169
233
218
214
245
217
215
210
185
200
196
250
208
196
206
198
224
201
232
205
205
216
177
156
247
199
214
228
241
208
187
214
184
192
244
202
254
215
222
219
200
172
216
225
252
224
184
191
181
213
188
215
232
109
193
237
168
222
256
139
190
173
244
187
223
200
171
203
268
233
269
148
203
168
189
257
194
262
181
166
137
156
189
263
250
217
197
188
233
219
235
247
247
277
202
178
244
166
239
207
238
214
221
245
289
207
209
162
205
189
232
244
195
199
195
188
195
144
167
213
137
179
247
231
191
208
206
238
178
167
179
192
175
203
221
172
195
125
220
168
210
196
232
137
242
192
156
164
178
243
265
212
183
143
147
247
206
244
221
218
197
192
166
164
158
222
211
231
204
155
195
153
218
210
166
187
166
167
236
211
170
188
248
179
235
218
180
133
197
233
266
252
173
242
225
193
224
190
122
240
201
227
222
196
234
263
217
203
150
140
226
178
220
224
198
185
221
201
254
218
206
198
189
219
220
216
197
165
186
202
185
203
196
212
174
202
134
262
194
214
176
199
149
247
245
208
139
176
224
293
172
158
216
209
175
179
199
213
170
172
231
198
239
197
190
183
216
162
203
156
243
168
232
204
165
253
253
193
170
245
269
224
181
178
221
175
209
248
226
200
177
142
214
271
200
131
197
110
216
185
133
262
201
183
132
177
179
176
164
209
206
139
184
224
218
258
206
205
199
231
178
177
222
185
202
185
165
204
218
204
250
214
205
164
146
156
167
160
185
270
192
269
200
205
153
223
217
220
205
196
261
206
197
213
195
152
201
206
236
190
114
221
205
199
230
203
254
181
195
218
221
249
205
196
216
191
186
204
170
177
189
207
230
170
211
207
169
140
155
234
254
166
250
173
192
211
216
202
222
263
200
133
220
205
198
237
199
195
156
201
205
214
130
156
194
234
170
209
198
206
198
229
195
212
199
196
181
140
215
208
178
116
174
195
218
215
178
213
177
223
236
222
276
152
221
238
192
225
200
179
126
206
231
163
243
229
226
212
183
178
185
218
226
230
177
194
148
214
166
214
163
222
250
237
224
200
212
224
175
209
139
163
193
213
133
205
199
173
142
237
247
195
135
145
245
165
237
190
203
187
150
177
190
165
176
207
156
239
262
186
188
243
216
226
208
194
193
205
138
206
224
153
231
115
215
207
169
202
121
167
224
188
226
244
215
137
246
175
201
213
227
183
114
212
198
177
170
213
160
171
199
194
190
190
213
193
202
231
192
186
190
209
221
233
69
215
254
200
233
227
153
235
194
205
294
250
224
153
207
218
187
195
156
241
199
204
157
175
240
205
229
216
193
226
195
187
187
150
164
154
228
234
208
192
150
146
226
221
203
197
188
169
164
188
221
200
155
233
221
164
218
273
188
210
211
194
248
144
235
239
144
244
240
236
233
172
236
179
193
181
235
143
220
236
248
195
207
172
214
200
225
235
210
255
233
269
172
213
223
280
238
232
189
197
197
203
227
189
185
150
182
244
174
166
178
187
200
236
289
168
200
209
221
247
228
267
150
209
242
230
174
201
200
261
164
212
148
120
274
270
228
216
211
244
223
183
189
206
212
183
144
211
159
199
221
214
187
180
219
262
211
207
148
214
270
245
173
227
220
166
207
204
229
234
171
173
168
240
190
251
183
179
207
261
245
196
190
190
204
158
180
215
158
249
161
183
214
247
168
249
150
224
215
225
225
252
222
224
235
233
183
186
165
187
198
202
230
224
183
185
172
180
244
180
210
234
190
130
231
190
219
214
241
195
211
154
205
189
259
174
231
145
197
210
165
258
257
221
197
228
124
233
124
260
186
171
230
206
172
196
173
177
152
216
168
167
180
229
241
151
191
247
167
209
197
160
232
189
242
158
172
202
211
218
175
228
234
169
193
177
146
189
132
131
146
170
195
238
149
170
183
199
236
158
207
173
163
205
217
234
203
176
175
185
251
182
147
171
173
221
267
255
232
222
184
241
247
207
146
206
270
167
249
257
230
182
197
164
215
174
239
239
164
140
222
181
214
248
188
223
137
181
196
195
208
173
182
191
171
152
135
233
230
185
224
172
243
177
255
175
196
159
156
252
174
202
189
217
213
199
146
244
216
260
220
187
248
156
240
216
214
155
204
203
199
155
217
225
160
250
197
196
233
194
159
198
203
237
230
192
223
223
175
230
204
218
231
196
211
183
129
140
197
195
227
236
207
200
164
212
198
215
155
209
243
231
243
192
228
191
181
222
164
172
168
216
187
169
157
226
277
170
188
224
225
258
192
203
234
155
170
252
191
202
148
162
241
208
127
234
247
183
184
184
227
222
191
208
136
187
250
201
183
183
229
220
163
222
189
198
183
142
216
219
159
244
181
171
179
167
208
199
194
216
206
159
172
233
205
220
221
231
209
223
262
211
201
223
185
221
180
210
164
190
253
183
201
218
198
132
181
237
204
290
201
220
188
198
248
185
223
188
252
225
227
192
201
197
183
180
183
220
177
149
151
197
207
184
219
160
165
208
266
188
213
238
222
207
159
188
193
217
141
210
207
200
127
125
195
164
217
170
200
186
207
227
173
184
154
233
183
210
183
217
228
201
209
213
159
210
199
184
153
241
267
204
215
204
165
203
206
188
237
226
217
175
272
163
254
179
170
187
169
214
126
148
198
223
235
222
215
181
183
176
181
231
172
237
203
185
275
234
194
173
196
199
213
178
219
219
165
287
166
187
221
186
209
155
213
190
170
208
229
261
237
206
182
208
159
211
186
176
288
242
135
241
222
156
188
185
215
198
195
211
207
199
181
186
181
200
126
176
193
204
212
238
153
258
223
162
223
171
155
236
177
219
225
240
239
186
201
204
149
196
219
228
263
170
146
279
220
241
168
151
280
211
202
178
191
175
193
303
177
210
194
221
181
222
187
155
231
192
159
235
217
207
223
198
189
128
218
210
187
199
187
183
277
198
198
202
197
240
182
230
271
245
188
186
134
212
148
157
242
138
146
222
219
193
225
219
224
236
194
226
235
225
136
226
195
165
228
204
228
153
247
248
202
290
190
208
256
190
193
238
178
198
258
274
208
222
104
187
238
145
197
214
199
190
170
213
266
237
144
250
166
216
216
220
225
197
254
178
164
214
237
220
198
218
214
211
231
233
224
174
260
254
187
186
201
194
192
195
219
175
204
201
269
188
189
195
196
263
169
199
221
202
201
227
223
146
131
194
203
173
276
239
198
185
188
228
181
225
228
237
162
218
219
169
145
180
195
233
146
235
210
203
243
209
198
233
202
188
189
242
193
254
214
218
229
162
138
174
229
241
285
212
229
227
196
179
147
215
231
242
180
155
196
164
199
265
176
199
220
230
228
190
173
154
218
145
178
155
176
210
160
214
115
282
262
183
229
212
139
214
200
243
242
261
223
187
212
234
195
170
237
201
201
218
196
238
248
187
181
213
202
251
199
211
208
214
233
205
207
261
211
157
181
90
237
167
253
150
174
196
218
224
185
204
218
197
212
249
209
154
229
276
249
187
206
201
257
157
159
223
200
177
193
205
228
252
200
197
221
238
237
178
213
173
169
211
172
166
204
220
162
191
177
205
172
219
267
205
233
216
239
198
208
236
195
254
199
163
240
186
248
174
231
209
231
239
238
197
183
244
186
204
208
170
262
174
247
170
180
208
131
231
198
173
175
186
204
226
235
210
263
199
255
181
236
215
165
211
200
257
187
278
257
205
229
251
174
215
108
202
203
225
254
221
209
171
247
145
264
164
147
247
207
188
174
163
159
179
220
215
210
205
225
209
127
202
200
231
249
219
154
213
232
195
167
209
194
189
180
224
162
181
193
195
256
177
176
177
142
141
203
176
221
151
122
210
190
191
164
204
191
226
199
234
111
172
268
217
262
176
198
246
187
158
240
215
169
198
219
225
169
155
201
163
244
137
232
150
190
197
124
233
203
186
168
137
205
147
126
204
225
203
204
188
205
159
202
213
199
228
211
189
213
161
197
245
230
186
177
206
182
229
189
175
277
212
181
195
249
175
136
152
213
223
252
200
205
179
172
162
111
213
193
155
182
277
228
162
224
197
175
193
204
228
180
209
213
143
218
206
194
160
235
208
177
229
200
185
222
246
242
144
207
207
164
215
177
250
206
204
155
210
183
213
220
232
176
166
136
192
153
201
222
212
164
148
235
170
182
208
232
180
188
204
149
223
167
166
257
128
190
219
175
230
170
197
222
211
194
189
220
252
184
217
183
154
239
193
158
217
181
155
205
136
149
174
173
221
220
280
214
184
173
163
187
182
205
120
212
150
206
202
149
236
168
236
115
210
206
174
167
183
197
191
207
119
251
226
178
169
189
175
274
183
208
211
213
201
185
223
189
226
176
196
258
228
225
205
141
195
225
107
198
261
179
135
220
259
188
191
242
190
202
199
189
195
250
197
252
197
239
257
165
215
249
231
184
214
211
211
158
146
194
178
192
158
143
166
243
194
176
216
176
194
172
226
261
222
173
186
132
134
217
188
178
173
175
186
198
184
199
222
157
222
216
228
163
238
171
230
227
224
187
214
220
200
169
176
245
177
211
198
237
238
137
213
202
226
200
124
204
176
209
125
169
169
204
169
227
215
172
211
220
183
204
235
230
195
213
204
219
167
168
218
169
221
211
209
196
191
136
164
195
166
249
216
201
223
157
222
225
206
197
187
217
220
158
177
208
183
178
179
192
240
170
223
222
197
202
227
238
217
182
238
179
198
191
141
171
209
189
172
193
163
241
220
182
240
262
226
262
173
177
231
140
265
203
157
176
138
177
162
139
195
185
224
223
147
259
216
199
134
206
212
201
229
149
173
162
282
185
202
285
185
202
235
222
251
239
197
260
216
182
225
256
210
222
217
221
234
198
236
205
213
247
190
234
214
119
195
210
236
275
260
214
219
196
137
143
233
225
213
229
163
192
186
214
219
156
234
157
166
186
192
260
205
192
199
176
207
178
212
136
239
215
218
180
203
223
174
206
188
166
191
204
223
172
210
187
223
173
184
166
244
187
211
187
138
204
231
200
270
217
124
176
210
223
155
194
159
232
205
221
219
219
214
227
232
170
215
267
195
218
198
197
232
251
243
235
211
186
225
161
219
233
214
202
210
184
179
174
215
264
250
254
214
197
109
212
195
189
206
206
149
214
193
226
189
228
233
221
209
223
206
211
125
171
164
232
189
177
210
206
233
228
215
198
244
197
224
246
222
185
172
204
211
182
201
169
191
211
167
161
206
202
171
196
186
170
169
218
178
195
191
192
214
206
233
222
183
153
202
226
193
230
161
148
207
221
173
219
157
238
178
234
229
197
159
81
186
233
251
190
273
183
228
197
171
199
224
261
196
228
180
157
220
171
191
199
206
161
223
163
206
180
207
151
196
188
202
224
134
193
219
173
227
162
223
228
202
227
172
239
177
213
177
190
202
188
222
198
249
185
179
191
189
230
187
225
216
185
192
202
188
163
166
242
186
203
179
192
155
191
168
166
233
186
218
187
187
141
195
180
258
159
207
190
220
151
268
233
220
191
266
183
181
240
198
131
239
208
162
259
159
213
202
186
175
176
245
202
201
238
234
224
217
211
193
248
157
195
223
229
271
212
155
164
212
181
234
192
216
199
177
184
145
193
169
225
186
212
236
242
218
197
144
200
190
208
138
236
181
195
169
226
150
216
188
242
189
144
214
193
140
233
215
236
124
217
232
266
231
74
169
203
179
228
185
247
227
161
196
211
206
204
193
98
156
197
241
252
156
200
200
150
215
215
178
165
231
188
225
223
184
291
222
188
235
155
223
176
246
251
176
203
173
193
198
222
207
292
183
194
180
212
183
220
191
230
154
203
224
197
185
236
227
200
200
249
241
192
223
183
232
225
149
227
169
225
233
201
234
200
168
237
154
190
218
164
208
211
189
214
190
184
248
185
182
263
176
203
230
229
203
235
163
197
174
215
174
158
197
185
182
196
184
217
178
177
195
181
168
213
213
217
215
272
214
238
190
204
239
190
155
201
195
190
143
180
214
179
241
227
174
167
243
252
177
189
207
208
214
236
214
154
246
255
206
153
177
147
242
207
174
180
228
217
188
194
203
205
290
183
190
229
213
221
219
180
249
185
199
302
262
200
238
233
207
183
217
187
180
185
206
218
208
274
208
175
198
222
227
172
186
196
229
228
256
220
198
259
236
210
210
141
232
189
224
182
201
235
208
194
209
201
192
210
157
234
198
211
230
212
193
244
229
233
231
175
243
174
144
194
135
191
244
235
174
200
215
248
259
206
188
190
205
235
173
266
193
230
149
233
124
223
234
179
240
217
243
97
172
237
219
167
205
159
226
182
210
198
259
133
202
134
188
179
243
224
189
201
199
178
187
221
220
215
198
237
211
214
192
166
212
226
243
165
230
167
244
195
159
181
257
180
168
94
252
198
225
269
149
228
121
239
196
245
196
204
183
189
157
182
170
185
231
184
189
221
195
182
175
151
148
180
209
211
193
214
193
192
226
182
246
174
212
235
178
186
220
214
207
197
177
172
234
240
186
239
220
229
205
168
207
230
231
159
145
210
217
219
173
203
238
244
220
228
210
167
230
251
193
162
255
127
212
135
213
168
235
187
228
170
230
123
246
153
227
235
188
167
172
229
96
214
215
205
123
173
164
201
195
186
225
272
169
163
233
157
215
206
267
243
189
163
163
179
215
166
223
184
181
207
257
209
150
173
179
198
166
237
222
178
226
248
123
215
193
235
168
204
183
127
245
214
224
192
247
199
199
221
241
179
211
184
173
177
178
148
224
238
223
134
204
220
190
168
159
177
194
202
210
196
212
156
159
207
226
235
200
216
209
209
189
178
187
225
174
214
186
210
223
192
284
181
262
187
146
250
193
226
187
166
221
222
235
241
107
236
277
248
218
142
192
192
163
205
173
271
190
233
152
219
284
204
212
170
186
151
113
185
239
195
148
197
215
185
211
249
218
217
220
253
182
166
166
152
218
223
209
259
189
216
172
189
238
164
178
152
183
223
188
205
187
168
207
195
250
186
264
229
182
214
247
234
203
208
195
192
193
216
168
242
230
219
213
151
245
265
165
247
221
226
229
226
178
159
236
173
232
198
203
200
179
169
245
153
230
186
227
195
227
213
193
205
233
175
135
213
183
235
212
169
160
151
229
203
171
194
236
229
205
200
188
211
134
274
180
230
146
222
152
128
182
131
178
263
246
142
227
161
226
221
198
180
261
206
193
168
162
246
178
216
238
163
271
246
204
193
130
269
207
235
198
224
203
215
154
148
127
205
256
263
227
244
195
232
168
232
169
189
182
223
212
190
254
233
188
212
185
265
231
271
202
203
184
184
189
118
264
187
227
188
209
212
190
179
201
221
198
191
199
233
183
158
128
208
256
187
122
191
190
197
203
204
197
205
158
204
218
172
166
232
114
250
244
168
252
205
158
205
186
186
237
270
179
200
212
135
114
226
208
243
211
245
244
202
199
221
162
244
185
225
236
177
173
193
246
188
203
155
168
233
211
133
230
194
206
222
200
202
180
194
248
172
204
240
149
184
252
134
182
230
189
192
156
135
180
153
188
170
177
268
167
263
204
215
207
144
165
198
168
204
251
168
243
238
209
193
236
209
173
190
264
208
215
206
217
190
193
147
163
146
208
218
201
185
237
228
122
216
237
228
216
191
196
175
256
222
165
166
203
200
185
202
265
226
185
133
134
207
223
231
154
218
150
220
286
154
216
201
191
161
231
191
222
208
198
189
221
219
219
226
161
176
194
166
215
183
266
210
202
224
215
211
270
242
160
179
194
236
172
208
211
203
192
209
224
247
127
197
242
200
183
212
224
176
185
170
204
169
220
215
200
171
198
183
238
204
212
211
224
155
234
189
223
225
238
171
185
244
166
191
144
244
233
227
218
208
144
196
262
147
257
210
229
164
183
136
199
202
161
219
211
160
169
241
183
164
210
192
222
233
185
210
206
181
200
164
167
233
195
164
157
180
181
165
199
262
243
184
234
201
217
168
239
155
248
229
280
177
181
149
154
205
192
191
240
209
195
178
192
188
210
254
175
227
258
176
184
189
203
199
208
190
191
186
177
190
174
267
190
209
190
240
175
185
167
187
188
175
209
177
191
202
149
200
202
246
190
190
168
219
195
178
196
181
231
245
242
217
163
210
235
168
245
245
256
249
245
208
195
212
236
201
229
239
249
184
216
210
181
196
203
149
222
197
164
190
148
214
212
220
215
204
184
239
166
213
208
213
202
148
211
238
177
121
148
210
174
196
204
155
217
120
254
247
216
160
236
227
179
191
182
223
184
194
172
205
236
214
247
149
201
225
148
192
207
265
204
232
247
178
182
166
264
165
196
151
220
171
191
208
268
179
194
204
198
233
179
217
210
186
210
190
232
161
249
189
206
255
225
193
236
141
244
218
184
147
225
203
122
226
218
174
188
146
232
190
239
210
158
216
200
196
224
217
234
157
228
203
208
191
183
250
206
202
186
254
213
211
194
161
223
192
158
180
201
165
168
243
124
236
151
255
229
174
202
213
217
219
211
223
194
131
204
192
149
240
199
189
164
203
170
228
189
222
208
159
153
216
217
193
229
250
188
251
223
247
199
163
247
190
188
202
250
198
190
239
167
200
191
148
209
180
162
170
203
170
161
200
205
271
211
195
217
211
192
178
216
211
202
203
242
149
224
178
174
217
156
198
179
208
170
172
194
178
177
228
218
194
228
123
209
203
232
231
185
199
169
212
187
227
224
221
218
236
178
201
220
199
209
174
199
147
226
205
252
199
220
169
194
273
202
230
235
237
197
188
221
234
137
237
163
166
252
186
181
159
233
171
164
217
157
194
209
192
279
227
188
213
187
251
181
180
178
200
149
180
211
226
216
161
234
158
235
170
167
197
125
180
207
257
141
164
170
193
183
195
237
236
215
234
225
172
209
150
256
146
221
288
207
199
183
243
158
187
181
224
220
165
175
201
136
243
185
199
240
177
250
215
222
158
189
223
208
199
211
147
176
234
199
228
216
222
214
163
217
160
188
229
194
199
212
236
254
130
174
233
215
206
163
180
198
182
217
227
212
184
168
223
227
245
217
220
233
209
217
129
209
214
271
180
221
252
215
203
180
241
209
182
232
152
213
208
185
172
178
232
229
220
160
223
232
167
154
186
245
227
184
192
176
128
191
181
202
231
188
198
200
174
151
153
168
185
150
163
190
222
267
215
190
204
174
184
215
192
278
215
173
209
133
167
149
201
174
203
205
127
219
181
232
184
210
182
191
182
223
198
233
259
231
211
226
259
200
232
215
190
156
217
271
257
232
220
221
199
221
193
288
237
199
257
190
202
194
190
187
126
205
211
202
212
147
191
118
182
195
157
170
212
207
191
182
173
138
192
165
136
158
164
194
241
206
262
167
217
183
215
213
212
161
188
180
182
222
214
212
227
233
214
241
171
218
138
235
203
237
192
168
135
258
223
242
250
193
198
176
198
162
172
147
242
225
180
175
191
251
204
229
209
94
160
188
202
158
253
237
199
159
172
214
147
206
228
189
231
176
195
217
257
232
206
221
213
202
228
212
240
148
141
172
178
169
244
171
161
219
216
213
215
226
181
198
254
155
160
183
86
221
142
210
237
175
173
147
196
188
199
203
273
205
140
234
179
190
145
235
211
183
221
250
201
154
231
231
223
161
185
230
203
195
192
275
224
229
205
231
215
191
180
204
199
191
177
199
216
222
135
230
253
199
250
165
194
171
118
219
241
213
234
148
221
233
216
205
225
180
178
238
219
153
225
167
200
235
215
187
195
149
165
277
172
150
258
207
232
209
239
238
218
220
241
240
269
204
177
177
211
215
193
191
234
240
175
183
178
204
207
249
221
163
122
185
178
199
199
216
231
266
197
233
250
200
219
183
162
231
169
152
211
224
253
222
223
181
268
186
235
228
209
186
207
189
182
160
159
175
211
265
205
192
154
176
241
221
188
209
184
179
275
212
162
226
164
168
214
179
159
151
216
124
196
204
248
156
156
208
178
188
179
300
89
177
211
190
155
227
194
183
230
230
255
187
169
199
223
142
152
163
271
213
218
210
226
199
241
161
231
201
194
189
192
200
216
207
261
270
232
223
223
217
195
243
219
199
145
204
213
173
203
254
211
267
170
215
217
229
216
187
205
210
152
170
154
151
170
166
236
185
100
168
248
140
214
197
222
220
187
170
194
199
204
200
197
218
209
165
213
223
145
190
261
177
191
185
232
208
258
188
132
227
180
183
193
177
246
196
202
263
168
150
145
228
167
307
145
178
210
172
140
209
199
255
178
231
133
209
149
232
247
207
168
231
225
155
226
174
221
183
132
214
174
209
170
197
198
209
189
151
214
157
205
227
203
205
251
193
134
222
188
198
213
133
220
241
236
226
192
177
134
185
172
239
173
205
179
219
230
172
147
212
196
187
218
176
215
235
195
204
159
187
227
205
223
198
181
218
202
175
134
224
164
212
269
124
208
221
156
222
268
215
138
173
229
194
254
229
217
227
207
229
264
200
154
284
220
184
238
157
197
212
125
206
197
192
198
229
195
243
227
222
223
190
154
183
278
256
162
241
273
237
206
194
220
203
224
161
216
204
256
150
213
230
219
238
166
199
214
184
180
194
170
190
270
197
202
226
214
178
158
194
208
205
208
204
220
261
215
219
198
251
175
155
136
219
218
217
201
204
222
209
212
222
230
248
171
175
229
207
116
225
195
171
143
208
211
194
136
187
176
208
173
171
215
229
201
205
230
200
179
195
219
220
184
190
173
196
138
191
224
233
215
183
173
198
235
132
185
281
247
213
196
178
167
196
273
205
203
247
177
251
132
162
199
225
189
213
218
191
195
201
196
205
177
214
205
190
260
157
184
196
254
105
221
192
129
215
175
199
207
175
230
223
168
232
194
174
237
174
220
135
168
208
196
243
149
231
198
169
206
226
183
174
199
203
247
208
160
205
184
241
112
171
199
192
176
176
272
201
221
250
114
230
212
154
222
205
235
202
184
213
234
250
175
190
197
179
124
265
194
153
171
197
194
184
209
177
218
187
230
214
212
206
149
217
171
245
266
211
211
161
213
191
198
210
245
162
190
121
192
177
213
202
215
186
208
265
229
195
208
174
246
183
176
189
170
174
232
174
215
242
199
231
218
216
229
277
265
195
173
215
154
182
164
217
218
154
185
230
262
216
137
116
199
130
234
224
164
202
252
168
193
161
227
177
188
125
184
244
209
170
135
210
233
240
183
224
251
162
229
187
206
212
140
228
168
241
243
270
259
109
205
216
204
224
193
229
222
187
195
174
244
247
224
150
184
195
188
166
150
180
249
190
211
236
195
201
148
167
247
149
165
193
226
198
253
188
250
201
202
181
194
128
194
186
187
257
192
220
190
165
217
180
182
206
188
167
257
185
216
214
201
203
196
255
141
211
221
153
157
219
166
250
239
295
120
248
149
152
170
233
178
202
183
226
200
164
241
260
195
239
226
163
235
192
240
129
190
199
184
169
236
217
189
165
197
160
231
237
223
152
159
191
200
204
170
214
152
168
180
169
245
196
140
147
162
207
144
182
164
214
252
170
207
194
176
160
147
249
142
225
140
198
205
265
187
170
206
245
211
221
195
196
143
211
249
171
154
236
164
244
173
193
220
226
225
220
198
216
245
203
189
169
156
177
202
238
243
232
209
199
226
201
218
261
163
191
234
156
231
209
155
186
193
201
196
156
210
206
205
233
187
162
186
213
214
194
182
231
201
129
168
151
175
235
145
193
190
230
182
175
230
187
265
219
251
177
205
180
209
139
222
184
188
190
247
177
213
133
177
216
138
203
197
164
171
231
236
214
156
208
179
207
136
225
214
117
228
211
182
230
191
210
215
260
212
245
222
185
215
225
221
195
205
207
190
197
173
255
197
195
218
175
179
226
199
217
229
209
204
263
210
160
238
158
169
206
179
164
263
162
203
164
229
216
233
249
167
237
227
166
231
263
216
192
257
159
179
232
184
145
158
206
150
239
217
199
189
206
207
211
192
140
124
150
184
159
130
227
180
201
204
194
184
176
231
183
255
237
149
158
214
205
206
192
237
239
220
178
202
189
233
237
209
114
193
194
163
132
140
192
219
159
242
191
222
180
229
198
195
188
227
217
180
225
214
205
237
206
152
231
218
160
217
199
248
127
249
220
253
227
213
181
163
232
204
204
192
206
254
196
177
171
260
167
248
228
180
233
173
247
267
198
236
141
176
223
217
211
195
204
240
162
234
227
225
236
116
243
218
252
238
266
206
216
212
197
171
263
248
191
141
169
232
183
154
219
214
192
205
194
200
139
213
169
183
189
219
231
219
231
237
203
210
224
187
202
229
215
214
215
141
212
224
151
194
249
231
159
173
238
218
254
241
159
206
202
255
188
132
251
196
166
199
181
208
212
177
240
181
176
269
178
254
206
183
182
189
162
234
213
205
211
151
220
213
248
199
174
193
218
115
245
191
188
197
214
200
208
245
247
248
174
142
175
162
257
173
238
208
134
117
220
161
201
184
200
132
177
184
177
147
209
204
146
229
202
230
202
243
191
215
270
169
205
236
193
237
111
237
226
250
193
199
194
179
191
219
232
223
185
118
226
203
237
219
194
235
181
128
175
184
221
232
108
244
194
206
190
252
217
196
141
170
170
207
196
193
169
186
270
200
171
202
201
131
180
233
185
236
166
213
156
187
245
180
180
153
206
168
290
222
163
210
149
257
228
251
139
246
219
275
191
286
176
139
181
230
228
174
145
210
202
210
234
194
223
206
232
201
262
183
218
238
139
180
177
212
158
182
190
244
194
233
166
227
216
243
221
147
202
233
194
215
225
176
268
244
117
164
148
204
203
155
162
257
220
262
194
185
261
195
154
148
202
166
245
211
192
219
161
179
179
225
196
149
223
257
223
242
216
177
237
184
250
183
181
215
225
214
240
213
198
171
143
213
181
210
217
256
234
222
137
192
225
178
205
209
213
171
210
231
190
217
219
178
217
92
218
179
200
193
209
221
220
150
152
229
221
187
223
219
113
192
218
159
156
225
192
229
198
202
202
187
200
148
212
193
187
199
218
298
243
163
142
184
234
235
217
180
218
163
245
248
160
180
228
155
246
188
183
208
212
206
237
221
166
245
134
193
155
255
169
212
232
245
209
132
192
232
227
253
202
195
190
214
220
141
216
207
152
169
177
182
223
237
248
246
203
214
229
214
163
281
252
189
253
202
194
257
231
237
222
139
187
205
206
201
268
184
168
217
200
218
142
164
173
146
225
186
233
214
186
198
144
188
200
252
236
208
151
162
173
251
112
200
242
139
160
185
215
196
263
186
170
226
220
248
177
219
182
224
170
182
152
180
245
162
226
278
162
133
225
191
214
261
202
191
208
241
155
210
144
235
218
156
232
226
310
181
192
249
206
249
156
251
143
197
137
218
178
214
233
268
212
161
162
147
221
118
227
248
227
165
183
162
200
230
182
107
198
185
178
222
214
218
198
198
213
260
199
171
208
263
231
170
252
168
181
194
194
187
183
170
199
181
228
149
203
224
213
168
167
209
236
166
152
160
256
191
225
155
192
199
244
281
227
191
201
221
207
202
190
244
204
152
247
242
198
163
157
204
215
206
208
175
221
180
200
218
211
184
213
219
225
228
186
140
160
228
168
199
214
228
183
222
189
243
233
192
216
210
192
187
241
231
230
194
215
231
165
246
206
213
182
226
170
216
243
158
157
212
166
202
180
190
228
202
214
227
134
192
198
177
176
159
217
182
189
246
261
242
212
218
178
188
206
265
179
158
168
236
205
206
229
198
220
234
200
247
206
151
187
182
220
125
217
195
156
215
220
225
222
233
233
173
176
180
261
228
144
219
152
163
217
231
169
244
193
213
203
179
193
214
163
203
208
220
186
214
200
223
228
120
180
239
236
186
222
176
171
197
181
232
289
239
185
160
208
270
205
184
164
174
241
125
173
159
180
186
152
232
195
173
151
103
220
162
222
183
146
208
104
189
214
190
173
215
156
201
193
150
209
171
251
182
205
203
178
246
206
215
228
142
244
228
223
201
170
233
228
223
258
217
228
191
179
186
180
183
180
238
192
232
285
137
189
114
227
212
224
157
215
249
212
206
92
270
202
194
180
239
217
190
240
245
246
190
149
227
216
154
241
225
154
247
196
176
182
181
238
187
210
236
169
167
190
219
161
208
154
259
238
260
173
223
204
241
181
226
177
199
247
248
183
173
188
187
183
217
173
224
210
120
231
216
136
238
170
227
165
209
162
228
217
218
187
164
145
187
192
194
264
189
222
207
185
160
206
234
181
202
195
140
258
222
159
260
203
189
254
215
209
205
190
197
192
219
240
186
231
178
244
240
158
207
197
180
145
252
161
210
187
247
226
209
218
181
249
241
191
198
198
230
221
167
229
221
204
233
248
227
183
259
171
247
197
233
148
207
232
195
168
254
232
184
205
230
193
206
132
160
197
226
182
197
253
203
180
173
215
191
228
149
139
223
203
210
184
239
205
202
210
154
200
241
215
230
219
210
146
186
161
190
148
195
213
233
224
231
269
278
184
228
247
192
223
228
176
238
183
173
196
242
235
176
216
256
123
228
218
182
194
179
261
220
241
226
164
168
209
156
176
199
191
116
254
212
148
211
171
179
173
170
174
209
165
181
198
173
209
241
258
178
189
173
169
171
165
252
236
173
231
202
224
140
195
245
177
209
181
196
261
254
166
203
164
196
153
220
207
213
141
195
221
211
155
210
199
260
175
158
149
255
195
220
271
236
191
211
196
194
154
199
257
204
166
214
298
224
166
222
230
237
192
183
253
220
235
183
220
214
189
211
218
174
260
231
205
228
211
143
207
173
228
284
143
142
233
238
221
181
193
174
190
231
234
178
171
198
192
133
182
201
199
225
160
211
242
179
234
248
219
204
192
186
200
247
232
192
206
151
229
162
194
243
121
190
196
200
214
235
169
180
178
215
215
136
194
194
175
214
204
237
207
218
174
153
205
278
204
142
188
209
246
147
237
245
172
154
188
228
166
213
176
221
186
194
215
145
244
218
198
154
199
166
238
175
126
120
191
176
207
210
205
228
239
216
163
175
216
137
170
194
187
235
227
136
182
197
169
271
228
181
221
152
148
155
211
141
239
179
162
239
172
230
290
172
277
223
235
121
197
151
199
163
167
162
248
228
170
198
238
191
180
193
182
211
170
168
178
146
203
201
179
166
215
199
212
206
184
131
183
174
152
211
149
229
205
168
188
204
142
254
243
229
196
183
181
198
215
214
186
235
135
262
196
184
235
179
184
237
221
245
124
244
183
161
209
208
261
205
249
255
177
283
169
252
203
213
214
184
191
217
198
221
235
183
202
101
199
208
212
239
180
179
165
202
172
221
214
241
190
131
234
188
221
221
247
229
250
186
243
238
241
148
233
168
202
183
245
199
147
239
190
218
211
222
226
193
190
216
245
202
214
216
210
153
207
232
182
241
260
189
193
201
149
138
227
222
225
199
182
152
222
241
179
158
195
209
236
194
236
137
243
192
192
196
188
219
219
184
257
196
268
175
145
164
258
232
170
171
202
226
187
266
222
142
226
190
241
190
145
242
152
257
121
165
242
190
172
255
219
178
194
238
255
247
198
182
158
95
189
232
150
148
238
166
205
158
238
131
146
196
163
225
190
227
208
206
263
187
172
174
219
194
223
184
128
259
206
223
213
188
216
203
172
184
202
233
235
189
169
212
200
216
222
195
250
245
210
218
194
158
207
181
213
186
177
224
244
238
224
227
190
213
210
208
256
181
144
221
172
194
229
294
186
181
154
194
223
196
187
185
208
172
195
217
199
208
148
210
212
232
238
226
249
195
201
196
208
141
205
185
226
222
224
206
174
258
213
165
209
182
138
206
148
220
198
196
188
190
205
182
144
212
186
203
195
192
214
247
159
164
154
234
141
258
238
195
195
209
234
235
221
211
191
184
212
164
183
215
226
249
181
201
185
220
199
198
273
195
251
148
210
246
245
155
252
130
271
216
211
162
240
181
173
172
179
177
172
209
222
190
243
176
235
302
169
160
164
183
230
180
143
205
204
226
178
144
240
198
189
190
181
104
198
106
257
204
208
159
165
183
132
177
183
160
199
217
183
214
204
235
224
210
157
183
158
177
234
204
194
147
142
158
153
168
229
185
178
161
195
184
132
229
182
203
148
165
189
201
206
225
242
239
140
153
185
253
166
175
225
195
208
164
122
201
171
233
197
184
185
216
196
206
184
181
232
240
176
200
227
193
153
157
222
231
195
169
125
157
133
234
216
246
149
159
197
220
186
195
213
267
213
110
187
253
195
253
244
170
197
145
171
250
180
192
219
163
181
140
201
197
180
239
205
228
189
176
197
246
191
220
254
224
221
118
202
224
246
209
169
211
194
182
161
199
191
258
252
205
227
168
212
205
156
217
239
155
198
197
205
182
184
152
191
206
196
209
203
179
226
265
182
231
169
141
251
222
199
245
219
228
165
216
240
226
168
257
162
170
191
198
274
243
179
153
263
190
182
233
243
203
99
145
156
250
129
155
155
145
187
198
173
193
227
253
146
153
176
205
220
204
153
218
204
202
176
145
211
215
211
187
222
233
249
207
220
169
198
279
193
233
200
184
223
147
206
225
194
259
235
220
206
182
263
181
203
219
160
213
208
189
224
244
220
227
196
206
184
207
252
183
219
167
210
163
152
164
222
201
225
218
213
216
186
257
147
237
166
180
186
206
175
216
221
186
232
196
187
212
230
203
229
225
240
187
220
153
235
197
229
223
179
225
178
164
187
169
230
212
243
207
202
125
169
222
167
240
196
237
209
203
236
201
258
161
176
234
178
231
195
272
218
210
164
162
176
237
239
146
162
222
177
182
218
220
149
244
187
160
232
146
180
219
211
184
246
237
233
228
198
176
162
225
234
268
170
216
193
249
220
224
219
240
220
185
146
140
179
166
221
196
223
235
179
226
193
232
167
199
275
222
196
270
227
234
204
152
187
197
178
201
268
236
229
160
135
212
177
192
209
202
214
216
149
238
251
234
191
153
225
202
232
234
283
178
270
200
257
224
155
165
196
168
176
236
149
165
185
212
203
198
180
242
192
237
240
176
246
172
272
219
171
127
211
216
202
198
217
178
149
213
202
208
179
173
177
225
230
195
219
144
209
171
213
138
204
193
242
109
230
185
217
269
222
165
176
238
222
198
164
209
236
201
114
162
238
183
182
224
163
232
200
179
183
248
135
183
236
190
195
204
147
195
166
199
220
163
196
253
234
236
215
205
200
246
197
204
260
192
212
186
149
205
188
245
244
156
204
195
205
138
123
197
230
254
193
162
173
218
189
188
237
229
232
176
163
221
284
221
182
260
191
202
197
238
231
168
205
164
217
235
181
200
157
192
160
209
272
222
222
147
220
143
227
202
226
241
140
241
223
232
223
205
213
169
207
222
124
199
192
181
248
211
197
280
226
171
209
219
191
216
172
197
220
202
240
230
207
190
154
177
192
193
181
207
192
176
204
237
244
213
163
215
253
248
192
190
212
136
233
208
213
134
184
206
248
161
220
213
201
242
121
242
194
224
177
237
173
235
169
254
168
190
190
211
162
214
249
133
173
213
182
211
170
254
156
271
159
242
209
199
211
156
179
223
200
188
240
155
253
226
190
199
198
143
153
242
244
199
137
115
205
186
209
246
182
205
216
253
218
274
248
244
224
173
165
174
166
191
226
169
146
258
219
224
155
181
269
206
229
224
247
176
245
235
187
185
174
194
141
225
151
137
241
167
159
147
168
192
183
214
197
233
110
114
138
179
241
191
261
266
197
223
236
254
179
164
215
101
221
183
263
208
228
193
200
207
162
238
274
223
222
247
160
241
152
211
162
246
210
198
202
220
220
237
277
227
230
160
200
225
186
207
182
239
208
190
212
201
208
179
136
175
131
166
199
192
219
243
162
225
150
204
199
217
181
186
193
159
187
145
181
220
216
179
144
156
233
207
226
168
191
171
232
216
204
206
176
196
253
173
176
189
254
267
268
236
214
183
200
220
200
170
169
270
241
180
154
219
193
191
202
239
239
208
203
188
157
233
234
170
224
183
182
201
240
159
157
201
240
217
168
195
214
211
185
174
184
164
153
201
215
183
216
153
234
172
188
204
191
192
204
209
208
219
225
211
175
201
205
174
223
216
193
162
185
201
270
221
132
198
148
141
238
195
203
217
243
210
229
146
138
212
207
234
233
214
192
168
185
221
217
177
205
205
219
194
260
171
243
196
164
210
213
145
186
219
171
215
162
238
244
194
242
169
167
194
199
199
157
179
203
160
219
202
261
196
257
180
193
152
93
198
250
249
194
219
227
177
200
187
226
212
183
166
191
200
173
243
225
223
239
155
228
186
220
217
192
173
243
160
245
173
192
146
220
201
189
241
217
231
212
160
177
143
205
174
191
181
233
213
179
223
219
192
234
201
155
141
167
215
197
163
239
139
153
183
223
218
231
258
237
200
231
122
242
219
179
206
229
173
240
145
247
178
102
221
281
180
196
200
191
254
143
184
250
163
234
168
166
230
187
247
251
171
158
186
190
204
156
190
201
194
254
161
226
218
105
233
215
230
275
192
153
235
214
146
186
225
212
204
168
226
244
92
226
217
108
181
234
231
215
189
199
210
207
175
259
198
188
258
245
206
162
147
170
248
111
181
203
219
205
214
214
220
186
203
198
208
185
238
194
198
216
179
95
206
173
248
191
196
200
205
207
203
187
207
167
281
215
231
227
184
182
195
173
206
126
157
198
186
183
162
195
245
228
198
107
248
182
184
240
217
240
192
171
190
162
200
262
268
189
226
248
163
206
182
253
176
190
196
220
174
185
237
187
250
180
211
198
219
152
221
210
183
244
163
302
220
140
214
188
245
166
138
155
239
240
211
244
215
173
235
169
189
197
234
161
180
190
239
206
180
180
260
202
147
198
229
156
177
228
189
230
169
199
201
212
163
163
228
217
200
150
215
262
201
182
257
187
166
196
214
213
159
220
184
230
188
199
227
181
184
258
141
249
193
218
155
157
224
217
196
258
207
233
204
152
207
177
185
172
236
233
237
243
200
249
223
148
166
248
200
241
215
215
213
238
190
96
194
199
165
183
219
249
184
231
210
208
216
145
202
218
120
145
202
220
177
224
181
202
210
229
210
131
225
150
228
176
229
209
194
213
191
251
223
230
226
151
194
169
206
208
179
193
163
185
224
180
181
154
163
263
200
185
211
199
152
211
203
221
238
247
235
184
208
224
235
166
239
202
189
245
185
177
189
176
254
166
159
198
174
176
177
220
214
237
141
119
154
198
223
176
204
204
191
187
222
149
144
219
217
185
235
221
166
227
215
189
206
183
213
244
179
192
168
141
108
225
250
191
208
185
169
133
222
145
179
161
224
241
207
224
137
266
252
161
230
253
240
220
231
207
175
267
181
235
171
194
223
239
240
197
216
213
204
191
188
222
182
228
175
202
175
241
232
176
221
174
193
145
129
261
194
278
176
183
181
154
207
197
191
167
199
229
160
176
279
128
203
178
182
192
203
235
203
199
230
267
190
189
162
184
270
235
224
205
217
190
199
189
216
221
223
214
170
191
209
143
240
171
236
222
185
202
176
240
226
219
227
209
206
207
235
207
141
237
194
212
232
175
250
220
160
200
170
265
201
193
206
204
169
164
239
224
177
258
204
253
244
173
255
230
237
135
245
234
197
174
229
226
164
179
218
185
121
162
226
162
238
161
217
180
234
187
193
143
244
207
201
188
265
172
181
188
272
234
236
265
234
153
260
208
231
169
196
173
202
208
199
204
141
186
175
214
254
191
242
219
210
270
203
222
254
126
239
244
147
239
200
200
223
200
182
197
234
224
192
108
255
224
125
235
217
215
262
233
259
224
186
165
212
140
206
198
227
247
239
220
248
208
200
175
213
230
235
208
264
246
212
197
230
201
149
202
142
130
190
146
186
213
182
209
175
143
219
180
205
209
213
205
233
138
176
240
187
256
144
165
234
145
257
193
227
185
191
223
188
209
227
222
190
190
181
208
216
213
107
175
153
200
155
155
217
188
184
130
262
186
233
190
196
209
199
230
197
213
164
229
200
181
241
239
175
223
195
212
170
146
213
225
190
198
133
227
199
202
242
210
189
120
246
234
189
191
239
149
196
187
222
221
143
196
173
170
160
268
236
164
230
200
208
183
209
194
179
175
186
202
263
265
203
221
169
124
158
220
170
245
198
251
188
162
235
166
227
216
177
191
256
225
161
176
143
177
233
228
206
187
188
163
215
179
226
217
201
222
187
209
218
243
170
206
206
228
218
166
212
168
243
133
144
192
211
202
149
167
146
124
237
169
255
194
223
177
174
246
188
206
225
142
183
132
204
206
174
231
250
170
252
181
220
169
153
237
250
228
199
173
180
217
209
240
160
217
200
212
221
265
202
170
157
263
207
161
169
215
188
202
187
139
217
198
239
163
207
197
215
190
190
202
230
212
194
218
240
253
198
233
206
197
230
242
195
192
168
129
233
212
225
227
158
189
202
236
164
134
245
238
229
163
207
227
184
229
244
146
140
193
240
244
164
188
182
245
191
219
233
234
145
239
268
226
199
247
180
226
162
244
226
222
171
246
208
240
245
228
224
186
200
185
174
253
194
163
234
127
161
190
229
195
177
244
154
230
141
182
161
221
236
210
179
208
198
237
205
194
183
171
152
225
154
222
232
168
199
131
157
173
197
189
172
195
224
194
241
230
188
131
189
237
149
219
206
212
174
243
191
248
200
186
217
199
244
216
238
242
205
172
220
191
231
233
221
186
242
191
204
208
239
171
266
174
249
169
155
284
170
178
199
148
168
170
190
194
208
206
202
235
201
187
200
199
166
249
137
188
239
184
232
240
238
176
281
225
133
202
213
221
205
160
194
199
196
155
231
205
258
183
172
190
225
214
164
264
189
199
247
183
211
190
171
195
164
214
171
212
187
173
210
247
161
217
201
228
221
174
188
183
227
169
240
235
188
216
242
215
180
265
180
180
154
197
195
220
186
208
231
193
207
238
181
213
212
176
223
237
230
208
252
243
201
286
220
178
213
187
153
175
187
189
200
244
205
199
190
159
263
178
216
116
171
160
165
176
176
224
222
221
240
83
134
205
196
199
193
183
168
215
239
258
260
229
202
195
142
225
216
143
158
244
207
156
189
192
127
264
255
299
231
149
173
252
187
173
165
196
164
146
208
207
146
191
201
235
160
220
177
172
193
163
155
194
171
211
176
210
221
208
147
164
205
234
180
240
224
217
227
211
214
237
218
119
266
210
185
205
221
205
256
223
176
164
195
174
195
163
182
184
204
218
200
165
223
171
217
201
251
155
194
200
200
172
206
232
215
100
177
217
118
269
253
237
198
232
147
233
225
170
147
156
205
225
215
202
253
212
111
221
224
215
180
213
275
198
189
214
201
207
195
180
178
140
228
176
255
178
154
221
216
229
176
266
211
190
244
177
195
182
239
168
233
234
191
212
208
226
184
177
238
178
237
250
230
210
214
294
241
138
224
197
157
195
245
159
208
194
144
132
233
172
192
225
214
173
157
168
170
205
165
244
210
191
266
214
228
181
176
218
153
200
171
213
200
158
258
207
234
179
134
231
191
236
228
201
195
209
208
142
193
176
232
206
216
190
202
196
174
221
222
157
175
164
229
141
205
195
211
188
149
250
191
188
221
203
252
201
222
139
256
154
207
199
216
136
236
203
262
261
186
217
195
210
191
248
174
230
152
166
201
258
230
202
209
240
207
232
223
253
224
202
187
166
200
179
227
135
241
239
169
221
230
176
201
230
157
198
230
135
164
212
142
169
250
176
207
174
240
258
163
213
161
209
243
229
194
169
208
230
173
218
193
170
160
202
137
186
262
199
145
279
173
253
190
195
187
191
199
165
145
136
184
153
186
180
208
197
127
258
192
201
237
181
156
184
164
183
170
220
179
199
207
226
192
243
154
228
207
201
187
181
222
185
189
182
213
200
200
252
221
193
198
238
205
220
209
234
255
166
200
166
197
173
236
179
221
184
168
225
169
218
242
216
178
253
211
226
117
158
216
260
253
176
193
169
173
247
197
210
158
173
209
203
228
178
163
246
152
235
239
192
199
239
217
168
177
181
169
230
248
175
213
230
170
213
212
207
167
231
187
223
218
211
182
237
256
150
194
257
164
179
168
233
196
193
171
252
180
211
217
230
168
179
247
221
192
178
168
224
190
140
205
180
208
166
158
193
154
244
195
186
208
198
188
222
276
218
168
203
230
147
171
159
181
155
227
192
201
170
241
168
222
210
217
222
196
217
208
155
205
233
176
206
221
216
176
182
186
220
215
164
132
210
225
221
251
231
203
163
175
195
207
190
178
189
180
199
136
249
187
214
198
281
167
175
177
113
174
208
162
175
167
262
215
214
247
208
168
190
256
216
159
184
254
199
245
247
240
149
200
242
191
172
206
198
179
235
206
190
179
205
216
188
234
191
237
208
177
196
196
154
229
209
155
187
179
173
236
226
190
218
147
181
218
183
224
215
132
136
189
243
169
171
95
165
191
218
203
252
243
194
190
243
193
188
206
273
247
179
170
238
215
229
198
220
214
204
208
119
233
229
236
167
190
136
200
215
202
200
205
139
167
161
224
155
258
200
190
160
189
198
193
223
208
184
111
171
183
203
203
171
233
224
226
190
225
227
201
160
228
158
189
196
124
212
184
194
208
237
165
225
167
222
212
200
227
234
179
241
170
177
193
170
235
200
204
234
192
171
219
218
162
261
230
151
259
190
193
188
186
197
147
284
183
232
179
211
124
231
180
228
172
187
177
196
198
178
263
168
196
193
146
167
213
181
174
179
194
174
213
217
201
176
173
131
301
201
174
217
199
196
208
221
134
225
201
275
203
197
189
240
169
151
165
217
137
192
227
218
197
154
160
211
224
183
156
193
212
175
220
218
253
231
168
140
144
234
205
166
188
262
218
211
197
238
151
196
217
250
190
231
185
198
152
204
261
205
243
184
160
199
229
173
192
212
173
253
207
216
194
249
240
224
199
156
196
201
195
248
147
201
248
243
225
209
171
213
173
217
197
178
184
123
218
279
212
213
218
193
170
173
167
172
171
268
185
256
237
181
233
201
193
172
183
260
217
204
157
231
213
220
205
217
186
179
202
242
178
211
190
173
152
190
154
151
228
185
221
214
179
242
176
188
154
163
239
223
196
199
210
223
228
229
201
136
167
138
194
198
236
236
176
212
195
230
190
139
178
130
137
183
215
184
192
226
223
229
174
172
224
180
212
189
260
228
157
263
192
175
203
240
187
217
205
267
154
211
214
179
209
191
248
194
191
237
205
240
258
237
210
183
201
179
197
220
213
142
210
196
214
205
189
200
170
262
184
177
211
214
221
118
207
227
211
247
160
166
243
167
173
243
177
207
273
193
160
240
178
174
198
215
168
198
160
217
186
227
212
185
162
183
193
186
138
184
258
224
143
90
179
191
170
200
243
157
193
204
165
136
197
174
238
193
254
202
219
171
143
225
205
152
182
211
189
172
242
185
124
142
209
207
211
234
168
136
241
225
185
161
220
203
162
174
290
202
231
181
148
236
190
194
122
189
156
220
255
205
165
258
229
227
210
234
226
172
208
138
207
196
167
199
184
142
191
206
198
185
204
233
232
163
205
151
203
201
206
239
171
226
208
237
272
249
207
236
207
180
224
155
206
190
143
166
187
208
206
164
225
249
220
241
227
244
197
173
237
251
188
188
220
210
208
253
233
154
176
222
212
218
235
205
225
221
166
164
177
176
218
190
172
180
219
175
137
179
221
195
218
238
193
187
165
238
207
216
200
197
222
175
172
203
210
232
165
189
190
226
223
248
223
191
186
190
185
274
249
214
194
202
173
213
144
214
126
187
252
267
126
206
186
212
276
224
202
157
195
258
130
207
197
230
238
163
163
144
240
200
230
186
205
183
222
191
189
145
229
236
131
209
218
250
200
208
219
213
154
172
233
220
215
209
191
258
209
223
183
200
193
211
256
211
274
232
202
125
179
239
256
202
244
156
244
220
240
196
144
181
194
259
145
243
263
248
188
195
225
206
107
273
242
288
216
193
186
175
181
174
243
134
214
203
208
134
186
222
226
172
195
188
237
211
235
213
226
190
186
228
235
152
195
237
194
264
299
201
205
208
187
254
161
226
211
167
195
227
157
242
167
216
165
191
208
228
166
164
238
213
223
150
121
191
204
184
184
199
191
222
256
225
211
204
202
169
209
151
178
151
212
209
164
215
141
210
250
185
211
165
173
180
219
172
179
210
226
245
232
205
185
168
139
184
250
228
154
189
194
240
159
147
219
274
244
199
132
162
264
177
208
196
165
199
223
163
223
188
244
205
200
142
133
189
154
188
267
216
213
210
172
137
171
207
226
214
220
207
221
147
181
232
242
229
167
267
199
261
168
204
178
226
211
214
186
275
185
209
204
270
171
176
211
206
195
154
199
119
145
163
219
224
212
213
198
138
180
201
216
255
219
152
219
180
223
269
223
248
193
148
216
199
217
192
221
192
226
260
177
184
189
238
298
205
228
245
233
247
137
194
212
150
173
181
191
149
258
251
231
200
236
202
184
257
231
209
197
221
187
242
201
185
216
242
268
176
240
197
200
217
240
176
209
213
228
221
195
185
195
169
145
239
210
223
237
209
223
234
241
221
227
250
176
245
142
159
194
141
211
231
149
189
158
158
230
280
164
218
190
198
185
204
90
240
162
166
192
229
147
170
219
233
190
159
211
209
161
207
208
183
173
216
184
214
223
202
202
188
260
142
214
121
243
205
258
244
226
188
177
253
189
160
213
155
183
243
223
194
250
211
149
182
164
200
208
149
159
242
249
214
195
118
230
220
217
241
170
236
194
227
175
212
158
170
234
237
172
196
136
251
172
173
194
173
196
180
203
224
178
239
169
245
291
157
184
226
258
195
166
176
193
225
217
178
185
141
200
156
195
217
168
215
273
228
187
238
170
192
258
205
176
216
183
185
240
218
173
216
173
203
218
166
222
208
196
134
204
182
160
236
238
224
274
214
157
164
154
195
267
156
195
125
192
215
176
133
211
221
160
196
164
247
226
215
227
264
163
243
181
139
178
188
205
158
208
185
140
210
241
173
178
225
213
240
231
213
162
181
216
211
180
252
209
208
210
211
208
230
202
166
229
234
248
208
199
209
170
209
205
173
233
245
178
201
167
240
171
191
234
242
197
256
143
144
233
206
253
190
217
246
138
207
179
167
184
239
192
205
203
152
158
215
172
234
158
178
265
189
168
207
186
200
226
185
194
185
199
227
175
236
237
251
129
182
213
233
190
178
252
215
126
131
207
212
165
227
209
268
220
196
170
230
151
153
157
218
209
185
189
181
151
205
207
152
212
183
195
176
255
199
233
228
214
179
133
225
268
147
214
150
196
173
174
226
235
187
178
218
209
182
239
216
247
200
212
215
270
210
227
162
131
176
164
180
181
237
171
242
136
217
232
191
255
135
216
232
204
242
213
166
209
266
192
202
170
163
185
136
215
170
199
160
204
233
180
259
208
130
197
203
264
137
271
168
200
153
211
206
266
143
195
154
159
129
170
201
160
190
237
187
198
196
199
224
175
200
191
241
230
157
252
242
196
265
193
284
170
187
197
251
280
173
180
133
236
167
206
246
208
180
190
211
205
178
174
193
217
262
198
238
167
249
210
148
207
210
208
187
240
187
202
147
230
180
216
198
144
251
230
186
201
231
206
159
222
183
204
179
216
215
152
171
176
236
198
233
159
170
228
160
233
191
233
224
220
180
237
237
174
149
174
195
243
153
199
233
199
188
154
177
222
189
157
205
187
184
154
244
297
182
142
169
235
194
151
151
155
158
185
175
212
170
133
234
216
204
192
178
208
150
163
217
193
181
221
212
172
228
250
198
180
171
175
163
199
236
225
245
164
189
185
174
189
202
133
179
225
181
209
187
206
215
139
214
188
180
202
192
230
208
231
221
169
169
218
211
179
163
195
172
235
171
228
121
184
225
217
146
213
186
225
165
224
201
205
228
172
181
238
219
198
172
267
200
196
224
202
170
189
182
156
178
244
181
198
249
193
193
177
159
240
154
242
215
219
190
181
207
185
186
246
148
190
156
193
226
229
253
209
179
219
193
232
254
177
153
227
204
233
195
173
199
229
242
196
192
179
246
194
200
244
285
189
186
249
204
169
215
191
272
155
199
173
163
221
230
214
199
234
174
215
224
173
177
247
209
193
213
139
206
172
205
214
195
205
219
212
258
223
221
200
186
156
208
226
192
189
185
236
239
235
169
269
158
235
165
217
162
244
242
224
196
188
262
213
172
189
254
238
218
218
166
256
205
266
201
259
200
191
242
185
224
161
257
220
242
216
202
190
248
202
276
198
203
220
140
158
201
182
183
181
195
151
186
251
220
123
187
198
198
193
208
182
248
239
188
195
207
258
198
200
212
256
200
253
153
141
152
147
189
125
126
241
266
173
247
180
219
179
215
181
197
213
212
164
189
201
207
194
176
228
199
222
181
251
180
172
236
223
246
214
236
176
245
165
181
194
259
153
206
145
241
197
199
177
259
172
178
178
267
191
213
232
219
185
143
248
217
206
196
225
201
292
142
222
153
248
200
225
184
187
188
186
216
169
170
188
231
222
210
220
211
205
223
185
170
114
263
201
183
103
201
163
206
198
200
248
174
217
187
97
148
200
169
209
143
198
223
226
230
226
190
257
149
162
245
198
186
202
206
193
216
202
147
195
201
137
249
144
168
172
236
308
185
240
229
268
202
241
233
209
175
203
270
193
286
216
153
226
177
251
206
160
134
168
221
181
173
172
194
217
150
198
177
124
165
151
224
165
180
238
232
181
204
222
203
178
205
228
153
219
208
163
247
163
244
201
261
263
212
195
200
265
212
205
179
223
225
239
199
239
278
177
218
187
192
202
113
229
169
207
207
200
189
193
203
172
181
187
137
198
201
200
250
144
246
209
175
185
177
186
203
138
184
151
201
201
180
153
155
209
222
156
193
184
221
238
258
155
254
204
256
160
194
172
209
192
212
185
231
156
214
167
193
213
223
155
173
212
232
239
180
196
148
218
158
165
185
145
124
179
229
176
157
169
232
217
183
189
178
267
220
201
139
215
221
182
225
174
197
181
226
183
244
214
199
197
171
193
189
199
198
204
261
250
167
194
163
194
199
212
228
146
174
244
157
151
192
200
205
273
216
202
182
155
223
138
186
256
203
171
177
209
233
222
255
205
253
171
181
226
240
219
154
180
218
168
161
215
223
204
220
210
216
159
199
222
217
217
195
191
188
256
180
183
215
177
196
194
193
206
210
218
189
167
193
158
233
199
209
191
255
177
192
175
204
159
190
245
198
241
200
140
211
189
145
159
201
194
233
208
199
190
143
213
191
218
158
199
172
200
243
208
194
177
202
203
240
177
190
239
231
176
214
224
183
213
207
206
187
216
124
195
272
202
201
192
194
230
278
214
132
297
199
207
171
188
199
204
180
208
250
268
213
216
143
199
145
236
203
107
135
190
160
148
145
211
218
175
216
194
244
171
215
167
173
200
238
231
172
160
149
168
182
171
262
216
233
159
168
233
214
230
238
198
251
187
226
209
194
234
220
196
219
207
162
155
132
176
155
164
78
225
183
260
194
216
198
216
179
140
246
149
218
164
254
179
180
210
182
212
200
192
195
182
236
160
168
202
233
219
156
188
123
197
113
239
136
199
196
215
184
164
221
213
191
181
214
167
194
194
195
185
133
147
235
207
259
212
167
178
209
203
183
227
201
223
203
141
123
213
180
257
145
164
184
230
236
180
239
185
186
174
171
186
254
161
222
200
199
159
180
197
198
176
188
226
184
239
212
161
172
220
166
222
239
225
230
130
147
193
218
203
101
247
199
186
194
229
244
233
168
222
152
253
172
186
210
241
209
186
132
216
192
192
255
157
240
223
225
198
168
219
204
115
189
200
196
167
169
227
215
172
167
161
143
211
196
250
163
201
233
190
229
186
195
174
184
168
155
212
145
211
166
212
186
208
181
242
262
204
178
274
179
209
164
119
124
201
222
167
239
230
247
223
146
230
238
204
117
247
229
185
195
237
189
196
226
224
184
257
205
200
156
254
197
186
293
253
211
247
215
253
172
176
191
170
177
141
127
194
241
189
249
188
221
229
203
245
188
240
208
218
211
163
165
226
214
244
202
199
205
209
153
159
172
172
179
210
236
215
185
227
153
141
231
184
231
283
217
257
129
202
196
255
194
218
214
200
217
148
218
172
172
214
262
213
214
225
219
124
220
233
178
211
248
224
168
204
242
177
241
197
160
210
196
145
193
201
252
203
235
203
180
155
233
209
260
123
199
204
222
199
155
235
206
219
157
166
257
190
249
271
196
237
151
219
233
171
247
217
200
189
212
181
223
170
207
234
189
181
189
187
140
244
206
225
171
179
187
178
160
201
236
183
209
190
195
215
256
195
177
211
210
184
183
169
172
226
155
218
221
191
172
245
224
233
125
233
155
211
184
180
200
244
197
232
177
192
192
185
173
240
248
208
187
178
191
195
218
185
132
227
174
204
145
219
172
151
157
229
242
205
229
162
114
160
129
151
173
208
161
247
199
202
155
147
145
123
156
214
218
169
212
209
191
178
179
191
218
151
226
263
206
174
179
209
179
218
229
184
204
144
205
199
231
206
161
251
225
228
190
225
202
228
187
280
190
209
232
214
236
216
205
157
239
169
209
206
194
251
187
178
250
234
232
165
169
214
209
175
203
183
187
219
181
198
224
261
198
240
235
218
211
149
180
187
200
152
246
221
218
190
154
149
186
187
221
152
248
230
226
182
202
170
260
228
179
173
171
220
217
187
177
180
230
88
197
254
217
219
202
191
243
172
184
138
254
173
186
167
164
164
216
211
171
164
121
185
206
212
248
238
184
229
164
180
144
213
146
192
161
215
135
255
223
171
230
180
240
233
202
147
144
226
172
180
155
215
136
211
196
194
225
177
179
212
248
302
172
161
232
211
178
161
181
199
185
250
225
174
129
146
227
241
226
172
206
177
160
218
196
219
205
161
135
203
221
194
234
258
150
177
192
262
270
135
195
222
217
218
166
167
186
216
156
199
195
210
208
204
130
220
180
225
170
204
191
235
208
243
244
164
262
183
232
260
230
239
202
160
274
193
198
186
136
261
201
211
221
212
238
170
184
216
182
161
254
235
218
166
147
152
147
179
213
200
187
215
192
220
232
225
224
232
222
202
201
204
243
210
221
234
196
216
245
186
214
224
184
227
244
188
156
232
232
198
140
204
183
196
266
163
216
202
178
187
231
171
122
167
189
199
270
187
164
184
189
214
250
239
143
191
230
182
229
185
220
191
160
272
248
182
195
246
219
234
190
191
239
193
164
215
244
238
187
181
194
163
224
186
210
139
196
160
288
225
208
252
176
144
152
236
265
234
281
184
216
160
202
190
133
252
191
163
216
182
164
213
191
165
190
228
201
224
208
170
164
239
185
221
174
189
219
201
222
139
230
175
197
217
196
194
196
247
196
192
199
265
164
187
176
180
163
194
132
247
140
167
169
228
198
216
203
237
198
191
205
188
256
202
263
186
208
204
241
177
210
199
143
147
204
202
220
210
163
239
219
237
203
108
214
252
239
242
234
163
199
205
266
244
211
148
292
227
173
179
186
259
190
161
162
244
192
179
214
204
189
232
161
210
169
235
174
160
189
220
187
247
191
150
207
224
201
237
223
212
186
197
165
258
248
192
197
190
197
149
179
203
201
173
219
258
240
130
202
239
232
182
161
191
211
235
191
223
148
199
185
183
157
262
187
158
224
135
168
178
218
209
244
179
215
190
209
219
241
200
135
213
184
212
183
247
209
187
175
165
134
175
181
192
159
208
120
239
222
201
154
164
162
124
256
208
219
181
184
263
259
174
226
172
140
226
222
229
180
126
236
190
200
168
205
213
231
209
181
209
192
203
239
260
217
218
229
282
281
255
208
141
226
165
130
156
248
174
171
234
200
192
123
191
224
236
225
187
238
191
222
218
228
221
231
188
222
182
235
174
189
203
219
246
199
224
216
198
108
207
187
212
226
177
177
205
203
213
187
126
225
229
187
199
243
158
191
168
227
265
195
228
206
211
266
262
205
241
159
155
254
212
158
181
172
207
206
209
187
183
203
211
242
221
172
131
154
183
161
242
158
188
202
265
161
231
167
275
194
228
189
186
153
192
251
216
194
142
229
216
171
185
159
172
234
203
188
198
146
162
215
175
242
240
196
229
156
254
225
169
183
146
259
180
195
195
152
132
147
213
200
223
203
156
199
199
169
182
216
186
246
181
197
241
246
151
196
162
157
222
222
228
223
224
263
176
219
226
189
241
231
257
203
139
210
214
237
224
235
204
123
215
192
219
219
240
200
265
221
198
254
239
169
184
172
236
221
167
278
248
182
191
169
217
196
153
254
205
266
201
165
107
237
184
216
209
247
214
188
222
180
223
178
206
177
203
252
145
169
159
255
262
162
145
210
136
224
177
182
164
199
220
224
249
248
119
189
195
225
141
187
194
230
158
169
187
227
210
212
209
217
189
174
206
207
251
191
212
185
158
183
152
173
200
230
217
200
183
190
153
224
196
148
186
204
172
207
205
128
191
262
231
221
200
237
192
190
222
235
156
218
197
170
208
191
207
194
181
213
131
186
206
231
199
196
200
170
226
231
193
169
163
133
187
160
169
189
194
167
241
166
182
239
217
207
168
199
167
182
166
129
125
214
230
221
197
197
194
203
165
167
213
113
258
249
199
181
153
223
158
155
270
111
202
176
220
143
196
142
235
139
220
171
174
176
236
213
166
230
256
206
184
207
171
189
183
216
226
198
202
168
186
164
209
141
231
229
233
226
181
188
177
134
151
145
257
238
179
184
171
182
217
242
165
183
212
164
238
151
146
156
237
218
246
212
141
196
144
181
196
162
179
216
168
197
210
250
146
130
222
253
175
220
162
179
170
230
88
166
171
212
255
222
194
283
138
160
199
215
214
172
205
147
224
266
154
172
184
239
166
197
152
227
177
163
265
237
131
217
176
222
201
157
182
152
222
197
208
177
175
155
206
205
183
217
203
219
148
177
203
186
192
186
182
234
169
208
208
173
238
145
254
260
173
184
251
215
190
169
241
215
173
186
249
209
177
176
196
176
187
216
204
180
200
159
210
202
176
252
208
216
231
176
217
210
206
190
230
252
218
204
233
168
151
198
159
236
145
146
210
169
216
231
162
167
187
213
193
207
121
208
172
186
169
173
175
224
229
185
230
182
191
176
160
235
245
225
230
243
173
215
189
236
208
175
183
188
159
192
200
240
242
197
195
176
186
206
193
212
252
225
165
225
240
202
179
243
177
177
201
251
166
233
192
135
205
254
186
198
203
222
155
169
194
259
261
242
162
196
214
210
177
184
166
193
236
188
163
148
211
210
198
259
145
248
180
216
206
215
174
227
225
175
219
227
238
164
215
213
171
243
144
194
165
172
180
212
183
242
221
180
146
223
264
226
204
176
229
248
220
149
203
160
192
235
196
215
240
228
152
202
182
189
174
185
213
197
227
240
259
166
195
223
130
147
258
212
184
179
232
262
198
183
156
215
182
241
212
169
137
186
210
203
141
207
153
251
151
170
155
246
155
164
202
296
149
143
212
160
222
184
198
219
165
193
217
157
137
160
208
220
215
214
285
163
244
190
246
174
211
181
189
200
223
219
188
205
218
238
177
258
215
205
134
142
212
162
211
235
191
245
246
220
184
214
161
227
192
169
173
250
190
216
223
184
228
170
167
218
215
152
252
188
217
204
282
211
249
239
213
208
186
193
207
175
237
218
198
274
232
188
197
254
205
173
218
148
204
238
172
216
206
234
175
194
224
216
243
201
207
257
228
151
208
242
223
197
185
122
258
146
173
186
203
185
202
246
264
205
157
166
223
132
107
163
202
218
169
169
160
235
179
224
167
247
199
174
130
202
202
260
236
187
177
234
185
222
252
227
226
171
177
223
138
247
166
197
166
191
148
159
213
193
190
190
227
188
249
242
159
174
185
189
196
212
224
192
187
184
214
251
180
149
198
141
235
210
213
174
241
183
192
198
226
164
201
257
228
251
258
170
185
134
232
238
183
201
241
227
136
104
234
216
208
214
184
241
171
183
175
163
182
237
227
163
194
213
195
171
165
157
208
172
154
264
190
156
275
158
184
262
227
180
232
245
191
163
168
158
173
189
221
204
172
216
207
241
185
184
200
224
169
211
205
200
130
142
264
247
208
225
221
226
141
123
270
150
218
196
212
209
244
149
215
222
233
185
200
212
186
162
191
209
196
249
209
232
217
231
231
194
147
265
165
246
134
234
276
178
147
175
189
200
185
242
205
188
153
179
159
164
229
181
194
135
209
196
233
272
206
181
194
213
192
197
237
197
160
167
175
183
176
212
220
177
196
172
181
260
233
229
220
205
200
174
271
175
243
259
195
241
236
224
230
198
219
241
224
151
169
181
229
228
248
201
254
162
146
173
221
218
253
213
210
164
160
222
218
192
188
200
195
241
166
222
116
263
246
151
230
185
200
220
207
194
251
122
176
205
182
197
168
175
187
231
197
234
203
162
145
197
218
194
179
202
252
188
220
204
222
211
223
144
202
220
184
265
192
279
210
189
194
202
170
208
227
215
180
150
230
229
191
228
183
238
242
290
175
226
152
215
192
140
187
233
184
214
196
159
190
195
198
163
96
223
197
192
194
208
232
195
162
133
225
246
146
243
185
148
189
230
189
182
168
196
203
227
195
182
224
134
166
188
198
182
191
194
185
198
233
177
185
216
175
253
221
260
125
169
180
163
194
237
153
177
157
182
128
158
154
187
228
177
211
80
191
209
158
158
163
258
116
210
136
243
165
161
174
247
202
199
175
235
166
200
143
253
213
195
153
182
185
215
180
217
215
204
228
253
225
204
241
181
178
203
153
208
202
157
237
248
194
230
203
176
161
200
188
168
181
191
225
245
121
225
227
175
146
211
133
147
262
254
187
201
242
228
194
211
170
223
212
220
216
140
246
184
225
214
203
168
191
180
211
192
228
261
191
183
228
209
184
202
210
233
191
172
175
162
244
198
135
220
208
219
228
190
232
237
206
182
189
260
193
219
194
145
237
220
197
213
202
200
226
216
217
222
198
170
165
280
225
150
160
222
155
235
211
201
203
233
162
198
197
266
166
153
151
230
202
211
174
253
190
228
249
210
207
243
270
173
248
230
167
248
238
207
232
225
218
231
245
196
159
136
242
205
269
245
223
223
194
215
230
256
193
262
161
203
218
264
188
224
228
173
197
178
178
252
216
205
270
241
228
185
228
216
271
232
187
175
193
209
214
148
264
216
211
191
221
225
242
197
202
178
212
202
222
204
227
198
208
177
221
217
227
150
230
207
224
134
200
167
180
224
237
169
126
189
185
227
164
155
246
278
260
264
212
247
251
195
202
121
198
183
204
200
213
129
209
182
148
168
192
206
186
187
215
162
179
181
205
241
197
223
146
195
194
164
205
215
185
186
231
278
190
165
185
188
250
142
132
213
114
239
177
177
180
222
177
189
176
209
199
172
166
230
252
159
260
147
232
208
220
227
181
186
138
234
226
199
190
183
170
197
219
216
227
199
173
238
237
146
149
194
188
265
255
175
185
269
210
234
182
203
222
194
246
264
234
179
213
173
163
230
193
151
160
149
155
163
222
206
172
218
215
203
240
174
151
153
252
246
180
195
205
190
134
195
237
206
254
199
172
186
151
193
166
201
216
213
262
232
128
207
189
206
177
191
193
214
190
170
229
207
174
183
215
157
208
200
212
168
148
224
141
239
180
241
138
231
196
194
231
223
183
170
205
223
246
177
138
281
218
149
211
165
146
226
129
254
225
181
210
175
249
185
187
238
87
188
265
159
199
161
223
204
203
189
171
183
160
247
227
174
199
187
158
257
167
206
227
183
236
197
233
199
146
218
251
178
203
173
218
262
182
201
212
215
216
163
198
157
166
208
230
253
220
147
128
259
163
235
307
206
210
171
219
176
190
254
172
178
114
195
179
233
238
211
212
150
158
245
254
206
190
152
235
199
168
198
152
173
180
206
222
232
231
213
184
188
243
246
248
207
208
258
244
170
220
246
233
184
211
194
246
182
166
145
193
239
170
142
202
170
204
184
222
255
244
205
160
171
227
213
164
225
191
175
194
257
205
171
244
173
211
214
256
183
198
186
259
240
208
198
262
169
195
190
248
179
245
174
137
244
234
188
224
225
152
222
182
242
232
163
160
190
224
183
234
220
180
260
184
250
224
155
204
155
243
181
213
197
259
194
182
246
177
202
277
211
236
196
185
224
166
136
154
182
258
200
247
217
223
194
179
164
214
146
195
135
254
188
220
173
179
135
225
251
179
208
198
208
177
174
219
213
168
217
232
215
223
197
209
211
223
190
203
230
194
252
183
207
209
243
189
176
179
260
179
234
197
206
209
194
217
216
136
188
207
154
241
169
190
200
234
235
172
171
231
201
156
209
216
215
205
151
218
268
154
246
213
250
250
170
181
249
175
215
228
185
180
219
191
200
233
226
134
210
249
234
97
219
159
218
199
169
226
157
234
168
209
178
252
147
139
221
236
271
215
206
176
188
195
167
202
249
177
142
160
217
205
156
181
222
139
211
189
186
183
163
296
116
170
193
290
242
196
157
183
157
220
260
141
192
188
207
169
218
192
241
213
223
222
180
230
247
163
175
204
171
181
156
159
227
157
176
200
193
196
206
221
217
228
165
224
214
206
135
191
159
188
180
255
269
203
179
232
228
83
215
175
132
207
173
260
210
188
245
191
168
240
225
250
202
178
158
205
195
198
239
215
251
199
169
211
213
239
149
204
225
200
223
243
149
187
205
185
206
278
169
133
126
215
174
185
265
252
203
228
204
147
179
157
207
196
170
210
138
168
229
219
194
241
160
206
157
212
204
187
261
177
251
225
138
202
150
233
208
220
246
195
248
220
168
163
240
157
190
215
258
216
185
195
143
204
130
237
156
278
199
174
157
139
150
177
229
217
194
231
245
160
266
181
182
247
166
229
191
200
195
207
158
174
171
225
252
221
191
211
216
219
190
196
171
237
241
256
244
228
203
137
199
150
185
158
214
228
120
197
193
177
225
141
195
184
173
207
221
185
202
220
271
253
253
181
208
231
195
213
185
160
167
219
187
209
266
207
159
201
205
176
238
181
144
162
178
180
144
226
154
195
191
213
218
205
140
250
155
244
232
211
187
213
194
229
177
234
217
245
213
213
179
151
185
159
145
174
222
189
191
187
237
224
245
221
148
176
210
213
201
264
189
168
170
258
171
228
256
184
184
206
194
206
216
231
197
207
200
188
239
169
169
156
197
158
176
227
150
185
99
195
204
196
225
233
234
206
153
261
210
118
146
132
241
163
180
188
204
211
242
209
228
168
198
200
226
181
244
143
230
202
174
203
150
196
232
259
192
160
258
192
208
277
171
224
186
199
204
222
254
229
249
179
195
210
236
148
240
152
207
223
243
204
233
233
225
233
252
174
165
232
147
160
207
200
171
223
204
236
174
213
202
209
189
237
174
139
232
224
239
244
236
192
198
226
224
175
181
235
189
181
186
229
173
161
216
218
149
217
154
148
192
185
152
244
231
171
189
175
175
198
227
170
176
176
194
185
239
192
186
248
144
136
234
209
196
186
228
237
214
195
180
188
132
191
177
193
153
223
264
128
182
215
192
197
181
235
219
200
208
216
189
178
166
168
234
220
179
170
183
205
218
140
142
228
221
221
218
198
208
255
208
262
234
144
249
133
186
190
227
126
199
187
227
226
176
169
212
205
165
177
177
194
225
240
191
183
247
175
205
210
214
235
158
191
182
176
191
178
207
244
128
243
185
140
226
256
183
242
199
217
162
178
261
210
155
222
208
200
239
245
183
194
222
199
237
196
223
295
159
175
229
194
212
240
148
233
228
166
218
162
190
268
200
191
222
239
150
189
216
157
174
214
193
223
211
186
201
150
232
214
232
217
254
192
178
186
254
245
171
176
152
148
213
218
239
194
187
126
225
239
129
161
195
168
189
191
132
260
122
212
151
223
174
235
190
229
213
170
180
179
194
248
236
198
255
236
191
225
176
204
169
162
202
178
247
197
196
214
166
205
216
201
150
180
238
203
185
181
216
243
228
163
235
201
134
132
155
177
217
223
265
167
200
235
228
161
241
120
220
207
212
210
148
163
222
218
156
242
186
165
138
212
181
226
195
159
169
223
170
202
199
212
162
239
240
157
192
240
200
215
212
215
222
185
162
226
176
191
194
185
198
199
132
142
180
219
275
203
214
182
187
165
161
205
256
216
227
224
257
206
239
208
225
215
210
199
222
241
213
207
242
198
174
183
217
183
208
184
212
179
163
237
249
165
224
235
197
236
220
191
234
181
193
176
174
185
185
94
195
198
194
166
177
185
218
268
201
218
188
211
223
183
228
244
183
259
241
212
256
216
145
206
166
181
218
205
150
186
232
155
198
181
115
193
250
236
211
247
231
234
220
198
159
247
249
143
210
207
204
160
243
238
187
234
170
234
248
214
201
238
187
142
181
184
156
217
173
210
227
198
172
174
279
190
182
199
220
145
213
243
226
205
216
165
200
161
200
222
228
183
194
193
183
235
187
239
251
165
149
198
226
137
230
158
214
270
229
232
179
196
177
177
189
200
211
220
187
212
190
183
181
225
212
127
205
163
212
220
172
184
188
224
204
189
216
229
243
232
231
207
187
207
204
166
220
201
148
119
234
166
216
254
176
179
263
161
224
227
268
220
238
126
239
151
243
204
172
206
176
214
189
199
198
238
211
214
195
237
233
206
200
246
185
241
186
206
226
174
208
256
179
242
230
181
188
195
196
203
265
210
184
204
147
269
239
183
266
253
199
266
139
224
131
163
190
187
171
242
159
275
181
194
249
197
228
258
153
273
226
211
150
209
188
179
232
148
228
243
164
270
261
249
217
195
188
195
236
203
204
162
176
169
193
227
156
222
212
177
191
250
184
214
203
187
215
160
189
185
194
197
215
180
135
189
290
175
229
158
152
160
138
261
204
184
206
211
168
220
206
190
173
190
245
188
218
185
203
198
156
215
215
168
225
265
227
220
144
200
180
212
267
256
209
171
174
167
250
236
143
138
181
233
137
186
219
204
237
226
193
148
242
217
231
224
130
250
226
229
176
229
203
146
170
168
196
230
260
200
219
200
225
213
245
204
233
161
121
252
250
198
175
223
201
165
196
217
268
223
233
191
178
226
159
244
146
222
142
175
194
246
216
142
171
232
227
120
155
222
213
237
177
193
107
194
202
219
173
159
255
144
185
196
182
220
199
155
253
157
202
187
231
175
187
139
214
182
213
203
160
184
221
209
179
234
206
204
222
219
230
220
214
210
215
204
164
187
197
173
212
202
178
227
234
257
243
231
187
190
209
206
185
245
184
212
212
200
219
242
223
236
223
175
200
166
183
215
123
143
207
157
209
183
134
204
237
184
220
231
174
181
185
131
244
173
181
154
166
163
259
225
104
199
257
164
205
229
198
272
220
194
168
218
216
125
204
188
244
188
224
168
195
215
179
192
221
200
235
178
149
184
174
214
132
214
164
171
205
187
164
221
270
238
222
209
211
209
194
212
244
217
195
210
203
202
219
161
244
180
224
216
183
208
160
191
228
266
125
155
107
236
152
177
207
246
205
195
201
196
131
237
203
176
225
161
97
145
216
171
207
226
228
149
153
159
168
199
219
183
129
254
177
211
155
164
217
226
186
179
190
207
255
161
196
161
160
164
191
167
165
252
213
231
242
164
207
146
204
169
190
193
250
211
177
184
217
172
231
228
194
218
193
217
169
213
184
205
243
113
285
227
231
220
180
258
164
177
236
240
174
213
202
223
199
235
197
119
149
228
140
185
208
126
185
112
197
245
212
268
198
196
226
181
177
256
201
231
219
169
186
181
162
201
187
231
209
225
203
263
244
142
224
145
258
178
230
184
222
230
216
192
190
216
227
194
126
155
203
201
182
266
159
177
183
188
219
163
147
181
199
212
214
150
234
206
223
223
216
192
155
210
180
171
195
224
240
239
211
173
116
206
206
260
178
236
252
157
214
217
158
236
157
115
208
180
211
149
265
166
166
244
225
177
230
190
253
156
248
252
204
213
217
197
142
192
183
213
234
183
188
188
209
177
255
215
188
147
192
170
147
192
171
253
229
208
281
216
245
259
247
204
176
208
192
268
190
200
222
212
191
200
143
206
202
180
197
210
205
219
210
195
259
196
186
198
202
227
199
211
163
139
182
239
180
193
247
207
229
192
180
181
220
201
208
202
216
165
198
241
216
170
196
199
239
246
205
183
241
195
149
191
180
144
219
173
206
212
176
173
175
174
223
224
214
181
201
200
175
190
156
194
221
220
189
214
175
212
204
200
233
249
193
216
196
205
219
153
180
213
221
216
293
190
230
232
237
177
136
194
260
220
266
166
177
196
218
249
206
191
248
219
239
194
227
155
215
177
176
184
242
185
151
215
172
181
256
155
192
174
210
168
233
246
216
191
212
239
209
120
251
200
174
136
214
234
196
166
162
237
179
208
158
202
199
252
197
251
225
246
242
196
144
204
179
167
197
264
242
256
179
219
229
195
218
192
144
170
147
208
240
181
238
283
167
219
237
208
284
202
218
171
209
159
177
232
257
118
193
221
203
177
185
230
243
219
237
123
183
251
145
211
214
214
178
174
179
196
218
163
173
250
204
230
168
217
200
199
168
165
206
222
177
222
191
187
183
222
193
162
221
236
161
119
170
188
172
236
194
260
228
216
203
219
189
232
231
238
226
178
199
214
203
228
163
239
193
221
245
146
176
192
200
246
191
180
181
241
182
191
144
218
191
191
234
157
145
199
180
194
149
177
200
152
164
241
212
243
188
170
145
216
212
178
147
249
246
182
219
145
217
211
228
185
169
172
170
202
242
187
219
161
230
195
225
224
167
156
201
202
242
254
223
164
142
251
209
189
172
245
223
200
176
240
247
273
211
176
230
233
218
186
202
268
246
202
142
241
297
247
247
214
148
127
122
204
177
193
220
265
170
245
200
198
142
215
200
190
218
252
198
167
199
209
180
139
217
229
160
186
238
215
209
163
160
152
220
213
148
168
215
242
197
231
214
199
229
195
217
215
248
166
187
202
201
163
142
241
277
236
196
159
219
195
187
163
175
187
184
168
189
172
165
256
243
237
229
217
195
144
229
238
192
257
163
203
178
214
191
206
197
236
222
205
209
136
221
188
180
221
225
123
192
193
190
191
213
208
171
213
254
184
155
181
216
205
124
218
212
201
186
196
139
263
173
158
198
170
172
264
192
221
166
251
251
216
191
225
201
157
245
138
226
197
170
226
203
154
271
203
222
135
213
219
200
203
260
227
227
149
208
276
171
145
226
184
216
199
174
218
274
233
201
176
158
190
210
131
175
160
195
173
179
174
167
204
222
213
198
223
252
251
216
157
181
147
192
231
222
211
210
155
188
235
102
178
232
257
168
199
219
166
226
193
170
270
191
214
161
155
231
179
280
229
202
167
177
223
189
195
191
223
206
157
250
214
183
175
191
230
233
188
225
160
243
216
263
232
258
196
185
154
164
128
147
204
210
235
239
224
234
165
226
170
260
215
155
200
204
236
193
119
158
222
233
212
173
243
197
206
192
182
218
180
124
170
184
211
175
255
205
182
272
191
205
220
212
169
206
211
249
262
198
188
183
219
206
208
185
208
279
180
189
108
145
215
242
195
218
209
174
205
198
175
196
220
176
244
215
164
204
151
145
259
203
182
212
188
177
217
203
196
258
170
225
220
204
202
197
206
202
209
247
226
162
219
161
245
164
193
203
230
222
204
159
162
242
163
225
225
262
231
217
182
190
279
227
216
199
197
176
131
231
180
220
215
146
187
175
172
185
177
256
266
208
273
221
207
209
205
229
192
193
177
170
264
264
222
208
237
229
222
170
256
242
193
146
179
202
152
193
173
192
201
211
206
238
135
216
204
180
164
197
215
229
236
144
184
184
197
178
239
201
218
227
243
255
248
214
173
204
217
205
140
240
253
221
214
211
152
270
167
218
228
230
184
133
164
234
190
256
163
201
224
232
225
129
183
257
254
126
181
170
149
216
190
152
219
220
231
204
185
213
214
190
201
215
208
196
227
212
259
226
179
160
205
230
174
205
212
146
156
211
157
220
223
184
175
244
152
211
248
223
88
220
199
216
212
117
188
235
174
196
180
152
161
238
203
138
184
246
268
188
216
191
227
221
258
188
227
215
170
262
252
202
179
187
174
178
206
182
241
159
236
171
244
236
204
266
190
211
169
219
227
142
201
211
228
176
251
190
206
196
209
170
172
234
218
223
210
248
198
179
277
185
192
230
210
241
189
176
133
239
179
236
128
192
218
252
229
221
207
192
195
223
166
190
224
152
222
237
159
171
187
200
173
203
191
232
176
219
171
217
219
152
223
268
207
187
267
244
201
164
196
264
187
213
201
184
187
213
224
184
190
254
193
174
197
210
165
213
210
217
214
211
121
201
264
180
197
153
213
272
153
189
257
192
221
192
193
143
214
207
258
191
179
207
276
214
191
149
285
216
204
205
234
193
148
191
193
127
170
234
156
145
155
173
196
154
269
207
266
177
285
227
245
176
130
178
207
179
177
157
183
194
103
224
200
217
254
166
175
234
238
236
164
240
219
182
200
209
190
209
200
188
155
249
176
239
242
226
217
261
219
244
224
236
295
146
161
158
243
194
185
205
218
195
232
211
128
227
143
176
153
218
154
143
188
246
208
214
230
240
165
219
220
246
231
189
181
173
188
210
202
214
196
193
196
202
130
175
197
176
214
165
201
265
218
190
224
168
195
211
212
140
262
196
243
211
161
273
196
215
241
188
173
236
145
244
229
145
234
206
164
240
268
158
213
176
261
232
267
169
214
218
144
174
167
164
233
219
199
224
236
239
188
239
144
147
184
227
212
141
210
210
233
204
188
226
211
187
153
221
196
153
181
175
227
195
167
231
166
158
207
223
213
257
271
160
218
231
272
216
210
237
222
207
233
217
227
150
203
169
185
166
256
158
208
212
207
169
184
124
189
201
238
246
239
235
223
185
182
157
198
237
237
231
254
200
235
171
211
258
238
259
219
166
200
246
199
218
159
214
144
228
222
235
154
242
147
227
211
145
166
191
258
175
196
224
161
182
170
173
136
214
173
231
216
253
185
161
243
186
286
233
200
219
171
249
156
159
160
250
131
249
143
200
214
194
186
206
200
225
179
210
146
197
185
174
205
223
173
177
155
202
288
184
228
216
224
203
197
201
190
185
189
158
173
235
199
225
129
174
232
128
208
119
201
153
154
200
256
126
163
135
128
253
216
227
217
266
208
182
215
199
217
221
151
203
237
197
178
250
172
202
201
186
171
237
215
210
202
228
178
184
221
228
153
189
212
231
252
235
203
249
216
265
257
247
109
251
191
196
285
231
213
240
219
211
246
204
235
201
189
206
257
173
207
183
174
200
190
174
191
176
169
169
157
204
201
153
157
206
160
174
230
180
242
260
191
185
180
227
208
247
200
269
201
178
203
229
134
145
228
180
234
211
206
229
176
247
201
179
215
196
203
192
208
175
212
196
235
225
234
203
219
224
156
209
182
180
211
210
224
197
166
198
234
159
187
249
143
179
185
198
189
213
204
210
181
220
227
242
160
210
241
229
216
203
205
251
173
226
152
170
207
138
233
184
244
222
190
209
119
191
229
210
159
209
188
176
191
246
198
254
190
178
198
199
219
212
249
224
199
269
213
137
296
202
214
148
180
160
210
202
203
209
194
187
143
283
169
207
213
177
233
273
237
192
174
242
187
171
224
228
244
156
194
198
215
236
196
206
230
259
191
209
201
159
153
258
180
184
175
120
261
176
245
219
260
166
202
223
198
271
212
193
200
251
194
228
163
192
137
221
185
230
235
191
209
179
152
181
171
252
144
158
140
184
193
224
257
166
160
198
198
187
258
185
163
196
196
159
195
220
217
202
226
168
177
200
163
205
182
111
182
225
231
234
186
251
202
202
197
177
180
282
246
184
244
168
228
224
225
290
187
213
183
222
247
181
174
268
185
216
194
213
218
262
141
170
148
207
185
240
247
175
247
206
156
220
177
169
176
216
165
197
233
230
195
245
213
190
193
163
213
204
165
214
224
147
215
147
176
225
160
208
180
208
183
197
186
271
193
92
209
186
216
266
257
82
195
118
195
201
254
240
140
203
216
229
176
136
214
163
216
232
176
145
183
191
243
187
222
208
223
208
197
156
225
180
213
190
180
254
204
254
255
221
198
158
201
208
152
177
172
200
201
130
222
207
210
239
223
258
318
201
193
221
169
216
181
203
205
163
188
266
220
229
200
209
206
229
220
183
168
154
209
199
190
171
218
146
157
194
177
217
175
185
194
211
141
134
171
244
201
247
248
208
205
220
261
196
155
222
181
161
175
204
238
165
196
230
226
171
233
169
240
238
185
239
191
204
195
181
200
180
237
131
251
167
188
214
167
239
213
177
126
135
182
175
231
223
219
137
200
178
195
206
115
195
265
195
206
216
207
211
226
181
163
115
218
210
237
204
166
201
191
252
214
148
248
271
216
196
241
261
189
217
185
192
192
134
172
182
202
195
223
179
228
199
192
237
190
170
149
169
208
219
248
263
202
212
259
212
254
228
174
231
213
198
184
217
243
212
245
176
230
249
190
175
182
212
200
176
127
232
193
205
228
213
231
262
237
214
200
188
161
131
209
175
185
179
204
236
206
234
220
166
200
186
251
182
279
194
257
179
142
176
184
173
233
174
237
207
249
179
244
176
157
206
219
243
205
192
224
168
240
186
233
249
115
183
160
250
154
224
171
235
232
238
178
169
261
223
166
262
159
234
259
196
257
200
164
204
207
201
183
261
151
151
254
213
152
213
273
235
268
211
176
171
186
161
206
194
166
219
199
213
225
262
160
209
201
191
207
142
159
155
251
197
171
283
251
198
196
212
232
246
182
162
227
261
169
186
203
203
271
235
266
209
168
233
236
243
233
167
261
223
203
201
195
228
222
203
176
191
251
207
218
182
162
194
188
188
165
162
252
155
211
201
253
211
192
175
216
166
227
199
195
166
196
209
255
148
168
213
273
205
184
208
193
204
243
247
182
215
130
212
190
207
235
189
171
156
123
184
145
303
252
217
201
199
211
244
168
219
196
213
231
193
227
182
211
214
225
191
179
248
187
128
257
129
163
183
160
178
183
213
179
195
225
174
216
318
184
202
244
235
136
161
236
170
221
218
210
246
209
230
307
233
113
219
171
162
201
211
119
164
209
192
216
199
219
184
237
216
186
178
212
185
212
143
159
185
117
230
188
253
132
169
186
240
153
236
235
205
199
224
209
179
241
187
188
215
250
190
148
214
252
241
202
195
149
218
206
170
186
249
107
209
219
203
163
154
169
185
198
194
209
239
215
266
215
208
171
207
193
152
196
216
213
136
184
203
200
264
171
170
246
170
159
185
207
232
225
187
156
158
265
186
198
169
178
262
215
166
236
188
202
181
225
268
145
219
173
209
102
212
206
237
200
192
212
176
204
210
150
249
216
193
118
183
265
171
184
201
232
195
231
154
270
214
243
206
246
174
157
220
215
235
140
138
195
216
148
175
198
246
182
166
209
182
147
225
210
230
199
212
178
167
232
197
156
178
219
215
260
203
235
217
226
183
160
175
196
211
213
245
216
195
155
226
222
149
153
194
184
208
186
203
215
199
252
133
182
168
239
244
166
218
159
238
210
226
209
207
186
214
165
184
252
203
209
218
199
236
218
178
191
153
208
173
170
233
140
169
254
195
267
159
201
289
169
191
209
176
182
236
234
238
183
214
158
233
165
212
209
233
254
181
264
198
230
166
152
210
163
171
180
225
205
212
166
134
221
182
204
189
181
232
252
187
189
225
199
207
236
206
166
243
135
213
236
206
235
128
179
199
242
239
224
247
216
233
229
251
228
215
172
101
181
185
188
201
219
218
176
185
218
211
201
154
255
214
177
218
198
190
228
241
171
206
183
206
207
231
250
200
240
225
216
248
238
207
243
175
212
180
164
227
203
134
198
173
227
217
177
149
231
246
207
223
212
227
262
172
148
143
197
215
248
264
147
175
212
183
189
248
225
141
180
116
215
182
229
216
196
205
226
226
195
138
226
177
190
195
158
222
199
213
195
186
235
268
268
231
159
157
174
218
171
199
141
216
199
137
174
171
136
180
180
210
281
207
179
246
167
188
244
240
111
225
195
178
150
220
286
191
116
241
220
153
173
196
217
203
261
222
249
195
225
223
192
235
180
186
191
245
218
232
184
206
236
176
242
171
143
211
207
171
193
198
219
190
241
186
183
162
201
183
189
234
194
213
249
176
207
171
171
204
203
209
189
192
202
207
198
201
248
182
193
188
93
224
147
153
214
165
199
169
225
151
187
270
248
206
238
192
200
224
221
208
141
250
245
157
184
204
210
184
221
205
201
219
228
158
170
239
214
200
226
162
226
203
172
238
193
172
175
201
197
194
248
156
174
255
173
165
224
232
114
274
210
226
233
198
192
188
215
134
190
211
156
206
156
191
195
276
135
226
234
165
228
183
158
211
154
242
166
231
182
202
269
214
191
229
172
172
165
210
190
208
225
196
209
171
200
200
225
233
145
231
183
215
231
205
198
205
189
193
217
249
248
227
213
164
210
227
244
232
212
235
176
208
236
148
228
201
189
229
198
191
206
172
251
217
241
207
223
173
238
230
216
179
232
206
174
215
175
238
208
219
174
195
260
209
181
181
201
250
167
156
153
235
140
225
222
195
218
187
183
203
179
148
215
227
158
128
231
241
253
241
228
148
196
198
210
219
248
203
218
206
225
242
200
196
208
299
231
249
181
197
234
152
184
136
182
202
173
234
222
204
244
232
150
212
168
214
228
121
141
190
274
236
189
236
227
168
213
179
209
183
150
249
220
180
245
227
221
201
167
197
193
188
217
190
231
215
195
200
243
209
194
176
226
185
186
132
243
212
192
206
183
254
244
178
203
198
229
220
184
202
198
143
200
214
249
191
185
215
216
201
203
200
187
214
233
160
205
154
255
226
221
150
201
241
189
237
230
183
155
186
230
212
216
210
196
206
228
233
217
182
204
183
146
197
262
169
216
150
183
177
251
211
104
136
190
189
249
154
199
193
207
191
178
226
220
145
219
194
240
192
217
174
179
192
208
167
212
224
145
206
221
155
180
224
214
194
184
190
182
233
244
182
189
164
162
222
275
241
171
255
148
165
248
215
145
248
144
171
216
300
251
166
251
164
178
154
204
167
237
152
189
222
202
236
162
169
186
212
189
252
213
188
222
163
175
223
208
212
186
104
233
200
130
186
262
186
221
180
210
232
167
180
225
198
197
247
223
174
215
171
189
223
240
202
252
232
275
142
165
223
192
215
157
174
168
171
172
196
198
167
149
206
262
228
242
139
173
219
262
175
229
238
201
253
168
246
262
238
225
203
181
233
191
195
158
243
202
235
207
215
245
176
159
240
201
253
215
147
241
151
214
135
181
156
260
275
226
141
178
215
212
153
200
206
158
233
229
216
186
199
209
221
150
216
208
225
213
162
261
231
280
242
259
195
235
207
164
170
171
172
250
231
201
182
238
203
244
270
169
159
187
208
188
195
262
215
196
203
226
175
192
240
190
201
173
221
172
234
174
190
164
218
169
170
211
227
204
230
191
246
238
232
176
173
276
222
226
210
198
246
203
174
213
225
191
250
209
191
233
185
224
196
263
185
256
211
219
208
203
238
207
179
194
159
181
191
209
221
203
235
180
199
257
178
185
237
187
144
177
229
200
201
163
225
133
155
186
189
225
185
172
213
234
210
149
208
252
193
150
176
203
205
205
227
190
193
290
139
180
190
160
164
203
194
222
215
100
241
192
205
201
190
226
245
145
159
170
209
188
210
206
201
184
245
179
199
141
207
166
220
161
174
174
208
169
207
153
160
188
142
198
165
244
197
190
196
155
227
167
191
241
199
233
177
247
214
237
194
196
233
226
226
203
229
188
183
223
237
198
149
216
243
225
235
191
153
175
213
241
236
196
160
129
206
203
260
228
212
158
184
254
161
182
153
213
151
214
113
162
151
177
214
238
249
159
199
172
234
199
232
215
199
213
263
232
190
176
262
184
214
219
215
203
178
187
90
190
199
165
261
175
235
148
204
238
137
149
181
216
238
272
165
255
246
217
215
136
164
209
176
210
176
136
222
185
213
189
202
263
175
181
166
218
188
126
176
212
244
211
197
238
208
166
174
204
183
191
172
262
174
219
206
244
182
174
222
236
193
203
188
240
234
248
233
218
166
260
184
218
237
101
150
207
231
202
111
209
144
203
211
273
208
206
221
188
189
271
176
185
200
243
245
171
228
171
214
195
177
148
148
192
262
196
206
203
211
205
193
166
239
187
222
240
170
229
209
142
256
192
224
188
247
266
201
232
196
214
231
260
207
231
191
197
220
201
193
254
215
217
199
244
182
153
200
169
235
210
241
190
234
171
198
152
162
214
183
163
259
221
240
166
216
155
173
247
177
212
108
178
202
211
233
233
196
191
172
185
214
182
201
248
155
227
214
221
212
255
259
188
194
166
148
196
224
231
150
245
203
180
244
194
209
237
173
190
211
152
207
286
196
221
233
175
236
238
168
222
189
125
203
133
181
257
208
241
211
164
166
161
243
202
204
205
233
188
262
204
195
196
172
184
252
189
252
269
188
169
209
177
246
213
140
135
221
181
209
234
138
249
269
225
208
215
188
206
180
217
177
197
189
159
257
226
142
185
169
210
201
200
202
220
146
325
236
217
218
182
191
197
207
215
146
135
165
212
232
255
257
167
204
201
192
221
125
200
182
171
179
177
174
167
160
217
177
217
195
189
223
183
208
211
172
199
178
198
237
204
148
200
186
175
164
186
173
170
210
181
243
225
170
183
171
181
188
209
179
206
244
163
269
209
241
184
248
181
197
195
162
210
200
231
200
209
187
239
177
186
197
207
195
152
195
163
177
161
231
220
228
197
226
166
221
206
185
227
225
152
204
264
179
214
172
210
265
219
140
204
246
215
195
246
153
181
198
246
187
234
184
228
229
227
186
222
241
188
189
168
225
208
219
181
215
179
256
203
144
191
195
221
240
213
179
194
217
200
202
263
217
145
205
217
240
239
229
223
206
201
226
229
212
207
219
201
197
203
196
217
212
189
208
231
212
182
176
170
147
178
192
209
168
172
224
205
230
213
187
199
214
166
216
187
196
241
228
193
230
186
194
198
226
189
142
211
189
221
242
170
262
180
256
212
194
178
181
181
209
247
242
155
200
164
202
197
220
184
177
179
187
220
152
274
221
262
228
230
190
234
168
240
196
205
221
205
160
225
201
215
212
148
153
241
189
142
250
202
172
208
178
219
186
233
198
188
182
212
206
231
133
248
230
232
180
211
163
180
167
240
170
196
207
209
185
217
276
224
237
237
241
186
253
220
202
139
145
209
117
203
209
212
149
163
203
147
230
226
196
204
156
227
195
197
210
166
171
195
196
188
184
160
196
176
162
193
243
189
186
193
223
195
202
198
225
244
212
227
194
271
215
271
144
214
234
183
177
222
190
243
204
180
223
148
225
177
180
169
194
175
234
259
203
130
276
238
160
248
237
195
238
186
166
215
219
202
233
185
184
222
215
216
235
189
170
220
230
224
166
195
216
219
172
246
185
210
202
251
217
198
228
214
247
202
221
236
184
144
222
216
219
223
209
225
194
221
187
157
183
223
261
157
137
157
158
142
205
113
120
190
182
234
141
191
203
204
220
174
248
226
189
203
250
263
248
181
250
224
197
199
213
185
193
142
239
146
251
207
216
260
229
219
221
198
235
177
171
213
218
186
201
211
222
201
174
176
217
246
134
215
163
131
220
223
241
145
153
147
202
162
195
202
194
256
195
246
262
175
178
218
246
225
211
184
170
173
182
240
228
221
241
221
252
196
223
234
167
158
224
173
263
238
168
269
191
149
246
198
276
221
143
140
264
216
196
161
167
264
207
237
208
175
239
207
208
237
131
227
177
215
203
189
189
226
166
174
135
247
198
245
150
218
235
224
194
192
240
197
179
199
232
142
285
205
149
238
211
204
194
187
209
209
230
193
260
251
165
175
212
208
203
165
197
193
237
204
195
195
235
205
233
174
154
235
272
215
165
240
144
181
271
214
248
232
209
192
218
164
220
180
201
146
190
241
209
153
224
215
195
202
189
251
203
195
204
179
252
172
187
168
222
189
230
209
213
217
170
203
162
134
269
188
224
150
180
145
208
257
204
238
210
131
208
235
142
152
241
242
194
179
178
197
172
217
155
230
203
195
263
169
200
210
177
208
221
221
167
202
121
211
227
213
169
277
146
130
221
198
180
213
220
170
245
230
159
206
176
200
207
223
230
230
194
203
218
236
204
215
186
154
199
239
180
196
252
161
137
207
173
166
238
190
266
212
196
165
146
193
209
222
255
194
196
262
192
195
253
208
206
232
220
164
271
259
218
218
247
219
178
181
202
159
164
194
205
208
164
201
207
268
220
206
180
201
202
214
205
233
215
173
164
191
160
158
230
104
199
160
260
220
178
185
171
229
213
208
178
232
268
236
222
205
205
184
176
105
211
149
184
241
155
168
205
189
200
168
190
218
180
193
190
233
167
172
217
139
209
267
213
225
152
256
217
232
237
203
232
126
192
190
248
250
225
197
236
211
164
195
198
187
186
241
239
199
169
212
214
254
167
214
197
182
212
232
187
192
247
197
173
214
171
236
179
262
244
214
211
200
189
210
214
189
252
171
213
159
174
138
225
177
217
198
187
263
218
215
224
215
183
204
180
242
232
189
189
235
210
219
198
218
228
201
162
199
168
107
205
144
174
218
216
176
201
209
221
189
161
212
263
235
173
151
187
166
256
243
170
175
222
213
187
189
140
188
147
160
180
163
240
192
251
221
162
177
197
201
275
292
223
225
246
286
255
140
155
160
223
235
245
206
208
151
186
220
173
166
204
222
217
157
220
201
166
203
209
173
268
168
158
178
214
182
229
211
145
226
166
240
175
162
255
216
224
158
180
227
213
214
194
187
157
233
214
240
184
251
254
228
155
216
225
125
125
206
223
245
199
183
138
178
236
253
226
241
234
192
254
248
291
156
243
213
221
207
182
217
187
201
247
195
139
167
173
231
184
208
153
210
200
206
153
251
215
190
204
177
179
117
197
216
226
142
194
240
160
160
112
246
238
225
142
202
257
265
227
195
198
206
170
201
182
221
165
238
142
187
147
203
204
216
153
229
210
250
215
262
201
207
215
185
213
205
246
226
182
237
224
229
210
232
161
157
202
189
153
178
242
211
241
188
217
233
222
194
177
218
206
166
163
260
197
218
193
199
160
190
172
219
228
109
185
233
200
251
219
273
253
234
199
248
234
202
213
190
209
242
224
225
209
195
173
215
224
174
170
221
202
248
193
179
140
151
161
181
173
206
246
276
211
223
226
219
198
225
206
177
165
143
221
203
152
219
210
234
201
173
214
230
211
160
273
191
192
196
228
227
229
168
199
189
158
223
188
193
220
207
156
242
209
210
162
228
251
199
241
181
176
186
135
209
196
230
196
197
267
189
171
177
250
241
208
179
204
221
187
157
193
237
223
198
212
193
226
164
207
180
213
206
184
246
298
148
193
175
223
142
216
249
142
108
233
201
144
166
168
215
133
173
218
102
250
189
224
167
224
160
181
144
164
229
234
190
165
165
181
188
195
169
220
212
162
189
257
258
267
174
193
250
198
267
171
178
226
199
159
282
253
190
216
182
217
240
181
191
192
258
206
192
227
214
190
170
115
208
189
208
219
198
155
212
195
152
182
203
237
119
206
186
183
175
213
172
235
210
219
201
173
215
213
214
213
143
212
202
183
156
204
208
189
226
266
226
216
256
170
186
226
145
160
182
235
215
201
152
151
197
182
147
207
132
198
202
274
239
174
248
161
262
193
164
215
210
171
159
195
164
217
184
211
185
192
177
192
209
125
168
139
218
271
190
186
160
221
197
133
187
122
216
142
222
166
258
189
247
249
195
223
241
222
191
253
243
230
236
211
195
257
196
278
140
159
177
209
193
182
169
176
223
188
260
195
181
207
243
206
176
202
240
228
229
198
207
234
183
158
203
209
251
288
240
207
233
196
221
210
220
180
197
213
237
197
143
224
153
209
176
155
199
174
248
182
197
251
212
224
235
262
172
158
161
208
187
204
199
190
230
195
201
206
244
180
258
208
177
222
190
275
218
228
167
196
180
230
173
192
223
211
295
222
187
259
205
191
227
197
210
256
238
243
166
171
169
190
199
191
202
198
191
232
199
176
214
205
207
253
183
175
201
209
248
197
254
231
204
164
178
192
154
204
218
156
198
166
224
263
143
266
166
219
254
194
209
174
111
171
216
259
197
145
149
197
140
221
263
193
159
144
267
236
212
204
228
245
268
204
169
172
242
216
123
161
211
173
240
234
198
228
206
212
207
103
244
206
205
192
244
185
217
206
223
165
213
216
184
205
192
230
180
208
264
178
198
157
237
203
181
250
199
134
129
134
186
184
170
156
189
172
177
249
266
191
229
149
244
124
236
255
236
203
144
217
198
194
225
195
171
208
193
185
174
164
170
173
181
211
220
207
197
147
209
200
232
260
186
163
180
260
316
162
193
181
197
254
202
261
224
155
232
156
224
235
169
180
226
214
171
165
166
218
233
144
213
213
225
235
230
217
203
237
167
233
208
172
248
225
177
150
228
203
172
227
215
266
201
224
267
131
249
243
226
229
225
217
211
257
226
253
222
219
153
184
218
231
189
158
209
198
230
223
167
194
160
207
191
156
159
224
197
221
181
240
185
158
235
190
189
212
208
214
224
223
179
178
218
237
160
201
243
262
211
255
177
219
186
129
139
235
176
198
178
121
175
185
223
170
205
226
180
218
215
242
247
150
222
195
137
260
174
212
252
220
192
262
145
214
130
221
185
176
216
200
257
190
209
186
153
134
163
191
167
157
201
137
215
164
202
198
215
215
247
161
191
196
81
190
244
166
252
213
238
172
243
153
243
190
247
165
197
189
210
222
188
206
176
204
144
130
207
167
199
243
168
157
253
142
227
202
204
237
216
187
208
232
163
206
250
164
220
204
229
153
156
252
194
167
226
195
203
233
186
247
220
266
221
207
148
217
182
219
241
131
133
169
111
182
197
233
192
213
173
204
214
207
194
173
158
268
225
167
205
246
221
224
227
192
196
201
190
179
185
210
209
185
230
219
230
221
187
195
191
179
194
208
267
211
172
269
255
252
158
171
148
282
225
158
190
197
212
201
216
241
218
220
223
161
261
216
210
218
191
205
166
177
205
199
187
135
228
201
192
211
252
155
223
219
162
232
148
202
160
257
226
164
224
178
237
174
260
196
176
223
253
170
203
198
170
234
186
219
235
246
228
188
159
181
217
199
213
190
237
240
177
232
135
224
221
209
171
209
178
236
179
225
257
184
202
252
211
206
205
194
218
220
212
186
135
182
243
154
150
187
236
179
179
226
191
217
211
225
215
173
216
137
197
282
180
173
174
212
138
175
163
204
262
179
201
204
196
235
224
196
228
176
161
241
152
208
274
245
153
207
167
167
166
218
244
136
201
165
203
141
191
202
100
153
164
184
224
201
258
107
160
196
180
196
203
274
186
185
141
173
210
230
148
232
220
175
224
188
120
147
220
227
230
235
262
226
191
135
233
148
189
228
173
223
215
225
186
165
180
208
229
178
207
247
196
189
169
233
219
205
124
228
179
194
228
255
208
228
171
159
129
251
234
201
221
192
208
243
179
159
229
206
158
188
225
223
195
253
185
211
229
158
197
221
212
213
217
244
209
214
232
184
155
267
200
209
234
205
157
218
198
198
128
208
200
197
135
153
235
183
205
178
149
198
226
192
248
162
244
221
233
181
217
209
264
152
200
189
183
151
210
166
186
212
182
182
215
196
184
237
199
166
165
215
197
180
222
208
174
225
188
197
182
160
179
148
189
225
140
174
188
249
171
165
184
261
198
136
147
204
210
104
226
249
192
157
189
217
180
190
200
158
197
185
156
209
220
198
177
172
223
224
166
172
197
155
158
167
210
237
183
215
196
193
170
181
263
220
261
270
249
237
162
240
271
153
201
226
240
188
182
172
211
231
220
229
183
152
219
197
174
190
182
130
246
221
207
175
149
224
147
222
199
243
175
202
126
207
231
153
249
202
191
221
181
202
231
231
241
209
260
248
258
199
250
79
238
235
168
195
200
194
244
196
209
168
154
213
216
172
210
213
187
229
267
169
218
230
218
220
222
232
164
160
166
211
156
125
185
153
226
259
199
138
254
105
101
212
217
201
186
211
231
192
229
205
212
230
143
166
167
211
183
202
193
213
245
215
177
185
167
176
236
193
153
252
188
133
156
227
208
209
244
225
217
206
230
223
194
215
145
190
132
218
186
118
217
244
163
153
138
248
212
179
186
240
258
169
215
268
220
215
201
170
204
141
213
233
229
224
187
210
250
195
229
210
202
240
164
165
197
174
241
158
150
212
201
192
230
152
201
230
256
226
234
216
138
127
181
266
172
242
147
207
210
256
215
210
175
235
221
190
192
281
211
175
168
218
203
268
210
199
186
178
219
269
218
184
208
176
188
176
205
184
221
143
197
254
187
203
189
223
210
255
205
191
209
139
201
202
229
233
201
162
167
203
237
177
160
181
228
186
212
234
230
149
227
200
246
266
200
210
155
214
246
168
240
167
241
157
230
233
200
218
202
192
183
212
224
220
228
140
213
153
279
247
119
198
250
213
241
180
248
167
206
282
152
233
242
243
172
176
115
219
198
240
223
214
233
187
202
186
219
229
182
146
205
203
212
229
220
190
200
183
198
192
178
229
187
120
164
149
193
197
139
207
175
245
147
163
176
248
210
171
200
303
236
216
210
221
233
169
200
164
194
177
193
196
246
185
225
193
158
213
243
140
138
216
202
221
187
218
181
214
242
205
213
185
171
210
174
177
250
230
234
191
155
154
202
194
178
164
215
167
228
223
238
222
201
158
161
210
209
210
211
195
185
190
184
216
173
207
182
215
172
194
264
144
205
117
208
253
162
192
248
137
241
215
209
219
234
213
194
210
213
160
236
166
189
163
197
192
166
233
227
188
181
168
226
216
222
191
195
242
146
214
205
122
154
154
180
230
212
197
156
110
207
156
205
205
174
202
196
159
182
240
217
237
171
213
192
232
253
134
238
178
217
226
200
136
188
199
259
185
210
262
156
135
220
214
157
237
271
235
235
163
224
223
194
211
222
216
226
193
200
197
222
160
243
226
233
165
220
189
279
220
152
175
218
249
222
229
247
296
182
196
144
176
202
250
227
144
179
197
258
167
238
137
189
181
226
235
143
172
149
247
223
162
211
182
203
207
165
111
206
220
146
262
168
232
217
147
215
252
209
202
144
180
221
176
226
203
207
209
213
201
260
234
167
217
221
197
161
199
225
225
142
211
172
219
190
204
154
236
217
197
198
165
166
220
187
148
106
193
172
267
200
165
188
208
157
180
174
154
176
201
215
234
146
212
170
207
211
147
168
229
229
174
227
186
200
256
245
212
222
221
221
197
187
180
157
202
231
182
194
132
197
180
216
163
186
177
210
195
185
216
183
209
208
225
188
177
145
186
224
215
236
226
256
124
205
206
229
158
203
212
134
143
224
218
212
186
221
213
238
194
232
196
175
215
174
226
220
153
191
199
151
257
241
211
192
175
159
220
180
249
226
222
201
134
139
211
180
165
235
169
206
202
220
185
206
197
193
236
171
246
244
183
243
173
203
174
227
181
231
181
201
235
188
246
224
185
196
180
239
183
198
195
199
250
226
195
159
228
236
253
172
202
232
227
251
233
185
207
218
203
160
271
256
168
264
247
183
197
218
133
211
245
197
191
133
226
182
159
179
189
234
258
236
246
160
236
279
215
190
189
229
217
229
133
249
252
210
220
247
148
205
187
166
176
210
199
153
190
205
190
194
221
143
236
247
203
144
231
216
189
226
197
199
217
206
221
209
256
253
218
252
180
222
193
198
195
246
116
231
231
184
148
207
235
248
207
190
189
194
191
207
158
216
250
214
190
256
196
186
148
247
207
192
214
211
128
234
265
222
188
202
193
220
162
257
194
160
142
233
212
265
226
226
234
275
210
189
213
182
190
125
216
198
199
204
252
254
224
244
246
225
217
149
230
153
143
171
182
191
204
188
179
190
213
196
198
192
89
209
208
226
212
226
185
231
205
216
184
154
176
205
206
173
219
218
234
264
234
186
226
176
125
257
238
196
201
199
153
220
210
171
163
194
182
229
245
230
246
246
192
200
201
165
218
227
212
213
234
195
217
226
172
274
202
238
170
275
228
239
171
188
218
158
209
212
238
182
254
185
208
165
80
197
151
198
171
222
230
225
189
238
215
181
251
239
237
226
203
146
201
234
184
227
178
155
206
207
162
174
236
218
197
173
170
160
174
226
261
116
212
231
206
241
169
255
194
181
204
179
201
187
223
223
154
241
257
193
185
189
158
172
207
222
182
103
265
151
232
201
249
238
184
209
183
167
187
190
201
200
216
210
232
222
227
219
193
180
213
209
171
230
194
141
185
205
177
213
271
233
177
238
189
190
180
210
220
117
169
230
152
148
231
184
192
291
259
188
199
163
240
244
204
178
186
229
212
226
263
231
258
269
272
224
156
227
189
176
177
227
190
122
125
186
148
225
273
187
208
209
230
222
170
187
246
221
156
246
189
172
124
170
212
254
179
211
152
255
212
178
219
235
169
198
228
228
182
149
130
192
247
284
192
139
213
150
252
139
188
225
201
190
157
161
246
217
144
166
146
217
221
208
137
195
207
219
228
211
197
157
237
181
228
205
224
210
195
151
207
170
227
146
235
187
163
270
175
223
195
122
201
203
154
246
180
254
225
161
190
256
234
175
194
174
226
142
187
185
171
202
105
168
184
211
225
132
238
172
168
164
205
177
195
177
193
239
234
193
260
166
197
229
202
214
190
223
226
262
169
200
189
182
187
197
181
261
245
201
198
231
235
142
191
219
212
161
163
219
196
177
238
153
180
162
217
204
183
183
180
142
189
180
194
256
233
249
147
150
228
149
235
269
220
193
238
216
216
185
185
215
180
226
140
160
223
224
141
177
247
219
227
244
209
217
124
193
223
191
216
215
192
253
204
183
206
215
258
225
160
235
189
177
192
237
179
257
216
255
224
190
153
223
234
213
183
234
172
208
175
258
297
201
213
189
191
238
243
207
190
213
211
241
269
172
175
239
213
217
231
160
183
232
188
148
228
154
163
163
220
182
146
155
186
189
219
241
184
164
201
149
256
161
179
261
248
155
180
210
176
187
182
223
163
224
250
202
175
197
124
182
188
241
247
244
203
211
210
234
217
193
102
193
227
203
242
213
147
183
265
234
213
164
204
161
210
135
162
170
101
226
193
187
207
216
153
132
194
211
237
214
191
227
207
197
239
219
231
237
247
207
185
217
149
161
293
215
248
268
162
193
210
239
201
207
134
228
160
154
207
269
217
162
221
164
215
169
247
225
264
204
206
178
148
200
197
200
236
199
216
139
199
223
204
153
235
194
211
164
218
200
228
161
207
181
280
152
190
238
214
171
216
168
187
215
172
219
282
210
207
261
247
159
217
204
150
171
231
201
180
148
189
204
170
224
229
237
229
226
194
248
230
148
218
180
238
167
218
181
194
225
197
218
129
228
243
251
190
172
178
214
196
156
155
185
203
226
226
177
200
200
270
254
173
176
206
198
224
186
199
147
155
157
160
179
198
222
184
251
170
181
236
175
196
181
229
195
171
237
216
183
233
202
190
224
202
201
203
121
193
221
203
180
179
201
138
150
234
176
277
135
167
217
187
260
248
165
177
184
150
203
193
196
200
226
209
140
221
192
258
163
238
218
150
269
200
212
204
203
250
176
175
259
178
174
218
161
220
163
229
223
180
209
195
262
191
204
171
211
272
243
209
240
228
232
173
235
240
190
146
212
188
245
196
221
246
195
153
184
270
171
235
186
155
227
193
121
243
228
245
185
166
222
174
98
195
172
290
217
225
211
124
190
160
190
153
163
240
187
159
151
170
244
233
214
225
175
223
177
245
167
201
225
134
182
276
277
135
233
224
214
178
204
231
218
222
175
239
214
184
227
219
188
185
203
147
211
204
176
234
167
180
223
190
223
215
260
260
149
233
191
263
192
169
181
191
143
182
203
242
193
167
170
157
200
223
240
238
217
224
202
226
171
221
262
211
212
208
229
160
179
185
131
190
252
256
190
194
232
181
147
176
178
213
221
197
201
149
133
163
212
243
182
139
197
167
283
231
219
207
234
169
262
248
233
168
219
184
169
186
136
240
229
242
217
159
211
179
211
212
195
202
200
254
152
231
232
207
224
247
164
229
218
184
216
221
172
204
197
232
216
147
130
208
218
143
224
231
239
201
128
195
198
164
136
206
231
185
177
204
194
186
195
218
223
227
217
209
210
223
159
219
197
199
195
163
203
234
217
222
178
158
235
176
199
234
124
205
169
200
148
219
243
164
149
218
203
235
213
151
120
209
197
203
161
213
130
216
158
192
164
222
189
249
197
212
213
196
171
208
174
210
189
254
164
214
282
201
208
222
245
195
205
153
204
211
191
217
203
229
185
236
172
196
142
160
272
218
215
231
184
249
220
186
261
164
187
226
193
199
240
243
187
144
188
235
129
259
261
217
201
193
189
237
232
166
202
207
245
144
196
208
235
172
181
137
193
173
205
222
202
160
202
190
199
233
181
184
187
230
213
190
203
237
202
114
231
210
200
201
192
186
188
198
241
231
195
153
205
226
200
160
140
167
199
177
212
242
172
176
192
223
200
207
198
213
188
155
138
134
230
211
247
165
208
211
179
214
217
196
260
171
215
247
190
204
171
213
173
244
212
188
191
149
194
196
137
213
178
189
235
179
208
181
213
230
234
222
139
238
201
234
207
120
237
181
199
206
201
229
247
223
256
213
214
246
213
220
246
180
200
199
194
235
163
186
278
192
257
206
217
155
166
217
216
187
233
229
252
207
234
153
228
243
196
222
160
170
142
172
198
270
180
241
223
253
263
238
185
208
230
178
140
212
172
191
136
256
190
249
183
227
209
272
145
183
261
245
265
222
163
228
215
251
166
159
158
254
206
197
189
243
118
230
210
237
251
224
172
288
184
185
256
154
202
171
181
262
197
195
226
221
183
256
212
194
199
147
213
200
178
164
243
197
172
233
146
143
253
248
222
191
174
143
186
181
204
177
208
207
258
167
185
164
180
206
201
219
247
244
207
194
211
244
161
234
200
166
175
140
245
222
153
232
211
242
143
219
231
210
202
165
255
187
137
268
226
158
190
206
179
225
222
200
209
200
222
217
277
252
233
151
179
247
239
174
202
199
202
171
212
245
189
217
220
224
165
184
255
174
165
225
263
179
162
190
264
232
206
170
170
240
226
235
264
194
190
215
200
185
214
240
199
192
178
223
166
207
188
189
206
200
148
205
229
215
212
188
193
217
213
241
238
128
253
198
190
228
172
214
177
207
257
243
228
242
203
215
156
199
278
180
246
186
266
189
225
254
224
206
171
209
188
201
155
171
151
205
185
230
183
173
165
188
280
157
254
166
142
170
135
188
194
163
167
260
194
166
165
208
194
111
218
237
191
163
211
230
205
235
163
186
197
182
188
242
255
210
215
121
217
207
208
233
189
165
144
215
213
211
177
218
198
156
250
218
193
161
180
181
196
198
201
193
219
246
131
130
209
181
160
229
170
163
187
242
203
207
156
216
142
162
222
168
141
181
124
162
170
220
154
172
188
162
207
263
247
207
160
173
257
225
210
177
230
193
264
260
186
241
225
213
190
221
277
262
192
246
170
226
200
206
201
192
181
230
195
178
147
210
254
185
121
182
162
205
219
177
207
246
219
221
209
162
132
242
207
175
224
284
157
192
147
172
190
204
167
273
256
159
216
209
192
203
169
208
216
247
251
182
281
200
191
176
196
230
237
165
216
225
178
205
205
164
184
245
144
243
186
195
149
168
211
210
181
258
306
157
159
155
123
201
157
208
189
202
201
233
156
256
178
244
183
179
204
187
236
125
162
193
232
217
127
141
218
200
224
173
216
200
200
200
148
223
159
242
218
185
146
246
174
201
222
218
219
183
234
229
229
173
232
157
213
189
199
265
199
165
188
146
230
221
157
228
84
201
273
185
201
217
217
262
221
239
191
251
189
241
198
261
180
160
238
168
208
196
192
229
194
65
264
213
220
197
203
207
149
178
162
195
246
193
193
149
211
208
180
223
161
221
176
197
181
268
158
178
187
220
179
188
200
198
232
140
128
210
212
176
232
165
220
204
222
222
230
134
227
203
213
211
178
228
189
124
266
148
207
196
248
190
190
183
193
218
221
213
266
222
183
247
211
230
256
212
158
112
213
248
198
245
182
219
189
156
177
234
156
144
261
202
209
258
198
187
218
241
245
213
201
215
216
217
193
147
189
193
179
166
236
197
146
260
208
211
176
209
152
152
215
229
220
183
192
236
209
166
208
176
228
217
263
162
192
196
212
179
187
223
208
198
163
209
200
196
108
174
167
156
214
195
266
195
229
215
237
188
139
223
217
182
224
216
164
226
177
226
118
220
204
195
186
220
185
188
126
204
220
126
230
215
258
214
211
167
205
141
259
216
189
174
222
203
216
168
192
150
189
204
275
132
199
162
200
159
216
232
185
199
203
214
212
207
199
194
272
203
253
179
184
158
153
239
149
222
225
232
201
234
188
179
185
202
141
179
176
201
212
202
202
155
210
172
193
220
224
181
185
214
227
193
190
231
198
147
203
186
241
192
235
220
198
145
158
225
202
169
136
158
240
226
199
211
220
221
188
221
255
208
167
194
228
235
199
176
224
196
172
184
211
174
125
303
178
208
186
191
226
197
152
190
186
236
220
173
179
151
197
210
233
220
142
181
152
183
209
144
190
134
214
243
161
196
137
138
197
244
188
177
220
253
129
194
202
181
229
191
193
185
188
131
235
256
215
222
203
219
154
299
168
210
238
168
249
216
243
208
224
212
188
245
229
228
159
155
192
245
181
242
218
158
257
182
236
223
118
136
143
185
132
243
150
220
164
187
186
214
180
110
197
197
126
215
204
244
217
277
252
161
248
169
174
201
211
160
236
218
244
242
249
230
225
201
232
230
233
208
208
173
219
163
175
209
243
199
124
223
143
151
232
177
226
224
233
180
223
207
196
200
159
185
272
152
192
198
242
180
241
166
212
171
221
182
186
163
200
149
230
107
208
186
265
193
231
241
192
233
209
204
279
177
191
200
215
212
207
232
203
195
196
244
189
262
179
214
253
194
208
219
217
234
200
186
199
189
150
164
272
212
240
193
227
193
218
196
253
269
180
171
217
150
196
190
199
250
188
127
194
177
242
198
230
217
101
203
201
167
251
155
225
254
256
217
195
144
200
194
184
216
154
176
173
194
173
190
196
256
200
205
135
176
224
185
200
165
238
200
177
233
275
178
216
207
242
133
201
186
201
264
175
174
172
212
228
201
254
241
212
216
210
234
222
175
167
215
256
193
170
230
261
189
180
193
200
162
287
176
186
153
211
223
221
224
169
136
219
254
175
178
198
253
197
227
228
250
228
201
194
193
224
198
230
204
162
198
218
249
200
192
191
148
207
150
179
259
187
267
167
160
204
193
190
231
135
167
151
235
179
165
207
197
223
208
237
218
123
193
196
150
215
227
172
237
154
182
204
193
230
185
202
219
172
183
250
133
189
253
207
199
200
189
212
219
216
207
211
158
220
227
186
189
166
167
245
190
204
173
236
186
178
264
240
186
228
225
231
193
185
240
166
210
242
241
255
157
181
224
243
209
160
248
199
188
190
199
229
183
184
201
136
222
154
189
194
197
198
232
242
185
257
126
203
177
191
156
169
225
246
178
236
218
135
182
217
216
205
253
220
199
194
237
252
167
188
124
198
216
135
212
206
146
226
247
149
157
229
237
186
141
201
203
221
219
216
183
247
241
191
198
275
201
252
182
206
269
203
244
219
234
184
204
176
166
226
211
192
268
211
248
223
185
155
233
170
163
128
193
250
270
239
206
210
194
231
248
150
171
187
223
214
218
203
189
140
152
213
218
189
242
251
157
196
212
185
179
221
207
182
242
230
266
242
261
180
283
196
172
198
219
184
219
158
168
215
174
183
277
216
140
165
241
195
177
199
206
229
135
208
169
188
238
202
213
249
196
165
168
218
185
236
191
224
286
167
178
156
159
185
190
189
217
216
213
212
133
256
122
226
262
190
219
205
181
160
229
177
235
196
230
197
186
164
224
243
127
220
221
226
212
224
223
205
246
209
137
215
243
233
256
289
174
243
259
257
187
202
239
173
230
190
196
145
194
189
263
192
195
165
170
118
196
171
190
168
211
205
198
131
209
103
211
222
233
161
219
188
211
196
233
239
243
187
214
148
225
129
205
232
161
153
178
152
176
194
196
174
242
207
201
247
239
198
210
181
152
229
194
197
211
197
209
217
195
267
251
315
219
227
204
198
170
219
222
178
184
202
167
210
220
251
191
156
205
224
201
118
233
243
232
215
189
191
202
182
206
247
148
228
207
166
183
162
137
143
182
201
173
161
162
237
203
141
226
179
196
178
201
180
218
180
246
184
205
182
192
218
155
221
185
246
283
191
195
194
192
264
130
169
195
199
219
139
213
228
190
250
277
162
195
245
173
172
204
159
206
212
203
222
170
185
189
197
146
222
155
178
220
181
187
163
195
167
226
264
225
174
163
200
208
232
225
114
204
226
209
212
198
121
199
134
181
213
254
161
179
195
173
168
195
203
200
252
236
198
261
219
186
156
175
148
163
219
182
169
230
216
149
244
214
197
225
233
214
232
230
221
241
227
264
186
208
208
198
185
194
220
202
150
175
212
140
206
149
158
191
171
151
188
267
195
176
299
165
231
239
240
193
221
176
147
213
216
199
172
178
162
173
187
255
177
183
180
218
193
161
137
209
183
216
211
284
147
195
167
142
195
194
173
242
170
200
216
228
218
249
181
193
198
150
225
186
139
240
262
228
176
215
185
186
215
234
193
233
173
221
204
186
160
261
198
171
223
262
172
168
217
207
205
171
234
242
180
186
177
237
165
286
151
211
158
217
177
220
176
201
260
213
139
186
170
234
212
138
178
234
229
161
210
215
198
156
257
227
197
232
221
179
212
242
175
206
243
200
212
213
117
110
163
261
175
225
144
174
250
183
260
191
187
163
235
212
202
226
167
197
186
219
164
224
179
182
167
173
257
146
201
216
124
233
160
221
198
218
231
191
176
239
238
141
164
222
187
261
250
107
246
190
189
181
208
226
223
178
188
179
197
183
169
242
242
220
184
226
195
244
174
174
238
148
247
187
229
206
163
236
226
184
205
194
198
188
237
185
239
160
168
272
127
163
216
257
192
211
230
182
136
168
178
193
197
232
230
254
195
232
159
159
152
186
227
194
184
211
156
213
211
172
212
180
172
206
192
200
178
238
149
156
183
223
232
238
167
193
187
185
230
187
123
111
239
224
199
260
236
195
189
178
222
179
243
231
222
192
152
214
249
165
195
221
158
208
213
174
233
234
169
263
201
255
191
258
230
165
181
220
230
212
171
232
208
230
120
274
219
228
183
114
224
145
126
226
199
180
194
216
223
195
243
111
205
169
180
221
249
169
137
213
207
219
205
227
248
208
216
182
213
205
195
190
151
234
168
189
221
195
207
104
247
136
256
162
191
152
203
195
179
217
237
224
284
213
252
204
245
265
243
174
186
203
215
227
189
172
167
148
175
193
187
162
163
186
199
171
224
197
179
256
122
201
233
159
194
197
209
218
205
164
163
199
188
146
141
187
202
251
173
190
228
193
285
195
142
237
236
140
240
224
234
209
161
222
229
200
196
214
211
141
210
165
214
178
163
187
226
173
182
228
163
210
146
216
186
173
189
164
226
155
174
257
185
216
183
134
231
187
150
180
179
207
159
260
235
223
233
243
161
217
193
210
191
146
234
250
215
182
151
263
213
239
195
213
222
242
278
244
180
208
232
223
149
252
195
220
156
205
221
135
221
179
231
197
147
188
209
222
197
139
269
170
278
213
230
201
204
220
177
178
205
202
242
200
226
227
185
267
176
172
211
205
231
191
175
192
184
115
202
203
177
243
219
169
194
227
193
235
175
220
194
210
201
210
174
243
128
205
218
216
168
220
184
187
180
207
189
239
240
219
211
156
266
139
217
201
210
208
216
238
262
119
218
223
178
141
183
225
205
208
163
195
223
269
185
160
203
221
181
213
187
202
203
151
263
236
221
158
170
155
204
252
216
164
230
214
147
209
169
231
223
236
204
233
197
134
195
161
254
227
170
222
150
224
171
196
179
167
218
211
197
210
217
164
156
184
244
206
132
206
181
142
199
176
218
177
209
252
200
203
173
134
212
213
172
246
216
140
122
202
236
200
223
191
209
216
203
143
205
175
182
211
213
166
232
183
222
221
162
205
216
172
191
191
246
270
168
168
229
229
208
254
273
212
200
146
223
211
208
188
220
250
188
201
189
165
208
205
162
216
174
230
164
177
213
279
246
199
229
209
226
208
212
243
186
205
181
191
198
229
160
165
222
211
176
191
173
183
194
200
129
175
216
205
220
167
185
183
177
154
163
160
232
194
127
184
199
230
197
175
134
220
258
214
193
131
235
204
151
259
198
196
177
132
172
181
207
232
161
243
177
211
199
200
156
173
178
155
147
180
182
193
219
246
178
166
243
257
226
152
242
262
217
128
220
221
210
245
192
226
173
247
167
171
185
203
185
221
178
211
135
170
184
136
202
140
193
220
269
185
128
176
173
168
166
203
208
232
142
168
246
158
255
174
188
255
204
259
202
189
161
240
220
183
192
188
211
229
242
211
213
176
149
212
217
216
217
176
176
181
256
232
216
142
256
228
192
207
248
176
209
201
148
213
175
147
253
205
198
248
174
180
221
240
210
181
161
279
226
231
243
210
186
268
185
237
179
200
136
191
219
166
190
214
196
260
78
184
209
246
222
224
181
219
179
236
167
189
192
225
212
197
186
175
206
157
105
236
141
190
198
144
174
221
213
177
244
184
163
148
218
207
185
203
169
236
218
209
200
197
239
137
179
195
170
177
189
197
176
224
208
156
153
229
175
244
152
194
226
232
198
173
149
168
266
212
249
175
175
209
164
249
216
193
183
186
173
191
171
222
242
178
229
195
175
211
130
116
190
197
233
154
193
213
191
223
144
226
229
213
221
198
197
222
165
122
235
203
210
248
223
140
215
219
227
218
155
255
214
263
187
171
190
209
177
173
178
266
217
202
179
212
193
193
160
236
170
260
163
185
188
144
198
188
239
225
134
230
152
217
176
187
165
268
265
160
169
201
273
174
133
188
180
224
232
194
189
226
183
209
169
167
165
187
220
174
138
165
263
181
204
181
162
169
196
176
210
211
150
237
245
217
250
175
190
183
169
162
112
148
166
236
204
256
227
192
222
205
218
255
167
218
228
213
194
235
195
168
207
260
229
190
160
227
227
244
227
178
164
198
222
223
163
199
183
251
257
207
211
159
203
250
228
193
188
243
208
195
228
195
203
140
269
187
185
206
211
225
249
262
194
223
147
212
173
180
193
204
241
234
228
241
179
172
241
234
177
213
181
236
210
239
211
215
259
209
256
164
185
156
136
190
224
162
183
104
164
202
222
208
139
189
151
224
164
201
195
209
152
212
123
253
218
169
216
205
242
149
169
215
104
235
232
189
223
231
186
231
194
196
130
247
203
177
228
148
208
226
148
224
194
206
191
199
216
191
173
146
207
189
160
213
232
138
206
212
162
237
153
239
209
218
182
198
168
221
211
221
216
201
223
163
190
222
178
256
251
197
198
193
150
189
215
243
156
226
211
198
206
205
117
185
211
203
238
177
160
242
218
132
178
176
215
222
212
118
161
200
217
228
252
187
238
202
181
260
203
195
230
143
129
131
218
226
189
225
156
205
167
214
205
193
181
228
216
206
209
256
231
203
255
180
272
194
192
187
141
227
199
193
205
182
180
191
201
196
188
201
184
238
173
176
230
192
172
235
244
151
229
214
203
193
156
226
231
244
236
212
174
191
167
144
149
221
176
210
221
194
134
154
201
190
262
161
176
153
197
197
215
254
224
202
217
233
219
230
132
161
236
188
220
271
194
152
213
223
213
170
154
172
179
208
217
196
202
177
173
242
201
225
207
189
189
247
182
243
178
221
188
194
259
255
142
120
280
193
231
187
132
172
161
159
212
179
199
231
206
195
170
202
175
249
204
151
188
204
251
204
281
196
255
257
175
240
264
246
153
262
112
200
191
195
175
237
175
224
259
199
233
193
212
245
219
218
226
185
213
221
224
193
140
152
193
160
214
210
258
193
196
193
218
155
151
162
209
162
159
252
232
191
216
228
232
152
168
231
196
206
173
155
223
237
146
245
213
250
263
178
187
202
186
183
263
191
195
210
246
158
257
232
222
241
189
239
189
226
235
229
172
148
237
168
152
219
158
210
213
179
213
196
176
196
148
177
194
202
132
137
171
195
213
199
160
218
278
241
248
184
186
156
212
235
156
180
192
227
262
160
245
195
244
150
240
195
236
146
230
209
242
185
222
270
207
213
235
223
181
211
212
196
176
219
227
204
194
235
203
207
211
205
214
228
219
205
170
194
176
216
176
175
219
183
165
190
208
183
223
235
188
191
195
162
166
194
233
202
158
227
184
174
172
233
219
210
165
190
267
134
137
212
185
195
164
184
173
170
216
180
243
245
210
224
239
181
256
198
206
193
209
221
214
136
259
179
180
226
213
202
148
125
177
129
162
218
188
119
231
199
211
176
188
173
209
221
176
178
185
157
177
168
193
164
135
233
163
208
237
120
259
173
154
223
205
158
263
215
240
166
183
202
211
200
173
247
188
192
193
202
223
176
259
216
132
186
188
219
218
160
211
190
165
203
184
186
217
190
206
209
232
213
174
233
235
151
187
230
205
216
212
81
187
216
223
176
227
222
214
229
224
155
151
188
190
210
144
192
178
230
236
215
164
196
149
203
195
186
193
216
236
244
164
169
230
187
228
199
175
244
175
212
233
194
186
220
200
97
144
203
230
178
159
185
183
172
178
191
198
165
191
145
190
276
208
222
232
173
233
173
228
235
201
212
199
123
206
206
253
196
201
194
172
196
230
185
197
245
212
206
132
185
220
247
256
283
170
125
175
213
192
236
209
217
232
192
232
172
187
202
193
130
241
153
186
185
124
185
204
172
201
205
219
244
130
213
198
247
218
190
209
211
146
145
219
255
167
273
229
158
218
206
216
272
159
193
151
173
155
218
176
228
189
190
191
136
191
204
262
213
230
203
215
202
209
258
152
225
214
197
220
215
149
233
222
188
156
173
127
253
203
211
197
188
139
215
136
157
270
149
191
134
214
146
212
246
230
169
215
178
191
211
197
206
208
209
135
251
185
177
177
135
185
164
212
174
195
185
247
178
183
228
285
219
192
222
210
242
189
201
186
156
241
177
248
180
263
238
204
227
185
222
147
206
233
223
158
236
228
242
210
219
231
205
238
201
215
169
195
161
240
227
181
192
235
147
208
269
210
162
188
192
214
213
196
191
193
222
250
267
207
170
252
214
180
189
165
262
152
245
215
202
209
172
245
169
242
172
179
229
224
294
245
200
222
204
172
259
244
150
219
219
160
182
244
226
176
227
140
202
144
148
209
163
252
207
192
136
183
172
239
168
202
254
220
203
186
198
148
182
224
197
159
190
118
166
210
193
191
202
208
182
214
210
219
193
181
153
186
210
157
219
225
211
198
231
201
202
278
187
141
231
184
232
214
201
227
215
256
232
178
222
212
131
140
252
215
253
173
157
236
174
214
193
170
201
184
230
227
156
198
216
184
140
213
182
251
206
208
210
240
153
213
219
234
257
247
177
221
203
179
196
193
177
203
129
179
165
183
225
239
191
237
205
205
158
137
165
211
214
166
205
141
211
221
124
145
209
232
166
272
275
145
183
232
251
173
258
222
226
239
248
232
232
182
161
185
261
261
196
258
215
230
217
172
173
212
194
198
209
214
189
222
190
195
221
225
156
190
205
192
233
237
192
243
250
173
227
215
221
211
249
178
245
232
204
173
161
250
180
207
218
199
263
206
177
126
249
199
209
202
268
224
244
151
214
162
196
249
199
162
190
236
254
256
178
214
144
228
245
197
213
192
196
230
276
251
187
185
161
175
193
201
282
207
201
227
187
259
161
204
222
189
193
236
183
296
188
237
134
222
214
183
165
225
198
200
141
214
172
164
223
243
179
235
199
160
171
185
248
177
203
238
222
173
242
240
163
142
237
189
180
250
183
180
193
213
189
177
155
196
155
177
179
197
188
219
205
224
184
115
181
221
176
199
172
212
207
240
230
243
238
189
201
197
197
211
163
164
217
260
247
244
192
228
190
166
165
110
247
193
237
148
226
196
192
191
197
233
183
236
221
226
214
272
260
169
166
182
197
267
227
226
153
238
236
192
175
187
200
252
237
217
155
155
176
212
239
208
252
176
221
264
238
251
229
159
267
252
194
209
219
192
259
245
242
178
228
203
153
217
163
234
249
171
201
134
255
174
186
198
261
219
244
224
208
203
175
200
217
217
210
212
248
210
196
132
254
156
181
233
187
157
221
182
230
251
143
204
232
182
235
239
263
236
200
181
209
195
198
182
131
186
210
241
157
150
206
226
199
196
234
172
230
274
183
187
239
173
221
236
213
208
211
263
167
223
179
149
189
145
222
218
209
188
223
166
195
210
236
193
173
155
207
246
171
223
206
209
179
252
218
220
223
196
233
233
213
195
224
220
195
190
195
162
231
118
214
243
217
257
199
197
209
188
170
198
235
228
257
211
122
253
179
220
163
191
180
145
204
202
185
240
222
194
224
195
213
248
225
254
180
154
249
244
204
220
183
243
164
216
173
222
190
155
251
177
231
234
188
215
199
155
204
187
167
201
230
172
136
171
237
223
196
267
137
140
158
217
229
213
154
232
211
195
181
171
189
209
169
105
160
144
229
245
197
203
206
197
170
192
199
207
192
201
197
144
225
148
232
187
159
228
237
200
147
229
198
177
216
153
200
219
157
196
222
183
150
221
267
241
232
255
223
246
205
246
229
285
201
225
221
180
216
237
234
185
193
156
177
230
239
266
163
171
211
238
236
244
241
155
231
163
218
206
229
216
180
205
219
189
236
230
183
153
185
243
170
229
158
209
138
96
221
183
159
192
128
246
277
181
241
225
169
247
185
207
141
183
242
243
217
241
225
165
196
209
248
161
225
204
205
201
160
139
233
196
199
206
183
174
199
181
260
216
205
198
212
186
212
212
222
170
202
248
240
211
214
187
232
216
210
245
151
156
164
186
213
220
188
178
199
165
239
209
176
214
167
175
204
158
221
209
229
171
129
188
116
214
239
201
106
172
129
222
232
186
169
189
222
233
245
202
180
204
234
232
216
205
112
178
160
194
232
185
227
159
205
230
271
237
242
157
247
226
182
208
195
234
178
167
230
194
184
207
194
127
237
202
169
182
236
170
195
182
197
246
250
156
208
244
221
174
200
168
241
161
195
149
153
203
209
238
244
241
170
158
246
186
209
230
153
165
169
217
224
247
243
217
178
216
166
201
185
221
244
217
146
239
238
204
148
157
208
242
266
214
221
201
311
162
194
149
173
207
237
193
178
190
263
237
237
240
160
184
194
192
143
208
246
238
228
238
162
243
173
207
224
179
172
203
253
217
199
164
230
187
160
150
171
231
161
198
258
186
203
147
242
183
159
183
226
191
210
184
175
204
256
181
153
265
220
206
217
172
241
197
164
221
246
269
175
253
222
178
200
194
153
218
236
172
195
201
212
188
233
187
255
200
201
216
208
244
190
208
212
275
196
153
197
247
153
205
161
179
218
176
190
203
216
208
227
209
193
196
167
193
205
135
227
222
179
231
193
204
204
201
233
233
150
168
196
156
167
187
232
215
274
244
171
248
196
199
220
140
257
225
234
200
199
256
209
172
177
203
170
243
179
193
233
246
187
228
168
228
188
196
204
237
214
211
226
201
193
229
162
208
211
180
185
263
258
197
150
213
175
179
226
198
290
166
207
167
216
256
144
193
219
274
145
132
223
172
221
198
193
140
169
180
279
151
186
225
188
218
210
222
197
215
142
180
213
177
176
216
174
185
194
206
166
238
164
194
224
200
156
235
222
181
156
213
171
128
215
206
215
208
167
193
239
257
188
219
174
190
261
230
155
194
162
236
177
183
225
154
182
173
151
147
230
215
179
233
202
186
211
92
238
145
196
219
169
221
233
264
215
169
158
188
217
171
237
226
240
232
217
200
226
193
202
221
168
198
187
196
188
201
207
176
191
183
157
169
234
180
231
200
232
125
248
162
201
213
207
163
236
214
197
218
221
292
215
148
168
216
216
188
195
195
244
231
237
191
229
172
198
235
180
203
196
214
207
200
245
203
171
142
149
183
219
188
276
242
159
201
181
185
199
201
228
212
176
227
182
186
226
220
135
199
220
174
204
190
116
199
202
211
218
149
184
150
230
252
211
228
191
149
179
106
210
237
264
236
212
237
212
225
222
229
150
214
199
206
260
166
144
201
206
136
268
225
209
150
228
175
225
137
221
161
225
157
255
187
183
257
146
240
203
184
173
241
273
236
223
169
133
168
201
153
226
128
220
198
192
190
146
238
217
220
244
211
207
258
209
214
198
172
220
150
173
163
191
189
192
164
174
209
208
181
230
164
211
180
152
228
201
141
218
161
204
182
169
223
156
189
227
232
173
169
214
207
212
174
176
171
232
152
192
180
208
138
183
216
176
224
247
169
183
192
184
209
198
178
230
202
147
181
167
226
175
184
228
241
195
252
216
183
273
178
182
209
165
237
203
184
186
198
260
231
251
167
221
209
232
183
203
198
208
139
214
185
184
254
239
236
200
234
175
223
219
188
199
202
260
174
201
189
144
184
257
177
237
202
167
175
258
210
214
197
154
279
217
151
242
218
161
207
231
150
235
229
271
184
209
167
219
205
261
214
183
211
208
140
150
225
227
227
257
187
236
228
213
211
190
143
192
185
219
177
186
220
102
260
182
202
163
179
240
166
192
184
190
209
237
152
232
241
240
199
192
238
212
201
157
178
135
226
184
209
195
168
257
173
149
239
228
181
209
227
155
178
166
168
221
205
232
220
215
202
158
154
242
213
146
245
190
209
141
217
171
269
211
214
167
206
181
195
183
170
200
216
244
197
213
193
239
240
223
201
133
198
217
147
157
215
192
186
207
150
231
203
155
218
127
194
206
184
201
197
257
242
187
150
250
184
145
179
221
192
271
189
155
179
225
213
206
228
184
211
133
142
229
181
227
177
145
235
213
221
224
184
189
201
157
154
174
199
193
190
91
234
202
238
238
229
199
218
194
203
237
191
172
180
214
198
201
241
165
191
196
129
194
164
219
196
191
133
226
200
187
182
284
174
243
143
227
157
189
187
257
245
170
187
193
231
188
252
249
206
192
125
188
236
207
246
195
219
194
251
238
175
266
164
186
221
205
248
184
236
187
182
241
224
159
127
210
206
226
186
220
203
177
194
199
212
193
229
176
175
204
192
118
177
190
193
212
185
204
172
171
176
147
184
183
180
214
219
180
205
201
234
209
224
223
211
275
235
221
201
157
186
210
236
200
250
189
195
145
192
222
226
227
211
216
201
243
224
259
174
192
249
259
151
222
206
174
227
186
148
157
206
227
197
258
209
184
214
257
151
198
220
200
217
159
239
257
247
242
200
246
206
162
202
186
214
210
140
188
109
122
190
212
97
155
211
266
232
218
204
225
257
144
212
219
199
249
234
235
211
168
225
192
151
203
226
242
199
234
230
189
177
216
191
201
186
149
197
219
221
156
156
197
262
236
191
155
146
193
158
177
223
210
243
171
148
245
170
220
219
213
225
225
226
254
237
182
155
175
165
126
181
146
165
221
213
166
199
189
200
302
204
160
173
175
215
180
170
139
189
261
201
211
206
237
142
182
244
203
189
196
246
229
194
182
206
224
165
178
257
245
154
234
175
162
212
206
157
233
233
236
192
218
184
225
162
222
208
191
240
154
161
212
217
202
206
234
212
214
161
220
187
168
190
195
192
179
250
178
183
229
184
276
190
220
154
262
237
223
190
237
215
185
270
172
163
202
218
204
169
227
250
198
259
177
274
167
234
194
218
268
230
179
178
195
211
244
158
179
240
179
190
168
201
233
177
204
191
186
151
254
190
224
175
209
207
263
238
219
168
237
177
218
189
209
254
180
177
245
240
212
238
183
185
241
232
211
155
204
234
149
174
241
167
212
164
204
213
151
205
190
205
150
187
211
224
188
237
225
121
209
229
211
220
226
253
224
185
217
160
170
181
284
165
180
218
179
202
213
219
179
194
236
178
236
176
188
197
256
187
191
238
169
289
225
167
254
213
180
207
230
215
188
192
206
228
158
195
225
199
146
228
218
162
186
194
187
190
177
181
196
243
122
225
209
237
199
210
198
170
205
296
212
195
161
222
123
206
174
175
219
265
180
206
173
240
264
175
211
154
228
232
215
276
220
234
217
174
200
233
201
233
185
183
164
234
175
202
208
258
236
161
205
179
189
197
149
247
186
252
183
165
270
212
178
229
224
142
186
159
196
175
153
196
133
176
198
245
246
243
262
215
201
225
242
128
202
175
179
213
195
187
198
216
201
177
199
178
235
204
164
149
150
210
197
185
186
215
188
263
240
257
246
222
209
218
133
209
186
227
204
199
215
201
204
159
214
203
223
147
187
225
224
224
174
215
218
159
205
166
140
172
214
199
159
200
233
211
174
202
183
230
150
172
233
243
200
152
244
124
219
204
103
213
147
138
160
211
216
224
236
215
225
175
180
224
165
199
192
213
160
148
204
240
159
184
222
174
248
232
195
220
244
209
156
228
126
209
206
203
302
267
186
193
173
231
214
222
183
272
230
187
166
135
176
218
183
210
258
237
244
160
177
178
224
210
191
219
169
198
161
160
205
223
240
183
154
193
226
235
180
219
205
251
210
190
131
199
187
199
209
215
181
190
185
212
198
280
175
223
201
242
157
206
229
236
246
167
129
154
192
192
190
222
241
170
193
151
225
170
195
196
204
241
269
227
209
213
138
179
191
219
221
178
196
154
182
166
212
162
170
188
168
223
247
246
198
159
235
155
158
209
231
209
243
173
225
206
214
266
178
192
263
247
176
177
238
187
159
146
227
173
238
208
153
213
167
134
188
164
216
160
232
283
209
195
140
204
226
221
208
138
212
161
107
220
232
207
210
281
178
233
183
165
193
172
201
204
196
139
186
169
205
213
262
238
231
223
254
212
230
172
220
164
221
256
198
215
159
224
216
166
191
174
213
250
191
240
217
229
253
176
197
197
240
194
184
202
162
153
189
182
225
214
236
201
154
207
187
210
225
185
294
160
255
245
158
120
218
259
205
155
142
157
213
197
284
211
217
223
270
214
244
179
196
221
192
256
151
234
170
284
233
236
248
219
180
240
131
182
178
157
147
233
186
243
163
154
157
192
174
201
146
214
170
210
212
237
140
181
181
175
238
198
174
190
268
150
153
188
199
175
151
205
194
245
190
182
191
170
253
239
204
184
175
216
213
232
156
162
235
193
175
245
228
156
175
203
177
205
230
171
223
180
144
167
143
196
175
240
208
201
221
171
192
148
206
230
208
115
204
200
171
205
237
203
99
212
216
195
165
190
225
221
189
189
263
118
194
196
164
228
194
200
191
198
283
215
215
296
171
222
216
170
197
173
186
178
168
182
272
196
192
226
150
262
193
250
281
215
166
230
253
130
212
147
144
190
219
167
189
154
206
174
172
167
125
205
203
209
202
123
231
208
193
207
176
205
227
174
177
203
191
185
210
200
205
209
204
216
148
214
119
219
240
159
169
201
260
240
122
218
221
196
205
156
250
192
202
218
225
165
201
216
223
171
205
202
157
241
167
99
228
230
197
180
190
249
250
161
206
215
233
203
191
207
132
231
263
239
198
241
229
242
206
228
258
233
221
224
227
214
228
200
166
273
222
194
184
225
192
197
179
185
193
207
243
202
149
172
148
272
197
214
219
200
188
160
204
160
230
171
217
192
193
210
255
210
200
183
188
239
192
175
193
160
187
193
196
207
182
206
179
202
220
233
182
240
244
230
172
204
167
210
225
223
230
198
184
115
221
152
196
173
164
219
254
142
218
181
243
192
199
217
211
221
176
201
207
191
174
255
218
239
190
174
193
276
182
262
190
249
218
133
174
227
186
217
215
233
232
158
237
204
142
222
145
212
214
203
152
191
222
189
211
211
201
119
131
172
134
204
201
202
208
181
231
219
218
154
219
216
221
180
117
192
207
176
161
217
212
178
200
200
203
201
151
167
101
202
216
148
206
196
234
226
230
220
202
172
216
198
194
182
286
209
247
222
204
222
166
188
207
257
193
277
219
204
159
242
255
209
132
223
195
142
206
255
221
229
173
239
199
285
234
181
230
216
269
153
132
274
200
157
142
167
197
178
217
241
243
251
182
183
208
246
163
241
167
215
184
197
192
211
233
176
300
183
169
263
216
166
174
200
250
216
140
232
184
260
203
153
190
198
225
213
220
217
182
240
154
172
206
170
216
217
171
240
208
209
236
171
266
163
155
177
174
222
208
175
226
211
213
151
252
219
189
155
172
270
212
280
193
240
154
158
232
199
173
205
188
145
210
246
182
187
225
234
212
173
211
204
170
233
245
185
149
144
223
197
193
205
221
255
167
188
227
193
202
122
181
233
199
167
180
190
211
231
216
199
167
176
206
184
247
147
208
186
210
225
155
246
195
218
193
189
211
147
187
138
218
122
129
176
210
124
180
196
211
207
116
239
155
198
196
158
200
171
160
229
179
211
167
217
183
198
236
204
112
206
214
210
141
215
224
203
186
188
197
203
165
223
233
220
214
203
204
174
193
226
192
236
173
188
150
187
209
223
230
182
177
236
131
238
251
249
253
205
211
227
163
196
203
212
121
227
214
193
127
143
182
202
261
178
151
151
252
208
196
124
154
139
188
227
280
207
152
220
222
176
166
173
153
275
188
200
238
199
185
197
149
197
229
189
177
201
240
251
220
186
180
151
194
250
220
169
149
170
175
192
207
177
179
232
230
210
183
237
236
177
175
189
207
238
193
243
170
194
166
208
190
157
185
195
295
217
192
209
237
189
179
294
222
218
94
158
169
223
164
199
208
183
171
145
167
184
195
171
158
204
207
198
195
251
217
149
181
159
189
219
203
150
233
181
185
195
213
138
147
177
222
242
236
157
253
117
166
154
213
209
193
187
137
195
215
132
179
182
221
167
209
205
222
218
155
222
179
173
196
189
225
144
198
252
222
206
231
176
202
227
222
184
183
222
200
239
164
176
230
250
179
164
158
165
259
164
157
178
204
189
198
179
155
218
217
239
219
192
255
200
211
205
141
185
155
223
224
183
245
239
188
188
237
177
182
226
243
246
172
204
259
207
249
247
163
187
210
204
218
224
173
192
213
183
225
230
227
214
222
243
189
238
201
273
274
233
232
231
213
220
228
213
200
179
169
146
242
229
225
209
220
212
207
184
169
185
164
229
162
183
162
214
233
229
181
230
216
178
170
196
191
201
192
171
217
143
215
201
149
228
179
207
175
185
166
163
265
192
236
228
166
272
185
193
180
206
251
225
169
187
144
193
238
255
180
196
225
237
157
195
190
150
236
241
212
214
236
188
240
180
172
187
168
129
168
215
197
185
193
180
212
125
257
208
150
216
232
241
250
163
169
131
121
150
140
190
216
196
126
123
242
220
137
168
155
163
262
219
259
200
146
206
162
262
199
182
212
208
164
209
204
241
228
223
236
265
196
257
202
168
225
237
212
226
185
206
219
113
215
195
237
160
185
151
226
227
240
233
169
179
259
153
203
302
194
140
149
170
215
252
155
107
171
203
216
205
254
180
231
171
166
243
190
127
192
214
222
221
160
231
215
135
200
181
191
199
267
214
118
234
189
185
239
245
227
160
176
235
167
225
243
215
209
235
221
220
182
188
251
180
258
181
162
181
185
226
168
215
254
229
196
225
152
160
212
228
211
186
240
207
128
193
208
206
241
210
204
215
200
163
208
174
239
229
225
212
207
207
236
225
187
229
175
234
221
181
221
250
140
228
203
207
159
246
145
159
256
184
212
214
201
187
163
146
236
210
229
193
255
228
196
211
216
207
205
212
182
256
246
259
249
172
189
179
195
166
220
229
283
188
244
153
211
163
101
226
177
179
168
172
178
250
162
245
165
212
235
167
207
152
199
192
174
243
187
225
216
182
227
255
151
181
198
120
177
268
241
208
263
164
205
234
189
220
167
265
240
242
239
148
209
195
217
265
215
222
132
187
211
186
132
157
184
169
181
192
183
249
189
188
150
237
226
159
188
201
169
148
199
208
192
236
154
212
221
190
218
261
234
249
218
222
220
228
168
231
225
192
248
195
176
231
97
251
194
208
208
173
223
262
159
176
223
269
201
181
158
206
166
208
133
226
230
168
205
229
217
283
231
186
245
146
227
227
222
276
89
241
190
183
228
229
212
176
213
251
222
226
185
218
210
236
192
219
188
185
233
202
250
248
197
191
239
232
200
230
184
178
215
188
272
168
208
188
213
158
180
181
170
193
168
157
207
164
208
213
199
186
220
214
241
181
189
176
192
223
209
204
113
153
218
191
159
185
180
224
141
171
232
160
213
194
175
203
257
256
169
237
136
177
200
172
154
273
176
217
198
220
202
205
185
222
172
194
233
217
169
181
188
208
224
188
218
176
157
202
246
213
156
162
255
195
215
205
173
186
244
175
213
241
192
133
222
220
219
199
146
156
245
193
267
208
212
199
224
194
143
232
238
183
165
160
208
223
195
192
179
173
237
184
184
180
166
196
230
250
151
211
152
145
232
227
172
221
234
173
274
192
195
194
143
232
209
217
155
127
204
168
257
148
204
216
251
233
153
174
149
173
133
169
248
222
292
223
209
215
252
152
248
261
194
231
236
192
231
218
201
138
193
167
178
194
205
179
172
193
224
203
143
197
181
197
222
187
239
210
180
153
177
219
189
235
241
190
179
185
211
142
129
243
171
207
131
236
231
201
192
188
217
178
251
266
135
197
196
221
94
210
214
181
219
173
183
271
138
201
208
190
265
222
237
217
166
232
220
98
259
178
204
264
167
183
128
210
144
233
257
153
227
244
194
226
232
191
168
248
293
177
213
233
185
266
200
197
205
246
179
160
148
214
211
227
211
202
215
182
173
241
130
129
161
150
277
149
295
199
190
195
173
182
187
178
179
190
150
195
189
192
202
191
171
198
201
215
266
207
176
239
162
193
254
224
229
224
280
220
167
210
157
206
206
140
238
197
221
196
177
202
215
182
130
204
207
237
158
156
170
136
175
229
210
219
223
221
209
208
229
193
188
180
205
198
209
229
227
251
182
284
279
177
212
148
191
207
234
204
174
200
266
209
249
239
156
176
241
157
225
181
253
196
231
205
173
173
205
155
232
175
168
230
199
172
184
197
166
129
242
202
189
236
219
187
216
197
240
240
207
243
217
254
235
203
229
241
124
171
165
191
148
210
275
201
213
238
230
203
196
171
203
171
144
174
191
180
264
206
225
179
218
140
196
168
124
249
249
232
235
209
131
149
197
172
203
199
197
205
207
187
213
179
201
167
134
200
170
240
190
267
249
155
187
237
194
165
176
123
203
243
162
254
164
186
178
190
236
247
205
177
170
193
218
240
216
198
206
227
261
193
208
139
196
147
208
265
140
213
169
193
223
225
222
205
227
161
199
199
227
225
145
176
173
209
179
201
186
191
236
232
215
202
194
207
188
213
218
152
274
189
215
216
234
188
205
257
250
170
190
164
223
218
111
189
200
194
242
185
167
176
163
270
149
155
229
214
182
169
263
188
146
202
253
208
258
231
208
212
203
223
255
243
216
228
166
154
217
233
208
141
227
220
165
221
107
151
204
165
170
164
158
233
217
255
162
209
237
178
194
220
161
259
190
200
190
224
234
234
214
181
226
189
117
204
214
230
241
254
166
129
225
228
133
234
144
201
244
202
235
168
229
212
171
173
174
247
225
239
217
205
154
129
159
228
164
169
217
186
206
204
171
204
192
211
251
158
223
181
196
212
200
178
172
207
192
175
171
268
273
191
205
231
178
186
191
129
180
235
206
213
196
220
233
223
197
166
183
211
180
185
230
248
165
178
214
245
209
155
172
201
179
208
229
189
195
220
207
215
191
210
182
176
213
209
214
162
170
226
209
156
198
180
205
236
208
193
210
240
212
175
223
222
115
185
176
249
181
256
202
227
172
246
211
182
224
195
140
254
173
267
212
165
178
187
255
197
206
207
196
210
182
207
218
237
244
209
238
206
240
240
198
207
215
208
204
231
238
172
202
208
224
214
175
217
243
220
194
191
147
141
216
154
174
211
234
211
212
241
135
216
118
164
161
198
222
217
198
234
249
253
189
246
192
193
226
233
210
226
165
206
180
193
233
185
194
202
252
148
194
202
196
258
223
183
240
203
215
225
212
236
137
188
195
242
243
257
224
236
143
241
190
203
172
245
198
201
231
232
221
210
251
217
209
146
208
223
255
189
153
151
225
145
308
253
247
209
194
247
167
210
200
191
170
237
236
205
183
178
227
289
191
163
215
180
184
180
157
221
213
187
281
193
223
201
235
249
229
182
174
217
210
217
243
216
246
214
260
233
216
279
276
225
206
148
198
232
230
215
184
210
207
165
252
186
217
245
212
172
218
139
172
183
190
215
184
193
232
205
184
192
175
238
200
183
227
192
129
223
167
141
214
224
186
258
230
194
189
172
221
148
225
231
178
220
214
236
206
236
217
214
214
266
232
212
236
236
202
171
235
232
197
267
269
210
227
236
203
171
210
178
235
214
208
181
246
176
241
206
259
193
257
224
256
240
164
163
183
177
179
192
151
143
226
199
213
254
268
162
176
221
205
227
168
228
222
187
187
206
217
155
182
217
180
194
224
234
189
195
263
174
193
265
213
212
172
180
210
209
255
155
216
164
172
171
212
230
184
232
199
171
226
272
166
260
166
177
257
180
164
250
207
284
200
124
222
168
250
211
186
199
191
193
150
169
145
228
255
234
204
232
110
230
189
227
145
228
200
200
246
251
196
188
172
203
212
183
232
184
153
196
228
245
131
172
235
240
239
244
232
145
263
192
162
201
207
223
240
196
185
205
167
246
131
226
174
206
178
229
217
258
224
155
176
210
189
208
233
233
203
149
192
205
180
239
210
217
283
231
206
217
199
150
199
170
160
238
157
143
142
182
221
179
231
237
204
195
258
139
197
125
164
231
132
196
167
186
230
180
209
229
231
218
239
164
249
208
195
248
178
239
198
202
213
145
213
256
216
193
242
151
206
212
197
171
155
221
257
237
231
206
188
251
218
200
205
175
210
183
191
201
178
193
180
185
152
200
197
169
219
162
168
217
199
199
217
191
199
185
228
176
144
281
223
127
256
218
270
156
191
181
224
181
221
219
243
203
215
211
228
135
253
217
255
125
265
217
212
220
179
196
194
206
152
164
217
127
205
235
237
167
230
137
161
281
191
205
261
200
155
180
273
236
140
258
189
136
211
167
176
216
127
250
210
193
166
204
163
162
193
190
214
155
147
239
201
220
246
185
216
139
204
151
258
221
214
172
237
190
173
216
245
247
131
234
204
201
213
222
227
179
143
198
208
148
249
217
153
166
190
189
261
228
148
256
164
169
203
228
173
165
164
253
254
258
204
207
225
169
195
160
218
238
157
212
251
242
181
180
190
230
222
204
232
192
215
164
149
194
172
218
240
235
225
165
148
175
172
225
227
207
242
240
256
168
197
139
207
245
174
217
223
194
117
191
217
222
230
240
145
250
222
216
176
178
159
157
250
189
178
192
199
207
235
260
192
202
231
164
171
191
192
140
238
162
232
156
211
224
184
224
151
178
223
182
196
189
232
144
222
190
181
175
234
194
163
199
199
245
179
219
244
164
185
180
188
156
215
196
187
256
277
200
173
219
211
194
160
191
142
190
229
168
196
110
192
242
201
202
164
162
200
205
168
218
251
170
177
217
157
253
169
209
178
172
234
208
160
210
244
220
212
181
180
170
184
197
214
173
182
201
190
211
218
201
237
203
247
250
242
220
164
242
241
230
158
204
202
188
108
200
226
189
185
210
248
168
228
246
213
246
187
224
194
211
220
221
218
273
179
207
257
146
193
144
202
187
212
219
175
168
183
136
211
250
200
238
186
220
219
190
202
165
203
228
210
248
179
180
156
222
180
186
202
211
253
256
197
251
236
237
164
237
168
196
234
171
173
228
220
149
209
183
151
221
265
182
218
174
212
218
211
172
171
151
216
195
150
254
184
207
215
202
198
204
246
237
186
203
225
201
193
227
224
149
220
218
205
245
205
216
205
224
188
188
207
166
227
240
222
182
205
203
232
149
205
170
191
239
194
154
243
163
187
236
198
200
181
235
184
213
242
267
246
204
154
110
211
187
122
199
172
193
228
181
200
173
144
170
256
194
191
178
181
190
158
226
131
135
195
222
250
188
186
143
234
217
195
182
132
216
188
218
104
182
228
172
207
203
190
136
194
195
233
179
266
205
207
199
185
219
155
199
220
196
154
160
228
212
172
189
220
164
283
161
229
233
140
234
175
221
221
213
263
144
212
249
174
196
224
178
196
255
251
203
184
144
199
246
208
172
194
182
168
175
210
193
233
185
186
153
237
193
188
217
178
210
232
113
233
200
203
257
214
210
250
244
151
246
164
125
197
169
195
206
198
236
167
224
196
187
158
198
142
246
147
183
171
184
167
181
167
174
168
229
125
209
238
175
213
243
169
264
258
144
222
181
189
197
171
199
219
198
131
218
197
181
194
239
230
189
174
242
239
241
226
220
209
247
210
228
242
189
229
167
194
210
206
210
232
238
124
196
209
206
190
211
211
200
230
213
203
183
222
279
171
279
233
181
165
186
207
173
179
141
169
139
152
230
166
210
207
195
202
254
163
278
167
177
221
269
202
151
196
212
226
201
239
239
230
230
250
188
202
192
165
241
155
225
268
161
179
213
208
234
213
199
240
203
134
200
236
232
205
172
190
184
178
259
193
280
256
200
228
231
171
210
189
261
199
198
181
161
197
252
160
193
232
251
234
238
209
196
134
226
200
158
217
263
255
165
246
181
201
246
179
122
160
202
202
176
225
242
130
192
200
244
212
198
182
143
201
184
144
162
206
203
157
239
137
227
265
227
211
234
173
192
193
217
230
169
234
139
210
195
149
168
158
149
210
246
169
205
101
220
180
236
136
222
174
156
237
167
172
171
144
202
191
260
231
213
221
201
179
166
188
247
223
222
185
191
203
235
256
136
238
207
164
176
164
180
250
230
141
186
180
189
219
268
198
222
245
201
217
198
174
210
195
207
166
208
118
248
148
175
174
208
183
182
244
232
216
230
177
219
265
263
170
185
217
229
207
171
226
196
204
202
247
272
186
146
217
154
194
206
185
216
260
214
269
249
189
192
208
241
185
148
195
226
241
207
173
182
197
245
181
250
289
189
161
196
181
170
242
199
226
160
211
228
212
241
161
239
240
165
170
161
184
194
187
150
211
253
268
206
167
175
162
240
203
175
202
210
254
183
157
161
204
224
206
194
158
171
220
232
218
220
266
200
217
232
217
158
206
206
216
157
176
150
158
192
154
205
214
233
239
230
251
191
157
196
209
228
221
218
216
201
182
155
232
231
275
213
185
178
133
210
281
196
183
168
194
197
195
219
213
173
225
201
189
166
205
179
187
245
201
164
203
237
226
181
236
183
258
175
156
186
142
211
227
173
141
252
201
180
226
263
197
145
181
184
178
185
157
198
173
183
235
122
216
242
238
229
200
211
224
209
175
252
207
172
213
174
192
151
186
214
195
222
230
186
197
159
196
224
203
261
173
221
214
199
171
211
138
227
230
251
199
286
190
241
194
164
257
181
243
154
202
189
145
224
198
201
201
183
230
163
186
164
187
190
198
211
236
161
199
195
236
228
147
171
224
225
185
214
216
170
235
153
128
183
278
196
186
232
266
214
211
231
174
227
250
182
173
218
201
247
230
251
181
209
209
214
104
166
176
240
181
165
284
195
248
192
222
182
245
209
195
235
171
211
176
191
166
223
206
195
164
203
251
220
212
195
239
179
197
195
258
189
215
146
153
194
217
188
182
188
213
249
191
225
240
177
216
225
203
145
171
182
150
228
165
179
154
198
170
167
166
185
187
250
190
154
232
215
187
213
159
204
214
133
185
180
230
216
191
202
220
267
219
211
172
220
205
206
205
163
199
170
204
264
257
149
195
243
193
108
127
155
170
128
168
193
210
232
203
212
174
140
211
150
163
206
168
139
187
196
179
203
185
184
213
198
185
234
220
171
157
221
240
232
224
191
211
193
235
216
197
163
192
166
205
217
179
279
189
175
187
220
196
167
209
255
276
176
205
179
230
185
190
186
255
178
174
226
170
194
181
196
154
172
198
200
161
187
218
221
245
199
228
216
221
204
194
189
163
177
208
190
231
191
199
154
218
194
223
201
180
258
210
215
229
222
143
260
223
145
153
176
148
239
185
187
166
198
180
213
222
143
224
166
181
225
246
288
236
206
167
193
187
177
211
175
206
157
223
245
186
243
245
98
139
194
162
250
230
181
238
209
247
250
172
196
222
218
206
168
234
124
112
268
203
244
192
240
141
198
230
306
204
187
253
212
196
132
231
146
197
191
251
165
248
171
217
221
221
247
187
202
124
181
171
173
163
175
231
197
268
149
132
205
160
222
232
137
199
194
189
189
162
191
168
230
186
129
198
230
202
169
201
195
164
243
207
194
192
137
216
217
194
240
211
212
196
154
236
209
205
228
193
222
178
252
187
223
242
183
213
172
210
181
229
208
169
198
210
157
217
206
231
162
198
219
231
234
202
191
213
216
204
190
220
170
210
151
244
146
175
226
199
179
261
123
156
202
162
147
250
265
233
211
223
221
188
252
211
202
181
176
264
263
220
163
140
167
193
193
229
176
184
200
198
160
178
209
205
243
213
231
220
240
193
212
149
229
207
238
178
197
177
138
207
185
268
202
197
260
209
177
187
207
191
183
206
178
195
233
197
222
217
206
178
192
204
185
166
133
147
232
156
170
248
157
180
248
221
166
235
186
135
200
194
204
185
198
196
208
208
145
177
236
226
190
170
203
157
173
235
173
177
178
171
182
223
166
158
267
205
194
195
233
223
237
173
186
137
219
247
245
230
195
173
172
269
150
224
187
229
188
156
218
173
190
177
208
158
236
222
161
165
182
214
240
118
191
216
164
198
192
179
263
241
232
139
232
185
225
234
255
198
291
170
188
256
190
231
215
216
176
205
183
212
217
232
240
213
214
246
249
220
220
223
205
244
240
179
199
143
163
178
244
180
196
179
216
257
186
160
142
191
175
169
202
149
233
211
174
167
191
235
195
169
176
224
180
209
266
242
220
175
199
198
277
180
168
252
196
248
126
220
242
215
177
226
179
230
245
153
182
184
210
164
198
179
217
200
179
203
214
240
138
200
219
165
208
184
168
176
254
185
222
242
244
217
158
212
243
278
140
195
211
281
186
196
219
185
237
226
160
209
227
231
224
251
218
123
209
244
200
139
241
202
171
177
223
205
193
167
206
239
217
223
238
174
221
204
189
181
215
278
195
196
155
253
162
192
221
209
200
248
202
164
192
189
205
198
199
241
236
219
249
189
145
284
173
155
207
200
152
212
234
87
158
252
240
216
215
231
212
228
225
198
181
197
176
208
204
257
263
248
120
205
156
210
124
215
229
248
178
282
212
176
209
139
168
244
219
231
215
205
232
261
259
139
228
217
208
206
213
195
228
99
235
218
244
193
221
214
171
236
227
268
143
212
219
152
146
173
178
172
220
217
179
179
173
199
161
197
164
211
173
193
199
230
210
214
141
269
154
226
142
191
219
202
205
166
236
191
158
192
134
229
152
160
202
208
208
262
185
192
204
205
198
232
172
172
187
148
227
134
253
223
179
251
167
234
203
244
260
205
241
163
214
212
169
216
197
213
242
201
223
210
210
163
192
188
245
211
216
218
180
173
181
279
165
230
219
214
223
215
231
176
211
233
198
159
191
161
195
125
155
169
222
223
183
202
134
218
169
192
250
137
234
180
175
186
222
132
263
187
208
141
239
210
255
179
148
211
157
204
237
174
176
212
213
223
217
237
173
243
226
186
163
162
242
208
194
200
206
220
192
197
189
190
174
295
197
157
181
200
188
168
178
154
143
160
219
237
114
246
200
171
201
126
176
171
202
218
150
274
178
215
194
192
176
204
197
235
198
192
169
218
223
176
162
233
189
197
170
199
230
228
268
186
158
265
207
245
166
189
160
223
134
211
189
170
213
194
156
212
214
283
262
211
192
226
298
269
259
168
202
236
257
261
231
191
203
195
174
209
261
212
180
187
220
227
228
246
209
216
136
197
205
256
203
141
200
190
214
196
204
163
128
176
182
226
243
172
185
177
213
196
174
223
225
165
199
191
171
274
208
216
150
222
132
208
131
220
217
208
259
150
232
254
167
205
200
207
170
169
222
183
271
144
284
248
204
247
259
217
215
182
156
171
196
207
250
184
188
231
216
166
171
170
200
198
163
252
208
141
154
255
236
124
123
220
229
201
232
239
182
236
231
171
190
202
198
183
189
206
200
187
227
237
163
222
216
230
250
213
194
221
197
232
236
198
237
249
233
236
146
233
169
178
196
194
129
185
154
169
203
172
184
195
181
164
257
233
242
234
225
222
167
204
203
251
168
205
202
177
240
238
171
157
209
183
216
172
224
232
230
221
270
185
227
191
195
149
223
201
260
199
186
221
253
147
227
161
188
239
209
165
147
214
261
170
208
267
172
132
212
155
208
204
221
97
181
188
210
165
183
218
219
260
159
235
142
192
123
212
209
208
267
216
204
182
221
183
208
214
207
158
155
130
220
166
254
147
166
191
211
218
144
192
220
201
195
190
203
251
173
159
123
133
213
168
149
227
160
210
234
180
224
239
194
225
222
209
270
117
236
206
249
229
201
120
193
182
227
208
168
242
156
238
163
217
166
208
207
170
199
204
192
191
162
232
207
181
168
173
182
219
207
212
269
149
190
249
195
223
251
247
175
207
216
181
258
226
174
176
210
234
195
185
190
133
239
237
217
195
178
176
188
224
206
181
274
204
233
176
201
195
259
183
250
195
204
190
177
281
212
243
180
185
184
135
239
243
224
227
200
182
181
177
236
207
175
148
199
192
175
217
134
236
190
188
169
120
184
176
198
180
183
177
151
241
243
217
156
261
209
137
232
237
238
170
261
195
208
252
196
247
262
216
242
186
215
154
192
204
253
178
170
211
215
137
195
155
218
228
181
162
179
206
237
162
119
201
172
236
142
134
176
234
213
198
198
165
198
211
193
182
210
108
194
183
243
273
189
209
247
196
113
191
266
148
164
182
264
206
196
234
243
204
220
208
266
191
240
249
143
206
209
206
221
171
220
196
191
204
167
188
175
181
169
172
184
211
176
218
218
215
194
233
185
159
259
165
212
236
226
238
254
200
236
151
208
183
179
181
154
168
227
207
219
242
185
218
202
153
241
150
196
274
216
141
166
272
228
216
251
244
169
173
196
244
193
143
250
183
142
194
170
186
198
229
177
192
173
193
225
187
178
158
208
162
239
272
179
209
185
208
205
163
77
230
190
193
169
214
206
220
163
202
166
272
216
192
220
245
126
209
178
198
172
187
144
180
181
217
188
155
180
188
208
236
189
158
205
246
225
296
161
175
233
207
232
191
215
157
229
157
182
210
183
158
212
137
243
236
177
238
248
225
216
111
204
159
191
201
227
154
240
147
149
183
171
164
183
140
185
232
197
203
217
252
181
202
213
194
279
183
230
164
258
207
181
212
188
231
139
184
134
142
200
204
167
265
208
241
161
266
258
191
222
169
185
145
192
227
231
232
184
185
207
170
194
198
274
225
211
161
181
204
253
213
212
200
204
191
208
181
222
246
279
151
193
198
217
193
172
195
188
231
204
242
237
174
235
211
190
231
203
249
219
175
245
168
174
189
166
128
200
175
215
230
228
216
201
155
177
146
220
219
230
173
227
220
175
163
163
186
171
171
140
193
221
232
167
243
197
251
137
252
234
224
172
228
212
192
222
200
233
235
245
202
255
158
244
179
206
239
232
179
203
200
157
164
190
244
186
232
221
189
209
250
211
186
235
206
217
142
267
242
229
216
225
132
197
221
273
193
173
256
179
193
171
267
206
289
164
235
216
264
175
233
256
199
249
152
207
182
213
207
203
169
237
203
200
241
147
263
210
215
205
198
136
253
180
193
249
186
222
193
197
205
206
154
204
206
238
185
186
155
133
244
173
240
139
144
205
186
247
206
189
216
162
200
180
193
212
206
193
158
187
212
194
205
131
198
199
203
241
203
219
188
248
181
217
259
217
178
197
206
209
186
193
259
174
209
272
214
211
190
174
189
170
192
213
142
229
242
219
247
215
251
172
192
264
223
166
172
233
202
208
106
233
173
229
185
216
213
187
236
201
210
218
211
203
205
267
229
204
186
225
185
212
130
251
129
202
224
230
249
168
152
226
253
230
224
183
203
234
150
221
191
227
164
204
157
220
164
179
191
173
251
220
252
164
166
233
176
195
229
198
242
198
230
170
168
233
203
166
183
205
157
224
200
193
232
221
235
238
234
255
213
233
154
184
158
229
156
219
174
196
205
201
206
203
184
182
217
211
221
199
161
163
237
227
207
158
129
263
233
263
193
256
229
183
201
207
114
220
206
224
202
206
200
221
178
212
220
230
206
259
195
197
182
264
196
177
219
189
159
179
151
201
205
205
160
220
190
238
194
237
186
156
209
219
224
127
201
183
202
204
166
190
167
186
204
192
221
178
270
245
203
233
176
169
189
173
247
199
211
159
168
204
126
230
185
228
145
181
236
175
219
161
180
172
237
249
130
211
180
157
227
166
178
169
164
233
201
238
174
175
230
168
174
135
193
193
277
217
154
250
192
299
194
223
211
201
232
187
170
186
224
202
234
221
172
239
243
229
235
250
178
226
157
188
195
185
189
208
178
222
246
211
167
169
134
176
232
219
250
166
184
186
203
257
229
141
152
172
216
244
231
191
173
185
233
159
255
251
187
197
235
177
144
218
176
228
247
172
183
253
199
229
189
179
217
197
225
215
255
242
193
246
200
208
216
210
188
171
227
155
237
197
145
187
132
212
192
211
268
191
216
173
234
236
204
216
201
222
214
211
226
199
125
167
263
255
162
292
213
186
209
171
223
233
180
193
146
231
144
127
139
159
227
233
175
179
241
205
215
195
224
182
216
220
153
205
185
175
207
210
202
193
237
180
266
205
188
245
251
199
247
171
256
146
192
192
176
215
237
194
257
201
191
272
276
156
238
209
210
196
175
246
163
202
150
217
188
235
250
125
186
156
225
232
162
203
219
189
186
222
223
166
195
203
211
193
173
151
183
159
140
195
221
189
211
200
208
198
173
216
157
203
191
168
206
167
243
260
217
172
220
208
156
276
215
217
235
166
230
208
211
189
262
204
258
189
202
181
198
145
247
181
149
192
229
172
223
208
195
162
217
186
182
149
200
154
167
157
243
229
174
192
204
191
202
148
228
174
199
182
249
209
245
209
169
284
175
243
236
207
241
195
222
204
84
229
220
205
233
173
240
231
173
212
134
217
151
254
216
181
166
227
199
149
178
226
174
180
207
180
209
213
167
222
137
255
193
215
230
175
199
158
176
245
214
181
226
220
153
160
190
188
193
234
253
238
202
277
180
184
222
149
258
179
207
198
182
174
199
171
263
211
235
182
183
214
265
193
171
238
158
160
239
117
191
271
220
162
186
232
173
228
228
159
224
172
197
236
249
195
202
197
223
236
143
171
134
192
165
176
252
275
186
133
154
178
200
191
225
188
162
192
261
248
181
248
221
216
216
252
178
214
174
187
196
191
164
251
192
226
244
143
204
149
193
194
194
84
198
113
205
202
203
164
191
144
213
202
158
235
158
208
189
222
192
240
178
202
196
165
168
188
135
228
129
199
242
193
110
175
211
190
207
214
224
245
219
217
238
164
212
190
166
234
221
256
217
210
229
220
241
229
166
176
233
220
180
181
174
272
238
198
219
227
199
243
169
164
140
208
214
246
184
179
167
222
198
231
167
201
218
230
137
211
247
218
180
184
202
167
267
202
179
208
226
223
236
147
188
217
170
227
190
222
195
213
183
247
243
153
215
174
187
151
161
141
201
233
212
182
188
184
238
215
186
169
220
167
209
168
173
230
237
234
219
133
214
248
166
212
241
178
231
217
179
129
203
231
234
204
286
166
125
215
175
210
195
157
163
94
189
165
209
207
201
209
237
181
176
191
165
271
272
213
236
259
243
150
215
175
118
201
221
179
156
214
123
209
182
219
250
211
213
261
204
203
200
207
250
197
196
179
253
182
204
132
245
260
216
220
191
198
193
244
232
209
187
279
254
220
144
215
242
154
176
228
230
146
219
179
226
212
274
215
238
238
197
166
181
195
255
161
222
212
173
185
179
279
185
228
213
176
149
231
184
190
201
182
216
168
159
228
264
153
186
205
215
186
237
225
212
216
160
130
153
172
196
197
206
173
179
222
214
170
159
179
245
215
241
162
211
187
211
182
124
194
230
171
201
151
166
173
197
135
189
234
215
207
184
180
200
238
245
208
128
230
237
172
165
165
145
230
189
209
213
189
223
247
240
177
239
235
178
165
201
249
166
250
210
235
197
185
204
250
184
205
158
198
224
193
230
204
191
184
227
232
279
244
196
197
184
205
200
197
189
223
201
221
200
174
205
237
197
164
198
244
175
245
167
138
202
174
198
182
225
233
195
233
189
151
200
246
197
225
236
274
199
167
234
215
252
229
191
197
239
205
240
223
230
215
266
224
215
181
188
201
134
175
191
238
281
229
212
223
170
212
185
206
225
148
213
161
144
234
172
191
239
200
235
177
169
142
199
162
189
236
146
186
165
239
181
226
236
200
200
197
228
240
183
219
211
229
191
253
174
179
196
241
219
243
204
198
240
166
242
170
255
211
234
257
183
150
150
229
198
199
217
238
200
118
206
242
209
208
225
239
160
248
168
194
232
232
176
136
228
232
111
255
182
224
223
255
241
243
287
224
186
245
176
244
148
186
176
262
240
219
155
231
190
185
179
253
218
213
217
236
247
227
216
262
154
223
179
194
210
213
162
225
191
143
167
197
137
219
184
176
212
178
226
204
225
206
191
228
177
145
216
161
236
168
190
213
253
180
191
191
230
250
205
250
187
218
176
117
188
216
218
264
201
148
200
191
145
183
164
174
149
181
245
211
219
179
192
187
231
207
142
178
182
177
265
259
166
146
217
182
213
164
215
178
224
174
221
164
174
160
248
226
201
183
254
260
234
214
200
214
195
192
228
199
207
188
164
235
210
175
210
197
186
210
252
215
235
221
188
98
126
184
236
191
206
185
239
241
135
179
182
256
243
227
196
175
220
247
228
218
263
155
185
259
229
195
231
268
206
241
178
162
184
212
188
239
232
212
216
187
224
134
160
165
173
159
184
154
284
230
212
255
235
207
133
182
196
194
239
207
229
201
232
142
188
171
180
182
249
196
179
130
218
259
211
236
240
176
187
222
220
197
247
176
172
180
188
172
255
226
165
190
232
247
174
245
241
220
223
176
171
209
190
247
242
156
164
177
201
204
160
187
227
237
160
194
182
252
228
146
202
168
282
260
201
187
185
188
200
185
153
229
161
234
250
255
230
250
211
214
226
175
244
165
157
130
186
187
209
243
139
184
189
198
168
221
181
198
204
209
151
203
237
216
228
209
200
217
253
236
151
180
139
257
155
232
184
139
146
166
183
193
235
194
194
225
217
217
200
190
224
276
245
236
181
179
216
212
181
209
247
192
229
223
241
209
168
188
207
185
152
170
221
195
189
157
234
221
185
253
182
198
212
155
232
213
168
244
178
218
191
183
267
215
236
212
159
180
162
227
204
237
194
179
233
153
236
196
239
197
192
189
210
248
240
205
244
197
146
266
253
218
241
215
137
169
247
189
119
217
190
195
191
250
182
201
249
212
210
223
156
174
161
188
201
217
215
178
225
206
216
194
182
212
137
166
136
217
179
182
202
244
197
232
203
202
200
141
183
160
203
216
218
200
163
278
247
236
165
223
231
251
182
213
219
214
187
218
179
202
230
158
171
220
159
196
183
133
210
171
213
209
257
262
147
240
150
213
190
206
227
181
174
260
225
159
248
194
163
195
167
214
217
129
213
195
132
135
156
230
131
211
186
203
169
201
187
189
231
188
160
232
206
253
220
270
230
194
238
145
175
231
232
202
217
144
184
217
171
169
233
179
111
242
230
204
233
235
158
227
172
149
250
181
174
117
168
126
231
231
163
183
265
174
198
185
183
180
197
189
202
239
154
190
214
162
204
199
189
186
175
227
151
198
185
198
164
188
202
168
243
206
254
178
165
176
208
243
180
234
202
217
168
162
208
245
196
194
146
215
254
206
222
148
214
151
210
162
220
181
193
144
203
180
214
180
160
193
165
213
208
209
216
158
209
234
266
196
261
169
181
183
272
245
196
169
189
131
208
201
223
220
229
202
269
206
178
228
203
183
216
218
201
206
204
223
237
180
200
212
301
237
224
179
201
193
194
181
168
212
209
153
194
145
212
238
204
184
202
149
200
259
175
249
218
212
148
215
194
210
157
184
245
192
216
155
236
181
187
167
196
199
206
141
170
221
186
225
222
233
213
169
188
228
145
174
205
169
172
200
179
222
191
209
147
116
212
87
197
244
207
182
178
236
248
235
228
266
195
237
215
181
217
102
171
173
276
198
203
230
147
182
210
185
209
176
235
234
223
217
195
232
171
192
185
226
153
214
185
227
175
150
206
266
234
246
149
223
179
221
231
166
166
153
202
246
218
185
198
192
194
222
163
198
226
212
213
225
227
187
163
174
184
185
225
280
223
202
172
213
119
144
273
211
253
130
188
225
154
196
139
200
229
182
223
169
114
200
215
240
212
141
181
208
263
212
134
181
202
218
247
202
254
117
195
198
200
148
234
235
216
214
243
188
196
195
244
131
196
239
223
188
166
153
228
187
223
259
205
133
179
234
258
161
250
209
146
226
186
212
249
231
220
156
198
187
178
268
241
174
300
191
264
165
201
266
187
189
206
224
147
205
248
194
193
238
191
202
141
191
215
218
213
177
241
164
209
240
197
200
212
243
224
215
226
204
184
221
139
182
228
179
178
212
252
228
184
193
174
212
215
199
211
171
245
210
227
207
189
229
160
160
247
206
202
244
209
163
137
163
178
204
160
176
216
196
195
202
228
192
205
242
206
170
169
132
204
181
244
128
192
238
178
194
220
199
216
189
200
191
184
143
182
121
266
161
183
200
182
221
196
202
184
145
148
184
213
174
230
188
226
212
213
133
186
203
251
191
210
179
208
220
241
173
205
169
205
214
145
225
185
119
219
225
188
184
217
168
208
211
202
299
161
143
210
169
238
212
210
232
220
161
130
195
257
182
159
224
212
191
210
187
209
166
128
181
163
125
167
149
248
179
155
203
225
165
231
131
219
210
179
251
148
208
233
236
195
234
151
199
228
205
160
141
223
193
160
234
239
278
151
166
207
276
97
192
180
187
235
220
283
220
181
212
251
213
179
225
204
228
238
276
205
221
197
274
239
224
201
213
125
194
204
149
203
183
149
222
213
218
144
140
210
270
171
212
234
252
240
157
194
233
167
178
136
182
221
197
231
134
166
187
187
218
215
176
240
257
200
141
171
238
212
208
185
221
189
196
223
213
194
186
204
202
221
195
213
230
191
161
240
226
220
199
217
180
256
195
121
189
172
202
206
179
226
207
174
184
193
203
150
236
162
258
218
205
227
151
171
166
218
235
219
139
268
238
194
221
170
207
181
192
234
153
237
208
260
213
202
237
262
234
216
157
147
210
241
235
248
248
213
192
233
227
226
175
181
191
215
231
281
200
226
202
242
183
200
249
211
181
250
210
207
118
161
163
238
185
251
229
221
155
157
262
245
205
256
150
192
239
245
269
215
196
193
191
147
188
146
215
181
223
216
229
192
202
248
200
152
240
255
224
186
156
116
182
164
201
242
202
161
176
117
194
267
147
170
180
192
225
169
198
194
200
202
194
211
200
197
152
146
227
167
238
122
201
210
241
147
245
157
174
210
217
276
191
189
148
146
168
187
174
162
238
136
206
214
166
208
215
207
239
253
237
215
256
204
214
179
180
138
191
154
160
174
212
225
242
233
234
181
243
232
221
211
187
233
219
248
152
170
193
266
214
237
166
247
198
168
219
184
178
258
217
151
143
159
213
155
195
172
202
200
150
209
212
270
155
212
231
254
177
127
194
214
176
193
211
143
258
199
171
163
191
186
191
213
221
171
268
208
213
169
240
168
180
194
208
277
204
215
150
201
188
226
185
191
178
217
240
196
219
209
228
169
246
231
173
236
253
236
199
199
181
240
247
137
190
202
221
239
222
228
240
245
209
151
233
172
212
195
158
171
226
224
246
233
235
242
230
161
173
164
173
128
171
164
233
143
241
210
190
176
278
139
192
177
280
227
246
182
242
184
165
221
232
202
226
245
211
186
288
151
195
240
246
261
233
182
172
231
158
121
201
213
231
142
200
207
180
259
238
212
201
150
179
238
231
256
216
165
139
202
106
273
146
228
237
145
187
237
171
235
273
113
169
162
168
206
151
174
183
211
155
219
192
161
178
200
220
161
230
171
169
239
252
216
211
253
227
239
154
202
175
199
234
236
161
247
148
207
209
163
178
197
139
190
182
199
174
185
195
185
170
142
207
186
213
175
241
149
163
183
185
199
209
229
243
276
121
181
128
220
181
253
182
228
228
207
235
250
184
224
163
121
208
176
215
211
180
230
239
185
180
146
221
175
223
238
274
257
168
142
176
168
196
222
218
228
168
242
186
180
184
184
242
207
247
179
192
236
140
256
220
217
177
228
226
235
219
147
227
230
252
163
189
223
219
208
234
238
147
171
167
231
203
180
188
203
188
257
223
201
172
182
215
169
239
153
140
201
120
145
170
167
156
207
245
195
137
197
169
150
212
129
248
248
216
162
182
121
275
233
232
161
186
249
223
190
207
157
161
208
214
245
206
205
180
218
140
150
151
226
170
212
248
197
172
259
201
193
221
171
266
239
192
238
191
223
135
211
265
188
182
173
221
145
173
177
203
177
203
194
156
160
225
245
238
245
217
127
237
179
250
211
193
191
172
175
164
239
258
153
215
144
205
230
142
223
241
205
216
175
152
209
237
201
242
239
191
193
222
179
227
194
162
171
263
161
148
161
150
253
203
195
127
167
166
157
222
239
212
209
176
188
229
207
192
197
145
195
201
202
136
158
191
266
253
274
276
225
180
148
213
172
154
164
201
214
190
171
153
180
214
190
175
168
191
212
212
245
203
123
172
215
242
217
222
182
194
217
197
118
211
225
201
186
206
190
188
169
221
189
188
181
206
212
226
176
182
179
191
270
157
235
226
208
123
163
185
255
216
215
174
178
169
195
255
158
215
206
197
201
231
216
240
132
158
247
217
232
163
181
164
179
171
198
204
206
213
231
218
238
195
224
147
230
192
222
163
179
200
174
216
180
177
187
173
184
193
178
239
208
197
180
184
192
201
177
234
196
163
215
233
162
204
239
250
218
244
230
172
163
148
282
184
270
257
227
174
223
241
194
140
230
174
190
160
229
190
173
229
201
170
236
213
223
167
153
138
224
156
210
194
146
222
220
193
198
204
223
227
199
215
217
207
222
134
200
219
178
182
115
132
166
210
238
164
165
194
188
222
207
187
172
230
208
170
221
167
186
209
228
193
132
177
208
229
257
232
183
247
178
220
182
210
242
191
217
203
233
212
225
176
160
154
220
229
235
192
136
241
177
166
201
196
188
156
223
250
226
266
250
235
231
213
247
195
201
221
204
224
169
131
173
213
165
200
244
220
161
231
189
220
234
165
217
206
222
198
220
188
252
229
215
200
208
174
248
206
219
190
183
210
208
230
239
195
206
171
238
197
176
241
235
177
190
213
231
157
154
228
127
201
190
206
219
161
183
204
189
167
200
240
154
250
274
186
224
168
217
240
193
219
214
277
219
215
244
213
166
214
173
213
218
184
201
212
227
228
117
200
204
225
231
113
144
184
238
222
205
178
209
218
149
138
237
199
173
229
157
184
233
214
190
206
233
299
201
215
223
194
266
255
216
210
198
164
150
186
197
218
185
245
168
176
225
200
262
233
246
199
244
156
189
164
194
231
175
213
219
204
185
194
200
199
159
216
287
182
220
208
260
179
233
225
200
221
241
226
212
213
215
228
141
156
195
259
219
233
207
209
147
200
153
266
189
242
233
199
154
198
187
208
151
191
171
184
176
197
171
191
239
222
257
185
215
231
239
186
245
185
193
219
198
148
149
149
212
244
152
200
214
176
236
200
197
238
132
189
198
236
201
241
193
165
214
166
236
194
291
206
175
186
228
150
152
204
188
199
206
225
187
217
205
151
192
185
196
255
218
199
233
244
218
243
213
190
198
176
219
173
164
243
231
166
197
211
166
212
188
188
234
222
209
223
224
199
206
217
203
269
215
156
199
150
182
198
143
173
237
138
207
189
183
114
216
264
207
273
178
235
216
212
166
204
191
132
192
208
202
222
255
217
153
248
244
135
161
249
182
213
256
234
226
215
179
179
227
195
210
183
148
200
160
239
186
230
204
233
210
246
223
203
238
246
160
215
184
247
218
141
203
282
209
163
157
187
190
190
182
152
197
201
206
181
189
211
111
217
158
216
228
182
205
244
213
138
183
232
224
158
196
222
210
143
204
195
163
140
212
176
182
166
259
235
250
181
220
192
249
243
203
187
222
201
184
217
170
141
202
190
193
200
205
212
165
143
230
140
250
226
220
230
171
231
209
202
210
189
211
193
192
248
219
204
206
198
225
116
174
206
240
200
217
189
204
229
253
180
200
242
233
135
187
172
243
205
237
190
198
145
236
172
145
209
194
190
226
225
230
233
233
177
218
271
209
233
239
225
255
210
178
164
220
210
100
210
228
199
177
187
220
235
175
174
152
199
249
266
183
190
239
217
197
241
199
149
154
145
184
250
212
157
234
192
136
186
169
116
172
234
243
191
189
228
219
201
203
255
235
198
184
167
190
243
228
161
189
151
223
247
248
193
233
226
208
218
180
232
226
186
145
195
156
197
222
209
157
142
159
139
210
222
195
216
212
214
181
262
164
158
196
223
218
149
189
199
266
213
213
175
173
219
267
172
210
250
216
177
215
212
238
197
259
197
149
237
177
223
236
163
222
193
232
158
218
211
233
190
200
168
174
202
170
208
152
127
216
195
266
175
202
198
166
199
219
220
167
194
231
186
188
222
217
184
229
171
195
237
109
168
200
224
286
198
218
157
188
229
184
178
236
251
203
183
149
184
233
132
216
163
184
183
267
156
222
220
212
195
163
146
237
227
242
151
154
227
245
194
226
165
166
197
260
187
249
194
215
200
236
226
191
228
177
216
200
136
165
190
173
169
193
143
182
217
138
234
259
253
272
134
181
191
172
163
244
241
215
174
179
205
203
222
184
136
198
171
282
142
197
249
194
204
257
222
197
185
183
201
163
260
239
224
169
184
175
215
197
202
186
170
169
179
226
210
235
281
245
220
219
267
228
151
223
156
138
128
245
234
214
192
203
187
214
219
202
207
195
185
208
184
199
187
200
151
204
152
224
220
182
213
222
187
182
122
163
177
238
150
194
185
217
147
168
212
156
178
248
235
201
221
261
167
210
243
196
135
170
243
210
181
151
228
175
197
240
157
232
220
196
208
214
190
141
298
165
243
160
247
139
212
253
193
202
242
188
120
178
219
171
145
174
220
212
208
241
246
169
234
215
163
192
152
178
200
198
188
153
228
179
255
167
271
186
115
237
231
200
172
185
128
199
190
216
211
229
206
199
226
224
209
194
183
211
210
219
202
293
183
198
241
159
125
233
153
236
214
147
169
177
176
236
155
217
180
208
196
201
120
173
187
191
252
221
191
251
223
156
203
209
138
238
190
230
171
218
196
244
208
148
202
193
180
213
227
248
193
235
156
204
232
193
254
158
212
201
242
187
202
176
208
133
221
259
225
172
176
232
208
178
164
173
190
258
241
178
213
231
224
208
230
187
221
186
158
189
178
120
228
223
148
191
172
185
224
236
199
206
247
169
188
216
184
248
192
237
197
205
135
195
235
228
201
249
170
154
208
163
208
183
226
258
286
229
169
242
180
173
216
192
145
157
174
282
190
191
217
170
256
163
202
179
237
167
243
197
174
201
237
203
206
241
196
217
221
174
179
205
252
202
233
134
196
136
202
237
169
222
182
201
191
205
265
229
157
236
166
201
204
174
225
179
176
223
135
193
247
164
249
307
251
197
157
229
258
243
207
228
202
143
218
159
206
214
244
141
213
198
130
178
282
216
201
285
246
226
177
222
184
198
199
220
234
217
241
260
210
136
188
155
218
238
213
210
111
217
201
217
243
243
181
125
201
243
237
183
217
210
186
187
247
184
197
231
233
213
252
194
218
196
210
223
228
216
243
133
245
249
199
164
174
139
209
213
192
294
221
210
216
215
189
157
168
218
151
249
169
186
172
193
223
162
230
173
230
185
233
166
173
194
231
230
160
229
151
212
135
187
172
179
139
155
236
179
249
201
157
161
227
172
230
190
224
167
197
186
227
253
156
198
209
211
207
143
213
159
210
201
144
268
266
186
205
237
155
222
168
214
269
195
295
137
214
166
213
188
192
193
231
204
187
177
179
189
243
171
149
225
227
183
164
228
232
181
202
232
157
178
160
188
199
234
223
241
116
202
172
191
188
246
191
119
224
232
239
200
123
150
196
206
135
200
245
196
174
153
147
135
219
246
270
151
171
202
233
190
178
226
235
189
208
226
190
210
215
183
253
243
190
181
234
141
169
197
217
225
171
187
185
205
196
199
203
173
161
195
183
212
218
248
231
208
161
265
168
220
222
200
199
230
215
180
172
201
192
169
219
166
209
219
189
165
214
252
200
160
171
169
176
264
183
168
243
128
152
251
229
197
212
178
196
226
250
119
206
231
206
136
175
205
203
166
240
168
202
196
223
216
202
208
187
230
164
219
176
171
214
176
233
240
186
255
141
183
201
221
208
230
192
204
223
174
188
173
204
153
196
230
278
138
260
266
233
224
182
162
145
145
131
186
251
172
175
236
181
223
224
239
183
214
188
221
192
263
257
246
187
219
217
176
188
155
181
208
193
189
166
185
215
217
195
180
192
212
225
214
219
215
189
208
187
219
223
207
161
229
212
138
232
200
249
183
240
220
193
213
192
164
210
182
214
174
167
263
223
226
198
248
209
223
203
215
188
224
136
202
171
137
241
185
198
230
174
186
263
207
120
139
214
219
173
233
231
179
193
219
233
168
217
144
244
210
208
219
170
229
207
169
200
225
195
232
122
262
154
241
194
184
223
161
155
197
205
116
186
232
202
257
150
266
241
238
230
219
153
204
183
174
243
225
211
207
198
228
171
196
203
217
156
197
185
184
159
218
247
252
221
198
164
192
232
182
192
205
261
166
229
180
239
218
184
267
214
191
266
238
229
242
190
199
206
220
210
204
176
216
168
255
217
146
200
181
226
203
181
163
197
256
190
182
202
240
169
204
219
209
220
244
242
281
137
182
237
239
207
187
210
177
236
237
182
158
136
198
260
208
235
170
168
240
161
220
168
263
238
207
237
209
192
182
226
233
180
178
244
180
247
173
201
142
252
194
207
247
203
207
154
216
185
226
148
249
257
217
262
185
208
147
226
217
194
185
209
201
185
228
211
281
190
204
250
159
258
204
176
137
249
216
249
177
229
191
222
179
196
174
270
250
238
239
200
244
202
248
193
248
201
189
167
197
113
172
225
223
207
205
116
182
247
236
230
193
201
198
228
227
101
208
216
191
170
235
165
223
225
175
175
175
234
203
158
147
161
188
154
156
204
239
221
177
148
220
249
234
176
290
165
184
252
187
159
158
183
221
167
182
214
155
240
208
195
193
181
250
156
215
146
206
209
167
180
134
258
212
183
162
251
152
214
195
186
171
242
198
134
168
201
225
178
260
190
253
190
188
172
211
186
239
169
237
153
212
222
211
172
198
203
273
259
212
219
225
178
207
187
214
174
194
186
152
205
231
217
188
267
273
191
234
162
235
248
170
137
121
246
197
251
224
202
178
184
242
138
222
175
253
210
228
209
185
224
205
178
236
139
219
182
270
147
181
254
211
224
249
147
216
203
197
233
202
179
235
219
203
183
222
154
176
190
118
224
239
230
80
199
230
246
194
248
203
167
209
240
213
193
175
202
263
204
203
239
202
188
172
215
178
245
205
255
205
152
216
202
230
190
113
271
211
185
252
249
208
184
204
214
154
191
185
181
208
195
205
261
206
220
185
174
122
184
163
302
197
214
209
166
127
215
190
175
156
219
235
192
250
181
221
194
214
206
212
190
127
176
231
163
164
195
177
164
198
181
144
278
211
159
197
255
178
233
182
201
182
203
168
256
169
210
153
180
171
187
171
130
247
184
170
207
116
211
146
215
168
186
185
176
208
203
198
237
202
185
148
231
245
188
188
208
148
153
264
264
208
203
183
208
226
179
231
190
236
256
215
248
176
242
248
200
249
191
202
202
173
197
214
161
250
228
217
170
186
185
192
227
270
151
217
157
173
140
185
170
240
205
215
228
160
205
184
192
179
273
201
255
122
180
164
191
249
215
172
235
148
159
230
194
203
210
190
205
197
200
231
173
178
196
184
162
145
211
108
184
226
186
142
194
190
207
130
222
187
181
201
177
203
192
249
212
214
231
220
234
147
227
230
137
179
231
263
232
189
167
181
189
202
208
224
207
172
203
145
191
203
158
243
143
174
212
136
149
149
229
222
197
204
230
191
263
233
180
204
155
231
179
221
285
225
208
171
241
266
185
195
204
180
146
172
244
208
191
222
212
229
164
246
146
223
193
225
210
206
213
177
258
212
216
199
168
167
231
237
233
236
239
130
199
242
158
207
200
264
226
235
181
208
127
204
195
187
217
207
274
196
200
229
259
149
150
138
222
203
165
223
194
146
223
208
195
162
239
198
139
201
176
276
199
246
159
170
189
158
213
231
246
233
223
203
200
224
154
178
179
198
240
221
165
223
242
178
186
218
195
217
210
191
236
180
197
226
249
225
158
212
217
210
175
164
149
201
200
199
107
214
219
214
214
210
171
236
198
172
186
233
192
185
246
212
203
207
152
197
258
177
184
186
198
213
198
176
268
237
161
166
210
162
194
202
198
210
213
220
187
166
186
155
222
184
183
214
236
168
174
223
249
219
209
233
170
157
209
170
245
153
199
203
218
200
214
213
219
191
139
224
213
167
149
153
146
204
188
201
127
228
197
260
202
224
224
181
145
216
184
173
220
233
210
171
136
185
184
132
237
243
237
187
229
221
261
229
198
203
164
136
212
197
223
198
229
175
205
231
256
181
213
154
180
217
205
205
222
202
213
243
258
216
192
239
195
188
153
226
189
178
192
194
200
194
194
255
135
272
208
163
223
201
160
264
188
236
181
171
269
243
212
245
224
177
192
231
158
210
227
175
266
173
235
169
194
189
165
216
161
184
149
215
233
201
246
139
250
225
217
207
223
233
245
237
208
204
133
130
200
214
173
204
237
194
168
152
216
228
164
167
246
168
201
189
215
193
176
169
173
155
154
223
179
152
165
171
229
202
223
191
207
197
233
238
219
253
211
197
198
218
170
160
250
170
184
220
228
179
195
220
247
227
167
238
132
213
221
199
208
243
236
187
255
197
188
249
171
179
112
148
213
179
184
201
208
258
209
145
261
150
201
159
202
235
236
218
222
210
211
205
167
169
178
253
216
183
159
207
156
112
155
178
216
232
242
238
198
207
172
162
240
158
232
195
193
239
231
229
155
226
224
217
212
218
187
172
233
211
120
184
224
226
187
197
204
213
240
211
221
192
224
188
150
205
211
152
206
187
207
181
203
169
264
190
170
150
183
209
209
188
271
185
196
137
186
138
170
225
212
178
149
206
230
242
190
143
156
172
180
198
190
186
241
164
202
253
167
275
226
239
185
194
195
227
195
172
206
200
208
184
249
244
198
227
202
211
166
172
190
209
222
229
226
171
177
210
227
226
154
127
183
188
198
222
182
228
210
175
141
203
193
145
229
152
136
195
201
154
218
173
220
200
243
197
197
169
203
182
258
149
264
208
205
257
224
152
167
198
122
185
170
179
180
163
241
181
191
213
203
151
256
274
189
158
169
172
194
183
211
262
114
287
175
227
194
226
183
238
214
236
178
206
249
161
118
211
197
208
240
229
225
173
195
229
182
197
171
238
186
220
224
211
213
262
212
166
120
183
141
208
196
223
181
182
201
210
213
222
232
212
175
169
142
129
151
229
226
216
210
208
189
216
143
273
181
237
174
192
209
175
182
193
161
173
147
224
175
167
174
151
215
221
184
241
238
225
255
221
223
202
177
184
205
135
212
167
275
209
167
146
257
197
182
182
245
218
230
168
219
226
217
180
202
208
162
219
142
247
205
208
170
211
236
177
250
205
126
195
180
124
240
204
201
205
206
242
197
240
162
234
201
188
189
120
241
216
182
199
171
184
225
236
195
230
192
201
248
200
199
148
175
226
172
115
220
182
193
127
217
181
177
191
245
261
151
206
111
180
171
159
137
190
162
227
259
215
181
184
222
213
166
201
171
261
224
167
220
265
247
180
230
254
155
186
154
153
202
118
162
201
200
98
217
206
259
150
232
228
191
208
212
226
207
194
188
177
118
223
223
182
161
237
151
230
196
187
172
205
210
220
202
155
203
206
229
227
193
221
260
201
179
201
144
215
212
253
236
214
163
221
204
216
232
210
164
199
192
230
196
119
203
264
203
154
231
185
206
217
198
199
202
178
200
172
171
163
207
263
203
187
215
232
219
262
214
178
189
181
223
211
202
173
204
154
202
167
187
217
198
230
215
207
186
191
130
159
165
279
174
216
239
229
216
223
253
240
172
161
245
158
187
216
151
217
183
154
171
205
186
197
243
190
242
178
163
185
198
204
200
150
178
131
159
230
187
196
206
215
236
245
235
141
139
168
145
214
183
198
142
193
164
183
244
226
213
203
212
194
182
131
234
130
237
218
195
160
250
160
233
187
173
156
211
179
165
135
252
196
193
174
166
157
153
177
209
210
241
154
209
203
304
215
118
244
218
195
239
181
199
164
178
141
231
235
210
191
167
158
258
202
188
201
181
161
119
126
156
219
164
100
169
154
172
213
183
230
196
212
194
243
195
235
185
186
210
225
250
247
203
215
200
241
211
172
196
234
228
201
157
253
216
195
192
243
207
210
251
189
204
199
238
226
240
143
224
189
208
236
196
254
242
253
208
197
286
177
209
194
188
151
213
250
232
230
185
210
230
193
240
203
144
239
238
212
244
242
261
208
142
137
211
188
221
157
224
163
191
154
231
234
220
251
180
174
219
201
204
233
167
252
209
232
275
201
211
190
184
170
224
226
154
168
179
273
217
221
228
228
243
154
240
159
220
235
239
162
213
214
249
209
230
208
230
171
212
248
230
185
251
175
144
267
206
192
186
230
189
191
192
155
181
198
235
231
210
156
184
183
211
207
169
237
278
192
249
226
177
146
192
209
170
247
283
221
178
214
214
197
167
183
245
212
159
180
260
150
183
200
254
155
184
191
221
165
246
238
173
160
135
158
172
248
202
196
197
166
118
135
200
178
170
188
180
126
195
157
196
200
227
221
193
182
179
201
244
199
144
179
200
212
202
219
188
207
188
146
220
214
136
203
142
206
176
242
181
157
164
114
216
263
211
201
194
167
193
208
214
205
177
214
210
210
168
195
192
144
235
184
188
209
202
208
163
186
165
166
231
252
192
193
197
199
187
198
205
216
184
223
121
239
148
222
183
219
174
176
225
202
250
166
209
159
235
192
190
186
193
194
123
191
197
185
173
178
212
203
167
249
210
251
217
216
276
165
215
172
235
260
206
234
260
195
210
197
216
227
209
198
223
176
230
191
219
185
159
255
170
179
257
165
181
199
195
178
250
188
176
143
169
215
150
140
131
211
137
217
222
159
212
175
222
235
208
255
205
176
260
188
211
223
260
179
246
203
177
155
286
218
233
248
171
176
155
239
182
206
166
216
232
171
208
230
224
185
198
229
185
156
217
194
184
205
179
190
202
226
204
203
190
174
195
192
203
209
241
186
244
210
187
261
218
243
202
262
195
210
215
178
198
257
196
184
115
224
222
170
198
149
227
205
219
243
209
210
253
220
266
189
197
246
189
218
226
250
182
188
180
209
205
233
161
235
187
204
221
180
229
183
234
186
190
200
187
195
222
239
190
235
179
208
98
196
165
222
161
201
222
256
219
163
198
182
151
224
214
249
214
211
209
167
228
180
177
191
198
233
285
231
183
173
208
207
209
231
261
208
136
132
252
230
240
167
219
250
160
156
177
210
191
234
199
228
227
222
202
200
167
129
196
232
215
209
180
215
220
214
151
164
230
231
218
208
215
226
225
200
173
196
206
247
246
212
222
191
220
187
269
230
222
204
197
251
192
189
171
155
146
206
231
184
209
217
252
199
169
219
159
215
183
267
211
216
198
112
209
208
192
133
145
165
231
261
232
250
200
212
235
192
243
187
278
248
253
208
210
164
160
190
179
245
221
208
164
190
194
220
174
237
228
145
246
256
194
262
185
217
241
162
156
175
164
148
160
128
210
149
234
190
221
210
179
160
197
212
210
159
252
198
200
123
263
217
269
129
190
259
242
207
232
221
260
218
215
167
180
198
224
227
214
195
175
249
216
266
163
201
163
143
161
220
208
192
222
215
244
196
195
170
249
218
236
236
271
277
150
221
245
227
148
182
200
211
214
148
162
202
160
201
232
200
235
266
197
192
219
183
202
153
221
200
197
174
160
199
166
187
201
236
235
173
206
191
190
177
215
196
140
167
279
254
193
216
189
207
183
198
182
224
165
220
196
182
217
155
193
209
159
188
254
215
226
223
181
203
271
194
152
204
202
249
147
230
245
234
194
196
171
199
149
203
181
176
191
190
206
243
160
230
224
234
175
231
178
211
152
202
162
196
154
184
205
191
166
186
199
120
265
207
184
228
223
167
212
261
171
157
232
247
223
228
264
223
183
177
201
165
157
275
217
204
234
162
255
146
246
186
190
172
236
245
216
211
214
185
227
232
189
186
201
240
205
231
212
181
234
187
182
181
199
185
263
171
200
210
174
211
221
192
205
262
208
198
218
215
207
233
205
222
165
161
215
193
192
244
217
201
172
180
204
186
236
191
223
190
263
213
200
196
206
185
91
212
191
237
257
241
157
218
200
184
233
171
198
260
211
244
141
197
243
238
167
265
218
139
202
178
222
117
190
175
156
150
163
219
266
176
158
226
186
197
166
214
199
186
178
243
213
217
186
186
227
153
170
201
230
177
204
221
230
173
172
244
186
178
191
223
206
203
184
238
198
243
172
208
132
154
215
198
257
275
167
176
124
176
103
189
243
201
198
166
173
253
169
205
119
218
218
183
182
220
210
209
202
216
194
237
190
194
190
230
229
219
208
134
227
245
200
229
234
173
166
203
242
217
220
208
203
214
172
165
177
161
217
201
164
196
193
212
264
205
240
171
202
286
196
188
209
180
251
273
224
181
253
167
191
176
171
177
167
226
231
209
210
142
214
191
228
276
177
172
203
165
207
179
163
180
210
191
159
214
222
229
172
130
169
184
169
226
234
187
236
222
225
257
125
181
122
175
199
253
226
191
251
178
217
164
256
232
194
238
224
200
165
210
252
187
209
212
215
230
247
219
193
146
186
196
221
221
172
195
260
185
208
204
217
214
160
200
156
184
204
172
185
208
244
172
222
158
249
123
173
193
206
177
181
242
265
232
203
237
232
173
257
244
235
211
205
163
208
206
184
254
181
241
155
229
233
231
184
198
177
193
166
189
167
168
229
191
172
187
298
224
136
196
181
199
215
199
170
171
293
198
239
206
195
174
183
232
236
169
197
231
179
178
228
199
207
176
209
249
157
208
174
205
235
196
192
236
167
209
211
144
119
176
207
259
242
158
151
205
191
214
141
211
208
217
209
167
149
305
220
179
236
155
223
205
221
205
187
212
192
170
215
190
164
224
203
230
266
213
198
164
195
177
167
178
186
221
178
203
247
223
252
187
103
173
173
269
184
144
190
239
223
202
192
245
200
193
189
190
188
205
171
171
185
181
237
233
192
181
192
177
172
118
194
177
230
178
152
183
231
241
193
199
243
230
178
183
264
199
182
241
199
174
181
164
211
212
227
231
157
169
160
176
211
198
216
184
226
197
130
179
190
207
171
160
183
165
194
230
195
126
188
163
204
180
192
227
165
189
147
152
157
261
207
168
168
209
204
229
226
252
207
259
219
198
234
233
174
228
205
236
233
227
220
213
199
230
195
90
200
257
221
173
164
173
214
187
192
244
187
167
140
173
127
150
155
198
155
167
184
171
165
225
187
194
171
195
173
172
253
227
216
232
232
152
224
221
137
135
162
149
179
156
205
216
151
176
202
165
230
190
227
230
163
161
213
220
226
219
213
183
265
210
196
194
231
192
177
201
271
175
212
195
175
229
206
185
271
231
224
193
259
225
219
199
187
158
148
184
179
169
238
182
170
200
211
175
179
219
237
158
186
203
165
254
201
205
220
197
192
215
223
196
175
196
286
223
158
226
197
212
215
230
185
222
196
267
202
162
163
223
184
150
291
243
209
153
208
192
152
247
204
208
252
218
203
217
199
222
216
211
229
205
239
191
220
192
195
222
125
223
192
129
174
267
218
185
202
214
149
240
244
202
196
163
167
207
209
182
219
202
166
269
211
200
174
209
219
181
214
196
206
211
226
159
256
153
229
155
231
222
188
153
164
211
218
263
176
262
195
189
163
217
129
212
168
128
217
258
219
205
199
255
227
127
191
152
183
199
180
232
196
191
203
252
206
165
190
121
183
178
207
212
150
219
227
183
187
189
237
217
225
233
204
247
224
230
250
214
185
241
205
171
209
224
236
175
170
271
247
151
252
236
212
201
166
206
181
181
228
193
259
137
126
202
218
146
226
205
173
121
221
184
183
206
209
188
213
245
233
214
222
195
257
228
203
192
208
225
137
215
162
173
122
153
250
254
210
182
195
246
208
137
194
253
223
238
174
207
149
151
229
247
187
171
215
217
210
166
228
204
173
202
216
216
199
228
144
153
213
182
211
189
211
224
168
108
249
178
188
220
205
237
205
218
239
211
194
278
221
188
196
203
165
224
219
152
253
198
180
185
181
222
229
134
207
227
243
238
224
214
195
191
242
214
269
190
189
153
169
224
206
231
224
213
179
210
186
171
260
217
259
216
186
165
228
175
182
214
191
244
254
230
214
232
230
177
255
227
209
204
206
202
206
200
194
188
193
164
212
224
174
162
225
230
185
208
181
170
188
176
168
232
185
225
229
231
216
174
175
183
183
204
151
186
193
236
163
192
224
138
263
173
254
243
242
205
171
198
226
192
267
178
249
266
219
206
272
173
288
158
265
248
201
194
106
200
142
211
262
174
152
190
248
158
249
239
165
215
207
222
216
182
208
156
217
237
177
117
205
236
173
187
227
185
204
219
200
214
164
201
122
206
212
193
219
172
202
165
271
280
147
227
232
217
197
214
196
154
145
181
215
207
191
218
242
135
172
185
183
194
217
263
189
182
180
278
229
156
243
165
184
165
181
212
169
228
249
88
157
160
187
231
184
192
182
234
192
211
165
209
230
191
197
233
237
153
163
239
227
240
191
255
164
163
267
194
195
114
228
124
247
206
204
241
240
162
173
192
245
224
196
194
237
219
172
224
198
179
214
206
182
178
167
238
210
204
173
223
257
160
249
163
200
117
172
188
189
211
254
171
163
205
280
244
219
203
195
195
179
163
154
160
224
219
216
146
193
154
188
224
152
223
164
270
190
200
229
201
189
152
194
186
220
198
245
233
241
235
215
221
123
236
169
214
219
169
177
195
198
184
213
181
235
203
235
199
255
189
167
149
188
195
221
212
203
219
227
194
229
195
199
210
238
175
184
133
207
209
183
265
262
222
187
221
233
179
252
216
155
211
164
165
208
204
129
186
208
127
193
206
249
240
199
158
140
212
224
260
197
226
222
157
197
203
178
193
209
226
199
219
190
219
179
182
210
251
185
207
214
235
191
236
181
147
264
172
231
208
188
230
170
191
175
209
179
150
135
256
158
216
239
181
236
263
175
198
169
218
144
138
211
215
226
194
176
188
198
210
192
182
158
160
129
241
231
181
194
216
213
223
200
214
193
183
212
184
226
180
147
205
186
174
175
234
164
245
207
207
176
79
166
230
182
198
209
159
219
171
176
179
130
147
226
246
230
153
197
189
241
210
231
200
206
175
185
240
229
201
164
147
126
215
252
263
207
172
160
204
200
231
179
175
198
231
154
196
247
249
228
227
148
152
254
167
217
135
171
241
177
230
199
252
151
226
200
158
170
181
162
225
106
209
183
231
235
193
235
200
243
184
165
179
258
187
247
191
147
207
146
243
201
196
182
236
246
216
184
190
213
197
159
241
235
214
224
200
181
186
190
156
239
217
192
212
244
212
167
190
143
202
224
180
188
230
227
190
216
196
173
196
155
183
247
175
254
214
148
193
258
212
278
137
165
220
262
205
142
207
210
216
227
221
223
177
146
231
176
183
162
260
263
210
184
187
216
209
205
232
245
148
195
205
167
140
193
212
243
151
204
174
224
179
198
204
197
159
209
222
219
153
198
214
220
237
199
170
188
197
204
198
205
208
242
240
134
166
174
257
175
256
152
241
207
187
169
221
221
258
262
169
170
210
219
240
175
200
262
158
242
219
233
247
190
180
148
197
239
162
227
256
213
210
228
221
182
237
259
204
217
223
235
275
208
212
220
212
172
253
210
229
237
250
180
188
200
246
162
213
250
152
202
206
208
207
194
172
159
202
183
234
101
183
188
151
226
181
216
189
261
195
180
180
202
190
200
171
127
242
205
230
151
190
146
197
200
200
222
287
216
210
150
245
147
240
190
229
236
127
256
216
102
130
222
154
195
176
157
263
204
179
202
167
262
165
183
174
178
201
196
186
218
205
187
198
226
234
191
171
211
164
163
205
201
187
235
144
261
207
194
159
249
156
182
195
160
216
245
211
189
230
244
142
148
132
190
201
136
155
135
216
189
152
263
220
174
165
220
236
174
257
240
156
147
188
218
199
196
207
219
204
233
139
219
165
178
216
188
209
209
182
227
155
237
190
189
231
153
206
189
225
174
233
208
200
202
159
209
194
228
197
196
160
191
198
218
186
267
226
205
243
194
164
243
217
163
212
189
233
187
231
139
168
188
219
211
187
229
173
243
207
215
225
237
213
213
182
251
234
170
210
220
235
196
204
172
185
198
204
159
218
197
248
190
221
174
258
203
191
225
216
178
239
236
234
195
197
141
223
197
161
189
159
203
247
216
189
161
224
186
214
207
222
192
159
164
219
185
217
170
259
201
236
174
215
232
219
151
211
185
182
173
225
269
146
167
217
210
165
170
137
184
205
234
194
256
221
180
278
227
192
184
193
251
226
179
261
156
245
199
228
170
159
216
200
235
226
242
158
268
150
199
231
137
271
220
204
212
204
156
212
161
216
156
170
199
216
250
122
177
238
220
213
141
185
267
252
189
209
163
198
236
221
243
165
182
119
218
133
239
221
194
238
236
169
164
160
255
175
235
206
192
156
196
209
191
231
187
240
189
191
218
176
252
189
258
216
209
169
181
213
230
206
177
172
184
170
161
255
248
190
257
188
190
139
236
201
197
243
231
243
208
164
226
218
165
210
227
135
198
154
278
266
163
174
264
239
250
196
186
223
237
195
196
181
161
215
187
210
252
193
181
264
167
248
185
207
237
266
201
187
234
217
227
256
227
166
208
189
232
193
194
236
169
194
264
255
213
213
180
239
152
163
188
152
197
173
236
234
217
149
222
163
196
217
177
182
114
135
179
173
156
230
163
198
168
201
178
217
214
180
173
227
167
216
161
222
204
152
218
264
167
196
177
202
213
186
208
189
210
216
225
268
261
234
201
174
181
173
214
192
193
189
212
244
176
146
157
176
215
200
155
196
219
224
212
231
212
192
196
232
146
226
249
183
248
245
162
150
198
230
232
188
216
231
222
239
179
168
158
283
221
154
142
176
243
167
211
192
208
174
209
192
212
236
203
194
172
162
149
196
203
144
155
173
181
227
193
183
213
198
205
178
210
184
239
169
201
187
240
183
227
186
189
191
180
203
231
192
210
189
116
223
202
153
172
185
197
257
182
230
169
181
192
171
223
181
205
263
167
179
227
183
204
245
200
168
219
199
212
279
233
217
198
203
204
232
237
207
207
148
167
167
245
275
197
167
223
227
203
200
185
267
176
215
175
184
181
207
176
197
178
201
208
223
156
211
232
207
185
210
183
142
272
145
214
202
237
226
201
193
175
185
187
189
178
192
198
149
222
236
120
220
234
171
172
157
227
184
214
188
221
181
220
227
140
180
201
195
235
170
183
215
191
173
199
147
173
253
270
209
198
185
179
128
215
169
146
156
170
198
162
180
217
148
174
232
149
202
202
223
184
176
193
146
218
214
180
224
244
230
223
156
223
306
168
130
228
136
270
184
154
187
187
216
190
127
220
177
164
168
145
205
231
184
158
225
169
198
229
239
221
191
197
204
232
204
199
221
213
234
192
154
222
235
220
172
155
190
162
184
185
241
199
249
232
240
201
198
191
207
248
220
199
203
232
217
153
213
218
143
189
203
203
204
249
137
196
207
242
166
233
223
199
227
222
130
134
292
173
238
222
206
226
162
214
247
166
238
213
235
203
231
251
122
224
260
138
215
189
190
151
261
194
202
188
224
205
232
118
236
234
187
141
206
112
221
289
272
219
186
193
242
228
191
194
180
213
277
214
202
201
202
204
240
168
207
259
216
244
238
157
146
246
187
204
203
196
216
195
138
214
208
156
182
161
200
186
233
243
226
197
128
195
212
209
225
181
144
219
123
226
195
239
230
198
224
175
233
220
245
210
122
225
118
198
248
184
209
237
233
162
152
140
231
203
201
229
248
154
189
210
175
231
180
158
259
229
195
131
232
222
201
174
166
225
260
196
135
201
231
180
233
224
156
132
203
165
214
231
184
209
169
199
197
228
178
223
192
188
212
171
242
241
198
195
210
236
209
146
201
203
263
292
263
137
215
235
197
185
190
233
247
230
217
206
279
172
269
188
231
226
177
188
182
194
169
153
188
169
184
150
150
195
185
185
178
201
209
204
224
187
198
225
214
232
234
203
265
191
184
151
266
223
234
244
238
203
187
192
241
207
158
192
177
182
223
225
132
191
194
215
204
250
141
245
202
223
232
222
233
195
232
195
242
174
239
232
184
208
224
137
183
187
176
220
201
203
226
187
215
174
234
178
197
177
204
243
228
194
198
258
190
202
183
181
178
251
219
148
154
215
239
210
218
193
119
186
184
166
148
231
245
193
205
239
188
216
231
198
219
159
192
191
199
221
177
232
236
173
187
173
233
234
218
163
254
227
234
234
189
242
185
156
145
160
176
154
195
173
198
133
155
168
161
228
234
229
230
176
219
217
201
194
165
286
218
196
191
181
179
200
212
112
198
153
168
214
229
200
198
256
169
184
157
161
251
278
266
129
192
167
149
183
216
159
195
266
181
234
138
194
201
262
204
215
199
262
173
232
182
230
175
211
147
181
244
204
231
218
189
169
212
167
199
173
237
170
212
230
181
194
178
163
139
190
260
228
190
178
177
201
188
181
164
142
201
214
170
208
245
213
198
165
172
195
155
225
219
202
148
201
160
253
204
165
194
216
128
226
217
210
233
247
144
124
210
239
185
238
208
230
189
142
222
125
206
207
193
177
136
224
175
246
162
237
165
108
235
151
265
242
240
198
211
201
260
137
216
204
177
215
223
188
254
181
196
210
254
180
197
147
206
149
194
238
207
243
215
216
194
124
164
210
189
275
269
209
176
174
197
193
227
173
219
200
168
183
167
195
232
192
255
207
215
235
235
210
194
150
234
235
269
176
237
214
161
260
174
230
206
125
190
260
222
261
227
167
235
243
228
178
171
195
199
226
234
200
174
218
268
176
136
195
253
181
225
178
188
130
215
267
214
158
183
186
191
143
223
175
251
212
195
197
167
168
189
196
197
229
207
229
258
209
141
163
217
245
174
226
161
215
216
216
214
202
215
191
171
162
200
205
178
207
196
211
197
252
196
161
153
192
238
217
160
234
224
142
185
176
183
144
180
225
236
200
219
211
234
230
248
236
222
226
168
216
196
185
175
254
229
177
269
258
236
172
183
154
210
253
248
167
153
166
218
203
209
176
233
196
196
182
188
239
136
208
149
272
183
247
199
207
156
170
171
156
148
239
153
216
220
290
234
182
197
192
123
191
232
204
223
226
210
156
189
239
198
181
268
224
211
212
205
178
208
126
189
142
181
153
249
233
109
190
270
223
171
200
228
223
210
185
183
177
149
178
245
226
237
227
232
280
185
154
236
237
239
198
163
212
231
185
190
244
171
218
207
205
129
223
239
233
213
238
142
231
215
211
235
191
152
266
148
194
198
162
169
218
200
194
188
134
208
194
181
225
208
196
244
220
233
171
223
209
196
196
203
167
225
198
181
209
253
193
236
201
199
265
210
165
237
194
192
206
172
262
186
211
191
208
138
166
186
204
213
185
280
216
188
222
225
221
199
238
195
185
174
198
225
236
270
192
172
208
217
177
220
188
195
227
186
204
155
220
200
277
188
232
209
231
251
243
216
225
206
245
198
242
196
147
176
209
157
163
246
212
167
157
206
212
229
134
176
234
152
193
216
152
255
242
189
253
190
250
207
153
202
246
161
227
243
202
207
191
258
166
176
234
244
182
155
236
273
182
203
220
208
244
189
208
237
210
187
220
194
187
255
196
206
138
169
223
212
226
219
228
196
223
219
221
208
170
173
165
218
195
274
275
249
242
220
248
154
126
184
214
208
196
240
213
249
248
174
203
169
145
223
175
251
233
170
233
233
166
167
212
221
209
225
206
218
189
196
206
170
238
212
218
137
219
221
249
213
194
242
248
214
227
237
216
185
148
197
160
114
210
226
175
221
237
193
263
218
189
206
212
187
190
252
218
165
176
224
237
209
233
103
161
209
204
210
242
268
236
221
241
235
171
169
247
132
157
248
197
212
196
192
254
238
239
209
211
236
227
143
222
219
224
169
181
243
100
203
198
204
212
167
262
216
188
208
215
228
232
244
219
208
168
145
99
138
217
253
137
196
236
172
195
260
139
165
245
215
152
241
178
127
189
205
185
222
153
231
204
174
191
221
241
223
140
199
185
218
183
181
251
194
195
187
155
178
161
190
222
249
183
173
220
227
217
197
215
229
198
143
152
194
272
237
155
235
209
191
170
229
215
185
260
236
178
220
182
143
182
179
218
215
274
229
172
222
198
183
162
203
257
225
195
176
220
175
159
201
212
244
134
216
222
259
204
186
206
214
289
244
234
256
213
196
215
225
227
212
160
169
182
190
176
184
252
186
231
241
166
183
199
205
131
255
228
212
133
196
193
205
211
235
210
221
185
222
181
226
208
230
187
166
238
278
263
266
222
161
141
169
188
212
222
185
182
171
215
210
210
215
226
169
228
204
221
190
193
181
170
195
174
213
214
242
222
234
238
161
156
170
146
257
212
226
124
244
166
221
218
204
159
225
164
239
232
165
174
191
152
229
173
246
166
118
239
221
182
177
242
209
253
210
153
157
230
194
142
211
227
201
138
222
157
204
233
258
199
173
187
227
212
260
184
200
178
228
217
249
141
213
153
274
263
246
265
252
233
204
211
241
218
257
145
233
266
195
224
215
248
174
209
200
215
201
190
220
203
192
220
186
215
228
216
224
156
169
155
187
202
179
111
194
234
211
243
204
144
126
177
174
210
256
221
240
229
206
221
245
179
197
214
215
208
268
183
186
226
221
179
229
212
184
152
174
239
141
236
116
152
259
217
228
178
182
240
197
239
216
235
177
198
244
168
199
164
170
203
216
145
141
252
213
150
180
187
198
228
188
189
202
134
222
200
175
196
195
254
183
250
227
151
178
177
193
261
217
161
250
184
225
194
191
219
253
212
182
116
206
198
192
138
129
203
239
195
227
274
247
224
147
185
212
180
216
156
188
267
165
176
203
210
209
211
190
178
178
245
210
221
222
149
222
160
197
189
217
195
217
171
179
183
258
189
173
190
201
186
227
168
208
291
251
133
225
168
234
219
175
203
225
248
197
240
233
202
194
231
203
231
187
122
219
243
197
211
182
177
194
205
220
165
178
180
196
221
232
206
206
183
223
196
156
190
127
186
205
206
214
246
194
156
186
185
176
162
178
93
213
186
197
181
217
169
188
191
175
173
190
217
263
142
160
230
172
208
198
206
200
217
132
213
210
212
198
241
155
217
218
222
215
189
176
237
237
192
174
225
211
213
220
156
191
212
277
221
147
208
202
200
196
165
235
129
197
198
114
220
210
242
206
226
75
224
142
166
191
169
177
173
180
174
211
186
299
197
216
207
187
193
183
214
189
237
186
231
179
202
198
200
150
207
248
175
187
169
180
199
197
209
171
213
174
153
235
211
210
181
190
222
192
228
184
216
239
252
242
203
242
203
216
190
216
248
227
188
224
221
192
156
183
148
188
184
195
216
236
190
240
196
185
171
235
240
221
171
254
254
198
155
256
152
219
125
192
214
196
222
233
204
184
226
184
227
198
193
200
239
176
228
201
184
207
189
245
192
208
223
194
186
219
220
279
216
167
192
233
192
173
181
156
211
205
202
179
240
200
217
190
139
234
187
237
162
243
236
156
244
175
217
204
199
245
175
210
232
195
218
150
186
222
204
212
231
162
213
168
218
207
202
165
202
169
180
206
226
236
210
197
201
238
150
192
214
255
215
158
180
231
173
220
232
230
151
180
217
158
262
225
205
290
245
169
166
225
202
220
147
168
257
177
181
266
212
124
221
196
172
204
207
183
229
199
204
127
212
242
186
173
204
218
188
126
215
232
119
168
180
223
245
198
231
183
177
250
231
152
226
221
242
211
212
173
174
212
190
244
248
258
150
152
193
207
176
223
216
246
180
242
191
177
221
137
212
149
193
249
222
251
213
234
182
209
238
223
200
205
219
216
188
220
249
219
201
216
161
191
200
201
167
179
188
195
221
145
253
199
172
280
195
167
238
193
209
214
202
179
192
163
188
117
214
197
182
201
206
179
261
223
158
185
209
152
198
217
265
125
212
140
235
147
254
182
177
219
160
240
218
143
154
223
250
218
205
173
270
169
216
231
168
253
227
172
180
128
253
205
275
234
204
207
170
165
248
225
261
208
253
195
209
189
194
201
247
171
173
176
210
205
179
190
179
207
214
216
221
177
214
229
241
190
173
225
240
262
155
181
257
187
173
194
214
199
248
149
199
254
212
206
170
176
249
213
199
164
186
160
179
239
132
148
131
211
274
203
169
173
199
167
188
237
189
185
168
255
212
240
192
253
247
173
244
236
236
224
181
243
216
179
160
285
201
176
239
202
203
227
181
228
241
245
217
213
196
241
190
198
185
202
208
187
182
160
224
260
183
242
138
192
199
159
225
240
191
131
223
213
169
143
199
218
168
253
188
161
202
233
195
202
198
210
190
159
180
188
263
193
148
161
199
191
223
177
201
227
232
267
200
166
253
229
245
156
190
232
166
255
259
212
209
262
210
187
172
177
228
119
220
195
130
174
192
147
216
166
114
172
258
162
206
206
191
260
211
227
234
201
181
238
203
192
202
201
254
292
241
212
182
203
180
227
241
201
195
201
154
222
147
245
208
134
234
201
184
183
251
186
196
182
256
224
189
166
132
263
256
185
148
258
213
178
292
197
223
241
174
213
179
189
151
265
234
180
208
214
152
180
172
156
195
216
237
161
178
207
183
160
196
222
216
253
202
202
216
220
181
155
219
210
148
190
256
206
137
232
205
219
193
191
159
182
179
225
208
161
217
188
175
182
227
237
104
230
200
202
241
201
239
238
189
181
240
244
153
251
256
187
226
197
241
172
206
226
214
208
225
198
206
224
161
198
199
188
182
176
195
220
186
177
239
203
199
202
228
182
191
129
142
188
214
162
192
241
194
172
184
183
177
241
219
200
197
181
215
212
190
191
165
137
160
200
215
221
99
246
233
195
179
220
163
193
252
176
193
186
180
189
227
137
213
155
165
169
118
204
211
168
168
249
162
215
169
222
229
255
197
229
238
204
235
187
199
156
221
226
192
215
157
245
172
150
149
196
235
244
268
144
199
217
223
184
215
203
198
226
243
223
150
161
232
139
155
176
154
232
238
209
229
231
227
214
184
183
210
252
204
237
236
210
183
222
196
186
229
187
168
209
236
211
235
217
131
197
190
202
139
218
233
155
235
166
145
199
187
224
153
187
190
210
216
136
197
246
199
175
178
222
161
194
182
178
185
233
260
144
196
263
200
215
210
147
243
221
159
157
183
183
188
184
184
205
208
244
214
219
145
224
226
222
250
172
219
158
189
208
208
211
206
218
154
216
189
196
189
156
208
199
244
197
222
263
105
217
198
201
145
162
161
185
206
190
245
190
216
189
139
230
229
167
260
176
212
202
147
173
189
195
178
148
224
237
242
189
177
195
200
207
203
268
202
170
212
197
153
184
228
148
193
180
226
231
186
170
187
232
183
206
190
220
141
208
193
226
220
290
206
169
194
205
155
191
232
230
214
216
212
150
211
248
267
189
239
186
206
226
179
160
198
181
176
205
199
176
193
214
213
197
237
244
184
228
200
230
208
213
161
219
198
240
191
162
230
213
224
235
171
200
193
240
191
247
237
247
104
233
219
231
243
263
210
237
187
259
154
224
224
186
213
164
125
202
227
195
162
248
216
185
239
161
206
230
221
197
195
179
179
218
234
150
189
221
164
236
242
262
246
239
229
197
142
241
164
214
206
232
127
179
153
170
203
205
176
214
161
199
289
255
182
179
215
234
216
212
231
194
245
178
231
182
185
214
184
202
181
139
244
224
237
201
202
163
165
157
149
252
218
186
254
252
220
184
205
195
169
244
182
238
228
179
207
158
229
185
230
195
204
201
214
181
196
224
232
123
259
222
224
126
186
176
181
181
227
154
157
219
170
264
215
179
206
181
143
236
200
147
198
169
266
171
198
197
200
217
190
178
237
187
189
204
171
202
186
273
156
229
205
217
196
166
171
225
173
135
207
262
174
133
234
200
227
196
196
202
235
193
210
168
224
219
172
200
184
195
131
192
177
164
209
228
274
178
251
247
245
205
208
226
156
163
204
258
213
214
176
200
214
158
198
235
198
230
165
245
237
178
246
225
176
162
219
224
255
222
240
219
232
153
176
157
189
165
186
211
219
274
253
251
248
218
218
181
235
151
130
195
216
233
157
189
195
164
228
156
239
236
186
174
255
159
164
127
177
207
126
163
215
166
193
244
259
233
187
224
218
129
282
167
245
195
202
193
201
210
223
224
190
187
216
208
281
229
167
192
198
205
207
144
220
218
152
181
212
157
158
226
174
189
230
180
163
174
153
200
232
205
182
219
179
169
157
177
243
168
147
180
221
155
197
232
246
183
220
216
192
171
209
175
227
169
238
212
156
235
156
230
194
183
172
244
208
286
153
207
215
124
185
186
196
176
212
255
205
228
199
164
198
216
221
224
211
218
166
195
218
178
249
199
233
256
154
217
208
195
260
128
198
212
192
209
195
191
177
221
235
250
230
250
238
166
179
204
228
279
253
207
103
261
151
265
182
164
236
207
147
258
225
233
205
194
183
236
228
248
199
172
131
178
180
214
197
221
252
218
208
238
247
206
219
240
182
208
232
196
213
189
177
191
174
203
234
177
175
216
213
170
184
181
203
169
202
169
130
200
164
168
271
199
210
124
163
199
196
189
137
238
187
157
218
218
144
165
213
208
200
209
217
254
202
217
197
166
215
211
225
217
135
186
159
217
221
201
200
207
196
177
245
159
198
220
199
153
223
214
167
225
210
160
240
198
159
229
207
206
202
171
255
247
123
205
226
206
230
187
126
253
226
207
177
234
198
235
217
231
171
178
215
197
200
248
155
159
190
239
228
181
216
194
209
265
216
203
148
204
152
209
203
181
183
149
202
214
239
215
255
204
192
184
179
195
169
212
202
213
139
194
210
169
137
189
178
169
172
219
197
167
206
189
209
202
214
229
250
197
162
194
207
238
218
234
157
212
218
254
141
237
137
215
198
215
179
165
166
180
216
161
205
235
222
194
239
250
148
194
205
172
220
184
188
160
160
246
174
210
245
212
181
149
156
194
186
206
186
193
170
198
223
181
200
208
255
155
219
259
156
269
214
249
199
198
195
253
163
242
195
186
235
196
195
172
176
182
206
281
228
180
281
180
221
205
231
224
184
168
201
169
183
202
191
158
203
202
239
192
217
200
192
178
192
246
278
202
164
209
225
168
212
215
193
195
243
209
210
170
185
205
174
246
238
139
190
131
165
289
274
223
180
222
213
175
225
206
152
218
188
188
203
147
162
211
249
177
133
205
213
159
212
225
231
229
239
172
247
244
180
244
285
170
188
196
149
174
231
170
246
185
232
248
204
192
185
178
223
194
205
236
221
189
165
216
223
228
217
204
105
226
190
182
227
279
243
159
199
231
189
202
178
173
151
126
185
184
197
250
148
179
187
195
208
124
242
178
178
180
205
182
183
169
209
175
166
138
194
173
227
178
228
251
218
204
242
224
167
259
194
195
213
185
201
196
171
158
229
213
225
205
235
181
237
195
250
220
177
223
198
209
210
206
219
226
188
175
200
212
238
143
163
193
225
255
210
185
201
198
256
200
146
175
162
208
211
190
233
221
155
150
266
172
202
210
216
195
167
173
257
265
216
171
176
205
157
235
190
218
208
184
218
209
268
209
228
207
246
201
211
171
236
203
204
211
224
170
169
234
240
180
203
186
217
197
206
171
167
217
189
278
172
201
158
214
164
243
211
221
243
202
194
171
217
210
214
207
201
243
189
269
169
217
229
199
252
237
235
242
236
151
276
154
195
212
213
188
113
176
159
218
240
178
280
208
182
213
175
226
212
241
200
219
209
185
222
188
240
191
236
246
181
148
237
186
231
203
131
230
246
201
195
223
165
195
224
177
202
170
250
173
234
185
190
207
225
262
223
182
224
161
164
156
232
199
180
146
212
169
236
161
192
257
206
225
231
186
214
157
191
188
172
263
212
215
202
227
199
142
204
154
144
229
181
187
174
162
138
254
219
204
145
209
169
235
233
159
151
206
186
111
217
219
242
185
191
208
246
168
122
191
209
184
187
239
165
257
175
209
146
237
196
188
201
207
179
194
181
230
225
217
224
208
163
212
188
200
148
183
175
214
231
136
219
215
209
207
224
152
247
150
183
188
209
163
232
258
154
235
208
236
230
161
207
147
208
151
119
232
211
261
213
220
229
215
219
198
188
217
197
183
249
168
147
232
216
169
189
207
127
169
225
239
129
241
232
167
217
156
159
242
208
225
171
205
218
205
173
236
188
180
241
227
226
177
139
173
221
219
204
178
236
197
201
194
202
205
184
156
214
205
189
215
191
180
198
209
170
183
129
175
165
130
212
162
223
222
293
195
213
184
222
174
244
220
182
143
219
242
179
190
211
203
210
215
207
233
220
182
195
258
194
213
179
154
236
151
130
182
182
244
190
181
257
204
187
158
186
222
190
230
269
205
200
135
235
213
211
259
190
172
180
241
221
183
169
177
144
235
223
227
166
240
284
201
257
205
181
223
212
159
207
182
190
192
215
233
183
202
240
204
224
199
186
181
219
108
256
225
198
221
192
209
230
208
195
185
213
235
192
226
160
226
197
184
192
139
204
213
208
280
234
224
217
168
201
187
198
231
244
266
219
174
220
168
220
133
215
199
222
250
244
211
238
172
156
209
233
180
185
199
222
234
202
209
157
174
206
225
236
256
167
196
192
245
197
210
224
208
145
224
248
167
212
185
195
248
194
233
200
201
128
161
186
204
165
104
188
227
168
135
239
181
214
229
161
146
184
161
116
177
191
194
167
137
215
201
220
198
209
164
172
203
211
181
156
194
190
190
241
152
178
205
223
230
205
160
260
188
231
147
186
209
167
193
266
261
246
260
214
188
199
220
187
204
161
199
257
208
131
141
173
159
208
217
234
180
244
293
163
200
213
194
190
281
159
168
239
192
173
211
174
193
236
196
214
194
156
236
184
193
197
234
157
147
206
137
205
176
194
219
193
222
184
146
133
153
214
227
196
176
185
221
220
181
173
193
217
175
159
232
177
179
232
176
220
229
219
208
203
143
269
199
224
220
241
200
227
163
252
204
151
233
221
223
215
217
212
163
205
198
210
180
234
253
185
169
236
221
197
147
236
214
192
215
184
224
210
207
227
159
179
199
178
206
183
180
146
213
198
149
235
257
162
222
257
167
209
197
196
223
228
239
165
185
152
170
188
188
173
178
239
214
255
163
169
214
241
195
165
208
194
216
233
141
155
261
226
112
187
256
216
235
221
243
211
123
211
243
208
143
213
193
256
213
168
210
212
208
225
148
218
211
196
207
211
228
177
188
201
186
222
214
246
250
169
200
207
202
178
193
130
249
190
187
125
262
203
209
239
220
174
136
183
251
197
158
234
153
169
138
222
282
223
261
175
183
177
159
198
205
232
160
161
233
181
157
147
150
153
258
150
173
187
221
241
185
161
223
221
228
242
251
229
231
238
243
146
278
233
209
227
185
227
209
232
197
185
221
190
218
229
243
201
126
190
203
199
232
172
237
168
159
182
199
211
244
188
227
225
198
241
219
203
246
124
159
247
228
254
211
217
164
191
163
217
183
228
255
233
208
220
204
259
174
262
231
119
221
199
211
153
208
211
237
196
252
130
222
257
200
206
200
196
210
180
258
206
217
202
149
152
180
182
248
255
191
224
163
238
204
189
223
157
248
210
232
182
197
216
255
245
133
233
239
186
283
204
212
170
237
204
192
179
201
159
174
195
259
236
202
135
175
204
180
260
123
151
179
170
188
237
225
231
205
194
276
208
171
249
181
223
158
217
157
146
205
199
213
209
241
240
196
293
166
229
207
162
189
180
158
206
218
206
222
221
222
247
241
225
212
220
167
144
194
231
211
196
206
185
203
266
235
223
202
199
244
174
203
162
234
174
197
178
237
211
237
206
203
173
184
178
218
218
194
232
175
182
214
218
252
173
245
222
251
204
204
124
220
138
161
229
185
202
213
211
225
170
239
190
177
212
234
201
218
243
206
245
225
226
250
151
210
256
197
243
150
181
205
186
227
164
201
165
186
186
207
143
217
165
146
226
205
200
85
223
204
212
167
226
219
225
237
145
235
248
245
224
168
202
194
238
223
163
194
198
158
136
149
180
166
229
228
169
188
245
187
191
219
202
184
162
199
157
196
277
187
205
180
232
195
188
185
192
201
176
251
216
237
214
184
223
182
193
124
223
155
185
183
219
175
197
146
222
179
200
216
183
226
236
216
199
190
206
290
158
194
255
189
192
182
212
227
226
147
145
217
231
179
138
241
223
162
251
240
163
199
172
214
171
198
234
153
220
195
185
218
246
208
279
184
174
218
179
228
218
142
215
200
246
187
209
172
197
192
156
236
190
189
247
174
212
213
240
256
148
165
227
239
223
212
220
238
225
172
195
150
142
232
172
173
189
214
237
231
228
244
209
186
167
250
266
214
224
204
187
189
209
189
186
200
138
150
141
155
131
211
193
194
234
177
230
188
247
212
201
162
202
226
133
235
211
199
181
201
212
226
226
222
208
194
143
207
151
221
177
187
208
123
188
190
127
191
173
252
186
161
173
186
143
217
199
207
226
207
199
184
240
184
195
218
193
251
268
238
186
233
157
222
219
224
178
212
214
165
270
152
175
193
125
184
187
246
155
193
214
166
271
259
227
121
207
218
179
156
190
247
120
183
232
173
200
193
260
202
267
140
222
168
150
257
236
280
219
216
240
236
223
217
186
242
169
238
197
184
116
216
227
161
194
258
178
229
183
196
137
182
202
199
202
236
183
203
213
112
150
188
197
207
209
146
206
267
269
263
207
169
233
230
182
172
193
168
193
154
155
209
164
257
191
119
235
170
189
179
188
256
236
237
114
235
216
186
225
178
192
199
185
179
173
246
243
235
214
209
164
190
242
163
171
126
178
237
151
220
188
234
217
203
209
252
205
148
182
230
164
198
166
166
211
236
183
135
155
195
165
186
122
186
182
132
177
165
268
232
196
227
220
222
151
255
197
186
247
190
228
203
181
222
224
171
119
197
186
160
312
145
215
228
206
232
150
222
271
185
207
261
241
188
287
173
168
184
206
173
230
221
233
233
248
190
267
163
255
252
157
211
180
267
184
194
203
204
195
279
149
191
237
264
271
104
229
198
110
202
197
203
174
228
212
137
223
213
171
242
199
182
190
236
162
206
136
275
224
220
193
152
221
192
194
213
139
166
175
219
168
186
239
214
214
176
223
207
227
192
208
180
238
172
166
234
206
191
152
185
185
188
206
182
251
171
155
208
175
176
127
225
191
189
221
233
188
190
286
239
170
180
251
206
241
179
196
188
219
173
260
199
139
191
178
179
244
232
237
234
227
241
233
159
205
197
219
262
200
254
200
200
219
167
247
249
204
204
224
227
204
160
157
179
197
191
243
217
224
225
208
173
194
167
232
231
225
240
178
197
164
178
203
233
254
144
233
235
213
210
197
151
252
197
272
237
195
222
213
201
274
93
153
245
203
165
199
226
197
229
243
177
241
214
198
218
189
223
182
231
166
245
137
203
178
204
237
222
205
165
170
88
184
224
203
159
208
263
201
186
197
194
261
164
235
159
243
240
168
232
165
216
218
222
232
198
194
194
253
218
157
188
193
244
219
151
234
192
178
227
145
233
233
229
184
242
187
234
174
223
177
135
184
171
256
237
170
211
210
194
183
283
184
203
253
125
212
143
207
202
233
175
212
231
206
197
202
186
227
252
240
176
162
205
149
195
150
223
231
233
245
240
123
270
222
169
246
180
202
200
196
168
217
121
165
257
195
192
188
177
171
186
178
203
174
267
253
153
200
162
224
230
205
187
228
233
210
222
237
158
195
195
226
229
170
224
171
216
199
193
221
210
205
149
171
182
148
194
187
211
216
219
121
219
190
169
117
165
170
234
228
241
228
232
205
199
202
143
218
232
218
164
185
270
210
168
244
212
222
164
155
190
218
262
259
189
182
226
205
185
190
216
246
176
147
224
200
206
209
198
230
228
157
255
191
219
128
210
304
178
195
206
154
183
169
225
209
216
200
216
264
163
251
219
174
271
204
197
146
181
224
237
188
171
189
185
208
181
238
218
161
155
168
166
196
191
143
206
177
178
200
218
179
174
178
215
203
210
209
196
230
200
174
233
219
200
233
97
216
218
192
226
185
175
216
196
220
221
177
226
207
157
175
254
260
184
217
178
222
183
243
149
205
138
193
241
204
212
250
209
157
239
189
210
189
290
171
213
160
213
244
220
213
185
256
206
241
225
244
172
101
179
174
222
184
178
161
177
177
254
198
234
185
239
212
154
188
217
155
228
180
220
190
243
227
225
213
191
209
224
187
157
255
200
181
199
161
200
171
189
174
141
203
184
218
190
214
242
218
247
187
220
188
165
224
189
212
169
169
253
237
203
215
211
198
247
192
262
239
199
232
147
133
237
129
232
196
161
231
254
264
210
260
202
143
215
216
231
194
234
234
220
200
200
154
186
200
224
159
179
121
183
225
230
167
218
165
193
154
172
215
236
197
291
158
204
196
181
203
239
249
258
214
196
204
191
266
214
135
174
186
219
183
181
201
212
221
287
129
255
248
224
231
164
215
216
268
207
266
224
220
139
210
238
156
153
142
212
175
184
195
190
178
217
173
245
227
218
241
178
195
201
222
231
159
200
212
182
162
191
163
214
194
174
160
149
169
172
254
237
172
264
255
192
169
185
225
257
165
200
201
250
206
172
131
188
157
165
186
218
226
197
253
231
243
234
269
211
195
207
166
199
250
251
243
166
134
168
222
221
220
171
190
194
138
162
208
185
187
238
224
182
214
209
209
226
191
198
254
229
231
231
200
217
237
185
208
152
139
199
143
178
221
216
212
221
223
214
187
192
186
191
148
213
161
199
217
250
171
164
210
247
211
246
211
169
175
117
244
244
235
232
116
166
130
241
190
208
203
151
139
220
204
220
193
264
230
183
206
250
224
236
207
207
201
136
247
182
204
250
222
238
247
204
187
180
150
171
163
120
174
159
207
196
238
222
177
167
217
196
145
231
170
263
207
194
170
164
212
164
217
209
271
158
224
196
252
123
235
168
182
222
176
122
166
148
224
184
166
224
234
212
210
242
195
245
226
235
212
139
132
202
218
167
193
253
174
251
189
187
199
241
216
158
168
194
205
300
196
182
171
179
157
249
157
178
214
224
180
209
211
202
186
217
224
209
215
213
187
201
203
241
208
263
220
182
198
198
190
210
226
227
200
260
249
220
196
177
188
194
226
172
178
247
179
198
154
180
181
208
214
132
247
264
211
222
239
271
175
137
243
226
201
186
248
251
150
179
177
142
214
228
267
242
180
215
217
154
224
249
252
186
195
230
222
209
149
194
220
188
140
193
227
158
163
178
187
178
88
179
171
212
204
219
254
231
247
203
192
221
173
166
129
222
183
146
237
163
183
244
231
238
163
237
167
172
274
166
160
153
226
155
221
229
188
186
173
149
217
248
213
221
187
200
234
241
188
163
202
240
124
140
196
177
189
192
221
250
201
205
196
171
204
223
204
200
178
216
246
189
200
203
194
154
149
188
247
202
215
255
217
195
231
179
199
188
210
167
206
179
194
240
237
218
220
192
111
227
233
216
233
172
233
231
209
185
163
157
173
241
230
188
193
241
191
243
275
162
184
203
139
161
180
225
187
176
238
177
172
134
153
190
172
211
166
278
241
206
232
209
201
171
240
145
170
181
198
192
187
207
238
211
266
243
190
178
226
206
168
190
188
210
245
190
225
235
143
162
228
162
236
215
226
215
224
184
112
219
197
185
198
178
114
231
225
216
203
170
272
178
133
217
242
121
169
138
234
253
234
174
212
135
179
210
176
199
285
192
220
240
219
244
192
167
192
219
222
147
181
218
194
219
167
209
191
176
199
239
197
226
212
174
210
236
250
157
150
135
190
229
160
189
194
208
142
167
214
146
210
267
146
251
216
131
205
193
186
176
195
139
216
156
292
235
185
167
139
190
174
196
229
235
166
247
285
269
197
183
214
173
200
206
182
177
170
173
247
203
201
234
213
180
209
212
157
169
204
227
200
223
224
208
245
215
183
227
200
178
172
224
204
203
219
136
250
272
213
237
191
205
213
177
206
139
209
210
202
193
231
160
228
209
172
219
233
223
148
167
226
202
132
154
220
181
124
240
214
195
218
175
203
236
227
193
180
162
215
206
226
211
206
204
206
224
199
186
224
180
235
171
265
160
161
220
187
151
245
209
179
231
167
163
158
163
219
165
193
208
173
148
159
177
241
212
174
221
165
217
211
163
165
221
149
234
213
231
259
177
242
231
231
269
238
236
250
211
167
173
219
202
154
191
188
231
142
176
234
224
174
235
191
173
170
263
175
276
196
190
212
231
267
152
202
223
201
260
172
169
174
240
182
216
212
144
240
188
225
206
169
171
219
226
236
176
236
222
209
148
210
166
176
223
220
191
216
211
209
196
212
238
229
182
157
222
158
211
197
191
166
212
183
234
175
170
214
231
218
208
160
240
265
170
273
192
249
228
198
228
249
210
267
205
153
205
185
152
191
134
204
244
181
159
185
207
183
194
183
201
229
141
220
220
291
111
205
235
150
197
231
151
225
216
272
246
220
165
197
219
176
211
188
182
160
189
239
254
254
199
175
187
208
178
230
200
136
168
191
228
180
216
256
153
143
172
203
245
151
199
211
200
167
214
192
189
215
244
189
246
226
192
240
205
140
191
245
202
183
224
221
231
217
211
202
183
204
234
207
211
196
164
211
158
188
170
194
205
166
169
212
191
242
209
191
232
194
221
158
233
183
192
227
265
178
194
166
203
226
185
241
230
123
159
158
230
150
196
184
165
137
193
243
247
233
152
191
120
144
210
179
178
248
209
193
201
134
183
148
208
210
227
202
241
217
255
256
204
216
186
213
199
222
277
207
195
180
172
160
160
211
193
214
262
194
258
209
217
219
233
180
191
194
246
249
226
240
170
217
171
207
171
168
211
216
202
236
151
251
176
199
187
237
197
158
224
242
234
192
224
258
218
190
248
214
196
215
181
171
159
203
240
135
132
188
226
207
196
208
179
182
260
217
160
244
201
221
149
213
207
217
242
158
238
182
184
177
202
157
174
169
196
193
254
192
138
205
244
252
139
184
219
213
213
204
147
163
206
151
155
233
193
138
237
245
228
209
159
174
172
208
200
198
198
189
219
199
205
199
182
227
204
114
208
185
222
163
176
225
206
186
232
111
185
194
192
189
215
221
179
209
194
262
203
207
215
220
251
180
167
220
189
229
241
211
216
204
250
198
171
213
201
205
231
195
202
244
178
198
225
178
221
201
149
217
134
194
246
198
182
172
154
153
234
211
250
204
192
152
139
242
198
203
198
182
140
263
222
215
218
149
209
220
132
128
252
198
243
174
131
219
249
186
143
226
207
166
186
133
144
200
187
167
170
178
162
164
213
201
206
284
197
173
135
180
218
191
205
172
200
180
176
137
151
256
214
211
237
252
252
214
245
231
251
218
198
108
218
194
213
202
188
270
205
218
162
213
167
235
258
208
249
267
169
149
173
164
248
210
194
247
191
179
209
164
217
211
233
170
233
221
140
151
152
189
215
131
184
206
146
132
257
191
172
193
138
199
287
131
197
208
248
219
142
209
224
189
206
217
170
205
173
164
229
190
266
200
132
248
200
197
211
166
217
119
168
173
162
259
193
237
193
207
186
220
179
250
214
195
219
229
169
197
194
196
239
234
196
193
186
182
227
201
180
158
135
182
195
255
213
138
265
276
220
136
187
240
180
152
185
219
210
221
222
189
180
151
261
190
181
210
176
207
175
243
196
180
189
137
188
184
185
204
180
175
183
214
195
213
149
289
237
241
197
135
219
160
197
220
182
173
197
203
222
183
186
216
213
214
224
215
217
213
208
185
218
215
199
198
165
218
238
187
184
176
183
208
198
269
220
207
189
193
210
234
202
224
196
184
229
217
238
226
158
203
237
151
191
174
140
237
140
163
179
218
175
244
263
136
257
174
241
237
215
239
232
230
212
239
245
186
242
192
285
224
251
201
217
187
222
215
245
252
207
249
250
243
211
261
167
239
245
252
208
178
202
233
213
191
186
249
146
256
196
240
196
207
166
190
236
184
253
221
206
181
175
191
179
210
189
164
145
231
172
173
196
229
185
206
207
175
151
211
240
221
229
221
212
208
185
255
165
175
119
241
155
212
163
146
160
205
146
181
241
214
193
227
203
187
205
163
190
238
252
276
161
158
183
229
176
212
168
210
204
238
198
213
224
233
173
211
212
204
165
231
120
147
205
236
203
260
252
181
192
202
236
181
219
192
203
154
211
163
207
190
170
240
145
188
134
138
201
220
197
190
200
199
233
189
188
206
209
194
191
214
191
181
190
202
206
158
223
233
169
192
195
188
229
224
180
154
215
235
217
203
223
180
176
173
184
196
266
214
113
204
169
172
165
222
187
162
180
260
193
285
204
253
185
214
179
170
205
226
245
196
191
230
260
249
190
156
198
249
240
230
186
173
178
246
188
206
225
217
221
207
210
151
171
164
195
151
232
152
168
265
246
166
174
231
207
164
161
256
243
230
164
122
144
214
200
203
198
191
221
158
207
170
161
204
187
169
114
202
195
207
226
148
183
192
220
250
190
213
229
198
209
235
187
176
159
213
226
199
204
253
204
223
234
169
182
238
225
214
161
120
173
219
208
224
235
176
193
193
164
229
217
179
198
136
106
158
184
227
251
225
176
193
248
252
236
139
217
198
213
240
189
163
222
171
235
198
215
201
160
256
184
170
193
175
216
233
188
164
216
196
181
189
194
259
209
185
226
220
144
228
209
173
203
170
230
178
162
202
182
209
206
192
229
223
195
225
191
176
267
181
164
237
168
266
218
192
212
191
223
187
256
187
188
232
191
211
237
228
115
200
257
195
240
241
271
206
218
157
193
199
220
136
198
169
200
226
254
195
201
229
214
254
211
215
174
235
181
260
161
190
131
210
189
197
196
231
208
226
151
192
153
234
235
275
228
128
178
219
231
216
165
160
253
212
155
170
246
185
276
141
172
225
175
186
233
194
237
209
224
149
243
218
199
165
178
212
198
158
227
143
196
161
237
256
206
201
216
197
224
208
206
164
252
212
201
182
191
222
153
232
214
168
222
216
173
216
204
238
166
176
302
233
185
209
224
195
194
197
200
213
209
159
281
183
242
231
163
201
209
204
176
240
198
193
218
193
224
217
193
194
178
243
154
211
174
162
242
121
189
230
197
205
250
168
156
204
192
187
201
141
222
206
230
237
188
211
242
216
242
227
222
213
215
189
212
250
171
232
266
186
139
130
185
142
143
182
216
198
179
239
192
157
225
214
211
220
194
232
159
199
183
217
212
198
206
214
210
242
171
156
148
208
235
151
222
150
219
220
158
184
217
184
225
151
164
177
180
211
185
212
191
216
190
251
261
190
190
203
189
187
205
165
239
195
182
178
165
151
185
213
245
171
247
224
167
214
236
173
202
174
218
191
193
177
227
249
185
169
265
198
177
190
135
186
221
207
190
140
230
219
200
201
190
97
209
221
247
191
178
268
232
222
183
189
192
254
162
204
143
158
188
195
170
187
223
144
153
223
198
204
192
181
171
176
178
195
180
178
231
206
187
226
161
238
161
255
135
218
160
176
170
237
240
232
217
183
192
245
195
149
233
200
237
179
152
215
168
179
228
203
139
168
220
204
223
225
208
159
185
194
218
176
205
193
230
181
246
175
232
208
224
180
208
188
166
177
155
190
201
183
198
228
212
188
227
235
175
195
139
178
164
173
186
197
194
152
228
234
213
249
188
205
220
192
224
197
162
162
180
224
217
225
201
102
176
167
213
202
177
188
246
217
166
274
225
171
171
200
251
155
151
236
274
211
164
203
245
254
155
198
204
133
149
207
201
230
177
226
143
285
199
234
219
183
229
219
243
221
142
187
220
186
196
131
249
214
226
231
273
160
168
176
216
212
175
182
184
158
182
206
184
224
200
225
132
239
217
174
250
142
216
248
181
199
253
175
231
161
182
161
257
231
215
239
183
181
247
156
194
207
229
138
160
264
185
241
142
222
219
160
170
209
187
161
182
125
213
173
215
212
189
232
175
175
147
218
268
182
202
163
194
123
150
221
211
244
184
166
195
234
159
220
200
196
164
193
223
266
248
182
233
194
193
162
180
188
171
206
203
175
263
199
235
251
181
232
163
281
212
274
201
225
202
235
199
139
157
208
195
171
288
168
245
164
164
188
228
144
224
180
179
210
167
247
204
195
222
191
210
159
194
135
222
160
173
185
163
161
225
153
247
139
160
238
168
248
226
176
214
181
185
180
189
179
248
207
171
216
162
235
215
197
209
247
160
206
125
213
233
179
226
147
154
201
238
228
190
223
201
258
193
221
209
150
200
209
219
174
163
207
222
138
244
162
230
188
224
158
128
158
154
173
157
235
190
218
196
212
209
228
264
145
144
202
190
184
207
193
196
189
180
137
175
170
147
202
157
144
220
207
173
185
219
177
202
244
200
226
214
212
191
254
221
236
140
165
214
216
110
167
191
212
220
242
192
213
236
193
198
196
130
237
241
224
194
193
214
170
128
203
178
178
217
205
207
274
157
255
187
215
222
198
145
200
214
184
221
108
229
219
236
143
151
167
173
195
222
192
165
167
177
251
166
228
142
234
192
202
194
214
181
233
177
234
158
170
199
182
177
178
194
242
229
180
219
143
238
195
230
159
211
225
208
211
195
232
159
168
268
232
222
228
181
125
197
177
179
208
266
152
214
220
211
183
233
244
230
180
216
208
202
161
197
200
182
251
228
207
151
132
216
163
161
208
187
171
209
216
205
212
240
266
187
149
142
190
199
220
196
221
181
249
145
239
190
223
210
247
200
220
242
270
258
201
127
242
231
221
224
212
197
196
230
219
226
231
204
253
220
204
220
256
233
257
191
180
138
206
205
213
196
208
211
179
217
226
197
203
236
150
260
202
185
191
214
196
211
219
189
231
190
214
248
196
183
173
168
194
200
177
248
168
238
209
187
227
151
192
190
191
246
199
215
209
233
195
193
179
132
193
156
188
230
241
182
186
160
214
187
209
195
168
226
136
186
178
167
165
200
211
224
210
267
223
221
190
221
245
164
221
226
234
184
258
254
228
222
230
203
90
210
204
201
235
272
259
228
201
213
168
233
264
162
225
195
144
136
195
174
177
182
214
195
230
192
244
173
188
152
191
166
221
165
211
222
190
165
166
211
231
207
213
202
221
163
152
178
224
193
147
202
162
226
196
225
188
223
147
185
200
176
235
204
211
247
244
148
238
131
196
268
256
301
158
182
153
173
185
262
240
183
233
227
266
225
217
221
208
202
241
269
151
211
246
190
182
193
205
181
197
212
227
220
226
169
203
210
148
222
266
145
130
183
201
174
238
143
157
193
188
223
166
194
242
220
217
250
144
189
167
211
157
168
192
226
237
145
209
197
222
138
107
270
114
192
179
228
242
193
231
199
177
154
172
213
222
208
178
211
174
146
213
171
214
189
241
256
164
189
197
202
226
224
234
182
198
246
213
267
160
207
171
236
164
164
217
231
183
220
202
200
200
184
209
185
210
211
246
229
203
176
235
186
135
205
264
161
168
190
184
242
134
181
259
232
184
165
224
172
203
163
252
147
165
210
194
214
203
193
179
140
210
221
227
162
198
247
226
223
158
157
253
203
169
245
189
154
229
216
276
262
223
259
136
178
195
230
232
209
222
194
154
198
170
258
243
181
184
184
171
197
224
139
207
193
225
227
272
242
183
172
169
247
125
227
203
252
257
183
197
222
256
261
220
163
179
216
183
227
215
174
190
191
218
250
185
206
219
130
209
213
175
178
267
197
193
206
148
173
243
146
179
162
165
229
234
214
212
232
226
199
251
187
132
194
240
207
176
219
258
156
206
219
157
232
131
204
257
183
135
232
223
243
263
214
184
216
220
230
261
174
178
199
175
231
225
192
157
156
170
198
173
251
155
158
193
188
157
232
203
190
274
170
237
155
201
181
175
237
206
232
195
168
205
198
234
205
186
183
174
200
181
175
134
226
192
113
203
183
218
263
182
139
203
250
167
169
240
183
177
145
246
193
183
218
252
259
192
223
195
233
276
127
177
271
207
218
184
182
232
209
173
231
176
240
252
184
233
219
111
164
105
189
208
193
210
213
222
214
152
222
202
206
192
181
261
208
201
155
150
144
218
162
265
212
256
214
223
113
239
227
242
209
198
178
187
264
170
265
254
236
213
213
255
243
177
262
217
200
157
232
197
230
226
178
157
137
169
228
285
195
242
196
225
198
165
237
206
162
226
183
249
146
183
204
172
191
199
220
179
195
109
200
217
210
147
176
216
181
110
202
196
157
231
227
242
243
226
245
184
195
213
236
191
264
195
257
177
167
150
161
273
232
221
139
287
232
215
171
161
146
220
222
165
207
258
214
256
193
258
207
133
167
216
216
186
231
180
197
191
102
181
220
215
188
168
172
192
228
199
140
263
161
219
247
203
216
230
239
234
194
194
128
164
210
225
202
183
204
167
238
142
169
161
217
249
210
252
255
214
180
171
247
181
188
139
161
231
217
186
180
191
172
192
221
170
168
208
187
179
177
223
168
195
156
185
185
166
202
181
173
234
259
202
227
210
210
227
208
261
246
212
220
167
189
147
199
152
218
228
180
204
190
205
203
204
220
151
210
211
199
191
175
203
154
184
239
183
134
157
129
157
195
168
159
167
190
166
232
170
256
271
198
190
276
195
166
226
179
171
205
173
243
228
172
203
191
197
205
205
139
210
253
153
233
211
223
144
171
169
161
199
200
207
203
220
171
184
191
255
236
209
192
218
245
213
147
137
192
230
247
209
217
203
170
220
180
230
202
228
214
195
163
165
190
229
204
227
240
209
226
180
201
201
169
218
219
218
207
235
250
204
110
174
223
226
246
208
228
182
216
191
226
224
223
187
170
213
206
222
165
157
240
168
186
183
188
209
143
224
215
193
189
189
210
178
210
171
216
236
184
229
225
185
230
215
187
151
168
184
207
215
220
160
127
275
209
172
218
200
207
213
201
210
220
218
201
246
147
148
233
198
244
251
236
227
199
180
254
251
175
150
205
188
231
196
255
244
171
212
199
171
194
207
238
196
156
189
199
207
165
222
178
220
221
216
200
143
236
184
190
219
213
184
159
143
218
248
178
237
194
165
220
174
180
231
215
194
243
196
202
194
229
167
205
207
229
201
208
215
228
200
230
148
138
192
213
214
176
187
192
163
192
120
237
257
219
138
103
204
209
180
205
246
175
158
197
166
211
230
226
200
228
232
183
156
214
278
211
153
231
183
183
140
199
210
209
195
211
233
221
180
141
192
187
250
211
206
166
159
198
193
237
222
171
227
233
164
248
158
227
203
217
162
186
212
234
166
208
234
200
169
271
183
211
240
240
189
165
174
209
213
237
204
166
201
206
168
244
175
194
168
197
179
225
267
267
184
167
123
151
177
196
193
197
158
204
242
181
180
160
199
154
213
219
192
198
127
185
225
259
206
135
212
218
216
188
246
208
219
233
230
219
176
236
232
213
216
238
186
211
214
201
207
198
179
225
249
197
199
136
143
170
226
185
168
234
173
277
236
241
242
177
216
214
232
221
253
207
182
169
204
229
177
176
241
184
256
215
172
201
196
195
246
184
176
143
212
190
218
247
121
204
215
195
158
187
209
181
237
220
185
233
227
110
186
179
236
101
236
182
223
223
196
176
170
125
191
255
235
254
184
216
192
170
186
190
200
215
245
181
142
189
211
148
222
229
174
169
193
171
217
185
206
225
214
202
180
225
233
206
210
252
184
171
243
210
197
251
195
179
203
185
143
205
229
192
240
203
261
187
179
176
170
178
242
248
221
271
186
231
172
226
196
173
183
164
221
220
217
236
232
198
248
225
135
210
245
205
192
191
192
219
225
177
184
237
203
202
216
189
255
151
209
242
275
248
245
266
241
206
194
152
202
224
246
179
235
212
180
201
173
222
238
234
201
249
184
183
185
194
170
178
151
212
181
208
241
194
200
159
238
174
178
247
195
208
234
206
167
169
145
253
158
216
201
171
180
181
201
224
213
214
240
185
221
210
176
201
225
180
198
171
196
171
209
199
231
186
103
201
162
282
190
155
232
201
137
196
243
220
267
161
217
192
230
155
142
205
164
198
148
153
249
208
232
241
217
199
122
149
249
281
214
169
262
228
228
197
160
149
260
200
165
131
138
229
194
202
141
212
247
205
197
149
209
162
159
197
188
229
305
147
181
169
193
213
171
234
223
96
144
197
195
220
210
138
133
260
210
199
214
193
188
256
203
208
157
187
175
204
228
228
217
256
194
194
197
165
174
208
163
218
157
231
225
191
199
236
248
255
155
226
238
212
199
206
243
201
235
97
207
273
229
213
207
228
164
169
171
188
226
192
159
197
140
236
274
177
127
223
197
165
189
201
187
158
197
174
204
167
176
192
196
221
174
190
240
170
228
217
213
229
237
191
194
189
201
229
191
169
239
189
220
175
159
157
197
174
165
170
84
230
248
193
189
220
203
240
229
223
165
186
240
178
178
221
188
198
223
216
181
205
157
175
158
264
229
256
208
188
193
210
221
205
161
158
192
171
222
209
171
195
175
63
212
180
132
140
158
232
238
251
187
201
168
234
201
167
209
236
164
219
208
199
257
178
197
175
180
231
212
230
217
234
238
222
187
220
178
230
203
154
207
249
159
235
235
224
245
241
232
151
127
233
200
165
155
225
243
222
101
245
202
198
221
231
253
239
247
108
256
207
171
233
192
195
222
242
158
191
174
197
212
233
204
198
212
219
170
175
220
214
207
218
148
207
209
222
120
219
193
179
212
180
155
238
209
191
257
175
167
198
250
172
209
110
181
155
201
208
190
163
179
236
213
196
198
199
188
112
237
243
194
243
218
183
126
237
209
272
230
246
201
229
186
229
188
170
186
207
228
187
246
214
178
236
233
165
226
160
177
229
228
115
170
136
213
244
183
151
219
166
222
220
165
222
191
201
188
191
277
234
182
193
128
234
190
216
170
178
231
201
156
235
199
191
205
236
196
162
205
219
265
213
228
194
193
197
105
212
182
207
280
209
223
173
149
159
124
105
268
204
214
241
167
227
217
214
176
242
192
214
147
212
206
199
206
227
110
244
207
189
151
222
278
221
196
273
233
193
267
247
161
105
205
194
213
206
213
259
245
186
157
168
185
178
182
176
207
207
239
212
181
200
194
190
179
177
207
217
208
213
135
213
205
187
170
184
240
180
181
139
268
220
196
161
183
202
193
235
186
234
248
192
289
217
232
218
153
189
191
223
242
265
194
176
154
179
195
244
208
161
239
196
214
234
203
243
148
194
136
196
203
210
167
180
227
251
175
217
242
180
217
201
262
153
274
216
235
180
245
267
158
187
194
202
262
195
158
132
232
231
196
227
237
196
112
187
173
220
232
175
226
191
226
184
165
168
219
220
202
108
235
175
163
218
193
186
218
158
192
183
181
209
134
174
254
177
124
159
192
191
186
166
199
170
232
177
224
189
210
178
159
163
210
199
187
131
260
287
207
172
161
213
194
150
173
168
167
189
218
206
248
234
208
157
260
158
182
236
167
142
186
222
172
193
219
190
195
196
213
197
208
245
260
181
187
244
215
172
202
157
197
142
190
190
238
178
214
174
188
260
214
201
168
157
198
189
171
163
192
219
146
114
212
219
236
207
239
192
209
155
200
203
224
245
250
170
236
229
90
180
202
239
202
240
173
178
238
238
194
183
187
206
177
163
252
215
250
205
240
168
252
217
213
257
208
190
172
212
220
232
250
241
185
187
191
145
192
213
194
207
166
243
208
252
213
260
253
209
217
226
158
188
223
121
211
230
206
224
205
244
263
234
119
247
177
167
233
200
241
169
163
165
170
150
167
213
171
143
167
196
206
235
172
182
196
203
215
153
260
214
161
237
207
198
245
178
289
211
136
217
206
176
195
136
217
162
215
201
217
187
194
195
207
236
230
179
227
177
172
187
193
234
215
229
184
202
182
255
145
209
221
225
205
221
195
162
187
122
212
199
192
278
278
173
178
230
154
141
211
246
200
154
259
181
251
154
175
215
185
195
170
196
238
198
223
211
201
211
204
212
231
214
174
197
209
250
235
255
163
196
181
211
201
215
161
194
218
178
162
252
222
151
187
156
188
226
202
147
197
208
216
113
179
138
192
189
247
193
195
173
196
201
201
222
148
163
158
245
267
199
193
150
218
194
171
176
235
224
210
155
227
240
202
143
197
230
228
219
193
168
211
170
180
182
200
244
166
184
184
236
208
199
192
221
181
197
202
236
167
213
206
186
238
258
101
155
209
156
182
195
151
195
212
152
169
190
195
204
163
259
215
206
176
253
193
225
214
209
232
205
188
213
227
106
217
210
190
224
189
203
233
231
223
266
202
179
253
180
175
187
202
216
159
216
155
241
209
160
227
199
239
202
156
135
165
243
204
182
237
228
206
205
198
254
219
200
268
177
199
201
216
139
193
171
217
169
235
197
251
230
215
193
176
207
220
175
201
175
184
193
218
198
232
220
205
218
238
182
125
251
218
263
227
213
231
218
160
194
222
215
193
175
217
246
209
130
202
162
210
249
160
215
217
142
189
224
214
171
248
195
161
196
203
243
287
206
153
226
235
191
178
163
181
206
139
168
217
170
211
222
215
231
180
184
165
182
240
200
240
140
170
219
256
204
228
194
162
203
261
156
254
154
163
161
210
182
154
133
146
227
228
209
185
111
204
168
168
236
212
240
190
189
168
192
180
214
142
212
207
138
237
187
169
210
208
170
126
221
229
168
186
187
174
234
231
188
222
209
219
206
177
170
153
155
220
233
182
153
191
216
171
176
155
197
159
226
222
183
231
201
209
136
213
223
224
166
217
192
236
194
214
253
173
251
221
190
251
119
168
174
218
195
129
203
193
250
163
201
233
193
243
185
219
203
261
215
190
176
208
247
200
149
238
220
189
197
205
251
174
242
162
248
203
172
184
213
241
171
224
208
184
231
245
185
207
162
204
250
184
187
236
188
209
237
200
189
228
161
241
236
186
165
196
195
183
215
232
211
177
178
210
248
226
193
213
170
156
163
209
273
202
263
163
146
219
213
183
229
177
255
223
210
229
178
148
149
197
247
159
234
161
185
181
185
162
240
221
192
170
231
188
177
189
156
152
270
222
133
198
237
181
255
212
227
232
159
215
235
164
256
193
210
205
216
219
181
202
169
158
177
179
228
193
250
176
224
203
213
209
164
201
266
232
183
176
265
192
163
185
172
206
203
233
262
191
177
242
266
251
206
214
224
217
192
234
202
187
253
151
177
139
250
262
207
191
163
246
209
206
239
185
179
166
204
172
212
235
129
227
228
161
227
148
185
213
252
224
210
126
242
210
196
215
196
179
172
231
185
207
225
161
197
184
182
257
199
204
228
195
177
223
226
183
249
193
181
181
214
219
173
152
212
194
220
240
210
124
211
224
217
166
227
262
152
194
177
209
214
164
172
197
238
207
171
205
203
190
191
198
219
181
250
169
242
181
191
220
187
183
205
232
190
199
206
206
208
230
184
141
212
254
179
206
189
184
205
203
141
210
253
169
233
188
194
200
159
232
226
176
214
163
229
197
230
256
273
284
170
193
198
182
236
208
211
272
197
191
170
160
165
181
244
221
230
245
173
215
182
220
224
148
152
186
231
222
211
207
212
190
183
158
162
181
169
161
201
162
152
216
153
195
269
179
201
200
173
157
208
236
201
257
280
180
241
237
180
220
194
129
182
213
121
168
223
218
236
233
160
205
174
263
195
217
176
166
187
150
95
199
193
214
188
240
132
258
222
243
249
225
164
221
211
195
180
136
187
165
197
216
166
226
238
230
197
208
99
177
213
211
211
157
226
262
194
142
224
241
202
192
259
167
159
156
211
198
233
223
167
228
215
223
187
198
204
244
240
201
219
207
251
175
168
217
162
151
166
217
198
190
206
229
211
144
153
159
230
203
207
203
268
205
228
192
234
238
212
181
198
190
183
147
195
211
131
195
201
92
244
215
209
213
244
216
181
199
220
220
194
190
165
187
244
224
157
181
224
227
176
181
219
142
220
178
209
234
252
151
198
168
217
163
207
255
220
236
148
202
244
143
178
220
167
178
234
267
197
247
182
180
194
205
188
202
236
201
183
185
197
187
144
180
228
244
207
173
220
286
173
223
208
167
270
256
238
166
161
250
175
163
147
215
159
214
163
191
217
245
225
187
195
234
179
211
180
178
155
194
191
233
159
170
206
152
150
163
113
213
185
170
180
162
186
261
217
207
239
163
180
205
221
202
204
107
162
251
242
219
248
172
183
170
233
227
239
230
223
193
210
187
185
256
210
194
237
185
195
215
203
228
199
157
243
122
226
163
251
185
193
165
154
189
230
189
233
180
267
198
213
267
157
121
173
274
160
178
180
214
225
175
260
185
201
188
143
249
223
232
259
238
150
159
156
185
205
245
228
172
253
168
163
239
168
145
265
222
220
144
152
209
183
221
130
203
196
239
261
121
219
214
227
220
186
231
174
217
192
234
200
218
163
269
216
221
183
237
209
236
263
225
162
219
269
262
204
150
208
174
224
207
225
179
228
105
213
210
180
193
220
189
125
168
187
202
212
235
179
233
244
247
264
196
144
192
233
207
203
234
234
199
193
197
166
190
177
205
197
183
205
219
228
177
162
150
196
173
212
189
141
156
256
196
212
225
161
177
178
198
214
235
204
214
213
182
181
126
168
146
181
194
194
133
200
206
215
168
151
196
213
250
176
129
238
185
146
144
196
220
211
132
228
231
168
191
176
193
218
229
147
174
218
217
207
116
135
200
198
244
202
247
209
201
263
209
157
223
252
257
237
260
137
252
173
190
211
269
245
194
165
125
205
226
232
222
215
134
177
263
202
193
215
150
209
192
110
192
238
187
163
225
182
259
170
172
167
207
174
176
191
216
175
150
213
194
172
220
213
141
151
229
201
159
215
176
168
133
233
183
180
199
218
180
237
240
168
187
212
162
155
190
219
209
236
246
242
232
240
214
233
237
181
226
155
211
200
245
211
201
163
258
223
279
236
235
170
196
205
208
211
183
226
265
137
190
226
194
222
186
246
224
249
137
186
234
171
223
187
275
169
208
173
188
156
256
222
223
125
268
243
206
187
198
180
215
150
179
182
182
228
174
192
195
233
213
262
162
246
151
223
160
181
118
185
193
153
170
234
184
207
139
237
233
206
218
113
115
190
233
234
200
185
185
214
185
238
175
221
124
202
176
182
215
192
218
217
272
235
176
166
157
212
149
187
194
225
229
240
225
157
181
189
168
249
215
129
208
167
201
190
217
216
206
223
230
180
173
213
168
169
185
178
222
261
166
201
219
274
215
199
148
143
242
186
186
237
158
95
153
217
223
230
238
202
205
147
206
190
154
216
232
146
261
138
208
214
218
174
150
200
205
241
167
162
235
191
241
240
195
236
198
280
198
228
173
237
266
201
169
194
205
200
223
188
155
203
168
229
217
244
207
235
224
208
176
242
229
237
186
212
226
186
185
180
229
228
254
263
233
192
190
245
196
229
159
199
225
142
171
173
170
181
171
166
166
160
226
231
237
175
213
142
190
169
213
184
249
203
177
203
245
211
190
223
168
182
163
165
220
152
183
225
192
274
224
184
190
249
156
209
222
225
187
108
188
193
250
256
163
218
193
224
207
229
230
231
182
164
188
229
262
202
211
239
160
213
198
138
228
219
242
187
190
191
195
255
229
189
203
161
214
250
264
183
192
193
125
204
153
213
244
221
192
184
257
208
176
242
157
169
246
158
222
208
201
202
235
270
180
156
162
221
168
199
175
200
237
207
239
184
251
160
203
214
196
180
179
192
196
221
144
202
157
150
226
147
182
223
209
226
204
234
205
182
184
224
214
139
188
180
199
208
150
190
220
173
219
280
179
121
227
208
191
187
198
195
186
215
128
219
187
186
184
194
233
185
187
178
210
197
211
220
192
196
264
184
267
218
211
183
165
174
229
235
159
198
243
208
212
201
198
228
225
119
190
238
145
190
243
186
117
158
180
195
158
186
237
211
191
207
182
146
209
246
196
243
234
205
236
194
225
190
158
181
155
169
230
200
228
238
171
284
198
189
207
188
173
171
240
195
200
197
213
194
214
220
186
207
157
201
205
147
231
203
249
198
188
178
183
170
271
211
215
216
238
225
217
196
200
166
194
231
187
266
217
199
197
179
220
193
238
253
177
179
173
143
202
202
248
218
240
203
239
212
191
259
216
205
233
256
165
172
219
203
211
213
161
206
250
137
146
164
231
190
196
154
209
194
226
229
244
225
212
176
245
232
238
196
145
193
184
210
237
213
244
199
215
250
238
190
232
246
238
235
177
165
175
221
215
214
205
255
225
202
191
203
215
229
227
204
207
189
218
199
221
232
217
206
222
195
233
258
224
248
205
165
208
242
247
196
214
199
209
179
241
235
156
190
225
165
169
175
234
163
279
244
188
230
127
194
236
239
196
204
217
239
188
158
215
178
214
163
205
177
173
173
240
222
233
266
177
236
126
210
195
191
206
238
171
162
198
170
226
252
190
224
245
194
203
234
256
221
202
208
182
248
230
165
188
145
170
173
246
171
205
138
202
200
243
215
238
216
267
229
224
232
194
160
194
204
211
221
177
181
147
194
163
233
217
247
191
238
185
213
189
203
296
216
122
223
232
190
242
182
152
197
221
159
217
143
180
169
175
225
149
209
188
243
212
196
250
173
189
209
199
227
223
218
155
242
197
138
238
149
222
146
216
215
195
136
163
237
131
169
265
208
165
218
219
241
220
224
161
228
213
234
176
199
219
181
174
104
269
172
141
185
235
210
171
205
240
205
140
188
196
188
170
206
191
152
190
148
199
165
138
253
180
232
225
153
193
106
214
125
265
246
203
187
204
172
234
157
241
227
170
227
205
218
203
214
239
142
186
180
195
219
224
163
116
295
234
179
182
201
199
226
180
230
178
167
130
209
245
202
190
200
218
205
159
180
226
222
215
190
227
176
164
220
209
161
171
223
221
215
199
153
218
176
176
233
243
161
204
208
180
201
221
182
206
202
202
160
220
236
220
138
231
200
179
179
254
217
221
237
241
217
174
252
241
204
215
256
188
219
164
165
183
189
180
193
230
151
214
177
209
233
178
150
228
141
233
182
180
196
185
170
229
173
150
204
196
231
176
211
206
174
119
207
152
233
287
225
204
208
219
128
226
181
229
213
171
168
198
185
272
208
186
214
201
221
132
219
223
204
211
163
199
238
253
176
130
230
176
185
207
243
194
178
189
151
227
209
274
211
208
245
184
167
209
224
222
234
232
257
148
216
173
232
151
209
162
190
212
234
249
193
253
149
195
174
145
226
179
196
169
198
178
229
199
150
157
237
153
189
194
182
228
234
212
190
158
233
272
195
168
158
238
171
243
175
177
163
196
159
180
238
229
213
149
221
183
167
121
223
189
194
236
159
206
202
165
190
165
224
196
180
201
241
224
179
172
204
246
179
189
229
185
257
150
196
230
223
253
225
219
178
200
261
188
248
186
143
268
266
164
178
180
233
164
210
122
172
194
176
171
189
196
200
170
227
232
176
220
266
201
222
216
180
221
224
225
215
220
164
197
182
146
199
165
184
210
157
188
178
149
196
200
186
205
206
221
182
172
193
207
235
202
206
233
218
222
237
241
183
219
219
135
174
141
214
154
205
231
213
250
216
229
210
236
148
213
162
190
223
189
175
207
165
220
197
174
205
242
194
186
267
181
194
211
228
213
213
203
210
166
186
216
226
236
156
151
211
194
188
195
179
183
158
123
152
197
233
164
170
204
186
223
195
149
202
241
260
205
224
239
199
154
175
194
133
217
193
198
236
162
216
229
180
181
205
192
259
266
200
214
229
163
166
189
169
204
231
240
287
200
190
251
181
202
163
210
179
171
211
224
137
178
215
195
198
222
153
245
202
237
219
199
148
218
171
195
177
203
220
166
196
126
199
198
240
126
228
187
219
251
217
256
212
183
208
149
276
196
161
147
259
188
194
226
192
183
251
157
155
209
214
201
121
188
221
185
172
220
230
177
173
232
186
175
202
204
247
211
239
255
208
224
200
201
205
166
236
185
189
199
222
182
167
223
137
121
185
228
187
168
211
242
141
203
165
182
183
146
220
193
208
174
232
231
190
196
150
167
160
153
218
155
208
183
135
180
192
170
184
203
245
191
208
230
189
178
269
236
227
284
194
165
223
218
215
149
134
178
211
236
209
214
185
234
212
191
264
194
188
200
243
199
215
202
152
226
175
260
160
240
211
194
182
204
216
178
289
183
247
165
194
123
204
191
207
180
146
195
146
216
201
245
253
203
218
239
152
164
157
187
157
214
228
186
227
178
184
194
218
228
111
202
237
159
258
167
222
142
137
236
230
220
183
163
123
193
216
175
194
217
210
219
253
175
231
212
229
153
242
213
238
174
181
198
227
199
234
193
198
217
212
239
204
220
232
174
255
177
177
233
108
235
209
157
142
204
156
226
201
213
181
193
240
150
187
143
172
217
181
287
257
175
211
176
171
190
264
223
207
178
182
165
260
215
219
198
223
212
163
221
211
237
153
260
180
223
159
226
196
246
219
117
247
138
166
215
207
164
172
199
222
145
240
229
225
220
206
175
221
192
187
200
236
179
168
155
206
152
239
222
192
244
116
185
238
206
223
222
181
225
183
191
230
180
244
143
196
193
133
215
183
160
182
209
208
150
216
173
217
218
204
186
186
168
168
145
216
160
152
141
221
182
221
226
145
229
198
247
198
174
182
176
170
200
132
205
218
228
255
260
173
208
126
216
237
174
151
205
214
150
189
227
191
266
223
184
190
152
178
230
176
123
194
213
192
196
190
187
184
198
178
193
235
142
193
196
240
189
177
265
170
171
177
233
159
240
288
240
252
182
122
211
236
210
198
162
162
181
206
114
177
216
220
195
186
234
152
217
179
225
148
207
239
234
179
212
192
181
214
207
240
211
210
281
203
195
201
162
180
249
239
197
228
217
200
184
155
260
213
166
160
185
225
178
179
166
237
152
192
208
196
200
257
161
202
190
194
203
188
232
168
204
188
155
190
175
188
229
261
236
199
204
189
136
166
253
224
170
208
225
206
216
210
221
219
261
137
229
242
126
196
211
221
205
192
278
233
206
192
227
147
237
186
229
143
186
224
196
118
255
247
194
213
191
193
174
186
192
184
184
198
185
200
192
130
179
171
276
211
216
175
231
162
164
223
162
190
248
210
233
212
201
155
144
251
151
241
211
192
242
196
132
188
182
223
193
209
176
208
205
178
128
227
223
215
227
211
162
195
230
213
184
208
205
118
141
152
239
198
179
186
220
154
226
165
191
260
233
190
228
272
170
228
285
201
212
225
239
195
220
164
220
181
180
165
188
229
184
213
218
207
185
149
185
225
180
187
218
181
188
233
181
162
183
155
236
250
261
215
207
181
148
172
122
208
171
167
178
172
254
164
213
210
247
174
213
157
233
182
186
200
174
237
126
232
187
190
214
183
192
235
246
194
197
203
232
195
206
216
254
168
207
243
225
150
150
222
153
189
222
237
264
188
132
233
202
187
237
152
229
214
169
189
249
185
126
185
193
118
183
200
243
182
167
272
174
178
175
204
180
220
229
199
211
135
169
207
172
215
220
238
248
228
212
234
172
182
212
148
262
189
198
172
222
93
174
188
195
245
217
164
264
221
161
203
257
157
172
195
231
147
164
165
190
150
207
217
191
156
226
240
165
211
175
197
205
222
189
223
166
208
178
198
194
208
257
206
210
256
172
187
202
228
235
206
156
196
237
232
180
229
188
241
211
230
180
211
172
197
210
181
192
245
226
232
179
259
191
217
204
149
123
211
200
146
226
188
192
201
127
214
180
191
222
285
244
214
229
176
197
185
226
209
228
201
219
219
274
142
209
199
173
176
243
148
174
209
171
226
157
242
219
190
195
171
220
150
224
172
209
212
186
133
217
224
172
250
175
219
165
219
137
252
168
168
213
182
253
189
240
215
130
192
201
213
175
222
207
198
166
215
171
219
151
172
183
188
245
244
171
215
192
182
156
244
190
171
215
196
188
152
212
252
200
247
222
212
166
250
188
228
294
197
197
235
197
220
235
174
210
231
224
130
175
221
195
187
174
236
267
225
217
245
142
184
189
198
235
177
191
185
280
187
168
188
214
203
224
148
188
210
245
226
174
182
204
235
235
149
150
203
211
182
190
179
182
128
183
278
161
212
207
203
172
216
219
201
172
181
257
111
198
229
248
240
259
124
220
238
187
180
206
246
159
169
187
154
184
139
230
204
184
183
211
262
303
241
201
249
140
247
240
236
177
230
210
159
251
248
196
174
167
191
238
265
171
159
205
187
276
192
189
264
226
232
202
141
174
183
193
220
236
205
216
205
155
227
161
137
196
195
163
237
190
190
285
215
183
237
155
150
165
223
157
198
220
205
263
190
164
197
249
201
155
164
182
202
227
236
197
222
219
196
162
204
150
216
135
179
188
146
179
116
189
191
165
217
184
96
201
223
214
185
218
114
189
227
205
212
198
156
239
181
218
216
171
166
188
237
201
217
189
200
204
249
207
188
187
196
180
259
168
242
220
224
191
199
163
213
188
171
192
180
221
251
163
220
231
161
240
167
170
198
209
170
187
173
223
141
187
218
253
156
162
208
194
225
209
163
178
167
158
209
195
192
204
208
226
190
164
229
186
225
210
211
230
173
173
219
180
247
152
215
224
221
200
219
220
204
113
184
192
210
199
203
180
217
207
169
211
210
195
125
183
204
263
217
198
214
284
239
162
169
224
202
245
135
232
222
171
178
140
223
202
213
208
222
184
191
176
179
189
225
155
235
171
245
262
222
183
214
199
198
225
211
231
226
208
192
266
224
168
211
225
199
214
238
195
182
235
202
187
182
202
163
184
236
211
204
174
189
237
213
161
192
220
270
159
232
217
171
242
188
207
215
254
181
181
227
194
209
207
226
111
170
195
217
215
233
209
237
151
199
151
223
189
222
155
129
160
174
149
217
206
144
177
199
212
197
226
159
218
179
118
179
197
231
208
222
250
156
186
249
225
187
114
210
200
169
260
153
200
142
199
205
240
239
202
204
194
211
216
209
174
244
160
211
130
159
261
179
210
174
226
238
232
218
261
244
230
202
191
248
264
184
225
223
217
184
216
208
236
268
246
183
235
233
231
210
145
224
156
161
213
257
239
189
156
231
187
231
220
185
176
194
216
215
208
218
181
207
172
206
211
224
199
199
147
184
140
206
271
201
144
176
238
189
155
217
176
109
207
209
226
213
202
211
228
213
219
207
198
248
195
178
180
161
184
230
182
151
216
233
181
189
233
184
272
172
151
236
221
237
176
129
130
213
284
160
193
180
149
243
183
149
220
201
191
169
160
202
226
211
197
210
194
229
231
220
198
255
195
168
205
240
220
207
138
205
147
166
217
255
215
197
249
170
189
209
174
185
276
239
172
184
176
230
276
221
188
252
176
213
235
220
268
197
183
170
173
195
192
208
233
211
191
179
155
211
152
202
193
213
198
231
205
246
234
243
215
176
226
154
216
202
157
195
202
188
169
160
213
168
242
243
180
155
207
187
164
240
249
182
194
197
248
177
237
188
163
195
288
166
173
239
209
126
157
205
174
149
225
238
202
141
196
248
202
205
164
185
210
176
230
210
230
205
235
135
225
299
199
186
155
206
240
243
244
238
163
157
247
167
215
184
256
243
223
184
185
215
165
164
187
225
171
181
190
139
178
229
243
236
223
195
119
229
209
174
162
193
219
268
204
254
194
233
154
207
150
140
203
178
172
222
241
239
226
166
245
127
207
176
172
204
183
244
137
242
198
155
240
225
139
204
157
208
241
213
186
200
159
161
253
189
205
168
172
201
228
176
171
232
255
239
189
195
219
228
193
208
239
239
153
222
194
239
221
154
183
184
184
182
178
235
216
249
183
238
265
220
214
193
103
161
197
215
226
187
201
200
134
204
205
197
225
235
217
156
175
166
145
168
218
252
164
194
272
164
241
197
201
182
231
184
229
220
164
163
201
233
200
129
226
231
203
123
217
259
171
180
207
224
174
149
204
190
212
212
188
169
227
153
209
111
242
218
156
201
200
199
190
199
196
154
158
188
167
227
211
135
196
234
228
209
200
192
210
197
245
209
205
208
233
261
170
225
239
220
209
178
210
179
158
168
175
202
185
149
212
204
245
200
158
221
261
198
203
172
169
195
183
118
180
179
195
206
235
225
192
215
198
234
139
145
257
191
206
141
198
186
209
160
207
196
223
213
172
169
184
194
125
180
171
226
229
209
214
188
214
198
217
191
263
236
122
178
216
136
182
232
215
227
252
203
161
188
217
185
207
205
233
174
180
166
244
184
207
222
202
147
156
257
197
168
147
198
287
255
222
164
242
183
201
163
238
236
142
199
199
219
176
177
211
191
185
226
162
215
183
147
208
229
237
177
167
220
232
198
157
196
248
192
163
184
210
227
137
253
234
166
170
206
148
126
226
250
173
179
174
156
198
188
234
277
233
155
186
242
196
226
190
204
214
201
212
227
200
214
267
214
192
183
256
166
207
180
262
133
188
237
184
182
222
231
126
193
185
218
232
182
222
194
202
215
204
187
239
184
233
153
214
197
160
170
182
147
180
149
170
169
218
137
216
241
129
239
182
199
220
219
196
211
219
156
214
217
238
165
191
184
194
146
218
187
178
214
142
182
173
220
198
220
204
214
224
174
118
234
240
203
183
178
171
247
242
149
213
204
233
232
182
220
201
214
179
140
150
232
136
151
211
218
249
186
154
170
172
207
198
156
186
200
165
237
252
260
190
185
174
158
256
166
189
146
250
239
206
206
197
207
146
110
188
170
223
170
188
179
207
144
183
208
152
175
254
137
149
227
260
234
242
154
157
228
246
221
156
127
208
206
175
233
191
261
222
175
230
194
216
190
210
222
258
200
221
195
243
144
228
235
195
197
176
170
197
231
178
229
265
227
186
207
205
202
213
172
241
171
184
176
171
179
190
141
265
231
158
231
186
235
228
223
233
191
189
217
242
166
183
204
209
156
258
141
158
171
214
175
232
214
218
227
241
248
191
223
164
159
215
232
194
190
245
212
212
199
143
195
208
147
187
219
207
200
149
225
182
188
184
227
173
248
201
152
164
245
149
221
199
227
242
193
227
251
194
212
252
151
176
138
246
222
166
189
155
167
196
170
223
188
248
214
156
129
201
196
203
127
193
191
189
193
216
185
193
225
164
193
235
151
193
200
139
189
213
212
254
205
176
215
263
186
199
208
181
223
181
239
249
194
205
165
174
181
205
178
164
237
153
198
267
187
159
258
238
250
255
204
167
203
235
165
199
202
178
203
202
178
238
152
208
172
268
215
221
169
146
194
212
245
138
225
171
223
141
148
192
163
245
232
179
185
190
185
197
163
142
197
284
168
160
199
201
209
185
185
161
191
247
155
217
176
152
197
206
180
127
198
205
169
183
249
225
205
235
148
224
191
237
175
194
162
230
271
191
196
192
167
177
139
250
191
199
172
189
156
218
205
195
214
149
228
212
227
108
212
159
166
219
160
242
170
221
211
175
184
214
201
201
177
173
209
197
200
179
182
244
250
248
224
217
227
214
220
176
184
263
155
162
217
285
198
250
245
244
131
213
179
214
256
223
153
188
119
177
186
138
202
199
108
215
265
235
184
211
174
195
219
183
228
161
203
191
164
200
231
261
244
158
209
230
242
219
184
178
179
214
207
279
176
225
212
186
210
191
258
214
272
221
211
194
186
194
240
120
253
245
211
220
195
217
165
292
197
160
183
161
187
190
265
167
170
180
162
197
221
231
199
273
210
198
212
165
242
140
206
157
168
184
254
205
190
201
225
186
186
155
198
213
168
215
205
195
192
202
175
244
151
142
178
169
165
206
182
204
235
211
166
223
214
114
151
170
188
250
161
222
163
152
176
182
211
201
157
201
191
226
195
232
181
255
190
168
167
172
219
183
173
205
110
216
172
230
239
165
135
160
151
166
203
212
229
240
169
227
209
194
165
157
156
127
211
197
191
203
267
192
224
243
198
196
242
136
187
166
159
215
177
228
214
201
206
184
243
211
228
228
176
194
194
202
228
233
190
208
259
207
220
170
223
190
180
241
133
210
176
207
194
176
154
209
246
210
196
163
210
218
232
252
148
215
198
214
153
154
158
216
192
196
208
203
212
249
208
183
197
213
209
181
199
196
192
193
212
171
159
249
225
207
209
201
207
226
178
225
168
181
170
178
237
190
201
219
194
179
227
163
249
208
212
237
191
183
233
197
182
196
205
233
202
200
232
143
190
227
203
222
225
170
189
168
218
249
222
194
195
177
262
223
218
198
186
132
174
207
192
175
241
249
239
175
214
161
149
166
192
163
232
251
169
249
183
178
179
179
183
181
266
161
184
206
171
204
229
199
216
203
175
255
227
221
209
186
211
237
219
187
186
202
214
265
216
164
216
232
199
160
235
229
180
183
172
228
215
207
204
186
216
242
207
177
202
178
194
176
195
153
203
237
207
218
215
196
199
210
210
201
213
249
193
250
192
189
252
184
202
215
234
206
180
153
232
164
197
250
252
186
244
163
198
205
206
227
214
198
239
216
223
235
237
241
192
180
162
171
177
195
173
193
185
242
227
200
141
231
198
157
203
182
160
182
172
198
252
199
136
261
180
201
247
157
221
242
231
184
152
176
187
189
187
170
183
195
161
167
223
155
186
211
228
187
191
172
190
209
197
209
217
178
237
224
174
155
197
217
195
290
209
246
209
206
162
218
256
225
131
199
206
270
256
196
165
204
284
252
229
249
211
223
205
190
158
203
240
197
235
162
198
248
188
192
163
232
146
208
251
212
246
220
180
219
205
215
188
243
227
275
239
227
219
165
173
161
219
148
187
270
259
184
231
218
226
175
221
191
176
156
195
197
212
216
195
267
215
211
164
198
213
236
207
272
217
232
193
200
223
231
155
214
211
178
224
232
168
229
208
199
209
160
203
236
215
215
197
137
207
257
181
214
224
143
208
201
205
241
227
197
204
204
230
192
182
214
198
86
237
211
250
240
235
143
146
254
140
218
126
208
272
287
205
210
215
219
239
181
149
197
182
134
222
207
136
219
167
192
156
158
234
144
176
194
203
264
198
215
216
180
221
160
144
202
239
264
214
182
165
192
199
133
240
204
159
140
165
260
180
237
255
215
250
115
223
114
165
233
200
265
224
150
226
189
200
190
131
200
184
222
226
230
146
230
241
184
156
197
188
158
212
202
199
249
183
186
208
227
183
148
234
166
232
206
222
231
143
175
147
167
249
186
163
253
219
230
207
187
131
200
159
166
229
215
204
217
133
239
226
209
215
219
242
150
227
222
204
205
200
188
197
200
198
236
222
240
210
184
140
178
216
135
169
157
171
256
149
195
161
267
184
126
214
259
173
155
79
164
193
201
223
192
213
233
229
117
194
217
218
190
174
150
190
193
184
221
176
185
229
222
150
179
190
160
183
245
199
226
211
215
212
145
253
205
233
114
222
204
89
209
196
215
237
176
224
218
257
193
215
232
206
221
165
194
173
204
256
194
196
237
198
190
223
248
243
192
144
181
166
223
231
265
203
161
213
259
145
214
179
197
169
141
157
220
263
225
177
177
217
198
193
195
166
166
196
190
213
252
186
176
200
173
148
194
192
222
228
206
206
268
183
199
152
264
287
256
198
221
159
224
240
243
168
149
135
240
248
175
199
153
218
189
170
192
214
174
165
231
163
169
197
219
223
193
142
204
149
148
170
262
231
237
190
254
135
179
236
206
211
222
184
120
230
184
144
234
216
167
209
150
228
197
243
182
178
229
166
178
213
193
211
218
145
173
202
151
156
188
186
152
247
230
164
249
167
155
188
196
146
184
190
164
147
218
200
224
227
196
161
243
199
181
184
220
208
192
126
183
222
185
147
217
153
183
153
238
179
177
239
201
222
265
267
165
208
214
282
205
261
158
225
194
189
231
193
191
170
256
205
192
242
214
198
174
184
228
200
194
179
179
248
212
226
166
236
139
180
184
220
265
244
178
185
211
209
194
255
128
245
245
209
177
180
211
167
193
214
129
198
193
168
182
190
169
168
169
146
213
245
208
145
248
192
183
194
194
159
244
212
252
193
207
254
185
199
225
209
205
219
183
171
196
204
230
194
242
167
193
206
214
211
151
163
232
174
199
167
168
210
221
128
225
244
238
221
172
191
229
216
211
146
196
233
167
201
289
240
185
228
258
220
175
199
180
259
291
216
247
215
188
194
204
212
213
259
231
182
190
159
222
229
204
185
255
191
144
249
255
170
134
238
195
161
236
188
264
171
227
251
219
217
228
165
207
195
195
172
145
243
203
220
193
196
210
139
203
221
222
182
163
166
251
252
165
174
262
196
195
198
161
266
240
231
212
210
183
126
187
197
263
192
173
216
193
183
156
249
139
193
264
181
165
225
204
226
169
185
134
222
159
204
209
238
236
243
239
226
225
197
171
154
174
132
235
248
237
227
201
153
178
195
226
222
170
197
116
243
193
153
232
229
206
229
240
216
160
195
225
209
213
219
153
222
260
239
219
157
212
215
175
160
244
236
245
150
150
217
218
220
211
266
157
179
220
218
223
199
170
144
211
214
178
163
195
220
196
143
226
209
217
157
260
155
268
216
172
165
166
181
125
198
188
164
176
222
234
159
168
124
148
263
139
158
173
231
174
193
193
295
214
188
223
194
189
211
150
199
214
188
266
213
204
200
164
172
148
134
260
182
270
227
222
182
153
227
239
188
217
190
216
228
191
143
236
230
186
174
189
151
160
175
231
201
199
219
244
219
226
231
144
206
159
178
179
198
185
118
216
225
186
218
164
170
231
179
245
263
220
188
260
200
171
233
253
174
176
185
217
218
211
169
255
197
231
222
192
129
224
221
192
196
241
177
225
196
187
137
163
200
199
201
200
226
127
124
153
145
161
197
253
186
165
131
249
231
225
188
152
157
207
155
117
187
163
223
249
205
205
174
234
244
196
200
147
221
264
173
230
211
165
273
177
195
172
197
201
234
181
180
228
211
170
249
218
244
194
189
211
198
210
135
223
233
202
185
257
190
251
207
220
177
198
125
191
192
205
172
166
179
246
172
213
238
229
203
187
153
191
221
251
225
169
178
222
216
200
196
158
194
226
185
233
192
254
130
303
165
186
220
210
251
227
181
217
222
157
210
211
184
243
210
198
239
207
255
188
237
255
234
189
174
218
201
136
151
155
173
210
235
180
205
247
186
232
166
210
188
170
233
166
192
245
220
193
175
217
185
150
277
158
234
288
182
230
233
209
204
151
171
231
164
196
190
206
155
207
265
223
131
148
180
185
175
166
190
195
221
161
157
198
215
204
219
138
194
191
166
162
191
222
227
222
226
225
240
126
289
215
220
200
205
183
227
238
251
291
209
192
176
244
202
186
239
197
198
218
187
159
259
109
196
154
209
181
210
228
225
204
171
213
128
128
158
165
130
234
217
180
237
221
217
216
207
186
213
149
247
250
218
218
201
195
185
192
182
215
202
145
188
124
162
173
167
212
174
236
183
245
175
186
170
191
213
230
165
172
159
208
213
274
272
180
201
240
133
174
239
189
220
229
203
166
221
233
171
250
157
202
205
246
195
190
174
196
178
239
239
133
137
224
178
232
204
184
164
173
237
183
195
238
159
213
179
215
218
113
168
157
149
242
191
114
212
195
200
188
161
121
240
264
173
172
146
199
213
199
240
199
214
184
152
216
209
150
157
145
206
214
247
217
244
224
281
224
197
226
194
223
201
151
227
248
213
147
157
248
123
222
144
183
178
214
93
215
166
199
225
213
154
198
195
157
277
206
209
219
172
248
216
242
178
163
203
219
192
192
268
165
149
192
225
224
249
254
232
223
152
159
211
224
204
180
151
189
241
197
184
188
197
240
210
216
186
230
221
213
214
149
219
243
239
217
281
206
228
226
182
219
146
191
175
245
247
191
173
191
211
220
181
170
142
138
203
230
166
142
211
197
196
123
178
186
209
221
207
244
181
256
161
197
227
205
212
245
216
221
252
202
216
231
205
231
270
262
193
245
275
141
197
227
208
224
242
220
157
175
234
136
167
256
149
207
183
127
138
137
230
219
212
144
260
211
251
134
173
197
154
214
201
284
211
153
240
231
181
227
222
174
229
244
124
219
223
251
290
186
218
149
222
157
244
249
213
212
205
139
174
214
273
181
190
192
221
190
249
229
245
208
226
215
217
197
169
239
160
150
145
254
210
249
248
274
170
135
188
175
225
116
200
234
173
199
239
235
165
168
167
177
152
235
206
144
195
235
181
167
195
213
166
191
127
164
177
291
190
229
153
195
176
193
196
237
230
253
160
246
165
184
179
189
141
216
219
141
207
179
144
127
214
250
157
216
199
202
241
196
256
254
269
151
131
228
248
189
150
211
263
283
231
179
258
235
231
188
194
262
273
203
251
232
158
195
169
232
198
176
197
181
189
231
200
184
135
218
175
201
228
229
258
194
224
227
198
150
195
240
212
221
225
128
189
191
250
167
219
154
186
171
179
209
162
181
135
228
202
215
227
194
210
273
197
245
175
259
212
237
229
224
228
126
215
228
189
216
181
154
202
191
226
216
230
229
157
218
235
244
195
259
236
227
162
184
159
157
170
202
166
154
214
174
201
218
226
194
239
199
201
239
216
227
174
205
193
230
235
203
208
195
251
175
191
211
195
205
170
185
156
169
185
201
190
213
194
176
198
250
188
236
175
226
200
259
234
247
208
248
229
195
179
258
233
228
191
240
184
182
258
207
114
186
141
201
241
191
207
204
230
218
186
201
160
217
203
225
230
145
251
189
179
192
204
182
179
218
152
199
183
180
268
246
156
212
238
199
247
228
259
194
177
192
195
223
191
196
227
106
164
166
215
230
224
188
219
197
226
181
108
232
199
179
203
198
174
190
196
201
228
199
173
174
183
203
236
222
184
213
169
230
184
168
174
184
223
217
204
180
208
227
212
218
209
175
159
214
201
152
166
161
206
224
167
157
123
124
180
231
231
163
238
189
160
132
251
195
215
191
242
221
187
199
207
270
174
208
174
164
210
174
227
210
229
137
203
178
274
215
165
242
247
142
145
172
238
203
207
136
215
190
213
174
273
190
174
232
167
177
207
197
204
181
191
179
207
200
196
215
190
194
200
217
207
197
172
293
185
187
200
177
235
210
271
172
175
225
112
152
251
221
196
169
222
242
227
237
236
204
159
219
224
240
188
182
235
169
218
229
182
201
196
188
191
237
209
152
177
172
226
179
212
126
245
215
214
127
250
198
205
147
190
153
191
244
187
184
203
197
196
188
185
179
275
204
268
192
233
184
187
202
173
205
141
229
203
227
196
241
233
183
231
228
190
227
221
152
207
207
201
204
204
217
189
124
200
292
189
131
166
183
156
226
225
197
191
220
191
207
177
204
218
233
228
253
153
132
180
239
146
201
248
148
190
275
243
266
187
197
229
166
234
201
227
197
211
213
257
215
184
241
180
180
164
223
255
234
165
217
141
197
190
166
214
141
174
171
263
224
208
265
169
146
255
212
171
227
226
183
150
180
218
227
259
207
178
190
166
206
180
243
226
229
134
166
223
187
207
235
161
185
185
206
216
207
255
224
173
167
240
226
192
230
145
143
194
174
239
162
194
208
213
159
238
143
185
185
205
209
244
199
211
173
213
182
242
234
184
237
213
200
157
203
257
226
199
178
164
186
179
166
175
214
208
190
195
159
194
193
192
145
263
214
241
245
238
192
204
216
184
230
174
164
207
182
207
238
172
252
184
157
208
268
222
201
250
205
215
157
217
231
191
165
156
191
217
219
273
218
193
240
189
227
191
197
206
252
211
222
167
216
201
204
210
204
228
167
164
152
166
171
236
189
219
134
194
181
231
212
160
145
160
196
109
173
172
227
189
216
219
118
189
195
141
184
195
187
196
207
207
201
191
257
216
206
228
176
242
226
159
215
231
187
188
246
223
208
261
236
168
236
153
221
195
205
225
277
203
210
228
190
200
183
176
195
194
138
196
134
163
196
171
176
202
147
206
165
155
191
198
283
166
209
119
184
224
244
145
188
177
144
198
136
175
211
190
190
169
190
211
203
235
235
215
229
232
153
156
228
214
209
161
198
228
216
183
176
216
175
161
195
176
175
186
169
176
167
208
252
198
228
182
189
224
238
144
242
257
169
135
222
213
171
190
205
195
194
218
188
201
163
231
226
252
116
138
186
179
198
220
179
178
208
148
208
165
206
196
226
228
239
195
210
213
222
152
169
144
154
244
212
193
185
161
198
281
168
195
203
242
207
226
250
203
161
174
233
234
161
237
210
225
232
141
193
156
219
224
222
225
151
210
196
207
216
206
136
204
188
227
204
202
199
209
172
147
198
244
172
217
185
226
193
209
205
226
198
189
197
268
238
206
212
194
199
117
199
180
186
166
216
194
183
198
151
185
186
236
225
248
257
183
199
122
230
165
238
204
225
231
195
195
183
195
201
134
166
224
207
201
187
194
253
217
240
176
196
269
221
169
201
179
248
238
174
190
232
181
210
210
155
174
225
155
229
149
266
191
242
199
214
245
197
161
189
177
179
171
194
271
177
226
194
188
214
209
149
245
230
245
201
280
168
203
242
212
241
174
266
215
198
182
198
218
209
209
167
227
202
209
253
239
242
193
190
156
170
142
212
227
180
148
201
121
188
164
211
265
245
199
249
257
222
220
197
235
216
192
195
235
146
208
173
249
210
239
234
204
243
230
244
222
173
203
244
171
239
206
181
218
185
147
243
214
242
201
241
171
169
239
262
216
225
162
107
222
175
251
207
174
237
196
221
217
155
176
259
187
201
171
222
176
210
254
211
186
172
203
138
212
249
194
231
255
225
128
234
231
171
217
181
204
176
253
215
152
183
204
182
230
217
205
187
234
157
202
174
190
230
248
197
203
153
238
135
199
192
267
231
236
158
157
206
192
172
232
186
246
249
224
234
154
196
201
176
230
171
204
244
234
240
130
171
161
197
214
207
202
174
215
221
158
206
208
210
195
174
214
157
221
176
205
220
136
198
157
217
194
183
208
198
198
244
142
209
215
245
160
253
236
193
205
207
228
174
243
182
188
164
209
236
245
233
248
223
148
235
166
219
197
244
197
159
252
188
166
175
211
225
244
176
135
173
166
239
197
204
185
210
244
223
232
211
197
238
151
184
205
219
197
191
186
160
161
197
162
180
265
181
205
163
214
196
216
131
204
192
185
187
262
156
166
233
245
175
235
182
226
213
168
147
219
182
248
231
176
194
145
170
133
234
200
212
216
182
230
202
155
171
243
185
194
178
184
185
218
207
223
206
245
210
198
164
238
180
228
152
220
203
209
220
140
223
148
212
231
267
223
233
164
174
220
198
242
210
205
214
227
230
218
151
230
128
166
214
267
159
168
224
206
159
208
180
203
164
145
163
178
154
222
145
169
234
140
152
180
184
136
235
271
276
204
173
201
200
182
197
212
195
237
191
186
219
196
219
161
209
222
220
100
202
211
148
157
217
170
154
138
216
223
232
222
220
139
189
189
216
152
188
155
199
232
203
211
254
261
190
191
258
171
173
235
191
221
177
156
194
290
169
183
163
210
208
220
217
204
184
271
173
175
242
141
209
277
178
227
258
163
179
214
212
235
211
238
178
204
135
219
176
238
192
171
217
181
207
225
164
218
199
180
160
188
233
179
225
135
181
207
200
202
218
197
136
181
221
222
199
168
179
139
193
146
200
197
230
209
202
149
251
194
200
194
249
197
235
177
262
242
141
130
186
261
222
167
199
221
237
231
227
240
168
256
142
181
186
227
214
268
222
198
220
226
243
192
133
241
128
226
159
214
207
201
152
273
231
209
218
219
204
180
225
234
251
160
217
196
207
257
227
170
123
233
182
212
217
156
198
219
203
222
162
231
191
240
238
142
97
239
195
203
136
227
196
273
177
204
252
182
134
183
152
228
194
124
219
155
176
185
156
188
189
250
131
182
141
203
275
219
223
202
209
183
204
195
171
232
261
255
206
245
229
222
190
177
184
229
246
194
236
209
223
198
242
219
183
218
233
172
154
174
193
175
221
257
210
245
213
264
165
241
204
157
182
192
196
231
179
217
244
176
226
241
246
197
160
200
251
236
187
214
268
185
197
201
235
175
160
184
133
223
174
221
230
249
211
163
238
262
244
164
205
187
134
277
164
197
222
230
191
230
176
203
191
211
250
245
204
243
233
201
213
193
172
209
176
169
149
216
227
231
139
211
203
229
147
141
220
258
155
213
192
178
199
293
149
266
240
156
183
265
189
191
169
213
195
240
228
186
200
236
223
196
202
174
195
188
226
226
174
161
190
173
222
190
240
200
195
221
141
206
256
246
220
175
198
174
147
241
159
220
197
164
183
191
126
130
151
184
220
217
200
265
195
159
181
203
166
157
212
277
231
245
218
187
187
207
192
222
245
207
154
186
158
247
201
137
201
219
159
180
264
265
148
175
186
245
213
203
223
222
231
213
204
177
237
271
233
202
170
223
171
162
149
225
203
181
168
151
168
234
185
215
240
204
167
178
189
162
178
181
224
192
246
187
241
233
207
244
219
211
172
198
154
174
216
162
174
188
207
196
199
125
143
272
245
222
195
184
217
166
198
171
185
218
169
226
186
240
248
216
208
206
222
214
131
203
168
193
172
123
228
199
141
185
241
228
237
212
182
225
241
165
183
215
164
190
223
145
234
210
240
143
290
165
203
181
234
229
240
256
195
234
201
185
142
203
195
189
179
192
171
198
222
232
134
172
195
178
194
192
239
160
202
187
210
221
182
161
144
182
206
215
224
217
171
220
218
263
235
206
210
224
198
230
179
244
176
208
210
231
238
127
176
222
245
207
243
174
193
179
194
205
135
157
137
198
224
197
167
185
154
166
176
205
167
225
213
183
138
215
169
196
186
224
211
254
202
222
210
208
170
176
209
170
221
158
216
173
225
179
152
186
224
199
160
199
178
157
218
226
230
198
259
229
234
226
199
130
203
236
214
218
179
227
226
167
199
221
192
187
204
249
162
159
169
235
233
225
190
231
158
181
218
190
154
186
267
172
208
211
172
237
185
196
210
221
223
257
205
137
217
213
217
205
142
240
172
204
159
251
194
231
263
145
167
199
211
228
200
245
174
213
204
175
245
211
208
201
189
176
192
180
226
180
180
180
193
167
187
236
182
181
250
195
217
198
151
200
226
167
188
233
199
238
240
222
200
219
182
229
185
249
221
163
142
157
195
216
222
180
159
190
224
240
193
217
194
185
180
250
228
138
196
189
181
242
204
191
216
189
221
194
172
231
180
171
205
192
202
179
161
177
206
221
222
248
206
220
150
227
193
220
175
165
180
207
194
240
186
179
175
217
248
239
202
166
237
129
229
155
193
219
192
159
208
226
140
167
231
224
261
207
203
233
148
265
184
226
218
228
219
189
188
220
239
146
170
196
223
192
225
137
203
157
224
229
167
211
212
212
156
203
190
186
188
171
207
240
243
152
185
213
215
174
184
194
168
189
225
199
176
159
191
194
199
179
248
199
188
235
187
219
285
157
188
239
190
151
234
195
127
176
248
122
226
221
194
213
187
222
184
252
206
226
249
205
203
135
160
128
204
222
223
168
201
299
184
121
233
187
199
124
202
225
198
196
180
165
132
164
199
113
170
189
194
256
235
195
253
182
165
156
193
240
221
234
261
184
207
243
208
202
139
193
203
210
166
229
248
197
275
184
220
145
282
224
179
162
173
184
187
242
262
226
232
247
186
139
215
182
152
253
178
160
135
216
248
183
128
163
226
144
196
191
172
192
141
245
184
210
205
197
200
199
188
177
220
168
244
246
173
173
224
198
224
142
171
204
171
248
182
188
183
222
272
159
219
236
229
205
168
194
138
190
238
220
184
158
268
217
200
254
205
141
205
159
139
224
204
219
241
227
173
102
192
258
244
220
170
173
225
182
161
165
188
240
147
235
185
192
260
209
154
210
223
145
187
218
187
245
220
214
190
191
221
241
207
271
232
181
177
109
177
234
162
267
229
134
138
171
222
164
213
197
233
198
165
144
246
177
180
233
203
175
208
137
205
176
258
211
219
157
190
168
230
219
215
218
151
249
210
238
175
230
251
206
185
251
213
174
219
176
231
118
237
198
229
153
234
240
160
152
234
195
224
257
222
208
200
206
234
214
236
217
302
138
146
226
229
172
181
185
210
185
203
206
190
195
221
170
139
176
158
216
234
209
207
231
212
229
176
210
197
224
176
166
219
205
180
202
241
226
194
194
255
124
166
200
173
183
227
206
237
194
155
198
192
177
204
151
218
131
214
226
244
187
178
171
190
200
189
196
182
174
140
222
249
217
194
212
213
211
167
247
200
154
192
205
228
241
173
124
171
184
227
217
191
192
142
196
192
288
171
172
156
230
234
201
223
167
204
212
240
184
141
208
228
175
206
230
227
205
164
181
209
148
193
216
221
145
168
225
162
162
234
96
206
214
193
213
172
234
254
223
188
231
187
201
269
176
188
173
260
207
242
197
273
188
202
132
177
213
108
187
225
256
232
194
232
235
224
232
210
281
191
222
208
219
171
175
199
248
216
216
191
235
158
181
162
183
204
185
172
181
199
157
150
210
175
197
257
219
187
212
249
160
200
172
242
254
252
87
179
223
260
226
212
202
187
176
220
202
188
193
152
256
253
229
215
218
165
211
216
151
285
213
191
212
265
129
194
116
226
160
240
189
155
249
151
238
131
198
238
224
158
197
200
205
208
219
176
215
248
167
175
207
203
220
197
208
213
233
234
221
176
187
166
187
142
211
242
241
200
167
153
227
183
173
169
224
165
206
159
87
218
234
238
159
228
172
164
207
165
193
216
181
195
211
151
160
172
212
184
125
198
192
200
283
220
197
220
195
223
233
185
225
179
187
193
243
210
195
196
184
218
168
241
177
221
187
183
235
163
200
260
199
141
207
205
168
206
253
210
188
227
201
188
214
166
209
179
240
253
221
238
156
175
206
162
180
184
210
210
297
195
200
193
195
175
252
175
194
162
223
209
189
180
237
250
177
227
135
239
152
203
146
139
193
213
144
220
216
274
219
183
203
184
266
230
212
218
251
193
174
204
226
192
254
174
170
242
256
203
159
105
171
197
258
205
224
254
254
207
227
141
211
197
179
205
184
241
245
231
211
171
151
201
177
198
169
117
180
204
196
196
190
186
211
143
200
185
223
217
106
163
190
251
192
273
213
186
195
242
229
263
166
191
171
176
154
190
180
238
234
209
183
237
198
244
226
235
153
170
222
179
187
190
216
244
183
217
189
185
244
223
169
172
199
231
184
209
227
216
200
165
210
187
152
212
161
176
238
161
212
271
258
203
192
221
152
201
237
238
183
185
180
156
222
178
215
242
179
172
198
165
209
200
195
192
203
197
165
232
208
179
132
173
202
199
228
196
140
198
262
245
183
208
247
148
204
253
194
178
195
235
184
186
203
189
229
227
217
230
234
240
198
250
240
209
183
154
188
194
205
147
231
205
225
186
228
192
221
188
219
249
237
242
180
221
180
168
186
223
185
205
157
183
188
164
215
240
180
238
209
230
252
242
241
183
221
136
187
223
142
169
209
183
164
254
179
230
145
206
206
140
191
197
237
171
233
213
170
164
231
79
208
224
208
158
197
195
204
180
213
183
200
179
215
165
151
171
193
233
192
184
198
198
163
203
163
226
150
231
259
224
159
210
215
249
148
162
199
279
178
165
237
215
240
171
218
171
206
223
257
182
130
180
202
190
178
173
262
176
241
185
231
131
146
177
220
173
219
220
127
198
189
246
176
222
231
263
184
170
193
170
216
210
179
199
243
211
160
198
232
189
241
186
200
155
222
187
237
235
223
195
236
229
243
175
252
199
186
199
245
245
240
181
226
223
223
214
259
244
231
203
226
194
254
235
207
267
238
186
239
186
199
219
201
239
188
303
202
148
210
174
239
198
200
214
185
134
186
190
142
194
208
201
182
231
183
207
169
182
215
163
235
192
166
236
147
194
194
207
233
204
255
173
259
204
275
225
204
241
225
215
203
234
176
193
181
235
211
201
147
165
262
210
173
208
167
167
201
180
172
208
158
253
185
182
181
200
147
199
157
258
153
233
178
219
137
277
201
195
133
245
234
227
191
183
215
198
185
161
208
207
186
208
220
213
236
223
183
203
156
186
241
214
203
194
177
169
213
189
194
204
157
236
162
137
212
236
238
188
127
226
199
213
213
239
168
123
132
265
180
240
187
217
223
216
215
199
220
157
194
191
220
206
225
245
247
223
179
158
246
171
202
138
212
241
246
178
200
151
242
243
211
214
216
183
163
257
245
192
166
213
204
178
195
221
239
151
165
194
205
245
168
243
248
197
201
287
218
199
268
196
165
168
210
233
248
248
187
202
179
262
168
173
236
202
213
180
213
234
212
156
191
240
182
227
211
140
199
206
271
187
239
207
257
245
192
126
225
141
210
216
214
185
214
220
221
225
224
207
203
190
199
181
222
166
205
184
164
176
207
249
158
224
184
240
208
187
218
223
193
169
222
192
226
227
180
189
189
202
175
203
225
210
130
245
197
231
237
247
242
230
164
202
248
235
237
187
189
176
219
157
172
182
189
233
167
286
184
234
175
188
232
151
220
201
208
135
199
208
188
224
212
174
219
208
207
196
214
192
229
173
201
181
207
178
243
189
144
222
248
218
179
245
210
247
160
167
211
232
193
198
247
214
242
182
250
188
219
274
178
165
167
211
217
216
234
243
200
196
225
222
218
162
140
244
169
158
246
220
261
207
179
179
185
193
250
188
235
165
178
153
240
140
164
185
135
228
239
198
204
153
211
199
263
197
197
176
145
196
149
218
214
197
223
197
149
165
183
199
230
219
188
244
163
137
179
195
201
204
163
226
199
176
166
178
206
217
203
268
158
192
277
212
246
159
140
177
192
203
193
195
248
154
232
253
168
181
203
288
134
189
208
202
211
227
200
201
262
162
148
198
244
223
233
209
219
233
201
239
178
235
201
237
198
191
223
244
120
177
193
165
206
143
215
217
158
207
240
251
213
190
194
203
125
215
184
218
166
166
257
181
150
230
202
147
165
205
177
182
225
233
130
182
216
171
215
180
159
179
247
196
208
168
186
197
220
142
190
205
249
196
192
208
182
256
179
246
199
216
184
182
206
204
174
231
199
208
210
210
148
222
271
183
170
217
189
236
182
212
229
207
214
131
226
189
223
206
211
205
249
197
168
233
221
218
217
188
228
204
167
168
149
224
172
262
181
159
168
214
136
204
218
123
196
168
225
206
178
232
245
260
188
160
191
132
260
162
221
229
237
199
268
152
167
250
224
166
146
216
221
229
252
133
164
222
196
183
217
169
236
159
197
236
146
191
202
241
228
206
147
156
195
224
183
240
217
170
235
256
174
221
212
184
210
184
207
172
202
198
205
222
169
240
154
206
134
206
256
270
198
234
180
204
237
221
242
230
204
259
203
222
181
220
236
223
214
202
224
132
218
191
182
226
198
218
204
214
196
172
196
229
171
188
199
233
229
191
157
197
163
241
226
171
222
226
231
212
259
153
212
153
234
164
200
229
167
212
248
233
233
285
260
237
143
213
190
197
211
207
193
191
171
191
185
193
197
216
217
205
187
218
208
198
205
217
195
222
175
190
150
200
200
248
179
209
192
200
193
200
168
163
186
216
252
265
166
197
254
200
159
184
154
219
236
161
210
247
223
199
182
265
237
241
244
239
117
159
238
268
228
246
225
216
161
234
199
202
186
191
210
180
145
206
224
190
194
195
248
191
226
212
158
204
186
234
132
192
247
176
189
157
220
231
185
200
169
218
178
218
231
245
184
183
243
172
229
200
252
247
232
225
199
236
229
171
170
177
187
203
236
211
227
203
193
125
219
195
191
201
153
197
198
201
166
217
244
259
218
184
222
204
184
167
220
201
233
238
214
167
148
214
171
185
185
244
210
237
216
220
215
277
243
205
256
214
178
245
199
209
147
207
184
161
184
238
170
139
211
209
245
170
220
210
238
213
189
266
193
241
208
236
212
210
278
202
159
208
190
235
232
236
190
155
154
193
188
125
220
161
229
224
228
186
249
236
210
232
160
231
164
154
261
234
274
264
213
180
204
238
154
188
204
214
140
226
210
220
117
224
230
249
264
239
207
203
253
197
247
194
231
210
270
238
235
255
209
179
197
181
212
171
206
153
178
234
238
213
223
219
165
183
199
218
184
167
212
245
181
256
167
229
193
181
236
155
169
182
170
213
174
199
234
217
189
204
122
171
213
181
185
194
220
193
185
228
207
184
239
188
169
179
204
286
178
212
215
218
197
201
210
152
235
183
182
208
172
253
198
185
150
195
201
165
175
189
242
208
197
270
233
232
153
235
232
170
206
165
256
170
188
164
209
202
235
219
170
181
154
288
192
191
202
186
213
139
191
213
200
151
197
239
266
187
180
252
235
177
166
244
204
237
246
214
236
255
190
217
225
150
175
164
259
189
189
149
144
149
189
236
165
222
194
147
232
156
158
198
181
215
245
215
216
231
262
210
172
150
183
195
200
180
258
109
221
248
217
151
255
242
186
234
216
238
189
213
226
216
222
179
127
211
258
221
224
239
229
218
171
200
217
280
175
225
199
245
194
214
238
155
243
261
184
193
210
174
168
205
116
181
187
212
217
153
158
204
152
212
174
194
195
233
201
251
203
194
181
188
222
182
193
227
222
214
230
224
174
173
212
207
147
226
218
232
191
242
229
237
227
197
149
227
246
256
248
223
147
210
230
165
190
170
242
227
223
193
232
225
213
193
184
183
224
177
201
218
205
218
149
240
162
214
225
173
210
228
143
157
196
204
204
166
262
241
192
201
192
205
210
149
169
193
203
159
209
245
205
183
174
178
224
181
178
200
215
234
180
251
269
187
274
222
197
214
200
270
268
171
209
186
261
178
200
135
248
226
204
227
180
249
245
160
185
190
157
245
205
188
202
170
147
229
218
227
179
262
196
213
181
203
165
145
233
171
233
180
210
118
149
228
183
208
187
203
126
208
190
220
182
233
158
190
203
195
202
187
219
146
161
195
205
211
187
231
276
182
171
203
191
198
140
222
234
167
223
225
242
216
203
217
191
191
173
266
113
253
150
201
204
163
222
164
235
232
184
208
202
144
114
169
191
211
191
201
151
231
219
170
241
180
155
234
204
175
174
218
131
241
152
174
196
180
243
187
203
245
210
203
153
249
247
181
194
170
188
136
238
184
162
231
211
179
230
132
228
262
259
217
244
229
174
171
217
182
191
203
210
196
203
236
214
182
184
200
174
140
225
245
211
243
180
217
191
180
217
213
155
157
198
251
194
201
242
263
233
194
169
142
179
198
228
211
220
207
249
184
226
182
208
184
211
166
180
195
229
231
184
225
219
194
206
147
212
240
220
173
223
190
131
135
238
171
172
178
237
189
210
173
207
184
198
186
212
249
105
197
186
258
169
197
211
197
183
211
178
218
217
157
194
190
224
229
204
197
159
256
115
195
169
200
201
181
232
165
169
251
188
235
222
210
209
174
191
255
189
191
213
230
210
244
240
230
171
172
198
239
248
200
208
154
156
142
191
234
163
220
167
181
193
151
149
197
172
203
206
206
238
170
203
237
207
135
167
197
194
265
257
193
207
166
198
242
274
206
250
170
255
135
216
228
176
215
274
192
233
203
206
224
217
196
198
196
222
216
242
236
185
223
203
259
228
242
184
211
213
227
224
185
210
197
286
134
203
157
242
165
263
213
174
214
225
133
177
241
232
239
237
182
201
233
245
182
169
208
95
182
245
166
206
188
219
217
136
180
198
228
204
181
162
161
235
218
198
181
165
196
147
218
219
242
172
227
176
107
239
194
169
273
229
212
210
232
215
177
141
248
179
277
167
182
236
158
201
181
203
250
181
192
272
183
195
147
216
227
161
156
160
216
211
175
186
152
205
216
182
236
195
163
244
199
168
261
190
165
211
223
203
212
240
170
140
249
225
219
184
183
219
156
227
214
187
178
188
195
247
155
193
154
192
186
211
269
192
153
226
228
187
231
260
246
199
227
122
234
156
160
185
235
188
205
221
222
221
218
186
194
185
204
162
191
241
235
150
210
219
236
134
263
237
236
192
169
216
156
210
198
144
239
170
177
208
201
241
238
182
179
216
213
182
217
179
158
202
139
168
146
239
218
263
171
199
204
152
168
249
210
147
202
184
149
228
189
198
122
193
256
189
197
195
211
213
198
176
196
161
219
220
211
195
223
151
153
257
219
233
177
228
162
197
162
189
195
208
180
178
171
281
186
233
254
186
214
156
198
196
218
171
192
200
156
245
156
199
192
178
239
242
199
173
165
214
180
250
128
263
185
128
215
158
185
192
187
233
259
165
231
218
174
149
184
219
238
133
167
228
165
181
204
236
206
156
234
203
133
175
190
243
149
153
226
222
218
277
173
242
223
206
155
231
235
233
203
170
219
173
117
216
179
248
161
186
209
204
200
230
241
175
211
136
200
231
230
156
136
223
173
193
238
197
189
249
243
160
233
301
239
220
252
241
219
272
180
235
188
199
156
183
155
191
216
228
174
187
266
233
215
204
178
239
116
193
202
243
243
166
128
177
171
206
267
180
176
217
184
190
198
223
220
208
211
174
177
197
196
140
248
156
168
207
248
159
204
199
180
143
209
197
182
184
172
216
192
172
259
180
245
184
226
179
221
250
138
242
197
205
168
220
149
218
139
194
188
214
205
222
220
189
141
185
163
245
196
231
238
214
283
169
214
153
207
192
223
166
228
159
255
182
220
250
190
212
252
228
171
165
206
235
160
187
188
197
192
252
197
218
228
170
197
246
221
243
190
163
229
171
183
224
232
242
151
155
185
235
147
163
290
268
219
208
271
231
251
146
184
184
169
225
145
203
166
209
209
173
279
164
182
181
208
173
212
187
151
220
196
141
187
204
191
156
198
189
235
223
134
225
165
272
232
224
201
172
140
226
259
237
170
265
227
186
163
191
205
157
194
250
234
200
214
172
230
192
202
164
189
207
163
217
216
166
233
196
214
212
244
237
233
182
131
220
253
206
214
181
189
188
232
236
133
178
171
251
242
215
216
197
167
242
188
227
205
145
203
222
186
157
231
198
150
139
180
216
272
199
225
205
123
254
207
220
138
274
178
213
237
210
208
160
207
218
205
189
182
215
217
241
209
178
171
179
227
206
233
184
194
181
177
159
192
210
147
97
178
186
173
150
188
206
221
202
208
215
186
196
236
214
174
157
188
180
184
216
196
199
162
271
190
227
168
169
190
189
149
200
208
225
160
200
270
209
204
161
248
119
204
232
115
240
236
196
228
209
189
215
196
188
193
186
276
211
183
256
195
168
175
255
135
233
154
189
208
229
183
189
191
177
251
215
220
135
242
193
234
202
233
192
166
150
172
126
152
182
226
188
224
245
183
223
192
217
167
275
209
236
255
266
215
237
168
174
213
184
212
242
197
267
152
248
161
227
221
193
193
193
227
276
225
239
223
170
182
154
208
231
187
170
257
250
236
183
219
178
204
189
215
227
238
206
152
172
210
205
185
202
143
201
169
190
196
162
175
113
196
212
170
215
200
221
187
186
223
149
223
156
184
187
209
159
220
220
205
167
214
127
175
209
199
240
207
195
219
228
257
193
218
151
194
194
189
173
146
215
217
231
183
162
185
199
231
199
205
240
185
165
218
166
209
262
233
192
217
205
251
205
162
164
190
164
210
232
235
228
222
223
153
241
181
243
193
234
228
198
190
255
211
243
238
182
226
154
184
245
154
245
221
169
240
160
275
156
248
211
145
238
209
181
154
149
172
147
242
193
142
254
234
144
173
188
188
168
229
181
231
263
211
167
148
208
202
230
201
221
195
221
165
120
215
174
224
176
197
186
164
240
239
187
201
233
169
246
202
141
233
172
170
188
201
249
239
232
216
179
172
178
243
265
227
154
189
192
147
196
208
225
218
204
181
190
217
240
183
210
188
202
208
200
244
145
228
212
283
157
178
173
187
220
157
242
200
187
214
227
229
182
185
158
243
167
243
194
211
231
235
237
256
187
266
213
239
215
236
236
171
227
211
194
141
193
195
171
207
179
187
203
201
205
174
224
160
194
202
203
127
162
156
229
152
194
191
210
171
198
219
192
185
232
223
205
173
195
214
253
230
233
211
208
207
184
224
186
188
211
137
186
217
108
228
184
169
212
188
209
168
220
265
182
233
213
213
225
140
191
204
137
218
225
153
235
198
250
158
223
183
187
206
254
213
159
248
128
197
191
171
211
240
189
123
176
223
269
134
238
238
185
172
195
168
186
281
224
225
208
129
236
161
170
189
251
205
136
225
168
172
235
204
212
211
193
258
254
219
186
187
251
223
194
175
236
186
142
282
211
188
195
145
151
206
208
172
198
239
199
181
194
258
207
238
191
197
209
248
187
154
221
163
157
148
221
218
160
243
199
222
227
191
245
228
187
155
196
206
162
245
184
193
210
214
229
199
212
166
206
180
192
237
174
205
202
185
178
172
178
180
146
256
200
171
219
203
259
228
185
247
184
219
213
199
195
186
115
191
180
200
182
212
220
207
198
171
208
174
123
240
202
210
188
207
210
194
222
191
165
239
146
260
191
201
218
192
199
244
215
132
238
227
165
213
236
232
222
187
192
234
259
205
242
187
151
234
188
181
171
197
191
203
142
228
221
265
186
144
154
180
191
97
206
187
146
174
192
230
197
175
193
184
158
208
216
205
191
171
148
197
203
174
210
146
195
240
150
212
167
219
176
206
197
231
239
168
193
171
191
178
196
227
234
219
143
214
214
213
157
189
181
199
211
245
219
226
191
208
142
201
208
157
278
235
176
186
201
203
241
159
260
226
253
241
260
190
211
225
219
210
197
237
226
183
254
179
215
128
226
237
228
218
195
230
152
246
168
175
224
272
237
217
220
225
217
116
134
223
203
173
190
185
210
148
125
228
230
263
179
202
160
226
174
206
163
160
171
172
255
168
227
190
180
176
242
211
215
184
181
270
175
212
214
193
213
255
168
209
199
179
192
173
174
217
212
172
189
212
230
181
181
145
204
197
128
196
163
197
151
225
199
240
245
254
170
165
147
186
223
185
255
157
217
214
266
206
235
176
212
238
181
213
246
168
135
123
226
217
198
195
176
220
162
212
200
122
220
186
167
196
182
226
164
159
166
243
198
208
210
205
178
177
208
210
181
170
226
181
215
212
217
223
132
178
185
184
219
193
191
218
204
149
228
190
132
166
206
169
142
176
167
211
221
137
182
210
214
200
215
195
215
255
235
200
235
242
173
266
178
222
216
196
218
221
237
250
182
221
224
242
216
198
160
202
186
252
197
258
145
228
229
145
196
258
144
264
131
184
215
203
184
260
223
204
164
181
234
173
163
209
185
211
151
158
210
169
231
196
164
215
223
203
226
190
198
236
128
202
258
229
205
190
241
212
166
160
246
157
209
251
217
194
181
199
195
222
215
218
193
226
198
224
207
201
210
212
246
230
207
224
213
173
250
214
152
178
124
189
183
224
172
240
174
219
129
244
204
234
266
250
225
207
184
147
222
223
219
193
201
157
219
228
217
144
237
179
224
180
197
217
187
211
197
200
212
224
218
252
205
168
200
204
193
228
239
231
171
205
234
160
209
226
156
149
192
159
231
186
190
186
152
210
219
134
194
223
220
264
228
160
169
206
208
179
180
189
205
214
169
181
190
134
182
248
206
171
201
182
238
231
206
187
176
221
140
96
206
212
202
216
141
197
163
236
179
220
252
161
154
181
241
93
244
220
201
166
188
212
195
245
176
172
148
233
196
193
205
211
161
247
237
259
175
223
158
133
174
231
211
248
240
176
200
222
175
208
147
222
221
201
143
169
216
180
198
233
264
154
174
168
185
188
213
219
192
193
217
162
216
113
217
208
172
173
211
197
206
183
202
130
166
171
138
225
196
205
143
191
195
222
256
219
173
199
155
184
158
230
188
162
184
160
270
196
212
217
234
215
227
195
219
208
169
204
199
198
221
183
220
176
181
222
240
200
235
179
188
178
259
172
288
188
259
248
170
215
162
228
115
133
235
189
244
235
142
199
220
142
217
193
200
176
189
247
235
184
185
180
97
238
194
171
222
244
223
158
171
200
179
160
124
281
191
202
116
174
213
268
216
164
165
211
222
246
242
212
240
180
194
242
170
230
243
172
196
189
183
254
222
241
229
162
134
201
208
205
182
211
193
209
166
159
132
173
163
238
222
207
221
219
204
215
139
181
225
145
146
262
192
221
221
222
206
247
202
166
234
197
182
130
180
171
142
207
130
226
231
258
210
130
206
204
156
161
210
189
177
271
196
223
240
194
212
222
227
186
206
199
187
194
168
190
207
210
139
260
196
234
206
232
132
220
175
208
241
234
250
172
112
159
189
188
228
221
194
158
188
212
161
173
226
267
238
149
187
198
200
155
220
239
199
168
187
226
193
180
228
181
189
178
159
210
164
190
194
162
175
306
217
168
139
211
159
247
182
164
188
212
202
220
178
179
165
251
140
181
212
187
191
191
196
195
158
209
194
224
149
198
200
213
194
167
235
221
204
204
179
194
241
215
162
240
204
211
249
147
235
248
195
178
272
190
114
208
235
170
229
115
226
172
179
174
152
164
250
170
189
140
167
254
194
267
181
224
178
249
219
290
236
176
190
166
192
181
261
150
222
153
192
212
234
245
132
189
235
225
234
225
139
212
137
200
233
199
228
126
219
260
210
248
228
198
124
186
157
153
192
183
98
145
159
206
173
221
200
151
155
165
180
174
159
278
173
250
192
217
185
201
173
247
175
247
227
162
210
140
187
194
167
211
161
235
159
222
206
149
213
210
290
217
191
138
232
258
236
243
238
204
215
240
168
239
219
196
211
222
236
251
248
225
237
256
203
201
241
200
243
249
240
200
130
233
147
192
206
173
210
186
220
162
191
267
248
235
224
189
183
194
180
238
220
186
204
202
240
231
227
170
216
231
207
244
194
196
164
218
204
187
226
186
213
207
209
239
152
197
207
205
232
230
220
229
183
206
164
181
176
187
233
161
230
207
271
172
192
174
209
221
156
235
223
150
274
244
174
199
169
232
218
221
261
209
232
211
175
201
216
156
216
183
210
185
137
201
158
195
203
172
159
165
200
124
134
242
199
117
154
246
254
193
222
160
171
206
272
227
240
214
202
224
157
205
258
195
215
198
197
237
239
246
205
182
174
206
248
142
180
247
233
202
195
240
182
169
194
217
121
235
230
141
206
243
193
246
224
144
218
225
108
180
211
187
172
243
202
239
187
165
245
198
152
177
262
192
188
257
204
154
220
187
168
227
194
207
171
156
172
227
149
169
174
238
192
200
162
236
138
125
165
161
175
204
203
142
210
208
228
173
156
142
189
196
147
205
175
217
213
220
218
195
213
180
213
204
208
170
249
202
194
182
173
134
216
224
261
187
217
211
236
173
225
136
231
209
250
239
215
221
212
193
186
164
231
252
201
202
245
212
128
207
209
210
209
156
142
250
204
187
154
197
196
225
139
206
252
207
196
216
193
197
209
221
245
155
172
199
154
265
156
234
234
219
224
217
233
232
213
155
246
220
174
202
229
256
174
161
206
187
182
203
196
216
248
153
165
150
175
235
161
221
245
182
219
241
193
234
194
258
222
209
141
168
240
184
201
237
216
163
184
158
184
162
208
179
141
136
190
168
201
187
213
136
182
213
197
149
161
207
235
183
214
188
136
188
165
200
210
151
187
237
163
153
229
162
168
190
223
233
220
212
194
185
255
231
228
146
192
183
199
241
206
213
228
191
192
155
225
219
225
175
179
147
224
178
201
258
239
170
192
190
197
193
212
214
220
206
157
224
209
166
255
207
236
257
174
175
214
177
206
181
169
243
234
136
215
181
200
196
198
173
200
195
148
219
147
131
208
166
252
193
226
211
241
208
203
232
175
166
251
242
195
242
246
205
247
240
161
260
239
235
144
160
200
159
261
216
176
213
159
215
228
215
248
203
152
203
237
218
203
191
213
155
205
223
199
186
222
245
210
177
160
170
150
254
171
208
181
214
175
152
240
212
225
225
162
201
106
244
227
133
149
131
197
208
210
163
234
212
147
259
213
197
225
188
190
146
255
184
162
201
176
236
186
257
247
179
173
202
247
196
183
176
208
173
172
229
190
242
196
240
217
171
165
179
187
240
224
206
145
185
213
166
230
213
193
233
187
192
244
230
145
134
194
182
227
163
154
152
182
238
247
238
207
181
210
219
222
194
175
213
202
154
237
161
215
216
262
171
228
185
202
274
238
236
221
187
169
195
176
189
242
187
213
208
218
227
196
277
230
165
203
246
192
209
242
164
128
210
226
201
213
204
218
190
185
201
244
243
244
170
237
186
254
232
234
265
279
230
186
152
218
259
190
212
229
236
187
195
177
177
181
272
163
179
239
248
237
208
129
261
156
205
252
225
140
174
278
208
237
215
215
124
241
250
192
175
264
152
184
163
183
203
218
178
200
197
224
184
262
185
206
206
194
222
219
166
257
249
175
163
271
207
171
240
183
177
208
179
219
212
229
205
174
226
245
177
190
191
148
184
145
118
175
219
202
150
241
163
199
181
174
177
200
134
92
188
219
220
247
239
226
216
196
224
175
200
148
189
178
246
202
215
250
201
236
203
157
166
143
240
126
268
214
200
232
235
213
214
164
208
228
179
189
156
229
225
233
151
254
156
139
225
182
238
172
182
233
153
230
197
146
173
189
210
129
262
215
240
232
214
161
213
230
217
149
211
217
138
221
192
234
151
129
207
248
185
284
193
149
152
169
176
154
158
182
229
176
221
182
144
189
178
252
206
207
207
184
187
190
203
260
206
228
209
219
195
215
197
163
186
197
168
233
217
232
225
136
207
205
228
224
196
241
139
171
223
151
262
176
187
255
207
223
162
216
157
174
155
169
223
202
180
167
181
131
201
248
222
216
185
223
199
216
209
222
249
290
221
250
188
150
243
208
168
162
228
197
215
203
187
218
166
192
150
188
237
154
253
153
220
228
202
183
186
200
221
221
218
181
176
184
176
154
227
239
246
196
169
198
242
198
118
241
215
188
216
225
217
163
219
247
187
202
188
190
261
205
181
156
187
183
142
197
209
206
205
180
204
245
207
200
187
161
223
167
196
237
191
200
220
184
214
208
211
138
230
188
184
223
130
176
217
151
129
155
215
254
194
225
173
228
135
221
221
196
250
138
190
263
197
186
174
212
160
164
193
211
142
144
168
128
142
216
138
211
176
230
250
206
243
199
153
226
242
112
140
199
165
188
222
157
171
176
166
199
186
235
234
228
194
158
215
159
146
193
162
223
206
199
219
182
187
177
210
190
234
255
202
180
214
190
155
184
185
193
193
193
209
151
138
162
246
156
188
230
275
225
203
221
227
158
153
206
175
242
164
179
216
230
163
205
222
212
156
199
191
249
147
144
215
251
228
196
218
164
264
196
205
218
170
189
222
145
209
211
211
199
246
185
229
178
171
154
232
195
190
201
174
232
221
184
193
210
243
209
172
153
143
225
182
209
248
178
142
228
189
206
194
207
286
161
215
235
221
141
233
199
229
245
190
138
211
146
238
268
209
186
179
246
205
204
285
230
121
192
158
179
194
198
216
193
201
200
184
267
99
215
225
211
190
215
234
272
228
244
197
272
216
139
189
216
233
263
129
164
160
206
211
190
154
180
225
196
207
217
224
161
202
230
277
104
192
137
174
244
193
174
188
181
196
190
192
223
183
273
187
194
150
199
256
242
240
262
199
228
220
257
255
213
276
154
178
227
203
251
230
182
161
185
148
145
247
230
241
210
218
190
208
233
199
195
196
163
164
236
211
218
164
201
121
223
204
198
200
242
157
234
191
183
276
202
194
183
185
109
212
201
210
242
214
227
218
153
248
254
214
226
189
250
209
207
223
186
196
174
176
228
231
181
196
206
202
177
184
210
166
259
218
191
219
133
194
226
220
226
241
275
163
193
155
207
240
225
93
187
244
225
204
242
199
216
241
206
193
204
194
228
150
210
200
254
161
211
223
175
233
196
246
208
190
228
228
226
191
173
191
129
160
259
240
164
171
200
182
196
211
235
247
191
155
248
219
220
223
180
188
256
162
242
180
251
211
222
258
199
171
192
165
195
216
195
132
226
163
196
185
261
130
151
188
148
198
162
247
242
183
215
245
219
172
187
216
236
175
194
202
238
194
141
231
229
191
265
240
205
191
185
229
218
239
231
121
143
252
151
222
211
187
174
260
201
186
207
210
237
248
225
195
177
209
251
170
216
114
196
249
213
206
201
198
273
244
171
172
223
186
263
179
112
233
180
221
152
250
162
200
149
181
222
203
152
283
164
205
197
201
215
201
212
197
195
157
211
177
196
176
227
247
201
236
204
155
173
191
182
194
173
135
200
191
219
189
162
224
180
236
161
258
192
255
152
182
159
177
153
193
154
190
200
157
253
204
251
222
203
232
222
238
198
184
251
180
242
152
207
209
219
220
174
195
226
194
203
180
245
209
174
221
159
231
197
183
185
196
154
234
165
166
225
191
207
211
184
199
237
240
166
227
199
159
168
191
206
203
221
222
161
205
221
267
258
199
245
197
221
185
193
110
204
192
222
222
194
189
210
238
239
219
238
185
207
188
187
227
232
183
249
177
174
221
233
198
272
246
192
155
208
209
239
185
198
207
218
230
204
207
262
175
243
202
237
155
219
191
187
205
237
225
243
285
227
159
173
266
238
248
225
211
238
168
230
155
208
228
179
176
168
235
203
179
254
155
183
220
173
134
154
179
164
217
202
201
215
176
190
197
216
148
195
241
190
189
202
193
201
202
218
205
237
214
225
218
169
212
176
231
202
200
158
186
170
198
169
172
166
180
177
245
229
165
158
232
175
170
226
119
165
240
258
225
237
152
206
167
211
199
117
162
178
192
138
206
196
264
228
179
212
232
203
165
201
241
157
208
252
163
255
178
216
205
172
190
209
185
147
194
150
220
179
248
180
264
219
180
206
240
202
158
174
244
206
175
151
163
184
175
242
195
206
208
108
205
207
244
222
205
149
189
180
224
214
181
213
224
156
202
208
235
192
208
189
254
233
240
218
220
211
194
143
182
262
202
180
192
234
163
150
222
194
161
198
245
295
254
160
219
203
178
236
188
232
175
192
180
220
130
209
214
207
199
167
247
143
194
263
262
192
256
137
223
241
198
136
175
181
144
224
225
195
179
150
135
205
219
149
187
197
191
217
180
181
267
237
194
172
242
146
230
164
181
177
204
168
151
236
253
204
182
229
213
199
205
171
228
217
183
122
124
219
133
200
207
197
196
178
198
181
157
167
120
175
226
213
137
247
207
213
153
250
266
199
207
232
138
170
271
223
163
188
232
201
231
212
199
254
167
237
181
236
177
162
209
298
195
160
200
207
216
216
213
217
206
211
186
203
226
200
217
185
201
249
131
171
180
189
210
208
220
239
225
283
198
190
192
174
208
206
172
191
223
124
245
205
214
217
160
191
249
184
198
264
213
196
199
225
244
231
207
178
188
252
242
227
206
249
151
242
189
186
204
194
208
183
217
220
135
253
173
229
153
215
150
220
216
238
217
192
225
171
182
221
218
255
212
106
213
151
243
228
202
213
157
205
210
178
206
189
207
238
210
205
217
153
214
169
211
215
181
228
185
187
226
210
201
188
247
232
111
211
198
224
207
236
234
207
212
152
201
180
158
131
188
104
233
218
205
210
238
214
201
233
238
187
190
167
206
148
133
275
212
202
189
212
216
214
254
187
246
195
183
194
200
194
224
139
200
190
166
124
137
236
199
200
194
187
195
229
182
180
156
169
166
213
280
231
240
148
207
227
194
215
175
230
258
166
230
196
227
186
216
220
205
193
177
195
125
224
224
144
214
221
240
230
232
210
175
164
159
230
191
175
153
154
160
247
179
211
186
135
241
213
247
203
193
123
166
218
191
240
198
220
200
253
201
211
262
180
249
216
233
236
150
201
167
229
182
199
163
221
215
134
254
226
163
159
182
132
187
207
184
230
170
140
185
168
150
161
167
220
138
289
170
186
205
204
197
181
246
169
252
231
236
203
220
192
175
206
223
231
250
135
181
163
205
208
225
243
187
227
212
108
242
131
190
185
207
212
213
218
228
209
182
205
187
210
225
206
201
273
210
148
203
166
177
147
283
167
160
189
243
181
217
211
252
239
213
241
144
288
221
230
174
182
199
199
202
252
135
171
211
168
199
204
230
204
269
191
240
214
189
190
218
212
203
183
266
206
236
167
207
170
217
225
175
162
128
137
211
256
257
154
185
185
215
217
235
210
187
210
233
241
134
134
169
188
190
178
216
183
161
212
162
246
196
223
191
179
125
176
216
206
195
226
260
219
193
153
202
179
145
219
157
188
206
169
125
163
173
197
213
184
199
217
211
164
191
132
251
246
193
232
247
182
202
170
194
177
168
201
174
203
223
206
162
243
196
225
225
252
133
236
153
184
165
210
166
133
150
164
190
226
166
252
189
183
201
263
157
210
193
224
227
180
192
152
205
159
177
197
203
230
159
236
207
216
242
194
220
255
176
213
227
219
170
235
157
122
179
256
176
223
215
238
196
233
163
221
177
184
232
246
151
187
187
163
204
172
171
231
186
191
174
181
156
219
200
146
239
192
270
136
191
191
175
190
148
229
223
229
173
159
242
239
172
178
186
173
223
191
250
206
204
217
249
184
196
191
228
170
228
251
169
222
194
191
183
170
221
251
141
197
205
285
187
233
142
144
231
237
222
197
169
193
244
190
203
223
259
224
211
187
184
179
212
218
254
169
193
198
231
220
178
207
178
171
210
245
249
229
197
265
200
206
187
151
264
167
213
230
161
192
175
178
180
209
236
244
244
186
252
208
273
243
208
188
185
273
208
188
189
190
215
256
155
233
168
221
224
170
238
181
245
168
157
160
148
160
217
156
181
175
205
244
195
204
267
174
154
224
219
191
178
210
244
205
236
191
245
191
111
236
174
249
191
209
169
246
188
174
151
222
171
240
185
183
194
191
203
186
204
241
158
240
225
237
238
198
223
174
193
181
176
69
169
182
181
273
138
190
206
203
195
164
170
221
210
175
226
223
170
229
169
237
172
190
190
195
220
208
160
207
179
182
182
188
211
252
167
229
194
248
183
221
245
259
199
174
219
226
182
275
189
215
167
212
232
196
175
168
188
148
205
138
197
219
199
187
222
250
239
226
222
253
160
150
218
218
129
176
244
157
220
188
173
194
212
142
154
169
211
158
146
196
210
221
208
231
266
180
214
199
147
249
215
242
207
157
206
177
242
209
219
133
258
170
239
187
235
199
248
195
202
191
207
176
214
215
190
175
232
190
216
225
193
169
194
220
181
193
139
196
183
187
238
167
169
221
149
170
222
248
176
169
175
122
155
217
239
225
202
165
199
152
217
193
249
210
134
174
245
199
194
230
148
214
190
202
240
170
167
225
226
236
238
229
214
213
180
192
185
145
221
224
167
219
138
216
243
149
250
171
230
249
222
169
231
155
246
188
203
177
233
217
183
142
222
229
247
257
180
209
147
154
243
220
200
220
129
259
163
126
214
201
165
183
231
180
160
224
212
216
253
154
242
219
144
228
195
209
231
231
197
211
144
190
229
207
229
204
182
239
246
205
256
241
169
157
159
146
198
210
180
223
252
183
166
188
161
201
183
210
220
142
162
180
274
207
189
250
159
202
168
185
195
228
215
140
206
178
166
229
211
162
178
194
223
232
254
153
181
227
222
180
247
207
255
212
249
193
165
258
220
184
238
185
207
149
155
178
202
138
232
156
214
171
173
151
180
211
155
223
254
178
233
177
224
196
169
172
180
197
177
222
190
216
161
211
227
232
167
234
237
210
230
172
203
204
215
272
216
206
212
215
218
233
197
195
109
210
146
158
241
189
174
243
191
203
192
253
221
194
217
211
276
154
224
235
204
217
228
145
229
168
222
235
236
179
142
138
240
136
192
196
175
248
199
226
240
237
257
183
251
240
123
173
143
160
194
191
269
121
202
140
170
198
198
182
250
145
182
213
143
170
227
225
123
196
202
250
182
180
184
147
202
253
164
148
178
278
201
222
247
210
172
191
145
235
180
253
260
140
204
213
239
231
129
234
221
190
205
206
203
228
232
225
193
244
191
219
143
242
232
277
228
221
164
176
216
214
223
184
265
111
218
181
150
191
264
202
176
226
229
182
214
182
248
244
232
194
161
211
165
206
143
159
226
180
178
123
222
220
177
215
175
192
192
194
227
279
217
234
124
260
136
174
203
169
224
120
195
233
193
239
190
173
204
204
254
195
223
163
194
171
166
185
266
211
191
201
179
198
170
147
197
246
169
150
239
183
185
213
200
159
211
256
179
211
154
227
234
208
208
215
241
239
180
122
219
240
192
218
174
187
189
246
162
234
221
205
157
172
180
211
191
219
212
271
190
191
262
179
187
220
173
178
216
211
180
193
192
239
240
145
217
205
180
81
148
244
218
205
208
182
155
168
182
178
199
224
198
146
233
239
216
200
200
209
245
245
203
180
168
220
189
238
158
207
238
215
168
218
174
204
213
180
230
208
159
168
220
159
93
210
176
246
201
218
115
234
191
248
197
198
230
224
216
162
231
210
237
158
167
216
201
225
216
117
251
212
222
186
269
240
240
180
267
190
180
177
166
219
193
221
131
182
186
195
232
171
165
213
192
220
193
155
201
178
181
221
123
176
146
225
188
183
197
137
180
221
251
197
163
211
186
211
214
203
210
206
179
163
189
200
216
209
219
206
154
180
264
222
148
155
180
197
168
216
153
196
187
213
257
225
263
164
171
183
231
244
149
236
227
232
152
195
233
141
221
130
237
177
176
242
191
213
221
191
240
187
202
193
206
197
192
158
188
269
230
251
182
220
156
255
188
221
136
207
179
169
193
205
187
251
205
221
197
186
206
205
147
266
152
210
218
242
177
191
254
177
232
193
246
127
212
207
178
160
244
142
174
244
203
159
251
150
162
196
194
185
189
196
260
161
211
183
196
230
192
162
237
147
169
134
209
229
189
215
208
223
218
166
153
193
251
219
198
238
168
142
200
155
209
111
176
206
157
201
238
191
163
230
176
177
230
179
126
180
212
201
196
219
230
208
238
231
220
239
209
194
197
191
260
172
173
169
184
159
205
151
173
208
187
141
234
217
156
195
164
182
205
208
252
210
212
192
241
184
264
248
206
186
197
174
236
181
157
219
195
231
177
191
247
205
182
159
198
248
201
171
243
187
241
131
264
200
213
182
186
219
222
203
151
206
247
224
128
170
212
203
195
222
236
190
203
226
206
215
223
177
242
176
194
215
170
228
223
228
164
170
186
253
212
176
196
141
224
240
160
194
261
194
210
164
210
256
205
155
255
189
212
215
211
164
213
199
193
206
174
173
242
201
178
223
216
186
192
211
132
216
208
202
165
172
173
174
152
184
164
196
145
189
177
203
207
124
211
199
180
201
170
191
273
181
229
209
205
189
162
194
218
220
239
195
191
221
213
209
196
199
173
196
181
226
240
216
230
213
153
219
216
229
212
205
170
229
168
145
221
274
156
259
210
182
207
214
214
197
222
204
159
212
166
184
161
185
237
204
179
226
115
153
284
209
192
231
203
259
168
197
226
210
173
218
182
191
124
231
182
196
210
221
202
247
248
182
144
157
202
203
235
203
184
170
211
173
194
197
165
136
195
213
208
218
235
222
220
216
161
218
201
265
187
136
211
194
214
225
222
128
218
231
146
204
198
197
215
229
146
209
204
230
246
235
269
168
207
207
240
225
199
160
193
212
117
214
243
181
220
188
218
178
194
136
192
217
200
245
189
162
215
193
215
249
211
157
183
211
226
206
207
194
188
175
237
196
250
246
209
180
229
228
220
145
266
183
139
205
156
184
163
172
228
163
164
243
203
184
279
223
245
264
162
155
249
224
210
232
186
202
156
196
202
227
233
185
196
193
231
228
201
216
128
171
210
189
214
208
169
132
175
226
213
197
186
161
268
217
274
208
175
182
191
184
204
196
209
190
149
201
206
230
224
156
123
220
204
177
180
216
175
197
172
190
246
168
198
198
229
228
249
187
230
199
198
205
220
249
190
208
218
233
189
201
259
231
191
220
180
176
201
180
158
184
238
184
253
190
173
205
205
171
205
248
253
219
161
220
188
204
212
244
231
202
210
242
213
236
194
154
197
200
223
171
248
209
186
148
201
259
191
224
219
164
244
184
162
236
171
251
182
198
177
221
222
231
145
256
221
212
198
204
113
204
190
221
195
184
244
181
155
162
197
193
257
193
226
164
272
186
224
193
151
216
262
211
182
234
236
209
205
179
225
192
213
261
207
169
201
195
217
202
164
212
218
252
237
204
240
226
212
253
207
241
180
228
216
232
173
173
182
204
277
200
209
213
179
227
220
204
243
184
166
210
199
135
260
139
230
215
224
220
196
174
257
193
216
224
170
197
255
166
241
172
182
181
221
269
167
256
187
211
162
262
198
161
132
182
195
185
214
168
240
142
212
207
174
208
210
201
205
226
213
230
263
220
221
202
206
186
240
253
209
266
227
198
213
201
233
190
209
212
174
181
219
227
155
209
251
233
177
166
227
228
241
194
210
241
206
190
247
253
149
175
162
200
195
218
178
167
149
168
117
190
167
210
161
189
237
141
222
200
158
198
213
167
150
288
204
143
155
204
208
220
225
258
204
191
150
199
204
189
200
228
224
172
220
208
197
165
200
191
170
211
205
244
176
284
202
199
185
209
151
130
125
165
175
262
241
226
233
174
244
257
226
199
258
187
218
156
175
202
155
174
186
233
204
200
177
284
176
196
206
229
177
285
238
210
206
205
192
144
181
154
218
163
224
184
193
156
223
269
257
190
205
209
249
141
209
192
247
243
198
139
156
199
240
185
231
171
195
216
207
180
234
175
209
246
208
186
235
172
231
202
208
180
196
232
204
221
219
173
233
234
211
129
207
209
185
189
242
266
203
169
211
171
225
218
177
246
156
232
233
191
139
197
235
235
164
229
247
213
277
243
158
217
166
234
213
255
216
212
202
234
246
176
230
218
230
223
183
174
159
160
168
257
183
228
198
216
197
185
237
169
218
150
154
157
172
191
188
194
273
202
194
261
215
159
237
102
174
214
231
227
143
242
246
185
217
240
183
212
190
174
210
187
199
210
181
208
224
157
211
232
212
159
115
227
227
178
216
208
218
157
181
204
250
183
219
239
127
197
160
197
234
230
172
152
172
254
169
221
258
167
156
246
155
165
222
221
220
189
246
275
217
182
161
163
215
161
148
162
222
236
172
194
138
166
185
186
148
135
193
223
179
198
211
231
205
218
152
203
261
245
168
196
198
180
162
168
174
190
163
211
205
166
242
150
204
214
176
247
214
197
195
220
242
223
199
179
200
236
206
175
162
165
159
194
191
207
234
206
210
227
213
247
230
187
216
158
182
206
216
211
184
127
221
239
205
246
188
152
195
164
202
226
179
251
201
227
198
200
141
228
233
226
213
175
197
234
211
106
199
198
166
219
207
192
196
212
190
204
160
183
234
180
269
174
210
250
198
274
165
228
212
127
183
196
243
203
214
142
198
192
172
254
167
183
186
223
204
207
209
213
249
198
252
197
201
283
199
186
216
124
199
269
196
195
176
108
227
200
154
189
177
234
160
222
216
149
199
139
180
187
269
202
215
239
206
223
209
183
242
184
190
188
226
183
164
185
233
207
144
242
258
214
235
235
144
215
164
253
232
234
232
259
193
161
204
166
178
168
192
198
262
230
241
200
209
202
174
222
220
188
225
247
191
242
217
239
158
198
211
220
173
148
211
215
259
192
160
254
203
222
196
135
242
109
214
185
194
177
238
222
140
187
206
231
252
217
203
185
177
198
206
196
257
231
217
239
194
320
176
116
239
215
256
185
161
190
256
219
241
147
209
96
140
202
214
166
227
229
176
210
188
258
204
192
229
202
206
160
198
218
193
216
218
202
171
213
196
221
225
199
200
193
261
196
199
231
211
208
197
182
172
205
202
192
193
181
148
226
198
247
173
231
161
127
265
188
233
239
226
208
209
181
199
228
215
187
206
188
139
290
272
192
163
170
198
240
135
130
200
196
190
224
269
215
252
202
274
182
204
171
148
207
229
223
225
201
199
240
138
262
214
185
172
181
221
233
191
228
209
156
130
237
203
157
108
203
132
237
160
176
193
234
195
254
194
243
239
224
233
188
187
213
210
190
266
219
183
201
194
194
169
200
207
175
258
186
198
246
155
210
187
153
163
198
192
183
229
252
168
237
147
190
184
186
197
195
116
157
203
175
158
254
207
202
184
162
161
152
189
199
236
207
211
196
160
190
184
257
221
162
216
142
231
199
213
163
213
174
126
241
155
114
204
195
222
182
172
236
188
180
226
185
148
221
153
159
157
138
178
147
185
231
198
158
230
199
267
183
119
178
227
221
237
191
200
212
186
255
135
224
220
222
211
216
221
197
248
233
247
207
131
172
212
95
222
169
156
223
241
198
189
222
182
203
239
143
218
176
231
205
176
173
186
139
201
156
219
183
191
235
192
218
234
219
194
206
174
173
195
232
236
220
239
242
167
197
127
143
227
181
250
183
155
134
269
242
246
240
288
174
170
213
196
169
190
133
174
186
194
167
204
208
215
166
184
192
242
249
163
160
198
206
215
227
223
245
205
193
227
185
170
180
250
174
185
263
138
215
161
243
212
192
176
170
186
263
187
154
218
234
226
254
235
207
220
120
257
250
147
180
230
147
191
213
199
205
156
225
223
232
215
197
230
205
222
194
165
204
150
193
177
225
163
171
140
200
221
242
181
171
207
181
212
216
253
173
226
223
210
196
221
185
227
225
205
223
209
223
197
128
231
235
147
164
160
263
246
216
180
217
162
137
209
166
233
159
248
151
162
199
220
130
183
250
188
238
188
206
242
189
182
182
177
208
259
227
275
238
195
198
175
192
213
234
167
230
190
198
154
152
210
223
236
245
242
247
261
198
204
187
172
126
248
255
205
237
215
168
208
195
201
195
155
220
202
229
217
198
271
211
207
208
182
175
183
186
138
175
156
140
247
207
199
183
165
228
173
188
193
197
200
205
186
205
264
139
155
205
173
180
185
161
197
174
184
138
170
198
219
233
187
248
222
207
229
223
292
222
209
252
186
241
216
144
206
165
209
172
156
141
222
182
109
227
210
276
183
156
242
126
212
191
242
182
208
231
173
219
166
168
149
186
180
265
209
202
138
183
234
167
251
199
207
218
204
214
183
195
180
157
139
153
203
212
173
146
165
210
200
209
143
179
184
179
255
221
175
155
138
232
138
239
137
177
226
202
234
215
278
198
208
202
215
190
238
175
220
176
131
196
155
214
173
173
154
189
226
183
245
192
159
175
176
183
195
186
229
199
166
246
222
173
157
222
164
209
187
200
189
235
228
141
168
215
246
189
241
204
160
168
197
193
173
178
223
237
234
179
213
237
219
179
194
152
234
208
189
226
238
245
169
268
209
228
188
227
203
184
142
159
206
145
125
256
241
144
226
187
215
218
205
213
247
166
205
222
232
227
172
225
148
227
224
209
182
184
238
175
200
142
159
181
193
243
205
250
196
269
167
209
228
236
255
176
180
192
124
228
195
213
203
170
222
239
236
176
229
204
188
261
254
195
256
229
202
223
239
239
209
246
209
165
184
212
203
124
241
220
216
227
153
206
174
191
129
201
190
197
251
205
124
258
222
159
234
145
180
217
217
224
223
237
182
227
198
199
197
280
262
175
205
215
173
176
170
174
219
256
234
164
210
124
159
227
220
189
211
176
213
134
185
192
243
257
238
160
267
257
224
194
242
189
201
145
186
196
198
225
242
169
185
205
220
188
207
180
149
208
267
176
235
170
205
143
163
239
225
147
157
204
186
169
182
209
224
169
178
158
231
217
220
217
186
194
221
228
183
208
221
177
216
179
219
209
185
216
202
148
210
250
177
214
167
159
219
161
159
151
160
245
218
207
239
156
203
132
137
190
252
253
207
198
219
228
199
204
216
241
203
190
166
222
196
205
218
244
236
182
195
194
240
225
172
190
188
160
136
160
166
120
224
172
163
202
177
230
141
180
242
192
181
208
207
175
161
187
174
172
211
232
165
217
177
152
139
226
188
153
205
212
170
226
181
164
209
186
200
189
196
201
259
245
278
172
179
226
233
198
207
192
210
234
255
146
247
186
191
169
180
231
203
239
246
147
213
200
171
169
233
232
152
179
250
203
206
260
120
261
218
220
192
181
211
210
187
234
244
219
142
216
204
226
237
183
157
195
237
178
193
220
204
178
207
195
187
170
218
204
205
247
243
185
233
208
196
212
188
203
182
182
236
145
184
209
212
229
215
222
188
209
178
185
208
242
162
228
164
185
222
97
144
223
195
223
280
168
179
233
210
137
248
174
154
150
178
240
179
245
153
198
207
178
238
211
224
172
229
217
187
188
268
169
214
220
237
242
258
190
211
246
180
173
187
270
172
221
246
198
209
267
238
281
226
199
209
238
194
241
247
234
166
170
208
231
157
195
252
198
171
167
248
244
202
165
216
223
233
180
148
231
193
226
199
227
220
236
189
128
194
222
190
257
196
232
199
173
190
218
118
220
141
229
151
195
162
181
153
222
210
197
159
195
157
184
138
242
199
183
181
225
180
186
230
222
170
217
244
174
122
262
253
153
151
172
189
222
187
195
231
226
249
159
240
174
181
182
198
131
205
214
222
188
203
285
175
264
214
215
186
154
153
216
159
220
211
119
202
215
192
250
230
194
160
190
154
200
229
231
223
242
188
242
216
159
237
222
182
198
192
150
171
208
224
165
230
202
233
126
237
224
204
210
161
201
197
215
251
137
174
214
145
165
225
222
180
170
238
160
180
226
216
171
240
223
154
209
161
198
259
217
157
226
140
233
141
161
206
203
185
187
210
165
145
238
168
244
227
138
163
228
175
138
206
253
88
193
238
200
178
164
206
190
162
195
155
154
178
222
206
201
203
259
216
198
210
201
251
205
229
208
154
218
179
206
200
239
251
190
214
256
237
141
219
198
188
183
174
145
185
263
162
161
205
196
203
208
207
224
197
200
168
201
179
222
192
210
168
208
200
203
187
198
144
188
224
189
188
204
196
219
218
186
179
256
243
197
213
214
183
179
183
152
214
155
234
208
210
168
168
203
222
161
223
136
239
128
227
225
165
196
214
192
202
162
199
165
205
275
200
201
219
131
247
166
180
201
176
158
206
211
126
229
185
257
234
202
145
217
228
227
248
148
221
274
203
151
215
176
263
183
230
222
198
215
216
209
242
236
210
143
150
249
189
209
234
195
205
238
167
194
132
224
225
172
201
230
193
145
163
241
212
166
185
139
157
219
155
220
147
166
179
209
173
129
224
225
140
191
245
194
229
180
238
238
255
216
238
222
199
230
180
163
170
160
156
209
218
207
168
169
195
215
267
237
230
188
186
165
224
202
242
228
123
157
204
237
205
182
194
207
192
199
187
173
181
258
249
135
207
203
231
181
152
255
275
225
235
98
180
216
205
186
222
240
204
189
153
244
221
150
209
113
229
154
162
196
222
188
232
149
130
231
249
220
205
158
139
193
152
213
207
210
237
168
154
205
151
154
227
258
153
118
211
237
216
230
242
236
169
185
231
186
207
211
189
196
158
137
161
192
191
183
234
189
205
182
237
230
267
234
212
166
191
237
196
203
197
187
212
173
251
137
184
187
120
212
238
169
201
245
244
207
224
219
175
248
264
269
202
140
199
262
173
185
175
259
193
161
200
234
165
265
164
160
200
203
213
174
177
210
174
142
266
186
141
211
179
144
225
210
188
226
193
166
182
209
162
213
213
187
205
190
225
226
194
164
212
238
195
251
238
218
229
174
210
228
226
191
198
157
210
227
222
206
202
261
202
209
148
221
228
267
178
150
180
215
172
172
210
209
187
180
172
214
195
207
135
213
160
247
166
186
241
251
184
198
179
189
159
208
142
151
229
243
211
182
222
181
160
191
179
183
208
185
176
180
232
176
126
192
228
179
178
166
227
192
250
210
237
250
186
258
139
240
246
151
230
222
213
237
162
173
225
271
209
194
197
235
218
225
136
258
252
164
185
213
198
169
210
234
198
205
241
113
227
220
139
226
201
200
145
207
191
169
217
244
146
206
236
170
190
231
235
166
212
135
264
255
248
193
152
156
166
197
219
159
216
207
191
173
196
184
196
171
211
211
184
179
147
204
244
216
178
189
122
219
172
250
197
178
220
168
161
121
202
165
168
202
213
193
206
236
190
226
246
163
198
213
137
248
248
143
237
229
138
177
206
190
250
209
197
193
162
250
249
217
153
212
238
221
181
158
179
219
183
205
163
208
209
212
219
180
207
151
203
246
191
263
229
204
228
192
252
192
195
157
161
170
133
260
177
274
166
141
179
220
228
216
243
174
241
198
200
148
168
231
159
182
181
192
203
153
278
244
160
201
218
212
221
164
166
229
203
191
171
168
207
231
197
203
218
199
145
157
173
223
211
258
158
216
216
199
153
195
253
153
226
169
260
184
195
242
200
195
208
155
188
127
198
171
195
164
194
269
198
197
213
200
199
204
220
202
176
238
153
151
240
227
109
211
229
219
230
206
192
198
278
191
241
249
200
211
180
190
215
232
188
263
154
169
200
163
227
138
197
160
147
250
222
178
183
210
189
176
235
238
185
121
275
220
236
163
202
178
225
196
238
199
175
185
199
187
169
190
221
225
182
230
197
115
227
212
238
235
229
282
236
182
153
212
157
184
245
227
159
173
179
180
154
263
158
214
139
233
234
202
210
155
221
266
227
263
155
240
240
180
175
145
255
186
186
177
196
200
234
240
306
203
265
192
232
169
201
223
240
223
145
205
181
168
270
160
210
174
194
206
206
192
176
164
261
257
177
258
182
189
170
193
177
206
201
213
184
193
213
161
228
229
188
177
248
203
230
146
136
220
195
251
242
213
161
242
228
169
214
223
198
213
199
161
216
265
218
181
215
235
192
230
226
180
165
174
172
198
205
211
131
166
188
198
263
226
217
204
228
215
208
232
245
219
158
192
202
213
233
144
231
210
252
143
216
236
158
211
232
223
248
259
134
271
187
195
238
158
192
180
187
188
223
192
226
241
189
275
184
173
209
151
185
181
204
241
251
221
224
107
264
184
181
200
226
219
241
219
233
241
245
228
189
148
257
198
193
218
232
195
163
191
186
120
145
182
228
224
233
167
257
245
280
211
222
218
250
269
187
136
201
193
231
176
205
183
260
270
251
158
227
143
201
239
214
224
245
144
210
236
185
283
173
172
186
181
251
234
189
257
257
189
188
180
246
185
226
208
195
261
243
209
169
255
196
177
198
184
147
158
181
195
182
242
261
221
181
222
183
210
240
169
164
231
171
281
149
174
161
163
162
201
179
207
193
134
193
226
255
207
173
158
205
157
228
219
203
235
208
230
222
188
169
164
240
253
202
202
116
275
210
213
208
200
205
184
180
231
236
210
172
160
225
188
127
222
195
233
265
237
178
163
209
177
230
193
170
192
201
230
240
198
231
175
218
122
216
279
213
242
272
184
263
153
251
214
176
193
211
199
248
149
256
200
195
213
193
206
205
222
214
127
186
162
179
219
219
217
177
147
188
180
222
218
219
242
225
151
210
261
175
268
201
172
246
234
141
211
200
219
192
203
260
217
220
234
152
215
227
210
218
225
226
139
234
207
202
190
238
216
203
211
181
266
231
263
165
213
205
210
198
233
219
185
253
222
239
178
176
197
190
139
245
248
255
257
174
201
205
185
228
167
177
212
179
219
145
164
191
203
167
219
161
200
234
199
177
268
233
216
228
187
249
217
198
166
171
151
180
161
204
235
228
224
154
217
244
248
181
256
234
210
193
167
224
245
204
194
205
198
233
168
248
230
186
229
196
236
232
177
187
216
208
187
219
166
172
222
231
228
252
210
279
172
236
217
207
242
209
219
210
194
239
161
210
228
225
269
206
232
143
230
239
229
213
191
199
215
208
209
253
178
196
230
215
192
191
243
209
207
202
202
216
267
215
229
201
183
175
217
205
261
202
234
207
242
251
208
232
219
256
198
130
153
135
254
192
242
200
141
223
234
153
193
207
212
157
176
210
192
246
203
190
212
244
241
260
200
218
230
243
152
263
207
257
177
161
211
149
203
212
186
255
165
160
217
245
226
225
205
236
207
247
225
207
139
186
210
173
235
176
219
259
241
196
171
161
197
184
200
227
207
138
263
187
171
180
212
207
178
219
188
166
182
189
217
167
191
225
179
266
214
173
132
206
205
242
135
258
219
196
198
245
196
159
224
191
219
138
170
211
254
234
177
133
168
203
218
213
243
142
231
178
200
205
156
239
248
167
196
193
197
199
161
185
223
184
199
190
201
199
225
182
177
170
208
172
148
236
219
253
225
153
167
160
194
157
234
170
187
208
208
109
162
208
233
213
197
194
200
229
180
229
168
206
226
198
130
167
145
233
191
266
196
172
212
185
227
188
259
251
264
163
180
177
192
249
173
212
214
210
209
165
195
269
143
196
235
175
190
223
189
239
198
179
209
196
271
226
133
172
162
190
225
180
198
142
167
197
202
216
189
222
193
213
213
183
192
226
205
174
200
155
180
179
202
202
198
220
192
255
216
221
228
279
198
211
286
189
177
150
250
242
201
151
131
201
202
190
188
171
208
171
204
210
257
187
211
204
172
205
219
197
201
191
254
148
169
222
167
213
194
161
200
209
216
203
178
212
222
214
174
180
207
194
245
226
173
159
205
205
243
191
179
189
159
223
157
243
185
226
202
214
144
188
219
255
238
222
203
264
246
236
176
246
183
187
214
170
203
171
153
202
218
149
168
179
162
155
190
178
220
190
213
154
204
215
279
190
166
185
208
223
175
207
176
140
192
210
200
243
236
203
194
151
217
251
158
207
184
193
200
238
187
205
136
190
230
228
191
168
218
220
192
153
184
180
176
204
176
177
210
194
137
210
191
203
188
207
275
214
227
157
201
190
227
173
202
197
220
204
197
178
230
204
174
224
149
168
172
167
217
128
210
200
216
135
218
192
298
148
174
219
156
209
158
164
211
251
205
138
218
191
273
227
226
225
223
167
175
166
255
202
236
206
182
236
142
173
224
151
192
165
201
116
186
220
217
204
156
159
140
203
218
183
189
168
191
217
184
214
221
179
184
211
170
201
223
130
193
242
179
202
187
238
190
177
238
193
242
194
171
195
174
188
157
239
231
165
126
177
231
218
177
285
267
228
184
195
148
224
199
166
239
212
199
183
241
229
200
216
221
234
223
185
231
199
265
190
213
151
221
225
210
127
176
174
250
214
194
195
216
249
176
212
108
172
184
226
221
176
228
190
199
205
148
177
192
231
189
176
207
153
131
281
237
224
155
180
165
226
196
159
252
188
185
166
198
199
229
184
267
209
229
221
238
182
210
197
236
214
155
215
240
159
283
234
248
221
197
146
162
191
187
164
214
204
164
204
232
210
189
189
236
157
208
183
221
168
209
214
123
151
187
208
155
204
164
132
234
237
225
215
221
178
205
238
172
93
208
148
199
181
188
189
209
196
197
167
191
272
122
174
166
199
193
107
145
193
148
226
196
227
221
171
247
176
160
177
231
175
213
249
167
162
190
177
207
172
201
246
233
202
172
253
163
143
190
132
186
196
279
245
113
188
202
266
131
198
165
205
277
194
193
259
217
163
174
206
215
239
224
209
212
233
240
234
207
137
199
200
220
265
241
199
177
258
214
193
186
232
157
252
202
172
122
139
184
225
253
198
224
219
143
204
244
179
185
177
223
164
244
212
189
235
235
194
230
134
229
220
196
182
226
167
232
239
214
242
230
245
226
220
156
150
175
239
176
224
227
245
195
220
224
208
192
204
227
204
235
203
201
166
211
161
148
219
249
100
278
165
204
186
171
189
175
156
222
188
158
190
230
176
164
204
206
174
213
227
182
205
210
182
154
226
177
195
225
253
220
127
221
210
223
275
222
202
208
214
190
222
218
198
238
163
198
180
145
272
210
196
237
206
248
147
244
209
108
234
176
173
219
148
200
217
191
168
223
244
263
185
152
190
192
200
250
236
215
160
187
215
216
232
152
214
180
266
186
157
240
194
213
242
229
239
172
224
209
186
106
259
226
241
186
181
166
278
171
187
216
177
229
167
177
186
222
214
196
179
190
195
177
218
207
156
205
206
217
239
151
176
222
156
180
201
175
240
203
233
205
255
236
246
189
258
190
192
175
220
226
195
201
212
139
241
179
211
244
225
301
187
285
237
179
174
222
205
217
238
212
178
205
217
175
175
154
197
229
220
175
240
235
182
189
187
206
207
225
190
235
217
186
207
238
167
182
143
246
207
168
255
198
216
211
174
232
251
195
240
215
226
170
209
191
155
175
144
222
239
232
218
215
167
264
148
180
221
193
188
179
171
252
197
226
186
177
240
190
166
214
224
258
243
233
190
220
201
200
205
206
194
191
181
228
244
180
236
189
184
213
196
181
165
231
222
125
166
233
206
223
172
213
143
307
206
185
131
191
200
222
158
198
215
271
213
236
274
196
256
176
221
227
197
236
274
226
157
180
211
226
144
197
149
233
241
161
274
147
188
212
139
207
155
173
250
205
250
134
218
168
211
205
215
177
223
201
215
211
231
248
204
181
207
165
161
131
190
227
221
187
242
205
201
247
165
228
271
163
187
203
225
212
191
247
154
219
272
238
202
129
203
221
258
196
229
239
253
269
156
184
197
180
165
227
159
163
167
233
249
216
162
218
249
212
235
169
209
167
196
169
104
215
194
207
179
244
222
167
235
160
197
165
169
210
191
200
188
298
204
246
252
200
193
256
198
191
221
226
108
197
204
236
189
197
219
198
143
187
170
169
242
154
196
166
253
176
175
242
166
223
183
217
227
194
213
222
138
208
214
259
201
249
197
126
176
207
162
243
158
278
132
148
209
137
224
217
215
228
199
227
198
192
208
189
130
205
214
147
238
213
141
149
166
198
256
158
223
118
191
202
171
238
210
194
182
224
246
211
190
233
186
190
225
211
231
192
183
218
132
141
205
194
113
226
220
271
196
227
185
270
216
227
120
224
182
217
241
248
176
234
125
194
225
212
169
202
185
167
190
266
123
227
234
186
221
174
217
139
244
233
227
196
197
207
194
189
193
234
219
190
184
171
200
249
146
172
210
189
170
204
208
225
193
181
224
197
167
188
252
211
208
183
240
216
228
210
198
216
225
223
150
197
243
158
137
224
225
187
166
214
224
219
177
163
203
226
256
228
244
188
159
188
253
145
192
216
178
262
192
227
163
232
182
198
199
225
179
221
190
157
131
220
248
204
237
188
203
248
126
106
231
172
207
209
194
159
167
198
182
183
235
208
160
168
221
202
210
196
181
229
227
214
144
140
216
211
212
153
249
223
194
181
214
203
125
128
206
226
226
152
215
221
212
157
202
166
192
247
161
240
175
185
202
213
122
195
209
259
205
231
133
152
259
229
180
214
218
224
194
181
188
181
231
202
239
210
189
219
140
161
159
224
245
230
227
198
206
258
220
204
179
192
183
224
148
163
226
193
133
192
238
200
249
143
225
161
229
192
228
272
231
205
178
157
106
250
206
204
192
204
197
134
206
201
182
178
171
273
178
219
210
199
187
217
235
160
236
195
218
251
189
186
195
181
241
211
243
224
192
195
195
237
229
124
232
189
149
223
156
220
207
207
278
230
175
172
155
199
209
206
215
223
172
187
228
208
190
163
91
225
150
182
213
251
251
227
218
182
221
169
183
241
198
196
208
207
194
163
174
175
235
187
238
202
160
124
146
255
173
194
227
174
274
174
231
171
262
213
261
218
137
167
163
262
216
252
211
180
156
227
212
223
201
237
216
178
202
154
229
257
186
228
102
165
252
216
218
223
216
225
195
202
187
230
194
222
172
187
184
259
231
166
211
311
202
189
205
226
204
203
189
195
214
243
238
251
200
192
166
233
180
162
165
144
200
178
187
193
206
153
223
245
256
213
241
170
158
187
157
187
226
250
248
219
183
185
198
224
122
216
192
252
165
137
190
248
170
227
177
215
194
224
249
230
233
212
193
140
231
195
204
218
177
160
231
197
241
259
227
236
238
182
193
145
208
170
173
209
162
207
254
152
177
179
204
187
253
143
229
255
210
198
185
160
174
218
183
184
224
169
230
166
246
263
83
162
228
239
210
170
210
246
216
177
194
199
139
131
183
238
208
226
179
193
141
212
142
198
255
211
238
216
214
273
159
261
197
230
192
167
225
259
176
219
224
214
170
182
213
189
199
198
203
198
254
257
191
250
214
207
239
126
182
130
162
160
205
165
171
230
126
224
162
233
241
170
251
206
248
166
184
198
197
228
160
243
192
171
182
162
153
202
188
134
213
134
167
178
183
261
183
166
164
237
163
233
149
189
199
275
204
184
175
163
178
184
218
238
238
258
163
240
191
135
170
241
233
232
180
223
172
177
254
196
170
182
108
226
114
249
246
192
214
195
202
166
152
127
125
198
156
183
174
228
185
152
108
252
204
192
209
195
171
243
142
194
153
179
161
190
201
206
151
234
265
192
180
196
177
283
195
180
242
196
225
199
121
199
132
230
223
181
226
244
207
206
212
251
186
197
239
218
228
207
206
196
190
232
274
150
222
168
167
224
231
268
189
151
206
251
253
219
177
151
156
197
226
146
158
181
253
225
214
146
223
177
172
211
214
233
145
166
210
137
163
211
189
204
151
220
171
217
209
222
231
250
249
150
147
262
239
116
174
182
201
224
198
193
177
175
206
141
165
216
226
187
164
207
184
199
218
195
267
141
202
223
241
141
184
222
257
171
148
257
206
236
288
159
182
168
179
195
205
273
253
174
235
195
237
210
221
210
226
207
298
228
261
177
233
195
193
184
184
164
182
197
233
187
194
159
210
149
155
243
188
213
225
240
238
172
168
166
218
199
217
219
201
197
182
178
178
198
187
200
149
192
152
181
241
264
178
134
222
248
214
199
228
196
250
240
244
132
134
226
140
172
171
200
181
228
187
188
169
200
224
203
171
200
197
215
228
199
196
181
130
237
206
174
259
204
187
197
209
254
217
202
141
211
143
182
179
196
180
162
203
213
221
229
285
218
196
239
232
183
184
211
183
194
184
220
169
213
174
283
217
233
172
200
135
231
141
207
100
181
152
228
264
151
169
251
181
180
234
205
271
140
186
173
165
199
250
223
199
224
213
138
241
211
179
202
158
195
225
249
157
203
170
260
193
175
233
256
146
220
220
224
243
137
229
223
154
251
223
172
204
224
235
198
254
246
175
232
195
254
233
228
173
194
255
161
233
229
218
202
282
205
186
217
235
148
221
228
202
178
174
168
231
244
184
190
205
177
176
214
257
131
191
147
255
154
218
128
242
171
174
115
210
210
176
160
213
164
206
201
234
202
225
234
198
245
205
146
164
183
156
191
195
197
244
163
176
161
239
171
199
173
185
222
193
189
195
183
240
200
198
154
218
211
148
192
194
243
237
200
185
200
230
202
238
187
192
213
213
167
221
234
152
211
255
181
240
280
228
197
269
227
173
251
225
147
167
133
207
179
193
188
167
227
266
234
207
191
246
161
151
179
229
166
224
237
173
239
193
135
140
219
220
201
171
194
205
143
254
239
147
181
196
208
220
192
208
179
193
239
219
148
190
199
188
234
198
184
118
174
221
205
253
150
173
216
187
185
140
191
148
200
235
206
205
192
241
188
145
240
222
156
236
223
239
169
164
147
186
196
220
222
186
164
248
230
185
194
203
218
240
211
210
199
231
216
175
200
226
211
194
153
209
200
170
195
220
217
174
196
235
193
157
230
184
126
225
165
209
163
142
194
144
159
143
188
239
286
153
242
268
213
260
199
241
176
214
161
182
175
189
250
223
225
173
222
208
219
207
204
203
178
215
223
250
209
233
239
216
195
257
211
193
207
208
198
139
173
205
122
193
162
185
210
231
190
247
172
183
154
244
183
198
265
157
180
238
222
232
157
227
174
210
179
221
239
228
174
176
163
236
218
216
154
196
232
228
151
168
225
249
213
179
213
291
207
163
181
212
181
187
175
236
149
227
194
264
195
183
208
148
167
156
212
234
202
261
159
164
223
238
228
209
221
229
164
203
189
218
220
184
220
186
137
235
193
182
163
161
191
270
99
218
161
152
130
128
182
269
221
125
182
171
120
225
180
187
217
183
217
233
162
193
149
182
166
145
193
256
200
197
267
235
240
208
173
197
206
194
209
162
213
234
192
250
228
172
201
219
133
139
209
272
189
166
175
197
166
162
204
222
183
221
236
180
182
261
222
195
214
169
225
192
221
245
144
210
202
215
262
209
246
212
201
172
164
243
221
175
167
199
184
204
217
216
180
183
179
218
123
250
197
237
219
210
220
166
207
235
212
233
236
225
163
215
261
194
203
179
228
212
179
231
184
196
192
238
217
197
177
196
227
212
238
194
149
167
210
213
222
203
226
186
235
182
177
161
190
236
199
182
237
230
155
170
189
154
185
210
240
251
241
213
204
218
245
169
251
248
171
142
192
251
239
182
202
244
242
187
210
239
189
247
264
290
179
147
159
211
166
258
215
215
183
192
162
204
185
200
215
170
148
279
201
172
172
210
275
182
264
197
213
130
175
165
200
203
133
208
147
140
159
224
181
137
195
179
179
159
221
193
167
255
190
235
187
227
119
255
142
174
193
148
124
215
234
192
220
219
154
160
217
181
254
221
168
200
148
175
202
221
242
233
215
195
220
246
177
148
192
227
165
200
260
215
136
141
233
185
183
247
203
260
167
257
180
154
210
212
197
222
199
225
215
246
212
189
148
165
184
193
196
159
229
198
134
224
228
212
191
196
228
249
209
249
268
157
245
215
223
227
177
200
161
188
221
237
204
217
235
210
177
173
209
182
133
206
127
125
205
188
183
201
235
165
175
266
225
231
250
186
224
202
226
155
235
187
145
184
193
254
158
159
156
265
222
154
186
197
257
237
186
170
246
218
178
223
169
238
197
209
171
191
206
181
206
225
211
234
206
185
219
169
209
216
217
189
236
243
211
208
134
154
187
170
166
151
222
232
195
240
261
237
189
184
235
208
205
256
250
188
194
258
211
205
235
208
199
233
176
228
238
180
179
194
269
180
252
181
215
192
265
225
256
191
190
162
167
123
176
228
174
177
227
231
142
223
218
231
238
172
203
153
162
165
219
245
196
191
212
180
190
227
253
205
202
215
219
199
190
223
181
103
207
237
209
223
166
178
273
193
271
168
196
221
186
173
187
252
201
248
159
254
189
108
203
225
226
201
175
139
202
175
205
212
251
168
198
164
202
257
233
170
237
183
164
241
228
206
231
153
185
229
192
148
211
226
228
216
204
214
248
180
170
179
246
181
213
194
251
208
192
148
260
189
136
233
211
248
189
216
232
197
252
208
244
109
190
262
235
186
255
184
185
203
252
203
232
266
218
248
154
185
160
185
192
201
244
148
207
253
195
207
202
172
190
136
213
196
156
232
220
200
209
243
223
158
201
178
150
202
236
190
187
176
202
251
182
242
155
198
214
252
222
201
256
221
151
185
210
229
206
199
203
222
176
162
216
174
163
219
223
219
195
185
222
203
202
209
208
193
181
214
193
211
193
181
151
194
253
187
217
218
241
163
234
174
196
204
272
179
197
138
195
203
186
202
235
244
208
187
224
198
136
169
168
209
108
190
237
211
213
206
197
206
150
210
211
225
186
154
194
113
214
191
163
257
228
244
208
200
245
251
157
189
221
214
177
210
219
206
186
246
221
177
144
220
223
146
228
187
199
232
199
211
212
204
225
208
201
208
235
215
246
181
227
267
223
262
223
211
194
162
217
174
182
200
176
249
185
231
253
221
198
187
206
198
232
180
181
182
213
191
193
177
130
256
171
198
187
172
219
217
205
150
134
224
253
259
193
253
183
216
190
121
138
229
178
164
185
213
198
227
175
196
174
231
248
239
205
274
210
207
158
226
196
148
229
257
262
170
146
186
191
224
240
251
168
281
218
273
164
175
198
177
200
193
226
224
189
197
233
170
207
218
226
209
218
234
150
209
205
281
205
237
167
167
203
220
214
214
210
225
220
187
238
227
204
198
208
163
215
196
198
160
210
140
154
218
148
186
174
151
216
202
198
213
212
207
226
248
193
225
173
202
223
193
209
179
187
182
197
190
163
232
215
178
206
215
232
163
218
164
191
249
216
203
228
194
235
249
192
176
206
240
200
168
183
207
205
222
233
191
169
215
229
269
245
148
168
131
161
177
153
236
241
173
199
223
219
241
227
235
248
159
270
215
210
222
249
177
109
210
177
190
249
173
223
177
238
147
185
232
187
253
230
209
162
194
180
212
194
179
156
205
229
201
228
189
226
207
213
234
143
187
221
188
180
180
180
201
161
240
243
202
160
264
161
213
173
284
146
188
170
232
107
204
203
171
216
219
173
254
208
237
198
216
268
153
193
244
209
192
244
135
258
198
220
124
169
247
250
227
213
214
195
222
203
127
240
154
144
198
259
241
223
226
218
185
160
151
195
201
219
257
216
217
194
142
200
242
179
235
126
192
213
162
249
197
219
241
204
192
221
196
207
176
152
227
171
126
196
278
240
265
161
204
202
209
232
174
141
178
246
176
218
190
196
203
200
177
228
202
237
162
129
202
170
190
174
228
226
175
230
177
181
174
200
209
191
198
130
223
189
241
259
230
244
237
170
193
206
240
166
181
243
246
226
161
229
190
220
155
239
177
96
185
199
153
208
209
242
257
199
160
163
234
177
265
175
194
224
185
185
223
181
155
188
185
154
191
165
169
224
211
222
220
161
170
145
208
253
262
178
189
234
167
226
182
199
213
225
244
197
202
218
169
242
219
111
223
202
169
185
185
183
170
267
263
190
226
251
163
228
137
238
178
202
243
183
114
160
209
234
190
209
157
194
245
161
247
204
245
214
210
237
144
192
229
222
199
215
171
239
170
159
235
239
209
225
182
253
251
176
177
252
243
173
213
154
244
227
211
201
163
179
151
205
151
197
216
242
194
227
185
155
187
211
213
214
135
168
213
198
136
200
237
257
174
190
222
216
163
214
176
239
226
201
157
169
199
235
221
160
140
217
244
211
222
188
226
195
257
269
150
264
265
210
147
188
183
238
208
182
242
182
198
274
262
182
178
235
192
188
208
278
217
208
191
223
245
168
214
221
260
212
181
167
208
216
141
144
240
203
216
213
243
143
217
134
186
202
211
176
201
204
180
198
163
194
154
220
184
206
246
189
133
230
208
200
215
195
228
238
209
232
209
172
252
193
200
154
203
208
211
214
203
163
133
101
260
215
211
234
144
191
197
210
268
175
257
230
243
186
197
135
227
175
224
260
181
148
236
218
210
207
217
220
234
271
159
183
242
237
208
207
232
208
235
203
181
231
192
195
182
194
170
173
115
213
181
199
159
248
195
139
205
206
171
226
246
196
190
163
171
208
238
230
179
166
183
209
271
154
225
201
156
187
250
203
197
164
176
245
172
219
230
167
188
187
218
194
188
200
235
117
235
165
243
223
219
179
221
184
232
184
227
210
242
236
159
192
145
168
186
157
207
188
232
183
215
242
236
211
165
181
179
168
210
196
138
183
180
240
222
213
185
152
235
269
200
178
143
170
191
173
231
195
139
169
164
209
215
215
179
132
179
133
221
180
199
172
131
210
158
254
128
216
141
211
187
147
192
203
212
201
182
182
193
217
228
180
222
216
225
175
155
173
161
231
191
268
170
222
225
223
218
209
165
176
192
180
153
185
194
194
191
175
193
162
239
151
250
249
194
195
187
197
172
194
227
214
204
131
202
201
248
201
186
191
172
196
220
144
122
176
220
188
158
210
221
247
154
186
178
217
116
142
163
231
164
247
212
178
213
244
182
145
180
221
222
204
263
200
224
236
219
214
123
172
205
129
127
245
206
149
208
209
258
198
230
213
230
195
161
165
173
272
167
249
216
194
162
164
157
231
172
168
152
232
231
243
167
212
170
230
222
222
146
201
262
162
155
237
171
268
197
155
260
189
187
225
213
103
208
236
211
160
220
212
210
201
244
237
231
133
181
163
168
184
237
217
225
200
231
237
195
166
248
186
166
267
170
203
210
241
157
170
174
208
185
235
192
227
219
175
255
209
184
249
182
183
198
201
234
162
202
188
236
189
197
232
225
233
175
208
126
230
169
113
144
227
103
151
213
246
204
190
218
205
275
219
201
156
209
271
154
205
226
169
186
198
170
202
219
243
265
197
178
190
242
161
222
217
210
218
186
204
177
145
167
145
245
184
218
196
202
123
200
157
238
179
191
194
214
184
181
152
177
223
179
262
205
201
173
148
168
147
134
242
204
163
220
221
177
224
191
203
151
166
228
201
235
218
199
189
136
144
191
216
203
212
202
152
161
210
225
223
222
234
198
260
174
145
222
194
204
222
128
280
215
233
161
201
172
257
179
248
185
247
190
182
164
227
203
203
239
145
250
202
256
235
199
189
246
174
201
171
205
184
206
213
244
242
198
198
167
208
235
176
178
156
148
162
178
237
273
123
149
227
193
178
200
175
237
179
219
174
216
207
201
171
151
145
165
226
168
201
178
201
205
156
231
141
239
186
203
195
200
177
230
184
190
195
275
224
102
187
209
146
170
213
180
202
219
218
186
216
219
188
177
232
239
237
211
213
221
208
171
157
222
224
173
240
189
164
190
175
194
151
195
225
117
240
217
220
220
143
217
162
165
184
174
214
193
132
234
232
198
261
213
193
229
238
205
179
211
176
188
186
241
175
104
185
246
206
180
194
190
229
207
142
227
238
174
154
191
179
165
225
269
146
217
169
217
186
235
192
113
222
181
161
150
228
214
132
204
244
223
166
184
168
159
184
168
214
232
226
206
257
174
188
262
181
223
178
241
257
193
200
172
182
214
191
261
217
217
159
203
185
233
199
157
190
225
252
184
215
198
176
172
195
232
151
223
234
181
221
207
222
150
167
183
275
249
198
206
222
160
215
175
171
239
183
136
201
177
129
145
213
233
164
155
200
242
181
218
197
170
220
222
168
225
179
260
152
161
155
194
188
248
207
184
249
184
209
232
195
223
234
205
198
246
195
225
233
195
211
210
147
244
254
180
230
211
217
206
178
232
250
208
237
122
215
215
196
219
205
230
187
207
248
234
168
203
222
192
202
232
251
216
239
173
254
191
225
211
180
208
210
212
211
243
169
234
186
225
227
119
170
176
99
194
222
240
125
184
155
196
162
210
172
152
207
207
205
197
184
182
180
210
139
177
148
82
237
213
209
200
199
223
272
280
236
183
221
227
202
182
195
160
216
266
186
180
209
176
224
244
189
159
222
264
247
215
217
165
246
155
195
192
243
206
231
204
191
176
160
250
200
149
198
187
187
248
213
202
196
179
210
224
214
280
227
221
171
170
172
98
156
141
146
134
178
213
203
159
206
164
222
177
209
222
235
223
211
231
257
228
100
207
140
177
196
155
207
204
211
225
221
205
244
235
110
166
116
244
186
203
179
124
185
216
211
178
138
216
142
192
180
189
194
155
183
153
176
237
229
194
190
141
220
171
190
205
224
202
239
223
254
232
161
193
170
193
229
193
255
168
213
189
221
239
232
132
207
215
239
227
233
187
204
151
181
180
200
187
132
204
173
216
221
172
187
244
188
194
167
114
259
188
165
188
163
170
157
215
228
185
138
187
205
194
165
227
183
247
202
228
202
149
193
232
173
97
201
170
233
266
249
219
212
193
250
213
192
239
170
176
173
181
179
214
140
220
184
156
208
206
219
219
143
228
202
174
213
126
187
167
144
202
146
215
188
115
148
227
204
183
248
231
175
241
147
203
206
168
219
145
156
218
145
175
149
204
185
191
223
167
230
239
178
221
251
226
213
170
191
196
223
171
164
215
150
174
173
180
206
224
223
208
175
177
250
225
262
288
199
260
222
190
187
90
182
211
225
183
179
179
198
219
216
177
236
264
149
212
227
230
214
197
155
190
240
205
257
224
134
291
244
188
238
224
198
182
171
196
255
222
181
185
245
195
163
233
192
192
165
162
220
208
179
157
167
213
197
165
258
229
253
139
260
240
188
191
190
204
184
183
172
197
148
232
190
254
208
191
220
277
212
168
151
173
119
196
179
173
252
181
108
206
144
227
168
178
183
225
253
192
247
220
178
222
176
184
172
201
215
251
209
202
209
161
240
153
200
218
228
261
245
198
219
132
217
171
120
195
198
202
248
165
169
174
184
263
216
189
226
233
211
202
216
258
193
200
201
219
200
187
252
156
219
198
274
219
248
209
208
229
201
233
114
206
196
272
170
158
218
262
207
224
224
157
181
176
211
207
194
221
226
210
237
259
239
159
164
173
271
188
216
188
173
224
193
176
230
186
201
215
183
224
173
153
211
190
280
256
201
115
187
233
253
172
206
188
187
146
158
179
184
130
139
208
192
257
222
206
239
156
209
191
188
176
175
187
181
274
159
101
188
198
93
244
205
220
275
267
187
190
193
202
245
257
166
166
197
191
159
252
212
215
180
177
174
177
293
222
283
233
150
172
158
212
195
221
227
162
245
264
248
208
208
184
226
234
251
264
237
217
181
207
206
214
195
185
167
225
238
195
158
220
213
199
208
229
274
204
191
239
179
157
206
246
185
226
190
210
226
192
207
147
227
208
207
290
196
201
224
236
251
215
237
201
214
249
144
141
143
201
214
144
154
211
182
202
190
185
156
219
208
189
211
201
219
173
154
156
193
246
168
229
139
268
209
188
211
216
210
191
226
188
252
239
197
207
201
248
206
176
173
195
232
198
220
192
211
258
225
199
205
187
249
262
171
203
218
234
245
214
198
215
223
215
198
199
214
275
234
179
178
198
184
208
140
203
162
206
270
199
227
237
171
152
210
208
205
219
197
182
173
211
204
226
188
218
201
203
160
212
188
158
205
200
215
173
167
164
231
166
214
237
180
228
168
198
199
210
197
236
187
190
227
199
233
185
186
209
193
150
200
131
161
215
254
199
227
256
154
227
207
278
174
194
179
184
241
237
223
177
177
216
198
150
222
150
142
151
181
183
155
272
166
184
226
215
167
203
155
222
182
254
230
184
209
156
182
114
224
189
186
255
217
178
260
149
206
147
276
258
226
180
186
214
250
182
260
197
206
219
232
229
204
286
168
184
138
166
236
198
195
157
168
173
153
187
204
191
228
224
193
271
204
210
173
202
222
187
214
174
236
245
209
210
198
225
161
178
178
239
245
177
230
211
238
152
152
208
169
213
168
226
210
234
143
170
167
194
209
224
225
246
182
194
224
194
221
173
219
219
204
210
152
222
201
235
206
197
203
135
197
134
216
215
220
256
235
223
190
231
231
230
211
161
195
220
216
185
207
221
237
198
207
149
246
193
209
159
187
127
221
196
178
180
208
162
236
230
223
182
165
147
175
135
176
199
170
213
240
230
168
194
205
207
197
252
214
212
251
210
192
234
187
221
206
180
154
201
241
194
167
215
136
164
159
234
189
250
186
229
237
159
197
225
218
197
230
203
263
254
224
182
157
202
189
213
169
232
203
206
278
176
185
219
143
235
217
247
187
240
210
196
208
189
207
211
234
236
141
206
184
184
165
204
197
204
136
251
182
235
205
212
237
162
226
220
253
197
197
198
267
149
227
155
189
168
220
193
257
212
206
162
190
189
240
172
237
192
222
197
201
248
206
233
233
159
203
212
190
179
195
208
207
191
171
234
194
234
149
205
217
192
186
243
204
217
228
200
223
218
279
187
202
231
192
267
201
265
178
174
166
191
204
218
189
212
194
240
216
240
212
171
187
250
200
240
156
194
226
195
184
212
173
190
147
220
174
247
224
148
174
167
169
213
177
183
203
218
184
210
172
148
182
174
204
170
239
173
236
156
204
227
194
169
161
218
223
161
190
191
190
200
272
125
199
223
187
262
199
243
270
155
152
208
228
201
230
245
146
235
197
205
159
178
202
115
230
188
223
220
180
223
222
238
252
215
133
232
189
163
201
224
248
138
192
205
231
137
176
176
238
228
200
255
176
163
226
240
201
192
230
178
228
201
157
178
162
179
221
211
205
223
193
176
233
204
224
120
246
215
206
168
247
220
201
158
164
192
212
237
210
224
203
226
146
150
196
242
244
231
244
188
148
160
245
192
180
209
227
221
233
245
222
206
237
176
178
251
215
195
199
191
223
170
243
189
198
208
110
211
191
217
164
226
220
205
122
202
179
231
131
266
214
232
219
187
220
249
188
180
194
225
178
187
196
173
181
187
211
189
164
176
196
175
222
155
187
199
178
238
223
175
241
265
216
130
205
221
139
188
238
228
257
213
179
250
215
221
233
307
188
162
174
221
247
199
158
227
209
217
257
172
213
238
170
182
178
176
213
216
169
178
161
123
184
197
173
196
119
189
219
183
226
225
221
264
226
191
157
187
208
256
221
184
227
203
221
153
166
268
193
220
186
207
178
161
221
218
129
168
234
203
174
242
233
171
204
240
251
139
218
173
228
177
198
181
165
267
258
186
129
233
201
179
168
246
214
219
188
219
169
140
203
162
198
197
229
217
244
232
202
210
217
226
160
208
167
203
256
225
215
191
161
283
244
205
212
149
145
192
200
273
226
141
239
169
198
247
231
222
197
127
209
254
248
189
236
272
167
177
216
235
186
229
173
226
191
179
250
237
182
180
208
151
170
226
257
234
222
215
231
132
200
134
220
203
201
228
199
149
246
236
239
208
201
235
180
173
255
175
205
203
165
242
201
132
268
131
212
155
282
198
162
261
142
231
175
198
184
182
154
179
239
126
167
230
188
220
217
233
227
192
231
171
239
186
184
244
206
108
198
219
190
230
103
153
176
189
165
220
175
191
196
179
195
222
183
208
232
270
239
203
197
228
220
255
224
207
195
243
198
189
150
219
170
222
171
244
218
260
194
126
205
230
167
180
120
187
157
211
179
224
225
195
213
124
232
263
223
154
201
182
209
241
194
238
237
226
226
142
244
184
165
261
164
255
143
211
189
222
228
196
157
239
218
282
199
178
249
136
179
263
163
209
217
183
181
231
227
215
188
179
237
256
239
185
179
220
221
212
200
175
195
160
234
178
179
130
190
228
223
177
172
217
209
229
127
234
228
197
164
226
237
224
211
211
259
226
213
236
197
225
173
181
185
182
134
266
231
217
203
145
220
152
169
208
179
207
203
225
190
217
179
241
181
185
278
158
138
207
171
198
203
197
263
211
201
234
184
241
244
240
180
201
182
219
218
182
206
186
189
150
195
224
214
168
171
180
185
148
209
229
160
198
220
252
218
213
233
175
187
116
211
193
188
223
234
223
138
176
178
210
146
156
238
207
148
185
205
172
243
257
198
244
202
210
206
199
211
217
177
181
193
238
157
211
171
136
210
219
246
221
188
137
127
165
225
190
190
171
167
209
182
153
169
168
160
166
222
165
149
221
225
212
154
235
217
224
215
153
222
234
189
179
176
276
185
238
187
241
210
253
210
240
168
164
247
144
215
202
213
215
155
202
234
168
213
245
231
190
164
238
221
212
246
240
221
227
231
152
147
174
209
149
187
241
253
200
172
156
231
237
241
251
153
233
241
163
227
179
224
215
220
216
208
226
211
226
217
182
212
229
221
175
210
107
214
204
193
214
205
221
220
180
227
196
196
258
207
234
190
212
236
238
226
243
219
198
198
202
146
229
168
225
199
165
245
185
179
201
213
166
183
223
135
190
173
215
199
236
236
196
212
195
241
233
258
241
222
166
131
215
207
160
145
176
104
135
210
155
141
184
227
195
133
110
235
197
238
139
182
189
225
205
229
180
218
173
241
230
187
121
202
217
192
162
214
206
160
125
263
186
209
258
208
146
220
195
255
207
193
257
239
152
185
223
162
161
190
211
209
228
212
151
135
218
175
164
197
176
227
212
139
207
144
216
202
222
232
126
135
184
141
177
193
213
192
184
238
161
177
141
249
254
188
222
191
168
235
202
243
284
172
234
229
213
224
158
202
102
236
171
199
232
188
232
199
219
179
273
211
143
155
219
143
256
180
159
202
197
250
150
203
146
228
181
213
229
225
230
147
192
158
193
185
177
208
116
182
190
236
165
246
212
209
164
191
216
241
219
264
240
217
169
182
110
223
238
215
194
221
176
249
221
209
166
221
194
208
164
99
208
216
228
188
216
256
202
208
209
201
209
269
196
138
183
200
220
217
161
162
157
115
242
185
208
239
180
218
157
267
164
236
164
215
203
175
253
132
222
197
189
169
213
277
161
224
213
233
230
133
230
189
177
196
171
201
129
194
192
181
216
214
282
213
213
179
194
264
215
247
239
240
179
179
140
151
258
225
206
195
217
167
188
160
179
181
229
137
258
193
226
213
260
223
255
173
221
194
128
194
182
172
185
179
212
272
187
231
218
175
179
182
182
221
214
212
210
197
241
238
188
167
198
226
163
223
166
222
201
176
113
171
206
161
197
229
196
243
217
221
150
258
252
191
159
184
238
264
200
229
237
258
201
188
216
182
181
184
147
215
188
159
248
186
144
218
102
106
216
253
194
155
200
154
213
184
157
129
224
288
182
208
216
226
257
148
236
165
211
245
225
153
285
208
131
197
258
213
190
243
216
221
241
192
187
175
215
208
203
223
213
206
212
232
98
183
180
228
168
199
241
227
212
194
239
261
212
245
197
163
178
224
213
212
236
125
223
159
218
252
141
217
205
172
216
241
219
217
204
186
234
168
248
171
227
234
199
175
210
252
220
205
205
186
218
153
149
230
132
196
184
224
187
229
155
112
190
232
219
220
158
228
166
230
242
164
176
253
213
205
159
230
161
207
231
151
170
216
223
168
205
132
248
241
208
151
220
160
225
251
216
163
219
218
141
201
202
192
212
224
237
207
273
185
205
195
236
125
206
176
162
251
181
235
192
120
209
236
138
161
184
242
170
188
173
201
265
155
208
258
200
230
157
184
173
176
183
179
188
167
188
168
226
200
192
225
203
221
146
208
261
228
239
237
158
234
250
207
196
240
198
191
161
129
215
197
251
168
143
223
208
189
193
211
230
210
204
113
155
154
200
177
193
171
233
154
175
176
190
229
215
192
201
218
215
212
171
193
126
228
155
196
206
244
215
206
196
214
261
244
188
138
175
216
109
249
157
153
201
194
228
261
152
162
206
201
230
176
195
160
149
174
238
202
229
168
225
166
223
191
214
166
224
177
172
206
172
264
184
212
173
229
222
227
239
159
167
221
178
244
182
159
248
181
260
166
225
217
222
203
176
162
254
216
230
218
176
202
142
178
177
141
167
188
180
148
142
229
206
213
161
216
238
192
171
210
227
222
234
177
167
193
185
192
149
149
197
213
101
216
200
164
188
167
211
227
188
235
198
192
172
202
224
181
202
179
200
264
190
235
200
185
209
246
157
149
196
261
150
205
232
222
198
214
212
193
203
211
249
206
171
219
212
199
218
172
216
159
220
196
210
219
212
221
159
277
191
140
203
185
152
196
243
188
210
188
237
223
237
231
165
189
203
169
225
210
208
264
222
241
223
247
130
250
224
196
256
192
166
220
189
205
231
176
148
217
194
120
216
226
183
248
209
215
246
228
258
215
213
209
186
185
187
207
172
158
169
256
236
186
210
200
194
170
180
231
195
202
196
208
226
217
207
215
228
277
150
261
231
155
235
173
201
117
162
123
265
167
220
222
194
172
192
184
178
189
177
149
223
260
181
210
162
256
192
142
215
254
177
277
189
152
168
209
205
276
245
229
199
239
250
153
207
159
176
202
198
198
204
245
233
170
245
128
227
176
169
172
144
213
185
236
202
218
207
206
153
201
198
161
243
201
229
225
186
166
236
209
164
253
191
204
198
247
241
203
177
191
240
200
267
172
201
220
162
175
204
208
261
179
255
232
213
158
194
211
227
215
238
207
214
135
167
234
186
142
203
200
214
114
172
197
196
187
235
189
214
225
177
225
188
222
140
195
161
225
223
202
270
202
223
224
258
197
216
218
200
256
216
224
282
213
260
166
209
141
222
227
185
232
183
196
168
243
130
231
209
170
189
259
158
246
223
197
201
172
147
162
210
142
183
196
217
172
231
147
175
179
176
214
217
204
131
182
253
174
197
184
203
206
239
231
192
235
218
179
219
212
142
213
193
222
186
180
208
186
211
198
185
274
185
163
212
204
143
208
183
201
176
211
221
222
189
168
222
160
186
189
170
253
194
166
179
211
188
184
184
217
162
175
248
213
214
208
170
246
240
138
200
175
228
232
217
103
255
222
157
214
144
274
166
190
148
242
185
240
193
188
205
176
250
201
195
157
115
195
228
239
229
208
179
194
224
195
213
161
165
210
183
248
147
201
197
190
136
235
221
198
168
121
199
210
204
173
182
273
154
193
199
210
211
146
220
265
256
185
210
189
217
155
160
256
177
232
165
239
207
192
143
230
178
182
244
247
244
150
264
226
190
209
192
148
153
184
238
226
184
260
169
225
179
166
182
248
147
224
169
179
186
237
273
201
216
175
184
194
187
181
191
226
244
196
261
189
168
302
209
178
250
241
147
177
225
177
171
156
189
213
191
222
103
227
165
215
131
218
218
235
181
169
183
215
206
211
179
175
219
206
198
207
243
169
199
261
232
196
247
187
184
190
267
204
214
211
193
200
196
193
181
200
204
176
190
173
187
153
125
244
158
164
140
215
144
176
133
260
201
247
204
216
193
217
184
189
204
240
230
171
231
190
167
227
188
181
208
199
170
221
149
210
215
108
166
251
174
238
176
188
249
244
176
223
193
240
252
156
196
170
199
165
202
243
241
117
181
188
181
157
210
239
204
202
267
214
187
256
240
154
197
213
136
111
179
114
195
197
213
191
191
235
248
219
212
204
190
164
197
236
175
227
208
177
199
182
158
227
232
198
164
222
181
247
176
166
138
221
248
173
194
258
191
176
246
193
201
243
203
156
176
247
196
221
149
197
210
206
210
217
184
216
169
254
163
164
197
180
170
257
258
254
156
156
183
222
214
252
233
219
219
242
158
256
213
207
200
162
171
223
178
219
190
253
169
157
174
176
195
183
162
223
159
210
251
181
182
223
245
208
227
256
180
249
175
194
144
177
271
197
167
178
141
143
186
187
211
229
210
250
219
167
177
167
221
222
197
208
151
211
169
186
228
228
227
256
213
233
274
238
167
225
190
202
216
223
291
200
159
189
250
203
155
180
143
128
210
225
181
180
218
171
256
174
164
212
188
253
188
193
192
205
124
144
208
213
162
225
171
220
162
154
191
214
248
148
165
203
203
142
228
167
236
209
194
212
184
220
181
118
210
239
160
216
212
236
221
156
185
176
224
148
181
217
219
194
259
163
214
158
229
195
186
126
227
153
207
179
193
225
150
158
152
194
185
260
207
225
172
185
263
224
99
203
155
238
218
249
153
180
194
234
230
220
175
160
202
247
162
200
197
124
224
158
168
206
208
199
185
228
125
219
230
179
186
185
144
196
220
228
163
207
183
202
218
184
256
144
216
229
210
213
215
189
147
192
228
219
182
251
162
238
229
189
162
184
186
211
233
262
229
235
207
249
228
228
121
227
159
220
170
190
183
217
275
168
194
220
172
152
212
160
198
291
196
208
225
169
151
159
207
195
123
234
241
219
259
221
187
213
190
205
182
227
257
211
194
216
248
228
152
219
196
234
230
214
176
180
247
213
235
283
254
245
228
160
228
178
164
161
198
266
221
207
214
185
171
249
189
233
206
187
206
169
221
127
201
154
131
142
206
223
209
214
188
231
167
119
181
198
192
166
136
234
227
178
187
141
171
206
231
157
245
227
242
217
173
197
230
214
243
245
205
166
138
197
215
193
199
180
179
197
254
202
261
240
162
158
176
212
194
197
222
213
251
224
182
198
220
174
228
201
162
150
212
102
240
167
243
126
292
123
133
270
215
199
216
198
200
176
204
178
215
224
198
201
250
191
244
192
242
158
218
256
139
191
200
138
184
183
162
186
192
149
237
251
208
197
155
205
245
186
204
128
183
266
210
155
213
215
203
205
262
215
135
134
240
202
224
183
174
221
92
187
170
282
215
224
152
183
240
183
252
213
215
187
225
223
160
213
187
105
200
218
185
155
167
119
191
206
219
192
207
206
216
254
238
203
187
234
207
274
224
219
253
203
203
222
245
113
201
252
213
246
156
168
187
180
188
198
245
200
202
229
195
246
206
176
192
147
208
223
196
239
234
190
114
208
205
235
123
223
227
209
208
211
175
200
205
177
237
95
223
208
180
190
223
222
222
230
185
178
204
154
203
184
193
279
187
155
152
207
231
228
191
192
189
182
189
190
251
164
202
174
208
246
246
221
175
185
240
217
153
203
192
207
206
145
186
218
206
206
198
206
225
254
236
245
84
212
183
230
170
218
243
163
278
154
220
203
218
225
175
262
218
142
245
141
186
285
198
208
232
186
166
200
134
126
234
129
213
213
234
193
189
212
221
239
159
260
105
266
200
222
167
232
240
227
202
184
189
150
196
193
175
201
176
220
162
195
257
259
232
203
211
172
119
144
208
200
252
189
198
208
225
201
162
153
275
206
253
147
141
162
161
185
229
148
289
188
188
226
206
218
212
242
224
247
170
204
171
189
176
207
173
196
229
194
223
193
253
105
181
223
208
202
268
197
145
261
156
216
205
216
232
232
239
194
223
218
181
174
224
163
234
191
249
198
198
177
210
214
151
183
186
257
220
200
175
176
161
236
178
237
224
253
203
161
218
196
259
205
236
130
167
189
149
133
201
198
166
208
161
102
207
248
193
248
206
205
188
171
223
175
188
243
187
220
145
199
237
154
129
251
192
204
215
203
197
183
240
191
192
137
177
162
165
183
217
163
225
195
129
228
205
173
184
205
188
226
185
180
174
206
231
214
182
215
221
202
238
170
241
178
240
214
242
211
267
147
200
186
176
220
177
208
212
157
196
205
149
176
210
183
210
145
179
183
258
192
166
221
187
215
235
143
260
201
257
145
155
166
166
264
195
250
199
175
213
182
206
251
249
133
214
212
156
141
251
194
177
171
198
208
168
193
245
199
168
133
210
195
254
214
191
294
224
200
188
192
216
176
215
244
168
131
217
196
303
192
229
288
223
198
193
238
201
206
250
166
227
195
216
227
231
266
167
229
200
198
231
240
209
168
140
197
169
118
277
197
176
216
207
174
177
237
238
116
158
231
235
189
208
174
169
206
204
227
271
188
213
159
185
125
186
168
202
119
185
210
209
197
217
203
255
161
213
205
187
204
160
238
255
191
199
222
227
273
186
182
215
246
169
169
117
172
182
158
231
166
158
207
208
275
179
162
169
212
168
156
138
170
163
181
172
147
159
186
200
246
201
181
260
213
108
155
204
197
174
267
219
200
184
252
195
229
232
197
191
241
177
182
195
219
208
191
175
181
150
259
239
219
201
240
174
220
184
216
212
207
193
169
207
225
226
254
229
151
206
189
157
257
188
177
241
200
138
160
206
167
208
203
226
171
190
199
232
217
170
230
219
220
228
209
164
214
208
173
166
204
171
150
185
238
225
147
210
244
209
194
228
249
178
249
221
221
175
170
182
201
241
196
273
172
192
241
251
163
130
221
155
188
252
158
214
227
244
250
158
192
256
204
186
219
153
155
205
244
220
194
199
237
178
217
153
168
240
212
186
213
236
204
204
170
232
232
190
177
201
197
213
150
232
240
189
141
193
207
185
217
171
183
249
210
255
226
187
173
195
248
259
172
211
174
176
250
243
185
226
199
180
257
159
157
206
165
229
248
257
112
186
183
226
233
167
224
219
145
130
248
248
131
215
200
230
163
219
183
248
225
221
126
217
241
183
205
215
165
243
256
233
149
155
181
223
189
262
134
199
184
211
172
236
240
263
195
143
229
244
186
184
192
128
183
194
276
240
242
174
184
224
221
195
173
250
194
181
194
230
245
204
147
208
169
239
175
222
195
202
160
221
188
142
158
216
159
182
249
218
231
229
137
231
205
152
179
181
249
240
148
188
151
172
231
222
225
157
237
267
196
234
180
181
183
235
241
186
205
202
201
137
92
247
140
219
208
186
187
183
215
224
176
135
154
208
209
194
219
216
174
158
249
236
229
144
223
208
208
262
199
151
191
182
225
155
172
188
151
190
148
148
224
148
217
214
257
207
242
155
212
188
174
200
191
175
165
198
228
134
198
181
195
169
221
249
80
239
232
190
183
201
145
199
256
161
236
250
240
259
221
225
251
263
142
198
164
155
155
198
209
231
215
189
168
148
254
242
198
169
213
260
216
184
218
238
228
190
168
132
189
146
206
190
233
211
252
193
271
204
193
217
191
204
210
211
159
221
200
238
137
193
196
206
146
202
172
210
217
202
189
122
196
154
188
189
200
223
142
191
192
247
212
135
204
265
185
237
259
202
130
180
217
210
230
186
210
195
217
162
163
244
229
189
183
176
164
234
143
217
205
186
216
124
214
178
193
191
219
152
186
216
204
216
235
224
171
171
211
183
160
249
224
213
106
203
205
196
175
144
183
237
181
197
188
218
207
206
212
140
195
240
198
192
236
257
193
181
197
196
201
182
217
157
199
211
186
96
165
182
206
204
195
207
214
200
194
208
224
171
208
203
188
184
245
236
180
172
222
147
206
147
166
207
192
140
191
203
228
201
211
205
267
207
168
287
171
162
201
210
185
173
181
158
241
183
166
212
214
201
251
179
167
149
161
243
224
194
210
258
205
233
231
191
221
204
184
200
171
175
232
223
246
224
248
225
212
178
214
176
187
215
214
215
240
161
234
115
148
213
147
198
210
222
156
284
190
224
192
230
207
112
201
186
261
171
172
171
213
206
191
194
136
233
211
187
216
161
178
157
185
236
221
176
241
147
224
196
219
196
224
185
205
238
162
164
201
162
208
180
230
184
190
233
260
203
229
200
239
217
172
220
146
196
175
227
177
219
201
211
207
248
209
255
226
230
256
201
209
214
254
230
233
132
237
215
254
195
213
154
197
226
202
148
159
152
254
192
180
252
202
229
166
179
199
185
217
174
195
234
156
162
212
161
189
239
240
234
187
190
237
123
239
177
153
239
220
194
181
141
149
130
171
201
225
212
197
296
185
222
248
171
180
271
226
178
203
152
238
223
235
202
185
191
263
255
243
169
215
155
220
217
190
169
234
218
243
182
175
213
183
219
192
226
178
268
124
177
202
131
155
218
189
206
240
183
217
149
209
131
196
178
193
166
243
173
223
146
209
206
191
256
164
268
146
224
194
193
251
222
146
189
169
239
178
178
203
253
165
207
150
279
253
188
177
271
137
237
194
172
199
170
221
256
180
175
156
200
187
152
224
210
173
261
213
244
199
228
255
254
229
248
216
161
232
223
150
152
201
279
228
179
205
234
173
178
279
201
185
238
177
140
267
274
96
186
143
175
192
195
223
207
227
233
139
202
182
171
175
181
195
176
235
175
180
189
226
227
184
184
193
165
191
233
184
188
211
247
197
204
193
201
232
178
214
214
188
170
177
232
210
251
172
279
159
198
203
210
197
217
149
214
229
208
159
204
202
221
163
238
259
194
222
219
175
190
151
234
203
190
232
260
180
188
231
217
233
182
136
262
232
215
264
193
186
228
203
216
235
243
210
208
193
215
167
202
234
171
171
234
125
201
187
218
213
242
178
180
184
212
239
175
195
178
227
198
213
138
198
157
154
215
177
198
227
165
188
201
130
243
228
176
240
210
206
187
231
222
220
162
214
253
180
179
188
234
257
226
225
267
180
205
204
160
216
174
236
208
153
157
262
185
196
204
148
179
219
149
228
200
200
228
222
259
215
166
219
214
206
269
234
165
229
187
155
220
228
238
181
176
153
188
182
229
235
191
261
236
163
174
269
197
266
165
245
165
216
160
215
226
200
217
218
180
202
180
213
191
268
194
210
212
208
232
236
231
246
152
183
236
148
187
258
225
214
235
220
167
230
230
255
230
203
224
175
204
100
144
232
224
208
192
121
230
223
232
237
187
230
174
215
163
143
223
190
206
203
166
226
218
239
193
162
178
165
209
201
224
172
176
237
259
199
240
175
228
194
214
239
197
209
158
202
194
221
229
257
198
190
195
254
218
196
135
214
224
248
248
181
215
200
181
201
189
206
182
169
201
262
186
248
232
154
214
235
234
207
244
165
259
123
155
151
248
198
190
170
271
159
273
125
217
189
243
188
198
209
225
246
190
181
136
105
180
232
227
236
202
252
182
179
201
172
152
169
235
250
161
183
220
247
229
156
198
271
213
206
206
227
172
138
224
157
233
190
242
174
262
187
177
212
188
220
193
257
160
175
200
228
185
200
187
153
212
194
209
198
180
216
183
195
252
159
179
257
278
186
192
153
245
212
198
239
120
185
206
189
207
244
204
186
195
246
180
174
220
188
162
221
198
178
210
274
194
192
173
197
224
244
160
176
233
214
124
225
152
230
207
168
203
209
207
255
256
220
251
238
218
143
155
201
188
167
198
173
184
246
214
168
174
249
261
226
192
181
168
205
245
293
237
195
198
205
234
161
175
220
189
201
220
226
175
186
208
197
216
159
175
232
176
219
134
219
203
210
194
215
179
241
216
231
211
182
202
279
233
238
181
207
161
173
198
174
255
229
198
188
187
185
195
202
211
172
195
219
204
171
240
209
233
174
181
244
271
119
141
172
209
249
183
189
263
236
216
226
179
247
263
209
180
169
162
213
174
202
236
257
161
156
259
220
214
171
248
206
219
132
183
172
202
253
182
277
249
192
248
156
194
247
218
228
239
250
248
245
205
143
172
180
215
199
198
220
179
229
188
183
214
155
191
170
193
181
135
199
201
254
193
207
253
183
150
200
210
164
240
198
153
126
184
214
201
204
199
228
212
195
153
180
167
147
241
220
212
271
145
229
158
254
222
135
137
191
127
151
190
177
184
200
281
176
179
225
192
225
181
170
200
224
204
225
196
228
208
159
231
204
202
214
213
209
149
200
186
210
165
209
183
217
219
225
146
180
232
174
195
246
292
181
190
150
183
272
212
198
191
189
145
184
196
256
198
205
247
178
222
174
198
120
209
252
217
236
183
218
198
143
229
217
145
162
151
210
189
251
198
206
180
154
147
216
155
175
217
242
177
239
145
231
178
213
135
228
165
216
224
171
208
155
147
201
180
205
178
249
216
222
206
175
184
239
229
201
190
192
248
188
228
181
233
148
165
217
174
214
194
266
189
178
187
246
172
232
203
201
267
168
149
173
199
167
254
192
255
236
172
192
243
263
196
160
193
194
250
163
174
223
197
222
228
203
228
200
215
191
170
245
198
162
188
148
242
233
218
161
156
185
205
186
179
220
218
218
202
220
253
248
220
187
226
162
247
209
225
206
200
150
234
178
218
211
195
184
211
262
217
220
160
188
229
237
204
154
196
222
201
123
245
211
226
152
182
178
246
137
194
198
144
175
200
156
169
238
152
151
206
222
177
118
231
213
127
217
193
222
247
167
244
152
187
230
207
226
226
188
176
213
220
205
249
211
227
165
162
158
183
194
123
191
209
240
235
224
218
156
96
244
178
237
238
225
213
224
237
195
211
218
190
206
201
190
152
249
227
178
194
245
213
187
190
218
210
215
236
196
124
245
188
181
193
204
144
169
256
173
180
183
206
236
182
156
227
170
183
127
125
241
237
174
216
183
230
267
205
223
205
216
208
203
247
165
210
221
242
156
187
197
245
202
251
163
207
187
219
192
199
224
162
228
172
268
139
215
252
212
254
218
194
238
198
208
221
170
186
253
232
191
226
201
182
137
180
227
194
216
167
222
148
263
130
176
248
171
150
237
182
209
152
216
186
247
192
154
193
134
204
208
214
280
205
180
205
205
235
202
186
197
198
200
241
248
152
204
181
195
198
219
200
198
206
156
222
194
188
202
195
179
188
180
188
254
213
231
211
235
194
208
219
178
170
204
174
186
167
239
143
200
184
186
186
189
209
194
235
200
218
234
210
176
214
198
239
247
175
208
190
182
177
185
126
180
233
264
169
174
190
214
165
149
187
213
204
205
238
168
272
197
261
201
222
227
222
242
179
268
156
147
170
237
190
182
224
166
218
234
268
193
183
189
170
130
185
183
203
233
161
283
186
193
239
199
155
213
221
191
243
154
154
191
170
166
140
249
142
225
144
163
132
253
173
242
169
142
183
258
213
188
182
163
215
215
172
201
222
258
237
252
199
210
190
154
208
142
183
246
179
255
180
197
240
211
139
182
224
216
172
246
177
229
199
221
235
257
213
239
157
179
231
145
224
206
103
158
164
216
235
181
193
244
212
165
220
133
213
164
201
182
145
215
181
227
187
219
256
209
217
189
230
182
248
156
213
143
211
217
152
212
258
159
239
222
264
230
161
270
225
220
202
160
236
163
209
191
174
216
245
237
202
192
181
164
194
218
201
227
243
191
196
243
222
184
164
252
193
181
268
182
226
180
248
180
132
220
203
237
201
196
209
202
193
234
198
158
206
192
253
234
205
197
189
165
221
174
241
208
232
233
237
218
218
144
254
216
184
214
158
163
196
197
235
146
231
256
213
217
173
168
185
186
243
168
208
235
201
114
185
169
253
208
217
195
204
182
194
221
202
212
151
227
187
214
226
141
270
158
230
146
178
218
217
198
213
227
179
226
159
223
215
243
218
175
223
202
226
154
200
164
165
170
179
187
219
236
230
238
232
171
204
178
205
190
200
160
190
246
199
217
143
204
210
203
222
200
174
191
191
167
216
181
129
144
224
151
182
194
150
261
223
226
239
179
181
203
235
197
170
210
258
258
199
230
180
161
254
260
191
179
157
243
230
176
173
218
178
190
232
202
132
197
225
210
154
234
168
212
200
191
278
212
197
204
186
262
180
173
266
164
182
213
197
223
187
168
220
201
259
240
221
225
268
157
203
232
160
175
176
204
216
214
210
215
230
226
185
267
228
160
169
245
170
235
237
199
152
180
194
239
194
226
225
190
238
152
256
221
242
201
179
195
253
139
168
267
197
208
219
209
146
200
208
214
196
146
156
193
168
188
196
171
203
224
212
140
223
225
203
221
257
149
216
192
150
234
154
142
272
151
257
249
211
244
198
274
234
249
230
172
204
159
232
111
155
151
241
223
167
162
181
173
190
217
169
211
166
240
157
223
242
172
215
97
104
159
181
213
234
187
178
227
213
189
202
203
226
206
245
292
228
159
217
212
158
255
197
235
202
159
163
162
225
169
205
231
265
205
188
160
227
198
238
176
215
201
226
147
232
244
233
111
148
175
234
185
133
229
212
199
187
234
200
221
197
154
149
214
238
181
181
190
169
207
181
191
215
175
184
196
217
210
250
253
229
186
203
165
171
308
221
197
179
221
242
217
120
251
196
150
159
152
193
183
184
157
185
184
166
195
144
217
245
172
237
185
203
197
200
222
257
182
214
237
240
202
224
178
190
210
236
165
155
200
171
223
223
151
197
189
212
226
217
170
183
263
187
216
248
218
235
217
209
174
212
128
243
142
242
252
240
244
154
174
221
166
172
236
223
173
205
130
172
181
218
211
179
184
204
169
221
187
192
232
209
225
255
235
228
220
236
182
278
197
191
183
235
151
228
202
231
244
178
188
245
208
195
115
196
204
211
190
176
215
224
220
205
182
197
207
192
230
268
202
263
188
196
171
221
242
201
206
192
243
213
183
103
193
214
220
274
216
265
257
185
188
224
193
194
244
206
234
256
231
193
206
168
219
175
246
195
203
151
198
160
233
205
236
243
134
168
176
188
231
219
213
192
245
201
201
167
252
159
176
252
164
215
189
210
227
158
200
235
239
279
240
146
199
162
188
182
171
193
131
225
183
241
169
233
268
242
225
204
201
188
182
245
220
208
176
170
170
198
178
232
145
187
183
196
173
133
153
150
220
164
241
199
224
231
258
106
208
164
230
200
199
156
192
201
274
196
155
125
236
225
192
209
226
222
230
238
203
185
193
210
166
160
133
201
138
176
169
236
194
186
230
172
200
240
205
195
175
221
217
220
181
207
223
222
212
203
191
174
239
196
169
231
188
164
117
190
179
161
162
181
177
230
236
230
156
195
189
130
187
195
202
237
127
205
234
153
187
256
251
235
216
193
202
263
258
245
231
120
214
256
196
207
225
141
242
238
156
190
233
124
215
173
187
182
187
218
214
132
219
210
163
173
215
123
146
157
227
196
230
175
164
193
184
182
235
234
241
303
136
160
203
171
194
171
202
188
155
199
240
234
137
185
217
232
184
191
196
229
161
196
216
168
219
224
226
193
196
206
256
251
228
199
169
244
158
198
259
192
190
248
180
227
181
218
198
249
236
182
177
233
239
197
189
181
206
163
201
241
186
248
155
192
212
223
176
206
243
255
253
189
238
210
201
204
203
148
232
255
222
168
182
189
220
155
186
185
201
230
215
203
211
244
213
234
194
236
258
188
181
199
178
250
155
198
241
182
217
216
127
280
220
214
239
181
217
187
208
216
194
250
161
205
246
206
212
200
232
200
230
165
124
220
238
165
251
178
253
235
148
190
192
187
210
167
259
241
262
197
236
207
193
162
227
197
140
206
215
191
176
180
182
236
175
186
199
166
222
189
164
206
246
243
285
185
201
223
196
214
112
225
198
253
194
182
141
252
209
207
235
185
182
214
220
196
225
207
192
238
156
206
182
267
198
155
195
191
205
191
202
205
172
223
183
216
145
179
201
227
145
241
240
162
188
244
249
203
185
284
187
240
239
217
268
201
170
261
215
164
162
199
205
248
180
262
190
107
174
192
119
214
230
197
170
193
138
224
214
121
177
212
167
155
242
225
186
239
168
195
199
245
151
174
230
188
204
260
168
226
205
168
222
204
224
178
190
217
210
214
182
120
199
212
211
171
123
185
225
159
162
193
190
153
191
149
215
157
250
243
173
181
224
200
214
200
179
236
207
190
164
287
166
223
211
215
183
180
237
202
204
191
112
247
207
211
185
169
252
160
220
272
207
217
165
227
219
124
229
156
257
201
148
237
190
172
203
166
197
247
186
182
212
134
216
193
253
256
238
196
224
187
226
196
247
163
189
251
183
175
152
216
175
220
198
248
225
208
270
218
145
238
209
181
174
194
196
176
169
159
218
159
161
231
207
130
208
202
188
236
141
229
218
213
207
234
190
180
180
172
250
269
230
213
192
188
173
175
226
176
134
218
203
226
192
139
246
254
132
231
211
176
203
184
175
194
164
239
211
248
205
213
129
203
168
223
176
219
235
206
228
185
151
190
227
246
201
202
181
244
176
266
174
214
199
203
265
153
198
200
189
171
193
225
108
228
179
220
211
152
215
132
195
161
197
202
202
142
102
258
204
248
180
200
237
176
256
143
255
215
143
203
217
253
186
146
206
233
237
122
211
157
189
269
208
180
196
161
258
201
224
208
198
155
189
235
210
163
228
216
158
187
179
167
192
211
181
266
239
196
187
172
176
263
182
243
171
189
153
161
227
164
199
174
181
188
197
250
152
219
201
235
222
142
241
229
219
166
204
189
225
162
226
249
188
202
186
204
189
185
169
154
230
185
234
223
257
218
200
222
288
182
155
238
189
218
221
250
187
258
194
245
241
202
223
152
164
164
251
201
252
149
162
211
246
183
213
167
157
203
219
214
260
166
202
209
144
207
216
230
173
174
234
191
202
187
247
185
198
198
255
207
200
267
230
212
195
211
194
219
170
177
194
180
216
193
233
190
155
154
187
222
258
189
128
218
152
133
165
212
196
212
229
207
166
152
259
190
127
145
142
193
197
238
175
214
208
184
260
162
239
216
258
241
185
176
194
240
220
163
212
184
237
218
189
202
191
137
177
207
225
191
175
237
164
168
192
172
200
182
214
232
169
227
197
214
254
166
171
217
292
140
174
149
177
209
224
173
221
163
131
128
215
255
167
194
196
209
142
213
136
183
219
227
162
199
155
194
185
168
262
199
251
222
207
152
158
226
233
214
156
157
251
186
226
189
190
224
197
198
226
210
157
172
183
155
201
210
147
182
245
135
162
206
229
221
203
189
248
217
204
198
198
227
144
183
217
165
173
240
214
222
148
217
218
175
190
244
197
234
267
280
216
158
198
201
168
178
182
262
151
223
193
161
190
211
234
262
202
175
259
171
172
197
213
251
199
207
241
281
217
171
226
208
173
214
239
155
170
215
205
188
235
204
186
238
185
205
154
207
207
200
194
226
239
194
175
246
169
206
160
214
238
283
162
176
177
181
191
245
214
230
149
213
166
253
221
190
160
217
230
185
217
170
172
185
202
224
176
198
200
206
224
177
214
172
164
237
190
171
172
181
183
211
260
158
213
199
242
186
194
180
171
194
212
162
231
251
245
195
220
221
187
245
162
191
159
199
251
164
184
164
221
224
216
202
184
232
211
169
186
190
219
221
146
256
207
196
162
235
241
233
175
170
180
189
185
212
184
260
157
227
202
287
158
209
220
221
206
191
199
153
197
213
224
244
223
213
202
169
171
225
249
207
191
181
235
210
210
212
245
198
164
218
180
198
213
215
214
242
168
206
184
153
181
147
217
176
179
185
220
209
258
156
188
198
166
184
214
234
155
198
208
243
195
263
190
198
174
263
176
221
259
195
179
237
231
198
194
150
187
205
198
192
161
226
226
232
200
261
251
231
248
183
201
164
199
234
211
185
242
217
221
207
195
278
208
234
188
189
178
204
225
183
166
196
123
227
219
179
281
242
167
247
187
194
195
214
178
168
186
191
189
224
237
223
172
285
161
216
182
174
215
213
234
242
194
210
205
164
216
191
247
217
215
219
152
140
204
133
169
225
206
194
219
156
158
247
217
208
192
213
247
174
208
209
209
153
207
236
169
220
218
197
159
260
212
217
218
186
183
167
257
197
183
238
219
252
183
162
198
128
145
253
178
245
199
186
235
228
128
206
176
226
238
243
189
258
168
221
181
195
220
168
263
173
221
212
212
201
128
222
202
169
212
176
177
157
189
284
190
209
243
217
190
207
256
252
153
233
184
214
168
171
175
181
285
227
150
189
252
219
193
166
214
199
167
220
223
187
218
250
170
160
222
220
227
157
223
204
251
203
185
209
214
144
191
238
224
152
219
148
165
275
217
190
238
182
180
211
231
158
229
263
164
120
232
172
228
169
177
231
208
195
214
202
129
239
178
226
179
202
204
172
216
234
169
130
195
158
169
200
229
169
208
202
248
167
202
170
255
153
218
204
187
207
226
210
178
220
232
160
190
223
156
168
243
253
201
105
189
238
208
230
138
171
266
246
186
188
158
254
212
234
206
202
187
128
245
232
190
223
253
224
172
229
200
236
192
234
200
211
148
192
212
178
196
133
218
195
191
227
208
171
201
179
172
232
221
146
140
179
229
187
152
222
238
244
206
213
164
201
189
185
205
157
207
212
201
167
169
168
222
156
209
189
237
194
208
199
256
158
189
226
148
247
266
216
211
177
160
203
171
242
212
199
244
244
271
227
200
156
226
195
188
191
160
205
230
248
167
192
141
246
129
154
189
184
208
218
180
193
239
246
200
245
206
210
234
230
181
153
213
204
231
157
224
194
193
119
229
247
170
267
164
210
156
209
155
215
207
185
228
125
201
232
232
169
232
191
167
170
199
226
209
209
207
216
204
271
240
227
218
174
167
216
247
171
209
145
194
210
231
210
236
223
157
214
221
212
204
230
170
197
186
182
192
160
249
213
234
220
195
235
183
183
237
167
261
207
172
128
158
167
218
140
270
224
193
209
180
193
173
192
263
180
182
140
224
264
290
211
174
222
194
188
213
206
191
201
208
173
189
155
233
191
202
194
205
218
226
225
209
253
202
160
209
228
121
192
175
194
185
190
207
143
206
172
219
250
213
195
244
228
124
181
170
228
238
234
201
147
229
188
204
228
227
206
163
236
173
145
208
202
218
217
135
201
153
233
264
185
219
187
215
217
189
215
190
239
173
200
214
233
179
210
183
155
199
211
178
154
170
200
216
220
212
200
190
198
204
207
219
215
168
128
179
126
163
220
176
251
180
209
190
222
202
211
219
213
204
229
226
123
231
205
228
203
228
180
210
186
209
191
287
222
199
150
157
182
197
144
222
266
185
220
215
191
177
206
163
181
236
203
177
163
196
172
231
146
183
207
195
192
198
166
258
143
136
131
234
202
243
205
190
202
204
149
197
179
285
225
168
187
203
250
248
209
261
169
211
211
247
195
157
143
198
167
202
201
243
140
219
169
200
220
176
207
212
159
178
214
189
204
189
225
246
190
199
195
227
207
212
214
221
205
280
216
178
146
221
248
116
240
148
223
185
160
201
225
194
221
142
192
180
139
187
198
212
221
264
226
196
171
210
180
218
187
184
181
131
231
257
196
245
226
192
253
203
179
165
216
239
201
247
147
179
197
167
276
124
154
150
184
156
253
150
154
160
177
189
226
241
146
187
211
207
227
233
208
102
214
187
234
177
181
212
141
137
251
199
203
203
240
215
276
235
258
210
283
168
170
170
194
171
169
177
200
234
216
200
178
206
234
209
184
180
182
210
268
257
215
216
203
210
224
185
253
189
171
187
187
188
214
201
227
250
186
184
213
232
234
240
178
138
199
159
190
247
172
244
197
215
205
233
203
193
244
167
170
199
248
232
171
247
214
178
248
291
179
216
239
167
269
172
227
201
181
180
245
194
127
188
254
197
275
194
196
182
260
220
141
128
187
176
225
160
246
195
134
230
223
266
247
234
190
172
171
209
160
130
167
162
130
204
214
206
241
144
221
214
218
227
232
270
201
192
245
213
188
131
265
118
239
163
254
140
235
179
225
216
210
157
197
164
188
258
289
216
159
211
108
223
216
248
174
211
188
187
183
234
222
261
190
170
187
229
242
171
240
179
202
188
151
212
158
205
175
204
189
183
190
216
209
206
176
196
176
144
184
150
176
176
244
213
255
255
162
221
207
241
177
248
231
201
185
181
227
180
157
240
214
146
233
242
205
168
234
193
180
194
205
259
193
129
212
220
236
244
182
214
149
219
182
166
130
148
190
185
242
219
238
172
192
222
169
167
196
230
237
201
240
188
173
228
223
186
214
204
239
199
201
212
135
251
266
211
155
253
150
139
181
235
200
187
197
211
219
182
178
165
141
184
182
225
191
143
217
155
115
189
206
147
221
248
203
190
191
186
240
200
206
236
214
209
214
194
189
189
167
216
163
191
201
225
190
166
205
223
233
238
260
211
184
228
152
196
212
195
235
243
204
166
226
189
116
110
199
150
264
229
286
217
238
210
209
208
259
180
156
242
217
195
241
185
186
196
236
227
203
146
232
177
234
225
193
226
215
207
204
151
165
179
227
205
107
155
228
164
188
234
163
182
131
254
160
203
231
200
224
175
161
193
227
249
239
225
210
216
195
246
267
152
214
212
177
176
258
235
192
166
203
155
191
280
187
205
177
216
210
169
231
210
243
185
224
182
243
203
156
206
211
183
159
262
158
200
140
199
141
188
208
240
208
235
181
161
219
222
131
181
107
186
139
180
174
128
164
173
180
201
271
261
177
182
215
231
197
168
192
206
197
199
173
157
233
176
194
255
228
205
156
222
165
154
246
215
235
167
239
216
153
163
181
187
150
187
247
204
164
241
234
224
192
235
157
194
216
220
153
233
187
167
123
176
187
163
173
208
192
165
186
160
285
244
157
160
237
181
181
222
253
181
211
211
249
237
194
127
179
261
213
244
190
200
173
161
236
247
151
174
173
219
281
202
219
176
190
249
193
214
174
206
257
158
183
259
196
249
162
192
173
229
169
182
247
183
205
262
186
161
203
249
242
215
246
190
199
138
263
275
217
237
181
221
179
180
157
197
251
241
175
236
265
209
238
200
228
221
172
217
212
215
166
209
233
233
177
236
203
183
239
113
200
184
222
195
165
188
195
218
209
240
223
254
233
153
180
161
250
224
224
179
265
164
173
232
196
203
203
191
215
163
255
188
232
214
291
209
196
241
165
188
214
184
178
227
243
154
192
159
215
260
215
148
194
193
246
195
197
196
192
162
234
243
264
224
181
231
225
176
219
118
149
191
207
202
219
237
245
197
144
223
243
218
226
142
231
218
243
213
231
155
204
195
266
207
208
207
141
197
216
215
177
182
112
216
169
157
232
206
219
227
193
219
181
173
209
226
218
275
199
230
275
169
160
221
229
195
174
192
226
183
259
197
196
132
167
222
244
175
179
261
225
237
191
252
217
192
127
186
174
218
184
174
180
166
226
190
161
244
195
210
195
201
173
181
158
199
209
207
227
211
159
245
230
243
199
163
178
132
203
138
251
236
234
239
141
231
201
122
206
188
270
208
163
196
189
155
212
186
227
209
142
223
212
222
182
158
248
140
217
212
176
179
132
189
235
206
192
154
196
206
229
175
207
184
249
170
172
158
179
181
258
166
144
186
214
206
178
223
242
187
209
151
124
191
122
173
205
211
214
195
197
142
180
203
141
223
210
206
205
205
137
204
224
180
147
223
200
253
169
245
224
155
229
241
233
217
208
222
225
171
199
159
203
173
184
135
200
205
209
230
224
166
172
194
161
216
273
263
211
175
178
181
179
183
198
244
205
222
174
179
161
205
234
238
185
165
201
147
237
177
204
211
221
239
171
221
160
191
194
241
149
205
186
206
243
162
249
214
227
155
188
220
205
201
180
117
157
174
127
235
176
211
248
287
189
193
188
196
232
217
151
171
148
217
233
208
210
170
190
216
210
167
248
199
260
169
183
219
230
190
211
221
222
239
209
158
204
219
207
186
227
164
187
137
180
221
188
185
177
217
199
215
263
185
248
228
204
210
269
193
205
212
207
191
202
157
190
113
206
183
177
245
192
224
234
175
216
230
248
207
205
179
180
134
190
162
238
198
181
177
193
220
234
223
169
269
203
151
218
237
167
206
208
196
145
169
178
227
235
189
176
206
209
191
140
171
230
207
163
200
206
152
251
194
192
170
266
204
213
201
237
154
255
211
238
220
105
228
212
156
201
175
191
194
153
170
216
214
237
218
189
209
209
216
199
146
231
234
198
205
179
202
194
222
206
202
187
228
210
236
194
179
133
267
157
181
192
227
202
162
158
133
228
197
136
152
162
210
224
249
191
217
164
219
250
179
213
181
199
221
244
186
209
212
246
227
158
227
233
207
184
246
213
219
255
222
214
219
193
192
246
237
238
225
240
179
230
202
164
222
181
134
187
227
214
211
175
228
166
189
213
186
230
112
246
217
156
116
247
212
224
237
230
231
186
204
226
214
192
198
138
212
201
235
207
236
191
190
197
204
213
184
197
176
154
165
192
188
204
208
160
170
208
262
212
151
225
244
230
237
198
156
235
206
195
228
200
166
209
190
120
240
182
184
216
229
197
183
195
190
234
190
197
230
273
230
156
229
200
188
159
199
183
215
226
227
213
203
168
117
239
177
230
226
151
204
230
184
253
177
210
212
206
178
241
188
187
184
194
156
173
241
200
168
235
219
216
233
210
199
154
159
184
204
168
155
188
178
217
203
178
194
216
213
151
195
170
229
253
159
216
151
233
184
149
181
186
230
164
240
204
200
235
226
178
223
197
205
224
165
165
154
210
249
161
169
233
191
200
167
186
255
175
190
193
140
208
238
179
206
212
190
252
178
200
246
163
236
190
125
248
250
179
229
261
221
227
259
149
209
237
265
179
236
187
215
166
212
207
138
197
180
223
175
198
279
147
264
167
138
209
249
146
160
238
188
172
214
145
188
136
169
212
156
238
193
147
187
226
220
199
272
188
169
202
182
211
210
259
282
191
252
179
183
191
199
212
153
161
167
191
197
240
306
202
173
197
195
200
153
264
200
206
196
233
187
241
184
243
203
211
220
256
254
203
189
144
228
264
213
198
189
220
258
204
134
243
172
288
155
194
192
169
225
227
150
231
132
149
163
191
201
222
176
179
200
204
150
234
109
176
130
250
250
183
198
151
170
185
181
263
219
217
254
187
162
184
219
160
205
221
205
197
205
197
248
226
208
148
225
192
244
259
239
208
192
209
173
207
216
209
174
221
127
159
207
210
174
156
226
179
190
211
197
200
246
216
163
225
233
185
170
208
145
181
154
122
168
186
208
288
200
202
180
200
182
231
211
236
170
239
153
136
170
254
258
221
170
162
193
197
165
184
206
160
200
155
239
207
225
198
148
178
209
181
276
155
202
218
216
222
192
197
259
253
177
222
220
238
154
130
222
239
204
201
194
201
227
236
186
146
240
155
205
229
219
233
182
178
198
238
242
173
167
183
180
140
206
156
168
191
239
228
208
173
206
172
175
203
176
174
195
226
240
213
205
230
249
202
161
196
172
209
262
207
227
227
151
255
138
236
226
222
170
211
216
189
178
241
191
220
236
229
201
221
208
242
218
141
203
184
222
207
183
158
180
120
216
151
258
230
221
154
88
238
164
192
136
143
132
211
195
184
189
163
141
199
181
183
172
245
209
214
237
181
174
181
191
219
186
239
116
133
207
187
200
189
210
174
206
182
209
248
173
223
168
274
201
206
276
239
216
212
189
229
218
121
210
167
147
204
255
257
244
204
192
191
184
223
226
172
149
219
167
200
247
177
155
156
222
254
246
208
203
261
237
210
234
223
180
181
143
230
171
149
193
164
222
181
150
225
188
241
187
148
257
180
145
248
190
247
206
207
219
175
223
223
217
205
219
148
159
182
208
224
205
241
178
272
226
182
150
187
171
172
168
187
230
173
256
200
189
268
239
200
186
268
184
245
207
138
216
163
242
229
210
165
186
226
217
217
231
144
162
227
207
201
245
209
250
186
179
188
217
180
209
171
170
258
245
180
141
214
203
192
166
156
236
256
148
220
174
214
189
185
185
205
118
226
219
230
171
160
216
194
179
198
174
221
241
226
205
132
219
225
234
162
191
186
244
243
222
216
158
235
161
232
157
183
194
135
166
180
82
132
174
166
217
169
177
227
186
164
189
225
183
219
198
214
137
189
180
212
265
132
207
208
185
148
201
178
235
188
207
259
191
209
251
151
152
196
151
212
147
229
213
214
166
235
207
153
210
173
200
239
277
202
185
253
239
235
174
172
246
172
215
157
210
114
232
200
207
176
222
127
245
206
107
220
113
219
208
118
225
182
172
222
154
208
168
269
177
206
258
229
192
169
213
252
211
213
231
228
221
219
196
219
239
225
158
220
172
171
202
212
225
207
218
227
245
191
282
249
194
230
246
177
248
224
251
176
156
208
219
151
133
270
147
231
151
208
196
198
182
196
214
197
241
253
225
222
230
229
185
206
250
243
156
191
141
158
233
176
169
260
178
252
208
253
270
200
276
134
194
205
218
231
161
168
242
243
230
128
149
179
210
140
194
218
181
204
241
260
254
239
268
217
261
196
216
191
202
192
279
215
201
166
219
201
193
166
198
249
220
208
172
247
196
195
205
182
153
230
170
232
233
195
252
155
180
202
247
228
223
246
237
191
134
164
214
235
214
211
180
167
207
162
236
247
214
269
221
227
230
201
211
159
275
199
207
186
156
182
173
218
240
152
188
226
157
172
263
172
172
226
210
137
255
171
202
200
185
210
246
201
230
205
218
213
216
231
155
221
195
154
214
186
187
248
229
232
210
159
181
206
207
176
164
209
274
192
166
240
259
155
217
143
190
207
213
177
164
188
212
196
199
238
137
231
217
146
195
195
265
212
166
159
232
159
235
191
182
253
225
196
207
162
165
148
176
250
203
220
208
139
223
239
124
205
169
221
194
262
193
218
206
205
204
218
202
171
216
264
234
185
169
212
185
224
209
192
174
204
208
213
215
117
204
162
118
216
138
176
181
200
163
201
201
149
219
151
150
246
198
196
175
202
264
233
249
201
249
208
235
192
186
190
191
199
220
222
208
142
209
194
176
182
202
159
200
211
120
175
248
134
159
210
242
241
180
196
272
204
205
217
212
191
165
235
221
194
152
221
249
265
209
219
144
258
178
210
178
213
220
140
164
186
228
201
125
190
165
217
245
158
195
213
192
196
171
185
165
160
141
141
189
214
177
230
216
194
211
214
175
217
205
229
213
219
231
228
200
234
195
238
235
192
158
180
145
204
249
188
209
220
254
230
260
217
199
166
213
204
275
233
189
259
153
249
236
199
186
193
148
233
229
220
197
191
193
223
165
264
179
159
211
212
202
169
126
217
128
223
193
163
253
205
173
206
202
276
187
182
234
209
243
154
185
229
159
216
184
115
184
211
197
258
205
145
167
231
187
195
209
256
151
165
141
109
221
254
152
227
147
198
203
224
176
223
213
274
248
197
189
191
185
166
262
211
184
156
222
186
215
175
226
193
228
120
183
221
180
165
135
222
168
220
208
250
171
216
201
188
246
228
218
174
200
250
137
210
209
204
140
225
164
226
260
210
266
208
214
210
227
165
189
132
185
209
195
200
200
142
241
184
211
258
179
243
215
211
195
160
225
181
185
221
180
209
233
170
255
205
225
221
188
254
162
198
187
171
214
192
234
161
195
184
186
174
141
296
200
187
214
169
213
147
184
191
238
182
215
173
213
263
178
175
207
235
174
181
219
167
203
216
147
250
168
220
190
230
225
174
236
132
228
179
214
231
229
233
251
167
224
177
199
219
268
192
214
181
300
223
223
241
163
189
228
151
203
169
225
232
188
169
240
189
233
209
230
226
207
224
213
203
208
238
128
224
203
173
221
201
205
239
185
212
190
215
238
188
217
209
214
226
233
231
228
174
190
181
161
175
201
159
182
136
152
181
135
184
213
199
246
231
186
217
213
254
190
146
199
234
157
189
169
298
272
198
169
209
177
249
249
140
201
213
216
216
218
188
222
163
178
189
251
204
217
198
150
227
213
224
232
278
207
180
149
227
210
213
211
201
172
160
238
178
206
258
176
221
214
216
212
238
201
203
201
188
162
152
201
243
233
169
219
223
218
210
173
133
170
290
171
178
213
235
250
253
247
219
177
217
161
212
251
207
230
245
163
149
171
252
172
193
173
211
257
205
139
251
239
227
179
214
229
148
146
183
172
224
273
136
163
185
214
149
194
208
200
185
220
267
137
167
198
240
185
224
181
233
256
253
264
220
237
126
243
178
208
162
167
184
231
127
159
245
194
202
138
207
230
209
225
209
211
257
198
137
199
165
215
114
220
164
194
215
195
174
201
218
168
234
221
192
190
210
215
224
203
197
243
200
197
240
176
259
181
180
232
169
191
215
214
166
159
231
206
208
241
243
218
175
216
173
173
229
247
201
268
191
187
179
217
196
161
194
202
205
127
185
212
201
164
223
185
287
204
148
221
197
175
165
172
190
219
272
215
205
217
205
231
239
214
245
240
209
241
204
180
183
211
181
180
166
187
191
171
190
193
204
230
246
242
172
202
171
187
212
192
188
138
230
165
210
248
158
172
219
201
223
192
164
194
139
164
196
251
211
228
220
167
188
259
210
193
194
226
241
194
160
184
216
225
193
192
209
148
219
170
145
265
157
208
218
216
168
215
217
130
282
204
244
243
220
197
211
189
191
265
192
221
201
207
266
196
225
201
189
184
213
214
208
193
258
240
190
227
233
219
153
191
201
154
182
216
167
167
254
213
118
266
191
213
234
203
243
167
254
173
129
203
215
205
236
173
240
227
213
166
260
238
160
156
251
202
178
235
229
210
154
197
194
281
206
169
187
175
192
139
169
205
185
188
198
225
199
250
190
237
222
209
214
185
194
202
183
239
249
171
219
220
251
172
250
189
206
241
259
209
205
83
147
209
227
215
180
189
190
250
229
130
214
243
174
199
171
206
174
208
164
184
269
210
192
203
172
213
127
173
201
214
188
195
230
249
188
268
196
224
195
161
174
184
237
189
229
181
189
183
221
207
205
228
187
211
208
214
211
221
150
185
204
201
146
172
194
156
189
239
237
193
228
174
198
213
221
254
188
174
201
207
145
201
175
177
264
217
181
213
205
225
183
157
170
197
226
206
237
198
248
162
180
183
207
223
234
248
138
202
217
244
184
192
147
249
224
236
184
190
230
250
214
177
194
208
202
212
151
250
184
191
244
192
187
203
216
220
130
137
163
206
238
269
244
224
186
232
206
207
261
195
189
150
235
229
194
186
248
215
171
171
204
192
194
180
282
179
236
223
173
226
223
204
182
186
201
205
178
179
254
213
136
201
168
224
213
203
240
235
129
256
244
214
286
172
231
203
242
234
157
208
212
189
233
152
219
240
222
217
146
165
167
177
142
274
253
214
211
238
221
200
188
188
182
236
238
147
177
191
191
127
207
231
175
198
160
200
231
206
216
162
173
209
240
133
201
205
237
213
224
191
215
132
200
205
184
227
146
213
210
208
184
201
223
196
197
200
245
210
203
218
158
221
189
220
183
199
192
146
242
242
191
203
186
178
236
190
154
233
184
183
254
180
194
166
164
235
197
213
157
194
186
217
187
231
179
197
243
245
183
179
201
186
240
141
210
152
223
210
230
269
219
235
171
162
161
155
197
205
220
253
159
91
222
178
184
218
190
213
168
185
235
213
159
184
214
246
168
125
157
206
199
262
218
243
241
208
208
274
201
175
240
223
146
210
172
154
122
265
198
235
207
205
186
208
200
186
275
254
206
216
234
210
256
213
174
180
206
191
163
186
221
213
168
168
229
227
161
195
184
152
193
209
203
95
182
206
166
210
208
189
241
163
160
176
231
164
247
211
221
228
198
155
202
177
214
236
175
224
247
262
160
207
142
178
198
275
183
177
190
232
186
204
205
163
166
202
165
196
226
192
247
137
160
215
221
235
183
184
239
224
160
218
217
217
130
229
174
201
177
169
183
251
178
262
239
213
143
160
212
169
152
148
169
222
200
208
199
157
201
158
245
195
219
164
230
179
225
157
145
222
218
272
174
203
193
171
182
191
239
260
150
206
152
170
245
181
155
167
204
180
194
221
129
162
216
143
209
195
150
193
183
248
260
216
212
259
138
171
175
214
195
196
210
241
202
200
226
188
173
176
237
231
177
240
241
159
210
240
183
202
195
211
193
237
264
193
193
202
202
186
173
189
224
193
259
219
232
185
101
181
253
228
226
195
132
258
193
190
148
170
261
188
104
184
270
217
170
178
228
239
216
157
237
232
201
195
222
272
208
200
239
193
245
221
196
268
163
198
188
229
247
198
222
210
239
240
204
193
148
208
185
196
195
237
159
216
220
207
198
219
178
207
230
176
201
176
171
160
235
219
192
170
147
201
128
186
200
237
211
225
138
170
175
211
192
207
158
235
153
183
202
185
164
239
255
158
232
236
128
151
206
205
211
176
221
260
203
170
225
231
200
221
225
164
217
196
139
193
233
176
246
245
178
241
199
206
190
216
213
212
165
246
158
201
209
241
191
210
223
255
181
224
235
164
190
146
206
217
168
203
170
186
236
169
154
225
139
181
174
186
214
192
229
150
218
217
197
173
224
139
202
196
205
178
257
178
280
194
155
194
175
168
150
195
248
146
220
265
239
205
227
262
167
245
242
194
185
186
180
258
238
209
226
195
242
186
213
230
183
198
212
151
167
180
174
252
184
241
159
232
189
226
137
200
193
213
190
246
152
174
175
253
219
194
143
177
185
243
178
213
217
208
223
252
177
239
190
168
196
159
191
149
175
204
251
175
192
166
243
221
259
185
192
225
207
181
214
241
258
178
249
254
203
258
211
178
185
258
160
201
179
195
165
176
203
206
261
181
144
120
261
249
171
217
163
172
180
179
162
211
229
205
229
220
250
197
202
258
230
270
179
251
178
185
133
250
192
169
142
242
175
176
160
176
178
222
163
217
202
187
160
211
221
225
226
223
208
224
164
225
208
247
140
187
170
166
152
188
149
254
230
217
223
183
198
219
215
116
179
263
204
205
290
189
169
246
184
235
230
197
208
160
213
178
197
161
171
242
184
162
182
195
193
254
222
252
183
224
246
225
170
186
180
233
271
178
189
178
194
198
170
183
168
183
162
170
224
220
191
247
227
203
222
194
236
164
200
232
148
216
205
169
232
159
169
215
160
150
212
210
205
190
147
148
202
139
208
189
184
178
184
211
182
252
220
197
203
249
197
195
205
190
212
218
197
241
215
229
172
243
152
182
223
207
208
203
250
227
206
181
142
264
205
126
223
186
177
152
210
134
210
160
194
223
172
164
244
200
198
219
197
200
147
205
221
207
147
247
250
203
159
248
246
173
235
165
212
202
210
231
210
222
241
244
187
144
147
200
246
256
204
164
194
236
222
199
249
168
259
228
197
242
238
227
155
267
213
194
151
157
170
124
163
187
194
200
225
202
231
184
248
229
213
231
231
203
233
207
222
181
180
166
230
212
171
181
197
161
217
278
206
191
222
169
163
223
180
200
200
212
211
164
188
117
197
237
132
172
216
230
230
224
224
222
171
218
130
156
165
242
206
198
175
209
190
162
201
216
255
181
226
138
154
274
244
108
219
206
212
160
228
216
94
161
223
211
229
226
197
257
131
185
273
266
238
162
133
212
223
241
210
258
222
204
238
210
244
118
140
102
203
196
163
255
215
205
182
162
227
215
202
209
199
147
250
165
180
114
274
198
165
201
166
226
223
211
234
214
240
220
148
201
218
237
139
176
186
214
175
185
131
172
156
190
220
164
176
210
212
224
239
272
186
223
219
126
187
246
196
173
221
187
237
256
140
189
197
202
173
165
177
215
240
163
221
245
216
203
201
227
221
182
211
171
228
168
208
190
223
156
200
138
177
233
179
165
208
224
222
207
250
130
225
205
232
261
218
184
236
147
200
222
179
263
187
194
204
217
276
238
184
243
183
273
194
223
129
226
206
197
211
224
189
192
208
162
177
132
211
193
219
151
197
167
175
209
229
191
206
174
187
190
208
214
155
221
159
201
249
200
177
220
253
276
195
230
235
196
227
188
220
188
197
210
191
212
206
202
225
199
245
165
253
206
224
163
164
210
258
180
158
233
182
181
169
222
217
214
232
154
176
149
197
229
193
257
188
188
217
195
178
231
189
176
113
203
182
185
259
158
163
223
209
210
198
227
238
172
197
169
217
131
230
191
249
191
215
206
197
164
179
237
239
240
153
225
185
232
224
187
132
246
201
163
218
196
230
176
167
224
181
122
228
177
194
185
168
217
136
179
265
131
189
165
215
205
236
260
150
197
232
160
187
164
252
200
189
210
196
189
183
186
161
191
132
195
158
161
178
148
237
186
169
275
252
202
212
222
154
210
225
156
221
209
219
195
229
163
234
167
195
178
234
169
233
140
219
245
209
240
141
176
196
197
210
160
187
222
240
253
205
220
162
205
240
146
244
166
162
220
247
106
218
200
211
198
167
241
221
165
199
187
161
145
216
210
228
213
207
130
203
171
221
178
201
218
218
230
202
167
202
239
195
210
176
254
166
275
176
191
223
142
230
188
183
246
161
222
183
218
224
193
123
203
206
230
202
167
202
166
227
175
169
198
215
224
193
205
163
204
207
197
230
159
234
228
170
193
195
184
159
167
191
125
219
229
231
162
231
204
188
212
180
191
194
183
195
121
167
169
121
182
244
180
181
190
127
145
177
225
201
195
131
184
190
264
240
203
232
241
186
219
214
233
176
171
230
167
148
195
196
193
162
169
170
166
253
158
175
272
190
208
233
172
248
196
190
188
168
253
251
237
162
156
128
205
253
170
233
180
205
220
206
221
227
204
165
295
193
203
246
206
205
240
208
129
269
181
186
219
267
171
250
260
188
210
208
180
210
242
100
214
83
279
216
215
145
216
203
232
124
138
227
199
216
161
194
188
169
247
217
160
233
226
194
163
151
278
215
168
235
285
193
164
192
236
225
187
203
213
179
122
270
191
221
256
242
242
172
166
267
206
174
173
165
134
153
238
148
173
174
186
203
169
221
218
194
204
208
236
179
163
223
207
143
252
208
208
145
221
152
179
255
238
201
231
172
148
235
215
233
179
184
210
166
159
203
242
161
189
236
213
173
185
168
174
199
142
209
208
272
204
210
229
168
146
182
234
206
197
198
213
168
210
164
185
172
175
232
192
234
173
161
239
231
173
163
196
274
118
164
162
142
210
220
239
185
228
218
217
256
166
193
153
166
154
177
235
209
247
152
202
201
190
245
227
160
184
220
246
245
147
252
216
210
223
163
176
146
233
228
226
152
270
221
192
165
237
224
166
194
175
174
185
162
135
197
204
228
250
196
121
150
234
144
234
260
185
173
210
249
235
174
156
172
180
192
201
209
247
161
191
177
164
137
154
202
231
240
191
174
216
214
178
214
252
240
221
216
234
199
284
191
225
212
210
172
226
176
189
160
156
269
207
176
192
205
206
239
193
249
224
257
173
234
173
258
216
187
148
159
206
191
198
176
233
159
127
246
187
179
234
161
233
201
176
216
270
231
198
202
176
208
258
166
185
185
250
169
193
146
144
158
180
261
190
234
266
201
205
114
187
213
243
216
143
184
197
272
239
223
172
204
212
206
232
216
204
256
226
202
219
223
137
206
230
174
190
195
167
201
240
178
209
231
236
163
173
206
224
206
242
143
228
152
200
188
162
237
244
204
259
170
210
237
196
233
224
177
220
250
207
184
167
212
193
192
166
196
198
183
217
134
166
238
172
183
250
176
207
202
155
138
206
223
243
189
159
154
144
205
187
214
233
228
173
199
175
221
212
160
173
218
209
190
205
148
221
167
167
214
169
190
162
171
278
196
161
189
213
230
184
178
214
140
243
217
177
209
169
161
219
183
143
159
256
228
183
190
247
206
157
220
159
213
188
177
201
228
195
165
162
214
197
263
247
201
271
184
212
257
178
241
239
159
128
228
236
194
251
196
221
218
199
210
199
213
156
184
270
212
245
211
189
156
268
191
185
187
240
232
234
188
213
155
172
187
209
211
145
140
287
227
235
251
213
230
201
231
192
258
250
181
198
190
214
200
219
211
217
224
246
233
206
188
158
271
263
227
217
174
184
164
207
191
237
190
271
191
160
246
220
213
160
214
192
182
244
175
167
231
268
217
246
211
201
214
203
253
233
159
205
241
261
106
205
193
114
175
173
231
160
174
203
143
157
255
241
203
183
249
194
187
185
256
139
146
203
199
203
221
157
214
210
179
219
165
158
195
250
163
171
223
235
211
156
204
184
205
155
163
265
122
176
204
198
204
209
253
190
206
174
157
295
214
211
153
211
176
210
210
195
219
150
173
195
174
166
228
183
165
256
249
214
192
201
191
235
225
182
122
188
200
232
142
238
233
160
242
233
218
199
189
156
174
211
201
186
254
184
227
215
129
234
167
179
217
159
181
222
253
211
228
201
147
191
161
206
194
233
174
193
180
133
219
195
193
230
223
240
194
242
179
235
231
227
219
239
159
237
175
203
198
157
212
217
158
248
215
194
150
210
225
180
196
242
136
202
228
219
125
214
203
222
134
227
246
179
192
192
234
169
228
181
185
230
217
187
147
197
266
220
166
161
129
228
186
174
182
160
185
204
201
173
198
233
287
241
200
223
241
215
250
181
171
216
194
234
190
213
199
221
161
193
145
199
252
231
207
222
185
182
207
199
251
165
201
247
228
218
164
216
207
210
190
136
167
158
230
236
208
215
173
163
199
152
203
202
194
192
181
216
185
181
182
220
178
210
180
126
219
197
230
175
256
178
204
234
277
160
274
279
179
201
212
178
222
216
196
191
245
200
160
261
198
213
199
210
147
217
221
181
167
261
249
234
241
145
227
204
188
253
223
229
290
161
222
210
156
222
142
187
205
145
220
221
142
208
181
183
179
174
182
168
154
183
175
203
187
192
134
220
235
249
198
232
207
156
148
270
211
162
220
222
211
234
211
177
169
228
204
144
196
251
265
154
198
190
160
162
182
210
230
205
280
188
258
250
231
189
172
175
193
169
145
220
203
213
238
217
204
181
167
187
148
202
184
180
177
183
248
193
187
272
181
197
172
166
183
215
214
213
201
235
240
186
234
209
144
183
200
236
210
242
157
239
204
160
225
220
165
219
192
194
221
219
162
168
269
193
223
180
161
227
183
214
184
217
143
215
205
221
136
221
273
171
180
179
233
234
179
200
155
200
192
188
174
228
257
195
177
228
251
160
223
199
228
184
195
154
183
218
151
218
178
199
177
175
187
174
190
168
229
272
228
155
122
160
160
209
179
140
159
130
199
204
192
185
223
202
211
203
154
206
248
190
194
157
148
213
205
138
197
224
218
239
261
197
183
172
203
233
180
212
141
204
246
254
146
188
193
124
254
181
215
196
238
209
250
233
169
227
193
147
168
253
226
217
169
175
206
233
227
253
136
185
241
236
205
221
185
217
224
155
248
232
231
202
220
249
154
207
249
240
132
188
211
159
175
224
191
234
268
172
218
208
209
235
173
229
197
261
231
169
181
185
156
176
204
269
205
231
199
187
211
244
228
246
140
250
189
182
213
243
213
174
170
198
194
231
231
242
253
192
256
188
204
234
232
198
197
210
223
234
175
183
190
207
187
221
159
258
216
242
199
208
217
212
190
214
185
203
217
271
219
214
181
146
225
175
196
213
194
191
136
187
182
146
234
198
157
251
240
262
206
197
225
219
225
200
165
180
169
259
204
139
202
155
196
235
193
195
209
173
189
209
224
245
145
186
206
213
230
222
214
166
250
197
146
207
228
239
229
222
220
171
223
223
162
170
163
216
218
233
165
234
195
210
199
178
245
148
221
239
140
247
239
255
176
207
239
224
227
162
240
207
229
197
173
193
200
185
176
173
161
248
218
232
193
187
194
171
231
168
166
212
140
149
163
168
158
227
137
181
179
227
182
212
181
209
174
233
172
169
227
147
225
174
199
216
160
229
165
218
239
187
163
258
205
180
256
199
232
245
131
190
206
229
221
254
181
219
123
172
170
238
167
206
214
198
198
204
204
230
220
258
147
123
225
184
211
285
205
219
205
258
214
218
154
138
194
224
224
151
192
159
155
183
172
222
218
247
205
138
156
201
171
161
171
143
198
156
189
204
188
204
234
153
192
213
192
224
182
226
143
197
195
186
227
164
208
153
259
262
179
209
186
109
191
263
241
195
197
188
113
169
171
120
210
185
172
172
143
246
227
132
145
279
225
165
142
168
154
256
209
218
231
155
170
208
269
175
199
227
240
188
208
120
207
192
174
171
218
186
178
189
202
227
188
186
180
228
239
216
181
162
191
223
154
227
220
204
164
214
242
196
227
195
211
240
207
204
151
189
253
179
194
172
209
161
136
237
223
182
145
230
212
260
196
239
177
168
236
223
178
187
173
224
203
197
239
220
187
214
201
188
217
166
151
236
197
112
268
164
191
166
216
186
164
248
236
201
235
254
238
146
176
253
235
272
179
187
217
221
180
233
169
213
212
228
229
118
183
185
185
229
158
210
214
132
175
175
245
224
193
193
231
230
232
223
261
211
246
221
236
218
174
155
201
240
198
179
248
216
233
211
212
169
201
150
177
192
165
250
176
134
238
162
258
202
222
188
262
180
217
264
225
178
180
201
136
139
208
199
184
179
193
195
184
202
253
193
238
202
214
136
179
211
184
239
69
181
159
170
206
155
139
244
159
208
196
210
266
206
233
116
263
175
199
192
187
218
199
267
189
159
258
156
223
154
191
215
179
198
169
237
242
214
238
186
140
219
268
177
217
193
187
138
247
202
177
255
219
180
256
208
221
240
200
172
160
148
200
212
242
185
225
195
161
166
211
213
180
249
238
194
173
217
195
163
225
201
208
186
151
242
238
238
197
272
243
232
242
193
188
169
156
193
199
210
192
168
174
173
250
204
161
141
142
242
166
215
213
197
177
268
235
183
215
215
164
194
212
199
121
274
170
232
215
158
214
194
206
172
181
228
211
160
145
215
153
247
205
197
233
181
250
244
187
217
188
125
99
184
237
211
211
183
215
216
176
183
228
174
165
192
235
181
199
227
214
232
132
191
217
226
218
203
226
209
202
204
224
251
200
163
143
171
190
175
247
181
130
250
206
185
177
187
236
282
211
232
162
229
176
273
188
176
197
178
167
196
196
277
203
209
152
208
242
207
165
201
175
223
226
228
157
198
221
258
170
200
218
194
219
203
207
232
139
229
185
224
222
195
235
157
190
171
174
202
196
187
137
240
188
197
187
168
272
205
240
240
196
253
159
203
237
226
173
173
146
220
141
195
170
203
230
215
191
260
165
211
194
148
241
146
226
132
271
194
182
179
263
207
222
222
299
207
164
207
218
218
211
186
192
221
253
253
179
222
190
177
187
216
195
203
257
222
221
215
205
185
204
231
213
153
198
181
170
227
265
193
255
266
193
196
134
143
207
185
201
191
223
212
173
231
170
215
206
246
222
205
224
187
226
140
254
214
196
238
231
153
132
234
173
214
167
101
214
166
257
135
171
196
203
214
170
184
224
206
210
162
228
156
151
170
232
171
217
182
256
237
147
153
204
181
163
223
185
167
168
239
196
195
203
183
160
161
252
207
114
202
212
278
235
265
187
132
233
230
191
189
163
199
234
203
264
211
272
219
154
239
195
248
154
238
179
206
235
122
217
226
218
203
219
175
207
240
158
181
164
171
248
253
179
224
194
231
211
271
207
204
212
199
167
160
165
216
172
212
157
206
251
240
178
183
263
226
221
152
197
180
210
160
206
135
180
197
188
205
137
190
207
200
241
231
234
203
174
175
197
207
184
205
226
253
214
194
178
198
227
123
188
208
247
215
169
199
211
179
186
237
121
208
221
206
198
174
196
167
282
217
148
234
212
205
272
155
206
166
168
202
125
185
162
198
108
202
215
250
185
246
207
207
233
200
197
196
224
182
232
140
193
201
209
195
218
203
195
193
191
207
216
163
139
162
237
194
185
191
225
153
224
209
172
189
221
208
190
204
210
203
235
167
175
186
224
189
186
227
183
171
169
180
167
283
228
214
211
234
236
221
196
197
164
204
228
233
204
169
231
204
213
246
184
258
204
200
194
233
200
197
196
187
161
205
217
221
209
214
226
218
233
196
227
241
141
180
199
175
228
202
165
267
208
248
205
257
250
173
216
223
229
157
232
218
147
227
171
241
229
221
159
166
194
198
259
178
217
142
203
233
268
227
179
196
216
136
155
187
176
239
149
206
246
174
178
169
196
207
125
211
135
168
170
205
222
227
144
141
196
204
203
214
180
167
231
158
194
229
188
179
165
199
165
230
178
125
194
184
205
182
162
198
174
268
218
134
199
271
191
196
159
167
220
246
192
214
159
226
165
187
172
207
186
273
210
174
219
188
185
252
173
208
165
181
241
241
224
228
241
239
268
182
174
230
205
215
237
168
187
182
228
161
189
197
159
179
200
249
163
159
219
186
201
198
223
161
176
197
189
180
187
146
224
215
210
162
148
200
169
160
201
215
206
195
185
173
230
209
153
142
224
181
145
216
225
211
250
228
181
184
165
257
236
177
161
233
210
211
247
170
251
165
219
217
244
241
184
224
198
193
203
218
195
160
222
213
199
208
201
196
224
230
210
213
211
170
186
255
195
201
204
193
218
209
188
199
198
181
154
206
131
155
216
270
232
250
212
202
176
199
271
176
230
171
199
222
241
213
207
196
246
267
238
217
206
197
197
203
147
183
232
257
229
232
215
167
206
210
108
160
192
170
272
258
179
174
196
199
240
238
213
197
248
200
191
188
240
166
199
179
207
204
220
199
172
208
193
205
238
194
171
162
268
176
248
189
204
177
156
171
163
210
191
229
222
189
200
176
189
258
166
245
155
217
208
149
192
196
184
194
214
151
209
166
195
226
182
228
209
243
193
175
228
241
191
245
187
149
168
213
213
234
214
178
230
180
178
206
239
231
159
226
205
206
200
218
151
196
205
200
192
248
214
224
154
234
182
269
256
240
243
213
214
240
172
234
192
195
212
209
181
212
150
209
236
160
274
188
191
201
178
166
197
247
185
201
134
153
248
204
198
227
201
183
216
198
209
170
261
244
184
235
209
219
165
153
212
216
164
203
179
141
253
229
151
173
201
236
190
194
170
141
144
206
201
213
245
226
183
180
198
152
240
191
151
172
123
223
220
208
202
196
230
157
149
223
257
122
229
131
174
165
165
223
231
148
192
174
189
201
215
195
232
207
183
171
197
208
209
195
214
245
152
195
215
219
245
252
196
224
224
207
242
251
203
166
233
225
203
221
249
155
209
178
220
254
225
209
222
260
221
181
162
170
264
223
182
215
174
188
162
213
177
192
193
183
150
162
180
232
177
200
190
245
181
206
195
170
197
189
271
192
216
218
180
257
211
222
165
197
136
203
219
253
254
219
199
262
211
199
215
217
196
153
239
232
228
157
152
166
225
281
245
212
139
234
219
225
186
196
229
138
267
204
214
256
213
229
217
125
203
154
151
226
201
233
213
225
198
186
178
179
164
205
176
184
225
222
257
203
179
167
253
154
180
253
196
197
181
247
247
228
205
201
234
201
169
203
274
220
225
172
166
137
166
194
130
227
190
218
200
208
156
234
158
174
204
204
177
169
238
195
184
246
216
194
207
182
233
229
133
130
151
203
231
205
167
227
95
182
182
175
124
203
230
129
208
189
230
215
164
224
167
190
137
151
235
220
224
252
240
226
192
238
250
175
208
142
142
288
251
158
214
174
193
195
239
229
194
136
200
238
211
239
182
213
169
243
208
229
182
210
188
159
224
179
237
209
217
172
248
240
170
183
204
265
234
200
207
180
198
188
204
212
153
166
184
193
184
213
186
214
233
195
199
205
198
203
204
249
183
195
261
179
215
179
204
223
181
156
163
186
192
260
199
189
249
150
181
211
233
242
222
177
237
217
209
130
235
210
213
214
156
194
181
180
246
195
231
176
219
245
243
248
229
208
208
201
198
209
206
240
185
216
181
151
221
195
190
208
112
211
196
221
200
148
123
187
248
169
96
275
154
232
226
183
175
206
210
219
207
197
189
225
195
189
173
181
187
247
255
196
234
134
243
232
190
218
155
139
199
134
186
204
221
244
248
204
195
241
161
263
185
237
145
163
207
242
157
192
215
200
271
190
174
161
230
215
232
155
205
266
202
214
271
140
168
182
195
223
254
188
163
195
192
175
211
254
187
219
179
223
225
208
251
210
268
195
193
208
211
158
230
232
206
258
168
207
174
148
214
175
142
135
165
225
219
189
132
220
172
209
225
265
209
233
208
207
143
185
169
129
212
185
187
216
182
162
206
223
146
218
201
148
204
130
235
212
194
204
209
167
196
137
221
226
204
189
205
195
228
230
157
182
213
171
128
184
196
258
227
171
168
194
188
269
190
187
217
148
185
199
182
159
234
143
136
255
261
285
212
210
206
191
137
162
130
208
215
170
238
247
184
215
200
178
184
190
198
217
229
235
191
233
208
263
197
206
208
213
163
186
216
267
213
206
130
240
163
171
240
192
252
180
185
218
193
172
233
166
205
214
174
217
172
243
213
204
203
184
139
196
187
225
158
161
227
240
177
175
207
172
92
159
193
225
222
197
192
214
218
222
179
231
161
206
230
219
200
219
207
262
189
208
155
158
251
219
165
216
173
240
194
185
192
238
223
180
177
193
186
186
193
194
167
257
169
208
207
239
166
230
201
189
147
212
270
155
208
212
256
154
251
265
206
182
254
221
219
168
251
156
227
196
219
226
219
248
216
199
234
233
209
195
160
148
257
191
192
246
219
164
222
234
230
205
254
176
186
241
268
183
160
184
193
150
182
178
184
141
163
134
188
211
195
241
150
209
226
193
235
164
226
207
202
191
218
180
197
218
184
140
154
173
212
258
186
170
204
194
193
212
214
236
224
188
187
169
208
163
185
205
231
178
229
167
197
146
129
205
150
213
248
195
247
212
249
176
214
195
160
225
185
191
240
200
194
209
180
248
238
199
225
136
206
157
208
196
195
120
269
251
244
170
164
222
171
191
245
202
182
197
170
234
200
208
181
234
217
164
211
183
231
206
184
206
223
199
260
285
151
239
183
260
263
245
188
210
208
168
209
166
224
127
215
211
177
196
174
231
122
177
216
230
215
202
199
199
217
191
217
193
211
194
251
234
159
250
192
212
203
220
200
213
224
213
170
231
160
177
203
128
211
212
184
210
191
243
238
216
209
257
174
173
211
194
228
203
163
180
223
208
201
150
164
202
251
177
257
216
188
202
178
243
198
127
187
212
200
161
166
200
207
206
157
220
242
217
200
215
245
177
174
248
255
209
229
240
258
147
169
240
194
189
137
170
222
192
225
198
173
212
266
202
168
209
235
189
211
195
143
138
167
154
185
215
212
189
210
173
195
175
204
193
138
232
239
207
185
146
165
198
207
166
135
190
243
195
219
255
200
233
148
229
211
252
236
211
225
222
136
187
217
205
239
194
251
218
141
208
134
178
192
208
192
167
218
254
166
261
199
173
124
157
133
160
200
203
215
195
181
224
219
252
124
206
238
168
172
258
181
216
211
196
239
233
233
227
180
223
234
227
153
227
137
193
217
121
205
133
170
215
206
153
250
205
263
187
277
192
187
234
210
193
187
150
196
218
183
223
180
251
141
242
173
189
151
225
211
197
221
208
237
166
164
222
148
224
179
206
227
258
203
253
211
179
181
234
114
252
190
233
159
226
194
251
244
162
163
196
194
208
171
177
277
202
206
175
237
171
251
191
195
147
164
205
172
174
275
184
167
182
219
218
158
222
244
192
216
234
161
270
254
147
136
181
231
194
172
185
225
177
206
141
155
217
123
167
249
166
172
200
202
229
218
265
149
232
205
231
226
175
242
136
282
227
184
188
154
227
222
165
224
242
152
170
190
241
232
187
118
173
112
206
182
218
219
203
216
191
212
231
197
276
234
166
197
202
159
190
166
185
219
245
211
220
189
217
186
248
186
184
133
199
215
213
144
216
237
223
192
201
212
200
143
235
254
178
155
205
188
177
219
212
189
212
202
216
198
269
211
239
202
187
239
170
132
239
250
238
183
218
205
195
169
245
251
207
208
254
184
150
203
244
151
226
198
212
205
213
210
233
184
178
175
256
207
191
202
154
237
232
200
228
161
237
199
203
239
210
167
196
201
206
196
220
135
280
209
182
191
179
173
190
151
221
190
194
225
181
237
186
183
192
283
214
220
175
249
238
257
145
261
219
184
171
186
212
182
151
197
216
223
176
220
211
162
175
224
162
202
251
167
199
192
239
217
181
175
184
203
233
202
258
206
165
145
235
217
223
131
178
269
199
153
165
201
209
227
160
156
198
163
164
162
208
151
267
156
204
217
138
144
171
192
191
258
265
219
185
195
198
175
195
190
196
189
189
170
210
135
162
222
192
237
230
218
212
214
202
244
174
220
179
195
171
171
146
210
159
217
200
209
185
165
229
234
233
229
143
181
205
159
218
235
220
240
156
214
176
236
179
225
264
197
162
257
201
120
182
179
223
208
214
185
199
216
182
212
253
221
149
145
178
188
196
145
192
173
206
165
194
176
186
219
176
207
134
254
266
246
194
167
158
251
224
178
191
215
248
206
191
258
228
142
216
197
224
216
207
203
199
122
164
208
256
154
171
256
170
287
177
154
204
151
216
155
220
172
218
225
154
226
230
198
202
250
256
246
179
183
190
202
233
255
192
188
147
170
216
251
236
198
261
154
218
165
190
136
221
262
162
149
179
233
184
209
250
194
238
191
191
230
189
212
179
147
147
212
216
166
224
232
178
196
227
168
248
233
149
223
191
227
198
208
220
212
231
197
202
181
222
247
176
165
192
234
206
216
210
177
191
180
229
268
189
180
188
187
241
273
244
248
158
182
235
233
202
159
221
202
191
255
203
186
193
131
186
173
183
214
152
172
220
200
168
167
172
196
221
227
163
194
158
253
219
236
203
238
159
200
211
193
214
197
239
188
199
242
224
181
235
155
245
219
186
202
186
199
97
264
175
198
198
191
217
212
164
206
190
158
175
244
200
261
146
236
236
214
193
232
174
209
187
205
166
208
277
175
238
181
198
216
143
151
242
189
161
155
197
230
209
218
199
192
229
184
209
185
217
237
245
167
215
232
143
177
198
175
178
178
166
198
215
236
235
206
156
227
238
160
269
246
263
253
218
204
253
156
187
198
184
184
235
190
200
223
230
176
201
186
241
200
200
172
210
188
220
207
250
163
225
202
204
98
203
198
152
185
177
159
186
243
208
193
215
202
162
157
213
223
179
221
166
164
191
167
190
139
192
240
183
167
158
174
165
206
146
191
231
213
159
224
107
204
162
245
269
160
224
216
188
198
243
189
138
185
243
207
176
195
209
214
191
260
157
201
135
233
184
187
157
190
147
106
163
183
178
187
211
148
210
187
221
206
191
225
215
180
229
204
162
181
154
255
206
184
211
162
212
156
180
205
132
199
209
185
227
206
140
178
248
230
192
185
179
186
232
218
179
245
239
260
240
212
258
244
174
251
225
174
184
170
227
239
166
220
212
155
93
163
244
187
228
206
199
204
223
246
184
179
187
170
238
170
164
146
265
165
171
162
207
207
226
243
181
265
154
209
244
100
180
282
190
225
265
262
180
232
245
226
192
229
199
260
222
148
241
193
217
154
227
145
265
213
217
205
188
205
178
237
165
201
184
239
225
239
226
173
229
196
210
200
191
141
186
159
189
201
200
224
181
210
188
170
212
169
221
243
182
190
196
153
231
179
233
228
163
178
198
258
122
197
238
196
183
207
250
200
193
206
183
219
246
168
196
172
235
185
168
198
195
173
144
150
195
165
203
249
145
154
242
229
158
192
243
169
255
216
289
198
236
164
213
208
306
192
180
207
163
190
186
217
235
241
243
260
204
169
235
232
268
217
161
253
276
223
172
207
229
133
206
204
169
193
219
239
238
235
204
208
209
163
188
131
149
238
177
220
199
176
199
151
216
199
259
184
179
225
261
214
259
209
227
144
215
152
153
221
220
142
187
201
230
193
269
196
213
238
186
241
206
240
170
188
178
172
187
235
132
203
216
182
156
217
153
215
184
172
178
244
241
162
200
254
212
187
186
164
224
271
248
191
228
226
248
271
167
148
253
144
164
184
194
139
253
237
228
102
214
201
210
186
198
171
231
252
193
191
246
180
201
187
241
110
153
169
177
137
219
208
181
163
191
205
223
168
167
212
216
202
273
253
249
164
173
175
154
208
189
189
175
220
207
197
238
197
210
202
238
233
237
233
204
167
241
256
170
191
202
154
181
173
171
225
205
206
236
146
210
185
213
175
222
187
189
120
207
188
199
179
188
171
146
209
161
236
253
191
189
221
166
215
216
241
156
271
210
215
200
225
236
233
226
172
136
258
189
232
203
161
273
159
197
170
188
208
164
193
207
175
151
233
214
180
159
182
241
149
162
241
193
212
172
152
164
218
185
164
218
193
211
137
189
226
180
126
190
257
219
188
98
212
102
187
184
219
210
151
183
168
269
200
193
110
178
196
162
231
194
221
275
245
189
199
254
216
225
280
132
223
193
206
185
206
222
220
173
150
216
203
250
210
271
215
212
169
195
253
129
213
248
189
264
266
236
221
213
181
222
207
147
229
208
248
225
196
181
142
242
182
207
199
196
205
199
225
171
197
161
243
228
181
233
246
210
239
205
162
186
195
222
258
219
179
183
203
173
217
232
229
208
231
220
195
159
183
256
181
179
312
204
214
224
199
204
181
182
204
243
183
239
286
203
161
186
201
207
134
250
193
186
195
238
207
306
222
102
260
194
176
195
230
161
263
197
257
289
208
216
273
164
238
198
222
112
237
200
187
154
164
193
232
209
265
177
143
192
208
228
196
202
231
110
193
194
204
183
243
194
220
212
234
243
213
176
212
204
214
166
172
193
206
237
191
185
192
202
164
232
224
178
177
221
193
207
195
218
160
127
171
177
211
150
202
248
154
187
144
229
163
196
180
218
219
154
234
165
207
197
165
175
221
227
245
192
143
190
164
210
207
163
152
165
210
137
241
219
202
167
135
224
177
196
251
206
168
232
203
236
206
193
191
169
232
182
250
200
190
249
243
126
183
159
216
213
211
198
195
152
223
176
219
217
169
180
135
195
96
192
241
266
216
199
181
242
199
206
191
200
200
179
241
181
173
182
231
213
183
211
183
147
179
154
255
284
154
219
171
200
186
255
180
167
229
185
202
151
177
198
184
192
200
215
220
193
174
267
274
256
198
238
200
227
171
231
240
197
161
180
248
197
227
189
157
212
177
197
217
207
208
181
179
208
253
194
221
180
212
287
156
170
258
218
218
191
214
269
175
243
190
140
174
208
245
234
165
128
238
213
193
154
221
284
224
198
189
229
233
219
224
161
211
152
199
229
173
246
205
233
235
164
231
181
224
215
177
141
198
203
212
175
163
214
228
207
225
194
182
209
205
209
237
208
157
212
201
231
182
202
136
197
202
188
158
162
191
203
256
188
183
188
229
189
265
201
122
161
211
143
224
196
211
180
194
181
145
175
178
205
177
224
217
190
195
266
198
152
245
188
173
194
174
162
229
187
197
181
243
144
199
223
133
213
207
245
191
178
200
243
227
243
191
198
198
267
192
145
203
282
223
130
224
215
177
239
222
161
167
166
176
231
219
221
202
204
175
177
248
254
209
197
151
120
246
249
183
184
200
246
183
216
211
205
185
243
205
305
133
186
169
242
170
197
210
189
168
146
203
226
237
150
224
231
142
191
182
192
228
242
225
245
174
203
213
178
244
224
199
192
193
245
231
197
219
163
187
213
192
199
198
175
272
206
198
206
223
149
177
192
211
224
195
164
235
246
211
238
204
111
136
223
144
192
169
195
209
218
156
232
193
196
107
267
246
214
171
161
194
229
222
207
205
209
183
145
165
150
231
225
221
225
168
168
219
155
157
194
211
188
272
225
131
211
214
234
220
217
198
152
147
171
182
187
133
247
160
203
242
230
279
154
198
173
179
174
192
197
137
218
228
172
190
228
212
199
204
203
180
200
190
246
235
201
156
270
194
215
194
237
209
170
185
252
210
203
217
225
237
213
145
204
213
204
179
160
179
264
217
204
154
194
207
170
191
128
162
168
188
219
145
164
250
220
200
238
204
170
222
161
265
133
159
232
191
176
198
206
220
189
207
215
217
191
147
197
155
210
197
184
211
238
190
239
159
181
161
161
176
179
234
82
197
224
121
215
236
181
235
213
234
169
192
161
138
141
207
195
248
227
217
183
176
178
194
204
234
180
291
222
256
149
237
209
139
260
173
163
228
181
118
197
183
160
188
253
202
193
164
127
252
188
277
254
178
188
189
201
259
205
180
181
209
179
182
170
241
218
222
164
198
207
206
176
202
155
259
181
253
156
218
176
177
201
213
187
246
224
185
236
206
189
186
218
192
206
272
220
163
199
238
136
145
213
175
166
218
171
199
212
148
219
146
243
235
238
193
150
187
143
208
127
223
222
190
218
213
232
124
137
193
230
220
152
216
239
254
228
196
142
143
200
211
183
217
248
140
235
239
204
207
137
143
195
237
209
203
189
212
171
164
189
256
200
158
196
238
207
239
213
166
245
148
219
182
202
214
216
206
194
231
154
237
188
235
239
232
221
203
199
174
195
240
171
175
183
177
217
251
244
200
222
164
240
257
208
200
217
197
209
189
213
232
251
161
168
155
246
144
261
189
182
244
199
215
198
199
250
173
209
238
225
211
195
268
118
196
243
232
169
228
207
197
232
191
241
199
174
180
189
157
251
204
133
237
196
159
216
214
203
185
136
177
180
232
188
149
198
197
211
200
254
206
222
187
222
190
191
211
262
192
183
214
204
187
162
174
210
203
148
214
191
167
236
236
141
200
197
198
161
201
180
197
150
181
136
151
203
196
193
191
182
199
210
104
175
221
217
207
170
192
170
198
162
199
215
196
231
253
182
203
225
177
236
211
197
176
267
238
155
262
172
152
195
186
211
194
256
171
193
218
187
218
250
205
256
156
207
235
172
197
193
196
231
200
154
256
223
147
186
250
197
186
225
225
153
194
209
195
183
184
202
219
166
208
213
193
213
212
234
154
171
209
199
249
207
201
258
224
197
219
183
239
174
185
215
190
248
222
235
200
175
197
202
175
224
202
190
274
219
220
220
206
140
216
220
153
246
195
231
186
242
161
151
165
226
125
243
255
224
200
200
180
217
222
224
244
213
210
213
227
218
214
235
233
213
282
235
233
163
175
238
208
211
227
192
188
191
233
240
147
183
249
175
200
204
238
199
200
205
232
194
156
183
214
281
159
204
177
175
253
241
246
151
175
171
197
202
180
248
256
119
153
219
176
150
200
225
153
230
228
206
171
221
165
245
241
174
175
195
204
246
186
175
221
228
192
223
210
211
193
230
182
160
189
167
214
230
209
142
181
211
244
195
207
158
215
212
255
197
162
193
170
212
156
236
188
176
199
123
167
113
191
266
214
270
193
224
137
215
206
196
175
227
169
219
209
210
201
179
183
173
175
189
212
170
195
163
147
227
121
139
209
149
218
211
203
168
209
196
227
151
130
153
196
195
135
203
168
213
151
192
140
265
240
165
209
213
244
209
233
208
245
210
137
182
238
188
207
148
183
194
196
275
246
227
231
174
217
167
203
233
216
191
202
174
243
248
200
150
218
187
234
208
207
165
211
216
220
203
177
157
180
135
163
224
217
216
224
157
210
176
188
216
262
132
231
208
216
226
227
157
213
236
175
265
187
199
217
210
184
177
224
188
217
241
232
202
246
196
161
236
198
230
242
225
120
217
213
295
207
157
175
223
192
162
185
212
217
182
136
202
239
128
260
206
190
263
229
167
225
207
231
247
172
188
247
149
230
160
193
185
192
193
173
181
169
173
208
221
218
236
146
169
177
252
192
239
219
220
197
183
225
160
224
172
221
203
216
196
214
152
215
246
229
229
220
158
190
180
164
190
196
269
174
162
134
230
216
202
226
222
180
160
243
209
223
158
206
234
217
155
171
161
223
163
205
236
122
194
170
177
107
240
198
229
257
192
141
250
158
173
177
191
218
227
252
240
169
200
222
234
185
195
181
240
285
217
186
185
204
172
197
137
200
186
218
214
215
246
184
162
233
216
242
195
185
252
226
268
200
221
150
233
132
161
215
218
236
223
263
156
230
215
223
242
246
296
128
136
199
212
225
209
191
190
185
230
168
252
177
206
147
190
207
197
201
148
241
230
246
180
229
203
140
243
173
181
184
255
291
231
209
209
254
217
220
201
172
233
172
138
185
198
254
223
186
181
186
254
191
234
197
249
218
178
171
260
216
188
231
191
227
230
242
194
227
218
219
132
155
195
236
96
220
255
178
151
221
157
169
171
191
223
213
139
195
243
153
217
186
218
215
171
275
247
218
279
189
178
190
218
208
187
175
221
141
181
141
229
198
255
135
237
164
252
183
208
203
155
232
159
217
227
191
184
223
242
229
244
226
184
145
197
249
149
163
274
215
217
253
212
229
117
186
232
200
150
210
186
207
192
216
284
172
261
171
242
218
247
174
200
211
139
206
135
174
235
238
175
153
247
193
276
176
145
251
202
172
171
208
260
181
224
235
196
205
206
172
213
172
216
218
202
135
167
166
211
201
251
189
169
187
194
182
227
176
256
198
168
172
175
183
198
138
115
197
194
182
146
185
176
171
197
229
176
218
239
199
207
152
225
218
199
146
183
203
235
208
196
185
219
242
186
196
241
209
206
204
239
157
143
154
159
187
168
218
154
180
193
119
200
223
184
210
157
176
195
165
165
233
217
248
146
221
219
197
234
238
202
210
140
220
206
224
258
249
171
195
166
192
199
220
160
214
221
188
221
91
142
234
156
185
183
217
202
162
208
226
196
212
174
146
224
169
208
188
250
192
255
130
160
174
184
210
250
202
148
166
225
171
217
167
212
172
211
226
258
153
229
211
160
171
198
233
209
209
206
221
228
184
168
186
226
178
156
249
165
216
177
210
201
197
229
217
186
217
184
144
249
212
207
266
176
227
247
220
202
182
191
241
161
167
203
199
206
213
250
180
178
219
204
259
184
254
199
211
198
268
182
157
194
202
167
230
233
193
155
190
213
233
215
185
237
238
151
157
149
206
201
196
144
182
209
169
201
172
227
215
243
237
239
210
191
226
201
180
242
192
190
208
233
185
211
270
250
223
277
183
216
215
163
201
209
238
220
221
205
274
220
218
239
208
177
139
232
256
210
245
183
212
207
181
166
224
222
196
205
160
200
136
235
242
234
168
223
194
162
216
163
170
219
156
140
222
198
218
265
179
235
211
180
198
230
189
212
211
197
186
213
221
178
234
197
222
182
211
180
178
167
162
158
220
207
149
214
267
230
256
200
177
229
197
78
200
208
194
200
152
134
183
178
196
179
148
225
197
119
238
201
209
199
138
188
224
210
222
178
164
178
192
179
191
151
201
171
159
167
247
246
241
179
164
131
189
111
166
126
226
271
269
194
247
203
235
227
207
211
227
230
174
211
175
173
232
217
245
196
181
227
258
183
280
226
210
173
143
229
156
172
216
202
170
270
212
158
222
223
212
168
251
231
230
243
177
211
182
203
194
204
193
196
160
194
200
168
215
213
190
109
190
212
216
208
134
158
259
209
134
196
157
160
241
151
229
257
158
219
233
189
195
130
255
215
230
191
236
239
161
180
216
221
175
131
227
211
184
247
219
217
228
225
272
258
197
204
195
177
197
233
219
166
190
192
206
234
288
229
181
149
231
162
204
210
266
186
210
218
180
158
261
239
211
233
182
145
229
192
154
196
173
228
241
174
247
219
200
219
227
242
224
189
221
169
264
179
194
238
204
188
182
212
227
199
210
196
200
208
167
196
231
189
188
204
228
174
196
252
241
206
204
268
236
234
221
261
229
197
212
187
164
189
183
227
182
148
193
237
214
224
173
168
194
266
232
221
208
237
216
215
216
220
212
236
223
223
184
202
203
258
207
167
232
219
177
216
139
237
197
239
221
202
159
228
184
183
239
210
189
263
195
169
249
129
218
229
167
232
218
255
194
206
207
236
217
247
183
189
202
167
190
238
239
150
217
201
209
232
206
181
201
180
215
207
167
187
195
225
195
250
229
236
153
222
160
229
241
223
199
175
150
176
207
240
197
178
242
211
286
195
168
212
269
214
203
146
188
188
210
173
192
193
194
217
223
222
250
156
216
188
169
152
184
141
192
274
196
193
203
200
228
192
189
188
207
167
202
190
221
183
190
218
160
172
198
180
207
182
222
241
258
157
212
203
201
100
221
181
193
188
222
195
270
210
192
189
194
167
250
188
164
206
256
184
167
183
225
183
184
230
172
223
237
196
210
209
196
200
153
193
160
227
224
169
246
223
175
229
199
198
268
182
158
208
193
186
250
225
233
155
179
203
153
170
246
138
129
192
196
159
137
221
213
194
158
207
226
216
200
247
260
108
157
254
211
228
223
203
175
238
176
157
217
194
245
166
201
228
215
248
209
166
166
143
211
234
181
155
217
201
239
193
193
200
240
195
208
159
174
169
144
147
175
160
218
169
203
204
206
175
158
176
225
221
141
254
184
171
183
227
208
233
184
237
159
200
225
206
198
174
157
181
136
204
183
154
160
230
176
232
217
167
230
217
183
203
236
188
206
186
196
197
206
260
150
180
127
217
186
216
168
208
223
120
168
182
228
188
210
200
224
185
181
173
191
148
175
197
252
230
238
166
177
166
185
129
219
198
201
159
241
246
164
180
185
212
193
229
163
241
202
191
194
227
179
154
172
194
175
181
233
188
201
215
187
242
195
201
189
195
201
186
178
175
212
192
177
195
246
211
181
217
174
202
283
218
209
190
162
186
215
231
214
215
178
172
159
188
192
215
169
200
224
201
208
147
203
179
226
233
169
240
169
234
131
183
152
223
205
211
237
188
250
195
171
163
210
205
196
264
179
200
170
184
213
156
205
245
225
212
211
175
202
180
164
216
245
144
236
168
233
192
225
246
218
242
225
235
206
198
222
211
208
149
198
199
169
165
224
164
214
157
196
215
221
235
238
232
206
180
253
193
176
175
221
227
176
215
205
186
193
144
217
194
198
198
186
219
192
199
200
217
215
196
173
229
140
247
177
232
200
164
189
222
179
225
191
195
160
221
226
228
205
258
141
188
192
241
173
267
215
184
213
136
243
186
179
279
229
184
212
149
257
142
216
228
194
153
224
210
193
184
212
228
191
195
137
253
260
216
166
196
125
193
197
182
181
277
204
154
197
184
126
189
179
199
218
134
213
163
169
179
250
187
239
181
182
187
201
207
202
184
204
209
218
185
148
161
184
157
218
197
146
189
214
144
251
253
212
211
169
204
280
181
233
202
187
120
241
212
138
190
195
225
164
179
192
197
194
252
232
223
165
201
173
233
157
261
209
115
234
235
283
227
206
188
203
236
239
160
144
222
194
260
207
236
138
204
167
227
245
147
168
187
204
197
225
252
131
171
215
210
205
185
180
161
229
244
252
204
145
175
197
245
181
178
205
196
191
222
184
258
200
189
191
201
187
211
157
198
194
224
170
214
240
222
224
188
196
171
204
262
233
258
178
163
172
133
188
224
226
107
108
242
184
178
176
161
218
217
211
255
150
245
191
193
176
263
200
222
158
195
248
184
205
209
277
206
252
187
130
195
193
182
202
148
162
181
223
251
151
195
194
188
195
211
193
146
232
268
222
276
234
210
170
171
227
207
219
226
199
166
182
171
266
237
240
230
215
160
255
205
204
159
138
234
146
229
197
177
144
238
215
257
268
149
196
202
140
202
170
164
218
193
168
229
251
168
207
210
244
117
210
156
159
167
149
207
200
226
217
240
270
230
204
243
167
179
174
151
207
203
203
167
215
201
208
242
253
187
222
224
214
164
168
174
174
215
214
197
202
210
127
224
220
147
219
212
218
214
176
201
176
128
192
261
198
230
242
183
230
181
213
144
213
261
219
235
164
198
178
192
211
234
174
207
243
190
217
171
158
216
158
222
175
175
189
184
186
228
209
210
133
239
208
180
190
194
230
209
125
126
156
229
238
252
137
231
232
165
215
167
240
259
241
201
196
198
248
245
263
197
224
250
179
212
214
198
143
196
213
189
139
142
219
230
243
148
189
147
229
264
250
200
200
212
189
254
231
216
148
280
214
225
165
221
169
173
207
182
187
164
191
170
160
191
216
215
200
234
206
110
235
248
231
167
192
163
234
193
273
230
154
202
196
161
202
199
261
187
196
187
171
190
247
216
173
238
206
262
199
228
247
231
212
202
215
207
216
201
188
239
225
222
185
178
170
160
200
201
280
164
198
178
246
150
212
118
190
223
217
240
195
213
214
204
223
201
232
244
235
191
181
214
179
154
161
173
144
200
140
215
177
163
237
179
221
214
222
210
214
154
202
125
202
206
215
188
171
218
148
167
182
177
229
158
233
186
198
243
176
136
154
265
189
271
176
231
139
160
158
188
224
210
223
208
190
265
194
174
183
162
200
191
209
230
191
197
231
176
222
155
162
245
149
188
230
212
250
201
268
218
192
161
225
214
154
215
222
185
184
154
221
254
240
166
181
224
196
229
186
152
176
202
259
142
201
247
222
167
185
179
258
172
263
166
201
180
212
208
259
230
113
181
189
202
160
193
166
191
203
250
190
191
177
110
214
229
179
163
217
140
187
193
182
202
213
234
110
229
199
195
168
199
179
214
195
136
208
233
197
216
200
162
197
160
220
220
259
137
207
214
172
185
185
206
176
155
221
238
241
198
211
226
128
178
161
124
206
177
240
208
215
192
171
176
211
184
219
242
186
190
200
181
161
220
183
219
207
189
240
210
144
278
215
184
167
258
225
217
205
201
188
217
220
196
191
250
210
195
178
193
213
218
255
249
202
164
144
181
191
187
189
240
186
190
234
150
189
240
203
197
140
197
172
137
187
236
200
162
172
163
253
219
216
181
207
196
242
183
253
188
233
167
204
178
238
218
277
171
168
184
188
157
263
171
225
188
193
198
198
265
244
184
242
193
187
151
198
179
144
168
207
267
188
186
184
186
221
215
206
262
161
239
215
195
213
202
232
206
181
225
214
155
248
291
209
164
227
182
192
177
167
245
214
193
250
194
195
128
285
185
170
200
275
186
232
197
193
213
208
267
239
222
165
177
207
202
169
209
231
202
164
209
191
195
204
215
223
168
208
223
212
179
170
204
189
204
238
203
231
180
157
235
228
216
173
255
225
188
178
188
161
200
238
227
172
189
256
219
204
215
216
180
180
217
211
142
255
203
223
205
196
220
234
168
229
219
206
193
186
127
230
221
236
198
174
171
195
231
210
205
238
253
210
156
164
191
234
263
182
257
220
162
232
203
192
227
175
196
225
152
209
214
247
174
202
198
180
186
194
203
217
291
266
250
214
163
276
189
152
200
262
220
192
198
206
201
209
270
251
280
145
229
221
201
227
205
251
177
189
233
169
169
196
253
155
209
200
168
226
176
178
237
187
166
228
266
179
161
162
186
173
187
243
214
188
174
220
132
179
222
241
233
204
185
150
195
237
190
254
187
143
194
217
188
200
200
291
202
284
105
213
200
195
180
207
195
171
181
176
136
217
173
205
144
208
202
202
198
218
247
187
235
211
202
255
189
172
215
255
221
225
231
152
226
181
190
182
180
209
198
117
173
204
271
217
274
203
259
200
213
192
198
212
227
193
201
205
209
221
157
240
252
181
150
195
204
236
208
206
185
185
188
223
173
205
135
217
134
184
191
226
131
152
194
187
216
221
229
263
146
181
199
230
217
177
236
245
232
209
141
186
211
170
192
210
207
162
233
188
251
245
213
229
213
191
239
207
214
176
256
191
199
241
225
131
197
182
236
167
184
158
212
177
229
205
173
223
284
158
189
224
285
211
200
171
190
254
217
219
237
241
255
149
226
228
179
223
212
186
167
223
157
167
176
170
190
223
150
206
249
172
171
271
126
170
190
192
204
177
258
188
192
240
170
233
207
186
183
219
163
206
211
212
184
195
234
221
151
242
213
194
232
241
222
212
166
188
182
233
179
241
229
186
150
198
222
191
218
232
184
198
205
204
207
246
211
145
198
183
234
208
162
208
253
168
186
246
190
275
208
214
192
152
259
182
155
218
212
198
189
231
174
140
192
204
188
154
226
187
201
160
175
223
219
275
188
209
204
202
197
214
205
193
249
206
215
205
192
221
219
188
166
134
149
180
211
229
166
227
235
215
255
137
163
228
177
110
163
247
222
176
212
183
217
213
259
167
222
148
218
201
175
172
197
174
219
180
206
183
227
163
168
215
157
206
179
152
162
187
205
240
210
173
237
99
208
158
256
252
223
187
231
168
216
202
167
197
204
182
190
201
193
202
245
220
153
152
151
235
143
174
178
224
183
139
256
181
191
198
191
238
202
235
216
171
269
208
247
214
151
204
174
168
161
184
215
204
239
174
175
162
212
157
160
193
182
196
204
196
157
251
161
253
171
237
182
205
185
175
141
183
170
167
227
176
214
223
230
180
195
174
281
225
176
188
180
218
153
169
143
229
212
159
251
233
287
186
220
188
233
220
202
189
192
222
181
196
206
245
177
223
209
181
210
199
174
171
200
198
218
199
194
92
129
185
175
226
166
155
90
100
165
226
169
181
161
221
189
204
237
136
206
213
144
174
200
180
185
231
174
179
212
210
210
254
235
198
237
165
155
206
222
178
178
225
134
158
169
180
162
185
191
212
219
247
213
197
216
265
190
148
226
203
192
206
254
226
208
190
225
157
218
213
146
124
201
223
199
219
247
155
227
159
271
199
155
218
238
165
186
181
177
257
230
210
251
193
181
241
156
231
194
214
229
195
185
178
158
215
196
199
134
203
161
187
176
219
155
191
232
168
231
119
227
219
191
133
243
227
181
198
185
255
223
138
151
210
193
225
182
166
182
232
183
146
256
217
185
199
221
231
209
229
200
181
231
184
211
260
195
148
289
188
211
198
153
186
216
196
237
176
162
174
183
222
234
165
231
194
220
189
168
260
240
237
198
186
221
227
230
261
187
195
212
165
250
200
210
227
257
215
209
218
189
183
199
260
205
245
209
109
169
221
201
223
188
207
217
243
195
219
239
222
228
172
166
222
198
184
179
236
202
162
172
171
189
242
193
171
247
220
179
206
236
212
197
212
180
185
224
220
177
182
202
255
216
239
166
180
198
182
193
172
232
176
196
185
236
240
232
171
194
148
218
232
191
229
233
208
181
266
197
182
256
265
262
159
215
237
230
259
145
250
212
225
173
233
145
251
195
233
174
203
170
243
154
185
247
241
208
116
155
257
251
213
226
230
231
223
220
237
246
169
135
149
196
202
177
267
196
192
226
199
225
250
186
205
239
182
265
222
200
232
217
208
217
212
221
207
209
205
191
227
213
220
183
205
208
213
204
188
243
186
177
158
224
201
231
168
149
182
212
193
217
205
250
182
169
176
215
203
240
229
123
138
267
138
182
213
217
217
246
241
226
255
140
150
208
216
213
177
232
122
203
179
157
201
219
222
190
229
193
238
175
248
210
311
116
225
212
230
176
237
159
193
147
123
166
236
211
190
205
207
240
204
187
168
227
246
262
151
202
216
130
200
200
209
214
275
166
202
200
190
217
167
181
198
235
223
241
190
232
234
224
190
177
250
217
190
205
195
186
246
224
156
245
239
286
181
233
246
141
206
223
207
229
268
163
197
188
226
167
206
227
235
285
155
180
233
180
210
220
220
214
167
245
209
206
173
206
232
193
231
161
244
215
220
135
249
171
179
155
170
219
215
227
214
160
146
255
232
221
173
225
229
212
177
186
110
154
208
201
213
176
198
203
198
213
172
213
151
201
207
199
268
236
241
198
168
234
173
259
231
232
209
230
195
221
229
207
182
194
132
189
163
178
176
204
156
178
195
261
184
75
149
223
223
203
244
147
228
231
223
213
172
193
184
160
171
213
155
203
241
189
237
206
136
199
278
165
157
119
172
220
205
252
247
218
225
144
193
218
179
243
215
159
196
153
183
286
188
154
157
216
200
231
266
246
213
184
233
223
212
157
173
225
189
219
195
216
207
172
198
136
211
221
242
208
237
257
167
237
181
152
204
161
141
212
250
215
271
204
232
222
242
198
251
149
222
181
196
147
213
229
184
181
196
179
159
206
251
172
177
191
203
173
224
191
200
245
211
197
254
229
248
209
209
184
188
156
199
178
266
266
109
192
206
250
194
196
228
154
214
154
175
145
183
256
163
196
133
199
241
245
219
218
213
164
152
165
172
233
191
222
198
179
200
199
241
140
161
212
178
184
178
213
224
163
155
173
124
177
240
171
226
177
209
164
207
238
164
162
190
175
252
173
223
133
232
242
155
158
231
217
230
220
179
240
248
213
176
202
231
185
233
206
205
145
150
183
244
146
227
116
151
238
197
268
238
207
157
220
212
172
185
263
246
126
224
197
198
244
244
247
202
185
234
250
222
150
200
209
217
222
193
237
121
161
194
176
187
194
260
230
198
231
211
205
245
264
200
184
153
245
242
250
246
250
254
193
166
188
174
138
146
216
140
253
186
225
200
183
144
216
238
178
209
242
154
178
129
252
158
172
198
165
166
216
140
212
237
217
195
181
198
257
180
239
186
233
195
206
159
136
248
181
174
234
199
240
208
210
232
199
215
202
229
257
153
105
234
165
221
247
204
216
221
197
202
149
181
145
207
208
256
306
191
177
185
250
219
185
253
227
240
239
164
201
193
159
173
223
208
235
174
174
154
221
210
169
182
168
254
161
237
143
217
194
245
267
177
247
239
202
193
169
222
266
179
225
244
188
203
176
135
263
179
249
200
211
204
218
244
211
146
241
199
146
228
251
193
202
159
247
223
209
247
163
155
137
197
209
193
222
194
182
234
232
226
193
223
213
191
175
192
231
203
249
212
225
196
190
175
194
233
181
176
167
213
205
135
190
180
210
218
186
183
232
189
199
198
195
194
136
242
186
254
154
190
224
174
203
189
198
187
217
225
167
144
230
250
175
155
182
134
173
197
210
214
232
264
247
246
205
229
232
201
194
189
246
221
240
187
196
208
188
198
242
222
246
223
166
245
222
215
263
182
214
179
158
170
206
176
216
157
126
170
163
188
174
204
201
171
201
184
204
191
158
160
210
195
191
174
247
190
220
220
262
152
232
174
221
237
196
144
178
187
214
214
168
223
220
176
200
163
166
210
200
185
129
214
205
175
196
151
163
176
225
193
185
244
200
157
164
201
160
215
190
212
245
237
209
210
178
189
237
201
209
178
226
226
197
206
252
170
190
115
230
173
192
233
207
241
227
116
299
208
204
250
237
167
247
243
233
245
182
241
277
238
256
153
221
187
184
227
193
216
263
188
234
176
216
230
185
231
178
233
119
240
213
195
169
214
273
189
194
275
168
201
169
216
186
217
172
178
137
179
256
279
237
234
220
201
191
171
191
258
160
222
182
249
210
241
179
184
211
220
160
159
206
128
176
170
168
247
190
175
166
178
186
209
156
153
220
145
188
172
180
232
166
164
200
202
175
181
178
200
224
189
170
211
124
208
201
191
231
241
207
239
202
161
191
129
270
251
162
199
182
242
208
225
245
184
193
215
193
170
249
171
228
258
175
204
228
170
170
116
206
155
207
244
132
202
246
205
189
228
235
168
224
244
193
199
198
205
156
260
203
207
222
214
200
273
176
225
202
230
199
228
120
222
207
196
213
231
212
185
182
246
152
169
214
200
108
252
224
201
233
231
190
233
169
209
188
165
133
238
208
246
231
191
234
150
245
214
205
214
203
172
234
182
154
190
234
191
194
147
189
171
176
186
198
184
171
222
250
247
267
138
215
160
248
218
224
236
193
222
186
164
164
163
207
235
227
149
210
191
188
163
150
201
305
223
208
189
237
158
204
209
218
207
176
165
216
170
225
178
199
203
242
265
151
232
204
177
194
133
194
213
223
230
163
209
215
176
187
193
165
202
170
221
180
258
241
169
166
214
190
236
228
197
189
222
193
163
210
216
199
144
153
216
221
225
248
192
207
211
257
237
250
195
177
204
113
193
250
195
206
209
217
164
146
245
156
201
221
211
196
227
169
227
177
173
179
169
146
190
175
197
159
121
202
194
181
242
154
162
206
142
224
176
206
189
202
206
178
155
183
171
189
251
217
235
190
191
160
108
230
170
182
215
218
179
216
229
213
218
214
138
172
168
199
227
224
205
239
213
176
239
246
194
167
147
229
241
136
197
236
152
175
186
197
159
215
256
171
144
143
219
211
189
177
253
211
196
239
168
181
237
237
261
198
206
169
207
212
202
207
227
204
201
174
160
162
229
169
192
165
181
143
166
181
216
219
245
230
170
177
241
255
191
172
195
183
253
192
162
219
257
227
219
186
275
200
185
149
164
214
167
208
211
272
170
186
185
208
120
253
221
235
200
243
206
213
183
166
135
236
179
202
198
190
223
334
125
235
205
220
237
154
239
229
160
236
229
182
260
170
219
234
173
225
238
205
155
191
182
201
177
191
207
161
242
194
198
210
123
189
161
158
242
187
218
189
273
178
172
244
191
264
230
187
143
211
165
202
201
182
142
256
209
187
190
157
165
185
177
247
198
127
249
177
188
204
237
171
165
265
207
152
199
136
208
223
136
154
169
205
203
218
214
188
131
156
190
227
199
227
172
194
167
184
229
223
160
193
212
163
146
237
219
161
220
204
211
234
171
276
207
185
172
150
276
198
143
165
167
200
200
235
140
189
243
209
234
146
160
218
230
182
201
222
187
223
161
188
168
182
191
192
232
227
200
235
164
254
151
161
250
235
203
196
254
166
148
202
197
233
173
222
214
192
166
196
251
179
231
172
242
139
115
211
136
168
243
243
163
141
184
193
261
237
199
224
220
201
171
242
231
183
184
109
185
228
237
181
216
169
247
203
234
228
217
188
213
186
232
133
229
220
196
205
224
194
194
184
228
225
202
142
184
172
142
247
210
196
166
175
204
173
166
147
231
225
148
168
203
135
244
201
135
223
219
208
176
235
161
237
243
236
225
196
214
237
242
242
226
189
209
124
243
197
145
201
148
182
187
144
199
208
256
261
219
194
222
208
212
148
201
238
182
209
240
227
217
145
183
210
220
196
158
194
156
251
135
224
194
224
213
140
216
147
179
247
250
170
219
221
249
183
218
220
186
251
123
250
233
188
275
220
202
192
236
195
193
197
250
218
217
117
219
189
237
265
236
205
131
189
247
242
239
221
176
150
213
140
218
215
176
190
138
180
250
208
204
156
180
237
151
177
201
202
167
195
235
221
214
166
130
171
206
224
228
129
192
210
175
169
253
182
229
222
212
160
274
224
216
191
215
250
200
216
244
270
162
195
225
179
219
216
170
194
195
213
193
257
171
219
183
223
176
193
120
171
234
156
204
191
194
194
139
186
160
287
216
233
168
218
227
213
154
202
247
181
213
211
209
262
257
152
205
234
237
224
245
169
219
165
246
260
225
252
223
181
247
163
165
232
271
169
219
227
247
201
183
168
186
189
207
110
170
197
216
280
94
253
203
186
194
190
227
244
215
211
174
175
212
233
210
254
194
179
135
221
251
183
176
227
235
203
216
156
185
209
196
193
141
208
259
155
237
124
180
220
189
197
97
219
207
123
208
194
197
207
192
174
208
217
190
177
237
213
173
183
139
175
225
229
178
167
219
115
212
237
196
179
264
207
201
160
233
268
212
264
251
188
250
271
192
167
236
235
243
229
195
168
85
171
241
141
196
187
263
214
204
206
243
165
246
180
209
140
218
183
230
191
219
211
189
212
233
234
269
239
180
142
250
234
209
274
204
229
163
174
170
197
235
192
191
203
159
196
230
225
214
226
199
211
208
220
214
237
222
167
203
231
176
188
148
189
195
259
198
189
227
161
197
226
227
198
189
214
144
175
209
181
166
192
204
241
197
198
129
241
201
171
289
187
191
129
184
182
127
271
216
197
135
172
202
186
141
175
232
220
166
201
185
224
206
232
125
202
217
220
177
239
170
191
206
188
237
203
206
265
197
240
250
257
212
151
216
180
203
219
192
191
231
239
196
217
233
161
143
204
195
209
197
242
206
215
202
223
186
244
220
182
249
209
133
259
211
165
183
188
195
138
175
204
165
213
161
204
199
189
175
114
147
214
169
187
198
227
233
221
287
238
199
211
216
153
182
232
233
266
283
191
192
239
171
230
144
227
222
186
219
192
215
174
258
156
175
169
180
200
207
207
163
180
146
235
201
246
154
202
203
230
223
210
222
202
201
199
240
198
181
183
264
236
160
180
197
181
191
223
231
237
240
219
254
176
214
213
186
250
217
194
188
278
219
135
122
246
193
123
244
188
213
144
227
183
214
145
188
238
163
258
221
224
152
178
233
149
237
180
159
228
183
259
159
190
183
229
147
264
147
226
165
172
185
212
166
253
212
175
258
185
205
183
273
240
181
210
140
197
188
195
170
259
197
206
171
221
144
171
184
226
210
175
204
276
221
242
226
223
198
209
163
185
212
133
200
212
205
202
152
198
192
165
217
243
230
190
186
240
159
152
148
162
271
226
198
199
203
232
221
211
242
208
204
158
239
256
233
225
197
258
254
255
186
255
243
189
208
215
204
183
210
196
137
258
197
241
161
183
190
162
165
145
238
182
167
189
248
214
190
114
212
186
244
209
191
231
210
183
235
184
185
267
198
143
201
207
217
170
178
181
251
205
172
198
216
164
209
189
185
207
227
141
222
252
175
191
136
233
199
244
167
223
237
231
218
200
172
178
219
179
180
237
225
156
217
195
183
205
218
194
250
242
175
148
214
183
226
228
208
134
202
200
159
147
197
155
232
247
246
219
168
203
98
270
200
177
217
255
200
233
157
219
217
228
181
198
178
161
215
259
213
167
227
203
229
158
107
201
156
187
198
233
196
237
211
217
223
189
182
183
188
203
240
134
156
200
157
178
200
224
166
158
211
185
237
155
217
188
236
183
157
255
191
98
152
237
221
207
190
155
172
195
187
214
194
240
174
220
223
189
230
187
185
228
202
165
141
193
218
205
235
215
214
160
163
200
229
212
224
212
190
184
201
200
157
169
178
207
172
244
177
262
204
254
203
216
248
195
112
171
191
138
202
177
163
170
242
269
239
217
189
222
234
250
149
181
179
179
161
194
167
182
225
156
178
201
143
242
208
171
155
171
225
185
170
228
257
222
194
182
249
194
297
219
212
146
260
169
251
244
175
191
151
274
225
100
171
189
167
239
201
201
195
210
139
189
187
206
204
190
167
208
214
217
194
207
193
152
259
241
182
244
125
163
243
165
215
173
227
116
180
192
155
244
219
225
241
251
214
160
197
170
250
230
195
147
162
173
163
226
177
277
188
207
201
212
167
202
181
170
197
196
163
166
217
200
167
159
202
228
190
200
217
230
179
225
216
193
191
177
288
196
262
197
183
179
119
185
219
219
179
247
184
213
160
185
175
175
220
134
207
192
147
194
192
250
168
184
138
157
215
264
240
258
221
184
176
262
215
148
189
231
206
193
218
159
212
213
216
186
222
217
212
178
164
205
179
141
186
222
194
165
269
248
217
177
269
165
132
231
203
216
153
213
163
175
264
217
132
265
222
186
241
235
209
166
170
205
178
178
165
204
193
186
212
205
163
242
217
255
198
131
192
212
191
242
230
221
220
221
196
213
200
160
237
178
215
148
145
184
198
179
194
224
204
276
153
171
229
240
230
210
173
211
247
185
235
182
183
195
155
164
192
193
244
164
199
232
175
239
145
132
169
211
201
192
165
214
201
146
204
223
209
188
212
184
216
208
253
193
194
164
214
250
191
170
181
196
203
218
213
226
216
225
211
178
248
232
173
246
210
184
210
161
166
245
180
252
158
233
233
187
227
227
280
213
159
137
137
233
175
172
276
245
192
179
146
219
211
153
184
180
226
177
215
211
243
204
271
169
204
161
266
152
227
222
221
151
207
194
223
168
193
193
204
218
250
209
177
204
182
230
159
195
213
214
164
144
199
222
201
204
202
189
175
207
237
210
163
241
232
228
232
185
177
221
171
172
218
226
203
205
172
191
195
156
168
142
230
227
207
141
235
245
202
190
80
223
212
214
184
208
175
160
185
240
195
188
240
161
241
236
198
242
220
205
133
187
189
186
225
206
201
234
237
215
183
163
238
183
172
165
156
175
164
245
164
158
214
181
234
244
208
210
208
209
240
181
281
192
204
260
218
218
213
178
240
238
207
194
164
225
260
177
268
240
210
199
146
147
196
161
223
200
160
264
178
162
116
215
211
254
215
152
221
244
190
218
178
162
172
214
165
158
129
206
206
229
238
180
190
215
235
244
186
166
245
205
262
225
182
179
226
204
194
125
217
155
185
198
202
143
226
248
173
164
177
207
204
201
194
201
217
164
158
224
113
185
177
187
159
220
175
143
134
211
244
138
173
215
241
168
155
245
197
194
202
182
202
146
244
173
215
196
208
153
198
257
263
176
173
217
221
222
196
168
174
258
193
201
145
248
198
208
186
125
141
276
168
248
202
180
229
235
173
177
166
191
142
224
224
190
209
164
226
189
168
173
177
252
164
177
235
242
216
221
200
204
240
206
224
194
216
251
213
243
193
183
132
219
197
175
174
155
255
232
241
185
188
169
225
154
158
162
214
171
176
243
195
171
230
193
178
209
173
253
171
236
161
184
188
154
197
262
192
135
190
235
177
279
157
226
179
208
223
185
207
171
174
193
172
181
174
213
229
216
201
209
218
240
205
206
156
198
246
157
172
168
258
254
215
158
184
254
164
175
225
237
221
168
180
207
211
217
231
159
219
203
206
224
135
227
235
232
226
158
186
181
181
214
148
246
185
249
188
129
251
175
225
205
262
143
221
199
195
148
181
177
207
155
219
187
160
207
160
179
229
205
236
191
224
168
224
252
144
228
178
222
244
205
194
261
153
214
176
194
180
263
189
175
231
307
229
255
226
193
137
228
220
206
232
233
177
231
200
134
129
155
229
225
187
191
176
162
192
225
213
178
170
160
253
183
229
183
164
165
210
146
224
219
155
210
128
258
196
152
249
211
171
250
206
182
222
183
219
250
236
126
221
179
185
184
202
190
224
161
172
194
196
124
240
239
163
247
236
253
168
220
145
230
193
206
187
195
184
146
183
218
159
222
242
225
195
206
221
203
235
210
225
221
208
213
181
181
224
179
218
249
139
261
244
188
180
222
176
160
227
262
168
255
161
173
161
188
165
170
183
250
125
242
179
199
190
189
198
190
180
218
225
207
246
210
157
208
201
156
221
255
200
173
168
187
214
174
152
188
148
152
198
153
212
179
248
222
214
206
155
186
245
174
170
220
233
190
222
215
258
165
203
166
232
216
272
211
234
169
219
264
235
178
234
274
149
138
250
203
175
203
192
245
237
166
148
199
221
190
207
266
209
223
212
193
207
195
178
202
264
227
207
152
179
218
192
276
177
233
199
139
146
157
230
182
218
175
194
232
223
228
204
140
174
135
160
204
205
232
145
244
139
119
185
180
251
196
254
215
247
189
125
206
170
174
171
149
155
215
197
239
136
235
137
180
250
209
229
223
233
254
223
233
191
211
247
234
192
254
165
159
188
225
166
182
219
176
219
202
237
194
242
258
141
151
202
179
220
185
154
156
255
195
280
184
207
197
214
154
226
142
259
192
187
217
220
211
183
216
134
172
207
191
221
162
192
156
184
228
209
192
238
194
222
164
279
207
222
203
255
223
228
209
193
220
224
160
226
131
220
210
190
172
257
226
188
163
167
181
183
216
161
189
226
174
219
225
125
226
223
248
181
205
256
202
223
219
132
172
185
178
163
221
231
208
239
201
126
237
207
179
217
222
186
260
208
231
181
189
153
173
195
211
163
180
144
184
164
157
218
176
195
178
209
211
265
238
278
154
176
139
159
191
241
155
226
238
259
263
181
217
236
223
208
213
226
162
252
179
205
139
198
225
246
188
170
191
238
216
203
194
185
196
221
120
156
226
174
235
210
189
218
231
251
168
210
270
229
228
153
185
206
222
210
180
152
230
173
199
187
214
180
222
216
223
158
193
187
199
220
219
224
250
144
212
184
238
192
181
239
216
233
151
181
255
189
141
201
193
217
211
185
205
207
232
222
184
250
189
194
250
239
189
127
175
241
229
229
235
188
173
201
162
187
184
183
192
225
267
224
190
236
182
154
144
121
217
234
226
207
185
217
220
260
208
162
229
144
115
185
184
237
241
201
213
219
184
187
156
128
251
253
203
213
168
225
189
228
196
219
215
187
155
198
211
180
126
170
175
231
264
146
237
199
246
245
192
207
194
177
211
218
163
224
224
195
185
163
207
153
224
228
152
202
235
235
167
243
212
214
233
171
210
144
223
243
187
213
182
168
205
172
215
199
262
206
189
138
205
184
283
204
188
235
236
213
193
171
222
259
248
192
158
145
241
259
235
181
188
236
181
181
171
206
202
183
196
283
166
219
210
180
148
201
196
187
206
181
155
134
219
189
247
159
203
208
188
213
229
223
221
155
216
200
223
179
177
231
239
187
181
171
167
187
227
115
162
181
236
246
282
188
209
161
182
194
168
249
207
208
185
171
165
269
161
163
125
240
162
177
224
182
192
258
198
228
203
235
180
224
191
156
158
223
200
186
188
247
216
224
192
197
164
196
156
165
214
174
257
213
182
238
177
186
213
198
212
163
200
199
262
192
184
177
218
236
207
254
220
230
209
206
194
222
193
153
168
178
242
160
160
236
227
204
213
237
215
214
226
194
180
257
180
154
127
118
210
232
218
131
167
173
194
221
164
171
194
285
197
191
217
238
295
169
171
227
158
168
157
163
219
191
222
192
178
154
250
220
204
199
220
195
181
228
116
247
160
207
232
212
146
228
211
155
230
173
177
196
257
143
142
177
194
176
139
244
183
243
237
185
198
149
207
226
201
294
265
189
173
205
181
207
213
208
188
154
246
167
171
239
165
241
133
232
153
176
160
241
154
212
201
158
183
266
225
240
159
112
216
107
143
202
138
183
205
167
245
193
234
183
170
245
204
153
240
191
222
237
197
237
188
141
166
258
228
232
181
239
200
175
142
231
215
209
187
163
175
97
208
210
227
217
210
177
149
240
201
212
88
231
188
157
203
207
178
172
215
198
201
153
168
193
222
183
165
240
186
187
205
194
182
273
213
240
189
203
202
239
215
210
206
210
197
158
243
195
257
203
164
199
235
180
121
182
211
188
224
205
197
242
183
168
219
229
238
257
245
215
221
166
198
172
232
230
187
214
255
163
266
188
199
224
229
231
186
233
178
254
230
241
164
211
203
171
205
161
231
227
252
220
177
167
270
195
169
165
131
202
256
216
252
197
229
158
164
189
200
236
159
160
170
214
174
186
159
154
172
249
260
205
198
193
174
214
155
188
220
151
158
201
203
201
207
170
192
190
196
195
178
246
240
212
209
227
187
168
217
233
229
174
150
190
200
216
264
224
263
255
235
157
185
217
225
210
260
183
155
152
167
155
237
254
248
223
193
163
203
201
225
216
259
195
223
173
135
249
276
250
185
218
214
227
236
109
220
178
251
173
191
195
155
217
158
179
128
272
162
191
216
189
181
175
125
218
151
210
190
211
231
190
232
171
201
191
175
227
212
195
167
201
180
171
238
184
177
217
186
161
106
192
186
189
135
209
171
206
191
165
258
212
181
217
245
222
142
269
205
200
196
192
176
165
200
166
195
205
172
208
143
251
206
227
236
150
234
212
136
230
264
157
223
212
217
243
170
186
230
195
169
201
181
242
226
248
170
187
244
145
179
228
203
155
252
202
153
226
158
193
178
194
192
246
159
189
195
193
167
232
202
203
198
236
145
168
156
208
232
183
269
224
178
233
231
160
226
213
222
261
216
156
189
146
171
220
189
194
258
194
171
215
207
197
209
157
152
200
268
240
161
207
184
233
134
195
192
213
216
219
172
171
203
181
229
203
224
164
220
207
241
190
207
252
209
188
183
233
229
235
216
229
160
180
214
199
236
193
216
270
225
224
248
214
236
199
213
203
204
222
254
277
184
174
210
180
213
181
185
178
166
223
211
216
162
171
266
121
194
189
189
204
173
169
205
238
178
165
213
208
181
189
165
168
156
192
200
262
231
228
161
156
205
182
160
203
187
206
176
179
240
249
216
238
180
251
180
222
241
231
165
156
231
208
186
248
230
174
175
224
208
235
252
254
236
203
211
153
231
211
196
173
250
218
167
160
149
178
186
189
196
109
209
213
241
258
206
260
181
150
205
154
199
169
171
230
142
218
208
211
168
247
186
173
222
216
212
210
197
148
194
252
158
145
190
198
240
206
129
155
205
201
127
203
203
204
161
235
241
234
234
296
155
186
164
191
194
211
157
227
174
171
194
160
236
199
213
219
166
212
245
140
225
134
228
256
197
178
193
174
201
186
204
184
245
231
154
190
192
205
191
157
211
182
162
243
175
195
144
191
167
175
178
192
175
184
175
159
188
163
167
125
240
222
240
177
227
190
182
156
204
197
198
168
162
227
208
188
185
213
245
165
223
225
251
167
145
164
244
175
199
172
143
150
182
200
248
210
243
193
201
191
169
229
108
158
213
220
139
229
174
187
297
209
197
246
132
229
195
149
170
191
205
260
274
140
252
221
191
181
236
217
199
153
180
169
191
232
218
192
150
157
187
168
190
216
196
226
150
213
224
261
160
169
176
176
208
201
171
249
169
203
237
134
260
196
253
138
219
198
234
134
211
233
217
127
192
192
108
218
217
167
185
238
176
196
201
192
202
234
167
198
252
186
257
217
186
197
217
139
199
200
191
200
285
187
169
162
187
218
245
164
177
218
182
209
180
187
197
225
207
186
248
255
151
222
163
161
213
200
156
240
242
186
223
231
212
219
191
255
187
172
118
203
214
162
174
223
182
175
211
235
194
213
139
236
168
126
194
160
169
144
274
164
146
198
241
169
222
218
250
192
132
211
196
196
181
204
197
162
149
225
153
200
207
192
188
136
201
195
257
181
152
204
188
166
248
238
175
212
141
156
230
156
193
274
148
217
247
267
217
171
235
214
185
237
204
167
185
223
260
150
225
167
245
192
210
187
158
134
227
247
202
185
199
158
207
188
224
177
181
250
181
172
162
185
235
239
193
186
173
278
213
185
270
219
238
132
211
236
138
207
181
176
199
205
255
136
195
254
239
216
223
183
152
230
205
249
207
233
146
258
176
199
157
253
237
239
223
172
244
207
169
258
143
166
217
160
201
185
238
206
202
242
224
288
216
248
213
188
216
196
210
246
154
217
222
222
159
203
173
220
188
202
222
158
147
193
267
195
171
223
203
259
244
242
211
174
209
244
179
156
215
239
190
218
236
232
143
236
215
274
271
227
178
183
140
150
245
192
142
206
227
227
201
274
239
228
201
227
200
163
226
166
174
177
158
193
246
234
203
220
146
238
136
131
173
138
253
204
176
195
157
198
167
176
198
140
240
223
215
168
175
262
236
223
244
207
184
215
251
196
214
175
183
177
184
233
200
124
206
251
176
130
180
197
236
141
265
148
204
177
173
220
218
158
228
221
141
182
190
170
182
210
234
172
192
158
196
195
170
217
199
206
257
194
211
172
124
122
157
240
247
204
276
209
221
225
211
197
222
201
191
206
226
201
229
181
132
224
138
213
185
217
192
173
148
206
249
206
235
174
235
197
182
179
204
170
207
144
222
190
203
222
230
241
265
184
257
254
206
261
214
207
162
179
187
215
211
220
189
209
180
170
200
186
190
205
223
202
168
181
142
138
241
243
207
233
162
215
182
203
247
210
219
147
232
151
185
179
204
178
234
239
215
222
163
163
243
211
231
177
172
212
207
213
192
163
263
187
227
271
157
229
239
166
236
276
219
171
202
98
189
233
201
120
193
192
213
212
186
233
210
248
152
285
201
221
205
129
152
214
213
207
187
207
235
194
104
210
249
193
164
182
179
190
224
160
218
192
247
185
166
193
192
197
197
220
186
175
224
199
158
160
188
260
189
192
218
187
206
192
226
219
154
214
212
181
185
189
179
165
174
165
155
218
239
158
213
164
183
239
263
197
229
270
125
206
163
138
208
195
218
179
140
195
245
197
234
193
219
194
249
233
223
172
193
172
145
168
224
181
231
193
243
191
223
246
207
267
188
195
217
191
223
257
245
224
220
122
248
161
196
177
276
182
230
156
147
193
230
202
186
236
192
241
139
255
227
189
234
220
219
197
231
190
238
230
170
202
193
215
226
172
236
256
180
165
196
214
177
233
163
144
233
194
156
210
202
203
215
186
152
227
113
260
186
266
222
220
230
160
207
181
223
224
159
201
183
172
207
145
178
155
236
185
158
230
185
230
169
164
224
169
284
212
126
136
197
253
203
221
154
226
243
228
208
197
197
195
144
217
198
195
204
228
245
217
206
169
214
232
157
201
139
251
113
203
184
201
233
160
212
197
187
199
169
209
145
264
163
225
222
170
222
157
221
198
182
214
206
214
184
207
193
270
126
258
164
217
222
214
171
222
228
208
132
244
232
247
171
190
150
231
196
179
201
215
184
232
176
264
221
182
216
193
210
191
196
162
162
219
158
230
165
191
152
202
212
214
203
235
243
207
222
235
252
203
221
210
185
247
207
181
207
133
193
154
253
179
219
251
145
202
160
177
170
209
214
231
124
176
202
175
162
216
233
235
188
246
234
207
186
214
212
208
219
178
182
235
197
262
232
227
167
245
245
191
154
206
222
146
204
147
198
288
240
184
208
160
228
256
205
200
162
226
189
141
214
236
253
196
211
180
240
188
176
167
147
194
203
177
183
249
183
220
201
238
203
233
214
202
184
181
190
165
209
259
213
222
208
165
194
199
177
185
246
163
219
246
235
202
192
206
225
215
192
168
197
229
205
138
195
151
172
198
197
214
177
178
190
215
208
241
171
188
192
143
162
137
188
218
205
224
182
176
209
187
246
147
177
186
215
222
204
111
177
142
181
206
206
206
245
248
184
192
177
202
173
248
186
181
218
204
175
254
232
229
223
151
190
235
187
136
163
211
171
189
198
176
240
163
176
230
227
154
217
165
188
221
196
157
227
190
234
212
187
213
187
192
224
199
226
237
244
184
180
219
161
213
211
209
176
198
193
180
173
191
131
142
195
209
245
168
269
220
143
233
176
215
188
212
194
279
206
209
210
183
225
181
206
212
208
171
221
162
207
193
121
113
179
168
233
236
228
224
230
289
245
190
210
184
187
246
211
216
214
115
128
208
134
204
145
219
161
257
206
176
141
261
225
166
217
248
252
198
261
148
191
203
226
180
198
180
206
238
221
142
178
188
184
235
151
190
229
213
162
224
221
238
214
153
197
139
231
189
161
158
178
180
196
167
208
221
241
196
161
206
237
206
215
255
121
191
252
135
114
243
271
169
196
187
222
251
190
227
230
248
167
170
245
181
207
261
215
146
188
178
194
179
194
175
265
198
198
264
204
200
220
244
172
164
182
171
243
188
203
238
214
160
247
136
219
171
234
248
211
199
239
193
185
201
197
188
209
233
169
197
167
200
156
248
204
201
270
167
180
206
187
234
230
169
100
218
199
232
207
259
169
206
223
178
219
168
198
239
205
244
194
176
196
169
189
202
195
247
213
218
217
132
229
157
172
267
135
197
213
269
216
182
247
173
209
188
214
138
247
255
190
221
220
228
167
134
266
172
187
181
189
161
207
130
173
221
165
245
189
191
227
229
189
217
254
205
183
195
161
212
223
212
157
131
225
210
173
165
181
219
168
179
202
204
228
200
178
246
197
225
228
142
163
208
162
238
187
165
211
180
221
156
217
192
206
216
174
182
202
234
173
185
220
275
136
195
257
220
175
194
181
208
183
202
227
229
209
202
229
145
229
198
206
235
245
202
137
227
180
201
218
198
248
173
154
214
271
242
227
183
217
225
251
236
209
229
225
208
208
241
200
223
210
260
157
223
200
191
226
232
186
181
218
128
237
248
162
205
193
178
213
246
227
217
185
203
164
178
254
205
232
140
156
244
253
155
211
136
186
144
193
190
180
249
235
214
239
249
192
165
198
223
182
239
181
164
208
160
246
206
184
193
188
195
192
167
250
226
196
146
208
207
185
165
115
214
199
183
146
220
194
264
190
175
227
199
224
198
203
232
158
265
228
132
165
174
214
187
163
185
149
193
214
265
138
159
163
244
241
179
176
200
235
188
148
208
202
211
182
224
216
181
203
157
164
173
240
173
179
175
213
176
232
195
151
226
287
248
205
235
191
198
195
135
179
206
163
217
210
209
171
200
183
242
149
187
216
188
165
203
211
201
220
192
176
162
214
229
197
186
183
204
201
248
184
224
217
215
210
168
138
224
204
199
214
235
143
192
246
201
169
171
235
248
141
167
225
218
257
225
197
200
173
229
223
205
160
215
178
205
210
237
182
233
202
236
228
258
272
244
153
221
208
216
208
156
152
257
200
155
235
177
226
194
227
131
170
272
199
215
186
235
243
182
211
168
240
222
187
252
188
205
197
180
189
258
192
226
179
214
244
208
137
162
202
179
193
222
221
226
215
176
246
228
206
187
194
250
225
190
204
232
189
222
204
202
230
201
179
134
209
164
243
208
223
203
200
217
255
226
222
204
195
204
175
171
196
270
225
221
168
235
203
190
227
212
179
199
209
198
131
201
240
184
201
235
212
178
242
221
217
192
188
227
200
175
118
176
248
231
191
177
274
256
150
169
199
211
226
228
199
167
132
178
278
127
167
266
228
220
185
153
182
152
166
159
161
187
234
224
218
233
233
232
165
196
158
186
185
147
164
194
221
198
198
225
197
186
198
240
163
203
187
208
235
171
254
165
175
144
159
150
191
234
243
196
157
171
194
205
206
255
191
210
205
184
183
238
248
156
143
176
185
190
160
166
238
178
295
167
201
207
202
239
180
220
208
234
133
183
223
187
227
232
218
211
199
221
190
198
187
198
267
243
164
166
139
165
237
238
199
199
184
238
223
170
251
187
263
239
224
160
208
236
218
164
290
213
185
203
175
178
235
191
271
262
208
221
209
188
180
241
205
207
172
181
212
224
226
195
182
155
221
205
209
245
179
184
138
125
188
177
205
253
235
156
203
214
219
237
165
213
204
165
150
178
169
239
162
246
178
170
192
283
250
171
204
179
252
237
222
108
241
261
152
166
177
177
255
186
143
204
154
212
206
212
173
204
197
206
206
235
247
207
198
202
150
214
225
194
153
230
211
210
215
210
247
172
202
205
111
226
226
159
178
187
219
198
148
200
177
168
250
185
246
244
173
196
233
190
238
233
210
207
210
189
191
200
168
180
267
176
220
202
206
193
148
265
230
215
177
232
213
136
225
291
235
214
179
190
111
213
240
133
129
202
208
228
219
192
183
206
255
213
232
201
187
270
171
236
228
233
174
234
148
177
213
281
202
178
218
152
252
164
204
224
193
175
191
187
177
259
210
228
171
205
187
216
133
254
225
238
166
170
167
227
208
223
158
182
236
235
210
193
149
248
162
208
281
195
190
228
203
189
208
161
141
192
189
174
196
163
178
247
157
270
148
157
185
244
166
205
277
268
213
244
184
174
171
242
195
167
235
201
172
199
209
185
204
198
261
190
251
204
157
244
177
157
216
182
201
213
192
201
151
192
216
221
191
196
245
150
110
217
257
197
199
211
251
192
243
214
181
190
202
212
189
187
220
216
194
174
153
219
175
227
179
230
234
182
224
228
173
191
167
218
178
247
166
153
237
214
181
238
259
253
161
162
229
202
135
181
183
184
238
231
209
222
214
160
152
266
239
243
268
200
180
241
179
204
222
223
187
167
192
180
200
182
185
121
207
179
199
234
215
190
172
177
153
254
137
197
255
198
146
195
215
176
213
197
213
170
229
214
210
194
137
227
220
120
258
185
251
201
224
242
234
202
235
231
262
197
172
221
234
194
165
251
247
275
200
175
189
204
214
194
190
160
211
205
244
221
175
178
215
228
222
169
207
207
188
237
257
191
220
244
211
144
234
208
224
246
174
204
216
218
204
255
162
128
206
191
234
133
150
207
129
202
139
190
157
209
269
264
221
234
234
172
183
273
257
211
184
185
118
220
147
200
176
228
221
186
159
238
182
154
190
249
220
223
195
199
243
161
187
164
232
240
205
140
184
213
216
229
175
168
206
185
193
180
189
229
165
219
294
274
165
140
256
212
242
110
186
211
214
238
126
201
209
230
235
184
170
178
238
213
251
225
255
197
216
211
189
166
167
224
241
210
154
173
240
196
178
162
149
193
268
209
242
164
217
159
236
193
216
147
228
229
184
226
238
210
230
227
196
148
208
216
190
230
193
215
213
230
251
209
263
252
90
185
189
182
215
154
248
232
172
215
198
197
183
226
210
278
189
266
212
169
223
203
197
210
198
213
168
156
127
226
178
173
172
233
115
199
205
188
205
199
193
193
177
171
199
191
104
258
195
191
244
225
178
153
220
181
160
196
219
182
228
223
261
249
211
243
98
204
190
261
174
197
184
211
211
191
224
261
184
222
220
168
133
172
232
163
179
176
225
206
179
177
207
215
219
241
213
244
271
212
188
220
165
245
188
198
185
142
202
182
212
201
181
193
219
221
203
177
218
195
163
200
200
191
140
179
220
181
294
222
191
199
247
239
261
254
185
207
158
170
185
205
240
182
148
227
236
256
108
206
234
193
258
173
248
207
236
166
171
132
203
208
150
202
165
228
167
176
172
243
207
226
149
169
168
186
208
211
199
188
205
184
206
159
155
255
189
205
239
190
164
215
193
229
166
185
219
165
163
279
170
223
205
213
210
188
148
164
160
184
254
171
226
219
247
161
200
241
241
125
253
157
206
201
211
249
206
189
174
210
153
218
238
214
186
207
164
188
214
225
126
220
212
173
140
238
164
194
263
240
192
174
162
238
177
171
184
197
209
179
197
189
162
213
181
237
158
230
210
246
134
198
173
221
176
179
269
223
192
200
240
191
236
223
160
222
191
169
208
193
118
163
214
197
182
162
218
131
180
186
187
256
206
225
114
215
186
218
252
205
204
227
222
224
129
187
164
186
178
153
165
250
217
177
204
152
194
185
165
229
195
217
208
203
247
216
223
199
221
195
242
213
243
183
188
166
189
185
188
231
239
156
171
229
148
165
169
157
224
202
228
161
249
183
165
140
160
243
177
137
190
216
167
223
251
241
241
168
239
164
199
171
246
201
165
151
218
230
220
201
194
212
214
193
260
227
178
220
214
183
115
178
186
201
136
188
229
181
218
191
269
189
221
141
190
248
210
212
155
195
149
222
187
169
241
228
179
187
239
233
242
215
195
171
204
193
184
228
198
173
175
229
127
152
192
202
179
240
216
193
199
184
212
176
245
189
181
245
220
148
221
174
146
200
222
221
248
173
270
194
218
190
209
219
210
222
228
192
146
260
180
142
179
129
211
199
159
235
195
225
189
210
209
171
248
189
210
260
125
202
241
191
259
228
191
212
171
191
184
226
206
246
198
205
173
198
207
208
220
224
164
140
220
196
221
237
167
196
170
215
196
204
278
193
244
236
235
251
255
239
238
214
188
196
214
204
202
201
150
148
182
219
209
258
243
206
166
212
199
215
183
243
195
246
198
163
231
161
191
143
181
206
198
246
225
227
133
157
180
210
265
199
211
188
223
236
122
149
225
239
188
179
247
178
200
217
192
213
187
211
192
254
205
155
236
225
158
205
205
189
171
254
179
204
202
165
238
218
195
157
169
232
189
250
138
121
204
188
197
209
205
229
247
145
217
266
177
246
186
196
159
234
200
186
186
199
189
218
218
239
176
216
249
169
219
182
173
129
150
190
242
139
186
188
179
174
224
198
217
222
160
181
193
229
202
186
148
154
167
164
190
247
191
200
227
207
221
205
193
228
235
123
231
186
245
208
187
213
210
177
239
198
148
214
195
219
272
248
234
229
203
194
169
186
188
189
230
141
194
195
263
217
178
266
186
228
158
186
243
253
183
222
214
209
175
246
196
163
209
175
207
214
184
182
183
217
223
197
166
230
204
246
180
240
207
253
255
165
242
250
237
248
249
247
230
200
225
173
191
183
184
217
164
199
211
221
235
177
187
223
168
215
200
192
183
240
185
182
134
223
174
223
211
233
190
246
245
239
134
196
220
180
218
167
139
233
212
191
244
209
210
139
242
265
252
233
215
163
181
181
201
168
214
236
130
240
227
201
216
218
201
211
182
179
172
204
195
221
229
206
194
169
192
232
221
255
176
174
237
216
202
187
179
282
261
116
235
188
172
190
157
227
179
173
151
219
204
224
152
198
227
194
153
226
159
210
227
128
196
212
202
172
240
175
181
214
197
249
222
159
196
213
252
206
149
154
216
250
195
228
242
157
275
226
257
170
198
192
189
220
221
196
195
208
205
151
207
169
215
189
260
186
166
151
229
189
228
255
179
160
250
188
239
218
256
174
207
161
217
221
199
186
207
216
236
157
215
268
232
242
230
164
221
240
214
227
181
163
147
228
200
244
136
168
206
151
213
205
195
217
203
243
253
225
200
204
195
239
184
202
184
205
178
194
135
216
204
222
201
204
167
193
229
147
198
244
177
211
235
204
242
245
182
215
219
250
197
212
137
196
168
158
226
191
239
167
114
220
186
194
233
224
180
206
273
142
225
213
224
205
210
201
189
194
237
217
194
215
223
227
161
190
247
234
156
219
235
179
256
201
183
230
168
177
208
193
183
223
211
204
196
171
169
217
169
133
253
143
217
216
207
172
162
93
287
204
227
225
143
185
182
195
166
164
231
153
276
175
171
245
206
239
168
192
151
149
196
182
201
255
218
242
208
228
181
237
246
167
254
220
210
157
285
243
243
215
108
177
172
229
221
184
140
225
215
189
211
227
223
152
231
218
186
232
163
147
232
217
230
199
223
201
186
234
168
217
253
234
233
221
167
222
169
256
235
271
231
226
215
238
206
196
248
236
232
233
158
220
232
180
168
211
197
195
202
224
227
182
237
154
198
174
111
179
172
194
162
188
186
223
208
212
229
173
224
247
221
153
230
167
187
224
220
228
228
195
207
188
207
210
209
206
168
162
187
145
238
197
189
236
218
128
160
231
164
202
164
212
186
277
215
209
251
118
222
180
243
205
224
174
151
144
205
198
156
212
174
200
188
159
225
211
179
237
210
236
246
286
219
208
179
178
233
266
231
211
204
193
211
231
170
217
244
226
192
125
221
183
126
186
175
155
145
159
198
189
146
192
185
216
187
173
121
200
167
240
197
190
242
173
185
216
143
191
213
222
191
209
175
236
198
200
248
194
209
220
233
201
199
146
234
219
148
185
238
138
184
168
195
233
199
223
209
208
161
219
268
149
215
183
190
221
207
265
196
182
269
183
179
235
219
197
198
229
171
206
215
256
183
222
196
184
199
204
238
269
177
148
226
183
248
173
197
231
226
240
198
243
202
170
205
192
193
247
216
221
213
192
132
204
221
197
164
218
231
233
188
274
270
175
195
203
191
209
208
216
158
180
178
202
248
122
213
176
134
246
209
205
184
197
175
164
231
202
192
222
245
197
152
152
229
226
114
235
194
241
218
184
226
211
213
207
162
264
215
212
253
173
178
208
158
199
188
157
154
199
202
261
154
198
214
209
157
224
196
250
207
230
208
163
196
203
208
165
213
156
241
226
224
137
193
178
240
145
205
217
246
221
207
233
255
176
172
175
200
269
149
253
167
169
198
209
202
253
207
196
187
242
119
174
249
250
235
183
225
194
133
197
237
235
261
183
160
166
175
199
186
223
199
202
211
183
204
226
204
199
158
206
154
214
250
123
212
254
200
233
253
192
198
204
192
212
194
158
246
189
201
166
197
165
187
161
149
197
168
171
173
208
244
235
243
141
224
222
166
175
237
219
174
182
182
187
212
238
163
111
209
227
186
159
211
124
215
250
216
212
168
185
150
214
168
204
178
240
165
199
210
221
211
193
240
175
183
207
243
206
252
221
247
204
260
146
223
178
162
203
203
219
196
217
152
219
178
173
200
210
112
199
211
198
197
193
180
158
163
231
172
221
260
235
159
231
233
218
217
164
185
181
171
203
232
170
118
230
178
202
205
236
170
196
191
214
246
210
241
172
204
277
245
167
204
204
220
181
189
220
178
178
259
215
190
191
187
284
234
196
243
247
166
232
195
242
221
196
150
254
176
220
225
194
200
165
145
156
221
166
150
166
176
229
174
248
196
244
254
154
219
217
216
217
117
229
234
175
293
207
205
112
172
210
136
265
217
231
246
240
241
208
195
142
202
167
207
222
205
217
257
179
222
200
272
243
216
285
153
192
272
193
188
222
194
151
139
256
189
152
193
118
201
233
155
176
137
150
152
215
206
212
201
225
236
184
206
187
167
207
201
256
244
185
206
246
217
146
224
206
220
235
217
222
196
227
200
197
216
258
174
170
189
217
212
206
165
190
173
180
231
191
185
158
236
200
187
246
182
222
193
138
155
154
241
236
193
199
216
225
263
195
223
185
189
228
162
195
167
124
212
207
198
214
229
215
190
159
177
146
190
153
219
194
271
241
155
211
173
195
193
140
245
211
247
191
251
232
176
233
262
183
268
242
242
165
237
144
248
235
189
235
230
246
183
188
151
204
240
162
194
199
149
171
194
151
208
179
204
143
236
263
174
202
135
200
222
234
269
182
180
177
160
273
164
203
188
235
133
159
189
193
137
172
248
222
221
174
237
150
180
158
214
170
195
229
245
204
208
177
154
152
195
216
200
125
230
172
255
200
224
194
217
245
234
202
232
179
249
130
225
185
224
183
215
232
229
253
165
221
208
194
205
224
209
212
265
215
211
218
214
204
156
195
135
180
243
220
187
213
222
201
166
200
216
210
233
254
252
230
191
172
182
174
162
256
252
173
254
212
241
149
226
199
124
223
225
206
187
221
242
230
250
252
202
207
237
162
177
177
188
242
218
220
226
231
168
172
260
180
168
251
197
242
195
212
235
230
221
262
201
150
216
208
163
154
165
256
154
181
162
252
205
207
210
256
273
265
187
236
157
167
225
212
138
228
252
163
223
157
198
161
216
168
220
189
218
179
141
188
239
202
198
181
220
230
159
198
195
244
202
211
147
158
188
196
269
181
226
239
254
147
147
225
188
146
210
173
217
200
190
188
229
182
201
212
151
156
74
166
230
193
264
186
166
218
196
210
204
252
163
181
250
173
220
179
216
181
218
155
177
159
239
180
158
276
185
222
241
226
195
228
166
210
256
147
238
183
192
212
254
217
242
205
196
224
184
209
215
200
251
188
220
214
194
294
135
204
211
238
196
117
221
161
185
169
230
151
244
209
148
207
187
228
217
177
184
217
201
163
204
187
177
214
162
196
200
169
209
219
207
207
163
95
205
203
231
169
245
230
198
242
237
197
222
176
245
197
198
220
231
225
207
212
191
205
221
224
203
194
223
241
195
186
266
233
247
200
209
238
170
104
167
180
124
209
210
198
263
150
216
186
179
184
248
142
228
198
275
148
225
176
172
247
184
180
167
195
174
165
226
195
163
241
202
141
186
261
175
241
157
226
222
152
223
230
255
254
208
208
223
252
190
177
174
184
275
203
244
254
251
240
153
207
150
193
197
196
238
217
227
207
215
245
160
206
189
214
241
222
208
188
213
169
173
260
231
198
190
258
254
195
218
143
208
221
190
219
268
224
218
175
269
176
244
277
147
258
223
189
149
288
177
264
207
223
235
141
237
199
246
246
190
244
181
207
145
188
159
207
193
170
202
227
181
208
254
196
235
222
157
211
232
149
205
248
254
111
175
161
185
220
153
171
236
125
208
176
181
173
188
244
211
227
181
181
231
203
149
226
217
169
169
224
190
197
191
252
177
225
157
212
224
177
186
190
247
172
182
196
174
188
252
157
225
169
202
257
217
144
219
180
236
220
191
232
190
149
201
228
216
263
220
199
221
234
174
164
243
218
171
259
243
211
227
215
229
205
180
182
170
188
184
202
218
220
248
140
214
205
192
176
236
210
199
240
217
235
210
170
201
198
220
215
227
232
223
191
200
190
254
174
162
174
250
163
152
241
221
207
243
202
134
174
194
194
239
194
160
193
250
198
207
185
165
150
165
191
174
164
172
230
143
230
227
225
148
208
162
264
168
246
195
168
193
282
229
232
145
187
214
181
171
202
216
181
149
196
191
238
207
169
216
222
213
214
198
164
233
207
166
210
260
226
226
196
153
243
239
142
166
157
214
207
250
177
195
224
197
247
155
195
257
220
198
252
213
168
254
207
218
223
203
240
223
181
226
165
143
153
175
165
179
270
241
121
224
178
159
136
173
217
150
142
137
212
190
201
144
228
187
224
124
233
168
189
186
264
211
250
199
232
212
136
178
236
210
227
212
168
205
192
173
232
264
206
162
156
217
208
186
178
121
210
194
200
243
156
157
201
209
278
182
221
162
216
162
253
195
202
184
180
154
212
191
141
232
208
162
165
237
165
201
241
225
228
222
174
225
175
85
266
239
224
253
210
240
185
189
160
209
233
147
187
177
170
217
180
223
217
215
213
204
189
192
190
259
220
138
234
163
177
202
206
220
156
169
235
135
170
250
176
135
202
164
229
230
228
128
217
221
193
192
242
193
183
177
235
187
162
243
226
223
158
249
175
141
241
160
253
233
253
169
212
203
199
198
142
208
202
202
139
215
195
147
207
187
172
175
223
234
205
171
188
244
254
164
257
197
200
239
281
243
185
174
202
219
207
205
204
182
163
171
229
212
235
143
174
201
199
217
129
189
227
217
177
156
217
206
149
216
204
190
238
163
144
205
221
179
177
188
199
171
219
220
225
212
201
219
224
137
230
172
239
214
218
175
219
211
191
212
224
256
171
215
179
189
216
176
229
187
252
192
208
260
207
203
158
190
159
202
216
166
196
252
257
173
210
168
221
201
265
237
278
219
201
187
205
219
207
183
197
208
168
201
115
202
142
146
198
122
120
216
241
173
220
215
159
188
182
161
206
215
207
217
197
182
179
195
177
182
226
239
197
195
200
154
173
176
180
174
218
149
160
229
219
265
191
178
226
229
238
226
209
252
171
222
199
203
129
201
236
209
148
166
195
257
189
192
189
244
198
195
238
218
218
256
175
218
178
214
239
232
200
237
156
185
228
203
205
196
274
180
229
123
187
212
216
287
235
180
214
200
206
199
184
203
213
254
123
182
200
215
202
274
166
216
180
207
230
249
172
175
270
228
218
179
150
155
204
217
217
139
236
233
254
174
195
157
148
268
197
215
179
174
212
176
221
210
200
211
186
195
148
205
212
210
173
226
148
146
187
203
193
197
255
161
215
189
154
268
165
187
233
184
189
232
175
201
201
205
170
203
218
194
192
228
184
232
244
222
134
230
220
277
159
261
213
216
230
235
220
261
181
161
189
242
210
170
166
148
182
187
138
233
163
288
187
202
202
204
223
186
142
258
221
188
107
213
218
227
227
187
172
144
253
222
160
166
195
179
206
205
192
210
179
196
201
210
237
204
191
188
140
198
217
189
191
215
174
231
215
218
203
227
203
176
198
196
219
132
196
271
226
156
191
181
200
216
258
179
135
173
185
189
133
230
216
184
224
156
225
207
215
208
201
153
199
248
230
209
227
238
144
232
183
170
179
162
151
231
215
196
183
159
220
242
176
220
205
191
220
219
207
185
206
189
177
204
183
226
223
208
206
196
233
178
185
194
253
236
239
215
179
179
172
227
228
206
262
230
183
235
201
134
156
247
153
206
213
198
185
194
167
210
236
193
187
205
184
233
202
184
239
195
216
226
273
173
223
189
275
227
170
163
179
177
200
195
219
207
198
176
194
200
209
206
204
224
234
216
181
271
300
187
192
170
235
172
190
208
193
199
180
199
247
171
212
227
201
187
174
190
227
198
217
215
158
247
208
256
125
209
180
177
209
181
203
212
168
153
253
132
180
228
252
217
184
228
225
181
214
236
179
226
172
202
136
216
177
174
223
243
205
186
191
207
185
145
183
238
236
175
191
172
229
220
220
235
184
166
211
223
212
277
229
187
233
141
173
205
209
242
219
246
209
201
202
215
184
170
214
211
187
150
193
234
172
212
245
181
185
183
181
226
192
196
215
175
179
178
229
243
152
277
111
196
290
195
227
287
228
152
226
267
164
233
219
225
246
219
202
216
176
217
182
216
249
200
205
220
164
172
200
196
221
268
198
148
204
230
197
211
260
273
186
161
194
131
231
202
238
177
193
249
202
230
152
211
182
205
113
210
201
193
201
213
179
208
220
174
177
242
264
187
155
200
207
192
190
192
212
213
214
231
169
209
245
186
192
209
215
201
167
225
178
178
242
186
211
225
223
147
186
232
168
228
167
180
255
173
183
225
178
235
170
196
199
202
200
132
197
160
268
186
216
277
178
190
184
163
222
141
229
192
212
264
134
203
176
222
262
202
219
191
231
156
180
229
145
192
202
246
215
192
188
193
255
224
156
240
184
144
213
203
173
233
221
168
167
220
177
229
182
201
166
216
201
289
177
240
197
194
190
208
202
188
201
162
200
218
246
178
178
154
251
249
194
177
210
182
183
219
185
172
212
175
202
209
187
184
199
231
109
190
241
189
189
230
204
201
239
197
196
264
213
208
190
191
170
215
209
219
172
234
210
203
255
186
237
216
222
167
184
163
186
238
268
200
204
227
195
233
197
172
205
167
193
167
240
193
174
221
233
233
188
268
209
226
184
218
230
187
209
219
205
143
217
191
188
211
229
156
179
222
207
128
192
174
180
224
216
221
231
210
225
229
215
178
220
242
227
177
232
223
171
204
190
140
181
193
195
153
175
195
194
207
195
153
219
165
200
221
233
164
173
207
182
197
136
208
211
211
150
204
201
166
199
271
191
191
205
217
162
157
171
224
195
191
151
196
176
131
199
191
177
259
169
202
290
206
233
131
182
216
217
157
126
249
177
220
215
206
178
212
180
254
223
172
174
252
252
169
152
221
206
221
194
180
250
207
209
205
184
163
229
183
257
208
222
162
196
296
206
233
197
171
178
169
142
232
248
111
122
231
187
178
201
218
177
169
182
169
222
232
197
203
241
202
187
188
168
218
196
169
239
228
233
217
224
195
327
156
234
235
147
219
172
137
266
177
217
176
280
175
217
206
227
246
216
231
188
229
173
202
151
187
144
136
199
210
259
143
245
218
158
132
182
213
135
246
237
247
230
178
205
189
200
176
203
167
159
194
227
221
176
186
246
197
177
192
162
206
231
179
223
215
124
165
216
178
205
183
175
252
169
242
250
165
137
156
160
157
183
263
222
181
212
169
206
166
147
225
177
190
210
266
184
260
221
209
204
181
265
220
154
228
155
196
150
194
211
209
152
262
180
212
184
182
202
229
186
204
161
246
172
238
221
244
169
224
186
232
188
208
250
171
156
130
199
171
138
234
205
227
196
226
184
194
212
221
214
251
132
205
192
161
211
186
214
229
206
157
141
149
212
138
205
210
182
229
171
199
211
249
219
244
195
221
189
212
162
276
220
233
140
190
237
203
140
203
195
201
193
158
183
239
231
176
201
146
154
207
191
213
273
253
167
219
201
192
200
233
143
186
181
225
242
230
178
190
207
189
186
157
215
230
179
162
168
169
211
176
193
242
193
235
206
200
203
203
169
210
217
224
197
155
236
232
168
212
260
239
157
175
199
226
256
187
185
203
212
197
124
163
232
198
240
261
195
181
242
161
158
181
241
210
169
195
206
220
201
223
194
252
146
282
187
217
191
233
184
198
195
191
208
225
185
240
209
215
202
221
207
212
239
291
149
214
187
189
237
206
187
205
149
231
197
254
215
145
231
187
184
143
259
213
203
150
189
176
184
224
160
209
214
188
190
178
206
143
187
197
211
132
269
168
206
205
158
163
166
231
189
183
215
197
223
225
169
188
208
260
223
235
215
214
191
197
168
185
240
224
220
218
237
197
202
185
164
171
179
213
160
209
184
220
183
196
221
213
248
193
196
213
206
178
198
213
246
254
170
160
231
193
238
227
174
221
178
158
144
236
228
224
218
209
166
217
173
225
232
189
166
175
164
239
190
240
219
228
186
176
232
213
219
168
201
190
176
200
210
223
237
255
205
156
217
218
176
148
263
219
249
170
240
254
174
164
176
194
215
238
210
201
189
195
155
249
200
241
205
139
233
186
267
231
201
190
190
221
228
244
191
175
222
273
268
232
216
229
227
190
161
189
233
199
239
218
158
200
168
143
165
226
214
131
239
241
214
221
181
179
227
164
182
259
196
175
142
221
210
239
194
210
196
174
234
250
221
209
173
195
257
206
173
241
199
220
202
185
144
208
197
215
155
212
173
151
258
236
181
176
193
210
207
203
223
233
182
210
196
135
163
181
218
187
142
204
155
228
187
225
270
170
217
231
214
197
253
222
184
238
252
156
137
269
212
211
174
207
192
182
202
254
249
254
183
179
218
237
219
170
187
172
196
249
186
174
231
221
206
216
227
186
182
229
206
188
156
257
255
180
222
202
198
244
191
185
149
219
202
205
170
195
148
136
198
230
226
198
209
195
149
270
223
232
143
142
257
211
274
198
229
208
184
171
196
150
188
204
148
163
191
223
174
208
191
268
148
180
190
129
191
203
202
190
241
235
234
213
232
234
211
217
249
236
212
84
187
201
201
230
224
290
189
244
185
233
204
189
276
221
181
183
249
216
168
248
135
242
224
222
181
138
180
220
202
228
201
178
231
180
224
243
220
235
241
176
237
186
181
195
186
186
218
239
204
243
229
147
129
221
209
249
206
159
269
245
176
186
168
188
219
268
186
224
264
210
253
184
201
238
206
211
241
139
188
139
208
224
175
142
187
189
171
263
197
254
214
154
166
252
213
190
229
244
183
185
249
276
190
210
160
172
165
239
213
215
241
217
152
236
290
198
154
223
219
121
188
161
253
162
160
170
183
241
178
255
181
228
176
223
229
187
149
261
193
236
228
201
179
217
251
183
184
206
209
158
117
190
210
174
167
180
164
172
196
197
203
213
201
189
202
181
200
176
256
212
202
222
185
194
174
203
162
191
203
234
177
208
188
202
186
225
172
204
186
190
265
213
205
278
238
154
234
114
185
180
206
184
213
205
252
251
189
200
237
143
200
181
203
226
141
196
215
199
153
144
263
206
180
235
203
224
264
189
147
150
246
156
247
184
179
178
187
198
161
213
208
169
179
186
220
237
186
192
207
223
198
205
216
171
188
185
231
190
188
267
221
206
242
226
249
153
190
238
187
182
184
142
218
226
246
183
227
193
143
194
214
181
204
193
135
214
177
202
215
229
172
169
187
205
164
141
223
163
227
215
188
240
196
212
221
260
171
169
227
205
192
238
127
178
203
215
199
235
225
180
198
234
153
247
265
113
179
258
218
195
187
192
233
217
176
255
224
259
191
220
193
197
238
214
207
158
215
166
228
239
184
158
245
232
206
204
167
230
239
203
263
208
191
201
160
197
171
151
233
228
163
223
170
159
220
205
205
163
196
184
137
183
191
223
138
204
212
234
282
188
188
230
187
213
198
257
166
199
137
207
254
254
164
217
195
182
133
238
217
139
178
196
192
185
232
230
204
181
104
192
221
198
174
216
241
151
191
214
220
220
141
166
202
160
182
180
216
202
223
197
247
237
137
266
224
248
211
154
157
269
207
253
184
176
155
218
194
200
237
189
180
185
197
165
176
166
238
161
220
163
289
184
128
163
183
170
259
205
170
176
136
145
132
149
155
235
212
236
165
285
245
187
238
168
231
173
160
220
264
204
168
161
227
202
135
203
252
194
175
170
249
201
212
211
196
210
244
213
213
207
229
151
189
210
174
194
181
205
159
252
200
168
196
221
209
174
175
124
260
157
159
214
212
263
212
158
226
244
234
210
220
213
193
168
201
208
198
228
217
226
221
191
208
217
233
158
167
169
226
184
189
223
187
195
183
198
212
269
177
207
173
155
184
184
201
189
197
236
187
242
240
153
171
236
221
193
206
207
252
200
103
229
229
184
226
201
196
206
257
215
188
168
212
162
183
176
142
211
188
262
177
187
246
177
143
139
138
199
249
154
219
236
209
186
219
206
248
251
212
256
236
168
210
182
208
217
221
234
155
231
246
114
217
206
214
195
238
174
221
216
244
178
215
154
202
210
276
228
176
122
232
224
230
229
224
258
195
250
272
221
187
185
236
239
227
127
184
170
225
217
234
170
184
127
152
199
189
157
174
179
164
192
176
197
242
202
211
178
221
175
268
176
160
208
133
181
206
226
168
170
194
207
215
204
101
182
277
203
183
156
215
221
285
160
249
155
175
184
195
241
184
181
256
199
208
239
207
171
256
202
156
253
176
220
148
278
194
185
176
235
225
208
216
181
170
166
211
216
190
247
250
184
200
173
213
220
161
181
177
260
207
175
200
206
235
232
228
241
209
211
180
160
231
180
227
264
238
240
217
229
290
198
223
217
220
220
216
176
187
225
229
189
180
169
276
158
167
240
271
155
125
185
170
160
102
149
223
189
245
207
176
223
186
247
141
219
174
230
223
260
192
197
246
199
154
160
257
194
268
212
161
138
160
224
209
222
202
189
221
183
243
152
193
171
197
192
239
204
237
205
182
242
211
243
289
186
261
209
258
155
192
190
192
247
149
212
174
166
191
212
210
195
172
249
224
132
222
188
191
184
213
196
162
194
240
250
199
241
176
179
240
169
225
226
205
207
168
190
205
159
208
175
184
247
230
244
175
200
201
238
220
179
239
166
259
153
209
178
219
216
236
206
181
185
186
142
237
155
200
241
200
247
184
204
157
209
255
254
265
227
145
241
189
239
205
147
209
110
244
221
233
231
206
186
181
228
190
206
245
262
143
247
175
274
208
120
234
207
173
188
206
220
213
222
177
117
135
205
206
203
173
151
142
144
220
189
181
235
184
185
214
153
279
233
242
193
232
267
192
164
185
251
185
209
173
209
249
214
245
139
179
194
179
214
205
230
230
259
225
192
168
165
164
145
218
212
195
260
258
200
256
179
177
233
225
202
177
244
180
197
213
234
236
204
198
140
190
208
173
186
170
255
213
198
230
143
240
214
220
168
251
189
210
237
153
248
217
183
206
248
203
187
215
171
179
243
186
236
157
229
125
226
177
228
251
203
226
205
202
147
229
158
195
185
111
228
181
244
197
218
168
223
259
190
211
221
238
195
200
159
207
170
251
206
230
194
246
212
226
196
186
224
225
195
215
186
192
154
205
254
165
235
191
292
175
196
143
220
206
190
141
227
181
145
229
168
208
226
187
153
201
159
220
179
143
242
251
169
234
237
210
151
171
205
215
227
239
150
229
207
224
206
189
138
179
211
245
235
158
307
210
216
191
180
215
231
201
139
185
265
130
153
223
212
181
211
198
180
169
156
180
251
201
157
248
242
223
210
241
212
225
212
193
218
235
207
225
212
185
215
263
199
160
173
216
215
184
207
223
193
228
178
168
226
228
219
181
240
150
183
157
131
179
178
188
162
225
227
199
209
195
251
194
242
208
182
244
239
230
212
220
186
244
195
173
208
176
196
129
219
197
217
166
208
127
173
229
183
171
271
252
214
278
159
237
195
255
263
205
229
196
205
204
211
213
204
211
190
209
204
254
175
235
188
225
182
232
205
173
233
195
177
225
162
197
170
214
254
222
211
180
226
234
215
197
200
234
150
242
215
161
214
251
176
167
255
185
206
185
120
213
170
220
224
139
209
240
188
179
256
221
249
151
167
205
235
201
170
199
196
274
239
234
139
212
217
242
215
234
140
146
140
192
214
182
209
240
193
195
145
206
127
204
176
117
218
116
291
270
219
177
205
221
228
207
207
179
250
186
133
215
246
190
218
161
226
178
216
265
211
201
155
178
148
173
136
162
205
162
244
189
251
267
215
212
184
181
171
243
226
236
189
208
234
214
178
142
162
166
201
205
198
193
202
201
157
183
197
181
205
179
222
109
214
161
138
215
205
238
206
209
154
238
217
250
221
187
182
157
175
210
200
245
195
278
165
201
189
244
167
256
190
245
181
164
242
272
166
223
201
173
188
166
180
239
193
150
152
234
244
257
240
203
146
185
199
225
166
161
187
178
221
216
202
211
203
185
219
177
221
211
164
210
147
188
254
196
245
211
176
211
221
249
238
121
204
157
223
214
228
279
169
201
161
200
214
198
147
263
176
209
214
167
222
227
221
194
263
216
196
239
207
165
191
217
203
229
250
252
197
265
166
190
224
219
218
192
161
240
194
266
124
160
143
175
132
235
134
228
200
184
210
174
169
241
140
195
232
218
192
231
216
168
205
163
204
147
184
206
200
260
254
215
172
240
215
195
234
161
222
225
133
148
154
168
193
188
264
193
214
167
203
199
213
160
217
183
287
180
172
211
201
203
247
210
241
204
207
171
177
189
264
229
206
204
230
198
195
218
258
139
192
229
226
229
138
246
183
143
218
121
226
208
220
198
207
197
277
217
186
189
260
227
148
147
192
180
174
204
177
146
186
228
193
186
241
212
269
198
181
225
246
225
130
195
161
196
257
209
162
205
174
186
187
172
146
207
217
153
201
243
167
200
223
218
108
243
251
153
205
162
168
202
203
223
163
231
207
252
192
260
185
193
212
191
167
195
242
191
187
213
254
163
196
190
246
152
273
200
146
125
245
165
157
255
224
198
190
191
234
172
196
176
180
268
163
173
175
209
203
194
209
201
236
252
182
225
222
144
212
241
182
245
210
161
237
194
206
203
188
202
147
201
207
197
145
190
196
223
227
156
276
260
150
176
223
178
154
211
250
204
110
157
219
247
226
249
244
209
251
160
195
141
236
218
245
198
168
221
257
197
155
202
245
185
167
199
233
202
177
266
235
189
233
195
152
182
213
267
206
194
211
218
250
194
212
198
168
198
195
157
203
182
189
257
199
188
205
133
189
191
213
174
238
221
92
181
219
159
219
221
256
233
201
116
156
175
191
210
131
276
163
194
203
184
166
231
196
217
180
176
224
232
227
213
248
214
154
239
190
236
223
218
221
147
260
212
238
139
238
175
180
215
156
231
220
219
151
232
193
264
201
248
201
186
232
182
216
172
244
186
221
240
189
225
192
216
227
149
275
220
158
211
221
228
165
209
179
242
217
174
222
143
200
174
190
226
157
231
242
222
207
196
201
212
229
197
182
237
259
203
159
173
195
187
211
150
258
178
239
219
210
169
160
222
197
207
170
121
199
137
187
232
163
213
190
217
189
143
239
180
204
193
209
202
179
260
143
243
173
207
247
186
210
203
211
219
201
261
177
255
172
236
230
169
225
199
163
238
147
185
234
153
202
281
194
239
176
187
179
182
259
210
205
228
182
227
166
212
218
199
188
232
208
145
210
144
127
154
272
173
161
241
189
201
193
180
163
119
232
288
177
254
167
211
232
219
195
230
244
219
234
144
178
217
157
187
209
207
236
180
167
202
197
239
188
225
218
225
271
214
151
152
172
217
212
183
171
224
195
285
268
164
182
205
167
181
186
188
223
192
178
213
242
244
159
240
201
179
198
175
143
189
211
211
164
172
200
184
219
236
181
171
246
195
147
174
253
128
188
119
232
204
208
247
157
284
189
183
115
215
211
170
221
187
170
222
170
191
161
167
162
216
241
282
249
242
214
164
236
222
216
197
222
231
225
187
206
219
182
183
207
221
173
163
189
209
242
178
190
231
229
189
197
181
194
162
212
162
191
145
229
254
216
202
169
133
220
188
227
158
189
244
151
193
219
171
200
201
145
204
181
197
166
176
262
188
249
160
217
230
218
202
244
136
170
208
172
269
259
148
219
180
159
218
214
196
215
226
209
210
210
230
187
209
163
157
181
161
167
214
189
234
175
155
145
205
172
169
232
179
202
209
223
161
216
177
197
260
145
186
202
201
223
112
160
189
184
206
265
228
191
200
212
223
186
186
212
209
145
177
188
176
122
207
193
188
143
241
179
209
206
170
184
157
121
177
251
163
223
202
192
250
169
196
264
194
172
202
229
231
236
192
165
226
169
199
207
195
202
231
225
199
250
212
198
224
220
124
172
231
182
254
168
128
239
179
221
124
238
111
204
239
249
225
173
172
132
213
191
182
182
227
206
266
184
127
234
174
238
231
194
202
219
240
252
213
156
187
236
213
222
155
149
180
212
137
181
176
209
190
229
233
218
161
147
147
209
236
246
242
193
229
225
174
208
208
187
230
179
181
190
256
185
214
256
192
227
214
168
157
166
237
232
171
192
148
172
194
214
206
249
248
106
192
237
164
193
177
179
218
203
215
205
209
206
189
225
158
197
234
156
208
244
218
181
149
163
149
196
194
243
187
210
193
255
173
181
190
164
218
210
195
130
193
205
232
240
283
237
188
192
217
236
223
212
226
250
187
234
156
230
166
214
175
234
194
246
232
287
192
272
231
142
232
204
192
169
214
197
177
226
222
214
242
248
139
201
254
239
233
226
250
173
220
220
221
191
230
229
265
176
207
241
216
208
120
228
200
173
226
206
231
221
205
208
273
181
198
192
157
178
236
229
183
197
204
178
143
177
222
256
207
168
216
191
253
224
209
240
157
213
238
265
192
157
162
194
228
225
236
227
201
150
134
216
187
158
158
223
213
148
227
196
195
231
226
252
196
167
226
169
226
226
193
216
247
236
185
210
210
216
231
145
231
219
208
190
217
206
210
230
201
260
252
182
229
181
185
193
165
232
190
163
120
166
209
204
152
187
220
193
152
179
209
151
205
118
212
185
133
243
160
207
191
203
113
192
212
157
186
191
207
183
207
191
238
198
231
195
219
218
145
168
310
239
168
222
217
173
226
219
202
133
182
259
268
171
230
212
158
158
236
170
155
199
181
236
192
176
160
237
146
212
222
218
192
199
182
223
203
163
164
156
180
208
241
196
216
230
220
167
214
177
168
116
239
177
193
261
225
128
203
175
251
173
239
104
179
199
220
157
155
213
196
250
153
215
222
270
208
195
177
189
179
203
220
218
208
234
241
162
212
210
248
211
206
209
238
241
160
247
156
169
237
166
187
244
254
208
220
206
226
200
208
191
114
182
229
132
154
247
159
237
219
256
173
148
200
185
192
233
228
205
179
154
138
238
196
175
235
191
177
135
162
171
181
206
207
226
252
174
223
179
158
166
140
160
189
173
232
200
276
204
192
209
201
236
189
148
193
259
163
193
199
219
159
229
268
208
271
192
223
239
211
218
221
183
223
220
202
234
165
143
150
201
155
149
217
223
214
192
174
165
152
188
174
257
195
214
209
199
212
143
218
210
167
217
234
241
228
252
191
249
224
219
184
221
242
228
187
189
183
231
241
173
140
228
168
174
154
225
224
212
199
220
232
155
277
191
220
177
225
161
172
109
178
213
186
197
195
237
181
156
214
241
253
178
109
164
115
149
289
106
188
182
143
202
143
216
182
224
142
190
165
204
153
185
125
169
170
185
173
175
231
195
153
184
219
154
168
250
186
281
198
156
249
167
162
247
186
164
233
242
228
250
189
195
222
198
221
212
201
154
248
168
212
227
206
231
195
180
167
190
211
186
208
198
246
228
206
195
210
200
130
224
181
250
184
155
154
158
189
222
222
197
201
248
176
228
180
225
210
114
199
197
170
254
207
231
281
227
224
125
164
223
186
224
220
233
250
195
236
173
182
202
178
167
182
194
229
224
162
226
224
188
245
237
231
166
214
199
146
216
239
231
230
171
210
186
192
241
258
221
253
224
197
203
256
165
212
164
238
229
230
204
231
291
227
204
185
196
195
220
213
254
207
180
244
211
173
139
196
217
218
223
219
277
171
160
193
244
226
200
120
230
207
224
212
168
194
213
207
162
184
165
169
190
206
235
164
183
175
181
182
167
169
173
207
220
151
192
219
281
168
162
195
192
204
240
236
241
221
137
227
195
200
153
211
209
224
159
209
201
192
268
203
167
214
212
177
182
264
183
194
197
221
240
253
214
260
149
276
206
168
196
196
190
154
206
187
235
195
157
145
198
140
209
227
204
188
162
217
196
217
182
211
208
148
207
230
245
156
227
198
195
210
168
202
199
182
152
202
207
159
150
268
192
256
168
157
218
225
158
179
249
152
180
163
148
279
243
174
184
224
260
212
220
209
200
259
201
158
176
193
148
238
227
176
147
184
234
178
174
161
232
220
194
191
153
230
217
194
179
200
231
214
187
195
175
161
158
160
184
199
180
174
238
161
212
156
211
201
205
187
263
193
177
173
154
253
242
200
186
208
180
201
152
222
186
233
225
256
251
220
203
281
176
214
170
203
184
186
173
211
250
209
182
240
206
223
147
251
216
155
249
165
205
224
182
241
195
144
220
179
132
211
204
154
168
169
173
162
209
148
210
206
140
183
252
150
239
173
171
230
182
162
269
142
156
227
224
215
219
223
185
200
144
184
173
268
170
117
182
170
199
217
266
182
208
250
206
125
218
194
215
197
239
224
165
179
141
237
139
180
186
243
170
256
192
271
200
198
176
107
202
215
258
258
229
172
123
244
207
241
229
159
204
223
180
179
216
179
186
219
191
189
255
243
224
190
200
201
291
184
232
277
248
138
208
194
169
251
239
218
177
194
148
143
208
209
213
248
217
165
215
197
224
176
210
192
256
142
164
127
199
205
245
180
219
241
184
195
205
210
188
196
194
179
215
164
194
233
209
208
243
238
217
200
219
268
229
225
245
163
242
204
239
272
116
174
162
199
278
176
194
145
223
178
169
224
203
241
163
218
157
267
165
224
162
155
198
186
207
199
247
199
245
195
142
233
236
201
197
154
205
159
194
241
208
208
171
194
245
222
210
210
210
190
172
221
176
240
213
163
225
264
191
169
178
172
172
218
214
232
231
185
196
228
200
200
235
179
230
221
170
180
161
211
225
254
159
180
204
173
172
205
258
148
163
172
236
242
247
216
182
178
215
199
202
246
162
201
190
263
191
219
136
206
227
214
206
203
160
188
158
205
171
195
198
248
206
161
235
163
244
207
207
181
224
257
130
215
238
225
207
209
167
247
213
181
163
186
250
140
214
263
181
216
184
244
200
204
198
242
258
202
173
210
179
223
189
162
176
225
149
194
199
145
171
227
228
147
165
232
182
172
170
209
159
231
259
228
174
210
215
235
119
167
163
222
194
213
114
187
202
134
245
197
209
172
172
207
134
221
232
174
174
178
204
221
203
206
195
228
263
199
218
233
134
223
247
157
244
190
168
225
211
163
145
248
192
179
192
164
255
218
239
200
225
188
154
218
224
143
205
236
227
241
236
184
207
174
194
152
159
184
143
264
252
217
211
203
219
229
166
191
177
262
189
143
206
170
248
145
170
200
168
162
173
173
193
237
185
156
169
186
195
256
247
220
226
108
130
167
262
185
174
199
221
218
124
203
237
206
122
216
191
147
214
192
149
181
199
214
240
233
157
228
210
243
252
255
145
243
185
140
194
186
185
245
229
148
229
259
250
217
150
232
220
185
177
153
210
188
165
231
181
141
93
170
219
223
250
221
253
135
162
150
170
217
216
124
162
231
212
196
208
138
228
221
231
212
163
222
237
170
202
251
227
176
194
196
253
253
252
246
256
181
216
152
256
224
244
246
208
232
175
191
243
197
176
173
190
188
198
185
182
209
209
191
122
202
222
208
134
243
244
212
200
215
184
175
227
247
228
206
227
203
165
167
192
234
181
239
198
209
209
170
219
204
240
207
167
219
194
204
226
167
175
216
209
164
202
174
163
216
189
199
177
229
182
173
112
221
148
252
233
219
184
104
209
224
157
257
227
217
220
239
172
151
173
175
162
186
224
189
142
147
191
245
160
185
163
137
204
246
180
242
179
192
212
280
158
209
169
192
225
181
221
222
148
218
261
266
163
205
177
244
227
178
198
213
256
221
180
190
181
219
224
134
155
210
178
157
180
167
224
254
173
214
211
154
178
211
201
193
178
193
188
212
95
197
206
210
154
280
167
148
199
210
216
217
181
211
215
267
263
144
200
144
238
227
213
217
210
191
155
248
210
196
165
188
218
255
196
207
182
183
210
174
240
158
192
235
203
229
225
253
237
167
188
209
216
236
221
183
250
231
163
183
209
206
220
186
197
240
217
243
144
176
180
158
206
146
177
153
225
217
195
171
251
216
227
172
213
187
194
181
193
180
229
200
176
163
252
222
172
184
204
182
176
206
197
229
222
194
212
221
206
189
193
200
194
242
235
126
190
176
175
172
254
147
244
178
184
164
244
125
213
226
208
186
213
178
224
180
226
196
298
217
219
172
187
218
170
194
245
197
196
187
182
174
191
207
229
207
240
189
192
184
211
239
192
258
137
255
237
224
160
260
220
230
281
140
248
185
202
180
192
204
224
198
183
228
219
127
234
203
199
177
220
189
148
223
166
213
201
244
177
219
239
176
212
194
236
213
196
183
231
168
212
184
205
220
226
180
188
236
243
240
141
244
192
177
212
189
147
180
203
261
206
188
214
260
152
187
189
196
211
228
249
216
216
206
250
209
201
150
194
223
160
172
163
177
168
183
180
181
191
183
212
161
170
182
191
206
188
231
202
216
216
192
196
202
212
259
217
156
195
245
234
178
230
196
208
239
222
172
217
199
208
208
178
237
202
192
203
234
198
262
142
241
155
250
117
234
227
196
158
209
131
187
212
130
194
203
191
220
161
179
172
168
230
263
205
203
224
157
218
241
232
168
197
223
218
291
230
206
240
253
202
278
247
203
226
198
184
168
155
205
270
211
214
216
244
150
230
141
188
248
225
229
167
223
202
192
200
170
200
231
176
209
246
157
184
239
256
140
178
193
221
247
270
194
247
140
232
226
206
218
135
147
255
231
269
196
219
156
168
189
203
182
192
226
130
181
221
226
214
212
223
243
202
246
193
229
204
198
206
236
208
192
270
192
221
184
196
169
242
204
235
228
120
127
238
210
181
197
209
200
258
199
185
163
174
254
186
224
281
183
223
140
236
207
169
232
222
178
173
151
225
212
206
169
176
197
257
262
163
235
212
223
199
235
198
189
251
168
204
202
186
219
220
249
185
250
229
195
222
163
238
265
164
192
213
175
167
193
241
187
190
151
235
169
228
223
204
184
145
177
161
138
172
183
202
223
164
218
227
232
206
194
271
233
148
142
232
215
232
224
178
251
222
225
166
207
229
181
256
141
185
147
215
240
203
215
121
224
206
204
174
238
145
266
211
208
201
189
180
192
243
166
203
205
198
176
200
164
193
229
136
207
183
207
218
231
238
208
224
135
172
194
222
202
206
139
195
218
203
170
252
228
202
221
207
185
212
195
162
241
237
176
190
166
186
178
200
242
269
201
114
183
198
260
220
168
170
218
261
174
167
171
200
177
187
192
195
279
212
180
159
216
216
228
137
203
224
211
255
221
144
229
211
170
225
187
191
155
218
194
211
254
199
201
189
186
226
311
176
225
186
226
194
210
142
157
165
208
254
164
160
147
219
174
191
226
202
208
230
166
164
163
226
182
116
175
228
255
205
244
247
136
221
254
226
163
208
198
220
209
217
226
178
257
224
196
203
220
238
239
200
217
121
281
186
206
196
193
176
223
216
153
169
188
167
194
195
217
230
171
156
182
186
198
252
127
184
155
177
140
253
219
174
205
173
182
214
190
247
216
233
216
178
175
170
188
243
205
219
211
187
206
206
188
208
217
266
111
206
239
237
175
174
173
190
185
194
227
200
212
144
220
161
146
246
146
172
183
170
234
237
217
188
195
243
209
183
163
216
220
157
208
139
196
203
231
233
160
258
235
222
257
185
163
182
210
161
200
212
198
198
260
174
172
198
211
231
157
250
160
200
252
230
180
139
186
189
209
174
195
234
144
154
180
250
216
113
222
171
167
228
170
112
211
243
198
183
216
223
219
169
195
195
139
228
185
223
157
200
169
232
209
214
199
195
279
206
205
185
185
225
195
267
247
214
224
174
152
205
188
165
224
210
194
156
174
196
244
214
206
134
142
138
232
196
169
279
253
215
219
162
201
124
204
203
214
175
221
217
115
157
252
238
164
175
180
211
173
213
186
245
144
206
227
255
178
212
193
146
205
256
201
180
136
204
213
237
142
185
236
182
198
135
229
224
114
252
221
176
220
145
144
221
247
183
201
142
241
215
221
235
243
233
220
163
120
219
198
247
207
197
191
216
171
158
147
175
231
204
153
159
204
226
191
238
192
194
187
182
177
171
220
245
176
213
214
174
130
211
189
228
196
171
191
237
220
174
183
236
154
223
166
207
222
195
204
189
189
155
190
170
258
196
164
158
214
205
147
172
147
245
196
165
179
214
191
207
193
230
173
229
180
127
187
175
195
225
210
163
198
163
238
196
175
200
217
200
263
251
189
227
227
173
249
180
125
253
208
170
141
197
215
185
180
244
178
229
197
226
257
203
218
234
212
207
282
240
207
238
223
220
169
171
182
220
168
219
126
224
136
202
225
186
250
182
218
271
200
162
146
229
246
207
208
179
204
205
175
202
174
205
127
230
268
188
140
219
252
240
205
254
172
218
240
274
191
167
208
228
168
182
221
162
176
234
204
189
201
157
121
269
219
209
252
226
244
151
205
203
218
167
161
219
204
174
149
207
149
204
206
150
187
194
209
154
211
206
221
248
221
194
176
209
186
223
206
175
250
175
184
209
179
266
262
206
196
176
126
168
155
190
206
203
215
224
215
166
216
182
175
233
172
244
215
253
162
194
163
140
188
193
165
184
238
201
143
150
267
190
173
222
211
241
205
130
189
238
251
155
246
204
215
129
168
222
141
219
179
205
210
187
180
198
240
205
149
239
237
231
238
159
163
159
207
154
198
145
184
235
204
233
182
179
245
179
136
211
197
229
188
207
203
228
197
262
155
206
225
228
240
222
184
269
185
199
184
203
225
198
218
231
124
266
190
255
201
230
195
210
190
177
243
151
184
201
244
229
183
231
185
175
142
171
198
178
156
218
220
192
245
156
226
195
194
189
173
201
224
229
252
187
119
228
195
207
210
263
197
157
188
165
193
228
146
191
215
196
181
187
213
197
198
184
181
179
191
213
202
155
195
203
209
180
204
217
229
217
201
199
210
226
189
234
249
206
191
226
244
192
141
243
158
237
173
197
201
221
221
160
207
202
184
207
207
182
157
188
143
258
275
198
190
188
227
160
209
211
230
201
203
202
194
204
188
244
194
202
223
191
175
195
218
195
180
184
181
246
224
203
147
234
212
263
267
224
159
214
146
214
161
181
178
197
221
221
181
202
224
213
208
192
220
205
243
175
224
199
167
246
182
206
151
142
192
168
184
226
220
174
178
158
207
221
209
146
269
250
226
203
176
182
163
227
170
253
221
215
213
222
239
210
226
199
257
214
153
259
109
238
177
252
194
169
154
152
215
233
212
210
241
208
229
158
199
149
157
152
208
184
169
207
181
185
190
162
193
137
202
153
238
181
254
187
206
206
238
185
213
167
144
208
253
181
233
203
187
205
196
199
246
234
207
168
201
237
141
233
176
212
101
186
257
220
228
149
234
168
139
155
261
179
149
194
251
202
221
147
252
217
180
171
223
260
259
184
215
206
228
249
155
193
267
242
174
187
181
208
208
264
230
202
192
159
201
247
198
189
214
170
226
249
273
207
234
219
167
204
215
174
221
240
176
153
222
198
157
152
178
183
225
219
207
185
196
209
172
234
238
185
215
233
230
170
229
195
136
235
149
236
235
198
179
183
200
211
169
207
245
268
207
199
159
249
157
187
226
175
185
145
175
176
151
216
207
142
240
183
173
166
214
171
194
162
110
162
178
122
198
152
148
212
220
235
208
196
195
294
164
223
214
155
239
216
213
214
204
209
132
163
154
239
201
174
200
176
229
205
223
282
243
166
207
241
152
171
227
208
201
204
195
162
218
138
184
216
231
181
208
194
196
219
252
229
258
231
179
194
187
187
153
282
181
234
168
190
189
201
198
226
194
160
208
223
192
160
185
167
202
249
224
222
218
145
166
218
268
123
196
191
237
198
223
177
201
222
155
201
240
266
188
157
174
229
130
180
205
203
197
195
230
170
198
239
244
165
218
233
198
202
179
154
275
189
153
150
275
170
164
214
209
143
162
251
200
215
181
188
202
233
185
124
201
189
260
202
134
185
274
160
217
215
222
208
229
221
245
248
181
233
254
213
213
194
221
179
226
208
151
213
239
162
169
190
257
219
169
108
172
151
201
224
261
235
137
226
281
234
176
220
226
226
156
195
221
204
209
192
210
174
185
212
141
204
223
242
180
204
233
264
230
247
198
235
243
221
207
188
198
279
248
245
126
198
256
227
160
209
269
196
211
268
149
202
245
181
147
179
162
143
212
232
215
215
189
205
183
207
168
196
240
207
184
199
194
200
197
233
202
83
175
173
191
212
225
202
210
142
203
184
175
208
233
211
209
228
230
171
226
192
217
237
201
205
134
245
193
269
221
225
233
186
224
142
207
259
171
212
213
198
233
203
208
137
194
147
167
202
213
198
180
245
174
214
146
201
155
266
209
235
168
169
250
172
219
224
237
264
173
175
202
196
219
197
206
221
201
244
185
224
208
217
185
180
222
148
263
238
216
187
196
195
214
236
229
149
255
274
261
197
216
191
177
198
213
172
186
234
220
123
163
170
179
139
189
157
259
188
226
226
194
175
228
190
230
181
175
131
195
187
221
196
212
185
203
257
226
236
215
161
238
217
175
194
219
270
225
229
220
175
174
170
236
231
202
176
227
259
235
222
232
224
168
238
253
181
184
231
174
279
199
218
180
173
268
176
158
194
177
242
220
138
196
242
186
139
204
178
207
202
190
195
206
218
269
193
161
183
218
272
192
178
158
186
221
160
180
166
227
167
217
183
204
203
236
212
186
253
270
198
260
156
211
169
190
207
220
187
178
194
166
191
166
172
158
157
233
188
191
201
181
177
182
241
209
164
185
235
155
250
228
209
199
161
165
213
188
223
203
227
133
274
196
275
233
178
186
145
224
220
204
272
216
207
177
137
182
188
192
158
203
161
191
193
162
196
186
230
231
183
254
198
213
170
242
218
208
143
212
139
152
130
184
165
190
112
241
213
177
186
198
182
198
222
179
218
192
119
206
147
222
189
180
161
232
236
209
248
181
208
268
193
127
113
183
197
240
177
134
185
140
166
139
194
193
148
187
203
103
264
194
239
111
220
138
301
156
196
172
165
218
220
131
159
163
177
173
208
231
192
170
209
207
199
205
149
197
175
162
224
201
166
212
183
217
155
202
195
217
259
212
263
238
169
241
137
211
225
187
217
122
184
171
227
196
239
127
164
222
157
247
244
197
238
209
193
228
201
181
206
214
146
172
153
205
214
183
159
194
189
235
155
170
214
205
232
180
270
196
221
262
101
202
200
186
141
160
216
242
170
163
207
178
227
169
201
189
214
225
202
238
178
189
180
207
196
209
212
202
148
204
207
157
194
187
192
213
206
166
151
157
227
195
119
210
184
230
159
220
185
233
226
162
181
263
205
291
164
174
196
185
211
157
181
201
189
201
169
236
189
179
187
229
141
172
178
216
164
198
150
214
243
229
221
229
240
193
245
270
162
260
168
277
205
196
195
187
208
238
213
206
249
214
191
221
227
112
213
180
202
148
216
202
234
270
231
227
156
192
196
157
205
198
232
240
155
212
205
213
202
227
184
214
172
156
223
123
196
170
246
212
182
188
186
254
238
231
212
214
241
204
216
194
210
282
182
258
211
168
178
228
217
235
156
222
162
248
178
246
207
171
148
245
239
191
223
263
256
219
168
189
233
246
195
178
249
197
182
122
147
222
217
204
258
149
195
245
199
181
157
200
191
170
195
253
228
198
198
222
175
131
197
188
254
206
171
203
187
171
216
227
204
204
145
123
175
194
195
205
178
159
177
227
202
247
240
183
122
199
174
237
206
148
241
199
229
261
147
155
208
218
191
251
203
230
176
229
169
192
137
145
224
218
229
185
198
171
307
223
177
209
161
199
156
219
244
217
193
212
209
212
219
159
191
205
190
211
175
163
160
255
215
157
190
166
200
186
215
157
214
265
180
134
227
193
126
170
162
172
179
185
189
223
133
230
244
180
188
194
199
164
241
209
218
172
189
238
193
240
212
171
149
126
133
194
168
241
229
153
202
154
212
140
167
195
200
185
207
202
200
164
115
204
235
245
193
205
197
209
161
234
250
169
219
200
241
168
162
209
201
191
255
130
160
248
230
207
235
98
158
192
211
243
250
232
133
183
208
151
158
200
190
212
223
158
229
202
135
236
234
228
250
189
207
201
228
219
192
174
241
168
190
238
132
146
205
236
233
193
155
176
178
245
228
169
164
254
229
194
201
193
219
206
252
237
226
131
235
266
257
229
161
194
271
189
185
208
197
194
159
242
191
181
161
238
168
195
228
192
213
178
198
228
178
227
220
237
241
217
209
146
162
252
200
231
217
228
240
211
235
199
178
177
212
216
199
254
184
208
208
213
222
219
192
204
244
196
157
235
173
196
221
228
240
192
197
210
214
189
191
213
155
178
163
186
228
180
197
185
144
240
186
219
258
217
264
194
175
150
222
193
159
193
150
213
242
252
215
136
175
249
126
205
153
170
187
196
196
145
181
170
189
188
267
159
176
175
219
197
119
197
212
180
262
192
239
229
226
241
180
175
211
234
186
195
189
275
160
160
220
222
243
146
188
226
237
242
226
253
244
161
189
123
193
98
200
209
195
245
174
263
210
178
218
170
147
252
206
184
210
217
206
176
224
166
236
188
187
172
202
187
157
259
164
162
211
117
205
186
228
169
216
173
174
223
154
217
179
215
131
206
197
213
214
217
153
191
203
165
224
178
249
200
213
192
170
192
195
183
195
258
222
166
234
205
173
223
194
226
187
178
221
165
244
152
211
207
255
194
257
228
205
203
219
230
160
206
165
175
223
146
229
184
187
177
189
197
195
185
251
182
139
189
221
176
156
202
180
237
233
200
176
205
225
179
160
170
273
176
183
213
175
175
252
215
215
152
183
218
180
220
173
241
211
161
155
233
213
161
238
215
206
178
226
117
190
217
207
122
191
190
148
143
187
178
196
221
174
175
190
166
245
235
167
280
157
210
200
203
226
108
240
137
247
282
224
155
189
174
172
191
222
224
219
175
221
212
207
208
211
215
237
236
146
190
185
168
238
215
236
190
226
177
195
161
197
253
199
215
212
174
204
215
256
275
185
192
193
154
215
191
231
240
225
180
218
158
198
144
115
157
199
188
228
207
100
284
201
247
239
256
186
223
235
187
261
150
112
185
228
257
211
223
215
195
152
218
209
194
255
202
205
191
208
168
193
230
172
193
204
190
200
201
213
182
170
238
194
163
171
180
256
245
135
233
174
209
222
173
228
200
150
204
190
179
170
261
214
202
140
173
149
166
183
149
101
226
196
135
197
179
237
193
227
295
186
216
206
246
214
250
210
215
178
230
194
173
156
223
218
213
216
257
222
213
196
223
221
173
138
279
165
232
203
160
144
273
181
160
159
206
221
194
149
198
259
208
156
214
207
191
210
140
239
254
197
232
240
147
196
204
226
208
248
213
186
140
161
160
187
211
194
237
258
177
162
219
268
226
168
186
255
220
197
184
218
182
181
230
262
172
248
241
206
176
200
233
154
126
248
165
152
149
198
193
213
247
178
228
188
200
194
189
215
263
138
142
188
225
183
250
208
126
261
227
217
188
207
146
200
266
206
157
180
239
174
179
196
230
237
270
176
208
203
203
216
188
229
193
170
260
186
241
153
254
197
194
286
228
225
191
276
143
160
223
198
237
189
192
223
254
175
243
200
170
217
248
192
192
190
178
188
204
221
137
166
202
255
287
193
112
199
240
231
210
244
251
216
191
207
158
249
251
193
151
216
174
204
212
206
245
194
219
224
214
160
174
225
216
229
189
219
262
206
240
182
222
275
169
186
247
238
257
159
195
228
212
218
231
228
243
189
164
220
173
228
209
286
201
196
206
228
230
196
195
230
193
192
227
263
162
284
191
181
223
185
183
190
217
234
193
162
223
202
154
224
106
177
233
216
168
128
188
178
171
143
187
226
165
179
98
192
186
252
208
164
189
152
124
181
155
192
233
214
125
224
226
216
191
119
194
172
233
193
233
162
133
176
231
199
227
187
242
213
237
226
167
165
180
227
163
263
195
219
238
217
161
164
213
181
206
231
157
200
172
194
243
149
125
188
208
193
236
206
213
141
205
185
201
245
148
184
233
294
204
226
159
211
206
178
220
208
225
197
219
223
147
144
249
174
153
177
135
240
192
250
142
183
215
198
234
162
198
227
195
222
202
233
163
217
209
220
283
189
235
174
223
276
192
142
218
205
202
205
210
220
167
153
197
170
222
213
224
208
214
187
166
209
187
278
220
176
254
184
246
206
165
163
194
216
254
186
221
177
211
257
221
152
209
207
171
189
249
209
225
216
170
197
240
199
194
179
193
217
217
191
164
193
184
189
157
191
191
224
178
191
177
232
191
185
200
225
77
158
244
228
163
174
222
194
211
237
219
220
216
201
176
115
191
259
223
186
229
238
212
200
253
226
193
185
254
239
202
192
172
160
215
190
203
185
270
163
189
212
211
179
212
218
199
248
198
200
200
201
207
181
161
185
237
221
192
202
188
197
176
209
244
179
199
261
224
228
191
180
194
202
158
226
168
240
188
155
248
167
225
201
178
175
147
242
231
218
146
219
159
189
190
156
203
175
159
232
212
265
182
162
227
188
232
172
229
236
240
200
203
215
196
192
193
176
203
194
261
261
194
201
197
218
182
260
155
221
194
188
208
186
191
194
190
176
210
229
168
194
182
201
233
255
202
227
172
223
243
135
205
244
154
185
232
201
221
237
168
240
210
203
177
184
193
183
260
188
216
211
170
171
241
232
221
164
255
220
114
150
246
143
195
229
158
166
150
183
200
176
164
219
202
183
232
218
252
239
171
216
131
221
126
176
226
206
199
148
161
171
171
171
208
225
243
185
177
199
146
146
289
188
145
174
246
137
165
200
201
183
197
173
200
141
249
173
124
162
185
226
198
244
181
177
146
219
243
242
161
195
213
279
191
140
154
224
241
126
211
179
202
198
122
129
199
164
219
163
187
210
210
208
216
241
244
155
156
207
139
129
198
222
250
221
193
237
166
253
219
237
203
170
236
233
259
187
190
208
133
194
196
139
173
205
182
183
218
203
204
239
219
252
209
179
243
182
216
164
166
220
242
223
155
140
160
229
208
206
208
180
219
226
158
184
166
172
271
218
240
175
178
185
229
244
248
202
167
221
202
186
232
183
234
220
230
252
209
147
235
183
216
199
195
215
186
169
238
211
194
137
203
199
229
175
219
196
154
273
175
196
235
202
155
183
187
235
228
137
179
206
195
193
220
216
152
230
145
179
223
250
216
214
167
214
179
234
168
211
165
263
190
216
228
222
210
229
148
203
170
213
212
204
130
164
230
184
225
224
197
248
230
173
230
242
184
173
103
214
235
194
227
228
203
161
215
210
208
208
245
207
219
260
187
197
197
226
232
158
176
220
173
219
216
210
219
201
198
215
243
242
188
210
277
171
129
200
161
185
195
174
252
233
168
222
221
172
195
197
221
255
212
231
212
134
282
186
162
224
196
194
164
231
246
203
208
201
207
188
226
177
146
185
195
230
202
186
205
225
229
208
247
155
265
166
127
236
176
210
200
158
125
169
177
147
257
227
168
219
209
250
231
176
190
180
193
173
150
244
224
216
200
217
172
252
192
190
189
199
170
178
144
148
228
208
217
197
238
148
182
269
159
217
216
206
208
182
196
226
230
246
195
219
211
193
205
203
215
202
191
228
249
236
222
180
190
201
195
234
243
198
236
156
158
177
221
170
236
186
193
230
174
231
189
171
221
135
201
237
225
200
220
220
229
194
233
195
182
207
172
163
223
162
163
195
218
221
141
206
162
186
232
194
130
217
201
158
181
156
212
177
194
203
159
263
135
222
198
221
178
227
187
188
193
224
162
120
221
198
185
146
143
169
194
216
234
244
219
188
220
213
154
179
155
142
281
248
203
207
173
178
167
256
170
226
246
169
191
179
212
164
203
200
235
233
201
216
220
214
201
229
195
219
176
151
186
204
191
202
194
248
260
164
143
204
146
188
183
157
202
252
244
225
252
209
223
134
220
230
226
159
205
198
161
218
247
271
183
180
204
224
187
157
214
260
131
199
184
153
207
235
149
205
197
192
167
240
265
196
192
230
153
175
211
183
183
192
197
197
172
181
193
254
194
223
211
233
250
245
203
185
138
224
181
227
214
218
139
226
207
208
170
162
235
156
207
211
243
152
242
130
221
204
205
207
192
246
172
202
249
179
184
155
154
192
227
194
193
244
241
154
237
197
211
231
184
220
235
240
195
224
226
252
170
208
269
144
220
246
112
211
144
226
221
167
212
149
145
204
130
233
186
220
158
183
178
188
208
171
267
180
137
219
192
137
209
229
181
209
186
201
211
201
203
252
164
212
220
199
187
193
206
145
195
205
168
193
221
217
172
167
193
252
180
261
149
193
188
162
236
189
226
179
251
210
203
204
216
140
112
207
189
174
252
178
178
201
247
199
188
196
175
187
203
224
200
205
218
219
127
232
193
183
174
188
152
220
281
226
178
205
224
227
198
192
200
233
176
185
177
169
221
207
148
147
196
227
222
161
151
228
218
234
171
262
190
196
207
182
185
265
164
160
225
225
190
206
241
174
250
257
202
228
152
205
219
132
223
201
258
193
178
194
200
211
226
150
175
204
139
245
164
197
195
177
160
225
225
225
209
214
184
239
173
166
248
185
222
217
229
236
207
232
166
205
171
207
252
182
238
209
175
195
247
272
184
193
200
232
204
156
181
192
247
164
118
222
213
136
163
172
246
181
126
215
201
149
253
148
167
221
197
158
163
204
259
217
188
251
208
259
188
229
189
194
252
186
210
119
151
216
208
183
238
253
232
257
199
218
204
202
212
241
158
152
158
223
192
241
129
220
171
136
176
193
165
234
195
191
202
209
227
267
223
220
216
208
269
163
196
268
205
218
251
162
204
197
226
163
153
168
231
157
178
275
225
253
197
197
194
172
233
194
186
221
207
253
198
184
203
201
243
248
181
207
159
197
194
151
259
175
179
188
192
218
223
184
184
207
155
214
191
219
201
209
215
191
271
201
192
200
217
187
139
173
157
206
205
167
198
244
168
221
167
191
165
246
230
191
205
227
131
202
171
227
224
194
215
150
227
204
234
158
184
177
236
257
131
139
152
135
224
202
283
156
145
141
203
157
250
130
214
187
145
226
180
220
169
174
206
164
235
156
176
150
278
214
214
253
230
227
171
251
171
214
239
178
195
180
181
215
177
256
205
273
181
156
235
183
186
209
224
200
198
196
204
181
219
234
158
212
211
239
212
190
218
175
193
196
196
224
193
192
213
222
188
184
246
191
204
162
170
250
209
189
236
195
152
172
180
238
133
145
239
206
217
178
197
202
189
139
169
199
239
234
203
154
218
213
188
230
206
146
161
152
190
226
243
187
264
185
231
224
249
231
206
176
255
204
245
244
261
200
229
224
165
209
239
231
234
181
222
275
234
151
187
245
206
238
205
171
222
202
245
152
180
237
222
246
164
184
225
185
253
246
272
161
203
207
222
188
130
204
148
165
230
184
206
161
201
216
196
246
172
119
195
242
269
179
158
222
261
203
177
202
262
217
185
156
145
175
207
158
205
236
153
219
161
213
253
194
122
157
108
165
176
145
177
226
162
183
222
210
231
172
157
229
151
267
231
218
236
229
232
174
196
208
230
177
168
236
189
230
199
192
242
199
203
211
194
216
206
147
193
251
239
150
182
159
193
166
231
189
205
203
197
142
168
203
218
189
222
183
114
174
216
172
272
205
186
235
231
161
196
171
241
196
211
200
162
183
248
99
226
242
174
133
189
199
213
190
209
210
271
224
205
139
217
165
233
166
164
157
189
198
174
247
174
215
152
220
252
180
183
111
212
191
215
240
239
150
197
248
198
213
242
158
156
181
203
205
216
215
256
215
112
208
184
220
176
235
201
153
232
226
211
198
244
174
197
134
210
236
187
296
268
141
117
191
171
190
184
226
187
189
200
190
225
174
253
201
214
180
162
180
164
218
195
213
179
205
195
173
155
249
131
212
254
238
240
127
252
242
198
242
228
151
154
121
141
241
214
152
193
224
169
226
287
171
183
229
215
199
223
210
234
221
212
164
204
218
201
223
178
163
183
156
143
192
212
126
210
167
221
175
143
174
198
216
241
140
153
181
227
182
163
218
224
208
156
252
173
245
211
156
192
225
209
205
181
183
203
178
148
198
171
210
193
207
240
166
229
278
208
233
206
204
243
172
238
200
202
231
185
241
164
187
206
252
186
217
209
191
199
185
160
219
212
240
257
236
128
167
246
206
181
207
224
224
181
155
214
208
149
242
185
167
265
211
211
196
140
234
195
249
152
190
237
240
220
261
173
223
177
167
216
213
215
181
151
164
208
180
198
182
183
224
165
226
186
171
145
208
260
161
241
205
185
201
228
149
154
192
200
233
172
182
221
213
188
192
207
177
172
150
152
184
225
186
246
205
209
239
194
244
186
223
163
211
191
206
209
196
175
154
169
222
166
232
171
246
203
252
186
180
241
187
198
242
231
181
225
230
181
201
203
246
166
221
227
178
162
139
196
190
196
249
206
159
204
201
206
158
206
192
224
189
173
195
191
226
244
158
207
185
250
197
223
183
168
233
238
238
186
231
222
265
171
259
263
224
203
223
173
174
159
193
179
210
161
112
138
147
175
151
142
192
234
130
251
217
163
188
173
189
201
205
252
246
149
276
160
236
180
206
168
192
188
229
230
148
248
228
186
205
153
193
142
185
114
171
158
188
125
203
168
247
220
219
165
182
250
204
131
207
193
202
198
244
173
239
240
193
250
221
134
237
171
182
170
182
188
199
229
213
176
214
208
217
204
204
194
223
194
223
205
170
162
177
205
264
198
189
210
137
154
170
170
237
208
256
188
152
152
254
255
202
221
207
207
134
241
170
123
177
197
159
209
227
189
227
227
210
205
245
215
175
204
201
168
233
183
185
220
224
144
260
166
227
182
182
163
157
172
246
155
177
198
220
188
222
179
187
145
256
188
207
235
207
227
212
214
221
165
137
171
223
267
213
140
224
172
169
171
191
206
216
240
212
244
208
170
202
214
209
234
157
143
243
207
260
246
189
184
218
242
199
200
218
218
172
197
214
146
171
158
152
213
185
181
218
197
149
239
123
230
182
180
137
178
162
242
103
166
241
200
224
193
221
181
231
195
213
118
193
214
166
212
240
247
220
243
197
207
200
190
219
171
253
188
223
142
195
276
155
214
235
231
198
212
218
234
185
148
265
228
207
201
222
171
267
217
166
212
214
250
223
239
171
143
199
178
207
169
147
224
251
182
161
173
125
246
205
230
192
147
222
163
189
215
224
185
129
203
170
173
189
206
140
172
119
184
189
229
272
203
219
186
173
233
208
227
179
229
211
217
243
168
195
210
166
204
193
192
222
232
264
189
148
217
222
179
289
216
235
162
197
187
217
191
144
201
186
118
183
171
185
150
150
215
189
241
212
210
153
218
241
188
156
199
198
238
174
179
157
242
160
190
185
195
222
236
204
185
153
174
263
170
237
200
216
200
169
196
190
218
151
216
178
219
206
196
196
220
194
211
240
153
161
234
238
216
190
212
177
129
172
182
157
210
218
206
201
258
225
143
226
228
179
201
232
213
205
248
172
188
216
185
162
209
195
229
213
243
251
215
229
127
239
206
258
199
240
197
222
201
132
176
178
153
201
168
178
194
265
246
190
217
111
247
195
211
158
145
213
172
162
215
150
229
179
170
178
206
214
165
143
199
126
201
152
160
143
143
211
242
232
194
218
269
254
184
261
255
235
216
231
149
230
226
186
149
246
200
199
222
177
160
218
198
175
233
252
211
120
196
188
223
230
131
125
235
228
220
210
149
177
138
228
178
199
193
186
220
192
259
154
193
158
202
163
187
204
235
203
263
192
230
159
226
287
189
149
227
225
157
219
244
192
200
212
176
235
133
124
149
234
173
219
198
227
230
176
224
239
167
195
184
221
222
206
119
206
187
193
187
176
265
164
180
218
255
141
174
247
251
192
180
226
149
132
244
243
248
234
181
166
146
200
174
227
209
220
201
174
151
177
208
219
198
271
188
160
225
196
202
177
239
253
217
218
231
229
200
149
242
214
195
205
209
218
176
218
187
159
216
190
242
204
210
182
207
192
231
213
167
165
172
212
240
193
221
245
181
206
213
181
211
203
176
214
164
185
219
208
187
194
205
151
188
208
175
176
232
267
154
218
229
210
246
233
157
184
269
133
224
180
180
201
245
183
198
230
200
205
149
268
205
199
152
201
130
177
175
162
162
192
167
255
209
252
211
241
148
221
166
243
195
196
185
248
188
191
215
157
133
180
193
107
207
161
227
177
211
146
232
171
193
145
235
180
206
267
215
178
182
275
205
176
240
164
269
191
190
142
260
192
248
247
164
208
157
163
154
205
194
113
180
222
217
214
152
233
239
207
128
194
238
209
178
222
159
205
178
177
244
265
141
222
254
175
242
231
123
267
201
175
203
143
182
179
137
237
233
211
218
201
179
190
202
209
269
153
252
212
204
206
214
182
157
170
123
166
236
217
233
183
164
127
227
174
237
190
209
205
241
208
213
222
180
183
210
228
237
180
263
186
218
229
240
205
216
236
251
210
254
211
197
197
218
141
175
210
203
217
193
231
167
208
234
205
249
190
226
196
177
221
193
197
230
216
145
199
227
199
215
237
197
195
161
211
161
145
174
128
194
237
157
194
222
182
167
200
213
256
174
234
205
200
186
195
221
233
188
214
139
212
185
147
182
190
244
191
160
217
194
181
174
220
242
146
177
257
185
217
236
195
247
217
213
200
210
218
234
217
218
237
230
135
186
199
204
235
196
204
137
225
147
174
145
216
181
129
255
194
232
211
189
186
199
205
232
131
187
200
212
222
194
143
190
192
183
224
208
188
187
191
208
168
188
188
212
176
175
137
148
235
222
191
201
219
187
187
235
211
165
208
136
222
206
264
236
209
238
221
197
250
150
164
237
183
204
159
177
218
189
179
182
233
123
195
233
183
180
191
161
198
196
210
197
214
198
241
267
209
205
151
199
200
235
173
180
157
244
221
191
185
221
328
197
239
228
131
288
215
192
211
195
204
151
187
216
212
217
154
228
168
188
147
202
189
222
229
178
124
208
193
201
237
204
193
163
221
165
192
214
253
236
221
207
250
211
154
187
217
188
208
148
216
120
245
216
228
215
191
208
167
247
193
202
157
203
256
177
215
223
241
204
244
204
208
202
171
154
178
165
103
188
226
191
236
220
165
236
269
238
189
237
222
182
229
169
231
199
177
195
168
189
208
210
243
227
289
246
160
207
219
219
216
171
192
209
226
175
188
183
295
158
252
251
122
229
199
223
160
204
236
204
192
166
240
155
213
245
200
247
197
228
213
212
168
216
170
180
226
222
210
184
161
144
251
221
144
224
193
253
169
196
158
158
181
237
191
204
187
208
253
188
204
259
185
156
188
226
245
185
230
226
244
211
202
152
231
225
223
191
159
230
208
165
183
192
203
199
167
165
168
224
219
130
226
174
178
193
197
228
159
189
226
260
243
244
183
113
156
286
253
190
228
241
160
204
235
180
209
234
176
148
145
182
169
175
194
151
229
199
211
193
232
257
205
224
180
262
230
215
215
209
158
227
216
216
176
166
224
234
208
211
229
156
186
272
163
227
207
208
228
177
201
254
192
211
164
174
198
156
199
152
199
164
238
174
184
230
221
196
186
221
168
190
174
213
223
163
248
235
206
202
164
252
203
196
179
247
227
199
257
153
200
148
185
154
208
224
257
238
167
205
152
185
189
212
139
219
270
246
184
190
219
225
145
190
222
189
222
214
153
147
244
177
225
229
188
259
209
231
229
125
170
200
249
192
171
199
212
223
175
225
214
208
121
219
103
223
239
157
199
242
179
177
233
210
240
195
193
248
184
176
215
252
235
218
162
204
225
158
195
158
225
202
174
211
214
219
205
239
205
215
202
178
232
212
165
170
172
248
187
182
219
183
218
207
180
265
243
204
229
201
206
236
157
194
271
183
182
163
186
172
157
226
177
243
162
204
245
219
218
183
193
172
190
222
235
185
176
233
232
148
141
138
166
159
225
176
289
181
212
183
198
226
210
240
220
242
252
283
177
256
253
230
148
167
198
217
258
154
190
183
138
208
182
195
236
246
201
232
245
220
213
237
227
220
202
182
207
156
199
200
226
160
167
171
239
192
203
178
226
189
210
226
159
171
219
189
246
152
185
149
206
207
207
224
256
221
172
260
240
206
217
203
234
186
182
174
211
207
167
194
220
192
109
220
221
236
186
230
204
167
193
206
206
197
191
213
163
193
241
222
178
201
260
222
203
264
162
238
220
182
199
236
159
192
185
205
204
223
219
217
240
231
245
215
175
263
263
140
197
165
138
245
224
218
246
193
226
213
228
134
254
189
210
168
212
258
246
179
176
151
236
211
124
151
159
213
160
232
179
216
222
227
197
247
207
180
216
167
150
141
201
165
207
184
224
226
208
192
245
246
222
210
216
113
229
259
202
182
183
137
178
152
230
213
242
162
191
159
199
206
149
188
212
228
206
236
185
187
214
309
192
252
194
245
188
175
206
248
213
189
227
177
196
136
209
206
207
217
185
156
227
135
199
131
175
164
135
176
214
266
205
182
218
215
142
208
182
220
261
201
131
163
134
193
205
194
214
171
221
149
200
181
248
175
216
180
208
224
167
189
234
171
173
269
186
200
238
204
142
201
167
229
228
235
223
186
222
194
180
165
242
170
232
170
188
176
193
189
160
231
181
204
227
167
191
237
217
179
158
257
171
163
177
232
208
217
190
226
185
202
205
202
168
175
237
253
159
217
225
156
176
211
151
194
241
218
167
213
134
191
172
205
234
107
206
179
246
225
184
154
181
169
196
190
153
151
237
166
205
140
285
243
174
192
180
193
231
225
158
168
184
186
227
244
249
227
205
174
255
193
204
213
190
220
168
185
227
237
210
203
152
119
224
200
250
228
171
257
201
185
182
207
224
217
211
230
250
217
194
221
214
179
209
201
222
222
200
174
258
204
233
153
178
242
233
258
185
243
207
232
248
222
216
209
239
203
263
199
173
186
264
233
190
253
205
204
148
143
191
211
220
205
209
190
190
189
215
218
188
199
195
156
278
223
217
196
197
202
172
209
169
246
210
252
164
240
82
236
192
140
228
208
193
241
193
206
225
200
231
201
225
228
183
111
149
176
232
234
192
142
190
152
258
175
131
221
174
226
286
204
267
133
230
160
251
178
224
175
191
208
267
224
196
206
175
223
174
217
232
207
206
186
179
212
232
224
168
166
142
140
239
189
177
159
188
262
214
228
178
158
235
241
215
204
265
196
159
229
146
153
230
156
201
268
129
261
174
244
231
146
222
191
214
184
201
231
220
194
212
244
243
238
200
150
200
132
254
215
186
204
219
181
189
204
228
208
227
226
244
213
176
198
178
236
238
229
143
237
187
185
188
231
199
173
181
205
200
157
210
120
207
239
171
222
247
171
232
176
250
211
132
210
241
200
243
246
172
211
242
122
233
218
244
228
222
205
248
137
145
214
140
160
202
202
171
223
187
184
225
172
229
185
142
207
203
222
244
236
191
216
215
218
171
188
172
267
231
269
168
216
220
262
202
228
196
197
241
163
173
187
226
256
254
193
235
236
169
199
189
206
182
214
216
197
231
244
217
219
145
249
194
198
247
207
219
177
215
178
222
212
198
246
184
157
218
250
221
144
204
135
183
183
226
179
230
247
149
240
253
200
228
225
229
223
169
204
242
175
183
171
175
206
199
161
204
171
196
223
223
142
224
242
222
234
225
204
194
226
254
188
181
248
216
246
240
265
227
216
220
253
203
194
220
221
162
190
192
212
193
227
224
233
196
178
235
167
180
191
231
176
196
232
168
246
256
221
277
214
201
272
184
191
198
226
219
218
198
172
220
239
216
175
218
160
214
187
154
151
189
195
148
178
178
240
130
155
217
179
230
215
240
202
237
234
194
186
239
163
195
215
239
194
181
235
189
216
187
228
246
219
229
223
247
192
233
170
168
243
213
152
197
191
172
236
160
225
229
255
194
152
218
146
234
249
218
258
181
222
184
239
208
242
231
229
196
197
203
220
180
251
230
182
202
164
207
240
201
231
142
225
143
196
237
243
214
135
202
239
170
242
180
213
224
115
188
210
198
247
242
205
173
232
170
216
269
277
163
228
218
153
233
192
153
202
196
189
208
211
166
218
151
229
187
198
211
194
204
185
214
282
217
224
234
218
245
181
193
162
278
227
267
198
188
161
200
125
139
196
188
228
231
197
189
219
197
214
188
205
209
241
154
188
140
154
164
138
251
206
204
203
265
198
236
205
215
260
168
175
193
268
188
227
225
230
276
167
137
271
211
243
200
166
157
170
129
195
232
140
146
250
196
254
199
266
232
167
213
157
254
127
184
125
212
236
168
254
269
193
232
223
229
182
219
236
130
175
163
262
172
198
186
124
200
213
246
152
217
191
168
161
210
213
215
214
242
229
220
189
210
242
189
242
239
230
186
205
285
199
205
178
236
202
225
200
198
134
230
239
215
187
161
252
193
182
247
179
203
147
212
219
204
168
192
198
198
210
194
177
141
195
243
225
219
176
232
255
165
227
170
199
171
198
167
197
236
219
186
197
222
195
178
209
221
242
192
220
163
206
225
211
168
166
205
145
185
217
259
227
200
196
180
230
200
205
228
191
230
204
153
198
227
230
189
213
278
172
233
227
216
199
187
127
185
230
210
235
245
219
193
214
222
168
215
217
216
182
187
188
216
183
232
199
196
224
142
230
208
249
171
177
151
150
227
198
202
220
167
184
175
207
219
178
234
154
196
169
172
189
190
190
178
194
236
229
223
218
208
218
207
161
202
199
196
150
114
202
263
182
224
183
197
194
168
245
272
247
183
162
190
194
245
226
191
252
197
185
211
228
214
229
138
195
258
226
189
202
155
225
124
146
171
230
216
173
223
198
167
172
189
262
197
181
217
202
219
234
153
202
161
167
176
212
192
224
213
235
208
245
198
221
220
255
183
231
179
158
186
183
184
180
154
152
217
202
221
213
204
219
111
223
267
190
204
226
142
226
220
187
231
222
232
167
136
188
227
164
57
175
255
236
210
219
166
195
160
208
215
212
236
188
173
182
236
219
228
161
206
178
218
192
219
182
181
175
262
212
190
144
126
173
178
157
273
186
208
183
212
160
212
192
169
188
183
177
140
170
206
190
193
215
210
166
218
210
204
182
209
232
255
212
208
223
178
242
161
129
230
163
223
198
236
192
196
207
174
195
188
230
194
167
175
207
213
117
235
256
153
198
177
160
140
211
200
272
266
189
123
121
212
204
225
229
215
214
203
199
217
160
225
177
236
207
199
221
231
230
221
155
168
250
188
196
202
162
224
190
205
208
182
188
220
222
150
218
132
209
178
234
224
231
184
166
156
211
216
219
149
248
227
215
173
155
195
141
203
172
140
201
175
175
214
189
223
217
276
178
185
233
182
227
242
159
188
177
204
175
178
182
200
216
229
230
215
166
132
180
202
167
226
183
143
175
169
169
157
167
225
249
182
208
234
168
213
187
111
116
229
167
214
211
147
163
235
147
250
236
132
175
219
166
186
207
240
238
231
167
238
225
139
201
145
144
159
207
190
175
173
279
211
145
179
205
238
177
216
134
164
209
228
206
183
190
214
230
225
217
181
272
194
198
231
139
183
240
118
210
222
242
163
248
173
180
168
184
260
220
230
182
165
202
255
220
152
181
219
128
226
174
215
196
284
197
206
203
166
191
141
210
218
177
186
226
230
139
207
177
214
242
186
163
200
195
168
185
262
189
250
246
231
274
145
211
176
209
150
233
224
183
194
205
184
214
167
160
166
169
195
222
194
177
205
198
198
275
180
229
214
177
202
190
124
184
196
188
207
170
228
206
204
222
205
175
151
237
232
226
114
181
229
168
198
200
261
181
177
216
197
135
156
180
215
221
205
175
227
207
224
177
185
200
241
234
264
170
203
231
198
171
145
211
207
183
173
249
173
165
214
176
179
179
239
183
171
170
170
187
213
201
195
179
152
208
208
146
189
196
181
187
167
169
185
173
164
163
205
230
207
233
171
214
210
210
171
182
198
180
214
202
195
179
241
218
259
199
204
189
220
233
185
145
234
181
208
229
207
258
224
216
214
219
175
203
245
221
223
242
210
204
191
196
157
198
249
191
117
241
181
257
137
167
228
184
124
185
197
175
195
189
135
231
204
140
143
216
196
157
203
173
193
217
150
153
220
146
211
186
164
199
126
273
152
167
191
187
167
224
194
190
189
157
242
254
171
241
234
226
206
179
198
202
242
148
261
187
189
194
141
206
227
183
182
220
206
246
153
188
230
227
226
180
195
171
218
188
167
202
288
253
196
172
197
205
204
214
157
216
168
178
202
254
238
200
220
219
233
150
248
217
213
212
201
205
203
169
224
204
173
188
191
198
164
177
255
158
205
214
209
191
165
140
214
248
205
243
169
196
133
177
217
223
210
207
186
239
221
151
206
171
180
158
207
174
151
226
216
225
169
220
219
196
229
187
177
160
243
185
196
241
135
189
166
139
207
168
256
241
193
195
182
235
242
217
184
188
183
238
239
238
208
202
230
155
236
172
218
175
231
237
216
129
258
212
183
235
102
155
197
183
196
224
177
208
234
174
246
174
228
240
259
191
262
152
235
236
223
154
244
254
157
196
264
190
174
197
185
253
217
256
187
270
191
211
185
241
165
183
182
194
173
182
229
210
244
210
226
182
169
187
231
211
142
114
186
266
184
191
192
149
160
189
256
238
193
198
209
160
207
178
159
153
212
243
216
205
226
205
195
194
164
276
217
179
166
200
177
211
184
166
200
204
200
221
189
229
215
226
179
186
152
173
242
225
124
158
215
171
208
206
178
145
179
246
157
218
179
236
224
202
216
170
179
241
153
229
174
181
190
251
198
222
240
195
228
205
111
218
183
189
147
221
200
132
139
179
260
106
217
181
233
180
222
220
201
123
149
245
192
182
239
161
226
172
224
240
214
173
239
227
185
181
222
171
222
141
167
225
227
232
164
143
225
174
212
156
182
189
186
180
216
225
194
210
254
281
273
217
236
190
167
186
195
197
200
238
178
181
212
181
197
226
168
243
216
238
181
205
214
196
179
179
133
160
197
211
247
167
162
144
166
194
233
175
182
180
215
202
226
218
202
214
203
210
237
225
220
163
229
227
166
255
206
173
179
228
256
207
134
213
235
164
234
251
186
239
194
199
248
163
139
258
221
234
222
174
222
222
213
156
223
203
237
175
231
233
241
254
166
221
227
165
187
203
197
126
159
204
237
203
186
224
228
181
191
201
214
216
246
176
209
207
217
214
239
210
196
148
225
210
205
207
187
169
165
274
197
223
215
199
163
184
184
203
221
210
226
151
137
227
165
167
228
99
178
227
223
204
176
182
142
205
218
189
184
230
220
236
164
196
274
188
223
203
226
132
207
216
190
160
132
250
232
175
165
207
227
202
205
235
230
197
149
195
214
166
182
197
195
154
263
173
146
214
197
169
209
153
183
236
209
209
250
185
142
162
229
170
162
132
229
143
184
185
219
178
196
211
177
197
257
245
243
256
147
202
192
252
210
121
186
194
148
244
248
148
162
202
200
191
196
185
247
217
169
261
207
213
186
173
228
151
219
165
169
215
203
183
207
227
188
201
256
165
153
235
182
186
201
233
199
188
170
158
210
248
199
254
179
222
224
225
236
212
239
223
212
151
206
178
176
199
217
246
193
189
268
196
235
204
193
162
191
177
248
189
153
139
183
121
225
140
225
202
264
182
183
242
215
255
211
218
176
218
217
200
203
216
185
213
206
253
143
265
190
152
155
202
153
240
216
223
199
244
252
210
231
273
249
172
189
225
185
216
229
163
186
165
212
227
226
160
185
154
221
255
181
194
168
209
159
228
157
218
198
126
209
202
185
165
235
225
215
198
167
218
210
183
206
269
148
167
244
279
192
206
166
206
214
163
221
234
162
256
210
188
182
147
196
159
195
171
176
179
227
225
190
216
181
214
195
149
139
230
202
186
260
191
196
142
214
263
267
234
149
209
228
168
218
195
203
197
208
207
230
224
152
199
246
231
179
205
223
194
270
268
210
217
185
206
211
171
186
251
212
151
191
209
168
167
253
149
213
195
192
178
177
226
230
240
174
183
198
223
217
175
256
180
238
274
209
209
156
260
212
158
216
280
216
261
170
194
194
167
281
242
185
173
210
276
219
206
228
229
102
205
250
203
131
207
231
100
169
190
187
222
202
200
169
221
205
215
243
245
234
143
149
165
232
228
180
145
182
252
185
183
239
223
157
163
248
162
143
201
202
183
225
190
224
201
230
200
173
224
226
247
216
205
162
252
203
169
104
233
277
186
214
195
174
151
206
243
163
155
181
168
245
221
219
240
197
177
209
213
214
188
184
251
141
236
204
211
236
222
143
194
160
180
188
200
203
194
198
206
223
263
200
195
209
224
253
239
178
167
187
215
203
250
216
228
138
204
239
95
192
209
186
131
245
230
155
269
183
240
175
157
273
145
235
178
214
217
229
215
253
306
182
199
206
228
189
194
153
201
186
220
161
192
235
178
147
219
201
278
189
225
195
223
172
222
244
236
179
196
237
215
223
158
248
226
182
177
186
172
218
225
204
223
233
222
235
239
180
112
188
141
164
186
189
172
216
153
191
233
159
191
211
201
158
137
153
180
235
234
184
214
232
174
242
161
231
186
188
188
222
212
217
190
206
228
172
212
155
189
266
175
239
198
177
198
183
217
194
250
163
263
216
217
200
278
191
241
131
230
215
191
159
178
241
209
179
233
151
206
183
200
198
200
216
172
172
223
237
237
152
168
158
198
215
143
213
241
181
191
219
205
206
191
140
252
224
151
220
152
157
192
218
229
184
240
251
274
235
211
189
207
181
169
240
160
193
217
230
275
145
197
231
215
146
215
128
261
175
200
209
225
153
197
189
313
171
222
201
204
255
191
215
172
174
175
245
155
263
278
162
183
159
259
202
229
229
198
194
204
207
181
188
254
177
190
158
238
246
189
237
187
246
186
217
230
204
227
255
176
223
151
255
173
219
159
244
226
192
209
174
195
171
157
188
197
188
227
149
224
235
203
177
161
204
206
222
123
160
109
249
133
134
187
200
209
201
212
230
187
203
228
153
166
209
181
175
194
140
194
231
250
194
206
204
220
166
111
231
214
172
211
202
243
183
153
197
189
203
201
210
229
183
170
247
186
178
219
155
212
208
223
248
231
132
192
216
222
207
189
225
199
202
148
230
201
221
206
282
216
178
177
145
238
193
216
204
225
194
250
199
258
136
221
239
251
133
188
287
205
227
186
165
236
230
181
254
219
206
184
138
220
249
259
166
219
256
165
104
232
219
210
215
164
202
221
224
226
196
224
198
200
227
194
223
200
212
158
156
182
219
196
279
186
169
231
264
199
213
206
156
204
195
222
215
187
199
158
243
231
243
247
186
160
241
247
186
213
233
236
230
214
240
222
217
213
258
216
181
213
274
238
174
176
217
210
195
213
246
214
170
209
150
198
206
181
190
145
231
214
218
211
152
233
200
205
152
245
199
148
210
136
217
187
178
219
189
196
228
99
256
145
185
223
214
218
176
234
199
223
223
203
201
244
236
200
227
190
203
156
182
167
226
191
219
181
229
171
223
220
223
144
212
248
162
207
199
217
168
246
179
200
186
157
221
200
234
219
131
222
145
190
175
219
233
242
189
179
174
195
266
266
230
168
137
204
214
195
206
198
284
283
247
189
163
205
248
183
165
219
168
224
140
179
213
197
272
180
101
214
162
193
232
225
155
187
244
159
243
189
190
237
209
261
245
184
190
266
211
207
223
236
224
212
250
192
167
256
235
159
171
169
155
167
108
231
169
163
166
190
222
242
99
235
256
139
207
132
201
219
194
200
205
241
220
230
209
175
168
240
174
176
196
201
152
189
190
231
209
189
198
228
205
179
205
162
162
272
206
226
229
149
122
246
143
210
262
187
197
204
153
183
204
198
182
250
204
212
225
193
197
214
177
197
261
221
208
135
173
220
220
180
121
216
274
180
237
240
219
238
213
175
216
169
194
252
210
231
218
217
228
125
177
181
233
222
217
242
244
195
144
200
173
145
246
199
164
261
242
164
227
262
230
204
185
287
162
204
199
168
164
210
190
209
168
184
169
218
216
165
218
186
170
215
226
212
196
240
178
231
220
179
165
203
180
228
190
148
207
183
153
194
200
193
214
196
172
221
205
180
191
160
190
201
173
219
184
207
216
188
166
173
234
271
173
209
113
149
144
211
140
163
187
257
198
232
191
233
255
203
158
249
228
168
122
197
183
158
261
225
170
205
186
217
171
189
131
206
213
215
239
188
192
249
161
184
213
209
190
198
179
196
263
176
184
205
246
167
233
164
258
132
216
244
176
175
157
139
201
240
207
198
180
189
185
203
138
194
222
191
201
211
174
212
165
150
236
151
260
183
243
189
181
167
221
177
119
184
152
202
171
197
218
160
261
191
196
221
154
204
214
172
229
247
174
233
124
248
219
246
237
226
201
213
198
207
219
190
161
188
163
221
222
214
192
188
236
252
293
202
213
163
190
248
170
189
201
244
206
190
199
141
227
205
193
175
189
165
188
239
212
142
192
221
199
150
160
192
129
257
187
152
179
154
156
253
195
238
213
158
225
174
233
220
216
180
235
199
193
208
200
112
214
217
211
206
185
210
213
157
213
192
200
166
232
167
181
213
247
202
300
237
151
179
191
250
238
264
172
194
209
166
153
232
225
209
229
243
144
218
239
150
222
249
231
204
212
253
230
222
186
231
204
244
176
168
175
258
202
221
242
201
126
201
194
193
190
201
211
264
261
188
232
171
216
165
227
190
207
215
172
175
179
236
191
222
227
249
174
173
185
194
132
229
177
204
214
212
207
145
240
198
209
234
159
198
248
190
240
257
182
191
243
229
183
148
222
144
211
185
190
167
181
264
236
196
182
152
207
210
218
232
107
188
200
151
211
164
223
219
253
159
174
249
226
204
240
214
178
197
200
240
202
160
193
175
174
246
119
173
222
280
202
199
171
202
194
238
188
213
238
241
223
261
170
170
207
179
225
192
169
203
257
243
175
157
205
207
185
203
159
181
211
226
200
219
183
135
203
197
215
219
251
158
186
179
183
208
187
144
175
223
197
214
220
221
230
210
173
200
197
174
142
195
188
289
154
144
179
208
222
191
208
206
167
269
157
224
128
208
176
171
227
166
219
171
178
229
184
222
193
227
202
174
198
199
187
197
261
172
145
212
197
200
128
204
186
148
172
194
225
148
243
186
190
202
141
208
208
253
232
233
182
233
208
196
186
147
241
189
183
172
258
181
222
170
257
239
212
197
203
203
263
202
222
209
228
250
219
194
168
182
203
196
116
184
231
263
256
133
282
217
206
214
245
242
255
233
181
128
217
123
190
177
145
216
169
187
208
225
215
232
182
182
192
170
195
190
211
243
187
156
209
229
180
193
232
172
142
184
154
218
158
180
110
149
129
218
197
190
230
192
215
149
217
202
180
198
158
145
162
165
201
200
121
214
207
161
187
204
167
231
145
178
236
190
166
242
173
215
216
214
226
198
192
246
173
201
193
238
213
166
192
158
222
191
151
264
146
178
206
199
199
209
199
234
191
161
168
264
199
224
116
164
130
201
205
259
148
201
238
234
198
218
175
185
223
203
177
231
148
157
135
165
236
190
214
175
248
215
138
210
192
199
238
133
171
224
140
184
280
222
206
241
173
186
211
153
234
225
216
156
169
267
250
213
227
183
193
242
166
163
198
199
215
231
226
215
218
275
180
212
172
197
189
293
165
228
195
171
189
155
122
148
194
246
174
223
252
224
195
188
219
225
208
238
160
206
256
222
206
211
206
237
242
247
147
165
261
213
158
158
220
270
246
173
204
210
234
189
218
190
226
195
157
201
239
195
194
166
223
239
194
237
193
236
200
176
176
206
240
162
174
167
197
194
177
160
253
203
200
218
200
233
209
158
271
100
217
178
215
146
181
208
246
150
137
224
170
172
170
250
239
202
244
229
249
204
188
214
205
256
281
173
257
174
155
223
186
218
156
247
154
215
214
129
207
168
158
199
176
160
235
186
165
195
188
222
218
174
197
156
227
218
293
235
218
139
254
163
202
263
217
227
194
226
241
208
130
163
204
245
171
174
136
191
233
199
157
211
163
213
199
223
204
200
272
244
291
219
219
190
165
203
212
217
177
207
209
208
217
212
186
216
114
178
150
230
230
251
221
206
231
181
220
221
163
216
175
268
176
185
203
145
196
159
194
167
204
209
210
168
252
259
211
280
224
171
207
144
213
193
217
158
192
231
163
200
251
228
162
217
187
187
160
237
206
185
187
229
232
195
147
188
206
247
209
168
195
133
183
182
236
200
183
181
193
190
232
247
186
242
190
226
149
160
219
193
222
162
210
208
238
256
215
197
176
188
152
204
162
200
194
205
195
216
240
237
162
152
202
175
221
213
205
230
251
206
227
206
176
233
210
211
206
249
214
179
182
209
229
246
202
197
229
224
177
170
178
195
225
164
218
202
184
232
245
210
242
199
200
208
206
202
172
216
208
217
207
257
194
217
202
179
219
187
206
227
182
213
244
100
215
252
217
150
233
177
257
180
191
116
224
211
167
185
217
196
218
205
221
194
231
203
152
186
234
184
253
213
201
302
195
184
183
187
236
198
195
217
179
170
280
232
241
212
259
148
183
218
162
129
224
216
192
218
233
191
193
215
199
226
174
220
176
139
196
255
261
222
252
212
210
230
191
235
174
167
194
167
272
206
191
155
208
195
245
188
213
227
197
145
179
247
225
178
157
236
233
216
235
219
209
231
219
220
196
147
210
191
132
223
146
209
205
174
255
208
200
197
212
200
263
186
170
108
170
189
140
208
165
221
174
215
266
243
184
220
228
160
249
209
213
229
200
201
215
184
211
240
242
195
147
135
217
174
180
208
234
150
116
218
245
248
199
233
210
172
122
160
208
196
187
167
165
223
237
219
201
239
159
171
115
159
232
180
177
245
237
166
136
233
207
186
204
163
200
231
229
188
204
126
214
231
166
215
231
159
214
188
128
193
145
160
212
277
209
177
226
134
229
210
180
207
241
236
174
198
175
182
226
170
209
216
221
193
201
198
188
227
228
160
185
177
149
251
198
236
224
198
215
179
124
255
234
155
211
187
208
225
188
275
253
192
199
178
168
175
147
282
239
199
223
163
208
218
160
223
192
273
155
154
138
177
188
171
206
214
133
227
204
191
187
191
237
218
188
221
173
149
171
255
182
203
192
103
237
182
182
166
165
240
165
195
223
215
240
253
170
222
181
172
150
248
252
215
248
174
185
226
187
270
228
195
191
199
230
230
177
261
186
202
214
189
197
224
167
241
238
224
192
199
261
237
208
224
256
192
176
234
207
221
184
164
208
181
189
248
155
281
221
179
267
216
241
220
171
207
217
144
190
259
200
214
186
177
158
194
225
161
165
200
180
217
187
205
201
250
124
222
184
152
215
204
204
198
154
196
161
232
147
220
215
248
172
146
245
145
208
234
230
217
187
210
203
204
205
221
217
182
111
240
188
175
206
149
191
236
208
139
224
255
236
246
184
240
213
171
234
165
200
218
175
239
217
192
221
227
158
176
227
221
210
209
218
224
229
205
182
195
239
176
232
255
178
201
164
191
174
237
150
180
158
226
162
160
203
275
185
229
198
193
173
231
151
228
172
238
223
166
160
204
192
206
249
253
173
232
245
235
142
143
160
207
199
200
236
256
229
150
186
180
210
187
245
196
208
207
232
197
238
233
189
250
215
245
84
241
190
202
219
174
246
167
204
187
198
191
164
239
143
212
184
222
199
171
166
210
186
212
218
203
210
125
222
229
166
164
209
158
200
198
154
214
194
190
201
243
185
232
240
256
159
217
208
185
199
227
184
215
218
266
189
195
246
241
200
173
161
140
199
167
232
226
235
195
202
201
189
264
179
174
190
161
231
241
234
195
236
168
145
180
147
190
181
148
190
199
195
189
188
255
231
226
205
217
209
105
231
174
231
187
202
248
175
258
212
190
219
210
164
210
227
205
201
186
218
159
168
180
148
213
120
211
144
269
187
143
214
211
208
233
155
221
185
183
154
182
232
166
204
108
242
238
179
182
204
179
205
248
207
179
186
130
192
187
190
193
243
226
161
145
170
241
210
189
203
220
201
240
249
256
198
199
271
129
194
249
263
205
193
205
240
183
167
195
214
229
210
196
223
258
212
205
261
194
166
204
272
217
163
213
207
250
211
240
211
242
187
209
278
247
234
194
215
172
141
141
218
237
118
194
203
146
222
222
215
196
199
231
162
194
179
191
258
120
196
215
270
181
198
171
186
156
174
210
179
222
162
218
259
182
178
181
234
167
240
240
200
174
160
155
114
197
158
204
241
164
219
122
189
238
255
248
171
219
200
222
259
249
186
187
249
202
210
212
192
194
190
229
214
161
200
188
176
211
205
164
181
205
181
162
193
175
223
200
228
228
230
174
212
247
160
125
224
211
206
188
179
203
190
161
207
213
188
188
277
219
176
201
197
225
227
190
250
159
216
185
245
129
141
239
199
216
256
206
185
208
258
240
222
183
233
167
229
229
215
270
156
234
234
110
114
207
218
196
184
234
217
257
245
187
187
174
145
171
195
213
203
246
176
166
166
177
222
206
185
298
222
269
148
164
175
211
246
232
212
207
228
154
216
271
169
202
183
187
183
230
232
236
275
241
209
261
183
181
198
140
236
195
206
179
188
185
239
189
149
229
152
229
156
182
195
169
182
273
196
223
267
107
186
200
242
195
180
248
206
217
233
208
181
265
204
237
209
164
221
181
236
242
208
280
183
225
157
173
159
250
145
137
278
227
184
254
146
239
215
180
217
207
170
219
230
187
257
225
164
209
226
156
176
223
177
222
193
210
147
192
149
172
250
218
194
209
203
219
192
178
208
194
235
207
269
240
172
211
155
208
157
169
245
179
184
234
176
143
202
187
178
200
200
193
201
131
194
267
184
166
194
212
183
188
191
214
245
256
259
195
205
194
187
206
228
158
182
216
182
118
146
171
218
196
207
185
164
182
165
160
200
208
230
200
205
217
254
122
222
166
226
191
262
257
147
165
202
163
252
219
258
200
213
203
195
208
189
216
165
207
206
238
200
199
239
252
249
135
194
161
203
207
198
156
247
214
191
238
224
175
229
211
199
180
159
203
225
204
169
182
157
155
198
218
222
233
252
218
202
263
214
205
169
213
133
191
202
182
174
154
191
151
206
225
175
198
168
242
207
223
211
197
186
259
165
183
223
110
149
254
213
242
180
256
191
112
280
196
212
229
207
211
181
167
188
152
138
230
199
209
205
236
189
243
200
213
179
187
244
198
234
190
179
198
266
203
233
217
261
192
239
239
202
165
181
225
183
182
259
261
205
222
192
201
224
233
258
182
255
188
194
205
156
186
219
160
170
165
230
207
212
256
223
206
221
128
216
235
151
185
191
133
211
200
197
166
248
188
166
143
217
134
233
226
227
147
208
197
200
238
193
160
239
204
222
199
192
205
207
232
220
179
221
230
205
187
193
189
163
225
145
207
145
227
156
216
203
188
208
206
202
203
177
210
255
191
241
246
197
193
252
164
148
199
250
155
152
193
210
187
237
212
242
198
243
238
211
190
137
206
174
114
215
164
240
233
157
218
248
220
193
155
172
221
153
231
202
199
199
232
219
196
239
220
189
200
184
210
249
168
152
228
195
203
227
147
203
200
214
183
219
183
181
256
207
182
189
296
246
221
232
175
213
238
145
205
197
177
153
160
198
196
168
273
264
232
184
198
230
170
244
210
202
149
272
179
205
192
148
224
197
232
261
207
181
170
124
192
208
187
209
225
214
228
213
176
157
243
194
176
153
198
203
168
241
194
196
216
194
152
207
195
183
191
205
191
235
236
190
161
186
158
225
130
186
133
210
168
232
196
227
167
182
227
256
238
199
244
181
164
261
245
224
232
198
173
179
198
220
178
184
240
148
158
186
212
207
193
184
187
186
181
166
182
178
239
191
239
189
225
245
292
207
163
198
105
221
183
176
203
181
155
195
281
199
206
218
166
202
230
84
187
164
227
181
247
134
214
208
227
184
186
183
226
136
208
112
207
227
207
215
200
191
207
206
198
208
187
192
109
252
252
148
215
194
146
184
224
190
140
201
226
254
139
139
243
253
215
194
233
204
237
133
183
132
160
225
187
225
233
166
218
184
167
187
168
235
187
182
197
197
204
224
255
232
195
196
142
218
181
222
237
179
271
180
219
206
168
187
182
194
161
233
198
175
214
266
253
159
182
243
215
210
175
207
201
194
201
270
242
227
220
212
201
119
237
157
204
176
244
223
178
259
213
146
223
177
197
221
134
234
202
210
222
246
174
171
185
174
225
216
258
196
188
231
248
187
211
199
227
195
183
205
176
189
127
149
172
164
200
209
186
217
226
190
214
240
226
130
225
197
182
160
213
163
206
141
212
196
96
224
223
193
148
181
207
214
220
196
219
193
228
211
211
259
166
213
257
194
226
226
146
158
207
181
192
109
225
152
189
167
170
228
263
164
248
199
196
173
175
207
217
212
227
182
122
200
160
215
224
165
200
180
142
187
185
200
212
165
168
207
209
197
155
156
227
217
229
276
118
184
178
169
278
217
201
214
198
160
211
145
225
190
196
260
179
279
204
210
156
216
173
175
213
179
184
179
160
224
204
237
222
228
146
224
241
140
170
218
177
201
138
242
236
247
230
172
232
287
198
209
182
200
210
230
179
214
205
182
204
248
195
192
201
157
205
215
206
268
213
151
195
263
161
180
257
206
211
182
164
210
202
220
239
247
188
160
197
193
147
177
241
207
186
194
215
178
178
219
300
173
174
202
172
230
192
209
179
155
156
212
236
187
195
190
200
213
173
234
160
248
210
217
222
176
226
258
220
225
242
214
211
258
236
190
207
225
186
179
197
191
190
163
193
152
182
235
170
209
257
213
166
228
201
213
177
188
240
224
207
257
220
197
257
237
184
145
224
181
185
201
208
207
220
204
233
184
167
187
216
242
200
178
227
211
161
244
171
125
242
236
205
159
207
209
245
197
125
193
198
174
205
239
239
223
167
235
219
230
184
219
176
166
142
147
259
180
235
234
135
230
198
197
252
211
228
170
169
229
175
205
197
159
213
199
203
112
219
199
204
225
204
189
146
240
144
217
231
229
148
181
225
186
182
195
186
164
168
272
154
226
222
213
144
244
191
165
184
142
156
171
210
223
246
212
153
214
154
196
225
158
247
230
203
193
165
197
179
179
204
210
205
246
148
185
155
223
206
213
196
188
179
179
223
222
206
199
153
214
155
211
163
204
199
191
198
188
195
205
215
165
270
197
247
199
237
214
186
182
249
145
230
185
199
212
187
284
194
181
145
241
266
249
159
206
200
192
173
257
217
179
233
140
196
253
109
172
225
223
237
170
207
230
198
183
222
201
180
229
160
244
229
186
199
195
198
181
230
210
246
202
189
266
229
175
244
197
218
264
204
162
231
233
208
202
155
232
174
241
203
234
199
224
273
144
261
235
124
186
220
203
167
242
160
224
251
196
214
199
214
186
219
256
241
192
183
180
236
198
200
201
220
214
199
220
149
252
233
187
200
186
195
194
171
188
178
178
269
183
228
149
200
172
206
142
182
215
139
241
186
200
184
224
179
247
200
215
165
191
175
202
199
230
240
230
198
146
205
146
172
155
172
194
187
212
163
164
200
186
181
192
246
179
229
207
270
199
179
216
240
236
179
206
233
207
172
183
202
173
168
202
166
146
232
218
161
156
203
163
125
199
210
228
220
212
172
209
152
205
217
224
205
266
181
190
182
204
240
157
185
215
173
226
264
183
185
199
198
171
190
186
258
197
226
229
138
203
168
156
245
187
222
267
201
204
187
127
248
155
215
174
164
196
183
208
211
181
236
209
250
216
219
190
116
193
165
215
185
235
192
188
215
174
202
184
226
173
233
143
183
223
260
152
235
207
230
203
130
202
272
147
133
211
173
181
178
182
203
233
133
189
227
264
235
235
165
149
195
157
194
212
215
181
170
163
174
212
190
192
205
203
213
177
167
205
206
231
221
189
208
238
224
177
181
179
255
220
183
192
236
163
177
179
191
146
242
200
157
253
220
223
170
268
197
248
195
154
152
228
179
212
228
190
182
212
182
208
192
142
218
198
160
232
181
224
212
248
170
230
175
236
220
213
203
171
182
212
188
190
189
253
156
208
161
196
249
208
181
155
225
171
285
244
272
171
249
256
214
242
210
176
202
194
169
207
138
183
185
238
268
182
129
201
179
208
150
187
234
198
167
190
175
197
186
244
194
233
222
165
169
200
229
228
196
190
241
193
234
168
204
237
186
166
187
167
222
178
221
209
258
178
229
228
158
203
203
173
250
206
190
238
281
268
216
150
182
228
231
187
230
261
238
148
190
211
204
195
163
251
203
179
232
232
151
220
179
193
216
181
228
200
188
180
169
194
183
259
175
183
209
174
202
159
275
195
241
164
202
236
236
218
153
208
228
242
260
232
219
195
157
232
147
251
158
226
222
175
249
218
189
183
217
252
216
149
181
241
191
205
199
171
269
223
256
165
202
208
149
153
218
223
204
224
161
182
187
165
225
203
219
178
143
206
258
197
157
215
200
233
241
212
153
210
217
141
167
192
250
235
211
261
237
249
237
201
201
178
154
188
224
230
221
199
156
139
171
212
172
247
142
270
224
216
241
210
225
237
156
201
257
168
161
173
223
202
168
175
203
230
241
185
235
173
229
202
228
228
241
166
190
191
196
167
210
263
165
249
205
179
221
162
198
200
265
212
219
208
216
215
190
145
121
219
131
153
232
171
124
152
177
252
190
193
224
213
102
228
231
182
190
158
142
208
196
178
197
224
202
144
232
240
238
269
167
227
225
237
163
224
192
224
293
120
150
198
194
265
148
192
216
259
238
218
156
195
197
141
226
220
180
219
208
183
218
237
180
230
197
145
283
203
182
174
204
144
189
152
200
259
215
119
205
145
201
207
165
209
149
231
190
124
178
207
177
226
249
176
217
206
200
169
153
193
230
270
170
214
193
224
241
171
178
220
241
146
150
223
190
226
186
223
135
211
203
244
208
234
195
204
193
199
194
214
198
246
196
167
212
190
121
240
181
234
231
128
238
159
193
235
148
156
213
243
259
256
147
179
187
166
194
232
235
239
224
131
174
210
262
190
164
195
223
196
199
228
200
229
134
161
185
207
233
173
192
223
176
160
202
211
236
215
206
154
181
239
207
205
130
229
214
200
176
236
137
175
248
154
171
186
193
145
162
163
259
199
222
175
217
179
225
202
183
292
193
197
223
177
209
179
207
232
200
257
141
129
179
108
216
196
171
183
169
179
250
225
138
203
189
200
220
155
178
174
208
215
224
203
266
136
157
198
226
179
182
244
210
128
206
207
175
195
217
223
154
199
184
207
92
210
202
119
177
197
202
211
214
137
156
202
203
268
229
163
212
212
196
227
204
164
239
122
113
159
178
226
222
210
230
238
235
269
241
167
287
139
150
283
235
194
113
182
141
240
213
169
193
240
168
205
197
203
225
114
180
208
218
229
153
183
200
203
141
208
220
196
226
197
257
238
217
171
193
181
219
185
159
164
192
224
119
205
207
206
218
188
201
168
224
151
132
196
210
236
163
175
175
226
310
173
196
219
122
206
227
193
259
195
173
181
223
173
189
184
211
164
195
187
271
177
155
186
202
96
218
235
204
193
158
207
190
183
206
199
140
282
178
212
156
222
194
259
257
160
193
185
227
174
255
217
173
232
202
215
201
201
192
177
190
243
157
188
235
177
160
189
211
236
157
256
216
176
132
168
197
192
196
213
202
254
226
199
210
186
225
218
195
126
198
235
165
165
198
210
123
219
301
165
223
156
254
217
169
208
153
186
128
204
176
182
139
201
187
147
200
203
234
220
227
173
178
183
201
174
129
241
255
197
180
139
207
223
185
161
228
192
165
216
203
152
211
240
181
172
190
180
141
219
155
212
182
155
156
209
193
191
253
157
181
167
162
198
174
231
205
210
207
169
217
243
235
188
178
194
190
189
211
185
174
180
225
141
166
197
272
205
270
218
279
157
225
212
215
232
157
174
198
238
198
239
241
205
135
183
194
239
168
171
217
168
222
179
171
199
174
173
141
164
152
210
112
216
219
179
172
195
214
156
212
168
184
183
189
187
231
154
196
163
200
152
189
157
150
269
163
161
195
222
200
199
139
244
171
207
121
235
202
180
189
192
194
207
209
226
190
148
154
168
192
177
212
216
158
173
220
226
195
200
204
157
177
153
172
230
207
240
163
245
254
273
170
230
176
210
274
193
214
162
215
244
187
199
214
166
179
237
167
181
220
193
227
191
168
171
199
144
151
155
152
212
192
221
250
208
184
172
204
204
225
189
180
241
217
236
226
173
181
210
183
193
197
203
208
197
171
138
147
219
201
185
173
250
188
203
224
189
149
190
208
173
130
166
218
193
279
137
166
138
128
222
177
155
201
223
197
182
226
167
178
177
255
163
154
216
235
249
225
159
219
161
234
155
162
225
107
199
195
229
203
205
225
287
197
185
229
207
187
193
220
161
234
216
203
115
206
202
232
219
166
209
267
255
202
211
261
226
234
156
184
167
208
150
198
225
227
186
189
188
175
220
148
188
228
189
255
175
170
205
197
210
206
189
173
249
188
196
264
220
223
208
230
247
217
202
166
192
205
180
218
206
205
140
115
151
214
233
156
188
243
266
212
217
208
196
202
169
154
156
167
163
188
208
131
202
197
161
177
231
204
149
168
194
209
180
186
178
159
189
196
196
185
201
203
212
225
212
251
195
236
219
182
192
206
159
243
208
161
188
207
185
141
226
202
216
221
185
133
268
250
174
153
169
194
159
181
230
223
177
246
206
183
176
184
200
197
142
207
200
194
236
180
184
176
150
150
191
185
208
193
185
144
138
144
189
208
208
205
218
225
181
194
267
223
152
221
192
195
188
217
147
192
192
164
145
214
211
222
258
200
226
214
133
200
203
174
226
209
253
196
224
175
251
220
178
276
180
158
194
221
209
252
202
208
181
208
215
172
148
143
171
201
167
284
238
204
187
193
199
186
206
196
224
140
219
203
186
130
233
238
166
213
215
229
226
194
163
190
259
201
198
201
181
193
191
267
238
185
164
181
274
132
184
190
248
221
244
219
210
213
215
186
244
164
236
191
183
215
226
198
302
283
183
239
173
250
165
212
145
217
215
216
252
211
187
178
232
177
195
238
170
219
224
273
195
194
198
195
144
204
178
189
173
188
128
193
217
213
224
197
186
246
151
251
242
215
268
220
168
200
254
186
218
181
195
164
227
194
160
204
204
220
150
199
224
201
176
180
201
228
215
174
169
168
218
185
203
151
200
184
173
217
115
184
172
218
194
172
198
209
209
205
176
218
249
138
186
178
263
227
194
223
202
181
246
224
209
190
173
216
197
202
277
254
223
203
175
186
169
149
172
215
196
199
204
216
236
189
234
236
152
164
253
185
235
197
175
155
240
191
214
180
246
165
242
160
241
212
232
157
191
118
174
176
187
203
152
234
195
194
189
186
211
219
202
191
274
205
205
192
147
159
180
203
226
208
174
177
149
190
221
215
181
178
228
220
267
171
213
240
223
148
133
219
219
169
190
231
258
184
168
237
226
216
245
267
252
130
147
216
193
165
229
216
218
176
239
246
215
246
223
205
162
137
185
245
192
232
249
146
184
241
188
249
158
174
234
176
179
156
206
188
167
240
253
186
203
175
149
168
188
209
180
192
176
214
156
163
151
183
184
206
209
178
174
209
200
180
200
208
220
184
216
252
196
246
238
180
289
222
212
181
196
167
184
216
212
183
199
208
213
228
165
228
185
205
166
241
233
176
190
221
247
205
197
210
187
253
145
151
240
207
224
220
160
120
234
135
204
182
189
234
252
166
157
203
260
147
227
177
169
163
171
168
228
248
153
138
201
196
259
185
224
160
204
175
198
202
160
234
209
201
165
209
191
145
198
238
178
238
238
202
199
155
191
192
174
221
177
183
221
197
173
179
201
211
244
202
237
157
191
211
183
220
205
199
159
219
207
205
184
223
171
210
192
249
185
207
230
201
203
253
178
213
177
196
242
200
231
141
235
167
212
190
184
268
222
203
195
214
173
226
155
169
197
225
212
214
203
229
178
213
176
213
231
181
179
239
193
200
191
172
207
168
171
223
206
199
149
245
181
232
224
277
208
165
145
193
204
219
148
229
218
177
246
188
150
210
207
181
194
212
173
151
207
194
185
209
240
212
154
212
205
226
238
216
186
151
206
155
201
152
213
109
167
184
228
203
205
241
205
168
226
208
242
237
218
153
198
217
211
209
230
263
185
178
184
185
210
182
246
192
244
183
199
180
218
173
188
166
183
153
257
180
227
242
214
215
246
247
202
175
182
218
174
195
86
230
221
290
234
250
149
176
144
217
177
187
174
194
261
277
205
207
211
211
199
180
261
230
188
219
141
264
146
188
222
224
184
212
182
169
187
201
238
110
159
217
202
190
248
180
170
227
222
156
203
236
204
234
194
228
141
171
158
220
143
230
128
208
168
211
200
260
155
240
184
196
203
210
176
211
144
164
185
200
220
114
212
189
263
194
192
251
149
200
229
192
181
210
197
204
240
208
214
188
228
222
225
210
183
128
223
223
228
175
214
217
222
247
177
246
159
114
218
215
149
256
195
231
238
177
205
198
204
225
197
184
208
237
207
216
192
225
198
199
139
180
214
217
185
169
221
192
206
217
195
152
231
243
193
221
147
165
165
197
185
252
225
201
240
195
234
203
221
222
226
191
201
204
272
147
228
187
219
194
108
228
209
215
236
112
170
273
172
163
234
205
229
173
265
214
128
108
166
237
203
229
190
238
175
131
196
229
224
255
130
184
156
218
145
166
157
204
216
205
196
224
259
208
258
184
255
249
230
191
200
205
161
221
217
195
232
192
200
239
169
210
185
222
261
240
139
192
230
267
180
242
208
208
188
221
196
192
220
237
180
189
200
195
265
198
198
217
169
164
226
202
260
218
238
163
83
262
228
143
233
193
248
132
188
193
149
146
205
222
222
188
194
181
218
198
188
199
150
193
186
145
204
256
218
183
133
144
133
204
124
197
160
223
178
226
212
230
196
229
202
239
103
193
135
260
213
223
170
234
167
185
188
149
207
195
153
147
211
175
207
184
198
193
209
158
182
135
231
173
228
170
190
205
216
202
162
242
210
182
187
143
155
144
219
214
204
160
221
125
141
156
255
226
260
166
148
178
144
234
167
156
169
141
218
242
190
237
192
185
220
201
253
223
176
178
200
147
152
247
208
218
165
236
163
215
207
154
169
217
108
234
194
190
193
174
259
176
258
213
172
189
149
269
128
186
217
202
179
238
130
228
179
207
183
197
192
189
192
251
246
141
246
245
182
201
179
193
184
178
248
250
131
195
246
149
216
180
165
148
137
199
139
179
251
198
215
268
222
222
206
241
166
158
207
160
205
207
241
148
205
207
138
276
181
200
194
183
182
220
166
248
197
223
253
259
229
234
217
168
218
198
182
274
235
197
196
239
177
169
138
179
154
183
152
253
236
184
181
118
205
230
282
193
200
231
260
180
172
233
213
226
210
198
213
121
193
139
218
177
181
199
155
185
187
231
220
111
243
229
177
229
159
183
197
211
195
162
240
192
190
181
218
224
262
229
132
208
220
129
202
225
180
183
132
128
200
165
157
211
190
221
195
214
197
215
218
227
185
206
236
225
207
120
257
185
183
179
186
208
187
157
177
169
147
164
171
193
193
204
255
261
267
261
194
264
228
171
188
200
154
172
283
152
252
217
170
258
270
197
224
155
177
183
191
213
252
255
277
218
166
222
169
171
191
231
105
156
194
162
176
163
177
169
236
198
212
228
166
210
170
206
242
131
224
228
157
266
250
175
214
170
193
211
238
230
167
229
203
238
217
233
182
112
160
191
197
219
272
225
229
174
188
190
188
223
142
180
231
208
143
211
237
263
212
222
135
175
128
183
203
206
220
190
229
222
208
180
154
192
226
158
197
202
240
200
188
222
215
206
186
189
238
207
196
234
173
208
194
216
182
138
214
255
200
207
230
123
199
140
180
228
184
197
98
222
230
140
180
180
234
182
224
233
200
201
195
280
218
229
245
209
204
243
171
236
162
181
234
233
162
243
225
216
218
193
212
191
248
184
207
160
224
263
169
160
183
260
194
220
277
142
187
193
186
238
238
205
246
197
173
243
283
241
119
226
242
216
268
165
252
242
230
191
146
207
260
239
219
190
170
211
170
162
187
205
206
174
291
213
240
176
224
192
207
190
209
171
159
232
161
167
196
191
164
212
200
200
209
196
188
199
252
153
235
226
267
216
176
213
164
192
242
236
171
250
177
193
248
195
157
169
215
219
206
198
175
138
203
199
218
153
282
215
210
164
224
204
162
238
272
185
244
207
192
164
128
216
241
176
206
217
240
201
197
202
196
229
238
169
197
190
147
195
220
205
223
173
222
202
188
166
208
146
218
196
157
185
171
232
221
208
208
228
205
217
187
256
204
134
159
235
241
165
273
233
210
205
192
232
184
195
248
199
221
185
211
259
200
227
211
239
177
183
263
238
188
188
228
233
219
152
244
173
214
267
158
212
194
180
186
220
179
169
218
206
216
241
221
203
147
233
233
200
159
210
219
176
161
237
196
228
159
182
201
181
206
248
182
229
173
169
237
189
212
215
217
161
223
167
230
151
211
163
244
148
173
199
176
147
214
232
198
209
232
186
225
155
193
199
169
233
161
201
164
188
220
287
157
158
144
239
198
140
193
202
187
192
218
227
213
226
162
233
163
215
120
190
190
244
195
281
205
268
201
173
240
222
202
246
137
247
201
244
104
226
178
204
216
171
240
243
189
202
183
161
217
173
252
187
228
184
163
240
239
230
281
211
226
211
178
208
227
177
201
223
137
164
172
221
168
247
209
205
237
233
155
255
185
188
219
170
176
221
185
188
173
199
128
186
256
232
244
220
239
189
275
189
171
189
197
210
205
180
178
139
238
221
188
216
244
219
162
181
219
191
124
242
207
158
228
217
203
198
233
203
204
169
213
159
228
205
226
247
126
239
132
147
182
202
173
300
223
210
227
187
188
188
189
246
196
196
240
233
154
199
157
206
229
209
180
207
180
191
97
162
170
183
211
208
177
129
214
170
242
225
197
206
186
173
182
155
178
194
187
229
223
263
179
240
213
174
220
208
243
211
245
191
207
203
198
202
240
212
172
198
209
135
177
228
172
228
198
210
184
234
179
202
129
212
244
185
165
180
217
110
266
169
231
251
238
213
273
190
227
176
133
193
186
291
174
227
261
208
237
254
227
185
229
173
227
206
232
248
282
227
215
160
125
207
222
222
238
216
182
211
154
261
213
210
190
179
214
151
193
173
207
210
203
234
244
218
187
195
209
201
164
174
190
227
203
229
182
197
228
214
173
159
204
200
204
154
189
235
209
172
252
216
216
230
180
239
239
243
215
206
257
160
187
234
230
188
275
214
150
241
200
229
248
200
205
183
246
227
196
178
253
272
234
183
197
172
199
148
136
165
203
129
196
243
243
175
168
223
220
136
225
239
122
174
185
201
219
201
192
190
165
179
266
221
239
235
157
214
140
160
156
194
132
206
251
231
267
157
187
152
173
187
267
150
169
230
201
227
232
180
204
156
189
196
258
250
110
213
220
175
140
231
220
258
184
200
188
173
174
217
210
154
232
164
228
187
185
181
133
181
204
200
206
196
208
224
219
163
178
181
207
176
230
269
200
209
216
147
201
140
188
161
183
176
182
235
227
199
240
193
214
201
192
180
168
239
129
164
200
242
134
244
139
237
214
197
191
191
231
159
181
203
140
224
223
190
254
186
194
226
250
135
240
193
190
160
162
234
163
190
208
128
184
223
219
242
185
192
209
191
207
222
182
239
260
158
193
224
280
201
190
241
228
230
185
292
207
205
214
231
194
163
156
201
220
221
207
159
184
182
195
162
179
156
159
226
215
226
146
155
215
211
145
182
209
166
157
209
213
240
174
194
136
143
200
222
184
239
193
229
219
193
222
234
222
257
186
262
186
165
165
192
241
189
141
237
175
222
178
181
229
189
193
215
210
190
228
176
199
237
221
238
237
249
265
166
197
144
207
255
139
197
225
116
157
187
198
180
182
237
147
262
200
220
209
193
210
134
191
242
217
247
202
207
226
231
205
178
156
195
202
125
284
221
203
213
140
181
202
216
155
152
195
197
262
178
206
236
223
193
229
191
233
228
282
149
197
229
221
228
211
243
221
209
192
214
223
152
194
164
220
224
165
253
202
259
212
210
285
215
264
233
173
211
227
137
119
206
221
215
188
208
233
144
239
203
137
211
191
214
200
226
209
215
213
152
210
122
216
147
246
190
262
175
247
192
287
170
220
196
203
206
232
206
158
207
195
202
216
164
168
177
156
223
146
239
134
194
195
151
162
186
245
243
192
262
232
167
220
219
199
162
218
236
212
226
182
199
225
205
204
128
181
175
259
213
205
223
210
151
203
205
154
197
207
176
169
230
214
133
223
243
190
254
244
202
212
250
219
188
177
177
207
287
138
263
172
199
229
263
181
215
97
209
253
228
142
168
212
234
175
211
242
188
170
226
234
247
191
240
236
198
180
209
169
222
198
251
263
184
211
192
222
251
226
232
156
163
245
207
200
251
150
163
175
199
152
155
145
111
255
147
191
210
134
191
168
181
203
221
192
208
194
205
162
239
219
188
188
181
196
171
236
218
186
184
213
199
214
209
186
243
206
222
240
129
208
235
235
184
216
171
232
266
153
226
219
206
224
155
206
191
237
220
233
220
252
159
180
240
229
193
201
226
203
202
220
250
170
241
189
229
195
175
231
187
256
211
183
186
143
233
248
171
237
219
207
193
204
239
204
187
211
160
192
155
201
250
190
188
187
250
142
194
223
192
188
187
242
193
242
197
135
194
231
245
187
120
185
215
190
189
199
195
226
180
209
217
153
179
245
147
204
203
164
175
270
199
204
146
197
167
204
279
177
201
198
175
235
221
209
218
197
219
164
161
188
251
219
210
259
216
126
141
187
192
162
265
219
177
209
247
202
238
204
205
161
208
206
179
164
228
215
235
174
158
180
186
198
195
240
237
194
228
204
209
186
165
203
195
221
142
184
231
154
292
210
146
154
231
169
212
170
230
148
224
226
227
233
164
237
243
281
205
164
235
151
216
142
267
190
217
225
177
250
192
254
222
162
128
124
141
203
263
145
200
247
225
170
218
162
230
181
234
208
217
216
233
155
189
202
227
222
199
171
201
174
200
190
195
214
136
176
168
189
193
162
210
196
245
157
209
178
260
160
215
183
195
202
269
196
265
157
226
146
181
168
210
216
137
190
164
241
243
227
175
181
218
213
178
227
229
134
237
255
209
216
203
174
171
177
210
197
206
262
212
135
203
246
188
179
211
213
186
196
194
193
245
221
174
234
148
243
218
227
142
164
196
196
245
235
151
198
207
259
226
183
244
195
275
163
205
177
221
125
209
130
176
215
213
127
200
201
154
195
182
172
177
213
242
189
220
193
224
219
261
214
198
153
190
188
211
202
254
189
209
196
243
240
134
208
189
221
259
184
146
230
194
222
257
230
164
161
161
180
206
190
207
123
197
177
226
195
180
201
231
270
240
240
192
207
174
220
231
185
191
205
210
182
190
237
255
170
160
240
242
136
229
221
221
181
170
141
258
224
155
209
261
205
201
173
268
184
193
160
193
182
224
212
216
164
137
189
179
260
227
211
195
244
177
204
218
203
177
192
203
246
200
171
147
226
197
204
228
214
223
197
191
196
172
230
154
190
170
243
221
244
240
190
147
190
239
171
151
215
157
165
204
185
143
248
194
239
200
175
235
228
163
154
130
208
221
271
239
216
186
249
173
235
204
175
201
187
248
206
185
228
134
216
115
191
228
255
224
155
209
225
197
201
161
174
178
177
225
149
149
233
196
219
172
212
206
152
262
173
204
186
251
206
242
226
218
133
232
173
197
187
216
250
128
196
233
219
170
227
218
222
208
189
217
134
209
224
208
171
181
210
190
242
131
147
169
213
179
164
228
196
153
184
244
209
234
214
254
209
223
200
136
194
161
168
216
189
240
163
256
177
210
153
222
243
175
196
183
247
146
191
254
221
207
154
223
200
242
216
202
189
180
174
236
214
237
223
165
230
170
194
212
199
218
171
167
272
204
122
195
250
178
179
163
155
218
224
262
225
180
154
167
193
204
160
186
270
191
260
224
208
242
232
206
151
123
171
197
204
223
204
216
265
179
200
224
243
229
162
154
144
231
228
180
158
163
217
161
149
233
231
210
217
202
174
178
139
183
200
210
230
214
208
189
192
202
271
227
217
234
162
134
227
215
209
199
205
231
211
228
228
148
213
207
171
232
196
221
173
212
241
224
185
162
167
185
113
221
212
200
201
223
228
219
119
162
184
209
180
184
189
158
219
208
209
213
217
214
246
239
207
188
237
200
332
204
143
172
230
146
154
184
163
179
231
217
225
197
204
144
242
215
164
194
147
230
151
213
288
216
196
214
170
164
241
210
250
167
218
206
244
227
204
211
166
181
215
190
290
119
211
156
225
166
191
204
180
155
236
181
261
167
182
191
183
191
184
233
284
185
153
265
190
196
211
206
184
111
171
204
170
214
235
193
179
228
214
188
234
191
189
248
214
217
211
180
214
210
127
236
181
241
158
195
218
211
167
193
196
240
163
222
211
226
167
189
193
241
152
224
182
234
200
263
269
201
221
189
203
229
231
245
201
142
168
195
258
156
267
159
144
224
162
195
270
154
222
160
181
247
194
200
251
193
180
216
147
206
186
192
274
186
172
219
167
194
223
217
197
246
253
236
238
155
175
150
189
216
227
235
233
220
163
233
201
166
238
193
227
158
216
208
166
201
160
245
207
224
137
196
233
225
181
212
133
234
141
168
190
167
239
191
227
247
217
220
225
135
167
186
241
234
189
188
248
198
189
260
203
217
210
220
177
140
181
250
259
186
237
195
171
227
267
221
225
145
192
184
202
214
212
222
173
176
180
233
270
254
267
187
253
179
205
170
161
184
184
202
178
189
186
212
186
206
209
194
227
264
149
222
153
206
195
238
143
251
201
215
207
238
181
185
144
247
237
234
274
223
215
135
167
234
200
259
241
231
176
211
208
192
249
277
139
257
189
166
162
222
217
245
213
182
193
233
123
234
210
165
240
215
151
164
157
213
224
139
223
198
258
115
197
218
222
225
227
230
189
242
166
227
173
192
238
215
222
201
210
189
127
197
200
204
185
200
160
242
180
212
208
232
153
199
151
215
216
231
195
163
223
233
207
229
259
143
196
247
187
196
203
167
222
249
173
179
217
165
155
231
199
214
251
249
211
223
203
209
260
188
222
188
203
254
164
184
179
201
213
222
165
222
277
248
184
201
215
162
250
188
192
229
194
215
239
212
130
185
193
207
153
170
153
224
200
196
185
237
208
172
184
187
204
172
204
229
230
218
152
187
230
221
259
229
169
209
234
183
214
221
221
200
211
188
193
253
213
207
220
263
252
208
176
228
194
184
109
205
269
228
105
275
212
224
172
222
207
215
226
244
202
217
168
221
206
261
155
156
283
204
238
167
235
243
258
233
208
191
219
190
250
253
195
202
171
83
236
171
230
145
177
178
234
191
234
173
168
137
249
211
176
231
185
199
199
221
227
165
150
174
195
259
242
183
275
112
161
184
196
192
224
195
224
179
251
182
204
209
227
190
256
212
190
208
199
255
216
219
175
177
216
262
216
243
216
221
183
194
230
182
231
178
217
197
201
228
263
149
199
198
234
173
153
223
230
196
244
204
171
238
216
212
185
239
266
180
192
242
148
190
171
225
244
193
182
160
185
204
217
228
236
188
210
196
199
207
252
163
179
190
173
152
195
154
239
278
216
188
229
258
221
183
187
237
257
226
231
189
161
195
219
194
245
204
190
148
173
160
194
204
231
180
235
241
200
236
203
225
175
211
224
98
165
186
228
160
228
203
132
227
271
222
187
203
180
203
197
227
209
226
174
248
194
178
219
199
189
231
233
130
221
260
156
233
170
208
183
240
218
167
160
259
240
176
135
260
213
191
220
226
178
277
146
216
156
194
153
212
177
160
227
203
184
150
276
248
169
160
208
209
206
175
157
269
147
148
216
211
207
198
201
217
163
120
208
199
247
192
185
189
156
175
177
175
253
186
217
205
242
190
159
220
168
192
179
241
187
216
273
171
195
195
244
167
179
196
209
217
227
169
142
238
200
217
177
249
165
231
185
174
201
230
157
203
170
167
224
253
189
194
237
212
264
225
231
166
141
234
164
180
178
198
221
227
220
115
288
161
183
220
249
214
206
214
257
206
234
229
164
174
203
191
213
182
173
206
247
213
163
204
153
231
166
150
169
167
189
176
190
167
191
256
222
174
118
178
207
202
244
246
190
194
231
173
157
250
200
312
231
171
173
201
133
213
171
202
193
241
223
196
220
249
188
236
209
248
214
189
173
196
252
176
179
202
223
197
180
134
196
176
258
237
119
159
189
200
206
214
232
178
214
231
184
153
156
276
211
109
185
96
142
200
193
169
156
193
238
199
247
165
242
241
205
193
203
186
205
126
195
161
200
179
217
238
204
236
220
230
253
260
210
178
270
185
176
222
231
210
188
219
237
247
237
227
205
211
215
154
227
147
183
177
216
235
283
210
263
168
201
191
181
166
223
206
169
181
209
199
266
224
217
246
238
275
222
230
158
171
201
223
198
250
157
152
156
156
229
261
240
179
198
178
203
270
191
179
218
189
186
242
268
178
199
163
182
216
235
216
195
182
219
231
176
199
250
256
237
155
237
195
229
207
215
186
221
197
210
192
216
126
253
186
233
238
209
175
245
217
185
228
212
168
250
239
178
193
180
210
223
157
154
165
166
197
125
164
197
206
183
277
176
225
224
241
220
195
220
152
222
235
183
256
199
241
159
149
208
211
169
228
190
181
175
198
202
209
251
199
78
233
176
174
208
204
168
155
234
175
201
174
222
231
148
203
148
207
214
149
195
185
192
127
167
205
235
158
200
200
219
193
240
251
227
171
188
197
176
215
228
290
220
170
130
215
198
222
237
175
220
171
188
121
227
161
221
132
208
227
250
185
182
168
239
194
214
185
213
196
180
133
151
208
228
175
218
166
165
190
244
183
252
171
207
217
260
242
172
196
264
249
242
170
175
235
218
184
161
155
143
250
191
244
207
252
171
151
252
135
210
245
159
216
211
205
223
168
185
157
161
156
214
191
189
245
211
172
159
171
233
252
207
165
170
129
259
192
215
182
225
229
172
212
240
227
174
181
221
154
212
167
175
174
217
157
176
219
221
251
201
130
151
154
210
217
212
189
294
144
167
225
225
204
210
193
198
244
246
218
217
235
249
250
235
216
208
193
162
240
188
168
186
188
183
152
144
223
224
231
184
248
202
207
203
161
183
254
196
193
140
189
211
218
220
186
192
218
142
223
195
242
241
220
209
230
211
177
214
163
213
203
224
185
231
156
180
205
182
182
231
115
178
168
187
177
264
221
141
230
168
201
113
173
129
217
226
208
208
261
188
175
237
226
208
245
180
219
268
257
237
229
229
199
259
201
239
187
232
251
193
219
223
204
151
243
188
231
162
250
234
226
191
204
259
194
238
169
190
246
241
99
203
177
191
198
193
215
189
209
220
148
156
243
204
176
222
196
172
147
214
165
218
182
258
221
196
211
171
169
261
248
201
212
181
218
154
224
281
143
166
173
193
163
215
197
240
294
128
191
240
208
165
198
133
241
236
236
191
244
196
293
194
255
171
158
213
194
184
169
78
174
255
237
214
172
242
180
170
239
175
185
152
190
189
223
229
201
209
177
214
214
157
223
219
219
200
244
172
194
214
223
191
241
221
191
253
173
174
169
191
239
177
169
226
189
201
192
253
197
205
199
188
214
194
243
216
236
166
203
141
254
201
204
204
191
218
255
226
180
247
250
191
219
181
184
189
173
133
229
161
202
248
191
210
133
182
181
192
163
219
194
206
203
252
253
200
119
160
257
198
186
232
168
193
211
211
162
174
158
219
216
212
224
202
240
187
200
202
170
193
231
247
212
145
221
179
237
229
226
290
216
163
243
165
211
190
211
184
197
244
207
185
119
198
198
184
213
196
256
133
216
164
157
185
198
197
217
200
201
161
181
260
216
187
217
211
133
107
196
235
236
162
169
230
203
186
190
156
193
194
209
218
180
193
161
195
235
249
175
202
180
161
221
169
189
147
164
179
210
205
239
202
186
205
200
215
201
201
185
183
240
225
181
205
126
185
180
205
119
210
245
213
229
184
206
118
222
248
180
244
182
192
234
134
253
212
188
274
173
222
139
192
285
240
203
246
185
196
147
213
219
194
235
206
205
153
212
98
192
171
196
241
221
245
208
163
180
150
228
135
224
213
214
187
154
191
217
178
178
192
231
192
281
207
221
201
197
161
217
230
199
265
187
188
155
164
149
200
212
190
254
233
195
212
177
225
139
149
202
223
162
206
214
184
237
238
205
159
166
189
162
198
247
206
166
175
262
144
192
211
220
189
156
164
174
234
167
149
144
101
260
221
160
178
146
130
221
226
158
273
185
180
184
195
233
200
185
222
198
212
183
227
265
191
200
193
151
164
174
227
157
145
265
176
209
153
207
178
189
216
203
197
223
169
198
191
199
235
178
174
171
135
235
211
244
177
200
212
133
147
183
157
237
257
160
211
148
201
186
200
247
147
173
253
172
212
259
164
143
249
226
158
240
199
152
114
161
253
246
201
251
179
198
237
190
142
158
215
245
174
200
171
148
136
176
163
259
141
176
172
236
168
225
213
171
234
183
98
248
276
253
191
215
179
193
179
221
206
234
174
188
201
160
156
201
247
166
190
211
177
185
200
182
171
225
227
252
215
204
170
194
177
210
238
178
191
213
208
239
159
178
227
199
210
218
157
208
190
197
239
207
233
188
220
174
212
203
224
255
194
263
178
219
201
179
217
158
190
227
288
137
152
154
272
195
185
172
251
205
217
163
187
183
210
188
202
193
216
143
258
195
208
223
204
136
225
213
223
156
278
173
198
175
244
205
149
237
203
207
201
246
184
221
229
200
248
192
186
205
181
167
125
216
204
202
197
247
165
209
199
219
194
143
226
220
183
231
267
234
157
209
182
167
196
107
240
244
166
203
213
174
203
196
186
202
218
197
209
204
243
129
159
246
233
184
153
208
234
198
246
211
191
145
192
204
226
267
182
178
218
200
243
220
202
198
220
219
198
217
168
70
158
181
212
194
179
201
207
227
202
163
225
224
199
154
239
230
250
230
185
277
264
190
196
178
174
197
232
205
181
206
171
207
228
185
241
223
195
168
190
211
241
171
231
171
179
149
166
172
282
209
152
281
148
232
251
245
229
189
233
281
195
221
151
160
166
238
176
215
174
232
237
164
197
186
176
225
178
198
169
220
232
205
228
184
222
238
249
158
156
218
187
181
222
143
236
237
122
224
204
215
228
227
223
208
237
212
230
231
177
208
161
189
185
246
225
220
197
132
218
201
217
211
226
146
189
222
177
253
179
187
223
153
187
199
239
153
244
213
161
186
204
163
197
231
213
227
173
212
244
198
213
168
202
181
254
162
236
223
211
226
200
211
158
188
189
170
220
190
230
190
177
244
186
166
207
194
152
157
162
183
258
188
182
200
222
212
167
205
196
140
190
229
151
254
180
198
200
218
214
225
174
185
190
233
183
238
213
138
162
229
136
156
208
225
192
220
184
178
129
165
210
227
199
244
226
206
223
164
253
208
233
201
155
179
210
181
177
168
200
200
229
239
249
196
187
229
184
174
169
193
228
150
196
175
264
245
213
162
187
226
196
277
246
161
172
210
171
169
235
144
224
268
149
188
231
196
204
195
138
244
184
225
222
239
226
188
256
201
216
175
138
184
161
245
240
214
197
212
246
174
158
212
160
243
143
232
186
118
224
227
218
193
217
132
209
239
184
184
236
196
211
248
186
214
153
257
227
209
207
175
203
266
211
225
265
130
181
219
206
164
250
239
215
233
149
237
206
226
206
175
214
178
160
219
209
206
131
199
190
207
259
167
177
220
219
169
164
202
200
221
165
214
169
189
248
181
171
141
138
233
151
201
186
229
232
198
184
185
148
182
157
161
135
273
192
195
267
216
194
178
217
116
204
243
236
211
221
213
283
251
194
189
216
218
199
220
192
124
194
205
154
204
200
222
134
191
186
201
191
209
199
250
222
168
233
186
246
215
151
234
202
237
174
154
211
182
244
251
151
235
163
201
219
180
175
235
258
169
147
238
192
169
185
206
196
227
221
154
201
210
166
190
209
143
210
202
117
187
193
135
152
177
223
209
200
243
269
254
276
224
154
236
164
217
160
177
201
266
168
217
221
193
173
176
278
170
239
221
210
115
130
184
185
193
169
192
175
161
157
161
188
187
233
167
239
186
162
213
161
206
205
216
241
255
156
198
186
183
172
212
210
210
146
205
233
220
160
170
150
234
225
257
181
216
241
238
195
180
233
262
199
182
215
195
139
199
178
207
189
169
176
159
196
151
237
199
193
176
238
175
181
226
199
139
195
171
224
138
255
154
220
207
164
223
212
209
194
207
186
195
149
176
179
143
234
237
201
139
257
218
188
222
242
206
151
210
200
157
147
225
192
259
197
143
262
189
205
128
179
198
152
156
178
171
151
163
233
157
206
213
213
144
127
208
207
212
187
217
188
192
206
249
187
189
114
206
198
175
163
190
174
182
144
197
168
228
229
176
228
219
224
236
217
254
252
241
168
201
171
174
212
226
164
219
213
223
214
198
228
162
166
192
179
163
240
210
168
131
174
198
182
157
205
209
228
180
228
200
197
206
181
172
174
230
231
216
193
162
244
220
214
219
208
206
177
147
232
248
248
243
197
225
181
201
215
263
214
217
188
224
217
130
237
201
163
172
233
243
237
187
147
204
210
190
236
167
235
173
230
170
224
198
241
237
207
250
250
199
241
219
164
169
198
176
168
219
193
243
169
232
211
204
205
183
179
88
193
212
253
139
219
205
234
227
245
221
214
246
231
193
122
236
256
165
195
120
224
179
204
199
231
155
208
194
94
156
211
255
255
209
185
224
196
204
232
183
242
245
214
193
252
261
197
210
231
227
172
199
230
270
222
205
169
251
154
238
206
141
251
227
240
244
228
172
186
204
179
219
207
229
188
193
176
208
201
210
259
181
193
129
162
224
152
187
157
181
228
207
229
194
213
183
199
164
197
226
184
169
182
141
262
143
187
194
243
221
143
157
187
245
228
204
188
245
196
200
237
209
214
169
189
155
221
186
167
186
209
189
261
196
224
229
239
230
235
198
203
242
218
179
158
202
221
231
200
199
210
194
248
213
193
199
229
207
203
191
218
219
234
193
214
228
244
226
185
250
197
222
250
190
212
241
185
188
215
140
202
216
189
207
186
231
91
164
220
155
176
168
234
169
142
164
138
175
228
172
191
165
194
214
176
197
141
257
157
140
169
231
241
189
234
211
182
229
218
176
173
191
191
185
205
261
136
192
161
211
172
202
146
191
205
189
212
182
223
151
188
154
245
237
252
181
167
196
149
210
182
148
219
242
195
223
205
193
126
213
223
177
137
214
236
188
194
172
213
117
185
242
238
209
179
201
201
237
220
216
192
175
168
181
227
171
221
211
231
177
215
233
254
232
205
245
116
192
201
130
211
115
257
199
138
232
222
141
188
166
170
256
172
257
196
179
239
196
145
254
151
212
103
215
164
152
251
169
151
179
147
208
196
215
238
197
230
254
196
152
222
167
172
207
159
261
162
260
166
217
167
223
224
215
186
244
290
191
208
244
179
213
180
123
198
216
221
202
210
188
158
181
231
223
174
205
193
208
241
201
182
201
161
205
200
186
172
175
225
196
184
167
236
252
173
129
169
233
218
232
156
196
194
232
190
210
216
191
228
179
202
159
208
216
200
245
221
228
220
217
214
202
185
213
172
205
214
229
192
247
167
155
199
273
194
232
223
171
228
205
161
220
191
157
210
194
253
210
196
223
181
192
240
141
188
206
207
264
219
223
211
185
195
201
153
236
210
181
199
220
179
230
210
235
226
229
203
202
221
235
216
167
251
188
178
166
208
192
175
148
213
228
226
219
212
207
158
128
210
174
259
183
179
196
195
199
202
232
166
231
209
233
188
190
201
231
150
184
192
134
187
182
215
210
171
140
213
161
197
181
199
222
222
189
172
180
253
198
210
163
214
235
179
200
248
310
257
235
103
184
216
214
236
197
170
191
238
184
162
237
196
243
192
187
220
246
176
196
267
208
248
192
199
216
206
124
224
175
244
245
203
247
153
192
164
270
222
160
208
228
167
226
294
166
211
245
214
193
216
244
173
128
118
152
166
145
258
176
201
186
173
171
207
234
250
140
222
150
250
198
193
166
196
238
173
195
209
181
169
244
218
256
182
143
224
176
188
178
135
155
206
182
171
176
173
201
182
136
140
155
230
193
176
182
183
192
236
190
170
148
207
141
175
189
200
196
177
181
165
171
147
161
179
135
222
213
214
199
164
194
191
190
232
163
207
162
158
269
224
205
246
203
174
229
269
184
212
196
198
195
151
240
178
153
206
192
181
233
238
218
258
193
174
211
246
131
155
213
215
195
152
196
157
207
206
205
200
182
221
199
192
202
267
182
256
215
186
198
197
186
264
228
162
240
224
262
108
202
184
194
175
222
257
188
142
218
223
245
216
194
169
188
123
242
197
182
200
160
249
206
209
240
184
196
232
223
230
174
232
204
230
220
171
190
180
204
213
241
172
244
179
134
152
220
206
110
217
195
195
227
172
171
244
203
206
221
229
169
198
178
211
177
210
226
224
207
197
221
165
200
199
190
169
159
253
197
241
203
220
172
221
173
208
188
220
178
204
167
220
196
237
195
214
172
225
209
234
185
176
284
260
209
219
233
148
159
162
230
202
240
232
200
175
222
242
184
190
237
158
151
223
249
259
261
213
220
216
130
207
228
190
217
221
148
202
191
201
164
168
225
180
213
189
136
249
204
175
134
198
233
202
274
253
248
218
242
179
210
189
265
150
237
261
216
177
239
233
237
187
273
201
219
211
209
214
178
251
184
169
235
255
216
193
232
196
226
221
232
198
154
219
238
186
227
210
202
190
200
155
195
205
215
150
207
212
215
162
124
256
175
232
223
219
197
257
202
273
234
193
215
229
217
182
213
215
203
105
242
180
168
211
233
183
237
204
257
208
158
189
232
234
186
237
184
195
232
218
189
201
234
184
232
237
200
224
168
272
182
207
238
229
210
154
161
224
164
209
125
165
208
213
137
184
268
207
199
233
213
147
215
229
223
211
238
211
149
181
216
146
155
226
180
217
231
159
214
154
274
202
211
187
211
178
205
159
195
222
203
203
220
144
210
239
265
140
187
165
191
152
226
158
185
192
175
170
215
195
212
231
224
195
184
157
226
221
247
220
189
268
180
194
241
236
223
172
175
172
243
152
151
205
195
219
183
220
214
238
229
251
205
245
206
201
150
144
212
160
232
188
218
206
249
180
226
214
224
179
190
225
219
175
194
195
228
245
247
179
130
216
216
221
187
205
232
239
207
139
198
225
187
193
164
176
165
191
189
214
144
230
164
186
195
155
235
172
164
138
165
234
257
186
187
205
194
152
205
210
208
249
257
176
168
155
231
229
203
223
183
163
202
209
174
223
226
212
188
191
161
167
219
186
144
276
148
159
157
146
219
250
224
236
225
173
157
172
240
182
239
187
221
249
237
191
253
177
238
146
214
209
176
216
175
200
245
187
217
261
229
208
202
152
238
213
225
102
256
151
218
172
221
213
244
215
169
174
239
136
250
167
233
216
260
217
159
163
230
213
174
207
238
188
160
178
218
184
206
168
201
160
206
243
214
217
234
216
219
241
226
208
244
166
257
188
177
190
188
223
225
239
145
200
198
219
127
170
219
192
228
201
123
195
132
174
227
148
237
214
187
234
188
190
182
148
158
213
256
234
222
154
219
239
224
175
192
174
187
191
179
208
139
188
206
232
215
245
240
202
240
231
162
182
238
109
206
229
230
150
193
243
212
214
162
159
299
174
174
234
213
212
182
185
209
226
212
167
233
241
224
262
193
238
201
229
233
168
242
188
238
193
252
243
257
232
154
189
103
188
213
170
244
227
218
182
217
215
246
174
208
227
178
245
219
165
234
171
225
195
153
219
222
178
199
257
165
133
172
176
192
221
209
193
213
156
205
197
278
215
250
190
183
188
229
244
210
180
192
170
211
242
231
245
236
245
158
204
180
259
186
189
236
157
185
159
122
148
226
235
215
203
218
237
208
193
237
240
122
223
191
252
182
175
266
225
213
184
218
143
196
250
216
269
265
234
219
170
233
183
214
207
197
230
228
192
227
173
212
235
196
217
172
141
216
175
180
248
187
213
227
159
248
231
152
197
199
182
157
211
174
158
214
238
222
215
179
179
164
182
205
186
203
192
196
216
268
172
220
215
251
188
146
170
172
196
207
136
176
261
211
256
154
198
172
173
129
184
213
218
245
192
196
145
208
172
147
200
200
159
119
213
217
215
185
183
227
178
181
200
225
217
180
146
212
197
191
243
178
240
208
250
234
225
198
214
217
178
216
162
245
210
151
164
230
212
189
234
202
169
157
195
180
248
231
208
148
216
172
183
169
146
182
222
222
179
182
224
231
225
254
185
173
212
195
174
186
266
266
165
205
131
198
212
240
214
187
220
153
225
211
155
235
164
252
153
226
178
153
201
188
250
184
208
172
212
191
176
206
196
150
159
221
160
207
211
219
240
182
228
221
192
212
151
148
158
254
220
227
236
246
221
256
199
262
199
196
154
194
150
182
203
156
172
267
104
153
220
183
214
226
232
141
210
232
212
253
165
175
154
157
204
225
146
223
208
159
224
254
168
203
174
219
243
187
222
172
147
198
231
179
220
210
203
177
201
245
230
115
195
172
152
222
176
204
178
196
206
166
229
204
175
171
272
314
199
278
213
173
214
200
189
183
298
189
160
189
218
228
215
203
204
214
236
222
223
231
246
189
222
230
217
198
200
205
274
163
214
179
177
186
238
160
126
226
240
210
185
254
178
207
274
262
187
210
183
243
163
188
179
207
179
179
249
211
241
251
153
186
208
229
171
152
223
216
148
228
210
163
184
183
218
223
204
157
203
223
222
198
197
132
194
187
180
175
189
179
188
196
166
195
226
220
187
281
153
172
189
210
180
186
257
200
193
199
236
204
213
225
163
180
171
201
210
181
199
203
181
153
193
180
223
217
205
245
224
186
259
216
175
150
179
203
210
213
183
160
254
176
147
229
247
154
184
185
127
145
193
165
182
265
226
197
194
204
221
179
194
188
162
204
186
165
175
223
252
207
277
235
226
202
149
198
198
211
185
143
208
227
197
222
181
253
171
184
216
165
275
207
235
183
250
173
174
152
252
202
203
218
236
239
167
243
225
219
197
246
215
113
168
233
224
214
230
224
210
180
195
141
219
160
213
198
165
137
255
243
216
169
273
203
233
166
155
244
230
209
188
195
175
181
233
216
189
183
233
176
228
172
208
280
160
194
184
235
202
249
190
169
162
213
119
162
212
178
214
221
205
200
229
229
179
244
214
189
201
186
209
238
218
236
201
199
175
199
239
201
220
156
160
136
231
198
212
201
190
216
159
185
207
225
194
242
214
230
253
253
247
192
227
194
169
186
218
191
179
209
152
202
149
175
168
183
196
160
206
165
263
237
182
167
179
219
243
170
202
237
200
167
81
158
208
183
254
213
249
171
176
202
176
157
231
158
177
186
129
258
182
190
208
235
236
200
166
257
199
177
171
164
142
227
174
203
208
195
159
222
185
173
163
207
221
232
210
218
194
200
207
248
212
207
234
287
166
226
199
218
238
216
158
184
137
238
152
158
182
216
173
189
193
226
177
198
238
202
275
111
195
196
188
145
250
232
212
207
169
208
177
177
224
222
210
129
221
211
172
175
135
272
250
181
227
145
183
219
184
277
170
215
194
239
239
233
125
253
168
197
208
221
162
197
148
223
202
222
143
188
172
242
209
222
145
164
268
212
202
218
221
255
196
203
224
182
263
190
211
256
172
201
192
176
203
215
189
221
172
210
211
205
258
231
190
259
227
208
165
167
245
204
139
174
209
215
183
207
166
172
194
210
241
180
257
163
186
230
186
148
218
208
171
182
193
196
158
225
142
198
211
160
155
180
199
172
188
197
183
223
236
216
109
150
166
221
180
206
180
213
206
234
148
259
201
222
216
225
231
124
230
181
174
239
179
214
198
167
157
259
163
198
224
264
207
195
201
174
167
252
163
220
234
246
217
242
188
144
189
246
222
165
232
235
246
175
202
256
208
220
222
268
206
194
232
207
189
223
182
251
220
265
142
217
245
210
219
193
201
182
158
170
198
228
209
137
215
176
231
166
173
216
218
195
193
216
165
198
172
209
203
200
172
177
240
205
218
169
187
191
189
201
175
236
217
221
206
188
138
172
214
220
162
259
189
249
251
180
158
194
161
212
200
190
233
175
135
214
232
199
143
274
255
187
257
239
178
236
192
177
215
251
165
153
177
178
182
218
182
142
202
202
189
202
197
182
221
206
260
206
212
210
236
197
194
181
187
171
212
229
151
152
219
170
243
173
195
200
193
201
214
224
164
210
233
216
206
164
252
236
159
205
221
229
238
179
256
175
148
80
174
229
269
258
258
182
183
213
267
161
180
202
145
172
255
245
130
237
161
173
257
158
144
172
212
213
181
220
188
239
153
189
189
194
190
172
151
119
214
209
210
206
227
170
216
196
167
158
208
191
193
161
226
219
169
220
221
108
160
167
204
229
239
218
177
196
203
180
263
163
180
182
178
251
237
158
227
168
228
241
152
185
158
192
238
182
216
170
166
190
245
199
204
241
146
228
221
167
215
189
239
204
169
185
164
141
210
208
229
224
162
236
187
251
290
177
228
223
185
213
215
184
219
165
222
199
186
186
243
178
179
198
175
156
212
234
210
268
199
210
196
230
101
73
191
168
190
180
257
138
214
181
219
176
246
185
208
197
201
119
229
228
163
178
207
219
209
208
229
227
216
188
142
125
248
196
155
223
157
176
232
191
245
191
212
126
205
196
208
168
229
208
146
235
194
246
184
213
268
138
260
187
236
134
192
197
216
231
143
162
222
221
188
155
201
254
230
180
133
235
224
216
171
217
202
216
203
245
172
276
147
230
210
235
203
190
183
209
170
282
226
216
176
185
228
182
201
163
166
193
196
186
173
192
217
211
174
225
249
107
144
189
261
214
219
161
211
178
221
169
175
207
270
176
238
195
186
184
220
243
160
210
246
249
216
160
123
194
131
216
145
200
206
225
200
172
256
183
170
149
194
146
225
242
139
225
240
209
207
182
228
170
210
196
198
205
215
137
220
201
216
216
175
212
216
230
232
171
189
195
250
167
187
236
198
190
172
183
164
236
122
220
181
158
175
219
185
154
145
161
162
162
224
232
198
218
235
237
162
220
179
114
185
174
174
172
207
258
221
149
184
228
207
171
256
204
179
239
123
208
178
261
213
168
217
152
205
151
148
216
179
231
214
199
183
203
183
167
208
180
162
217
211
195
160
173
121
194
191
226
190
180
219
260
256
141
160
175
220
232
222
188
166
218
219
234
196
205
252
151
150
254
249
234
245
231
252
221
214
177
227
199
228
212
204
177
223
209
216
176
201
180
191
199
167
202
247
191
232
196
217
177
239
224
200
211
224
94
196
192
232
165
211
200
219
247
213
178
127
178
188
226
134
210
179
258
174
189
203
209
178
193
191
224
185
238
162
182
163
226
216
202
126
183
199
243
194
199
179
124
216
194
237
189
251
178
269
214
213
230
202
210
197
211
215
233
174
168
208
148
219
150
278
177
237
249
206
205
261
194
222
208
246
210
213
259
197
164
218
183
247
244
169
198
221
210
182
202
232
233
212
175
213
134
218
215
220
172
201
159
222
272
177
200
182
177
186
179
216
187
237
171
213
205
187
201
212
249
202
175
160
230
209
235
213
215
223
183
244
216
176
211
184
208
262
163
196
193
235
215
167
192
217
193
147
242
188
196
237
229
171
183
162
195
213
196
174
175
225
252
288
236
185
193
205
198
189
195
166
223
177
197
229
177
276
222
156
233
195
183
222
197
159
228
154
245
220
217
221
167
209
182
172
206
250
208
216
246
242
191
225
242
134
177
253
144
223
198
204
234
195
257
251
177
150
184
153
178
118
231
203
220
168
204
175
226
127
208
137
181
201
189
172
147
225
179
213
216
197
221
202
164
201
156
248
232
154
211
145
188
185
158
218
240
137
253
173
205
217
256
242
238
195
200
154
185
212
148
217
192
162
223
179
148
184
174
184
252
264
242
181
169
208
172
192
173
141
164
188
258
265
202
159
222
196
160
180
188
224
218
164
270
227
193
202
211
173
246
154
241
189
240
172
190
215
191
191
201
197
247
232
283
242
243
259
149
245
171
164
121
239
182
272
207
188
168
180
198
155
222
227
220
159
204
204
220
247
233
160
236
160
155
209
224
170
195
253
194
210
168
187
264
238
196
189
140
169
160
271
235
217
150
194
242
180
245
214
171
212
221
151
293
199
255
197
167
166
145
225
205
209
227
217
145
195
261
271
134
227
189
162
209
205
234
130
232
231
177
152
182
202
195
193
181
147
187
220
223
176
221
152
159
165
205
136
215
248
169
139
210
206
112
200
178
205
171
248
217
182
243
201
246
207
107
146
225
148
191
174
240
203
186
253
197
222
247
232
219
203
198
188
202
272
195
217
138
200
213
140
196
225
134
219
246
118
273
177
242
179
176
142
194
165
255
230
204
177
207
234
218
225
220
238
221
199
222
218
187
129
208
201
212
205
194
147
178
258
182
195
236
228
194
266
186
219
182
157
222
203
239
252
168
225
204
246
219
231
244
201
202
195
230
187
199
133
232
166
245
226
212
194
233
176
183
219
248
234
223
237
193
236
180
182
231
156
235
266
264
216
207
198
157
208
211
208
254
180
202
123
243
153
180
202
191
184
216
198
204
201
189
167
147
195
134
259
194
222
233
209
212
269
195
250
169
184
205
212
173
181
194
147
210
219
180
167
186
202
237
221
194
223
236
180
203
211
134
232
184
224
177
202
153
204
169
203
212
180
224
227
141
211
240
162
212
202
140
196
257
171
180
245
228
193
247
220
179
193
157
202
202
218
244
282
183
223
164
238
187
244
194
158
167
190
165
218
195
185
230
202
217
272
233
160
241
188
205
197
189
161
104
233
205
149
196
169
184
233
186
232
184
213
163
189
237
182
154
251
169
191
121
246
204
203
146
209
195
182
154
226
188
161
165
156
228
234
196
177
242
194
160
159
218
190
172
237
196
268
195
175
204
198
183
217
176
148
186
204
236
232
195
240
163
183
214
183
196
172
207
171
175
138
225
182
192
180
129
173
201
185
186
215
189
164
234
170
222
179
208
268
180
211
155
162
200
225
192
194
215
234
204
229
265
120
200
164
223
197
180
250
204
222
205
282
168
218
211
216
141
218
165
194
157
232
281
186
122
164
217
221
210
227
230
202
216
167
183
149
201
217
178
172
175
189
192
219
207
201
188
195
244
174
237
231
192
212
188
193
255
188
178
198
187
165
210
186
173
205
176
194
202
200
250
207
229
161
256
209
214
187
177
285
128
207
197
145
174
271
188
151
240
167
161
152
161
213
181
133
245
211
149
191
214
217
205
187
154
236
188
187
211
192
190
167
233
135
237
171
217
225
248
187
221
163
203
144
171
221
221
218
191
172
183
251
125
238
277
150
282
209
208
245
170
173
168
157
226
197
186
228
244
222
168
243
180
216
223
189
166
234
214
242
130
232
214
197
213
210
195
160
224
210
214
189
214
189
216
222
192
222
223
221
229
160
228
199
227
163
236
190
172
233
214
165
184
174
210
158
225
163
189
193
166
194
201
132
137
216
187
150
260
174
153
212
226
251
216
164
132
176
210
183
224
120
163
212
191
173
225
205
125
166
235
186
174
199
202
159
165
226
156
247
184
184
252
220
228
142
194
169
140
228
255
192
169
198
259
251
193
189
196
155
233
217
243
213
204
261
210
185
146
166
220
237
189
209
233
196
255
206
210
198
177
169
213
212
209
254
193
201
182
171
211
227
167
233
148
184
204
225
173
126
219
209
208
231
122
204
200
233
208
119
226
234
252
201
222
277
215
201
191
198
218
160
189
198
192
146
214
158
216
169
225
168
268
238
204
185
250
208
246
232
148
168
172
165
212
217
196
184
176
206
108
214
223
213
157
215
185
187
207
209
191
273
177
215
165
145
145
215
203
131
252
153
222
226
210
169
228
217
156
170
210
246
221
171
231
232
179
181
195
176
211
191
164
221
240
183
147
244
176
192
208
234
180
217
128
259
172
171
222
188
160
200
174
184
148
232
201
210
207
193
227
186
226
247
233
221
228
133
175
211
245
173
179
222
167
171
189
179
207
203
204
159
249
180
230
275
168
208
194
243
214
149
217
156
199
205
157
199
231
140
211
164
269
141
192
160
228
230
223
228
184
180
254
176
236
222
192
183
185
197
115
233
225
225
157
224
165
188
157
203
161
240
247
199
223
254
208
190
218
197
201
207
192
227
223
222
198
230
190
218
163
255
191
250
243
210
222
199
181
176
230
161
256
218
264
197
196
203
182
155
231
190
149
224
205
166
219
241
216
189
156
183
216
206
217
146
203
184
143
263
253
153
220
249
219
161
175
232
233
172
226
239
211
215
210
205
185
145
244
214
214
222
207
213
151
174
212
162
199
119
141
244
203
169
180
230
167
260
232
140
177
183
205
196
218
256
214
214
269
217
181
191
131
239
125
212
158
305
142
179
218
177
216
226
119
189
223
166
243
182
172
208
224
226
184
254
257
189
243
183
215
178
197
188
232
253
264
199
180
226
229
125
204
116
212
210
188
225
167
115
269
162
223
186
204
227
216
244
216
244
180
167
148
245
206
151
199
224
191
182
220
176
207
186
167
216
203
160
250
206
252
247
182
155
192
240
223
214
220
250
238
194
245
235
170
196
219
250
191
214
167
171
218
239
241
206
247
183
223
176
217
240
265
151
229
204
169
248
177
170
178
190
179
214
162
189
184
231
170
143
259
206
245
182
218
151
195
207
240
175
205
204
156
207
252
206
217
233
228
172
190
217
236
186
226
232
204
194
222
158
216
212
177
250
249
185
162
201
123
197
205
176
223
153
219
232
153
202
181
259
178
164
187
196
143
249
216
168
220
216
210
130
217
212
233
158
176
206
196
217
188
216
231
192
196
228
247
260
260
188
219
186
265
168
211
145
213
211
233
213
168
173
231
259
194
194
195
218
138
170
224
236
219
240
191
204
175
195
192
161
164
268
203
275
187
227
217
191
199
229
226
202
227
77
187
178
185
158
266
203
213
187
181
264
222
141
205
152
176
196
164
148
184
159
257
184
209
151
178
164
248
243
218
146
212
192
176
162
248
149
222
232
252
219
241
143
219
236
216
218
192
232
159
198
276
161
191
152
229
188
193
142
211
168
229
167
204
208
150
257
243
197
215
205
206
180
166
166
167
197
215
200
196
173
180
170
200
205
241
182
234
203
203
148
171
185
215
206
156
175
161
187
207
232
149
241
158
227
185
187
227
178
169
235
220
159
227
228
217
185
214
198
190
262
183
153
177
201
192
185
197
210
216
181
243
225
247
174
181
175
214
229
192
277
229
190
208
193
175
215
157
219
193
232
244
180
216
170
162
178
182
210
181
206
219
199
147
166
175
176
138
236
263
204
203
201
190
210
182
244
166
267
141
196
221
204
189
230
177
269
148
182
170
187
146
212
186
182
156
246
147
199
245
254
212
178
106
223
183
193
158
218
201
229
260
224
246
210
148
159
192
215
159
157
204
197
178
217
208
129
143
205
185
235
157
196
225
283
177
211
161
193
206
206
202
184
154
187
210
210
213
206
256
171
164
185
225
259
177
212
204
218
165
197
231
169
178
241
191
178
197
232
197
176
155
212
220
233
189
297
239
217
226
226
228
267
273
224
263
203
175
164
185
203
180
229
190
161
194
217
159
171
184
169
195
256
157
201
188
186
144
218
249
259
154
226
248
239
187
155
248
109
244
229
164
140
196
196
189
178
248
174
224
166
234
234
196
201
196
223
179
219
240
206
186
211
168
213
278
243
199
161
219
203
238
231
212
222
222
277
108
241
211
189
256
205
224
210
158
220
195
209
193
186
199
151
230
181
247
201
163
192
206
232
214
221
212
204
222
131
202
190
157
237
231
133
193
238
198
198
201
143
247
192
217
202
234
222
201
176
170
173
182
166
206
217
240
193
184
212
206
197
187
237
180
183
173
180
182
216
153
191
262
176
203
253
161
162
198
183
259
170
158
223
176
235
171
183
176
219
233
99
221
215
175
152
233
219
191
205
154
165
165
201
181
211
205
200
228
191
216
252
175
246
233
209
190
179
149
208
240
195
207
233
219
214
192
187
263
214
208
196
180
192
273
202
204
200
203
147
178
206
162
209
199
177
157
134
127
226
159
200
187
193
230
227
160
196
190
233
171
177
231
260
163
223
239
174
149
269
288
232
162
231
164
203
215
229
143
177
200
193
192
180
222
178
197
137
187
226
164
170
201
248
222
134
242
251
219
224
237
156
238
189
196
210
214
201
227
223
162
260
217
170
183
219
227
204
118
203
215
229
222
242
245
230
187
234
153
176
215
181
138
221
251
169
160
196
214
213
176
176
240
206
211
165
218
221
229
198
171
171
143
210
238
188
213
142
237
236
191
228
255
203
229
198
203
186
184
146
201
247
224
160
185
176
207
205
142
208
229
185
235
198
191
183
179
196
191
216
211
212
237
242
220
247
202
247
194
256
226
165
166
249
211
160
114
168
189
181
157
221
179
276
176
215
233
128
197
206
222
242
139
205
174
173
221
205
194
204
226
216
233
252
179
244
155
234
165
225
210
160
208
214
211
186
237
196
220
230
225
176
191
209
202
199
225
221
211
158
200
233
214
208
193
227
181
193
119
206
220
163
255
229
192
198
209
236
249
178
206
194
255
228
186
232
208
181
178
232
212
213
250
216
181
131
214
260
153
179
213
187
234
235
269
208
167
203
209
224
172
153
203
215
186
194
124
134
236
200
213
248
258
182
193
173
186
223
224
197
184
196
203
170
144
229
218
254
160
209
253
258
219
206
225
244
150
149
246
176
182
249
190
240
194
233
187
174
152
200
250
167
149
179
158
202
173
199
231
201
168
176
178
205
285
225
202
205
214
233
174
248
238
190
176
202
272
203
216
226
152
213
200
237
203
202
214
236
223
182
233
194
211
197
247
265
205
258
171
181
277
170
244
159
218
241
183
201
168
183
241
207
240
240
207
203
233
189
188
227
134
207
200
155
172
130
158
213
122
179
122
173
220
205
213
169
224
158
159
150
201
214
199
202
216
181
183
206
151
234
215
251
163
204
209
235
225
212
234
227
251
217
177
207
181
171
164
284
248
190
104
114
144
187
228
213
183
202
267
215
188
177
259
215
122
179
201
150
215
168
205
199
175
192
213
198
191
136
198
206
163
268
196
210
211
173
210
231
192
125
237
144
215
210
197
151
245
199
233
162
196
188
170
247
241
246
225
212
169
200
156
121
231
215
236
138
206
158
137
137
213
182
245
172
164
181
232
276
276
130
228
207
185
131
228
195
249
164
182
250
239
200
159
212
183
151
171
173
294
220
169
232
193
176
221
188
266
242
167
172
208
171
219
193
185
206
236
192
204
186
214
220
211
196
259
174
246
160
191
152
197
266
187
144
160
159
179
188
227
172
210
181
256
155
214
211
251
214
229
228
257
198
198
267
219
250
259
167
194
197
213
267
223
197
194
205
175
191
164
235
202
153
163
152
283
216
160
208
191
145
179
165
177
197
164
188
219
179
161
131
202
161
179
205
165
145
237
215
223
172
188
144
192
187
244
197
184
213
277
227
224
176
214
198
198
228
212
222
188
204
197
224
192
152
206
202
235
189
194
128
142
255
211
235
206
208
216
269
164
182
185
178
181
270
205
233
190
173
195
195
205
188
223
160
202
187
172
189
183
242
215
237
262
206
151
185
167
223
165
229
139
212
238
219
246
207
174
150
281
201
224
212
152
235
219
165
178
219
197
196
223
235
150
164
250
124
236
187
202
191
180
244
199
194
231
202
194
177
262
187
185
195
248
176
208
212
233
233
249
140
287
163
171
181
205
271
184
236
258
159
278
138
175
196
195
201
194
191
130
171
194
193
235
156
194
222
197
205
143
243
151
186
244
153
177
233
218
161
209
214
171
187
167
160
216
245
229
213
202
172
204
208
242
190
163
198
184
230
186
170
182
197
146
175
199
176
183
200
218
149
151
259
195
230
215
183
186
182
188
226
212
208
174
226
228
243
236
214
265
248
239
174
165
237
189
215
170
220
188
216
197
179
173
181
193
213
172
221
178
133
194
228
178
193
193
221
210
207
238
227
143
228
235
212
277
134
218
242
239
199
195
178
193
226
171
159
193
207
153
201
216
178
202
166
158
201
171
217
228
144
225
191
145
203
231
228
212
115
181
201
184
261
135
252
227
228
227
252
110
251
197
215
213
178
207
188
175
116
214
232
186
225
184
198
174
251
212
193
165
220
148
165
175
217
205
142
194
211
251
171
189
215
183
134
149
195
234
289
215
204
195
284
185
221
234
194
260
187
157
199
117
202
188
229
241
245
215
201
114
191
217
186
214
211
182
219
227
256
207
205
248
165
169
194
281
154
257
218
183
163
195
221
242
170
200
225
270
245
170
223
192
175
213
238
244
277
167
149
177
219
241
181
191
185
193
224
234
120
180
244
217
188
265
183
151
231
214
111
195
183
199
119
200
204
235
151
180
228
145
195
210
183
200
197
185
258
222
216
182
152
172
175
242
215
206
166
211
211
113
257
225
169
173
216
194
193
262
183
176
194
209
180
145
260
197
209
248
246
207
118
243
219
226
204
160
229
219
216
239
154
219
182
114
202
219
236
216
178
254
197
195
176
177
217
199
182
193
187
177
205
191
240
198
208
186
219
190
189
175
205
186
260
144
135
245
234
174
189
191
172
196
236
172
165
243
209
209
165
263
209
224
204
221
195
203
177
137
278
212
142
189
235
235
215
264
169
172
172
163
201
158
191
227
166
198
210
225
204
229
214
219
241
209
179
211
219
187
257
187
195
127
135
213
147
255
169
186
167
151
165
197
198
209
210
239
205
221
197
184
187
183
225
129
240
200
169
224
251
206
227
188
244
222
171
150
186
162
201
193
224
228
161
190
204
175
229
226
253
176
221
201
257
227
216
126
197
171
176
266
135
192
157
243
198
138
159
214
129
234
239
201
159
171
251
231
192
145
252
191
223
182
187
205
218
201
205
235
157
240
170
149
168
223
198
212
229
231
196
161
227
225
220
208
268
267
187
241
181
211
205
236
188
176
273
133
271
220
234
219
161
229
196
174
242
232
192
220
218
216
202
161
220
145
201
179
198
221
156
166
110
186
215
257
207
190
255
230
240
206
226
196
189
173
182
228
128
254
174
198
196
193
220
236
256
203
226
192
116
225
202
212
151
187
254
166
199
189
222
200
193
218
160
184
169
252
152
202
168
227
221
155
233
198
245
159
181
155
199
229
133
206
166
249
225
161
163
227
198
212
187
185
210
235
236
228
143
219
201
176
164
164
163
76
164
209
222
154
149
183
277
219
206
247
233
191
195
223
213
160
192
226
243
202
180
181
171
168
189
204
201
207
154
209
164
255
204
247
123
224
185
178
209
219
209
145
198
199
257
229
132
159
234
217
152
204
228
203
209
179
171
186
216
223
172
179
189
226
232
208
179
237
233
203
209
211
209
162
170
248
254
205
186
235
207
211
185
162
227
199
153
153
211
233
235
211
203
152
258
275
226
207
171
173
183
208
206
201
196
218
198
248
241
182
204
222
149
141
175
181
114
212
195
135
139
98
202
158
238
136
215
205
246
202
179
145
260
221
221
167
259
169
250
224
163
222
202
199
193
247
261
224
217
209
151
124
182
231
227
137
158
158
185
209
223
245
223
201
128
173
178
193
138
180
203
170
228
229
205
277
206
199
165
213
233
145
155
214
267
170
197
201
140
171
206
202
213
175
217
201
202
237
175
200
214
237
153
223
224
141
207
214
161
230
225
189
201
244
191
252
219
209
204
221
215
210
172
169
163
192
243
204
206
199
177
162
148
160
144
179
165
193
222
219
182
175
197
153
203
215
230
129
178
161
181
207
242
190
191
182
228
175
191
184
117
233
207
172
175
125
190
219
195
203
117
200
208
200
171
210
193
128
220
180
181
211
215
218
206
192
257
185
142
205
205
192
207
130
142
217
159
169
207
228
222
200
222
245
195
176
259
186
217
190
134
242
200
121
235
231
181
191
227
232
263
212
212
185
180
224
173
207
206
211
233
176
222
247
250
178
185
208
192
237
165
173
204
250
241
178
219
150
237
215
238
223
236
180
216
173
175
214
197
189
235
187
215
222
165
189
223
209
189
214
239
176
179
220
174
200
158
146
206
231
198
141
260
229
216
239
219
139
214
249
180
133
244
224
163
191
218
134
177
204
274
233
199
232
210
203
202
155
200
151
206
203
213
222
227
174
213
176
188
171
197
162
224
201
194
238
250
201
217
157
125
181
149
209
221
139
107
181
190
193
193
171
215
221
214
254
199
257
219
214
144
222
277
271
192
201
180
198
223
260
190
214
186
237
185
170
247
212
210
195
233
120
191
192
200
220
193
169
250
205
216
207
167
271
247
173
193
161
161
249
223
168
163
181
241
120
187
249
222
234
240
212
209
171
246
209
247
223
177
217
124
204
205
243
160
146
176
181
269
219
197
220
164
195
136
239
260
189
160
213
213
195
178
241
197
251
258
211
203
207
174
210
187
161
221
225
171
248
215
237
203
153
135
192
174
163
284
204
136
265
232
240
220
271
244
193
210
177
181
216
201
201
138
217
121
199
147
220
179
236
184
181
206
192
165
251
267
136
211
194
196
240
236
222
236
161
226
180
201
144
190
209
204
225
189
181
173
216
223
204
115
173
191
120
221
162
137
222
231
268
223
192
200
188
169
131
246
220
183
173
218
210
209
205
260
252
193
180
186
203
207
151
219
221
205
251
167
225
184
222
220
229
215
212
186
185
183
217
162
194
198
145
229
191
225
170
231
178
103
201
222
180
233
218
197
201
225
270
204
173
193
194
209
208
209
164
151
155
170
184
236
184
220
243
224
188
210
202
249
151
206
108
236
194
193
208
167
208
230
186
189
214
167
194
217
151
222
258
217
188
245
262
149
241
153
249
237
245
168
224
268
239
233
206
229
170
217
205
127
176
189
237
213
179
196
99
210
241
153
198
240
242
208
224
139
207
211
140
207
198
130
198
167
221
191
138
214
226
181
185
225
175
215
229
193
238
233
176
231
167
204
213
234
159
187
191
199
187
208
191
219
203
246
168
179
223
185
160
228
209
244
167
210
233
145
205
167
212
199
150
159
198
129
187
197
205
242
211
177
177
219
219
208
240
152
199
124
269
249
155
246
177
222
220
229
235
181
202
239
212
144
256
190
279
225
148
186
269
224
223
215
185
134
214
210
212
164
228
225
195
246
217
199
177
182
120
135
167
198
200
219
169
143
208
181
276
222
184
218
144
151
157
200
190
223
228
168
207
181
252
245
235
228
167
206
182
159
242
217
241
190
237
228
213
192
198
212
138
172
198
231
245
255
145
182
247
269
141
264
236
190
226
249
122
199
204
204
226
134
210
183
200
180
211
171
205
156
173
175
210
215
258
72
202
166
242
240
215
256
282
237
232
206
148
168
223
176
217
205
170
255
219
185
210
113
254
196
137
167
248
198
195
158
186
148
182
204
233
164
166
181
237
181
181
214
202
193
260
208
248
208
211
218
185
209
139
201
143
171
148
256
131
162
229
153
250
229
245
163
158
289
209
155
169
221
170
217
184
194
210
187
181
139
227
162
180
211
215
249
228
228
218
175
193
248
194
156
177
193
186
115
129
260
193
246
210
198
265
185
208
217
194
223
184
166
188
202
205
191
203
221
191
233
197
257
180
209
202
218
152
176
194
267
194
180
257
147
198
228
165
189
214
239
208
220
215
184
209
171
182
230
276
212
183
229
196
203
141
169
155
193
215
235
246
172
249
279
203
138
156
229
239
203
218
123
254
214
211
134
211
226
193
221
101
298
206
275
176
227
208
224
165
195
261
185
264
205
200
257
146
129
143
201
226
225
200
184
168
124
192
206
198
153
192
189
206
212
140
154
169
207
210
142
214
241
213
230
174
201
229
215
230
181
145
230
190
230
237
213
207
179
189
204
259
226
195
250
177
158
198
133
192
206
231
201
228
203
191
126
212
173
233
224
141
234
247
151
234
178
209
237
177
160
200
194
200
243
224
154
142
200
172
243
249
209
249
119
229
190
238
220
187
232
136
184
172
200
179
196
187
203
193
194
156
192
180
237
264
164
179
182
208
190
185
215
196
271
156
231
228
122
206
155
188
178
267
188
204
184
203
263
229
215
149
185
167
204
163
220
246
142
212
221
223
212
173
252
180
236
187
190
234
218
179
229
210
246
252
241
199
251
203
177
173
163
184
157
254
282
190
148
162
244
132
164
181
136
202
230
214
228
159
268
221
172
144
192
172
180
259
136
216
157
205
202
196
214
172
222
190
186
195
200
250
185
212
203
211
169
182
192
213
206
215
178
244
227
256
187
155
193
166
121
146
225
188
184
159
153
252
216
189
183
240
177
206
236
153
247
234
203
128
233
147
198
207
245
232
174
206
159
187
157
247
153
196
123
223
164
189
222
193
189
203
142
185
175
216
247
243
172
208
237
180
145
188
193
254
173
179
114
182
126
190
254
233
149
236
183
205
233
184
228
157
211
168
217
237
175
189
204
165
174
187
185
201
184
194
231
245
195
151
116
256
248
160
197
145
155
256
237
190
258
233
212
221
239
235
275
211
191
166
185
217
194
133
199
203
224
151
223
195
157
187
182
132
243
184
206
197
138
206
125
282
248
267
154
196
182
191
208
178
167
178
263
148
203
175
223
175
213
202
209
171
159
201
185
220
190
200
219
185
197
244
209
236
227
135
243
197
175
172
216
215
247
188
183
220
205
208
261
181
185
168
206
236
183
197
216
242
153
186
199
196
226
184
192
146
183
218
210
226
197
254
178
134
190
206
191
229
195
181
174
177
175
227
177
224
202
152
169
228
163
260
192
198
194
179
159
191
196
174
193
181
193
217
205
150
240
155
197
228
147
134
269
202
228
197
205
245
187
124
190
218
235
160
197
196
187
249
191
148
238
297
206
168
232
197
229
232
132
186
162
223
198
217
172
217
195
207
179
167
200
197
205
269
286
162
196
176
197
158
213
235
197
225
214
196
230
203
216
228
205
197
268
152
222
172
270
201
214
160
241
192
194
188
144
170
201
180
152
186
171
243
224
228
195
191
196
233
128
210
210
213
203
218
124
196
243
194
201
238
224
164
140
123
218
190
203
190
168
216
187
201
221
190
206
224
252
153
216
205
163
222
228
202
210
228
210
167
165
206
220
151
236
217
204
203
199
223
191
229
147
262
175
129
279
202
207
199
169
159
196
220
250
191
210
173
188
230
237
217
168
194
196
133
226
257
212
173
149
173
216
232
177
184
249
242
177
182
234
214
202
231
198
220
175
177
201
190
224
225
168
179
166
200
143
233
250
163
210
230
157
210
208
169
231
194
170
227
227
224
256
160
166
186
188
177
214
155
175
133
196
165
147
198
241
189
229
235
215
245
235
162
228
133
172
175
243
202
249
197
269
217
201
180
189
235
237
139
238
193
185
132
189
215
241
166
181
154
164
203
189
218
169
223
144
182
178
196
169
191
212
130
211
179
195
228
260
195
157
196
162
168
141
220
214
231
156
208
189
251
189
210
117
208
195
214
237
155
231
234
155
197
146
230
169
172
162
220
254
199
190
230
151
153
175
134
207
134
181
226
177
161
230
215
169
221
225
175
194
175
278
168
201
196
172
234
253
170
188
215
179
174
132
182
201
182
202
184
186
225
213
187
160
143
213
248
223
197
171
190
252
190
232
210
209
253
213
154
190
244
196
195
191
166
196
175
175
249
166
204
201
190
189
240
152
173
215
164
198
236
277
233
240
187
197
169
196
206
198
234
170
251
191
194
196
224
169
165
205
168
148
238
141
196
208
155
143
228
190
198
195
180
182
251
229
183
223
216
208
152
196
193
172
193
162
234
246
202
185
121
187
226
180
221
170
173
197
214
207
247
230
226
193
104
184
229
214
131
197
264
174
215
175
191
152
211
162
163
245
130
236
165
189
151
171
226
223
222
208
171
211
160
263
185
169
260
194
258
236
206
160
178
179
210
214
193
203
226
186
186
202
192
162
168
204
191
255
183
125
252
192
204
242
225
157
228
195
230
181
191
179
164
204
260
220
253
223
130
259
212
189
211
216
199
251
195
250
147
161
215
182
186
236
216
197
191
195
202
184
188
195
182
155
231
166
254
183
186
153
225
280
222
188
216
224
133
186
182
133
229
204
222
154
221
208
228
178
228
140
217
236
172
211
257
170
261
188
248
193
126
265
114
220
218
120
215
263
228
242
179
192
186
242
264
188
105
178
229
237
220
207
247
200
191
195
210
204
166
184
107
220
232
310
201
243
183
219
218
166
187
237
192
221
222
172
242
183
184
238
219
203
209
236
206
251
196
224
241
180
203
238
165
172
241
201
175
258
206
171
161
224
194
149
217
199
217
250
242
196
183
185
253
222
215
224
209
208
216
153
234
179
236
174
196
178
171
190
169
156
236
237
239
166
161
178
176
182
169
240
218
213
203
209
186
211
223
175
214
202
157
236
268
151
211
145
154
196
233
222
197
256
213
238
210
225
242
220
194
181
233
239
164
160
212
185
203
228
193
212
255
172
165
184
224
168
158
224
186
219
203
184
243
216
217
166
207
171
262
131
212
196
196
219
166
189
231
172
142
107
239
185
241
246
208
182
233
210
261
260
172
206
230
205
207
178
232
173
197
262
228
237
210
182
221
175
188
162
199
170
193
185
229
173
258
192
204
172
156
148
257
170
186
186
214
210
230
195
200
175
210
230
143
252
192
221
214
271
185
242
205
266
203
152
235
195
230
224
169
210
169
211
206
214
175
218
241
219
258
191
185
185
180
225
178
179
219
165
214
221
184
230
226
128
247
247
197
228
222
159
154
247
166
181
205
184
153
239
192
241
229
176
141
113
179
222
214
208
250
200
250
201
242
240
210
217
186
195
215
216
212
237
255
196
251
129
232
190
243
160
170
184
161
178
191
231
224
217
193
174
216
172
250
217
159
191
200
152
196
166
158
196
230
177
177
212
158
218
228
234
177
155
245
210
218
232
163
199
175
221
156
180
158
209
267
199
157
142
199
193
167
223
183
167
180
259
233
187
256
256
161
199
183
229
214
206
225
192
193
183
189
212
160
195
216
231
203
189
141
226
236
239
188
188
177
232
177
203
243
220
176
175
194
179
225
163
180
172
174
203
220
222
146
150
159
224
253
170
240
108
219
230
208
219
195
213
235
270
233
193
205
184
209
225
164
208
168
185
203
212
193
213
192
215
223
186
220
139
217
252
234
184
192
197
208
220
178
178
244
223
197
221
222
242
208
207
192
203
162
183
173
181
210
206
203
218
208
158
121
188
215
203
195
220
131
151
194
210
189
195
207
251
118
178
266
194
228
213
226
179
196
172
163
243
213
196
203
161
215
226
253
243
194
247
185
173
207
187
126
120
234
199
163
211
206
233
180
185
164
245
211
159
209
242
184
209
144
103
184
183
164
213
227
247
193
115
195
195
193
179
128
225
244
203
143
197
136
192
187
257
222
254
172
196
208
162
230
135
163
206
222
251
220
243
207
255
163
212
232
151
200
236
217
173
198
259
172
179
182
220
216
197
221
234
208
187
211
170
197
124
148
240
141
165
233
205
207
158
205
206
147
237
135
262
219
171
171
166
221
163
176
148
220
233
184
179
220
207
230
153
202
287
191
188
185
180
218
167
248
200
206
219
207
244
186
179
199
258
205
119
113
182
231
232
175
233
157
154
201
229
238
228
194
174
147
159
277
230
242
155
216
160
154
218
220
187
230
215
222
174
197
288
259
216
239
170
191
119
226
252
161
194
236
189
164
257
203
230
190
259
228
220
147
178
192
210
192
243
168
195
196
119
192
164
168
190
213
164
174
207
160
179
184
153
175
188
197
198
180
218
195
205
215
210
108
199
205
268
140
241
228
230
210
156
220
231
248
158
208
178
217
133
230
162
232
191
254
198
197
161
178
150
235
240
251
237
205
184
250
176
273
186
217
180
216
190
175
203
188
166
280
205
202
159
226
190
167
226
134
197
149
143
225
171
169
191
187
215
245
268
230
207
291
226
189
201
196
172
192
209
227
189
152
244
169
204
75
173
183
130
268
214
264
208
144
211
195
225
218
256
197
194
193
154
154
203
219
176
245
219
221
224
241
206
223
194
215
214
237
162
255
235
250
245
221
174
257
171
164
131
223
193
165
248
216
248
151
172
173
193
246
187
159
213
222
153
103
253
243
175
260
257
254
215
207
160
220
182
219
203
203
148
177
168
167
155
172
254
211
180
228
162
238
187
177
194
143
194
262
200
224
162
210
205
198
216
198
169
141
144
267
147
184
165
153
214
251
236
265
173
152
250
169
214
141
214
224
253
163
213
215
206
201
175
164
222
195
252
113
196
165
175
210
236
237
169
237
155
173
104
171
196
219
185
191
149
194
229
255
160
239
224
185
194
186
231
208
285
219
223
201
179
211
206
196
208
221
214
173
277
200
217
171
249
184
172
164
160
234
231
161
161
211
242
202
236
237
184
198
214
158
236
200
219
207
206
208
234
196
193
203
211
248
194
164
218
149
192
187
164
236
193
219
204
201
196
208
157
166
164
169
188
223
168
222
246
192
169
261
161
207
157
209
198
201
180
242
225
208
232
227
230
215
182
179
215
181
146
209
274
197
217
196
212
207
291
221
164
161
221
232
187
212
233
168
167
216
211
214
225
217
205
192
202
178
197
203
188
249
268
217
194
135
234
220
193
203
181
237
248
209
225
244
142
163
240
87
245
189
206
174
190
234
227
165
237
237
188
215
214
209
217
254
232
208
206
130
271
206
170
178
213
152
200
113
207
153
221
210
204
174
168
186
217
207
243
154
188
176
184
216
253
143
186
167
126
197
217
208
214
225
228
188
213
256
159
255
191
269
222
154
193
154
159
241
153
246
185
182
153
186
206
202
216
217
182
188
199
248
231
184
233
215
204
228
220
170
248
208
204
190
178
132
202
179
184
209
263
240
212
199
236
146
260
210
212
201
202
151
221
183
179
223
234
208
155
179
189
239
212
246
194
197
179
254
142
168
211
131
178
209
207
193
260
175
293
242
203
205
195
165
205
176
222
184
241
158
225
227
210
215
213
117
194
208
179
203
182
212
185
250
208
183
111
250
196
252
191
224
227
187
179
204
173
177
117
173
201
194
188
202
164
186
260
241
175
204
224
257
213
161
158
202
213
191
214
230
164
241
190
176
223
203
204
225
234
214
185
188
170
206
248
214
157
138
230
152
197
221
184
203
224
207
224
222
218
147
158
241
226
210
251
162
239
227
164
162
129
188
243
239
210
211
229
189
201
237
237
210
159
181
217
207
246
154
200
209
197
241
152
189
207
155
236
153
212
166
211
171
199
179
197
198
208
196
161
220
187
213
212
187
150
200
176
154
176
194
188
181
182
163
181
186
196
185
198
234
161
275
171
201
187
240
266
202
245
237
242
193
201
197
171
242
206
251
222
210
204
172
144
193
171
198
174
191
134
233
249
239
175
179
190
204
188
206
216
202
122
248
152
206
169
204
228
187
179
187
160
182
183
207
196
184
227
234
221
181
225
196
206
197
232
210
259
175
239
242
225
176
177
143
176
133
194
225
156
221
250
167
235
243
233
137
204
227
209
201
207
198
195
234
222
195
198
204
147
167
195
196
245
243
202
201
203
240
158
182
139
210
205
173
166
219
241
213
204
223
169
166
208
195
142
226
246
223
152
186
188
173
183
274
220
202
149
224
249
178
222
233
192
232
197
249
151
219
233
171
175
225
179
232
140
178
136
193
200
208
202
214
247
121
192
244
187
218
185
201
216
219
203
238
171
164
179
232
129
255
159
160
150
198
218
211
210
234
167
193
181
178
167
162
213
172
182
233
204
209
179
190
213
233
224
219
205
136
202
203
219
158
163
231
225
182
234
206
200
152
135
177
249
169
216
195
221
183
256
139
247
206
202
175
256
183
120
120
202
186
217
205
179
181
240
193
244
142
155
198
175
201
214
235
231
215
161
216
204
213
178
203
217
223
182
259
190
181
213
192
146
234
223
289
195
198
204
217
184
182
178
253
221
177
204
174
207
184
192
168
234
200
178
170
200
186
205
161
184
206
247
199
187
163
177
148
224
169
229
157
234
200
218
185
235
243
204
256
151
192
201
199
213
241
182
203
255
168
192
237
141
205
215
165
230
193
173
171
217
177
229
280
189
212
170
158
202
199
158
165
178
197
194
141
164
260
144
212
205
181
265
210
187
145
209
212
222
243
205
212
161
127
189
246
190
96
177
198
234
217
231
240
160
198
150
213
223
195
223
258
221
209
197
174
220
178
170
211
186
217
240
221
211
240
235
226
145
186
249
197
220
215
234
240
196
173
189
283
193
195
186
222
203
232
195
197
209
229
207
235
174
163
151
216
243
193
251
159
136
230
285
190
199
183
249
251
161
165
198
235
246
218
269
169
158
189
186
183
241
212
237
250
170
247
240
224
206
239
209
218
210
206
250
155
209
162
181
184
150
196
207
197
213
137
192
210
232
182
209
177
152
190
210
168
150
246
182
207
203
198
226
144
133
230
147
225
158
182
221
192
184
167
200
136
231
202
143
137
153
238
251
198
207
208
183
222
275
203
202
205
255
241
218
236
188
218
145
227
267
212
208
177
174
167
115
209
249
181
177
172
231
250
255
180
194
163
166
188
277
163
172
188
209
210
161
240
190
201
214
165
177
218
218
191
224
153
221
210
231
119
227
200
210
280
153
192
216
139
216
259
199
169
188
271
182
218
148
152
198
192
241
146
184
220
219
136
242
209
207
202
179
240
152
234
208
184
252
243
215
198
183
163
147
223
192
179
165
209
172
254
186
224
169
202
208
221
209
160
161
227
230
132
181
219
155
163
209
170
187
249
143
232
169
197
226
201
215
193
186
232
183
199
202
235
168
192
266
180
160
172
230
178
201
159
214
191
207
178
162
166
219
221
150
232
212
208
190
193
147
233
237
226
193
221
194
182
197
177
193
211
174
135
177
158
202
200
219
214
214
159
232
230
162
163
154
184
222
240
236
184
228
265
170
199
155
240
196
218
183
143
193
129
215
213
244
218
189
197
259
196
209
170
220
237
242
250
246
219
188
226
193
193
209
249
220
173
206
234
218
235
207
146
180
171
230
204
168
160
191
204
138
234
182
221
261
200
189
236
236
223
179
195
234
234
154
239
253
155
202
243
258
236
208
145
195
222
212
197
278
210
191
199
203
193
207
232
216
211
253
174
172
144
236
213
194
203
205
236
262
204
129
232
236
227
221
247
220
219
168
168
202
166
182
141
217
224
206
190
224
274
194
233
254
136
208
203
182
222
234
176
159
246
231
175
223
191
172
204
212
140
228
186
209
229
183
163
234
264
183
146
195
190
206
188
208
155
267
202
206
172
157
253
148
239
208
213
189
175
183
226
211
239
250
187
181
194
252
211
173
183
201
208
214
179
223
202
216
189
184
178
208
161
166
235
256
178
195
247
211
245
199
266
227
176
257
188
198
216
174
173
220
221
201
235
207
226
199
211
203
212
171
146
223
235
203
192
206
229
247
210
154
226
212
222
190
191
202
165
201
237
132
98
287
198
161
171
206
209
139
132
253
197
148
157
200
183
204
163
206
233
194
246
201
218
144
186
234
184
217
171
233
179
205
201
154
183
216
307
233
255
252
257
227
185
261
169
205
232
194
200
207
195
154
193
255
210
238
222
237
246
197
181
253
222
178
203
174
240
187
174
126
212
219
198
204
134
153
225
190
185
161
210
179
198
173
198
182
260
225
163
177
194
235
153
129
238
203
204
215
146
237
214
223
215
194
229
231
229
231
224
200
205
219
215
200
146
157
242
186
230
201
171
130
228
188
210
174
211
223
237
209
258
162
165
201
228
216
250
202
191
227
140
212
135
199
158
280
193
207
125
157
171
217
215
177
241
176
190
178
227
260
233
237
187
286
247
188
265
136
128
231
154
160
225
188
225
189
191
179
200
164
233
275
204
224
171
141
180
216
159
128
214
265
219
217
148
175
173
215
257
205
221
184
194
182
162
283
212
267
177
227
221
187
199
225
167
211
207
214
173
185
151
213
192
210
188
198
231
168
242
195
189
253
194
198
201
187
212
183
234
178
202
210
210
224
224
275
197
164
186
150
212
208
257
205
248
191
232
232
185
235
224
164
228
204
248
165
178
237
236
151
248
217
215
155
187
221
233
272
232
183
207
158
227
182
204
209
175
230
200
162
230
252
172
161
208
155
217
227
208
180
217
197
187
112
198
219
183
153
208
226
239
214
148
213
257
259
237
225
232
235
164
194
181
182
178
295
202
223
192
200
192
169
241
159
151
231
179
202
208
203
159
190
230
210
252
193
143
229
180
254
208
244
238
182
176
172
207
181
228
245
210
209
176
143
213
218
220
211
251
166
197
186
251
191
233
188
239
175
218
203
168
174
183
221
215
162
155
148
190
244
199
215
152
193
116
190
132
215
237
212
173
193
232
267
196
248
174
187
242
205
209
211
209
186
208
199
162
229
181
189
218
172
172
174
179
144
176
203
214
143
197
216
232
187
160
223
228
217
199
204
254
235
227
152
153
166
263
201
204
198
241
188
244
227
204
131
226
207
198
192
204
192
209
158
278
217
169
169
173
275
217
116
206
212
192
238
208
175
93
183
164
157
215
236
216
214
186
227
172
163
191
248
190
190
234
215
218
219
175
142
177
213
223
252
190
218
218
263
211
140
223
144
219
138
238
234
226
232
209
190
131
168
187
135
177
204
161
249
171
225
181
250
257
191
148
180
141
206
234
197
194
141
198
195
248
222
214
192
187
235
211
183
195
222
269
170
193
203
177
115
186
123
209
180
227
212
183
188
220
202
230
155
135
232
220
174
191
185
234
201
191
146
194
119
279
257
206
210
182
260
229
204
243
135
223
197
161
167
254
204
205
211
243
195
222
204
156
130
158
274
212
187
226
232
189
218
212
220
180
227
205
206
189
209
205
213
196
211
177
169
227
188
225
219
216
210
173
225
173
193
184
193
154
196
159
155
214
232
153
249
268
172
205
174
219
188
199
219
241
158
213
236
214
223
201
168
169
213
180
172
246
206
220
184
203
213
217
137
203
221
204
218
241
228
169
212
278
179
199
188
189
228
186
172
206
208
191
171
161
166
184
122
136
207
212
234
149
151
209
260
194
223
209
159
246
212
183
219
249
154
159
214
159
232
227
219
209
186
228
207
206
244
105
214
191
215
128
150
172
212
166
228
191
172
159
178
167
247
174
231
206
243
189
250
142
240
232
200
240
189
183
212
216
169
204
198
222
244
198
182
171
158
221
203
183
156
176
184
165
218
148
178
198
221
182
189
183
208
228
122
225
175
223
260
192
202
194
240
206
118
225
219
182
219
182
236
187
208
197
153
198
140
188
186
131
278
255
193
226
245
171
145
202
173
184
188
168
245
164
229
189
188
214
209
210
198
203
209
175
218
162
170
173
202
264
202
206
199
258
185
195
149
234
213
178
170
228
213
191
235
221
152
171
213
224
147
188
210
226
288
191
102
181
157
242
210
245
171
243
187
164
213
180
218
226
212
214
211
182
183
188
197
190
227
214
218
185
205
250
219
184
163
205
204
220
197
174
141
166
169
225
240
221
175
187
246
166
188
238
197
215
136
243
246
112
184
204
141
218
201
214
109
159
221
212
250
262
228
217
172
207
210
237
203
171
220
226
202
191
178
162
160
149
246
195
205
206
216
210
215
208
174
155
223
253
189
193
164
202
121
185
202
247
178
182
165
181
206
184
219
185
216
213
131
197
135
201
205
158
211
169
200
145
199
210
182
207
204
218
233
216
179
246
140
173
200
212
189
180
233
205
196
226
185
176
201
157
211
195
251
251
248
175
208
105
161
258
220
178
179
199
201
214
199
176
218
125
183
222
222
159
192
186
157
154
208
240
225
171
212
211
205
206
145
172
217
172
194
172
249
233
266
147
220
183
164
257
214
191
201
233
226
186
191
260
215
181
229
210
198
189
185
170
189
141
215
182
188
225
188
202
232
196
152
280
180
223
204
214
199
201
151
196
258
197
112
177
207
174
228
210
198
159
237
178
156
180
203
155
122
231
220
156
191
179
228
234
270
175
215
201
234
200
201
204
142
201
239
151
221
221
205
178
193
239
148
169
246
204
143
159
163
226
194
164
171
165
238
166
195
199
187
225
204
224
252
172
207
203
171
221
194
179
264
177
223
119
145
260
181
204
244
199
194
187
222
181
231
176
181
151
210
208
246
179
161
196
205
186
254
213
209
205
215
193
224
244
227
263
236
291
218
222
213
252
226
223
208
185
176
192
236
210
211
152
224
241
181
203
201
179
249
231
130
222
210
181
167
243
182
181
252
205
204
232
249
176
181
237
169
230
200
171
208
180
183
161
198
191
179
222
151
219
254
202
223
215
132
186
192
206
120
265
270
221
237
153
155
280
212
245
233
257
184
198
202
154
139
259
225
187
216
194
227
147
208
218
204
227
224
192
182
245
174
191
136
221
153
204
220
139
216
207
241
205
205
195
190
167
258
252
156
249
187
128
216
215
191
205
194
217
190
184
177
212
159
200
214
206
225
143
229
221
221
156
220
188
144
147
199
245
192
178
244
167
201
203
204
271
172
220
284
185
225
177
194
226
192
199
173
207
160
217
206
186
218
175
157
191
200
220
183
151
270
225
221
240
184
175
221
202
220
172
186
222
142
195
191
248
235
171
254
219
277
237
252
203
181
274
177
195
237
239
144
226
248
173
208
214
244
199
254
245
152
204
195
256
181
172
262
162
236
167
239
143
222
198
267
212
216
140
168
199
185
241
258
198
256
198
262
182
190
216
171
181
159
111
130
250
242
195
259
197
148
224
184
244
211
246
217
214
273
198
237
224
175
181
208
226
120
178
227
200
187
175
227
182
278
198
229
215
201
200
246
237
188
232
160
264
271
157
221
166
167
250
214
208
181
199
180
245
181
209
225
215
272
181
172
197
231
204
176
213
276
177
238
203
259
259
167
224
240
200
262
193
217
173
180
225
223
163
236
211
156
203
227
207
188
163
221
264
200
174
238
232
224
251
206
147
174
207
183
237
220
189
214
224
266
215
232
259
188
201
237
206
161
212
284
190
155
249
210
141
137
230
235
127
203
222
251
185
204
239
179
176
133
196
188
182
223
221
231
118
223
164
164
223
180
229
209
211
211
201
217
212
164
163
216
224
208
271
252
258
216
207
235
204
226
194
253
184
195
221
169
235
299
204
210
228
135
175
149
184
205
229
222
194
197
237
202
165
131
188
176
151
205
273
160
230
205
242
210
238
200
128
189
170
177
205
183
205
174
200
175
161
218
190
219
195
185
251
198
203
181
182
215
221
211
186
238
176
252
210
222
200
162
160
223
144
174
160
182
160
175
175
227
199
252
240
240
183
183
241
211
205
177
214
150
193
197
289
200
144
192
216
227
171
162
168
216
200
150
171
287
156
229
164
273
245
202
179
157
278
243
180
141
206
232
235
172
228
150
135
268
208
154
226
175
224
255
199
157
185
201
131
184
202
150
168
157
183
255
228
211
231
221
196
141
200
221
180
186
185
223
246
243
219
209
181
220
200
204
206
162
167
175
223
235
203
193
174
187
227
183
279
119
240
221
215
239
169
183
208
273
173
174
197
240
237
172
228
214
250
232
184
217
205
229
190
209
163
202
106
181
209
185
238
225
191
231
226
266
245
177
234
229
165
230
114
204
210
218
267
185
176
205
213
233
174
177
265
227
239
205
178
235
262
195
277
215
224
200
247
235
192
145
231
259
215
198
207
147
294
217
190
184
214
134
228
186
213
157
155
182
227
235
232
257
242
258
211
228
202
200
161
211
230
168
235
231
233
190
202
224
182
168
233
204
240
222
224
180
211
197
190
223
156
221
203
263
239
154
205
233
133
221
271
174
192
197
225
191
202
239
185
165
236
244
243
217
231
231
207
209
231
218
205
192
200
207
221
149
161
203
203
190
176
172
188
212
230
143
198
213
227
163
198
153
200
137
124
259
258
253
228
189
174
224
208
181
224
190
192
177
206
208
267
186
182
193
185
162
183
202
239
236
209
241
176
233
202
238
205
161
239
156
161
189
190
228
241
196
166
179
216
206
181
265
189
243
256
215
187
168
194
248
145
186
233
226
248
220
185
238
243
231
254
206
213
143
167
219
227
189
208
195
212
172
200
184
129
130
168
205
171
216
274
155
130
171
147
215
182
222
195
262
161
207
182
209
234
146
232
165
184
218
212
168
135
210
134
177
251
212
198
198
154
182
215
151
227
161
188
234
264
249
272
140
232
207
215
212
200
163
217
199
176
199
191
236
155
188
162
221
140
187
199
220
202
175
188
178
221
165
190
259
217
216
233
182
187
256
290
143
208
162
203
170
228
198
194
213
210
168
221
173
217
222
220
203
199
236
163
178
157
243
198
183
214
185
169
212
218
187
139
170
181
209
196
244
205
179
238
247
250
194
145
231
236
193
233
210
207
225
209
189
207
223
174
157
205
193
166
197
219
231
190
224
210
263
186
198
267
198
184
123
198
234
201
215
205
202
131
166
154
164
195
223
224
252
142
195
259
215
227
182
150
241
146
166
159
252
189
177
203
235
216
215
192
207
220
145
210
164
261
161
202
133
167
214
247
162
146
181
190
219
248
165
136
156
214
167
155
194
198
240
201
168
197
192
271
209
142
197
198
161
250
165
213
132
254
143
203
231
235
187
198
182
232
239
150
214
140
222
207
223
204
108
165
171
181
172
225
174
216
209
263
224
218
183
121
230
201
189
153
208
214
270
201
267
209
197
161
212
202
179
254
118
220
242
219
195
169
246
203
203
146
180
141
236
139
189
198
141
202
210
182
204
190
200
170
300
308
216
165
244
165
205
192
198
118
262
213
148
230
257
245
176
168
156
209
153
222
151
214
206
226
220
179
174
221
205
224
237
157
166
225
221
225
148
253
195
240
158
200
197
149
199
194
215
225
176
225
234
214
222
246
222
199
161
210
241
147
198
233
219
218
249
215
161
233
276
195
179
201
179
274
204
195
230
237
167
262
224
242
186
208
215
180
191
226
197
222
157
202
202
189
206
108
284
219
130
202
191
222
218
182
195
170
216
184
231
235
238
190
200
230
216
195
199
201
138
246
153
167
204
269
188
178
180
171
190
204
180
200
184
139
230
219
235
148
190
206
225
187
120
192
196
194
208
160
241
193
219
204
283
199
208
244
211
209
197
248
207
191
180
207
222
194
170
190
208
194
237
210
221
188
242
236
251
247
174
171
196
223
216
173
222
193
258
192
267
209
225
212
158
186
151
142
218
251
194
200
170
249
205
237
188
164
170
216
217
210
180
207
182
226
230
158
202
175
220
195
202
238
168
242
136
237
178
252
150
176
220
177
175
191
237
207
142
225
172
206
154
215
177
248
242
198
208
200
258
171
250
198
208
209
206
205
209
203
135
197
255
145
217
291
189
157
131
191
229
248
208
227
205
266
221
187
257
189
179
195
218
210
163
224
154
178
204
173
207
203
140
231
196
189
232
172
192
221
176
199
171
226
177
187
215
212
232
189
140
230
211
178
219
214
155
150
263
227
139
193
174
206
198
239
244
214
217
259
210
154
226
236
257
171
250
171
209
151
195
192
191
163
213
219
272
234
207
244
222
187
233
235
245
276
236
212
146
246
122
158
212
240
196
206
160
268
214
191
223
181
117
229
189
204
169
224
231
163
213
224
195
223
194
191
268
221
234
206
195
179
154
189
203
131
195
264
174
179
192
190
274
202
186
181
200
231
156
168
236
151
283
213
209
179
190
174
215
185
265
144
235
182
203
235
207
181
218
177
179
171
160
243
221
130
256
211
219
232
241
198
278
163
185
229
210
215
146
145
173
163
196
187
195
182
201
263
244
231
214
178
244
235
144
181
231
184
205
145
208
182
227
214
175
197
197
200
231
246
212
204
215
187
223
237
209
197
229
177
233
254
199
195
254
204
184
235
217
207
280
190
201
209
286
182
241
200
182
155
148
257
240
202
209
221
278
165
171
205
241
127
208
188
248
197
216
260
252
133
229
197
196
278
132
250
210
187
186
221
81
248
157
204
166
219
184
152
214
177
195
191
195
238
247
247
236
204
170
209
220
208
183
221
216
119
139
178
226
216
207
197
162
209
212
206
168
196
214
205
194
167
244
241
193
160
239
213
219
220
218
233
234
260
137
211
246
167
238
233
267
162
159
184
185
146
231
146
233
242
215
209
171
254
255
208
239
152
227
222
198
192
207
150
183
204
214
176
215
178
202
227
225
211
234
159
195
216
208
231
221
222
171
198
228
237
126
206
165
196
131
150
187
179
145
168
159
165
186
216
228
261
129
123
224
215
186
188
147
189
282
164
155
201
223
216
227
195
237
213
162
240
195
188
181
208
207
244
225
166
221
168
177
222
167
249
208
245
201
174
186
180
173
210
212
241
229
210
187
161
221
149
218
223
212
190
174
181
220
254
255
136
193
205
172
240
253
209
186
166
186
179
193
172
245
143
151
180
163
228
211
193
200
212
194
182
220
193
193
119
234
119
231
219
194
196
182
168
188
232
180
251
188
204
189
206
207
203
222
200
145
239
241
225
161
165
191
218
201
261
163
227
209
172
112
148
233
247
226
207
241
257
202
222
217
181
227
214
249
183
199
193
193
157
222
213
207
221
169
164
183
119
215
220
269
232
120
192
167
194
197
212
202
212
152
188
221
231
198
198
185
129
143
251
197
149
247
233
225
262
179
198
182
201
201
182
208
176
212
225
171
182
186
243
181
175
183
145
198
279
173
277
232
164
213
223
221
225
251
131
229
247
188
176
231
177
178
183
154
225
209
253
208
182
191
189
216
175
199
253
141
223
230
190
145
168
201
190
100
228
186
211
187
156
197
171
220
209
251
201
235
189
210
190
202
183
226
244
223
129
198
160
162
239
241
240
195
250
175
168
216
222
236
230
90
183
165
189
237
172
194
197
212
173
183
219
211
211
218
188
240
146
197
225
209
238
258
241
224
232
156
221
209
157
226
233
202
230
149
241
177
271
195
211
191
190
203
222
196
197
213
208
209
157
186
233
166
193
212
199
252
226
210
205
125
239
165
121
147
186
238
243
151
222
223
173
286
84
166
238
160
132
178
220
240
167
181
260
149
221
234
165
168
177
105
196
245
162
219
226
233
197
240
237
207
185
237
207
248
253
192
164
161
176
206
183
210
196
239
239
191
198
157
184
202
249
139
172
285
214
248
236
183
250
196
226
281
202
160
250
109
191
234
210
155
222
213
248
192
185
195
177
241
214
233
144
203
214
223
242
236
228
216
221
224
203
264
181
142
212
208
224
233
148
238
223
216
201
228
237
190
227
226
161
179
205
227
199
193
127
265
252
196
206
252
226
199
190
163
213
235
193
206
245
246
196
297
234
265
185
173
214
176
193
206
167
174
179
160
194
199
115
233
239
202
236
246
182
240
166
190
123
216
228
146
180
224
256
186
243
205
217
232
227
202
168
246
144
110
163
175
247
183
206
206
209
231
209
198
246
272
233
230
157
203
213
278
211
189
173
181
250
254
214
241
153
246
195
226
138
176
144
202
203
213
193
202
249
181
200
223
160
210
119
154
268
217
167
201
170
176
172
149
183
144
173
186
203
229
249
226
174
168
203
234
151
195
229
232
162
227
251
189
251
212
207
144
208
212
192
214
253
223
174
199
197
192
187
175
199
252
218
205
163
184
231
197
189
217
208
174
209
227
152
162
227
176
193
261
186
182
185
243
217
208
228
251
208
229
135
227
150
178
194
215
162
204
202
245
225
208
221
201
207
295
235
208
167
221
222
179
176
204
174
183
258
183
165
209
215
221
256
202
199
195
176
167
202
145
236
157
230
232
191
191
191
144
213
240
203
240
168
219
156
160
189
143
200
127
241
168
199
251
187
176
221
195
219
223
214
211
156
191
205
225
244
204
231
227
280
213
236
253
186
222
193
120
218
220
216
194
204
219
233
196
155
164
215
206
217
176
173
218
190
210
201
233
231
260
194
213
211
192
220
151
204
214
198
183
191
169
212
189
186
257
224
206
169
182
199
218
209
131
223
209
214
179
167
233
247
233
228
216
186
207
193
214
188
194
188
234
191
205
238
171
209
160
215
200
125
204
165
217
188
197
158
170
179
219
136
242
200
210
204
223
197
238
196
196
187
219
166
174
202
168
189
154
254
155
216
198
225
203
189
199
229
216
187
134
232
206
197
200
192
216
283
286
158
214
230
193
180
186
209
174
203
178
159
204
169
247
226
134
167
138
166
225
276
236
220
224
210
193
214
226
230
234
229
286
155
192
177
157
162
248
257
172
219
181
206
218
177
149
148
184
200
205
205
223
199
262
170
208
223
229
185
255
207
209
169
169
230
233
145
191
156
185
200
239
169
158
181
223
191
170
217
167
225
258
176
195
182
288
210
204
218
222
216
194
232
222
195
166
195
259
215
179
190
173
194
238
188
241
219
204
139
171
183
154
228
195
191
153
213
186
257
193
182
190
228
265
173
180
177
223
170
136
236
161
206
224
178
259
196
209
192
237
200
185
172
197
230
168
143
139
220
230
235
159
216
207
158
208
177
198
188
200
201
136
219
244
291
206
166
147
186
156
230
190
201
201
175
176
219
194
212
172
220
209
249
251
225
222
114
216
218
215
197
189
234
237
167
191
175
168
251
227
192
229
230
177
207
178
213
178
228
150
192
143
217
142
193
199
233
172
205
251
211
182
217
223
214
228
220
211
200
211
180
249
172
214
213
189
234
202
190
206
197
169
217
213
242
223
194
179
121
169
142
164
203
189
163
206
186
230
263
132
243
253
170
204
151
204
196
215
111
208
232
219
211
201
244
215
232
217
166
173
209
220
187
136
187
159
177
246
181
193
164
251
225
229
249
208
216
158
201
206
195
197
159
204
150
203
138
139
220
230
191
227
214
224
157
157
213
217
207
250
169
227
158
121
220
230
210
244
235
165
265
196
132
174
201
150
184
195
189
110
144
173
192
137
208
185
129
223
264
243
243
237
231
193
230
210
217
224
243
217
176
248
196
151
239
229
223
168
196
233
257
232
221
182
178
191
211
184
214
163
226
171
165
132
184
260
169
206
239
219
205
184
148
211
219
251
210
223
259
200
207
173
147
201
217
235
108
205
234
192
179
213
191
210
221
217
162
223
233
236
196
188
224
152
235
203
158
181
221
218
170
189
216
87
167
217
189
186
190
233
246
250
185
218
188
189
178
146
223
225
238
221
193
167
238
176
201
213
194
208
227
160
217
251
196
183
136
171
221
157
193
220
163
233
199
251
155
176
183
213
223
215
153
236
213
219
222
181
232
173
221
251
271
216
248
217
192
139
229
209
180
170
169
237
233
183
188
203
249
189
223
203
211
234
204
247
252
230
248
146
254
245
175
197
196
236
219
258
232
182
206
218
270
229
196
209
223
226
168
194
185
201
234
179
215
213
194
182
174
166
220
210
228
180
203
222
156
231
120
217
135
200
153
211
205
156
195
136
228
183
218
246
243
196
195
274
197
196
243
212
201
207
171
226
233
255
203
167
239
180
211
205
253
200
145
206
221
197
187
195
178
224
237
218
189
187
175
181
252
237
229
164
196
201
198
239
166
233
210
173
207
211
181
166
220
123
166
208
185
150
156
154
149
190
199
146
181
189
170
227
197
164
258
167
204
196
200
211
182
163
162
132
214
179
239
216
223
239
221
200
210
119
174
216
150
219
142
237
211
139
213
226
230
120
199
244
207
156
181
88
251
220
201
183
157
230
222
225
231
175
226
192
182
205
181
180
187
259
150
153
212
239
143
133
190
149
175
159
165
207
229
168
211
203
233
211
175
219
254
214
182
210
232
187
223
165
235
259
165
201
190
212
198
148
219
196
215
232
191
199
174
191
182
227
158
237
223
227
254
183
138
174
209
207
256
194
169
229
263
181
135
195
238
212
264
150
157
198
154
196
192
209
254
177
196
186
180
238
207
210
188
180
202
211
254
188
200
188
248
177
224
213
200
238
267
213
177
235
252
182
215
196
159
186
224
162
226
180
165
195
180
179
207
244
218
189
173
265
177
157
215
193
211
162
195
152
199
232
214
146
134
224
289
202
254
219
215
188
190
175
151
185
201
151
208
198
267
165
179
214
213
168
218
204
203
256
188
195
192
188
181
223
211
144
187
211
176
225
148
215
203
173
191
218
172
241
176
251
151
233
192
260
165
247
234
151
145
173
187
196
168
157
223
171
186
225
160
202
216
219
241
131
235
152
210
195
192
206
222
223
255
190
203
157
231
207
211
162
186
191
171
145
223
136
228
203
226
168
194
265
158
167
161
205
205
215
189
222
290
141
172
202
179
192
188
187
211
184
199
152
201
183
109
218
175
199
170
218
138
210
258
223
217
263
170
203
211
164
231
182
211
210
185
215
246
256
159
206
219
234
242
206
157
178
188
240
135
240
261
131
231
192
170
228
249
234
182
197
177
191
212
192
255
214
209
209
209
188
223
188
156
196
208
217
246
162
219
180
169
204
144
192
195
185
172
108
197
176
249
211
181
185
180
208
169
150
193
219
237
210
170
165
235
217
208
210
220
237
181
152
179
157
220
225
213
155
203
173
167
170
236
244
207
226
168
196
194
249
195
209
237
159
207
182
208
126
173
204
198
175
235
208
223
200
216
229
193
214
163
281
192
241
195
240
184
173
274
207
262
223
124
178
237
208
213
218
204
159
231
259
243
246
278
219
211
198
184
166
206
205
194
211
200
172
187
193
229
205
207
204
241
226
210
150
223
216
275
213
232
192
251
202
222
172
163
242
208
201
161
238
183
220
248
209
218
152
174
196
178
176
185
224
209
253
187
205
228
215
254
204
230
187
231
143
232
173
191
170
225
228
217
217
153
199
181
198
176
200
210
227
248
232
189
187
186
154
83
190
146
217
213
191
219
214
184
231
232
257
183
146
256
214
215
168
178
250
176
208
241
185
196
181
238
230
153
196
243
248
193
200
272
189
231
147
175
250
249
193
210
174
222
187
185
226
195
177
148
180
232
305
189
164
142
249
176
201
201
172
232
181
150
231
207
190
144
208
192
167
201
180
206
213
215
219
178
246
207
235
217
119
167
188
212
229
211
235
187
226
226
218
119
244
217
259
215
167
223
198
165
242
162
240
162
116
202
236
102
188
184
222
228
183
172
194
254
186
154
176
176
261
226
219
196
215
207
207
247
193
213
199
214
155
216
213
224
204
257
194
135
218
179
177
231
229
200
214
208
178
230
180
220
168
215
165
167
156
236
232
240
232
264
129
141
190
265
195
193
213
216
171
138
202
140
227
239
245
200
190
177
212
212
222
237
189
213
183
202
155
279
199
177
222
182
213
231
220
188
224
187
213
178
177
193
195
236
230
157
192
218
188
222
179
182
190
250
249
177
234
140
208
196
245
235
205
158
191
195
232
174
271
211
207
165
134
191
155
133
198
212
112
224
257
242
167
168
216
191
208
174
177
164
233
230
222
193
225
164
200
221
203
216
171
228
194
229
192
132
167
208
170
243
176
208
170
192
227
142
152
192
153
225
184
209
129
210
223
246
174
152
202
138
209
232
232
225
214
214
214
205
243
248
162
185
240
164
221
237
203
187
215
191
217
231
178
223
213
232
222
184
239
127
234
211
164
220
244
240
170
215
225
206
254
118
219
189
157
173
184
158
166
215
207
234
224
190
173
271
209
166
271
231
215
235
182
219
223
186
171
165
209
202
124
225
174
166
166
238
192
208
202
180
208
218
181
223
186
216
194
226
218
187
252
226
255
210
199
188
212
231
197
145
224
254
216
124
146
205
216
161
191
229
206
148
239
241
236
164
184
159
209
242
234
150
278
230
163
220
216
147
172
237
194
200
224
179
132
190
182
160
214
224
217
226
248
224
189
187
239
219
196
179
188
220
188
231
190
159
250
176
226
126
184
183
269
254
173
215
152
267
225
231
195
263
189
231
191
258
159
220
245
226
195
194
164
184
251
179
173
212
227
227
137
220
153
168
191
178
173
207
216
202
119
243
220
209
226
222
160
208
173
206
176
196
180
213
227
198
199
160
217
183
241
200
202
234
165
179
222
183
206
184
210
181
166
207
207
236
221
132
218
182
167
225
174
214
228
217
227
166
172
229
196
133
168
199
251
193
264
214
234
210
213
140
199
193
201
132
203
229
185
179
215
207
216
200
245
188
216
154
128
201
239
216
206
170
142
141
256
147
213
210
208
187
184
183
231
212
180
191
262
155
229
140
228
220
123
165
231
169
236
212
171
242
224
191
211
209
167
194
194
228
198
178
146
222
234
133
150
209
210
221
201
169
176
271
182
177
202
182
214
197
214
211
259
161
250
206
228
247
232
197
195
218
140
282
214
171
282
219
248
198
235
263
223
189
184
252
185
227
192
248
250
238
221
229
215
147
221
180
262
172
212
242
204
176
253
185
178
216
253
213
185
215
180
247
241
151
174
250
224
211
171
204
185
255
111
252
172
195
220
177
251
160
206
148
206
207
195
216
227
276
185
202
120
222
185
167
226
191
238
165
169
210
137
171
167
169
167
236
166
142
147
168
270
139
229
167
272
176
175
190
176
232
150
180
207
259
204
216
235
157
184
218
164
222
221
224
152
217
221
194
176
239
255
207
160
225
207
173
183
256
170
243
262
234
117
205
199
180
219
211
275
182
256
157
199
216
241
250
161
247
231
153
189
257
209
193
223
202
158
161
249
188
207
177
168
200
165
239
245
208
253
124
190
229
191
258
194
163
190
216
159
129
209
220
198
118
203
212
192
187
161
148
196
200
201
198
199
199
233
185
198
221
265
174
192
259
211
179
188
252
202
210
139
217
171
193
160
277
207
248
169
182
218
193
204
154
181
212
254
149
225
164
231
133
134
236
171
208
198
202
253
152
211
205
164
183
227
201
189
161
185
184
196
182
207
142
132
201
159
195
211
221
216
206
202
170
181
196
148
159
194
214
233
228
202
177
199
187
239
222
233
202
219
156
189
210
184
192
213
182
174
191
186
251
175
274
220
137
181
176
199
186
199
204
213
203
237
247
185
198
228
184
192
230
173
131
219
220
207
177
183
196
161
149
118
173
247
123
235
182
243
243
199
231
216
161
180
229
255
262
160
214
187
182
207
225
159
242
225
246
162
227
183
217
216
225
210
180
241
272
192
234
257
256
158
170
162
262
218
246
210
198
160
161
235
205
121
237
211
167
222
227
208
207
197
258
256
203
183
210
292
185
215
218
201
193
207
148
208
191
187
230
167
219
204
170
154
181
275
179
237
232
207
249
258
179
229
183
179
181
139
197
178
221
171
213
182
160
147
186
216
261
223
209
183
225
148
183
182
189
183
215
218
163
220
191
182
198
174
210
218
207
192
200
171
208
198
246
176
200
211
226
233
243
249
158
204
203
193
234
213
188
153
157
221
170
231
150
261
204
179
154
190
233
202
209
229
213
248
168
109
175
157
188
189
132
199
253
185
208
194
192
203
213
145
215
164
166
243
249
219
183
194
145
161
172
185
219
296
147
243
266
187
252
135
235
205
174
243
140
188
146
218
228
191
201
148
239
219
172
200
84
241
210
247
185
184
189
206
195
186
211
214
180
238
250
204
199
101
163
208
182
236
227
164
197
196
215
194
234
214
201
221
187
178
252
252
171
184
203
186
185
199
177
193
185
187
153
243
252
263
197
240
181
137
194
193
165
155
223
226
203
215
254
219
186
204
253
214
205
173
222
147
258
199
218
246
200
170
219
197
173
186
230
238
211
199
180
209
194
172
241
194
232
180
104
197
282
210
170
157
181
212
228
187
162
209
191
185
204
133
144
217
194
173
190
207
234
173
182
256
236
136
182
136
180
226
234
225
181
154
189
210
214
214
185
216
166
145
238
202
220
201
236
197
205
170
188
244
214
187
196
152
241
211
188
206
244
218
205
177
190
235
174
197
199
222
214
204
169
203
231
191
174
267
153
189
237
174
240
177
188
262
233
206
193
243
141
197
174
201
213
216
223
133
201
218
204
181
189
191
213
226
214
208
231
233
138
215
151
209
156
156
218
186
180
236
150
189
228
189
218
239
210
166
188
195
200
242
207
227
136
187
215
218
172
231
184
237
203
201
198
167
144
211
214
220
240
239
242
177
201
199
160
189
161
128
223
231
174
219
163
185
192
197
204
252
180
158
236
260
186
231
168
189
181
172
196
167
168
174
199
171
185
215
145
202
135
228
181
198
199
100
236
226
167
248
143
171
237
216
167
230
185
179
169
182
206
180
232
236
214
208
222
233
176
215
259
202
201
178
135
103
170
149
171
213
172
226
183
220
170
219
200
199
202
181
208
231
102
278
144
98
252
192
283
185
200
154
172
271
186
201
235
243
171
242
181
224
170
112
221
254
176
106
168
130
226
125
197
249
154
118
165
271
212
238
244
218
250
255
194
245
184
180
198
164
207
204
205
188
158
259
173
179
173
235
210
238
184
191
227
193
185
214
195
150
218
159
215
174
161
251
229
257
204
232
163
142
201
151
233
184
220
197
175
179
200
237
192
172
180
218
224
190
186
128
193
205
228
197
150
220
223
203
211
226
203
153
227
215
218
175
168
170
182
193
219
213
197
126
166
197
199
215
223
223
248
237
192
182
198
244
185
171
162
196
184
164
275
215
114
173
185
193
194
219
192
167
147
208
247
209
188
226
232
215
233
200
170
194
192
204
168
199
147
204
230
251
242
180
243
239
205
169
190
268
173
213
175
227
247
161
237
199
197
211
225
170
205
195
187
210
199
205
177
220
174
181
216
238
182
230
176
247
163
154
182
207
247
267
160
206
227
177
207
197
216
204
227
241
185
194
205
236
139
198
206
183
169
219
266
198
202
233
219
188
166
189
245
153
163
248
202
218
164
186
213
202
192
180
128
129
144
152
158
266
195
208
176
257
186
105
205
154
252
242
202
195
194
179
147
158
145
210
129
197
197
161
193
204
240
210
223
118
170
194
160
195
221
185
245
258
113
217
205
210
198
255
242
168
156
127
241
185
215
156
266
178
203
185
243
227
181
221
158
199
137
200
153
211
212
230
260
179
243
223
174
258
226
189
204
241
194
162
176
235
199
167
153
219
207
147
245
213
207
246
204
219
203
171
172
217
205
249
152
204
177
194
183
247
163
209
230
176
185
270
197
162
162
218
162
176
211
273
222
250
216
242
222
163
225
98
209
186
201
177
226
209
218
229
241
257
243
201
183
202
239
220
202
199
207
202
220
215
214
198
194
245
118
207
171
206
183
202
197
180
233
147
246
211
119
205
234
230
208
181
197
224
204
246
139
187
187
230
238
190
221
234
204
165
221
222
243
196
179
223
210
144
234
219
243
225
197
94
219
202
160
233
130
268
205
196
256
216
199
256
220
204
197
223
183
202
226
235
177
193
164
154
244
163
175
198
237
202
184
215
166
198
190
196
197
215
185
224
219
189
227
215
182
197
166
212
192
191
206
220
256
243
216
208
160
210
171
208
228
261
220
192
170
210
234
207
162
224
178
241
251
212
225
286
174
144
180
248
231
206
155
164
205
199
232
203
224
209
239
184
207
204
187
213
244
211
137
247
204
209
206
222
211
318
210
178
204
238
174
142
130
229
240
169
233
171
213
212
223
162
256
204
258
155
207
205
202
163
242
268
176
219
230
236
218
194
207
292
130
161
194
255
199
189
226
226
218
141
222
226
217
215
198
210
207
242
210
230
190
234
180
159
203
248
176
199
210
194
150
212
171
202
206
192
283
174
242
254
203
255
177
172
248
215
200
229
281
159
235
209
213
207
175
184
211
137
217
185
173
211
155
248
258
170
220
242
214
161
232
186
130
186
171
188
235
199
199
162
220
271
188
184
159
210
221
218
201
171
234
220
225
240
203
257
167
219
189
236
147
192
201
220
214
229
206
240
244
233
258
237
209
181
227
212
260
224
204
217
200
184
187
240
205
184
225
185
156
237
217
238
236
192
195
168
214
178
200
165
214
184
232
172
164
250
216
210
273
200
170
171
166
216
224
186
187
204
175
217
222
202
260
176
218
210
194
211
197
247
194
173
150
200
224
225
190
217
212
232
172
216
213
183
194
149
180
232
239
217
190
198
161
246
138
175
244
153
184
168
195
209
223
170
183
224
238
222
237
222
203
235
218
229
253
263
167
178
240
186
181
173
231
214
195
272
239
179
188
165
190
257
194
232
236
176
229
200
259
275
149
205
228
185
209
220
220
233
116
128
145
243
230
196
193
190
167
234
152
231
189
137
231
150
215
171
228
197
194
187
245
150
224
208
162
171
215
217
226
223
215
232
180
224
174
302
211
182
211
187
170
181
228
164
216
230
263
215
185
201
206
204
232
184
219
139
258
237
195
208
226
186
177
282
213
209
160
223
213
209
225
264
224
186
200
229
192
169
230
133
212
164
171
232
202
155
167
143
197
257
274
234
185
168
201
196
193
207
181
239
156
201
213
185
188
208
209
142
214
181
140
258
219
230
172
232
225
169
193
270
222
184
165
192
150
250
158
244
148
231
242
157
188
261
163
201
147
239
242
136
212
147
200
221
237
178
160
190
192
230
204
268
230
150
166
261
163
167
184
164
215
191
206
184
193
238
262
267
262
246
218
200
236
212
233
198
198
199
193
130
183
185
214
169
141
249
183
175
166
167
222
203
178
194
179
213
197
230
161
238
280
230
228
228
194
218
247
131
206
209
191
205
201
218
249
187
221
177
234
175
121
186
188
156
241
195
239
150
233
161
175
255
264
210
200
190
206
242
203
218
129
222
210
151
198
195
235
214
197
174
242
123
237
230
193
172
208
218
214
275
140
212
180
224
188
182
226
227
172
183
231
202
206
158
256
202
202
217
159
188
174
256
165
202
154
143
249
216
162
244
235
172
251
245
243
204
219
219
211
221
235
147
178
180
208
144
214
269
238
146
190
193
193
155
188
173
221
261
163
225
202
217
256
194
259
260
148
197
164
154
162
201
191
231
196
223
162
195
207
245
230
203
251
216
191
232
170
157
224
217
173
140
186
213
164
211
207
206
211
186
263
187
214
136
246
139
209
158
194
221
191
233
207
244
237
280
187
244
147
198
218
210
135
157
174
249
232
193
199
217
164
209
259
204
258
188
188
210
246
169
212
136
189
205
195
199
160
186
148
193
257
219
197
173
223
190
195
247
196
172
205
216
186
236
210
193
178
207
219
238
184
211
222
276
181
168
229
194
171
202
181
203
218
182
144
184
175
165
209
257
245
171
218
221
206
163
257
234
238
197
237
244
173
251
201
203
198
225
166
214
222
207
176
197
209
241
182
217
191
181
234
212
235
193
248
176
235
95
224
180
207
229
246
190
198
213
184
227
222
153
220
142
212
146
216
205
130
206
219
230
243
238
154
252
212
253
221
192
210
178
169
179
233
222
197
217
162
211
172
162
210
152
166
192
147
253
202
182
195
222
253
199
225
157
230
232
199
170
201
167
189
188
209
205
178
243
186
196
198
201
218
209
187
193
224
204
221
221
242
153
197
196
197
200
196
197
246
236
179
180
195
194
203
174
221
176
187
207
199
224
182
136
201
163
224
150
165
195
213
169
155
251
230
225
144
188
194
173
212
213
211
180
190
233
185
245
214
223
209
244
159
235
176
188
203
206
272
189
164
213
200
220
194
196
216
236
156
251
184
216
154
276
249
166
235
233
206
183
174
168
198
263
234
190
221
179
236
218
234
159
225
271
216
168
235
207
252
268
216
167
154
184
216
211
248
199
225
201
223
171
208
176
207
244
239
239
230
214
205
284
237
184
249
230
195
194
192
213
148
160
209
176
224
220
178
173
165
202
262
227
217
205
190
225
220
216
163
170
246
167
214
240
125
199
157
207
200
151
201
225
124
180
156
267
186
188
244
195
166
176
146
222
236
266
191
184
200
242
236
222
178
199
189
198
219
248
231
214
206
187
202
193
174
190
265
230
210
188
177
186
167
246
149
198
194
227
178
252
189
186
197
213
227
137
186
239
147
177
243
213
186
179
201
197
216
201
259
205
224
217
209
162
178
201
138
228
195
235
221
217
227
235
174
197
144
174
187
216
129
195
176
126
231
221
192
282
198
189
169
200
230
171
180
209
200
218
224
176
190
184
182
197
141
165
225
221
214
123
181
168
239
222
170
165
210
195
218
206
285
115
176
170
136
181
201
246
215
159
201
206
248
133
101
246
201
167
201
229
200
199
136
212
174
233
172
259
180
216
191
260
202
198
210
190
286
191
134
191
199
193
161
186
181
209
187
174
215
212
161
209
206
248
198
218
241
207
213
221
133
202
193
197
269
192
177
220
148
218
185
261
235
211
191
137
180
230
206
199
203
167
237
205
236
189
155
225
199
225
231
219
164
229
204
209
141
223
167
170
229
192
205
254
204
183
218
232
244
204
251
201
173
134
184
198
263
196
228
279
244
231
189
223
172
176
250
193
155
179
210
222
193
229
237
161
198
194
202
217
194
153
163
239
198
228
197
258
215
193
184
172
223
229
227
124
168
215
217
181
199
204
144
190
190
148
170
241
173
191
213
244
151
202
221
187
169
252
154
125
228
217
232
186
179
277
172
166
176
239
261
146
193
232
140
246
213
207
176
196
182
200
192
194
214
154
229
196
151
184
138
279
221
166
221
246
227
181
223
197
220
200
171
253
207
246
162
144
241
212
178
148
181
242
125
209
206
202
205
219
241
262
206
226
243
179
234
233
252
261
233
183
207
226
159
165
245
117
151
122
237
213
202
229
188
193
205
272
178
233
185
181
221
186
177
168
187
234
220
262
201
205
222
173
235
191
205
145
247
158
187
227
188
179
173
215
212
211
216
186
209
210
199
214
209
193
170
174
206
204
202
226
211
201
244
195
168
164
242
232
233
167
187
246
234
160
161
198
227
136
184
202
266
234
135
196
223
136
201
210
215
226
229
219
250
201
165
245
176
176
228
192
176
184
203
212
217
244
195
202
172
199
245
197
230
249
208
195
209
200
206
177
192
155
151
169
219
133
171
196
227
160
95
192
250
218
213
191
131
191
216
156
183
161
208
182
213
205
189
164
241
217
228
195
245
166
201
240
250
208
195
223
206
179
211
198
189
202
215
206
180
183
174
217
244
186
142
209
200
226
209
225
206
256
118
195
230
214
221
182
242
236
247
223
208
155
209
198
157
181
191
179
253
234
149
172
202
192
185
174
225
181
271
213
158
209
223
245
213
149
187
201
195
234
211
230
236
231
210
193
187
177
213
195
248
260
229
227
234
179
151
208
141
215
254
223
226
236
174
205
188
245
205
225
247
141
159
231
219
147
201
200
127
258
262
222
183
219
263
183
181
183
212
216
164
145
202
167
175
216
151
204
187
219
172
223
215
149
172
198
228
263
213
182
180
239
187
218
173
211
177
181
212
223
175
231
236
128
210
233
180
131
245
229
241
222
234
165
201
176
138
159
163
224
191
198
169
216
184
257
168
171
193
263
235
174
248
225
214
184
240
175
193
203
228
190
257
219
188
210
177
215
222
213
172
125
187
153
182
205
181
193
150
260
207
212
173
216
196
171
200
205
205
234
202
187
222
178
163
228
243
218
182
220
148
272
211
287
205
199
131
191
200
188
228
114
235
216
189
186
248
208
200
197
231
145
156
205
196
143
201
211
199
170
261
232
222
225
245
217
254
169
202
247
296
144
144
190
234
150
171
218
193
259
222
180
204
187
217
157
180
210
232
217
228
159
161
254
214
202
243
164
216
198
79
196
207
237
200
238
184
235
203
208
121
213
232
207
162
225
213
198
215
202
203
227
140
232
178
173
220
195
255
199
200
205
235
259
252
219
171
206
219
215
216
212
260
192
208
227
211
197
191
190
182
202
212
148
162
143
213
206
208
182
229
205
187
246
228
211
232
181
197
188
191
163
247
162
197
250
189
209
151
189
207
210
158
215
232
225
136
265
212
194
191
179
174
218
138
238
223
196
211
219
213
272
227
207
173
221
240
194
205
142
227
140
153
203
239
186
194
237
141
273
194
198
222
215
163
207
214
141
283
230
189
204
219
198
244
210
216
230
165
198
192
194
194
225
196
168
157
182
233
170
227
143
161
149
209
218
140
130
172
164
158
171
227
222
177
220
201
174
167
183
200
159
209
208
224
168
218
186
179
186
185
258
204
170
176
140
164
198
209
254
250
222
205
177
194
216
129
282
130
229
210
245
251
206
277
192
189
221
236
215
179
199
202
158
142
226
189
221
160
225
239
176
219
171
172
207
197
250
209
197
195
209
206
162
193
189
263
199
188
218
210
177
204
183
232
156
234
198
234
187
163
249
205
240
211
230
203
161
172
204
244
177
222
138
242
170
213
195
140
180
193
154
207
249
192
240
225
231
202
175
202
166
212
194
212
247
231
229
196
244
132
181
175
174
196
177
176
226
180
193
196
220
181
194
170
181
227
141
277
201
218
220
157
182
218
224
240
208
255
212
216
214
256
231
194
221
199
184
172
196
170
236
257
207
156
215
272
167
146
211
182
258
167
179
181
198
203
186
207
192
214
243
220
187
259
231
250
168
236
199
190
152
216
187
145
148
220
217
164
142
163
174
210
168
246
185
162
158
232
251
170
235
226
213
136
176
190
215
137
168
169
226
166
221
182
237
181
216
183
178
147
223
258
206
250
255
166
264
206
198
210
218
238
212
235
153
242
179
141
199
183
178
209
182
224
196
216
166
291
228
192
179
233
232
197
196
187
116
254
172
218
132
242
226
206
210
165
222
177
195
204
212
166
177
199
229
245
247
223
221
181
230
200
180
232
275
185
209
257
196
233
224
255
172
235
225
101
214
257
272
193
203
201
137
140
107
204
146
191
194
233
214
197
259
180
197
200
182
208
196
207
187
219
151
209
256
233
225
221
195
181
120
230
155
205
197
168
223
241
157
224
189
213
183
138
220
204
189
191
182
227
231
202
182
193
185
200
159
238
210
250
202
189
134
139
202
206
264
222
155
252
169
266
128
181
147
197
169
169
235
201
246
222
167
184
186
206
225
218
220
165
245
215
220
229
149
204
218
177
253
235
227
220
146
225
152
214
215
215
137
243
228
200
163
186
251
129
223
212
256
185
198
173
221
198
228
200
204
144
162
270
193
197
187
205
169
218
187
194
121
150
217
189
260
220
258
163
217
219
226
180
244
169
187
176
231
231
232
222
200
165
199
208
198
235
164
148
210
240
174
189
202
220
127
189
210
174
210
175
228
147
198
166
121
146
152
224
247
228
190
226
224
236
194
229
234
219
213
244
208
168
128
184
153
234
199
229
151
192
146
212
242
202
242
223
231
160
245
202
183
224
176
196
176
211
139
242
210
233
223
236
212
203
204
236
195
212
147
206
248
170
208
197
198
204
205
243
225
271
193
229
146
155
244
252
251
226
208
188
218
164
256
201
198
168
140
266
188
197
209
233
170
203
117
175
209
233
246
184
200
192
141
179
185
199
195
243
207
203
282
161
227
217
245
136
182
161
250
197
197
167
209
201
225
205
206
168
190
215
221
241
248
183
255
185
170
224
224
214
199
186
196
192
190
192
217
164
242
144
224
217
197
195
230
203
144
251
189
166
129
154
137
158
177
226
184
229
138
240
237
180
194
242
181
212
129
181
208
173
217
177
242
211
169
204
188
172
231
197
206
216
187
158
236
189
271
231
152
216
235
167
189
215
241
175
251
244
188
162
236
127
192
212
244
169
231
189
137
187
186
245
164
226
137
201
235
259
225
170
254
180
231
193
153
232
230
164
180
238
245
139
244
263
168
176
181
213
168
208
191
221
241
207
182
180
189
205
174
209
227
190
173
249
210
214
170
263
237
243
176
200
230
204
197
224
245
203
255
154
168
221
228
104
218
198
210
153
184
238
207
229
236
261
216
152
227
119
211
211
213
218
203
214
176
175
210
174
154
182
215
229
152
187
201
237
165
181
214
231
246
237
122
189
183
231
181
135
162
171
260
228
212
200
233
201
233
215
183
126
224
182
269
180
263
200
232
205
199
205
143
226
230
212
209
148
156
173
159
264
196
217
194
209
189
181
211
232
209
194
169
168
191
173
177
226
152
200
221
191
188
110
195
234
154
217
174
207
210
236
200
224
209
230
180
191
202
190
212
236
177
168
206
144
205
203
224
160
175
241
224
212
194
179
195
153
164
205
230
257
213
263
178
257
230
175
169
224
211
166
221
228
157
173
247
195
221
209
160
179
191
216
188
214
229
204
138
188
149
227
192
216
198
179
172
235
171
251
217
205
247
209
204
217
189
107
148
216
160
214
144
201
228
261
199
212
235
237
219
222
194
262
173
185
227
212
253
248
244
112
217
191
195
206
214
247
199
230
224
202
188
229
198
181
228
256
267
208
187
185
199
224
207
198
208
203
191
255
196
178
186
195
153
167
241
159
142
223
150
266
213
197
216
257
241
137
283
238
211
258
188
199
215
196
235
175
258
155
188
221
212
231
195
226
206
208
142
163
189
119
145
204
174
137
181
208
98
230
195
196
240
219
174
181
235
201
211
228
153
245
214
189
269
150
168
231
175
153
188
140
240
121
178
201
236
259
236
218
212
234
292
199
212
246
163
159
167
156
164
240
190
185
174
206
201
249
226
180
204
229
154
238
233
168
174
205
232
223
244
176
132
180
236
277
212
119
176
232
189
178
257
198
245
217
219
219
214
147
213
190
185
261
253
203
190
220
177
238
195
192
190
216
195
234
175
202
219
240
201
183
202
197
180
189
174
274
186
181
261
193
230
135
208
233
185
197
270
170
212
174
280
161
219
175
164
217
194
193
215
265
251
235
201
241
159
167
167
250
164
173
256
209
195
225
187
185
175
217
181
201
199
152
199
174
208
230
199
190
238
166
174
229
195
189
197
269
166
116
137
201
211
192
165
238
185
189
234
160
209
166
134
216
203
232
140
183
198
206
181
160
221
186
186
233
228
197
198
254
216
238
139
216
211
221
229
183
181
227
213
213
193
186
263
240
192
183
233
214
212
220
165
188
204
206
197
195
155
181
168
224
174
177
167
231
174
136
156
133
187
164
225
199
211
261
161
200
162
191
241
162
273
150
213
209
246
238
178
253
235
206
167
222
161
198
240
175
230
185
152
232
96
287
191
242
225
189
163
199
202
159
212
144
244
242
155
244
184
193
172
156
192
239
269
208
217
240
166
211
210
190
170
270
172
196
177
192
190
246
205
191
162
169
250
224
190
263
193
161
228
196
215
208
151
247
195
216
104
176
249
211
177
182
233
161
260
218
227
206
248
258
163
178
229
175
208
197
219
212
218
221
229
163
222
189
168
171
192
169
220
158
194
219
142
198
199
216
230
239
185
213
224
187
185
229
256
180
169
219
208
198
211
190
158
135
142
184
176
250
244
168
165
259
150
182
193
196
180
210
221
145
198
210
163
222
188
168
247
187
233
257
260
194
198
205
242
261
268
162
189
218
158
221
167
174
173
209
179
183
193
131
214
210
116
150
159
224
208
180
196
176
220
170
163
258
222
192
254
225
234
184
200
258
213
207
193
181
220
149
245
175
234
243
161
146
213
214
275
168
194
115
219
216
244
131
138
159
185
164
208
181
182
201
211
226
278
210
191
191
171
137
187
234
171
227
228
196
266
189
208
202
171
211
233
157
202
149
215
160
168
166
255
248
140
264
249
196
201
211
202
199
188
173
206
239
167
259
232
137
168
177
164
211
251
231
180
206
237
185
228
152
250
188
145
132
159
211
216
173
165
201
249
218
185
219
170
216
250
173
213
215
218
202
184
209
106
223
237
169
206
167
193
131
213
246
217
235
151
169
188
194
219
209
241
227
147
226
182
208
246
253
199
184
208
180
180
202
186
197
197
192
202
230
230
191
237
182
215
174
238
172
128
235
178
229
245
146
186
203
236
158
184
163
224
198
215
214
209
231
215
190
190
194
205
204
243
172
201
232
125
226
194
181
217
190
221
164
205
251
231
184
300
213
227
253
182
211
197
207
258
176
182
168
176
258
209
211
171
207
141
175
218
159
239
174
210
222
259
196
211
156
150
236
134
271
241
169
228
188
138
212
204
219
222
140
203
229
153
226
231
219
243
224
183
202
161
166
180
190
184
208
198
195
187
248
266
206
216
229
154
260
209
225
211
235
209
223
221
255
221
239
216
239
243
218
223
241
130
177
248
209
219
155
244
198
221
201
213
141
180
178
192
210
260
232
185
183
158
219
215
172
155
244
210
224
210
184
194
233
217
207
129
194
173
198
213
216
142
167
162
178
256
260
209
212
164
158
187
218
246
164
264
184
173
276
209
194
170
207
193
180
213
153
212
208
170
230
167
132
143
211
193
239
152
153
240
146
160
235
185
164
178
207
264
218
212
174
185
202
195
180
240
235
184
194
167
221
219
157
210
224
174
232
244
264
241
252
194
229
194
200
186
248
178
222
183
218
200
247
176
152
143
181
228
219
193
203
236
140
173
225
237
233
228
204
256
191
178
228
232
217
187
188
225
198
181
191
211
154
270
156
158
262
255
158
236
231
190
226
144
206
188
269
200
148
221
184
241
192
228
278
129
173
219
167
158
218
207
244
256
226
235
181
167
191
197
195
186
185
206
249
127
191
204
193
258
232
195
171
218
103
129
203
232
179
162
167
206
206
226
130
213
209
213
222
210
176
195
134
154
215
189
179
185
175
209
152
203
189
246
188
133
181
254
215
258
128
220
254
198
188
219
152
259
198
179
213
232
237
215
158
273
180
243
157
222
206
276
245
163
210
234
180
214
246
221
272
215
185
173
239
220
167
216
193
121
199
210
189
144
182
167
185
215
203
229
264
206
231
228
237
208
134
236
223
195
168
156
186
215
219
165
209
217
164
212
188
196
191
198
202
180
268
199
189
178
205
236
145
162
204
216
139
189
234
222
176
160
203
239
260
195
172
210
162
203
255
241
152
175
148
195
170
213
187
173
201
192
218
154
258
179
256
172
131
198
198
186
194
188
194
243
210
220
169
281
236
216
239
191
262
206
223
203
219
203
207
217
282
212
219
202
268
197
236
204
193
201
154
110
219
222
193
172
213
176
211
226
195
195
169
226
213
235
228
181
239
232
153
189
253
217
228
260
259
166
186
174
205
122
196
176
225
224
210
229
193
150
230
217
255
236
234
230
207
226
192
176
204
229
149
153
216
231
141
192
193
229
133
157
142
213
224
183
215
212
145
263
210
162
219
155
240
164
249
201
234
199
114
229
218
237
222
172
150
189
212
221
234
210
217
163
187
217
171
182
198
203
184
239
217
213
162
167
173
211
195
211
203
197
205
201
233
260
198
133
192
233
227
206
247
247
189
171
184
220
237
167
246
213
144
187
197
260
125
179
240
260
186
203
217
225
165
198
259
155
245
180
177
219
240
186
222
160
222
289
217
239
145
194
216
175
159
208
238
127
247
215
204
257
119
244
264
192
227
199
161
163
198
257
172
217
214
203
218
246
196
125
237
187
170
227
196
211
200
189
229
205
216
231
163
191
186
170
255
191
236
224
176
206
222
217
220
197
215
183
225
231
162
184
261
232
193
201
196
245
267
242
171
144
218
204
247
258
189
206
206
176
274
241
276
121
194
162
201
169
231
173
184
244
197
203
197
223
198
215
175
196
165
209
236
225
189
144
133
211
175
191
217
186
233
225
164
234
170
205
183
220
226
196
190
187
133
210
165
220
243
182
197
205
268
197
162
190
161
202
191
153
177
219
212
258
195
174
217
213
186
224
134
95
134
192
196
200
230
222
138
163
207
153
99
210
213
184
236
238
218
165
162
200
173
177
231
166
213
169
161
179
233
177
228
207
222
152
197
210
248
223
196
212
165
128
144
216
162
235
194
187
150
160
238
208
215
196
202
138
229
207
194
180
233
270
177
188
179
122
179
243
180
135
234
197
256
182
251
211
210
148
177
249
186
215
239
187
220
220
228
187
156
213
202
210
184
196
209
255
203
168
122
224
196
188
199
184
124
182
185
163
180
182
236
157
181
202
114
170
194
193
243
179
201
210
183
148
160
166
152
192
165
189
171
227
196
208
130
223
191
192
190
193
189
215
271
234
207
263
203
247
175
204
216
188
219
166
182
211
217
229
238
194
214
209
215
247
169
227
171
170
108
187
251
226
244
220
116
239
203
190
175
164
158
215
166
200
133
159
168
226
173
187
253
157
145
254
170
186
201
215
237
164
224
101
230
152
209
203
217
168
196
161
215
225
194
220
286
182
213
219
197
210
159
230
245
217
181
168
220
175
170
167
235
184
198
185
197
177
163
214
231
194
216
231
197
196
157
235
169
168
211
193
234
186
230
176
207
223
212
172
215
202
201
182
141
179
171
194
228
177
137
220
205
203
229
164
203
207
236
206
227
241
220
231
184
179
150
216
217
225
202
216
140
233
217
248
192
163
194
183
225
205
226
169
104
193
165
177
106
251
180
210
194
138
221
208
206
183
170
185
244
221
180
250
168
201
171
177
197
140
244
140
141
238
178
238
207
141
140
201
168
195
208
159
187
182
214
273
220
188
232
210
182
209
191
206
225
149
216
206
228
162
139
252
217
206
218
231
225
163
228
206
168
205
213
178
219
230
187
137
142
145
182
155
223
218
201
180
163
194
210
148
174
214
167
256
251
242
167
232
214
158
248
238
257
132
234
166
237
246
206
192
162
166
178
131
199
180
253
281
201
208
211
181
225
198
190
171
196
204
244
198
214
200
265
177
204
234
245
220
201
268
264
263
188
201
186
195
182
233
213
229
180
240
206
161
134
223
291
170
249
156
157
232
218
193
213
216
254
192
221
215
166
198
185
222
253
110
235
242
222
230
159
214
217
167
229
161
219
179
268
216
232
199
188
230
246
168
257
178
197
225
257
211
139
182
166
206
185
234
203
230
170
178
120
164
213
249
194
201
157
237
179
171
196
202
143
208
168
224
217
121
211
166
205
279
200
219
212
195
200
225
163
237
143
204
217
189
254
245
219
198
191
223
214
176
217
189
216
182
252
243
251
235
221
219
199
248
239
158
213
229
197
242
223
198
230
228
232
150
172
174
213
218
160
229
207
240
203
239
151
225
215
152
144
235
234
256
180
213
169
200
217
186
214
159
161
214
159
216
199
200
267
199
173
199
218
169
179
198
250
173
191
206
150
274
186
195
185
186
204
206
198
197
169
258
176
168
195
193
203
261
174
206
232
236
116
151
196
158
152
203
142
188
258
206
216
247
223
252
164
223
215
243
178
196
160
195
183
237
220
181
224
212
220
188
263
168
208
168
170
181
222
231
200
245
196
191
203
199
174
217
268
158
247
163
205
180
212
243
205
203
190
169
213
179
180
214
240
168
176
182
195
217
213
231
235
166
240
214
175
167
178
237
182
227
207
146
222
186
217
225
154
199
217
249
249
248
222
172
201
269
250
162
182
260
228
208
219
225
167
207
157
188
225
223
184
194
221
261
171
253
203
200
209
191
183
213
247
140
177
257
244
224
232
210
245
172
177
159
195
169
185
246
133
242
181
216
201
217
135
201
221
237
238
258
217
217
230
223
154
237
209
158
200
168
238
200
236
183
169
233
225
144
249
183
179
149
212
171
247
124
130
210
203
197
209
214
156
235
156
166
199
271
162
194
252
174
264
204
263
215
210
200
220
178
258
151
194
210
252
183
223
232
185
193
211
210
211
171
203
169
196
177
127
162
195
208
208
192
167
161
207
216
226
184
266
217
182
163
102
165
155
231
192
226
224
154
139
167
162
211
255
191
144
207
191
234
215
281
173
228
182
240
197
182
212
222
226
234
227
187
213
265
251
188
169
174
170
203
162
239
215
203
209
204
177
193
207
174
254
260
219
165
184
233
136
244
201
190
215
207
187
235
215
194
159
226
210
167
169
193
254
229
159
175
176
152
290
180
194
204
229
157
228
181
173
227
276
110
184
237
226
178
225
207
248
186
187
175
248
192
148
242
185
249
249
250
198
219
199
197
213
186
220
171
210
220
236
177
232
209
221
160
186
197
257
239
184
188
164
182
213
226
230
182
105
194
245
249
222
205
243
169
249
193
156
177
185
189
150
212
246
211
141
203
201
225
200
210
176
159
234
210
216
156
175
147
246
197
191
194
222
226
224
217
249
163
226
196
240
136
241
236
164
252
212
256
196
172
159
230
192
153
185
178
227
248
182
253
265
206
233
147
153
216
162
197
205
168
212
191
200
216
183
244
177
178
199
179
207
198
167
249
168
173
187
166
222
230
132
179
188
258
168
181
176
221
216
220
201
260
232
236
210
205
219
207
222
221
214
203
191
206
239
216
166
172
165
133
203
190
145
240
210
174
153
132
256
222
253
177
206
205
143
152
174
174
173
271
182
203
257
248
189
222
165
229
198
193
220
220
221
213
162
175
233
218
170
167
214
148
249
181
172
162
209
249
231
239
200
176
205
261
291
203
146
182
221
227
139
209
210
235
222
154
225
182
174
238
196
207
248
139
205
176
168
177
222
207
155
195
180
150
177
213
223
167
245
211
189
211
176
206
189
194
176
273
212
188
164
241
184
188
164
155
194
203
187
229
176
153
162
213
189
186
255
198
201
189
175
272
183
196
206
175
245
239
200
223
222
213
124
246
152
251
242
197
164
210
217
226
181
168
132
167
249
112
140
221
254
199
192
221
211
222
250
164
162
197
205
200
180
214
271
190
234
231
146
200
243
217
216
143
175
207
214
199
278
186
235
206
236
144
166
271
200
194
194
205
165
163
134
196
216
172
178
245
172
192
160
220
202
120
206
246
196
159
130
198
127
209
164
187
134
187
223
128
227
239
197
170
150
189
127
254
252
248
232
202
188
231
190
209
190
157
235
236
177
256
199
211
201
240
165
207
218
245
174
207
255
204
203
244
197
203
217
210
201
265
196
213
243
211
196
223
280
175
237
170
263
291
182
215
233
217
154
227
163
261
174
194
244
174
240
185
199
125
188
163
227
167
201
181
193
175
242
195
210
193
167
207
198
263
176
235
196
232
239
196
131
196
212
192
206
257
195
159
201
192
215
259
237
221
171
178
213
224
156
179
253
137
137
264
172
154
187
256
244
243
181
208
196
247
197
110
198
240
145
163
266
229
198
189
154
254
190
127
166
229
190
223
243
236
201
210
173
215
163
212
229
257
232
208
161
212
201
206
201
201
217
185
223
134
266
233
232
183
222
244
198
220
140
196
176
215
176
210
147
192
177
190
204
187
238
222
247
190
164
206
174
225
180
214
204
145
156
212
195
229
160
181
156
223
254
138
239
202
193
197
224
206
148
227
242
179
242
200
252
246
166
244
132
202
134
269
226
163
245
201
214
180
239
227
185
200
243
222
158
219
243
133
191
235
188
196
160
248
202
229
165
165
207
256
192
189
235
211
258
157
235
169
172
165
108
243
231
166
207
201
181
132
200
164
219
200
245
201
279
186
172
211
228
183
187
242
183
183
175
177
237
262
239
210
141
239
184
250
196
204
179
179
239
181
179
194
215
227
217
239
149
238
224
211
220
179
237
190
165
175
232
184
226
191
234
202
118
195
154
224
215
202
222
193
170
169
203
190
207
228
214
200
168
159
212
253
171
224
220
163
214
161
180
165
171
169
146
189
203
210
202
180
220
193
173
222
180
221
164
174
234
198
206
208
183
214
216
209
207
175
194
174
188
261
208
201
220
184
217
194
243
150
246
213
224
252
204
161
146
220
202
188
257
164
217
192
186
239
169
179
210
188
225
196
225
245
220
188
225
227
213
195
249
230
208
212
183
194
166
196
220
220
207
156
178
195
148
233
200
147
198
244
212
288
134
172
221
211
133
212
208
212
194
246
266
208
156
194
144
217
184
229
232
241
140
206
143
238
179
170
232
226
227
167
176
136
178
167
208
178
245
209
238
254
233
206
218
193
221
170
194
167
184
100
238
166
177
153
196
206
174
166
252
198
196
168
219
207
154
232
217
193
189
219
194
216
176
160
199
219
194
178
112
218
140
204
255
191
215
200
198
217
148
220
216
188
210
164
156
251
241
223
232
181
255
186
160
218
176
153
134
192
176
238
172
172
189
189
192
219
205
189
189
198
208
167
224
219
217
218
224
247
161
192
137
225
178
217
191
278
162
162
252
203
215
233
143
243
289
206
205
164
211
181
191
178
227
211
179
246
205
184
226
195
229
239
201
188
178
207
134
177
240
136
202
192
221
203
230
222
212
216
163
185
243
173
270
218
175
225
198
212
186
175
226
213
151
231
239
170
211
214
144
239
200
164
246
261
170
196
176
213
267
252
220
255
237
127
182
205
170
212
269
170
195
221
181
198
257
188
201
224
157
249
207
226
199
165
188
113
206
260
192
214
240
212
178
114
175
191
169
123
175
230
183
143
223
172
203
219
236
148
215
214
224
177
196
276
233
190
233
163
173
210
251
181
259
192
173
151
172
154
193
205
226
221
232
174
208
223
237
230
207
192
176
227
134
154
142
185
182
127
185
225
224
177
148
217
202
209
221
141
175
181
212
178
190
214
239
138
195
183
201
193
239
182
226
215
204
168
162
226
221
182
228
179
179
203
169
198
226
226
234
153
209
240
258
256
209
155
205
231
207
196
210
225
165
195
163
150
234
242
210
190
240
160
164
156
207
210
200
205
195
155
179
246
210
221
179
179
171
208
221
196
153
154
157
219
183
206
206
122
175
147
270
187
180
211
208
170
231
221
105
256
210
213
219
206
215
242
210
166
234
128
181
182
181
156
182
241
171
163
161
183
170
215
193
158
225
194
257
158
145
191
204
229
236
144
167
174
188
257
269
164
191
215
171
174
246
151
160
224
226
207
213
160
147
223
212
155
203
229
227
197
168
200
150
228
237
223
161
212
222
237
191
183
254
195
267
203
247
257
202
220
145
148
240
188
235
235
177
240
129
188
129
198
207
235
260
248
273
228
152
150
202
183
130
204
171
223
129
238
213
232
185
209
211
258
206
259
179
260
207
171
218
176
150
174
238
211
211
216
147
184
222
239
202
241
172
166
166
208
182
249
134
150
181
152
275
194
229
163
164
195
192
173
261
158
231
159
167
237
251
198
242
213
211
184
222
198
173
237
242
114
205
266
148
238
264
173
180
210
208
166
280
200
205
224
183
221
217
246
196
241
208
193
166
211
232
178
215
201
200
159
145
204
176
195
202
221
207
227
235
240
161
164
218
167
155
228
233
185
184
195
183
163
170
230
142
221
213
264
219
202
232
194
195
233
208
269
177
190
247
244
202
231
196
218
163
158
222
186
219
243
199
232
202
184
170
187
194
232
233
250
249
145
193
243
209
210
170
146
216
246
197
137
226
200
229
177
211
194
234
112
196
149
115
185
184
215
190
200
203
180
157
181
150
179
203
154
243
190
221
174
232
236
248
251
187
265
200
179
197
242
235
214
167
179
199
234
273
181
155
252
172
258
159
228
244
194
216
208
227
158
216
210
231
161
175
245
137
196
192
190
186
234
231
184
230
201
214
202
215
165
172
152
193
211
226
223
236
190
159
171
196
160
196
173
184
170
249
137
249
226
189
200
252
168
173
193
266
201
192
197
139
192
167
274
244
200
152
261
188
200
170
197
254
233
195
203
256
196
170
204
207
276
228
225
231
224
218
211
178
201
165
74
203
190
199
204
263
204
151
226
217
231
227
193
179
181
182
221
195
139
270
172
110
214
250
225
257
164
256
166
178
191
226
245
183
117
183
228
198
208
260
197
242
179
225
206
148
204
202
172
271
178
251
203
139
215
211
189
150
200
202
197
217
234
221
133
211
233
188
198
179
144
227
267
165
242
176
180
210
230
240
153
237
225
172
208
187
193
215
195
222
208
214
172
231
182
203
162
229
181
182
237
286
182
192
194
142
176
226
147
187
183
161
205
167
167
160
190
151
246
171
193
148
176
231
177
177
233
174
191
142
150
192
215
182
230
133
213
214
139
216
174
217
273
211
210
181
210
189
217
166
257
134
204
215
176
166
192
187
142
182
173
154
222
207
215
219
166
201
236
154
232
173
230
215
186
207
243
213
238
198
219
224
235
184
207
186
125
240
184
160
234
178
212
239
232
239
139
216
196
152
233
186
173
188
205
204
186
119
197
202
177
140
205
210
246
174
200
199
176
164
180
173
226
188
209
145
221
191
207
120
212
224
165
180
235
185
222
238
191
233
230
209
193
229
173
187
224
158
194
170
229
159
164
215
174
228
203
209
224
237
204
236
224
238
180
106
272
242
166
180
203
191
189
274
217
134
175
217
217
161
211
212
237
207
204
185
193
163
146
155
178
135
182
207
146
233
218
133
167
241
221
189
220
172
192
184
177
253
163
172
209
221
224
147
197
173
221
196
203
186
222
165
198
157
221
208
236
213
178
217
207
252
204
239
239
215
209
170
244
188
243
190
234
182
223
191
232
192
177
197
273
247
231
239
159
196
213
201
153
213
184
258
236
229
232
185
223
252
142
239
175
175
168
165
214
215
220
207
195
186
224
265
191
237
168
258
158
276
170
209
252
144
222
218
229
214
202
183
204
204
210
138
209
214
237
160
254
203
147
213
230
234
198
200
220
136
179
226
227
206
240
255
102
151
201
241
225
248
181
223
215
225
193
194
203
190
228
204
176
205
185
156
197
200
246
176
236
271
259
191
173
167
224
224
230
209
223
253
245
222
211
231
239
169
201
214
174
157
254
175
248
211
194
246
192
216
208
229
194
142
191
208
207
151
185
177
181
141
204
264
159
208
226
196
267
198
242
241
192
211
247
160
214
172
224
175
160
164
225
219
229
244
183
187
128
150
177
189
228
235
207
243
186
176
178
255
217
220
205
183
211
157
218
187
244
171
226
224
144
233
180
202
212
185
212
136
151
189
223
168
182
197
161
202
306
174
203
170
259
136
191
188
210
171
201
218
214
216
200
216
214
157
126
226
202
179
218
184
219
241
186
236
224
164
196
251
243
210
186
200
183
199
174
186
213
239
171
174
219
142
207
189
252
235
207
254
242
227
240
200
183
213
179
229
165
217
258
249
200
205
173
150
235
274
190
247
233
203
209
208
144
211
194
221
158
235
193
191
195
217
206
209
186
217
206
248
221
177
186
267
150
218
210
201
169
164
206
229
212
192
244
203
256
235
221
199
205
238
214
229
162
300
194
222
210
257
154
238
242
152
271
187
241
174
221
233
193
211
189
223
177
226
182
187
187
232
174
209
222
227
179
253
222
172
184
234
241
167
173
244
206
204
205
155
188
211
231
221
156
226
282
181
200
171
209
234
157
189
202
203
189
207
191
236
224
193
246
226
171
172
200
141
182
124
200
268
148
143
207
149
197
236
157
205
179
183
152
176
224
188
257
217
209
213
150
165
156
194
216
221
198
223
278
189
176
256
161
140
227
233
178
196
250
202
228
222
222
211
171
158
178
220
212
213
227
157
150
208
170
170
207
181
189
226
166
190
226
164
211
199
164
178
274
256
202
206
182
214
181
241
201
135
210
133
260
202
221
265
206
167
171
189
192
196
223
213
179
173
178
172
234
152
241
225
185
222
169
209
200
169
215
185
219
185
184
214
246
202
154
233
209
241
202
252
243
212
223
257
208
241
169
200
176
201
192
202
249
239
236
202
218
191
267
250
157
233
146
150
181
235
197
181
208
233
230
165
216
177
207
159
151
190
199
193
165
248
193
167
107
160
225
143
193
168
231
183
229
200
202
142
174
214
161
187
254
188
160
262
174
231
159
200
205
143
188
144
211
213
194
194
188
247
215
218
141
191
249
244
189
178
193
232
236
84
157
235
185
205
134
167
210
219
239
191
225
182
228
181
206
207
221
210
194
176
121
220
235
277
234
226
246
208
154
244
230
191
202
223
273
218
210
161
225
183
165
196
189
241
226
196
229
221
198
210
254
185
190
240
147
195
217
192
238
140
187
210
185
218
242
275
188
227
208
225
203
170
184
188
178
220
176
212
163
288
238
236
138
277
268
190
181
109
192
205
187
236
235
208
207
211
156
201
185
206
194
252
214
215
248
162
165
217
197
171
247
145
222
141
263
221
170
193
173
231
138
242
204
218
238
226
209
143
196
206
227
170
173
217
278
237
153
219
181
200
262
236
132
183
187
172
158
210
196
214
155
217
108
231
221
144
212
210
199
150
194
122
230
220
232
181
154
211
204
216
217
208
183
219
187
175
226
222
180
228
164
226
122
199
212
200
185
210
243
213
196
186
203
180
222
153
221
251
197
150
256
147
229
245
197
157
174
253
161
161
225
205
211
194
156
203
208
214
225
208
213
222
200
255
207
171
140
226
161
171
203
197
220
205
200
171
198
196
199
231
260
213
218
181
172
185
220
168
205
160
186
223
180
188
184
150
217
204
213
192
251
214
222
187
198
174
177
211
152
250
232
193
228
195
199
252
247
200
201
178
217
221
237
222
159
213
196
222
194
257
181
202
265
177
190
200
194
230
218
134
253
185
231
214
211
185
189
203
195
231
239
178
247
148
169
178
257
257
176
106
173
185
165
216
176
207
182
292
186
211
186
160
226
208
250
251
193
150
195
131
252
161
175
202
190
193
180
178
172
238
221
242
205
198
186
249
228
171
226
228
182
162
195
199
170
192
227
161
196
192
211
210
257
193
166
198
229
202
231
259
250
232
223
175
235
194
240
225
204
268
248
221
233
250
224
199
165
203
119
146
235
154
211
241
177
136
246
180
203
235
132
249
207
200
199
197
244
164
226
167
206
218
209
169
227
220
218
195
259
244
224
228
199
207
137
171
166
92
243
220
244
205
171
209
199
164
239
206
231
207
191
230
147
180
229
248
186
193
253
175
137
168
235
196
242
229
214
234
194
231
198
210
267
230
165
210
193
224
199
163
158
187
216
170
219
174
196
177
182
228
183
223
224
166
185
146
178
231
195
213
218
212
167
203
159
203
143
189
192
182
177
181
215
205
249
220
167
242
179
186
190
236
212
250
198
122
217
194
186
244
156
233
218
200
140
111
176
228
185
166
253
241
131
211
219
188
225
289
172
212
241
233
205
169
196
167
230
219
231
121
194
213
167
173
93
277
170
198
145
222
222
198
173
209
151
147
148
204
171
210
154
196
233
257
213
236
176
169
199
195
201
253
215
196
206
112
232
194
203
245
168
161
237
199
213
264
209
229
237
233
170
195
173
220
232
189
228
145
201
154
195
219
209
228
279
149
187
256
208
144
209
170
215
172
189
214
164
216
147
216
167
237
234
236
181
233
231
213
190
208
200
143
238
232
194
157
160
207
191
219
195
214
152
217
195
233
179
204
232
260
191
186
196
175
135
231
218
194
153
208
209
206
205
209
210
147
113
237
147
189
150
199
236
201
149
203
222
191
200
219
244
186
234
152
166
224
232
180
220
277
194
80
207
226
197
211
184
259
130
212
189
219
217
181
205
247
231
245
196
197
228
267
173
235
196
292
208
196
142
269
172
209
187
163
146
212
234
177
182
190
197
232
224
226
200
166
249
210
230
149
248
206
196
149
275
227
217
104
205
223
163
155
184
197
199
214
233
210
192
195
217
270
241
187
200
178
229
225
200
214
159
244
218
216
220
228
201
161
207
202
238
197
192
217
209
202
207
228
194
254
259
173
195
206
179
172
160
190
150
168
185
199
222
245
209
171
169
183
201
232
212
186
192
187
182
195
167
258
212
186
208
184
270
208
181
198
205
184
143
268
292
181
208
209
201
213
197
192
160
190
165
207
192
207
187
211
227
228
189
149
203
224
233
246
263
216
209
231
185
162
222
238
186
137
224
209
186
158
188
231
240
182
140
252
172
216
152
237
154
146
230
221
198
205
219
167
178
262
242
262
200
200
203
249
220
227
167
253
204
210
238
166
234
168
202
173
178
212
210
165
171
198
209
241
261
202
117
106
204
212
180
179
220
245
197
208
133
196
156
202
248
233
171
186
238
235
208
227
195
154
181
257
206
170
227
196
215
203
225
179
189
243
169
273
163
182
222
255
174
156
229
239
181
205
211
226
140
197
207
232
226
116
203
256
204
205
205
189
173
243
187
238
255
207
203
267
239
242
233
182
179
155
198
215
217
277
238
194
226
199
216
212
233
187
120
177
156
243
208
193
200
167
196
160
236
171
211
196
235
214
173
242
189
212
241
220
183
153
145
140
257
263
241
174
227
256
189
175
235
293
215
235
157
206
241
266
255
265
232
185
238
169
199
135
231
224
207
190
157
180
201
214
234
127
226
261
214
218
212
132
181
225
207
254
153
209
137
191
188
181
176
236
206
151
196
214
142
220
190
176
180
184
227
247
264
111
208
207
142
222
230
161
244
238
234
216
234
245
173
236
214
236
185
199
219
226
171
216
214
196
209
203
216
120
179
200
184
183
211
188
199
235
179
192
164
246
161
185
220
210
167
237
181
205
206
169
160
212
264
192
168
251
188
213
152
196
238
245
242
175
208
215
201
206
231
209
233
218
213
136
182
236
249
189
258
249
224
200
214
156
144
183
202
171
133
169
214
197
198
211
263
193
196
172
150
172
223
188
172
229
195
225
224
218
184
206
218
220
156
205
220
188
128
202
243
176
195
215
192
214
136
121
221
146
213
239
184
206
210
238
149
202
209
166
163
187
263
121
213
201
202
166
175
252
195
203
231
199
111
176
188
249
168
234
209
154
181
190
196
237
218
185
222
178
194
203
228
217
223
196
196
221
239
263
207
215
235
194
201
196
198
209
210
187
187
187
158
232
164
161
231
220
180
200
214
219
186
222
191
244
213
185
230
165
224
169
222
240
163
227
186
261
201
114
222
196
220
218
197
155
245
189
236
163
167
193
233
211
280
246
135
247
163
212
232
209
207
151
244
244
192
189
213
224
153
240
171
209
182
202
188
192
189
189
197
226
182
238
229
230
225
195
192
181
225
233
209
216
176
223
197
210
220
210
175
193
203
180
231
196
177
138
198
195
181
170
182
188
249
241
231
195
211
210
225
225
213
182
157
232
200
248
265
251
203
156
192
119
240
248
229
250
227
232
230
186
164
188
193
222
171
204
183
148
150
217
222
224
258
199
182
173
203
176
276
151
174
180
205
184
155
199
215
202
255
279
220
143
170
181
149
195
213
187
158
183
189
221
183
177
193
210
192
165
208
258
209
155
224
188
192
190
222
208
219
183
200
214
213
183
164
219
207
201
228
176
196
191
208
190
202
223
171
166
211
208
222
206
223
249
108
238
198
200
190
190
168
219
168
157
207
182
217
252
216
206
242
113
222
151
188
187
155
263
253
180
212
219
270
168
122
169
233
255
158
206
132
164
223
207
193
200
235
186
141
221
217
226
205
198
136
239
196
198
229
177
200
258
174
213
218
196
213
173
261
169
224
215
161
179
219
194
139
131
179
201
276
215
123
228
193
217
175
167
196
264
175
242
221
144
213
162
229
130
114
170
240
131
176
188
212
138
206
210
202
197
246
219
158
270
212
172
266
202
271
171
212
253
224
210
207
145
231
166
267
223
293
150
233
223
173
124
209
204
182
246
160
177
210
252
206
162
183
182
193
224
193
212
240
177
190
207
197
162
242
174
240
205
174
179
165
105
205
183
191
225
253
228
202
214
207
218
166
187
200
143
116
210
240
186
157
238
164
135
205
183
253
205
185
177
224
226
229
253
185
203
218
233
170
240
185
217
203
166
216
207
255
166
214
243
191
215
187
176
199
138
243
172
192
222
161
230
199
142
228
110
196
205
188
178
210
172
177
195
236
174
239
205
201
193
138
224
224
225
246
264
204
247
224
252
221
189
195
236
162
148
189
226
164
225
206
226
221
250
214
169
189
156
270
205
186
245
156
247
170
169
165
175
133
170
227
236
245
162
240
180
179
164
224
177
188
164
282
178
159
161
245
117
233
156
184
176
211
233
196
161
209
179
252
215
209
246
208
199
228
203
203
192
158
180
179
175
207
202
170
148
236
117
229
208
178
213
210
244
196
179
161
209
215
134
206
255
189
182
263
243
230
245
185
213
192
224
174
181
217
192
234
213
177
248
181
228
145
196
202
230
149
152
197
254
226
238
173
228
218
152
198
223
223
160
123
172
189
157
189
225
216
261
177
192
191
242
196
249
196
233
201
224
199
190
205
200
197
207
208
198
207
138
200
195
184
195
222
189
223
205
207
241
160
190
213
210
201
247
266
191
210
245
142
227
171
172
134
222
114
230
223
128
221
167
207
221
249
173
203
189
235
272
205
214
266
204
233
247
212
206
226
181
112
233
159
167
232
207
234
192
110
195
177
215
170
207
127
239
186
188
220
225
241
204
174
228
211
219
209
124
212
203
219
201
192
168
211
210
211
214
160
163
174
206
248
213
211
235
232
241
118
204
181
243
268
186
213
171
180
259
220
192
168
241
183
270
227
201
188
138
191
188
193
223
208
195
227
206
236
122
119
218
182
192
228
174
235
186
188
223
266
181
235
158
211
206
197
226
226
144
241
222
225
219
203
202
229
217
153
232
217
214
174
202
236
225
224
175
191
196
234
146
194
224
202
183
155
211
150
211
212
176
201
197
163
221
101
260
205
183
244
234
184
164
194
165
166
224
233
261
230
190
162
171
173
192
170
244
171
214
215
174
174
208
203
200
231
178
221
167
209
153
221
179
205
165
238
227
128
245
210
162
233
139
248
198
198
193
246
241
120
192
199
151
177
186
211
194
207
230
233
207
140
226
198
154
184
224
201
153
202
275
178
237
141
290
214
176
175
205
200
249
178
176
280
146
165
202
140
196
244
198
200
234
155
170
221
194
220
112
174
240
182
269
207
241
233
234
199
218
205
212
96
237
233
209
225
266
164
243
210
204
209
166
202
217
187
154
224
163
184
169
242
159
219
163
224
152
157
240
219
136
215
248
158
162
158
180
198
208
248
221
172
176
255
229
153
233
239
259
169
218
185
280
219
179
165
217
188
144
246
181
229
175
209
154
256
195
179
200
229
195
212
208
218
199
249
173
175
187
153
163
214
124
179
209
183
215
202
203
195
163
213
198
215
198
185
231
174
122
163
273
263
192
237
258
242
222
172
233
191
195
216
263
234
187
217
175
229
197
208
164
210
161
189
233
182
252
219
197
197
152
204
155
191
179
196
214
196
194
148
193
220
192
228
196
136
224
191
189
235
177
239
234
268
192
217
142
190
218
188
211
176
242
194
190
176
191
201
251
223
226
161
212
203
228
203
187
227
200
272
166
200
200
177
176
260
204
228
189
225
214
166
232
213
227
251
181
225
233
212
196
242
203
204
150
169
164
226
126
121
131
202
163
251
160
171
168
177
146
181
138
197
199
235
220
116
154
214
185
217
217
238
138
215
235
209
157
181
219
181
238
159
164
184
278
241
169
194
123
208
227
202
228
151
195
141
217
145
237
217
181
227
158
204
149
169
215
194
207
179
208
151
232
228
189
146
185
194
234
165
138
207
133
204
162
222
252
228
197
125
193
161
228
153
176
134
180
223
247
199
174
216
157
180
150
214
186
233
173
209
254
161
233
161
250
198
195
191
226
192
172
163
202
195
256
171
151
149
236
266
203
218
232
154
213
200
204
163
198
278
208
226
180
172
260
147
213
213
102
215
136
138
120
185
254
184
166
211
184
181
213
231
263
221
111
241
197
115
252
214
119
130
261
263
235
185
212
234
173
171
226
183
237
191
182
180
151
185
190
207
201
199
156
209
200
178
231
195
137
161
196
214
170
141
208
146
227
176
167
177
167
224
271
163
196
195
198
164
165
168
197
209
128
276
243
148
190
218
203
152
153
234
118
175
176
197
213
196
211
237
143
177
237
216
173
202
165
149
215
184
172
267
228
206
193
219
166
228
199
210
234
274
257
186
211
206
189
206
188
247
154
162
226
205
211
153
220
236
220
190
195
247
173
226
210
217
224
123
238
179
190
196
212
200
200
207
203
204
284
212
172
182
144
209
198
200
210
208
160
243
134
175
187
181
189
245
187
233
231
231
248
214
193
211
195
146
208
158
213
186
191
217
209
183
181
146
238
243
249
165
198
213
202
158
165
239
222
216
221
197
176
195
175
191
242
226
168
190
219
145
195
231
199
163
205
183
259
214
228
186
186
268
161
251
115
217
170
176
261
191
207
215
191
168
198
187
228
213
216
234
202
151
172
217
211
222
172
220
210
218
136
204
203
161
199
176
251
199
159
261
212
169
233
222
183
162
177
142
209
227
210
246
230
247
228
147
259
145
207
203
168
225
261
195
200
187
147
210
177
194
195
187
179
176
150
189
224
143
165
201
210
224
184
208
234
157
201
219
245
203
164
258
171
235
192
262
196
205
236
146
192
239
243
205
218
230
192
191
210
200
149
206
232
207
232
240
249
207
233
179
222
161
242
209
207
224
176
193
150
226
272
195
211
186
171
202
116
164
225
176
230
143
254
211
167
175
180
176
155
201
244
172
199
218
199
218
126
240
210
181
219
217
179
188
188
280
116
250
215
193
258
271
183
201
237
192
223
167
212
192
188
162
166
203
191
165
246
131
185
236
225
193
201
257
138
231
202
210
219
167
168
201
171
205
196
203
203
231
208
212
173
229
123
224
161
197
220
227
165
177
157
210
176
188
221
140
165
209
169
209
155
212
215
213
162
216
195
219
164
273
203
244
223
163
229
213
230
228
228
229
215
217
275
234
228
201
172
186
210
237
173
198
265
165
187
234
170
226
252
192
232
167
189
178
246
221
189
254
237
229
239
172
192
215
175
184
206
191
257
202
237
227
221
231
230
246
171
207
293
224
192
193
152
209
197
220
200
203
158
251
182
203
184
188
221
205
192
242
199
210
184
228
200
219
230
223
188
149
221
207
211
206
196
191
219
180
178
232
179
228
188
162
255
262
198
200
211
198
236
173
208
192
238
193
220
201
194
177
219
270
187
261
203
157
117
165
264
219
157
184
197
199
274
212
195
238
187
265
180
153
214
148
211
181
245
244
234
159
197
170
221
224
162
201
254
194
205
155
214
205
181
173
171
144
193
205
177
213
205
209
198
167
188
224
234
194
249
196
227
244
179
183
154
188
187
193
213
180
215
180
198
224
190
164
186
235
247
231
211
231
180
224
170
176
213
230
194
210
187
200
186
198
243
171
248
210
212
231
197
233
218
176
253
253
151
217
253
169
176
231
191
213
231
221
242
200
240
166
194
171
169
268
223
152
172
217
190
160
201
247
225
196
154
195
196
185
181
210
206
250
227
227
266
252
205
255
200
202
197
225
217
251
173
195
198
141
197
170
185
234
177
193
258
268
215
223
201
217
202
178
233
163
220
248
204
194
195
249
254
138
220
190
190
211
263
194
206
207
163
156
258
178
165
192
175
188
146
218
225
198
157
178
262
236
180
256
191
199
220
233
197
193
182
160
162
198
187
172
229
205
262
200
225
248
173
174
210
240
174
223
217
176
246
200
249
201
189
201
212
208
179
194
216
235
182
230
200
180
217
226
160
138
207
165
232
200
202
215
84
171
187
231
181
177
117
178
230
199
196
234
258
239
161
181
143
235
213
230
186
180
196
242
253
163
201
214
209
199
203
250
223
194
213
233
186
146
222
240
216
233
242
180
189
187
239
134
237
154
223
156
218
196
165
207
186
228
213
217
236
190
220
189
246
194
208
228
206
217
189
166
196
225
198
214
186
181
208
196
145
206
201
186
225
215
159
148
188
182
200
200
183
199
217
204
204
145
195
131
236
153
174
198
245
226
183
181
153
263
200
241
184
167
204
221
172
204
191
224
121
249
200
245
155
174
205
166
182
163
160
201
189
234
260
244
150
197
243
170
235
248
196
207
271
179
152
198
225
222
205
264
144
210
266
219
175
242
212
195
170
207
172
145
176
235
251
187
142
167
155
168
206
208
152
231
199
174
259
246
163
227
196
240
183
191
219
219
256
190
246
208
182
214
225
190
156
237
244
179
211
231
261
182
202
209
191
151
164
198
236
148
250
257
205
246
178
165
248
168
115
210
181
147
209
185
186
201
160
229
190
152
198
217
176
247
224
229
184
210
205
225
175
224
211
225
140
134
172
199
193
234
153
164
131
211
258
208
235
218
203
215
216
166
236
122
204
187
185
182
185
172
177
199
200
169
94
249
144
206
200
227
166
211
258
198
254
206
188
238
239
187
197
254
151
186
178
208
208
208
203
205
214
176
196
197
142
192
185
204
257
251
259
189
202
190
142
198
149
236
158
155
208
192
192
224
228
187
202
211
163
189
162
233
174
132
172
155
166
208
197
191
199
221
203
218
202
149
179
166
201
243
213
169
207
173
252
171
229
200
208
180
222
154
206
157
191
195
234
172
154
220
201
194
152
164
169
229
216
199
167
222
203
259
182
203
160
184
109
238
214
187
162
211
166
158
231
204
244
232
226
219
202
189
150
256
193
187
237
173
211
186
127
230
225
163
253
177
224
201
224
187
162
228
192
201
174
180
139
208
203
227
220
192
189
184
101
182
205
181
181
155
148
206
251
187
218
188
185
178
177
254
161
257
243
191
200
265
160
167
197
244
202
257
194
109
220
213
222
265
140
171
167
213
192
183
206
209
261
205
178
228
246
184
144
132
148
183
116
262
185
235
185
165
159
224
248
190
165
241
179
188
237
259
226
182
190
196
179
134
212
235
231
124
210
157
203
213
190
190
288
227
173
138
221
187
210
211
189
235
241
249
222
229
248
200
244
176
205
196
230
168
217
190
222
192
242
175
201
244
172
156
268
231
196
191
204
167
195
180
199
257
173
184
153
216
260
175
193
209
212
172
195
186
256
189
207
219
169
190
227
185
235
238
180
229
265
178
216
124
211
114
210
196
208
161
118
187
202
237
143
142
257
169
139
237
199
186
206
231
231
118
132
193
133
261
179
145
253
198
192
188
168
267
191
197
197
186
151
232
273
152
201
246
292
206
158
188
141
159
236
194
161
139
200
253
227
250
137
213
202
240
212
152
173
238
157
175
222
231
165
233
198
215
194
223
212
239
196
224
147
203
204
186
172
193
211
217
231
165
205
181
196
158
221
185
254
172
242
230
244
168
238
200
212
197
137
198
218
178
149
218
156
174
128
228
180
221
192
200
190
198
232
203
189
241
267
203
137
188
231
166
146
144
235
194
236
192
174
190
279
262
218
203
209
180
206
254
133
229
206
157
247
215
190
164
149
160
175
177
221
231
146
175
153
209
220
256
143
191
128
234
195
212
176
220
225
212
209
207
182
190
207
209
190
247
174
220
135
209
255
201
166
242
191
156
219
253
185
252
197
226
275
193
215
204
197
191
231
234
191
225
180
183
235
130
184
249
173
149
146
168
226
263
169
175
235
206
242
234
182
201
189
111
186
219
207
221
225
207
227
185
271
226
170
236
211
189
156
203
223
237
175
183
223
193
219
228
156
190
140
208
175
135
220
181
229
118
149
221
207
248
205
242
230
182
231
177
244
141
197
174
223
194
255
252
245
185
138
188
149
202
159
211
211
211
264
227
155
221
204
250
181
222
134
284
232
152
187
214
186
236
189
188
207
146
176
156
198
215
224
232
120
178
195
161
225
225
197
208
215
244
220
222
199
261
217
219
222
169
190
181
210
206
226
211
220
178
160
201
177
229
198
155
249
165
214
230
222
239
257
173
213
196
188
194
205
189
218
208
215
219
189
189
141
229
219
234
209
234
174
188
202
146
234
174
167
167
246
167
180
235
211
207
190
166
190
186
176
212
216
186
179
228
252
152
213
212
254
167
215
181
184
186
203
200
200
180
144
241
172
241
221
177
184
225
220
220
237
211
247
228
245
181
213
232
237
221
244
237
202
213
247
220
219
186
260
203
173
268
233
206
205
192
134
190
174
212
240
206
250
261
159
174
194
237
199
218
161
199
253
195
180
170
149
198
206
208
209
252
186
205
162
257
207
304
208
238
199
187
158
195
220
224
219
254
252
254
213
145
227
192
169
197
109
180
218
191
210
149
202
191
205
164
253
237
176
171
243
220
239
182
222
234
237
273
196
163
167
206
184
132
206
204
155
153
167
207
202
178
257
258
211
175
155
206
168
220
195
164
126
157
214
176
209
214
160
238
161
113
203
246
234
191
243
171
238
214
186
181
204
230
214
156
167
204
173
241
241
254
150
218
170
186
191
195
157
197
256
213
177
230
257
196
181
246
225
216
143
215
223
238
191
213
242
211
218
203
211
259
178
214
175
188
199
193
166
193
194
188
187
182
216
253
207
166
183
186
164
225
163
212
253
226
164
210
221
205
173
226
244
135
236
221
219
226
167
214
231
208
173
268
236
129
174
241
225
220
197
185
189
232
246
212
168
244
214
218
175
187
242
200
189
194
161
221
215
196
253
118
208
213
230
226
124
195
244
201
217
162
236
178
189
242
141
194
142
229
215
246
167
283
176
216
241
230
232
208
247
227
249
287
173
191
208
205
124
207
161
199
239
177
196
238
218
200
185
251
176
253
198
202
229
229
212
202
193
214
233
154
263
227
206
167
226
131
250
232
189
190
243
173
166
198
252
212
218
193
188
180
230
159
279
205
210
213
169
166
217
207
201
221
209
251
134
188
244
205
242
192
171
249
227
143
202
203
202
203
196
214
212
157
158
283
155
198
179
186
151
204
205
211
217
215
209
228
224
221
205
200
212
241
194
198
178
190
239
209
184
171
158
205
211
165
144
206
209
193
243
202
241
167
232
185
181
217
225
182
203
235
124
175
240
149
173
202
197
245
232
170
200
184
160
284
191
213
167
208
203
146
194
247
165
192
179
154
199
170
147
210
186
186
230
225
208
193
188
133
151
206
205
156
223
171
189
180
160
217
155
223
213
208
174
216
235
157
218
204
144
94
216
190
202
218
186
293
162
256
215
194
174
177
251
156
259
203
217
141
244
217
184
281
195
164
231
241
221
124
150
257
182
173
208
152
201
189
208
148
196
218
260
220
216
206
226
221
195
221
191
173
168
197
203
150
207
172
181
212
225
150
136
232
210
171
191
212
195
227
159
243
221
204
164
152
175
175
189
209
204
202
198
205
199
157
220
228
202
206
216
158
198
126
266
180
131
185
176
260
191
170
207
226
214
149
154
234
157
153
265
205
179
227
193
204
217
191
159
196
230
225
174
193
174
271
258
201
197
174
229
223
164
185
217
197
112
217
215
216
145
175
212
172
124
110
97
139
193
183
167
196
261
189
171
208
243
146
197
204
252
175
152
230
166
234
201
235
247
249
171
217
204
170
240
208
236
147
207
262
214
221
244
210
172
191
174
281
171
223
209
268
235
216
134
225
177
201
235
202
219
264
211
207
176
171
228
128
224
186
171
232
252
161
244
214
194
113
158
262
235
174
213
178
226
192
231
165
155
226
218
186
198
182
222
239
273
153
196
170
176
168
235
200
220
198
161
177
252
228
238
166
237
174
180
200
227
224
249
212
200
230
154
212
215
247
233
153
185
253
180
209
253
196
237
235
231
156
201
90
207
203
237
223
240
213
145
132
206
245
177
205
188
223
258
171
229
258
204
187
261
274
219
200
213
200
192
186
223
162
184
211
247
233
210
283
173
207
214
154
183
203
189
197
233
187
205
146
190
224
240
242
251
188
211
152
158
197
204
168
184
240
214
171
244
194
159
170
220
199
246
205
183
152
158
191
155
135
172
168
184
182
197
175
206
225
201
224
166
203
173
265
266
195
155
163
156
203
214
149
214
195
223
220
197
211
182
182
227
173
222
205
182
224
222
191
177
222
242
219
222
198
254
157
229
264
187
224
209
229
229
206
185
176
190
158
194
258
190
177
218
268
221
186
253
235
224
167
235
230
204
199
221
208
195
162
216
222
204
169
226
154
228
212
97
247
185
178
244
223
150
183
209
195
202
223
187
175
162
220
246
208
154
241
225
180
256
218
258
200
204
201
191
184
214
204
134
179
261
241
215
160
162
126
147
96
237
256
159
206
213
234
168
192
197
226
201
207
206
147
200
252
203
207
170
216
189
141
216
197
180
185
245
191
127
229
181
239
190
206
230
182
167
256
257
231
163
148
181
202
241
245
167
176
190
182
182
126
201
174
247
159
207
152
154
259
214
187
201
172
186
219
207
242
177
267
187
182
199
213
223
209
158
184
160
206
206
182
208
232
220
220
122
215
194
233
194
213
207
172
249
162
199
175
187
166
205
197
175
247
251
208
183
222
275
180
208
195
213
206
211
239
209
217
173
192
212
242
193
203
199
187
153
213
189
260
224
198
185
200
154
194
221
183
174
231
204
159
177
167
167
177
198
201
193
199
198
224
199
210
227
232
179
179
243
194
161
233
153
160
173
164
162
195
132
212
207
106
158
137
156
228
211
112
269
213
126
236
179
227
176
140
223
161
156
242
151
190
178
168
198
124
171
246
196
196
187
143
176
216
198
186
259
214
170
186
201
192
172
198
222
219
237
161
294
214
150
240
179
241
209
147
205
206
230
260
179
219
212
136
142
173
230
210
191
237
170
176
256
256
222
246
203
212
249
225
258
167
184
128
219
207
155
222
181
234
151
156
173
213
204
139
182
244
174
211
173
244
202
220
216
189
204
169
195
176
154
179
240
178
212
224
165
166
202
214
226
163
205
155
212
188
150
271
231
147
231
208
216
217
229
211
183
172
140
183
247
182
123
156
199
201
252
79
257
207
209
194
207
227
174
175
189
265
187
219
221
256
183
209
160
168
187
176
218
168
208
179
180
150
172
227
202
164
135
146
231
146
223
245
192
224
138
196
205
153
267
163
197
217
249
153
228
245
205
235
214
240
215
190
240
229
208
208
148
175
240
152
227
237
197
215
186
242
190
243
229
213
152
177
224
222
175
189
218
153
178
136
217
213
206
169
216
209
145
256
212
232
205
227
243
199
194
224
252
235
238
194
257
194
190
112
162
232
204
226
253
223
192
219
225
185
219
246
188
222
223
250
230
216
174
191
139
148
232
207
168
232
185
173
181
217
227
255
183
218
234
174
272
190
204
210
228
163
227
183
250
138
202
187
226
201
181
207
242
272
242
150
212
193
212
184
244
197
151
247
201
159
203
175
238
163
179
212
229
228
249
256
169
169
203
161
229
173
176
201
242
222
207
208
189
201
194
173
202
234
194
209
203
192
196
186
204
173
155
190
221
117
202
214
218
175
173
211
208
157
176
174
235
207
253
252
180
193
175
230
195
193
253
220
203
131
216
215
216
225
233
188
155
198
172
241
250
210
134
218
175
162
218
178
196
175
222
170
257
163
216
196
179
213
190
227
265
179
205
224
196
246
236
197
203
238
212
246
172
221
220
117
186
193
189
230
265
152
189
245
236
257
194
196
205
156
211
268
133
177
229
228
141
216
101
224
269
228
176
219
200
160
196
221
163
237
180
145
252
254
171
167
251
174
209
231
183
282
201
253
226
215
169
240
149
251
253
162
168
182
236
170
217
181
204
239
245
247
111
244
237
218
240
206
217
221
202
167
224
239
173
184
209
195
261
204
276
175
234
181
167
153
213
209
200
248
183
229
250
167
174
219
166
179
180
182
195
215
215
232
161
222
183
187
243
244
171
114
263
225
231
254
182
176
200
217
205
226
146
213
222
187
226
168
181
206
202
177
138
190
246
165
160
240
227
188
189
196
207
220
182
135
179
199
207
223
209
258
241
260
247
218
187
149
257
197
142
263
205
197
218
176
167
198
217
197
195
209
145
228
172
189
175
243
169
191
198
197
169
254
211
163
254
179
210
197
253
175
164
132
242
165
276
261
218
220
200
234
131
154
205
236
177
206
185
187
202
170
214
169
196
241
187
182
221
209
218
170
188
196
216
149
189
208
216
238
227
199
134
218
197
192
223
192
200
203
207
165
243
233
195
206
254
190
169
258
209
219
191
153
246
205
201
234
136
219
221
226
146
228
202
198
204
145
237
207
215
190
214
174
192
160
171
231
183
248
157
226
124
222
144
196
234
230
241
188
240
83
162
156
229
249
247
150
206
213
213
187
235
204
249
218
213
204
171
235
220
168
197
186
282
182
196
214
220
154
159
200
199
233
143
232
183
196
206
215
199
185
196
245
206
195
204
201
242
169
250
197
252
244
176
241
195
212
191
202
217
137
204
252
202
174
215
162
182
196
178
233
201
210
214
235
192
235
215
226
219
233
177
222
164
166
204
190
179
186
199
279
261
176
199
210
241
221
212
226
220
211
96
220
211
210
177
192
196
177
220
178
161
182
164
234
248
149
186
237
255
198
248
202
194
174
198
166
173
208
184
270
259
174
244
224
136
185
221
199
228
162
174
222
258
219
211
151
205
254
248
195
208
236
234
216
215
248
269
228
214
202
211
201
175
248
190
234
200
250
203
176
190
188
227
204
146
158
232
166
193
274
198
171
241
219
183
208
226
247
175
205
206
155
201
205
183
233
198
241
234
267
224
213
236
178
236
237
172
208
185
239
158
202
207
239
136
168
235
165
206
167
205
197
203
188
237
154
216
200
233
189
252
211
79
239
194
172
191
269
178
150
162
138
193
233
260
241
149
193
247
172
189
224
123
206
181
201
206
258
145
210
265
260
216
231
239
165
203
223
168
233
204
165
172
186
187
207
198
193
169
232
209
234
163
208
190
197
214
214
192
190
228
214
159
186
185
199
185
208
160
197
251
212
195
192
196
172
197
222
157
172
185
175
176
183
212
198
194
165
206
155
142
198
158
192
170
224
185
130
214
194
282
277
205
200
160
201
171
184
228
238
188
180
151
157
167
284
208
222
203
264
209
253
164
208
211
225
167
177
218
183
202
155
206
206
214
265
208
252
208
144
220
211
148
208
195
183
233
227
250
239
141
191
169
148
284
173
175
222
243
168
175
174
197
226
153
156
160
204
188
195
232
163
186
179
121
153
176
146
207
170
149
185
178
191
187
225
199
232
196
240
196
172
202
191
231
217
197
233
209
180
247
223
182
188
164
244
219
142
120
196
127
173
213
175
180
221
223
170
223
156
224
173
190
141
256
202
241
253
194
178
224
258
241
244
164
173
210
211
183
167
174
238
130
206
196
229
160
154
140
192
209
236
252
172
252
268
235
202
167
218
114
181
115
179
259
230
217
246
150
269
203
175
200
194
121
154
228
242
232
204
170
255
188
86
226
234
222
214
131
225
144
193
221
206
227
265
210
252
228
163
147
183
174
245
185
197
120
175
189
231
244
197
153
196
184
177
230
141
139
204
226
159
225
188
116
229
212
241
197
218
231
185
178
183
277
263
203
183
243
144
227
243
196
202
235
228
206
218
180
169
192
244
216
263
198
232
178
218
226
239
197
158
247
154
235
203
240
190
167
188
133
186
157
147
204
262
243
235
218
170
252
224
215
225
175
226
122
226
205
179
212
160
205
218
210
176
157
196
214
153
237
186
158
182
155
227
211
158
182
188
165
182
239
222
223
99
223
183
192
180
166
214
237
228
172
221
178
174
188
202
228
191
199
192
225
174
215
229
175
184
157
190
231
193
201
223
209
190
170
192
195
209
155
144
217
283
243
195
200
242
241
204
204
167
241
202
220
246
157
143
202
215
206
242
227
232
220
206
273
283
134
117
198
221
213
259
167
184
225
244
140
191
182
181
266
223
188
182
163
155
229
194
231
226
220
126
212
202
222
167
168
183
143
257
211
222
178
148
193
195
232
239
262
176
199
261
183
237
208
230
178
196
173
227
193
170
241
230
182
253
219
191
203
248
207
184
160
215
187
193
206
202
249
155
171
251
195
201
245
174
157
235
242
212
200
163
205
216
192
240
186
190
162
250
240
180
209
132
233
172
167
213
192
191
249
197
145
227
121
173
197
269
168
201
192
272
181
193
165
239
197
219
234
268
233
140
148
221
195
206
258
216
192
164
248
213
200
234
195
185
226
225
244
198
171
245
198
227
203
261
210
162
163
234
154
211
204
238
215
221
168
209
219
221
188
246
193
171
202
217
190
195
228
263
225
209
214
182
188
194
148
210
203
175
181
161
162
261
206
195
197
213
259
209
233
232
219
167
248
195
242
255
191
157
179
185
218
285
145
146
202
260
166
182
174
158
197
249
258
232
207
119
185
238
205
134
199
216
165
175
236
219
162
213
190
236
178
203
252
193
210
187
142
194
223
165
224
139
231
234
268
194
235
230
201
193
180
152
243
192
244
227
169
161
219
261
185
246
152
197
218
187
188
158
137
268
263
164
223
245
182
203
182
252
229
147
215
195
179
185
213
205
199
285
190
194
229
155
269
193
131
239
210
122
213
237
188
209
195
113
199
174
235
209
229
206
195
193
191
131
236
231
235
188
175
261
173
227
194
183
190
206
215
221
147
217
237
205
245
169
203
245
171
205
252
148
180
216
259
175
241
222
144
167
190
232
245
134
186
180
171
180
195
159
235
151
202
171
162
186
190
189
240
219
197
187
197
220
209
220
149
224
245
263
171
232
173
207
161
243
221
201
205
180
172
222
218
122
201
254
220
178
192
165
232
175
278
172
244
238
235
267
241
133
167
150
172
173
220
176
192
256
175
188
234
213
152
211
238
140
209
172
215
223
249
194
223
200
240
219
116
200
209
229
184
213
189
186
183
205
251
221
234
214
235
199
225
242
215
182
192
146
225
200
212
244
155
165
208
236
203
214
244
149
198
186
188
190
121
159
185
200
234
210
190
127
235
243
169
199
229
222
187
288
150
246
204
140
206
208
206
129
150
236
246
211
177
205
161
230
253
231
190
228
234
216
182
97
233
192
213
225
214
216
155
190
200
175
127
177
196
204
240
224
247
217
251
207
223
187
271
276
177
157
222
171
248
261
189
223
182
237
189
164
181
226
104
198
176
221
204
192
199
178
242
185
194
185
204
234
210
271
261
210
208
231
151
249
240
207
207
130
142
177
166
257
276
234
169
203
229
266
219
213
182
270
203
231
247
129
154
197
216
217
155
227
235
220
207
207
182
205
118
232
184
179
201
245
150
172
200
199
234
202
193
157
166
195
181
200
288
165
208
207
242
188
229
223
184
178
184
141
247
213
202
181
261
195
227
197
147
120
185
226
163
178
193
232
173
212
234
236
178
177
171
190
159
158
212
238
241
186
189
209
186
201
172
228
236
189
204
165
237
135
189
192
209
220
138
222
243
223
202
169
177
230
185
266
165
195
146
248
146
160
248
154
148
200
168
218
211
215
217
192
162
211
223
114
196
234
186
201
174
233
171
129
190
174
200
183
195
255
167
218
200
167
191
253
191
180
188
208
204
189
182
149
208
233
205
210
226
165
193
211
201
145
179
199
265
206
210
212
146
209
205
168
196
195
176
126
229
164
201
215
175
233
179
185
201
316
254
135
196
217
196
239
199
173
231
213
152
199
279
220
243
153
198
217
211
141
165
187
257
139
200
156
189
211
231
170
190
218
181
186
193
193
204
205
160
171
265
158
179
206
202
255
185
145
196
237
205
199
223
149
206
242
200
210
230
192
242
226
196
204
205
229
198
232
175
219
189
220
138
170
203
166
204
249
246
100
279
177
178
201
156
231
194
202
222
175
211
195
158
255
146
204
137
157
189
240
228
212
217
170
229
268
219
247
186
184
161
236
163
256
232
210
184
183
194
227
239
179
241
177
212
208
243
237
151
194
230
193
190
161
174
237
172
183
205
202
199
243
198
169
181
211
260
146
199
177
205
194
199
137
237
184
223
219
179
213
242
213
202
201
197
227
245
166
212
173
214
189
174
143
127
113
252
290
141
221
189
191
191
221
181
205
214
242
203
229
254
222
199
166
181
242
186
225
190
189
212
169
149
194
225
212
190
193
147
261
211
219
235
221
225
225
210
219
190
213
192
150
197
185
217
183
264
237
200
199
202
217
207
191
194
146
191
253
215
166
212
247
173
220
184
200
209
213
157
204
135
221
239
260
201
204
190
229
175
231
180
248
208
210
209
267
151
191
244
181
166
218
171
183
130
224
193
129
223
226
247
207
235
223
178
179
222
228
220
149
192
211
206
200
166
204
227
188
168
235
190
187
230
218
240
142
236
193
130
144
175
158
229
211
166
154
195
155
165
192
255
194
247
199
279
227
178
214
212
162
251
170
244
194
160
165
213
198
177
200
220
197
199
216
212
184
169
242
224
168
221
235
195
267
208
183
213
234
253
232
192
181
206
184
234
247
243
235
190
184
188
179
220
195
189
202
231
200
182
199
204
227
208
221
171
214
246
111
226
115
193
235
200
239
198
229
156
252
225
218
223
179
141
184
154
208
159
224
216
175
164
209
221
164
250
234
217
221
211
210
226
153
251
234
169
253
168
174
184
180
180
167
163
197
222
224
245
194
127
187
226
171
183
216
222
175
225
234
229
149
209
213
233
251
200
207
192
118
233
210
254
171
218
196
235
188
168
116
199
200
152
155
218
194
182
255
220
192
185
193
222
192
245
188
144
224
191
155
235
263
216
214
198
190
240
152
184
242
232
194
253
195
210
267
189
243
230
135
253
266
255
227
247
184
209
191
160
217
221
210
197
269
116
200
212
225
179
211
208
207
192
174
227
238
210
121
238
159
163
213
226
212
202
204
190
241
251
213
149
187
206
162
233
163
175
202
134
134
133
233
248
200
209
227
233
219
217
239
172
113
222
213
180
132
215
214
191
206
245
195
236
188
191
192
252
210
191
204
168
148
205
200
230
220
226
176
203
221
220
183
192
257
170
168
201
193
241
212
143
222
129
259
230
214
266
213
233
156
200
231
153
159
181
244
198
153
161
169
163
209
169
184
194
221
251
152
162
178
210
217
163
207
161
182
229
209
217
220
125
179
196
210
148
152
158
168
268
226
215
234
276
182
158
198
193
128
166
239
190
170
193
178
186
290
189
205
218
166
209
220
98
191
177
237
179
113
238
211
201
180
226
234
203
212
176
213
186
185
165
238
176
221
210
145
253
160
201
277
210
224
192
88
168
196
203
163
242
196
174
229
201
164
189
244
233
144
191
227
200
209
212
246
199
205
198
253
238
273
252
153
265
172
210
237
193
195
210
148
225
176
190
177
218
153
166
211
173
207
265
224
165
173
216
165
208
165
230
105
146
188
203
152
180
209
153
214
240
186
166
218
218
240
203
206
165
213
129
193
246
221
219
235
195
122
222
179
196
231
170
194
214
151
205
189
255
191
259
232
232
219
92
167
168
94
173
229
183
160
216
241
265
263
237
195
246
155
223
247
179
223
176
195
215
225
178
171
144
245
210
186
224
153
177
155
185
205
221
217
200
169
250
164
230
231
206
184
247
258
229
213
241
179
189
216
188
191
250
203
196
237
196
186
252
183
217
227
171
203
164
228
184
177
236
182
173
248
252
218
235
253
190
234
128
177
227
234
176
153
149
204
202
249
151
201
217
166
202
159
226
134
229
206
253
223
229
202
230
205
207
203
183
264
225
215
181
269
182
208
242
202
140
218
192
181
198
214
184
207
181
198
220
204
190
233
171
156
199
242
184
219
239
209
207
202
184
228
193
249
198
170
168
225
163
183
206
228
204
233
215
197
238
258
168
195
182
244
118
163
172
173
216
155
190
244
162
187
162
189
233
209
211
210
237
199
189
261
150
275
233
200
222
224
207
263
261
147
230
234
205
240
200
202
229
239
208
202
195
175
202
192
194
300
191
188
222
217
166
214
217
181
156
161
239
181
241
231
236
163
225
196
193
228
148
211
233
191
248
170
187
225
188
174
182
164
144
193
229
220
195
168
188
137
189
212
141
256
173
191
187
227
196
173
228
266
236
181
201
199
234
212
162
203
201
237
207
181
187
206
155
216
272
164
202
159
190
248
224
224
236
186
173
203
168
172
221
207
176
199
231
187
195
256
149
254
190
179
174
202
235
178
246
185
195
177
190
195
184
162
183
172
165
210
231
195
245
193
141
165
206
224
160
238
228
171
179
179
199
181
193
193
228
168
201
246
183
165
269
268
166
124
157
192
101
247
188
230
168
176
230
259
203
146
193
239
215
259
181
233
183
207
196
162
185
230
213
181
191
170
200
161
187
187
233
227
262
219
235
211
175
185
231
163
167
152
258
180
211
189
213
240
193
233
250
206
225
190
223
233
238
180
171
260
208
240
222
198
192
243
239
200
149
264
202
245
90
213
143
205
205
186
250
219
279
283
222
230
185
209
220
226
208
215
192
218
179
201
209
182
243
181
196
205
232
292
243
173
216
155
157
242
220
206
220
237
171
202
202
206
196
153
196
220
236
206
254
248
178
261
182
201
214
169
208
202
223
201
178
197
169
204
126
216
104
195
220
258
198
194
249
193
234
206
194
240
255
173
143
221
146
233
241
153
221
192
228
186
235
229
214
221
261
189
246
221
250
211
207
208
190
209
199
205
189
222
230
209
195
177
184
238
206
255
179
172
224
216
203
195
182
192
230
174
233
193
231
128
221
195
231
203
213
192
188
212
224
262
180
202
206
168
217
249
223
159
137
170
168
182
201
215
214
172
227
204
227
205
214
152
226
253
199
173
173
210
196
207
241
185
236
238
212
185
258
214
223
165
174
202
195
173
232
254
257
248
170
154
131
218
200
189
214
162
241
185
230
178
161
188
249
199
241
227
145
271
277
148
166
208
236
221
178
137
229
208
258
238
236
172
119
198
177
203
234
177
169
208
207
249
250
214
173
123
219
194
132
243
165
185
216
204
154
193
192
207
228
186
206
193
150
161
223
172
207
235
184
209
198
157
232
186
197
226
204
201
195
253
216
222
222
136
148
172
185
159
202
204
203
209
153
250
189
156
257
147
136
189
243
190
191
217
223
226
230
208
175
207
239
189
238
158
239
179
233
133
172
177
214
208
205
246
159
184
205
214
181
181
236
267
208
149
216
172
270
124
196
147
231
155
246
173
183
217
189
241
166
207
196
197
191
192
215
179
214
211
196
212
234
204
178
154
201
175
175
193
199
177
292
183
218
235
204
164
205
289
261
194
205
190
251
155
189
223
187
222
241
164
195
211
199
174
225
242
137
162
189
171
196
205
217
179
163
195
163
181
211
187
282
211
226
183
220
216
117
230
208
221
209
179
165
217
220
207
174
149
156
195
200
183
180
248
147
176
156
164
177
269
173
253
230
177
141
200
169
231
136
175
114
215
209
223
172
186
118
209
173
163
170
205
203
199
99
183
197
232
188
188
259
174
157
235
232
196
138
210
176
206
239
182
198
179
210
138
185
236
158
234
205
155
233
210
212
262
195
206
221
173
238
143
189
184
233
190
223
228
197
222
154
142
253
189
236
197
239
265
256
248
224
199
188
205
229
210
218
198
188
216
196
146
196
207
205
218
245
213
180
145
182
194
195
236
246
204
157
145
243
276
162
160
194
236
202
213
170
219
197
200
184
191
208
202
154
227
175
223
243
201
162
193
158
247
184
179
274
173
208
255
120
194
220
195
206
191
172
187
238
222
153
251
198
204
172
206
193
144
223
228
177
246
153
169
211
223
231
173
229
277
119
196
213
146
260
183
203
148
227
172
244
243
241
171
210
207
177
246
170
201
141
202
174
187
259
209
220
204
210
182
167
225
193
157
211
204
254
181
189
164
210
219
183
207
270
201
208
165
196
235
145
163
191
208
215
177
228
215
190
197
214
213
145
178
166
177
195
215
165
225
280
164
189
227
194
217
225
168
244
217
217
200
208
157
200
183
168
175
156
125
219
217
173
174
217
195
143
255
194
248
207
197
216
259
182
183
205
199
179
182
151
125
241
198
154
138
120
225
158
208
233
153
215
230
232
232
255
162
230
190
201
228
218
183
237
244
219
210
194
232
173
229
203
236
195
214
206
204
253
217
253
219
228
176
194
227
191
162
198
203
213
233
287
183
230
178
191
223
182
170
197
178
180
162
181
235
216
187
228
227
259
151
193
221
238
232
220
141
219
179
208
170
235
187
195
165
189
225
187
234
211
168
207
229
234
205
200
123
183
180
217
170
202
173
187
101
146
234
239
209
237
219
248
262
207
178
220
229
182
201
161
222
241
154
192
220
184
217
220
248
217
204
154
201
229
211
228
208
238
193
208
201
162
193
190
215
246
221
161
257
195
207
157
238
205
251
235
227
191
224
188
263
131
112
177
208
208
212
219
174
142
228
215
227
177
169
222
283
194
209
224
219
250
191
217
160
184
214
195
111
232
244
176
177
286
237
154
181
196
180
205
197
221
242
220
147
214
209
168
238
160
209
179
222
171
117
224
179
201
185
179
192
207
221
162
159
200
218
203
206
211
175
177
214
166
234
174
180
271
189
191
237
127
230
305
263
154
241
155
222
223
144
220
186
246
221
225
271
270
255
234
245
241
200
141
165
218
203
193
201
215
179
274
220
197
165
202
208
181
221
195
210
198
195
143
151
172
216
214
186
193
227
166
141
269
211
231
164
188
170
187
195
218
187
191
218
265
217
145
133
207
147
241
226
253
148
166
187
167
176
134
245
202
244
182
162
189
199
226
213
191
164
186
227
137
186
174
194
230
197
141
171
184
172
161
170
225
212
193
221
231
143
251
245
204
172
248
161
157
169
217
208
144
200
200
153
146
212
204
199
241
222
185
238
211
213
183
142
241
209
226
154
191
178
211
234
257
224
158
198
222
188
181
190
157
175
152
212
253
242
212
139
209
140
226
217
179
165
164
185
200
165
183
169
222
267
259
220
221
202
177
277
199
241
166
226
192
248
198
118
195
199
222
194
181
212
215
193
235
173
257
168
174
191
241
171
155
181
195
255
232
167
268
261
241
170
193
231
126
243
291
181
205
183
191
161
215
210
175
205
261
176
199
179
245
201
223
178
187
194
219
150
260
245
204
224
233
217
201
166
245
161
155
185
231
223
187
204
181
192
251
237
191
262
183
187
228
215
149
184
170
176
223
199
177
224
179
237
252
196
182
168
151
192
141
165
224
172
264
208
170
216
172
184
258
262
161
193
220
229
224
168
183
199
166
185
150
146
200
200
196
246
196
203
166
205
208
131
243
213
168
225
219
181
129
182
197
200
211
172
159
169
169
239
190
155
175
202
226
218
188
165
236
189
170
215
238
174
170
189
176
244
227
177
197
203
209
186
224
241
212
191
206
222
182
227
220
230
232
147
183
185
255
193
116
253
264
236
185
250
172
123
179
198
201
245
177
186
169
217
297
245
225
176
230
182
191
196
219
235
190
236
215
241
138
204
221
206
189
176
135
188
247
169
245
137
109
202
200
163
164
212
193
221
199
206
243
206
219
222
136
208
120
176
237
190
175
204
250
207
210
188
191
200
223
164
227
185
228
263
240
174
219
182
170
230
146
154
161
143
198
201
245
229
200
207
148
176
194
255
114
193
192
235
224
204
223
126
230
219
224
200
209
208
195
237
199
276
174
189
169
247
156
174
232
202
206
207
153
178
178
174
211
249
180
109
204
201
158
180
233
173
211
188
225
210
247
208
221
113
205
220
233
171
225
169
199
218
292
234
151
207
229
91
200
191
189
128
213
258
214
223
213
185
207
216
143
142
205
220
244
183
219
211
264
182
263
219
118
200
146
178
181
161
202
190
129
227
226
178
154
211
175
192
254
195
174
204
186
228
163
207
213
209
258
228
233
226
168
210
156
202
204
195
192
175
170
179
226
211
234
266
248
170
180
233
172
248
275
150
178
227
221
171
236
177
176
171
195
238
238
156
189
205
171
226
220
242
222
192
240
185
206
198
245
231
181
187
219
202
191
237
188
164
168
236
210
170
198
188
164
259
207
204
250
218
211
139
243
223
215
233
210
151
213
167
194
233
220
213
217
219
218
224
236
250
208
247
236
239
239
260
189
212
226
163
242
246
217
210
172
243
171
180
164
175
193
239
232
171
212
204
210
215
208
233
278
216
177
216
186
177
118
228
205
208
174
203
238
242
108
189
217
195
210
228
250
213
258
224
225
184
197
200
212
222
210
155
220
221
173
192
185
168
238
200
218
202
155
205
184
193
156
150
247
195
249
147
225
212
170
159
249
235
232
195
144
207
174
202
199
205
214
192
165
257
225
222
192
171
228
189
203
260
179
187
262
213
236
197
229
147
174
218
216
207
277
180
171
253
144
183
190
219
260
194
263
214
242
209
225
239
213
216
228
201
172
185
263
184
153
201
175
134
221
134
220
190
152
128
235
146
202
248
198
174
217
219
187
186
239
233
220
224
136
177
189
155
179
168
209
246
192
151
235
175
153
196
226
153
162
145
194
225
221
178
221
254
216
171
182
175
239
211
235
222
176
211
154
229
153
184
175
202
176
205
147
215
227
229
198
181
202
190
240
258
246
196
195
187
178
176
140
157
142
227
184
152
197
222
206
153
190
251
197
181
175
205
198
160
206
213
216
205
142
265
236
224
187
234
216
213
163
193
226
213
204
233
216
189
205
171
216
175
179
165
181
186
227
185
210
137
219
225
166
182
231
263
111
210
142
208
215
214
216
203
158
202
183
244
194
167
212
209
246
175
199
184
236
244
226
155
233
222
132
226
186
151
153
223
134
185
182
201
150
246
191
205
217
162
210
239
234
159
205
217
243
196
112
237
188
192
255
176
211
176
220
170
185
170
199
261
204
172
213
258
254
223
210
195
211
225
263
204
259
235
227
172
229
146
218
167
180
226
272
164
242
191
159
202
206
174
212
256
161
256
207
233
176
251
251
194
196
215
216
226
212
165
264
208
211
204
242
151
178
178
197
236
175
182
223
184
232
220
242
227
212
193
263
285
181
246
221
166
243
250
205
208
137
236
193
221
263
205
219
195
225
280
188
199
220
225
191
233
221
224
173
233
174
249
229
217
241
227
210
147
202
231
203
114
253
173
227
149
182
229
220
209
144
241
123
221
245
135
244
165
247
179
185
157
149
138
220
140
291
200
167
185
192
248
187
142
182
232
220
118
175
230
197
207
230
210
222
233
166
172
148
218
213
228
188
103
215
244
241
246
210
237
206
210
187
225
195
201
219
234
237
172
204
235
160
128
201
222
207
185
214
153
210
257
213
129
139
163
179
172
172
156
175
211
173
244
172
225
180
180
232
209
220
187
204
108
178
194
206
232
238
242
225
227
215
237
243
231
234
204
229
152
198
207
179
161
204
214
195
233
236
253
216
224
179
197
245
171
216
187
208
184
218
252
179
209
237
232
194
254
151
170
184
161
224
166
219
264
154
231
167
165
194
199
173
152
185
220
149
207
263
201
233
117
239
142
260
191
238
221
177
241
241
180
230
223
161
200
228
200
150
236
191
246
146
93
220
221
182
209
181
161
246
262
194
210
180
260
190
216
173
246
206
215
247
248
190
212
245
253
128
178
226
183
216
180
194
179
190
210
244
167
171
186
165
195
256
198
251
189
167
182
243
142
228
215
250
202
165
199
221
192
225
233
251
233
206
250
172
132
182
175
201
181
256
144
275
183
155
73
154
224
212
205
260
228
190
253
178
162
207
227
182
166
195
205
215
202
245
263
252
170
213
194
180
242
182
184
206
176
210
225
189
229
170
211
203
227
192
163
186
157
212
248
195
137
156
218
181
216
230
167
188
190
199
256
222
174
164
212
241
138
233
203
139
176
221
206
208
177
179
181
187
222
149
163
214
210
146
208
187
227
191
148
232
232
281
257
235
180
197
170
235
189
210
235
181
257
203
173
153
114
183
169
219
224
217
254
161
194
190
237
191
238
185
195
262
222
174
154
206
224
179
162
199
209
160
166
241
224
253
232
213
249
181
199
165
214
149
214
237
237
228
239
269
234
189
203
187
192
199
264
196
180
171
260
213
192
225
209
211
173
203
175
246
210
255
204
197
216
229
242
196
183
156
210
200
267
172
207
201
204
244
189
178
200
214
205
163
215
236
148
263
212
232
195
188
207
203
216
218
188
171
224
184
200
198
266
219
202
178
270
231
230
168
201
173
186
200
160
159
181
130
177
199
226
205
179
215
161
191
207
205
202
228
210
196
224
216
216
123
255
213
150
179
270
218
211
259
175
134
237
181
204
207
192
213
198
135
188
202
189
111
179
186
227
203
215
227
154
164
225
219
234
223
249
190
220
258
201
162
238
209
272
229
153
184
219
265
162
207
277
186
209
166
225
201
217
227
211
232
181
206
232
210
146
208
211
228
195
194
191
201
207
220
177
188
257
137
231
236
195
170
183
240
214
233
165
213
178
180
216
194
131
249
203
200
229
216
190
224
185
185
157
216
153
206
247
240
213
224
221
182
176
155
194
256
230
227
171
180
258
167
193
187
183
220
188
231
157
178
232
233
206
166
165
169
179
222
249
159
219
222
162
244
223
185
259
183
197
196
209
139
226
209
161
260
248
236
169
197
198
184
204
197
231
231
206
152
211
191
188
215
190
220
180
164
202
188
157
166
208
259
188
221
166
179
156
199
196
157
189
220
217
213
163
233
185
211
245
218
156
194
188
223
185
244
184
243
253
148
223
199
224
156
141
174
174
173
210
250
198
187
219
190
194
223
204
216
214
206
203
178
232
191
224
217
140
219
179
228
126
158
220
174
176
201
231
238
199
222
228
195
98
221
131
175
237
194
173
252
173
208
188
182
201
216
197
232
276
179
173
157
164
200
249
184
252
177
201
151
225
154
254
225
162
122
197
207
218
206
183
231
232
146
190
203
193
208
207
205
161
177
218
187
208
185
173
138
211
231
161
189
244
208
223
222
237
208
186
172
232
171
174
134
127
185
231
164
239
226
232
216
116
236
160
232
206
172
200
179
148
245
190
234
239
197
189
235
193
178
216
159
194
222
160
209
209
203
190
227
246
188
238
204
237
186
213
203
179
214
194
141
214
215
165
214
238
178
182
226
263
140
224
266
199
172
137
203
202
213
248
209
191
208
199
219
229
211
251
174
186
200
188
168
210
231
206
235
145
247
194
200
203
218
222
181
207
207
215
178
218
220
216
193
180
206
214
217
116
200
168
173
185
197
137
212
144
216
151
178
107
225
254
193
224
178
171
297
198
203
188
227
217
223
181
225
139
245
237
180
187
202
163
181
173
250
210
249
98
229
95
245
214
173
177
183
187
137
208
161
153
201
79
217
198
213
212
182
173
189
193
241
290
164
197
228
167
277
146
215
207
199
166
221
241
208
264
232
203
232
135
156
195
223
243
195
215
146
234
155
231
226
207
174
120
176
173
171
225
171
158
192
160
142
245
275
178
167
241
173
244
201
200
206
197
255
193
200
139
176
151
198
150
88
186
241
160
229
238
176
154
206
208
245
220
131
230
190
217
222
212
229
168
216
219
197
202
201
240
226
211
199
126
160
224
189
238
206
185
163
229
210
230
242
216
181
199
173
210
166
238
208
214
218
227
175
193
214
217
228
201
229
207
204
203
193
194
168
238
225
187
223
178
292
178
225
251
184
136
232
192
249
208
206
195
240
161
240
216
175
228
186
210
265
220
261
189
227
240
130
212
193
172
187
194
205
225
131
290
204
273
233
173
203
208
182
167
227
166
141
271
239
186
239
133
211
172
195
212
224
123
174
222
220
262
193
175
260
195
168
251
206
214
158
204
225
210
202
209
187
185
253
159
195
216
186
195
180
222
216
207
189
206
180
249
115
217
192
175
223
175
185
143
264
219
173
111
131
236
152
152
254
179
271
164
211
187
236
177
248
137
225
146
239
202
151
212
224
231
188
255
213
188
181
205
248
187
191
201
173
211
251
276
239
259
240
124
202
143
200
208
216
190
174
191
195
202
191
165
262
250
249
215
208
198
198
229
143
232
151
222
153
186
155
214
182
161
167
239
215
155
236
210
196
242
155
148
234
223
153
261
132
125
244
210
142
204
255
190
187
231
202
208
191
162
257
235
184
163
214
232
212
179
219
129
200
137
169
168
140
209
183
140
161
229
203
172
201
235
179
150
227
172
206
165
205
210
256
186
210
222
192
208
181
165
239
166
283
195
178
136
183
164
137
183
183
158
189
251
164
174
193
222
195
205
177
190
230
257
118
203
163
221
179
202
184
166
223
182
162
194
166
252
218
216
208
139
151
187
142
252
207
185
171
163
215
232
138
205
209
279
231
157
191
237
217
181
244
181
193
210
171
250
165
192
144
118
209
179
256
212
193
249
195
198
232
251
144
204
197
136
178
232
193
231
179
267
233
172
254
193
258
120
183
203
276
224
159
174
221
239
202
225
143
221
158
164
222
238
170
183
208
229
242
213
177
210
252
214
214
256
182
223
220
200
201
208
166
218
219
199
201
192
172
252
191
226
176
189
197
177
222
188
195
199
123
133
171
179
185
190
157
266
170
191
251
135
217
213
175
147
175
266
211
223
229
232
237
151
130
173
167
212
236
208
214
165
224
155
231
162
219
197
230
191
239
160
166
270
208
210
201
263
243
194
198
209
166
163
243
249
210
224
220
206
195
173
231
219
192
239
258
180
262
230
232
177
196
274
199
222
223
218
211
182
155
166
187
195
236
204
200
206
171
197
197
194
221
213
235
221
179
150
205
186
193
229
190
207
173
241
173
240
188
219
257
207
155
215
222
146
232
247
171
197
244
190
208
226
246
210
208
230
212
172
178
175
195
197
239
178
319
190
202
207
168
209
212
247
222
212
211
243
226
215
155
239
244
263
249
230
231
186
131
255
217
175
243
164
235
183
125
156
171
239
238
182
242
228
154
236
215
175
198
229
220
223
223
205
170
201
161
113
212
173
212
240
166
237
215
218
181
202
161
256
131
217
195
184
263
221
230
192
177
214
196
159
160
189
207
112
294
201
206
198
178
243
141
182
169
171
211
165
185
268
215
195
246
180
259
203
217
195
153
233
186
172
273
237
208
182
241
169
167
148
221
250
244
232
179
219
225
191
286
264
184
191
155
151
161
205
197
194
189
219
191
238
197
207
159
176
175
239
132
218
175
244
143
206
193
206
186
235
190
192
202
193
159
154
200
178
200
189
188
217
212
188
203
277
200
233
120
206
253
143
155
193
229
195
216
204
250
169
112
211
196
177
258
120
217
193
244
222
214
178
180
184
240
236
269
167
164
249
218
183
213
233
159
218
209
193
202
149
169
212
211
174
235
189
225
199
234
215
255
212
221
158
219
234
202
226
156
211
213
220
184
250
192
203
208
241
230
220
191
163
209
198
194
204
183
278
169
190
118
222
221
263
178
216
190
231
218
171
169
145
192
183
228
178
197
154
252
162
216
222
241
174
204
133
174
215
170
222
182
170
182
228
157
169
210
165
173
227
166
233
197
224
239
212
192
198
190
188
173
236
246
124
203
159
168
294
193
196
236
168
206
276
182
178
249
251
194
191
202
278
203
156
152
196
254
221
222
240
182
211
216
211
213
200
128
151
183
255
245
218
212
93
166
177
205
204
227
138
240
206
212
246
234
165
199
236
225
166
240
241
219
192
175
233
174
193
157
191
169
222
226
265
217
265
164
205
236
185
190
169
195
233
213
222
194
223
213
203
149
278
147
229
198
251
192
161
220
153
185
203
200
153
220
160
231
181
180
250
101
223
147
240
159
207
194
214
219
220
188
157
212
239
145
203
194
186
234
222
209
173
106
221
217
140
217
181
205
194
215
184
184
239
200
200
208
152
146
232
207
151
191
188
230
254
215
141
153
220
164
194
244
192
207
195
192
229
193
176
174
172
225
179
170
184
170
254
209
197
237
187
178
163
218
267
234
230
222
174
270
212
134
218
238
167
230
196
106
203
227
140
200
200
240
219
245
290
175
104
261
179
242
220
232
245
144
172
268
220
222
260
237
204
198
204
145
251
197
193
206
129
254
211
226
223
223
208
200
120
155
249
185
237
137
166
184
212
197
229
190
231
155
158
175
204
152
219
215
168
199
150
246
217
168
159
183
259
162
209
174
212
243
203
167
185
173
216
227
163
152
219
240
191
183
218
170
214
238
229
160
214
201
237
272
218
204
172
175
203
210
188
193
203
130
181
220
209
195
197
238
186
190
222
208
200
224
254
204
132
212
179
207
175
212
225
214
241
179
150
186
172
172
130
216
171
205
235
216
253
167
146
238
235
225
185
172
213
231
247
213
211
237
154
89
157
159
180
208
205
169
200
295
240
159
169
221
208
216
184
209
135
208
190
175
226
199
172
240
175
215
254
182
204
199
242
204
266
202
174
240
204
216
192
223
165
200
215
215
233
195
270
208
188
223
226
163
187
133
128
130
229
167
223
246
253
228
157
261
194
218
211
175
120
182
214
237
153
142
153
142
213
217
204
227
248
210
198
225
228
222
216
216
174
236
165
176
216
192
179
186
175
230
135
215
235
163
227
222
233
177
206
176
152
210
282
120
181
166
208
167
235
229
208
175
178
206
248
160
164
233
252
202
245
197
244
225
194
217
194
252
201
223
222
205
138
205
217
235
258
217
125
163
219
188
179
216
206
266
190
210
201
207
196
151
233
234
208
202
199
197
191
212
241
182
194
205
185
215
191
244
193
212
180
196
208
177
219
263
207
171
223
199
244
130
209
165
144
163
104
206
186
173
210
244
204
239
147
137
183
216
229
269
188
253
196
214
211
208
214
201
229
213
167
153
174
218
201
186
193
218
196
222
191
201
141
186
235
190
161
201
178
203
207
178
195
182
218
141
186
189
259
168
168
227
196
166
223
217
173
247
211
223
229
205
228
210
182
252
197
135
232
174
220
227
219
183
187
225
205
147
159
173
168
250
206
234
169
246
195
233
222
218
202
213
167
185
199
220
231
188
201
204
181
176
218
215
216
177
207
225
217
188
184
188
223
140
204
238
236
194
200
148
233
224
217
224
193
242
212
259
217
191
236
237
210
192
176
208
182
217
213
237
125
213
234
217
202
265
189
176
214
264
190
236
229
179
170
243
165
205
183
226
194
170
164
224
158
130
243
201
198
185
169
206
262
223
252
164
216
206
219
151
149
206
170
187
211
206
184
248
196
192
218
159
211
163
158
195
184
191
215
149
173
264
190
208
207
217
201
228
224
207
258
156
168
223
165
188
234
224
203
197
206
209
228
265
229
219
176
239
208
212
193
224
161
161
254
233
201
251
250
192
211
186
220
190
245
243
193
210
154
228
200
167
244
246
173
160
221
226
215
151
213
294
206
197
197
192
223
199
197
231
199
230
205
159
187
150
191
181
189
202
174
280
148
177
216
198
223
181
221
191
203
174
230
172
239
223
206
193
189
242
157
187
236
228
128
153
178
232
273
241
226
200
213
155
198
186
240
211
249
232
175
140
221
95
282
162
245
199
194
259
188
218
187
197
196
198
263
228
237
182
198
218
186
207
213
194
221
204
213
154
227
217
243
210
222
200
204
226
237
174
199
180
195
168
225
168
203
172
188
171
221
224
173
206
226
178
200
147
210
221
130
161
283
220
122
237
230
181
161
217
217
241
183
221
234
234
214
201
168
202
82
150
227
208
216
203
166
231
268
185
184
179
236
186
172
191
161
208
238
206
241
244
237
198
191
123
168
215
194
250
275
249
167
168
169
180
247
245
279
205
219
210
154
164
182
135
225
139
243
167
221
186
172
198
220
213
176
188
269
143
240
236
182
228
181
250
260
137
129
156
180
187
251
247
232
223
200
217
219
206
216
205
224
213
189
232
164
184
215
137
235
194
199
168
165
111
230
198
243
179
178
198
173
197
201
156
186
198
183
208
178
233
220
175
227
240
224
182
207
218
179
217
123
225
159
234
189
194
167
197
191
217
224
201
227
211
202
174
138
206
215
154
159
169
215
220
215
205
266
196
257
237
220
222
175
199
160
161
188
218
181
147
236
194
160
170
180
202
227
201
198
262
188
234
203
216
213
146
220
197
259
196
166
210
197
162
175
172
222
163
196
185
147
210
212
207
182
136
192
164
160
200
133
203
233
256
222
167
216
138
197
126
151
228
173
128
234
227
180
159
239
193
182
223
215
249
217
188
202
152
177
218
135
158
180
228
148
232
199
203
144
230
258
185
115
233
161
259
215
188
167
254
168
167
235
200
199
255
254
285
240
219
170
209
204
169
215
182
196
216
153
137
203
245
157
242
280
204
233
249
141
220
125
198
231
177
242
225
125
223
250
215
160
172
192
220
178
203
190
235
222
233
159
161
213
129
239
181
227
111
222
234
255
191
224
202
217
194
208
205
236
208
183
235
197
169
230
208
219
234
193
270
191
240
232
184
211
217
194
195
194
176
235
214
235
264
227
136
162
236
262
227
222
222
175
205
178
160
209
228
142
135
188
211
216
167
172
182
213
209
200
242
225
143
279
246
163
194
202
240
120
216
152
200
247
246
220
225
144
218
239
189
111
201
217
155
248
136
201
203
222
207
202
246
200
175
197
189
148
158
183
191
267
136
220
168
248
142
189
173
220
212
166
196
265
172
225
184
192
233
186
271
192
261
138
147
200
128
245
176
198
244
228
219
217
165
198
173
149
242
250
193
146
204
201
228
229
241
216
191
255
213
200
140
153
152
216
194
211
198
207
185
246
246
184
153
246
247
221
180
190
218
219
225
224
134
201
186
157
176
224
169
171
230
203
158
204
202
243
228
246
191
203
194
186
200
200
207
234
198
138
160
215
175
182
229
264
143
200
213
244
190
234
188
209
187
165
217
263
177
251
208
259
224
162
203
166
142
239
98
228
177
172
139
200
206
248
212
201
198
223
220
238
186
235
234
198
164
208
141
243
166
225
180
182
228
225
208
231
237
159
144
184
157
207
186
178
218
194
140
196
161
212
220
167
132
202
211
183
204
201
161
150
274
172
189
194
260
197
271
212
226
167
193
243
206
186
156
144
162
255
212
150
220
160
219
180
174
225
186
150
221
195
146
222
254
236
170
261
243
228
252
190
219
189
187
184
166
246
179
239
164
244
229
199
170
191
157
214
236
273
236
162
186
198
179
195
194
177
243
184
186
173
194
258
248
190
171
167
161
184
146
211
182
182
225
211
171
181
208
236
223
208
130
195
203
186
241
139
235
196
171
182
218
202
203
232
192
253
213
124
214
170
265
123
207
213
204
251
198
189
172
248
216
172
185
184
222
181
221
176
216
205
167
263
172
165
95
220
255
292
186
240
201
163
214
215
187
241
236
196
164
197
222
275
142
169
211
225
241
213
183
234
196
188
194
97
202
228
198
191
221
157
214
221
226
235
166
137
214
172
151
195
191
246
268
213
168
192
168
194
194
214
211
199
239
229
205
219
167
174
237
198
129
170
197
226
209
245
166
189
227
199
140
172
213
248
216
185
203
176
207
254
213
276
189
186
205
271
159
183
241
190
238
237
173
234
195
237
201
221
219
167
177
169
198
239
163
190
146
155
171
201
178
216
206
228
215
176
225
165
213
161
196
170
263
193
225
273
171
153
141
224
156
154
211
232
203
199
218
217
176
252
203
182
232
141
157
239
168
143
201
165
197
224
146
164
240
194
238
256
202
181
194
205
225
193
235
144
211
206
191
167
180
158
193
214
199
231
230
232
153
111
188
216
195
200
201
149
153
202
192
151
163
174
214
245
219
207
186
200
231
219
214
227
196
204
166
208
258
255
255
170
138
237
162
196
175
228
206
258
227
225
234
205
235
236
231
183
198
242
241
227
235
220
177
242
173
173
184
163
168
150
206
150
178
245
157
136
259
257
153
200
202
202
199
132
216
177
225
183
227
217
221
213
162
182
121
137
251
219
233
157
230
265
231
215
257
254
208
113
193
213
195
218
216
231
204
197
223
151
186
202
203
195
245
143
211
263
216
227
239
219
149
176
208
214
245
200
227
223
210
125
208
172
119
155
209
258
242
226
224
230
191
258
259
151
161
157
148
208
194
224
184
140
223
229
186
233
195
118
213
174
152
209
162
167
193
176
195
180
204
184
143
209
178
218
235
160
213
193
224
217
207
211
134
196
204
190
207
211
233
260
204
231
212
228
219
154
140
215
150
192
161
250
183
187
253
181
185
200
178
219
151
103
179
264
133
177
185
150
205
170
157
198
256
238
227
201
212
183
159
191
232
174
244
200
185
186
139
164
190
239
193
156
193
207
181
200
239
229
195
197
208
189
196
202
201
220
189
248
169
213
191
187
167
209
247
108
210
177
206
198
183
248
180
191
231
209
184
205
166
125
191
229
172
148
240
226
168
251
157
185
171
215
249
199
214
279
263
171
162
220
192
162
213
262
221
246
192
197
170
212
170
186
208
178
226
161
234
237
178
180
227
185
143
170
233
206
194
277
215
186
235
225
203
159
147
241
222
196
184
196
197
162
195
201
206
194
173
239
228
203
252
263
221
189
200
224
192
151
199
205
139
228
218
210
165
192
203
204
191
232
226
181
206
153
235
198
184
219
227
214
270
178
230
261
157
200
186
186
195
197
228
129
198
210
177
147
141
152
182
162
191
213
142
175
182
212
180
210
165
219
202
229
123
173
233
187
149
219
193
194
208
208
239
227
239
224
219
216
179
161
216
199
195
144
216
251
188
227
153
164
207
194
236
200
195
254
200
219
239
129
195
229
208
138
207
212
125
170
184
202
193
145
216
240
138
175
213
246
184
163
152
187
177
155
177
183
206
229
177
230
215
230
186
159
247
219
211
173
143
283
218
241
210
215
143
174
199
152
190
199
206
118
259
207
181
193
203
229
239
214
217
202
148
190
146
155
195
215
183
223
188
256
246
211
198
208
194
240
183
210
249
165
198
194
150
193
169
202
235
227
172
234
159
183
206
180
256
193
205
254
181
165
165
178
231
144
160
166
246
197
185
178
194
249
222
167
253
240
196
233
249
251
168
260
223
177
217
186
155
180
195
128
178
213
222
182
222
254
218
232
221
176
219
192
101
175
169
224
155
196
213
232
211
190
226
273
225
200
210
200
212
255
182
204
199
239
167
224
235
221
162
197
194
229
180
145
246
199
197
145
190
211
174
172
152
218
214
218
208
185
204
240
183
182
197
186
157
182
105
218
253
195
183
163
252
182
237
252
136
235
229
215
114
171
257
208
209
209
149
229
199
207
238
157
194
243
239
204
209
203
220
211
167
174
208
191
180
174
203
169
168
178
189
254
185
187
157
132
252
169
100
194
248
252
215
204
175
177
153
196
225
154
208
204
260
207
190
210
156
130
238
226
248
205
189
221
236
232
239
191
178
208
190
199
218
159
244
217
216
198
168
148
212
197
238
152
196
269
211
222
177
202
173
243
218
201
212
226
185
209
248
207
217
188
244
162
241
111
234
190
187
221
201
132
218
207
193
174
176
232
175
162
156
220
229
238
180
219
174
222
212
179
217
238
245
199
256
190
276
221
201
178
236
184
188
200
240
195
235
140
169
218
227
212
207
222
195
187
210
213
152
231
151
125
223
201
187
214
202
107
221
174
203
153
205
200
214
194
238
229
229
196
244
200
223
209
219
162
212
233
213
250
160
174
143
221
219
201
161
159
159
187
199
169
196
183
202
216
175
193
193
173
233
128
231
185
224
199
216
213
214
187
203
210
229
227
224
118
181
190
149
190
201
200
238
211
203
181
189
143
193
147
143
159
178
202
267
199
166
226
169
208
181
245
251
231
231
222
198
158
229
196
212
228
171
198
193
262
236
259
174
157
190
181
167
223
232
168
184
273
217
207
209
218
151
176
185
223
212
246
256
202
234
152
234
208
207
253
197
148
200
210
207
183
203
148
237
199
164
197
206
232
190
179
158
211
153
241
191
198
199
223
228
177
145
101
216
222
196
187
209
202
209
212
216
164
238
208
211
173
190
186
191
164
237
225
179
162
135
137
226
172
212
213
186
255
200
194
226
157
228
181
219
252
203
228
189
234
153
183
191
211
111
212
144
236
239
181
205
253
236
235
145
125
165
172
220
203
125
208
215
230
192
226
189
196
226
191
167
219
193
219
205
219
209
224
221
192
205
212
213
238
188
224
146
162
170
207
203
201
164
199
220
219
199
216
199
171
229
197
175
200
159
184
194
208
209
149
197
173
223
210
233
202
251
234
156
166
202
219
169
210
226
190
225
212
208
174
210
182
232
231
200
236
250
225
203
216
158
207
169
189
157
181
218
181
197
166
193
215
229
191
175
279
184
248
236
212
207
223
172
198
198
182
245
146
217
155
213
185
181
182
184
236
218
207
230
136
219
195
199
148
173
158
172
212
150
187
209
202
163
230
270
248
232
191
268
170
203
256
205
233
173
238
206
287
213
201
182
155
165
142
239
269
176
252
264
183
221
177
197
198
142
199
155
243
203
210
158
171
217
203
247
185
213
264
215
157
206
178
162
168
140
218
203
215
214
203
251
156
175
218
235
211
180
168
194
256
211
236
216
234
240
225
159
187
167
173
190
178
124
192
237
187
245
130
177
221
192
185
189
175
228
167
188
221
204
257
220
133
225
262
236
179
181
230
212
178
242
164
116
188
202
173
204
195
219
212
211
203
208
216
198
190
187
219
130
154
182
217
184
163
183
170
193
213
208
206
252
176
215
208
210
229
131
183
200
204
212
144
207
161
198
152
210
229
227
225
199
218
251
236
193
215
293
157
189
209
263
169
211
191
229
182
174
177
239
226
146
236
211
247
192
209
199
178
144
210
177
250
194
267
181
169
196
183
184
191
249
239
225
230
166
206
179
205
162
230
126
200
219
188
212
205
181
187
230
176
246
145
194
186
153
214
175
149
210
247
218
208
194
271
232
210
199
207
172
237
179
122
199
159
163
204
163
162
199
92
273
183
184
167
163
205
241
234
205
247
243
193
218
175
252
185
196
123
151
250
196
192
159
248
132
186
198
231
224
241
204
215
209
225
222
198
204
214
232
140
152
191
206
211
187
238
169
169
176
129
201
236
179
177
206
215
260
152
280
165
199
251
203
175
232
222
152
186
203
255
260
162
203
109
169
213
168
122
215
211
174
225
245
205
231
144
172
227
193
224
235
249
226
124
176
198
164
180
151
209
107
211
177
162
215
219
261
168
195
224
211
201
268
198
170
197
180
165
238
178
256
201
234
158
200
204
164
216
202
174
183
199
177
147
216
194
223
164
194
224
261
256
214
140
247
232
185
172
220
226
226
206
217
152
192
234
206
212
210
202
225
145
244
230
265
201
183
228
175
225
156
241
212
162
154
224
252
149
231
184
254
218
203
195
230
179
253
205
158
201
235
230
201
262
132
164
146
201
162
247
139
195
123
214
167
134
215
184
191
162
130
202
188
143
218
190
202
245
197
243
239
154
211
176
191
176
172
151
185
114
234
173
195
217
196
162
194
284
252
150
217
218
181
206
231
241
177
233
246
199
241
217
189
200
249
229
197
190
219
215
237
219
200
203
184
234
224
162
183
160
167
227
215
210
196
267
200
213
208
211
214
188
187
221
193
191
214
201
256
177
163
174
193
190
159
230
197
244
254
211
202
174
201
202
228
205
227
231
201
239
103
165
159
258
240
162
230
250
253
202
239
193
228
186
205
196
251
207
206
226
157
186
206
203
150
192
167
159
164
120
229
230
168
294
136
172
165
238
225
113
185
237
162
188
214
228
194
190
206
206
221
253
185
207
212
133
204
198
225
236
220
176
192
236
217
242
171
231
213
187
209
214
225
214
252
200
198
172
174
179
170
198
223
233
226
194
177
126
231
172
158
137
249
198
253
231
207
204
258
148
196
212
225
166
187
210
162
191
195
145
227
166
252
216
150
178
199
183
248
183
230
187
143
184
167
161
210
174
195
223
201
221
172
173
217
143
203
195
244
220
169
247
193
221
181
282
188
197
235
223
131
239
247
235
166
163
195
210
282
199
215
162
209
233
142
148
246
207
201
182
247
248
180
190
198
151
239
174
194
178
150
237
264
264
211
196
167
168
218
218
171
227
101
194
105
189
190
186
226
178
226
150
179
241
238
239
218
199
153
195
178
225
147
147
222
213
207
208
212
246
158
199
180
172
199
225
185
236
235
163
181
148
200
200
214
219
215
179
155
176
201
226
191
246
234
254
203
216
225
217
224
219
192
209
144
124
212
148
189
178
220
214
167
126
178
159
201
231
222
241
178
194
193
158
202
150
185
215
165
195
187
206
101
235
182
142
183
235
192
207
183
255
185
190
207
248
195
203
232
244
226
210
147
182
206
142
120
210
202
168
216
168
161
193
211
253
207
250
178
159
209
226
192
240
192
204
233
198
141
260
237
212
223
155
217
167
179
161
175
173
175
185
214
204
164
224
220
160
177
221
249
215
155
142
224
165
177
191
227
173
189
171
167
216
197
177
107
188
207
239
186
233
156
170
178
252
236
226
215
197
226
209
217
169
231
263
274
252
227
185
187
214
216
193
273
240
179
181
180
164
199
213
192
240
225
216
218
231
169
229
164
192
202
175
224
238
226
205
210
150
201
212
214
221
148
231
201
214
176
266
229
211
193
174
222
250
170
213
156
238
181
266
172
164
182
222
211
150
219
180
227
183
278
235
177
193
108
233
204
201
243
221
244
201
180
184
283
228
209
209
172
213
239
211
224
195
181
162
221
213
207
174
248
189
167
165
141
219
150
153
149
234
180
173
215
147
237
237
262
194
196
172
209
193
249
162
159
116
250
228
181
223
200
234
181
197
210
234
221
237
232
202
204
185
174
186
198
201
223
211
157
207
200
208
215
245
217
255
109
266
153
218
191
231
223
160
157
166
180
235
175
201
269
224
229
152
261
205
135
206
251
231
210
230
194
253
180
177
196
189
214
215
219
206
143
163
147
195
181
176
141
198
242
178
195
226
241
170
166
181
179
188
248
159
252
285
197
222
250
176
199
243
140
203
184
181
215
188
203
193
266
204
191
226
179
186
166
155
227
216
186
244
202
173
235
177
196
164
235
254
249
228
216
201
197
129
156
208
193
161
143
180
259
181
223
256
204
225
197
212
186
199
189
149
223
203
137
199
212
193
254
218
194
123
174
229
187
241
218
166
210
177
188
221
194
267
190
205
254
131
158
240
139
140
249
195
215
213
217
193
247
148
188
190
192
212
256
244
206
319
173
181
250
178
215
266
117
224
153
193
174
239
226
211
188
190
219
161
196
197
232
192
152
150
173
175
235
215
145
174
152
257
193
203
171
175
223
191
220
216
240
175
223
270
171
250
226
176
175
225
215
177
184
186
187
210
271
189
167
213
205
122
141
168
194
168
139
227
220
163
232
243
137
220
175
185
194
211
206
157
183
252
227
219
151
226
194
175
224
204
188
192
253
253
215
190
227
220
216
238
205
225
200
164
200
242
156
178
233
213
215
174
155
225
258
137
177
189
259
252
133
261
280
197
209
239
145
144
241
219
203
209
205
197
222
254
255
205
246
113
218
237
262
180
142
183
200
155
185
151
164
186
191
167
242
209
185
172
196
228
178
205
171
225
193
134
199
181
197
224
208
144
226
196
207
196
222
227
210
201
231
144
145
139
185
233
223
246
218
210
183
185
193
206
227
180
195
200
173
199
179
204
186
219
195
194
132
176
234
226
268
233
197
210
186
188
205
206
165
208
266
216
223
214
200
229
184
214
241
209
216
167
175
143
155
216
160
150
209
206
209
209
137
182
222
206
223
229
241
218
191
228
199
131
232
183
250
229
209
149
257
264
240
200
204
224
192
218
248
151
146
163
233
223
179
173
145
224
138
206
256
163
197
153
178
210
233
217
190
213
242
215
211
250
211
179
209
179
207
185
135
246
198
201
194
183
225
183
152
207
211
149
195
242
200
179
207
193
194
239
181
152
195
217
171
177
263
209
205
216
224
205
198
218
244
206
216
219
181
160
168
187
204
157
229
224
221
188
177
128
129
179
186
207
131
221
183
201
211
166
212
189
227
234
174
251
184
240
230
252
237
202
201
214
160
263
203
191
207
176
170
228
170
240
194
210
143
192
263
202
230
131
247
218
211
253
188
255
182
158
228
258
181
257
245
231
148
219
139
221
171
202
158
193
232
214
188
226
162
268
188
208
245
198
190
196
221
135
234
161
232
215
159
238
255
152
225
199
167
259
184
211
210
209
150
169
199
216
215
208
228
185
216
189
223
182
162
229
235
183
251
196
214
144
146
217
196
214
229
214
240
215
180
205
168
254
200
198
224
222
160
189
233
182
169
188
189
209
190
262
191
180
180
189
198
214
164
171
135
221
187
192
175
200
113
142
145
189
263
196
227
180
227
222
167
138
220
219
195
187
184
165
248
236
203
223
183
216
240
200
208
219
236
152
147
191
238
169
209
189
206
197
199
160
174
212
191
181
253
195
233
183
211
203
149
206
237
279
144
171
208
146
186
177
179
246
236
206
200
110
216
178
197
188
174
211
261
159
219
227
251
190
220
175
189
174
237
183
136
180
200
203
235
198
170
215
237
217
266
204
181
150
207
128
228
108
178
185
211
170
207
158
144
219
199
215
185
194
235
240
222
226
186
235
195
165
172
234
237
202
199
192
201
186
179
191
140
243
215
182
194
181
190
137
154
245
236
202
187
192
193
233
116
230
140
114
205
184
182
272
157
200
201
166
251
149
233
228
204
165
168
182
168
209
97
175
194
224
211
172
214
211
229
235
189
219
236
194
195
221
201
129
171
208
204
217
223
248
171
176
232
205
172
240
234
229
204
179
208
256
167
213
265
177
209
174
250
167
253
182
179
189
177
193
159
197
208
145
183
168
122
182
193
270
209
232
207
199
149
234
184
204
256
260
203
256
233
206
194
225
142
246
219
185
238
209
178
188
213
193
115
227
154
203
167
229
185
176
173
152
198
213
206
218
201
222
226
185
199
185
196
234
247
164
200
220
163
213
204
184
170
204
161
249
251
230
260
224
124
203
154
214
218
209
192
154
198
186
154
289
174
219
216
164
165
258
201
261
214
172
178
168
217
234
197
247
205
196
168
255
209
164
165
222
247
242
228
223
202
174
223
135
212
151
217
204
193
156
197
274
202
206
226
239
229
159
176
208
187
281
195
197
275
154
163
165
156
220
223
251
245
155
209
225
191
222
170
183
154
166
188
250
247
210
201
152
213
247
216
179
208
193
228
211
194
174
232
175
140
280
193
172
160
220
223
197
157
229
190
178
234
246
189
195
247
291
247
266
205
173
192
152
198
202
182
206
220
223
228
199
222
253
160
198
237
196
197
243
193
167
218
170
162
209
212
296
242
176
201
186
229
191
200
232
214
214
212
120
196
129
177
182
119
193
216
225
179
242
214
170
221
187
277
224
206
232
171
180
121
253
238
267
216
217
206
200
187
230
201
242
188
198
245
182
165
198
220
190
214
255
254
191
188
205
166
179
209
141
208
218
191
226
195
171
209
209
218
162
204
200
250
201
143
128
207
185
254
169
226
167
128
147
210
225
184
175
196
182
246
227
231
198
132
194
258
204
192
141
221
212
176
228
240
154
233
238
185
203
255
157
238
192
188
157
212
184
174
198
251
212
197
188
150
164
180
149
156
166
163
203
193
176
179
174
188
219
202
195
193
212
190
228
193
174
169
198
202
194
121
240
187
278
180
206
171
209
158
121
218
167
246
277
211
198
227
235
182
248
222
208
157
210
175
184
243
215
221
113
189
202
181
201
182
153
204
190
137
221
151
186
216
256
203
182
195
161
253
193
150
248
222
182
179
247
250
167
216
228
182
195
161
175
216
143
213
271
165
193
181
169
238
168
226
269
205
189
229
148
166
193
174
132
167
208
256
196
172
217
177
219
191
182
257
184
205
262
169
174
198
219
212
194
114
201
230
186
250
216
229
226
176
186
189
181
222
183
159
157
202
192
260
221
190
231
204
196
129
147
165
248
188
240
216
182
221
212
179
218
194
209
170
146
223
224
153
189
197
179
168
153
204
189
256
133
224
222
186
160
193
172
189
198
156
203
216
178
183
189
168
242
186
155
197
123
227
218
208
227
211
208
225
167
167
158
161
208
157
150
179
209
192
169
146
147
221
155
201
279
241
243
222
222
236
194
190
242
205
243
228
170
251
213
198
173
278
190
233
159
186
199
206
224
182
219
222
166
200
191
142
215
154
161
221
199
200
232
177
186
163
154
232
193
199
201
139
209
203
210
227
208
224
214
194
173
180
227
270
233
176
227
150
112
241
221
243
254
218
227
218
220
173
213
155
223
202
201
186
187
103
150
192
231
171
184
208
167
229
182
201
200
137
245
198
231
229
202
223
177
212
160
210
254
168
204
180
201
211
254
174
276
240
223
208
181
212
245
223
211
173
149
213
152
195
222
157
179
167
204
176
277
201
244
202
197
188
246
147
152
208
209
229
145
158
165
206
165
225
180
204
179
196
252
242
211
192
204
243
175
207
252
201
163
283
222
176
194
222
164
185
244
210
194
237
238
238
177
202
171
218
160
219
151
193
174
208
124
196
214
223
219
234
199
233
195
203
202
155
223
184
236
242
245
189
179
199
191
194
176
145
201
271
234
198
241
245
225
197
246
260
241
194
179
215
185
152
213
239
185
217
225
211
142
129
195
237
188
172
222
213
182
240
176
242
218
170
149
184
257
212
241
172
260
166
224
229
151
164
174
216
177
140
136
181
200
204
198
209
154
166
202
203
176
179
185
216
161
216
240
263
138
191
199
187
174
213
197
206
169
141
267
213
164
172
215
212
197
239
226
173
151
266
186
215
237
153
276
199
173
231
252
226
211
234
220
203
196
198
201
256
212
227
216
193
199
161
147
217
191
199
198
241
223
201
226
171
194
207
198
163
276
196
200
194
154
269
190
261
210
191
214
185
187
194
214
209
136
169
202
273
132
224
162
245
188
180
175
175
235
155
258
178
157
249
182
187
265
206
245
183
246
143
226
269
260
131
203
213
166
212
201
138
155
175
219
214
215
171
219
200
171
219
251
208
224
204
168
229
247
190
181
171
200
204
195
153
232
239
198
217
160
158
141
192
205
217
146
220
149
220
182
223
163
143
181
196
235
131
174
134
214
224
188
174
201
187
174
241
202
210
181
187
256
178
225
172
178
233
266
216
215
146
181
190
240
241
196
205
210
243
187
200
191
196
196
213
164
275
124
183
235
218
180
198
191
209
254
196
259
175
115
184
234
206
176
217
201
161
166
252
247
173
218
229
246
218
198
255
261
191
159
203
188
127
251
189
201
239
214
103
208
190
174
186
193
229
150
235
160
196
190
167
203
199
154
224
185
207
231
164
214
229
253
253
194
194
168
218
211
222
189
245
165
182
198
170
218
209
158
248
208
259
187
188
198
180
162
219
221
163
196
240
194
174
124
137
226
218
183
174
258
142
164
218
189
204
224
180
151
236
203
228
175
201
176
211
209
208
201
133
153
213
217
244
194
219
228
146
224
240
222
184
215
202
192
220
255
147
214
185
219
175
177
163
207
199
177
255
238
230
229
181
149
208
210
198
216
199
161
190
244
197
123
211
221
153
206
196
235
175
193
196
146
168
263
240
185
191
192
167
194
176
162
195
200
218
202
170
197
139
199
212
180
181
215
213
157
241
121
162
225
227
250
176
258
226
218
206
189
218
193
223
209
193
253
156
274
193
245
163
216
178
127
222
230
210
199
241
201
135
179
125
202
166
184
203
181
224
217
190
177
234
245
167
207
216
222
278
205
198
172
220
197
259
265
208
151
209
219
223
211
159
232
186
201
237
239
183
218
183
238
184
210
249
184
209
155
147
225
166
194
156
213
115
229
183
175
174
226
209
249
236
234
225
193
204
206
209
194
168
187
210
215
192
182
191
193
250
194
193
154
256
210
190
250
218
214
150
214
209
147
205
167
175
225
185
215
173
177
201
229
239
266
212
181
244
180
143
229
160
219
261
169
214
192
220
276
172
263
228
208
183
229
187
185
215
220
173
190
190
204
171
248
240
181
268
228
160
203
197
235
190
191
217
168
216
202
233
222
194
163
223
121
253
186
185
228
286
94
173
207
222
230
206
172
160
231
280
195
235
239
198
201
224
206
187
180
221
156
194
273
199
239
248
227
234
188
180
204
119
193
215
231
137
193
158
256
218
203
194
147
160
204
198
235
207
181
231
211
161
199
178
217
177
186
190
176
226
183
149
157
144
188
237
186
181
169
168
127
171
178
193
175
122
240
185
294
171
191
189
146
175
252
194
187
162
150
174
228
191
181
177
242
179
192
169
124
168
213
163
187
188
232
172
186
157
189
208
192
220
213
199
240
193
255
238
100
144
195
200
277
211
194
122
230
222
173
218
110
153
185
217
148
180
155
178
173
208
267
153
180
227
209
178
153
144
160
227
162
150
239
79
232
259
207
206
251
236
150
161
160
121
167
172
195
200
188
246
168
198
230
249
230
181
219
177
159
233
235
173
235
275
203
154
257
183
226
197
239
206
218
233
200
209
167
220
209
230
158
215
175
236
156
233
213
168
206
168
166
229
214
186
216
163
128
131
192
207
166
224
146
181
247
220
188
234
187
181
218
141
225
148
247
163
218
229
171
180
255
231
207
162
230
256
160
198
172
174
201
202
213
163
184
263
260
202
184
222
245
242
191
212
198
247
193
211
211
216
198
162
222
220
162
260
206
175
220
220
186
235
192
238
227
239
180
270
226
165
183
248
186
279
105
201
260
258
231
154
221
248
213
231
255
162
218
248
227
199
213
178
205
154
185
210
220
246
205
232
177
271
204
185
157
167
213
190
248
197
217
224
170
167
188
169
245
233
205
151
207
235
212
227
183
217
214
204
174
221
200
171
232
191
263
234
220
248
193
194
175
197
206
238
226
179
168
162
203
191
153
206
199
144
180
163
188
175
198
117
162
192
236
247
152
145
200
176
247
258
180
143
211
200
222
267
188
198
198
212
128
247
191
233
268
207
179
217
181
202
219
184
184
222
166
179
192
181
207
217
167
190
156
186
292
170
207
157
212
176
239
187
191
212
191
211
236
194
143
136
216
148
205
234
205
174
188
225
201
279
199
195
194
261
201
219
197
212
136
240
152
190
141
226
271
166
255
155
229
220
226
244
169
267
225
196
174
186
165
153
108
206
159
230
232
177
247
221
184
163
214
194
160
203
189
259
229
180
201
246
163
172
129
231
169
136
187
232
140
245
170
141
157
190
239
265
260
276
159
267
221
132
223
193
190
206
205
221
211
200
214
181
189
205
160
148
211
204
229
202
222
169
234
205
208
216
230
228
156
145
168
181
176
249
159
195
216
147
179
237
233
154
217
250
140
241
162
212
201
280
131
276
244
162
233
126
191
164
179
200
158
230
207
161
233
166
183
222
165
178
159
187
194
226
246
229
148
199
158
229
189
196
169
188
238
139
214
170
240
173
224
223
203
194
206
216
221
240
173
196
115
251
197
177
194
262
212
202
216
210
234
194
186
190
94
205
169
190
173
244
197
230
217
190
138
242
233
110
160
168
184
217
210
214
171
173
237
213
199
223
177
147
111
198
160
216
206
198
177
164
224
168
266
158
180
251
208
208
182
146
170
185
189
219
179
199
240
219
206
211
241
194
251
160
156
233
210
217
238
167
200
194
200
193
220
252
224
228
201
234
255
212
177
235
180
171
270
173
180
251
188
283
191
205
190
222
199
126
198
187
166
266
203
274
172
148
188
167
150
250
193
234
244
168
221
178
169
177
201
239
208
181
177
150
241
213
202
239
166
245
205
165
199
180
188
207
231
246
204
206
151
204
219
245
217
244
143
124
202
212
194
266
177
196
166
202
224
176
177
244
225
201
175
210
206
245
214
219
258
231
203
203
213
164
221
226
186
156
187
150
161
195
214
228
244
180
201
179
218
177
188
251
139
151
227
247
188
251
290
149
176
217
139
218
232
201
240
199
242
194
221
206
163
248
192
213
154
169
257
208
277
225
207
122
194
230
197
177
187
161
216
179
216
187
188
191
244
124
236
246
222
167
185
209
233
204
269
188
193
179
182
216
223
221
177
192
163
216
229
174
246
182
194
179
213
248
216
232
156
235
195
173
160
252
162
185
187
208
107
278
195
241
187
241
184
231
225
229
197
191
161
172
142
185
203
153
173
214
233
196
152
146
257
200
190
165
226
171
209
195
197
169
144
168
179
196
273
195
193
176
178
123
214
171
255
243
205
181
207
236
185
149
201
254
192
191
213
182
218
185
198
150
132
172
214
227
169
244
148
244
187
206
204
232
201
216
198
224
237
140
221
248
226
231
256
224
188
211
204
234
237
205
227
218
181
180
188
222
235
205
195
225
218
237
238
153
126
157
193
247
162
177
176
173
206
255
157
236
185
190
220
189
162
150
220
195
227
219
197
231
292
190
171
246
218
242
254
143
146
259
155
181
212
193
164
195
182
227
173
231
200
280
196
186
205
173
210
198
243
264
214
227
166
159
198
174
218
160
185
185
215
211
203
193
186
155
168
211
242
216
131
211
175
167
193
192
151
177
211
225
233
196
204
256
210
251
248
215
170
218
210
243
180
163
229
211
180
180
150
233
203
170
156
191
141
200
90
207
202
251
223
206
212
246
240
229
239
210
193
234
202
169
297
167
165
179
246
259
203
221
185
231
239
215
207
215
186
234
188
200
155
162
262
268
187
203
226
213
141
191
199
186
214
179
212
190
190
190
170
247
182
235
192
200
202
210
179
190
257
238
212
217
151
224
231
258
158
211
219
235
159
158
192
159
216
170
204
231
238
217
248
198
157
213
110
165
213
252
186
225
181
151
187
210
213
159
141
161
245
197
174
217
241
196
170
161
213
189
201
231
231
123
227
168
227
171
276
218
175
153
204
142
167
175
162
179
208
207
234
216
206
186
218
226
180
205
207
196
143
259
244
185
231
132
255
220
142
171
243
213
246
232
228
191
196
167
264
201
234
178
230
154
227
188
141
233
228
182
209
274
222
215
171
238
212
217
188
187
160
193
193
229
180
182
153
234
223
152
168
214
192
224
207
177
244
217
135
123
187
167
207
253
261
211
239
188
212
160
220
170
194
244
208
148
213
208
217
227
227
146
211
216
197
233
201
225
167
204
256
152
244
199
193
250
191
135
178
170
163
158
193
205
111
236
274
202
257
192
225
247
241
199
235
243
259
175
166
204
195
193
241
218
248
226
123
161
227
213
203
182
183
207
217
176
223
205
237
220
179
178
182
225
207
154
207
219
243
221
211
182
213
198
232
210
204
229
188
221
257
218
224
180
191
233
188
212
230
223
220
260
166
240
253
198
126
196
176
172
209
154
239
146
236
240
226
226
172
196
238
169
239
151
187
183
184
160
147
178
176
195
177
221
265
210
178
192
199
258
210
223
211
217
180
247
211
229
188
199
249
163
221
187
173
238
251
259
181
186
250
186
201
237
190
141
139
182
202
160
170
250
208
198
206
187
206
226
190
211
166
250
167
237
165
172
165
201
215
177
261
127
140
132
133
196
258
199
179
183
190
264
235
205
233
166
126
218
205
209
140
225
234
187
228
196
224
179
142
179
210
199
224
223
188
214
203
205
265
213
150
222
177
154
196
205
165
234
165
243
134
241
218
198
228
198
135
200
156
189
165
206
269
143
204
122
213
234
204
148
198
145
143
151
145
207
185
229
182
168
188
243
166
202
205
217
234
260
245
221
228
211
170
174
207
184
200
205
220
198
192
234
179
236
136
251
198
215
212
237
257
234
278
241
200
174
189
202
137
173
255
207
160
200
203
248
186
147
200
228
162
172
254
202
194
201
214
217
210
233
201
128
257
211
213
231
266
183
239
183
204
187
286
228
242
166
180
209
180
238
190
184
233
247
179
221
224
206
244
223
164
218
204
188
210
241
182
159
143
175
183
116
165
212
227
169
219
165
192
172
201
160
152
170
209
231
198
163
240
223
141
166
202
184
209
240
198
199
266
183
184
170
166
215
259
231
203
196
215
239
179
221
180
218
233
246
249
187
227
160
159
196
236
231
207
163
184
172
162
223
204
207
206
247
277
207
158
206
154
202
231
269
234
148
215
201
220
155
197
225
218
184
146
275
144
218
152
166
238
171
188
296
247
182
213
230
202
225
245
199
202
218
159
231
201
220
182
156
213
229
228
132
165
179
198
202
155
238
165
231
126
237
282
243
162
216
179
197
182
111
226
216
213
230
156
209
217
230
274
222
124
223
158
107
215
174
193
262
196
260
275
177
199
237
204
179
238
199
212
217
221
218
273
174
264
227
155
276
192
205
181
207
201
207
188
235
186
195
221
212
205
180
145
185
208
190
181
235
139
246
142
193
152
174
152
181
168
205
229
231
188
183
204
181
193
205
231
245
192
142
221
176
251
214
269
192
156
141
219
184
238
246
189
251
232
206
216
233
157
173
263
124
246
266
233
259
211
247
181
214
164
211
191
184
153
244
112
250
223
193
206
205
180
217
205
217
248
183
166
233
162
235
187
202
144
218
238
243
209
198
160
187
201
203
188
196
215
261
189
244
187
167
169
205
137
120
208
226
193
262
257
149
168
215
204
203
238
253
149
120
201
143
187
161
153
226
238
184
167
220
264
179
250
210
261
219
233
215
227
243
214
180
175
219
152
195
220
270
141
171
230
214
248
200
215
184
232
189
200
163
231
235
212
260
158
201
241
249
194
150
188
136
285
212
216
232
236
224
187
223
221
210
214
175
193
206
195
180
137
175
179
234
167
194
189
206
206
176
230
250
200
233
168
179
215
197
167
219
228
195
182
259
211
240
182
200
213
194
176
229
184
224
200
218
217
201
184
190
160
172
235
183
257
233
256
183
176
175
235
217
177
171
242
250
171
238
203
256
205
171
216
179
188
143
193
180
202
231
218
231
167
248
156
152
187
133
245
199
218
245
173
170
181
181
189
216
250
186
199
194
256
169
189
241
157
209
249
262
255
250
216
162
199
215
266
233
249
188
136
221
270
211
193
278
181
173
152
220
176
231
183
143
202
223
212
208
225
219
184
206
222
253
200
204
240
226
200
210
227
221
251
238
115
133
150
230
197
207
277
222
218
182
175
236
176
177
200
201
217
188
231
157
250
197
154
208
208
183
207
245
195
164
197
202
204
165
217
196
200
185
185
189
223
188
200
222
246
180
215
232
185
230
172
191
223
195
244
197
197
199
254
188
183
194
165
143
215
201
176
171
218
226
172
171
273
259
220
211
201
163
195
206
214
210
159
220
160
187
248
235
205
255
172
127
230
149
153
253
182
224
160
123
169
219
157
217
191
194
180
157
220
197
230
195
179
215
175
185
161
158
273
197
229
245
229
238
215
182
214
171
170
201
185
186
150
138
197
170
156
189
156
211
223
117
228
179
205
187
177
226
190
199
167
211
194
211
193
208
238
254
246
169
196
267
229
183
197
137
187
179
187
231
166
247
152
234
191
216
173
148
208
276
207
183
255
215
199
207
140
194
228
227
203
237
188
229
210
206
190
206
181
189
209
200
233
193
267
215
167
182
192
181
220
196
203
190
194
249
153
253
178
212
146
168
193
182
213
201
155
214
173
155
132
215
156
136
214
112
169
143
213
174
166
195
163
202
187
219
201
198
178
200
232
190
152
177
212
236
197
209
193
181
144
204
264
240
185
247
240
232
185
236
247
266
199
197
187
186
249
238
208
183
152
166
173
225
176
200
182
248
227
206
218
180
214
175
269
207
217
197
183
191
161
187
169
209
220
187
177
195
116
138
221
228
209
205
176
210
182
192
180
151
215
132
201
190
232
144
223
208
168
222
169
212
204
231
231
232
167
220
188
252
141
182
123
231
194
184
216
219
193
192
238
211
184
208
173
175
219
185
186
248
225
234
208
250
210
230
190
238
164
168
236
240
173
162
115
172
205
166
169
143
198
202
233
162
192
130
187
156
241
171
180
178
136
246
147
197
116
272
195
216
207
169
215
231
178
149
181
241
253
182
220
195
220
289
203
208
262
216
238
186
228
180
173
185
227
210
256
266
143
237
212
223
252
250
252
239
242
247
203
180
242
209
191
227
151
239
253
135
214
223
205
141
249
211
198
259
173
171
162
244
222
219
210
239
223
214
188
241
172
189
233
229
167
128
121
222
241
203
188
196
158
141
254
185
193
220
174
143
208
234
272
192
208
158
170
138
222
225
168
170
230
230
166
199
218
225
175
231
200
181
109
197
206
163
248
245
144
246
169
153
261
179
237
207
173
183
158
199
184
187
197
184
173
179
183
215
202
160
206
177
205
234
178
198
193
171
194
193
232
236
197
160
176
240
173
215
202
199
233
148
200
189
202
255
157
224
210
199
216
167
171
228
145
184
163
198
193
233
120
169
116
183
200
236
196
184
217
150
278
191
260
143
218
224
165
215
208
224
178
206
218
185
186
147
211
178
204
201
240
207
228
177
194
163
181
226
168
212
218
222
146
177
273
157
197
277
210
215
196
211
128
214
193
222
147
118
202
132
186
167
197
169
206
193
208
135
213
152
216
140
187
153
130
169
193
183
196
207
184
177
245
179
251
208
213
251
251
205
182
187
141
262
240
275
235
146
184
171
190
241
113
176
241
202
248
247
148
202
190
189
187
159
168
194
194
228
184
248
192
102
157
239
210
185
191
179
192
179
193
257
208
200
227
203
220
222
198
238
166
229
187
210
248
224
219
277
203
260
175
290
191
255
210
205
229
202
144
244
254
179
163
168
192
230
172
205
260
230
205
178
185
215
197
184
216
209
183
227
200
189
208
141
196
195
225
201
153
187
186
201
171
235
203
231
179
230
186
262
231
206
170
216
212
277
251
249
159
199
197
214
166
232
231
212
224
151
195
165
173
171
256
215
255
216
204
146
206
209
159
173
182
174
127
215
194
237
210
199
168
230
227
287
219
240
166
234
166
157
220
209
145
206
194
239
142
235
264
155
225
213
252
180
203
147
218
160
173
102
183
204
142
189
260
180
206
224
231
210
202
211
196
155
142
174
206
185
198
182
238
211
213
203
230
207
215
205
238
179
212
237
207
150
256
202
169
233
202
259
126
254
209
161
223
228
174
258
195
218
177
188
217
147
229
169
194
214
116
233
215
205
257
233
175
239
232
206
229
191
156
167
199
215
214
191
226
170
219
178
188
237
231
261
178
207
184
217
161
256
211
205
187
222
261
192
210
188
175
206
204
161
191
234
158
241
229
207
205
190
205
220
160
226
202
151
183
206
198
193
221
205
194
216
171
233
197
277
224
261
287
145
189
194
212
238
193
186
218
226
176
272
189
218
172
148
189
239
224
201
225
153
188
236
186
211
231
213
169
239
183
242
199
177
258
260
219
182
198
197
186
202
219
151
223
213
163
186
203
211
188
177
218
197
169
207
156
185
173
206
173
148
212
264
165
232
187
248
139
179
140
165
210
175
236
128
207
211
226
239
161
206
190
167
183
187
220
136
208
265
226
264
206
154
211
147
184
185
189
190
177
263
219
200
173
212
227
169
143
224
264
229
234
209
249
272
239
208
146
205
160
143
205
185
132
212
203
187
195
205
242
249
226
197
172
176
210
100
192
191
200
200
175
224
180
229
229
161
143
207
230
187
196
224
193
221
200
133
200
232
228
139
251
212
217
196
232
170
197
185
217
231
147
229
158
233
223
208
221
257
196
215
155
218
227
244
227
230
227
218
217
214
281
187
170
243
184
195
205
196
181
170
179
231
211
246
179
247
177
240
228
223
162
184
170
178
213
233
227
210
161
184
162
171
229
162
113
184
198
246
217
249
142
259
228
222
210
171
196
119
184
219
243
218
227
231
169
263
182
183
193
193
177
148
182
260
166
206
212
225
199
188
162
187
199
219
235
227
96
169
208
260
238
236
162
137
216
274
202
208
223
238
205
248
236
172
206
152
147
210
275
181
175
223
221
234
191
203
207
222
201
259
215
234
226
221
213
165
198
132
198
251
206
218
167
175
193
194
249
188
196
220
154
211
176
223
264
208
179
190
189
185
256
281
185
178
252
187
195
223
242
261
231
167
210
222
250
204
214
179
219
185
172
231
203
184
261
189
169
137
192
264
187
188
210
236
176
175
208
220
215
183
266
214
204
221
230
234
220
189
221
231
214
265
194
252
94
209
152
191
260
212
159
189
180
261
180
132
163
245
172
246
133
141
247
195
166
172
218
241
180
210
151
123
231
207
134
198
270
176
161
253
186
192
153
193
197
164
208
184
180
198
206
260
149
244
254
156
188
161
234
202
197
180
138
247
232
134
191
271
194
224
188
238
101
253
167
192
206
203
242
215
191
169
168
177
166
191
228
216
244
200
201
175
273
197
213
206
184
185
216
175
154
189
139
195
270
174
214
150
215
163
182
256
195
242
187
218
141
212
219
241
194
161
187
273
218
191
190
200
239
189
143
214
195
176
197
204
133
210
201
257
202
182
180
296
196
187
230
177
172
225
196
209
185
197
140
159
189
178
201
191
244
217
209
203
214
210
201
188
158
198
216
233
146
151
218
232
206
245
171
173
189
244
244
219
147
167
200
166
197
225
229
239
191
174
195
248
193
158
186
232
205
230
224
272
211
242
139
178
222
214
247
174
185
193
234
205
233
194
242
130
214
147
177
150
218
285
242
192
190
244
170
140
196
156
216
199
247
165
191
174
220
220
177
192
220
182
236
223
131
160
172
202
163
182
214
210
246
229
228
224
198
243
161
194
122
160
147
145
133
249
247
184
177
216
226
181
238
195
168
186
193
146
207
215
194
130
178
226
198
145
198
193
211
284
185
268
202
198
160
186
178
247
131
201
241
213
211
185
224
216
256
187
211
209
138
225
247
253
237
253
247
200
253
273
187
238
270
217
225
172
149
219
175
193
230
185
258
223
143
209
164
212
247
193
211
208
206
207
276
247
252
242
224
193
201
196
208
256
124
214
176
224
169
167
190
216
171
213
212
200
136
222
233
158
216
191
152
182
176
268
193
198
206
178
201
166
237
227
209
146
218
161
140
221
199
205
296
245
159
183
181
160
207
237
267
184
235
203
196
215
233
198
207
212
214
228
161
245
197
118
191
234
236
211
191
187
199
152
242
186
166
102
282
226
282
225
189
135
164
145
220
179
211
207
154
227
239
220
177
194
256
197
214
150
143
196
200
221
262
220
188
190
197
180
210
173
250
187
199
136
192
165
191
228
197
167
237
215
170
167
199
195
236
223
200
205
249
173
173
241
246
236
209
214
231
180
212
146
222
193
224
163
180
241
235
200
215
159
192
241
176
235
158
261
224
220
248
236
202
219
202
248
181
226
231
238
215
232
223
231
223
195
168
175
225
221
245
148
193
175
194
255
246
125
222
241
191
216
140
184
152
249
175
224
216
177
255
227
211
180
232
221
228
222
201
222
192
259
193
274
208
202
185
157
170
191
194
177
145
130
193
138
208
191
222
231
272
182
209
239
237
221
192
197
184
198
191
168
152
210
174
234
239
181
170
209
199
218
213
183
187
194
156
142
222
239
177
156
297
215
234
176
199
141
133
198
239
166
219
227
100
206
201
247
225
265
165
154
175
156
175
193
185
201
148
269
204
231
245
190
165
240
250
208
194
205
209
181
257
221
158
154
173
213
199
208
194
192
204
178
206
171
229
110
208
242
140
252
204
156
235
202
184
186
165
254
190
177
208
171
234
171
191
155
181
157
227
202
198
223
172
223
174
237
183
226
192
214
174
232
147
196
177
198
130
192
254
168
218
201
187
202
166
189
219
228
184
198
206
243
172
260
180
213
212
243
139
234
196
201
200
160
211
204
227
211
215
200
181
219
227
245
228
146
186
265
197
181
174
227
230
233
135
164
236
252
204
270
205
239
237
188
207
179
208
134
214
222
202
157
273
205
252
185
165
222
137
180
207
210
271
189
185
251
216
193
250
183
198
212
159
193
240
231
205
146
206
256
110
208
222
248
156
165
123
217
143
279
177
175
212
212
173
243
184
207
209
246
184
196
211
213
227
204
189
229
186
208
217
215
215
146
189
130
156
182
204
170
232
202
179
237
204
182
173
274
216
179
226
233
246
155
176
218
183
206
206
139
253
240
208
219
164
201
224
248
176
149
194
221
216
165
194
173
229
238
186
209
200
188
218
236
207
243
193
196
154
238
233
224
228
220
185
210
208
259
211
208
146
211
179
248
190
207
142
212
222
193
251
227
177
219
159
197
210
290
261
205
132
137
155
235
201
230
179
177
156
153
211
221
201
202
248
174
223
221
175
207
212
214
205
209
165
194
209
203
198
138
198
194
212
191
201
184
238
257
283
254
195
147
185
196
203
193
258
188
228
168
181
229
241
244
198
177
235
212
170
128
176
200
259
176
254
246
201
223
194
168
161
220
140
213
155
166
201
139
295
197
247
117
166
171
215
167
191
206
123
205
256
231
134
224
188
199
219
193
187
229
168
211
198
242
230
196
213
252
206
199
231
173
235
179
168
219
192
139
208
155
257
229
182
172
222
232
234
221
128
193
216
210
163
259
183
195
190
244
224
162
171
114
223
164
164
218
205
182
223
186
182
217
279
207
221
227
212
216
216
180
238
250
177
227
168
176
243
192
166
219
248
238
191
205
202
182
233
177
204
228
211
201
218
161
266
241
206
177
210
223
219
223
161
230
250
180
197
184
133
159
192
240
232
211
211
195
216
275
168
190
184
235
243
206
173
184
184
259
204
227
217
163
232
201
173
241
223
242
181
204
157
216
215
263
178
216
187
235
160
248
216
204
169
164
179
150
204
133
250
208
179
180
220
269
224
159
245
233
200
196
258
227
193
148
217
170
201
230
180
154
268
219
192
174
188
130
195
190
237
247
201
232
159
244
243
184
229
204
213
192
191
194
162
200
244
227
223
204
224
289
230
210
171
201
219
248
256
246
183
266
182
224
217
198
249
225
257
181
225
164
248
200
183
229
208
207
249
180
163
215
206
222
184
216
198
178
237
144
184
180
238
222
248
225
207
160
203
234
247
199
228
158
197
194
233
206
180
164
178
190
208
152
176
190
196
150
251
144
177
188
265
187
240
238
234
191
241
265
227
194
169
159
215
230
176
216
219
204
195
218
192
147
245
244
188
195
197
246
202
187
179
188
235
164
155
242
237
204
202
262
205
234
216
186
170
189
141
190
216
187
157
210
258
218
226
250
222
210
184
217
163
159
127
174
200
187
186
176
100
177
241
280
195
229
217
218
164
220
200
196
174
198
166
204
203
206
170
204
190
253
211
272
219
222
201
219
188
210
185
160
198
248
164
203
239
160
233
149
244
174
196
202
211
145
219
220
168
297
196
258
134
148
219
244
131
207
199
215
233
163
177
197
213
193
232
182
256
187
215
155
177
213
206
207
151
219
207
195
208
184
227
256
195
187
167
217
252
222
175
191
184
153
156
241
242
247
146
217
155
180
178
244
200
210
250
157
261
168
189
168
200
208
254
164
195
191
162
224
190
187
190
159
176
203
215
231
173
188
188
219
151
175
258
195
207
212
157
180
252
218
229
260
268
239
223
203
206
197
185
183
201
222
197
199
214
202
197
158
303
189
227
212
213
252
166
237
218
214
241
263
178
189
191
134
188
224
198
181
220
208
251
267
229
200
185
214
233
153
139
172
216
217
202
174
224
284
216
181
202
188
222
211
211
202
231
201
155
170
176
198
192
166
257
167
214
209
204
157
257
229
168
157
221
192
225
202
217
209
227
189
225
222
225
180
204
182
226
197
134
156
132
228
211
181
234
227
199
205
180
177
245
186
196
152
231
176
141
187
215
178
180
203
190
243
137
226
136
208
210
186
159
225
235
228
213
193
148
234
212
150
203
153
160
258
221
198
185
207
277
211
250
202
168
228
196
248
210
201
220
207
162
277
219
210
238
225
204
273
162
199
202
208
215
170
193
211
211
169
221
228
198
183
183
191
171
240
159
225
238
205
167
169
207
212
207
228
167
185
189
160
223
258
230
167
206
225
167
201
107
188
161
221
227
183
187
206
260
239
178
206
223
197
208
193
170
156
266
151
176
224
201
256
140
263
215
171
238
207
211
166
159
198
217
211
188
252
224
219
165
140
212
235
195
200
241
164
213
215
179
189
225
192
198
230
277
261
203
192
251
167
255
224
162
226
195
191
203
145
218
267
142
223
163
221
134
237
146
183
153
209
209
157
198
192
243
220
178
180
169
263
182
208
230
162
209
169
238
125
172
188
175
259
162
240
209
184
214
190
195
212
197
234
127
221
252
215
214
210
247
144
254
213
211
228
165
211
251
225
199
233
245
181
201
197
242
239
238
234
164
210
233
192
218
146
173
188
125
170
182
194
212
176
166
272
170
182
218
179
228
191
207
219
218
170
172
202
282
237
268
231
193
230
183
188
155
211
134
181
201
243
220
208
280
223
181
167
174
172
231
240
254
174
214
211
192
148
290
220
274
221
220
206
211
214
237
196
246
193
149
175
175
170
229
195
237
218
187
202
215
212
231
212
174
172
181
232
318
178
129
177
214
194
179
245
149
182
175
182
212
181
156
235
236
180
200
200
241
192
189
247
247
193
164
138
186
243
237
126
182
146
194
160
189
197
213
229
189
185
186
193
242
177
155
182
215
122
221
175
147
135
163
168
117
209
259
203
276
135
160
159
274
182
199
192
235
190
258
262
197
178
161
168
163
222
217
191
242
209
191
218
263
208
225
214
252
235
208
230
179
174
245
211
211
221
290
162
169
226
213
149
204
178
237
172
183
198
229
153
140
252
228
161
146
117
184
93
159
197
198
210
282
205
200
188
251
246
162
199
186
206
251
184
256
222
168
235
141
214
287
245
99
215
220
181
191
220
252
211
154
141
163
245
201
232
165
228
220
191
219
231
209
206
187
113
190
237
176
176
214
146
230
225
260
257
173
121
173
217
256
212
266
210
100
168
235
165
186
230
214
190
190
225
205
251
198
170
171
195
169
240
145
184
195
164
191
244
215
267
209
110
199
227
254
190
246
185
245
159
185
131
158
215
209
163
197
219
251
243
213
175
182
186
190
137
224
190
179
161
226
203
194
267
157
214
238
215
165
172
191
184
274
193
189
188
161
175
242
163
221
230
211
227
241
187
247
199
173
208
247
191
171
216
236
173
235
203
203
114
189
190
249
258
206
201
162
240
203
172
209
170
199
202
149
253
183
256
187
185
258
239
206
233
147
222
179
230
240
199
190
155
163
214
209
129
208
217
156
167
163
209
240
290
202
189
149
158
220
193
140
179
202
181
186
224
216
171
245
190
189
153
222
144
167
220
204
215
236
244
174
209
241
143
195
192
173
201
198
204
238
223
231
146
182
212
179
143
158
235
231
292
172
212
167
133
150
189
147
206
195
217
232
218
235
177
172
160
135
198
234
196
217
188
165
170
237
230
233
220
218
158
202
182
209
202
247
247
268
150
195
190
182
222
216
205
238
240
191
197
206
168
226
180
158
233
166
197
204
205
176
229
237
241
193
192
183
163
213
215
139
191
197
230
222
212
200
172
122
176
214
209
138
221
239
164
194
235
219
171
214
227
161
247
130
219
115
144
207
249
189
184
135
205
213
209
191
218
158
236
193
175
214
140
245
198
212
109
209
204
223
195
148
214
238
86
153
265
212
209
239
226
186
194
194
185
275
231
212
174
237
121
179
262
202
237
220
208
214
258
249
200
216
200
175
194
191
156
185
244
177
178
220
230
171
258
226
243
250
228
198
198
266
211
225
194
212
192
198
98
138
206
218
210
239
231
219
176
198
232
221
198
176
239
180
229
250
233
203
159
170
225
165
202
216
202
219
222
148
226
158
181
257
233
212
201
231
170
205
200
195
186
222
140
224
152
163
189
162
213
214
185
171
220
219
194
148
179
188
197
220
219
199
164
173
237
209
258
243
249
197
208
204
263
198
175
191
173
158
267
177
239
196
192
202
235
220
241
197
215
184
186
169
218
221
120
168
205
178
191
202
202
223
173
213
211
169
241
184
166
183
205
174
144
256
133
126
140
176
186
181
143
207
207
222
153
240
177
227
190
143
192
219
123
225
177
248
150
225
238
210
202
214
257
183
200
240
134
255
184
205
234
197
251
224
290
207
258
211
198
200
254
169
226
142
228
161
190
202
169
211
168
179
205
216
81
171
180
141
207
188
194
133
243
228
164
277
161
202
246
183
257
204
254
165
182
181
192
253
182
134
180
252
179
196
192
183
189
169
220
118
229
199
183
184
215
243
165
270
106
205
194
259
227
229
215
244
172
243
166
197
177
224
207
168
233
177
192
196
189
161
159
194
147
187
219
207
273
250
191
226
199
251
221
179
248
155
147
252
126
174
179
233
231
239
216
175
224
159
204
173
216
156
200
150
198
194
208
202
146
204
246
233
149
180
200
194
227
155
222
204
224
181
161
187
175
234
164
159
180
267
217
222
169
139
196
165
207
235
211
191
213
203
201
224
198
215
199
177
167
204
215
230
145
127
232
207
223
179
188
190
177
200
246
174
212
101
118
158
194
199
186
166
176
221
231
139
173
166
219
210
204
209
182
194
230
248
153
156
235
220
203
140
230
180
201
147
200
202
220
174
233
234
150
218
127
137
208
164
140
185
228
199
171
226
153
160
239
119
196
259
236
205
229
210
164
179
194
134
173
167
180
204
239
158
219
206
257
192
241
247
249
152
201
204
150
129
215
165
227
233
246
242
228
192
202
272
180
239
179
189
200
221
205
145
262
199
165
228
193
204
172
290
222
240
258
235
212
184
234
128
241
209
192
147
203
174
122
209
197
90
167
203
244
213
216
185
226
114
224
157
221
245
145
180
150
255
195
265
198
217
190
228
225
194
202
173
206
249
175
209
116
191
201
227
242
197
202
186
210
249
203
167
185
199
227
247
268
157
228
243
228
219
231
213
217
161
179
207
189
240
165
195
200
207
188
232
252
196
225
185
192
221
171
192
206
178
246
188
241
205
232
181
229
221
173
258
216
212
139
207
193
217
143
202
209
197
219
204
187
151
172
182
200
203
192
248
227
256
202
160
189
189
201
199
220
175
162
219
211
196
207
197
242
255
223
155
177
215
138
200
181
194
206
206
257
224
112
184
240
245
209
211
130
178
249
210
224
222
213
246
182
168
217
212
205
154
227
214
184
191
193
214
213
173
251
166
189
233
238
167
243
273
242
108
150
210
176
199
231
247
215
204
205
142
230
200
199
234
225
188
150
177
268
248
175
228
190
235
165
186
195
248
199
179
206
202
165
214
202
182
231
189
200
207
197
236
160
214
191
225
164
212
200
203
247
231
190
229
223
231
246
209
189
184
230
217
201
127
184
249
237
204
204
178
171
228
181
172
197
233
231
190
199
251
109
225
185
216
159
203
286
217
213
238
226
184
208
207
111
204
185
215
159
158
179
226
223
174
213
221
131
191
199
238
170
247
219
167
220
221
178
216
211
215
164
223
181
229
244
205
251
186
169
186
240
197
170
262
221
182
176
187
216
193
235
183
219
164
198
218
188
180
261
166
192
162
207
240
190
186
160
209
125
149
232
266
138
195
185
241
154
174
167
138
219
161
175
215
166
242
148
189
165
235
247
198
211
164
220
208
169
141
246
172
132
212
187
206
158
176
201
165
194
209
243
257
199
209
177
216
222
224
203
99
183
248
199
200
218
219
252
233
183
217
112
201
185
160
242
197
242
195
211
277
248
188
202
188
247
170
166
198
237
202
179
229
199
148
184
214
204
230
219
196
136
205
219
161
158
149
192
202
213
284
242
195
191
217
194
181
169
179
139
189
207
215
218
227
208
228
197
201
162
207
219
159
243
228
165
160
192
232
151
177
268
204
152
213
241
199
199
192
167
237
249
156
213
245
263
213
183
199
261
189
229
227
236
207
203
203
139
181
229
257
193
222
256
169
205
170
231
187
134
224
188
256
194
187
221
179
213
203
192
227
226
192
215
189
161
224
224
196
225
210
227
208
172
207
222
225
250
177
207
162
202
269
166
173
191
255
197
257
197
169
199
245
230
245
202
189
168
222
212
178
235
213
201
197
205
238
191
167
233
112
221
185
173
233
191
132
153
176
254
199
227
186
155
130
189
241
215
243
215
195
144
165
206
214
209
165
182
166
189
206
232
200
210
195
266
231
206
226
228
195
212
194
171
179
221
203
154
213
236
246
177
219
172
182
199
200
199
151
169
173
200
156
218
180
134
225
222
218
221
216
206
142
183
261
199
286
249
192
172
205
197
149
196
205
222
191
239
272
162
195
191
208
125
159
154
231
155
215
125
188
196
149
167
141
241
248
204
203
258
208
223
216
187
213
186
199
225
197
222
198
198
173
152
220
235
211
187
147
215
242
188
212
199
190
210
168
195
176
226
214
201
275
196
229
182
215
185
220
242
171
185
171
204
186
198
267
227
249
180
206
218
217
205
250
238
250
145
139
167
148
220
215
158
190
165
234
207
156
210
218
160
165
173
209
188
149
197
164
182
157
202
182
218
232
237
166
261
165
205
162
216
156
170
218
215
231
185
167
208
211
194
180
214
170
155
195
232
141
226
226
247
254
200
224
167
197
237
187
207
205
203
186
184
236
206
229
136
228
258
178
183
188
256
145
253
175
210
216
169
173
191
229
211
197
213
217
201
169
167
218
213
185
180
161
165
258
295
232
243
238
212
200
144
235
123
169
192
197
197
225
226
269
193
231
216
144
154
187
169
271
220
150
223
191
189
182
222
195
224
240
168
206
218
224
152
266
229
135
209
181
227
186
231
171
187
182
176
180
222
179
184
257
183
213
213
205
161
226
187
207
193
175
243
212
193
263
227
173
181
118
226
173
187
198
216
223
172
199
143
238
211
179
192
227
206
154
196
217
214
169
172
215
180
234
212
226
227
219
196
209
206
156
191
147
212
178
227
242
203
173
193
233
199
254
219
134
180
198
215
241
194
233
170
177
200
203
190
215
217
247
265
235
237
218
217
166
172
194
264
216
212
159
268
203
178
152
206
266
246
195
244
232
202
203
163
185
157
248
203
179
198
192
175
252
237
175
197
149
229
255
247
176
209
187
274
228
181
217
213
201
235
196
205
223
207
198
175
196
200
168
200
222
231
192
257
188
188
190
197
185
157
214
191
190
169
238
232
252
173
226
261
199
204
160
255
228
171
223
181
201
212
211
269
148
249
226
168
179
222
194
185
160
207
246
150
217
168
226
205
210
209
191
219
161
173
214
257
234
182
184
211
172
136
199
216
192
200
184
139
177
221
246
166
197
173
206
214
202
217
241
168
228
243
218
174
148
198
213
149
227
158
148
213
211
232
202
189
185
148
167
167
207
214
230
233
227
224
201
247
219
210
258
148
262
208
161
189
184
192
161
177
201
199
178
183
210
149
219
166
158
233
227
208
242
178
212
150
188
240
281
189
227
144
184
210
273
102
189
160
225
264
214
194
235
248
189
186
229
167
178
245
193
155
214
197
249
120
217
270
187
236
216
232
205
211
220
185
258
221
162
228
179
209
214
226
199
242
126
184
206
222
223
239
157
226
206
240
191
216
207
244
164
165
217
170
205
194
258
227
181
236
182
256
153
175
212
183
175
172
241
247
185
192
220
216
252
207
263
168
209
253
224
214
227
202
157
228
218
150
154
203
152
201
197
198
232
187
229
208
221
216
218
191
193
238
207
171
196
227
198
207
161
264
258
160
233
246
198
194
273
162
191
196
239
205
233
143
233
237
197
174
172
182
207
245
208
210
216
148
206
185
236
170
252
156
209
248
189
258
279
207
132
206
208
181
208
130
225
221
253
227
206
213
183
260
177
174
186
198
113
171
201
162
202
210
244
222
207
224
172
253
214
238
205
186
170
219
274
162
212
201
222
219
157
177
165
156
199
96
228
192
217
157
164
218
171
255
230
236
204
176
226
249
139
228
232
170
245
224
214
155
190
273
152
173
226
238
199
202
217
219
214
208
164
216
216
185
147
194
190
114
253
184
278
236
197
186
183
202
219
132
230
234
214
164
220
205
223
150
186
219
217
180
234
190
188
169
194
284
173
190
197
134
191
195
239
204
151
255
217
155
197
162
122
218
182
176
190
266
226
217
192
226
235
216
261
194
256
174
226
196
208
157
233
185
183
127
166
202
196
199
223
192
186
181
204
182
201
192
157
195
210
211
205
150
227
246
240
132
212
177
186
229
217
198
186
227
185
190
182
218
234
231
230
222
166
215
172
170
222
203
192
264
222
171
211
216
113
194
237
193
285
210
194
190
244
234
154
214
158
189
208
271
245
218
161
191
269
167
246
251
145
212
215
241
209
221
228
123
209
267
218
168
182
195
148
183
216
238
195
164
136
183
189
199
129
161
222
244
209
213
165
192
213
213
225
225
199
275
303
167
114
222
185
222
198
197
235
184
173
196
165
243
210
233
209
227
197
228
191
210
149
224
136
240
191
197
250
169
187
268
176
215
247
194
171
224
212
214
174
208
191
183
168
245
203
205
192
256
210
222
164
190
232
159
172
167
232
208
219
195
160
195
262
196
191
187
253
216
210
183
177
223
178
174
175
184
207
258
253
186
166
169
174
232
206
188
189
127
234
265
191
252
212
161
250
164
171
161
206
242
280
183
274
180
154
202
179
163
240
184
205
215
188
245
150
133
152
199
200
142
207
157
189
162
201
137
236
206
161
139
189
176
238
157
265
139
187
218
246
201
202
209
174
180
246
234
184
263
181
215
251
217
199
192
190
162
165
149
164
195
206
181
189
265
234
175
196
206
186
217
210
169
246
242
203
221
257
179
186
207
224
237
158
201
192
242
194
289
194
215
181
175
208
205
161
198
244
200
224
138
227
201
197
162
171
202
226
186
207
208
252
136
225
221
199
234
232
289
230
208
236
164
137
235
182
169
186
128
222
251
134
159
176
165
156
205
176
231
185
216
172
225
219
245
229
183
197
162
190
170
245
226
122
199
166
198
223
205
133
240
144
225
230
216
256
218
230
239
203
195
170
218
176
206
204
189
257
219
124
203
201
212
198
179
190
188
211
223
214
199
219
259
176
229
234
217
222
218
189
242
197
257
219
198
221
219
217
198
179
238
183
242
221
154
213
216
181
180
179
220
229
162
228
205
205
177
208
186
156
212
209
218
200
204
197
241
111
157
187
241
191
190
205
150
219
237
136
231
209
223
210
208
225
197
185
181
221
244
264
147
187
201
194
200
204
272
181
191
224
176
186
165
133
209
212
203
176
197
202
162
153
152
183
174
181
203
187
188
99
184
185
184
269
170
227
157
240
138
188
193
224
170
212
220
219
212
286
252
190
211
182
233
190
136
163
269
209
146
224
215
143
180
192
131
178
220
218
250
201
154
233
205
210
220
164
218
224
202
254
140
251
141
204
181
178
172
158
179
136
132
234
191
164
238
180
171
153
178
129
185
221
138
231
240
229
186
196
215
197
168
215
184
164
188
234
159
227
169
173
195
175
220
188
179
259
201
120
196
181
178
180
219
142
205
236
209
229
219
197
150
248
146
224
206
198
199
152
180
196
244
227
187
209
170
165
209
179
215
172
192
186
211
229
213
134
175
224
238
180
170
252
184
184
235
174
209
169
235
248
216
183
218
213
207
192
234
211
201
242
178
182
174
232
229
193
202
161
218
228
194
183
184
167
171
179
152
217
218
193
157
149
148
251
230
193
224
242
215
178
226
169
158
220
174
208
205
175
195
213
193
175
174
163
189
214
207
190
180
153
116
194
143
223
200
205
166
212
167
238
195
171
207
183
184
207
185
220
223
216
200
119
189
228
155
204
146
202
215
212
217
175
247
210
152
190
217
224
166
181
255
218
219
235
162
185
235
254
208
217
267
187
171
157
185
217
215
222
204
220
188
246
194
232
164
197
198
240
239
219
178
246
218
200
242
181
235
210
188
198
116
210
188
235
226
198
149
186
142
199
210
196
187
200
193
200
199
172
255
193
119
260
168
173
235
229
194
159
186
173
215
201
129
267
198
213
189
211
226
147
174
199
229
194
220
149
228
248
238
213
248
166
143
229
128
262
170
226
200
149
169
275
205
193
188
169
174
246
213
197
244
139
236
193
227
193
187
192
184
192
146
229
222
216
194
257
196
225
220
200
177
246
213
263
233
247
180
191
244
167
217
229
174
222
230
204
138
218
199
119
190
221
208
215
227
206
218
232
266
153
249
234
217
250
235
217
195
185
124
252
193
148
261
253
173
207
225
217
232
247
208
220
246
159
194
208
169
218
242
175
262
165
222
248
202
197
210
179
237
184
196
151
234
245
156
246
182
196
257
212
213
209
238
208
234
216
209
210
201
198
159
137
225
224
179
222
154
171
124
252
245
201
227
189
147
244
220
224
167
200
167
250
200
219
223
173
206
179
211
178
171
215
269
179
188
210
219
208
185
227
222
198
186
155
235
169
250
111
200
191
219
209
263
199
242
201
202
168
179
167
187
199
171
224
199
187
237
147
239
237
137
239
225
209
247
167
246
199
209
231
178
204
234
220
181
180
242
242
169
103
188
229
203
196
180
156
215
232
227
224
152
245
262
203
231
228
233
186
158
284
167
203
180
231
253
157
171
165
189
222
178
208
232
272
241
157
165
178
254
218
233
238
192
193
198
179
166
212
144
226
250
194
206
177
156
216
203
170
162
280
164
211
151
185
179
208
164
234
213
185
241
173
145
251
250
210
160
129
166
221
205
214
201
197
230
171
238
237
161
191
237
210
188
276
185
153
218
220
186
191
243
164
170
188
179
201
271
223
203
184
254
180
143
208
228
153
138
180
206
222
183
171
186
145
187
216
237
257
230
225
248
213
213
222
119
219
241
181
234
132
208
195
133
142
192
206
209
215
184
183
240
252
154
139
207
226
152
192
207
183
159
222
155
215
253
208
202
224
161
207
166
139
152
239
213
251
137
215
126
205
274
210
243
197
199
159
168
215
219
268
173
270
215
130
227
256
226
132
153
175
186
216
190
193
210
195
172
171
179
162
264
186
210
188
167
201
177
228
227
188
286
252
211
230
160
188
202
200
220
202
214
248
225
212
240
227
233
188
190
181
188
166
187
248
180
230
209
136
214
192
167
196
245
196
116
169
177
181
234
221
248
187
214
189
195
211
229
173
140
216
148
179
226
209
167
201
258
199
115
226
210
190
187
174
152
183
224
113
184
212
202
117
222
165
150
189
240
174
190
199
126
219
223
270
193
188
145
212
271
220
203
166
147
211
220
154
214
212
236
175
234
237
176
205
219
160
217
181
211
146
165
202
184
251
263
169
235
236
185
240
202
206
181
202
171
201
211
172
169
199
219
165
147
176
240
177
255
153
213
232
173
193
136
177
186
111
222
235
254
183
204
218
170
221
217
189
156
234
171
204
168
190
189
225
176
148
139
204
178
218
151
199
186
177
187
225
253
230
149
214
248
221
233
238
248
140
212
173
269
192
245
202
232
171
196
220
208
199
236
194
100
225
190
206
189
209
122
226
256
218
170
182
209
225
162
209
182
189
174
212
238
261
196
223
224
207
157
219
182
242
217
238
250
208
184
264
183
182
217
236
148
214
246
186
167
192
249
272
277
98
190
236
144
216
171
187
209
150
193
222
165
189
180
199
195
234
220
184
163
194
161
151
196
212
252
143
178
234
150
196
212
241
145
156
197
202
214
189
231
181
210
225
194
171
193
199
249
154
170
284
182
192
174
199
230
177
278
181
211
186
201
184
212
191
186
160
164
202
224
211
195
208
198
285
201
191
193
168
231
283
229
191
208
210
235
244
155
230
191
240
218
157
228
212
209
134
212
219
207
233
181
191
182
136
215
208
208
189
246
206
188
205
169
254
173
200
229
198
261
205
216
231
214
236
210
223
213
227
222
248
182
223
157
120
227
199
177
154
249
187
237
205
183
240
219
190
115
192
171
199
191
252
242
110
170
181
201
178
255
215
221
153
195
194
208
205
187
207
271
154
184
265
168
170
217
190
175
163
216
203
211
235
184
196
250
182
218
177
150
173
241
144
137
210
202
209
229
148
214
177
193
224
149
145
203
197
190
258
181
183
180
198
151
185
133
174
198
201
184
188
148
179
204
224
205
178
211
272
261
240
259
160
189
187
189
248
208
203
236
240
237
209
210
217
256
236
222
218
221
183
179
197
212
200
192
222
242
219
195
208
223
241
219
138
226
162
167
172
191
255
214
177
142
181
210
200
259
279
154
193
221
237
167
215
203
261
193
197
227
134
226
146
178
204
206
269
250
186
194
241
252
188
226
155
153
210
129
125
203
158
188
212
185
129
148
262
161
194
173
156
198
236
175
234
200
120
239
183
208
164
154
232
192
238
181
172
227
241
274
196
209
196
210
238
127
176
153
244
203
203
164
158
152
211
183
206
179
267
193
175
222
194
188
213
230
182
232
223
238
193
188
225
119
201
245
162
203
203
210
194
235
219
232
201
230
175
222
173
240
211
164
182
246
231
190
191
178
195
219
206
233
183
119
234
146
200
121
204
191
232
179
201
237
190
193
202
270
194
143
206
228
227
191
204
147
205
156
171
224
230
197
196
218
250
218
175
228
157
208
243
203
199
286
158
188
195
203
237
186
185
191
265
223
244
206
196
235
165
197
212
191
163
221
144
178
237
191
208
178
163
238
197
206
178
178
147
195
155
264
172
159
262
199
210
156
148
179
212
182
199
200
189
207
190
132
210
204
158
209
206
251
241
171
228
201
175
175
180
167
203
190
196
214
225
148
144
180
183
235
272
209
170
222
126
137
218
219
249
205
140
134
128
199
205
167
167
204
227
254
185
197
207
133
184
206
216
218
256
173
194
187
216
235
202
171
177
221
212
199
125
238
192
207
148
163
219
229
165
136
173
111
202
149
241
232
172
235
153
207
121
244
177
270
198
197
203
226
199
200
174
173
216
215
239
200
156
272
188
165
260
225
237
167
196
229
212
200
207
210
164
171
198
240
206
269
159
232
178
141
186
258
173
151
178
224
224
221
232
194
218
161
189
236
153
199
244
264
155
238
221
214
203
212
157
168
234
228
190
183
229
245
223
209
159
195
221
150
190
252
181
195
180
185
222
207
211
197
213
199
243
253
194
225
216
215
238
243
193
210
186
200
196
208
200
230
166
232
184
253
240
191
261
218
187
144
207
188
174
219
230
188
134
193
184
204
189
205
219
256
148
224
164
178
191
216
209
190
218
196
217
260
161
191
244
135
195
150
193
243
233
278
201
238
268
225
223
213
207
230
259
220
198
234
245
169
204
149
183
222
245
200
175
159
173
206
197
220
224
177
185
120
222
185
205
193
207
237
237
169
195
147
282
239
181
225
281
212
191
257
224
215
223
209
206
238
194
208
248
180
173
206
148
173
228
230
148
139
253
205
220
226
209
198
223
233
231
240
214
142
215
222
182
170
181
251
128
175
235
252
247
243
181
211
207
186
212
185
178
178
148
167
205
182
197
229
199
187
161
221
260
207
208
242
132
260
218
240
201
204
234
253
246
205
237
229
153
139
234
222
186
164
165
175
221
164
177
174
189
251
210
176
192
235
254
184
199
169
228
236
189
236
178
222
226
167
223
245
205
158
205
199
146
197
214
216
233
130
216
196
191
156
194
251
191
152
193
188
253
252
248
221
242
230
179
192
187
199
212
207
178
207
186
267
171
227
196
185
205
179
171
218
246
195
175
204
149
181
220
220
198
170
181
137
170
249
199
198
231
214
160
187
206
181
161
236
267
234
236
140
187
211
181
215
88
217
141
170
199
169
225
150
188
178
185
236
169
256
138
163
236
195
237
212
194
213
217
191
184
140
181
173
210
158
165
206
279
209
242
218
201
247
245
197
232
251
168
183
200
233
142
231
162
194
206
247
190
147
152
208
174
219
242
163
218
216
167
254
197
241
215
197
224
111
195
142
214
150
186
167
187
202
155
183
221
278
187
190
202
221
193
247
158
245
195
251
178
216
172
256
213
207
204
169
239
261
211
249
243
239
181
233
248
177
249
170
254
187
202
162
212
250
195
234
229
191
187
263
195
223
188
173
180
256
204
257
213
271
214
192
150
224
217
141
166
200
277
176
183
234
226
194
193
182
203
221
194
232
200
233
256
241
234
211
146
206
161
234
198
204
185
147
120
196
165
175
213
191
215
212
181
224
237
224
181
250
243
190
229
164
201
190
200
162
195
229
200
189
206
210
217
180
130
102
219
199
249
225
147
216
183
166
205
208
154
183
124
203
161
188
173
223
188
177
236
219
162
197
152
211
203
200
181
220
162
166
171
225
144
158
225
167
181
204
244
197
236
213
209
268
198
190
184
237
203
219
230
201
227
190
216
207
187
191
220
206
242
218
177
129
194
223
240
269
213
200
232
203
238
225
217
254
192
186
212
194
169
161
145
180
224
199
224
155
258
191
231
170
203
138
215
243
205
235
157
214
214
238
163
149
215
168
205
177
206
195
225
220
232
217
203
188
198
241
122
129
204
223
273
174
204
177
183
231
182
207
221
245
228
229
186
216
201
192
186
250
208
237
201
194
200
209
154
233
187
205
232
145
204
167
237
229
219
156
264
170
159
215
221
237
218
210
245
219
219
230
226
144
243
194
203
187
178
202
210
260
243
163
233
213
170
164
175
225
182
154
255
202
238
195
179
155
165
249
215
183
188
198
165
195
212
186
268
272
172
206
176
230
232
202
192
156
295
273
187
236
237
215
263
195
157
199
249
160
169
175
193
151
166
203
210
169
223
169
186
229
185
220
217
199
228
182
223
235
216
208
206
195
199
209
253
206
135
215
218
224
154
205
264
188
181
200
210
284
207
197
223
216
211
208
130
191
195
175
193
236
267
223
232
224
237
265
213
153
215
223
197
171
205
204
225
180
189
188
205
123
152
164
227
163
194
275
226
239
221
172
207
182
200
179
225
181
196
160
110
191
179
215
233
139
245
256
225
203
232
195
200
242
197
172
228
125
196
200
153
209
151
200
221
204
162
228
233
220
140
190
234
227
194
192
204
151
212
210
200
219
235
199
244
239
239
254
214
201
254
204
213
165
190
242
183
137
237
257
241
159
170
172
199
206
151
180
139
220
187
232
211
142
234
235
206
202
233
201
189
216
174
225
222
232
227
225
215
138
179
233
194
201
123
239
257
196
213
188
223
208
182
251
164
260
180
238
195
219
177
199
232
190
173
186
171
265
161
193
195
150
259
218
216
252
169
180
181
189
171
218
109
160
168
222
191
206
195
259
201
198
235
223
266
186
253
146
199
231
233
191
224
183
197
166
197
162
200
232
206
171
206
174
190
213
233
135
190
207
223
260
262
181
204
167
179
211
252
210
236
157
205
99
187
228
165
172
242
208
207
216
213
176
126
213
256
190
211
206
131
236
186
208
207
226
220
196
172
260
213
264
203
212
219
226
217
169
239
182
142
153
194
224
210
180
201
197
182
185
243
198
220
187
156
175
150
191
189
124
200
181
180
231
265
136
208
211
167
258
203
236
183
238
159
226
165
129
196
252
195
171
193
220
182
159
204
175
208
158
218
215
227
233
165
184
239
192
209
185
174
180
233
234
155
229
202
209
214
198
224
229
158
168
212
205
247
226
150
189
256
186
221
217
143
256
151
162
219
274
169
223
206
144
254
225
261
220
173
262
235
257
251
210
153
167
197
148
205
252
216
212
197
244
194
239
231
255
200
208
144
246
158
100
144
224
202
168
193
210
268
245
185
248
182
160
211
204
194
262
196
160
259
160
174
133
188
163
178
252
216
213
218
201
204
207
156
155
220
234
142
155
132
174
192
215
199
218
142
221
144
169
213
212
214
155
207
178
227
241
227
254
218
190
199
223
132
206
190
200
196
202
168
195
232
201
245
174
216
150
213
201
304
195
209
198
197
190
185
279
225
177
160
210
234
193
201
163
179
241
168
212
199
180
211
148
196
226
235
146
230
203
192
242
187
229
175
128
209
136
232
216
145
169
228
202
162
205
200
192
274
254
195
176
169
180
173
223
226
229
303
256
221
197
198
214
206
196
213
198
203
203
188
193
166
182
212
208
239
225
270
227
176
215
165
164
224
180
221
218
171
188
158
248
196
253
257
169
136
179
226
205
175
176
259
218
174
244
199
159
241
247
188
230
208
202
248
201
183
212
159
174
232
178
199
235
191
233
149
229
247
191
195
148
164
265
239
118
162
162
231
224
153
192
222
183
212
114
215
277
212
195
156
226
184
193
211
256
202
192
193
198
177
221
115
211
164
223
220
200
97
166
220
151
210
181
156
209
144
191
228
171
231
219
243
215
217
207
170
173
157
161
189
217
162
223
179
207
245
180
189
168
260
225
162
172
169
215
227
213
236
202
224
151
235
225
202
180
227
189
210
135
116
172
168
159
192
199
209
200
174
216
166
159
197
178
166
172
183
209
233
186
144
242
228
152
220
245
181
196
190
210
281
243
200
200
187
159
218
133
250
167
213
209
217
154
209
216
204
253
244
261
105
203
178
218
183
193
255
198
188
130
243
153
177
188
263
220
150
215
213
149
230
187
233
160
223
213
237
228
144
143
208
220
223
193
110
183
167
175
184
228
182
227
216
201
256
230
229
244
228
234
177
229
130
190
182
216
162
231
246
166
179
206
189
241
195
188
228
230
199
202
184
215
214
230
181
134
218
239
218
211
152
187
258
131
157
196
225
200
189
227
194
199
230
211
230
174
228
230
189
154
226
198
170
246
290
229
236
137
184
196
188
217
244
178
227
153
167
181
260
199
178
187
193
219
190
244
201
186
216
195
228
186
224
232
156
211
211
205
124
267
204
187
170
203
132
172
194
240
223
219
212
189
254
200
188
224
205
148
237
135
242
220
218
256
155
257
239
175
174
199
178
165
218
163
145
213
199
224
178
223
221
199
203
227
205
249
143
158
190
260
161
185
247
224
118
208
181
199
210
151
213
191
259
221
197
160
214
128
179
190
233
192
145
256
217
173
160
209
226
187
206
237
156
213
189
242
156
143
245
229
229
198
218
215
203
236
186
173
197
201
233
184
227
200
230
187
266
239
215
191
213
133
193
173
140
188
185
199
194
102
193
196
226
235
212
195
237
187
222
176
163
185
201
211
217
210
161
191
230
214
265
191
220
209
191
221
211
210
136
207
164
251
209
218
214
229
223
189
218
201
186
168
243
206
146
189
212
184
144
234
232
137
221
141
240
213
110
229
178
207
141
195
214
228
169
125
221
200
206
186
196
207
240
239
233
234
160
220
133
213
255
209
229
239
260
212
177
255
220
185
164
156
191
207
123
227
157
238
148
188
229
211
190
128
216
193
179
165
164
250
209
179
185
176
213
178
185
189
184
188
164
249
198
201
192
236
157
197
252
186
180
205
224
114
241
206
178
197
141
183
199
203
169
144
170
172
229
243
184
222
192
217
190
225
182
194
220
228
191
199
110
259
245
222
187
209
197
205
201
243
176
162
253
228
222
194
193
222
242
198
196
251
236
194
198
185
150
175
236
254
187
261
214
187
181
213
164
221
160
226
128
213
205
203
205
271
188
214
270
174
156
257
204
224
171
234
164
230
234
145
166
136
173
210
257
218
221
221
172
205
123
219
227
198
153
169
196
244
218
246
194
185
269
149
184
245
230
210
165
191
256
191
217
210
217
151
144
196
217
210
185
228
192
250
188
211
256
256
231
223
242
243
186
202
163
206
182
201
163
230
158
212
159
249
156
193
182
235
154
272
232
204
212
162
199
195
180
185
166
217
172
182
251
164
200
211
177
210
266
157
198
225
201
184
195
178
173
158
161
174
176
222
282
222
240
220
226
215
206
254
224
231
222
236
213
260
166
254
310
204
251
145
172
228
240
213
135
229
191
144
252
173
246
171
201
165
195
204
207
233
192
220
240
187
219
206
192
172
220
225
236
214
166
231
223
227
158
251
233
201
152
207
199
202
228
208
97
194
208
205
229
202
190
150
226
279
201
183
234
204
130
200
228
166
192
210
186
208
255
211
214
183
217
164
220
148
161
121
235
223
193
182
210
190
200
222
197
212
194
179
227
150
224
210
219
213
211
188
131
217
174
171
167
120
188
163
250
218
170
143
185
212
215
212
244
219
207
234
220
216
188
259
165
176
231
193
176
194
141
204
225
153
189
169
182
222
206
202
235
223
220
218
218
209
146
216
176
256
234
125
214
163
197
194
268
274
127
209
194
172
151
168
189
205
197
239
130
187
209
232
227
221
214
232
186
250
171
212
203
223
226
218
204
213
230
168
193
271
168
220
172
143
195
178
191
189
253
128
174
185
177
229
174
159
195
256
130
204
209
225
217
193
233
232
171
202
241
190
223
207
207
191
195
177
201
219
225
219
202
136
208
160
204
212
189
173
228
187
217
154
200
245
226
232
200
208
253
197
195
192
153
187
185
212
194
211
238
179
224
238
170
208
230
228
176
190
144
234
249
253
205
221
211
194
225
181
241
165
228
190
181
129
198
150
170
222
148
179
235
151
262
218
212
287
216
216
165
190
222
174
179
145
133
193
176
179
183
186
203
169
201
180
187
205
275
151
168
168
210
238
234
222
236
147
251
211
213
229
171
171
200
172
205
158
187
232
246
243
179
227
200
183
184
273
236
249
235
224
174
124
162
171
181
216
159
125
171
196
163
218
202
166
245
194
247
180
192
185
137
165
160
238
143
216
170
190
193
170
196
267
221
137
204
181
144
267
175
226
183
189
224
182
161
167
160
197
221
239
176
176
248
273
170
213
195
174
252
148
256
268
184
254
206
248
169
134
157
214
237
172
198
197
184
187
138
239
193
234
205
232
172
202
193
202
218
190
224
236
217
218
149
246
276
181
248
179
206
190
129
143
152
231
197
241
269
218
222
200
200
229
175
232
210
203
174
221
158
211
201
171
158
211
242
212
182
249
232
226
181
209
211
182
187
251
223
231
272
276
180
188
238
235
198
223
157
202
176
177
181
208
243
290
191
217
245
200
222
198
248
205
230
137
144
206
135
132
127
210
210
185
190
209
207
227
179
243
222
190
236
248
213
212
182
168
161
215
195
253
246
228
172
229
214
172
223
203
260
207
227
173
272
190
202
219
159
182
230
197
191
209
241
203
154
155
155
251
190
215
188
165
193
207
192
185
175
176
241
205
192
219
207
199
198
149
178
174
199
195
235
218
159
176
230
216
150
147
253
216
245
229
148
150
246
197
223
183
156
218
276
93
243
197
202
145
211
244
176
197
132
196
274
141
206
256
168
157
230
257
145
184
143
204
244
153
166
176
118
203
232
183
200
186
186
242
249
194
225
260
202
257
245
164
237
154
209
190
145
215
245
197
168
184
182
248
216
159
199
261
181
176
146
117
208
228
176
199
246
253
221
215
204
246
164
164
200
198
126
181
185
266
221
248
213
156
181
240
200
176
257
174
206
221
213
162
204
174
198
138
180
222
198
150
216
194
185
216
225
286
203
187
168
252
221
165
231
235
231
212
178
208
275
225
232
252
202
225
185
198
222
250
118
188
220
190
145
244
133
233
198
208
247
197
157
196
262
198
187
207
132
210
190
201
207
255
104
196
146
231
175
168
201
287
213
156
177
144
189
235
191
213
231
213
233
214
220
180
174
158
194
231
202
209
228
183
239
145
147
207
164
218
207
160
218
224
184
255
202
257
208
215
173
182
163
214
159
192
228
144
199
243
216
243
206
174
253
242
188
186
212
204
249
204
215
245
176
149
198
239
187
201
277
248
198
152
211
163
240
211
184
211
223
209
205
172
241
182
201
205
206
183
212
207
199
197
198
171
200
205
171
212
162
232
178
175
143
183
214
227
208
200
176
173
219
166
221
199
244
195
206
174
137
219
185
234
232
241
227
232
202
180
144
152
200
208
216
221
211
227
190
150
199
181
166
279
261
198
243
127
169
164
205
216
201
163
228
198
229
220
205
209
224
188
277
199
233
146
175
159
230
204
158
181
134
216
210
221
217
228
176
207
193
209
197
162
197
192
183
192
215
152
130
169
223
187
212
211
237
195
194
192
176
186
173
239
196
233
197
190
210
149
132
260
241
169
171
284
188
165
256
233
208
237
207
178
217
179
210
207
171
214
159
214
214
183
193
228
197
244
208
161
230
178
233
210
186
248
172
178
189
160
217
219
200
205
198
208
241
126
210
179
225
251
142
207
206
278
208
170
218
172
164
173
239
222
211
208
220
212
146
212
201
194
156
182
218
152
200
232
137
192
263
162
194
146
193
176
185
223
188
246
149
234
211
244
207
161
191
200
156
193
196
278
144
159
217
199
238
218
170
158
152
144
203
224
213
175
187
194
194
176
209
268
139
127
221
221
159
226
205
204
226
190
251
225
163
277
255
201
238
135
232
213
101
156
216
194
180
146
262
177
241
187
210
211
243
179
229
195
170
189
152
201
223
244
246
304
232
197
230
202
184
217
211
168
245
226
186
231
189
158
217
199
230
230
166
211
120
221
236
194
190
182
235
216
163
223
164
220
219
168
251
233
164
174
176
145
187
190
212
131
158
157
205
245
165
181
212
225
199
185
219
139
243
205
212
213
196
208
156
268
132
200
254
210
159
210
194
249
213
204
218
157
179
188
197
193
235
201
184
197
150
164
188
238
237
212
180
223
228
221
219
179
199
139
201
243
174
229
208
219
216
186
240
240
175
194
197
173
233
254
239
237
209
189
202
174
117
160
152
155
227
196
201
184
188
210
279
194
180
142
223
239
193
169
180
172
234
190
191
176
212
237
169
229
203
170
229
237
228
222
262
251
193
231
220
212
219
218
194
242
206
185
135
192
265
238
247
229
189
215
239
259
185
256
235
233
182
256
176
204
160
202
150
120
154
219
235
226
230
154
193
208
244
210
183
247
215
239
239
185
176
149
157
227
215
209
176
135
204
174
176
216
200
195
185
215
228
249
215
158
244
212
235
248
235
163
203
243
164
234
190
203
224
243
264
188
190
263
233
161
122
148
218
233
211
225
189
196
195
197
157
208
208
161
127
264
213
164
194
137
158
178
251
195
233
196
183
187
139
180
172
245
219
214
209
225
171
206
163
172
261
189
251
193
232
137
199
170
181
228
218
175
199
198
191
178
247
197
147
151
209
203
207
182
223
207
176
178
255
223
242
175
203
190
198
175
244
224
172
243
206
237
126
241
149
163
162
238
268
176
175
207
230
186
245
168
234
222
181
152
158
190
134
258
223
202
203
203
251
231
158
192
193
210
208
134
121
280
159
264
279
226
166
193
197
194
212
230
184
183
174
185
203
208
192
181
245
237
173
210
179
249
165
235
257
215
224
190
168
180
181
249
171
219
213
138
226
177
209
176
96
239
180
120
234
263
234
226
235
222
220
231
194
231
194
202
183
200
232
180
187
213
202
241
225
228
201
184
206
154
221
186
238
232
167
166
185
138
225
223
214
254
197
204
170
224
239
125
189
227
143
228
172
213
192
140
160
228
168
227
179
209
220
176
207
81
229
220
146
248
254
250
190
141
155
164
225
207
203
219
206
189
190
161
161
240
205
259
222
203
195
218
183
165
149
170
176
233
184
188
145
158
156
181
223
207
211
173
185
141
217
170
187
196
204
259
207
178
246
180
221
166
198
207
234
219
200
138
139
147
260
159
155
165
168
171
217
183
181
197
209
180
232
205
211
164
156
218
169
196
193
185
174
200
216
228
184
151
210
197
196
233
228
145
165
188
254
201
204
210
207
141
202
218
258
180
212
227
222
199
176
139
150
254
174
189
184
190
193
262
188
110
189
166
195
161
186
207
184
153
210
142
213
176
206
168
230
155
234
210
225
202
266
207
201
220
267
216
254
173
185
172
262
237
113
164
207
82
209
187
181
181
197
219
235
236
207
268
219
165
165
154
228
235
208
187
215
183
196
180
219
122
169
185
191
214
184
174
179
163
230
169
224
179
236
198
278
199
144
126
180
199
162
136
184
182
157
248
218
217
158
198
241
150
190
261
231
201
181
172
150
263
235
179
225
225
240
212
204
190
211
212
255
189
160
225
148
192
187
200
179
237
198
214
213
217
212
198
231
219
234
187
231
231
182
199
221
169
181
211
187
230
170
223
175
162
176
158
199
221
208
251
259
237
228
182
178
126
219
203
202
156
144
144
220
226
205
239
197
146
216
189
181
209
160
182
216
206
220
156
186
190
194
204
242
242
169
240
184
219
159
160
184
215
215
192
188
197
201
221
157
231
190
151
208
224
204
232
184
218
200
229
205
211
223
111
176
197
167
218
187
195
188
231
210
221
224
221
232
235
181
163
197
185
141
206
179
195
145
163
242
193
246
135
221
172
185
179
215
215
226
231
240
181
156
239
186
197
222
217
221
173
139
218
135
194
186
227
140
151
200
168
198
246
248
204
196
184
185
184
137
207
167
208
223
170
237
217
258
165
182
192
186
213
248
256
168
242
151
225
155
242
253
254
238
206
203
244
177
219
168
207
191
226
209
161
200
256
149
195
164
220
166
197
216
231
225
191
173
192
221
156
220
173
205
252
216
225
210
213
199
247
184
219
194
208
159
230
171
144
200
223
299
200
266
210
187
132
241
210
233
225
233
228
173
116
175
230
243
231
218
203
189
194
216
196
218
214
222
235
198
260
277
181
210
152
249
206
237
184
162
205
189
207
215
168
153
189
168
213
204
186
222
170
271
235
208
150
209
196
181
170
183
176
229
203
208
194
242
252
186
231
235
234
258
174
242
275
184
133
145
255
145
220
267
220
179
162
248
181
192
277
176
236
136
185
228
217
178
183
173
193
201
227
210
248
172
212
179
162
190
211
215
171
234
194
241
144
139
181
190
243
240
190
136
175
176
156
232
189
212
218
180
248
176
175
247
196
200
192
255
198
228
198
126
162
208
253
213
225
162
145
228
130
219
185
213
193
158
258
237
177
148
234
169
174
194
239
251
190
224
230
233
206
166
183
183
139
249
198
217
213
213
255
243
233
186
127
209
222
207
206
196
212
187
184
176
169
128
214
149
222
253
206
161
179
172
187
167
200
212
257
229
196
198
252
101
216
159
211
203
215
302
230
179
182
181
199
201
166
245
111
211
200
165
213
172
226
286
204
182
231
202
183
163
178
210
175
210
188
265
177
250
232
228
219
267
189
178
237
130
223
162
226
202
181
214
193
203
193
189
142
128
225
201
212
275
160
255
161
156
185
230
188
169
184
149
219
241
146
201
213
179
234
251
197
204
202
213
129
188
217
194
174
215
177
185
152
235
248
260
222
199
201
218
230
186
135
167
219
192
252
186
184
137
169
188
235
161
187
230
159
198
168
190
203
185
210
249
235
248
203
208
176
238
206
190
189
169
196
193
239
205
288
174
255
180
237
187
207
213
133
233
194
238
175
171
233
141
120
105
164
126
229
252
144
249
193
243
188
226
236
180
221
152
195
227
224
197
197
277
179
214
225
119
199
209
178
217
247
217
223
211
176
194
235
247
193
275
181
207
159
214
226
235
186
175
169
225
247
207
251
208
259
235
258
211
216
258
134
191
143
188
263
270
220
201
218
186
207
152
178
197
178
181
140
252
212
259
185
170
199
211
183
140
222
166
249
129
160
208
202
213
202
119
201
219
249
239
225
149
210
272
175
216
218
153
183
183
257
239
233
268
263
170
192
207
154
222
189
203
252
165
229
199
227
227
187
219
192
167
184
212
183
210
113
125
206
182
237
224
253
105
171
168
170
178
155
211
263
172
194
171
195
133
207
165
184
166
172
209
214
221
214
173
198
171
154
183
183
183
186
173
213
242
262
214
168
194
175
166
143
195
221
172
236
184
179
191
185
164
204
210
203
140
213
159
173
218
201
237
128
173
250
205
217
149
191
214
178
200
197
184
245
203
175
213
189
206
180
105
131
183
278
209
205
240
254
159
222
137
166
231
166
191
222
215
196
213
238
205
146
149
226
226
208
209
136
172
189
221
165
242
226
169
248
221
179
207
183
205
154
234
140
232
219
131
158
248
254
100
209
178
192
223
204
250
191
233
176
182
169
173
159
190
154
227
141
164
195
193
201
128
128
167
219
185
232
165
181
166
192
227
212
228
177
138
145
228
187
256
238
228
182
158
237
198
202
223
176
218
182
214
183
177
232
209
253
275
236
269
244
152
233
205
231
130
216
172
155
212
198
245
214
199
199
177
163
231
207
166
197
246
273
211
216
218
245
166
203
186
187
159
242
193
184
145
228
189
197
214
217
239
232
256
164
189
230
221
254
191
163
203
177
199
208
221
190
221
150
240
200
217
162
228
169
206
205
227
176
208
187
152
203
233
180
210
210
201
212
236
221
191
185
225
209
198
157
194
235
242
184
228
171
274
211
195
157
176
157
159
239
244
177
261
220
250
221
158
204
257
233
226
181
202
233
188
224
231
240
189
111
208
167
197
260
214
219
164
205
239
182
268
221
217
203
203
157
190
259
269
219
247
142
170
140
179
210
173
140
255
183
250
160
220
164
206
167
259
179
211
164
233
202
247
215
171
175
144
276
210
222
167
247
165
240
171
211
218
202
158
199
201
226
193
206
177
229
237
231
207
172
198
197
206
163
239
207
204
227
187
188
246
168
217
212
191
195
235
238
173
195
242
197
180
239
210
233
159
165
241
237
194
228
194
214
234
148
168
153
246
172
181
263
184
224
206
148
140
224
230
243
225
209
180
199
193
169
191
265
163
201
195
174
160
168
149
199
264
168
198
197
266
180
194
204
235
208
158
202
145
147
175
185
229
174
156
176
235
174
187
261
239
211
217
202
174
273
156
184
253
195
182
181
193
204
170
129
127
197
205
179
185
216
220
238
166
166
231
212
216
190
114
162
237
210
206
198
259
179
246
184
187
196
193
149
179
137
163
163
186
272
190
122
174
179
164
181
199
220
226
197
191
226
215
189
225
272
140
131
232
182
201
170
203
181
155
130
198
223
210
200
232
191
218
227
224
147
231
189
157
189
143
200
215
180
222
243
224
161
205
220
222
240
184
161
203
151
235
217
232
221
220
193
186
234
223
220
213
227
166
196
162
285
289
220
199
180
220
181
173
231
164
253
211
202
215
120
146
230
183
208
260
236
192
203
186
248
216
161
215
190
230
144
204
217
222
185
193
208
201
199
189
192
225
231
214
133
230
169
230
255
169
207
172
204
203
208
245
183
211
219
228
199
138
183
155
148
220
226
185
163
188
216
230
172
225
202
242
207
177
221
241
139
226
195
177
160
174
178
212
176
184
241
187
233
170
175
205
187
207
154
223
177
216
155
230
166
162
168
214
80
179
201
224
160
196
209
205
173
169
207
182
207
187
193
136
158
208
207
234
225
200
200
154
251
171
165
255
241
210
158
201
182
166
192
211
174
132
138
180
188
214
151
209
167
253
208
160
274
221
146
220
181
221
202
239
200
184
211
200
221
162
177
258
245
147
172
219
207
194
245
206
215
156
144
123
253
229
246
188
192
238
208
170
236
205
168
198
163
180
232
267
220
248
206
223
225
169
170
226
149
233
235
181
231
213
167
239
138
250
260
126
212
173
180
231
185
193
246
172
203
233
142
190
163
203
167
186
212
151
217
179
191
206
209
214
238
162
171
149
244
233
254
201
207
224
157
217
188
155
219
189
189
209
266
191
184
269
243
214
129
191
250
185
258
249
233
187
212
209
198
225
251
161
210
157
157
187
188
166
293
237
255
214
230
179
167
213
130
145
223
186
246
180
164
190
172
185
194
189
165
159
169
177
222
196
146
190
217
184
182
176
225
241
213
231
189
197
213
102
163
202
209
190
86
244
264
226
191
249
166
250
152
190
203
202
261
161
194
207
257
207
250
223
214
198
205
235
189
120
200
224
153
283
220
205
196
196
160
190
208
141
198
239
157
230
226
225
271
221
278
218
203
227
213
174
207
196
175
190
197
200
208
217
214
256
268
247
184
208
241
187
242
177
203
206
265
188
249
213
190
165
189
157
215
164
265
178
204
237
164
216
249
220
196
183
200
193
206
206
199
224
268
188
200
199
213
211
179
219
232
201
152
187
195
121
172
213
184
153
130
219
187
140
126
223
198
193
184
204
238
137
206
181
203
185
188
230
201
166
200
154
208
286
220
207
187
229
182
187
169
272
227
196
220
183
183
240
203
184
193
238
219
173
185
164
230
207
162
205
213
105
241
160
273
190
139
151
246
238
211
196
121
215
180
161
234
240
212
182
188
169
203
152
124
243
177
264
268
167
227
229
157
225
249
185
187
192
173
159
164
189
230
220
165
237
149
187
153
221
238
193
237
215
161
112
206
225
172
211
193
159
184
188
172
248
202
243
230
189
259
224
268
244
158
179
199
226
183
177
214
121
171
201
160
242
208
197
124
187
183
207
146
222
237
140
238
182
186
265
151
146
249
173
152
193
198
188
205
225
190
172
192
198
225
220
231
177
186
194
129
205
238
207
198
219
193
145
201
198
237
180
151
192
248
153
184
236
182
131
237
226
187
235
134
232
212
177
176
186
161
157
229
161
233
177
239
150
228
156
231
191
270
186
211
241
197
226
137
207
252
191
185
175
222
215
246
255
195
159
221
167
244
171
224
175
220
190
143
190
217
186
203
195
143
199
196
219
227
202
259
228
265
187
101
206
185
157
181
173
243
199
224
140
152
172
199
201
216
190
221
206
157
169
199
228
198
194
207
162
205
195
227
191
197
230
221
240
250
216
183
196
230
156
207
233
178
267
226
216
208
160
264
193
171
204
226
205
176
178
166
252
206
152
210
185
208
222
256
185
184
214
253
214
162
179
169
186
116
189
141
190
241
214
230
166
165
158
151
172
198
175
201
166
168
177
216
223
200
223
210
149
195
246
270
234
209
125
227
172
204
213
179
187
206
286
158
172
121
207
221
207
172
231
207
231
172
157
200
229
224
172
275
242
205
165
178
227
186
208
195
210
236
151
198
155
195
191
185
264
161
214
185
201
195
147
233
267
148
209
183
174
182
147
153
215
264
239
231
180
137
126
144
194
240
238
178
180
198
181
141
170
185
250
210
271
205
246
136
209
223
169
194
216
257
171
212
220
212
152
197
187
232
188
158
181
221
198
184
200
203
188
208
181
147
115
249
145
189
193
243
210
270
217
206
148
177
213
213
214
160
233
234
196
262
214
185
205
199
253
188
161
145
156
150
206
206
185
197
229
234
243
206
206
222
207
224
263
180
199
210
276
147
249
268
174
178
221
160
163
188
195
133
216
161
195
192
194
237
210
214
232
180
236
183
226
203
191
196
252
238
134
212
178
168
189
220
182
224
240
156
155
205
226
170
200
221
192
122
228
184
152
175
204
173
203
198
173
191
200
240
247
191
204
178
266
215
253
253
182
191
250
213
172
263
199
180
211
200
223
217
175
189
210
174
152
252
254
250
178
188
203
163
244
253
231
218
201
229
217
148
201
214
221
245
204
219
154
235
129
217
206
254
209
207
161
194
223
240
185
194
116
212
183
166
209
187
189
193
213
194
244
176
211
172
166
217
253
232
152
216
209
160
228
241
186
267
132
217
214
188
218
178
182
185
172
257
160
195
194
171
254
243
188
183
230
155
255
169
175
220
206
174
178
218
156
239
172
194
237
213
248
240
200
145
152
251
193
217
189
233
188
206
209
190
179
230
219
127
265
192
206
207
207
162
202
175
193
171
238
242
164
144
212
177
226
196
233
216
191
255
134
147
144
232
155
208
222
208
246
205
249
252
230
231
231
232
190
137
185
206
137
227
140
190
159
229
176
203
221
194
145
127
202
187
183
229
183
178
230
225
202
233
170
166
178
222
140
193
259
228
249
247
221
251
179
197
142
210
207
245
222
130
227
214
195
259
234
218
150
188
187
222
178
216
208
170
214
117
231
202
151
189
175
164
222
209
207
209
187
213
232
157
221
192
174
155
232
215
162
244
238
165
198
188
183
183
247
182
149
205
250
223
190
224
206
199
192
204
188
188
187
209
224
192
215
167
156
249
185
185
209
227
220
207
234
197
267
209
204
224
230
184
229
196
241
232
153
170
257
197
195
258
222
217
206
182
204
145
222
138
193
228
180
141
237
201
185
157
245
205
252
177
222
221
242
229
230
193
215
242
198
153
175
260
201
217
204
139
207
226
227
180
233
183
176
192
191
218
221
162
146
167
190
178
215
163
223
155
176
224
124
180
218
170
156
228
267
211
200
216
252
185
190
197
291
243
231
218
251
225
193
229
238
149
130
195
189
141
180
233
181
244
274
168
222
179
169
218
166
181
222
257
169
158
189
252
245
158
192
200
224
258
213
261
153
175
281
206
268
173
214
195
169
181
214
228
171
193
160
203
248
261
208
210
114
167
171
224
169
171
223
178
170
266
272
135
173
208
240
199
231
170
170
147
164
187
269
192
225
270
173
209
223
214
190
221
283
134
231
146
212
185
174
205
185
192
189
202
191
243
221
202
215
189
210
178
194
184
202
173
166
131
179
188
250
207
151
213
279
205
196
211
191
175
115
175
209
250
249
144
154
205
205
245
239
252
176
227
158
182
167
221
207
209
209
197
226
177
229
242
206
215
209
147
222
235
200
191
144
221
170
179
218
247
221
178
239
213
229
206
208
189
201
190
201
172
217
242
196
167
217
197
162
259
230
175
288
201
120
235
200
219
173
215
169
161
156
221
143
182
161
178
204
191
203
176
164
202
170
142
221
182
225
160
268
225
177
161
269
141
201
166
206
176
167
200
122
193
171
135
195
157
162
181
200
248
176
204
225
167
230
215
140
230
171
184
124
167
128
230
201
210
216
248
149
157
166
211
186
155
258
177
222
194
158
255
169
136
173
214
138
242
205
243
199
170
218
226
171
182
264
159
220
186
210
218
196
239
172
167
129
168
62
205
189
217
170
204
242
203
227
172
192
186
169
147
263
241
241
198
205
202
178
149
212
174
224
253
266
166
232
204
245
115
207
170
202
206
231
191
225
207
222
151
189
205
230
261
170
249
203
200
224
165
165
160
192
186
232
199
166
193
189
197
240
183
208
240
213
176
196
187
171
221
131
223
163
203
166
166
198
253
252
188
176
193
153
189
191
170
171
208
201
179
203
163
180
230
221
291
164
221
231
238
265
152
219
259
238
214
176
164
213
162
239
181
122
119
174
269
205
217
180
214
232
247
195
180
222
176
198
259
219
214
181
202
141
186
203
202
171
192
253
178
184
217
233
182
174
217
173
204
167
185
209
168
150
205
247
211
225
197
261
202
125
257
155
193
205
201
195
204
157
171
229
249
203
198
231
185
193
167
215
118
182
183
149
222
182
236
193
181
167
226
173
175
171
150
235
181
171
213
171
271
214
234
248
205
224
199
267
195
209
173
247
179
225
233
205
193
153
139
239
182
241
264
263
174
206
175
167
152
215
174
171
232
187
188
127
150
175
203
279
176
165
259
219
193
179
210
163
187
210
184
189
183
233
212
175
201
180
200
178
121
227
189
251
157
222
241
165
207
211
256
203
207
161
206
188
156
186
211
262
202
196
207
163
240
159
220
227
215
213
139
210
229
149
239
184
190
159
272
192
237
223
167
196
202
158
188
173
171
193
202
189
242
187
229
167
251
230
193
195
256
180
197
242
221
186
256
212
180
223
229
222
181
164
224
209
197
270
193
246
198
255
226
156
101
212
206
239
225
206
196
166
183
153
209
257
231
203
147
192
200
174
194
134
165
270
233
256
163
209
221
235
218
242
156
238
222
190
183
194
185
215
225
213
169
153
165
202
185
151
243
200
181
220
184
206
229
210
230
197
227
180
248
143
193
266
170
231
166
216
205
222
237
199
174
169
243
174
221
224
205
228
236
196
209
226
263
203
182
183
146
212
147
208
234
172
192
149
228
182
204
199
180
159
192
155
193
207
241
185
191
206
191
232
141
217
269
215
235
220
161
211
173
201
169
222
207
233
228
147
154
261
238
187
248
196
185
146
186
230
262
228
230
240
275
173
207
221
210
207
231
203
166
230
204
217
229
242
230
153
166
234
185
210
251
173
171
196
227
228
216
294
148
212
207
235
153
226
268
213
210
156
228
176
234
154
201
172
209
155
175
240
210
187
222
189
223
190
151
228
220
217
213
203
196
197
218
200
177
195
223
239
199
150
225
197
187
231
221
206
212
257
223
161
246
215
208
216
241
203
240
226
202
187
189
201
242
221
214
231
167
113
237
213
190
190
229
137
180
211
160
221
215
192
203
173
207
214
241
254
187
246
200
189
185
196
222
216
180
179
238
226
225
198
187
222
160
179
156
246
242
139
236
227
198
163
205
235
216
247
224
178
194
161
174
239
223
149
176
192
253
169
236
211
201
182
182
227
206
183
239
232
186
189
200
196
227
177
231
225
155
163
246
192
207
193
255
257
162
234
224
188
199
193
282
223
196
175
176
185
197
179
260
236
226
191
266
181
160
185
172
145
192
211
215
166
255
209
177
209
143
220
168
146
233
192
172
250
196
201
198
193
201
224
233
168
227
208
236
189
236
177
173
203
137
190
205
197
189
210
220
186
174
123
169
151
190
111
182
191
171
177
150
167
226
269
177
204
215
259
253
176
155
267
192
202
147
170
226
206
240
209
191
200
145
199
190
222
185
216
168
228
157
161
228
173
139
221
224
227
219
234
251
212
235
195
248
270
209
191
146
234
138
213
222
116
194
231
236
226
204
128
161
217
221
168
220
176
184
218
169
242
228
246
244
145
215
228
194
224
233
143
187
183
148
194
216
161
137
243
169
137
213
202
206
153
227
213
204
210
239
213
148
194
184
226
219
197
187
243
179
186
171
212
229
201
184
205
223
174
189
188
220
194
233
172
185
202
166
245
203
208
203
177
285
267
187
233
257
229
263
248
163
216
192
304
181
158
178
192
250
212
191
203
244
181
197
216
187
157
202
158
211
216
139
229
185
237
202
201
208
154
204
189
224
219
199
213
137
202
222
76
207
165
158
171
161
202
221
215
261
265
196
204
219
157
195
175
140
218
233
207
237
154
194
211
170
225
161
214
235
142
203
195
181
235
222
279
208
206
212
271
168
182
92
198
255
211
182
171
149
238
191
162
176
222
192
169
160
175
130
245
166
167
251
212
156
176
201
211
166
184
174
218
188
209
206
215
240
178
177
228
224
229
242
94
234
209
214
212
158
218
199
174
142
204
152
172
224
195
163
168
165
155
194
222
203
222
175
215
212
197
236
179
191
247
245
203
214
171
233
187
207
189
237
214
229
181
239
255
153
184
205
215
195
242
185
142
224
161
211
159
226
215
99
251
164
211
244
212
220
222
160
194
246
243
255
201
211
245
172
191
249
169
182
195
183
249
221
202
167
121
186
233
251
204
202
190
247
243
184
227
175
168
159
141
209
188
177
202
175
229
172
211
197
227
220
180
210
256
265
216
215
127
204
235
193
254
176
220
229
222
227
214
191
151
168
239
154
169
198
209
208
169
185
201
207
198
157
206
198
211
174
189
214
205
118
201
212
227
178
207
164
251
159
160
175
261
197
144
232
174
221
188
238
235
175
210
203
192
225
205
207
218
182
209
206
161
232
227
238
155
198
218
209
150
207
216
162
175
239
127
209
193
212
190
234
261
221
201
167
258
206
254
185
207
238
242
198
244
219
213
181
199
177
197
174
233
160
211
189
169
242
225
166
216
187
217
228
224
212
254
134
190
181
209
206
163
190
197
254
200
186
220
197
201
216
197
222
196
225
241
163
184
212
246
204
175
218
130
151
212
214
259
116
192
159
209
151
196
210
236
154
232
219
218
187
201
163
169
224
208
191
182
173
219
188
215
197
219
190
225
233
194
172
213
230
185
146
247
186
209
199
197
119
173
251
148
215
206
162
197
179
202
239
184
209
221
161
183
183
224
239
183
185
234
215
192
156
197
208
226
232
197
206
194
186
210
186
202
234
176
212
193
208
222
186
244
151
167
191
255
184
194
257
136
130
282
221
238
181
244
160
112
229
196
187
232
179
218
77
171
191
236
251
161
213
218
161
219
153
220
188
265
187
198
184
238
209
228
212
233
146
164
193
223
248
147
202
219
206
181
188
185
202
213
202
183
206
211
234
198
191
205
176
202
159
204
206
257
182
180
150
246
185
233
228
217
117
228
223
212
198
198
207
156
163
152
255
179
196
176
216
261
175
176
210
212
186
206
188
222
180
225
216
201
207
236
227
155
168
221
225
230
216
251
159
211
160
241
206
198
187
252
232
227
170
170
158
249
223
223
159
221
209
210
237
216
237
186
147
134
243
204
164
219
227
208
264
213
213
186
217
231
233
174
211
205
252
253
276
236
197
219
197
181
219
119
197
201
213
223
236
212
182
246
232
185
212
188
230
196
246
275
230
236
230
185
255
183
238
218
232
152
214
189
171
260
248
231
181
196
202
218
182
198
214
188
103
204
192
159
227
177
199
211
178
191
245
203
291
187
118
216
225
169
234
209
199
165
115
168
174
187
235
181
249
156
218
214
177
140
227
185
273
181
203
246
265
229
180
221
204
204
183
215
235
201
226
174
253
193
159
176
189
225
165
203
165
189
159
223
225
188
221
169
184
203
233
175
164
202
278
184
198
249
235
155
214
217
249
192
218
201
202
224
208
119
152
235
158
130
184
210
219
136
219
250
257
261
201
217
220
119
162
187
211
214
252
196
175
218
173
233
206
217
203
253
220
223
243
219
180
174
197
219
233
183
236
171
160
220
242
218
229
211
234
208
124
157
209
227
185
143
205
160
224
167
214
163
269
147
207
208
220
168
183
243
147
167
165
248
180
181
187
223
172
193
266
229
181
230
200
235
212
173
125
185
187
194
262
207
238
170
203
131
269
232
208
183
211
195
112
220
138
174
185
193
206
193
214
199
177
185
211
174
157
203
214
267
205
222
229
304
182
212
163
198
232
250
238
194
241
221
177
173
157
174
232
122
216
198
241
161
217
234
224
146
218
188
191
192
196
186
224
165
192
192
191
224
202
196
196
258
197
233
221
192
198
187
158
175
200
215
226
201
199
226
221
98
143
188
173
176
212
160
180
179
210
240
155
203
224
210
245
223
179
206
243
258
216
161
225
195
151
190
187
203
194
168
209
194
210
215
213
171
189
206
195
249
245
206
216
231
215
222
154
208
145
222
189
222
260
96
205
286
164
234
252
190
237
188
207
207
165
180
173
158
180
161
227
188
212
215
247
202
251
195
279
219
194
171
162
230
192
210
238
131
172
185
179
192
166
196
192
196
255
228
201
237
208
209
135
177
161
157
235
134
172
260
148
244
226
125
216
199
190
209
137
197
175
221
157
217
181
193
202
268
208
176
243
210
203
164
98
197
219
224
192
201
151
223
200
223
152
256
195
154
192
166
250
195
192
153
225
240
209
259
225
179
208
164
183
212
197
185
176
203
209
190
205
276
241
188
266
217
235
229
214
153
247
222
251
182
229
143
144
194
164
168
178
180
262
159
149
201
179
197
234
151
190
245
224
172
163
228
218
109
239
194
230
231
224
207
170
190
230
173
220
189
185
167
206
145
192
238
214
224
165
218
203
212
213
165
183
156
193
243
217
137
206
214
194
219
243
200
153
242
198
200
175
205
183
271
225
176
231
193
116
209
232
114
177
209
260
210
217
195
179
171
275
193
123
157
129
203
210
226
224
224
208
149
255
202
210
180
177
235
183
214
191
191
155
262
186
216
218
143
188
230
154
232
235
203
153
186
198
187
209
235
264
191
233
195
256
163
189
196
187
223
236
192
232
206
151
165
234
207
187
182
185
230
178
244
175
253
192
256
196
187
149
156
266
228
208
251
189
216
186
167
244
169
216
165
197
218
268
163
145
158
192
281
222
215
178
181
237
255
216
196
142
218
225
239
225
174
199
188
239
171
210
180
97
188
212
167
205
179
217
197
140
248
208
190
231
197
172
221
161
212
230
187
155
175
192
285
185
197
217
250
162
182
269
175
156
158
185
264
163
194
220
154
211
211
201
143
184
205
203
253
208
251
238
245
199
185
201
195
176
148
218
206
204
151
154
232
244
220
256
234
215
220
225
258
220
207
197
229
198
204
220
215
154
212
217
223
160
173
219
206
202
185
163
189
247
164
142
227
212
169
166
235
219
155
202
221
236
249
217
161
208
207
146
204
191
175
248
158
239
165
184
222
238
204
250
178
251
262
260
199
143
143
159
268
139
163
125
163
129
162
199
254
165
194
179
213
205
175
196
210
180
174
188
213
204
205
199
175
148
261
202
232
248
211
208
179
155
164
195
216
204
219
173
179
144
233
203
246
203
187
158
199
175
249
202
221
157
239
108
227
219
153
206
147
259
192
173
222
242
165
130
173
171
231
233
203
215
203
149
251
178
142
179
196
236
231
188
206
146
178
245
160
146
180
238
177
244
191
196
190
180
203
187
216
244
228
176
214
151
252
224
144
209
204
178
192
198
219
191
228
278
115
211
177
211
183
180
228
102
136
154
207
230
166
220
182
229
215
105
141
218
147
139
210
225
237
256
189
240
235
195
238
219
192
164
163
200
213
175
210
197
205
206
188
231
187
208
245
187
167
188
216
188
164
204
264
229
162
190
200
173
187
208
241
253
199
249
198
227
166
201
259
208
223
137
222
226
216
219
188
204
239
194
236
271
256
217
222
118
214
279
223
252
182
136
217
136
247
211
162
245
235
205
211
240
143
147
218
199
211
202
159
178
211
150
172
226
195
211
162
175
191
225
178
195
208
127
186
213
223
183
163
191
222
208
249
168
149
182
155
156
228
196
192
193
192
199
171
214
232
200
207
192
122
212
169
174
141
211
238
205
261
164
239
189
204
153
192
209
181
216
131
167
198
235
173
187
155
174
152
237
214
228
234
241
196
181
278
206
256
138
127
198
208
177
226
229
185
155
196
254
211
225
159
248
234
191
225
141
190
206
190
207
206
237
187
169
219
236
243
180
265
201
207
215
257
214
195
209
189
152
181
164
180
195
197
174
158
169
193
181
169
237
156
157
197
217
197
203
209
289
173
238
189
162
152
261
228
212
215
224
244
201
264
230
173
161
221
109
207
223
264
194
158
207
207
217
239
141
249
183
170
205
245
183
176
154
179
151
254
153
174
230
226
227
202
215
255
198
206
205
180
259
227
157
184
193
209
200
162
237
206
213
238
198
243
227
218
184
236
243
140
241
209
149
248
215
265
198
125
223
210
146
174
220
232
242
240
240
245
252
199
210
208
171
221
143
242
228
199
248
197
243
207
181
205
233
192
199
216
225
201
219
200
229
175
205
220
223
198
194
229
140
244
212
203
164
248
160
230
261
258
156
209
248
242
191
207
203
209
209
224
203
206
214
171
242
163
292
175
232
230
215
199
261
212
212
212
237
211
191
185
152
206
155
222
138
182
195
243
159
237
202
174
206
150
210
160
253
247
212
164
184
239
227
192
261
174
197
181
207
235
215
225
206
199
159
179
203
180
172
161
187
216
232
209
129
212
200
197
228
198
226
198
188
245
195
222
190
239
107
189
189
226
205
245
259
205
155
188
208
169
222
194
167
140
174
202
195
205
169
129
189
239
210
276
210
203
157
246
169
184
210
221
210
155
210
165
198
178
207
220
190
234
186
193
193
179
249
188
239
253
214
249
187
192
187
184
164
246
237
247
199
223
140
205
211
217
199
225
206
194
205
211
220
195
206
206
176
189
203
233
256
185
193
238
214
224
161
216
223
253
177
274
172
220
169
247
153
247
195
220
254
214
229
220
173
212
193
277
175
170
228
169
175
199
156
239
163
160
212
181
177
221
171
237
235
136
154
180
195
185
233
183
160
238
232
238
219
187
211
211
202
283
210
188
221
191
181
182
194
211
232
237
190
198
263
224
230
202
180
219
228
228
149
214
135
238
224
194
168
223
234
188
233
128
252
140
237
205
222
229
200
184
244
195
251
238
151
172
248
230
182
184
199
217
138
161
224
168
216
207
137
202
265
200
240
211
161
198
176
213
212
232
216
241
207
212
232
189
225
116
144
255
261
228
232
248
182
220
202
202
226
190
240
207
202
176
221
186
222
149
233
125
196
195
219
196
280
142
136
188
168
208
147
140
162
141
197
212
229
207
169
145
213
191
173
159
223
202
180
226
151
186
234
175
205
182
175
237
220
219
160
204
200
223
225
201
195
190
194
181
222
183
197
174
189
181
167
163
136
186
153
210
215
190
168
180
221
150
214
167
233
197
139
226
231
206
173
203
192
188
214
226
210
224
188
169
160
254
187
215
221
155
209
184
236
198
187
222
229
238
210
170
205
278
211
188
170
202
168
171
174
222
195
155
213
148
250
243
153
268
247
222
250
264
171
267
231
207
152
196
182
243
224
220
233
192
191
199
191
244
224
113
139
195
198
212
188
177
170
187
164
220
231
241
223
201
175
261
250
227
175
182
247
268
196
184
154
191
240
222
176
189
232
182
195
179
279
245
193
195
161
191
245
199
213
140
218
211
252
202
259
245
191
166
132
189
168
194
203
171
191
158
212
184
212
202
256
164
274
148
188
232
163
223
209
239
245
142
212
236
176
163
203
198
215
200
107
201
215
196
207
219
192
135
198
185
182
208
193
186
182
222
193
158
230
262
210
189
193
160
154
185
182
179
228
180
210
232
204
165
250
231
271
236
200
173
200
216
229
161
232
198
158
128
183
161
184
203
160
256
204
210
170
151
213
150
161
228
243
191
239
183
218
170
168
233
177
204
227
158
175
174
170
221
271
214
186
241
192
159
153
156
247
224
134
167
201
163
181
213
215
164
188
198
220
256
179
220
190
184
149
240
173
154
279
186
223
206
147
225
211
255
145
192
207
240
196
211
198
195
186
225
146
217
215
120
146
187
247
210
163
185
179
259
181
209
209
181
215
149
207
152
186
198
232
181
216
186
169
224
224
229
216
127
189
154
208
153
267
189
167
166
157
231
231
230
217
219
178
244
257
165
206
190
210
194
180
216
229
224
213
170
200
242
274
165
174
203
209
231
239
191
152
192
216
196
153
200
234
209
207
213
183
238
251
195
243
207
227
191
207
279
206
188
221
209
212
151
253
205
178
187
225
175
172
198
213
208
179
215
266
253
265
203
206
206
189
125
228
215
236
223
183
226
185
239
211
168
224
229
207
139
258
168
226
174
194
241
202
225
211
192
152
194
197
199
228
161
163
242
193
199
213
234
158
233
179
231
242
206
187
136
178
215
197
145
188
144
182
238
273
227
208
230
137
237
172
196
210
211
185
200
138
174
199
113
176
247
200
259
233
221
203
107
178
160
235
181
227
180
223
238
147
253
223
235
275
214
191
206
177
197
240
173
217
177
142
162
210
192
216
232
197
188
207
126
216
218
160
267
189
234
206
161
194
163
200
230
187
168
136
194
181
214
165
161
193
155
200
144
150
180
187
214
150
194
239
201
195
230
167
199
241
175
243
156
188
203
230
190
204
248
163
205
154
221
220
230
175
190
166
217
230
190
222
241
255
185
233
173
161
203
166
187
131
216
159
243
142
146
214
231
213
217
257
153
198
218
238
221
229
185
221
181
188
226
229
201
254
218
189
254
184
236
177
137
186
206
215
219
224
150
139
209
246
254
229
222
149
213
211
112
208
211
265
180
187
223
200
132
172
190
221
200
262
197
193
173
184
218
227
215
200
264
227
199
251
208
201
184
177
227
186
253
267
136
168
199
125
244
216
209
219
196
108
177
207
224
178
171
133
161
224
238
166
143
173
238
254
156
219
249
284
176
214
132
199
148
227
252
226
127
263
184
207
243
253
223
195
207
196
253
199
229
143
212
205
164
171
185
194
192
207
180
209
178
221
153
175
237
176
221
227
215
216
239
199
172
168
209
220
229
276
146
141
219
185
170
146
207
158
196
194
234
201
213
212
190
185
200
208
206
225
173
215
188
254
182
195
250
184
225
216
79
174
181
176
161
176
183
227
208
167
202
179
231
177
223
184
184
201
188
231
195
208
213
150
218
216
221
191
185
162
176
166
196
218
159
133
190
247
186
230
228
174
201
183
231
213
262
171
255
193
159
219
220
211
220
249
216
253
226
241
177
170
182
205
150
257
215
224
251
222
148
267
221
191
222
227
223
137
228
155
218
169
228
198
244
204
209
230
209
108
188
270
275
216
224
211
227
268
168
199
203
207
180
192
181
178
160
202
164
249
191
141
222
190
228
184
256
151
222
187
211
165
202
223
165
181
225
219
176
215
214
222
168
157
208
209
208
171
209
172
169
205
242
190
180
186
192
252
107
248
201
200
172
168
220
177
150
196
161
168
219
167
235
244
217
270
102
119
172
198
169
201
200
208
198
183
195
221
249
194
228
186
171
232
192
214
209
192
176
265
185
152
200
166
183
164
196
207
217
254
192
260
185
204
197
231
218
224
235
244
200
221
216
196
287
222
171
234
199
157
217
212
154
152
217
173
154
182
177
187
199
213
249
194
214
198
144
194
181
262
177
140
170
189
203
214
226
184
198
261
227
219
177
218
286
173
196
233
135
230
185
261
157
279
160
201
199
260
244
214
204
235
175
188
214
185
253
239
209
140
198
239
126
230
213
186
241
262
174
207
169
179
188
189
210
262
115
247
205
172
177
131
259
205
136
239
173
223
187
285
190
186
220
236
201
171
173
200
186
156
215
241
209
187
177
185
160
244
239
114
220
226
192
212
175
159
209
173
194
170
238
198
178
189
167
225
192
236
175
214
221
190
187
196
181
232
176
172
230
208
241
243
182
186
269
188
216
247
209
189
234
209
233
166
299
153
207
285
257
190
226
127
254
223
166
170
254
197
260
209
192
251
206
187
217
191
244
232
171
168
174
235
194
200
243
124
182
214
186
196
189
187
217
199
231
174
214
170
254
175
143
115
195
211
218
220
245
226
210
233
187
250
179
205
178
174
237
191
261
223
168
223
245
175
163
216
267
232
153
164
154
281
222
264
222
203
273
171
192
103
227
172
171
194
205
190
235
218
121
229
148
185
233
193
151
208
189
202
277
179
207
140
193
154
211
180
224
193
201
204
190
196
174
226
216
221
234
207
228
152
185
190
191
198
241
189
171
207
201
217
247
178
254
185
199
162
185
195
229
233
269
280
152
247
80
224
230
189
190
189
150
191
255
217
275
168
176
152
197
225
210
175
162
186
196
230
142
218
262
203
188
250
238
172
140
223
182
232
202
249
185
172
151
164
183
182
212
230
196
242
135
188
214
217
243
204
152
183
181
244
226
190
184
181
164
199
182
217
208
140
204
176
153
200
201
208
224
200
154
223
201
237
243
237
214
138
207
204
209
217
161
164
236
189
196
100
241
260
187
224
193
192
199
143
179
196
241
177
146
209
184
201
198
226
121
210
166
173
242
230
214
144
270
142
188
165
155
212
232
229
176
208
222
205
168
230
187
190
178
157
253
197
185
263
224
195
173
154
274
214
149
201
232
202
162
236
182
135
213
150
269
143
196
194
167
150
223
220
197
191
188
179
260
145
195
150
218
225
129
200
196
162
161
158
249
166
177
200
172
186
242
190
237
142
192
178
189
190
194
203
245
157
202
195
172
240
249
229
198
218
172
216
199
200
148
209
196
200
187
170
205
186
211
184
206
234
196
188
198
216
231
211
225
136
251
186
210
200
231
195
255
238
174
222
255
225
141
191
203
156
156
197
217
195
171
184
291
180
190
232
185
249
230
211
194
216
248
202
173
131
209
162
232
160
218
155
218
178
239
202
223
202
229
164
226
182
161
158
214
198
171
140
146
186
126
269
227
213
188
166
239
99
180
185
222
108
226
191
204
222
222
240
174
201
211
171
236
160
188
234
168
194
179
253
226
177
213
207
261
217
199
160
157
234
217
224
172
204
216
215
131
184
249
244
201
211
162
246
214
181
148
182
141
178
225
238
181
197
206
168
216
218
211
159
188
217
180
185
201
156
238
207
224
185
170
144
204
192
174
172
212
209
267
263
194
168
170
186
158
238
208
214
219
258
214
185
226
179
176
173
253
182
220
243
162
151
197
217
176
171
157
181
246
185
218
163
212
216
207
206
276
238
117
245
219
234
235
214
192
205
232
240
164
148
217
227
151
196
196
212
238
175
249
184
155
224
122
155
185
183
192
162
226
247
218
194
212
234
187
203
177
242
252
224
255
203
218
244
178
165
183
231
186
252
248
186
123
221
166
161
177
262
215
193
157
207
250
125
211
228
290
223
178
204
224
202
218
162
164
191
225
174
142
201
157
195
206
190
228
215
145
212
262
219
110
167
222
210
170
150
213
202
200
183
190
211
221
252
177
238
199
196
200
120
224
266
231
130
116
144
185
233
176
217
146
153
204
182
237
206
224
211
194
203
197
168
226
217
192
274
242
185
201
257
186
258
244
168
214
184
208
178
195
238
187
135
169
204
171
266
245
210
168
232
143
182
183
190
238
219
175
206
230
222
231
148
233
215
257
185
178
159
176
238
172
124
234
181
226
207
202
192
153
211
212
243
190
199
250
171
175
218
199
233
164
265
118
225
243
165
196
215
224
168
188
228
232
208
166
182
182
130
218
184
256
178
212
231
266
152
138
150
240
166
221
175
198
189
219
239
162
191
164
208
176
213
231
268
207
202
203
225
243
187
175
194
203
157
157
220
211
225
219
220
199
216
260
208
151
215
193
180
197
202
154
213
230
220
194
230
198
215
157
206
257
244
238
239
214
192
240
222
131
208
200
174
187
220
226
198
157
216
210
214
161
187
184
192
215
125
241
204
267
256
246
203
235
228
194
186
235
253
211
223
232
174
233
186
157
243
173
203
171
227
188
237
219
189
181
221
193
175
217
160
191
173
240
198
203
214
149
203
168
183
181
180
192
94
215
221
279
202
271
243
264
214
167
173
200
216
264
221
166
255
205
213
240
194
181
215
247
220
161
182
189
230
163
195
287
206
257
215
189
174
165
205
244
222
203
197
190
212
245
180
140
281
224
172
213
173
172
203
261
203
247
202
157
178
217
206
278
142
246
203
248
214
187
172
270
189
188
212
239
245
176
208
141
215
234
176
186
179
232
219
172
167
215
165
250
185
214
188
202
195
215
228
240
205
172
156
189
210
205
180
209
164
236
220
219
213
223
205
247
176
191
149
168
213
170
172
162
216
148
206
207
220
251
135
179
200
235
199
203
241
196
204
187
188
188
242
211
151
191
235
219
202
148
200
169
177
190
195
243
204
267
222
213
150
191
211
155
244
211
114
139
217
208
214
222
228
216
183
242
220
145
226
188
230
180
204
184
181
136
179
253
195
149
203
200
149
226
235
180
210
180
241
217
199
227
165
194
190
241
171
214
150
189
196
173
214
174
226
232
239
247
246
204
198
246
130
218
187
159
206
163
181
224
174
239
251
223
190
242
211
101
226
148
200
210
177
238
145
238
251
176
241
232
166
170
154
203
215
233
196
229
162
231
256
223
209
141
219
194
181
250
283
196
204
210
231
191
201
206
143
220
261
178
213
246
177
255
156
212
194
291
159
217
182
143
209
193
219
212
225
210
209
170
239
209
204
132
180
203
209
178
192
221
203
184
94
214
252
186
211
164
219
218
175
187
136
192
241
173
213
207
210
191
199
168
254
190
243
229
211
256
59
208
175
150
203
227
179
199
197
190
213
182
198
236
226
157
237
255
266
177
156
182
221
118
204
208
164
165
197
227
169
254
168
157
270
197
179
210
180
198
198
169
192
143
182
236
228
236
171
224
208
253
207
199
123
164
176
229
174
143
202
197
189
197
202
202
197
178
180
207
155
203
186
247
160
202
164
157
127
184
194
182
136
189
205
203
143
243
259
175
209
197
178
207
158
224
120
239
219
186
133
181
174
211
193
243
159
120
224
204
154
209
181
187
179
195
247
195
212
187
250
159
230
219
125
204
181
209
234
211
232
198
136
197
159
239
197
192
175
163
214
210
232
142
198
197
195
126
181
162
209
200
193
263
270
184
177
206
202
236
207
164
183
194
249
184
195
193
256
198
223
198
260
158
169
259
257
197
167
204
176
171
217
213
185
174
195
248
229
150
240
188
200
241
203
219
187
198
193
192
139
166
218
177
192
195
193
226
282
147
221
246
180
234
166
203
168
125
178
208
186
212
164
196
242
189
100
228
195
201
196
167
158
208
135
188
209
176
186
210
175
219
234
193
241
220
218
218
208
156
212
196
123
215
200
187
220
248
139
200
189
160
239
263
222
249
225
218
212
190
119
142
196
244
212
199
192
197
204
226
182
236
241
204
156
189
245
234
210
207
201
147
241
188
165
240
176
181
129
202
235
207
198
225
204
152
186
237
201
189
266
239
180
219
239
200
186
187
213
216
172
183
242
225
183
246
192
190
239
221
184
192
258
253
211
238
236
172
228
151
225
296
235
156
209
127
262
218
136
184
224
254
217
224
142
165
210
229
205
161
236
167
239
227
203
215
200
203
202
217
211
252
161
203
174
172
191
245
198
190
235
164
145
151
208
223
236
187
236
194
183
196
250
237
205
177
218
233
206
250
210
222
249
168
207
219
234
167
207
229
249
271
176
222
209
128
239
225
211
232
195
209
255
217
197
209
290
206
236
227
220
211
232
163
211
206
225
207
229
170
235
247
189
215
130
206
175
207
161
145
172
264
183
236
192
203
189
209
197
236
196
236
240
193
231
224
176
138
243
172
161
262
211
182
137
207
210
222
188
190
199
178
211
171
167
159
184
212
182
197
238
201
214
195
224
200
178
222
276
164
254
261
223
232
193
214
218
243
137
176
239
236
188
200
224
187
223
232
238
236
235
215
203
198
141
150
226
255
197
215
195
253
190
199
139
262
214
172
213
172
187
193
170
225
190
241
193
192
246
145
196
219
209
207
151
226
175
175
199
238
229
201
198
198
194
178
230
191
168
176
193
212
199
251
208
190
188
202
225
181
212
154
147
204
233
134
157
164
279
250
175
163
183
235
157
188
230
159
235
178
213
245
198
275
214
222
219
224
197
226
220
161
223
192
128
177
138
155
197
222
166
175
196
193
242
181
184
222
161
240
128
139
171
204
210
189
155
196
227
165
200
171
190
168
181
155
165
267
226
197
213
196
202
225
170
166
169
164
217
252
170
226
214
159
179
247
222
129
150
177
262
210
206
181
240
207
245
216
186
200
208
193
170
139
109
235
216
237
234
228
209
176
216
255
227
202
220
262
209
154
228
177
205
207
242
154
206
175
201
243
206
238
214
244
233
181
136
247
229
126
154
206
264
229
142
167
183
151
171
208
222
239
182
152
170
196
246
119
211
173
205
231
200
208
243
186
186
150
181
184
207
180
208
189
205
235
221
282
202
197
238
189
243
168
143
259
195
179
197
185
177
180
199
215
254
204
181
207
215
192
147
208
179
225
277
116
157
240
179
205
193
174
202
136
231
266
198
126
156
211
179
235
157
196
237
174
174
220
212
206
201
181
143
169
185
226
189
180
205
193
169
221
237
226
283
212
180
198
121
172
216
205
156
239
180
256
232
208
196
221
202
140
176
224
217
218
261
173
177
172
211
162
209
175
182
212
248
194
205
204
188
197
202
170
170
241
208
269
214
212
182
162
233
240
179
226
166
231
171
175
212
223
216
231
177
191
268
162
231
192
239
207
185
166
210
209
218
196
204
178
198
223
251
197
226
159
168
156
151
203
182
220
164
185
181
177
183
214
191
215
233
197
222
178
176
138
200
150
245
186
254
174
192
160
210
246
251
187
224
210
185
257
240
218
142
217
222
219
156
250
210
193
213
218
170
202
195
220
187
279
223
136
220
191
218
231
195
274
172
227
263
175
190
160
238
239
210
201
251
193
207
207
191
139
192
182
196
236
266
166
221
230
217
226
165
225
156
202
177
239
254
165
167
211
240
235
210
138
179
171
251
200
156
196
270
222
193
198
249
256
216
230
176
193
226
221
261
188
244
228
179
196
157
263
186
235
236
223
174
219
194
195
235
186
215
159
129
195
208
191
156
216
117
189
204
146
210
262
235
185
218
193
216
161
137
209
225
158
163
214
194
176
221
142
170
187
150
211
235
185
227
177
228
228
193
209
174
212
137
205
189
189
138
204
164
209
241
250
236
217
192
228
168
226
246
217
202
205
224
229
169
283
188
213
146
170
197
191
203
221
239
171
198
202
251
195
168
159
150
205
214
163
221
175
158
208
218
177
170
214
219
123
214
207
201
216
114
177
237
183
179
272
216
224
199
265
197
216
170
218
244
227
230
194
206
194
197
167
165
159
145
159
240
157
183
209
230
223
152
179
219
164
159
128
216
216
219
267
210
233
179
197
199
218
188
135
187
218
187
254
189
216
234
179
245
172
234
230
199
263
244
126
217
207
261
175
170
167
242
190
121
192
220
168
154
146
174
87
200
219
206
178
181
198
140
187
169
273
261
242
260
222
204
203
124
198
224
246
188
171
185
222
156
129
252
160
188
187
248
155
205
196
221
198
175
133
210
176
233
167
129
201
228
211
171
228
207
164
249
222
152
140
206
236
228
221
229
224
233
194
183
207
182
144
235
175
203
225
210
202
203
174
242
161
175
230
214
194
237
223
203
256
215
161
223
204
245
202
131
184
197
216
222
183
206
203
195
227
199
159
233
205
228
232
230
195
174
236
240
154
177
211
200
234
173
193
221
236
251
210
198
201
154
206
215
267
200
170
247
233
212
142
185
257
231
232
221
225
212
244
205
190
243
176
170
176
213
259
208
209
227
152
216
190
178
108
243
231
205
174
133
252
188
183
271
115
214
201
217
203
232
212
234
157
188
128
208
268
197
131
157
208
170
162
214
216
215
201
237
199
243
241
192
148
209
235
228
199
268
174
190
175
260
211
207
242
223
218
206
204
167
198
193
173
207
192
194
196
215
144
156
150
236
161
216
200
191
136
221
236
229
187
200
196
170
222
171
272
157
184
215
214
235
263
280
229
222
237
191
222
246
170
211
237
150
206
167
176
170
252
216
198
176
204
198
222
209
187
191
237
194
193
214
171
132
173
183
219
212
196
189
217
244
222
234
198
178
212
172
248
130
186
174
228
193
236
206
194
196
154
174
194
214
217
198
225
247
184
171
242
188
200
172
228
204
196
239
209
173
190
236
191
200
207
215
239
209
181
214
206
218
176
220
189
242
187
218
198
174
200
222
171
168
236
193
202
153
218
197
194
238
232
205
179
202
241
271
195
134
247
126
199
227
181
198
149
255
211
157
221
211
129
175
207
176
170
213
178
202
154
238
241
171
223
213
194
211
160
180
182
174
131
196
242
214
197
186
133
175
256
137
275
206
149
231
175
218
174
228
189
246
249
178
226
132
165
146
219
206
203
175
144
138
229
185
236
197
169
232
257
233
202
201
262
222
187
138
204
206
231
264
129
128
176
171
235
245
219
212
218
269
177
198
176
192
195
208
230
159
192
152
221
200
249
230
126
232
213
194
222
144
247
136
174
199
238
177
180
227
218
141
281
194
202
240
159
163
233
168
191
162
227
169
184
251
256
210
227
207
243
235
238
214
238
265
203
186
201
243
139
150
254
212
205
178
106
180
175
144
241
185
253
229
213
206
173
212
190
121
235
198
217
234
196
215
181
271
253
179
181
242
154
245
184
128
237
209
188
231
154
223
224
162
162
194
186
213
214
147
163
173
229
200
142
187
153
203
229
187
170
171
203
216
172
165
202
194
269
219
237
117
208
226
184
142
229
147
190
219
176
192
243
246
222
204
218
157
204
240
203
174
159
202
186
162
269
211
244
213
213
189
263
221
145
173
131
152
279
131
168
134
184
223
204
212
231
214
228
202
209
202
217
124
139
167
228
186
168
233
183
185
205
169
211
207
128
243
206
226
147
218
134
219
143
146
217
163
218
226
220
176
281
241
207
190
185
245
218
154
130
236
228
97
195
155
235
149
170
133
153
172
186
187
256
233
246
231
233
215
204
248
145
223
176
180
207
251
223
147
189
220
222
180
259
258
147
219
162
166
251
193
221
193
140
204
243
218
158
209
212
199
217
191
196
218
181
198
155
218
237
263
220
186
208
192
190
238
222
172
186
170
189
215
216
181
195
237
228
202
175
191
229
158
211
218
164
196
235
227
169
218
155
220
238
224
211
250
151
242
152
187
185
199
254
139
144
156
199
190
208
201
215
183
147
204
211
181
212
204
228
197
215
222
218
220
213
228
227
197
196
266
190
255
180
168
200
207
210
232
200
193
223
164
248
155
160
200
240
227
223
160
166
140
235
253
196
239
173
134
179
237
187
239
164
229
165
227
163
215
223
167
198
247
209
199
246
194
216
106
209
220
219
173
240
186
183
157
202
195
236
240
193
200
226
210
166
195
237
241
261
200
216
176
218
191
203
171
250
211
214
207
185
226
183
228
210
132
162
178
202
160
165
209
193
170
220
217
154
185
173
216
166
204
246
127
243
178
162
212
221
225
202
236
188
222
188
211
135
232
211
217
174
253
128
215
190
149
165
272
174
188
186
233
199
170
191
230
218
243
194
196
221
191
245
219
169
168
179
203
209
182
170
184
218
230
251
193
215
236
199
152
202
231
205
200
168
208
222
198
183
155
183
163
190
198
181
223
238
227
215
170
195
204
273
225
206
266
180
140
185
188
198
220
150
180
165
221
170
217
196
248
155
201
227
156
127
198
222
209
189
217
221
199
254
195
256
169
200
197
156
214
137
227
174
173
157
202
205
196
130
223
177
243
128
164
131
230
255
198
241
165
247
163
226
145
148
207
208
198
175
229
236
214
230
249
198
176
156
220
195
95
152
177
196
264
176
172
200
200
141
186
264
166
252
196
221
177
192
183
199
241
213
200
177
222
248
192
159
207
186
245
136
220
228
205
133
158
215
202
198
186
196
169
194
196
192
195
226
188
142
213
224
196
162
277
215
236
220
209
249
222
264
186
254
243
190
229
195
175
181
182
202
211
209
178
258
204
174
197
184
200
205
271
204
228
212
199
207
209
218
197
215
190
136
215
239
228
238
263
205
155
133
196
180
210
197
175
179
199
242
179
208
239
265
207
240
168
188
194
230
189
171
212
192
224
274
206
208
217
232
228
225
241
212
147
179
196
190
177
251
241
270
148
191
157
156
196
167
226
133
126
251
220
249
197
212
188
228
218
213
140
143
159
236
240
219
223
177
251
167
229
281
190
220
180
177
190
236
239
112
192
162
133
193
198
224
242
155
220
226
212
197
195
200
181
150
285
103
204
208
162
226
263
245
207
136
169
223
183
210
236
201
194
149
247
188
255
219
185
179
202
189
218
192
212
171
174
231
201
222
187
215
193
190
219
179
157
149
207
169
136
224
227
159
141
190
181
154
207
190
215
145
203
210
156
189
201
244
174
103
194
231
186
174
202
215
204
227
218
162
228
214
244
181
190
239
181
164
141
214
223
229
251
182
181
168
212
201
167
201
192
227
167
253
191
224
213
184
176
223
186
153
157
172
239
265
181
265
191
174
181
216
156
165
176
166
117
149
173
213
173
216
204
178
169
232
181
129
194
201
194
255
237
185
201
202
155
222
251
176
218
244
176
207
163
196
184
151
244
145
215
216
243
182
199
201
185
163
244
236
179
214
196
227
262
186
192
205
235
183
156
234
187
160
182
213
180
210
203
242
199
182
199
239
205
203
205
178
185
250
181
219
239
228
142
233
180
140
152
211
218
184
220
228
235
223
193
201
189
190
204
213
249
192
214
205
187
173
166
223
135
224
267
222
175
227
199
213
191
161
241
181
218
235
159
224
201
210
216
234
209
217
175
222
229
210
232
196
219
208
188
176
214
226
272
164
212
178
202
162
195
169
197
181
232
195
179
217
245
206
213
199
148
207
188
179
228
235
141
178
210
170
177
201
187
208
159
220
136
194
228
216
161
215
221
243
210
175
240
201
179
164
153
166
182
270
227
241
223
225
181
238
222
135
186
159
261
207
218
219
235
142
194
164
210
139
212
215
251
198
231
171
214
185
200
185
197
210
182
171
198
270
181
227
200
245
131
182
195
268
228
201
158
149
228
209
225
166
222
173
255
216
187
240
221
187
263
258
152
201
212
194
232
165
219
222
246
227
179
172
177
226
228
149
268
248
188
167
232
223
143
236
243
224
192
189
190
138
244
158
200
236
179
206
206
235
199
221
162
215
206
154
243
207
236
171
164
176
220
181
180
221
160
208
183
163
197
201
228
195
228
153
224
245
200
235
167
175
213
260
216
208
177
208
131
216
184
208
187
231
174
154
195
205
208
221
198
240
253
161
216
208
228
253
195
181
256
258
218
247
186
230
234
190
204
179
211
199
220
236
202
202
222
204
196
229
180
217
164
220
203
136
233
176
230
146
197
150
155
228
122
184
214
221
245
190
155
211
251
206
241
203
186
212
203
208
235
285
198
204
178
136
202
156
250
194
268
217
193
214
174
205
230
235
174
257
248
222
181
173
135
229
193
227
189
214
239
200
199
160
192
211
260
183
172
191
217
250
221
170
231
201
187
181
211
236
224
173
246
259
162
206
183
157
180
244
261
213
170
150
183
205
226
267
190
234
218
154
229
233
178
176
166
223
153
284
152
200
157
216
236
218
210
195
173
203
170
234
240
171
221
223
245
269
205
189
217
227
200
161
203
164
217
203
204
212
200
125
220
196
113
178
171
168
183
165
225
220
201
182
183
153
166
197
191
251
180
201
162
230
197
209
216
169
238
207
146
234
225
207
220
247
222
147
176
175
205
184
169
177
151
244
144
117
240
212
209
213
246
164
167
236
263
177
134
195
213
226
138
213
244
232
195
218
180
171
161
124
156
252
187
212
211
136
200
270
161
217
186
219
233
183
195
199
211
221
185
214
216
222
161
215
148
128
204
188
163
219
216
233
298
284
146
156
244
179
167
210
224
215
206
232
203
202
254
202
161
232
200
199
241
200
138
259
193
207
214
218
166
232
196
152
210
160
232
234
209
122
182
201
215
194
230
198
240
193
208
229
237
203
238
156
178
173
218
186
207
212
201
145
236
197
209
216
175
214
174
228
273
192
195
231
275
223
209
280
191
221
176
156
248
174
209
164
177
161
193
163
164
142
216
178
245
212
232
176
150
156
195
150
243
200
171
248
223
192
270
214
173
216
178
200
187
234
244
160
177
159
180
215
146
204
253
245
214
162
194
141
227
227
197
249
142
157
165
172
164
221
159
129
146
195
212
181
218
226
204
224
208
243
227
211
183
179
224
199
222
151
202
244
271
178
184
188
176
147
224
191
226
262
175
177
242
198
182
228
211
224
151
198
147
161
288
215
168
226
181
205
266
206
226
179
207
191
246
174
218
281
207
133
174
203
186
187
208
216
196
194
188
150
261
218
175
223
239
237
211
214
235
252
242
194
264
233
208
197
217
232
194
229
157
160
239
228
166
241
218
222
268
176
199
220
241
256
243
204
177
165
189
212
228
242
155
150
174
199
178
265
230
259
191
186
239
200
204
171
223
180
198
191
218
149
221
219
176
240
201
190
232
232
198
192
186
186
204
219
158
188
237
267
187
138
227
207
128
203
140
163
251
244
181
173
221
200
185
131
233
186
223
185
196
225
222
159
218
190
219
122
187
218
210
176
141
227
192
219
213
227
255
188
206
191
253
226
184
135
214
203
213
214
201
198
246
201
187
195
83
255
183
223
159
209
181
146
160
204
145
230
125
178
219
228
185
183
239
200
211
277
236
207
170
216
131
225
200
203
176
235
178
205
130
179
182
253
225
172
181
210
211
160
158
246
228
141
201
211
198
245
214
232
241
215
210
233
224
191
186
171
132
226
225
176
182
158
189
176
178
217
173
156
229
218
182
198
208
157
128
200
146
272
219
223
190
234
184
255
223
201
232
239
196
223
187
208
217
202
152
192
147
207
197
190
143
182
247
218
175
205
227
232
200
166
151
172
185
221
166
265
236
257
240
242
255
147
160
156
249
148
203
229
221
224
239
161
192
146
198
179
193
156
169
150
227
237
182
198
235
197
179
210
203
223
156
187
213
233
244
222
193
187
259
153
206
239
189
159
226
175
191
200
220
211
185
250
156
187
227
141
204
234
195
158
162
225
243
174
188
161
231
144
237
171
234
191
178
177
241
142
180
166
205
237
241
252
216
252
159
183
203
147
262
209
193
190
202
157
185
241
166
179
209
236
210
208
252
108
216
185
239
195
206
268
176
182
205
196
197
181
190
168
235
136
178
200
234
218
217
213
226
173
216
253
236
181
136
196
136
134
218
223
251
218
205
218
170
224
195
228
155
239
222
165
193
203
197
220
265
199
224
251
171
190
204
185
143
204
221
266
199
116
192
231
238
232
188
178
214
194
187
125
178
183
184
182
206
154
219
242
205
155
180
211
213
183
265
152
178
167
300
227
130
192
188
189
166
209
157
153
189
185
193
171
203
242
281
206
209
216
209
120
182
183
209
210
243
189
198
215
205
183
112
210
230
196
207
280
147
241
200
189
167
212
178
183
252
150
248
216
189
180
150
215
214
174
173
168
217
189
177
193
169
240
179
182
234
201
162
220
248
181
210
201
256
154
207
180
160
227
223
223
191
192
211
150
167
225
190
222
211
206
211
171
205
185
268
224
218
215
171
246
203
213
222
254
220
187
187
199
179
191
210
295
192
166
204
243
265
171
201
189
169
176
250
216
199
126
223
229
226
175
238
226
225
225
263
222
238
264
257
157
220
198
208
222
204
199
145
143
165
209
194
212
243
165
168
166
231
249
186
158
196
179
225
239
171
170
196
166
206
171
194
189
215
161
246
133
245
266
275
194
196
160
195
255
174
135
187
207
200
192
234
207
161
224
151
194
241
160
180
181
190
246
199
217
134
235
161
241
222
186
163
262
189
191
160
196
215
230
190
263
237
206
267
240
196
194
194
167
287
178
201
177
221
183
219
183
204
163
222
196
225
204
182
191
255
178
151
160
152
216
190
153
191
223
233
169
176
228
197
202
257
211
177
170
264
165
201
187
186
228
241
199
237
212
216
221
226
204
190
235
227
132
221
201
250
174
187
176
226
163
205
161
207
205
197
208
178
194
223
225
229
165
217
200
221
269
136
211
163
255
168
183
221
222
162
193
267
185
157
227
224
182
157
187
204
206
243
212
164
188
190
238
199
148
173
217
238
272
188
200
169
236
196
222
212
183
221
194
183
205
209
203
247
135
191
224
192
203
227
221
185
194
170
221
241
250
240
170
216
263
263
158
216
178
202
222
115
251
215
237
162
177
183
210
195
190
161
193
211
214
128
202
148
252
259
236
189
204
230
193
229
189
150
210
218
198
170
227
213
208
233
197
261
105
237
257
117
201
194
212
215
170
221
243
143
243
188
173
246
219
171
197
208
188
190
193
214
200
136
194
191
212
212
226
188
158
204
203
202
161
212
188
222
117
161
245
241
228
221
188
218
243
199
179
196
192
178
269
246
121
176
265
193
241
194
178
163
215
198
183
193
211
187
187
154
179
242
154
185
199
171
254
215
219
133
187
252
213
251
259
212
220
204
250
197
218
218
162
227
202
188
234
213
162
235
221
255
228
190
214
146
217
234
218
184
205
232
232
242
262
109
171
183
180
193
169
234
139
201
233
250
192
215
222
172
174
228
165
191
188
234
208
192
142
218
187
175
212
277
152
119
164
201
252
237
202
218
177
231
204
261
197
205
218
214
163
211
159
199
162
209
199
221
199
199
246
223
200
249
222
226
169
212
221
200
259
161
170
213
184
198
157
213
204
247
143
224
79
230
172
185
223
174
238
211
217
170
179
163
276
237
125
210
145
206
174
153
215
253
214
180
265
204
158
172
296
183
238
204
234
204
182
192
151
218
246
238
152
223
249
215
205
272
176
205
140
179
183
222
222
243
144
260
167
238
240
199
184
172
221
206
224
224
131
188
190
209
202
193
194
222
184
221
214
222
213
154
210
154
230
224
246
206
201
213
256
191
194
191
141
154
202
191
216
247
208
252
209
263
224
149
212
162
208
223
129
216
177
202
225
236
227
132
224
190
110
175
261
203
181
176
209
241
193
242
253
206
206
211
207
230
210
190
205
184
145
220
144
158
197
171
125
188
165
234
192
231
126
193
250
238
229
240
239
149
203
226
159
162
210
188
172
248
195
210
175
258
218
237
252
236
173
232
188
144
167
211
189
207
219
171
205
157
178
209
216
211
200
238
185
173
159
271
160
198
232
124
222
170
222
219
256
201
170
208
160
182
196
164
216
160
238
217
189
215
231
217
190
196
234
226
243
208
159
221
179
180
213
161
166
231
184
236
166
156
146
206
219
201
231
201
185
228
229
202
191
244
171
178
243
206
134
206
147
165
229
174
221
226
222
241
238
136
182
199
179
178
202
226
188
156
187
134
221
179
232
222
162
234
234
167
194
230
168
209
215
243
208
192
190
206
181
249
236
229
197
242
172
221
160
206
205
184
204
203
240
230
225
215
192
159
195
209
217
207
174
206
190
173
178
175
181
226
212
179
227
212
125
197
186
192
110
204
271
165
176
201
149
209
214
250
143
173
198
188
226
243
185
169
189
234
205
184
176
216
155
185
142
220
240
185
215
258
158
188
192
181
219
177
178
213
190
283
183
166
200
180
190
194
178
257
202
254
197
240
212
234
206
246
226
173
133
208
135
242
193
149
214
248
225
203
262
205
212
222
218
220
171
253
192
190
216
203
254
221
172
212
184
193
191
152
163
113
226
176
196
163
142
176
185
191
182
173
182
253
231
208
213
190
208
212
215
176
203
273
184
162
186
190
268
233
202
211
200
228
198
183
277
206
158
166
224
175
218
219
203
153
143
210
241
157
173
197
165
228
208
149
224
141
221
233
204
212
211
225
246
206
172
201
241
221
158
228
213
195
207
226
212
183
274
167
220
183
201
264
226
260
161
194
193
123
270
211
188
197
205
233
164
189
168
224
220
190
240
215
224
201
261
170
260
192
223
205
216
153
223
199
139
271
199
248
225
253
164
157
192
182
193
146
232
195
159
231
124
191
215
170
198
132
221
232
117
232
214
197
219
212
197
220
226
217
129
244
246
234
186
227
144
223
242
252
197
296
236
181
163
228
220
193
150
222
169
175
159
163
136
237
246
171
235
202
215
216
281
207
204
185
187
208
218
256
180
207
137
190
192
149
265
163
222
131
196
192
252
186
183
225
233
240
250
174
202
229
162
272
254
237
163
180
223
194
212
244
239
201
180
182
141
132
174
209
191
201
180
228
195
209
223
143
176
199
177
181
263
197
240
181
199
158
184
228
192
169
196
194
173
198
188
228
212
171
193
246
164
175
191
246
191
185
156
239
211
277
219
164
184
184
188
229
189
161
189
207
226
208
245
193
180
204
209
252
107
203
225
200
184
184
237
175
205
148
216
221
219
219
192
192
194
201
220
223
157
219
192
175
160
259
203
230
188
246
211
160
190
218
132
235
194
177
187
198
162
193
188
213
247
209
266
202
241
242
202
197
178
200
208
223
189
209
150
226
247
213
246
200
209
218
235
208
205
212
232
183
198
146
203
197
254
224
190
163
131
227
182
229
213
224
171
169
230
102
230
139
219
214
249
241
206
196
204
254
216
201
191
143
222
207
248
185
206
142
215
151
193
154
204
178
205
210
256
258
215
204
209
199
171
259
136
241
235
193
218
238
175
203
161
219
218
221
250
147
205
192
206
229
252
178
204
225
170
167
210
216
203
243
249
194
237
124
185
225
238
124
149
233
176
240
206
254
185
252
245
160
122
174
155
233
192
68
233
217
214
157
197
208
147
226
201
207
238
210
183
170
257
167
240
196
136
166
202
211
236
104
184
156
177
211
176
196
176
270
146
131
113
207
189
154
235
197
204
249
252
177
232
209
223
141
211
196
183
180
216
222
135
192
210
163
235
196
205
225
204
226
221
183
203
202
244
225
203
215
106
219
143
176
164
195
186
202
185
163
255
269
213
182
208
169
162
219
268
224
167
203
190
199
233
197
212
231
132
195
240
220
221
171
223
134
196
217
216
144
177
136
119
172
198
129
265
205
165
249
224
248
185
207
190
150
228
201
190
237
255
154
178
165
224
210
229
262
124
262
155
199
180
239
203
148
238
144
133
245
199
210
245
200
198
206
208
228
189
178
235
140
191
174
239
174
225
226
218
190
184
207
178
205
218
196
235
136
178
158
160
223
246
198
160
190
203
209
243
220
213
200
210
209
235
263
221
255
237
184
185
245
193
142
190
181
155
237
152
189
198
245
192
229
193
140
198
203
197
148
195
166
206
240
177
198
216
172
228
242
159
239
188
149
121
218
162
217
173
197
199
220
231
213
154
212
179
182
139
206
220
181
240
126
252
193
196
234
229
118
213
200
176
182
207
158
238
242
164
191
180
203
206
182
191
193
202
178
184
200
239
214
132
252
241
248
196
175
186
222
178
251
195
188
148
250
232
224
215
168
213
179
161
173
212
214
159
233
197
157
148
161
149
185
213
238
163
228
158
232
213
162
238
220
214
223
137
242
206
236
231
145
131
202
199
228
128
200
176
180
224
188
192
239
190
220
231
149
212
218
170
207
177
166
202
211
210
274
188
273
182
184
191
197
241
200
210
229
200
200
206
246
213
199
218
206
189
188
208
235
165
184
216
196
186
213
162
219
186
212
179
137
185
254
126
219
173
189
208
174
188
292
195
150
180
185
197
262
191
197
195
221
229
193
216
170
165
193
214
188
210
181
169
204
230
211
153
162
222
250
191
233
227
220
166
175
195
193
205
235
151
183
206
203
193
206
229
207
216
203
191
211
220
201
181
159
220
185
174
173
189
224
226
156
230
253
216
273
216
240
174
225
257
178
164
240
253
186
197
196
204
184
169
272
182
188
179
220
181
190
181
236
201
179
183
262
229
224
184
164
243
259
194
231
147
174
230
169
247
163
226
203
217
233
202
219
191
211
237
123
172
171
191
132
255
172
222
127
202
264
190
191
220
144
158
203
198
260
198
183
254
188
226
258
169
234
217
236
152
182
200
181
215
206
214
240
215
213
219
241
247
183
172
239
159
194
211
158
197
278
239
246
173
203
205
202
167
224
223
244
189
208
214
231
223
237
235
261
178
225
225
153
210
191
226
128
152
233
210
201
161
128
259
191
175
186
172
208
186
186
208
186
230
247
164
292
242
203
245
236
167
171
166
224
285
203
199
168
242
204
172
235
218
170
212
185
155
169
153
185
169
175
204
139
214
171
247
200
231
228
194
147
180
187
155
199
194
142
246
206
218
251
192
153
233
204
126
212
187
203
221
246
206
151
277
225
149
147
185
132
185
229
201
215
272
211
198
231
172
196
169
217
237
238
161
222
177
159
226
199
290
251
208
211
220
173
147
229
132
210
152
184
236
201
233
194
202
262
193
199
195
225
206
171
154
207
226
182
228
270
172
182
295
186
253
150
208
161
222
265
191
184
128
234
178
218
210
194
212
229
178
227
258
183
229
214
168
213
215
249
209
234
207
184
194
148
157
214
217
156
210
151
215
233
233
174
165
197
237
282
171
203
200
228
213
211
223
126
195
216
182
194
199
157
234
179
161
190
201
226
232
241
187
218
197
222
279
272
177
196
163
161
156
162
149
196
201
148
197
200
200
192
204
140
204
221
285
275
213
173
243
211
215
197
192
208
198
154
201
108
180
193
181
202
204
188
234
205
205
227
181
193
166
216
228
237
168
191
257
199
225
169
188
249
206
178
231
211
235
183
206
143
204
262
222
190
240
207
276
233
239
178
226
176
211
220
201
157
132
262
175
237
271
270
225
230
235
133
157
209
156
175
171
234
198
260
202
233
201
153
169
201
266
191
172
183
177
185
201
241
225
156
241
173
217
182
175
242
162
200
263
145
159
211
194
182
174
195
216
162
127
198
173
183
214
239
173
268
167
225
223
166
220
237
185
189
222
164
177
210
201
231
206
180
222
226
200
268
212
213
154
231
267
226
191
144
179
136
210
216
176
224
203
195
167
138
174
223
143
147
144
241
165
232
155
118
218
223
217
174
196
162
124
159
158
155
173
180
208
211
216
174
150
201
219
252
177
174
209
151
209
186
239
180
167
203
198
229
178
212
210
207
207
181
196
171
219
205
178
206
128
203
189
234
259
214
233
225
197
233
183
233
222
139
152
242
166
196
189
163
218
225
241
173
159
221
207
220
250
243
208
199
226
197
254
202
238
213
158
217
190
275
203
199
179
229
215
129
217
179
187
185
185
214
278
233
158
165
214
211
278
201
257
169
190
263
161
166
217
240
178
274
236
259
220
197
175
222
130
230
233
231
225
232
178
147
173
219
227
187
255
229
232
242
179
176
217
179
187
187
163
171
151
175
210
181
237
241
197
186
241
206
195
258
195
226
185
210
221
185
177
210
198
190
260
239
190
210
238
219
188
231
214
222
240
167
172
170
190
196
157
161
146
133
234
142
157
169
218
212
168
223
204
180
216
187
212
240
213
219
241
219
165
235
171
210
228
178
226
214
210
231
211
176
182
253
241
172
198
220
168
182
175
198
175
192
204
235
166
183
233
243
207
238
265
240
219
188
214
182
168
190
256
191
190
178
187
266
223
152
213
177
193
163
196
261
178
244
263
148
163
160
205
237
164
194
179
256
221
199
217
123
176
218
124
187
156
181
205
177
238
213
237
232
237
211
245
233
226
232
177
169
224
233
158
235
204
234
173
98
197
213
233
191
206
226
207
222
217
182
199
209
144
177
243
256
185
203
180
161
208
201
202
146
230
191
220
130
218
139
206
200
224
226
170
198
189
146
162
195
193
142
208
216
210
187
222
195
223
175
278
207
196
222
167
152
230
193
229
239
196
170
201
238
235
237
210
261
174
149
249
210
180
207
269
163
158
203
127
247
178
224
166
165
212
168
181
147
174
225
209
202
139
281
238
159
164
237
183
250
205
185
230
189
217
249
106
207
246
219
188
204
187
137
234
120
263
225
191
221
244
183
193
157
196
192
244
175
173
207
230
220
235
232
213
187
233
254
186
205
206
155
179
166
211
209
238
184
213
201
158
250
187
158
148
227
211
218
161
204
226
145
221
175
218
221
191
205
183
166
203
186
236
234
217
120
253
181
183
250
168
268
189
165
200
220
242
228
179
221
255
221
187
192
218
239
147
230
203
215
175
189
192
213
202
228
195
207
202
160
212
166
220
208
198
165
219
177
176
190
175
243
181
225
207
206
154
245
185
172
245
264
250
202
157
168
117
195
199
143
247
225
190
175
179
200
223
176
185
194
173
241
181
175
200
248
203
204
159
199
221
170
229
249
216
206
223
157
208
210
188
250
198
193
147
227
214
226
187
225
233
226
229
219
210
152
191
212
199
206
196
246
225
228
197
235
251
175
169
202
149
246
227
131
254
182
226
259
222
162
246
175
201
181
135
132
200
185
147
233
182
201
253
202
201
157
211
221
232
216
175
234
122
190
203
193
215
152
219
179
240
201
263
233
234
168
174
255
169
182
244
192
256
196
214
161
213
250
227
177
163
216
204
226
103
213
223
237
208
162
166
239
241
216
147
178
250
208
182
234
206
146
295
198
134
238
212
176
224
166
182
240
164
264
200
224
214
194
270
193
221
210
200
248
169
264
207
206
181
182
217
184
198
132
188
192
207
157
140
211
189
202
223
253
213
264
155
211
204
177
221
139
168
238
140
170
226
214
232
192
229
276
207
195
245
195
187
199
178
202
177
228
163
177
177
230
171
259
225
130
209
122
209
149
187
222
203
225
259
163
230
235
201
149
213
206
237
221
214
229
174
220
242
232
117
145
202
228
174
198
216
157
272
174
273
262
205
165
201
217
235
206
246
241
200
206
218
194
202
193
199
117
210
207
203
182
254
210
213
143
196
194
198
211
215
196
208
205
156
188
215
175
196
195
170
183
212
159
254
178
255
170
174
196
301
214
246
185
179
216
199
268
213
174
192
239
155
195
182
247
195
212
173
253
212
230
188
194
181
217
185
206
144
234
194
256
194
171
204
147
196
200
226
199
180
147
191
162
210
223
171
164
139
156
224
142
249
193
213
149
176
201
159
234
273
205
186
162
143
206
275
175
140
213
256
198
268
152
223
152
197
188
240
180
187
186
204
166
208
193
223
226
144
222
206
213
209
175
214
202
172
159
192
226
221
190
175
125
243
156
230
192
190
254
156
146
231
219
159
240
147
153
201
202
171
204
176
238
128
222
150
164
174
180
186
205
200
185
151
214
173
213
151
238
198
213
246
211
266
185
148
211
196
201
217
212
223
224
201
188
222
198
196
165
223
248
240
201
150
227
260
206
278
216
208
177
195
226
206
137
212
218
204
206
244
174
195
229
193
189
256
218
247
173
167
245
197
184
206
260
200
222
190
212
232
209
183
192
177
184
265
211
216
149
210
295
169
180
204
206
174
184
232
175
247
215
252
189
225
168
261
234
220
248
255
158
204
182
226
145
243
201
181
227
233
198
204
175
171
207
197
171
204
151
202
157
187
179
239
181
178
176
176
238
210
142
228
220
227
202
185
228
182
269
198
177
184
163
219
247
202
193
184
174
203
220
228
193
224
205
162
165
248
226
149
167
185
221
247
220
194
189
124
191
193
280
200
223
217
163
136
182
208
194
234
169
223
247
219
199
182
214
191
225
210
221
168
199
246
215
194
181
224
187
134
196
166
182
186
243
204
176
178
215
243
213
212
244
175
201
217
218
224
239
232
171
196
146
217
182
138
114
207
151
225
200
193
181
212
230
212
234
204
219
196
237
213
227
198
238
170
166
239
213
262
203
141
175
203
202
167
170
202
247
197
240
160
192
225
260
158
207
195
179
235
232
160
231
277
182
190
259
220
174
158
185
207
214
148
275
230
216
195
209
138
200
207
149
227
194
193
166
199
210
168
182
195
236
274
202
211
174
171
229
166
201
136
210
241
170
121
209
247
220
215
187
142
224
194
148
237
274
203
249
231
148
180
181
169
207
236
200
170
196
224
185
195
175
237
154
173
183
184
211
115
145
196
222
152
165
190
202
235
166
175
175
139
196
268
151
219
235
202
230
259
133
199
186
200
195
184
155
233
215
186
189
158
272
181
212
229
244
175
163
199
170
226
197
187
195
162
242
229
215
180
253
245
192
160
177
257
140
251
140
198
178
130
160
215
229
271
232
159
228
183
187
189
236
222
190
193
266
269
236
229
197
175
249
248
255
211
248
183
140
236
187
152
145
159
146
229
149
230
216
240
168
192
202
172
232
208
204
235
213
196
102
197
226
132
234
174
181
168
196
181
183
203
178
162
192
172
219
195
183
238
201
258
219
196
189
192
207
195
216
205
194
201
252
207
254
188
224
166
240
203
192
188
204
207
157
174
247
186
155
204
238
223
130
161
142
194
215
150
220
183
189
182
218
185
177
248
211
214
181
163
232
214
175
210
161
243
222
138
231
207
169
178
249
170
245
241
180
152
195
206
198
226
204
261
203
211
221
222
237
238
198
212
167
208
195
183
218
190
190
269
249
202
223
149
221
154
203
209
203
232
212
165
226
195
129
180
186
240
244
196
203
208
187
163
231
268
254
208
204
191
215
167
221
239
251
236
176
170
176
241
215
189
169
209
204
221
213
193
190
253
155
225
232
151
220
173
162
181
215
189
207
212
148
174
215
177
204
196
169
128
221
211
220
220
210
187
162
149
207
188
153
183
176
247
186
178
232
126
196
208
227
183
230
114
199
192
280
198
160
126
180
229
208
182
234
222
202
143
172
214
234
200
233
179
145
244
196
214
179
199
213
189
180
238
110
148
203
155
157
197
265
187
222
190
143
203
178
200
220
193
170
202
161
191
177
193
140
211
238
149
236
205
217
222
247
228
194
240
207
123
241
178
244
162
242
152
228
213
174
160
219
149
168
179
149
240
247
158
242
173
268
193
226
227
201
208
246
127
225
240
166
206
214
253
179
279
195
199
191
148
168
224
172
221
172
210
183
124
231
214
176
266
180
177
263
172
127
168
177
181
210
200
194
233
195
158
243
256
211
228
196
143
220
216
179
173
169
215
193
215
252
223
174
277
202
233
182
194
225
216
185
172
180
209
212
193
252
201
197
240
173
223
243
216
225
226
162
232
222
180
241
209
155
185
223
251
248
168
181
203
100
208
172
200
183
163
187
184
188
174
176
162
178
190
198
195
201
169
214
199
209
223
191
237
150
188
210
190
254
225
211
173
183
156
235
187
121
216
162
258
220
217
167
241
99
191
197
171
183
189
189
158
180
104
259
153
162
172
168
197
191
209
245
230
247
155
138
214
255
204
199
252
176
202
201
229
165
197
190
255
180
193
187
219
201
214
122
180
207
287
162
178
220
190
154
187
134
222
172
203
200
158
241
213
245
231
250
194
188
190
111
215
236
227
199
229
170
177
220
178
260
251
165
212
205
209
204
170
153
194
226
242
210
179
180
161
176
231
203
210
235
251
175
163
209
230
251
222
236
182
100
211
196
190
227
221
165
149
185
226
189
191
234
215
258
114
252
151
186
185
234
183
207
172
183
209
156
229
172
206
203
242
246
210
204
193
260
149
159
265
180
175
186
220
199
176
203
179
157
198
219
197
202
214
166
148
181
204
133
191
244
217
240
114
214
241
174
192
185
207
244
123
162
178
154
199
211
189
209
205
184
199
231
158
209
191
201
213
228
180
239
212
160
225
203
242
259
213
145
162
226
243
195
184
203
175
198
216
228
266
218
233
202
252
210
204
203
225
228
172
164
169
172
213
222
268
139
154
203
148
201
236
222
220
223
188
247
187
234
154
206
260
208
210
147
181
228
160
186
173
230
214
222
162
206
167
228
212
218
223
207
191
191
244
171
182
188
156
140
221
124
215
210
146
260
242
257
201
220
235
177
227
237
145
213
189
232
202
141
167
210
275
200
210
181
179
235
170
193
143
181
229
153
173
203
164
152
161
182
156
177
241
200
220
189
231
147
190
231
221
220
200
191
229
212
238
202
222
130
216
222
159
173
238
190
233
256
226
216
200
144
263
208
181
267
243
174
203
147
197
252
212
185
211
216
224
204
170
210
187
176
209
197
227
164
216
202
217
163
194
203
193
219
226
229
242
163
232
245
153
189
233
176
160
217
159
257
202
152
182
181
178
247
183
218
169
226
220
230
222
220
207
168
198
196
221
221
209
230
220
156
194
216
171
202
187
226
219
192
187
196
245
243
222
189
185
195
215
188
229
238
236
236
249
242
225
255
227
245
227
199
204
181
203
175
171
207
239
227
172
256
182
222
208
210
145
177
142
189
209
218
224
186
245
177
178
187
187
236
204
156
179
226
218
178
236
198
197
235
236
213
193
197
139
214
246
183
204
235
180
165
151
274
220
103
111
211
141
175
227
141
191
169
244
210
179
218
268
189
265
236
156
226
243
260
212
162
242
236
226
217
215
235
231
181
212
203
233
146
123
182
207
248
197
244
198
199
192
147
168
210
226
176
151
150
175
181
275
121
205
212
219
215
226
132
138
222
138
151
229
187
189
194
245
237
170
248
202
204
199
147
215
215
193
181
241
200
263
207
206
218
168
199
247
223
291
173
236
216
210
209
164
172
171
167
189
225
182
272
228
214
219
209
176
107
198
196
139
175
193
156
139
209
245
182
196
258
195
239
220
203
170
131
234
188
198
195
159
198
219
212
276
131
218
203
185
198
145
168
224
214
227
250
171
177
165
230
211
199
236
218
227
251
203
196
177
190
211
191
207
258
230
195
163
201
190
211
208
203
212
175
254
194
140
245
184
199
217
240
231
144
163
207
141
143
263
276
239
140
231
212
181
201
200
202
250
237
203
222
196
220
179
160
200
160
204
189
149
242
180
221
196
234
205
191
193
214
194
195
246
228
189
234
161
162
205
188
223
195
211
224
220
181
251
207
235
202
237
212
198
144
222
195
134
217
172
206
179
213
195
167
183
196
203
182
140
157
221
163
204
174
197
233
129
122
232
188
211
199
193
187
136
178
219
201
276
153
201
221
249
198
231
216
198
260
151
200
181
124
200
195
179
191
191
168
251
219
215
186
210
216
185
204
212
169
182
200
191
178
228
232
162
136
220
199
159
241
243
181
190
173
250
166
188
185
191
160
177
169
177
188
165
156
190
192
149
171
209
222
177
161
131
198
208
225
153
183
225
248
174
261
177
198
246
201
178
139
177
214
162
219
239
219
222
151
248
258
229
228
212
159
164
224
197
189
211
224
215
221
207
179
150
242
72
119
236
178
168
174
107
195
232
132
247
193
205
237
200
205
153
161
149
198
202
229
264
173
187
222
231
215
221
177
255
127
234
199
219
188
168
234
232
197
187
176
157
156
212
158
172
201
242
217
248
232
205
183
187
183
229
247
191
196
255
184
227
237
182
236
167
245
214
182
205
203
169
140
136
169
150
267
176
236
227
189
191
203
217
115
171
257
191
238
216
199
167
211
247
265
167
123
223
185
233
161
217
128
112
157
212
180
114
269
191
180
202
215
183
221
193
228
223
239
200
214
231
213
174
228
197
226
142
227
187
145
204
191
271
138
163
176
215
239
242
199
198
189
154
189
231
181
215
237
194
192
186
180
196
200
143
212
254
154
220
169
210
137
152
178
245
162
223
245
217
229
149
200
186
207
229
258
134
210
240
202
205
236
226
115
213
190
180
272
231
124
211
203
197
228
202
170
181
211
120
227
209
167
237
219
218
183
218
226
191
175
190
224
159
213
248
247
196
223
171
218
257
245
195
191
171
209
194
263
213
178
164
172
158
219
231
180
192
239
157
172
216
218
206
190
200
175
212
189
207
152
240
213
174
181
179
221
182
117
180
205
184
187
188
199
211
163
181
195
182
240
248
201
235
239
231
149
157
217
191
271
126
138
208
196
172
154
126
220
155
158
235
242
194
206
255
220
238
193
197
201
212
228
255
169
216
230
194
183
217
248
239
237
216
232
217
180
188
211
227
201
203
181
214
214
194
237
209
216
168
178
183
222
147
129
202
231
224
171
212
152
223
166
268
225
220
212
251
169
179
199
129
210
227
175
184
194
185
222
235
202
226
198
226
141
194
231
207
200
129
176
182
186
222
159
183
223
222
188
180
233
250
195
150
205
201
241
235
186
276
219
173
230
171
187
177
218
186
238
206
255
177
136
195
216
229
214
217
230
148
195
222
160
256
125
244
228
218
224
228
249
226
226
165
214
230
205
211
216
179
229
145
183
246
214
175
228
191
179
277
185
176
197
209
194
220
173
147
193
153
176
217
216
164
221
205
217
243
231
184
153
106
197
199
261
222
174
246
162
213
177
206
226
243
183
142
221
194
210
233
172
192
144
201
238
174
195
128
237
154
225
190
196
167
245
200
232
167
158
147
258
185
188
215
206
217
158
224
180
224
222
206
204
241
184
192
144
220
210
178
183
205
188
264
228
226
225
144
144
179
199
183
179
218
180
177
192
233
163
253
254
167
148
185
177
176
160
195
202
184
206
193
199
170
157
171
189
201
216
206
179
226
219
180
251
149
170
169
210
259
138
170
187
199
112
191
141
176
203
192
203
219
222
175
200
210
208
182
222
236
205
163
166
219
204
223
216
200
166
167
202
241
222
124
215
151
212
223
221
179
227
188
172
213
159
183
185
221
233
209
237
233
224
220
198
216
183
233
217
164
236
195
200
200
210
227
273
141
195
189
212
204
210
176
175
194
198
201
224
189
184
223
159
260
222
148
204
248
191
218
160
182
193
220
175
121
254
236
222
207
256
228
159
186
203
174
206
172
192
153
253
265
238
161
223
215
221
227
156
203
200
170
194
192
178
130
112
212
185
237
249
174
191
198
205
233
243
199
206
175
217
269
187
179
197
209
167
227
198
168
163
180
209
216
244
214
170
238
233
250
181
180
227
224
157
159
248
273
193
284
165
134
227
208
210
209
244
181
189
211
184
192
220
190
267
213
168
187
233
254
203
175
215
184
175
240
150
188
207
183
208
179
200
196
127
165
239
245
171
221
171
216
199
245
245
238
191
212
152
225
144
242
154
182
265
173
177
246
192
177
185
265
161
194
202
240
174
183
235
203
209
178
216
254
168
242
172
236
172
209
189
206
180
205
248
205
213
225
125
182
238
236
216
248
210
129
178
107
151
251
119
203
217
229
154
189
175
172
151
272
113
213
271
158
215
183
267
202
169
200
247
198
256
170
267
155
221
178
198
213
198
159
255
222
201
195
216
165
256
141
235
230
168
206
203
171
204
186
217
244
195
213
176
209
220
161
163
221
249
214
181
166
164
198
243
240
203
232
129
193
217
220
163
217
168
214
164
209
240
208
164
243
223
211
183
160
241
172
173
150
231
216
255
224
210
195
195
142
268
243
270
235
168
151
190
192
281
153
193
227
247
137
224
155
267
179
199
148
210
184
238
211
186
245
218
201
188
162
149
161
209
94
182
223
193
175
184
217
228
220
253
230
286
148
225
225
202
138
210
231
198
210
186
241
196
181
156
175
205
190
165
198
245
136
213
165
259
150
144
207
183
187
216
236
182
208
150
212
210
134
251
212
140
179
138
222
174
198
200
244
253
179
162
194
179
230
247
210
225
171
178
136
145
158
194
195
186
199
132
183
260
248
124
172
196
179
236
190
215
222
178
202
213
259
239
244
230
165
244
146
165
196
253
181
229
208
130
239
210
232
253
234
218
145
209
158
187
136
194
180
178
220
242
165
219
274
189
217
235
147
195
153
215
248
214
196
131
210
187
240
146
152
166
187
202
175
187
228
202
192
158
234
227
171
244
194
223
195
193
252
145
192
230
199
226
192
246
233
194
210
189
193
205
221
151
187
206
225
189
192
174
238
185
222
161
231
139
204
155
210
187
272
205
225
193
161
253
135
189
200
156
209
234
202
195
188
174
183
196
141
155
197
185
178
214
182
202
250
219
199
258
182
234
150
230
137
150
224
188
140
223
227
247
275
102
264
201
108
207
160
221
177
223
214
249
227
192
228
191
149
188
201
177
262
157
177
138
210
217
156
182
152
194
214
190
228
135
209
225
212
148
171
266
235
190
168
183
254
219
215
257
175
228
206
199
165
188
195
156
179
166
185
165
227
197
116
120
186
194
166
229
209
246
183
152
224
160
188
201
157
257
173
154
206
202
226
271
234
171
177
152
162
191
195
223
168
195
179
163
167
228
204
215
246
188
228
187
221
225
200
177
196
157
195
179
129
190
201
223
186
229
150
203
210
209
156
209
228
132
217
204
191
193
204
153
291
205
237
202
245
222
207
178
218
122
222
219
144
154
200
220
222
172
157
195
202
182
189
253
207
160
172
156
196
190
232
170
201
208
217
183
199
207
176
112
239
210
218
135
163
173
166
244
160
252
149
231
192
171
203
232
168
222
146
215
178
190
244
197
170
116
233
228
167
209
272
264
198
219
185
200
172
146
229
249
199
184
146
224
226
153
207
214
135
162
263
203
204
208
165
259
248
192
231
191
178
249
182
223
257
164
193
186
193
234
184
205
182
252
204
173
171
235
221
212
110
208
205
187
218
237
256
215
240
185
243
209
159
200
248
217
253
243
227
193
140
135
177
216
139
238
170
168
226
258
166
174
236
248
176
138
231
205
250
211
274
191
222
155
217
147
293
220
198
134
228
227
189
227
184
153
249
173
179
139
177
149
193
189
147
170
230
243
204
172
174
168
194
226
222
215
273
241
203
177
216
174
143
222
155
187
170
162
154
194
228
240
192
231
195
195
134
228
178
191
216
230
246
234
211
207
257
229
269
138
236
233
209
168
167
151
187
211
219
206
161
241
148
143
190
197
190
176
162
226
238
234
217
238
199
226
241
196
236
197
235
208
242
195
147
156
176
170
227
209
213
203
187
261
257
118
198
202
190
205
179
218
181
249
259
218
162
200
221
170
259
208
188
208
265
199
238
221
201
145
202
232
215
241
211
141
191
217
195
244
168
172
239
129
164
180
179
173
208
231
282
228
183
222
175
177
245
202
120
182
230
148
241
281
185
195
224
235
208
160
272
124
175
252
227
202
205
232
161
233
233
147
256
175
226
234
184
217
254
265
176
157
190
182
186
251
224
208
196
257
236
253
172
187
255
184
158
216
201
204
275
256
262
211
235
123
180
216
239
220
142
204
172
177
157
217
188
209
219
155
198
170
145
196
233
161
238
190
242
140
218
204
227
232
162
174
171
202
207
184
185
171
193
198
221
208
205
176
194
207
200
227
218
194
174
210
227
201
208
166
184
172
216
202
219
157
225
219
172
235
223
134
234
251
129
166
181
185
236
179
186
225
189
146
213
222
200
163
205
213
245
177
213
246
181
208
197
155
154
190
210
160
200
255
216
206
180
180
253
268
187
219
221
168
178
221
207
196
168
210
199
221
200
212
201
126
255
237
270
194
212
192
151
199
195
187
216
207
217
188
227
223
221
179
259
194
222
228
198
228
265
166
129
167
226
216
235
245
231
189
232
189
209
227
191
149
227
150
228
214
201
197
204
202
196
229
180
257
267
229
200
227
160
191
182
217
226
173
187
187
224
186
255
182
138
277
227
159
190
216
274
199
193
217
172
179
225
172
170
249
116
162
227
209
252
227
213
238
182
195
182
186
232
180
175
217
213
242
291
264
220
217
164
201
208
146
183
167
216
164
192
142
194
195
217
178
194
186
204
191
241
176
212
159
160
196
151
212
234
188
226
235
221
201
165
202
161
181
183
208
224
215
225
187
145
199
233
156
177
265
153
154
154
185
171
240
231
214
236
231
196
149
198
228
203
245
207
250
210
203
166
135
171
197
162
265
227
137
213
247
241
191
150
248
173
243
188
213
171
226
153
231
187
182
224
188
165
183
211
245
223
212
233
228
218
282
224
208
199
185
212
173
139
249
225
189
225
218
241
172
215
156
196
185
177
187
125
198
215
168
214
258
173
222
200
160
185
178
181
259
200
233
241
197
211
240
215
172
246
150
165
196
214
192
192
154
174
210
219
165
206
192
236
209
204
191
211
162
120
139
174
190
203
228
187
198
203
252
151
198
201
221
209
185
152
225
142
217
181
221
246
181
194
201
228
178
250
226
209
211
301
163
201
252
189
204
193
217
175
149
286
224
185
234
221
247
201
254
235
224
253
224
173
193
209
226
222
205
199
205
227
242
197
233
179
177
211
217
112
207
216
170
214
230
181
194
194
163
201
198
169
205
196
216
189
198
193
227
224
219
208
150
169
208
106
197
220
197
215
130
232
226
181
181
208
229
199
193
233
189
197
199
229
193
142
196
183
175
233
203
249
159
234
196
167
216
186
214
206
247
267
212
218
174
212
189
145
185
147
164
171
187
222
185
203
191
173
158
156
181
153
194
184
236
254
247
214
185
172
222
147
195
236
164
184
193
227
122
217
193
189
205
209
240
192
184
163
186
232
217
254
198
218
200
206
150
126
191
204
205
198
197
187
173
225
184
175
125
186
244
243
143
299
170
187
207
258
169
154
194
191
222
229
247
206
244
251
217
86
146
240
193
193
181
195
242
152
162
235
192
136
232
175
131
178
199
204
214
188
217
195
241
215
195
210
204
217
242
150
193
201
219
268
224
205
245
204
236
246
168
297
220
173
184
253
170
212
197
135
235
207
155
229
171
198
175
156
188
161
234
200
187
128
174
212
181
198
143
277
228
223
232
186
193
261
186
198
198
235
223
183
172
239
224
213
207
114
199
213
214
247
196
151
237
190
251
150
200
222
192
183
197
262
210
181
186
238
157
177
149
243
210
153
232
203
225
208
202
203
151
202
189
195
212
204
208
208
304
186
202
198
224
238
228
230
158
208
197
125
185
208
233
261
172
150
247
229
175
232
249
171
231
212
169
198
208
152
209
245
148
243
188
225
186
176
199
212
212
156
269
157
201
250
225
204
207
160
135
124
192
236
261
199
218
245
176
278
176
191
221
165
204
196
235
172
172
217
182
240
177
115
147
228
197
232
196
205
183
196
227
245
194
160
159
211
211
245
192
113
241
148
212
227
186
177
234
258
202
192
182
202
191
248
211
206
208
172
265
238
183
197
250
232
175
205
206
185
210
186
225
209
148
278
211
237
190
130
210
147
165
159
177
175
231
191
205
249
229
160
178
233
211
155
221
192
205
236
171
221
205
215
165
216
263
174
213
227
124
175
191
229
186
216
216
193
176
193
248
154
221
260
220
244
104
224
181
215
222
95
209
232
231
181
163
200
200
202
178
208
176
162
222
216
115
160
274
144
213
230
220
247
195
163
224
224
235
242
193
192
208
191
237
171
172
228
262
233
258
173
186
215
197
181
148
257
208
231
205
165
199
173
228
149
226
160
200
176
210
184
181
227
200
178
173
158
173
112
232
212
238
264
183
241
190
237
142
179
244
215
211
204
164
181
175
132
246
182
162
213
201
187
203
240
168
254
200
221
241
192
236
226
120
203
202
219
167
244
226
163
252
215
160
228
240
195
210
239
207
223
183
184
239
185
197
235
140
222
158
215
230
306
233
158
204
137
142
217
222
174
225
225
185
212
221
220
223
193
202
207
200
189
213
173
222
174
192
205
144
221
212
150
201
185
215
151
204
213
174
228
203
239
185
243
147
223
256
153
135
224
105
203
211
175
152
195
222
245
246
160
195
198
202
199
160
183
215
250
171
189
215
249
236
153
222
247
258
250
213
154
201
201
201
193
208
159
176
188
215
179
220
192
214
198
202
188
231
136
209
260
234
218
161
223
174
228
242
215
168
234
253
165
243
243
152
182
248
208
214
244
171
196
107
156
196
149
192
269
159
182
216
217
195
158
261
144
216
137
236
150
193
242
228
230
158
128
203
163
271
203
228
177
190
157
221
218
217
221
204
189
275
179
167
192
140
224
213
203
209
199
218
165
176
260
241
233
86
223
182
176
252
140
147
170
162
255
220
214
219
224
217
192
192
240
154
211
198
131
141
200
201
172
210
220
223
239
243
206
170
161
183
230
201
261
198
171
194
235
205
237
233
238
203
194
186
196
191
194
254
175
188
229
212
159
181
181
212
227
204
191
131
197
205
244
204
146
145
192
218
215
135
250
214
192
216
234
191
201
221
184
203
216
171
211
175
252
200
214
170
257
191
145
183
212
247
180
183
134
160
128
180
229
196
198
174
236
240
162
218
179
239
169
199
197
170
161
246
240
127
143
167
137
248
186
179
215
217
199
233
183
229
193
184
206
116
180
239
215
252
178
185
132
249
215
187
193
220
204
179
165
218
226
183
209
265
184
147
185
200
211
214
207
214
176
144
220
214
222
188
200
213
127
102
243
222
133
123
256
238
217
222
155
185
150
183
215
220
199
213
128
196
218
160
227
208
180
199
154
172
222
182
157
213
201
148
153
238
194
219
228
192
167
176
217
143
151
195
194
232
142
156
191
169
184
192
245
189
218
202
198
137
176
145
198
235
211
224
208
233
238
170
206
186
211
195
237
218
228
168
172
214
220
238
231
190
192
122
188
172
265
175
273
178
208
239
207
190
208
244
168
173
190
239
242
228
254
207
218
204
218
238
218
192
130
210
214
211
216
248
214
154
167
238
193
216
235
184
206
235
239
152
190
160
207
177
214
256
194
239
204
135
215
199
254
148
165
190
159
210
160
164
201
208
192
201
181
214
192
206
222
145
219
214
190
209
160
197
242
234
205
226
184
204
163
201
240
211
207
226
210
217
168
208
195
157
126
247
237
185
223
218
209
177
242
181
245
256
136
142
141
204
205
203
190
257
205
192
232
217
199
112
203
256
232
247
194
184
172
245
261
161
197
226
199
233
254
198
161
268
212
282
135
247
151
212
227
216
203
219
266
205
159
187
181
243
220
253
183
204
224
233
212
199
179
184
226
207
147
191
199
155
223
231
223
178
245
118
229
213
210
209
232
207
228
251
176
176
222
178
166
204
205
202
190
199
206
167
237
159
196
179
213
248
162
187
229
237
197
159
211
201
252
216
195
225
149
177
162
184
236
207
285
153
176
188
225
254
190
213
157
153
185
240
179
211
143
152
145
207
241
206
181
240
231
190
221
254
189
178
181
165
221
220
252
165
202
169
219
193
235
163
171
166
165
204
177
232
205
196
159
209
180
207
198
178
225
229
252
221
211
286
176
215
218
162
146
199
240
196
188
159
186
217
89
159
216
167
224
181
202
245
168
211
173
207
159
202
205
198
158
209
205
172
187
259
216
169
244
171
133
207
223
218
197
147
127
272
226
173
154
221
229
186
131
170
144
173
240
135
186
206
145
223
120
222
202
200
185
191
158
207
184
222
152
210
170
175
237
196
175
191
234
142
199
228
202
261
233
186
142
231
223
169
200
209
201
171
194
235
201
211
170
169
237
225
205
186
263
138
155
222
123
140
220
140
209
197
162
167
223
229
217
236
193
221
189
188
164
172
196
226
204
244
148
180
205
218
188
176
199
162
161
237
138
140
247
148
196
258
188
220
189
229
221
201
239
211
174
184
216
212
158
186
254
183
205
210
195
197
226
257
185
187
212
169
128
181
204
207
153
250
193
144
174
236
228
107
197
257
179
251
200
207
181
238
194
166
179
213
227
156
178
158
198
139
238
159
234
197
164
211
167
253
189
190
151
220
168
235
157
120
271
262
241
165
186
268
238
206
206
227
207
165
234
188
198
168
163
237
204
137
225
201
195
203
226
182
234
194
162
172
142
261
177
190
197
200
155
191
191
136
187
193
180
207
224
260
199
219
180
202
202
162
171
210
265
222
160
244
235
245
226
213
142
158
164
222
171
195
239
226
190
224
234
207
188
160
235
218
177
151
223
235
196
224
214
215
172
204
197
236
198
249
203
193
224
209
165
238
215
262
176
223
188
266
158
185
183
226
255
231
192
214
183
214
226
96
200
212
215
149
219
211
226
231
250
243
219
131
181
191
169
158
159
254
176
184
205
163
223
189
210
243
224
199
220
146
183
272
192
198
160
250
233
175
206
234
197
221
207
148
184
244
178
152
224
223
200
205
205
197
160
205
196
248
199
176
192
252
184
188
208
195
194
168
213
186
159
178
216
199
107
158
167
200
243
260
202
200
117
196
192
212
127
198
194
236
226
256
148
232
216
218
169
235
233
250
191
216
194
222
184
210
185
204
161
159
170
209
210
223
154
191
207
187
267
198
235
188
219
213
151
176
217
265
210
236
179
205
237
210
135
238
192
227
256
256
179
184
186
207
155
266
215
238
182
224
198
228
211
236
158
195
200
209
155
232
242
190
135
233
158
212
191
250
209
232
231
177
153
198
188
235
227
203
181
238
136
218
241
206
195
220
178
206
223
213
217
286
95
225
252
159
176
230
203
228
146
198
210
268
229
158
230
176
257
287
149
242
176
199
252
192
239
205
215
185
237
174
130
176
193
240
146
263
172
220
204
160
198
160
185
201
274
146
236
265
208
218
192
161
166
223
211
231
166
226
171
242
238
198
229
193
230
129
206
154
158
170
141
203
272
181
189
198
168
218
240
178
142
204
196
171
176
240
222
212
185
213
192
217
235
204
215
131
200
276
188
191
186
242
228
172
184
194
197
254
218
151
193
223
197
170
163
164
212
166
191
149
173
236
131
173
208
185
176
209
192
208
254
226
215
282
211
182
178
230
176
184
244
228
143
226
206
210
162
154
211
169
248
229
191
237
183
174
194
168
177
197
180
234
164
202
218
237
173
201
140
123
226
186
150
176
176
285
167
214
143
180
178
174
206
263
213
238
183
229
165
169
259
220
195
173
185
172
197
143
187
246
223
237
202
160
218
227
221
182
172
198
227
236
180
223
143
211
152
224
196
191
218
200
180
244
177
223
217
248
157
187
200
212
216
229
191
208
175
191
189
144
210
171
150
198
193
209
263
143
199
225
212
203
192
243
227
211
212
199
217
226
194
186
180
168
222
248
165
268
248
283
280
210
223
194
199
148
180
189
207
245
231
243
222
190
259
204
168
231
211
185
152
215
165
205
247
184
225
172
175
183
164
233
170
164
169
227
236
223
200
177
201
148
162
214
183
164
182
172
230
199
190
160
271
133
206
190
256
221
235
269
228
198
145
190
211
144
230
176
225
145
175
177
172
194
253
233
235
187
191
185
159
198
180
211
114
226
185
207
131
191
210
213
172
209
194
212
219
176
174
230
254
221
190
218
153
208
154
248
215
174
243
244
194
220
228
179
196
232
155
156
198
173
213
212
158
197
161
139
205
220
240
158
230
197
151
202
186
280
155
225
225
190
208
242
170
150
165
174
227
190
194
181
226
192
214
206
180
193
199
243
212
243
213
200
201
159
187
174
213
211
179
194
233
239
247
166
113
193
159
230
261
225
219
211
183
259
223
208
211
205
206
209
248
206
183
239
139
202
212
194
220
180
190
183
212
194
221
231
190
181
173
223
147
220
236
202
255
229
232
183
204
197
219
226
153
220
153
223
194
215
213
210
191
189
198
212
236
233
175
226
183
208
181
139
223
157
213
152
194
190
143
120
210
232
187
227
198
209
218
211
198
242
191
165
249
200
212
241
188
128
226
182
209
162
203
171
272
160
241
207
144
188
266
269
205
209
259
233
184
268
133
240
195
211
175
208
128
214
256
202
192
192
184
154
165
143
165
176
153
241
176
187
234
229
180
191
240
173
175
128
211
248
233
175
132
147
200
196
155
132
204
139
181
216
229
197
158
177
211
214
198
171
210
234
164
159
158
196
216
167
221
260
198
204
186
230
187
265
190
180
176
206
273
205
213
121
186
153
190
202
222
158
183
197
176
182
214
209
187
241
225
177
148
246
267
195
246
212
189
210
148
171
221
209
203
184
237
153
199
215
220
163
241
249
252
145
302
176
165
249
162
162
236
156
197
247
185
233
215
151
167
163
189
168
254
253
216
241
214
176
226
194
203
203
202
160
221
164
209
222
192
242
252
195
190
272
215
208
207
163
203
191
253
222
156
211
162
226
173
249
249
178
194
162
182
209
251
197
213
207
226
189
170
214
197
182
223
198
257
241
245
167
225
186
159
154
255
183
137
133
223
159
221
179
272
215
230
168
227
192
234
182
189
217
173
212
134
240
215
221
186
151
117
200
187
144
230
224
91
140
188
157
216
221
190
204
180
187
158
211
265
196
194
245
270
208
246
157
212
231
215
143
245
199
248
211
209
258
204
278
216
180
167
209
54
227
188
208
205
256
157
218
229
182
205
263
225
221
203
231
238
204
196
200
200
220
252
182
168
208
147
199
208
176
203
198
190
188
243
232
170
241
233
251
193
189
193
190
224
201
197
137
159
228
210
206
227
178
268
216
168
233
195
162
211
244
203
209
187
239
191
191
209
181
182
260
180
171
151
196
185
220
170
204
220
216
220
206
195
174
195
233
226
226
188
251
227
206
248
166
192
162
197
236
144
248
232
132
178
195
203
241
156
167
158
206
229
171
251
211
214
202
190
220
194
159
183
234
244
183
228
186
149
145
168
160
230
156
209
194
214
259
177
206
219
245
234
150
131
260
228
162
200
244
190
153
237
200
239
184
265
182
241
187
186
203
190
222
243
188
257
176
236
140
203
214
167
171
191
194
203
183
217
213
159
206
202
147
200
186
215
184
168
210
201
186
201
246
196
176
124
193
176
176
255
206
263
164
218
233
177
196
200
209
179
214
158
265
252
240
115
175
128
240
238
183
156
187
131
185
260
178
181
190
159
224
215
230
150
174
250
196
244
171
180
156
187
220
240
228
178
203
198
236
233
145
198
230
208
168
158
154
247
208
182
245
239
198
177
196
172
166
198
223
170
203
207
213
173
240
186
175
150
225
193
202
225
243
211
160
203
194
143
210
164
238
185
210
251
168
184
175
162
178
178
175
188
161
157
230
206
247
178
189
202
185
192
163
196
189
191
147
163
219
188
163
207
180
203
153
186
117
229
182
226
226
180
181
193
214
137
192
139
189
171
196
183
206
276
191
142
183
206
234
242
276
264
195
228
151
173
172
186
175
188
198
163
209
219
186
140
175
163
240
236
170
233
226
172
217
208
185
203
204
216
243
184
229
234
182
164
189
198
226
202
206
247
197
261
301
208
205
246
174
207
179
187
253
191
180
220
131
171
233
259
221
219
193
233
217
227
232
220
232
164
217
213
196
168
241
236
225
178
193
173
232
256
174
218
236
207
232
177
156
235
229
208
270
152
250
217
204
159
160
251
139
179
203
157
264
152
207
140
148
174
248
213
155
230
251
261
162
172
198
162
259
223
185
167
274
268
216
215
247
214
253
227
142
181
246
107
180
215
177
198
205
208
192
183
171
238
248
196
204
196
204
243
165
162
112
196
174
188
217
232
261
214
206
197
180
257
129
233
225
214
224
226
213
205
187
160
160
223
217
253
229
182
248
229
125
205
188
182
266
221
178
229
221
247
207
219
230
187
205
186
193
221
125
182
224
181
163
224
217
202
226
213
171
196
176
224
209
225
211
196
224
168
209
192
205
212
178
156
161
159
201
187
202
276
186
212
215
257
137
169
206
214
185
171
192
220
226
186
237
180
193
179
225
222
191
186
143
175
273
206
260
220
287
164
214
232
217
197
199
142
150
226
190
214
214
223
201
140
256
192
132
251
271
230
101
122
213
149
209
170
186
204
188
257
221
210
201
165
203
161
202
169
191
207
171
150
248
138
171
210
166
236
152
175
146
128
202
183
148
156
157
247
222
189
208
173
179
141
189
228
176
163
159
191
178
229
231
178
151
259
138
238
169
207
127
177
144
180
195
193
233
181
207
212
191
259
258
216
218
293
198
172
264
188
210
237
218
235
192
209
209
255
172
152
123
210
187
143
236
201
228
201
213
230
197
183
133
240
201
149
150
195
186
228
205
216
231
137
271
178
219
250
216
190
233
244
191
141
258
223
203
219
238
234
185
160
188
247
207
174
196
222
184
243
172
197
198
238
207
211
199
197
149
193
129
181
157
266
226
145
280
217
286
158
208
207
176
141
233
201
192
177
176
149
220
164
159
205
193
236
166
230
163
246
168
260
219
219
224
221
125
237
213
260
202
185
216
189
210
156
224
190
218
199
152
171
259
226
242
231
157
276
269
191
199
167
266
176
209
199
252
203
209
200
191
260
160
213
192
211
221
202
182
205
256
289
231
159
198
264
228
164
173
160
173
191
233
250
220
205
204
244
162
186
175
264
234
216
199
231
286
162
234
186
199
200
235
226
152
157
199
277
236
207
133
233
189
214
197
191
197
189
132
234
176
211
164
262
156
209
233
225
198
184
142
161
139
190
208
256
172
213
202
227
196
242
157
284
231
252
210
181
202
241
177
161
245
274
174
166
209
210
233
179
241
223
150
229
219
227
176
262
212
189
197
203
189
201
197
193
194
229
207
177
180
182
241
214
224
183
194
229
234
245
227
160
222
239
192
188
199
159
169
236
189
181
161
158
218
216
169
201
187
164
163
144
216
188
178
183
221
141
243
177
197
196
212
158
183
149
207
217
188
218
252
202
197
203
244
167
216
243
192
238
182
241
163
196
175
256
168
246
160
221
181
174
193
159
186
228
206
199
184
241
133
178
250
182
199
223
245
212
177
236
243
242
100
217
188
222
188
178
128
200
250
227
192
202
265
211
207
218
236
231
134
233
229
212
169
214
165
202
177
232
238
253
231
211
219
234
253
186
221
160
288
186
213
138
230
181
217
199
230
197
276
176
207
238
208
218
170
198
193
251
179
175
152
205
250
174
171
180
243
190
259
210
214
277
171
195
233
177
191
217
172
189
171
225
173
212
198
227
194
199
215
204
227
188
211
287
262
241
167
216
213
218
177
206
209
182
239
180
213
197
166
244
228
280
245
185
201
209
153
158
274
142
273
202
255
180
210
195
223
208
162
198
283
246
187
178
151
179
188
165
188
170
191
207
199
218
168
193
140
214
220
233
165
200
125
210
167
271
164
175
236
264
193
175
249
169
181
169
150
204
234
231
206
219
216
165
150
213
239
258
192
217
252
238
205
264
226
157
181
199
114
263
249
222
257
144
163
179
180
197
201
201
212
171
217
228
206
216
251
177
206
216
181
151
255
165
227
219
152
201
173
182
258
171
223
188
210
155
192
221
193
190
205
179
209
224
246
198
196
184
161
201
184
138
178
200
201
180
240
193
199
156
135
197
195
174
164
168
193
177
194
123
202
171
220
199
206
191
174
187
212
214
210
214
244
136
245
179
215
174
176
194
163
178
219
227
220
251
228
187
189
197
188
168
180
255
254
193
235
206
221
208
148
203
156
165
189
259
271
175
182
196
233
218
159
200
248
157
217
127
223
166
241
229
190
179
180
169
198
142
172
223
173
174
178
233
173
226
216
152
186
224
176
257
218
231
208
181
232
209
178
197
240
205
192
221
182
157
192
186
188
172
219
232
189
235
215
195
264
218
205
225
231
115
249
187
216
243
214
230
192
189
245
171
192
196
163
209
216
182
237
218
193
149
178
177
183
204
174
187
189
186
255
243
178
179
162
185
184
228
185
167
236
150
190
226
251
213
206
178
207
227
170
200
191
190
217
194
242
184
246
171
232
222
248
238
203
182
113
175
165
224
185
199
187
221
168
186
223
172
195
168
231
242
179
255
183
240
209
202
226
206
199
275
159
242
174
258
189
168
200
239
193
193
200
181
222
262
191
230
133
223
194
193
203
190
182
210
217
187
228
208
204
216
172
209
207
239
152
284
167
149
215
178
185
223
186
218
196
186
179
178
203
244
204
200
219
245
153
217
185
215
115
158
211
234
218
184
225
164
288
241
176
141
213
168
204
164
258
164
215
227
239
187
172
216
198
195
174
219
195
219
163
207
196
185
244
160
220
239
209
189
157
222
165
152
224
264
208
169
213
197
188
194
243
164
202
196
120
265
190
177
220
193
238
157
194
193
218
243
193
217
225
223
191
206
222
211
214
199
196
222
240
194
226
176
249
194
238
184
206
212
210
206
162
234
229
164
169
245
157
273
223
193
194
246
206
253
174
219
166
179
239
201
222
175
260
184
182
193
179
222
153
138
132
261
166
224
185
123
226
152
184
159
136
213
145
205
195
137
210
149
217
168
216
197
221
239
252
194
243
249
160
194
202
223
209
200
241
204
215
245
170
179
223
201
156
188
216
198
210
201
186
212
183
215
202
209
175
210
162
211
189
231
126
171
224
131
187
210
245
199
154
164
201
193
214
173
188
210
208
147
192
189
233
191
211
241
199
252
179
180
149
268
188
190
234
136
221
167
242
213
190
188
161
190
211
246
211
203
203
216
208
185
244
183
206
198
197
174
268
203
184
235
155
209
195
210
251
181
215
143
229
242
222
214
211
259
173
139
291
203
202
193
213
243
182
221
217
227
235
218
205
221
202
230
190
228
231
190
197
220
205
210
168
255
173
223
174
187
192
279
207
176
201
213
172
200
214
202
254
191
237
174
218
169
145
194
238
165
224
239
162
224
215
240
243
197
221
244
221
205
227
225
187
190
238
194
264
198
211
192
168
181
180
183
271
223
220
184
243
146
182
218
204
259
193
167
211
179
158
246
255
194
198
214
233
254
190
251
244
218
184
138
193
197
147
204
216
197
225
202
153
185
211
214
198
254
204
223
233
204
243
176
169
158
178
217
217
192
210
201
240
204
199
221
218
177
167
172
224
144
211
167
208
220
155
180
191
215
224
156
249
214
178
166
202
253
227
189
249
211
151
163
212
181
247
174
205
191
191
181
188
186
191
244
175
231
228
156
149
241
166
225
205
211
219
175
204
223
222
240
202
178
262
155
116
151
221
175
224
249
243
208
207
208
248
183
141
268
202
177
208
226
270
223
126
127
212
165
187
153
251
213
195
219
217
217
227
204
186
185
172
192
229
161
201
230
224
168
237
216
175
258
196
195
198
112
204
202
227
225
234
219
179
244
226
212
170
244
204
197
199
201
232
161
180
290
145
253
283
191
206
185
180
195
203
185
219
205
240
220
187
244
237
237
212
196
268
189
204
237
207
191
249
184
170
200
161
181
203
183
236
186
247
185
203
185
244
206
243
217
184
159
209
210
197
202
181
182
194
147
203
154
165
222
209
279
178
267
177
199
176
139
204
191
217
216
194
157
208
147
155
208
131
249
236
214
225
252
204
218
237
236
186
204
175
198
214
176
187
265
153
155
258
171
236
193
260
200
198
182
100
252
144
213
151
201
129
181
189
235
252
211
159
210
217
213
179
162
159
168
167
191
192
229
247
185
241
204
210
237
186
241
195
185
200
155
224
240
158
244
191
214
183
206
163
212
268
190
178
182
182
159
267
228
215
178
216
208
210
166
254
176
242
151
191
223
212
141
219
202
221
145
148
202
227
209
170
224
200
193
168
178
206
214
229
204
129
171
202
250
256
269
229
247
170
179
207
214
208
215
221
236
174
178
212
217
172
248
188
173
124
147
221
149
221
164
215
176
215
143
201
233
207
156
193
184
226
254
156
138
180
162
229
208
157
199
204
240
209
144
183
191
241
116
183
225
233
154
287
144
231
133
165
164
243
214
178
212
201
184
175
168
134
135
253
199
183
193
172
157
217
199
292
166
217
204
140
181
193
165
177
225
168
216
191
171
195
213
184
187
111
262
184
186
230
188
196
239
201
271
193
220
183
158
239
231
200
196
131
202
173
170
206
205
214
191
142
144
192
181
244
165
216
229
193
255
217
236
241
212
253
173
155
177
221
215
195
213
213
198
187
191
280
230
201
213
203
206
165
262
190
211
180
196
211
204
186
153
166
226
224
184
171
160
246
238
194
182
221
118
209
208
177
239
209
148
242
177
194
206
164
168
221
230
205
222
188
218
225
177
196
210
179
223
263
181
176
222
257
255
235
238
156
209
154
202
240
193
173
191
197
220
191
213
175
235
202
231
227
201
108
246
151
228
212
162
197
240
216
235
209
221
219
235
192
183
254
182
225
227
176
207
262
245
220
205
155
130
189
235
149
171
151
161
229
174
216
197
202
181
210
199
178
221
200
243
169
145
211
161
194
194
158
272
210
190
227
194
171
255
193
218
184
163
118
205
262
194
224
168
173
194
161
238
171
162
213
168
215
242
246
195
222
232
248
136
217
166
236
234
208
152
114
141
192
128
200
201
177
221
254
194
156
243
199
209
255
190
144
219
196
236
171
152
263
154
214
146
122
160
241
176
185
210
216
148
233
209
197
165
162
247
171
200
202
199
147
229
151
268
180
185
152
241
196
217
197
191
167
185
177
150
125
200
123
198
185
125
209
186
221
174
140
187
187
268
191
199
231
213
161
140
204
170
190
214
154
219
159
252
225
221
200
273
203
174
184
209
228
174
179
233
208
184
172
203
163
121
262
254
151
154
236
227
249
224
228
197
207
165
164
153
215
225
179
231
199
193
228
195
156
193
233
235
196
151
165
193
217
186
197
214
208
189
210
201
177
277
162
199
187
199
164
198
183
237
225
187
228
156
130
226
219
168
235
235
189
233
213
195
166
167
149
179
221
164
194
235
118
146
205
245
229
237
160
147
214
214
213
199
214
199
191
187
228
199
174
192
193
235
202
163
157
221
233
177
158
204
190
234
199
241
190
263
192
220
187
224
182
225
241
145
163
201
196
204
200
180
204
209
218
188
172
239
204
298
217
263
217
194
200
160
216
204
215
245
211
202
183
201
238
208
180
209
207
263
187
168
195
277
208
239
217
279
174
139
196
198
175
200
184
144
248
250
180
148
242
193
205
208
207
189
195
184
247
187
187
147
202
212
239
125
185
210
168
245
177
233
223
202
177
208
211
197
180
205
147
187
216
252
214
198
202
133
210
199
201
184
153
178
143
197
228
172
207
179
179
158
253
179
284
210
210
232
185
229
208
196
128
261
181
271
228
196
203
230
148
80
198
182
223
256
194
213
193
208
239
216
257
179
173
214
208
204
140
187
204
238
196
206
174
199
170
266
243
187
158
160
190
171
260
232
219
219
232
233
212
175
205
203
240
200
142
197
249
132
239
179
198
219
211
175
207
237
132
156
223
217
192
238
197
235
184
211
197
253
245
272
184
170
221
177
182
291
199
232
207
173
220
226
158
158
173
149
194
252
217
221
158
215
127
239
209
215
219
175
242
169
180
220
258
226
178
220
212
185
161
215
235
187
237
122
247
187
186
156
184
264
208
206
223
213
194
159
141
246
193
172
214
220
228
167
145
194
209
172
207
211
175
249
166
170
241
243
184
214
180
198
213
183
220
216
212
162
199
156
206
186
198
206
230
208
149
305
175
198
178
228
211
155
159
230
215
161
212
170
233
236
219
178
154
265
184
273
174
168
176
220
193
172
206
177
129
243
259
240
163
217
164
173
198
217
213
221
216
216
175
210
241
205
260
222
176
192
213
246
218
234
209
182
187
215
199
230
216
236
143
218
156
183
128
194
175
197
185
193
187
90
206
238
230
231
192
171
166
169
224
210
181
184
226
199
216
242
264
250
192
197
165
169
239
196
181
247
209
190
244
274
191
206
250
209
246
224
228
190
232
212
244
200
142
138
190
205
161
211
179
184
220
176
201
180
186
232
184
137
149
204
237
226
292
207
180
156
214
216
259
176
249
179
235
222
207
247
209
204
131
162
158
193
219
218
222
198
202
225
217
162
222
160
185
207
141
134
245
236
154
136
221
151
251
222
284
249
184
194
168
199
198
209
224
214
223
226
180
175
199
255
229
189
215
218
193
203
205
232
169
186
234
185
231
217
151
194
208
211
150
179
170
169
196
155
201
201
177
209
194
233
215
205
239
253
234
237
156
196
243
252
188
236
187
198
212
211
240
189
159
182
216
218
221
163
203
256
173
248
223
243
208
211
234
221
203
175
231
248
274
239
181
144
262
219
171
179
207
190
203
194
149
189
214
231
209
191
173
219
224
195
144
144
183
170
195
175
222
178
183
193
197
169
176
248
202
145
237
166
213
133
202
200
241
197
152
257
249
157
249
178
192
242
183
181
230
165
246
126
170
197
176
205
174
226
191
237
199
282
263
208
200
198
163
226
140
240
202
170
192
236
212
225
205
210
184
200
215
234
216
260
215
219
184
246
206
231
150
158
213
187
204
200
188
184
166
206
179
166
152
221
221
180
152
207
214
160
227
192
175
234
144
203
164
217
196
169
212
192
200
216
199
239
242
255
191
168
185
237
157
236
235
219
231
177
233
171
209
230
243
147
198
175
211
215
152
226
203
151
223
187
171
244
140
153
212
181
244
251
240
208
204
97
214
252
207
172
180
209
215
192
262
160
158
218
138
231
224
202
229
241
241
200
196
212
231
210
230
240
194
194
187
240
259
199
196
194
210
224
178
150
162
169
243
161
218
219
186
181
207
161
180
189
192
173
195
221
259
200
150
160
177
190
241
199
253
142
168
158
206
252
182
138
173
204
186
244
204
236
202
207
165
217
181
79
236
187
125
278
213
146
207
220
202
211
224
222
204
190
258
265
208
208
224
198
209
268
226
207
186
144
141
223
228
210
210
160
223
182
247
193
221
208
181
214
178
223
219
226
163
191
199
195
127
228
189
160
245
190
151
272
209
212
244
204
202
223
222
217
154
181
199
258
162
197
247
172
212
229
211
175
170
228
178
192
177
221
199
234
144
185
213
216
217
233
174
270
175
190
167
226
227
191
185
211
142
269
205
150
169
205
225
277
238
211
169
233
274
235
267
154
200
223
206
188
190
182
214
201
216
193
204
159
252
258
272
193
174
194
186
178
152
169
212
235
176
216
174
196
233
204
224
237
158
245
192
132
184
201
220
174
153
199
253
165
204
236
109
183
206
250
186
200
200
220
177
206
182
208
175
190
154
240
234
199
245
189
209
182
282
162
224
184
144
267
233
233
236
198
173
169
219
211
242
171
165
180
229
170
233
238
241
178
199
219
238
234
251
160
172
262
199
246
181
211
242
151
177
218
239
201
170
193
193
160
213
190
221
224
157
231
237
197
225
192
194
208
182
217
216
185
207
192
253
146
205
217
238
219
182
181
195
239
168
203
267
181
261
190
174
216
168
158
222
245
188
133
215
177
213
197
190
230
192
141
158
242
148
187
193
211
166
207
199
195
149
150
187
161
156
203
177
226
195
230
239
227
193
217
157
182
226
203
200
214
264
178
103
155
191
154
179
239
239
197
179
164
193
184
211
215
201
197
240
113
179
165
283
172
178
181
207
168
173
212
148
175
256
197
170
199
135
180
225
191
190
225
175
208
187
220
167
161
207
226
170
152
171
163
265
232
231
194
238
142
245
220
179
219
198
142
158
166
214
195
264
208
281
224
224
191
221
255
228
251
169
224
236
158
204
192
164
203
239
190
215
167
220
166
219
202
147
224
165
157
171
239
231
176
138
267
213
221
148
211
209
170
237
140
169
147
201
252
202
193
172
186
189
258
202
210
145
179
201
208
164
166
154
195
197
223
232
148
220
213
206
192
190
188
224
166
215
162
198
226
210
230
166
107
165
197
190
192
270
187
254
219
214
178
202
179
214
243
208
183
252
180
219
120
146
154
187
191
205
155
147
236
198
204
143
156
164
224
182
193
193
219
137
202
239
249
164
260
220
198
190
212
246
236
218
260
242
179
221
194
149
155
145
191
230
170
207
191
192
161
216
172
180
188
216
143
185
277
241
144
191
136
191
143
217
247
136
212
250
231
199
140
167
220
192
215
174
165
237
182
185
249
144
195
210
220
188
218
232
258
156
145
228
216
203
154
205
197
226
189
174
208
256
293
232
220
187
191
211
209
224
170
163
182
224
206
219
229
201
200
224
190
202
188
188
229
242
188
251
272
190
204
159
192
190
221
194
244
195
166
204
193
218
183
131
215
216
180
203
180
163
182
228
206
139
178
218
211
168
182
132
263
222
219
191
129
217
162
227
193
226
132
177
228
157
153
236
185
210
153
170
224
207
209
212
220
252
190
186
169
184
189
225
193
173
186
231
193
176
205
179
219
107
155
216
210
171
252
164
235
256
207
178
216
208
203
169
231
127
174
210
194
173
177
173
219
274
206
146
194
217
237
254
235
209
256
247
231
217
215
209
202
199
260
188
166
188
238
196
171
215
160
201
226
194
220
188
143
174
157
169
147
204
234
156
178
234
155
269
177
200
238
236
196
202
161
186
222
165
226
261
273
190
190
220
236
169
225
150
229
229
196
232
162
250
235
215
243
146
188
214
181
192
198
236
226
170
138
188
227
205
243
247
212
244
211
188
195
173
195
225
193
196
261
198
198
248
132
184
234
226
185
259
239
253
227
208
248
169
231
250
203
263
162
214
237
204
204
146
210
173
180
145
198
158
208
266
247
150
205
161
191
207
249
143
167
162
210
218
173
212
159
161
230
217
144
238
200
145
173
253
230
174
186
207
155
160
173
176
189
244
212
261
191
259
203
187
153
241
217
257
211
192
127
251
148
168
259
161
163
199
175
201
202
181
259
171
190
227
179
184
210
164
116
195
230
167
202
224
170
190
198
230
228
191
240
214
202
223
223
174
218
200
178
258
176
189
209
172
193
160
201
198
180
199
165
246
198
231
255
210
193
199
225
178
192
233
240
112
162
209
170
244
173
222
268
181
219
224
213
247
151
226
193
242
202
178
190
172
231
239
238
227
168
179
210
215
219
187
257
153
200
194
198
114
252
178
137
187
237
201
170
208
245
152
183
110
161
242
184
159
199
211
237
170
215
222
169
241
180
175
203
222
125
195
237
214
179
189
282
179
283
224
187
193
184
170
235
186
240
164
201
202
205
144
248
223
258
207
171
206
231
209
156
259
185
172
179
170
171
181
142
184
119
179
198
205
230
202
241
232
197
191
198
224
230
274
199
210
178
131
161
197
203
127
260
207
248
229
243
196
173
191
202
177
252
173
206
178
158
238
208
250
217
218
162
147
178
185
168
269
161
160
137
194
204
173
190
204
176
252
198
175
220
215
154
160
212
263
216
288
140
231
216
175
193
230
203
209
209
202
175
139
180
186
212
174
242
162
215
194
246
140
199
195
224
217
276
190
225
196
231
188
209
179
188
263
216
190
189
161
210
205
202
144
249
194
211
225
239
255
214
212
172
200
178
203
177
220
178
163
202
251
186
223
210
209
225
218
168
181
220
157
259
233
157
224
226
256
230
188
172
204
215
210
184
218
258
205
238
285
164
128
150
213
167
188
158
242
225
181
230
223
171
204
254
151
133
202
207
153
179
177
175
185
205
221
219
225
238
214
146
164
154
181
220
216
210
194
201
197
170
141
213
206
178
173
181
208
238
211
145
214
211
174
135
192
171
199
208
142
248
256
199
215
255
149
194
181
181
204
156
231
195
208
140
184
165
241
176
175
191
261
174
244
208
208
166
195
207
226
140
227
211
177
181
208
204
189
185
265
184
221
242
269
246
225
177
189
190
174
146
222
167
173
230
169
249
274
163
220
203
205
180
207
185
179
184
194
175
231
190
226
231
235
201
159
154
172
227
230
201
199
225
244
181
217
194
211
158
210
135
199
209
223
218
196
212
161
194
244
185
165
186
212
202
171
244
242
191
187
187
198
177
181
168
189
205
198
248
258
177
180
183
214
226
260
183
258
193
155
198
144
172
242
209
205
271
194
250
221
170
196
207
222
229
220
204
183
158
140
253
252
214
192
219
188
189
139
211
193
150
146
254
178
131
206
129
120
164
203
195
226
179
143
273
246
237
218
207
205
190
247
198
201
244
196
222
259
232
250
169
209
163
219
151
161
186
194
180
172
215
228
95
182
134
253
259
228
207
202
201
209
148
169
219
191
163
224
263
166
180
202
180
177
200
166
238
210
216
192
246
201
104
261
187
182
165
252
220
237
191
195
192
204
214
176
187
169
182
269
237
169
183
217
176
197
214
228
211
230
247
205
190
157
212
234
196
190
227
243
206
131
143
204
217
138
146
200
173
268
187
239
197
180
139
159
185
205
142
212
163
209
257
168
247
205
217
254
239
224
216
253
164
188
177
244
144
242
197
195
256
251
253
260
206
230
226
218
261
165
179
214
167
203
215
235
187
242
281
191
207
150
202
190
143
189
173
165
216
225
230
225
227
228
170
171
165
267
226
263
127
192
157
201
234
254
186
194
210
247
231
240
122
178
244
162
139
176
151
222
207
225
190
204
238
228
214
237
221
227
174
218
236
231
205
204
240
224
160
209
150
194
197
125
228
245
209
159
229
139
233
191
222
186
170
246
248
215
159
160
190
257
216
174
170
233
243
217
228
239
138
242
200
186
172
250
213
153
198
168
159
227
136
136
224
234
164
290
222
257
214
167
215
199
125
148
284
213
182
216
264
164
217
138
187
179
169
170
123
210
213
201
201
163
166
197
124
186
162
218
186
170
208
204
236
226
187
220
193
180
201
186
186
211
186
175
234
182
239
212
228
204
136
169
153
187
227
219
208
223
242
159
187
145
212
181
265
217
250
202
201
175
192
211
199
201
205
248
209
256
134
214
230
178
230
228
256
248
212
270
193
245
209
206
195
186
168
197
161
142
127
213
182
201
219
194
178
150
251
143
233
232
187
145
195
178
169
145
123
255
102
222
193
198
237
136
283
232
221
227
241
179
158
268
209
166
211
174
217
235
274
186
201
224
230
245
188
168
153
208
212
190
197
195
208
216
155
200
217
169
223
222
232
156
166
201
123
166
210
170
193
221
200
224
143
264
178
142
259
147
169
148
228
201
171
194
231
186
202
133
188
181
143
238
214
181
204
256
175
162
268
120
166
176
201
206
260
127
163
204
230
160
240
265
215
173
212
195
182
193
250
231
181
123
260
232
255
211
240
222
226
198
247
174
191
189
179
221
171
212
208
226
137
199
234
177
223
155
194
215
146
212
193
147
182
149
190
247
250
225
233
166
230
284
85
184
257
262
252
192
215
215
172
124
162
221
178
185
214
175
200
243
220
227
221
197
211
180
251
180
260
136
251
132
219
212
220
206
194
202
214
260
245
158
192
232
248
201
190
217
231
201
234
192
181
211
221
221
187
177
204
118
206
203
135
213
245
218
200
188
238
113
222
207
137
242
150
201
214
201
216
186
234
222
170
237
192
227
239
194
236
248
196
233
189
206
205
237
220
173
146
265
263
211
204
250
200
159
173
144
199
185
188
183
220
176
186
190
178
152
167
171
165
155
182
167
229
144
194
194
221
189
185
218
196
235
187
138
196
173
142
245
183
286
197
212
212
264
156
208
218
244
232
248
221
160
187
208
234
173
214
200
218
227
190
239
139
255
250
193
165
209
220
237
215
183
238
189
163
185
158
139
226
191
153
159
217
141
206
134
166
213
213
217
198
207
234
174
214
185
180
217
245
241
196
221
225
271
199
185
239
161
173
182
222
206
204
210
233
225
181
239
192
233
170
199
180
183
156
192
225
203
217
234
209
163
218
201
242
171
158
127
199
213
188
231
210
221
198
148
220
157
235
195
193
203
193
202
223
164
219
207
137
216
190
238
246
188
211
209
178
233
216
210
173
182
182
223
201
233
185
229
142
119
247
189
194
212
193
206
195
229
177
199
182
221
183
190
218
209
175
231
211
187
159
205
178
221
141
192
185
134
241
154
169
216
200
171
178
126
213
182
196
154
194
210
184
160
217
159
132
196
202
243
179
207
237
210
110
214
218
189
203
220
176
152
159
204
229
208
163
219
210
167
225
250
201
203
160
171
188
233
228
143
265
216
150
195
181
219
217
217
138
232
209
173
206
176
211
133
194
224
193
217
153
247
188
257
235
215
202
200
134
208
199
221
164
205
215
195
257
222
260
231
246
175
224
259
262
126
195
201
120
215
186
133
209
228
195
232
198
249
234
229
295
212
201
171
151
227
243
134
106
219
245
185
205
210
170
138
193
228
210
247
148
190
223
197
207
192
209
172
197
195
194
230
195
183
216
199
181
183
183
241
202
215
246
233
227
161
221
217
144
185
130
214
212
184
183
204
180
204
199
241
226
210
200
218
219
179
201
195
178
194
231
199
227
160
188
208
139
215
200
275
249
191
199
221
176
165
232
159
184
224
198
151
199
213
150
224
240
192
253
199
187
179
196
206
211
170
147
169
174
208
189
189
176
306
192
147
239
231
192
198
193
210
227
172
242
209
179
188
273
191
230
207
175
173
154
177
222
239
211
206
208
156
150
238
225
174
163
204
156
187
209
233
179
202
219
154
216
181
221
174
183
211
149
230
199
117
169
175
213
198
218
163
200
290
221
202
164
148
198
165
227
187
183
253
214
208
209
184
198
233
234
242
186
252
185
244
215
162
241
190
258
182
198
217
145
216
179
237
193
198
139
239
146
114
125
163
189
235
183
200
222
241
188
236
226
114
208
225
235
240
238
155
176
203
187
215
230
174
220
145
179
185
205
184
144
205
228
259
166
197
208
237
219
123
273
185
228
208
122
233
236
196
209
194
179
228
212
207
250
238
104
257
206
219
207
204
239
221
185
206
249
215
261
197
204
206
189
245
205
194
163
170
142
206
189
220
221
247
184
219
208
155
204
218
238
194
209
235
154
260
223
171
188
222
205
233
220
199
257
200
200
219
172
226
167
245
205
251
203
245
178
223
189
130
252
201
172
197
133
251
235
205
118
206
214
237
244
153
175
188
222
210
275
166
192
217
210
212
171
248
169
219
140
234
188
241
237
223
255
207
253
174
233
179
177
196
152
182
245
160
168
207
252
252
223
209
193
217
240
200
241
209
207
237
215
189
165
211
250
209
120
207
216
239
147
207
149
206
234
237
225
223
209
185
201
237
209
241
226
153
169
282
183
102
217
142
155
167
180
199
242
208
163
239
258
181
147
209
204
284
171
246
242
225
187
182
221
195
184
171
171
163
209
180
143
175
186
170
223
160
160
209
208
209
199
200
195
180
208
164
198
184
268
213
182
232
224
228
223
137
126
144
235
168
167
227
151
167
147
210
266
155
226
185
223
201
200
155
233
233
249
182
249
229
232
235
199
246
206
221
177
209
162
190
200
184
212
170
249
170
246
197
216
224
217
229
161
231
188
205
169
177
248
176
255
161
175
224
228
180
245
143
247
153
194
245
164
235
233
214
173
244
191
182
216
184
198
164
165
217
197
169
202
178
184
238
195
262
246
183
191
124
264
192
217
208
197
158
249
229
235
256
223
201
183
171
250
226
183
216
212
187
157
207
180
216
168
300
204
197
214
182
234
162
271
162
188
232
193
157
190
211
187
206
181
187
140
257
222
212
219
255
223
204
211
222
133
210
200
202
230
182
234
211
185
224
164
189
192
200
214
206
196
183
156
208
222
252
222
221
114
182
216
253
201
180
230
219
207
222
180
209
206
255
130
210
194
213
219
221
198
103
267
244
202
236
196
212
207
200
186
165
213
196
249
123
217
173
222
210
219
240
194
176
193
193
177
198
194
273
195
217
168
235
161
180
211
185
229
145
231
182
146
217
169
184
166
169
171
176
217
216
160
223
196
235
134
204
238
180
234
205
195
194
210
152
193
218
230
179
130
162
223
265
176
235
199
194
149
189
186
204
146
214
215
213
163
205
201
228
212
150
247
202
176
175
224
255
168
182
157
169
209
172
246
160
158
225
207
257
211
230
127
199
187
175
203
231
219
193
135
221
233
233
223
172
244
185
185
154
140
191
224
179
249
210
200
154
112
156
273
160
194
157
148
197
151
212
238
180
202
208
167
267
242
190
257
239
206
176
194
234
164
198
243
221
240
159
226
212
263
196
217
105
195
253
193
163
138
215
207
263
192
195
234
244
205
229
233
186
236
193
186
200
189
180
162
214
196
173
207
164
220
275
219
214
162
218
145
188
240
193
200
216
168
213
216
195
192
273
226
201
145
166
241
187
228
162
159
124
285
233
217
229
259
191
179
195
228
192
172
224
108
162
136
172
177
257
192
232
213
192
246
223
244
190
202
158
136
188
170
154
259
159
173
82
109
196
240
211
226
125
131
214
118
236
189
167
189
214
160
225
100
215
220
120
193
173
191
174
239
187
212
245
226
229
188
235
206
190
153
195
230
168
186
199
163
210
191
200
232
211
207
141
179
203
257
198
237
231
203
160
100
176
228
205
191
272
148
194
128
191
253
232
171
167
163
169
203
237
189
243
182
209
231
237
216
238
216
267
219
175
217
145
211
263
220
225
224
199
208
168
229
198
128
182
198
188
202
238
190
236
229
262
158
171
187
239
168
210
184
151
195
162
161
186
173
160
209
179
134
177
169
262
146
187
195
149
225
160
229
232
173
169
205
177
192
179
218
187
213
222
210
163
211
176
196
205
205
210
194
237
196
215
220
229
290
262
173
138
198
226
207
182
150
204
206
225
193
210
154
217
190
213
233
191
185
143
233
140
192
169
208
161
177
202
233
217
224
196
246
188
198
237
201
231
157
233
230
188
229
162
275
251
218
239
198
155
227
179
183
192
238
204
155
207
207
266
212
160
208
202
165
205
233
179
208
223
210
217
146
199
177
245
210
172
242
201
172
245
215
213
207
220
207
174
202
220
232
208
170
216
165
109
204
232
195
242
255
220
197
250
187
265
223
239
163
248
223
169
189
245
221
233
186
217
119
160
192
237
261
206
188
221
203
204
231
228
221
240
223
237
198
194
180
184
103
197
222
156
200
198
205
215
201
235
189
242
231
161
205
221
238
212
171
159
179
243
201
222
178
224
212
184
212
199
219
234
232
205
147
208
254
201
221
240
207
213
216
177
153
227
223
170
227
162
169
142
200
185
243
186
216
194
240
198
205
214
240
202
197
220
139
167
157
187
221
148
179
152
219
197
182
159
226
250
223
174
207
250
177
211
201
163
213
198
166
190
240
189
151
185
171
254
166
159
185
235
211
204
241
243
204
196
191
224
247
182
251
203
141
164
244
162
240
231
179
170
256
182
240
202
197
190
204
210
209
220
190
196
175
195
236
239
244
244
195
227
189
272
114
211
194
224
208
151
214
222
232
223
160
96
206
210
208
230
201
188
172
126
282
222
204
159
242
198
233
204
171
211
212
221
153
159
210
207
235
182
238
188
112
223
231
148
176
148
217
165
257
212
200
225
219
166
238
189
209
234
253
183
189
209
157
172
211
196
212
200
212
199
227
188
216
188
132
176
124
179
225
271
172
216
214
210
198
168
177
170
191
226
127
208
155
201
193
120
172
274
205
205
200
159
161
156
244
199
217
189
264
209
168
143
218
275
177
217
237
195
197
224
177
194
233
237
175
165
199
216
259
230
239
171
199
235
248
153
207
233
221
206
192
199
260
242
182
202
204
240
253
251
204
181
228
170
179
212
208
208
271
214
235
176
199
242
244
186
190
236
200
175
180
211
252
217
213
199
226
215
187
184
228
214
228
192
192
181
219
208
190
145
235
233
245
242
198
158
127
242
180
158
174
195
180
206
197
203
181
239
234
129
183
206
177
94
205
163
236
170
239
222
212
173
212
232
256
181
146
207
247
131
210
184
172
207
173
201
265
186
214
253
167
185
194
253
257
179
206
190
169
231
143
225
126
275
116
173
185
232
224
231
157
215
220
202
223
218
139
183
162
191
187
169
218
155
209
161
197
193
216
232
161
166
205
165
254
276
193
220
157
186
201
181
231
191
240
202
238
217
202
191
158
242
159
161
248
215
205
187
174
229
204
187
204
130
246
219
192
211
187
208
218
196
243
236
134
195
208
228
196
256
204
148
242
217
215
164
235
210
224
159
168
207
248
212
187
245
214
181
189
207
188
92
179
193
173
150
171
189
198
248
207
254
200
221
220
173
180
199
191
182
163
214
161
229
208
201
191
210
147
224
223
224
190
148
156
242
280
236
201
173
179
224
207
172
195
167
179
189
263
208
240
241
207
201
245
187
214
179
237
217
169
154
245
211
243
200
146
177
147
218
191
182
253
257
181
189
150
244
257
170
256
247
144
239
202
213
201
253
174
238
224
229
193
233
197
227
227
148
241
194
168
188
170
195
185
169
211
272
179
160
227
238
201
239
230
151
120
272
213
261
107
194
238
170
141
172
187
178
204
185
197
268
181
263
212
156
200
181
220
181
193
210
236
184
184
156
237
215
219
204
266
227
224
121
236
220
226
215
214
177
186
197
232
218
227
172
173
235
216
228
199
217
156
218
250
252
105
192
193
188
179
225
236
208
225
200
234
179
239
133
133
217
193
249
150
189
178
143
200
215
160
168
217
218
174
221
197
228
191
194
209
173
153
216
269
204
154
156
234
227
173
164
187
184
177
142
253
190
214
208
218
177
217
241
191
242
180
211
191
162
196
185
170
166
140
131
214
260
193
276
168
215
195
162
212
216
220
199
166
165
173
214
182
247
178
200
208
221
243
151
230
156
190
182
173
179
245
226
215
155
184
191
177
205
167
192
228
166
157
199
179
182
146
216
193
206
148
178
150
196
189
226
158
194
153
195
234
164
201
194
141
167
178
198
242
201
191
116
167
164
205
187
148
214
200
248
232
235
186
209
163
286
233
222
246
155
235
191
172
204
256
173
261
193
162
74
249
211
174
244
196
266
212
208
247
253
163
118
175
217
221
207
199
175
232
256
217
193
252
200
202
221
194
196
189
180
221
217
160
240
205
188
170
151
197
210
274
174
217
210
174
269
224
221
235
206
220
166
139
156
192
222
183
206
234
223
242
256
216
214
215
167
242
212
231
179
243
217
204
230
183
233
208
183
172
239
194
244
222
274
215
226
247
213
213
196
190
235
230
203
155
194
177
151
180
157
206
224
219
258
161
195
265
133
207
171
205
258
216
118
243
165
184
171
207
256
161
222
187
257
161
178
142
193
134
216
225
217
159
229
151
198
252
180
221
234
182
217
185
206
235
186
178
261
267
223
191
185
216
161
177
218
184
204
199
202
207
213
237
171
209
218
239
268
188
164
217
207
201
179
172
209
161
243
227
193
246
216
207
221
169
279
179
178
207
216
174
221
186
186
153
120
169
241
211
202
150
155
208
164
180
119
225
219
260
214
217
219
235
245
162
194
115
242
198
170
274
242
184
198
167
192
223
186
149
149
186
220
206
165
170
172
230
172
248
191
164
242
252
218
230
214
207
202
136
176
220
225
270
272
237
142
146
222
188
183
155
190
161
218
216
165
244
226
271
219
243
287
164
166
227
219
195
215
226
148
256
170
163
153
182
242
199
153
196
170
160
168
302
230
154
152
207
192
181
185
207
262
178
153
155
213
248
188
247
133
203
244
179
184
212
207
233
145
203
176
197
264
208
187
196
180
195
217
198
203
184
219
204
216
240
185
261
205
150
256
185
193
226
142
172
142
158
230
210
206
175
200
179
186
237
197
192
192
229
232
243
200
182
214
199
175
184
189
123
239
199
221
179
186
208
194
175
239
248
177
193
247
200
190
168
163
257
179
194
260
196
196
194
190
117
159
216
221
219
246
150
164
221
246
200
164
194
145
221
220
170
186
218
110
230
231
250
220
193
170
239
237
173
211
213
186
129
185
207
175
252
190
214
263
213
166
156
196
209
178
208
209
217
200
233
153
244
226
155
217
204
140
225
143
189
208
171
208
170
196
214
194
152
183
167
178
252
178
197
193
172
131
205
253
186
242
202
205
214
202
175
187
195
249
148
219
224
199
161
200
175
185
231
154
193
144
157
199
182
241
200
240
193
171
182
251
244
232
209
167
167
215
247
135
189
213
228
221
232
231
169
209
139
178
176
206
213
164
167
137
144
247
242
206
118
214
205
131
146
189
205
155
249
212
166
149
207
256
224
195
242
220
151
268
203
204
207
208
218
193
223
224
223
153
194
208
198
263
192
260
199
176
245
224
191
202
155
216
216
216
214
184
202
170
227
229
213
173
233
219
215
189
207
161
156
224
148
173
206
283
219
225
187
152
242
232
262
177
261
244
208
261
179
227
204
184
189
190
244
188
198
193
252
153
179
217
178
129
187
204
148
223
233
182
213
202
197
193
200
210
184
195
127
207
183
180
210
196
182
192
167
147
196
169
227
195
172
218
212
224
140
183
191
234
232
169
175
221
214
151
222
220
199
161
197
171
200
163
188
156
155
185
247
235
157
186
241
167
237
190
212
211
181
220
177
269
198
226
152
232
160
249
167
196
217
213
184
154
226
226
193
151
227
184
144
172
262
209
219
203
180
200
196
199
216
208
129
223
185
199
174
192
207
212
189
175
203
227
207
230
208
215
177
142
210
243
178
220
186
207
160
250
243
205
203
264
216
216
225
192
193
201
176
266
161
263
194
239
151
189
194
152
202
144
213
249
154
222
242
205
169
204
227
177
193
183
178
168
205
177
232
202
216
243
180
237
240
253
158
241
182
218
150
178
189
165
179
213
226
228
139
176
184
203
154
152
203
191
236
194
155
252
206
244
226
160
122
169
226
186
221
172
185
204
291
235
144
149
194
235
194
196
184
208
121
206
203
219
172
189
208
166
173
210
155
235
265
230
185
209
164
261
201
211
180
208
202
216
165
204
205
174
199
146
217
232
187
177
170
153
230
176
199
122
201
218
213
136
182
164
213
145
230
264
217
210
155
185
244
235
208
194
205
225
222
255
219
181
175
230
261
215
172
174
173
229
208
204
184
193
169
198
165
212
195
137
219
187
278
225
221
183
224
212
166
144
148
229
207
215
229
135
220
220
218
210
228
159
192
167
216
221
198
147
230
201
159
180
234
182
231
218
268
177
189
229
212
183
248
219
189
162
193
214
215
225
230
210
136
200
129
238
226
167
218
185
225
199
244
208
182
230
167
184
195
237
244
220
219
209
204
162
165
195
257
172
166
192
176
225
181
235
212
141
227
255
189
214
222
256
234
203
133
194
198
187
222
255
176
204
193
187
140
126
244
190
240
185
235
197
183
162
147
208
223
226
225
169
232
181
223
161
197
144
170
170
219
157
201
177
244
240
255
223
194
179
231
211
201
253
213
178
208
158
199
224
214
192
263
217
137
190
271
235
156
191
176
217
134
206
258
173
200
163
215
217
208
149
167
195
218
179
188
222
150
195
275
181
173
138
169
141
166
190
232
187
225
147
188
229
280
209
174
208
216
187
180
204
254
184
139
219
252
213
160
209
245
233
155
213
194
227
247
189
192
215
235
152
187
217
203
183
168
208
261
182
230
177
166
206
235
227
191
169
203
147
180
211
265
224
200
230
235
160
198
180
189
219
155
228
220
239
113
193
247
243
209
196
225
213
180
194
184
142
193
170
227
191
210
116
242
187
178
222
260
211
243
218
187
140
195
178
168
286
217
141
223
203
164
237
238
212
255
263
190
207
208
230
211
214
192
227
160
245
233
239
248
221
215
224
204
236
188
266
195
153
220
195
186
165
184
215
213
155
215
170
162
228
237
196
174
231
219
218
221
203
164
233
219
147
217
148
203
163
215
235
135
231
242
215
227
219
123
179
152
228
175
187
248
207
129
197
238
234
155
248
202
218
193
172
241
248
171
209
174
255
188
228
167
212
147
235
158
231
203
238
219
208
258
186
224
223
216
140
204
137
208
168
237
170
197
176
185
286
207
209
186
256
194
133
210
246
199
119
159
191
177
146
198
231
205
195
192
218
191
202
260
229
158
209
206
205
245
171
165
185
173
181
185
149
148
218
218
214
154
195
180
200
198
206
220
176
189
214
202
227
179
172
225
204
232
158
210
180
269
165
206
193
222
190
200
264
177
213
247
227
157
195
152
162
230
186
121
193
190
167
230
218
180
183
203
236
202
199
254
183
226
159
186
263
260
146
190
195
206
210
219
201
194
164
180
208
195
164
196
240
241
183
185
183
183
187
191
261
215
190
173
158
215
204
197
249
192
205
220
212
222
229
210
197
161
258
154
182
193
226
210
198
143
191
253
144
242
158
197
220
197
232
222
211
200
177
170
178
178
232
200
233
129
190
202
145
243
229
156
190
173
227
217
239
260
216
218
177
224
239
274
213
233
199
131
216
224
178
175
179
200
249
188
190
206
214
227
246
233
190
226
167
188
201
211
203
190
242
164
186
171
170
164
209
182
237
127
186
211
176
214
159
235
198
215
230
177
212
257
202
152
217
248
191
194
157
213
111
152
186
143
185
245
179
218
171
177
266
166
216
186
203
220
187
253
203
208
211
224
193
227
215
189
256
172
221
219
230
162
198
274
188
148
158
218
155
197
210
181
210
224
167
208
155
264
240
229
159
219
252
142
163
199
138
218
179
208
173
201
172
161
90
158
146
276
184
262
197
251
250
203
174
220
143
211
210
155
242
210
263
217
171
177
192
222
182
196
231
219
175
186
214
194
200
175
182
222
240
162
173
219
226
253
245
131
186
186
168
191
218
199
204
240
160
184
232
248
228
169
218
253
198
136
211
236
142
96
252
185
165
203
176
203
224
199
182
191
195
188
271
222
223
202
208
157
104
137
223
186
275
184
129
198
190
239
165
138
242
224
192
225
245
163
178
169
220
256
216
176
175
233
174
152
226
194
182
167
264
199
193
192
228
202
238
203
170
203
232
128
143
238
249
153
244
160
144
199
208
205
170
228
240
226
167
187
166
149
184
196
171
292
220
256
170
182
160
180
244
170
215
182
221
203
227
222
212
169
204
204
191
158
228
205
175
209
177
191
164
210
168
211
182
187
231
207
205
223
163
200
199
206
187
198
179
223
219
159
186
184
164
187
228
223
226
195
184
215
202
131
124
205
135
215
162
203
239
225
127
217
187
186
184
212
183
116
130
109
183
185
264
176
196
198
204
206
230
222
211
229
220
163
156
212
174
195
178
122
191
218
203
186
202
206
234
201
220
215
178
177
223
108
181
242
183
228
198
227
153
181
222
189
198
234
258
187
267
250
146
202
161
234
181
214
199
198
167
220
201
173
242
190
108
258
200
173
146
183
206
154
234
246
203
218
194
196
201
187
246
183
185
152
170
235
184
200
201
206
210
238
184
237
144
190
198
179
180
238
210
288
213
242
137
238
120
153
206
224
214
251
156
216
162
206
172
135
138
232
193
191
189
140
174
195
171
205
266
122
221
136
195
197
180
149
153
213
214
210
184
242
196
266
209
125
150
217
284
188
178
168
192
212
215
159
193
200
148
178
203
180
240
133
210
163
192
223
228
180
231
177
225
220
210
244
196
210
244
193
227
190
184
204
255
187
194
164
234
249
192
201
218
146
169
191
242
258
228
239
176
208
192
279
140
178
185
202
204
199
200
182
197
242
186
240
186
226
210
192
231
222
178
177
170
151
228
176
200
154
235
226
220
196
214
158
150
273
206
229
261
183
142
208
235
197
105
154
199
217
265
256
178
214
198
145
188
199
168
175
220
189
220
225
138
186
170
213
185
231
164
166
220
217
204
143
164
222
180
245
218
200
188
197
176
171
202
257
192
179
208
182
178
178
122
254
162
189
186
196
257
190
216
232
216
172
199
205
180
227
226
230
127
147
218
176
181
192
228
219
152
194
202
208
210
219
203
200
219
160
234
143
252
187
238
200
193
201
236
154
141
203
181
172
214
185
227
260
230
232
238
201
167
223
193
192
247
235
213
231
193
168
172
261
216
211
212
234
171
220
188
215
227
204
252
223
201
259
153
201
238
235
196
190
158
240
156
227
203
174
197
159
224
220
165
200
200
148
237
251
242
194
241
203
213
227
216
236
225
188
210
194
220
187
178
218
202
186
193
125
206
183
215
172
229
273
203
197
222
226
244
158
215
185
196
157
166
201
241
150
199
189
245
228
215
230
225
195
200
171
210
183
203
184
193
184
202
160
196
262
207
197
246
204
276
209
157
130
205
226
135
164
193
164
240
218
216
200
261
191
212
225
152
185
189
222
152
194
155
156
179
174
216
167
157
190
237
203
182
225
223
233
197
237
194
199
222
219
183
207
240
159
160
171
229
161
222
171
152
137
216
238
178
212
268
159
253
156
168
210
266
201
192
200
233
171
180
171
221
175
247
236
236
182
226
140
192
184
219
153
155
164
227
211
202
226
223
167
141
157
262
151
149
189
202
225
200
218
226
210
222
182
205
193
190
238
185
261
225
217
178
220
257
189
156
235
234
238
190
204
205
253
218
224
196
179
185
170
251
204
143
227
129
265
185
223
195
132
269
175
229
158
195
183
171
192
246
180
199
212
204
183
219
224
204
188
146
187
212
216
229
157
230
222
150
165
207
195
159
172
191
174
230
203
233
208
224
221
143
189
210
222
196
180
190
222
183
245
239
196
139
238
226
218
166
171
223
222
168
217
128
177
161
171
233
225
154
162
234
213
249
203
230
243
131
233
259
193
184
216
239
197
111
173
240
204
231
215
201
229
186
117
228
180
213
174
157
222
233
257
177
200
130
251
166
221
175
237
179
214
179
208
225
268
220
184
168
128
220
197
190
203
204
259
189
226
191
210
250
202
245
235
233
233
230
242
206
176
229
199
186
163
186
181
258
198
169
233
226
199
238
186
202
198
219
200
170
234
240
165
196
182
275
206
247
218
148
200
221
206
216
239
259
164
193
230
185
245
196
204
260
249
223
184
266
214
219
125
218
189
190
204
163
205
197
174
255
235
255
198
165
234
222
235
169
242
273
189
178
174
261
168
264
182
170
185
263
202
208
222
142
194
203
248
233
177
167
226
218
168
125
182
178
263
202
220
192
238
238
225
154
205
185
273
158
210
186
222
212
180
133
230
199
250
185
214
236
232
196
224
182
203
232
146
200
251
250
136
104
165
179
250
177
219
234
204
271
221
198
153
194
206
240
195
189
186
250
220
172
213
207
163
202
262
189
253
206
211
203
233
163
188
233
157
208
224
259
208
158
196
213
238
203
184
184
172
220
209
217
152
222
227
197
213
228
243
221
245
160
226
242
180
173
213
228
182
176
207
145
187
259
151
167
159
173
226
233
225
105
203
219
194
172
163
195
191
253
200
247
190
206
193
255
179
169
256
222
196
189
247
194
172
150
168
177
150
201
259
165
175
204
206
160
164
191
236
214
205
210
200
164
237
203
252
176
197
173
234
194
123
132
171
182
184
188
247
211
198
209
188
184
208
233
170
229
244
236
204
212
168
195
247
214
162
265
168
232
190
213
189
166
209
186
168
265
204
237
152
196
200
209
218
167
212
226
152
171
134
150
158
202
218
254
224
183
167
120
197
228
213
207
208
209
202
225
189
183
173
202
169
191
145
256
233
211
186
196
182
237
231
248
170
179
196
192
173
154
200
155
175
177
178
228
173
147
184
245
231
179
204
185
207
170
196
193
112
224
199
233
247
122
143
175
216
205
221
163
193
189
172
224
203
161
190
239
203
238
223
198
201
234
165
145
236
206
132
164
160
180
248
213
154
200
185
183
216
185
199
210
135
283
213
225
218
163
135
177
158
166
161
216
159
168
208
203
174
179
174
181
176
154
234
203
226
153
143
223
189
203
200
157
182
221
217
230
185
197
207
145
134
184
200
251
195
213
193
267
280
145
224
217
161
161
263
199
227
241
182
201
201
222
153
187
223
196
197
162
184
186
208
189
112
185
209
188
187
188
192
164
141
147
196
126
256
204
227
206
193
240
151
223
206
243
205
264
167
233
142
183
189
202
199
143
156
221
202
189
247
190
207
202
201
226
199
195
151
230
178
250
202
143
228
263
194
185
137
226
182
165
181
147
170
208
212
178
238
170
181
180
167
162
130
251
191
246
243
215
177
223
213
195
188
185
154
245
201
209
192
229
209
193
163
221
139
184
165
200
189
158
220
192
212
182
200
223
194
169
126
189
191
212
151
203
195
208
189
220
215
203
199
158
208
193
183
186
212
182
178
208
170
172
224
269
178
153
214
194
202
235
174
200
178
232
160
201
223
198
227
205
144
214
203
216
210
230
158
175
225
194
181
229
182
165
193
232
202
244
223
221
122
192
230
177
203
175
195
249
186
241
220
219
190
186
207
235
181
218
187
229
233
159
168
125
268
120
168
189
177
212
228
222
205
142
239
200
228
243
181
217
191
150
221
211
269
204
157
260
168
214
234
183
171
124
199
249
175
177
251
217
281
213
180
157
124
186
213
187
214
240
221
133
204
200
180
170
155
194
185
185
227
207
163
254
224
212
183
202
231
172
120
260
157
172
249
194
212
215
197
186
241
235
221
192
160
182
163
162
203
239
210
178
190
228
160
175
173
220
195
219
209
195
249
211
197
155
209
200
237
196
247
216
147
236
162
236
204
247
177
219
257
190
178
216
157
143
233
139
230
210
257
155
189
224
225
180
229
197
213
203
228
190
192
186
203
198
216
159
232
192
204
230
199
214
178
252
195
240
203
210
211
157
250
184
201
189
184
202
203
198
232
145
257
220
274
220
144
209
167
156
234
240
236
187
257
151
116
197
167
250
249
217
191
179
182
202
175
183
224
219
171
169
275
261
178
227
223
223
164
199
180
220
243
235
152
189
163
134
199
178
206
211
207
162
185
99
221
242
195
163
229
251
147
256
225
228
193
168
231
194
215
231
253
231
241
216
211
155
168
185
256
207
188
152
204
239
174
185
193
213
179
181
210
224
219
148
139
213
212
237
184
211
231
164
230
178
251
202
237
224
191
215
189
203
184
187
196
241
220
196
254
208
164
233
237
165
250
200
174
255
163
181
230
254
239
242
186
159
194
229
246
206
232
221
248
190
168
234
216
231
156
207
160
200
198
266
192
215
191
209
133
179
178
202
133
174
123
216
199
213
209
196
195
143
253
218
231
178
227
241
224
195
194
223
170
180
228
147
253
194
213
184
184
239
190
228
222
199
209
228
234
222
184
174
219
203
206
223
189
204
219
216
176
234
194
153
162
199
202
239
198
227
189
220
183
179
220
203
221
191
245
210
222
173
130
216
197
235
197
188
166
172
212
266
155
173
208
205
204
195
270
188
167
167
224
204
180
187
225
260
226
190
159
151
202
246
204
179
177
137
205
221
255
193
159
146
258
211
226
163
187
222
164
266
187
182
170
190
165
200
236
212
203
230
243
185
151
211
185
212
214
177
244
201
211
216
220
286
142
178
217
245
199
249
198
236
150
167
184
244
200
179
155
210
215
232
209
221
128
210
197
191
123
210
200
231
244
253
251
173
209
200
158
264
236
207
164
184
238
228
220
208
203
203
217
189
179
211
173
222
169
184
144
184
151
188
216
168
167
186
189
217
218
190
211
170
123
211
154
209
241
189
146
266
200
221
157
210
167
170
191
189
212
170
160
153
206
203
223
194
132
169
215
220
213
234
161
163
200
166
183
156
202
166
235
230
211
227
192
243
142
215
182
153
236
215
187
204
268
171
213
193
205
212
195
259
265
188
230
211
181
250
257
215
99
240
229
163
177
244
145
212
203
214
157
177
195
223
210
221
174
196
148
164
181
249
216
233
183
212
237
214
218
214
180
243
141
172
138
225
212
246
219
177
189
213
200
134
148
224
185
238
185
229
202
222
207
182
189
193
199
222
226
190
181
216
203
233
215
254
168
189
237
232
197
188
237
163
169
214
172
156
173
242
216
190
190
220
199
205
247
199
167
195
202
220
231
203
171
180
216
175
169
206
205
214
224
129
185
202
147
151
188
231
234
233
225
253
226
184
131
232
227
209
137
158
194
212
216
195
192
200
192
198
259
193
198
149
195
217
193
264
231
209
202
243
211
229
169
193
211
244
165
199
188
170
198
215
220
158
227
218
191
233
206
224
225
236
225
195
148
215
167
173
244
168
190
164
176
234
179
196
184
245
183
178
200
205
177
258
241
195
220
180
221
138
232
192
134
188
218
183
202
140
181
183
234
192
176
224
175
198
212
178
205
129
234
214
218
238
232
192
218
152
152
192
236
179
182
205
217
223
189
166
186
179
161
210
236
142
213
195
156
206
217
223
235
229
194
212
215
163
219
221
187
183
219
213
137
196
182
193
190
163
168
220
200
179
210
204
187
159
251
176
162
211
226
235
227
191
177
150
239
204
203
225
221
211
239
185
243
187
192
190
192
240
175
168
193
159
197
195
138
246
160
207
184
216
157
232
225
203
253
154
191
116
194
219
194
233
197
202
201
241
177
219
242
223
166
201
235
189
187
198
105
124
195
224
209
211
140
214
156
198
167
215
186
198
169
200
229
199
171
173
217
222
196
204
134
229
222
201
277
147
185
237
181
188
254
149
179
188
187
195
160
140
150
219
227
187
220
197
159
271
102
179
208
150
188
228
141
264
209
231
144
195
183
182
242
141
182
199
223
206
193
174
209
185
137
235
196
202
229
179
184
188
244
254
139
197
205
220
256
227
196
157
205
217
176
235
215
241
201
166
159
253
204
206
222
184
192
175
254
167
243
197
199
151
173
188
174
203
180
172
192
264
174
209
237
204
209
185
192
218
174
255
213
217
225
231
194
203
200
263
228
202
233
120
237
210
231
152
192
265
179
197
181
204
195
211
185
182
257
166
234
189
221
227
163
197
206
203
211
210
169
227
265
182
245
207
194
220
193
134
155
175
183
196
192
195
128
226
183
205
245
211
173
261
200
181
150
155
236
138
223
257
233
195
196
180
187
193
159
241
192
214
148
233
238
176
179
199
229
206
193
206
188
206
217
257
219
283
213
251
167
199
204
208
196
188
219
172
246
222
216
217
232
198
274
206
176
213
258
200
198
164
183
224
173
184
173
262
203
219
242
201
230
224
182
212
210
289
223
219
210
219
264
169
238
171
176
190
175
253
194
213
239
170
200
163
275
154
110
188
181
151
168
154
160
233
253
173
139
149
194
223
220
186
220
197
138
138
210
152
219
197
238
204
210
236
193
196
139
231
163
207
221
174
315
275
189
178
204
196
131
159
228
171
260
222
238
203
259
244
174
200
184
154
258
214
243
189
221
157
125
212
284
181
213
172
209
183
261
192
218
134
233
209
175
192
176
188
220
185
237
209
227
190
217
162
167
142
198
205
221
221
127
179
212
171
178
150
194
165
153
185
218
249
257
171
245
256
223
221
234
167
232
265
148
212
169
178
230
174
195
184
236
244
199
223
184
210
183
225
230
131
177
175
219
236
219
268
150
211
174
255
239
146
230
147
253
135
179
201
158
280
251
225
127
202
225
244
228
258
206
205
204
217
186
198
205
240
196
194
201
179
184
134
221
253
183
226
240
170
187
185
214
229
171
166
179
198
169
241
200
223
196
143
234
208
228
177
172
177
244
252
158
243
215
168
188
229
244
192
200
234
208
185
176
166
234
263
257
228
213
170
186
256
197
185
205
244
202
134
178
207
170
223
244
207
159
256
168
123
247
194
206
240
165
169
190
167
197
207
108
256
200
160
170
196
219
196
218
182
215
196
194
234
157
214
235
229
144
242
188
200
142
195
252
178
245
291
158
189
206
169
192
171
239
228
161
152
144
217
141
169
204
172
244
159
193
223
186
181
149
202
263
199
197
217
236
231
127
253
184
226
181
215
226
207
191
217
180
174
223
180
209
200
232
139
144
110
147
206
177
196
214
222
262
197
177
124
223
215
251
216
196
205
196
231
182
142
245
195
205
243
176
166
202
183
224
234
244
225
207
248
248
185
144
196
205
234
248
208
190
203
140
173
212
213
201
186
158
212
233
205
215
186
184
206
225
260
223
164
258
157
213
201
219
219
227
218
210
162
172
210
209
246
174
201
233
186
201
228
209
227
205
166
184
188
221
221
191
186
236
175
221
211
129
132
203
156
187
201
181
163
190
196
191
216
205
205
136
147
209
199
250
195
224
240
242
222
253
232
220
194
237
189
195
262
155
160
214
150
174
234
190
204
249
185
205
193
233
155
179
199
167
259
158
130
181
153
161
186
186
235
205
242
200
233
154
219
173
160
215
189
240
198
190
163
238
192
236
194
229
184
165
210
199
177
222
199
252
203
241
258
219
246
236
205
219
171
263
210
224
199
200
183
185
164
136
206
242
198
183
220
214
184
281
164
205
172
211
196
256
190
191
222
221
186
229
182
193
176
176
209
169
190
148
164
274
210
238
187
225
213
183
165
180
213
191
235
147
237
246
195
191
243
225
164
193
140
136
188
205
191
140
205
228
185
236
217
169
251
160
214
180
163
189
240
228
213
210
174
194
233
176
210
190
237
182
240
249
225
186
173
271
250
184
213
177
245
219
199
171
183
217
153
196
194
259
135
213
185
167
224
166
212
211
187
224
211
196
201
161
174
212
212
163
196
200
226
256
189
204
167
185
240
151
221
204
227
242
160
201
186
196
284
208
237
199
136
216
194
212
175
143
222
206
262
201
202
166
195
176
187
221
242
141
229
220
223
231
204
169
211
190
206
241
152
164
176
205
170
213
208
230
227
279
189
156
154
251
209
208
223
197
117
208
229
175
173
190
223
212
234
184
155
160
197
229
172
192
147
207
159
177
179
226
249
170
191
234
260
250
228
218
220
178
177
242
209
173
159
161
207
193
227
201
202
214
240
162
261
203
157
307
245
218
209
249
138
211
174
226
214
161
89
171
132
185
192
199
267
188
190
172
199
200
241
204
190
257
257
197
186
227
196
235
234
221
151
243
189
162
223
184
192
209
214
175
219
201
152
198
245
157
193
221
250
192
167
191
188
219
216
200
220
276
179
239
153
184
162
182
228
219
183
197
217
189
213
179
207
243
203
171
166
181
186
225
154
242
234
237
192
255
156
233
199
166
192
162
199
183
227
228
207
129
236
176
158
195
185
232
169
173
247
175
200
173
183
246
221
155
254
223
226
250
228
254
151
231
221
138
249
132
183
224
206
182
202
125
187
201
219
225
196
194
234
221
134
118
191
149
210
231
208
171
248
165
142
194
172
183
183
239
236
178
203
246
216
184
215
198
231
190
140
164
227
215
196
227
196
175
168
197
151
191
189
154
223
148
212
140
210
222
259
237
200
251
220
228
211
224
184
175
229
226
206
197
252
196
245
262
202
247
132
220
204
176
174
205
244
140
245
146
229
171
230
192
198
133
212
184
253
204
220
160
219
197
157
248
193
205
200
251
247
192
188
190
219
214
229
206
171
198
144
170
169
147
185
175
201
209
192
225
193
189
149
196
201
227
191
183
246
233
198
232
197
154
192
182
202
162
183
252
170
227
167
192
168
139
167
223
236
185
140
197
149
226
214
235
113
215
228
219
162
188
203
226
202
223
230
206
195
192
160
223
196
167
218
179
163
181
145
182
190
162
129
226
137
254
200
225
204
231
244
200
249
265
197
188
210
205
204
218
249
241
236
248
236
230
220
173
206
202
219
189
176
158
145
181
167
192
233
143
149
175
215
211
172
259
179
173
207
197
227
170
199
144
223
191
174
210
228
141
166
227
227
168
172
190
242
186
131
200
268
187
140
187
166
200
165
134
185
205
234
215
139
187
159
251
137
172
155
218
178
98
202
246
171
206
240
128
262
223
233
177
150
174
177
227
128
213
201
234
176
229
148
171
217
194
227
144
261
203
164
157
195
213
263
205
197
211
219
162
197
211
190
198
271
214
219
262
156
153
189
235
209
198
239
275
228
213
228
238
241
224
280
132
161
203
108
178
127
201
202
236
218
190
211
159
179
161
173
236
253
155
190
275
280
254
197
201
205
212
190
233
276
254
214
223
194
190
186
195
161
200
191
248
185
173
222
199
198
188
134
197
146
263
245
251
190
166
224
185
201
208
240
261
225
200
196
208
224
198
198
161
219
159
199
144
228
202
167
167
229
172
178
231
191
169
256
221
214
242
196
194
198
250
139
203
258
200
218
168
158
224
173
214
183
218
171
206
181
204
233
195
123
221
234
177
233
184
205
198
158
147
244
218
132
231
227
177
161
229
219
219
226
241
197
229
165
214
252
235
220
137
129
221
212
192
217
189
173
161
196
269
198
205
218
186
253
155
228
202
201
265
181
169
177
136
148
229
218
116
196
186
140
215
166
186
211
199
132
195
222
163
160
179
224
234
253
190
185
232
177
189
175
189
180
237
151
247
202
145
155
244
153
215
149
183
164
148
190
167
221
242
226
221
194
251
190
209
213
201
230
220
177
284
148
176
203
182
164
201
260
200
228
244
198
267
221
168
232
202
169
188
167
199
174
187
258
251
262
213
246
178
201
237
270
280
205
191
243
206
242
224
144
178
256
197
183
208
238
161
182
211
200
223
229
235
209
214
146
198
237
236
165
215
202
186
207
191
207
237
261
221
203
176
260
227
122
123
201
203
236
186
144
228
143
223
184
237
220
204
174
176
172
270
240
205
175
245
188
234
221
194
181
172
143
183
204
166
205
158
192
247
231
183
196
202
173
164
201
248
174
168
227
237
214
257
167
188
220
187
221
164
218
201
235
183
187
232
197
162
226
218
176
194
196
215
223
207
190
186
152
214
223
185
160
141
178
199
250
170
232
210
203
204
151
223
181
182
229
204
197
183
252
213
163
235
201
185
191
172
203
127
227
206
236
233
235
194
203
185
182
166
216
158
146
212
232
202
176
196
169
184
173
250
167
144
259
218
253
236
147
233
207
182
162
157
188
216
197
202
172
247
189
210
179
150
200
222
261
258
224
178
233
174
227
242
220
204
164
148
202
243
171
169
249
173
213
227
193
167
252
196
179
173
232
196
215
166
231
206
209
225
196
162
246
138
200
138
186
185
167
246
166
191
255
203
209
183
243
240
94
220
237
169
264
190
190
184
222
179
193
194
216
180
178
247
162
208
240
188
227
157
200
201
228
133
191
220
195
239
212
217
202
256
169
210
128
212
212
209
156
191
218
160
233
223
182
244
158
195
221
229
259
157
259
176
211
177
223
193
177
212
186
168
185
148
163
184
180
202
224
214
167
175
231
206
199
185
202
234
162
177
223
155
274
244
181
224
201
178
171
222
227
186
190
190
156
206
257
210
199
234
246
258
115
258
178
200
167
253
232
165
209
214
242
170
183
223
170
238
193
197
165
179
206
195
185
196
132
180
223
158
217
160
217
167
191
210
139
236
184
197
185
261
244
219
210
225
190
191
214
202
154
208
220
196
187
221
219
177
156
257
273
241
127
205
207
194
197
226
213
235
163
121
196
190
171
180
181
197
192
188
239
219
159
220
241
219
230
210
230
217
178
213
242
196
202
270
166
205
237
221
226
198
127
244
185
208
182
236
218
175
199
201
214
221
257
153
222
159
207
229
151
143
180
220
187
221
198
180
173
170
209
199
152
194
170
224
263
195
247
207
152
180
231
200
236
219
227
193
186
179
126
234
183
179
129
176
201
176
219
153
171
281
138
186
282
214
196
174
157
227
211
180
191
250
261
246
212
249
193
182
180
231
216
162
217
261
188
183
221
184
174
133
215
174
180
182
206
246
151
205
204
209
206
196
217
233
217
186
227
239
198
199
140
225
251
206
194
144
231
212
221
215
244
175
153
156
124
178
169
218
186
179
196
210
176
219
222
270
214
179
183
239
188
200
176
275
177
201
236
214
269
261
251
215
212
191
186
159
218
230
188
232
206
193
205
197
222
179
232
214
218
195
211
160
205
179
140
209
135
238
190
175
168
242
166
188
227
226
226
163
212
147
200
185
212
192
207
157
181
174
211
139
282
194
179
188
138
263
192
193
219
194
274
194
175
173
189
165
197
191
175
210
251
169
236
228
215
166
193
260
161
210
175
242
175
110
221
207
198
195
209
154
210
199
211
176
229
174
220
197
200
215
213
137
238
214
166
238
178
222
175
177
212
209
188
188
169
259
198
165
220
176
167
166
221
181
192
180
152
205
186
224
179
160
227
162
208
173
214
225
192
193
179
199
230
183
210
213
229
232
203
209
206
239
206
207
152
199
190
220
204
233
190
268
181
220
212
209
129
146
233
140
205
238
252
170
198
231
236
206
208
254
238
180
250
198
217
225
199
189
199
169
213
199
159
244
165
209
202
221
235
200
194
152
211
129
231
284
169
194
210
169
167
189
205
184
233
216
164
224
245
194
175
244
195
136
122
227
226
192
205
145
180
174
188
227
244
187
215
152
242
251
226
155
137
223
172
172
184
214
216
216
216
165
194
213
135
154
230
179
213
214
263
117
213
202
198
219
232
233
196
166
189
239
162
220
182
143
153
221
172
168
245
234
175
229
196
182
271
213
220
163
173
178
181
193
226
250
208
207
194
175
167
172
239
209
179
194
239
204
265
173
205
189
200
156
189
202
251
161
235
203
212
250
218
234
234
191
188
249
231
213
166
187
143
125
232
175
214
249
176
178
242
230
164
205
224
117
199
114
229
182
209
183
202
197
216
225
194
208
203
229
229
269
184
180
224
224
169
141
223
155
245
287
160
230
180
149
189
295
151
185
183
225
148
221
172
212
141
172
179
242
168
273
225
229
166
208
225
221
226
206
207
257
193
189
164
88
241
202
199
220
161
242
234
239
158
217
200
247
190
239
232
161
180
217
207
178
230
208
192
211
253
231
164
184
217
236
193
188
211
229
199
208
213
184
196
186
184
167
139
155
159
194
203
154
252
197
259
210
171
183
198
220
205
221
200
211
180
170
224
154
211
176
152
192
185
222
212
164
216
196
255
181
230
251
175
217
247
198
161
130
211
168
169
181
157
206
249
201
215
137
240
232
209
122
243
199
227
235
231
210
205
254
203
191
207
213
243
165
138
211
217
203
222
200
209
199
153
141
204
231
182
208
254
214
193
173
197
196
212
182
176
253
207
163
177
164
239
294
243
150
243
180
238
260
230
176
236
162
272
220
188
189
245
104
194
173
198
188
226
148
205
163
192
192
215
188
181
177
204
211
201
185
212
220
215
214
238
197
213
251
204
190
224
214
223
229
236
276
253
210
176
199
267
271
201
170
201
221
198
238
238
187
224
199
192
218
129
219
201
168
167
189
167
190
245
270
129
159
264
187
200
170
221
197
182
230
157
205
184
150
188
199
167
212
137
228
130
219
204
214
192
212
152
207
221
203
148
159
217
238
245
208
176
214
178
135
216
166
258
223
138
187
220
131
177
192
175
190
159
193
164
182
215
218
190
211
199
197
239
194
177
193
224
252
228
234
195
138
219
146
225
187
193
242
215
178
179
251
152
203
161
208
173
189
217
241
180
224
253
213
248
205
184
201
247
170
211
160
186
260
167
241
207
174
159
255
168
145
225
169
186
191
175
194
184
155
226
181
226
221
234
256
155
222
234
222
165
217
124
216
150
155
190
246
251
177
123
189
213
193
190
188
274
180
208
221
227
237
252
205
192
215
173
203
210
121
218
140
231
175
206
168
201
183
155
156
157
165
230
163
205
159
190
180
234
178
181
230
238
198
149
146
226
187
205
151
138
222
214
185
211
202
232
207
199
193
192
135
181
205
197
216
165
221
206
183
166
245
210
239
231
237
198
256
221
219
202
195
208
196
206
188
229
190
209
227
164
158
249
228
290
173
167
266
239
127
191
179
172
156
172
183
206
191
183
157
224
159
191
169
265
133
195
158
152
143
204
202
252
251
225
212
125
219
122
176
200
200
256
210
167
238
180
236
258
201
174
181
178
199
176
242
264
212
163
220
187
218
207
176
168
199
202
213
203
171
151
220
229
209
226
223
193
194
182
261
166
192
219
144
179
149
151
201
191
239
180
242
227
178
222
234
132
182
201
200
185
233
174
200
181
135
154
201
241
202
196
171
236
187
188
235
196
194
179
171
199
213
241
220
147
203
241
246
161
216
217
217
144
242
276
181
230
184
176
267
194
197
186
194
180
257
243
193
187
153
207
211
214
182
161
187
236
195
218
204
225
174
181
143
230
211
165
234
178
184
181
160
223
210
180
130
163
223
236
194
189
123
215
230
161
226
165
153
182
213
169
248
190
197
165
180
202
222
227
189
203
202
232
257
120
187
192
139
263
228
230
207
255
178
222
186
177
211
152
230
220
180
235
168
194
192
239
208
215
209
179
149
245
233
249
271
245
177
229
247
253
155
243
191
172
180
151
170
149
180
185
208
246
128
213
195
207
208
210
204
208
165
174
186
174
171
149
182
250
157
186
201
208
161
190
207
242
198
185
189
202
153
228
261
227
237
218
273
173
156
247
171
223
143
220
229
193
145
194
264
239
188
227
230
177
238
214
268
225
147
229
243
207
180
174
236
142
186
176
234
144
240
242
156
257
185
128
230
205
250
222
230
228
125
171
162
164
203
251
181
239
215
203
174
210
202
229
178
220
191
219
204
175
219
214
220
169
260
248
271
209
204
245
251
111
233
225
166
221
174
202
268
221
203
203
216
159
163
213
220
209
201
205
177
145
221
195
201
203
182
137
236
268
198
197
253
183
189
190
202
166
237
140
186
181
236
251
212
197
229
205
186
162
219
224
219
215
197
203
211
166
206
181
197
273
175
246
143
191
164
205
204
195
266
204
199
258
188
169
216
214
218
242
182
225
138
147
188
163
205
165
241
190
195
222
125
200
220
171
191
164
206
143
182
247
238
152
207
180
203
229
208
195
238
193
160
195
178
157
188
157
187
204
259
199
123
190
179
150
140
211
230
254
251
206
212
228
215
187
211
192
223
124
163
131
206
181
172
186
204
214
181
174
213
245
155
213
270
185
178
233
204
179
187
220
227
223
210
230
209
231
248
231
207
224
188
185
220
215
268
185
222
161
207
202
217
215
229
264
199
218
191
198
202
161
235
258
216
238
163
180
207
212
224
185
162
229
129
205
256
249
202
186
222
234
186
212
161
126
239
206
214
247
169
230
211
255
196
203
179
232
203
215
169
206
270
248
202
180
242
172
210
241
189
201
213
220
149
252
217
236
205
159
175
185
158
179
191
171
210
198
232
174
209
152
209
167
137
147
219
211
235
265
197
252
201
227
211
197
210
209
202
220
196
239
202
240
206
218
180
195
201
186
248
148
262
181
248
173
206
181
175
180
201
260
214
203
180
120
258
201
224
199
219
182
194
189
181
160
187
202
200
171
173
248
140
153
218
196
260
182
163
238
217
188
205
174
188
239
202
223
193
168
220
239
262
279
156
222
144
232
197
180
196
162
259
224
199
209
213
161
178
192
226
205
195
170
261
210
239
255
237
190
205
192
225
187
187
255
180
193
200
199
177
223
220
225
216
191
210
227
170
262
201
202
223
194
243
217
208
134
213
145
179
203
223
283
209
223
204
204
245
158
191
201
218
211
271
152
181
203
204
158
205
192
194
219
223
206
196
177
205
223
216
224
218
158
133
206
180
247
183
240
177
206
185
207
154
198
243
197
159
185
164
163
184
164
307
170
219
212
191
133
242
205
247
185
203
226
206
198
233
220
203
235
197
244
185
195
214
234
218
167
174
215
195
224
202
181
193
246
159
190
217
216
178
145
207
217
204
210
204
175
195
258
182
169
187
221
183
286
147
155
219
185
223
189
207
190
205
223
226
178
246
245
172
218
181
196
197
179
229
176
201
193
285
213
162
170
179
196
194
172
228
207
210
158
165
141
218
270
244
209
229
154
225
210
190
224
208
163
229
188
189
250
214
237
167
211
209
216
191
158
166
216
265
203
233
138
123
223
205
199
178
240
261
200
191
215
233
238
244
177
213
161
224
228
168
127
204
199
177
216
190
223
160
224
227
254
235
179
199
183
196
215
234
212
167
167
235
200
214
164
130
188
146
221
174
151
231
220
168
162
157
187
229
196
163
219
146
190
245
213
233
207
218
232
211
155
223
165
190
240
137
229
155
221
196
183
231
222
196
192
231
135
188
242
203
186
184
218
173
272
179
156
184
172
272
178
220
211
153
222
195
236
215
242
211
227
134
191
190
190
140
239
240
214
192
184
156
244
189
188
195
184
177
174
157
151
167
207
222
239
151
183
151
215
196
207
185
259
269
194
233
192
249
228
215
197
182
224
197
205
186
162
216
174
194
283
196
208
157
170
204
178
218
221
210
116
157
238
228
201
233
271
212
164
254
215
190
211
249
220
131
143
229
190
216
204
155
190
157
240
234
240
222
226
127
172
182
284
152
183
217
233
200
185
238
261
206
258
257
218
166
172
166
198
158
239
156
259
228
272
224
211
190
172
253
211
198
268
192
194
213
219
213
202
241
179
240
235
177
242
185
156
174
193
188
207
211
177
263
268
238
238
120
205
159
254
220
217
196
195
172
223
190
241
173
116
246
205
164
190
208
212
223
157
162
212
206
286
193
207
136
258
148
168
254
146
246
175
189
193
188
247
176
189
173
216
177
230
214
231
176
150
229
138
175
200
143
229
214
271
115
162
217
222
189
194
227
133
181
215
163
191
225
224
184
195
163
129
191
193
228
229
221
236
225
194
281
200
186
204
211
121
191
195
249
225
247
220
199
238
239
187
174
125
190
224
202
172
167
241
221
252
207
165
183
193
134
222
180
261
173
168
244
208
195
204
190
165
248
203
197
128
219
187
177
196
201
173
183
186
194
199
178
184
185
197
133
152
205
168
159
215
222
229
217
267
259
205
213
214
189
181
188
188
162
182
152
215
220
175
224
176
197
217
215
237
235
224
170
219
217
107
172
238
191
198
198
185
205
226
238
232
160
166
81
123
236
213
153
194
260
193
159
179
169
147
198
163
211
191
210
230
182
236
197
174
204
202
288
237
190
160
186
256
139
219
203
240
237
256
241
274
184
174
184
183
245
173
223
141
215
186
119
206
190
266
183
228
181
195
219
252
177
145
241
204
240
162
154
158
214
176
204
158
150
211
179
200
197
140
224
230
181
166
157
239
183
200
185
183
197
177
174
228
196
248
258
232
230
216
205
193
143
243
158
188
200
200
187
181
190
168
197
216
147
249
238
176
197
272
182
213
236
233
189
172
243
183
157
167
167
196
164
215
248
200
198
177
247
201
154
171
204
210
193
247
233
198
149
147
211
266
190
189
189
212
194
228
166
170
203
222
164
222
220
254
152
179
211
121
109
275
182
137
209
157
146
204
212
222
204
235
222
214
204
196
174
222
215
183
201
215
180
179
255
218
223
143
220
214
171
238
243
208
175
205
145
261
231
194
240
268
152
175
198
236
167
209
167
229
186
184
194
174
248
230
165
189
199
225
197
215
232
182
152
209
180
221
186
185
232
213
182
206
239
221
196
164
213
139
224
264
159
187
227
199
196
255
145
213
249
238
159
187
173
267
177
244
218
126
181
139
147
211
257
205
237
212
226
253
207
254
204
199
210
135
235
190
161
179
208
239
186
194
185
208
208
207
221
128
210
194
230
216
263
227
272
203
185
218
219
214
177
274
184
208
182
190
243
216
213
212
148
203
219
154
247
202
198
205
227
171
220
211
188
177
163
161
162
211
223
153
123
173
233
204
188
205
217
218
248
202
170
218
201
187
167
177
152
205
227
179
175
207
195
192
227
176
193
209
245
183
229
195
218
178
219
207
216
165
225
165
184
232
216
173
172
167
174
174
190
212
207
271
201
139
190
201
255
205
186
239
165
193
205
185
227
179
130
174
222
161
223
181
205
169
170
167
236
238
209
209
238
206
151
211
220
157
144
180
168
157
190
185
229
195
225
190
233
205
145
186
259
225
216
155
218
254
204
182
241
176
190
214
205
223
175
156
216
190
238
220
211
226
165
265
165
193
287
193
165
247
268
204
182
197
228
236
315
184
193
176
208
200
259
177
100
225
197
204
174
172
200
217
262
179
171
214
143
167
209
159
203
216
244
184
181
220
184
216
140
239
278
176
207
235
165
240
190
261
233
184
248
192
196
243
199
140
183
203
169
143
211
206
199
245
223
228
178
220
214
133
254
205
201
140
194
228
180
194
226
194
194
202
194
162
166
142
183
181
199
186
171
168
229
148
178
214
232
177
214
194
243
151
213
165
181
250
146
136
215
140
128
209
205
226
231
172
207
196
196
231
214
167
217
190
176
216
80
226
231
175
231
221
254
207
144
191
272
205
208
142
158
247
196
201
221
194
246
209
206
156
248
196
221
201
205
202
235
241
233
244
246
196
231
273
195
224
192
225
161
221
238
144
179
210
230
226
200
208
236
151
174
238
178
242
184
191
181
216
266
236
259
149
223
186
179
153
254
232
143
136
234
208
177
142
208
164
256
185
237
174
236
183
225
211
139
202
229
209
196
200
204
179
159
185
179
171
206
133
197
210
211
197
195
219
208
202
157
228
153
205
212
214
254
220
198
236
169
230
203
199
297
235
206
185
169
178
265
224
202
200
182
197
216
118
219
200
134
162
189
143
193
247
185
247
235
273
200
268
171
206
225
152
172
208
179
180
231
293
240
215
237
239
160
202
234
143
213
220
223
200
226
174
148
190
243
183
180
244
248
184
194
232
198
172
200
156
237
259
168
158
143
183
177
238
256
223
242
184
192
202
257
191
161
112
236
180
200
203
146
216
241
222
184
261
198
219
194
185
168
219
195
214
196
192
164
196
190
216
228
219
175
74
227
144
241
200
224
209
243
192
154
167
227
235
196
224
224
232
181
237
134
235
188
154
241
249
232
130
241
201
217
148
246
227
248
237
176
107
186
157
205
198
212
193
153
201
200
273
261
238
216
183
239
249
172
164
190
189
192
216
175
174
223
151
189
234
225
223
223
212
223
221
221
285
180
211
208
178
201
177
164
212
206
233
236
240
221
221
102
131
200
198
224
253
206
235
179
168
168
202
183
226
241
229
232
169
210
227
206
169
224
165
182
273
255
201
134
272
190
168
247
182
259
240
144
233
266
213
225
203
225
252
225
182
186
280
226
275
227
137
168
200
167
211
208
229
167
155
273
165
137
200
180
205
181
205
160
225
189
137
277
195
243
211
187
181
110
231
143
228
158
242
223
248
249
115
229
239
200
195
144
217
145
248
229
184
194
214
247
155
134
167
204
223
203
226
161
209
196
229
185
147
224
203
158
179
221
183
260
209
180
125
245
160
237
259
199
179
231
233
199
200
220
195
159
186
219
174
136
218
173
160
177
206
243
213
209
138
141
203
146
221
186
146
178
201
288
206
198
221
206
184
211
206
193
184
185
223
216
242
188
155
145
205
214
234
221
223
211
161
129
224
260
262
171
272
204
182
191
162
186
271
164
169
170
187
169
208
189
206
249
237
108
224
192
131
184
234
200
200
200
157
249
168
177
229
217
212
205
156
216
146
248
180
190
217
182
178
238
156
156
110
194
240
299
181
203
135
162
217
171
201
225
165
131
170
179
187
134
205
197
192
93
193
209
213
181
201
180
173
180
162
153
201
193
168
250
207
215
187
213
188
197
268
209
176
175
197
189
207
253
174
194
215
167
202
137
215
211
258
177
220
204
243
174
200
202
203
170
239
237
216
228
206
146
240
191
145
223
206
174
197
179
231
207
140
136
229
139
171
210
144
225
237
206
190
212
174
215
207
238
216
172
222
172
180
207
237
233
223
151
284
224
241
228
240
227
215
223
186
153
173
143
226
253
257
221
168
190
165
191
230
219
203
110
177
215
189
227
170
192
227
232
182
234
285
212
197
232
209
249
189
216
179
128
235
160
230
225
217
221
164
211
213
195
264
142
162
201
206
191
216
144
229
250
193
171
270
242
189
183
247
182
226
142
223
128
165
201
202
248
169
216
213
154
241
214
190
246
198
177
187
136
222
160
223
245
212
176
182
214
229
272
176
138
181
229
237
240
187
196
226
186
215
172
211
182
244
192
129
198
185
189
129
220
150
217
148
230
194
207
226
191
254
192
213
212
220
206
216
276
224
148
209
208
165
268
204
149
150
242
206
214
221
182
204
227
158
219
182
208
205
233
170
196
252
198
263
93
127
199
162
158
259
177
161
239
249
181
183
193
174
164
152
220
198
208
218
197
230
232
245
258
199
204
210
198
165
162
169
150
259
229
231
226
129
156
233
233
229
243
146
215
171
196
228
188
214
195
243
174
150
159
220
201
188
283
140
203
217
235
191
192
231
210
236
178
194
218
203
238
240
201
215
201
220
237
222
218
253
150
101
225
260
184
227
209
231
233
222
150
226
230
237
194
220
214
191
202
207
202
171
207
149
258
197
226
201
184
156
200
167
156
248
149
221
226
221
233
230
183
203
227
175
221
166
170
181
201
114
175
285
218
230
188
217
214
210
232
163
227
186
218
208
269
220
199
195
235
190
198
240
230
227
161
206
228
205
179
193
146
215
255
222
211
182
152
231
199
197
159
199
215
211
255
159
218
155
135
235
164
193
204
220
195
255
270
224
237
198
237
199
179
164
226
187
195
223
223
228
165
163
135
244
246
227
162
235
205
195
228
260
184
167
222
158
207
255
260
190
195
189
219
173
158
185
234
167
186
158
217
204
240
151
185
239
204
201
73
173
200
185
162
155
152
231
178
194
202
241
217
163
219
204
198
157
205
196
219
181
201
207
140
171
227
184
223
224
194
191
200
185
232
216
202
165
220
175
148
211
204
235
228
218
257
212
176
191
228
166
207
158
182
142
244
180
172
204
135
178
246
208
178
147
223
228
226
191
229
127
171
168
140
154
169
163
222
161
204
184
177
239
154
187
175
202
117
211
175
189
157
204
204
198
218
151
177
230
194
203
176
209
143
197
188
218
205
238
161
174
253
186
169
219
160
198
235
189
177
193
235
233
209
203
278
179
205
218
155
194
182
245
131
253
196
179
195
212
188
179
168
216
199
185
156
224
214
182
194
147
164
231
127
121
234
170
225
224
183
169
212
189
184
140
202
168
198
225
235
215
252
220
160
218
242
259
200
188
239
204
201
191
174
175
234
189
165
315
212
195
186
156
159
203
174
243
171
235
207
174
189
189
190
197
149
218
142
197
202
192
188
243
209
188
172
243
250
253
236
184
151
214
223
258
179
215
223
203
249
236
220
67
208
135
175
180
147
160
168
191
240
240
204
217
182
164
161
233
239
196
206
196
147
199
226
203
209
190
256
175
224
188
228
201
248
177
211
233
180
147
244
219
184
204
221
223
244
256
213
172
158
192
232
128
147
240
171
258
226
237
219
204
160
178
217
219
199
131
183
122
186
181
173
194
154
167
172
214
160
252
266
242
160
225
182
101
165
231
197
241
196
165
243
219
255
184
176
156
284
235
125
265
188
202
219
192
199
165
187
190
209
175
155
161
244
182
232
206
205
200
176
187
218
237
260
234
119
229
203
159
202
161
227
149
255
185
225
144
182
272
183
224
206
204
203
210
237
194
241
196
198
191
193
204
226
198
199
239
202
204
253
133
275
137
181
194
158
263
163
175
217
179
241
167
195
147
180
227
215
272
181
212
235
170
219
181
161
128
207
141
174
227
175
110
239
155
203
187
223
248
192
226
227
229
219
170
257
212
179
216
206
216
223
231
203
220
196
187
147
162
231
236
189
176
185
160
216
221
133
207
205
199
226
191
234
217
222
260
179
188
222
190
194
226
193
185
262
247
190
249
155
123
184
196
172
206
213
249
208
158
236
187
201
197
187
197
227
246
183
167
184
206
154
172
172
156
200
216
125
224
160
245
164
171
191
165
249
199
192
190
199
240
171
202
244
188
189
182
229
194
221
219
200
208
275
207
111
217
189
245
146
165
264
235
182
150
221
229
146
212
237
240
177
200
212
216
161
249
189
217
165
233
230
194
152
222
203
211
197
205
239
190
192
176
190
236
248
131
175
159
198
190
118
197
245
212
213
217
185
197
224
161
179
186
218
181
140
245
230
167
254
202
190
238
216
207
260
177
177
164
222
226
240
271
238
263
200
196
238
248
188
242
217
188
197
212
162
156
135
178
187
171
185
179
227
227
238
170
102
227
214
207
178
159
151
185
262
208
247
240
246
247
186
175
196
192
245
227
232
231
206
223
203
170
165
249
181
216
227
163
260
176
202
186
181
198
213
201
182
168
186
197
209
182
211
156
201
203
195
210
176
255
154
306
125
162
197
229
200
208
226
227
192
182
166
151
191
196
222
243
189
235
251
234
236
216
242
176
196
143
201
230
240
212
201
172
173
222
153
279
134
172
217
178
167
203
242
132
196
214
227
185
254
234
215
192
222
171
157
238
213
270
216
166
211
186
221
150
248
179
216
219
152
194
172
246
133
192
146
256
161
226
204
218
125
192
249
218
185
209
231
229
135
149
179
153
241
182
202
176
194
218
185
193
192
214
232
235
209
213
180
198
218
251
208
155
222
227
191
247
214
236
180
219
209
219
209
176
276
178
202
164
200
182
285
183
205
229
246
190
106
144
197
201
166
201
177
177
150
218
195
205
222
194
161
201
239
194
215
191
157
203
214
132
173
205
196
222
210
260
245
183
120
228
218
184
215
219
190
202
238
218
129
186
147
170
218
209
175
188
221
212
255
196
187
255
197
232
238
250
234
150
206
216
236
198
166
188
202
184
218
230
179
246
166
201
205
239
235
194
198
225
250
282
149
244
195
157
188
186
191
156
169
238
176
235
228
186
173
235
246
225
227
171
235
189
222
175
204
211
229
212
228
170
145
207
207
145
267
191
166
163
155
210
226
176
153
227
169
197
265
176
188
154
239
235
192
233
171
200
209
162
175
217
230
151
221
246
106
188
138
220
225
184
207
178
161
157
255
209
206
261
192
245
184
243
211
198
241
199
197
236
199
238
157
222
175
205
194
202
196
237
256
221
159
114
126
246
201
169
179
242
222
232
184
227
173
212
213
164
224
236
187
239
196
203
198
235
137
243
205
250
109
131
257
184
205
180
136
175
202
220
225
199
241
223
285
181
149
164
220
193
204
212
192
179
192
167
210
186
275
117
207
259
180
231
96
230
285
191
191
184
233
250
261
241
194
226
221
195
220
149
198
219
189
160
189
189
209
153
203
204
204
213
244
184
201
158
232
145
208
155
206
254
217
185
202
194
228
218
243
224
227
191
180
200
193
136
163
186
234
201
229
236
157
215
112
199
180
158
178
224
110
210
138
201
203
233
217
199
163
260
166
159
145
141
207
152
241
215
181
187
226
203
171
219
217
227
149
233
278
262
149
216
160
203
235
161
169
190
200
222
218
215
210
234
181
208
204
166
170
238
178
141
146
181
153
197
223
209
175
177
221
176
203
178
151
247
182
215
239
126
231
192
258
214
185
177
151
155
208
136
150
215
167
206
184
186
201
174
174
207
193
182
262
260
251
214
189
144
156
229
188
223
158
190
197
194
173
184
241
236
194
184
179
142
168
213
193
275
219
154
199
229
169
115
208
211
205
202
157
236
207
175
209
182
227
184
209
189
201
126
180
179
189
202
188
171
178
219
194
153
213
200
236
190
239
241
242
183
218
175
224
219
121
207
150
212
214
244
159
170
230
238
200
258
165
202
169
259
149
239
167
211
194
140
173
188
183
157
266
244
176
188
265
217
267
169
193
193
162
237
143
184
199
225
219
234
187
210
168
148
229
255
189
218
176
161
150
185
183
223
195
195
202
240
155
183
214
204
201
169
198
224
190
223
194
191
236
232
183
171
246
224
238
239
204
156
181
153
221
219
202
189
132
227
183
194
247
215
184
234
248
198
196
234
251
150
212
236
172
220
178
241
191
166
177
197
199
182
182
222
248
202
182
205
185
198
144
266
171
204
159
238
253
149
210
154
205
151
185
175
213
183
193
220
244
251
201
268
221
172
185
228
216
211
182
196
170
257
231
204
200
210
187
241
194
245
109
225
167
183
190
218
238
193
164
176
263
214
201
201
268
180
215
223
175
218
169
198
199
233
201
170
173
205
187
165
191
225
208
190
206
208
170
179
234
210
210
233
153
150
212
194
216
241
184
232
170
207
217
236
201
190
223
189
200
247
243
235
213
200
141
196
222
167
159
236
198
258
167
206
204
144
190
195
265
242
229
180
197
189
278
218
222
175
219
180
153
163
212
245
172
207
245
225
233
198
242
191
155
217
234
166
191
175
190
204
179
170
178
153
243
249
229
142
168
240
236
211
188
149
221
236
179
190
265
195
151
242
204
153
248
198
196
215
187
191
191
184
200
203
185
180
161
193
262
194
153
273
134
227
154
184
192
245
264
169
254
232
256
224
145
226
179
184
140
221
204
212
218
162
171
169
148
155
213
159
225
197
231
244
233
200
240
166
264
177
270
234
237
192
141
233
190
184
207
248
231
181
209
151
280
218
209
186
136
240
217
151
154
246
195
254
172
225
162
186
222
210
184
150
206
199
163
221
179
220
196
150
227
194
154
166
179
213
192
159
207
154
226
241
220
194
242
241
228
208
179
257
234
273
151
234
204
261
209
164
184
219
216
245
215
189
170
231
196
208
207
166
204
213
225
130
252
204
234
126
196
218
190
228
225
178
256
232
225
233
115
177
173
199
229
200
185
192
198
203
153
203
216
188
227
156
234
187
195
237
216
215
206
180
190
185
186
235
165
188
195
217
176
141
186
245
230
212
207
197
242
184
190
193
194
169
227
240
254
179
247
206
197
196
198
184
168
217
157
177
243
202
140
185
199
205
254
198
150
196
160
223
224
250
204
193
233
238
181
204
175
180
251
151
137
217
190
230
159
260
191
226
177
222
237
136
208
144
203
200
233
243
268
238
183
263
198
180
151
199
181
230
210
212
253
240
167
232
244
177
228
150
217
204
147
238
220
199
263
244
170
194
199
220
127
210
210
191
142
185
187
186
216
181
157
221
266
189
200
182
172
187
252
160
151
256
262
210
230
149
253
206
133
232
162
221
230
243
219
187
234
176
162
190
173
248
165
246
198
197
242
161
194
219
247
142
296
257
174
167
216
182
170
184
195
232
149
164
219
181
208
159
252
214
191
156
205
173
237
209
147
242
179
185
148
214
125
142
211
190
188
216
232
239
173
247
252
221
167
179
214
171
191
171
135
181
233
231
225
218
184
209
169
154
164
142
226
198
252
206
232
300
169
148
155
164
144
171
169
192
178
215
188
152
184
188
186
227
167
211
222
208
202
179
197
211
176
229
193
242
245
171
185
258
229
184
153
249
199
248
178
193
179
147
231
147
259
212
191
143
175
188
203
217
263
223
206
211
226
226
200
201
169
211
276
184
235
120
203
244
193
190
235
186
124
205
217
223
185
211
175
248
157
212
178
201
168
149
177
195
187
199
186
244
241
200
218
160
188
267
184
140
277
200
211
261
232
207
156
232
133
182
246
174
203
184
231
172
190
139
235
224
183
228
196
204
242
194
208
195
153
246
148
234
235
163
216
158
230
246
207
192
120
226
205
234
191
257
241
232
206
187
133
172
191
170
154
222
193
208
188
182
180
246
193
199
141
187
202
196
148
231
183
180
204
224
235
169
166
247
187
218
178
184
200
221
178
146
176
249
207
190
123
203
249
223
214
183
214
246
173
201
176
190
222
188
184
200
158
162
228
250
177
200
156
203
115
160
197
191
146
179
213
246
248
213
195
205
171
211
169
181
185
215
178
220
267
205
179
196
236
217
216
222
153
263
184
229
175
233
283
231
256
237
117
218
187
210
237
265
237
175
157
173
206
224
182
154
178
167
221
218
219
221
187
213
176
159
171
182
203
188
247
201
224
157
174
206
199
170
209
164
224
193
193
191
167
220
204
203
183
207
201
193
189
164
241
256
202
196
218
218
137
239
142
227
254
177
218
188
204
196
222
193
200
269
162
139
180
256
235
238
129
237
167
146
226
210
206
170
199
222
224
211
196
224
195
209
207
171
202
188
128
201
216
211
183
205
174
179
159
143
206
163
162
260
118
178
242
237
210
133
193
203
166
134
229
217
224
218
207
205
172
179
174
223
112
239
201
146
272
244
229
212
298
187
208
205
171
182
214
168
192
120
216
195
220
186
228
224
187
166
198
139
216
151
221
184
233
215
221
211
264
186
246
181
238
205
212
159
159
171
152
180
181
251
189
259
187
260
213
208
189
253
224
243
169
188
208
176
184
272
237
252
232
185
212
243
218
188
260
192
184
200
232
205
171
192
214
221
177
150
104
121
264
228
217
209
209
210
239
173
201
173
237
194
187
209
179
197
183
172
167
247
198
219
206
198
178
183
185
162
237
219
108
160
221
172
184
173
231
149
224
168
157
260
171
143
221
231
216
183
261
185
206
212
194
202
175
165
210
213
184
207
258
215
161
226
181
184
141
193
266
250
230
212
218
250
202
234
228
206
183
172
222
219
187
212
284
189
214
237
236
224
246
173
144
230
163
303
191
228
182
203
152
205
169
177
176
222
275
192
182
175
162
214
168
169
276
239
169
132
202
179
253
181
154
204
224
167
218
199
150
257
217
130
251
230
199
239
130
255
168
228
188
280
185
237
186
291
192
194
113
145
172
200
217
241
194
191
268
187
154
213
118
163
276
222
157
212
202
184
202
270
141
148
210
214
180
198
169
193
195
173
187
164
185
214
192
161
247
160
213
195
215
113
151
209
204
255
203
174
202
165
177
201
211
211
241
259
104
192
228
232
235
204
180
225
205
198
187
197
211
166
146
245
217
228
239
155
186
250
183
211
163
255
151
214
206
198
163
207
189
234
229
177
195
200
181
230
168
229
261
215
157
163
236
161
189
221
167
229
173
184
243
217
226
204
145
219
201
198
174
234
151
223
192
286
213
214
214
267
270
150
178
167
215
191
138
207
151
156
209
203
199
219
163
214
201
207
188
240
182
186
221
188
217
159
205
158
151
208
197
187
167
206
163
243
202
186
238
183
228
203
243
237
215
195
219
227
230
205
208
216
191
162
114
197
222
204
238
213
164
160
208
168
199
179
172
232
133
202
253
169
165
206
162
210
215
211
223
171
246
162
204
218
176
182
206
170
166
243
194
188
174
214
179
249
155
243
188
213
208
220
194
165
137
220
205
170
190
183
186
179
251
191
199
194
252
228
245
194
179
197
193
184
200
245
144
205
175
192
186
206
229
245
260
157
153
233
214
202
195
212
191
214
199
209
220
152
171
128
248
228
165
166
191
217
251
214
193
202
168
156
206
200
235
188
211
187
188
247
207
248
198
157
188
234
188
205
219
223
187
178
182
176
196
130
187
256
205
178
174
242
190
205
154
195
179
187
147
158
184
230
173
161
199
165
209
180
205
220
195
262
169
224
214
219
175
240
187
216
197
190
237
259
191
168
167
216
164
255
196
164
224
141
236
186
222
168
214
201
229
237
170
160
229
196
228
162
213
167
246
229
220
266
225
221
215
255
181
210
239
221
201
170
245
171
209
124
170
173
172
235
160
138
202
194
265
253
231
240
235
175
225
219
185
206
213
174
217
191
223
233
245
247
167
228
189
249
213
280
184
176
211
210
169
237
186
200
208
224
262
169
249
213
123
238
197
238
154
175
214
247
193
251
198
174
222
170
200
231
236
235
173
214
216
203
180
166
230
194
228
198
144
161
227
247
214
129
226
233
224
227
209
235
257
263
262
218
179
164
206
232
208
233
228
212
253
199
183
188
133
171
195
178
223
198
196
211
214
209
206
185
191
227
175
178
160
158
200
174
248
192
205
203
204
206
218
200
222
225
155
182
149
221
231
199
160
234
150
227
218
252
150
267
263
169
178
167
177
180
158
132
170
237
161
189
208
181
187
176
222
212
166
164
148
188
175
191
207
220
237
172
184
155
225
255
213
278
215
181
187
186
225
237
192
197
167
204
216
210
239
124
185
199
194
187
230
157
186
192
195
243
184
203
198
184
219
178
169
232
184
133
228
171
168
193
212
181
169
225
228
305
224
226
175
271
229
186
161
204
230
202
206
207
185
201
167
192
147
229
209
183
188
196
216
165
161
207
232
220
202
165
186
235
210
202
223
210
236
143
181
216
210
221
168
157
193
190
187
183
210
195
144
183
164
209
234
244
167
289
232
199
212
154
209
248
181
214
214
138
248
209
283
210
233
235
246
184
239
212
161
153
207
179
237
174
200
185
243
197
151
179
228
248
161
193
187
225
188
234
174
192
211
169
269
185
168
203
168
216
222
183
254
245
210
200
237
180
252
194
119
142
227
222
216
214
234
231
215
187
209
163
172
183
169
196
257
224
266
209
183
181
219
195
281
245
214
210
209
164
185
179
102
245
217
259
141
225
197
191
211
212
153
159
175
257
189
175
238
208
222
201
226
207
160
202
125
229
205
131
164
210
203
181
223
243
203
196
189
277
184
165
217
168
157
228
214
155
182
218
228
222
78
188
199
120
276
225
210
206
207
208
176
257
229
244
184
205
214
250
202
138
158
215
212
231
182
148
212
206
138
262
188
208
236
160
181
209
196
179
214
220
194
270
197
191
132
222
167
166
156
216
148
221
183
218
175
247
203
185
193
226
232
163
145
172
191
191
188
213
253
208
171
225
243
200
283
226
233
191
203
194
184
161
183
175
199
201
180
138
196
218
193
136
188
194
177
210
236
133
191
167
238
225
201
200
191
233
191
246
186
190
220
245
166
180
173
221
174
196
271
164
229
189
222
243
141
203
230
159
115
171
214
235
164
236
170
196
237
210
187
178
169
207
223
152
208
197
205
124
215
221
227
173
166
218
153
182
194
191
180
214
181
276
178
247
240
262
233
215
219
260
238
176
230
185
209
200
251
144
199
120
228
215
245
205
142
155
250
142
171
170
200
186
211
227
265
157
205
168
237
214
189
173
250
201
209
244
241
241
186
204
262
202
226
207
183
213
205
169
202
265
212
187
170
257
175
160
187
188
202
137
244
174
193
165
198
257
173
208
185
99
218
218
248
228
213
154
126
159
122
177
235
164
232
143
125
273
191
180
213
153
232
209
209
169
243
192
244
147
167
179
266
219
260
239
143
180
225
227
210
177
204
178
191
108
204
177
243
280
241
140
214
194
272
203
163
207
206
222
138
215
160
223
224
171
179
205
224
224
177
259
242
232
157
250
198
233
212
196
170
248
178
235
215
247
237
258
274
176
214
163
218
253
249
212
191
205
204
175
199
198
239
231
242
196
172
215
221
230
166
267
247
222
144
204
140
216
247
198
241
207
183
184
230
218
209
197
197
203
190
202
237
176
160
172
214
174
206
268
197
214
243
162
211
261
245
166
245
183
200
154
236
202
175
201
240
185
213
217
215
198
229
212
218
194
261
193
179
163
156
209
273
228
201
149
174
192
235
232
139
180
164
218
212
146
164
166
211
230
189
119
212
215
159
249
228
203
205
217
237
212
273
205
238
217
200
226
138
227
159
216
196
183
166
148
213
245
193
214
209
202
177
143
161
187
114
212
258
204
226
147
147
210
193
225
208
218
173
224
259
212
154
247
131
211
243
187
242
271
225
223
174
194
237
208
213
171
217
242
203
217
215
194
168
232
177
158
201
263
239
217
157
241
75
258
191
216
231
213
238
233
184
258
218
216
239
198
235
141
180
153
158
220
184
168
186
199
267
212
211
221
237
250
206
221
238
206
182
135
223
208
237
181
223
191
234
225
176
173
187
214
208
176
192
205
236
194
186
205
202
224
216
200
164
236
213
213
186
184
223
277
185
177
233
249
199
215
191
185
185
177
229
231
214
227
256
266
194
176
127
231
207
185
245
231
202
199
158
222
132
181
191
215
134
193
171
182
249
144
176
235
205
203
211
187
183
237
213
168
218
229
167
214
233
117
221
223
166
210
253
204
250
240
176
162
170
193
187
156
186
183
235
210
197
232
127
224
184
157
215
215
218
81
208
225
197
212
174
231
201
199
171
242
201
188
212
147
195
226
150
190
212
254
228
267
219
249
249
217
181
193
174
210
157
184
167
201
180
250
209
130
201
230
176
231
150
240
135
196
157
218
236
173
146
216
211
258
192
225
172
162
205
204
253
245
169
224
267
187
236
219
151
167
182
189
219
198
223
266
216
195
227
207
271
211
214
200
222
202
219
156
244
211
176
192
194
250
194
130
212
186
193
175
226
257
235
173
248
247
174
188
203
258
142
206
149
184
242
253
221
217
170
246
187
147
184
217
235
205
264
207
162
179
179
153
207
160
254
203
205
215
260
219
168
228
264
197
230
146
216
227
211
220
212
227
158
243
202
215
194
168
217
188
108
172
122
205
161
156
245
216
235
189
179
226
202
256
188
227
155
217
201
180
203
222
225
216
175
261
213
230
205
172
224
173
213
230
214
246
226
183
182
207
178
284
237
234
163
189
209
205
224
189
173
196
202
234
212
267
206
264
202
217
222
192
129
197
241
153
155
248
187
186
195
164
187
230
170
210
198
224
242
186
176
213
220
183
215
193
187
219
150
208
221
158
103
125
270
220
214
224
261
154
233
157
196
228
188
247
224
188
198
236
167
264
240
184
185
196
197
252
232
213
158
232
193
200
195
158
180
239
187
226
133
185
238
186
214
233
112
215
232
283
235
176
245
244
234
210
176
207
186
251
178
229
156
244
287
223
171
185
238
221
173
216
208
254
150
192
259
199
241
265
221
248
208
225
209
198
209
197
165
205
205
167
141
280
174
164
219
236
275
176
214
182
216
248
220
189
168
218
200
200
198
260
224
261
236
185
196
211
228
217
172
208
215
162
179
207
232
187
194
162
263
269
234
215
194
235
204
209
203
174
226
188
203
199
244
190
246
217
219
170
198
224
158
222
213
165
161
155
205
220
182
187
195
208
137
236
208
224
217
280
184
174
293
218
192
168
214
198
248
207
189
192
206
210
152
224
171
152
178
208
189
237
193
180
210
189
202
175
216
214
200
198
181
183
193
160
135
221
185
208
202
204
151
235
155
205
216
248
171
203
189
200
159
255
163
186
230
185
166
156
228
190
163
160
247
127
210
186
235
215
213
192
208
243
178
198
179
166
182
194
184
230
166
247
225
198
167
190
239
193
131
256
138
210
187
162
147
192
240
197
162
179
152
187
179
225
185
245
246
232
181
263
185
183
149
130
209
191
146
197
154
220
193
240
153
210
228
161
194
196
216
185
253
167
217
161
222
215
212
204
222
223
189
245
190
185
203
149
173
202
214
189
235
184
196
211
196
277
185
195
151
187
178
214
180
209
172
199
181
171
274
90
223
188
176
188
212
183
165
152
171
203
269
260
221
242
175
210
249
191
148
117
166
250
169
259
159
212
188
173
205
184
188
224
140
199
107
229
200
220
185
140
190
174
210
193
250
137
226
204
231
219
198
165
152
261
212
149
239
239
173
195
233
245
261
209
250
173
171
199
206
157
219
161
212
159
223
220
192
184
170
180
175
272
205
199
190
204
202
186
129
232
232
245
164
117
241
151
202
192
196
208
226
219
188
253
214
213
159
125
211
177
137
251
162
220
228
257
215
171
192
260
127
214
198
164
177
176
216
177
194
180
227
237
158
180
224
220
249
238
204
177
200
225
195
174
195
198
232
211
243
236
175
181
196
192
214
238
244
178
219
161
209
181
186
221
183
215
257
166
208
247
186
209
222
229
201
174
170
119
187
125
199
232
201
233
186
235
187
207
250
247
193
211
228
239
131
232
173
149
158
168
152
221
229
236
168
160
226
307
199
210
220
198
209
127
123
252
159
203
219
244
248
140
181
249
218
183
160
170
259
171
187
251
240
159
199
196
213
171
199
179
201
176
210
186
274
166
137
171
141
200
204
232
254
182
174
232
197
171
154
108
197
172
187
197
238
194
198
136
197
201
231
229
177
197
194
220
163
237
211
252
166
202
210
174
161
179
165
207
228
219
240
219
164
243
264
184
194
184
195
167
198
224
194
204
275
176
239
186
219
156
227
223
200
212
236
269
204
256
186
212
157
175
130
223
173
177
187
204
246
242
178
169
201
207
151
149
241
175
165
151
113
128
184
187
178
236
178
147
156
202
147
169
195
196
123
176
184
229
232
256
206
191
181
185
162
236
172
237
179
276
204
252
273
281
219
200
221
209
234
169
209
196
190
210
204
246
247
195
172
257
202
195
193
243
209
220
198
193
205
145
179
231
234
181
156
142
194
215
188
232
205
226
226
227
192
226
223
188
224
228
121
202
257
207
233
276
225
217
178
245
180
201
209
183
245
179
229
218
173
142
129
213
188
182
237
236
224
195
183
163
172
159
168
280
199
167
229
222
225
234
142
213
129
219
182
218
139
204
204
182
255
176
243
165
172
150
236
130
201
231
180
237
183
190
197
234
256
107
204
162
204
199
205
159
237
162
207
154
242
262
135
197
194
207
204
186
216
128
157
291
203
209
226
261
201
236
260
221
196
233
176
208
244
228
196
240
191
195
231
211
179
215
133
192
208
183
176
154
201
234
208
155
178
218
169
169
146
230
211
216
163
210
222
161
186
189
235
246
134
125
210
207
188
217
203
160
235
215
185
270
203
237
180
231
172
178
149
228
175
174
204
158
184
179
232
158
149
245
209
197
175
201
205
116
212
193
238
219
140
191
159
233
219
165
185
202
175
160
204
197
185
254
173
193
194
216
251
198
218
199
172
175
212
235
221
172
203
194
148
179
194
162
255
194
232
218
213
183
235
256
229
202
189
207
210
208
188
226
218
153
180
186
173
232
192
179
176
169
224
187
171
221
218
189
195
199
157
238
207
151
196
180
211
162
161
113
193
152
168
233
240
202
215
240
221
169
162
174
187
182
216
208
183
245
199
191
214
215
180
159
138
219
277
177
270
190
198
249
211
229
212
182
218
190
261
177
259
181
158
222
161
192
239
199
125
214
227
236
238
184
140
210
220
217
212
161
193
189
246
151
239
157
186
250
122
217
182
232
230
239
235
227
194
199
192
252
212
159
201
146
248
193
244
179
276
164
205
217
183
170
176
169
186
202
179
196
258
172
180
295
253
225
211
213
275
273
204
220
115
192
211
203
186
250
236
253
211
140
260
143
191
152
267
210
203
205
175
231
237
223
240
193
221
184
215
161
203
190
164
225
190
194
220
174
216
184
240
212
201
160
180
141
159
233
143
218
143
178
194
281
126
240
204
273
217
218
144
195
223
269
198
222
142
140
192
200
124
274
203
168
204
205
178
206
239
219
221
237
183
241
243
201
198
264
173
158
172
182
213
218
201
166
197
156
240
220
221
162
188
203
265
147
175
202
236
222
199
213
209
211
189
181
183
245
171
218
228
228
209
253
245
200
190
225
191
223
231
158
226
289
194
164
193
218
197
141
208
206
165
138
240
180
194
194
229
222
228
243
150
219
195
174
195
214
189
241
181
268
203
256
151
229
244
207
237
231
195
157
144
214
184
204
180
233
226
201
233
200
153
195
202
202
218
155
147
220
226
212
242
165
168
170
219
222
239
180
188
208
180
202
172
232
202
212
157
204
165
199
179
156
221
238
246
230
195
182
211
234
163
226
233
190
184
254
209
130
258
202
208
171
172
123
218
172
172
216
181
237
227
209
192
174
190
216
209
235
182
162
182
158
138
187
187
202
192
193
191
157
215
176
122
176
189
182
264
251
235
229
194
203
218
233
145
168
227
241
207
194
190
211
237
201
192
183
141
222
163
155
176
194
148
221
206
227
180
234
223
184
233
194
231
154
289
214
181
214
206
211
280
208
199
226
196
278
145
183
230
187
205
208
190
175
231
205
250
167
234
203
217
186
188
174
128
125
234
205
182
165
188
153
203
155
173
246
192
225
195
181
211
171
158
220
185
194
149
186
206
214
168
192
174
195
251
216
246
170
164
264
185
170
189
191
182
180
181
229
205
259
165
231
170
230
203
231
201
257
165
182
178
300
184
192
113
220
175
131
155
201
259
248
181
210
180
188
182
208
175
214
175
178
226
194
271
189
213
223
167
229
104
135
133
165
210
248
163
207
238
190
199
206
158
175
228
249
109
211
236
202
167
233
212
132
176
145
249
203
140
178
151
258
192
232
167
209
183
203
179
261
173
193
183
190
260
179
196
194
222
168
239
217
237
194
190
160
206
196
229
224
133
116
146
170
203
254
213
142
272
267
176
213
175
187
171
200
213
215
208
234
233
217
215
215
182
205
246
222
175
163
180
233
169
149
172
242
179
254
162
182
240
148
168
212
225
252
177
125
190
193
226
268
228
227
184
174
172
204
209
210
242
150
228
184
244
220
172
211
236
201
168
221
253
188
216
188
136
245
215
200
203
161
239
233
243
230
143
194
233
214
240
214
186
196
240
184
196
228
212
260
233
191
272
220
181
181
256
155
139
147
187
214
116
173
162
194
179
234
152
194
227
222
181
199
172
181
236
197
223
242
201
207
177
233
203
217
180
170
166
216
215
208
280
235
172
185
265
199
214
244
188
181
191
227
194
203
211
190
210
190
180
194
195
204
226
172
153
250
172
236
177
181
177
158
181
162
221
175
204
172
203
240
163
257
155
203
208
200
165
192
266
289
124
189
198
243
186
200
134
225
216
201
185
189
189
262
179
189
175
182
216
170
179
200
193
187
169
169
193
161
171
200
181
205
234
188
227
134
191
193
172
262
240
158
184
237
215
212
206
201
165
126
203
141
227
170
247
216
177
209
200
168
205
156
234
142
264
162
225
241
224
183
186
170
151
169
161
190
151
240
220
231
196
236
187
193
192
191
155
190
213
245
223
191
230
235
271
188
225
179
195
177
224
167
245
172
157
225
244
180
186
203
206
232
251
154
195
225
206
171
261
215
141
206
197
242
229
170
156
166
238
231
215
193
174
178
200
231
160
200
228
147
219
242
197
245
189
226
247
210
147
178
192
143
206
234
209
166
178
142
219
160
194
230
139
213
179
240
157
211
190
203
157
171
214
207
225
170
151
249
151
243
154
169
295
183
254
219
201
218
203
208
230
268
156
196
203
189
169
226
220
238
217
147
196
191
172
242
211
227
236
214
191
134
219
250
196
237
206
273
183
256
208
181
252
197
187
250
171
191
129
245
190
184
190
173
221
211
167
189
168
223
189
246
222
154
232
170
210
208
167
226
184
183
268
217
254
180
216
165
211
176
200
181
175
234
207
163
245
172
205
175
247
238
194
226
229
168
239
197
145
183
165
203
182
180
181
138
261
233
244
169
196
175
155
177
209
192
224
181
160
191
187
182
202
202
224
198
201
208
188
180
226
281
154
225
214
197
186
215
218
244
193
140
158
154
252
176
186
192
245
221
170
245
235
179
229
153
190
247
191
234
217
137
152
189
221
211
229
152
160
174
194
222
221
239
193
216
98
145
138
143
186
176
237
170
199
208
169
182
202
201
145
193
203
168
229
233
154
181
212
165
215
201
188
196
207
168
200
242
244
240
159
196
185
195
180
196
204
261
255
267
251
171
193
212
221
232
223
226
156
239
208
210
237
203
194
229
222
237
198
188
148
200
212
239
239
225
178
222
194
208
184
200
121
214
198
198
230
205
204
230
222
235
175
225
135
200
251
242
176
201
197
218
188
222
196
193
183
172
209
204
162
226
235
237
250
159
174
161
168
268
253
212
191
225
198
249
212
271
243
196
170
237
197
171
175
145
218
249
195
163
219
139
165
242
209
202
180
218
176
170
217
194
219
197
175
166
170
190
170
242
240
202
265
160
210
196
196
172
219
186
193
193
145
227
177
176
184
174
115
186
169
210
246
195
190
241
180
201
201
167
221
151
199
148
151
206
205
193
220
142
235
177
165
199
230
214
143
179
248
215
262
208
222
227
225
216
244
189
189
250
181
231
234
184
166
203
240
199
208
233
215
250
140
210
213
172
220
126
211
202
233
232
175
166
159
221
206
200
220
208
141
236
216
270
164
220
223
180
135
228
196
241
233
203
216
236
148
122
235
200
252
217
221
262
170
199
183
194
218
178
216
215
200
180
210
196
217
218
237
275
201
227
174
182
281
184
203
127
237
222
174
209
173
214
176
226
247
244
249
165
186
266
152
239
240
156
173
214
207
228
220
174
189
169
207
203
207
220
151
197
259
232
182
145
263
255
189
151
147
209
216
189
145
204
253
179
228
219
164
207
183
193
203
221
229
203
216
219
190
233
189
234
223
179
228
185
214
204
223
176
211
187
217
251
234
195
202
224
201
183
198
187
168
157
240
140
165
181
254
156
211
110
165
186
173
189
245
242
196
155
272
119
244
197
244
222
159
239
194
160
193
214
153
199
219
178
267
191
257
245
197
192
145
193
160
291
249
229
258
259
121
197
177
247
208
242
206
236
187
171
200
182
251
184
222
237
188
228
211
169
155
214
192
206
187
174
190
185
211
188
221
212
186
235
156
165
221
230
172
225
217
205
194
176
155
213
224
218
200
264
191
187
220
164
175
123
210
169
162
197
155
151
266
273
180
173
173
192
225
197
177
206
207
222
159
227
262
116
235
224
203
219
175
205
121
171
240
186
138
203
210
187
214
156
249
173
250
219
181
230
195
202
190
188
137
218
248
187
157
165
244
251
247
184
200
181
246
237
218
122
234
230
161
219
189
258
229
163
155
197
207
181
220
218
210
205
214
250
174
221
190
232
204
282
156
232
174
223
172
189
238
184
187
194
207
236
221
169
190
215
199
193
177
159
222
170
152
166
176
199
202
164
202
163
222
183
194
279
196
155
241
197
193
116
226
195
210
229
189
194
243
233
187
170
214
175
203
243
207
197
191
183
183
282
192
242
189
211
189
203
176
223
199
220
256
177
175
231
236
138
252
231
168
244
192
164
241
237
159
243
178
215
195
271
209
204
229
144
211
231
207
230
215
191
256
183
221
217
126
181
204
204
174
212
145
179
162
254
200
222
205
254
213
189
145
215
148
227
229
251
224
134
201
228
178
218
162
224
215
208
214
191
206
245
195
276
169
213
191
204
194
218
163
147
204
210
247
204
172
215
197
146
186
226
212
168
156
190
147
166
173
235
179
172
256
175
240
169
232
255
215
230
196
142
216
226
245
176
192
198
205
215
193
156
231
207
221
169
236
223
181
260
172
181
206
177
169
189
192
226
179
190
250
206
239
284
131
202
153
213
148
236
181
239
211
165
179
216
234
170
217
208
194
241
200
211
190
190
218
133
185
205
149
211
152
213
164
129
220
190
191
222
179
131
234
142
189
191
201
191
187
245
175
176
227
177
224
186
213
164
202
189
228
200
193
224
231
171
178
192
171
165
212
193
181
247
151
177
170
210
221
137
162
176
206
265
225
233
167
219
214
193
233
213
186
187
212
152
269
211
224
202
174
146
218
210
246
252
175
205
131
183
123
256
212
187
229
204
174
237
196
183
209
231
238
241
183
206
228
219
207
222
181
145
228
157
164
168
147
193
114
229
225
178
183
184
239
100
188
183
161
207
173
197
275
150
148
245
216
227
162
231
190
181
230
207
168
208
216
166
266
169
270
216
241
222
186
209
196
235
244
142
198
203
218
189
184
174
189
218
169
189
206
200
130
185
232
220
186
184
218
122
175
269
241
228
251
174
173
246
192
227
180
171
229
129
192
238
226
150
200
227
189
182
194
192
170
118
201
253
197
201
207
137
223
234
190
178
230
264
171
211
206
190
160
235
218
215
165
156
193
229
205
189
235
251
229
203
178
211
228
229
219
201
246
209
174
172
210
199
267
246
148
169
183
208
250
199
170
159
152
257
144
197
200
172
196
204
178
201
229
218
216
176
160
150
211
164
214
224
187
215
169
213
164
243
128
149
164
176
265
255
250
175
170
193
214
214
198
118
206
242
189
183
166
188
210
162
225
168
203
261
198
217
179
241
194
240
220
169
208
170
225
218
143
206
197
218
194
218
244
196
228
186
164
187
183
192
186
206
206
181
148
193
204
229
258
184
147
192
208
194
210
221
179
188
198
229
167
243
208
243
174
190
259
236
194
176
194
158
202
190
214
252
174
151
204
183
159
257
200
146
137
210
168
205
180
135
237
188
235
204
241
235
204
186
255
215
166
136
162
211
175
236
200
171
236
154
214
233
195
162
165
222
130
183
227
225
261
211
139
225
249
251
220
254
201
173
245
194
210
195
193
243
221
186
236
180
201
191
227
215
248
196
217
193
137
172
134
191
183
163
206
193
224
253
223
184
231
207
188
165
204
206
194
183
193
204
143
176
165
170
237
208
147
178
164
260
214
180
216
207
194
172
139
188
171
209
217
169
177
242
183
151
199
217
170
192
203
197
288
178
204
266
168
193
205
237
232
186
157
160
276
206
165
197
210
177
171
143
202
210
168
207
201
204
217
187
192
177
168
212
191
252
268
280
169
166
191
150
197
195
194
176
235
185
209
215
192
225
214
202
214
236
203
221
207
163
175
203
191
193
130
179
172
203
129
290
256
162
207
232
208
239
251
156
165
54
172
229
190
208
224
239
193
188
190
183
206
169
176
256
143
192
214
258
225
193
187
198
166
128
203
158
163
194
207
183
218
205
204
236
191
200
139
229
184
172
175
232
162
161
216
188
149
197
206
184
204
170
194
248
221
248
200
224
192
138
182
210
121
216
180
230
244
187
200
203
226
142
249
199
185
225
207
221
177
207
189
163
218
243
219
212
214
153
238
195
179
214
221
200
194
165
182
231
207
208
210
268
228
178
226
207
239
233
239
141
217
148
161
236
181
138
216
177
160
160
201
237
146
208
213
211
171
243
219
236
176
202
121
194
140
128
150
201
231
153
210
203
230
244
217
182
174
211
193
260
227
210
198
273
200
184
210
201
215
224
173
174
212
207
133
310
230
233
242
212
190
191
270
224
173
194
195
274
181
234
211
174
180
187
215
153
181
193
232
156
179
248
199
174
256
209
213
239
199
207
231
221
237
210
185
180
223
239
216
152
200
195
225
265
170
220
133
187
170
150
252
211
188
142
204
197
184
212
211
260
131
198
185
225
233
192
240
138
237
242
239
152
202
173
189
177
229
265
164
139
180
197
223
184
124
235
205
200
104
239
235
139
123
192
217
163
199
217
198
151
196
213
168
206
173
195
232
166
205
195
189
237
245
230
228
245
189
249
157
132
186
179
224
218
154
192
200
155
188
196
173
177
210
197
183
152
258
204
228
188
218
249
182
204
245
216
149
256
175
242
214
235
204
206
162
191
148
186
181
217
179
220
210
266
241
210
210
170
184
195
217
210
192
197
118
226
184
171
196
168
194
191
186
181
211
198
229
183
182
243
177
160
263
170
172
144
272
208
195
204
247
238
171
230
224
143
211
215
219
245
198
206
258
232
197
171
162
227
240
153
203
258
150
215
210
172
184
185
238
253
134
206
250
217
243
272
156
218
152
223
209
247
179
185
93
140
200
231
195
211
231
195
214
189
163
137
146
163
198
188
216
242
155
161
202
225
261
242
205
209
203
201
140
132
228
186
190
214
222
167
199
172
199
261
172
203
178
224
166
182
156
183
210
177
196
172
220
186
182
243
262
196
223
202
211
197
220
263
214
174
181
200
192
155
182
160
207
129
260
202
126
195
228
137
153
233
192
230
221
233
146
187
184
226
183
187
154
184
178
203
144
146
240
154
235
228
167
190
223
184
180
208
228
197
220
229
157
250
221
182
174
164
211
201
208
188
220
200
186
165
207
146
156
214
201
200
159
255
225
130
168
167
208
236
174
230
242
174
203
213
148
230
231
179
184
122
192
218
140
234
218
170
221
171
245
169
196
195
109
234
228
170
207
166
194
208
143
218
210
156
219
199
197
286
164
192
185
210
201
151
142
203
211
210
189
215
176
186
232
158
196
238
178
182
167
194
159
231
264
198
270
191
211
239
242
214
157
215
195
196
133
179
168
246
169
188
160
181
143
187
211
223
228
233
214
204
201
183
222
213
252
240
216
207
174
183
225
158
199
206
170
237
133
181
246
205
205
183
207
248
87
188
254
256
218
199
187
220
235
198
194
187
160
163
222
197
137
116
231
204
187
136
159
225
179
227
259
224
206
205
222
191
235
232
267
175
227
292
196
207
237
199
176
192
196
219
275
200
230
205
168
231
130
194
181
192
312
224
188
248
187
202
208
212
169
194
217
268
198
198
117
231
195
201
230
186
221
203
177
207
161
227
217
148
196
227
216
170
209
176
213
233
212
207
248
276
216
237
228
143
243
150
194
219
217
171
184
166
218
222
212
207
216
267
190
204
263
175
241
226
221
231
199
232
224
195
213
223
214
164
270
230
224
174
225
199
277
235
257
175
190
244
196
150
141
214
255
239
179
185
241
236
183
178
237
246
223
223
217
185
136
189
218
157
205
229
177
183
232
161
169
184
254
193
248
243
136
225
162
192
222
245
226
173
208
204
173
173
191
152
185
274
216
172
181
193
247
163
198
178
130
240
203
182
221
219
162
164
214
245
141
180
248
209
165
223
229
234
271
207
167
169
194
191
181
162
203
213
201
182
176
282
154
212
128
191
200
239
142
240
183
254
204
173
193
194
155
179
207
252
206
229
208
256
202
177
148
181
149
199
164
270
242
171
212
166
184
116
177
197
193
225
194
180
254
260
186
180
200
177
234
197
224
194
200
164
217
158
245
240
192
172
173
169
235
176
275
211
204
185
194
234
196
172
191
222
201
272
228
191
274
211
223
179
210
214
206
196
195
229
196
151
210
208
250
261
195
163
172
178
203
181
149
244
195
143
180
196
168
224
248
179
211
207
228
158
191
222
243
195
222
183
181
206
193
171
204
148
239
175
180
203
204
118
155
216
193
175
214
189
199
259
259
172
238
181
229
185
208
156
180
183
177
209
216
209
191
221
201
212
194
169
192
261
187
159
186
157
162
167
196
231
190
191
195
209
165
203
200
190
226
206
181
207
242
198
179
188
205
144
219
250
212
140
159
165
279
261
174
251
227
168
253
234
198
167
221
237
192
132
163
177
183
183
243
252
226
204
237
223
231
180
204
179
233
223
232
163
184
239
230
188
210
192
212
173
222
170
202
212
218
249
222
139
184
168
225
243
192
194
209
233
225
168
194
234
222
231
225
258
202
188
183
160
241
179
185
205
160
181
231
208
169
210
235
180
194
174
228
224
138
160
195
192
177
207
204
215
176
179
155
223
278
188
185
186
262
210
174
230
199
186
148
212
239
245
179
158
189
162
151
169
227
162
223
196
155
223
224
224
192
209
184
188
169
169
208
196
256
134
248
203
227
281
214
151
180
197
208
249
226
214
194
244
208
190
268
109
175
209
174
204
208
217
189
189
159
186
173
187
180
187
233
216
199
197
210
224
133
195
176
195
226
105
214
202
196
214
195
189
244
173
150
220
209
188
241
205
252
192
211
185
208
203
170
169
209
236
230
245
140
226
237
237
249
199
175
197
198
215
178
140
204
133
161
138
257
217
203
228
248
233
179
221
191
209
220
193
187
223
189
252
122
192
189
244
218
192
235
232
180
166
165
244
242
162
183
199
208
265
185
175
140
218
181
177
220
175
200
118
242
171
221
132
235
180
189
168
133
239
208
204
170
157
176
197
234
164
251
211
230
178
245
162
263
188
143
132
235
208
156
244
179
232
200
223
157
251
190
122
205
204
198
241
239
144
185
215
225
166
157
210
259
183
185
286
131
213
203
144
191
236
192
173
253
185
201
149
185
258
228
183
173
202
130
214
217
180
220
166
208
234
140
139
160
179
205
203
166
226
203
241
206
120
156
195
187
140
198
206
207
254
199
163
220
151
170
230
159
213
247
188
175
218
252
223
222
158
226
230
193
251
121
220
189
173
247
227
198
181
246
189
178
218
214
206
186
231
166
243
187
225
235
194
189
165
207
161
183
198
162
206
133
186
199
202
236
234
210
178
199
195
158
117
175
148
204
190
288
189
201
227
168
188
232
186
212
223
178
189
228
237
176
200
244
161
126
216
225
168
226
266
229
189
199
247
194
180
258
140
203
246
219
161
173
222
228
196
202
230
160
202
169
209
222
174
175
229
221
207
181
166
264
161
247
225
234
197
160
217
209
216
227
185
182
217
194
189
241
245
193
96
249
212
196
179
143
202
193
183
206
211
246
273
225
213
251
211
301
231
197
258
193
175
218
235
224
236
150
180
158
197
230
196
181
177
160
184
222
214
169
188
170
167
243
228
210
186
167
160
200
265
168
273
180
208
252
221
150
291
192
169
218
208
196
161
163
129
176
175
151
229
289
236
220
198
212
241
216
192
224
256
176
137
251
250
173
187
214
249
239
197
168
198
234
182
115
267
210
204
247
145
157
206
185
206
183
210
221
234
204
239
241
217
180
210
245
193
201
210
202
237
233
249
191
242
185
185
225
196
190
202
204
158
246
217
189
228
161
232
201
214
196
155
229
232
285
191
208
217
242
134
196
235
233
124
218
197
202
132
204
246
212
183
234
200
217
193
229
210
223
226
170
196
204
191
219
217
191
202
200
243
184
168
229
192
220
184
197
234
158
220
242
225
146
212
193
212
157
186
172
214
218
220
262
239
246
204
213
213
164
271
196
194
149
183
217
215
156
193
254
173
190
115
230
262
150
260
147
212
155
201
228
251
182
184
207
220
223
177
295
152
166
205
182
204
190
186
220
203
230
223
212
165
227
239
257
182
214
183
218
208
187
231
190
211
241
246
197
215
203
206
183
193
182
182
246
205
227
191
198
248
238
146
241
246
215
235
216
204
141
232
200
187
186
171
144
141
188
224
232
246
195
178
191
212
211
146
168
272
200
177
211
216
237
124
159
150
197
170
179
193
106
257
201
202
185
208
197
157
196
207
152
156
171
168
190
198
204
174
167
185
233
188
218
196
231
252
222
251
180
191
225
224
264
164
197
212
179
231
219
178
228
213
221
221
234
180
233
230
149
221
191
198
175
226
241
180
199
166
196
185
218
254
178
165
225
190
222
195
166
220
205
188
210
219
167
97
235
159
240
232
152
158
197
223
179
210
267
151
264
191
223
200
199
219
231
179
236
178
226
219
109
227
237
267
201
158
279
193
203
182
227
163
242
207
205
160
149
232
219
208
161
176
163
238
224
179
198
212
212
239
176
156
245
188
182
173
251
172
246
203
198
242
136
138
172
194
190
230
198
168
181
204
243
222
253
156
248
205
223
237
152
221
175
200
222
198
246
207
254
236
240
225
207
190
202
177
231
226
206
170
190
186
216
183
141
190
248
260
242
243
226
204
241
214
213
145
195
223
226
213
189
195
193
224
245
233
200
238
196
185
219
211
184
212
189
217
177
216
138
271
173
140
196
251
189
122
169
256
222
223
210
231
202
202
186
157
157
253
224
219
188
226
221
193
176
186
235
198
192
259
248
232
149
223
227
155
265
211
223
193
167
175
203
215
224
185
271
169
208
154
172
172
155
230
232
208
142
148
224
223
146
217
221
227
256
227
232
252
254
111
193
210
213
163
173
207
194
203
223
174
214
281
193
245
105
191
186
213
207
212
248
154
196
212
155
226
250
190
236
234
198
253
179
215
250
238
166
213
179
183
234
215
209
208
212
180
209
209
218
228
191
241
238
155
121
215
195
212
201
192
225
244
173
200
254
211
194
210
206
198
191
180
236
199
185
239
181
236
236
206
188
212
224
170
175
193
226
178
184
253
197
245
194
202
205
201
194
217
230
191
183
274
199
207
119
193
173
215
253
262
173
252
192
195
182
183
198
169
224
234
203
165
196
203
147
233
252
187
246
111
225
211
216
226
208
238
185
226
181
181
184
132
158
179
172
212
215
159
195
214
187
189
148
255
240
179
184
200
156
215
226
213
255
267
221
213
185
211
152
228
185
178
200
198
203
199
183
172
208
207
212
254
114
198
122
235
207
229
250
149
229
227
142
126
182
130
183
187
195
162
184
261
245
220
196
144
202
153
193
223
211
246
218
222
193
258
166
225
231
203
191
259
198
228
150
168
224
225
198
180
176
222
212
266
209
174
217
194
181
152
184
220
247
234
182
193
210
222
204
194
209
207
153
241
182
212
248
188
222
242
220
143
230
226
205
210
191
159
136
151
236
230
171
219
181
233
190
151
201
187
189
191
173
195
207
227
182
201
189
175
142
209
177
190
169
209
194
239
205
135
174
221
243
176
213
183
212
202
193
269
162
183
211
231
185
202
208
156
163
227
204
227
158
189
178
168
298
267
225
193
191
185
227
152
172
267
163
217
229
140
220
202
160
201
200
142
239
178
212
262
180
191
146
198
153
188
171
248
205
201
177
155
155
144
216
194
231
195
160
246
184
176
136
212
250
220
170
200
195
184
261
226
258
245
249
177
210
196
189
124
208
196
210
230
252
164
163
214
120
198
218
184
159
213
216
135
169
144
163
192
223
221
217
181
208
214
196
194
158
223
222
222
137
212
173
212
261
208
163
198
232
205
192
214
198
189
205
162
247
176
233
162
237
260
245
198
223
188
217
166
273
185
186
188
171
174
178
193
149
152
181
213
195
186
220
204
202
234
129
209
173
198
217
217
226
205
252
237
207
213
238
177
266
151
178
233
187
201
230
137
204
192
190
223
207
189
203
266
157
134
239
208
215
161
188
157
192
218
205
214
236
218
141
231
198
185
216
158
258
185
185
192
216
196
170
171
210
178
237
194
170
173
207
185
204
202
215
224
221
170
156
207
212
238
165
212
221
156
182
173
160
235
172
133
226
209
195
188
137
224
231
203
208
198
206
267
168
175
237
218
210
181
202
164
135
200
255
192
241
164
181
195
187
154
176
171
211
145
206
230
265
185
183
216
210
245
159
180
188
174
207
227
214
231
228
240
199
185
109
228
204
175
266
226
207
240
173
230
153
269
218
187
209
255
203
173
235
191
224
206
216
217
189
156
177
238
236
211
165
142
208
208
214
198
163
204
258
220
177
132
206
182
255
229
263
175
167
196
156
196
197
189
199
101
229
234
194
159
197
159
164
179
207
208
178
191
178
196
175
269
162
221
268
225
161
201
172
215
179
242
157
206
188
203
221
111
192
184
171
240
185
215
207
173
187
201
165
191
137
236
230
238
233
142
153
194
191
237
201
234
267
269
190
199
245
198
144
193
212
216
248
218
153
274
248
138
234
185
283
232
193
162
198
228
143
199
265
191
189
261
211
222
218
232
214
272
233
196
186
208
138
237
157
212
148
197
239
197
197
207
187
190
199
181
220
194
169
181
206
271
208
195
210
178
213
281
208
260
171
171
191
146
193
175
212
142
183
245
187
204
250
232
250
109
199
170
238
246
225
213
241
180
178
255
245
229
149
252
171
166
217
190
190
211
165
171
164
146
196
226
248
167
230
167
219
177
210
144
186
210
227
196
238
193
183
213
238
180
156
200
225
175
240
208
164
203
123
200
193
247
216
181
197
232
282
240
182
232
241
241
172
213
234
200
154
181
170
174
250
225
175
259
225
221
251
202
231
97
160
147
181
187
264
180
190
194
232
218
217
209
205
158
235
156
208
173
261
251
198
189
225
169
222
215
177
174
214
185
215
218
225
217
159
232
138
176
196
218
213
200
212
138
215
184
227
128
136
214
135
231
236
231
213
167
160
147
175
204
191
247
180
211
165
238
162
195
190
189
263
229
226
151
108
185
211
169
148
200
242
249
217
187
237
161
242
220
200
163
281
166
224
198
131
220
207
183
216
201
177
159
214
130
229
278
237
187
181
163
232
216
190
200
208
143
217
230
239
208
218
209
204
124
236
228
226
211
201
178
164
236
224
173
237
195
112
179
221
198
183
164
166
192
280
180
209
183
184
148
252
181
169
246
166
215
165
229
241
195
179
216
239
237
239
240
233
213
198
210
177
154
196
188
219
191
227
198
187
204
242
208
211
144
206
191
214
199
158
191
211
260
238
158
200
162
172
240
193
216
231
232
251
204
197
232
234
221
256
171
253
254
181
159
182
214
194
264
210
207
249
207
243
170
192
198
209
142
173
210
189
165
219
239
161
227
242
205
197
236
215
153
192
228
216
192
232
171
246
135
207
198
195
207
214
205
229
185
212
231
209
155
227
152
138
244
181
251
240
212
239
195
217
223
222
198
242
187
192
194
172
257
216
219
228
236
201
225
207
197
254
214
187
213
158
238
214
186
206
157
222
270
107
106
232
126
161
158
218
205
246
232
187
143
153
171
207
232
259
254
222
165
198
220
208
189
200
176
214
199
191
189
157
254
179
173
155
225
188
229
167
217
225
211
220
194
231
221
218
173
213
219
191
160
164
181
204
211
218
253
263
181
185
159
210
218
177
203
169
237
201
207
239
204
228
133
224
216
138
231
183
170
215
222
188
266
195
178
178
216
242
236
209
164
248
208
166
197
235
211
191
204
172
177
181
247
155
194
216
182
216
172
257
250
215
234
193
232
199
193
206
162
201
165
201
193
193
219
226
173
164
148
148
217
119
249
193
261
165
192
215
223
237
224
234
224
168
186
185
188
210
221
246
193
179
127
149
244
194
260
151
139
262
150
191
196
224
154
182
191
176
231
237
152
169
245
199
189
242
185
216
284
250
186
199
170
193
191
226
164
237
128
194
228
235
192
237
182
230
173
209
189
254
195
193
245
223
274
203
234
171
239
167
170
251
137
238
187
236
158
201
214
228
213
255
151
278
197
243
208
201
213
170
213
172
200
217
193
209
217
226
221
175
206
179
174
230
206
188
240
185
192
203
146
154
122
208
207
259
188
194
169
194
220
216
208
187
208
175
174
235
214
181
170
212
151
275
219
212
248
262
259
206
203
187
246
236
266
152
137
219
236
235
142
148
222
143
197
197
216
248
254
177
192
255
219
221
216
210
198
185
190
170
206
181
207
219
211
258
251
196
182
205
196
200
232
194
187
217
194
142
276
161
155
214
173
226
227
216
214
198
175
215
177
233
177
194
202
262
217
182
261
240
211
225
184
237
208
127
222
199
179
242
179
248
106
198
170
268
132
124
220
162
185
180
183
220
196
210
183
184
181
144
205
138
140
217
198
231
263
238
191
173
180
229
223
238
216
155
210
202
165
250
242
224
192
159
206
247
201
171
125
225
245
211
199
242
155
168
130
203
171
156
183
197
207
188
191
183
264
172
200
152
235
253
215
177
197
195
133
151
136
238
171
192
196
145
186
192
230
233
168
182
221
187
206
190
231
149
268
131
185
238
213
253
157
243
192
180
222
232
276
159
215
170
178
191
161
211
206
121
203
251
200
241
219
169
196
273
234
193
235
208
192
193
108
193
182
184
253
188
203
175
217
160
214
217
181
248
239
266
255
179
192
248
133
247
160
202
219
199
191
239
192
271
164
217
209
222
219
185
208
246
249
190
162
188
177
155
246
248
245
216
170
279
180
159
222
148
195
242
200
149
211
211
270
199
246
152
182
134
172
278
276
226
188
177
192
182
240
207
150
160
190
203
202
212
212
190
234
246
224
201
230
180
279
241
222
157
168
224
133
195
228
167
200
238
206
230
204
187
226
191
203
163
183
262
210
193
145
189
240
168
159
194
223
219
265
174
205
212
221
192
191
112
254
282
161
178
221
191
180
237
196
224
212
193
242
221
193
206
191
178
200
233
268
234
206
137
236
262
202
213
167
225
173
210
225
274
226
160
181
230
176
238
262
243
191
165
255
241
256
181
224
187
201
218
155
188
158
231
147
187
186
144
214
173
166
239
122
200
229
239
179
153
207
219
200
268
182
236
182
222
207
179
181
181
182
209
191
188
205
142
122
172
215
212
185
257
152
153
168
216
169
212
180
177
199
187
217
155
211
190
199
217
239
195
238
226
177
160
199
185
197
161
135
205
141
180
210
214
197
229
179
172
196
126
176
121
185
211
245
169
250
243
162
263
159
233
216
189
226
133
250
161
199
223
238
201
233
192
174
174
170
184
221
238
151
183
149
145
182
222
198
160
243
195
227
176
247
200
207
208
200
160
178
186
152
215
164
189
107
192
127
187
201
246
185
198
230
207
231
178
185
194
236
217
227
210
208
172
233
195
168
217
196
234
161
256
165
253
194
189
178
199
181
227
185
156
222
225
209
224
213
214
196
212
204
181
211
188
162
179
178
223
161
235
175
251
204
228
263
186
213
215
199
195
173
197
170
214
150
241
214
218
224
196
214
179
165
219
142
182
185
152
233
136
166
251
231
223
231
186
188
181
162
249
148
141
248
183
167
116
235
240
187
170
160
167
124
202
220
245
225
190
282
142
155
171
158
156
161
187
152
194
167
234
203
228
268
209
199
194
166
175
157
215
238
229
145
188
152
198
192
208
173
155
241
195
206
164
244
212
189
211
228
242
171
200
236
146
259
207
240
183
227
183
211
232
215
217
213
223
250
184
207
194
186
170
197
207
169
192
246
120
112
194
227
201
185
196
257
215
222
192
221
199
253
178
178
191
217
223
202
232
220
175
149
179
119
204
233
166
223
242
170
217
141
232
177
200
183
226
182
185
266
260
243
151
236
240
133
154
229
227
209
212
245
202
182
179
184
128
167
196
209
254
193
215
265
208
193
183
161
197
195
217
239
168
177
178
228
224
234
198
208
192
179
212
183
140
195
206
164
198
191
172
245
225
141
179
142
166
134
175
197
190
186
186
204
187
229
233
234
244
165
284
210
250
195
227
183
194
224
170
215
225
253
238
188
213
203
214
219
222
237
258
145
185
213
124
161
223
161
155
155
217
202
130
229
188
185
247
167
160
209
214
204
147
133
200
195
158
177
200
191
191
213
186
234
215
173
210
169
243
238
207
234
146
196
217
248
194
181
178
237
101
227
180
181
229
178
178
167
230
230
224
159
167
160
216
227
183
183
210
220
186
214
201
216
224
120
150
254
203
198
220
199
237
205
238
188
171
206
216
249
211
213
257
218
153
305
199
227
196
185
204
171
233
231
175
251
198
242
184
182
190
221
231
172
192
227
222
173
195
207
219
208
174
195
186
179
197
167
140
180
207
160
173
198
221
215
137
156
242
229
204
153
209
194
237
183
201
243
176
170
203
243
198
206
202
148
211
170
219
247
236
166
209
219
178
128
218
161
225
118
229
216
180
202
110
205
207
226
139
214
165
263
219
177
261
193
230
244
241
166
199
232
184
249
218
240
175
177
178
188
247
207
217
191
224
248
182
183
210
214
193
212
191
191
217
242
140
180
174
229
149
172
221
208
182
200
219
197
210
155
197
200
181
200
214
184
176
239
256
203
202
200
227
222
168
155
211
200
204
224
178
162
189
204
128
214
280
199
280
199
207
169
198
215
238
262
191
178
231
130
176
203
177
173
247
193
131
197
228
225
227
233
189
195
183
200
185
216
166
203
190
195
169
217
225
151
169
187
203
191
228
208
233
199
225
261
207
104
236
111
241
181
188
229
224
202
189
175
227
181
206
208
165
165
224
199
223
192
147
181
206
162
234
265
205
212
235
224
180
148
267
185
203
170
184
275
234
158
191
184
158
201
191
227
201
193
144
231
268
254
197
153
184
216
179
225
229
215
143
200
216
232
190
176
166
236
147
236
249
221
214
197
197
221
199
171
216
202
175
222
260
177
170
189
205
224
138
224
219
234
226
227
224
182
195
228
222
221
228
153
157
253
251
181
177
214
149
202
235
209
158
173
153
230
167
126
194
229
179
202
268
166
247
158
217
216
201
223
259
213
240
145
215
189
248
219
222
224
229
173
216
207
203
237
169
291
257
200
216
141
201
237
202
186
166
170
181
203
207
239
205
201
221
168
258
175
176
158
231
268
165
234
175
209
262
232
226
240
251
121
219
150
191
175
244
229
185
187
168
176
180
180
177
186
188
194
215
187
236
240
189
168
187
194
138
218
128
199
174
264
154
141
178
149
216
176
194
224
247
219
183
207
184
202
243
166
103
247
240
237
252
190
206
178
235
207
150
190
143
157
220
168
184
206
194
195
214
223
185
241
188
207
231
225
217
172
206
164
212
134
206
240
212
209
218
200
188
175
223
235
172
168
164
231
228
220
284
200
206
231
165
181
222
171
182
225
210
186
221
175
171
223
192
220
227
180
193
198
180
189
200
178
246
259
128
127
248
200
187
189
227
272
227
179
205
126
136
181
184
231
173
178
139
265
186
131
206
230
233
156
252
217
147
171
184
213
181
193
282
218
222
192
171
169
243
226
248
199
141
195
152
168
159
180
228
216
144
124
215
205
164
185
191
141
190
172
217
228
166
199
209
234
175
208
204
159
152
157
192
240
210
195
183
196
225
158
191
185
204
215
215
205
192
225
118
246
139
129
195
140
178
142
200
141
191
194
226
190
200
174
215
93
272
152
228
178
215
189
191
208
170
183
171
153
174
183
221
174
245
222
207
239
233
199
220
147
160
219
249
243
218
204
256
155
176
199
192
202
191
142
193
241
189
232
208
197
179
188
217
189
167
201
135
222
174
197
225
210
221
176
235
172
237
203
175
221
191
221
175
177
237
217
202
183
211
95
125
156
203
192
232
148
171
209
164
179
184
180
218
256
169
207
138
228
188
250
198
217
172
195
178
259
153
170
250
213
180
220
158
210
166
221
228
207
175
205
260
236
141
224
217
239
171
183
251
262
237
204
171
158
239
225
175
182
177
203
219
219
190
229
152
174
213
224
150
192
195
172
179
274
192
236
221
140
215
207
215
164
234
177
174
253
228
193
196
260
154
215
217
223
147
167
260
162
155
215
213
180
225
232
159
180
235
188
168
202
249
208
180
126
159
275
214
123
170
201
185
211
186
200
252
194
199
246
257
154
171
235
182
175
167
169
238
251
238
175
269
218
217
188
222
162
207
191
187
235
166
252
154
223
204
233
208
251
240
230
221
220
161
169
232
248
168
129
195
202
184
216
178
214
148
177
220
172
271
227
214
232
189
204
130
182
196
173
265
218
231
179
212
188
202
163
188
257
215
164
190
195
188
202
198
257
246
208
222
188
195
190
237
226
205
204
150
156
216
170
182
226
215
223
188
184
190
180
215
180
204
239
261
191
144
241
177
229
129
257
213
222
162
168
248
184
133
179
259
264
192
215
187
197
220
186
165
188
152
195
193
143
230
212
157
184
223
239
229
181
207
192
194
223
210
235
121
236
203
173
210
188
166
151
128
214
220
197
207
204
191
196
211
215
202
183
158
134
196
157
169
261
206
156
220
163
193
190
231
201
214
215
189
216
254
165
208
251
153
259
266
118
257
200
282
206
190
222
142
160
190
181
219
214
231
200
131
191
224
220
236
215
115
199
189
161
200
191
147
233
187
257
225
215
205
249
168
225
213
223
180
201
244
246
194
231
147
226
200
200
222
179
201
195
170
237
204
185
228
199
224
235
215
218
199
275
229
135
170
224
213
198
227
205
183
238
221
244
184
216
193
199
236
198
146
170
229
170
192
185
238
241
175
187
160
162
240
165
163
160
250
207
176
182
198
219
241
255
192
211
170
197
213
186
186
118
211
239
175
231
242
175
221
182
207
190
182
207
177
143
181
180
242
195
141
181
220
200
144
163
175
205
129
256
214
224
177
210
194
193
219
117
197
153
205
228
272
153
185
220
213
218
206
205
196
260
247
131
233
234
203
214
185
185
181
153
237
230
157
223
213
252
251
204
198
182
176
179
243
184
186
167
241
213
192
216
198
166
236
207
130
257
195
198
202
216
232
193
211
154
190
280
228
206
238
231
229
204
196
117
170
210
150
254
202
200
189
246
211
235
178
174
194
154
187
185
139
187
140
196
192
209
235
243
185
189
211
171
230
204
203
285
224
177
250
239
196
210
168
225
151
214
224
223
170
169
229
223
206
240
183
155
168
273
204
133
236
218
191
193
158
271
214
183
180
182
172
176
231
206
204
214
171
195
147
191
226
140
214
197
187
173
105
189
214
187
250
223
201
190
246
197
159
161
159
159
210
175
186
206
228
252
186
250
156
209
237
189
135
213
138
205
292
245
222
211
167
151
276
191
209
187
215
217
192
216
253
131
204
162
249
209
169
281
213
212
174
147
191
222
205
128
198
250
235
190
247
200
161
210
214
207
206
197
215
244
243
172
193
188
210
118
206
143
121
230
205
224
189
242
231
136
142
169
205
174
161
181
262
241
246
178
221
209
210
237
223
244
170
194
140
231
259
236
236
216
187
120
204
188
240
198
147
229
257
217
208
186
188
235
248
172
190
227
210
190
184
157
172
142
159
148
210
288
197
210
185
161
221
218
153
182
177
245
221
166
200
150
168
210
163
201
219
221
216
164
259
189
223
229
130
216
172
253
170
189
201
186
182
267
209
247
242
268
187
241
221
281
125
220
237
221
256
208
167
184
202
206
178
225
195
224
238
228
222
248
163
237
187
175
239
252
246
123
180
205
201
205
201
228
262
205
182
164
220
184
200
280
195
151
248
219
203
185
185
198
128
268
189
149
198
237
184
241
228
229
219
178
173
141
214
203
154
176
175
144
152
207
127
157
184
168
186
218
194
217
224
178
240
143
232
204
201
173
189
219
233
171
246
241
213
204
201
178
225
191
227
243
184
190
166
185
180
203
233
182
211
205
166
173
173
176
228
149
146
175
219
273
228
212
181
190
254
197
186
156
124
200
211
209
200
243
205
220
244
161
245
158
191
249
195
219
234
221
163
223
200
199
266
186
284
193
172
164
207
235
143
229
253
150
185
164
180
185
264
225
215
236
227
191
196
154
174
195
177
217
201
216
183
167
180
141
226
207
233
180
153
242
176
231
125
213
183
230
213
237
146
222
169
172
206
169
178
198
199
168
229
222
151
189
187
196
164
258
109
218
229
218
184
213
177
142
174
176
191
170
189
208
256
171
147
231
218
260
231
161
256
199
203
184
223
179
241
150
133
228
214
218
210
197
198
229
225
131
156
198
129
167
108
218
203
237
186
219
139
186
187
184
201
194
149
258
200
187
210
188
250
182
210
212
174
260
184
211
187
216
276
195
211
171
224
190
247
221
204
189
171
221
218
168
133
205
208
164
171
259
214
197
231
214
201
154
244
174
184
158
181
194
160
149
206
173
182
223
230
243
226
179
243
183
231
161
144
183
202
211
195
247
197
221
271
185
245
213
199
222
179
242
279
199
197
162
162
223
214
241
197
196
159
209
226
262
172
209
190
151
234
277
206
234
166
175
224
218
145
201
181
237
160
123
249
238
184
168
195
196
234
251
161
167
190
211
180
219
162
184
208
219
174
139
226
211
217
218
192
252
208
176
195
186
208
200
195
206
227
144
132
167
268
224
208
220
228
202
144
193
201
169
209
177
172
163
165
261
184
268
213
234
227
237
226
228
183
211
255
147
253
117
159
148
239
206
265
165
241
212
210
199
178
220
235
230
241
236
213
251
226
232
175
199
210
176
202
169
198
204
169
208
211
163
199
168
149
227
254
254
252
173
230
142
197
136
214
209
199
216
222
261
171
166
215
167
251
209
137
166
269
262
225
201
197
190
232
254
174
227
175
245
196
174
207
126
186
183
234
188
179
239
225
229
151
243
149
184
245
145
194
183
240
184
201
158
193
192
215
185
208
156
173
186
204
231
153
145
206
170
196
239
150
256
187
206
230
152
179
179
186
212
236
181
186
186
247
268
242
204
161
217
232
151
157
210
230
243
202
151
247
146
173
212
191
177
168
187
254
157
172
236
201
213
188
129
207
166
220
173
224
175
239
232
261
244
216
195
195
208
175
175
228
193
183
164
186
149
244
229
224
256
232
197
194
159
212
224
187
229
154
229
223
194
212
177
265
140
168
232
215
176
205
261
197
215
207
228
202
211
239
166
174
178
191
275
179
176
233
229
187
162
183
230
221
192
173
186
212
224
178
227
205
198
214
238
205
234
230
193
241
140
193
145
254
224
184
201
200
212
252
196
239
257
221
198
156
153
207
189
200
146
204
186
205
137
181
177
203
150
199
175
110
214
278
241
220
179
222
143
258
218
172
145
204
249
207
215
218
227
152
114
236
220
243
231
251
207
214
242
238
174
128
159
269
198
190
124
168
195
197
282
169
180
200
194
194
225
182
175
226
209
195
197
245
232
136
200
221
174
183
202
267
214
209
168
231
139
239
227
251
227
144
196
140
260
122
241
155
153
225
197
180
226
166
232
178
189
167
239
195
135
201
157
184
157
165
205
273
167
191
194
262
172
224
215
209
152
217
234
239
215
222
173
219
281
153
231
240
158
163
184
205
190
142
205
190
102
260
173
215
282
179
214
215
218
218
183
200
181
187
165
202
148
205
217
176
187
107
177
234
208
142
172
158
271
274
253
197
216
171
153
229
190
176
211
198
227
194
201
177
168
154
173
152
224
155
181
218
126
270
195
215
169
220
154
190
214
185
241
168
132
262
238
213
225
138
209
140
176
113
231
212
235
158
154
142
186
199
202
220
228
131
256
213
239
141
227
249
294
174
206
121
216
218
235
207
205
237
184
142
94
223
126
159
207
234
181
191
211
178
231
220
241
195
236
211
187
176
255
280
247
236
188
184
181
186
192
196
178
165
130
250
158
237
190
187
201
238
211
214
262
215
162
179
111
162
161
193
267
150
219
188
200
200
210
240
202
205
219
209
181
184
205
208
151
231
239
164
232
157
191
239
173
218
213
216
150
198
208
205
224
160
200
207
291
182
244
160
222
179
198
173
244
279
222
147
254
259
192
253
246
183
176
197
267
198
213
214
144
173
204
204
152
223
187
197
198
148
217
171
135
205
216
200
202
287
164
147
147
246
175
181
214
181
262
197
220
174
192
192
211
212
263
250
213
197
168
213
169
243
196
196
170
207
187
138
160
178
194
226
182
267
140
203
219
220
200
184
200
129
170
170
205
262
166
247
229
216
204
193
219
199
185
161
228
210
221
214
248
226
192
199
208
127
225
220
223
156
182
131
205
197
209
220
187
245
235
185
231
171
194
210
198
198
222
163
221
230
199
223
194
173
250
193
202
128
176
231
194
113
184
184
186
171
168
223
196
135
190
213
143
221
163
166
233
233
227
178
148
196
158
259
217
226
234
145
226
181
247
228
259
234
173
256
113
198
163
245
196
177
198
214
201
155
226
162
220
170
197
252
185
182
217
205
156
197
164
175
212
223
284
204
238
288
195
252
183
190
237
191
162
178
204
194
199
228
207
218
215
216
191
224
221
249
217
172
257
274
203
230
212
196
172
190
167
246
204
274
232
187
170
214
232
208
216
198
196
179
226
155
213
261
221
231
201
225
224
175
224
182
189
193
157
221
176
224
230
213
197
212
179
183
240
230
167
221
155
233
185
194
173
246
206
201
181
197
217
234
205
196
198
208
190
200
158
149
172
224
205
226
217
189
216
245
170
244
171
186
209
154
230
212
176
165
198
203
173
231
261
162
159
167
166
198
197
172
248
222
189
194
188
154
208
149
170
236
194
181
191
200
165
207
212
160
142
239
204
195
228
226
280
194
245
204
197
205
208
201
257
297
203
184
233
263
213
229
153
179
162
242
213
200
262
230
224
176
217
140
170
200
213
196
183
203
185
177
166
192
244
136
162
169
181
201
201
196
217
183
308
175
180
207
186
235
234
203
249
174
214
207
166
194
258
236
214
221
219
218
186
136
194
194
215
201
216
194
270
165
220
181
187
153
230
239
191
96
192
148
233
260
230
200
254
234
172
216
195
211
184
148
208
109
187
172
204
165
201
193
244
191
153
162
156
243
216
187
202
179
225
191
241
251
184
186
211
183
154
205
172
206
217
176
162
237
175
200
178
192
146
179
198
239
194
234
215
173
220
196
132
195
196
178
215
176
205
202
125
198
253
213
176
206
174
206
202
160
179
241
190
183
175
178
224
196
222
206
253
202
203
186
203
202
178
226
232
213
170
236
248
176
209
174
150
245
159
190
209
217
162
257
188
188
161
173
145
137
202
221
241
177
191
212
194
185
221
236
242
169
194
233
173
177
215
213
189
213
221
148
210
257
192
179
187
161
202
242
178
206
188
222
221
195
199
158
243
193
236
200
162
181
183
197
153
197
186
189
267
202
181
242
205
173
174
192
200
192
174
194
217
164
157
229
226
157
240
226
193
123
190
195
215
156
213
215
168
186
143
217
210
183
176
200
120
223
260
185
231
217
204
209
215
130
179
145
189
173
199
191
215
227
168
250
202
180
205
184
163
245
183
205
170
175
206
150
178
222
144
197
174
193
195
243
235
178
169
230
134
231
223
212
253
240
244
189
192
188
207
152
230
173
199
219
264
189
181
240
213
214
209
212
153
235
262
240
183
249
167
248
167
240
225
146
187
193
167
232
189
127
231
216
216
189
234
233
173
144
209
180
248
200
299
243
239
184
187
210
239
201
190
203
251
176
214
208
217
212
242
192
208
166
220
137
186
237
215
148
223
180
186
223
206
179
181
212
144
196
175
226
146
232
206
215
251
179
205
204
206
165
178
210
207
227
204
236
212
266
203
211
185
206
239
223
213
255
216
211
233
234
216
162
173
173
214
185
149
237
227
199
200
174
243
285
138
215
179
175
204
198
193
184
246
194
217
213
194
180
220
272
159
163
182
208
198
193
232
207
218
179
195
234
199
177
188
233
219
193
238
149
248
255
241
132
235
228
243
221
157
229
183
216
164
223
192
126
174
220
200
175
247
209
269
212
173
170
226
186
153
191
218
178
221
143
178
218
163
194
141
246
157
218
240
215
138
178
225
206
189
187
224
208
214
211
213
165
173
184
264
175
221
258
167
221
195
179
196
304
142
152
153
259
248
237
272
178
204
226
188
147
184
193
176
195
228
233
207
215
233
265
118
197
219
212
236
146
167
239
201
163
229
198
142
222
190
226
217
167
158
198
273
194
167
175
185
201
140
196
200
235
187
193
178
173
246
230
139
230
263
142
176
234
158
217
207
191
171
213
147
205
218
233
221
168
214
225
221
275
155
198
172
219
189
218
181
237
151
192
170
193
212
243
247
167
171
191
218
172
186
200
243
163
118
139
204
232
129
203
214
193
236
258
215
220
239
177
144
166
203
192
164
242
146
177
181
172
185
223
255
232
149
204
176
152
229
220
193
207
192
148
243
271
247
268
234
169
132
168
193
231
187
215
245
179
206
191
198
164
201
220
155
200
222
184
140
183
174
229
176
159
168
205
226
201
232
240
180
232
259
199
204
232
125
239
214
210
203
187
186
191
221
231
229
171
237
238
223
195
186
205
211
211
194
195
265
280
240
210
187
213
209
239
205
200
245
254
192
249
196
183
194
137
222
226
227
219
211
170
154
181
180
234
100
190
194
177
203
223
158
267
208
222
191
195
109
197
181
248
204
222
196
170
170
193
224
161
182
274
215
156
171
201
255
222
164
224
205
166
179
198
251
186
244
237
217
207
157
224
179
232
191
177
253
224
174
123
194
169
249
163
216
172
175
151
221
246
224
228
188
214
204
146
218
222
198
237
229
102
167
203
188
189
193
190
212
217
179
227
244
251
222
212
222
191
226
191
188
142
218
150
218
218
175
183
198
242
224
200
220
221
205
187
206
228
176
194
205
213
174
219
174
199
184
214
216
175
254
269
117
204
234
190
212
220
211
197
160
179
138
242
197
181
170
281
210
205
122
138
240
235
171
172
241
194
160
131
204
241
260
222
184
174
205
243
167
162
128
193
191
182
158
198
199
209
195
183
198
298
230
179
233
201
127
221
204
94
198
151
249
157
128
207
169
192
164
188
238
158
197
206
242
202
191
204
166
190
165
158
204
193
215
244
193
244
181
224
206
174
203
214
176
198
145
223
145
247
230
127
204
210
153
192
155
220
218
204
171
227
233
212
224
247
193
202
148
180
244
173
214
156
230
167
187
153
265
228
177
165
208
200
214
186
175
215
184
251
199
184
209
182
159
239
244
246
177
140
205
215
185
134
200
166
159
254
169
240
258
214
111
194
203
240
206
198
251
209
260
216
233
217
165
219
198
229
176
212
148
198
208
235
165
210
181
198
203
173
227
212
195
212
204
169
189
186
215
197
205
163
153
167
270
202
206
225
112
206
192
171
232
147
187
198
150
220
227
221
208
205
191
134
237
251
135
212
178
193
207
237
280
182
215
243
176
198
191
205
218
228
269
200
196
229
201
210
204
217
212
159
196
228
180
187
246
199
116
223
182
180
231
220
201
163
213
221
210
135
224
223
125
177
188
178
196
257
227
225
211
238
215
191
223
137
155
208
188
216
232
158
173
179
187
225
172
247
258
182
191
198
228
227
229
158
140
154
226
184
220
258
208
188
172
223
220
195
184
228
241
223
214
132
222
219
209
202
218
120
168
188
170
196
216
177
201
184
217
186
194
256
172
233
213
168
203
208
221
226
205
179
194
187
187
242
221
230
207
250
242
232
139
205
149
170
243
198
202
213
184
184
209
203
185
248
258
243
173
233
159
183
206
162
239
196
202
243
218
165
180
175
249
206
281
185
219
213
173
184
226
145
225
226
187
159
255
170
190
194
215
133
174
198
211
186
156
238
209
168
182
219
260
209
132
185
210
175
176
178
215
225
228
200
268
166
215
222
196
199
186
226
200
146
256
218
199
176
248
239
258
216
138
223
188
176
210
161
253
230
170
133
239
211
208
180
194
208
184
208
187
238
223
153
223
179
211
134
212
202
179
223
238
207
215
228
167
186
221
224
243
140
221
212
225
190
256
180
226
223
228
240
139
149
214
224
145
162
180
273
231
159
189
163
188
217
217
192
141
224
196
221
181
228
232
205
170
230
218
190
154
175
170
232
164
211
195
264
197
239
254
173
250
157
283
220
215
245
171
164
230
193
182
236
210
164
156
169
189
197
212
201
196
222
164
184
177
236
189
205
229
167
184
223
211
235
196
111
197
191
150
149
219
152
220
247
164
220
250
245
191
232
256
205
149
202
164
216
208
180
183
209
160
267
196
199
200
253
100
144
192
214
224
239
218
188
209
225
222
209
224
217
122
208
197
157
208
201
235
218
199
163
174
126
245
202
217
210
227
218
189
155
205
163
217
206
205
208
214
243
219
189
180
202
135
201
215
174
224
191
188
240
203
225
239
202
184
163
186
185
108
210
233
129
203
206
226
222
237
225
228
183
228
200
198
201
137
197
138
220
215
244
246
203
207
257
252
223
213
222
177
179
204
203
195
246
226
236
155
220
196
166
229
226
206
153
147
267
190
143
196
165
163
184
187
163
267
254
235
206
262
198
247
156
200
215
217
166
197
145
223
224
182
186
185
166
196
183
258
246
235
219
210
205
129
210
136
213
239
167
166
224
210
233
190
167
208
180
175
267
163
231
159
157
213
249
239
182
214
225
210
233
173
203
228
188
150
194
248
179
185
187
184
162
177
245
212
159
175
193
197
249
243
216
269
189
192
255
200
181
189
203
222
249
135
168
234
200
183
171
182
207
263
201
184
192
184
186
186
193
189
255
229
262
194
197
137
180
164
247
240
206
215
172
198
192
154
237
225
269
161
261
230
203
189
185
219
195
218
188
178
177
282
177
224
128
216
216
174
187
219
277
175
189
200
174
145
238
205
202
122
173
218
156
166
146
190
221
225
158
126
244
265
174
227
198
271
204
238
127
185
217
120
221
170
251
267
231
166
211
208
166
260
134
175
213
139
237
202
170
174
170
261
139
239
243
163
224
180
197
186
187
166
217
191
227
224
197
202
149
259
225
116
224
177
167
195
203
179
239
162
233
201
149
239
201
189
270
168
279
279
224
217
216
212
266
203
225
196
178
214
173
134
199
194
200
213
243
232
190
206
213
215
178
186
241
139
201
241
233
242
219
165
205
227
207
170
238
258
209
202
210
185
201
250
183
173
203
197
194
180
189
182
197
225
166
212
174
230
224
184
189
215
198
145
257
226
205
119
176
250
233
200
205
257
143
247
194
56
116
187
191
246
203
239
212
195
225
269
181
208
210
230
177
176
126
209
253
141
185
219
234
258
165
238
197
162
237
201
221
236
206
177
167
184
241
219
173
184
182
172
186
192
232
193
199
277
181
204
221
174
176
170
213
232
239
230
214
153
162
132
184
135
172
152
221
196
209
233
175
237
180
199
187
190
176
249
190
216
167
199
221
199
186
156
211
196
232
136
247
195
176
208
203
211
189
258
176
104
180
218
147
161
168
239
207
238
153
210
251
157
147
184
164
230
234
229
245
219
246
166
182
236
239
227
245
246
218
213
179
234
243
213
137
195
189
207
166
261
206
229
194
194
201
221
225
161
179
212
188
182
192
163
207
194
216
186
150
148
186
204
203
223
169
150
178
203
164
257
195
212
190
106
222
211
151
246
189
203
211
189
199
216
220
182
181
203
214
207
186
150
224
218
216
237
194
152
131
207
192
252
111
202
235
254
241
219
210
163
133
155
144
204
213
259
243
162
241
190
191
205
241
208
205
223
182
230
181
241
184
83
195
143
240
189
203
172
240
140
218
206
218
182
175
149
245
213
196
203
184
217
210
218
150
205
225
258
220
176
171
217
136
151
252
198
190
245
222
175
128
180
291
169
185
239
188
204
202
188
205
255
157
137
194
201
192
223
210
133
223
166
215
230
184
185
192
179
221
187
187
207
177
157
193
198
211
230
201
118
132
224
203
194
205
240
189
185
192
177
172
234
224
141
163
193
190
163
279
168
264
246
172
205
178
207
199
137
237
191
192
225
231
202
201
213
196
226
242
188
228
175
207
185
150
199
201
250
164
207
176
141
216
214
169
221
222
185
207
208
146
196
198
171
234
245
196
174
157
231
219
181
232
193
136
156
246
263
226
224
196
210
206
166
179
203
185
153
188
201
243
218
226
220
158
219
198
170
184
221
206
169
191
284
205
235
167
156
172
224
164
169
255
206
185
222
188
151
202
207
222
216
199
216
150
226
112
182
145
171
216
219
164
209
192
199
159
219
258
277
204
218
149
181
178
172
267
150
219
159
199
181
204
194
182
175
218
171
210
264
104
180
144
142
157
230
175
229
236
155
131
224
231
208
212
179
214
176
239
192
199
192
171
124
180
165
245
205
197
100
226
181
289
215
226
212
119
189
235
243
196
207
238
151
184
185
148
247
205
157
227
202
238
215
262
200
139
179
195
266
202
125
245
174
208
122
215
181
146
215
181
209
205
226
218
233
200
225
253
90
159
176
220
186
250
218
213
182
247
251
276
101
259
185
181
233
156
212
200
180
252
182
269
242
155
174
185
240
242
173
218
199
207
225
195
224
198
191
208
204
200
206
191
267
207
222
199
180
183
198
175
171
203
203
197
215
190
187
136
196
227
176
263
246
167
186
241
231
215
256
192
188
187
230
185
205
231
177
230
228
163
170
237
207
204
192
257
179
190
223
170
275
175
223
161
173
212
239
229
214
135
173
183
181
237
174
208
154
231
122
228
225
196
199
178
225
245
252
164
197
145
234
195
236
196
260
280
186
197
215
241
215
194
227
208
139
247
225
215
239
217
154
204
198
197
236
173
280
238
218
167
171
195
155
237
251
164
139
202
190
204
175
176
147
181
212
190
180
167
228
169
137
119
162
164
124
285
239
220
255
211
211
189
168
149
147
206
216
212
217
149
236
244
230
221
185
240
252
176
271
156
173
229
213
230
218
189
188
231
202
225
237
148
184
184
258
201
172
246
172
172
183
142
205
143
175
182
220
217
174
92
197
172
136
175
172
220
206
196
162
249
136
229
243
269
215
236
165
149
147
195
152
186
239
179
190
186
178
234
216
156
179
179
169
200
149
236
135
146
185
207
154
159
238
214
163
142
227
196
222
172
148
162
195
212
202
148
227
232
189
155
201
247
211
198
219
179
162
225
185
238
188
247
217
232
212
142
229
197
188
197
218
216
124
276
182
217
203
229
242
166
176
167
249
200
248
241
224
203
243
240
206
261
240
244
218
211
205
227
269
228
208
203
230
231
236
218
165
188
221
237
174
215
206
257
229
176
184
174
175
209
223
190
187
243
209
147
153
187
191
257
213
206
206
189
132
222
179
202
193
164
207
202
185
140
274
225
126
173
224
198
151
174
200
242
201
171
209
171
233
181
183
269
173
223
179
136
241
221
246
181
168
179
185
127
204
256
202
191
209
146
205
187
236
202
249
162
230
196
201
124
222
197
236
267
215
202
179
189
181
201
184
167
187
201
215
163
193
212
219
205
210
235
152
179
185
221
200
231
159
245
182
193
184
206
205
185
228
207
168
249
197
205
180
213
158
221
184
238
132
143
189
184
205
222
220
247
184
142
194
204
219
175
234
222
166
241
227
149
211
175
156
255
212
185
223
161
234
196
131
217
241
184
184
206
188
191
238
207
129
224
182
230
254
223
208
161
225
209
151
223
219
183
135
193
227
168
221
263
217
172
193
242
171
189
242
232
237
240
180
223
161
204
211
159
139
217
173
239
225
263
163
270
192
163
164
244
263
201
194
216
242
205
227
202
194
165
178
166
188
216
207
242
151
212
166
173
142
220
237
205
229
237
277
208
155
173
197
235
217
126
139
149
180
151
282
195
214
207
205
216
196
207
184
223
147
217
208
175
197
231
152
249
211
160
228
213
177
214
160
183
212
197
194
255
239
235
213
212
223
153
193
211
248
211
191
148
192
195
245
170
189
201
235
223
231
237
204
164
136
156
233
98
194
202
201
104
280
241
248
206
218
238
193
207
256
230
229
215
199
191
181
150
238
166
242
168
227
165
153
229
216
147
180
220
212
237
144
199
173
229
207
205
179
150
199
219
138
236
221
212
160
180
240
224
209
250
161
205
219
238
200
160
188
214
183
219
235
208
207
224
174
207
193
138
207
204
213
176
220
176
143
185
132
236
135
240
253
163
131
163
162
177
115
237
144
209
168
171
215
155
251
184
213
203
204
160
169
122
207
187
194
212
164
154
123
219
228
177
194
163
232
162
198
186
145
195
190
239
200
216
155
191
195
202
213
203
113
225
243
198
275
139
217
259
186
163
218
151
197
207
241
188
173
249
213
211
214
178
247
227
235
222
212
158
190
254
267
190
178
233
181
164
276
159
160
201
164
171
219
213
118
222
193
217
274
179
208
222
238
174
183
199
200
248
214
226
203
232
246
281
187
168
171
176
195
263
245
195
207
175
216
195
175
159
240
162
141
205
184
201
183
187
218
256
105
168
221
187
182
182
180
136
201
180
169
201
190
181
191
259
214
119
195
147
228
153
232
224
152
186
207
200
204
258
221
197
217
222
221
211
250
186
263
205
195
180
205
200
163
183
165
224
219
207
268
172
148
189
272
178
213
152
171
203
187
171
174
161
191
210
165
216
172
185
142
196
247
154
210
153
205
166
149
172
244
206
170
226
191
225
131
195
212
203
159
174
225
210
218
190
206
162
225
149
215
231
230
201
142
218
191
183
216
247
208
199
237
259
264
159
211
148
192
158
250
170
189
158
179
211
194
208
199
238
227
228
194
232
234
169
156
188
185
175
214
255
158
156
254
182
199
186
177
198
181
249
237
203
212
167
213
192
188
185
162
175
165
195
221
245
215
196
203
227
159
209
179
254
192
219
196
213
145
162
236
238
226
193
192
191
207
182
224
253
179
229
265
229
152
140
195
209
245
169
213
211
259
228
262
214
183
201
188
190
255
136
207
194
198
231
179
247
228
179
203
195
200
170
168
194
229
180
184
227
230
201
193
232
173
234
182
195
214
239
220
171
190
280
202
186
275
227
249
145
216
171
197
183
153
254
184
114
232
204
210
144
210
240
202
186
181
195
168
178
201
181
193
202
219
211
143
148
184
171
162
164
182
224
146
188
247
174
194
213
299
222
260
131
246
221
204
175
195
171
176
163
220
235
223
274
148
208
222
198
231
208
228
202
199
204
166
141
143
216
233
137
247
187
228
144
246
182
137
162
115
220
167
198
255
228
198
257
170
184
188
248
207
207
199
197
210
300
160
249
221
204
256
190
187
222
233
220
188
231
219
234
209
269
182
202
249
172
269
208
240
249
186
263
191
211
209
192
204
283
184
221
189
225
206
263
252
201
172
254
177
174
148
181
172
181
224
225
169
183
212
210
213
143
201
196
226
186
225
147
228
244
215
210
139
202
148
185
160
196
231
136
205
168
153
242
188
200
207
228
164
182
187
226
221
204
219
245
197
155
178
205
201
233
254
184
171
214
255
217
194
171
185
197
237
190
201
185
276
199
207
233
224
221
170
209
144
201
164
207
213
155
115
226
231
135
242
229
138
250
172
199
188
181
192
205
227
157
240
190
246
140
204
246
168
207
135
222
201
187
213
179
197
188
132
235
222
188
187
208
207
267
209
246
234
233
193
137
225
196
179
228
156
199
138
229
158
241
243
213
238
239
193
221
220
157
161
204
261
186
230
233
237
228
156
206
166
242
230
214
169
259
164
220
199
228
233
167
211
185
185
238
236
182
196
197
171
223
205
206
185
192
213
247
266
169
212
189
168
211
158
151
222
188
204
177
185
162
180
230
230
197
194
218
221
133
207
190
185
212
230
204
220
220
165
161
213
206
257
171
205
193
195
173
186
278
198
123
184
250
237
230
205
193
175
194
185
239
152
201
204
165
189
192
236
177
187
211
241
170
221
193
216
177
139
145
212
190
222
197
229
200
274
232
222
234
145
155
156
197
180
204
212
207
266
202
173
176
175
190
163
228
225
240
210
188
214
278
219
137
239
277
241
278
217
170
201
223
243
183
174
237
177
241
187
157
165
233
244
150
182
108
123
199
118
237
201
209
171
226
154
182
199
236
203
193
199
215
221
200
171
207
155
262
185
207
119
217
117
213
253
177
201
135
229
216
243
218
149
263
186
142
208
227
220
209
201
240
174
244
162
188
218
185
268
218
179
236
266
149
168
196
161
243
232
200
227
211
217
210
266
242
203
190
184
217
208
162
182
244
161
184
245
199
156
210
223
157
250
179
152
232
208
233
212
196
208
234
241
203
212
170
92
211
147
183
221
200
196
194
267
186
231
174
170
251
253
215
266
201
245
178
222
178
160
236
191
194
198
231
231
201
191
208
181
220
241
112
205
219
200
224
175
206
192
209
184
226
222
232
192
157
198
203
201
257
154
194
149
275
198
241
167
210
237
230
188
213
186
205
188
220
233
207
197
209
183
219
173
210
207
275
207
218
194
185
276
210
194
167
172
168
188
214
128
240
219
206
148
219
246
217
219
200
185
169
189
162
185
244
200
200
246
177
208
206
238
193
190
171
226
208
241
239
218
260
244
148
166
184
189
215
201
182
205
171
204
180
172
146
162
199
203
167
214
144
154
213
143
205
194
261
235
216
210
227
138
213
166
194
222
199
185
217
184
226
259
216
217
179
163
214
215
215
248
169
241
173
245
127
257
210
235
229
218
192
228
203
224
204
160
172
204
152
158
195
200
195
177
235
228
250
199
165
175
201
181
243
185
214
182
239
208
251
184
193
246
174
176
187
218
260
205
172
195
269
227
188
234
154
152
187
123
214
165
167
239
166
171
209
236
221
230
248
228
275
185
236
185
255
201
173
196
240
158
200
175
207
196
216
171
255
228
202
198
194
214
188
137
200
272
211
234
233
241
210
150
197
194
249
196
200
234
187
190
197
240
195
188
144
173
259
191
226
166
242
183
159
276
220
226
214
208
222
200
167
211
212
200
225
204
145
151
210
153
166
219
226
166
192
200
257
191
151
241
217
174
223
273
169
220
200
232
115
123
195
228
157
217
165
203
158
232
184
244
258
192
204
198
227
148
221
238
190
236
237
230
203
193
174
196
256
215
147
271
235
151
238
176
269
187
229
192
234
210
205
137
213
222
209
243
226
205
215
193
183
156
135
187
198
171
202
201
237
206
201
230
183
254
246
185
215
162
197
187
241
154
204
183
271
202
220
221
170
210
233
243
142
219
129
220
162
234
187
237
188
200
246
159
224
213
211
199
122
210
163
160
193
198
143
178
204
237
187
157
93
165
141
180
142
166
286
192
206
186
257
174
203
220
200
147
215
246
232
198
202
233
218
169
254
148
181
244
215
167
182
222
204
247
213
241
220
214
224
223
215
216
223
132
203
220
201
165
278
220
199
183
238
221
205
208
194
133
214
215
229
199
179
206
206
203
182
221
156
167
211
202
183
245
307
140
196
209
190
220
199
242
221
230
136
237
216
206
251
146
176
185
263
181
201
207
189
171
218
169
223
213
231
216
192
219
137
194
201
175
146
219
192
288
193
230
200
171
189
220
184
213
188
222
306
195
163
138
224
196
228
170
190
229
171
181
206
206
155
266
237
167
223
248
165
216
251
161
190
190
257
189
160
250
218
232
201
169
157
169
234
157
178
188
281
200
212
158
230
240
167
227
220
182
155
147
178
219
180
184
208
165
243
237
226
224
224
168
221
196
177
198
165
128
127
229
192
233
223
234
181
224
188
169
247
213
204
185
162
229
257
170
216
211
185
208
136
213
191
232
213
223
221
185
169
148
207
168
205
209
206
177
191
253
172
226
193
211
188
256
207
146
211
252
221
228
131
253
191
200
208
201
194
229
216
138
141
235
224
251
299
191
125
197
190
198
142
235
233
256
276
186
159
216
198
170
207
209
235
230
147
221
200
227
172
165
185
233
239
228
179
197
246
194
182
133
255
217
192
198
213
189
206
175
219
185
217
220
192
253
230
169
195
214
216
268
209
212
193
229
149
166
176
220
213
184
217
234
138
219
146
220
199
205
261
183
203
152
172
239
150
199
169
198
190
163
239
198
181
170
172
202
258
181
206
187
191
157
183
196
196
187
162
220
161
203
191
174
197
215
213
181
212
112
250
210
185
206
185
219
174
245
190
186
241
189
227
266
163
207
203
195
234
250
145
182
190
198
216
181
183
196
243
186
198
186
221
215
171
142
192
241
185
156
186
227
249
263
197
186
277
217
180
235
181
251
215
185
167
218
96
136
134
185
228
246
242
224
190
229
241
213
207
162
175
239
197
183
217
133
263
182
168
211
197
180
201
183
241
179
186
194
184
213
164
171
143
147
193
182
183
175
118
226
195
241
236
171
188
185
207
231
176
200
209
202
179
189
196
201
244
181
202
188
192
174
194
167
223
199
169
135
202
248
255
243
209
153
196
161
194
260
141
162
242
216
205
228
231
221
150
228
162
142
216
223
198
213
216
217
203
165
205
220
242
176
212
117
145
198
226
223
163
242
194
241
251
177
188
193
223
217
206
203
219
179
178
228
249
161
241
165
220
255
199
177
168
151
241
183
147
219
177
191
174
201
201
183
209
189
210
97
197
202
229
194
252
151
169
251
199
167
197
203
214
235
117
160
219
193
214
184
168
188
217
254
262
150
229
108
191
178
223
195
184
196
266
224
163
173
160
192
253
270
196
254
172
180
213
232
202
144
166
195
214
187
196
242
191
154
223
235
141
205
168
215
166
256
197
139
232
241
186
189
171
225
161
219
134
70
240
158
195
178
185
196
189
128
261
164
186
217
256
194
199
179
214
190
194
240
206
220
181
198
185
225
178
199
227
156
203
187
213
165
163
157
252
161
161
207
167
208
232
134
177
181
251
167
201
160
199
183
256
203
204
234
223
206
238
234
172
152
180
119
229
253
199
167
202
184
186
194
157
213
253
188
176
162
157
188
235
183
167
234
227
185
226
165
211
235
195
177
204
190
191
135
209
197
180
245
162
148
184
209
183
176
211
218
201
232
179
234
174
187
221
198
202
190
237
231
236
204
223
161
216
185
198
197
225
255
151
198
203
130
265
183
194
216
220
188
227
245
160
194
135
217
227
213
161
237
198
215
245
205
157
227
204
174
235
198
213
166
213
191
176
191
201
214
174
223
174
199
125
207
221
220
206
188
250
201
214
183
169
168
223
249
166
222
177
163
207
199
214
175
226
190
229
208
208
207
182
181
155
224
222
161
175
285
253
158
263
137
194
216
213
195
216
211
188
159
276
195
241
165
168
178
169
181
243
198
202
223
199
252
224
217
208
254
192
230
240
213
202
235
186
202
242
248
205
168
196
229
186
174
240
231
175
250
201
237
225
165
232
183
232
173
164
141
218
169
219
183
185
160
173
158
204
211
204
234
159
209
191
208
248
174
209
196
180
227
179
200
247
295
167
175
236
100
169
215
181
231
192
255
192
162
239
187
154
182
143
183
169
267
279
229
220
232
233
163
204
200
130
216
130
173
175
215
223
233
230
215
178
138
234
113
209
177
202
121
220
210
161
126
209
256
245
180
256
184
215
188
191
218
208
189
186
215
285
276
162
236
207
218
176
186
253
230
207
202
238
197
206
206
225
216
171
199
241
188
224
199
201
236
213
138
218
187
180
164
188
263
227
261
147
189
229
160
143
254
227
175
117
192
190
178
220
214
184
225
281
258
177
279
179
166
199
220
210
209
249
215
166
164
187
177
181
202
197
227
234
138
168
186
181
217
184
144
247
156
229
170
229
204
190
166
159
202
220
177
154
160
227
207
241
234
127
226
212
208
220
213
175
201
123
172
200
218
182
199
178
209
198
212
208
210
213
196
165
172
223
191
236
185
194
180
224
188
249
198
168
198
159
267
166
247
214
216
206
179
270
181
174
170
255
244
221
175
161
190
171
163
229
212
200
205
194
150
202
198
159
189
195
206
184
160
239
182
258
181
244
249
230
227
175
233
148
194
202
217
216
213
120
207
235
144
177
170
224
213
229
198
236
165
196
226
232
185
203
119
148
188
189
154
139
208
178
176
178
205
214
201
172
164
185
201
171
173
183
239
224
158
176
189
179
104
219
181
250
203
148
183
247
205
178
223
223
184
182
190
180
229
195
204
216
199
172
196
197
172
239
192
175
226
123
297
175
192
189
221
199
162
193
165
181
174
221
198
180
208
182
182
226
227
210
168
150
146
183
180
203
158
157
227
154
206
242
167
164
190
204
172
162
252
158
230
179
190
181
179
202
278
204
301
204
204
234
159
191
200
214
239
212
205
212
193
170
197
207
192
173
228
199
171
219
263
227
174
191
199
229
233
142
215
205
216
220
197
203
241
187
267
181
145
222
256
210
192
211
209
224
238
144
231
240
190
192
223
244
190
236
154
135
232
257
185
216
192
231
197
255
179
205
218
155
264
182
212
229
159
218
218
190
159
181
196
184
193
189
184
227
260
181
217
200
246
198
163
117
263
174
222
182
221
184
191
187
226
223
196
130
163
197
183
219
185
195
202
176
244
192
172
168
213
242
207
224
197
197
166
143
194
221
219
196
199
154
213
261
134
148
165
225
178
192
153
196
219
159
186
215
177
127
188
231
218
259
145
217
234
191
152
234
210
177
208
176
196
259
209
242
206
225
208
162
202
197
200
130
241
215
149
139
251
150
219
213
209
287
237
215
185
259
234
228
174
196
226
249
190
230
189
249
191
205
221
173
200
172
169
176
193
144
194
186
143
175
213
149
202
201
203
199
220
150
234
250
178
205
173
205
160
297
163
247
204
165
194
255
167
175
129
207
260
182
189
192
201
149
199
220
187
131
173
122
177
215
176
274
229
197
180
204
199
139
253
190
202
218
171
204
210
248
241
196
204
215
191
170
232
231
167
242
172
224
213
185
219
223
215
188
219
185
238
204
242
184
217
208
194
186
209
203
208
192
183
144
215
184
153
190
236
207
156
203
179
208
226
157
229
162
159
195
218
232
198
205
187
255
178
164
258
252
219
214
163
238
175
237
161
172
184
164
216
236
160
203
153
258
224
243
235
172
230
234
149
202
223
226
202
191
199
192
265
213
230
243
245
138
178
216
164
248
187
120
226
237
235
139
209
198
168
142
268
212
192
216
217
200
251
216
214
157
222
219
113
184
184
190
212
209
150
231
212
187
219
163
158
218
197
221
197
182
192
179
218
211
136
235
230
210
187
232
238
187
168
225
211
170
171
285
233
189
227
191
273
190
253
226
243
223
124
206
260
226
159
234
149
183
187
165
244
145
153
168
187
131
211
215
169
182
193
156
246
242
146
155
173
257
134
249
224
160
234
168
188
205
228
204
179
252
186
160
180
184
170
171
132
252
157
175
164
214
243
230
198
190
175
255
240
305
193
255
275
237
193
222
260
225
218
188
177
230
219
211
266
217
198
170
228
202
135
217
186
96
227
180
227
183
182
215
159
199
170
224
233
110
171
194
118
266
227
197
162
253
141
204
137
238
126
179
241
209
235
208
200
192
207
154
170
156
249
232
199
148
196
187
168
185
183
154
179
174
203
208
197
217
168
272
228
173
193
173
224
204
228
206
210
215
170
210
264
220
195
250
149
245
175
164
232
211
244
232
170
214
267
223
254
195
227
220
188
215
178
229
196
149
185
200
173
179
225
234
201
207
190
169
196
207
175
251
180
225
172
209
148
249
227
226
262
254
213
194
188
180
239
204
254
219
232
138
161
242
216
155
161
188
183
223
206
171
176
204
196
197
159
147
183
195
245
205
204
231
223
152
202
197
199
117
160
178
176
224
172
189
253
206
182
198
138
181
223
203
143
219
232
239
229
184
196
210
223
212
206
257
171
202
195
245
174
245
229
202
176
215
216
225
229
226
226
187
169
185
220
205
183
235
207
199
222
183
172
216
179
248
177
212
270
238
164
197
201
125
204
234
201
205
133
211
254
216
220
166
204
214
186
248
163
202
215
261
123
188
203
223
164
189
227
211
216
185
204
225
239
226
229
245
191
225
109
199
114
229
214
209
223
198
194
207
142
185
234
227
194
216
154
193
232
204
174
245
191
168
208
250
186
231
195
210
172
238
227
146
245
226
235
184
243
249
107
222
215
237
224
237
213
218
268
190
192
179
164
190
204
143
197
186
224
233
209
204
219
169
220
170
176
182
167
251
183
240
208
154
208
245
179
220
257
213
202
162
204
217
168
217
215
213
266
218
115
211
207
148
202
207
193
184
190
212
156
218
209
188
259
228
204
220
202
236
187
123
283
203
160
232
182
169
81
222
201
189
241
142
154
137
176
233
168
223
234
248
176
236
226
185
244
226
208
215
215
200
256
214
198
194
283
227
190
302
190
227
194
184
187
157
126
160
255
189
200
201
214
177
171
210
188
201
205
220
200
222
176
181
165
188
161
118
217
202
155
219
183
248
237
228
201
205
244
122
148
229
154
142
262
206
180
228
180
198
213
187
179
213
227
215
158
181
195
227
178
251
197
225
214
219
193
190
199
212
221
258
230
143
226
186
191
269
186
170
243
202
182
177
210
218
265
231
241
212
217
232
198
175
237
214
195
209
199
177
187
242
159
202
178
213
185
258
178
182
181
173
158
254
196
187
210
152
188
209
294
251
137
179
171
234
193
167
230
228
195
195
242
198
173
184
236
206
224
220
234
237
179
197
248
192
208
133
188
160
146
140
197
192
205
199
225
257
239
126
196
211
183
242
147
218
168
181
209
209
179
210
229
199
131
212
179
274
218
174
166
196
171
196
234
211
148
237
190
180
181
159
244
236
156
222
242
189
215
191
224
226
246
224
227
178
241
207
246
168
197
199
174
209
256
250
178
196
181
223
187
140
171
169
202
172
214
205
164
220
184
177
226
231
192
155
211
231
172
231
243
142
180
206
208
202
200
228
208
242
248
154
218
180
177
232
209
188
224
233
240
183
162
219
230
255
231
224
228
195
139
236
226
165
159
240
204
252
117
213
186
260
180
202
194
203
208
180
219
216
223
234
194
219
237
198
164
196
193
203
161
156
162
217
213
232
167
229
185
208
181
199
218
198
237
194
170
164
221
208
173
248
165
193
143
148
253
231
176
221
136
208
180
216
159
198
173
203
168
175
200
155
250
162
252
234
192
210
167
222
134
156
225
193
110
212
187
236
177
227
220
206
191
198
209
199
218
162
194
191
244
195
228
181
202
227
194
204
254
228
242
207
250
205
192
134
198
233
236
172
184
203
160
171
207
130
205
182
162
183
209
153
181
235
171
210
165
178
178
228
222
209
231
201
219
248
193
160
243
184
195
167
225
186
265
220
245
242
219
266
254
189
178
217
139
199
185
234
185
211
238
140
115
233
182
178
166
180
216
249
206
220
196
230
163
201
202
172
202
134
228
131
190
217
205
262
156
165
190
212
142
239
190
187
191
191
220
183
210
158
229
200
231
194
224
183
227
221
185
233
141
250
232
207
224
237
182
256
169
196
170
166
167
180
242
150
221
246
176
161
187
190
197
203
133
239
248
229
213
254
227
273
209
161
237
223
231
254
193
196
138
188
218
192
164
189
217
238
169
273
181
229
225
249
197
193
224
188
197
205
227
198
244
126
171
193
211
171
197
206
177
219
200
231
162
211
210
211
236
194
215
217
272
232
237
160
204
179
216
221
175
177
198
168
232
181
215
219
156
225
256
164
211
161
217
212
90
199
237
173
228
213
233
181
217
233
266
221
241
210
162
162
221
263
237
222
187
229
219
263
122
214
202
217
215
204
222
225
178
214
231
182
207
201
155
222
231
216
263
247
222
159
203
241
132
245
236
216
230
226
237
191
240
162
182
201
152
204
200
207
256
231
168
221
224
176
245
211
245
204
208
219
193
176
161
237
169
197
242
242
224
129
185
207
173
185
180
190
132
177
185
225
126
197
194
190
155
172
257
237
178
122
241
254
186
174
204
213
214
199
232
173
241
225
183
183
187
163
163
201
233
214
230
189
232
181
192
162
171
159
241
151
208
155
208
224
251
205
213
198
140
219
196
216
177
191
233
211
215
176
188
198
249
232
181
274
175
140
233
257
203
190
204
190
173
211
183
206
196
189
161
133
216
137
207
204
194
191
206
168
208
147
237
209
218
180
136
251
147
142
198
148
271
213
192
215
193
211
184
220
232
172
165
174
190
246
208
110
149
162
204
191
163
212
168
180
174
198
175
224
225
172
167
195
274
136
197
172
176
162
193
212
208
179
218
259
202
221
185
180
197
233
204
216
230
204
202
216
167
156
162
230
207
154
217
192
196
188
237
198
143
173
179
240
225
168
200
235
242
232
239
173
255
221
160
197
233
233
199
208
155
129
133
231
167
230
203
139
239
185
173
205
151
184
244
235
212
231
231
190
185
204
184
237
117
181
154
203
244
209
220
211
271
237
172
179
152
232
214
196
206
277
230
215
205
161
288
251
150
176
167
228
187
183
206
140
157
235
210
141
179
178
212
200
172
216
266
177
214
167
187
199
199
223
185
159
189
230
228
165
164
160
149
247
176
187
154
271
230
207
194
186
299
163
219
192
246
148
182
192
198
173
129
207
204
175
236
219
226
203
222
229
250
242
232
202
190
218
219
236
258
237
202
211
181
172
186
168
250
192
215
234
213
221
194
159
222
167
215
175
222
193
158
174
216
207
205
209
183
213
178
198
162
200
195
231
203
194
210
179
199
209
151
233
267
205
216
155
205
168
161
201
218
198
176
148
170
149
214
192
165
250
192
210
200
220
187
220
228
221
241
139
207
216
245
209
217
189
141
189
183
205
219
173
217
175
229
197
181
202
190
175
242
231
185
178
150
205
183
226
249
127
239
180
226
233
157
173
198
217
194
176
170
217
235
195
197
201
188
142
171
265
175
134
225
230
181
143
120
162
164
202
274
225
225
244
225
208
176
183
246
185
246
189
176
153
171
142
264
177
176
159
186
202
169
253
144
169
225
195
171
163
208
123
206
168
219
155
165
213
240
164
153
217
199
179
227
124
218
224
215
230
216
184
227
243
241
180
124
247
167
207
232
123
216
239
151
168
238
191
170
188
174
178
147
209
182
274
243
160
144
220
243
202
192
205
184
240
197
286
165
232
157
240
235
184
192
196
193
234
236
182
171
143
192
193
194
201
195
249
233
209
174
257
198
197
171
240
189
232
222
188
222
214
153
149
176
179
165
111
181
216
226
202
138
242
164
185
180
277
244
157
164
208
243
156
186
123
227
196
173
156
158
199
192
200
181
165
193
255
160
161
180
208
219
161
187
168
162
261
219
168
231
205
181
204
211
183
167
218
197
205
179
198
167
167
221
180
214
171
156
182
202
213
168
207
146
237
198
238
227
257
219
191
228
237
246
198
221
207
193
154
171
216
212
200
179
163
159
225
185
223
147
201
143
149
190
201
191
179
236
248
232
241
159
251
208
205
190
236
196
177
199
237
189
194
224
241
215
190
148
140
162
219
197
144
196
261
233
136
198
123
126
248
181
257
229
180
204
184
195
181
216
191
239
223
179
188
227
269
200
235
206
157
205
254
239
179
190
248
193
169
191
165
207
188
154
154
191
250
192
251
194
154
216
187
204
111
169
186
156
261
139
188
245
152
188
177
206
234
219
199
161
163
190
165
232
210
199
251
247
234
203
232
168
158
194
181
204
152
231
212
218
238
230
231
185
183
153
223
226
198
204
203
184
205
221
171
186
187
221
184
202
223
214
269
126
190
241
189
187
216
249
145
181
172
171
135
197
249
204
216
159
199
202
218
219
184
225
253
201
258
199
173
204
243
221
200
187
243
244
220
176
199
218
135
243
208
153
208
199
252
245
193
187
204
208
203
236
135
205
180
166
208
217
209
238
208
231
257
146
151
154
220
193
190
160
237
206
225
135
191
258
231
203
206
246
207
244
192
208
178
216
211
242
173
189
136
169
221
150
230
201
230
201
208
152
219
182
245
176
220
198
213
230
233
226
205
201
159
251
183
177
222
256
233
312
129
210
206
233
188
197
172
253
247
192
202
187
136
264
193
191
174
214
213
227
232
190
154
197
170
197
205
206
208
190
176
162
189
165
228
184
212
212
153
178
149
205
222
191
148
183
231
139
178
234
299
262
252
225
206
174
218
128
225
183
175
249
179
200
154
175
234
244
224
159
202
138
154
239
107
182
172
153
179
228
203
153
254
212
138
225
262
226
194
194
191
228
225
167
238
236
176
173
242
182
200
167
226
213
193
203
194
236
178
191
234
161
192
170
181
238
175
189
240
236
157
220
207
197
189
151
143
207
178
117
132
159
192
201
204
211
200
170
190
235
212
175
169
155
226
183
173
209
229
240
222
213
191
276
235
240
186
170
223
155
179
141
207
222
186
174
188
196
194
177
199
219
230
214
205
274
153
184
250
271
234
233
235
178
282
186
283
234
169
214
214
210
190
167
165
196
239
195
218
230
218
179
241
235
137
192
219
174
261
220
206
212
252
189
213
175
236
231
199
240
206
252
193
205
250
261
194
189
216
222
210
242
220
183
229
239
248
240
176
181
224
192
135
236
197
202
189
192
179
196
205
254
203
166
187
154
178
160
262
244
176
157
156
168
189
227
248
240
214
138
185
199
117
187
189
87
257
212
200
145
148
217
182
222
156
192
197
244
192
169
166
201
132
180
154
174
178
175
195
219
168
190
247
199
207
138
222
206
251
230
171
185
219
154
176
219
234
226
189
221
164
121
212
213
153
237
170
206
229
207
199
182
218
157
161
219
160
209
245
197
163
209
178
236
190
232
188
186
169
206
215
219
158
168
214
241
186
267
178
238
227
181
253
172
176
241
158
174
282
201
278
199
252
165
231
232
225
175
112
168
195
216
192
211
185
243
209
178
174
211
162
235
205
157
242
186
190
247
234
226
181
223
266
160
190
232
223
218
138
146
233
179
260
160
144
163
225
218
238
175
125
219
205
225
214
173
208
207
171
219
193
215
207
245
213
217
180
232
184
181
249
234
238
184
245
199
215
177
204
188
201
203
229
112
186
218
223
180
198
159
222
258
181
178
204
228
196
189
136
171
137
170
108
178
174
275
181
171
236
182
181
203
226
168
192
179
180
237
211
179
187
172
199
256
235
200
186
216
217
229
206
194
191
218
219
179
224
227
196
255
221
177
199
174
239
236
281
184
184
285
193
158
175
227
231
264
217
219
228
180
248
184
248
215
186
263
198
173
233
208
261
226
170
208
238
211
199
190
198
110
180
267
193
169
208
196
165
200
141
222
250
201
174
249
230
140
221
193
183
179
228
186
159
163
225
217
215
203
184
215
213
131
196
158
220
189
167
161
196
219
203
189
201
273
187
210
202
230
226
186
224
193
213
138
174
224
195
233
257
200
172
109
205
245
176
178
179
226
209
197
178
225
286
211
216
243
196
206
228
283
206
137
183
137
181
203
227
189
150
219
243
256
217
175
211
180
224
212
148
219
151
194
163
146
206
279
211
248
170
189
172
145
148
173
190
276
232
222
141
123
192
250
205
244
183
179
188
164
158
214
223
179
201
187
201
202
158
221
209
279
215
188
176
162
221
202
203
250
206
200
173
204
214
238
192
230
169
234
159
201
266
219
158
169
204
207
226
197
178
162
241
165
175
268
215
250
188
250
219
161
179
219
216
220
205
205
220
168
210
178
213
213
191
199
173
213
219
149
196
223
162
193
194
197
195
201
192
207
140
276
190
170
213
244
202
204
214
179
135
181
203
230
181
217
114
174
195
225
221
189
202
244
200
214
183
211
199
248
183
231
226
233
201
159
243
170
166
161
148
218
254
189
223
189
199
181
242
202
183
225
236
154
181
237
138
250
231
279
209
167
165
207
200
140
152
185
212
201
180
195
226
172
202
164
173
212
162
240
194
180
199
212
190
206
203
227
205
190
119
202
222
216
166
230
164
227
197
200
132
222
180
209
207
252
173
189
228
226
191
189
131
232
199
192
170
240
288
235
136
250
240
235
180
197
194
200
243
169
181
222
222
262
239
200
251
152
297
175
200
258
196
207
222
222
177
244
162
132
144
167
229
226
149
192
264
193
239
213
176
158
231
197
254
198
203
192
196
231
228
201
192
275
223
195
170
253
234
210
205
145
169
222
253
199
259
103
209
181
213
257
181
203
209
207
247
198
236
140
143
132
200
217
206
211
240
208
220
195
231
209
124
237
188
186
202
168
229
225
188
201
202
181
166
214
236
206
164
166
162
171
229
189
197
240
212
212
225
187
172
138
169
220
193
228
170
228
180
230
239
166
230
203
159
162
277
155
180
207
189
268
216
181
227
198
208
214
209
182
174
243
185
172
200
238
161
277
189
255
199
176
161
246
190
197
185
172
229
223
206
229
171
193
167
131
204
220
158
236
224
205
223
249
153
193
221
186
164
190
198
253
236
208
137
172
262
162
260
146
210
208
172
166
232
216
244
131
192
206
213
187
250
154
237
243
264
208
207
222
185
188
195
205
180
212
210
207
216
153
223
210
221
165
232
205
169
164
215
203
204
166
226
185
175
161
230
123
180
241
211
235
194
139
185
168
194
175
206
267
160
216
229
167
184
158
217
207
208
175
207
235
265
193
231
182
208
187
146
185
168
145
185
210
274
202
212
192
225
177
233
206
204
264
240
199
246
189
199
172
204
247
228
183
202
156
224
209
185
206
181
214
217
197
186
211
153
186
198
165
203
216
216
203
158
169
214
138
227
240
181
225
179
233
204
195
206
211
186
184
244
226
202
189
246
234
184
191
172
237
171
206
222
208
284
221
246
133
211
245
178
189
199
193
220
212
141
184
223
243
196
208
175
163
200
202
246
189
254
253
259
168
225
203
185
190
213
204
204
180
135
156
198
160
147
179
232
209
242
181
230
180
227
214
146
146
193
229
130
147
208
210
202
206
199
258
275
211
207
173
126
192
256
208
143
248
185
159
131
196
127
174
124
209
192
174
198
190
226
199
129
234
202
237
181
231
231
208
174
203
144
178
157
247
233
245
191
248
202
180
189
233
199
241
213
192
187
202
192
209
169
148
140
188
211
200
208
168
237
251
168
190
248
211
189
238
252
209
233
213
155
175
170
178
222
193
260
208
174
148
189
255
227
204
210
203
200
139
202
199
185
199
227
202
198
174
240
202
269
182
188
184
211
213
182
210
192
211
222
207
237
199
153
206
188
205
240
211
180
223
189
186
122
237
242
221
151
193
158
142
144
194
197
234
159
226
204
198
204
236
174
222
240
181
170
161
167
174
214
228
156
165
165
195
236
234
183
242
171
166
112
185
190
206
158
239
244
176
222
204
145
219
290
251
252
196
142
231
207
203
242
213
193
206
232
227
254
161
158
188
233
219
153
163
191
234
173
225
242
228
221
175
251
234
190
167
253
160
178
288
170
211
205
229
237
141
153
126
177
209
200
176
175
215
213
216
200
147
186
174
228
256
190
276
179
143
184
193
166
180
200
208
210
195
197
284
222
139
212
220
185
189
243
142
142
262
211
236
223
221
193
189
183
217
166
191
169
228
170
172
201
163
267
263
204
171
204
229
189
218
184
208
159
182
168
220
214
215
183
251
202
176
164
221
188
245
259
186
227
252
212
207
272
196
184
217
188
221
166
232
275
190
191
215
167
222
223
213
189
165
186
184
196
260
185
154
258
191
212
267
178
233
111
239
249
264
197
176
179
157
204
233
212
167
191
237
250
239
205
199
217
197
221
219
223
243
168
266
220
195
234
284
216
193
235
195
245
175
201
265
168
209
195
212
257
240
210
157
170
169
163
191
239
133
222
168
216
178
193
157
172
176
200
202
162
174
245
220
189
233
286
189
234
224
220
140
211
197
166
225
188
203
156
211
242
178
187
215
145
154
197
164
222
267
212
223
228
226
175
203
170
198
209
194
151
199
218
177
129
233
220
205
216
200
169
242
250
182
185
141
156
219
133
234
153
210
227
209
229
188
166
171
199
162
169
246
152
199
198
141
181
232
212
162
228
214
138
223
230
216
189
208
215
149
184
207
253
174
247
175
191
156
179
203
168
174
211
226
194
159
155
154
176
152
225
234
263
246
195
171
140
179
240
136
181
223
217
206
230
228
137
212
182
297
191
206
231
230
188
236
237
233
244
160
185
174
148
209
173
146
262
216
150
201
172
169
161
117
179
208
167
163
108
260
169
219
199
216
185
203
240
208
197
195
195
181
207
131
175
171
219
159
193
279
224
246
269
157
229
198
272
200
156
177
210
151
198
218
139
161
151
236
150
210
179
217
172
167
153
139
240
157
153
247
212
218
227
146
130
173
215
152
195
245
232
197
169
221
232
194
257
233
231
133
248
219
182
195
216
185
232
191
186
171
246
187
165
250
238
224
208
242
211
224
248
175
175
241
141
258
251
236
212
133
171
157
255
193
206
221
242
241
203
217
221
190
186
264
176
205
236
224
188
256
258
166
193
166
272
108
221
199
215
172
228
180
181
238
215
178
147
255
166
219
164
221
162
149
231
121
222
193
243
182
262
209
136
151
209
261
219
212
126
146
174
192
196
217
209
224
199
181
173
227
135
206
190
141
90
201
188
189
226
187
272
225
212
167
164
191
208
191
240
233
227
169
185
223
216
215
194
206
193
166
218
264
215
192
214
199
285
176
238
215
186
169
170
207
235
175
215
201
273
207
218
235
175
193
228
243
211
228
209
185
149
166
250
194
166
177
199
186
164
185
206
199
194
197
234
222
193
223
157
269
213
134
186
268
185
192
154
224
193
133
188
205
195
214
237
138
155
182
195
247
208
181
159
226
239
218
194
218
200
180
162
267
216
224
173
162
198
206
222
175
192
183
221
189
162
274
250
146
240
190
219
256
182
199
220
244
219
185
156
216
217
306
262
202
163
181
204
151
199
173
219
222
253
211
218
197
180
192
252
180
150
156
232
205
258
199
138
269
221
177
174
164
226
170
191
197
220
217
181
196
204
205
211
244
181
258
178
184
160
221
201
214
210
235
169
184
222
163
223
196
176
223
175
206
207
181
215
209
236
194
180
196
234
224
174
230
209
189
256
183
185
207
203
144
183
208
215
144
218
198
173
249
230
192
140
153
148
222
255
249
152
168
184
220
222
198
199
161
184
181
184
212
188
237
214
247
172
225
269
133
201
116
253
211
187
197
189
262
177
202
226
184
169
222
149
273
228
136
193
198
185
143
230
242
213
246
244
208
193
164
184
143
185
221
247
179
248
197
236
190
215
199
239
214
151
136
164
208
161
243
191
220
178
262
204
265
182
133
258
128
212
140
200
245
241
186
241
179
250
208
239
190
181
204
180
223
198
239
225
199
215
168
235
216
203
191
185
178
159
175
122
159
124
255
197
188
237
242
224
199
188
164
153
198
196
231
201
238
158
225
172
154
205
200
182
182
171
228
163
141
267
221
195
169
194
155
177
231
166
237
149
201
197
198
224
216
182
147
166
181
114
240
205
144
178
237
230
221
265
191
217
263
269
108
119
143
180
205
224
171
233
233
244
161
226
216
189
227
270
157
201
200
137
231
165
188
201
176
160
245
205
159
187
132
164
229
226
195
173
225
159
219
163
112
181
230
186
163
245
218
207
210
217
205
199
162
178
211
217
230
222
201
252
203
255
233
186
232
187
201
222
153
196
234
189
208
201
229
219
186
166
160
219
201
180
170
146
211
145
195
224
151
203
225
239
222
128
158
268
234
179
205
234
209
211
115
175
251
148
235
200
252
204
228
196
211
240
146
194
236
186
215
107
214
210
220
193
202
128
209
185
270
196
215
207
257
114
209
238
163
208
156
135
193
225
219
115
213
217
245
166
246
278
151
190
118
224
178
176
134
219
223
92
226
244
242
228
216
181
185
143
245
196
213
213
208
203
233
231
242
224
248
238
207
211
225
108
226
227
183
218
264
155
216
184
160
198
184
260
201
245
249
210
188
193
217
255
236
160
266
155
217
154
152
217
220
148
208
203
217
174
217
171
191
225
200
181
184
191
206
204
179
140
122
170
208
209
206
188
230
225
205
181
142
244
209
156
185
187
205
208
144
184
208
178
177
225
199
167
267
255
144
177
168
179
173
199
208
224
123
195
238
186
176
201
146
273
210
224
201
157
206
183
180
162
196
152
185
218
174
154
191
162
240
193
215
240
159
240
208
161
257
190
163
240
220
235
199
185
184
153
186
177
228
233
199
222
202
195
152
192
207
214
190
214
227
156
184
156
222
118
181
242
156
201
215
217
162
234
154
197
235
215
118
198
223
164
201
211
216
209
178
217
237
208
232
213
179
232
263
192
229
166
209
224
210
185
174
183
156
151
213
207
182
164
179
173
240
229
126
227
205
195
201
206
169
274
131
176
194
230
170
213
210
198
196
202
179
235
227
198
241
250
195
237
245
204
151
193
203
244
212
295
144
220
126
234
184
157
150
231
185
162
180
227
147
221
198
231
252
197
180
182
242
163
183
265
207
145
184
199
132
156
213
238
230
221
183
184
220
203
146
244
182
204
201
178
220
185
208
207
213
246
188
160
163
225
223
238
232
222
214
221
219
184
222
156
169
248
212
180
178
145
240
183
178
245
169
222
193
220
217
246
184
207
169
225
202
196
196
196
237
240
239
233
234
209
244
221
227
226
210
252
166
141
183
211
199
203
223
223
196
197
132
192
131
218
238
256
245
253
204
212
175
206
202
174
192
214
252
218
180
201
173
215
230
230
225
177
158
181
184
204
198
216
200
237
222
198
236
176
254
190
192
211
214
197
241
236
207
200
185
131
179
201
216
187
151
250
145
175
226
197
262
232
247
222
214
258
186
226
251
237
145
167
156
207
224
184
217
139
218
206
111
170
230
237
161
191
188
192
176
163
165
195
131
224
211
229
202
155
207
183
207
140
217
200
221
166
171
247
173
195
156
186
135
213
179
223
133
174
203
151
197
256
178
162
162
175
213
222
220
181
189
220
160
189
151
178
173
132
288
169
169
274
226
242
172
212
235
214
208
167
185
199
170
204
219
219
235
226
231
234
118
228
217
189
205
180
228
238
219
196
102
251
167
208
202
253
233
245
205
171
145
205
208
146
163
224
167
246
164
186
187
193
154
156
201
221
191
220
189
206
194
197
235
181
164
206
275
122
126
220
246
254
236
129
234
223
231
221
158
180
216
152
201
158
156
124
215
150
240
186
212
231
195
203
134
197
242
173
221
188
173
217
212
198
194
204
190
229
230
261
247
169
131
278
175
102
126
178
205
191
179
172
158
159
256
193
205
242
146
165
134
244
212
222
212
159
174
157
178
172
203
148
174
148
221
205
200
181
245
229
153
193
182
194
177
268
168
141
200
233
166
226
254
216
190
242
205
172
136
209
234
174
215
140
213
147
239
229
178
187
227
170
256
218
203
222
208
170
140
195
212
208
190
195
164
256
149
144
208
219
197
253
191
166
156
255
217
180
256
242
159
224
199
156
140
188
163
129
209
186
219
231
222
141
155
119
163
177
225
193
170
205
239
149
156
217
187
181
219
207
188
224
236
183
174
205
193
231
244
237
210
225
179
241
194
241
195
216
165
230
213
183
188
232
226
208
208
183
207
222
159
217
161
165
234
216
210
219
221
203
215
151
200
177
249
228
136
224
215
156
202
219
219
232
216
247
204
225
200
226
225
226
212
208
196
224
177
156
141
228
148
138
175
281
237
209
198
214
204
241
248
212
173
210
212
203
195
210
228
199
173
226
198
186
142
211
224
263
104
208
141
210
221
176
213
210
155
186
108
189
189
256
179
263
124
238
199
208
234
157
197
178
253
210
281
230
225
203
189
179
209
190
263
150
237
203
191
202
212
167
207
201
224
189
238
213
202
160
235
146
228
152
178
238
231
234
189
173
169
245
187
188
201
180
213
182
162
185
166
199
182
196
203
240
230
268
150
188
226
159
200
241
207
239
227
189
173
251
214
175
220
184
168
206
180
163
145
238
205
205
180
237
216
245
255
219
215
189
199
218
186
203
227
243
215
263
274
217
176
193
185
261
220
244
286
224
283
195
174
249
171
221
232
175
213
240
272
169
164
207
189
179
263
202
270
176
271
190
216
220
188
224
218
196
243
171
230
234
262
243
236
243
136
232
212
188
206
214
159
204
148
192
177
233
209
163
196
194
202
188
178
236
178
168
226
182
238
231
238
241
169
214
235
210
187
229
155
209
241
176
207
242
138
173
250
224
160
226
148
241
180
242
176
194
235
219
194
206
181
159
212
248
236
209
193
190
218
193
222
194
210
206
176
178
208
192
222
191
167
214
257
229
161
217
135
184
240
177
177
200
131
221
253
160
185
198
164
207
192
187
207
209
182
222
186
190
117
171
213
224
199
201
157
233
242
198
186
175
158
214
206
233
182
165
245
172
224
168
254
219
233
203
147
267
239
229
211
194
221
192
224
161
239
217
191
160
180
211
221
201
166
179
183
198
189
195
167
164
251
143
215
217
233
199
104
222
198
210
194
234
202
209
218
143
196
212
186
178
178
185
187
223
206
190
199
225
228
221
181
219
235
252
228
260
224
209
217
206
239
220
214
166
151
202
164
230
191
190
185
247
228
206
164
169
220
228
185
272
261
182
217
180
174
241
159
151
248
207
149
189
202
208
156
190
194
197
191
191
217
221
178
184
207
190
205
211
212
164
229
182
201
194
192
193
226
221
202
227
208
171
203
200
198
178
243
221
148
205
179
226
114
249
169
180
158
181
245
147
134
134
229
229
252
250
178
218
242
230
187
191
226
223
181
209
192
181
225
222
120
172
232
215
216
153
249
171
204
184
232
248
177
176
231
208
247
158
180
137
177
220
154
200
166
189
166
213
161
264
166
178
203
179
164
139
171
200
155
222
195
246
206
190
198
165
173
179
151
132
188
186
249
161
274
219
243
214
158
271
115
208
185
213
174
165
236
200
232
260
225
163
255
194
234
177
198
205
205
271
215
221
204
171
188
215
236
175
182
216
196
229
185
171
194
236
193
220
232
223
184
160
241
168
187
175
188
238
179
229
201
250
234
162
185
280
234
222
225
200
268
177
161
173
244
291
157
218
236
210
183
254
177
188
267
214
230
244
148
209
184
169
201
199
134
174
209
196
209
163
230
195
187
162
196
229
234
150
192
214
177
216
175
176
167
226
249
209
185
211
129
185
205
159
238
213
169
200
247
210
153
193
192
227
214
185
232
226
186
189
251
190
209
179
232
219
144
170
252
203
128
216
168
242
276
176
142
214
193
182
176
223
186
189
158
109
207
222
197
208
210
130
232
164
217
229
198
234
239
187
154
154
132
159
169
202
192
262
189
248
174
229
188
170
215
160
208
220
198
194
215
129
178
173
155
245
143
246
202
140
203
149
202
170
238
234
188
235
86
189
234
221
110
164
251
169
218
202
246
178
171
189
213
215
251
213
164
138
177
142
161
176
190
175
135
216
211
226
180
194
240
106
150
170
224
201
197
167
193
181
179
211
211
240
232
148
230
188
178
194
219
195
225
235
174
156
225
233
151
249
182
214
246
173
230
157
183
234
224
172
290
238
173
234
223
195
134
199
213
214
154
250
206
226
188
229
144
186
223
212
195
186
186
193
225
196
207
169
192
197
192
202
182
200
240
237
226
228
210
181
135
223
199
182
168
162
238
213
157
200
202
127
222
168
214
223
218
190
233
218
235
161
233
200
165
174
147
192
228
234
232
239
191
181
187
180
184
204
186
243
182
246
145
200
177
263
194
100
247
151
209
219
190
150
220
187
215
215
153
258
166
213
194
240
206
250
249
226
197
192
181
189
232
220
280
196
207
219
205
141
248
164
211
246
205
233
212
122
232
262
185
174
183
233
167
173
221
247
226
175
150
249
181
194
217
242
191
159
262
252
167
159
196
128
189
227
204
182
209
232
207
235
204
204
165
178
233
221
214
175
201
236
213
239
195
216
280
203
195
201
189
225
162
217
168
232
211
216
167
193
165
233
242
169
228
182
171
184
150
212
184
234
126
226
197
192
190
162
197
260
203
214
223
213
156
167
148
198
189
177
112
179
236
191
214
161
247
212
184
251
188
280
209
178
221
234
268
232
201
162
186
229
180
158
215
177
180
137
183
155
211
200
220
187
199
189
216
218
217
188
179
247
210
213
178
217
216
218
208
216
178
138
215
188
235
235
219
183
147
141
237
194
187
211
210
235
219
244
158
157
186
200
249
244
223
256
240
202
177
138
176
204
245
209
172
207
214
166
179
193
187
239
250
177
229
253
168
212
225
187
195
148
168
175
206
229
214
160
219
268
244
262
214
196
209
232
198
179
202
189
199
177
181
205
192
230
193
240
220
177
159
228
256
168
217
167
166
197
215
175
160
211
216
158
211
217
198
166
234
247
189
201
133
226
135
252
209
188
222
252
241
203
219
235
197
248
247
214
150
182
229
140
239
225
237
218
201
160
216
203
235
187
243
199
190
214
198
206
197
198
156
185
202
237
217
254
199
121
223
247
152
228
204
178
155
163
160
211
169
233
193
212
181
190
249
214
197
123
182
196
185
182
229
214
206
201
232
225
166
197
192
185
172
191
233
228
214
220
238
171
202
186
239
186
269
201
256
223
213
131
184
214
234
266
237
213
227
188
233
189
161
240
223
242
198
213
244
214
183
211
238
168
214
202
184
213
150
189
277
169
237
206
239
209
283
251
172
194
164
157
227
155
225
199
207
200
197
166
199
184
78
205
160
206
168
187
182
180
201
258
221
191
123
206
193
248
250
207
249
197
193
241
172
245
176
169
129
230
152
189
186
163
256
153
222
128
165
210
238
205
182
202
206
194
233
214
183
177
207
211
175
145
158
174
217
203
198
183
218
135
237
209
134
175
203
197
207
207
217
240
194
202
168
254
204
199
239
220
235
227
214
162
223
194
220
139
271
236
178
164
199
198
200
177
126
215
169
239
203
163
225
226
245
153
215
324
212
175
185
196
145
203
135
266
226
138
204
204
255
195
147
200
198
226
183
266
237
218
171
223
207
226
210
218
208
211
148
234
119
261
230
160
132
218
207
164
180
160
178
198
181
155
252
208
210
217
149
169
197
128
230
171
180
235
190
235
180
179
195
188
202
247
259
219
259
186
204
180
158
185
134
222
208
210
250
148
188
153
221
176
218
163
108
226
168
236
228
217
212
266
242
140
194
245
222
208
141
260
205
194
195
225
195
217
206
172
223
179
201
172
188
225
148
155
205
219
178
188
188
243
181
173
208
206
236
187
245
253
161
160
186
201
234
261
164
167
208
236
206
184
231
134
215
200
228
188
210
149
162
270
215
207
187
170
196
193
171
185
276
171
184
198
153
175
122
194
171
212
185
129
163
174
220
199
187
178
210
190
187
205
195
201
238
174
205
157
206
198
174
266
204
142
226
195
174
161
173
259
190
179
222
195
199
138
232
153
257
190
272
217
219
209
228
211
154
192
231
267
203
195
217
232
197
197
243
156
106
187
133
237
181
203
174
206
172
200
176
215
191
216
172
207
210
188
203
194
220
165
241
196
210
124
156
168
265
221
197
251
231
213
171
225
190
175
183
169
209
216
194
220
173
200
144
190
191
195
238
204
193
214
186
182
161
195
213
159
206
227
93
188
105
212
236
174
188
256
172
152
210
184
234
250
187
200
220
242
202
177
222
244
161
204
160
221
212
153
132
200
269
219
176
156
217
221
228
170
152
168
142
245
220
222
166
222
206
232
211
232
257
221
208
204
250
150
227
187
125
207
205
191
244
175
195
173
203
159
122
198
213
171
140
148
226
188
209
261
136
198
179
260
178
244
191
225
204
176
156
181
215
220
187
224
234
183
219
246
170
213
171
196
154
219
194
217
237
210
174
143
170
175
191
196
162
245
153
200
289
200
191
168
160
211
182
184
220
204
255
206
182
217
195
164
205
201
156
204
186
96
210
243
218
155
212
146
241
148
260
202
229
227
242
154
156
203
175
220
184
162
144
215
187
226
213
191
126
185
219
220
159
167
157
204
211
158
237
218
144
263
153
231
209
248
238
215
141
180
224
298
208
182
234
156
215
167
175
194
198
217
199
221
159
161
210
189
195
182
158
138
171
227
260
209
186
191
165
242
209
204
239
159
181
225
252
215
168
175
261
199
171
134
224
191
171
233
201
282
204
218
152
175
234
173
255
207
204
221
137
220
164
210
205
267
206
234
225
106
143
161
169
180
198
258
227
165
203
178
215
203
178
226
181
214
242
155
136
202
170
257
183
233
251
210
164
170
161
176
181
193
207
186
146
212
257
206
121
198
211
252
167
144
148
233
235
221
216
232
212
257
179
130
196
203
230
124
246
225
225
228
265
177
158
143
228
229
171
210
201
232
208
181
239
232
231
202
246
210
214
198
165
181
191
186
128
218
246
264
153
230
211
212
188
169
192
211
228
250
218
161
205
171
186
156
250
118
203
193
183
282
256
178
287
179
182
234
175
179
263
209
205
234
213
238
219
191
201
174
170
231
219
185
188
189
207
197
277
206
213
160
227
224
244
150
168
162
179
203
211
169
188
264
176
221
201
224
237
195
223
174
227
184
174
193
257
180
239
230
193
223
174
146
239
175
187
202
202
228
156
202
245
217
251
172
154
168
218
193
211
211
163
126
211
199
154
169
164
194
180
234
158
214
199
194
296
188
169
155
128
189
224
252
161
196
140
218
212
238
208
188
202
187
206
251
119
156
158
172
232
227
163
221
190
239
166
220
228
253
198
165
228
238
145
196
215
213
208
239
164
193
133
216
210
160
206
197
186
153
174
171
214
220
199
242
197
190
163
192
197
169
218
214
210
271
217
193
241
213
121
243
129
201
201
151
173
229
219
230
170
162
265
194
229
197
204
273
211
179
195
152
174
167
202
174
212
177
93
211
179
150
276
237
199
197
190
228
184
154
149
158
209
131
169
217
198
258
188
231
145
181
151
237
216
180
182
196
174
245
197
204
189
234
164
245
220
223
198
186
208
207
143
207
229
236
243
233
268
140
189
242
148
217
215
205
181
168
187
206
182
224
187
170
214
233
207
226
239
184
230
130
217
243
244
246
154
243
214
156
144
188
199
169
190
226
179
227
183
193
262
216
170
208
179
219
224
177
215
250
146
232
222
164
216
165
206
231
234
233
151
180
193
179
228
221
153
185
159
148
226
191
161
181
204
163
152
197
225
173
230
212
193
203
187
212
216
183
239
214
221
191
166
185
196
172
197
166
200
238
202
205
249
261
231
256
143
201
144
219
198
131
143
223
221
123
224
197
213
229
189
174
152
216
198
216
242
193
188
246
250
224
228
225
205
184
200
153
210
140
248
204
255
194
178
203
208
232
232
244
168
184
156
191
205
170
249
213
193
220
198
227
264
213
265
192
211
268
219
243
223
192
219
202
123
214
225
213
160
152
214
282
178
267
223
179
186
225
211
186
192
227
258
217
173
234
153
195
161
237
251
183
219
159
236
217
190
234
222
176
169
261
253
217
166
231
225
202
232
163
230
214
101
155
234
238
176
189
250
231
174
207
170
197
222
231
216
181
190
258
139
204
212
197
219
246
173
226
187
209
211
187
222
184
181
204
183
218
138
158
211
217
173
195
162
214
209
139
181
177
170
210
180
169
211
244
209
166
213
226
173
261
178
210
147
159
273
137
218
154
165
222
205
188
248
188
267
153
137
258
196
203
199
218
225
246
197
196
207
141
179
216
218
188
176
281
259
176
103
208
267
179
172
161
127
228
180
207
205
249
185
166
188
182
229
141
208
249
170
184
176
184
183
225
228
164
244
189
215
176
190
248
197
146
175
183
231
193
187
194
208
184
208
228
158
211
149
169
271
232
184
223
167
200
179
177
217
260
150
211
188
168
208
226
226
187
174
167
240
202
183
162
169
141
198
182
228
209
186
217
228
167
169
167
197
254
212
155
162
175
181
214
201
256
214
133
197
215
198
196
173
217
163
190
229
210
198
186
244
197
223
186
223
234
203
157
210
219
185
186
170
127
232
177
195
224
169
207
199
233
160
213
206
144
218
243
193
197
212
257
187
247
220
179
169
126
215
205
197
246
241
269
195
191
201
212
171
213
193
215
162
213
217
247
233
222
195
144
240
195
153
191
195
231
201
248
198
209
213
190
163
162
227
222
226
239
186
250
192
253
250
216
214
190
192
201
165
187
271
198
196
194
201
239
214
189
205
158
221
208
194
266
174
205
187
191
189
193
187
215
171
151
201
152
148
174
204
222
159
145
173
186
131
186
156
181
185
209
259
160
232
226
186
247
177
185
171
213
181
248
171
207
254
168
181
174
195
230
168
157
207
265
204
147
188
231
199
224
221
190
231
115
210
236
205
175
210
199
240
205
198
178
244
206
206
160
186
165
195
185
202
173
185
255
202
191
195
197
195
211
145
231
175
174
241
237
213
262
216
238
233
183
184
192
146
139
175
194
200
196
224
214
246
196
243
174
212
213
175
130
182
226
236
163
204
236
229
212
124
239
166
217
198
240
261
206
249
236
194
178
228
186
135
181
229
208
189
163
197
196
209
218
198
213
250
243
181
223
216
163
170
155
183
246
208
166
278
166
210
212
200
144
250
205
232
244
200
161
179
196
240
221
146
194
158
148
226
235
213
215
223
221
225
190
194
205
190
261
198
160
258
272
200
179
177
188
237
194
236
188
152
97
203
163
213
167
194
222
255
181
216
184
168
242
193
187
210
243
191
153
193
248
213
214
189
177
204
197
192
210
130
236
251
200
153
215
209
206
175
188
209
116
170
224
214
178
212
174
160
191
182
192
199
196
221
269
178
239
188
169
174
180
156
241
273
217
182
206
198
279
171
170
269
195
141
189
204
213
179
210
220
213
207
124
240
175
170
169
179
128
193
167
216
201
231
186
214
251
197
243
195
223
213
218
209
192
165
226
227
210
190
237
240
196
225
239
242
176
246
203
155
153
164
184
136
185
142
162
200
140
191
221
219
153
234
227
175
274
269
203
246
164
177
150
160
167
253
237
196
202
183
182
262
219
194
184
185
231
145
174
222
195
220
204
214
223
208
297
168
239
190
178
224
266
139
221
268
178
202
221
141
152
182
226
202
213
212
173
177
124
174
173
179
200
207
174
198
241
151
233
189
203
235
167
213
214
164
179
215
164
196
216
149
235
274
250
218
206
218
258
196
202
224
185
238
229
190
195
175
222
209
208
202
164
233
265
217
143
181
205
167
198
243
209
217
264
145
242
220
208
191
188
258
107
235
240
248
178
175
209
211
240
155
260
163
195
154
193
225
227
193
186
253
214
219
166
195
230
261
221
187
174
202
225
182
199
213
212
199
215
230
194
214
216
221
228
158
190
201
215
203
208
153
207
195
257
175
173
180
203
262
213
182
225
279
230
221
282
204
225
209
179
224
204
178
229
214
201
172
205
178
183
146
208
228
174
148
186
228
183
143
151
188
301
206
243
138
209
199
240
155
273
175
162
192
200
227
197
165
200
179
215
114
165
169
172
190
156
198
266
179
165
180
228
192
206
207
167
239
194
152
211
240
143
184
200
216
135
128
167
185
221
215
203
192
228
214
221
209
197
194
212
187
164
172
192
175
166
160
181
236
204
208
210
190
116
239
213
214
271
207
227
245
291
186
175
230
162
150
199
265
210
146
150
223
197
213
140
195
130
194
185
220
169
206
197
271
233
216
225
181
231
191
252
210
174
241
143
206
176
229
213
195
159
200
237
255
243
189
294
233
236
226
191
226
173
171
163
209
207
273
143
147
221
249
188
193
194
183
181
218
182
224
214
217
199
195
263
214
130
208
231
214
124
172
161
181
235
173
168
195
158
194
171
234
243
170
182
232
202
217
267
193
196
200
212
188
127
152
194
209
234
237
213
176
146
158
227
280
140
207
205
175
207
199
224
209
145
215
204
163
181
152
196
253
155
191
194
209
140
144
213
136
204
174
132
225
241
166
224
204
169
159
211
266
148
154
252
177
203
225
133
256
176
145
141
223
235
218
170
208
203
203
212
205
212
152
239
217
167
175
248
142
233
201
206
171
145
214
178
181
191
153
183
269
190
240
213
207
248
234
214
175
178
201
183
179
252
178
237
217
190
191
213
279
207
186
204
260
157
171
187
193
237
138
221
208
201
223
195
232
215
212
184
222
238
146
188
242
229
217
163
237
211
224
237
157
199
188
229
246
176
163
254
194
235
225
177
228
152
205
205
204
175
151
170
215
205
232
159
207
166
155
224
193
250
178
187
192
206
195
177
158
177
237
233
199
244
158
222
173
189
220
215
173
224
166
223
181
203
227
170
232
231
226
240
208
173
260
242
130
181
228
158
212
156
212
184
204
132
192
143
267
238
138
180
226
209
156
195
203
191
205
168
220
173
150
198
152
236
128
203
221
129
136
239
196
224
145
224
247
170
200
171
143
204
156
141
190
237
129
177
218
200
220
177
223
187
238
128
191
209
172
164
197
132
187
198
207
265
239
169
214
181
208
238
144
205
218
223
235
112
150
232
170
242
173
208
172
196
142
131
209
183
226
199
167
185
148
187
169
155
214
213
213
112
215
207
116
228
181
181
196
147
208
267
183
260
210
229
250
241
195
182
141
229
209
203
134
247
274
225
213
216
197
228
180
201
194
217
196
167
209
219
174
224
204
141
247
188
217
160
232
181
115
245
111
163
266
115
183
241
209
167
206
164
248
223
172
190
251
167
231
178
198
123
188
158
222
246
225
229
149
156
136
210
236
226
173
183
192
199
166
259
200
163
238
169
167
228
170
146
265
164
230
202
215
181
111
213
174
154
243
209
223
239
168
212
169
235
191
189
208
243
180
185
221
143
215
147
177
196
154
276
202
133
212
229
204
198
136
235
210
211
197
250
195
183
228
170
171
239
207
212
166
177
246
159
216
199
225
228
266
211
210
212
193
203
250
192
179
177
246
185
159
236
257
160
245
218
151
170
223
157
202
146
241
207
180
223
170
188
144
187
206
197
204
176
170
173
225
213
179
255
164
162
169
173
164
205
202
192
225
194
189
178
242
216
244
213
190
230
174
156
268
174
244
193
193
166
222
212
238
223
255
259
237
181
219
201
221
235
227
191
258
148
166
160
230
171
196
155
217
192
221
233
180
156
244
242
221
190
183
266
173
223
210
156
180
199
164
199
192
210
199
151
203
168
175
242
191
222
181
185
254
245
166
197
190
174
205
143
178
172
183
218
162
206
207
226
131
219
222
229
229
160
182
135
201
165
175
175
113
243
237
213
164
282
139
231
251
222
253
193
220
238
214
213
144
228
239
194
171
213
204
269
155
212
139
232
168
168
252
235
190
185
200
265
257
215
216
186
216
205
197
188
240
210
137
163
227
200
239
167
274
155
162
173
202
179
231
174
140
192
196
175
207
173
217
194
194
139
135
164
262
159
192
178
188
176
154
173
226
173
257
183
233
243
252
231
231
207
163
185
191
222
149
180
206
209
152
234
234
192
236
190
158
196
256
270
157
245
178
171
231
177
188
189
188
206
232
211
200
251
184
232
208
163
230
233
229
162
214
187
201
240
192
267
247
176
180
265
236
157
245
212
174
224
204
253
185
182
208
148
228
167
230
237
184
268
217
185
203
189
205
227
147
185
173
250
218
222
177
122
156
214
196
181
169
220
236
234
171
150
264
215
169
207
222
208
116
197
212
155
156
149
100
241
222
213
231
166
202
172
211
179
129
242
156
160
200
236
261
154
200
190
281
181
243
215
187
235
172
212
149
208
228
202
214
172
188
218
188
165
189
182
139
247
225
157
176
127
216
203
218
139
215
205
243
184
234
235
212
178
199
160
188
146
186
184
125
171
211
223
214
216
223
224
260
146
125
199
171
209
246
261
214
235
217
218
219
216
140
231
182
173
184
243
225
265
164
240
175
186
187
241
124
172
224
202
234
172
266
203
247
217
240
175
163
214
161
148
198
220
172
146
178
213
238
207
212
185
137
193
182
194
199
248
204
195
213
177
155
194
118
224
252
169
222
201
190
172
196
221
219
163
216
132
162
253
118
186
187
187
223
205
248
191
225
240
238
173
211
243
233
198
142
224
195
238
122
234
221
198
206
205
191
147
154
233
182
226
175
209
266
163
190
161
163
220
209
264
220
194
218
221
171
217
172
107
197
276
143
217
192
194
257
226
236
154
187
168
154
192
187
246
181
163
144
229
136
236
194
163
203
253
190
206
188
210
194
209
230
214
184
234
124
222
188
228
192
231
160
206
164
209
192
223
208
192
181
186
173
215
199
130
203
185
215
223
227
230
215
211
216
250
138
146
179
226
166
125
138
204
211
167
214
190
148
127
188
182
199
186
185
216
171
230
225
153
265
234
181
195
216
148
157
262
137
171
222
171
217
194
205
208
238
191
183
260
213
202
174
180
156
205
194
171
203
177
178
204
184
242
217
184
194
165
144
181
231
247
173
227
103
179
182
161
276
179
188
207
247
150
185
237
182
258
181
195
239
122
224
231
257
211
228
232
229
184
233
217
247
188
261
221
169
177
161
195
122
195
230
177
232
210
174
225
269
223
177
179
244
179
184
190
252
168
200
171
180
194
189
195
200
223
282
196
173
142
219
256
241
181
170
194
164
197
182
148
216
187
196
263
203
233
220
225
238
164
113
260
168
187
121
210
149
181
219
227
200
222
181
214
237
172
175
151
139
267
215
148
222
149
222
220
156
248
211
251
251
174
224
218
226
193
174
152
187
206
186
97
149
201
183
184
223
131
192
223
239
175
184
223
220
206
177
249
193
248
223
199
189
241
178
213
225
242
180
190
178
207
264
213
197
191
248
275
193
267
179
240
249
154
210
173
225
223
202
206
174
161
221
251
193
252
199
233
206
236
197
194
287
227
223
174
183
215
215
186
193
187
187
256
223
199
228
179
204
144
243
191
211
174
208
244
170
262
187
232
208
230
189
226
185
172
168
116
207
191
225
180
228
177
239
213
252
168
137
245
234
159
183
213
199
187
197
229
211
252
190
224
199
183
236
178
218
177
262
227
209
210
165
221
202
196
236
198
218
212
183
201
243
152
155
195
258
169
212
174
195
147
160
177
166
186
227
189
210
204
249
216
163
162
158
223
238
206
170
235
192
175
200
179
206
174
178
201
178
207
276
222
189
237
160
194
199
231
219
193
155
246
232
241
232
218
190
228
176
231
176
191
289
258
197
145
172
209
212
174
205
221
154
215
148
205
213
172
199
234
176
267
188
216
211
235
192
188
218
155
188
259
222
201
209
182
175
227
238
207
186
177
164
119
215
169
243
175
204
229
222
297
205
201
259
209
213
214
229
231
198
240
223
203
235
243
171
230
251
225
205
218
195
242
183
154
206
85
185
215
271
230
250
180
225
204
221
222
166
179
224
164
209
254
204
149
174
204
232
196
159
120
195
226
145
294
230
163
211
237
214
178
163
213
157
213
213
175
135
182
241
278
222
196
224
148
177
158
126
242
202
200
219
202
187
197
139
231
201
214
243
204
139
172
230
210
222
241
208
207
187
189
228
201
223
165
220
212
223
243
167
243
134
137
163
124
230
129
216
155
250
229
169
222
141
199
244
196
190
211
168
248
241
258
134
209
231
144
201
228
207
141
209
175
180
116
192
185
218
234
146
211
196
198
165
204
210
218
210
215
279
183
214
201
124
228
159
180
181
251
211
216
199
219
223
214
165
205
220
265
225
224
225
183
192
218
169
194
199
231
163
173
209
176
204
173
204
228
260
227
196
195
152
184
236
190
160
249
161
194
197
256
219
168
218
220
131
169
224
196
201
171
174
240
220
223
227
214
207
251
261
217
192
218
238
171
197
222
209
176
148
240
181
164
203
207
207
244
223
186
190
190
192
168
193
255
231
219
221
211
210
252
211
195
205
173
211
195
169
225
190
205
203
211
223
159
263
281
156
198
189
161
191
207
174
229
209
180
248
243
178
163
222
169
234
276
186
192
182
226
216
186
172
236
182
222
222
188
210
236
225
220
190
226
194
222
189
220
161
186
216
169
221
238
195
210
225
195
263
186
197
248
228
193
247
186
223
210
179
196
151
212
180
184
214
201
227
233
252
176
168
155
189
182
174
159
162
222
194
186
207
168
164
233
164
208
186
228
207
170
177
226
137
175
286
240
266
237
190
212
212
144
222
202
259
207
175
181
243
192
222
219
223
168
187
212
238
201
172
215
164
198
172
208
157
205
201
211
246
163
168
130
181
197
176
204
233
179
210
208
161
203
154
223
173
255
220
279
151
224
158
228
192
182
190
227
131
159
225
172
208
214
207
157
223
186
133
213
209
207
246
231
204
239
223
189
184
282
251
179
189
217
234
230
217
261
263
279
216
236
189
139
253
204
205
214
255
212
196
224
177
197
131
166
235
226
178
187
173
213
205
214
235
174
209
222
152
208
157
199
201
171
184
210
164
170
246
158
121
207
206
115
209
201
189
283
183
214
177
256
149
275
205
266
207
200
167
140
176
237
139
144
196
180
171
200
202
216
190
163
199
248
235
206
251
176
282
167
176
204
273
190
213
225
174
226
161
224
194
178
195
196
182
241
219
188
223
230
228
195
133
220
189
257
233
222
229
210
222
215
235
194
155
229
235
173
237
176
231
118
206
155
210
223
181
191
261
206
150
186
191
169
186
176
223
237
231
147
220
220
205
164
210
233
214
220
138
136
211
220
166
191
171
250
145
187
164
175
259
212
145
206
179
175
221
196
222
203
207
228
95
246
229
195
219
205
200
173
217
235
160
177
174
162
219
184
225
226
209
252
228
248
178
161
272
220
225
216
212
234
87
195
218
220
200
197
237
210
189
200
162
211
259
231
252
234
167
204
238
212
176
171
220
200
223
216
173
242
165
228
198
238
166
214
197
188
195
152
201
241
214
259
209
155
206
151
205
232
185
220
232
161
163
168
190
193
216
147
228
219
173
169
241
202
164
253
241
215
193
218
230
191
192
182
224
182
225
227
155
155
193
251
195
215
239
241
186
215
205
167
177
267
185
188
204
185
219
133
216
213
202
196
196
219
254
171
160
250
260
114
201
259
201
167
235
199
272
213
186
147
160
149
175
197
232
171
201
175
209
216
169
211
194
179
230
178
191
168
186
186
218
188
192
219
156
161
195
231
185
201
202
223
180
223
134
175
138
201
152
187
255
181
111
196
205
210
252
183
216
185
235
183
235
206
248
220
235
260
212
251
128
204
186
265
201
221
195
201
156
219
195
164
235
172
208
229
207
180
220
255
178
225
225
222
186
167
216
150
165
241
228
201
151
132
232
172
231
194
189
167
212
159
268
242
197
180
180
143
157
167
140
217
253
174
207
247
189
258
218
238
256
203
187
155
235
189
207
199
249
189
212
193
130
201
129
213
215
220
184
224
167
170
204
196
226
197
235
196
172
233
200
215
153
166
152
238
200
158
236
209
158
151
147
174
239
178
173
194
207
207
123
195
205
158
247
162
159
185
222
207
200
172
220
173
204
229
174
160
236
114
195
191
175
172
114
241
218
170
208
252
222
197
165
180
207
142
212
216
177
214
188
190
235
173
173
181
123
208
238
173
155
202
212
164
208
108
222
266
277
241
219
195
181
210
209
155
217
210
235
233
253
146
181
231
156
176
208
208
133
238
206
177
171
177
159
172
207
134
231
125
218
201
234
182
200
219
185
163
205
297
180
179
206
226
221
192
211
215
248
223
268
178
190
209
164
213
202
199
192
178
204
264
244
215
188
187
253
168
206
269
205
237
222
253
194
194
242
220
216
184
245
175
190
255
173
166
213
210
149
255
228
228
175
235
184
172
223
285
202
228
177
181
162
220
205
235
221
199
234
261
161
180
212
205
253
186
184
179
222
142
220
182
181
216
214
185
254
239
241
251
196
172
188
245
160
260
228
181
203
237
195
156
223
220
212
138
192
264
244
245
219
278
257
217
230
213
141
167
217
163
213
214
166
200
256
196
190
252
199
204
168
159
214
214
150
179
169
262
232
184
232
216
192
199
189
217
217
154
239
220
235
227
158
184
211
149
214
167
176
224
204
208
198
226
219
144
195
228
175
172
237
205
154
205
183
253
251
207
146
182
219
146
206
183
198
194
156
197
180
199
176
188
204
242
189
218
203
171
232
227
179
206
208
228
172
198
119
201
175
213
225
208
198
232
176
159
188
230
253
172
165
260
192
186
206
173
135
159
118
203
199
214
212
217
213
143
160
236
191
175
198
194
214
110
127
197
254
183
229
176
226
220
201
243
223
250
200
127
175
211
192
200
246
175
156
172
231
194
221
212
200
190
183
146
216
156
186
176
231
162
201
195
272
223
240
217
258
174
276
201
219
224
169
206
185
195
228
194
251
214
183
241
196
143
217
217
132
180
184
183
172
175
169
220
197
206
220
213
236
173
173
171
228
228
205
165
222
205
181
168
168
131
197
198
216
180
217
163
186
173
248
206
188
220
214
193
212
186
181
214
144
159
256
212
152
254
217
198
183
162
148
153
204
219
174
173
166
187
160
160
175
216
178
178
182
199
223
189
222
242
173
156
220
259
215
149
169
200
130
210
158
269
195
234
198
168
220
194
221
159
204
210
196
214
251
177
168
229
120
241
192
257
242
279
245
214
236
221
145
222
200
226
259
208
142
226
209
156
184
192
197
210
203
193
237
181
168
176
231
198
277
112
241
221
195
214
225
217
137
220
226
227
230
230
196
205
239
167
192
136
171
218
194
178
181
186
132
256
195
145
197
232
155
224
177
177
177
218
199
247
218
251
205
226
201
102
194
200
243
227
230
175
143
175
191
232
139
155
223
187
211
162
210
209
168
214
180
185
226
172
167
205
224
214
218
182
233
244
197
228
212
145
251
163
171
208
167
180
186
220
141
248
202
160
232
196
234
174
252
183
200
178
239
236
298
210
209
189
177
245
146
178
208
212
219
212
153
190
173
191
217
259
182
220
152
248
183
257
213
267
223
174
206
176
193
136
212
189
206
193
237
173
185
250
157
202
187
244
222
194
232
197
242
221
162
199
192
161
244
187
224
140
163
188
185
182
172
196
201
196
253
187
183
132
142
143
231
244
208
220
195
225
219
208
256
191
171
186
196
173
240
232
236
203
210
261
182
240
200
167
193
180
200
157
178
196
221
193
229
269
253
154
206
186
136
179
193
196
239
197
219
245
180
239
240
209
218
245
181
216
166
235
253
196
260
244
244
257
217
158
189
171
225
193
182
168
191
240
186
188
171
229
191
196
229
173
249
212
226
219
260
234
166
230
239
193
263
187
258
268
219
273
238
130
225
227
187
198
205
216
208
227
191
190
199
254
163
233
156
222
206
210
225
215
216
193
210
174
196
217
221
168
254
225
158
170
226
227
231
255
188
209
217
160
154
200
195
164
196
241
215
187
198
191
203
252
172
249
143
135
235
223
250
201
200
112
236
187
213
215
253
182
187
257
260
237
242
179
211
166
156
217
203
195
199
164
133
202
206
221
190
238
147
215
178
226
195
202
240
214
217
139
230
251
252
210
143
191
249
198
182
244
218
187
130
168
211
167
144
146
202
223
150
216
224
230
115
260
178
189
120
159
205
225
218
202
202
212
268
245
167
236
207
154
216
179
260
220
182
216
241
219
227
203
203
213
198
167
165
222
202
183
172
235
164
171
187
224
217
159
209
226
235
234
207
243
234
241
180
255
201
149
231
177
243
169
220
212
218
241
169
207
214
229
192
200
186
155
247
228
199
152
205
226
250
193
211
209
232
208
193
182
187
141
223
215
190
197
194
156
249
192
247
196
213
165
221
199
146
173
228
212
226
175
242
176
169
177
244
224
221
181
205
212
216
216
181
230
124
221
226
211
179
201
216
144
215
238
204
195
227
228
214
276
181
206
201
178
216
197
245
164
246
213
207
150
230
221
234
214
195
178
209
190
143
148
227
167
214
132
231
208
232
198
185
235
221
146
219
196
215
125
220
229
204
204
241
208
177
204
178
206
191
209
228
173
165
212
176
262
174
187
196
198
192
185
208
170
206
197
232
225
227
131
170
220
203
202
240
172
206
205
194
247
183
189
243
209
136
197
181
157
203
189
210
171
247
195
148
189
162
235
224
173
187
185
223
174
193
178
205
247
206
192
228
210
195
215
211
199
203
259
164
197
192
186
263
173
157
266
221
163
241
196
207
231
126
207
263
244
215
231
185
180
205
196
231
199
211
232
197
188
194
212
236
210
193
214
211
208
206
271
170
170
210
215
167
237
205
220
230
198
145
160
231
172
201
164
200
172
184
209
114
197
188
177
241
242
182
174
272
214
186
234
142
198
259
273
250
254
228
210
206
238
252
184
241
260
196
208
241
208
174
178
203
184
203
194
164
180
191
160
194
219
240
175
245
227
180
244
182
200
246
110
254
201
167
227
190
227
151
201
191
150
229
242
148
225
231
201
237
260
236
226
164
168
264
180
204
183
180
232
227
202
228
189
177
216
179
183
170
164
192
174
190
227
157
237
117
167
199
185
255
175
229
208
160
176
101
187
210
209
238
185
173
216
221
193
207
274
179
179
261
180
182
148
241
205
237
194
203
224
185
185
175
141
218
211
215
240
166
226
256
241
202
193
256
167
245
282
180
211
167
130
185
181
199
222
265
216
175
171
165
261
197
184
204
213
247
231
233
128
186
202
175
198
190
183
220
182
229
226
250
187
219
230
189
204
206
233
215
143
190
200
244
222
247
184
168
188
151
167
229
185
225
207
214
180
205
173
166
256
212
199
171
209
206
210
218
214
174
171
250
225
159
160
256
171
275
186
246
230
199
233
187
176
187
213
256
187
260
184
198
239
232
194
190
179
183
154
224
144
179
152
152
158
199
168
197
194
220
213
198
236
227
203
168
158
181
198
151
217
142
180
179
127
204
192
202
306
162
166
206
232
225
151
219
158
219
183
201
258
197
176
151
239
134
222
237
154
255
177
188
143
157
244
194
115
208
203
217
184
181
139
130
232
183
199
191
188
184
251
167
192
207
186
218
230
183
237
219
224
174
244
185
230
209
155
236
218
189
187
208
164
186
192
259
174
204
135
266
128
148
227
131
178
178
226
170
219
207
241
203
143
204
138
119
235
212
259
192
151
164
182
194
177
240
231
250
194
196
251
194
228
204
230
195
238
250
206
176
158
209
178
165
227
190
184
195
210
144
216
211
184
140
205
167
217
161
210
183
134
216
238
139
189
234
230
187
253
211
149
185
204
216
191
180
255
218
195
171
222
203
210
184
226
229
271
223
213
142
200
224
211
176
198
212
232
222
215
224
209
232
236
237
198
230
216
200
212
171
149
156
225
232
162
199
184
257
170
177
180
213
246
176
202
208
168
210
231
188
223
191
216
198
171
221
182
223
255
175
162
193
231
246
188
244
235
178
189
281
276
215
229
178
164
219
224
218
220
250
209
228
219
248
182
222
229
266
201
168
159
178
195
178
204
206
249
219
221
192
193
114
159
236
175
158
240
161
180
196
175
239
167
208
203
242
245
188
246
198
203
276
168
190
184
200
158
188
259
198
153
177
231
124
201
167
237
195
221
185
151
207
215
202
210
241
257
191
186
201
245
240
276
222
203
200
272
219
208
230
182
199
210
198
180
220
205
201
183
237
162
185
204
190
204
200
219
187
150
189
164
253
200
178
205
210
161
171
155
159
198
176
224
233
212
220
237
206
143
237
231
177
144
255
148
198
183
165
226
214
233
188
215
175
217
174
184
162
235
223
203
290
129
148
156
218
215
240
174
223
209
206
204
199
162
123
207
203
207
221
198
146
153
239
240
208
181
163
211
127
204
237
151
154
173
198
194
170
180
218
200
203
229
184
235
248
131
220
147
188
204
210
215
202
187
286
260
200
199
170
149
205
203
133
171
207
196
223
192
177
228
259
255
227
163
231
260
242
257
166
189
163
202
181
254
262
278
178
223
201
172
221
261
236
190
210
219
219
189
192
157
184
236
193
194
201
211
174
225
181
212
228
219
134
178
187
181
184
203
202
163
137
192
250
188
127
221
232
129
237
183
184
236
214
288
212
128
222
209
191
181
186
188
165
194
193
145
225
170
280
228
142
229
177
231
221
190
211
192
195
220
197
154
207
234
210
196
224
172
210
181
275
202
204
242
204
222
157
221
235
191
165
139
192
178
264
175
198
140
167
220
244
218
195
245
135
234
148
242
258
186
243
206
199
222
223
153
217
211
188
229
216
213
228
100
222
235
172
212
193
196
210
166
234
132
218
184
155
187
236
111
226
203
223
213
261
268
266
163
215
193
225
123
239
226
223
185
167
200
208
179
211
189
190
244
190
216
190
214
156
253
260
198
206
207
175
213
205
222
198
115
200
217
138
189
176
219
216
195
269
156
192
142
137
244
194
253
143
196
148
200
189
200
201
195
239
282
197
216
203
159
210
241
227
204
165
207
253
163
176
183
160
175
237
214
221
198
207
144
204
116
220
239
200
110
104
194
183
192
189
211
258
210
209
120
161
137
275
217
173
173
216
176
220
228
196
261
199
232
213
198
210
227
173
199
252
165
251
118
187
246
231
170
167
242
224
181
220
112
230
157
224
204
228
242
171
215
261
232
207
209
163
214
238
196
224
240
239
225
173
145
226
219
261
155
234
221
229
249
147
231
235
190
142
238
189
159
189
189
187
218
241
204
251
186
161
190
199
226
146
200
210
178
186
215
183
203
143
257
179
178
205
227
201
197
189
255
217
154
161
212
175
174
198
182
162
199
186
213
176
206
181
213
166
176
258
157
181
220
193
163
167
146
209
125
182
222
202
151
220
230
200
222
176
210
186
181
270
173
237
201
161
182
204
211
188
163
196
225
170
216
171
229
159
180
159
162
95
182
253
234
233
215
150
168
222
273
196
242
219
220
211
185
202
184
230
192
240
181
159
141
244
185
190
176
239
222
223
178
228
161
176
193
132
186
227
244
190
185
225
182
199
210
214
199
207
197
97
263
202
249
134
219
174
139
176
209
212
209
236
191
235
141
226
227
246
169
142
206
186
212
216
209
264
201
210
119
214
239
265
194
181
200
195
179
191
219
206
200
229
267
237
180
179
189
168
156
155
198
207
192
268
244
169
226
228
202
230
205
243
211
201
179
190
221
226
189
234
214
176
226
192
208
199
196
194
214
183
239
158
240
216
202
276
175
211
213
212
251
179
166
290
164
227
152
197
201
189
165
182
175
235
196
223
271
238
172
267
238
193
264
184
196
181
200
178
205
207
178
232
205
219
207
187
183
210
185
190
230
235
202
216
144
231
197
147
223
222
212
179
262
226
205
245
199
198
203
236
211
171
203
202
194
309
133
205
186
237
260
188
201
191
190
190
162
227
207
151
214
204
274
195
216
197
224
128
193
233
140
179
152
143
191
187
161
203
230
231
221
225
113
245
197
182
187
154
250
277
151
255
224
179
204
162
222
165
185
166
212
252
222
227
186
137
210
165
222
185
157
201
202
197
184
212
193
179
205
183
174
162
182
210
223
221
282
176
246
286
208
233
241
262
188
161
258
128
227
217
157
190
232
227
229
219
197
252
207
185
185
163
257
203
215
169
254
210
161
183
211
207
207
233
208
220
237
220
196
134
178
192
213
190
215
207
223
234
203
196
182
119
169
205
177
216
204
232
229
244
185
134
210
184
221
212
156
174
207
208
174
244
213
272
220
169
233
196
174
252
203
182
217
220
202
143
248
134
210
275
232
183
209
175
230
253
208
217
257
187
217
230
180
245
209
245
168
144
231
216
227
209
143
123
219
181
170
163
283
182
110
144
148
158
223
190
230
244
161
259
205
251
216
211
182
215
189
203
232
187
268
204
210
222
122
162
193
175
219
231
206
234
138
204
207
195
158
135
133
239
163
190
253
187
192
210
199
211
201
239
175
213
174
220
207
208
175
174
274
222
178
158
246
245
161
175
238
187
188
221
203
206
125
195
173
217
156
188
222
256
184
179
132
252
200
184
185
194
180
252
136
144
182
185
201
152
131
235
195
235
205
205
174
148
157
200
197
244
167
179
176
207
156
195
204
213
210
231
201
194
178
236
165
180
161
220
248
230
215
209
219
273
222
201
249
180
264
190
185
186
130
190
215
132
226
223
194
198
225
180
206
177
180
212
179
194
162
249
210
172
254
140
231
136
190
213
215
246
218
235
176
247
216
197
183
275
220
180
188
186
190
204
192
251
207
166
180
147
134
166
247
228
256
258
210
133
246
282
225
117
199
128
190
200
202
243
138
253
285
233
213
231
163
213
228
184
256
192
224
163
155
279
188
204
200
204
218
183
201
248
198
175
181
236
163
173
195
250
213
199
262
191
168
185
205
216
201
239
221
163
206
217
245
190
227
115
195
217
188
184
219
240
228
233
235
233
237
194
163
193
207
178
176
234
153
224
205
236
252
223
232
136
260
245
181
194
239
162
171
196
239
173
181
161
210
170
158
204
238
177
206
226
260
208
216
202
226
109
220
154
240
226
234
241
155
210
184
217
208
221
229
193
167
254
212
193
144
190
194
279
227
205
170
154
204
204
279
207
240
185
249
165
231
217
173
196
171
170
244
219
269
252
187
205
213
190
205
186
228
175
225
273
204
193
120
247
237
162
150
186
183
169
168
241
187
216
186
185
204
200
176
256
272
131
187
228
171
221
217
117
197
263
177
218
176
252
235
167
131
197
221
172
206
184
197
171
190
272
230
254
230
146
216
161
191
236
219
221
193
211
256
249
139
189
209
235
181
107
261
218
198
189
229
167
230
210
222
143
207
229
220
152
219
187
201
191
146
118
187
174
239
164
236
194
197
177
247
204
176
194
177
213
228
232
184
232
213
230
290
184
217
147
228
164
192
113
197
210
135
208
224
172
170
181
195
215
179
313
202
151
214
203
254
197
190
143
248
210
242
214
169
205
194
197
169
196
210
195
130
157
225
181
167
260
213
200
194
238
206
201
165
207
245
220
185
154
143
261
220
203
192
248
192
153
226
231
163
209
232
271
220
193
185
211
246
183
238
241
271
212
176
204
192
272
174
193
158
188
141
166
147
222
233
220
286
176
158
192
196
214
270
159
201
196
196
230
193
212
212
167
134
217
205
109
219
197
249
253
180
196
253
226
183
180
225
149
176
190
245
204
200
188
182
131
186
247
225
228
201
203
223
174
220
214
143
255
225
180
202
241
216
178
195
144
195
182
251
139
197
222
202
235
142
252
232
208
136
201
203
243
207
173
239
183
251
166
210
185
190
276
168
149
239
193
242
235
158
200
219
213
194
253
159
265
224
202
186
250
139
231
180
187
190
198
204
248
219
250
207
259
205
185
212
187
249
239
168
152
259
219
243
179
213
223
208
182
226
172
249
182
223
181
188
225
183
224
172
205
208
204
223
177
145
214
144
245
171
160
191
234
170
256
112
142
235
215
207
170
279
184
244
173
255
245
225
180
245
210
241
181
166
189
194
222
172
235
191
165
193
187
163
167
191
183
216
206
204
214
131
216
244
207
196
243
202
181
201
274
204
209
231
181
208
166
127
167
217
209
194
211
167
201
201
173
165
210
228
255
188
200
137
219
208
177
177
213
219
179
178
250
154
167
145
192
231
168
297
156
210
215
120
224
219
195
160
170
219
193
212
199
188
208
205
150
179
222
208
245
220
247
192
232
265
209
194
148
205
148
126
228
233
243
132
152
202
161
185
203
201
220
180
167
193
202
234
219
188
185
189
208
210
242
193
189
186
206
202
254
255
222
145
177
165
190
199
241
172
214
213
198
211
238
191
236
166
243
215
166
156
230
205
262
224
246
263
234
206
231
210
200
177
172
224
206
257
192
173
219
240
180
149
225
226
139
192
164
192
178
199
220
184
244
208
172
197
149
216
175
221
240
172
209
233
228
202
135
201
174
156
212
246
170
161
242
175
260
181
253
142
178
148
197
219
220
236
220
221
172
230
234
184
219
154
162
147
196
180
252
266
182
174
153
274
196
230
223
214
207
129
160
179
241
182
157
196
205
198
180
202
161
197
220
211
147
158
221
192
210
208
148
211
217
182
173
222
226
185
219
186
186
180
170
159
160
215
217
179
177
194
210
210
194
244
164
144
154
192
212
185
149
174
255
246
228
177
258
162
284
197
273
172
243
253
149
233
216
266
220
162
185
262
192
254
209
215
218
192
244
214
192
176
215
184
190
223
219
207
197
245
162
210
255
243
224
160
239
178
226
123
186
223
200
210
244
197
128
219
165
275
188
190
185
231
196
150
181
175
182
211
242
186
149
227
212
212
222
261
219
178
181
148
193
191
249
230
209
219
206
242
214
224
210
214
234
229
184
188
171
99
204
200
198
154
221
161
145
224
140
178
130
224
178
180
205
167
137
124
257
147
171
211
215
218
193
231
163
195
198
228
174
225
177
199
224
179
269
199
219
228
195
206
204
244
231
184
238
146
208
182
224
154
266
241
155
221
229
147
238
241
173
180
230
247
243
176
161
219
208
210
129
199
182
214
240
190
155
162
199
207
185
215
166
153
225
239
131
204
218
212
204
140
201
155
247
196
114
202
205
184
196
222
206
163
157
183
225
176
197
181
137
241
225
233
226
195
148
170
209
193
158
165
205
122
213
162
233
161
145
218
179
180
195
203
232
175
217
234
226
208
167
133
202
227
223
187
143
201
194
92
188
216
230
205
225
108
232
194
168
155
182
154
199
192
150
212
192
225
177
243
194
204
187
271
156
219
206
244
156
202
164
246
178
201
183
179
214
194
250
209
229
175
182
269
173
238
232
235
162
214
254
223
204
122
223
207
206
184
211
254
235
216
194
204
164
136
204
211
197
240
202
201
211
160
229
202
160
167
209
144
238
250
204
166
175
254
217
197
248
227
188
182
292
216
193
231
227
168
255
229
200
197
209
286
229
206
198
197
156
171
188
243
206
258
183
203
227
266
241
203
153
155
184
151
184
206
206
184
173
207
163
264
226
272
201
195
236
196
228
250
134
226
116
180
256
195
183
249
126
204
209
247
236
226
237
214
188
255
206
173
189
196
232
238
173
203
211
255
232
139
238
202
186
203
184
272
190
147
251
220
232
150
205
187
192
210
237
182
133
193
175
133
163
217
178
223
287
201
204
249
236
166
227
214
170
224
199
116
151
197
189
212
139
185
210
219
173
196
118
229
232
229
214
210
212
221
165
221
167
139
177
245
216
273
160
204
189
173
199
225
198
196
138
198
220
201
235
227
245
200
234
159
192
228
200
143
223
233
220
272
174
102
170
190
177
139
213
207
246
229
232
178
227
232
263
158
165
153
211
186
192
140
250
161
183
213
201
220
195
197
166
216
239
146
179
206
207
233
213
251
226
196
187
179
221
253
123
185
203
127
191
135
213
238
220
142
197
223
185
217
205
195
261
225
256
189
191
219
193
226
220
277
129
242
135
146
165
198
224
141
280
229
206
180
238
214
235
189
238
168
200
156
179
258
294
193
198
165
155
165
206
217
181
224
148
190
179
159
169
209
200
200
201
253
240
219
129
202
270
192
153
154
218
206
242
168
200
173
250
209
116
187
217
190
143
201
233
263
183
192
224
241
193
183
180
241
234
218
252
214
215
243
157
277
175
124
218
132
167
214
209
181
223
206
186
209
190
183
210
209
239
199
185
238
151
160
198
149
207
129
180
239
167
213
196
192
130
209
207
129
202
204
167
207
221
168
230
206
211
148
197
174
236
225
220
157
225
280
207
137
189
180
201
225
188
241
199
210
211
199
244
134
224
177
210
175
191
221
247
233
209
183
229
268
232
161
172
211
226
228
208
267
239
182
200
273
219
223
211
190
195
164
164
241
156
213
149
192
233
250
123
243
268
233
168
145
198
191
166
159
225
153
187
150
249
178
227
247
214
186
213
192
222
206
131
193
206
215
204
191
146
230
115
224
228
138
160
176
163
214
206
262
190
179
140
181
247
258
213
189
219
202
201
167
209
211
183
260
136
169
198
196
205
250
186
175
147
259
184
211
238
248
188
159
253
189
197
220
221
180
220
232
182
245
208
191
217
209
226
142
216
165
181
167
228
194
190
172
197
213
171
197
190
202
226
217
140
147
253
121
203
159
122
206
179
178
178
230
223
199
188
191
208
177
190
189
221
184
153
189
182
161
212
230
166
152
176
145
214
172
185
211
212
175
255
190
143
220
160
228
209
138
204
194
235
208
144
158
141
259
205
205
209
183
211
131
204
211
186
211
190
208
200
213
137
260
212
153
259
236
145
205
172
221
190
229
243
228
208
218
205
245
176
235
232
196
243
180
253
206
240
216
122
245
244
218
181
219
161
230
227
207
170
202
198
202
213
194
156
170
249
161
225
202
154
210
220
207
224
201
243
184
214
250
218
212
208
142
256
156
192
242
111
197
199
180
184
214
256
157
218
118
218
218
229
211
193
194
202
227
221
210
167
153
238
169
253
224
210
230
199
193
252
241
238
197
184
161
175
232
287
181
244
197
206
234
226
229
148
225
176
179
158
210
248
194
165
230
197
235
240
202
243
188
231
172
119
175
185
238
202
252
181
243
218
245
179
214
252
204
185
229
202
236
199
218
214
267
178
191
178
144
193
202
302
220
257
169
123
199
231
224
225
184
174
200
207
200
191
177
192
168
151
168
143
230
228
203
192
196
164
199
263
240
245
199
152
244
250
251
237
179
174
205
212
145
188
272
171
198
245
266
214
190
131
197
231
193
227
234
190
209
191
165
255
175
173
194
149
143
206
222
225
173
161
155
224
183
193
159
127
218
199
228
256
218
165
221
227
215
191
246
224
153
192
210
174
177
169
222
210
183
197
245
231
213
170
141
223
202
208
239
194
150
143
174
220
162
233
189
186
196
200
182
115
206
179
143
218
180
231
237
208
197
168
187
172
248
171
203
166
223
127
205
131
266
182
158
210
148
220
174
195
217
190
222
185
145
194
227
221
193
144
210
181
222
179
216
206
217
195
175
241
240
187
170
185
198
233
187
239
217
182
250
209
190
123
229
193
206
203
179
194
210
197
252
127
222
160
251
198
157
236
223
202
167
167
217
157
200
217
159
235
209
131
251
276
200
202
215
169
241
177
200
161
219
221
219
183
181
186
204
234
243
220
225
200
178
213
268
158
207
204
253
147
183
163
186
197
227
166
212
220
227
217
241
193
209
188
218
221
248
273
236
124
119
210
201
192
255
242
155
200
213
214
129
133
237
267
117
200
205
195
195
174
163
228
203
151
238
209
256
153
199
222
111
256
212
189
175
238
157
220
201
189
231
161
158
163
223
188
211
136
214
200
177
194
177
248
179
204
216
238
145
216
249
200
246
185
208
181
186
159
202
231
222
197
160
183
131
136
184
161
185
235
183
223
162
205
163
248
167
199
167
229
202
190
209
181
224
195
178
177
169
217
205
244
205
215
187
213
226
224
235
167
173
241
178
240
214
204
134
166
178
231
230
242
212
157
200
180
242
222
187
176
256
186
199
224
193
194
213
172
171
150
137
173
245
210
160
231
268
114
235
222
248
239
230
211
171
242
225
106
217
240
151
181
214
202
222
214
181
207
134
176
230
193
238
231
211
191
235
190
185
178
190
274
216
233
199
220
135
145
182
230
209
199
175
267
194
212
206
208
211
209
218
177
216
257
198
186
190
178
147
196
188
214
204
193
203
204
208
228
181
162
181
193
246
148
208
230
146
172
219
230
176
151
186
200
210
173
217
137
195
218
160
241
185
214
218
185
187
227
183
238
153
234
247
181
217
217
208
237
181
189
201
183
221
255
225
243
256
186
241
230
132
237
167
229
203
210
179
244
250
190
221
190
211
195
145
122
222
161
204
196
172
212
219
237
181
237
129
166
216
233
200
229
234
201
196
232
205
196
161
227
211
183
175
178
214
215
216
177
192
285
182
134
175
203
181
166
251
168
156
210
161
179
187
212
206
176
202
203
258
235
210
175
194
205
221
161
229
206
268
194
238
216
273
131
182
121
201
223
210
137
212
226
187
163
194
175
228
183
153
203
119
188
136
166
255
214
201
144
260
226
141
190
159
267
239
214
284
201
182
206
166
157
262
220
185
220
239
270
252
165
216
258
158
194
172
179
203
164
182
201
263
162
158
211
239
212
172
222
184
206
193
223
190
260
231
197
169
195
182
194
211
220
174
217
184
215
231
195
176
259
246
101
189
156
148
231
194
180
195
162
127
182
229
215
221
144
175
181
227
171
238
222
170
179
206
191
234
215
180
181
211
207
242
227
221
265
221
184
243
166
131
126
181
244
215
244
201
225
182
208
190
168
198
159
214
193
174
169
246
163
144
197
224
221
219
196
195
185
169
232
138
189
266
203
170
133
232
236
161
172
159
159
135
173
241
210
205
214
227
255
216
269
287
215
197
171
210
215
164
254
170
198
211
203
192
191
283
224
211
140
167
231
239
187
127
185
188
178
182
273
188
158
232
278
194
146
219
218
206
197
232
229
164
168
170
253
168
174
175
173
189
232
204
251
167
245
183
174
146
174
226
268
245
178
134
168
208
154
201
124
158
212
246
186
241
174
177
217
178
201
209
190
152
206
235
191
212
229
248
206
175
221
166
156
203
149
143
254
157
180
166
210
181
192
183
175
152
157
216
227
172
240
129
198
213
211
256
282
220
195
223
239
215
262
101
204
177
193
234
211
200
181
164
137
165
200
254
158
236
133
226
176
201
197
200
209
170
187
105
196
173
230
201
302
196
230
159
200
221
253
287
203
187
146
219
204
204
170
178
211
224
252
294
176
196
90
198
240
179
212
182
212
206
180
204
233
198
188
203
274
266
225
205
259
218
240
151
153
216
228
195
179
199
207
185
234
192
176
245
182
207
204
244
191
236
172
223
240
148
193
215
190
179
160
176
209
160
215
194
190
153
224
154
219
158
217
218
192
243
228
270
173
170
203
163
193
197
225
196
248
140
156
236
202
156
198
226
151
202
133
140
218
210
164
180
184
208
251
208
197
224
202
172
155
192
219
244
119
225
195
223
199
185
245
208
118
212
188
172
163
185
241
208
147
197
211
199
239
200
206
217
175
236
221
203
217
248
198
204
229
188
210
245
263
176
187
261
169
184
189
194
151
142
215
280
251
189
259
133
222
188
230
229
258
242
214
237
163
204
213
274
187
170
213
155
257
220
186
196
219
243
202
215
208
179
202
235
171
212
206
190
182
152
242
177
186
202
194
220
243
162
244
207
173
232
177
170
187
168
224
238
181
195
147
204
223
186
225
206
180
203
139
130
240
187
156
260
227
185
141
122
177
195
248
154
248
202
199
178
208
189
205
235
138
220
200
212
198
158
138
200
170
195
227
171
169
222
188
195
205
114
258
237
191
171
129
216
173
184
163
158
144
195
136
221
172
164
176
192
245
179
189
218
209
212
245
168
215
229
224
205
206
182
209
185
199
172
203
233
245
177
180
177
184
180
235
230
206
195
184
219
203
101
205
119
207
222
163
114
235
235
242
172
165
187
199
201
237
230
221
236
159
225
211
280
204
198
152
160
137
199
192
197
205
219
195
201
312
232
157
221
223
251
166
174
219
209
200
269
174
207
242
209
211
227
261
238
205
167
279
206
237
180
216
132
131
200
199
239
198
215
223
230
195
240
176
237
154
248
226
263
239
191
215
191
194
165
235
181
198
185
206
241
182
184
172
201
201
170
215
187
221
230
162
210
267
190
147
252
275
174
250
185
237
220
210
212
147
197
206
183
186
231
250
202
168
145
185
210
184
125
210
227
247
215
258
227
240
202
184
188
225
269
212
181
257
200
208
227
213
185
208
169
224
162
224
237
154
245
155
212
210
250
207
186
217
203
188
159
193
164
185
257
167
205
280
219
203
223
149
226
198
213
164
190
122
196
189
256
209
194
207
221
191
187
179
177
227
205
211
158
199
136
227
151
209
189
146
188
161
174
205
185
221
136
198
221
216
147
227
241
184
205
166
223
182
182
193
181
243
243
170
182
150
241
233
138
244
113
222
192
199
206
199
208
206
192
133
146
255
247
192
236
195
155
217
195
217
162
166
181
240
131
224
201
116
248
215
122
184
175
212
196
192
248
176
211
200
124
184
180
189
158
216
154
227
157
228
170
194
184
176
143
180
205
153
240
163
184
141
168
169
253
205
188
248
222
219
187
151
193
226
173
231
148
156
196
190
187
256
167
127
207
178
196
213
183
223
164
208
205
149
196
236
233
211
175
179
142
198
236
123
174
190
161
232
208
170
130
185
196
238
237
198
184
207
182
141
164
237
230
205
177
159
291
237
210
209
265
185
196
282
199
259
220
227
213
229
172
248
164
198
198
183
173
206
161
217
182
250
202
202
189
232
194
149
154
143
229
211
279
159
209
218
94
190
170
186
203
230
216
218
215
207
241
232
219
145
201
246
188
179
232
134
195
228
171
175
207
160
220
229
199
136
216
180
203
189
213
178
195
199
279
188
198
250
219
186
188
180
182
139
173
224
217
211
252
210
194
203
188
186
261
227
231
180
180
148
155
220
282
223
211
145
207
218
135
211
215
181
261
164
162
199
172
134
253
241
173
215
213
196
232
155
186
208
210
136
233
229
159
190
234
181
207
198
208
213
202
204
127
205
243
261
180
180
219
224
206
195
170
279
114
201
208
239
209
152
204
220
206
158
166
188
220
260
181
207
180
158
164
204
267
218
193
219
270
108
237
247
160
207
182
140
247
265
175
189
261
247
236
93
113
174
173
207
132
130
259
169
216
215
222
243
161
204
275
192
228
135
200
215
242
232
215
156
189
195
214
208
184
203
205
225
145
172
207
222
204
194
198
195
237
197
201
231
184
175
157
230
228
244
142
220
172
170
211
237
260
209
220
244
236
200
222
206
250
225
178
139
239
254
180
178
134
191
213
181
120
141
231
237
216
232
148
222
172
228
178
209
269
158
170
198
149
154
210
166
224
196
230
227
238
213
188
241
213
148
226
282
208
240
244
210
170
231
187
242
167
219
171
231
168
193
241
190
238
215
189
207
219
246
155
96
227
200
211
200
228
166
242
241
209
165
159
220
142
115
233
213
184
137
280
230
234
173
226
133
274
176
183
209
231
234
190
176
192
228
159
213
131
241
197
177
234
193
189
204
154
238
161
220
215
171
263
160
196
174
181
211
204
235
204
161
222
239
210
218
203
227
224
208
236
206
153
206
235
212
235
148
197
165
191
197
200
243
206
183
206
232
211
168
232
156
168
209
232
161
165
194
238
177
131
197
171
231
194
217
210
238
182
210
199
152
175
240
200
185
220
188
193
106
123
152
172
179
208
183
240
175
200
131
211
220
113
266
233
155
226
234
219
161
182
161
265
214
233
185
179
190
141
245
180
233
193
202
153
195
196
187
165
223
167
242
186
216
209
178
221
258
241
215
188
202
222
204
137
244
258
234
150
233
170
224
203
227
225
190
220
235
173
202
189
247
200
160
150
227
127
240
169
186
171
168
225
202
166
273
175
221
222
214
157
186
215
177
232
240
163
259
189
179
207
163
223
197
226
157
191
206
275
210
173
209
104
244
192
242
136
152
184
244
192
199
160
230
250
142
210
199
285
189
142
159
240
201
227
198
203
215
249
216
234
144
138
198
190
171
236
157
169
171
211
147
186
182
223
229
202
159
137
228
180
118
187
227
226
164
159
167
222
202
230
191
168
173
148
205
193
231
171
158
212
204
164
200
240
247
188
220
235
146
231
164
183
229
164
201
229
158
194
219
100
236
199
200
177
206
208
231
240
281
119
242
196
202
178
210
190
212
184
155
194
198
204
185
264
191
163
194
264
201
138
213
147
193
195
241
227
186
239
243
205
184
224
186
210
209
218
219
175
143
148
210
183
190
195
169
230
253
181
195
179
173
224
222
189
178
215
225
255
241
190
271
221
164
213
222
216
224
197
237
198
179
190
231
236
173
200
211
204
211
186
216
149
174
183
222
142
214
227
195
174
174
203
270
230
205
183
179
107
211
180
191
195
200
191
181
172
249
228
279
139
186
203
245
197
204
172
225
211
166
166
197
212
290
186
203
218
246
97
239
216
170
251
211
171
142
212
204
199
195
242
230
214
136
188
211
199
227
192
197
222
238
224
203
197
182
214
190
201
204
146
216
246
172
196
193
295
192
197
225
230
250
185
115
144
226
244
190
243
199
190
215
227
203
219
228
218
139
280
135
129
212
214
171
263
196
215
197
185
159
245
251
145
215
146
216
223
199
221
170
145
197
220
179
152
204
201
208
182
174
222
192
218
233
183
180
230
234
203
195
222
241
221
234
179
138
200
187
183
192
221
249
199
229
203
248
172
217
179
168
155
197
186
240
165
130
217
190
227
201
212
206
223
225
180
183
235
194
194
234
201
190
229
231
262
146
168
207
158
208
218
205
237
223
246
240
246
289
193
150
246
155
225
289
218
215
228
160
217
225
220
188
185
235
235
223
168
193
126
249
260
231
193
186
144
247
120
206
247
155
184
199
237
193
244
166
182
223
175
144
214
160
194
203
236
206
266
236
232
168
238
146
185
199
256
161
161
167
245
225
192
153
192
233
183
267
142
214
205
208
221
232
170
237
212
183
204
144
262
202
179
176
238
155
200
190
179
156
157
228
189
219
201
197
177
209
260
192
276
251
267
181
191
246
229
215
179
200
230
150
206
214
204
197
177
234
178
232
129
251
213
239
214
183
190
180
169
190
146
193
207
185
187
214
224
187
246
188
261
205
203
177
114
189
203
151
219
197
237
211
193
237
201
212
167
161
247
212
229
244
209
240
208
200
244
291
131
250
209
193
193
147
235
200
205
266
209
228
242
179
257
114
217
172
206
203
241
252
177
167
224
195
164
237
205
193
163
224
207
153
145
200
197
163
192
196
247
133
192
212
234
264
249
227
182
128
219
164
200
174
201
225
215
212
216
254
226
152
186
231
234
231
215
152
176
176
205
131
174
222
230
151
218
205
168
176
149
249
221
231
161
214
196
146
199
226
187
262
141
209
243
223
229
236
230
235
175
200
228
156
230
181
185
198
239
258
190
171
173
187
180
161
186
225
191
223
275
210
175
194
123
147
141
221
210
174
194
236
145
183
148
282
145
224
154
189
246
167
222
127
163
215
225
178
150
212
187
215
204
199
177
173
180
176
273
181
182
235
226
252
208
177
181
247
210
222
232
206
167
213
197
178
250
241
145
219
168
240
195
190
218
222
135
224
170
224
253
200
235
207
181
180
257
185
238
234
257
158
192
144
175
223
212
249
192
226
274
178
164
180
186
176
267
214
211
274
270
205
225
203
149
259
163
216
162
251
265
203
140
231
219
169
170
182
266
214
245
206
203
203
161
202
241
218
221
121
233
160
226
254
205
261
170
215
226
193
213
178
210
115
179
197
225
200
184
249
126
231
210
221
209
201
219
148
159
195
174
241
213
242
255
152
281
174
192
204
198
212
170
177
199
192
198
160
268
204
169
185
157
186
215
190
188
260
277
238
170
204
187
215
178
179
175
154
217
209
167
235
171
170
147
190
197
218
212
246
175
188
157
200
230
224
159
188
144
170
272
181
223
183
231
179
225
219
187
182
180
211
183
150
220
233
165
193
178
198
233
200
192
245
163
199
173
170
181
213
234
106
217
223
198
260
170
151
259
150
205
162
214
156
225
183
267
204
203
176
233
158
171
155
194
260
193
204
245
268
173
258
213
229
168
153
212
229
166
141
167
223
255
149
208
244
198
251
216
145
205
194
196
189
238
204
200
228
193
168
213
229
188
119
197
76
272
254
226
202
192
198
160
174
236
186
140
208
229
222
166
228
223
205
171
209
220
264
226
210
200
191
244
218
192
183
291
200
251
183
220
196
232
234
251
164
192
177
242
211
242
189
183
206
230
189
188
210
239
233
211
148
183
198
178
187
179
180
224
242
231
221
190
197
182
176
262
254
188
163
234
196
203
123
170
235
219
223
168
178
197
218
217
209
215
173
148
199
207
162
217
202
159
187
189
179
166
194
240
236
227
216
193
199
211
188
216
151
225
159
227
148
218
206
164
208
192
268
223
243
162
148
192
169
144
171
165
192
225
246
230
295
167
270
146
207
193
191
188
201
266
211
137
161
139
182
206
184
183
179
219
191
213
210
164
197
244
198
202
226
202
183
201
218
189
270
224
253
197
278
219
166
135
230
158
174
253
229
187
224
195
277
192
164
179
206
229
214
261
267
219
157
250
166
188
227
201
197
223
200
183
251
227
211
241
141
203
189
139
258
228
225
94
222
148
237
163
164
221
213
163
243
193
209
280
225
162
232
239
126
177
222
158
253
167
205
208
226
194
203
112
222
146
211
178
160
269
206
211
201
205
205
225
220
95
205
284
196
143
255
151
230
217
215
186
180
190
164
201
245
178
226
165
151
247
216
251
226
253
214
198
135
74
138
211
214
193
218
210
188
268
186
250
200
197
188
234
228
227
237
261
230
244
234
198
172
216
213
172
191
227
218
253
136
186
286
263
246
178
197
191
181
204
212
211
242
166
189
213
212
192
161
199
203
251
195
272
255
178
169
256
101
199
157
198
133
158
216
162
186
198
185
252
223
224
205
199
228
201
219
214
190
201
219
187
182
207
181
224
171
157
181
224
158
239
261
189
214
190
143
226
172
178
234
205
121
185
164
183
190
221
260
187
127
184
191
210
183
205
230
202
178
205
204
222
182
189
185
227
187
189
207
185
192
143
240
159
107
226
208
221
238
213
167
144
243
256
170
279
224
195
191
235
173
207
234
190
193
187
244
212
215
175
157
278
230
208
225
158
168
304
239
204
181
205
192
121
210
243
202
211
224
221
260
187
255
210
187
200
170
172
170
185
186
177
203
218
189
219
220
176
195
225
201
143
220
220
199
196
162
257
251
182
185
207
133
156
260
169
230
149
178
217
215
161
171
180
158
111
199
164
185
180
204
202
174
222
162
185
180
118
267
172
221
225
132
242
218
217
139
182
218
205
189
187
181
240
188
239
208
230
180
201
189
186
199
189
143
255
220
205
198
191
221
214
266
219
222
177
213
171
188
132
209
222
137
175
208
208
193
235
188
180
102
199
173
203
184
215
260
217
280
201
176
177
211
208
228
154
149
158
253
199
210
171
184
170
202
232
172
195
185
210
168
181
207
198
199
205
211
173
164
255
111
203
205
265
153
159
170
201
181
144
179
196
177
214
163
212
211
207
155
246
144
229
197
231
217
164
190
166
206
236
155
247
173
157
220
174
214
184
160
225
212
156
227
204
198
195
133
216
160
150
259
156
224
173
238
165
158
197
159
189
257
167
214
184
217
206
198
196
246
104
208
183
208
167
211
274
225
246
182
164
223
237
246
254
211
226
232
210
235
207
218
183
185
214
192
166
209
248
181
146
208
194
208
153
169
208
217
200
168
156
191
245
247
166
187
221
196
180
208
208
217
241
248
179
217
255
244
205
236
251
226
226
210
197
201
253
169
222
173
161
166
225
176
188
155
188
202
210
173
196
173
182
228
220
232
116
223
240
183
238
127
169
195
227
156
222
148
174
231
216
225
253
244
207
205
191
144
202
192
252
233
136
178
212
202
173
212
215
193
257
174
128
230
216
170
185
201
245
154
214
138
191
230
160
190
223
159
195
201
216
203
178
193
185
210
207
196
190
208
215
213
213
197
155
174
129
249
233
202
207
157
198
213
210
164
220
175
240
204
222
180
199
184
192
200
198
225
210
146
226
261
194
146
225
220
253
197
217
201
257
195
206
153
247
166
185
256
184
208
248
165
237
201
223
191
139
205
225
156
220
213
174
209
182
271
218
200
221
235
190
168
208
166
229
163
217
223
185
194
175
137
172
170
205
224
252
197
145
205
243
206
245
159
223
173
239
248
200
160
279
249
216
171
239
161
228
251
237
184
181
218
225
156
226
253
189
223
137
200
191
245
217
174
153
199
210
202
132
244
185
167
191
139
157
222
241
138
193
181
229
187
181
146
237
148
215
213
181
170
274
230
179
194
256
188
99
218
235
235
201
143
188
186
198
187
198
217
224
204
204
162
200
249
206
231
235
186
195
182
243
198
179
157
186
221
178
190
168
177
183
205
263
209
197
107
217
230
237
262
190
138
210
229
218
233
177
219
156
212
169
215
219
221
255
184
269
184
218
167
180
222
253
236
219
175
159
229
216
237
134
257
192
141
185
208
209
207
224
214
186
194
174
134
230
199
175
190
175
168
156
207
175
236
215
124
206
213
221
175
182
182
181
227
235
195
146
141
188
189
211
218
222
225
150
169
150
181
94
214
241
202
247
206
181
226
230
273
187
219
184
241
153
211
212
162
202
216
174
188
208
151
192
222
225
167
174
249
165
217
190
137
221
180
209
189
152
207
244
200
216
194
147
211
227
245
179
168
265
192
168
248
178
215
217
266
237
165
174
166
210
224
194
219
222
154
211
190
142
161
165
211
214
187
150
191
209
227
210
187
172
153
225
165
230
211
212
237
181
178
151
171
255
221
236
258
221
205
140
211
246
161
160
191
250
214
202
186
108
179
202
220
196
203
233
231
152
223
242
213
184
151
179
207
136
189
192
233
170
178
181
241
173
206
194
212
187
242
187
214
221
175
205
201
178
230
230
200
173
164
207
210
219
262
171
201
187
206
248
208
217
246
176
215
166
135
155
214
207
174
173
163
101
205
232
210
210
223
170
169
225
197
168
124
214
209
220
164
169
202
194
187
215
200
189
176
196
236
172
240
205
244
170
247
140
221
137
220
226
176
162
210
280
215
215
175
127
211
215
173
186
177
197
195
211
177
154
191
192
211
208
148
196
208
179
257
236
163
194
199
126
210
222
210
153
177
163
227
167
219
167
159
230
207
204
192
208
146
193
212
203
254
182
148
193
157
262
216
276
206
215
194
231
128
189
202
182
221
183
212
243
257
169
133
187
301
213
218
192
173
176
179
216
174
215
184
170
217
241
140
209
234
152
230
205
248
171
139
128
204
228
237
205
213
171
189
234
224
256
185
137
221
185
207
161
240
239
115
224
161
253
214
118
197
242
177
249
275
198
232
203
199
199
228
219
184
136
191
262
142
193
189
227
199
258
171
169
176
172
227
185
124
220
232
189
198
199
188
245
184
193
191
234
206
236
211
186
216
188
175
253
243
205
155
209
203
173
163
242
231
200
172
155
192
245
222
208
182
172
201
143
225
184
165
208
224
220
190
237
203
228
213
179
208
206
166
199
180
247
208
205
166
229
243
196
190
211
196
141
167
232
192
197
228
192
197
153
234
162
255
251
169
174
223
234
266
170
211
205
190
203
157
199
188
238
172
165
182
201
153
227
204
233
210
119
193
211
155
171
156
211
261
219
174
240
249
238
182
233
211
199
193
214
212
182
176
212
199
218
252
194
200
229
187
230
169
247
143
210
238
253
188
216
111
268
233
237
195
208
287
186
177
221
137
141
201
154
223
218
239
177
215
188
191
272
198
208
180
216
166
196
173
159
197
233
211
193
214
227
180
203
159
250
243
216
229
211
232
178
200
228
162
195
110
178
225
173
172
183
228
229
205
165
185
200
324
244
192
241
195
236
207
243
152
232
220
194
166
154
209
231
169
262
164
168
157
221
160
191
212
294
165
221
192
222
156
129
226
170
245
184
174
171
152
133
171
228
166
185
176
165
183
184
185
225
181
223
170
211
133
193
154
244
217
207
151
229
238
219
198
171
175
126
229
123
192
215
181
244
172
227
199
221
161
177
199
188
253
237
208
241
180
158
188
187
176
223
189
208
233
119
166
126
143
159
199
281
249
251
256
189
236
132
199
210
187
235
221
234
166
162
210
185
246
183
250
239
188
169
192
211
185
236
275
180
163
191
235
189
190
226
175
180
240
199
214
163
235
212
210
208
106
120
233
182
203
213
189
183
215
225
185
201
186
216
155
171
193
167
185
221
110
169
136
202
226
238
160
210
228
234
235
220
135
176
183
201
162
248
210
187
225
127
228
240
247
254
202
176
180
227
235
215
172
161
204
195
215
191
132
177
122
191
228
194
167
147
171
147
227
270
233
198
183
184
172
218
179
199
158
213
157
196
219
189
215
169
164
161
157
220
193
194
193
179
179
264
133
131
149
176
238
177
192
240
154
183
164
220
159
263
199
162
221
233
282
197
189
212
169
182
226
116
168
161
207
172
208
184
206
269
198
259
230
177
217
149
208
147
187
230
222
147
179
196
210
248
212
246
233
198
208
219
214
188
239
241
260
196
221
181
199
214
272
119
188
190
228
168
173
277
257
178
223
241
272
146
181
240
199
178
215
217
171
222
183
191
245
158
247
197
179
201
252
167
158
203
188
222
239
262
180
211
228
169
230
180
209
165
178
234
184
215
192
221
187
163
244
196
246
207
217
201
266
205
196
207
169
189
159
187
250
216
232
167
206
227
214
173
209
208
166
225
204
244
198
203
252
187
166
146
221
207
177
223
189
217
235
164
241
226
240
218
227
186
228
200
204
219
218
235
238
125
233
213
148
137
220
221
210
211
268
192
182
149
185
237
185
134
198
186
220
180
213
209
188
235
143
188
173
199
210
216
200
164
162
175
276
214
181
190
179
183
254
191
190
219
221
222
206
259
228
173
184
161
192
190
221
214
200
190
260
180
196
205
239
213
232
159
180
194
204
227
197
201
234
203
240
251
215
231
181
202
192
178
156
197
232
196
221
254
207
168
181
275
264
220
216
232
204
191
234
144
202
196
167
213
178
198
185
215
166
237
198
231
159
118
158
232
220
246
139
234
153
248
280
211
204
229
170
194
240
184
213
213
193
131
201
182
180
201
212
181
219
214
243
247
237
210
200
179
180
157
221
241
168
242
209
189
188
168
213
179
199
232
246
236
187
166
158
216
272
172
217
221
185
166
233
171
182
230
151
146
216
196
244
219
229
239
171
169
152
236
243
216
187
137
194
199
170
159
136
159
234
170
153
124
207
219
171
209
179
192
201
222
218
113
183
146
164
207
194
249
210
219
219
211
234
172
116
180
200
262
219
212
246
200
224
208
234
206
157
183
225
202
243
190
189
184
186
206
211
189
194
270
187
186
227
224
226
166
259
152
209
184
219
233
175
223
227
125
169
204
222
162
215
243
261
229
214
203
247
181
173
213
199
240
159
223
197
168
215
222
190
175
170
163
224
225
159
186
227
159
231
189
209
229
157
164
216
212
207
178
202
203
208
214
208
182
239
220
138
201
237
185
232
204
226
167
215
196
201
160
201
181
246
201
189
184
170
242
204
200
157
196
209
231
155
136
186
204
178
181
196
201
206
190
181
191
230
181
204
241
224
224
230
204
193
203
204
201
152
218
223
239
237
169
161
230
210
211
224
203
199
183
230
250
219
194
160
171
210
155
288
183
149
158
227
211
159
205
203
234
202
237
151
263
200
206
194
270
261
200
142
176
160
201
154
184
223
211
190
124
197
157
202
247
211
209
151
278
162
188
226
175
217
151
227
198
233
240
167
156
219
193
229
235
196
265
178
226
197
202
181
205
211
243
226
171
237
211
194
206
200
196
226
192
241
189
186
176
186
144
203
199
167
178
203
214
173
174
142
218
221
197
226
227
161
262
208
170
237
181
215
194
180
173
211
192
117
232
237
268
190
229
215
242
180
227
211
144
189
218
188
209
219
252
152
251
196
158
178
186
205
193
261
176
162
207
172
201
184
162
204
158
217
201
254
218
199
154
223
240
224
249
234
245
141
185
195
169
204
137
156
169
207
192
198
223
140
177
245
219
195
154
190
160
211
190
214
267
139
260
195
269
213
252
199
197
236
180
202
144
158
113
222
236
180
218
211
240
250
256
143
150
188
169
193
137
165
118
238
181
232
199
198
210
229
200
185
259
229
232
160
249
197
184
232
195
222
171
149
137
169
191
185
204
210
172
209
188
272
207
191
252
146
203
170
207
192
184
193
263
244
171
245
207
143
202
147
218
160
255
233
214
221
176
232
159
174
195
196
223
228
238
188
199
209
204
198
219
134
157
232
193
140
208
147
199
159
172
219
201
203
226
260
164
178
178
231
224
210
177
207
178
221
218
224
155
222
214
222
220
226
197
129
245
242
230
197
217
205
180
243
217
200
226
201
205
181
143
244
170
210
157
233
135
284
160
179
183
195
188
219
207
200
195
257
211
159
249
205
225
156
186
178
166
171
232
177
151
161
212
160
158
217
208
204
210
244
218
218
200
249
189
180
154
250
166
234
182
245
169
183
198
181
200
225
194
237
164
150
225
165
203
267
241
150
174
164
187
239
194
222
151
140
163
254
208
176
205
215
187
224
244
189
191
149
222
193
162
296
218
218
194
177
238
189
171
125
138
248
185
200
152
210
206
218
233
238
177
208
180
206
234
204
195
205
206
236
215
172
171
228
259
225
218
212
211
176
194
195
221
182
116
218
247
205
201
175
155
185
221
138
183
156
209
224
208
139
228
228
141
193
230
262
202
142
214
211
238
185
232
196
189
223
230
238
171
249
219
198
258
245
232
184
128
233
238
216
212
178
157
214
157
247
201
176
157
247
194
137
152
178
221
201
176
188
175
229
209
251
249
161
187
206
218
180
238
231
171
237
241
252
228
238
172
119
212
192
167
186
207
274
233
157
169
278
265
253
217
181
142
225
218
180
210
251
258
196
173
174
170
161
229
219
175
218
149
208
151
198
187
164
249
222
217
158
245
203
178
235
187
206
142
183
250
212
224
136
159
220
185
213
218
181
219
183
211
175
175
222
180
185
172
214
204
238
232
219
274
135
199
168
182
255
145
189
161
194
224
207
219
222
166
194
185
203
166
180
230
239
148
263
199
227
197
220
237
211
235
136
175
202
218
140
174
170
162
179
175
211
253
216
112
178
257
259
233
140
176
199
208
218
206
255
216
151
220
170
207
207
245
196
215
239
207
213
224
157
121
209
188
191
223
159
270
195
264
227
204
186
201
143
166
193
243
180
173
248
164
218
244
167
144
138
170
212
239
265
153
198
243
196
228
204
199
171
247
169
164
229
241
249
149
263
183
219
156
207
165
115
195
233
216
151
131
186
175
214
216
142
218
162
192
177
189
160
163
253
217
232
190
247
145
205
94
247
212
206
213
172
204
126
192
184
218
190
147
221
167
137
136
196
148
219
183
120
207
220
283
138
244
219
160
205
216
213
207
236
139
234
210
204
182
186
219
204
254
263
211
182
139
229
190
210
183
205
195
188
206
186
215
211
160
182
265
158
199
166
251
219
183
206
189
180
229
197
153
197
231
238
210
147
200
234
230
137
188
207
215
240
252
215
203
203
220
247
197
183
237
184
237
200
226
213
143
159
220
180
177
223
173
277
166
198
178
161
220
218
177
144
237
195
179
211
170
172
165
192
186
191
224
188
138
186
237
241
129
209
209
204
202
243
170
218
166
147
178
195
240
179
180
278
190
199
211
223
290
196
172
205
180
258
174
230
193
222
168
147
216
203
220
195
123
210
200
205
219
195
196
243
142
188
203
173
138
197
210
226
201
232
158
240
188
221
244
213
173
173
161
217
143
209
201
228
239
251
223
217
148
217
173
166
150
211
190
209
131
164
198
138
214
162
179
177
156
234
180
180
173
206
161
208
178
213
161
236
286
237
268
219
163
134
231
178
192
182
176
254
223
194
222
275
174
236
203
189
221
192
175
140
187
191
238
220
175
245
185
217
225
179
166
247
233
151
165
203
188
141
212
223
144
194
195
199
271
179
270
185
189
113
146
224
224
148
259
212
177
166
179
163
229
184
207
252
164
239
141
195
187
159
193
170
271
222
182
175
180
203
124
204
152
140
178
89
220
210
256
157
225
206
203
192
192
184
256
210
190
181
216
197
210
196
255
163
240
225
217
175
170
203
189
252
241
199
213
209
184
265
239
208
200
218
234
192
265
224
169
201
183
209
247
207
264
155
217
217
249
180
200
121
202
193
217
165
231
116
178
240
213
201
270
184
215
217
250
179
200
171
169
227
162
235
158
215
178
183
220
261
272
154
162
220
262
234
212
216
229
246
212
202
203
171
249
190
213
191
195
201
203
173
225
197
196
171
220
152
226
167
200
185
231
212
112
188
162
162
173
261
215
165
228
191
203
209
175
157
226
200
231
269
193
227
238
252
161
203
185
229
246
211
199
182
183
150
224
169
143
218
187
212
171
191
228
250
144
175
229
212
224
192
218
141
217
215
153
224
201
151
219
168
250
263
183
212
208
201
223
182
178
190
263
192
224
209
205
224
198
228
179
213
203
217
163
182
179
204
253
239
197
279
218
209
218
200
263
251
148
234
219
264
203
269
238
230
203
164
181
146
155
139
189
199
200
144
193
224
243
230
264
203
138
187
179
217
229
185
224
172
214
224
224
233
186
176
207
236
215
258
257
208
244
215
207
213
214
207
236
252
242
180
228
234
189
167
211
192
195
268
187
171
231
194
216
203
192
174
197
206
237
227
186
217
237
197
231
122
198
225
115
190
181
127
193
170
145
189
218
188
218
187
223
148
140
198
261
141
227
215
266
195
170
204
215
255
207
244
226
172
168
236
179
269
183
202
204
195
221
241
211
184
201
223
180
197
172
242
242
142
182
163
216
226
160
214
168
238
183
269
129
181
141
178
173
210
218
211
203
164
179
184
128
203
144
238
156
204
285
195
211
204
145
160
155
241
190
120
175
193
178
198
246
235
232
183
250
236
183
208
180
216
144
185
248
174
194
105
207
178
218
261
185
203
240
227
146
131
213
209
211
235
237
175
229
193
183
217
212
181
160
204
221
136
210
167
230
185
227
197
120
198
251
208
192
222
194
204
244
214
169
250
191
247
121
235
160
135
186
271
213
171
199
249
180
135
239
199
169
178
196
258
217
236
213
168
231
206
184
200
230
177
153
168
197
203
221
190
211
213
193
202
176
175
199
230
201
202
217
221
163
265
200
229
166
214
249
228
184
207
190
235
161
192
111
175
184
232
248
194
243
230
245
226
163
234
175
231
165
171
204
207
206
175
221
205
158
163
116
164
204
211
183
211
176
241
204
225
150
149
209
187
195
153
180
178
256
191
193
194
178
186
177
206
205
210
196
195
219
160
200
148
215
165
227
225
216
203
197
193
208
143
199
169
243
170
198
214
201
171
239
193
216
199
159
248
218
156
112
213
235
251
211
246
191
199
277
186
193
195
203
181
201
196
210
142
158
198
198
262
124
168
197
155
213
194
228
184
203
221
172
221
197
246
211
198
177
147
206
147
238
180
219
230
217
189
195
221
203
200
174
205
126
229
201
214
204
232
241
238
161
215
249
173
230
261
254
194
231
229
221
199
166
189
215
191
158
250
171
267
225
206
227
197
169
250
267
193
225
184
215
213
211
156
215
206
131
238
219
186
234
259
209
192
238
214
247
217
159
172
156
191
224
203
223
208
197
240
243
214
262
250
254
213
209
204
252
178
204
244
188
212
229
217
195
210
186
227
214
251
201
162
169
181
226
258
226
180
176
240
225
164
225
231
208
200
245
198
203
190
139
215
159
203
211
230
264
223
173
142
218
230
189
162
253
228
230
174
204
192
205
215
137
219
195
191
177
208
222
203
159
142
166
195
118
237
213
189
187
189
161
224
265
242
187
219
185
241
219
234
191
157
174
185
194
264
223
113
159
207
181
220
185
157
261
229
249
257
152
221
190
229
179
238
154
173
240
161
155
205
248
246
166
208
193
237
189
204
221
216
237
179
203
207
258
254
216
177
227
159
251
165
204
145
181
162
210
198
193
231
238
170
192
207
189
155
209
170
208
181
165
234
162
219
216
173
158
223
222
181
243
184
123
241
222
188
192
176
108
232
156
262
188
173
219
190
166
230
195
266
200
227
179
204
180
253
219
189
219
225
255
203
199
199
187
158
235
240
202
199
182
202
144
247
161
179
267
172
231
161
243
180
154
221
223
203
203
199
229
207
209
152
264
185
223
217
224
226
199
145
224
254
205
223
215
263
168
191
190
139
238
207
173
135
191
251
192
149
150
171
162
193
178
204
189
213
153
226
190
182
193
179
166
197
198
242
223
216
185
167
252
210
215
242
198
251
228
218
204
191
213
198
231
224
237
169
185
210
157
167
228
229
208
162
188
117
229
179
176
262
172
196
189
149
170
217
168
249
191
136
203
194
231
181
225
198
186
263
166
222
218
170
217
222
150
186
182
237
166
197
179
222
195
162
153
231
189
165
243
164
205
236
198
221
244
218
233
252
209
219
210
173
200
189
204
214
213
295
216
152
214
191
203
244
135
209
258
246
229
250
271
210
254
250
158
188
146
222
262
245
184
185
214
150
192
196
196
198
227
150
171
154
153
185
195
109
189
238
151
225
249
258
133
210
248
177
190
223
185
228
217
212
169
243
192
181
248
252
168
257
230
189
194
220
185
144
175
263
228
224
251
167
144
164
171
207
254
261
197
199
214
160
211
174
206
190
159
147
236
225
200
152
180
195
156
140
212
274
188
170
222
240
220
220
195
168
290
224
201
217
164
258
254
163
219
209
233
205
234
181
237
163
214
143
196
226
163
194
226
179
145
166
216
190
129
233
208
223
196
221
193
236
178
207
193
179
203
178
214
232
135
224
178
176
210
205
143
207
238
208
177
163
181
146
178
187
259
178
180
102
190
148
177
187
169
242
197
229
251
202
185
213
220
206
213
232
227
208
131
239
226
171
250
199
218
229
207
162
214
149
250
183
149
254
218
207
234
210
207
215
163
216
202
266
224
264
179
233
174
202
205
150
218
141
156
252
226
162
199
215
279
214
218
191
163
149
185
214
116
261
170
217
148
190
180
228
191
237
229
202
178
159
164
216
188
244
214
148
176
122
226
205
151
205
213
177
187
152
183
184
208
120
299
203
163
177
166
152
174
188
176
233
221
206
201
214
228
157
179
227
160
128
183
215
216
187
172
241
144
173
194
232
148
202
241
194
172
182
251
210
270
166
169
199
186
247
180
177
252
219
237
245
187
210
196
202
241
272
179
210
184
216
172
164
232
224
222
234
248
216
171
164
219
149
217
222
261
175
196
217
200
237
144
219
150
262
188
252
184
203
156
168
213
196
241
198
239
237
212
214
177
234
154
223
205
175
149
200
180
216
217
174
185
214
200
201
199
196
203
148
180
181
204
196
173
232
186
207
169
190
235
204
157
174
205
242
169
224
224
212
137
172
199
232
216
199
171
242
222
165
176
216
156
231
190
204
186
120
242
195
189
208
258
152
243
229
152
211
229
229
207
212
234
235
111
164
175
207
224
231
213
177
184
173
117
235
249
219
192
156
202
134
170
129
230
233
169
146
178
111
171
231
188
192
171
227
190
217
203
215
237
227
206
238
215
188
205
278
181
127
222
211
200
238
164
210
173
158
223
241
218
141
189
112
204
172
212
184
234
217
220
208
210
187
243
210
141
205
200
222
276
123
208
191
156
229
240
186
268
179
228
200
174
241
251
209
189
267
222
220
192
213
203
205
195
207
281
176
132
246
265
169
239
132
188
183
137
193
205
210
231
242
248
208
202
172
193
223
225
211
198
210
191
113
192
223
187
208
190
232
202
198
235
217
180
259
231
176
133
204
211
197
162
170
147
169
169
206
212
190
217
182
177
223
161
255
226
247
185
248
225
205
197
145
183
193
114
211
166
180
155
174
147
237
190
211
158
207
175
252
158
165
227
239
173
170
183
156
173
200
220
224
147
186
223
179
222
146
189
150
240
189
199
185
218
223
211
196
223
175
239
269
270
261
265
208
218
209
257
216
149
202
203
192
258
213
178
179
206
256
161
221
251
208
214
242
152
200
174
271
176
161
169
143
192
182
241
210
197
200
214
182
212
167
175
219
223
139
184
185
196
189
210
234
245
237
187
180
177
219
199
216
218
203
171
208
185
183
189
269
133
219
157
243
154
194
208
230
191
252
168
211
240
235
128
219
178
221
225
230
186
214
221
170
203
201
218
139
218
183
262
187
139
177
145
190
177
189
135
202
275
195
226
178
170
169
161
168
187
247
207
174
216
167
237
194
231
211
188
203
261
225
138
193
222
193
210
166
199
209
206
204
197
277
239
197
266
191
216
211
220
182
215
244
210
238
242
251
196
207
202
193
138
237
173
206
235
171
235
255
214
174
202
199
234
216
195
167
199
159
188
151
228
165
211
207
226
225
133
195
198
162
170
159
208
182
255
183
152
215
198
171
233
187
170
273
182
205
203
152
217
252
173
174
206
199
245
205
231
213
176
213
195
140
216
206
209
228
219
151
232
162
288
194
188
178
187
169
104
221
191
200
166
283
268
190
233
176
134
201
153
240
164
217
279
171
225
247
192
196
222
182
202
198
199
193
187
245
142
205
255
190
122
220
163
209
193
203
230
149
240
232
218
224
169
168
145
250
165
215
284
126
194
210
179
193
191
198
220
191
256
203
179
272
255
210
239
233
193
232
242
244
234
179
167
146
189
189
143
167
169
222
181
158
184
168
196
171
183
134
233
170
168
203
250
199
176
194
189
270
215
242
138
179
220
162
190
147
252
241
297
242
160
238
218
208
252
187
262
169
239
281
193
222
206
208
185
169
267
220
168
185
204
176
199
199
229
235
247
241
167
198
208
170
219
245
173
179
157
185
152
233
230
211
215
234
167
236
161
207
203
214
211
196
197
153
156
185
180
149
211
188
205
222
188
214
235
240
180
147
240
236
224
215
201
285
153
171
221
148
161
185
259
222
163
153
199
228
259
187
192
150
197
162
214
204
236
208
235
148
218
190
174
251
252
148
236
196
213
157
176
212
227
210
176
133
250
228
217
213
144
192
236
194
170
247
185
200
252
202
169
206
206
180
235
181
201
201
253
244
250
168
187
229
190
186
209
261
171
201
207
235
199
224
175
243
240
248
230
228
220
195
194
169
231
223
198
182
188
222
201
147
200
218
146
204
176
179
255
144
202
242
182
186
193
181
222
207
192
147
197
185
206
226
181
252
195
193
157
178
243
154
185
189
175
226
147
234
236
210
199
216
176
221
208
203
158
196
170
217
188
158
188
225
186
185
261
200
200
192
232
210
199
237
174
207
225
205
205
173
233
249
140
157
212
266
220
240
137
152
195
226
184
245
212
130
198
178
216
204
195
242
186
178
169
217
157
213
194
186
212
142
194
154
204
240
230
248
209
173
169
213
212
256
229
169
176
236
224
180
158
221
236
202
171
177
273
220
192
217
199
196
237
227
253
201
171
197
195
190
231
256
228
235
213
173
199
226
232
174
220
243
212
191
208
224
147
225
185
273
207
174
160
211
248
187
216
194
158
188
161
242
202
147
207
233
242
197
214
205
179
195
210
143
182
187
150
219
221
242
172
248
219
172
168
178
149
173
200
131
266
178
216
206
157
147
211
160
212
202
165
226
208
211
253
123
149
199
201
235
200
228
200
223
178
149
204
199
184
165
202
179
249
171
167
200
189
209
204
182
242
229
250
190
170
201
194
183
201
181
193
208
127
215
215
173
179
196
191
225
198
237
167
185
203
162
188
151
197
213
211
166
274
147
177
210
225
218
230
200
190
194
195
219
171
233
185
175
161
256
188
186
171
255
215
212
193
201
237
199
203
241
181
211
209
161
214
207
180
199
254
160
142
272
249
172
170
148
213
152
257
197
201
208
125
158
211
209
203
167
229
246
218
193
228
187
195
259
209
149
271
260
241
189
168
228
126
171
226
224
194
160
224
204
241
237
197
184
168
149
212
229
226
219
223
224
212
205
204
227
175
223
222
154
186
232
213
222
235
134
199
195
126
168
204
230
142
156
153
109
188
156
138
176
211
204
222
233
250
233
201
227
224
225
208
227
224
243
228
147
138
146
213
193
223
226
142
150
144
166
210
164
235
184
144
217
190
220
211
179
240
251
191
184
185
154
211
229
208
281
250
200
203
135
180
174
196
209
176
204
205
196
213
194
231
184
192
288
204
166
192
279
154
177
168
215
227
220
178
229
258
213
267
206
247
236
167
188
226
222
238
236
169
227
205
253
183
232
231
215
233
203
267
234
245
169
172
217
193
176
246
158
157
207
243
208
179
215
167
162
194
220
174
206
235
173
256
199
223
177
242
222
241
194
223
175
199
221
225
182
239
237
173
177
232
214
212
185
204
212
199
191
186
211
204
192
179
156
206
216
190
199
227
199
196
235
186
134
205
193
226
156
177
181
118
131
253
242
181
157
200
196
259
253
191
217
161
259
196
161
227
189
233
236
186
243
206
172
215
207
185
213
156
182
227
221
196
222
174
152
185
157
245
190
182
203
183
209
155
216
157
202
231
178
207
196
127
255
222
249
239
251
173
232
195
236
173
201
231
210
198
173
209
187
219
193
208
206
239
104
199
200
132
224
131
202
210
235
159
239
190
184
177
167
229
236
193
201
204
217
236
211
233
220
238
196
159
239
201
165
229
232
225
165
270
127
214
177
177
259
250
167
173
233
148
228
173
211
208
191
204
237
142
200
236
235
170
183
218
127
190
243
222
157
209
166
250
205
214
207
192
232
168
208
210
221
214
138
234
223
199
260
178
197
182
192
191
181
169
231
258
172
145
218
178
169
215
229
221
251
227
235
153
247
123
202
222
168
200
214
181
199
208
206
202
235
224
176
220
139
136
207
219
206
200
183
185
248
210
206
243
247
194
255
209
166
221
182
303
222
248
186
168
210
178
227
211
200
221
174
163
199
213
155
225
190
215
211
206
244
244
239
214
128
218
236
228
159
198
243
200
227
213
156
179
184
245
239
199
190
188
163
222
210
251
267
232
168
187
155
193
203
267
222
224
194
158
246
215
232
137
265
177
142
186
139
226
203
180
156
183
190
217
166
178
239
245
212
212
198
176
216
239
197
216
236
214
197
131
170
228
222
208
175
206
248
225
231
212
188
156
220
189
202
247
160
165
242
235
118
226
175
199
230
224
201
197
202
184
256
198
219
262
210
191
192
191
255
270
222
175
211
202
230
217
163
174
133
235
200
226
191
216
137
204
178
186
160
263
181
223
224
204
151
198
200
204
161
224
199
229
202
159
169
244
290
215
226
198
228
203
245
221
242
170
234
271
193
180
168
139
155
216
167
200
165
200
249
229
201
155
132
212
174
234
243
194
235
219
191
194
195
198
239
280
220
165
241
224
240
189
201
212
159
221
245
134
242
230
204
184
165
174
179
233
177
139
258
213
207
137
170
200
197
256
268
139
186
187
199
166
248
251
223
191
232
215
192
168
179
171
250
134
232
208
208
221
243
137
243
229
176
204
191
212
158
216
226
198
281
179
187
164
211
184
163
188
228
232
140
214
158
143
235
205
197
229
230
197
207
182
161
222
221
260
178
181
230
117
194
195
194
227
179
184
198
208
244
159
169
161
187
201
266
135
212
196
224
135
222
284
208
152
235
169
176
145
198
275
168
220
249
192
289
266
205
186
202
120
185
155
248
223
198
193
264
192
262
178
218
164
225
233
236
194
195
215
192
198
191
174
176
202
151
229
231
188
233
158
231
195
207
194
201
160
190
209
179
235
213
178
239
176
175
200
245
203
216
194
228
211
184
188
191
201
183
174
147
179
192
223
150
161
207
188
238
222
200
291
227
165
160
228
166
172
288
156
267
185
195
221
204
259
195
184
150
270
181
244
226
117
153
240
253
221
245
182
168
217
256
256
160
217
230
202
172
166
169
197
235
161
207
173
211
132
192
231
227
213
168
252
142
243
191
176
197
201
244
198
241
106
243
205
229
204
205
131
131
206
236
178
208
211
207
182
191
203
215
235
189
225
220
193
233
275
145
206
192
184
235
187
130
216
219
196
140
216
223
174
262
224
251
224
220
224
215
185
195
214
197
206
261
207
170
143
219
213
230
157
185
210
202
227
156
230
235
203
213
268
196
248
205
155
211
172
186
184
193
257
202
199
180
192
270
196
181
229
206
250
214
186
197
209
190
181
209
207
193
204
208
154
163
187
204
223
173
198
185
231
222
222
178
177
269
159
171
172
154
231
116
187
146
227
207
157
187
174
199
201
273
240
158
199
218
220
194
174
197
162
250
218
175
210
214
206
205
178
145
250
236
165
214
189
194
160
194
186
234
206
240
162
174
207
191
193
168
205
140
229
163
240
221
170
199
152
142
197
232
188
229
256
237
233
203
249
202
204
229
241
236
171
191
212
176
166
154
259
190
178
213
211
218
202
219
135
207
126
247
162
161
245
232
213
198
191
230
168
164
229
129
157
242
258
217
197
237
207
196
215
211
129
175
238
221
165
220
184
173
226
219
222
160
237
235
214
181
237
144
198
197
215
237
229
237
206
215
221
204
170
183
193
217
172
172
211
174
189
180
139
230
210
184
111
198
234
211
190
199
232
181
233
201
188
232
222
254
252
238
184
157
246
201
155
156
171
231
174
168
219
210
131
124
155
252
191
223
232
242
173
200
193
211
207
167
202
253
236
147
215
200
195
175
181
188
183
173
176
227
215
201
201
224
163
197
111
172
237
227
208
168
259
216
225
206
239
224
185
225
198
145
145
163
232
146
241
209
203
225
214
181
184
185
184
207
220
237
191
214
170
187
211
124
174
243
212
214
213
259
283
114
153
220
181
207
177
206
191
211
161
223
203
203
201
216
253
162
164
159
145
223
173
207
269
212
176
215
228
233
171
272
141
161
221
195
163
248
181
189
220
213
183
156
256
275
247
193
152
289
147
183
254
149
110
221
146
274
219
205
231
212
203
187
217
186
181
193
272
214
218
233
209
183
238
181
232
146
157
176
237
214
215
176
177
185
153
193
117
209
220
193
275
234
187
207
215
255
215
252
175
178
205
232
182
261
201
235
204
166
238
257
155
195
225
198
184
177
183
202
192
261
223
208
264
117
198
201
232
167
169
135
159
191
239
189
192
173
204
192
203
196
205
222
192
218
133
186
190
215
200
202
203
173
155
201
216
211
211
177
238
206
204
225
156
204
145
200
195
164
154
225
180
132
203
225
116
278
149
220
245
131
174
184
155
247
243
218
167
224
150
193
215
213
191
197
189
244
173
271
136
253
259
229
211
201
161
206
230
243
234
249
252
268
237
267
247
197
217
227
252
164
186
181
186
175
180
211
287
156
224
196
223
216
227
203
220
237
184
225
184
208
214
126
157
231
126
110
199
160
219
197
187
198
234
199
192
245
122
190
182
193
225
254
168
218
229
172
187
261
206
230
208
188
137
253
233
248
151
224
211
225
218
213
194
234
287
167
155
276
185
271
212
221
242
237
216
183
155
205
202
194
178
186
220
252
218
204
198
190
185
197
145
127
288
181
260
239
195
180
190
186
249
168
142
240
170
214
199
181
206
154
177
229
216
185
144
190
206
163
218
150
258
191
177
145
198
204
245
174
209
243
207
174
299
163
228
194
219
195
199
128
192
192
158
200
253
243
222
222
212
151
225
160
246
214
217
180
217
201
140
193
196
195
137
235
202
222
213
247
229
142
170
194
218
192
212
197
152
271
213
153
243
203
244
238
221
199
207
220
207
178
241
192
193
213
231
211
186
207
175
250
179
209
192
200
213
176
195
194
177
171
187
166
225
239
178
176
252
194
165
170
206
256
184
160
226
190
234
204
229
199
156
134
233
171
221
158
179
268
171
186
271
225
182
177
223
206
193
158
107
207
153
187
197
171
217
143
205
213
189
231
155
253
219
221
188
196
176
204
198
238
187
216
232
191
186
134
121
158
253
213
187
215
186
227
193
223
241
224
207
181
194
270
180
236
180
272
235
227
182
196
190
200
177
198
202
211
238
202
179
212
212
182
162
250
218
236
186
169
188
203
205
258
218
135
209
221
180
140
195
211
185
215
160
202
217
127
181
193
190
217
198
188
184
182
235
146
194
200
191
218
203
243
193
177
210
218
208
199
178
169
171
197
173
234
198
162
223
168
240
150
158
216
215
197
188
242
178
168
183
229
242
208
206
215
212
158
218
223
94
190
176
200
215
217
252
182
215
224
168
242
219
248
181
259
213
208
209
175
203
226
264
152
240
157
219
251
218
131
179
207
243
262
245
203
157
195
211
104
261
154
261
210
266
203
188
204
201
224
166
219
190
124
206
213
221
177
223
160
150
227
204
191
164
231
200
224
223
227
170
199
173
158
233
190
149
119
273
182
202
218
234
212
150
229
221
213
231
230
217
159
250
164
199
182
179
233
173
201
225
235
237
180
92
159
180
132
212
195
267
250
195
170
238
193
160
198
226
214
162
215
295
136
240
173
108
198
232
181
203
180
142
191
215
171
190
217
229
155
141
232
144
243
253
220
193
214
221
192
198
196
182
192
184
170
196
210
261
214
184
166
169
234
201
163
203
170
153
161
238
284
205
181
165
98
196
190
216
202
242
145
156
158
169
154
155
226
167
237
199
192
204
151
212
201
177
230
202
184
194
185
192
139
235
224
254
166
239
215
153
181
187
169
195
196
168
243
176
181
141
192
202
218
220
181
260
182
198
162
239
203
180
216
174
218
226
257
213
176
217
214
215
220
220
193
223
194
239
239
189
228
184
155
182
207
177
179
168
190
214
153
190
195
163
151
211
169
240
177
180
192
138
243
167
191
199
196
256
202
231
205
256
151
190
198
194
145
210
252
190
245
186
254
214
157
191
215
175
185
201
162
143
167
217
258
196
219
227
213
200
202
166
195
160
248
177
182
171
191
169
222
260
160
245
180
205
247
207
230
158
255
212
196
241
218
206
236
168
206
175
198
160
235
244
214
264
197
174
170
195
195
244
199
129
209
205
194
241
149
145
186
218
208
186
243
204
182
247
220
199
205
196
214
157
243
198
185
160
213
196
173
215
225
224
183
204
171
240
225
245
219
198
220
171
220
213
231
192
196
232
196
193
181
211
202
200
214
261
211
252
193
203
161
182
198
166
245
236
210
214
196
173
249
214
222
180
185
166
176
205
141
136
163
200
228
250
210
181
170
252
131
195
153
211
175
213
205
244
156
183
182
199
115
211
226
214
204
235
170
271
171
218
182
244
163
216
195
221
219
136
201
191
153
259
257
196
153
214
214
184
198
229
216
243
156
240
168
214
246
236
187
147
197
190
173
233
172
193
207
223
199
225
242
217
212
152
190
243
217
163
206
199
236
237
179
186
188
184
199
186
204
194
187
158
159
179
148
181
197
206
175
212
174
252
180
188
165
212
240
215
140
162
132
203
218
142
236
282
188
138
185
209
192
187
145
283
258
219
212
206
236
183
224
147
181
198
154
233
263
180
209
199
217
213
230
178
257
178
187
130
226
179
199
151
178
228
174
139
170
203
207
212
179
224
160
208
210
151
190
216
222
216
233
232
168
162
212
180
210
251
208
220
140
184
180
172
183
222
176
164
186
179
212
200
160
218
193
171
185
150
218
158
210
192
247
198
188
181
178
213
168
202
212
164
248
213
170
203
211
187
126
217
179
192
197
185
245
214
176
192
212
178
214
215
220
222
200
244
258
137
184
187
198
185
176
274
155
244
165
244
174
221
124
171
170
213
204
235
184
182
226
238
242
201
212
251
154
197
164
230
227
187
226
184
250
224
249
171
218
210
169
227
260
208
224
187
130
184
186
141
199
219
190
210
272
200
211
169
187
246
219
198
134
217
179
209
174
249
158
208
184
175
255
194
260
246
276
197
192
197
162
236
196
156
171
203
275
176
215
187
229
182
187
171
215
216
157
175
217
203
130
205
189
186
220
159
144
192
261
205
202
163
183
215
150
203
201
217
164
204
187
200
205
161
156
154
170
175
241
221
210
165
93
196
220
178
184
226
221
189
221
157
203
217
227
191
192
194
191
238
144
206
198
218
245
262
232
172
144
255
223
218
231
173
261
192
203
273
147
134
176
225
159
245
197
163
194
156
222
165
251
194
197
210
261
244
198
198
202
194
210
209
159
186
169
208
219
206
226
172
162
180
261
195
213
265
252
238
214
158
247
191
141
206
213
201
194
242
191
144
209
230
193
163
236
196
194
257
204
227
221
227
202
191
197
267
134
254
227
204
200
203
204
206
231
195
182
272
208
238
161
172
205
226
219
185
206
135
202
159
170
236
166
228
194
246
193
239
110
218
195
172
197
218
185
151
198
216
198
165
236
171
238
210
222
178
192
115
170
270
156
215
233
192
226
179
169
120
237
255
173
216
172
194
180
149
237
276
223
193
178
187
171
188
251
211
139
188
238
184
230
227
177
182
175
181
225
178
200
212
243
176
169
206
218
128
245
201
182
219
184
194
214
168
268
184
222
177
188
225
154
151
182
230
236
226
179
253
227
182
178
159
208
184
260
134
209
182
206
183
197
222
177
189
236
209
199
221
192
143
227
199
214
222
138
211
150
188
265
176
234
151
239
204
251
222
185
241
170
205
161
188
185
220
219
201
169
233
175
209
225
214
204
238
155
319
181
194
177
146
291
185
251
217
222
221
239
156
203
200
217
240
259
176
203
180
229
167
169
180
149
232
197
196
214
241
208
195
232
176
226
186
223
246
195
220
177
186
257
186
134
256
217
212
187
236
222
256
200
227
200
209
172
235
215
260
169
206
193
125
202
159
145
150
194
263
237
173
251
230
171
164
187
170
248
185
220
144
199
215
236
171
212
189
164
173
224
251
150
173
211
230
195
202
200
191
194
211
196
190
261
255
204
216
192
232
176
248
179
203
213
230
200
200
253
178
190
227
211
211
212
152
166
198
221
178
196
201
219
175
151
210
149
212
225
198
265
227
167
220
195
171
257
202
156
187
268
185
180
208
153
184
219
188
253
145
179
184
160
182
238
240
242
159
217
153
241
248
233
219
229
189
193
228
213
229
162
165
168
188
180
206
226
229
203
233
248
189
247
219
183
214
185
223
186
203
229
189
207
163
177
239
242
201
129
208
166
202
216
175
190
171
199
167
200
227
226
162
146
208
146
176
228
169
170
137
165
198
224
179
239
262
167
228
187
204
228
168
201
256
203
210
172
196
197
230
172
274
183
201
248
124
201
178
214
173
210
206
233
189
183
242
285
178
201
188
248
185
213
202
177
204
199
216
224
268
165
185
191
212
191
207
168
247
213
253
221
190
194
184
270
239
179
217
189
187
176
204
191
174
256
142
254
182
205
200
208
214
201
187
199
190
110
207
251
201
248
197
190
203
176
207
147
232
190
253
153
149
162
193
210
213
201
171
141
186
204
183
150
246
228
215
157
176
227
220
196
185
183
201
155
231
203
226
174
190
199
114
214
169
186
258
132
161
245
241
167
157
170
243
222
227
231
221
230
199
183
223
164
144
172
155
203
159
195
198
218
227
214
228
246
200
147
198
217
194
192
202
168
188
170
221
200
222
181
136
185
187
238
200
160
225
177
179
234
186
202
234
147
189
228
141
228
236
125
184
146
211
176
200
167
219
185
214
245
168
156
183
172
153
193
158
248
167
120
179
245
201
163
126
233
209
248
205
233
240
198
205
178
182
179
199
217
184
178
135
148
158
176
188
249
186
185
166
189
231
227
182
175
163
180
200
186
223
221
214
178
123
232
220
186
193
236
191
160
215
153
176
197
168
212
160
196
230
196
167
210
184
245
174
179
191
214
149
125
190
174
157
150
159
154
240
249
169
245
195
212
158
194
269
242
126
164
199
144
181
168
245
172
156
128
195
236
136
142
137
186
183
214
197
245
145
204
180
201
172
217
239
160
229
159
196
184
222
157
169
195
274
221
202
150
209
183
240
219
190
193
201
133
219
255
186
159
216
191
172
216
277
168
214
140
252
195
177
208
232
208
211
172
210
250
215
243
180
244
222
175
160
165
188
249
213
192
208
249
183
207
205
186
182
157
161
212
228
140
192
185
211
198
220
207
156
194
254
260
213
228
257
196
187
241
194
215
196
181
215
182
218
215
200
239
210
178
142
207
178
126
182
151
162
247
167
214
164
228
222
166
191
221
145
237
167
147
259
199
233
198
295
292
153
210
212
138
220
217
202
236
207
190
160
231
243
212
197
225
185
172
197
202
254
200
245
202
230
228
220
165
210
202
172
186
230
212
163
234
190
238
225
203
202
175
228
268
202
146
259
224
226
165
197
229
208
196
204
192
145
211
221
165
182
207
194
200
272
228
225
212
219
213
211
225
240
223
227
227
192
207
167
224
144
214
197
162
158
244
202
214
156
226
161
217
143
217
236
247
220
207
210
174
234
149
166
164
196
171
229
113
257
215
260
231
213
166
237
235
239
164
217
188
264
213
231
261
207
162
160
211
267
193
169
179
170
255
211
193
176
232
215
157
174
184
230
210
174
238
173
223
187
163
229
237
196
183
160
196
196
228
270
235
163
122
159
217
162
228
226
236
223
208
246
149
208
231
274
159
172
180
199
188
184
227
165
260
180
224
138
215
179
196
279
150
169
211
193
222
263
221
188
170
229
202
197
191
217
230
225
120
233
185
230
189
274
207
244
238
227
205
153
217
199
243
174
219
225
170
194
232
167
151
166
197
241
148
187
214
182
166
128
215
104
272
179
202
189
241
189
199
243
196
208
144
244
197
165
156
223
151
191
195
156
182
211
170
201
195
178
146
187
213
218
152
225
205
151
193
192
173
255
227
205
212
185
198
240
179
186
218
171
230
180
156
246
176
226
201
163
180
226
214
190
226
264
220
171
267
212
205
282
258
172
185
212
176
126
185
222
268
146
182
150
193
220
193
171
183
213
184
160
189
133
211
208
223
226
207
225
201
116
225
132
194
207
202
263
202
228
251
201
174
132
137
229
233
157
236
195
222
201
172
248
260
194
157
191
164
256
189
226
184
214
230
194
207
209
230
183
194
186
191
215
146
180
169
199
242
258
196
201
234
189
178
206
209
209
177
210
174
193
197
220
159
204
173
203
164
260
205
200
194
233
141
186
181
174
183
191
197
175
151
152
145
254
159
217
247
202
164
201
149
235
175
196
178
173
226
188
184
182
188
184
228
148
237
189
188
202
188
194
186
142
173
257
175
200
159
136
153
181
231
224
221
140
277
188
185
244
229
224
126
199
160
220
161
209
212
221
163
188
181
164
199
185
210
218
223
221
144
178
242
152
189
161
204
239
186
188
157
157
189
220
162
250
180
212
217
232
184
245
259
220
244
202
256
197
227
251
201
193
133
193
224
213
240
229
218
209
242
216
218
196
195
206
276
162
164
228
217
216
242
215
215
170
270
211
224
267
173
178
242
245
213
187
225
215
266
256
195
175
163
166
255
201
237
184
223
212
194
211
157
195
206
223
194
204
193
263
239
161
221
172
209
230
229
214
240
224
213
198
143
161
116
248
285
139
183
213
182
239
247
210
214
178
175
201
174
193
227
197
169
217
187
160
206
159
137
222
216
194
225
214
241
180
216
199
218
151
233
224
217
148
174
224
164
253
193
229
224
195
220
235
219
189
235
252
214
181
229
273
188
166
188
207
158
251
196
209
193
238
212
213
171
222
272
201
231
177
191
222
244
207
190
189
241
221
213
197
193
180
240
183
214
261
261
225
193
161
255
144
266
130
159
196
174
210
235
210
124
171
227
194
230
235
191
240
187
188
199
195
170
170
207
183
178
165
205
221
226
166
196
213
232
209
165
199
139
176
205
205
180
233
176
162
124
130
159
127
200
216
172
224
212
185
238
215
184
170
156
186
213
200
200
185
240
199
219
174
168
183
164
227
146
201
198
183
207
234
213
220
217
133
182
110
164
276
232
221
212
155
196
186
218
213
171
247
230
202
198
142
204
193
206
244
175
83
172
211
173
227
257
201
250
226
203
206
207
147
168
212
189
213
209
143
185
201
181
124
156
228
267
199
180
220
189
207
150
176
234
217
223
165
189
196
192
216
144
204
238
190
240
245
251
169
215
253
200
244
190
210
207
236
179
199
218
166
236
194
200
222
223
155
218
221
175
175
167
192
281
211
190
199
191
224
202
185
226
226
173
262
215
215
230
228
200
197
261
192
229
232
187
191
180
230
222
213
177
245
214
204
172
176
224
163
154
248
180
210
274
180
229
208
138
164
150
206
160
240
182
164
214
198
219
156
244
185
168
236
153
229
131
157
229
138
200
180
203
171
190
228
180
183
233
233
260
212
220
180
216
188
181
211
151
174
218
177
178
164
227
141
226
264
106
133
190
194
235
160
121
188
219
235
150
157
194
195
214
125
163
190
205
184
227
156
178
249
159
239
170
171
222
245
203
170
144
160
188
226
221
174
232
192
247
192
204
226
220
256
197
186
200
171
219
130
231
213
260
219
239
130
269
223
259
160
205
203
150
198
193
218
190
197
192
209
209
199
192
204
217
248
190
186
121
195
205
203
185
227
257
225
204
132
161
173
243
145
185
154
261
206
191
196
189
211
230
260
214
232
195
244
197
185
195
238
213
228
183
197
141
228
195
223
211
196
170
201
154
241
200
180
261
179
199
210
144
253
214
245
261
246
112
191
179
227
176
238
260
150
236
130
186
211
207
173
150
212
260
154
203
197
202
207
243
264
215
201
248
190
186
209
208
191
176
245
181
159
207
238
223
208
167
210
231
137
241
272
222
192
225
122
166
191
232
191
182
245
238
139
192
169
210
207
238
204
213
182
244
180
129
147
249
208
225
217
177
264
207
260
218
211
189
159
197
199
192
173
177
175
211
198
188
215
144
223
179
157
194
195
181
166
215
243
235
211
198
213
179
217
201
168
237
206
243
160
208
254
212
207
238
187
208
193
244
222
197
196
262
224
181
210
203
167
250
232
189
116
255
236
227
153
180
205
184
225
213
194
171
175
231
166
166
240
181
256
196
181
221
183
155
213
185
277
238
224
182
182
226
231
165
225
109
230
228
240
222
188
216
165
203
176
238
159
238
163
239
227
192
149
175
162
243
210
180
207
226
240
251
235
180
196
199
195
184
190
216
217
185
247
234
181
160
208
238
218
218
183
233
147
191
233
233
214
194
240
251
159
240
169
176
194
152
136
217
150
137
217
262
151
252
117
199
185
132
187
214
245
224
255
188
199
220
252
184
165
240
195
121
254
235
243
205
167
143
219
141
191
207
163
204
198
178
265
204
190
207
216
243
230
169
194
175
206
179
210
169
196
153
216
197
189
231
191
163
186
196
184
223
200
249
243
203
167
249
229
245
201
161
178
218
134
206
222
211
176
206
215
225
265
205
257
122
225
168
222
193
218
157
272
211
152
178
229
175
230
245
157
227
208
194
237
205
254
227
201
217
220
168
167
173
187
221
250
194
264
222
228
213
238
184
159
167
125
206
181
167
242
159
159
230
220
234
173
231
192
167
185
188
150
181
236
190
176
281
175
252
174
263
198
209
197
218
206
283
321
212
213
269
187
204
182
185
188
171
222
187
179
197
151
222
218
227
232
218
175
256
249
203
247
152
239
251
193
202
208
210
175
217
164
161
195
197
199
191
252
231
225
214
206
222
210
149
203
189
215
203
259
231
211
197
222
240
208
167
163
184
264
104
120
239
166
239
164
201
203
235
180
244
191
195
153
202
165
245
143
197
238
167
216
222
160
207
99
171
239
180
186
244
210
206
178
186
209
224
222
223
204
225
187
184
224
212
192
220
238
216
237
153
220
259
196
194
129
159
184
223
146
171
231
205
204
203
198
214
192
195
174
203
232
210
221
200
106
199
185
223
198
196
219
199
232
193
205
207
205
236
242
215
221
233
191
220
139
200
219
239
150
245
216
191
148
190
197
223
227
225
246
235
226
239
160
253
160
205
198
223
165
250
196
203
161
185
222
258
183
216
211
231
316
239
217
226
250
272
218
222
144
240
119
225
222
162
197
228
101
207
177
241
180
237
193
293
181
274
230
153
179
224
204
179
130
218
201
193
186
192
225
132
182
167
219
185
182
213
209
225
157
218
198
215
238
228
204
198
216
202
221
150
247
126
161
177
152
227
177
192
194
189
210
215
209
227
232
170
226
154
220
226
141
182
192
189
212
174
219
196
196
250
237
238
240
264
197
247
181
209
229
194
257
181
235
153
215
203
145
173
225
146
222
227
188
207
237
233
220
192
237
234
170
158
224
196
194
213
212
161
235
187
226
194
223
214
179
201
232
244
255
163
242
261
152
208
183
162
262
149
177
156
190
187
126
171
184
181
166
149
216
194
194
143
199
210
223
171
184
187
269
161
170
170
193
154
156
235
217
224
242
232
223
197
250
192
227
205
176
223
211
191
230
173
191
162
202
235
229
219
203
186
234
136
225
218
176
155
201
200
236
232
185
203
107
161
186
201
257
231
216
247
167
218
184
257
237
189
186
203
164
163
166
199
163
142
184
224
158
218
197
207
159
180
134
243
205
184
246
145
186
228
219
249
216
109
231
154
196
241
167
251
232
255
202
254
240
181
204
222
189
257
171
175
191
220
237
250
211
159
222
192
228
249
160
198
193
165
197
243
147
221
230
204
180
206
256
191
167
185
194
238
210
223
219
189
236
206
274
167
256
182
140
214
286
188
178
237
114
218
129
212
181
163
208
192
200
181
212
218
187
212
215
214
276
216
256
214
220
208
211
174
213
218
160
219
194
214
220
225
209
199
214
189
206
217
239
250
221
159
196
203
250
212
220
130
202
223
155
221
141
234
192
163
228
193
255
206
178
216
241
180
213
124
204
190
241
227
135
250
179
258
185
163
178
179
146
224
236
183
193
255
191
145
146
175
257
228
126
114
244
245
180
132
246
200
261
160
224
190
154
219
168
200
217
221
217
235
232
258
202
265
246
173
193
236
230
221
187
240
165
190
127
177
189
213
217
253
248
175
218
197
189
184
222
166
141
225
134
166
198
235
225
215
171
204
232
244
182
163
197
214
173
254
244
172
217
278
203
210
199
173
193
193
151
226
171
207
211
227
199
159
226
167
228
265
199
200
113
201
183
232
222
180
193
202
216
239
114
205
196
258
241
203
196
212
228
220
202
153
234
219
237
202
215
197
165
178
198
208
242
235
244
198
218
178
178
202
216
252
220
192
218
178
184
223
131
222
161
223
215
194
209
252
147
264
232
237
225
217
217
255
180
185
202
242
282
232
180
161
226
232
180
236
209
203
228
202
225
206
204
194
272
190
204
189
227
214
198
206
185
235
144
207
234
171
126
201
225
201
182
160
182
169
193
240
199
200
238
156
131
251
185
117
293
206
184
221
147
149
245
185
264
176
239
225
229
184
129
215
159
217
195
222
187
235
261
188
264
231
222
187
176
220
193
228
189
171
211
196
222
245
237
275
249
244
262
263
224
180
207
205
184
174
140
226
233
176
226
179
203
211
211
196
176
161
160
228
186
96
245
193
186
199
177
185
208
232
157
201
251
190
231
180
221
204
204
184
177
199
215
200
211
212
197
234
240
237
202
213
225
210
248
183
192
257
177
121
159
228
224
232
176
154
182
145
215
221
198
156
155
216
209
174
197
211
175
184
232
189
209
258
217
217
189
189
181
235
200
236
183
199
192
205
246
211
263
223
152
200
149
219
160
183
230
233
232
205
222
155
180
270
238
236
190
166
207
153
179
208
220
193
232
172
220
204
268
144
275
260
174
201
152
126
194
198
134
211
167
196
214
174
199
233
211
188
141
209
158
182
211
194
220
172
232
159
235
170
117
254
245
174
205
142
183
244
211
254
191
212
217
231
182
215
178
230
193
161
204
187
195
190
129
139
174
195
146
238
229
193
163
183
153
192
167
181
176
205
203
200
222
233
248
238
118
208
265
162
171
223
228
235
210
154
194
233
165
167
259
170
200
219
186
217
191
211
199
206
217
181
178
211
208
253
199
173
211
211
176
254
226
142
188
218
246
238
180
192
121
164
197
215
230
217
208
168
253
218
193
149
221
200
224
191
186
259
231
202
149
171
176
215
170
165
223
187
193
231
244
234
248
176
245
262
197
167
249
183
215
235
208
173
205
247
244
234
204
175
181
157
151
244
208
229
218
232
214
169
214
170
177
236
174
141
216
159
210
171
221
220
217
206
213
152
206
154
143
167
163
243
196
224
112
189
264
139
250
203
198
156
198
253
182
214
253
178
214
289
203
223
131
199
244
134
206
193
265
187
176
201
267
225
214
196
249
158
209
165
181
211
143
208
191
192
145
201
185
220
217
205
243
162
247
248
151
170
204
211
174
154
204
226
148
235
213
161
233
232
189
224
201
270
215
194
242
139
222
195
175
248
203
189
180
163
142
213
200
192
214
228
212
243
192
168
163
157
218
187
244
182
204
180
225
172
217
193
193
207
139
236
193
264
205
249
209
239
222
236
178
191
213
214
184
170
200
237
212
156
217
200
233
255
236
209
189
168
192
213
193
185
172
194
175
154
223
182
225
218
192
201
200
159
179
238
196
182
159
107
206
188
239
191
195
261
170
214
261
232
139
215
226
208
180
198
204
210
204
150
243
123
169
217
233
187
189
227
214
189
218
224
197
165
164
166
214
218
182
199
199
203
216
217
259
254
172
153
199
233
239
176
232
193
196
226
203
260
180
197
167
235
204
180
230
266
207
222
222
177
191
211
220
179
233
173
231
264
215
188
193
152
174
198
189
207
192
173
176
227
125
179
170
209
141
237
174
186
230
168
184
253
262
221
203
189
212
234
206
155
188
204
165
184
178
134
262
209
210
175
247
222
231
237
188
242
243
169
206
181
128
168
286
177
148
261
189
167
224
213
189
153
230
152
260
181
203
220
161
230
208
243
182
180
177
205
190
194
239
156
253
184
157
168
269
151
239
234
237
224
186
158
158
245
174
191
257
118
178
163
212
145
175
193
147
156
188
195
211
196
201
227
237
212
217
190
231
230
149
217
181
168
215
194
211
252
178
162
191
252
178
252
219
219
147
198
225
217
254
136
208
247
195
229
178
153
165
183
235
208
187
238
169
220
187
283
176
225
217
132
192
289
179
241
214
198
263
185
198
234
235
165
241
156
249
228
244
178
251
237
230
188
173
178
174
189
163
183
229
216
216
164
235
187
240
244
233
247
192
180
180
274
231
187
225
245
223
169
233
196
240
185
224
140
222
208
226
198
144
229
160
190
172
217
219
196
189
205
206
229
209
235
125
213
148
172
147
193
189
235
177
182
286
259
179
203
159
215
200
225
160
214
244
226
175
205
214
202
190
175
249
172
163
211
148
215
261
100
175
227
167
159
197
198
229
242
210
210
187
171
197
173
188
227
195
186
176
185
165
135
163
224
187
248
179
224
192
221
212
179
265
240
133
228
231
224
186
211
200
167
158
233
176
147
179
159
189
245
262
165
170
152
230
222
225
143
236
179
193
210
175
175
214
168
158
187
169
154
271
225
216
184
201
212
209
213
209
135
234
231
126
196
241
159
163
240
174
200
196
250
171
193
248
228
179
245
230
215
227
237
171
137
179
249
161
162
230
211
172
206
140
223
203
178
152
194
240
204
163
183
194
174
156
196
223
216
234
200
220
183
201
193
227
275
242
201
209
219
222
234
238
226
215
172
231
173
168
191
225
224
171
216
241
221
186
209
233
284
199
206
222
209
168
190
211
189
247
206
205
237
197
211
191
244
262
172
227
132
215
242
193
207
172
165
251
299
232
154
187
198
233
215
219
226
235
219
180
230
187
245
175
189
184
210
208
170
211
193
206
156
213
244
146
174
252
239
247
219
190
240
169
206
261
182
214
135
229
192
275
116
259
174
178
218
168
219
227
205
215
214
248
224
181
178
172
223
127
258
265
194
162
207
123
248
199
212
182
232
146
212
225
219
282
171
238
226
218
215
214
195
237
233
209
213
197
174
224
196
164
188
208
139
176
212
202
205
227
146
203
213
166
201
241
195
218
196
188
256
212
208
237
227
237
196
215
238
227
142
218
197
216
243
168
198
191
191
236
223
214
159
202
190
265
225
205
209
202
216
236
166
144
222
142
231
202
228
272
176
171
271
179
236
197
221
224
192
158
190
192
199
221
218
169
230
170
195
204
153
210
143
217
242
185
243
224
211
212
246
235
209
215
209
211
200
230
196
150
202
208
247
199
162
180
221
194
196
144
173
238
233
207
245
215
243
149
188
213
192
229
249
173
188
207
219
156
193
148
199
164
189
141
241
201
226
169
153
184
224
176
205
225
223
191
207
244
251
235
242
218
252
194
209
125
192
201
203
146
193
238
136
220
187
228
183
217
230
186
159
154
205
234
169
161
152
215
262
221
210
203
138
191
183
197
205
160
246
172
241
196
220
207
193
175
215
163
227
204
196
196
175
223
220
247
170
190
233
176
272
204
200
217
139
265
221
188
229
147
119
209
212
241
215
212
242
183
221
265
174
238
191
202
241
249
150
195
144
232
208
154
188
203
191
264
160
220
184
209
230
144
210
162
168
221
242
178
151
233
229
206
238
208
220
231
200
230
210
189
213
185
248
156
183
162
228
191
118
226
167
243
245
200
143
201
241
224
208
178
141
193
237
220
192
151
173
153
191
231
236
219
224
239
219
196
217
225
150
225
171
185
153
136
240
243
226
213
223
183
270
203
241
189
218
145
164
206
176
221
231
179
225
169
216
221
231
128
220
184
198
138
164
222
253
238
166
172
183
165
245
217
226
197
276
243
190
188
180
252
178
207
194
228
205
231
200
209
130
186
228
197
198
210
182
232
194
219
239
277
195
215
175
208
165
205
207
189
140
223
239
217
239
191
241
156
189
151
118
232
238
193
199
166
174
232
210
190
234
220
241
149
212
201
240
172
207
142
221
189
201
208
176
203
181
223
227
241
199
201
150
220
230
217
222
154
201
258
203
198
176
221
243
160
203
192
267
244
179
183
190
180
260
206
196
182
231
197
238
149
160
190
185
147
209
185
226
178
211
198
188
185
162
172
210
221
184
209
213
174
170
248
246
210
190
175
153
217
198
180
157
251
218
190
208
174
278
222
194
161
228
227
195
196
199
201
251
240
229
208
194
202
254
230
180
211
196
146
224
230
205
251
179
173
198
162
174
167
220
246
177
207
212
228
178
168
246
245
192
198
196
187
241
163
204
209
233
238
181
169
259
219
214
208
225
253
176
147
257
159
185
222
233
139
243
256
247
183
183
226
200
257
209
156
219
206
225
155
229
212
212
188
213
186
221
178
251
133
235
185
214
230
227
256
225
205
122
179
210
200
216
234
135
210
258
219
223
216
191
196
241
204
209
193
145
132
114
172
191
209
194
207
157
241
227
156
204
172
175
262
210
222
219
239
206
203
188
194
250
207
174
180
190
216
232
184
225
226
225
258
163
242
223
123
197
167
102
207
220
296
227
151
238
217
200
205
149
168
252
212
167
133
166
246
196
156
189
196
148
201
237
171
251
164
220
184
132
207
205
184
173
207
208
190
211
225
179
234
181
251
199
196
232
164
164
184
227
155
215
254
180
142
252
230
194
196
195
199
180
203
157
180
200
264
214
201
179
264
284
232
170
198
237
230
154
185
136
157
180
240
210
161
124
209
236
248
206
161
195
164
222
228
148
117
192
152
208
202
183
200
211
209
212
210
226
162
174
261
160
147
262
188
126
199
223
232
204
243
186
190
212
251
195
181
153
183
203
216
209
198
167
112
152
185
241
231
107
201
191
205
217
213
105
177
200
224
228
157
231
236
177
208
225
211
200
157
189
221
166
237
175
229
177
174
194
206
204
130
229
195
175
231
208
209
233
193
159
159
186
185
249
201
218
242
230
215
193
243
230
133
136
217
195
210
234
231
181
247
174
194
239
233
230
251
115
193
194
186
207
197
225
250
188
221
169
285
194
202
228
231
250
203
223
197
152
211
208
182
157
213
230
198
238
197
189
186
167
225
194
185
224
182
238
167
182
218
214
201
221
178
238
157
203
201
149
177
213
211
202
215
129
167
185
237
182
182
212
197
150
194
178
124
257
181
208
225
251
219
156
256
246
195
198
230
209
159
228
171
159
185
222
214
182
191
212
180
167
276
168
194
292
246
171
224
227
230
224
225
181
177
193
177
235
242
171
176
199
170
231
152
227
224
282
215
241
208
119
244
169
228
203
160
202
219
170
231
164
211
151
203
135
129
165
172
203
169
166
185
217
227
189
169
218
151
187
167
177
245
221
235
265
172
212
188
159
180
210
200
189
206
226
202
218
230
234
214
193
154
158
220
156
193
165
194
189
197
201
205
188
157
113
212
205
164
224
251
244
193
193
240
150
200
201
131
236
189
151
197
200
254
186
183
124
233
185
164
125
177
219
254
166
151
237
238
203
190
189
160
246
203
253
166
136
104
123
199
244
150
216
196
184
181
275
204
141
221
210
212
216
201
214
218
225
243
275
150
230
158
143
224
112
171
200
231
197
258
203
179
161
232
195
154
213
215
175
156
202
194
132
213
239
186
203
180
209
233
176
221
227
208
198
211
188
152
260
181
265
215
245
183
182
167
243
200
244
209
267
173
246
226
235
263
219
187
164
166
193
187
224
130
175
173
168
211
208
231
236
227
215
183
212
213
212
199
194
176
261
165
188
204
194
173
196
212
175
156
181
182
218
157
182
137
204
159
205
227
203
137
179
181
144
238
206
219
187
231
176
226
168
222
175
222
250
170
171
219
143
172
189
157
199
156
116
207
321
263
235
162
251
108
215
221
202
194
214
206
156
210
146
135
221
225
193
173
217
234
190
220
184
183
141
195
232
187
188
207
207
128
185
247
215
137
220
248
187
251
229
240
194
148
189
255
153
210
164
225
166
238
223
189
179
192
201
225
208
201
192
180
141
219
171
252
170
218
231
203
174
236
202
273
221
216
191
229
100
220
186
219
210
180
196
191
174
230
167
183
161
141
206
224
245
156
193
188
167
223
216
232
200
268
226
274
188
250
155
166
166
192
146
224
194
224
165
178
173
267
202
148
181
206
149
239
189
170
177
198
203
278
162
166
226
172
227
168
202
240
222
145
162
158
212
239
157
142
150
224
193
243
228
163
222
217
184
215
231
188
217
175
164
171
265
256
238
227
193
229
185
278
196
288
151
195
232
200
190
207
211
250
213
145
173
209
237
211
193
246
186
202
222
233
187
185
189
223
178
189
158
148
167
221
152
202
172
230
196
144
193
148
224
193
240
221
153
168
188
196
196
247
214
189
210
207
247
194
187
164
248
232
269
222
191
218
225
211
186
213
196
266
191
188
241
199
188
154
233
149
213
154
271
246
224
249
208
133
215
235
183
232
247
216
189
218
249
204
153
256
173
160
213
203
216
244
209
170
250
289
199
187
171
207
212
201
217
214
185
164
230
284
231
150
181
212
127
266
169
200
201
216
175
206
205
207
136
202
209
188
227
209
241
170
262
255
167
164
224
230
211
247
183
216
228
237
124
214
166
111
138
154
232
130
136
165
205
161
202
169
192
270
209
226
158
175
245
274
174
242
233
190
249
200
249
143
263
179
225
205
228
237
249
152
148
179
188
174
204
181
271
217
195
163
179
206
234
163
186
194
208
149
220
252
176
186
171
183
196
191
145
192
196
230
216
199
170
166
248
212
228
204
224
150
197
175
173
200
159
204
201
153
169
189
148
155
163
141
198
220
244
178
148
144
231
112
90
111
169
203
254
212
161
219
187
171
182
135
185
227
203
186
213
193
209
152
176
152
229
236
221
233
218
151
202
178
175
179
243
228
157
171
188
193
186
196
210
159
246
207
185
249
193
200
205
214
193
157
187
221
220
209
257
273
246
269
221
212
212
164
167
166
191
200
265
199
183
196
152
180
187
223
207
240
236
181
217
189
240
241
200
241
183
260
218
177
233
184
220
180
195
195
201
254
197
232
227
176
221
142
188
209
178
161
200
200
226
228
212
238
188
239
206
153
245
193
232
180
172
183
216
159
213
195
174
208
197
267
160
128
224
201
183
214
240
170
254
232
205
254
114
209
151
185
218
188
261
166
287
190
160
190
146
232
217
207
198
189
236
218
251
229
184
162
301
202
171
243
148
192
160
186
168
189
180
143
218
157
232
241
190
225
199
218
248
193
173
180
181
210
144
227
189
176
154
200
192
241
142
250
185
212
239
192
163
221
135
203
214
157
245
216
119
238
174
152
221
176
210
163
142
206
184
212
200
254
169
208
233
192
229
202
279
272
208
226
196
214
199
168
249
195
222
191
222
179
229
193
226
216
219
209
208
245
212
208
208
249
199
228
204
235
168
162
175
165
194
145
150
171
154
239
186
183
147
163
195
177
197
169
195
127
207
161
246
202
217
213
263
197
206
266
158
258
200
207
205
178
205
250
178
208
208
223
201
214
249
168
176
222
197
187
152
207
195
194
203
175
246
165
159
169
186
190
129
242
170
231
227
182
165
182
243
199
217
149
239
234
174
213
199
200
241
201
179
223
215
189
233
191
140
238
234
261
180
179
232
184
184
191
184
238
228
156
194
262
235
201
173
190
230
149
165
167
209
217
181
210
186
177
172
174
209
156
249
203
190
197
183
167
135
223
136
201
170
223
188
164
198
152
168
285
158
202
199
191
254
185
253
137
248
253
166
170
137
186
226
157
215
96
247
148
204
194
228
177
189
224
180
223
195
163
169
195
221
164
232
212
256
111
232
218
224
218
196
197
202
253
262
187
196
214
161
254
201
164
258
185
250
176
208
161
171
180
228
288
243
197
167
137
205
199
174
194
196
119
230
183
233
240
244
170
220
248
197
245
262
155
247
227
205
238
181
198
277
194
248
177
165
164
221
222
164
240
174
241
242
165
194
218
182
226
218
194
212
214
197
257
233
267
186
174
226
238
174
246
178
245
244
165
196
207
217
211
234
197
127
126
165
205
226
240
195
181
177
175
171
234
253
185
189
214
228
215
203
230
187
195
207
257
208
279
219
209
202
179
244
161
170
216
224
149
96
173
165
201
180
239
239
175
197
157
261
122
259
202
197
183
142
235
197
161
240
252
174
250
219
219
204
175
206
234
176
258
186
175
239
200
221
244
236
183
131
204
171
225
203
226
242
195
128
166
163
175
178
207
240
195
208
192
210
214
225
147
235
223
212
158
193
188
182
183
186
187
179
175
186
203
164
259
194
174
224
263
224
208
132
220
197
198
188
206
262
236
199
199
201
270
183
227
233
234
188
201
268
239
208
206
152
228
216
126
202
195
196
225
185
216
201
255
190
226
180
211
197
244
199
264
147
180
145
207
150
224
291
202
224
202
242
203
198
197
210
189
174
187
96
205
208
175
238
187
162
223
123
200
187
150
200
205
173
181
162
235
208
251
242
164
233
155
211
177
190
241
213
172
250
197
207
249
234
198
221
150
208
223
168
198
254
262
195
231
197
178
168
244
246
181
264
188
195
218
211
196
194
230
183
193
136
100
209
181
294
237
260
237
174
257
136
239
208
203
268
241
173
179
174
155
126
276
207
229
252
229
286
215
186
237
264
199
173
236
246
148
191
208
193
143
199
203
233
236
187
268
142
255
207
216
191
206
201
236
157
214
233
270
232
211
201
182
149
199
133
206
150
226
263
205
197
203
203
149
246
206
169
239
224
174
213
204
149
189
199
206
232
143
186
183
231
189
204
198
210
155
182
211
183
216
195
196
164
216
183
158
214
189
213
203
205
234
191
214
224
186
218
247
204
195
216
155
207
125
189
165
201
226
233
149
185
157
144
211
183
186
214
218
126
218
191
191
114
234
203
209
211
215
253
218
211
186
228
201
243
218
255
192
192
185
167
220
182
240
209
233
259
144
245
216
214
201
230
246
243
158
172
244
262
183
194
206
161
166
155
232
205
187
266
170
143
107
164
230
166
154
212
188
177
180
167
157
136
235
203
212
222
147
213
193
141
221
248
231
223
168
186
207
253
186
187
213
221
175
226
219
182
263
235
207
179
257
173
194
118
204
143
196
209
233
232
246
183
178
243
233
180
236
190
234
199
170
184
176
154
205
241
212
230
239
225
240
168
181
226
223
212
252
281
237
210
264
136
193
162
192
179
145
181
149
159
196
232
209
217
178
199
175
218
254
218
189
216
213
247
177
196
222
183
158
241
176
175
146
243
193
166
228
195
183
261
259
180
197
182
201
231
227
241
195
165
206
212
205
224
232
244
201
194
169
226
155
157
213
165
198
213
181
217
197
147
195
202
203
137
192
226
156
111
203
205
178
217
246
119
218
259
260
194
204
231
207
193
230
198
195
182
254
172
208
120
232
146
158
203
154
176
163
260
213
216
206
228
227
209
190
216
201
204
206
197
169
210
128
232
186
181
153
190
205
198
145
238
165
175
200
235
203
148
195
145
156
214
166
185
243
177
187
234
168
254
138
173
209
159
174
218
198
184
182
155
210
184
110
166
183
173
188
124
173
210
196
206
158
217
188
198
227
171
152
203
228
238
218
244
166
216
183
265
189
215
218
177
234
222
112
196
218
184
205
239
168
148
177
249
208
167
160
197
206
170
190
237
239
209
216
167
198
149
179
187
181
177
234
203
195
200
215
217
254
259
177
160
225
264
172
217
242
192
205
205
170
198
199
218
211
164
241
215
187
205
146
217
189
220
192
188
177
174
198
197
185
93
183
190
210
176
175
181
213
222
198
198
244
222
128
174
209
178
194
178
205
157
205
225
225
213
210
180
208
257
180
201
208
222
188
123
228
166
225
202
302
157
187
205
223
139
182
202
200
234
204
172
166
225
284
179
176
235
224
216
224
159
178
185
271
144
205
181
226
230
188
146
214
149
216
197
185
221
200
235
224
225
224
161
189
191
261
247
165
224
229
119
233
217
242
173
194
157
167
183
195
158
219
225
202
178
255
235
230
181
168
200
249
227
187
186
198
171
189
246
223
224
259
239
204
258
206
184
186
253
206
174
255
193
176
195
232
208
173
115
204
244
192
168
223
229
228
245
223
194
234
260
162
242
239
165
224
243
239
222
256
196
183
214
213
136
234
183
133
209
206
204
221
118
211
191
221
248
244
241
195
189
205
163
218
226
216
205
160
198
234
182
184
271
211
215
234
231
143
188
188
255
197
247
222
301
169
191
167
192
152
187
222
238
138
201
220
188
218
197
253
231
162
168
204
208
142
199
207
220
236
162
228
251
193
188
148
202
237
247
212
227
200
211
208
246
149
188
239
191
192
147
241
243
184
170
178
233
208
218
269
157
224
123
257
243
210
216
173
240
181
212
181
192
210
218
198
229
226
218
149
235
161
156
156
230
139
257
191
221
159
152
262
195
172
230
236
203
127
225
216
163
110
168
216
188
202
205
240
200
187
152
219
228
160
216
203
224
179
202
189
187
147
206
232
263
202
160
280
195
135
181
221
223
202
239
223
182
190
185
213
193
160
236
244
234
207
233
236
205
153
195
226
160
192
172
203
146
200
161
199
138
179
224
182
206
198
230
137
192
221
231
235
228
179
230
192
203
214
177
121
210
201
226
249
175
193
230
152
135
166
175
258
175
193
173
166
160
185
255
227
186
165
206
195
237
202
158
205
167
221
242
132
144
216
258
167
211
201
153
191
220
232
249
209
177
218
196
231
173
189
159
172
211
221
206
213
154
217
207
175
179
176
164
203
215
138
186
235
274
201
234
168
199
239
221
196
168
168
186
241
162
215
219
206
254
179
185
157
186
221
253
172
229
119
258
212
223
224
207
286
204
217
167
256
209
210
241
234
148
200
197
237
238
229
225
215
204
222
240
179
202
217
193
213
206
157
226
256
211
175
218
198
171
211
208
216
196
189
198
262
166
218
172
223
188
148
213
218
237
227
250
249
183
237
169
165
258
233
121
195
220
202
208
242
213
189
198
215
184
177
199
179
188
168
214
212
239
158
178
180
187
263
194
224
205
150
240
153
234
250
191
192
186
179
209
191
221
205
172
228
211
77
232
143
268
202
180
155
226
163
205
234
197
218
193
224
180
167
245
248
185
143
220
227
249
104
203
132
186
218
229
197
239
191
172
219
239
223
206
165
175
185
216
138
175
169
133
206
160
170
169
181
198
235
193
132
229
145
221
259
268
147
245
172
175
198
164
244
192
170
269
192
233
182
196
187
172
189
192
204
185
151
207
213
218
201
211
225
185
241
228
174
192
168
229
218
216
135
215
217
225
183
196
135
220
275
167
171
163
229
188
167
130
216
195
216
198
230
165
208
249
234
179
162
186
192
158
205
180
253
207
245
199
203
213
181
187
223
227
247
145
234
112
137
184
170
202
247
155
246
263
182
221
251
185
236
131
207
217
170
215
231
207
144
159
209
210
152
204
233
207
243
163
183
201
172
173
182
135
178
176
226
261
246
203
181
180
163
176
186
244
197
155
231
185
211
202
179
130
153
214
160
166
232
195
253
213
231
184
205
233
174
173
225
222
180
213
217
207
180
208
200
168
210
169
182
165
168
170
191
195
170
147
162
219
221
199
215
176
186
198
199
158
210
185
259
240
251
201
149
234
235
249
145
250
180
215
157
213
146
240
113
169
174
175
245
227
213
246
223
192
178
182
218
165
178
186
229
112
89
168
186
211
218
209
204
191
223
238
210
219
198
263
184
188
230
167
194
179
260
177
188
220
187
149
227
175
207
177
264
176
272
239
133
192
217
162
180
174
203
158
246
210
251
243
199
219
172
189
184
293
228
191
204
227
241
205
175
170
186
181
157
278
144
228
179
160
190
205
210
194
182
158
228
212
208
210
228
251
263
207
141
180
219
233
216
204
176
169
245
250
256
199
244
154
222
230
236
161
216
177
192
224
215
251
146
202
216
213
246
244
187
234
175
193
140
222
159
241
164
253
256
231
171
182
128
211
143
261
195
212
216
155
166
139
165
212
216
233
251
225
158
224
146
168
213
198
201
182
225
211
211
202
181
162
212
144
179
212
217
207
156
202
207
174
177
174
257
199
261
285
175
221
206
199
229
174
178
205
190
138
123
193
154
252
195
185
205
220
185
228
223
138
192
184
218
246
188
227
193
145
260
200
223
282
193
253
161
234
150
258
197
212
163
216
188
161
252
215
207
211
214
234
179
218
211
129
169
193
200
238
173
222
193
224
187
199
255
204
146
127
206
215
159
250
279
209
169
191
212
160
158
261
184
230
250
204
240
206
189
170
249
195
228
189
194
254
195
197
227
222
197
193
161
215
164
241
178
203
186
216
151
216
197
232
201
218
215
177
226
224
233
199
215
185
199
198
177
197
258
226
186
175
178
175
152
218
241
167
198
136
242
216
203
220
171
160
227
192
192
210
184
168
226
109
201
189
219
165
147
214
194
206
212
199
245
158
185
160
201
191
183
191
228
260
245
181
231
198
147
248
206
232
162
164
197
270
274
151
227
162
130
265
218
208
246
261
180
231
172
196
201
219
219
185
182
217
229
282
183
149
202
149
175
223
217
141
178
200
174
166
173
170
177
205
107
209
241
144
188
237
197
139
148
194
179
222
228
176
191
159
165
178
267
207
200
237
219
143
181
229
214
220
207
153
200
184
239
183
199
211
216
183
205
158
222
220
225
164
130
214
247
160
254
160
238
191
252
205
193
114
240
214
254
208
268
159
206
195
221
252
227
180
256
200
236
249
232
232
201
250
229
168
182
175
242
253
113
220
187
190
262
217
128
209
209
262
237
213
223
203
245
171
207
246
247
170
156
210
200
191
140
193
185
134
220
283
248
209
136
174
203
170
185
185
212
289
201
252
183
145
159
255
197
207
280
275
204
191
218
169
187
231
224
215
220
127
158
201
204
222
229
225
202
188
242
188
160
187
233
176
166
179
146
214
140
243
238
201
216
185
248
248
182
222
162
188
213
256
213
213
149
226
233
175
177
148
211
196
184
221
225
213
169
269
235
225
226
222
180
195
241
224
129
199
214
245
170
182
227
234
183
190
263
170
209
210
181
202
233
180
173
165
159
133
127
213
220
215
226
232
149
226
205
199
174
194
217
174
175
165
186
139
224
205
200
205
187
198
241
195
224
178
175
152
163
254
220
212
198
167
203
174
154
179
131
260
202
237
230
179
290
193
203
170
209
191
196
187
239
212
182
182
224
250
227
209
188
169
189
199
226
198
188
231
269
223
225
155
185
216
202
196
227
186
164
211
216
248
252
204
227
160
172
236
240
237
222
206
196
268
211
158
221
148
197
216
162
197
231
215
221
197
139
150
248
221
181
261
210
221
215
212
199
252
225
209
151
202
265
239
137
188
231
208
192
228
218
217
185
188
226
175
169
201
144
219
251
223
132
190
218
274
235
229
246
222
150
211
201
131
100
235
178
206
217
127
134
153
241
154
223
188
236
251
264
156
205
196
126
179
250
142
170
196
213
150
219
185
173
141
177
235
222
233
190
224
224
248
185
211
196
222
219
218
236
201
222
152
226
232
207
231
155
208
215
155
171
211
226
192
231
256
201
198
220
162
204
165
201
192
195
218
211
219
227
197
179
228
187
161
195
238
267
176
187
248
255
199
233
234
210
218
168
182
171
197
224
176
185
205
232
183
181
196
161
189
211
204
253
241
194
218
239
198
228
251
219
148
235
232
179
183
152
121
149
203
196
201
169
198
202
269
202
165
209
203
173
159
196
212
176
157
222
196
264
184
210
172
244
149
246
195
186
180
165
184
214
246
198
182
202
148
211
239
229
216
200
266
171
175
207
179
171
197
166
177
265
224
181
176
215
234
209
172
231
170
255
269
169
150
218
156
193
212
167
177
218
178
218
227
201
235
188
169
130
192
188
153
208
161
207
211
191
191
139
148
195
194
159
199
191
184
147
156
224
204
223
212
119
213
181
242
212
152
225
187
250
206
224
222
268
234
185
155
220
195
217
171
227
210
196
265
187
257
208
178
189
186
229
230
234
209
159
220
197
170
152
215
202
185
129
199
177
194
196
173
218
267
221
202
227
161
212
174
144
199
198
255
204
214
229
209
204
225
146
157
213
235
196
247
173
233
172
173
204
278
229
191
190
255
158
200
215
233
246
204
232
163
196
197
243
263
210
172
196
207
199
197
221
202
192
200
194
223
190
234
196
184
222
175
213
202
199
236
194
240
177
180
192
217
205
240
248
250
267
210
259
197
188
214
210
194
229
176
148
133
238
163
204
220
178
194
221
205
178
175
134
271
166
222
265
208
197
190
146
214
196
195
215
205
238
210
145
190
231
183
253
180
175
203
184
192
180
194
243
172
176
145
145
197
229
187
290
133
156
169
222
249
261
181
212
156
145
187
252
174
191
234
136
222
226
162
230
204
200
239
183
173
236
213
260
260
173
172
233
244
213
192
189
210
201
214
221
247
185
163
164
199
225
178
241
223
188
213
237
198
260
133
230
175
229
212
200
194
178
193
186
210
210
161
148
210
218
271
204
202
228
174
163
252
161
199
201
167
231
184
201
220
175
196
136
234
218
275
193
161
249
215
198
168
217
178
192
209
236
93
190
287
200
178
243
159
146
239
210
189
199
212
178
214
152
219
189
183
191
172
196
173
241
211
253
223
210
195
238
209
248
160
174
235
186
237
206
220
206
194
171
215
222
202
152
213
212
219
212
139
166
117
214
204
148
152
266
183
218
155
199
169
249
199
243
186
220
244
218
210
194
202
149
204
240
234
179
249
231
184
201
161
170
200
157
128
258
115
193
222
183
178
183
203
211
167
188
197
198
166
186
162
154
159
240
180
288
230
212
140
242
162
185
216
184
176
184
191
146
153
251
179
166
214
242
247
138
191
204
167
190
201
208
106
196
203
241
147
176
216
214
237
250
214
256
221
162
195
192
180
195
218
207
202
220
219
172
168
261
145
204
183
194
184
249
187
212
182
186
202
221
129
206
258
202
197
183
158
169
193
169
242
190
172
180
238
174
221
221
142
136
223
193
186
219
165
182
150
222
219
142
263
94
144
238
163
158
187
210
239
239
224
176
241
204
220
180
273
183
186
184
211
211
181
194
223
167
249
194
219
170
229
233
146
149
194
255
194
167
218
161
191
185
250
265
247
196
128
179
223
186
177
209
138
234
216
208
123
209
204
205
264
215
152
199
189
121
179
245
109
182
251
178
162
188
172
224
214
224
214
246
201
203
213
253
270
187
187
190
194
270
139
203
211
208
266
244
163
265
195
246
186
219
241
168
230
189
129
199
221
160
219
241
227
245
237
205
209
218
233
166
200
163
201
198
230
195
212
209
177
205
190
245
225
178
209
196
181
196
169
177
194
199
231
146
147
187
218
183
245
202
168
282
223
211
166
185
219
187
190
163
191
236
145
187
197
159
192
178
153
208
195
203
115
220
175
259
156
176
208
152
202
218
199
188
170
258
187
205
234
153
166
214
189
181
195
119
158
221
234
214
190
225
230
198
265
161
143
205
193
197
222
216
243
235
165
214
212
197
149
136
228
226
148
244
167
191
162
253
229
224
201
190
178
211
196
189
208
193
182
178
273
172
179
160
225
247
239
191
194
196
270
202
238
178
237
122
144
221
253
216
158
188
190
159
151
140
217
226
147
198
181
165
208
247
213
211
225
115
268
248
196
259
232
194
161
226
232
194
231
195
230
250
95
230
209
207
226
175
155
197
175
220
183
212
226
196
215
189
201
147
200
132
145
227
193
196
187
192
179
287
246
99
195
267
248
201
173
196
141
212
250
237
225
200
242
187
201
220
190
149
216
192
222
169
167
135
236
197
209
215
186
233
249
162
183
262
187
181
189
192
163
143
165
170
186
214
187
173
205
247
188
179
213
211
151
180
187
215
231
186
191
231
206
157
219
200
228
166
181
159
214
240
177
159
221
194
163
229
232
236
217
229
142
197
229
228
242
174
269
177
187
148
251
201
206
235
199
245
228
221
169
215
170
140
176
236
192
245
178
231
210
207
173
228
215
212
186
185
188
251
216
212
205
256
189
208
260
217
196
264
241
157
234
171
248
250
224
202
218
193
192
171
196
174
251
235
158
173
180
171
253
229
170
181
191
214
146
252
220
192
203
195
182
203
151
233
231
208
192
229
190
245
186
180
214
200
159
214
179
150
166
202
196
183
151
149
218
176
206
182
159
229
173
185
183
182
162
232
226
154
219
214
203
196
220
241
195
151
151
181
168
179
219
218
206
186
241
285
211
164
211
232
220
232
251
227
253
229
207
210
180
216
180
185
176
162
250
178
199
218
206
234
236
221
194
197
179
177
200
233
172
215
179
200
252
175
236
246
164
143
161
202
275
206
235
268
207
209
209
235
247
220
195
194
191
198
185
147
123
188
157
217
201
180
182
159
266
198
146
213
188
250
215
214
194
192
234
154
198
185
173
218
213
232
252
223
223
206
237
193
136
291
186
214
188
230
215
138
186
204
228
188
214
183
182
233
195
214
177
196
264
173
239
206
243
181
155
199
226
203
172
221
190
222
174
174
198
228
251
171
184
255
172
215
240
182
167
168
177
210
215
174
208
188
193
222
198
214
204
205
238
141
237
196
240
205
146
177
224
211
186
187
158
229
207
236
211
183
192
214
202
239
158
215
192
169
250
159
253
189
222
197
182
159
162
190
262
252
203
252
123
221
179
181
191
203
191
157
195
194
198
279
165
215
280
174
206
233
206
195
260
202
191
249
188
145
192
245
192
201
219
243
209
197
221
138
165
173
221
126
223
211
210
162
203
244
192
195
114
235
251
217
268
223
143
219
217
224
184
250
268
183
216
228
224
185
165
147
232
206
152
211
226
165
178
159
162
153
236
237
148
184
244
229
212
235
164
291
186
151
214
198
165
195
180
154
217
247
169
218
206
264
228
107
193
137
221
188
169
160
255
178
215
232
166
230
180
201
253
251
205
222
194
179
245
207
196
224
193
162
193
245
231
209
203
172
198
181
220
259
203
189
242
172
208
232
171
215
147
245
146
182
267
208
189
195
228
169
165
174
237
181
188
230
198
161
182
154
230
160
221
256
232
188
256
236
164
251
160
262
161
191
227
222
216
136
275
183
204
187
166
166
231
214
241
176
234
192
199
268
194
184
223
243
181
203
144
251
214
150
134
172
235
216
180
225
157
218
175
219
210
183
231
224
144
232
233
223
183
216
215
185
184
187
220
168
196
230
246
200
208
209
215
195
137
194
249
187
163
196
220
182
191
211
153
167
229
162
225
201
228
225
254
230
193
153
176
203
233
152
231
224
188
117
215
109
180
193
186
183
216
239
215
215
223
246
235
146
223
182
206
223
245
243
158
200
164
208
170
178
206
177
169
185
165
158
192
210
278
184
182
194
171
181
144
155
213
156
227
212
212
201
276
213
236
163
188
254
208
179
222
251
185
209
179
245
115
211
237
181
228
226
207
215
162
238
252
149
128
151
232
238
227
229
264
233
220
165
171
246
136
200
121
218
274
199
163
241
212
171
185
212
217
252
156
206
164
273
191
193
231
212
148
173
174
184
174
199
179
158
205
160
227
161
240
183
173
213
214
188
173
242
209
196
167
231
227
188
214
229
196
216
212
175
215
276
231
230
247
169
235
202
228
163
153
187
151
209
188
159
231
172
240
203
201
173
222
223
211
211
226
110
163
190
226
205
158
235
156
148
248
241
201
222
215
201
176
198
191
248
174
178
223
196
166
188
198
172
160
197
227
105
189
201
164
159
167
220
186
181
232
208
192
189
241
201
265
207
238
204
251
225
230
222
160
138
215
186
151
199
243
108
112
268
163
233
230
149
168
212
189
214
195
193
237
109
218
200
137
190
173
243
152
202
178
187
205
247
234
236
149
200
192
244
238
162
188
238
188
159
198
177
169
214
249
239
170
198
125
209
128
169
158
204
155
197
257
249
235
194
181
203
188
159
193
197
197
214
135
163
214
187
193
225
227
260
226
207
175
208
168
185
189
204
146
183
149
218
262
177
140
178
202
201
202
249
253
195
234
198
203
193
131
174
221
250
256
145
219
132
171
226
217
189
215
197
247
236
146
172
215
222
176
184
157
245
229
200
202
237
221
191
238
193
218
269
220
189
204
139
191
151
173
146
166
158
255
219
207
207
182
176
224
192
141
208
203
223
251
157
171
162
195
204
228
247
225
169
192
207
232
248
180
198
203
182
167
136
203
160
146
248
224
206
193
248
255
241
225
193
213
248
166
219
257
216
218
178
201
202
144
181
205
249
211
234
222
218
227
208
162
195
197
255
175
187
217
223
222
150
174
219
215
198
276
133
213
232
213
195
178
156
243
159
110
176
193
153
208
217
174
180
226
152
210
184
235
183
140
177
207
221
192
190
196
193
186
201
122
224
181
152
214
187
197
216
217
219
220
256
185
199
179
292
194
186
212
253
243
200
213
205
170
227
223
276
202
233
142
198
196
179
196
138
161
158
231
176
202
185
188
200
120
201
205
186
194
244
233
298
230
203
185
197
219
251
163
181
252
208
178
216
203
232
218
189
231
171
196
199
228
230
247
178
211
233
204
186
159
202
140
239
248
212
167
210
216
250
196
205
230
187
193
185
248
192
231
231
197
213
195
158
224
96
221
138
191
193
159
196
235
179
226
190
123
235
191
190
186
231
242
157
169
206
207
225
196
221
199
200
182
166
262
196
157
251
193
215
228
216
200
193
200
226
260
199
222
214
199
137
280
202
264
234
245
118
209
165
208
135
215
201
199
184
171
220
192
220
195
212
190
198
220
233
216
197
117
154
207
216
198
243
235
225
176
205
190
156
256
166
143
194
230
144
212
177
197
207
218
158
189
198
163
198
164
230
224
201
234
182
142
188
301
163
206
251
219
203
197
176
211
194
160
194
225
230
189
245
254
233
212
281
223
152
204
185
187
213
231
211
172
257
182
110
237
188
182
246
211
219
269
259
169
165
198
211
210
215
188
199
195
218
167
156
207
234
201
174
243
173
186
187
222
205
178
180
205
217
211
131
204
248
230
245
219
210
204
208
186
253
228
185
240
229
214
236
251
173
180
202
209
205
190
209
217
195
197
149
191
156
204
193
196
225
172
162
221
230
162
188
247
202
161
181
155
251
167
187
182
218
250
147
219
196
141
210
211
167
266
229
190
225
171
215
195
109
199
233
180
224
205
149
197
180
167
194
196
170
245
206
155
210
191
144
212
201
272
212
208
202
170
249
214
147
188
220
166
161
218
173
188
194
184
222
217
155
171
224
225
206
226
210
142
75
160
249
211
218
171
211
198
169
207
181
173
226
196
158
200
194
238
220
177
181
181
222
180
219
150
207
177
222
238
225
202
164
213
212
238
180
222
190
225
191
166
218
176
154
126
136
150
195
186
220
188
214
260
216
243
178
177
213
228
144
199
174
256
209
197
263
158
182
175
235
212
148
198
197
152
116
211
166
212
246
175
170
203
167
197
114
163
243
218
142
252
238
209
212
210
200
188
183
218
186
208
254
224
204
135
226
202
184
262
173
160
257
185
220
224
207
301
200
197
195
191
155
161
220
185
219
246
207
220
181
209
197
183
243
223
223
163
249
210
275
206
198
235
232
219
188
259
187
174
182
199
172
225
163
183
185
199
226
181
181
230
223
216
157
227
210
167
171
168
213
247
240
248
223
202
206
193
228
225
194
239
166
191
204
158
226
173
146
256
209
222
205
166
185
259
196
240
245
250
221
220
248
203
204
171
183
239
223
224
172
172
229
224
202
214
160
197
162
178
263
247
229
207
240
181
240
177
183
213
174
152
176
194
206
222
182
200
199
281
219
193
235
181
189
183
223
157
226
188
251
252
183
215
164
228
207
155
211
214
243
238
157
236
235
163
251
191
171
200
174
212
149
203
216
204
209
186
219
206
173
191
247
185
225
233
183
216
202
190
255
172
222
217
206
214
176
171
209
218
207
196
202
196
177
236
183
192
210
189
203
214
140
175
262
275
166
187
184
205
254
148
128
165
210
142
242
203
214
150
197
225
220
276
154
245
137
189
209
250
183
225
206
205
216
206
202
157
211
146
244
184
176
175
153
234
180
241
187
167
197
144
175
194
165
193
227
198
165
157
235
235
120
146
175
166
234
247
183
235
137
85
190
243
208
244
181
139
209
245
231
169
193
212
196
206
194
118
252
157
246
195
173
218
209
205
121
257
212
223
198
212
135
167
184
273
225
228
222
189
239
198
190
192
214
228
170
163
246
226
173
175
197
159
235
152
190
179
213
171
145
209
236
231
171
189
197
186
235
224
157
251
246
201
165
180
210
209
281
198
149
176
152
243
198
237
250
207
204
166
175
230
209
206
203
224
163
214
223
209
181
213
231
242
261
241
206
243
178
223
254
226
214
196
242
183
216
167
198
188
214
181
212
174
199
158
177
214
159
167
246
138
213
213
218
223
243
160
222
199
158
216
223
207
231
233
229
205
174
208
159
170
208
169
199
229
182
260
183
249
192
189
192
243
222
211
217
217
178
190
152
224
195
199
200
217
154
191
219
184
262
214
215
145
196
224
188
193
164
178
157
222
224
214
236
202
209
258
137
174
237
157
217
202
199
201
234
200
219
201
161
181
220
230
244
120
202
272
208
213
206
193
171
176
231
218
139
205
190
152
181
226
268
194
166
234
206
221
214
158
246
205
161
229
191
243
192
212
184
281
202
240
212
180
203
155
216
267
233
227
196
165
173
197
135
229
272
204
192
219
253
178
200
218
247
193
171
192
193
133
171
222
230
222
115
219
167
226
201
205
126
156
250
219
186
272
250
201
193
179
178
212
219
196
201
111
149
168
221
162
199
175
252
184
117
208
212
216
183
140
224
212
204
175
181
187
213
180
257
231
190
195
175
177
249
247
192
236
209
202
220
187
194
196
137
181
234
188
208
184
170
206
207
188
258
201
170
224
235
178
198
181
187
205
237
204
280
201
152
120
216
221
177
180
168
208
212
138
208
172
222
260
169
193
135
246
241
180
143
244
221
260
180
181
252
194
182
208
155
212
171
185
197
164
209
214
163
138
173
199
176
229
183
141
187
193
234
231
222
194
167
249
169
179
223
215
218
152
144
224
208
240
174
187
191
212
205
199
168
254
198
185
171
198
179
95
190
231
221
231
252
182
183
182
192
176
166
169
183
226
168
179
211
195
219
167
211
207
219
195
237
159
191
169
152
274
227
174
187
141
225
154
208
173
209
168
147
208
242
171
206
214
266
182
171
198
251
206
205
117
281
181
170
215
203
183
187
221
225
226
150
231
195
241
266
268
207
153
235
203
194
125
201
241
185
191
208
177
170
237
230
169
259
205
218
183
172
269
184
138
170
198
211
199
168
230
104
211
209
261
240
178
158
160
258
255
124
169
227
199
220
261
145
223
220
172
152
204
246
249
240
119
234
229
198
182
170
178
186
223
183
255
243
163
268
234
197
198
198
219
231
186
224
205
231
208
172
185
186
242
206
235
138
124
192
156
161
184
237
197
187
210
211
236
189
248
254
200
242
224
140
226
183
150
201
162
163
147
145
154
231
183
219
247
182
177
203
197
194
258
211
208
158
186
163
199
246
183
160
206
216
192
192
204
173
173
236
191
206
210
172
192
205
183
203
127
241
251
231
155
211
243
164
189
226
203
183
178
165
184
227
211
164
188
184
215
233
181
158
248
228
245
243
207
177
224
222
191
231
218
161
228
205
230
221
192
169
140
187
212
173
192
165
208
162
200
209
202
228
183
173
244
185
216
191
217
219
100
179
148
243
155
235
183
192
186
146
181
202
144
166
208
246
161
223
177
169
202
276
243
214
183
240
188
140
250
204
196
197
211
156
231
166
215
165
202
214
151
163
199
146
233
220
167
221
158
214
180
231
226
252
152
215
190
221
205
207
206
192
190
239
232
206
205
248
132
204
183
235
109
218
246
208
192
181
183
216
193
141
220
238
157
198
181
160
204
227
230
211
253
210
135
204
223
177
197
164
143
219
147
203
195
228
193
179
196
184
169
242
200
219
213
275
255
217
213
221
217
235
227
215
193
167
230
139
146
200
181
204
143
185
177
175
226
202
227
199
157
217
260
217
236
189
187
151
180
186
174
209
164
193
192
233
248
189
187
221
130
141
213
173
230
237
257
198
217
116
149
158
211
204
209
181
256
228
236
256
145
154
246
192
218
171
219
182
151
274
151
242
225
168
211
188
212
131
191
237
244
216
213
196
217
159
227
171
219
172
114
173
209
165
213
201
272
226
162
244
200
219
163
132
236
184
180
177
250
218
117
231
177
174
220
117
186
231
155
177
192
239
174
235
184
174
201
156
199
232
189
265
208
196
124
218
199
192
200
145
199
244
230
145
171
190
172
139
152
228
208
209
205
183
237
173
176
241
210
108
169
250
225
235
157
185
201
167
208
182
221
255
234
234
207
170
208
202
192
220
227
208
193
249
185
158
130
185
187
256
224
189
214
190
212
220
215
223
118
199
170
186
220
175
238
194
164
227
200
181
208
159
179
228
105
171
210
210
248
189
167
265
201
142
176
185
213
220
218
220
220
218
249
219
239
222
183
152
194
156
184
217
201
239
178
121
202
256
195
190
159
199
240
134
177
190
219
228
175
208
286
168
187
180
242
174
225
190
234
215
202
200
219
211
208
225
188
178
177
208
206
183
216
156
190
210
244
227
221
230
221
197
173
240
149
156
179
208
163
223
168
222
187
185
203
206
199
224
170
221
257
251
184
219
206
218
124
234
200
202
204
259
227
217
193
173
242
119
177
161
155
167
161
198
205
241
112
224
234
173
181
253
226
148
207
188
214
179
232
230
214
173
167
203
195
249
247
163
205
206
195
219
195
197
183
203
166
261
259
179
153
194
224
248
190
180
271
237
191
183
132
222
152
215
227
208
175
186
233
234
148
207
194
160
213
184
196
198
190
163
216
168
173
250
249
210
216
197
229
211
230
192
258
265
190
219
220
175
199
176
150
198
227
170
218
194
199
193
191
253
121
182
254
184
250
219
190
153
175
185
265
171
246
257
184
180
192
183
252
245
190
200
266
182
280
225
213
181
212
218
227
238
222
222
209
221
264
226
209
193
224
229
228
196
199
205
207
231
230
166
259
243
173
213
208
249
197
204
252
206
243
182
192
187
222
211
189
184
236
163
242
168
141
209
198
206
140
193
265
200
159
247
232
251
204
203
210
145
186
135
207
164
113
224
207
230
148
241
158
188
159
202
198
184
180
255
183
280
200
209
204
167
171
197
251
175
89
212
198
174
208
169
180
175
195
189
182
208
161
291
208
234
238
167
192
169
194
185
162
197
156
246
139
202
232
224
206
227
205
208
145
167
194
145
238
159
221
217
150
185
189
174
259
157
175
219
217
196
196
181
226
201
132
169
199
197
265
185
208
187
215
203
224
195
220
202
193
205
201
277
231
182
176
175
225
194
186
188
208
201
201
201
232
217
149
220
208
166
197
214
234
183
215
242
242
220
235
166
188
244
216
222
256
212
227
191
185
224
226
214
171
144
181
142
205
169
216
253
210
222
210
207
246
181
181
177
206
212
229
212
204
258
208
178
191
179
142
228
286
222
189
234
173
256
184
217
219
189
170
171
158
186
150
228
207
216
193
175
196
164
137
174
198
230
156
221
221
192
160
207
220
214
261
145
183
169
182
218
245
149
230
189
203
221
186
201
189
212
227
231
180
127
185
222
237
192
161
224
234
201
184
234
142
218
212
219
190
217
171
235
203
264
176
205
200
155
252
208
199
209
180
247
171
188
155
192
177
194
193
238
211
180
253
222
141
166
192
169
199
192
197
205
205
214
184
195
220
222
198
187
213
161
204
192
189
239
238
183
220
239
203
195
236
176
203
148
194
222
212
149
157
251
148
242
250
239
92
201
200
175
162
195
242
182
198
242
253
175
165
160
211
254
176
152
218
230
175
242
273
243
213
201
258
159
150
204
224
225
236
229
199
184
226
187
206
234
215
242
188
182
261
196
223
209
137
221
196
136
197
170
193
183
188
204
204
184
190
233
205
169
204
133
180
218
207
196
276
156
187
243
198
225
238
200
145
228
230
219
259
189
251
147
189
201
224
200
203
132
203
206
155
217
238
230
231
189
178
224
232
198
217
132
263
189
147
217
235
188
199
208
171
175
195
196
185
245
205
128
176
207
248
153
215
218
249
199
230
194
244
198
189
200
160
254
218
163
193
165
91
201
204
210
214
184
188
208
175
205
224
212
210
214
239
240
161
140
213
192
177
199
225
180
197
211
252
212
160
213
216
217
213
197
225
206
163
214
170
140
217
180
181
177
169
222
212
167
204
184
227
206
213
177
263
172
168
168
194
199
198
157
274
212
200
226
167
199
202
206
204
163
210
129
235
181
183
229
243
174
159
161
221
184
222
207
149
268
183
252
229
260
208
177
217
236
241
225
187
234
194
188
274
152
219
199
233
97
213
176
195
167
216
206
185
221
177
167
211
186
113
191
194
216
205
212
179
229
181
247
195
162
221
216
239
209
149
243
173
204
209
223
221
164
209
245
240
216
218
180
191
177
204
205
196
237
198
224
168
201
247
244
191
218
142
229
253
169
152
220
220
191
218
200
203
183
238
197
211
220
228
173
182
188
234
188
211
205
159
214
225
193
276
200
222
175
178
222
145
215
203
200
241
178
230
184
216
246
148
283
175
141
169
216
247
228
193
167
227
259
189
219
185
121
215
289
171
194
216
201
145
173
193
210
178
171
189
231
200
204
226
240
246
257
224
171
191
207
163
205
224
206
203
137
169
178
155
189
237
240
200
159
219
208
209
195
205
192
180
214
131
218
150
178
252
159
205
231
199
196
161
192
220
218
185
157
162
234
209
140
245
140
177
213
185
177
193
274
271
213
194
244
228
205
186
219
185
176
191
186
233
230
194
224
182
193
209
211
197
198
192
173
245
190
228
225
221
131
203
164
260
286
192
187
174
225
247
182
145
209
226
227
241
165
191
219
175
255
181
173
246
182
177
252
250
199
249
202
186
209
214
222
180
236
236
230
237
178
180
253
195
167
170
203
126
212
187
175
204
159
164
131
175
279
201
221
208
239
219
123
184
256
155
217
102
241
238
211
207
203
194
145
184
206
153
184
243
206
123
180
195
207
216
221
144
219
218
196
233
155
237
208
142
143
208
207
140
249
190
203
226
143
168
230
223
252
211
198
172
171
171
200
149
233
171
189
264
214
210
165
236
229
239
141
224
243
205
179
186
217
239
216
177
217
114
192
231
246
254
177
239
230
253
213
206
305
191
177
209
237
197
209
178
245
152
144
197
213
214
226
129
151
192
139
259
175
198
280
248
205
217
254
176
152
168
163
218
223
265
216
150
207
189
230
208
200
207
235
194
193
223
177
205
206
243
188
206
199
247
195
240
208
170
197
236
140
159
225
206
214
229
231
190
277
159
241
262
208
242
154
241
203
204
175
138
218
139
195
234
187
180
217
212
192
227
190
182
164
209
294
175
206
246
273
160
199
178
232
223
206
225
138
223
206
194
191
189
198
176
215
246
210
146
231
240
238
173
179
228
232
170
90
131
165
192
227
213
190
217
207
222
160
250
208
228
189
239
159
173
138
238
227
158
195
188
171
246
237
184
237
239
266
195
176
231
216
195
247
233
173
237
226
167
160
155
196
252
192
245
197
164
208
187
177
191
212
153
212
185
202
237
199
174
169
239
205
205
190
250
184
242
213
194
255
171
266
209
183
243
224
198
174
210
156
220
181
235
164
163
238
173
172
194
226
204
223
149
232
224
179
255
221
231
291
187
150
151
215
145
246
248
160
220
216
219
187
266
141
176
135
222
186
223
193
178
174
196
187
200
195
210
200
224
243
215
181
168
224
211
260
157
250
213
147
220
276
187
213
190
196
166
238
193
171
230
181
204
230
194
203
214
170
185
248
140
156
237
165
176
150
218
216
203
193
182
216
220
247
174
205
199
236
213
199
170
201
191
167
195
211
222
252
250
194
182
216
206
207
282
217
175
236
273
187
195
152
251
219
206
231
194
197
169
259
177
229
234
218
141
179
234
152
148
214
226
167
189
118
229
176
176
155
237
236
160
210
106
164
236
243
203
216
169
234
202
227
189
242
217
190
190
211
241
215
199
251
177
225
171
236
237
169
214
207
172
170
261
192
232
175
248
153
214
247
189
132
172
259
237
204
217
153
236
127
151
171
172
199
218
186
173
192
199
200
178
187
182
201
162
175
189
176
228
246
185
282
239
198
174
224
204
235
241
190
275
165
162
233
196
215
197
262
226
166
215
233
159
179
223
249
190
157
194
214
226
210
228
240
210
245
151
166
227
235
223
201
113
235
231
238
189
213
210
197
210
242
176
223
223
202
156
185
164
186
266
189
223
216
145
227
235
184
216
253
185
212
189
253
217
194
207
194
189
223
198
203
168
205
131
244
237
183
183
292
210
154
153
215
154
199
211
202
196
178
210
199
208
208
128
245
210
249
160
247
221
213
185
206
178
208
192
233
197
203
187
223
195
221
265
239
176
159
242
207
247
216
237
225
260
196
190
183
202
222
172
217
201
192
261
255
207
177
228
263
275
278
228
225
172
222
194
211
258
211
179
205
238
216
208
227
200
208
269
231
178
193
258
116
219
238
183
213
238
217
220
218
204
209
223
174
227
241
225
234
168
176
167
225
219
246
193
201
197
154
189
200
264
227
193
225
207
255
231
161
140
149
187
221
213
191
202
246
200
215
181
211
212
230
225
223
175
262
162
233
174
250
220
176
168
226
133
201
183
156
179
144
187
162
236
188
205
158
158
237
215
169
266
203
198
188
215
220
165
128
185
180
185
180
177
216
211
160
207
238
205
266
260
185
260
189
152
239
196
217
166
170
204
190
251
171
226
165
206
230
205
242
196
215
154
212
212
274
226
169
206
148
150
244
148
182
189
168
165
203
219
169
185
183
209
194
198
184
202
201
232
215
198
244
159
188
190
155
242
190
215
191
195
149
196
202
174
204
203
173
194
259
203
216
228
189
154
249
203
206
161
199
192
193
150
189
218
180
197
257
141
136
164
182
193
171
175
181
200
266
261
207
216
153
158
185
180
251
127
225
239
225
156
182
164
220
179
193
224
240
183
258
185
200
234
165
166
194
160
190
281
209
238
190
176
176
250
128
211
197
146
273
205
209
202
174
167
214
197
236
194
212
202
181
205
248
205
185
123
191
228
164
171
203
280
153
143
183
201
267
183
187
254
163
186
188
275
229
160
201
237
222
139
246
149
258
159
152
202
160
200
187
217
191
139
182
214
157
213
256
207
238
115
214
218
203
183
231
252
184
204
174
204
259
228
238
178
178
201
181
219
166
223
218
255
173
265
212
280
224
222
166
163
157
231
176
183
164
209
182
201
175
196
124
228
193
138
176
172
153
204
213
194
163
169
200
177
210
137
231
192
177
189
148
181
180
177
177
175
173
232
238
258
190
192
170
234
232
227
165
234
214
218
233
209
233
149
188
246
185
201
187
224
216
157
217
222
181
154
220
253
155
207
162
295
231
220
248
150
245
264
200
174
242
159
204
167
227
208
217
231
146
144
206
177
219
173
176
223
281
183
217
244
182
150
199
176
188
232
233
185
228
218
206
188
181
230
186
207
252
239
253
206
208
259
199
180
252
176
194
195
183
220
218
221
191
215
173
231
169
160
214
209
161
215
235
162
247
194
260
196
162
220
149
221
224
212
200
105
218
260
197
190
202
229
228
259
196
232
292
211
167
267
162
180
217
152
190
236
222
285
239
212
240
218
196
268
225
234
191
228
177
239
235
197
222
232
127
215
152
227
229
125
247
204
151
227
234
157
190
209
175
164
167
214
151
174
178
233
242
255
285
132
170
234
213
200
171
209
283
222
240
178
193
189
143
164
168
179
239
165
233
235
238
207
229
182
196
205
171
233
240
204
188
244
138
193
157
208
194
149
248
215
222
259
193
226
183
216
190
139
227
180
227
226
217
243
191
229
203
188
181
250
124
206
248
208
240
216
264
231
212
236
191
180
212
233
194
160
182
127
152
178
219
242
238
211
186
240
156
181
181
174
200
297
208
185
184
225
257
197
219
241
243
171
153
212
168
191
237
239
134
276
167
155
207
246
207
236
232
208
191
283
176
199
212
128
208
225
197
176
239
188
253
152
155
236
168
171
157
162
230
190
143
245
193
248
171
227
201
228
199
154
215
197
213
172
213
229
187
175
162
198
237
218
173
217
206
209
170
188
197
213
270
214
177
210
152
210
214
224
199
199
241
256
243
271
227
183
247
183
201
217
169
155
169
196
245
130
211
178
179
191
170
187
196
194
200
197
148
219
131
175
171
224
154
255
214
212
211
148
197
265
157
132
138
191
194
214
241
215
171
172
189
182
146
199
220
192
170
173
152
184
181
157
195
208
199
210
240
143
191
193
161
184
136
179
196
204
240
212
118
222
132
230
176
195
191
218
195
206
197
162
219
226
267
178
178
229
251
184
139
239
231
205
209
185
188
246
169
157
211
221
136
136
173
254
228
180
218
182
178
114
193
195
158
243
182
209
227
168
204
230
189
196
221
170
222
198
177
213
222
201
148
221
207
153
149
205
186
222
167
253
194
225
131
163
179
268
241
219
156
245
234
210
214
255
220
196
184
230
202
160
201
220
145
224
179
170
226
187
222
175
228
159
190
191
165
194
149
211
151
187
228
175
146
182
220
96
232
201
199
243
259
264
181
192
246
151
198
159
239
193
153
204
156
177
256
181
209
170
196
124
189
147
234
201
171
132
199
220
206
205
210
217
139
234
247
267
212
189
207
209
176
219
207
148
152
177
217
208
142
203
219
225
202
198
207
209
200
190
228
238
219
218
187
191
277
218
156
228
107
173
200
177
168
217
190
181
258
145
149
175
135
212
162
176
200
127
195
171
194
229
187
192
165
186
212
160
146
129
272
196
143
178
238
173
229
222
162
260
249
239
193
212
205
177
181
203
209
196
192
222
259
151
159
239
163
201
169
190
231
141
204
211
165
193
120
243
130
175
211
185
233
226
189
232
176
248
215
173
185
193
236
228
173
219
212
203
195
204
187
225
194
184
257
167
183
168
172
183
177
196
189
217
232
183
184
181
260
213
242
234
231
133
169
244
144
171
239
222
234
217
165
260
169
193
179
213
155
204
193
202
211
260
153
184
217
190
173
208
230
198
130
183
160
160
176
215
195
166
238
207
197
212
208
93
189
233
165
123
163
268
191
243
177
234
223
158
147
177
218
205
181
205
258
164
175
234
239
172
184
184
221
228
148
216
203
269
177
155
215
272
208
251
198
241
139
168
187
190
226
151
159
219
181
219
284
184
170
204
215
183
212
207
260
179
215
231
243
232
230
182
197
197
231
165
117
262
190
202
230
143
231
174
99
202
238
222
213
240
228
219
170
243
235
198
239
197
240
181
142
195
165
179
208
155
205
230
233
238
281
185
231
270
244
180
195
236
210
199
174
188
226
142
194
226
172
182
181
172
204
215
137
172
221
127
190
186
233
221
283
280
239
232
210
181
214
195
142
229
190
166
191
149
226
242
177
173
182
203
192
249
181
236
188
216
236
218
224
235
217
171
257
266
231
234
223
266
154
204
141
159
182
241
268
178
253
171
190
225
183
191
148
193
241
205
176
177
177
180
173
200
188
197
195
231
129
219
223
294
228
178
215
242
181
213
137
240
172
227
197
251
239
178
188
183
181
195
138
182
215
171
204
202
190
221
172
199
185
187
194
167
181
214
205
188
251
222
228
118
199
197
151
187
193
233
202
196
216
247
204
168
233
189
263
225
194
193
189
152
166
208
143
221
234
173
214
166
201
200
198
203
208
188
209
200
202
161
188
222
212
177
208
201
216
160
191
196
210
167
182
213
179
174
227
173
237
234
207
205
201
200
215
239
218
204
187
161
239
219
119
219
185
211
259
168
152
162
146
137
219
159
199
216
220
172
215
229
142
233
206
167
249
236
175
228
235
149
179
180
196
206
200
208
151
270
167
166
135
242
163
148
225
164
188
226
197
182
225
167
253
235
219
296
189
227
210
223
184
144
209
185
177
234
185
210
218
191
232
210
230
206
123
214
245
185
175
242
255
225
212
186
191
163
233
173
267
210
214
156
193
204
189
220
201
227
254
211
253
220
245
216
177
206
204
206
226
243
190
210
176
179
275
210
208
215
251
204
205
238
230
266
201
219
228
274
204
199
236
270
200
248
192
250
297
165
184
159
153
200
210
245
217
186
186
184
218
165
195
184
237
217
228
261
206
247
211
179
218
198
153
211
158
172
221
175
147
262
212
217
174
183
261
254
239
182
163
188
203
169
219
232
179
149
228
198
195
244
151
253
239
208
167
202
229
225
212
222
218
216
218
198
176
223
224
241
178
239
129
144
193
173
241
191
187
167
138
203
137
249
174
193
234
219
189
189
215
179
259
185
188
213
217
192
199
219
195
220
123
122
197
204
249
156
219
199
174
199
215
204
187
200
191
208
169
196
210
218
254
233
219
144
166
214
224
237
163
174
214
208
139
145
243
235
233
187
241
201
151
129
215
176
217
222
201
188
186
145
195
204
254
131
221
267
249
179
149
226
125
133
216
229
181
204
224
236
200
211
140
230
143
204
186
212
250
165
198
224
238
223
213
180
234
216
186
179
188
176
242
228
163
208
219
172
205
216
269
225
217
180
218
186
203
140
172
216
190
194
171
226
232
187
196
135
233
205
207
245
139
201
153
136
170
185
171
182
179
201
249
164
165
162
139
185
215
249
242
109
240
228
187
195
204
226
196
257
234
213
167
174
257
215
182
183
138
188
150
118
211
219
236
242
262
247
208
181
188
188
249
238
137
204
245
227
245
190
163
224
134
222
237
213
168
124
234
207
183
201
258
164
294
232
255
185
186
207
227
180
131
232
227
160
183
252
205
145
202
211
168
255
215
225
176
206
216
236
229
174
215
234
186
209
229
236
255
254
207
177
189
179
289
207
241
170
135
257
220
222
245
252
236
185
221
174
194
175
208
175
192
218
240
181
223
221
203
229
191
179
209
235
146
222
237
208
244
226
129
186
216
206
241
210
148
223
223
184
166
209
147
235
176
229
207
150
203
237
260
183
212
155
191
196
177
204
175
140
187
200
232
166
240
202
225
253
235
227
175
219
209
238
165
216
154
206
169
171
186
174
186
224
238
246
207
180
211
165
177
212
181
154
201
176
240
151
223
198
170
226
175
186
240
186
172
203
230
182
233
206
198
223
160
206
193
147
164
196
203
160
231
199
250
223
182
199
262
207
228
183
200
204
251
201
220
219
185
188
227
132
192
162
229
147
218
244
252
240
139
186
230
214
216
205
249
148
169
195
186
203
244
187
143
209
134
219
195
222
182
230
237
196
205
208
194
154
215
144
314
225
195
235
154
205
265
160
149
187
212
221
130
168
186
215
198
142
200
189
202
170
196
205
185
172
168
261
235
204
262
213
211
151
213
243
130
186
209
192
193
216
229
206
194
163
218
190
141
176
244
182
208
174
205
253
267
207
188
219
203
188
244
168
242
230
226
235
238
209
217
160
197
227
233
229
147
182
249
232
218
163
254
208
230
196
197
186
208
247
218
204
218
176
226
262
212
175
223
159
198
233
195
246
215
188
173
221
217
193
223
234
241
237
191
204
160
176
217
207
120
158
222
180
192
227
120
197
185
95
148
204
195
136
180
231
260
224
216
198
166
175
202
148
228
237
168
190
260
186
244
209
170
208
236
190
260
191
176
194
243
208
236
232
233
187
158
185
200
229
147
258
260
210
178
176
220
257
218
184
255
199
242
233
196
154
208
146
190
193
228
173
219
224
121
196
240
207
192
173
189
212
186
177
180
219
173
233
202
247
213
230
253
130
211
221
196
214
202
228
237
231
237
158
209
204
191
173
219
248
147
192
259
187
215
285
123
205
227
269
252
164
213
180
206
152
249
212
263
224
214
199
216
255
162
168
214
170
191
176
179
206
213
154
222
158
201
166
250
223
198
241
198
204
226
180
150
156
224
220
229
199
197
232
230
156
74
177
200
195
215
222
169
195
144
232
211
138
174
196
192
239
240
250
215
178
168
272
129
162
158
203
211
236
158
230
231
173
151
194
169
196
207
220
197
217
191
247
204
223
262
194
131
164
220
180
240
162
216
208
194
143
155
233
218
194
143
197
264
188
179
202
178
219
271
257
201
167
182
241
83
226
235
167
250
145
182
131
212
216
215
164
171
251
137
232
194
208
177
241
190
190
238
214
199
150
223
231
203
202
156
212
197
162
115
195
180
191
216
203
130
195
215
170
171
239
197
231
143
196
212
252
229
205
231
147
188
200
199
186
180
219
207
146
163
219
178
187
251
176
187
206
163
171
181
179
221
241
220
189
144
161
157
178
266
200
156
219
214
193
229
180
138
211
161
162
212
204
204
203
214
269
213
210
211
185
185
210
181
274
190
145
200
202
164
232
170
189
216
276
204
233
235
156
178
260
171
174
264
162
259
120
244
221
189
174
225
165
201
200
223
229
230
150
227
214
201
174
211
166
187
220
256
204
201
187
250
228
204
187
152
210
273
177
221
202
223
169
183
199
240
190
156
184
247
224
246
188
251
229
209
154
215
150
261
110
170
166
169
214
168
197
252
207
219
151
261
154
216
207
267
188
211
209
222
208
244
178
147
185
252
191
282
244
183
170
259
152
233
224
170
196
197
190
216
185
258
205
146
256
223
206
219
149
233
141
172
139
190
185
231
203
190
190
223
186
230
214
200
171
194
195
237
273
163
161
188
153
162
194
144
155
225
228
166
214
110
158
174
176
228
242
232
199
219
200
205
218
193
143
170
181
126
172
122
243
162
233
185
180
187
143
195
221
130
147
249
182
238
205
239
211
218
256
175
193
186
172
173
214
189
228
238
225
178
246
215
168
219
211
215
156
144
143
206
234
191
196
211
225
164
206
203
178
187
226
209
198
167
139
229
207
165
243
225
174
189
260
229
195
160
233
174
212
233
204
173
165
215
290
143
216
243
190
208
218
224
121
163
172
194
152
179
246
191
118
152
203
204
212
195
200
231
259
207
251
232
203
178
228
228
161
215
134
214
178
233
232
194
188
237
160
203
171
184
186
172
119
177
197
191
191
222
208
200
209
246
163
149
147
152
180
273
191
179
268
199
170
198
234
179
167
224
194
180
211
223
254
228
235
203
234
192
221
209
231
237
228
212
230
179
155
204
247
105
220
144
191
185
171
174
207
230
224
214
143
214
229
202
154
183
160
230
164
147
203
120
214
152
153
141
222
225
243
147
208
159
179
177
173
230
171
218
234
178
191
232
204
180
207
261
216
189
201
195
182
197
190
235
155
207
204
177
215
136
261
133
203
202
194
228
242
165
186
156
196
181
171
225
236
217
226
282
207
218
210
161
214
209
184
151
172
207
154
235
258
198
229
237
173
214
157
279
249
139
211
178
250
241
205
214
225
212
191
160
220
161
227
252
179
148
213
193
242
220
187
264
165
155
204
251
203
172
199
127
241
176
229
179
174
196
231
221
172
203
259
233
193
154
185
200
201
249
258
247
221
203
255
239
195
188
202
238
189
176
231
243
190
233
183
215
159
230
229
210
191
202
162
198
196
233
170
256
193
273
157
213
201
252
195
222
180
174
186
182
189
187
169
186
187
238
207
179
232
138
205
228
213
175
182
191
229
226
228
225
180
192
156
197
182
218
207
130
190
169
211
212
165
189
223
183
217
272
208
164
191
243
215
258
184
269
207
178
232
182
186
238
197
184
149
205
210
169
201
228
185
244
238
194
219
183
248
244
148
207
206
156
186
196
143
219
159
186
212
177
243
171
227
152
148
183
172
177
249
200
256
282
243
120
230
119
247
208
235
186
194
208
220
214
211
227
189
204
192
190
224
214
162
229
189
187
130
244
214
219
200
145
259
217
162
188
209
217
223
255
266
197
144
155
166
210
173
179
153
236
179
161
179
252
184
224
185
190
197
205
166
185
230
173
233
175
197
214
211
194
184
237
234
178
224
223
236
230
229
244
149
157
163
152
161
227
192
249
222
244
178
202
243
178
141
144
158
250
190
238
180
202
200
230
159
186
264
258
149
196
182
236
132
266
240
218
245
198
234
230
165
236
195
187
190
270
206
192
213
147
138
184
214
160
140
247
150
160
188
222
172
231
265
264
201
146
239
182
215
198
200
236
238
224
200
246
167
161
226
199
192
197
210
171
212
220
196
233
140
231
213
204
103
169
224
174
100
196
219
153
227
202
241
207
237
228
172
232
171
197
159
203
191
218
254
162
200
149
258
173
174
237
170
249
163
194
244
204
225
257
157
161
247
269
171
213
199
213
252
237
250
189
214
177
170
168
198
201
198
260
183
188
144
150
178
180
159
170
224
221
169
228
256
201
192
190
220
192
203
183
186
200
255
192
193
214
157
153
214
190
210
164
173
233
189
151
150
209
238
228
168
232
117
181
206
195
187
205
240
254
246
199
188
215
204
213
146
194
243
244
186
189
196
208
141
225
177
211
225
161
200
187
176
220
249
179
221
229
156
226
153
216
265
227
209
213
193
148
219
160
175
180
187
217
176
209
157
237
163
189
239
231
233
171
228
231
195
173
184
144
159
209
134
197
218
219
150
222
224
213
149
230
228
231
207
168
169
218
151
243
215
209
185
240
119
201
241
195
234
225
186
194
159
120
179
154
166
209
233
168
251
233
172
204
213
202
158
202
252
218
176
193
242
190
166
235
247
138
216
181
235
197
203
202
226
151
191
195
249
186
190
203
174
105
217
146
201
230
226
207
162
252
271
201
187
167
193
144
157
270
91
221
172
294
207
280
207
153
247
218
193
265
148
189
171
162
160
131
220
153
131
223
258
227
194
163
219
156
223
188
179
126
198
255
216
223
193
175
207
215
258
225
146
177
238
207
215
228
138
192
232
227
220
252
221
228
205
192
139
123
162
258
217
221
209
221
241
195
209
218
147
185
129
235
164
195
192
229
166
179
229
199
209
229
209
202
155
235
167
162
224
222
230
164
175
228
168
221
213
204
206
250
149
253
221
115
162
244
209
173
210
175
230
219
177
173
195
194
133
184
219
227
211
151
187
187
191
225
178
149
259
208
193
199
215
163
161
182
169
232
223
193
162
213
184
168
233
170
200
200
226
163
208
241
208
206
242
172
251
238
248
207
231
140
202
226
207
225
280
208
205
249
170
219
221
223
165
151
152
196
212
227
224
200
189
200
273
181
242
255
178
209
173
253
242
194
186
170
132
262
203
240
257
244
188
200
177
169
259
211
159
239
206
274
229
203
195
153
163
205
210
161
263
200
202
170
252
244
231
223
223
196
171
206
257
217
189
245
226
241
214
180
221
213
175
183
181
245
212
275
144
226
209
193
231
180
215
208
218
204
273
173
203
167
251
171
192
207
161
257
201
134
158
197
218
201
269
259
258
223
171
154
230
191
185
250
219
219
172
197
158
222
228
178
208
260
198
236
217
180
207
216
157
216
219
183
233
181
250
222
179
174
184
211
188
235
212
201
158
202
201
259
174
216
203
232
212
171
215
236
223
121
224
182
286
200
178
187
222
192
247
161
262
240
201
190
220
161
176
206
245
198
197
243
214
215
231
257
236
151
182
227
122
193
269
246
165
209
210
231
132
167
219
223
186
178
131
253
186
187
197
227
229
149
266
207
235
196
213
219
221
180
212
192
191
204
162
172
227
155
229
213
196
226
136
178
199
210
230
170
167
217
216
194
198
175
170
162
168
195
207
222
172
228
195
203
213
170
230
179
179
192
243
170
209
180
197
182
185
202
174
237
170
191
156
245
213
178
167
186
156
199
246
216
219
252
219
237
188
242
172
242
156
234
183
190
149
227
197
162
216
223
187
189
207
193
199
189
232
232
248
198
186
194
227
190
219
214
243
190
149
170
245
199
232
180
171
234
202
166
170
178
212
229
284
188
206
192
196
220
171
194
198
195
175
205
195
268
193
207
157
234
187
211
186
156
151
200
223
218
175
167
151
176
243
193
178
170
174
151
179
214
159
209
209
238
142
262
237
160
201
237
239
206
231
206
216
179
204
201
168
168
223
199
164
201
208
246
142
211
176
229
172
123
179
221
218
158
200
198
170
237
208
195
174
207
189
216
211
275
218
234
148
200
252
249
209
157
217
225
225
198
234
163
198
237
146
218
218
208
188
174
193
161
197
233
247
187
189
268
221
185
224
150
174
126
223
234
141
203
201
199
105
130
199
155
159
161
245
169
258
146
185
234
124
235
111
202
224
196
234
236
151
158
191
219
160
180
245
243
212
200
168
195
102
206
215
159
209
106
153
181
219
185
170
246
206
229
153
165
190
245
156
222
229
228
190
260
159
200
169
163
215
212
201
177
171
239
223
238
142
226
167
200
233
170
225
270
153
252
230
210
199
193
188
175
238
208
203
254
182
224
184
158
199
201
205
126
190
219
171
161
203
157
225
218
154
159
235
187
214
289
176
180
181
207
212
235
163
246
192
107
184
242
154
230
213
200
119
169
197
141
224
169
199
243
172
215
169
184
249
211
110
209
223
224
223
184
243
232
181
213
191
171
200
203
255
151
226
223
236
194
193
184
222
209
204
236
193
210
118
231
188
196
124
142
180
165
236
177
229
151
229
234
197
189
216
246
197
223
206
196
153
182
235
193
216
177
207
229
128
171
208
112
186
201
250
222
183
173
231
160
182
172
175
189
152
220
263
224
231
140
223
206
228
174
221
195
201
198
245
203
235
169
229
205
205
169
158
238
209
255
224
196
227
165
220
237
225
227
151
183
209
175
170
212
263
211
183
178
242
216
203
206
152
203
178
170
212
169
248
187
217
239
243
165
203
226
197
217
220
237
186
221
184
182
209
186
214
216
175
219
191
216
174
212
190
224
205
128
219
206
221
223
214
220
183
264
261
239
182
197
217
184
205
169
257
229
206
136
224
297
211
232
169
149
231
223
118
86
197
182
235
193
285
161
209
195
223
127
219
236
192
107
204
143
106
183
188
207
238
192
189
178
159
198
218
172
160
244
177
200
172
189
187
189
185
206
162
174
226
248
226
196
206
246
92
241
213
189
210
217
171
219
182
189
242
195
257
166
251
186
121
213
122
224
255
213
205
204
175
272
247
123
200
200
214
231
210
231
135
230
195
227
193
204
183
177
137
199
231
211
195
235
164
182
219
230
152
258
172
260
182
188
154
203
181
137
146
171
174
150
203
246
187
135
242
216
225
239
210
182
206
128
194
200
223
204
185
194
212
180
218
197
241
156
175
177
169
194
162
221
244
226
214
207
157
269
198
149
192
186
223
239
224
157
204
220
153
207
133
208
219
284
156
233
172
180
176
174
142
217
182
215
166
194
222
200
223
230
199
191
203
164
199
251
237
221
145
160
194
143
165
265
194
203
163
230
196
150
155
215
271
259
269
205
177
204
212
186
281
239
206
171
190
185
189
217
207
227
161
182
228
180
251
199
223
205
158
229
258
157
179
191
139
178
142
171
164
218
216
148
165
203
139
189
231
276
238
155
196
205
176
180
226
208
266
203
172
233
191
265
186
256
188
177
170
197
218
210
175
218
193
190
183
221
169
170
171
209
212
208
278
223
242
207
234
243
215
254
205
157
183
217
243
178
227
146
183
172
248
180
195
154
200
173
217
227
207
242
205
202
166
170
251
220
210
191
204
186
196
228
189
131
291
190
224
191
215
232
160
185
217
201
185
236
216
211
104
222
246
194
179
171
192
221
235
177
261
241
173
229
182
220
272
213
180
185
182
216
223
181
210
187
171
228
189
156
167
200
191
246
154
175
165
203
146
207
170
213
164
178
188
172
180
165
171
185
215
274
179
125
190
194
266
209
215
210
210
288
194
180
149
209
210
213
127
182
262
195
174
213
233
143
199
212
162
246
174
137
191
181
212
193
230
183
230
215
223
234
216
225
214
206
235
235
194
231
223
171
252
178
185
134
164
181
147
145
200
185
211
222
243
205
209
170
285
270
155
212
233
178
215
227
228
261
216
196
140
248
198
172
213
218
165
108
188
182
196
202
266
242
155
261
230
173
162
216
264
200
265
231
159
217
194
206
195
196
248
194
231
211
160
220
239
142
201
190
206
243
191
218
245
216
211
173
167
169
165
207
147
209
115
176
241
199
217
197
209
175
216
140
204
140
154
139
151
194
217
227
243
195
231
194
187
164
207
221
202
158
182
182
204
229
204
217
152
246
195
210
182
188
268
179
248
192
248
188
199
150
164
188
170
199
224
167
182
203
268
156
150
180
230
197
194
258
154
173
251
223
196
228
239
163
195
182
163
209
195
248
239
199
158
194
136
261
251
225
157
229
190
256
187
264
169
226
199
210
212
218
231
176
228
196
247
160
183
157
232
176
245
194
265
169
256
205
213
195
204
149
220
203
239
178
227
252
275
216
236
171
182
215
238
236
210
183
184
219
243
159
210
218
231
250
175
161
206
197
256
263
132
179
163
224
200
141
225
210
138
220
194
179
227
160
178
211
199
176
151
226
176
212
174
194
204
247
173
172
197
221
200
210
204
183
210
206
250
225
194
206
211
159
174
148
185
159
223
226
139
201
193
177
194
181
214
199
205
222
232
171
240
236
249
195
117
260
222
237
220
251
198
231
169
173
191
225
151
222
196
154
158
187
205
244
221
200
239
170
237
200
192
183
132
180
203
237
263
235
226
199
197
205
179
223
136
236
132
208
171
279
202
213
244
212
145
167
225
203
156
177
196
231
217
205
133
223
244
168
218
201
225
180
180
145
199
181
194
291
204
186
176
238
200
179
243
298
219
189
140
195
136
211
270
188
209
243
218
189
201
223
245
219
227
181
230
215
150
232
236
259
209
170
219
210
186
148
141
142
160
163
234
193
218
188
231
227
151
236
211
217
197
227
246
225
98
193
105
183
244
135
241
168
171
197
170
236
240
189
151
180
230
247
203
206
222
167
187
211
214
201
221
209
239
194
182
200
225
178
250
190
165
206
206
220
240
191
191
160
215
180
205
163
182
164
256
175
217
206
223
231
232
205
150
310
215
180
218
125
184
199
203
217
230
188
194
234
237
172
207
175
151
189
187
206
174
174
254
219
250
158
106
257
240
222
203
167
182
226
229
143
208
212
238
176
237
186
196
222
155
141
174
271
207
201
206
235
235
203
210
205
167
222
228
232
196
195
205
161
178
125
225
220
236
182
221
192
158
214
201
229
216
217
223
205
231
220
209
226
169
218
185
178
271
237
185
209
208
169
187
233
203
190
230
209
205
205
196
163
229
253
226
137
235
218
232
254
202
235
134
219
204
218
221
196
181
244
228
126
188
222
186
177
144
169
207
219
202
206
231
207
258
146
229
203
184
189
244
189
213
190
222
148
254
224
144
169
230
212
245
175
143
230
165
205
192
190
199
174
188
202
217
221
272
185
235
241
216
167
191
181
271
158
136
180
209
130
153
219
176
262
252
238
234
197
203
191
188
177
231
258
230
234
200
199
185
192
236
211
172
183
197
205
217
131
216
189
222
200
152
226
233
221
225
235
193
282
232
171
133
245
223
192
244
216
183
190
262
238
167
147
224
213
186
157
140
217
115
176
227
216
195
149
244
157
241
261
221
194
216
192
217
231
248
173
224
259
167
217
226
194
195
225
230
207
204
224
230
178
212
141
205
151
175
181
196
194
200
223
201
147
213
198
203
216
198
169
141
212
246
153
172
165
276
219
213
251
154
245
203
228
232
170
209
244
257
211
189
214
184
235
206
258
169
220
236
206
169
165
257
215
206
160
235
219
267
196
214
224
198
240
189
216
202
186
222
201
195
166
249
250
235
208
168
115
245
202
238
227
168
166
217
266
181
188
255
192
245
160
114
209
145
189
175
203
243
194
206
107
220
192
195
192
217
188
180
173
174
202
241
174
210
127
95
199
186
232
167
193
216
200
243
204
229
199
168
275
156
155
167
205
161
191
230
173
164
206
160
162
279
209
191
199
181
209
219
173
169
233
264
290
223
154
246
173
169
126
237
199
178
220
211
237
135
198
247
243
207
197
236
193
170
300
241
172
226
247
144
175
200
192
117
183
168
217
228
226
161
173
181
200
207
236
232
204
211
191
218
237
210
214
186
175
146
213
210
185
254
220
240
199
222
142
170
206
221
216
245
171
245
262
198
218
184
231
178
193
195
211
223
206
188
191
251
188
208
204
217
262
167
240
246
201
209
154
235
200
204
198
157
162
209
243
211
278
190
186
198
199
251
206
232
198
203
156
207
175
228
201
234
157
184
207
163
203
187
197
234
145
157
196
196
182
215
228
204
167
153
197
233
141
186
142
250
132
200
251
198
244
165
147
207
219
263
219
196
248
226
185
215
150
197
196
228
204
221
166
181
191
215
168
212
220
205
236
252
225
150
217
236
141
193
156
200
182
123
196
142
184
178
236
180
172
206
212
230
164
241
229
200
152
207
207
245
193
261
234
191
153
131
186
243
264
166
264
244
231
263
208
242
179
124
239
163
225
156
193
176
197
225
115
193
210
226
212
233
189
195
211
175
165
166
186
180
182
189
170
208
266
238
236
135
185
164
188
224
166
155
300
239
190
220
210
171
214
193
160
165
207
189
191
104
148
206
141
249
150
175
169
164
223
218
187
176
214
225
248
248
225
148
228
166
218
186
182
165
176
179
169
232
239
180
178
212
186
221
249
204
215
244
149
158
241
206
193
197
255
214
201
268
178
192
188
215
222
247
204
196
216
192
213
127
131
172
228
251
191
229
203
206
157
216
150
241
161
242
220
192
236
201
136
192
207
199
177
173
249
222
203
145
196
212
203
177
140
241
233
215
151
180
213
235
161
209
225
196
230
217
196
204
226
282
156
221
183
212
266
264
231
221
157
146
188
190
162
235
219
252
268
198
177
157
189
197
216
172
180
180
231
197
172
150
240
242
148
165
156
251
203
229
229
153
169
213
216
202
155
220
231
225
131
170
246
203
201
249
164
145
191
233
238
129
240
230
156
208
216
222
159
120
232
224
223
232
203
203
177
159
171
143
168
173
226
162
249
223
152
167
178
156
261
153
237
224
195
218
177
207
240
201
205
198
209
175
203
202
228
183
216
198
158
254
255
268
166
197
212
256
224
188
234
175
173
172
219
168
233
205
205
228
171
198
214
213
236
152
217
193
237
239
212
240
247
206
219
217
176
203
189
143
177
164
173
179
219
220
179
236
192
184
272
249
283
201
192
265
206
153
210
166
218
196
244
235
219
172
172
204
241
209
163
204
137
213
223
160
197
273
184
226
188
244
225
213
202
189
193
187
162
154
177
230
163
259
210
192
223
205
234
174
225
225
202
201
182
226
223
194
199
148
191
154
177
238
151
172
131
277
154
239
272
213
215
224
189
240
192
207
184
177
222
249
268
189
230
205
199
206
211
202
274
244
164
225
232
224
212
194
237
196
282
237
205
218
167
233
157
243
213
233
186
235
181
187
219
202
141
207
202
158
167
226
168
240
242
117
223
188
237
182
106
156
244
201
253
191
173
189
201
184
201
205
149
155
168
188
217
227
183
152
201
187
201
181
225
207
274
271
193
183
269
200
196
182
271
177
114
177
238
174
143
201
215
184
222
220
221
223
119
183
239
167
228
144
169
181
227
150
258
176
230
231
184
229
187
192
241
221
220
183
160
253
192
264
187
196
187
197
165
251
187
208
234
191
154
204
258
190
252
180
201
225
225
196
238
193
135
153
235
210
136
231
192
171
176
201
170
235
201
227
209
121
157
174
189
183
255
127
165
257
224
218
140
216
199
173
185
234
184
226
214
211
178
229
216
99
166
173
194
200
238
184
258
213
144
127
202
229
186
235
192
199
190
165
159
151
198
205
136
150
251
198
182
207
215
230
198
191
207
192
202
217
228
213
226
166
189
256
140
216
186
205
193
202
187
161
226
197
195
207
142
168
218
141
204
259
256
199
188
223
215
234
138
196
183
119
188
215
161
153
232
202
178
144
227
106
207
154
205
192
163
235
166
172
219
179
197
208
165
157
258
245
219
257
198
265
178
243
174
251
224
148
177
168
165
209
182
214
230
122
145
189
213
269
189
190
154
109
212
176
218
158
197
245
157
233
248
203
170
210
232
199
245
228
213
242
193
207
173
169
175
162
118
122
167
143
202
232
176
202
201
163
239
202
263
143
195
187
208
174
222
228
206
213
195
199
135
197
225
127
124
154
259
209
191
224
166
188
141
220
235
156
165
194
168
181
232
182
185
232
202
289
158
165
160
204
221
239
189
94
148
84
164
233
288
200
164
215
191
208
209
223
205
157
246
201
231
227
215
166
140
217
192
183
232
227
174
202
147
247
175
169
193
200
237
135
209
172
178
245
172
212
192
251
157
217
234
167
214
137
223
219
209
216
196
234
171
183
193
178
251
163
197
213
181
149
203
232
231
219
184
215
160
152
222
194
175
159
189
189
207
250
224
240
201
153
192
229
236
232
184
183
184
187
214
243
182
218
192
171
278
203
195
173
258
164
185
177
199
200
219
165
164
224
200
226
194
178
227
197
177
189
155
225
234
224
192
173
144
215
180
237
235
199
154
167
195
153
244
204
201
220
229
219
139
191
249
227
201
156
158
120
194
226
200
176
224
196
253
227
174
166
212
244
145
152
178
195
213
227
202
155
137
158
158
143
133
204
203
182
200
235
185
177
156
215
151
207
149
154
174
189
175
223
231
187
264
167
246
264
154
217
225
223
187
118
183
224
189
198
180
203
160
160
158
200
166
219
168
161
231
254
196
201
173
173
189
203
213
229
220
196
239
205
195
215
132
239
234
241
221
267
180
159
224
152
212
295
253
148
194
133
135
170
138
192
195
219
166
208
211
202
152
163
130
248
215
252
213
134
219
162
189
208
221
167
200
193
177
224
189
217
198
130
179
131
253
137
187
301
246
233
204
255
204
151
186
210
217
152
245
226
218
199
228
171
154
178
196
211
198
221
139
188
209
256
155
181
207
143
180
210
181
216
256
198
220
232
130
222
170
220
282
160
227
214
219
196
178
187
175
227
196
153
236
189
216
191
221
259
197
181
169
217
216
244
165
212
249
190
228
216
211
156
246
194
246
197
173
244
227
164
218
240
154
210
224
186
225
218
228
206
241
207
207
240
254
171
220
259
212
237
269
180
200
271
246
146
259
131
205
201
204
215
225
165
237
271
215
169
241
215
169
197
180
216
232
205
116
172
154
142
257
207
217
217
206
248
201
184
182
199
210
203
208
198
180
210
245
117
221
255
232
221
204
185
213
217
147
150
262
216
176
190
232
160
198
203
215
203
248
212
182
194
135
172
255
190
219
221
238
202
188
188
168
211
207
195
210
228
186
223
247
216
216
195
226
209
246
167
184
282
245
183
220
200
214
250
194
243
163
240
191
188
188
182
254
195
177
218
186
185
199
224
204
170
246
184
197
220
186
234
151
201
189
184
139
256
155
168
213
234
221
163
152
171
206
189
147
231
165
136
249
172
236
186
202
132
239
168
145
234
177
164
216
187
206
141
249
243
205
176
202
201
181
190
191
215
216
194
214
208
212
235
95
153
156
175
224
223
204
232
208
202
266
228
251
224
188
256
267
160
225
191
160
234
268
199
183
160
239
154
235
194
204
222
217
255
153
198
220
167
206
235
285
212
214
192
237
210
169
221
187
230
202
231
264
229
225
245
215
136
150
231
195
224
168
212
246
161
154
202
178
226
216
192
220
192
190
232
228
214
174
183
201
220
217
226
140
302
182
243
159
160
192
176
203
213
209
207
200
171
147
226
176
187
155
240
213
202
247
191
214
185
185
169
172
222
164
207
179
208
174
211
222
204
195
249
148
215
258
172
225
170
202
162
207
226
210
180
169
191
161
250
171
209
188
175
168
251
206
194
201
129
214
180
260
188
165
235
192
156
238
170
192
201
183
175
152
178
231
206
253
199
162
218
138
146
194
145
220
196
232
202
188
257
176
204
227
219
195
248
231
159
194
126
234
152
198
172
174
203
144
193
232
227
154
177
202
237
145
220
199
179
159
163
262
221
188
240
189
170
159
159
167
209
198
212
199
160
248
136
224
192
148
213
216
217
197
213
142
212
140
217
143
188
207
180
238
222
220
222
199
245
180
194
197
220
262
166
283
165
162
228
157
206
192
227
204
211
148
210
162
245
208
205
89
143
216
170
202
219
168
209
190
227
232
157
219
126
202
252
175
174
137
199
217
196
209
231
237
214
224
171
213
146
242
175
220
233
219
219
199
133
248
229
175
183
184
180
168
161
210
240
162
205
223
233
215
160
207
182
193
218
224
248
224
193
228
239
171
236
222
175
157
243
165
196
199
163
191
262
176
174
110
218
168
255
206
174
228
204
234
223
245
215
194
227
169
214
131
205
185
217
191
212
119
177
188
181
258
228
126
154
183
175
175
202
258
139
261
230
236
205
221
170
173
224
177
176
166
209
196
164
183
202
197
201
155
223
218
250
199
200
218
175
186
199
197
234
214
212
191
200
197
193
200
268
186
201
217
198
188
169
193
136
165
180
202
181
178
160
220
145
234
171
229
195
210
229
206
209
200
169
199
245
190
241
180
201
193
196
187
160
197
152
184
190
197
223
236
202
204
199
184
235
221
196
151
194
174
219
265
166
116
186
162
206
233
150
245
160
192
176
179
179
224
125
253
167
221
223
204
221
195
212
231
192
134
227
210
284
234
175
232
179
228
243
166
216
206
188
160
153
216
175
254
242
194
214
171
221
228
156
232
188
177
222
185
174
224
208
213
168
208
220
204
219
227
170
150
196
142
177
152
232
203
165
181
186
281
226
189
235
178
198
246
207
225
272
157
212
202
183
240
258
222
179
215
216
233
191
156
248
199
251
192
202
227
222
185
205
216
179
209
161
184
201
213
204
255
223
141
205
262
135
184
213
147
220
214
187
97
195
212
202
148
234
174
212
133
195
158
206
200
270
228
153
173
200
188
195
220
203
204
210
141
192
228
215
201
196
184
242
171
212
173
191
186
224
176
161
184
192
192
195
221
173
141
214
209
123
203
214
232
185
251
225
191
272
220
210
204
205
216
179
232
206
158
254
212
228
185
222
265
218
156
190
240
209
188
186
240
176
144
251
207
227
130
213
179
209
233
223
178
196
172
180
160
190
219
207
230
198
228
249
204
208
210
241
162
224
210
192
199
214
228
231
208
235
235
232
157
226
197
146
200
217
155
169
237
187
209
187
219
186
150
193
197
209
241
145
222
257
222
264
227
159
186
202
160
212
180
134
244
177
208
180
212
150
166
209
204
155
194
214
160
233
192
149
194
243
208
209
226
143
240
194
186
225
261
246
183
218
206
153
179
155
212
171
206
237
269
156
213
206
197
162
219
215
173
172
134
190
252
184
170
212
157
223
183
211
245
169
237
228
247
198
123
177
180
197
210
150
206
178
224
173
154
199
172
197
180
274
109
212
193
163
190
176
199
155
282
230
199
198
177
241
170
182
202
161
184
238
200
254
226
166
184
232
180
252
244
174
222
224
208
157
217
214
219
149
197
183
207
287
147
205
237
213
185
228
177
190
226
117
147
243
137
211
171
202
232
150
181
166
149
202
226
187
178
163
212
182
156
264
190
206
220
171
191
189
240
205
209
232
214
232
162
186
173
239
201
225
234
149
224
203
187
218
150
193
227
162
220
149
152
181
232
210
231
249
249
121
192
229
233
225
224
250
220
270
237
211
165
240
200
179
193
254
183
170
169
238
246
204
202
228
172
179
242
229
206
134
271
217
204
192
233
127
134
214
200
162
189
179
179
211
214
219
193
228
177
193
252
231
232
154
228
226
196
147
207
224
193
223
225
244
194
251
176
207
164
190
250
239
222
140
203
215
191
246
150
191
179
175
169
189
78
191
195
243
222
237
219
212
201
221
161
197
175
245
186
205
173
179
159
206
170
221
160
259
180
206
235
218
218
223
226
166
217
184
147
192
198
193
205
157
236
198
220
227
220
149
190
206
186
163
250
224
171
143
223
198
229
212
121
200
194
157
225
173
203
185
161
245
209
164
215
202
197
137
267
198
192
170
206
182
225
160
239
175
204
146
195
159
205
199
214
164
181
224
210
228
189
210
222
189
195
183
193
171
204
217
225
221
165
236
275
264
200
204
100
216
203
226
210
208
185
188
203
172
133
192
187
174
210
230
167
186
227
216
228
190
178
174
219
204
163
289
127
229
162
233
250
156
240
168
158
224
151
181
161
155
177
200
159
167
261
253
154
206
161
188
204
81
235
178
180
261
224
176
212
230
175
229
228
147
171
162
192
187
145
159
239
192
236
159
164
159
136
224
233
152
239
199
222
224
231
170
205
201
209
206
258
253
209
220
137
185
226
192
194
161
199
172
241
166
222
185
156
219
237
223
230
146
220
158
238
213
167
147
172
272
195
212
203
237
138
236
258
204
193
184
160
209
214
179
206
231
236
241
197
191
184
222
216
242
175
199
180
177
253
216
156
176
136
251
221
189
188
114
222
244
107
227
217
164
184
204
235
222
218
181
270
178
237
197
209
169
289
169
165
241
248
198
214
162
164
194
172
204
151
208
167
162
230
201
164
136
177
210
235
186
216
182
172
182
248
206
106
203
176
254
241
148
149
182
179
214
163
104
248
173
223
211
242
220
227
189
216
190
221
215
181
175
210
240
157
218
136
203
160
212
216
189
215
193
173
169
225
255
237
225
265
203
139
240
215
219
216
255
192
222
187
228
198
208
90
232
231
192
238
188
262
222
239
175
195
194
222
182
195
169
180
189
202
184
142
229
170
243
122
167
236
207
166
215
182
226
231
208
284
242
157
262
241
205
138
145
252
232
153
246
189
239
171
180
200
156
246
162
178
162
180
201
199
190
181
188
200
184
242
198
205
193
234
223
211
182
212
183
227
232
263
208
218
214
213
252
240
186
143
161
165
197
220
258
137
196
212
145
161
211
244
184
222
167
196
211
164
233
210
216
236
198
172
198
176
228
245
184
171
181
212
214
210
207
232
118
176
209
206
181
206
241
165
190
192
209
245
130
212
176
263
209
196
156
253
205
240
185
177
173
205
195
204
286
216
176
207
176
266
211
213
217
174
222
157
189
220
234
161
195
227
165
174
193
257
196
251
125
229
270
182
168
154
185
238
196
159
229
241
236
238
219
166
194
225
154
170
242
186
199
160
130
251
208
175
228
224
192
182
226
209
220
249
219
232
167
238
221
204
221
154
215
159
245
210
217
205
246
186
167
178
214
224
224
207
193
222
253
201
185
202
194
209
200
240
164
197
227
260
207
144
281
193
203
215
268
197
163
183
223
218
223
180
199
171
240
224
195
195
186
169
189
165
183
159
221
185
235
215
156
196
203
202
177
166
225
205
247
216
216
202
202
182
187
236
143
131
163
190
176
187
204
167
243
150
147
225
207
174
265
195
150
88
224
187
210
159
200
257
190
254
270
195
270
221
232
178
196
190
226
209
197
211
150
213
211
226
188
159
207
211
222
204
267
207
198
251
184
106
148
232
197
164
245
215
221
239
156
194
204
197
223
246
188
200
258
225
206
193
219
237
160
198
190
175
143
153
216
260
151
200
169
242
212
252
175
201
203
223
189
182
223
202
192
207
169
241
179
184
230
213
191
249
195
212
221
218
150
190
245
131
219
244
239
136
148
186
198
160
221
166
226
245
171
244
211
202
246
182
230
186
177
165
187
255
160
165
209
186
168
180
194
204
145
183
237
181
183
163
167
150
254
168
241
123
233
246
193
200
206
253
216
239
162
200
212
212
163
197
187
234
235
169
201
190
161
241
194
177
205
182
188
186
154
116
210
259
187
221
160
221
152
198
187
190
190
193
235
235
148
135
234
178
195
168
254
254
157
205
146
173
160
184
143
179
261
210
178
168
202
172
208
214
182
133
226
217
177
221
161
167
202
119
247
192
211
194
160
168
188
243
189
185
197
271
188
175
97
148
126
240
215
241
254
216
184
194
222
210
229
161
212
224
222
218
179
157
255
203
159
224
172
242
166
202
223
206
218
187
191
204
107
197
176
246
219
153
303
240
237
190
181
189
167
233
204
222
151
170
239
135
185
205
228
143
225
208
263
241
183
223
224
164
212
164
224
223
253
192
158
223
252
230
147
207
157
175
141
218
240
223
220
242
165
236
157
145
218
216
213
228
159
195
222
194
241
168
170
245
215
226
223
221
180
255
203
188
132
222
223
251
223
180
220
276
275
222
216
189
205
229
245
184
143
237
221
159
208
233
188
163
258
149
197
195
222
159
238
215
187
244
264
200
201
196
235
209
164
205
173
142
167
205
175
158
138
215
199
185
252
229
165
181
232
152
186
183
205
248
292
231
237
192
163
192
176
214
208
176
257
208
236
267
217
205
158
219
180
217
175
197
186
249
248
213
135
151
217
196
259
197
199
170
216
183
202
250
164
241
212
193
262
184
247
159
160
212
216
174
191
207
196
222
162
199
245
210
210
169
161
181
207
143
252
210
203
154
189
176
158
190
132
204
199
274
175
222
126
193
208
188
141
189
231
161
214
150
190
186
229
194
191
206
222
190
216
188
214
190
188
238
211
209
215
179
142
204
203
195
155
192
172
176
191
241
212
205
205
227
220
204
279
216
215
219
253
215
200
244
203
202
214
267
202
195
232
197
215
222
160
161
171
157
202
183
209
241
172
181
231
228
181
234
180
181
233
192
194
216
223
265
170
224
188
219
216
170
188
212
202
158
250
251
197
188
242
203
190
203
209
181
196
150
185
191
209
133
138
241
200
224
133
152
236
172
173
219
198
112
155
181
236
162
155
261
219
206
185
257
222
152
220
170
151
238
182
202
208
210
167
179
214
181
188
199
217
266
245
241
250
195
217
226
253
240
235
200
176
169
230
263
219
248
192
241
199
233
183
268
226
197
188
218
190
195
233
162
199
206
234
167
97
215
167
185
236
176
203
172
233
146
207
198
226
191
208
179
204
232
233
232
207
161
189
148
187
282
112
185
175
210
179
179
195
239
288
188
223
233
148
196
200
145
196
192
189
162
200
164
216
213
171
202
223
236
139
208
193
210
245
248
214
208
230
188
196
221
226
178
227
155
239
207
208
187
179
175
266
169
145
174
199
205
232
213
219
227
194
197
224
200
244
188
234
251
195
220
223
187
188
180
197
230
150
178
177
163
182
167
133
191
203
191
191
163
121
212
190
219
197
179
195
224
174
194
244
240
184
165
166
237
210
214
210
155
247
198
156
188
160
215
278
205
255
161
171
190
178
210
199
120
202
198
209
291
155
221
141
245
157
167
196
212
236
210
198
172
167
227
245
204
165
206
183
190
210
149
219
208
229
157
257
198
215
210
217
216
208
190
245
195
157
183
205
243
151
161
254
210
235
174
207
144
241
212
207
181
180
218
180
184
194
242
217
209
222
219
260
214
176
194
210
189
222
225
228
247
197
189
213
173
215
182
178
166
227
226
208
210
222
146
234
197
233
212
164
251
196
160
243
144
148
192
153
218
214
177
233
246
230
144
192
209
253
181
151
222
149
151
212
182
245
161
149
217
202
224
235
205
219
204
234
160
228
226
230
225
233
210
221
197
255
157
196
250
204
263
216
205
167
195
244
183
183
206
201
213
227
205
219
196
198
121
238
229
249
215
188
239
187
242
186
200
168
232
181
141
220
202
145
178
171
212
209
264
176
165
121
187
169
206
243
152
226
201
186
179
158
111
287
202
165
170
203
147
213
214
213
238
202
138
194
191
242
241
212
230
199
253
147
233
237
227
198
214
229
201
209
214
193
198
194
232
199
229
217
153
253
210
195
221
182
270
219
196
184
243
157
242
202
223
193
213
160
208
185
167
233
186
137
178
157
237
268
166
177
190
207
230
208
172
191
202
221
230
175
212
197
204
153
239
208
156
195
199
146
211
182
230
239
192
221
209
169
199
256
201
239
210
199
233
163
235
170
246
186
169
228
214
165
197
183
175
186
173
212
220
158
183
182
114
208
225
172
213
237
208
177
128
135
216
183
141
202
254
197
195
150
215
219
200
184
171
160
177
216
186
199
177
203
200
208
201
196
234
260
208
189
211
226
206
158
176
176
185
221
265
191
180
139
114
223
258
208
175
253
223
244
168
238
181
232
245
224
167
211
237
208
199
257
187
165
205
223
209
203
227
229
212
256
262
211
170
211
233
191
233
160
175
259
220
123
176
226
241
235
208
148
190
168
144
147
227
225
268
234
212
281
213
212
213
253
194
242
165
201
233
189
169
195
178
234
207
201
148
189
209
192
248
208
183
233
195
187
189
152
177
242
204
196
243
228
234
155
220
206
246
168
223
241
239
195
223
194
241
202
250
182
190
212
168
224
208
245
193
211
250
183
260
221
254
204
215
192
205
201
182
148
170
222
206
189
165
214
215
169
169
167
176
203
258
194
219
222
248
221
188
202
213
199
151
179
227
159
173
244
186
186
161
206
189
220
263
234
211
230
178
207
193
215
221
185
199
175
239
263
233
226
199
191
238
160
190
207
151
211
200
201
204
206
204
204
229
117
228
212
156
200
270
289
205
230
290
197
100
217
197
219
110
184
182
194
254
164
201
256
220
207
234
188
168
157
234
171
144
208
157
201
232
162
185
260
173
241
126
158
215
167
216
193
284
176
226
174
154
212
227
224
253
174
161
247
230
178
168
221
215
214
199
170
227
171
173
158
202
195
186
277
210
217
164
215
236
242
185
235
256
247
180
264
200
129
199
188
237
231
183
123
173
164
215
244
173
196
151
222
206
189
128
218
188
210
160
215
211
237
222
208
235
151
127
220
199
145
197
142
199
243
252
199
223
272
195
171
145
196
203
176
234
224
197
248
166
191
255
170
215
231
229
167
211
138
226
234
239
199
180
126
245
266
196
310
170
185
184
171
204
216
232
245
169
159
197
220
146
134
129
209
239
192
176
201
181
139
169
173
231
190
155
210
200
178
181
215
137
198
121
220
243
228
156
232
148
208
180
224
143
150
246
178
181
185
178
184
195
217
201
204
210
206
154
158
239
195
185
249
180
249
226
173
161
245
222
201
202
184
193
257
223
156
156
152
162
215
177
244
132
243
190
192
151
171
220
199
168
219
180
217
174
188
186
160
248
160
228
205
201
211
137
165
171
210
189
201
227
226
195
238
213
205
228
236
220
210
180
295
218
140
140
182
180
144
193
192
171
231
194
194
163
140
208
194
234
218
221
244
183
243
192
223
216
205
122
203
226
207
181
240
216
194
216
196
162
194
257
195
220
216
223
239
243
180
208
180
224
178
189
177
148
186
182
195
146
183
176
215
167
241
248
245
201
242
231
156
206
222
225
237
198
183
220
218
200
196
198
184
259
195
184
201
227
249
182
130
222
215
135
180
233
257
242
200
161
122
183
199
175
200
188
255
232
211
172
174
237
185
221
177
188
205
212
234
229
132
260
212
207
212
250
185
148
238
215
186
190
191
164
187
225
248
116
193
226
140
207
158
218
174
193
189
191
243
187
196
150
221
206
155
177
166
182
201
121
218
226
202
174
165
161
169
195
217
153
218
203
197
208
142
128
222
239
231
191
118
185
203
187
204
242
202
175
250
220
228
189
184
167
120
240
214
219
219
186
177
194
234
165
159
230
188
242
190
173
164
213
162
188
287
182
237
197
215
215
225
175
172
226
194
220
206
152
209
203
218
204
228
204
164
176
151
179
182
203
201
259
172
187
197
209
197
182
220
266
145
246
198
211
261
180
138
252
261
270
234
238
264
180
152
251
211
188
207
212
179
210
262
195
231
180
154
161
182
152
231
216
165
196
258
246
219
172
255
216
137
192
198
208
206
198
231
254
208
159
169
188
189
230
159
227
216
184
185
234
190
178
215
196
139
183
200
221
219
205
215
154
193
180
178
242
236
248
147
212
233
181
228
216
200
167
247
153
182
229
148
201
190
229
206
207
173
239
106
198
215
251
154
186
203
85
181
249
230
131
255
211
156
221
226
201
244
220
217
221
218
218
225
238
180
173
163
201
237
163
212
257
200
178
175
221
140
182
236
206
217
247
226
189
120
207
176
195
179
282
199
157
235
274
245
192
183
158
222
202
169
234
212
213
252
176
260
220
214
184
181
205
202
217
132
230
225
249
182
202
161
186
269
161
248
171
200
204
245
178
250
218
216
209
212
175
191
210
186
187
225
220
204
144
183
158
269
216
225
249
162
213
211
195
214
201
215
219
171
197
258
165
236
176
174
178
186
189
201
209
263
137
185
248
215
186
190
216
191
176
181
197
196
222
198
232
186
257
206
237
168
201
185
192
253
221
213
178
218
129
157
223
212
195
205
188
208
237
194
210
189
193
221
217
210
228
204
203
164
246
121
186
215
227
222
206
208
190
148
236
190
257
179
195
142
250
141
199
174
227
186
175
209
215
253
201
277
233
238
180
236
198
212
179
185
149
142
160
253
192
178
213
213
190
150
183
244
204
211
134
195
204
237
208
149
190
186
212
240
216
237
205
181
106
139
148
235
263
177
174
233
211
187
214
157
175
161
189
134
210
268
208
228
224
222
215
259
175
204
133
226
188
192
256
183
184
128
190
227
154
209
226
183
105
212
246
203
172
200
223
212
211
148
193
244
216
200
161
211
245
170
244
194
169
198
164
239
193
195
167
246
211
169
197
247
163
194
246
212
197
183
184
201
171
158
177
166
147
149
143
186
226
184
179
223
166
183
207
231
239
184
277
219
213
163
204
128
209
193
194
226
179
204
189
194
212
168
90
147
274
274
220
192
183
174
159
167
209
231
189
205
234
228
243
246
186
224
149
207
199
244
151
223
180
181
181
171
241
156
248
204
205
219
250
187
146
202
257
155
158
235
214
213
221
268
212
158
200
219
249
277
196
161
203
166
159
241
242
181
224
228
230
184
184
226
258
252
286
214
197
162
157
196
184
145
143
228
166
200
254
184
162
204
180
235
216
198
206
240
161
192
180
254
127
174
194
192
143
178
216
193
249
225
248
202
243
230
237
253
185
204
221
210
183
198
173
173
244
195
186
272
211
166
165
141
199
167
148
218
266
272
174
198
181
251
268
190
148
182
223
168
229
222
133
264
207
142
174
228
164
173
163
176
247
212
204
202
191
164
190
124
243
195
212
207
214
229
211
213
175
191
184
253
221
170
222
195
150
117
245
186
245
173
236
206
202
155
216
232
197
231
230
183
239
250
177
175
209
156
126
211
155
175
130
230
241
223
204
188
247
162
261
234
193
205
190
175
166
206
218
197
170
166
203
201
227
151
205
160
138
234
228
266
192
240
228
211
196
241
194
171
164
231
144
142
209
203
180
221
189
151
234
234
171
213
131
251
162
233
228
165
188
255
181
247
205
191
218
163
158
207
221
216
204
190
221
228
241
214
180
196
216
243
126
178
236
192
187
196
244
193
229
152
121
212
207
220
172
278
204
236
186
152
209
160
166
193
244
257
194
217
143
169
216
184
203
260
186
216
180
189
186
209
215
187
198
198
189
201
204
198
230
146
153
212
183
197
223
125
239
197
237
172
195
232
207
181
221
205
212
159
213
179
231
119
259
157
181
229
256
214
160
191
209
209
207
178
194
179
196
246
219
209
219
208
164
125
161
152
176
231
177
164
154
222
202
216
167
218
188
160
191
207
231
187
234
236
225
191
179
281
211
200
201
248
238
178
243
199
264
188
194
196
265
220
232
194
201
207
258
232
202
215
190
237
222
242
153
179
181
178
241
243
210
182
254
148
164
161
201
183
272
205
221
230
184
179
241
251
189
248
217
225
210
237
120
212
177
263
233
212
219
153
211
225
171
183
215
184
155
228
183
195
220
185
242
189
171
262
135
231
208
201
215
204
124
189
201
113
204
158
172
183
212
171
213
160
263
233
153
238
202
219
198
201
252
186
246
269
193
201
231
252
224
230
178
264
252
207
228
217
235
238
206
265
213
255
175
187
249
239
211
243
249
149
218
229
184
236
187
219
193
235
213
226
209
195
165
247
240
232
193
179
212
247
192
239
186
180
226
249
261
181
229
174
203
206
220
247
190
220
190
257
245
219
165
230
196
159
200
174
147
190
157
203
239
219
192
193
178
218
125
148
207
165
183
170
159
228
198
252
124
207
189
185
186
220
215
188
176
194
133
136
225
224
198
199
105
259
211
231
190
214
163
232
218
180
216
204
167
203
205
194
146
232
225
214
273
196
199
236
261
205
207
186
175
127
205
222
213
189
209
193
208
181
259
217
182
160
226
204
191
163
187
160
169
182
157
167
238
176
172
245
200
198
199
201
189
211
253
248
195
247
189
208
147
199
218
220
168
210
242
176
212
150
187
152
293
186
180
198
148
169
138
216
211
124
174
258
207
168
209
208
191
242
230
165
179
104
224
222
199
203
198
184
246
160
262
259
197
255
225
180
217
194
191
170
169
235
189
128
202
205
163
219
211
214
226
220
198
225
246
195
194
290
238
174
205
276
206
187
190
224
247
209
196
205
246
214
190
130
198
189
150
181
163
214
173
188
243
182
209
180
197
186
162
205
149
289
146
207
198
219
203
174
220
267
243
239
145
177
126
202
212
176
198
241
219
210
193
225
261
144
231
153
197
189
243
200
222
195
179
249
177
236
233
196
142
265
181
215
268
139
221
258
190
173
200
217
156
234
192
170
140
209
208
239
240
222
245
193
125
164
198
188
233
221
181
179
263
191
208
165
217
184
213
233
217
161
250
182
193
189
210
266
228
198
193
183
239
188
208
188
205
230
193
191
237
203
279
235
212
186
183
241
124
178
268
236
162
200
207
214
202
194
167
178
165
133
190
234
206
148
172
265
243
203
216
206
230
177
147
262
223
217
207
194
138
181
222
241
275
163
227
207
207
161
180
253
167
226
179
204
175
253
233
189
208
239
144
202
248
170
196
208
223
158
208
208
235
237
229
230
200
180
196
209
197
206
183
225
193
136
209
237
256
217
252
159
217
191
237
181
190
150
256
215
209
206
252
198
237
175
158
217
173
192
261
196
189
183
203
144
186
232
235
186
167
217
179
132
165
183
205
188
183
255
247
252
238
141
145
210
150
226
191
170
202
177
163
171
203
225
229
242
183
227
185
202
233
212
214
171
196
163
228
183
228
189
152
209
187
218
184
194
213
183
211
203
220
221
186
151
223
174
193
204
220
220
201
198
207
245
233
139
241
244
195
199
172
152
146
224
136
185
139
154
150
179
217
176
180
258
235
201
228
143
160
228
203
208
246
158
183
184
203
218
227
225
200
245
200
189
267
212
222
225
236
231
221
230
191
228
192
134
171
178
173
216
123
151
194
164
190
219
165
172
214
219
201
199
144
233
196
250
203
223
201
250
240
173
205
193
210
167
225
221
203
273
243
164
212
251
220
170
163
225
177
198
246
193
177
188
216
248
221
143
224
195
244
235
191
228
195
172
217
188
211
220
161
205
202
251
214
166
187
223
149
204
148
213
175
205
186
195
186
158
145
232
269
98
258
143
235
181
220
205
176
216
187
220
195
103
123
167
253
176
206
229
241
277
186
160
176
230
191
236
140
184
171
147
269
210
144
181
151
184
210
241
210
180
222
168
190
131
232
198
147
242
211
194
198
144
209
168
229
159
213
165
233
148
242
243
172
135
194
160
109
170
177
226
247
221
223
206
202
226
143
183
255
202
153
204
244
183
154
199
166
225
206
200
231
218
220
261
209
217
220
215
195
163
198
184
183
200
140
220
186
232
257
247
218
138
208
170
158
139
129
189
137
200
224
185
217
229
262
171
204
172
179
215
219
182
202
208
238
211
152
191
184
220
141
181
189
158
202
228
214
198
236
107
227
135
244
149
122
184
204
261
184
224
231
128
270
221
219
171
215
254
232
233
156
256
201
230
215
178
200
211
199
164
196
228
228
203
227
202
205
257
229
158
285
210
210
143
185
202
200
174
186
219
180
218
271
235
231
201
172
235
280
233
221
190
188
185
178
176
151
171
216
213
176
200
233
198
217
167
198
196
128
223
160
208
189
191
233
223
226
162
142
138
188
163
192
234
244
180
151
155
173
202
229
260
255
205
226
222
96
242
258
242
194
204
191
195
217
173
181
196
147
200
230
217
213
128
189
196
137
195
170
159
222
205
208
224
181
256
230
196
287
243
204
192
189
224
189
223
145
161
185
154
205
219
273
204
185
185
194
194
146
229
203
202
150
195
182
183
161
157
218
226
189
193
217
183
176
267
199
228
179
144
210
251
164
187
195
146
172
220
181
137
202
215
163
251
185
265
197
151
205
166
170
198
180
246
192
206
188
156
228
214
206
142
153
197
152
199
213
191
170
223
200
226
142
160
198
174
133
202
233
190
190
149
187
210
184
242
147
230
231
229
237
183
202
171
207
164
218
173
187
250
202
229
250
152
162
255
207
198
215
251
180
196
165
185
187
191
182
170
151
291
191
223
259
177
172
207
154
226
201
201
125
239
190
211
187
147
199
134
234
193
166
240
198
144
227
141
265
231
237
230
205
228
177
143
154
217
171
186
169
199
219
225
217
264
188
190
241
209
208
176
236
223
166
173
200
161
252
159
276
146
226
244
215
194
235
241
175
171
176
201
195
178
128
258
194
197
200
199
142
235
225
258
231
224
217
222
143
155
152
234
261
154
229
225
169
187
240
174
234
256
193
219
197
210
260
180
150
211
231
259
251
200
220
207
180
182
173
176
218
238
211
221
136
214
184
202
172
244
168
204
113
180
161
143
213
219
250
214
257
169
183
220
198
189
193
197
247
218
232
147
200
204
254
169
195
229
240
218
271
203
160
225
258
173
231
228
218
176
168
213
178
210
223
206
206
114
205
161
177
191
250
108
152
185
144
202
184
203
250
213
224
167
190
225
270
188
185
211
191
218
210
232
219
151
161
179
231
201
163
193
227
177
254
207
207
150
230
251
203
141
293
170
185
202
155
165
199
205
238
126
149
214
188
150
185
209
170
210
167
204
230
226
244
200
188
225
268
206
238
148
178
193
179
204
187
224
142
222
219
176
172
208
224
201
174
200
205
249
202
175
189
169
237
250
190
194
239
169
192
203
163
227
281
199
202
162
204
225
147
215
220
201
217
172
238
247
190
269
268
204
178
218
188
190
218
224
182
200
126
184
194
218
232
183
193
224
186
164
202
169
238
256
255
215
126
195
208
185
163
211
185
207
223
160
202
213
264
138
253
99
186
229
177
218
221
200
196
216
196
183
242
183
229
204
224
212
191
193
219
217
185
163
201
207
234
222
241
266
197
224
215
144
196
225
221
144
194
168
278
147
206
233
229
154
280
199
247
260
158
197
176
172
190
271
220
166
181
171
184
196
181
199
198
179
224
197
174
195
216
180
207
189
244
238
183
192
227
203
233
277
233
205
234
140
165
167
256
250
184
233
207
200
208
243
204
260
174
180
186
247
166
174
218
246
214
203
213
130
266
149
192
199
225
222
163
231
227
139
220
158
221
167
266
166
222
177
201
231
190
223
230
175
256
140
166
250
197
193
133
168
125
127
220
162
189
211
232
188
176
214
184
222
251
268
256
219
154
216
256
140
187
174
268
220
209
202
237
184
234
245
161
233
205
217
207
227
226
129
238
243
196
214
207
215
216
219
178
256
246
195
252
221
204
213
188
226
180
189
117
249
198
252
192
245
153
262
141
193
185
221
170
136
213
212
159
211
189
154
255
235
194
216
253
240
165
138
205
186
194
202
119
168
230
179
210
204
185
182
176
216
185
200
244
233
215
231
215
238
162
227
219
189
228
194
251
214
196
247
177
210
203
244
194
226
240
172
259
159
168
192
133
176
228
161
186
185
211
209
215
196
207
201
150
187
196
236
162
209
165
213
167
222
205
189
243
237
209
163
211
201
290
209
276
221
246
207
238
249
216
198
183
199
223
204
156
112
271
251
178
166
202
240
230
251
230
184
235
233
233
189
164
218
160
185
206
173
170
146
200
195
204
157
251
192
233
208
214
151
214
233
222
163
183
148
170
208
211
222
214
128
204
165
197
173
286
223
251
200
219
186
192
169
188
224
203
200
181
200
264
156
191
245
256
231
236
213
201
195
251
171
206
234
201
235
197
224
168
219
220
202
220
192
207
181
192
110
219
201
224
168
170
201
211
233
183
145
234
160
153
236
190
145
231
249
181
247
226
219
185
235
207
169
209
204
186
253
222
212
228
239
230
142
168
194
209
186
145
224
147
193
162
223
263
186
216
200
199
199
225
234
178
215
242
250
236
231
227
236
212
199
210
239
181
208
230
208
199
166
180
203
150
210
161
186
219
183
200
226
156
194
160
150
250
208
182
206
146
135
217
173
243
199
200
133
271
162
140
198
226
172
202
177
156
179
143
213
223
153
186
231
188
238
210
194
201
206
217
220
265
183
207
149
85
202
236
205
240
152
205
173
188
246
196
213
227
189
155
252
199
223
264
228
208
207
269
196
221
217
145
193
177
205
160
169
229
167
222
202
193
230
182
232
173
201
213
197
211
138
186
231
235
200
163
201
218
199
173
212
215
259
203
218
228
131
221
259
224
246
191
241
133
195
214
161
169
164
175
202
234
167
197
182
187
192
168
233
239
207
168
189
152
171
220
204
249
211
230
165
203
215
213
198
207
233
215
225
271
236
216
252
207
202
197
256
192
189
231
210
154
262
180
206
243
138
191
237
184
185
271
151
231
205
158
188
231
276
170
181
268
167
152
222
172
137
183
230
209
241
224
251
182
174
191
217
197
141
236
186
153
203
167
260
183
196
169
201
215
137
180
253
189
165
162
192
173
223
203
184
175
252
210
181
258
201
193
120
188
179
147
165
224
176
162
214
174
183
226
207
209
155
133
171
201
183
191
166
182
174
250
203
188
212
148
223
249
187
274
252
178
174
168
230
172
243
211
218
174
213
158
197
214
180
224
203
153
218
195
190
199
206
174
194
193
170
250
226
253
221
209
233
203
215
170
176
193
199
206
216
210
197
122
210
252
242
247
226
166
108
203
243
224
259
210
192
197
191
202
230
196
152
257
189
202
174
232
207
220
194
220
169
208
204
162
167
222
203
203
168
198
202
154
192
202
199
205
188
223
231
161
226
214
185
179
177
215
205
216
187
233
226
281
226
137
189
148
201
241
224
250
250
173
257
234
215
248
212
140
229
159
191
189
190
220
199
219
210
222
247
212
262
265
226
214
219
241
227
199
201
259
186
212
196
215
186
134
163
214
181
149
166
182
226
218
174
230
199
232
240
231
203
240
189
218
225
246
166
236
220
210
178
233
164
153
187
249
176
150
219
172
206
217
209
181
235
169
176
228
177
168
177
197
228
184
187
198
240
142
229
193
168
190
216
233
231
256
155
231
207
196
190
242
227
169
215
161
198
241
177
225
222
191
232
208
133
206
213
214
230
223
226
190
227
215
267
191
141
191
234
229
198
249
252
233
195
238
234
219
190
233
160
201
166
144
158
213
145
193
176
151
150
163
255
270
192
207
228
224
166
243
218
205
217
169
176
151
252
199
229
198
258
192
185
175
237
233
125
153
203
230
174
202
234
185
146
187
201
159
215
190
255
190
210
207
168
214
248
210
219
258
204
195
223
131
205
165
189
195
258
194
205
196
194
216
191
175
159
171
237
188
249
247
187
216
271
237
217
121
147
237
107
264
189
209
218
175
216
131
247
226
199
192
177
133
191
210
134
245
188
249
142
217
186
183
214
229
186
171
175
136
171
167
171
194
180
209
221
186
207
261
211
245
204
283
172
245
243
240
227
193
192
214
182
189
230
183
168
209
203
212
181
142
205
260
264
192
239
204
191
187
199
201
215
214
169
216
206
205
203
181
212
165
224
189
207
166
198
211
221
183
211
202
212
201
129
212
191
134
247
253
260
212
240
212
202
155
212
103
229
195
140
220
151
277
249
180
234
241
217
287
230
223
180
177
191
215
195
126
205
246
161
144
155
196
199
202
164
191
149
263
200
192
155
254
240
222
225
219
211
241
209
177
186
247
221
191
260
200
239
161
219
181
121
214
224
209
117
126
178
218
267
247
207
157
251
149
204
191
173
230
238
218
185
197
213
209
270
201
206
164
232
207
234
245
203
224
211
198
229
180
189
222
164
214
184
200
129
127
148
192
184
141
213
210
190
264
200
166
135
183
200
195
202
186
192
231
155
161
266
209
237
260
203
141
148
215
178
185
157
224
235
241
206
203
177
184
158
216
210
151
210
127
213
164
208
122
204
171
168
237
203
201
198
148
164
228
258
216
249
186
218
160
174
224
198
181
151
164
226
130
213
238
224
185
226
132
205
186
211
185
200
192
223
197
197
224
163
235
242
123
238
195
223
211
220
252
184
236
190
167
177
213
206
241
167
204
196
201
239
203
205
245
137
175
198
205
219
177
212
202
204
203
193
223
203
213
159
196
253
166
193
182
133
146
178
219
210
202
117
142
157
176
223
161
265
201
157
194
194
231
200
228
235
203
239
215
272
180
199
182
191
181
235
214
219
216
149
198
200
194
208
192
176
187
217
262
174
101
169
148
238
242
171
223
140
212
163
193
205
176
238
170
207
197
219
227
207
161
208
150
206
217
211
263
191
136
173
197
130
169
187
192
226
196
216
209
220
227
181
160
158
182
187
240
249
227
237
216
199
131
186
219
159
208
234
188
189
177
212
191
207
190
168
236
149
209
224
179
176
195
186
230
185
228
228
204
271
229
194
237
272
274
215
221
229
144
238
232
179
103
210
161
204
216
192
224
183
179
200
163
231
168
189
252
259
223
221
230
254
178
223
119
151
224
272
190
156
250
161
131
174
182
175
224
200
189
207
220
212
203
217
158
123
220
176
188
187
209
178
203
168
172
155
215
164
207
121
177
153
160
215
154
236
204
205
162
184
233
166
229
202
162
184
222
195
185
209
222
210
192
172
217
149
220
155
220
184
133
236
261
161
165
209
200
226
243
179
198
214
138
169
206
169
185
228
220
149
240
214
236
219
228
196
209
194
188
196
238
239
178
205
227
251
233
205
231
275
189
171
167
199
167
226
185
242
189
167
208
166
220
193
217
198
184
227
223
224
273
224
224
180
211
228
164
218
207
195
186
258
169
232
245
222
178
238
186
231
217
224
208
200
198
238
235
185
175
258
245
212
255
240
232
157
177
207
256
159
216
247
125
188
152
182
164
233
189
156
234
191
165
211
204
245
215
201
223
187
234
253
241
255
206
221
225
111
143
228
226
210
203
194
267
165
208
202
249
206
182
193
159
235
180
266
170
178
212
253
198
266
267
200
252
166
192
187
175
209
189
165
115
206
200
128
256
207
125
233
196
211
216
196
246
204
236
182
217
179
166
193
141
224
272
189
238
220
188
186
264
223
182
201
202
266
244
277
191
222
170
247
188
218
199
128
203
147
152
195
194
192
164
209
222
231
169
167
244
179
305
183
200
206
163
204
206
184
184
191
179
226
169
224
218
227
160
222
192
263
210
179
210
169
212
178
258
233
196
146
244
197
175
190
205
188
239
188
196
242
188
200
172
198
218
143
171
217
232
182
228
161
230
181
239
186
164
173
215
242
209
244
184
207
234
217
190
155
241
234
232
205
238
210
166
191
171
205
192
274
222
209
122
169
196
162
196
202
214
208
211
217
280
173
176
217
216
262
206
208
220
158
218
167
217
186
127
242
167
166
187
110
218
162
206
226
219
229
234
199
155
181
217
220
172
197
241
187
221
187
187
200
225
241
209
191
214
198
222
152
205
230
258
192
203
190
178
237
149
184
186
215
177
151
216
220
166
199
241
232
182
205
225
192
208
250
176
200
232
243
152
249
236
200
204
271
216
210
242
211
172
255
194
201
163
199
219
173
229
218
159
189
223
176
156
258
210
226
176
186
204
206
182
256
118
253
200
245
167
235
177
207
173
192
265
212
212
187
156
185
131
208
194
195
209
190
164
245
218
209
270
156
168
186
242
184
227
187
167
238
208
195
243
229
169
164
224
255
138
203
204
132
232
146
258
208
193
178
229
142
194
179
207
232
192
158
268
216
110
211
156
221
215
208
168
189
205
187
230
207
186
216
206
187
236
234
226
202
175
215
263
234
214
246
201
157
191
197
197
220
201
217
180
173
105
215
199
248
157
238
87
234
259
195
222
229
216
207
155
234
195
219
196
205
178
214
120
229
176
207
212
200
205
207
174
271
181
174
188
199
165
235
241
206
189
236
199
169
205
209
168
218
268
192
154
160
260
244
229
221
175
154
203
207
189
238
220
205
153
174
239
184
233
246
208
192
199
154
202
185
221
256
203
181
138
223
221
231
218
235
176
172
137
192
153
220
206
180
184
170
185
254
203
162
175
232
245
189
228
229
249
230
224
267
219
214
209
229
212
187
186
133
166
185
224
196
230
190
212
135
199
184
173
239
240
221
200
207
222
237
194
231
196
198
224
137
177
238
212
144
245
219
173
223
209
176
231
242
215
155
205
214
143
216
152
254
177
244
199
166
252
154
237
189
279
180
206
209
164
184
126
204
285
188
172
149
232
187
183
200
195
197
161
192
221
159
166
159
201
179
168
110
215
198
206
241
229
197
226
126
140
213
180
222
225
234
250
170
148
172
228
202
210
196
228
270
172
192
209
240
192
195
185
246
252
156
181
175
191
219
224
189
214
211
258
242
219
201
217
183
191
222
177
213
167
216
232
233
224
168
244
173
212
207
201
249
194
193
179
214
155
177
194
165
206
270
179
177
230
202
203
213
211
209
164
170
200
244
177
176
174
184
216
202
196
226
190
179
189
226
204
176
258
165
182
209
198
253
217
154
186
206
218
191
210
201
210
164
146
144
212
213
165
252
190
153
185
120
231
218
189
216
216
204
175
195
192
232
147
245
248
248
218
180
176
196
191
199
154
131
163
214
206
205
187
237
132
251
167
168
184
177
219
225
186
200
213
226
236
163
214
194
196
202
164
189
247
185
226
208
239
194
224
270
198
261
204
189
211
190
191
246
207
138
195
202
160
169
224
207
213
196
238
172
203
141
254
194
160
151
169
224
155
230
195
211
169
140
220
211
165
164
195
121
185
181
131
255
201
214
195
161
229
185
206
122
214
232
184
256
171
196
223
216
229
188
228
233
172
192
190
171
161
256
166
212
199
198
246
236
185
200
148
200
207
193
198
147
166
208
257
209
163
156
198
217
188
235
133
220
188
249
203
182
151
207
258
144
211
178
197
192
186
268
207
196
278
262
226
143
199
215
239
201
139
198
205
215
181
205
165
234
169
173
206
188
186
142
204
176
167
199
151
201
252
273
144
130
153
175
176
176
183
197
203
192
199
202
235
235
203
175
150
163
234
175
206
216
183
177
217
148
200
207
223
170
249
209
213
169
186
237
184
199
206
207
199
221
232
137
181
213
274
140
138
210
226
194
200
181
171
254
219
181
184
174
166
240
212
229
161
217
199
190
170
213
192
236
191
216
254
240
192
184
160
166
188
205
207
239
196
164
209
207
199
140
188
241
188
146
139
198
225
210
232
163
231
234
220
223
204
226
218
205
236
199
193
176
162
245
191
131
222
216
111
222
207
144
149
234
232
148
177
240
232
190
171
231
203
205
168
181
238
199
229
206
229
209
217
235
190
228
173
194
159
203
225
240
189
126
168
173
245
172
201
195
207
168
213
239
195
224
205
259
188
123
209
235
275
265
206
202
250
280
259
211
196
194
185
205
260
264
175
208
146
198
169
202
214
217
201
239
198
202
173
212
251
173
183
228
193
208
225
192
162
153
241
151
154
198
219
146
132
206
223
154
177
149
140
188
199
178
161
158
172
272
138
212
167
142
216
238
170
264
255
235
247
225
259
223
181
272
205
202
179
167
164
174
178
202
245
212
223
218
197
225
176
212
211
239
251
184
158
211
195
271
242
177
216
123
213
178
180
218
177
148
210
190
209
227
238
202
185
178
150
202
148
189
201
141
225
212
193
204
181
170
238
153
200
241
208
199
198
209
237
190
223
161
141
223
202
188
153
217
183
183
197
220
274
216
126
200
193
152
168
198
202
151
207
215
222
217
210
168
179
205
232
219
190
174
130
169
178
176
196
156
127
199
150
206
206
218
211
212
190
232
216
241
187
225
284
210
231
188
226
226
136
231
225
188
211
183
164
241
199
219
164
153
169
208
197
152
118
165
167
217
162
195
230
170
229
162
204
185
242
166
202
194
244
139
160
214
174
207
199
152
178
236
178
253
245
206
163
219
224
210
145
197
203
207
247
145
208
211
234
185
171
228
194
207
169
180
157
208
133
176
184
195
253
246
209
217
206
197
134
236
131
199
230
218
250
231
225
161
181
190
229
253
254
264
175
230
216
234
161
267
196
230
234
184
213
183
169
241
193
208
191
137
172
211
150
215
176
236
176
216
220
224
142
206
248
224
203
199
225
222
178
154
196
244
200
113
164
205
215
179
253
228
188
199
215
210
173
209
231
193
150
209
234
197
128
184
215
157
152
176
257
188
195
200
197
262
174
202
208
180
204
196
164
208
176
229
232
197
158
206
231
153
202
207
175
100
182
210
225
179
242
177
198
212
152
201
193
198
195
220
232
149
202
232
160
158
210
182
197
208
188
205
109
181
210
215
276
175
170
226
169
231
209
265
208
228
155
228
141
261
169
193
237
224
197
187
211
227
207
211
198
226
161
207
206
181
199
157
185
171
211
280
165
239
228
189
235
145
181
195
223
216
179
142
225
231
162
170
235
207
279
179
129
160
217
276
204
228
192
225
234
219
149
238
186
191
188
209
252
189
184
199
202
174
190
139
240
211
222
194
198
209
190
215
199
211
216
248
196
239
187
244
129
238
202
221
199
189
182
193
250
229
163
188
225
237
263
206
179
212
183
234
267
191
141
241
148
170
194
205
174
248
151
187
238
168
215
221
196
240
222
182
158
229
205
233
218
226
206
188
220
176
219
186
222
256
243
190
258
237
229
210
227
192
255
223
217
287
226
191
206
225
221
203
187
126
201
182
209
240
250
204
238
160
250
213
218
190
161
138
168
118
186
157
159
256
225
206
236
169
168
242
236
177
200
228
174
187
170
267
237
258
214
163
211
241
244
226
197
260
248
272
239
129
224
215
195
201
245
213
261
169
136
152
260
217
214
155
207
214
163
189
231
203
167
229
194
229
177
244
189
214
177
205
240
172
252
278
166
226
232
135
211
160
124
206
214
99
194
175
197
184
190
254
181
212
207
256
160
231
176
260
242
188
176
147
229
247
234
165
168
188
174
167
211
138
160
223
141
197
200
229
193
178
107
209
184
202
200
214
197
191
194
193
229
230
155
190
160
144
211
152
200
171
132
190
255
181
213
147
213
198
134
258
193
164
224
198
183
217
245
178
194
203
190
157
212
235
135
207
164
154
220
240
228
239
194
174
237
197
215
178
153
210
193
153
237
206
206
233
176
176
211
160
193
222
228
149
242
180
188
182
210
274
252
172
219
233
154
224
202
209
223
160
221
202
194
213
199
185
201
242
134
213
179
152
136
230
182
207
209
197
157
213
178
228
221
210
173
203
184
142
208
224
205
199
217
211
222
190
135
223
209
86
200
202
198
148
202
203
189
159
234
228
244
209
192
205
146
193
164
169
208
195
220
272
110
185
240
211
266
175
196
190
205
228
184
225
223
136
154
212
198
185
250
164
212
184
200
189
224
178
214
185
155
280
223
186
244
141
227
212
251
184
184
205
232
159
238
207
110
207
210
192
244
206
243
214
157
192
235
217
219
201
214
166
210
208
192
125
144
255
113
136
174
214
243
242
217
215
214
216
208
161
203
217
245
233
190
183
233
186
201
225
203
201
207
147
173
185
175
239
211
243
162
208
207
265
225
194
181
204
191
211
261
196
161
187
200
207
200
209
193
199
235
187
203
148
214
149
214
254
214
226
181
244
210
196
129
170
214
204
211
232
232
249
233
193
157
224
222
158
195
211
173
147
200
165
141
170
205
243
200
173
173
208
245
150
185
246
186
187
189
184
136
206
188
209
217
252
266
176
133
196
213
126
190
223
145
144
219
193
211
227
172
183
250
224
218
198
161
180
183
229
177
254
192
201
238
215
186
217
180
202
214
210
195
189
187
197
225
217
168
232
206
211
176
188
153
152
263
188
218
209
180
191
251
233
236
180
170
199
210
255
232
160
149
106
146
153
221
109
130
181
176
171
187
171
225
219
189
221
152
200
281
214
206
221
247
119
181
207
200
197
167
208
180
192
173
186
228
218
171
233
195
179
216
239
120
191
200
203
178
240
266
179
226
268
238
157
243
219
229
229
250
176
249
147
229
161
250
167
194
247
199
201
192
248
212
194
215
219
172
223
202
217
213
219
202
199
148
195
254
200
144
239
179
184
152
141
182
188
186
205
191
265
204
179
245
273
166
155
204
203
215
181
226
256
196
200
220
236
168
150
195
206
239
202
202
228
187
185
231
173
204
179
230
201
185
235
206
132
270
199
203
194
220
185
236
237
192
164
209
182
193
201
217
168
143
271
85
261
198
215
160
214
187
247
238
188
246
204
149
237
216
193
194
272
219
102
213
155
228
248
165
239
182
149
187
203
192
195
230
250
210
195
221
138
214
221
203
181
189
199
160
195
209
217
197
150
202
226
231
260
220
254
244
181
251
160
190
155
186
216
244
188
208
234
246
283
164
212
200
240
244
232
186
144
225
191
180
233
210
211
187
233
223
147
193
216
145
234
202
198
223
199
198
228
134
203
170
195
165
157
224
232
161
146
212
195
202
198
234
148
191
213
184
170
178
124
218
191
184
136
170
203
237
235
121
213
196
121
241
183
229
259
226
143
177
188
191
244
204
186
224
229
232
140
203
149
150
174
161
183
161
133
246
193
225
209
232
227
195
230
194
224
206
197
218
185
210
198
241
245
261
245
204
183
238
242
172
220
262
263
198
181
163
182
251
213
211
161
210
198
246
139
162
174
196
151
214
193
165
234
218
151
208
163
202
190
215
168
216
222
191
220
137
130
183
213
226
194
212
183
218
187
170
148
203
226
238
190
141
159
112
125
214
250
174
242
203
111
198
179
276
238
211
241
202
203
221
219
197
189
167
163
194
162
196
133
190
234
178
159
168
210
222
243
149
173
200
242
161
255
191
175
212
165
136
215
194
237
215
189
133
229
264
162
200
192
195
239
211
211
184
170
181
104
195
182
219
251
166
194
183
177
217
259
182
187
184
187
182
168
215
227
195
209
181
160
218
243
151
207
182
244
156
225
205
183
230
129
161
195
243
147
197
182
214
238
164
229
196
219
244
173
232
232
234
156
209
179
189
184
234
223
213
265
218
210
194
186
246
199
165
156
200
177
205
236
173
209
184
186
190
260
245
211
269
230
185
202
196
216
222
223
212
142
236
187
229
211
154
201
214
160
256
207
163
268
243
239
190
161
201
177
196
254
244
232
215
244
197
182
193
238
175
250
191
231
171
223
156
182
167
161
256
186
165
200
162
163
223
135
177
257
177
170
219
187
237
222
209
176
153
228
218
182
177
210
148
240
184
193
227
183
187
199
244
201
190
177
169
222
231
174
262
121
192
207
219
224
223
169
219
200
235
171
116
202
168
180
198
235
145
165
190
159
214
159
183
240
179
250
142
191
176
196
182
254
150
263
137
186
145
217
201
191
175
207
219
160
200
188
258
230
174
127
176
253
197
240
201
229
138
222
191
203
208
230
204
193
237
168
186
244
190
203
186
235
195
228
185
152
169
174
176
139
183
176
214
238
222
172
184
182
168
181
206
221
138
206
222
173
232
199
185
199
128
247
194
221
183
206
131
220
148
115
185
233
273
206
177
230
164
191
187
242
171
206
201
199
171
225
216
234
231
181
195
141
194
179
159
245
194
241
168
206
208
167
165
135
182
178
248
171
202
194
179
136
221
229
166
168
197
199
187
164
209
177
146
183
184
158
220
241
206
201
281
241
213
200
159
204
138
192
191
201
250
148
175
204
198
229
154
148
288
216
207
191
266
202
207
198
125
266
232
163
234
185
214
167
187
171
181
253
167
188
206
174
200
159
188
211
193
196
178
190
209
202
169
184
167
221
204
165
94
151
214
184
206
192
198
174
202
211
182
214
247
143
198
180
141
174
182
228
181
152
236
229
126
240
190
150
200
158
161
160
145
149
191
164
198
178
139
211
184
201
257
131
223
215
235
159
194
224
177
235
182
201
171
244
158
167
212
168
187
207
268
200
207
217
210
208
201
172
147
218
195
233
237
223
131
262
216
197
85
169
172
194
203
215
238
186
194
136
180
202
219
162
191
161
154
218
185
199
217
196
205
140
244
241
236
156
214
186
162
192
155
175
205
185
274
264
235
191
224
241
206
149
198
192
224
225
178
136
217
177
243
198
212
220
207
173
224
236
233
204
224
186
190
195
205
184
234
161
192
156
221
221
228
156
174
202
181
211
199
150
237
171
182
193
213
234
178
175
213
192
213
229
271
235
186
235
250
202
189
211
239
247
197
217
241
212
223
223
153
170
177
227
208
191
191
216
225
220
157
201
219
257
197
128
209
189
153
222
243
239
263
259
161
183
280
202
166
187
208
198
161
173
199
197
228
225
257
170
191
217
204
197
182
153
202
195
140
180
223
172
240
251
158
160
199
205
211
117
148
229
207
183
244
217
207
173
213
244
216
204
212
204
228
217
196
196
144
197
218
166
194
224
170
230
190
222
140
173
188
213
221
209
260
219
189
151
212
168
168
149
229
186
253
228
196
183
209
242
171
209
143
211
114
199
173
139
166
173
214
262
232
234
244
195
222
217
175
127
227
224
146
145
260
219
156
276
225
184
215
161
146
197
206
201
208
187
197
257
221
226
190
201
158
208
213
197
258
210
172
231
195
218
153
225
201
172
223
182
247
183
258
195
208
227
187
209
174
233
202
151
100
182
153
155
139
147
231
208
169
129
238
207
219
209
115
205
182
162
211
212
259
216
247
228
158
190
160
243
192
202
227
200
214
241
203
219
224
179
197
203
167
211
181
248
235
204
285
174
169
215
209
174
215
213
171
191
221
264
223
240
182
162
176
195
250
132
156
178
222
215
149
193
259
216
201
210
233
176
194
254
192
201
157
233
158
200
226
233
269
206
255
181
210
163
233
249
199
207
191
117
167
167
220
175
215
250
166
190
153
165
202
163
210
190
231
155
224
196
167
190
160
147
205
100
217
221
158
251
261
188
178
200
182
131
220
218
152
227
256
133
227
161
223
202
281
199
198
190
162
219
169
199
163
180
227
203
165
172
204
235
246
271
234
177
219
178
249
187
166
179
203
266
151
164
149
234
147
179
207
183
199
218
245
171
193
177
188
223
216
249
204
177
184
219
221
220
161
206
142
145
210
137
238
176
196
230
238
193
166
206
210
166
181
191
164
202
204
178
219
194
216
199
160
169
127
225
216
179
211
232
207
169
234
130
152
234
239
163
220
149
144
215
201
112
186
219
200
213
198
184
148
178
173
243
213
264
185
204
131
171
191
142
200
225
216
185
169
217
216
241
210
191
147
163
206
232
160
167
216
175
172
249
263
199
183
143
186
199
221
176
168
175
217
225
174
166
185
209
198
225
235
267
231
223
206
160
175
207
156
177
195
206
232
263
187
145
176
249
151
166
226
202
260
221
202
256
263
262
176
179
260
230
218
207
172
199
182
156
213
216
254
185
254
191
195
139
179
161
174
166
213
126
166
151
140
129
224
191
245
212
169
214
224
217
208
180
182
237
176
239
196
249
149
193
212
216
222
146
170
182
206
201
177
262
201
206
179
172
211
195
161
218
248
206
176
202
191
185
218
176
218
220
221
199
190
219
193
223
191
171
224
248
225
139
264
194
218
215
203
187
253
218
206
227
244
165
163
177
177
189
239
212
113
209
191
180
241
230
231
190
178
164
190
206
259
218
268
155
206
189
192
208
203
208
207
209
208
199
147
204
262
211
218
219
239
240
208
219
218
196
198
207
220
254
224
177
254
280
162
172
209
222
181
213
137
172
176
154
156
230
230
194
246
203
149
195
163
248
161
204
236
190
255
227
166
190
220
139
216
198
242
203
137
182
247
185
238
219
179
172
188
205
157
260
231
182
164
228
133
221
150
242
237
220
217
181
214
193
207
218
205
260
228
183
228
219
234
227
129
225
216
164
207
219
183
223
186
290
254
202
216
236
197
200
211
166
219
183
185
209
158
122
200
197
167
194
187
194
251
201
133
179
215
182
189
211
226
223
218
200
206
180
187
281
212
133
153
164
184
207
226
200
171
238
249
216
220
164
233
202
185
221
180
209
226
147
173
198
224
181
220
182
170
153
138
195
169
153
222
170
100
177
226
173
165
126
206
195
211
212
190
207
167
164
220
205
209
204
158
233
210
239
193
171
253
205
185
163
273
165
260
161
161
136
245
139
126
243
173
223
226
213
228
200
171
245
187
222
230
246
200
233
186
188
212
236
173
204
192
192
174
245
147
160
172
230
168
211
215
176
198
247
216
216
270
219
243
187
159
244
149
208
201
202
176
172
199
210
212
235
208
158
211
168
172
147
217
212
210
187
234
167
175
208
237
167
269
169
164
178
195
173
213
192
191
276
223
144
176
131
198
226
196
246
214
196
195
243
212
175
138
235
193
177
171
233
273
136
212
189
210
225
217
158
222
218
186
203
190
173
174
147
264
196
216
169
186
207
253
220
225
229
202
202
205
190
214
164
186
167
130
211
156
192
178
150
193
186
208
225
197
257
217
129
240
228
258
159
195
168
201
144
156
192
269
241
223
168
219
190
180
203
211
209
206
210
241
231
235
209
272
228
133
170
243
202
207
174
201
242
258
159
175
200
190
195
169
259
163
181
183
258
243
285
232
165
215
152
216
174
215
170
184
194
239
223
214
199
239
192
228
186
246
169
217
198
195
244
203
270
187
191
205
203
197
209
276
181
195
160
175
200
219
127
164
197
223
194
167
216
231
238
222
183
201
201
219
207
157
190
163
259
203
241
204
163
211
154
259
190
152
220
132
136
258
229
212
157
243
160
233
151
206
129
127
213
178
267
226
177
213
170
265
120
207
224
200
203
181
244
216
177
245
191
195
233
140
205
146
254
213
169
168
215
146
203
228
199
209
180
118
173
203
223
221
271
178
223
214
146
208
164
200
214
226
183
199
177
165
235
235
209
185
233
178
214
291
220
193
197
234
188
183
239
236
180
215
204
243
191
207
256
221
191
172
226
203
255
154
211
166
207
222
188
216
187
268
198
207
225
221
116
177
235
247
182
232
179
170
211
154
217
226
165
169
204
145
178
130
234
178
198
109
186
208
221
189
238
185
190
218
255
179
234
221
227
184
199
196
194
202
239
231
246
197
167
195
248
204
161
221
218
224
199
188
187
217
246
209
270
206
269
252
175
211
194
263
245
176
211
201
220
217
144
153
166
191
185
205
188
269
204
222
212
144
190
202
193
234
246
194
182
253
193
171
169
189
146
225
200
210
193
198
196
256
241
162
189
210
159
196
217
136
195
179
162
148
227
202
211
183
185
211
226
233
237
221
155
252
172
245
226
217
199
188
207
235
214
177
200
185
216
154
156
159
249
192
294
205
209
181
220
241
227
233
231
176
226
262
191
175
200
186
195
213
187
191
168
185
232
261
214
177
201
218
176
240
196
180
138
146
218
235
174
175
214
230
202
162
231
212
211
179
155
239
217
251
221
200
260
215
133
211
190
194
236
161
257
187
203
209
204
187
202
210
168
254
218
222
205
204
183
237
224
208
230
237
199
225
168
208
154
183
177
186
258
204
205
215
217
210
213
204
149
189
224
194
187
190
227
209
208
193
215
229
263
212
232
256
224
274
188
231
167
210
150
183
212
164
224
244
145
120
128
212
196
197
194
145
231
202
196
231
145
188
210
217
179
183
188
170
216
201
139
194
267
210
210
234
172
154
197
207
141
234
146
137
205
149
243
210
229
121
229
164
173
222
191
197
175
214
205
259
235
225
249
160
252
229
208
209
143
197
184
235
222
195
273
151
203
164
157
163
193
163
227
245
194
235
233
175
231
166
231
250
131
206
267
178
219
232
219
131
148
194
194
181
218
183
220
224
186
239
221
189
149
188
180
170
168
182
195
173
270
194
220
186
186
245
175
180
227
162
151
193
168
210
220
196
202
203
219
237
177
177
186
232
148
176
223
205
183
260
282
101
217
186
199
261
240
242
166
171
159
175
202
233
237
213
171
230
189
176
178
238
212
258
175
211
187
177
197
177
205
141
228
259
208
216
198
184
184
135
155
184
148
162
151
254
164
240
180
221
229
242
266
135
236
159
161
226
232
238
232
200
128
198
179
238
174
227
134
227
163
209
156
224
240
220
204
232
230
213
137
246
184
257
239
156
201
196
179
199
188
192
227
161
171
207
209
148
218
188
117
162
213
183
219
183
159
208
208
181
220
289
217
186
282
221
227
195
222
213
257
173
193
211
256
236
189
173
235
210
189
180
190
190
234
194
191
219
208
177
197
183
254
191
233
193
170
161
176
194
186
258
207
178
133
210
170
133
160
139
183
172
149
200
235
135
206
205
171
216
235
183
232
223
196
161
186
175
255
201
181
127
137
217
151
202
179
227
202
197
185
227
156
187
221
228
192
157
204
189
206
226
210
149
163
224
198
131
258
240
205
206
161
166
174
248
243
200
213
171
251
164
165
221
214
155
195
216
164
219
195
256
176
153
199
197
208
200
208
154
198
242
197
206
221
238
219
248
137
175
211
207
160
207
208
150
164
211
194
253
199
229
189
180
244
188
244
186
173
177
132
193
126
173
239
173
210
257
234
226
225
202
214
156
211
254
182
157
210
179
219
236
208
146
250
157
186
180
191
130
239
124
149
159
217
196
158
229
226
232
173
168
198
181
172
189
165
190
245
190
174
182
213
229
204
182
167
215
193
217
216
150
261
201
193
194
183
223
175
195
237
220
188
213
112
250
234
212
212
182
227
249
225
180
199
233
209
161
256
247
217
144
216
222
241
170
202
156
134
180
247
218
164
221
160
207
261
163
221
219
191
183
238
164
203
207
221
220
219
182
218
216
204
149
249
167
216
186
212
203
209
256
205
172
243
252
220
203
194
238
185
137
224
137
157
266
176
200
231
182
235
220
131
224
193
248
200
203
216
211
200
236
216
176
191
220
219
225
198
148
129
208
194
183
160
190
220
233
258
200
237
212
168
219
260
144
200
238
171
190
226
162
216
205
253
176
251
222
168
163
252
247
156
227
238
239
192
144
134
217
213
159
201
205
191
159
175
183
207
172
160
141
201
250
206
220
205
158
187
201
156
148
195
210
131
179
236
231
190
180
223
167
230
201
209
274
135
232
234
171
208
191
223
139
184
173
165
191
219
227
187
225
222
201
163
262
215
198
216
135
205
220
187
244
186
206
236
220
198
219
240
198
201
206
226
286
187
222
141
154
179
214
197
258
199
169
221
221
254
229
187
225
218
216
194
247
179
202
154
246
225
212
187
194
228
195
198
145
222
153
219
278
176
236
252
215
167
223
211
233
226
190
142
221
194
161
207
175
228
203
217
200
208
174
164
137
254
201
156
238
188
237
221
195
218
169
168
189
198
202
256
142
242
226
196
147
192
211
265
192
233
221
266
166
201
238
196
217
118
169
192
194
258
182
218
156
239
212
205
242
233
226
214
230
200
210
216
231
190
195
214
238
201
211
150
181
211
183
202
185
219
168
246
221
183
218
178
193
226
255
245
198
242
179
179
170
219
203
191
232
198
215
187
154
212
206
231
225
192
239
219
215
230
179
176
191
206
169
201
158
222
221
231
235
198
250
226
230
256
223
189
196
231
206
209
233
183
227
180
198
254
242
214
170
173
243
212
247
238
142
216
161
181
179
215
224
190
193
234
228
191
199
216
141
240
186
245
254
200
150
206
235
188
164
207
244
282
212
214
180
138
147
233
175
275
204
151
207
207
217
258
174
250
222
214
250
131
272
214
178
251
226
182
142
227
238
230
230
268
263
237
256
252
221
233
151
152
258
218
166
205
159
186
182
158
224
138
231
217
160
185
255
199
216
189
175
192
189
207
250
191
254
242
179
187
93
173
163
177
221
244
195
208
140
227
193
158
229
245
215
218
168
174
209
160
230
196
224
122
230
172
192
168
192
210
216
147
240
234
217
301
213
224
206
155
114
223
219
205
238
156
190
233
193
209
191
232
196
207
218
182
159
193
178
201
212
196
258
230
195
190
229
217
207
164
210
193
232
212
238
195
175
216
189
174
175
210
222
187
229
223
164
203
229
204
179
227
181
223
238
171
139
225
151
213
113
247
234
197
179
197
234
189
200
147
233
248
201
194
154
196
191
248
183
161
215
235
176
200
245
200
146
163
184
214
199
218
162
199
233
211
232
190
152
201
171
233
142
261
213
103
189
180
161
212
171
227
224
184
182
250
184
134
217
202
184
200
251
242
259
170
232
225
144
184
200
191
267
217
181
245
193
202
198
243
154
222
236
184
192
183
177
252
184
239
206
196
209
156
229
169
207
241
230
184
186
187
177
205
211
188
230
215
168
270
182
185
191
179
180
212
241
163
187
194
217
208
193
239
200
198
227
225
176
174
219
132
230
184
244
273
246
163
208
284
129
183
187
210
103
277
181
197
181
184
235
179
236
248
182
261
208
234
228
216
130
252
117
180
228
217
203
224
246
234
186
184
225
227
202
228
231
176
234
150
209
174
146
182
146
151
236
244
220
167
133
185
204
182
203
206
213
138
164
208
185
131
222
251
205
177
223
269
176
186
162
228
167
183
261
184
201
218
246
127
184
194
189
232
176
159
231
199
229
149
163
240
212
203
185
122
184
279
158
160
195
212
194
224
191
245
220
212
170
215
218
263
199
207
177
228
214
119
258
198
203
192
175
186
217
157
195
175
173
216
236
186
167
142
188
210
226
238
262
87
149
199
178
242
211
261
211
143
145
146
225
214
172
219
183
128
171
233
225
202
229
167
146
174
201
229
225
181
215
219
206
195
246
174
242
165
231
233
205
160
260
215
191
212
181
240
169
147
170
245
224
234
226
217
202
261
216
226
213
249
178
218
256
159
184
230
223
229
193
223
230
236
173
204
179
179
162
213
184
202
184
217
176
186
221
231
238
195
162
228
177
241
174
198
189
130
192
211
128
105
193
221
166
179
222
214
223
195
189
204
235
219
241
236
188
145
183
174
159
146
258
192
217
203
215
206
164
225
196
196
216
205
231
171
205
230
220
243
184
173
188
196
164
191
240
207
212
194
177
216
217
243
224
221
235
200
154
208
263
175
190
210
246
251
154
180
177
184
154
157
202
163
256
165
166
189
210
196
219
248
170
149
212
212
191
259
207
223
231
262
232
176
170
176
145
223
228
152
207
220
213
214
169
203
140
243
264
201
212
210
248
184
173
166
232
204
205
271
188
243
232
255
196
193
166
213
192
184
168
198
200
157
219
217
244
201
181
252
232
186
165
207
243
127
155
179
213
196
211
212
239
144
206
193
196
244
189
132
180
175
202
157
200
187
186
212
187
188
184
221
223
216
181
212
201
211
196
189
121
215
179
219
237
202
213
234
187
227
247
210
197
214
212
146
227
212
228
205
222
179
201
222
162
200
198
193
156
213
204
200
126
151
207
189
184
205
201
186
249
213
235
189
202
120
183
211
250
189
222
157
194
204
185
200
221
192
221
106
245
211
212
255
176
173
177
224
183
186
197
177
187
120
123
172
237
207
135
265
240
226
235
257
251
150
179
191
199
164
190
227
206
212
211
185
145
230
201
195
168
212
178
150
230
188
183
187
153
200
136
242
210
145
233
171
258
134
211
157
231
186
224
204
235
151
206
209
200
155
195
172
172
185
154
224
142
209
199
163
187
138
224
247
249
245
231
182
147
183
202
181
233
236
173
234
135
266
222
213
139
226
152
234
214
129
137
242
216
202
261
227
224
165
215
167
206
180
173
157
199
208
241
204
225
210
152
233
202
196
103
221
232
127
231
187
242
156
186
242
179
163
259
219
184
223
233
193
166
157
197
209
195
190
205
219
221
169
195
195
205
201
234
176
117
239
166
194
247
201
191
188
214
168
198
211
155
246
193
175
192
237
204
158
163
214
174
234
187
240
194
230
239
212
140
215
205
214
221
195
209
196
201
152
143
200
162
183
209
204
127
130
235
193
236
173
197
127
158
138
173
218
213
235
195
159
233
221
190
209
213
210
176
205
214
234
219
174
184
214
200
224
237
215
157
171
212
195
206
145
270
175
206
215
215
126
156
154
164
186
239
217
237
205
212
205
211
230
245
231
197
146
195
173
235
226
249
193
200
233
160
164
199
258
249
216
166
162
211
203
241
144
242
159
182
141
162
201
236
186
222
207
165
201
200
201
187
137
151
144
247
128
191
184
180
198
250
247
138
267
240
197
175
131
149
200
139
165
126
183
250
201
193
242
193
243
151
197
249
206
217
186
159
210
168
211
178
182
185
162
149
248
200
234
251
209
183
117
215
187
202
195
173
254
180
170
204
234
211
111
152
240
215
185
179
178
197
190
211
215
194
178
153
218
213
222
204
170
176
175
222
189
214
214
185
155
176
199
205
191
275
181
196
213
210
224
123
167
246
192
194
214
206
194
233
197
206
219
198
184
293
233
145
151
192
228
204
149
184
190
276
191
218
159
135
219
186
180
192
198
209
149
206
223
249
142
183
167
153
212
241
168
219
178
210
160
220
177
255
240
167
231
205
222
167
161
254
184
117
128
191
137
273
179
197
208
137
123
191
182
193
187
244
245
174
213
163
181
142
182
148
172
199
256
206
244
140
280
129
181
211
225
244
187
246
213
208
226
204
137
159
231
216
174
217
213
227
182
224
123
151
202
209
206
218
263
186
214
164
180
220
204
200
173
140
167
181
241
205
223
110
182
212
198
191
214
184
170
212
171
225
248
200
126
185
189
211
196
186
155
262
169
199
178
209
220
162
208
244
232
209
148
226
115
254
148
222
260
236
243
184
161
175
170
236
111
211
204
228
198
240
235
171
120
170
231
189
222
228
239
236
250
197
231
201
152
153
209
191
197
224
201
227
204
209
201
219
231
202
205
197
233
163
186
211
186
225
212
216
223
255
216
219
162
146
203
182
204
220
221
183
178
192
254
189
223
172
168
224
267
223
222
243
161
156
187
222
196
253
141
188
168
218
180
131
233
117
179
138
191
185
166
257
266
181
175
172
224
151
185
143
249
184
187
246
147
179
162
169
180
155
183
210
200
171
282
201
203
178
225
241
211
198
194
199
216
195
216
192
218
167
193
136
146
242
184
200
194
204
248
222
140
168
160
133
193
152
191
194
149
216
194
206
165
222
214
200
252
155
224
186
134
173
229
274
188
202
183
185
206
150
164
168
143
189
154
156
271
228
187
213
235
210
196
113
227
182
165
167
212
227
232
189
256
195
180
182
201
242
281
163
241
249
246
207
125
164
188
205
167
169
157
263
166
194
186
240
232
205
161
234
211
257
207
212
284
185
259
165
213
178
205
230
257
186
208
195
156
227
222
192
264
174
161
151
169
187
194
104
228
223
184
199
167
150
221
188
242
263
222
235
194
244
185
165
180
222
188
256
144
253
185
195
203
271
188
157
120
159
233
216
191
213
204
240
243
204
220
215
188
180
107
187
206
202
198
224
189
180
208
241
234
216
166
146
201
166
238
256
174
161
237
167
209
204
170
221
195
209
224
212
203
158
220
206
216
209
202
193
218
198
116
206
207
190
204
216
148
210
213
177
230
212
230
240
228
207
213
228
206
246
167
230
203
235
204
115
219
115
199
215
208
261
136
204
201
183
209
227
248
192
222
169
261
195
214
267
148
206
153
229
242
171
191
226
176
224
167
239
196
200
192
249
222
162
191
228
199
147
258
225
201
207
186
181
242
211
208
221
187
175
221
126
240
243
142
223
190
209
198
201
178
176
174
208
199
220
236
156
184
248
198
294
103
204
208
184
210
162
197
232
216
203
180
260
138
275
180
183
86
245
196
224
209
160
144
164
241
228
229
239
232
223
230
258
223
170
229
185
201
254
256
233
195
207
134
248
198
182
252
222
152
183
252
228
151
229
222
120
167
258
176
215
214
206
209
168
207
197
231
193
250
220
187
208
203
241
158
189
183
201
172
136
245
179
214
166
270
292
170
227
193
210
137
166
183
162
124
156
183
196
159
192
202
186
107
155
202
198
158
196
229
200
178
183
244
199
201
219
128
241
210
141
157
218
222
209
260
222
205
177
226
192
184
178
261
212
223
247
243
218
209
196
141
202
173
185
217
149
190
176
252
205
215
234
259
237
157
252
133
216
201
191
152
212
237
216
184
226
270
219
186
260
191
229
202
180
184
215
229
150
170
233
184
294
109
168
236
204
176
216
202
186
207
170
213
193
269
220
211
156
198
200
180
123
161
243
218
172
171
214
220
223
132
196
181
236
148
208
248
232
259
196
187
187
211
181
198
225
196
226
173
147
219
183
160
199
235
169
160
199
230
207
225
219
174
121
222
282
183
229
194
149
192
199
225
240
164
189
185
202
146
207
151
242
225
142
222
204
121
176
193
203
207
170
118
178
251
220
222
217
230
207
185
240
236
163
187
195
100
224
218
186
167
203
191
166
224
240
171
163
174
221
271
249
152
192
184
136
196
193
246
173
260
231
194
153
209
203
221
193
147
185
242
235
192
173
277
180
275
119
220
233
247
156
200
173
128
196
197
232
213
157
176
204
149
244
242
168
226
258
223
142
219
238
152
242
152
207
118
210
182
196
228
196
215
208
145
219
243
198
154
216
199
224
200
213
251
197
189
201
219
255
219
239
217
221
205
201
181
182
120
180
223
149
220
207
255
195
196
226
206
177
217
250
204
196
156
258
196
141
218
219
246
216
215
187
217
181
211
154
288
194
215
170
277
165
206
259
198
174
191
93
216
215
185
249
224
253
181
209
192
199
241
206
230
206
124
168
167
215
200
213
213
257
143
247
217
213
188
270
209
198
213
217
200
191
224
227
249
246
179
212
178
175
182
210
137
172
182
156
204
275
177
145
215
178
207
246
223
148
196
194
133
207
225
186
172
157
206
256
200
202
151
168
193
204
220
233
188
154
222
223
186
162
155
202
236
217
207
136
167
251
237
141
206
182
166
206
147
214
144
172
187
142
203
171
211
256
230
229
218
203
119
203
169
132
192
182
170
217
219
193
197
187
159
185
244
216
205
247
175
106
249
243
200
185
206
205
254
259
210
152
241
167
159
213
203
246
183
198
239
210
170
178
197
173
178
241
241
172
201
218
132
184
164
267
201
219
250
235
146
257
182
198
250
218
218
245
201
174
189
182
218
192
212
193
268
161
190
175
177
266
212
210
152
161
212
155
162
198
195
249
203
226
239
127
198
130
200
231
155
215
212
235
238
184
209
190
216
192
213
276
177
247
178
198
171
158
158
204
159
221
157
184
167
208
217
174
206
171
248
208
204
188
205
178
189
190
172
229
178
195
217
251
170
206
179
141
222
220
155
225
119
225
190
190
80
201
190
211
187
166
230
208
188
197
225
166
207
190
171
187
231
234
185
223
198
194
186
127
183
172
132
203
221
208
225
242
172
181
181
252
210
150
197
155
156
222
220
201
244
167
172
180
195
189
114
220
216
225
212
202
148
246
184
226
137
248
216
193
176
193
175
215
224
205
245
206
201
177
199
242
204
130
150
180
131
206
192
162
167
213
142
200
201
236
210
186
188
185
231
192
188
253
211
224
175
207
175
224
123
188
207
193
188
234
209
213
134
186
199
232
204
166
166
203
209
195
211
198
203
241
229
194
190
232
270
240
190
228
175
242
165
215
172
207
255
222
183
172
206
244
245
250
171
177
197
191
200
215
194
152
128
213
235
207
200
233
196
148
245
200
168
218
222
217
200
186
138
224
205
257
159
245
193
143
245
244
195
188
254
230
217
131
243
255
177
206
133
196
189
212
254
200
189
204
241
218
166
226
165
173
219
195
197
254
160
207
229
200
192
145
243
190
232
220
230
185
238
198
224
184
219
196
265
222
109
152
182
140
180
212
128
262
217
172
231
223
223
177
126
173
197
225
169
169
222
200
171
205
181
147
207
189
158
215
188
142
201
181
195
151
180
235
217
174
240
183
162
211
195
216
144
188
203
163
187
281
188
202
208
186
176
227
150
203
195
187
197
200
189
132
236
216
170
153
228
206
204
199
182
228
167
184
225
209
226
146
240
250
177
207
143
162
196
178
242
219
200
166
204
172
201
185
194
207
218
246
155
209
181
200
264
211
202
214
199
224
185
162
270
226
209
173
245
225
181
207
204
231
198
114
241
216
248
202
171
165
153
171
144
182
138
212
161
198
171
212
188
138
197
174
171
201
167
233
235
196
254
186
171
211
175
216
190
124
194
159
210
181
217
179
271
172
234
206
200
228
236
179
180
219
176
175
188
269
240
181
182
271
220
251
238
201
229
241
156
214
238
207
152
192
281
195
262
207
108
108
223
212
186
185
154
208
169
201
246
226
180
217
237
209
194
131
188
202
181
189
238
267
223
139
225
165
198
156
193
276
170
189
187
223
238
210
196
247
211
178
172
162
204
175
175
171
227
235
170
183
207
154
241
242
186
196
220
176
158
181
188
209
206
201
226
215
174
238
213
176
245
155
153
178
216
196
188
195
168
206
226
201
237
218
221
180
220
179
196
231
224
214
235
246
207
192
256
164
248
170
217
231
251
256
184
212
170
238
221
194
178
241
176
196
204
205
268
197
253
200
164
254
276
179
220
164
217
197
171
219
225
228
239
218
189
225
185
242
161
161
271
150
238
139
181
212
150
223
209
175
172
215
160
234
170
201
193
195
207
169
249
219
201
196
260
209
217
173
159
191
229
185
233
215
195
147
207
214
261
208
235
187
214
207
274
166
171
236
219
197
233
203
121
217
258
140
224
247
173
266
217
196
185
213
222
172
272
216
183
235
182
197
240
169
159
209
231
218
192
188
247
240
193
184
225
236
211
233
154
189
156
217
201
162
202
191
234
159
225
179
227
240
250
182
222
186
159
138
107
144
221
255
219
196
201
187
237
231
157
177
171
215
190
209
241
125
272
173
235
217
191
177
259
186
168
245
221
170
185
133
208
192
191
195
193
181
173
175
215
234
220
227
189
201
212
246
253
220
211
233
194
213
224
228
236
218
168
248
116
189
225
234
180
138
158
251
166
245
248
192
196
115
181
208
202
125
241
186
177
217
175
206
200
148
183
163
178
230
208
201
211
178
265
239
152
229
192
237
205
216
169
142
159
208
185
160
179
171
214
243
192
233
198
220
209
134
201
192
229
239
155
160
212
224
182
279
182
249
194
239
232
157
224
246
164
198
132
137
208
204
205
215
145
195
225
200
219
167
157
220
167
175
207
221
257
152
208
174
193
244
184
142
246
224
231
198
197
212
241
281
193
165
212
211
195
179
130
179
161
241
201
242
183
225
249
236
218
167
227
215
196
214
144
214
184
163
209
179
191
196
207
238
182
185
179
185
197
201
222
172
241
255
246
216
205
236
173
174
210
228
200
178
210
251
197
258
229
207
168
194
211
225
206
212
194
218
161
228
243
196
238
250
218
211
171
214
195
207
168
233
210
207
190
198
165
182
238
223
114
205
204
151
196
174
195
181
206
254
186
189
231
217
233
188
202
218
239
200
182
225
208
230
254
240
259
129
237
211
187
197
237
231
198
186
193
179
281
195
185
247
144
184
212
175
257
218
175
199
165
187
215
214
177
180
229
221
164
195
164
176
183
163
227
150
221
167
210
191
189
140
204
152
180
194
161
194
200
195
200
206
196
214
222
253
227
197
264
161
192
214
213
211
173
179
182
236
202
116
171
205
170
190
178
233
245
207
176
184
182
183
138
171
191
246
157
175
175
220
216
136
208
189
189
187
236
168
214
193
195
225
208
230
209
226
263
175
181
207
221
204
194
171
122
248
166
189
206
230
258
224
240
272
275
243
207
211
169
129
166
176
240
104
176
200
221
239
175
165
147
180
200
179
241
227
185
174
219
166
240
146
212
152
167
202
212
203
234
207
152
237
194
149
248
154
123
190
170
179
135
155
203
247
197
183
229
206
194
164
208
237
172
181
233
166
117
266
210
179
186
248
184
164
205
173
248
248
179
254
200
227
165
197
141
181
150
209
140
223
188
140
214
243
224
201
172
207
163
202
232
144
233
165
235
200
141
254
163
178
141
249
228
232
182
182
173
191
203
218
232
206
187
181
188
222
153
224
203
195
148
194
201
202
194
220
189
219
183
208
183
130
197
229
211
138
243
252
187
141
215
230
248
181
281
181
241
187
192
174
178
172
224
152
233
224
155
209
225
199
209
205
230
225
256
191
214
217
218
246
254
163
233
193
231
184
217
216
238
217
190
135
198
127
230
180
233
210
145
233
229
171
229
176
233
250
218
152
230
198
189
161
252
184
202
190
190
225
202
178
198
233
229
186
168
194
210
201
205
239
212
262
237
187
195
187
181
175
268
179
211
179
174
278
182
189
244
191
179
203
203
207
165
156
179
142
179
211
243
182
191
211
214
188
224
200
219
101
240
200
152
197
221
227
189
244
195
146
227
173
160
220
221
210
175
242
167
164
175
210
247
196
202
174
181
203
206
152
225
198
180
242
237
200
204
207
152
203
196
198
206
203
195
225
195
241
199
208
176
268
252
247
132
197
218
245
177
158
278
116
196
152
161
267
181
207
188
187
214
146
189
212
201
174
104
194
236
176
173
249
187
187
179
253
214
243
214
215
246
235
237
238
164
209
226
236
232
146
257
215
232
215
158
204
260
247
192
221
116
204
216
238
202
185
184
221
227
228
223
212
208
154
254
178
173
221
147
229
201
207
171
151
231
161
194
207
203
184
219
205
221
260
197
233
238
210
235
180
286
246
181
166
214
273
169
230
207
197
232
213
169
202
193
242
159
204
204
238
231
190
203
208
202
155
217
196
185
185
165
232
206
207
148
198
185
251
209
194
191
264
171
195
177
177
177
197
193
225
140
204
199
200
176
219
178
234
192
225
228
222
184
199
235
140
187
191
214
167
115
187
180
196
232
212
235
211
142
193
156
210
216
193
224
220
196
202
182
182
219
183
237
229
157
244
171
212
225
249
219
246
221
240
247
225
192
241
245
224
198
229
218
173
129
189
260
191
208
203
199
195
212
183
234
105
195
217
152
179
257
249
190
202
165
233
189
181
214
128
223
199
216
167
190
193
249
208
161
188
204
196
199
148
216
154
208
187
184
225
156
214
203
207
170
148
194
155
208
165
228
217
223
157
255
216
195
217
217
156
206
184
227
284
199
254
197
123
220
235
194
193
252
243
183
212
236
173
217
200
227
200
200
217
236
213
165
173
201
160
203
213
215
168
170
223
190
199
114
209
139
192
224
197
187
182
155
202
144
261
192
242
224
159
216
236
191
196
215
200
196
177
178
145
233
200
220
203
226
187
224
209
179
226
195
199
161
136
206
194
200
116
178
261
239
179
233
150
232
213
224
224
198
215
225
191
176
231
162
207
211
155
225
162
177
191
232
172
205
202
245
203
240
167
277
250
220
172
228
177
222
177
234
162
221
210
206
184
215
203
238
212
175
268
237
174
221
210
264
192
192
237
174
241
167
88
202
198
212
262
252
194
234
206
230
137
260
139
228
158
187
154
145
246
213
211
232
231
160
193
200
179
246
166
145
156
212
209
198
198
199
187
216
149
237
161
218
249
238
166
241
240
201
142
143
159
206
175
248
208
173
186
259
198
222
198
231
216
214
224
235
248
232
232
229
191
206
184
257
229
212
253
215
190
194
178
261
223
175
205
225
197
248
221
144
235
171
205
150
167
135
168
183
192
200
218
180
199
175
250
228
185
247
179
139
204
176
127
235
248
174
201
189
141
232
139
196
193
259
237
194
190
141
206
171
235
127
248
255
219
165
218
204
165
190
97
206
181
224
222
247
213
182
248
284
189
228
213
200
262
180
172
198
259
180
174
191
192
164
256
192
157
207
248
252
188
201
242
241
161
240
178
179
206
220
217
187
185
131
265
207
126
177
189
211
207
158
183
216
171
219
191
189
179
255
240
189
227
158
170
173
200
199
209
228
185
153
201
184
227
205
181
215
189
170
206
194
211
130
213
180
204
206
168
119
245
216
204
148
172
220
204
167
192
193
203
162
225
198
203
169
160
169
154
148
211
228
207
236
195
205
212
234
233
152
156
237
248
213
206
226
176
172
190
217
236
150
231
146
244
242
184
230
223
144
263
222
186
146
175
149
225
204
222
202
200
173
235
99
200
169
224
224
204
206
210
268
223
219
207
201
149
225
167
166
213
177
201
149
191
189
180
146
183
239
193
216
198
203
236
169
146
230
229
191
141
150
255
212
183
226
196
211
274
150
177
216
233
182
165
190
177
202
255
178
191
146
209
189
206
199
247
235
184
229
232
168
192
199
178
198
229
163
255
135
202
211
170
219
254
155
148
206
238
186
246
195
216
196
175
238
224
225
127
178
138
241
223
257
181
171
206
212
194
183
151
221
138
167
166
168
232
164
170
221
221
282
259
118
205
136
162
168
143
244
179
175
191
138
208
250
204
168
237
202
216
177
164
174
162
205
181
231
214
234
170
139
157
201
237
233
179
226
146
191
157
223
185
186
222
204
167
197
165
179
227
134
250
144
159
255
193
203
192
164
267
278
167
172
253
253
216
239
198
132
214
220
196
244
165
190
203
217
164
199
159
235
233
212
217
258
220
180
214
161
213
187
172
186
243
225
220
210
184
207
190
213
214
203
247
164
183
157
251
197
219
278
173
235
184
150
213
148
148
176
204
155
192
130
223
212
221
178
199
230
144
141
211
158
134
224
128
227
144
210
197
225
175
216
241
213
168
248
235
215
178
181
177
258
209
233
194
207
209
162
195
208
230
172
211
236
195
219
169
214
217
150
160
224
198
219
148
231
187
198
221
217
161
236
222
228
171
170
168
141
286
210
231
214
208
235
238
180
173
103
154
226
200
149
176
240
235
217
234
183
209
215
235
211
200
177
248
187
192
106
164
236
177
184
162
212
180
179
164
161
166
227
198
249
125
214
181
211
171
217
230
197
186
138
178
206
296
204
257
166
236
225
221
221
241
215
268
193
231
223
220
150
216
192
128
175
215
193
246
176
178
239
261
137
138
255
166
255
207
232
241
162
224
249
190
241
200
224
220
250
141
185
165
153
230
215
217
236
238
234
182
156
220
128
212
228
238
167
242
203
272
200
193
223
241
200
204
224
182
230
130
215
243
206
179
195
273
167
221
255
180
162
177
163
213
210
236
188
245
197
178
145
213
190
198
230
151
174
236
251
254
234
200
214
217
198
222
198
189
197
232
183
155
185
158
253
199
232
200
198
218
207
180
201
159
255
190
130
187
200
220
262
199
221
200
282
136
206
231
213
213
169
200
182
199
236
163
257
201
140
209
183
183
213
222
204
193
220
172
182
188
261
232
168
257
239
190
213
176
160
174
188
191
250
232
181
200
254
132
161
195
169
209
169
167
155
208
177
188
170
176
225
188
152
153
194
235
195
187
269
150
180
192
185
129
190
198
186
178
211
167
198
238
158
216
214
203
267
222
222
205
170
194
203
224
228
218
199
207
139
216
179
233
218
238
287
144
207
239
254
252
187
109
145
180
254
234
224
250
211
161
217
172
167
179
218
220
196
187
240
245
240
177
146
214
219
240
218
125
234
235
104
227
181
223
245
216
241
272
180
164
202
242
167
252
184
123
210
220
156
222
186
190
203
206
200
229
222
230
186
198
203
206
176
215
197
192
174
247
237
178
116
236
268
186
209
160
194
248
250
201
224
184
210
229
184
160
171
178
204
193
254
262
227
217
178
195
247
221
115
215
187
225
158
200
173
210
186
216
188
242
126
249
183
202
217
172
165
136
256
188
228
215
264
157
266
226
237
237
209
197
220
243
135
195
195
205
172
170
184
169
204
170
224
191
223
184
204
214
161
230
249
236
192
151
198
145
185
182
192
166
231
156
204
206
196
233
216
239
198
144
223
210
132
207
190
175
189
240
235
125
264
235
211
216
208
137
225
222
222
210
186
251
188
163
265
193
267
214
190
213
209
207
216
172
259
178
233
197
228
197
204
168
221
165
221
178
159
257
192
186
260
224
221
222
157
179
166
202
217
247
206
173
159
233
163
166
179
213
254
186
249
121
233
211
123
212
181
209
171
197
200
211
203
158
182
148
185
240
200
210
171
173
221
224
193
266
153
209
207
190
213
211
174
255
224
196
184
118
260
190
230
216
272
196
186
229
137
195
162
185
183
208
262
219
211
189
194
209
117
142
243
214
159
142
195
228
130
174
184
195
138
255
183
183
205
202
243
205
189
198
182
186
273
179
201
236
187
207
191
197
216
174
211
232
199
202
223
221
226
205
181
228
254
172
205
211
166
188
189
224
214
196
208
228
214
186
238
201
218
230
207
222
171
226
186
170
151
177
185
240
186
234
197
176
191
201
213
103
227
201
180
171
232
220
212
168
166
261
156
191
245
217
145
154
153
165
218
170
211
170
193
210
205
201
221
180
182
177
229
220
245
180
229
160
173
193
188
201
237
101
197
224
183
197
227
206
243
219
200
176
226
222
253
223
184
213
251
188
200
207
171
152
204
255
177
209
138
192
199
173
170
229
223
220
187
204
217
236
221
207
229
195
220
216
191
168
202
191
192
187
225
177
214
130
182
223
248
219
183
201
164
217
193
256
186
272
116
168
206
202
186
158
213
202
198
178
189
196
108
181
199
172
101
231
184
187
174
192
158
198
206
154
179
141
218
222
147
197
222
205
178
265
202
182
166
206
231
188
260
207
229
243
201
187
221
197
184
191
217
197
160
205
196
229
213
235
233
217
185
169
228
244
146
205
217
212
220
190
212
224
206
162
232
200
231
185
156
228
167
167
196
230
210
209
220
181
170
197
207
223
193
190
188
206
211
165
186
257
153
194
214
192
167
204
229
187
174
238
116
185
223
123
238
204
184
177
254
192
150
228
230
224
173
225
172
189
220
190
149
159
203
181
241
234
210
202
161
200
208
229
196
251
241
182
126
191
217
223
181
161
121
230
199
173
248
199
191
193
192
131
136
191
187
175
275
225
153
238
180
219
173
203
193
193
179
230
179
228
127
222
221
166
187
202
173
273
192
234
284
215
177
181
125
166
128
209
213
202
194
137
183
195
178
186
149
147
215
221
174
200
218
252
165
222
256
259
213
234
210
178
207
202
186
220
276
212
188
184
156
251
192
108
157
206
130
154
192
237
202
170
178
224
220
207
173
200
211
217
217
175
143
179
165
188
241
232
260
226
237
300
229
179
193
229
197
211
149
146
181
214
212
186
164
106
167
252
268
236
134
138
181
205
187
265
205
212
217
190
159
181
260
116
147
163
220
228
202
206
170
172
226
277
174
193
199
251
159
154
268
139
218
210
253
179
222
235
253
155
270
186
208
197
204
216
231
169
136
227
222
195
197
231
271
191
177
162
266
228
195
192
202
167
219
188
209
161
173
184
236
151
204
237
172
227
171
211
185
208
162
176
188
208
220
159
199
163
75
166
177
203
214
143
168
229
191
253
211
132
178
116
130
161
208
176
187
213
201
210
172
180
214
209
218
233
158
193
189
176
195
209
187
239
168
205
215
232
240
187
252
179
264
206
211
243
183
107
195
189
186
163
203
154
221
211
134
264
235
188
210
109
182
204
191
216
214
183
180
231
208
170
191
213
189
159
176
159
216
197
183
238
182
255
210
158
197
177
187
142
191
192
194
205
197
262
150
199
214
226
233
151
183
182
174
175
211
202
173
185
160
201
212
162
200
163
261
200
163
204
150
171
212
197
183
216
221
172
306
251
178
219
235
161
254
124
224
237
171
218
203
243
222
212
160
218
221
168
155
143
161
101
114
150
225
160
184
173
211
158
182
228
174
217
186
169
221
258
163
237
214
197
228
205
266
224
193
213
203
208
182
185
234
168
222
272
165
211
136
153
182
215
213
229
199
222
180
237
217
177
191
189
196
227
207
209
125
196
198
209
159
172
183
196
237
250
233
155
204
163
196
196
255
223
185
196
162
203
233
156
179
221
219
113
231
195
195
156
178
207
251
143
161
215
150
221
208
214
224
220
231
184
222
241
169
191
196
168
175
157
252
193
185
227
204
171
170
228
237
186
154
209
192
191
181
177
253
197
147
245
178
163
241
218
167
237
190
158
215
151
205
147
189
147
263
177
191
181
153
264
166
123
157
196
261
198
186
238
170
118
275
199
222
230
225
193
184
239
185
227
178
154
171
225
227
245
236
230
155
212
183
195
200
235
223
166
179
129
246
171
196
236
186
220
220
165
201
223
183
180
239
150
152
233
227
175
197
203
183
166
200
182
237
171
161
229
196
229
177
181
218
207
233
186
184
199
146
218
238
176
260
207
201
222
182
228
219
223
207
152
229
138
177
206
178
177
154
233
188
171
209
198
179
188
181
200
243
252
197
185
168
167
200
205
231
203
188
213
156
182
186
214
174
186
243
219
247
110
232
262
272
222
221
259
207
234
171
193
174
169
238
243
237
239
230
176
217
169
223
198
195
190
254
196
157
242
187
198
213
238
183
242
200
193
211
213
227
182
265
194
165
204
200
200
155
163
186
260
214
192
241
183
214
142
193
210
259
234
194
172
245
173
161
192
232
199
196
161
199
162
193
189
115
222
211
195
172
248
221
216
177
201
175
178
170
225
146
147
234
264
231
204
173
190
231
187
162
219
170
225
170
212
188
210
115
169
277
169
153
185
153
177
219
216
190
256
251
178
200
203
217
125
169
216
233
205
203
208
172
204
198
157
195
145
211
169
166
204
201
211
207
220
237
200
229
249
192
208
159
208
159
194
220
248
168
168
224
181
227
208
230
157
215
177
108
276
224
214
238
145
188
136
185
210
174
201
200
223
201
241
180
192
242
202
223
261
269
240
142
182
225
217
187
165
171
136
202
222
156
229
175
114
142
217
149
188
240
132
202
258
199
182
180
213
181
209
217
206
222
208
205
204
213
204
262
223
235
217
129
193
256
176
164
275
175
209
196
169
187
232
297
243
214
211
158
193
130
223
196
235
214
259
183
188
183
230
171
189
154
201
200
210
154
207
187
159
132
166
250
199
183
174
234
221
158
271
208
212
238
200
217
217
240
158
202
184
213
223
134
155
216
226
181
215
215
243
232
272
171
148
171
225
166
233
194
197
255
227
180
168
257
213
201
205
219
199
197
196
213
228
156
197
186
156
162
235
165
179
139
102
228
223
223
174
152
154
181
157
143
242
211
286
184
157
196
190
183
189
226
198
189
206
244
216
189
184
215
221
203
206
180
195
228
190
184
192
165
238
175
230
180
188
248
207
227
191
238
233
247
237
260
200
182
151
190
236
260
227
163
217
231
166
206
165
127
223
159
235
177
237
227
175
231
187
193
220
203
208
167
230
189
210
219
256
172
183
213
205
220
220
220
155
193
190
180
164
216
250
196
235
191
212
183
196
211
154
178
163
180
121
227
204
224
175
245
225
207
192
206
168
237
211
162
213
234
179
195
244
273
236
206
239
240
189
268
238
224
233
183
232
251
143
162
162
189
230
181
205
205
233
231
198
180
241
235
195
230
203
224
216
182
218
195
156
188
157
240
166
158
214
169
175
260
203
226
213
208
227
161
152
222
246
280
202
238
192
183
206
166
190
218
178
200
181
179
158
158
101
269
262
166
149
192
164
211
218
157
210
213
267
225
222
184
194
155
241
183
234
183
238
174
205
200
189
183
200
170
202
252
228
176
215
204
195
158
165
234
217
206
272
232
160
202
200
166
223
266
216
227
249
242
185
165
173
208
186
204
200
202
146
234
170
147
169
192
208
214
228
185
124
187
184
229
185
230
193
107
225
220
167
221
211
224
216
213
183
193
222
165
139
184
215
223
184
149
182
220
211
212
206
167
185
184
253
242
157
162
216
236
159
174
241
220
162
235
246
217
213
198
171
191
190
162
164
242
178
192
215
233
208
219
172
174
169
177
276
247
205
177
157
199
152
200
170
167
172
187
232
191
197
171
146
176
186
187
223
121
241
162
163
193
163
186
158
200
210
197
249
206
237
239
220
215
215
200
190
219
187
268
217
228
163
164
225
184
216
189
203
166
234
206
203
131
165
188
214
260
147
165
183
237
223
229
168
236
189
223
174
230
164
190
177
212
225
145
250
260
219
213
212
193
214
181
154
242
201
157
262
116
187
136
183
213
195
198
219
235
157
141
176
130
242
211
164
200
230
245
178
196
221
152
259
203
205
215
199
172
186
178
152
212
243
157
226
209
251
211
220
159
176
154
244
180
180
191
183
181
189
243
241
219
184
258
155
209
222
254
175
278
222
174
208
192
177
237
223
183
202
234
168
212
284
251
184
207
205
243
155
206
137
226
243
256
236
177
149
226
131
171
151
215
234
192
156
232
175
249
246
178
246
252
157
168
231
196
281
242
207
198
220
205
142
229
170
192
236
164
152
252
249
212
196
202
206
165
203
231
164
200
235
196
191
144
214
207
286
177
258
223
216
169
163
206
264
182
156
203
131
166
157
202
236
204
167
221
207
242
184
280
185
219
146
235
234
172
185
226
166
207
173
165
96
236
190
204
277
226
214
199
235
184
187
227
220
120
139
178
223
189
170
175
114
145
169
215
176
236
210
176
198
178
220
156
208
142
199
159
186
215
229
207
243
160
227
162
278
187
219
175
237
175
164
251
225
171
186
184
270
216
233
202
175
212
166
264
182
210
237
202
180
247
277
283
228
164
188
203
266
189
216
229
217
176
242
243
209
233
245
166
184
215
205
198
200
221
184
256
171
231
215
168
209
238
232
217
200
221
220
209
167
167
174
214
153
240
192
204
187
246
243
251
190
219
233
169
215
197
200
244
182
202
170
202
244
134
198
128
256
184
159
241
248
204
231
264
246
170
243
138
140
227
184
177
182
157
197
249
135
228
221
240
215
194
201
176
180
204
224
167
184
207
218
261
148
245
183
255
261
178
236
218
194
208
189
166
197
205
237
183
223
234
248
180
221
182
172
177
194
207
204
221
159
151
179
180
203
236
181
171
169
190
207
186
143
229
167
233
170
227
203
202
210
214
204
174
218
158
225
224
230
180
186
144
235
190
220
211
219
226
105
187
205
274
238
158
146
167
156
162
240
164
217
222
192
184
182
267
243
188
176
169
214
205
229
211
195
243
254
221
229
174
216
145
212
241
203
172
240
260
208
202
168
209
185
223
215
215
201
186
196
140
146
254
207
183
219
212
183
179
244
207
200
217
173
164
207
224
137
234
168
186
231
177
159
222
198
261
227
207
161
156
195
177
284
177
183
219
224
160
165
179
189
134
187
194
192
200
126
158
205
198
183
138
161
195
203
124
242
200
219
223
266
136
211
196
156
222
159
146
198
179
177
246
213
248
214
221
270
205
190
168
271
202
218
171
265
221
210
237
199
176
195
242
184
174
221
260
189
130
211
225
192
193
127
149
208
209
280
190
137
267
211
172
171
217
211
164
151
144
154
235
174
215
273
166
187
257
248
162
201
192
196
179
160
197
252
171
213
168
199
186
211
154
173
172
174
237
205
205
125
226
219
228
201
259
182
189
218
153
179
193
204
217
162
144
209
153
120
241
176
170
134
255
183
209
168
157
185
181
155
164
185
216
210
193
171
246
215
218
187
208
221
195
186
185
207
193
146
213
207
220
164
194
198
234
146
262
240
248
167
189
147
259
163
182
199
256
200
248
188
231
230
167
141
187
205
221
202
165
169
166
256
161
173
213
171
185
188
196
149
202
234
173
185
123
201
235
250
199
123
190
182
218
223
205
154
226
197
214
197
203
197
240
197
135
255
198
185
137
150
242
208
247
185
191
222
235
232
249
131
199
189
222
160
200
237
120
236
236
189
192
188
197
167
251
197
230
233
236
228
226
91
164
187
189
198
163
253
247
156
206
162
195
166
186
103
197
176
159
212
148
201
195
180
186
196
113
240
153
209
174
161
135
193
233
250
198
226
171
214
206
127
179
210
170
138
243
166
239
232
109
181
144
102
219
251
180
188
219
236
226
199
130
228
229
191
128
215
202
169
202
236
206
224
149
204
169
237
158
209
259
143
252
214
218
135
204
286
184
173
261
217
221
196
224
185
222
208
195
175
274
188
170
204
213
212
234
209
204
200
208
179
183
215
200
203
229
216
156
255
201
191
190
198
262
220
202
139
194
156
211
210
193
211
133
149
207
213
260
188
184
187
246
166
208
249
210
200
189
249
158
218
242
201
197
183
214
192
216
252
190
235
194
182
198
205
159
200
220
164
228
110
228
173
170
225
157
242
214
193
212
208
170
151
166
220
175
213
207
144
271
193
252
178
213
257
138
209
231
193
282
208
252
215
177
226
171
236
119
149
206
193
231
166
227
238
194
152
144
161
189
223
252
264
194
184
226
224
134
235
158
221
154
217
186
213
196
255
191
220
180
227
231
224
201
191
189
167
221
176
220
202
211
214
183
218
223
221
209
173
220
169
197
198
252
165
203
150
249
177
165
242
188
194
159
149
182
226
207
162
183
225
162
175
164
216
145
149
252
153
224
216
167
154
243
199
220
239
192
206
237
229
170
152
163
210
272
206
166
174
215
238
170
159
195
182
201
256
162
237
210
162
165
211
140
180
159
218
133
225
193
190
194
197
151
191
223
166
246
221
228
185
147
169
218
175
198
205
144
202
194
179
205
169
191
223
228
200
233
179
150
210
249
201
162
187
230
196
194
247
161
182
183
176
152
168
179
131
202
214
202
198
198
188
153
165
145
211
204
208
230
204
183
206
242
222
214
221
198
196
215
188
195
249
182
201
178
220
237
240
200
202
187
216
196
221
187
174
267
229
168
191
182
252
218
153
220
147
128
206
171
204
132
153
130
206
217
222
137
276
211
236
214
230
262
261
253
248
230
245
193
194
118
245
153
234
207
178
162
180
216
196
209
223
227
232
196
237
281
247
156
141
164
209
212
208
265
179
244
178
227
235
193
232
218
183
192
207
176
148
211
193
231
223
154
179
230
167
224
231
231
173
200
237
134
198
192
227
124
159
184
211
202
258
203
148
238
218
188
168
212
175
171
219
184
227
166
208
216
205
174
219
185
199
198
210
200
169
201
171
188
173
256
194
248
209
187
66
202
163
255
191
134
186
232
183
198
173
243
193
161
197
162
207
137
208
184
235
180
161
239
222
204
186
199
183
225
140
250
215
238
206
292
256
194
198
228
197
236
198
195
184
178
184
196
202
184
104
233
205
158
199
186
236
202
175
178
224
251
162
187
218
238
221
169
257
157
195
220
202
113
204
260
178
257
231
156
148
204
189
231
221
213
185
178
232
186
201
219
203
242
203
245
174
187
210
229
169
238
215
219
176
226
165
192
148
193
177
223
121
216
155
209
168
243
67
241
206
180
232
222
253
164
190
238
224
199
188
275
238
174
145
209
189
176
265
209
222
177
202
261
153
215
176
148
200
211
222
178
157
145
134
213
186
178
203
191
233
239
169
257
244
217
192
188
225
174
181
171
192
210
135
164
240
165
172
202
207
186
192
211
265
265
211
211
144
233
159
187
239
175
178
210
270
198
162
171
191
249
101
212
170
217
186
136
158
244
124
255
191
175
234
224
201
238
246
191
169
182
187
140
188
228
178
182
165
152
218
191
129
211
190
181
241
197
201
175
233
206
218
137
174
179
222
159
158
227
201
173
214
239
185
206
229
230
149
225
202
248
168
204
229
114
191
200
251
198
239
191
189
235
207
150
197
224
227
173
241
165
181
230
251
199
225
230
199
170
242
237
206
132
238
177
205
158
171
200
222
173
181
187
190
202
180
192
191
164
163
203
190
205
227
187
177
249
238
223
193
187
109
266
206
172
187
234
192
200
228
248
163
200
198
226
222
254
126
199
196
188
213
171
221
265
212
197
214
179
171
212
209
195
191
216
208
187
191
188
210
187
206
171
216
171
185
190
163
155
194
228
272
190
268
222
196
161
179
212
237
245
189
224
184
202
208
180
196
213
249
190
174
192
190
218
222
211
232
265
163
238
167
183
187
181
195
204
202
165
158
215
174
230
173
242
174
245
196
195
248
234
171
139
176
210
174
172
188
188
283
152
219
204
221
241
179
181
228
212
187
186
169
141
253
250
207
185
174
180
251
251
160
196
135
251
199
183
153
257
235
207
237
208
269
193
197
156
199
198
139
244
197
186
222
222
256
215
219
208
181
199
217
222
167
239
226
231
228
182
219
197
197
223
191
241
171
223
200
238
195
187
185
219
191
217
189
234
212
216
233
209
203
147
137
208
218
124
195
184
210
174
215
234
142
270
218
140
216
196
119
232
268
191
128
191
239
210
208
249
254
193
271
166
227
178
222
158
166
190
221
232
199
225
207
232
193
189
230
191
235
265
246
174
226
199
247
196
301
229
228
150
206
209
157
204
179
196
238
165
147
232
155
207
223
233
175
224
203
234
183
188
176
194
230
199
184
189
216
166
187
162
221
202
193
184
248
143
232
262
209
269
177
187
197
169
201
233
241
230
232
170
194
181
262
214
214
202
204
199
216
253
217
245
168
213
237
163
238
203
196
188
154
187
212
229
209
195
240
193
259
215
229
158
228
193
225
218
195
124
222
199
144
187
201
204
277
287
150
176
210
246
231
179
171
174
199
185
222
272
196
266
225
229
195
224
210
260
205
209
155
165
263
267
197
165
174
171
228
195
212
188
175
179
171
239
270
194
249
204
174
269
227
160
246
282
184
209
221
204
146
173
214
187
265
183
225
162
226
162
157
201
189
196
218
153
207
214
253
189
196
187
195
188
208
194
211
170
227
206
238
189
247
219
218
232
209
211
182
192
152
153
226
189
170
199
156
225
199
170
166
222
172
234
211
186
208
191
170
199
229
191
201
242
153
199
184
196
198
252
156
174
200
167
204
211
201
192
186
213
86
205
227
231
186
262
169
253
210
265
215
161
166
217
283
270
198
233
178
208
163
214
175
180
127
236
224
242
224
236
139
230
175
179
136
202
256
177
168
226
207
214
175
237
247
166
164
154
176
225
223
122
222
218
194
194
216
204
200
226
231
229
185
243
156
202
142
194
190
159
248
137
280
186
203
214
261
188
193
202
205
194
158
198
171
175
170
239
204
186
137
171
242
168
260
232
235
225
175
250
188
212
149
229
191
123
160
194
165
219
205
200
185
231
180
163
195
194
210
211
137
167
236
228
158
266
198
231
150
222
230
169
196
232
179
206
144
198
219
218
180
206
208
228
236
240
183
154
153
190
187
213
240
196
143
218
203
172
193
201
244
192
181
204
155
197
178
201
219
178
207
219
249
196
158
160
213
240
208
204
178
169
179
135
165
238
199
202
265
200
229
160
185
219
214
182
223
219
180
153
160
205
196
211
228
166
196
191
167
188
199
184
232
222
109
175
236
178
197
221
220
142
204
238
157
159
181
214
215
210
129
184
223
161
145
156
156
202
155
198
232
192
179
224
243
187
164
133
262
192
251
212
216
180
205
156
206
239
175
189
193
174
154
186
184
192
248
190
184
180
171
232
198
203
212
210
218
199
197
192
209
203
197
218
138
229
215
177
188
183
160
178
187
223
200
209
228
273
175
204
268
205
193
183
195
214
265
195
251
219
276
155
175
227
200
208
203
201
168
212
197
175
237
149
179
168
219
269
218
143
214
172
222
185
222
237
191
232
118
205
220
191
261
247
161
142
245
162
198
181
253
191
164
209
165
208
237
169
208
187
207
187
234
200
178
182
220
218
231
216
224
216
101
138
188
169
204
219
165
273
204
176
218
201
171
184
248
226
214
163
223
281
261
158
169
181
259
217
190
211
226
212
166
237
221
206
136
166
255
249
190
180
189
255
265
238
203
169
195
214
205
192
158
232
264
179
153
113
204
206
242
221
256
189
215
180
230
213
228
210
201
195
198
171
232
125
185
137
181
240
170
233
164
198
231
226
260
211
180
234
216
171
189
237
209
179
162
212
231
201
248
234
92
153
178
147
229
197
182
197
210
196
232
182
178
204
226
246
228
191
285
250
160
225
214
206
199
216
191
158
224
232
135
159
186
101
162
179
202
225
219
225
229
233
166
245
214
179
211
177
214
238
218
152
212
171
229
241
198
216
238
188
220
248
211
203
181
235
206
224
194
205
180
301
191
194
157
183
202
194
263
222
153
166
145
265
209
208
220
247
209
200
236
124
136
140
225
235
225
162
146
188
154
219
234
257
129
203
177
240
242
174
170
186
157
220
242
155
255
148
155
231
177
192
226
190
173
232
123
197
227
199
162
224
197
238
239
171
207
220
203
235
247
232
221
231
225
200
199
199
183
208
226
181
197
210
176
254
249
225
190
198
240
182
184
171
245
254
193
166
234
183
158
234
219
266
220
227
207
185
184
226
194
232
248
137
242
156
186
157
184
197
235
257
214
175
186
213
183
200
247
193
179
182
182
190
196
162
267
203
218
215
215
170
163
208
166
194
174
154
216
137
242
212
229
253
216
207
213
147
246
245
261
188
218
180
210
207
190
182
153
129
159
215
191
201
186
162
206
197
102
206
175
205
209
186
224
99
218
227
162
193
236
180
160
174
176
151
213
182
166
227
220
197
195
167
228
155
238
221
113
149
219
142
182
145
192
242
230
213
218
242
254
202
190
132
185
167
200
223
224
143
196
199
226
189
245
153
234
226
226
216
218
224
158
223
281
176
138
203
221
190
122
166
235
205
181
163
262
196
149
201
236
85
164
173
223
194
204
131
224
199
153
114
156
182
214
255
191
224
165
182
209
152
190
230
152
179
177
166
203
206
209
213
216
228
155
262
239
122
219
207
212
251
178
177
264
257
188
225
114
187
191
169
207
202
207
263
233
184
203
175
198
222
212
209
213
259
135
215
222
211
184
203
166
167
186
161
219
176
207
231
240
190
202
208
223
232
261
166
171
178
213
176
232
196
276
219
223
211
185
209
222
246
176
206
184
163
214
193
149
263
208
178
216
165
206
198
181
172
192
203
141
175
227
190
212
205
162
202
199
155
177
228
206
267
217
205
217
191
227
187
192
232
173
213
200
192
220
190
161
178
266
213
142
197
218
228
219
214
203
267
136
217
189
178
182
178
143
271
247
201
200
210
163
175
235
222
199
201
192
166
148
211
206
191
222
200
270
234
198
227
162
228
179
174
226
214
213
185
280
200
182
245
198
173
229
241
217
178
179
194
193
265
205
185
159
190
215
198
138
158
201
166
230
234
190
192
177
217
175
225
199
184
195
177
165
188
215
259
157
244
249
185
147
214
226
232
222
224
197
178
231
158
231
225
242
189
182
166
216
218
197
259
218
220
219
187
218
208
213
156
222
225
127
198
197
231
217
159
183
209
223
185
195
201
257
130
190
196
197
176
176
218
165
212
128
177
172
183
137
129
131
207
186
285
240
186
196
278
213
184
208
230
192
208
273
216
172
220
232
196
232
200
217
198
240
276
199
205
267
174
195
262
242
209
184
164
163
249
233
204
212
209
216
152
234
171
226
198
196
170
162
180
184
215
197
200
210
230
181
149
236
178
206
181
164
229
185
175
171
232
218
198
154
203
169
181
220
187
243
237
242
191
191
121
220
198
213
218
189
153
183
159
199
226
122
224
168
171
201
170
178
210
200
189
234
164
170
168
201
150
191
179
196
209
167
228
193
205
222
264
154
158
98
159
241
177
220
200
218
231
202
192
193
203
250
186
161
179
273
233
177
230
218
250
172
230
257
199
172
228
212
254
244
230
228
209
210
201
240
188
231
226
246
261
171
221
261
230
180
255
214
182
150
217
184
207
215
222
230
194
168
193
175
193
181
161
172
202
230
143
214
221
198
214
216
182
194
192
243
211
168
232
231
227
196
222
202
239
127
217
168
186
175
195
193
214
199
202
212
199
195
251
204
180
242
221
208
158
255
210
205
246
245
128
173
147
179
165
216
202
199
232
185
192
164
173
260
174
199
241
241
212
205
224
263
235
154
139
192
192
264
216
207
287
174
208
213
184
213
215
199
196
180
235
217
227
188
240
182
155
145
206
249
225
159
238
172
244
222
195
230
209
158
232
198
230
235
159
215
194
250
230
246
188
187
216
187
180
125
176
210
188
177
220
224
164
228
189
208
220
194
204
233
185
201
183
220
211
264
160
233
203
224
205
240
206
252
218
180
225
135
210
220
176
229
174
167
165
280
145
212
174
193
208
173
158
212
178
190
201
256
244
142
192
200
202
182
177
184
232
212
123
183
202
227
161
212
152
174
219
148
233
193
184
177
215
189
101
186
148
195
173
159
173
164
166
210
223
172
237
205
200
213
206
183
210
203
242
244
210
202
208
197
202
166
116
169
234
235
211
241
188
279
168
208
202
225
149
194
206
198
267
215
207
217
172
226
183
143
229
229
249
226
206
240
224
145
204
187
239
252
244
153
199
219
199
160
178
199
184
193
180
191
179
171
167
252
165
215
205
210
226
216
206
236
224
215
174
142
237
236
196
184
204
179
227
195
220
210
272
109
274
143
188
181
260
185
212
157
185
194
216
211
175
181
174
214
223
196
160
156
107
180
173
205
188
249
109
233
210
130
256
236
200
211
226
250
147
270
222
190
172
188
167
232
165
224
201
202
206
172
196
225
174
186
212
185
167
216
208
131
133
203
129
219
159
180
172
200
169
168
205
206
189
130
235
210
211
204
236
228
226
171
209
160
268
240
207
193
190
197
247
175
175
257
214
178
252
185
169
164
195
184
168
156
233
191
180
253
193
220
196
161
249
214
261
149
154
242
167
130
190
176
193
191
193
224
179
236
148
261
207
270
220
253
215
236
236
197
206
248
190
196
264
182
190
221
212
225
113
205
183
256
166
229
232
211
232
193
220
175
154
202
185
241
200
199
188
165
149
189
167
183
189
221
228
220
245
156
223
193
228
168
210
227
201
212
209
196
215
211
206
191
174
199
225
154
210
228
220
180
210
176
232
192
237
200
251
193
200
159
170
197
227
184
186
177
179
212
215
224
188
268
154
187
215
196
204
191
208
119
239
206
229
159
207
227
191
254
223
259
158
163
235
162
147
209
154
248
160
192
119
207
161
175
249
232
193
184
214
225
235
190
212
230
196
227
178
194
237
252
222
224
187
274
236
208
173
206
250
276
203
228
194
185
193
197
191
147
199
142
170
193
234
218
175
150
171
171
237
199
171
218
225
192
199
225
220
144
146
181
232
210
244
224
234
249
218
145
183
174
265
151
182
247
211
201
156
274
188
166
200
225
224
185
216
257
173
201
184
183
185
233
196
197
101
248
198
199
255
215
212
144
225
151
275
235
274
226
170
160
231
221
219
241
174
210
145
187
214
130
213
202
153
259
210
142
184
222
182
142
258
181
210
147
262
223
171
220
178
167
155
159
154
235
203
208
244
217
158
189
193
180
168
189
208
175
169
143
173
255
264
253
154
228
180
214
202
201
177
228
168
211
243
213
182
212
185
210
171
195
137
162
222
196
229
253
255
201
275
206
141
156
266
236
230
231
180
238
199
203
204
170
248
191
192
179
141
167
246
190
243
220
236
258
236
253
193
151
254
235
212
230
214
213
236
217
233
121
216
102
212
220
205
207
200
190
206
223
141
170
228
144
208
199
223
182
203
177
263
220
219
219
226
218
161
205
203
137
156
179
172
214
206
167
209
179
192
217
196
155
138
236
230
221
147
197
226
172
219
203
200
172
245
151
189
155
239
209
223
232
194
243
186
179
256
186
194
206
220
227
213
169
200
188
147
201
213
182
235
298
212
157
216
187
178
213
159
167
177
168
230
210
242
211
218
255
217
195
205
236
158
213
183
239
203
133
222
165
163
178
195
178
227
226
250
184
205
201
237
192
223
221
146
209
223
187
234
162
215
224
236
136
212
244
208
255
165
201
226
165
241
134
254
176
201
214
200
168
190
223
172
104
133
287
135
241
156
267
139
203
251
109
209
245
205
235
179
226
224
197
213
227
175
167
183
213
213
252
195
203
195
236
203
175
222
169
214
234
194
184
147
190
232
204
134
213
194
219
177
233
201
182
188
177
186
205
222
231
169
222
194
243
202
271
164
158
119
211
185
176
209
188
224
210
199
265
255
213
182
271
236
178
219
166
168
228
203
231
188
239
183
169
252
219
240
226
127
211
210
211
197
202
174
149
232
195
138
205
227
234
194
167
217
238
224
166
210
253
195
141
269
204
179
282
217
189
192
135
220
174
174
228
157
262
249
278
225
186
196
188
241
242
191
172
205
232
218
137
147
234
204
230
173
158
197
188
215
219
201
174
208
245
186
215
215
176
208
228
236
204
186
192
154
235
178
179
188
181
192
162
201
235
259
157
257
207
262
223
185
169
167
218
210
206
220
217
196
204
179
161
191
204
132
217
212
233
188
202
182
154
148
244
214
180
169
244
196
173
224
208
182
223
104
106
159
290
195
136
195
170
231
228
222
231
213
193
208
176
151
200
220
269
223
181
194
138
179
160
154
225
162
200
164
169
139
190
145
207
121
241
274
233
178
203
198
236
193
229
197
177
158
149
218
174
187
177
224
168
187
190
221
215
194
262
232
201
191
118
166
186
225
218
183
209
172
170
184
154
225
242
169
188
214
196
149
185
245
216
154
287
154
204
192
203
198
205
151
235
209
174
196
185
192
237
263
203
195
180
220
158
160
157
213
245
145
195
176
186
205
208
113
145
191
199
208
154
192
202
129
227
197
230
176
162
169
186
237
222
229
268
213
204
223
208
184
213
164
166
208
193
242
252
223
206
256
193
182
159
220
158
159
159
189
185
221
196
229
186
245
161
252
228
195
268
240
215
235
161
157
198
173
253
177
288
172
197
227
183
205
175
200
244
226
212
236
191
213
206
191
199
126
195
147
222
245
237
206
272
205
209
154
213
225
243
192
155
226
199
183
210
184
205
206
227
279
173
206
238
204
228
259
232
187
232
254
211
185
218
180
182
210
227
260
195
278
201
244
180
166
219
225
230
250
224
241
216
205
210
221
225
221
167
189
208
197
215
149
210
227
242
242
248
206
176
243
168
181
154
167
100
197
218
233
207
249
152
187
253
271
156
241
209
157
169
226
198
197
204
219
173
213
229
221
229
158
188
156
185
186
153
236
229
216
219
207
159
247
178
266
207
215
199
231
159
198
210
237
162
182
262
227
217
225
178
221
224
218
194
217
170
209
275
226
280
224
165
189
217
236
200
178
204
247
231
160
251
130
205
240
121
176
170
187
220
216
160
128
245
202
229
201
200
148
267
200
216
189
187
156
232
196
234
184
149
187
192
229
219
195
151
161
224
289
199
206
135
172
169
231
161
178
191
206
247
236
155
194
222
244
171
215
214
251
168
238
209
206
178
219
218
173
232
196
213
214
193
170
189
211
237
229
160
252
221
180
216
144
143
191
196
238
239
176
186
221
230
135
136
194
200
182
229
174
179
152
185
225
159
196
211
210
203
201
205
248
228
239
224
157
221
125
235
212
236
180
154
239
221
201
273
246
198
174
106
207
223
227
202
179
210
203
183
199
202
188
170
152
208
173
183
209
163
233
170
286
254
178
208
223
209
148
245
193
161
233
252
190
187
209
190
253
228
211
120
197
250
262
215
251
138
229
156
200
187
202
173
219
247
226
200
163
155
248
164
176
246
124
216
263
170
196
196
218
219
177
221
210
162
174
190
226
209
195
229
194
185
272
184
199
196
172
215
243
224
209
225
257
194
215
228
217
239
232
149
147
200
154
203
186
220
179
179
162
192
214
247
166
208
234
157
119
232
206
172
234
218
227
195
224
228
223
225
245
222
213
193
213
208
207
240
194
244
231
165
250
146
221
169
148
204
213
195
205
261
171
197
158
209
216
226
228
225
170
206
217
182
178
225
173
157
221
207
265
143
166
203
204
249
201
163
234
228
244
203
251
153
246
194
170
241
219
211
202
144
169
189
217
182
204
216
187
139
199
198
236
217
193
208
168
205
202
211
168
187
185
326
200
224
152
183
215
180
165
135
225
201
210
155
189
212
201
215
230
148
204
236
235
147
183
163
215
246
193
153
150
125
233
179
212
215
166
246
184
234
258
216
152
172
196
213
239
202
177
199
202
215
213
156
205
167
215
222
185
177
221
153
196
207
169
201
251
190
188
179
179
205
176
199
214
241
237
200
267
198
191
178
259
235
170
255
177
188
193
125
220
219
196
201
191
150
202
279
226
201
170
219
218
179
197
173
171
211
252
217
232
207
252
205
162
231
235
251
248
188
225
222
225
179
243
261
189
224
192
186
231
208
230
216
214
172
221
212
208
178
169
162
197
228
243
193
220
239
184
246
197
175
127
179
214
173
179
215
189
223
215
138
192
209
220
193
225
192
160
195
193
185
211
231
171
201
170
212
159
176
181
206
153
153
242
191
199
210
179
225
180
249
205
154
181
239
134
137
251
193
210
171
210
169
217
228
157
249
210
260
146
239
198
206
189
230
218
167
190
219
187
184
274
243
212
216
151
202
203
204
214
172
141
193
221
215
238
215
190
198
178
228
189
210
200
187
204
221
268
149
200
200
269
136
220
178
200
250
223
190
164
177
175
259
179
219
181
234
189
225
185
269
213
194
272
166
196
135
163
151
170
256
166
191
207
212
227
193
224
223
159
172
154
235
166
181
242
176
205
209
167
209
129
161
151
212
196
249
214
255
190
161
183
193
164
173
228
160
207
191
133
220
245
181
239
211
223
268
171
197
162
249
155
226
268
175
227
224
192
258
156
190
214
274
123
213
170
255
240
183
228
186
187
221
205
149
173
143
207
213
191
232
159
205
166
207
245
227
199
204
230
177
233
271
196
204
235
195
276
125
120
197
171
212
203
206
234
194
214
209
212
214
200
219
186
164
215
189
167
235
243
220
174
267
163
235
210
221
231
218
277
244
247
198
188
240
174
189
229
215
150
196
112
242
260
189
194
252
184
206
200
201
228
173
129
134
177
193
148
161
207
234
199
194
186
247
208
210
167
191
176
247
211
182
205
225
180
252
136
238
192
200
199
257
206
186
177
132
216
213
224
171
245
203
111
230
182
236
220
212
165
216
129
112
208
163
219
157
193
200
210
243
215
222
203
236
184
156
236
242
142
256
156
165
207
226
210
210
215
189
200
216
197
192
161
188
230
195
165
196
240
177
156
232
195
178
183
210
188
189
205
214
215
219
231
248
219
209
152
239
227
192
269
178
246
183
148
214
158
167
169
169
202
151
204
219
226
150
206
233
105
213
227
186
244
246
213
162
160
234
192
192
227
211
219
219
166
247
228
180
241
241
201
202
203
168
181
231
176
257
217
179
175
137
201
216
158
183
163
179
187
238
132
143
161
240
226
242
182
214
209
139
162
169
243
232
148
173
185
160
237
263
237
246
188
162
205
211
276
188
157
199
210
191
164
199
215
168
139
223
151
178
210
193
232
160
229
206
192
188
169
253
276
197
202
213
200
149
190
190
214
176
200
242
261
183
270
172
245
183
150
195
209
207
202
208
184
127
246
205
210
229
221
230
229
218
224
184
211
252
177
183
159
188
153
237
197
218
191
225
217
227
179
230
147
219
162
199
217
200
213
206
238
170
204
202
204
178
229
183
173
202
152
174
192
169
214
193
181
177
185
207
256
224
213
186
218
234
203
164
207
217
179
183
210
207
217
193
229
221
188
227
183
203
197
234
248
168
276
201
244
221
234
182
189
156
218
197
268
164
202
185
230
189
185
189
126
245
231
224
203
181
120
182
163
150
235
149
147
194
183
196
188
227
110
219
154
156
255
222
250
208
204
219
221
164
206
241
170
161
195
272
203
200
211
165
172
174
186
175
207
199
206
189
183
190
180
119
192
183
203
190
160
211
214
234
144
186
143
199
196
199
176
241
177
146
232
150
203
181
248
224
238
203
247
203
210
217
229
251
212
231
201
207
248
222
270
203
210
218
187
257
206
188
216
221
205
192
251
263
161
223
214
145
232
222
158
140
190
188
261
200
165
212
275
219
216
209
187
169
207
246
126
192
131
230
198
132
268
188
188
235
216
196
207
227
219
158
183
217
247
175
210
185
227
237
184
175
198
212
219
210
208
235
224
225
189
263
206
264
207
192
174
164
190
215
139
191
162
226
197
179
223
214
154
200
186
180
209
140
184
173
200
174
160
164
230
185
188
205
175
277
169
201
208
147
206
216
242
222
163
178
172
205
161
225
240
188
181
229
220
180
170
218
227
182
263
215
159
209
173
208
200
179
170
223
159
216
197
205
218
209
237
133
173
223
173
204
226
194
205
237
154
190
160
175
229
183
123
244
195
250
263
239
250
160
227
157
170
239
163
203
237
201
240
132
225
147
206
226
154
204
182
219
218
216
217
173
239
253
188
271
220
187
231
192
206
227
182
169
163
197
183
167
230
151
257
233
255
233
201
150
239
190
155
147
274
197
134
161
175
177
198
162
184
229
214
211
183
265
200
195
228
207
230
214
111
140
187
247
213
248
170
201
229
196
216
174
188
202
180
200
230
240
137
217
158
234
245
195
165
216
219
130
172
225
194
214
199
174
239
203
170
159
195
210
197
225
184
192
170
163
252
156
171
250
165
96
264
180
187
210
183
230
231
178
169
230
222
166
193
240
223
225
184
204
205
230
158
252
183
197
184
170
219
206
149
227
164
218
206
231
231
202
232
166
210
134
224
233
159
120
205
165
205
190
241
201
187
223
195
240
194
208
207
229
222
219
183
260
217
254
243
224
199
224
180
149
203
206
162
207
176
174
196
174
274
145
131
138
208
217
207
241
266
246
249
245
196
222
214
185
146
167
222
202
220
194
180
170
256
185
151
181
217
190
136
205
203
170
177
176
194
178
156
108
175
223
239
166
172
255
216
259
193
164
236
185
254
208
178
239
223
138
218
250
170
172
166
226
166
220
240
242
222
158
218
220
196
203
163
209
190
92
193
168
206
247
175
108
118
230
209
199
196
225
193
252
189
200
227
174
226
188
213
214
192
181
238
142
192
238
245
163
205
198
259
238
173
141
226
252
214
139
228
199
156
155
206
187
260
236
167
167
193
210
212
193
219
203
189
153
145
166
192
169
198
252
195
269
148
207
196
239
189
212
247
194
221
247
248
164
205
209
133
263
227
195
196
257
199
230
156
196
212
208
250
173
234
202
249
215
130
284
211
271
221
212
206
249
222
205
242
198
201
213
184
218
171
249
187
196
243
114
201
190
194
166
191
190
177
166
193
221
230
208
204
214
190
208
194
243
209
167
213
204
258
227
173
201
199
160
200
169
186
135
224
241
166
245
198
211
242
217
219
203
169
176
158
203
225
193
216
149
178
268
218
214
213
191
161
259
146
224
128
198
212
256
217
226
254
194
211
203
183
250
189
201
196
232
194
185
161
162
280
161
240
216
195
280
219
164
163
260
157
175
249
222
178
211
243
217
190
225
268
196
178
147
191
179
187
201
171
195
213
232
177
172
224
157
206
233
167
200
189
212
273
204
210
207
247
210
197
223
160
171
212
172
224
204
232
216
158
193
213
230
202
164
192
205
209
203
221
186
222
188
178
193
161
209
242
158
144
195
237
168
216
195
206
260
189
214
162
193
204
226
193
258
207
175
190
260
157
200
193
239
193
218
264
287
165
191
171
239
204
202
245
181
122
150
229
168
186
224
147
177
258
221
232
171
220
155
191
225
227
264
134
253
209
206
192
221
226
194
189
224
200
186
207
185
145
197
223
210
225
211
133
208
191
213
205
212
174
194
179
199
134
251
265
253
159
161
195
116
242
239
210
222
221
212
167
201
191
213
175
182
160
289
252
197
234
236
252
240
171
255
218
184
194
176
206
144
183
181
227
175
195
176
230
188
185
219
275
228
193
206
216
218
183
188
229
206
208
155
242
194
225
251
196
238
209
184
168
182
180
123
230
161
191
213
199
191
191
153
220
240
183
231
155
220
218
210
217
221
222
198
169
230
125
223
166
176
218
204
205
241
228
197
155
224
186
185
174
235
145
222
191
290
215
286
148
179
225
209
214
183
147
115
277
164
138
136
212
217
190
202
152
174
164
187
180
178
170
142
155
175
221
219
208
187
227
185
190
178
176
162
128
181
247
242
123
253
68
159
218
219
225
201
177
168
239
206
202
187
141
154
164
184
203
170
176
180
163
153
207
197
195
231
214
205
154
240
223
182
246
232
194
219
256
201
176
164
251
209
181
142
199
151
263
200
192
225
172
194
156
206
187
168
173
126
190
243
174
258
217
198
188
184
233
208
177
209
135
162
183
197
179
236
210
175
157
237
199
201
145
201
241
188
180
190
208
180
257
236
228
171
177
189
209
196
219
205
208
206
228
196
145
253
184
178
229
188
257
228
182
195
243
211
159
179
226
232
245
194
188
170
150
212
206
164
244
217
245
202
210
258
191
178
181
180
136
238
148
166
217
158
184
186
191
226
191
145
235
156
203
223
268
159
262
197
235
241
206
171
240
159
213
158
209
291
247
203
176
160
140
204
224
183
211
245
189
243
171
161
153
194
201
271
205
225
131
166
148
175
216
189
203
124
205
182
178
192
245
200
204
255
201
213
200
171
278
189
203
201
225
191
215
160
248
215
196
151
228
241
243
171
247
218
179
236
179
135
205
198
222
196
187
231
237
179
163
255
184
194
177
137
230
175
172
219
144
222
187
275
186
221
173
200
245
210
199
186
201
172
169
165
226
214
186
238
149
181
189
227
189
155
254
273
251
136
191
170
145
142
214
192
250
157
251
191
235
165
171
216
157
243
141
212
238
204
178
188
173
220
241
161
227
212
198
187
214
194
164
211
166
211
224
138
205
212
214
168
233
115
154
164
197
184
208
170
222
237
205
225
203
147
186
190
214
181
215
166
159
184
155
171
178
184
100
206
241
115
205
218
189
184
206
263
191
230
200
259
232
230
219
251
148
182
243
134
210
181
172
152
161
178
236
174
185
233
145
172
239
178
167
135
229
232
237
271
186
199
221
258
204
216
222
203
214
170
228
169
193
245
150
167
186
144
239
192
244
194
236
182
199
175
174
168
171
184
197
207
234
212
195
231
213
247
222
226
193
188
210
213
189
217
220
215
235
237
169
226
223
235
173
222
187
225
180
208
167
202
188
197
157
179
216
141
212
207
186
214
179
201
151
239
232
222
192
257
197
225
146
177
184
245
132
179
235
165
262
244
194
181
262
227
152
145
160
153
208
209
240
199
183
254
247
170
146
217
143
131
175
185
177
163
193
225
238
201
187
221
148
187
169
208
150
216
166
229
182
173
205
204
229
245
224
208
225
164
186
226
215
132
107
167
187
221
209
158
165
196
234
249
239
266
272
182
241
198
225
166
200
226
159
253
187
183
200
155
224
131
171
166
170
127
208
194
170
217
196
217
222
222
232
172
207
179
175
159
151
179
148
159
202
240
192
187
159
151
161
170
173
241
189
179
247
221
227
261
217
221
233
251
126
241
186
210
231
190
195
229
208
235
167
199
197
194
231
251
189
250
216
169
216
234
177
228
253
187
189
172
222
250
186
233
205
200
181
189
220
223
258
218
195
211
222
201
145
233
232
190
172
163
210
189
188
232
210
190
232
223
164
204
230
203
130
193
181
210
243
237
209
208
175
173
252
239
183
146
206
219
250
225
205
183
171
185
190
255
239
117
209
283
204
214
207
209
181
138
232
183
216
187
220
170
210
236
158
159
230
176
224
251
233
166
204
229
221
133
201
183
167
160
247
210
201
136
187
224
212
162
250
239
210
279
211
252
177
184
190
274
223
233
221
219
211
205
207
227
175
242
183
160
211
165
233
273
234
176
211
232
213
219
200
163
237
276
210
197
199
155
237
237
223
176
150
214
189
215
209
182
188
198
170
164
187
223
244
146
215
188
153
220
144
184
205
197
185
187
220
230
172
200
240
195
234
228
238
141
168
184
199
217
235
134
225
217
207
187
239
244
243
252
204
206
195
218
196
236
184
160
225
164
199
222
182
197
188
182
214
148
189
241
211
170
180
205
166
175
194
192
169
218
171
168
219
217
174
241
202
203
204
198
193
239
209
227
194
186
198
199
223
171
137
213
183
209
204
130
190
224
190
184
242
175
159
227
208
207
228
207
134
276
150
236
221
168
201
176
173
216
238
188
214
166
152
203
170
208
149
206
239
224
261
151
175
153
158
218
221
209
242
227
139
229
120
151
202
150
167
238
176
265
286
241
199
233
234
197
205
204
199
242
170
192
194
162
199
236
190
163
222
229
229
180
142
141
166
127
215
118
234
236
190
201
166
226
252
189
167
171
255
226
209
223
180
219
204
190
187
232
238
293
224
225
198
227
196
180
231
193
174
205
189
218
199
180
179
115
177
171
256
205
190
202
228
195
224
180
223
223
223
205
170
218
182
260
171
201
253
240
149
209
193
199
223
195
227
198
190
215
252
207
141
213
211
172
159
225
206
194
244
161
199
236
261
170
183
185
233
226
159
206
205
207
211
203
218
152
150
224
231
143
169
238
229
177
211
212
148
210
218
239
223
193
203
246
202
184
202
254
223
273
208
180
199
185
233
195
235
255
267
174
216
231
242
202
198
204
193
181
168
155
192
227
160
168
222
145
148
193
197
189
173
148
173
204
154
199
197
187
164
161
185
221
228
198
132
268
255
226
244
193
171
255
171
225
197
221
178
190
206
162
207
165
285
193
247
181
223
242
258
204
197
186
205
196
174
146
227
205
238
203
186
213
195
136
218
163
263
164
214
190
228
251
206
141
172
206
181
211
170
204
222
158
186
188
201
204
226
196
218
235
211
154
210
221
219
201
209
251
228
211
225
226
242
214
180
231
211
194
195
186
111
241
202
216
193
226
229
205
236
206
223
146
181
216
215
202
278
122
246
177
213
184
210
178
167
203
218
176
220
150
177
140
180
248
139
220
150
187
138
199
227
228
165
216
202
183
249
229
191
237
194
171
212
238
181
186
157
195
181
229
214
215
253
187
178
174
195
208
251
136
250
223
214
173
215
169
135
161
146
175
197
234
193
223
212
214
236
224
257
225
193
202
212
157
208
221
225
192
145
171
247
230
188
202
146
179
136
261
189
210
238
193
227
208
205
163
190
222
224
158
149
205
203
242
215
199
236
252
143
156
257
216
209
264
219
219
241
169
254
187
189
191
145
152
216
301
218
262
179
233
133
182
136
160
185
207
181
135
228
209
235
130
205
161
293
208
235
196
175
203
265
173
239
124
223
166
223
130
184
121
223
188
237
158
204
184
201
215
216
182
284
160
167
237
267
259
160
165
169
142
203
255
194
262
169
211
209
213
204
234
199
232
225
219
170
205
199
219
235
208
213
197
217
261
226
243
203
218
150
224
212
237
225
146
261
247
197
131
163
186
248
186
171
265
214
210
234
202
225
168
244
213
185
200
163
257
225
242
194
179
221
215
214
218
203
201
285
233
189
247
271
197
247
188
196
156
171
188
247
186
217
294
179
198
195
148
199
197
145
172
130
178
167
185
167
156
148
196
201
200
199
180
211
194
174
241
234
217
205
138
271
184
187
200
228
171
185
167
205
276
224
175
259
134
129
223
167
165
167
246
185
213
210
185
249
240
214
192
236
214
226
220
165
225
188
161
235
131
195
145
193
214
212
256
161
203
171
233
186
181
201
211
194
213
242
174
181
228
182
230
216
199
202
159
233
208
230
198
172
247
179
298
227
165
186
184
248
207
207
188
239
216
211
233
281
230
239
191
249
213
197
177
200
189
200
222
262
207
126
200
137
268
163
240
216
149
205
177
175
188
216
191
122
181
194
188
229
225
177
242
213
214
224
142
206
186
187
164
207
209
181
176
180
192
234
213
231
191
155
146
224
207
182
212
161
122
222
300
235
234
242
173
193
203
169
260
205
251
181
212
155
242
214
213
185
196
270
259
237
242
215
178
227
235
226
221
194
225
236
202
146
170
180
238
206
189
197
207
144
238
189
215
166
213
200
170
208
265
204
258
130
228
219
214
224
242
283
229
245
232
203
230
174
216
205
218
221
196
219
272
199
254
241
226
189
220
170
225
184
198
208
146
149
218
190
217
255
193
206
189
203
251
218
224
249
206
134
228
268
176
180
217
189
169
257
182
156
189
98
200
202
218
209
156
184
217
202
198
250
194
228
219
227
118
228
251
238
147
226
228
171
178
234
219
186
215
255
218
184
223
193
145
247
193
126
224
173
175
226
240
245
193
154
221
212
229
163
184
196
176
225
199
184
219
184
179
150
187
200
292
238
235
218
221
211
165
227
194
216
238
257
186
187
179
164
226
196
204
170
216
194
142
187
241
167
256
134
169
169
252
199
161
223
149
155
185
164
211
194
185
224
198
243
230
184
130
225
178
180
201
205
218
212
207
189
162
226
240
227
236
180
209
143
197
184
195
208
207
216
232
207
189
250
155
242
224
231
193
205
178
213
202
208
203
228
171
191
235
258
213
206
196
216
202
224
167
175
137
244
270
185
218
182
155
262
231
155
159
160
178
227
211
187
242
196
200
195
258
183
215
181
214
187
249
131
174
204
135
110
182
186
106
174
245
207
206
162
161
145
177
182
226
200
214
206
219
225
232
231
227
258
228
245
207
234
156
198
162
170
171
250
132
212
207
179
202
215
196
219
176
234
189
178
168
193
204
182
242
133
191
268
274
189
136
196
197
246
199
147
213
198
231
211
177
223
225
170
188
155
247
199
161
192
180
235
194
159
163
189
122
235
234
175
255
234
158
191
224
181
222
287
169
171
172
189
188
168
252
195
179
240
198
198
212
150
172
208
206
206
155
222
238
147
222
164
217
202
133
218
189
208
191
238
218
195
244
219
186
152
226
198
142
192
171
146
185
176
170
259
236
191
178
229
195
222
178
216
195
220
199
175
156
186
190
213
186
195
185
232
175
220
204
246
151
228
222
201
172
225
191
196
242
172
207
232
234
211
154
202
170
215
228
264
233
232
234
207
180
262
206
192
218
148
188
187
182
176
214
245
219
173
209
183
210
189
198
188
220
219
208
160
228
236
175
198
143
250
214
155
180
125
209
237
203
208
176
202
218
180
203
226
173
222
171
167
213
220
250
157
187
200
165
255
158
178
217
192
230
223
133
204
222
220
203
246
212
166
154
258
195
207
211
162
220
194
192
164
229
240
127
151
214
225
286
157
202
155
225
220
213
169
193
246
212
258
159
146
153
258
208
242
237
208
245
188
153
191
242
197
142
143
150
190
215
226
183
222
195
196
197
219
168
205
203
192
152
217
254
272
199
203
175
230
205
123
233
173
230
179
187
206
205
178
183
175
167
206
270
177
189
130
183
255
151
153
177
198
161
187
198
166
171
199
189
226
144
187
206
222
208
200
184
198
193
198
199
172
211
227
255
171
178
225
202
195
198
279
107
234
261
233
235
145
222
212
186
150
206
162
257
117
234
239
232
206
206
241
233
248
199
259
211
170
200
106
180
233
275
288
185
203
186
202
240
216
226
199
268
265
222
261
146
240
256
202
167
210
216
150
196
231
191
176
242
192
232
172
168
157
239
204
179
235
209
234
139
183
181
147
238
190
233
191
227
226
211
148
227
142
148
163
199
231
174
152
253
183
167
267
149
200
227
211
130
226
191
183
210
185
147
234
190
183
219
210
190
255
183
176
192
236
134
180
166
242
153
214
186
164
248
214
188
273
142
154
244
189
180
169
138
157
203
131
139
185
197
212
238
201
268
205
261
213
169
222
216
131
232
187
144
189
224
170
171
227
198
234
192
208
219
235
214
254
256
212
161
213
185
209
156
232
188
164
139
124
215
184
207
230
178
177
175
168
202
241
169
142
184
195
170
94
179
198
194
184
199
174
200
230
179
146
212
233
222
215
193
189
232
207
218
203
179
211
236
176
247
177
190
182
189
230
185
207
118
167
222
177
162
167
213
124
168
176
188
251
179
158
233
161
232
160
223
168
163
211
184
241
231
146
174
262
205
213
192
185
150
179
210
255
256
149
201
226
203
203
205
227
163
139
214
165
200
231
182
201
232
151
165
195
183
170
209
258
188
238
224
192
169
174
238
183
188
209
191
193
189
249
227
192
247
207
205
238
194
178
246
152
192
213
183
192
146
217
150
207
203
160
182
174
223
156
165
217
160
266
264
161
182
151
248
115
236
203
240
215
175
218
200
168
237
148
277
209
198
154
196
187
195
205
184
156
237
242
123
190
151
204
225
211
220
200
208
213
183
269
171
195
194
140
169
251
229
226
207
209
233
222
162
201
194
192
163
119
195
220
184
210
198
196
214
199
239
228
215
213
234
202
186
167
170
241
203
237
213
281
190
155
208
199
164
176
227
230
190
255
167
212
202
228
176
167
196
213
192
215
209
126
216
220
181
238
212
227
193
211
117
198
199
169
235
176
265
169
193
213
131
215
214
174
178
169
244
212
125
141
221
225
146
207
164
264
205
196
190
163
172
196
194
219
267
188
175
197
205
258
189
246
184
224
142
207
240
206
141
239
227
179
196
240
170
214
230
160
226
218
194
168
185
233
140
220
195
161
221
264
190
201
187
126
174
150
207
213
146
183
220
220
177
239
234
179
221
176
228
218
184
195
197
217
227
144
226
185
213
239
173
273
247
151
222
220
197
196
260
208
185
199
258
207
187
168
168
151
244
157
192
171
232
192
135
218
161
222
196
205
181
188
166
210
201
176
162
168
225
262
271
208
174
258
211
197
202
215
185
204
188
171
155
192
172
203
177
179
207
224
126
234
213
180
152
188
210
192
206
225
201
176
226
260
217
188
228
205
165
158
165
251
182
214
228
224
241
190
161
231
198
208
193
163
240
217
303
227
198
233
220
237
230
185
169
180
171
229
206
197
242
185
240
158
166
155
200
207
204
223
202
152
248
197
258
206
144
207
196
150
197
234
168
210
212
230
250
200
234
153
228
194
179
204
232
203
242
174
203
180
141
230
170
210
209
173
252
238
228
225
188
245
215
191
203
219
199
201
230
188
164
218
220
219
238
174
170
170
203
174
177
189
165
181
227
208
219
192
213
229
156
204
221
108
129
205
185
217
184
164
191
175
204
223
220
176
228
198
237
157
166
160
194
180
251
204
174
162
191
184
229
157
119
218
199
211
177
189
225
149
178
222
184
245
227
213
200
272
209
209
224
192
143
162
226
181
169
203
216
215
209
245
196
184
192
255
164
223
224
187
145
227
218
130
163
244
157
178
219
141
152
212
254
212
174
178
207
225
154
235
197
241
192
210
153
230
231
217
192
238
254
162
249
115
205
233
195
257
209
175
237
233
232
234
237
256
170
201
211
182
172
223
195
243
230
203
193
208
239
232
164
209
197
200
105
240
213
154
224
229
285
158
159
203
184
203
199
253
179
196
250
234
191
202
158
157
221
95
188
205
215
202
230
217
253
213
196
178
238
173
155
194
202
181
214
192
166
211
183
155
213
230
185
144
198
188
221
235
246
171
253
191
171
203
223
222
181
197
132
199
274
215
183
261
165
249
190
236
176
209
149
243
155
188
180
205
192
153
230
176
107
225
250
197
166
226
189
227
278
180
215
209
171
208
242
207
192
239
173
199
151
213
192
213
218
233
251
198
266
206
261
227
237
244
225
200
232
157
194
234
184
191
237
232
212
170
173
194
225
210
225
144
188
208
187
149
110
207
191
231
239
233
216
171
185
207
180
206
141
264
210
211
224
242
216
218
197
184
186
169
191
215
201
174
174
175
243
199
167
216
199
185
212
212
217
202
135
229
232
172
149
205
230
214
178
202
197
181
214
231
167
212
183
198
202
189
199
278
196
134
155
200
225
222
235
135
210
228
238
242
112
165
157
219
162
190
193
191
206
186
191
256
202
167
231
126
175
181
224
233
170
162
222
197
190
189
213
227
109
202
189
255
193
117
203
233
219
212
185
173
211
154
254
226
258
236
201
214
49
230
155
240
218
235
181
195
147
222
197
224
172
189
213
188
180
150
163
210
205
222
167
226
274
216
159
147
182
227
146
163
192
192
198
207
181
177
183
171
208
181
190
177
203
255
183
249
179
207
235
147
246
145
190
230
150
168
228
221
156
197
199
229
255
213
152
216
185
196
187
222
207
202
204
241
134
226
207
221
242
252
196
197
263
171
242
213
295
224
172
187
247
252
204
240
148
203
180
171
149
243
191
209
181
202
165
225
194
158
209
252
210
199
201
237
198
201
223
178
206
154
224
196
179
220
192
195
172
245
190
228
154
176
239
185
241
163
201
210
175
221
149
170
184
182
193
159
225
220
261
229
154
189
217
166
188
206
213
230
233
159
161
222
152
215
229
175
149
206
167
178
147
154
220
217
219
203
234
163
212
157
198
246
242
203
167
221
172
200
199
175
219
175
193
189
221
142
240
141
239
185
177
193
141
201
209
227
217
198
199
216
245
266
147
187
237
205
199
205
198
220
148
177
236
219
193
193
203
159
193
199
179
208
164
194
206
145
178
195
171
185
165
172
158
146
215
218
203
218
261
215
194
211
299
277
238
229
214
213
203
140
197
210
202
204
118
191
203
176
272
163
242
240
202
160
186
225
215
205
243
253
208
160
193
210
216
218
169
229
234
188
215
213
218
164
226
142
197
145
240
185
183
130
245
202
150
220
165
105
174
251
222
204
157
179
241
222
179
91
154
214
188
225
221
154
152
151
213
110
182
180
208
157
242
217
236
199
191
169
247
158
185
242
231
244
236
125
201
210
180
206
204
194
152
159
195
211
190
167
231
197
155
214
174
166
219
236
200
180
211
173
147
195
208
201
248
161
181
197
172
232
257
207
179
168
209
216
163
149
189
173
199
291
210
198
217
246
266
242
239
115
225
284
190
165
152
186
226
194
201
216
221
232
205
241
219
233
181
186
196
214
215
188
221
160
178
190
204
179
193
241
184
221
230
198
145
146
214
250
215
271
138
244
195
212
189
138
214
219
144
227
226
228
205
139
188
206
146
248
166
194
258
156
184
207
187
194
163
171
233
251
198
199
231
211
217
144
169
166
236
168
184
246
202
212
218
201
155
183
231
215
194
226
177
128
189
164
223
205
196
260
211
208
225
233
115
199
172
219
184
205
224
174
181
243
178
147
264
245
110
173
200
208
210
261
224
237
221
195
211
179
231
242
177
216
167
198
181
139
190
200
193
165
224
183
184
158
279
186
204
163
189
188
228
176
153
179
207
234
245
201
216
177
156
138
170
216
180
159
231
126
176
241
232
201
155
217
177
153
197
242
229
187
200
211
145
221
192
185
199
199
209
172
245
208
227
129
239
210
202
202
185
178
146
209
200
175
188
218
225
272
158
211
236
254
179
192
150
176
234
237
226
196
142
206
131
231
268
205
243
207
262
189
217
245
213
150
245
227
186
235
206
191
215
187
247
209
207
175
152
228
154
196
168
247
200
247
239
231
130
221
188
173
289
247
176
190
198
196
185
195
205
145
235
227
219
199
202
225
215
197
175
202
259
160
186
246
161
196
168
209
237
220
257
202
172
185
222
189
202
205
238
263
233
163
185
198
213
225
232
187
179
239
228
191
214
211
172
141
213
194
237
187
208
200
236
195
193
230
252
196
251
182
210
225
205
160
181
167
250
242
169
149
191
200
173
262
209
227
197
159
193
119
193
188
219
173
170
235
213
182
223
220
176
137
193
220
266
202
247
196
185
195
274
238
235
175
188
154
184
265
172
150
190
142
199
217
190
171
206
230
253
235
212
249
215
163
225
210
200
158
210
178
215
219
132
225
271
209
208
214
183
174
182
241
235
198
225
232
277
188
235
176
263
171
232
176
189
242
200
252
163
219
224
184
210
207
219
168
256
151
179
220
160
218
141
200
199
232
240
183
179
177
257
142
233
217
224
159
112
159
200
147
139
215
166
147
160
164
175
152
205
209
236
218
218
208
193
205
182
161
102
223
229
191
253
200
252
222
118
245
155
253
167
235
219
181
186
202
140
197
213
216
218
233
198
168
216
177
223
206
182
117
179
207
182
180
219
214
226
173
201
202
212
248
173
178
253
157
163
231
157
246
166
194
191
148
201
222
238
108
192
223
201
162
274
195
211
164
218
220
230
216
238
215
215
168
282
167
205
212
229
161
199
223
262
178
247
222
205
267
203
217
138
201
210
172
264
209
214
186
222
171
200
175
220
171
177
205
251
243
184
167
175
293
136
189
213
201
176
168
244
278
216
205
153
224
243
185
159
241
138
148
208
264
204
183
166
194
119
129
209
127
194
222
218
112
135
157
241
204
249
198
183
220
218
223
172
241
242
240
262
220
202
218
176
225
178
205
244
190
189
179
206
237
199
185
89
235
194
148
192
147
150
180
116
188
222
187
222
217
165
163
172
225
163
185
174
248
220
219
211
212
182
220
235
213
175
251
173
212
162
224
166
216
177
140
209
219
221
249
179
256
233
207
217
191
201
163
186
177
216
232
137
193
187
193
213
240
223
174
195
214
209
174
187
301
232
201
205
146
181
166
165
170
193
181
152
142
240
137
143
257
187
193
255
202
230
251
244
172
190
243
226
122
206
209
185
235
246
231
210
257
210
227
247
196
147
161
251
211
178
249
234
241
263
215
217
213
228
236
193
213
198
207
166
146
193
242
221
173
211
131
222
233
223
154
160
217
223
137
229
242
195
165
220
175
212
172
209
260
219
215
193
215
190
185
167
196
193
208
150
181
240
210
259
213
222
157
219
187
257
206
179
176
209
250
213
274
154
215
147
199
215
124
216
157
213
247
238
253
214
217
198
224
243
178
129
218
227
214
224
259
215
196
234
187
127
167
232
188
162
211
215
207
179
233
162
256
231
153
193
191
144
161
178
101
146
219
239
119
182
242
231
239
236
228
147
243
230
210
235
208
187
200
184
128
236
240
200
184
168
168
243
195
194
155
254
257
211
149
220
196
190
202
169
132
222
214
139
217
247
166
165
172
218
204
231
215
194
248
153
117
251
132
211
175
209
232
234
184
193
137
173
216
176
210
197
124
213
207
194
213
173
182
93
226
209
148
257
259
231
172
202
227
154
166
196
190
213
227
225
193
236
255
191
204
191
134
256
151
216
201
251
233
169
215
213
168
202
190
214
181
142
206
137
241
191
238
179
180
193
225
156
233
184
187
147
203
239
218
249
203
232
168
143
180
243
205
206
145
201
199
207
178
161
158
257
236
190
239
240
214
232
230
173
172
226
218
188
162
268
208
198
183
213
170
124
208
196
184
243
214
181
246
247
181
227
184
153
214
214
231
226
154
286
130
173
182
186
192
196
201
178
209
172
280
194
200
228
215
180
247
124
226
211
203
164
226
159
254
234
222
198
200
260
249
212
182
209
180
299
239
220
265
249
170
183
138
201
175
216
186
205
160
228
172
202
201
175
173
205
179
233
207
166
145
185
237
211
210
175
182
229
210
232
148
226
253
116
189
191
201
149
230
215
108
179
172
164
228
213
184
274
279
166
218
238
169
204
214
231
172
215
213
220
207
227
260
183
194
123
208
197
125
174
224
244
137
222
146
207
173
242
189
211
126
249
206
200
209
275
226
223
247
204
255
186
252
196
234
156
211
144
239
213
175
202
148
193
213
248
179
112
194
198
211
209
194
178
201
210
237
167
196
179
185
167
246
181
172
192
227
236
235
227
170
213
191
145
196
183
263
169
195
200
229
197
179
224
283
193
255
197
236
191
162
172
246
209
192
196
215
183
168
196
149
184
186
156
184
239
164
192
168
175
217
171
140
184
176
212
113
226
157
154
243
216
210
240
126
190
205
217
235
217
197
227
212
243
212
224
192
188
221
209
233
218
189
176
256
222
175
199
193
192
233
222
233
200
270
249
181
206
234
258
203
171
225
210
238
196
247
223
184
147
241
197
223
205
220
218
239
205
208
213
201
203
218
216
143
200
230
196
243
205
211
166
160
194
204
262
193
223
268
220
206
167
160
159
175
171
178
173
92
261
188
170
225
176
215
166
206
185
195
191
180
148
204
181
150
153
202
274
210
223
248
162
174
236
161
151
207
268
222
174
201
140
181
183
150
228
177
201
145
188
212
165
225
237
109
211
204
164
263
103
181
232
229
200
199
179
153
110
184
221
232
171
177
208
148
207
165
236
197
200
169
162
233
209
164
194
213
200
205
192
177
198
215
156
231
173
149
184
123
191
173
222
225
187
178
144
229
162
220
204
208
153
245
211
186
171
267
199
252
205
195
255
182
156
151
168
155
199
210
175
220
154
171
177
165
168
267
221
178
216
226
203
182
217
224
223
127
202
244
263
173
156
189
203
183
181
244
230
241
202
176
171
204
217
142
266
156
146
197
219
215
195
175
238
161
194
184
235
192
146
180
181
164
258
195
190
280
218
237
217
196
197
191
172
217
208
270
216
166
267
233
215
195
179
253
248
122
228
235
167
224
219
229
229
192
238
242
197
191
259
178
194
235
195
147
228
233
251
200
170
202
216
191
210
156
172
208
152
190
229
251
229
199
158
245
186
199
215
195
236
251
203
181
217
188
230
188
178
206
177
212
202
250
171
164
207
155
182
212
177
198
241
235
188
241
217
211
201
182
184
154
220
272
131
219
209
248
203
196
200
199
176
186
170
136
173
161
218
142
216
221
167
220
256
201
140
224
199
217
230
254
185
165
175
234
278
123
143
224
190
116
241
233
197
233
173
239
247
188
191
171
235
210
255
156
190
208
192
181
191
239
251
253
189
260
214
204
185
186
168
197
199
214
254
175
239
161
234
203
158
227
189
162
210
169
179
181
158
222
265
236
221
229
195
209
212
227
208
213
210
222
231
155
155
226
220
150
205
207
242
212
171
160
104
194
230
206
211
182
243
236
201
221
122
158
235
171
193
198
212
254
207
194
211
165
212
230
240
209
200
142
229
267
230
232
226
236
201
179
168
157
215
193
212
188
210
194
229
221
187
159
154
201
238
216
205
233
242
200
167
244
205
268
186
235
206
183
239
196
256
204
130
190
195
234
199
167
200
232
215
226
197
149
194
194
194
148
186
152
207
215
215
242
201
183
225
191
169
176
251
216
199
215
180
252
181
168
269
164
179
215
235
239
183
192
129
189
183
182
228
252
173
178
157
174
243
244
166
203
256
190
209
163
196
215
167
255
207
252
211
219
168
222
266
219
234
232
203
221
213
190
164
270
235
156
182
196
162
162
161
248
193
213
150
177
254
166
225
179
242
133
233
216
161
199
257
225
172
167
221
176
155
170
180
256
139
218
214
181
186
153
201
186
223
288
207
176
183
211
230
193
211
187
190
211
196
170
220
217
222
251
206
120
184
174
210
199
220
222
160
225
230
230
175
212
202
203
130
191
182
206
210
159
171
171
252
218
220
183
217
210
139
221
213
164
214
202
173
208
195
178
192
203
264
100
152
216
232
234
145
151
161
248
224
204
177
182
216
231
208
171
190
215
241
164
150
186
172
189
204
241
195
214
241
225
127
154
191
188
205
234
187
227
257
184
213
213
196
164
248
235
226
266
171
167
236
196
212
192
204
233
164
186
208
138
178
175
278
145
206
177
219
169
221
214
187
224
224
146
244
247
117
206
208
124
189
215
192
208
166
171
231
215
205
205
164
223
189
127
253
147
170
154
146
174
225
235
196
178
163
279
207
206
165
228
240
204
233
157
148
220
159
180
266
170
177
218
202
238
170
152
159
220
229
235
159
213
191
228
194
217
186
216
269
220
165
168
204
196
258
200
157
249
139
222
135
201
219
196
201
158
234
172
135
167
212
204
223
190
285
201
240
171
135
159
240
216
222
207
209
213
150
177
139
250
214
222
237
247
155
254
173
175
167
227
266
183
221
179
214
222
198
193
115
195
211
287
232
194
189
158
173
185
168
288
170
186
266
229
175
231
156
232
178
174
232
165
175
219
189
212
210
165
169
142
171
187
152
256
218
147
174
236
256
152
185
174
185
183
222
147
209
196
229
255
199
136
201
224
228
198
183
154
170
174
234
189
191
190
218
234
212
206
212
195
200
274
252
152
157
183
184
212
200
211
216
164
145
163
201
214
190
182
216
204
163
165
162
229
201
226
199
199
241
249
227
227
217
245
157
238
186
207
180
216
189
209
220
214
184
227
189
169
185
221
253
234
207
208
179
228
192
206
185
193
192
120
205
162
214
221
179
143
229
189
137
206
261
105
198
199
172
224
157
229
213
174
192
195
192
201
265
221
252
269
203
252
251
143
199
200
214
217
241
256
227
207
197
193
231
179
174
205
237
179
211
210
215
179
188
189
169
215
213
183
138
230
168
242
201
248
241
141
187
201
182
135
191
198
221
220
200
280
205
177
261
237
156
228
157
213
157
247
289
189
221
169
174
143
215
201
198
168
210
246
162
167
153
198
229
153
203
217
209
243
131
170
205
232
200
134
202
206
89
164
215
175
252
202
180
208
251
221
238
189
183
251
201
161
181
264
161
176
130
241
149
225
233
236
234
147
200
202
220
294
221
241
213
215
194
168
200
247
193
165
190
208
178
250
149
214
220
227
213
231
144
188
202
189
208
218
230
223
213
168
190
213
246
211
258
234
274
217
176
147
175
115
201
223
281
199
229
252
220
133
193
142
236
182
238
212
183
195
216
251
214
220
224
147
189
258
199
230
153
227
210
228
221
220
179
174
203
222
201
182
247
172
155
197
227
153
260
194
171
217
187
204
232
175
230
218
231
196
179
174
98
211
94
233
182
216
129
189
204
197
158
202
214
176
194
167
214
222
174
229
180
188
179
143
203
214
189
183
291
246
253
214
190
215
185
182
230
137
185
219
189
254
194
237
159
284
172
140
265
223
151
230
228
214
246
241
235
236
184
184
232
178
216
198
166
200
201
169
219
260
207
203
164
179
157
192
168
242
177
258
148
189
206
162
214
207
147
247
225
183
228
236
248
233
223
246
215
259
248
269
209
236
220
153
202
158
193
266
256
130
182
222
171
123
204
166
165
159
222
177
213
251
215
188
178
153
201
215
224
173
199
216
148
184
216
200
185
95
204
228
211
219
152
258
161
187
213
188
159
218
236
191
198
270
223
158
247
179
196
189
189
255
231
227
187
175
225
186
205
208
177
188
182
207
213
245
236
182
245
181
141
200
187
151
152
202
172
267
209
141
173
197
157
206
146
159
205
218
259
212
177
153
222
223
184
218
212
184
178
208
206
168
148
154
187
198
199
129
260
180
203
189
185
229
155
218
220
151
134
193
184
260
238
171
208
192
150
205
147
184
224
234
192
193
194
216
172
232
208
174
164
213
236
188
202
205
230
199
229
202
224
252
239
210
233
202
180
227
143
255
167
190
198
211
221
133
207
187
192
166
236
210
195
156
173
198
269
153
249
214
210
232
165
192
176
151
167
242
185
152
162
162
179
162
116
190
116
160
190
255
243
184
219
166
195
215
194
198
174
200
201
229
201
201
241
143
231
210
211
224
246
201
204
204
208
192
178
163
189
194
222
197
235
166
216
239
199
146
218
225
210
224
179
211
248
190
237
158
175
181
247
196
187
219
156
224
196
221
224
169
152
227
177
177
175
194
210
172
196
185
128
262
181
162
238
228
217
200
176
198
190
153
178
145
175
141
231
211
201
187
172
259
216
229
206
204
265
178
215
195
187
240
206
161
183
211
208
166
157
233
224
150
247
140
140
145
236
198
177
113
229
233
219
218
239
192
233
167
245
204
243
270
169
203
211
203
189
263
213
213
201
232
200
171
192
179
213
205
143
269
156
233
206
187
189
193
204
293
215
260
221
187
117
156
180
235
193
257
191
145
170
199
213
169
164
222
211
246
174
254
187
178
222
108
187
163
184
167
166
194
175
155
189
258
243
206
187
219
238
186
229
222
229
183
202
231
218
227
189
202
212
204
199
220
160
199
207
153
259
231
146
199
214
179
247
216
223
203
214
210
151
221
154
206
151
159
162
131
195
180
164
181
222
181
225
252
226
140
167
161
220
222
221
143
192
258
215
193
264
233
287
246
144
137
210
193
164
227
184
224
164
219
184
204
218
218
266
192
211
233
223
205
238
148
188
242
182
212
138
123
212
167
142
275
195
248
190
264
173
185
200
179
205
176
207
196
231
236
219
239
230
199
183
230
143
183
185
160
184
262
181
186
257
198
234
206
235
185
185
171
217
144
203
155
250
137
203
231
207
220
178
166
214
231
236
205
186
175
247
125
205
222
140
263
216
218
225
151
197
172
234
188
189
174
181
217
185
190
151
144
264
189
230
142
194
244
205
199
234
199
183
221
187
200
173
219
249
220
211
181
253
132
188
170
224
181
178
173
173
247
237
211
236
186
208
225
193
192
154
213
189
257
158
228
219
154
200
293
250
202
193
241
200
159
224
205
174
204
197
231
241
166
194
99
256
200
199
208
225
180
124
190
222
175
233
230
152
243
211
188
169
238
194
255
171
173
186
223
232
204
163
215
112
215
196
175
240
245
133
219
206
116
162
228
172
160
242
197
211
208
190
163
156
150
222
157
196
150
221
226
225
231
213
218
197
212
243
248
204
191
171
200
232
231
199
153
218
200
196
209
150
198
226
198
243
186
133
210
236
219
208
201
177
215
220
245
254
184
188
196
221
197
166
148
232
195
152
212
172
247
202
163
246
225
190
233
201
122
207
207
226
190
219
117
175
208
220
216
145
200
187
164
208
205
181
169
207
171
193
233
198
153
222
198
197
218
140
210
151
244
254
217
190
278
199
209
204
206
224
204
212
109
163
214
269
221
160
210
194
179
186
255
216
174
224
248
209
204
195
208
241
180
194
187
251
225
220
213
231
188
197
241
185
235
166
249
243
231
216
197
206
191
207
166
261
282
208
185
211
193
185
236
174
206
210
294
237
242
215
161
264
95
239
211
230
224
202
182
254
249
195
166
152
172
198
174
199
177
156
180
226
209
214
227
187
212
131
198
222
226
197
224
191
227
177
153
256
237
169
187
181
231
192
200
262
217
202
234
200
211
180
187
181
164
174
253
247
246
152
210
207
154
239
218
245
163
280
150
245
200
236
158
204
191
186
219
170
246
159
260
175
177
201
181
149
206
301
174
188
203
252
192
289
142
228
183
168
247
194
147
207
214
236
170
232
177
261
192
177
216
198
149
205
204
150
163
222
204
214
193
226
146
291
184
198
249
241
235
197
199
224
192
242
216
163
201
210
218
193
183
200
223
189
212
267
139
158
177
167
257
214
127
192
184
231
155
189
212
234
229
237
188
193
227
193
222
224
206
183
187
180
206
206
264
163
151
184
131
198
153
167
240
230
215
159
207
176
284
217
189
267
161
243
259
214
193
210
155
201
234
145
199
239
169
224
197
179
192
179
218
250
208
216
239
160
205
177
216
237
229
207
190
221
246
258
188
188
146
157
241
205
111
206
204
226
165
160
186
206
267
254
189
186
263
202
194
226
225
194
180
137
251
162
227
245
154
246
204
191
244
142
214
152
136
205
207
189
196
235
152
203
227
213
197
183
175
210
210
167
192
188
256
260
216
232
162
211
239
122
168
196
221
148
193
173
244
182
227
184
198
238
214
188
205
205
210
262
141
163
204
212
207
199
126
139
206
147
159
230
174
197
203
197
208
164
189
176
142
172
223
232
197
182
217
124
174
218
205
219
211
196
220
175
243
216
214
135
228
162
173
212
150
192
209
153
194
229
207
189
216
227
249
188
193
247
187
147
251
172
196
205
212
185
230
181
257
205
149
167
192
211
255
145
251
202
172
246
159
226
212
121
180
177
148
228
202
236
280
84
208
189
155
191
176
133
276
209
214
175
172
232
192
219
208
214
243
193
218
169
263
178
270
240
221
186
195
140
211
264
204
221
203
161
241
157
242
249
149
204
199
212
174
265
209
168
195
189
213
228
152
197
171
184
213
160
227
170
226
209
169
176
194
201
167
282
251
190
242
217
192
245
239
173
193
118
213
224
167
241
150
180
247
230
238
176
148
202
181
207
234
206
187
212
188
225
219
150
200
196
208
231
219
218
184
188
217
235
214
148
198
188
215
220
127
228
222
215
209
217
150
216
184
211
231
157
180
186
179
227
234
209
156
210
200
241
194
246
210
228
191
210
196
189
193
188
277
203
235
201
240
232
203
240
196
223
186
171
227
285
171
142
170
210
192
180
234
167
178
162
225
141
185
219
206
141
178
243
189
191
165
214
215
178
214
206
200
160
210
242
164
163
210
229
182
186
238
189
214
211
189
202
199
177
239
198
175
232
270
218
215
180
232
196
197
197
216
172
186
171
244
185
191
218
196
189
171
222
179
220
162
212
214
192
148
186
172
213
249
223
189
233
234
186
157
183
179
152
284
138
182
182
189
211
182
158
202
202
229
145
172
221
209
242
259
239
216
141
163
159
187
191
142
211
213
224
230
214
235
195
230
185
156
232
231
227
229
189
222
227
243
210
221
154
247
160
217
236
236
233
227
218
256
248
235
252
160
167
144
184
203
185
207
230
168
227
175
226
193
225
187
243
212
236
217
158
186
200
200
224
162
180
205
224
197
188
225
137
247
166
185
235
132
143
178
188
197
204
256
170
196
182
145
181
239
182
205
173
132
260
192
231
224
232
248
177
263
229
228
263
193
169
187
229
125
236
137
224
213
180
197
170
185
219
171
195
185
234
236
150
211
168
151
175
171
219
210
232
225
188
132
260
184
176
237
205
130
215
197
186
223
234
209
250
222
170
190
235
169
253
195
212
216
148
288
172
257
178
193
210
213
226
189
218
159
232
179
180
158
190
234
196
199
253
220
163
200
245
209
194
194
159
243
161
189
179
155
164
213
219
234
160
182
214
228
228
141
206
200
137
195
245
160
209
220
235
168
198
220
197
231
166
188
206
217
256
208
203
200
155
206
183
247
199
198
215
236
173
179
187
197
237
241
169
247
173
210
221
215
139
244
218
232
207
167
139
230
175
195
242
191
178
237
187
189
189
241
149
225
222
239
230
184
247
188
167
142
122
175
206
224
255
185
190
145
221
288
153
233
188
188
175
258
224
131
197
243
194
195
250
171
188
233
181
237
299
199
185
238
238
162
177
259
206
146
220
119
237
232
166
191
183
252
247
246
251
209
198
171
221
135
206
225
212
184
205
215
269
154
261
264
229
252
169
212
204
144
279
216
147
230
224
210
213
210
190
212
187
173
181
190
212
203
140
272
224
245
162
187
167
170
210
241
224
202
159
211
178
151
127
254
265
200
154
204
215
170
192
194
167
189
243
178
194
195
190
195
164
193
213
218
233
157
204
181
157
170
197
265
143
197
253
225
187
179
169
181
157
256
184
173
211
238
205
205
158
179
189
193
192
202
251
144
208
208
204
241
120
193
229
161
201
179
199
215
200
160
233
130
225
223
232
238
192
198
237
187
201
186
192
211
136
173
249
224
185
207
201
140
264
238
265
226
246
204
202
249
163
217
259
242
204
185
230
181
253
204
197
268
232
216
217
219
238
191
203
209
199
194
223
187
240
254
214
199
161
156
201
208
176
177
154
180
223
203
231
195
291
188
177
152
228
183
260
206
175
245
169
183
151
172
241
193
231
233
195
152
147
146
241
256
170
202
227
188
262
208
203
263
176
149
213
220
187
237
138
160
205
198
207
181
140
164
185
221
194
206
180
188
191
223
180
172
199
208
224
223
215
228
120
207
226
216
271
224
186
219
227
204
172
173
194
223
205
227
196
196
208
150
165
153
251
184
235
202
205
199
180
222
233
178
204
229
203
206
202
186
209
120
152
126
204
225
248
200
226
161
184
189
261
189
234
246
207
204
265
217
203
218
224
210
225
168
131
144
186
192
146
257
216
172
206
160
186
191
177
203
206
243
173
168
229
140
183
213
222
126
199
257
162
181
212
217
147
184
171
182
244
151
182
241
213
152
171
160
189
255
157
225
239
222
179
190
144
230
198
243
206
166
159
165
216
278
222
157
176
303
203
222
252
276
240
179
231
235
133
152
209
134
227
205
226
235
165
200
211
212
234
181
219
238
123
134
202
194
250
181
150
173
234
196
227
208
192
161
161
177
171
232
133
217
195
210
223
179
174
198
212
229
154
199
221
196
161
223
184
246
160
249
188
189
213
255
236
175
225
177
210
237
209
193
173
222
186
195
239
156
168
217
149
160
189
190
242
164
191
215
149
234
249
191
199
253
225
130
180
191
140
213
199
184
171
205
170
124
233
211
203
167
234
186
266
267
242
159
168
210
174
236
212
174
196
149
187
229
181
131
194
206
194
177
225
192
189
234
216
243
189
201
200
242
201
223
178
245
219
160
200
180
226
206
167
226
242
153
103
251
206
159
229
219
202
175
248
246
158
282
249
206
255
209
225
262
213
237
204
182
195
268
193
280
176
239
247
185
191
166
159
241
191
153
182
205
211
236
222
211
226
244
171
202
215
189
198
269
223
160
209
165
247
223
247
220
242
174
244
166
139
245
259
201
196
190
211
134
179
245
165
229
233
144
179
148
126
203
219
210
167
182
222
153
242
216
216
223
203
210
134
190
204
177
213
188
198
188
162
203
167
209
148
176
217
187
202
209
227
165
194
160
186
175
197
227
219
212
178
215
198
128
234
178
188
172
179
202
159
143
206
205
208
168
151
242
200
220
225
223
170
192
155
180
147
130
117
193
209
233
265
219
202
242
165
217
200
188
214
208
187
228
215
222
226
243
188
187
141
244
142
150
167
188
197
217
195
230
178
256
232
196
99
228
206
203
222
202
198
226
169
142
187
171
246
187
217
206
121
217
225
198
237
167
238
214
191
215
141
124
208
187
208
212
209
217
143
188
193
204
225
247
164
197
234
204
235
240
207
141
210
263
210
178
176
239
167
218
172
249
140
215
226
243
195
191
196
186
233
177
265
174
191
158
193
199
204
215
217
241
195
235
188
269
237
161
196
206
238
221
182
248
256
266
213
217
128
202
261
207
198
211
242
169
216
204
198
186
155
168
274
208
194
182
234
217
181
222
177
178
173
214
185
215
197
186
204
173
198
220
223
293
204
276
174
207
194
193
231
245
185
229
178
209
167
158
212
200
206
184
224
186
192
181
176
218
196
179
227
239
200
174
195
131
191
231
175
217
125
200
232
170
196
219
186
177
218
212
160
157
214
229
251
195
174
239
187
217
212
237
312
176
206
178
193
262
169
170
278
152
227
218
192
241
278
183
188
201
189
118
185
258
216
146
155
184
226
202
201
211
146
211
260
253
173
246
138
171
194
220
191
142
177
158
186
218
252
189
220
214
186
139
141
155
175
228
120
269
243
180
232
239
197
233
235
196
231
192
267
173
167
189
208
204
191
251
166
221
259
251
191
230
201
163
194
155
152
177
267
207
215
221
209
144
245
242
240
170
125
240
140
165
223
191
187
169
244
199
248
154
206
201
248
158
193
206
254
167
223
264
205
250
211
164
171
256
167
215
204
256
238
172
206
204
310
176
214
124
279
168
196
177
193
227
208
214
199
173
225
194
232
213
195
168
240
167
169
188
192
206
227
166
174
229
260
250
214
137
250
147
119
181
224
193
181
213
257
185
133
167
260
250
256
193
171
234
234
262
247
226
147
184
182
136
165
156
179
202
181
155
245
233
180
142
174
152
199
182
181
260
190
186
261
232
169
177
201
168
159
196
156
237
201
221
159
213
175
234
271
157
178
234
198
179
200
229
252
170
175
238
171
115
210
262
255
187
182
175
212
193
217
192
230
206
224
225
225
199
216
228
222
239
231
157
215
204
191
219
176
219
186
235
174
172
183
144
223
195
211
164
213
179
202
194
247
219
167
189
207
202
205
170
278
196
189
235
222
156
184
181
218
272
233
224
199
209
223
176
215
172
185
211
225
181
207
150
236
201
176
217
217
173
215
212
217
254
235
187
184
214
214
226
161
175
236
131
171
196
190
205
128
214
171
156
193
169
214
242
242
244
138
154
173
176
130
198
205
197
209
217
191
250
214
247
244
231
186
171
209
182
180
245
237
162
158
181
217
207
240
234
232
196
205
205
168
262
209
183
224
160
149
211
224
94
175
224
162
167
240
219
242
236
208
224
216
204
230
230
119
241
202
223
213
259
178
187
243
182
234
152
195
153
268
180
191
166
208
205
168
193
211
156
233
172
209
161
226
219
176
211
272
216
217
236
201
207
226
204
192
236
266
196
204
189
237
116
176
186
250
203
168
154
199
224
202
218
237
174
227
175
241
239
236
121
191
223
185
151
236
232
196
213
214
237
215
239
232
205
196
209
150
243
222
182
207
254
156
230
222
175
199
160
198
152
223
215
263
252
217
214
196
258
101
136
169
251
196
147
258
201
211
270
208
175
248
214
245
236
197
239
209
177
217
243
176
221
136
99
189
148
156
198
193
189
248
188
237
226
181
188
220
206
188
209
257
275
215
151
186
227
231
208
219
227
181
223
174
241
188
182
242
261
177
158
192
176
195
152
150
221
239
236
170
198
194
248
161
154
245
263
152
205
207
189
194
215
227
234
229
254
208
165
238
193
212
163
207
188
136
192
215
108
245
229
149
211
191
233
218
195
195
253
246
149
229
202
215
231
220
179
201
223
160
211
213
225
226
194
229
263
239
156
209
174
179
168
236
189
221
195
203
244
169
203
156
273
243
186
194
204
217
227
209
253
172
215
199
178
237
201
165
238
234
200
220
210
141
176
128
197
249
222
133
212
171
152
196
245
213
180
146
192
177
188
225
212
197
181
203
204
111
203
177
248
185
209
180
206
196
200
222
230
199
210
204
201
242
205
204
233
213
190
213
212
98
225
215
213
241
256
160
205
179
210
185
220
200
218
143
270
205
228
247
155
163
197
178
178
238
179
206
174
205
130
203
205
215
234
184
197
218
182
178
194
245
203
214
211
207
155
163
156
156
190
164
184
173
173
166
241
170
181
226
200
156
160
202
148
218
228
245
187
196
251
259
201
226
177
244
255
164
181
221
206
202
201
166
214
275
134
203
178
181
305
180
240
225
207
196
208
251
240
224
223
177
203
209
214
211
278
199
211
117
113
242
236
229
213
228
186
240
117
222
205
157
191
119
183
214
197
221
172
190
204
183
266
205
115
276
220
257
253
175
197
190
218
172
184
223
200
189
190
164
201
185
182
184
139
179
206
203
196
223
228
220
206
159
266
177
239
193
241
224
244
181
202
237
200
205
215
235
229
197
138
166
193
246
171
223
192
204
177
208
136
182
140
253
232
188
210
223
203
215
186
231
228
245
141
156
229
190
241
133
206
161
244
210
149
239
228
227
248
148
181
228
204
179
232
198
181
192
199
236
242
175
224
209
177
213
210
153
184
138
251
148
147
189
190
221
231
139
220
229
246
217
182
205
198
181
140
249
230
173
197
245
180
192
260
238
176
194
232
239
228
169
210
208
208
180
174
219
189
222
193
164
206
170
159
185
200
154
177
171
259
260
180
244
222
145
184
247
157
190
206
194
239
189
206
237
238
199
206
216
144
220
170
251
215
233
205
212
142
121
221
191
206
266
83
226
163
170
188
255
199
135
238
213
252
210
200
253
187
202
231
96
139
218
165
197
223
169
200
221
196
213
214
190
186
229
178
206
189
243
175
145
216
285
208
116
179
176
205
271
218
169
199
217
202
262
236
207
196
223
231
208
219
201
222
178
220
256
215
275
206
254
162
223
183
233
200
179
167
172
174
144
174
173
251
159
221
190
216
203
170
198
229
200
222
162
226
219
207
210
167
137
236
185
209
168
225
161
221
178
165
164
168
205
193
111
197
171
174
209
241
168
160
123
157
166
225
175
214
152
208
100
229
193
145
157
204
218
206
204
202
160
199
212
154
235
188
190
181
262
223
280
103
183
155
250
136
218
194
174
191
203
158
270
226
175
268
182
220
213
212
231
278
241
210
162
141
145
202
215
140
210
196
214
211
219
190
162
258
202
224
184
245
196
126
214
182
242
167
183
237
220
176
243
152
178
207
172
199
232
258
192
258
150
210
217
166
181
138
186
232
196
200
182
247
211
130
224
186
145
219
167
147
179
185
244
153
236
226
195
158
227
221
224
159
250
174
206
171
230
149
242
222
235
156
231
219
238
183
205
203
170
218
163
211
222
169
187
252
240
206
174
182
187
238
266
182
162
217
237
163
166
197
221
227
201
173
168
236
179
205
212
194
195
156
220
166
211
148
247
192
220
177
204
227
194
220
169
211
155
188
221
221
237
149
198
218
202
195
177
219
210
114
205
167
174
186
243
233
180
213
209
281
147
268
161
199
202
148
222
242
199
200
208
163
195
182
243
221
202
215
249
206
222
221
199
228
200
208
146
147
235
246
163
191
206
214
162
210
232
239
177
245
225
239
194
209
128
183
238
235
248
177
185
214
266
221
266
185
174
221
185
176
198
250
219
201
199
204
206
228
190
134
175
172
186
191
231
227
288
222
222
182
139
194
217
214
171
261
227
166
246
213
266
239
221
198
199
158
246
224
174
216
222
180
247
162
235
133
210
246
206
180
246
161
237
124
179
190
146
195
252
176
173
193
218
185
210
168
181
163
190
237
216
215
210
164
184
187
188
188
186
266
152
177
250
238
230
212
176
245
205
175
212
185
232
263
193
200
176
192
227
189
237
159
220
155
151
183
204
206
224
136
199
191
209
181
195
192
193
235
218
198
182
227
139
245
192
148
217
257
212
186
137
185
230
188
212
195
199
228
172
159
174
185
194
228
158
169
266
137
183
164
203
237
215
191
241
227
201
177
255
262
242
222
147
201
187
225
168
208
208
224
178
144
193
211
189
158
202
184
162
125
182
151
187
216
218
216
187
230
212
157
174
184
222
224
230
225
204
181
195
176
155
125
166
183
256
235
263
171
242
215
238
204
226
172
235
249
138
174
153
165
153
224
215
190
290
182
237
211
219
182
259
196
208
241
236
226
215
216
195
222
242
191
211
190
225
144
220
204
220
224
168
210
194
218
223
223
190
215
141
197
217
204
164
237
189
174
196
187
225
223
236
162
206
216
235
202
202
227
195
242
183
150
225
206
183
199
255
186
166
177
216
214
176
263
221
235
212
208
159
207
217
184
180
188
146
208
179
160
185
183
227
196
189
181
209
212
229
234
192
130
174
187
154
185
237
236
155
150
181
184
214
217
191
157
170
196
193
193
210
169
140
206
226
229
176
204
229
163
132
155
232
258
246
166
179
157
197
210
183
176
271
228
152
222
142
198
255
168
240
229
197
222
258
188
205
234
182
221
221
108
211
207
190
181
250
188
167
191
187
212
242
207
188
254
190
221
198
163
218
209
269
173
222
233
205
190
214
239
244
180
154
147
195
201
266
204
222
214
201
180
167
194
215
146
252
213
203
235
218
179
154
176
243
173
236
137
200
201
237
173
184
169
249
199
163
234
200
207
178
228
201
166
213
295
216
230
140
140
179
213
165
227
201
234
181
218
221
236
206
212
208
182
222
228
200
212
251
225
214
210
218
177
179
204
279
206
218
284
199
252
227
199
265
185
173
218
191
168
195
183
228
185
229
176
153
187
171
218
175
180
237
229
179
177
187
151
260
235
232
170
132
222
217
234
170
214
200
220
164
200
194
226
222
223
218
226
237
234
196
132
211
280
166
214
211
161
223
220
183
178
238
197
183
195
211
179
150
194
213
232
111
204
225
229
193
211
155
222
219
228
169
224
239
156
128
215
213
225
195
248
208
234
211
124
222
232
197
258
226
184
237
227
193
171
216
159
182
196
200
253
211
169
193
128
134
156
236
233
179
202
202
229
217
207
216
192
222
218
253
158
218
223
207
237
172
201
185
250
201
182
225
209
157
173
217
210
200
184
197
144
231
202
228
177
212
195
192
171
190
281
216
214
224
219
224
240
267
191
158
194
142
281
196
248
144
178
213
183
204
219
237
231
218
220
183
144
204
251
189
226
258
158
233
267
127
158
208
189
189
241
176
207
201
200
264
220
187
164
151
152
183
171
234
216
211
186
197
194
154
182
185
219
173
252
174
239
211
217
193
176
213
184
192
218
165
250
106
182
187
199
239
219
148
141
144
185
166
210
231
135
224
209
225
202
202
229
182
222
171
194
266
204
202
226
220
178
166
207
211
232
182
155
170
241
251
256
195
240
190
187
213
182
240
196
220
215
241
181
221
196
201
174
246
172
126
207
171
161
188
212
278
209
222
168
199
195
130
238
179
150
156
236
127
223
233
171
226
218
211
221
255
207
165
172
194
150
221
254
189
219
212
201
204
260
204
169
209
224
225
237
200
218
194
159
207
196
165
143
188
225
239
205
193
192
183
226
164
194
148
168
253
232
199
217
215
217
174
143
173
171
187
174
281
207
157
187
165
176
231
240
168
174
206
206
167
257
208
171
193
226
165
194
244
202
198
234
179
226
222
210
199
210
225
182
221
261
178
242
232
198
170
182
156
217
221
167
213
214
287
185
197
191
301
148
213
219
230
191
168
142
222
208
171
266
252
190
189
250
219
209
229
231
198
205
219
235
234
191
204
242
145
195
224
151
213
209
167
224
202
204
178
237
226
192
246
216
281
189
188
151
216
174
184
189
152
179
191
186
224
175
247
177
237
190
250
228
150
196
177
217
223
183
171
213
165
236
224
196
198
129
218
286
198
177
235
163
194
227
215
189
210
196
177
103
241
226
187
219
211
216
185
176
219
195
250
188
230
263
151
180
228
195
203
201
174
201
250
182
205
224
172
209
213
231
180
165
284
187
192
186
187
205
197
250
206
203
129
196
212
196
150
159
190
213
183
252
216
153
177
249
218
216
238
171
155
191
110
215
219
208
238
183
245
252
183
190
212
182
197
256
165
170
226
237
240
249
124
228
189
204
190
182
202
197
190
210
197
211
239
212
152
260
196
183
173
197
221
208
183
235
201
190
239
223
154
179
248
221
203
188
184
152
164
187
200
238
227
200
184
166
197
230
159
279
189
199
218
188
214
219
192
227
214
197
184
206
169
268
271
210
178
223
195
241
175
203
201
199
207
228
178
260
225
217
240
173
227
205
228
206
197
264
221
234
172
167
193
229
166
166
198
204
234
182
122
132
180
188
146
204
239
240
149
203
248
165
213
173
250
152
175
269
177
243
204
211
223
242
195
176
241
248
224
208
288
209
165
241
217
199
196
186
237
249
232
144
253
119
138
222
196
164
179
223
225
204
172
229
181
181
201
244
197
226
173
156
216
142
213
230
186
186
171
170
188
182
171
200
154
184
252
115
196
176
185
168
180
166
129
182
192
207
169
220
208
226
247
173
229
181
170
224
204
229
203
163
209
172
177
169
200
205
260
214
163
183
203
227
263
188
210
141
164
138
224
201
233
221
233
190
158
178
177
216
229
201
214
259
230
160
233
169
258
218
240
247
152
157
193
174
171
181
248
196
183
238
159
155
238
164
218
199
149
236
218
234
221
146
215
234
208
192
180
229
251
160
178
232
177
212
202
237
170
229
226
197
250
175
243
214
204
257
221
171
159
217
190
208
223
264
174
254
171
185
248
216
177
193
224
223
173
237
237
229
129
176
215
210
198
234
178
219
207
215
254
177
208
168
188
220
168
235
254
215
212
214
226
203
160
199
248
205
176
242
136
205
205
234
173
186
196
202
167
223
160
175
212
167
186
273
188
273
216
223
183
213
166
216
229
133
177
238
126
171
173
265
185
198
140
250
225
178
206
179
171
208
211
209
195
189
202
251
165
193
139
224
258
204
153
145
217
213
246
165
184
183
170
220
209
237
174
165
205
133
225
184
192
164
170
256
209
146
228
192
195
171
215
196
195
177
235
203
247
217
222
180
153
154
176
201
211
212
167
158
210
227
213
161
199
218
221
165
239
196
131
164
214
202
179
196
245
155
252
214
232
222
137
219
166
232
240
202
191
193
239
211
197
133
277
233
170
144
198
224
251
251
225
151
240
164
202
207
230
233
169
209
197
244
191
101
225
128
256
238
251
231
242
191
176
163
196
192
160
237
231
207
215
135
139
210
205
171
172
268
256
164
267
139
159
205
151
240
240
183
184
182
231
208
202
184
229
189
220
174
248
215
244
231
184
206
206
160
180
266
161
167
224
172
226
193
165
199
123
227
202
209
187
216
220
262
186
207
219
228
251
170
192
210
141
194
224
205
160
175
251
228
267
159
176
216
188
199
240
179
224
206
225
214
203
186
215
173
213
207
165
191
246
218
217
168
249
150
224
145
205
188
246
188
212
211
202
238
151
184
225
248
240
202
179
214
159
213
174
234
219
208
180
174
125
159
206
177
165
233
231
189
197
176
192
196
192
185
209
216
256
243
219
192
221
221
182
236
177
185
244
229
159
253
158
173
171
177
241
264
192
213
206
228
175
203
248
197
175
179
229
231
222
220
248
185
212
165
200
161
193
250
223
221
216
187
213
253
143
136
247
212
177
172
176
167
210
224
186
228
222
209
226
186
178
203
160
221
162
261
243
211
253
183
209
194
144
192
168
221
209
226
227
237
217
207
237
151
187
186
215
204
184
158
244
229
163
209
273
218
240
141
242
234
187
185
216
131
263
180
182
168
179
187
249
239
190
256
201
163
172
198
162
230
207
139
210
152
202
195
202
266
95
183
182
207
237
215
200
243
248
132
230
176
194
202
214
232
161
238
227
214
179
177
235
213
245
208
193
259
138
234
203
198
153
167
244
249
193
152
193
246
151
200
184
185
168
192
168
264
184
184
226
197
220
208
235
220
202
240
230
245
209
201
125
194
220
206
157
209
201
247
223
201
228
151
164
177
207
171
127
187
176
256
166
123
210
188
301
229
164
229
185
222
175
204
172
146
201
144
182
213
165
148
249
170
224
203
194
223
234
236
238
170
169
202
209
183
169
187
199
165
171
193
192
146
173
175
199
230
225
180
190
198
183
222
230
231
161
163
229
221
208
124
238
191
238
152
194
191
222
179
210
204
225
188
168
205
204
211
145
189
186
245
166
218
261
200
242
166
204
244
228
121
197
140
256
158
233
206
185
185
239
210
247
142
268
264
216
208
181
217
179
243
231
221
173
249
197
180
169
240
207
226
215
148
173
185
166
181
143
226
149
224
273
221
211
187
212
170
156
243
164
212
160
197
263
292
206
185
182
214
224
225
190
173
174
191
224
191
183
208
192
199
172
184
231
228
196
201
200
214
283
227
192
209
211
186
120
172
261
203
220
221
194
272
215
238
212
167
217
238
250
228
200
189
218
164
202
173
161
234
217
261
196
196
165
194
176
202
200
215
215
167
224
185
193
206
203
185
206
257
147
252
214
170
251
232
185
218
210
220
193
246
219
184
209
210
210
181
213
201
252
198
228
250
193
177
184
222
232
189
197
191
178
217
196
223
237
213
158
150
204
240
202
241
150
139
179
200
198
140
288
210
160
211
211
179
223
161
194
244
180
263
227
210
216
157
161
209
216
173
179
196
159
185
242
180
203
196
212
249
197
172
181
179
203
241
186
181
219
164
254
203
201
245
189
176
178
246
207
254
261
237
130
181
181
201
180
210
185
297
205
216
211
235
176
251
155
149
169
178
222
225
193
156
263
241
195
199
176
271
170
233
267
194
213
188
212
123
208
195
235
203
162
223
194
160
182
177
182
239
131
205
203
198
184
259
157
137
265
178
171
197
271
246
224
154
220
241
196
130
206
226
181
199
139
172
207
216
187
170
209
182
193
280
204
225
174
226
197
183
172
241
226
227
196
238
191
192
158
170
216
166
229
199
161
227
230
228
236
206
152
243
213
210
164
240
231
172
230
203
187
273
202
222
192
178
198
253
236
169
164
180
170
212
196
194
207
225
207
219
138
209
194
172
212
227
216
242
170
210
248
208
216
158
229
211
189
217
208
155
258
222
197
199
183
179
204
247
173
132
158
207
211
196
224
132
174
219
155
250
175
162
178
196
253
240
224
203
234
191
164
188
212
202
211
235
237
219
228
244
223
199
165
155
271
249
242
226
179
230
180
212
176
289
181
247
171
235
189
124
251
274
261
165
215
230
240
240
249
170
210
218
176
147
184
159
195
205
204
170
183
192
209
199
218
243
208
202
178
187
198
196
174
200
138
242
111
168
237
190
229
204
284
231
160
191
221
206
201
215
244
216
251
221
228
238
187
191
125
153
127
134
201
273
256
217
215
228
190
186
214
131
228
187
262
197
164
241
205
225
233
200
232
204
200
219
152
194
257
201
207
134
105
154
172
181
143
200
178
139
165
248
218
184
265
179
147
180
250
194
203
169
202
198
188
273
212
150
203
140
204
161
231
251
219
214
164
251
196
167
229
150
221
237
197
245
251
240
184
176
214
157
195
234
202
220
244
209
250
184
226
163
197
164
251
177
208
235
182
239
242
222
186
149
167
175
169
182
131
198
154
211
229
201
91
188
247
191
230
184
213
186
198
219
245
243
146
196
205
229
246
219
165
172
192
253
228
186
223
176
203
245
166
285
193
144
149
200
181
163
215
206
243
256
170
186
167
201
184
206
268
181
145
231
164
217
179
183
210
191
196
183
237
210
222
224
181
211
219
207
246
204
133
191
187
261
182
229
200
220
269
206
227
196
245
187
256
238
249
174
164
147
196
210
178
213
193
202
228
197
155
171
183
198
184
240
168
198
210
158
181
232
215
181
226
207
207
219
187
228
185
174
182
218
179
144
217
186
238
190
200
215
220
221
228
166
210
180
207
199
178
210
187
185
214
235
225
190
225
192
177
191
116
232
194
176
246
162
212
205
216
195
226
192
183
138
166
227
224
205
219
210
192
134
233
162
223
236
253
208
194
239
181
226
244
210
271
164
183
193
155
120
206
195
144
197
201
200
233
251
184
188
251
187
188
165
217
265
187
175
211
172
192
186
221
192
196
143
166
227
236
193
247
183
170
225
210
235
169
205
190
187
198
172
189
217
185
207
208
208
228
230
178
183
151
114
206
231
194
181
144
241
216
224
166
161
186
221
220
169
194
182
217
181
160
214
176
159
193
296
186
178
195
198
237
225
238
202
219
166
189
147
206
234
190
132
168
143
180
176
167
166
204
199
153
186
133
263
203
242
224
200
224
229
234
234
212
220
185
190
193
206
207
231
202
137
190
237
240
252
196
161
189
142
153
227
190
162
165
158
151
219
200
231
240
191
238
223
182
289
239
208
229
150
196
242
147
199
205
205
245
270
256
159
196
188
180
251
234
170
224
208
152
249
218
210
152
249
160
252
144
224
173
207
231
207
171
154
189
238
203
166
181
215
172
177
194
238
162
233
158
194
196
171
192
243
218
257
192
262
102
253
136
238
239
188
137
119
235
155
224
168
227
171
232
263
164
217
109
188
140
163
119
253
172
272
162
208
216
239
234
216
198
173
204
235
174
166
183
168
181
258
233
229
225
147
187
177
215
157
184
199
190
192
225
199
265
182
168
183
210
200
171
228
226
196
186
283
178
191
194
226
154
151
238
208
235
203
196
245
144
155
180
198
146
204
226
211
234
224
206
242
179
211
119
206
281
141
240
160
201
214
210
211
228
232
184
212
239
206
215
227
208
220
247
175
221
233
195
227
135
213
188
170
151
199
177
174
188
142
157
210
266
164
164
177
159
174
174
221
205
224
272
221
243
126
188
181
131
223
233
227
232
195
209
194
208
180
222
217
181
188
163
171
248
230
232
196
166
178
259
199
223
188
261
210
182
183
232
212
258
166
221
224
167
190
166
169
225
219
253
148
161
221
225
169
191
142
160
246
236
242
182
174
190
152
212
192
192
231
234
212
236
150
199
210
170
153
168
140
229
203
269
229
218
240
201
177
121
243
231
168
179
177
150
164
165
188
132
204
215
178
198
165
197
158
120
189
206
165
145
251
210
217
165
213
164
127
131
188
205
195
255
173
218
178
188
192
195
185
179
235
142
183
225
186
211
195
260
211
230
126
197
279
141
225
252
189
181
209
233
226
198
164
196
164
165
195
190
182
180
214
150
180
209
207
210
187
202
205
205
210
215
215
241
147
185
221
255
188
262
190
158
184
203
267
182
211
161
293
218
205
172
206
183
188
247
184
184
212
250
183
241
208
153
240
187
248
155
194
197
222
220
216
187
174
189
250
233
219
203
213
236
214
142
204
273
219
161
163
198
205
225
146
179
168
186
190
200
210
177
204
195
155
153
219
245
234
216
166
167
201
237
221
195
216
237
245
193
219
141
208
194
245
209
176
163
239
242
248
173
165
207
186
258
146
231
216
188
175
194
203
192
203
231
181
201
158
162
194
169
184
165
247
169
267
251
177
127
228
145
228
157
202
238
180
208
148
231
196
198
207
229
202
238
208
224
207
179
190
197
149
203
148
209
227
200
215
237
260
143
183
159
214
195
180
241
194
172
217
169
217
216
245
223
172
135
220
229
163
190
222
207
218
114
204
216
227
242
182
252
177
183
168
240
215
201
223
216
172
271
207
163
249
209
176
197
207
265
209
200
212
237
211
247
211
171
191
294
237
264
185
186
233
168
187
199
166
235
191
215
265
207
177
165
156
141
192
231
158
214
247
243
175
204
267
201
221
143
219
170
206
210
188
257
187
222
165
239
221
245
159
251
173
246
203
241
201
158
147
186
239
233
219
148
227
220
128
188
232
230
175
126
133
263
249
254
153
211
184
172
225
160
180
143
204
225
228
237
164
175
211
226
208
255
188
256
237
155
154
233
227
161
249
219
185
219
205
220
224
166
223
134
184
198
208
235
202
193
238
214
182
198
235
103
179
186
207
214
179
242
191
265
183
258
205
262
216
204
204
174
217
199
226
204
159
171
205
215
207
102
214
168
182
175
193
214
193
200
189
178
187
206
203
250
199
211
232
188
188
178
188
237
228
224
249
177
257
216
224
243
222
178
207
206
245
209
211
232
168
223
143
141
218
204
185
159
208
206
209
194
193
179
251
189
187
173
179
246
186
176
153
193
215
218
215
292
188
191
212
225
132
251
190
186
217
213
223
230
259
167
185
210
196
216
212
167
190
196
226
251
220
212
212
150
178
238
234
172
176
224
211
203
235
213
203
191
150
200
201
218
216
238
171
213
193
179
239
229
181
156
157
237
195
222
256
195
207
228
238
179
186
193
192
174
166
193
242
217
264
195
176
170
147
177
198
206
194
143
177
202
177
240
222
179
234
197
164
217
190
247
244
186
255
204
183
196
270
185
226
228
188
187
152
243
208
269
209
208
227
270
169
146
205
168
157
225
184
198
187
212
177
184
149
185
204
175
225
145
186
189
243
274
152
174
160
258
192
189
136
190
140
139
236
223
284
213
153
261
181
198
171
164
215
200
77
191
226
159
139
224
216
178
222
179
173
248
215
209
209
226
162
223
200
197
239
210
199
210
224
212
184
244
220
207
153
178
179
240
217
245
236
193
255
162
188
192
248
196
194
217
143
239
182
258
200
120
189
201
199
163
151
172
195
157
247
198
204
131
283
239
179
197
217
208
160
205
156
294
176
181
227
245
228
142
161
162
214
145
190
205
222
160
150
240
229
228
226
180
124
179
206
230
154
149
213
183
202
192
267
156
168
171
145
236
215
171
203
258
243
188
246
210
223
153
183
233
188
233
207
241
220
210
192
197
228
215
216
194
234
225
148
174
191
236
187
200
249
143
209
181
208
176
191
182
225
177
201
195
207
187
171
169
142
211
139
264
208
192
274
228
188
241
189
217
273
210
193
183
212
223
189
167
181
221
222
219
131
214
202
254
193
169
260
187
204
240
308
232
212
156
178
221
138
231
120
187
223
148
221
268
202
165
186
292
178
214
221
210
158
169
178
158
230
175
193
194
203
152
209
229
172
144
258
197
188
168
193
243
229
210
196
223
243
245
212
207
235
162
203
210
191
199
177
199
181
241
264
214
235
179
216
151
156
216
206
228
227
227
234
200
198
169
192
166
216
190
179
174
136
160
187
171
145
188
136
190
206
173
247
170
230
250
210
215
256
200
200
215
202
187
211
189
230
168
197
140
164
154
180
194
219
217
157
204
185
194
205
186
224
191
186
194
182
169
258
242
232
196
140
206
192
179
245
212
212
225
228
185
173
178
217
227
172
187
222
196
174
166
234
243
204
142
223
182
195
185
241
233
131
208
213
195
196
161
169
258
164
211
255
217
244
255
200
208
200
246
240
205
243
162
242
198
180
215
144
193
185
231
195
173
258
220
166
181
190
133
230
232
260
245
263
204
149
230
211
219
216
205
209
258
161
270
228
248
221
224
240
204
202
108
250
162
208
171
251
218
223
235
191
218
139
206
214
212
263
224
196
161
203
266
245
166
138
179
201
184
191
230
149
191
173
200
238
217
202
209
224
202
192
224
211
253
158
263
218
186
203
229
193
139
193
179
256
160
192
245
190
146
263
217
169
231
236
239
191
224
227
192
141
174
163
233
242
207
161
199
200
167
134
154
218
186
167
174
148
168
180
235
208
163
186
213
205
195
173
201
159
229
198
224
231
198
160
175
201
216
244
219
224
236
236
219
218
184
162
196
254
180
187
241
193
184
201
259
187
214
176
208
208
195
167
97
241
227
162
228
205
246
254
213
176
247
181
184
214
250
161
256
147
189
235
181
209
189
185
199
170
198
188
222
228
194
209
192
177
245
234
221
163
214
220
142
237
190
178
122
245
199
204
159
180
187
222
163
163
137
212
260
214
201
207
223
242
168
188
130
142
165
217
221
173
232
195
217
247
192
178
229
219
162
226
132
248
259
205
168
152
244
210
191
170
201
197
230
188
199
227
265
196
257
245
148
216
217
206
219
232
136
158
259
150
188
236
203
202
203
197
188
253
160
193
192
239
211
212
222
152
212
144
185
185
197
171
238
174
214
209
148
205
208
187
162
186
177
242
193
228
172
221
185
213
204
170
191
199
154
240
249
140
253
197
160
166
194
174
193
240
139
161
188
162
207
192
167
225
250
150
179
222
133
239
190
193
231
217
221
179
192
182
246
180
210
248
171
199
171
161
223
122
260
199
249
200
213
211
220
265
244
227
149
211
242
150
213
247
254
253
221
157
219
212
185
186
182
223
169
195
252
142
159
195
219
132
168
204
157
191
147
236
192
237
216
202
161
211
204
201
262
182
207
138
228
250
158
203
204
144
196
237
201
208
205
209
233
169
245
233
231
192
185
183
218
183
139
211
156
139
170
217
194
210
145
201
239
206
247
180
189
225
188
228
194
189
222
224
243
265
252
221
187
206
166
224
205
224
176
110
198
206
146
209
149
241
194
248
220
200
157
174
202
189
227
219
224
157
215
196
209
199
202
155
284
202
234
217
260
221
198
221
86
188
204
235
240
161
237
179
183
182
208
212
201
200
229
237
232
193
205
191
240
220
139
212
216
243
269
201
233
256
254
233
182
220
156
225
254
243
255
125
230
257
182
201
230
185
192
182
221
175
266
203
188
253
139
202
218
110
135
177
135
191
224
204
194
186
159
244
250
201
216
212
240
216
218
200
212
186
194
187
198
220
207
169
206
226
257
214
214
235
242
173
176
185
239
155
174
281
248
180
122
201
216
148
222
186
186
168
215
183
211
209
167
153
200
177
189
206
190
206
206
207
191
196
185
158
176
243
188
223
231
166
178
219
187
218
233
204
227
218
260
192
216
174
179
171
149
170
193
199
195
207
273
193
212
239
266
257
263
193
172
195
197
197
225
178
180
175
218
178
201
225
170
167
207
171
142
201
246
234
203
191
140
110
237
225
161
211
198
203
187
220
118
158
204
178
171
224
214
157
232
219
223
187
184
168
189
208
204
258
188
235
198
265
159
170
180
162
183
222
139
223
224
201
201
191
167
197
146
185
186
130
213
241
203
98
237
205
193
194
190
179
252
210
181
232
225
210
225
218
242
147
214
206
232
221
146
214
240
210
201
190
250
230
236
227
184
260
202
146
222
249
173
191
269
200
246
248
246
211
290
181
260
219
283
259
239
215
208
258
196
177
293
234
193
249
192
169
216
194
176
170
162
254
256
133
198
223
179
175
149
245
181
199
209
196
186
196
182
168
238
190
171
143
167
175
248
219
186
216
120
231
203
146
219
184
160
162
156
212
178
171
162
240
237
190
227
163
211
182
126
212
252
252
222
191
259
204
218
213
210
208
234
258
158
207
183
163
193
235
175
216
240
219
189
143
225
174
145
173
235
225
211
247
183
218
142
222
231
153
207
255
162
234
207
140
192
226
192
231
232
141
216
173
167
228
202
187
235
200
205
166
233
275
272
149
178
214
218
252
171
158
167
196
238
256
174
229
243
186
220
183
180
220
198
252
263
151
226
171
237
220
154
239
151
254
162
211
202
119
268
162
219
222
219
185
221
186
244
207
130
206
174
173
171
144
196
202
184
186
116
145
248
213
260
206
182
210
169
195
170
254
156
165
244
207
199
209
251
214
203
225
231
220
254
176
198
176
140
237
191
205
284
219
185
191
180
265
270
183
164
240
193
199
188
191
163
207
203
239
150
243
223
204
172
202
192
216
200
180
149
202
227
246
199
201
164
143
254
206
174
211
175
181
191
219
218
204
146
208
221
212
138
200
210
182
230
251
244
236
145
201
164
228
163
214
175
227
252
230
215
253
175
188
109
160
133
218
201
236
240
214
172
192
265
240
155
111
179
186
195
177
186
184
185
115
278
238
246
229
183
242
204
199
152
204
214
210
213
169
213
182
229
205
180
168
225
111
239
156
257
232
188
170
198
219
188
260
165
225
196
184
157
191
145
270
167
225
191
234
151
210
242
192
234
230
244
160
244
164
174
214
187
193
229
233
253
208
196
208
210
189
294
121
198
202
171
210
178
149
138
238
147
192
186
201
173
234
212
170
203
164
205
192
170
184
246
213
174
167
250
238
190
193
194
248
216
148
169
248
184
208
158
183
200
163
189
175
208
195
192
219
170
168
192
183
190
268
227
218
175
186
234
190
248
159
174
224
218
191
225
169
204
186
174
209
169
167
214
206
181
217
214
208
196
175
219
220
222
207
179
249
193
179
171
227
255
214
194
139
183
204
220
220
185
166
201
241
216
200
144
209
196
224
174
181
207
209
155
259
199
205
187
187
234
232
211
267
250
191
177
185
223
182
276
232
270
215
201
206
157
205
251
168
200
239
207
182
202
219
231
218
210
241
262
206
229
223
195
223
194
169
205
206
233
187
203
233
260
179
252
229
252
189
174
226
205
166
243
114
197
205
182
234
199
221
146
152
171
215
150
212
186
142
199
277
198
212
269
155
181
163
218
251
215
135
121
237
184
234
217
196
185
212
194
225
217
235
207
173
166
181
208
152
199
249
207
271
195
154
211
172
183
164
173
204
146
209
181
194
232
221
179
224
138
186
245
178
154
258
242
196
238
246
216
154
169
243
151
186
259
262
248
218
210
276
213
258
225
204
240
157
228
214
241
226
234
188
199
238
187
206
196
204
220
206
241
230
141
199
175
220
189
204
184
239
143
110
246
181
158
195
220
206
246
248
222
265
202
205
172
214
214
238
200
222
197
239
164
247
240
193
183
202
190
148
201
201
219
183
223
229
199
135
180
185
122
239
225
226
204
188
269
213
235
153
185
232
209
202
157
127
166
222
218
147
221
227
244
226
243
184
189
268
192
130
202
147
173
205
199
185
264
179
225
135
234
220
181
221
227
228
195
137
173
161
274
157
188
149
200
228
236
167
253
166
157
186
244
197
185
199
225
173
229
215
206
246
190
158
229
189
158
139
178
244
215
230
181
230
207
194
230
210
208
190
164
197
242
174
191
208
173
162
221
241
224
236
242
216
216
188
219
252
182
193
191
216
210
218
150
217
218
165
173
199
222
229
233
223
184
205
201
214
195
190
212
184
236
193
181
216
174
244
193
176
178
167
239
204
203
177
169
200
277
170
248
188
179
188
194
208
203
224
142
218
200
226
181
170
206
216
148
219
250
171
206
235
200
186
241
222
222
240
220
234
221
220
122
261
191
218
178
209
223
285
186
182
228
181
222
194
203
155
175
177
170
193
215
234
217
155
218
186
245
196
197
191
191
234
193
197
249
194
129
197
208
201
218
163
218
201
223
207
274
235
261
222
230
187
218
175
169
241
203
172
166
207
250
220
219
162
127
153
284
216
192
251
243
161
264
239
233
132
170
155
209
183
220
166
317
173
160
215
211
227
192
228
144
190
211
247
219
191
265
207
160
163
171
181
194
243
224
173
219
165
173
174
189
249
205
170
156
186
197
213
217
134
234
192
182
237
265
262
154
181
167
150
200
230
105
202
171
174
127
269
193
166
213
232
203
178
270
210
198
160
157
160
247
192
241
116
173
246
224
180
202
232
152
227
239
233
251
127
220
263
196
226
194
213
221
203
193
233
217
230
203
211
170
179
198
243
213
158
197
203
122
240
186
239
264
214
216
178
166
238
202
225
194
166
165
243
135
232
230
151
230
266
271
211
133
152
212
220
187
194
196
186
256
203
169
195
233
179
237
131
219
164
225
123
149
226
212
119
151
188
184
220
244
176
222
209
224
194
231
186
277
205
205
187
225
195
202
186
161
154
214
186
186
126
211
240
231
196
162
161
182
190
223
180
203
141
226
211
208
196
238
163
188
238
222
169
251
222
209
228
232
207
214
221
262
182
151
256
195
178
179
220
140
185
171
210
194
232
194
210
184
235
190
166
198
212
253
201
168
201
167
243
224
181
232
204
191
175
198
230
179
162
178
236
166
240
173
211
256
257
141
217
211
153
194
248
210
210
171
197
151
183
190
220
216
273
209
168
166
250
120
123
202
258
180
186
214
166
224
152
250
219
227
192
187
167
244
204
181
215
224
217
146
186
212
231
194
205
188
225
181
263
246
173
219
250
200
218
223
252
187
200
233
178
162
246
117
190
244
207
142
244
239
134
163
180
147
177
239
197
211
199
224
187
228
194
193
225
213
146
254
206
248
270
139
228
181
215
254
224
167
181
156
244
264
195
224
178
207
253
199
174
225
187
205
200
239
199
178
187
187
236
234
187
185
177
218
193
189
191
213
242
212
195
203
173
158
180
211
240
197
195
186
167
159
214
237
199
170
269
205
144
201
212
258
96
228
208
169
200
204
221
195
237
193
173
173
206
247
192
167
246
135
204
142
257
235
180
280
112
230
222
228
213
169
205
169
228
160
186
174
203
198
167
174
219
254
190
175
213
237
188
199
191
139
226
152
207
224
155
196
187
180
149
209
196
183
178
185
216
215
231
253
241
248
225
189
142
236
192
189
209
211
184
238
194
129
202
208
201
181
213
175
197
160
179
177
173
183
229
179
187
192
186
265
192
250
183
202
144
214
215
176
198
202
178
206
244
201
203
183
187
243
203
176
253
196
180
176
206
177
122
192
174
239
192
220
181
171
186
149
198
184
196
221
209
217
228
232
190
179
123
208
177
154
162
237
200
234
206
208
261
152
256
235
259
244
212
226
219
135
227
176
243
210
233
193
206
187
163
189
214
194
149
146
206
174
133
182
232
143
182
208
288
133
192
213
232
201
198
187
254
206
199
254
281
190
178
189
222
223
210
250
217
202
186
248
194
249
205
167
261
185
241
225
197
163
193
186
186
184
249
236
177
213
199
189
189
201
250
136
198
230
211
213
203
211
123
161
199
268
182
233
153
181
205
220
152
180
154
202
129
243
235
228
197
156
150
183
206
205
191
199
147
247
136
262
178
188
190
195
205
205
149
221
222
145
171
192
241
213
201
220
203
164
160
159
206
209
221
148
209
176
187
192
200
199
219
164
227
158
229
243
232
201
224
211
215
133
248
218
203
206
158
125
196
116
160
262
174
220
174
151
216
193
220
184
252
200
155
184
167
224
226
194
203
212
185
237
147
238
252
192
189
222
156
174
186
129
118
166
214
175
228
226
213
232
185
212
222
169
219
190
182
221
202
212
226
201
237
199
191
161
234
222
117
192
231
185
235
170
214
191
221
231
217
248
178
222
174
181
190
245
188
218
223
189
202
144
218
158
174
194
128
222
255
242
196
198
212
210
209
214
213
211
270
235
216
229
207
173
245
164
145
216
159
227
183
160
227
191
102
195
227
208
215
191
179
201
223
227
215
154
246
168
177
186
251
212
234
246
192
226
190
124
249
236
203
206
177
168
196
177
163
206
226
205
185
179
129
200
199
188
224
193
266
124
195
225
240
222
207
149
251
245
215
203
247
156
151
210
122
196
202
154
188
224
178
224
151
198
185
187
255
223
248
273
182
183
235
221
197
215
190
208
237
154
154
216
187
208
183
228
177
214
209
176
231
222
205
191
212
244
144
259
215
213
222
212
223
209
153
169
171
216
195
153
243
162
135
188
220
191
179
225
169
142
153
225
238
211
222
174
193
188
183
231
184
211
181
242
178
199
219
204
203
205
203
202
249
210
208
221
213
223
106
227
212
130
218
230
241
196
244
181
190
163
180
219
138
179
223
160
138
160
202
221
221
254
224
239
248
198
200
148
159
190
221
253
257
206
174
239
179
155
126
207
201
143
184
203
191
167
189
198
186
242
212
210
227
227
199
248
214
238
220
196
134
172
175
247
197
160
204
198
179
205
219
183
184
203
273
251
201
225
221
242
176
165
168
190
219
203
258
181
204
167
214
152
187
196
168
203
204
201
216
197
176
219
166
178
197
211
135
235
256
181
239
162
213
193
226
222
213
248
139
196
136
153
191
224
155
169
187
202
212
194
190
221
231
238
187
190
200
206
228
187
220
195
185
161
259
105
209
127
228
251
212
239
208
223
209
228
198
247
254
189
167
189
251
241
222
231
248
195
238
234
212
144
250
190
206
235
187
211
172
202
245
226
193
231
255
218
197
219
222
173
233
218
189
202
128
189
176
272
211
206
220
217
237
206
153
189
132
214
249
224
191
247
167
191
152
212
145
180
175
241
178
237
182
229
224
214
189
228
242
195
217
182
246
233
206
126
209
209
127
224
214
204
179
193
191
215
221
217
221
242
210
176
146
226
151
199
173
213
263
149
192
202
209
191
229
186
212
192
273
227
187
203
124
193
226
125
181
148
165
189
205
208
151
190
235
172
182
240
171
136
218
209
192
202
162
197
167
233
260
239
217
172
216
196
238
222
201
174
144
147
228
191
219
174
233
191
179
218
138
237
190
245
143
175
211
159
182
238
166
132
219
263
178
225
151
188
200
223
241
136
164
199
217
255
213
162
213
218
220
201
190
241
223
199
256
222
218
162
189
213
168
187
197
193
240
232
276
195
224
186
265
184
259
248
167
181
151
105
187
186
165
234
127
188
203
161
108
166
222
183
206
192
204
127
205
212
174
214
172
225
135
236
231
211
147
239
214
199
169
218
204
172
148
199
159
222
226
221
183
249
182
261
235
165
88
164
171
125
193
187
208
229
221
160
218
196
218
179
172
145
217
180
168
195
185
217
230
218
236
221
192
217
158
287
273
236
260
231
155
233
229
206
222
251
234
160
181
204
212
176
190
214
181
228
173
258
189
241
148
197
200
205
135
234
198
233
234
172
189
210
172
169
218
150
147
251
180
205
247
205
254
136
180
217
182
237
161
183
244
208
198
182
288
239
209
179
222
144
157
204
151
178
197
195
250
233
240
165
128
225
234
182
159
256
212
159
238
250
188
236
212
267
157
195
235
135
237
219
218
244
175
119
267
201
217
187
214
209
222
203
254
218
186
116
218
195
145
184
129
218
155
227
239
241
150
201
231
221
204
184
154
215
201
239
209
185
219
237
150
277
205
202
237
221
198
254
179
160
189
193
183
293
216
200
243
177
199
148
253
227
249
207
242
218
231
183
227
197
198
184
270
250
182
212
210
174
228
202
161
217
237
183
191
227
224
170
201
205
162
251
211
232
175
195
239
218
239
219
195
184
199
135
223
218
226
217
142
259
201
230
224
214
148
224
186
134
150
144
174
173
199
226
184
163
143
202
193
243
207
251
180
163
184
255
243
166
196
252
219
183
220
193
185
227
196
259
219
148
195
221
194
149
194
204
187
175
188
223
234
183
171
128
179
164
138
168
175
185
238
281
152
173
219
153
229
167
213
184
171
192
208
201
204
219
200
210
164
210
228
233
183
190
168
168
188
181
257
209
221
198
195
184
166
222
211
182
248
245
130
177
257
181
206
185
247
194
232
199
183
181
236
170
257
222
164
254
180
220
124
264
250
142
227
170
226
157
185
223
240
188
148
210
201
206
218
152
125
191
203
222
162
165
196
194
183
204
215
177
241
267
179
165
181
205
188
214
253
216
206
156
192
168
259
180
233
153
194
189
134
206
169
267
213
237
132
177
183
192
213
213
261
236
228
246
231
283
228
185
190
173
224
187
192
127
153
182
203
193
232
186
203
170
198
251
224
177
214
198
242
235
196
228
211
255
242
219
220
274
155
218
259
136
186
196
202
205
221
198
221
228
157
207
182
184
164
229
206
242
249
192
207
196
180
158
243
171
194
130
202
226
203
185
214
115
167
196
229
204
138
170
184
208
242
201
157
218
178
159
187
145
253
248
212
158
205
178
253
190
206
167
153
174
133
215
209
238
100
244
265
210
278
246
176
183
215
171
192
259
226
215
208
243
217
240
130
181
157
165
234
165
229
222
163
167
194
207
232
170
201
243
239
206
192
205
190
222
249
225
241
160
222
183
233
179
248
201
240
242
220
180
176
204
151
196
256
208
197
227
162
199
224
198
196
190
265
206
215
236
179
192
225
167
251
222
240
252
218
219
205
158
228
201
214
181
205
209
222
268
217
201
195
258
193
218
192
181
228
194
158
162
222
164
227
202
194
168
209
127
257
156
191
189
179
224
186
140
206
255
152
219
237
224
202
223
229
214
181
221
207
229
256
254
221
201
236
95
222
171
158
229
240
185
183
232
204
256
192
193
203
204
143
213
223
198
206
214
243
235
209
202
163
167
217
195
178
180
205
263
192
220
155
149
185
229
188
216
221
231
176
218
212
161
224
177
235
211
201
163
216
181
195
181
153
262
191
216
207
216
143
231
201
186
199
213
231
160
251
216
220
155
189
216
229
185
188
166
189
194
197
235
218
178
258
224
161
270
209
207
219
163
215
224
199
235
179
222
156
218
227
191
193
148
260
136
232
235
230
228
166
196
200
232
164
214
225
199
185
175
235
185
258
224
202
209
213
218
198
244
249
207
152
201
214
193
202
212
186
246
172
183
203
236
246
212
233
210
237
143
242
260
224
200
204
250
148
264
231
245
188
245
234
228
142
189
195
172
210
185
227
241
162
178
191
228
227
247
160
182
140
172
153
163
156
225
153
203
206
164
199
199
161
228
216
221
252
219
210
171
215
217
183
191
238
235
218
238
159
150
204
170
203
160
197
236
222
142
189
229
190
219
183
192
169
181
231
160
199
177
168
233
144
229
213
237
156
236
127
227
241
241
172
147
180
171
129
244
194
207
179
192
219
185
165
222
167
164
219
176
217
149
185
257
154
208
255
244
207
240
176
184
194
206
189
248
242
222
239
191
209
219
185
174
223
198
172
196
192
227
160
184
212
143
146
185
193
202
245
266
247
205
187
188
200
213
233
200
203
204
163
179
126
184
152
177
183
190
197
246
234
211
186
235
217
226
211
161
217
181
200
195
150
141
231
146
246
188
224
203
201
243
265
214
209
229
212
238
231
204
113
214
158
195
212
192
182
224
214
197
277
251
194
184
180
161
214
253
225
249
179
249
184
212
190
155
173
256
182
247
269
287
236
161
198
182
218
230
231
183
128
208
225
216
206
187
247
167
138
253
113
216
223
205
183
129
253
148
154
231
182
208
146
225
142
242
164
114
226
198
154
178
268
196
192
221
208
212
186
264
175
200
124
144
192
224
178
184
231
209
226
262
184
124
166
183
225
221
172
217
229
181
216
120
210
187
219
226
176
243
183
185
159
205
267
223
162
211
177
194
173
241
206
159
170
208
203
188
236
210
159
128
226
191
224
230
183
205
189
142
181
220
187
165
208
223
206
245
234
167
181
167
191
210
222
226
184
190
216
138
224
189
162
210
169
207
187
134
151
216
237
145
191
246
264
135
179
159
252
212
181
161
176
244
199
221
226
206
187
226
235
193
178
156
182
223
184
220
209
180
200
204
239
180
205
165
186
188
230
200
181
268
254
227
207
182
189
169
231
179
223
214
227
144
203
161
112
227
227
121
147
244
165
200
234
210
254
182
201
262
244
210
131
220
247
270
224
210
244
154
271
230
213
254
220
127
141
226
194
198
150
264
194
216
211
175
219
182
225
119
178
207
198
219
208
199
212
256
181
238
194
161
185
198
214
220
204
224
240
199
247
179
240
184
190
171
173
212
127
195
207
190
264
234
211
138
186
232
169
128
223
204
179
258
198
185
228
239
159
233
225
210
160
202
163
195
219
241
174
166
231
227
144
134
221
200
211
188
170
244
195
208
201
132
229
190
178
217
258
258
255
217
155
222
244
250
184
166
240
274
171
142
184
194
207
220
177
182
197
168
124
228
257
241
141
179
197
209
207
186
201
192
183
235
208
261
186
178
204
231
180
207
179
217
283
227
162
231
188
221
184
204
207
215
246
219
198
198
241
287
204
191
170
194
210
231
232
225
193
177
223
182
236
190
212
221
197
267
218
189
187
133
219
177
250
268
175
176
217
204
269
211
183
246
246
181
261
150
182
238
166
241
255
208
289
188
200
222
195
171
146
147
235
201
181
177
166
204
192
225
118
132
225
212
237
216
235
200
186
224
213
213
183
194
221
223
245
224
210
203
164
192
165
155
244
290
247
182
221
237
178
233
137
158
183
198
226
162
190
185
200
174
247
179
239
173
182
125
207
183
231
202
167
185
228
197
219
155
192
171
215
196
198
157
198
210
265
159
218
198
235
155
204
169
222
144
172
191
236
212
185
179
151
197
198
124
228
238
152
235
209
163
229
211
232
181
255
150
210
210
196
145
195
181
186
176
207
182
198
233
211
175
213
178
280
219
216
221
223
150
200
251
200
237
198
197
233
236
191
201
208
204
200
163
186
160
107
243
201
239
230
223
148
152
218
167
191
202
210
142
222
191
153
226
192
158
121
233
206
227
234
207
157
189
251
220
233
187
166
175
211
218
216
217
246
213
176
175
206
204
235
249
192
153
175
142
232
184
223
217
206
240
193
186
235
147
189
136
216
238
250
206
187
254
154
217
229
224
139
184
184
209
157
167
211
207
129
188
223
189
201
155
188
172
196
163
237
196
190
205
187
205
245
166
167
193
161
156
178
237
240
204
223
261
214
184
217
207
196
176
241
153
181
197
188
210
199
207
191
225
187
201
198
197
137
185
212
172
163
232
250
205
260
211
241
220
215
192
162
242
226
183
203
213
251
164
231
213
167
200
210
171
177
174
226
166
230
171
150
183
207
193
217
173
188
195
219
202
223
129
213
161
206
121
185
135
209
233
239
246
215
166
227
212
193
262
232
240
209
194
157
209
156
162
179
155
186
191
204
236
185
158
160
154
112
197
216
145
222
172
219
217
216
154
183
168
228
235
258
169
150
214
164
141
159
198
181
147
201
169
203
193
217
231
253
225
174
154
224
144
205
157
192
256
194
204
257
200
237
171
172
197
226
187
225
171
177
165
211
157
206
169
228
197
169
174
191
168
205
235
180
217
141
123
216
149
193
163
175
182
233
199
162
181
197
204
172
260
209
235
221
175
282
206
200
210
199
214
213
250
174
243
223
290
228
192
226
102
168
192
209
221
185
177
185
231
199
225
220
236
190
207
255
184
180
175
204
106
185
94
216
163
225
206
186
191
226
256
216
216
230
200
154
210
220
210
205
195
166
254
188
209
232
182
180
213
238
274
220
188
196
172
182
226
200
238
284
258
211
222
179
200
191
216
202
218
139
228
226
200
259
180
255
234
244
201
261
225
272
217
221
172
202
147
192
230
212
219
202
217
180
241
177
76
218
224
201
200
202
195
183
181
204
189
175
208
162
185
202
209
178
172
236
240
244
183
212
191
202
239
232
219
202
229
199
197
199
176
184
169
216
187
205
177
225
180
162
226
197
229
216
142
200
161
167
203
255
197
184
244
150
177
244
155
220
181
151
186
184
170
274
211
199
245
195
201
163
210
254
193
225
278
197
144
161
232
179
233
209
205
185
143
181
183
174
212
233
148
232
177
169
246
212
187
155
146
129
210
222
215
178
171
204
253
215
169
200
263
212
182
187
157
210
121
156
245
227
184
134
213
189
274
152
179
234
186
263
208
225
197
154
231
229
219
163
168
176
174
159
203
216
220
196
197
212
196
182
242
202
206
164
208
246
173
161
216
170
222
249
239
205
277
180
238
194
260
200
253
165
198
162
233
232
204
193
175
184
178
229
153
187
195
200
242
211
205
200
126
114
173
239
204
293
240
208
222
140
176
229
176
155
238
207
248
190
204
181
133
211
221
219
211
198
200
217
207
251
213
208
232
185
277
200
148
181
164
107
198
239
189
181
193
204
178
199
215
189
234
192
162
217
171
144
199
223
244
222
183
141
158
156
232
183
219
214
173
224
183
206
187
203
159
252
237
165
264
205
135
219
232
233
216
183
138
184
177
204
154
220
194
259
183
257
217
220
156
243
223
240
169
149
192
191
258
194
163
214
212
192
239
205
251
225
228
199
174
210
151
235
205
172
72
249
240
188
218
198
193
170
222
196
179
212
182
176
229
220
214
200
120
237
243
230
215
257
220
166
222
141
165
215
211
231
209
223
161
180
187
221
222
224
234
159
218
220
187
229
180
207
222
220
169
217
215
214
181
186
232
247
175
127
222
220
211
204
212
221
209
241
200
209
229
257
230
198
195
191
186
160
145
184
198
129
234
171
206
163
244
234
132
146
228
130
176
224
199
226
190
262
207
214
184
205
174
183
241
226
197
179
187
254
242
226
269
205
127
125
256
203
163
159
211
209
235
181
197
242
172
268
203
213
212
230
232
213
167
195
196
253
149
165
176
256
189
231
176
285
160
250
237
212
221
231
180
180
235
206
199
190
159
161
187
204
224
226
195
284
189
193
174
237
174
179
221
269
233
239
156
130
269
210
131
187
114
204
202
279
191
152
163
197
127
265
222
237
204
177
200
163
204
170
228
145
196
203
210
185
224
220
132
217
168
199
169
238
230
201
167
180
244
243
197
208
226
219
237
205
202
186
225
178
214
196
168
254
211
120
186
246
236
217
183
189
210
152
212
239
190
220
130
236
223
137
170
204
172
229
248
181
191
211
229
266
170
143
225
180
226
157
210
179
206
162
235
189
160
182
245
236
201
229
215
168
145
222
200
202
237
204
146
229
183
218
201
152
166
207
213
294
195
224
261
199
183
158
186
168
151
183
189
173
193
215
156
226
255
193
159
166
248
147
177
190
200
227
126
197
232
158
183
139
159
262
215
263
178
223
209
219
167
197
203
211
201
236
141
223
199
217
136
216
181
238
223
199
183
242
251
200
233
179
216
159
195
185
132
213
253
237
209
152
176
212
211
205
242
196
225
180
210
175
242
173
187
158
216
187
213
262
215
224
187
206
217
185
147
187
173
242
187
227
211
190
226
146
162
245
197
201
183
239
218
169
217
203
190
197
215
223
214
248
172
224
266
214
218
205
163
224
281
259
175
243
174
237
196
255
219
194
123
266
186
166
241
164
228
208
210
195
226
200
152
163
191
124
193
138
203
192
217
211
181
207
220
217
150
171
193
185
156
186
143
227
189
220
224
183
192
108
162
222
208
136
211
207
151
193
199
178
183
135
195
208
194
192
236
215
208
205
238
167
201
190
188
243
154
170
166
206
184
175
178
251
214
189
199
201
190
138
216
253
150
216
205
178
187
236
227
239
197
168
210
262
220
153
168
201
198
198
264
219
229
177
205
228
219
126
254
205
221
178
154
238
194
207
262
150
170
188
158
218
210
198
210
178
223
232
165
220
239
183
164
193
250
241
107
242
183
193
223
134
260
208
283
209
174
256
225
148
246
245
216
151
171
173
266
207
226
224
187
122
212
197
242
254
199
126
235
196
162
210
197
196
145
226
202
157
209
254
195
158
170
173
204
192
150
222
267
259
226
263
194
214
189
164
182
150
224
246
113
281
194
186
211
194
194
246
198
209
210
247
230
185
188
236
171
221
258
220
270
229
200
174
195
229
226
212
168
175
199
173
212
138
203
253
169
234
244
226
232
222
220
235
196
220
221
200
216
180
246
246
185
202
120
146
259
209
212
226
229
236
171
141
177
231
182
173
209
201
252
197
153
174
197
200
213
229
173
241
219
238
264
203
220
156
190
249
156
193
229
159
204
213
285
200
125
228
192
215
197
221
170
166
173
206
249
191
181
219
171
231
228
187
181
254
164
204
149
214
191
175
246
201
212
277
193
229
159
222
229
255
158
180
174
205
150
185
152
206
217
201
192
225
178
162
204
208
191
220
183
166
255
191
211
174
247
204
263
223
201
221
137
148
200
212
183
120
249
213
213
213
283
165
175
206
192
170
182
206
220
218
204
251
223
202
182
175
206
208
216
164
198
213
232
191
160
146
228
237
188
203
113
182
151
254
210
203
231
199
267
183
194
217
204
175
234
194
255
209
172
198
196
201
117
193
198
214
219
181
246
158
213
229
262
176
198
176
128
255
213
250
223
152
202
160
260
206
136
217
157
155
217
207
134
204
210
255
263
248
211
187
186
181
227
247
258
131
264
177
138
226
211
275
210
224
218
167
209
240
215
233
181
187
213
231
197
217
205
204
255
201
213
176
207
233
191
255
219
232
190
251
183
188
198
196
217
199
211
189
165
231
254
237
230
167
261
202
205
240
111
154
164
226
178
130
152
161
189
246
165
175
223
238
192
158
148
213
190
260
202
135
245
226
166
212
213
269
206
232
211
210
150
209
171
220
185
165
220
227
224
174
200
121
183
185
138
156
200
156
202
157
214
161
198
198
203
230
230
212
217
142
238
161
233
293
194
181
197
150
216
151
208
246
212
210
152
226
196
181
177
206
170
167
132
161
198
208
224
211
164
207
96
199
190
206
214
210
264
170
136
206
149
197
185
143
210
255
184
146
143
166
225
168
209
166
177
186
274
214
160
176
219
240
173
242
225
166
231
192
238
170
203
196
219
182
194
207
280
167
207
185
240
177
267
192
248
223
205
236
190
236
200
200
230
174
209
238
211
205
196
190
209
123
165
234
185
185
239
187
155
209
161
149
229
211
236
158
219
163
231
194
210
156
237
233
215
158
145
251
201
189
138
182
216
229
217
228
215
232
289
196
229
188
240
165
235
174
168
167
280
256
170
142
228
242
191
205
231
226
182
224
210
136
239
191
180
195
235
165
174
239
185
164
263
251
187
181
189
237
195
194
195
217
160
219
173
270
251
233
196
277
151
208
187
195
190
253
167
245
205
184
230
242
231
181
129
270
130
171
152
142
207
184
234
251
172
185
197
208
235
232
239
178
95
264
184
238
140
155
241
224
150
212
138
222
230
208
189
175
223
244
260
138
174
241
256
236
195
214
186
155
232
179
238
202
212
271
213
180
246
231
177
183
226
225
264
122
197
217
173
237
197
273
171
254
214
220
261
176
203
243
151
170
182
154
142
266
200
165
185
133
176
191
129
152
201
137
180
204
214
178
246
163
202
219
268
234
164
180
154
197
192
209
230
183
237
111
211
196
199
184
127
207
210
142
213
216
191
196
186
141
228
174
241
218
155
146
200
191
218
197
137
199
234
161
173
219
186
217
217
206
241
180
175
218
238
192
265
279
234
195
208
236
161
209
169
184
192
183
198
219
196
199
143
219
221
241
199
163
218
220
220
175
268
253
150
186
206
220
131
168
193
199
222
218
275
132
245
229
233
218
189
229
204
208
178
158
206
172
200
151
161
204
134
171
246
204
152
222
129
207
245
284
250
208
213
174
210
226
258
159
192
261
248
215
237
215
161
105
214
195
179
154
232
236
214
262
225
206
242
143
215
228
181
189
173
193
222
244
235
169
236
223
211
181
236
260
199
140
189
201
188
256
220
119
146
246
235
250
207
165
207
175
237
210
202
223
192
233
186
230
201
224
143
213
213
175
237
155
201
169
201
223
176
191
228
187
217
252
176
209
193
231
195
181
199
168
202
172
163
155
205
234
100
149
198
189
196
229
155
141
171
192
173
251
204
194
194
212
196
213
211
231
261
178
251
246
205
265
168
228
180
241
229
143
189
170
228
157
167
247
203
193
227
233
208
237
215
186
192
179
218
218
256
173
134
163
238
183
208
187
139
208
272
221
210
198
225
208
226
170
173
215
199
237
177
196
172
257
208
225
146
250
209
162
216
176
173
200
185
188
148
232
186
226
198
188
201
183
208
247
222
218
166
247
209
240
208
230
163
113
161
287
222
222
261
249
198
232
190
183
200
203
88
219
213
174
203
200
164
257
186
149
233
232
248
215
204
248
236
239
192
209
169
186
165
233
253
183
252
125
261
203
236
196
206
233
214
215
199
198
170
183
254
176
212
179
186
180
156
120
178
123
172
205
181
166
257
165
219
170
213
194
189
231
216
173
177
111
154
169
237
235
209
208
193
110
205
229
205
193
193
219
214
159
192
198
180
239
192
212
221
180
175
174
170
188
222
193
206
165
216
180
181
177
187
173
264
198
247
258
239
265
203
157
172
139
238
242
223
218
230
275
134
206
214
241
203
257
174
235
191
223
212
241
187
217
227
214
213
222
222
230
222
175
169
203
180
225
282
227
232
219
177
130
209
217
185
145
151
203
149
170
261
206
168
218
178
209
213
156
170
186
221
157
244
193
198
216
197
210
208
219
165
195
278
177
256
227
148
114
258
153
198
168
202
170
217
189
206
170
242
213
244
201
162
196
147
248
207
202
204
265
240
138
155
225
238
229
265
210
202
162
194
236
195
228
199
232
224
180
219
222
227
188
257
215
188
204
160
206
174
215
152
174
197
211
214
202
252
176
239
191
238
286
138
197
209
237
147
229
167
168
217
200
212
161
200
194
185
160
209
196
188
211
181
231
167
241
186
231
209
272
191
180
252
181
165
214
201
172
229
219
138
270
183
222
157
212
191
238
229
137
183
202
192
205
209
158
192
225
234
193
209
165
162
163
173
197
179
196
158
268
233
172
225
183
233
269
207
155
202
177
172
138
247
204
128
250
189
225
181
154
189
186
168
231
147
206
147
147
207
225
235
157
240
255
210
228
244
141
187
225
193
216
149
191
203
177
197
210
221
227
192
189
181
150
210
182
178
164
170
243
122
126
128
221
229
175
165
180
282
113
187
265
167
235
167
210
205
193
151
203
218
219
196
207
238
188
210
138
163
213
262
236
219
196
231
191
168
166
221
196
180
183
220
240
261
225
250
160
196
235
173
226
222
204
210
209
227
170
228
227
232
227
219
192
225
218
197
175
260
93
204
142
200
276
235
207
191
271
210
237
243
246
204
255
222
143
177
198
229
165
201
192
163
269
216
173
235
188
135
232
209
241
219
219
191
210
239
255
167
170
250
159
216
275
185
168
195
178
197
206
178
166
186
233
157
254
225
182
158
199
300
190
163
185
194
219
184
235
118
215
212
243
238
219
184
163
263
247
209
197
217
161
212
225
198
135
202
172
209
232
245
225
214
225
218
201
231
204
197
175
181
196
199
188
224
189
208
216
208
214
274
213
242
133
229
166
231
184
228
156
200
214
168
230
237
211
222
174
137
209
277
179
247
224
211
170
262
232
194
195
265
169
153
209
201
218
188
180
180
248
231
184
167
215
199
264
179
233
236
195
175
223
241
199
191
211
213
198
280
246
243
192
232
163
224
235
206
184
253
194
189
168
215
226
185
216
251
241
183
226
179
189
303
244
181
215
219
173
141
220
205
130
199
220
180
185
241
205
147
238
146
236
252
236
219
218
176
230
204
187
201
149
244
184
218
214
235
246
198
188
213
242
206
196
210
233
179
168
207
239
157
260
170
173
213
197
234
200
225
257
199
218
209
170
233
155
242
258
163
248
139
220
209
268
207
155
208
232
183
224
193
169
154
248
198
209
168
178
190
225
191
199
260
204
221
185
148
187
189
173
185
182
157
200
187
136
181
210
186
231
184
124
174
194
213
209
144
243
200
163
219
233
184
201
233
168
117
195
186
145
198
220
193
158
221
183
167
221
176
189
173
195
198
198
229
209
211
211
169
230
208
158
176
243
183
242
178
217
242
181
185
182
211
167
232
219
211
226
235
211
234
236
206
235
219
260
221
145
249
163
172
217
221
213
214
131
241
206
197
159
189
151
208
205
183
184
240
220
201
157
192
165
224
186
241
243
129
162
176
180
265
189
230
220
272
200
250
172
208
214
174
223
226
230
176
205
281
221
145
208
175
184
206
223
208
238
141
243
167
243
172
215
136
232
211
206
247
240
208
157
190
214
205
197
210
177
191
240
205
247
175
200
175
133
165
166
180
232
196
223
222
196
236
183
193
216
210
243
157
214
242
200
167
199
180
146
228
202
218
159
265
162
224
216
163
220
181
196
198
148
150
166
237
194
195
222
179
251
171
202
193
171
182
187
199
204
230
145
146
252
228
197
260
202
235
270
181
176
235
198
173
193
189
195
250
171
170
226
221
239
240
173
179
206
201
212
208
223
217
166
180
181
246
169
245
184
208
184
193
217
186
155
256
134
196
181
207
163
166
223
208
256
260
143
197
223
226
151
214
186
187
212
159
207
191
130
258
183
183
216
157
230
241
225
207
207
155
236
126
188
259
174
238
186
199
146
164
200
212
141
165
260
202
176
256
245
161
208
241
249
230
223
214
210
157
227
184
226
215
191
162
210
232
219
213
156
160
235
203
233
141
240
199
188
190
208
192
172
187
223
254
198
240
222
147
193
191
211
150
237
182
214
227
203
183
221
189
146
251
172
234
234
203
215
153
147
213
193
176
199
215
148
252
186
234
245
128
250
246
198
182
235
159
140
208
226
160
229
199
218
252
229
178
232
200
200
133
267
250
181
206
160
209
143
182
244
193
226
178
201
250
151
270
127
133
185
211
197
173
167
212
189
265
224
218
214
204
198
218
281
201
251
193
212
237
164
221
213
232
226
216
94
175
249
135
174
227
252
208
237
224
215
142
190
188
199
214
230
182
184
142
195
208
265
231
242
139
181
185
150
206
185
155
196
204
260
220
145
215
177
149
236
270
270
219
200
180
151
193
199
171
131
250
200
199
205
246
198
190
217
210
222
200
209
169
149
164
263
197
194
198
231
189
211
160
217
220
153
220
199
210
183
185
224
166
209
213
245
234
201
279
211
140
163
170
138
232
229
211
196
187
189
218
154
191
226
188
231
143
163
238
183
209
175
214
253
172
207
163
189
220
188
234
274
177
187
213
223
245
197
195
181
261
201
207
238
188
235
229
217
225
190
228
255
162
173
192
209
249
126
265
192
177
271
148
212
136
253
164
171
141
170
205
211
163
168
186
167
197
174
207
244
176
167
222
213
171
148
216
166
225
218
165
183
186
269
227
177
210
212
194
156
160
191
190
188
234
213
219
203
223
162
234
244
200
180
183
202
133
181
253
200
242
172
236
154
198
227
150
169
190
168
208
250
213
191
222
241
155
114
228
215
166
134
201
195
162
210
208
256
219
200
213
199
258
207
218
196
177
156
268
103
231
212
214
214
258
154
250
178
184
117
238
143
176
230
231
198
264
198
208
177
193
146
183
239
215
201
224
131
159
266
165
157
233
226
178
194
220
281
150
198
262
234
177
225
196
191
242
236
199
245
266
239
237
130
178
238
197
190
258
144
177
187
216
163
153
219
197
187
223
274
202
156
154
144
219
187
191
214
244
206
133
173
125
242
174
178
173
216
235
248
188
186
201
196
210
172
174
168
196
211
192
204
213
223
225
208
204
208
175
165
247
216
184
202
215
211
202
167
223
246
205
222
205
163
242
190
227
211
221
170
219
241
196
178
235
255
208
180
221
225
258
238
210
209
183
178
218
171
234
218
249
194
207
240
217
270
197
161
233
222
166
210
195
231
206
173
176
276
275
162
170
209
247
183
202
240
235
230
240
161
207
189
167
139
230
230
189
214
200
221
153
192
210
194
144
204
183
232
205
251
236
263
203
155
226
226
209
106
185
217
212
183
133
191
232
217
215
233
190
264
158
240
249
208
167
198
250
193
174
175
162
226
184
260
254
205
203
186
170
198
248
206
171
216
156
170
225
180
208
255
148
188
260
220
219
154
179
225
152
173
206
213
169
234
188
257
220
214
136
152
252
219
168
187
171
192
237
185
147
229
236
170
254
134
177
171
212
208
190
177
176
179
162
165
218
184
212
229
169
236
230
171
161
207
254
162
212
251
159
195
216
199
174
197
227
174
190
238
215
233
181
144
181
235
216
181
175
214
109
245
270
190
225
190
153
170
207
179
206
254
188
152
236
173
228
193
176
195
198
204
201
156
215
212
203
167
212
230
234
200
204
183
169
224
149
209
195
201
149
192
206
165
202
238
175
196
248
185
243
158
174
250
186
184
200
243
179
185
182
192
264
207
213
140
229
227
183
275
135
191
262
241
200
179
202
155
192
117
146
156
241
177
213
204
212
175
245
249
219
192
239
213
219
181
191
219
205
229
166
213
223
161
188
175
199
224
194
246
147
214
246
194
239
190
200
211
200
193
218
154
179
202
210
188
193
196
191
235
212
141
197
197
196
226
208
205
201
194
172
187
265
163
168
182
234
206
206
163
219
251
291
195
176
192
162
253
211
172
218
227
214
203
175
233
197
186
214
261
257
183
207
233
198
179
185
137
210
217
218
179
255
190
209
219
223
159
153
210
238
225
208
185
155
208
222
223
209
140
211
176
199
222
146
203
225
245
219
213
265
186
144
199
156
170
140
229
240
206
179
148
212
212
272
174
166
209
241
193
206
253
178
180
192
182
195
164
99
231
215
189
172
202
174
203
222
190
229
210
126
176
219
198
247
199
209
209
230
221
160
140
142
248
186
188
234
224
209
192
186
236
162
224
171
221
195
225
236
235
168
185
226
206
190
152
179
171
241
180
245
214
195
151
194
179
228
203
234
163
216
190
259
123
191
198
250
209
187
224
215
195
243
197
191
173
209
197
191
205
232
195
180
236
219
189
221
225
197
221
186
175
202
184
242
219
167
147
254
225
199
249
173
170
129
195
234
183
211
248
178
224
198
212
170
240
236
194
206
169
214
237
228
236
207
174
194
218
123
222
231
201
228
161
248
239
144
245
211
228
229
199
176
234
174
142
212
173
180
242
227
178
198
159
207
162
183
252
164
219
189
206
210
135
164
119
174
242
216
229
184
165
187
274
222
212
182
166
234
190
217
206
253
182
226
147
199
178
154
197
183
215
127
178
194
209
212
259
194
253
230
132
207
137
201
115
200
274
261
147
187
219
151
149
138
190
178
227
229
160
204
199
239
178
207
215
238
190
205
192
162
161
221
196
185
259
226
225
217
162
193
197
219
184
200
176
219
205
147
177
210
218
117
200
217
214
237
204
221
286
195
190
160
234
224
206
172
211
135
183
193
180
202
171
201
202
266
200
169
148
250
159
185
231
202
197
205
185
215
147
216
163
194
210
265
134
185
191
262
175
200
161
202
205
216
219
265
248
264
147
270
221
254
190
238
235
177
216
232
175
184
194
161
237
244
190
230
190
214
219
196
219
230
152
188
126
165
190
225
209
163
195
201
176
194
297
198
153
187
198
179
259
229
140
235
199
165
180
188
170
248
208
192
242
242
223
203
192
161
218
197
185
226
223
186
261
218
194
193
218
233
199
228
215
228
200
163
195
234
197
227
263
149
163
224
151
214
203
157
189
241
254
181
204
197
156
206
239
208
212
184
209
190
237
211
159
254
272
244
212
195
199
227
184
236
222
158
183
153
143
221
165
190
192
208
217
196
218
217
147
191
147
148
182
245
188
212
187
174
123
202
189
215
215
200
217
216
194
209
244
186
143
252
233
166
222
174
112
169
208
210
158
214
231
197
193
173
153
178
254
130
285
237
202
212
176
223
259
166
216
223
106
178
235
235
222
171
177
171
189
201
137
191
227
210
243
146
152
237
229
257
231
146
202
158
221
183
189
188
217
144
187
236
193
230
166
232
238
238
187
246
141
216
198
191
243
266
215
173
212
167
268
172
189
179
175
247
122
268
228
160
169
205
166
228
195
171
204
197
108
165
217
183
213
186
166
185
173
184
175
243
188
143
157
212
151
189
228
214
236
169
205
196
237
207
228
223
195
203
230
206
223
257
239
212
219
206
173
155
238
149
186
136
169
218
140
218
118
213
182
229
198
124
175
143
227
243
188
177
242
209
201
243
180
120
156
251
215
233
196
199
194
227
236
201
199
176
255
229
223
192
146
220
255
167
185
220
200
213
252
232
234
211
190
133
270
208
196
186
137
261
226
155
246
200
173
175
220
230
253
193
201
230
155
193
220
209
184
263
176
165
215
227
167
198
192
173
191
185
222
222
212
160
214
146
213
226
191
221
189
176
233
228
193
205
210
178
238
183
176
234
198
213
178
129
182
169
209
176
150
236
230
253
151
159
211
186
188
192
191
183
251
227
227
207
229
222
192
178
158
231
171
200
255
241
201
182
257
184
200
151
160
198
207
179
174
147
233
160
223
180
201
264
220
201
189
226
182
157
139
196
230
189
172
250
227
161
239
190
207
197
258
154
219
145
149
197
268
211
215
164
252
192
200
184
96
245
270
116
183
191
235
196
163
187
162
254
176
221
199
181
190
242
161
190
218
210
215
199
164
193
231
222
246
195
177
275
200
204
183
236
173
245
250
219
175
171
232
205
230
229
175
180
188
245
205
185
188
243
256
192
167
94
187
206
216
190
138
251
215
182
227
128
164
225
188
237
147
236
218
217
224
210
196
205
122
201
230
223
170
268
229
178
114
254
194
189
209
214
208
178
214
239
223
190
195
237
228
169
202
227
210
142
147
207
197
200
187
200
209
197
251
212
168
163
251
170
194
211
168
187
227
218
191
190
183
176
246
201
205
222
183
278
188
218
216
195
253
207
163
122
155
234
207
216
159
199
174
221
204
173
236
209
198
178
205
213
222
170
143
164
198
276
183
220
163
204
206
229
234
196
207
163
208
152
200
223
245
156
232
177
191
252
214
159
244
264
224
156
212
168
200
166
189
181
201
206
249
240
152
233
226
197
223
201
211
208
205
211
160
136
190
163
178
136
221
184
181
196
216
194
175
190
170
173
155
241
248
193
199
215
230
216
197
225
217
261
155
225
212
191
237
230
119
207
203
189
181
226
247
239
284
207
190
208
179
165
167
192
229
211
183
249
236
180
192
168
202
189
212
201
181
198
243
187
208
197
211
183
230
230
241
225
156
192
243
237
256
165
215
204
195
178
191
192
211
227
260
255
204
247
194
193
226
190
238
259
213
205
223
185
206
157
193
261
247
186
194
218
216
207
142
179
151
192
151
243
210
211
165
219
192
192
192
209
153
282
222
190
116
193
192
232
216
200
202
198
250
221
252
259
184
285
204
214
199
201
166
185
180
180
226
224
195
223
235
211
278
211
235
163
144
249
154
140
173
184
224
195
196
152
167
213
214
155
209
179
169
190
206
184
187
195
207
165
207
216
223
187
232
155
191
237
190
152
143
172
237
204
158
210
248
166
144
194
205
190
173
201
125
173
159
226
226
225
204
279
133
207
221
146
170
196
197
229
196
215
233
228
235
183
185
199
163
201
200
158
229
187
230
240
197
187
179
237
261
159
165
172
242
195
187
241
180
187
134
240
167
234
226
234
230
204
197
247
214
251
266
227
202
169
215
145
170
121
200
145
204
195
178
162
209
176
215
175
212
223
221
220
191
190
206
214
175
152
229
221
191
169
214
179
189
197
187
244
153
152
183
127
211
162
244
250
182
174
237
148
196
198
225
263
235
161
181
244
188
216
173
227
196
221
174
178
198
190
192
239
168
195
209
189
206
255
179
153
222
269
190
216
183
222
179
231
201
168
173
109
214
254
211
230
175
291
204
187
259
269
258
239
204
251
150
190
234
239
260
166
243
228
164
248
191
186
159
157
189
209
226
221
214
213
222
208
203
222
208
184
193
264
172
256
211
166
258
212
199
178
193
153
265
252
260
214
165
193
184
153
188
200
235
177
201
173
226
194
279
206
228
178
198
195
225
231
142
177
178
173
184
185
261
212
191
144
253
227
182
218
232
172
246
161
242
206
202
211
183
189
241
178
176
243
207
194
186
192
263
257
233
221
192
209
209
223
163
205
168
219
172
215
144
162
128
237
165
224
251
176
191
247
163
173
239
249
197
234
199
170
169
208
177
169
166
232
217
227
160
260
231
173
168
184
282
211
221
234
266
193
211
220
175
190
176
223
168
201
162
194
205
177
170
162
216
180
252
169
192
216
186
262
237
196
107
127
140
187
151
222
214
216
194
194
258
278
202
225
208
206
196
221
152
233
217
182
213
203
218
149
163
207
194
220
188
213
154
244
203
216
267
174
213
178
198
157
200
192
135
235
199
222
176
197
199
245
194
147
168
205
161
198
158
205
234
202
222
193
186
231
211
196
248
177
194
196
227
224
167
191
189
217
228
204
216
145
177
235
173
210
238
253
233
188
186
222
171
191
166
192
199
158
147
213
207
188
210
105
267
227
190
222
203
212
192
150
174
214
213
256
242
188
251
237
125
148
207
191
171
217
207
150
190
192
216
164
137
136
169
205
163
181
200
241
273
188
231
218
180
200
184
150
236
172
217
163
181
122
173
232
260
259
250
181
215
156
205
236
170
228
237
199
176
170
225
149
209
183
202
184
165
244
170
183
139
200
202
274
129
190
160
183
244
207
260
167
204
184
163
197
180
238
181
201
184
240
221
204
210
207
227
242
149
218
165
235
201
197
181
174
207
202
175
222
239
253
209
222
218
228
164
199
284
159
176
170
187
223
153
164
153
219
236
218
238
180
233
215
160
117
204
296
180
166
231
162
231
229
157
164
198
193
173
215
238
208
179
179
189
153
188
174
208
220
190
245
192
189
228
224
194
208
231
235
213
182
171
219
196
192
199
189
188
205
138
205
199
218
207
156
206
191
231
194
257
216
201
173
166
191
202
227
159
218
192
208
242
157
192
213
133
201
171
173
194
219
228
161
154
252
224
209
147
201
204
249
201
184
214
183
171
234
218
226
247
143
212
196
145
230
147
148
219
220
199
221
183
184
213
189
180
262
187
125
270
185
221
168
194
151
195
212
166
218
133
153
203
182
233
182
235
207
204
157
238
166
186
180
176
168
179
222
167
198
188
184
252
228
138
238
183
218
231
146
221
256
223
197
186
205
201
198
174
227
190
161
225
167
162
175
192
146
226
224
192
196
209
224
224
197
212
237
148
230
138
225
189
229
181
227
180
196
190
218
197
229
153
251
256
236
228
267
259
152
189
191
229
203
202
219
187
237
242
194
226
225
209
175
172
192
173
217
166
189
222
156
188
266
172
227
203
214
219
104
230
216
200
216
143
176
175
234
186
195
233
256
188
216
140
223
248
194
165
179
188
234
148
233
149
204
187
233
180
179
196
173
187
196
228
197
219
255
213
213
165
243
179
182
266
205
227
198
199
243
177
177
236
173
227
238
253
154
267
186
202
138
113
187
171
210
205
247
278
231
247
183
182
207
187
216
227
217
236
217
197
208
182
219
213
229
181
181
220
157
216
210
189
201
216
218
164
177
247
181
230
217
220
159
207
191
195
157
220
259
227
192
220
252
228
216
228
286
95
184
191
180
206
145
223
184
232
234
220
181
154
176
177
174
235
244
192
208
215
198
193
183
194
195
161
228
177
188
180
209
127
225
210
216
243
222
181
162
216
201
204
167
248
195
302
197
252
115
219
211
153
214
199
225
220
231
171
196
186
263
239
233
206
256
171
179
221
194
164
195
208
188
212
226
214
259
267
196
197
227
185
245
186
236
241
212
238
240
199
199
222
231
163
232
164
169
206
206
117
152
212
160
191
113
171
222
251
213
198
189
214
213
192
170
275
177
140
174
234
209
237
184
228
178
252
285
183
195
170
164
172
259
156
166
210
134
172
220
156
204
153
238
200
230
149
211
182
125
166
156
211
205
138
234
194
202
169
208
165
201
201
227
198
175
189
197
175
191
193
180
200
232
213
198
264
206
226
208
208
166
273
290
219
221
176
188
223
260
227
170
256
204
114
189
225
195
284
226
214
225
182
153
232
237
223
159
201
212
163
131
196
215
210
196
208
173
157
219
165
208
157
137
203
195
134
205
210
192
216
202
200
233
163
179
175
193
182
209
184
155
233
174
244
183
179
239
228
202
168
163
153
240
242
208
227
143
219
231
265
245
201
216
207
194
153
202
200
228
243
207
191
229
190
236
168
161
196
209
190
226
251
247
213
179
175
224
209
196
201
244
245
204
224
132
217
240
212
204
208
218
248
155
261
187
201
215
197
225
191
189
195
245
224
229
158
179
182
152
166
163
200
211
213
178
241
218
194
165
197
199
154
278
195
222
153
238
135
219
176
170
139
183
169
171
185
211
215
202
244
232
136
159
192
236
214
202
271
142
167
189
173
187
262
108
194
166
197
127
227
227
194
207
241
146
204
182
170
198
219
215
131
143
233
229
258
183
240
214
237
182
236
242
232
166
151
216
240
152
220
208
223
203
150
255
193
212
161
189
190
162
222
178
259
201
201
199
160
237
226
195
173
201
214
254
235
258
249
197
220
257
187
198
184
220
236
182
212
160
188
212
227
142
236
192
206
258
212
246
138
125
194
236
201
259
178
247
108
248
221
189
204
178
226
224
235
214
184
219
140
187
163
254
206
192
253
162
231
174
192
272
152
240
239
183
227
171
173
242
233
157
213
219
233
228
211
210
232
171
253
201
192
191
156
229
196
192
200
160
220
271
173
198
229
193
203
209
259
192
221
240
177
196
210
162
208
178
193
124
229
239
173
215
161
230
192
200
183
215
206
177
178
200
227
216
222
181
228
174
223
189
146
238
189
166
170
177
268
218
180
172
157
168
176
92
204
254
256
221
269
230
220
201
144
186
219
170
161
241
216
105
181
185
162
241
188
117
298
180
208
252
240
199
230
202
213
235
159
227
186
247
163
136
143
187
225
185
188
199
216
177
192
219
240
237
227
198
201
148
197
197
202
197
249
204
208
224
215
198
183
217
231
189
169
196
225
199
150
230
210
215
239
258
184
204
223
235
197
199
202
212
152
209
219
268
226
174
206
228
222
138
202
175
139
254
184
212
182
168
204
165
230
227
219
221
246
228
196
235
190
156
246
243
208
154
149
213
222
246
182
182
192
259
212
217
225
161
172
248
189
160
188
219
252
178
189
210
259
203
167
210
192
223
186
223
189
209
230
189
241
272
248
188
203
194
187
170
189
215
190
139
225
192
208
227
200
242
168
192
216
201
258
219
151
190
209
198
213
168
217
174
286
177
98
220
149
309
190
231
176
254
160
164
268
226
175
229
255
194
189
264
222
251
100
154
264
175
183
197
248
170
247
192
251
198
235
201
183
193
222
187
207
231
183
252
173
218
182
194
262
185
197
190
152
185
210
229
206
241
168
250
179
200
199
253
230
232
93
189
194
193
216
176
223
162
145
250
186
192
247
252
256
252
140
164
171
226
175
202
177
226
255
178
215
209
239
199
207
219
187
185
177
173
156
177
201
184
192
196
212
199
228
224
236
184
199
188
174
212
201
167
159
175
189
201
224
229
189
186
213
180
256
212
145
148
149
154
267
251
208
257
176
238
182
222
245
213
259
190
228
196
210
215
178
222
165
134
192
159
246
212
169
174
204
216
239
249
190
213
137
155
181
156
203
176
216
206
181
193
161
234
189
201
185
243
191
244
219
188
174
248
176
226
207
154
223
158
227
181
197
248
212
277
283
223
205
183
203
195
223
218
217
219
144
201
203
202
192
215
231
131
207
226
223
200
187
241
188
148
199
199
118
194
180
220
203
193
230
216
135
193
191
243
234
167
212
211
162
196
192
237
159
225
204
174
169
199
151
160
170
170
205
148
130
233
227
93
187
230
215
172
195
159
129
219
180
239
207
209
179
206
184
182
178
149
237
151
222
146
181
197
187
152
254
160
243
231
208
214
183
218
186
122
158
207
201
261
184
255
228
141
148
243
196
212
168
214
240
172
220
205
199
216
203
146
181
166
218
211
179
192
198
199
200
226
216
198
180
207
160
245
227
147
239
245
85
169
220
204
205
267
187
188
228
159
190
195
215
222
180
191
226
215
226
157
187
202
138
236
256
230
186
195
180
216
233
216
245
191
119
193
153
204
247
167
203
241
216
237
190
222
228
263
204
245
181
225
284
204
178
228
221
201
169
185
138
195
178
193
218
284
162
185
179
184
229
180
203
211
167
168
176
229
231
172
241
166
187
162
176
160
193
180
216
185
246
222
234
202
207
216
226
198
204
188
210
241
209
171
189
216
219
228
180
199
164
216
221
259
227
259
208
162
182
271
212
228
177
215
230
230
171
228
241
170
203
212
212
187
229
248
255
245
165
229
258
236
203
186
185
158
226
204
177
188
242
260
205
177
194
196
203
246
209
223
172
195
209
116
277
266
228
196
212
168
149
200
121
213
233
208
237
183
214
166
204
162
253
206
249
120
159
209
232
219
178
157
249
182
185
201
125
178
232
147
212
186
225
187
196
193
195
192
160
215
216
228
140
203
204
234
223
205
169
224
206
191
194
209
219
124
268
249
259
199
167
167
205
182
182
210
193
216
201
240
218
211
162
211
166
145
212
192
218
236
197
213
161
213
187
266
201
189
194
213
200
216
156
231
181
151
165
201
195
203
198
182
220
231
207
174
211
234
201
218
200
192
175
230
149
239
185
144
215
157
228
199
192
239
207
200
182
270
193
233
170
186
169
232
189
228
196
203
154
197
167
222
209
178
180
289
264
197
178
199
182
208
163
252
175
267
263
206
186
201
193
229
158
163
180
216
192
202
182
155
237
249
242
209
171
205
208
190
264
253
195
248
162
197
199
157
193
138
195
212
138
187
209
211
187
211
227
226
231
170
218
228
243
205
233
197
171
190
172
217
173
242
143
189
221
197
261
187
240
190
210
158
174
217
256
207
184
231
182
217
217
184
172
278
216
203
146
164
232
175
254
188
178
151
125
211
229
153
160
159
305
186
227
264
184
210
175
239
183
239
178
195
192
135
182
206
198
142
156
202
201
144
202
140
247
242
215
206
200
208
196
164
210
244
247
202
235
134
143
181
182
134
153
208
230
208
198
146
145
205
194
188
214
213
218
184
190
216
156
194
223
190
234
218
178
189
153
208
196
286
234
232
286
172
251
279
212
172
166
180
238
178
132
215
193
247
233
244
196
146
137
199
184
185
159
218
156
135
208
224
148
217
219
242
224
223
152
190
264
229
164
252
165
209
199
179
227
165
179
196
144
263
222
254
184
255
222
189
213
182
182
168
231
155
187
165
225
211
213
278
214
239
183
222
192
172
245
241
185
301
199
254
232
208
255
251
162
250
249
177
224
194
186
222
258
161
257
203
214
226
178
127
192
152
241
240
239
259
224
166
217
178
189
227
187
262
274
151
179
199
227
114
145
157
233
212
193
232
236
263
187
159
145
203
207
235
193
182
182
156
186
213
172
208
204
204
212
127
234
270
208
126
177
194
171
192
232
157
191
192
179
211
138
186
260
220
229
265
186
182
168
149
230
225
184
227
238
178
159
153
178
131
208
152
216
285
198
187
181
230
228
212
194
148
175
212
171
205
285
216
195
217
204
177
177
249
141
260
211
218
215
237
149
202
271
188
162
206
203
201
211
218
192
225
204
179
212
210
180
220
182
171
209
209
233
207
215
211
162
154
148
231
229
238
128
225
233
240
243
183
245
229
222
208
218
250
218
231
173
228
173
159
180
221
147
231
133
203
224
235
234
156
146
191
240
188
242
216
188
229
176
218
181
176
273
211
179
215
265
253
202
268
135
206
181
167
234
155
176
211
174
250
178
168
157
229
159
186
153
179
165
235
208
109
211
245
218
218
182
158
195
245
208
176
227
180
178
165
233
228
185
239
214
199
258
169
142
232
204
204
133
194
194
183
194
215
245
173
192
258
191
164
210
190
206
195
228
147
178
151
203
224
214
109
231
221
227
117
193
227
183
180
211
176
238
208
276
203
205
101
148
139
180
92
226
232
235
166
264
152
219
219
142
193
214
243
261
166
252
252
150
218
170
221
231
210
208
212
248
160
98
154
175
157
157
214
248
207
131
180
216
148
73
207
220
266
243
208
205
219
125
258
253
196
274
159
175
208
236
154
216
253
209
206
161
225
188
186
183
245
189
181
210
190
129
179
187
123
171
189
148
211
172
207
232
189
260
184
219
240
189
160
182
149
201
186
163
233
170
243
189
150
163
166
168
190
242
136
176
189
235
216
211
236
200
278
230
242
162
175
197
204
208
254
216
187
246
192
203
191
202
189
183
193
210
171
224
189
211
248
175
156
191
191
186
239
161
214
205
147
184
189
231
227
167
234
175
209
166
199
271
192
204
157
215
172
210
156
201
194
187
170
186
230
145
189
173
227
211
215
202
231
169
163
237
132
193
151
222
224
199
214
176
182
238
193
203
215
206
169
229
194
193
215
227
162
219
198
196
190
219
227
150
218
237
205
209
211
212
262
118
189
154
189
225
250
210
168
262
212
122
155
168
226
168
246
220
166
182
228
194
235
191
204
172
149
198
163
199
202
228
158
171
198
210
207
210
221
183
232
243
240
203
206
272
200
199
154
194
194
208
197
170
201
180
184
219
166
148
191
263
217
230
200
173
261
240
209
167
119
223
208
157
198
227
218
126
190
244
182
139
139
182
199
167
237
249
225
202
144
264
175
147
190
224
266
185
213
247
206
202
217
181
202
251
165
250
202
179
213
154
197
198
173
189
214
231
200
220
147
229
220
223
159
219
189
227
222
248
202
173
196
131
233
177
182
211
144
244
194
165
207
241
184
154
193
171
171
198
202
152
240
189
214
213
222
215
143
199
199
202
229
186
155
235
207
176
192
240
145
202
191
240
162
176
195
162
194
182
232
216
187
217
202
193
250
149
166
193
228
220
208
225
178
215
220
154
205
262
193
262
187
153
169
139
233
222
196
225
198
202
222
187
243
246
218
164
194
204
190
163
294
243
150
162
160
244
142
225
165
180
195
153
206
184
245
178
217
278
230
164
259
192
219
211
162
218
176
242
146
250
246
256
220
181
169
208
179
156
111
201
206
215
204
187
242
185
157
185
237
211
231
187
210
140
247
249
219
190
207
215
173
174
237
170
240
204
120
224
219
203
201
181
220
167
218
199
187
226
231
171
179
224
238
138
196
264
162
196
233
120
241
162
218
198
167
115
201
141
193
209
208
192
153
207
223
186
221
198
190
221
199
205
221
220
130
239
163
127
216
181
177
223
236
242
141
137
132
193
170
206
152
194
207
180
231
199
155
234
195
222
205
170
231
146
142
205
188
185
154
188
157
201
232
170
172
160
243
250
145
249
240
234
164
128
170
219
225
175
219
245
234
199
216
162
222
241
207
147
216
119
244
186
198
204
236
134
229
240
225
202
211
249
148
180
206
240
160
192
200
201
197
207
231
207
244
130
150
193
204
226
221
196
247
198
178
229
223
238
212
243
213
219
199
167
216
186
219
247
171
223
222
213
251
286
287
181
270
169
194
204
149
262
243
153
182
225
224
157
208
188
255
258
187
222
189
213
196
232
205
234
110
190
171
231
181
249
206
233
228
183
191
211
221
117
189
240
247
189
232
173
205
182
140
248
193
232
204
243
174
204
205
190
191
221
195
186
198
209
194
190
267
252
183
223
173
196
230
207
200
243
210
133
183
204
219
236
175
156
225
144
189
241
219
189
227
216
232
164
240
183
201
210
176
194
186
235
185
185
194
192
236
224
221
209
165
199
173
245
228
184
236
195
202
238
160
200
229
196
222
176
224
215
172
241
125
176
193
218
156
225
210
219
175
223
188
243
242
244
170
214
142
246
148
175
235
166
156
207
172
216
193
197
181
178
147
212
235
175
198
220
178
165
228
239
238
207
150
235
182
196
244
163
175
174
221
214
171
266
226
152
154
182
213
242
233
231
172
198
153
197
142
165
231
176
190
182
161
214
208
248
210
189
205
196
202
175
203
265
198
214
203
144
232
239
245
190
181
254
132
159
210
213
152
178
191
206
205
194
198
184
229
181
173
210
233
120
121
236
281
237
215
212
231
173
226
176
243
222
219
239
192
187
164
179
258
175
220
121
189
207
225
196
211
201
117
195
203
250
181
242
226
170
205
159
214
207
156
230
183
247
191
197
198
175
160
221
258
202
218
158
210
117
179
267
149
208
206
208
194
251
167
198
147
203
206
207
243
132
221
95
203
159
166
240
199
196
212
163
184
174
222
187
195
222
165
199
219
169
256
204
167
173
213
200
244
200
160
176
197
244
256
218
167
208
204
144
151
198
201
222
181
173
209
212
186
174
266
204
158
219
208
195
208
274
219
196
219
218
209
235
229
215
219
234
211
229
250
206
182
229
124
216
209
172
164
229
194
221
229
228
176
186
243
164
188
216
221
192
274
180
218
281
238
213
255
169
237
203
216
242
140
165
272
166
132
200
197
216
192
209
254
188
274
182
179
135
194
209
149
249
228
193
199
214
153
186
260
180
215
184
206
228
217
172
188
217
150
187
208
163
208
130
197
199
132
204
223
236
243
189
146
191
153
256
211
86
146
250
265
241
246
152
246
174
208
186
121
193
203
198
128
169
207
149
135
239
148
139
235
222
225
163
207
214
198
195
222
195
218
254
237
236
205
235
215
203
185
123
156
211
207
236
231
224
233
167
131
210
174
218
202
199
242
221
187
203
231
208
230
227
167
197
213
198
213
214
149
224
171
216
179
133
229
262
212
178
156
244
231
232
168
235
181
180
212
165
244
215
254
197
148
218
177
194
192
179
197
154
245
240
203
173
162
184
257
235
246
170
225
201
234
281
189
175
197
121
172
190
141
201
215
153
231
171
267
228
233
259
164
224
216
174
153
263
202
189
200
167
226
182
213
229
202
204
174
233
236
181
174
188
181
217
181
175
285
216
217
173
173
253
189
168
208
169
219
162
211
220
191
206
212
189
251
221
226
196
186
215
160
159
170
180
223
222
181
144
203
231
239
184
182
269
228
217
213
265
154
181
252
235
221
183
207
199
209
141
199
227
207
192
208
217
188
154
216
169
140
225
159
163
190
197
178
205
254
241
161
169
265
158
201
198
182
214
162
229
223
176
282
179
217
190
212
201
224
222
168
184
248
194
181
281
210
159
221
212
107
157
181
143
179
240
189
221
141
197
163
201
214
222
228
229
223
232
196
272
178
196
199
130
206
226
186
182
213
159
178
226
162
249
275
220
194
170
213
184
213
202
231
193
134
224
218
248
217
213
211
205
165
216
236
193
197
179
220
219
225
149
194
140
140
201
218
248
197
248
213
156
212
220
203
244
206
204
244
196
220
202
197
242
190
169
178
238
216
155
214
184
241
166
247
173
157
161
196
247
211
201
196
182
215
101
164
125
136
195
179
181
204
215
195
152
193
166
167
180
200
208
170
212
163
201
203
174
219
164
193
244
232
218
203
228
254
180
219
204
138
123
233
274
137
265
220
206
229
211
176
210
217
168
251
202
229
223
198
199
211
223
182
214
236
233
259
269
164
198
193
235
222
201
196
208
282
235
225
148
189
142
230
187
224
236
197
191
242
228
160
223
160
175
180
186
196
208
153
219
271
195
253
223
220
254
192
224
221
185
226
205
232
147
203
256
183
197
256
174
150
178
259
264
243
211
248
253
262
217
243
177
179
169
130
171
161
223
240
195
248
237
225
146
223
218
213
123
230
199
215
176
170
215
158
214
221
192
215
214
224
177
214
204
156
142
144
164
181
147
199
108
194
215
191
204
202
169
189
126
207
201
208
184
134
221
263
186
180
196
219
179
216
156
217
228
228
222
167
287
190
119
219
195
196
227
147
187
193
172
195
246
141
206
182
185
163
187
203
228
253
185
187
188
206
194
240
194
228
213
258
249
164
173
242
236
173
208
199
218
169
241
125
223
170
177
250
194
143
174
194
228
149
133
239
165
196
180
226
203
230
189
145
203
250
196
237
250
153
158
213
208
210
152
149
146
254
233
182
233
163
219
200
201
205
200
215
237
241
261
195
154
162
234
253
215
220
262
186
249
258
204
213
213
154
178
161
175
178
220
197
185
241
170
218
167
227
197
156
233
184
249
180
146
204
193
214
207
206
155
223
205
237
181
197
168
214
201
206
187
186
202
241
223
232
198
164
202
201
166
169
216
261
281
217
207
163
193
245
213
249
142
178
173
168
246
280
165
183
204
188
206
251
169
214
275
185
135
248
144
186
233
253
192
221
226
153
219
206
227
219
234
241
196
246
182
190
246
210
223
205
189
107
242
243
222
195
188
133
235
187
233
243
215
213
205
225
244
205
180
187
251
126
209
213
215
159
172
212
239
202
183
230
198
185
160
181
214
204
228
223
199
204
184
225
256
226
199
176
219
229
161
218
198
282
197
180
198
140
194
143
245
206
166
218
190
259
220
196
191
219
204
179
193
169
205
186
188
233
181
217
213
234
180
185
219
181
229
233
167
180
209
200
209
258
136
205
150
139
194
150
208
245
176
183
195
207
242
177
199
159
201
238
145
164
153
187
222
248
158
212
192
222
241
199
171
203
202
198
236
202
231
247
198
236
170
223
158
185
240
112
183
205
242
240
205
177
163
225
242
227
216
222
191
192
210
228
197
191
184
217
179
232
161
161
243
142
183
145
154
156
206
221
160
254
221
222
197
170
239
230
196
188
195
137
196
235
199
207
217
171
199
147
263
192
206
202
204
244
207
165
208
160
230
202
192
220
204
226
127
163
190
233
167
203
224
181
171
178
126
199
219
239
255
202
213
258
206
179
204
179
219
153
151
161
254
209
209
178
179
168
187
193
179
265
223
207
192
222
229
212
197
198
200
186
209
160
157
191
255
208
199
153
165
200
204
112
194
196
197
264
193
189
222
197
152
129
247
207
143
197
268
172
230
257
228
220
245
235
236
206
199
184
166
239
223
165
184
236
229
155
186
171
245
207
191
216
217
137
199
212
228
240
212
232
263
173
277
222
183
145
217
167
214
222
205
179
207
240
214
157
255
208
113
189
181
147
237
223
244
227
177
248
178
203
183
240
227
193
175
176
249
159
174
150
224
125
188
226
176
192
236
206
255
200
179
267
191
220
183
151
210
173
200
244
212
184
176
266
231
144
217
223
174
212
244
172
210
156
200
150
133
187
230
233
182
177
228
169
184
152
242
240
214
166
194
215
170
261
158
210
225
193
158
224
200
235
261
177
205
235
217
199
171
181
228
188
148
143
188
259
245
199
223
204
199
208
184
171
207
241
216
218
154
223
217
222
227
189
135
156
218
173
154
161
216
220
213
234
182
90
187
199
163
192
213
177
177
156
209
230
177
231
264
178
194
205
263
212
186
170
243
208
196
205
192
232
180
225
225
237
205
214
254
219
187
203
208
191
193
206
185
167
260
155
211
202
198
155
153
203
217
216
177
214
203
181
199
153
209
163
203
182
237
190
194
199
171
215
182
196
149
206
206
190
180
241
187
229
215
157
246
190
174
241
173
204
220
233
264
198
224
210
182
157
186
143
204
145
262
180
170
200
189
183
255
194
113
208
204
160
234
269
175
145
175
201
220
197
220
178
150
261
200
184
187
243
236
215
169
178
217
207
205
228
199
169
171
243
165
176
166
200
192
211
230
207
168
181
163
256
234
246
124
231
259
181
242
226
242
187
195
192
186
167
163
231
232
161
196
132
175
203
220
213
186
145
232
183
181
205
178
162
175
199
199
180
216
187
192
235
224
173
210
257
193
179
229
225
204
213
187
190
252
218
222
184
223
226
140
237
227
278
188
253
208
136
166
244
193
163
220
170
211
184
201
192
215
229
238
285
195
217
178
145
235
202
192
221
223
172
204
220
198
176
221
109
178
189
205
201
216
241
237
164
201
151
205
204
146
215
181
186
240
128
254
217
254
153
188
295
207
224
205
192
187
215
171
204
156
153
228
228
202
158
201
156
198
165
185
201
156
181
188
178
235
193
220
186
227
147
200
160
204
209
170
216
222
153
223
203
262
196
190
204
204
158
217
182
180
235
112
212
222
249
210
177
129
152
204
235
156
268
205
189
159
196
210
193
263
226
194
157
241
188
212
203
150
235
252
213
170
165
197
219
200
218
173
160
208
207
205
166
213
191
175
200
248
208
188
178
225
170
206
156
242
196
247
213
144
200
276
206
114
166
230
194
172
235
232
220
203
240
164
162
201
210
162
239
224
182
208
195
198
201
190
160
207
242
200
160
178
228
221
187
164
224
192
167
200
221
170
206
263
226
150
119
208
232
142
128
245
202
211
206
194
226
250
166
210
157
194
268
171
228
176
192
240
206
191
200
189
158
232
181
227
138
147
266
211
199
213
223
198
181
277
248
149
166
202
214
174
201
192
195
211
248
252
237
238
198
233
245
166
209
182
185
168
226
148
175
203
162
174
224
199
130
210
202
200
187
217
158
160
194
156
122
160
200
157
204
200
198
159
175
178
227
182
197
176
182
230
217
263
240
214
268
159
222
201
185
131
281
215
249
169
216
193
171
195
221
221
226
206
201
188
228
143
216
179
238
206
225
220
165
169
200
225
193
202
192
211
235
215
188
175
192
149
222
196
195
181
208
214
134
160
190
226
131
215
191
218
197
203
231
228
224
202
232
261
166
213
163
205
190
263
194
133
197
218
219
177
234
212
157
186
200
241
172
186
256
170
172
250
167
184
214
248
213
194
218
252
215
245
202
231
214
199
230
207
205
152
179
202
152
244
172
200
178
243
222
172
174
223
263
169
205
204
161
183
161
250
137
170
238
206
154
253
218
255
169
136
174
221
180
237
189
209
220
208
262
188
183
206
237
147
150
199
243
175
236
166
244
234
237
168
245
179
237
198
171
231
177
210
204
183
179
207
126
195
236
190
238
211
226
176
253
165
183
208
179
184
132
226
225
202
205
185
160
203
222
190
209
134
140
289
119
164
228
172
219
254
232
198
226
197
199
176
222
191
210
287
250
203
179
181
198
119
233
189
212
241
213
229
206
177
181
187
214
161
233
187
208
202
148
238
226
160
206
195
201
217
214
135
175
182
192
204
171
202
224
224
187
294
185
197
168
188
187
187
184
158
248
155
180
232
202
251
191
223
250
252
191
218
209
199
226
244
234
186
128
191
194
195
202
162
219
228
133
202
240
158
168
216
234
195
200
213
275
128
223
185
216
225
196
203
189
212
160
243
199
257
262
247
185
193
217
223
140
183
179
179
202
206
175
164
234
190
180
197
182
177
166
203
225
226
115
203
219
233
171
240
176
138
190
138
152
211
237
240
200
220
218
185
162
191
195
216
185
219
180
209
195
199
190
183
141
197
141
174
162
141
188
174
255
260
224
259
160
229
206
157
171
176
195
202
212
184
148
215
185
234
222
272
217
178
203
195
229
133
239
221
179
194
250
202
207
193
224
234
243
195
166
224
160
171
238
236
229
139
230
199
142
206
214
168
210
123
177
213
172
253
213
181
190
148
231
205
235
149
270
209
192
200
212
228
205
134
158
194
224
263
213
208
204
181
229
244
193
220
225
190
203
193
154
143
141
249
190
154
219
173
228
209
186
247
233
200
179
223
190
242
135
236
126
107
209
223
236
222
214
188
221
150
117
232
191
194
179
243
139
243
141
212
152
160
236
249
162
204
209
230
164
202
211
200
208
209
140
205
201
201
183
240
178
177
185
197
192
213
222
156
213
242
231
177
216
218
185
284
238
184
200
122
199
213
199
151
160
169
168
186
218
204
212
265
210
225
178
162
193
271
196
217
215
138
143
217
210
212
250
195
171
231
204
176
192
198
218
242
172
181
228
187
201
170
191
171
150
213
158
187
269
223
247
207
230
195
246
213
186
248
210
243
178
173
119
203
252
210
148
217
183
158
155
242
134
263
156
272
187
166
209
199
212
230
162
227
165
217
202
201
199
242
226
190
184
193
150
210
122
160
191
184
249
199
280
187
174
174
209
136
201
130
166
155
137
222
203
216
185
200
184
254
212
164
212
178
208
234
182
200
229
203
254
173
140
174
202
161
155
214
206
164
170
204
172
160
188
267
247
221
247
201
146
125
144
180
263
174
212
200
190
156
206
277
211
195
260
234
224
245
258
177
204
215
196
111
217
181
260
203
170
188
215
170
183
157
164
203
218
150
154
248
177
163
249
174
200
133
228
174
188
191
255
284
225
222
207
113
240
231
159
223
161
206
146
121
210
262
223
191
198
208
185
228
182
222
292
195
186
176
225
201
184
188
168
180
155
181
184
218
178
168
183
241
186
194
189
218
206
193
201
222
209
207
165
171
201
210
195
177
247
205
202
176
188
155
122
197
213
189
207
194
235
254
202
250
165
286
231
180
257
195
184
205
230
206
200
194
189
174
159
196
229
188
197
198
190
217
166
195
207
181
198
197
188
156
214
166
251
160
167
244
187
138
255
204
226
203
154
217
171
170
262
145
157
257
195
226
181
180
160
197
182
163
210
164
193
202
173
199
188
251
215
119
180
234
174
221
172
180
209
188
148
199
246
122
233
200
250
190
240
183
211
289
188
205
222
186
190
194
251
204
182
180
164
223
207
206
219
177
189
219
157
184
226
187
206
182
213
217
257
212
194
203
243
180
201
139
226
166
223
181
185
134
228
194
172
223
150
193
183
241
143
205
188
220
217
224
167
150
217
156
238
130
192
160
218
234
172
159
220
225
225
138
201
165
193
134
191
184
257
210
255
184
212
187
188
207
182
233
237
207
244
174
212
256
208
170
275
159
180
178
192
213
215
200
168
207
187
206
189
166
166
184
209
257
201
156
255
220
221
205
221
179
193
140
205
194
231
219
206
197
242
204
236
187
183
195
176
205
182
166
196
138
196
217
197
182
218
213
202
253
169
174
195
198
208
206
210
210
212
202
193
142
189
207
232
187
252
190
253
90
226
193
224
173
188
227
245
183
187
164
210
154
207
261
200
181
197
202
214
134
198
156
243
232
228
239
161
170
208
217
168
193
214
193
190
191
233
213
210
187
203
168
227
154
195
184
202
174
135
197
127
99
165
233
237
176
182
196
241
157
213
159
218
225
198
226
209
143
233
167
199
215
243
155
208
200
175
234
147
246
154
227
213
239
216
267
208
183
157
166
174
178
210
190
220
185
223
228
206
150
162
152
151
166
186
252
193
221
124
176
216
173
201
172
249
224
171
140
199
222
232
238
119
167
198
261
227
191
191
245
252
151
218
223
139
202
256
256
187
217
200
201
210
188
212
193
214
156
211
167
191
226
178
194
176
142
67
229
156
197
259
245
173
236
208
224
236
169
216
257
171
198
208
133
189
168
215
171
205
178
220
199
177
240
205
185
282
252
219
200
212
160
235
201
162
123
124
245
107
123
214
182
201
279
185
229
155
213
206
250
206
162
160
101
153
211
168
213
185
200
181
198
179
139
232
148
192
216
111
145
183
226
237
156
209
224
244
176
203
157
248
252
201
221
192
193
221
230
160
214
217
198
251
226
187
231
286
208
186
220
215
177
156
154
229
229
165
207
106
127
225
244
181
211
229
219
187
174
160
241
288
257
217
183
174
256
208
223
219
173
164
189
211
240
161
231
281
209
153
246
190
171
208
195
202
144
171
134
199
223
193
192
203
169
258
162
220
184
225
201
245
222
107
184
192
202
216
175
252
183
210
205
183
192
206
215
203
245
140
189
143
241
224
215
174
204
154
195
232
165
188
170
152
246
218
223
160
182
159
232
201
190
168
196
124
208
177
196
269
235
233
203
185
207
183
143
166
160
184
178
226
232
190
245
230
220
210
157
230
191
132
198
198
223
234
202
150
235
230
204
151
183
228
250
160
194
200
201
182
250
256
241
235
206
185
194
229
185
160
249
250
218
265
242
177
151
220
199
233
169
165
200
204
205
108
210
246
189
222
179
233
149
189
164
222
186
219
259
152
242
170
238
241
169
174
187
217
203
249
201
188
234
170
213
226
192
177
202
183
194
218
193
231
232
246
265
183
199
137
183
241
115
170
170
217
174
238
220
234
212
177
177
188
242
203
177
156
156
97
199
174
221
187
191
181
215
248
270
195
227
229
205
177
193
183
222
213
182
251
197
262
187
249
203
148
229
140
218
210
134
240
227
198
127
201
133
145
200
242
162
197
242
178
157
220
263
249
267
184
254
235
227
186
183
209
173
190
159
168
194
202
169
210
203
144
159
249
185
158
195
208
213
224
179
225
158
201
205
249
186
190
256
178
225
198
159
207
168
233
223
222
211
223
184
161
210
239
201
170
201
194
242
168
160
273
301
253
194
194
228
202
212
187
224
228
100
194
235
266
193
223
196
224
194
203
275
116
214
207
211
131
194
166
220
170
244
176
177
244
209
162
265
152
179
227
230
144
206
186
245
206
193
217
242
211
255
185
234
192
186
220
216
139
211
224
164
147
168
158
188
224
194
211
184
225
126
172
194
186
180
180
174
168
217
142
201
198
173
220
151
231
266
221
239
210
200
226
201
171
187
165
140
174
217
193
226
182
187
225
237
183
145
269
238
195
149
213
187
136
212
173
244
181
178
178
256
246
165
212
224
176
219
135
196
180
159
149
205
170
154
161
197
171
209
202
208
145
197
243
222
163
186
241
173
118
185
160
163
259
197
160
189
181
203
192
136
203
242
155
155
240
224
246
210
185
157
273
229
224
141
176
208
175
151
152
277
193
200
216
210
219
193
262
190
149
165
181
185
196
223
211
247
263
157
241
200
211
213
188
211
118
183
185
229
197
230
233
209
198
241
206
237
202
160
181
258
200
169
259
203
171
154
193
233
194
183
197
189
212
240
162
219
215
238
145
215
161
179
240
138
211
169
174
134
189
191
177
231
253
239
151
150
176
253
161
171
212
196
173
159
267
225
184
186
232
224
186
173
240
148
267
244
226
242
236
165
154
219
165
163
201
219
199
235
179
255
126
176
179
166
187
252
143
223
222
284
167
200
196
199
238
271
131
182
243
200
218
258
260
158
219
129
191
179
207
263
128
210
189
179
202
237
238
226
223
151
213
193
184
217
245
201
223
234
220
248
222
209
162
178
199
191
242
208
257
225
196
267
241
260
155
268
190
186
262
220
228
204
259
182
166
138
208
218
273
267
215
228
229
222
214
192
176
222
279
234
185
204
225
179
198
204
218
237
193
183
202
208
181
198
220
177
193
158
214
198
219
211
117
128
209
301
190
223
141
213
185
197
197
165
176
191
222
181
142
203
197
200
228
183
188
192
240
174
208
170
151
202
189
199
244
214
186
219
233
228
178
156
199
220
266
208
214
218
206
252
177
196
238
184
198
199
184
198
210
201
181
217
205
258
193
164
194
258
215
111
218
218
182
183
223
200
235
199
234
203
253
175
216
237
209
215
196
205
186
231
197
195
214
151
180
198
180
223
166
193
233
177
211
147
196
205
176
165
262
207
187
193
220
230
192
178
152
246
174
204
179
190
105
183
214
223
188
214
203
159
223
244
196
201
184
202
234
190
180
250
169
226
206
144
213
231
209
214
177
193
211
253
239
253
199
188
248
173
213
191
177
182
236
213
208
155
217
220
199
180
200
221
185
182
185
221
191
198
176
185
178
262
260
116
192
192
222
212
187
229
163
217
229
173
207
200
168
208
208
203
190
188
232
175
226
199
237
197
186
195
195
189
185
226
201
187
245
216
180
167
185
146
242
170
221
179
154
191
224
206
191
225
170
238
197
165
239
196
183
233
236
235
184
196
208
174
200
180
168
258
219
204
129
164
249
234
152
247
202
249
211
212
126
162
163
221
175
222
190
220
125
150
172
263
196
277
186
195
215
213
209
235
195
228
242
223
226
174
231
147
253
257
191
162
201
176
211
166
232
160
193
210
193
228
234
179
175
226
213
139
135
217
157
242
233
230
184
239
160
213
188
243
210
161
148
207
217
234
214
204
194
240
225
187
209
215
147
197
227
202
200
241
117
206
184
226
201
229
195
166
163
186
295
200
194
193
225
190
226
178
212
192
127
140
265
189
226
229
233
175
206
171
238
188
196
185
160
184
149
220
179
189
170
206
248
224
219
133
198
113
229
159
239
209
193
202
234
227
197
222
229
182
164
165
257
219
207
224
187
201
212
237
225
200
213
197
194
232
183
246
171
149
238
263
256
199
252
237
202
203
183
215
204
222
249
202
173
224
224
187
141
141
243
140
222
165
158
226
189
198
181
227
168
191
210
190
216
140
192
212
194
185
197
125
201
207
289
189
189
208
180
237
183
160
233
182
216
207
232
170
193
161
161
234
217
245
130
187
200
219
278
240
242
196
187
190
219
201
178
258
196
184
158
191
164
220
202
213
146
204
159
216
241
236
233
207
188
197
125
218
217
245
196
220
234
195
245
233
177
219
189
198
218
197
262
180
197
212
188
191
141
241
197
164
251
198
222
162
181
219
228
165
206
193
211
176
130
180
161
186
207
228
136
225
135
182
205
169
229
166
228
214
177
171
213
169
223
193
218
178
203
202
205
232
240
167
229
147
148
244
249
164
192
194
228
184
167
180
165
209
191
209
188
231
189
142
157
166
218
166
145
183
155
222
187
239
200
162
192
159
199
214
216
228
118
220
263
254
226
176
197
157
187
170
272
194
190
248
235
157
201
228
227
221
180
168
139
191
178
207
264
207
212
231
161
209
204
207
216
254
216
185
236
172
184
159
160
213
143
225
213
124
150
138
272
198
224
228
227
211
226
235
191
193
210
200
183
216
107
176
207
174
238
164
127
209
248
226
220
180
220
188
170
233
197
205
217
207
173
207
207
161
227
198
212
219
232
194
193
213
198
224
204
201
227
210
229
179
244
166
254
177
281
189
222
194
186
172
223
206
219
150
186
249
198
234
227
216
228
234
167
154
208
201
200
104
145
155
256
192
244
185
131
243
178
249
216
194
231
217
205
289
228
179
230
184
259
149
227
227
189
174
155
186
262
217
164
219
189
217
160
171
235
211
235
195
184
165
201
162
220
222
181
198
216
222
245
168
193
243
238
203
177
172
223
224
229
220
200
243
212
177
232
152
229
149
195
219
231
181
196
197
184
182
183
209
224
203
219
196
236
177
196
201
197
215
211
202
177
231
126
135
204
202
222
198
198
232
191
190
187
217
195
206
257
182
224
242
198
180
202
176
171
189
248
187
173
230
191
153
250
182
144
183
206
154
193
260
231
214
208
220
193
199
154
214
167
237
208
241
241
135
177
181
257
176
203
182
149
237
233
241
215
231
246
203
216
156
187
247
225
213
158
176
170
235
164
245
172
244
125
181
178
235
158
222
186
229
217
257
187
213
143
143
200
190
273
192
166
178
163
177
198
224
221
180
208
210
234
183
228
172
159
219
189
189
227
239
175
149
237
170
229
254
253
230
172
218
196
186
203
176
189
172
252
211
167
190
213
166
268
196
263
234
144
189
214
191
203
169
246
225
208
198
196
130
208
214
226
232
233
235
245
217
123
194
261
202
186
242
187
195
194
225
240
232
154
211
194
211
181
185
261
227
172
254
189
215
180
227
210
154
205
201
223
188
152
179
255
195
218
124
193
189
179
186
229
240
202
268
196
180
238
220
185
171
218
195
233
162
183
151
207
233
243
202
299
178
176
183
160
214
208
197
214
256
207
264
202
126
197
202
189
195
219
187
188
199
183
241
166
222
201
257
243
155
176
154
231
208
161
281
171
191
153
189
127
159
184
147
166
202
196
201
224
162
160
237
223
203
219
178
178
228
230
254
261
215
207
151
223
222
234
223
181
217
207
168
200
165
229
199
193
153
206
259
189
184
185
203
229
244
221
231
167
215
256
224
242
231
66
213
226
169
143
239
232
207
209
150
205
147
157
151
270
244
194
195
242
240
178
214
237
203
151
170
199
207
197
201
280
165
121
189
207
194
213
236
181
201
215
162
197
173
173
187
210
221
228
282
113
212
219
223
192
194
214
236
193
191
190
161
196
195
201
150
209
219
144
152
270
210
248
194
203
221
247
170
228
176
215
257
187
219
195
213
234
143
195
166
132
166
172
166
170
152
183
228
212
191
167
180
202
233
213
231
151
180
239
146
186
189
153
196
225
257
227
179
193
216
197
194
233
219
136
225
266
133
235
179
231
185
177
216
175
251
164
161
177
182
184
140
216
227
230
199
185
189
207
215
192
193
208
159
237
197
215
168
197
221
188
222
154
198
216
227
213
207
190
152
158
204
194
210
207
195
175
139
147
247
190
170
228
193
211
204
144
186
203
218
218
233
193
169
210
183
240
197
202
146
142
126
226
180
174
196
196
211
213
208
244
156
282
216
158
196
166
190
224
210
190
209
202
160
224
235
246
228
204
266
202
233
195
187
211
291
172
208
195
256
146
141
236
148
197
196
259
211
218
186
227
221
196
191
224
216
158
233
233
220
178
232
203
182
174
217
206
186
175
145
220
152
227
233
196
178
177
187
217
201
210
148
222
206
224
202
165
153
158
163
183
151
279
124
224
209
265
149
261
192
222
146
178
191
198
239
200
225
108
194
169
226
190
221
181
201
164
195
240
232
210
238
228
206
179
138
224
177
193
211
188
168
134
218
192
194
217
152
180
213
189
227
175
172
163
183
147
195
219
203
232
191
226
141
254
216
149
182
218
174
209
198
188
156
253
191
211
188
153
187
184
209
217
197
256
199
182
181
207
156
157
186
181
186
167
227
205
132
256
231
235
193
178
185
178
184
187
187
230
188
193
224
197
216
207
142
230
195
262
265
258
171
250
184
203
163
206
170
182
186
190
213
243
119
167
271
199
248
131
202
234
221
242
231
238
174
211
193
230
185
158
178
258
208
253
229
170
206
223
170
210
216
193
196
230
207
227
217
205
251
152
192
192
217
198
182
191
167
201
210
244
189
215
229
247
202
183
141
127
200
176
205
195
208
192
167
239
182
184
223
253
148
223
183
197
166
219
217
189
184
172
195
156
196
210
191
210
153
236
143
243
184
166
160
242
172
202
254
268
221
157
208
229
156
208
199
212
230
252
156
220
219
133
235
175
211
191
257
195
178
174
207
124
234
163
188
248
176
174
190
205
175
221
244
216
176
236
167
192
177
242
203
228
212
132
206
173
227
179
237
216
206
217
167
186
224
222
214
162
163
201
203
158
186
242
187
227
204
210
157
218
228
190
145
216
241
179
161
159
182
199
142
155
239
172
245
95
182
184
193
173
206
179
247
182
247
218
206
185
194
185
191
191
201
202
198
236
236
188
183
238
141
241
200
213
200
240
183
165
164
213
152
232
182
245
209
184
205
199
160
226
219
181
245
150
214
187
208
150
166
202
285
181
220
243
225
191
182
181
254
217
271
171
250
234
187
220
154
227
229
229
220
234
180
174
207
171
103
166
160
214
204
227
256
184
208
171
233
198
160
134
199
160
213
151
219
165
226
245
234
192
143
276
166
190
207
198
246
236
178
155
186
183
144
271
216
196
135
216
203
185
203
239
237
176
221
147
216
212
243
215
168
139
200
229
267
166
253
204
180
167
175
207
201
190
249
240
172
154
201
219
221
148
199
192
258
154
232
239
171
195
238
256
177
193
179
245
200
184
203
250
222
197
195
261
128
228
233
211
229
246
229
163
204
165
181
232
172
210
187
167
218
200
229
221
229
226
227
175
170
184
229
186
236
130
218
186
210
196
173
191
211
205
201
237
226
213
179
219
171
150
274
201
228
134
168
193
181
182
188
218
231
193
234
216
264
198
138
190
230
199
270
175
237
265
167
193
164
199
215
150
205
182
183
270
233
178
215
233
224
222
197
201
212
177
178
172
207
211
240
193
190
233
197
246
248
172
225
158
164
182
170
185
183
181
224
208
186
164
204
198
175
188
195
144
189
234
224
244
206
197
247
184
200
221
264
263
201
183
192
230
124
218
167
223
193
201
184
202
184
162
155
156
161
250
164
184
249
221
198
194
189
216
177
154
161
227
204
203
251
234
200
244
216
211
155
191
160
195
184
191
223
226
227
193
224
167
224
203
284
199
135
208
244
250
160
211
242
206
163
218
252
215
213
163
227
230
178
181
200
252
269
202
188
186
203
181
207
218
196
152
200
190
245
220
161
200
189
186
218
243
151
188
254
229
195
201
198
159
184
215
243
199
202
198
187
156
186
197
194
164
235
250
231
170
261
184
213
160
218
239
218
277
179
166
153
255
262
234
152
239
191
216
201
243
257
244
227
161
177
193
259
178
189
250
200
210
175
183
245
155
208
233
209
138
218
182
179
178
216
258
181
263
184
226
233
193
221
166
173
239
211
246
174
185
231
220
156
244
179
169
187
222
194
168
179
210
211
168
197
153
213
242
217
190
190
234
189
215
204
190
248
220
208
232
229
205
168
246
256
196
153
203
211
191
201
227
166
227
183
226
184
189
219
220
179
161
130
227
217
162
233
190
243
222
189
212
202
284
195
225
199
215
195
168
187
158
190
221
217
164
202
253
210
180
236
190
193
228
192
177
158
191
137
223
149
221
247
188
193
165
200
250
212
183
187
154
157
244
197
241
194
162
209
164
254
194
180
212
189
220
134
241
140
255
185
232
173
180
205
161
231
194
191
196
99
213
168
163
168
130
224
243
174
217
211
203
166
208
229
246
223
230
213
192
190
188
210
194
191
181
222
192
199
252
175
161
237
148
133
176
198
166
145
226
244
153
210
192
180
201
169
178
232
237
179
191
197
162
207
202
167
181
193
227
226
209
185
196
285
157
200
203
210
194
202
171
191
226
215
171
202
146
173
191
223
223
261
198
168
202
222
163
141
212
244
205
221
230
200
218
235
239
254
173
207
176
219
224
191
236
207
249
231
229
210
191
154
190
142
226
177
233
248
228
220
227
256
145
200
236
262
181
184
176
173
212
278
220
164
191
166
166
260
209
196
233
186
214
191
141
195
249
125
170
208
220
168
189
234
212
244
201
186
204
199
240
201
219
259
241
235
235
200
201
214
199
232
246
205
185
199
132
166
209
221
213
220
270
200
232
200
199
168
188
214
146
171
196
184
225
203
232
243
229
216
204
189
203
221
207
201
184
162
235
223
194
185
255
147
124
200
201
208
193
199
203
178
239
172
192
201
253
210
219
211
234
215
195
285
219
169
247
189
156
209
170
227
247
279
190
250
232
197
175
206
253
210
182
241
160
191
184
225
160
251
129
176
173
213
202
194
185
178
253
192
253
157
204
184
217
222
215
221
242
218
224
198
223
212
195
207
124
165
232
235
225
258
177
201
185
205
224
120
189
155
243
169
163
228
209
207
236
176
155
200
177
187
171
220
201
197
217
141
142
213
212
232
206
196
174
231
176
258
275
210
212
173
244
220
157
227
155
270
210
223
231
187
148
227
232
201
199
248
248
189
201
216
161
190
188
192
209
181
194
215
210
172
186
162
212
230
220
234
227
254
185
183
187
169
253
204
201
229
232
180
201
215
239
132
113
241
173
210
186
196
202
197
230
214
174
159
172
145
242
221
219
218
174
194
191
189
273
195
166
186
257
211
208
229
199
191
177
194
257
215
189
184
259
240
178
170
199
190
223
234
186
212
142
218
205
190
211
205
194
135
165
208
188
218
246
227
240
183
177
151
202
259
191
248
237
194
246
247
202
153
185
163
246
193
224
220
160
203
233
184
163
245
163
128
244
180
232
173
196
167
223
142
209
159
190
197
218
207
239
183
219
194
167
219
202
200
227
228
213
202
238
216
168
166
221
158
144
232
214
184
211
212
212
212
214
161
213
241
172
231
221
220
258
133
143
165
259
244
197
267
243
222
172
151
220
175
262
206
164
201
241
246
220
180
122
113
208
177
171
197
206
218
187
238
223
172
182
256
198
268
239
210
199
243
233
252
219
170
176
140
211
100
165
141
235
223
220
218
187
197
200
140
230
201
242
85
211
212
199
162
145
179
179
145
227
221
209
217
197
226
160
238
204
208
184
193
190
184
177
191
245
253
232
235
238
183
223
142
213
224
218
217
183
173
189
162
201
225
137
237
193
180
188
175
237
134
154
163
216
204
184
197
205
234
195
244
163
237
213
260
210
236
245
250
174
182
169
210
241
210
233
192
247
207
193
227
203
192
180
162
233
221
253
191
213
237
213
235
193
203
186
194
226
216
206
215
173
210
194
172
191
163
189
218
159
187
209
224
227
245
257
145
193
176
217
190
155
181
207
285
231
148
170
196
194
248
234
217
211
156
249
206
218
174
252
211
192
190
227
213
231
231
174
236
206
184
134
212
171
151
195
240
247
174
241
211
256
151
185
208
182
258
253
194
167
193
162
147
195
214
156
250
201
248
229
134
202
186
203
200
262
227
203
194
167
145
210
232
183
255
159
187
222
200
199
200
258
147
190
180
263
195
155
208
188
254
184
249
240
212
153
228
208
187
135
171
210
209
181
227
281
231
225
213
189
137
180
168
190
199
160
183
212
143
178
164
199
215
146
211
187
153
253
242
179
191
174
263
219
219
149
155
225
209
238
133
151
229
178
261
200
222
238
153
246
271
246
201
207
230
165
185
197
194
234
178
220
178
167
171
189
182
226
197
211
172
200
121
230
201
241
166
246
132
155
232
181
189
139
269
272
203
229
199
211
185
270
149
157
232
231
172
223
219
227
180
198
190
234
228
213
171
205
196
240
177
247
237
237
224
238
184
218
156
257
168
203
203
205
228
269
168
198
174
243
197
169
219
185
168
202
210
187
206
166
222
146
168
150
245
239
212
246
179
185
168
206
170
221
213
153
200
180
256
205
213
162
222
217
165
186
177
241
168
213
169
224
154
132
167
162
225
198
156
210
170
158
266
183
269
162
207
222
153
203
232
212
178
125
232
225
223
234
221
170
176
155
206
147
176
211
219
227
104
215
183
219
253
213
215
160
166
201
189
209
209
243
231
158
229
199
177
217
243
240
136
252
165
155
189
217
211
218
188
147
170
155
195
225
113
206
226
171
131
203
180
207
158
192
197
193
189
210
139
169
202
218
167
160
158
274
169
179
216
178
251
226
181
235
184
227
232
214
152
221
175
188
226
219
206
242
239
219
194
264
218
185
211
194
297
174
214
203
194
230
145
282
251
207
184
200
196
240
205
216
229
279
149
169
171
186
208
184
244
210
149
207
222
169
215
248
241
215
133
146
195
223
219
198
235
175
163
199
238
220
252
187
163
187
186
237
185
173
241
210
220
138
221
208
139
159
177
186
218
140
241
199
211
216
158
163
275
171
194
202
246
220
210
261
173
249
180
263
171
228
158
187
156
191
185
206
197
231
188
224
296
167
222
208
193
222
229
187
257
253
180
227
184
196
268
207
219
241
186
152
217
192
223
257
197
132
229
168
168
242
174
160
233
193
234
216
230
169
222
220
251
199
154
181
256
169
175
256
222
162
200
168
221
254
172
172
195
216
220
184
187
183
210
232
217
205
182
176
202
224
210
271
198
165
180
226
171
228
197
179
208
226
206
201
220
244
231
196
200
315
191
239
208
222
189
259
180
202
221
272
153
226
242
168
148
242
202
181
214
237
196
228
173
200
235
247
124
184
162
170
263
281
205
214
200
223
219
223
177
221
194
223
155
228
237
209
238
245
213
179
219
153
186
216
164
198
165
168
234
241
197
183
132
179
235
185
229
244
193
228
191
162
217
179
194
248
230
182
194
217
158
267
197
231
244
200
204
155
202
229
210
173
223
190
145
182
202
185
237
199
217
181
172
216
221
197
204
235
205
152
176
149
196
227
196
157
233
244
184
179
189
213
171
235
168
171
236
238
241
229
142
250
120
193
166
219
207
188
130
232
232
197
209
264
226
245
197
183
200
116
180
213
207
199
181
218
240
211
189
201
212
234
211
205
199
191
199
219
180
284
251
230
157
179
144
168
163
191
191
211
198
221
192
188
200
175
257
256
255
201
157
211
216
193
182
203
234
168
208
189
210
164
179
202
209
227
226
186
196
258
216
171
237
190
256
174
209
177
158
209
193
218
266
214
188
141
185
199
210
222
226
222
182
174
156
189
169
186
222
150
206
165
271
226
227
239
233
181
283
176
162
179
221
235
232
187
177
208
186
174
175
198
161
186
201
200
251
269
231
205
223
209
227
210
203
194
192
268
225
235
241
169
236
217
210
212
203
158
215
192
159
214
217
179
259
224
209
179
209
122
181
194
213
206
201
234
205
213
188
198
190
171
196
191
221
210
179
249
171
168
132
237
213
222
185
219
144
193
196
181
212
177
213
189
172
224
229
203
192
162
231
189
137
244
214
247
179
269
208
175
238
193
162
184
259
250
190
223
203
247
221
201
190
248
267
193
214
120
259
199
202
201
203
172
127
237
138
254
225
188
169
205
185
266
180
221
222
173
199
228
176
263
108
200
182
149
267
127
211
243
237
214
218
185
243
155
204
158
189
173
201
118
188
182
157
278
211
208
317
203
238
186
197
240
191
198
175
208
201
215
196
191
250
241
198
159
210
217
137
230
193
191
203
148
238
146
249
157
129
203
156
230
233
230
182
131
210
177
208
182
149
155
190
162
181
141
185
210
293
142
184
180
155
221
173
218
201
223
210
254
174
190
210
214
272
185
263
251
296
237
236
175
147
197
215
188
145
248
138
216
249
124
149
261
219
136
211
189
186
197
165
190
187
199
247
228
230
196
237
224
220
206
169
240
207
211
219
212
141
213
133
220
203
191
169
230
221
186
239
182
104
218
259
232
219
129
149
191
232
238
179
185
209
252
251
170
203
175
246
216
247
195
179
193
158
219
210
199
250
200
179
220
168
185
191
220
260
167
253
214
185
196
200
205
245
223
154
200
188
186
143
204
221
117
224
214
164
130
191
228
124
209
207
231
200
207
146
220
171
182
231
128
183
220
215
244
284
165
188
240
252
251
171
207
205
196
231
140
184
224
130
247
164
172
235
194
222
184
190
191
148
174
179
185
147
239
216
189
214
196
266
255
177
211
236
227
176
188
214
167
155
228
217
224
229
109
242
176
172
163
199
256
252
204
194
118
252
240
226
184
216
190
122
212
171
184
177
218
178
197
199
171
195
194
227
236
134
205
177
204
226
157
226
249
213
191
243
146
173
227
207
196
191
229
155
189
157
201
190
198
169
285
213
210
218
182
148
193
203
228
137
182
253
123
259
216
206
180
217
285
216
233
252
240
204
149
180
183
121
184
184
201
160
195
188
261
201
190
195
230
205
192
180
190
149
220
241
139
179
167
250
223
176
211
183
144
173
240
185
157
177
235
167
154
211
229
209
244
196
150
210
249
210
240
225
211
141
175
116
209
147
131
264
187
224
189
145
134
154
273
252
193
161
200
168
209
170
213
221
168
232
196
248
248
225
210
272
153
254
175
195
196
226
201
155
239
221
187
196
193
217
154
161
237
231
202
155
196
150
205
190
245
231
240
245
234
258
199
199
212
209
218
224
205
169
217
188
254
249
200
158
213
199
205
211
271
210
251
231
212
138
241
139
166
216
249
156
190
218
154
203
183
175
263
197
265
164
196
222
265
196
161
195
160
185
227
160
143
217
156
227
138
237
198
222
233
217
215
231
206
131
278
252
243
238
175
122
227
228
199
253
227
227
159
202
186
187
174
204
228
187
241
175
230
196
275
157
273
259
200
179
215
225
264
135
193
170
182
185
237
220
332
180
212
144
196
202
186
204
166
221
228
165
221
234
236
219
200
201
185
182
170
180
243
194
211
190
180
180
173
137
202
183
219
180
175
205
217
252
211
196
171
192
209
149
165
205
248
153
130
168
213
188
236
175
162
215
188
242
203
208
170
226
177
220
245
154
155
222
195
231
196
221
201
141
207
201
185
248
152
174
247
147
210
227
190
209
199
215
229
236
228
220
150
220
198
178
189
192
120
157
214
216
227
147
167
279
199
214
161
211
195
190
171
235
234
232
175
222
205
211
164
209
235
192
234
133
213
179
234
212
144
169
171
172
221
238
207
203
224
186
225
278
193
191
247
210
177
205
165
204
168
216
194
185
159
162
231
190
239
183
193
157
209
196
215
220
199
168
247
256
160
264
189
240
201
220
173
206
186
164
228
131
175
247
136
265
188
243
227
233
198
232
172
191
171
176
149
219
152
145
150
212
126
196
166
240
284
206
196
207
227
141
134
196
206
196
172
236
242
271
174
192
163
262
243
226
169
168
209
245
200
237
200
174
223
189
172
198
214
225
167
202
247
159
203
191
208
211
174
205
190
204
216
216
162
163
218
242
164
232
250
234
98
236
192
266
148
245
224
155
212
198
195
172
232
198
242
263
219
225
200
150
141
186
211
238
194
184
216
184
241
175
187
222
194
188
216
161
227
181
196
227
174
262
119
212
177
189
192
204
199
236
162
151
254
146
158
175
182
249
172
183
238
222
197
170
209
208
191
209
137
185
171
209
224
229
195
232
226
178
169
188
159
183
180
222
246
147
269
213
240
233
203
215
223
186
272
180
193
207
147
212
182
235
132
226
219
223
248
213
232
192
204
221
224
173
209
203
223
180
197
237
233
231
230
191
184
208
241
195
175
180
216
135
210
256
210
206
221
156
185
228
236
166
194
272
163
197
244
199
209
166
219
231
210
199
234
219
132
263
198
255
187
190
205
205
175
190
218
191
216
196
204
191
233
231
203
119
174
219
189
224
171
211
191
178
227
151
160
222
190
242
151
178
275
238
191
198
219
190
283
269
238
149
234
205
157
144
209
226
250
171
186
199
163
212
206
198
206
168
206
201
167
136
148
216
129
147
160
227
205
178
237
213
206
179
204
173
212
248
229
253
170
196
275
209
191
233
190
180
165
122
165
156
160
222
134
125
161
227
122
224
199
287
174
179
139
210
207
181
192
193
227
160
213
176
231
231
265
209
151
243
192
192
218
218
210
148
206
178
180
146
247
197
166
209
222
207
199
203
256
211
169
214
184
234
170
156
226
236
247
247
195
268
161
163
213
232
254
243
220
205
176
229
213
228
208
246
180
217
234
194
200
202
227
221
211
186
221
135
206
214
240
216
231
161
214
205
162
189
189
163
258
133
206
251
203
150
217
215
178
225
239
213
236
247
280
218
196
210
236
128
218
263
260
196
177
208
205
235
183
237
200
208
173
182
205
169
212
210
193
249
226
255
262
247
177
205
207
210
100
215
148
256
241
177
177
199
255
154
151
228
202
185
233
120
211
184
197
257
182
265
177
177
229
222
220
126
256
175
235
197
138
235
230
201
209
190
195
161
232
170
179
225
216
220
164
192
170
231
150
196
174
188
198
238
170
210
212
250
212
225
244
186
217
229
180
201
198
206
182
178
175
228
187
187
201
231
259
229
157
220
174
240
192
146
191
204
217
207
184
198
212
172
164
172
217
200
189
223
246
162
175
190
187
151
159
200
161
194
266
131
135
234
175
165
145
172
156
266
251
193
183
222
201
189
160
261
239
125
209
205
211
186
198
249
197
227
256
229
222
178
223
203
213
235
195
233
233
198
158
229
199
132
217
226
190
148
185
214
254
188
230
177
244
163
140
158
150
291
239
174
163
162
203
200
219
260
180
207
199
189
185
226
182
259
189
168
172
217
254
188
250
188
194
199
262
224
219
140
188
230
205
188
142
217
213
188
158
174
209
189
258
180
206
278
245
129
234
202
167
232
155
226
163
201
160
212
244
223
183
221
171
222
233
219
211
252
191
239
147
213
206
193
224
158
178
218
234
271
206
233
202
206
192
175
225
221
195
247
188
207
199
182
250
227
223
241
171
188
194
149
267
233
162
213
128
178
203
223
136
127
150
223
168
106
249
199
174
223
210
205
231
176
245
170
258
141
228
171
167
215
151
202
118
275
204
198
206
189
234
191
233
212
198
200
208
214
137
233
211
202
170
181
181
218
174
203
219
210
191
135
176
195
179
244
168
205
216
188
232
179
238
179
211
227
276
140
161
236
169
235
93
177
213
162
238
180
233
203
237
191
231
189
180
274
188
222
202
233
210
264
198
223
214
280
155
189
163
228
238
197
232
151
133
215
183
190
135
200
190
204
199
253
227
186
207
206
190
221
177
216
162
137
230
204
124
199
239
251
189
94
180
201
180
219
199
245
158
174
191
181
226
199
174
143
209
149
243
206
130
187
212
190
284
229
232
180
142
156
172
232
244
175
81
196
165
199
248
239
195
248
209
240
281
215
215
204
141
245
242
220
218
224
274
182
165
163
219
265
262
220
157
210
263
225
165
188
151
239
154
160
212
171
167
208
175
193
249
188
191
264
203
204
231
204
176
190
244
184
224
151
191
223
232
209
266
171
238
166
219
214
201
270
204
235
222
159
193
186
195
202
255
207
197
218
152
166
241
268
121
231
177
204
187
176
256
183
220
185
245
202
202
223
122
186
228
148
224
226
170
195
269
167
183
212
209
228
197
172
186
199
194
266
225
233
267
144
139
207
201
223
121
153
206
177
204
195
175
169
206
197
198
163
134
172
161
137
191
208
179
161
228
211
187
145
206
223
237
245
204
261
173
200
187
257
217
213
217
251
248
213
176
180
150
201
174
214
228
249
120
182
191
165
170
185
237
142
228
215
174
219
239
228
177
177
189
170
226
194
269
246
191
189
157
274
166
174
198
248
199
170
177
176
157
184
175
230
219
185
168
170
242
154
183
173
236
229
142
244
143
211
224
250
189
239
242
225
241
198
211
167
227
226
208
247
211
141
258
163
165
262
248
230
135
192
250
205
159
223
183
194
153
205
261
191
211
187
199
179
239
143
165
187
174
190
196
185
239
217
243
166
223
217
152
219
202
170
184
193
156
250
205
191
179
181
266
154
155
295
202
273
177
263
199
157
244
232
167
188
165
205
158
176
141
249
172
197
164
252
171
205
173
216
230
105
210
232
192
247
224
151
201
178
200
219
231
206
185
222
208
226
168
131
184
188
224
250
277
180
185
255
127
211
202
152
207
196
162
199
209
228
147
171
193
200
195
186
199
197
239
183
263
198
209
207
211
200
163
260
202
204
149
148
211
225
174
254
218
262
214
216
174
251
186
222
191
201
239
129
213
151
177
253
172
167
242
189
173
216
185
206
192
189
253
207
200
189
176
188
232
179
184
200
198
233
147
132
171
252
222
164
163
129
212
189
234
215
173
230
143
221
223
131
226
240
181
210
153
229
225
172
195
173
218
196
186
233
183
232
198
191
215
191
187
123
219
189
219
278
269
170
215
196
180
203
166
188
183
200
175
245
222
203
176
215
170
260
217
127
208
218
185
200
218
175
194
177
116
184
220
212
140
177
205
246
225
205
288
179
245
224
198
262
203
212
133
188
213
194
234
205
127
223
237
189
160
188
199
211
224
220
182
200
224
250
145
147
224
228
218
222
252
171
239
179
194
211
215
159
162
203
192
169
204
174
200
191
204
154
203
178
150
154
214
180
228
241
187
160
194
224
217
211
212
207
162
232
198
108
273
190
193
220
240
222
184
205
245
144
218
219
192
178
262
193
211
178
183
241
206
176
231
226
171
190
173
164
190
173
178
217
214
176
199
190
209
223
214
196
149
211
187
184
204
209
179
215
240
209
210
181
222
159
221
202
216
132
163
210
265
154
247
131
258
210
211
217
193
201
195
178
209
192
192
229
188
122
221
209
224
265
241
210
204
160
208
181
220
201
214
229
227
165
146
257
159
208
191
220
200
221
199
231
238
234
191
226
179
151
209
224
229
176
189
213
161
229
212
203
210
111
204
143
155
221
281
199
208
269
225
151
94
223
193
168
214
152
195
191
282
204
197
197
191
264
178
164
213
203
176
212
203
203
242
192
192
168
160
207
258
198
170
198
170
271
180
179
105
215
152
175
191
225
144
272
205
242
238
203
183
223
268
194
192
221
179
246
209
202
200
167
201
172
151
170
274
210
231
205
246
141
240
160
132
209
160
217
145
229
207
235
236
197
191
229
138
229
184
204
191
184
179
239
154
146
190
172
217
201
203
198
216
133
248
186
200
212
261
182
198
206
167
206
180
151
163
209
255
234
167
225
219
236
187
187
254
165
173
201
215
218
214
216
212
217
158
142
148
224
227
183
207
185
197
242
137
206
218
219
199
164
216
196
238
261
175
209
234
195
213
174
233
173
221
138
174
221
176
148
231
211
178
203
185
227
197
210
201
239
172
201
259
210
204
180
178
228
231
221
256
148
197
264
220
204
124
196
143
147
177
186
227
161
175
212
145
198
206
121
224
240
211
227
154
189
217
164
228
158
188
151
209
154
202
197
251
159
177
211
214
270
142
248
176
201
222
189
122
140
179
264
161
132
191
232
220
143
240
180
188
232
168
190
283
182
195
180
174
224
183
181
228
184
214
174
210
210
172
145
279
194
176
139
252
190
165
214
196
248
225
183
237
158
258
208
194
176
221
180
176
134
191
224
204
216
225
233
209
236
181
153
193
166
195
165
190
177
181
146
166
210
190
262
227
241
238
221
206
214
203
213
141
194
161
193
201
230
179
189
183
241
218
250
234
212
175
161
210
213
150
229
173
123
218
180
212
194
240
220
244
149
275
182
254
165
217
150
219
167
189
175
220
140
161
248
206
175
111
202
251
243
176
199
210
179
242
273
196
177
265
188
191
180
237
172
244
182
168
226
230
165
252
227
186
230
218
151
234
234
232
241
191
209
166
236
201
187
295
227
217
201
207
186
235
246
185
182
266
226
193
175
184
183
159
184
170
216
207
177
182
254
212
179
223
207
208
178
146
183
237
195
208
189
191
206
209
188
194
228
230
202
172
163
161
252
182
202
221
254
194
229
236
187
196
208
186
166
239
199
236
147
193
128
168
265
237
205
200
185
192
236
232
199
171
174
161
169
254
190
137
197
150
214
199
166
148
241
256
176
215
186
256
211
183
191
218
291
236
218
233
174
156
187
200
195
195
118
204
228
225
152
174
130
235
250
203
215
184
213
213
223
196
195
244
257
201
205
215
234
221
227
260
224
215
251
174
219
242
248
238
199
167
182
247
209
180
230
224
154
236
207
194
230
208
164
227
228
172
164
202
136
222
255
151
162
187
205
190
262
200
196
245
210
106
131
266
163
209
233
145
205
248
245
212
224
272
241
189
124
249
195
180
223
251
175
192
179
209
222
201
190
211
179
162
253
176
192
169
193
189
137
196
239
207
190
217
196
232
225
259
207
220
198
211
184
182
193
218
182
118
208
172
214
236
165
214
203
198
169
158
189
157
194
206
202
198
183
265
184
205
285
248
166
221
177
206
199
160
184
216
161
191
236
168
196
236
127
202
233
231
195
235
233
242
148
175
252
198
217
253
141
145
229
197
223
222
243
136
170
181
226
196
176
192
177
130
223
193
156
191
208
160
209
173
192
212
231
158
185
168
240
184
207
210
203
264
183
129
210
270
169
213
250
199
250
175
185
242
196
216
164
200
201
177
235
210
197
137
207
176
302
116
210
166
198
141
142
156
200
225
258
199
215
218
122
149
207
186
182
164
178
215
174
211
179
214
193
207
73
211
197
199
255
231
181
198
225
208
216
199
158
149
201
136
214
227
188
217
219
135
228
174
221
250
221
263
182
184
197
168
210
224
239
214
203
236
228
193
178
159
217
181
194
194
182
185
181
172
180
206
237
204
145
245
225
181
185
303
186
198
259
225
190
151
238
165
207
221
136
180
220
253
203
210
191
175
229
187
178
262
226
223
199
207
202
251
217
209
162
195
212
234
172
191
219
220
211
226
223
244
231
191
227
131
168
207
229
190
211
181
222
230
166
215
225
210
173
215
166
214
177
226
159
178
225
144
147
202
178
213
215
209
233
127
128
227
160
187
244
210
254
125
245
209
198
199
207
210
216
219
170
252
263
160
127
275
235
214
170
216
187
247
135
254
218
229
169
200
203
255
182
212
181
243
158
238
255
170
238
221
216
210
173
280
140
174
235
189
230
170
221
215
235
203
155
196
244
119
172
214
214
233
123
161
215
268
187
167
255
229
210
168
202
162
189
216
178
262
181
249
167
224
192
230
148
210
157
165
186
213
186
187
195
222
154
172
223
232
249
187
196
283
169
158
224
218
217
226
175
231
286
242
217
197
240
262
237
214
254
193
197
217
261
250
229
172
250
256
201
180
160
250
152
180
211
238
205
180
215
194
247
183
223
177
182
190
222
151
207
212
167
196
214
209
205
183
230
241
174
208
180
201
247
218
210
174
234
190
153
173
217
141
244
212
212
241
195
219
212
184
121
184
195
204
161
160
190
210
186
160
284
191
171
144
209
202
179
230
163
211
182
188
207
256
212
225
242
208
270
216
215
216
151
235
148
252
162
211
216
219
228
178
243
197
187
100
192
221
184
170
203
208
192
257
268
191
173
159
238
174
216
192
117
132
162
222
203
243
187
199
244
213
204
159
185
131
215
161
219
217
230
246
214
216
158
226
200
193
151
252
238
193
165
153
255
216
185
215
271
193
159
135
225
217
201
242
211
194
213
160
180
218
220
208
168
164
186
241
177
146
239
224
224
223
180
216
184
143
211
230
220
227
246
206
231
158
179
248
188
153
154
196
211
199
213
187
226
276
184
219
209
168
218
248
218
176
129
160
226
226
207
164
220
190
262
227
171
208
176
135
246
209
173
167
215
194
189
121
210
209
221
222
178
166
246
210
231
199
218
231
241
243
234
216
183
199
230
132
141
196
221
255
176
179
210
223
214
181
240
231
209
160
160
220
218
229
199
164
231
146
199
165
155
223
221
225
186
240
213
220
204
173
193
247
242
212
240
195
214
153
138
170
207
214
210
231
240
235
188
244
216
238
225
243
226
199
252
149
248
148
188
183
192
219
249
199
242
238
260
173
223
214
206
174
112
208
217
185
205
245
230
219
242
215
230
231
193
234
218
265
258
195
219
204
159
206
183
170
236
217
190
198
214
137
250
223
156
220
210
197
195
216
209
206
177
231
246
149
199
224
196
239
212
210
178
217
243
234
141
252
237
156
160
257
214
170
211
176
238
179
225
184
245
157
198
150
230
240
169
200
214
245
213
193
195
276
196
171
215
221
141
203
149
215
203
257
209
195
188
216
129
284
200
167
149
195
180
283
236
182
152
123
214
223
239
169
172
131
242
215
202
171
237
204
294
243
249
195
179
246
203
261
265
277
240
229
212
213
202
211
233
186
244
151
141
165
233
203
258
231
216
186
192
180
193
222
267
218
227
175
158
229
175
207
172
172
173
219
213
243
308
187
144
227
202
171
232
214
169
154
190
187
153
210
198
220
218
206
219
221
229
190
192
187
156
149
184
191
217
163
228
248
215
203
177
216
190
202
208
207
231
202
166
213
189
208
206
198
240
191
243
166
187
160
225
261
234
165
227
217
150
212
176
243
224
177
154
224
188
172
137
215
218
235
257
212
203
192
196
220
176
220
203
201
198
193
222
186
235
227
190
146
207
241
247
178
180
165
213
126
165
201
185
192
131
246
236
199
249
209
178
231
162
193
168
221
225
152
162
235
221
185
189
171
178
230
158
123
200
222
190
228
214
212
102
232
255
219
213
216
244
147
181
186
208
257
235
209
171
229
187
215
198
201
198
192
243
193
136
286
210
174
241
220
258
220
192
234
163
182
196
159
225
232
230
148
146
223
204
191
233
266
181
215
190
131
247
237
203
171
189
234
226
237
235
222
218
255
165
223
148
259
208
215
235
178
190
238
131
194
229
167
225
192
230
214
130
165
204
170
245
196
221
202
193
177
197
281
226
202
222
162
197
166
181
181
192
219
224
255
186
175
223
188
246
180
194
276
194
209
174
199
263
216
187
226
210
258
183
227
233
169
192
161
197
225
186
187
233
225
202
156
205
208
241
179
181
171
236
230
243
169
209
187
214
234
265
252
197
186
155
216
221
211
216
203
208
231
197
211
187
234
216
193
212
154
208
214
228
151
269
218
168
247
201
153
250
185
224
253
194
217
173
191
209
160
197
246
252
231
219
228
245
218
232
183
162
163
234
224
183
216
239
218
221
264
245
175
206
144
232
213
179
242
186
207
263
180
179
205
158
201
201
250
161
233
215
184
177
184
184
197
188
227
194
140
169
204
169
160
155
195
220
248
205
181
176
182
176
219
250
192
250
249
191
215
227
179
214
212
234
257
117
216
226
239
187
179
245
225
179
191
170
244
214
197
236
252
201
196
219
217
192
184
215
190
197
166
263
195
249
145
140
153
232
250
218
220
241
193
194
165
172
122
163
308
194
206
155
211
247
206
184
177
220
209
136
189
180
246
149
222
211
145
131
250
181
237
225
166
253
204
213
134
246
179
216
215
154
165
176
181
190
290
239
218
176
247
215
252
245
194
142
213
214
224
249
194
163
254
188
178
235
269
197
194
213
239
172
168
245
208
232
179
213
175
208
208
162
184
220
179
203
180
218
146
183
198
203
175
221
179
204
176
169
164
231
175
200
175
228
171
211
217
208
153
143
213
208
153
218
199
184
236
221
198
241
168
262
190
206
188
144
176
247
219
213
164
271
225
157
155
251
245
192
223
167
211
203
144
195
240
206
244
189
201
225
136
199
168
184
235
207
165
207
160
220
216
221
208
126
199
206
229
219
219
219
233
237
164
205
196
234
252
217
219
193
202
216
290
181
185
190
253
198
225
137
214
197
169
196
190
252
208
141
175
209
199
155
164
201
211
140
206
200
217
196
151
181
218
176
234
243
192
214
204
233
250
212
194
175
176
219
153
263
185
166
126
116
195
196
219
186
217
248
226
199
172
195
171
196
197
143
151
238
223
243
201
208
152
180
232
159
236
206
200
175
200
228
164
192
163
147
191
196
206
240
234
201
232
164
183
197
224
166
223
219
210
171
157
186
245
244
201
210
203
146
174
180
145
209
177
263
171
198
244
264
192
220
216
204
214
174
200
157
200
178
203
152
206
232
241
261
161
165
238
195
240
123
191
257
259
186
223
158
202
132
207
247
241
186
129
221
171
207
214
162
206
178
164
180
209
202
242
184
178
225
175
224
264
228
179
190
266
199
214
187
180
190
241
197
163
185
251
235
262
211
140
172
163
153
230
148
178
241
217
232
166
279
194
191
169
225
258
210
199
196
261
202
210
208
239
170
257
167
141
249
245
231
205
142
127
176
261
273
225
186
150
186
196
209
162
222
220
129
121
244
227
199
148
203
197
226
214
176
179
164
220
206
122
197
225
197
219
187
226
216
221
219
197
166
182
196
169
161
180
178
241
149
162
188
239
178
244
231
197
245
221
209
210
238
212
178
201
215
267
223
239
198
270
204
220
191
213
228
220
178
240
160
267
192
135
194
285
222
247
226
148
139
150
188
211
234
233
250
188
219
253
267
217
282
210
186
241
190
173
250
265
181
202
227
163
192
205
254
270
198
199
172
169
227
207
120
185
186
213
205
172
194
133
158
213
189
206
198
211
215
190
226
174
212
203
229
211
180
228
169
190
227
232
234
235
226
152
205
195
192
219
212
274
249
215
207
229
234
258
128
198
166
265
206
234
184
177
219
276
185
198
180
228
206
213
183
156
198
153
153
165
165
242
168
189
210
177
201
218
241
227
202
234
164
179
198
219
211
221
187
231
205
185
199
140
254
203
219
188
194
212
245
214
181
205
175
254
195
225
162
254
245
237
192
221
229
236
215
247
235
253
188
144
214
187
173
126
199
218
242
171
210
249
189
201
180
129
185
251
212
168
219
222
148
185
191
203
258
186
152
202
188
179
178
210
187
191
188
228
187
266
144
189
186
187
211
181
186
227
228
210
153
167
184
183
159
202
185
285
205
207
234
202
215
181
175
200
198
217
185
199
136
226
232
174
210
179
207
201
135
199
136
186
248
193
194
224
201
187
191
207
165
219
177
202
184
222
216
182
211
233
240
201
179
233
226
141
207
174
120
171
165
168
210
199
123
134
186
207
144
210
241
155
199
249
169
152
243
193
209
187
256
204
194
227
232
200
239
227
174
230
162
133
213
207
174
168
235
217
144
247
214
204
156
176
211
230
245
273
209
204
189
176
165
207
180
253
207
172
209
203
288
182
211
226
126
121
207
174
194
132
215
190
236
275
196
220
207
203
196
184
227
239
233
207
251
206
246
194
220
194
177
247
249
196
148
215
231
199
178
188
242
197
191
211
164
199
242
225
199
179
155
181
155
209
220
187
225
143
219
120
217
173
197
232
208
199
203
162
142
222
266
184
180
237
182
206
162
205
239
223
146
187
219
195
212
210
215
168
183
258
192
168
196
173
190
217
182
185
240
209
237
171
162
189
263
185
141
195
182
194
181
167
137
222
218
189
199
253
202
258
200
155
163
156
166
203
147
124
186
165
252
175
233
157
206
210
201
252
221
192
151
149
230
190
231
193
221
189
171
250
261
218
162
117
275
231
226
209
123
217
323
249
206
183
145
197
231
177
207
233
180
182
158
237
234
189
200
214
222
192
179
241
197
244
172
139
196
213
163
165
176
175
228
283
267
227
236
290
260
199
274
226
227
211
120
225
210
187
168
154
184
220
161
162
186
169
170
189
206
179
212
241
219
117
198
257
258
239
222
180
169
224
166
209
218
215
196
168
263
185
219
146
237
231
274
192
207
132
182
159
143
169
162
234
231
113
211
209
236
225
270
160
204
215
182
193
234
246
206
233
210
228
203
238
195
135
214
229
241
246
279
146
130
156
229
238
165
211
177
230
162
149
202
234
231
224
247
208
253
231
243
227
148
214
197
240
164
255
229
234
216
167
214
231
245
217
211
234
216
221
256
136
191
230
183
144
193
262
164
208
132
174
210
253
207
241
228
210
197
127
262
224
213
231
216
162
243
192
191
237
200
200
179
202
217
157
145
135
197
191
146
251
184
127
235
173
169
197
166
64
175
196
132
213
208
172
211
222
233
254
251
179
214
176
127
190
206
226
186
213
189
259
183
227
261
281
186
144
213
205
181
238
256
180
244
251
215
175
181
174
175
193
231
174
176
177
239
253
263
183
225
198
176
183
198
233
127
196
203
192
177
240
212
248
201
190
204
187
172
157
238
319
242
273
214
252
187
211
202
225
250
185
245
177
182
208
206
126
233
215
199
191
257
194
244
184
203
239
242
186
157
205
238
247
202
166
250
248
185
187
170
185
207
196
189
117
219
177
231
219
158
222
204
221
211
276
196
192
289
196
227
166
209
265
138
201
232
185
185
130
128
181
256
305
233
225
208
186
237
226
158
198
245
121
199
198
244
152
191
131
226
211
118
160
210
261
205
216
227
155
202
163
243
186
248
182
249
234
153
158
218
220
242
232
154
233
223
208
185
227
192
184
251
184
237
175
246
160
238
236
175
226
231
211
161
196
169
203
198
197
234
223
201
226
177
184
198
203
266
194
224
229
154
170
175
196
212
236
202
236
104
246
224
261
225
257
200
254
197
195
259
178
179
187
244
217
211
163
234
238
235
190
203
262
175
221
160
165
203
202
169
195
171
224
214
186
185
148
164
173
199
230
187
200
242
192
172
210
222
238
217
231
216
238
261
221
269
211
255
247
230
215
259
197
144
218
210
257
189
124
198
177
185
113
222
216
156
188
238
141
213
198
172
251
155
192
201
223
248
191
262
243
201
125
167
249
219
220
231
248
288
201
204
222
210
226
161
204
185
157
207
210
191
161
210
216
245
255
188
190
239
186
237
242
250
158
190
175
205
250
228
155
137
237
167
162
223
222
167
259
270
181
164
224
159
218
247
205
146
205
205
210
191
172
194
184
186
206
249
224
232
193
170
182
203
233
164
180
210
200
235
173
218
222
272
214
209
253
227
179
192
178
181
194
175
221
279
200
247
218
170
165
176
167
215
155
128
184
199
249
197
230
231
194
231
206
126
225
131
213
182
208
215
221
104
205
262
173
206
252
244
222
244
133
152
226
96
132
220
230
173
155
171
215
227
162
191
200
203
209
184
181
149
167
136
209
179
245
167
236
207
258
250
160
208
205
166
206
247
157
202
83
145
195
184
206
208
230
260
236
194
218
157
240
140
206
126
217
238
247
208
227
229
175
156
190
165
172
237
207
265
244
220
179
195
185
184
195
138
189
173
220
167
121
174
163
220
117
204
154
216
227
196
150
205
207
204
175
209
216
188
231
190
175
261
153
160
184
206
188
182
179
195
187
204
199
230
132
237
209
173
226
100
219
208
204
239
156
188
147
221
179
194
202
237
159
159
227
242
151
229
209
247
257
244
172
184
178
190
238
181
222
160
197
209
217
188
162
201
210
188
204
199
214
193
226
174
180
169
179
259
180
246
210
268
225
194
189
176
168
229
187
145
202
223
217
180
164
202
231
147
144
209
218
210
199
203
264
232
194
176
209
170
179
177
252
157
238
211
233
189
207
196
192
239
204
169
230
208
207
260
144
143
210
143
167
209
162
208
234
200
240
194
197
196
173
244
192
240
167
164
216
243
210
195
187
134
176
225
263
185
234
182
257
208
204
248
215
224
258
234
266
245
221
206
239
242
226
223
204
239
230
173
208
215
179
156
185
197
234
225
188
196
190
211
210
218
208
213
201
222
222
181
174
210
192
175
203
163
265
249
178
241
227
176
173
232
233
205
224
166
260
265
204
169
175
215
190
151
221
182
228
175
255
166
243
157
246
225
224
196
177
210
250
228
165
202
158
208
202
232
183
163
219
207
252
215
225
258
232
197
200
207
186
238
239
131
140
176
219
198
254
232
202
162
166
160
133
164
202
217
190
205
204
193
245
197
228
210
179
187
139
172
195
182
213
203
224
188
235
171
228
245
177
205
183
171
151
171
206
238
215
221
164
228
189
170
237
168
226
201
134
153
239
160
202
127
174
167
190
174
139
235
198
206
262
186
203
166
183
238
277
186
190
182
129
229
213
183
186
202
148
178
198
201
237
157
236
196
166
167
147
213
197
201
148
116
184
195
190
194
195
178
187
179
247
219
253
170
111
220
153
231
210
218
177
170
196
218
222
201
239
214
178
203
225
243
263
266
185
196
243
173
184
233
179
192
205
205
198
230
226
169
260
259
254
187
223
228
197
206
228
182
211
219
171
219
151
202
137
217
203
245
165
239
206
194
172
196
208
225
140
173
267
228
223
241
223
204
144
245
186
212
213
227
204
156
238
236
170
220
270
271
209
179
186
258
200
182
231
167
207
246
166
222
166
210
116
248
213
175
255
200
222
182
223
222
215
225
177
156
259
166
209
198
239
223
229
176
223
221
261
173
176
197
241
233
224
231
210
167
226
180
195
160
173
223
195
224
162
237
193
176
237
161
196
142
158
218
142
209
229
191
221
151
169
215
219
174
170
204
202
141
158
147
204
192
206
200
243
217
219
204
201
148
202
193
147
146
143
193
234
155
235
215
167
243
245
178
240
178
196
141
183
234
215
135
94
176
181
216
237
205
192
220
192
161
172
215
208
202
233
167
221
187
207
166
161
235
229
186
132
168
198
167
191
251
153
243
251
201
261
133
203
228
162
216
210
232
190
173
256
188
199
163
251
218
213
212
140
128
186
213
172
248
209
239
177
115
192
200
193
193
244
221
167
138
178
173
234
165
187
178
119
241
234
220
130
190
278
181
220
170
185
233
231
136
224
177
169
161
124
179
251
245
229
248
242
148
266
205
177
241
204
226
161
239
165
221
148
217
187
182
148
128
187
181
149
137
234
194
228
176
175
138
206
160
150
178
194
196
186
250
211
245
185
239
179
231
187
175
175
197
213
187
278
190
85
236
196
186
195
144
207
185
211
230
164
207
215
236
208
193
243
167
183
178
222
144
205
187
199
235
186
220
232
207
178
222
226
229
188
127
187
115
210
210
151
195
198
226
198
178
228
166
200
201
195
209
205
126
216
256
214
224
285
212
201
223
196
220
245
260
208
182
248
134
206
130
200
150
213
172
179
221
114
177
184
216
235
238
201
242
205
199
154
186
169
304
211
204
128
227
177
253
147
185
212
192
224
233
207
185
234
114
199
218
220
212
158
216
194
219
259
189
130
228
137
222
269
182
232
255
235
172
193
130
260
185
160
224
163
246
153
205
225
180
158
166
192
188
104
156
235
180
191
219
195
197
224
221
155
258
194
178
137
279
212
183
135
177
178
199
191
154
163
227
172
167
235
256
153
191
160
151
170
225
214
233
188
149
204
210
264
173
207
195
208
183
195
183
192
204
213
176
165
213
243
188
177
181
187
262
201
210
260
187
226
177
177
177
212
153
233
189
200
202
208
241
207
184
227
231
139
160
163
238
214
196
220
163
97
263
235
204
213
139
149
189
193
238
241
200
164
206
239
195
160
112
206
216
246
258
160
200
170
156
232
219
134
196
227
180
201
225
243
200
192
189
202
229
243
157
211
214
242
224
229
243
210
162
241
190
252
301
205
205
199
150
175
211
158
239
231
138
153
207
210
216
204
194
147
277
244
173
177
226
208
196
207
242
164
189
238
238
221
254
177
182
194
219
166
229
226
180
218
209
190
211
180
212
196
188
220
204
203
181
268
225
232
225
160
197
207
218
255
166
261
193
167
183
182
222
249
206
168
195
187
178
218
173
163
207
156
209
164
210
189
222
219
174
184
188
146
259
166
208
238
231
254
217
187
196
237
176
196
214
219
122
151
172
162
207
226
142
247
162
235
146
193
167
202
216
247
190
233
224
152
215
274
251
235
235
247
202
180
143
208
175
155
246
213
257
215
227
162
165
212
91
196
186
217
202
148
239
214
223
199
246
223
203
127
155
179
171
191
170
172
205
241
179
172
164
232
215
185
237
192
199
189
189
211
167
185
142
214
223
240
194
253
182
144
141
206
217
160
214
196
226
200
192
184
179
229
111
232
208
212
211
158
178
182
206
162
159
205
102
156
192
207
243
176
247
231
208
244
234
187
207
188
210
213
222
226
152
210
284
180
224
210
229
194
170
180
213
266
177
232
108
218
222
225
210
194
192
231
215
183
201
225
219
140
232
211
170
168
197
153
186
207
224
220
180
206
182
245
227
211
227
204
227
180
155
213
202
198
182
190
163
235
123
216
151
204
148
174
217
161
151
189
258
185
183
227
188
173
178
211
155
198
211
172
209
143
186
203
238
187
195
223
211
238
215
150
220
222
226
159
242
210
177
267
230
205
205
194
195
155
200
229
242
216
295
243
261
191
191
238
206
217
242
245
163
215
213
243
224
227
182
195
199
242
180
196
169
170
179
252
220
183
221
213
204
182
188
189
141
222
217
192
181
198
227
243
273
182
171
134
230
251
148
201
206
224
200
199
213
198
191
173
216
198
222
216
156
208
241
233
160
239
202
164
175
222
131
218
185
222
201
220
196
226
176
282
235
192
218
181
144
176
215
234
163
270
220
188
169
210
234
190
276
208
242
265
170
224
254
185
209
185
127
224
219
229
176
175
233
161
248
212
195
232
190
188
115
145
223
236
206
211
197
232
205
212
185
224
135
150
167
225
203
221
253
252
180
175
271
195
183
150
153
247
214
195
190
219
223
178
131
183
209
267
239
161
196
238
170
188
128
209
182
196
213
251
125
193
185
215
174
233
174
202
240
199
174
215
141
173
196
190
201
173
183
200
183
221
229
256
195
219
209
250
213
172
170
199
168
224
177
191
216
190
201
174
238
127
230
208
187
273
240
229
136
231
242
191
113
230
208
230
220
187
200
187
187
187
186
241
181
255
248
211
252
194
186
171
229
186
108
274
163
168
202
228
227
199
151
214
130
125
238
188
146
229
165
158
228
112
218
200
191
137
254
204
172
236
201
102
141
165
208
155
211
217
242
225
197
209
195
247
156
224
186
226
210
218
237
211
223
138
219
159
196
222
143
227
262
169
120
178
196
233
163
243
147
226
210
237
171
204
245
207
256
277
175
219
229
203
251
270
276
189
222
172
229
162
228
234
161
180
235
196
205
236
187
209
252
191
209
245
248
192
184
237
199
188
192
219
227
201
218
152
122
214
211
208
205
211
156
172
205
167
183
225
221
222
239
207
185
177
208
163
149
215
203
179
194
198
229
188
180
216
129
167
208
194
191
238
194
194
248
168
184
242
243
219
169
191
198
223
234
224
244
224
230
240
235
234
218
249
213
196
246
195
162
186
270
134
263
219
232
234
153
221
215
205
254
152
227
217
203
146
259
246
217
163
223
168
208
195
165
200
177
201
186
282
256
212
125
174
188
245
253
171
218
131
172
249
204
194
168
241
183
247
156
214
96
182
181
211
231
184
143
194
238
217
195
197
225
158
233
244
195
200
231
232
205
203
201
254
271
210
246
199
191
185
270
179
188
209
191
120
191
145
196
217
131
133
219
190
227
236
216
217
171
203
213
187
167
253
223
262
228
187
222
220
268
214
204
181
220
202
261
177
218
239
233
211
196
179
175
208
191
179
164
185
151
217
207
194
168
196
226
203
197
144
227
109
196
170
232
219
202
196
218
188
172
245
205
237
206
241
152
187
212
191
126
199
177
197
179
183
213
205
275
190
183
213
237
180
139
211
210
170
191
187
221
254
219
195
177
203
210
203
180
205
221
229
172
194
178
230
178
277
185
232
181
155
208
182
231
208
187
185
142
228
220
213
214
170
246
214
215
257
154
193
165
122
235
151
92
215
122
253
239
202
203
180
155
204
186
169
236
195
152
234
201
161
136
213
230
180
151
193
216
209
202
173
211
197
156
247
239
203
203
213
140
198
209
213
251
166
189
217
210
161
216
188
239
172
195
249
116
255
176
147
202
182
186
197
187
175
236
250
191
209
158
171
209
217
190
179
190
196
204
193
218
233
199
172
150
188
218
221
244
167
234
250
203
213
221
213
220
150
165
185
165
165
220
201
154
172
222
205
228
206
150
248
164
216
211
221
171
191
215
254
189
183
234
228
207
191
226
244
137
184
234
148
190
228
184
220
183
185
162
186
139
186
209
210
208
202
247
171
239
219
189
173
233
192
179
173
202
216
216
222
196
191
212
270
214
223
186
197
231
208
208
153
180
185
171
218
229
137
233
229
273
139
144
281
161
191
209
202
205
195
207
185
136
181
250
237
139
256
250
185
128
200
243
230
160
230
203
232
236
177
245
258
200
199
250
148
179
211
234
214
249
217
151
182
193
220
199
248
189
182
149
176
232
134
174
227
223
238
228
207
221
207
179
210
188
103
257
201
150
204
169
127
232
138
173
210
211
179
165
184
229
157
207
256
203
144
230
242
183
270
244
200
94
170
126
209
244
205
123
250
168
227
241
197
244
166
207
193
194
167
182
178
184
177
185
172
176
121
251
197
170
218
164
194
227
213
158
242
211
304
233
171
125
150
254
181
189
150
165
248
207
208
227
195
213
102
241
178
201
138
252
251
252
218
201
155
218
188
164
129
221
216
224
189
202
270
132
204
175
219
248
161
217
242
230
189
219
222
164
181
167
193
222
235
195
267
164
203
182
166
154
221
184
221
166
224
231
196
221
168
178
179
153
170
148
182
160
154
214
143
207
171
198
263
184
216
151
161
229
186
216
246
191
194
202
235
137
227
170
189
136
201
175
183
206
196
162
151
105
187
247
177
223
193
222
214
211
156
213
163
176
142
232
180
201
204
204
272
241
234
221
221
161
182
228
264
165
180
158
255
223
180
210
194
141
155
251
207
232
145
201
168
235
167
191
256
201
191
198
263
138
183
206
196
214
235
226
234
247
261
196
195
135
211
202
222
225
209
120
257
225
177
133
215
180
221
204
215
193
225
252
234
251
178
146
212
227
144
230
107
190
285
146
187
176
218
226
200
251
135
228
231
206
186
206
237
170
180
140
198
188
243
237
198
163
164
216
176
195
207
251
221
247
224
154
151
196
236
234
166
201
216
241
195
237
179
189
150
211
191
266
258
160
245
185
200
202
207
113
210
216
193
112
130
166
233
241
158
206
188
248
157
214
200
211
247
210
182
185
130
186
198
233
184
231
204
207
188
189
191
219
170
162
200
153
266
185
211
168
149
201
233
201
162
199
173
186
198
205
185
207
229
261
173
223
212
199
194
229
162
240
112
232
273
190
208
204
209
133
200
184
228
217
231
203
180
187
257
262
204
157
183
220
174
198
213
181
184
208
222
223
240
199
208
216
264
159
238
166
152
140
253
223
226
151
162
190
255
206
220
249
236
212
227
186
224
181
203
212
187
288
220
135
206
182
222
185
197
252
170
163
210
170
262
224
263
194
213
203
190
168
149
164
229
123
214
202
229
211
232
208
236
201
206
194
199
215
250
244
206
134
145
162
244
201
225
202
230
201
198
220
142
142
198
196
235
187
217
190
235
242
196
207
170
172
160
242
246
189
185
140
200
222
150
239
114
292
196
147
250
219
211
158
181
139
176
173
218
201
218
147
152
222
162
220
221
217
250
285
241
175
124
191
188
167
161
224
180
209
203
174
162
192
197
176
206
194
224
192
154
177
208
173
144
209
216
192
179
138
238
231
212
237
202
176
167
175
157
203
172
208
256
235
139
192
287
135
263
144
249
228
118
193
188
169
239
276
216
252
207
192
271
188
221
211
237
195
274
216
231
169
199
218
229
220
178
259
203
167
201
184
192
180
141
154
250
167
268
166
153
226
252
231
243
243
181
241
193
246
121
231
199
232
195
184
219
174
235
245
184
244
202
194
219
195
193
222
169
148
172
194
210
209
262
209
158
164
227
183
244
180
209
199
187
214
222
208
230
194
160
188
203
189
196
230
214
200
215
160
201
186
164
203
221
205
192
228
176
188
173
190
211
206
209
189
205
185
229
174
204
156
194
112
190
225
171
163
187
177
195
202
248
249
162
211
169
153
202
217
267
191
246
143
210
141
183
220
230
210
218
192
209
205
217
213
232
224
227
169
157
177
191
248
209
235
204
124
198
197
213
192
164
195
180
211
247
246
176
222
164
202
193
192
161
84
167
194
242
200
150
222
232
211
191
177
248
236
185
230
209
214
228
136
195
176
178
224
194
208
209
243
193
195
176
204
203
215
198
165
169
223
207
198
223
239
192
204
200
142
142
195
158
251
207
195
176
224
234
148
237
232
145
134
200
271
261
201
177
233
196
196
189
166
199
165
173
250
190
227
170
188
239
228
153
213
222
172
201
162
156
188
139
216
220
238
197
196
144
196
224
179
280
130
175
189
231
196
240
212
246
186
146
159
253
242
181
178
227
157
183
210
208
131
233
208
215
112
200
172
178
199
116
196
261
119
208
224
202
180
177
206
203
221
178
208
201
149
169
251
209
154
171
178
185
168
192
191
211
175
131
184
176
219
204
194
182
257
167
205
154
226
146
223
175
182
154
203
171
212
144
174
206
225
183
162
206
197
148
176
207
236
160
161
195
211
213
207
214
241
215
209
211
153
212
222
226
224
226
126
143
153
252
163
143
198
214
224
197
226
224
220
258
262
220
235
221
190
191
181
216
205
243
269
170
229
258
206
191
168
121
220
199
205
204
209
251
219
177
211
199
197
149
226
230
202
179
219
218
218
180
178
198
120
213
240
164
220
226
190
156
217
166
237
164
200
217
238
217
192
179
206
166
238
192
188
140
228
191
220
160
175
254
163
226
158
215
178
163
245
185
223
217
264
166
239
157
244
140
226
195
246
259
251
237
157
181
217
180
210
171
233
224
165
153
221
152
215
249
183
226
189
249
185
223
186
175
170
179
134
178
192
133
233
255
117
222
238
267
200
195
238
214
186
186
248
225
194
199
169
237
258
129
235
172
183
137
271
158
152
191
178
253
193
177
165
192
227
216
244
199
209
183
196
143
167
191
245
202
201
188
116
186
131
207
241
224
163
153
155
158
176
196
190
196
224
206
159
171
154
231
243
184
223
238
270
206
162
220
201
220
284
238
224
176
184
272
176
182
195
157
176
212
182
252
248
195
154
160
153
249
215
152
168
263
205
158
214
201
242
180
166
218
237
181
236
190
218
214
261
164
175
203
185
170
220
219
184
226
133
219
208
199
248
194
148
224
159
140
193
249
184
190
256
212
168
184
230
217
199
203
148
242
197
253
135
210
132
280
205
226
228
185
216
251
241
213
195
260
222
225
185
233
227
169
253
192
190
234
249
233
234
152
182
198
169
235
164
169
190
259
266
185
187
238
186
178
208
205
274
174
134
174
189
214
228
207
174
195
204
147
187
219
223
221
200
166
189
215
171
146
173
247
188
220
250
151
207
161
171
192
194
189
172
213
195
160
193
219
206
186
206
225
173
169
258
226
212
245
202
217
181
221
191
267
173
196
175
246
246
241
261
241
247
191
166
207
196
198
217
181
151
159
202
143
165
143
166
204
235
210
181
178
141
183
156
221
188
207
203
240
222
203
162
202
202
192
203
172
231
178
207
150
202
208
187
242
206
234
231
209
225
188
240
186
174
138
191
215
226
204
210
170
199
193
245
209
195
195
219
188
179
211
224
196
197
258
187
199
137
251
234
240
259
210
232
197
211
257
204
191
237
216
201
196
231
174
234
233
172
82
194
220
181
210
207
196
182
188
200
134
231
252
180
199
160
228
265
240
236
242
251
244
222
191
153
204
134
215
124
187
242
170
233
218
154
144
180
209
220
197
177
204
203
211
216
189
185
242
263
250
225
210
187
164
217
213
285
197
292
249
214
183
166
247
267
183
229
192
184
241
158
213
210
185
177
169
183
169
169
150
169
276
169
242
186
188
227
177
158
247
184
137
161
156
177
249
148
158
245
164
174
173
197
221
184
261
196
167
213
227
191
259
158
173
168
195
157
177
262
166
247
270
201
263
275
218
161
256
189
219
225
235
138
195
191
212
197
213
228
222
278
134
207
200
215
230
157
215
162
171
230
150
241
142
223
144
169
139
218
176
136
231
202
206
250
216
210
264
181
165
205
208
250
165
206
223
211
212
234
234
209
162
187
180
160
230
178
135
186
194
206
187
179
219
211
181
231
210
162
207
183
223
219
214
153
193
226
184
167
155
267
220
190
248
182
252
221
150
237
242
199
185
184
208
196
205
205
173
207
230
223
211
242
199
182
180
149
219
232
231
230
186
217
205
208
172
175
186
205
232
197
201
162
159
181
171
170
210
260
298
213
138
230
165
202
235
138
227
248
144
159
212
232
201
234
201
194
184
265
246
213
167
186
194
151
206
151
178
197
253
185
219
194
175
274
161
199
204
162
143
187
146
195
125
240
283
216
199
246
147
230
188
145
200
199
215
272
196
221
237
200
168
180
250
149
242
201
174
159
201
154
288
264
252
210
203
145
216
269
182
243
198
199
169
241
222
256
128
158
191
166
190
170
237
193
194
224
250
261
235
215
208
178
208
255
178
199
237
181
167
223
157
194
215
175
198
190
182
237
200
229
157
269
173
185
243
213
169
215
232
161
163
198
151
244
225
209
219
222
165
286
195
194
194
164
187
179
183
256
216
248
161
194
237
125
180
138
153
190
166
218
202
210
168
163
245
151
182
251
185
282
209
262
233
204
210
163
260
200
199
110
184
252
256
240
194
155
160
242
181
184
164
204
244
225
190
268
196
196
194
231
208
229
234
179
207
205
194
162
237
151
161
200
231
172
164
178
196
240
194
189
222
151
233
207
185
223
262
232
193
197
185
199
219
223
180
160
197
224
210
239
207
230
227
250
199
209
158
190
249
198
277
169
186
253
232
249
180
209
204
151
219
232
146
198
218
211
199
185
121
192
193
223
260
202
222
159
218
168
193
149
178
232
183
230
256
217
163
278
205
181
124
222
225
154
186
190
213
240
166
175
212
201
218
144
194
197
152
228
266
250
216
216
201
178
192
160
239
255
173
236
187
242
207
166
187
229
158
264
221
181
162
196
262
207
213
158
204
238
166
151
248
175
203
172
175
157
178
180
219
229
209
176
195
228
213
236
185
190
259
116
214
173
225
177
193
259
221
163
171
126
203
220
189
203
203
238
220
155
188
204
269
233
220
192
181
256
253
197
239
125
161
187
231
133
255
184
203
240
236
235
193
212
200
252
187
155
263
177
193
182
261
248
200
175
224
191
229
170
191
189
135
204
184
280
194
193
206
253
168
170
184
228
174
229
211
206
222
211
214
196
206
196
169
192
240
239
154
218
247
197
216
184
203
163
184
170
236
191
219
157
164
211
174
165
150
154
259
200
219
189
261
179
197
183
214
205
148
201
179
208
163
264
225
211
227
167
241
214
179
163
136
148
172
212
157
194
189
189
141
187
207
146
174
276
225
217
199
223
197
207
191
180
195
204
191
156
145
222
249
138
221
188
213
235
184
224
284
165
179
204
222
208
225
206
205
216
185
265
155
233
219
189
208
211
188
199
185
195
215
204
208
228
231
218
209
159
213
203
170
185
224
274
195
201
227
205
155
201
228
205
153
195
214
193
189
178
210
255
196
232
217
189
177
244
212
231
228
209
172
151
250
180
158
164
209
233
211
189
266
222
196
163
216
204
157
231
222
247
230
201
220
171
204
234
184
146
230
191
195
171
212
233
157
187
185
142
220
188
199
242
195
139
183
171
229
201
266
230
215
177
228
206
220
189
207
215
214
228
191
156
215
216
205
120
232
187
152
186
217
187
214
185
211
203
190
228
196
256
191
153
209
167
221
229
192
221
245
214
168
232
153
213
244
279
206
176
219
163
156
227
135
269
135
156
185
169
214
194
156
120
190
265
185
231
189
158
268
244
227
189
169
161
165
202
226
176
164
191
195
200
158
174
161
191
168
206
143
172
204
243
218
212
230
273
232
185
153
195
198
184
281
187
238
194
149
179
192
249
248
188
174
258
151
231
199
174
183
254
152
235
195
209
232
243
238
219
188
193
215
195
266
183
230
226
159
239
225
163
195
170
189
240
137
232
168
274
174
161
186
200
167
110
225
212
230
151
149
233
203
196
232
194
264
225
223
199
206
232
205
167
212
200
191
188
191
153
170
190
213
249
261
233
178
174
191
234
242
224
198
162
225
195
148
220
213
171
206
209
230
201
202
223
177
186
165
248
214
145
196
139
222
161
170
168
203
214
156
244
167
232
194
213
205
233
177
203
200
252
215
149
195
175
161
213
201
201
201
220
205
261
215
200
194
167
145
179
204
217
222
208
189
169
224
221
227
169
217
251
237
185
208
183
156
230
152
216
250
202
165
200
207
257
201
261
119
194
176
212
212
161
191
189
193
216
210
234
194
180
140
196
220
222
195
139
167
183
206
189
184
255
86
157
185
176
195
147
136
232
239
179
249
154
224
203
184
209
221
179
189
286
148
125
170
169
198
167
212
220
222
247
186
148
150
218
219
144
190
226
138
191
237
236
233
164
209
194
201
209
188
216
221
215
166
239
179
247
202
259
258
178
170
166
184
253
170
234
163
254
202
187
191
166
152
230
190
260
191
259
248
266
243
198
140
220
274
211
127
206
219
190
190
165
200
223
235
216
221
174
196
223
163
119
247
224
235
270
142
200
262
176
181
245
154
216
198
204
156
173
184
167
199
217
176
240
228
115
213
214
225
244
208
213
205
178
208
180
219
233
220
231
240
235
186
245
220
207
168
215
129
206
228
226
225
219
207
189
196
224
173
197
231
197
179
182
158
188
135
241
185
226
234
249
252
259
181
130
186
162
258
236
231
229
204
171
185
224
158
198
210
223
147
259
152
206
205
235
213
198
203
140
159
171
232
199
194
193
224
204
180
192
121
227
202
194
138
256
235
237
158
193
250
213
173
144
200
131
196
174
165
209
163
169
219
113
168
157
264
227
178
192
161
189
153
229
177
182
137
201
186
127
185
236
160
245
207
167
184
211
230
172
194
110
207
208
199
214
200
139
222
188
237
117
236
211
199
199
252
208
169
171
246
197
170
205
183
179
175
255
277
200
146
232
217
285
213
155
144
212
235
220
135
192
214
158
128
249
186
144
195
216
176
212
151
204
189
241
169
219
177
177
234
229
196
251
202
186
210
158
195
210
172
216
206
181
264
213
257
190
139
209
189
176
198
264
174
212
228
158
230
202
244
265
196
150
183
115
207
184
187
232
194
221
215
204
217
183
208
255
215
190
196
240
200
147
191
234
195
200
244
198
224
221
185
228
180
175
206
235
207
168
164
202
216
179
163
219
151
164
149
176
211
210
136
240
213
110
180
247
267
136
263
129
234
189
247
208
199
198
168
215
200
209
179
231
186
205
203
148
224
167
169
255
167
178
163
213
114
196
196
159
209
283
218
231
248
239
216
220
269
178
179
191
224
195
182
235
182
241
194
212
205
175
174
186
206
170
178
197
186
187
207
222
174
235
223
169
196
185
204
210
210
196
230
233
139
281
148
185
186
202
202
257
249
232
210
191
190
220
226
174
110
230
190
196
175
178
231
229
158
239
187
176
226
252
170
195
220
244
203
169
150
204
260
179
186
210
175
232
229
177
183
190
213
261
239
177
196
245
224
178
221
241
194
234
245
207
165
170
182
168
201
247
196
195
195
183
200
163
136
211
157
234
172
250
268
190
222
233
198
179
196
205
230
222
200
194
184
213
245
222
205
217
230
232
209
220
231
198
213
218
203
202
172
220
202
178
242
228
189
198
192
263
205
230
183
186
197
198
143
197
180
221
180
152
209
275
216
172
173
214
261
215
219
229
192
246
240
166
224
159
212
161
212
211
174
191
129
248
142
166
167
178
192
191
187
155
205
257
194
138
226
124
249
225
206
250
166
225
229
222
207
196
203
253
241
180
194
164
215
162
167
135
160
168
173
252
202
217
167
251
218
271
229
205
217
177
205
190
232
267
218
250
254
232
219
194
240
168
237
259
235
129
180
254
241
136
184
191
197
237
177
138
211
194
194
206
221
249
181
259
143
212
195
246
215
225
218
204
206
151
185
150
196
191
204
254
195
265
146
221
213
217
234
194
213
186
158
187
237
255
204
218
208
211
241
227
180
146
271
153
226
224
139
228
204
189
197
253
231
287
211
132
243
155
219
213
164
189
203
99
165
137
184
156
217
167
105
137
214
179
167
163
211
129
244
171
180
198
200
196
169
163
150
150
171
218
210
176
218
197
188
218
178
210
174
114
219
193
170
163
242
213
159
214
260
231
217
244
179
165
247
232
198
201
213
189
219
108
236
259
164
247
157
204
188
159
158
206
157
216
194
188
219
224
201
175
182
277
201
177
216
243
162
233
165
187
167
185
170
238
199
263
208
149
157
207
183
146
154
160
136
133
159
155
227
242
202
214
221
185
170
222
208
197
230
179
191
213
227
147
208
176
243
156
234
183
246
211
258
220
220
263
202
186
209
245
214
186
201
231
176
212
260
226
167
222
170
168
209
210
182
171
223
199
192
207
251
230
193
245
163
223
232
213
225
192
208
179
183
197
236
174
230
150
225
187
174
216
184
168
211
194
213
250
165
174
206
266
187
187
199
179
157
209
254
187
224
172
148
231
228
169
206
244
189
178
197
232
207
146
225
195
265
244
180
186
179
222
167
183
223
181
190
174
157
173
157
224
218
188
154
171
216
195
228
157
168
190
205
142
221
191
179
200
207
171
238
236
228
206
145
213
145
177
241
212
226
163
194
165
232
207
154
275
184
186
169
190
196
201
95
199
235
194
220
227
208
175
228
201
173
275
210
210
237
219
161
213
198
190
221
181
141
210
241
168
295
217
217
286
207
228
240
217
176
184
217
173
208
133
188
182
194
161
188
222
133
204
202
159
216
157
192
218
164
184
163
200
163
213
250
268
207
178
175
217
223
192
193
197
192
226
185
282
179
215
199
234
249
195
233
209
247
254
167
176
225
235
219
186
210
214
181
191
250
165
175
178
207
204
176
227
216
208
155
156
166
179
237
251
244
215
219
213
239
191
188
218
200
213
213
182
167
201
208
180
207
192
189
231
183
220
172
256
198
188
225
265
176
174
241
212
178
179
206
127
164
209
164
225
140
198
195
152
235
244
183
242
175
169
219
203
174
228
175
160
184
194
199
221
177
213
267
185
186
155
102
173
185
202
181
172
153
147
255
230
218
223
219
150
195
147
195
226
227
180
213
254
183
210
198
201
151
196
235
240
179
172
182
198
213
185
205
250
180
191
243
249
234
165
170
242
256
236
171
176
184
176
174
256
212
223
229
157
204
222
232
240
189
199
231
128
110
138
244
241
192
221
193
211
183
224
234
226
234
205
120
189
135
201
174
191
215
178
213
194
267
198
199
159
164
167
256
271
203
243
217
222
204
205
214
199
231
189
228
182
217
167
169
212
203
187
153
187
191
172
223
192
177
229
156
201
240
221
208
179
252
201
133
199
237
122
207
202
270
238
231
244
159
211
258
265
191
254
168
199
222
188
180
273
149
195
213
216
240
188
193
202
159
206
201
195
190
203
209
145
178
216
170
179
176
141
170
184
208
155
201
206
212
210
166
238
164
213
206
108
242
213
226
202
198
252
275
166
202
198
211
153
223
218
234
193
207
221
210
193
153
202
239
205
209
233
210
219
151
176
147
137
217
243
130
257
144
192
223
188
141
230
212
182
220
185
234
135
163
116
194
228
209
201
234
214
172
224
215
187
143
311
231
221
203
229
196
204
230
165
201
256
197
244
174
233
257
234
263
173
182
156
188
198
156
206
211
168
117
176
179
196
216
201
194
228
211
179
242
215
134
204
207
194
188
174
248
238
217
162
208
206
148
218
210
194
168
203
219
229
240
257
140
248
254
142
165
185
268
231
220
229
180
184
187
195
244
116
180
228
175
207
177
176
222
200
237
177
209
221
212
204
158
253
174
157
190
198
220
184
180
178
202
245
266
202
218
229
173
224
198
226
170
150
229
125
193
187
225
222
233
165
271
234
167
183
250
149
202
257
223
185
215
232
218
176
226
204
230
211
214
197
165
188
158
182
197
230
228
218
179
223
209
207
219
213
160
199
159
181
242
225
221
211
223
243
237
198
228
180
195
192
166
139
149
164
231
266
227
202
239
144
242
148
243
182
212
187
233
205
204
179
220
180
194
217
145
218
234
163
224
148
213
189
225
188
220
154
211
265
259
195
171
171
158
179
246
186
175
171
186
203
227
200
229
241
191
231
149
190
238
217
211
293
211
157
240
245
198
209
155
124
217
210
221
175
204
238
164
225
152
199
221
220
170
156
204
245
213
193
157
227
228
271
196
216
192
170
228
172
234
186
220
231
258
211
225
171
220
170
177
225
207
199
198
220
178
158
202
246
203
269
182
161
182
187
156
116
183
126
232
251
170
209
160
109
223
199
186
168
276
142
252
181
205
222
234
170
208
216
213
149
137
239
217
201
133
245
208
196
217
258
129
190
161
222
229
175
163
252
184
159
214
114
205
184
214
168
155
259
168
179
256
243
143
150
158
227
204
122
238
214
219
212
162
193
269
222
124
135
163
254
186
174
196
221
173
243
150
192
235
228
184
209
196
191
222
138
170
194
284
198
182
177
218
248
210
197
193
181
197
230
184
235
225
165
177
173
140
222
176
215
156
132
258
173
217
210
197
237
172
272
181
214
212
227
173
224
287
200
167
221
241
149
163
247
178
305
237
217
207
181
174
160
221
198
196
243
128
196
239
190
198
202
244
194
237
220
207
247
166
229
167
122
154
189
209
238
181
178
178
209
215
238
168
233
160
174
233
186
266
205
179
234
159
196
241
178
175
226
172
147
234
160
273
179
230
197
201
159
201
199
173
227
226
193
222
206
185
204
205
281
213
225
235
186
161
182
246
217
278
223
269
173
200
188
179
174
209
158
197
226
205
243
245
240
197
219
237
245
182
224
189
185
243
203
200
222
172
163
209
209
213
165
226
179
198
216
227
255
181
213
206
221
221
154
160
250
254
160
192
154
211
184
167
186
152
282
208
223
227
180
208
140
171
232
224
252
207
148
246
155
131
265
211
180
127
280
175
190
174
199
232
217
229
148
204
237
222
211
200
270
199
214
204
183
175
137
240
164
222
153
192
179
156
215
203
219
252
218
201
170
194
203
219
178
227
199
177
209
160
233
200
224
139
239
241
222
204
219
241
207
224
251
182
173
277
204
184
226
192
176
170
235
181
229
224
145
169
139
187
230
173
224
177
219
271
230
196
247
250
205
199
220
135
203
252
230
131
192
136
202
179
153
171
134
134
222
222
169
182
245
220
201
216
232
199
161
179
171
151
229
157
206
228
254
239
194
200
154
202
156
195
146
219
239
195
211
212
245
225
230
174
215
158
210
214
234
247
116
224
228
221
136
206
181
204
256
151
221
179
142
209
229
215
218
211
206
192
235
200
233
267
130
215
170
210
231
180
232
228
249
225
194
124
230
224
221
207
233
203
190
181
206
210
186
163
177
245
125
208
226
216
255
202
243
160
205
194
219
196
163
141
210
193
216
188
214
204
157
212
180
265
211
165
178
226
230
187
230
201
224
212
161
183
129
154
136
184
194
175
159
215
204
229
239
185
182
245
146
193
157
279
221
173
152
222
231
221
221
209
184
200
203
211
153
223
195
193
154
206
160
180
186
152
187
209
212
241
155
209
188
188
221
194
193
222
206
183
263
255
204
215
239
195
185
244
150
250
219
221
173
195
171
177
146
226
187
157
204
233
206
166
162
188
183
243
151
202
183
200
182
187
230
141
186
207
144
199
251
237
243
203
185
188
126
250
223
234
228
275
187
177
154
207
241
185
206
190
137
204
195
207
195
209
231
169
197
200
188
155
200
221
208
235
192
240
154
218
201
223
215
197
235
159
216
184
230
223
233
218
207
256
251
225
192
249
148
210
253
208
139
130
218
144
218
203
145
187
211
215
138
234
174
244
185
219
240
176
194
234
254
226
231
202
237
180
212
233
229
195
190
231
174
196
225
174
215
209
173
245
207
200
173
105
147
263
176
211
139
220
194
218
184
222
220
215
214
202
127
134
182
276
186
240
180
190
195
221
266
191
213
227
227
220
215
168
247
179
234
152
194
204
260
122
218
143
211
268
237
170
158
221
251
225
202
218
264
137
198
119
218
165
238
191
234
186
174
137
151
210
189
177
154
215
187
209
206
189
159
157
196
105
177
197
165
209
240
130
179
227
229
228
193
212
249
231
179
248
220
168
176
190
247
169
151
180
200
215
181
164
222
228
273
197
227
184
171
131
221
205
226
168
275
243
203
243
222
169
182
193
133
191
238
211
186
219
236
180
227
213
227
160
223
209
192
129
211
234
154
269
199
202
169
241
244
168
186
116
123
209
222
236
220
252
200
218
178
205
171
244
230
228
236
239
139
163
227
207
245
203
155
207
205
180
240
201
217
169
234
150
222
214
220
218
160
147
256
243
209
213
194
181
216
191
217
225
172
285
212
186
218
214
173
213
242
235
208
181
266
194
217
234
163
276
213
230
175
218
199
246
166
235
192
167
177
187
224
230
163
228
197
247
187
219
195
225
141
171
169
236
252
233
258
174
195
252
201
182
193
211
232
188
204
181
150
179
233
256
210
260
192
172
144
221
183
172
150
204
190
179
242
175
160
199
181
131
259
246
189
215
164
134
187
290
238
181
194
187
237
245
162
220
196
168
216
287
163
145
196
162
172
229
145
235
218
189
228
227
245
179
136
231
221
204
177
264
231
167
173
154
162
201
193
189
190
190
210
208
200
238
227
187
205
189
151
147
211
203
165
165
106
257
134
226
176
193
173
194
232
190
175
163
224
158
171
267
224
240
176
229
230
174
222
207
194
211
230
142
253
251
194
222
155
172
200
213
220
183
180
199
227
155
216
173
175
206
195
160
208
192
263
207
233
192
224
190
166
187
199
151
171
215
184
196
162
210
213
185
126
165
218
208
148
166
196
267
203
232
253
202
194
190
244
238
216
169
180
193
250
141
234
254
199
177
223
228
148
137
149
278
204
197
204
232
173
234
183
185
162
195
135
188
215
240
132
152
213
276
216
184
250
161
153
264
200
187
202
193
208
215
221
191
169
164
132
143
115
227
246
217
235
169
158
218
185
198
227
149
224
236
219
169
195
162
215
176
207
206
233
187
207
200
228
193
239
191
167
234
199
236
239
174
191
149
224
221
201
212
215
209
133
196
203
176
175
189
186
204
209
155
171
192
195
185
141
177
191
174
157
134
204
219
214
171
198
184
215
170
223
206
222
229
172
208
200
266
244
220
208
224
185
204
220
186
196
147
187
149
221
146
195
251
217
157
175
189
181
215
252
139
196
188
155
250
220
156
157
202
209
226
237
199
181
227
204
166
204
198
223
227
250
172
144
140
208
120
204
179
175
189
201
243
187
176
226
175
237
137
248
226
211
212
188
221
190
210
212
203
245
223
207
172
176
236
203
214
177
221
217
178
239
212
187
255
155
198
214
229
103
242
188
228
167
275
148
132
227
217
227
169
188
226
187
186
255
200
168
234
170
167
211
179
251
225
220
176
214
213
182
227
268
201
153
214
187
196
207
156
206
202
255
200
154
177
134
234
212
171
205
158
236
187
225
250
241
225
181
196
203
126
155
174
146
255
253
183
178
188
239
213
174
205
187
175
208
252
192
154
117
208
222
167
209
258
229
211
219
265
164
177
141
178
260
183
187
215
227
209
194
197
203
157
131
216
178
200
213
239
160
262
187
195
214
281
269
210
164
221
164
184
196
164
147
199
225
232
143
269
197
200
249
239
226
161
184
203
197
231
203
196
188
166
160
228
168
95
237
180
207
187
112
187
163
206
210
152
193
211
154
157
214
193
195
185
233
209
184
190
211
166
226
153
189
198
155
225
163
232
179
236
202
213
183
176
187
112
192
160
192
208
203
153
208
227
184
154
188
172
252
258
193
199
182
169
218
242
218
294
225
174
228
186
150
188
227
226
232
227
204
189
155
236
198
239
196
203
188
223
243
220
219
197
241
288
228
152
166
164
228
242
156
211
192
196
204
194
237
210
172
212
241
251
203
206
166
248
256
185
154
236
213
215
179
203
168
229
137
204
190
153
225
290
214
184
229
149
221
230
138
171
208
176
172
168
213
185
180
228
214
212
213
219
260
233
253
149
194
186
171
188
169
199
255
198
194
180
208
133
159
189
234
255
240
178
254
256
243
216
164
214
236
177
183
256
173
211
217
206
208
184
205
222
195
194
207
192
212
203
184
196
239
162
227
233
196
212
195
212
195
233
187
166
199
194
233
214
246
256
205
173
137
198
189
213
169
228
191
207
125
252
208
172
167
223
215
143
214
190
186
201
204
211
213
178
215
189
201
202
124
217
234
192
179
162
217
168
182
221
200
179
167
149
193
192
223
238
240
151
134
260
221
223
198
215
168
173
214
210
161
205
227
242
219
174
223
200
164
251
147
174
209
201
141
223
262
212
201
233
210
238
235
215
211
176
233
183
180
211
140
214
209
201
248
263
205
235
196
205
129
245
222
217
185
224
277
222
211
190
163
147
191
138
199
160
199
249
153
189
269
245
205
207
189
176
160
136
226
165
194
146
241
240
196
247
234
188
236
199
216
192
232
144
240
205
191
157
205
209
208
90
239
192
233
207
202
214
149
232
209
209
190
224
183
189
209
197
202
130
220
236
191
227
231
191
220
252
185
230
226
201
163
215
269
258
178
219
196
215
180
217
184
193
208
226
178
180
238
173
242
202
222
191
202
162
214
230
201
112
240
248
235
133
218
209
112
138
254
247
258
181
237
244
214
208
245
216
221
196
204
125
136
205
167
134
169
169
214
229
135
242
235
177
174
211
190
198
262
225
190
205
164
217
234
220
140
215
208
201
159
198
227
199
219
209
187
197
192
150
213
151
182
176
257
211
252
195
142
187
232
150
180
214
216
187
156
185
190
223
147
138
163
215
209
230
235
165
150
209
229
188
214
216
231
228
240
142
236
178
218
146
180
244
153
224
218
153
226
166
186
207
259
200
241
198
212
220
205
191
138
209
158
201
135
216
186
227
246
194
191
234
148
146
232
240
199
184
199
174
140
95
233
213
226
226
196
219
168
255
175
191
193
254
213
211
209
210
238
139
229
163
162
232
202
212
206
218
247
178
250
210
193
242
148
221
203
191
217
216
252
205
205
276
206
253
182
215
232
177
188
199
180
207
211
219
248
200
216
170
240
204
155
196
162
196
212
269
183
144
236
232
205
253
244
131
175
239
150
204
252
253
220
188
183
179
261
191
200
128
208
199
171
196
144
200
171
167
212
236
225
153
229
210
213
253
220
172
234
249
150
224
276
240
190
133
204
265
183
222
185
197
212
227
155
159
189
256
161
216
199
206
197
197
204
157
192
196
275
209
173
165
168
214
209
165
219
189
201
174
245
140
180
213
177
230
243
196
204
183
220
223
207
199
216
191
214
195
238
159
212
193
185
162
194
138
235
179
219
237
189
250
136
253
257
267
217
215
233
182
203
213
172
198
185
181
167
245
225
217
209
232
232
213
155
230
216
171
231
197
141
168
211
200
193
175
152
248
150
185
245
244
181
162
238
220
259
194
203
194
201
165
241
210
182
168
158
257
236
243
251
143
222
247
190
228
204
215
190
211
172
139
183
257
264
210
217
185
148
203
208
147
190
195
167
219
137
176
189
227
175
181
206
203
178
210
161
223
197
152
176
184
212
185
149
184
210
190
203
249
204
272
237
241
202
222
191
224
229
149
247
230
223
252
235
227
197
206
161
210
196
209
173
160
130
190
231
224
209
205
258
199
161
251
210
271
258
226
220
130
159
136
210
138
242
199
170
212
198
256
234
260
204
225
169
302
216
134
208
242
228
200
231
215
168
213
176
246
232
125
197
158
252
200
180
268
172
221
214
195
200
186
254
208
201
195
245
171
242
142
185
196
209
241
241
182
193
207
230
193
204
171
192
229
150
196
218
135
157
206
197
219
182
184
222
166
212
196
221
96
165
206
243
192
177
162
241
215
226
181
107
188
182
204
131
202
231
155
217
218
159
289
139
136
235
200
184
198
181
230
243
180
185
178
154
204
232
246
273
207
223
185
181
258
252
243
237
273
215
195
148
225
134
205
206
134
196
215
252
183
205
250
210
219
182
106
214
143
238
172
214
214
153
211
197
215
260
253
198
227
205
197
175
156
224
183
140
184
168
206
185
200
208
198
207
145
220
242
219
205
229
164
197
188
142
220
193
202
288
181
187
226
199
138
173
213
165
159
187
211
211
208
240
181
203
214
170
251
199
155
215
240
169
232
288
171
186
204
260
150
199
272
245
265
207
145
224
122
179
212
177
146
156
175
179
224
225
176
194
228
165
240
141
125
239
212
207
211
182
168
175
125
212
229
173
206
202
253
254
224
245
199
204
205
213
175
197
253
208
184
162
238
168
225
195
199
177
185
197
230
115
221
163
214
199
96
127
207
160
200
182
193
189
250
243
191
255
176
220
117
135
256
221
198
185
152
230
111
207
218
184
227
244
182
241
223
199
227
183
253
216
209
166
185
187
252
206
198
197
183
204
224
209
177
208
189
221
219
197
200
213
228
175
207
223
194
187
261
213
171
230
244
199
226
205
179
255
199
238
214
186
162
122
196
260
213
221
198
229
225
185
218
199
129
182
227
182
201
190
175
185
252
258
223
173
134
200
228
240
174
202
198
236
204
162
228
205
241
193
195
247
174
197
159
195
248
284
233
163
198
126
247
195
188
154
240
159
166
226
210
159
218
254
178
173
166
232
202
247
209
159
198
168
180
171
245
229
212
152
257
181
239
172
209
235
173
228
235
235
180
198
215
186
200
183
172
145
229
238
213
177
201
226
280
236
202
205
233
227
164
189
174
237
223
157
247
226
238
219
201
202
254
186
197
213
167
254
209
204
141
181
199
231
149
216
193
218
181
174
189
202
123
141
200
234
193
190
214
219
188
199
107
176
167
199
172
236
180
169
170
197
207
267
237
221
194
252
270
226
206
182
246
238
185
183
203
241
231
185
229
163
127
179
183
97
185
102
215
214
239
229
204
235
207
208
203
175
177
220
173
226
214
223
179
163
253
208
168
226
229
200
149
182
220
210
174
216
205
169
164
233
202
221
225
184
207
200
235
171
114
260
129
164
191
205
187
204
157
192
211
176
244
227
187
163
226
221
214
159
160
179
226
207
222
224
165
201
180
192
216
207
204
154
204
199
237
221
203
254
169
164
234
248
245
174
267
176
180
198
205
170
196
183
245
193
171
179
217
255
167
146
214
287
205
209
207
172
210
205
179
164
213
223
230
149
219
253
195
175
197
259
258
200
212
238
282
198
161
233
169
190
252
226
176
196
260
211
233
85
224
220
218
195
232
214
213
161
222
191
221
203
153
144
232
151
240
188
231
197
193
223
197
188
175
232
212
213
253
248
178
184
102
218
175
165
217
175
160
195
200
201
192
166
257
169
193
160
166
157
215
173
242
245
265
191
162
193
194
231
194
266
233
220
121
196
211
206
156
180
156
177
236
210
244
253
229
161
270
202
246
248
205
165
216
120
175
199
173
218
223
154
215
227
180
188
192
176
225
224
129
156
230
227
203
206
170
194
215
171
222
167
183
194
247
227
206
235
186
117
163
183
219
146
212
248
251
226
187
177
157
248
200
116
187
245
156
205
231
249
239
162
227
206
178
177
242
186
199
198
195
141
231
173
183
225
220
185
211
152
219
245
189
252
250
219
231
201
199
241
202
243
203
214
159
199
188
170
187
143
180
180
258
184
228
193
231
199
246
236
201
220
266
245
204
208
209
152
191
190
219
208
180
199
202
234
203
197
196
221
188
247
268
173
150
180
170
260
240
158
206
120
178
190
230
204
216
168
177
210
252
200
221
241
176
249
222
222
244
263
192
236
232
202
185
205
254
175
214
163
166
192
150
182
220
202
241
160
153
159
257
187
158
201
142
199
241
255
156
180
222
178
242
231
201
268
186
164
162
232
152
240
132
191
231
224
217
108
244
223
175
244
225
220
187
176
191
196
210
184
187
186
202
151
171
212
207
186
180
185
233
213
245
145
189
215
222
222
200
237
228
173
172
241
197
206
226
225
200
183
199
209
112
156
186
144
177
245
220
188
243
173
222
202
173
183
223
258
185
212
208
209
204
237
173
237
210
184
244
143
215
227
92
170
133
212
217
196
228
210
225
219
185
213
128
217
201
156
223
197
171
205
144
150
138
190
162
210
228
195
236
196
216
243
208
213
210
187
227
228
182
185
151
189
243
227
221
219
212
274
255
173
219
175
170
241
193
180
138
193
180
203
200
175
216
231
231
206
263
192
189
223
191
214
118
253
161
181
190
151
156
211
206
120
164
219
215
211
196
143
162
126
240
187
250
183
178
234
186
184
195
200
183
183
223
239
192
207
209
257
144
163
233
249
236
221
230
206
223
189
146
262
201
217
191
205
237
178
232
207
218
232
141
256
236
154
222
214
239
153
174
176
226
195
220
211
223
133
171
184
212
222
237
170
235
212
230
157
222
210
196
225
175
182
220
176
194
163
147
193
221
175
185
204
201
132
266
165
204
224
179
194
237
208
213
272
222
200
191
245
158
249
198
190
170
219
233
169
177
212
161
199
179
170
188
233
181
205
155
197
198
203
188
212
205
210
229
195
262
202
207
221
271
227
192
216
219
170
186
225
179
185
198
176
199
228
219
173
251
239
231
139
176
285
177
225
242
217
145
191
231
209
154
143
114
213
242
170
224
207
230
126
208
189
206
190
234
241
171
177
224
205
217
209
236
184
170
166
193
160
289
204
206
191
203
160
178
269
230
221
216
190
141
223
222
228
236
237
156
171
171
210
188
143
196
210
250
151
189
220
201
183
196
210
176
193
162
239
194
162
251
167
145
220
183
116
199
209
231
183
166
231
225
209
184
190
181
206
247
206
211
196
189
219
228
232
216
277
189
165
200
239
224
145
237
169
212
187
181
186
165
215
213
184
194
144
211
237
208
179
145
176
166
227
188
221
209
214
235
172
171
186
193
190
216
141
227
197
192
219
194
213
191
224
214
233
209
196
215
209
168
238
236
213
171
198
219
169
164
194
208
219
210
209
211
194
165
201
155
234
243
147
191
181
174
142
192
215
179
146
246
225
217
246
203
175
183
178
235
243
182
208
199
254
150
201
192
254
193
220
210
157
127
200
148
268
157
193
197
185
186
189
186
197
180
214
270
210
192
154
198
208
235
162
212
173
173
226
275
225
203
192
185
210
226
179
196
193
236
220
202
234
183
138
135
258
232
160
208
245
185
250
228
200
170
218
172
231
166
238
187
225
198
161
189
235
227
216
213
197
222
135
268
215
237
246
204
216
165
205
146
168
210
202
212
166
209
194
181
161
154
208
217
184
181
217
104
267
187
170
145
207
258
204
201
224
198
236
234
190
182
221
223
203
188
237
186
201
278
216
214
171
205
182
138
186
262
224
152
184
223
154
200
198
217
262
162
174
190
200
120
259
211
221
223
205
152
176
191
173
160
196
132
188
173
193
247
163
223
177
196
202
217
246
232
156
184
214
187
151
213
214
255
186
232
207
167
213
178
247
119
187
222
157
210
233
239
237
201
164
214
177
178
210
233
153
211
206
194
278
218
177
216
250
224
206
225
178
187
171
184
241
180
205
195
171
207
226
221
205
238
241
164
178
215
271
176
252
233
103
220
185
184
162
208
196
225
223
162
174
212
218
145
154
182
170
186
227
251
235
211
227
100
193
144
171
170
216
214
208
110
237
192
146
202
238
181
225
181
235
204
193
242
164
206
227
193
163
177
167
185
216
226
237
202
187
235
190
234
211
170
180
190
260
181
179
192
141
236
188
149
204
180
200
228
211
182
173
243
178
231
218
156
178
155
217
243
188
189
180
201
148
167
190
187
219
232
253
189
259
216
199
232
208
176
133
229
198
200
156
167
204
195
163
185
223
257
137
243
138
168
210
274
241
160
222
66
126
223
243
178
231
227
138
156
175
207
230
204
246
255
139
248
184
180
211
205
198
224
158
192
209
214
180
194
150
180
214
215
168
197
223
168
141
198
169
190
191
183
199
193
186
164
211
119
166
227
190
192
127
174
137
160
226
205
170
211
190
246
164
184
200
246
180
191
221
246
163
127
211
246
115
213
206
219
144
239
217
154
157
256
178
138
244
190
142
192
197
232
256
162
155
200
247
163
237
206
205
225
168
210
223
222
252
235
173
218
245
200
201
183
195
217
218
187
180
197
188
184
155
218
222
198
199
146
194
218
239
198
118
229
192
172
108
208
166
256
175
219
251
196
177
136
218
223
204
236
195
224
173
225
192
226
187
218
217
135
193
88
165
89
156
138
201
192
219
226
222
175
253
199
235
178
175
265
211
174
194
230
180
217
201
223
204
167
226
173
239
218
208
240
131
199
219
202
214
168
143
94
263
197
196
189
179
216
243
147
187
215
211
208
141
236
223
275
223
246
190
117
168
216
211
219
216
193
177
149
211
208
197
206
283
246
249
167
312
162
223
223
150
173
218
210
156
228
164
222
155
181
151
208
132
193
282
258
226
238
138
173
184
217
201
221
195
203
220
225
144
240
218
214
200
266
184
189
141
152
168
190
244
188
231
189
202
232
205
252
154
174
247
171
152
234
259
144
174
222
220
151
206
134
163
179
221
209
177
221
240
138
199
165
215
142
212
200
145
209
179
190
207
159
209
222
210
177
214
199
254
192
224
165
175
235
198
191
208
257
228
197
227
209
227
258
140
182
184
266
200
192
189
161
218
197
187
175
203
180
200
259
250
176
210
210
201
200
165
155
230
182
205
237
241
179
183
184
180
194
207
237
246
226
186
189
168
244
137
181
178
190
160
198
235
155
209
220
229
203
185
180
229
215
193
237
224
190
178
240
169
201
211
238
215
201
166
215
135
228
228
190
268
159
242
255
217
184
181
198
200
230
198
143
244
172
224
215
156
205
163
216
243
231
219
199
154
210
159
189
220
197
192
183
225
225
132
240
140
264
238
231
150
227
178
228
139
149
227
253
209
214
182
201
168
147
227
140
207
215
196
224
127
218
144
262
151
223
165
185
183
143
190
199
229
176
229
161
195
178
240
202
194
213
209
218
215
188
240
188
212
172
248
197
146
222
143
169
169
112
181
166
236
187
239
196
202
173
184
213
230
203
237
221
141
236
225
225
194
142
184
167
192
222
222
224
205
129
194
189
195
186
143
186
188
175
183
257
210
192
158
244
181
179
242
250
231
216
181
166
255
174
216
142
204
178
242
208
199
177
212
194
185
183
220
225
224
180
157
216
247
187
181
178
205
217
227
257
198
189
218
169
242
215
205
220
250
194
209
128
141
130
219
146
180
246
214
233
216
256
182
192
216
186
212
222
246
257
242
194
256
196
221
163
233
215
212
185
149
179
182
197
194
198
222
145
204
164
190
190
228
174
246
183
198
155
214
174
233
183
191
167
166
149
197
158
224
203
235
205
226
192
216
175
203
202
206
238
187
143
232
184
179
202
195
193
120
180
197
236
236
180
169
193
214
189
141
244
164
252
254
150
146
164
191
176
154
283
179
207
201
190
209
208
210
197
190
188
193
143
198
178
253
192
188
188
143
176
230
203
217
199
215
237
243
215
178
219
182
267
268
151
252
214
216
216
164
154
212
225
185
157
229
218
209
168
226
152
245
265
209
128
192
211
198
248
224
171
241
120
225
205
185
234
231
183
156
181
221
193
270
197
159
219
205
170
211
148
184
218
176
178
243
169
230
187
153
168
230
197
142
217
232
199
244
242
243
160
262
183
195
176
156
160
197
210
191
163
243
216
230
239
220
200
252
228
185
225
190
185
163
192
172
199
158
215
200
236
166
214
161
198
175
273
212
181
217
182
206
201
248
190
193
187
232
237
176
230
190
181
178
178
177
190
210
242
210
178
195
220
188
235
190
178
177
155
210
152
116
250
203
248
208
196
211
239
252
217
147
184
199
192
183
269
222
198
253
211
210
247
168
245
159
192
215
208
183
210
192
240
138
193
223
240
175
188
208
190
220
251
175
205
221
169
163
205
195
210
239
219
260
180
234
198
238
166
247
192
210
163
218
214
207
208
197
217
131
194
227
185
215
185
129
213
156
248
189
230
185
184
146
186
213
238
205
193
198
238
222
184
169
240
160
180
227
156
273
250
220
153
192
236
206
145
185
170
150
240
127
184
233
154
280
150
244
156
295
228
207
230
150
198
199
185
244
140
231
220
125
174
226
241
195
227
189
153
235
192
152
161
206
256
224
143
197
133
231
131
163
205
204
151
192
169
185
218
197
220
222
241
219
212
215
203
165
192
210
248
226
233
212
205
252
181
196
204
246
168
198
177
180
230
187
198
210
185
174
178
193
165
159
197
197
145
218
170
203
224
267
192
158
202
194
134
136
208
213
170
191
149
161
204
175
156
198
210
236
282
194
138
225
126
185
212
212
182
176
249
115
197
209
208
239
219
252
163
221
206
194
194
145
185
213
215
177
188
198
215
232
191
203
209
179
100
250
217
186
132
189
190
196
154
146
169
221
274
200
180
196
152
222
161
183
246
227
186
248
218
203
190
156
198
192
228
128
203
150
214
237
237
216
157
203
196
141
244
225
251
209
178
215
181
197
159
174
189
164
183
205
165
204
199
133
220
210
165
249
230
181
149
173
194
225
251
150
196
236
229
139
161
225
140
214
138
223
203
245
168
177
85
226
245
240
205
230
231
147
209
187
159
193
214
194
224
108
170
170
220
181
193
206
231
174
150
251
186
197
177
250
223
204
239
203
183
176
165
209
155
213
136
144
195
230
260
226
189
247
149
184
175
211
226
157
244
187
191
227
213
217
193
243
175
232
195
212
195
215
214
170
181
193
218
201
166
155
203
194
175
179
204
244
188
225
192
158
263
226
159
180
269
236
244
262
223
246
174
177
179
197
162
201
170
218
201
218
159
193
188
195
158
164
177
202
216
209
183
202
188
128
136
208
195
198
259
220
216
244
250
196
235
207
193
223
166
211
218
157
203
184
171
154
192
166
217
223
252
164
225
163
157
184
225
221
195
180
266
215
225
238
183
176
240
245
257
198
177
188
181
164
206
195
216
130
211
255
192
191
238
214
209
232
169
186
192
201
207
175
215
192
186
188
172
251
204
200
168
157
150
227
158
140
240
178
243
224
203
223
121
248
257
213
190
139
209
205
229
154
145
212
165
239
234
185
180
210
229
217
183
127
244
214
211
229
285
217
219
223
176
165
160
184
205
217
209
261
126
223
202
214
119
228
195
234
152
224
114
175
124
150
194
189
170
198
192
206
139
236
254
206
230
188
177
139
213
241
158
104
257
183
178
203
208
245
182
231
172
204
245
226
160
211
199
237
263
224
187
136
211
179
196
169
175
182
180
145
137
241
213
176
213
185
153
224
244
180
105
247
225
217
185
196
220
172
208
210
137
144
177
194
179
183
226
239
187
221
145
226
150
168
286
181
140
191
165
116
201
211
221
200
145
169
238
174
227
195
252
213
251
204
249
206
193
179
208
207
167
260
256
169
171
200
159
185
182
189
204
242
167
235
260
204
254
209
239
259
213
177
189
203
241
231
215
186
114
173
213
230
224
205
206
211
217
224
222
239
216
225
200
230
253
192
172
204
203
213
191
177
222
215
183
121
258
210
266
176
207
187
205
149
191
200
221
234
213
198
115
214
224
199
239
251
206
221
258
230
179
221
157
164
198
214
236
217
169
180
195
206
121
176
194
201
189
199
165
239
186
197
209
231
197
189
151
238
197
201
185
261
192
267
154
243
172
218
223
163
188
225
199
173
215
160
149
230
189
208
201
218
195
237
212
234
181
276
205
205
139
244
214
175
203
216
170
179
197
235
210
163
168
226
216
142
176
203
230
209
195
207
119
199
220
180
213
229
140
251
170
186
138
215
192
254
200
128
222
226
186
249
227
177
200
234
177
215
248
182
179
209
274
171
201
174
191
211
190
199
234
277
224
197
273
188
237
201
239
197
149
251
143
194
184
215
185
199
254
181
256
167
198
171
222
238
166
207
225
225
199
146
162
144
243
265
162
161
174
175
205
174
170
187
192
268
203
261
144
226
207
218
205
199
138
217
160
174
150
219
195
239
187
200
220
203
212
214
253
215
179
166
197
159
179
238
170
217
218
191
251
176
157
124
202
187
207
260
258
219
217
231
227
189
188
182
243
234
211
211
149
134
213
170
209
135
230
220
207
193
231
238
218
213
148
183
204
251
208
235
212
207
211
194
204
144
190
189
193
211
106
221
187
202
213
225
236
222
230
177
225
206
185
221
224
204
221
238
154
153
175
188
171
169
171
129
178
232
224
253
153
200
161
204
193
170
166
209
216
171
159
215
242
224
215
180
186
159
175
242
204
208
162
242
219
218
237
152
172
178
177
231
250
185
182
176
181
180
215
150
252
172
222
194
143
195
157
202
162
195
238
188
214
296
223
193
220
187
209
184
173
198
195
190
188
153
141
236
196
162
234
225
208
172
125
183
181
239
186
139
241
201
198
185
219
220
186
210
206
231
247
225
182
216
216
150
220
191
236
213
194
189
161
207
152
251
186
154
270
176
183
251
242
214
250
208
161
180
178
223
150
230
158
213
216
171
195
171
220
230
223
173
225
176
204
239
192
207
238
207
201
209
209
182
145
160
202
146
237
200
221
267
177
221
219
151
191
190
209
228
243
240
242
142
176
184
198
177
234
152
233
215
261
146
160
279
237
183
138
216
182
233
231
186
184
261
196
160
191
191
193
204
208
214
225
219
178
185
252
120
218
166
173
212
204
222
220
196
255
184
213
183
216
167
210
187
136
131
222
191
218
231
189
125
275
225
181
175
214
188
146
185
196
207
169
222
165
120
237
193
241
131
210
159
143
249
194
200
186
217
165
160
188
232
182
243
220
243
220
191
203
157
227
225
182
225
229
170
206
212
221
234
221
178
149
207
203
182
152
200
237
154
235
175
244
201
199
189
203
200
209
246
205
209
185
202
242
233
162
152
203
186
226
222
187
181
178
199
232
222
225
198
255
204
231
257
153
192
220
224
243
266
226
206
216
185
199
240
223
237
242
143
159
253
198
139
277
235
186
198
190
269
245
217
185
239
216
188
195
228
133
154
162
270
216
165
210
238
151
221
136
190
216
159
171
182
208
184
214
183
252
235
181
185
170
241
229
191
239
190
165
162
210
187
177
134
172
183
181
216
235
178
230
197
251
212
191
171
174
221
228
203
160
169
198
178
201
236
258
186
245
242
155
182
214
187
231
242
246
207
188
236
204
143
235
191
189
163
199
244
174
177
145
229
133
212
151
248
194
161
295
212
222
189
152
164
177
247
192
231
224
183
206
167
175
163
243
248
200
210
194
184
260
216
201
239
158
206
158
200
247
243
214
228
231
212
146
129
258
164
191
189
177
168
236
141
161
237
146
143
166
128
211
218
180
199
193
188
234
246
205
232
96
198
196
214
242
204
254
170
214
230
137
223
232
213
199
178
140
189
225
235
112
148
206
224
210
184
233
143
231
217
200
208
160
227
263
169
165
193
138
184
191
161
243
241
166
258
248
233
271
202
204
223
226
263
164
270
257
227
173
152
170
220
210
234
154
215
202
163
161
186
222
215
233
137
157
198
223
229
181
209
166
157
222
215
190
172
175
144
173
157
176
189
158
126
269
212
238
165
223
184
203
225
239
214
213
239
257
200
167
165
227
185
224
159
183
250
244
172
137
243
200
168
224
167
217
273
219
114
269
225
192
169
176
174
193
194
170
165
242
156
243
162
182
192
165
234
282
223
263
316
226
205
199
204
197
149
158
160
201
204
192
196
234
142
218
181
229
245
282
200
190
194
229
241
172
207
216
189
214
229
149
190
164
219
154
209
217
219
183
251
180
196
183
149
237
208
216
176
172
167
203
218
192
159
163
155
206
177
195
213
222
226
226
257
189
177
215
201
213
247
114
216
212
201
238
159
196
219
187
212
216
157
189
271
232
204
220
226
206
133
239
242
190
133
168
158
170
198
153
168
214
185
222
180
131
153
141
233
225
176
227
128
204
155
163
232
221
189
238
201
201
195
181
207
210
160
206
208
150
175
212
221
156
198
187
182
251
228
208
232
206
157
204
194
221
231
206
223
193
123
206
186
162
218
180
220
244
156
195
229
215
193
200
185
163
239
188
269
223
206
220
254
235
161
191
232
222
239
184
241
219
221
258
186
163
151
173
270
202
211
224
181
221
162
172
204
169
233
215
195
177
175
266
192
164
166
169
217
179
170
161
210
239
200
194
203
236
184
198
184
234
247
147
186
176
214
232
195
226
205
208
224
222
222
146
210
209
209
137
194
193
182
180
222
214
196
163
221
254
162
193
225
215
201
159
207
203
233
183
185
240
232
225
171
153
204
126
169
201
185
130
262
235
153
258
233
204
161
193
202
212
147
233
195
142
253
222
164
178
245
185
178
206
228
204
182
234
175
215
179
218
184
232
161
208
209
147
201
198
163
226
169
207
242
228
206
214
127
141
163
189
215
164
155
256
231
161
164
177
207
185
172
205
122
109
208
152
244
237
206
179
258
221
189
149
115
126
216
175
201
188
199
212
232
154
194
199
205
203
212
195
190
193
186
213
207
161
221
221
196
126
168
197
208
213
200
185
183
223
201
162
189
168
181
207
240
181
192
221
254
228
228
162
146
166
242
167
186
229
236
232
209
204
189
232
183
161
214
203
244
172
131
225
197
144
106
243
159
254
178
189
187
212
179
185
166
202
122
219
179
156
218
182
182
199
184
226
152
255
177
187
182
165
240
218
169
205
213
254
230
226
257
198
228
229
231
219
168
171
194
183
184
247
221
155
204
227
203
192
184
132
196
199
185
190
202
180
153
231
212
196
220
182
205
238
157
205
235
152
174
228
214
185
195
231
219
239
145
229
190
193
154
208
184
183
194
200
193
201
215
251
177
195
235
197
259
155
151
199
226
136
168
188
202
197
219
216
223
228
166
189
167
203
259
214
194
226
163
250
150
181
171
211
194
192
178
181
259
177
153
173
165
247
194
232
199
205
246
174
195
162
248
217
253
116
153
186
212
234
176
179
218
247
247
237
147
216
197
135
196
183
238
201
162
237
235
184
228
212
188
226
148
231
204
210
193
157
180
189
236
224
221
211
162
204
198
184
189
191
229
232
218
181
230
204
221
215
193
190
213
223
178
187
221
132
209
242
119
183
200
170
205
191
252
235
208
196
120
201
201
205
247
147
246
233
252
189
224
227
167
197
167
168
168
219
269
158
222
220
222
224
207
169
239
213
203
173
214
220
213
231
266
169
182
233
227
140
193
185
136
141
133
189
178
232
205
215
248
163
162
156
183
216
141
188
160
153
215
231
216
250
136
190
188
134
170
208
230
176
274
229
249
184
140
189
233
160
226
237
239
182
250
219
163
213
148
163
196
155
143
250
152
163
180
189
237
224
206
282
234
229
163
207
177
141
213
226
166
225
202
172
160
166
240
169
198
203
165
183
206
216
187
152
174
157
240
239
219
255
252
136
166
184
225
126
148
128
222
228
225
217
214
264
230
263
231
232
291
157
194
190
157
163
162
207
223
216
177
188
237
131
204
221
166
274
190
219
170
156
163
191
185
185
160
236
205
213
242
259
224
164
185
190
213
178
239
204
173
230
172
155
240
250
149
197
251
243
237
204
264
231
205
206
162
222
163
176
200
207
219
166
234
242
218
158
219
195
225
241
250
238
218
183
149
222
187
188
188
215
192
172
208
272
158
173
156
195
124
161
205
204
156
179
241
280
201
200
216
189
183
200
221
210
229
235
134
235
214
208
210
172
223
210
218
169
209
169
218
169
222
274
228
198
223
114
259
140
159
213
189
196
174
146
162
157
161
161
241
98
218
204
188
175
216
212
228
211
228
205
170
131
229
190
162
224
241
150
185
227
215
218
232
214
200
217
225
144
277
183
211
234
209
230
230
223
105
181
242
221
171
243
206
186
236
183
226
245
194
205
195
206
222
199
180
200
185
219
252
261
239
233
216
199
199
260
165
159
183
225
177
210
183
199
224
257
182
127
228
214
229
164
119
218
269
190
236
188
216
260
161
206
190
200
219
236
249
190
191
200
219
209
203
205
154
155
224
240
227
203
278
220
213
257
197
200
162
183
181
194
256
200
192
218
262
189
186
232
151
212
222
200
196
217
191
153
217
174
193
257
167
135
225
250
175
162
153
213
194
275
194
154
187
261
165
206
207
169
206
235
245
149
177
234
216
243
195
188
187
163
268
207
214
166
172
187
150
174
198
225
223
161
206
188
197
217
183
216
218
188
192
134
255
234
216
236
194
229
207
239
180
207
134
214
239
231
239
152
186
190
210
234
160
210
215
185
210
212
192
153
194
150
218
240
194
234
171
196
224
147
205
184
195
208
220
176
155
191
244
257
185
217
221
175
200
262
194
252
224
184
211
251
141
204
241
170
251
192
178
218
202
204
243
259
145
231
206
160
182
247
215
199
163
225
189
205
153
231
198
221
141
230
242
181
231
149
190
162
176
207
175
177
219
115
214
200
220
177
255
218
225
140
208
224
208
237
226
215
210
157
184
131
121
246
168
267
160
172
250
161
202
121
249
140
191
179
239
203
170
242
229
170
170
219
271
189
187
186
190
116
198
203
173
246
232
215
201
226
188
251
217
236
187
220
178
233
135
204
211
199
241
231
186
210
220
250
223
198
173
122
203
201
259
199
168
188
209
228
216
248
216
214
189
183
178
179
230
229
180
181
198
194
166
193
139
240
167
164
163
236
174
187
170
236
235
175
189
211
213
220
274
189
226
223
263
159
212
199
240
156
222
206
170
226
205
230
190
182
178
190
229
233
206
181
153
198
194
223
215
239
223
264
236
149
205
220
205
185
175
148
240
208
249
222
127
199
229
205
207
210
233
121
205
195
170
166
151
177
206
196
241
221
192
167
207
205
157
200
207
226
156
228
231
215
240
172
212
192
177
205
196
184
191
205
184
218
200
185
189
208
160
166
185
183
186
225
217
241
161
180
140
260
173
200
178
238
170
187
201
216
174
231
239
161
199
180
205
195
159
196
195
246
226
140
202
271
150
234
170
232
222
166
194
231
229
178
238
180
199
223
209
187
237
203
134
202
110
194
242
146
210
179
186
260
224
151
172
204
244
187
199
211
257
217
188
236
214
235
180
210
238
243
187
221
163
242
232
190
134
134
198
238
215
216
215
214
198
179
217
201
181
192
175
216
156
223
207
218
202
202
184
179
196
231
167
216
230
209
168
228
185
143
141
166
184
200
215
226
225
194
218
230
226
192
223
164
196
174
154
183
221
245
209
222
179
207
197
253
149
168
179
182
195
187
166
173
241
188
150
191
190
157
254
234
238
197
271
199
197
163
175
223
209
143
180
215
322
208
258
160
216
218
133
216
221
190
270
250
270
163
182
206
207
202
244
222
216
160
188
187
241
251
98
196
160
217
229
204
258
170
214
197
221
251
259
221
255
229
194
235
197
200
171
225
215
221
192
229
221
197
196
176
202
184
190
224
225
215
231
280
222
173
175
219
172
246
209
175
199
181
216
175
228
153
247
153
234
165
189
144
203
175
239
194
174
194
155
258
227
144
225
177
208
246
213
210
268
239
173
209
170
236
236
233
211
157
177
218
221
175
259
158
204
248
169
205
207
203
169
179
233
210
174
238
182
191
211
169
171
256
160
219
170
252
206
224
201
180
222
171
205
200
174
181
214
186
224
244
189
195
226
182
245
220
232
188
214
167
191
175
213
157
195
165
157
218
232
203
219
203
229
231
204
207
232
195
209
197
215
206
214
134
205
201
199
205
180
221
235
123
185
192
157
174
155
150
163
188
162
215
150
192
215
249
204
191
260
195
248
222
226
189
179
245
217
136
211
236
210
180
201
224
186
226
178
179
226
204
195
190
196
179
175
253
257
209
201
237
208
217
266
258
140
239
257
204
259
200
230
192
189
234
242
244
263
200
206
224
232
222
244
207
173
248
172
159
163
236
160
184
189
216
197
170
198
228
180
235
154
225
221
189
212
165
220
262
213
203
137
185
179
203
255
181
150
182
238
192
211
250
197
186
178
100
215
238
203
141
200
163
155
204
162
194
181
201
152
221
214
139
209
280
192
168
255
130
159
162
206
214
118
173
255
180
132
221
190
184
213
232
225
195
208
219
196
203
173
257
172
200
182
232
161
208
218
260
198
154
206
206
232
224
216
192
183
224
169
160
221
199
157
154
203
153
195
199
220
205
247
212
171
241
203
147
212
197
197
275
169
168
241
126
253
247
187
187
209
180
215
237
233
227
128
207
206
224
177
209
222
194
240
225
153
189
279
198
253
190
170
191
255
186
212
151
223
224
159
137
277
161
166
213
159
268
228
154
254
177
174
189
199
160
169
237
208
214
244
140
164
242
247
186
217
185
255
178
217
210
160
227
241
249
192
237
174
199
182
234
183
192
217
174
185
111
115
258
245
224
187
223
199
236
248
186
225
175
209
213
165
232
143
250
206
240
195
147
210
180
162
180
234
208
255
191
168
171
150
158
208
230
199
179
219
210
204
225
227
185
256
220
212
211
256
255
132
253
227
155
174
221
236
233
224
176
201
198
206
218
243
191
204
220
243
183
232
198
222
246
196
227
169
217
179
205
267
267
227
220
204
223
172
281
233
249
149
227
160
197
160
122
220
215
152
149
249
172
205
164
180
169
196
195
122
203
194
203
230
210
181
124
169
247
263
204
186
200
224
244
185
231
194
190
217
182
225
242
255
187
234
195
233
163
189
173
240
218
234
200
253
220
182
186
208
187
252
193
187
196
150
181
203
204
209
233
233
249
172
143
165
280
257
209
199
192
154
286
189
171
183
201
152
250
201
170
209
184
231
208
208
220
231
179
205
244
226
165
206
145
193
246
174
222
180
181
297
200
201
203
145
205
209
220
171
244
179
180
138
198
182
219
211
185
146
217
192
155
189
130
187
222
270
139
195
176
205
182
241
198
255
197
233
176
188
226
221
203
206
163
223
209
216
143
159
207
197
248
199
200
215
213
200
257
201
199
225
276
224
201
228
236
124
214
134
211
166
199
145
130
247
167
208
239
148
207
164
266
252
202
155
171
205
244
206
191
203
193
213
198
208
224
230
219
186
222
180
213
256
201
171
212
163
170
141
241
173
193
154
225
210
205
181
189
237
213
201
248
166
255
216
170
215
261
228
195
218
222
197
220
184
208
192
262
204
239
224
246
190
197
199
212
187
174
234
245
228
157
176
213
191
210
213
190
157
220
225
212
194
170
182
183
213
224
190
127
136
239
145
232
208
220
198
241
185
244
243
199
156
155
253
218
213
185
200
160
230
225
194
190
253
202
203
250
209
195
250
158
246
244
191
248
236
221
233
234
181
131
224
197
162
210
181
165
212
220
125
248
191
249
174
186
199
181
183
165
240
181
172
189
199
200
292
219
194
258
205
159
225
180
219
185
190
206
219
148
215
191
212
168
174
162
178
237
171
200
208
198
223
231
264
212
190
232
193
190
228
170
140
224
176
184
180
224
244
219
217
223
252
237
217
152
113
216
171
158
165
236
175
187
95
131
231
252
187
232
211
224
199
222
243
203
250
251
235
191
177
142
136
204
234
169
169
161
166
247
206
238
163
162
188
225
239
188
183
129
200
217
230
175
150
199
195
167
186
169
202
216
158
172
181
141
195
175
206
237
215
180
238
207
225
157
240
251
228
209
246
152
168
198
168
160
248
165
262
128
219
207
215
172
194
138
199
226
190
218
165
144
180
186
175
191
192
151
222
257
200
234
226
151
225
263
149
251
293
194
124
149
192
158
182
221
121
146
175
260
224
158
180
210
198
201
171
151
198
228
181
179
159
263
227
245
203
173
228
201
143
153
185
229
165
165
236
291
142
213
175
201
131
181
258
139
225
174
270
213
193
242
198
153
171
126
229
191
248
241
246
191
190
161
219
143
188
196
148
182
185
161
208
293
223
205
166
159
196
280
186
225
235
198
215
203
260
187
254
209
156
163
200
227
221
227
240
213
144
216
167
157
209
196
155
177
224
176
195
270
193
165
214
143
213
181
265
199
181
199
215
177
173
218
152
235
198
221
133
262
154
173
233
215
122
176
235
203
223
186
174
227
196
225
214
245
116
231
149
203
193
198
211
243
234
221
206
218
185
225
184
178
159
227
216
204
247
160
162
222
171
215
221
160
175
217
188
236
216
185
170
200
173
210
231
189
154
178
239
228
198
244
238
206
221
174
210
262
229
142
190
190
225
217
208
168
250
213
189
249
214
219
199
129
194
197
182
199
217
145
166
249
212
158
227
202
208
204
166
150
259
259
206
180
148
240
152
238
162
153
252
208
202
128
163
168
208
144
244
216
160
200
194
175
240
167
182
214
236
236
211
98
203
226
218
168
197
170
232
219
222
207
240
228
133
168
213
235
136
220
165
192
166
104
196
192
251
183
163
132
179
165
216
215
243
224
229
177
209
251
204
128
141
238
193
199
171
233
209
227
214
193
194
173
165
240
193
213
143
176
186
256
248
228
216
186
184
211
179
212
166
203
182
189
185
206
233
215
195
225
181
203
169
171
160
239
243
283
205
254
212
150
227
202
206
239
228
174
165
240
224
162
176
199
211
192
195
177
165
242
231
262
180
103
168
258
201
159
228
251
163
176
167
180
197
274
236
201
166
187
280
186
196
218
170
188
219
200
176
197
220
148
280
202
240
161
145
202
229
243
160
252
217
143
226
185
156
252
201
246
231
165
217
196
211
233
242
190
165
184
253
208
184
188
244
115
160
250
189
247
188
161
194
234
140
265
219
253
229
241
255
231
151
234
153
185
243
226
194
189
235
199
182
188
171
258
167
208
174
234
195
131
193
205
203
217
194
205
202
188
223
153
206
227
176
211
211
162
150
136
241
185
217
205
192
195
201
190
219
244
194
164
237
255
220
208
153
193
214
168
160
276
186
196
228
232
166
196
151
206
235
170
200
190
211
269
243
258
136
152
212
194
169
167
199
181
208
209
204
261
218
186
211
216
208
239
208
216
259
205
240
185
219
176
230
197
162
243
172
184
209
166
176
235
161
239
126
214
237
203
236
240
226
224
228
244
156
213
172
169
249
162
201
254
177
201
209
187
196
174
175
201
164
284
193
197
141
198
199
202
203
159
203
232
185
247
174
177
269
243
189
186
260
189
214
182
209
168
227
196
178
204
190
134
204
181
163
198
191
210
219
156
153
136
180
167
202
257
215
188
211
184
233
219
173
160
231
213
243
220
267
210
200
217
214
202
243
203
202
173
222
186
224
200
109
159
197
220
176
218
281
157
132
168
154
298
181
192
207
208
186
257
154
172
209
207
164
188
230
182
159
200
212
176
207
141
273
245
226
128
153
164
202
222
187
195
241
149
201
183
180
219
249
230
250
219
228
199
170
140
141
181
200
243
256
269
165
199
269
228
179
226
255
169
277
218
159
216
162
146
209
236
189
231
239
190
199
194
134
276
221
228
171
228
196
154
248
172
112
163
199
197
184
147
192
217
209
220
145
192
150
208
183
162
242
228
197
215
243
184
188
174
189
140
150
219
221
141
175
186
212
216
236
189
191
189
162
180
223
206
214
188
275
170
140
205
128
229
239
156
257
224
167
151
230
263
175
138
166
198
203
219
160
156
187
251
145
209
221
206
236
167
182
216
288
129
160
261
225
218
200
181
226
215
194
242
206
250
125
243
131
198
176
124
235
200
187
125
130
245
277
206
140
203
149
234
199
243
214
129
144
214
218
268
178
180
201
171
167
158
215
182
225
176
165
145
189
166
208
183
138
272
242
198
162
155
187
91
179
109
216
187
253
177
188
270
248
218
186
227
233
210
261
218
240
197
225
221
179
166
166
192
213
240
196
203
190
147
186
200
129
230
183
228
220
158
211
182
159
212
252
242
277
264
199
226
202
213
200
186
141
100
195
200
155
215
200
194
189
162
242
239
193
269
201
209
185
258
117
203
239
151
190
249
178
198
204
249
218
260
210
215
247
163
183
255
232
239
156
181
166
151
201
244
222
209
198
235
222
188
291
202
212
221
150
130
164
138
235
112
248
157
182
160
159
197
156
172
250
202
109
194
258
191
139
231
143
225
169
201
287
162
198
172
229
171
130
185
200
290
213
240
164
177
170
197
141
197
192
151
242
209
187
238
223
203
151
216
189
154
244
202
159
158
246
222
266
213
274
155
186
194
154
236
140
137
173
207
138
219
184
171
212
227
159
258
140
236
230
221
187
167
252
158
177
190
221
216
201
218
127
190
202
210
169
216
145
159
166
267
222
214
178
245
204
245
268
210
233
233
175
148
266
238
151
247
201
187
205
230
231
196
194
202
180
220
223
203
178
198
223
221
256
193
206
218
201
178
165
215
174
253
216
229
147
215
143
199
204
211
194
217
207
246
236
189
189
134
192
143
215
166
197
178
202
150
257
181
220
115
168
179
115
207
219
237
194
230
205
199
232
212
210
158
238
198
156
182
184
180
152
141
242
173
205
170
232
196
181
238
184
233
189
195
179
232
221
184
234
191
203
213
173
167
215
264
239
217
156
128
171
189
272
242
162
218
206
127
227
183
202
238
179
211
217
195
204
182
268
194
198
199
191
201
193
266
237
162
170
175
231
132
239
206
224
141
188
201
233
145
255
212
194
211
152
237
163
209
216
213
239
140
150
198
185
163
207
177
285
195
207
295
191
207
163
207
185
193
220
221
148
141
170
251
249
227
173
236
211
230
202
163
170
214
225
189
201
203
171
137
221
202
179
221
257
180
177
207
180
168
188
211
197
210
185
212
258
148
175
116
162
193
144
190
201
254
232
271
189
143
165
227
143
229
214
189
229
211
243
170
159
178
147
183
223
191
209
241
182
193
178
183
216
197
199
268
170
224
211
172
205
280
156
211
256
168
237
181
215
179
237
217
211
214
216
181
185
147
198
305
161
219
207
225
266
178
174
201
191
236
187
220
134
213
218
123
241
200
129
238
202
179
186
243
227
259
253
220
189
242
229
253
227
212
178
184
232
165
205
233
205
141
214
243
148
162
235
233
218
150
194
211
271
241
193
224
180
161
213
237
208
234
192
274
229
198
174
210
248
266
206
208
195
214
161
193
137
198
173
199
215
197
183
181
194
265
162
202
214
206
147
260
131
232
207
212
204
220
209
232
226
135
224
189
157
269
233
217
192
182
191
108
197
220
171
257
217
232
190
234
260
202
202
188
180
124
236
196
207
186
168
198
200
277
255
182
202
162
179
227
173
130
178
193
249
200
181
234
213
154
175
102
200
194
212
234
230
145
236
202
214
189
251
157
234
197
245
229
214
162
223
118
238
265
218
218
245
229
148
215
271
203
239
141
156
204
173
147
207
191
245
186
196
197
189
205
243
182
207
219
221
205
174
157
259
168
198
172
170
116
153
190
240
217
187
190
242
179
205
194
190
153
161
171
233
151
171
186
221
163
188
193
219
185
221
266
169
188
224
150
241
191
177
184
167
247
209
206
235
211
240
210
173
154
191
199
245
194
244
269
232
165
187
205
222
197
215
225
184
220
175
203
199
199
218
210
135
161
207
198
180
187
251
146
212
173
283
229
278
194
230
190
220
224
125
190
225
123
200
153
214
161
147
179
223
173
218
176
145
175
203
155
241
198
253
227
161
219
215
237
222
216
181
236
173
233
237
208
248
231
146
177
153
180
184
171
195
280
179
191
171
227
167
219
182
185
197
250
232
193
175
184
183
181
188
197
140
172
190
161
252
208
236
239
268
174
178
220
170
232
162
211
260
175
238
215
205
209
195
185
258
190
211
208
181
178
241
123
203
225
237
202
217
185
251
221
197
165
169
186
235
178
146
208
160
145
222
212
165
184
223
148
186
256
206
213
149
183
211
221
240
240
179
173
142
235
208
212
145
186
201
189
150
133
260
199
223
221
253
195
177
195
192
251
218
181
142
195
231
215
214
202
160
247
197
196
175
176
199
188
212
206
204
216
255
152
231
212
170
246
176
153
137
192
205
177
230
244
251
183
154
243
196
195
197
180
280
181
143
181
91
261
208
185
201
220
183
243
183
223
162
243
219
198
214
161
228
204
243
165
189
201
163
150
195
202
196
220
205
191
175
216
156
200
178
206
241
222
205
241
181
217
209
185
200
240
221
235
196
234
181
201
185
236
179
234
191
202
191
166
245
175
173
183
244
173
257
201
186
199
229
168
209
206
191
197
213
131
194
256
196
192
191
173
230
189
208
230
171
196
229
167
201
241
175
178
178
181
259
230
217
209
183
186
193
219
224
185
195
224
238
213
170
193
123
189
197
238
178
217
219
226
155
166
171
143
205
191
198
221
195
179
216
137
244
208
179
168
214
197
188
233
225
242
197
143
115
227
217
193
195
228
159
223
224
188
237
172
176
106
224
289
182
229
214
150
226
269
220
177
183
174
162
185
226
192
259
196
138
151
203
186
163
228
214
213
210
199
210
261
185
265
205
194
248
225
216
193
183
141
199
218
234
193
175
180
143
222
177
241
205
234
192
247
165
218
167
263
215
201
152
241
205
214
149
209
208
221
249
193
189
198
175
195
237
211
246
165
182
205
173
215
185
210
202
136
132
110
149
176
231
280
149
243
207
186
190
230
198
232
132
178
230
218
191
189
177
247
250
128
210
241
229
198
210
172
206
217
196
195
222
142
227
175
234
263
236
187
267
177
205
241
223
186
231
246
216
214
188
197
192
180
197
254
217
185
162
173
163
174
181
195
207
237
196
150
259
189
179
167
202
162
207
234
234
178
228
143
218
140
183
217
195
219
181
204
193
158
219
203
208
222
251
212
188
216
217
188
218
203
124
179
215
170
225
173
191
206
186
147
183
205
216
206
221
219
214
148
237
159
202
207
220
162
184
180
189
197
204
193
193
185
181
140
169
184
232
186
261
226
191
151
218
293
236
188
209
184
190
175
235
178
181
213
213
200
210
201
182
201
164
159
112
273
172
218
173
202
169
200
237
222
217
220
204
190
243
231
218
227
214
236
178
242
249
231
252
208
169
211
219
250
189
237
159
173
210
191
207
217
202
156
189
249
193
133
184
181
226
224
183
151
221
149
151
228
154
230
194
239
205
203
220
225
158
195
243
184
123
158
165
194
248
209
143
216
235
148
157
236
172
238
189
194
188
203
228
191
237
208
186
185
140
188
193
256
202
246
196
154
188
202
221
208
160
232
217
191
147
183
175
199
241
225
166
176
220
190
188
172
260
228
210
220
254
225
182
204
207
145
182
166
222
186
169
195
188
183
204
224
233
235
198
158
226
181
176
196
188
235
237
218
173
158
178
273
233
277
238
180
213
180
167
249
215
190
210
221
212
207
252
170
201
176
170
201
218
180
168
257
125
193
202
212
247
232
182
167
158
234
104
216
229
137
240
224
190
179
231
203
187
160
136
204
179
170
207
239
220
133
164
164
212
237
188
185
199
197
202
248
190
214
226
198
225
163
187
225
216
256
167
201
215
163
244
198
240
206
236
198
237
253
230
189
223
198
152
168
155
166
206
236
172
223
189
154
250
207
205
214
218
193
153
203
231
250
211
188
253
234
175
174
121
211
165
190
227
157
248
222
279
206
129
218
182
134
207
233
233
240
157
266
236
190
261
233
178
181
206
236
254
220
217
259
248
142
195
227
201
191
225
229
231
219
183
233
222
151
205
219
182
185
159
150
191
143
189
243
181
198
194
150
201
203
182
248
196
215
158
183
192
167
228
195
217
174
183
167
180
198
210
229
190
141
187
221
228
174
189
211
213
245
233
183
188
201
211
178
200
145
231
243
184
168
260
211
209
194
181
175
183
221
282
210
207
225
135
208
186
230
248
252
210
212
241
177
245
149
135
204
219
127
239
185
196
173
227
181
243
135
131
169
192
220
214
196
233
204
231
201
183
166
232
213
239
216
201
214
220
159
227
222
222
212
228
181
131
146
167
163
238
268
190
235
233
158
186
231
226
182
218
207
175
223
236
216
193
228
217
237
261
202
211
178
182
196
215
228
254
169
144
218
234
248
212
235
184
219
197
242
217
190
210
243
225
226
213
251
203
175
149
181
227
210
185
216
184
189
233
160
202
236
95
248
173
218
192
198
207
226
202
234
199
229
237
171
137
177
133
215
218
185
169
190
182
202
170
196
239
195
184
171
174
160
236
277
162
250
181
157
244
190
168
203
216
167
230
173
195
199
157
223
195
187
184
164
263
196
205
199
278
230
187
227
221
235
230
186
170
235
148
230
193
200
226
207
152
209
240
246
197
227
267
181
223
271
155
181
167
243
202
218
207
189
196
140
217
169
216
265
183
137
189
187
230
150
176
205
190
221
196
178
231
125
208
175
235
193
207
251
139
165
185
188
198
224
193
210
232
183
202
229
225
247
214
217
234
189
157
167
208
211
233
209
212
169
197
221
159
182
169
206
170
232
237
183
265
177
184
154
173
247
242
176
144
121
142
222
182
157
146
213
227
165
256
205
207
203
148
229
241
215
187
190
253
198
229
181
200
178
220
233
218
196
222
209
181
169
166
201
161
160
154
176
168
220
193
226
180
206
249
218
147
227
203
266
199
257
195
219
252
238
198
239
201
233
240
205
210
189
225
239
178
223
187
108
213
247
257
169
229
218
252
150
213
213
206
222
136
167
202
224
152
199
176
217
121
198
152
235
178
214
179
224
241
202
145
240
234
196
216
202
143
197
200
239
179
239
181
207
216
234
151
260
187
188
246
215
256
253
223
278
165
218
172
188
224
258
143
231
246
219
188
262
212
175
203
258
170
213
243
172
168
223
204
163
214
221
207
233
152
185
114
195
187
200
186
113
165
210
232
142
153
216
278
194
177
147
214
145
241
195
209
170
192
153
208
215
171
184
230
196
240
148
215
181
229
199
163
131
217
184
167
206
168
160
199
196
219
164
144
189
248
241
178
249
220
171
221
255
172
210
207
224
204
160
150
191
207
118
238
255
202
224
128
234
248
185
248
224
231
173
238
211
175
153
205
178
206
219
183
228
196
254
226
219
150
166
225
195
180
216
172
202
209
180
180
166
171
167
147
228
158
194
232
154
178
247
214
193
220
194
218
167
229
210
223
189
179
130
205
243
218
203
206
210
225
157
214
216
180
238
216
202
194
246
181
227
189
241
219
176
224
251
236
191
189
206
172
170
181
201
219
234
206
194
234
274
265
185
188
189
195
180
254
196
145
231
237
169
129
138
149
123
275
223
171
214
184
227
177
242
152
254
230
146
229
224
164
184
175
186
206
226
230
263
203
233
154
184
202
182
236
271
218
148
211
163
198
126
176
209
171
149
215
215
148
134
228
175
272
197
186
163
178
183
202
235
196
232
190
197
228
203
229
162
203
200
172
194
195
150
183
172
147
241
130
195
203
217
205
189
177
221
148
127
216
159
231
187
189
202
143
144
238
230
193
221
207
150
195
177
192
248
195
179
222
214
183
211
243
211
121
261
160
186
189
225
255
251
173
185
193
142
236
203
189
205
188
226
206
132
149
173
208
173
172
215
207
149
113
192
213
156
189
230
262
160
211
157
175
194
190
199
219
236
126
201
210
113
201
218
162
152
190
174
159
186
204
221
216
191
218
250
214
155
181
233
233
204
143
224
178
152
225
266
215
155
140
224
233
237
240
246
206
140
193
237
195
193
226
165
198
234
196
177
233
181
138
250
247
201
240
162
226
213
211
187
227
115
193
201
217
219
190
221
170
215
180
173
210
216
247
180
179
185
174
95
186
193
163
186
198
234
197
200
162
211
204
211
202
165
145
209
101
261
254
181
228
222
235
173
170
199
240
146
217
195
273
234
231
168
188
193
164
180
224
165
246
239
206
189
154
221
247
193
182
145
260
170
183
194
214
237
202
237
198
195
219
206
183
196
259
203
182
210
190
86
185
238
227
241
205
201
263
256
149
196
176
225
255
177
184
194
214
206
191
257
180
193
172
242
178
230
192
206
202
184
175
216
214
164
202
211
259
154
198
168
203
166
195
273
170
182
229
174
214
194
231
210
243
147
202
234
224
223
235
182
152
191
191
224
186
251
245
224
146
163
221
163
163
254
195
214
221
215
235
179
214
204
187
223
247
162
147
235
238
193
166
195
262
192
184
262
224
241
240
164
179
246
214
221
131
201
210
196
224
159
192
185
200
203
216
205
163
184
224
246
197
224
169
263
243
190
208
210
143
166
234
163
200
202
164
181
177
218
217
200
188
158
204
158
173
220
241
188
216
174
190
173
202
197
208
225
196
205
244
106
280
209
241
194
143
221
233
130
185
253
234
206
230
146
243
195
204
231
188
171
217
142
166
188
236
182
201
214
183
196
208
229
176
159
198
241
198
186
223
173
225
231
183
190
215
222
210
239
227
265
184
205
207
202
161
140
234
232
179
235
207
223
146
202
214
193
230
180
192
217
198
206
179
231
171
146
239
212
254
239
253
234
143
164
197
217
205
243
169
120
226
221
178
202
164
213
231
181
209
181
159
195
249
191
195
134
222
192
219
231
207
211
199
200
182
245
217
189
152
221
184
243
242
140
229
238
221
152
205
221
148
169
303
213
240
151
211
190
216
181
181
230
186
199
178
190
169
219
207
188
165
209
190
231
185
169
220
206
109
135
124
166
234
230
220
194
211
178
257
170
167
229
193
173
175
170
190
170
215
216
244
154
267
179
210
218
177
176
200
191
201
235
199
147
215
200
175
234
203
223
203
219
204
213
232
229
158
160
234
207
211
235
195
140
200
174
150
221
175
224
206
146
225
153
133
223
175
217
170
237
187
238
200
166
198
172
186
224
198
217
153
206
183
230
116
230
162
176
149
175
276
159
211
196
201
237
204
200
210
217
190
209
213
184
174
225
160
184
220
221
192
218
214
246
173
214
133
209
212
140
174
190
212
243
202
184
162
182
220
187
237
200
225
227
159
159
223
207
213
220
220
165
214
220
214
151
195
256
191
230
204
252
241
233
216
211
234
229
174
204
127
175
231
208
215
197
226
206
166
249
138
215
226
243
240
257
194
183
241
220
219
168
215
195
207
141
167
233
269
262
180
164
162
137
231
212
217
211
201
180
218
250
190
218
234
144
118
221
210
239
180
157
186
154
166
203
192
240
201
146
203
225
249
145
147
176
167
183
169
191
212
158
210
165
180
217
187
251
184
175
178
143
190
160
250
181
198
173
181
256
166
192
131
199
191
251
161
232
169
232
242
205
237
225
190
215
201
222
148
201
194
226
234
239
169
216
187
237
195
148
219
266
181
209
211
240
211
178
157
151
197
151
194
194
247
235
257
207
229
192
255
274
210
186
233
168
164
163
222
240
152
188
253
258
192
202
192
236
159
211
162
189
224
202
184
166
201
232
180
208
157
172
261
168
241
234
199
186
169
245
188
166
212
231
219
223
180
239
198
216
229
187
179
237
254
141
204
103
211
303
237
236
224
254
219
192
163
250
172
199
273
195
176
197
179
208
209
210
201
190
187
222
208
252
202
258
217
219
188
213
220
142
182
176
169
212
234
180
133
278
198
256
168
184
216
223
197
162
155
169
189
161
208
181
164
162
179
185
177
209
132
215
187
214
208
197
179
258
160
201
150
239
152
154
135
254
173
206
192
243
215
200
228
200
265
240
264
161
183
206
188
221
98
210
216
250
194
195
236
160
225
245
172
163
239
161
171
157
185
196
224
168
142
219
149
164
199
195
181
223
185
147
224
152
224
236
217
161
202
199
227
195
228
161
189
235
163
208
198
232
267
193
128
224
162
210
266
211
202
201
174
233
146
200
212
212
188
155
222
226
206
172
244
194
211
271
223
208
199
198
197
218
246
227
198
264
180
209
238
125
233
227
140
189
158
201
233
234
173
212
142
223
168
211
253
176
251
232
213
240
243
231
178
188
182
214
223
164
165
217
195
221
175
205
198
249
186
253
222
178
235
216
236
183
178
148
163
176
240
194
228
210
194
188
238
258
210
269
161
203
173
210
180
213
186
179
207
200
238
217
208
122
154
182
202
173
169
193
239
232
177
191
220
245
222
218
221
153
173
185
197
223
204
201
236
214
200
196
263
223
199
168
249
201
230
166
219
199
204
209
184
206
190
147
187
227
267
206
169
258
160
170
153
135
210
168
205
145
110
180
157
182
225
202
241
184
167
182
154
230
137
237
197
228
215
145
151
223
203
203
155
181
193
170
211
175
221
209
177
223
186
284
288
211
256
191
254
231
199
183
203
252
228
176
197
205
218
228
206
228
230
195
188
196
214
145
113
203
241
198
171
188
154
247
227
201
234
89
245
176
190
213
219
259
185
242
235
146
249
263
197
136
224
208
244
225
226
200
218
208
143
172
199
191
131
230
180
228
205
168
252
230
186
190
237
187
191
227
157
171
160
218
171
172
226
188
246
255
227
190
143
215
221
253
202
203
169
125
189
198
197
225
159
263
210
220
257
178
189
203
253
211
215
231
208
266
158
146
203
201
210
177
218
169
204
185
144
187
164
232
161
191
182
164
225
198
211
174
179
223
170
187
151
175
233
174
210
181
204
213
185
204
148
244
234
190
218
226
197
181
248
219
212
199
216
185
234
228
156
178
262
207
192
181
187
185
173
174
173
261
210
237
164
160
237
216
136
120
212
236
186
188
239
183
221
183
277
172
159
182
206
159
178
198
150
200
166
201
231
149
145
247
242
209
141
264
249
188
223
137
230
173
220
211
205
177
153
219
210
129
210
214
167
212
201
244
262
209
179
173
205
254
199
196
241
239
206
228
170
172
270
164
186
179
243
202
159
221
190
158
207
177
157
206
200
237
238
211
201
202
218
169
168
223
249
162
207
214
224
238
193
232
213
149
92
222
182
259
196
232
202
237
220
253
191
205
196
262
218
212
188
198
191
200
225
228
231
175
250
191
269
183
232
215
197
203
184
244
203
186
208
137
181
232
222
163
180
207
259
244
230
155
195
217
226
156
244
115
177
167
198
223
234
253
236
198
164
185
181
227
185
228
184
248
259
218
203
221
257
219
134
215
137
176
176
254
246
184
239
222
174
185
158
188
206
187
169
193
199
238
141
213
243
194
221
137
212
229
203
197
183
207
160
256
213
214
137
185
168
196
164
194
192
184
148
167
210
245
249
238
209
180
201
176
217
152
158
205
249
238
196
178
165
157
170
190
165
194
147
224
138
129
203
179
184
189
192
204
238
237
233
229
209
225
227
232
214
206
207
240
247
157
179
168
215
235
247
266
202
246
186
247
227
150
221
217
167
200
206
181
212
213
163
191
250
243
234
199
205
178
194
151
249
180
192
206
145
230
206
197
147
195
192
196
241
266
188
180
215
236
236
238
245
249
177
194
253
212
201
192
142
256
209
147
199
185
211
139
217
182
240
236
248
202
244
193
205
202
262
243
192
180
131
193
202
191
200
198
139
224
219
216
194
143
168
234
174
230
240
183
181
262
168
226
200
166
217
119
205
247
223
242
179
223
198
136
154
212
161
210
218
192
149
232
175
231
220
206
245
193
190
234
235
176
233
217
193
218
285
223
183
185
224
193
170
213
162
194
229
240
141
191
214
195
192
238
236
185
229
171
154
158
211
170
170
178
199
218
236
248
180
253
170
170
204
209
283
243
195
182
201
185
204
198
126
227
191
217
203
189
154
223
166
218
165
196
217
165
219
287
152
166
212
130
153
176
195
265
217
192
169
229
101
241
199
202
199
212
175
191
214
204
209
195
197
242
186
198
172
167
224
207
195
221
213
240
201
169
210
219
173
176
146
182
178
138
230
191
199
207
225
141
200
217
240
241
133
225
200
198
256
173
185
189
167
187
190
177
172
226
177
161
168
191
224
254
189
194
178
215
170
167
198
180
237
221
221
247
236
186
203
226
210
208
216
178
187
212
206
121
251
211
153
189
186
203
232
226
179
158
168
189
232
214
171
228
153
118
224
203
253
191
213
239
200
114
204
215
216
195
146
234
192
199
170
206
220
246
216
220
232
167
243
247
253
189
219
224
273
172
251
227
242
196
217
222
132
194
190
154
166
170
218
175
196
253
152
195
171
201
236
279
207
232
150
168
163
195
140
158
210
212
213
148
192
216
254
204
217
241
242
177
191
200
248
170
221
186
134
212
178
170
170
164
170
195
234
222
239
177
237
208
226
190
207
208
246
243
251
258
243
204
201
155
210
155
174
192
209
224
234
215
195
140
199
204
153
192
234
145
249
255
210
217
172
208
214
186
179
182
257
198
162
168
202
155
233
182
175
187
210
158
163
191
201
246
213
249
285
194
189
168
232
219
225
234
238
172
160
233
231
216
145
196
229
184
123
139
252
210
171
203
177
186
207
212
241
199
250
236
232
182
237
193
162
268
249
186
178
182
152
240
240
217
237
217
197
183
174
229
196
160
210
225
200
185
226
244
209
156
153
160
168
206
249
184
252
170
216
194
164
155
252
187
240
213
222
138
195
249
188
242
177
139
166
178
169
291
121
236
192
288
242
195
216
174
242
239
210
192
184
237
222
124
191
198
176
191
195
213
183
172
207
205
233
164
246
205
192
230
209
258
198
175
179
252
208
237
196
221
272
179
203
180
219
258
242
202
193
222
179
173
181
154
176
209
188
208
166
206
173
223
236
215
161
184
198
187
204
197
207
275
153
256
170
264
182
162
212
251
130
178
283
273
238
213
227
276
287
244
239
196
220
209
157
189
250
255
217
211
240
152
159
276
225
213
173
174
206
128
224
209
154
229
195
291
194
178
220
224
233
181
158
175
169
199
229
196
163
220
185
212
229
231
208
232
234
196
220
279
204
206
216
185
165
195
175
126
281
212
187
171
211
267
167
220
166
181
154
162
185
173
166
221
195
204
125
226
120
160
174
202
248
217
220
166
203
205
159
220
169
176
173
175
141
226
156
192
217
252
247
163
235
193
164
198
207
148
190
232
201
143
190
196
198
165
203
204
250
268
217
181
196
244
213
237
196
210
287
248
154
234
137
168
129
216
222
231
232
234
195
150
197
159
182
160
187
219
245
209
209
192
246
246
194
218
158
128
235
178
221
123
181
239
168
181
171
153
228
160
223
215
255
222
144
197
197
238
209
113
232
194
261
192
233
181
196
272
258
195
181
161
232
171
229
278
156
188
154
150
226
193
274
146
213
196
141
233
195
223
211
245
248
177
159
216
225
195
213
194
184
171
208
225
208
235
204
158
217
205
177
168
264
190
227
220
161
260
205
160
233
199
289
194
132
159
105
199
223
239
170
221
199
278
165
131
182
258
192
163
201
221
241
228
186
199
177
201
189
144
138
188
206
167
198
183
138
219
230
219
180
189
207
214
212
166
212
188
183
224
213
205
215
131
222
181
268
175
131
202
192
221
239
237
222
166
230
185
175
209
232
203
181
167
248
223
197
212
195
178
176
199
227
198
246
245
217
261
231
189
143
128
223
235
180
187
190
267
190
214
186
192
241
251
228
212
254
231
172
187
206
226
213
218
183
146
178
190
138
204
173
186
221
190
215
161
237
238
225
253
232
164
203
217
213
254
190
191
222
210
241
159
204
205
256
197
156
196
209
247
232
154
262
240
232
230
167
241
192
255
214
200
178
230
195
255
240
270
128
228
161
241
192
190
221
160
201
148
215
228
191
147
234
215
218
167
265
179
219
184
232
213
213
243
179
155
208
211
234
181
204
181
208
232
223
221
254
195
262
178
236
240
225
206
161
205
222
211
157
226
234
171
194
185
244
243
174
167
155
173
257
227
191
179
220
264
233
282
230
250
205
169
213
220
244
229
174
209
193
247
249
191
248
207
203
197
193
192
196
164
224
251
243
228
189
147
217
222
197
234
184
210
261
217
170
202
189
239
156
237
182
188
270
206
213
248
176
209
148
133
148
260
206
249
203
203
263
195
163
165
226
221
243
238
215
219
206
168
227
184
165
215
161
173
216
177
185
240
186
217
134
236
202
100
239
194
179
168
176
191
195
217
209
203
200
211
185
279
199
197
157
181
184
269
236
186
193
194
199
228
195
197
245
238
209
177
209
214
175
191
142
219
238
257
210
207
226
214
173
181
227
203
181
223
167
172
237
221
186
213
143
241
173
160
231
151
144
221
262
220
182
176
168
192
229
211
186
229
180
163
211
154
196
189
221
179
183
195
199
217
205
192
236
160
168
153
191
236
152
185
185
210
233
147
238
198
189
143
234
171
145
167
208
187
183
257
220
177
163
171
197
167
200
193
246
159
222
246
180
202
209
193
172
175
236
120
175
267
226
226
194
217
211
254
220
167
172
228
232
133
265
207
189
238
85
158
175
232
199
172
219
203
160
193
186
220
235
230
228
276
190
251
165
152
233
162
197
215
193
122
235
268
216
202
228
207
221
254
205
188
220
196
206
222
196
268
227
179
174
111
228
171
136
266
212
144
204
175
240
222
199
234
213
177
201
201
223
137
209
196
196
169
189
176
235
182
192
245
186
147
208
273
171
209
233
187
199
213
158
200
213
174
214
216
200
205
165
171
187
174
174
184
204
210
191
245
148
168
156
143
94
274
212
209
203
274
247
183
185
217
204
204
159
242
217
204
203
205
204
220
252
229
188
233
235
214
201
205
165
226
168
171
218
131
159
214
138
213
228
209
232
190
141
253
200
120
172
171
247
222
174
243
177
194
188
205
145
175
159
264
182
200
229
209
215
223
218
199
223
189
228
199
146
203
204
186
178
199
200
171
208
216
219
174
184
191
220
235
219
196
162
132
192
181
229
203
238
198
191
165
210
216
233
259
244
194
185
209
164
208
200
224
217
199
215
204
203
163
95
182
158
202
261
173
213
212
222
201
152
184
148
209
221
218
185
214
166
186
180
241
259
187
187
220
203
149
193
204
175
191
195
195
194
212
172
201
180
222
304
168
192
166
125
149
168
194
166
239
142
236
244
165
189
219
191
202
214
205
195
186
185
183
201
193
254
189
211
205
216
212
211
216
126
182
215
187
243
180
187
176
214
207
196
217
209
141
297
213
204
191
180
184
149
172
244
138
213
147
173
228
197
204
193
263
207
219
206
143
204
231
198
233
179
151
171
217
229
210
175
187
224
204
154
207
216
204
187
183
183
174
214
163
155
230
212
179
223
221
192
219
169
181
173
203
183
175
237
218
186
207
182
226
209
217
154
170
155
206
170
200
201
186
231
231
231
194
186
209
164
229
201
170
236
215
204
217
156
178
207
180
194
224
206
192
195
256
197
204
171
261
235
173
156
191
132
198
183
201
212
189
143
170
192
172
274
211
228
180
241
148
235
200
172
212
202
197
162
173
220
205
174
217
214
200
181
172
178
181
262
223
196
166
190
153
229
250
191
218
248
210
250
157
240
128
200
229
159
226
241
187
176
242
186
211
167
111
205
184
224
245
210
201
158
223
233
180
176
218
209
215
138
182
165
195
261
176
210
215
281
201
220
176
252
234
185
226
232
152
178
164
225
187
206
232
234
192
142
197
182
221
158
228
215
154
210
186
171
211
172
243
178
217
204
233
172
237
181
237
209
189
248
137
254
208
228
238
154
200
199
203
167
166
201
159
223
164
138
203
190
194
248
143
184
167
182
139
231
198
207
155
212
208
185
201
246
221
200
231
205
200
225
209
180
204
216
183
168
190
202
121
196
228
195
214
229
258
164
188
147
204
161
194
209
227
210
191
206
194
239
156
245
237
216
120
209
194
153
215
191
192
191
156
216
238
177
160
220
257
172
206
245
136
216
141
246
205
221
193
191
257
151
178
253
174
186
187
231
113
263
207
268
197
281
200
249
190
250
237
169
247
204
208
188
165
139
222
241
207
186
233
233
149
211
187
202
171
234
201
220
192
251
200
252
249
251
247
263
229
218
209
146
148
207
138
200
224
170
224
235
217
204
232
154
259
167
245
225
201
219
148
167
211
226
192
231
159
244
210
208
221
165
223
172
212
242
186
265
172
174
222
244
278
199
191
147
194
216
196
178
221
302
166
230
214
211
181
168
210
131
248
148
177
204
227
179
221
143
196
168
182
214
247
200
231
209
191
173
223
193
195
241
168
257
224
170
276
181
200
245
177
144
179
167
277
117
161
206
172
219
199
158
193
196
140
216
251
176
222
228
197
173
169
187
207
199
204
150
257
165
213
220
171
259
213
175
148
201
192
198
221
248
209
222
206
151
186
233
224
161
230
226
190
228
242
184
186
247
226
143
231
249
170
214
215
206
178
160
188
191
207
207
153
240
207
276
134
253
223
171
240
233
167
171
184
228
216
222
214
159
245
272
175
228
127
249
217
235
238
163
229
194
134
198
229
191
176
133
216
197
114
220
208
233
228
180
134
189
227
238
245
247
194
172
180
149
253
219
216
166
242
172
165
180
215
168
219
162
235
255
225
226
254
191
191
215
175
219
267
208
205
226
205
254
173
205
237
201
186
206
219
171
145
132
169
173
249
258
254
237
222
222
282
182
135
232
227
224
161
189
249
223
215
229
144
218
152
246
171
188
188
222
140
174
201
225
189
186
187
252
156
195
163
168
231
226
162
197
171
146
201
207
242
201
207
195
170
210
234
188
258
212
244
167
201
201
185
271
124
204
160
165
150
238
199
188
183
152
238
223
182
172
138
247
173
148
253
140
214
188
240
227
204
193
201
193
217
141
145
254
105
247
180
203
187
194
242
205
137
268
177
169
190
205
207
192
190
237
174
202
191
255
257
141
138
222
193
150
216
132
209
234
266
159
191
225
244
213
204
273
165
211
198
192
209
154
254
199
136
221
205
198
208
245
165
267
162
192
134
211
182
180
223
215
200
199
202
242
255
223
179
144
158
205
246
186
209
210
184
230
187
175
176
239
175
203
213
181
164
216
237
221
236
171
201
222
196
167
211
183
179
122
265
136
226
162
146
275
142
171
172
169
216
270
236
195
244
191
197
192
221
156
174
260
203
187
174
256
216
212
231
180
162
167
118
166
155
181
221
167
118
175
225
212
167
177
188
188
230
133
278
155
209
227
215
267
225
209
178
238
217
213
292
140
198
167
201
209
223
213
234
152
235
170
204
149
214
175
231
225
228
205
211
241
119
156
202
231
197
183
172
229
184
248
226
235
189
207
207
223
213
191
207
256
250
177
209
185
177
242
214
224
222
189
187
214
246
181
174
194
196
170
167
194
218
198
208
227
222
238
173
160
248
281
213
240
164
233
187
206
193
215
227
229
201
154
241
243
256
227
229
247
211
152
180
164
205
214
201
167
201
195
160
234
205
239
238
178
136
225
197
169
221
207
198
176
231
209
244
159
163
187
226
229
205
200
208
164
214
180
145
192
214
177
255
179
178
178
195
236
189
199
223
148
187
147
199
165
188
266
205
235
122
165
210
236
210
208
236
160
230
245
230
199
220
191
153
213
174
192
216
220
256
185
206
261
255
197
208
179
169
241
269
212
229
170
187
173
226
222
238
152
182
218
156
169
172
184
82
197
202
154
208
224
205
166
224
206
179
241
175
205
253
205
174
186
279
239
246
188
207
195
169
203
222
184
234
197
176
209
225
215
219
206
121
253
186
216
204
177
191
179
216
185
158
214
296
171
157
203
137
224
245
178
242
231
232
200
220
190
134
261
218
179
155
138
213
247
120
128
229
186
207
201
245
275
227
164
233
184
179
237
171
190
220
200
145
241
164
182
217
177
197
236
157
196
249
175
242
184
167
178
255
205
176
194
235
174
97
177
197
194
223
246
241
180
200
200
133
185
163
186
249
219
221
165
159
167
194
208
218
132
171
178
135
276
198
180
234
224
142
226
134
183
205
239
212
212
229
240
206
150
194
230
238
143
179
250
199
230
137
157
249
207
247
196
214
222
209
201
228
176
276
239
184
178
193
266
196
234
193
218
207
203
203
188
201
171
105
180
154
253
166
211
168
210
192
192
195
161
187
224
134
164
195
184
173
207
249
234
237
254
219
176
182
148
190
285
179
150
208
238
226
243
143
147
176
187
213
249
233
188
170
239
234
180
250
240
182
215
200
171
259
237
187
213
201
197
165
193
181
223
256
234
120
255
225
219
231
163
127
243
196
229
252
226
216
180
190
233
258
172
212
164
256
256
215
200
263
230
185
217
188
128
165
259
233
166
265
206
227
260
249
178
204
260
186
151
238
246
229
179
172
174
225
162
217
277
242
228
221
266
176
198
162
214
162
201
195
157
216
164
231
198
216
145
154
191
225
218
163
166
179
226
217
214
232
216
216
275
205
189
188
218
221
106
238
178
152
198
185
178
154
210
206
212
238
179
213
193
234
218
138
166
184
201
189
210
177
192
135
198
266
184
202
165
240
213
198
181
223
165
211
170
240
250
208
187
228
200
245
148
223
146
239
169
244
165
196
195
173
178
197
225
147
160
167
179
221
196
174
210
239
216
224
127
202
239
228
237
229
187
203
148
239
253
174
221
243
162
199
193
118
212
255
201
217
229
191
153
236
173
200
177
131
203
205
173
258
269
234
189
212
150
150
210
206
190
268
181
192
190
193
186
215
176
173
206
150
118
223
279
213
218
235
157
215
218
173
183
177
269
156
197
223
209
214
156
156
229
226
219
216
160
219
217
233
235
170
213
233
229
197
233
224
198
197
212
224
175
183
216
200
171
198
193
167
213
150
222
189
222
191
232
243
137
159
235
188
151
246
187
220
160
174
191
196
199
156
153
211
198
186
208
224
248
232
173
195
231
184
119
260
175
190
173
250
204
251
238
186
212
248
203
222
199
155
184
234
223
159
181
212
275
219
157
186
164
161
168
243
175
154
199
212
206
225
192
184
201
171
215
222
160
200
187
214
265
106
227
188
243
176
174
168
227
235
135
196
212
182
221
231
186
242
242
193
173
224
194
126
178
175
166
208
211
190
182
211
218
220
222
187
180
172
249
207
213
214
244
148
208
228
222
200
224
250
191
194
224
214
208
190
181
141
177
207
240
174
203
253
239
202
217
184
124
199
247
221
194
183
230
218
218
249
222
227
218
213
236
232
169
203
231
189
272
222
229
232
183
163
156
210
219
202
248
183
216
207
172
203
226
168
136
194
200
202
181
240
209
236
206
217
243
208
256
245
203
205
249
242
230
145
190
197
229
207
210
181
259
189
225
252
163
194
237
227
165
198
200
230
178
197
247
145
240
198
248
172
243
204
197
177
184
225
192
135
206
164
207
195
151
183
269
150
198
207
151
228
154
198
202
223
220
187
189
165
206
191
212
222
201
176
177
218
218
263
150
226
191
176
224
224
184
194
191
206
177
136
148
186
178
199
215
202
209
232
196
242
161
175
243
220
208
193
176
209
228
279
226
192
213
150
203
215
160
210
201
198
186
229
225
205
161
233
136
196
197
255
211
238
126
203
272
193
233
219
245
174
218
150
212
150
229
130
209
187
199
195
212
221
186
179
219
201
175
210
205
197
203
229
227
240
192
123
215
129
172
156
179
168
203
191
200
191
245
137
185
241
218
193
216
172
133
194
203
267
206
194
168
149
232
260
238
187
215
215
221
182
187
206
168
176
168
229
143
152
176
219
222
137
233
243
163
201
267
167
225
188
215
182
177
217
217
177
219
171
170
205
204
159
175
215
212
248
211
122
167
235
193
221
245
163
176
191
135
222
202
169
257
231
141
178
156
170
236
245
162
179
172
173
176
213
208
213
164
174
190
242
179
116
232
213
212
192
188
266
248
186
186
179
202
242
225
144
146
216
201
183
209
236
211
245
255
237
207
218
229
192
188
248
208
198
242
230
199
182
256
192
209
273
165
215
205
137
213
209
172
253
213
194
165
204
204
211
264
172
220
203
149
200
147
177
202
196
157
227
148
181
165
242
176
166
217
169
191
206
168
129
152
171
198
226
161
188
157
270
175
273
199
160
232
274
255
194
258
197
199
156
237
211
155
204
107
263
227
185
226
202
138
224
207
178
250
176
228
211
211
232
226
179
211
199
153
275
211
200
204
185
244
125
147
230
250
246
253
195
197
187
198
241
193
201
206
228
163
169
122
216
201
141
196
205
282
262
253
219
179
161
150
250
226
179
246
190
191
157
192
259
122
237
188
131
147
208
189
171
238
194
182
197
217
265
200
158
143
199
171
174
148
242
189
198
214
185
191
188
223
202
162
233
249
218
167
214
237
193
224
229
215
145
194
262
235
207
192
177
188
220
243
211
196
213
206
251
218
206
183
239
149
216
239
201
229
198
209
181
190
188
226
164
214
236
188
182
185
169
199
180
213
264
237
175
185
171
216
196
208
245
214
147
193
202
219
176
166
189
194
133
172
160
199
213
228
193
191
225
175
162
213
213
134
210
204
249
196
234
194
204
158
221
172
184
213
222
169
220
245
179
214
200
221
236
116
219
267
254
147
235
214
160
220
214
216
191
242
196
237
153
122
217
191
201
153
171
157
226
194
173
186
199
206
188
221
224
173
209
274
203
185
197
200
258
230
193
211
212
173
208
229
198
255
207
203
213
197
199
262
214
142
198
204
214
187
216
203
170
131
165
199
158
200
248
213
210
216
226
183
203
187
181
241
208
221
265
150
193
195
188
185
199
208
213
187
256
141
169
228
155
135
148
236
205
227
220
257
235
262
220
166
221
259
256
159
198
224
127
192
203
179
214
198
188
235
188
233
207
225
186
177
215
152
148
238
199
146
190
159
186
207
175
231
174
241
187
121
235
229
229
168
131
249
235
223
181
165
271
167
214
220
197
261
221
185
142
156
156
215
181
204
185
188
220
149
169
184
183
223
170
177
219
199
191
170
189
210
232
253
187
165
247
215
216
234
238
244
178
203
184
140
141
187
176
170
185
224
261
195
157
146
238
189
207
223
149
234
228
220
177
212
178
239
195
210
189
179
234
241
191
253
213
163
210
185
234
201
208
281
156
147
224
215
197
195
191
164
232
248
190
223
204
174
164
197
190
238
144
244
242
188
122
250
207
226
194
213
205
210
217
188
216
278
188
268
183
207
214
196
253
166
199
212
229
204
173
197
183
191
186
210
179
203
229
224
141
224
273
222
187
239
163
157
161
220
203
243
169
164
239
221
225
142
176
231
263
267
238
212
193
192
219
148
179
267
204
137
194
207
214
170
256
176
193
240
209
204
176
203
189
163
168
213
184
191
201
226
187
230
247
176
184
238
208
219
260
243
187
180
175
194
200
185
183
170
267
227
202
226
161
206
196
186
225
163
223
193
195
194
235
171
222
157
260
183
209
235
178
155
221
207
218
200
209
231
227
189
199
206
176
178
202
251
242
197
226
203
197
226
205
241
232
234
209
188
262
166
170
196
206
210
183
204
187
185
223
253
179
165
171
220
207
261
210
113
213
198
228
211
160
215
213
232
189
183
220
237
203
217
194
162
256
170
167
223
230
219
218
208
197
188
214
217
220
222
186
258
255
227
191
126
243
228
174
191
227
205
158
205
191
213
223
201
199
231
210
243
219
223
246
182
195
200
202
209
229
195
265
168
202
224
162
239
185
155
133
211
163
241
220
162
202
249
171
236
208
179
195
233
211
206
198
174
226
143
235
213
222
240
232
223
205
202
215
163
171
185
245
183
166
141
212
122
131
263
265
221
156
160
189
131
168
150
207
224
170
156
156
184
170
200
194
211
192
237
221
262
158
185
198
122
238
247
199
215
215
186
131
191
233
204
179
213
156
192
201
115
211
168
212
188
178
184
253
274
232
192
203
204
181
154
203
144
188
265
241
211
221
180
210
265
192
237
208
216
246
200
215
197
105
160
189
213
222
135
191
234
223
183
204
189
204
214
156
235
228
237
184
187
214
249
215
201
147
226
127
157
167
208
219
173
243
234
202
222
228
162
168
182
208
167
206
260
237
245
141
176
200
120
208
176
175
175
130
264
205
268
154
282
219
214
171
220
277
195
212
230
263
167
138
187
259
171
142
228
184
153
185
176
154
253
196
180
205
193
168
191
226
201
227
158
223
184
276
183
205
214
195
164
208
220
191
235
238
253
229
150
222
234
267
177
208
211
281
226
150
192
248
193
188
165
183
200
197
203
183
236
213
243
178
226
185
250
162
187
216
217
252
155
155
217
192
176
203
198
208
242
183
151
227
220
140
216
166
190
152
193
185
255
144
176
180
189
229
181
185
121
198
151
243
138
140
178
203
200
229
221
226
161
143
181
188
214
239
197
237
189
222
213
180
193
242
221
167
213
201
188
262
238
225
202
170
261
212
235
156
152
191
209
171
185
197
251
200
186
216
228
220
187
197
146
230
180
218
225
235
243
263
208
200
180
200
213
256
228
167
195
259
166
146
216
171
210
210
202
238
184
177
228
202
179
219
225
209
196
218
231
204
226
217
234
183
248
191
229
220
212
177
195
253
229
173
183
206
217
146
214
214
187
161
226
234
99
173
250
207
207
135
210
188
215
193
196
122
227
166
201
179
184
157
170
293
150
182
175
195
118
193
184
202
131
178
237
190
204
115
235
171
226
197
208
215
250
161
206
218
149
201
132
166
135
237
230
254
193
201
269
148
224
175
205
209
191
201
205
175
125
206
180
187
176
199
205
196
211
202
171
266
137
156
128
228
162
217
213
129
227
178
191
178
257
209
190
172
200
239
230
187
224
182
252
229
196
149
190
200
241
209
195
195
167
189
243
168
161
206
248
173
165
186
130
165
231
197
197
237
256
204
239
148
251
178
240
173
186
208
188
262
228
214
170
231
217
188
201
265
229
170
201
195
211
151
208
197
202
146
250
214
207
139
194
216
82
247
240
185
212
199
93
250
141
224
173
178
136
144
182
220
246
195
264
238
210
220
196
165
245
180
207
178
158
236
220
242
187
182
170
213
128
190
183
196
201
212
173
213
213
259
180
203
216
175
238
241
126
167
227
207
170
242
205
204
210
138
208
233
182
189
166
147
249
121
234
176
161
288
182
261
197
240
180
148
177
197
190
237
140
181
190
219
148
213
161
208
229
192
185
178
216
248
157
152
202
218
237
223
198
232
218
242
242
149
191
212
191
171
229
165
180
185
225
184
151
176
243
191
167
203
225
210
222
204
143
199
132
225
207
198
186
175
211
206
190
171
195
215
214
173
218
171
177
204
214
204
179
243
187
211
213
152
180
231
182
129
240
259
164
233
172
178
163
264
216
167
261
248
142
228
262
242
191
208
228
246
181
213
199
242
140
178
148
207
220
190
152
159
180
212
219
164
246
247
238
152
215
171
136
167
151
183
144
274
224
193
227
192
181
257
192
207
203
139
247
189
267
214
217
216
204
238
196
262
152
165
216
210
221
241
240
158
205
190
235
197
189
186
208
216
217
216
162
208
236
184
181
184
168
193
189
234
238
192
199
264
200
148
207
161
145
214
222
207
175
169
216
210
193
209
179
187
204
195
196
244
185
214
211
166
156
203
219
237
241
224
242
170
230
161
239
217
194
212
216
203
158
155
180
184
171
194
150
201
246
171
171
201
241
261
194
234
167
191
177
213
199
157
159
201
237
227
231
250
195
162
214
209
217
144
187
202
159
166
236
191
151
203
171
235
143
210
275
129
241
127
191
224
207
198
239
195
253
199
222
187
159
159
200
141
255
183
240
189
191
212
222
218
169
236
184
220
177
142
261
135
218
220
173
287
238
259
230
225
174
143
198
197
172
212
214
226
210
160
201
183
197
162
189
230
226
231
216
168
233
200
190
196
196
210
183
172
168
168
203
187
183
207
163
188
158
148
235
209
173
243
281
179
260
213
158
185
186
189
277
244
199
213
233
217
263
150
222
198
236
169
198
199
211
238
199
198
198
228
150
266
201
166
211
175
168
172
239
165
175
225
210
152
206
193
202
213
244
171
197
218
275
173
228
226
192
165
250
204
196
232
153
188
231
132
137
205
185
238
202
209
200
202
178
272
136
203
168
199
215
146
120
116
164
262
193
197
137
263
201
221
191
141
133
163
136
230
204
217
216
141
144
245
194
205
213
219
229
163
147
196
243
226
192
216
231
203
200
143
178
215
141
216
218
213
230
247
225
177
207
222
228
221
212
280
217
168
178
206
203
132
165
217
136
263
222
193
202
169
232
172
162
189
209
274
152
188
168
177
213
211
184
237
250
264
186
233
169
191
242
181
207
170
98
210
238
163
218
206
198
240
235
190
248
216
217
226
206
193
175
136
178
230
225
216
218
190
186
187
189
220
210
197
230
210
249
222
160
208
160
215
218
233
253
224
231
260
229
183
193
188
220
203
218
205
196
206
126
247
223
189
210
253
153
160
270
233
152
185
179
254
204
233
169
195
169
206
131
229
244
270
223
216
150
249
182
181
261
251
132
201
176
230
202
204
209
211
200
209
173
174
178
152
231
168
201
212
200
180
228
204
135
145
194
167
224
199
164
170
177
244
240
251
209
181
235
213
194
160
184
208
179
201
241
93
228
178
196
160
203
250
194
204
224
230
240
144
212
238
260
191
237
171
214
210
178
127
216
201
202
176
234
172
184
241
228
191
228
215
236
114
179
139
219
245
219
196
255
226
178
212
204
231
239
119
155
255
182
270
220
239
148
212
216
190
279
235
205
224
182
155
158
188
222
155
198
188
203
188
211
179
139
130
175
206
245
180
244
190
222
218
214
249
187
263
163
248
176
234
194
202
224
250
230
258
200
199
161
186
233
198
194
197
210
195
123
285
205
273
209
140
222
212
227
191
146
233
288
248
193
147
192
213
208
175
136
227
168
141
199
223
133
236
206
190
185
213
277
202
168
194
210
211
201
199
216
174
220
203
223
207
210
196
241
208
194
246
207
168
225
207
229
222
248
205
73
203
192
203
234
217
153
176
216
242
174
233
164
224
247
230
174
210
174
201
182
175
173
211
185
213
211
259
204
167
212
184
183
187
164
189
224
212
228
207
177
228
210
230
168
217
203
239
213
234
268
227
223
125
136
233
178
220
172
232
168
204
251
247
171
216
176
157
196
205
279
176
209
193
180
136
242
180
210
210
221
249
250
229
197
187
213
167
194
235
197
178
189
255
218
240
193
145
142
210
195
179
185
215
229
159
215
202
256
204
129
211
229
206
240
133
256
235
157
200
182
246
220
150
184
188
185
156
215
192
143
196
243
200
169
234
214
189
238
197
132
225
190
202
180
161
159
235
204
151
197
198
193
172
208
173
196
182
251
172
190
163
184
207
237
209
212
125
248
242
141
242
204
198
189
132
216
189
177
164
259
180
218
171
194
208
177
199
195
249
186
103
168
213
205
210
207
206
228
185
170
202
203
187
214
263
213
238
249
211
273
233
191
235
204
124
232
105
222
168
212
162
187
221
196
253
200
191
182
222
212
239
208
275
174
173
184
224
172
168
191
206
214
199
219
226
189
212
153
178
225
226
195
176
171
247
235
242
190
204
252
231
204
254
227
210
232
150
250
254
164
224
248
250
226
274
176
226
150
197
135
221
242
290
169
196
201
195
177
215
207
166
243
142
192
201
206
209
148
138
192
228
182
201
189
216
129
265
181
232
165
229
187
193
131
119
195
201
202
201
151
149
193
233
236
101
214
178
164
226
189
195
238
225
202
175
173
192
258
209
230
198
199
224
176
185
223
208
241
131
225
232
246
168
188
192
241
206
246
174
168
191
167
146
256
258
191
235
251
220
210
215
174
196
240
206
235
226
241
236
210
165
162
201
253
222
216
215
195
114
183
159
187
235
200
205
183
153
140
250
242
197
178
208
246
170
198
230
197
176
238
246
187
209
143
194
187
264
183
191
196
263
142
194
246
200
225
210
189
191
230
238
233
223
185
237
204
179
254
203
188
245
178
208
215
184
196
133
217
187
165
165
226
169
255
138
222
197
237
183
226
220
202
230
204
164
168
197
233
175
194
199
204
202
185
200
254
166
164
235
137
127
168
219
220
187
274
229
253
195
221
175
255
165
256
200
171
181
203
208
205
239
189
135
212
249
226
151
199
206
203
203
240
247
204
162
199
171
205
173
207
163
248
147
152
189
233
196
211
170
262
256
212
250
176
163
202
205
265
202
231
211
195
203
166
236
147
177
201
193
194
229
229
172
157
224
173
255
168
203
106
200
146
160
209
157
205
257
218
199
185
152
234
219
253
215
175
249
202
228
212
221
209
176
202
155
191
181
255
218
233
192
196
236
160
172
206
201
219
161
242
178
231
214
186
172
226
237
160
231
230
163
181
159
239
206
144
218
196
235
161
160
242
221
196
221
244
200
154
182
174
160
228
182
174
169
223
221
201
211
154
174
257
186
185
161
239
163
116
247
215
191
175
235
211
275
179
148
199
219
174
261
238
185
196
199
221
212
158
164
207
215
221
187
192
193
235
211
211
164
142
141
245
189
224
186
221
227
191
188
218
229
194
193
184
232
185
207
196
182
210
207
162
194
270
171
233
216
251
176
150
190
193
187
230
235
218
205
151
187
159
214
222
193
215
205
226
177
223
184
168
196
216
231
204
183
140
248
223
222
198
213
196
232
217
232
164
225
215
176
236
236
179
167
147
232
225
287
199
262
219
175
195
196
219
215
172
229
235
133
245
144
169
200
191
234
196
202
258
146
160
239
164
121
189
170
217
209
168
179
183
165
168
212
160
231
176
226
211
206
165
130
151
220
162
183
148
165
207
124
201
257
186
156
187
180
221
183
204
194
241
160
193
234
170
164
163
186
166
198
184
146
176
207
259
220
222
189
216
169
196
169
218
206
229
227
201
218
227
235
207
224
163
156
176
206
191
245
202
203
255
177
178
195
203
236
185
145
270
205
168
162
168
276
162
151
192
210
218
217
239
220
234
201
143
218
171
189
205
206
153
178
203
192
201
236
153
201
249
210
215
165
194
233
183
264
209
241
103
215
210
211
171
231
182
224
256
223
162
211
122
227
199
215
230
257
126
177
184
183
242
207
228
142
240
212
180
211
112
207
244
132
240
166
270
167
158
191
240
202
219
267
129
109
179
200
152
227
179
112
218
203
251
249
169
185
193
202
225
182
167
238
216
187
214
218
164
191
231
257
215
211
204
162
237
298
206
237
176
223
207
198
206
254
234
222
205
182
195
211
179
212
186
216
208
229
168
215
239
200
192
209
213
206
221
208
203
188
186
194
218
182
242
228
209
164
138
238
173
194
167
175
230
212
195
194
184
202
163
230
182
257
207
233
148
164
156
200
187
241
185
144
200
256
185
174
155
173
241
220
189
181
180
217
180
183
179
158
202
168
175
200
197
157
157
226
182
276
165
209
221
216
224
193
265
244
177
225
132
178
192
214
162
193
216
257
170
192
222
191
188
219
254
238
237
190
216
214
205
184
180
163
219
210
197
188
202
197
205
215
185
214
259
200
168
179
244
139
179
153
260
234
176
201
214
210
246
177
151
155
249
133
209
240
159
171
188
183
192
221
167
192
170
180
229
139
188
162
161
208
197
152
227
174
220
157
179
235
194
192
237
173
175
169
255
205
204
170
234
198
199
194
243
195
211
128
227
205
187
247
232
229
140
150
225
198
250
202
197
208
269
242
156
193
215
185
193
196
143
192
192
146
146
134
246
207
254
276
258
173
230
176
237
220
209
221
218
130
218
185
189
201
180
195
194
225
195
218
230
176
180
260
209
206
222
199
169
155
181
197
125
226
230
219
153
193
187
175
203
264
158
172
194
189
202
193
172
238
227
192
220
203
207
266
237
256
218
197
226
196
171
234
257
217
226
180
127
161
172
186
155
192
146
162
218
234
138
162
164
156
222
229
201
172
250
174
247
196
180
225
227
244
189
97
171
254
175
219
169
232
115
190
234
137
194
236
190
215
204
261
241
214
185
162
137
257
231
204
159
157
207
168
226
210
239
175
206
158
211
208
231
150
183
189
197
134
199
194
194
172
237
162
228
250
213
160
225
232
251
182
208
140
187
178
210
207
141
181
227
193
211
174
190
230
198
155
275
178
205
213
193
183
188
225
243
319
206
261
195
189
199
191
148
146
199
211
169
198
164
208
217
188
182
217
246
228
223
189
244
206
213
224
211
243
263
194
228
165
230
146
129
223
164
190
155
189
170
196
232
239
201
191
186
205
240
228
236
171
243
210
229
223
156
223
147
220
151
206
185
163
186
148
194
241
234
228
192
187
169
223
105
243
202
176
216
197
173
237
229
161
255
236
227
174
229
229
216
218
213
210
225
140
153
204
186
199
165
203
181
195
199
224
208
205
227
168
137
195
173
262
164
250
228
214
217
233
113
194
206
200
209
198
235
151
205
232
209
184
234
218
257
211
104
190
173
258
271
254
142
257
163
259
192
141
166
192
208
183
166
211
273
201
213
205
246
234
205
196
237
230
193
152
173
194
185
166
257
201
197
225
274
231
181
165
175
187
245
229
222
235
233
185
197
195
227
198
197
215
187
225
202
252
192
178
263
184
198
207
225
197
130
234
207
207
206
225
195
192
207
213
228
186
204
258
174
221
168
254
206
270
166
137
212
209
208
197
223
176
183
194
257
182
115
241
195
148
218
203
210
210
205
212
257
138
190
246
183
172
238
211
106
204
262
201
189
165
201
223
190
244
174
211
201
175
167
246
196
137
182
155
222
146
168
202
298
197
226
188
236
220
170
184
179
202
210
187
202
227
187
236
165
230
184
178
174
238
181
204
212
204
243
152
197
232
231
216
223
228
218
206
182
161
128
194
178
179
155
223
213
232
225
237
227
196
231
268
237
219
212
230
232
172
182
167
221
205
173
156
214
217
233
206
186
209
189
195
216
175
196
198
191
181
187
218
195
140
199
241
175
263
233
204
221
245
243
201
217
147
207
145
254
271
226
209
139
153
214
178
197
182
192
157
212
219
189
183
174
256
161
199
216
251
220
224
220
192
229
251
167
231
176
167
196
152
207
208
213
243
198
208
165
200
235
172
165
241
162
157
221
121
206
267
188
173
169
219
180
208
200
241
210
253
175
166
217
239
200
185
166
205
217
207
138
129
206
222
255
196
163
238
214
232
161
226
128
124
178
166
175
168
234
226
229
195
161
210
192
180
186
197
176
214
188
213
197
233
246
187
207
235
200
230
248
207
193
166
204
200
203
190
176
214
174
137
169
215
188
129
257
173
71
160
169
223
203
237
240
227
199
165
227
202
260
202
186
153
189
247
174
251
227
269
194
206
198
213
245
201
213
138
135
204
250
226
208
137
162
233
237
171
193
254
212
178
157
237
183
156
192
260
209
188
208
183
197
219
138
218
128
200
135
199
219
112
229
191
246
180
169
149
212
149
228
170
177
161
231
194
171
194
173
246
202
201
191
203
208
252
192
156
150
208
200
240
192
248
237
254
135
241
81
118
215
195
211
160
171
241
161
147
226
291
222
145
230
218
220
271
167
253
233
172
187
163
205
193
158
178
248
132
162
193
260
228
192
164
200
198
207
203
228
179
223
256
147
188
188
139
265
225
136
201
158
207
188
193
216
181
200
221
142
187
155
229
231
243
211
187
129
179
237
240
203
206
184
175
269
228
207
232
221
147
234
203
176
260
175
181
160
226
204
280
237
219
191
172
211
188
174
185
245
164
281
232
196
173
205
201
223
155
169
230
239
220
196
197
252
174
180
169
186
187
232
241
227
216
153
192
261
224
200
148
155
213
237
214
139
133
203
200
154
214
229
142
196
234
179
224
196
185
193
144
217
177
185
259
215
176
282
273
238
195
280
231
196
195
172
203
226
214
250
205
180
158
220
188
237
182
193
230
168
233
249
174
207
272
277
225
215
145
96
195
111
190
149
173
179
243
155
139
223
165
197
188
187
284
215
234
219
172
221
192
209
205
218
139
228
224
231
185
242
221
206
178
181
170
185
152
204
223
174
190
204
254
233
247
235
187
246
168
224
171
219
160
225
216
178
201
226
190
138
200
215
229
161
169
157
163
202
204
224
235
196
219
191
180
160
235
237
166
212
178
173
170
199
183
198
166
208
185
248
157
197
211
197
232
174
194
158
189
202
256
230
239
198
139
183
247
216
142
219
209
232
276
241
219
195
174
237
183
200
177
227
233
168
174
169
193
200
197
222
230
182
195
216
242
196
231
197
209
177
221
228
185
170
233
184
237
171
225
208
109
241
199
232
221
116
215
202
196
226
185
209
264
232
133
182
223
109
157
193
217
245
227
155
219
183
183
205
193
225
233
166
186
187
169
139
202
200
206
170
172
206
240
172
156
222
209
213
197
243
196
217
128
260
174
185
241
218
216
148
217
268
251
204
233
209
220
154
202
249
212
200
181
174
202
222
121
253
249
241
131
257
236
228
159
159
162
192
200
96
188
239
220
193
238
133
172
211
186
220
221
256
203
159
173
197
200
225
158
255
204
249
234
148
233
230
212
218
203
182
264
194
140
215
127
235
186
181
255
190
184
192
202
223
197
259
160
244
209
204
196
198
217
235
236
189
218
170
169
204
221
230
198
193
222
237
103
220
226
215
232
193
137
249
253
174
236
165
234
211
189
214
222
221
143
155
206
151
216
160
176
212
265
169
167
214
174
201
184
214
265
235
159
163
226
189
214
225
203
193
181
147
156
153
183
220
209
203
159
172
244
189
236
211
171
220
217
210
173
204
211
181
238
208
244
196
187
160
225
276
170
140
265
230
225
164
226
216
116
184
245
210
252
196
175
198
253
215
199
166
192
212
198
205
185
190
185
238
217
176
235
235
196
150
225
250
153
178
227
258
227
226
271
236
177
186
185
235
263
205
202
230
189
227
224
155
218
159
206
200
237
183
195
159
172
301
171
157
215
237
174
223
243
226
232
158
221
229
177
160
239
222
182
243
173
182
167
209
202
166
263
233
197
171
186
199
128
165
225
194
228
134
135
218
167
204
254
233
168
239
109
211
263
271
225
236
178
179
208
142
239
184
185
212
179
194
161
193
184
228
166
225
182
179
135
203
215
238
226
246
179
199
148
210
217
241
172
178
217
200
171
247
165
225
151
163
208
186
212
207
143
196
203
266
171
189
246
234
205
223
242
184
202
198
219
189
226
246
196
286
248
206
238
190
137
219
229
186
239
162
216
214
237
234
170
238
158
155
146
200
214
220
256
221
208
230
217
160
176
191
182
246
149
228
218
170
211
250
217
157
236
216
173
175
226
182
235
181
222
263
232
254
193
229
221
179
110
167
264
224
189
149
261
165
179
222
215
148
259
192
215
166
241
107
135
202
162
191
227
129
194
193
160
216
151
191
258
184
189
245
221
165
228
170
208
224
184
175
154
246
195
175
229
228
190
203
249
210
177
204
223
248
222
147
232
180
211
263
165
229
173
201
210
194
207
163
216
179
161
153
192
199
174
138
248
205
186
180
180
212
239
239
164
266
210
190
177
219
200
209
181
169
232
280
223
134
188
256
234
112
192
177
196
182
191
153
240
208
249
221
194
200
219
184
175
167
187
193
168
205
165
182
198
207
241
189
197
176
261
103
205
251
207
232
130
196
212
189
232
199
176
154
201
211
209
211
204
172
225
150
187
177
175
255
182
195
211
197
175
193
185
179
191
190
193
239
220
171
195
190
219
167
246
187
174
243
185
246
234
172
205
211
237
203
208
210
205
169
121
178
226
194
250
173
236
258
193
169
184
176
208
193
204
214
177
171
192
237
133
213
220
233
217
190
193
179
142
233
206
196
150
170
218
178
212
188
204
266
231
185
221
217
203
180
246
238
198
175
188
170
208
188
178
185
144
231
203
156
276
191
207
209
216
253
193
195
206
181
207
188
235
187
161
196
226
241
220
237
212
188
207
137
214
175
191
171
167
246
225
206
173
236
141
192
261
184
179
218
167
178
190
151
195
256
209
236
171
218
151
244
221
207
196
110
166
216
205
111
227
235
162
163
195
238
237
202
184
130
227
212
221
202
233
237
204
205
194
172
254
220
131
193
193
211
168
192
179
207
184
214
181
204
209
175
200
196
225
211
197
224
217
266
140
234
217
224
242
174
255
257
169
137
220
205
209
200
169
214
261
174
175
226
168
140
213
208
193
229
227
168
196
229
120
196
201
168
176
257
187
171
274
239
221
246
185
200
241
191
209
205
180
231
155
188
147
237
214
222
189
224
197
184
151
200
195
165
171
146
203
182
179
229
159
208
168
169
114
197
138
171
142
275
226
188
236
224
234
192
161
225
189
232
211
252
145
176
145
221
157
222
189
255
134
160
196
142
184
154
234
216
244
136
177
196
229
187
185
98
255
211
229
186
242
230
211
240
259
211
203
215
217
199
150
243
255
250
290
226
142
216
143
199
175
165
200
142
173
246
177
187
223
224
203
210
248
205
174
198
179
217
161
242
145
203
212
243
183
188
227
227
174
187
199
168
216
227
217
260
214
217
214
181
197
216
147
161
236
226
97
217
209
202
200
132
189
191
204
288
174
209
219
177
161
231
207
235
267
229
168
197
206
144
194
205
246
224
242
194
231
186
164
199
195
216
174
205
226
189
220
159
223
214
199
216
187
214
187
109
197
243
158
188
190
203
231
160
200
238
209
163
193
183
224
222
139
201
151
245
239
158
237
242
100
207
190
221
159
171
196
230
209
219
200
153
241
200
205
167
240
190
179
202
240
203
248
140
185
236
185
222
258
190
234
190
181
199
247
194
197
243
202
254
168
185
231
248
183
201
217
186
195
187
218
184
214
166
246
218
232
207
195
213
208
236
238
233
222
214
206
170
245
159
188
161
173
229
192
141
249
174
221
237
163
206
164
174
244
232
245
182
215
207
208
159
167
155
203
164
113
199
231
205
231
180
185
225
214
223
215
184
158
175
256
205
253
248
187
144
174
204
250
280
215
180
165
169
228
190
174
195
131
149
212
184
184
248
210
194
154
265
187
197
234
234
255
246
137
230
167
228
187
179
168
174
165
218
208
250
158
193
253
225
176
156
216
234
223
189
173
154
149
183
196
227
274
151
233
196
218
171
202
277
239
198
214
210
229
209
218
129
208
133
230
251
153
194
193
215
177
235
185
256
169
204
180
156
154
191
187
217
215
244
214
204
177
172
213
207
222
201
194
212
221
176
278
229
232
194
190
219
202
198
221
216
108
271
241
207
180
216
161
199
216
211
244
244
248
241
219
225
189
242
200
267
164
233
216
206
215
200
225
190
243
175
244
230
172
174
186
259
137
126
108
255
231
234
225
198
215
237
123
204
172
197
210
179
218
137
208
93
155
215
233
134
185
194
261
191
193
180
200
177
159
221
161
178
245
158
207
222
205
213
211
248
136
172
182
212
215
187
229
168
203
185
182
241
247
156
151
210
237
188
204
223
229
238
225
197
197
276
270
222
214
166
188
179
207
182
218
146
199
153
230
220
136
194
122
192
148
209
248
195
235
153
191
197
183
130
169
177
136
131
249
217
260
157
227
245
263
173
168
177
234
230
237
220
123
160
233
218
193
211
241
162
144
245
228
221
225
202
218
241
211
137
192
224
182
242
257
187
249
201
181
232
111
220
247
161
231
224
145
216
147
213
217
213
160
227
258
171
156
230
171
201
213
155
256
278
179
211
128
157
227
235
178
192
189
207
212
174
209
206
175
241
238
193
232
159
188
167
224
240
203
220
240
211
213
163
183
167
240
201
233
240
220
244
216
164
239
152
200
174
217
240
200
208
171
245
196
203
158
128
204
187
224
209
248
231
196
223
270
213
217
212
245
154
227
178
187
185
237
184
247
200
177
244
228
217
140
192
231
143
226
231
223
217
235
202
174
178
249
212
258
215
244
173
210
191
198
197
194
236
144
204
223
210
251
246
163
239
278
228
217
194
182
227
234
249
193
191
240
247
169
193
230
212
137
108
267
217
246
240
222
186
218
143
110
177
273
237
184
248
225
228
273
238
208
209
263
161
219
248
200
228
206
229
219
172
185
201
233
202
286
106
210
198
159
279
218
183
142
151
199
195
188
169
212
177
194
154
266
196
189
171
225
209
209
209
153
188
204
151
235
195
214
195
188
238
196
209
232
197
235
245
189
216
251
193
146
237
188
176
207
256
188
160
201
146
184
158
170
181
232
180
164
192
249
156
247
215
209
188
277
209
182
131
223
155
173
225
226
173
207
222
168
209
197
202
204
188
267
204
211
184
202
204
180
136
147
213
133
169
173
184
204
145
237
226
211
102
119
190
179
146
203
229
196
191
193
256
173
209
175
206
197
135
165
194
232
189
214
175
223
161
217
218
168
198
212
236
213
204
156
200
212
184
166
182
163
188
155
142
253
224
172
191
218
233
156
211
129
224
196
242
195
201
183
262
152
192
237
223
240
242
168
214
260
200
180
158
204
208
167
164
277
185
177
122
250
199
174
174
209
204
202
201
224
209
205
163
185
209
148
215
191
233
141
231
226
169
159
204
215
178
209
243
187
192
210
238
242
232
155
184
181
172
200
131
199
156
182
247
195
203
185
197
238
188
199
214
215
209
223
202
200
209
200
145
146
245
210
155
161
224
176
264
192
200
212
162
169
170
197
193
224
213
199
198
193
194
194
206
220
141
172
182
200
203
222
221
196
182
162
172
221
201
177
213
215
200
207
192
204
168
233
223
179
229
165
203
167
219
160
178
143
189
225
121
202
222
243
142
200
219
175
125
182
162
230
182
192
188
142
128
244
232
229
191
162
275
208
270
204
143
228
232
216
166
140
176
214
202
221
227
193
204
228
207
223
177
214
236
199
167
158
175
252
278
195
224
221
194
232
181
244
162
187
188
208
169
232
180
195
146
234
159
237
163
251
219
211
200
119
221
206
210
226
131
213
217
249
161
188
242
195
153
210
191
209
137
260
185
206
202
204
212
169
202
234
216
238
266
211
155
211
244
209
212
174
182
183
188
259
180
206
138
199
225
215
243
214
191
166
214
267
202
152
217
224
181
273
208
194
246
186
150
188
132
254
205
162
194
173
224
262
173
224
239
174
187
227
233
242
207
121
219
123
191
251
186
183
170
139
214
196
183
217
180
193
238
184
257
190
218
188
208
204
151
202
218
220
199
201
258
126
233
201
240
137
238
171
185
201
168
237
202
173
212
180
170
156
181
149
225
260
239
219
236
157
259
226
254
217
186
221
183
154
183
216
188
201
194
160
222
194
298
251
176
182
252
226
230
222
217
207
204
242
194
173
152
177
251
175
209
306
241
200
203
193
244
223
165
220
203
185
173
207
196
148
183
220
215
194
174
180
175
233
205
209
198
162
221
211
258
238
196
214
206
223
194
211
96
165
201
195
181
256
206
238
218
218
201
247
194
167
239
127
252
219
145
185
263
244
279
198
247
212
208
215
214
195
208
204
227
162
222
205
208
267
186
191
174
234
223
167
198
205
213
244
195
157
185
222
249
225
199
176
175
183
161
235
187
214
236
182
181
172
167
209
228
228
232
253
207
188
202
197
167
196
198
269
189
180
223
224
183
213
215
208
203
184
230
226
193
173
221
194
214
205
182
199
158
189
201
217
198
182
205
150
191
260
207
176
194
252
206
237
238
211
196
160
203
186
135
158
218
157
134
159
211
185
170
172
205
236
172
243
179
207
202
205
199
174
256
203
200
259
161
183
228
182
258
193
191
173
183
240
154
265
240
159
212
252
199
213
156
187
154
235
247
264
113
192
224
176
212
219
180
159
137
205
152
215
191
259
206
166
189
179
161
214
221
158
164
164
209
188
219
246
239
201
178
214
168
226
216
191
172
246
240
257
183
172
127
213
231
210
219
172
246
185
260
178
135
210
168
135
208
243
188
219
180
260
236
180
241
200
125
235
212
198
157
187
167
197
145
230
187
235
204
183
239
190
198
198
172
202
210
158
198
203
277
212
160
206
200
182
207
185
168
193
237
238
208
183
229
154
174
207
234
230
210
219
213
171
201
151
185
207
216
208
236
214
198
195
189
179
209
183
239
176
171
191
238
178
167
180
256
188
193
195
146
190
178
186
201
188
240
198
192
257
198
192
202
227
241
195
213
123
211
241
225
152
186
231
225
228
158
224
229
245
216
222
244
194
147
140
178
211
158
172
225
239
246
177
91
216
231
163
223
212
222
182
183
179
205
258
243
248
220
196
170
276
221
141
180
207
246
243
175
254
159
226
234
177
181
175
214
243
185
181
170
205
192
244
167
221
237
205
215
193
179
204
219
215
237
203
235
192
258
173
236
247
203
234
181
214
170
215
233
183
198
275
184
202
177
224
213
257
142
187
163
189
150
243
239
183
202
222
211
175
184
270
190
205
201
214
187
176
142
174
226
157
187
189
198
210
144
196
228
239
163
224
211
134
236
200
230
237
212
222
233
181
237
186
237
213
240
253
194
195
222
249
196
165
198
109
219
202
272
227
235
192
182
216
158
176
159
179
164
194
184
204
182
146
230
245
239
150
195
252
160
194
172
196
159
234
166
225
277
219
261
188
196
212
214
191
212
120
195
158
247
209
220
197
231
207
165
176
217
172
211
236
201
176
139
146
280
218
198
262
230
206
213
204
271
221
207
206
222
208
251
176
218
242
206
190
210
193
212
237
194
169
234
234
148
216
163
190
235
250
190
213
225
164
162
216
154
196
237
218
222
182
188
262
214
142
223
194
214
244
250
170
244
234
143
227
166
214
238
203
217
178
188
174
212
214
310
238
151
142
233
172
244
146
227
227
143
168
257
175
259
175
197
154
212
197
205
202
185
200
242
218
196
191
149
191
201
257
121
211
203
181
247
159
204
201
190
156
249
206
283
225
199
154
183
176
219
245
152
156
177
114
192
185
185
213
227
236
219
246
275
195
233
211
177
219
170
240
118
245
203
206
226
271
220
209
179
141
190
236
216
177
212
190
215
215
182
141
180
138
175
216
229
178
195
254
194
254
172
198
205
211
206
174
144
253
221
221
210
183
195
187
240
136
178
161
209
182
177
158
237
260
222
263
227
206
218
213
211
242
267
165
212
165
194
232
173
185
217
190
111
211
171
214
215
196
196
176
248
180
151
246
250
160
196
195
172
139
218
201
205
168
158
193
199
233
241
225
145
191
226
242
253
205
189
203
220
129
239
182
211
201
165
182
228
216
249
216
236
193
194
204
207
228
230
179
184
173
154
202
189
253
154
192
216
173
204
197
159
172
142
220
191
238
197
195
182
164
236
190
205
223
180
212
192
145
158
187
235
168
193
240
180
211
187
220
231
210
199
132
202
235
154
234
191
222
212
213
225
205
170
215
218
203
161
179
217
239
231
227
231
211
184
132
199
211
184
227
246
218
176
234
185
218
237
172
232
169
161
268
164
203
206
192
156
199
221
257
235
171
166
224
213
204
172
211
227
168
178
159
185
259
212
187
204
180
198
225
180
191
188
253
226
262
155
199
183
207
201
221
206
260
182
216
176
192
134
171
188
256
212
183
245
255
146
249
224
200
190
208
189
199
191
271
179
174
204
198
192
228
229
169
164
105
182
233
223
131
163
261
220
184
141
211
222
227
181
251
245
188
218
184
164
283
251
154
200
210
211
153
265
163
197
174
248
178
227
156
202
249
177
211
208
157
136
189
224
168
176
178
220
187
250
203
217
258
166
135
194
205
162
176
187
284
156
226
212
214
190
175
152
190
181
200
251
148
218
219
262
228
210
266
181
147
171
214
190
207
220
184
182
239
202
154
195
210
149
208
161
185
213
165
182
168
160
189
150
232
207
228
213
232
179
211
207
205
241
202
142
174
187
243
249
150
166
188
198
152
221
227
165
189
226
216
185
231
198
204
218
200
212
185
206
199
220
191
226
188
254
173
239
262
149
215
219
202
176
269
107
204
241
167
201
188
203
131
153
181
203
228
179
163
189
172
220
170
122
146
167
177
197
213
240
176
187
215
241
273
201
198
232
200
192
245
187
189
131
239
238
248
198
204
260
237
202
224
216
200
178
211
230
207
261
192
132
156
159
158
192
178
188
243
196
177
238
243
172
190
148
252
291
198
232
262
211
221
229
171
188
256
245
256
198
255
213
191
193
232
221
178
168
213
190
187
164
184
212
229
182
216
241
200
211
152
177
173
172
310
213
170
223
231
132
210
149
205
200
183
170
198
210
199
192
256
189
224
175
223
206
204
201
159
167
179
216
233
173
190
237
148
256
214
182
194
221
187
207
177
231
169
185
194
246
213
253
193
201
246
170
213
233
187
229
202
224
172
193
253
205
243
215
241
135
191
214
195
168
202
215
229
166
191
191
200
232
220
252
156
191
232
129
235
244
213
215
196
215
170
200
233
202
221
246
249
163
145
180
190
198
194
216
162
188
258
205
277
150
205
218
211
231
183
169
174
179
118
188
211
195
223
200
182
208
214
182
230
202
249
195
223
232
209
230
162
198
198
174
236
162
182
272
203
196
199
195
167
212
166
198
249
251
176
182
161
189
179
210
202
169
206
183
241
180
173
153
207
179
257
200
177
238
184
163
206
219
190
225
189
222
192
177
179
178
209
235
255
181
267
197
239
187
240
227
179
202
268
159
184
215
212
196
201
188
225
201
226
149
171
218
208
213
196
238
178
221
223
212
111
209
197
144
174
129
215
262
223
204
234
171
164
206
150
230
143
198
215
255
220
231
286
211
188
132
117
203
176
274
203
254
190
205
259
170
194
148
218
204
213
254
224
185
152
222
156
179
177
159
164
212
183
168
209
144
156
237
172
215
217
153
259
177
154
244
179
214
251
202
232
207
174
184
227
148
254
172
197
237
145
213
155
256
214
184
198
222
234
209
229
225
216
196
211
147
219
207
179
208
226
168
171
233
225
203
194
219
236
198
233
160
215
199
259
186
189
231
149
247
188
148
128
204
150
215
190
200
202
220
192
165
167
253
160
237
218
206
224
169
225
149
178
209
220
224
234
212
215
194
155
188
192
181
176
216
215
218
190
215
168
214
230
198
203
205
189
163
226
179
200
191
202
254
216
181
202
145
130
140
233
137
245
215
185
205
167
195
254
238
241
223
210
141
138
182
227
204
195
148
181
213
199
208
203
158
218
188
194
160
227
234
202
228
229
134
202
170
187
207
173
209
235
209
223
209
243
224
222
206
98
233
179
185
181
152
234
251
228
213
107
253
181
161
210
236
209
169
198
189
213
222
227
261
184
208
175
224
223
208
181
182
184
194
224
147
232
227
182
211
220
142
196
234
208
236
173
190
207
208
236
161
187
191
222
130
237
185
225
180
180
172
152
203
182
229
225
220
159
170
216
227
193
201
201
192
267
227
222
189
163
188
216
210
186
286
181
185
150
186
170
231
137
187
184
192
215
188
223
242
153
176
205
187
188
218
199
196
217
206
252
110
260
231
157
211
236
190
212
193
267
188
190
188
237
270
163
186
224
193
220
196
211
262
199
191
199
160
192
196
273
233
206
196
197
207
158
187
148
191
197
201
193
212
242
190
145
193
197
177
110
224
149
206
214
203
225
165
204
227
164
227
124
232
157
165
77
191
157
217
186
189
206
136
241
226
275
109
266
175
205
252
174
253
198
198
219
244
178
158
195
142
240
193
158
259
217
225
159
192
266
169
208
211
244
197
252
205
196
191
187
200
196
148
249
220
230
166
234
201
204
223
259
229
230
150
207
198
174
205
196
255
208
199
225
199
191
226
225
193
140
190
192
202
270
153
216
118
189
165
180
252
205
208
219
199
171
221
164
146
272
193
207
167
202
226
237
131
168
189
233
196
175
215
255
217
228
209
187
229
171
202
180
225
147
189
232
246
196
212
160
183
150
127
128
111
236
165
204
154
147
248
204
222
223
181
209
176
208
198
163
193
199
139
266
199
104
212
178
199
197
194
204
154
229
159
203
160
213
204
224
227
211
242
244
206
160
170
184
200
145
197
172
176
232
185
176
153
151
215
129
261
263
234
227
173
206
190
142
225
219
229
194
249
182
239
217
215
217
185
179
168
198
189
258
242
241
175
107
199
220
184
176
282
229
221
192
186
184
232
213
186
243
205
204
178
226
204
256
216
205
202
224
164
258
209
212
188
130
236
229
263
223
237
250
166
195
232
223
268
204
162
235
134
171
206
208
122
222
158
190
199
181
275
148
194
200
107
186
229
231
160
214
280
206
178
188
177
195
163
207
182
233
137
221
251
229
236
247
220
153
155
258
203
141
154
195
154
272
200
243
235
216
216
246
203
182
185
236
174
94
173
162
189
144
183
277
211
191
198
150
224
251
201
255
200
170
221
191
128
232
267
181
223
191
216
243
241
226
134
271
196
196
170
173
173
159
181
278
187
190
196
165
124
224
199
210
194
202
218
174
127
160
165
169
147
228
289
181
194
143
159
229
185
172
190
191
221
226
207
250
183
252
222
216
208
274
164
224
153
273
187
184
159
218
221
184
181
220
170
238
154
237
183
241
198
108
166
201
128
222
241
166
185
220
227
152
172
180
201
204
253
197
227
247
171
226
236
199
170
157
188
152
232
206
201
205
172
180
288
203
228
239
235
191
209
223
137
200
210
147
190
203
210
203
180
198
176
224
165
212
236
232
252
133
183
223
190
232
179
183
210
224
183
217
176
246
180
284
233
222
221
175
240
193
198
209
196
279
174
219
232
209
138
204
213
185
219
185
193
143
260
210
147
208
183
171
206
201
185
174
187
215
218
167
253
197
126
192
189
203
185
234
176
213
231
222
234
229
167
220
150
198
261
205
114
223
151
220
239
146
232
233
225
200
202
245
254
280
195
147
197
214
158
179
166
173
149
147
247
209
189
246
156
195
234
163
212
219
243
203
183
193
234
223
207
206
192
233
187
208
210
164
179
201
239
195
228
229
236
223
244
163
172
165
135
202
153
163
150
222
208
193
183
188
229
219
262
195
230
195
242
175
163
199
236
121
263
185
159
251
183
180
197
212
175
196
181
200
139
234
242
252
174
153
213
154
292
175
189
243
163
277
144
228
156
198
227
146
182
184
201
189
245
169
185
276
253
214
171
184
129
146
182
166
201
212
213
262
150
187
187
153
259
192
169
219
209
181
221
199
184
267
227
207
170
192
207
228
219
147
140
206
197
157
247
183
203
209
263
191
118
161
210
171
221
199
221
166
217
236
228
213
199
241
197
250
209
265
235
211
192
166
180
184
182
129
163
235
201
214
203
156
180
179
226
226
229
179
207
180
145
243
219
177
248
189
210
196
176
165
216
233
206
129
218
243
187
186
209
161
189
216
212
229
156
162
194
111
186
231
212
255
231
155
149
204
219
203
215
191
275
215
255
199
233
246
207
195
200
207
193
181
155
242
262
207
136
200
217
147
207
176
224
156
202
284
187
172
155
253
159
259
179
146
236
159
156
190
119
196
180
198
113
171
230
194
174
157
229
189
195
240
269
211
225
206
211
168
206
240
244
258
141
182
240
211
180
203
224
279
238
252
203
197
178
237
190
181
189
191
205
225
241
248
193
175
234
208
221
191
199
225
262
213
229
221
232
158
201
186
239
219
229
160
169
256
229
260
203
190
215
208
130
185
243
187
186
244
192
146
152
205
173
106
238
242
173
186
160
240
217
207
188
265
180
200
280
241
210
223
254
189
210
224
189
208
222
178
183
124
210
140
178
204
223
206
158
182
277
194
175
220
247
213
228
200
222
176
188
174
213
242
216
236
142
175
177
230
185
210
201
184
210
194
193
263
199
231
187
175
196
238
182
266
191
221
229
172
176
181
210
147
215
149
174
258
179
173
211
222
264
197
171
143
187
249
281
251
181
223
170
188
188
128
181
184
218
167
258
164
208
199
220
142
240
255
166
185
177
265
215
174
168
201
199
210
148
222
244
174
238
135
199
261
183
169
221
206
160
197
166
206
188
189
212
185
182
212
200
141
242
229
208
247
167
173
238
203
168
174
153
183
150
219
217
145
251
171
177
189
216
202
235
203
231
200
161
201
232
239
139
183
221
236
248
197
138
159
151
212
185
158
201
178
156
228
221
161
227
196
237
247
183
152
201
261
210
132
217
205
166
167
241
91
264
176
200
184
253
218
186
158
207
242
213
178
183
166
215
186
204
169
195
212
192
191
189
191
223
253
216
212
222
181
236
262
161
190
213
205
164
198
172
235
132
212
218
233
151
188
173
210
171
200
216
202
192
138
189
201
228
236
200
240
185
234
141
206
234
169
228
200
215
218
174
199
276
209
240
204
185
179
187
205
241
197
207
243
217
131
181
211
261
223
203
211
140
249
189
230
228
183
212
213
230
184
193
215
254
233
237
223
184
163
187
155
157
177
137
230
267
181
152
218
182
194
194
209
159
216
215
229
245
161
223
230
235
196
189
190
244
228
228
215
241
153
209
187
191
214
156
202
148
252
242
244
174
244
166
163
182
219
227
193
240
176
217
204
167
196
207
199
256
163
211
164
244
229
217
171
221
209
138
197
193
191
227
142
172
165
247
216
204
162
209
213
221
178
172
148
251
211
194
106
243
198
188
185
282
183
197
174
219
185
224
213
245
207
259
273
123
186
245
195
257
213
206
254
204
181
227
269
117
157
219
204
246
206
213
176
228
141
244
145
121
171
247
243
117
209
208
193
260
231
247
233
158
200
155
212
217
217
254
166
174
198
198
217
205
155
225
156
225
185
167
128
253
205
257
144
173
206
266
210
204
161
159
147
156
242
197
219
214
232
145
211
185
220
144
132
232
185
142
144
235
185
205
214
209
194
186
234
146
161
203
225
149
194
264
223
158
164
206
206
207
237
183
234
215
218
244
164
251
278
162
215
153
146
191
193
194
226
223
166
168
196
229
197
220
167
207
194
154
153
255
209
184
166
176
176
266
191
237
216
204
217
242
205
230
155
158
174
184
219
233
186
164
208
237
199
209
233
258
203
198
224
250
175
215
122
203
194
190
177
235
211
185
141
221
223
177
231
197
235
246
195
75
186
226
193
203
129
113
170
223
168
218
230
215
248
207
190
240
182
204
190
200
209
180
265
245
164
218
219
203
186
206
207
170
154
191
147
206
196
171
174
202
223
159
207
218
179
278
240
250
213
208
220
152
225
204
242
177
211
195
225
189
121
248
195
182
202
211
165
175
239
204
208
210
230
238
171
197
196
207
202
210
257
236
228
241
199
199
186
229
159
195
216
138
187
169
201
235
253
170
195
206
194
143
179
196
165
181
239
202
227
192
216
200
168
242
132
253
239
200
168
233
218
237
259
209
214
196
175
246
264
152
206
196
265
202
185
239
215
252
235
190
198
203
233
203
214
137
179
212
160
218
228
204
203
263
160
170
234
259
151
153
151
212
200
144
206
175
172
216
175
155
230
219
211
217
210
215
171
165
212
231
190
195
147
220
232
128
116
205
258
197
180
190
249
164
191
232
195
241
216
210
231
246
180
178
191
210
213
186
179
219
187
181
165
273
198
231
249
261
293
183
198
241
178
198
232
242
206
107
185
203
235
143
186
197
183
160
212
262
248
199
228
244
207
200
188
284
207
220
189
185
216
248
267
226
223
226
231
157
147
139
108
191
192
249
181
180
231
202
224
220
135
170
227
199
216
222
214
209
199
159
174
235
218
169
166
214
179
180
221
251
151
184
147
195
207
192
179
140
215
198
159
227
217
239
226
200
207
157
233
225
216
217
191
158
155
260
235
159
172
221
219
187
158
201
251
226
136
197
148
162
205
206
242
202
204
159
199
236
197
207
187
149
145
250
192
224
203
237
231
191
209
227
209
188
195
205
174
209
163
207
180
214
199
180
209
254
217
217
174
174
237
233
228
230
230
185
182
182
242
164
167
218
183
170
262
220
193
206
200
219
208
224
208
156
209
243
147
191
163
222
221
217
182
157
155
229
185
221
218
190
184
195
184
196
242
188
169
270
279
163
179
195
179
165
167
165
225
173
250
234
185
263
193
230
247
179
243
152
132
207
194
115
185
182
239
254
163
159
208
251
203
246
171
189
228
188
226
265
161
216
185
255
190
219
169
201
170
241
115
224
222
187
187
228
243
129
215
200
169
159
116
177
157
190
231
199
173
139
214
204
178
220
230
255
186
146
209
195
203
258
156
150
159
191
204
237
177
201
232
221
211
242
200
199
138
226
178
199
167
180
165
253
165
247
195
226
177
212
244
197
218
170
229
227
211
210
183
195
190
217
171
218
244
167
150
172
198
261
237
168
211
183
178
187
203
217
204
244
244
183
159
93
174
214
239
165
188
167
235
209
230
203
206
214
146
257
166
170
186
236
205
149
147
247
197
169
253
209
177
175
130
224
123
172
179
203
203
188
181
166
186
227
118
202
223
246
170
217
172
191
169
210
175
218
219
260
165
223
200
201
256
202
237
216
188
170
217
261
198
150
204
215
225
215
214
203
225
213
184
211
186
228
195
186
213
242
182
224
210
207
188
258
204
136
135
246
279
279
214
235
170
254
169
215
186
197
171
188
233
203
263
251
221
194
194
189
197
157
228
170
238
180
180
264
190
259
219
185
248
190
145
221
274
204
271
181
214
195
185
228
182
178
183
230
244
235
167
232
161
194
125
196
166
215
149
144
246
187
225
196
191
234
165
234
167
222
216
178
201
203
225
220
204
248
251
133
173
172
195
161
140
196
186
238
176
245
228
176
207
170
172
204
241
252
197
139
201
173
192
149
221
246
187
204
176
210
212
160
180
256
194
172
189
273
227
225
210
186
212
190
224
194
160
202
166
196
229
261
261
171
164
202
222
214
110
245
162
154
160
176
222
242
153
274
196
219
276
216
215
208
151
176
241
225
226
232
217
184
225
196
214
246
184
190
248
152
199
205
190
160
163
221
238
154
182
210
138
194
189
172
195
138
196
212
232
168
193
151
138
204
202
164
179
262
225
147
183
260
237
235
191
232
134
220
240
181
199
187
227
181
213
236
198
231
223
115
167
173
262
241
207
154
183
177
251
284
229
171
204
215
218
226
192
230
260
254
246
198
217
203
248
188
238
180
202
162
228
222
203
228
200
185
179
194
203
221
205
256
200
211
217
235
165
223
231
151
239
203
200
245
220
203
210
176
184
224
216
215
210
172
222
188
188
212
165
120
226
172
241
222
182
232
208
260
187
180
242
155
223
209
140
245
197
142
230
202
151
205
191
232
198
171
208
207
223
222
194
136
235
228
194
151
238
198
201
213
237
191
189
132
135
205
189
200
192
132
181
201
229
221
240
173
191
192
184
141
174
247
225
194
278
165
156
228
204
200
175
220
209
232
172
166
177
152
168
214
170
177
225
199
166
214
192
194
246
226
254
144
161
207
229
248
189
215
190
222
211
210
165
153
183
214
188
172
213
219
227
169
183
175
245
174
122
184
153
233
203
209
216
252
189
184
180
246
276
254
201
274
167
182
189
147
237
170
199
226
214
171
227
244
214
209
206
212
248
184
195
237
210
187
217
206
159
230
255
222
144
205
226
165
224
179
178
198
157
225
206
114
226
231
211
193
145
273
181
255
226
155
188
224
198
201
194
171
178
191
203
186
202
187
218
223
243
167
222
223
197
145
180
231
183
164
254
192
197
183
194
175
142
210
164
281
206
178
198
129
194
165
174
266
198
184
170
232
203
205
199
210
231
248
240
223
215
166
182
159
250
211
136
182
151
251
256
222
197
197
185
229
174
198
129
206
197
211
243
173
208
116
224
202
197
200
232
202
196
176
223
245
193
252
249
198
239
221
177
153
153
233
245
168
180
153
187
234
221
194
220
176
188
241
187
223
166
268
215
257
210
201
187
215
155
198
219
224
134
264
172
216
201
192
194
231
200
192
162
250
217
229
180
189
167
145
229
195
211
217
191
216
245
194
163
165
245
221
181
220
179
215
238
223
267
190
219
186
179
212
220
176
142
214
219
210
194
194
235
204
196
192
205
244
188
121
196
204
163
145
198
234
174
170
261
204
124
219
268
212
208
257
216
205
183
221
195
214
165
220
152
232
188
154
231
169
200
166
224
173
200
220
240
166
229
210
225
161
241
145
159
189
221
168
198
166
191
264
189
208
144
253
219
182
162
186
248
150
188
200
192
172
204
217
225
221
101
192
211
264
206
245
166
251
160
202
220
227
100
266
215
224
227
222
241
204
233
234
187
219
220
264
197
229
219
211
164
172
205
213
173
251
215
215
178
181
234
210
165
245
201
202
170
171
219
190
179
176
245
219
239
210
270
186
186
213
199
182
276
232
267
189
138
161
211
168
243
226
241
151
188
127
182
220
187
202
175
200
193
235
222
205
237
200
220
244
208
223
166
164
195
164
194
251
235
228
214
254
131
111
218
200
222
241
222
152
284
223
170
185
130
264
215
227
227
216
183
132
222
169
170
213
172
198
153
132
264
183
191
220
254
206
180
220
194
173
214
202
158
203
186
186
235
179
228
197
141
215
256
264
143
195
167
234
228
196
243
194
220
230
220
181
230
171
171
204
213
191
189
208
172
196
229
264
237
230
265
208
229
235
203
194
234
169
207
196
197
216
209
231
154
140
219
183
159
209
239
243
204
193
210
202
165
177
232
190
200
234
252
144
223
183
170
202
188
222
242
183
246
227
174
179
224
252
238
204
228
224
167
222
150
220
168
207
113
255
236
247
233
202
165
272
153
234
175
182
209
234
120
219
164
189
169
171
203
206
196
173
166
197
224
209
221
198
151
235
134
117
256
246
155
195
248
177
153
192
212
204
164
196
174
190
173
213
222
143
157
135
203
170
185
216
226
180
204
239
132
181
228
152
168
197
224
177
225
255
222
124
154
165
192
226
174
186
134
187
236
148
190
186
186
173
142
148
141
139
148
223
195
180
250
242
192
204
207
126
210
266
260
237
203
217
192
198
224
166
198
184
196
205
147
209
211
156
230
240
147
233
238
233
210
177
169
113
190
232
198
256
221
226
276
152
170
236
212
229
205
176
178
175
189
168
150
257
184
198
222
214
101
201
198
263
186
203
158
134
183
262
187
226
176
148
154
172
205
207
239
191
186
167
178
251
174
204
166
188
137
252
257
179
209
224
190
211
247
134
205
248
194
146
155
162
162
163
229
199
143
209
132
222
180
156
201
224
205
193
189
218
188
176
181
228
190
292
193
220
203
184
188
256
237
211
214
215
208
193
194
216
222
180
225
163
185
124
214
223
239
209
246
283
190
185
170
216
201
215
174
159
200
228
232
111
173
159
190
251
201
197
196
242
225
167
197
267
188
144
182
120
262
205
221
177
225
191
143
144
258
205
229
142
172
144
211
184
168
242
209
220
173
193
168
215
175
189
230
187
211
213
167
166
177
148
239
275
187
178
224
192
204
181
206
216
206
257
248
188
172
229
202
145
202
171
199
238
248
158
149
162
181
211
177
207
204
175
207
250
100
196
215
133
166
166
188
215
143
234
242
174
198
206
199
195
147
243
240
190
230
190
183
229
166
152
223
241
200
158
214
175
170
211
194
208
190
166
254
236
215
228
230
193
157
253
197
214
200
179
253
239
135
212
211
180
194
249
215
132
188
266
213
162
168
223
188
221
246
125
197
213
221
192
224
193
127
253
181
193
206
186
203
184
243
195
208
223
161
202
205
145
213
123
211
185
192
229
241
205
199
214
204
182
279
226
186
200
182
261
141
189
208
187
186
144
182
187
176
141
204
184
223
191
220
142
180
186
229
248
256
161
228
209
254
200
169
116
243
235
238
195
186
137
199
183
179
198
184
205
173
208
203
196
188
178
203
190
244
165
258
183
233
246
146
228
201
214
198
225
222
182
197
243
219
210
162
178
223
199
144
184
184
219
197
208
174
128
176
226
157
228
223
136
187
162
198
250
185
166
210
210
181
220
213
198
222
167
116
210
158
241
164
183
134
235
197
146
157
223
223
177
191
193
194
191
174
168
229
193
182
274
225
212
228
280
204
173
193
202
172
214
170
213
214
226
185
220
196
215
117
239
219
205
232
238
168
178
222
194
245
255
224
238
201
216
207
177
156
242
182
218
169
224
225
184
200
173
206
232
275
243
220
201
220
179
209
208
187
246
242
247
211
158
200
240
232
203
222
190
192
223
207
251
186
238
186
223
191
179
239
204
206
202
204
244
193
217
166
247
185
212
251
191
195
234
231
171
185
143
247
193
218
221
179
157
186
215
182
211
163
186
227
260
211
241
199
134
239
225
207
226
244
217
193
164
173
249
199
264
221
200
253
242
205
150
216
148
193
173
209
226
224
207
181
237
208
222
187
209
164
183
172
206
201
168
141
222
126
180
140
255
172
223
219
159
179
249
177
238
175
198
206
251
206
206
226
235
187
196
221
175
203
185
227
222
230
221
207
221
192
202
216
235
225
205
212
154
186
184
158
207
221
190
185
171
166
193
226
161
234
222
216
168
193
223
200
225
173
256
229
196
244
261
253
234
243
237
248
196
240
198
222
187
257
214
167
185
191
197
162
238
216
116
231
209
180
250
270
217
165
244
202
207
194
199
116
214
156
202
170
176
262
196
198
213
149
231
137
236
230
245
226
203
239
220
203
221
203
205
170
196
175
166
213
198
214
220
233
200
182
162
235
183
203
192
144
217
174
219
222
226
162
244
245
193
211
199
201
213
159
166
208
182
173
152
203
186
220
224
207
233
206
200
193
218
226
200
201
197
253
142
135
161
191
204
169
230
196
260
213
161
215
178
224
187
255
154
234
128
239
181
220
239
155
199
183
139
204
151
165
186
216
250
144
193
186
208
209
215
190
247
159
174
192
187
210
192
145
184
196
225
149
213
237
230
153
220
194
196
207
166
149
163
217
220
201
239
167
250
240
180
255
215
140
162
191
212
210
182
181
218
169
196
202
240
254
229
198
191
227
177
163
180
274
154
167
166
151
191
234
175
211
244
215
202
182
253
182
183
204
175
216
184
245
205
202
172
220
215
186
201
222
219
259
156
208
229
208
234
215
222
220
185
205
238
174
207
136
245
201
184
217
145
159
188
218
198
237
190
202
246
214
197
279
221
220
210
243
182
202
162
167
227
234
192
155
152
225
166
225
275
264
176
221
203
148
236
184
239
196
237
192
224
231
177
230
133
131
194
155
212
181
133
227
190
207
241
205
251
167
195
216
226
212
175
214
197
227
207
200
186
176
214
233
241
166
179
236
207
253
282
190
213
144
158
197
180
259
236
215
159
188
179
191
181
228
164
216
207
150
174
224
197
231
182
108
141
233
211
190
241
201
177
152
190
190
234
227
165
153
189
196
226
214
221
200
237
176
197
234
166
175
185
186
218
156
232
134
170
245
307
152
248
235
162
173
216
128
154
143
192
206
199
231
221
191
193
168
212
265
209
146
248
216
203
232
185
167
137
176
151
167
144
214
232
235
199
235
232
218
231
246
208
208
173
245
224
139
169
153
254
195
235
202
282
191
235
163
152
248
199
119
176
211
161
222
213
235
145
168
165
227
284
216
226
186
171
229
244
217
268
224
165
165
176
277
140
223
170
140
178
228
196
176
238
263
159
233
211
224
215
232
230
193
167
209
236
251
207
200
205
235
217
181
237
214
248
235
255
245
242
149
227
158
202
157
154
213
186
188
255
161
250
202
151
203
150
178
208
196
180
200
213
205
215
218
237
237
155
190
263
234
141
273
189
209
178
190
165
240
194
136
169
159
171
206
218
212
187
171
226
186
219
192
197
230
171
222
265
169
254
203
185
260
203
168
234
164
204
252
261
209
194
164
170
255
174
262
122
170
118
182
186
197
202
186
245
200
186
198
137
227
180
195
217
205
188
163
242
267
248
175
170
149
260
185
180
259
201
207
198
185
125
146
199
192
189
157
194
167
154
233
178
201
213
273
125
165
191
207
221
181
195
215
260
225
225
203
130
183
165
198
250
225
223
188
226
201
253
197
170
198
194
211
166
160
219
157
194
157
200
223
204
223
251
173
189
168
190
250
174
203
206
170
234
218
221
183
221
205
236
194
172
154
261
249
208
214
187
197
224
257
144
189
212
189
209
202
153
151
220
175
223
217
158
116
161
234
184
224
205
255
213
235
184
157
280
219
201
173
231
161
211
160
220
231
247
243
229
230
242
184
203
238
161
230
233
253
217
178
260
197
127
210
164
197
214
158
226
216
268
223
173
211
217
226
216
232
219
170
231
190
201
196
190
194
162
197
247
208
234
273
175
182
179
204
147
214
237
170
142
264
199
204
195
178
167
194
241
150
231
247
252
150
231
173
176
217
172
167
255
184
179
204
234
230
189
200
233
201
204
230
154
209
227
180
145
230
184
179
190
194
230
195
215
190
151
154
261
230
263
224
238
183
192
189
190
171
162
215
190
180
223
149
227
212
211
158
225
217
219
240
148
212
238
200
230
220
181
146
174
144
205
186
231
214
195
201
242
180
286
166
186
190
194
240
207
188
150
196
180
214
226
221
204
164
239
207
188
251
205
181
178
132
191
251
230
182
240
223
202
137
208
202
145
267
182
238
243
183
124
164
202
242
181
218
157
175
163
198
157
159
195
218
261
186
230
193
148
201
231
175
245
235
170
247
166
200
268
235
274
252
216
186
214
167
215
209
232
189
191
266
183
229
267
158
202
236
209
237
208
191
213
148
240
204
173
168
190
206
253
261
195
254
231
216
230
143
174
166
173
194
189
241
208
189
163
214
208
223
240
199
202
196
202
177
202
223
231
220
202
192
233
196
233
237
227
209
217
192
237
184
240
168
152
199
247
246
138
176
149
199
245
232
241
203
172
188
208
179
196
241
170
198
286
202
224
173
211
169
223
219
213
201
227
242
176
230
199
247
185
212
179
221
139
212
223
188
270
231
172
152
230
217
160
176
158
209
155
218
214
198
216
202
224
183
254
251
243
161
223
221
249
90
229
249
160
148
121
276
246
192
203
215
185
190
192
199
170
188
163
188
172
134
198
175
190
200
160
186
217
235
221
180
153
251
251
145
179
130
175
220
231
205
207
190
242
190
179
251
188
177
199
149
158
216
172
196
235
207
221
221
224
216
193
181
238
179
191
206
99
186
265
172
133
191
184
207
251
214
226
188
245
226
203
215
228
182
225
219
170
172
214
142
153
164
224
156
225
209
153
194
179
184
199
229
199
229
231
129
208
256
177
224
199
143
210
180
149
206
170
121
191
208
121
233
240
209
223
185
220
169
160
160
198
147
245
200
193
186
227
221
169
303
193
211
191
235
221
223
228
177
175
138
165
139
195
224
234
232
197
208
220
192
204
174
188
233
271
183
179
233
198
131
209
223
211
211
238
221
128
219
209
156
172
211
213
171
226
201
202
211
140
167
179
216
225
203
245
190
221
210
199
217
220
200
145
116
162
216
203
196
160
233
147
220
243
185
230
188
176
248
205
197
187
171
200
205
211
162
205
149
151
177
182
176
237
273
222
261
182
194
299
199
236
153
175
223
160
241
196
192
237
192
237
225
177
234
160
243
231
190
141
238
209
199
270
240
199
200
232
209
251
228
204
221
234
195
136
204
196
227
219
199
140
188
170
234
217
223
219
190
217
236
204
217
145
167
176
158
225
167
215
226
227
224
198
223
187
202
188
230
222
191
187
211
271
227
207
164
212
155
230
174
207
213
205
195
196
205
193
262
229
156
171
196
198
226
179
227
169
174
186
199
191
254
249
225
188
186
250
238
243
248
181
195
175
176
182
180
161
260
236
223
179
276
205
159
188
243
240
199
190
230
204
206
195
226
257
184
229
211
172
146
188
164
226
217
76
190
213
227
230
159
233
152
227
201
220
188
143
147
244
163
193
210
218
137
266
126
226
230
213
189
193
206
170
228
147
229
175
218
220
204
213
174
197
176
173
195
163
201
216
234
225
155
278
206
222
146
252
147
209
301
168
171
171
187
214
197
210
195
221
179
173
194
168
177
228
182
197
205
183
217
236
153
207
208
238
187
166
152
196
258
230
175
214
247
176
213
251
198
164
203
229
188
174
220
228
175
306
209
241
233
196
206
214
180
222
251
230
290
211
193
216
184
256
225
128
195
258
239
196
233
231
235
206
249
134
233
211
253
180
222
238
205
146
181
193
205
216
207
207
295
231
189
161
154
168
173
218
168
230
207
229
176
248
185
265
220
137
251
171
160
205
228
192
162
217
235
176
236
134
229
244
229
245
139
215
201
119
186
217
121
185
199
153
137
215
135
194
223
244
261
207
209
172
164
263
185
210
175
247
172
185
219
179
170
231
263
242
144
191
162
209
195
160
203
236
209
191
217
138
180
233
159
181
177
213
200
230
221
165
205
249
192
224
198
227
249
221
141
221
141
250
261
95
238
215
223
155
156
225
239
208
206
270
234
209
254
253
186
205
187
261
213
184
245
230
154
137
252
163
126
180
191
212
140
216
222
172
233
224
206
222
105
192
215
212
146
265
169
240
219
209
217
221
167
172
230
231
239
254
188
233
139
224
218
207
194
146
233
147
117
211
229
193
200
225
212
174
197
223
213
172
234
217
149
161
191
191
225
149
228
230
217
198
250
212
213
246
213
141
152
181
192
195
214
197
196
250
207
202
221
216
194
216
240
239
243
147
222
152
228
174
187
232
191
191
164
194
197
198
156
189
176
184
224
194
176
147
213
224
237
200
157
208
142
147
167
225
168
180
170
222
203
199
131
290
207
197
205
221
173
178
282
203
220
172
212
221
238
164
175
174
184
196
170
148
225
182
249
185
178
205
185
197
196
256
181
230
209
152
152
208
176
225
151
238
185
165
229
190
153
250
220
226
172
172
190
192
216
206
231
151
147
156
169
173
192
164
217
238
223
207
258
187
250
238
149
245
227
183
286
206
197
162
188
135
166
270
179
232
218
141
211
226
171
217
234
243
121
166
204
212
220
215
187
197
224
159
226
272
236
181
223
172
236
199
248
128
153
197
244
206
193
152
250
208
169
222
201
197
216
242
181
210
187
178
221
178
229
170
173
186
191
130
166
219
204
150
174
194
198
231
202
220
207
138
192
208
152
256
186
171
253
260
144
265
218
191
147
184
181
194
242
236
184
225
155
169
232
232
124
201
253
159
206
173
155
210
182
202
184
242
183
222
213
169
190
180
172
218
245
172
229
237
215
270
209
210
217
232
118
237
173
190
300
172
194
176
229
226
229
245
246
214
205
204
216
237
195
178
221
209
260
115
223
211
216
190
197
180
176
174
165
176
164
245
210
183
245
213
218
212
134
164
195
185
188
225
223
144
244
207
181
178
132
236
201
157
202
236
174
166
209
218
279
222
207
174
165
238
141
226
228
233
246
171
185
197
141
148
166
191
201
129
191
219
229
222
182
226
218
179
166
195
208
176
184
189
232
203
209
241
197
187
190
218
235
253
210
222
236
197
204
181
153
235
227
191
173
171
227
167
234
189
194
185
228
191
215
246
192
220
237
192
163
218
190
188
215
255
151
205
220
178
256
236
208
228
220
168
165
212
200
196
206
212
215
198
216
139
160
168
241
154
183
253
181
120
143
228
187
188
197
220
184
209
222
183
185
181
226
237
190
205
135
215
251
210
206
228
242
137
201
140
234
234
206
166
208
231
227
202
206
209
211
167
248
237
213
231
172
199
155
197
179
207
168
226
200
248
207
197
150
239
212
241
144
226
197
253
227
169
185
199
173
215
225
172
150
246
165
139
193
161
175
228
143
162
207
162
217
163
214
185
240
172
169
218
234
203
176
181
143
159
152
221
140
156
162
190
165
172
197
185
169
177
140
145
223
231
235
192
178
231
213
189
191
206
247
177
180
140
194
198
138
160
159
183
245
193
203
221
164
225
202
246
188
192
182
246
206
233
170
235
184
170
173
120
177
209
165
170
224
207
254
201
176
199
200
196
226
219
204
142
260
148
214
185
205
155
211
256
242
186
175
180
263
173
203
199
170
271
221
156
252
197
165
196
253
207
224
187
170
215
192
225
201
209
204
216
183
181
146
256
169
247
233
177
144
176
207
250
172
186
267
257
157
229
129
201
176
219
224
197
196
152
124
217
204
219
133
202
219
161
191
227
209
177
185
210
185
196
192
241
269
183
252
149
208
213
165
243
184
181
202
223
206
236
197
203
202
144
182
155
184
239
153
204
193
187
224
245
194
154
216
180
168
182
205
194
205
145
188
144
207
269
205
205
245
194
174
209
200
152
120
161
179
234
200
254
150
246
229
205
212
251
164
199
221
185
149
224
187
248
226
216
167
208
252
194
193
154
213
187
262
217
155
183
204
249
259
214
201
210
204
161
246
196
177
234
204
188
220
210
197
155
191
204
220
151
184
133
217
198
258
243
178
218
228
216
255
175
238
184
272
196
161
139
148
244
198
249
194
241
189
226
189
233
169
197
235
183
182
212
258
192
172
268
142
205
130
197
169
208
157
213
151
133
255
202
188
222
137
239
182
188
194
202
200
225
178
221
222
130
155
192
194
184
184
221
177
184
172
163
204
216
184
169
119
216
188
194
213
181
147
195
226
140
261
245
237
162
196
157
233
215
188
163
201
235
171
199
236
197
197
127
185
205
223
207
206
223
159
208
213
193
202
201
219
144
156
198
218
271
192
196
207
223
222
223
271
203
186
259
218
212
209
197
204
211
223
206
211
251
184
250
196
131
169
190
145
145
223
207
214
192
203
188
194
184
244
171
180
198
216
153
227
171
241
192
238
194
158
227
271
237
208
219
248
175
200
105
138
169
184
249
193
204
248
255
108
242
217
215
253
154
152
179
204
179
200
174
218
179
179
181
253
147
164
175
258
218
116
201
172
196
234
186
198
154
193
207
190
200
244
233
205
265
241
262
261
212
172
222
207
192
179
246
150
201
215
174
150
193
202
163
159
252
192
167
162
199
251
190
235
187
201
190
199
162
183
131
219
171
240
214
242
204
189
185
255
145
235
205
175
152
215
221
132
215
186
175
188
180
213
205
198
206
202
129
188
158
215
210
215
213
220
152
215
225
175
228
183
179
206
239
224
181
205
252
258
265
221
202
165
223
197
178
227
200
187
188
223
199
191
231
173
228
206
169
232
204
217
185
177
154
178
186
215
196
175
208
207
203
192
198
169
232
175
222
246
219
204
223
220
150
215
226
194
139
204
145
128
226
252
169
228
223
142
219
167
223
163
244
235
180
207
144
250
197
231
217
166
187
124
188
220
209
228
231
302
215
242
190
257
165
232
184
188
244
207
228
233
131
221
229
199
150
185
272
192
237
217
261
229
177
160
228
175
194
192
236
174
168
212
173
175
222
194
139
171
227
253
249
201
174
153
207
258
171
186
202
181
238
202
216
233
205
173
252
164
189
215
160
209
111
186
190
200
197
198
267
212
179
173
177
194
200
235
275
137
253
164
140
177
230
160
224
217
250
201
237
164
196
257
249
177
204
201
253
208
172
220
168
156
228
207
252
208
185
157
162
244
166
266
139
217
165
183
224
211
251
142
204
190
196
188
252
232
182
240
216
225
259
279
252
185
157
212
206
131
218
111
227
166
202
193
204
183
133
182
209
181
198
166
162
210
195
136
231
161
193
172
156
215
129
191
213
233
242
195
182
153
141
187
234
241
146
197
186
188
215
198
224
268
201
220
201
216
187
145
193
224
174
229
137
247
151
238
238
198
242
188
192
232
257
145
242
233
207
197
205
240
201
202
239
147
206
213
189
207
210
180
231
188
198
190
218
202
201
203
177
158
181
192
271
246
155
176
174
252
178
190
195
250
118
230
173
187
227
162
233
194
173
199
162
174
185
207
199
210
212
204
192
218
186
211
153
240
186
186
152
118
209
207
213
190
202
269
250
142
162
196
207
202
189
256
189
182
265
122
158
225
209
187
168
194
107
200
205
236
146
179
222
153
187
200
245
217
123
147
198
229
208
207
145
221
214
223
166
209
213
191
142
197
224
177
211
192
271
243
212
176
184
187
205
165
202
200
198
225
148
139
193
179
245
252
172
196
200
195
223
175
242
231
166
253
221
254
153
151
251
205
133
137
172
202
247
209
226
234
239
189
194
193
209
166
244
202
172
185
185
230
190
228
286
225
146
191
205
237
191
252
142
201
217
197
219
237
199
176
216
142
187
124
127
159
244
160
192
180
207
213
150
198
173
194
228
137
180
140
225
181
181
220
169
203
210
207
171
263
255
185
164
202
120
191
239
292
178
229
273
222
200
172
201
180
174
167
187
201
208
169
160
183
179
156
182
178
167
174
207
209
179
175
175
233
177
195
98
159
229
170
241
193
130
250
230
198
235
128
234
205
175
212
241
227
202
221
160
202
166
216
211
205
203
226
192
252
162
176
222
190
221
201
164
140
192
168
210
213
213
201
176
107
227
246
188
216
227
217
199
223
154
201
203
204
194
230
216
183
215
252
184
213
216
210
213
205
216
187
230
191
167
217
207
239
168
203
191
217
190
194
228
236
166
204
219
198
157
108
206
216
222
184
191
215
263
230
135
192
219
208
263
190
236
191
204
223
207
222
179
195
195
267
263
216
211
247
247
218
254
177
216
224
233
220
219
239
162
197
211
178
257
203
234
190
207
181
194
197
168
199
225
195
148
186
159
215
153
181
211
151
243
193
247
230
160
213
247
198
210
205
201
209
173
238
229
273
220
202
217
206
160
230
226
214
204
174
238
133
154
191
120
172
221
178
190
228
186
200
167
195
181
215
202
177
182
182
254
196
171
192
246
216
169
207
214
160
184
163
195
186
188
209
178
170
199
217
158
164
170
190
202
200
149
243
183
191
225
242
158
203
214
217
176
226
204
204
162
223
154
219
227
201
190
252
215
148
205
238
135
224
276
122
185
181
220
211
206
208
227
142
196
187
165
197
203
184
207
212
223
234
198
225
187
180
204
148
251
223
163
160
170
200
191
151
205
219
196
161
152
219
190
195
253
188
203
187
250
266
188
235
218
207
230
115
112
232
211
191
233
197
201
206
206
139
162
202
290
133
192
212
174
218
175
209
152
224
233
123
229
203
195
218
175
173
187
213
230
177
167
208
166
192
159
224
139
216
188
193
224
234
230
200
189
139
165
181
270
212
212
208
197
193
157
179
209
227
178
165
227
219
239
183
190
180
196
218
175
248
207
227
215
252
152
246
210
188
181
169
164
190
227
250
184
142
241
140
218
201
236
221
156
211
171
182
219
274
175
178
180
258
209
184
204
171
225
227
216
202
178
191
226
229
190
206
215
156
218
142
196
205
142
179
184
220
224
157
198
238
193
236
157
211
182
184
181
196
176
213
187
252
194
204
208
225
223
136
180
155
197
135
234
231
176
212
255
281
171
215
177
220
134
187
259
221
144
191
152
171
196
209
222
183
188
182
226
180
202
197
152
267
185
189
171
171
203
172
189
240
226
193
240
228
145
137
195
219
215
175
185
185
175
197
249
202
221
210
224
213
214
194
253
181
191
209
221
203
189
192
212
189
183
191
210
178
240
172
270
144
207
142
166
192
180
206
189
189
165
140
221
133
205
233
211
233
217
186
269
194
143
220
184
164
178
121
199
205
186
229
144
202
255
180
161
214
193
160
185
182
185
211
209
173
196
146
256
226
163
233
194
174
254
219
200
271
220
191
193
150
219
196
220
158
203
193
208
189
245
240
225
247
235
188
231
225
206
134
240
208
183
164
150
171
198
200
210
206
152
241
235
235
163
235
217
207
184
174
233
199
168
182
217
179
221
237
255
163
300
167
177
217
200
140
231
180
210
231
158
191
180
242
218
117
205
164
172
297
219
221
206
191
185
244
279
144
182
174
181
148
208
250
234
150
214
190
181
191
188
180
210
212
223
228
184
232
185
181
196
194
225
208
213
166
225
200
193
174
219
189
198
239
191
215
206
235
230
239
306
142
145
185
146
187
225
247
199
192
139
248
225
195
235
210
252
243
219
147
183
159
244
176
183
174
258
232
178
229
155
209
204
168
177
176
227
210
171
160
248
200
132
168
159
179
237
157
223
118
178
246
152
161
164
132
224
174
266
193
147
220
188
119
257
243
249
201
197
198
210
149
158
209
216
261
232
196
154
188
206
198
264
253
167
154
256
189
209
194
168
130
146
161
196
149
179
221
232
214
169
211
111
190
266
156
197
230
230
168
195
138
158
254
196
158
198
201
243
176
303
174
236
176
147
188
219
267
205
271
136
211
215
195
287
241
190
165
213
227
179
236
294
242
210
201
207
225
177
226
218
146
151
212
236
236
221
199
204
193
217
174
175
112
215
240
158
176
211
226
134
183
143
301
193
226
228
212
207
241
210
229
118
200
129
234
203
200
211
227
202
177
223
253
217
182
203
252
212
249
196
136
217
213
207
148
176
248
154
154
193
205
253
179
114
217
153
178
195
231
222
187
197
164
168
237
207
147
165
131
181
192
179
193
142
244
177
200
228
189
204
168
223
213
182
159
165
238
233
151
242
227
240
188
239
171
219
229
228
237
185
180
226
188
209
211
223
204
219
205
204
191
216
204
228
142
164
243
170
210
186
236
174
185
144
268
193
246
232
176
180
173
186
166
194
210
209
234
203
239
159
195
192
193
206
136
228
201
216
171
200
205
237
237
223
153
204
195
203
228
229
220
209
211
204
177
171
233
228
184
213
222
144
167
195
202
218
215
211
243
174
220
205
196
117
178
222
182
244
141
153
199
185
255
223
199
210
228
179
247
256
156
219
206
245
219
218
208
200
148
173
209
220
195
213
242
218
232
208
206
168
267
174
230
239
239
249
191
236
187
185
241
161
186
210
213
215
211
148
131
200
213
180
227
162
182
213
247
204
173
192
153
168
219
192
250
262
263
173
194
247
239
165
171
185
194
285
182
155
261
221
211
195
121
174
211
183
233
263
246
212
172
234
217
229
202
231
214
240
251
181
232
203
232
276
209
169
217
146
256
193
126
164
233
190
203
229
195
158
165
195
207
183
214
244
224
248
175
178
281
223
192
223
184
202
170
230
229
183
194
193
213
201
239
183
149
164
187
258
201
121
197
218
255
239
212
230
160
245
133
224
211
241
162
183
223
247
246
153
251
220
223
237
209
189
236
216
219
119
189
154
179
244
249
212
164
127
238
281
210
185
207
198
208
181
196
165
181
233
205
242
185
131
210
209
164
143
224
248
236
221
186
228
211
261
194
158
174
203
241
190
172
219
214
223
158
179
222
229
233
184
219
140
225
250
184
246
178
219
180
168
137
183
219
218
176
261
215
193
182
248
183
132
181
200
249
206
190
173
226
265
157
158
178
184
164
237
188
171
234
183
156
241
142
224
253
135
235
197
208
161
229
169
253
180
158
240
195
157
157
249
183
251
184
204
202
177
219
220
152
199
251
269
211
194
183
184
196
173
196
224
213
213
199
237
219
217
191
193
210
121
252
191
250
188
194
194
189
270
260
175
180
205
183
183
205
209
154
135
191
226
178
229
186
170
217
216
151
180
188
175
156
232
170
208
237
218
253
192
204
227
268
220
200
261
242
214
222
250
185
206
210
177
183
201
218
200
206
210
159
136
142
139
224
233
177
171
141
181
236
205
269
221
236
186
117
172
209
165
169
181
193
214
169
179
134
233
149
206
210
202
170
244
145
191
287
154
203
148
238
170
147
199
175
210
215
231
156
201
235
145
209
222
183
175
246
138
193
164
220
217
232
179
258
190
226
181
226
133
161
188
241
179
219
192
225
156
254
183
226
152
184
227
149
245
199
182
199
123
152
196
177
214
204
198
251
199
244
201
220
246
252
242
218
214
231
190
221
225
218
155
195
192
226
135
176
249
198
168
201
200
152
215
192
209
283
196
156
211
207
196
207
235
189
149
212
193
171
185
212
202
180
214
228
149
185
203
225
238
144
184
194
189
175
185
213
189
249
226
226
208
207
155
162
193
138
179
170
196
145
179
203
176
212
214
218
182
140
215
196
260
245
218
228
225
212
242
173
214
202
277
184
196
212
208
184
225
147
213
176
225
193
227
230
210
157
243
214
210
248
175
159
253
174
148
141
215
216
261
151
217
212
246
250
244
218
199
219
213
224
171
260
216
211
159
181
160
113
236
205
180
233
177
153
195
199
183
184
159
222
231
197
196
256
244
153
176
204
207
215
215
244
187
219
216
123
210
196
244
193
212
197
153
125
172
166
212
201
199
190
214
236
219
237
229
160
254
254
233
205
251
248
186
153
149
240
194
227
193
192
176
213
212
164
244
219
205
255
300
177
200
224
212
236
201
230
168
168
222
272
228
215
220
246
206
208
163
215
147
199
174
172
275
199
217
225
268
223
199
190
216
239
180
163
238
221
224
231
203
179
226
202
234
181
159
170
191
169
185
195
205
206
215
186
228
186
151
188
195
179
225
229
227
215
181
265
244
150
202
180
127
213
231
227
258
203
169
182
188
249
221
257
145
174
196
195
248
224
108
219
273
181
184
215
185
226
192
230
177
220
158
233
208
214
174
213
180
240
164
188
205
188
233
264
190
192
210
230
179
247
243
207
204
162
214
192
221
213
179
218
211
233
238
229
196
186
201
259
154
179
199
141
206
236
236
220
173
193
199
171
214
223
183
160
224
164
219
131
214
267
248
233
203
235
207
220
171
169
254
219
257
175
238
204
201
169
233
226
161
159
193
182
191
253
135
188
251
222
221
181
269
201
234
222
221
255
180
279
184
186
214
243
223
193
107
235
165
194
203
218
259
243
174
240
154
224
209
191
217
132
177
204
196
168
179
184
166
217
215
244
162
210
208
232
194
159
152
215
172
172
182
182
216
194
223
222
231
178
225
178
180
211
190
228
195
241
220
178
197
247
234
222
191
195
210
190
205
204
203
214
175
218
246
193
244
137
195
229
178
208
191
218
154
189
250
221
200
164
242
160
144
137
232
224
224
163
202
117
202
234
166
209
220
191
224
218
193
141
168
184
193
142
193
194
223
216
149
195
132
207
206
173
209
155
216
217
196
204
186
223
238
245
260
192
239
215
214
264
171
248
244
261
235
218
180
148
194
171
174
247
212
176
209
160
217
245
285
217
192
208
179
222
252
234
192
198
201
163
211
174
228
205
181
178
210
219
212
185
167
246
171
164
182
242
218
213
203
240
170
101
202
147
203
249
245
230
228
216
135
283
225
254
217
218
207
216
224
209
142
224
211
193
254
112
199
256
207
173
202
111
189
237
211
220
230
203
175
189
202
117
183
169
289
209
207
205
246
209
168
173
194
219
194
213
218
196
203
164
222
251
132
149
211
250
199
177
205
179
199
159
230
177
227
204
262
199
250
219
178
238
192
196
240
238
239
182
222
189
217
201
234
192
180
192
193
268
214
206
218
170
203
155
176
177
166
123
221
237
159
214
220
257
200
128
240
223
188
232
191
214
207
149
250
177
207
152
216
227
179
207
220
256
230
167
250
228
152
163
232
164
201
211
210
154
176
165
170
220
216
241
249
183
186
217
203
227
232
150
172
174
206
181
260
212
245
254
244
218
180
135
188
234
210
246
204
220
206
184
219
174
141
249
233
238
193
204
234
185
201
124
199
172
238
168
190
200
271
175
201
236
240
182
205
206
232
250
133
241
233
202
223
248
191
209
208
230
179
168
172
152
207
228
238
179
229
157
243
210
224
150
227
220
146
221
178
178
246
174
160
217
237
242
160
188
207
151
167
248
228
178
205
223
193
222
174
207
227
190
158
268
220
191
203
237
220
248
173
277
222
199
188
143
219
169
204
179
231
217
218
191
267
244
150
196
227
200
196
195
200
201
198
203
186
214
195
200
293
210
196
195
147
186
181
181
141
191
229
208
185
211
263
204
168
169
226
183
154
226
216
212
172
215
172
212
188
215
275
216
181
186
207
268
229
198
187
215
216
185
114
223
203
170
222
189
229
206
203
234
195
265
204
190
222
172
198
244
231
172
212
233
243
151
231
163
193
201
251
198
174
218
187
190
182
231
242
300
152
222
214
266
169
252
198
190
190
203
202
191
235
228
253
218
245
245
189
206
173
220
127
147
136
201
202
205
265
209
217
192
127
271
186
196
226
172
235
193
167
244
201
208
214
142
183
211
252
173
223
205
247
184
284
246
189
137
215
171
195
253
230
233
210
230
182
237
186
143
278
215
190
181
195
163
265
266
139
216
209
195
202
212
173
226
184
175
183
180
236
202
115
194
237
173
191
197
175
250
167
135
246
166
212
198
166
227
227
99
236
200
190
158
217
171
196
225
132
172
174
237
185
237
176
185
201
199
181
207
249
183
212
150
150
212
212
237
279
257
209
228
245
229
219
212
245
138
212
186
145
204
199
198
163
229
211
246
182
163
210
249
280
204
246
195
206
240
204
190
201
193
162
216
178
202
230
176
243
217
180
160
226
192
173
210
234
257
223
188
207
180
170
200
242
221
142
285
214
217
153
196
176
187
229
188
202
199
143
230
197
172
198
200
202
269
200
248
202
192
199
265
175
234
192
270
250
271
168
177
138
255
239
237
185
200
233
223
107
257
187
246
146
189
222
220
221
166
183
196
183
203
190
231
184
245
217
176
198
183
228
203
217
243
223
207
222
234
175
187
129
159
228
191
160
151
218
199
226
253
127
213
214
195
267
124
177
237
197
243
203
152
219
230
226
191
138
148
259
222
145
165
223
209
163
200
216
187
205
204
232
225
157
260
182
200
181
218
254
184
221
151
220
190
190
190
224
224
133
203
216
312
197
185
226
224
176
225
184
174
216
214
192
205
199
199
173
209
231
183
173
206
172
213
223
175
232
141
236
200
212
191
201
222
197
257
227
134
202
217
118
155
215
196
184
170
208
215
233
229
184
229
156
217
154
160
211
213
229
223
232
237
177
187
225
192
170
240
185
209
165
184
196
176
166
181
239
199
210
207
195
243
179
247
210
239
186
201
258
205
183
181
170
193
194
253
148
230
192
236
229
261
171
171
232
256
218
167
151
143
177
171
278
124
240
176
177
265
209
223
241
197
198
189
168
223
258
179
203
230
231
217
206
258
186
236
245
194
171
210
175
229
234
181
243
181
135
182
160
158
210
202
197
264
178
221
236
200
190
230
199
183
162
134
164
171
207
152
187
219
223
216
234
272
199
216
182
227
211
189
160
228
137
205
269
164
215
125
238
203
242
235
186
140
183
226
236
222
209
160
227
197
210
189
217
190
212
212
210
173
175
198
208
216
183
193
237
215
162
212
240
194
213
155
167
182
182
163
192
181
174
164
194
267
203
183
203
242
221
196
183
195
229
227
207
254
220
184
167
209
208
253
257
212
239
165
141
248
196
263
120
245
143
161
205
128
232
159
178
214
243
217
170
205
145
174
269
163
246
219
218
235
237
232
199
243
246
170
162
181
170
253
149
176
213
206
230
204
213
199
240
229
207
247
235
247
198
171
190
187
152
179
146
205
93
212
156
151
214
180
239
195
186
234
182
219
173
170
230
195
198
214
173
158
219
240
177
286
193
203
188
224
189
204
246
225
245
197
186
212
198
138
229
258
162
225
149
193
151
167
195
145
174
192
216
121
245
202
218
225
134
225
204
244
169
217
176
130
195
197
209
211
228
144
195
145
240
254
235
223
259
163
195
199
212
189
183
128
231
264
242
167
177
179
178
233
209
244
221
220
225
138
179
249
148
172
181
198
177
199
191
208
230
201
221
196
252
169
192
248
180
173
186
205
156
171
243
153
185
206
157
154
221
208
224
209
229
179
245
198
222
187
229
184
199
191
219
241
207
118
113
243
215
170
168
213
166
230
186
209
200
233
239
178
197
217
233
206
166
251
254
251
199
240
133
190
179
225
204
223
244
240
198
154
173
215
198
210
220
180
231
180
155
227
232
250
221
212
180
195
218
152
185
224
171
168
231
209
129
174
154
199
228
262
193
193
183
222
160
187
216
170
221
145
232
154
224
169
197
175
154
214
163
209
200
165
217
154
176
178
208
208
130
178
194
210
238
210
285
216
152
188
191
161
180
238
199
144
208
199
271
177
259
170
182
160
189
219
202
258
220
215
209
180
197
229
198
219
195
230
197
190
194
247
196
235
256
193
229
208
207
217
221
228
191
175
227
220
166
220
201
157
251
196
191
216
185
130
167
225
204
238
212
169
203
175
192
194
259
213
183
222
200
258
198
198
171
232
238
268
180
132
209
184
150
189
172
157
179
203
218
217
193
167
169
197
224
172
194
200
187
217
239
129
167
176
228
286
207
209
184
154
227
185
188
213
217
215
238
253
243
199
279
211
179
217
188
211
234
238
191
164
193
177
174
179
197
213
176
250
216
163
232
170
154
164
210
162
201
184
135
240
167
209
138
186
199
214
213
176
177
207
215
162
149
196
214
146
228
198
153
219
209
229
173
215
184
257
165
243
160
169
200
172
168
255
182
169
157
136
170
190
215
138
193
212
207
203
239
242
179
205
246
216
192
236
143
197
150
237
204
220
226
198
265
215
241
212
219
227
258
184
204
227
217
210
135
207
222
161
204
182
185
192
280
264
187
173
221
141
219
171
191
246
251
227
187
242
199
244
196
211
212
182
205
196
178
230
162
162
177
231
213
208
200
241
247
152
200
174
233
157
185
200
212
175
158
218
234
161
223
191
254
147
184
228
167
194
193
206
194
227
182
178
215
197
250
169
144
147
171
205
201
209
191
201
224
221
161
169
189
184
236
174
191
192
201
214
238
198
210
202
225
226
217
253
196
218
268
131
255
201
216
161
195
167
187
213
208
172
218
202
209
242
243
181
245
224
116
148
196
105
193
224
205
155
228
222
220
134
164
164
243
213
205
224
210
209
150
218
221
223
176
183
196
244
234
162
200
178
131
173
212
192
168
246
144
167
212
215
193
166
175
220
177
175
181
262
193
206
180
172
224
213
203
264
252
236
197
219
237
164
166
186
175
173
143
241
246
147
119
204
278
172
163
191
205
262
215
201
182
143
207
264
198
194
173
157
163
225
175
226
190
266
232
198
211
134
209
233
162
208
237
247
175
215
207
199
196
153
254
183
242
205
252
165
205
200
208
209
228
199
154
252
262
169
187
191
191
221
205
220
191
209
180
190
190
172
199
184
173
191
240
202
194
130
174
245
219
204
162
217
142
243
223
163
177
167
237
187
252
179
161
199
195
196
227
222
222
241
180
159
232
240
230
188
184
191
209
235
179
264
206
204
205
228
241
169
224
178
124
177
160
175
179
201
250
135
234
161
217
176
134
228
199
130
230
196
204
188
206
211
169
178
211
207
151
185
198
242
178
197
192
224
145
210
192
205
185
195
190
175
158
182
199
216
163
182
242
218
196
224
286
209
275
214
142
199
161
189
239
198
198
266
211
245
113
148
275
213
184
243
249
216
175
135
208
229
216
213
135
224
209
243
179
233
190
244
227
216
142
222
231
186
163
204
112
178
200
230
144
218
193
160
156
235
224
176
208
138
186
216
134
183
199
198
223
272
157
167
182
204
235
242
161
255
111
250
208
269
218
195
161
185
181
174
225
183
198
249
260
179
183
223
157
174
205
205
194
177
198
231
201
255
219
207
178
259
222
146
202
220
218
284
114
271
166
111
213
123
159
248
165
210
129
161
253
206
168
260
190
189
208
143
263
223
234
246
194
205
178
211
183
214
183
169
201
207
216
217
215
194
199
244
215
226
206
210
206
154
215
208
198
186
166
147
195
172
175
222
183
198
233
268
143
198
165
162
233
134
193
229
144
166
190
195
238
137
251
174
199
213
182
271
240
196
197
230
262
193
237
182
255
156
214
226
189
189
151
249
168
209
200
208
236
144
222
241
238
191
233
120
206
225
216
166
203
260
242
195
208
287
211
220
227
218
202
182
174
231
162
212
197
215
185
199
174
165
209
239
235
219
203
201
170
194
128
151
215
176
208
271
245
222
183
222
195
238
194
173
167
187
214
226
157
183
261
193
191
148
248
225
178
202
203
201
185
154
88
178
182
202
118
176
184
242
204
212
228
174
239
208
171
164
215
182
216
206
214
196
109
189
216
196
201
198
170
201
214
213
265
172
212
183
190
171
182
195
208
236
216
210
213
244
176
131
191
166
237
257
216
169
196
216
148
255
225
223
125
228
199
231
213
210
148
214
212
193
210
198
202
212
222
181
145
268
179
176
193
222
235
187
217
235
157
251
212
248
180
199
190
275
160
181
265
201
189
185
253
270
190
202
247
243
188
208
263
227
180
174
241
240
228
275
228
211
240
176
198
162
247
165
220
203
240
178
166
196
226
209
199
257
239
193
215
175
192
137
197
195
212
241
221
203
256
221
195
149
150
176
190
220
196
157
211
169
166
197
204
237
186
226
211
205
173
172
230
243
232
225
215
257
191
200
131
204
232
241
209
196
263
185
180
184
278
163
258
185
176
230
209
219
213
135
185
145
216
245
236
246
145
210
190
159
224
209
215
152
190
224
136
130
200
186
227
197
176
218
217
178
220
248
185
247
192
183
216
163
183
186
218
177
186
132
243
245
187
228
197
219
206
229
239
189
174
221
161
174
183
139
217
167
131
226
174
209
205
167
194
218
187
223
212
188
215
237
184
222
197
117
224
157
234
168
239
211
186
199
173
205
231
164
155
160
200
210
254
198
195
166
207
142
197
158
121
193
159
184
226
169
203
225
215
174
204
204
188
227
150
129
192
181
169
195
206
202
207
166
152
200
153
177
123
215
182
234
151
205
195
227
190
176
197
259
198
198
190
203
154
182
197
233
193
267
217
205
219
169
214
209
177
190
270
265
141
248
189
210
169
222
229
159
227
134
146
192
186
231
253
213
273
229
215
238
217
249
220
263
143
169
179
250
179
180
132
265
209
236
178
209
265
251
154
194
222
200
186
229
201
238
247
239
227
188
189
203
222
214
210
176
143
238
126
182
205
192
126
193
203
170
205
193
208
180
149
162
143
101
233
192
251
165
179
180
169
225
279
240
188
218
190
217
239
228
185
190
196
175
193
212
243
181
217
205
184
221
225
208
262
194
190
179
209
148
263
174
182
141
218
230
173
256
181
202
225
219
240
217
253
186
141
179
248
140
224
279
142
235
175
251
221
185
224
198
213
227
222
200
158
226
255
175
211
212
219
179
184
181
174
211
220
202
207
186
245
205
205
243
164
221
183
208
204
180
244
175
186
212
180
211
219
242
211
175
193
153
231
186
165
237
264
258
242
200
178
230
204
168
161
211
185
179
232
233
225
179
190
230
178
167
191
194
256
247
201
196
174
177
253
188
121
239
146
156
249
268
170
211
199
212
257
203
175
177
136
176
169
225
171
194
193
219
151
229
163
199
213
206
208
198
194
175
101
234
124
231
128
239
240
199
182
243
204
258
189
218
194
174
235
190
171
183
198
199
217
197
182
211
228
173
188
203
259
174
163
174
220
247
203
145
180
182
177
187
231
185
185
103
169
139
192
210
251
176
199
180
240
188
174
191
161
233
194
220
245
258
207
150
220
179
169
179
200
223
261
179
201
185
226
229
165
195
156
229
190
220
243
102
205
217
156
213
135
243
186
213
211
260
163
175
207
207
192
241
234
205
188
223
223
179
211
264
206
105
140
173
231
194
216
195
202
260
195
186
184
167
179
244
180
195
243
168
180
92
178
231
139
211
216
196
201
220
178
131
215
220
245
210
144
202
206
245
199
146
198
149
221
184
213
126
183
156
285
153
193
196
194
158
134
229
257
177
187
165
225
200
232
209
182
212
218
226
189
156
214
158
210
282
183
181
230
135
198
196
177
158
189
176
187
173
178
220
218
213
175
224
187
165
201
243
217
284
263
165
178
181
201
207
116
208
173
183
219
229
224
196
173
180
147
145
197
192
177
192
232
241
242
194
196
199
218
194
238
288
217
212
232
251
241
204
256
239
185
188
224
172
194
183
201
249
196
205
225
218
166
200
212
236
194
195
177
212
219
201
203
123
188
174
186
163
276
225
182
189
191
190
176
233
159
141
231
177
216
201
162
183
179
242
194
190
191
191
197
260
275
163
232
206
178
216
183
212
172
230
234
170
189
199
183
180
149
148
258
188
187
138
207
216
216
219
179
209
144
159
200
180
232
208
225
163
214
188
150
189
183
215
135
222
239
168
205
213
214
213
184
243
176
148
144
209
154
196
164
219
255
181
234
204
129
166
206
208
181
124
274
201
267
251
235
198
178
192
251
206
183
206
164
179
238
214
168
164
219
179
208
189
229
213
163
220
234
143
141
228
184
156
241
263
229
233
180
117
195
235
157
151
193
241
234
235
215
210
220
141
220
198
250
244
234
202
189
158
179
241
207
221
198
239
187
156
186
212
237
187
172
177
212
211
146
187
182
234
147
257
181
178
139
231
225
176
203
183
164
143
233
221
162
194
177
115
157
245
178
235
120
218
207
189
258
130
258
225
181
205
159
166
167
176
181
161
195
187
207
195
163
254
210
209
153
235
226
202
248
186
246
246
266
214
185
163
263
248
198
248
254
219
229
224
212
224
223
188
214
221
146
158
217
213
157
185
179
208
151
168
229
161
200
191
200
214
236
216
185
211
233
172
158
196
176
200
230
249
220
161
224
185
194
169
197
197
201
218
167
191
221
184
252
209
219
233
177
204
186
173
234
147
239
155
262
220
276
196
228
170
272
178
155
151
250
165
211
154
199
240
240
240
181
155
151
230
155
197
223
158
175
185
159
233
238
162
163
194
218
221
233
244
177
82
175
234
158
210
222
212
162
174
168
207
42
196
145
206
174
159
247
260
200
241
174
185
237
244
190
246
233
184
234
192
248
204
178
196
186
219
199
163
252
213
180
201
201
261
229
219
225
221
189
133
232
177
192
175
244
187
175
179
141
256
209
111
270
147
230
202
248
188
154
125
171
173
174
190
235
204
126
230
233
123
144
176
198
215
191
124
197
233
216
221
201
168
243
206
179
282
270
247
220
238
203
184
210
221
233
160
233
239
156
155
236
185
261
248
158
156
232
196
213
238
196
142
204
239
173
224
239
170
226
199
194
180
106
189
183
196
214
216
200
151
163
226
244
167
265
187
150
151
220
206
182
161
167
185
205
221
169
97
250
161
212
191
164
206
179
165
263
223
111
216
220
187
237
260
174
168
94
155
177
176
170
212
232
181
186
188
268
177
169
222
226
235
169
242
226
185
193
226
187
181
159
256
172
237
180
179
236
211
197
130
194
188
163
224
236
187
192
186
219
227
246
167
237
170
177
210
226
195
180
218
277
200
183
243
215
207
231
212
144
178
238
299
186
206
242
205
212
245
166
220
224
189
196
211
258
232
175
210
227
120
165
242
228
203
210
154
205
156
183
207
120
152
209
271
235
201
163
141
186
180
205
167
283
200
156
221
195
154
237
148
144
236
198
155
181
154
251
203
216
180
204
177
168
151
175
169
122
216
174
249
192
206
225
165
254
204
211
211
203
217
201
170
184
192
168
175
272
176
181
150
223
141
169
192
233
202
189
167
237
161
242
235
207
186
182
171
190
108
216
235
159
205
200
183
199
204
204
193
183
211
193
221
170
230
131
244
257
261
293
218
209
187
181
235
248
226
229
208
255
181
154
175
193
220
224
199
172
213
212
193
237
277
186
153
144
206
256
232
167
260
186
250
283
196
143
135
267
163
197
138
224
241
207
233
202
235
230
173
203
234
238
190
170
199
211
219
200
251
198
184
224
231
146
189
188
157
245
170
175
160
257
155
210
204
180
175
234
209
230
207
204
177
243
193
178
170
235
209
218
271
187
192
208
143
208
178
218
209
212
178
165
180
203
207
223
217
179
167
235
255
211
178
151
218
204
217
280
185
152
227
230
173
224
177
157
225
244
250
192
224
238
232
168
236
175
200
124
189
212
218
185
160
206
179
223
189
205
307
243
158
238
204
215
165
205
234
207
171
199
193
154
190
142
227
164
150
180
186
156
185
219
183
204
205
222
178
174
192
238
231
181
237
111
186
256
230
126
98
206
212
275
232
230
200
232
185
273
200
171
220
204
242
207
153
207
245
173
230
234
254
214
210
215
225
216
224
250
223
201
195
226
190
238
209
197
174
196
220
173
232
235
180
171
157
213
251
157
226
203
195
222
237
234
213
149
229
192
264
248
207
234
148
185
153
248
202
234
224
251
170
181
172
228
244
184
185
206
148
146
154
201
166
219
214
193
180
198
241
207
214
221
177
134
227
216
202
138
232
179
213
192
206
178
194
184
163
283
197
217
173
172
208
160
232
201
226
174
227
229
238
207
208
212
253
232
225
186
231
214
176
191
227
153
225
179
230
173
196
172
191
173
172
234
221
189
127
222
138
219
245
179
214
185
180
196
200
225
136
214
199
190
201
182
234
178
222
206
200
220
257
207
164
207
188
180
178
233
191
259
221
249
205
198
177
167
182
195
227
194
270
252
181
227
137
231
194
195
236
205
144
189
245
205
200
195
231
165
268
213
227
213
170
167
212
154
207
220
246
175
234
218
198
244
262
256
211
145
228
190
165
273
191
131
249
207
201
256
203
203
176
206
157
204
191
161
188
184
203
222
196
191
188
169
238
227
157
156
199
258
207
225
230
169
220
215
229
204
167
247
197
197
191
209
171
224
173
207
171
153
199
224
232
202
224
146
190
177
216
251
215
193
172
181
225
208
243
237
187
230
175
222
215
204
192
203
225
222
257
190
200
196
190
176
182
172
227
185
228
224
196
164
203
201
187
172
212
206
149
209
232
209
163
219
219
214
168
185
167
139
154
212
179
172
221
208
242
217
158
178
215
192
179
195
171
169
214
184
129
197
221
197
231
165
195
178
229
212
240
198
242
170
186
172
213
169
234
156
277
249
169
124
251
209
204
243
205
272
214
189
167
235
208
205
175
185
203
228
255
154
198
222
197
204
195
242
214
193
146
214
212
218
248
225
171
195
232
139
196
195
224
237
206
174
210
248
192
209
206
222
217
151
157
230
155
216
194
206
204
208
244
258
246
206
176
175
215
231
220
235
173
242
189
244
282
243
251
249
237
283
170
153
233
228
217
179
208
147
179
188
238
212
199
195
195
200
167
225
161
253
177
182
239
175
221
170
167
228
254
223
205
173
176
268
187
245
243
167
155
245
216
212
243
222
182
219
234
201
169
238
126
211
217
198
204
224
206
177
206
210
193
188
207
176
195
207
201
203
182
226
244
172
210
150
214
178
245
212
173
231
221
181
143
221
242
215
230
256
201
145
233
169
171
228
96
160
225
167
192
122
193
216
199
222
238
168
230
202
134
160
222
169
191
183
220
219
154
167
211
234
188
180
121
181
284
173
195
188
237
236
221
268
200
211
190
220
201
217
205
170
194
161
147
240
200
159
171
173
190
178
210
194
215
248
133
235
159
227
244
168
206
210
230
201
170
224
216
214
244
168
148
219
217
167
237
208
184
178
120
187
205
143
213
278
242
233
241
198
214
135
229
217
141
175
274
253
223
197
197
228
151
192
222
163
246
177
167
165
230
184
217
191
241
230
228
254
232
182
215
212
225
219
224
202
164
239
273
195
216
159
188
167
197
224
241
234
221
220
180
168
219
261
177
223
241
225
181
200
168
167
199
159
226
194
209
194
211
224
201
247
180
225
219
206
201
213
219
224
189
209
204
212
163
151
251
238
198
182
182
188
200
241
202
186
227
190
193
214
218
213
151
190
267
199
227
112
201
251
253
200
153
242
164
242
216
206
226
252
184
229
236
180
162
219
206
207
230
202
167
129
159
217
182
177
207
214
122
242
206
211
156
228
231
214
147
213
183
222
159
231
250
164
143
216
278
221
273
221
220
224
197
175
271
142
196
205
206
202
229
176
192
150
154
222
178
197
122
147
248
191
264
252
186
249
228
261
233
143
231
206
276
89
193
215
255
222
185
225
219
201
204
186
218
222
211
149
231
229
126
272
244
251
243
229
241
193
228
208
145
141
247
171
251
224
125
222
239
152
170
222
255
224
237
238
266
207
185
144
222
226
123
254
163
168
238
163
179
211
250
223
218
202
225
176
156
229
184
208
165
227
174
235
170
250
265
207
186
216
262
147
181
161
191
198
237
209
166
157
200
169
160
230
172
204
217
170
269
201
195
229
245
168
219
221
290
197
195
250
144
198
187
196
236
212
228
172
244
214
190
158
120
171
222
171
200
206
228
202
170
194
180
173
225
204
182
224
176
221
175
236
173
235
225
230
179
151
204
172
162
182
210
188
166
163
208
230
222
198
193
192
208
205
195
190
229
139
218
209
159
211
189
229
192
217
138
145
200
189
189
140
240
195
197
240
214
194
206
191
171
207
256
187
272
186
206
184
207
259
169
251
221
161
219
227
208
201
169
176
244
178
195
249
188
136
252
172
154
161
161
212
181
206
176
107
254
119
168
204
232
164
214
178
236
195
204
214
202
144
125
206
202
237
224
236
258
143
234
180
222
156
266
187
213
213
226
238
246
181
160
149
222
168
221
209
177
211
184
155
233
236
230
208
232
227
158
224
179
263
179
226
238
206
132
210
205
217
173
208
173
231
231
204
221
199
206
200
180
196
148
191
120
179
203
107
212
156
138
204
189
243
164
232
213
223
165
243
164
196
186
211
227
177
237
229
173
245
244
180
230
228
169
217
229
162
218
175
188
177
231
175
200
232
252
126
176
242
176
179
190
209
224
207
228
206
255
219
253
167
157
172
215
236
228
253
196
162
218
163
167
227
232
206
201
210
182
214
240
245
233
202
239
195
204
243
215
269
214
198
218
220
198
148
195
191
248
138
175
203
234
248
185
123
125
185
252
157
215
217
184
191
198
224
235
170
195
157
175
192
185
219
166
152
215
225
218
212
255
131
250
238
160
201
174
237
205
269
197
140
204
245
156
183
188
197
204
243
176
184
245
192
195
199
238
146
210
184
184
231
235
186
194
178
191
235
248
196
201
234
164
168
162
224
206
196
254
163
195
199
215
216
207
175
208
202
243
224
219
171
200
248
206
231
193
166
252
204
221
175
181
259
218
191
146
207
193
210
162
215
149
165
188
173
195
124
228
189
143
141
195
213
140
126
214
273
219
212
180
267
169
208
144
219
188
185
223
223
205
212
193
182
207
298
137
203
204
138
260
219
200
211
192
174
188
226
214
185
205
205
174
212
192
235
171
196
177
174
191
259
200
235
181
192
218
177
148
217
123
190
205
268
189
200
187
225
224
184
229
162
194
182
224
198
172
230
227
133
215
239
162
219
196
187
201
182
258
196
228
131
256
212
120
215
183
194
198
258
186
207
171
222
208
193
258
215
193
97
205
181
245
226
215
191
195
160
253
170
288
188
223
233
147
214
249
158
195
171
216
203
220
217
190
171
170
132
212
201
205
170
174
207
186
235
219
189
201
170
142
194
236
215
165
217
231
191
184
222
168
189
193
211
173
274
197
184
216
202
203
209
208
239
180
192
210
226
225
199
198
210
198
184
196
226
183
244
184
217
195
167
181
135
221
240
195
197
183
223
214
151
89
181
163
266
220
204
208
201
146
281
200
189
172
226
220
220
207
165
171
136
249
254
195
225
185
212
195
125
150
205
205
235
215
217
249
298
220
260
231
197
136
230
204
144
239
261
228
219
146
250
240
241
261
178
218
194
162
198
170
192
143
206
266
272
154
211
260
233
202
206
253
226
230
207
217
225
221
159
293
250
170
172
175
188
249
161
192
163
181
136
159
218
209
219
197
251
160
235
217
145
254
180
150
203
226
175
264
225
251
228
190
198
174
158
195
217
193
216
248
155
222
184
233
171
194
184
197
216
184
158
174
214
201
190
216
219
231
178
241
235
194
234
176
141
266
170
189
186
236
130
191
230
213
217
204
195
151
132
174
212
204
212
232
205
154
212
239
171
195
220
180
160
127
224
205
209
198
182
195
218
191
165
152
232
209
259
159
175
188
197
222
208
189
206
199
267
214
194
218
186
241
190
155
216
224
196
166
193
193
199
188
183
220
175
234
154
136
190
205
176
221
177
165
187
191
231
185
231
186
181
258
195
182
209
224
190
167
162
190
202
120
195
217
151
254
182
149
207
159
170
185
187
265
170
208
207
226
184
208
230
220
233
172
229
164
220
236
213
211
190
220
227
220
160
236
299
163
280
248
173
197
246
270
203
183
229
219
210
225
177
223
241
154
163
209
100
77
192
187
150
176
182
177
172
203
241
128
184
208
215
189
230
217
210
204
234
236
231
205
236
179
237
218
202
206
193
188
273
164
110
150
167
218
207
256
249
215
206
218
232
164
218
190
223
239
238
173
242
212
216
183
261
186
150
152
236
230
228
179
221
187
190
167
156
206
167
169
123
180
156
144
238
128
136
220
236
231
196
243
235
200
220
244
165
220
156
239
202
205
187
234
269
215
255
188
158
155
277
237
207
160
164
177
215
223
97
250
248
235
151
203
234
181
246
188
218
188
239
180
170
219
217
148
272
154
200
192
266
248
205
223
179
252
197
225
210
204
195
266
167
201
180
183
244
179
185
206
177
209
206
193
208
265
253
180
268
234
208
242
228
208
220
218
155
238
187
257
105
169
223
177
227
195
159
230
232
240
190
200
141
170
233
252
235
224
219
197
141
187
226
207
250
213
200
210
177
209
191
155
188
217
236
177
183
188
182
217
193
191
194
252
189
204
174
248
231
198
172
176
139
94
219
248
215
202
169
115
214
194
213
176
209
180
252
186
179
185
206
260
193
276
194
183
220
140
230
305
169
256
204
233
132
180
183
196
220
181
216
186
210
186
167
211
193
220
192
249
217
185
193
189
147
174
189
193
213
228
225
221
283
210
294
219
173
158
221
186
205
190
191
259
146
231
219
157
217
224
131
199
188
187
159
193
255
228
182
185
235
175
212
168
216
209
199
249
201
202
201
125
227
154
143
192
217
241
231
164
222
237
187
239
176
132
146
208
171
204
253
131
194
172
231
205
172
154
162
267
246
209
167
209
265
220
219
206
181
182
178
219
233
207
183
223
189
154
179
152
177
208
219
208
239
191
200
213
165
190
261
195
123
197
230
185
227
206
187
177
226
125
196
90
181
163
183
268
171
167
131
132
222
135
212
206
203
183
149
232
154
170
222
193
228
192
234
218
140
238
171
259
275
259
160
220
191
201
201
261
211
243
196
214
207
154
222
123
224
216
167
156
154
195
197
214
192
212
199
204
211
167
176
215
191
231
176
244
149
220
192
206
228
208
231
196
170
238
196
200
261
130
203
179
259
174
219
235
135
217
172
189
136
227
210
226
100
183
202
211
182
162
166
151
206
220
118
158
175
229
194
150
184
230
185
168
180
221
150
171
210
184
171
225
170
204
175
160
236
180
164
193
156
237
164
266
191
226
185
181
151
141
137
223
147
222
216
188
195
186
247
206
215
264
262
192
230
224
175
179
152
174
224
178
153
181
153
159
224
156
240
151
198
193
216
214
185
137
241
166
191
202
269
208
197
229
242
217
149
174
214
178
179
210
175
183
215
212
207
186
178
190
228
233
236
144
226
230
222
203
161
214
205
223
153
187
200
224
214
177
263
239
157
154
237
148
227
231
202
262
234
237
193
241
230
137
203
161
180
212
192
191
225
208
240
178
241
238
201
189
201
175
192
183
217
216
132
208
163
176
160
225
161
124
220
209
227
240
200
208
243
155
240
227
170
229
176
150
214
242
215
199
181
182
160
235
253
233
223
224
174
120
201
242
184
222
183
183
133
198
183
235
184
226
194
271
196
184
220
180
156
236
224
174
244
249
218
150
224
237
209
199
176
241
174
266
182
114
169
220
167
187
174
225
258
252
159
284
203
170
178
144
207
209
170
152
204
173
219
144
164
229
208
250
166
174
225
214
244
253
145
142
208
166
114
239
188
225
202
255
214
263
214
174
223
147
170
228
209
230
205
171
148
193
198
149
207
264
173
258
188
147
150
174
233
268
153
199
185
220
253
199
268
172
216
241
204
207
207
240
229
154
213
174
158
185
182
185
219
163
207
158
171
200
204
196
170
196
234
172
182
218
259
244
228
165
146
213
113
219
197
232
214
202
165
225
184
160
204
137
208
156
171
203
204
211
218
197
182
192
147
215
240
99
164
165
192
260
198
219
129
255
272
259
224
209
209
189
179
183
193
236
218
234
218
228
203
173
234
234
181
202
212
212
266
199
214
148
175
202
218
261
176
237
136
196
200
190
221
216
161
182
207
207
146
247
198
183
217
208
213
168
176
244
210
171
210
273
162
148
237
172
212
236
196
195
211
209
182
212
214
147
171
165
150
190
211
176
169
199
105
179
181
182
270
207
179
191
228
202
221
245
242
211
183
179
195
189
165
136
168
242
197
259
201
220
229
190
205
185
218
126
187
187
143
215
124
217
196
195
171
227
182
241
249
213
175
208
202
242
143
214
169
229
164
190
158
278
193
224
224
145
220
209
149
156
223
196
224
157
217
194
216
140
154
147
254
151
191
226
233
182
232
236
185
206
241
242
256
201
194
236
206
134
202
181
266
169
189
154
181
225
200
197
200
170
216
240
243
245
170
210
199
145
179
239
239
157
174
219
113
216
225
187
231
162
183
258
227
211
102
258
172
178
147
160
169
235
169
234
232
216
180
156
121
226
217
237
213
211
186
234
244
128
172
137
178
186
149
177
162
163
136
221
173
204
262
183
226
101
185
173
228
240
103
123
217
217
221
156
122
168
186
165
164
153
204
223
168
179
235
210
183
232
194
222
222
212
223
225
192
203
173
251
254
257
190
273
244
239
175
215
203
230
239
161
231
221
246
179
242
123
188
228
181
198
229
208
149
190
227
205
132
131
178
191
217
197
210
128
229
213
227
249
207
160
122
110
183
252
183
202
223
228
194
206
213
147
197
191
214
130
256
197
199
220
245
186
214
211
235
206
224
154
156
149
161
206
221
208
251
140
141
136
230
173
167
141
213
228
147
250
183
211
229
166
223
224
273
215
235
167
218
188
149
269
166
175
162
234
149
195
229
252
178
180
158
217
204
233
178
141
246
250
189
153
168
221
223
193
210
243
191
235
141
267
182
181
185
184
166
244
222
140
214
239
190
203
140
151
217
161
235
120
220
234
175
198
223
123
273
259
159
191
220
211
145
209
238
217
201
222
184
139
204
213
188
192
190
265
236
182
199
198
199
190
191
155
201
203
220
205
243
198
205
218
166
198
196
202
235
199
207
236
192
189
177
231
172
164
124
208
181
172
220
207
225
211
283
205
201
197
166
234
145
202
234
217
146
170
248
186
215
225
167
246
186
156
207
170
199
211
196
140
280
264
209
208
205
198
154
179
154
224
244
223
211
173
153
160
165
197
135
213
214
219
253
183
201
274
202
154
219
201
208
213
162
231
205
223
209
203
240
167
227
258
134
254
212
156
127
189
143
244
184
200
172
153
196
167
193
264
159
233
229
208
209
170
277
230
248
207
253
200
128
278
186
109
186
248
233
131
219
223
239
242
263
206
226
208
224
179
182
260
299
173
165
186
217
207
217
172
226
183
152
204
198
213
211
196
234
198
165
192
213
219
206
182
214
200
260
182
220
281
201
185
180
158
188
186
208
233
169
192
160
216
225
198
197
281
180
200
214
197
205
231
217
201
203
232
209
207
177
220
229
195
204
197
143
246
176
202
216
173
204
205
208
260
222
178
235
224
238
157
194
194
181
217
204
151
189
239
226
264
195
280
177
162
188
118
157
184
223
172
148
255
133
178
224
188
175
189
148
185
168
197
140
210
227
257
210
167
187
235
167
210
208
213
224
204
217
214
216
212
242
166
231
255
207
172
173
205
221
165
223
233
196
172
208
225
278
215
151
217
129
221
194
170
217
164
231
241
192
185
208
234
237
204
216
185
147
154
216
187
184
206
197
220
236
216
186
225
269
259
211
231
211
210
181
194
195
125
174
223
155
260
212
179
253
234
193
234
143
207
171
166
193
265
200
223
182
182
168
224
224
207
192
221
184
230
132
233
183
182
217
184
169
222
215
269
212
208
223
170
270
268
249
228
144
223
177
225
219
241
233
194
189
180
199
215
186
214
144
213
195
197
223
177
245
230
232
187
196
203
216
182
203
191
174
195
184
247
175
221
177
204
230
146
216
164
194
194
170
273
228
171
221
177
215
199
209
217
179
241
175
162
222
261
220
234
151
189
188
198
212
151
172
279
236
174
177
181
152
175
203
246
193
251
180
113
202
181
129
175
161
253
228
256
194
209
239
213
171
137
240
209
155
185
184
235
211
203
197
207
207
229
251
235
194
293
130
179
166
210
156
205
213
259
259
158
228
206
154
190
199
240
201
170
238
244
208
240
214
191
197
262
264
151
204
246
196
249
199
150
216
197
180
166
160
106
240
263
190
202
213
192
216
231
198
160
181
247
159
139
188
187
155
217
168
257
180
226
190
198
182
227
171
198
236
227
254
243
228
173
166
171
180
169
226
152
168
200
164
189
226
137
227
220
203
184
202
240
215
227
154
138
214
200
145
144
161
218
180
174
206
221
247
247
206
87
207
214
214
255
151
199
190
182
171
211
235
161
174
180
167
261
220
229
214
233
227
203
164
201
231
194
233
161
180
195
231
207
238
179
141
192
191
199
246
131
150
229
238
166
208
130
147
172
231
209
208
214
210
164
166
198
177
206
222
244
171
214
213
205
215
154
233
147
186
203
194
194
146
171
229
167
216
212
130
193
166
180
126
182
215
221
183
182
194
235
257
180
239
227
230
211
214
260
217
213
223
200
192
200
209
194
273
205
191
230
123
190
151
187
159
163
229
242
196
150
196
194
226
238
184
218
222
220
177
252
227
177
199
158
229
193
224
228
204
149
189
237
148
187
159
243
205
218
269
184
234
232
198
140
170
188
175
204
168
138
167
135
214
163
172
169
228
249
230
180
262
187
157
178
206
161
187
151
190
218
150
215
228
156
190
166
203
242
238
153
210
249
224
164
191
167
247
198
235
219
245
218
155
280
249
147
238
225
236
181
156
166
187
234
210
250
231
174
184
181
213
239
164
174
207
229
154
212
162
211
193
246
203
189
194
196
196
214
220
189
221
208
248
192
202
206
214
202
271
182
202
154
233
241
160
220
238
216
251
217
257
209
227
206
218
190
199
143
198
191
201
264
230
291
208
232
159
231
228
237
168
203
186
233
229
190
200
206
214
182
161
174
231
183
217
187
168
200
142
222
219
173
185
207
171
201
206
256
177
178
188
187
192
205
218
189
206
227
180
233
172
201
186
191
227
212
186
222
182
171
250
169
185
139
214
222
209
179
186
157
157
163
175
242
246
220
238
188
225
181
211
208
178
180
262
204
254
192
136
222
172
141
196
146
234
248
177
193
189
221
181
177
205
212
195
211
208
218
185
209
243
168
252
219
225
243
247
165
223
204
166
294
225
235
143
180
174
227
200
224
230
219
180
264
232
221
148
213
216
244
243
232
257
236
211
227
205
177
160
228
195
164
236
203
215
198
211
131
235
239
235
169
155
212
194
249
198
198
217
169
198
223
153
224
195
209
214
165
206
199
178
209
243
210
151
242
194
245
215
188
240
225
183
181
134
210
223
219
230
233
208
213
129
215
222
172
177
167
237
245
196
232
197
232
108
185
214
233
200
179
203
182
185
181
202
203
234
206
181
175
219
249
224
216
241
215
234
222
191
201
196
216
176
188
186
251
182
187
166
222
193
204
195
226
251
218
167
201
278
180
185
220
179
164
189
202
198
210
235
209
230
182
170
197
221
188
239
200
223
202
223
236
238
235
163
184
156
158
253
181
153
217
207
234
203
249
170
244
219
202
200
196
209
187
211
226
276
199
180
176
213
184
169
224
196
246
196
223
218
230
181
164
204
208
266
228
202
165
137
170
171
199
195
234
134
172
246
266
217
214
239
174
201
196
189
216
226
188
211
227
211
215
203
217
206
201
224
192
162
275
202
131
276
107
200
250
166
172
188
249
208
159
208
228
133
198
169
210
161
207
167
204
186
172
233
173
182
210
194
199
209
213
161
276
270
163
182
258
260
203
200
276
126
204
126
228
183
158
189
220
205
189
198
165
178
111
193
159
156
218
137
205
188
227
144
195
241
164
245
236
240
175
196
194
203
220
137
230
207
238
280
171
237
212
227
224
229
183
185
231
175
203
248
184
182
206
204
229
183
219
187
173
202
199
238
199
204
228
189
229
195
204
162
193
131
261
213
171
171
199
261
263
199
219
228
207
184
204
207
214
230
159
186
181
213
179
199
233
205
212
188
233
155
187
224
216
189
195
157
140
191
185
183
189
190
173
218
243
192
206
192
169
224
190
191
204
245
255
221
221
246
152
169
212
146
199
173
182
184
232
184
167
230
218
228
245
233
194
247
188
161
185
164
209
217
150
176
250
222
196
189
210
144
184
129
236
180
221
219
246
206
201
212
232
181
216
219
215
219
206
215
129
191
176
241
196
243
260
189
176
163
121
192
188
240
244
235
188
275
242
208
200
142
186
165
259
184
182
266
215
241
204
191
236
202
223
185
205
176
148
188
235
221
215
253
118
244
204
226
205
209
188
189
188
246
180
184
120
200
230
294
178
185
162
166
221
199
200
146
234
243
232
230
198
213
189
179
225
158
233
212
230
223
111
205
223
264
232
211
272
169
181
226
223
187
201
165
218
261
209
198
202
227
205
174
237
154
239
212
234
187
197
237
134
228
262
225
170
132
236
261
190
154
168
221
167
156
222
204
199
239
237
171
268
224
166
241
245
174
196
216
275
173
154
153
167
125
221
195
189
167
152
277
207
184
150
231
182
252
274
190
174
254
206
223
239
235
161
159
143
151
170
218
154
222
169
236
237
177
235
125
138
191
186
219
159
198
217
159
208
101
205
171
222
221
213
218
202
199
189
205
232
253
148
164
245
170
236
194
201
208
245
265
191
132
177
191
219
179
230
168
173
245
181
182
138
189
245
220
167
234
197
256
219
235
181
188
216
193
174
250
138
203
167
126
220
200
205
196
133
216
187
221
216
121
177
256
185
214
156
128
201
188
181
164
193
148
182
206
242
156
170
267
183
194
243
227
169
166
168
257
230
222
215
154
169
209
170
179
226
218
148
184
214
214
196
255
213
225
234
225
231
232
193
205
233
248
210
232
278
221
150
209
214
196
230
160
220
192
228
283
192
197
189
202
210
115
177
188
219
136
163
223
130
166
189
184
224
138
169
184
244
175
208
236
149
221
223
251
208
235
270
225
246
245
226
163
226
195
148
224
146
231
210
239
153
164
134
172
234
169
182
177
180
197
227
203
150
223
222
248
214
224
222
183
184
199
234
241
143
158
200
260
214
180
159
208
258
220
224
157
156
180
245
231
254
147
214
166
145
177
196
199
209
154
210
183
242
242
153
136
164
225
169
198
133
222
196
225
228
157
186
171
278
186
194
129
180
222
124
115
203
259
198
142
194
225
205
242
219
205
210
256
164
190
222
200
169
185
176
198
147
192
211
243
273
222
119
242
229
228
255
155
230
202
157
225
242
231
224
159
208
186
158
191
257
223
188
147
239
181
183
199
169
196
248
147
194
204
229
188
196
200
248
262
116
205
227
176
241
212
225
224
146
199
174
179
240
188
210
185
176
197
207
155
214
171
209
168
204
147
228
174
168
221
131
171
233
218
180
179
173
149
178
217
200
178
197
218
180
229
194
209
235
239
199
227
150
145
224
205
219
213
194
182
198
220
224
187
234
230
183
243
194
147
209
207
192
222
148
258
207
193
203
234
194
218
223
206
190
194
176
225
170
149
218
211
157
177
174
122
217
184
249
222
167
190
168
162
139
185
148
150
149
242
243
194
224
132
216
209
183
253
156
226
181
239
249
187
203
234
155
203
210
210
193
218
187
212
163
216
174
180
224
203
179
181
204
220
198
151
188
213
166
254
186
157
172
216
178
210
246
209
158
210
233
223
136
247
211
204
153
235
191
129
209
163
172
225
244
239
193
239
220
176
181
171
251
174
251
215
174
199
216
249
186
214
200
154
211
206
202
226
251
215
162
198
261
203
240
172
167
221
236
147
211
222
137
185
189
228
204
169
183
176
244
213
212
228
226
228
209
244
210
171
158
194
237
173
210
207
189
205
193
178
189
99
211
214
161
156
195
247
255
164
185
156
167
220
233
224
155
167
196
97
259
207
188
195
185
214
243
222
260
132
221
181
158
240
254
168
266
190
180
151
165
199
172
189
231
212
185
230
219
185
195
248
155
231
184
191
239
150
247
171
140
231
195
202
243
190
191
227
137
161
221
192
235
216
241
191
196
161
188
221
150
207
207
175
139
176
207
252
185
242
230
220
192
166
201
154
214
163
183
234
236
202
158
123
216
248
173
194
230
232
229
140
239
270
223
184
204
189
185
221
112
211
214
190
202
127
210
245
209
231
228
243
196
197
188
148
209
222
283
218
162
180
189
214
226
177
132
169
250
191
254
196
175
199
177
168
254
164
191
238
246
162
178
120
201
203
218
236
171
192
215
166
231
226
217
119
240
182
168
244
144
206
209
212
225
234
208
171
191
191
154
193
216
211
194
235
199
184
225
198
212
173
204
199
233
175
153
230
218
216
226
180
207
191
240
257
209
182
246
235
163
192
260
219
196
198
187
202
140
233
209
248
262
196
170
215
235
241
148
184
247
228
224
176
204
153
145
150
216
212
196
163
251
207
187
158
156
194
238
248
179
176
204
238
188
144
174
262
180
200
181
206
188
227
221
169
185
227
239
254
194
165
233
198
150
186
146
149
205
182
224
147
191
228
211
207
270
214
186
159
236
197
215
244
220
151
201
178
260
177
215
180
176
170
230
169
224
194
186
176
171
179
241
229
236
216
244
215
129
165
208
205
214
210
183
176
185
190
235
217
145
208
185
289
269
164
188
183
178
210
170
171
228
218
185
194
210
193
178
166
165
226
239
154
203
172
201
162
121
265
237
154
224
190
203
263
238
212
171
252
223
198
206
189
173
245
179
228
245
209
200
142
178
175
219
197
178
266
284
197
217
173
204
231
169
254
186
168
190
177
194
162
185
169
108
215
198
202
206
230
226
242
216
227
198
161
251
220
160
254
231
212
169
214
190
215
199
235
181
252
233
244
173
206
249
210
210
178
267
201
235
246
207
247
155
164
203
157
147
243
176
209
180
170
171
254
188
163
240
196
198
198
183
187
271
175
193
274
182
204
233
231
153
224
188
207
232
205
174
160
259
150
144
174
151
218
179
135
235
214
213
242
228
229
205
239
183
210
170
180
240
231
240
247
210
239
197
221
201
182
218
197
180
185
158
264
228
213
116
243
153
191
250
239
178
149
208
166
190
201
208
266
109
230
233
138
199
210
233
206
235
230
199
176
201
246
129
152
199
227
185
221
246
183
179
256
254
242
187
199
192
203
228
173
203
264
181
227
197
185
181
198
218
221
224
165
135
226
208
209
192
177
132
201
159
234
200
169
202
173
169
176
216
202
218
182
259
198
184
232
177
205
249
162
187
247
229
205
171
196
137
192
145
180
231
194
180
98
216
162
235
251
233
241
189
209
130
207
197
220
237
174
233
221
230
192
242
226
151
201
186
212
139
196
194
169
200
204
248
147
151
224
193
195
188
178
191
232
189
238
165
197
236
193
207
212
202
244
133
232
249
149
263
194
192
179
215
181
237
186
224
211
247
164
231
189
203
253
215
212
233
247
253
206
189
149
224
235
185
208
259
223
218
188
214
129
162
143
137
144
233
181
203
211
223
219
232
175
146
178
194
174
229
183
165
215
201
269
261
199
225
165
189
166
124
203
162
168
203
175
216
179
213
230
171
181
182
196
216
151
193
167
246
232
155
204
188
236
230
163
212
191
181
275
192
177
124
177
218
244
160
210
261
258
217
196
229
255
163
226
215
183
140
205
226
255
203
244
208
233
203
178
175
171
214
212
211
162
175
249
177
246
168
179
206
170
206
233
163
185
193
136
201
239
167
189
209
241
235
180
200
170
162
218
178
237
219
189
171
197
228
235
200
200
280
231
189
223
252
179
239
230
225
145
277
218
153
196
188
203
192
190
264
178
185
186
209
228
203
206
258
201
191
228
233
231
181
255
192
227
223
218
197
180
174
160
219
256
168
235
208
199
242
211
189
228
182
198
209
185
240
151
206
205
232
259
227
183
236
229
234
239
160
158
161
221
243
212
156
208
165
166
201
146
258
186
144
211
204
173
187
184
224
237
219
222
197
205
241
213
212
238
227
202
149
224
194
230
212
221
191
202
214
236
235
231
200
216
189
214
198
152
251
126
133
179
169
235
151
258
213
206
157
217
190
204
228
195
187
212
137
152
236
230
220
258
157
188
127
254
196
237
163
156
234
219
235
187
209
189
180
207
202
125
211
218
153
220
205
167
238
239
211
161
162
281
205
205
185
204
182
249
192
120
145
183
201
255
187
199
184
208
185
195
204
165
225
225
216
203
178
207
203
189
222
257
267
230
174
177
213
160
188
254
179
169
197
204
198
202
161
186
220
217
283
218
155
181
151
255
188
136
139
186
226
202
196
213
180
224
211
221
143
168
224
191
215
195
179
261
175
219
190
263
221
201
167
224
227
200
223
197
130
185
205
189
156
265
262
152
211
238
245
173
202
172
165
146
189
272
222
225
194
255
198
217
216
213
234
179
231
202
242
205
211
197
207
191
203
216
230
192
215
223
291
145
222
231
176
206
248
203
131
199
211
163
175
193
185
251
168
259
170
212
202
207
117
125
157
159
257
161
177
195
147
187
208
247
173
196
183
211
192
202
226
231
178
217
268
108
159
168
229
194
128
189
224
180
208
192
230
186
194
213
206
179
200
199
253
221
193
281
199
191
245
208
214
189
240
167
160
192
193
164
188
156
181
229
212
216
238
148
197
135
203
240
216
212
208
209
197
264
218
203
206
203
177
216
165
215
157
232
277
208
226
242
144
176
193
177
151
198
204
194
225
187
227
157
236
240
204
130
224
188
244
216
238
222
169
156
176
210
158
228
251
208
189
235
183
114
254
153
232
245
168
221
175
222
183
182
216
284
198
160
186
230
183
248
182
178
187
172
172
227
211
270
234
192
186
205
175
231
172
208
236
202
205
217
185
175
221
234
196
268
177
159
216
181
237
262
129
208
242
253
205
147
196
248
167
193
250
219
245
145
241
223
212
259
257
190
217
224
242
237
165
124
205
213
186
120
210
270
131
187
187
129
201
160
160
122
167
216
189
170
170
215
198
263
195
201
118
213
192
204
219
177
202
189
153
158
203
159
266
210
208
198
137
232
191
172
128
210
163
203
187
225
220
198
226
235
187
190
154
177
194
176
190
151
142
217
242
188
197
214
194
215
200
189
155
216
188
218
271
222
260
230
228
219
160
175
110
181
253
213
152
161
214
258
152
240
189
197
197
210
143
194
251
174
212
201
247
211
160
167
204
108
247
141
199
222
249
267
165
137
173
192
232
154
210
239
161
187
193
235
205
213
257
149
224
184
242
229
145
240
232
180
251
146
261
175
264
201
182
181
211
186
211
208
191
207
247
250
192
141
208
247
214
245
126
183
220
237
162
178
250
193
144
255
198
127
217
231
229
208
170
193
184
150
183
167
217
228
193
228
214
206
234
217
189
229
146
176
223
201
160
180
203
178
132
229
173
238
142
184
219
219
176
218
201
129
239
190
183
170
176
196
198
171
149
175
244
249
143
170
210
146
216
187
184
226
125
206
197
255
258
243
256
208
240
213
238
176
197
215
145
178
201
182
192
178
194
219
221
141
174
224
160
231
182
221
234
242
210
192
173
224
220
247
171
211
227
196
121
223
167
239
109
188
169
149
193
149
199
196
205
240
204
181
237
203
166
204
183
220
188
183
213
229
221
202
249
215
211
168
208
212
156
211
271
227
213
215
212
232
220
145
231
175
190
196
207
197
202
136
166
244
120
180
194
186
227
181
237
246
246
219
263
217
203
202
166
156
197
225
242
221
209
199
200
241
247
192
173
260
213
286
128
171
201
221
198
207
119
220
222
142
150
236
150
170
263
123
186
249
205
265
158
191
257
210
214
152
162
209
122
134
168
151
214
249
245
176
170
181
210
193
166
171
229
192
182
175
210
184
147
157
230
175
145
198
224
205
208
202
172
220
270
233
171
191
176
193
197
122
243
224
184
207
191
192
201
169
236
199
169
177
242
151
227
230
187
242
173
223
225
220
192
190
151
200
190
250
190
191
246
233
226
232
260
178
243
128
185
139
163
270
196
208
190
204
184
218
170
236
202
225
227
197
193
185
180
224
173
181
151
152
159
228
212
229
156
209
196
198
181
203
192
211
142
158
239
145
237
169
274
158
198
236
182
180
172
186
237
201
188
169
220
151
122
172
218
215
179
206
168
159
210
215
211
194
193
246
164
213
231
113
198
239
195
187
224
190
155
199
185
168
191
195
223
166
188
254
166
183
190
182
206
198
155
221
192
166
239
176
204
152
262
212
178
194
253
168
230
205
212
153
204
218
197
227
143
215
194
222
203
240
226
182
262
251
192
205
178
176
184
199
215
179
166
142
211
186
207
155
230
207
156
165
223
226
197
153
236
181
248
234
206
197
234
253
214
172
218
215
225
252
236
239
212
175
207
249
234
270
213
218
205
201
230
187
179
239
149
301
230
230
162
203
205
199
195
199
210
173
243
179
165
205
177
220
237
236
198
204
208
187
231
237
154
217
185
153
235
227
190
230
240
159
266
190
161
224
269
196
213
174
245
225
181
174
171
216
209
186
168
175
172
161
185
194
235
173
276
194
214
172
234
252
130
226
158
192
191
209
205
205
169
189
199
300
192
203
190
188
262
200
224
207
231
216
184
171
208
203
213
128
208
204
119
159
198
122
160
199
244
210
195
189
131
211
114
200
197
202
225
206
185
191
221
160
194
155
222
205
160
186
185
199
201
140
190
153
240
213
153
165
224
191
213
244
198
154
139
228
193
163
257
237
194
190
173
198
194
223
167
169
149
185
213
218
184
244
247
234
208
283
222
185
234
151
211
187
240
192
135
239
204
110
191
169
228
236
165
241
255
238
202
181
183
169
160
154
169
154
136
144
136
158
192
216
149
163
199
223
142
235
195
228
210
227
169
202
208
197
147
217
180
190
165
210
222
247
186
222
164
250
216
176
226
110
178
198
197
148
163
187
205
208
137
186
156
163
164
179
203
162
227
176
201
142
173
209
173
178
176
185
188
165
172
215
221
194
176
238
180
192
249
153
134
197
214
156
185
167
232
227
165
168
172
160
223
247
116
209
215
187
209
194
215
162
199
186
219
194
179
195
142
208
229
223
227
177
210
152
209
205
214
193
223
171
192
200
152
177
215
237
232
148
205
196
174
237
149
237
202
198
178
183
165
193
220
209
239
197
170
220
259
197
251
226
166
226
231
186
184
173
151
224
241
233
207
174
231
191
152
143
249
167
157
146
193
258
217
209
156
197
166
187
209
174
245
194
209
223
174
161
187
174
214
235
183
211
175
200
194
236
181
166
191
207
258
164
225
230
249
165
143
141
246
202
146
228
204
192
192
247
222
229
194
220
209
167
167
146
211
193
226
152
145
210
162
224
200
164
203
199
232
217
229
199
189
264
199
223
142
193
212
171
173
194
170
162
238
190
169
205
152
230
197
185
154
195
234
154
168
186
217
247
275
133
212
248
292
181
167
210
186
163
211
176
145
189
235
186
129
179
261
251
200
162
215
240
240
229
134
202
263
216
203
189
203
192
151
243
202
241
215
163
178
216
243
183
145
203
181
234
245
218
171
194
171
230
175
214
246
104
231
225
210
204
159
209
130
171
206
218
237
218
196
197
203
215
229
166
190
239
213
187
191
180
235
241
238
280
259
155
191
273
238
207
232
167
153
182
197
214
188
182
218
166
165
231
218
204
184
257
240
199
205
179
160
237
194
164
175
219
191
249
199
108
167
236
154
206
134
166
177
250
146
202
242
154
201
257
172
154
206
258
145
185
210
197
205
216
140
214
147
203
228
204
167
221
227
245
202
261
211
167
183
222
191
246
203
197
231
168
189
199
219
191
193
161
168
258
236
264
242
193
207
113
138
231
216
159
190
211
129
242
174
182
201
202
198
217
211
208
180
195
140
153
161
196
168
124
237
263
218
200
221
224
235
230
247
229
160
202
228
184
205
251
203
235
205
145
232
182
216
131
215
155
186
191
217
159
231
230
147
149
237
238
212
230
261
238
200
183
180
227
263
204
119
193
227
186
220
177
140
250
157
160
211
160
245
225
201
211
202
260
218
260
183
207
246
200
107
161
124
239
205
207
206
239
145
217
227
185
176
171
225
202
165
225
186
172
228
211
182
187
225
145
167
214
193
235
204
205
174
297
188
195
155
225
185
127
187
233
170
145
169
233
146
252
223
210
240
173
215
220
249
190
133
214
136
193
222
147
244
249
248
225
142
209
142
145
218
190
175
215
199
237
225
207
211
230
211
199
190
180
260
203
220
174
213
166
226
174
227
210
154
218
201
192
228
138
158
180
261
262
165
219
215
245
233
128
225
200
217
195
218
158
177
183
217
244
183
187
248
189
173
178
173
173
183
230
298
213
226
197
197
188
221
198
180
262
204
189
158
213
229
238
216
223
236
246
126
175
149
166
170
221
190
181
179
218
244
221
205
206
185
237
181
207
174
232
223
239
194
218
203
172
235
196
198
201
186
173
254
234
198
222
167
246
235
154
168
200
126
168
131
222
214
145
221
235
172
194
182
194
216
193
178
232
159
259
221
187
251
200
188
227
176
232
99
196
132
150
222
209
251
215
197
219
177
175
204
160
248
162
234
206
193
221
261
210
172
212
198
205
255
177
217
195
196
112
230
226
259
203
173
218
232
173
228
156
192
223
172
242
156
217
204
205
153
242
162
251
226
247
264
194
245
238
198
174
191
213
176
212
178
236
213
176
215
142
198
198
170
182
274
165
135
211
173
216
186
255
216
148
258
208
182
218
211
177
216
159
199
207
177
188
263
229
193
175
195
218
160
203
186
265
167
191
187
136
236
203
157
206
216
239
242
190
190
227
203
196
227
134
219
154
220
218
223
161
150
192
242
205
234
175
157
184
213
204
154
228
203
236
188
230
177
147
268
160
198
229
187
237
233
267
200
287
266
182
203
259
230
128
216
271
206
194
194
142
169
173
212
247
227
192
250
156
218
195
229
246
142
192
207
116
209
178
169
246
236
191
186
245
222
173
162
210
214
204
210
141
229
140
229
244
237
229
222
212
227
220
202
189
197
159
242
221
210
250
170
209
212
227
210
220
157
220
205
191
184
209
183
188
145
220
211
197
211
167
215
218
187
201
205
185
219
219
179
249
172
199
206
149
237
170
189
194
204
199
181
185
197
177
169
221
246
170
231
248
209
176
217
244
203
213
218
290
184
188
251
221
159
157
192
245
192
143
171
206
186
251
245
171
210
301
200
197
243
218
261
194
219
237
200
190
201
199
188
235
157
225
233
277
155
213
154
229
181
156
219
156
188
224
212
206
206
183
225
240
159
241
173
231
171
169
208
229
234
133
188
195
226
195
279
217
82
173
201
197
194
177
181
238
173
168
224
257
288
206
267
189
152
219
240
194
172
245
193
170
176
194
235
195
249
261
166
195
185
191
255
208
124
239
183
206
154
175
187
228
249
217
178
134
162
225
208
236
220
195
163
204
188
199
191
200
220
241
222
208
264
190
184
158
169
208
220
234
222
183
188
198
221
193
217
170
201
225
146
120
137
227
219
191
245
241
165
163
191
215
191
206
199
273
218
123
186
210
141
144
171
182
232
128
197
208
142
155
160
217
193
204
261
205
261
218
205
218
248
93
130
196
179
188
192
264
233
169
229
140
281
167
202
197
228
219
210
201
215
183
207
193
169
151
222
281
167
189
112
219
148
216
223
188
240
245
286
221
126
219
244
200
205
282
208
131
286
189
164
141
186
184
133
196
119
167
154
175
226
193
200
186
202
219
165
129
213
207
182
222
192
228
134
190
229
175
202
202
246
217
126
197
152
181
153
223
173
154
184
230
218
136
191
211
197
162
229
165
198
154
198
211
185
226
241
229
176
142
189
191
182
168
201
174
203
174
247
195
223
197
231
211
266
217
147
144
228
175
258
160
238
209
170
162
125
257
174
176
230
155
212
253
195
206
169
224
199
229
187
202
197
250
175
213
217
208
147
192
190
155
176
227
194
247
159
188
151
176
185
236
193
177
141
170
246
240
148
245
212
176
233
235
244
193
255
163
224
204
209
149
177
119
176
168
111
193
187
161
199
240
179
187
216
183
237
241
244
164
217
199
179
188
226
212
189
207
156
184
217
200
224
208
193
193
164
130
219
219
289
252
203
168
252
211
167
222
149
140
127
239
156
195
145
190
193
238
155
238
192
236
175
218
217
216
190
277
195
258
197
192
163
207
169
87
175
192
264
210
244
182
180
164
255
175
196
165
196
178
156
226
193
190
197
176
213
226
195
180
186
228
149
196
157
223
210
169
167
159
232
144
189
212
237
157
232
210
229
192
225
226
244
236
146
213
211
200
194
216
219
183
188
229
226
181
255
216
169
229
201
190
189
161
220
169
191
177
232
212
135
181
219
203
204
269
182
195
164
161
142
249
185
193
186
177
87
185
174
238
184
151
226
238
195
213
215
213
223
216
152
159
149
244
222
174
242
248
157
149
246
221
180
160
180
191
160
232
142
262
194
221
213
222
170
172
195
215
154
239
237
127
200
192
217
212
199
167
163
188
205
230
207
230
246
147
210
115
226
191
253
216
221
230
174
244
188
167
232
234
241
159
192
190
173
264
216
210
201
214
190
220
185
171
176
246
202
172
195
152
166
223
176
207
178
208
235
159
209
225
197
227
254
208
112
145
159
222
257
190
228
234
150
242
174
181
247
225
267
202
196
205
162
152
212
226
204
216
221
244
212
194
150
190
185
160
223
208
231
242
243
200
254
201
137
197
181
183
207
175
172
166
181
193
185
194
252
113
239
259
175
240
171
201
176
198
135
225
209
207
221
184
250
251
188
312
193
258
201
230
169
237
198
162
157
180
260
206
181
209
220
194
128
222
191
158
215
186
238
254
221
167
227
184
165
212
263
178
181
154
169
235
193
210
174
163
235
239
239
222
225
213
258
197
172
232
211
219
257
203
193
237
241
159
232
230
125
143
194
228
208
193
145
258
176
245
183
150
219
192
199
184
225
194
212
182
259
200
184
165
179
184
161
157
202
171
138
233
200
248
162
269
185
141
189
219
152
228
194
261
227
185
252
229
187
173
219
222
200
195
189
203
168
223
225
248
199
203
190
232
237
152
157
216
125
145
235
212
186
238
157
228
188
174
189
239
169
189
157
221
202
200
232
222
220
226
106
189
195
189
197
171
171
220
224
185
217
179
234
216
201
216
248
268
155
226
228
230
162
187
176
216
157
201
215
195
249
168
200
190
148
220
215
245
184
170
217
194
191
237
189
184
154
165
218
203
218
164
211
190
209
195
258
193
163
207
158
209
182
208
256
189
177
198
170
159
241
263
165
234
222
168
187
191
206
177
197
242
145
194
156
248
137
230
267
188
218
228
208
210
186
210
183
225
160
223
200
165
254
206
191
252
235
218
127
175
170
228
247
242
239
263
229
187
174
240
235
196
241
213
157
154
232
213
198
171
244
213
205
172
165
248
195
216
157
167
239
243
184
202
219
189
231
203
255
169
230
230
252
167
219
186
176
179
204
193
227
222
236
256
176
167
167
184
184
169
221
218
171
204
171
195
158
177
174
209
208
173
242
192
210
182
220
205
164
209
189
168
181
170
202
246
193
215
190
204
202
230
222
140
199
223
172
219
214
212
223
206
208
205
158
243
228
217
184
223
190
196
194
235
229
240
208
191
190
190
249
205
148
205
206
204
187
260
196
250
172
196
149
226
269
220
186
194
183
216
217
206
152
193
205
189
193
240
180
215
176
235
165
208
216
204
217
180
217
225
167
172
275
248
169
213
195
203
223
136
243
164
187
234
178
211
195
172
206
117
225
152
229
178
180
198
206
221
186
229
222
213
166
250
243
201
205
223
263
213
275
196
224
218
248
236
204
221
185
126
238
181
192
231
214
182
174
263
187
216
209
227
256
139
197
217
180
252
248
163
230
182
220
198
105
212
211
272
224
266
172
206
219
228
204
227
187
224
223
193
224
149
224
220
257
203
219
182
238
221
191
242
253
250
271
235
159
187
188
210
136
185
188
232
199
250
210
227
205
198
155
212
191
249
136
180
196
203
232
254
180
230
211
233
215
270
252
251
133
243
228
229
177
187
134
211
169
216
245
155
207
215
153
237
233
151
207
173
207
205
199
198
217
159
186
189
200
147
223
157
196
245
113
192
244
223
225
214
206
236
165
197
246
236
207
218
188
201
210
207
202
232
211
178
247
140
159
208
253
212
208
187
217
236
169
112
226
190
218
236
135
214
240
161
177
231
242
194
236
218
203
235
193
274
193
221
204
198
187
197
185
145
240
144
173
260
184
192
189
219
227
182
195
239
212
251
127
208
253
217
180
251
241
276
180
233
197
197
201
209
180
220
231
231
210
187
216
218
241
228
194
228
221
201
197
220
256
168
181
202
178
219
157
172
236
211
247
176
227
169
239
213
178
270
151
174
211
263
148
218
160
270
176
197
224
221
191
233
232
201
217
187
207
226
210
250
204
195
233
210
172
176
179
207
204
173
200
184
173
231
222
230
137
223
196
171
254
156
230
164
92
188
202
229
145
190
228
145
228
226
187
219
211
266
172
186
153
206
200
147
186
158
202
186
208
226
239
255
190
272
238
212
269
214
148
188
161
173
174
155
235
257
210
232
202
189
194
204
196
182
255
230
177
276
152
225
191
140
148
230
211
200
218
210
191
224
164
184
210
203
239
199
229
248
233
164
230
180
194
188
184
151
226
136
148
153
227
205
252
212
190
150
212
222
149
175
161
186
239
231
232
201
252
202
165
219
164
246
203
183
221
148
195
218
159
260
196
195
192
139
139
207
211
181
177
207
173
176
190
167
202
193
183
213
185
238
189
195
232
198
221
249
249
241
174
140
134
160
189
234
248
234
244
232
244
227
222
183
176
188
190
172
148
161
195
167
217
181
202
175
270
203
160
154
157
183
149
108
240
231
168
173
262
149
159
226
247
216
188
215
174
219
187
211
152
188
198
206
189
214
196
245
235
214
201
220
222
174
184
237
207
190
209
199
134
190
233
213
164
250
203
228
207
247
210
169
240
158
157
176
156
206
210
265
259
188
205
203
155
175
267
186
195
217
154
225
192
212
268
188
262
202
262
169
223
194
192
171
295
217
194
233
189
230
220
217
185
195
183
250
165
195
223
234
230
131
213
203
212
160
236
210
163
162
184
151
220
239
206
128
202
208
221
175
193
156
188
208
181
178
255
159
161
174
183
169
232
153
171
192
242
207
202
146
205
246
133
210
254
222
239
161
186
227
208
218
167
274
192
207
241
193
190
198
216
170
203
222
212
203
259
206
162
201
223
239
272
206
223
164
200
160
162
246
208
191
201
146
280
261
240
166
261
216
182
173
217
213
155
157
194
230
231
221
165
211
134
252
179
247
208
164
175
232
141
153
142
186
266
236
169
228
123
231
196
203
179
169
176
237
171
221
176
219
187
172
181
204
216
121
158
196
184
201
191
187
181
206
202
153
174
258
174
197
213
222
217
157
202
223
173
184
232
222
244
256
170
207
145
205
213
124
239
255
247
266
212
212
130
188
243
200
230
136
247
190
204
247
240
154
235
197
187
169
214
189
183
219
225
215
192
207
213
181
242
208
230
204
205
217
245
135
232
206
193
211
171
189
217
214
188
238
207
186
178
140
151
133
211
229
230
235
189
175
246
160
195
231
209
275
249
240
179
214
176
166
187
233
198
170
241
205
236
249
213
179
187
182
147
224
175
155
198
218
143
183
251
182
194
237
188
206
206
250
246
238
218
218
192
189
166
155
198
241
188
225
241
246
257
238
222
205
188
194
214
169
154
225
241
152
196
221
222
221
218
274
173
264
174
133
248
195
177
127
215
173
166
186
179
143
163
215
229
170
186
237
292
187
190
140
193
210
220
202
143
180
215
205
199
153
191
162
239
171
195
239
261
199
244
215
199
114
228
261
175
174
206
188
166
201
198
174
218
191
173
211
189
204
171
212
234
227
197
213
206
174
195
161
191
226
229
145
221
188
210
187
159
223
268
189
192
188
197
227
182
271
175
155
128
207
230
193
217
215
222
209
200
225
182
163
179
139
188
229
216
126
277
181
167
219
184
193
158
175
183
218
152
201
208
248
192
216
156
213
148
162
201
287
187
197
223
167
204
183
203
183
199
239
190
204
217
231
216
264
179
259
142
218
180
172
171
202
150
185
143
219
159
137
189
212
176
230
221
241
208
212
231
208
226
161
232
173
203
199
205
216
169
177
213
160
164
195
212
175
164
195
217
151
163
199
215
224
195
182
207
215
209
214
214
173
229
179
181
140
204
193
226
136
207
233
211
227
261
173
217
166
205
135
170
232
183
220
235
181
192
151
169
155
170
195
197
221
143
211
155
168
234
170
173
167
169
250
178
189
284
239
176
231
165
169
67
230
235
225
259
140
173
198
206
180
168
174
218
169
177
206
222
159
202
167
135
168
156
171
195
216
201
234
201
208
223
214
214
175
129
212
230
128
173
187
255
209
239
188
162
218
199
213
209
233
225
251
169
172
178
158
218
203
244
266
216
192
207
181
220
195
175
199
228
218
222
218
224
220
200
179
150
229
243
219
200
215
197
193
180
211
220
184
201
201
188
274
174
241
222
163
195
223
170
240
196
232
244
267
220
213
271
134
150
174
183
189
174
202
187
206
196
173
251
134
213
255
266
194
161
238
213
214
177
191
205
193
252
210
213
228
222
187
209
189
228
191
231
213
247
174
253
162
234
207
167
242
167
200
209
254
194
137
199
257
173
240
190
150
194
218
143
164
205
215
223
141
227
121
188
186
126
219
186
206
226
204
192
234
214
138
237
193
252
228
292
211
197
207
244
199
185
243
263
181
198
200
191
183
129
162
233
231
222
173
225
205
179
226
225
191
232
176
106
253
223
168
190
252
242
198
169
206
206
189
260
192
203
214
141
177
225
189
215
212
195
236
151
206
214
230
187
182
185
211
239
237
183
116
182
172
216
208
177
218
209
237
215
175
190
159
149
228
184
250
167
187
199
245
217
234
185
154
213
222
186
180
126
159
168
250
227
174
225
177
170
197
149
152
151
231
157
214
219
215
243
204
153
209
225
200
170
195
141
224
191
189
180
153
217
224
241
153
231
122
251
149
176
159
284
207
212
178
230
219
177
202
258
186
186
224
210
255
211
193
205
187
209
251
239
172
217
176
139
263
196
263
191
185
180
225
228
166
162
197
226
210
189
131
252
191
157
227
182
221
255
212
231
194
250
240
220
130
168
215
212
191
225
243
284
125
235
162
203
154
258
156
169
234
208
167
223
183
208
236
217
200
232
201
239
180
233
222
187
195
229
251
194
192
159
165
212
159
254
209
138
247
239
174
230
193
163
225
228
199
186
167
233
223
200
188
125
228
195
200
160
227
139
204
203
164
229
211
220
181
214
234
272
271
175
202
206
135
188
218
176
241
126
209
137
183
194
153
161
207
245
104
188
241
200
218
199
219
191
233
217
251
251
168
167
228
250
174
189
162
194
220
222
236
230
225
202
210
233
196
226
255
178
208
177
170
130
221
206
159
252
202
229
223
236
237
188
206
216
274
189
149
213
246
237
248
218
210
210
188
179
228
162
176
216
221
144
157
183
156
212
274
198
223
189
186
271
215
122
247
181
219
242
200
221
139
205
236
213
193
168
181
214
183
171
214
186
233
220
188
272
207
205
221
190
183
161
219
226
126
173
244
242
218
190
183
191
149
179
146
280
197
218
175
197
181
191
269
225
132
233
129
201
151
208
175
269
176
222
157
227
149
229
259
189
163
164
172
253
174
208
225
164
231
214
151
200
229
173
180
224
195
179
196
252
208
141
234
228
240
187
205
177
208
224
165
222
200
155
223
251
240
253
204
148
213
169
223
218
215
224
216
204
225
194
176
244
176
252
217
292
189
133
215
160
202
124
141
262
223
107
222
262
149
146
175
225
233
174
216
198
191
187
206
230
194
187
178
259
166
220
248
199
118
242
209
161
143
148
138
207
255
213
221
226
249
245
159
163
190
209
164
212
190
215
167
189
218
223
172
232
161
215
189
196
156
189
227
151
198
243
186
232
150
235
259
231
173
233
167
228
215
255
196
169
224
227
235
261
217
189
191
212
207
140
196
170
199
276
228
192
218
206
189
223
244
227
221
212
170
173
193
191
199
211
168
239
163
208
199
233
137
223
229
203
271
221
181
136
227
172
194
235
185
191
243
193
221
129
205
171
157
253
224
219
225
172
235
256
195
213
206
241
276
183
152
214
244
167
177
180
245
216
179
217
203
204
213
122
97
241
251
183
138
150
254
235
212
139
178
164
158
171
197
252
170
195
158
209
227
195
223
122
220
167
221
180
247
233
207
147
158
206
242
221
202
232
115
266
151
201
249
189
236
183
248
259
221
151
120
148
174
158
271
244
191
258
308
235
248
227
231
250
208
215
185
242
193
229
230
198
174
218
168
209
202
182
184
179
178
172
199
222
215
155
169
232
147
172
235
140
151
161
211
229
188
224
145
199
212
194
200
218
176
229
138
165
198
233
218
228
258
215
188
196
236
171
203
255
187
202
210
204
243
226
187
220
195
199
153
143
172
256
188
231
224
242
209
214
244
194
181
226
222
218
149
183
180
154
197
204
246
175
212
124
214
258
254
245
221
245
184
227
153
186
116
205
230
171
210
171
184
146
193
211
174
181
212
191
133
199
186
201
179
244
249
161
194
185
248
141
161
222
174
247
192
185
175
256
189
197
258
198
182
185
203
243
135
213
200
190
216
205
173
179
264
197
156
208
189
130
211
141
249
171
179
260
207
228
256
176
261
226
241
200
206
178
242
148
146
192
200
191
208
250
145
153
220
166
157
202
226
184
145
221
220
191
123
215
229
207
215
174
240
140
131
171
242
190
174
184
194
212
203
172
224
133
241
193
221
187
186
243
176
209
143
254
217
141
237
199
219
174
257
158
205
171
211
172
256
223
181
202
212
175
234
187
240
201
186
192
224
211
256
210
201
235
211
206
204
167
176
186
239
179
196
246
242
275
250
202
213
207
261
221
166
179
199
164
166
190
169
213
238
243
197
141
241
168
219
160
242
203
240
212
168
211
179
233
160
211
195
175
192
224
187
235
226
187
210
177
175
171
240
215
188
211
181
157
214
185
238
186
177
212
206
217
181
206
218
183
170
239
250
203
232
260
197
222
212
230
156
174
161
191
232
194
198
178
234
163
198
190
250
171
221
192
235
207
176
202
193
210
217
193
132
154
215
225
160
170
132
211
184
172
141
223
142
231
237
222
200
245
248
158
200
130
208
187
218
247
160
239
217
162
160
177
255
183
230
175
232
191
186
240
260
227
144
217
208
260
245
227
238
182
236
178
167
159
181
240
232
258
235
183
224
210
203
187
221
208
199
229
258
170
180
169
238
208
180
149
231
150
201
207
204
271
172
200
220
126
207
225
173
244
190
169
197
176
184
248
208
197
223
240
161
185
184
145
147
186
237
170
186
221
187
272
245
204
195
251
160
233
216
198
245
204
221
186
233
231
225
240
277
229
271
139
157
137
201
175
167
195
227
162
210
193
180
233
209
171
240
227
190
218
226
214
182
224
217
113
192
210
272
215
181
150
191
222
216
191
202
141
219
210
148
151
205
208
241
232
205
226
234
149
187
207
226
222
254
274
234
145
177
238
200
160
182
187
216
198
240
229
180
224
208
152
208
173
201
175
233
149
224
241
181
166
187
214
216
254
203
244
140
95
193
163
172
220
208
209
188
240
159
198
250
245
204
224
212
226
215
209
210
213
124
146
218
238
187
221
201
193
181
231
184
209
175
193
222
226
214
293
218
161
180
184
154
134
206
255
218
113
217
222
210
252
202
219
240
242
193
213
171
162
205
183
238
191
172
260
200
168
229
233
198
194
135
174
259
253
232
170
207
239
203
174
264
200
136
220
132
203
151
190
210
201
208
245
182
178
172
197
165
230
249
155
228
241
169
227
194
238
210
167
199
265
223
194
222
238
181
251
249
248
231
235
219
199
250
188
159
204
152
256
205
199
156
187
190
270
131
173
164
214
249
191
184
237
234
276
218
206
229
185
258
223
264
263
128
191
204
197
193
157
191
164
250
213
252
167
208
206
170
182
195
163
218
233
172
228
204
228
218
223
243
271
222
268
225
206
140
194
153
178
177
223
185
196
188
274
200
216
184
189
201
225
235
215
123
195
221
165
206
185
264
244
225
256
123
248
214
173
245
179
252
253
193
201
263
217
220
126
238
198
158
245
163
170
191
137
209
199
187
216
212
233
195
187
194
177
199
288
231
156
295
181
218
156
210
199
201
212
252
183
209
252
208
157
173
182
194
196
243
232
227
188
245
193
244
239
187
218
173
208
131
191
230
221
247
158
190
209
196
182
178
207
250
212
201
271
200
202
194
184
238
147
202
215
192
161
175
197
230
138
229
218
174
244
124
190
248
222
172
164
144
248
163
204
248
147
246
153
244
205
217
183
190
159
258
229
217
169
237
219
141
223
206
189
126
193
217
181
189
223
156
219
147
205
220
156
238
241
204
130
196
220
207
172
226
181
222
243
204
135
229
227
174
195
244
244
191
222
208
200
214
176
211
237
164
196
136
218
245
161
226
181
186
226
171
213
196
222
247
215
150
158
158
181
216
198
142
140
164
235
210
195
129
220
238
222
217
163
219
204
181
160
177
211
223
198
226
195
257
131
196
228
176
220
190
209
197
244
108
203
195
234
206
259
205
236
149
230
207
171
217
220
169
222
267
184
252
228
166
241
232
178
189
177
205
154
153
240
203
257
190
194
207
172
186
257
186
198
135
138
214
220
230
184
188
249
119
234
198
271
175
205
195
237
246
194
163
204
198
144
212
225
191
169
190
147
214
241
239
244
220
154
261
217
192
204
257
205
208
193
206
167
194
177
177
203
166
174
203
185
207
207
197
205
171
205
207
193
260
197
199
220
192
171
190
193
206
248
240
187
220
184
230
185
190
257
210
230
167
207
225
267
210
228
141
178
187
201
222
237
226
219
211
283
217
245
224
209
229
197
227
158
194
201
168
229
211
208
224
191
233
227
194
171
164
145
228
183
145
233
196
231
201
161
184
207
191
225
110
246
191
161
189
205
184
187
189
211
143
241
191
215
206
226
185
167
250
197
149
234
218
253
247
121
201
184
214
224
170
218
193
215
172
194
208
164
199
164
217
146
202
235
203
202
231
217
163
188
149
187
273
178
207
211
226
255
150
247
216
146
215
261
235
201
231
182
200
185
206
170
178
153
248
211
211
209
169
233
226
222
153
204
212
191
226
174
102
184
238
225
191
227
168
139
221
227
149
183
177
151
224
129
214
226
193
189
217
233
210
215
183
206
167
196
170
171
162
196
219
188
160
236
178
177
205
196
220
225
146
142
129
254
208
228
241
192
187
223
263
244
241
216
268
199
174
170
226
117
205
171
168
142
191
263
149
155
238
196
178
280
199
196
149
136
193
191
226
266
207
185
192
240
225
153
220
232
209
228
165
251
302
197
193
198
140
229
144
139
174
216
223
154
180
221
214
150
210
185
193
210
159
194
151
215
137
144
168
172
210
118
163
165
179
108
246
202
204
254
211
215
209
233
195
175
188
252
156
234
174
238
174
219
177
216
199
217
171
224
219
210
182
219
201
215
258
210
253
217
203
236
207
160
140
217
186
248
218
240
247
171
164
159
151
169
239
239
207
179
237
156
195
166
195
223
211
223
202
145
150
194
228
225
202
153
216
199
198
219
105
212
268
225
214
213
173
204
183
251
141
240
253
177
205
226
157
197
233
220
185
241
218
220
152
206
207
237
152
248
213
207
240
179
208
201
205
220
156
171
183
139
240
146
165
191
221
201
197
199
193
199
193
172
166
242
194
225
210
219
178
249
187
220
171
158
145
188
161
196
130
202
232
274
213
182
231
172
240
230
251
232
137
186
179
198
199
177
272
197
204
197
212
195
196
234
195
218
195
188
171
192
205
144
151
214
158
223
227
219
221
214
176
154
171
203
249
201
167
236
169
250
176
207
238
261
187
243
228
248
158
228
182
114
98
198
211
231
173
153
223
205
183
228
191
201
161
198
180
213
203
205
230
173
179
183
197
230
238
217
249
192
176
227
228
219
169
196
233
236
159
203
290
210
220
158
220
232
226
246
256
236
301
215
152
189
205
208
173
252
160
258
176
212
202
187
188
184
195
217
184
173
212
203
142
179
175
193
224
135
222
224
208
216
213
156
155
176
216
217
206
200
248
199
227
205
155
212
221
215
215
199
252
210
163
205
227
184
172
175
258
182
170
195
214
241
244
189
148
191
223
187
167
224
193
205
215
153
205
229
162
202
125
218
201
222
159
191
134
170
227
207
230
211
225
198
252
185
251
198
179
233
164
207
220
164
249
210
160
213
186
240
230
212
178
243
202
179
216
123
203
200
119
210
174
213
187
257
162
136
211
226
218
180
188
204
204
237
218
201
188
177
261
168
182
200
201
196
184
193
154
176
241
135
224
179
218
222
208
181
197
224
186
196
183
207
116
189
198
250
151
209
149
206
204
224
191
205
214
183
170
155
159
197
210
236
238
223
118
141
236
234
228
257
192
209
222
234
266
221
191
182
267
239
240
227
206
197
236
183
194
206
218
211
258
172
165
163
222
165
182
235
231
217
222
220
265
250
142
255
206
140
176
207
219
155
183
209
197
227
250
229
239
160
217
179
159
246
231
216
131
178
205
138
224
224
197
205
242
208
139
177
199
170
224
187
223
186
206
168
149
211
218
197
190
230
148
224
185
184
237
220
216
230
172
234
176
201
224
195
171
241
275
163
204
222
219
241
226
288
160
233
183
222
204
143
237
242
181
199
145
223
228
225
160
189
211
183
184
186
194
160
187
158
221
180
205
243
188
203
193
240
266
238
224
164
156
219
207
150
204
161
122
199
121
197
216
159
190
223
253
176
176
189
212
213
187
215
144
156
172
192
189
143
210
169
191
214
162
254
237
225
213
206
250
235
193
188
203
234
263
167
228
226
182
233
233
275
209
142
140
151
209
264
182
131
200
198
171
177
180
237
224
223
264
206
228
183
172
227
230
182
213
202
172
228
246
235
201
232
208
199
192
170
167
164
196
224
223
235
175
188
234
176
269
223
267
261
249
244
240
246
183
246
231
253
173
128
220
181
170
190
246
244
205
145
265
194
192
251
169
208
198
153
171
195
131
235
176
199
168
182
249
232
241
211
217
241
173
218
231
169
250
226
218
161
191
262
284
199
218
192
158
228
175
188
157
117
249
194
210
208
238
240
156
232
268
173
252
165
157
176
219
258
145
190
137
187
206
161
227
226
206
250
233
181
202
169
202
169
193
212
224
268
255
253
205
188
238
193
235
222
212
176
230
214
234
208
182
172
149
225
185
205
193
186
145
230
192
207
230
251
195
209
180
196
231
149
208
191
147
182
211
173
185
220
146
201
240
219
237
215
195
179
170
168
205
216
213
164
162
219
211
206
230
164
172
218
190
201
214
153
207
268
192
185
229
121
248
137
192
211
168
214
171
165
229
210
240
206
243
222
174
270
183
138
187
229
220
222
196
201
248
203
215
208
163
183
206
233
219
145
244
184
250
214
213
190
209
203
198
245
234
184
211
229
239
205
202
205
247
157
178
223
175
203
188
230
154
144
209
218
194
135
204
229
255
173
166
180
221
201
204
185
195
153
154
174
135
129
220
204
258
201
154
210
186
163
205
186
150
226
186
254
149
149
230
198
153
245
233
189
182
199
201
215
219
171
136
241
168
184
184
237
211
221
151
177
202
185
236
202
175
204
240
257
140
191
164
257
164
190
232
242
158
221
210
223
186
212
191
161
124
217
181
191
192
234
234
181
195
246
179
171
169
164
178
139
189
138
225
162
228
238
224
177
220
172
200
164
141
204
243
197
182
188
182
224
150
218
240
169
166
146
183
191
210
136
184
197
185
173
122
176
238
195
216
190
208
170
216
264
195
188
252
157
172
240
220
174
273
186
203
293
235
192
196
214
196
186
181
120
208
169
261
155
212
257
120
170
161
166
219
241
180
213
214
225
214
195
222
186
218
185
209
161
209
163
139
240
204
98
144
184
194
221
220
230
176
188
188
216
250
133
229
244
181
210
175
237
214
171
165
231
206
222
153
149
204
192
209
189
170
196
213
231
193
225
187
201
158
225
210
203
178
244
205
213
111
163
257
130
215
208
216
226
242
207
204
185
221
172
166
157
174
265
192
182
178
237
177
189
198
180
220
239
185
263
216
189
214
215
214
201
179
240
163
263
258
246
138
153
205
195
223
220
227
206
180
157
263
289
173
219
220
137
256
210
174
195
170
180
195
238
170
202
207
139
201
245
184
222
207
196
176
180
167
230
237
292
155
153
201
241
178
178
208
208
156
156
217
285
178
205
196
205
154
162
174
227
174
192
171
184
221
259
246
283
205
268
200
209
165
274
186
209
208
240
181
221
181
176
220
163
182
237
245
222
195
158
165
235
238
187
205
182
171
211
171
195
250
224
205
164
182
137
224
172
192
158
154
175
212
172
169
242
192
195
198
244
246
233
227
256
194
219
197
230
232
165
247
184
223
221
182
167
207
237
181
242
270
196
127
196
181
147
177
243
231
178
186
179
162
187
172
209
158
192
120
214
231
249
211
150
277
192
175
220
145
135
239
142
214
242
236
178
129
186
247
188
184
205
159
169
255
248
206
202
225
76
214
218
143
248
184
220
202
258
211
250
176
287
162
171
218
259
160
213
173
241
219
199
121
147
189
253
186
234
220
241
197
224
155
187
183
169
225
140
213
190
212
260
182
192
164
222
188
229
171
187
210
226
156
211
145
249
182
248
210
195
126
250
226
205
223
152
215
201
161
189
192
165
145
213
176
168
230
213
182
216
213
154
153
168
249
223
227
188
159
237
186
254
159
206
198
217
206
189
207
207
216
160
197
228
195
231
193
248
190
234
170
175
218
139
174
231
242
182
227
184
195
154
199
222
230
143
236
181
174
236
208
181
237
208
201
239
204
134
179
228
255
178
149
178
207
236
282
248
180
200
220
222
256
220
126
193
213
186
188
224
160
238
253
206
155
201
227
187
226
159
169
226
242
217
258
232
242
152
195
266
172
253
216
193
234
183
221
202
209
110
238
194
200
207
135
172
192
152
169
209
181
208
195
269
203
260
198
184
232
185
189
204
226
175
196
207
158
148
204
224
185
180
196
191
241
244
250
181
221
222
195
203
184
184
153
208
160
121
196
249
221
269
209
257
181
185
211
163
202
234
252
194
185
170
143
253
133
180
228
194
185
209
157
153
173
183
187
186
151
248
192
183
248
176
181
220
205
233
232
225
165
238
199
208
202
221
173
138
182
177
179
204
217
183
189
218
176
186
230
170
129
234
179
145
164
207
222
200
240
246
200
225
205
248
200
167
215
154
207
215
209
225
220
211
285
224
153
123
200
225
205
196
152
237
146
192
238
248
247
245
228
230
157
246
108
235
188
153
245
175
210
218
216
163
178
223
208
138
181
164
179
158
183
240
117
199
165
236
199
218
180
154
188
201
147
235
189
204
240
158
220
183
186
259
233
201
180
193
174
227
168
181
179
140
221
175
194
165
177
277
164
185
127
195
210
195
241
280
225
220
188
267
206
244
187
163
213
211
221
217
222
179
178
203
201
215
172
227
225
251
163
224
172
160
199
208
187
192
186
246
203
123
265
181
176
148
249
194
211
226
184
237
122
223
236
218
202
234
152
252
218
210
143
164
213
216
256
208
187
180
225
172
175
222
127
227
203
220
186
227
210
156
267
122
193
195
187
211
201
205
172
207
216
155
165
253
182
227
208
214
299
198
246
180
148
199
115
244
195
153
228
179
220
234
214
189
234
239
201
201
202
225
203
250
140
234
199
206
243
184
239
215
208
202
237
231
193
237
199
175
205
225
225
231
232
234
226
117
182
215
173
206
182
217
169
245
206
228
154
218
138
221
187
216
218
224
173
201
144
194
222
175
166
206
169
231
152
174
231
224
205
179
247
212
238
238
225
186
200
173
192
197
263
186
180
252
193
154
225
209
200
152
184
164
207
219
243
188
164
187
209
215
189
176
227
176
161
189
174
193
186
240
232
203
239
248
238
234
226
145
230
253
149
187
245
226
263
206
176
180
194
220
218
258
246
211
226
175
223
166
189
144
207
204
205
197
198
187
196
180
175
189
175
200
181
251
196
133
203
211
239
230
224
141
231
223
224
100
231
215
233
224
228
221
138
217
148
203
149
162
239
176
182
189
154
256
210
184
194
210
206
235
234
164
187
234
192
185
221
154
227
280
201
183
217
216
200
173
206
201
225
153
175
179
203
277
234
157
165
230
164
168
186
163
198
215
230
188
147
156
162
207
185
247
236
215
258
215
220
252
183
213
205
223
167
244
141
211
246
265
238
173
222
211
197
206
169
190
219
173
185
237
152
232
178
150
203
206
224
183
183
219
249
186
245
243
179
182
202
173
175
198
130
221
216
237
209
233
217
203
236
161
213
179
165
183
222
217
128
247
136
208
157
195
115
200
181
228
178
205
272
214
149
189
267
246
253
232
241
195
231
211
130
222
205
208
211
249
116
246
212
135
171
205
241
197
240
200
233
189
221
203
209
160
121
212
180
96
223
208
229
232
219
215
210
169
204
201
286
191
178
249
222
223
201
175
237
160
195
211
242
158
221
247
217
216
223
124
165
192
245
147
146
193
176
278
138
155
191
226
183
247
172
116
165
226
215
156
174
175
205
200
220
192
231
199
221
210
215
181
202
141
180
164
214
223
140
190
179
191
240
191
204
139
181
203
200
224
135
188
199
200
188
227
161
208
153
164
217
215
185
190
253
217
174
218
144
106
176
183
178
173
238
202
183
161
158
239
275
280
171
214
147
204
213
236
177
211
155
199
211
215
185
188
238
171
224
253
185
202
114
193
255
211
178
263
225
246
166
141
247
242
179
176
212
164
232
187
207
140
209
208
229
201
156
217
203
217
192
278
249
222
249
200
229
185
223
219
225
253
205
233
257
184
221
197
199
241
219
182
236
166
182
191
110
232
199
156
221
165
258
119
227
235
215
244
223
179
210
249
142
139
232
161
204
218
226
216
211
197
209
172
194
198
215
226
264
222
161
249
195
223
178
238
184
178
191
211
208
215
151
172
206
175
165
220
145
213
182
162
170
190
202
222
162
232
145
240
185
197
209
246
238
190
176
236
254
242
245
140
200
191
203
221
206
198
252
200
191
266
233
193
222
209
214
176
202
264
198
223
218
175
161
189
201
158
217
203
198
269
157
167
232
190
168
194
245
223
160
251
182
251
219
210
240
200
185
191
184
190
171
239
236
182
181
186
212
149
216
200
211
196
146
178
188
227
184
224
236
139
209
187
202
235
162
211
185
277
172
239
247
206
153
188
227
236
175
215
167
202
231
209
262
230
186
204
197
184
140
247
216
217
205
186
103
187
235
215
221
206
157
184
178
252
213
224
232
231
237
194
166
204
220
181
217
209
269
183
267
241
159
173
240
162
242
156
252
211
227
254
258
235
211
162
149
231
198
231
198
166
197
249
208
134
175
193
239
195
206
264
198
175
249
228
247
212
195
187
197
168
209
204
192
152
174
245
194
198
236
254
186
239
186
191
163
237
211
153
228
197
267
245
252
223
183
133
256
143
208
213
204
181
221
160
206
197
227
203
147
224
207
228
145
164
224
265
209
203
204
128
171
216
218
198
207
191
227
249
205
234
217
186
121
160
195
163
168
110
174
211
213
214
178
209
185
196
259
163
239
175
143
197
216
231
228
192
244
190
234
212
239
229
163
177
212
240
239
189
197
242
168
138
165
171
188
198
116
160
226
241
180
239
150
212
179
194
215
182
229
230
257
179
207
204
247
258
174
144
184
232
189
232
175
164
229
177
230
158
256
180
168
115
199
235
214
233
178
195
208
155
187
227
192
250
179
231
180
216
188
189
146
238
232
242
221
167
236
187
210
213
216
179
153
113
189
249
212
246
224
208
224
227
229
205
215
222
236
216
166
153
230
217
142
209
154
206
191
158
154
214
173
247
188
229
174
208
160
198
212
203
151
207
211
187
197
232
188
156
207
126
196
223
193
132
208
185
194
188
286
120
155
131
232
139
142
189
182
206
170
260
163
216
143
177
167
242
250
168
181
283
207
135
184
160
185
198
195
191
186
204
198
208
146
203
187
244
123
197
199
222
202
172
263
202
304
231
232
201
244
94
193
180
227
161
201
216
181
230
201
204
182
224
179
214
176
176
212
212
191
190
138
202
246
225
216
191
249
211
142
177
213
276
163
205
191
234
200
129
269
122
209
186
237
249
174
230
144
206
279
257
175
223
149
222
217
211
240
188
237
228
201
271
197
198
205
227
252
214
211
222
172
155
238
182
208
183
216
211
188
223
180
223
243
189
224
195
184
174
193
199
250
178
209
216
266
224
233
167
176
237
193
182
190
204
220
263
175
227
210
151
211
255
224
231
141
234
262
261
204
242
175
252
204
153
203
195
191
206
197
219
276
144
155
156
260
145
163
299
186
207
246
214
168
220
180
230
185
194
241
209
183
262
248
181
159
194
223
177
271
179
147
188
220
169
184
167
235
213
198
157
175
186
256
196
129
130
182
139
191
176
247
205
175
141
175
190
239
178
254
211
213
235
170
190
254
220
138
201
164
177
180
198
189
198
154
196
163
165
237
202
255
182
172
224
188
221
187
155
268
215
232
191
208
258
208
208
170
206
198
239
202
236
196
186
187
191
172
194
185
190
201
201
138
165
220
177
197
179
192
105
166
180
213
152
240
220
157
171
206
194
276
195
242
174
227
224
254
170
182
185
212
227
212
210
226
190
160
213
185
244
266
207
231
220
200
165
170
211
254
188
212
189
191
227
177
255
181
211
210
213
210
184
208
171
222
173
203
232
193
181
151
127
234
219
150
260
225
238
188
191
193
158
231
187
188
218
198
197
212
205
191
194
193
239
193
197
227
191
177
143
208
240
220
171
214
220
224
201
104
176
205
224
153
163
222
201
207
177
250
239
163
190
205
214
234
195
171
255
183
182
236
237
134
143
232
233
204
196
212
145
212
245
233
164
252
217
185
238
218
224
208
205
173
189
244
173
185
165
228
128
202
190
252
208
158
195
237
249
213
173
170
210
179
184
218
223
228
218
235
212
177
257
187
236
217
196
184
179
177
203
199
166
203
176
228
202
257
191
139
175
206
126
215
196
233
205
239
188
183
197
175
168
154
173
213
153
148
234
229
218
237
185
231
176
214
199
217
151
222
172
143
218
204
209
117
195
275
171
265
122
200
228
195
140
168
187
157
211
271
194
239
232
190
235
214
242
233
169
177
214
166
158
185
173
208
178
165
175
134
215
261
247
178
162
238
239
185
195
150
212
206
261
155
227
138
210
199
154
240
174
180
197
211
184
234
211
183
194
196
176
203
191
179
219
187
185
195
249
208
202
255
245
129
238
224
215
239
213
226
161
168
212
191
249
246
196
166
174
163
274
200
183
183
186
211
148
184
146
216
208
213
234
146
172
248
267
206
219
221
192
184
190
216
216
215
180
269
236
209
202
204
284
154
258
210
257
268
245
251
183
218
203
213
176
231
205
242
190
133
209
249
176
193
165
174
198
186
200
212
186
228
179
133
228
153
233
216
158
214
203
122
189
231
164
226
184
162
195
232
223
189
210
168
160
204
231
174
188
199
188
163
163
278
185
183
193
165
238
230
191
183
205
210
192
200
194
166
209
250
239
198
210
140
183
207
171
138
261
198
164
163
208
223
162
162
285
168
208
198
197
224
227
204
179
213
180
211
195
194
205
218
146
168
168
198
209
220
160
203
216
233
280
147
242
139
146
203
194
191
256
191
195
185
214
246
167
188
182
221
233
191
192
242
253
220
196
184
194
222
161
200
240
182
197
191
209
160
214
95
236
209
143
168
217
160
218
214
169
133
200
243
238
230
250
203
276
187
165
223
194
172
187
226
193
221
242
214
176
205
186
206
233
182
230
188
213
207
225
223
137
180
167
193
223
276
221
157
171
232
193
281
202
243
192
184
195
203
237
229
212
158
229
204
210
206
159
217
203
147
235
180
187
182
244
180
213
237
186
220
217
216
170
160
245
158
177
179
251
170
197
195
205
254
224
203
150
189
237
213
177
218
175
205
252
211
156
150
226
217
232
209
211
185
187
234
178
209
220
184
246
192
209
247
140
161
161
205
199
208
242
211
190
183
278
190
146
172
238
108
163
180
149
202
131
203
216
199
171
242
188
252
126
199
239
169
207
210
172
218
228
205
183
189
178
177
268
235
186
224
269
159
124
171
175
183
229
247
169
272
196
180
231
148
166
214
240
256
165
259
157
178
196
223
217
226
157
188
170
164
206
209
270
232
246
249
218
185
184
257
261
240
185
208
212
229
235
211
96
157
214
198
207
124
161
136
172
239
157
242
215
133
159
214
165
156
131
150
237
201
186
179
113
206
200
241
219
229
207
222
177
208
206
196
195
256
151
171
238
223
159
134
142
186
127
204
224
199
228
239
194
169
181
191
194
162
199
236
223
218
217
211
177
152
269
196
222
209
238
206
172
180
226
169
246
170
233
242
212
166
235
252
278
216
172
213
208
188
200
129
198
186
186
177
197
179
245
180
217
215
243
198
214
256
191
241
234
229
174
281
248
220
217
193
203
264
160
186
228
195
242
174
180
164
169
229
256
209
242
238
212
219
158
203
176
244
182
160
228
200
128
152
235
189
206
173
180
221
263
198
200
157
193
199
210
213
180
228
287
191
275
188
179
166
246
186
219
183
175
144
228
239
259
249
168
203
194
224
232
177
188
184
130
166
167
222
240
183
256
162
221
160
186
239
292
155
221
263
193
210
218
127
197
124
171
187
162
162
164
207
218
177
272
199
234
202
222
178
73
211
231
235
262
210
201
229
243
222
207
228
228
182
127
218
196
204
221
206
205
228
232
174
158
185
210
223
199
191
194
208
164
163
181
180
161
197
190
182
203
226
210
150
196
172
241
210
241
211
156
167
134
198
224
216
201
209
233
192
195
177
193
196
152
206
183
204
259
192
232
248
209
228
253
223
140
237
238
190
170
158
200
177
204
174
212
177
183
200
228
164
190
176
215
215
180
214
195
258
210
211
159
249
205
172
191
219
175
209
190
114
252
154
216
174
185
210
249
200
171
206
173
164
229
279
99
167
192
175
229
245
216
224
192
254
249
178
214
202
188
163
224
186
209
204
155
194
196
116
180
202
191
201
167
166
196
224
165
213
250
151
253
248
200
195
227
246
219
216
221
242
192
214
165
222
216
184
211
173
274
185
255
238
237
174
204
182
185
218
202
260
250
158
228
159
185
151
173
197
245
171
198
128
243
192
220
239
148
208
206
235
196
250
227
145
191
164
213
237
207
170
173
203
226
225
196
217
224
235
228
198
235
236
221
199
225
222
242
182
149
202
202
178
207
216
220
199
228
241
164
182
209
196
204
177
213
191
236
159
184
252
193
166
256
195
148
108
182
243
188
267
193
210
266
195
215
181
252
143
194
179
198
175
223
222
255
176
244
213
240
249
194
216
108
261
169
204
126
188
242
194
184
161
253
178
208
225
229
213
173
215
197
187
268
161
122
228
159
168
202
199
212
204
251
194
230
223
172
180
190
224
200
141
215
179
240
186
192
244
151
171
192
239
206
169
225
217
140
220
219
211
186
189
176
168
225
259
209
229
206
196
210
194
190
188
298
184
210
243
159
189
209
233
246
205
203
183
188
166
214
206
153
241
241
177
201
207
206
211
202
258
160
169
169
162
147
232
190
191
164
195
202
277
188
190
224
168
235
140
213
201
220
161
130
235
211
231
238
201
185
173
217
187
161
206
284
175
241
163
172
247
205
154
193
178
160
153
174
219
240
199
176
215
152
144
212
191
246
230
225
178
222
222
156
170
183
138
273
217
167
169
207
178
230
210
250
180
201
136
238
204
145
218
202
206
192
235
187
226
252
211
183
203
217
184
157
166
214
253
239
165
190
215
212
224
182
220
181
135
234
263
143
249
188
222
127
235
255
257
211
226
210
222
185
164
179
189
223
214
148
218
172
202
191
193
257
187
221
185
128
189
191
178
199
186
213
121
197
202
213
175
208
207
172
264
258
193
172
218
198
85
238
178
233
180
228
209
193
232
207
205
204
178
166
220
198
219
174
270
181
268
195
176
215
235
227
176
193
247
231
159
231
133
216
228
208
223
203
185
166
183
216
164
232
156
243
174
182
262
190
217
171
249
211
184
224
147
216
193
174
162
170
137
152
147
191
256
123
258
223
226
180
211
173
221
193
226
229
293
208
207
145
219
217
178
240
210
159
193
247
152
207
177
215
189
261
199
141
227
227
196
205
215
212
129
201
173
228
207
249
218
178
187
182
203
207
172
153
214
146
215
245
169
158
200
178
177
188
216
227
219
255
199
274
288
170
194
167
186
238
220
168
193
253
198
202
136
225
241
189
237
151
178
171
199
198
222
180
203
225
180
178
179
228
215
135
173
177
187
193
216
217
217
137
190
152
135
213
171
176
154
185
252
260
236
208
174
177
175
237
152
193
149
240
194
200
161
204
210
238
210
207
147
219
214
228
209
181
229
108
187
235
258
216
209
170
250
243
235
185
239
221
214
237
256
187
130
214
179
203
201
188
217
192
219
210
167
203
193
170
248
166
194
177
221
158
187
136
198
204
218
202
197
221
186
224
251
195
173
191
148
221
171
207
178
198
134
220
168
204
199
137
208
178
232
141
194
262
203
196
185
228
179
238
217
194
197
208
178
138
119
204
205
247
206
170
165
146
184
221
175
197
184
167
163
156
223
260
228
212
193
217
225
229
202
191
226
215
149
217
239
236
161
186
168
219
198
135
176
138
145
116
207
226
184
261
207
182
200
269
193
217
229
222
168
282
212
185
275
257
192
206
135
227
208
236
229
199
205
174
177
125
232
232
181
141
215
252
196
130
202
224
148
162
211
250
210
158
190
175
252
201
157
212
235
164
209
206
194
194
197
205
225
242
189
214
222
163
212
249
231
221
238
223
137
200
180
259
209
278
195
188
190
194
133
198
253
219
184
199
179
131
183
206
215
206
247
222
207
202
190
178
224
169
207
200
189
224
232
245
226
174
180
259
150
223
198
197
180
121
209
242
108
209
226
272
159
201
258
216
198
186
208
212
207
157
179
169
162
247
199
195
211
208
147
229
199
217
180
231
169
146
243
237
226
152
172
245
267
252
219
211
222
189
236
178
218
206
209
179
203
201
194
166
199
231
170
217
211
274
216
155
191
197
238
177
202
254
205
279
241
234
158
173
248
231
166
182
135
149
202
235
224
203
240
195
195
169
163
261
221
191
188
221
219
120
202
216
246
266
258
194
254
181
225
156
233
222
197
236
163
192
195
144
189
184
214
199
255
247
264
131
167
242
210
216
198
189
260
217
223
270
191
213
225
167
197
171
196
218
207
183
228
249
273
197
184
209
168
232
175
183
221
235
201
268
200
260
256
251
164
201
153
200
212
217
199
249
142
204
176
175
184
163
196
190
251
225
210
178
264
132
198
146
230
193
175
163
209
150
205
219
214
215
171
200
212
204
210
242
170
206
148
170
208
245
227
224
151
212
220
181
170
143
184
206
192
227
209
159
237
212
119
219
211
145
151
227
206
176
249
212
252
154
243
237
235
201
209
169
246
177
202
227
237
203
204
221
226
135
242
155
200
213
208
232
221
236
221
164
179
232
204
230
204
198
236
148
192
192
196
257
222
205
204
178
209
155
263
232
243
211
191
201
183
233
192
203
235
210
233
238
261
204
215
236
126
200
215
138
217
174
203
192
209
246
212
171
217
166
182
178
184
188
203
227
230
198
214
179
225
191
187
177
188
225
170
199
217
140
110
222
179
212
202
192
211
196
203
177
211
282
162
244
114
254
213
164
162
227
232
193
217
205
224
182
170
204
175
182
245
226
157
166
203
145
200
213
199
187
216
219
156
170
161
186
163
208
219
203
162
187
231
232
180
192
158
176
188
226
237
203
214
152
183
227
231
135
204
228
213
209
220
114
178
199
226
240
172
195
164
224
188
140
144
190
205
132
210
128
228
200
208
212
207
137
254
197
139
232
227
197
149
184
164
183
175
229
242
161
180
238
205
219
191
244
203
205
170
227
200
206
241
263
216
152
198
203
198
209
250
229
193
246
236
236
191
155
149
241
223
194
230
163
233
224
179
167
185
186
212
207
232
214
203
168
243
216
191
219
226
152
260
217
195
217
149
159
259
256
217
282
233
148
191
207
222
195
156
106
172
168
171
140
165
132
232
193
190
185
167
251
238
160
225
200
146
211
224
178
185
241
255
170
224
210
255
184
258
219
184
174
199
200
211
197
139
189
144
232
139
232
217
227
133
205
200
223
215
176
205
180
214
226
189
218
235
212
183
240
231
173
211
127
206
188
241
206
225
196
258
192
190
199
248
187
183
270
234
209
262
154
161
275
193
172
210
266
170
251
119
230
238
244
206
197
179
206
230
179
220
194
229
279
268
178
233
149
197
172
225
205
195
173
167
241
215
195
213
223
239
151
205
200
191
192
195
224
192
206
209
180
249
223
167
197
200
220
214
115
134
179
197
191
209
236
204
184
135
165
202
189
186
197
230
231
183
247
222
206
206
188
184
248
215
193
163
221
155
194
189
164
156
172
181
248
217
161
203
150
158
224
201
150
215
148
261
269
172
234
202
236
239
175
186
201
199
189
149
136
187
180
166
209
222
277
215
250
248
203
178
237
208
217
214
198
190
230
221
188
211
183
188
192
216
212
130
238
148
226
172
193
171
241
158
222
175
201
188
197
190
220
246
205
239
169
208
192
206
217
219
150
198
189
254
242
178
247
237
233
162
199
244
221
233
147
254
179
155
214
264
160
166
190
156
232
202
169
175
163
213
198
179
239
196
188
209
227
201
277
209
259
185
180
143
135
203
266
170
196
169
218
174
192
171
189
209
184
191
243
171
244
169
173
158
154
192
170
223
199
177
210
179
217
172
242
217
144
224
140
175
253
180
185
204
194
209
185
132
228
197
236
199
141
188
194
195
160
188
167
169
179
196
147
135
236
160
218
193
224
255
217
207
136
185
169
233
225
203
229
234
176
209
183
181
249
208
218
219
179
210
193
171
152
248
202
240
153
208
116
206
195
157
151
248
198
199
164
163
190
191
221
171
121
194
189
229
154
211
241
162
205
200
192
230
218
206
111
270
208
185
236
184
233
220
246
238
178
253
226
205
199
164
181
250
182
230
232
236
285
160
223
203
220
193
169
186
158
193
188
171
194
167
185
159
185
203
236
172
170
159
198
184
188
210
241
190
190
253
217
248
195
197
148
214
169
209
153
180
187
113
192
213
194
201
238
253
151
126
204
187
139
174
203
115
159
252
96
175
155
120
211
210
231
209
225
244
180
181
224
213
232
199
161
223
223
176
164
206
227
205
207
243
230
163
195
178
238
173
230
237
175
207
211
196
236
162
201
193
196
254
152
198
183
231
194
186
235
167
238
202
234
210
140
164
182
254
179
219
189
170
221
179
246
195
183
205
226
217
251
237
221
215
200
190
192
198
194
220
168
181
237
205
239
169
215
256
179
228
190
182
205
215
151
260
208
164
225
235
162
212
247
196
248
155
189
247
171
167
144
208
198
191
152
205
243
256
232
214
192
111
174
211
183
194
206
158
229
180
151
206
191
226
161
226
156
202
230
227
179
194
198
213
212
191
132
236
259
223
149
180
177
154
226
131
168
164
109
230
178
242
231
168
147
173
190
195
203
183
191
233
172
218
245
179
211
140
233
214
135
218
194
175
215
211
238
182
208
136
219
245
208
207
232
167
213
212
182
269
228
199
226
214
199
260
257
212
211
203
169
106
212
207
198
187
171
213
172
236
195
149
213
185
223
186
181
220
196
194
215
204
215
213
249
155
189
206
253
209
230
249
153
211
249
244
196
212
204
221
165
215
193
198
229
168
206
193
220
145
210
196
182
217
139
162
191
168
135
196
182
163
237
217
211
175
160
198
158
185
210
128
177
207
178
211
172
136
196
150
246
250
216
188
156
225
178
176
196
197
213
171
200
151
224
191
187
170
223
215
231
187
210
162
277
217
217
173
227
217
254
157
239
163
228
164
151
227
228
144
198
190
160
216
174
220
145
220
208
216
206
184
202
223
217
164
229
206
191
191
212
177
184
184
179
228
184
156
174
156
227
214
255
203
219
249
243
165
200
222
191
227
224
180
235
168
193
200
174
219
252
199
201
203
146
175
191
211
202
226
196
159
183
229
243
223
179
224
234
189
190
207
225
214
197
199
178
220
237
253
223
230
205
203
207
162
219
201
180
176
162
154
138
171
203
230
249
285
201
125
252
188
204
162
219
209
200
260
164
155
227
191
208
181
157
194
266
184
285
201
187
204
227
232
189
179
215
135
180
186
236
185
185
169
182
208
238
219
163
167
182
194
147
205
194
214
216
215
222
168
203
212
195
215
227
221
203
218
185
209
126
143
154
200
192
231
179
244
227
186
172
183
238
155
221
191
216
186
231
160
198
195
203
214
240
218
214
238
290
186
223
221
194
155
214
227
200
267
222
162
149
198
193
267
178
253
202
210
149
231
203
133
187
225
156
211
164
181
187
246
213
184
165
201
242
264
227
204
155
199
162
169
200
219
160
253
165
217
225
174
209
215
196
248
177
258
224
193
215
215
239
214
241
175
205
233
228
190
111
185
219
166
217
211
141
255
188
252
245
167
205
164
217
233
253
174
213
210
204
149
189
195
228
173
176
261
178
244
195
169
177
190
166
193
200
177
197
167
251
199
186
173
233
228
232
231
111
204
190
210
219
203
177
256
191
164
226
179
216
144
157
153
215
200
145
163
191
258
152
154
166
218
217
199
169
217
187
214
195
240
239
206
248
202
149
182
173
199
218
281
167
146
203
188
205
195
171
245
212
210
185
196
225
217
177
248
229
181
247
159
187
231
215
164
235
219
195
184
250
195
183
197
224
196
213
189
108
203
115
212
149
207
236
206
257
132
196
251
219
194
272
173
212
245
185
216
260
197
172
161
215
184
184
228
235
222
203
247
241
214
207
204
231
242
231
243
196
198
195
189
210
208
280
195
149
208
271
161
132
171
206
227
256
232
179
142
236
243
182
185
179
186
216
189
172
168
217
129
160
166
177
199
217
218
216
188
189
210
226
190
126
221
147
189
237
158
239
202
182
222
165
223
132
204
168
201
237
175
248
233
214
152
175
204
223
189
161
207
215
163
234
215
201
120
202
178
216
209
225
177
185
296
167
188
164
270
190
160
218
197
205
206
214
243
196
252
225
163
177
176
133
200
168
173
247
171
172
228
249
238
172
202
132
274
236
195
212
237
159
220
186
227
209
194
167
251
178
185
273
184
225
200
216
169
210
239
156
195
225
222
176
229
244
185
206
202
203
186
207
211
237
150
189
177
186
200
182
180
218
252
208
191
219
210
201
251
168
197
217
230
198
212
182
147
176
181
196
159
149
246
271
172
120
166
162
176
174
141
193
202
234
171
186
254
175
210
201
211
229
239
231
255
195
176
177
191
192
173
167
204
213
196
209
265
204
178
193
168
141
220
178
201
191
170
264
257
109
251
192
235
121
170
217
155
171
214
234
202
203
238
196
208
187
198
182
148
213
252
129
136
195
184
202
190
191
239
228
139
220
166
197
191
177
219
210
240
175
165
144
144
138
239
281
207
137
217
185
218
169
175
245
174
149
190
204
210
228
216
182
197
223
165
248
171
166
200
246
162
247
223
220
190
184
251
224
213
194
198
175
206
185
237
198
186
203
157
179
132
220
212
202
232
238
172
179
222
262
204
251
227
250
188
145
170
184
213
152
206
230
146
168
224
234
128
233
249
194
177
203
210
166
190
123
206
196
195
229
255
178
213
199
257
195
176
199
178
206
191
213
196
194
193
263
226
258
148
249
231
141
216
217
146
171
214
213
235
219
160
245
221
212
221
185
245
203
161
238
114
242
163
225
209
107
224
237
171
212
179
202
199
205
198
165
171
162
225
235
266
255
193
207
208
116
213
215
181
174
173
174
198
212
192
188
167
210
244
192
175
192
161
205
264
210
230
284
223
212
224
233
201
262
209
252
142
195
193
249
213
144
180
204
192
226
184
200
175
189
126
205
222
194
238
245
251
198
243
197
224
162
248
208
211
202
203
265
225
203
197
216
236
202
196
221
251
153
209
170
119
238
229
243
195
181
190
223
201
132
201
124
231
233
201
168
195
180
252
193
225
160
246
171
148
175
106
175
178
149
179
234
195
214
200
119
183
175
240
215
250
257
179
206
229
187
173
222
209
160
193
204
149
251
151
203
177
226
151
247
189
183
169
195
133
151
175
172
230
164
230
198
214
207
234
189
178
184
193
218
178
133
242
167
166
199
203
189
125
207
254
194
257
187
194
258
222
185
173
172
176
266
206
234
207
214
177
200
165
158
229
234
174
266
161
241
215
211
174
226
210
197
183
185
241
228
139
146
223
223
171
172
173
172
218
257
214
190
154
166
249
192
213
231
190
250
229
245
197
222
213
223
156
177
203
156
224
168
233
161
220
138
217
149
182
242
170
208
216
242
153
214
195
222
183
183
218
104
190
233
195
252
245
181
222
199
190
206
168
139
239
177
164
200
121
150
157
202
168
226
186
141
260
196
251
231
203
167
223
215
234
199
154
209
222
203
222
176
283
193
234
176
160
188
168
162
176
192
222
232
229
192
222
230
211
180
193
177
226
177
143
207
181
158
225
170
187
183
271
250
217
227
225
237
184
199
220
263
241
183
180
158
249
191
161
163
156
232
184
224
170
179
172
245
208
149
233
164
144
268
213
198
176
230
206
178
129
171
264
189
212
193
173
195
181
243
171
226
155
184
204
110
204
212
218
186
202
250
181
213
120
175
158
214
237
241
155
226
199
215
227
196
170
164
145
185
242
212
260
230
226
187
148
219
209
230
243
251
223
124
210
159
202
173
204
229
274
188
192
201
216
222
154
206
194
199
254
149
176
160
183
213
197
255
173
259
262
258
170
129
255
183
180
240
170
194
241
182
245
218
197
223
184
240
159
221
214
169
205
145
277
177
264
182
192
197
213
175
195
166
212
234
207
253
150
167
176
261
198
237
199
218
244
246
193
201
255
215
239
185
225
180
214
230
229
188
138
176
180
206
218
170
203
130
228
217
189
235
189
236
183
127
188
194
157
136
190
196
180
203
229
184
240
200
136
145
194
230
209
182
183
243
259
172
201
225
194
241
163
184
214
164
176
241
180
241
215
199
208
206
180
259
223
200
228
157
243
213
255
136
222
203
245
183
172
172
233
211
151
207
180
183
213
210
231
240
210
219
204
180
193
185
196
192
209
203
195
258
194
246
224
148
185
186
239
229
237
237
216
179
155
166
204
180
208
180
235
167
172
206
170
249
220
223
241
242
244
220
233
213
187
207
126
236
181
202
217
235
162
257
214
195
165
209
101
193
261
211
143
101
157
232
211
241
218
105
201
171
182
214
248
173
184
202
215
192
210
254
207
229
166
227
177
204
227
182
200
225
163
208
168
226
201
199
194
191
184
200
250
222
235
176
218
197
219
225
194
262
231
198
232
199
202
205
202
220
163
200
194
178
213
231
236
194
197
191
231
196
155
215
192
134
174
256
215
133
208
211
174
189
143
251
171
215
193
239
239
196
238
197
232
205
147
207
182
187
174
242
178
221
247
242
118
152
261
223
281
185
219
226
218
193
209
193
108
117
220
203
168
222
251
256
240
217
154
167
228
215
214
204
198
193
251
252
214
208
162
113
196
152
130
240
195
207
218
168
188
180
246
259
201
240
205
211
157
206
165
259
193
205
183
240
147
169
183
212
227
189
137
213
238
226
192
103
238
258
162
197
230
131
210
231
193
203
200
220
145
236
214
137
133
190
208
160
214
245
188
196
201
165
233
207
220
241
191
180
179
126
218
151
155
188
181
212
190
214
208
213
158
211
253
215
191
174
221
163
216
231
202
199
173
223
234
107
203
191
224
201
226
116
226
173
182
218
166
187
129
177
148
181
252
227
191
184
180
202
201
183
176
259
186
233
192
207
177
234
148
220
122
194
204
179
213
219
184
201
232
208
223
249
177
201
182
209
233
247
201
194
202
214
236
201
191
210
183
171
206
181
168
202
216
204
232
146
209
163
142
227
214
123
220
198
248
205
203
228
194
204
201
149
176
222
194
191
189
216
183
194
184
158
236
191
228
200
242
252
178
184
225
264
124
259
277
255
234
217
149
144
216
214
226
141
184
178
159
248
226
162
197
240
128
222
197
126
203
181
129
213
191
209
188
145
177
276
153
218
156
199
175
203
197
203
222
140
126
213
241
271
175
204
239
224
226
274
208
247
197
225
194
203
109
190
171
179
193
135
197
178
168
233
221
199
229
252
236
184
247
180
190
191
232
250
233
214
213
203
163
199
208
157
116
179
224
147
215
239
172
102
223
219
138
204
213
232
185
150
184
227
177
148
165
124
208
164
218
172
235
177
194
199
180
183
205
242
199
248
180
173
180
202
213
298
117
206
254
183
168
175
228
177
178
228
181
213
210
223
205
242
253
266
253
219
225
206
260
226
147
176
251
258
168
250
211
284
219
127
141
180
195
223
233
233
208
176
253
246
225
182
136
187
262
212
233
197
202
176
235
147
250
177
167
150
231
226
219
232
113
185
233
181
149
195
214
178
198
220
207
177
225
247
200
209
242
281
234
192
201
168
213
200
226
167
206
204
198
137
233
166
236
175
201
195
188
208
216
170
188
170
131
172
212
235
250
162
201
173
183
195
212
182
291
123
235
239
217
174
201
193
126
245
168
212
185
196
210
160
187
258
160
231
194
199
147
189
200
159
256
232
162
147
204
174
221
252
184
250
170
217
133
200
237
236
161
207
232
160
206
189
167
247
217
200
206
241
228
217
223
121
206
120
221
186
198
190
164
235
260
162
183
220
230
250
231
190
159
144
204
195
158
250
214
209
178
219
202
257
212
245
251
215
132
193
160
166
205
199
228
165
151
209
204
213
214
204
204
183
152
247
194
200
218
199
167
240
202
187
213
184
213
220
215
170
195
140
233
220
218
164
140
161
243
162
232
222
165
178
174
227
178
195
246
196
222
185
229
203
183
282
151
180
237
191
189
231
200
180
226
233
231
182
234
208
169
184
187
198
230
188
226
219
199
194
233
208
169
172
194
128
164
191
218
176
203
184
252
247
208
221
261
215
195
233
216
193
187
220
185
216
183
211
252
203
184
159
253
211
232
175
209
198
229
187
221
257
204
194
230
191
287
217
167
215
190
225
225
208
225
234
157
206
163
215
234
235
236
162
225
198
263
197
226
187
211
181
217
222
247
225
203
199
184
207
162
151
244
254
171
235
215
208
204
222
210
245
203
184
181
199
183
155
220
208
209
229
168
161
196
165
200
176
194
193
236
187
229
206
222
196
164
247
261
179
222
151
173
226
150
156
176
230
201
157
193
173
212
273
182
198
191
199
224
213
224
195
148
224
204
204
206
222
202
209
202
252
244
187
213
192
164
179
192
206
223
162
255
235
144
194
227
259
168
208
225
225
188
222
249
171
259
216
234
225
147
211
182
160
219
254
116
226
180
204
204
174
206
206
227
203
225
133
236
180
185
219
175
98
217
167
198
223
215
221
140
194
151
223
242
234
231
213
178
191
215
262
196
177
167
172
249
249
212
180
225
177
232
228
152
233
189
181
181
237
166
208
172
166
218
228
179
210
178
198
232
228
233
214
206
191
216
231
199
233
229
254
128
172
219
129
202
156
210
181
163
176
175
240
205
174
228
213
233
199
188
250
148
248
186
233
250
182
160
256
188
236
199
184
198
229
243
220
239
227
226
148
185
217
278
201
210
177
196
252
191
189
226
195
225
187
230
253
188
226
228
187
202
207
213
182
159
200
201
268
257
225
230
234
163
207
153
176
172
151
173
207
212
201
211
199
262
167
148
184
196
224
234
236
210
190
226
205
227
173
209
154
234
166
223
216
222
199
169
238
203
233
165
187
205
258
183
166
230
207
167
255
234
190
214
232
193
210
186
136
212
171
211
196
200
225
219
208
240
199
159
147
206
257
192
231
255
198
217
222
185
189
146
190
168
210
191
208
172
212
194
234
151
213
204
233
174
180
190
195
164
211
184
145
168
183
197
208
163
239
165
224
223
240
262
220
159
237
222
207
186
190
211
245
132
204
236
146
236
212
226
136
186
184
204
194
164
202
205
180
238
192
245
148
227
199
149
241
214
173
169
196
156
221
194
266
194
210
150
171
252
171
216
179
249
214
227
162
142
196
180
274
151
220
172
229
187
217
186
177
154
191
239
215
233
174
228
204
223
235
222
246
158
220
233
180
173
211
227
163
213
220
177
258
224
218
167
144
234
191
207
206
194
174
191
202
130
251
215
191
190
196
177
123
202
222
212
138
219
147
227
198
152
135
226
137
230
226
130
159
160
184
213
225
148
270
188
227
196
184
208
213
201
206
222
240
208
184
216
210
185
203
269
221
170
204
181
147
197
226
133
186
144
216
183
255
190
169
215
219
185
211
173
193
199
193
228
217
262
112
169
181
209
158
183
147
218
194
182
179
146
239
180
195
119
192
159
204
218
206
242
208
223
187
173
182
216
269
179
222
162
258
215
175
191
242
183
240
205
203
197
163
182
214
213
249
173
251
116
210
171
198
243
224
193
135
181
167
238
214
208
192
251
233
277
229
221
273
218
193
151
184
219
210
209
220
189
233
153
227
191
268
165
123
194
194
181
224
175
203
183
241
184
206
257
166
172
243
211
165
175
250
234
228
198
244
245
206
224
240
172
183
91
200
178
166
247
173
190
203
189
221
124
181
223
202
134
241
117
196
101
243
251
194
213
229
167
163
207
229
186
241
157
251
241
245
181
150
195
195
114
187
166
213
190
214
200
158
244
260
202
190
166
183
230
237
180
223
228
228
181
168
155
181
193
184
132
186
233
240
155
218
183
239
194
252
132
206
154
195
177
249
186
243
134
195
247
230
243
237
200
229
164
190
127
128
157
216
209
260
165
166
214
219
218
184
201
173
173
203
209
242
220
230
195
151
154
200
175
186
114
172
238
161
224
227
246
261
223
110
256
220
246
172
210
184
233
216
168
228
201
187
216
175
210
255
115
211
270
190
204
270
220
202
199
161
228
214
177
161
183
203
215
145
142
217
254
141
181
190
228
181
190
168
219
220
232
178
197
213
104
235
241
206
237
171
168
229
240
208
180
201
172
158
231
214
182
123
205
171
280
148
223
181
135
210
231
205
204
203
247
135
242
210
284
199
204
256
242
222
230
204
208
208
277
229
231
215
193
182
186
232
140
173
219
212
198
153
194
130
238
167
196
201
210
188
172
159
234
196
119
195
254
204
220
213
239
218
252
253
250
181
234
195
199
154
253
224
191
245
180
207
248
210
176
191
228
251
211
178
206
221
225
227
178
215
144
223
225
240
211
209
239
199
191
238
187
234
228
122
220
214
178
233
224
213
203
153
233
200
216
205
229
185
139
193
158
204
218
229
164
178
232
236
187
188
213
146
154
228
143
174
240
180
163
262
193
266
168
278
269
182
176
126
187
178
173
246
221
209
199
218
154
215
202
179
182
166
140
166
224
157
239
184
169
144
187
245
168
182
235
254
194
204
231
205
192
175
192
195
221
211
194
240
131
205
287
191
195
210
232
270
204
163
203
208
189
212
174
261
189
210
229
169
184
221
198
178
173
189
234
171
141
125
248
192
193
126
231
199
213
198
121
181
201
167
199
240
238
200
186
201
222
270
147
209
243
196
191
219
241
203
160
219
234
234
239
161
186
183
222
172
189
169
191
162
229
197
203
233
189
174
206
236
268
227
226
183
239
202
256
184
219
250
241
237
188
189
229
222
167
216
217
215
180
213
189
167
234
188
209
204
219
227
228
182
182
167
233
205
179
175
236
116
219
229
148
180
277
253
232
198
180
149
136
210
233
192
258
218
176
246
220
216
211
208
281
221
200
177
212
258
183
166
233
252
276
188
198
243
176
206
226
195
122
247
187
149
240
156
199
190
196
147
252
248
149
183
228
184
256
209
261
155
200
203
203
285
207
149
216
196
202
180
218
226
183
174
183
232
224
224
176
223
223
166
155
187
241
190
231
189
216
206
196
222
174
197
236
186
200
275
202
244
178
183
109
198
203
201
149
220
145
226
192
200
208
130
255
228
129
284
182
191
199
236
180
198
228
166
238
215
187
276
239
229
153
203
128
254
176
168
215
226
180
207
195
163
171
239
176
143
192
221
192
213
222
246
233
217
235
176
230
143
206
237
215
144
154
193
222
273
153
160
181
217
233
182
237
170
216
190
173
179
238
203
234
249
215
145
212
220
194
185
196
229
209
174
173
153
185
230
207
268
103
238
241
214
207
194
238
188
186
199
196
284
222
204
187
212
204
190
185
171
162
214
200
185
207
194
162
211
240
243
226
197
248
220
183
250
183
186
192
144
178
242
198
190
191
187
176
202
189
268
134
169
149
208
240
180
222
227
186
205
157
212
240
203
199
259
217
234
229
192
197
211
226
142
180
121
122
226
182
212
210
250
181
196
196
265
251
87
202
179
180
199
238
190
230
205
168
192
205
261
238
175
190
126
220
160
188
245
196
210
167
232
240
207
170
168
185
169
221
154
148
217
217
205
176
234
226
227
184
239
220
173
266
189
182
228
193
243
253
233
242
277
110
206
181
228
248
184
211
211
190
211
246
223
212
221
181
188
205
169
230
181
227
260
158
193
243
183
199
198
243
212
194
234
194
208
118
155
206
145
168
149
204
246
203
207
177
189
192
231
220
186
237
212
189
189
180
214
220
189
123
243
187
212
230
213
187
207
220
179
192
245
217
239
129
230
258
167
238
261
120
236
241
209
225
208
237
238
150
187
162
229
123
160
246
218
268
224
195
201
207
237
185
175
168
158
190
170
280
210
238
206
156
237
217
235
206
266
248
215
183
182
156
207
180
163
228
236
152
219
232
196
230
200
169
190
199
123
193
173
149
171
223
241
241
174
196
175
209
184
225
202
168
199
173
236
257
200
186
173
199
194
252
229
239
136
118
238
190
197
140
209
205
204
160
168
157
204
209
180
227
175
198
227
193
184
226
262
217
179
186
173
167
191
210
156
178
201
231
201
228
130
192
232
172
147
175
201
225
176
265
183
183
244
225
181
230
236
168
238
187
230
233
102
182
168
224
222
210
262
166
178
119
229
222
249
161
223
191
206
215
216
173
202
189
230
163
222
127
221
209
254
213
172
230
187
234
212
249
219
158
167
159
168
180
231
207
196
146
162
259
228
219
196
177
193
265
262
162
196
246
193
189
203
226
222
218
150
250
137
178
158
182
225
200
215
211
178
233
254
244
194
206
206
221
145
191
167
190
243
143
168
283
212
200
257
193
235
174
244
174
236
195
226
184
175
132
195
218
102
205
198
152
169
219
163
263
232
175
209
247
200
192
227
154
143
198
174
168
196
227
201
202
120
203
182
193
218
145
223
189
248
179
233
200
223
160
236
228
194
224
162
191
168
239
154
230
199
206
227
207
228
267
226
213
255
225
194
216
211
189
233
183
153
179
200
202
191
97
153
204
167
193
204
162
199
168
226
216
198
201
225
183
218
169
208
183
170
207
232
144
156
232
256
248
177
160
231
163
213
279
214
243
241
194
212
195
154
180
198
176
149
224
183
175
238
195
191
209
255
228
187
201
162
194
137
238
192
241
193
189
196
186
192
184
193
147
218
195
247
276
259
251
147
215
216
157
217
204
206
151
219
187
254
225
172
219
224
236
120
260
211
168
153
190
196
213
215
125
229
244
185
159
192
188
187
254
218
189
178
242
181
183
234
233
177
247
202
239
168
218
266
266
197
169
210
150
201
211
231
246
151
172
221
187
194
169
118
201
204
184
208
155
222
212
219
210
193
198
208
164
242
217
200
191
215
162
201
263
158
202
210
208
198
160
251
186
177
217
219
177
195
174
138
227
211
174
144
126
257
196
173
206
207
276
243
243
191
146
202
236
172
256
172
139
220
185
241
221
165
162
196
301
224
187
192
250
166
196
162
154
207
209
228
187
152
192
149
211
236
202
191
215
142
246
207
198
226
235
245
161
223
147
220
202
239
172
251
265
230
191
210
200
179
203
147
227
188
181
255
158
224
200
210
180
145
168
201
209
202
218
222
214
172
171
226
193
217
169
185
199
209
214
220
216
215
211
217
201
242
169
227
244
208
143
149
178
138
201
151
203
202
206
183
223
200
209
196
206
124
170
264
213
230
209
194
199
237
223
226
193
243
189
201
181
166
226
234
189
227
196
189
230
165
201
200
233
229
161
214
179
194
211
250
238
200
156
196
191
205
189
223
224
147
233
154
268
218
202
166
193
213
241
185
165
206
159
181
245
145
195
251
207
177
160
186
180
186
217
234
182
171
198
178
141
150
171
251
214
195
155
249
201
245
195
153
197
221
202
192
262
204
192
202
207
262
199
153
169
252
216
239
216
142
242
191
254
237
219
229
217
212
198
171
190
275
147
209
167
201
151
188
200
154
214
200
230
192
189
195
206
204
191
256
104
224
162
220
169
230
162
217
228
157
125
246
161
162
140
113
200
216
231
200
212
261
192
222
176
157
275
258
214
171
203
185
239
215
221
220
211
180
234
230
182
233
221
148
199
199
193
187
212
182
249
214
215
194
251
249
200
220
192
211
202
211
205
184
184
172
253
176
228
223
238
265
228
219
202
169
205
166
220
227
198
224
237
172
186
178
181
253
246
242
175
202
213
239
192
212
102
242
212
225
223
214
130
206
192
219
266
190
191
266
219
190
205
216
197
207
212
168
237
195
233
198
188
179
266
243
174
198
210
224
142
238
200
209
257
147
217
162
194
271
165
158
134
154
178
213
195
216
181
222
213
183
167
226
204
211
227
167
240
185
152
245
165
186
255
193
150
254
183
208
230
205
129
244
188
202
183
138
214
189
181
200
245
206
207
232
228
212
165
170
156
209
226
281
220
235
244
185
204
147
189
231
235
146
230
192
178
264
220
178
230
219
139
213
212
178
154
158
180
201
144
179
202
186
213
271
237
209
217
219
170
180
196
185
239
255
177
204
210
102
204
189
194
202
197
176
188
209
174
238
209
229
216
179
201
111
261
218
152
171
184
197
165
217
181
223
237
184
289
234
203
164
230
239
201
191
208
134
216
134
198
179
224
184
196
249
198
198
206
103
156
104
181
199
241
143
255
208
222
219
229
184
182
198
198
208
227
200
189
194
203
181
266
191
202
153
260
214
182
170
167
134
188
144
239
166
244
198
183
237
226
198
205
262
185
250
189
180
226
210
217
233
251
273
206
201
259
154
170
199
188
205
237
189
198
199
197
222
208
152
189
103
227
188
192
196
166
223
123
252
271
144
197
115
221
209
225
219
133
148
144
197
193
197
166
209
161
217
201
202
153
213
239
168
175
239
240
228
169
170
191
143
190
192
144
231
240
201
202
134
137
161
226
235
181
139
179
183
263
209
212
202
248
186
226
185
214
185
191
234
143
240
196
259
230
245
173
187
207
261
236
171
241
146
201
276
166
135
248
249
197
227
135
244
251
248
212
155
238
158
209
202
231
127
147
202
206
217
231
158
248
153
225
153
155
176
199
197
142
182
149
204
189
234
234
179
179
160
244
184
203
219
234
205
245
193
238
206
174
183
133
238
202
165
187
201
198
238
147
178
223
172
204
229
194
197
185
238
174
218
206
207
151
244
228
212
217
196
208
226
239
185
182
206
198
185
196
211
230
191
153
130
181
243
209
210
203
235
202
149
240
183
207
224
214
192
220
233
187
191
193
236
177
205
251
231
270
251
174
272
140
204
203
213
193
218
158
180
249
141
248
242
153
176
214
273
216
201
150
233
190
210
165
196
155
200
189
230
253
185
155
257
228
201
238
204
204
233
201
192
203
224
167
216
211
175
202
218
240
171
250
165
225
257
159
194
182
228
208
129
230
222
196
223
234
168
202
240
245
194
221
173
212
225
183
233
191
217
203
177
214
201
254
202
203
216
150
209
194
231
256
177
186
228
213
240
125
225
225
255
202
183
158
200
223
237
179
251
206
219
242
257
158
211
156
214
190
163
238
228
227
167
220
237
220
213
218
158
163
189
216
234
217
148
183
227
234
166
185
190
164
147
205
153
208
189
181
179
174
189
159
212
219
213
213
152
228
207
190
204
224
174
260
242
185
145
231
197
173
206
186
216
215
164
191
174
169
143
173
214
176
195
258
194
147
156
240
177
235
210
206
237
234
197
145
209
198
186
226
252
230
229
215
210
212
257
231
187
163
218
190
233
197
215
223
187
250
197
141
207
226
203
223
245
147
174
232
151
265
191
181
196
267
205
165
150
255
158
216
203
242
269
191
160
192
217
211
219
213
202
206
195
256
177
226
172
163
220
182
142
235
243
213
155
196
233
201
240
215
230
195
240
160
204
223
181
167
162
212
258
197
201
259
186
201
204
172
198
119
218
250
201
267
216
216
197
218
281
228
212
102
222
237
251
203
241
195
151
264
213
171
298
198
182
147
160
231
170
182
270
192
199
207
181
222
199
245
263
159
185
186
218
227
229
247
185
274
216
174
157
224
247
181
215
258
178
192
228
198
207
257
250
223
206
263
149
134
220
159
179
248
178
138
150
188
164
169
180
249
212
223
218
194
148
193
186
232
134
192
218
179
245
200
201
211
153
206
184
155
234
158
144
149
162
184
223
193
152
183
234
190
230
179
216
166
191
171
205
179
231
188
205
213
185
233
155
198
221
204
222
257
210
222
163
188
166
238
194
180
190
219
190
216
159
112
193
184
199
169
199
194
110
163
265
164
226
156
241
147
231
220
184
213
214
179
160
219
159
200
231
208
219
195
257
212
236
134
182
224
188
204
207
249
192
175
206
166
165
184
191
220
216
161
164
181
197
259
180
174
155
103
241
210
207
163
162
208
202
209
210
135
195
232
228
176
158
217
228
163
224
226
258
174
255
213
169
215
220
198
148
228
220
184
182
219
182
117
196
179
171
131
219
246
220
174
224
209
191
187
176
165
202
133
217
147
183
193
206
167
175
163
157
215
201
203
183
190
188
231
169
203
231
116
236
199
186
184
217
285
227
215
253
203
193
240
194
109
261
242
182
266
199
191
204
207
195
221
219
184
150
215
176
212
137
189
182
173
231
240
196
199
214
199
213
152
168
145
173
186
209
228
260
184
257
229
209
233
174
214
223
251
224
246
131
179
182
228
105
198
212
230
226
222
222
172
195
199
212
220
212
198
167
149
174
235
256
181
165
161
183
202
241
224
179
211
184
153
112
167
222
135
189
220
187
171
233
223
241
236
229
221
228
181
226
183
187
192
162
239
217
164
262
241
171
229
220
192
219
190
225
219
174
225
233
205
215
249
131
219
215
227
191
218
264
218
268
195
217
172
259
203
222
229
215
137
216
228
209
226
201
261
182
232
186
198
199
211
202
245
196
239
222
196
238
209
211
233
252
204
281
195
234
219
146
199
165
194
223
212
209
200
215
128
255
204
224
235
200
149
201
163
192
199
183
185
225
163
255
234
183
186
146
114
218
227
205
190
142
165
219
244
230
207
218
206
157
196
178
222
201
176
201
260
214
253
194
205
169
236
195
272
197
162
195
176
246
213
187
209
232
206
214
182
207
177
163
153
236
189
240
125
210
195
242
174
175
207
167
167
154
238
158
232
230
260
200
190
217
137
178
158
214
199
176
178
217
255
243
207
210
226
204
171
121
173
160
199
157
165
177
198
205
209
195
195
218
239
212
233
170
227
193
195
239
174
220
219
188
234
164
153
212
154
201
189
187
96
217
186
209
215
246
222
236
214
196
216
160
148
219
237
133
217
234
161
190
231
202
220
209
209
179
181
223
199
276
202
256
203
219
192
215
120
244
209
164
173
157
199
208
174
201
179
239
151
165
231
214
200
174
197
243
189
154
168
244
174
168
212
231
222
219
203
229
175
227
223
197
152
210
219
233
241
235
226
162
159
238
210
265
197
218
245
125
172
199
271
202
193
224
182
205
234
215
239
184
199
215
200
163
206
236
217
210
244
202
210
160
215
177
163
175
168
194
138
183
200
231
179
192
165
173
157
209
165
249
171
146
242
218
197
172
220
162
252
242
230
240
202
165
209
233
199
192
146
216
221
245
223
148
209
178
257
183
186
210
177
189
176
232
172
210
209
221
205
169
211
207
206
164
148
222
166
189
224
234
198
221
192
198
222
200
159
180
193
164
188
230
214
207
215
235
229
212
190
211
203
203
200
159
201
209
171
138
175
234
204
248
203
217
207
201
167
254
149
220
150
194
231
217
208
231
202
145
207
192
162
228
169
168
200
246
205
228
187
241
201
255
187
199
217
271
206
209
234
241
218
246
200
188
248
204
166
217
161
234
181
203
231
193
211
207
152
129
175
260
188
181
233
179
194
172
233
145
202
205
131
210
206
203
192
215
203
185
165
233
183
171
198
254
190
158
194
279
220
269
244
149
249
243
224
229
217
162
189
219
186
181
216
235
176
248
145
156
190
224
202
162
223
165
238
236
199
214
219
225
150
197
236
166
156
233
196
169
182
187
206
222
234
268
141
155
145
218
188
175
159
186
238
185
208
206
217
179
235
173
196
183
214
168
224
161
207
238
186
211
200
237
129
136
223
224
170
204
188
185
190
200
243
173
150
185
235
245
171
242
198
188
240
215
218
174
216
167
191
218
267
142
238
212
217
173
227
188
233
263
218
152
195
186
248
206
196
192
232
236
202
173
267
224
173
200
185
178
196
184
233
204
197
165
188
284
227
198
202
222
184
255
214
258
182
156
281
226
219
215
258
226
248
274
214
162
173
231
185
267
190
166
155
207
177
230
196
265
291
207
168
199
219
209
197
228
199
233
125
224
165
199
150
227
180
204
210
181
182
277
226
183
266
237
181
175
207
224
199
252
126
198
116
220
216
161
170
153
249
132
171
119
177
201
177
193
186
224
176
211
172
216
220
188
215
253
233
222
212
169
159
215
202
155
137
167
227
164
202
215
164
212
179
257
254
225
215
200
235
187
228
182
197
185
240
213
171
256
249
180
235
240
153
122
227
184
223
223
224
114
203
162
213
197
194
183
110
206
247
133
263
206
214
219
226
209
228
173
195
214
213
142
190
222
177
183
151
283
181
223
226
193
183
197
208
230
192
214
199
249
205
205
213
216
195
247
195
210
197
258
181
212
209
228
199
239
258
252
191
191
169
221
206
141
125
217
237
139
212
323
212
180
194
202
231
211
159
218
240
158
239
224
204
223
174
178
214
163
186
176
182
200
193
199
124
215
178
174
222
256
155
240
186
226
163
210
187
195
234
188
173
223
239
220
159
225
237
221
177
188
190
172
211
237
184
248
148
205
195
214
241
174
159
148
221
194
208
180
190
248
241
201
199
242
154
248
206
152
169
189
201
173
187
192
207
170
185
228
209
193
200
190
255
229
242
125
183
200
194
153
241
176
189
225
247
170
199
226
208
249
199
206
189
245
227
224
159
147
221
211
236
193
249
193
162
259
168
159
175
186
196
252
195
258
198
226
281
161
190
238
165
176
201
217
223
247
206
183
189
191
208
203
174
188
207
251
218
153
226
228
192
148
161
186
146
183
238
241
166
183
255
269
144
157
255
229
217
206
274
239
209
181
212
226
150
240
195
209
163
247
222
154
197
218
211
229
158
243
256
189
170
250
186
235
199
246
153
220
160
243
171
147
211
232
171
240
225
197
171
154
225
230
221
240
192
214
203
119
250
203
173
158
220
205
219
161
172
174
240
156
225
144
156
198
111
207
190
232
197
210
274
205
263
159
210
180
203
182
124
154
217
195
136
183
208
191
170
287
241
226
201
205
235
238
170
166
188
226
278
180
260
209
189
176
212
204
230
236
225
221
137
210
181
233
220
192
246
200
147
143
188
248
133
244
182
171
201
226
237
203
183
278
205
183
166
162
224
202
181
214
167
158
223
308
206
190
189
170
184
174
134
249
242
211
249
240
269
137
220
177
183
155
163
158
271
151
170
154
201
229
165
178
156
203
213
210
188
186
173
215
203
161
183
187
209
239
177
221
141
142
161
235
209
196
182
228
227
181
269
157
217
190
245
206
228
153
242
253
204
249
191
220
137
191
211
198
241
117
171
216
171
284
196
191
163
237
220
249
181
161
212
210
284
180
236
236
151
212
202
166
232
181
207
216
238
177
227
222
148
180
191
221
211
187
185
234
192
254
185
198
238
165
242
138
146
184
233
192
250
200
277
197
221
199
189
180
236
149
280
144
252
208
287
125
204
204
183
260
234
155
177
225
186
251
167
187
186
150
224
196
217
154
240
200
166
169
163
236
213
198
156
248
195
177
193
126
141
203
174
158
276
203
241
165
226
251
177
222
235
148
199
177
220
254
283
219
199
158
193
206
208
195
159
253
243
178
188
163
267
182
257
196
211
172
171
145
219
179
214
182
226
202
258
238
260
244
148
156
235
204
203
208
242
177
194
129
191
184
199
232
201
220
185
189
186
193
173
224
149
176
179
158
153
158
147
201
203
189
205
193
231
240
210
197
233
163
192
241
216
131
192
172
153
190
161
201
193
132
199
178
202
205
253
190
274
235
207
184
221
176
189
138
257
220
196
215
224
179
146
165
213
208
205
193
158
184
177
247
233
168
186
216
244
210
200
205
149
220
160
170
222
249
200
199
187
168
164
192
149
141
122
198
224
169
181
238
244
196
192
194
228
283
199
212
235
241
237
176
169
174
156
209
168
170
158
242
184
175
175
186
244
247
161
176
233
173
207
222
163
207
213
173
209
228
181
201
204
170
185
178
202
209
189
194
195
214
152
161
227
231
131
226
213
177
207
200
252
203
230
160
241
166
211
225
174
193
174
220
222
204
204
129
190
207
199
221
210
155
151
225
237
219
190
206
154
220
206
136
231
270
220
258
192
230
219
216
152
193
167
163
268
255
171
255
204
186
146
177
220
163
179
250
209
216
140
200
198
234
209
157
180
218
198
219
186
166
183
174
224
221
161
232
176
241
238
198
184
146
207
180
200
151
197
175
177
255
181
140
244
231
141
193
256
216
100
218
184
160
157
214
182
222
177
231
231
198
221
237
211
202
200
239
260
177
235
210
252
145
216
247
240
230
221
207
186
232
155
227
174
278
225
232
184
246
174
224
125
209
161
214
159
174
243
187
136
130
225
203
213
146
217
254
216
180
221
213
240
245
153
261
179
170
224
238
227
203
212
175
230
233
237
166
150
192
191
177
174
143
165
161
238
179
226
209
236
215
289
214
246
199
242
157
206
230
243
171
170
195
138
193
221
155
135
142
193
149
241
225
163
196
246
172
187
197
230
125
191
232
227
236
190
201
216
202
191
223
236
237
189
197
233
225
183
199
186
182
162
237
228
204
146
250
127
195
189
208
159
180
228
249
222
233
223
164
261
153
148
218
188
213
205
220
120
252
123
235
201
188
174
178
170
150
182
166
169
227
218
203
152
223
198
209
231
231
168
234
203
228
167
216
201
235
273
178
229
172
218
165
165
119
214
232
137
153
233
227
240
215
183
259
160
215
235
236
155
265
280
193
171
179
188
167
189
275
193
183
176
145
186
205
174
190
214
137
221
256
207
203
153
171
172
184
235
232
208
164
209
150
239
162
276
235
208
247
254
239
214
183
269
174
153
237
164
182
230
212
184
144
222
189
160
252
179
200
179
178
215
224
208
212
76
191
114
183
201
168
237
190
166
225
132
219
228
204
150
206
208
175
234
187
250
223
212
201
255
212
211
219
200
203
206
220
121
202
234
186
217
231
199
227
228
241
162
186
207
232
181
231
130
168
222
133
254
191
186
205
185
114
139
216
147
168
204
211
212
178
230
193
266
212
154
219
234
233
188
228
236
226
260
196
225
210
162
175
177
244
231
190
239
221
217
215
188
194
223
254
143
208
215
234
189
213
152
213
246
178
214
198
158
200
191
209
187
226
187
192
202
161
200
252
183
169
182
255
167
228
162
216
179
186
204
216
214
236
212
199
245
211
183
217
245
205
218
227
255
246
158
222
214
164
219
272
265
182
139
213
193
204
162
213
194
193
201
166
191
173
141
199
222
189
174
225
215
201
239
257
172
108
183
237
236
219
199
191
219
136
202
168
223
197
184
197
238
195
219
179
207
167
201
234
215
174
213
166
202
235
167
177
215
193
209
173
297
182
176
176
203
177
232
178
231
201
207
137
199
206
179
190
178
251
147
126
193
218
255
221
169
191
231
219
221
184
164
197
166
202
192
218
129
227
241
202
219
216
248
233
204
305
234
224
128
207
179
200
150
242
179
119
237
192
166
194
190
258
226
177
218
206
214
189
186
238
166
214
227
180
186
197
173
228
169
223
235
197
242
231
180
178
219
141
259
273
224
196
227
242
192
255
243
201
206
244
198
180
196
210
186
197
214
180
154
184
193
217
217
206
237
242
186
231
164
184
215
175
190
221
206
189
197
246
169
159
186
167
227
168
205
216
220
196
194
186
182
268
197
171
205
262
203
231
112
210
179
220
207
215
179
164
146
222
171
182
235
209
223
273
149
241
215
127
189
186
171
222
209
194
210
203
197
218
214
196
207
204
135
236
197
166
304
258
199
210
215
161
198
216
126
206
216
203
189
216
277
197
216
193
223
119
192
166
151
183
187
212
208
181
185
199
159
232
240
213
198
166
203
227
150
217
143
192
268
185
200
186
193
196
253
175
212
181
199
168
216
145
210
210
149
154
173
197
153
196
205
206
205
251
185
225
215
184
225
198
213
248
185
204
197
198
224
132
164
232
229
197
156
226
223
204
197
210
242
184
167
179
176
254
190
218
95
200
221
188
207
167
258
200
172
229
184
181
198
176
209
241
135
201
209
203
226
123
191
205
200
167
258
219
228
241
240
178
237
194
168
219
200
197
217
132
199
156
176
199
140
203
176
192
209
241
216
225
170
211
173
161
210
209
204
239
142
152
275
190
177
241
192
148
217
206
174
234
158
194
113
180
165
196
182
200
203
272
207
267
281
150
243
178
233
231
193
173
153
178
150
207
187
256
242
224
183
155
186
142
251
183
186
266
208
245
255
202
207
242
225
182
235
213
179
188
228
228
185
209
174
215
234
182
167
170
233
199
193
161
173
152
243
230
217
245
177
231
179
131
300
164
137
182
224
251
207
203
121
212
228
224
194
185
205
239
149
205
231
204
211
231
217
182
233
221
178
208
203
251
200
222
239
242
189
244
228
159
205
208
192
202
203
236
146
240
146
218
154
214
168
189
216
183
164
150
171
209
126
184
169
103
220
210
107
208
200
161
154
236
159
169
165
181
179
208
214
171
185
230
234
209
200
258
253
203
230
195
192
205
247
220
200
170
214
174
198
210
219
188
225
219
175
172
189
221
198
226
204
179
247
254
163
189
192
195
212
171
203
266
192
185
215
190
236
153
225
217
211
174
160
187
221
146
178
111
158
201
184
135
228
189
184
190
252
236
138
189
179
191
169
192
215
210
258
173
255
171
234
193
236
225
111
229
231
213
186
194
170
226
153
176
157
230
173
253
153
221
160
157
253
141
228
203
246
217
164
240
201
212
151
224
194
245
216
184
228
262
220
167
250
215
151
194
182
176
231
227
225
213
235
164
187
137
182
166
187
256
186
248
191
224
175
235
170
254
178
197
222
211
212
175
190
218
196
213
178
238
188
167
212
188
176
190
180
243
195
275
215
178
240
175
143
169
197
176
220
192
181
264
230
200
198
203
173
203
220
209
236
273
190
226
249
231
180
283
184
250
199
144
212
183
226
196
248
222
168
189
157
219
207
198
232
201
227
184
170
172
242
197
196
181
197
175
183
210
238
186
190
217
192
197
183
245
189
215
243
269
251
177
208
188
172
206
160
196
148
146
219
193
146
211
181
164
228
236
180
127
226
228
235
163
200
242
183
234
247
177
260
221
257
165
213
193
200
156
227
171
240
204
276
263
204
150
248
162
206
232
196
186
216
195
218
184
141
195
151
243
243
175
223
215
190
163
225
210
188
212
201
154
155
218
184
209
213
124
178
175
183
123
166
151
167
164
216
231
177
191
266
182
181
234
186
240
125
204
230
212
215
202
183
213
196
155
245
257
241
169
257
217
222
235
172
189
220
149
161
157
128
179
243
174
191
210
258
218
234
175
202
226
200
183
208
237
213
193
163
187
221
204
207
224
211
246
191
195
149
234
258
193
159
237
209
262
167
197
186
115
188
181
234
221
210
201
197
185
184
206
220
185
179
229
219
226
213
195
201
175
213
205
182
241
228
223
131
219
197
199
232
179
159
217
233
182
217
220
174
201
193
212
212
203
226
204
212
171
253
200
228
165
200
169
208
236
175
181
225
249
152
177
223
176
159
188
169
230
149
172
188
178
243
241
214
200
223
191
214
215
168
154
174
148
190
180
203
171
213
195
151
170
191
189
188
169
149
162
135
184
122
211
181
225
246
260
241
162
177
221
178
199
199
122
216
189
221
234
180
211
189
147
181
200
186
249
205
218
235
172
199
138
205
211
205
165
216
224
213
225
200
174
200
161
167
249
239
194
200
145
228
247
200
175
192
189
269
159
205
237
200
235
221
220
203
176
222
184
234
179
161
193
261
187
250
165
152
236
235
193
180
193
187
174
209
245
175
191
161
143
202
253
219
167
156
148
182
204
253
235
192
208
256
160
201
200
221
140
253
252
158
182
176
213
201
183
233
184
176
203
170
232
197
245
134
148
220
157
99
142
161
159
208
206
240
152
194
222
155
220
192
254
191
175
266
156
188
177
222
166
238
161
225
258
146
190
211
232
222
243
211
250
179
279
183
199
156
239
212
167
170
205
212
157
219
199
172
161
168
195
164
202
189
162
257
196
165
184
165
188
210
203
206
210
276
191
186
175
229
258
191
214
193
204
228
191
176
224
158
190
167
188
176
219
216
168
189
152
193
242
233
191
211
162
157
195
173
170
220
146
217
226
187
214
179
187
178
129
180
175
190
216
239
220
150
241
237
193
258
151
220
184
166
241
259
235
209
226
238
218
199
155
269
162
178
204
185
213
195
208
198
230
238
231
187
221
175
126
210
212
182
194
243
249
207
219
208
245
162
182
174
200
161
194
162
199
200
263
211
218
224
94
189
131
202
242
129
198
208
176
178
242
185
196
156
174
210
215
165
251
177
209
237
226
148
223
232
194
178
158
180
212
173
180
206
138
232
254
186
211
187
218
159
175
179
268
208
175
222
210
227
220
220
178
161
260
222
191
207
183
172
257
185
215
185
167
142
222
186
200
200
119
122
195
179
245
178
208
105
141
238
201
204
196
212
153
164
193
208
193
163
261
230
195
174
199
214
235
211
138
188
186
233
141
227
162
170
230
203
210
226
185
226
161
191
264
222
190
212
163
193
168
114
179
200
225
206
144
150
163
197
264
124
236
204
217
201
162
209
201
169
275
161
178
173
188
240
258
194
195
202
228
219
149
211
147
225
237
197
194
148
226
155
170
219
221
194
263
215
223
257
200
146
228
198
221
166
264
159
178
207
180
192
193
118
206
192
210
171
222
222
214
224
178
250
226
216
254
215
159
239
190
222
173
175
218
206
229
258
179
179
194
187
189
160
177
190
238
243
209
213
160
223
217
154
168
193
223
237
197
228
189
220
152
166
230
188
212
201
217
206
127
260
196
189
242
259
250
220
168
147
163
252
260
210
192
213
162
188
154
165
96
190
271
141
225
196
202
205
216
267
179
139
226
203
248
208
196
213
270
220
201
167
213
217
213
180
204
199
166
179
244
196
214
179
289
144
159
192
193
185
197
211
196
171
216
226
220
176
172
235
217
215
159
188
226
223
172
188
149
210
292
183
140
230
245
191
170
187
166
184
225
187
193
209
168
204
225
169
259
170
272
205
286
215
183
147
179
201
201
191
181
227
235
244
160
157
230
204
196
251
147
196
228
228
284
243
169
257
167
170
216
232
119
169
242
225
207
203
197
197
176
213
178
217
170
227
190
178
132
196
225
229
206
206
262
213
191
217
198
121
202
228
187
223
274
190
174
231
254
183
232
132
195
168
201
181
196
135
217
204
179
210
180
223
145
198
159
243
150
215
228
223
173
204
242
231
209
258
256
229
220
181
267
207
194
176
209
176
219
180
215
211
266
188
206
154
238
180
221
147
174
182
204
233
160
239
201
171
171
209
202
164
209
198
182
233
268
228
179
174
203
251
133
218
219
171
155
167
237
169
237
197
229
154
202
108
138
183
204
131
211
141
255
195
212
268
109
231
162
214
200
197
220
195
170
203
204
185
168
241
208
209
118
186
227
193
208
225
204
193
195
205
196
180
211
227
204
183
228
156
227
179
150
202
173
237
235
203
269
199
135
172
191
220
199
155
228
165
230
153
164
162
211
195
195
171
191
241
199
222
213
225
146
224
128
243
180
185
206
187
186
176
246
218
230
240
170
216
166
162
140
179
212
211
179
163
201
189
191
193
169
185
138
210
179
236
207
188
227
197
250
169
217
199
198
223
168
190
234
277
197
150
163
164
160
208
215
176
199
180
210
225
283
216
237
210
238
250
201
181
217
163
251
225
146
113
215
247
175
193
234
192
223
199
195
175
180
152
195
95
100
233
196
222
177
177
248
192
254
240
146
248
190
114
205
215
177
239
218
199
198
248
230
194
204
187
212
151
201
247
204
192
217
198
138
186
252
172
110
141
159
280
255
156
202
208
208
199
176
213
188
146
201
163
187
238
186
210
172
267
162
211
172
178
234
238
199
242
214
218
204
185
185
165
181
181
169
229
150
130
213
179
165
139
216
197
253
122
181
244
197
192
211
232
254
165
231
213
189
202
199
174
182
199
256
217
189
233
207
178
206
242
177
199
202
179
214
193
238
142
126
196
241
154
211
205
131
228
193
197
146
202
170
202
151
217
176
161
186
232
215
198
245
233
184
173
141
202
155
202
197
250
240
276
151
205
227
117
188
264
154
204
158
198
197
202
212
199
221
150
159
196
190
229
178
230
153
177
191
264
168
228
145
191
216
208
237
154
200
165
229
266
137
208
213
204
169
215
201
192
242
232
222
202
181
186
184
202
194
174
214
234
160
233
245
169
232
258
185
157
147
215
187
202
168
224
208
186
173
113
213
241
183
156
154
220
227
206
212
173
186
271
170
154
260
170
138
178
243
160
138
170
205
238
140
218
214
192
176
165
217
128
172
229
270
233
215
240
122
155
200
68
179
211
231
159
241
226
227
193
181
175
218
145
229
197
171
209
119
200
192
143
222
174
208
245
178
161
180
177
205
195
205
237
199
230
215
201
180
234
238
186
181
255
161
276
236
185
214
240
220
211
182
180
206
210
203
187
163
223
209
198
162
159
182
190
259
180
198
179
241
195
241
183
209
181
186
234
167
165
168
228
176
252
208
232
259
194
154
190
213
194
197
225
256
156
122
168
213
196
180
183
193
128
173
197
193
229
227
198
194
149
227
198
208
192
251
233
190
187
169
222
196
200
226
218
189
193
180
209
147
109
244
163
233
211
247
199
185
245
229
214
160
199
205
197
176
215
232
227
182
128
249
233
186
153
187
215
175
179
245
164
204
226
171
219
182
179
164
266
187
288
160
190
181
224
208
210
231
199
198
212
163
254
171
213
211
214
222
113
182
221
210
266
194
189
257
201
176
231
221
174
185
183
205
191
235
242
229
168
152
201
182
216
181
198
230
206
130
257
215
244
256
205
267
224
171
249
214
221
155
180
180
223
191
182
233
226
202
245
224
186
217
215
193
238
194
251
146
167
166
206
182
241
202
182
191
182
179
203
247
212
202
174
216
216
176
192
202
169
177
246
224
208
190
227
216
182
183
168
182
249
174
194
166
224
184
206
206
237
190
167
247
204
223
167
140
186
190
197
187
208
190
212
190
202
226
164
200
162
216
209
246
181
190
179
127
213
192
163
222
195
276
211
197
176
174
199
191
212
256
185
187
257
166
235
218
211
195
233
170
122
265
187
149
160
295
216
198
223
189
237
223
199
179
210
178
238
205
222
171
209
217
156
228
165
227
173
206
177
161
149
204
230
215
245
221
181
141
175
173
195
222
249
248
146
152
249
252
245
189
138
208
174
175
168
146
210
186
203
241
152
283
192
196
228
242
181
151
177
220
224
231
189
138
205
193
233
136
242
189
184
221
244
273
202
201
158
249
155
157
209
197
259
174
129
223
146
240
202
220
170
189
181
257
252
230
170
219
250
155
207
208
224
195
192
164
170
207
256
154
170
173
220
151
254
212
260
178
197
265
235
234
259
144
191
197
136
191
191
134
180
215
211
247
225
199
201
201
163
198
197
212
222
125
223
234
155
235
237
246
230
168
214
221
212
194
146
201
220
153
123
238
245
214
227
177
172
178
122
196
220
131
206
214
229
134
171
160
185
178
233
227
249
171
203
217
194
191
234
150
206
153
160
160
232
246
248
238
117
273
229
220
214
218
251
241
198
194
192
182
185
193
248
174
183
178
217
244
196
213
190
232
201
208
185
199
212
201
194
181
227
195
188
163
137
260
224
177
226
241
179
161
217
157
241
198
194
175
236
210
219
184
253
174
216
246
156
239
199
210
253
228
175
245
175
207
273
190
175
171
212
219
238
246
236
158
211
210
163
185
242
164
165
204
150
252
204
191
238
214
239
209
224
255
214
212
212
240
215
187
221
152
190
245
204
183
217
217
132
238
184
161
181
253
247
220
151
154
192
213
190
232
224
138
186
204
190
187
214
234
204
131
159
204
149
214
198
284
243
221
205
198
228
200
195
246
150
110
161
251
220
142
138
224
227
181
163
177
168
190
207
211
182
199
205
109
175
233
183
202
208
235
171
174
231
164
190
221
173
200
100
160
214
194
172
154
176
206
221
153
181
211
241
205
168
184
195
219
201
178
186
226
213
134
183
180
257
140
265
207
242
171
151
199
157
201
220
191
196
230
136
183
192
247
220
130
211
238
240
174
184
241
236
224
167
229
252
215
238
198
198
178
187
269
165
231
212
261
214
142
205
169
231
262
201
230
189
219
206
197
151
128
230
245
208
239
236
234
185
259
182
195
138
240
198
258
156
214
208
187
189
188
254
220
181
189
245
167
222
201
223
168
154
179
200
235
217
237
177
210
183
249
223
164
179
142
188
184
197
183
201
211
174
248
160
205
251
252
238
222
222
168
235
212
174
197
214
254
198
185
194
194
212
177
158
206
183
185
180
248
207
200
216
176
247
239
202
270
193
211
197
251
217
251
122
225
180
226
144
191
164
207
208
177
179
219
239
183
226
163
233
170
206
211
175
252
264
192
226
238
176
175
149
174
187
232
208
270
126
237
141
276
178
160
221
197
234
185
238
255
167
184
207
226
256
187
166
159
210
174
171
175
242
177
214
194
210
203
159
120
203
220
215
209
166
200
237
274
198
210
234
201
247
164
211
196
280
254
217
284
199
210
141
190
216
145
224
186
275
219
190
195
204
218
195
267
216
211
168
269
198
166
225
210
180
179
197
237
204
202
191
196
205
190
219
203
107
188
208
210
214
267
172
186
173
180
237
213
137
222
162
150
247
192
168
198
185
198
205
279
170
106
154
182
224
134
203
251
163
178
208
258
177
269
212
244
163
176
229
252
236
215
261
183
215
227
241
208
243
250
185
247
207
130
175
199
231
196
190
239
198
255
215
195
173
182
218
200
200
193
263
234
194
218
211
211
257
233
224
237
241
201
180
253
228
214
166
180
226
144
181
186
210
145
147
223
179
214
203
221
178
126
233
201
167
224
179
210
203
154
235
179
161
238
255
182
161
252
224
223
217
202
215
233
197
249
151
233
141
125
188
170
198
267
152
230
196
242
231
212
207
165
205
257
149
166
179
191
184
170
257
194
140
187
208
197
188
197
133
150
177
160
222
193
234
161
211
175
208
194
193
149
235
159
205
221
271
125
189
254
198
187
190
202
182
229
262
239
146
182
188
198
218
139
159
186
207
168
185
150
242
197
160
176
259
183
251
245
223
210
203
229
179
254
228
202
189
174
182
203
183
232
198
211
181
147
228
202
167
194
204
149
201
169
226
222
271
195
171
161
229
209
209
123
241
252
140
197
221
175
199
202
216
233
162
249
126
194
156
166
211
166
230
166
164
188
185
240
209
193
155
234
162
187
180
219
236
210
187
162
196
198
213
180
168
201
203
200
205
172
226
171
185
195
193
210
146
210
117
171
162
220
202
213
182
197
222
196
204
158
198
169
167
150
209
164
196
157
179
142
229
150
202
216
261
206
216
191
219
228
176
164
200
141
169
254
184
208
232
255
181
221
217
200
191
195
220
188
175
112
169
205
174
202
171
223
194
167
270
147
222
249
213
180
201
229
241
228
222
188
244
224
185
236
223
205
177
206
190
237
223
173
189
177
214
227
212
241
219
209
214
205
190
183
198
209
211
223
215
199
161
205
198
189
205
185
219
179
198
205
212
189
224
234
246
201
175
192
186
179
227
167
240
211
151
154
160
215
235
185
216
203
155
107
174
187
253
199
171
175
200
202
263
284
259
185
147
221
183
198
195
234
203
220
192
167
217
220
188
227
175
229
266
206
170
199
163
129
228
187
208
194
186
231
190
220
199
181
178
262
228
169
193
231
252
202
214
220
196
180
175
244
202
229
186
262
200
180
199
169
252
292
250
193
149
212
213
216
246
216
241
156
185
186
233
212
226
201
204
149
163
177
226
189
170
172
169
224
228
203
168
270
219
226
185
212
223
251
242
143
142
198
204
199
163
248
251
241
188
196
185
204
224
209
223
260
225
182
160
179
220
217
202
220
167
180
247
174
150
166
224
208
180
224
244
184
168
161
180
166
182
247
170
178
242
190
195
226
215
197
171
228
112
183
200
176
144
211
136
209
192
251
238
162
207
248
261
190
201
211
228
238
133
200
230
198
274
266
220
225
257
211
214
256
179
189
245
143
146
259
186
176
213
184
187
225
178
190
207
239
235
207
240
190
179
156
192
248
176
218
199
198
159
196
158
210
194
225
166
193
216
201
219
237
194
208
283
205
231
208
195
213
157
264
198
141
206
198
263
189
146
192
214
235
235
212
285
200
162
161
188
183
136
180
217
207
243
138
217
212
180
237
169
205
203
199
174
249
224
216
275
221
189
177
141
264
181
221
221
95
245
245
203
197
234
162
153
225
170
195
180
185
219
153
198
222
235
223
199
233
193
170
233
132
193
128
180
170
257
170
221
257
206
152
216
258
208
161
182
216
207
240
268
180
211
187
236
202
216
184
231
219
250
164
185
163
158
160
250
211
223
140
116
207
224
173
161
212
241
175
206
171
172
182
208
211
161
167
167
129
239
140
216
208
140
141
238
201
169
189
240
194
196
187
220
163
193
192
212
238
191
210
203
197
184
226
138
177
233
219
205
198
245
222
160
197
199
145
202
213
199
233
201
236
203
208
195
189
175
162
170
234
225
177
220
272
184
176
194
185
267
265
182
209
190
203
146
209
221
180
134
179
220
226
215
217
211
199
194
184
181
207
207
210
214
160
144
178
194
189
230
130
179
198
233
161
126
235
169
135
208
170
229
158
217
155
262
176
199
198
203
248
139
193
232
210
216
216
209
167
231
169
128
183
160
215
174
217
188
234
189
205
214
232
237
156
218
188
188
145
173
253
149
234
214
181
208
237
139
198
172
206
168
180
118
206
199
193
226
184
172
219
225
238
178
237
139
287
223
166
198
207
266
228
206
158
184
224
196
219
245
222
204
197
191
172
162
192
130
170
173
250
161
247
155
263
128
211
180
241
176
184
155
189
195
256
193
218
240
187
244
193
229
207
199
152
250
200
208
191
196
223
172
220
173
143
184
189
235
213
244
173
216
253
230
176
179
139
186
198
195
193
161
205
199
198
225
215
171
238
222
202
221
153
204
201
245
199
242
206
160
224
229
206
177
213
202
193
184
191
209
157
169
135
155
165
214
265
223
157
254
211
169
207
209
209
167
213
226
212
154
211
153
252
201
182
182
184
168
228
260
213
209
239
223
240
205
199
226
250
234
221
129
206
212
185
178
220
170
203
202
156
187
167
231
202
128
93
253
110
219
225
257
234
205
208
175
221
231
182
190
224
156
194
136
229
174
223
211
196
158
169
243
176
198
189
222
210
152
228
200
210
172
192
217
256
190
188
103
200
201
148
183
226
173
213
204
153
169
177
189
229
186
194
213
219
179
164
187
160
211
259
235
190
167
194
243
223
217
199
171
196
203
225
244
203
176
167
198
187
239
204
178
237
181
224
213
221
217
184
170
236
141
219
187
206
220
187
120
163
217
228
185
179
251
153
195
153
204
209
190
239
210
205
194
177
213
150
211
157
214
211
192
212
191
158
200
203
234
193
196
163
209
234
210
108
203
254
225
197
225
111
169
257
227
174
211
199
176
234
214
178
195
191
277
238
201
220
261
184
191
197
191
258
207
193
147
167
253
194
124
110
262
177
150
203
226
158
138
226
183
212
251
195
214
177
261
188
200
240
183
165
237
189
237
238
117
172
209
218
220
185
233
185
213
137
207
220
211
140
190
216
193
150
209
223
149
232
246
193
253
233
226
191
163
193
248
168
181
277
207
238
249
189
251
237
196
251
181
188
215
171
177
229
207
209
178
201
153
186
186
232
173
179
181
258
165
196
180
212
184
243
198
215
194
274
231
175
188
207
203
244
214
221
149
190
216
204
218
195
211
200
217
183
145
228
208
229
202
149
141
201
135
179
194
223
195
164
193
178
208
204
170
173
212
139
175
165
131
203
187
218
154
164
211
203
196
205
163
203
228
181
161
185
143
165
214
226
245
167
201
206
144
214
283
261
230
154
184
189
206
148
199
168
223
185
230
161
218
199
227
179
199
192
153
159
224
254
221
157
234
216
259
190
222
215
207
231
188
141
250
172
213
138
227
238
191
134
167
231
172
219
204
243
234
219
272
234
179
187
179
134
162
220
174
232
179
203
199
185
147
220
203
205
196
221
223
223
206
189
192
182
265
208
216
222
164
224
252
238
175
231
179
235
174
153
204
183
217
218
209
216
160
202
189
181
211
215
189
206
146
194
145
211
185
233
203
250
186
209
225
267
239
134
195
217
205
222
227
221
135
187
216
223
213
226
218
206
209
237
167
196
202
178
208
172
142
214
218
180
218
168
158
201
247
158
107
243
192
217
208
205
228
230
196
169
160
173
249
200
203
219
282
232
188
185
221
198
247
196
253
141
195
222
205
199
223
244
205
224
177
177
192
228
168
181
226
252
237
218
249
197
247
105
221
204
185
156
212
217
212
222
246
182
207
135
167
187
229
218
208
214
192
189
208
253
150
206
155
229
233
269
197
228
225
218
303
235
179
229
209
206
206
258
241
211
182
212
187
225
124
156
191
249
198
226
160
180
133
190
203
156
179
210
220
217
241
196
244
235
175
236
204
143
181
177
190
194
147
198
190
225
236
197
242
277
210
177
223
246
240
209
184
191
202
206
215
190
191
182
270
139
193
192
211
193
155
192
197
199
181
167
184
151
200
178
142
186
243
206
205
141
143
181
197
234
228
231
177
166
195
268
172
186
144
174
226
256
166
176
176
205
237
278
146
205
216
179
172
189
221
240
190
202
243
207
210
217
233
242
220
218
256
162
180
141
252
208
179
149
203
199
189
183
133
127
242
138
259
210
208
129
186
210
225
224
196
174
204
220
218
167
201
204
278
207
227
178
182
229
128
191
153
215
183
203
235
189
147
171
111
184
119
209
239
196
193
141
117
229
140
203
162
232
197
203
204
167
177
199
198
165
165
199
225
251
187
181
183
186
95
223
228
220
218
223
183
191
178
233
241
236
250
178
210
217
167
244
205
237
203
272
202
162
190
193
224
197
221
204
220
240
192
245
147
171
263
142
209
194
168
196
159
175
232
243
193
142
239
188
170
195
216
150
216
216
249
209
123
168
164
194
211
202
224
274
195
194
180
179
170
146
180
173
241
96
228
166
159
220
213
163
159
210
177
173
164
187
168
180
238
174
135
189
221
166
179
208
245
237
220
159
150
177
203
240
192
165
190
176
231
160
221
238
193
172
199
193
212
206
178
120
251
203
234
178
178
219
222
207
197
195
216
193
201
189
127
262
205
228
172
178
158
163
245
237
234
161
152
218
182
205
242
204
134
239
182
152
226
247
207
218
219
182
239
245
194
194
205
193
249
212
183
171
191
276
204
194
192
209
201
112
175
176
257
266
195
177
216
235
225
169
164
194
204
148
235
198
232
207
197
235
218
165
165
214
255
221
215
199
173
220
141
188
224
213
195
236
199
184
177
215
230
182
197
196
267
149
157
190
247
214
203
188
225
178
256
219
181
226
128
140
232
151
146
198
202
199
273
226
236
233
195
139
200
174
173
187
195
182
226
174
175
166
218
194
229
246
180
208
215
269
251
237
183
213
228
246
144
184
226
193
216
177
185
190
147
223
221
190
204
164
187
174
172
214
138
152
187
239
240
219
209
175
183
194
188
166
202
150
255
170
180
71
210
193
185
167
202
162
164
239
202
186
177
116
161
254
234
197
192
190
182
203
203
209
258
220
187
223
201
198
225
162
198
217
201
148
145
115
243
190
236
217
205
223
158
217
203
228
165
249
167
202
182
217
187
210
139
219
143
195
206
197
216
239
196
142
155
196
211
191
210
231
167
265
236
177
240
218
201
226
186
175
205
228
264
200
233
170
200
73
182
130
207
178
221
219
198
182
229
251
280
169
213
219
245
211
223
230
212
184
220
218
228
235
216
192
189
261
244
171
225
242
223
198
200
250
192
251
254
206
203
202
166
227
204
207
224
170
223
179
168
205
165
184
180
208
192
211
200
102
179
191
145
121
194
191
253
191
252
196
201
182
303
249
188
212
233
209
185
183
207
177
131
245
193
149
173
242
164
225
155
210
171
241
177
249
217
168
187
200
162
197
247
214
238
243
224
221
147
238
207
171
201
133
250
167
221
223
249
168
230
252
172
252
218
204
234
207
124
204
239
185
194
254
216
207
205
208
199
177
115
193
148
177
211
166
205
214
239
215
211
234
233
161
161
160
151
212
225
242
205
168
216
187
235
234
197
136
218
207
213
197
180
260
253
263
214
149
199
238
206
204
270
200
179
252
202
194
143
224
180
250
272
203
198
208
189
191
241
246
145
223
153
222
242
117
227
208
201
223
188
202
194
188
198
204
257
246
181
198
210
196
225
182
191
259
156
194
185
233
180
152
213
231
184
263
226
153
262
175
205
189
219
187
217
175
256
172
270
205
253
249
179
207
222
199
158
209
227
214
200
231
213
199
185
150
201
252
162
265
186
177
182
211
186
161
153
187
228
191
144
160
170
266
228
221
168
207
238
185
218
230
203
191
196
224
171
197
206
180
160
236
235
187
206
202
178
227
198
231
209
203
246
192
175
195
178
251
141
191
286
224
291
214
241
189
212
208
237
203
243
232
184
201
225
270
187
202
140
200
120
175
244
198
212
224
229
200
207
216
169
181
175
126
194
258
159
134
243
203
245
241
238
167
158
209
204
124
164
185
210
202
255
204
168
164
217
238
178
207
242
238
200
142
182
207
267
283
161
192
211
158
226
181
246
215
164
231
231
112
145
262
286
162
215
167
296
171
181
206
185
203
204
275
205
122
167
215
263
244
272
201
204
210
237
204
205
287
200
201
156
216
246
122
194
198
181
186
205
189
169
202
161
181
213
154
175
231
183
242
226
171
191
223
128
248
195
186
226
169
193
208
244
193
178
230
198
186
179
198
172
172
244
211
196
168
188
190
199
261
255
198
186
271
223
271
233
235
262
198
188
203
189
217
148
272
201
165
235
136
165
213
200
153
187
239
183
203
202
192
189
178
193
239
235
172
216
250
165
216
168
211
223
173
240
188
204
190
154
244
251
208
183
261
144
221
213
189
202
173
173
164
159
214
196
204
212
141
238
159
209
234
192
192
178
174
224
167
193
187
191
243
244
155
203
213
237
223
208
186
156
204
166
187
186
208
172
236
280
245
174
242
222
165
243
254
199
166
191
171
176
193
178
127
197
200
214
191
153
225
201
204
147
153
166
162
233
130
162
188
151
135
172
222
241
180
157
227
263
196
200
190
234
224
192
202
245
174
227
235
221
206
158
179
231
150
176
151
207
239
181
168
242
189
206
188
199
239
216
118
174
207
191
221
141
221
180
188
134
193
216
211
169
141
247
178
178
197
149
261
225
224
189
139
144
207
174
214
255
193
212
150
195
188
208
214
232
178
170
226
206
153
235
243
210
178
226
211
165
164
191
214
222
210
156
239
207
244
274
199
220
188
142
218
220
251
239
191
255
203
216
153
204
269
186
239
207
201
172
121
204
227
113
208
169
175
178
191
182
193
237
173
260
202
231
201
189
172
254
226
200
153
175
208
195
208
223
166
181
151
240
174
173
168
218
206
232
238
211
217
130
188
210
206
244
289
170
153
225
216
169
237
204
182
214
189
223
215
199
191
190
166
161
258
195
212
205
200
172
240
138
221
225
250
248
218
185
191
235
205
210
167
174
169
209
217
189
130
197
203
213
167
183
145
194
189
182
160
199
261
221
156
237
214
158
249
234
224
128
259
247
163
202
250
211
217
217
189
191
196
204
214
174
144
183
205
255
207
206
181
268
221
254
223
220
155
159
218
211
219
255
216
142
212
168
212
169
246
233
225
189
138
232
210
271
223
239
213
217
217
224
174
220
291
228
206
121
215
283
218
181
224
180
198
274
169
197
240
251
240
178
196
235
219
230
215
238
173
212
236
163
134
186
169
212
145
195
196
239
203
228
219
168
219
246
258
187
174
269
188
186
181
181
181
194
208
233
181
187
173
228
224
190
205
216
171
241
238
182
202
151
171
294
211
167
233
267
184
190
169
204
222
203
175
205
257
216
209
160
204
247
229
175
215
245
182
183
227
236
199
204
130
200
257
156
238
228
182
235
213
254
208
191
202
210
203
149
206
204
204
254
249
209
187
205
229
250
193
125
232
176
203
170
258
235
225
196
202
178
168
207
130
180
221
240
198
197
239
177
148
246
251
194
169
261
203
170
200
220
166
234
188
192
194
190
152
214
178
171
193
175
172
270
195
171
228
265
250
190
268
146
217
179
226
228
225
234
245
254
284
182
256
145
229
240
234
236
179
232
182
202
149
266
269
178
195
218
256
188
125
189
227
268
179
249
211
115
220
190
257
179
199
228
151
207
215
148
213
225
193
238
214
209
230
191
162
169
223
248
162
222
191
192
247
177
200
250
156
144
218
206
186
160
216
219
213
207
244
229
274
164
188
187
185
131
221
191
186
226
188
201
147
179
188
217
173
228
225
225
226
190
272
230
140
141
207
196
139
176
201
195
146
158
172
243
220
212
191
244
198
154
239
159
167
233
227
130
245
178
253
190
176
195
193
223
262
226
209
189
252
216
220
209
230
158
220
243
194
155
155
217
189
210
186
201
175
203
202
241
204
211
244
165
197
190
232
192
176
152
190
193
274
211
213
173
161
236
197
203
191
243
186
193
126
205
222
205
198
183
175
207
234
273
171
228
252
256
210
155
219
177
178
252
231
206
239
152
213
201
152
244
204
181
163
207
271
209
177
199
247
249
264
195
252
204
182
221
160
221
152
228
189
210
148
209
153
198
165
195
204
114
191
143
180
133
234
224
220
168
197
191
212
194
203
184
176
219
255
230
193
238
226
243
213
217
134
190
149
179
164
188
212
166
205
227
152
200
190
197
228
192
287
211
194
223
219
208
222
244
166
214
246
187
250
178
235
196
166
202
192
187
193
234
213
214
167
208
250
178
225
199
195
185
151
199
210
225
199
241
138
219
210
238
228
172
149
242
157
253
160
203
183
214
241
230
197
209
211
187
215
189
165
222
219
207
215
212
198
177
250
180
226
191
244
169
212
236
213
179
222
178
207
183
223
214
251
196
170
253
210
182
163
211
182
175
224
196
133
151
206
200
160
192
267
194
222
170
218
191
222
191
230
215
198
174
137
210
209
152
272
193
218
130
214
182
184
182
185
142
212
273
184
181
212
218
185
175
236
269
184
210
237
184
164
250
141
204
177
247
194
226
123
182
186
245
250
178
214
172
220
273
176
188
196
171
130
251
240
250
209
195
184
181
215
171
227
219
206
232
213
120
231
217
173
228
168
192
169
212
162
178
187
193
205
95
196
246
178
255
232
199
196
217
262
215
168
173
188
201
240
205
161
165
256
187
216
201
165
167
155
171
225
223
212
172
150
243
230
262
216
230
213
204
218
198
206
172
231
226
243
236
141
224
151
206
220
230
219
182
175
259
172
178
151
124
214
142
189
185
239
246
192
200
232
213
262
191
160
145
162
207
148
206
151
201
268
277
226
192
201
196
185
143
167
216
208
200
238
234
137
149
190
134
134
215
248
204
159
251
198
110
233
155
176
194
140
201
161
254
212
215
158
162
182
230
230
158
208
161
188
210
197
176
200
181
185
163
199
200
208
240
138
212
264
230
212
181
246
178
249
238
203
200
184
239
151
186
223
211
249
187
209
165
236
217
235
196
170
212
180
186
154
230
182
184
196
152
207
182
171
182
227
209
202
158
211
264
235
156
179
219
195
184
200
225
244
192
212
146
136
234
233
213
197
158
177
174
189
169
156
143
196
211
210
213
250
237
156
213
209
231
219
221
207
231
105
195
246
236
206
200
156
171
255
148
224
168
201
247
247
183
122
196
197
179
109
231
221
229
182
219
238
153
178
266
167
178
231
239
253
272
220
213
186
181
184
227
210
208
214
146
181
193
236
145
268
219
228
205
207
153
189
221
206
129
210
151
227
185
236
247
156
164
191
218
114
170
219
266
137
165
217
197
202
208
208
133
188
219
285
288
204
215
219
220
139
199
242
197
188
207
241
181
248
178
224
228
191
178
169
247
162
155
179
242
212
238
190
169
203
203
207
248
241
176
191
256
232
190
181
165
192
212
202
178
174
219
258
239
218
228
126
211
244
173
196
211
159
193
185
254
166
221
210
215
103
177
203
183
244
195
225
160
198
199
262
232
232
267
193
199
221
202
234
176
226
192
106
185
153
184
181
203
212
155
125
216
227
178
191
225
237
211
190
253
213
232
213
150
224
193
197
126
179
178
207
232
165
166
228
230
234
224
155
137
155
154
198
191
207
268
203
185
218
235
222
214
222
218
247
191
158
213
245
187
233
236
209
207
145
192
219
233
199
193
195
220
141
236
182
232
200
206
195
219
193
210
228
260
177
159
154
189
152
200
223
244
246
185
161
181
185
249
258
237
239
221
158
230
180
164
235
252
176
236
250
195
185
161
229
174
173
282
153
166
194
210
194
164
232
209
187
231
199
211
208
234
207
213
150
225
214
269
220
164
228
188
156
182
213
203
227
202
234
159
208
265
174
238
203
241
221
208
218
263
160
228
211
245
176
217
172
193
199
159
213
185
188
153
177
158
189
244
182
202
200
199
192
146
192
257
147
285
151
187
180
195
214
192
172
217
243
189
222
200
160
161
201
211
240
141
197
248
189
130
243
187
148
218
268
213
214
207
196
178
183
199
219
141
190
225
271
157
172
191
220
200
184
153
248
204
155
163
196
210
207
180
196
173
227
186
131
198
235
247
198
216
189
144
186
243
201
173
196
283
203
179
212
180
168
197
207
216
178
257
217
244
254
285
197
213
214
243
203
188
222
220
247
211
205
172
203
198
184
204
163
218
191
206
191
183
201
89
208
202
223
213
233
190
228
200
201
241
228
245
192
200
212
187
237
183
124
238
232
238
175
235
177
224
188
212
258
210
230
184
219
220
233
193
159
222
196
218
129
160
237
224
199
154
142
190
218
218
218
140
198
179
170
226
177
268
212
157
222
225
154
201
213
233
115
218
254
215
160
203
207
189
235
257
295
197
251
213
221
236
223
221
193
210
124
157
179
208
200
252
245
262
130
189
226
223
144
219
134
248
114
197
189
184
128
203
253
199
191
273
219
118
236
160
195
196
228
163
213
208
186
201
220
255
256
187
197
172
208
119
223
231
165
179
199
194
209
151
171
197
201
171
246
207
220
157
165
204
173
209
200
133
227
258
240
194
176
191
164
159
220
202
110
201
236
236
279
261
176
172
291
165
225
181
232
222
145
211
219
172
158
208
179
267
215
175
197
209
180
255
181
268
196
224
184
213
189
169
159
238
233
162
209
188
212
226
168
217
193
215
244
184
179
170
166
193
181
207
171
247
213
242
195
156
215
176
169
228
167
161
228
205
174
241
238
211
236
114
215
160
203
203
197
174
116
179
145
137
153
156
191
151
233
184
140
189
231
195
182
212
222
203
163
169
199
236
155
209
182
142
250
149
213
208
242
213
202
230
157
163
144
296
200
160
204
196
199
225
209
143
233
177
202
215
224
152
233
211
184
155
172
214
166
200
174
147
182
216
242
215
230
140
179
144
193
241
208
153
177
269
234
174
280
143
190
259
163
237
210
228
208
165
151
183
180
205
217
192
195
176
222
254
261
213
212
147
142
238
245
190
165
204
204
163
164
156
172
245
272
193
237
181
204
243
215
202
185
206
213
170
222
142
198
222
241
220
211
226
231
211
146
174
163
147
205
193
228
199
258
209
214
244
266
172
192
222
182
198
201
222
174
183
208
230
200
226
228
172
226
226
180
260
230
196
162
200
246
183
173
181
205
233
220
257
210
187
178
176
169
205
217
206
168
167
183
155
256
193
194
244
255
164
197
195
194
203
198
200
203
212
190
242
160
200
204
153
174
187
231
262
246
244
233
239
184
178
254
184
200
184
221
184
200
273
200
215
167
196
204
214
236
199
175
194
259
197
205
140
178
191
272
193
193
219
220
214
174
90
219
212
215
186
212
246
112
182
193
179
226
202
233
200
173
191
189
217
179
152
169
231
212
226
241
220
272
206
151
163
225
244
148
215
222
231
184
185
182
154
202
193
174
199
237
164
218
177
255
145
200
201
276
216
215
160
237
260
243
276
216
141
253
244
160
179
207
186
230
242
187
148
246
210
186
238
198
232
214
175
200
197
153
180
213
161
178
144
214
242
128
234
161
212
194
257
220
136
240
191
174
156
182
174
209
180
225
158
207
194
209
224
167
172
257
163
238
115
231
178
188
169
228
174
182
221
156
178
195
164
224
258
194
201
221
195
170
186
233
196
207
186
180
168
242
205
246
274
219
200
241
211
229
201
178
225
220
162
200
185
204
253
136
162
227
165
206
156
209
165
166
128
153
205
187
192
200
228
230
210
219
211
206
176
160
198
260
232
177
179
206
204
241
182
213
212
176
206
233
160
207
175
179
181
158
257
172
195
206
169
206
228
166
217
135
257
176
188
251
179
233
241
201
238
225
202
196
182
178
223
236
201
185
162
145
107
240
182
231
228
261
190
197
176
155
131
195
247
194
177
194
203
169
228
238
226
194
177
239
225
168
123
160
146
233
123
153
195
254
205
211
189
150
218
208
177
150
162
192
141
212
237
204
242
116
150
149
207
183
194
186
214
152
246
280
144
203
189
206
191
229
164
201
253
187
236
218
165
218
185
208
193
192
172
162
167
196
217
239
156
197
210
141
172
181
191
224
102
234
206
213
189
167
242
126
211
191
196
208
196
165
224
168
237
257
159
233
220
271
206
209
195
159
184
267
256
241
165
178
157
232
246
147
229
244
195
249
222
185
198
150
163
176
229
175
245
169
143
167
203
247
204
239
205
175
198
185
205
265
214
210
164
170
237
181
216
223
216
192
224
210
214
240
228
175
177
223
228
217
213
183
171
243
180
230
207
219
190
181
97
210
224
208
243
237
226
193
203
230
229
204
154
208
161
234
201
232
273
228
199
193
245
178
194
196
172
278
208
163
179
223
192
214
206
225
185
196
229
169
139
177
232
179
248
141
179
236
190
162
220
166
234
225
235
226
217
180
140
216
174
188
187
190
194
206
150
149
222
212
197
230
187
261
224
227
220
235
197
206
210
220
238
202
201
203
211
204
254
232
160
272
210
181
264
248
177
194
270
191
207
203
189
187
256
213
243
142
202
225
203
256
210
213
173
245
266
198
130
220
227
209
237
226
213
251
125
183
180
223
163
213
170
235
159
164
225
195
240
197
187
172
172
189
250
240
189
164
188
148
188
212
218
223
154
231
204
210
204
167
190
233
148
179
178
193
179
237
211
236
179
237
214
181
171
254
172
169
150
166
231
212
232
129
244
214
233
195
188
236
198
176
213
237
171
180
196
212
181
154
184
203
232
125
246
198
199
181
214
143
143
205
173
218
224
190
172
210
157
160
203
222
216
205
136
220
236
189
161
167
223
204
203
219
186
168
233
238
196
184
191
176
180
238
212
266
120
228
199
234
181
225
159
209
166
214
198
243
200
130
166
186
228
218
131
220
191
226
234
170
222
187
194
169
282
174
165
172
188
241
225
251
227
197
194
168
271
158
209
178
255
181
202
196
167
254
199
203
216
240
181
237
180
207
211
220
178
167
235
193
188
166
236
271
105
172
119
147
188
151
219
217
214
167
173
226
234
213
224
261
212
211
213
175
197
188
210
202
227
189
141
182
218
192
228
167
151
152
226
222
218
214
225
177
208
235
196
183
181
206
163
158
198
265
159
229
164
259
144
231
203
183
226
208
195
222
193
193
166
198
190
149
172
223
259
181
260
194
156
214
180
193
209
172
168
228
193
194
224
221
237
240
220
106
210
220
144
199
199
244
194
134
175
215
167
228
261
188
199
197
212
243
219
211
138
235
195
213
174
219
189
178
184
193
138
213
103
230
194
232
207
219
194
221
160
220
213
167
199
226
194
195
204
230
226
135
228
187
164
150
146
207
210
219
165
199
192
184
194
236
200
222
209
171
206
157
187
222
205
238
178
177
217
213
194
239
227
205
197
233
230
200
184
207
153
92
186
202
206
139
188
189
187
204
237
182
202
192
222
214
166
161
192
156
206
181
205
290
185
226
176
220
176
133
196
222
136
206
166
145
267
269
200
206
258
130
220
221
185
219
225
199
174
224
221
241
201
165
193
188
170
161
227
248
168
208
200
107
193
254
198
183
220
198
242
206
230
257
197
148
218
239
213
146
217
247
196
163
209
178
222
199
218
190
171
266
160
233
160
194
276
245
227
188
214
212
182
235
201
195
181
229
217
210
190
222
208
195
198
229
174
217
148
169
174
238
229
208
233
223
218
250
193
211
203
230
214
157
231
206
215
167
163
253
227
159
154
214
213
232
230
232
285
195
188
144
182
245
193
226
173
241
212
218
258
222
180
233
212
199
189
165
236
229
232
197
247
191
174
187
234
215
179
193
179
202
167
175
246
213
210
216
226
191
255
193
251
200
191
255
270
254
205
227
178
156
167
249
154
220
196
257
185
229
230
142
198
228
204
194
225
155
216
194
167
197
235
233
161
201
109
160
111
205
184
228
236
149
199
207
207
205
173
199
230
139
227
220
222
192
190
155
205
256
213
211
181
217
177
182
138
186
253
205
222
202
215
243
213
155
242
208
219
212
149
204
203
210
184
214
185
207
167
186
269
227
208
176
133
167
204
170
180
214
219
178
222
178
218
163
167
176
158
249
159
191
174
272
217
195
157
218
239
198
206
175
157
204
176
187
221
169
195
158
190
166
244
203
239
176
143
182
182
125
236
208
171
225
218
282
190
231
222
174
191
187
175
135
211
149
260
234
199
179
167
181
196
164
224
234
204
242
225
263
217
158
171
174
236
232
165
283
231
171
228
236
255
157
152
209
231
160
240
173
227
205
205
205
187
217
214
185
210
221
223
272
246
234
162
213
255
214
192
175
136
211
164
172
220
184
171
209
196
183
221
220
190
226
216
185
225
269
234
210
211
200
188
249
156
159
236
206
224
132
196
192
229
201
199
175
183
213
186
248
198
124
211
191
226
157
202
214
145
286
189
191
177
236
104
229
179
217
198
221
196
214
270
189
237
208
248
203
183
195
206
223
216
182
236
153
185
224
228
138
177
157
212
135
206
134
160
193
196
177
150
209
204
219
225
187
166
212
180
204
178
180
195
133
241
185
153
220
165
227
173
163
179
191
209
127
209
234
167
188
136
227
240
198
208
244
226
217
119
200
201
234
247
198
184
167
236
169
230
170
218
256
228
213
180
185
189
193
215
175
214
199
194
182
174
182
212
203
195
189
178
224
238
202
138
195
197
212
208
145
180
160
244
227
163
223
168
162
147
208
256
232
188
194
205
210
193
155
236
221
173
187
197
201
151
212
191
221
169
239
177
243
204
216
189
276
149
263
183
234
128
217
264
178
196
216
173
201
189
231
146
223
211
271
151
205
174
171
205
205
217
195
214
190
200
157
163
205
205
225
141
227
219
220
154
191
168
177
193
212
246
163
164
230
142
161
150
170
184
204
207
163
226
218
191
145
236
151
217
220
268
184
240
198
178
218
166
200
275
241
152
175
156
135
205
206
228
232
161
172
218
194
234
167
266
264
171
177
138
159
222
137
164
245
229
286
223
201
171
181
212
199
181
171
195
117
147
241
189
192
192
181
152
213
259
222
240
209
191
180
220
203
248
166
231
210
151
215
224
223
228
229
206
154
230
187
169
178
225
121
250
234
224
173
189
160
238
178
172
206
179
179
167
244
247
126
205
220
122
262
90
220
250
256
237
215
199
188
161
208
220
228
227
128
190
155
211
265
165
169
185
248
110
199
230
235
195
146
194
237
176
180
227
182
175
229
203
163
166
231
206
230
207
192
210
223
206
186
231
267
254
160
224
214
229
202
220
154
236
186
232
202
189
118
209
188
224
119
230
190
170
219
269
144
241
204
215
191
174
222
230
172
187
170
214
232
181
227
203
174
138
219
198
246
184
202
208
145
158
225
197
200
185
207
240
177
250
203
223
167
169
230
269
227
239
171
207
178
204
223
206
229
215
234
226
186
210
212
150
193
194
175
208
211
133
236
181
173
263
212
227
197
213
92
144
148
238
101
237
232
148
112
201
168
212
234
207
205
190
200
253
233
192
154
149
171
229
232
134
220
169
206
192
202
236
218
193
219
193
212
272
164
218
192
190
191
179
162
172
149
157
228
210
251
230
247
240
214
180
146
209
174
190
228
214
185
207
203
122
154
198
154
175
233
250
215
244
161
213
177
213
198
220
196
203
234
239
180
204
128
227
205
199
156
171
226
179
165
231
227
183
188
168
229
223
239
174
212
171
183
172
185
251
174
140
187
176
179
191
186
247
234
253
175
173
198
167
164
185
241
209
243
191
245
241
196
203
205
246
201
175
253
188
208
284
201
208
157
183
192
238
147
249
217
211
179
209
193
240
198
164
174
231
199
146
243
227
196
202
192
221
158
196
205
192
196
170
208
234
181
243
182
208
195
259
218
165
164
226
212
215
245
259
203
221
174
179
166
207
170
192
196
173
222
175
191
193
156
154
197
233
235
194
175
235
145
179
236
240
239
202
244
187
193
202
195
166
174
232
210
242
174
228
186
209
197
211
155
213
187
244
133
179
177
232
191
233
194
245
219
180
176
210
119
225
257
237
186
163
163
193
187
216
185
208
209
211
244
260
238
207
181
257
213
256
215
185
136
201
195
179
177
220
174
222
187
158
227
192
191
196
199
106
171
238
183
242
201
245
234
204
149
213
202
193
177
233
213
194
171
159
167
205
215
199
208
152
186
136
244
194
177
176
234
222
232
129
173
260
208
217
178
204
203
193
190
234
202
188
184
262
151
137
256
199
174
186
213
193
207
188
159
183
175
241
236
275
196
218
218
182
228
205
118
188
198
200
211
160
187
253
219
163
218
209
277
244
246
172
227
157
146
217
221
214
207
215
229
153
136
171
228
208
226
210
220
229
277
272
211
158
225
209
226
188
235
207
221
184
215
183
180
196
218
178
147
252
226
167
130
218
232
149
216
164
205
166
200
256
248
154
260
219
169
178
167
232
256
196
241
239
200
249
256
192
142
207
214
214
225
218
160
158
240
202
172
241
267
208
196
235
126
152
208
206
214
168
159
228
213
172
196
174
210
132
258
247
186
217
175
233
184
226
217
169
192
148
210
192
212
171
216
223
205
120
148
165
185
228
222
157
183
201
223
110
225
216
201
169
243
170
234
176
174
233
198
181
208
167
200
170
238
189
258
214
244
268
224
230
183
197
217
185
198
203
177
195
145
163
199
224
202
214
163
210
270
194
240
185
228
146
162
132
175
244
180
199
204
203
193
184
142
198
152
161
191
207
157
204
232
214
233
227
243
156
230
174
217
187
172
225
213
214
211
235
189
214
153
169
228
222
226
185
184
237
259
165
202
252
228
206
221
217
242
130
216
158
204
226
180
244
229
226
215
171
229
200
170
190
173
217
193
188
168
149
193
237
149
239
185
197
170
276
229
215
214
162
174
229
189
198
185
153
265
233
282
187
168
168
177
222
151
169
169
234
212
262
263
268
151
206
209
273
195
245
182
109
224
187
223
204
275
207
187
135
202
203
165
259
233
174
192
197
159
252
193
207
198
266
203
141
182
230
174
272
250
255
151
233
238
202
172
191
229
214
229
210
236
223
240
189
206
204
183
154
238
137
165
180
210
204
168
186
156
175
210
209
231
218
149
161
242
139
193
255
202
236
233
254
238
160
211
244
198
259
217
213
184
187
221
256
186
206
180
178
186
216
236
210
218
184
246
212
217
182
234
241
141
224
196
228
223
171
195
219
204
221
258
184
203
222
189
170
226
207
238
235
202
188
192
210
247
196
202
157
241
228
206
235
168
238
207
192
154
219
207
224
201
172
213
213
212
223
186
259
205
171
137
208
266
197
215
215
262
151
205
171
127
246
202
186
209
250
238
241
126
193
177
232
275
199
242
202
163
193
139
162
227
213
198
261
203
139
163
141
196
185
179
232
226
165
233
201
223
193
247
222
208
223
155
231
242
198
154
149
218
217
186
184
157
203
223
252
146
139
147
223
156
221
233
143
187
241
205
241
124
195
196
266
162
174
228
256
138
213
277
222
219
250
195
146
208
162
229
206
233
161
247
214
182
190
204
218
197
202
221
175
187
212
239
260
200
177
255
206
161
190
172
152
214
198
176
189
230
169
156
195
180
186
192
212
194
241
219
176
145
185
237
147
232
183
152
204
160
164
195
185
144
199
218
274
177
165
214
185
259
233
208
226
209
250
204
150
247
177
179
198
231
197
214
167
226
224
162
227
227
177
268
187
230
230
202
160
224
248
102
242
195
184
231
169
178
160
226
156
250
219
158
215
202
223
177
194
217
214
198
194
187
229
218
138
171
245
234
230
230
258
199
238
216
177
210
189
218
227
234
198
235
165
169
228
171
197
169
196
198
137
214
190
179
201
250
244
233
206
178
218
126
171
242
221
161
164
250
184
274
152
231
129
236
153
211
240
199
195
164
245
253
199
163
245
152
206
171
247
264
224
200
202
281
166
200
139
172
218
148
244
232
211
268
215
196
202
185
147
219
135
151
164
234
244
226
246
243
224
202
175
229
198
91
260
243
226
169
212
148
166
206
108
134
265
244
153
239
215
224
215
252
223
192
261
243
167
167
207
206
172
193
194
178
252
188
209
196
205
167
253
183
224
154
222
199
126
162
215
182
199
198
168
137
161
175
180
191
205
238
275
237
135
214
204
231
210
266
181
205
228
186
224
163
168
250
201
167
223
153
218
172
155
165
204
164
183
189
242
162
189
188
245
193
249
165
176
203
122
102
220
209
210
193
249
187
210
142
176
162
188
231
211
215
162
232
258
196
220
186
174
249
176
171
209
173
176
191
207
241
151
116
185
217
137
201
172
194
168
183
195
142
227
232
202
172
230
229
188
223
182
243
170
246
183
231
147
264
213
170
256
128
152
202
180
160
238
181
194
195
179
227
202
177
191
195
197
200
218
179
213
194
218
162
151
201
99
248
251
214
161
243
212
192
196
189
220
183
242
214
184
192
221
144
187
197
214
193
189
170
166
207
208
151
185
243
187
157
160
158
172
185
215
218
211
176
202
139
217
234
215
230
188
210
180
225
187
245
181
214
208
218
206
210
228
198
228
188
214
209
223
166
254
172
202
150
172
184
196
217
213
202
209
136
201
121
231
202
231
284
251
205
194
243
249
192
239
135
206
234
223
167
173
221
182
249
176
274
207
228
209
176
221
212
190
200
176
249
190
268
217
272
202
133
155
229
257
210
233
181
250
220
259
228
206
252
191
197
159
200
205
237
207
271
228
228
186
208
167
177
223
108
204
140
206
143
162
207
180
189
212
239
200
192
215
169
166
249
239
240
226
192
224
167
236
213
176
224
189
193
189
214
218
204
116
225
165
197
185
226
216
190
176
157
232
108
169
159
190
210
199
270
181
183
212
139
175
190
240
179
182
189
195
213
149
209
266
265
258
210
218
179
185
169
213
204
141
187
279
231
120
200
200
141
165
240
212
188
98
185
246
186
184
181
200
223
238
174
223
247
260
223
200
257
197
224
210
248
207
212
189
207
161
222
284
229
153
191
132
170
171
173
209
236
205
152
190
130
192
228
185
196
180
229
167
213
218
172
199
190
195
112
192
152
227
181
188
201
159
190
186
231
182
227
166
253
193
152
133
198
161
172
129
206
224
234
179
169
212
222
200
209
130
226
241
169
202
203
206
207
184
194
201
187
199
189
217
207
229
189
170
200
212
165
182
157
204
154
256
236
156
149
199
244
231
190
168
196
233
182
151
218
158
203
150
256
212
209
233
248
196
179
208
143
197
163
260
212
200
186
179
209
183
219
253
205
188
186
216
204
218
182
216
182
191
236
193
153
203
209
186
218
211
185
231
222
240
196
228
194
190
216
161
138
251
255
246
216
126
218
180
157
239
213
200
253
191
202
223
231
278
211
247
227
174
226
207
203
236
252
197
245
198
196
147
214
260
163
187
171
202
185
163
215
225
218
205
119
242
242
222
160
204
230
149
258
227
241
206
232
185
210
213
205
259
164
207
242
123
189
237
181
236
183
177
216
176
199
187
261
116
205
240
183
181
125
184
174
235
250
218
153
134
271
197
152
235
114
228
202
190
205
137
152
239
186
211
196
190
185
163
183
173
161
133
209
216
228
199
225
224
184
212
254
232
158
215
199
217
184
227
214
270
193
208
222
239
161
220
239
185
202
248
144
142
209
208
215
146
164
140
196
229
199
195
174
191
217
151
255
240
204
199
190
233
214
163
183
194
205
207
164
166
215
265
137
214
176
199
209
172
226
184
241
189
146
238
193
230
219
179
203
193
189
207
209
179
221
207
226
177
221
207
179
250
170
226
240
244
200
232
220
160
231
242
238
214
231
200
224
189
281
190
133
227
215
209
187
221
159
257
250
235
167
224
203
219
134
208
218
238
180
133
285
253
219
225
192
102
165
187
185
166
165
256
183
254
252
146
170
202
187
241
231
144
193
232
191
236
202
238
199
187
202
191
202
213
214
184
182
131
188
189
172
236
172
215
222
167
165
219
220
150
179
215
233
161
247
182
188
205
197
160
157
162
176
225
142
258
202
180
159
220
222
210
186
192
180
235
230
167
208
223
223
200
177
182
167
217
267
213
225
216
207
192
212
202
235
163
219
134
191
197
201
237
185
173
214
224
167
178
223
258
221
200
241
204
215
201
256
212
231
219
207
190
199
230
205
187
250
223
211
206
167
214
176
192
204
220
134
236
214
222
203
192
244
233
246
170
197
189
205
189
228
83
183
204
190
208
210
218
173
200
163
144
210
131
222
187
176
162
254
160
206
161
173
142
216
231
204
219
181
181
248
124
230
205
235
214
195
204
214
231
205
255
156
244
211
181
161
207
228
201
245
166
185
174
127
238
199
139
155
248
201
215
189
175
140
189
172
204
197
232
226
215
218
165
256
233
195
225
210
199
186
173
233
162
270
221
187
192
199
158
179
201
220
259
208
184
252
177
236
222
163
247
173
236
180
226
174
190
197
172
127
227
202
143
200
215
237
253
225
184
236
188
217
230
235
195
207
204
208
149
241
140
175
288
179
169
168
220
169
141
220
164
225
209
253
248
191
206
153
232
161
209
260
248
262
184
212
169
171
219
262
237
167
147
244
190
215
161
174
127
154
203
153
218
227
181
186
157
185
222
244
263
203
229
205
252
204
192
234
288
183
207
216
120
210
213
269
152
220
193
205
244
190
179
168
166
211
205
247
219
222
138
195
171
164
168
243
230
182
240
231
204
158
184
210
188
205
219
193
233
223
208
213
175
203
203
220
161
143
210
137
170
237
207
227
185
181
207
216
262
211
185
228
257
181
256
223
216
200
198
237
260
110
233
217
214
116
178
187
240
187
156
221
182
245
213
243
177
253
199
143
217
153
214
223
191
231
181
190
225
234
197
193
176
247
164
219
205
199
238
244
227
149
198
154
167
253
173
215
239
215
156
249
211
195
240
209
257
188
161
185
177
251
200
237
194
206
213
197
219
197
217
254
239
227
162
206
201
204
190
231
166
246
212
205
198
215
212
198
189
222
189
182
218
243
195
181
229
196
216
229
211
213
193
184
187
158
252
206
216
169
218
201
163
239
205
181
175
200
203
175
207
199
156
196
184
187
233
155
193
186
180
201
212
229
132
198
233
211
186
202
219
173
223
101
271
118
247
194
247
212
236
153
194
286
203
205
231
180
227
212
226
214
168
180
209
197
215
245
177
190
193
126
229
184
191
223
228
258
213
192
248
230
205
132
186
161
231
174
266
142
224
207
184
234
168
182
204
237
271
194
220
168
218
178
226
205
240
197
212
222
205
179
223
171
253
255
206
258
204
193
193
269
199
227
155
209
245
224
178
213
177
164
216
253
195
186
222
177
184
198
156
197
222
228
196
197
264
241
212
234
153
189
210
219
202
192
209
218
199
194
175
155
183
204
128
211
225
223
224
216
203
223
229
228
197
188
215
201
232
194
228
228
163
175
174
200
178
214
238
257
145
239
151
209
194
136
182
236
177
175
264
209
178
169
177
224
158
243
181
201
163
258
241
153
197
155
186
201
117
190
188
214
200
209
180
205
230
260
233
195
199
205
223
225
209
163
249
211
259
158
228
240
207
190
197
200
281
170
187
168
139
167
184
183
202
131
217
181
233
236
147
179
192
165
187
191
206
226
211
210
216
143
127
207
196
193
150
208
204
221
254
202
217
179
173
223
129
196
161
248
218
216
207
281
185
233
243
224
113
273
201
241
210
227
207
206
212
200
214
178
197
221
242
172
151
215
228
147
215
219
178
170
232
138
110
188
254
183
162
150
148
227
266
285
187
200
225
230
156
260
180
223
184
151
245
212
222
263
245
123
207
187
140
189
264
207
215
241
144
206
227
263
176
154
200
250
187
165
209
177
244
272
196
175
199
237
183
232
214
212
223
211
160
229
184
211
187
211
233
181
236
129
127
166
248
215
236
201
193
165
211
174
172
225
132
289
171
226
223
198
216
211
198
262
220
82
221
252
214
247
247
188
234
228
181
236
155
230
150
208
180
270
225
185
219
180
273
188
142
205
175
227
228
238
201
203
193
238
165
171
209
156
261
212
165
237
175
148
228
179
162
219
185
221
227
216
222
183
233
154
295
154
201
191
201
165
169
210
220
231
192
165
216
211
225
148
220
156
198
253
181
189
189
215
250
195
216
244
201
172
163
214
204
200
195
210
179
223
171
207
216
230
192
249
219
231
218
195
168
189
178
181
269
225
209
199
185
191
232
157
164
206
212
227
217
214
211
277
235
239
241
209
195
207
159
275
215
257
185
156
190
188
179
222
213
173
158
225
186
197
196
197
163
215
231
233
147
180
200
202
210
214
221
244
149
186
177
222
196
257
201
159
163
167
253
239
153
215
160
239
241
217
141
195
231
201
190
254
184
140
208
169
169
174
161
217
202
256
224
204
217
195
177
178
219
224
171
248
195
188
222
221
225
280
178
179
229
204
211
162
162
157
242
244
257
224
206
213
228
186
205
179
210
165
213
105
206
185
181
261
216
211
229
282
157
204
191
149
239
236
146
259
218
229
222
193
184
123
185
197
266
257
228
178
199
192
191
236
247
153
195
121
201
136
225
246
171
223
232
252
224
205
259
206
164
257
170
216
189
191
239
228
249
149
214
189
209
252
174
229
207
228
182
174
210
218
181
242
178
215
190
173
230
150
241
159
197
237
200
185
205
216
139
234
194
189
212
210
145
268
183
217
241
219
218
207
189
172
174
195
191
210
209
201
234
221
210
172
194
191
225
226
186
160
156
181
176
176
167
235
199
122
155
172
194
216
173
151
196
174
151
214
211
250
225
205
162
219
174
169
205
258
146
268
217
209
192
195
152
175
210
230
227
143
184
187
179
245
115
188
213
198
178
200
264
189
185
206
210
175
230
251
156
251
264
192
194
226
188
162
203
249
290
165
217
235
191
191
272
169
156
253
276
238
161
223
268
278
179
208
166
239
243
222
262
146
199
168
120
182
136
220
175
150
149
178
173
199
233
215
226
231
147
192
199
212
208
248
168
217
217
178
201
239
211
210
207
206
145
179
216
267
217
188
228
247
175
226
225
220
228
216
202
233
223
229
177
191
241
199
182
176
209
197
146
250
199
241
174
201
230
108
237
189
190
211
163
177
197
232
162
241
175
167
123
203
221
175
205
187
233
176
142
214
214
211
195
159
196
113
208
157
219
250
219
171
157
214
215
200
209
237
145
167
234
180
204
215
192
190
161
216
142
286
245
180
166
182
144
224
190
155
216
202
205
241
200
180
194
249
231
234
205
219
246
217
212
161
212
202
225
204
199
190
193
191
235
178
202
187
212
239
175
165
229
184
168
177
197
209
203
182
191
249
264
223
207
170
151
208
160
227
175
150
222
219
163
214
180
190
237
177
208
195
122
210
152
244
194
186
183
215
209
199
233
229
158
250
267
204
204
198
175
207
133
227
162
200
209
191
205
195
166
231
101
159
173
175
236
133
188
235
187
236
196
230
211
142
182
238
193
197
154
223
186
226
156
238
226
148
162
145
260
203
198
179
207
216
200
236
174
162
234
214
254
181
204
188
198
246
255
189
120
187
180
155
268
267
138
238
224
197
210
161
258
203
204
127
208
170
249
231
224
245
274
189
203
145
176
140
226
167
232
193
182
166
230
228
238
238
124
171
164
204
190
145
181
209
170
212
194
165
188
169
235
182
184
127
171
219
202
203
156
232
222
179
253
276
220
171
223
271
247
215
179
215
148
221
238
151
191
256
151
183
157
159
136
146
158
161
188
205
169
202
184
228
230
227
148
252
213
121
157
243
225
228
177
156
214
190
215
176
177
132
182
202
221
182
243
230
227
203
176
221
165
264
156
207
202
129
181
184
186
211
254
218
200
186
197
205
196
191
196
195
178
220
199
195
237
194
217
216
201
141
213
245
255
161
207
229
177
186
235
218
218
221
211
198
160
251
219
212
250
234
186
230
205
182
220
205
204
197
214
218
241
212
203
194
202
230
152
192
204
218
174
202
253
196
214
145
232
179
187
195
198
231
277
155
231
194
246
275
277
168
202
189
178
207
145
191
120
178
247
196
217
199
215
148
206
207
162
185
214
208
173
139
195
220
229
226
215
148
119
201
168
240
228
159
234
193
202
137
191
259
234
239
154
207
166
158
165
203
202
130
235
219
246
186
210
214
224
185
269
158
168
189
214
168
201
198
192
163
192
167
161
213
210
164
233
251
277
161
140
176
233
153
124
133
222
184
226
213
162
206
212
159
169
196
207
243
233
185
211
177
199
143
220
234
214
176
221
166
198
145
205
230
199
181
188
264
155
125
156
239
189
188
134
211
192
244
217
253
181
181
151
185
244
203
227
151
225
211
224
179
180
215
211
219
199
261
168
118
208
205
203
173
195
252
174
222
172
216
194
213
221
205
195
182
165
182
216
207
192
180
212
197
178
194
218
240
184
231
184
221
193
216
220
236
197
175
201
159
225
201
216
225
150
200
166
259
187
143
179
199
249
217
200
267
177
197
175
177
159
217
217
251
175
221
186
186
190
240
210
175
195
228
199
220
150
238
173
177
211
205
129
176
182
168
212
164
238
185
205
166
195
182
171
218
248
146
209
237
138
232
241
234
181
203
190
232
270
263
268
214
247
233
157
204
216
238
201
207
250
218
176
215
139
201
217
184
241
216
250
178
159
222
243
231
220
205
223
227
133
201
179
216
231
208
182
184
188
149
166
190
156
142
218
163
167
210
199
183
243
129
186
201
170
185
199
150
171
152
179
266
224
195
233
217
163
205
177
268
194
206
182
226
229
172
145
203
229
265
240
203
159
190
195
225
234
163
213
197
177
188
188
186
237
224
207
200
224
176
187
172
200
187
230
162
144
118
212
203
237
208
213
203
269
166
186
214
170
236
158
241
255
194
209
199
195
263
182
223
180
193
178
197
277
230
231
189
269
198
217
232
212
179
217
202
182
226
216
205
217
156
222
183
267
198
196
246
209
156
173
190
166
265
222
199
194
175
223
260
178
137
271
158
152
198
191
196
165
103
148
182
220
222
185
260
243
237
146
261
242
195
226
179
199
216
215
185
211
225
235
155
205
256
146
206
256
223
197
241
203
246
252
190
220
198
230
210
176
139
163
193
180
192
255
162
190
150
204
180
222
189
195
188
170
173
222
241
179
225
210
173
202
231
169
191
158
188
215
202
202
226
155
240
189
161
248
201
222
167
229
212
147
231
231
196
197
221
236
153
139
200
232
128
179
140
189
220
178
145
226
219
182
145
203
124
172
213
106
201
201
167
136
254
149
185
250
153
216
210
200
234
209
202
247
193
171
208
180
192
182
172
205
227
130
202
183
238
149
236
244
168
273
242
181
184
174
200
202
238
164
184
250
168
239
186
159
240
204
222
230
221
237
157
196
212
180
198
210
213
210
189
217
184
114
186
252
240
183
196
172
213
136
193
205
212
193
197
163
225
197
164
168
180
243
183
211
169
260
151
225
208
230
211
184
202
236
220
229
192
218
211
206
213
224
222
284
184
261
176
154
153
191
195
229
170
156
220
239
221
236
146
216
247
178
187
204
218
180
201
162
217
263
216
221
177
213
161
214
235
206
191
266
207
170
166
222
264
224
137
195
236
166
180
155
174
194
267
229
216
214
196
195
185
199
176
202
196
176
236
247
184
189
186
156
184
236
262
208
246
179
217
177
195
258
216
236
263
259
241
217
239
242
195
268
222
158
238
156
173
232
246
263
186
179
227
179
213
163
224
208
248
200
226
197
152
180
215
206
172
155
186
160
230
221
129
192
202
201
199
265
142
225
165
207
191
204
249
168
131
241
240
179
175
197
190
165
230
208
191
217
218
152
199
270
223
185
233
178
206
232
175
218
164
214
200
197
238
195
182
207
189
212
203
232
191
155
143
195
216
183
159
215
157
194
161
216
194
193
200
159
230
150
135
182
201
202
160
244
171
189
194
204
269
246
176
191
147
221
186
193
242
207
155
177
262
233
275
203
167
201
141
126
217
219
224
150
168
147
212
152
186
227
223
275
140
243
238
202
216
218
216
170
191
203
203
215
254
273
159
291
183
133
227
189
223
232
171
172
197
225
229
198
234
215
253
155
177
200
173
263
178
187
210
186
201
169
179
177
229
181
222
233
224
188
155
156
198
177
198
167
264
230
183
248
160
204
178
186
175
210
246
220
224
186
190
214
210
244
155
204
222
194
183
189
156
114
187
163
189
175
208
252
235
169
237
195
230
184
107
204
203
247
169
176
209
209
192
250
231
172
131
246
184
222
219
248
184
203
250
206
251
210
181
237
255
264
193
178
176
200
147
154
125
218
130
162
213
164
178
220
202
211
141
211
179
182
159
189
175
226
158
190
249
198
189
218
239
230
230
223
219
181
218
178
242
229
247
170
177
194
211
158
183
231
163
223
263
206
166
223
184
159
218
154
202
200
187
186
171
224
266
182
204
180
191
188
239
188
193
169
203
184
258
184
200
223
236
203
217
211
269
150
166
199
169
187
206
204
174
199
270
201
220
182
227
196
158
197
188
234
234
119
202
216
192
220
161
286
178
241
200
221
248
203
192
174
142
200
204
241
248
217
202
161
181
276
195
193
114
264
219
220
213
163
176
172
192
197
241
222
214
189
219
232
187
159
243
202
232
232
203
213
205
232
205
174
181
220
203
154
230
196
139
123
192
160
229
207
162
230
196
227
147
275
214
251
189
153
258
244
245
179
222
198
213
219
234
195
218
234
199
213
129
272
217
241
180
102
235
230
232
93
206
156
205
239
221
168
182
196
162
206
213
188
140
272
238
195
170
184
175
181
147
209
201
160
199
206
178
225
231
206
226
227
197
208
217
177
165
211
204
212
181
209
151
174
146
260
192
185
203
205
228
189
252
237
179
205
182
199
245
126
207
234
235
200
231
189
184
218
129
226
225
175
214
244
225
220
214
263
192
148
273
199
183
205
205
249
204
228
170
253
188
169
160
206
168
200
233
246
195
249
239
212
172
237
231
198
182
154
202
213
243
248
153
172
177
162
242
206
145
224
247
266
225
238
215
206
175
145
233
269
206
236
158
160
240
177
194
175
233
148
130
197
198
135
205
199
193
170
214
221
283
194
187
192
191
264
187
203
206
169
178
239
250
180
186
189
235
159
204
214
231
188
177
205
185
144
200
197
263
130
206
175
221
151
185
229
191
180
204
145
192
191
226
223
234
193
205
180
240
157
194
275
201
187
186
224
191
172
199
214
185
176
210
237
212
199
243
232
188
228
192
221
214
190
200
199
202
202
241
236
169
188
181
214
231
208
117
177
206
229
202
262
184
253
212
157
191
172
206
201
176
156
233
137
194
207
187
225
207
206
204
206
217
211
173
234
224
197
142
227
198
144
226
183
162
201
203
217
224
199
189
192
241
171
206
175
176
170
172
184
202
197
230
182
274
185
216
172
231
95
212
208
253
237
251
237
246
167
196
244
164
208
183
211
160
192
225
168
220
166
190
220
186
176
195
149
87
209
198
221
196
127
199
199
224
250
224
166
133
207
193
171
194
205
219
145
198
220
196
223
227
244
248
219
180
207
185
221
198
208
193
177
180
167
126
178
192
268
150
262
222
209
157
250
192
228
194
159
170
196
238
215
278
180
234
157
188
203
160
181
179
268
234
219
203
183
189
248
206
170
249
247
157
200
174
190
208
223
172
221
210
215
185
225
230
195
189
198
187
219
219
255
147
221
187
248
260
187
153
203
142
172
205
184
248
274
238
140
219
237
137
169
224
221
163
190
220
188
188
227
211
216
251
172
164
223
142
122
140
186
225
275
158
159
226
159
223
203
173
226
171
149
213
157
223
157
217
189
110
237
128
224
179
227
162
216
222
153
233
173
255
196
246
224
208
226
129
198
193
197
191
117
153
180
155
138
255
250
260
278
270
197
150
254
189
163
188
192
251
177
173
205
203
221
197
182
103
168
205
200
263
234
151
205
231
242
221
264
164
180
143
234
181
197
142
201
202
201
210
244
210
150
194
197
215
170
188
192
241
217
211
241
212
166
238
218
236
118
177
208
216
258
161
215
187
161
198
214
202
208
267
162
187
246
191
245
233
168
213
153
248
204
219
210
199
177
112
269
152
237
157
234
219
247
184
245
165
197
218
182
147
175
157
186
186
148
292
182
243
271
214
191
212
173
201
254
233
209
150
193
203
261
182
196
233
236
195
160
176
149
226
207
164
194
241
238
175
222
204
249
211
185
206
195
301
163
264
136
191
132
207
181
170
210
200
172
180
213
225
246
202
158
249
175
189
194
182
223
149
143
240
177
122
137
247
226
222
193
177
193
237
211
207
210
147
234
219
233
228
236
242
195
233
134
236
182
186
132
203
221
240
168
187
215
202
206
211
158
133
71
182
122
228
188
211
205
185
212
191
204
225
195
204
199
194
169
210
214
216
217
249
184
205
172
117
211
202
191
230
211
230
193
225
216
273
199
244
224
228
177
190
184
188
182
171
168
200
206
207
225
267
215
224
187
205
158
239
254
257
244
206
191
196
222
186
196
190
218
230
165
207
165
184
205
188
193
205
226
198
164
223
150
132
155
172
194
209
244
205
181
161
212
216
221
227
165
242
245
239
196
188
156
178
185
200
258
236
155
201
174
214
145
252
179
195
184
265
170
244
201
207
215
177
208
149
167
193
219
183
181
206
178
238
189
265
161
258
230
208
237
203
205
190
205
196
232
151
210
219
251
240
223
175
186
172
238
106
185
187
215
183
211
239
206
210
147
196
219
191
227
236
222
214
190
191
208
195
234
182
195
196
225
199
239
196
224
186
175
128
234
121
170
211
162
243
177
206
216
235
217
173
231
215
186
226
168
242
174
181
226
155
228
189
214
235
252
264
207
226
178
181
192
158
152
181
190
223
260
185
214
169
165
234
231
214
232
215
247
231
171
182
203
230
217
213
158
191
203
147
228
183
198
189
153
224
193
205
204
186
156
226
148
235
214
235
181
217
180
164
149
267
222
154
240
206
228
203
240
175
218
167
221
209
230
233
193
232
223
233
197
169
208
164
234
221
213
269
200
156
181
281
198
198
192
236
196
181
263
238
187
171
245
261
212
263
194
178
138
145
169
189
214
199
189
237
240
190
218
210
213
235
205
160
147
249
179
203
186
143
253
210
166
164
198
242
203
216
178
144
205
179
232
223
204
209
127
191
182
172
229
230
195
238
218
219
208
223
199
193
221
201
162
160
166
243
143
188
173
219
217
206
192
229
218
196
174
184
167
198
183
212
217
176
219
207
184
177
196
241
246
185
242
263
139
160
245
227
253
234
156
258
161
200
223
186
246
235
221
201
221
155
252
209
189
227
219
205
195
226
251
166
235
209
259
213
250
191
184
245
145
153
185
216
161
167
213
221
196
245
173
240
226
209
171
189
190
255
172
144
269
156
235
216
271
180
195
205
213
197
189
197
211
196
226
200
222
198
190
158
213
125
244
232
205
297
160
218
188
207
216
202
144
195
190
219
194
246
206
229
227
178
160
202
246
208
168
157
143
190
185
231
217
180
198
186
173
196
206
178
196
244
170
168
256
164
202
256
134
141
204
233
223
224
244
220
132
212
202
178
196
222
184
129
179
147
186
203
229
192
147
143
196
194
193
203
189
236
195
176
236
238
184
193
197
194
130
224
203
157
200
188
232
167
168
182
267
170
221
190
180
222
195
251
228
258
160
248
169
224
211
205
187
193
185
280
216
177
160
257
181
186
205
137
154
180
219
220
228
154
179
225
237
221
187
205
219
174
171
193
169
146
194
257
209
241
220
160
154
229
165
223
150
185
231
200
200
222
211
225
183
138
190
198
253
189
151
169
190
245
198
130
236
161
204
256
233
231
176
234
183
202
178
159
174
192
221
236
244
255
206
239
185
242
175
234
211
195
200
194
224
211
213
281
264
229
210
188
170
188
249
158
182
221
136
168
230
178
221
172
250
160
209
222
251
182
198
161
202
176
227
194
253
199
223
217
209
170
167
221
257
239
156
152
208
194
244
212
220
262
210
217
213
245
199
215
172
189
210
214
266
220
179
214
294
195
168
177
260
203
227
226
199
243
247
245
240
177
194
174
182
266
199
228
217
234
198
157
148
194
206
226
185
176
228
195
277
149
202
212
192
237
180
251
168
212
247
223
278
254
193
193
140
198
234
248
165
226
149
169
147
192
162
180
244
183
255
206
210
223
220
197
200
257
182
177
195
206
243
202
187
197
141
178
220
249
222
160
186
155
236
131
238
202
202
157
182
182
200
203
218
196
189
151
185
210
224
185
167
195
191
230
214
222
237
193
234
247
158
167
154
189
219
218
259
212
209
241
220
195
161
196
194
244
277
174
221
217
187
160
172
193
186
239
200
146
242
157
268
191
150
193
185
226
261
126
177
178
175
154
282
188
250
164
108
175
185
149
187
189
191
144
213
224
257
215
231
179
233
195
209
187
231
219
204
223
196
228
191
160
243
238
192
171
199
169
189
166
215
183
184
221
193
178
206
176
148
217
202
228
241
177
153
208
196
224
278
248
177
164
217
215
222
165
200
151
160
176
191
206
188
193
135
171
193
186
260
170
189
151
176
207
190
172
230
153
182
179
197
167
210
182
201
161
184
151
186
221
173
212
242
178
243
211
248
212
168
232
154
204
179
197
209
196
244
197
204
182
157
280
240
258
187
173
232
243
164
174
213
239
223
123
207
187
244
173
265
210
231
206
187
245
180
195
182
223
114
199
249
234
218
123
183
204
267
175
210
189
164
201
160
173
166
195
197
146
259
286
250
224
184
236
229
136
185
243
200
175
263
147
204
166
221
216
153
199
198
207
225
171
233
193
241
232
224
207
265
160
189
181
217
158
240
189
268
190
178
215
156
181
162
172
239
243
215
150
209
204
199
198
229
173
155
183
212
180
178
257
198
190
257
222
169
183
115
178
219
204
212
125
214
180
200
191
177
214
141
143
240
160
206
216
170
225
249
256
209
178
158
175
208
173
195
123
233
172
239
157
155
202
200
249
224
182
224
216
137
218
215
201
197
199
198
179
247
183
182
267
183
228
242
229
175
254
202
182
246
170
182
142
226
205
182
157
209
129
241
188
238
188
247
209
195
147
200
203
249
211
180
222
204
177
247
204
147
193
174
192
241
182
200
221
191
268
149
228
169
178
170
226
196
188
244
169
213
208
211
245
128
230
210
235
251
208
251
217
94
177
204
237
193
239
178
236
164
193
205
189
193
172
157
163
218
198
170
116
193
190
164
157
215
197
217
244
160
232
260
204
254
204
219
209
176
161
205
221
206
177
181
223
204
189
213
196
210
217
154
213
213
196
160
144
216
213
228
193
193
117
177
179
250
212
204
255
177
218
221
203
194
172
140
222
186
165
245
183
196
146
141
275
196
207
243
206
251
234
206
109
227
195
217
208
234
243
205
199
133
232
238
229
200
222
239
197
170
265
269
177
188
185
162
243
239
218
153
163
206
210
185
159
227
110
228
230
264
190
246
235
194
213
173
206
162
184
280
182
231
202
195
159
148
259
212
182
251
215
168
214
219
148
208
241
220
167
196
209
160
213
151
165
145
217
199
211
194
242
165
166
226
176
186
229
188
165
200
252
210
217
169
189
206
183
188
178
163
236
239
202
209
196
135
165
124
98
219
174
125
220
182
233
183
187
221
189
141
190
173
188
167
174
290
150
231
195
200
251
138
198
247
191
218
168
170
243
215
253
224
210
219
217
195
220
218
141
249
261
211
155
200
80
120
205
158
234
185
206
121
201
169
214
147
163
160
194
185
191
187
158
185
262
199
220
203
167
237
183
191
181
193
170
232
132
199
165
161
205
184
177
190
162
182
249
158
234
179
247
218
153
196
218
152
213
129
153
205
236
191
224
187
194
206
186
181
197
243
206
175
230
133
180
161
166
183
172
224
203
171
171
190
203
154
202
168
218
233
218
154
155
180
261
156
218
148
216
167
194
237
246
229
199
172
257
166
209
102
182
232
149
214
210
167
198
203
193
255
260
163
234
207
194
236
199
197
239
170
199
244
196
267
154
228
189
166
153
252
214
204
186
297
211
244
188
163
199
207
200
174
186
220
247
201
218
194
206
201
178
191
180
144
207
223
252
177
184
166
231
221
238
188
142
158
226
246
179
186
245
170
152
243
170
218
199
211
233
196
201
143
250
240
199
230
197
205
242
222
166
242
176
149
233
183
180
231
173
232
193
208
230
203
217
274
255
274
231
184
219
197
203
196
190
188
196
217
188
153
199
188
175
201
153
151
236
178
230
179
168
216
170
234
136
238
193
203
165
228
256
221
188
105
211
181
220
176
182
204
199
228
182
204
243
191
169
214
167
212
198
221
184
238
219
142
227
242
180
217
190
189
187
229
268
236
258
208
166
182
239
217
230
213
199
203
200
203
151
260
204
244
221
191
227
186
226
163
183
205
232
231
212
186
149
238
238
108
205
252
239
156
234
194
208
170
159
228
181
207
202
171
195
221
185
242
260
148
216
229
195
211
223
190
180
224
152
253
191
232
155
142
220
197
248
166
233
143
224
199
205
219
188
190
190
203
162
165
231
184
208
188
165
212
168
170
255
189
195
243
150
218
143
218
240
215
190
211
197
226
232
196
202
209
161
185
263
183
174
189
190
173
199
185
216
266
234
200
214
214
212
151
200
177
192
198
188
159
172
255
175
213
191
174
209
197
184
151
187
181
249
123
197
169
207
242
151
203
202
162
124
103
186
188
181
238
125
211
214
164
241
194
191
198
187
139
150
245
202
200
176
131
150
210
190
165
152
220
237
256
163
262
189
182
186
201
132
249
209
226
215
255
198
193
133
221
187
95
199
189
208
234
252
195
242
246
223
222
110
248
257
178
186
154
216
171
215
178
201
143
226
238
184
170
212
144
198
168
174
190
160
121
187
225
198
276
204
239
220
179
242
229
194
226
210
183
142
197
242
243
183
203
238
191
145
198
187
148
227
237
221
264
207
140
145
182
220
247
197
256
219
253
193
182
228
202
203
120
173
173
214
236
205
250
136
182
258
222
228
273
229
186
245
163
196
230
147
201
126
188
126
183
237
255
206
201
241
191
239
155
189
222
151
172
238
194
249
199
248
202
200
184
194
245
225
241
210
162
190
130
206
200
217
228
191
154
202
177
185
222
220
174
161
209
217
183
188
123
186
198
182
194
175
128
204
197
207
211
170
194
158
185
136
209
215
165
136
161
214
195
221
137
183
198
125
206
243
248
174
275
184
211
172
165
194
181
168
200
232
223
214
211
236
128
184
169
203
194
202
211
222
125
192
186
186
216
203
213
158
191
238
230
247
176
246
183
251
233
191
218
205
229
193
225
212
223
217
229
159
177
220
149
155
180
256
150
221
201
274
215
241
185
163
233
185
152
191
174
241
187
146
218
162
226
186
187
194
189
155
225
220
195
206
171
205
263
214
268
167
188
168
235
198
161
240
194
173
165
177
248
133
152
163
211
158
208
172
211
166
131
305
219
189
274
161
126
239
166
188
194
171
164
186
248
137
171
254
142
271
189
155
148
252
189
180
223
174
150
142
218
159
159
202
214
188
204
244
295
245
196
175
242
164
194
147
178
211
231
155
226
249
214
206
187
253
209
184
181
242
209
195
211
114
220
186
212
243
208
167
278
199
226
230
199
263
247
196
244
253
174
199
218
160
205
227
181
149
211
192
215
244
210
174
227
193
203
165
180
220
194
211
186
187
209
244
216
233
164
240
203
219
198
267
215
184
194
201
239
156
240
235
182
209
194
255
224
239
190
199
190
113
205
234
213
174
200
149
226
116
175
159
176
186
200
280
189
225
134
213
212
183
225
247
231
209
188
209
196
225
191
222
231
227
222
236
217
219
223
164
209
203
194
164
174
171
290
250
237
180
219
203
182
199
194
222
158
157
175
187
265
196
155
200
187
199
273
219
138
200
171
224
197
236
214
197
174
178
179
176
224
190
237
182
205
190
163
195
196
184
260
218
167
191
256
221
200
224
135
242
199
169
229
245
232
199
237
223
217
236
145
156
191
157
181
242
148
210
259
214
191
219
171
165
198
233
210
209
272
177
233
228
200
214
236
184
191
226
221
142
193
217
209
175
209
184
224
169
178
199
226
196
127
211
216
183
209
223
220
133
214
213
185
228
239
242
209
209
201
200
234
170
168
260
228
194
226
203
163
211
163
222
181
179
175
165
259
225
259
180
205
237
203
222
146
197
217
150
151
218
175
229
144
185
200
216
246
238
172
192
245
193
209
226
170
179
212
158
183
247
202
253
228
183
215
234
188
165
229
153
237
252
193
142
211
190
203
148
226
193
208
186
249
215
184
231
241
228
190
211
188
247
210
199
265
204
150
171
256
233
249
235
206
218
150
140
252
187
260
235
270
252
179
204
114
200
171
261
194
203
221
210
230
232
192
207
261
150
233
181
168
229
178
209
231
185
191
151
126
215
152
168
211
205
192
206
230
88
166
227
218
205
136
272
223
174
167
211
139
248
208
173
199
194
206
233
175
146
200
144
247
162
186
208
198
239
233
233
176
202
126
186
224
194
186
165
200
233
174
159
192
208
185
166
211
229
146
218
230
202
180
182
197
204
178
228
221
260
168
234
187
202
117
216
155
183
198
229
231
230
170
197
191
201
240
228
216
228
184
157
215
185
155
191
211
209
157
240
234
172
166
162
212
198
221
218
194
229
168
138
195
176
91
194
180
231
239
224
206
201
206
153
194
212
187
148
235
237
206
221
186
183
164
186
210
259
155
298
137
202
213
168
196
214
141
189
183
185
256
168
118
222
155
202
234
175
206
139
226
239
223
197
182
216
152
172
214
210
197
232
227
202
181
208
190
148
198
249
219
179
201
163
200
120
249
169
147
127
164
163
202
210
238
106
194
172
229
222
239
210
188
122
199
191
179
170
233
199
217
218
191
259
269
178
149
217
269
188
265
266
153
234
201
178
202
219
180
240
155
174
259
165
211
227
175
157
162
187
168
229
231
185
212
191
182
183
211
210
160
195
188
127
243
146
242
217
216
169
211
221
227
167
216
211
237
192
208
192
155
229
181
182
188
212
202
204
173
161
172
170
259
227
165
177
233
236
125
220
170
224
227
166
144
187
140
176
191
226
215
254
190
195
141
202
179
252
160
239
230
198
165
246
199
183
216
141
199
176
226
226
206
214
222
179
181
229
234
176
172
196
143
196
190
221
176
216
207
177
205
209
214
195
189
204
211
178
191
246
184
171
198
231
203
256
215
214
238
164
239
180
192
223
190
211
194
180
243
169
280
256
228
248
238
177
195
121
115
182
182
253
223
246
245
201
258
211
171
238
203
169
199
210
170
188
186
214
195
186
244
124
142
212
176
211
228
222
200
229
204
178
220
160
195
198
251
184
252
220
204
169
140
229
272
209
179
178
152
156
215
238
226
215
244
204
216
175
235
177
208
222
150
194
204
164
238
165
222
182
192
204
284
208
242
169
245
176
226
198
176
106
157
204
214
174
212
147
223
180
269
216
228
183
182
212
199
216
218
213
244
173
203
211
200
198
199
163
244
160
124
148
170
221
192
165
208
265
219
231
164
223
214
133
184
241
191
201
211
222
209
198
158
222
221
212
225
225
208
140
216
146
169
199
193
203
224
236
201
196
242
147
236
186
205
224
217
182
243
189
271
173
226
162
234
176
237
243
188
203
229
206
226
226
261
215
144
211
284
245
203
239
233
162
188
199
191
131
214
186
141
159
182
220
222
266
218
141
286
161
198
245
208
195
229
207
205
226
265
240
223
246
188
182
252
204
214
240
153
206
189
239
192
184
276
207
155
175
198
208
220
167
174
200
169
191
128
154
224
198
271
205
208
182
188
227
148
224
216
194
161
229
170
234
206
201
198
215
166
176
215
215
251
210
175
172
243
181
263
238
153
228
224
247
257
219
221
170
138
192
240
181
157
191
190
284
165
140
212
207
186
258
211
202
195
243
187
175
210
166
193
139
212
199
253
243
156
204
172
185
252
214
245
244
194
184
118
187
166
160
222
247
262
156
155
174
241
229
179
195
182
224
238
179
209
177
163
256
186
207
147
231
139
175
216
197
207
167
217
223
209
268
215
235
161
208
190
175
204
214
178
194
175
233
176
236
241
164
204
236
201
227
211
212
269
205
196
248
210
246
247
185
226
207
261
180
178
160
202
138
239
213
202
178
244
203
170
233
246
164
206
198
204
238
222
192
271
155
254
198
203
126
210
183
218
214
199
158
185
186
167
221
273
189
249
182
105
203
158
224
202
243
249
174
184
238
174
237
180
233
229
197
95
230
178
212
162
248
159
189
152
160
174
169
107
259
141
220
227
185
213
205
201
181
162
195
207
227
198
239
207
218
196
141
183
219
242
258
203
204
200
201
210
210
192
168
238
160
161
157
215
228
214
209
241
197
176
219
171
198
252
198
245
182
220
205
192
169
250
233
271
255
150
220
154
187
138
218
182
209
179
249
195
191
180
188
229
199
229
184
217
204
201
187
167
138
205
182
194
176
199
260
156
223
229
130
158
161
194
203
236
216
216
219
232
201
184
217
151
222
259
197
169
168
122
157
210
183
196
159
190
188
191
207
250
161
115
146
172
195
192
193
236
185
272
281
146
226
220
197
204
153
173
130
192
270
155
250
185
169
243
224
228
154
213
203
215
241
178
247
225
216
215
227
190
204
257
206
191
216
202
286
216
202
231
169
231
246
195
177
206
165
161
202
210
232
184
194
237
169
265
163
212
200
229
204
253
167
169
193
227
184
198
238
153
258
157
215
178
210
239
125
171
208
154
228
220
190
184
236
191
184
256
242
184
170
244
256
172
223
214
180
190
158
147
135
240
275
206
213
159
289
160
175
223
207
176
196
162
221
260
196
131
207
169
173
213
205
231
220
179
217
196
199
198
211
206
174
185
173
250
154
171
205
220
234
188
166
229
186
172
210
194
222
198
197
197
178
207
163
231
227
178
189
192
168
236
224
219
256
237
209
160
181
158
161
179
240
219
156
177
246
234
259
286
223
128
237
170
211
243
215
143
203
181
203
207
183
172
222
193
210
255
167
190
148
198
212
212
254
217
229
226
217
146
203
181
193
181
180
213
208
176
212
249
223
235
165
174
249
211
252
227
138
163
188
204
201
199
227
143
205
245
206
261
179
232
214
198
180
220
280
185
201
161
215
246
230
222
109
218
238
223
197
198
266
145
214
233
215
172
195
201
249
193
219
213
186
187
244
133
204
167
265
135
256
215
227
253
250
259
180
190
203
223
271
238
219
159
193
150
189
228
236
230
180
204
188
201
221
166
210
231
175
129
191
245
217
190
210
152
246
200
237
189
184
206
195
213
230
249
205
175
268
193
250
203
155
223
216
208
213
199
179
237
136
193
182
178
159
202
195
133
204
230
167
168
166
212
206
186
228
146
237
151
203
165
169
246
218
147
182
191
228
202
225
177
210
240
169
154
195
172
221
236
174
198
251
238
214
227
242
183
158
184
233
225
169
193
185
229
208
257
175
168
237
173
189
150
193
218
205
247
209
231
213
215
194
242
161
227
202
242
230
212
237
168
221
172
241
178
164
176
269
264
208
193
222
206
224
179
160
234
169
189
203
117
187
200
240
161
214
205
172
214
166
186
173
183
208
243
189
185
171
211
246
198
251
216
150
196
177
174
210
228
205
193
188
182
181
198
160
195
255
256
185
188
191
190
263
132
177
233
176
213
226
188
217
186
168
174
163
257
170
245
184
178
202
189
180
207
178
180
246
248
213
138
204
228
184
155
148
171
180
191
224
183
180
139
148
199
174
249
201
178
135
138
205
177
194
210
191
165
203
194
169
219
257
149
222
243
214
234
200
158
232
223
146
190
261
221
157
222
232
211
221
229
299
192
223
213
199
216
185
148
163
215
198
141
193
200
164
210
146
197
180
228
239
251
232
219
153
201
182
176
186
241
234
242
209
279
185
217
252
200
179
219
242
188
186
149
206
241
186
194
175
169
280
167
130
196
117
217
220
132
195
217
216
238
188
207
220
233
209
238
271
214
170
224
215
274
218
196
173
215
190
166
211
160
215
240
202
159
274
239
183
166
237
174
220
243
249
217
202
171
93
239
232
166
203
186
228
234
208
179
225
166
224
203
217
216
223
216
163
211
260
176
177
231
165
231
180
228
227
206
179
148
232
134
168
223
212
232
203
195
159
100
240
211
173
160
237
230
234
208
217
215
213
176
202
236
246
276
227
241
185
207
195
195
169
193
169
237
220
186
191
194
194
186
186
165
245
210
171
201
178
211
142
161
249
192
235
218
196
222
229
198
172
149
204
213
208
215
138
246
220
179
213
187
188
212
225
248
168
205
197
189
217
198
216
208
213
209
233
171
247
237
232
173
223
219
188
149
186
220
234
154
286
228
209
276
250
167
202
236
214
224
215
272
229
191
271
160
192
188
217
247
136
230
168
225
120
271
178
212
186
251
220
221
142
203
164
190
175
188
221
214
144
176
217
146
235
201
157
213
134
209
159
205
116
241
190
185
208
173
233
234
210
209
211
190
97
171
191
243
168
230
206
166
191
204
184
186
129
196
187
210
197
236
229
186
216
180
258
234
213
145
186
225
222
244
222
245
129
226
257
225
142
172
271
223
237
191
174
225
154
209
211
171
209
269
192
135
212
166
227
201
128
158
222
260
164
221
234
209
227
204
229
201
161
253
176
182
209
210
226
232
225
216
145
228
190
209
204
178
186
191
193
156
191
202
172
212
246
234
217
201
158
172
206
222
170
180
246
230
263
177
214
249
168
212
212
213
224
231
160
171
192
198
155
125
85
192
188
171
173
190
191
204
217
167
205
258
210
226
173
224
207
183
216
161
176
228
217
179
212
191
190
217
203
169
161
245
228
215
197
241
261
198
210
239
234
197
168
205
198
158
216
234
118
188
191
170
182
201
208
174
198
195
175
169
170
217
212
140
194
212
178
205
210
185
235
197
137
170
214
167
189
204
198
195
281
194
252
193
241
221
223
184
187
183
143
217
215
201
190
162
210
181
203
186
268
176
218
199
226
193
176
228
164
272
195
257
213
175
195
124
189
223
231
225
224
140
178
198
216
201
208
239
185
230
167
234
179
222
214
149
195
205
156
123
265
206
176
245
190
249
183
135
250
163
174
216
233
238
146
241
205
220
224
255
203
234
256
162
273
222
179
252
225
250
213
213
148
260
173
213
255
188
246
200
234
193
175
226
151
113
209
209
208
147
166
247
159
219
155
204
216
194
240
202
246
171
175
153
196
171
253
212
200
213
207
169
177
189
216
271
202
202
240
252
148
232
187
256
184
249
192
151
192
235
110
210
164
214
212
225
220
197
244
217
257
213
195
159
242
204
211
203
193
194
234
193
215
195
278
233
176
177
118
188
222
150
189
136
209
211
228
167
161
211
211
217
175
217
156
194
124
230
190
155
244
197
151
165
214
242
215
147
259
189
219
217
249
194
183
149
243
219
213
228
160
231
231
259
258
223
228
209
210
188
188
187
198
225
215
174
276
221
233
221
130
209
210
211
195
269
182
259
195
213
182
153
200
135
263
193
220
213
247
198
258
210
178
202
208
170
171
153
159
206
230
190
221
149
246
204
240
215
164
222
195
225
193
135
246
233
184
204
157
246
231
181
219
123
200
239
190
132
193
177
189
194
199
168
166
170
242
223
243
216
203
214
206
207
184
211
209
217
201
254
218
179
223
194
220
221
236
185
248
239
175
257
209
215
194
183
231
204
169
207
198
223
130
204
235
230
197
184
186
199
151
246
227
217
178
165
216
213
222
239
222
176
189
220
171
206
216
171
184
195
228
207
210
174
203
241
260
173
135
235
248
219
242
133
177
190
186
220
266
175
233
175
169
250
198
225
216
207
245
177
141
124
187
188
212
190
149
158
251
117
180
256
285
220
154
192
271
147
219
185
205
235
172
203
119
195
223
189
181
266
152
181
192
175
210
177
228
223
132
179
185
234
209
289
161
240
228
176
195
216
174
193
148
162
218
174
222
215
152
235
194
160
158
194
115
213
229
227
245
171
188
182
199
177
287
166
201
159
197
206
176
204
245
256
210
277
232
182
184
217
202
156
200
235
140
196
181
207
203
183
167
246
242
212
236
217
168
202
201
191
152
186
196
232
113
270
256
208
168
242
233
134
176
222
216
164
190
245
198
222
178
163
141
250
222
221
177
212
258
262
183
200
230
182
208
199
191
195
185
152
226
167
143
226
213
153
206
140
157
143
190
220
167
229
232
193
212
255
149
218
208
206
225
129
239
178
208
164
214
232
153
240
121
221
237
228
268
201
177
227
169
193
165
230
177
190
125
156
160
203
221
127
223
193
246
266
203
172
214
254
205
188
198
182
68
186
217
179
196
141
157
170
223
232
235
207
212
219
155
201
183
238
191
202
160
177
223
153
210
221
190
226
212
206
239
176
225
174
160
160
218
167
245
230
160
196
277
176
199
208
265
187
233
162
165
193
192
229
160
179
242
178
176
176
227
189
162
257
216
221
202
206
172
189
215
203
237
190
184
194
199
186
204
202
155
277
189
147
206
189
280
213
200
203
141
167
189
225
94
185
190
176
134
199
220
186
229
176
219
179
174
199
202
271
143
201
211
239
190
204
230
252
188
201
158
218
214
189
181
168
154
161
200
197
195
193
215
183
211
146
258
176
135
213
237
212
237
233
186
203
184
198
217
145
201
167
205
199
247
181
220
191
189
189
162
223
225
212
231
193
157
160
167
161
212
248
165
225
191
229
227
219
192
217
208
168
198
206
183
227
145
188
184
221
194
189
234
265
228
165
225
115
190
259
214
249
205
202
201
174
207
205
249
182
235
212
201
204
158
223
219
208
184
214
227
241
154
181
208
220
184
179
231
201
179
198
250
253
194
182
226
257
216
136
172
165
244
194
233
244
229
192
209
188
193
248
212
201
232
235
284
165
229
151
244
159
143
171
227
120
209
164
238
250
219
127
177
239
200
240
129
221
275
160
194
262
216
176
277
218
228
155
205
301
141
231
184
220
183
207
179
242
196
272
251
192
166
189
180
234
209
150
141
180
191
213
201
236
141
199
208
169
150
183
211
242
163
228
146
212
251
164
156
239
219
192
199
224
131
220
231
225
217
165
226
209
208
190
156
225
105
182
245
132
195
186
241
198
212
242
232
215
177
210
219
172
238
210
196
203
243
216
171
194
193
258
172
162
165
194
138
233
170
208
266
215
218
171
216
194
158
251
216
193
164
220
155
105
166
136
100
255
222
218
169
206
167
220
199
151
209
143
254
218
144
158
167
143
231
191
214
175
154
216
154
232
118
214
274
233
188
199
218
210
209
227
194
205
201
249
137
201
236
181
223
149
213
197
145
172
215
142
206
137
195
196
243
176
192
241
195
174
263
224
231
167
253
191
194
195
220
182
146
175
178
199
187
158
174
205
202
155
167
151
221
179
246
209
203
252
177
170
190
169
157
164
245
186
187
207
188
206
149
190
184
227
135
286
202
177
141
198
142
176
220
213
231
222
127
264
186
223
117
140
217
186
177
170
220
158
183
182
208
243
232
180
207
201
174
190
193
196
191
207
199
231
230
185
210
263
179
197
251
216
237
258
157
201
178
195
175
191
242
190
184
225
187
184
196
215
247
230
207
160
203
195
154
184
221
194
237
185
201
154
158
209
258
233
201
200
220
170
233
206
270
203
191
167
205
177
135
228
156
225
231
245
177
166
172
183
165
208
202
183
194
160
199
173
242
204
210
223
259
169
143
180
181
196
137
225
211
137
161
139
177
230
222
186
203
148
219
222
257
169
247
199
171
186
133
157
158
197
164
166
218
220
212
179
216
190
220
181
171
205
262
184
231
230
189
214
212
128
218
190
225
198
192
236
194
198
232
266
156
176
188
214
233
172
170
199
216
183
199
250
190
202
125
171
257
209
134
228
219
245
148
171
259
178
179
227
204
164
172
220
232
172
144
218
232
213
220
196
136
210
222
180
174
223
181
218
170
170
152
190
181
214
184
210
204
226
241
207
143
158
156
240
190
207
168
151
181
199
235
191
213
202
179
222
223
140
167
199
196
223
192
184
211
225
233
230
210
196
174
168
166
180
253
186
216
210
211
226
162
173
183
190
254
227
189
227
222
124
182
215
217
165
164
176
185
213
190
188
198
196
160
173
273
195
175
164
183
233
186
214
186
107
186
207
171
252
248
185
229
232
180
222
213
205
185
100
190
215
175
216
254
222
250
233
195
208
241
182
172
155
185
241
182
188
207
174
196
221
207
190
199
195
207
200
183
120
218
225
217
170
163
169
176
185
188
218
137
174
225
234
197
209
214
191
177
170
233
225
226
212
198
225
222
170
258
174
188
215
206
175
181
191
195
234
211
211
223
225
201
215
173
120
182
230
112
232
212
226
168
233
230
212
213
222
207
224
144
163
175
215
285
217
187
165
182
191
241
227
173
220
139
204
202
214
219
259
154
211
273
268
181
185
218
179
155
224
204
231
200
202
187
217
156
237
213
180
220
202
220
223
199
180
246
221
113
179
200
146
247
217
135
197
184
226
194
160
152
138
232
215
242
165
172
233
196
238
237
146
231
167
182
222
209
223
175
204
175
150
287
196
186
208
211
221
184
152
188
217
104
166
228
168
167
195
183
244
205
266
165
210
250
116
254
191
212
148
136
201
212
162
150
191
184
219
243
229
249
234
197
232
228
220
213
198
256
185
181
211
224
259
222
168
241
116
207
150
227
178
210
233
177
268
165
179
195
209
224
261
239
237
179
232
238
196
162
227
192
169
154
198
264
255
254
184
239
237
200
164
227
227
181
162
247
269
233
191
221
215
199
213
167
223
156
182
122
134
166
203
127
199
240
220
216
200
211
152
233
221
221
248
170
200
198
204
189
248
221
171
168
180
173
170
211
186
226
150
218
216
208
257
182
205
237
183
174
122
226
245
246
228
249
239
195
227
177
221
221
194
201
225
202
235
168
209
160
192
139
208
155
233
205
216
212
213
190
156
143
228
214
194
226
203
177
157
183
259
180
174
257
209
206
233
173
197
192
154
233
222
223
251
100
134
186
230
243
101
222
201
191
219
212
206
185
202
244
224
183
184
132
195
204
194
138
158
159
122
189
225
202
210
231
228
255
198
206
152
138
166
230
184
210
126
215
190
244
219
193
201
241
167
172
194
194
223
282
143
228
155
187
188
235
250
149
243
219
182
167
191
202
158
176
189
253
202
253
206
192
209
201
170
219
225
157
218
192
231
122
196
281
179
171
172
182
189
252
145
178
175
151
181
257
188
218
246
189
186
202
221
182
212
203
196
219
216
190
209
264
158
171
191
173
238
231
204
184
245
144
250
183
176
182
175
196
197
244
257
201
160
208
231
196
205
188
205
215
204
214
180
245
109
212
222
168
180
177
146
230
155
191
191
205
163
229
194
264
216
261
210
219
207
198
198
230
195
203
230
209
190
157
249
170
213
199
224
226
234
160
169
244
262
154
223
218
226
215
265
179
148
199
201
162
149
113
237
229
142
224
203
188
165
195
178
207
216
204
236
194
208
184
203
211
158
211
192
168
169
161
160
167
175
226
232
211
223
193
194
174
231
177
171
211
203
177
156
229
239
132
221
202
225
241
153
222
195
89
200
203
216
160
198
209
201
211
168
136
171
231
204
169
206
193
208
189
140
162
210
198
210
269
216
196
221
255
234
152
214
163
201
283
148
135
205
185
212
199
188
233
227
198
104
202
248
200
203
226
135
209
223
191
235
186
176
203
164
217
218
232
215
190
188
194
193
188
276
241
230
212
184
253
210
209
144
256
214
203
245
213
195
198
246
141
222
281
208
248
211
214
231
190
187
164
186
184
212
193
223
173
233
181
197
222
205
153
217
231
190
188
218
184
199
177
201
146
178
143
200
199
203
245
262
226
207
195
225
224
209
215
179
191
202
192
134
216
170
192
179
195
222
153
196
235
206
199
205
239
175
194
311
246
256
182
156
166
208
108
250
226
243
235
214
170
167
155
175
265
210
220
232
182
228
202
186
236
201
198
247
153
214
173
204
274
210
180
184
200
205
194
215
202
132
247
194
185
175
188
176
133
183
204
226
185
261
210
264
193
216
146
245
141
211
246
250
224
146
162
264
179
204
212
181
202
209
145
204
210
198
186
210
173
258
192
98
192
166
128
145
156
176
200
206
255
235
150
165
182
184
164
232
216
232
235
131
296
202
213
166
206
180
195
203
210
170
210
212
191
180
137
212
181
193
241
190
267
236
189
198
206
183
186
177
203
218
205
242
225
127
191
228
251
220
239
190
202
208
139
159
190
222
260
187
225
201
221
194
138
171
180
202
130
173
205
119
163
215
192
176
186
174
185
162
192
231
218
203
146
226
244
211
210
168
203
216
213
104
144
152
188
237
247
199
203
180
216
180
237
203
198
169
174
200
155
163
227
204
196
202
217
245
230
145
191
166
268
212
182
164
277
236
180
171
164
255
208
190
206
163
217
177
140
193
274
193
209
151
245
209
143
240
270
184
213
212
229
130
212
248
223
172
115
211
185
160
188
191
180
195
209
170
165
277
301
146
180
185
176
192
154
200
235
230
204
155
172
238
198
153
263
197
182
179
157
225
223
206
248
218
175
177
251
219
215
159
203
250
157
239
213
206
226
213
176
193
235
213
155
152
175
224
157
173
226
229
158
190
201
199
243
168
150
226
141
210
249
219
212
205
127
201
226
224
229
205
216
151
174
263
202
253
257
213
180
168
147
179
234
216
241
261
175
162
192
203
223
207
188
188
196
221
189
216
242
245
201
249
219
150
236
268
168
182
111
225
203
102
144
246
232
174
243
207
179
156
214
225
177
114
196
167
219
173
124
187
201
197
189
210
158
171
220
197
235
166
188
170
184
246
194
165
210
189
224
174
194
177
171
198
263
201
207
202
202
239
248
187
187
210
181
190
183
173
193
164
204
210
243
225
213
255
168
263
181
212
198
218
176
219
148
175
217
216
194
167
241
204
161
170
257
174
206
171
140
238
155
190
146
275
139
201
155
204
158
162
188
197
234
199
255
174
187
195
155
198
240
131
254
190
221
198
251
275
137
205
199
252
216
135
177
204
182
159
242
176
255
163
205
221
208
175
183
207
229
234
236
145
243
195
204
163
192
202
148
184
229
255
223
170
126
144
243
177
210
180
202
188
158
221
143
211
229
220
208
190
177
205
270
137
181
258
204
170
233
184
183
203
224
194
215
188
180
209
192
181
211
151
225
103
213
184
198
246
170
269
230
189
142
202
185
223
170
206
210
173
237
247
186
184
251
214
220
191
216
283
177
185
215
188
214
177
223
155
190
188
188
167
199
238
175
143
260
234
243
203
200
275
158
100
215
130
239
209
124
178
266
175
260
214
183
223
173
226
151
235
265
182
183
225
280
194
270
139
192
268
235
233
219
214
187
206
234
221
233
226
216
206
192
206
227
235
243
190
231
217
184
246
221
184
219
217
107
212
146
140
189
132
200
239
192
171
193
211
136
169
217
107
246
199
242
142
242
220
156
215
146
266
258
252
105
237
183
217
198
152
201
194
229
195
196
259
196
228
234
212
212
151
187
196
231
193
171
188
219
197
198
214
240
246
217
201
171
217
248
198
124
207
168
245
234
204
206
220
192
214
189
177
182
240
170
207
179
238
220
218
265
184
204
209
218
170
134
218
235
207
157
196
179
180
155
259
169
238
119
191
242
212
199
245
142
233
212
208
262
261
172
155
233
178
250
156
290
200
211
206
184
194
201
214
212
130
159
217
215
237
224
251
239
163
274
168
254
214
259
239
202
221
201
220
217
237
226
255
168
245
238
233
212
164
191
182
181
176
198
217
156
177
142
159
160
215
202
187
258
237
203
192
202
205
254
201
197
151
254
138
231
136
220
128
194
171
137
197
190
179
246
152
197
125
222
237
236
181
175
179
213
168
200
196
221
118
213
172
205
155
255
226
205
180
181
176
219
186
241
178
234
228
198
268
191
205
227
162
220
211
203
173
171
181
228
166
244
243
257
197
179
148
116
192
233
139
161
241
225
189
222
193
108
217
182
181
181
166
134
164
205
225
251
162
194
223
169
247
187
202
203
193
123
229
127
209
115
153
149
169
235
195
186
191
166
240
197
283
170
161
238
228
210
215
209
209
193
152
180
269
208
226
201
162
232
256
195
219
190
184
191
179
191
253
132
176
199
155
204
165
160
183
127
252
176
215
226
141
198
217
163
221
245
185
257
178
236
211
214
208
258
131
181
217
196
164
191
178
184
200
194
228
198
193
147
232
252
206
201
163
179
184
212
249
184
170
210
217
209
210
208
179
139
206
237
218
153
83
197
178
224
211
202
220
270
170
217
247
169
216
127
153
182
163
224
225
202
228
171
214
185
203
238
190
104
156
192
175
193
185
239
164
259
267
201
188
227
214
167
169
207
201
218
207
176
190
171
172
240
227
224
189
233
147
200
208
183
180
142
219
162
154
185
157
206
192
182
146
206
195
169
167
235
184
232
205
180
142
187
149
214
174
135
230
206
143
252
200
250
207
171
153
230
153
222
172
205
183
212
171
223
245
197
252
219
197
181
163
189
154
169
216
183
223
255
212
169
174
259
193
224
138
236
229
285
251
180
216
209
281
231
146
206
234
194
239
238
154
248
206
200
237
136
213
224
240
227
177
222
184
252
176
173
226
197
206
240
190
217
244
242
227
168
198
149
226
192
211
211
180
229
224
250
240
235
212
240
123
183
175
189
209
169
193
243
202
233
258
199
213
227
154
187
268
205
191
216
165
212
145
171
236
250
216
185
232
196
237
207
221
253
149
252
185
252
222
250
129
190
143
242
198
167
160
197
141
194
176
210
139
223
202
183
222
232
189
205
202
234
246
241
212
192
224
259
153
185
224
179
225
182
197
153
205
192
159
165
189
236
211
156
187
135
227
208
219
161
248
180
230
150
228
196
223
198
196
194
152
192
218
225
209
145
177
140
256
168
73
216
196
164
208
250
216
216
202
208
147
157
236
156
206
177
197
206
199
232
261
136
204
233
132
213
242
197
203
245
197
250
260
176
156
199
191
198
220
212
195
242
225
143
191
218
178
189
187
196
181
256
190
236
234
117
143
212
204
165
252
164
209
254
209
240
192
222
270
190
228
199
177
201
178
135
189
190
217
217
193
146
169
206
175
184
176
232
199
159
227
163
149
267
203
182
209
126
179
183
207
192
164
197
224
160
241
185
165
204
214
244
253
203
200
177
221
208
177
239
188
269
228
181
170
250
171
148
211
255
213
217
214
98
127
187
208
196
236
117
229
231
187
170
194
215
160
206
244
257
147
233
236
202
205
161
172
231
181
163
245
182
146
207
223
202
233
186
232
171
181
181
239
194
228
191
171
250
180
211
254
263
178
193
152
230
138
263
192
163
90
220
155
164
132
198
229
228
174
148
183
190
199
197
231
229
202
233
224
117
156
225
228
174
250
158
194
139
205
203
237
169
165
237
183
203
270
186
193
216
211
239
192
201
204
203
178
257
158
208
213
279
86
202
266
222
212
99
203
235
145
200
148
136
251
243
149
210
229
159
154
194
268
139
193
231
212
154
209
214
182
185
234
231
191
250
167
110
178
188
201
200
153
189
148
200
240
267
158
155
229
224
245
153
206
200
217
164
137
239
228
237
190
177
166
216
224
260
220
174
185
231
150
202
213
229
136
137
140
165
175
262
235
159
156
165
252
192
171
174
207
159
232
212
143
170
185
255
178
228
133
195
181
160
254
172
178
221
190
227
194
181
182
113
212
147
297
225
212
170
217
222
227
176
225
264
213
211
181
203
131
162
203
243
200
196
145
229
150
210
172
238
176
240
218
208
192
247
153
146
226
211
112
220
193
193
182
206
211
198
250
212
218
172
199
177
248
256
166
168
206
203
180
158
168
215
234
243
191
219
130
184
259
219
211
145
216
160
225
233
207
164
233
190
201
171
233
169
150
225
213
281
126
167
187
177
207
158
215
186
157
263
196
215
191
210
227
147
182
200
222
235
194
222
224
191
204
216
210
156
162
136
227
265
218
152
169
207
255
233
167
210
166
184
199
205
239
220
242
244
228
208
214
163
197
195
265
217
129
239
104
219
252
203
208
204
201
219
179
273
229
208
208
167
119
101
193
190
219
219
198
243
262
173
217
215
227
195
145
177
103
164
232
177
236
206
252
249
140
174
192
220
199
173
167
247
182
236
146
221
260
192
177
200
227
176
169
156
231
187
184
149
226
253
248
226
181
189
206
213
185
224
194
189
174
248
216
248
226
161
184
134
234
177
218
152
211
160
195
227
167
228
235
236
189
246
204
146
185
233
208
202
234
196
185
157
240
184
217
138
257
179
204
169
231
152
205
200
214
196
193
229
158
216
212
189
210
215
221
210
251
223
200
188
235
216
241
240
210
230
209
196
209
206
148
212
241
232
184
195
169
230
208
194
207
243
220
181
233
168
194
210
204
165
200
218
169
233
201
192
229
158
189
236
267
166
196
200
112
185
212
214
246
192
158
230
133
273
193
205
269
139
158
236
155
176
256
163
182
204
212
104
167
152
216
273
222
245
207
163
169
249
180
190
176
169
231
148
226
242
194
188
149
231
187
190
197
123
220
261
186
233
187
189
170
219
146
199
210
230
189
262
278
95
200
289
244
194
235
170
184
178
253
193
191
235
222
164
185
192
146
206
208
235
229
185
184
236
181
210
184
200
171
132
228
220
135
173
222
162
198
205
194
230
239
212
247
148
121
220
209
194
278
175
138
228
231
190
226
202
202
191
281
209
201
185
194
224
192
242
218
260
185
229
151
156
202
179
228
215
168
173
226
255
185
148
174
183
204
175
177
230
230
167
246
232
213
159
191
275
207
237
227
164
233
258
225
238
163
163
209
212
161
250
218
216
150
175
254
202
229
251
234
250
156
209
220
215
144
212
200
208
218
172
172
201
241
230
186
125
188
178
190
217
173
244
186
221
224
138
183
203
192
218
186
236
184
199
191
160
202
195
204
184
191
217
144
194
273
205
210
206
193
153
223
194
222
242
201
215
244
182
248
167
146
179
209
207
216
123
237
281
166
190
189
206
222
165
232
135
152
210
243
215
211
246
161
226
220
174
208
216
180
178
201
148
211
225
239
222
210
214
228
181
238
199
170
198
213
203
198
203
158
217
251
175
241
224
194
172
226
205
223
234
215
217
213
153
149
224
242
178
226
191
164
195
228
181
223
259
242
231
254
184
206
154
199
223
190
190
212
184
152
206
182
227
250
196
210
185
209
155
239
205
205
238
188
107
264
191
214
238
248
197
204
286
221
143
170
169
145
161
226
226
171
265
214
189
202
216
203
236
185
185
222
186
185
228
167
124
220
214
207
212
243
192
186
251
219
223
240
244
124
208
206
217
234
231
172
161
189
171
176
144
194
218
156
144
238
213
228
272
244
205
189
220
200
165
206
221
210
237
219
243
193
212
259
189
201
190
167
199
227
221
269
183
183
104
233
199
220
229
248
266
239
264
193
127
211
159
234
221
286
179
219
236
174
214
198
192
179
241
229
226
211
150
170
227
272
158
189
214
169
139
180
165
231
187
191
250
203
180
163
156
218
193
189
175
284
248
190
187
243
158
152
194
251
205
270
187
211
173
148
161
173
196
189
157
169
231
262
146
255
219
175
163
147
243
265
217
186
191
103
219
194
216
152
188
169
214
197
178
138
181
145
224
168
187
160
193
194
161
251
245
233
158
210
190
240
234
235
225
145
207
201
208
199
176
225
150
202
241
118
144
278
164
198
212
271
157
201
204
196
221
235
228
166
146
200
241
158
153
199
169
254
164
190
249
142
207
212
176
256
211
178
224
222
215
125
226
217
166
160
101
173
109
215
197
207
164
213
132
250
162
227
190
203
223
233
172
202
204
211
163
170
202
187
184
187
179
186
204
138
207
213
249
243
196
181
194
231
242
188
220
194
136
246
197
174
195
195
194
216
248
170
169
239
135
215
213
174
177
128
184
173
167
237
169
161
150
216
178
236
256
155
223
160
244
146
128
172
227
228
179
226
180
135
215
248
176
255
187
172
233
207
189
205
252
217
200
237
206
239
163
202
188
185
169
196
252
212
231
111
243
194
153
183
178
205
174
227
200
194
207
171
202
144
206
169
206
172
218
181
189
156
186
131
175
247
159
202
199
187
248
268
199
193
225
261
185
228
175
159
166
169
205
140
212
234
234
193
216
263
210
215
215
160
218
120
215
213
169
144
173
191
182
235
111
148
162
210
244
232
281
216
240
213
224
210
237
208
243
243
178
248
227
188
177
198
237
224
256
261
220
205
200
225
168
201
179
226
233
212
130
218
223
177
134
211
224
205
186
190
236
175
215
213
175
127
202
229
223
202
144
237
190
229
193
222
224
215
217
205
172
240
226
137
188
135
202
179
173
233
166
246
214
174
249
160
190
269
244
236
186
213
151
193
173
262
178
200
258
191
125
121
232
218
248
171
227
179
176
228
253
162
209
178
245
261
210
163
183
181
260
194
188
158
169
223
210
253
170
196
247
171
193
184
136
195
149
227
209
231
150
255
207
225
219
175
183
221
211
203
227
155
226
147
275
142
178
204
218
160
266
199
185
205
110
202
219
240
147
212
174
217
114
190
166
181
256
156
234
198
189
207
211
241
194
250
171
177
263
180
157
172
125
202
192
175
211
275
172
207
232
240
175
206
225
170
236
210
200
203
232
260
190
243
184
230
180
174
213
194
199
218
213
166
241
213
232
170
184
148
220
121
202
199
195
208
205
215
201
232
203
232
247
203
242
221
228
172
244
246
158
191
197
144
193
223
215
198
159
157
236
196
172
229
185
163
218
262
220
170
198
155
103
249
249
229
201
232
222
152
190
198
196
158
95
158
224
166
191
236
235
214
163
223
157
218
162
196
182
197
252
168
173
220
258
132
211
177
182
224
193
193
243
151
238
153
175
220
278
185
276
212
180
176
173
182
224
143
162
186
174
217
113
182
193
222
241
167
206
223
264
223
226
190
229
234
187
197
184
229
261
230
177
179
135
193
159
180
215
207
145
166
183
199
242
156
199
163
159
148
178
213
235
246
188
138
240
180
161
257
176
215
210
243
200
216
181
177
185
163
146
153
204
225
204
214
280
192
272
193
187
223
161
144
217
190
129
192
277
222
177
196
134
195
157
218
249
166
186
226
258
187
161
220
190
227
220
231
206
196
197
224
243
230
202
239
196
114
173
169
180
239
213
246
160
235
208
202
137
211
138
184
137
220
230
158
169
164
208
245
182
231
261
186
223
214
203
198
188
170
164
173
185
197
203
275
239
218
188
202
201
243
224
238
226
214
214
229
228
166
192
224
257
219
219
257
217
230
254
178
232
241
202
146
188
127
250
165
178
196
188
215
246
207
199
253
135
204
136
169
200
249
195
183
206
201
213
228
190
270
178
138
213
198
167
220
188
251
150
168
238
203
129
188
220
123
173
235
223
235
193
226
181
158
181
141
218
178
211
160
155
189
259
149
165
197
235
198
238
234
176
237
168
245
200
226
208
214
207
187
218
200
194
213
215
202
246
164
171
177
250
257
192
169
210
163
202
132
197
171
172
143
177
201
166
214
248
187
197
188
213
228
158
186
225
161
259
181
201
190
179
230
163
170
194
245
212
186
187
236
189
190
202
202
201
244
165
217
263
175
159
230
184
116
225
163
228
202
203
169
208
155
186
241
166
180
226
226
209
101
198
217
188
176
220
196
197
175
214
215
212
173
217
227
180
179
266
176
128
208
245
248
172
227
203
223
237
247
199
218
153
137
248
237
229
223
263
246
264
145
217
154
227
172
207
181
245
123
218
186
182
199
225
227
192
192
291
259
168
243
186
193
262
208
257
236
193
181
179
227
257
133
223
156
130
244
189
228
90
198
237
166
219
164
205
154
159
212
197
198
198
204
214
226
190
229
201
181
174
198
227
208
216
165
182
248
170
220
214
238
228
256
193
236
173
234
200
214
213
221
157
186
210
224
203
216
162
255
216
185
222
203
138
254
135
211
231
205
250
259
171
204
231
217
227
217
202
156
175
139
115
233
201
173
189
219
147
184
250
220
207
262
233
224
186
211
186
214
185
198
180
133
227
169
163
160
246
193
214
231
236
143
236
198
220
201
202
141
155
169
194
149
175
254
220
173
150
182
183
262
244
148
248
202
283
158
207
206
203
164
230
235
188
244
191
196
208
224
153
192
250
187
175
174
121
253
203
249
189
204
230
228
210
160
243
271
164
192
195
241
138
246
155
153
170
166
189
196
216
206
250
216
212
164
241
244
229
159
211
205
237
170
225
193
219
183
232
220
198
239
225
177
254
156
169
197
233
176
210
233
139
217
205
178
175
202
181
156
210
168
211
174
228
158
202
192
180
241
187
234
191
223
231
188
128
230
185
239
209
173
173
233
231
203
223
181
189
165
199
195
230
188
200
226
156
304
152
229
239
188
137
204
233
205
204
149
192
245
162
171
179
152
217
191
240
196
201
238
228
202
220
194
256
164
158
234
213
179
182
198
224
182
189
233
186
256
194
175
203
219
209
179
250
198
183
204
223
232
194
160
181
170
152
200
228
211
186
245
232
216
228
145
218
167
254
246
287
188
258
233
242
213
205
232
230
194
159
225
177
195
230
206
170
113
207
240
236
120
199
275
147
186
241
257
252
217
254
151
240
214
177
208
208
189
184
153
178
188
241
198
199
202
201
163
233
178
211
178
164
214
201
153
213
193
208
196
203
163
195
247
239
181
189
253
149
168
177
214
207
254
204
215
207
204
154
141
227
187
141
243
225
214
259
209
267
215
182
211
175
257
193
230
245
209
191
201
222
230
259
240
183
168
185
193
168
211
187
251
208
137
166
237
204
157
242
232
201
195
277
211
194
239
177
258
178
166
219
229
206
189
189
214
215
208
211
219
164
213
154
183
184
205
206
235
183
226
145
236
199
138
250
209
132
260
159
183
173
213
188
230
234
151
189
245
222
237
210
217
261
207
210
138
221
231
255
181
153
203
214
180
161
171
244
151
167
234
237
142
209
173
213
264
199
189
200
204
199
219
117
192
173
218
157
186
187
183
225
215
179
233
255
199
245
178
171
173
249
184
221
183
202
217
194
190
208
227
217
226
201
210
253
196
194
207
215
204
122
188
240
193
220
232
219
129
227
152
215
162
250
254
149
224
173
200
133
162
188
287
190
224
141
189
196
157
262
193
181
234
190
190
200
242
172
224
205
176
143
182
248
248
241
234
237
183
216
210
207
206
211
175
237
223
144
202
208
164
212
239
208
179
251
254
212
186
189
155
216
111
193
194
174
216
165
224
227
136
179
236
175
153
158
266
208
234
149
150
238
231
225
202
210
183
195
194
140
213
200
243
188
221
151
192
138
185
202
198
195
168
215
172
150
225
211
203
155
190
143
245
196
225
218
251
179
205
228
208
193
136
200
240
271
194
202
160
170
205
177
232
169
211
207
190
180
156
200
204
210
161
188
203
196
229
212
274
211
170
231
189
202
169
198
198
219
237
175
210
251
208
209
196
256
149
212
242
147
118
212
187
140
186
129
225
220
195
204
211
185
122
201
215
257
198
195
194
201
191
206
180
232
212
173
215
240
203
130
240
213
155
159
133
235
277
185
214
220
187
171
218
170
146
259
176
155
204
208
242
188
175
216
195
173
111
213
212
166
184
183
273
214
222
236
239
240
226
279
188
165
210
166
219
233
210
222
141
236
137
199
196
256
178
216
159
169
226
192
179
197
183
169
212
186
162
214
174
152
182
236
208
250
158
189
249
186
177
137
182
154
231
211
272
240
228
223
182
171
214
193
212
235
185
211
206
176
242
232
252
193
218
212
246
191
216
218
213
261
210
236
148
251
170
230
241
184
142
251
180
186
167
186
211
208
192
210
214
249
144
272
211
227
241
174
216
262
208
193
179
203
127
162
93
185
175
227
195
203
230
243
196
200
261
148
216
227
205
241
206
180
206
197
215
177
101
224
194
231
221
175
184
201
182
212
227
182
200
212
164
195
194
192
239
216
185
204
207
231
163
202
194
204
202
204
195
176
176
246
221
227
234
188
236
174
193
183
165
210
163
162
163
156
176
254
184
145
153
229
161
195
194
238
227
228
223
126
211
277
177
197
151
214
232
159
136
149
212
202
227
216
169
267
174
223
241
245
139
233
219
176
254
253
223
215
235
149
169
170
249
241
145
239
196
147
244
244
193
195
201
188
214
137
241
211
147
221
227
258
187
243
181
217
217
237
151
257
143
157
219
250
207
153
133
260
219
191
226
148
186
193
220
158
199
248
233
194
164
203
225
237
209
171
209
249
224
239
281
217
202
229
207
195
208
236
243
237
239
236
216
216
186
200
239
188
142
199
139
147
196
213
188
189
240
214
227
212
194
208
241
164
193
204
233
216
165
228
189
165
211
201
199
200
148
153
206
208
144
184
254
193
221
148
210
181
246
197
190
123
188
227
252
263
178
203
142
175
167
132
152
168
201
217
204
220
168
179
242
206
190
180
216
222
193
246
178
197
160
161
236
202
204
241
186
196
196
224
251
208
227
195
199
127
168
233
196
198
207
183
185
145
226
136
194
227
225
238
234
161
232
201
212
185
213
223
188
200
231
179
208
227
225
218
195
205
184
125
210
169
223
178
201
175
267
235
201
211
217
210
179
179
237
223
208
131
191
228
186
244
219
140
212
135
183
179
291
228
212
176
209
212
202
168
133
189
210
189
168
170
184
197
154
141
234
232
205
203
203
207
110
189
178
155
178
210
240
208
155
108
208
220
251
228
203
239
184
242
202
272
224
194
190
182
289
167
212
151
187
237
160
226
174
232
230
234
233
140
177
204
204
203
210
182
243
214
259
179
201
160
156
208
217
137
166
174
201
199
210
221
230
172
236
227
174
223
252
253
210
214
211
237
192
191
197
197
254
187
160
245
200
200
212
172
177
234
227
251
241
186
202
200
187
197
208
203
168
152
169
242
204
228
219
250
200
175
232
158
222
178
155
213
159
151
245
251
198
159
219
177
207
241
251
215
234
214
158
179
171
178
134
217
157
198
276
187
243
207
202
239
189
187
209
263
160
232
183
182
202
204
226
258
233
149
181
99
226
180
181
217
200
247
252
189
190
166
206
172
223
149
201
232
187
224
182
223
211
215
238
192
174
223
198
165
195
200
209
197
209
195
245
245
147
165
197
183
239
239
183
171
163
195
216
125
176
188
204
276
165
149
228
168
197
178
203
168
143
155
204
208
225
234
227
210
243
223
154
196
212
212
200
200
202
250
185
183
186
197
175
216
192
185
206
205
256
231
202
190
244
241
210
166
216
178
216
201
194
133
197
184
174
226
171
253
191
208
190
179
259
175
195
222
250
218
143
258
100
211
242
163
224
211
175
246
133
219
216
189
183
220
249
146
236
215
254
260
181
208
230
190
254
233
153
170
176
197
202
206
208
211
191
213
185
194
189
242
189
205
210
194
228
184
140
178
151
186
199
184
185
220
175
171
263
253
204
193
196
207
215
180
156
157
208
261
203
204
162
169
196
186
211
170
216
157
227
168
167
157
226
153
227
204
244
144
189
246
186
197
187
228
221
212
174
215
211
194
264
181
179
171
199
177
195
184
209
252
230
162
205
144
91
180
216
165
163
243
173
243
182
201
195
242
239
209
188
236
153
274
195
244
203
211
252
225
239
161
209
203
172
150
175
212
169
176
208
268
253
197
207
207
162
171
196
212
282
174
153
151
258
196
211
197
173
217
124
177
170
147
192
226
199
210
212
209
216
154
189
180
270
237
179
236
229
226
251
220
163
128
214
192
182
183
165
170
164
166
192
168
192
203
138
248
201
245
166
200
235
269
153
255
200
183
227
142
196
166
177
251
237
192
244
188
201
229
196
225
251
208
191
140
207
256
190
242
214
198
171
164
216
238
200
157
166
175
198
223
195
179
171
175
175
207
196
251
217
215
172
258
180
165
174
158
201
204
194
234
176
220
218
221
174
201
184
240
217
234
230
222
270
142
142
122
205
215
154
239
188
244
149
234
224
188
138
196
116
188
239
214
203
269
209
223
189
135
164
208
204
222
133
253
181
227
171
209
187
200
231
181
207
245
161
196
197
207
244
205
159
250
212
148
204
230
192
234
208
145
224
209
168
212
160
215
146
168
168
161
193
148
233
176
220
153
180
216
172
194
210
207
262
211
205
273
236
200
179
196
143
186
181
212
222
244
204
154
201
226
148
200
208
202
210
203
188
198
187
237
196
220
219
234
188
165
275
234
169
158
207
202
263
235
232
190
116
238
200
148
243
194
234
208
137
184
219
214
224
182
151
195
182
217
253
186
207
236
199
128
193
195
191
174
237
207
233
191
238
177
197
202
183
197
210
178
141
249
255
123
152
130
153
210
256
151
219
266
176
208
209
200
122
227
220
186
186
188
174
135
160
171
222
210
179
198
214
179
266
235
155
220
148
216
164
246
240
230
195
240
180
219
222
163
209
248
271
182
229
253
239
204
231
208
164
180
201
193
166
143
243
236
230
194
244
185
164
208
180
221
160
188
223
196
158
191
203
173
154
200
202
199
157
281
140
175
241
200
191
235
230
232
192
243
240
197
201
145
201
193
228
237
250
173
232
182
196
116
248
209
201
192
204
165
193
215
198
181
120
170
215
182
231
119
149
245
174
262
186
274
224
131
134
267
253
252
194
232
206
200
157
254
234
141
241
212
244
177
195
211
206
202
183
159
203
215
174
237
149
199
186
193
221
189
187
235
203
224
203
225
214
155
201
138
235
196
221
207
225
193
166
236
188
255
252
204
151
105
179
205
257
185
271
202
228
227
179
147
222
157
182
178
227
237
216
235
164
157
204
273
237
237
205
236
193
185
199
254
185
215
189
181
177
190
185
172
220
113
218
193
192
159
222
216
183
214
207
135
242
143
230
243
176
200
231
173
244
143
210
194
195
234
208
256
195
181
178
277
200
207
189
208
195
171
192
241
233
246
154
163
244
229
172
256
244
163
235
206
159
187
186
181
112
131
266
187
173
202
193
172
152
252
192
195
249
185
229
165
218
155
181
181
211
173
211
199
236
215
216
197
220
182
241
193
264
203
189
145
227
129
245
229
191
176
182
178
222
195
259
212
140
187
189
226
195
217
245
132
227
208
187
240
182
202
153
222
169
180
196
189
250
230
182
243
161
176
167
162
182
210
274
197
209
239
225
155
166
160
209
244
179
171
157
199
246
204
225
186
204
208
186
222
120
168
199
216
224
228
205
226
206
239
215
168
169
223
249
207
186
218
147
261
262
215
237
150
210
247
274
170
193
190
203
200
268
237
227
163
160
193
187
167
215
200
182
160
211
253
203
258
174
196
204
170
211
198
194
188
245
167
220
237
188
274
209
202
228
157
199
208
235
216
196
230
159
129
196
183
231
247
223
219
174
168
169
231
206
205
213
244
266
173
225
182
221
255
200
194
199
215
154
170
196
194
208
207
195
190
172
266
218
167
217
143
170
221
174
147
183
208
231
168
207
197
235
151
203
200
202
227
209
215
230
213
264
177
223
220
135
200
146
195
246
216
251
236
163
253
214
227
238
213
173
227
214
210
193
217
164
156
226
218
214
102
183
219
252
211
168
200
178
241
147
178
198
179
256
203
204
208
155
221
209
187
161
192
194
193
202
173
210
184
243
212
146
247
202
200
212
257
239
222
135
162
247
203
155
106
172
180
203
238
200
200
215
90
184
215
199
271
175
96
261
195
217
166
259
197
203
128
146
181
226
143
229
223
183
202
184
263
216
240
176
258
167
164
221
247
146
182
171
196
250
148
165
145
193
188
228
212
171
177
175
223
195
177
174
212
136
194
204
212
241
243
222
186
276
209
221
190
151
160
221
204
248
159
144
250
167
191
232
184
225
276
214
210
207
203
221
190
172
254
179
189
186
174
156
234
106
243
215
210
157
235
195
163
197
189
172
179
187
205
166
201
207
188
210
213
179
198
239
209
203
245
224
212
196
236
143
215
157
228
212
161
172
176
172
150
164
194
219
163
200
222
203
189
238
221
185
233
207
266
228
219
139
212
210
219
226
230
134
202
250
209
240
169
158
193
216
217
144
206
264
222
259
207
172
201
197
174
241
209
200
274
263
221
220
219
200
195
214
174
192
201
216
233
176
234
256
201
222
125
206
197
165
186
149
179
163
143
264
186
234
222
193
225
179
212
184
185
158
167
177
217
204
191
233
175
155
198
214
207
182
211
216
183
232
213
182
171
195
254
238
149
227
209
239
231
179
170
235
212
185
213
240
207
170
109
228
257
204
214
156
167
239
182
235
257
160
186
203
229
248
235
156
207
193
226
215
147
230
183
226
221
256
214
158
226
194
191
229
143
217
236
193
176
183
188
183
178
217
244
179
230
191
198
195
235
190
211
225
186
172
186
183
223
161
166
245
189
241
193
201
210
175
215
208
165
202
231
182
219
202
218
159
198
243
196
191
204
141
242
186
211
187
210
186
214
172
189
220
204
201
218
195
185
203
233
152
236
239
190
116
171
251
150
178
176
217
188
167
191
188
190
222
192
171
203
193
212
133
225
228
214
225
221
182
173
131
199
239
234
185
146
183
227
208
218
230
222
262
184
192
257
232
155
169
184
209
223
213
197
223
207
209
212
222
197
199
170
232
206
193
195
193
258
230
240
154
192
212
222
180
234
257
270
118
252
213
228
224
174
199
175
224
185
253
207
163
214
213
215
172
204
176
229
194
159
160
197
152
204
259
191
233
193
212
153
205
210
216
185
163
164
155
182
256
196
214
229
163
211
197
160
211
193
186
181
228
198
181
136
186
234
244
251
163
149
214
181
191
178
114
193
209
197
196
202
200
180
224
158
175
233
165
234
224
200
231
205
207
209
198
178
205
250
213
227
160
160
189
201
237
192
232
154
183
238
222
183
211
232
182
224
166
201
223
212
200
172
164
221
229
120
229
175
245
245
187
189
215
184
203
227
197
194
202
237
243
168
191
214
250
219
243
158
182
218
227
244
222
134
222
222
156
203
165
228
144
153
173
235
218
177
210
241
182
257
215
206
179
159
174
193
251
194
200
135
233
186
191
272
191
180
197
207
217
187
142
201
183
179
171
241
234
218
157
195
251
247
140
234
238
158
221
149
172
276
211
214
195
251
228
154
170
126
178
194
238
204
214
219
202
221
196
184
175
146
154
204
245
283
170
223
204
212
203
160
218
252
152
223
182
186
172
182
178
174
174
123
206
183
218
186
253
214
173
261
208
228
273
261
284
170
216
216
168
212
217
242
258
197
170
205
167
219
241
194
212
156
196
200
239
255
239
266
211
191
193
158
169
214
245
218
228
258
247
181
234
171
166
194
161
188
186
204
210
135
170
222
253
214
171
148
143
204
172
228
229
180
188
280
164
255
200
155
202
207
235
151
249
211
171
142
188
258
193
120
219
259
271
166
223
149
222
200
232
152
228
151
178
203
152
243
192
276
242
224
275
236
246
221
144
156
169
177
272
189
197
170
228
224
236
193
181
218
236
197
156
225
160
232
230
225
209
287
245
190
239
178
231
173
279
224
200
236
179
205
216
183
198
201
258
194
210
231
197
220
210
214
175
158
225
204
235
188
190
171
244
139
206
201
238
263
148
215
182
135
215
177
247
226
176
232
210
186
195
147
251
172
206
202
135
143
197
202
254
221
181
228
205
180
234
255
171
230
129
189
193
209
196
209
163
172
158
239
153
206
134
149
206
139
216
209
216
218
246
222
292
234
239
160
251
159
245
152
220
171
221
193
240
109
248
225
184
174
156
183
222
233
156
141
213
245
170
164
183
174
202
245
257
174
229
159
228
202
172
248
221
155
183
219
160
224
201
254
214
225
222
206
182
199
203
184
230
133
124
183
156
215
170
193
201
213
231
207
180
207
244
201
201
203
196
197
177
224
179
167
241
208
225
179
158
233
174
223
132
213
266
191
149
205
192
232
197
92
151
181
203
163
169
181
211
245
229
153
131
253
115
196
222
238
179
205
256
200
163
171
182
182
120
176
168
193
283
234
150
137
91
234
204
152
228
215
171
209
195
212
197
199
253
203
169
226
183
190
223
229
255
234
218
201
168
177
170
206
224
215
161
297
180
215
202
178
189
150
222
174
187
213
184
214
206
141
151
194
141
219
147
136
146
263
190
180
195
164
210
198
208
201
137
185
129
139
135
224
221
181
253
170
144
178
259
186
253
197
224
210
192
229
211
213
226
180
232
194
177
241
251
220
139
273
214
151
184
199
247
191
156
178
234
256
192
214
167
205
199
241
166
202
224
200
143
263
140
225
165
213
167
155
191
248
257
171
273
216
223
226
215
161
165
248
136
235
196
198
168
186
197
184
201
184
219
199
112
177
214
225
199
182
205
156
173
163
216
215
207
167
219
227
143
249
207
217
191
230
247
190
180
161
200
198
247
210
226
211
253
232
174
180
220
228
200
191
202
203
143
193
131
202
215
139
263
82
184
170
170
210
261
173
157
194
187
169
160
118
241
133
148
230
212
182
187
206
196
252
222
215
232
176
219
220
214
202
173
211
229
214
222
201
139
214
246
186
160
130
208
158
190
227
209
269
234
171
268
189
137
248
198
246
188
208
181
214
212
249
246
189
142
181
254
131
265
241
207
184
217
202
103
221
187
224
188
205
246
233
221
124
210
150
223
166
191
186
202
210
192
189
200
211
189
154
216
180
153
235
191
197
223
191
172
201
161
224
241
221
229
170
200
218
213
186
272
191
160
278
238
223
174
162
231
254
160
171
183
228
179
214
217
151
168
199
226
141
158
246
200
181
201
192
200
206
190
195
188
239
227
247
198
215
184
160
198
212
139
165
248
172
167
221
235
199
226
207
255
217
107
202
170
158
172
155
173
198
210
244
184
209
169
173
235
155
236
187
179
244
219
201
180
163
226
201
168
204
260
170
233
161
223
238
199
209
170
172
193
218
150
238
189
225
183
234
239
236
214
174
217
202
147
178
142
218
237
219
163
203
162
153
238
192
228
216
192
185
259
224
200
134
187
191
216
203
223
194
212
249
115
199
235
212
233
197
144
180
163
171
232
171
275
220
205
238
161
207
278
228
140
260
191
175
221
170
208
182
184
171
225
235
196
178
200
155
196
190
244
205
218
192
114
222
207
249
227
237
165
209
180
237
216
208
191
201
216
138
277
132
206
194
204
236
255
140
215
225
206
192
154
215
237
192
265
177
199
176
198
209
164
212
157
201
186
227
234
147
222
229
160
137
286
169
191
240
173
185
213
143
122
212
232
248
145
223
185
145
199
270
169
173
154
190
156
254
182
244
204
194
206
188
212
214
203
244
201
176
187
182
163
159
190
222
196
179
162
233
188
263
192
217
218
183
192
221
241
199
186
199
223
258
187
188
185
207
164
227
230
271
221
172
197
207
202
221
157
247
210
191
127
208
211
210
209
200
239
243
215
204
193
224
167
198
176
154
155
215
159
162
199
227
243
183
145
250
190
154
212
181
162
225
170
235
169
244
211
228
157
202
211
164
132
229
164
199
210
191
192
188
236
201
220
240
204
265
182
155
169
264
189
253
191
180
321
228
147
189
245
244
129
201
240
194
181
186
171
204
269
232
206
215
254
216
211
213
218
173
260
211
192
166
176
252
230
211
233
244
196
134
224
232
212
200
140
218
138
252
162
172
210
227
200
234
207
174
211
231
166
163
272
181
187
203
172
191
164
190
195
164
205
238
185
184
196
236
183
173
234
156
183
158
179
255
216
208
250
191
203
199
254
202
143
124
210
185
244
156
196
238
205
129
185
210
199
197
190
199
138
202
246
260
204
132
185
157
214
236
145
227
220
259
211
227
241
197
191
136
126
265
245
213
197
265
194
169
224
151
245
188
156
155
239
200
211
192
193
187
281
179
182
248
176
162
242
207
168
164
152
247
171
211
166
261
129
155
209
197
180
187
268
208
224
114
196
218
179
185
183
166
203
202
213
188
270
218
212
236
215
251
183
183
205
230
155
205
167
228
251
171
158
149
221
236
173
139
156
167
149
197
138
207
206
140
188
201
258
209
192
215
187
199
187
281
234
219
227
179
245
218
232
162
202
156
202
170
191
145
210
233
247
186
212
170
138
207
218
235
197
200
220
197
187
239
229
204
196
185
164
150
226
163
254
233
219
238
243
141
132
207
178
216
204
199
110
172
214
191
213
178
275
192
198
153
174
267
171
154
205
197
213
232
237
173
194
293
215
229
227
141
218
270
252
243
196
191
163
228
264
225
231
191
120
209
168
180
210
261
275
182
197
210
149
237
124
184
207
146
144
225
223
173
197
253
264
214
193
196
182
197
198
246
175
197
160
281
204
177
194
202
173
246
279
212
172
220
284
163
220
176
191
226
207
183
243
151
223
202
212
164
150
169
183
209
252
224
243
132
168
254
161
190
205
135
181
184
200
170
200
245
177
218
173
208
180
174
190
180
174
176
185
222
209
175
208
204
209
135
182
165
163
213
236
199
175
100
146
203
198
180
221
126
149
220
115
164
242
210
187
209
246
181
245
203
215
208
165
228
239
219
239
207
204
212
216
223
240
135
219
188
214
211
221
202
228
222
208
225
195
257
194
124
191
187
213
219
205
164
202
227
149
175
167
185
200
216
168
200
205
219
211
176
183
248
186
232
140
156
190
182
245
209
255
147
152
186
217
223
181
248
212
219
251
200
151
178
270
169
179
237
224
181
153
240
191
244
222
277
231
174
207
210
202
187
204
154
182
244
143
218
189
168
206
188
173
229
175
221
211
205
230
188
187
252
180
195
178
174
135
217
179
193
241
140
176
198
228
174
203
195
259
250
210
208
242
207
172
163
257
167
225
177
204
198
179
218
218
226
219
132
225
203
222
240
235
209
195
156
179
192
253
213
200
180
219
186
232
159
249
192
167
304
237
206
210
179
146
226
208
267
206
210
169
132
169
175
247
215
183
214
183
225
167
157
192
215
165
238
125
194
196
155
232
212
198
203
145
130
202
176
175
138
235
183
199
180
233
188
218
199
213
251
233
221
174
225
185
221
249
186
148
238
136
181
261
177
202
167
222
211
163
143
140
235
217
251
220
216
136
235
207
183
149
195
205
215
210
277
208
210
138
168
195
225
118
251
184
178
211
160
176
188
231
187
192
188
243
212
241
193
171
198
211
238
196
221
214
254
193
239
180
228
236
223
173
222
107
214
168
230
213
197
214
199
174
238
230
172
217
156
226
130
214
279
232
168
162
200
165
193
191
172
205
162
207
181
208
241
204
215
200
191
145
161
218
221
187
207
173
128
201
192
170
219
203
146
153
242
219
164
203
155
235
120
213
169
167
249
264
168
164
188
234
200
187
229
226
212
239
208
187
250
205
236
271
119
188
190
200
219
265
223
164
273
202
156
175
193
270
238
180
148
180
230
181
185
246
164
181
221
161
174
195
256
252
233
229
201
188
186
211
190
169
215
175
243
195
178
167
190
218
167
161
190
192
227
177
228
232
249
183
177
181
184
179
199
195
171
215
224
167
155
174
196
182
179
142
188
167
255
232
144
204
227
228
191
193
239
240
224
182
215
168
198
118
214
211
222
232
177
234
269
245
233
259
202
229
205
133
222
197
182
217
212
221
168
218
183
223
187
172
245
208
247
177
183
234
256
179
219
211
188
250
199
189
249
165
188
187
193
176
199
185
236
189
211
166
238
206
234
168
181
262
175
237
191
205
203
245
157
160
194
222
207
249
192
186
182
276
179
197
234
197
200
174
164
139
175
236
187
156
245
180
251
183
223
163
230
250
133
234
261
241
190
227
198
211
185
202
187
217
164
139
214
150
178
169
239
157
196
196
215
208
116
199
210
223
212
159
249
219
199
202
186
216
217
215
160
215
222
225
155
269
203
211
224
209
177
215
265
258
206
210
207
176
155
221
211
265
182
188
201
178
214
195
201
194
134
222
184
201
185
173
201
216
211
201
228
224
171
255
137
211
194
248
128
204
241
234
163
160
233
241
187
192
286
205
231
206
229
161
170
223
186
223
234
227
186
197
185
248
223
199
180
146
164
221
156
219
221
187
216
234
153
183
225
230
250
208
230
258
188
197
164
168
261
191
232
270
222
234
188
142
230
225
226
187
187
179
171
232
157
228
214
199
161
214
204
199
226
107
233
220
131
205
229
203
168
241
225
189
132
144
226
217
225
157
220
153
248
217
246
251
249
221
214
175
159
190
186
204
235
174
186
189
188
251
210
233
144
247
165
158
172
214
173
234
210
192
120
187
216
160
148
145
212
197
216
190
212
214
145
192
210
176
183
192
220
201
261
238
144
210
205
197
180
209
193
283
192
198
197
221
182
280
147
229
183
130
130
180
219
229
223
224
229
224
187
236
227
194
245
161
208
197
207
166
218
210
197
201
159
226
190
226
162
257
169
221
203
231
183
202
196
167
133
217
234
153
179
310
198
159
166
191
212
224
238
157
255
216
139
185
104
230
179
143
175
207
189
239
159
233
259
189
186
224
248
264
221
183
166
189
213
211
164
201
233
233
120
201
241
161
200
208
165
196
191
175
173
196
205
165
158
169
199
167
218
141
203
164
174
187
182
174
199
225
198
211
224
192
235
216
258
156
240
196
183
158
220
172
235
262
145
261
171
180
163
193
236
219
217
220
239
228
167
184
163
183
212
205
218
198
230
161
212
256
229
127
119
229
201
229
215
177
222
211
176
164
241
134
197
158
266
198
203
178
198
258
227
178
231
178
258
175
256
237
225
148
258
136
205
141
215
260
206
202
205
215
267
194
199
174
223
248
217
173
235
238
207
177
178
233
275
233
206
175
235
226
224
159
242
143
179
144
141
202
263
207
237
199
137
150
198
211
224
216
220
139
161
184
214
212
206
246
196
193
221
236
254
194
99
232
240
186
231
228
233
173
170
177
253
241
190
186
186
241
246
136
207
275
199
183
174
229
289
162
171
151
249
202
183
199
133
193
226
171
236
149
219
205
196
261
170
204
203
161
220
183
248
237
218
149
222
260
185
240
153
163
246
223
187
197
134
218
237
194
209
160
243
204
230
160
217
204
222
132
147
147
180
156
221
235
198
217
232
257
244
230
183
161
268
200
218
190
264
215
194
219
173
265
216
198
198
169
181
153
197
210
207
241
207
223
181
246
221
202
193
245
179
186
153
219
159
165
171
176
198
223
247
196
245
189
251
226
228
151
269
199
221
190
239
209
208
208
174
159
215
193
188
97
227
193
181
157
196
207
251
227
199
233
191
161
174
246
263
167
235
182
171
137
206
210
237
188
238
243
225
213
214
201
259
255
214
235
182
191
227
208
125
163
253
224
176
208
217
241
230
179
184
183
230
207
171
222
250
138
219
224
262
224
208
168
241
157
194
183
143
218
231
189
176
207
214
168
216
231
216
238
236
202
242
250
192
231
227
180
213
241
166
234
220
188
205
193
124
189
222
151
199
171
160
235
203
202
173
211
220
124
161
150
199
253
233
180
239
183
148
198
253
234
231
191
188
175
154
201
156
222
139
201
191
203
187
174
209
220
200
260
169
213
241
235
186
134
182
194
223
195
225
164
188
221
193
211
218
154
133
240
283
221
251
202
127
175
197
210
189
134
210
218
203
275
184
188
180
216
194
191
251
196
202
209
198
151
196
233
226
176
176
189
223
240
180
220
246
167
205
247
213
179
187
182
216
231
177
175
207
221
180
217
229
214
178
208
245
215
218
230
223
275
188
155
256
154
170
272
225
246
190
240
114
155
174
236
185
212
226
184
237
205
271
162
232
151
236
213
181
173
197
199
152
171
198
145
188
193
203
191
219
142
218
221
227
235
161
169
197
213
144
197
157
215
227
195
142
212
148
184
167
216
169
211
215
256
258
182
207
227
133
189
190
173
154
238
207
181
170
177
183
214
210
214
212
129
153
248
194
214
226
200
192
246
184
149
186
195
229
206
151
185
226
197
207
258
155
168
190
176
240
247
199
136
253
204
164
158
231
272
203
181
259
161
183
259
156
232
149
222
235
245
233
171
152
235
168
187
135
139
203
141
208
165
264
176
239
124
203
193
226
178
227
213
211
247
222
173
201
222
149
192
179
233
222
231
164
178
127
198
216
215
214
198
196
210
161
229
214
290
143
215
199
253
206
219
149
196
251
184
208
185
149
190
211
208
193
199
189
195
251
206
179
187
175
206
181
179
196
173
170
143
251
238
161
188
236
238
124
202
124
188
185
234
220
206
175
263
173
118
274
156
237
125
210
199
243
258
193
205
186
173
204
244
232
215
281
218
241
203
228
249
196
178
166
184
237
171
186
216
249
233
210
188
205
198
211
232
195
252
188
218
204
225
188
189
185
203
189
206
174
245
230
259
208
174
237
160
200
197
202
86
229
200
150
222
198
251
216
218
209
169
194
218
208
157
232
119
177
206
257
223
204
233
213
248
189
192
246
192
162
228
177
202
238
142
188
155
229
191
231
162
129
244
177
214
192
173
219
233
205
245
249
197
152
187
231
230
160
204
184
215
148
205
229
165
225
161
216
247
218
195
189
191
196
182
216
181
193
191
147
215
210
201
191
178
201
241
170
194
193
211
196
217
176
119
199
195
154
182
198
212
234
215
196
210
249
214
220
245
221
172
218
209
147
208
191
268
215
225
119
200
239
201
209
217
148
262
188
239
215
174
214
193
274
111
187
213
240
216
174
228
146
179
149
212
180
209
185
260
180
226
255
158
141
213
202
213
241
125
156
231
204
206
160
216
238
175
192
197
246
225
214
214
210
209
222
209
250
251
205
142
237
211
195
228
210
193
146
208
144
244
199
197
118
187
199
182
225
221
195
221
221
228
257
226
198
229
134
163
160
247
171
187
137
238
147
222
216
205
154
210
179
166
155
191
202
241
164
125
173
166
200
183
228
139
157
221
191
198
242
215
184
175
172
164
141
138
201
215
158
202
174
208
181
180
232
217
240
197
235
236
244
143
233
219
236
165
250
181
220
195
151
143
185
216
220
187
194
214
171
218
192
219
267
166
196
168
237
211
195
189
187
253
160
208
289
194
179
162
174
229
249
226
244
176
157
250
158
188
236
180
251
174
212
219
160
164
188
265
179
184
218
221
201
197
211
219
218
208
199
190
200
201
216
234
163
185
186
166
224
217
251
210
137
198
159
213
173
154
213
281
171
135
258
214
230
241
158
178
194
219
190
271
188
229
242
209
234
209
221
210
173
212
245
173
198
235
263
187
206
150
188
221
214
202
176
199
165
220
165
225
240
233
181
154
176
223
237
244
186
222
202
198
204
232
167
210
167
146
181
143
205
218
207
214
204
184
202
194
208
246
266
142
215
205
221
208
240
216
124
186
229
183
181
163
166
189
247
248
210
199
238
205
164
148
149
191
175
158
215
256
186
254
144
260
196
204
150
207
141
194
164
248
216
233
189
194
195
229
217
178
217
237
184
207
139
236
146
218
220
191
194
135
228
173
256
156
163
227
231
203
194
198
170
256
195
151
216
185
214
167
213
233
200
216
215
219
137
236
188
207
192
192
222
157
236
188
210
187
174
270
239
226
192
219
228
171
183
197
210
190
216
163
145
148
164
175
178
161
167
240
225
217
194
158
166
212
198
194
171
178
196
169
169
206
253
129
275
159
210
196
137
206
220
215
211
187
160
179
258
156
180
202
216
168
173
178
157
145
193
171
249
161
239
204
231
213
153
186
177
139
166
201
208
220
202
168
152
174
211
198
194
195
212
209
191
195
210
189
200
182
170
229
179
190
158
166
176
196
190
210
141
156
179
249
194
191
232
159
118
214
205
275
227
219
198
160
191
251
249
196
112
208
183
228
202
119
192
205
209
169
175
213
213
220
132
198
186
245
212
207
215
192
183
214
195
249
148
259
194
123
253
188
206
212
179
187
237
160
215
195
184
224
214
122
162
163
161
209
177
222
205
165
255
259
176
200
194
203
157
176
251
176
145
195
241
185
269
205
139
225
233
148
189
253
238
191
233
191
236
185
236
197
138
201
169
219
216
210
165
214
219
238
180
161
169
164
222
230
178
231
199
149
206
186
228
172
139
234
222
225
229
192
226
217
172
194
194
212
195
230
189
240
207
235
163
280
148
203
219
169
231
221
205
216
230
229
222
194
242
205
223
167
185
229
219
250
229
173
213
199
253
180
194
165
218
199
115
207
195
168
167
165
183
207
209
225
185
199
184
158
206
143
145
192
160
168
174
219
190
199
144
186
169
233
201
248
227
159
261
188
196
191
126
170
202
230
200
186
200
221
144
278
189
146
219
200
168
142
209
251
187
224
172
217
210
241
221
182
223
180
151
209
198
195
189
241
166
244
176
193
198
206
215
266
208
174
216
191
161
191
179
247
248
220
220
205
223
173
221
192
169
170
223
174
175
127
209
245
193
198
113
180
155
252
262
200
187
143
224
204
247
146
151
214
195
213
168
228
174
211
243
178
248
141
192
220
235
204
232
142
190
238
200
175
215
187
227
239
218
161
247
212
202
223
189
189
187
201
243
197
209
216
211
193
248
240
207
213
163
180
222
240
235
220
166
230
211
265
196
196
233
163
231
263
191
180
199
198
167
216
140
233
221
141
184
189
169
157
224
169
197
147
181
220
198
181
173
248
215
194
204
217
181
207
205
205
215
222
231
279
246
228
219
193
173
203
187
211
282
210
207
211
129
147
153
225
239
209
243
203
152
189
223
237
193
208
204
208
149
216
195
236
215
178
105
206
195
220
142
188
222
182
226
216
158
192
157
174
228
203
167
182
181
193
243
236
208
201
141
253
216
197
259
224
143
212
252
170
199
194
209
201
189
219
175
209
161
185
209
190
150
181
135
183
146
161
163
176
175
99
194
230
231
185
222
184
165
188
232
152
258
196
211
232
189
232
219
161
156
203
203
177
242
232
155
207
254
233
204
219
245
221
255
218
225
199
165
204
143
224
208
167
240
181
253
226
223
167
151
253
216
212
183
173
192
213
216
197
162
236
264
192
170
200
178
189
174
164
150
198
244
147
244
153
208
171
194
280
171
94
177
180
206
182
217
223
127
212
245
138
122
210
185
252
139
209
162
222
174
250
135
226
241
254
239
202
193
167
259
195
182
93
255
177
186
127
266
224
211
144
175
186
194
186
218
230
183
232
205
228
224
189
158
203
221
206
237
123
225
202
278
214
189
149
216
198
193
216
175
221
213
158
196
169
196
206
211
196
242
219
170
239
141
148
195
177
185
208
251
179
242
181
201
224
223
129
201
230
175
304
184
241
198
197
255
169
195
243
218
242
226
178
164
192
235
211
163
232
242
176
245
126
205
227
256
176
165
161
210
241
221
235
178
194
192
216
253
183
181
232
248
247
258
229
221
178
185
204
240
187
256
190
246
239
221
225
165
278
126
280
187
220
208
138
199
183
183
191
171
196
244
212
196
186
215
275
204
224
221
197
241
173
253
204
207
230
206
190
140
150
192
167
235
143
144
201
213
163
181
200
202
143
183
237
164
198
203
230
203
250
208
256
195
184
205
129
123
209
125
216
208
188
161
190
191
111
254
133
218
137
219
184
164
168
173
216
173
216
175
205
233
220
199
207
186
236
228
146
204
206
198
131
184
106
249
199
225
220
162
191
162
150
201
208
227
167
188
203
223
209
188
166
191
206
151
224
266
250
171
137
205
249
197
195
186
151
184
224
188
158
224
211
196
230
215
187
179
225
194
210
187
236
158
215
175
243
157
219
229
229
192
210
227
220
163
108
127
196
214
187
143
245
208
216
224
196
242
229
216
175
137
189
245
196
211
189
249
182
274
163
163
229
233
189
166
159
132
199
150
210
185
290
155
208
200
142
243
200
201
195
178
280
199
194
156
184
223
203
257
232
257
228
239
149
184
183
252
174
140
219
285
181
196
215
163
199
186
232
226
235
149
239
259
168
173
236
227
184
176
138
221
206
229
143
236
239
165
197
221
244
154
246
185
191
169
163
189
252
177
204
235
172
267
177
155
231
156
188
225
193
219
161
208
179
227
161
203
264
175
200
253
188
279
197
212
220
178
229
183
211
202
226
194
198
213
240
164
221
208
190
263
226
248
200
223
220
219
178
230
235
199
216
222
178
215
244
281
158
121
229
183
174
171
130
235
189
228
179
205
247
180
174
171
186
238
142
229
214
146
226
244
124
196
170
219
276
201
225
196
195
222
231
203
234
199
179
198
166
215
167
247
180
219
160
231
199
208
162
170
169
224
247
219
224
171
198
229
212
221
240
212
165
190
191
245
209
203
201
223
162
228
215
216
167
161
234
175
174
211
257
194
153
128
202
211
197
219
187
261
209
243
241
197
227
215
198
191
242
191
135
180
169
191
196
243
196
177
164
184
172
188
210
175
204
269
218
192
198
255
226
205
219
218
180
159
225
204
147
217
183
180
254
185
203
236
188
153
193
229
167
141
201
249
218
229
184
225
185
197
229
140
206
201
237
226
192
173
235
271
212
172
229
206
239
182
199
216
194
230
176
226
199
198
121
211
166
247
159
152
196
124
248
197
201
196
194
132
170
197
188
130
168
196
180
241
195
162
141
181
178
232
228
147
218
145
210
210
201
170
215
241
163
155
244
235
259
214
200
224
237
238
200
228
220
198
179
190
178
253
255
215
211
197
234
263
201
136
213
203
192
128
181
159
148
144
211
198
239
277
179
191
202
180
272
222
206
167
220
185
154
166
222
186
153
234
237
207
74
254
212
182
242
179
201
153
214
230
209
179
154
202
258
231
174
267
156
232
233
194
218
208
205
193
164
178
197
201
154
180
199
174
202
206
198
186
228
125
135
223
204
186
208
155
202
99
208
210
154
252
189
176
235
212
233
227
199
178
181
195
189
179
180
193
191
232
246
242
171
189
211
227
144
191
178
228
148
179
261
204
247
225
235
189
157
257
125
193
211
198
146
156
200
160
234
120
191
203
243
133
150
257
185
218
219
193
195
202
173
183
205
247
200
152
234
221
301
188
194
222
230
206
207
198
193
209
213
199
178
233
172
198
206
243
164
177
186
204
203
231
239
156
125
206
241
215
176
186
156
232
220
196
160
175
258
191
233
186
163
223
215
236
197
181
199
270
170
201
186
186
178
169
212
202
187
185
186
233
224
230
259
199
204
174
238
174
218
228
233
200
239
240
193
159
228
188
220
183
182
237
165
235
160
209
188
237
225
235
189
203
192
214
246
201
212
163
227
229
259
247
222
235
235
204
246
148
216
211
163
271
161
211
110
239
241
218
225
222
200
179
201
269
211
207
206
232
189
141
229
165
227
183
218
157
258
177
158
267
238
259
184
170
168
185
164
174
178
259
187
233
225
203
195
153
225
190
255
274
235
251
168
221
204
180
256
133
199
263
155
244
185
208
203
239
136
258
175
202
172
162
150
166
183
243
136
224
244
214
158
186
176
229
225
191
276
188
211
205
183
190
140
228
228
196
105
114
263
227
237
195
141
207
227
220
240
186
183
191
200
239
214
220
208
224
211
205
150
240
200
184
224
140
118
206
223
158
210
201
180
249
187
133
195
213
239
216
197
207
216
218
175
289
254
236
227
253
208
228
220
178
178
246
212
154
192
246
175
200
145
228
192
213
150
257
214
239
157
179
244
205
233
257
194
195
163
214
250
254
179
97
201
210
171
225
161
226
204
180
168
241
251
202
227
232
255
224
227
252
228
214
181
209
180
250
201
211
199
159
233
179
196
215
194
224
143
178
239
262
154
214
126
147
127
178
249
164
237
167
181
173
207
161
187
220
209
227
154
232
180
152
207
176
198
195
255
203
172
191
170
185
182
237
232
212
197
215
222
177
177
208
184
140
188
184
200
216
199
170
199
182
158
213
179
234
207
202
195
211
224
174
182
235
181
195
258
218
248
244
222
236
195
259
187
204
184
123
251
202
193
142
176
168
208
185
204
184
201
230
255
200
218
168
194
214
247
243
145
222
187
126
204
199
179
256
207
215
244
175
201
137
241
220
201
175
224
231
165
145
217
217
135
203
132
205
204
190
229
196
244
138
187
191
195
251
137
225
242
248
213
220
230
188
160
211
194
166
232
208
133
190
234
239
197
202
161
207
159
268
182
187
195
186
192
169
190
232
248
226
249
214
216
223
211
213
224
179
217
184
208
204
207
222
144
157
161
214
187
220
172
196
176
218
237
166
141
191
195
203
224
149
196
236
166
273
174
190
151
207
212
216
208
232
181
185
253
158
267
188
241
137
243
199
169
127
261
255
213
213
183
231
159
199
177
217
210
181
188
215
194
229
138
204
180
211
226
237
167
188
266
233
213
185
245
240
175
128
183
201
199
214
220
248
223
207
270
174
138
261
209
132
126
227
168
211
223
246
185
189
196
197
191
207
241
181
154
257
221
124
172
183
196
172
167
250
225
258
223
255
237
215
169
273
232
178
192
184
223
136
214
190
277
180
163
209
199
289
203
206
242
202
193
267
200
187
186
237
194
205
196
175
237
154
137
207
238
255
203
133
227
173
204
165
183
152
181
254
175
217
226
180
204
222
220
191
181
207
184
189
152
187
154
190
157
189
182
200
171
165
220
224
219
214
199
203
214
185
271
251
185
166
284
270
209
268
177
221
229
241
188
231
183
257
230
202
183
253
214
113
272
224
225
187
198
235
242
196
171
201
227
216
222
189
151
177
197
234
230
224
207
221
184
231
181
242
208
180
194
236
214
277
186
158
270
157
121
217
203
225
260
210
208
224
235
255
140
173
228
249
184
189
217
133
157
160
189
226
166
202
223
232
228
193
217
269
189
245
208
216
199
201
206
226
183
129
161
223
221
192
194
219
210
143
138
219
229
141
178
169
185
191
225
137
189
248
178
219
161
199
188
242
170
221
186
239
176
202
167
168
180
181
182
199
146
180
177
180
213
153
152
241
184
180
234
203
253
235
281
253
196
108
191
165
176
216
208
191
204
207
204
228
214
220
164
174
205
223
243
199
209
196
138
208
218
264
193
215
200
149
276
204
146
148
163
169
171
166
249
209
252
151
217
192
169
184
181
195
227
209
205
218
227
221
218
234
218
274
181
180
224
242
221
203
235
236
227
147
176
174
214
105
205
111
187
215
235
208
169
140
250
234
262
157
139
139
177
169
175
195
129
207
222
139
169
199
211
181
186
240
159
119
177
198
206
157
203
220
179
166
251
191
201
191
217
191
215
215
198
177
166
174
163
187
190
167
210
203
193
221
149
186
171
210
233
164
211
187
210
135
219
194
230
142
222
223
213
213
232
152
234
198
205
156
220
173
161
242
194
211
233
196
158
226
230
212
192
218
222
188
215
231
195
223
209
241
167
201
264
175
190
199
179
227
276
217
203
204
213
185
194
192
206
196
220
214
242
226
189
181
260
264
209
194
238
204
144
238
207
183
163
225
199
205
161
194
212
246
202
225
130
211
211
245
205
168
252
162
203
197
256
205
124
237
163
162
191
236
209
134
208
208
206
190
210
184
196
221
177
227
236
153
177
208
209
183
211
242
196
193
204
182
179
201
155
179
213
209
214
205
288
217
260
167
275
232
144
212
198
167
252
179
214
215
238
154
212
183
205
230
211
167
207
198
233
183
101
243
183
193
184
138
145
295
192
140
206
174
218
168
213
231
213
272
145
156
219
175
217
228
218
250
242
183
158
146
227
258
186
227
221
250
165
164
154
280
179
207
206
224
229
226
195
260
248
191
154
234
226
218
281
182
218
225
212
284
220
149
186
195
170
174
195
229
240
214
158
206
142
195
199
172
227
213
200
142
205
178
261
178
194
214
132
170
229
213
219
191
221
230
202
232
251
117
194
173
251
189
241
191
229
151
190
228
176
157
179
219
223
241
160
186
141
178
186
197
220
157
186
275
175
271
190
165
171
212
224
127
213
123
239
222
233
157
193
218
155
252
221
196
244
130
175
198
240
239
185
190
199
228
131
245
204
278
234
246
180
238
207
188
178
208
227
155
199
144
178
218
130
186
211
158
150
155
198
211
197
113
134
182
192
244
214
113
197
227
176
172
103
157
268
223
194
226
169
165
207
177
211
208
223
140
213
183
209
189
209
183
196
185
193
256
247
243
248
202
239
220
264
167
188
194
225
157
159
174
242
201
179
223
200
194
198
206
211
218
198
232
178
234
220
219
210
239
184
182
222
278
239
222
154
286
155
189
170
190
232
172
130
212
184
232
242
184
204
220
163
187
188
225
254
243
167
219
237
167
197
166
198
192
215
202
225
144
231
228
211
172
166
214
130
158
231
228
211
204
214
185
167
212
199
230
213
196
261
196
189
209
251
246
266
195
187
139
191
160
217
222
198
185
188
198
176
230
245
187
146
170
173
228
261
211
198
208
158
239
163
200
212
177
226
213
203
144
126
191
241
214
192
245
246
158
225
214
164
230
208
182
222
219
170
168
199
262
157
210
217
161
190
200
226
174
224
166
217
162
250
182
173
274
170
187
170
197
246
170
243
200
222
207
194
171
184
186
122
253
217
174
163
195
202
167
191
180
215
170
206
193
218
211
145
215
207
224
179
229
255
188
154
222
161
149
250
200
187
191
190
254
162
222
205
201
234
251
207
213
252
155
177
253
191
179
242
211
221
257
192
212
212
163
233
179
202
201
174
222
196
155
221
155
209
203
198
260
137
214
240
195
208
236
234
213
236
203
216
221
210
231
178
195
174
257
227
170
208
180
168
159
217
210
226
176
134
163
272
242
173
282
183
151
212
98
206
164
218
216
217
173
248
226
213
251
114
162
235
161
216
134
239
101
240
131
205
214
214
197
166
231
222
224
176
233
207
182
197
210
203
190
162
199
220
204
164
178
246
229
212
155
195
183
250
239
199
210
219
164
223
271
226
227
249
285
205
172
111
173
197
189
167
220
169
215
137
165
196
233
200
211
195
113
236
224
210
203
212
222
213
246
215
186
170
206
241
194
236
208
175
189
200
240
212
187
177
220
190
276
225
247
228
239
217
232
194
255
177
189
214
206
188
193
177
158
270
166
178
154
150
187
239
268
224
166
207
194
174
168
205
235
252
219
138
230
224
240
154
232
264
110
174
220
214
167
210
255
279
237
202
174
222
159
173
188
218
122
148
179
114
117
201
191
184
189
263
201
211
201
208
190
184
162
148
183
229
279
172
174
162
243
205
203
194
192
176
207
208
208
210
263
176
202
195
215
227
213
178
145
171
198
247
191
140
248
146
201
173
180
171
228
217
196
184
225
194
140
211
108
175
250
229
192
214
167
166
189
232
195
196
179
141
222
242
262
213
166
231
183
216
213
165
213
215
187
198
147
161
137
201
218
156
192
188
200
201
191
243
213
236
160
188
220
166
258
197
196
212
200
152
197
220
247
208
242
206
253
153
209
213
238
198
191
183
256
168
198
213
142
107
210
197
235
197
171
242
210
195
128
187
181
205
152
199
237
174
233
162
194
196
178
207
233
163
99
243
154
218
168
252
159
199
197
205
185
253
154
187
221
256
160
161
245
214
217
196
151
196
200
166
171
166
240
190
103
218
207
126
202
200
239
241
149
202
201
219
207
203
233
238
175
266
237
113
236
148
232
199
240
165
246
240
241
195
268
224
189
257
197
202
235
259
200
198
131
228
168
149
242
194
111
163
233
140
169
194
222
185
269
258
227
166
159
231
249
208
218
246
211
207
226
277
183
215
202
98
216
168
142
210
194
159
214
237
188
114
214
183
172
206
109
177
184
246
221
244
218
236
209
195
227
218
224
188
194
183
217
157
202
175
185
211
153
160
256
246
175
106
138
224
154
154
191
135
195
279
216
192
247
193
214
226
202
154
224
226
236
163
141
189
187
134
199
167
215
283
252
220
207
241
161
229
244
201
127
231
243
168
185
277
194
148
214
258
128
219
246
166
212
194
217
244
220
154
176
227
192
165
205
117
202
227
168
221
205
155
176
205
201
189
203
183
234
144
198
209
221
205
172
244
188
249
161
156
231
257
169
225
245
209
214
234
186
190
166
245
136
176
245
169
205
279
223
174
190
204
167
234
203
192
203
188
202
198
149
228
238
191
214
218
184
224
196
134
138
172
153
182
183
172
183
220
174
227
183
231
224
169
174
211
243
203
213
234
205
256
204
215
194
178
238
196
209
221
243
161
228
260
175
222
210
209
198
210
211
246
238
179
154
180
200
152
203
233
185
218
207
171
220
176
201
179
255
226
177
238
214
225
180
220
158
238
166
222
154
149
231
230
201
135
218
170
278
137
247
177
238
254
219
183
234
179
192
194
232
160
191
207
196
241
199
189
147
263
255
201
184
270
164
235
224
161
193
250
146
193
163
194
202
181
174
149
173
234
199
196
200
265
195
217
242
238
132
239
174
169
145
182
223
184
186
221
151
205
197
185
198
235
191
169
251
263
207
159
155
213
188
221
138
190
151
238
223
252
201
138
149
265
217
179
222
152
194
173
244
200
217
162
199
197
172
238
140
220
232
160
153
125
206
184
178
234
224
228
193
142
230
167
214
166
231
230
184
161
179
227
191
269
186
161
166
236
214
168
169
182
239
226
203
202
194
274
213
194
241
152
260
180
185
236
207
170
164
224
192
154
183
186
184
169
170
205
184
194
167
195
220
185
210
195
235
232
209
238
186
170
255
238
195
208
180
187
206
231
204
149
160
154
189
209
172
242
146
179
231
171
181
201
144
187
222
101
242
157
170
231
210
201
225
201
242
228
206
167
227
218
220
185
204
203
221
137
255
230
198
254
209
214
233
207
248
131
152
153
211
208
171
170
128
260
235
203
179
231
184
233
200
175
228
161
166
216
214
182
235
194
166
215
138
154
187
192
156
203
136
205
106
182
226
257
207
159
194
188
211
225
178
208
217
186
145
173
205
182
222
126
265
193
179
170
207
191
169
229
191
169
237
253
188
226
219
132
199
181
182
161
240
200
200
172
198
186
100
221
173
200
195
214
204
174
238
197
191
181
200
200
197
191
162
162
155
146
175
220
200
224
240
215
209
183
276
207
246
230
156
259
214
217
256
199
189
224
208
204
212
152
183
221
241
182
203
205
201
169
200
198
210
219
205
206
230
205
211
217
198
159
256
197
220
168
195
263
190
193
221
193
171
205
128
232
182
225
181
208
208
156
196
148
182
227
185
202
277
216
192
185
148
270
235
203
172
251
203
189
151
222
167
209
173
204
206
173
225
214
208
182
174
179
163
224
224
200
204
198
204
226
213
148
241
214
235
122
185
153
242
250
204
213
155
220
216
184
214
286
254
168
208
255
190
225
150
219
205
240
188
273
233
203
207
153
222
190
167
240
194
200
240
211
182
168
206
227
171
292
216
198
212
176
149
179
206
190
166
167
172
200
298
228
249
231
276
236
257
212
171
137
193
194
241
232
256
241
149
189
249
218
191
187
186
196
132
198
202
211
172
234
233
186
162
182
206
189
177
176
186
197
183
174
194
214
237
258
244
230
197
196
171
183
234
161
164
280
177
122
186
211
174
191
236
238
198
216
237
188
181
184
218
201
218
168
114
217
196
230
233
283
201
170
168
208
166
189
230
201
247
193
176
144
165
223
184
241
239
163
155
230
209
207
148
238
193
181
224
197
248
192
163
168
202
165
185
212
224
252
198
122
180
165
230
198
227
255
263
171
142
197
149
273
182
224
166
138
227
209
166
227
199
156
248
233
162
206
223
239
145
207
236
249
177
170
235
168
218
211
229
269
233
218
141
195
203
180
204
169
178
202
208
167
170
188
223
179
239
208
199
162
155
193
193
191
236
221
180
199
153
208
178
220
161
243
202
247
228
199
208
218
188
242
176
152
195
268
182
237
219
189
139
137
223
193
266
266
209
255
200
219
173
200
143
192
221
189
162
219
195
243
180
186
225
179
151
177
166
227
179
163
217
240
236
229
196
228
186
207
163
245
207
186
216
252
123
132
213
193
170
150
233
210
193
190
237
277
278
219
238
272
166
183
204
143
190
259
201
233
212
247
207
199
182
171
218
174
162
163
162
213
259
237
215
176
163
201
219
170
150
224
283
213
191
174
212
249
186
194
190
234
160
214
189
197
156
166
241
183
191
211
189
223
191
197
229
156
218
162
197
206
230
204
165
177
185
221
250
169
163
166
194
186
170
205
153
241
176
222
226
227
208
214
243
197
271
222
197
258
175
196
222
199
228
161
149
195
190
195
217
201
165
163
201
182
169
228
162
186
169
116
213
219
206
174
188
207
211
201
193
193
206
202
147
179
216
239
223
183
201
191
235
227
167
179
177
169
261
219
267
170
288
180
211
246
189
208
217
257
192
156
211
181
197
195
216
231
170
233
144
173
189
150
259
224
225
210
224
206
211
191
203
244
211
196
273
221
113
190
207
167
187
258
215
178
202
210
202
168
199
236
181
239
164
259
208
222
206
177
198
208
208
181
198
165
203
224
188
199
213
217
186
145
172
203
207
197
169
217
256
248
219
190
212
178
176
159
194
195
197
191
215
207
179
177
173
277
247
158
237
204
254
240
222
205
252
186
213
195
191
237
190
209
130
192
190
226
198
209
187
172
243
199
143
268
188
226
212
204
213
211
220
232
146
139
199
203
232
195
241
219
163
245
206
196
166
171
259
211
217
138
215
222
185
169
136
238
188
136
188
264
225
174
188
191
242
259
149
190
185
207
216
169
173
240
217
227
199
242
207
190
228
247
148
146
210
190
190
215
164
197
198
242
188
175
211
193
139
216
254
247
166
212
197
190
217
161
229
224
242
201
138
198
201
184
222
135
211
235
265
237
170
219
146
175
216
163
204
170
188
155
222
222
206
114
197
201
191
158
210
143
191
251
192
223
145
135
152
176
265
197
234
183
192
140
220
254
226
196
191
215
204
171
193
232
214
223
231
178
154
186
185
151
148
193
131
194
175
154
214
203
203
261
177
254
172
164
233
168
169
186
244
171
208
159
219
198
134
225
242
236
143
232
234
197
230
158
186
180
167
192
212
124
198
222
176
212
198
229
152
187
211
181
177
213
194
165
159
186
174
150
243
163
182
201
156
181
180
188
236
225
184
257
231
157
194
253
166
133
203
200
233
238
164
159
263
176
205
183
122
186
191
202
218
247
194
174
208
204
231
185
215
164
186
185
203
232
190
210
198
208
187
191
216
211
216
148
183
131
182
214
167
194
219
245
239
236
226
230
208
190
280
180
220
178
132
181
206
203
185
198
234
189
186
241
214
234
153
245
189
263
298
212
232
189
190
216
154
194
179
113
198
221
155
173
218
155
216
233
188
212
223
189
190
157
213
193
188
234
215
155
151
206
123
182
160
221
260
180
152
197
244
191
171
241
249
220
147
227
198
203
203
232
159
220
227
215
186
237
222
197
207
225
239
191
235
195
223
215
167
170
202
151
185
104
210
162
188
205
226
202
241
211
145
195
176
226
209
185
163
202
244
140
194
215
113
175
236
153
196
194
227
238
152
184
193
204
184
205
225
207
186
92
190
214
159
182
181
185
250
217
192
199
241
171
167
171
192
229
207
149
181
129
210
227
206
231
189
220
187
241
179
206
175
201
186
176
230
246
253
174
192
181
208
269
227
197
143
164
209
173
210
134
272
211
175
205
195
166
179
193
212
206
193
175
183
249
199
252
235
165
258
236
156
192
208
255
233
224
197
181
210
232
239
194
171
208
175
213
173
230
276
158
192
257
217
156
132
195
170
219
165
202
214
219
232
193
189
196
200
210
147
220
200
208
168
179
223
194
196
256
218
190
176
195
149
159
213
285
188
208
204
198
279
247
169
146
181
226
163
216
157
158
173
247
181
212
188
225
189
203
198
240
293
172
223
214
228
255
192
182
230
211
188
178
174
179
186
199
210
173
177
204
256
205
221
228
301
191
272
193
184
153
234
177
164
219
203
244
225
191
209
203
181
236
197
243
184
203
191
241
235
197
229
228
175
193
219
169
215
189
251
261
199
187
139
198
245
236
161
248
214
191
218
206
214
254
254
188
192
206
225
181
250
225
220
186
196
236
153
225
186
196
206
238
208
225
271
233
181
171
216
179
174
209
130
208
188
222
233
192
229
252
205
175
190
212
193
197
205
229
193
229
220
227
137
208
230
176
181
127
182
241
208
152
201
199
230
243
104
138
291
237
199
224
207
243
210
171
195
215
217
220
180
224
180
223
214
119
141
183
188
204
247
242
192
177
253
196
223
197
229
287
254
244
173
215
137
183
228
197
170
215
213
213
174
197
216
175
195
206
206
222
171
176
189
189
196
240
177
234
261
210
216
245
206
189
193
177
248
160
196
248
207
207
182
237
187
229
182
238
219
148
211
142
224
162
225
243
152
188
221
140
231
181
199
170
185
194
221
189
277
231
172
183
172
205
224
279
168
199
161
175
221
217
137
227
177
203
200
260
205
129
176
181
134
184
174
195
215
195
177
244
170
197
236
163
158
274
238
259
247
176
248
240
161
219
209
245
267
221
228
191
205
188
195
257
234
180
228
237
227
272
152
236
250
224
238
150
190
219
229
179
149
187
166
197
216
198
162
162
260
231
185
194
209
192
236
157
212
236
138
164
196
197
217
173
222
217
243
231
219
190
114
215
215
223
178
112
146
205
184
149
95
178
194
193
178
240
268
246
225
233
245
146
168
184
225
203
155
199
208
270
171
202
177
215
186
182
217
124
173
208
202
225
183
218
220
264
208
200
187
217
177
193
228
284
148
136
210
255
136
136
148
237
185
222
221
184
174
240
180
230
243
249
206
173
249
202
250
220
204
167
170
178
186
202
226
198
263
153
202
213
203
232
148
187
199
155
254
203
161
215
212
229
215
167
158
245
121
201
211
230
212
223
182
215
250
187
215
185
278
202
248
207
257
251
179
132
182
232
233
144
264
261
185
219
123
145
213
178
215
256
163
192
227
183
132
203
259
248
210
214
129
189
148
111
176
213
160
227
144
160
246
228
209
228
198
157
168
160
158
152
175
223
202
172
174
184
205
162
288
180
228
202
195
212
140
203
186
243
191
177
254
205
151
225
263
192
174
179
197
182
156
242
225
188
182
211
167
165
259
214
216
170
211
210
217
223
246
209
216
213
180
226
159
172
218
220
220
231
225
183
233
237
164
245
202
206
214
257
166
162
147
194
179
242
209
198
234
164
202
187
222
240
180
153
195
205
233
179
174
199
151
165
185
220
189
158
235
217
151
237
170
214
192
226
175
230
212
151
104
177
191
269
240
177
180
160
146
227
212
152
199
210
183
162
218
250
190
208
161
239
130
163
186
136
174
179
229
230
204
215
238
210
219
219
218
173
183
184
184
220
148
262
217
208
188
191
201
169
231
174
161
174
210
247
272
155
207
225
149
201
184
183
238
232
231
133
205
196
189
107
219
206
233
246
171
223
225
219
142
226
178
212
246
231
146
190
187
215
164
203
185
251
177
246
153
178
163
246
218
200
159
231
213
151
189
156
213
155
182
203
179
205
154
196
246
192
191
222
217
264
162
186
222
237
193
213
164
172
185
177
215
226
217
122
237
223
255
166
293
144
140
167
184
244
246
127
176
228
231
226
185
197
232
242
201
189
237
223
182
213
222
134
239
185
178
193
216
191
199
258
215
178
165
152
220
203
188
219
200
215
159
227
170
180
242
217
201
272
169
182
111
207
126
134
191
205
194
202
233
178
164
199
227
234
235
234
183
225
214
197
183
171
204
213
157
181
193
86
204
228
235
189
216
241
182
214
215
206
223
204
143
214
148
178
273
205
279
225
206
232
152
175
208
214
139
212
217
99
165
223
269
214
179
159
211
252
208
199
190
252
202
220
231
223
217
181
193
212
180
155
192
229
197
242
177
204
210
191
246
155
232
205
198
224
190
248
199
211
166
174
177
233
167
174
224
223
232
190
217
234
209
190
268
179
223
199
215
229
219
225
150
252
218
237
239
194
239
228
236
223
217
192
145
252
180
183
188
209
223
221
160
250
224
231
238
207
206
249
208
227
262
154
263
186
128
224
187
173
245
141
188
219
195
238
184
217
214
234
196
188
186
194
199
227
168
201
218
237
212
212
98
237
214
266
194
229
188
140
199
204
228
201
219
118
190
130
169
179
238
202
185
228
144
200
208
220
227
200
213
185
206
236
236
125
158
219
180
221
187
183
203
244
187
219
171
250
208
150
217
222
156
248
150
219
209
219
203
220
236
215
208
200
213
194
215
211
135
238
218
174
174
264
171
141
127
177
222
235
196
175
165
185
208
173
139
182
232
202
252
169
140
175
196
156
251
158
238
225
222
182
175
185
257
200
177
199
132
181
154
171
180
228
208
172
211
154
182
236
204
225
217
154
215
146
206
223
144
223
144
211
242
227
197
181
222
246
247
163
173
165
183
180
223
199
226
169
236
214
227
184
148
214
178
203
190
263
122
197
197
158
218
185
233
190
192
186
149
178
186
205
188
147
208
240
212
241
193
200
148
201
187
121
151
225
216
218
158
237
251
162
177
195
221
233
204
171
106
215
225
202
166
217
172
241
255
171
197
247
227
200
197
177
153
147
175
276
189
190
167
264
200
176
166
155
160
173
253
172
161
269
189
169
201
197
186
191
211
230
201
155
227
262
209
243
235
215
204
205
242
189
236
194
198
118
238
188
244
212
152
192
225
231
245
248
200
235
192
159
212
264
225
218
175
188
180
204
196
212
187
121
164
210
239
203
165
184
168
118
245
214
163
216
251
207
206
157
247
225
210
252
201
215
215
130
173
225
192
170
191
223
212
166
241
215
233
179
175
207
242
234
217
147
168
193
241
224
163
156
221
237
183
175
167
182
217
207
229
201
174
203
198
167
161
185
207
118
233
171
252
207
136
207
182
200
217
139
202
209
210
239
212
193
222
243
232
229
184
161
282
227
159
190
200
195
244
147
206
172
168
224
214
183
197
267
234
158
248
204
210
213
222
166
155
173
167
214
159
158
211
247
264
205
167
233
221
202
254
215
225
232
175
201
170
200
187
201
234
211
205
189
188
219
189
204
144
125
201
210
221
166
157
201
193
256
193
210
230
234
188
273
146
193
245
263
188
209
200
205
199
164
221
229
168
251
169
167
231
205
188
173
203
167
149
248
182
197
198
216
212
207
202
214
214
262
172
199
195
225
225
183
219
245
284
182
175
170
189
203
290
198
211
188
191
166
215
172
211
227
196
218
217
275
212
258
222
187
176
179
200
244
200
154
209
218
237
154
285
222
214
162
117
207
233
159
239
204
240
172
240
213
226
215
210
204
236
205
193
226
275
118
160
191
180
188
213
183
257
192
269
128
220
159
173
203
256
237
241
245
246
252
175
192
214
249
245
164
166
242
140
176
227
256
198
249
242
188
195
176
137
225
115
204
176
243
154
204
151
154
245
231
227
252
209
207
250
167
242
160
184
210
190
199
140
213
181
182
269
166
190
184
220
246
193
234
199
160
149
224
148
214
207
187
207
206
222
169
205
210
252
187
188
158
167
197
232
196
89
151
196
135
135
243
173
233
168
276
217
277
164
231
233
171
171
201
194
240
208
220
218
245
229
198
202
183
217
147
211
144
153
184
174
88
152
165
284
191
190
214
179
197
159
188
154
199
237
217
182
169
156
220
229
155
148
236
216
156
204
148
209
241
159
237
249
227
204
202
232
189
141
197
195
239
233
211
197
164
226
224
226
244
269
181
143
195
196
210
207
195
206
176
189
173
231
238
170
181
232
191
237
217
155
203
222
237
84
278
243
215
239
198
235
169
160
210
173
190
151
193
268
224
247
199
164
204
260
248
150
224
184
203
217
221
195
154
175
184
243
171
238
241
165
168
243
190
213
204
197
181
235
214
158
227
227
274
235
158
180
112
181
246
167
165
204
237
226
220
237
205
157
186
205
202
188
188
208
222
234
232
235
259
278
196
169
183
160
254
248
172
214
200
266
240
234
218
152
136
249
241
258
181
190
154
241
228
200
180
244
189
225
209
177
182
166
241
180
164
216
192
214
118
147
205
184
192
238
201
206
233
221
270
212
217
191
211
222
190
173
248
228
198
181
253
201
182
230
219
129
165
258
213
179
199
191
244
200
148
221
220
195
237
232
102
241
168
219
241
183
218
253
224
210
184
230
184
219
145
219
198
223
180
209
195
262
169
225
195
206
184
263
209
157
188
224
170
169
215
223
223
249
235
204
185
184
208
197
206
157
224
298
216
179
125
264
198
157
146
196
253
205
227
187
178
194
216
192
183
194
171
214
216
225
154
163
188
232
206
162
225
235
139
183
206
116
204
235
189
161
141
268
201
226
227
255
186
189
278
232
170
202
176
217
207
149
161
249
252
243
143
232
181
207
254
213
161
232
240
209
258
191
243
200
136
240
192
240
183
194
164
178
150
122
188
253
184
219
166
187
273
247
160
195
149
135
231
230
199
208
122
249
257
229
210
235
186
143
146
228
265
239
199
206
219
143
197
206
213
187
171
254
196
205
213
203
246
182
163
189
199
232
177
166
166
219
217
142
252
123
161
235
232
197
165
200
221
218
185
280
169
217
237
209
211
274
184
219
220
190
179
206
228
249
244
257
147
213
230
221
218
252
240
190
165
212
180
195
278
186
228
159
185
247
181
216
214
211
187
257
210
208
204
240
255
182
176
218
177
91
236
146
181
132
192
268
143
171
151
183
243
185
187
173
198
177
218
204
264
202
173
247
190
141
197
196
152
232
120
245
222
164
221
201
162
225
207
180
218
218
221
217
225
238
217
208
156
244
254
158
218
251
137
146
172
193
236
184
147
207
160
164
137
196
218
213
211
193
156
228
236
227
250
200
263
221
210
186
200
177
202
219
193
201
222
170
227
147
188
231
190
234
177
212
164
204
200
248
221
265
279
262
144
209
199
258
146
183
264
200
288
207
154
259
206
159
176
220
277
193
214
202
205
210
155
206
213
245
261
197
197
226
212
229
219
228
244
250
200
138
187
231
182
159
188
204
241
183
211
181
242
159
177
207
187
220
182
206
214
191
168
182
241
114
227
261
183
146
208
196
154
225
183
167
243
222
221
206
168
281
162
219
176
212
174
210
174
208
192
141
218
141
189
236
211
213
241
149
167
230
167
195
188
238
215
176
154
261
121
220
188
185
209
187
267
185
266
222
248
219
208
199
218
203
237
272
209
252
183
242
221
227
170
183
166
202
179
178
193
160
211
179
170
229
252
133
187
222
165
181
184
243
219
212
211
190
156
233
157
195
177
109
209
118
187
213
180
222
207
237
199
195
198
203
211
193
184
186
172
256
139
170
207
257
210
243
174
243
223
160
218
160
239
214
177
179
138
181
186
185
137
209
247
182
219
263
217
261
198
210
224
248
173
165
227
266
179
175
140
197
178
226
205
165
230
204
154
158
188
236
217
182
232
219
200
243
175
156
216
233
126
225
188
172
235
181
198
224
207
186
235
186
204
103
213
194
226
202
270
214
185
197
227
187
230
275
194
221
217
175
165
153
202
265
248
181
247
132
189
158
221
216
199
212
180
199
190
236
192
207
205
135
219
194
240
120
226
233
222
216
236
204
235
220
180
223
174
227
177
192
237
224
217
229
218
221
176
230
211
195
235
226
177
164
191
208
196
190
235
224
100
232
176
160
198
219
176
233
177
192
208
170
194
187
170
165
222
130
136
206
166
271
242
224
245
207
226
233
258
196
167
176
141
199
198
147
211
182
203
252
235
237
165
210
226
169
186
278
188
158
193
207
179
178
175
155
172
192
231
240
258
143
172
161
242
172
225
140
173
250
212
184
144
199
221
209
236
205
238
142
226
185
175
165
147
214
210
135
240
199
192
200
192
189
201
227
166
69
207
233
196
270
180
203
187
183
243
222
229
242
203
152
201
255
200
201
206
274
174
232
224
233
201
245
233
231
164
215
221
219
163
227
196
250
225
235
203
178
246
207
247
225
254
203
239
182
207
154
190
218
186
152
222
141
189
178
231
246
198
201
126
215
261
229
161
171
196
304
212
234
191
191
227
233
174
193
177
222
235
141
258
214
200
232
191
177
201
205
192
151
233
218
238
244
192
164
250
167
198
189
172
183
219
202
226
180
263
195
191
208
195
291
176
214
233
207
239
229
257
240
124
219
238
274
166
172
143
197
230
213
223
165
184
125
216
228
193
180
234
188
178
231
233
218
243
178
174
179
230
186
207
157
175
190
198
193
209
124
179
245
188
222
190
194
235
219
162
200
185
258
153
220
216
160
240
227
247
200
246
185
155
211
195
198
210
164
193
207
173
165
209
206
226
165
155
198
228
198
244
206
240
172
204
187
244
223
220
200
143
250
212
233
206
157
199
195
246
214
213
236
231
238
162
157
185
199
163
233
184
217
222
182
266
201
227
198
239
167
183
217
186
166
201
154
185
167
168
163
201
188
159
138
123
288
208
171
242
206
112
224
212
214
174
201
242
194
172
197
161
190
216
143
190
289
203
216
216
190
183
233
170
236
190
208
159
134
168
147
165
159
177
173
188
198
180
208
200
179
169
244
153
219
153
205
181
174
177
208
241
234
205
222
188
132
216
168
209
289
202
264
234
214
226
246
256
223
214
210
186
193
222
260
234
174
137
179
190
162
229
191
249
228
210
163
190
184
138
248
219
185
228
158
213
232
220
210
192
101
286
216
207
241
209
254
167
144
169
257
188
226
200
220
217
206
207
199
194
220
212
220
175
171
192
261
226
173
205
135
230
180
184
219
132
183
212
163
227
204
147
225
218
262
196
203
164
205
155
207
242
231
201
202
191
208
206
230
212
159
252
149
194
188
209
166
194
187
256
198
201
232
201
190
199
189
194
193
178
145
192
188
209
145
207
209
227
224
239
250
159
142
254
238
191
193
242
216
192
156
169
225
263
198
222
225
243
177
178
234
244
165
178
199
207
199
214
180
258
167
214
148
183
239
194
223
242
194
141
238
135
159
186
232
146
153
181
225
238
221
229
236
211
154
251
207
157
167
195
179
146
225
192
203
207
223
245
191
190
193
172
145
210
212
206
211
212
210
200
236
222
169
184
293
227
161
224
191
198
177
216
193
200
212
194
269
177
256
131
193
219
168
243
158
246
196
156
167
250
203
233
220
191
213
212
188
219
226
223
183
141
256
224
156
189
232
210
171
196
153
166
212
205
181
220
196
196
227
206
169
187
140
185
194
198
233
118
215
228
231
212
188
210
237
190
251
168
198
197
217
213
175
188
111
229
243
182
178
207
205
209
168
246
182
220
176
198
191
226
249
222
241
197
202
157
261
206
185
143
214
211
177
176
176
123
229
154
197
229
222
235
157
205
158
246
234
193
138
195
195
194
172
214
145
276
161
140
228
242
250
208
190
209
178
215
171
213
265
154
207
247
247
207
224
158
228
211
262
135
271
182
255
191
230
207
153
236
209
206
209
206
188
190
219
233
231
210
190
179
236
172
228
223
216
240
214
173
216
181
198
207
164
241
169
193
228
248
202
163
201
209
206
207
186
176
191
221
196
198
156
245
247
216
232
164
210
140
155
176
169
190
228
167
213
166
169
190
244
200
179
241
197
219
197
202
249
170
219
190
176
225
204
254
238
216
215
222
205
211
249
250
225
213
192
221
176
180
218
144
226
183
196
245
289
238
193
231
151
262
166
186
219
152
126
202
186
260
295
165
188
174
219
228
163
214
177
144
207
223
224
217
146
175
128
180
154
181
192
135
220
175
230
160
195
191
169
187
116
234
224
186
224
183
202
237
193
251
181
207
220
238
226
242
173
218
183
213
191
219
233
231
233
201
215
209
218
252
184
178
211
232
273
246
187
194
159
174
220
148
198
219
174
213
207
134
259
189
250
205
234
246
213
224
121
234
275
162
248
176
227
219
178
216
166
165
225
228
132
140
197
192
179
239
207
205
185
249
127
173
185
178
192
193
243
252
221
190
183
209
222
170
199
265
220
184
199
203
217
239
222
193
211
252
220
154
185
198
170
174
162
238
213
211
273
245
255
198
244
226
211
193
182
128
235
266
250
225
184
185
176
162
196
142
162
159
215
260
133
170
196
165
207
242
232
223
261
236
268
180
215
189
212
212
237
231
166
190
232
169
172
217
237
232
215
237
223
193
211
225
191
208
213
181
203
186
190
229
206
151
207
176
168
169
230
261
152
211
238
229
216
180
201
256
178
152
235
191
204
233
157
175
180
253
219
138
226
220
239
144
193
211
231
175
237
189
234
221
193
208
217
217
181
148
210
219
234
238
201
250
112
200
206
255
166
134
237
226
175
146
149
197
254
211
196
148
221
209
201
194
234
210
137
216
176
216
136
251
133
140
167
179
220
191
238
221
224
159
195
199
260
213
179
186
192
208
227
224
167
226
163
197
155
185
199
220
220
179
225
225
218
198
180
230
161
203
171
237
185
157
177
196
221
159
209
198
135
168
223
156
173
221
219
160
169
165
171
259
224
243
196
216
194
189
243
229
164
152
208
170
134
170
252
222
176
172
243
150
200
277
218
236
247
179
235
239
172
228
236
172
237
226
208
192
231
139
189
236
218
186
187
179
178
195
189
207
215
238
190
217
202
128
210
170
225
211
243
200
277
200
208
189
248
154
181
225
240
248
196
151
213
219
220
248
174
264
247
212
206
185
258
232
179
197
209
193
232
209
98
178
145
238
183
199
186
171
184
235
206
180
218
148
250
208
169
212
258
202
147
228
188
210
231
254
170
186
134
162
183
227
177
164
231
245
237
209
165
177
138
171
247
129
184
245
189
222
172
231
197
237
223
228
126
184
192
156
197
176
246
209
158
207
213
189
226
240
194
243
182
175
213
208
213
215
163
242
191
182
124
240
178
169
225
199
163
267
221
185
175
190
233
178
228
162
150
218
256
208
189
245
214
250
216
256
216
207
195
204
132
49
237
202
209
248
189
174
255
161
225
229
188
244
176
154
149
209
175
183
221
230
238
204
164
192
200
189
135
158
221
221
190
201
202
186
193
224
211
250
209
225
215
192
194
216
181
172
228
200
162
200
249
259
221
246
167
204
187
146
208
233
229
190
184
245
176
169
164
175
208
205
165
206
234
203
198
208
195
179
190
199
226
181
238
216
237
232
201
153
242
282
200
179
211
196
167
224
242
236
175
218
165
177
164
215
181
142
237
185
151
146
230
202
225
206
186
235
194
125
201
176
193
199
182
215
163
245
250
155
200
212
200
184
154
236
183
213
224
215
199
183
163
218
210
216
241
170
189
208
172
223
267
214
183
223
235
218
98
224
190
197
234
144
181
141
224
143
200
220
261
175
138
221
223
219
151
195
194
188
238
254
225
152
197
116
222
159
218
173
138
262
137
217
197
125
166
217
237
242
187
168
153
158
184
234
208
172
205
186
215
200
160
235
155
205
208
190
191
224
229
221
188
194
182
170
236
255
203
235
204
222
236
163
257
185
268
202
213
164
228
189
130
205
239
180
192
211
192
195
171
191
172
205
192
112
190
162
198
232
197
234
208
187
176
192
189
152
152
182
189
180
224
158
113
161
206
222
166
256
171
164
201
231
218
185
209
166
185
190
141
185
156
155
224
161
195
224
194
205
200
156
173
231
178
204
208
227
199
236
247
260
228
189
171
109
221
211
206
259
233
188
229
157
112
169
235
217
233
229
157
199
216
190
195
223
204
182
192
200
234
213
236
265
158
154
138
171
163
231
216
206
237
194
268
222
210
242
133
220
236
235
225
267
189
138
216
186
169
183
150
241
214
230
254
238
235
145
234
188
176
217
184
235
218
193
246
229
173
222
214
156
186
151
163
139
215
255
219
242
186
149
158
195
206
229
245
202
210
217
220
150
239
162
191
187
189
184
278
136
175
180
218
163
189
207
140
185
180
185
168
172
117
230
227
190
186
213
234
181
210
200
206
209
136
246
187
204
196
201
230
181
204
196
154
209
224
151
178
226
191
228
222
163
217
275
146
157
260
237
138
155
193
213
189
227
208
204
236
219
102
238
168
171
188
155
136
217
178
237
172
220
182
174
196
188
221
171
156
252
165
225
168
212
190
221
234
236
201
123
168
220
170
185
244
216
204
167
198
114
195
198
134
202
181
135
235
202
185
154
168
185
186
150
177
204
187
236
211
131
166
138
255
175
231
218
115
180
189
139
235
258
265
269
259
164
170
169
179
222
166
192
201
181
261
177
201
255
224
167
202
210
192
227
181
133
168
171
180
187
153
190
163
181
236
159
198
192
161
214
218
245
155
176
198
164
221
233
190
174
219
174
153
210
188
188
156
265
193
180
212
232
172
241
145
176
196
199
231
201
219
187
249
184
174
184
212
197
214
231
141
232
171
153
166
220
186
196
184
171
242
189
197
183
198
191
162
202
155
161
232
210
198
198
186
159
208
206
151
176
194
234
193
123
202
233
203
189
191
173
244
184
230
212
233
200
228
195
195
216
229
225
236
190
193
237
155
254
166
119
168
179
204
271
178
242
108
193
119
213
134
175
137
152
252
247
177
205
190
197
244
191
173
228
246
203
180
208
209
234
219
218
185
250
191
196
198
238
192
208
196
216
203
227
242
203
194
147
204
189
186
179
187
218
214
199
169
223
176
226
101
205
232
218
232
252
226
176
115
158
215
197
187
204
152
150
192
202
228
193
183
154
201
199
213
253
253
188
203
193
178
251
241
187
179
189
180
226
157
188
238
268
287
193
232
162
196
225
261
279
176
242
227
221
205
229
164
202
233
173
141
89
195
192
199
202
196
191
158
212
177
194
224
245
165
191
184
222
253
140
163
250
241
207
217
157
230
188
263
177
142
238
223
227
178
191
151
229
230
190
271
150
223
231
240
206
245
167
174
262
270
216
267
188
155
115
197
196
146
197
147
219
170
245
191
165
211
149
230
153
215
190
187
187
228
192
164
216
229
218
236
182
213
264
212
153
177
232
200
177
183
220
184
169
166
181
217
191
215
187
166
246
207
188
217
154
214
214
207
150
211
207
210
181
166
171
201
209
189
189
275
214
230
268
228
164
155
270
170
195
188
169
167
181
204
166
191
172
202
241
147
211
268
212
212
133
189
151
204
185
206
211
198
187
114
148
216
169
146
234
164
187
266
147
226
213
201
242
271
230
255
198
237
209
210
177
223
135
219
196
178
198
224
186
213
222
211
172
155
248
163
227
231
163
164
205
198
206
163
176
205
159
150
177
208
261
208
178
175
185
201
210
131
197
232
189
249
231
187
231
189
214
249
198
228
209
172
207
219
181
175
189
192
230
196
205
214
167
221
229
268
170
245
184
172
271
262
212
226
190
252
165
232
196
191
156
171
225
178
210
236
217
227
195
227
253
217
184
163
197
211
162
162
188
173
239
229
226
154
166
237
189
175
256
141
175
222
187
196
241
253
188
185
142
215
155
228
183
149
183
171
212
146
156
188
223
165
216
207
212
230
129
183
243
191
188
172
241
165
213
198
148
173
200
182
193
175
143
290
261
197
237
200
246
159
211
230
176
171
187
142
231
218
214
186
175
262
176
177
170
248
203
161
199
237
175
232
205
199
169
123
208
230
200
210
238
194
190
171
154
215
230
185
216
241
181
139
210
235
220
213
220
206
268
233
182
211
241
210
252
193
242
185
167
200
181
160
141
257
144
225
171
182
215
157
203
154
205
211
237
269
189
195
189
253
211
193
187
170
181
255
207
175
267
158
178
221
250
154
189
176
228
284
239
124
171
266
223
204
172
197
151
122
178
240
217
167
182
228
218
191
191
286
126
250
265
241
170
160
171
260
183
218
211
183
254
196
170
207
226
218
195
211
211
244
201
233
161
177
218
210
195
269
224
127
161
235
201
198
198
186
118
212
156
176
167
163
167
204
202
221
242
157
194
179
203
168
186
257
232
207
159
197
214
240
195
186
205
214
193
230
195
156
258
229
256
179
213
219
214
246
147
202
230
242
155
157
199
158
181
184
206
239
195
181
217
177
167
240
207
164
194
259
231
150
136
223
153
225
169
146
209
206
151
190
185
178
157
183
182
186
147
137
210
193
215
170
158
170
255
201
219
160
196
180
242
208
255
157
226
223
198
214
144
200
235
246
202
235
232
178
181
190
162
256
268
240
215
243
207
163
228
224
155
134
223
250
248
190
166
280
205
179
205
188
161
185
230
229
144
220
199
203
182
164
240
205
192
188
230
200
204
212
218
218
161
174
170
193
177
187
204
193
231
197
238
184
199
233
239
187
125
182
170
153
270
241
156
201
209
239
189
199
182
212
197
239
208
225
177
263
235
215
211
204
211
228
170
191
270
212
156
184
274
250
117
238
149
176
202
176
203
150
207
204
242
220
152
203
162
167
214
216
229
195
164
152
237
177
220
178
221
180
155
199
145
174
176
222
190
218
238
197
215
189
259
201
134
190
224
164
176
260
259
240
150
212
170
177
196
205
215
235
257
208
206
187
168
185
175
151
281
196
206
139
197
237
214
203
180
186
190
175
207
214
215
250
162
193
124
201
184
164
235
148
200
286
182
237
239
186
160
229
164
241
143
148
200
183
212
217
157
192
191
177
199
152
244
161
124
216
217
266
221
242
197
186
234
122
268
204
211
216
184
216
234
210
239
233
259
236
163
257
222
157
227
256
179
189
195
256
177
200
266
172
185
164
219
116
237
213
218
221
186
161
191
220
183
195
205
196
175
191
258
158
204
174
256
236
210
144
222
193
206
187
229
198
230
227
179
198
190
192
183
191
257
200
145
188
170
159
233
195
225
159
229
167
234
131
221
164
199
147
152
248
159
172
255
226
169
174
196
193
168
215
199
234
238
232
270
197
201
189
160
233
244
222
134
220
191
261
195
192
229
199
144
158
232
140
192
177
211
185
182
211
207
176
237
189
204
245
213
162
222
197
168
194
133
228
216
240
187
188
212
188
256
215
243
185
224
237
231
218
229
183
183
180
207
201
170
247
239
176
135
222
142
202
216
175
194
250
187
166
155
198
140
226
193
162
228
179
180
197
262
195
214
186
199
216
262
208
200
223
270
187
211
219
217
171
232
254
171
209
205
209
171
250
164
214
157
117
199
170
189
178
235
158
237
205
207
253
268
229
207
168
206
234
251
196
209
163
149
234
177
206
204
157
159
228
252
206
200
234
216
209
157
235
159
172
215
194
215
215
202
196
206
214
201
238
199
230
182
223
173
187
168
142
204
205
204
235
158
197
203
140
135
242
172
206
225
205
224
262
244
147
229
168
210
198
194
261
245
214
202
185
233
141
188
266
207
234
197
186
172
221
219
162
175
257
211
223
192
230
279
130
226
166
260
227
241
230
201
140
233
171
211
151
273
171
226
212
179
218
248
169
165
209
153
259
237
145
154
199
206
251
230
243
183
172
216
179
217
209
210
163
128
215
240
229
201
249
158
264
157
229
223
170
206
255
128
280
161
167
251
231
167
172
207
124
153
247
228
172
224
180
201
201
211
203
193
214
167
157
179
147
217
215
164
242
240
217
137
166
241
170
173
245
206
175
159
216
233
206
216
233
196
184
151
154
205
213
129
214
206
171
233
214
241
162
247
171
175
230
165
199
255
179
165
209
217
171
145
170
218
185
183
190
229
136
181
161
244
236
209
203
160
185
175
241
243
164
179
185
146
246
191
269
230
215
222
240
210
209
174
194
203
217
241
229
226
203
168
248
197
196
135
195
217
209
241
241
225
217
243
141
184
202
171
130
210
199
224
241
175
174
216
228
225
184
151
193
224
200
240
229
177
228
245
206
218
227
252
215
197
141
237
223
226
220
208
167
220
249
257
208
228
191
269
233
162
238
215
245
216
203
215
186
203
195
143
214
257
206
162
176
208
193
177
202
132
187
156
196
238
165
218
233
201
237
234
195
193
232
197
189
249
186
168
178
186
164
205
148
139
157
205
251
248
248
244
243
278
189
181
238
213
215
192
249
190
163
298
209
196
149
173
163
180
236
138
179
227
206
195
207
212
217
249
189
188
187
301
207
158
212
191
200
195
213
203
180
208
156
199
220
201
229
235
254
183
191
249
218
249
170
275
171
270
153
237
140
205
234
224
135
196
159
232
176
253
161
262
211
176
217
218
201
189
184
227
233
260
220
244
214
172
139
201
217
205
209
182
206
239
156
221
215
220
202
244
176
162
177
200
214
174
213
211
157
208
192
249
243
212
243
178
173
218
207
162
179
148
164
249
154
251
190
159
168
285
215
143
172
191
155
181
203
162
154
180
203
195
183
246
196
197
235
178
187
257
189
209
212
225
176
279
223
228
205
182
158
210
267
251
206
209
276
205
204
214
180
224
219
250
229
269
151
240
218
193
223
210
163
177
186
150
235
231
231
231
205
236
207
190
194
212
281
170
171
193
190
183
205
120
227
160
215
194
215
157
183
223
148
206
213
226
242
199
232
174
180
186
162
188
143
206
243
187
239
192
210
184
225
199
240
229
258
125
189
169
205
187
155
219
253
201
215
220
206
225
262
181
172
167
205
187
231
204
170
212
211
184
201
182
243
126
220
213
174
191
188
197
155
142
248
209
174
222
259
243
188
243
162
195
234
153
247
222
136
249
226
198
278
203
236
189
246
210
147
192
190
269
187
260
160
236
221
246
226
245
180
184
178
277
173
193
199
195
228
158
170
176
174
139
197
167
157
244
209
227
225
254
165
187
227
231
162
228
172
234
184
185
152
204
222
168
191
133
190
228
226
174
252
187
225
122
148
225
186
182
206
147
236
223
218
227
188
177
215
192
150
219
154
259
164
194
229
212
116
255
227
201
216
195
259
172
231
233
172
176
205
210
160
223
219
184
261
170
198
156
162
202
205
228
186
250
240
113
156
133
214
190
265
183
187
239
245
201
242
170
226
244
169
190
243
182
214
208
228
206
219
207
189
165
236
168
288
174
196
104
155
255
184
215
208
213
224
191
217
227
225
184
213
265
176
221
178
162
128
187
281
210
177
204
211
154
217
243
218
187
255
180
222
219
111
209
246
224
196
261
211
168
189
200
209
164
210
213
211
204
209
269
247
180
268
177
167
244
221
213
201
238
189
238
221
177
163
233
216
188
209
258
205
182
161
219
220
150
201
219
192
206
250
199
202
137
168
254
275
207
212
217
176
254
171
163
175
182
223
221
215
213
202
169
220
219
222
165
252
209
191
186
186
183
203
184
226
147
239
205
184
148
232
178
236
211
193
215
209
206
203
218
220
154
226
251
252
234
205
203
186
151
273
204
180
183
203
162
195
235
180
208
261
209
214
208
231
267
166
210
218
178
185
227
154
223
233
233
154
212
213
227
223
220
149
146
141
212
165
247
136
181
134
153
262
149
166
135
208
189
221
225
163
222
263
155
195
225
239
200
178
154
188
192
213
219
171
202
207
161
168
230
187
182
183
184
218
236
182
169
258
234
208
236
175
190
190
218
147
240
208
183
204
101
174
225
178
228
179
201
233
192
151
182
163
240
240
226
199
195
232
212
177
166
181
158
198
225
249
227
187
195
112
154
188
152
195
219
205
205
243
205
124
179
231
217
234
169
223
272
200
190
195
174
125
170
187
132
202
223
162
196
240
205
237
220
222
241
167
187
202
263
214
202
208
234
184
174
183
207
227
226
177
232
183
149
194
167
240
159
266
217
226
217
203
218
208
210
228
255
206
177
218
245
238
199
177
117
246
158
239
115
189
195
192
215
124
255
197
182
218
231
224
203
240
238
206
168
210
160
204
191
229
169
213
245
167
217
181
207
175
198
238
166
224
189
198
191
162
184
221
175
195
201
122
152
232
210
183
204
172
230
191
230
177
191
222
209
186
196
159
128
216
151
226
279
173
247
215
222
210
227
237
153
229
257
201
176
225
227
221
234
200
242
199
171
206
205
176
230
206
232
175
192
259
187
205
194
206
223
166
220
227
174
185
216
242
267
198
213
221
214
179
215
206
139
186
219
169
214
228
214
194
228
227
173
201
142
204
200
236
201
207
232
187
115
191
258
188
145
179
239
194
242
183
191
170
228
126
183
246
218
233
229
192
190
162
229
147
169
258
182
219
167
218
213
173
220
115
158
227
231
192
220
209
195
181
190
174
197
215
146
163
191
220
195
255
142
218
200
172
171
220
227
233
232
259
136
119
198
210
246
226
227
230
189
245
223
187
158
266
241
209
199
158
210
214
178
207
193
208
185
165
192
159
182
157
247
208
210
216
187
199
208
186
227
242
156
231
261
227
212
240
212
190
209
229
178
137
198
198
189
198
224
165
212
228
214
234
221
146
171
237
154
204
232
203
203
228
213
170
193
273
241
246
212
168
225
129
211
228
220
171
247
154
181
195
222
226
139
215
210
183
164
178
102
155
192
185
218
229
229
187
219
216
235
202
210
192
246
189
268
192
188
166
151
211
198
151
212
189
176
197
268
134
146
180
246
176
187
275
178
209
183
186
200
223
225
134
217
212
214
184
209
209
180
133
187
184
227
223
212
218
272
205
197
181
167
159
231
234
205
245
196
251
204
177
208
222
157
175
238
246
156
280
196
208
132
257
219
151
204
263
162
248
213
216
176
185
224
244
225
234
247
243
224
220
245
190
163
193
190
187
190
136
204
187
122
248
159
186
220
166
135
216
181
217
159
231
179
141
214
185
140
218
184
213
157
260
149
187
168
172
182
200
147
175
204
201
181
220
205
177
165
219
176
113
228
164
220
276
224
217
146
182
176
204
197
130
156
179
184
249
168
156
175
243
200
207
220
210
240
123
240
249
163
224
213
245
266
247
243
166
224
228
184
192
234
255
210
220
232
143
253
241
167
153
218
235
202
201
198
196
164
217
155
189
188
217
217
190
169
174
176
212
225
143
193
216
210
180
242
157
165
219
182
222
183
200
195
237
239
254
208
226
231
139
131
182
170
251
221
224
188
158
244
229
236
222
176
225
160
209
186
200
228
171
220
188
214
194
161
200
171
196
154
265
195
159
149
203
221
158
202
225
190
215
223
276
245
182
231
221
166
202
209
212
218
183
205
217
231
187
195
190
164
213
233
137
253
231
161
183
205
162
153
210
206
207
181
187
210
173
222
224
172
232
190
218
236
195
182
254
238
204
201
191
195
160
128
194
167
145
141
196
193
216
168
189
209
139
256
220
191
238
138
171
193
236
156
221
132
171
268
215
156
222
194
223
195
214
204
163
160
254
166
130
214
255
207
233
237
195
213
167
246
200
189
239
201
209
204
168
263
166
242
214
210
204
197
174
216
239
198
158
177
192
197
226
243
233
251
128
194
149
207
208
216
253
107
168
159
196
242
195
139
265
219
254
193
185
211
224
230
209
207
187
147
260
250
201
200
240
178
218
235
174
146
210
191
239
226
169
172
220
248
177
222
198
270
164
205
173
212
160
230
162
159
207
188
200
276
288
224
195
211
201
124
237
181
229
256
223
164
153
214
208
154
228
136
151
212
231
172
289
111
248
158
251
177
181
220
190
217
171
108
151
266
195
166
217
228
179
206
214
243
237
150
201
208
179
214
233
194
201
242
190
204
187
189
170
215
183
239
185
202
181
237
170
190
218
194
194
100
156
205
196
199
140
177
230
218
210
239
202
152
199
236
218
198
202
193
227
267
259
142
224
145
178
259
224
237
195
115
261
184
137
197
184
250
206
194
177
220
172
211
167
206
210
274
202
223
226
280
208
178
259
245
173
165
217
187
131
226
151
148
173
231
230
222
188
194
145
153
187
138
221
183
157
221
239
231
221
144
257
231
202
206
205
180
185
198
234
228
232
232
241
178
201
194
233
219
209
226
210
237
171
126
217
209
128
199
231
263
157
163
189
195
207
197
220
250
208
196
140
222
251
235
175
211
256
161
215
169
189
158
270
215
206
186
228
229
211
145
226
200
157
218
114
206
169
150
203
179
189
147
162
271
164
181
165
197
238
188
189
178
213
177
172
174
234
180
194
242
176
204
199
199
176
289
198
178
236
152
193
223
256
194
214
213
143
191
270
209
185
240
198
195
188
228
133
143
156
250
218
214
208
208
250
173
189
207
211
207
251
245
229
138
194
186
235
186
179
172
258
213
187
183
180
142
194
167
164
199
240
158
224
204
222
211
165
160
234
163
202
192
210
185
156
222
183
160
187
194
198
189
228
222
182
167
175
160
176
186
187
225
230
212
252
210
176
192
263
241
162
134
228
223
203
207
171
197
235
237
214
175
189
222
216
181
182
205
205
156
171
215
204
154
211
150
178
177
118
241
222
157
198
216
201
242
183
223
184
274
182
227
227
191
210
166
133
184
225
241
207
117
200
157
155
159
219
168
139
174
196
263
166
221
170
272
207
228
202
217
257
202
153
200
231
234
185
200
246
231
211
210
184
226
176
218
225
217
267
239
160
152
209
224
123
186
160
197
183
172
203
180
269
159
178
178
187
190
146
175
189
175
200
194
152
214
166
210
163
222
149
192
179
270
203
211
215
179
179
220
219
213
189
241
201
237
273
208
199
180
215
214
179
230
243
230
220
211
253
205
231
211
249
226
214
208
174
186
234
162
170
210
194
216
241
174
275
119
187
188
214
227
273
233
215
222
184
272
163
237
182
274
153
221
278
251
210
239
193
275
200
225
226
198
215
172
204
168
200
170
200
167
174
230
249
219
171
181
221
164
209
190
266
192
217
218
251
160
258
230
132
241
138
178
207
255
185
173
167
169
157
231
221
217
200
176
171
144
252
219
133
201
198
188
226
176
252
205
176
182
254
165
187
227
229
166
167
151
239
254
180
225
215
130
277
215
143
211
210
162
203
242
184
223
249
206
208
174
141
142
217
232
184
201
233
214
153
207
137
219
208
212
242
213
175
220
252
206
238
216
169
219
282
220
202
250
179
212
246
250
174
213
130
160
233
102
187
149
192
227
184
160
253
225
215
221
179
179
171
103
239
206
187
137
203
152
199
215
180
198
184
260
224
236
199
254
210
116
211
162
174
204
280
190
139
215
170
193
174
169
175
219
162
162
237
250
103
203
240
211
161
247
247
186
271
167
193
223
212
191
164
244
218
176
208
194
256
200
241
204
223
151
205
229
228
168
248
175
220
134
245
219
190
227
184
221
233
186
177
216
205
204
193
203
222
240
269
124
241
234
188
155
256
203
180
236
205
160
236
213
235
183
182
220
162
181
210
219
270
214
198
223
191
243
214
238
170
194
164
177
167
202
166
163
214
228
229
241
262
245
168
213
220
234
233
254
206
229
167
241
158
217
189
242
140
188
253
140
165
191
145
216
248
243
203
217
148
168
187
161
224
224
266
222
239
230
208
246
169
212
139
189
244
182
234
164
249
217
216
212
128
198
167
180
185
217
156
237
255
192
203
211
194
215
200
226
167
162
243
202
179
236
268
146
221
179
192
247
256
218
227
209
206
228
174
242
161
175
208
120
170
179
228
217
210
222
206
155
212
227
234
192
261
144
232
145
167
168
198
148
163
194
218
223
233
207
197
246
181
155
154
168
190
203
142
237
179
227
181
205
186
198
206
211
181
162
260
171
232
186
133
211
187
273
189
156
202
215
197
191
228
186
203
180
205
150
223
238
250
180
226
178
247
197
229
184
210
217
225
171
215
167
148
174
120
158
260
214
157
214
222
124
210
205
170
162
223
235
183
191
269
218
146
176
174
191
157
205
251
249
150
210
231
226
201
265
191
170
137
199
212
215
203
228
183
175
203
187
261
278
163
207
179
164
227
195
227
197
178
180
226
164
250
182
178
214
177
214
188
148
211
231
214
178
173
209
173
243
202
250
219
164
206
203
237
118
167
161
282
193
195
162
208
192
167
172
196
230
216
188
248
204
173
210
141
233
120
160
236
212
167
232
199
215
229
197
228
222
204
188
212
205
214
212
194
214
180
234
157
235
220
187
200
237
230
153
201
167
218
144
219
167
233
197
183
182
207
226
236
191
177
209
228
198
204
188
189
229
180
163
199
205
233
205
223
168
214
173
231
228
256
190
172
126
136
202
136
238
243
203
217
216
221
186
202
215
202
215
194
166
200
198
175
196
251
132
194
186
235
171
212
221
184
241
202
228
213
209
205
243
183
224
266
230
191
240
173
227
199
178
230
233
221
224
131
205
203
156
198
172
202
222
195
182
156
247
261
233
193
211
185
169
174
233
187
228
193
247
263
213
180
181
261
132
184
176
199
205
144
221
197
220
248
219
244
177
204
179
214
177
215
222
219
220
154
193
196
176
123
247
266
184
244
161
171
242
230
238
247
227
224
178
207
153
175
166
272
203
248
231
200
203
188
224
180
175
193
180
208
168
195
236
231
231
191
206
198
184
130
119
224
250
249
228
209
150
244
149
163
135
224
238
247
197
186
226
207
166
187
248
183
198
154
166
180
232
251
223
214
159
183
194
227
219
91
222
239
235
133
201
192
223
142
192
194
218
159
214
164
216
193
204
239
199
201
209
239
219
204
265
222
203
189
239
193
114
209
229
202
224
161
177
147
213
145
93
220
195
227
230
195
178
224
175
261
202
173
166
178
214
143
249
213
203
223
148
198
207
211
214
176
210
140
245
216
244
237
194
211
160
176
211
237
273
182
230
164
201
233
216
225
222
215
236
204
122
139
175
240
166
215
175
177
183
225
178
186
238
208
196
200
253
207
206
263
212
124
150
151
204
231
171
189
236
189
167
186
154
189
194
253
165
136
191
144
157
187
215
209
177
191
158
210
178
229
192
200
186
205
209
215
231
247
223
179
190
245
192
171
193
184
140
176
125
176
172
213
235
227
221
192
203
260
211
181
240
214
238
229
237
173
139
275
239
209
210
257
268
218
129
209
225
179
217
161
218
189
183
219
209
202
191
206
196
239
212
225
187
179
225
160
249
229
180
238
189
135
193
195
222
177
198
252
207
214
221
214
237
210
207
244
242
227
186
173
196
218
264
196
282
220
204
167
224
186
204
204
226
224
209
155
184
182
195
197
186
199
168
226
194
165
237
144
265
136
162
230
221
256
234
161
214
203
212
145
177
242
198
127
169
188
185
193
179
223
209
189
202
185
248
168
235
193
240
196
206
209
177
185
146
208
210
240
192
161
184
231
180
200
252
189
170
227
187
194
187
215
257
198
249
221
193
160
209
234
233
164
254
200
170
206
225
173
159
209
152
219
174
231
186
225
179
213
239
252
137
263
136
181
216
233
142
173
212
209
204
180
145
289
211
268
216
198
173
189
199
216
178
160
188
232
223
211
175
211
220
142
163
152
192
175
195
209
206
194
147
140
226
167
244
202
199
230
221
164
198
203
164
204
202
216
231
231
151
167
176
183
228
229
194
159
258
144
173
189
204
189
201
210
189
211
209
191
234
129
196
180
167
192
167
178
192
163
226
185
156
203
224
165
172
183
205
113
206
189
198
177
173
195
248
224
146
189
139
201
243
249
231
223
249
244
193
269
144
241
236
183
228
243
196
238
190
174
197
167
185
218
241
224
202
192
203
205
204
215
189
211
253
213
232
169
230
253
127
180
174
164
230
191
151
223
212
236
229
153
215
227
240
232
178
210
208
216
173
188
224
185
212
262
214
255
162
207
185
234
209
224
202
207
222
180
236
241
248
223
218
150
266
191
210
195
254
172
238
230
161
247
142
252
133
194
197
139
200
208
163
132
188
143
218
169
224
212
155
246
181
219
228
173
230
169
174
244
171
271
207
207
238
136
180
214
232
224
264
178
185
112
173
148
204
163
242
211
187
212
178
148
231
173
200
198
158
148
126
218
200
230
212
239
196
203
221
176
166
170
166
179
205
226
210
230
233
190
248
143
244
196
212
156
216
128
236
187
204
248
263
179
217
174
175
154
253
221
189
208
235
212
195
144
212
225
192
182
216
161
145
205
240
193
186
206
191
106
188
251
186
175
246
140
193
263
242
154
136
218
185
230
101
204
211
123
179
165
162
176
203
247
236
159
174
192
199
191
233
182
188
237
197
124
213
208
174
201
212
206
156
174
205
193
204
238
175
193
154
176
145
144
228
198
270
155
226
216
247
193
148
199
222
189
157
168
236
240
219
221
202
253
160
207
204
142
189
227
199
155
218
161
229
181
222
225
165
199
223
232
213
191
241
170
222
212
198
171
180
249
130
184
238
133
167
243
204
242
186
210
231
210
174
210
189
148
231
180
269
182
174
202
182
274
207
213
236
195
230
276
166
214
139
164
204
234
190
184
183
132
201
238
134
201
195
217
227
207
228
250
146
212
268
182
187
236
214
202
240
241
263
205
251
182
173
126
149
174
202
201
197
224
219
227
189
202
189
170
180
173
161
244
251
223
204
216
245
133
231
185
158
192
176
157
239
199
139
173
184
112
197
175
189
242
189
186
142
160
210
184
205
230
163
172
156
181
205
198
135
231
198
200
199
152
153
151
216
235
214
252
156
146
198
210
165
193
240
224
209
221
188
239
170
188
248
232
204
234
138
192
264
222
238
214
226
231
210
187
207
154
222
170
221
196
165
191
218
214
182
189
196
206
159
152
155
197
149
213
258
245
214
244
226
181
192
206
210
206
176
214
192
205
232
197
217
140
196
251
205
214
191
165
210
166
165
272
191
206
160
166
230
202
237
205
240
137
152
174
200
216
187
239
189
234
195
176
258
150
198
227
189
151
200
205
148
193
195
205
215
185
145
201
163
248
197
229
191
214
226
158
234
178
227
219
168
222
203
237
166
194
214
154
265
161
243
245
123
153
176
121
222
188
216
172
210
197
205
209
219
183
189
187
141
206
227
183
220
158
242
241
200
139
211
193
157
198
209
211
239
192
213
178
163
127
138
211
205
231
188
151
218
219
139
214
209
176
160
244
160
170
198
167
184
208
240
208
261
183
183
229
156
152
175
184
230
188
221
172
245
190
232
184
206
230
172
234
158
245
173
202
163
191
202
217
201
167
225
206
182
178
207
195
187
205
196
205
210
172
220
178
172
176
215
215
245
244
277
261
197
241
212
186
233
181
202
237
235
242
259
169
150
232
188
87
184
216
176
232
144
202
158
177
189
224
206
262
177
202
214
171
257
194
207
229
216
246
185
198
244
172
158
253
200
233
183
239
178
137
166
149
202
215
205
270
239
210
171
208
215
215
156
164
213
255
183
162
256
198
171
239
162
246
224
154
163
233
255
166
266
171
184
182
155
276
220
167
153
233
118
188
236
208
160
233
183
187
220
239
175
162
200
241
189
188
179
207
213
157
225
210
248
230
175
243
224
188
259
271
274
232
229
134
163
195
232
157
147
185
213
188
154
209
168
244
165
216
253
164
166
204
231
184
176
189
125
191
208
193
244
212
275
171
149
194
131
200
165
165
163
172
176
216
169
172
232
219
165
201
162
210
240
195
259
218
202
206
193
246
167
208
172
185
198
168
220
232
192
227
142
234
252
210
162
227
190
213
247
200
176
139
244
161
194
146
229
235
207
197
191
188
167
223
206
238
137
221
189
221
233
231
229
197
151
171
229
240
192
256
192
205
266
105
221
149
175
219
217
209
212
202
222
255
218
215
132
187
237
222
230
208
175
163
218
183
154
182
183
204
206
199
211
145
175
203
225
174
245
205
253
282
219
187
228
208
273
214
223
228
209
180
171
237
166
234
240
167
192
239
169
204
249
228
237
198
209
169
162
107
224
209
188
238
253
155
238
219
154
211
192
207
162
259
194
187
252
200
200
205
167
184
149
193
229
234
218
274
195
237
223
200
217
173
216
204
228
237
188
144
199
220
185
190
219
227
214
227
168
244
221
205
159
213
205
231
177
173
195
266
196
219
221
198
176
164
141
201
189
241
192
235
232
210
217
212
191
166
187
226
163
178
228
177
200
218
208
178
180
166
191
261
232
192
171
119
235
223
236
181
175
121
209
197
213
247
205
170
233
220
186
98
179
194
180
129
242
253
198
210
173
180
213
185
206
187
167
185
201
176
215
177
213
217
245
175
201
192
212
180
204
182
182
176
224
173
205
188
271
251
171
199
225
215
213
214
186
235
228
255
155
225
246
169
214
178
217
199
165
219
220
246
186
203
150
226
232
239
197
207
171
207
239
197
263
226
186
295
138
205
236
226
171
198
183
161
220
223
217
235
198
211
215
213
264
214
255
220
226
238
222
152
224
220
240
129
183
201
211
162
216
196
203
138
193
213
186
181
197
225
233
208
167
214
118
185
215
175
193
230
175
178
274
172
141
179
156
211
134
164
206
198
198
234
192
233
175
168
222
202
190
220
209
195
229
153
223
170
192
211
167
210
239
135
235
195
162
236
287
166
176
220
254
234
238
199
229
212
161
201
218
215
201
135
241
149
212
153
200
204
161
114
211
213
215
215
175
153
165
235
190
182
257
224
182
169
225
154
124
179
198
208
200
201
162
225
202
194
192
196
199
162
209
205
221
280
112
162
166
182
189
165
260
199
155
137
194
207
219
180
199
167
221
165
228
201
221
244
243
209
219
229
166
193
125
207
168
120
187
225
206
152
185
165
252
152
215
181
212
243
263
243
200
197
145
179
192
196
176
180
216
180
243
235
194
255
212
198
207
158
175
144
214
220
164
212
126
214
193
196
174
198
142
259
168
201
203
236
191
239
171
136
176
206
222
217
113
214
161
183
219
233
176
193
227
135
182
228
210
157
242
143
268
230
226
211
247
156
207
195
163
155
174
166
228
250
242
246
237
220
256
214
148
242
259
158
235
212
220
226
122
245
195
164
158
157
197
182
171
172
189
159
172
181
172
202
208
211
238
199
160
188
205
226
189
214
211
179
202
208
235
259
225
251
214
202
179
224
222
186
205
171
227
155
166
216
236
186
198
250
204
186
199
199
236
207
156
238
148
226
207
231
231
214
175
199
214
180
155
203
268
181
225
209
192
178
184
168
161
225
215
211
242
274
197
136
211
136
222
183
204
195
218
190
207
174
241
178
160
254
164
245
171
195
169
144
191
224
237
224
181
166
143
167
147
165
182
165
285
166
234
180
200
183
223
158
161
262
227
211
242
186
146
242
200
216
216
244
213
168
204
212
243
187
180
244
257
212
210
220
192
234
185
128
138
121
195
240
191
211
242
231
182
207
148
212
148
246
104
228
223
188
212
211
216
153
168
206
201
145
207
161
185
195
244
207
206
230
206
209
157
187
182
198
152
179
256
238
214
192
135
195
177
252
202
149
149
182
179
223
229
169
180
163
185
226
229
286
127
172
238
207
189
186
164
221
227
186
186
226
188
222
197
175
184
143
176
246
179
222
204
180
214
172
232
216
205
237
206
234
240
149
214
200
187
181
222
158
207
157
182
224
162
222
167
189
159
205
235
234
206
224
218
204
231
177
186
257
223
157
182
226
197
215
150
235
192
225
220
178
198
207
235
232
176
227
192
227
200
193
162
188
257
231
240
236
169
137
192
237
122
190
203
199
223
208
214
231
213
220
226
214
137
195
182
255
201
253
218
218
198
266
270
254
167
225
230
172
249
174
201
207
206
202
155
140
125
179
222
214
258
248
234
186
274
251
214
213
229
187
164
192
215
190
211
214
148
226
138
209
195
235
234
215
187
247
241
233
227
242
152
180
175
224
218
129
188
155
216
182
210
199
166
209
204
286
207
162
217
182
169
192
266
262
223
223
178
211
191
193
150
193
236
205
192
194
86
177
259
201
201
171
205
283
131
216
217
238
223
154
194
252
275
212
139
193
200
139
185
186
179
227
195
132
143
272
196
174
226
211
161
195
216
162
169
183
214
209
213
208
244
195
260
201
190
171
264
212
244
206
183
218
200
189
197
239
187
148
219
248
201
176
230
149
186
146
229
216
202
194
106
182
241
150
169
239
233
195
209
215
178
262
230
196
287
143
229
246
200
233
149
181
241
298
206
149
215
197
194
239
150
220
202
197
211
210
230
168
267
210
221
257
154
211
174
236
153
159
189
251
202
149
183
220
213
171
206
177
242
184
194
219
211
259
190
183
152
181
233
267
189
133
202
167
243
198
200
194
256
262
197
243
264
221
212
177
222
219
209
219
272
192
208
255
203
234
244
182
230
162
186
145
244
205
222
229
146
222
235
198
240
236
185
187
175
173
179
214
229
141
186
186
274
278
209
159
242
178
185
184
184
201
173
147
250
232
216
194
195
213
173
209
232
190
192
136
161
214
189
201
240
212
192
196
146
220
204
230
197
219
154
224
205
237
230
202
224
198
193
142
151
194
150
213
253
201
166
162
181
283
186
225
159
205
167
201
192
156
178
223
191
143
193
119
236
182
141
209
247
223
234
196
206
264
131
204
153
272
163
203
201
174
138
216
167
185
162
223
139
159
180
205
214
170
277
160
221
226
198
172
181
208
202
176
140
246
255
231
234
141
169
169
183
203
172
237
156
186
171
148
221
204
147
204
211
248
240
248
185
180
253
201
221
191
184
152
216
201
179
234
172
253
215
204
184
226
211
210
177
183
229
235
183
190
148
108
201
182
227
215
172
182
232
193
256
144
230
173
189
181
221
168
211
207
230
256
199
224
239
180
232
205
232
250
242
205
274
195
249
155
250
241
146
244
158
165
242
145
178
175
219
179
176
220
228
193
195
226
220
149
207
220
235
207
150
171
198
198
165
127
186
210
145
193
216
219
219
179
140
149
194
205
163
168
197
224
257
197
235
221
268
191
225
223
220
262
235
205
208
184
241
190
186
130
194
230
231
201
147
168
204
216
236
279
231
185
231
146
185
144
252
153
202
225
169
181
140
201
250
230
156
151
241
229
251
150
162
276
145
203
261
178
220
233
126
219
228
178
234
157
225
181
199
126
152
221
226
240
218
196
204
107
263
212
185
126
187
248
205
190
213
192
232
217
193
236
196
208
202
182
164
122
139
180
105
218
140
222
146
175
213
221
231
218
217
225
198
247
193
252
207
188
149
218
271
145
202
149
162
199
192
183
188
198
202
211
176
255
160
284
208
203
178
222
218
239
202
197
267
203
162
204
181
238
278
191
226
191
269
126
232
217
207
185
210
187
158
158
211
249
205
211
216
183
265
220
254
157
231
229
185
212
131
198
164
188
232
176
196
222
215
161
217
228
209
155
208
216
178
217
193
153
248
237
200
198
239
185
238
168
126
253
243
162
278
243
158
166
219
193
251
155
198
210
149
209
213
251
208
163
185
220
181
172
201
210
176
169
225
257
206
234
216
172
186
240
223
171
212
234
252
224
198
194
158
238
276
171
159
230
217
195
163
192
157
199
209
215
270
229
201
213
200
214
156
207
191
209
269
212
175
192
150
166
220
227
238
219
246
189
169
210
230
185
270
222
170
221
223
233
148
184
144
195
202
120
199
218
252
221
148
187
156
221
212
153
173
152
212
159
158
221
200
185
259
182
267
223
192
229
137
194
248
253
177
226
265
194
170
166
222
186
212
249
222
220
200
165
218
193
204
237
253
240
197
191
243
169
242
191
168
233
239
188
242
230
226
280
216
190
234
134
180
185
187
230
232
221
245
224
133
209
212
223
163
283
236
194
224
218
223
183
167
185
189
232
223
197
179
219
178
146
230
169
215
178
133
175
277
176
221
219
163
235
188
193
186
195
203
173
186
185
202
131
236
200
269
174
219
208
187
223
156
208
220
169
218
156
140
224
221
214
147
204
179
175
194
191
171
234
223
141
233
176
143
132
206
266
179
194
195
247
177
204
207
141
206
221
160
198
178
179
170
189
181
190
246
150
229
260
231
264
208
188
170
193
218
137
188
241
152
176
225
239
189
130
171
190
176
214
149
145
182
179
215
210
189
207
272
199
200
197
186
226
217
209
207
179
152
217
211
93
230
206
159
226
119
230
185
215
184
183
218
214
202
231
177
225
195
238
183
261
223
213
178
205
198
174
216
132
186
289
172
184
164
280
223
181
186
146
208
161
260
186
247
203
235
198
183
176
192
215
254
208
200
217
232
139
130
225
147
208
212
158
247
230
161
258
247
231
242
265
217
217
211
153
192
208
185
193
163
209
189
211
185
175
194
232
208
220
214
186
192
189
216
174
136
254
178
110
202
167
192
228
211
248
184
198
254
163
253
172
230
182
214
194
212
221
209
188
190
265
224
195
227
185
231
180
215
183
224
140
123
233
194
218
268
181
187
198
151
124
172
193
152
206
205
126
186
229
221
218
166
193
146
184
191
202
195
194
182
239
226
155
186
177
187
265
197
200
179
134
203
196
175
224
178
200
199
188
174
210
226
191
249
204
236
248
263
172
223
196
176
194
230
225
246
208
203
214
196
220
213
183
218
201
197
211
233
268
216
229
182
223
223
241
259
206
162
204
229
147
165
204
205
214
152
167
239
193
226
192
125
214
140
214
193
182
202
211
232
157
198
290
230
279
169
245
125
215
182
234
201
204
201
189
229
260
189
265
214
268
195
248
149
247
254
209
254
121
210
228
202
177
236
237
215
220
200
169
229
244
204
191
267
165
178
212
224
226
218
239
194
194
261
171
200
228
197
206
254
190
253
147
262
243
198
231
214
199
242
185
209
200
191
220
161
201
175
153
192
193
232
162
234
207
241
201
223
174
161
212
211
216
259
174
143
194
199
184
203
198
141
189
209
220
176
215
194
232
240
169
164
162
194
192
207
226
260
186
198
216
203
198
224
184
217
211
199
220
173
232
208
179
231
158
199
187
156
188
232
247
216
222
206
227
213
155
190
224
213
225
216
194
211
186
213
221
153
168
178
256
237
216
188
191
201
236
215
220
232
209
169
179
226
177
233
134
190
252
223
180
183
252
253
226
189
214
215
194
134
210
205
205
229
170
187
162
181
242
223
284
188
177
184
180
153
240
178
148
184
159
176
174
241
192
197
133
236
161
251
165
244
225
233
212
174
152
201
229
256
197
162
219
242
248
168
219
192
215
133
218
143
177
205
191
187
293
270
220
202
196
139
157
179
189
214
157
224
158
180
200
233
210
204
189
209
152
197
281
227
275
148
208
159
204
273
202
175
183
281
147
272
123
200
260
239
259
144
238
232
221
239
201
224
220
253
190
206
232
209
222
195
228
123
170
263
191
188
198
269
190
189
187
174
159
186
197
124
204
232
109
200
242
220
191
163
251
156
213
246
191
126
235
206
206
226
188
193
197
128
143
216
217
193
209
171
179
137
192
213
151
244
163
233
249
201
219
244
204
244
197
238
245
186
224
243
165
234
216
225
197
199
179
127
237
203
205
229
173
241
273
196
231
280
251
216
185
184
261
228
233
201
223
246
223
215
205
181
184
193
252
213
188
233
232
223
219
218
178
252
135
190
152
152
181
220
199
139
194
176
238
123
298
232
133
218
223
155
287
204
144
216
206
163
248
225
203
201
210
173
249
228
237
229
225
232
254
179
202
187
219
224
133
244
172
252
267
208
221
187
215
226
183
185
165
232
200
186
198
204
172
177
236
170
200
236
264
186
196
260
166
155
144
203
210
243
193
155
148
151
129
205
203
239
186
197
203
255
273
210
184
221
201
262
256
215
224
195
260
236
188
166
159
221
139
247
155
162
165
253
206
100
224
212
230
150
245
176
145
177
127
167
190
228
178
225
227
217
178
252
164
195
228
147
199
204
187
212
225
192
187
206
174
200
207
194
238
196
200
207
273
200
124
201
210
259
188
188
255
202
212
258
222
191
209
194
247
161
225
208
174
249
223
209
247
183
211
179
219
255
183
258
183
247
201
206
168
228
254
255
196
222
205
164
153
207
160
231
183
243
253
185
228
210
231
184
166
166
253
187
238
182
252
202
160
229
205
207
186
185
171
271
180
190
173
188
168
162
243
166
190
231
197
216
175
213
148
238
199
131
201
238
197
270
233
192
208
231
219
233
221
214
196
249
175
154
203
199
208
234
199
196
205
190
246
169
213
203
244
193
241
215
163
190
156
206
191
167
238
159
166
196
200
149
207
164
193
211
203
161
252
133
178
258
181
223
230
250
246
189
168
161
185
200
192
220
177
246
150
146
207
173
172
236
198
252
214
247
172
209
169
210
257
214
231
207
233
182
214
152
143
130
194
257
207
198
198
175
239
190
228
211
179
197
220
189
247
189
184
204
180
225
208
191
245
243
213
168
273
174
181
259
234
237
123
233
143
230
179
161
236
237
155
221
208
260
208
118
215
162
215
144
187
190
217
223
233
204
179
148
193
193
188
187
164
165
226
178
191
202
163
166
197
190
148
211
141
187
189
240
229
194
200
196
185
148
171
199
216
205
221
221
185
257
242
226
179
239
253
168
190
238
219
187
198
150
184
222
252
196
257
190
111
209
207
117
158
256
224
198
225
196
187
209
183
240
189
161
96
194
176
170
204
225
180
216
252
145
239
205
229
171
175
161
168
192
216
210
187
135
243
222
224
185
180
199
165
228
214
225
221
188
240
197
180
183
156
202
201
222
204
231
224
246
241
227
210
134
227
194
175
216
194
212
192
192
173
235
196
226
235
203
175
174
181
242
227
251
204
253
202
210
202
208
212
131
200
221
177
281
196
214
215
244
189
183
128
137
178
210
181
196
222
152
233
205
200
190
197
198
172
200
190
236
240
198
241
184
250
187
172
192
207
218
243
188
160
208
185
134
186
171
205
201
268
274
116
189
177
233
140
188
232
234
152
181
202
95
225
220
216
191
222
194
218
166
234
186
207
180
222
204
222
207
173
199
179
242
208
215
208
216
255
186
122
210
173
228
162
191
161
186
234
200
183
209
192
170
237
167
252
252
196
202
149
258
193
190
204
197
243
257
200
209
185
223
203
239
136
246
241
213
217
212
181
208
191
208
203
174
159
170
188
173
215
244
236
225
236
192
211
196
211
191
134
194
210
232
290
166
240
271
235
175
173
254
218
192
179
185
175
172
254
187
168
243
178
167
167
205
195
143
173
213
143
195
190
189
213
218
219
222
157
224
270
202
201
186
204
205
218
193
167
208
184
162
182
220
198
179
203
162
187
239
232
225
237
186
194
209
193
218
159
215
205
220
198
235
164
192
176
187
208
218
146
220
142
208
214
181
236
185
162
255
209
199
172
204
247
198
170
270
177
183
224
201
105
239
216
212
191
172
169
224
150
230
176
232
191
246
205
249
211
190
241
172
174
211
197
210
209
153
274
184
181
164
214
191
118
220
238
191
247
222
180
182
211
218
223
228
156
199
222
197
214
212
224
188
199
129
142
253
178
159
165
223
148
243
206
203
130
144
210
194
187
205
226
212
184
214
136
228
164
188
203
191
216
211
273
203
201
165
204
146
199
262
178
237
209
258
141
204
211
118
200
200
198
228
144
244
200
178
230
131
155
189
222
188
140
168
220
198
208
197
139
232
163
207
173
209
236
236
221
183
207
213
252
175
175
204
245
153
198
157
218
225
213
172
202
195
172
203
191
181
213
172
215
208
190
221
214
204
214
142
134
211
191
224
195
211
255
253
178
289
219
172
174
271
200
183
165
215
168
199
233
205
174
186
167
215
164
189
215
143
191
200
170
188
165
175
170
222
230
195
120
240
166
127
218
217
197
231
172
194
211
192
164
149
198
204
142
164
228
163
157
198
292
243
221
193
227
134
199
263
186
202
181
205
151
225
180
180
222
232
191
256
234
212
227
174
186
164
228
215
249
212
242
238
198
228
192
166
278
192
213
193
153
244
161
216
254
203
144
245
110
140
211
164
248
194
225
183
193
248
191
217
164
210
195
139
125
172
215
183
155
170
218
233
144
162
181
197
174
194
179
272
258
138
197
222
193
185
138
219
170
232
194
178
186
188
235
201
192
176
185
86
210
204
235
178
249
235
152
170
269
169
205
225
193
228
213
193
205
155
144
196
195
192
210
163
213
224
225
218
198
251
210
182
189
198
164
253
227
207
229
198
216
155
204
250
200
197
176
173
179
247
203
225
122
172
171
222
244
213
170
177
157
226
152
199
236
280
191
229
126
217
203
179
174
180
248
248
250
200
219
209
164
168
197
229
228
236
194
193
234
176
148
202
157
174
195
221
199
183
226
222
225
247
185
193
166
163
179
260
181
246
233
175
187
160
206
173
216
199
175
194
193
246
236
226
172
201
245
176
189
151
236
203
187
196
269
221
239
179
240
183
266
206
144
209
203
194
191
169
222
211
211
219
197
217
220
199
209
206
204
150
190
181
207
171
197
233
213
260
136
250
196
213
146
173
218
146
210
177
209
221
263
197
180
179
225
162
208
214
150
199
205
229
255
180
153
171
179
192
217
239
232
225
207
218
220
234
234
214
264
204
218
226
172
211
220
257
219
191
210
204
164
109
244
235
180
184
212
216
192
151
205
155
243
203
196
215
162
161
245
161
169
166
219
220
182
226
236
204
242
234
200
226
194
193
265
196
213
172
179
229
233
216
223
237
184
146
151
196
180
198
237
190
222
243
234
198
139
190
208
236
215
150
132
176
259
236
129
189
211
200
186
231
219
158
170
163
201
232
235
215
219
198
184
208
212
132
203
270
214
255
223
208
184
183
196
202
153
198
240
241
241
269
195
163
203
202
160
234
219
144
248
220
177
216
217
214
208
173
211
258
150
235
188
176
201
233
172
175
206
236
209
153
256
215
204
219
212
151
189
224
172
187
274
187
192
259
239
203
176
159
181
160
202
170
135
225
190
215
151
176
202
192
214
245
162
127
127
58
92
75
140
115
77
37
67
126
37
110
79
56
67
146
105
93
138
146
86
84
112
109
105
144
91
126
67
146
117
58
55
89
122
137
171
67
122
92
119
134
109
69
127
110
86
162
105
111
132
72
105
55
127
140
92
149
123
102
163
86
110
104
92
152
152
104
109
158
126
37
124
122
152
67
92
128
122
79
92
169
92
104
110
37
134
75
128
86
122
96
37
77
158
136
122
110
92
81
124
122
55
122
123
93
126
127
110
92
93
120
140
110
171
120
55
83
111
139
110
126
139
178
127
95
122
131
37
79
144
58
92
67
125
86
79
69
134
104
122
111
86
56
92
93
145
74
56
91
74
119
123
104
131
122
120
104
110
139
144
112
110
132
122
140
122
178
122
92
99
55
119
92
37
79
100
86
158
55
178
56
119
104
164
109
69
169
134
67
58
58
109
169
83
122
92
144
178
110
104
55
152
110
104
55
92
93
144
131
86
127
128
134
104
105
110
110
111
109
138
146
102
103
96
140
92
140
122
75
37
158
93
178
126
109
92
104
98
67
146
56
137
112
105
105
127
99
101
92
56
110
135
93
122
124
69
162
105
124
56
94
114
122
146
92
140
136
130
179
122
110
67
92
110
69
159
130
122
132
92
67
139
168
148
134
130
123
105
142
67
139
144
105
122
56
124
91
135
140
37
122
169
69
134
110
151
101
55
110
167
122
140
91
122
124
142
83
144
135
97
79
117
127
78
79
110
99
178
122
169
109
55
139
140
110
67
141
67
139
103
123
77
139
120
163
92
139
93
144
160
64
127
152
92
171
144
99
58
140
134
92
105
141
56
55
105
160
144
56
134
112
120
86
37
138
55
110
180
55
68
105
67
37
163
74
79
91
115
128
101
130
178
169
134
110
126
104
168
168
110
99
128
73
123
110
58
105
148
105
128
199
145
102
92
119
110
132
92
110
180
126
75
152
67
92
117
162
98
92
105
122
74
139
126
99
98
92
122
78
105
152
178
169
178
127
178
93
113
37
55
67
123
126
105
55
146
97
122
110
55
105
104
138
104
111
119
140
139
114
150
67
99
122
69
105
55
178
169
180
91
104
69
92
92
122
55
69
55
92
130
55
152
55
138
128
56
105
92
92
92
99
169
126
69
126
55
126
109
122
77
119
103
181
93
109
169
111
95
126
105
55
118
110
37
105
93
112
140
140
91
109
79
67
148
99
92
130
92
92
55
134
55
103
138
83
93
169
67
124
138
86
110
103
92
58
91
107
93
138
132
169
110
115
144
92
55
120
97
139
139
119
55
164
122
171
158
69
158
56
128
109
131
126
138
86
151
58
151
58
126
113
101
131
104
79
56
109
92
114
108
138
58
67
110
56
91
91
109
56
115
104
126
56
91
92
130
138
119
178
144
67
79
92
67
138
92
120
160
136
138
105
122
95
148
55
163
111
69
126
110
127
110
105
122
67
149
58
67
58
111
106
127
89
140
72
67
74
92
77
86
122
110
93
37
134
123
127
132
171
110
103
119
110
105
69
123
121
92
156
37
55
126
134
122
79
110
89
124
138
122
91
119
122
146
127
58
87
103
109
180
37
74
68
56
99
146
83
104
107
79
138
92
78
178
55
146
92
56
140
146
106
96
77
171
139
55
75
123
119
128
37
68
64
119
55
92
58
84
104
55
67
68
145
126
127
56
181
122
126
119
110
105
165
138
158
67
126
68
140
110
55
101
79
55
69
58
119
126
83
134
146
84
91
92
144
140
126
124
104
178
56
158
110
152
124
109
152
167
86
128
74
67
86
122
91
55
119
128
67
91
56
180
144
119
101
106
139
122
103
98
126
141
115
122
110
134
103
105
93
92
100
126
169
129
127
146
89
146
91
79
122
55
100
139
92
92
67
58
140
55
69
55
139
93
163
138
93
107
95
122
139
92
178
37
142
92
139
37
75
92
124
56
141
178
55
107
55
55
126
84
56
122
139
68
139
87
126
136
108
75
158
67
139
124
55
132
74
58
96
110
105
97
126
104
55
99
55
134
55
55
139
122
128
37
91
56
74
138
126
140
110
93
86
104
102
73
109
162
144
93
144
136
105
122
92
37
139
92
131
129
55
146
138
101
135
96
128
74
126
127
130
160
93
110
92
37
77
92
169
96
95
76
105
149
126
110
99
132
55
104
146
109
95
88
104
123
55
122
105
56
138
86
92
55
55
145
110
105
92
55
138
93
93
140
86
118
126
55
146
138
74
110
122
144
110
152
124
84
86
105
84
138
37
139
92
55
152
95
124
112
81
110
92
56
67
105
134
138
100
105
138
95
92
144
67
67
92
110
105
56
156
93
122
137
104
83
106
37
92
37
93
89
56
105
104
169
72
79
37
110
78
124
125
93
105
105
142
55
92
110
92
74
75
135
97
122
126
104
126
111
75
123
102
83
136
138
92
98
110
119
140
69
135
162
67
104
122
136
93
67
67
86
93
139
178
74
169
110
117
119
56
140
168
98
107
107
122
128
178
122
93
69
67
128
127
144
108
74
92
69
138
55
69
55
122
93
146
123
67
71
114
56
92
81
171
58
126
178
146
128
86
92
79
67
91
112
75
126
122
152
75
127
92
171
91
162
178
56
55
104
119
108
127
110
110
109
111
103
67
146
107
146
104
37
129
110
91
56
96
114
88
55
123
97
152
119
92
37
105
171
100
69
55
146
92
138
123
99
109
98
127
92
110
92
74
55
75
126
77
67
91
126
122
148
75
126
126
169
104
105
122
110
74
169
103
178
152
110
127
139
103
86
112
132
163
92
74
98
118
126
138
105
99
131
122
126
127
110
134
178
132
109
136
134
110
86
127
55
188
178
138
122
110
37
92
116
138
74
56
178
92
169
55
93
99
127
178
91
113
128
85
92
124
67
138
136
132
57
152
171
113
79
55
122
171
109
178
69
55
126
179
124
55
74
127
126
110
56
136
110
122
103
178
92
128
97
67
145
69
67
55
163
128
112
152
122
99
114
158
75
105
122
74
128
110
94
146
75
122
124
122
171
123
110
83
122
100
69
131
146
58
97
111
69
119
124
130
107
107
37
106
138
37
109
103
92
147
105
138
171
178
124
56
139
139
69
37
138
169
37
138
106
104
152
178
122
110
103
99
110
75
111
106
143
130
58
146
37
126
127
139
146
129
127
81
58
58
74
120
128
127
104
92
123
58
87
146
55
110
100
83
126
138
104
79
99
79
91
122
110
55
55
67
93
67
126
114
69
84
37
178
98
99
58
139
105
95
142
56
119
178
122
122
67
106
79
104
110
105
137
77
127
146
93
111
105
178
55
105
110
122
91
98
93
146
146
134
67
111
142
55
37
105
138
122
139
119
168
97
105
107
92
169
127
84
104
67
118
101
126
69
110
122
58
103
178
78
95
138
81
105
122
104
67
101
107
118
139
122
122
92
55
91
92
146
122
93
69
69
137
138
122
37
105
107
126
140
119
124
178
128
58
122
126
68
178
93
93
56
127
89
55
58
92
130
93
128
128
58
146
138
99
122
139
120
144
86
169
132
79
104
78
140
91
74
127
93
37
107
67
67
69
97
142
105
74
148
148
56
101
126
110
152
144
110
86
135
92
122
104
92
110
132
67
99
79
69
58
109
129
56
77
122
138
92
128
92
180
142
105
105
128
93
93
92
97
92
114
58
98
104
97
138
152
144
55
107
110
86
68
105
97
100
67
105
55
138
92
55
55
92
91
111
55
98
94
105
105
84
140
181
127
118
152
110
92
75
67
58
144
92
139
126
132
56
131
56
92
110
116
126
126
81
55
138
122
122
95
128
138
148
93
171
134
93
169
79
55
139
55
89
65
119
104
95
123
55
92
55
169
69
72
126
128
138
138
124
86
108
122
123
134
92
55
83
56
56
92
92
178
55
130
92
109
89
109
99
123
68
83
146
168
136
58
110
69
122
93
138
169
99
137
67
189
100
139
105
144
127
146
97
105
167
110
99
111
56
87
109
102
122
69
131
110
92
115
89
120
123
108
105
105
104
37
104
55
93
79
55
92
37
69
127
140
72
178
158
136
86
139
145
83
164
123
104
99
171
83
86
128
126
144
105
130
37
128
169
92
148
55
144
144
91
100
136
55
188
119
105
117
178
138
99
128
93
93
58
122
105
138
55
135
117
138
105
105
131
104
68
110
93
104
137
126
69
102
110
127
126
110
97
152
158
171
105
107
169
139
148
93
103
55
110
110
55
92
98
104
137
86
67
99
122
109
119
122
110
144
105
55
106
68
141
111
68
145
119
125
55
92
131
83
55
105
119
149
140
74
178
58
75
55
58
92
122
178
138
138
106
91
169
92
37
92
75
127
139
140
55
86
75
55
97
110
68
104
134
122
124
122
149
111
168
118
93
74
91
104
99
163
138
92
105
92
165
127
104
77
145
67
103
91
74
107
99
93
125
91
152
109
145
75
122
149
124
122
105
69
76
152
104
67
92
105
123
69
157
91
158
86
135
110
79
88
93
122
138
126
92
126
128
146
55
105
178
152
79
140
84
55
178
122
105
117
127
92
56
58
74
58
152
105
105
58
105
102
111
105
69
92
122
83
92
67
120
131
105
55
74
55
108
138
92
123
152
103
152
117
132
91
123
145
144
138
93
67
55
93
132
167
126
110
139
98
79
131
126
86
55
105
138
105
147
131
37
178
126
127
111
99
67
124
136
178
123
73
148
127
122
56
123
103
126
106
100
138
128
110
69
55
67
138
84
105
79
77
92
148
92
102
110
105
86
86
55
79
128
61
111
55
126
92
91
168
127
55
119
178
104
178
92
55
37
108
171
92
122
122
144
123
124
67
79
152
104
58
110
127
80
169
144
55
104
138
97
110
107
105
56
37
68
139
92
164
92
180
37
105
55
127
56
162
97
93
79
77
56
109
126
58
92
56
138
146
103
144
127
104
83
103
99
103
77
83
87
126
110
139
127
91
138
91
128
140
138
55
129
111
55
104
104
103
145
111
123
180
146
79
110
122
110
111
169
105
139
79
68
119
134
134
178
111
74
110
92
138
67
123
67
119
178
160
111
92
56
104
107
92
75
132
79
126
41
67
120
95
152
56
169
163
105
87
110
101
128
128
87
169
58
80
92
178
152
126
146
127
92
122
67
169
92
110
122
77
105
111
75
171
144
138
167
67
55
67
37
105
68
138
110
123
114
86
127
122
105
67
105
135
93
110
127
86
67
123
93
67
37
126
132
100
110
122
105
104
95
134
69
37
123
152
92
69
55
104
89
92
122
123
144
37
110
101
107
127
110
103
103
110
92
74
104
134
75
67
91
93
105
126
122
104
93
56
92
93
122
162
92
79
110
58
104
138
103
148
111
124
109
56
119
105
122
56
138
69
136
58
99
105
122
95
37
117
37
127
99
77
58
127
37
56
139
110
119
92
83
104
119
101
75
79
92
137
128
132
180
110
79
138
94
75
134
124
55
92
105
37
67
124
139
37
138
111
126
95
68
136
122
132
105
104
144
178
169
98
138
126
162
122
56
146
93
69
109
122
122
84
171
101
149
104
158
75
105
80
137
75
140
79
101
37
140
108
55
126
126
67
83
136
56
171
146
181
92
86
129
162
99
75
86
115
163
104
117
93
77
92
151
141
115
83
95
99
131
122
37
91
109
75
93
146
146
110
122
126
171
105
119
139
138
130
37
92
178
131
37
37
61
162
93
131
136
55
100
105
139
108
180
68
92
112
100
105
104
124
55
106
37
99
104
86
126
55
163
104
122
67
113
37
169
37
122
139
122
37
92
99
168
178
67
109
138
105
56
126
107
148
74
56
114
110
58
167
105
67
126
123
104
107
55
110
139
92
138
140
126
122
141
127
103
95
91
109
135
178
107
97
122
106
139
144
72
146
58
122
138
105
97
137
164
122
138
79
144
125
93
99
110
100
144
178
129
58
122
169
104
138
91
92
75
56
139
112
131
140
119
92
91
127
110
93
132
99
126
109
92
93
92
110
68
92
74
123
124
86
105
79
113
95
119
161
129
92
92
136
131
110
127
92
104
152
138
105
117
92
146
138
86
105
122
75
122
92
128
178
109
182
37
110
37
109
110
122
92
139
128
69
104
122
146
56
99
67
169
105
97
126
160
105
58
169
56
109
115
142
93
105
123
128
80
126
129
105
92
113
136
104
178
56
105
74
126
146
146
178
138
104
110
152
138
126
101
55
102
171
92
122
69
111
134
76
138
163
144
138
67
69
126
146
67
58
131
105
119
114
104
105
152
55
124
83
69
95
92
79
92
105
79
84
122
114
37
105
122
119
55
171
180
135
92
86
98
127
152
110
37
126
67
86
58
105
93
126
162
93
81
118
111
178
128
93
55
169
83
93
98
91
107
122
67
91
122
110
134
67
104
142
144
55
123
107
122
126
148
92
67
106
125
101
138
79
128
92
110
124
169
92
99
56
56
158
136
144
110
58
92
127
92
67
55
67
56
99
120
93
103
58
99
99
122
152
99
110
69
138
132
140
92
158
130
117
77
67
105
132
56
55
104
110
105
56
126
120
79
56
55
178
138
178
130
58
92
69
92
120
100
128
130
67
104
169
94
146
55
104
140
91
86
123
89
93
105
123
100
84
127
77
138
92
93
114
37
131
178
58
56
126
56
110
37
152
169
180
124
111
178
152
126
69
118
126
178
105
56
138
93
77
109
126
105
99
117
91
95
141
138
77
128
122
95
92
138
138
83
56
138
119
75
152
134
58
132
103
107
119
132
91
109
110
126
91
69
169
105
74
56
91
126
109
111
139
144
68
92
138
168
37
138
123
37
98
103
178
137
114
152
101
58
92
92
102
134
124
105
110
144
126
92
168
92
56
114
105
160
69
55
140
122
105
139
123
122
132
58
92
69
138
109
103
79
105
67
72
98
152
55
156
122
79
99
144
58
37
105
108
110
110
92
56
58
77
55
92
134
68
69
99
77
92
108
126
92
178
91
107
92
124
162
110
138
109
55
92
105
102
105
81
92
122
105
128
130
67
148
105
99
86
92
109
180
78
144
111
79
79
67
58
68
113
91
105
99
138
41
109
128
92
74
98
135
105
104
97
103
92
67
114
97
75
55
67
134
97
74
132
69
105
152
100
55
103
148
137
79
105
122
99
92
138
37
109
74
37
138
119
91
84
124
134
55
83
91
67
58
93
144
68
110
134
169
78
110
122
146
92
67
107
101
152
105
92
138
92
68
92
140
171
67
160
92
169
93
56
55
79
93
67
171
80
105
91
138
92
126
118
138
79
67
144
126
137
99
83
126
119
116
77
89
104
140
123
67
56
110
67
126
144
146
112
99
105
105
144
106
58
112
93
142
105
92
123
92
119
146
56
123
86
110
80
96
138
111
122
37
158
138
171
111
128
138
100
55
77
93
74
84
105
144
111
122
134
68
180
55
109
77
146
92
114
123
69
97
122
148
103
92
110
144
99
107
79
75
105
131
126
67
145
138
127
126
92
126
136
37
55
97
127
148
58
127
117
127
74
148
122
128
56
58
114
92
164
122
111
105
93
142
119
199
110
83
114
97
104
101
110
56
55
178
106
86
122
93
148
126
80
105
92
55
97
111
105
67
164
92
67
58
55
77
152
104
146
138
145
137
122
92
127
104
56
138
79
92
37
178
99
86
55
122
109
171
131
122
61
67
111
178
109
138
74
110
92
69
55
67
104
144
146
55
122
67
123
110
112
180
107
110
83
67
105
110
104
135
138
146
37
110
165
55
122
95
126
76
55
74
79
109
75
169
104
74
56
111
112
93
165
144
122
103
93
146
178
109
58
104
129
142
92
134
55
138
93
118
37
119
139
86
156
55
105
93
37
110
151
55
178
104
122
104
123
93
92
139
104
92
84
79
144
138
105
56
98
178
86
92
104
137
93
122
123
119
146
98
110
97
147
169
79
55
110
37
56
105
152
92
92
77
110
56
138
127
131
146
131
152
77
55
110
87
104
132
89
144
122
139
146
146
77
99
93
164
138
178
67
123
110
122
74
112
105
92
110
77
122
110
123
111
93
37
110
77
103
138
109
86
86
101
105
163
67
91
93
117
68
69
68
178
180
128
55
110
94
72
55
109
91
139
103
56
86
67
138
87
55
67
92
74
88
169
126
69
122
96
91
69
58
55
109
105
84
147
146
126
92
146
115
103
137
67
162
67
122
146
122
55
109
56
92
110
126
111
92
122
98
92
144
136
95
83
178
120
69
122
132
110
152
92
95
178
93
92
110
69
134
178
86
138
97
138
114
55
128
111
97
100
163
138
37
139
92
58
139
88
105
101
93
136
83
55
178
92
99
149
138
144
142
56
101
37
104
55
100
110
128
110
120
122
178
104
67
93
178
105
99
142
163
109
110
111
130
104
58
86
58
107
169
112
110
136
107
86
86
75
130
122
67
110
114
105
128
105
119
104
139
92
92
104
134
91
92
98
123
126
75
67
138
97
178
122
138
100
55
115
122
127
122
169
135
139
111
130
110
111
92
110
146
169
86
182
77
122
111
122
75
178
134
126
111
67
128
108
95
140
139
122
102
93
77
150
152
109
122
79
122
93
109
105
105
74
146
146
158
69
123
56
109
127
58
122
93
114
127
58
105
126
55
130
37
120
126
77
92
81
132
55
122
67
77
103
110
118
58
58
102
111
140
74
104
37
92
93
55
99
142
105
122
139
76
58
126
93
79
130
103
75
92
178
126
127
58
152
152
126
55
92
83
68
178
110
152
146
55
110
83
109
111
55
178
55
109
69
110
74
178
92
105
148
132
56
97
97
92
92
171
122
93
74
97
134
86
92
122
122
37
56
148
122
93
109
158
74
105
152
138
112
126
92
138
67
92
152
37
139
122
118
113
123
144
111
104
119
111
103
91
168
123
111
139
104
89
100
67
148
56
152
91
140
127
91
78
110
125
112
146
169
91
67
146
37
58
127
68
163
92
83
110
126
139
67
104
117
165
122
94
115
138
105
126
98
83
152
169
55
178
124
110
128
37
117
110
168
124
77
55
139
121
92
138
127
138
140
74
56
37
104
37
145
128
104
86
93
122
55
92
88
140
128
107
148
107
92
109
108
105
124
110
123
110
58
137
164
103
37
103
67
126
146
55
148
144
140
37
131
110
55
91
86
74
92
93
164
116
75
117
138
122
105
69
77
151
92
58
86
141
146
98
101
80
78
55
104
164
169
92
179
100
87
111
110
55
146
113
99
91
91
139
56
138
37
74
101
117
122
84
67
83
58
67
92
104
68
37
138
83
199
122
105
68
126
92
104
109
105
92
178
89
138
115
69
56
105
81
122
92
120
126
164
146
95
122
139
138
178
91
94
92
86
105
86
126
110
69
55
178
127
102
67
119
105
37
158
92
148
92
148
122
134
152
67
169
87
92
152
122
107
92
55
127
55
93
86
105
178
117
104
147
56
115
92
74
67
107
92
56
98
121
55
97
104
67
114
74
130
55
77
99
122
126
169
93
55
92
103
105
118
103
55
122
55
91
122
110
91
58
101
126
83
110
67
108
126
92
95
129
114
140
37
67
152
122
67
164
88
105
55
103
148
104
93
146
56
122
139
91
152
77
103
89
122
108
132
104
79
126
74
178
138
118
56
105
91
108
105
112
104
104
95
107
158
92
86
122
93
126
67
110
128
105
138
105
124
110
134
111
162
110
169
131
92
37
55
110
92
127
77
126
110
68
56
117
136
97
103
123
169
126
117
77
126
79
67
112
152
126
107
169
122
110
120
131
110
119
110
122
122
93
86
92
104
86
67
75
125
92
144
139
92
138
110
55
92
92
93
58
127
122
139
126
55
55
103
92
56
84
100
120
148
105
93
69
126
103
117
77
146
92
110
132
92
55
105
105
103
58
122
132
117
126
136
126
127
111
56
164
128
105
140
103
107
55
106
128
122
104
154
126
110
86
178
140
110
92
122
67
86
110
69
130
37
126
91
169
122
105
158
135
86
94
168
141
104
81
105
58
37
92
163
171
128
37
93
110
93
178
138
55
126
69
105
104
144
93
123
149
79
134
110
83
91
92
119
92
92
139
93
169
122
146
92
37
124
100
105
178
165
140
79
97
127
77
69
111
104
126
105
158
69
91
92
126
134
104
93
114
120
55
105
105
107
69
56
138
55
126
127
105
86
127
86
126
136
171
131
107
37
104
128
122
124
93
131
139
75
92
124
152
37
74
128
110
89
113
146
116
119
126
145
134
139
55
123
69
122
112
152
178
127
56
84
99
55
93
91
79
144
92
114
124
110
58
146
69
112
110
122
37
56
110
139
64
126
139
104
178
130
98
105
107
55
37
162
110
128
142
147
139
152
140
56
56
79
92
75
74
58
126
107
126
128
105
67
112
138
98
74
139
95
77
138
152
56
152
121
138
124
105
137
104
110
152
37
110
138
108
98
180
93
84
117
127
79
107
55
88
126
138
147
55
92
37
92
138
84
103
139
104
114
162
148
112
128
146
104
110
92
56
84
92
111
97
94
93
92
123
125
93
104
68
126
104
67
127
105
93
136
159
83
84
75
55
139
104
152
99
169
111
92
122
56
84
89
98
97
67
127
152
134
93
86
79
139
148
122
95
37
92
104
107
92
110
105
162
122
138
144
105
105
37
92
86
168
67
99
110
138
55
119
92
37
126
122
120
93
97
76
144
86
122
67
130
92
65
122
97
131
168
105
160
138
127
138
178
146
152
93
138
56
178
91
140
135
110
111
56
37
151
138
123
144
122
110
178
120
92
37
123
130
122
140
146
119
138
180
130
167
65
139
55
92
178
123
139
110
139
127
91
79
55
126
104
67
67
148
109
109
126
75
56
110
56
146
123
110
101
119
127
78
110
91
169
144
131
145
95
119
138
56
152
89
109
120
79
56
77
102
69
179
139
99
138
138
75
101
95
37
126
114
158
105
106
138
138
99
127
129
92
127
122
127
138
55
110
163
56
126
55
75
140
77
67
164
168
110
92
138
138
64
163
135
108
75
112
104
178
58
84
67
130
127
106
92
148
122
128
92
103
55
91
122
87
163
103
178
105
92
128
122
75
158
76
169
128
132
169
139
91
127
79
122
111
55
139
55
74
67
55
148
152
55
55
126
92
127
58
138
92
122
56
127
37
73
69
56
103
67
146
122
126
128
146
146
56
104
129
146
86
111
58
69
104
171
92
110
128
105
138
69
55
86
67
104
146
77
135
105
75
56
95
95
137
56
55
99
86
110
162
122
69
104
55
178
92
58
105
178
123
123
118
92
91
126
158
131
75
75
100
136
88
55
144
75
112
110
126
152
93
55
144
138
92
105
127
95
55
92
103
128
83
105
105
138
105
103
88
110
127
55
86
152
152
92
146
55
130
126
75
119
95
136
103
125
92
92
94
138
152
88
105
162
169
55
91
105
123
55
126
86
93
128
112
99
91
67
105
122
136
91
162
139
74
123
74
75
79
93
98
67
79
107
86
37
163
165
88
122
105
128
67
169
37
56
105
92
139
171
55
132
132
110
122
151
86
104
126
126
92
137
110
127
122
91
105
152
127
100
105
127
104
178
95
79
74
124
138
144
86
144
139
55
77
100
75
67
146
91
55
127
58
58
79
67
124
79
127
140
86
55
93
138
102
128
55
55
146
123
67
105
111
91
171
92
117
138
138
134
104
77
132
92
109
99
69
109
105
138
164
105
92
69
178
105
67
68
140
74
110
138
93
146
67
100
139
105
112
93
37
58
178
56
55
86
122
115
122
55
55
124
126
134
178
105
126
158
106
106
86
56
138
55
67
126
110
114
164
55
55
92
69
78
123
148
132
124
89
126
124
104
124
67
139
78
92
138
58
136
169
91
55
94
111
58
107
109
151
67
92
83
139
126
37
92
55
118
117
126
80
140
84
104
138
55
105
123
67
80
122
99
169
126
77
140
168
55
67
128
122
163
127
79
93
138
92
126
140
126
130
89
92
56
138
128
144
91
140
146
105
83
37
86
97
37
92
55
37
104
108
180
109
127
139
55
92
110
103
110
56
67
152
105
134
67
77
169
122
101
111
122
37
86
158
123
169
139
122
56
149
55
55
146
105
104
58
91
56
109
83
132
148
93
119
122
163
124
93
128
151
92
128
178
110
92
169
67
92
122
77
111
104
56
75
91
138
116
113
119
55
92
146
102
122
138
128
102
91
122
107
122
67
104
86
37
84
69
148
140
86
142
109
124
129
126
127
69
165
67
83
129
119
123
135
37
80
111
134
104
104
72
79
119
118
58
122
140
178
58
127
122
119
127
137
146
178
148
127
110
92
130
139
103
110
93
37
110
128
140
115
178
75
55
127
123
92
130
109
98
92
169
140
127
93
135
107
37
69
128
104
138
178
103
79
79
84
111
103
124
67
107
37
171
122
55
56
122
58
92
124
126
156
139
37
126
93
104
114
126
139
95
146
56
163
104
37
126
56
103
141
114
134
67
92
122
178
101
111
92
86
160
107
58
99
106
92
164
105
58
55
122
56
55
105
131
105
75
150
92
134
126
98
68
105
119
148
110
96
77
127
92
99
117
104
55
110
169
102
105
69
91
105
100
92
55
104
152
105
92
128
92
91
106
86
126
178
92
67
67
110
134
67
144
89
178
93
105
55
148
180
144
126
102
67
138
127
110
93
125
122
134
67
104
67
102
79
105
123
107
55
103
104
138
110
92
136
91
105
75
55
105
114
105
141
104
93
169
103
96
37
55
105
37
78
112
67
55
101
81
143
55
92
92
56
58
67
126
138
180
146
115
146
178
69
75
122
138
104
83
146
178
149
127
93
109
138
110
105
92
93
107
104
122
110
145
126
104
99
152
92
122
152
67
152
79
127
67
123
171
67
109
111
110
37
55
91
195
115
111
131
105
119
127
100
171
37
139
76
93
141
104
138
56
55
128
99
92
123
111
56
110
146
127
120
93
110
93
178
122
168
92
105
55
127
111
77
107
55
178
126
99
92
128
72
109
56
37
93
56
107
86
56
55
108
126
131
92
138
144
67
126
93
126
160
79
99
123
111
122
86
99
126
107
55
107
120
138
86
102
112
110
109
126
104
119
55
105
78
126
163
95
136
108
55
162
140
110
138
55
92
110
169
77
107
104
169
122
110
128
92
61
138
74
69
107
92
134
67
140
118
93
69
67
124
92
126
136
110
105
79
169
68
67
110
138
77
110
67
123
118
86
124
114
110
88
55
67
79
92
92
120
132
126
56
123
88
171
86
110
144
92
105
126
75
58
56
120
111
122
152
160
37
104
75
93
69
92
67
122
56
105
55
67
124
92
119
102
146
146
58
109
110
104
91
92
112
107
55
104
104
67
92
104
68
108
171
104
93
110
169
178
138
58
79
93
91
122
134
152
79
118
86
37
178
111
100
92
75
92
56
126
148
152
105
124
107
55
92
122
58
142
98
178
138
126
127
103
107
87
99
67
128
104
79
126
132
56
107
163
55
169
55
75
146
138
92
119
37
107
99
92
111
55
105
134
122
136
89
37
55
78
139
105
110
55
103
84
165
144
124
111
146
92
99
140
127
152
146
110
79
74
103
128
139
37
100
92
136
139
110
56
178
93
94
126
74
105
105
99
122
126
126
111
110
148
110
93
77
126
88
146
105
131
117
55
98
67
139
55
111
89
152
74
67
89
169
92
152
55
169
152
140
107
117
55
128
152
152
37
92
67
104
75
74
91
37
74
122
132
124
37
107
122
67
139
163
140
145
131
79
178
105
107
86
126
69
138
97
108
127
104
129
130
98
92
93
92
140
56
56
56
169
137
169
67
123
37
37
104
138
179
103
55
56
164
56
104
86
162
108
55
67
104
110
110
152
58
122
92
97
55
178
97
140
130
122
104
126
91
138
105
105
169
99
84
69
75
81
56
169
58
110
92
115
89
126
110
97
144
178
105
79
104
139
171
130
58
132
128
122
109
55
110
171
127
146
55
56
111
144
104
167
55
138
122
105
192
105
144
79
122
56
83
92
130
127
74
148
105
97
107
146
105
107
92
126
92
104
56
104
105
69
77
105
55
169
123
139
105
67
138
105
146
126
121
120
67
37
105
98
126
165
92
92
92
169
128
126
109
152
136
178
115
98
126
138
67
79
178
93
86
104
122
83
127
77
67
110
168
199
148
97
122
105
92
92
92
152
119
99
169
144
109
128
92
138
58
91
110
124
56
178
75
91
169
92
37
67
114
117
97
58
55
111
89
138
100
83
140
92
84
69
56
55
86
139
105
178
93
159
131
130
152
92
151
178
146
92
58
122
104
91
119
122
104
93
164
152
101
55
119
67
92
128
93
138
55
96
110
95
152
108
56
86
128
79
75
122
67
119
67
92
101
101
110
69
55
91
37
84
58
108
98
58
138
92
58
130
83
37
110
80
114
127
67
105
123
67
93
139
126
132
55
158
55
119
89
98
55
88
140
169
138
171
93
84
92
69
152
67
55
92
86
105
100
99
163
126
165
74
140
110
107
88
37
110
122
86
111
127
74
126
163
108
67
79
138
104
105
106
105
110
145
98
105
122
91
104
58
79
139
55
91
55
69
79
99
124
164
78
156
112
127
139
81
178
56
58
92
111
126
123
55
168
138
124
168
93
106
122
77
92
103
83
68
93
112
92
74
138
110
92
55
91
67
58
92
119
74
91
99
55
56
97
55
93
97
67
126
128
111
107
126
126
55
126
122
67
169
98
101
160
67
117
110
122
92
88
134
93
67
138
67
103
126
67
92
99
100
126
97
104
58
169
97
92
146
67
122
55
127
56
79
104
122
56
114
58
117
105
127
92
140
93
92
115
127
99
114
92
56
86
138
110
58
132
110
128
99
79
127
93
55
69
127
146
110
146
110
104
109
126
105
58
162
84
135
108
122
168
75
119
67
138
92
120
105
122
160
178
123
84
37
55
122
122
58
78
114
77
105
152
178
110
56
169
97
111
126
104
126
56
84
140
139
139
126
99
128
105
93
77
97
134
168
127
139
83
74
91
127
92
58
55
92
122
152
141
105
88
123
110
119
79
126
79
73
113
123
83
110
169
97
137
131
92
137
105
139
86
55
119
110
37
126
124
188
178
89
122
110
130
146
76
139
125
126
55
127
92
127
127
74
105
126
92
163
139
163
101
120
120
58
108
146
65
92
104
92
134
178
119
135
91
107
105
67
105
89
139
93
128
152
69
68
167
139
93
168
152
162
95
124
104
77
149
169
92
124
86
55
109
105
55
139
69
93
56
178
138
123
102
127
56
178
71
113
109
146
109
110
128
105
91
67
112
55
142
144
107
145
110
128
37
104
139
105
135
110
72
110
75
139
130
97
138
67
104
140
79
93
74
67
138
58
101
86
180
169
79
74
55
126
37
138
110
126
105
92
92
110
152
122
79
144
126
117
99
158
56
130
92
139
127
134
58
122
178
106
67
67
86
104
120
146
92
99
131
104
128
169
135
93
119
123
180
84
123
98
69
131
110
104
37
110
58
105
67
136
104
55
160
69
77
77
126
92
69
111
93
84
160
144
122
77
58
108
148
122
126
128
126
123
55
58
55
99
136
108
105
105
110
105
109
37
118
92
105
126
91
79
164
123
105
96
104
111
97
123
122
105
86
114
92
131
138
67
178
169
113
144
105
178
138
144
163
139
75
86
169
75
144
87
144
138
109
105
128
128
69
122
93
144
140
136
67
127
141
130
121
55
118
140
127
103
144
168
105
165
102
71
139
37
97
56
127
128
127
92
152
122
101
145
56
169
92
56
55
72
74
138
147
93
67
92
56
104
55
112
122
98
131
92
37
122
92
111
110
86
138
105
86
120
127
137
92
104
112
37
182
111
163
55
126
168
56
123
104
92
55
122
102
99
105
105
67
55
138
58
109
55
93
94
180
127
67
103
56
92
58
130
131
114
146
139
109
97
138
123
111
56
127
122
109
92
67
122
111
92
130
122
119
123
37
92
119
55
91
128
111
105
56
101
83
134
167
127
55
110
108
67
75
105
171
55
37
138
110
126
178
56
96
137
119
69
99
122
104
92
77
37
92
127
98
145
67
109
144
126
56
122
67
122
68
122
136
88
109
138
104
124
103
56
138
92
145
122
122
75
55
126
92
112
152
178
123
122
132
111
58
138
119
127
104
84
168
169
132
56
92
92
158
55
105
100
93
92
87
55
135
152
92
111
99
110
83
99
104
68
105
109
93
126
123
69
152
100
118
105
122
122
102
58
79
119
138
58
128
128
56
92
144
69
104
84
126
92
58
58
119
138
163
99
126
117
119
164
122
56
171
92
77
92
124
117
169
93
105
105
111
69
56
88
56
68
122
124
126
129
122
55
178
122
109
67
111
97
56
126
69
37
116
91
105
55
117
37
55
123
126
110
92
138
37
91
122
98
92
92
112
127
126
37
92
77
119
144
160
128
131
122
58
92
69
106
127
74
93
58
67
91
111
84
105
67
139
139
55
93
149
107
67
127
86
110
154
58
169
55
163
130
86
67
93
144
144
67
111
92
104
123
122
124
180
138
138
124
77
55
56
55
55
178
144
127
119
109
146
148
126
103
55
136
169
58
95
163
112
124
86
89
122
109
108
123
83
74
79
79
118
55
56
134
126
92
110
128
93
127
92
122
158
77
127
146
104
120
56
67
146
126
67
55
67
142
167
119
56
92
75
92
126
104
144
125
94
77
103
107
114
56
169
119
58
91
96
105
149
122
96
78
55
67
72
146
127
148
88
92
105
122
122
104
110
105
69
144
118
103
152
67
109
55
56
92
118
151
83
91
146
110
134
114
58
111
97
108
67
122
56
105
136
105
138
123
106
93
123
164
163
123
152
149
134
56
151
101
138
127
112
99
55
138
55
148
104
110
55
91
97
126
110
168
163
55
118
149
86
110
167
110
100
123
81
58
148
138
93
134
118
56
144
37
110
55
67
55
145
123
92
37
86
67
171
139
118
127
107
126
93
132
86
68
55
109
121
37
95
151
169
140
67
77
83
127
138
126
180
118
124
158
111
91
55
56
92
119
69
128
104
92
104
126
125
138
69
93
56
103
91
110
88
84
138
110
122
127
107
112
92
178
100
55
105
92
122
65
144
146
136
74
67
92
37
140
105
126
160
69
67
126
99
104
192
140
126
105
119
138
139
115
92
77
106
131
169
122
92
126
138
122
58
138
105
128
111
126
126
100
128
138
165
134
84
122
137
92
148
104
104
128
137
132
147
105
114
92
55
122
103
104
122
132
178
84
134
74
55
126
126
102
123
75
58
105
58
104
105
55
124
114
122
104
55
138
110
112
77
55
79
136
98
120
105
122
138
126
146
147
77
102
109
105
92
69
86
123
93
75
119
86
105
119
109
58
37
138
119
110
55
55
105
92
74
106
56
135
56
83
105
138
127
139
103
92
77
118
145
55
169
122
112
83
110
127
139
93
102
125
164
105
55
105
104
67
86
75
126
111
178
140
105
77
99
104
105
56
110
122
93
138
103
122
92
92
55
126
178
88
144
67
105
122
114
139
111
74
144
92
138
122
126
92
105
144
119
106
88
37
110
110
67
158
105
127
111
124
67
104
105
110
86
123
93
92
104
56
169
105
160
128
77
122
144
134
92
178
178
122
104
152
109
56
110
144
140
97
86
108
105
55
93
55
110
56
37
104
123
163
182
105
104
92
160
69
142
92
146
55
152
126
92
152
93
178
138
69
178
111
104
126
112
91
105
91
110
126
152
79
99
112
139
55
93
89
124
148
58
120
122
120
117
144
92
67
126
92
106
105
99
169
118
75
168
104
79
92
37
123
168
56
92
108
169
84
92
127
133
86
56
78
99
67
111
123
169
97
92
99
126
178
123
110
146
146
122
55
112
111
123
58
124
56
126
37
138
119
56
131
134
138
122
123
169
92
127
55
74
99
92
103
92
171
110
100
92
122
92
55
113
69
111
128
92
119
67
105
86
124
93
199
89
111
105
92
77
86
92
56
56
139
55
93
58
114
67
124
92
55
79
110
107
127
114
178
138
69
92
120
68
144
110
56
55
127
144
138
92
110
93
58
115
122
67
144
126
136
143
167
55
91
139
199
104
103
86
105
55
86
92
169
127
139
86
89
127
171
104
91
105
144
127
105
103
55
104
144
106
91
146
93
104
110
105
119
134
136
136
68
139
106
98
119
110
99
69
55
146
87
92
146
125
127
111
107
56
118
180
92
178
68
126
110
110
104
37
152
105
110
122
105
127
69
144
37
84
145
93
171
177
110
67
104
138
158
112
130
67
169
119
80
106
93
135
101
171
89
93
168
122
167
120
132
138
122
56
158
178
74
146
167
108
168
105
109
74
158
138
92
110
56
128
92
55
169
163
115
105
152
104
92
92
84
37
110
110
92
171
55
105
75
104
74
55
88
86
105
127
138
126
104
92
92
37
122
111
158
77
86
122
149
84
169
92
103
75
119
146
58
98
37
127
114
126
122
126
93
122
107
131
56
139
139
58
58
122
178
67
111
55
140
104
158
105
98
136
123
127
58
96
95
102
55
102
37
138
122
84
99
181
178
92
132
55
138
126
119
178
77
98
126
138
139
126
126
163
92
86
127
67
111
92
105
105
110
122
55
146
126
55
105
67
132
58
92
91
37
91
128
126
37
126
122
67
128
92
117
122
164
92
92
111
136
37
134
161
144
110
67
67
117
88
77
110
97
122
113
167
92
148
92
169
83
55
92
86
102
134
91
105
152
92
55
110
123
169
56
139
67
106
108
105
109
144
99
88
83
126
122
86
106
132
37
139
104
110
86
83
77
91
138
67
110
160
92
99
132
103
122
58
140
91
77
68
105
98
127
139
146
93
92
122
126
80
139
37
105
79
69
146
117
92
120
169
93
144
180
139
126
37
169
104
178
67
67
123
128
110
132
79
119
110
105
138
56
67
109
122
76
126
69
105
55
67
144
129
163
77
119
37
111
131
69
86
132
67
126
67
81
37
103
75
167
67
79
139
146
122
134
100
93
152
122
37
104
126
180
148
92
152
110
102
128
148
100
67
140
146
126
139
110
58
119
122
93
80
178
104
69
104
56
56
126
96
130
133
146
139
123
128
99
146
138
146
67
56
110
122
72
138
146
99
122
91
105
152
92
110
92
109
139
55
58
122
93
138
158
88
110
92
100
55
80
67
122
104
89
122
105
55
110
168
55
104
68
56
84
67
127
124
93
55
148
160
138
122
138
55
126
150
122
140
74
92
124
122
126
124
108
67
138
146
110
104
178
178
111
111
110
37
69
122
110
55
142
126
105
123
107
110
110
92
126
92
126
104
56
93
89
123
158
99
126
74
86
86
69
92
163
146
67
77
78
115
138
111
126
105
132
105
55
75
126
92
178
99
136
55
86
37
69
146
37
92
67
126
110
55
111
105
128
139
131
139
99
95
104
110
122
55
107
85
144
92
55
123
122
122
138
92
86
178
93
178
106
67
169
129
138
123
88
105
140
92
104
55
99
69
144
111
83
37
104
138
127
107
79
73
98
144
124
189
122
122
58
93
165
111
107
128
138
152
93
56
114
77
126
126
110
135
168
110
140
83
95
68
152
67
126
126
126
138
58
67
93
158
107
67
144
93
55
86
91
122
137
95
56
67
134
144
120
107
92
110
118
93
76
130
123
110
79
55
104
123
138
55
110
128
130
178
109
107
130
95
105
92
139
67
171
126
55
55
105
87
56
56
120
98
110
107
69
178
134
124
92
67
119
37
93
101
114
138
83
104
55
138
110
75
114
104
110
101
68
144
104
148
92
178
122
56
105
58
122
169
121
109
67
138
126
148
105
83
91
67
81
55
168
92
171
92
158
110
138
110
144
68
122
109
139
138
138
67
126
112
104
86
77
127
74
139
122
98
79
138
79
144
126
106
55
75
158
178
55
98
131
105
119
84
171
104
171
109
122
67
55
117
146
144
55
132
105
55
55
127
55
104
162
69
92
132
103
92
69
56
131
68
92
83
105
56
110
111
122
178
55
55
126
93
75
156
134
55
126
56
67
92
119
122
109
126
146
138
103
128
114
92
144
126
91
138
188
77
67
58
55
91
56
93
169
112
144
56
92
163
178
55
72
124
93
105
56
67
122
182
69
119
109
58
99
95
55
67
92
56
122
168
122
104
55
92
67
152
138
110
122
83
67
79
141
180
128
105
100
146
117
84
111
123
107
119
123
67
72
55
92
104
105
67
76
56
138
94
55
56
178
122
92
100
126
104
122
169
104
126
99
144
178
140
93
167
123
144
104
56
92
92
114
55
98
123
131
122
104
117
58
110
91
110
86
55
86
111
138
138
130
58
92
95
168
151
139
122
105
126
67
123
91
105
58
105
110
37
91
152
104
127
126
152
55
55
91
67
126
74
86
141
126
88
123
55
109
111
144
178
75
111
152
67
110
64
111
168
105
122
67
92
138
126
132
92
97
112
138
92
103
86
138
55
139
138
138
74
92
109
55
123
104
110
92
139
127
122
37
136
128
111
126
87
92
92
122
126
102
101
79
93
138
180
199
125
37
134
107
129
55
126
127
132
131
122
138
122
58
110
169
110
92
55
104
123
92
105
128
37
111
92
158
92
92
67
127
107
86
110
67
55
87
158
122
104
158
67
67
67
123
107
136
180
178
99
152
104
139
110
107
92
130
97
55
138
105
122
89
74
122
67
138
110
67
126
67
138
130
127
77
105
67
69
37
77
79
99
135
92
151
89
67
124
178
67
105
92
105
119
110
87
74
98
93
178
123
110
110
124
145
152
131
37
86
74
125
93
105
111
58
105
111
93
168
79
77
92
104
138
56
178
112
111
129
97
122
106
92
146
146
148
132
122
91
139
91
139
86
110
103
77
162
57
104
110
109
140
92
138
146
111
139
102
83
103
93
144
127
105
55
55
122
77
126
80
117
137
122
138
67
92
148
79
92
55
103
110
101
102
56
110
169
37
112
110
111
168
67
77
124
84
152
67
58
91
119
122
110
74
126
139
37
138
110
128
146
55
104
131
67
146
144
124
89
37
93
124
99
67
86
86
127
122
74
91
86
109
69
148
178
37
123
105
99
163
169
110
55
81
93
92
55
55
126
106
92
105
92
73
146
141
99
119
127
109
103
138
127
111
178
126
68
139
103
67
56
169
110
140
92
77
56
99
91
121
128
130
95
67
122
80
178
138
55
92
68
182
140
138
67
105
142
104
110
92
149
122
56
117
98
113
86
55
119
109
142
119
122
74
55
178
92
79
92
138
139
92
55
69
103
127
122
169
178
69
86
68
167
122
127
104
192
99
79
104
55
127
111
128
122
69
126
163
92
138
55
138
92
110
77
124
37
94
89
131
56
55
69
152
146
138
104
104
126
178
92
56
92
105
114
75
55
145
74
126
127
110
163
139
75
122
109
139
122
104
93
88
105
130
178
134
111
74
95
163
97
55
91
178
119
37
132
104
158
152
58
67
100
139
67
110
140
37
55
123
152
134
127
111
178
145
92
75
37
68
81
92
104
144
123
56
148
67
92
119
132
152
74
134
107
119
134
156
128
105
111
152
112
123
92
123
138
127
163
55
37
89
146
69
169
139
126
136
55
79
55
109
37
110
83
55
124
122
130
99
132
92
55
120
86
37
144
103
138
119
104
103
91
151
110
138
138
111
139
117
128
67
78
92
55
122
56
138
127
110
147
128
146
111
67
55
117
78
122
124
108
138
55
122
67
138
122
136
104
126
127
111
69
67
126
74
67
123
55
67
130
115
97
135
130
55
98
134
110
97
55
74
146
75
178
92
119
110
112
117
132
122
105
95
138
122
178
55
37
138
92
119
134
117
123
144
122
169
94
120
105
58
138
58
110
162
138
105
79
104
104
119
88
128
139
134
55
75
67
195
55
110
178
93
67
130
37
146
91
109
107
110
79
92
122
74
118
93
56
92
134
107
138
132
105
110
104
69
119
123
171
37
146
87
105
128
122
109
107
120
144
56
122
75
79
92
126
127
92
126
131
55
68
110
105
126
67
55
98
126
119
56
139
165
67
58
103
99
68
146
67
92
139
92
152
178
93
146
122
137
169
105
83
131
97
92
110
107
91
79
139
67
138
98
79
126
55
92
92
109
122
132
144
146
104
55
122
169
37
178
162
128
127
56
134
124
122
118
58
158
89
37
69
171
169
93
144
117
105
101
141
144
119
180
56
122
69
144
144
91
99
92
128
192
178
109
98
104
55
37
118
69
100
99
138
105
118
58
109
124
92
123
111
136
97
67
122
56
55
105
92
139
138
127
103
69
111
160
141
131
131
92
146
110
180
118
92
152
92
140
116
134
126
58
84
55
92
86
92
55
144
97
92
92
58
139
138
104
92
55
110
100
55
55
104
121
79
77
136
110
138
169
138
122
67
110
125
103
168
92
145
178
139
79
110
127
67
67
147
92
69
78
110
83
122
151
104
119
55
126
114
91
178
126
58
83
83
92
92
92
77
68
138
171
104
92
110
122
139
55
150
110
77
138
69
93
123
37
124
103
115
91
69
92
128
105
144
126
169
128
105
104
169
58
120
107
83
37
101
93
67
92
110
68
127
134
104
67
107
58
92
96
152
126
86
58
121
92
163
128
132
156
124
84
69
92
93
126
55
69
92
55
37
131
180
136
84
104
138
79
92
126
92
139
128
67
151
55
146
56
84
158
168
105
126
67
55
179
132
110
92
106
126
88
98
55
124
112
56
89
126
58
67
178
126
89
92
67
127
123
97
138
132
110
67
92
110
122
112
56
87
75
126
92
135
102
131
138
92
120
86
104
107
128
79
132
131
127
67
86
146
58
79
92
95
138
69
115
75
91
69
127
139
144
56
104
93
69
141
105
89
83
55
97
130
119
109
55
105
122
58
79
55
100
110
110
86
118
100
105
152
105
110
131
97
138
92
119
67
69
120
146
126
168
128
169
56
92
97
58
92
134
92
110
105
122
55
105
124
67
110
118
126
145
148
122
93
69
58
110
126
178
101
55
128
58
93
56
105
93
105
178
75
37
68
55
147
110
103
165
111
110
91
138
55
138
134
130
111
83
153
138
92
79
124
178
55
92
55
127
81
67
111
67
92
127
67
56
126
92
109
110
110
140
161
101
122
169
75
146
56
79
118
127
131
83
93
127
118
83
139
64
107
55
122
92
135
105
138
105
165
110
58
146
93
69
69
120
139
112
56
138
79
107
128
58
104
56
97
107
55
163
109
67
92
111
111
135
69
99
128
58
178
132
122
134
96
126
146
69
127
103
122
163
99
67
86
171
119
169
91
67
69
105
92
145
132
105
114
126
75
110
80
69
58
118
67
109
111
180
56
119
136
93
110
55
55
92
110
178
140
97
160
75
152
139
122
128
151
92
122
92
110
126
117
55
138
122
156
119
160
126
123
110
164
132
79
37
99
92
146
79
139
92
37
111
110
137
134
93
146
92
56
93
100
104
98
58
110
105
124
102
138
69
55
169
83
110
112
55
110
127
126
110
178
138
112
58
126
67
126
178
126
56
122
108
79
108
58
136
110
67
152
80
105
95
69
55
126
105
93
192
91
69
126
126
93
55
134
139
110
97
97
56
37
55
92
118
55
126
92
168
67
73
84
146
67
92
55
126
56
135
97
55
95
139
138
128
105
139
80
77
138
109
139
69
74
146
126
163
105
83
103
86
162
139
55
86
93
55
110
128
110
55
88
139
67
148
92
83
147
148
146
37
131
91
95
107
77
105
58
126
134
178
123
99
146
126
178
178
107
144
103
56
169
158
130
131
104
55
118
105
92
93
74
104
56
105
122
123
56
117
75
92
134
105
55
92
83
110
139
93
131
77
138
114
118
110
104
163
109
126
55
126
108
110
77
139
138
106
146
92
171
111
138
99
152
77
64
138
127
77
92
126
105
58
178
67
55
77
171
127
130
139
37
111
134
55
145
91
110
102
98
163
114
83
146
158
146
105
120
139
69
110
104
110
93
37
77
75
127
139
168
105
156
137
99
126
67
126
92
97
37
92
92
93
95
110
158
55
92
138
37
112
92
79
140
103
146
119
127
92
122
158
55
162
126
128
55
93
122
92
69
37
126
58
75
109
122
92
124
55
124
91
92
110
122
171
178
99
79
122
69
117
138
67
122
102
104
139
55
69
55
152
134
105
119
55
91
138
102
111
121
67
92
163
107
152
124
107
93
37
126
83
126
104
69
92
139
152
127
94
152
138
127
148
134
134
55
104
140
110
119
107
58
178
92
99
152
110
126
132
144
145
92
77
55
135
147
108
101
110
58
99
75
96
99
103
56
92
98
138
67
67
68
127
58
93
169
127
126
122
55
126
139
199
124
140
55
104
122
100
86
105
127
56
126
92
56
79
138
178
105
55
126
104
37
114
56
123
119
163
127
56
92
55
104
140
178
122
127
84
71
110
103
99
99
138
58
78
95
126
131
122
138
140
137
56
56
126
132
128
123
79
67
119
116
55
69
77
124
139
122
108
138
92
91
55
104
103
146
110
120
178
138
86
109
83
69
92
67
77
122
95
37
107
92
55
122
122
127
67
110
92
91
55
93
122
58
56
106
138
138
140
56
84
124
123
81
74
93
148
119
131
105
110
79
86
123
58
140
126
95
83
55
55
83
55
110
79
131
152
122
100
122
107
92
122
104
56
138
117
74
55
138
92
37
92
107
92
77
75
95
102
137
37
105
163
128
142
178
127
119
168
92
117
111
119
55
55
93
79
123
180
145
37
105
122
138
56
58
144
67
122
134
130
58
56
148
93
92
122
113
58
129
88
58
92
149
58
123
138
177
103
55
122
37
105
104
120
92
56
68
74
126
99
104
107
74
144
105
137
122
55
86
99
111
114
126
139
67
146
152
92
104
139
37
37
92
91
138
180
92
129
106
107
93
56
75
105
110
122
139
92
122
178
105
138
74
56
123
122
105
92
55
55
77
169
55
104
58
67
91
92
110
67
67
55
92
137
87
171
99
138
138
110
92
104
122
127
111
76
138
93
93
58
99
128
93
136
139
61
99
93
178
95
138
169
55
127
69
67
55
138
120
104
100
106
117
126
97
112
92
56
93
86
74
58
104
56
101
77
93
126
37
121
79
103
123
55
132
178
124
83
100
104
130
55
111
111
124
93
128
104
111
126
102
93
92
92
146
56
126
67
91
84
91
124
99
84
92
107
168
144
79
58
110
79
138
56
111
108
162
67
124
164
129
127
146
144
144
128
56
178
140
127
132
139
93
128
92
92
69
122
126
146
138
55
136
148
110
137
104
138
92
67
127
130
127
119
73
169
123
68
126
93
128
130
84
124
68
128
134
122
103
122
105
167
110
178
100
119
119
55
67
103
93
58
92
138
93
55
138
148
114
146
105
79
75
88
164
138
92
138
109
122
55
169
122
148
37
138
146
73
67
127
64
138
134
68
104
102
178
68
79
178
136
100
114
92
140
110
104
124
122
134
92
130
93
114
92
146
56
112
134
37
96
37
67
178
128
126
58
104
122
145
113
180
58
119
103
102
122
124
141
97
93
83
163
147
56
74
171
119
122
104
110
83
85
104
138
95
104
105
107
101
109
126
160
148
86
124
105
58
127
124
55
122
55
105
109
119
178
109
67
136
110
110
152
126
122
127
97
134
110
58
127
119
94
178
126
102
132
139
77
105
110
37
86
142
122
56
58
103
55
107
122
138
91
95
118
102
84
110
69
91
92
131
138
100
69
74
122
126
55
86
105
92
103
126
104
55
56
126
75
122
169
134
112
105
110
91
126
126
95
58
128
67
105
119
138
127
122
68
146
120
58
114
105
148
126
123
99
86
139
122
114
86
103
169
100
93
79
93
144
75
105
58
58
109
110
93
110
67
56
67
123
100
92
134
167
159
134
104
92
146
93
37
55
104
67
56
149
68
136
92
104
86
104
99
104
123
109
55
55
146
67
126
108
119
101
105
138
91
93
109
122
164
91
140
55
105
86
152
72
138
67
165
97
139
106
152
110
37
178
122
67
111
55
79
122
122
110
69
139
110
105
178
109
58
93
123
140
123
144
119
107
56
104
110
122
91
171
98
55
67
122
79
67
105
92
109
122
144
138
111
56
91
163
140
138
138
105
139
55
92
68
138
124
67
86
125
67
110
69
92
67
58
58
122
92
123
169
67
178
123
110
156
77
103
122
139
92
105
99
138
180
112
119
152
84
74
67
79
119
110
86
122
122
101
110
56
100
128
93
197
67
37
138
67
110
122
128
122
127
55
108
152
120
86
69
93
55
152
104
114
139
107
158
92
83
122
162
94
115
132
37
154
107
138
152
99
139
86
37
168
55
122
98
77
68
140
110
143
178
92
79
171
79
93
138
55
55
92
178
132
109
56
58
88
135
95
92
55
86
111
111
93
141
100
102
105
56
110
79
92
138
138
67
148
55
69
120
101
37
104
122
148
92
139
55
110
55
126
143
37
127
67
86
134
119
109
105
123
86
110
146
68
146
99
105
144
37
124
144
84
111
56
110
92
55
164
138
151
138
109
127
127
127
122
164
126
37
139
110
111
122
105
79
93
139
122
92
56
110
37
199
128
55
55
55
69
126
122
83
58
89
93
81
127
75
109
144
152
92
126
105
127
129
171
138
115
146
152
74
138
92
131
84
58
93
104
122
104
58
169
138
169
122
114
122
67
79
92
92
148
152
105
122
123
105
56
148
37
64
91
138
86
37
122
130
92
67
97
157
127
126
126
140
122
122
126
152
118
85
122
67
83
123
129
126
68
79
130
123
125
110
169
122
58
75
104
165
75
101
138
69
68
144
164
105
149
55
114
93
95
58
86
84
111
92
91
123
123
37
144
128
107
180
55
126
122
122
37
110
169
114
126
92
75
102
73
178
77
138
152
99
55
146
79
119
67
84
77
109
67
75
144
126
58
105
144
83
128
110
135
105
123
127
148
132
58
168
144
58
127
131
104
152
104
56
101
126
105
127
132
122
177
93
92
103
75
138
114
146
98
117
138
91
126
122
169
108
67
138
104
58
80
126
163
69
128
119
69
124
79
110
126
131
92
178
126
56
105
86
104
152
83
79
118
79
92
126
107
110
110
131
110
91
144
67
152
105
55
138
107
120
127
126
55
93
126
126
126
55
132
120
127
98
93
180
56
37
107
114
112
131
105
138
55
37
112
100
104
92
74
55
120
122
147
127
127
144
101
123
77
130
58
92
58
75
101
122
55
144
110
75
92
72
110
91
139
55
178
127
67
79
55
92
92
140
86
55
86
142
67
55
126
58
67
69
58
104
69
140
122
138
69
91
159
56
128
122
92
55
122
88
139
171
178
67
92
105
100
92
67
118
105
56
74
146
67
55
56
126
144
128
122
101
122
119
37
122
119
169
138
83
99
75
138
104
104
126
92
97
69
92
65
132
103
67
107
126
124
103
86
105
93
122
79
55
93
126
86
67
92
56
69
119
101
109
56
37
138
126
92
68
105
134
69
126
55
95
178
92
99
92
92
58
111
93
138
164
122
101
92
112
163
109
105
145
111
56
67
152
103
86
109
169
92
127
120
109
67
126
178
69
145
67
103
93
110
89
97
119
104
126
128
111
37
56
122
114
102
139
138
58
132
67
92
110
118
55
109
126
138
86
93
123
111
67
99
152
122
112
122
178
158
118
139
92
130
148
105
106
119
134
109
105
126
105
91
110
56
145
112
84
77
145
149
105
92
110
115
105
93
105
91
178
93
74
86
110
131
98
69
69
118
111
131
139
92
105
56
118
110
107
132
56
152
146
75
140
146
92
110
132
152
104
138
86
104
106
110
107
55
138
178
55
95
122
127
55
104
56
93
169
92
92
112
97
100
92
145
56
92
148
67
123
73
37
92
152
134
139
126
104
110
92
111
138
123
128
145
134
56
37
55
67
109
177
56
110
84
152
110
139
127
69
58
127
110
110
122
91
68
127
99
92
128
69
121
149
55
128
88
110
139
120
110
110
111
104
104
92
131
97
83
168
55
37
144
139
80
104
123
123
98
67
74
93
105
122
146
141
158
84
134
107
55
139
169
103
107
139
93
144
110
83
178
152
122
77
67
72
109
67
111
67
157
100
105
126
84
128
122
75
92
132
74
122
139
79
144
91
81
104
92
73
92
144
92
67
178
75
126
91
79
80
83
104
55
104
110
106
119
86
110
79
81
122
69
69
131
92
117
84
89
98
106
104
79
75
162
100
110
178
105
93
122
58
119
69
84
152
142
91
89
127
134
103
127
182
113
92
91
104
55
123
110
77
138
105
123
163
104
169
158
139
144
79
93
77
122
178
94
99
81
131
86
126
91
91
110
77
37
107
119
111
110
55
110
117
163
92
192
152
91
55
56
92
105
140
109
126
127
102
132
113
84
103
86
123
111
146
107
93
158
74
127
97
128
107
80
93
74
110
126
67
126
104
117
55
127
101
144
120
139
110
138
91
97
67
120
105
92
56
169
122
104
122
110
138
55
79
135
103
86
122
165
128
74
165
154
78
104
67
37
111
110
77
92
99
139
92
79
104
56
122
110
92
110
67
165
178
72
105
99
103
105
102
140
68
93
104
84
169
130
109
99
152
111
163
119
92
164
105
75
110
104
55
92
164
116
105
92
105
99
148
98
114
37
92
83
131
110
110
104
93
110
92
79
109
92
133
122
91
79
97
137
110
140
92
93
92
123
144
132
112
158
58
67
110
134
75
98
92
114
92
105
56
79
111
79
128
72
74
84
105
69
178
178
117
69
86
108
104
84
171
111
110
55
67
132
92
55
83
55
146
132
77
79
92
127
74
164
139
79
89
77
55
111
55
37
152
100
182
123
92
126
122
123
127
119
180
119
109
117
56
122
138
74
92
105
97
114
105
124
79
110
103
164
92
91
127
74
58
93
103
124
107
110
127
69
146
55
146
37
97
75
77
134
139
128
169
110
83
138
144
163
67
55
110
55
104
126
92
109
124
171
111
110
56
110
115
127
111
144
68
105
92
105
150
169
138
126
110
81
92
77
58
69
105
138
138
119
127
139
56
103
93
91
99
92
86
102
55
55
72
105
55
99
93
105
55
92
67
139
110
127
56
58
140
98
68
79
123
105
55
171
119
67
143
106
145
69
105
122
123
37
75
95
104
67
79
151
56
67
163
89
93
119
148
158
107
128
122
131
127
126
105
168
55
138
56
92
134
108
101
98
67
67
107
122
86
128
114
128
77
79
105
68
120
74
119
56
139
137
101
105
74
56
56
87
104
103
87
58
92
92
130
140
138
105
110
69
107
131
103
164
74
58
132
134
104
92
126
126
55
130
126
105
110
144
145
110
77
158
106
128
107
136
55
77
110
92
79
58
67
178
126
97
137
122
109
138
152
138
105
84
92
119
164
134
131
37
125
123
168
92
139
56
199
119
105
107
158
127
67
127
134
120
58
105
92
127
139
56
138
58
122
126
92
105
107
144
138
99
122
56
140
123
55
146
127
127
37
92
96
110
93
41
104
117
126
92
55
78
98
107
95
152
127
58
86
137
101
55
178
84
144
58
95
92
152
55
163
79
67
144
109
107
127
125
131
55
56
55
117
84
109
67
188
122
180
104
86
110
56
76
169
93
110
111
118
132
109
91
92
110
37
37
112
105
144
122
77
95
131
67
58
79
93
67
138
122
92
122
111
104
55
124
92
55
134
67
105
58
55
58
94
110
110
169
163
110
126
79
119
55
92
56
67
146
138
55
138
126
79
114
37
123
122
55
122
95
163
107
127
67
147
117
160
92
92
122
126
98
124
110
144
130
130
79
178
152
58
119
178
99
56
139
105
67
123
124
138
86
83
111
81
98
137
103
110
109
92
163
111
67
109
122
93
126
105
67
122
122
139
123
93
74
180
91
130
55
127
110
127
67
109
79
56
122
139
103
92
56
104
55
58
127
128
140
139
68
74
99
105
105
55
152
77
81
138
122
122
138
56
55
107
104
74
114
138
86
91
169
110
110
110
55
122
56
92
140
93
95
93
109
138
110
55
37
126
74
108
92
74
103
69
84
138
58
105
87
138
120
92
145
105
118
107
158
86
139
120
95
139
56
67
37
109
120
92
91
138
78
96
80
103
122
99
123
126
69
93
163
139
104
128
134
37
91
67
104
67
126
126
92
92
138
83
74
122
126
138
67
126
77
92
110
67
79
119
113
92
110
132
137
110
130
105
140
146
105
92
93
105
92
55
132
97
140
120
111
110
105
178
55
158
95
120
136
111
146
122
58
37
107
104
112
105
152
105
126
86
67
91
102
139
92
58
58
163
125
92
126
122
56
91
163
126
79
119
86
138
123
97
55
149
122
92
105
79
145
118
92
105
105
122
55
95
104
126
77
109
101
86
139
140
84
115
55
129
110
77
92
139
122
165
146
98
144
98
68
58
146
115
127
92
75
100
122
58
169
127
139
109
123
83
119
77
92
122
91
123
127
86
37
96
152
56
110
92
139
160
89
91
114
122
86
92
146
74
92
148
104
56
136
167
122
98
122
97
93
131
138
128
120
114
122
138
105
169
139
105
124
168
112
125
130
126
126
101
91
168
109
56
146
137
93
126
140
101
123
55
144
152
55
93
146
55
69
77
92
92
105
56
141
109
56
56
133
97
57
107
111
138
100
123
171
98
55
37
127
113
101
105
67
132
121
138
134
93
99
92
128
144
94
122
138
141
127
105
164
92
111
96
92
171
55
122
92
67
148
122
134
138
139
139
86
152
123
126
178
91
112
92
110
75
148
37
56
58
92
152
105
97
37
95
69
56
144
131
103
105
92
122
73
56
134
92
169
147
105
119
126
68
55
67
116
139
69
130
102
171
37
126
126
119
92
127
74
118
108
37
130
139
86
111
120
79
134
106
105
107
92
111
93
151
92
122
126
86
93
128
141
122
126
122
128
169
92
162
128
83
105
105
126
138
139
56
115
69
92
110
122
120
192
115
105
93
123
123
122
168
122
92
37
127
126
123
103
171
135
37
100
109
104
104
138
91
99
74
140
127
92
105
108
117
114
138
99
105
83
92
119
126
119
112
105
93
122
178
146
67
105
122
178
37
126
120
164
105
110
105
106
103
139
127
69
83
84
138
111
144
119
119
126
109
92
124
109
81
178
138
86
131
55
93
123
125
111
122
55
110
102
107
114
55
138
79
79
199
67
92
138
144
110
109
119
78
138
109
122
112
138
92
105
100
146
126
92
127
92
140
92
111
75
138
99
93
67
79
56
105
56
146
122
58
37
67
146
55
160
95
55
149
126
93
81
119
92
127
77
126
107
69
93
79
110
92
178
58
104
93
74
109
99
104
56
110
102
119
130
93
138
128
127
58
103
122
98
86
104
104
178
55
92
104
102
99
86
104
85
55
162
55
91
108
132
75
113
109
146
127
58
67
178
92
92
138
97
109
139
55
99
110
113
128
136
169
122
83
102
169
67
91
88
111
106
146
123
122
111
110
91
99
110
178
139
148
58
58
79
55
134
167
110
92
68
122
107
126
58
104
139
84
69
122
88
67
55
129
144
74
134
105
111
93
84
118
55
105
118
88
152
79
110
107
105
126
118
101
69
109
93
55
92
92
58
122
138
92
146
188
109
124
55
68
123
104
67
79
144
122
55
122
117
92
58
97
93
127
107
126
122
74
83
140
86
163
138
106
117
130
94
130
86
126
55
79
103
152
110
130
178
104
91
56
138
58
138
138
88
178
163
126
74
105
95
107
123
168
138
110
92
126
131
92
127
81
138
100
79
105
78
126
144
83
105
107
131
84
93
124
79
122
79
139
92
101
104
67
58
55
87
86
138
99
67
98
110
163
128
139
104
58
77
58
126
67
106
91
110
104
199
104
138
107
83
58
169
138
144
126
111
127
126
134
128
69
58
180
105
92
104
136
127
138
152
92
178
111
99
56
95
128
113
103
55
107
169
72
123
136
103
92
98
126
101
109
158
105
123
72
79
148
168
122
69
103
93
139
93
131
77
78
86
83
181
130
136
37
192
56
110
56
178
55
67
140
92
106
126
67
152
92
122
91
114
67
108
139
110
56
144
105
122
178
171
138
105
115
74
88
127
167
131
126
111
37
107
152
77
55
105
123
119
138
126
124
152
111
56
58
152
114
110
138
55
139
178
118
100
92
100
88
55
91
130
128
178
83
106
93
56
86
110
127
117
69
108
126
58
140
130
56
93
138
105
110
77
139
69
123
55
110
74
145
122
91
127
111
126
58
126
105
138
37
69
107
127
110
74
106
107
37
83
131
134
122
178
58
138
140
111
114
79
84
126
56
125
126
105
56
107
77
86
126
122
69
81
56
58
112
158
127
56
134
67
110
142
92
122
79
127
131
104
84
55
138
127
92
138
126
74
91
93
134
135
96
110
141
77
139
107
146
115
126
93
189
111
146
93
178
163
58
178
55
129
129
106
93
132
144
55
92
93
138
120
86
122
119
122
101
56
98
67
75
75
92
126
126
148
140
110
144
55
83
92
105
55
138
108
84
86
129
103
128
104
37
110
130
111
55
84
144
37
105
111
111
109
56
77
127
132
58
55
110
144
86
122
68
99
127
122
138
137
92
110
55
123
86
99
178
97
127
171
138
163
69
122
124
123
139
84
128
89
127
37
92
86
122
138
99
74
91
95
77
86
97
37
92
124
83
55
91
123
169
144
127
108
105
171
101
109
134
55
100
165
97
109
122
138
146
37
99
37
55
55
111
128
93
92
105
93
117
139
139
79
110
55
93
120
91
101
124
97
67
75
122
178
126
103
127
67
67
75
93
87
139
86
134
144
68
89
105
83
69
104
69
55
126
104
124
75
127
37
105
152
58
122
98
56
69
105
97
58
81
58
112
169
69
110
93
86
123
109
92
94
105
37
144
92
110
97
58
78
99
136
58
138
122
55
55
102
105
126
178
69
56
152
55
105
67
168
104
111
126
122
126
105
69
104
106
188
92
126
138
69
37
105
126
93
130
100
144
109
67
110
103
92
104
75
67
88
120
111
55
114
148
79
126
92
110
56
55
58
123
152
126
114
148
77
138
114
79
108
152
109
138
97
92
56
93
148
128
144
140
92
127
178
110
91
136
120
118
68
104
91
100
103
103
67
136
126
169
69
109
92
138
56
92
92
37
160
104
104
56
89
78
105
69
92
92
114
178
139
136
134
105
83
138
79
110
86
110
124
92
92
111
122
112
79
112
171
99
55
138
144
180
75
93
125
93
55
55
56
126
67
37
123
105
128
105
123
123
93
169
110
122
105
79
74
126
180
69
146
79
37
98
110
138
180
131
55
152
122
74
109
55
91
37
105
92
169
138
139
110
55
92
92
107
105
86
122
98
152
152
142
67
126
56
75
127
55
126
68
92
110
104
120
79
104
143
99
100
171
74
55
130
110
146
67
141
139
169
146
110
123
128
91
117
122
100
92
171
117
111
138
127
114
138
99
78
105
134
67
83
92
110
105
122
55
124
104
101
152
138
68
145
95
109
138
55
126
126
92
56
131
169
55
127
104
92
163
55
119
126
55
92
139
95
97
178
152
124
152
93
142
138
95
163
106
126
79
107
126
105
123
58
146
37
105
126
67
138
92
110
138
58
86
110
78
149
139
55
37
122
124
127
126
122
122
103
92
104
69
98
105
107
152
127
128
138
92
104
109
103
92
119
104
152
111
146
123
122
101
92
69
118
126
74
139
105
122
178
97
163
81
112
58
135
139
120
89
108
109
127
101
110
106
92
93
56
124
55
109
56
67
112
148
138
55
92
84
93
139
110
55
92
105
92
92
103
110
92
67
109
84
169
95
134
124
74
79
119
94
107
160
58
109
99
127
74
75
89
75
109
92
134
105
178
171
120
168
111
37
67
138
89
92
56
105
95
58
132
91
122
67
92
89
139
132
67
152
55
122
122
77
104
104
110
126
123
86
91
105
179
79
118
86
110
110
132
92
122
139
127
124
122
79
138
55
104
180
99
83
69
114
139
120
126
110
180
55
92
127
93
56
134
122
92
56
99
122
135
55
74
98
92
146
142
119
110
152
110
107
91
119
55
104
106
105
134
105
55
132
180
55
146
109
105
93
93
58
115
163
104
83
110
135
93
75
119
92
126
127
146
110
89
144
79
92
55
77
92
136
152
93
92
136
55
79
134
77
123
102
109
56
128
168
93
92
68
110
92
152
58
93
144
67
144
122
111
80
55
145
105
37
67
119
120
115
127
92
104
138
122
88
146
119
75
178
92
77
69
92
37
98
97
160
79
110
139
114
139
58
109
99
67
138
98
135
107
56
92
67
162
55
122
111
138
106
93
171
144
91
93
102
134
93
55
128
92
107
93
130
127
106
109
138
81
55
109
56
152
67
107
67
67
169
93
55
140
104
110
55
104
55
58
115
55
104
134
77
134
149
58
67
138
107
86
112
102
92
134
126
145
119
199
140
122
139
134
100
75
56
67
132
100
75
119
74
75
69
37
89
96
110
127
112
131
123
55
83
132
146
130
99
55
127
105
100
77
127
37
67
93
83
127
81
92
137
75
69
67
149
114
55
131
56
178
92
120
69
106
122
139
140
134
74
92
69
105
55
92
122
168
122
105
138
151
107
120
92
37
55
144
140
89
56
97
69
105
67
105
178
102
55
127
105
127
140
146
137
56
139
139
126
132
138
55
55
169
86
189
128
138
122
152
105
126
92
144
162
92
69
109
126
138
55
58
117
37
79
105
92
93
97
105
79
138
92
97
137
74
178
111
130
131
67
88
126
104
105
163
67
68
56
127
58
119
139
110
110
95
104
117
77
91
148
92
105
110
105
105
58
67
92
75
127
105
67
55
55
126
127
152
58
105
110
93
126
120
162
105
97
84
92
102
55
77
118
69
107
58
122
92
97
92
99
119
157
152
105
146
92
128
67
118
92
91
68
126
138
93
74
152
138
138
110
122
107
164
58
122
86
67
181
92
178
102
112
80
91
171
92
164
77
110
74
105
122
139
171
140
69
123
67
92
93
156
123
89
55
101
56
110
124
120
127
111
138
37
107
58
68
123
83
92
106
146
55
55
129
122
111
55
111
126
163
138
164
92
109
92
124
68
79
126
92
92
171
124
129
86
92
110
138
146
167
119
149
86
106
145
93
91
93
93
110
55
69
86
141
126
138
84
92
124
128
107
110
117
112
126
78
105
109
104
152
178
108
97
67
92
86
110
110
122
110
120
169
110
127
56
92
118
127
171
117
67
68
130
93
75
105
92
126
126
115
138
132
109
122
105
126
139
138
139
97
119
152
131
110
178
148
69
92
124
109
58
55
101
180
92
138
127
105
37
159
110
93
110
93
126
55
169
109
127
138
126
138
94
37
119
134
92
69
91
92
92
67
138
162
79
122
122
110
130
104
111
126
127
126
58
104
87
105
158
146
144
109
67
169
93
119
111
169
138
127
67
81
56
111
104
58
118
138
165
122
138
122
104
152
127
127
138
55
83
78
188
124
126
93
163
74
67
139
125
126
110
109
138
67
55
105
67
93
138
128
104
139
138
110
164
107
86
85
86
58
167
156
67
110
123
37
92
105
37
178
37
138
55
56
55
128
110
126
92
149
99
122
77
67
58
83
98
69
180
142
69
111
67
139
98
86
163
163
86
109
92
131
139
119
56
105
107
123
56
110
107
37
137
110
111
104
139
105
114
91
55
152
93
67
148
104
158
138
69
92
169
178
92
93
67
139
122
92
121
105
109
110
92
144
100
105
83
58
55
74
67
56
109
152
144
134
105
128
105
104
86
127
91
56
138
110
97
58
75
120
105
128
92
122
124
178
99
139
138
144
56
92
104
123
100
91
127
101
67
137
101
93
69
105
91
107
110
138
127
178
68
67
92
122
93
106
152
188
92
105
119
146
109
122
111
101
135
92
126
107
108
139
144
124
84
111
128
138
92
92
120
131
110
178
138
105
56
87
122
120
110
99
110
68
67
152
55
112
126
56
94
152
93
123
114
66
55
122
134
111
91
122
169
84
55
107
110
108
67
79
122
152
92
67
58
92
123
124
105
110
188
127
55
122
106
101
122
108
37
168
86
55
122
75
125
79
112
104
134
111
126
126
158
124
104
122
92
199
92
93
56
123
102
178
106
99
83
91
58
104
146
104
122
152
128
107
106
88
129
77
86
55
105
100
105
107
131
55
142
99
110
104
178
138
91
112
84
110
128
105
178
75
139
138
98
138
124
78
139
92
92
126
105
122
58
152
113
138
122
99
169
104
132
105
124
69
122
92
105
93
77
89
55
114
92
126
112
180
124
180
89
104
158
178
123
138
128
58
55
178
136
93
67
93
56
137
127
110
139
138
104
178
56
150
55
91
163
37
138
107
101
122
109
102
93
138
67
98
92
56
126
132
86
163
167
67
111
67
55
92
107
104
55
160
103
86
111
138
86
138
162
123
107
105
93
56
92
68
145
105
109
152
109
104
93
93
56
118
123
163
110
110
124
138
37
122
136
171
67
67
86
84
178
79
37
37
145
180
110
55
178
123
93
75
55
110
126
112
55
130
103
101
126
103
92
58
92
178
110
137
134
130
105
105
152
109
102
56
126
122
124
169
138
128
122
83
152
88
152
92
169
58
122
86
89
91
74
100
104
117
77
139
144
97
88
126
67
126
122
105
77
58
126
125
37
110
55
178
178
135
55
126
132
119
126
123
83
123
93
127
144
79
144
105
128
55
111
104
105
138
55
55
167
55
129
77
106
139
109
134
139
122
79
122
151
81
58
67
86
92
74
126
55
108
93
75
103
146
178
105
107
109
138
122
180
117
118
169
112
139
145
123
144
114
128
122
122
146
102
126
169
69
122
97
132
69
122
112
110
122
138
98
86
105
69
126
124
140
107
105
128
151
138
67
92
58
103
132
160
117
119
126
126
69
92
118
136
110
122
119
132
140
126
58
105
92
56
139
92
56
75
128
110
97
104
110
55
98
107
92
56
110
109
67
122
99
98
109
127
106
139
55
96
130
95
37
55
119
122
102
152
98
164
55
104
55
81
138
178
132
100
123
127
139
58
131
86
86
132
110
123
122
126
128
109
146
79
58
37
127
111
144
69
55
91
114
91
110
105
86
103
110
56
79
75
103
104
178
126
101
124
130
55
160
126
92
55
148
105
69
56
126
122
122
74
55
104
55
77
56
110
122
126
105
126
92
55
92
102
139
134
128
93
178
105
104
93
178
91
128
74
67
171
91
67
118
104
69
101
126
134
99
37
92
128
123
104
55
127
130
100
77
127
128
67
138
178
114
67
163
126
58
97
92
56
105
55
86
68
104
144
139
37
111
107
137
110
103
111
128
120
123
130
89
58
92
107
128
86
138
112
146
67
178
110
58
128
138
96
130
105
105
84
87
91
88
126
119
178
126
77
139
139
97
55
86
56
92
91
171
55
104
127
146
89
178
74
126
119
75
55
124
56
58
69
109
102
118
138
101
139
92
103
146
67
67
67
92
134
103
134
97
119
86
160
124
69
104
111
92
111
111
144
56
77
148
168
79
178
55
123
109
79
122
68
146
92
122
122
122
84
84
56
104
55
92
75
55
55
110
122
126
122
37
128
122
56
92
67
58
139
139
136
144
169
117
134
126
152
147
158
79
101
74
98
101
126
117
92
111
126
92
92
103
86
138
130
92
75
139
122
144
111
140
169
79
109
126
102
123
37
137
55
113
131
104
152
146
134
134
105
138
58
67
105
178
56
56
126
92
111
58
144
105
114
92
111
92
58
81
55
119
55
104
169
192
91
111
104
58
152
127
67
72
74
101
92
58
122
92
139
105
56
56
169
127
104
104
152
138
91
69
55
109
99
122
163
55
126
122
55
92
74
92
117
139
91
123
92
103
112
124
110
138
111
104
92
115
99
122
69
108
55
107
83
74
122
110
37
91
146
67
109
56
105
122
56
146
37
97
146
86
158
178
103
146
69
56
105
69
110
55
138
91
111
110
110
74
109
110
122
37
110
105
92
158
126
67
69
93
144
55
128
123
67
111
58
69
77
93
119
92
110
109
55
126
67
148
148
55
88
108
79
146
67
162
92
111
55
92
74
86
139
92
67
68
122
68
104
92
110
97
79
104
105
92
137
79
139
92
144
169
123
92
92
91
77
67
55
37
92
126
97
144
55
149
105
138
76
138
105
112
138
56
134
93
55
109
110
37
110
104
78
105
112
111
122
152
88
162
80
75
123
139
55
119
68
126
126
100
80
125
83
56
123
58
79
144
110
75
72
92
138
131
152
138
93
92
55
69
92
119
152
181
91
151
99
92
136
101
84
139
158
122
99
124
118
84
55
55
138
55
112
106
89
124
110
37
162
91
55
111
79
138
86
67
127
80
58
58
56
91
105
138
169
108
138
164
56
92
111
127
111
122
37
122
136
92
67
110
132
56
165
104
110
124
140
79
178
99
37
111
128
144
69
134
125
83
129
138
131
106
83
124
118
110
83
67
117
117
134
171
92
138
131
126
87
122
103
68
92
149
126
137
123
37
86
79
132
136
163
109
122
69
148
105
104
86
67
84
92
146
55
178
106
139
92
86
67
67
119
106
105
112
105
99
139
124
104
134
168
146
123
86
103
142
178
110
92
126
79
162
123
86
67
37
138
81
111
168
56
127
102
86
105
67
92
126
67
92
118
110
145
92
92
92
123
37
110
86
92
69
140
122
92
93
148
114
106
127
93
137
95
122
92
104
86
110
152
67
126
122
93
92
158
93
93
74
122
110
144
91
104
126
56
152
58
118
92
126
171
105
111
55
107
108
122
138
138
91
98
148
110
84
138
138
58
139
86
109
68
144
122
105
105
110
93
148
88
111
86
138
130
92
111
67
127
169
55
92
105
67
92
117
132
83
74
92
69
128
77
104
97
68
92
122
95
68
55
102
92
110
124
144
74
55
75
107
58
92
107
180
98
162
146
120
131
138
126
83
99
122
132
104
91
74
110
163
105
110
169
110
93
119
104
167
126
83
75
168
86
93
139
67
93
111
105
58
78
99
126
72
55
134
109
120
55
118
160
55
178
112
77
104
104
92
92
122
123
103
178
93
137
95
142
99
92
92
164
67
83
108
146
100
140
97
122
77
158
118
110
139
137
37
104
103
93
144
138
122
79
93
77
152
92
104
111
148
92
122
142
119
139
93
56
104
122
68
146
146
104
144
110
152
123
68
118
129
144
104
79
178
168
126
75
105
126
105
104
56
83
178
122
115
138
92
74
92
110
58
86
105
91
95
109
56
92
79
111
114
101
104
138
126
152
107
56
105
111
103
91
105
93
138
144
138
58
122
58
84
122
67
169
58
67
122
122
55
137
98
56
147
126
78
111
138
37
107
91
69
92
132
92
110
56
79
148
67
89
67
146
178
56
104
37
139
92
84
169
92
134
123
126
128
126
165
105
122
104
140
74
144
55
121
124
135
152
128
99
178
92
96
128
106
58
67
122
55
123
105
92
91
128
75
104
119
138
92
138
92
140
101
75
104
144
117
126
91
152
114
89
169
55
122
104
67
114
139
104
75
107
126
67
104
69
55
122
55
140
105
99
103
84
146
127
146
55
79
144
67
69
67
86
58
147
98
58
104
101
122
55
104
92
126
67
37
124
126
58
37
123
120
110
126
55
101
99
105
126
126
138
127
134
138
132
55
139
69
109
140
69
55
68
126
92
99
110
109
58
104
130
104
122
109
138
164
122
106
115
123
110
146
147
178
139
97
69
99
95
55
130
128
136
67
139
138
105
105
122
123
55
106
92
92
131
158
37
111
152
93
88
138
103
105
134
138
92
95
139
98
93
110
92
138
92
56
138
105
128
77
144
127
56
140
120
99
55
199
94
110
132
56
56
105
127
145
92
122
105
98
167
55
99
105
158
100
171
55
169
102
67
93
138
105
126
92
91
99
123
110
110
68
74
130
122
127
134
171
110
138
111
128
130
67
162
120
101
55
55
92
120
117
91
139
69
110
104
110
93
83
122
146
111
55
102
103
117
128
107
37
91
104
122
146
91
104
127
126
92
140
123
55
105
37
125
140
92
84
129
101
149
56
83
124
127
122
178
93
84
122
152
92
105
69
93
138
109
105
79
105
127
152
86
127
178
152
126
180
91
92
100
117
56
102
91
126
80
152
138
106
122
67
121
140
138
180
118
101
122
123
104
56
139
99
73
114
140
55
58
92
138
93
92
127
37
138
69
126
96
105
92
130
110
99
92
93
134
178
113
56
56
104
69
86
124
134
144
146
138
56
130
104
93
55
105
138
74
80
105
134
83
55
158
128
126
158
131
74
122
110
128
89
75
107
144
104
92
105
69
92
83
74
68
37
138
123
122
128
112
79
58
126
169
134
67
92
122
127
138
117
123
123
99
126
124
126
79
77
131
56
134
56
67
110
74
58
68
123
55
106
99
104
126
119
122
110
110
55
104
138
178
178
146
110
96
171
93
55
126
69
103
128
93
92
139
148
119
92
79
122
98
138
126
144
56
99
104
55
67
84
126
145
104
79
69
99
110
107
180
93
118
77
58
126
119
151
124
123
92
37
97
58
152
86
91
67
139
56
139
92
56
86
138
103
89
103
118
124
105
77
56
97
67
152
92
67
146
67
119
158
105
115
86
83
136
75
126
67
56
56
67
134
122
100
91
148
69
105
110
55
99
111
89
178
99
86
92
102
110
115
86
126
132
138
138
124
92
119
92
91
56
104
146
55
160
126
178
146
119
152
126
37
146
119
139
123
93
55
151
123
138
93
37
103
138
107
139
146
104
110
139
95
75
92
56
79
105
92
67
105
120
122
111
126
110
37
130
74
96
169
138
160
101
112
171
104
107
92
92
99
93
169
77
128
84
117
67
140
126
79
138
123
144
79
105
143
127
122
92
131
144
92
69
83
111
122
37
103
126
126
91
107
169
68
55
122
139
122
129
104
55
58
105
99
67
121
97
92
107
126
146
99
91
84
126
171
110
78
146
101
122
122
92
58
92
92
135
122
146
104
67
126
68
111
138
92
123
91
68
93
104
123
92
55
98
84
114
171
107
139
178
149
61
104
104
55
56
169
138
92
37
104
178
114
169
110
107
130
142
103
87
169
92
122
128
138
75
178
55
56
139
105
111
105
148
146
131
122
92
110
68
124
122
127
56
138
69
152
102
111
126
148
104
105
55
37
119
55
178
130
55
144
138
122
135
79
124
37
123
74
68
148
123
128
110
120
148
126
67
103
110
128
122
138
112
139
122
131
69
125
136
81
152
103
98
106
125
105
92
58
148
91
104
99
119
134
55
111
152
128
137
138
56
124
92
144
112
72
37
144
89
105
55
58
134
144
105
107
122
146
89
112
132
92
132
92
111
58
93
122
122
180
178
103
152
134
73
110
92
168
105
74
99
109
92
55
99
146
86
180
83
158
126
127
110
68
111
126
55
126
105
67
124
67
37
75
67
69
93
89
92
178
139
55
130
56
104
144
86
92
127
55
118
92
105
107
55
55
122
58
58
92
93
55
79
130
92
126
86
144
110
146
180
128
160
92
104
171
93
126
112
101
138
126
109
55
122
92
140
37
152
156
152
67
55
110
110
105
69
110
132
93
75
91
178
110
110
83
144
75
124
55
171
67
169
128
104
89
124
126
127
56
178
37
92
110
110
140
92
156
55
128
68
56
104
55
91
55
67
99
92
56
104
93
146
149
115
145
67
138
37
89
68
140
132
92
120
113
92
141
104
122
55
169
92
138
89
139
86
146
126
105
79
108
83
67
144
105
107
149
127
55
126
104
67
100
92
134
140
79
127
126
106
69
119
92
91
138
110
92
105
111
145
73
111
128
124
104
67
109
58
124
108
128
122
103
112
105
138
74
122
56
101
124
122
80
56
144
139
105
169
104
68
128
128
104
167
106
92
91
178
55
55
67
144
55
139
121
111
103
140
55
146
104
119
58
55
74
97
118
160
105
58
79
105
139
107
109
93
138
127
69
124
96
56
105
104
101
138
92
138
110
99
67
67
93
110
56
110
84
55
142
119
55
111
58
93
145
130
140
114
122
105
146
86
144
112
178
122
138
104
79
93
55
127
95
128
84
105
102
105
87
55
139
178
77
67
169
97
128
120
134
146
92
55
128
126
68
100
126
56
138
139
127
110
55
55
89
97
55
103
93
105
168
67
145
126
104
56
67
92
92
106
84
105
127
104
67
99
119
138
56
95
83
67
77
106
122
134
84
67
144
55
126
164
140
67
69
55
93
163
138
92
108
122
69
146
99
119
101
110
139
122
55
110
126
104
112
122
144
37
56
127
74
178
98
169
37
124
127
134
55
104
127
67
105
130
107
69
55
95
68
56
110
114
106
159
163
93
89
107
134
122
104
140
110
55
105
109
111
91
92
79
165
151
67
152
171
55
69
123
56
79
79
67
98
139
139
127
67
128
110
132
74
110
56
112
56
120
135
55
86
105
92
178
107
105
94
107
92
110
58
110
152
107
55
92
69
67
109
117
55
136
92
101
131
104
58
122
93
93
122
122
126
92
165
131
92
92
138
102
146
118
83
160
122
55
93
167
127
95
139
162
37
124
103
74
105
128
119
55
92
106
152
97
169
55
67
92
119
122
93
103
169
67
126
86
81
93
127
93
160
55
55
93
138
108
105
146
148
126
122
178
104
131
37
171
103
110
122
104
109
69
163
111
108
146
142
37
55
111
92
178
168
130
127
122
146
92
91
171
110
103
142
86
126
134
55
134
55
122
91
92
95
162
110
58
160
67
55
79
69
128
92
56
152
146
122
58
128
117
144
126
134
163
86
86
69
119
67
105
92
97
171
129
138
92
110
69
93
92
37
55
110
146
138
67
119
79
140
114
110
178
104
107
74
139
56
117
91
139
139
126
158
111
134
37
92
171
162
37
127
77
122
138
127
138
91
107
75
79
127
144
128
92
160
91
112
67
79
58
67
79
92
126
152
178
152
55
158
124
99
130
93
92
137
110
93
146
67
110
148
105
130
122
131
55
67
162
123
114
92
92
171
126
122
92
67
122
58
128
139
110
105
122
56
148
104
136
97
143
93
55
122
110
98
67
105
140
67
109
92
110
156
126
110
110
67
93
93
139
126
180
103
139
123
109
83
143
126
56
104
92
88
92
67
92
132
56
93
139
74
67
106
123
140
110
61
156
99
128
97
146
104
151
80
146
74
55
178
37
122
105
104
105
122
58
169
119
74
68
122
92
102
94
99
91
134
144
99
121
124
146
86
92
138
122
123
128
78
83
79
55
92
79
93
119
122
37
91
92
138
110
89
110
110
126
117
134
92
75
79
93
102
123
144
132
165
92
117
77
104
152
86
110
92
98
69
110
86
75
140
126
169
92
92
130
122
126
148
101
55
104
134
126
122
110
93
168
138
37
110
87
105
122
67
107
109
122
81
135
132
56
103
134
55
118
86
100
129
55
109
110
67
92
104
103
56
110
110
58
55
180
93
122
134
180
152
93
110
58
56
126
178
79
73
144
122
146
105
122
105
156
136
105
105
152
55
110
37
67
178
67
138
105
123
58
148
122
89
119
67
107
138
158
68
137
92
123
146
91
98
92
142
92
99
92
144
56
110
55
91
104
138
83
168
110
80
56
92
140
104
55
110
55
86
134
110
84
146
92
69
80
86
56
99
139
77
55
136
130
68
139
92
102
55
37
127
110
126
89
105
67
126
37
138
169
93
108
67
75
140
89
83
141
99
127
178
122
128
88
86
83
126
144
109
126
110
69
79
126
55
67
55
134
56
92
109
114
118
55
55
92
121
79
99
139
55
105
55
139
138
134
86
119
169
140
145
107
128
92
118
122
122
110
105
126
104
112
77
104
138
138
92
103
147
112
126
97
56
109
92
67
108
86
167
138
69
119
56
163
92
123
68
103
67
160
134
167
118
58
109
123
93
91
149
56
146
93
74
118
138
123
148
138
164
92
84
104
97
136
138
130
122
104
104
128
122
68
104
134
110
92
110
122
112
139
146
55
69
112
58
122
86
74
110
104
138
110
138
103
80
99
56
86
126
55
93
55
104
127
99
127
56
93
56
75
118
171
111
83
105
92
107
111
148
134
128
104
122
92
104
122
105
119
178
92
58
77
58
67
56
123
67
100
178
158
139
75
105
105
77
58
92
92
132
99
56
126
69
126
162
122
56
113
92
110
75
162
169
56
122
126
178
55
122
92
134
92
110
92
86
69
122
163
123
135
77
93
74
103
67
79
164
98
68
101
152
122
110
138
134
122
164
132
105
83
103
110
178
79
79
67
69
158
110
122
89
110
111
92
139
110
93
138
104
116
68
138
139
97
77
104
140
148
139
112
152
136
98
75
55
118
127
100
122
37
122
119
139
141
114
55
79
111
58
123
123
92
55
178
171
110
77
105
105
169
132
92
127
55
105
81
105
127
55
99
68
95
92
178
131
91
144
171
79
92
128
105
105
104
110
141
116
138
180
122
98
104
146
79
149
126
110
171
91
92
55
103
89
114
109
55
103
93
119
55
139
92
152
144
105
122
138
69
111
79
91
104
55
171
93
152
130
92
77
134
91
114
86
146
109
69
83
72
67
91
119
140
92
139
69
136
99
93
83
37
105
93
146
67
119
135
138
94
128
93
122
99
119
130
117
104
105
138
109
107
146
77
105
67
128
127
55
37
178
122
169
110
91
178
169
69
152
67
123
69
105
58
197
122
105
145
128
93
107
122
111
110
92
126
92
126
123
169
128
152
105
105
93
106
91
92
128
91
144
138
132
110
122
56
101
105
138
37
55
110
106
92
89
138
56
117
135
110
67
168
189
138
93
128
139
104
105
98
84
92
56
106
55
110
165
77
126
137
138
37
146
55
58
146
92
122
92
37
69
69
87
92
139
68
93
144
56
92
91
104
122
55
37
158
55
55
100
113
84
178
126
56
105
138
55
55
110
105
134
145
87
58
93
139
117
138
75
67
110
148
138
178
178
92
86
37
178
105
58
163
105
55
96
115
110
69
132
55
56
136
67
110
197
122
169
102
122
123
55
67
111
92
122
138
37
92
137
119
80
105
91
121
110
119
128
37
99
105
169
37
158
139
131
92
37
37
67
110
138
104
67
105
126
92
56
55
122
142
37
126
131
119
122
152
110
112
123
77
58
168
139
93
105
120
92
98
77
105
127
109
79
104
109
55
109
144
110
56
169
91
156
56
93
37
81
138
95
89
126
105
99
162
68
83
104
67
109
128
138
56
121
92
91
152
117
109
115
111
83
134
92
162
140
131
138
104
77
37
79
146
118
91
105
146
98
69
92
132
122
55
105
123
122
149
138
140
107
110
77
149
114
58
86
91
105
136
37
112
139
92
92
56
67
75
146
99
146
79
75
134
126
119
138
55
67
92
92
92
139
101
132
124
78
123
104
122
123
67
150
178
79
134
178
91
61
137
108
111
138
37
92
148
37
138
100
122
58
105
110
171
92
110
97
128
119
92
92
75
146
138
111
55
142
131
67
77
67
111
92
130
58
56
92
146
92
128
146
145
126
92
55
75
138
122
37
92
139
108
105
139
86
127
37
128
92
120
77
178
37
171
122
91
126
127
69
107
144
92
93
99
139
146
146
93
105
139
120
138
146
153
87
102
122
134
104
55
105
92
93
92
178
55
68
152
91
83
55
128
135
114
93
58
99
119
169
109
163
122
122
92
123
145
169
110
93
144
111
92
80
83
55
146
169
122
136
122
92
129
108
92
109
92
138
152
104
104
164
122
68
127
55
56
93
110
110
139
92
145
131
138
92
127
56
101
105
84
143
123
69
109
105
87
92
122
79
56
180
138
67
138
92
98
67
92
37
37
104
111
92
104
152
122
168
126
55
110
158
114
119
110
117
93
92
127
58
104
148
93
180
105
140
110
55
67
93
126
138
93
126
110
168
88
146
127
58
148
134
104
79
75
69
91
94
92
92
128
124
131
122
81
120
114
169
69
93
55
122
92
55
69
146
55
138
122
109
89
138
112
129
128
130
171
156
104
117
100
105
124
89
58
128
140
92
127
127
93
112
126
55
110
92
127
127
104
104
97
79
80
69
37
123
178
138
117
37
69
145
142
92
108
126
178
74
99
130
105
77
148
129
92
92
91
67
136
98
103
129
93
92
104
92
138
55
94
77
180
179
91
138
128
91
107
92
103
68
119
93
93
104
168
104
122
139
126
131
110
101
109
144
67
124
55
134
152
144
122
96
105
67
107
169
110
105
55
148
55
110
77
139
68
92
188
92
92
37
74
136
132
144
37
58
55
93
67
128
37
146
58
86
55
67
127
71
119
86
146
112
127
91
74
160
126
92
134
55
142
55
122
111
123
37
107
91
152
55
105
111
178
105
86
105
67
152
68
91
55
139
144
126
149
127
110
69
140
110
92
139
111
110
139
102
92
56
69
126
128
112
67
55
105
91
169
92
75
104
93
140
93
92
97
136
162
55
123
122
138
113
55
55
160
55
110
55
125
110
122
158
93
178
122
128
171
88
106
105
138
146
167
99
93
91
104
74
55
111
142
56
144
103
115
37
171
68
77
168
119
108
69
55
37
130
148
132
105
127
37
126
128
148
91
92
93
74
79
171
105
127
105
149
128
110
75
151
92
58
101
104
126
105
37
116
122
169
79
77
122
55
138
123
138
129
104
37
130
92
105
98
56
129
89
152
79
56
101
80
86
109
111
55
136
160
138
137
146
138
163
171
93
91
86
105
127
136
67
93
79
56
145
126
127
122
139
55
146
78
89
91
108
134
91
144
97
37
37
178
104
79
56
126
93
67
68
112
92
122
162
55
56
108
103
92
55
104
97
37
135
92
93
126
109
104
83
152
178
168
77
110
152
107
122
109
130
37
107
163
110
105
122
103
55
92
77
92
142
86
55
102
102
77
109
139
104
124
146
55
128
92
105
139
105
79
93
118
56
83
79
148
139
92
37
142
119
122
104
92
92
55
86
124
126
163
108
94
58
56
178
163
132
168
168
122
134
126
120
111
129
126
136
86
64
104
122
86
144
83
37
55
55
123
127
171
91
92
55
124
100
69
160
69
79
117
139
74
144
75
128
139
55
178
61
158
140
100
58
138
138
58
138
107
122
132
67
144
55
107
181
93
105
122
103
67
117
138
37
83
124
110
110
139
56
126
105
105
126
178
56
178
158
104
149
139
68
168
146
129
93
104
130
122
127
107
122
86
37
84
105
93
92
144
67
130
67
180
67
56
131
77
83
158
58
104
37
182
56
122
109
58
68
139
55
105
111
77
74
104
55
122
105
152
104
55
78
109
67
98
91
118
89
83
74
146
92
124
56
152
192
92
124
67
139
138
153
75
79
110
92
77
110
119
58
67
93
84
56
37
126
91
105
77
131
117
134
138
67
126
37
92
84
138
139
58
146
126
118
178
105
110
105
134
55
109
152
125
92
139
105
92
92
56
58
122
107
138
119
128
92
135
178
88
126
158
100
105
79
134
169
127
67
138
163
105
105
83
146
92
126
126
152
77
67
80
107
93
134
138
79
55
111
37
145
140
138
126
81
122
140
178
109
79
113
138
131
78
128
55
144
93
92
106
168
114
119
37
93
109
139
169
144
110
162
163
110
37
122
122
126
178
138
97
126
112
179
99
128
55
138
156
74
105
37
165
110
152
92
126
92
148
122
55
55
113
77
122
108
93
152
122
92
108
126
105
92
56
105
100
110
178
167
123
104
126
110
101
92
75
92
122
169
160
102
122
92
55
67
83
92
167
122
83
93
88
124
56
79
37
144
126
37
126
91
132
138
152
92
148
92
37
122
134
92
93
126
123
138
140
55
105
121
122
138
137
126
122
96
86
126
126
104
92
163
55
55
126
152
92
94
160
77
139
140
109
86
169
92
146
122
92
98
99
92
126
92
67
93
92
119
127
180
104
104
109
178
111
102
139
80
92
126
108
126
123
58
178
67
98
55
92
92
119
148
123
139
91
105
55
55
92
55
197
92
55
93
56
180
123
110
92
97
56
92
92
121
144
139
37
92
56
93
149
114
105
127
122
127
105
128
126
163
126
55
105
86
91
104
144
138
122
55
134
67
91
37
92
128
109
77
104
126
37
138
123
117
134
110
144
131
55
138
92
55
67
69
110
121
122
98
104
131
124
134
98
128
93
146
92
118
146
144
126
92
92
126
72
152
152
127
119
104
123
92
92
56
69
58
93
93
105
125
93
148
99
110
169
67
178
126
77
110
117
102
104
128
83
103
137
56
37
142
55
122
131
110
110
75
56
103
126
75
84
139
114
91
118
76
55
114
92
56
168
122
106
37
109
126
125
56
92
126
163
56
164
119
111
139
88
118
80
138
131
144
93
136
114
110
138
100
124
135
111
178
132
123
105
127
134
122
55
56
148
56
107
127
148
111
97
128
92
105
105
107
138
131
81
92
92
144
128
58
55
56
146
119
137
140
93
122
139
110
148
92
105
114
160
86
127
122
107
163
132
105
110
56
109
55
55
56
136
67
105
95
37
139
68
105
92
138
56
126
37
122
67
139
67
123
56
104
77
178
58
105
99
105
92
152
139
106
75
110
100
89
99
87
125
105
92
107
138
127
140
122
122
140
110
99
144
99
103
117
177
127
124
123
105
100
178
119
58
69
136
131
130
92
119
102
115
131
139
122
101
123
86
99
79
178
58
92
127
123
76
105
104
169
144
122
110
136
55
123
55
136
104
93
135
122
123
138
126
107
55
119
136
72
69
105
140
137
144
93
69
146
88
96
126
104
67
92
79
124
146
92
86
152
161
69
138
92
134
178
110
122
122
67
105
104
92
110
92
67
79
123
79
178
86
112
144
100
146
55
111
56
93
94
89
86
126
134
74
37
92
67
127
135
55
142
77
109
119
103
55
67
152
109
145
124
124
123
37
138
104
117
169
105
124
138
92
97
110
127
110
160
146
100
142
91
168
129
146
98
144
97
93
126
114
92
132
92
55
141
56
75
92
122
134
56
122
74
122
91
84
96
69
92
110
110
103
137
114
152
92
136
106
106
146
92
128
105
89
78
152
126
144
122
74
138
67
127
105
110
139
79
55
122
169
140
55
139
127
169
138
99
171
105
163
110
162
134
118
100
86
84
93
67
118
122
92
118
92
139
67
146
79
132
123
178
56
178
126
126
69
93
77
110
67
139
152
126
111
169
109
105
104
83
128
127
138
127
92
110
140
55
92
109
111
108
144
142
112
69
110
144
106
55
67
67
92
138
139
94
107
100
126
130
110
110
110
55
104
115
128
109
171
105
138
69
79
156
122
158
72
128
56
112
152
144
68
83
152
110
55
122
152
94
132
126
152
105
93
122
67
95
109
93
180
105
136
126
87
126
138
79
77
140
123
87
92
55
93
98
171
110
79
104
158
114
146
126
130
124
137
127
83
146
126
55
55
156
67
84
67
110
69
110
93
105
126
121
97
152
99
75
37
69
115
92
91
93
98
79
67
99
105
121
123
110
148
55
67
69
136
84
138
55
139
69
58
92
178
135
108
105
87
37
104
67
74
140
122
114
110
84
69
110
58
58
77
127
118
97
128
55
120
126
58
93
102
67
104
55
122
126
37
119
123
134
126
138
105
75
55
68
111
114
138
74
135
151
86
56
79
122
104
122
56
144
134
118
171
138
92
93
124
105
110
67
104
57
109
37
104
138
75
93
56
86
92
101
126
104
126
55
105
105
144
92
148
126
74
58
55
105
109
55
109
93
56
92
105
138
69
126
178
84
126
110
178
105
55
55
145
105
138
110
123
127
93
56
92
99
77
139
111
67
120
110
132
91
93
85
110
117
115
114
115
86
142
101
91
110
67
171
91
92
131
130
77
69
102
138
152
69
37
104
164
178
122
144
68
118
137
164
92
58
92
119
58
115
79
122
138
67
110
145
69
119
92
55
124
92
109
55
131
104
37
138
122
136
58
101
112
144
107
92
93
67
124
126
146
110
74
91
67
106
67
77
107
104
127
55
58
68
100
56
136
55
91
56
160
55
110
92
180
160
93
119
79
146
92
139
105
74
56
93
138
92
109
93
92
140
139
138
169
92
69
122
122
139
126
56
126
75
126
105
55
77
75
138
103
87
126
92
86
110
92
98
158
131
93
83
69
169
55
55
122
129
152
84
74
136
152
119
92
132
71
69
92
119
122
110
108
104
109
178
139
152
138
92
88
126
110
103
111
126
37
132
134
136
92
56
138
104
92
37
74
67
145
75
105
169
37
113
138
37
102
139
114
69
120
103
79
56
112
167
110
56
86
139
55
169
69
136
128
114
119
92
126
93
105
111
119
139
169
104
78
93
86
67
137
110
56
139
169
111
56
136
92
123
67
68
128
139
84
105
102
75
55
199
103
92
92
56
138
128
138
146
171
103
122
130
74
105
56
119
79
139
108
109
113
56
136
122
128
112
122
199
110
122
77
144
139
110
93
69
56
105
110
92
158
138
92
92
178
120
139
122
105
138
55
171
146
152
91
119
58
56
122
123
91
93
93
146
104
91
122
69
149
138
138
138
99
123
171
128
124
144
100
99
55
67
55
110
56
178
188
107
86
67
152
105
111
122
140
58
168
131
67
58
104
74
67
171
58
110
110
169
105
144
114
56
67
67
150
91
158
144
58
92
152
106
111
91
139
107
67
55
92
92
91
74
37
99
104
130
167
178
69
107
140
55
92
104
89
105
119
114
56
91
77
77
104
131
71
67
79
93
149
67
122
56
92
144
93
107
86
118
81
92
67
69
127
111
126
105
56
74
86
74
56
109
146
37
37
164
74
37
128
152
105
83
58
134
152
126
55
126
37
152
79
178
178
91
134
103
132
113
111
125
105
105
128
91
37
119
55
55
96
104
56
58
127
138
105
84
56
67
122
126
178
93
86
92
92
86
67
56
92
94
138
181
55
144
145
122
126
104
92
104
169
68
127
67
120
93
110
64
114
134
178
56
140
69
112
138
152
105
144
131
126
138
92
77
109
98
160
110
93
117
92
93
93
93
92
67
102
55
67
178
111
67
137
124
93
95
75
92
67
92
55
138
158
93
146
67
130
104
58
138
126
119
55
56
171
99
123
92
91
145
138
122
91
132
105
56
139
69
61
105
120
163
55
56
105
58
138
93
109
56
67
105
180
103
105
122
143
130
104
178
138
69
103
138
178
139
120
131
79
163
67
103
138
169
165
77
148
144
75
99
124
101
105
145
162
152
138
138
104
92
105
127
105
56
67
91
122
138
92
110
136
122
178
93
146
105
127
86
67
92
56
107
139
127
199
105
86
99
160
122
149
119
146
123
56
178
134
145
138
92
119
119
115
92
84
127
94
79
123
93
55
93
144
126
104
104
67
99
126
121
110
105
106
83
83
55
107
140
146
92
79
93
105
126
55
122
37
114
126
92
126
127
126
73
105
101
131
67
122
122
98
92
158
94
128
93
178
98
75
86
92
131
126
92
93
152
74
119
104
127
92
69
130
75
67
92
84
91
103
122
104
67
127
87
138
167
55
169
86
135
79
104
124
127
138
160
55
112
139
146
110
74
126
152
104
105
84
126
109
152
67
104
77
56
144
92
105
109
74
105
93
144
84
122
93
68
146
162
171
105
55
69
144
104
152
92
79
92
178
178
114
119
104
180
92
91
56
92
97
138
122
152
84
138
127
140
127
144
134
99
104
152
111
182
86
92
93
77
77
128
152
74
83
118
75
86
122
127
119
74
122
55
104
136
67
93
55
110
74
108
55
56
163
128
139
111
122
126
69
128
94
56
56
138
144
106
144
110
92
92
110
169
126
67
104
122
111
119
125
129
78
94
101
164
138
122
126
92
108
144
129
55
56
146
105
139
114
139
138
58
148
55
117
69
79
78
139
140
93
93
55
123
91
178
138
105
107
56
111
152
56
77
77
110
105
129
109
124
127
131
144
134
163
67
55
103
37
56
122
56
134
92
92
74
127
55
67
104
56
103
140
105
37
56
55
126
37
74
92
122
123
58
75
136
138
86
92
140
110
93
146
168
74
110
55
88
105
105
131
97
134
57
123
138
168
76
146
126
96
141
130
109
55
77
178
138
126
144
77
138
127
141
119
146
127
92
99
123
97
110
110
69
123
127
92
109
138
55
92
92
144
139
55
56
81
140
105
69
110
128
67
88
122
122
92
97
122
126
94
37
105
126
117
128
162
123
55
127
114
74
164
92
83
55
156
94
75
132
118
92
105
178
93
97
126
92
104
152
75
67
125
93
144
119
56
77
55
127
140
83
152
123
55
134
92
104
152
84
108
138
122
58
67
163
105
67
88
101
123
92
135
92
67
86
83
92
92
114
92
126
92
93
56
92
56
102
37
93
139
67
108
130
138
84
169
178
164
126
67
123
178
128
162
130
67
98
105
92
130
144
104
138
99
126
110
92
144
126
37
138
152
138
75
55
110
93
56
119
132
126
78
122
67
98
92
146
144
93
162
126
104
55
56
55
56
80
103
93
139
119
102
122
67
92
107
105
119
152
58
144
55
146
109
107
92
56
55
94
99
67
139
92
124
104
126
199
111
92
55
105
56
77
120
138
99
56
139
97
91
55
138
139
55
147
169
168
107
85
127
156
144
101
107
178
55
158
92
92
99
139
91
58
126
92
67
95
114
97
104
138
92
169
55
110
99
67
111
122
110
58
92
92
93
105
127
55
67
134
111
124
37
99
92
92
67
101
107
92
103
55
115
97
92
111
146
99
110
137
105
152
111
83
37
55
123
37
55
178
178
138
111
134
126
55
110
92
128
56
69
99
123
67
119
105
74
110
55
92
72
98
122
127
127
105
103
128
56
105
95
152
146
114
91
134
138
67
152
109
98
55
131
95
110
110
56
132
72
130
178
67
105
67
102
144
152
109
97
163
139
93
106
140
55
74
86
83
92
77
112
83
67
79
152
89
126
105
74
55
113
112
178
123
139
67
163
92
91
83
122
86
128
104
83
86
169
127
114
79
67
165
105
68
122
122
107
180
37
103
178
168
92
69
182
105
92
104
111
139
97
106
93
148
178
132
37
93
107
139
140
67
178
88
104
92
104
67
169
135
171
89
110
69
92
137
55
105
79
99
86
110
138
111
164
67
77
127
105
147
118
55
168
92
110
160
149
149
112
56
74
139
69
114
120
127
128
130
67
111
110
127
86
127
110
152
136
67
105
104
100
94
67
110
127
58
87
111
100
128
67
139
93
111
86
104
92
146
56
138
104
152
67
144
74
91
132
75
114
132
37
106
155
110
93
122
178
104
124
139
130
55
122
127
99
74
141
75
124
93
91
122
139
167
86
103
56
107
126
146
136
37
109
114
107
91
118
104
110
92
178
126
146
162
93
92
152
178
86
110
105
92
75
126
67
169
92
126
72
137
112
139
138
93
56
106
152
55
58
69
164
92
55
126
84
138
79
128
126
74
77
107
140
37
77
93
104
131
55
122
58
152
89
163
108
107
75
131
122
128
139
86
37
104
55
146
97
126
37
110
88
107
152
55
37
152
55
168
130
92
92
138
120
86
127
56
92
122
69
122
119
158
126
92
178
111
55
110
37
86
69
122
122
92
110
110
56
93
111
110
88
178
67
92
130
37
75
37
134
93
144
109
75
56
127
117
152
55
93
150
110
119
152
109
93
128
105
92
178
123
105
92
139
152
130
105
79
55
92
55
109
144
126
56
101
134
138
138
119
139
151
109
123
138
55
149
69
112
126
138
55
134
104
37
104
107
139
110
103
105
101
99
171
122
58
104
58
123
178
110
137
109
92
77
104
95
55
55
98
104
92
107
123
106
84
55
134
126
139
103
93
92
92
93
122
107
77
104
106
150
99
55
109
92
100
105
122
139
126
92
110
77
92
92
107
103
160
55
69
93
122
55
91
97
67
117
152
134
128
127
140
112
132
127
144
140
138
67
104
127
146
146
109
138
110
122
138
77
138
67
67
55
110
109
37
130
100
55
56
139
75
92
128
127
127
56
177
93
55
122
58
122
77
105
111
69
180
58
171
126
124
118
75
107
55
150
138
146
91
130
178
154
55
37
93
146
99
68
123
134
105
55
126
105
109
56
110
107
110
132
128
92
110
58
128
105
93
58
126
93
139
56
69
123
55
123
55
146
69
75
104
108
110
92
55
55
105
139
67
168
178
79
55
111
111
139
169
132
92
122
68
146
74
167
110
122
105
146
104
69
146
58
126
162
55
104
110
86
122
110
138
113
92
107
138
92
154
69
132
67
122
93
56
92
144
178
109
77
91
126
86
92
178
69
127
104
77
152
139
37
92
148
128
102
121
158
122
152
97
117
67
122
104
118
55
56
152
107
83
134
87
89
79
77
93
37
132
110
180
146
77
140
131
56
118
169
111
99
91
139
119
84
92
99
92
105
169
115
91
55
92
103
137
123
139
134
138
136
147
112
104
138
122
134
128
127
99
98
78
124
138
92
109
79
93
74
58
109
106
55
55
105
107
98
131
128
148
139
75
117
78
126
93
75
171
169
162
97
83
139
131
104
37
81
55
105
37
89
69
178
105
67
122
83
122
128
55
56
110
122
92
122
55
144
122
144
55
92
56
84
69
130
37
111
144
152
118
104
75
169
148
37
147
92
104
92
110
109
92
119
92
86
130
126
112
124
99
110
55
144
76
68
138
152
140
146
92
126
122
105
138
169
178
56
105
127
104
144
86
96
124
145
56
119
105
99
55
138
83
77
152
37
139
58
99
99
56
105
122
122
118
140
126
114
110
55
55
93
127
130
134
55
144
55
138
105
67
144
67
91
93
144
123
148
92
128
98
151
56
55
126
69
74
105
124
92
77
86
103
92
106
122
122
58
178
169
98
93
136
92
104
134
107
92
110
106
95
55
146
111
72
163
37
139
124
92
101
126
109
78
122
105
37
77
68
37
103
67
114
110
180
107
126
146
103
55
107
169
104
138
105
110
165
122
126
37
119
123
146
139
56
122
92
114
105
125
77
109
104
171
165
123
105
88
73
107
110
138
92
55
122
131
69
102
128
139
178
56
126
124
130
67
122
89
128
130
87
134
178
67
99
58
105
126
128
67
92
92
139
37
126
107
122
144
168
84
140
84
93
92
118
67
136
110
114
136
93
134
110
122
122
122
86
104
134
92
97
92
108
58
67
122
144
122
131
114
56
104
167
67
110
77
180
110
124
105
128
110
67
99
130
147
127
146
109
81
126
81
92
86
67
128
105
105
126
69
148
178
67
69
99
140
110
92
67
124
110
105
92
178
128
89
122
92
122
75
109
55
105
146
178
122
131
91
139
158
167
146
127
91
128
122
105
138
111
105
127
93
93
127
107
93
83
169
55
105
107
110
137
104
55
58
93
55
132
93
139
178
37
119
128
58
61
87
144
56
95
78
104
146
37
37
67
110
55
92
92
92
104
86
138
94
140
107
56
124
126
156
140
158
110
126
93
77
67
127
97
93
105
79
111
122
108
169
126
104
96
118
146
55
67
178
114
109
165
163
122
120
105
152
79
92
74
77
93
110
111
93
159
67
138
163
139
100
111
97
146
140
92
140
148
108
91
171
56
146
92
126
110
92
93
144
104
97
119
164
119
123
55
112
91
110
122
120
55
165
178
139
105
146
37
126
131
101
92
105
56
92
141
120
93
110
131
107
132
55
56
56
104
120
67
109
103
55
144
126
85
72
167
67
67
124
56
86
119
58
55
93
105
91
107
123
139
56
134
92
178
99
160
55
55
68
92
79
122
147
111
139
93
122
145
69
98
142
111
127
111
122
122
139
179
92
104
104
91
137
58
105
128
110
104
95
126
119
93
92
122
105
37
74
104
92
110
74
92
92
89
123
92
119
55
37
138
77
69
55
81
138
37
146
122
92
122
126
156
92
84
122
69
140
114
135
162
99
162
55
110
89
123
135
139
37
151
126
92
55
127
105
132
109
110
169
130
110
67
91
152
138
146
55
126
136
56
69
98
67
158
127
89
91
92
71
158
110
37
138
178
69
103
58
37
146
171
111
58
97
105
55
123
93
84
130
104
178
109
104
98
97
102
109
121
152
132
37
144
134
100
126
55
138
97
56
139
92
86
107
178
92
67
109
37
55
74
67
83
74
37
83
171
127
93
144
88
37
84
113
92
110
79
122
141
67
92
93
99
56
79
178
138
86
111
178
127
122
136
92
37
104
96
92
56
134
55
105
126
130
67
78
126
81
107
122
56
74
140
126
122
162
84
79
99
93
97
165
67
106
139
67
131
104
102
58
67
55
56
56
146
127
110
146
93
105
67
56
146
86
140
92
67
139
130
77
56
128
68
92
100
109
144
123
128
164
100
92
56
55
103
110
126
144
146
58
92
80
92
138
128
120
55
92
169
97
127
162
75
86
55
56
92
97
140
132
92
69
37
126
56
127
104
142
122
67
115
119
169
123
122
127
102
109
104
131
37
107
104
145
37
138
103
55
75
37
105
164
122
127
75
74
92
99
55
140
74
139
138
93
138
92
128
67
92
99
58
74
144
92
169
110
126
55
78
110
119
103
104
130
109
77
110
92
114
126
107
110
37
178
127
124
86
97
146
92
178
134
163
110
91
55
89
67
135
107
139
109
122
93
105
104
119
110
121
56
124
79
130
92
88
107
115
56
55
37
55
123
77
141
134
91
110
68
91
109
55
139
146
112
79
158
169
107
92
152
110
92
139
139
126
111
75
152
146
123
144
122
77
93
79
92
105
137
93
126
169
91
55
107
127
189
83
92
110
56
55
67
144
67
132
104
104
164
113
126
98
111
128
92
120
127
123
126
126
136
110
67
58
139
117
142
86
83
107
105
88
105
109
126
110
118
122
75
146
128
122
105
67
139
135
91
98
160
68
130
119
92
100
110
139
126
134
89
55
99
98
92
58
110
92
126
92
56
139
104
98
55
106
178
138
114
101
110
117
128
168
84
144
67
58
80
120
138
98
93
75
122
76
92
58
69
77
156
105
110
126
102
148
138
136
141
132
126
162
55
138
56
105
92
124
92
122
77
144
163
86
138
77
138
58
75
122
104
93
92
158
139
163
146
105
107
152
110
126
110
110
110
68
139
55
105
122
138
111
92
67
67
75
127
100
122
92
58
55
103
120
92
139
138
164
68
99
37
56
112
56
122
125
83
107
122
178
180
163
92
89
92
146
126
92
127
126
139
86
100
131
74
127
104
104
74
146
67
55
91
114
56
92
103
86
135
75
100
104
110
109
144
105
119
92
136
92
128
126
55
123
92
92
55
92
122
104
104
91
105
138
69
112
56
127
58
149
134
134
69
136
114
97
110
105
107
103
93
91
58
106
152
146
119
69
93
138
91
139
123
127
56
107
178
144
103
136
168
91
69
105
122
67
110
122
104
178
164
58
122
152
139
92
178
139
169
97
139
178
83
74
165
112
126
105
69
148
119
110
58
124
93
105
122
117
104
138
93
55
110
119
136
111
92
146
92
92
152
67
126
138
99
105
128
55
144
111
110
164
84
127
101
114
152
58
55
75
123
55
110
126
132
126
122
69
79
55
67
68
77
126
56
138
122
69
165
119
122
55
126
85
138
178
37
37
138
158
178
91
178
178
110
126
144
55
103
132
86
129
134
199
110
104
158
37
152
165
138
146
138
110
93
105
138
55
55
128
171
92
152
121
93
122
117
144
86
89
69
79
152
111
81
102
92
67
105
178
112
92
119
108
99
58
58
123
152
86
162
37
92
160
55
56
100
107
58
146
79
67
123
138
69
92
101
37
92
138
58
92
180
104
122
97
55
104
92
75
79
110
97
108
101
126
171
37
92
84
74
83
77
56
88
119
99
132
126
67
78
77
126
74
86
103
145
110
92
132
55
103
110
67
110
112
75
56
164
104
101
127
84
139
114
86
92
110
144
89
92
122
96
146
100
92
139
77
146
80
136
91
130
100
119
128
56
152
83
126
118
144
37
149
79
128
144
134
130
97
112
158
134
135
126
109
67
139
103
67
182
178
139
123
154
142
110
105
55
75
79
122
124
55
117
110
149
104
122
138
126
84
68
105
110
103
105
55
138
119
119
114
163
126
56
122
99
92
138
110
74
58
146
178
104
37
93
88
111
55
169
92
74
126
92
107
100
89
107
56
92
147
104
93
102
140
122
126
110
56
58
122
55
130
169
148
122
138
122
74
107
122
111
58
56
111
126
138
110
92
92
105
92
104
101
169
87
83
138
139
105
110
129
163
92
56
128
77
138
163
79
146
92
119
131
124
124
93
56
105
138
146
92
67
55
68
99
75
92
55
110
93
56
136
55
103
55
69
67
127
146
55
128
67
122
138
103
105
110
104
146
110
132
139
104
68
104
104
136
110
99
99
162
134
105
92
55
55
74
93
93
122
103
55
99
164
110
92
167
111
171
118
123
93
77
126
138
138
93
138
89
139
123
67
104
122
122
84
56
110
106
126
107
120
152
67
110
95
112
37
92
55
111
100
67
110
55
165
102
105
107
178
140
79
105
140
114
55
77
67
74
69
67
93
104
144
110
146
126
180
152
126
109
92
138
91
86
86
58
92
139
79
115
55
93
56
169
138
56
93
122
86
37
105
74
135
105
93
92
92
67
126
123
104
111
77
105
122
146
171
79
136
122
92
169
103
103
55
122
93
110
55
104
55
127
99
104
178
180
55
124
126
110
148
98
111
105
94
92
136
131
37
41
127
56
58
147
112
55
67
56
158
110
139
92
158
92
58
123
68
69
79
58
169
151
126
124
169
91
37
93
77
56
83
92
127
122
126
67
122
58
86
99
144
104
103
55
104
126
178
92
119
112
110
138
58
92
88
111
75
83
144
68
92
122
105
118
139
91
126
55
69
68
91
122
86
92
103
67
122
67
92
122
125
123
163
109
107
105
138
144
64
110
127
119
140
89
132
122
56
138
87
126
105
104
136
124
91
126
113
138
108
129
122
138
111
127
92
93
89
75
77
126
105
130
131
92
149
73
94
37
105
92
110
107
74
122
115
126
104
119
104
110
79
104
180
132
110
67
110
55
146
128
104
138
93
92
79
138
112
123
92
110
111
55
58
119
55
92
114
105
122
127
129
136
67
102
146
126
104
91
68
127
136
107
95
91
164
92
56
79
128
122
55
109
105
152
104
163
110
83
97
119
103
96
139
138
68
134
131
77
92
94
37
83
109
58
119
69
123
138
69
171
137
110
93
61
127
56
69
92
99
152
98
92
83
77
105
107
98
114
122
55
55
87
140
146
95
104
132
130
138
105
123
55
105
128
99
84
67
168
55
56
105
107
92
110
177
137
55
128
146
77
119
178
126
55
86
124
91
103
131
117
92
92
126
56
92
152
84
86
74
79
121
122
100
138
134
92
141
67
165
142
110
109
110
86
168
122
112
106
109
75
67
142
104
109
58
93
111
69
169
92
144
105
93
91
93
120
58
58
127
128
131
67
110
127
55
56
117
119
146
139
122
121
69
128
68
67
119
163
122
122
117
178
112
122
77
122
148
134
86
112
67
87
138
91
93
55
88
74
58
92
97
87
109
134
55
56
92
56
58
122
102
117
74
114
94
142
122
92
102
126
77
91
55
148
128
109
123
152
94
149
126
129
55
110
105
74
67
93
91
104
152
84
92
128
110
126
77
101
56
37
105
139
100
55
56
67
138
55
86
97
99
56
92
92
67
139
78
178
168
131
55
126
88
95
107
122
103
146
148
126
100
137
106
92
134
138
67
164
122
97
160
101
37
137
104
55
127
122
177
122
139
146
160
107
92
111
92
104
111
105
100
67
162
122
127
178
145
163
130
56
37
93
58
103
55
126
89
111
95
126
69
79
114
139
127
108
131
132
104
147
120
89
75
92
76
126
119
104
119
104
75
92
105
112
158
86
58
114
37
158
138
169
138
55
119
107
58
95
112
122
69
86
126
55
128
123
74
111
138
139
68
111
140
55
86
105
111
92
86
128
104
93
105
142
69
104
138
122
158
178
105
56
110
119
67
58
122
77
127
55
92
128
92
56
83
146
94
85
97
104
78
137
127
104
140
119
127
107
58
118
109
109
178
199
111
89
69
105
152
56
103
178
79
77
140
110
124
99
131
37
138
148
58
86
67
139
55
74
146
55
152
126
104
91
86
67
105
92
83
103
91
126
56
134
79
117
152
55
69
56
144
67
105
92
110
55
122
122
37
103
86
119
126
162
67
93
104
98
98
131
139
122
83
109
93
112
83
138
169
67
102
126
107
140
77
67
55
37
126
122
105
107
110
120
139
79
56
148
91
127
107
79
103
168
100
101
92
124
139
101
92
126
105
102
110
142
93
100
118
122
118
56
37
138
92
153
92
98
56
55
55
146
126
99
138
130
92
122
105
127
117
139
126
103
97
140
104
139
67
142
131
128
120
92
118
55
55
126
107
110
104
122
114
169
111
139
123
178
103
37
103
55
122
104
118
58
158
58
93
126
127
118
105
178
178
103
98
92
67
127
108
37
91
67
138
104
139
56
108
127
164
119
119
126
148
126
132
105
126
84
126
92
126
136
56
99
105
67
119
58
102
92
91
199
126
106
56
92
55
93
103
140
55
55
92
127
109
92
111
119
55
86
55
92
67
92
75
92
152
105
138
122
92
171
122
171
98
99
111
107
140
92
122
92
103
104
86
61
114
37
92
146
139
92
132
107
104
105
126
111
98
134
138
127
104
162
169
93
129
110
69
110
138
171
77
122
178
104
55
139
119
58
92
124
122
56
67
37
67
127
144
139
86
112
104
107
100
92
138
55
105
152
138
140
138
105
120
110
104
134
126
79
105
137
139
58
148
144
101
69
136
100
178
86
138
55
101
92
107
67
152
79
86
120
139
110
119
56
67
114
123
86
89
79
139
112
68
138
104
105
105
178
105
56
55
134
110
58
109
111
144
67
56
127
104
91
144
126
160
146
127
81
104
114
138
114
77
122
67
91
119
103
110
122
122
58
100
130
178
93
138
105
111
67
78
55
88
115
123
107
102
102
93
112
58
88
92
123
69
79
105
146
55
56
160
55
169
110
148
92
126
171
92
144
130
55
84
104
91
114
126
92
167
91
86
120
169
92
105
105
69
122
178
92
178
37
110
69
37
111
105
93
123
171
131
110
126
122
91
101
104
92
122
122
37
131
93
188
110
144
140
58
75
138
115
135
122
104
104
92
55
110
112
93
132
152
113
56
126
92
169
110
105
58
104
128
93
103
56
78
110
105
110
138
138
81
68
105
119
134
92
37
37
108
98
99
105
56
86
123
72
92
110
92
136
111
168
149
128
138
110
108
134
92
138
99
55
67
122
97
134
69
91
178
138
180
134
122
55
93
120
146
86
146
108
122
71
144
86
152
74
86
74
105
122
56
75
192
126
102
119
56
146
125
86
103
107
144
138
55
74
104
91
124
67
37
86
148
75
110
139
138
122
122
109
144
138
136
105
110
144
110
55
92
146
58
56
56
126
146
105
92
67
74
130
110
139
123
110
97
92
110
93
105
128
138
92
101
93
105
134
107
128
122
37
134
127
122
77
137
126
67
139
58
58
110
109
152
105
92
111
110
88
111
129
86
92
101
67
131
110
122
92
130
89
119
95
105
37
75
110
73
151
77
110
110
97
109
152
55
140
107
111
55
126
98
79
115
37
37
104
109
138
92
127
138
83
58
126
110
127
79
110
120
92
55
56
74
123
93
120
89
104
105
55
92
56
134
139
138
92
123
164
86
55
75
79
55
89
110
178
110
104
37
79
67
115
139
148
55
107
100
138
138
112
79
55
104
77
81
178
67
104
169
83
188
102
103
55
138
99
74
162
92
110
79
156
110
92
89
37
96
145
92
105
140
139
107
139
122
58
56
127
101
92
140
110
118
104
56
110
131
93
138
165
91
123
67
77
126
140
79
93
93
120
128
160
55
146
138
92
128
91
86
144
111
79
92
110
104
158
144
55
128
41
69
92
74
146
77
69
110
110
163
138
122
139
109
105
91
131
91
127
127
127
91
110
92
55
132
69
138
68
134
105
92
123
77
89
137
163
92
67
119
93
122
138
56
104
114
168
111
178
128
55
139
103
122
103
110
86
152
99
180
111
68
139
139
37
134
146
108
88
122
110
128
169
152
92
146
128
107
105
87
111
171
117
128
152
75
144
113
79
104
107
146
163
91
105
137
89
55
55
95
148
142
58
55
74
124
140
102
105
110
67
93
126
144
86
86
144
122
92
69
55
111
123
105
56
99
110
144
152
119
148
126
84
55
77
122
135
100
92
79
55
92
67
180
37
56
109
138
128
37
138
79
130
127
56
110
102
55
79
142
146
122
69
122
104
104
37
148
140
105
122
92
37
104
122
130
79
139
93
122
67
92
56
86
144
163
118
95
110
86
55
67
92
91
138
158
146
56
115
109
128
92
118
69
138
104
138
92
55
131
98
110
92
110
142
56
169
122
165
55
139
138
67
122
92
56
112
126
105
134
119
105
104
149
118
55
91
168
69
112
122
138
103
138
105
55
79
100
126
55
92
37
108
91
67
126
140
104
109
105
144
99
74
110
126
127
79
99
128
111
37
119
111
77
137
97
146
56
83
145
124
178
77
164
140
110
92
55
144
58
142
110
131
94
96
91
91
107
56
124
122
127
79
120
67
104
126
119
37
138
126
68
77
124
69
127
137
128
146
105
92
96
104
140
138
169
74
77
105
92
93
122
106
111
37
126
110
104
69
124
139
123
152
104
182
146
103
138
130
139
128
55
91
171
127
112
140
56
89
69
169
110
120
127
139
97
104
96
152
84
168
77
86
146
68
122
69
93
128
122
37
69
128
107
128
111
93
37
97
140
126
163
69
92
79
110
114
79
111
138
138
148
102
93
136
92
92
92
69
105
122
123
91
123
67
104
124
168
37
99
83
105
77
129
178
140
122
105
138
110
138
119
136
146
55
105
122
119
107
75
101
127
130
37
138
91
144
108
126
128
181
136
152
153
122
109
144
163
67
77
138
126
86
99
75
110
92
103
75
100
55
180
124
134
117
148
55
58
171
119
146
117
56
144
56
118
84
77
58
140
93
69
69
122
146
103
118
107
58
180
163
114
58
126
138
104
105
168
128
75
123
122
69
149
93
55
160
56
129
92
119
124
92
122
58
91
122
140
69
120
126
107
123
105
75
37
110
79
75
141
108
107
126
138
110
104
138
122
138
109
119
145
103
110
122
84
122
138
134
128
128
126
145
112
81
110
105
160
80
110
110
178
126
138
110
138
110
93
104
146
93
110
122
110
55
126
138
86
145
79
67
104
178
152
92
123
128
98
144
138
135
93
160
104
122
122
98
148
93
140
55
134
97
111
58
148
119
92
122
134
74
140
83
127
67
58
97
77
99
144
110
149
69
67
56
98
56
77
55
74
58
110
144
110
74
99
110
56
79
115
122
162
69
93
140
96
123
134
56
69
37
77
92
137
128
103
105
126
107
55
126
92
122
140
100
67
105
128
126
139
92
93
79
145
110
103
144
110
142
92
91
110
75
126
122
67
84
111
122
138
86
132
102
55
56
134
119
89
76
162
69
55
115
129
77
123
92
93
105
134
77
92
124
122
103
93
126
79
138
93
139
37
58
126
122
77
105
93
55
123
110
86
122
130
79
56
134
132
97
122
86
92
139
82
110
92
134
152
134
74
81
162
92
69
140
130
169
110
69
67
104
151
139
126
37
99
89
122
107
110
146
144
138
58
122
37
37
105
115
124
110
146
122
111
158
93
134
68
93
127
84
55
105
92
92
37
107
110
92
111
177
123
110
92
58
136
122
111
134
111
56
152
120
178
146
122
180
105
99
93
126
68
92
132
56
125
124
138
55
139
110
158
178
67
97
97
120
55
75
110
104
178
79
55
58
142
127
127
127
75
110
151
119
102
69
89
110
171
92
152
118
77
127
97
68
79
141
103
93
148
127
107
144
146
92
111
124
55
93
37
105
100
126
149
138
92
56
114
75
58
144
123
126
58
92
128
56
107
138
136
107
93
99
127
104
146
111
132
105
92
110
69
110
56
116
124
58
178
123
122
86
112
119
98
127
107
55
163
98
102
119
126
134
138
92
106
169
93
139
126
178
122
89
144
139
86
87
112
107
86
119
99
58
122
110
105
97
105
144
125
104
119
169
69
146
134
127
127
122
105
139
92
92
164
93
101
105
140
79
56
108
126
104
110
122
75
120
134
79
107
138
92
139
86
132
58
125
92
127
92
134
55
107
93
58
142
145
139
131
144
126
74
138
138
92
92
136
80
109
126
114
104
104
55
105
117
92
55
149
107
126
122
145
126
127
93
110
92
55
74
105
105
55
152
169
105
134
79
127
104
140
92
109
75
180
129
92
79
126
55
91
93
123
68
69
92
163
91
55
104
100
68
122
152
107
55
107
130
69
122
102
76
74
138
105
132
110
55
86
74
105
99
110
67
93
105
120
104
139
102
74
122
91
158
55
58
107
55
92
127
140
148
77
145
87
105
37
72
55
91
134
178
132
108
126
86
107
169
89
111
95
81
89
67
97
77
105
56
89
138
169
163
138
92
122
67
56
123
126
178
139
69
92
111
130
55
105
83
122
136
69
130
123
55
92
138
110
177
56
100
126
163
178
164
69
55
75
165
104
55
110
124
139
144
122
93
140
79
109
146
86
96
152
123
134
123
122
138
110
138
121
67
110
140
158
103
37
138
140
72
122
117
122
168
100
67
101
144
92
146
84
123
169
120
104
93
165
152
128
91
119
104
163
120
103
67
67
128
123
137
126
158
138
104
122
111
81
56
79
122
92
163
79
92
103
151
113
55
121
105
105
93
119
58
106
56
178
180
93
86
127
126
128
117
67
79
178
92
105
37
67
120
93
55
126
146
152
160
120
104
110
92
132
69
163
77
110
55
126
91
69
105
56
129
69
56
56
101
97
101
139
91
131
137
132
109
56
178
110
146
108
128
67
105
78
86
74
128
114
128
134
112
103
122
92
56
122
67
152
111
122
122
105
88
105
131
112
55
110
37
122
122
147
92
138
152
130
123
86
93
55
92
140
92
67
110
138
101
110
88
55
137
92
111
93
130
199
89
100
158
138
91
152
86
163
112
74
126
162
124
122
146
138
131
80
123
75
86
105
126
127
93
103
139
128
37
122
169
118
104
139
122
77
79
92
75
122
138
163
93
148
88
152
152
122
163
146
132
55
139
131
86
105
93
86
80
37
92
178
56
58
111
67
128
178
113
56
144
119
152
99
178
92
67
178
55
138
110
126
112
126
93
135
127
122
110
69
122
92
122
89
126
55
105
75
74
130
111
146
105
117
111
77
55
55
110
86
92
67
132
91
140
105
104
93
126
122
103
93
138
107
55
158
126
138
136
117
138
67
55
152
119
67
92
131
80
104
92
109
106
105
80
68
138
126
146
128
93
92
67
92
55
163
92
92
119
121
118
138
132
139
110
119
108
105
95
122
89
109
117
77
139
130
178
119
110
55
67
110
92
118
139
139
138
105
152
178
86
96
122
169
74
77
84
105
105
67
102
93
110
134
67
67
124
104
91
139
67
55
111
110
122
106
56
127
146
77
67
114
57
139
106
119
169
79
168
56
92
105
110
105
139
107
126
74
58
95
127
128
77
92
77
126
69
92
160
88
117
144
92
99
110
143
37
110
122
138
100
67
126
103
122
110
131
114
164
130
139
122
37
158
106
97
67
128
86
98
118
127
64
138
67
55
139
117
150
69
58
91
124
109
132
92
126
56
140
110
178
110
146
188
110
37
126
110
55
103
119
126
110
128
128
104
136
55
136
123
37
122
105
73
148
74
110
69
122
78
121
92
55
114
123
158
134
93
147
126
110
168
126
55
37
128
78
93
103
126
104
138
144
123
119
97
134
128
126
110
122
114
105
86
86
100
109
126
123
158
131
77
56
124
158
106
55
144
83
105
134
144
55
79
110
104
86
126
77
122
92
93
100
92
67
110
158
129
127
109
91
131
67
178
69
91
93
149
104
86
178
138
104
138
132
56
105
105
97
97
139
104
122
92
91
122
77
81
162
139
119
77
92
92
75
58
112
68
110
64
110
126
144
148
127
110
55
126
93
105
98
112
105
111
74
158
108
126
138
112
148
126
104
138
144
140
92
92
146
122
67
121
126
110
148
68
93
103
119
127
138
106
55
105
128
67
110
146
74
138
134
146
110
152
152
158
138
84
119
86
138
144
124
77
105
142
111
131
55
55
152
177
141
130
105
111
122
126
122
92
127
168
100
55
103
169
137
126
110
93
168
126
127
87
83
127
91
146
67
55
122
104
92
119
105
167
110
105
178
55
135
92
122
105
55
92
56
93
124
55
105
92
56
110
110
67
93
126
105
93
109
120
112
99
119
92
112
199
126
138
77
105
140
127
55
97
104
77
138
105
110
101
110
92
92
92
56
153
139
135
99
145
103
137
69
122
102
135
104
145
146
149
122
123
83
152
77
163
92
126
110
80
92
105
136
128
83
67
67
123
138
126
69
152
67
178
78
92
110
138
104
92
140
93
91
134
127
104
119
110
58
111
126
67
75
56
107
118
122
93
37
134
86
118
119
188
73
122
88
139
58
126
110
138
119
139
131
92
55
146
171
89
119
37
140
83
37
91
110
55
144
138
138
130
86
132
122
127
68
88
123
126
75
107
122
86
128
105
74
109
138
144
104
55
122
139
160
92
126
93
75
92
91
56
120
110
92
100
138
144
89
68
138
138
110
37
171
115
92
104
124
93
69
178
58
162
108
144
164
67
110
104
116
126
92
56
93
127
138
74
55
86
93
126
169
93
112
165
93
107
104
67
110
92
58
77
152
56
127
75
126
110
126
126
98
83
75
110
58
77
68
119
105
104
126
127
95
111
168
69
126
131
105
118
83
67
55
138
122
104
144
55
93
139
138
69
119
153
152
105
116
37
93
75
139
69
122
74
77
55
92
134
55
122
100
55
55
138
139
107
107
169
56
80
122
92
158
146
109
113
146
127
120
138
67
122
128
72
92
162
56
112
91
114
86
110
126
69
58
69
168
178
171
77
103
93
127
64
137
131
122
146
168
146
103
99
92
92
58
67
56
37
37
104
124
122
75
138
138
188
67
91
104
55
180
69
122
122
110
92
67
104
86
178
134
107
146
111
55
67
76
92
109
104
83
67
79
79
122
110
55
84
109
122
171
110
92
67
112
58
92
110
79
138
93
110
137
86
92
138
92
109
140
141
91
67
77
92
144
110
104
123
55
121
37
91
58
122
114
93
55
37
122
67
124
58
58
97
122
102
122
109
92
138
75
148
128
132
130
102
115
115
105
127
107
162
149
122
108
55
123
144
107
128
83
138
92
68
67
67
145
80
92
104
126
119
126
92
105
55
99
83
93
126
111
104
86
83
144
111
92
110
103
141
110
144
69
92
148
58
69
169
110
105
110
168
104
105
113
126
138
117
124
92
107
126
110
81
37
55
137
104
104
146
56
127
102
139
138
124
126
92
103
104
126
67
99
99
37
141
67
77
128
95
101
92
58
110
139
92
102
92
152
129
122
110
56
110
67
55
105
138
144
100
110
37
56
134
92
167
110
91
126
112
119
119
139
67
122
143
115
95
68
105
77
144
122
146
145
122
79
104
86
105
105
127
77
122
105
151
93
139
132
86
126
122
93
75
124
126
138
89
122
168
126
107
126
126
122
37
68
130
120
169
127
92
123
109
55
37
110
110
95
109
37
122
110
112
146
110
127
105
86
67
106
140
121
123
67
111
104
110
105
152
126
122
126
140
55
138
37
91
127
122
74
97
98
131
144
55
128
127
77
74
104
67
104
131
94
110
165
122
104
110
77
104
105
126
110
126
120
128
104
69
120
146
109
105
91
199
92
92
95
126
122
102
110
86
126
122
93
92
163
110
92
104
77
92
130
101
99
92
56
128
162
128
58
137
178
69
152
58
89
123
156
98
119
55
138
127
68
143
126
100
104
104
110
104
138
118
110
55
123
111
119
130
126
103
105
126
105
67
99
103
92
98
139
152
58
119
55
178
102
97
67
91
92
37
104
126
91
56
93
93
123
117
180
139
105
131
58
110
139
122
134
110
87
109
99
74
126
135
110
120
92
139
160
178
105
105
92
103
104
69
107
79
138
122
122
101
92
93
58
148
122
101
104
68
138
111
107
67
127
163
129
92
124
122
180
92
107
111
139
58
110
79
55
105
68
168
79
37
138
82
109
126
178
118
77
109
151
93
56
110
55
56
136
127
140
106
146
83
67
109
119
124
104
68
110
138
142
56
126
122
112
119
37
91
110
69
55
110
119
138
131
83
92
123
74
126
93
37
145
137
168
138
37
56
178
158
102
122
92
37
127
139
111
92
123
132
69
127
78
119
100
122
180
127
93
55
105
92
110
37
109
119
79
149
92
55
124
111
37
91
188
58
92
88
67
124
37
114
111
144
106
158
89
80
83
115
55
120
123
123
69
140
134
92
97
99
134
125
102
128
152
180
111
92
77
110
140
105
81
91
128
91
101
127
55
67
55
89
55
56
110
112
109
58
104
67
105
92
105
91
122
92
92
139
58
83
169
105
114
146
134
152
69
69
135
75
144
55
58
107
119
118
138
146
110
126
111
178
92
109
144
58
152
127
92
114
122
120
99
123
122
132
69
93
138
126
92
93
58
152
67
92
58
91
56
89
109
92
105
178
178
137
75
101
138
104
98
128
55
108
77
67
138
152
126
108
67
69
91
92
126
109
104
104
124
105
92
58
115
92
126
56
67
119
138
95
92
37
105
124
158
99
92
55
104
146
126
152
58
127
126
68
127
178
180
137
112
163
126
160
112
100
151
89
67
104
122
37
108
110
56
106
104
180
118
129
123
119
58
102
105
123
127
126
126
140
126
92
91
122
86
55
55
132
117
55
109
67
58
78
79
127
100
178
123
127
91
106
67
67
134
67
58
110
136
100
104
122
93
139
152
55
55
107
92
110
126
139
95
92
56
138
130
112
122
122
146
104
79
105
128
152
126
105
92
56
105
119
58
55
110
77
125
158
128
98
105
55
139
141
152
56
104
169
106
101
67
101
110
118
124
122
84
123
138
121
92
124
88
68
138
58
144
110
139
119
110
93
119
171
58
169
86
178
178
77
74
144
131
101
117
92
92
92
58
124
67
87
104
86
69
126
129
152
93
145
92
109
126
178
169
104
103
131
126
152
110
138
134
152
138
92
67
92
138
92
122
117
103
139
126
98
74
103
129
120
67
127
124
105
37
55
127
178
132
136
74
55
178
160
122
74
55
79
77
91
110
98
178
68
92
110
105
138
105
124
105
158
93
122
97
122
138
105
69
139
144
85
105
134
146
55
104
92
97
178
121
92
124
113
126
132
96
163
101
69
119
113
55
105
92
83
99
126
109
126
55
169
105
87
105
83
55
110
126
77
126
164
178
119
178
139
126
69
110
138
92
119
101
109
104
127
144
58
89
109
180
79
105
92
95
114
169
104
122
146
126
138
55
124
126
126
110
119
152
99
58
163
55
111
84
92
55
134
178
178
110
110
123
110
58
56
168
37
92
103
138
91
79
110
122
93
114
131
74
126
105
122
37
96
152
119
102
104
69
149
92
110
178
138
58
144
105
169
139
69
100
149
140
77
84
73
123
104
110
178
136
99
99
131
110
168
110
131
92
146
158
105
55
58
67
178
144
126
112
137
163
97
138
152
86
83
93
55
88
126
69
144
55
105
74
105
171
117
119
104
110
92
141
37
104
128
110
122
110
122
67
123
127
67
92
144
139
55
84
169
106
122
98
69
138
67
122
37
137
92
92
37
141
84
136
111
126
98
92
105
124
150
86
146
152
55
122
111
128
103
139
112
104
104
118
115
83
86
126
151
138
92
126
106
100
123
150
104
110
58
128
91
104
92
93
69
140
68
93
138
123
93
118
178
79
37
120
69
122
119
91
55
152
136
131
119
128
81
138
109
109
110
86
130
122
75
122
138
140
148
146
55
117
67
101
92
122
98
58
67
109
107
76
148
122
123
79
103
37
105
107
188
126
64
152
107
112
67
123
178
144
139
110
139
92
119
92
58
160
75
112
127
99
138
67
79
126
140
122
92
109
140
99
124
138
131
122
122
111
124
67
93
130
58
138
92
144
139
109
55
55
180
126
103
139
151
148
74
147
127
110
128
126
92
92
107
113
79
86
111
109
113
67
122
124
137
99
92
124
58
138
67
69
83
104
132
163
132
140
138
139
58
79
96
74
140
134
107
110
95
141
122
91
122
123
136
117
152
144
127
105
165
92
122
152
146
55
137
152
55
84
132
69
78
111
111
140
58
69
127
117
135
69
37
126
55
91
110
122
67
123
139
92
152
107
56
103
55
103
178
91
152
120
93
93
89
104
124
89
152
138
146
101
86
110
55
92
67
37
122
92
103
58
67
123
99
93
107
139
110
134
55
122
102
110
67
79
146
105
99
83
56
122
105
146
110
56
79
123
75
114
37
127
68
69
101
93
134
107
104
71
93
123
139
104
168
93
74
92
128
131
122
113
110
152
144
92
126
110
139
152
144
110
83
139
158
56
138
136
114
122
148
146
152
92
37
111
92
74
92
104
37
103
138
164
67
149
100
126
64
178
122
132
148
180
138
106
146
136
106
77
86
171
152
167
55
134
178
58
92
56
138
79
126
109
74
92
168
145
98
110
77
86
83
117
84
92
131
58
55
37
180
144
167
152
55
56
134
67
110
158
93
138
67
86
104
154
140
139
110
96
130
67
56
124
104
97
86
137
160
127
92
126
142
79
110
162
126
139
106
37
92
111
92
145
92
92
144
128
55
56
69
178
126
178
92
144
130
91
92
129
145
110
56
91
78
140
110
169
67
89
56
110
37
178
110
100
138
152
105
122
55
56
101
37
79
152
131
110
138
139
37
55
152
160
67
114
138
91
126
93
86
131
169
55
110
122
99
139
132
120
125
138
118
140
139
169
92
134
67
92
58
163
106
144
122
120
144
139
163
67
103
152
92
122
105
110
110
93
126
97
109
79
92
109
92
92
127
92
92
91
128
152
103
92
110
136
148
111
92
105
84
67
105
67
58
100
112
144
122
144
77
58
169
55
86
55
92
55
123
130
86
69
67
120
99
131
178
141
92
111
148
152
55
93
80
92
55
55
104
93
130
121
110
95
110
126
77
67
117
77
64
144
99
112
141
55
93
92
67
110
114
67
110
119
146
162
58
122
56
146
93
144
92
128
105
55
135
125
169
100
127
67
134
55
165
138
55
67
99
119
111
138
56
126
126
126
127
130
122
69
105
128
128
93
110
37
97
122
92
139
139
103
93
37
132
55
56
104
68
140
144
55
136
130
67
69
126
86
140
114
56
69
95
144
58
37
110
119
55
108
55
99
126
89
105
140
113
108
92
56
103
178
109
105
126
92
110
126
138
122
103
67
144
109
88
109
59
55
56
92
139
126
92
55
122
122
67
118
112
125
88
122
115
56
86
92
79
79
104
92
105
67
112
146
58
88
58
111
178
67
58
110
103
122
126
132
92
105
140
120
118
119
122
96
118
111
130
130
126
119
126
74
55
37
122
132
105
141
91
188
69
55
109
126
163
139
126
105
153
139
123
93
92
152
92
135
92
92
140
122
110
104
55
134
111
138
135
93
138
92
140
123
99
105
103
92
126
144
95
126
74
123
128
178
126
127
69
37
37
86
163
89
139
127
132
56
55
135
56
146
126
120
37
111
114
146
92
67
105
86
110
139
55
124
92
110
140
118
92
144
105
67
168
126
56
64
67
139
144
120
78
92
112
122
126
93
138
122
104
92
127
115
105
92
126
99
92
100
111
74
146
56
58
67
93
37
104
93
76
109
111
148
99
56
67
37
92
37
67
103
97
171
92
150
75
107
92
92
117
37
84
110
55
126
122
120
104
97
96
130
55
148
103
138
131
106
99
126
109
122
74
114
144
99
55
104
92
122
110
92
105
126
106
127
114
56
92
69
122
88
139
102
105
110
152
83
162
169
126
125
132
111
93
105
56
79
104
104
92
104
103
89
110
122
55
112
55
138
86
92
122
92
67
147
122
93
92
104
122
74
111
146
138
138
114
145
105
162
124
67
156
122
79
110
93
122
101
93
171
92
83
139
105
141
126
180
67
107
58
78
79
105
103
105
105
56
110
92
55
163
67
118
37
146
139
197
55
55
92
132
126
151
120
103
140
91
104
93
110
92
128
55
100
93
132
55
55
180
182
122
92
83
55
58
67
177
126
84
86
67
139
105
146
80
110
110
126
113
55
56
168
126
99
58
92
110
168
89
55
111
103
127
104
110
110
105
67
111
132
122
126
97
114
119
86
110
92
138
127
132
110
92
139
115
122
136
123
171
92
127
138
140
120
138
117
105
86
160
96
110
122
104
55
144
158
58
92
139
104
56
152
92
139
69
139
138
104
171
126
180
105
169
136
158
138
126
55
122
122
86
132
99
77
136
56
123
119
107
77
127
127
101
75
74
99
92
55
110
92
93
83
111
122
74
103
86
125
104
104
152
126
92
108
171
122
146
138
76
132
126
122
127
126
138
138
99
74
105
77
122
86
119
122
120
178
75
55
178
84
37
158
56
104
100
122
110
138
92
93
103
92
105
131
124
119
37
140
110
127
55
105
122
122
92
55
69
104
110
37
99
101
91
91
110
139
104
92
139
105
141
137
89
105
79
55
74
139
93
141
104
118
92
86
144
110
144
144
139
131
110
58
75
68
92
55
104
55
163
138
102
58
110
138
92
103
92
103
139
86
110
123
105
139
119
95
119
114
99
148
128
79
178
91
105
77
144
138
77
56
92
126
152
86
142
122
104
110
105
152
56
37
119
110
108
92
114
86
92
108
132
134
55
86
104
158
55
92
169
37
56
69
119
104
55
122
127
88
144
37
178
115
169
109
104
109
169
111
67
88
109
152
105
104
97
111
94
103
145
91
126
126
68
74
58
131
37
123
93
104
100
98
107
103
152
69
55
126
126
105
148
69
140
122
126
75
107
122
100
118
97
107
92
124
126
55
163
152
119
110
126
127
69
179
111
124
138
148
83
112
128
56
37
68
107
92
102
111
169
139
55
178
69
105
122
127
110
67
111
86
105
77
81
109
128
105
75
84
56
98
69
140
122
99
178
122
122
110
67
74
55
99
127
97
56
91
91
167
141
105
109
122
92
105
127
128
110
139
56
107
56
163
130
104
109
37
126
122
122
138
92
118
127
140
86
107
104
56
104
55
104
111
146
105
110
106
109
152
178
158
84
148
127
105
104
55
136
110
79
122
134
79
67
91
152
104
104
137
109
122
104
122
99
55
68
101
180
126
55
122
92
167
99
67
92
93
110
138
92
124
69
91
163
67
55
145
127
74
69
95
91
105
69
126
94
104
138
131
76
37
56
122
122
164
55
138
128
110
138
122
73
92
152
110
55
169
138
91
114
100
93
135
69
152
104
105
165
55
139
122
97
74
58
126
124
56
105
104
108
131
86
169
101
158
122
55
93
138
197
134
110
101
104
156
152
56
132
86
91
138
140
105
146
124
181
182
146
132
107
55
156
110
92
86
112
79
99
110
93
37
110
138
87
111
140
138
104
127
78
69
75
91
105
136
127
67
55
77
99
67
111
107
55
89
122
105
144
110
113
126
126
169
55
136
144
126
105
64
99
107
92
58
126
132
75
134
91
105
111
136
128
126
126
103
67
128
37
132
55
104
130
129
105
124
138
136
123
77
55
126
126
92
58
178
146
140
120
105
109
89
104
67
104
99
139
109
178
123
93
92
130
152
83
86
94
104
128
37
37
67
86
164
68
55
144
67
99
138
91
68
199
92
69
104
99
144
152
182
55
92
128
109
67
140
103
55
67
117
76
144
118
164
152
149
74
140
178
110
69
127
79
92
99
84
110
180
146
77
104
145
178
56
55
110
121
110
197
55
134
100
109
77
86
104
67
67
55
127
127
135
178
139
104
37
121
178
135
92
55
56
126
105
105
55
79
107
165
79
127
93
93
124
105
92
130
178
146
92
146
126
97
139
75
111
117
135
79
91
104
107
77
37
111
81
148
169
93
126
119
131
139
92
120
79
146
119
148
75
110
108
79
97
110
88
105
139
67
67
105
146
104
111
138
123
138
55
55
126
55
138
169
58
127
122
88
104
162
37
171
93
107
55
171
145
93
55
168
134
109
103
138
169
182
91
141
124
92
182
88
69
110
55
135
111
105
110
105
55
105
92
122
124
105
88
84
92
75
92
116
55
67
110
110
67
79
95
92
140
131
69
139
160
138
76
83
145
105
123
100
178
56
74
138
67
93
86
144
56
89
112
84
123
55
106
56
122
110
67
92
107
105
107
74
92
74
123
37
67
77
104
77
122
178
112
126
109
126
97
99
56
110
69
93
126
55
104
97
139
55
118
103
109
107
139
110
123
92
119
92
92
106
126
126
106
178
146
74
55
37
67
128
139
78
75
138
69
130
105
199
87
104
138
92
67
132
91
152
169
67
92
89
144
128
77
103
106
120
163
92
165
136
55
122
126
87
138
123
92
81
109
178
110
152
126
168
69
124
131
128
127
58
106
138
69
101
132
188
126
112
137
58
55
67
97
56
126
86
111
92
86
55
144
148
56
79
122
98
148
92
162
75
197
169
130
110
83
119
97
122
126
86
178
107
104
56
130
146
91
164
104
93
55
93
110
123
171
126
126
127
111
138
123
144
91
122
86
178
132
100
105
126
120
98
104
107
122
55
144
93
93
128
152
134
145
69
140
119
97
152
92
139
88
67
92
126
127
138
37
69
152
92
77
104
140
104
100
67
123
76
109
122
126
110
122
58
123
68
99
92
91
105
126
139
138
139
171
167
135
92
55
122
122
93
68
182
131
138
110
92
119
107
148
92
92
83
55
144
118
58
56
67
169
75
79
79
75
138
112
105
145
69
99
67
123
180
81
92
142
139
126
126
146
68
37
67
119
105
37
68
100
126
67
115
101
149
110
126
58
122
93
81
163
126
55
111
105
138
126
102
139
122
83
134
122
111
92
129
152
126
127
92
139
111
138
144
122
67
100
92
105
109
110
77
100
78
138
55
107
169
83
120
124
112
55
129
128
134
69
145
92
121
142
148
55
142
132
105
126
68
135
37
58
111
37
126
140
152
107
78
93
104
101
126
152
104
132
127
80
86
147
105
56
146
110
164
128
58
92
108
67
58
123
122
146
111
127
91
131
199
138
111
122
122
92
126
110
104
74
117
111
77
105
92
68
109
77
79
68
55
109
37
56
55
148
92
139
55
138
138
178
165
55
138
148
140
55
55
138
97
110
130
56
103
128
113
104
124
110
103
178
108
123
93
105
105
110
146
110
92
55
127
171
69
89
84
146
128
127
37
112
114
111
91
109
152
122
58
109
122
138
93
135
139
110
67
58
128
92
37
104
110
122
146
138
127
132
92
112
104
119
139
127
105
91
92
127
92
55
114
69
163
127
126
100
110
110
162
168
122
144
104
112
104
105
146
110
105
68
122
56
124
132
67
140
105
92
92
128
122
122
130
105
74
81
122
58
138
93
110
171
67
110
144
99
134
69
110
105
110
79
128
171
92
75
152
139
111
58
110
169
139
37
92
122
92
110
109
182
79
122
104
100
142
110
106
138
92
91
55
110
92
127
89
104
136
117
56
55
178
126
110
74
77
139
103
126
84
37
137
97
104
92
104
97
115
127
152
199
139
132
171
118
104
109
101
81
114
67
122
126
130
92
69
158
67
127
105
56
92
86
56
75
123
158
127
55
92
93
105
104
180
56
110
122
128
56
99
126
128
92
55
109
123
127
86
92
122
67
119
103
69
107
126
86
168
94
99
92
99
61
122
74
55
67
69
104
104
93
55
126
124
131
109
98
105
144
37
55
138
104
122
91
55
103
139
124
93
113
111
99
67
139
117
74
107
144
134
145
139
92
127
105
74
110
92
152
56
146
110
180
100
124
86
58
144
146
178
103
55
94
91
69
101
126
141
114
128
92
138
110
110
98
84
55
139
109
144
67
93
130
75
119
167
105
165
92
128
92
79
109
109
124
156
109
127
92
56
139
160
138
104
132
178
138
92
114
146
74
105
88
122
178
139
69
153
152
110
110
56
83
93
104
92
171
138
122
146
97
122
111
86
105
67
122
145
69
55
105
58
86
93
55
110
122
126
127
65
109
144
91
136
160
111
122
126
152
103
56
114
92
105
107
74
95
146
178
131
68
105
55
123
84
122
144
98
92
130
108
104
84
91
121
126
107
108
109
92
122
37
55
122
130
126
58
105
167
93
152
37
126
152
130
104
138
103
132
81
146
105
137
128
132
130
75
146
103
58
138
107
171
104
91
104
127
104
126
139
126
88
110
104
126
138
127
58
78
127
144
119
55
110
105
138
98
124
126
171
139
122
91
98
127
148
58
93
138
98
104
92
105
122
137
148
178
95
93
127
74
126
122
119
128
84
55
126
94
92
67
79
68
138
167
55
122
92
145
92
144
92
86
126
103
110
110
110
102
127
58
104
123
79
105
97
139
182
73
122
127
77
106
81
139
74
56
138
140
92
138
128
55
78
89
56
126
108
55
92
132
116
110
37
168
124
178
93
92
128
89
109
107
84
138
79
86
117
122
69
150
171
55
122
67
37
119
104
110
139
77
94
127
56
61
146
119
69
76
110
144
92
152
138
103
144
99
105
138
103
58
109
58
67
138
178
142
130
168
75
171
124
105
107
126
110
134
142
109
107
67
178
138
126
92
126
93
139
91
152
148
58
95
148
164
126
103
74
56
55
103
122
67
178
124
134
110
95
126
164
168
119
110
129
92
69
107
146
56
160
92
103
123
110
92
146
165
138
134
142
55
37
171
77
125
55
99
37
122
152
164
67
99
92
162
123
74
79
126
114
117
103
144
139
126
180
86
111
103
97
149
165
55
69
144
94
105
163
126
126
122
67
67
56
111
92
74
138
56
80
134
139
140
152
122
126
122
105
180
92
138
124
127
126
129
144
91
105
138
37
128
127
105
138
55
178
93
138
128
55
75
126
55
114
144
79
104
139
109
178
99
138
138
152
92
92
86
114
138
56
126
124
146
122
123
140
92
110
95
106
111
92
92
99
76
124
92
107
74
113
122
122
86
100
55
111
37
158
91
99
56
110
110
55
138
79
144
100
92
142
178
91
37
115
128
56
171
119
110
92
77
105
130
160
178
89
178
110
152
93
92
92
178
126
103
138
105
58
91
110
109
118
77
105
139
138
102
67
83
92
123
67
56
146
127
69
146
110
131
99
72
69
75
91
131
140
92
109
178
122
146
122
104
58
67
144
138
58
127
92
105
93
126
126
109
79
84
105
56
105
97
104
105
123
58
134
178
122
37
86
126
91
105
92
144
68
55
130
144
142
103
99
64
127
92
83
105
110
55
92
55
122
127
122
82
41
146
105
93
104
56
58
75
83
138
110
144
68
139
55
83
67
55
77
92
110
110
107
112
122
127
56
110
107
105
126
92
83
110
92
99
109
146
103
79
98
163
91
84
67
138
67
77
92
139
131
132
152
112
104
98
178
94
92
69
84
111
138
146
119
79
164
163
37
56
120
123
104
103
111
146
110
97
144
105
101
58
85
55
110
136
68
127
86
55
55
68
140
140
93
102
55
55
110
105
67
55
37
169
79
152
37
93
107
102
171
110
122
89
58
168
138
56
75
140
152
110
91
104
101
37
56
67
37
127
93
127
103
110
37
168
122
152
127
139
139
79
139
163
145
55
128
113
107
105
126
58
96
99
79
146
55
110
92
139
37
131
84
152
131
97
104
92
127
92
126
188
119
97
105
55
92
119
142
117
139
139
112
105
109
74
110
93
138
93
92
79
93
55
79
110
109
107
123
56
89
92
110
37
55
79
95
139
126
93
92
93
105
126
92
119
37
55
107
86
122
56
122
79
127
41
146
109
98
93
119
110
69
107
99
56
88
124
144
139
138
138
56
55
56
126
126
93
127
122
86
98
104
122
127
55
105
136
145
130
126
126
164
110
140
67
148
75
55
109
97
103
109
140
163
126
84
92
93
69
74
91
105
119
178
55
126
98
74
139
119
75
123
110
112
120
111
55
79
104
178
69
86
37
105
37
124
92
111
105
120
111
111
55
92
56
100
41
92
169
105
126
37
69
130
110
86
178
91
77
103
146
92
111
180
156
77
92
131
95
55
144
67
109
139
93
107
138
180
152
127
164
92
107
179
111
86
110
127
56
126
69
130
55
67
104
126
58
86
83
92
164
122
139
119
69
56
105
109
126
134
67
112
126
69
55
138
138
146
56
144
109
120
56
83
103
56
127
138
75
114
128
102
111
130
93
105
92
110
140
147
114
107
98
95
78
55
138
128
126
101
103
142
119
126
69
152
139
100
119
111
77
128
56
109
120
163
105
110
139
139
138
55
119
105
105
138
55
146
128
74
163
139
134
92
144
108
110
126
150
128
107
110
110
69
92
138
92
115
104
92
124
139
131
107
107
126
127
67
169
92
171
128
126
91
112
110
105
92
56
104
95
128
83
124
148
124
92
67
110
146
140
105
126
99
157
144
58
171
138
110
126
130
56
98
164
89
119
106
124
169
74
123
58
55
122
67
165
55
56
111
75
89
83
148
152
79
99
86
128
178
122
139
114
110
123
56
110
58
139
56
86
119
127
74
140
134
92
104
110
180
100
109
110
124
144
55
67
86
104
91
126
128
92
103
126
122
126
182
169
158
104
114
138
93
122
55
93
178
119
139
168
110
86
126
118
104
102
93
126
104
144
86
55
86
104
91
55
146
144
37
91
67
92
55
67
55
95
67
149
109
107
119
91
102
123
126
92
140
109
58
93
107
178
92
146
93
126
178
104
91
92
93
111
130
126
55
127
92
119
104
89
97
105
138
139
131
131
178
55
112
105
111
55
91
92
105
56
169
37
86
138
92
110
131
139
146
68
123
99
124
79
139
55
146
142
68
103
95
146
122
110
109
93
84
137
138
69
138
109
103
111
99
86
127
58
76
55
106
110
126
136
81
55
129
104
79
55
138
67
124
104
37
105
109
140
110
93
139
64
86
126
169
122
92
80
84
138
55
86
92
93
83
114
67
67
58
104
152
180
145
146
132
105
74
180
118
138
112
92
138
67
124
91
138
128
107
105
91
137
134
128
55
110
37
105
148
95
55
122
107
138
93
121
98
67
92
105
56
110
69
92
93
106
152
127
126
115
55
126
110
55
126
122
124
131
55
55
126
129
146
124
58
119
68
92
105
58
126
56
99
106
37
127
56
93
119
79
55
111
121
67
99
55
127
119
126
55
103
152
124
123
139
123
152
111
108
56
110
126
123
162
55
84
55
167
103
91
104
127
67
67
119
129
96
109
88
180
84
92
56
158
105
139
105
126
105
55
69
86
148
83
67
55
147
103
146
119
104
37
169
177
126
55
88
140
37
99
128
139
109
148
144
126
92
69
92
146
178
55
77
97
122
37
110
138
148
136
107
98
105
107
110
138
122
67
146
165
162
92
56
86
152
74
74
158
105
55
144
95
69
67
93
105
68
140
86
180
105
122
92
141
128
109
128
102
145
67
122
158
37
75
145
138
171
86
138
67
81
104
56
80
127
108
37
169
56
115
152
143
89
92
56
163
37
55
106
122
122
92
61
110
67
68
75
171
168
132
92
55
132
164
138
93
92
99
92
93
122
86
122
124
101
148
37
131
92
126
92
138
92
89
111
68
95
97
55
127
123
103
131
92
110
112
168
124
140
178
113
84
56
92
74
92
126
93
56
92
101
169
56
114
123
86
105
67
92
142
105
56
134
74
80
128
169
78
98
76
122
105
122
146
138
127
68
55
163
55
55
56
108
103
114
162
56
104
168
138
93
105
110
122
178
98
79
74
163
107
76
103
96
139
67
124
75
98
93
86
55
107
127
169
103
103
120
137
105
137
56
37
92
105
126
80
124
92
123
141
119
110
56
107
136
104
67
146
119
67
69
100
104
89
92
104
119
105
105
138
84
122
120
110
89
123
88
141
69
104
37
79
102
147
92
158
56
138
140
110
139
148
92
93
138
87
56
109
104
140
92
119
55
158
169
178
99
139
86
138
92
128
112
99
178
105
145
102
127
55
92
110
130
78
123
91
93
139
163
114
104
110
92
134
69
103
151
150
67
74
67
178
56
152
126
138
104
146
168
107
92
84
77
110
101
69
104
93
108
132
150
84
79
91
92
164
139
79
130
37
104
93
132
168
134
103
56
178
143
105
178
195
152
122
122
55
147
156
84
108
55
55
67
75
126
55
67
99
75
122
122
148
56
108
92
67
134
162
110
75
104
130
138
37
138
75
127
77
111
67
105
152
55
103
104
67
37
55
124
167
92
67
79
37
169
55
92
91
56
146
74
68
126
56
88
79
37
148
68
88
110
122
107
122
126
144
106
100
130
122
119
138
139
75
146
123
149
126
79
92
122
55
58
128
124
99
169
110
119
127
69
99
92
105
148
138
67
105
169
105
110
86
55
91
37
116
56
95
109
37
104
93
67
105
127
105
125
69
131
93
99
127
91
92
83
167
126
178
74
92
99
122
136
97
102
105
120
122
110
148
124
124
128
86
126
145
138
83
79
93
58
110
122
55
138
99
93
75
68
92
138
152
138
68
86
119
182
103
146
109
189
105
138
147
107
109
124
55
55
103
123
68
117
86
122
92
158
122
126
126
138
122
144
55
122
126
93
105
126
138
105
138
148
93
103
178
169
114
144
178
124
86
138
139
107
99
138
180
91
105
74
55
55
103
94
149
92
67
67
37
131
105
92
123
126
128
55
122
93
152
103
109
131
110
168
123
105
105
139
109
55
127
107
197
138
56
178
119
55
104
110
111
56
126
92
107
97
107
112
158
92
100
37
138
144
139
55
86
122
146
110
55
128
56
92
37
92
55
110
122
163
144
58
139
178
37
92
105
68
92
138
92
109
104
178
144
106
114
134
123
69
180
110
130
37
136
111
92
74
55
139
101
107
148
109
140
55
99
107
55
103
119
134
144
122
110
122
135
127
110
98
122
122
138
88
110
152
126
92
103
114
130
58
114
105
139
67
105
55
91
83
92
126
152
139
128
146
138
138
122
138
58
178
147
86
111
69
97
93
86
128
169
111
55
127
120
121
69
123
146
69
126
139
56
178
123
169
67
110
67
37
37
65
110
104
158
122
67
110
122
122
69
37
145
138
58
93
67
126
67
103
178
140
122
69
113
84
98
115
146
146
92
77
111
96
122
55
126
92
79
92
68
55
144
55
112
37
102
74
107
160
117
92
92
126
110
55
92
130
110
104
91
126
95
140
115
77
55
92
55
178
128
99
84
55
126
56
147
144
146
105
96
67
145
107
178
126
134
105
136
37
93
91
55
110
114
122
136
105
117
111
110
140
89
139
92
105
119
69
89
107
120
55
92
126
178
112
76
140
92
56
105
169
162
107
74
110
122
104
74
135
144
160
91
105
146
92
56
129
97
69
110
111
67
56
123
128
37
103
55
79
138
104
93
68
78
92
107
55
100
79
122
58
114
109
58
69
111
134
126
56
67
110
104
75
102
153
122
77
98
88
92
139
127
131
55
109
104
124
110
126
58
144
134
92
114
98
86
122
105
92
144
178
55
107
122
104
74
160
104
91
139
117
88
103
178
37
144
92
55
123
148
118
124
92
67
138
77
107
152
122
110
122
67
124
92
92
105
56
55
37
74
67
56
146
56
140
128
126
119
92
102
92
126
110
91
55
152
69
105
113
119
67
126
169
105
58
93
92
139
146
92
93
79
152
102
99
69
56
92
103
92
111
140
151
67
109
148
111
93
86
137
169
55
118
67
130
105
136
95
122
92
118
86
75
160
120
137
128
178
92
127
134
55
110
89
122
104
77
74
110
92
107
152
91
88
127
83
162
67
86
55
109
127
92
91
140
77
107
69
109
107
84
92
99
138
131
138
100
68
178
84
138
92
67
152
146
144
83
92
138
92
122
55
55
178
67
127
152
67
105
68
55
157
55
84
67
169
124
152
119
92
111
97
122
58
37
110
145
93
91
136
86
110
86
105
105
91
123
110
127
98
126
68
114
55
146
99
126
67
178
93
78
131
107
104
123
120
93
117
111
92
140
56
55
144
105
160
178
152
126
92
146
67
97
120
79
69
181
75
139
123
79
111
99
99
78
58
110
110
103
105
146
139
79
79
138
122
67
117
105
105
67
122
144
146
77
55
167
55
89
92
55
128
69
122
168
137
180
109
77
110
94
122
67
104
138
134
169
137
114
134
120
106
134
58
119
92
122
69
127
152
108
164
132
79
95
55
163
132
111
37
105
128
178
136
67
103
109
79
69
92
126
77
105
97
110
93
86
55
107
37
139
122
77
74
126
124
117
180
152
102
92
92
55
68
100
103
138
188
103
140
104
158
171
139
110
122
178
128
134
58
92
106
92
178
103
92
104
122
55
122
115
92
135
105
55
57
111
55
130
107
130
67
178
105
103
119
165
104
132
110
55
92
135
92
103
122
105
140
56
68
104
122
91
110
56
92
117
86
112
92
101
146
103
92
56
92
135
171
126
91
128
98
178
168
138
91
102
98
55
131
105
74
105
93
149
123
56
91
37
107
105
105
120
100
122
67
97
92
67
67
142
162
111
95
92
134
122
127
111
126
142
126
152
104
110
67
55
55
92
144
56
127
122
123
86
122
55
126
145
152
131
68
122
92
152
126
110
101
146
37
161
95
146
55
144
126
110
102
123
100
105
105
86
180
122
55
67
134
106
92
77
93
92
139
83
109
109
135
91
56
110
136
122
106
138
37
110
142
55
144
105
146
37
88
180
144
67
178
144
152
178
169
138
123
110
164
92
103
111
114
92
86
79
104
92
67
111
103
37
93
149
139
95
101
56
122
110
126
56
132
178
74
92
139
122
136
79
93
78
92
92
110
118
105
67
55
139
95
67
92
160
97
103
86
139
92
138
104
55
67
67
92
92
58
139
92
64
138
137
119
120
69
115
55
93
128
77
104
87
95
122
120
122
152
138
110
131
171
89
146
105
122
146
178
120
92
67
93
97
110
110
105
56
131
100
149
94
55
92
58
122
178
171
109
55
126
84
55
110
140
58
158
74
122
148
75
131
105
122
69
104
124
122
109
69
182
127
101
128
131
140
92
67
86
56
148
78
109
126
122
110
92
144
138
146
146
55
145
124
93
69
102
91
93
127
55
152
56
122
122
126
98
93
110
178
93
86
102
127
111
178
136
68
144
144
71
67
105
145
122
111
126
167
102
105
114
91
107
67
158
79
77
146
105
37
122
122
148
83
56
110
92
138
104
139
131
104
109
158
122
122
104
142
148
97
104
109
37
122
139
92
128
105
109
92
92
86
93
56
178
104
55
79
148
56
122
95
37
105
97
37
105
128
86
37
56
67
122
67
104
140
105
178
84
105
92
148
136
140
144
126
83
126
89
91
37
122
122
105
108
97
168
110
92
122
69
142
127
55
74
99
122
126
130
122
122
69
104
93
106
83
122
124
117
126
131
146
101
117
104
93
55
74
144
122
138
100
126
127
122
92
117
89
75
144
67
74
92
74
168
169
110
67
86
55
69
178
93
117
126
97
93
67
110
131
130
122
128
140
146
92
68
93
118
145
79
127
110
109
163
122
67
115
138
148
92
138
130
107
123
122
141
93
126
164
77
91
158
105
86
98
123
126
122
86
69
139
132
111
84
114
136
67
92
104
55
107
111
111
158
139
122
104
67
167
109
55
111
146
37
56
105
144
126
114
104
56
107
105
86
74
139
105
111
107
105
107
106
92
105
77
106
104
92
67
178
199
79
110
146
103
105
98
56
58
139
122
169
128
69
103
55
171
152
109
126
93
89
158
56
92
127
134
139
115
79
67
103
69
122
158
55
69
119
89
178
138
110
118
92
92
128
158
150
105
105
116
125
121
134
110
37
115
105
69
92
120
83
92
104
122
122
55
105
103
128
91
121
136
93
83
122
126
103
92
134
146
110
92
138
146
128
114
126
109
178
122
93
118
122
148
168
169
92
145
119
105
118
86
168
122
122
103
109
146
164
99
55
144
55
126
55
168
126
104
117
79
96
127
55
99
55
171
68
139
148
81
55
178
169
110
67
110
105
111
89
169
132
67
56
92
123
74
178
114
128
55
67
55
171
67
109
69
58
178
127
122
104
127
105
55
67
92
117
56
107
95
92
110
92
140
55
148
79
178
92
127
138
112
88
92
139
127
138
75
139
123
128
93
92
101
128
92
118
122
56
138
74
69
92
107
92
118
79
67
122
107
55
131
91
56
97
58
111
138
111
120
152
122
123
91
110
126
103
140
67
126
92
131
37
78
68
97
92
91
119
92
132
55
95
69
68
178
110
144
130
126
127
92
146
118
122
93
178
140
122
132
103
127
124
127
146
126
114
110
127
83
55
109
58
114
138
124
58
116
126
128
122
92
102
37
138
74
167
92
87
58
160
128
55
160
105
129
138
189
93
123
91
104
163
99
122
105
127
128
149
67
122
111
56
86
99
125
163
108
79
171
115
122
169
126
105
74
107
124
136
93
92
56
77
122
69
127
122
56
182
136
92
102
98
122
178
180
127
93
92
94
104
123
109
126
105
139
140
145
68
138
69
105
55
139
138
152
100
98
117
68
92
92
103
110
91
55
122
110
57
106
118
109
138
171
92
92
79
144
112
55
55
122
165
93
92
93
103
79
37
105
140
79
123
144
89
131
93
112
144
110
158
93
104
99
67
83
86
134
148
105
41
138
134
102
123
67
93
108
109
101
139
110
104
119
103
127
74
148
139
93
56
67
126
105
80
138
55
162
122
56
136
88
92
114
144
67
79
134
105
93
127
137
122
37
122
55
122
128
109
117
93
83
56
138
144
122
58
92
126
144
69
114
110
100
126
180
92
92
138
112
79
112
75
158
126
146
119
92
139
146
92
163
93
55
95
111
122
95
37
123
92
92
138
55
56
93
126
148
99
140
148
116
84
128
69
105
112
55
74
149
74
123
37
148
128
169
67
92
110
104
111
58
99
69
55
144
104
127
74
123
169
92
83
37
111
110
77
148
137
138
130
178
137
92
109
91
106
67
122
105
92
144
37
55
126
127
138
119
132
122
131
93
149
136
109
74
169
107
136
92
67
92
55
144
104
93
136
134
105
199
37
93
78
57
111
37
55
139
75
112
110
111
86
105
90
74
146
103
122
178
97
110
110
99
81
94
123
86
74
55
104
140
152
104
138
119
123
122
138
92
138
169
122
178
122
107
92
138
139
105
131
58
144
92
110
67
122
171
147
92
127
55
81
99
138
37
127
122
55
105
91
144
99
104
84
92
142
92
138
105
79
127
92
128
126
96
107
107
93
122
136
105
158
115
111
55
104
99
136
150
91
132
180
88
98
110
169
55
119
105
139
86
78
67
105
105
160
171
100
67
93
58
56
55
148
68
105
93
83
128
126
137
126
188
136
126
97
122
116
126
138
107
68
79
125
58
169
111
92
178
92
37
102
122
189
122
67
123
145
67
105
68
131
92
122
160
92
110
91
178
122
123
121
55
111
55
75
140
165
105
122
83
119
124
180
105
163
58
105
97
112
124
109
67
107
69
128
93
122
85
68
83
95
178
72
105
107
126
58
95
131
124
55
73
101
135
92
140
89
127
67
111
110
92
110
110
127
110
136
152
119
55
93
110
92
122
109
121
92
134
87
67
117
148
55
110
91
69
138
104
99
58
95
138
69
152
89
178
74
118
151
86
67
104
144
86
130
127
144
92
93
92
104
92
168
103
120
110
56
138
122
110
104
119
77
110
110
117
123
109
169
122
67
124
115
93
126
127
130
101
55
69
92
105
126
123
138
119
69
110
94
55
152
126
143
92
105
110
92
135
110
105
126
134
93
130
106
92
118
93
55
92
128
128
112
105
134
92
151
58
99
92
101
122
138
92
55
128
110
126
55
152
72
93
138
128
55
81
104
55
127
152
178
104
93
92
104
188
136
151
92
86
107
122
148
91
139
138
79
107
132
128
168
126
130
125
146
119
138
92
69
67
93
37
56
138
127
146
108
110
56
55
124
92
99
67
146
56
98
134
171
123
110
110
132
110
55
75
103
160
101
100
58
86
136
152
126
67
68
74
122
140
163
107
134
56
92
55
116
93
127
55
105
110
93
164
182
97
199
124
105
92
74
74
104
102
160
144
138
110
146
178
120
104
93
178
86
99
110
104
77
126
56
104
140
110
106
128
105
93
93
104
110
110
93
106
178
108
91
138
109
128
83
92
127
92
95
91
152
148
92
156
178
114
122
169
119
122
119
100
169
120
55
114
107
79
148
152
92
119
119
92
93
125
138
69
68
131
37
131
138
92
99
37
178
132
69
58
104
67
122
140
144
123
104
122
58
134
69
127
110
67
37
138
55
98
126
110
111
111
56
83
37
139
79
138
37
171
73
93
138
125
110
111
37
144
110
105
55
102
140
105
144
110
103
126
79
131
86
128
124
77
105
178
144
128
145
106
121
126
56
74
78
92
160
67
138
139
146
113
104
104
107
171
105
152
95
126
179
101
105
56
145
105
138
122
137
122
56
105
135
92
109
69
67
138
122
100
120
74
97
69
111
99
119
110
118
138
105
74
110
99
67
75
131
92
92
55
139
140
55
104
122
58
104
74
110
127
92
56
55
55
92
139
142
55
92
148
104
122
92
144
128
75
80
145
138
140
162
138
55
139
120
89
99
69
92
158
110
168
67
105
75
69
91
140
91
99
110
93
105
127
180
74
104
110
141
56
68
109
100
107
122
131
114
119
55
129
37
69
71
56
56
92
165
105
146
55
67
178
111
105
139
135
139
69
55
55
56
92
107
92
122
79
107
147
67
91
169
105
87
137
122
120
127
105
105
93
58
127
138
127
123
123
122
110
110
37
178
113
79
91
105
67
97
126
117
144
124
131
93
92
55
92
98
79
58
55
140
169
75
182
118
127
92
103
93
68
180
110
169
55
92
92
83
68
111
105
92
92
92
69
164
110
56
128
105
137
134
107
138
179
56
160
68
57
74
91
178
106
146
124
92
105
65
88
103
130
99
160
126
169
142
126
122
138
126
75
144
148
134
105
92
147
123
67
119
169
122
92
138
110
123
122
136
169
126
105
97
162
93
123
104
79
79
58
144
86
121
56
179
131
122
79
105
163
37
110
131
126
86
163
139
110
67
88
139
104
139
110
144
77
134
146
123
139
69
101
104
93
110
178
92
122
37
110
92
93
178
91
110
92
79
86
104
95
75
123
139
92
144
58
126
67
105
92
127
105
126
104
56
126
171
93
93
120
58
104
104
68
112
114
152
115
118
138
100
77
127
99
110
86
139
110
139
126
37
121
139
126
74
89
169
93
119
145
109
56
91
163
67
74
109
130
169
110
152
122
140
91
123
68
103
131
144
105
79
110
103
131
105
55
89
58
122
110
55
93
58
107
138
111
92
124
55
132
115
126
93
105
160
92
112
67
138
152
100
138
107
114
67
103
160
93
91
103
169
110
138
109
95
109
122
100
122
91
69
131
92
122
93
69
77
124
127
126
168
105
79
123
92
103
92
56
145
126
109
107
104
128
75
110
127
110
122
178
55
126
69
92
55
111
169
127
144
144
117
144
67
86
75
69
97
164
101
122
122
139
138
127
178
114
92
58
152
99
122
92
81
92
119
144
105
138
148
149
102
149
95
103
55
67
91
55
120
122
105
178
67
153
105
114
124
105
110
178
72
111
138
162
178
74
169
92
92
79
101
93
56
67
126
69
56
134
146
110
104
79
110
109
77
58
74
126
55
114
134
105
104
134
119
103
126
93
128
67
69
111
128
104
138
104
69
124
110
69
92
104
102
37
148
114
146
58
74
122
37
89
55
127
146
105
110
171
139
79
67
67
134
114
55
107
83
56
126
112
75
141
171
138
86
171
138
138
92
119
94
58
148
134
80
158
97
119
131
88
168
110
145
131
105
104
127
131
140
131
138
75
79
134
148
97
138
139
104
110
56
140
146
37
146
164
119
112
83
123
99
105
123
105
89
178
67
105
110
111
126
58
67
109
69
105
134
124
86
111
127
178
99
126
56
92
123
99
146
83
100
122
141
58
104
136
144
37
109
105
109
128
139
105
93
122
130
139
56
74
114
123
178
127
124
69
77
98
69
127
141
86
55
69
74
120
126
67
111
105
127
115
79
55
164
178
92
107
122
69
69
56
69
67
105
86
92
55
110
111
103
126
117
93
37
85
55
126
171
141
77
92
123
56
93
93
104
77
112
68
98
114
178
110
93
56
110
105
146
110
134
106
104
58
92
67
130
146
110
79
55
124
93
121
140
178
79
55
122
67
139
55
139
152
152
122
108
169
126
72
56
55
105
126
144
79
107
92
92
68
131
81
92
144
55
74
67
100
91
104
92
111
136
118
93
101
117
110
110
114
92
84
145
73
77
144
144
128
131
134
110
139
91
103
138
127
104
103
134
114
67
115
122
64
93
77
105
96
139
122
105
138
105
110
92
110
139
37
127
126
109
55
55
111
92
124
122
64
110
114
106
91
144
67
81
122
122
105
110
105
138
92
138
181
180
138
144
93
178
122
148
105
93
75
122
56
144
104
134
110
178
92
104
55
103
83
55
110
86
114
56
149
92
91
139
67
55
58
138
55
129
95
37
169
122
138
109
104
169
136
56
93
122
56
83
75
111
178
104
144
86
111
92
178
138
178
99
110
146
92
58
92
138
93
126
105
126
92
139
126
138
110
169
138
144
126
146
93
97
110
67
55
55
104
138
122
104
109
105
168
69
122
86
110
111
107
128
37
105
92
139
75
67
83
126
128
145
69
168
138
169
69
104
110
105
69
169
120
138
145
112
99
140
110
56
92
93
168
81
86
180
148
67
119
55
67
112
110
56
110
110
139
92
163
126
105
105
58
146
104
93
178
95
119
56
140
138
37
123
122
119
127
37
121
132
92
93
104
163
130
105
138
96
104
122
127
55
144
192
58
84
122
124
105
91
148
86
130
75
139
139
67
67
67
56
95
92
98
180
130
139
111
162
55
79
135
55
92
107
109
109
158
67
58
92
92
68
112
75
92
105
125
122
92
139
105
110
103
86
144
93
68
144
168
91
119
138
55
134
126
92
144
119
58
105
92
92
152
126
192
98
93
86
79
120
169
92
139
109
67
139
95
105
182
91
134
55
58
69
55
122
169
58
92
107
138
134
136
144
58
152
122
92
122
136
139
105
56
105
88
55
132
122
146
139
144
55
127
134
126
146
180
138
83
110
69
93
92
169
56
134
88
163
67
107
131
86
164
138
77
130
111
56
152
67
120
105
56
132
126
92
69
108
56
92
79
117
139
94
86
126
138
83
110
92
77
74
110
92
126
127
122
110
109
140
111
86
105
160
138
152
137
104
138
109
139
132
135
123
102
55
104
104
102
55
56
56
77
167
123
122
104
110
91
81
126
92
144
55
138
105
92
105
119
83
74
110
149
108
89
110
55
86
67
110
79
79
138
37
91
91
92
93
111
74
92
107
139
78
135
79
72
95
111
122
139
130
171
167
69
91
122
67
131
140
139
126
108
148
75
101
112
144
75
37
140
119
105
37
122
58
93
178
139
108
55
111
102
89
144
149
127
55
124
134
171
109
67
69
122
55
56
87
69
138
67
178
104
178
110
92
144
140
152
105
92
92
111
158
122
92
102
100
140
138
126
58
100
117
93
124
110
102
109
88
79
122
110
156
55
104
122
55
75
152
138
110
126
69
55
119
92
79
55
123
100
128
123
171
126
92
83
110
128
117
55
158
169
67
92
121
55
119
92
140
110
58
55
122
91
171
91
144
123
92
92
92
138
56
124
56
169
105
146
104
111
144
56
84
122
76
55
92
56
178
180
119
128
139
146
139
89
171
140
128
110
128
124
55
91
148
119
119
114
123
140
79
123
84
68
105
140
138
76
138
127
132
104
55
139
89
83
95
165
92
152
89
126
139
107
138
105
104
55
55
163
124
92
93
55
126
110
67
110
56
110
105
74
79
55
93
92
139
127
163
79
37
55
92
86
102
92
55
69
139
56
67
178
67
72
146
56
168
37
127
81
112
55
56
122
122
56
55
67
97
89
37
158
93
137
146
58
92
139
104
96
151
120
163
132
67
122
105
107
56
128
55
102
158
114
92
99
105
134
128
104
126
188
37
58
55
144
127
118
146
110
93
93
111
79
127
74
105
122
92
106
106
117
109
37
58
119
86
67
93
112
105
110
86
163
93
124
55
128
126
105
126
95
67
119
128
122
122
136
164
55
124
144
114
120
163
107
69
126
126
171
56
37
103
126
37
81
122
55
128
76
107
110
89
93
75
104
128
93
104
67
126
146
79
37
120
152
169
109
140
69
109
55
135
162
131
109
93
106
74
84
134
132
134
140
110
105
126
165
126
103
122
145
169
152
123
144
130
107
92
111
92
67
110
93
55
93
92
92
110
153
178
139
100
122
92
118
122
132
37
139
131
93
158
132
92
105
146
124
101
114
103
58
37
110
91
79
93
123
110
37
110
77
109
128
140
109
122
67
178
100
105
146
110
69
144
152
58
75
132
138
111
171
110
117
148
110
111
104
122
93
104
74
103
83
171
124
178
122
126
72
146
97
58
144
93
79
78
67
92
123
169
151
58
68
105
67
104
79
110
69
108
107
79
89
111
68
55
180
104
125
152
104
55
178
92
93
92
67
144
56
123
182
92
122
112
138
123
126
55
58
110
124
131
126
180
126
67
55
100
91
158
110
158
164
128
98
139
139
92
55
127
110
81
55
74
55
126
117
164
56
104
139
89
73
37
102
134
56
105
139
126
146
124
120
92
132
104
138
118
127
92
160
123
110
137
69
88
122
67
55
92
126
69
130
112
86
105
163
138
69
147
122
126
139
123
56
87
107
86
110
55
130
56
107
134
104
83
118
119
110
124
127
120
92
111
92
112
110
131
103
55
100
93
105
119
56
137
86
134
122
93
58
58
100
74
92
148
80
92
126
110
112
152
84
37
163
136
55
137
98
93
93
79
138
138
178
131
92
92
144
152
91
136
108
79
99
178
127
132
128
162
139
132
138
55
56
153
123
61
92
124
101
77
178
37
124
74
93
122
75
165
131
99
127
100
69
127
55
152
74
126
55
104
126
37
105
110
105
74
69
152
126
128
55
130
178
146
110
110
55
119
139
128
86
127
124
37
91
37
84
81
122
55
92
69
55
122
105
110
162
103
138
119
140
109
97
114
56
79
92
93
131
89
152
144
97
128
84
75
110
165
79
122
74
134
104
101
105
78
93
55
84
64
135
105
91
126
91
69
161
109
67
138
145
56
69
37
77
92
69
91
149
56
68
83
103
105
58
111
105
178
92
114
138
152
197
55
96
118
98
158
92
126
148
83
178
84
92
83
86
127
55
168
92
143
122
114
55
126
55
93
126
83
138
152
152
103
84
127
122
163
55
92
74
110
79
75
56
146
93
55
136
91
109
108
58
75
164
56
159
160
56
67
144
140
91
168
127
152
122
108
162
92
162
37
104
163
164
92
56
111
101
67
105
152
125
92
69
144
105
126
115
92
104
144
58
110
145
122
111
105
124
127
158
122
146
112
37
122
144
55
98
92
55
138
77
138
111
108
146
169
80
92
122
93
122
69
169
74
110
79
100
92
127
99
163
110
56
105
126
86
122
58
99
110
93
143
84
145
83
169
92
108
89
55
122
93
150
92
152
127
139
86
67
178
107
114
139
171
37
125
67
158
138
119
139
148
77
110
101
119
92
104
99
130
99
126
83
145
139
67
105
78
92
79
168
91
144
136
144
136
105
128
56
121
93
122
158
99
78
55
138
55
93
128
56
55
92
110
110
122
67
127
58
83
163
69
92
58
142
171
92
169
126
127
162
114
77
120
86
79
93
92
138
123
138
93
146
37
89
136
86
58
178
110
100
81
76
79
168
128
105
110
134
139
126
156
67
37
123
117
77
163
92
99
67
169
138
131
106
69
145
92
58
86
110
110
136
67
104
93
86
69
86
122
104
55
103
96
110
136
123
128
92
145
103
123
93
144
105
93
148
92
67
110
86
124
105
99
55
111
104
55
142
171
126
139
93
95
126
74
112
131
126
111
127
105
126
139
64
138
122
138
124
111
104
109
145
168
126
178
105
92
103
55
101
56
55
140
56
89
79
102
180
118
83
135
144
122
148
126
102
55
75
92
86
93
37
69
83
55
69
56
104
182
58
92
56
91
111
77
132
135
178
119
104
107
68
144
93
139
123
97
92
104
58
75
58
140
86
171
56
126
108
93
128
77
136
56
105
67
126
107
69
89
163
37
139
104
134
67
169
115
55
92
146
69
64
117
122
127
92
118
92
58
152
119
180
123
139
67
103
99
92
141
119
178
69
56
124
126
144
105
37
119
130
123
104
152
138
81
144
142
55
139
105
134
79
110
92
102
67
74
56
76
123
138
92
110
128
103
139
93
100
160
152
122
144
95
122
74
56
110
119
148
67
105
126
117
110
110
158
89
92
78
110
144
111
69
103
69
138
37
138
104
86
92
152
138
69
119
152
107
107
131
86
123
105
126
101
92
93
111
69
167
56
144
55
122
126
93
104
111
56
104
126
69
112
104
169
92
136
123
138
105
119
152
99
105
140
124
127
86
91
139
122
56
132
118
79
134
58
138
67
92
146
106
122
126
103
122
110
178
120
86
91
93
110
109
163
127
108
126
111
122
136
69
126
92
58
141
56
105
146
144
122
126
110
75
178
122
122
110
67
134
56
126
84
110
102
138
141
119
67
77
101
99
168
120
93
126
98
91
140
55
131
92
92
125
144
188
104
86
132
67
124
104
139
130
122
138
126
93
88
93
109
92
140
110
95
55
104
37
158
171
55
74
74
122
124
140
162
110
92
103
110
102
102
55
73
130
86
171
140
92
131
69
68
148
87
55
86
105
92
98
107
83
55
69
83
119
134
56
115
88
102
86
97
169
104
67
92
144
108
84
123
138
92
144
130
139
117
128
158
110
93
128
135
67
92
67
67
164
91
56
83
122
122
92
92
101
101
105
122
86
111
132
130
131
167
110
55
69
111
122
122
107
111
162
111
107
84
92
144
105
138
127
92
105
110
162
104
78
140
114
126
138
178
100
105
105
139
139
58
110
122
122
135
77
78
138
146
105
99
86
128
92
110
145
55
110
84
92
137
139
67
67
126
92
137
110
109
124
146
110
79
92
141
55
77
41
110
67
144
167
139
129
109
67
110
93
138
140
92
111
131
92
128
162
87
110
144
92
105
92
92
123
139
75
56
84
144
140
146
107
127
91
121
139
114
58
55
124
58
74
68
55
75
165
99
109
55
111
178
55
104
110
92
77
110
67
110
110
110
67
126
125
92
56
158
103
86
127
104
128
139
131
78
98
171
169
107
79
139
55
37
119
139
105
134
138
55
105
136
56
134
188
134
169
92
88
37
110
123
68
152
74
138
107
122
55
99
110
169
56
79
149
103
102
128
122
117
75
93
93
37
91
104
138
132
138
109
127
111
74
178
105
107
58
124
158
122
56
122
91
156
128
93
123
178
92
58
104
67
168
119
126
55
126
130
126
74
75
158
138
123
180
178
123
69
91
126
58
178
139
110
139
80
77
97
178
126
105
137
77
123
128
162
100
91
124
107
167
138
134
108
92
139
114
122
107
110
91
58
126
125
92
87
114
144
94
105
169
140
92
103
127
146
152
97
105
99
126
130
79
91
152
110
122
92
77
138
77
93
178
126
56
67
123
92
56
105
55
74
116
91
138
55
56
146
55
101
139
106
55
107
37
56
79
68
134
105
83
74
95
137
163
58
37
74
126
112
144
130
169
178
100
136
58
152
122
84
115
84
124
86
37
168
74
100
74
104
114
122
67
128
92
93
126
169
144
144
37
110
171
122
67
93
101
146
169
93
123
92
132
105
81
122
136
119
110
119
138
105
114
92
126
110
131
107
158
74
110
37
144
151
110
140
98
55
138
93
99
123
110
107
122
126
139
105
135
137
104
169
140
55
56
55
110
91
113
110
67
100
114
92
92
105
126
126
121
111
122
112
139
123
181
92
137
130
55
123
158
110
122
131
105
58
126
37
80
139
122
74
180
127
37
55
69
91
180
119
105
122
126
92
158
99
122
104
126
72
127
98
126
135
105
92
55
55
127
109
169
148
86
58
109
138
162
178
109
126
110
109
104
58
86
83
138
92
141
178
56
103
158
80
99
115
122
83
69
94
110
128
56
92
142
145
127
156
119
68
123
128
101
105
128
104
107
99
105
104
69
127
140
167
168
110
178
126
107
126
109
104
79
92
124
110
126
93
110
146
37
67
92
55
55
56
120
93
37
91
105
139
69
177
91
98
92
136
96
138
111
144
127
56
127
55
112
120
104
104
56
56
67
104
126
136
86
141
171
138
81
69
160
74
55
122
55
128
103
75
108
128
69
67
86
122
134
56
123
118
68
100
134
126
152
112
126
95
105
105
83
178
67
92
100
102
92
105
110
37
122
97
69
92
126
134
75
131
113
146
148
92
56
119
119
37
86
145
162
144
128
118
68
105
122
171
92
92
128
92
114
69
105
56
69
67
58
74
77
92
145
105
104
122
109
100
91
55
75
130
92
138
88
105
144
83
128
131
69
127
95
74
169
119
122
92
122
103
105
86
123
105
127
105
68
91
148
103
126
101
126
140
169
104
56
110
110
141
126
104
122
145
105
108
105
105
136
92
86
123
69
126
98
37
109
115
92
56
76
146
92
105
188
127
37
69
129
119
128
158
105
67
141
126
55
79
131
55
126
131
99
126
92
86
55
77
101
92
55
92
139
92
105
158
99
111
67
102
110
122
56
148
117
91
37
108
58
55
109
107
58
126
104
112
126
116
139
86
58
67
145
105
55
119
67
93
92
146
110
114
67
69
139
55
92
122
77
110
55
98
152
111
180
163
55
104
56
74
131
94
109
109
68
127
105
128
127
128
99
110
110
119
108
135
92
109
136
79
110
128
126
119
77
86
119
67
110
144
99
104
89
126
69
92
131
134
169
146
69
55
152
92
144
92
146
122
99
111
134
122
67
86
122
135
109
55
67
168
77
67
138
123
122
79
92
169
128
126
55
199
98
121
74
163
56
130
69
37
112
127
138
178
110
105
83
111
91
55
126
110
123
119
58
126
167
139
79
134
123
151
138
114
110
92
58
111
77
69
104
111
74
139
37
199
138
67
126
152
105
69
110
171
55
99
115
77
126
37
124
91
152
131
105
180
144
58
89
56
141
56
92
56
92
126
86
136
79
55
37
92
56
148
86
138
152
178
91
123
69
134
171
56
113
58
122
131
55
105
78
55
69
126
148
146
138
139
111
93
105
138
118
93
69
169
55
171
94
58
105
92
58
104
68
152
37
141
55
122
91
92
56
122
67
178
86
37
104
152
67
67
158
55
55
123
124
95
122
156
119
147
97
75
92
117
37
86
92
144
122
55
92
122
110
101
110
92
92
163
107
118
128
130
137
67
67
122
81
119
134
114
75
110
122
126
148
55
56
168
144
37
127
95
58
55
102
131
140
92
99
130
111
93
124
129
119
107
55
84
91
105
92
105
163
126
138
74
136
74
77
79
55
92
168
105
123
140
140
140
37
124
169
180
122
140
122
158
138
126
146
162
81
119
122
126
104
171
55
58
160
103
110
92
138
75
101
89
91
92
138
92
105
100
55
138
67
122
104
126
158
120
142
69
138
139
109
123
130
88
122
91
92
134
119
111
91
67
93
147
122
77
37
178
126
138
127
110
68
123
138
138
123
118
108
92
150
178
119
97
105
37
67
134
68
127
140
138
92
119
105
55
58
79
37
188
37
132
110
103
146
58
92
131
122
122
75
136
104
139
126
92
127
188
67
105
123
101
134
139
58
110
192
100
110
178
126
140
68
105
126
92
94
134
55
148
152
84
56
97
67
132
124
37
131
97
122
112
144
163
93
67
124
126
104
148
105
117
152
199
96
127
79
79
109
138
55
152
119
127
69
128
97
163
93
122
108
110
88
122
58
158
145
37
124
92
92
84
106
135
69
101
105
75
55
138
134
135
148
86
144
140
144
37
109
92
103
131
92
104
123
56
93
127
67
55
74
75
158
111
167
138
126
127
103
138
128
139
69
96
142
92
102
144
77
77
138
92
99
93
95
114
148
112
105
67
124
55
92
116
119
68
110
192
91
126
105
134
37
165
108
110
127
127
119
110
91
67
72
99
56
105
122
37
111
83
169
93
37
123
146
105
138
105
105
103
86
37
144
126
169
137
134
58
68
96
122
128
152
122
111
169
110
136
152
127
61
55
92
160
55
110
119
105
138
56
92
178
139
79
105
139
93
126
105
137
120
111
93
134
110
79
139
146
91
104
86
93
67
111
94
108
127
163
67
113
86
137
126
79
55
55
146
126
132
122
118
110
107
67
98
160
75
64
107
126
126
110
122
92
126
148
112
126
92
93
67
58
92
97
140
55
127
55
55
130
178
110
122
119
144
111
67
180
104
58
112
91
74
67
130
140
178
68
92
134
105
146
114
86
139
178
128
122
123
105
55
93
131
127
86
139
55
122
107
69
144
98
55
84
122
93
55
55
122
86
91
92
67
111
144
110
99
178
93
115
146
119
122
107
135
74
92
144
69
126
122
144
123
123
110
128
169
122
139
110
120
92
131
78
139
158
55
55
56
93
109
171
78
128
126
151
89
164
128
92
56
86
148
67
138
117
139
58
129
55
151
104
126
104
110
75
93
114
171
146
140
56
178
55
77
110
122
126
37
171
58
127
109
114
128
144
138
69
83
126
122
124
124
109
56
134
55
134
55
75
119
168
144
107
158
138
127
117
77
165
139
37
85
56
107
122
94
110
171
101
67
58
134
123
117
127
138
128
141
92
103
105
134
126
146
93
99
56
104
110
58
67
169
126
71
126
97
92
138
88
126
56
58
67
110
122
84
130
110
93
69
122
126
92
134
91
155
131
97
110
109
134
67
109
107
58
105
144
55
114
138
148
122
158
111
104
105
120
111
178
110
111
67
97
89
127
101
110
139
140
123
105
122
130
128
77
75
122
127
150
55
55
56
74
104
55
126
168
67
69
92
124
93
74
122
67
111
55
92
104
105
86
111
103
130
111
77
64
139
139
151
105
114
91
152
89
139
126
79
152
93
37
93
55
178
92
75
91
144
144
103
105
110
130
89
103
86
126
110
144
55
55
67
128
171
55
92
105
92
130
83
138
105
110
138
126
92
86
149
92
92
55
123
76
97
67
55
139
160
77
55
110
100
101
147
95
55
140
127
79
55
127
122
178
119
92
139
135
104
74
86
77
92
127
131
74
110
92
68
104
55
119
123
134
152
103
105
58
67
178
92
109
126
146
105
111
178
56
74
107
109
111
111
122
55
146
86
81
84
178
139
92
152
141
152
92
146
78
86
137
74
127
127
126
74
108
67
58
126
105
100
88
139
138
106
67
144
126
107
69
55
88
123
122
138
37
92
127
111
126
58
139
98
55
168
111
77
69
131
130
122
127
67
58
73
153
146
103
92
139
131
105
122
110
108
83
86
137
67
93
91
126
138
138
67
93
84
37
146
105
56
151
102
144
98
138
89
126
197
111
122
126
37
106
123
83
104
123
139
58
152
84
105
110
67
126
105
89
101
104
110
83
146
91
75
126
139
164
110
94
55
105
67
101
105
127
129
55
138
149
106
37
55
132
86
138
144
111
156
110
164
138
67
126
106
123
135
169
67
110
110
124
92
120
127
67
55
86
105
104
105
111
92
92
119
67
136
126
122
110
93
124
91
67
139
67
105
56
84
55
67
75
55
55
93
122
110
58
92
109
58
168
164
98
55
122
122
104
138
125
106
119
112
103
119
111
169
111
146
74
148
69
105
111
68
119
92
92
65
105
55
37
93
103
41
134
180
68
111
165
103
137
101
122
92
114
67
119
126
69
178
103
101
138
123
117
86
192
91
107
162
167
92
56
103
113
127
55
105
151
138
105
171
158
37
55
124
105
79
56
58
78
139
67
142
117
92
74
124
169
110
134
163
139
178
115
128
127
105
138
37
178
110
73
92
169
69
58
94
84
112
93
104
138
127
127
128
55
109
110
75
134
105
178
55
117
171
105
126
98
108
122
136
145
95
137
124
93
152
79
122
103
55
77
126
144
104
79
126
99
140
120
110
93
69
126
93
93
178
124
105
119
107
120
69
89
77
55
109
152
97
92
92
137
86
56
122
92
81
92
178
104
126
163
138
126
149
55
55
92
127
139
99
67
55
92
110
89
89
99
75
178
105
180
67
127
79
140
77
92
67
118
104
123
149
92
93
77
74
124
55
178
79
67
119
92
178
144
67
110
92
77
149
171
138
105
68
142
138
134
92
148
83
68
56
103
169
134
123
75
37
104
110
162
105
83
130
169
105
134
181
178
89
169
119
111
92
167
92
146
122
56
178
138
67
139
105
86
138
138
112
109
37
92
103
138
140
144
111
114
128
77
56
55
67
109
93
92
92
104
105
67
55
129
100
126
92
138
105
104
104
108
109
91
75
128
93
86
131
92
79
55
129
77
169
114
139
104
178
55
103
126
110
56
112
132
56
105
93
132
79
100
67
122
92
146
122
126
92
92
117
138
115
104
110
138
75
72
126
69
92
124
180
131
79
144
104
67
162
108
110
152
100
145
122
110
105
127
131
105
86
110
99
37
110
119
56
55
138
103
55
93
138
74
134
55
37
130
128
122
139
122
123
138
122
56
98
55
138
67
81
93
138
91
69
86
146
95
149
69
138
104
144
91
94
92
104
146
144
55
171
126
138
152
127
56
140
68
97
56
89
126
113
127
103
134
126
91
178
55
122
105
178
105
134
152
110
92
67
93
103
130
140
178
55
138
119
55
104
67
84
123
104
97
86
67
148
103
139
126
117
98
144
138
56
105
162
110
152
112
128
67
167
88
55
128
110
58
77
144
139
109
136
132
56
130
152
146
99
135
178
140
77
126
106
55
99
110
142
119
105
68
105
79
37
158
110
77
105
128
138
92
75
168
110
55
86
37
92
75
122
127
119
126
96
55
55
68
146
67
148
119
69
97
92
92
55
105
128
136
75
110
134
130
123
152
55
67
122
122
122
99
144
105
92
104
79
142
128
127
144
160
67
178
93
110
110
105
119
122
180
87
92
74
122
56
122
122
111
69
97
92
55
126
37
110
89
56
136
138
92
67
92
118
109
55
122
138
100
86
56
126
111
123
138
111
81
104
37
105
55
92
96
55
93
96
122
86
134
124
108
55
171
124
83
56
56
124
158
138
93
130
105
168
111
75
158
110
81
69
58
131
146
69
110
111
92
111
119
92
127
140
112
55
126
92
128
138
86
89
55
163
127
93
115
110
86
126
122
107
99
135
103
104
109
111
105
158
37
75
92
55
139
92
102
178
126
55
92
122
92
123
123
37
99
122
122
105
55
138
99
162
84
123
93
123
109
111
163
99
69
122
79
56
37
152
136
105
56
67
92
55
67
131
99
139
37
68
92
126
102
130
146
149
109
110
92
67
139
92
67
86
111
111
99
128
56
109
178
110
93
152
91
74
86
178
145
58
56
77
67
126
108
74
67
138
56
99
69
92
128
92
93
79
105
72
92
122
105
92
105
105
89
80
115
97
41
112
67
168
106
58
109
163
92
156
107
152
92
56
149
55
77
158
126
107
122
74
131
127
107
138
105
122
79
138
152
110
114
105
93
122
101
169
122
108
99
138
109
144
37
171
55
130
84
178
67
91
122
98
105
111
74
77
110
144
171
122
110
69
37
146
92
107
134
140
114
119
109
110
111
110
55
92
136
168
138
138
180
103
67
114
75
58
89
110
127
67
79
76
55
124
139
167
56
55
128
75
129
91
162
37
137
126
144
101
168
93
134
106
55
67
139
97
105
93
55
55
55
80
86
84
178
77
108
79
92
105
69
122
124
127
178
122
105
98
56
92
97
104
178
119
111
127
111
104
56
126
111
81
55
67
126
84
103
152
112
55
150
67
152
58
127
126
110
86
126
139
110
77
77
146
127
93
98
105
55
111
67
110
84
98
74
100
111
138
98
138
86
162
71
105
55
111
93
145
132
124
122
56
122
55
126
128
119
56
105
178
126
136
37
93
119
128
87
79
152
93
97
126
128
125
105
81
119
58
138
86
88
138
56
126
67
55
171
119
83
122
68
55
92
165
92
106
146
91
178
120
138
144
77
146
87
110
75
110
97
100
110
122
123
73
140
178
56
118
132
140
152
93
92
75
199
103
144
77
138
126
128
55
92
83
171
92
109
122
123
119
105
110
93
58
55
110
55
55
126
109
105
92
123
81
159
72
122
178
92
105
100
84
93
105
139
128
93
58
55
111
98
146
91
123
67
69
110
67
128
109
146
128
67
122
163
127
107
122
122
69
112
107
92
163
163
56
140
69
122
77
150
148
98
110
103
124
91
71
67
127
102
56
105
158
127
122
140
110
58
122
79
37
55
128
128
77
136
124
56
102
115
169
56
109
55
148
55
124
122
132
37
138
93
67
55
167
92
139
92
55
86
111
152
127
111
131
199
55
55
128
92
67
152
55
87
122
139
110
91
55
58
126
67
92
55
128
162
107
55
158
128
178
79
127
110
55
91
58
171
84
112
55
98
131
195
69
171
152
122
75
126
122
102
119
77
130
103
93
146
169
69
136
56
75
37
111
152
79
144
162
110
140
91
130
139
110
77
126
127
69
100
197
37
81
95
99
109
92
146
75
104
127
56
103
91
178
103
138
79
80
92
158
109
91
92
109
93
127
110
108
55
56
105
104
126
180
126
55
122
86
104
84
58
126
126
56
92
58
98
178
123
69
109
127
69
96
120
55
74
105
139
128
121
167
104
74
92
163
92
128
123
168
95
110
144
107
134
75
131
69
99
139
168
127
55
105
144
37
163
153
93
69
89
67
93
169
109
111
146
79
152
113
124
105
105
123
99
110
134
37
37
93
104
138
81
58
102
119
69
55
188
124
93
127
123
55
105
98
67
180
93
122
114
83
56
97
118
180
92
56
55
92
105
163
158
123
93
119
55
67
127
92
37
67
152
114
122
122
134
104
139
67
136
92
69
56
67
112
124
135
58
169
124
167
146
127
144
146
138
74
136
101
83
79
67
156
138
86
79
69
123
149
75
112
171
130
134
127
122
105
144
67
75
58
132
95
74
56
37
69
135
73
146
55
105
123
127
110
58
72
101
104
92
109
127
128
137
92
92
111
152
104
105
55
112
84
55
93
126
163
110
110
132
160
178
105
55
67
55
126
128
169
130
99
122
128
136
86
134
129
148
139
110
119
56
37
79
112
105
58
119
145
126
88
75
93
125
178
110
105
110
93
139
91
127
110
127
92
55
56
76
138
130
86
144
122
180
74
126
178
104
126
92
130
120
84
83
163
55
69
124
110
126
99
103
67
110
93
127
105
112
124
148
55
103
55
137
92
105
128
120
37
101
105
124
105
80
89
124
100
144
55
99
122
180
105
92
109
131
127
145
69
93
158
112
136
86
97
154
107
135
102
56
199
148
55
105
134
92
110
142
69
165
178
93
55
93
178
139
138
110
110
128
92
140
178
122
86
92
104
86
111
128
135
67
109
81
37
88
91
56
146
103
122
56
139
104
105
123
105
128
131
92
126
132
103
105
78
146
67
118
118
92
55
79
122
67
92
128
55
169
122
130
92
78
122
165
105
144
105
69
93
122
122
127
55
105
56
83
99
140
68
110
115
107
103
84
121
107
122
127
112
104
111
126
105
119
105
91
105
92
99
146
138
110
136
104
100
178
83
130
146
146
92
112
138
92
139
134
127
94
119
132
137
86
109
74
55
110
79
153
132
168
145
56
104
119
100
136
77
105
122
134
92
117
127
178
126
92
79
67
178
146
126
140
134
138
103
158
58
75
145
55
139
114
37
132
93
134
102
83
92
128
92
126
55
122
110
165
126
178
111
105
92
93
104
104
67
123
122
110
68
126
119
178
120
138
169
126
80
139
55
146
102
122
171
92
67
152
138
110
55
138
171
138
76
138
103
55
92
103
104
55
92
145
97
127
92
124
158
55
95
180
92
91
58
122
110
152
79
107
102
136
104
97
98
57
138
119
92
152
126
92
74
110
37
128
110
123
128
123
140
55
139
146
146
92
110
122
67
37
140
168
92
122
56
55
119
55
152
144
75
189
98
122
112
56
77
102
102
128
139
105
86
144
67
122
92
67
152
117
92
112
91
92
126
97
138
69
93
37
140
178
107
56
110
138
130
127
168
104
91
130
122
122
138
55
67
139
129
131
126
92
55
119
128
122
119
152
123
110
101
37
83
99
111
79
152
138
37
148
87
171
97
102
132
103
56
68
67
110
122
122
127
152
104
138
37
152
37
95
141
67
138
111
110
74
119
55
93
146
92
144
122
144
139
93
138
131
106
86
138
105
104
68
84
134
100
148
126
104
78
92
140
126
37
113
126
55
154
138
67
105
104
114
144
55
144
122
75
92
83
55
79
111
56
104
146
110
139
74
89
92
92
92
92
56
92
122
139
55
92
122
160
122
130
146
128
140
95
67
122
138
41
124
92
105
128
162
55
55
105
55
180
61
126
86
107
67
99
55
111
144
128
138
106
74
144
127
148
138
97
55
122
105
140
56
74
105
98
92
105
104
123
124
122
126
122
144
37
68
75
122
134
37
55
132
58
112
104
97
55
110
139
77
118
37
74
135
86
126
97
67
120
93
137
58
105
139
180
103
139
138
105
99
178
55
74
88
67
104
130
127
105
123
37
107
199
139
99
101
105
55
148
67
195
138
80
93
104
56
58
110
146
104
110
73
169
58
96
178
110
107
74
86
77
107
93
178
146
92
138
58
55
93
108
160
75
68
99
123
167
121
144
122
106
69
68
124
138
86
124
92
123
138
127
93
78
168
126
56
138
67
124
92
139
120
74
84
55
178
178
122
136
110
126
86
134
126
128
139
92
68
126
127
92
138
110
148
102
55
103
99
138
91
113
84
56
105
67
122
127
122
138
68
69
113
67
113
122
92
103
123
104
77
180
119
110
83
37
88
105
67
126
92
138
149
123
77
56
130
122
168
67
55
126
92
126
107
55
109
169
93
55
55
110
110
152
77
129
118
37
164
171
122
140
141
110
88
126
115
92
122
105
111
98
103
74
92
131
117
127
79
146
127
55
77
127
105
55
91
169
105
77
56
93
69
131
74
110
67
79
67
107
56
122
56
56
77
171
144
128
122
122
142
111
134
146
157
140
110
92
158
92
148
131
111
180
199
74
199
110
92
124
126
104
78
105
124
78
56
69
74
160
101
128
104
86
158
100
160
146
105
124
67
98
134
58
110
74
104
56
169
152
86
88
93
122
115
148
118
99
107
178
167
105
151
130
148
126
104
152
74
145
93
126
65
37
124
141
105
127
126
104
99
109
89
138
58
74
110
37
101
152
69
67
105
98
145
112
93
145
55
55
58
111
105
55
92
67
139
56
138
92
138
67
83
104
110
56
162
104
79
127
92
56
99
104
83
111
93
126
139
162
110
127
55
88
86
67
111
92
120
105
75
105
130
110
107
105
79
69
139
127
101
75
126
68
122
160
67
58
148
123
127
144
91
105
67
107
37
131
67
152
106
122
99
122
105
92
119
69
127
124
83
91
91
110
104
110
74
122
123
128
117
126
104
171
128
55
123
128
96
93
123
134
138
105
112
117
58
103
74
122
92
99
122
169
98
105
180
138
146
55
107
141
92
92
103
83
93
86
67
152
105
105
126
120
122
110
105
110
152
37
110
109
138
104
92
122
55
68
123
110
110
111
152
107
58
93
69
122
111
83
139
122
107
96
55
132
178
119
93
93
92
105
67
111
128
163
131
122
163
86
67
77
146
55
123
148
64
114
146
126
126
104
55
110
126
119
104
77
83
89
127
168
152
132
103
55
119
107
178
131
171
58
77
56
123
92
138
122
110
109
128
55
105
130
149
83
132
163
118
68
92
178
55
110
122
138
158
92
107
126
37
110
139
119
124
122
86
55
105
84
152
78
55
139
149
93
139
86
105
110
146
117
83
105
119
126
140
120
93
107
168
139
86
91
124
139
110
86
122
122
79
160
165
56
138
178
169
122
103
67
92
91
158
132
139
126
126
109
180
91
126
83
92
108
122
92
140
110
109
86
126
99
140
125
69
139
95
55
103
67
58
92
41
138
162
58
101
138
134
81
126
102
83
138
115
169
167
122
91
138
122
110
138
110
105
124
92
109
105
75
120
100
69
77
122
113
110
152
144
110
68
110
109
91
75
178
85
146
55
55
92
69
152
138
67
103
102
92
122
112
56
110
127
104
91
122
146
168
92
56
92
110
171
122
99
100
126
93
93
146
105
111
148
140
110
144
92
92
114
103
122
55
109
127
92
69
122
115
138
163
150
104
127
109
104
146
126
55
110
58
99
93
122
75
67
114
83
109
109
92
91
120
138
127
123
122
86
144
142
138
55
37
104
134
92
92
128
101
134
92
139
119
86
92
69
68
91
122
139
138
136
138
55
69
92
178
110
129
152
74
126
139
105
69
126
58
92
110
128
137
108
69
139
109
75
107
112
169
67
114
37
133
126
119
68
91
110
104
134
67
74
92
107
101
122
91
169
110
139
131
74
37
104
92
138
127
106
178
84
68
112
55
69
122
123
92
139
55
105
58
127
169
138
93
97
67
144
55
138
147
55
138
105
67
129
92
134
75
58
138
83
120
104
126
123
69
107
140
134
165
110
58
55
93
148
140
37
138
93
92
104
56
134
139
67
152
152
134
129
122
56
67
84
123
93
129
108
164
146
55
122
100
122
109
37
83
171
55
105
91
105
126
128
92
55
91
119
67
55
122
105
122
122
37
119
110
105
162
104
126
114
104
79
130
83
93
110
92
104
92
114
55
146
111
136
140
136
106
152
168
91
86
192
128
93
97
146
122
122
115
98
141
92
122
98
146
91
89
86
103
101
84
122
123
37
101
169
77
126
178
83
93
122
110
67
55
77
83
69
138
37
144
136
55
130
135
110
67
123
126
92
130
146
179
110
92
92
126
126
92
156
138
58
145
101
110
137
122
75
55
128
123
78
144
105
93
146
107
146
126
139
110
111
93
55
91
104
92
123
56
126
105
134
135
138
37
56
92
139
97
67
104
144
178
111
93
138
79
158
104
122
93
83
130
56
110
160
93
93
125
124
148
178
114
119
61
138
169
146
138
93
178
111
67
140
119
37
37
169
104
168
37
144
55
135
119
105
92
105
106
56
92
122
128
162
101
101
137
127
79
55
86
123
135
56
152
140
156
144
74
72
103
37
105
99
37
105
178
83
144
86
37
130
67
92
134
146
58
119
79
78
112
69
104
118
140
92
77
105
105
67
147
93
169
128
92
128
69
180
152
146
86
58
110
99
144
128
74
55
55
79
124
104
152
146
122
144
37
110
92
138
104
152
104
110
127
110
138
117
118
126
107
149
144
37
146
127
160
86
134
79
144
171
93
112
111
123
55
122
122
110
122
105
123
152
122
131
128
122
140
58
126
97
126
126
180
67
99
67
137
55
105
144
69
104
130
92
86
128
77
134
74
139
104
100
107
140
124
105
95
112
93
77
69
75
92
127
107
119
86
119
122
78
146
67
141
178
111
67
146
86
110
109
69
168
140
148
91
134
92
69
126
56
69
110
75
99
122
139
138
104
55
164
93
83
109
125
55
67
139
110
122
126
58
128
56
111
37
178
119
140
138
93
126
128
79
104
92
105
139
67
55
93
93
55
83
138
146
107
67
96
93
69
178
113
139
178
171
127
58
56
75
104
75
93
93
55
122
55
100
108
142
126
92
146
158
122
93
119
92
123
126
132
122
55
162
134
169
122
74
136
109
110
127
92
119
99
84
67
107
145
58
92
100
134
92
123
72
122
122
144
92
99
55
123
84
55
169
86
37
110
91
133
92
127
58
67
56
91
138
86
110
92
110
136
87
122
92
112
93
138
69
122
138
56
105
138
146
58
92
100
139
84
105
138
55
55
112
126
139
110
110
120
119
112
105
117
123
92
139
110
104
92
78
128
67
120
55
152
104
167
131
114
110
138
125
86
140
152
69
107
69
122
120
136
67
104
67
56
138
55
134
129
139
103
134
130
55
56
87
68
127
112
127
107
117
110
55
110
134
163
144
55
67
110
55
69
128
91
66
58
103
55
102
58
92
111
160
92
56
106
122
68
107
103
55
56
67
122
79
101
94
55
126
178
58
104
92
108
122
67
126
93
87
122
67
105
114
92
55
106
86
79
126
84
55
56
110
197
138
178
169
105
77
145
105
67
105
97
58
84
55
134
152
92
86
55
105
56
125
131
131
138
180
55
117
122
56
69
77
58
55
124
119
126
110
118
110
86
67
134
131
138
128
111
144
134
55
123
78
171
93
105
178
169
92
134
92
114
92
123
92
140
55
126
103
55
105
123
126
99
127
152
168
117
104
111
138
101
104
67
55
126
122
95
126
144
55
104
105
58
92
37
105
138
92
97
138
99
139
126
92
89
144
111
171
93
37
122
128
111
162
67
86
139
56
55
97
101
128
83
92
77
68
97
105
122
58
158
139
109
101
68
92
79
99
69
127
102
81
122
169
103
146
75
105
107
112
122
148
114
126
139
122
122
37
78
56
144
92
110
122
122
140
113
144
105
126
122
55
122
128
119
105
37
139
68
100
105
126
104
126
58
138
152
138
79
122
93
139
111
122
189
56
140
199
110
119
77
137
117
92
122
75
122
130
128
132
97
74
99
55
92
58
124
93
146
139
55
123
37
140
119
101
55
152
104
93
104
119
132
110
58
122
91
95
130
139
192
105
152
119
105
134
105
127
98
105
117
130
69
122
139
106
99
127
148
136
105
150
67
126
132
178
92
171
112
107
110
199
69
148
92
74
37
136
92
86
137
69
78
135
119
199
146
122
95
77
92
119
92
92
136
56
67
69
104
127
67
93
119
56
127
140
169
126
123
126
168
56
146
132
110
58
101
69
103
134
124
146
129
146
152
99
91
86
93
111
111
120
67
127
56
37
119
105
169
142
93
180
93
103
102
99
120
138
129
126
136
67
55
110
92
56
122
163
91
105
68
164
144
93
92
110
91
74
111
67
110
139
171
139
58
148
127
122
178
158
92
55
56
55
37
158
144
37
122
56
109
126
67
67
69
86
123
178
55
86
120
119
144
138
80
104
135
144
126
55
98
195
92
55
179
69
56
75
131
144
138
122
58
104
128
122
97
110
104
92
118
105
92
110
83
67
126
77
138
110
56
92
56
67
158
104
67
55
136
37
112
119
134
139
144
92
117
58
144
124
159
131
105
127
77
167
98
107
110
126
56
69
158
111
79
122
55
55
86
127
105
141
37
151
122
93
122
104
99
139
92
55
111
119
110
139
92
99
97
92
99
111
122
178
86
81
92
55
55
104
122
86
68
144
110
55
122
69
138
79
89
55
91
152
122
122
113
93
92
91
106
69
160
105
146
92
148
137
105
105
140
83
119
144
67
169
130
37
146
92
79
119
119
92
128
106
118
122
37
130
124
122
149
138
178
86
152
58
86
134
55
55
126
139
112
122
77
92
122
126
163
119
103
105
122
122
83
138
56
188
92
55
100
56
114
152
126
107
138
105
55
138
148
55
105
89
131
128
139
104
135
122
152
109
92
92
103
112
110
124
105
134
101
148
105
110
92
92
105
126
56
58
88
58
65
92
58
81
99
110
105
55
92
83
75
122
119
148
92
126
128
86
109
77
127
110
83
77
101
127
55
118
68
93
110
158
92
178
127
122
105
105
111
67
122
139
122
75
128
58
117
74
138
180
99
128
105
152
158
92
98
67
138
127
182
168
105
99
122
164
165
67
152
138
123
122
134
110
78
105
55
148
122
122
92
93
83
67
138
55
75
127
74
147
77
100
128
99
112
103
100
121
55
92
123
112
139
110
75
84
37
104
168
178
56
171
69
122
93
92
105
91
165
126
139
79
117
89
138
151
140
104
104
69
55
92
142
92
112
163
128
56
92
55
122
110
110
117
107
89
139
144
93
55
110
122
171
160
56
182
110
138
77
134
56
178
77
111
178
123
145
138
102
112
132
122
109
67
131
117
122
93
110
171
104
132
100
123
56
134
67
138
127
131
126
100
56
148
109
127
97
74
110
126
126
101
105
55
110
119
93
107
69
107
124
67
126
104
55
110
138
146
137
105
56
178
92
158
126
105
119
130
98
127
128
107
128
167
164
110
128
126
99
123
92
74
56
75
92
83
123
74
104
117
56
138
55
110
110
102
107
110
68
86
178
92
138
144
92
97
138
76
160
92
124
168
110
126
134
85
104
138
97
152
128
79
110
55
144
69
67
69
126
55
37
122
146
112
138
136
168
105
122
122
156
69
110
110
119
92
69
92
106
92
67
109
139
139
92
136
69
136
146
122
67
104
37
93
37
37
163
105
58
92
169
93
112
103
122
93
105
92
58
178
37
67
107
148
79
78
119
92
75
79
37
69
77
93
67
152
87
122
105
128
151
105
105
138
152
105
136
126
99
55
138
55
127
126
91
92
58
126
55
79
126
69
111
37
105
132
160
138
105
104
93
136
99
153
104
138
83
56
55
146
103
92
84
135
79
111
127
104
169
165
146
111
126
114
192
75
103
110
126
55
139
140
86
93
67
144
110
84
127
114
126
107
75
138
152
89
144
74
111
92
67
156
58
122
180
146
86
100
103
84
141
67
119
109
111
73
92
56
109
55
110
122
152
139
37
117
122
67
122
123
152
58
58
101
77
117
129
134
105
91
142
126
109
105
99
37
55
107
109
92
124
146
84
139
107
55
100
67
140
92
139
55
139
55
113
128
156
105
139
37
123
67
37
67
188
58
138
110
91
55
130
148
107
104
98
58
92
77
109
73
92
91
67
107
169
126
75
128
92
103
122
74
125
56
139
67
55
122
126
83
148
67
178
93
92
188
126
67
122
77
92
93
152
79
55
56
100
110
74
37
92
169
75
67
112
110
122
84
178
146
115
110
119
105
55
139
56
120
137
56
55
56
126
83
135
149
95
122
139
137
192
126
135
144
124
118
92
138
75
83
192
55
136
152
122
139
146
110
67
37
72
127
105
79
95
92
104
138
110
178
56
93
99
123
56
139
146
122
178
67
115
126
105
119
108
127
140
112
99
55
77
123
140
120
160
134
152
122
130
105
132
128
152
124
118
119
109
95
105
152
92
105
131
126
106
69
122
99
110
144
126
122
98
92
67
131
126
67
122
140
168
110
93
126
138
119
56
110
56
92
74
139
69
104
92
114
68
86
112
91
106
160
107
110
99
119
110
111
119
95
58
37
77
67
110
56
79
92
168
58
134
69
84
164
136
113
77
67
144
93
140
58
110
93
105
110
128
122
111
56
105
134
99
168
126
110
99
104
140
55
140
139
148
55
93
117
122
99
122
58
37
169
105
122
92
37
138
102
58
169
67
188
92
69
104
130
168
146
158
58
101
126
69
92
132
152
55
110
128
55
123
92
127
55
101
99
152
146
126
65
111
55
177
67
93
69
58
138
138
68
67
75
91
104
84
84
55
122
104
86
105
122
138
128
122
140
97
105
126
81
56
100
55
105
92
68
74
138
86
124
134
55
109
122
93
156
91
67
55
126
86
178
58
67
83
92
131
126
77
105
55
104
123
105
86
126
122
126
135
97
138
117
92
144
67
138
99
109
118
55
111
178
58
130
127
55
138
92
128
112
146
68
126
56
119
178
93
55
107
139
67
69
105
67
86
79
123
123
96
93
99
126
122
107
109
126
178
88
126
119
69
77
122
105
79
92
77
111
122
126
98
56
117
134
139
88
180
93
55
104
132
131
55
144
122
58
69
110
114
69
138
126
122
75
138
128
134
138
104
178
92
139
104
92
104
138
92
55
114
126
105
109
127
86
92
77
118
88
79
126
55
84
85
122
126
92
127
144
128
37
152
119
95
69
122
55
99
126
124
112
37
105
93
93
92
99
55
88
122
69
138
122
102
77
105
67
111
134
55
123
91
122
114
83
110
152
105
169
67
99
37
126
109
93
105
123
144
77
58
132
112
111
178
77
55
152
138
88
122
89
146
138
178
145
163
144
92
109
124
93
126
127
122
121
101
134
104
55
138
74
138
74
110
107
110
127
117
128
74
69
77
92
93
100
86
74
81
126
139
104
105
145
123
136
110
110
122
122
110
79
67
77
56
135
146
144
55
93
58
122
146
141
83
135
91
128
74
138
122
105
86
55
84
152
127
110
138
74
97
73
95
136
110
111
55
126
55
123
109
121
122
110
58
92
131
89
134
69
67
67
67
107
120
92
139
56
110
100
122
104
92
131
126
56
92
122
132
37
56
144
103
138
92
169
139
146
110
98
110
100
139
67
108
126
138
55
138
105
99
104
37
144
37
117
104
92
122
58
113
75
119
106
37
67
122
152
92
105
171
110
103
126
127
110
109
110
109
99
92
109
92
138
111
92
131
122
37
92
128
138
67
145
140
158
110
110
104
109
139
55
110
92
67
130
86
126
138
110
178
56
127
105
79
79
138
168
122
122
56
61
134
55
55
138
124
171
139
105
92
91
68
146
79
107
107
104
89
104
67
141
118
138
55
139
79
56
146
91
138
91
119
92
114
127
105
138
125
117
55
91
171
146
103
110
89
123
139
37
93
92
167
105
92
125
123
171
139
100
145
55
122
77
178
139
104
89
162
92
104
138
146
56
104
103
112
77
69
114
92
126
117
136
92
126
67
110
127
126
92
126
146
77
92
164
93
84
131
88
152
148
37
126
84
94
123
148
127
128
137
123
92
146
104
152
122
138
105
58
68
69
105
152
83
89
109
77
178
67
86
126
58
145
144
110
110
123
138
132
113
138
110
169
55
104
130
55
171
103
146
92
119
123
192
144
122
58
110
104
136
58
110
89
138
115
37
127
178
105
86
75
146
97
110
138
37
75
37
122
76
91
67
138
67
95
168
74
92
105
138
126
168
122
67
117
55
122
127
88
79
105
152
100
58
107
139
110
105
56
152
91
123
92
111
92
127
56
88
110
37
146
92
114
110
37
122
58
118
117
92
56
138
67
110
100
152
86
123
136
144
141
99
134
89
57
128
122
55
169
92
126
58
152
101
178
89
199
168
126
55
92
138
68
109
119
79
199
199
74
75
135
100
144
139
71
128
92
122
122
118
55
114
138
92
55
113
78
81
126
164
92
123
109
126
93
131
93
77
91
122
168
138
140
111
128
74
119
55
58
148
146
123
126
92
92
105
142
131
144
107
178
137
123
104
106
167
158
56
140
152
152
131
87
127
177
104
93
110
139
99
68
99
122
58
107
156
135
101
74
86
164
123
92
139
122
92
117
56
74
146
67
77
126
142
120
104
92
55
92
140
55
111
74
75
69
92
139
111
58
152
144
37
138
165
111
105
69
144
79
101
107
115
69
162
75
95
107
163
126
93
67
56
124
139
110
119
138
163
136
104
58
79
152
86
158
92
105
69
56
145
138
126
92
56
98
79
55
56
92
123
122
92
55
92
144
131
168
110
104
127
67
69
56
109
93
93
55
37
74
92
163
178
79
139
92
58
122
91
126
169
74
77
86
104
169
127
118
92
79
137
123
96
102
126
56
122
120
124
95
69
92
100
79
92
93
97
77
126
126
124
110
69
110
128
93
83
92
107
132
180
69
55
122
110
126
37
103
169
124
178
84
123
104
93
37
122
144
92
97
126
138
89
69
93
104
105
138
105
148
92
56
97
91
93
107
106
122
110
89
112
91
171
123
86
105
132
123
69
58
105
139
126
93
109
142
93
95
93
88
112
109
138
139
188
79
95
143
138
180
75
107
127
178
55
122
55
169
145
105
110
110
139
169
110
84
124
74
88
119
83
92
92
124
58
92
105
69
67
127
144
144
68
75
119
67
86
110
152
163
132
146
88
92
140
138
127
111
105
93
55
129
131
86
93
124
138
105
110
86
37
92
58
125
120
56
102
92
109
104
93
67
118
122
109
128
112
126
146
134
84
122
110
79
107
74
128
109
110
168
168
192
123
124
128
171
123
107
92
92
136
92
114
138
127
104
138
79
122
89
142
127
162
139
92
146
86
103
122
110
106
92
128
117
139
92
131
92
84
74
91
55
146
123
99
92
135
135
110
67
104
138
56
147
83
126
146
56
92
86
138
105
86
144
93
138
165
107
119
137
58
131
110
144
55
110
146
89
123
105
124
131
188
105
100
37
93
122
55
91
105
126
67
131
104
92
109
92
136
140
145
99
120
92
128
123
139
123
126
67
58
105
122
55
109
104
67
56
122
79
67
37
178
97
158
139
84
67
171
105
139
130
126
110
103
126
105
110
37
74
122
105
107
75
129
86
86
110
75
93
110
56
92
101
95
99
139
103
126
105
104
111
95
130
169
92
104
97
111
171
119
67
140
56
122
79
146
55
105
111
104
91
127
127
110
112
67
56
97
79
130
135
144
119
148
122
138
123
164
92
104
138
92
108
104
138
128
69
152
125
111
100
56
69
86
144
91
131
118
122
109
55
123
122
122
107
99
37
91
125
135
93
123
138
110
92
177
126
169
69
122
67
126
126
119
119
79
56
123
92
122
126
105
168
93
56
128
152
68
110
92
138
111
152
188
137
122
92
37
123
139
178
138
93
56
92
103
152
114
92
104
126
141
168
81
109
127
139
105
122
139
119
144
144
61
122
55
93
197
87
91
55
127
77
167
107
55
151
138
91
75
110
68
110
139
151
55
56
138
58
92
77
58
152
81
131
122
55
171
134
111
58
56
162
91
148
68
55
92
58
159
56
169
136
138
131
104
55
100
152
144
81
79
103
105
126
56
119
69
89
146
110
169
80
138
107
86
92
84
162
127
178
99
112
127
115
37
119
91
119
37
97
127
92
105
160
136
140
117
81
92
138
92
180
92
126
67
110
110
105
132
110
114
126
100
79
105
160
37
122
110
105
79
169
69
92
92
145
124
113
178
126
122
124
103
67
119
148
122
97
134
84
126
130
146
110
111
122
126
131
105
55
122
97
55
104
104
111
92
99
58
144
136
104
92
139
178
114
122
146
146
86
67
169
67
56
122
69
122
105
105
127
123
56
131
182
102
37
139
115
152
138
138
105
126
91
69
104
110
86
139
105
55
178
96
128
138
93
37
105
92
138
122
169
92
69
109
98
56
110
83
122
110
107
80
122
67
110
92
127
93
140
105
105
86
93
93
146
112
171
93
58
131
84
124
74
158
105
138
91
126
86
126
88
92
109
122
165
138
105
144
124
55
55
123
99
123
56
55
138
84
86
97
98
103
92
37
91
139
99
55
152
81
140
76
169
92
55
115
152
110
138
55
79
138
83
92
74
171
121
151
104
132
37
83
126
74
138
92
37
92
122
83
110
105
117
152
128
109
67
129
92
147
144
55
122
151
148
138
129
77
107
130
152
92
95
118
119
110
77
126
67
55
109
84
119
55
107
92
140
56
144
144
56
56
171
156
67
126
105
142
178
110
74
123
92
91
58
163
92
37
178
138
138
119
117
92
128
138
88
55
69
110
122
109
107
148
111
118
106
120
68
104
93
58
103
122
126
126
56
93
122
136
178
58
138
37
106
92
92
104
132
93
146
120
114
111
67
126
140
80
56
188
91
138
67
67
99
77
92
144
139
93
75
55
139
107
55
152
122
55
109
55
92
99
140
69
122
138
79
158
146
102
122
169
37
126
93
144
107
105
56
67
131
86
104
106
77
126
67
110
130
93
144
152
37
122
55
99
122
139
115
55
123
94
110
126
92
92
110
126
121
104
138
89
138
111
92
127
134
79
108
77
86
123
122
178
102
74
55
122
75
114
67
163
111
56
124
178
93
67
122
111
78
92
128
68
37
58
92
79
136
138
107
69
119
142
144
79
55
101
126
88
109
122
55
169
103
152
178
105
91
107
74
109
122
169
93
68
178
99
58
109
56
69
110
81
146
163
119
110
109
105
56
141
105
99
104
140
67
109
75
140
152
100
69
106
109
92
152
75
105
127
97
122
91
104
56
144
188
178
67
122
67
110
124
110
58
92
109
107
110
130
162
152
91
132
124
131
92
67
92
111
138
93
94
92
122
79
110
68
114
58
92
98
122
79
124
152
79
107
67
144
139
130
81
104
61
92
105
123
79
37
124
138
134
94
122
122
122
93
67
140
106
79
56
74
92
98
138
92
158
99
89
141
169
122
92
107
55
122
77
110
92
111
88
91
122
130
92
86
167
79
92
178
140
127
58
103
126
77
130
105
124
105
69
107
178
98
126
83
93
168
123
140
67
92
128
162
127
112
138
111
122
126
122
93
92
98
178
168
137
138
123
136
99
139
111
91
122
86
112
99
97
122
138
92
95
134
80
56
146
105
67
123
92
92
37
127
58
122
119
92
55
92
110
95
169
146
37
114
124
68
92
104
130
92
123
146
107
126
152
171
178
55
122
119
122
98
55
169
100
99
74
110
79
56
135
103
67
75
99
55
125
67
127
138
139
122
105
163
146
137
100
119
96
92
122
126
199
137
78
118
127
139
138
92
69
110
146
119
136
75
180
140
111
138
55
160
148
83
122
118
131
128
140
100
126
92
56
99
100
109
105
136
123
91
110
126
119
138
139
69
111
152
138
37
92
99
56
86
127
67
125
152
140
138
135
79
56
145
84
68
139
144
119
178
107
118
126
146
93
127
58
122
86
171
126
119
37
110
110
102
128
152
79
67
163
109
58
92
75
109
92
171
67
140
91
119
146
126
114
122
104
77
126
107
56
110
94
110
56
105
140
148
144
140
140
104
86
169
105
126
86
55
93
127
144
171
83
99
139
145
110
144
178
110
114
96
110
144
141
55
140
67
144
74
138
86
37
110
126
93
75
123
127
135
93
127
122
169
144
55
67
103
128
127
138
103
55
75
126
105
58
37
81
152
92
104
67
146
112
169
79
144
139
165
55
74
126
68
104
92
92
138
103
128
165
146
138
93
126
98
56
128
79
134
127
117
127
79
55
146
92
79
138
92
69
103
86
119
123
92
92
92
55
98
92
102
92
55
77
138
61
139
144
102
152
37
55
77
91
119
139
56
127
137
105
93
123
163
107
67
123
138
107
110
127
138
138
92
138
139
128
71
169
138
55
139
126
55
105
105
86
126
124
134
104
152
111
64
67
105
97
136
110
37
105
105
151
134
93
91
105
122
86
122
149
92
105
104
105
104
88
103
110
98
146
171
123
144
126
37
178
94
126
111
178
138
152
105
104
37
110
119
136
92
114
108
182
178
104
123
37
55
140
88
110
110
67
106
92
139
92
126
138
56
171
105
144
37
75
171
58
165
91
112
101
105
145
128
127
109
169
105
122
152
128
130
88
103
91
99
92
104
147
83
69
122
56
144
55
122
92
88
110
128
105
148
102
99
101
103
148
165
79
55
79
55
110
37
58
178
92
99
67
107
104
121
152
139
105
122
124
56
122
128
120
81
152
127
102
126
110
55
122
102
75
122
134
135
171
75
126
138
164
178
178
134
86
110
56
69
135
126
118
139
139
111
127
123
123
84
124
137
74
139
55
107
67
103
127
92
111
92
127
67
93
87
111
55
105
178
123
108
153
135
126
56
55
128
152
55
92
122
93
65
140
126
77
86
37
121
103
89
67
75
105
92
81
111
134
148
104
126
138
104
56
152
122
110
107
67
55
81
127
100
130
152
56
104
146
92
55
178
147
146
92
123
92
109
105
69
56
103
86
101
118
178
112
117
55
131
57
122
110
134
111
136
139
74
105
178
79
97
138
86
135
93
99
120
109
146
169
122
140
56
104
152
92
148
126
104
128
105
169
110
139
100
126
114
122
123
128
69
111
139
88
75
72
115
111
99
92
122
68
110
152
146
93
140
67
110
141
77
91
92
67
92
55
168
104
178
99
100
110
98
104
93
55
131
127
107
55
92
99
107
169
111
144
92
99
108
164
92
105
110
93
55
126
55
124
104
93
140
139
74
122
56
124
67
109
126
111
103
56
69
110
139
84
153
169
105
135
111
100
55
122
100
126
124
114
79
124
109
138
97
55
152
77
109
101
120
139
130
37
92
107
144
92
105
104
124
144
55
74
58
152
79
111
146
69
130
110
67
119
74
58
56
138
105
109
141
140
134
164
98
144
91
124
100
122
119
55
110
141
56
110
55
92
104
58
37
165
119
109
105
89
56
86
105
111
103
139
69
93
110
79
138
77
103
92
106
55
102
99
138
139
55
74
56
119
91
92
67
101
92
131
69
99
151
123
139
104
123
93
139
120
126
138
118
117
92
188
136
138
119
83
106
92
139
92
97
67
56
180
138
171
114
122
81
92
165
144
103
138
122
69
92
126
56
69
99
99
37
140
105
86
123
103
104
128
112
119
130
79
81
165
104
128
109
83
127
75
92
127
126
55
126
144
110
125
93
92
110
86
146
110
67
140
92
56
56
99
79
91
55
152
146
56
127
55
109
110
139
152
122
68
91
82
92
92
167
178
103
103
37
122
55
134
152
125
111
55
105
167
108
105
152
138
106
93
128
93
37
146
111
92
105
129
110
58
134
152
55
105
58
138
122
91
122
117
136
136
138
105
55
110
110
105
105
55
67
93
168
104
104
95
119
114
56
93
105
55
127
140
104
123
122
104
139
131
92
123
37
106
58
103
56
167
107
77
104
105
138
146
122
56
144
97
92
92
178
55
165
102
178
107
129
37
67
74
55
78
127
138
91
178
110
112
122
126
140
128
69
139
152
119
162
107
55
69
126
120
67
178
75
92
55
107
131
126
188
146
92
178
129
122
152
146
127
131
138
95
140
92
124
140
67
110
110
77
146
105
121
178
103
144
123
110
122
123
37
126
146
104
127
122
169
158
182
93
58
127
69
92
93
140
181
139
126
112
152
55
113
128
138
140
124
56
106
103
127
138
158
92
69
138
139
119
140
144
132
93
119
123
171
180
55
79
139
55
101
136
117
67
105
105
169
109
169
110
152
104
138
92
105
37
148
122
100
112
160
92
106
55
126
68
105
110
37
106
67
79
98
55
152
121
169
119
107
37
131
105
135
134
99
83
122
107
120
92
55
104
139
130
67
126
127
86
69
55
110
115
67
125
158
105
98
134
56
164
177
99
67
37
91
55
105
110
146
126
152
160
93
91
105
152
138
145
122
75
122
113
92
110
55
119
92
99
110
128
139
122
56
101
178
55
79
139
79
105
99
92
144
69
68
122
67
105
104
86
92
109
85
105
92
86
58
104
111
95
55
127
146
178
129
152
98
127
158
127
37
148
126
103
126
105
104
37
126
182
105
67
127
58
104
92
126
140
99
67
86
55
58
74
122
178
105
102
139
144
105
67
140
104
138
79
138
55
55
135
78
55
105
139
128
93
122
56
178
105
126
58
105
178
119
158
126
103
79
104
92
119
139
136
111
69
55
138
55
58
105
131
83
83
134
138
105
120
93
152
99
132
148
144
105
144
92
130
92
105
92
144
110
110
92
92
56
74
138
104
67
67
107
127
122
67
94
85
109
92
164
119
119
140
92
111
69
112
92
109
134
55
55
140
69
104
128
110
58
132
152
58
126
58
126
92
149
158
138
164
144
142
169
126
131
131
112
107
104
93
114
58
92
130
104
37
110
55
138
93
67
92
146
55
79
165
78
83
152
104
178
92
67
107
123
107
105
117
68
115
144
128
105
89
111
132
126
93
104
138
93
109
58
86
112
129
55
92
67
77
119
83
98
140
105
104
67
103
139
78
92
77
120
69
93
126
139
128
109
67
144
122
122
109
138
37
92
125
104
83
127
55
56
152
110
55
67
68
110
129
37
192
171
130
105
123
92
107
105
138
93
55
120
127
105
128
79
69
120
122
55
69
168
168
91
108
169
146
37
106
146
104
138
92
56
123
92
91
106
93
56
107
79
158
122
123
99
178
139
124
58
91
121
37
122
139
180
132
126
92
74
134
92
114
135
55
88
126
37
106
37
126
69
119
122
105
121
37
92
117
55
138
67
128
106
92
149
55
86
138
169
67
146
110
105
55
99
55
105
69
105
99
114
169
105
55
104
127
104
56
119
111
92
111
171
105
58
152
131
91
92
91
140
163
86
178
118
67
127
110
67
180
79
105
146
67
79
89
123
105
126
146
124
105
93
89
92
93
86
103
127
138
93
55
97
37
110
92
104
55
144
144
188
104
37
127
163
144
142
91
93
92
74
122
107
171
102
56
99
168
93
120
129
55
104
55
127
110
123
79
103
107
169
96
110
105
37
126
138
110
99
74
104
55
122
55
139
92
104
126
93
178
126
95
93
132
86
56
37
92
104
67
138
105
95
91
105
122
148
127
119
138
102
180
178
146
144
92
80
151
111
178
134
101
68
99
152
83
99
119
114
37
147
167
95
134
126
122
127
55
131
127
79
58
56
138
55
148
178
125
58
164
69
140
55
55
126
144
91
109
126
56
126
37
92
132
37
77
123
138
132
92
55
102
69
129
55
79
178
69
77
75
163
104
92
112
67
92
152
37
148
111
105
58
93
56
105
37
79
124
55
167
138
105
75
110
55
88
139
37
55
92
110
124
152
77
55
69
92
77
105
128
67
79
105
104
124
125
92
74
111
138
105
105
158
180
152
139
128
122
89
144
56
58
138
139
119
122
75
138
144
132
109
140
122
146
55
37
104
122
128
79
144
137
110
37
123
83
102
127
93
58
131
123
106
122
77
74
55
102
109
102
74
79
67
122
95
122
79
37
56
105
139
78
74
138
127
110
92
37
130
124
126
92
99
110
92
139
92
55
37
117
123
58
111
37
55
122
55
104
124
81
69
167
56
77
91
55
138
136
56
139
92
86
124
126
164
89
126
91
68
83
104
77
126
77
55
55
178
122
55
146
126
139
87
55
92
178
37
109
56
104
124
105
163
126
150
122
58
55
131
55
77
98
56
126
126
84
146
163
92
178
117
105
37
144
123
110
95
91
126
77
99
104
86
122
110
148
122
163
163
136
69
91
83
105
92
55
104
131
104
105
55
56
146
105
122
158
37
68
55
55
122
144
119
58
171
93
168
118
122
122
122
105
136
152
138
168
138
102
105
98
115
138
55
81
122
79
92
152
105
123
126
138
69
109
105
126
126
81
126
92
138
152
122
122
103
122
144
37
55
55
99
77
84
55
69
105
96
164
93
144
97
126
107
92
107
139
126
67
148
105
138
56
55
67
93
160
93
99
99
69
92
128
100
109
140
105
56
58
125
86
126
165
152
139
92
92
92
105
171
55
76
120
128
122
67
103
104
119
111
37
55
105
122
55
100
92
102
139
92
171
93
55
92
98
169
110
138
123
130
144
99
67
140
111
126
137
93
129
103
86
67
138
93
56
140
122
119
55
146
84
69
122
74
86
37
142
55
74
92
93
127
122
92
75
110
104
126
92
107
92
152
119
37
105
92
79
138
119
77
93
178
92
182
128
138
129
56
118
158
126
105
112
122
116
126
75
101
167
91
56
104
68
110
126
134
55
135
110
169
88
146
131
74
146
79
92
93
79
55
147
93
134
122
128
104
92
92
130
156
79
95
120
119
109
136
101
138
67
97
110
140
86
139
56
73
58
139
110
104
105
103
146
144
92
163
110
126
178
127
95
67
131
135
92
138
102
92
99
138
61
141
56
192
92
109
102
152
87
102
123
106
55
140
120
91
67
122
122
99
127
178
56
93
169
122
69
104
127
104
74
107
55
96
37
131
55
77
134
110
103
156
163
152
92
55
87
199
56
55
118
122
122
144
110
83
109
144
131
127
79
58
104
99
56
86
110
55
111
91
58
107
138
110
58
55
150
105
104
122
91
84
92
112
144
134
91
123
138
103
138
105
37
104
110
93
130
148
130
138
55
144
107
138
134
105
77
67
119
135
111
140
108
135
127
110
55
89
138
144
92
106
122
138
123
92
55
56
92
89
127
122
137
126
76
129
123
110
113
140
56
126
75
104
69
86
145
69
80
110
124
77
56
81
104
104
56
67
68
113
93
119
171
146
126
55
139
55
92
100
120
138
110
92
138
111
138
111
58
140
110
145
139
67
126
126
156
97
93
92
83
68
84
104
144
169
136
37
139
105
107
110
81
74
105
93
91
138
55
199
55
111
74
105
126
178
105
164
110
108
37
126
135
181
122
105
92
104
76
134
140
69
115
69
83
144
92
55
122
93
67
126
110
123
67
110
126
55
144
151
109
104
68
92
103
56
55
92
146
146
89
169
104
105
110
55
56
80
92
124
119
117
91
55
171
69
109
97
140
69
110
67
75
169
127
110
110
95
114
104
134
119
98
144
106
102
83
128
126
122
56
138
136
120
104
139
67
77
55
103
144
77
67
77
180
91
58
138
92
106
88
105
55
68
72
75
92
58
117
132
67
110
92
129
109
77
99
74
103
112
55
110
95
178
178
105
120
108
58
110
123
127
126
146
69
69
169
102
134
55
92
128
92
110
98
126
119
56
122
138
138
112
55
69
67
178
67
88
122
107
109
77
91
105
104
105
126
152
105
98
102
119
146
79
130
146
102
105
139
110
127
146
169
57
68
122
127
124
95
134
55
122
88
139
128
77
37
107
169
111
68
146
55
88
158
55
104
128
92
138
58
178
55
126
91
104
105
69
138
101
122
178
105
119
80
130
74
92
128
122
77
112
122
55
58
104
79
104
104
110
127
178
110
92
163
152
169
110
112
80
37
126
146
140
111
86
119
123
178
178
122
126
93
93
92
122
103
67
137
86
124
112
134
74
117
140
37
89
91
74
139
152
95
92
93
158
83
55
109
37
105
75
117
134
122
163
107
68
126
139
74
67
104
108
126
120
81
37
91
110
128
105
79
79
69
55
134
111
110
102
127
79
55
144
131
122
122
55
103
55
104
98
109
69
126
58
110
79
92
144
55
123
124
169
67
74
114
104
145
114
79
126
67
171
110
104
140
92
144
99
136
81
105
79
122
122
92
131
130
92
124
119
119
180
55
77
107
120
37
58
86
105
92
126
163
92
78
148
110
104
92
152
131
55
100
122
92
115
130
110
110
68
99
138
144
138
178
111
86
138
165
55
92
67
122
68
92
56
122
92
99
96
163
67
128
58
162
97
56
93
120
58
56
92
37
152
126
83
135
114
178
93
94
55
146
134
92
122
122
102
118
58
37
138
58
144
122
168
122
102
99
108
91
58
140
125
105
67
92
84
105
94
105
92
126
180
69
37
134
75
92
58
139
75
92
144
122
77
144
140
124
103
139
79
178
152
139
91
138
79
92
111
56
92
121
180
138
152
104
122
142
111
127
37
56
92
99
135
67
110
126
122
67
69
67
128
75
128
56
93
126
67
55
144
111
132
128
127
92
79
55
95
110
122
144
110
67
104
56
67
122
86
88
110
138
146
92
146
152
152
55
97
105
118
67
77
67
93
110
86
55
74
122
55
140
162
105
89
104
122
109
92
104
92
69
99
110
169
107
169
134
138
58
127
83
111
93
178
111
105
126
127
55
69
77
105
109
84
127
86
83
178
140
74
56
119
105
138
163
105
56
98
178
100
122
126
122
91
94
104
77
67
37
148
56
67
77
122
138
106
110
148
68
74
168
135
122
37
169
136
83
128
67
126
55
92
104
111
131
126
105
136
120
91
110
117
122
55
111
107
135
105
152
110
92
95
125
132
180
110
126
102
128
77
58
58
79
69
100
69
75
67
104
110
105
123
123
75
146
92
92
92
119
75
140
103
75
37
138
118
56
56
55
104
152
141
74
68
104
128
56
146
127
131
138
122
77
110
122
68
58
152
79
105
83
111
163
93
94
55
126
126
126
158
93
116
93
129
120
144
86
110
128
139
122
84
134
75
74
91
81
125
37
144
106
122
92
144
92
139
122
95
77
95
126
56
67
58
144
119
56
37
111
138
110
92
129
55
77
77
115
55
140
69
138
122
93
58
91
122
55
138
158
105
115
138
97
131
136
68
93
91
107
99
37
107
105
105
111
171
110
69
104
105
86
126
104
99
93
138
77
138
104
75
122
168
131
95
189
77
86
102
148
126
91
134
92
114
79
69
110
128
93
109
74
136
64
110
91
91
104
123
92
68
110
103
168
131
105
110
78
110
127
67
102
104
97
55
121
89
127
77
93
127
55
56
37
127
55
138
144
84
67
92
105
67
105
110
96
117
58
110
171
138
102
126
37
107
120
110
122
93
58
93
58
37
69
106
55
92
104
37
67
125
142
139
98
93
37
118
100
69
69
100
105
105
67
112
192
95
103
178
144
105
138
138
89
67
144
107
107
139
120
55
67
122
37
139
56
127
110
123
110
109
91
77
92
136
127
122
55
69
37
131
146
37
127
122
55
158
138
121
112
79
111
122
91
86
122
114
119
140
55
93
130
105
92
163
104
55
104
126
138
91
135
58
139
128
89
112
178
92
152
92
108
92
105
112
105
104
92
80
117
167
169
92
126
55
55
103
163
92
139
122
107
126
126
92
67
105
68
127
87
109
152
92
178
102
67
55
119
130
69
55
91
107
78
37
55
55
126
108
126
139
55
131
199
110
99
92
139
105
97
122
55
99
58
138
126
120
110
139
124
104
132
117
152
86
56
144
58
72
169
55
119
105
83
110
139
122
110
119
93
74
91
56
139
37
135
55
37
119
92
77
86
108
69
89
69
117
67
55
158
92
122
107
123
87
122
104
126
162
117
127
146
93
128
99
81
105
169
111
129
56
41
104
144
168
111
138
100
67
92
106
111
139
99
110
122
128
67
134
119
115
74
56
56
112
144
93
88
68
55
92
91
125
37
137
99
100
112
55
105
79
55
92
138
134
58
107
55
93
105
110
67
104
92
158
122
122
86
74
178
55
99
169
122
92
105
124
104
37
182
104
93
123
92
55
67
134
138
128
67
103
101
93
112
92
134
87
104
127
105
111
144
101
135
99
93
105
56
56
122
55
55
56
148
146
131
124
131
127
110
84
139
146
105
37
122
67
158
140
110
93
55
106
58
56
58
81
91
67
158
92
139
135
138
73
188
100
139
100
99
158
111
105
105
100
92
92
37
137
107
134
97
79
100
67
122
92
91
92
93
67
58
92
167
107
95
92
107
129
56
99
77
74
75
55
73
128
127
92
91
126
158
77
178
68
126
110
100
123
113
140
105
122
122
127
168
127
163
152
94
122
138
110
119
110
110
105
67
97
127
169
130
110
169
178
55
127
134
167
165
55
56
171
55
101
75
128
103
67
146
119
68
118
55
138
89
55
152
138
148
112
55
126
138
103
158
105
92
138
58
129
69
105
134
111
122
112
37
114
91
56
124
144
158
74
89
148
67
111
152
104
86
162
122
95
104
128
92
140
92
126
163
107
37
120
128
139
105
92
111
111
145
130
99
169
122
56
169
122
151
75
102
138
86
139
126
74
110
126
99
104
104
77
128
115
122
126
134
128
158
106
67
199
91
139
67
37
123
69
92
58
138
151
55
91
123
119
94
86
124
119
67
97
56
99
75
106
111
139
126
105
81
86
86
111
138
120
92
88
89
105
127
92
95
140
68
93
79
146
92
68
55
105
138
136
104
188
158
152
93
119
74
91
126
58
138
127
100
104
58
92
91
152
138
105
86
58
92
152
125
123
67
178
126
138
86
144
92
105
95
110
114
93
77
110
74
158
122
67
103
146
92
83
111
124
74
139
126
126
169
58
119
105
127
134
126
93
125
104
114
104
104
69
92
126
132
140
55
92
56
58
102
139
122
86
127
163
167
87
121
144
139
110
93
37
122
128
150
69
110
171
120
110
122
105
58
156
144
126
145
105
127
55
105
56
124
139
102
105
86
55
88
136
92
110
56
178
171
131
92
180
56
101
56
89
56
55
117
105
168
115
99
92
56
114
92
171
146
110
178
83
67
131
75
69
152
138
158
77
92
110
124
169
119
101
110
105
165
178
146
110
138
152
67
108
77
69
105
169
79
110
104
132
122
67
122
86
105
104
138
139
105
123
129
105
178
119
146
56
55
91
110
79
120
106
124
109
148
137
122
68
138
139
104
37
83
144
134
92
95
124
122
178
119
58
126
67
137
117
104
118
139
126
58
126
69
119
56
69
169
77
120
111
123
105
97
101
102
122
37
111
92
74
140
131
68
100
105
164
97
136
83
79
56
138
105
103
84
100
92
126
123
98
118
122
111
67
93
97
146
97
92
140
152
111
92
79
123
130
67
74
86
56
139
139
64
93
116
138
123
168
140
131
178
92
105
113
86
134
93
122
171
37
93
97
135
92
112
139
105
67
130
56
92
128
128
111
88
104
122
103
110
130
109
146
105
139
146
110
122
104
37
179
122
140
126
169
99
92
93
58
58
89
110
144
138
138
104
140
178
138
93
99
178
67
126
111
105
92
140
37
110
144
92
110
110
104
140
105
189
163
104
86
162
131
124
179
55
160
135
79
171
105
136
126
169
37
69
67
106
56
132
178
69
136
127
55
67
99
91
80
113
92
110
93
67
55
86
93
105
56
127
91
127
92
89
37
107
122
69
144
139
126
37
84
58
108
152
112
37
55
146
79
110
146
67
110
162
160
104
107
104
75
165
140
148
142
144
79
86
127
68
88
55
139
58
112
112
84
58
83
134
103
119
128
110
92
75
126
152
86
180
188
138
97
75
163
67
93
144
126
141
140
56
83
109
130
97
79
111
178
139
67
108
122
132
67
104
117
144
110
55
67
122
144
99
109
119
92
104
55
130
97
104
55
55
68
93
75
178
69
55
102
122
160
113
77
126
110
115
68
106
110
67
56
122
147
139
37
84
138
107
131
96
130
128
126
117
55
67
67
67
83
146
122
120
122
134
126
104
93
178
55
122
111
178
110
144
114
139
93
138
110
124
92
67
78
77
141
79
99
128
105
92
128
105
126
92
120
105
107
144
55
134
120
92
134
144
122
127
111
93
119
104
109
138
104
123
122
105
92
119
140
129
74
104
122
122
134
110
131
55
55
67
178
99
182
127
110
92
126
141
55
148
148
169
135
77
129
123
127
110
152
151
146
122
127
37
103
91
92
55
128
55
92
55
139
105
93
132
56
100
93
122
146
138
105
128
138
106
119
138
109
103
138
56
67
67
92
56
105
92
56
110
55
167
165
169
144
178
92
92
103
55
99
152
77
80
110
75
103
79
55
122
169
122
79
69
144
84
110
67
93
169
110
67
94
123
131
67
93
104
152
132
92
146
92
95
55
110
122
55
83
158
92
130
178
92
92
163
132
111
92
107
150
56
129
126
178
58
126
127
79
55
132
105
178
122
138
111
86
55
127
135
67
108
160
105
68
127
55
56
56
104
69
144
123
74
178
127
55
103
122
56
83
99
128
180
91
100
139
123
105
74
55
126
67
92
111
105
89
105
56
123
67
126
131
37
128
140
93
91
93
101
149
55
122
168
55
126
139
123
55
152
86
37
128
92
142
148
126
88
144
86
178
92
72
69
56
68
107
97
104
37
178
117
69
56
138
55
37
104
109
56
96
134
152
128
110
134
122
128
126
77
144
58
55
86
67
67
131
111
55
127
122
110
88
79
72
111
79
112
131
79
122
171
109
79
152
79
96
67
119
140
127
91
138
89
128
128
138
109
110
58
164
86
136
92
67
56
79
75
79
138
110
117
67
138
101
105
92
126
180
139
130
55
58
87
119
132
77
138
127
110
79
126
138
67
67
105
126
93
77
68
178
93
110
67
37
178
127
152
122
89
107
69
139
92
91
105
134
93
178
120
105
178
55
139
122
138
86
91
58
126
146
141
109
37
69
56
138
127
110
107
67
122
163
126
138
144
107
92
93
106
108
55
122
110
127
139
118
111
137
37
139
93
178
178
86
126
88
92
105
77
104
111
138
100
169
110
122
144
69
55
114
56
75
119
92
69
126
92
105
55
92
139
81
137
123
126
146
136
77
77
75
104
92
118
37
55
138
165
92
105
69
97
110
126
123
152
119
109
127
58
112
69
67
126
55
134
86
122
146
55
130
55
139
93
137
110
120
178
116
124
55
126
79
110
91
105
37
74
123
92
138
109
68
117
138
92
110
55
137
55
164
86
110
126
124
69
161
55
127
105
83
128
93
180
92
144
56
88
122
37
84
126
58
122
111
91
86
122
105
169
55
55
67
122
93
93
136
122
152
126
111
103
110
144
126
120
130
139
111
75
120
128
68
69
111
130
122
103
55
74
78
56
141
84
122
112
102
126
103
122
55
126
135
79
55
144
37
152
126
171
55
144
122
93
144
104
92
127
110
108
122
158
105
92
86
123
131
138
58
67
104
126
134
139
55
139
87
138
67
138
80
122
104
56
79
117
152
110
100
55
112
130
178
110
127
105
104
67
107
144
107
98
122
138
81
68
105
56
110
93
146
55
144
111
67
55
128
132
37
138
86
131
75
122
37
105
128
112
168
110
89
132
67
131
55
106
77
178
122
55
103
55
74
91
72
93
100
67
110
89
128
56
77
134
92
126
138
67
124
110
124
92
55
56
93
41
95
115
132
55
105
58
122
163
129
138
127
58
89
126
85
160
178
105
131
83
58
132
79
139
92
110
67
56
92
138
123
110
109
91
86
104
98
128
126
110
122
122
83
93
126
72
86
86
126
104
92
149
92
67
110
105
146
110
98
69
37
92
144
67
117
122
92
140
55
138
56
37
123
112
107
83
134
37
93
104
105
84
126
146
152
37
129
107
128
92
171
92
79
55
119
92
55
77
101
178
104
122
85
152
126
67
178
55
93
127
132
58
146
67
126
55
168
199
127
146
91
73
97
139
91
139
58
92
112
79
110
140
168
56
126
55
84
138
104
92
91
138
55
127
94
95
138
139
135
92
105
55
144
105
122
55
128
122
169
86
77
79
114
127
111
199
180
107
146
147
146
55
110
64
104
77
104
68
106
110
126
58
135
104
67
105
110
142
79
105
92
126
75
109
86
110
107
69
135
56
92
110
74
92
144
109
122
111
119
58
69
114
55
129
119
144
168
56
37
135
67
56
89
139
56
122
122
92
138
130
74
168
107
134
68
118
92
127
138
138
126
105
75
92
144
127
188
122
69
104
144
67
119
86
132
79
74
108
139
69
130
92
165
123
86
109
105
138
139
93
163
92
105
138
140
69
55
152
75
138
111
58
58
123
110
98
37
92
37
146
105
122
99
79
139
37
101
108
77
110
138
83
138
140
146
67
84
124
99
105
56
93
146
58
75
104
98
55
127
104
128
105
55
86
122
141
114
55
140
110
90
122
110
93
169
109
112
146
110
107
107
134
109
109
138
67
100
37
178
56
156
105
126
55
95
93
105
92
110
67
138
86
120
110
126
92
130
126
93
109
136
135
141
132
117
115
92
123
126
37
105
114
93
105
58
81
99
37
138
99
120
105
80
105
122
77
37
126
118
55
111
122
110
163
136
56
105
86
56
92
134
137
86
127
99
93
69
91
136
93
111
138
77
127
142
92
92
162
55
123
137
101
129
55
114
163
111
146
68
146
136
120
126
178
150
67
56
75
126
129
74
77
104
152
111
178
132
138
140
146
156
86
85
56
92
152
74
88
93
104
131
128
105
67
102
178
58
165
177
56
37
84
180
84
58
152
178
126
93
122
105
111
148
177
122
93
178
123
92
107
78
74
55
92
139
158
178
79
106
149
104
56
124
92
122
67
92
74
134
122
140
55
75
100
69
93
79
156
126
122
55
130
75
122
134
131
110
178
144
74
110
120
58
178
81
58
67
110
135
123
98
122
140
122
123
146
103
100
75
127
68
110
144
144
124
56
67
74
136
86
112
104
123
78
97
146
115
55
103
123
56
92
68
86
67
122
79
122
138
111
178
86
103
126
148
92
93
110
104
74
55
69
92
119
148
55
58
118
127
93
92
127
92
93
55
92
110
69
171
93
122
124
118
67
107
122
93
110
37
122
67
55
56
146
83
69
139
130
117
92
127
87
104
119
67
110
126
98
134
108
134
122
110
77
107
92
124
81
105
86
67
107
37
74
128
98
146
111
130
58
127
55
118
55
119
104
93
79
131
56
107
138
128
92
67
105
122
119
138
105
93
92
127
112
105
120
102
58
37
109
55
111
58
148
140
55
107
104
126
178
98
55
149
104
109
79
163
55
67
55
105
119
92
152
67
105
106
126
93
75
79
134
98
105
105
138
103
104
55
56
144
109
122
69
110
97
74
124
110
75
75
55
178
76
152
139
122
104
93
69
105
162
108
122
110
110
105
110
149
68
142
105
139
127
72
102
120
139
105
58
110
92
126
168
104
55
163
92
75
67
92
128
93
139
103
56
67
78
93
93
67
131
109
146
119
134
93
55
124
134
56
119
109
79
93
108
169
144
137
128
139
122
110
136
122
92
112
55
55
92
165
106
126
37
139
74
105
68
120
84
111
92
89
69
110
123
138
67
122
102
91
123
92
144
123
122
92
77
158
139
180
103
105
138
103
92
142
103
197
92
55
55
67
144
110
104
106
144
122
104
120
79
79
92
138
129
139
189
74
117
99
84
58
139
55
92
92
105
110
126
93
92
169
114
118
163
58
93
103
152
123
79
128
92
138
92
139
114
152
105
110
110
88
102
56
78
92
138
122
128
74
105
55
93
104
56
122
123
114
91
37
126
130
79
83
163
92
109
120
120
105
111
138
121
103
106
93
148
138
128
83
102
109
122
152
56
69
138
80
110
124
111
135
144
95
55
92
104
92
104
152
109
127
67
96
158
139
58
101
91
105
113
160
56
110
104
67
111
146
105
37
124
122
123
69
158
69
138
89
37
127
100
69
91
92
86
95
110
92
58
123
55
105
74
122
107
93
56
55
138
92
37
92
130
122
37
110
131
92
105
110
123
75
74
132
139
122
67
83
122
37
105
84
79
102
92
106
92
138
99
139
55
92
178
55
138
107
97
99
105
138
111
97
92
102
105
120
93
122
69
139
146
138
152
93
92
110
122
105
91
152
67
138
163
37
55
79
110
113
55
99
105
104
97
126
69
126
128
146
92
114
104
79
178
67
105
110
144
122
138
122
139
117
93
98
139
128
37
55
105
199
122
151
86
122
118
127
128
124
138
128
91
107
102
112
55
101
134
67
64
126
86
140
68
126
99
116
37
105
104
91
117
180
55
79
105
119
127
97
91
117
129
75
105
134
146
126
99
148
92
171
105
178
163
86
79
152
171
126
93
118
125
103
91
92
114
79
68
180
126
91
104
105
124
140
55
100
77
55
67
86
56
77
110
67
55
144
140
107
171
92
119
122
119
91
178
67
138
55
37
118
144
76
67
138
144
77
108
92
37
88
138
162
123
79
163
92
145
93
131
99
122
126
111
80
105
67
135
110
139
106
56
144
110
126
58
107
99
67
152
37
93
97
77
92
83
105
127
69
123
93
122
110
164
99
109
93
106
104
138
37
102
55
91
110
93
55
122
140
119
122
109
37
37
139
139
178
126
56
78
89
148
105
119
58
92
139
138
114
110
110
72
109
105
56
128
93
69
138
55
97
110
55
56
146
67
120
122
55
103
99
92
56
58
100
55
128
92
123
123
91
92
126
91
152
79
89
92
67
110
107
119
109
126
104
110
91
55
104
130
122
128
67
107
107
92
110
86
58
72
162
58
88
122
86
127
77
89
37
110
126
103
89
108
92
67
92
92
99
152
178
144
55
98
178
158
91
112
126
139
164
56
152
169
126
110
144
129
108
180
98
67
131
83
122
145
55
92
86
58
128
67
78
140
96
105
55
37
92
91
138
92
105
92
78
55
156
105
144
178
92
115
168
108
92
110
56
122
67
83
83
129
120
92
104
110
104
169
100
110
126
104
56
138
122
69
105
91
69
98
68
55
160
92
107
77
67
79
105
105
178
146
127
123
56
104
139
152
92
127
67
89
69
132
126
138
74
110
146
139
126
124
152
103
124
92
139
119
92
114
126
86
105
106
105
92
74
110
109
126
128
77
104
138
104
99
91
55
55
110
129
110
158
128
107
93
146
165
105
163
67
110
93
110
105
109
106
171
81
93
86
91
152
92
122
92
98
86
139
74
152
92
127
119
92
138
146
98
138
103
81
134
55
144
132
178
86
93
126
107
169
104
110
110
104
92
69
126
126
91
92
91
67
146
93
79
107
105
92
126
199
104
56
138
83
92
144
56
107
92
105
86
138
37
55
180
146
58
69
104
107
124
119
107
111
144
93
105
100
145
111
105
92
138
110
139
98
92
56
105
99
178
111
67
58
123
92
163
104
100
163
55
124
95
127
93
114
126
67
67
138
119
83
144
123
67
89
86
106
69
92
110
138
138
128
128
69
127
130
138
144
137
112
77
86
104
144
93
117
127
126
130
56
139
134
108
180
146
37
160
84
79
67
123
132
105
122
69
55
128
103
58
101
78
67
77
122
93
74
104
55
171
72
123
100
77
178
58
93
131
126
110
144
74
110
102
138
56
103
103
146
68
83
122
91
55
99
109
37
93
87
112
58
55
109
178
97
169
167
105
55
55
111
74
128
146
120
119
110
111
37
112
110
126
139
125
127
139
105
89
92
111
122
126
56
56
105
37
146
109
56
56
127
105
104
75
37
91
138
148
106
55
124
124
99
92
86
101
93
171
138
92
86
98
111
56
144
69
105
79
92
67
122
92
122
67
37
135
160
92
75
69
127
130
92
146
67
123
103
124
104
92
93
119
123
134
152
92
56
72
105
152
123
138
104
119
118
123
122
101
126
169
142
134
92
151
135
92
105
92
127
147
124
75
56
89
122
69
144
110
152
130
105
105
140
163
98
112
127
67
97
83
110
138
105
122
104
178
138
113
92
119
132
67
92
169
64
122
55
58
93
144
79
84
167
127
92
146
77
99
112
55
122
146
152
37
122
122
92
67
138
122
141
109
141
58
126
88
55
92
105
84
67
112
37
122
99
97
68
75
180
129
69
75
86
105
91
105
99
86
119
79
37
105
92
137
91
119
108
144
55
120
189
119
55
99
107
58
164
109
123
102
109
128
56
144
83
119
154
109
119
104
79
92
56
138
132
112
127
136
37
37
105
79
92
110
55
146
110
137
104
138
69
126
93
83
138
110
105
178
58
37
56
127
122
104
110
118
128
91
146
104
104
56
37
104
144
123
78
86
162
105
146
110
130
119
107
135
138
122
93
124
78
148
105
56
128
128
123
126
75
123
79
122
122
107
128
67
130
91
123
144
128
56
86
110
74
92
148
103
126
144
162
110
110
94
122
106
168
92
139
103
110
122
122
67
134
139
111
105
107
146
105
128
171
93
86
79
126
55
132
69
105
104
127
55
77
55
144
140
92
111
126
93
109
138
37
83
126
139
128
56
92
152
158
169
92
111
128
137
141
139
91
92
86
98
139
91
105
109
68
126
77
105
67
86
122
126
105
109
123
92
107
122
139
110
138
131
105
110
132
75
58
110
164
97
67
152
144
140
110
122
101
136
92
123
182
129
138
132
93
122
104
78
67
55
128
122
138
144
88
123
115
103
152
126
115
102
122
104
127
111
169
138
74
114
104
89
105
100
111
110
94
127
85
107
69
111
126
55
91
56
158
139
126
105
91
127
134
107
91
89
55
91
76
122
127
58
108
126
92
105
106
67
37
114
91
109
74
109
67
162
79
112
93
106
92
67
138
80
79
99
55
92
56
103
55
178
119
92
105
99
123
55
107
118
83
138
92
67
105
58
146
128
122
93
156
37
104
74
58
109
100
144
107
111
56
122
131
95
169
86
138
81
58
37
138
56
81
86
83
92
56
178
105
128
92
92
99
103
110
74
105
55
138
58
37
120
92
93
104
109
91
69
131
55
37
98
139
171
130
122
55
110
110
180
74
55
152
134
123
110
144
106
178
123
122
126
69
92
37
92
145
149
180
119
67
103
123
110
107
169
74
126
132
126
131
92
109
92
110
129
104
146
55
55
138
122
119
103
107
126
112
138
110
127
58
127
93
122
104
129
55
92
92
127
110
142
56
99
146
100
79
146
138
67
124
79
146
146
126
55
131
122
140
123
112
93
139
105
119
55
97
67
171
140
165
178
136
97
55
124
58
93
98
37
89
126
160
127
93
69
138
139
124
123
56
142
55
152
122
58
117
69
80
178
109
131
92
68
105
93
142
110
91
68
91
79
130
146
123
55
72
110
152
151
69
56
105
156
138
127
99
92
138
69
105
135
118
109
104
92
121
147
65
126
105
110
160
88
105
56
92
146
127
95
138
92
110
119
55
134
58
126
93
122
67
104
37
110
105
146
138
103
152
146
98
73
163
91
108
171
58
92
93
119
68
130
92
136
74
178
139
139
122
110
126
99
126
86
65
92
126
110
56
148
104
131
128
56
106
93
109
92
67
92
74
122
92
122
139
111
97
178
110
55
171
67
55
178
95
84
77
37
138
126
104
124
99
117
105
118
92
83
152
56
139
79
149
125
69
104
125
137
95
110
86
126
171
120
67
139
55
37
55
67
105
109
122
124
75
106
152
99
122
144
83
106
134
67
68
117
107
164
102
139
109
114
107
127
171
152
55
56
103
69
122
56
105
55
136
37
126
122
115
152
37
58
93
109
127
148
67
110
144
130
171
138
140
111
132
178
55
164
104
99
55
168
100
103
110
86
144
93
127
119
158
144
55
134
67
105
110
101
55
56
114
55
178
138
178
146
110
77
67
122
138
92
104
74
55
104
81
92
126
92
160
102
84
100
110
105
98
122
138
69
123
79
37
122
93
86
93
75
105
92
105
139
178
88
134
79
122
110
138
127
110
94
58
88
107
111
131
55
79
106
110
126
122
158
119
178
105
84
67
79
55
118
110
92
92
67
178
105
162
69
93
107
110
92
126
105
55
132
91
118
146
131
89
110
103
75
86
86
122
86
132
55
67
93
111
72
99
67
139
130
138
163
122
103
107
127
55
37
103
92
56
67
99
79
163
75
92
55
97
122
91
178
146
103
128
58
105
37
158
138
139
144
127
55
146
110
137
146
68
91
140
126
127
122
131
122
105
138
79
69
93
67
88
103
129
93
93
126
122
131
126
69
122
37
108
37
146
58
122
86
119
159
94
123
89
128
123
92
67
123
97
58
144
109
106
123
67
56
105
136
134
126
95
105
138
80
37
92
104
152
92
105
79
140
79
92
103
55
138
105
118
122
128
126
92
124
108
55
121
56
92
79
122
58
55
144
67
178
83
104
122
37
126
122
64
104
126
56
100
139
146
152
105
145
122
37
86
110
128
122
56
87
122
162
99
69
123
56
37
146
92
79
130
105
91
123
144
107
78
127
55
92
83
122
58
92
123
160
93
117
68
162
109
77
107
138
110
121
105
74
122
119
130
124
92
136
92
86
128
110
81
55
83
77
138
114
67
56
122
140
111
106
55
137
69
138
86
140
113
122
78
109
86
37
58
104
132
77
136
138
125
97
86
92
104
169
139
115
126
105
37
123
134
92
83
67
67
103
139
92
92
109
77
162
69
37
97
74
86
106
81
56
126
115
37
144
110
105
111
101
101
105
118
55
110
124
107
104
104
117
67
92
104
105
122
74
114
138
110
68
103
152
79
123
75
144
146
178
123
130
69
103
111
122
109
92
92
55
93
105
79
139
126
106
105
104
107
55
93
110
163
127
98
118
97
55
122
139
126
107
120
146
93
169
58
127
93
126
58
126
124
138
167
67
92
128
87
130
140
146
58
77
146
111
81
144
111
58
105
126
122
74
67
139
116
169
93
126
119
105
55
178
92
137
93
68
114
148
126
119
144
91
56
94
92
158
168
105
110
55
144
118
74
92
95
67
105
103
92
126
92
169
136
91
55
158
118
67
171
55
178
104
134
145
105
95
79
122
87
67
163
110
105
128
92
124
68
130
122
137
126
146
109
169
105
83
127
178
138
146
100
88
111
132
74
134
139
92
69
152
104
137
77
55
139
55
37
138
127
180
58
92
140
138
100
148
93
58
74
136
55
75
56
105
119
127
107
126
132
127
55
131
171
127
110
91
92
93
76
118
124
58
92
94
107
145
111
144
67
103
119
122
74
69
68
136
129
114
156
110
152
69
110
103
37
144
138
67
139
55
127
152
58
119
107
83
105
104
122
110
169
109
158
105
146
105
122
131
93
126
89
126
158
67
139
138
56
68
79
111
58
67
67
95
109
92
75
110
91
140
152
67
178
105
55
152
92
138
55
169
103
67
110
74
101
111
78
178
55
58
68
56
126
119
112
91
91
92
138
92
92
163
144
74
178
78
37
74
105
126
55
126
123
86
55
122
55
67
144
152
130
122
146
92
112
55
124
56
128
99
107
100
55
178
97
112
99
144
146
146
152
69
86
137
100
123
56
77
107
107
130
122
92
124
107
122
178
105
92
58
55
110
152
110
102
138
94
83
120
37
67
125
104
144
138
55
77
68
110
55
56
122
126
95
139
144
74
138
106
119
83
99
100
123
55
144
99
105
93
131
67
56
126
169
97
126
79
93
92
138
58
128
107
131
105
128
144
55
178
110
112
67
108
128
79
136
124
68
92
102
120
109
55
167
74
132
139
67
139
138
146
93
55
109
141
122
128
126
132
127
117
93
92
107
138
138
130
92
55
74
138
126
142
56
97
138
110
122
138
99
126
56
122
134
86
124
105
37
92
55
80
138
94
167
105
105
104
144
79
55
55
91
138
131
88
105
158
55
139
110
92
110
67
122
105
171
107
105
123
139
102
92
55
120
138
92
138
122
77
138
92
69
55
93
56
139
110
111
137
138
120
112
69
169
88
99
119
56
58
37
69
92
94
99
141
105
126
72
74
105
69
104
126
152
56
124
55
109
56
126
168
131
199
86
138
110
140
92
178
55
132
146
148
122
127
96
92
122
134
123
180
136
146
79
105
126
168
146
146
122
93
108
76
138
92
55
110
138
75
67
126
119
93
55
58
122
92
122
128
56
68
75
58
127
123
140
107
158
115
104
152
105
93
171
148
117
123
80
104
55
92
95
105
135
92
144
58
139
67
92
74
92
126
37
93
106
104
77
178
105
131
146
122
87
37
37
103
69
137
93
92
126
126
55
119
125
107
137
37
75
122
92
104
107
111
126
86
144
79
103
139
68
138
56
92
101
105
152
126
148
56
107
74
110
87
126
127
138
69
108
110
110
92
92
139
109
122
105
146
122
55
162
75
127
93
110
158
199
91
55
55
122
111
105
55
93
128
128
148
119
134
92
69
56
139
140
110
93
74
119
84
110
152
148
111
128
106
168
132
99
144
67
134
149
37
92
126
126
104
67
86
138
144
110
111
122
112
61
109
144
67
139
67
171
138
74
105
129
126
168
74
105
67
101
112
79
55
146
138
92
106
105
144
58
122
128
119
75
122
134
126
56
104
145
55
79
105
121
92
152
92
56
84
97
111
126
67
188
92
119
55
67
167
146
110
108
104
138
56
119
148
56
103
69
105
136
104
103
164
127
140
126
139
103
117
128
111
107
144
169
84
109
120
126
178
144
110
140
92
140
74
55
107
97
56
117
55
138
102
141
84
178
105
67
67
127
103
106
152
138
55
126
128
77
128
105
123
104
122
75
77
112
126
110
106
55
55
114
79
105
97
105
92
124
55
58
178
105
128
92
55
105
68
69
93
144
168
149
101
86
111
83
128
120
124
128
75
178
139
93
105
128
55
89
107
107
89
93
88
104
146
110
104
123
119
110
55
67
75
134
55
104
148
178
75
93
134
92
79
152
104
144
178
102
98
109
89
56
67
69
92
105
67
128
104
126
152
199
95
106
93
149
86
97
74
126
110
104
122
86
92
55
126
105
139
93
92
74
122
122
74
135
55
56
109
89
96
138
122
98
122
122
122
138
146
67
56
144
146
92
122
128
92
89
178
107
55
96
100
111
86
101
110
67
92
127
127
58
117
93
123
126
105
134
107
149
122
105
119
68
146
56
92
162
111
56
126
93
122
119
110
138
140
109
126
168
55
178
92
102
99
101
110
180
122
58
105
139
37
122
37
122
126
55
99
144
104
56
136
107
105
121
164
86
111
126
157
138
55
89
104
84
121
144
58
94
127
122
103
83
178
140
99
140
93
110
55
92
162
92
126
148
93
105
58
105
55
93
122
89
114
122
152
144
93
125
122
75
141
104
91
55
110
104
109
92
91
114
163
92
117
93
138
122
91
134
152
152
98
152
104
84
56
105
138
109
122
132
77
169
92
146
92
144
158
67
126
138
114
138
110
97
93
56
86
169
78
152
163
122
145
110
123
55
178
158
128
56
111
123
67
98
55
113
58
105
139
104
67
112
110
58
140
58
93
138
93
105
69
158
122
178
112
131
122
122
99
81
132
105
95
123
117
93
138
92
110
169
171
123
148
67
69
128
131
132
93
122
55
55
58
110
74
142
199
111
142
105
101
110
83
110
93
75
128
146
67
110
101
58
56
158
107
55
69
123
104
111
55
124
92
93
119
145
55
92
146
92
127
178
140
74
139
122
167
68
104
106
84
158
61
93
75
93
95
103
55
105
58
78
55
164
92
75
67
97
144
119
141
56
110
128
92
122
92
55
126
105
169
148
119
139
93
105
84
122
168
92
144
122
122
55
115
67
105
79
178
169
126
152
146
56
58
105
144
126
148
127
110
55
136
127
110
169
110
163
104
103
92
154
110
123
145
92
178
92
140
144
199
104
68
128
138
103
146
110
119
109
77
122
126
158
114
127
129
67
91
108
119
110
146
101
92
180
126
92
58
128
92
122
123
75
92
104
93
92
163
88
112
122
37
119
128
37
169
97
144
93
97
69
37
77
88
105
92
92
105
79
126
93
55
127
68
94
110
105
101
104
37
107
58
93
95
91
110
127
128
122
138
109
92
122
138
83
56
69
105
111
114
122
123
93
144
55
91
146
128
139
75
144
137
93
79
104
92
74
56
110
123
139
56
92
110
123
126
124
105
67
67
86
122
91
123
110
95
91
139
127
129
122
58
74
55
101
178
114
67
112
138
138
92
104
107
115
92
67
140
103
79
151
92
105
58
138
148
105
92
69
69
114
139
122
92
104
74
56
105
105
93
79
160
105
58
97
127
37
122
171
105
55
122
92
99
137
56
104
122
80
101
167
75
144
119
124
145
138
139
125
126
92
79
37
122
58
86
93
145
91
134
122
180
126
93
106
149
142
55
77
77
93
55
146
110
92
163
157
58
122
118
89
139
86
179
123
141
139
110
77
110
139
37
68
56
92
124
86
109
144
136
139
140
122
68
138
83
122
126
93
88
110
171
138
151
115
74
83
109
105
137
99
132
97
89
108
92
123
126
109
68
103
144
169
122
110
152
105
138
55
134
74
178
93
171
152
120
118
124
104
169
97
92
146
79
107
58
110
92
69
126
96
139
56
123
111
37
126
139
105
132
92
79
124
55
37
110
89
126
109
139
87
110
91
122
119
111
126
138
99
146
110
37
93
88
111
55
69
158
171
110
55
147
37
168
148
131
128
92
67
74
55
123
89
146
56
92
158
92
139
126
99
86
144
69
125
109
58
91
130
69
105
124
37
56
144
142
112
67
122
92
126
122
178
91
55
115
178
92
127
79
55
110
97
126
112
92
114
146
86
93
55
130
112
102
127
104
146
55
84
110
102
122
139
126
171
56
74
121
75
122
146
92
92
67
37
55
93
122
91
120
152
105
37
67
114
92
168
93
138
138
77
92
168
164
125
93
101
165
92
67
106
126
86
105
92
69
75
55
110
178
104
103
128
139
123
162
56
55
126
138
122
145
119
122
92
123
108
126
122
122
140
58
58
98
69
91
124
86
97
169
114
68
134
138
151
103
55
109
118
138
134
92
93
80
58
115
94
180
167
55
109
92
105
144
178
56
140
169
78
144
92
58
105
110
91
76
92
126
77
138
95
148
86
102
67
152
111
92
136
128
77
56
67
67
144
77
105
110
123
55
92
79
103
138
126
91
91
142
56
178
93
91
137
128
85
134
123
92
178
105
74
91
58
55
91
105
103
128
104
169
91
58
126
122
103
132
178
178
138
126
152
169
92
97
131
180
99
138
56
92
127
91
56
167
105
122
58
92
105
124
126
178
69
144
144
110
55
111
137
85
140
122
130
119
119
141
122
123
104
75
130
126
152
55
146
84
137
123
79
149
69
127
117
118
110
126
124
92
69
178
153
69
76
138
75
67
124
138
55
180
103
114
138
67
83
56
107
69
58
104
109
139
130
86
92
126
126
69
92
126
139
92
169
178
140
83
127
144
103
107
126
152
121
128
128
37
105
107
130
169
105
139
92
135
128
93
56
122
149
86
77
67
114
55
110
104
178
68
55
92
55
128
96
122
138
110
160
55
163
67
122
138
97
152
122
93
86
122
97
131
37
105
109
144
122
84
92
99
126
92
78
148
138
92
67
164
110
55
75
91
158
141
126
123
77
138
144
138
138
122
109
122
97
126
55
56
104
92
79
168
152
138
110
55
152
75
122
139
73
67
138
126
144
109
168
140
134
104
69
109
152
127
140
110
55
92
162
124
118
92
73
55
55
105
123
58
110
129
58
111
93
37
124
58
126
78
37
93
37
92
160
92
122
110
93
158
79
67
68
134
119
163
146
110
127
55
55
158
105
146
126
130
100
99
107
180
152
138
110
55
119
88
79
167
120
91
104
93
126
168
127
122
92
110
152
93
69
127
93
122
162
126
123
132
86
56
178
74
138
162
118
103
144
180
105
92
105
55
86
92
163
112
104
122
112
79
121
144
122
118
120
56
55
98
122
97
92
93
124
37
138
131
123
122
67
91
123
86
69
127
178
178
146
117
113
123
156
105
117
104
138
91
104
56
117
55
115
77
117
92
178
83
117
120
92
137
37
108
144
67
124
109
74
126
83
144
126
69
101
56
109
146
77
139
99
123
140
58
65
99
122
56
56
171
180
84
55
122
92
122
178
89
93
92
146
127
119
146
74
109
110
55
139
86
140
114
92
114
171
121
171
56
158
91
123
158
138
91
148
124
105
110
58
122
138
67
112
111
99
91
67
86
89
142
138
74
69
122
55
94
122
41
103
41
131
105
55
119
126
92
130
92
92
56
67
109
56
148
144
79
128
140
92
69
146
74
105
124
178
168
67
111
110
140
83
55
105
123
124
119
92
91
124
158
69
100
79
126
171
104
148
122
137
55
111
136
58
100
67
94
105
111
37
104
119
67
132
160
110
91
92
67
55
126
163
110
103
126
138
55
67
122
105
123
145
120
132
58
135
110
69
91
132
109
92
80
56
78
109
69
93
126
99
169
67
77
140
140
152
86
111
104
104
99
192
122
139
86
126
92
135
67
105
152
119
41
105
88
95
105
92
110
86
123
104
55
103
126
99
162
77
76
92
152
180
105
55
139
181
178
105
139
58
92
37
67
126
100
55
158
138
127
105
37
98
56
105
168
116
119
81
163
117
110
126
92
79
75
55
110
144
122
138
92
74
117
150
98
69
146
86
146
128
105
56
93
56
127
127
131
91
92
56
110
92
109
146
146
104
152
99
84
138
69
132
126
37
138
132
92
171
122
139
131
138
126
92
104
58
88
134
122
92
124
37
128
107
37
119
37
75
130
114
108
105
58
37
92
111
109
110
84
104
56
131
107
138
110
132
58
135
91
104
121
92
92
111
86
78
56
138
169
55
92
92
86
137
111
127
128
99
93
108
132
67
37
67
86
103
122
127
55
111
79
126
110
56
135
93
119
131
144
55
75
148
86
92
79
69
58
100
141
114
146
126
114
69
93
105
112
104
117
138
108
92
77
98
148
131
139
67
164
112
138
127
130
79
139
110
105
110
55
126
138
131
144
138
79
83
92
110
55
160
104
75
79
104
105
108
110
127
149
138
139
99
105
103
158
127
111
109
97
58
139
126
105
119
105
75
92
91
111
105
138
97
178
120
69
126
104
111
110
56
126
141
55
122
55
135
105
104
135
86
79
83
107
111
122
178
139
169
122
93
122
77
109
123
178
126
69
69
110
67
92
138
103
122
67
105
55
37
169
105
147
178
92
86
75
101
57
122
158
104
137
67
110
117
138
83
105
37
126
67
92
138
89
128
105
99
88
122
146
79
168
109
107
127
128
169
92
58
84
100
55
152
93
110
88
128
92
37
92
126
115
105
96
78
112
77
81
124
58
56
92
98
86
118
128
79
78
92
105
67
128
58
146
110
120
152
138
152
106
169
115
117
86
77
79
178
99
74
126
153
105
74
124
122
92
138
126
86
110
128
145
126
55
105
110
105
122
56
178
126
91
103
77
91
79
162
126
104
83
126
97
77
75
132
92
110
86
58
122
180
160
122
98
130
126
109
105
107
101
95
126
152
136
122
180
117
127
114
122
84
123
92
99
158
112
138
55
107
92
158
58
98
92
178
139
93
104
55
145
158
140
58
55
122
144
126
93
122
129
104
69
92
111
92
92
112
146
105
91
55
69
91
178
100
126
122
144
178
92
122
139
100
152
75
77
142
139
69
89
104
86
146
178
74
97
105
122
163
119
77
105
128
92
92
99
99
123
83
67
105
77
126
74
69
138
107
178
107
55
140
122
110
58
138
67
104
177
136
92
77
117
92
110
83
129
114
67
103
112
154
91
122
167
107
92
105
128
122
122
139
178
110
106
138
56
92
56
112
158
146
92
103
92
123
58
55
152
122
110
58
140
67
92
67
144
128
158
56
138
55
92
140
56
97
110
75
92
114
101
135
67
127
144
126
171
58
92
110
84
101
134
199
74
91
67
139
68
92
126
105
126
127
143
162
144
92
152
146
91
122
138
92
152
77
67
55
93
67
92
147
124
99
75
55
144
77
104
92
122
55
97
110
127
126
126
163
178
91
74
127
58
55
58
126
92
37
180
67
104
67
110
146
92
75
144
101
103
104
111
105
55
110
143
122
139
93
93
92
67
105
126
37
127
74
112
93
149
146
137
92
110
145
144
136
168
92
110
148
123
98
91
92
139
112
105
102
56
122
119
146
107
104
110
144
104
178
83
102
105
139
80
98
169
56
119
122
37
130
158
139
75
37
93
79
119
127
142
110
132
93
127
92
67
93
92
56
139
122
127
74
110
99
67
152
110
67
69
126
89
139
103
138
153
58
67
105
92
169
180
122
91
138
104
132
92
92
119
103
140
87
131
67
140
138
138
110
125
79
110
75
131
130
110
99
55
140
169
56
105
167
119
67
77
124
110
169
92
92
37
37
105
77
61
109
58
93
68
92
126
105
131
109
107
86
152
122
144
138
99
119
104
58
83
140
110
142
55
110
148
127
88
79
138
105
81
139
108
92
86
91
112
75
146
137
68
131
129
97
160
167
75
104
119
178
105
109
122
55
152
75
56
86
144
92
126
146
55
69
140
37
58
77
55
91
105
56
56
109
126
111
121
85
110
58
144
74
114
56
55
119
84
55
178
151
134
107
127
148
55
77
139
55
139
126
58
87
119
122
83
126
79
109
92
98
92
74
92
138
139
109
37
139
178
122
122
55
140
127
105
68
93
129
110
65
122
109
164
126
102
127
55
110
138
92
139
110
117
79
55
107
67
134
74
86
138
148
92
110
107
146
92
144
168
84
108
138
144
111
86
69
136
37
103
152
86
37
105
128
55
126
122
122
139
105
111
79
75
126
122
68
56
55
75
109
110
67
55
92
142
139
67
99
93
92
55
112
92
55
144
120
108
110
139
58
119
93
67
139
146
126
128
144
68
139
93
55
67
134
122
122
110
75
122
107
134
92
137
58
83
69
107
131
126
126
163
75
103
104
127
87
86
146
92
127
130
92
75
92
171
37
122
160
180
109
158
111
138
83
83
104
123
99
140
171
92
86
112
171
37
126
84
83
112
93
168
144
119
91
122
109
146
93
92
110
150
130
158
58
121
105
139
110
135
110
75
110
124
69
92
110
104
122
92
110
125
146
121
136
93
105
111
99
169
98
126
74
67
84
104
74
74
126
110
56
127
130
55
97
127
126
95
134
95
55
108
126
55
84
99
92
74
97
128
126
56
79
69
110
140
164
104
139
92
136
55
92
123
37
123
74
145
122
105
180
92
127
131
56
93
131
79
69
128
122
148
130
126
138
110
94
92
75
74
58
99
101
131
152
124
101
104
123
67
124
108
138
74
86
103
111
104
114
37
126
55
55
75
78
137
145
122
37
107
178
180
122
148
139
74
169
95
87
148
158
92
104
128
104
56
109
139
86
91
105
100
92
107
138
110
138
55
92
110
92
144
109
131
169
67
124
67
92
83
92
75
56
55
92
104
103
138
123
56
83
105
104
127
101
75
99
178
92
102
93
91
178
164
75
138
153
56
81
75
67
67
55
84
94
98
58
93
122
131
118
148
123
148
122
55
77
123
117
104
55
140
100
162
56
138
87
92
108
80
69
93
110
122
58
126
163
93
112
105
104
89
122
178
112
123
105
123
132
124
56
92
146
128
77
146
110
84
92
37
126
107
127
56
152
108
110
127
168
105
109
99
168
178
92
178
127
88
56
122
56
67
92
103
122
74
92
55
104
119
56
55
97
108
100
126
112
132
134
105
136
110
84
124
163
111
87
104
55
139
92
74
178
139
148
110
67
91
99
127
169
92
37
101
92
107
91
55
105
56
138
110
167
147
122
134
56
138
110
56
92
110
110
58
109
92
178
99
105
98
122
105
109
111
128
144
107
126
126
135
178
127
113
139
92
114
104
104
123
178
92
105
167
141
111
138
91
104
105
151
58
69
111
74
56
92
83
158
123
138
92
126
149
74
112
108
110
104
112
86
94
92
134
128
138
127
140
126
92
100
86
122
134
67
137
124
99
104
148
69
104
126
103
126
76
55
104
105
110
126
136
92
100
122
100
97
178
67
55
89
120
77
86
102
140
178
79
105
37
152
146
122
132
127
126
110
69
58
110
58
105
104
129
85
74
69
67
37
138
92
92
110
67
101
104
93
122
67
127
37
128
93
107
86
77
58
74
127
147
67
93
132
139
128
104
104
74
91
129
152
141
58
104
124
92
144
138
111
97
144
126
92
69
101
106
126
158
58
86
103
105
74
91
169
86
156
144
139
79
69
171
98
127
110
138
146
131
55
152
138
162
91
158
67
139
148
37
55
171
105
144
128
81
92
122
104
104
56
180
67
103
122
130
127
131
67
122
75
138
171
91
126
56
93
112
126
123
118
117
92
171
140
84
130
178
138
105
67
108
126
75
138
104
104
110
103
97
92
97
114
110
86
110
169
95
105
100
37
55
149
132
110
37
86
97
69
55
110
105
105
107
138
135
109
92
123
103
119
105
92
103
177
122
97
86
178
122
127
115
56
138
112
105
139
136
137
56
78
127
55
58
110
92
77
134
110
110
138
79
55
124
120
86
163
141
93
127
138
102
111
163
127
56
55
76
55
55
138
84
77
111
98
117
106
99
92
146
111
97
37
150
106
69
84
168
55
141
138
124
55
123
104
144
86
111
92
37
118
111
138
92
79
86
98
91
104
91
86
122
69
105
110
74
110
138
110
127
119
169
91
58
123
145
128
104
152
86
103
124
88
139
158
122
110
109
105
89
136
134
118
117
132
84
163
122
122
140
130
89
86
92
55
152
104
126
112
69
97
91
130
56
109
55
37
58
92
92
55
122
92
188
86
69
105
105
138
92
122
99
139
107
77
178
110
139
93
95
105
144
93
117
111
86
140
171
140
128
139
140
137
56
122
127
105
55
56
106
144
121
109
109
102
152
37
98
55
146
139
92
69
92
127
139
92
119
72
119
105
152
110
152
104
169
103
180
80
110
140
139
167
135
86
89
146
131
177
169
123
93
126
148
137
128
55
137
138
103
138
163
79
55
79
93
92
69
56
106
67
92
110
125
158
122
102
58
152
130
104
92
103
67
109
130
99
86
139
109
84
168
126
69
123
98
105
110
111
81
92
55
58
138
178
92
89
126
79
58
122
152
103
126
152
77
144
92
142
152
99
91
139
92
56
55
111
110
163
105
67
58
119
75
55
137
139
88
110
92
114
120
107
79
105
92
107
119
119
160
122
99
84
110
152
58
111
138
126
98
88
102
105
135
146
99
126
73
104
112
136
123
55
144
75
139
126
56
55
55
128
128
77
180
56
92
92
123
127
91
74
138
180
109
152
152
138
80
74
137
97
56
67
122
140
55
110
137
144
98
140
37
138
115
122
105
106
140
69
104
134
139
92
139
109
55
105
110
126
92
178
178
138
138
140
149
126
119
83
152
55
83
68
67
79
104
91
110
146
67
127
126
146
110
105
69
98
105
128
178
126
92
110
131
105
152
144
119
139
92
152
126
83
67
144
107
142
101
95
83
163
104
127
127
122
110
103
93
77
71
56
92
178
104
98
99
58
58
92
164
122
110
122
55
67
67
55
67
139
130
152
122
104
55
138
122
178
72
127
122
97
123
116
67
67
97
120
109
168
56
55
134
105
110
114
74
103
106
69
97
122
74
105
122
122
37
111
74
55
110
56
126
178
130
72
92
92
101
104
58
55
105
136
138
93
149
37
122
138
122
86
92
146
119
86
104
104
134
149
58
171
79
108
92
123
69
163
58
105
55
80
114
139
83
139
99
83
140
110
79
93
132
96
148
91
55
55
127
158
92
92
75
130
138
86
178
146
117
92
58
138
67
103
136
122
92
67
92
178
134
110
122
79
110
104
58
105
105
127
64
81
97
169
97
56
93
100
92
106
92
103
114
122
132
69
69
130
55
58
98
145
122
127
132
110
55
69
98
138
127
83
158
142
69
124
75
123
89
144
123
104
168
118
152
136
110
55
138
122
113
56
56
123
144
55
134
83
128
122
77
101
105
120
104
144
86
122
92
151
83
75
139
56
122
107
93
122
93
118
123
92
146
75
67
107
67
109
140
110
146
80
92
122
140
152
126
126
91
119
86
92
165
58
56
165
104
178
68
92
178
74
126
138
86
126
55
134
105
162
105
105
69
139
105
169
104
110
169
55
55
92
110
37
79
169
127
146
55
56
152
132
108
56
127
67
127
93
55
126
171
95
83
144
111
97
124
93
55
120
178
75
86
126
55
122
113
75
131
148
140
122
145
110
144
148
67
148
148
86
99
199
138
79
165
79
104
139
124
111
126
122
110
128
122
138
104
122
138
119
119
93
91
67
99
127
55
58
67
92
126
122
92
83
37
55
55
127
178
158
86
126
71
92
74
67
105
93
98
105
86
127
171
109
139
142
122
86
110
115
119
126
67
163
74
124
120
146
37
91
69
55
81
119
132
126
169
77
91
67
122
92
94
69
77
37
126
56
58
122
56
55
99
119
178
120
84
55
58
56
98
110
92
96
120
105
138
97
97
55
109
110
110
105
58
75
37
67
55
141
111
122
107
128
55
140
137
124
102
163
92
126
58
130
69
67
114
105
122
92
93
110
92
92
135
73
144
75
88
92
148
122
103
91
69
67
99
158
69
92
111
55
101
126
91
148
58
86
126
75
106
109
128
124
122
55
55
139
144
127
122
97
123
110
124
107
101
110
37
105
146
158
126
144
56
67
67
99
117
111
110
96
67
55
95
178
108
122
122
77
119
37
126
138
122
123
139
105
138
178
99
122
92
165
69
105
107
67
92
75
92
126
37
146
105
93
99
92
169
74
101
128
105
56
102
138
142
97
84
91
130
110
146
127
144
104
138
178
91
103
105
134
89
92
37
111
91
140
130
68
127
37
126
67
138
84
88
126
92
105
93
145
79
105
74
55
126
91
105
178
158
122
165
55
58
109
130
146
171
99
58
92
144
122
127
99
122
92
92
86
122
109
67
55
128
56
93
110
100
168
103
56
74
67
79
91
84
131
109
55
104
67
56
58
67
126
110
122
138
91
99
169
169
87
99
152
37
136
55
132
110
56
88
74
79
116
92
86
56
67
104
127
164
80
178
111
142
148
153
75
120
119
130
103
110
144
138
139
64
178
67
67
55
146
103
110
37
74
67
93
86
92
92
37
148
92
138
109
122
110
95
91
72
68
134
55
139
122
144
105
91
93
138
132
67
77
127
105
128
92
77
104
144
55
144
152
178
131
126
126
160
120
105
104
69
79
126
131
127
110
105
95
69
74
152
67
37
93
141
83
93
110
139
124
86
127
138
104
93
127
139
86
107
69
122
152
178
55
55
105
56
105
110
168
178
110
104
123
109
37
107
199
122
111
74
55
74
67
79
123
108
79
86
105
91
86
75
69
152
107
119
55
105
110
104
77
99
92
69
103
126
104
86
56
109
77
104
139
37
124
110
152
105
105
95
115
84
98
138
105
128
93
122
93
105
156
169
138
167
92
79
79
92
128
92
67
94
102
111
158
122
37
103
109
180
101
119
56
97
122
115
180
119
56
75
122
55
58
86
86
138
37
80
93
91
138
126
58
104
58
171
169
146
122
169
152
160
122
114
122
55
130
112
134
119
178
110
169
139
74
128
111
138
146
122
109
129
101
108
98
122
92
96
92
58
93
119
156
79
122
55
111
104
119
91
105
128
105
178
74
152
56
146
178
104
92
139
109
178
128
92
77
92
111
118
130
89
92
144
74
74
104
144
98
104
79
111
110
152
168
86
126
128
127
126
126
67
73
123
104
95
126
146
139
105
74
127
135
126
111
92
144
117
58
138
55
131
77
92
55
103
56
105
55
127
37
85
139
91
93
110
92
127
178
135
126
124
139
89
69
107
92
122
110
124
93
144
169
130
86
80
69
126
110
140
99
87
102
139
104
138
110
105
127
122
134
126
79
68
145
58
139
123
104
144
103
91
122
178
140
75
93
127
111
127
104
105
79
178
67
56
75
56
126
114
103
79
55
89
79
92
108
106
146
92
77
111
139
126
144
109
110
131
122
103
99
104
86
77
67
128
122
56
77
119
152
110
92
169
149
169
92
96
109
141
92
130
128
104
37
178
163
126
78
118
139
92
111
132
75
105
105
92
93
55
110
111
105
136
67
107
83
88
99
92
137
56
108
142
138
122
84
138
115
101
93
138
122
125
126
130
138
104
77
163
37
92
67
37
101
106
109
56
74
56
164
131
124
122
55
129
106
139
114
130
92
55
77
110
127
55
109
56
110
55
92
107
37
55
168
74
99
93
105
104
79
117
122
126
126
110
123
152
138
86
67
55
138
56
107
37
152
138
131
137
107
130
37
55
119
58
94
145
104
112
109
75
77
97
130
140
37
138
138
55
92
126
181
136
178
138
103
123
55
55
69
107
125
168
55
126
75
123
128
152
114
137
89
56
124
56
107
67
169
95
67
195
158
146
58
112
105
105
58
139
109
99
92
37
80
146
55
84
55
148
107
105
91
139
167
126
37
80
105
132
178
67
97
92
55
123
123
58
69
105
80
110
111
139
67
74
88
140
92
55
138
69
100
104
67
112
55
92
55
93
99
139
124
138
122
55
56
37
58
178
105
178
151
97
77
122
74
105
138
79
91
37
122
104
110
131
138
56
67
77
56
99
58
93
123
178
122
149
117
76
67
181
149
126
144
110
92
105
158
152
69
168
56
77
55
79
128
92
58
37
37
55
92
138
109
75
178
67
86
93
152
119
167
93
126
74
112
91
69
134
56
75
126
72
178
93
91
131
110
165
126
67
110
119
163
136
55
131
127
55
110
139
110
56
146
67
67
92
122
55
92
136
74
128
97
146
134
104
122
122
169
171
97
105
77
169
163
122
127
93
119
37
69
122
93
138
139
138
56
55
146
180
79
55
130
111
55
92
114
37
100
58
158
148
119
122
55
139
92
69
84
37
122
107
110
114
110
104
144
122
144
152
86
67
131
138
109
127
139
92
126
103
102
81
101
178
93
112
125
144
132
126
79
146
69
58
126
37
131
115
100
104
122
92
67
126
199
152
112
111
86
126
119
84
73
119
128
162
105
103
140
123
104
122
67
55
92
110
56
91
93
67
126
129
93
55
134
92
105
69
168
105
154
56
86
93
146
92
110
67
78
114
74
79
178
129
92
144
67
89
160
111
127
126
55
126
110
121
105
134
104
92
109
104
75
137
67
67
107
148
126
126
68
138
92
140
55
111
138
104
55
67
73
92
105
93
104
138
110
126
127
69
99
104
77
37
69
91
92
80
91
74
58
110
104
111
178
140
127
127
104
110
146
37
144
104
124
89
180
55
55
122
109
86
93
124
106
130
92
138
55
68
123
93
86
180
110
56
138
130
67
91
98
134
126
140
92
138
55
102
134
55
131
37
69
110
77
118
80
123
91
92
114
123
97
77
130
69
86
56
77
98
134
152
144
114
123
105
89
93
152
146
77
178
144
126
101
140
112
92
98
93
92
105
105
140
144
56
127
69
92
92
75
148
126
122
144
92
126
146
84
122
100
67
56
86
105
121
134
97
67
107
56
67
140
138
98
122
134
37
122
92
37
92
55
79
93
134
67
169
79
89
126
55
86
79
109
122
110
131
55
144
126
105
104
86
119
103
104
91
103
152
110
104
56
93
102
37
92
110
110
109
67
126
122
55
58
97
105
122
122
158
126
92
122
74
92
128
102
134
55
138
126
56
169
74
67
56
104
77
92
104
93
56
103
110
144
127
69
136
169
55
141
122
55
157
94
92
92
84
67
144
122
110
55
92
122
138
92
93
126
124
105
104
138
99
122
132
92
92
55
123
131
108
110
178
92
110
152
105
178
37
55
163
92
92
104
83
169
126
122
92
56
169
58
93
91
141
58
117
108
69
126
55
138
92
111
178
135
120
92
77
92
112
110
88
83
105
146
104
138
119
169
107
93
103
138
169
67
140
104
104
104
92
119
67
138
104
93
77
104
136
131
55
111
110
111
79
105
126
55
127
138
126
104
130
104
169
146
55
55
146
152
99
105
67
68
126
163
91
87
91
55
127
97
101
67
122
127
88
110
107
105
91
93
128
110
138
134
122
37
123
93
100
110
55
126
126
178
124
104
126
86
110
122
123
126
130
86
102
101
77
92
109
178
126
138
75
93
83
139
120
138
152
75
67
95
97
92
138
132
107
78
146
129
56
58
93
144
126
91
111
104
104
93
160
126
104
119
100
74
93
114
105
122
110
93
37
98
67
55
134
93
178
102
168
93
99
103
110
119
107
110
55
134
69
58
56
67
139
77
111
74
84
144
67
93
55
127
146
88
124
37
178
107
74
100
92
101
56
127
105
75
139
106
79
37
37
117
104
75
92
140
91
56
37
74
104
152
122
110
69
152
136
37
55
105
126
55
58
56
122
180
105
111
132
105
109
122
92
122
56
77
67
55
107
127
162
158
126
144
130
55
55
110
104
86
99
145
114
99
104
92
109
105
165
105
135
122
75
126
131
126
58
178
83
69
126
110
55
122
106
127
163
93
99
138
168
111
138
126
145
91
92
139
77
109
122
105
69
74
178
68
88
69
111
138
122
127
93
140
67
67
110
107
103
55
168
163
128
122
125
55
178
100
92
104
105
55
102
92
139
119
92
92
149
80
58
74
138
144
107
144
107
105
110
92
139
128
99
67
91
152
92
138
58
165
105
131
86
110
122
58
68
110
126
105
92
110
102
138
55
103
107
117
109
126
123
97
97
92
99
92
37
105
37
92
89
122
168
119
91
75
126
55
178
138
86
74
93
109
178
104
37
104
84
67
86
92
92
110
178
138
55
138
91
55
104
55
109
74
92
55
128
67
79
107
56
110
92
128
138
69
92
106
140
169
101
55
146
178
138
69
125
178
130
122
67
152
110
177
128
127
98
125
124
126
127
109
148
110
67
122
55
199
56
106
109
110
137
89
139
92
152
126
122
114
67
126
126
69
92
127
138
92
137
86
110
37
138
127
128
110
123
92
120
83
114
122
110
99
103
158
108
134
169
169
118
56
104
109
178
188
126
98
126
105
101
55
126
107
92
83
130
87
99
128
93
162
74
122
92
114
109
138
119
126
180
122
79
119
89
110
103
118
126
58
111
55
152
110
122
57
92
67
105
126
74
152
105
199
121
103
108
104
93
75
124
109
146
138
141
130
128
112
148
86
111
88
105
105
110
178
99
55
58
140
189
144
110
58
105
101
119
122
123
56
144
104
110
92
138
108
58
79
151
128
138
138
92
93
88
74
122
56
67
130
144
132
104
119
104
93
55
122
138
93
69
138
93
136
122
104
114
37
156
106
103
67
140
37
126
55
83
137
107
137
92
92
162
146
105
139
107
146
103
126
86
106
110
103
92
138
95
162
126
119
168
145
37
37
92
128
56
128
128
93
106
138
169
144
105
119
105
138
109
139
110
114
144
105
99
105
75
67
142
67
126
110
93
55
123
140
56
101
145
105
67
122
69
109
37
55
99
105
110
37
58
126
67
93
122
94
55
105
123
67
68
55
92
152
112
119
142
197
111
93
124
119
199
75
171
83
79
105
152
111
111
144
126
55
55
99
138
93
98
37
91
146
105
126
122
103
168
138
92
110
99
67
55
137
77
105
119
86
93
110
37
138
67
75
61
163
119
140
164
110
95
67
37
120
92
56
41
144
117
74
92
109
86
105
95
144
92
139
92
79
139
138
101
91
110
139
128
126
93
110
92
126
158
93
105
104
55
127
92
104
126
87
92
135
93
119
130
122
97
92
67
116
124
131
69
37
144
79
55
104
110
131
74
113
128
125
109
138
132
55
178
124
67
137
92
92
131
96
146
125
138
87
144
126
146
55
83
93
103
58
126
158
126
117
105
105
123
152
119
93
128
140
92
124
58
105
118
107
93
123
108
92
104
83
144
109
144
105
117
141
178
74
105
37
122
92
99
55
37
146
163
92
169
122
122
92
72
105
56
105
99
107
138
55
110
91
127
138
107
37
123
169
103
91
138
112
129
169
127
79
127
58
37
69
55
110
151
110
122
124
37
137
171
107
126
178
109
110
128
134
98
91
144
126
128
80
67
83
102
131
104
138
126
92
58
105
122
139
105
119
137
69
74
58
138
138
178
103
126
37
123
152
138
104
79
67
152
55
101
107
127
92
104
127
107
92
67
92
69
69
79
111
131
109
68
55
103
178
126
104
85
122
83
131
122
84
99
55
67
144
122
103
105
74
58
67
92
126
102
122
148
146
91
112
104
92
149
86
106
114
92
127
93
84
105
127
178
92
126
74
104
105
105
152
67
178
169
180
104
126
81
55
104
138
92
146
101
118
105
138
122
110
178
55
139
131
122
178
122
158
55
160
104
104
110
111
89
122
114
69
92
130
105
114
56
92
139
91
129
131
37
56
56
102
107
92
126
126
69
93
37
105
110
163
138
102
188
128
140
144
92
75
144
67
58
92
106
92
55
158
112
124
141
139
110
91
158
37
111
110
169
128
128
120
122
93
106
101
110
171
83
86
131
126
141
137
100
128
104
110
101
146
55
69
131
120
55
138
124
138
67
122
178
92
79
192
67
127
105
134
110
93
109
102
99
100
92
105
99
100
132
100
37
139
121
103
146
94
119
122
104
138
55
123
140
93
105
108
105
122
118
110
67
105
142
139
139
92
37
138
128
139
154
110
67
109
55
117
122
164
67
144
138
144
55
77
178
106
139
77
72
124
138
123
86
99
148
128
111
143
37
140
103
102
86
164
110
104
55
92
115
91
81
110
111
86
79
104
110
131
68
140
86
126
92
104
122
92
128
126
77
171
138
55
104
102
169
112
126
58
104
79
138
122
123
122
74
58
180
56
37
126
139
108
126
104
137
126
163
128
74
111
55
117
119
104
56
88
109
158
94
122
152
104
140
92
99
137
99
139
139
58
56
132
110
138
105
126
56
69
93
89
79
107
102
182
151
98
55
92
83
99
56
131
146
92
67
77
99
122
103
86
77
143
126
91
110
86
140
119
158
111
55
105
162
105
138
122
120
92
140
144
91
122
88
91
140
152
127
122
103
56
122
58
146
104
119
105
56
117
104
93
122
158
93
79
55
123
68
138
158
122
105
146
75
114
69
86
93
152
138
99
58
127
171
92
111
55
150
109
83
93
127
55
138
122
74
114
104
75
138
118
103
134
69
124
58
55
58
67
37
169
86
75
55
77
124
99
55
146
100
140
56
91
91
58
122
152
128
139
139
92
178
124
83
91
67
55
109
92
83
119
122
136
138
56
144
152
77
114
107
55
74
55
122
110
128
103
112
93
102
158
55
109
135
178
122
140
104
110
126
98
127
126
122
95
139
69
151
97
146
144
138
180
122
136
105
105
56
55
100
139
132
178
75
127
104
56
58
119
146
127
100
114
178
91
168
67
128
138
199
93
163
93
110
110
75
139
67
56
149
108
105
55
83
146
92
197
92
105
69
171
120
139
146
122
119
145
55
92
178
120
55
37
122
152
110
180
109
73
92
55
122
99
120
56
79
171
92
180
92
140
101
108
69
152
95
105
119
68
93
93
126
126
84
122
126
93
139
128
140
111
109
58
138
58
122
101
136
131
131
138
130
109
178
127
122
93
97
123
146
123
79
138
93
137
126
56
37
127
67
158
134
58
111
134
92
146
92
67
138
93
109
92
122
104
124
105
91
117
56
131
131
86
111
139
162
72
111
74
91
178
122
92
117
55
86
122
120
93
118
114
86
103
67
74
69
114
124
104
108
124
169
128
105
138
93
123
138
180
101
128
110
110
139
56
110
107
168
178
97
138
56
152
171
109
128
105
139
75
140
92
110
164
91
124
92
93
56
104
105
131
110
58
123
83
163
146
138
126
69
139
135
126
152
99
93
146
94
148
37
137
169
107
119
120
56
138
123
144
92
105
67
117
158
92
56
144
138
67
79
112
134
56
68
179
138
99
127
169
58
58
132
55
132
67
56
122
105
104
79
74
107
132
68
109
56
110
88
109
122
55
140
126
178
104
100
178
56
103
79
78
56
131
126
135
84
78
158
92
58
92
128
56
104
152
99
138
55
146
55
126
67
55
104
37
127
56
89
55
77
92
138
78
126
105
78
55
126
77
127
105
58
105
171
56
67
69
138
92
67
92
137
105
105
110
92
124
138
119
93
125
93
67
105
127
91
105
105
145
123
140
92
99
93
138
105
55
80
105
122
77
127
37
56
55
128
55
134
105
77
92
98
110
79
109
55
86
80
120
122
69
105
109
138
122
97
86
67
56
56
126
114
139
92
79
56
67
110
103
69
73
126
136
119
110
79
146
67
105
105
67
56
126
122
104
75
139
91
37
74
152
126
123
137
123
58
134
117
55
126
136
89
37
79
101
171
99
58
120
99
122
142
120
137
74
152
79
67
92
110
122
58
55
75
37
126
162
105
138
124
145
37
138
117
138
178
104
103
104
92
112
132
56
138
105
126
104
56
127
127
138
140
97
122
126
111
148
69
37
106
91
140
86
171
178
57
122
122
69
103
55
105
138
111
79
152
169
148
124
67
104
119
69
171
86
139
124
126
79
77
146
103
122
58
117
105
105
110
92
93
118
111
104
110
180
122
74
138
76
144
110
126
105
119
105
105
75
126
102
83
93
93
100
142
119
122
91
55
104
67
79
123
146
93
105
136
74
92
118
110
37
132
126
56
107
122
97
126
110
110
110
86
93
171
99
37
127
92
56
124
92
145
79
104
67
55
122
138
105
74
126
79
55
131
58
55
164
110
152
109
105
112
114
100
140
92
126
169
99
103
117
110
144
56
99
104
149
92
89
110
92
37
126
126
135
103
119
77
126
136
87
112
105
127
37
80
124
69
178
92
119
148
112
110
122
123
111
105
91
126
131
139
139
137
92
139
144
92
93
138
105
92
127
69
104
92
122
55
74
77
81
135
122
104
101
132
152
74
96
55
73
148
94
74
122
93
56
110
97
110
91
144
122
86
132
132
123
55
169
127
149
105
125
92
104
110
152
104
91
92
93
128
143
92
55
117
122
55
92
110
115
72
126
105
77
67
55
92
55
88
91
110
171
79
83
77
178
139
93
135
106
158
92
104
92
127
156
131
55
92
110
84
115
109
91
97
119
87
138
105
93
37
138
110
91
55
55
99
37
77
103
99
105
69
126
104
138
113
140
105
69
158
69
104
67
152
124
110
92
67
122
75
126
75
106
129
128
122
119
104
144
109
92
91
128
110
123
105
134
74
127
97
93
89
91
126
120
92
105
111
75
58
118
68
117
91
37
104
93
112
79
92
138
139
127
55
67
146
122
67
79
67
69
104
110
86
127
68
93
77
139
56
104
119
180
67
109
142
127
91
93
142
140
110
69
109
138
138
55
111
56
91
81
67
92
92
99
56
124
93
107
37
104
126
110
137
110
146
110
121
110
152
107
163
136
89
86
110
115
92
58
95
110
140
126
110
92
91
92
55
163
127
96
104
92
67
67
56
124
103
87
119
127
182
123
105
80
178
67
130
81
105
93
163
107
55
74
86
126
99
126
138
67
119
104
110
92
104
146
127
75
169
139
69
37
152
126
117
160
77
122
178
138
77
139
152
146
112
89
138
92
138
145
55
92
171
105
102
118
138
119
111
171
134
103
110
114
104
77
111
110
110
111
146
105
93
126
95
56
99
126
122
117
92
119
126
122
103
103
152
127
86
110
127
69
139
146
138
146
100
195
110
67
105
56
67
178
37
131
140
130
146
100
127
119
69
162
140
79
104
58
89
105
105
55
118
110
101
152
95
56
110
67
56
103
124
91
138
74
122
119
55
100
75
127
105
67
165
92
67
77
119
76
56
137
77
128
152
104
92
74
93
139
128
178
119
92
178
110
89
158
58
152
102
134
109
56
104
110
112
99
105
99
55
167
56
37
124
67
72
171
110
74
114
93
122
69
169
89
86
122
114
69
107
126
105
182
75
122
103
126
122
74
158
111
104
169
108
110
99
126
102
145
58
169
146
122
122
122
76
127
105
110
126
126
69
75
139
122
114
55
37
139
93
123
67
128
134
105
132
123
75
110
138
55
55
86
98
126
69
91
163
123
158
92
74
79
92
56
178
92
91
146
110
167
139
138
122
169
111
169
143
83
132
105
169
117
55
178
67
144
135
58
106
124
146
55
127
55
144
67
105
163
115
169
98
123
67
180
56
86
104
145
114
110
89
126
55
104
139
108
86
83
178
127
122
56
126
105
56
69
144
37
178
109
67
78
93
99
87
99
86
146
86
178
122
93
37
105
92
67
58
99
135
152
91
110
128
92
136
122
92
158
123
58
93
101
105
92
148
67
150
138
153
105
138
136
120
97
86
144
99
58
138
123
114
93
79
109
149
128
104
111
55
56
93
178
104
110
92
94
56
74
104
124
93
123
146
104
55
67
119
120
140
79
55
114
109
146
145
122
110
110
146
134
37
111
111
97
128
86
97
104
110
122
92
122
104
91
110
107
104
75
118
158
126
144
163
91
138
92
92
165
122
76
104
55
139
92
58
102
109
93
104
67
120
122
108
104
146
107
55
55
137
106
69
134
114
141
91
114
105
83
58
110
126
67
67
84
67
83
92
118
103
126
126
84
127
56
55
92
93
143
140
122
91
110
105
105
99
132
100
83
92
99
85
138
104
67
147
77
84
119
37
55
92
139
111
169
138
126
91
130
67
55
97
58
126
127
92
86
181
126
92
137
138
178
56
132
140
104
127
75
122
145
111
67
69
122
126
56
110
138
55
122
152
92
178
105
77
123
37
178
78
99
178
139
141
92
106
144
58
134
127
55
148
146
92
105
93
113
163
180
152
58
138
104
119
110
138
123
92
83
122
152
146
144
131
95
110
130
122
119
111
127
92
73
139
102
165
55
86
37
56
68
127
128
56
101
148
89
58
81
107
67
104
109
140
55
129
69
144
69
37
138
128
163
106
55
99
126
105
93
152
146
109
171
100
126
165
109
126
56
168
55
128
105
178
55
131
117
110
109
37
92
151
123
117
67
110
122
92
37
56
122
135
131
119
158
93
105
58
107
138
79
58
144
111
56
139
55
55
83
111
105
162
132
105
86
55
80
37
67
142
93
110
125
134
140
86
75
67
146
55
127
108
122
126
137
118
92
145
76
92
110
163
171
89
123
123
158
37
158
122
69
104
127
128
92
119
91
110
130
37
128
37
92
119
167
150
119
109
56
122
146
104
139
150
138
109
69
111
126
119
134
126
114
164
123
93
111
119
138
117
104
131
69
93
124
110
37
55
131
68
105
110
142
97
74
126
128
94
139
138
104
92
140
92
125
132
77
37
120
126
92
126
92
58
128
126
92
178
178
167
122
110
127
127
168
105
75
55
91
84
139
119
56
150
123
178
122
67
122
69
132
111
127
114
171
110
98
92
107
178
104
97
110
109
92
100
139
128
144
93
144
55
122
178
180
92
92
135
126
104
111
138
100
110
132
106
122
87
131
99
105
124
168
55
110
91
126
119
107
56
118
122
67
122
79
37
110
105
126
79
104
93
144
130
56
138
69
92
146
118
105
127
146
122
99
74
92
138
136
136
134
37
100
132
134
86
58
92
67
138
126
140
81
178
126
107
122
163
103
75
127
119
77
122
110
111
103
126
55
92
111
69
111
171
105
138
113
171
144
124
105
122
55
112
126
69
93
79
146
92
134
104
93
122
169
153
111
105
98
158
132
130
147
100
58
128
67
142
55
110
109
178
126
109
99
137
75
168
55
131
79
56
92
92
122
163
119
158
104
152
122
79
122
138
119
138
92
119
56
89
93
146
67
110
134
122
67
69
92
77
163
146
119
93
104
92
112
122
138
92
144
67
169
99
92
67
69
92
122
58
126
169
79
67
37
92
92
171
55
79
111
55
131
181
109
167
120
179
124
109
67
95
69
92
126
139
107
110
55
56
69
122
122
56
37
92
178
122
152
69
104
55
55
99
169
92
102
127
78
75
55
127
164
122
103
138
67
122
37
168
37
37
110
126
148
97
93
188
91
126
83
69
83
37
55
58
67
163
99
37
130
119
122
127
55
99
106
138
138
163
132
126
105
92
110
135
95
37
74
139
69
93
123
110
99
137
123
67
67
127
107
110
123
75
128
67
128
79
127
127
92
146
150
67
127
121
103
93
67
56
92
126
171
134
136
102
107
105
94
74
98
92
114
56
178
86
92
126
111
145
129
92
56
126
55
127
56
92
146
77
109
104
92
88
74
130
122
92
85
93
131
122
56
122
92
126
55
109
126
122
160
178
86
111
127
123
171
171
162
144
92
74
168
83
74
119
92
146
98
145
56
144
75
136
97
138
138
100
110
55
119
86
55
92
77
93
117
77
91
55
138
61
92
55
99
139
126
92
146
109
128
158
58
106
178
67
77
94
124
99
122
74
104
86
55
101
138
75
189
55
105
124
93
138
179
56
104
105
110
110
105
86
122
162
127
92
106
122
104
86
99
130
55
144
119
105
122
127
122
122
111
109
132
135
109
37
84
138
110
75
92
69
106
126
67
139
127
131
127
110
56
124
140
121
126
104
131
144
55
122
55
95
104
56
128
118
109
111
104
105
144
144
169
122
126
111
37
107
58
144
130
138
126
169
122
68
93
123
79
92
112
158
89
124
122
100
104
75
92
138
92
163
126
93
64
119
134
89
55
110
105
91
146
55
167
58
92
108
105
58
93
168
111
128
103
69
104
91
110
110
134
104
120
74
55
126
91
111
105
169
108
37
92
92
92
105
108
169
131
95
110
123
140
126
67
164
55
92
91
55
55
132
167
111
92
148
101
152
107
114
121
126
138
86
130
132
105
104
111
92
128
58
55
86
182
81
74
55
110
138
83
148
67
92
124
131
104
152
134
104
105
105
136
55
110
139
101
55
122
134
58
55
106
56
67
152
126
129
169
104
55
106
122
111
55
91
127
56
138
77
91
79
120
92
93
58
120
126
105
148
55
74
92
111
67
118
93
141
55
123
77
67
101
79
126
126
110
92
134
120
124
123
122
125
134
55
105
98
134
128
168
55
106
124
126
146
56
55
148
138
138
199
117
104
67
67
162
107
122
122
92
92
95
109
55
114
168
97
55
67
171
122
80
120
105
158
56
138
135
110
37
37
126
151
58
67
105
105
171
68
77
127
135
97
122
144
98
139
92
148
122
79
120
152
79
148
138
111
67
178
156
79
122
131
110
105
126
99
119
139
99
101
74
94
105
79
58
138
122
105
137
92
105
126
126
124
111
58
152
122
112
86
99
105
92
140
93
178
122
56
79
104
123
104
69
77
130
135
58
77
92
83
93
92
130
139
138
169
109
67
84
67
91
136
111
99
67
146
92
130
56
100
122
178
92
105
140
129
148
91
69
149
142
111
165
56
67
138
110
114
104
106
114
106
138
134
122
105
92
148
164
132
55
37
157
122
139
79
163
142
138
92
158
118
138
92
122
139
146
126
169
92
128
110
55
79
97
146
74
67
123
93
67
99
146
86
110
92
158
110
169
104
105
167
104
178
144
126
120
55
127
114
56
102
178
109
138
58
99
67
105
67
67
56
140
139
69
144
92
92
178
98
93
75
152
126
149
169
110
138
92
92
55
55
138
92
156
124
74
77
104
169
75
103
55
129
119
111
128
138
124
75
110
126
92
105
144
122
101
122
128
56
122
123
37
110
127
178
78
171
130
56
110
37
56
122
91
122
110
56
144
144
132
67
126
115
109
79
109
126
67
122
126
131
92
56
144
58
152
80
144
152
55
126
119
74
168
104
127
99
129
104
86
122
122
67
75
163
77
92
138
178
114
92
119
55
69
168
131
138
162
182
122
144
55
139
169
67
83
56
69
67
138
105
104
144
127
107
105
110
92
120
92
169
126
112
146
112
85
144
58
138
126
111
109
37
110
104
105
56
119
138
105
134
138
92
55
104
160
100
126
67
102
98
120
99
134
139
138
148
107
109
119
142
56
110
56
110
109
110
134
131
137
135
112
105
69
122
69
105
169
55
109
86
123
125
110
55
79
86
86
122
122
134
67
144
37
126
91
169
119
104
180
138
168
105
128
112
111
105
86
109
67
93
67
91
138
109
69
86
37
93
92
107
126
58
123
93
67
58
171
151
77
67
92
134
111
105
121
162
37
118
55
107
73
105
117
146
67
138
37
101
122
111
55
140
91
119
128
92
56
122
144
102
92
122
93
128
130
138
128
75
152
122
67
58
67
122
114
56
122
110
67
79
125
123
124
93
178
55
124
55
139
134
56
67
99
122
134
95
104
91
138
37
56
130
92
80
58
104
105
127
97
139
92
144
77
163
81
58
152
75
75
107
146
86
126
160
75
120
55
91
119
122
80
128
100
123
148
144
110
146
104
58
67
67
128
122
164
123
126
89
101
152
74
86
134
75
127
171
146
139
152
37
106
67
178
180
140
98
67
139
153
110
56
182
105
55
110
75
112
58
109
152
88
134
127
73
142
56
126
92
138
67
37
56
138
122
37
126
127
55
139
79
69
126
163
56
69
84
151
111
139
111
110
56
77
128
134
118
106
110
68
106
125
55
139
138
192
138
126
81
126
138
169
144
178
138
58
169
88
86
128
122
99
55
77
110
105
93
122
144
127
55
105
128
130
104
92
67
127
37
152
58
122
160
126
199
67
105
58
93
123
109
110
77
146
122
122
152
146
139
98
74
178
92
117
111
152
110
126
69
55
55
119
126
67
55
79
56
138
105
123
92
55
133
91
145
119
98
56
111
162
122
92
128
105
67
112
81
104
92
111
110
134
122
117
109
144
126
144
111
124
105
127
96
122
104
58
164
178
75
91
58
138
94
102
122
108
110
110
83
122
110
132
110
79
56
107
74
104
92
55
138
148
144
55
110
92
104
99
139
67
58
109
109
74
93
105
105
105
92
146
104
91
152
152
92
105
93
110
92
109
105
99
147
67
126
138
115
92
78
122
104
144
104
156
128
78
117
109
109
122
55
75
55
168
131
162
109
67
123
178
67
144
122
110
92
95
67
114
138
110
144
55
135
67
92
69
56
104
122
132
93
126
105
67
131
146
112
55
71
109
127
113
122
93
92
56
114
37
88
105
105
105
110
55
92
124
99
122
92
64
128
139
102
127
144
105
93
138
146
83
140
93
67
67
122
104
126
58
111
136
110
55
140
163
119
138
126
99
110
99
178
126
152
144
92
152
104
110
138
105
56
103
67
92
122
152
122
125
74
110
117
152
83
110
104
58
55
110
105
165
100
91
56
37
127
83
105
144
119
58
55
111
69
138
105
136
79
74
146
114
92
86
79
128
92
99
92
98
171
92
58
138
178
109
105
56
55
56
92
134
118
117
119
55
138
122
122
37
92
55
55
104
137
95
140
144
122
122
74
67
123
92
160
112
102
79
128
110
55
55
110
130
144
58
101
99
98
55
58
132
69
138
128
107
100
105
197
102
105
88
67
56
103
56
127
91
128
91
56
139
105
84
132
69
93
126
126
118
110
140
126
55
146
110
83
110
163
108
178
111
67
126
122
105
56
56
178
77
110
126
127
109
79
156
83
181
104
56
37
92
111
83
104
126
75
144
122
111
121
74
68
138
126
92
169
122
105
127
122
169
92
105
138
128
123
56
93
178
119
138
110
199
37
77
126
140
75
163
146
67
104
158
102
109
93
152
110
92
107
77
152
132
108
169
138
56
123
55
86
138
58
67
67
55
118
58
138
109
144
169
98
105
109
93
127
122
37
171
69
93
91
100
67
122
122
122
124
110
104
148
123
142
122
79
128
56
55
144
138
92
169
103
83
58
146
97
152
74
105
105
130
37
122
86
148
55
91
132
104
105
122
55
126
75
112
92
92
126
69
145
171
58
144
55
92
122
56
122
152
79
138
93
37
156
37
126
97
113
138
87
93
138
97
178
134
109
56
55
92
138
92
56
55
136
115
169
104
126
103
146
128
168
93
37
79
171
122
127
105
93
93
77
122
169
138
122
91
124
139
131
169
103
119
121
122
55
97
93
67
111
103
84
144
55
146
119
105
119
128
150
101
169
139
136
55
126
120
122
107
146
115
136
138
148
122
88
69
56
92
104
158
152
139
56
113
122
92
120
113
122
160
139
110
109
72
67
137
92
122
138
106
55
109
152
178
125
92
138
128
79
152
55
69
142
126
56
111
106
92
112
92
92
94
99
104
126
92
144
163
127
110
55
110
55
93
110
104
128
126
79
148
138
55
67
91
67
137
67
119
110
86
144
98
110
160
126
126
56
56
110
136
122
111
67
105
94
128
75
138
144
67
127
138
55
37
107
142
146
55
55
146
152
134
123
126
110
83
146
74
178
92
75
105
98
92
77
67
77
109
110
109
144
84
126
109
110
93
55
56
144
122
122
126
131
93
151
92
69
123
163
104
111
105
91
122
92
169
75
126
123
124
123
92
111
97
103
96
152
123
132
110
77
134
91
111
77
120
144
75
77
91
69
126
124
152
77
92
55
79
89
79
110
119
58
146
132
129
126
92
99
127
117
83
105
132
102
125
127
67
103
177
55
74
104
118
89
152
146
138
55
67
146
55
132
97
110
84
146
56
115
126
109
86
126
136
140
55
55
92
134
92
167
180
163
56
93
144
104
144
178
55
171
56
126
126
138
55
92
122
144
91
100
105
97
123
93
58
108
105
128
93
145
178
93
158
92
122
126
67
118
105
105
56
93
83
111
126
67
144
81
58
55
110
93
69
88
92
92
126
83
99
104
58
104
132
92
92
105
139
55
99
178
111
103
138
132
109
138
122
105
129
67
152
101
92
114
168
168
138
131
122
118
81
128
124
58
55
92
79
144
138
86
152
127
141
110
93
138
118
126
152
67
67
106
56
126
144
103
123
123
104
122
92
182
55
102
131
104
92
79
111
139
55
113
101
130
97
135
144
127
148
126
124
56
110
110
97
105
37
138
145
37
56
55
104
88
104
55
110
144
138
67
119
134
110
110
126
122
105
111
37
105
92
100
120
76
124
178
55
92
55
124
126
67
99
126
105
137
55
104
110
127
101
104
101
129
189
56
118
131
178
93
126
126
138
93
120
104
93
146
171
102
141
117
126
138
126
69
153
69
104
178
55
148
56
93
91
135
37
67
117
56
122
109
119
92
136
144
67
126
169
99
147
92
93
122
105
79
86
144
163
110
104
110
127
178
103
104
84
67
139
130
126
109
126
93
131
126
92
128
67
98
75
119
111
110
69
79
69
112
110
91
110
122
144
107
100
131
56
86
104
138
55
92
67
112
113
55
92
138
41
99
105
112
139
86
86
67
55
111
144
138
140
126
55
123
103
96
67
92
178
55
105
84
111
140
55
56
146
134
92
127
56
178
144
126
109
122
101
69
178
107
107
168
149
122
79
105
58
110
110
109
105
148
131
99
105
124
119
114
55
55
103
126
55
130
80
83
139
110
135
165
98
144
152
152
126
139
136
114
126
83
91
126
75
127
178
55
74
92
132
74
163
58
77
109
92
84
107
105
122
122
105
139
105
100
93
138
123
91
55
111
37
119
123
56
69
141
92
152
131
148
93
178
139
110
58
158
55
110
108
152
178
112
58
58
104
105
128
102
56
122
169
122
81
92
148
104
110
165
146
93
67
124
131
127
128
58
135
122
92
55
122
139
105
55
109
128
110
37
104
56
75
55
129
124
55
123
56
152
87
105
99
109
169
134
104
99
128
80
189
109
58
110
117
92
108
144
77
92
126
55
123
55
67
92
126
105
171
91
92
92
144
110
105
99
152
56
105
192
100
110
110
104
127
105
126
105
58
55
103
55
122
93
171
160
86
178
93
79
58
78
152
67
64
138
138
147
122
55
75
192
105
110
92
140
110
160
75
139
110
67
118
108
58
178
139
111
127
160
55
99
162
122
138
122
75
178
95
138
105
122
56
55
105
122
134
99
124
126
146
93
148
96
152
138
138
108
126
126
144
127
55
79
103
109
149
122
122
162
55
75
122
138
139
119
107
58
75
55
110
91
122
125
107
74
126
77
152
124
75
56
131
168
139
139
104
69
152
105
110
37
178
92
37
93
75
67
110
105
93
55
86
67
122
84
67
104
126
169
96
145
92
110
139
69
105
109
92
91
98
93
67
142
129
109
55
126
122
97
127
139
164
113
126
55
122
99
131
152
104
169
130
110
115
148
69
123
132
110
128
92
37
109
123
192
139
152
98
105
122
74
110
37
95
124
86
127
122
132
91
67
182
107
92
55
92
138
180
92
37
92
135
55
37
55
104
126
138
139
126
148
152
110
126
99
67
92
122
139
110
92
107
138
178
123
67
144
93
138
86
139
55
131
169
109
88
75
55
111
92
126
91
69
109
127
122
67
138
92
79
55
103
122
118
144
128
87
84
105
56
88
120
104
55
104
81
117
123
123
93
69
117
122
139
138
100
93
163
178
55
58
37
146
86
74
152
104
178
124
126
122
148
152
58
122
122
118
79
115
105
119
77
55
99
55
122
110
99
111
178
84
93
87
109
149
98
37
86
92
75
127
158
100
93
107
144
92
131
55
77
93
126
144
86
145
89
105
139
93
142
152
139
80
101
138
56
79
124
58
152
111
138
134
86
110
102
126
128
110
68
58
55
139
140
144
127
127
171
92
93
149
139
105
137
86
110
56
138
84
144
126
69
110
110
123
56
104
91
74
102
169
178
163
92
105
58
67
103
118
104
119
67
91
123
144
64
139
151
138
127
139
118
105
126
105
146
56
128
178
110
58
110
146
55
55
84
37
69
94
86
67
123
121
99
126
111
119
101
105
117
98
110
92
128
55
192
111
37
75
169
55
120
146
165
124
122
105
97
56
99
111
55
130
104
56
105
151
86
132
92
138
79
127
55
94
93
104
122
106
83
139
104
69
116
163
122
148
37
92
92
69
68
124
69
122
115
58
74
108
110
105
93
37
135
92
55
56
92
93
56
55
128
79
122
58
75
92
138
139
103
104
148
58
112
104
55
91
56
110
58
167
126
127
132
116
158
109
86
103
140
55
110
86
160
74
154
126
152
178
165
93
122
120
55
122
180
145
119
99
67
94
104
110
92
55
127
127
74
140
118
104
107
105
58
144
56
37
110
92
148
93
93
110
103
127
56
111
113
137
75
145
144
55
112
79
105
110
103
126
98
55
130
104
37
126
152
37
110
56
77
91
130
55
86
130
103
84
146
114
69
110
74
134
158
109
169
99
75
104
105
69
98
69
111
67
98
119
69
86
120
126
79
107
109
134
199
67
119
147
68
95
105
131
58
107
37
139
93
98
128
126
139
105
55
159
89
55
92
110
92
122
131
145
135
93
130
55
92
92
79
83
139
178
169
37
92
104
67
56
122
145
121
92
91
56
144
104
105
102
67
138
119
126
169
171
92
169
55
104
126
178
106
55
139
152
99
55
126
77
74
178
99
171
107
122
128
105
85
162
107
55
122
123
92
131
120
93
104
105
169
104
92
112
102
72
104
104
93
148
122
124
126
101
105
79
103
101
92
110
86
130
122
37
55
74
67
110
111
128
178
88
178
93
89
102
56
136
93
119
56
114
132
92
122
139
93
92
134
108
104
138
152
103
178
122
84
128
113
67
122
56
138
122
79
105
138
178
105
139
98
92
92
111
93
105
92
103
67
119
84
126
91
128
105
92
152
139
112
56
94
148
105
138
92
84
139
93
110
56
97
67
178
93
127
108
125
86
122
105
144
123
127
180
122
121
86
55
107
128
69
144
99
86
55
103
164
153
92
126
56
114
138
151
67
105
91
130
128
107
76
104
114
56
74
58
139
107
127
134
67
126
144
81
127
69
92
91
126
124
92
105
69
128
105
112
55
104
110
127
92
124
92
55
123
74
120
97
115
126
152
119
93
126
132
127
86
92
138
123
102
146
92
110
123
126
144
58
68
75
111
105
139
130
67
93
98
143
178
105
106
55
91
147
122
126
75
58
105
67
67
104
164
58
114
37
169
103
112
55
119
111
83
126
103
130
160
112
123
117
110
152
56
121
110
37
105
171
110
55
122
55
110
37
178
112
89
67
55
111
93
142
58
104
92
37
128
148
138
92
69
93
138
89
178
178
98
102
123
92
58
86
92
55
77
122
138
168
87
145
111
109
88
67
119
69
123
139
92
69
127
124
68
138
110
37
104
58
105
89
92
105
122
55
105
77
105
138
126
92
158
103
178
110
129
125
105
138
128
56
99
178
86
74
55
110
58
108
92
123
55
139
129
99
110
79
105
122
104
110
37
120
120
122
105
123
146
99
79
93
91
178
100
144
102
169
135
88
138
99
117
119
146
37
104
105
120
107
92
122
67
109
126
139
140
117
92
83
110
93
94
84
110
118
101
95
122
122
105
127
75
92
112
104
163
92
131
122
109
79
79
138
91
122
180
180
152
64
123
98
152
119
144
94
139
100
111
104
130
91
92
37
92
134
105
101
111
117
112
199
92
126
138
110
126
84
92
56
126
102
92
86
56
180
69
127
110
147
91
86
58
138
104
86
111
148
79
111
111
126
92
93
111
114
95
146
122
58
110
107
93
80
100
86
110
37
102
126
105
69
105
132
104
67
89
69
152
120
122
69
92
75
110
55
92
178
126
110
37
88
128
92
105
75
55
105
68
126
93
79
110
127
77
104
68
168
178
110
118
97
97
144
110
165
80
92
110
126
69
110
119
114
92
37
92
111
92
105
55
128
146
104
74
99
104
104
158
132
148
134
56
164
106
56
108
89
92
67
69
139
124
75
134
55
102
126
102
130
105
146
124
126
148
92
164
100
126
128
74
110
98
93
98
97
119
114
83
122
101
97
119
146
58
93
140
101
109
58
55
135
79
110
99
92
122
126
93
122
69
92
146
126
148
56
134
110
119
101
92
128
119
104
115
58
110
114
152
56
105
142
178
55
56
178
148
92
75
55
131
56
110
92
109
56
109
92
123
197
143
127
92
152
112
91
140
138
55
56
92
81
124
122
101
117
126
37
138
104
101
105
105
105
126
55
99
122
140
140
110
123
56
107
111
135
126
111
140
122
57
103
79
123
104
110
86
121
92
92
122
58
105
115
146
120
56
138
55
56
110
110
110
55
79
122
126
117
56
134
122
146
163
105
102
168
149
178
92
137
109
37
121
72
56
127
92
92
55
69
92
92
55
91
127
109
99
105
98
93
139
74
75
105
77
67
114
122
37
92
178
105
178
123
119
92
121
55
136
104
110
68
93
128
56
110
92
92
106
145
110
152
79
102
68
146
126
130
122
119
67
122
147
126
130
123
107
92
117
37
97
98
136
104
123
104
92
119
144
69
148
148
55
124
55
110
110
55
56
109
93
138
138
92
105
67
128
124
126
92
55
119
135
56
125
95
110
141
55
77
93
110
117
112
67
139
144
169
168
165
55
140
67
178
67
92
139
100
68
56
111
89
92
111
77
126
91
92
91
136
55
123
144
127
152
91
119
99
92
56
86
112
55
37
124
105
37
77
56
55
55
178
55
139
67
127
69
126
127
83
55
178
128
37
124
126
95
171
55
122
120
165
126
74
92
67
92
105
101
56
139
112
67
55
144
74
92
134
69
123
102
37
123
128
99
55
64
140
122
122
110
93
146
104
152
109
77
169
140
127
112
152
139
55
92
136
109
84
119
74
107
67
109
131
92
120
122
132
127
93
118
105
56
67
178
104
138
130
75
77
56
93
109
96
55
56
101
55
122
122
74
110
128
55
107
122
152
55
148
122
139
103
110
83
128
77
67
110
140
199
122
69
114
104
58
69
69
86
67
37
67
56
105
122
74
78
68
107
99
168
91
110
122
131
92
106
92
144
199
127
92
93
104
138
132
130
75
119
105
101
123
69
119
104
56
67
79
132
149
114
56
105
123
109
56
188
126
103
138
37
138
152
58
67
56
152
135
92
92
109
105
138
37
99
152
158
158
92
104
134
125
109
127
126
93
106
119
97
122
104
128
55
91
56
99
138
162
92
119
67
139
74
126
110
97
144
139
37
122
124
178
110
55
110
126
56
126
104
107
110
67
83
126
136
119
110
93
55
138
94
148
97
93
140
104
122
126
57
164
92
92
126
111
122
79
92
111
122
77
110
130
95
122
105
69
110
104
93
93
56
69
112
127
58
98
78
58
123
138
88
140
122
55
74
92
69
110
56
58
119
109
178
101
134
91
67
115
104
122
126
98
146
92
119
110
55
115
152
55
122
139
152
121
55
104
107
124
110
110
55
134
93
114
102
67
178
134
93
56
144
69
116
128
92
37
126
58
122
122
139
93
55
91
152
160
158
93
92
126
55
107
163
109
104
69
111
110
89
144
110
92
111
180
105
56
102
55
182
67
180
56
79
109
139
104
119
100
109
55
110
97
122
98
122
56
127
137
68
55
163
56
105
55
92
92
146
58
153
126
92
120
55
138
79
67
99
178
55
55
68
127
75
128
74
144
101
141
67
55
58
130
89
110
139
86
111
122
142
79
101
104
122
169
92
119
138
92
69
126
135
67
56
107
128
127
110
105
92
91
178
68
126
136
123
37
114
91
171
92
110
136
126
126
134
138
75
55
104
75
109
74
105
126
105
56
130
119
132
128
93
178
138
69
105
92
67
105
152
178
159
127
37
55
92
120
147
105
110
95
135
67
109
139
119
104
56
122
123
126
126
125
92
109
117
144
123
106
135
110
103
110
111
152
110
126
120
119
92
92
107
169
110
126
128
126
110
92
126
179
107
104
92
118
110
67
107
101
93
79
79
104
113
99
95
127
79
152
110
165
105
100
128
123
111
105
92
107
75
162
181
91
81
122
110
119
164
144
110
119
139
92
120
104
69
111
122
79
125
91
118
160
122
147
119
55
103
118
178
77
55
127
101
107
128
110
55
109
55
127
105
148
122
105
136
55
109
67
56
128
86
138
152
138
86
122
169
92
127
56
67
145
104
168
130
58
104
92
178
103
93
75
122
56
92
122
122
105
91
152
92
171
89
92
152
84
55
37
58
108
56
146
105
92
120
105
105
105
126
103
67
138
74
92
56
138
128
91
126
169
146
126
122
146
96
118
56
69
105
99
152
123
67
128
37
91
55
122
146
93
37
152
118
118
127
67
68
120
105
86
86
127
58
144
105
99
92
92
75
104
128
55
127
92
113
138
86
110
97
156
55
79
55
92
69
109
126
138
169
77
124
58
137
92
123
91
127
128
144
146
105
92
58
79
162
111
79
120
91
86
169
107
167
171
110
67
88
138
67
137
144
138
92
105
146
92
134
171
37
77
105
93
128
139
168
163
99
144
128
109
104
94
169
128
110
79
105
103
144
80
122
117
86
152
104
144
73
127
84
138
120
122
91
141
126
146
98
55
110
126
69
103
86
92
86
92
124
55
110
124
109
105
169
126
158
140
81
104
93
122
86
123
122
110
104
93
126
146
56
105
110
55
146
55
86
138
56
146
67
122
100
122
128
124
55
92
89
55
92
104
105
122
122
108
100
126
118
134
69
41
77
93
77
180
109
67
55
55
138
92
112
119
138
92
67
137
140
93
93
105
93
58
79
105
98
111
110
92
103
107
95
55
178
126
139
100
105
92
95
104
98
76
127
75
58
139
92
135
126
98
104
180
103
55
138
55
58
103
126
74
74
171
56
134
110
124
148
122
93
93
128
110
110
92
127
139
124
56
37
145
55
152
56
55
146
178
37
119
123
92
144
75
93
84
98
89
107
110
55
93
152
92
37
105
37
110
105
79
104
127
37
152
37
127
105
74
74
55
56
132
100
140
110
138
178
127
110
91
55
97
169
98
146
128
105
105
100
101
147
106
77
146
129
111
99
92
109
79
110
69
169
110
123
105
56
105
152
68
128
56
97
104
67
126
37
69
110
111
169
93
74
55
138
160
111
74
123
95
152
127
178
91
55
105
95
79
55
103
134
152
88
92
55
67
140
119
178
138
104
122
178
163
126
138
101
55
98
152
160
178
55
104
138
37
67
55
126
144
126
99
138
107
124
132
95
86
116
122
104
134
126
152
168
78
68
92
163
67
169
131
55
83
69
99
93
148
83
69
148
138
132
104
67
56
110
55
107
126
68
123
56
94
102
138
144
91
119
140
125
75
77
138
147
79
126
171
93
91
108
110
152
119
67
77
98
56
89
130
126
69
128
132
69
67
104
139
91
158
145
103
56
126
127
130
118
93
67
74
103
58
139
92
105
128
56
138
84
56
81
128
139
99
92
91
104
110
92
158
122
108
123
111
78
55
111
55
86
171
79
105
69
37
122
122
113
140
105
124
110
111
103
74
130
105
56
77
127
123
110
55
111
77
58
122
92
55
75
110
126
126
104
103
92
104
139
106
110
115
120
138
107
110
92
124
92
95
110
117
146
77
58
55
169
108
104
75
123
127
127
74
135
118
92
124
107
79
75
126
104
58
139
100
58
126
126
140
127
92
119
55
89
158
58
110
148
68
102
105
122
119
68
56
92
104
138
37
152
127
67
77
139
140
178
110
126
162
105
93
124
56
107
138
107
162
104
55
139
146
178
91
92
110
92
58
110
84
138
122
122
58
105
101
158
103
89
84
94
123
123
92
37
105
99
99
58
144
55
128
97
111
163
122
103
169
83
95
107
105
59
111
97
95
55
69
122
105
111
123
113
55
122
122
69
108
158
122
91
37
127
93
74
122
138
139
171
81
55
93
105
98
144
68
112
128
127
152
55
122
74
123
84
111
55
92
146
99
67
89
92
164
119
114
105
68
37
58
106
144
77
138
108
152
138
138
58
105
103
119
138
37
109
126
122
72
104
110
122
101
55
119
168
103
92
141
56
102
124
169
105
92
104
139
125
145
37
37
92
58
110
169
119
55
93
148
103
88
55
99
56
92
136
169
127
149
125
180
139
104
144
77
122
114
171
144
139
122
126
109
140
110
181
92
164
135
104
130
55
115
104
55
138
126
105
109
150
163
126
107
144
171
69
106
92
106
126
55
93
86
75
69
99
56
111
74
178
109
93
37
86
99
55
93
163
111
92
56
139
92
123
92
89
169
67
75
104
123
110
139
122
144
110
111
110
140
160
124
91
68
77
55
128
106
178
138
92
106
56
94
104
124
110
37
98
109
86
192
68
152
110
126
127
127
79
104
122
110
77
169
128
138
58
127
104
178
119
146
138
122
92
127
110
122
93
37
134
99
105
93
107
128
69
93
165
110
178
119
126
169
152
135
55
155
58
149
158
103
153
123
55
92
89
94
169
55
119
128
122
146
178
127
109
167
107
140
180
138
123
89
122
126
84
124
69
126
37
188
91
119
126
92
122
104
75
79
127
124
139
91
67
100
55
103
130
69
139
127
55
148
105
132
92
69
144
134
79
110
79
110
138
152
126
93
55
91
122
37
109
108
94
86
105
110
67
169
178
58
114
140
126
77
124
84
68
152
92
178
106
92
114
93
144
152
98
69
160
93
146
58
105
122
118
136
145
139
55
164
55
55
111
109
135
67
128
37
55
105
131
126
89
122
93
37
128
131
144
138
105
144
104
55
135
56
122
128
117
78
104
126
97
110
92
144
110
105
138
123
110
122
95
127
146
128
79
128
126
92
55
120
92
111
92
126
92
126
104
154
94
138
92
55
92
138
171
69
138
56
138
104
111
89
124
92
144
107
107
92
92
138
163
106
122
92
114
55
67
145
56
126
55
55
84
67
105
124
79
55
112
115
137
37
110
139
74
110
110
56
139
138
146
105
110
139
110
92
122
130
134
67
138
110
56
99
138
93
58
128
114
55
126
56
110
145
114
98
69
146
138
77
126
126
99
118
110
134
108
139
84
110
117
75
55
93
128
67
56
83
92
105
122
92
171
111
103
100
111
56
37
77
104
128
92
137
105
180
104
139
138
104
92
55
164
146
67
140
75
67
126
110
134
91
162
91
126
91
122
127
139
178
93
104
124
178
104
140
104
92
79
95
127
152
118
58
178
100
56
86
131
92
104
107
135
124
139
126
110
132
105
55
136
92
122
110
134
165
140
124
67
139
122
122
139
122
122
126
92
122
106
56
178
92
138
55
122
104
164
152
127
107
114
116
92
111
136
138
109
104
146
56
103
119
55
144
146
139
128
122
122
138
130
134
86
67
122
126
79
55
37
74
92
140
104
135
126
144
92
124
77
92
105
77
37
128
158
104
130
93
141
126
96
122
55
37
131
144
92
127
122
119
152
58
110
75
122
171
138
100
102
144
67
160
92
141
152
160
37
105
126
100
128
98
55
92
110
137
103
178
95
110
105
86
105
138
55
93
104
131
126
105
126
105
93
168
134
67
67
74
37
58
132
114
144
75
55
111
152
97
93
122
55
105
105
126
108
92
119
178
144
122
131
104
103
55
67
148
93
56
58
59
123
105
91
138
84
122
97
75
104
152
132
92
145
92
139
104
92
105
55
126
124
37
37
180
79
126
93
93
144
67
103
92
67
91
158
105
138
139
92
152
107
92
178
138
112
114
77
126
74
56
92
158
115
55
146
163
110
119
68
37
91
93
138
92
122
123
55
103
84
92
123
78
78
139
122
138
37
89
105
56
99
67
140
123
101
165
128
139
95
105
55
118
97
104
55
86
91
139
122
55
93
37
58
146
93
162
100
106
126
126
110
140
69
37
122
152
68
55
101
123
152
111
108
58
55
148
123
79
122
91
119
86
134
125
92
135
110
104
98
67
148
58
55
122
127
92
55
110
107
56
69
128
126
109
55
127
86
126
117
99
67
139
110
105
56
78
122
119
105
58
124
77
119
119
138
144
140
122
124
138
99
140
67
93
75
138
37
110
55
74
105
75
148
178
79
37
109
180
140
55
144
91
104
84
37
93
92
105
101
93
75
105
91
146
79
178
74
93
140
104
122
129
77
69
77
93
145
122
91
97
105
126
178
144
92
122
152
93
104
55
109
122
104
100
168
139
122
61
144
138
107
112
105
93
94
107
140
75
78
138
92
111
55
126
126
103
126
146
146
126
86
93
104
144
93
89
128
169
104
58
110
55
122
98
58
55
67
148
118
67
99
55
61
105
101
139
123
103
165
104
122
140
86
110
98
104
93
127
92
101
140
105
92
122
56
104
129
127
144
131
128
138
106
104
37
158
93
92
105
84
127
168
55
111
55
158
56
104
92
146
146
139
86
149
139
138
55
95
92
144
110
167
105
79
146
99
107
58
92
120
74
92
138
134
74
138
138
137
93
105
91
99
120
178
122
128
98
55
93
169
110
77
138
134
92
93
109
124
73
136
103
103
144
131
129
169
110
55
104
139
107
110
122
108
110
127
126
122
79
55
122
93
92
105
56
69
105
122
76
92
95
93
127
188
138
123
75
180
147
134
86
58
123
128
122
92
94
97
145
123
119
92
136
92
104
106
58
55
93
67
78
171
87
178
92
110
67
105
92
105
110
132
114
92
99
152
178
124
148
110
120
88
77
92
69
83
67
122
92
67
180
55
37
67
92
144
105
110
55
169
138
138
99
105
122
122
119
106
86
110
75
128
110
83
55
92
55
67
168
127
126
55
139
77
122
56
117
94
55
144
144
146
122
139
100
110
146
167
137
105
107
113
138
127
92
55
93
126
138
112
110
134
73
92
92
112
110
92
169
152
105
91
178
84
110
104
92
67
117
95
138
100
98
199
122
107
136
105
138
92
122
97
104
104
93
100
92
89
107
126
152
113
99
95
97
123
107
134
122
119
105
100
124
140
55
128
139
127
138
138
127
74
55
55
77
93
158
160
146
122
144
92
68
138
78
143
92
144
138
93
55
91
92
110
105
126
105
146
67
67
92
58
136
149
128
136
56
67
67
37
79
123
106
69
56
134
144
79
55
55
74
132
93
67
169
119
162
128
146
138
123
37
105
110
181
134
102
126
148
109
92
93
114
111
138
126
97
101
151
126
105
100
107
55
112
104
79
104
147
105
129
167
55
144
56
139
79
126
104
162
92
138
95
138
93
110
145
110
152
122
130
117
126
182
152
92
108
67
120
146
122
138
128
83
126
93
56
56
122
189
123
129
126
178
138
99
55
151
69
107
83
67
164
167
127
122
67
134
148
93
122
130
122
123
122
37
171
107
144
107
95
146
105
92
94
103
132
93
95
114
127
99
122
122
37
146
92
92
138
140
134
104
55
119
92
138
56
93
56
110
122
56
130
37
56
110
55
83
139
92
139
140
115
92
92
55
37
109
122
110
138
93
138
67
109
96
105
56
79
56
101
106
92
103
92
128
126
127
122
92
125
105
83
77
118
92
105
119
178
92
56
162
99
144
92
110
138
67
105
97
126
140
92
56
93
110
92
92
37
134
128
55
105
128
163
120
93
112
69
103
125
86
110
119
74
104
130
101
132
69
91
134
109
164
77
122
142
119
67
171
105
152
146
91
69
117
110
105
69
93
79
122
75
83
55
138
67
86
105
58
126
105
55
97
144
120
73
105
134
139
138
138
55
37
91
104
55
138
140
132
105
114
83
93
91
152
92
98
139
92
104
76
104
55
103
148
92
138
99
75
92
101
37
144
169
148
56
152
105
122
120
178
138
139
107
119
129
37
55
93
156
67
122
56
127
152
126
138
178
127
158
92
178
107
138
55
109
103
110
125
106
92
74
131
162
139
96
122
58
57
126
138
92
109
92
69
55
101
138
126
74
145
105
92
98
128
67
92
55
93
105
91
127
147
55
134
118
92
122
104
91
75
55
56
138
74
92
138
110
92
79
69
178
144
67
122
127
167
37
67
125
171
83
103
97
110
58
110
89
134
93
88
55
92
89
123
165
105
67
122
93
104
121
124
122
77
147
92
127
169
123
105
126
104
55
139
37
142
139
109
148
77
105
180
56
74
98
103
93
93
138
158
92
128
95
77
105
104
126
131
100
67
107
126
105
178
139
55
141
171
89
135
144
158
92
91
37
91
104
91
178
93
105
92
110
126
160
126
146
103
169
77
127
146
110
122
139
86
140
55
118
126
118
92
124
110
139
86
105
110
144
102
110
132
109
111
92
103
165
162
98
119
107
146
92
55
122
104
180
79
127
56
123
123
126
148
110
92
55
164
112
55
56
138
140
142
126
97
92
126
112
55
122
105
58
104
55
56
91
37
131
104
105
192
104
77
188
93
92
135
127
134
55
169
110
144
69
92
178
84
126
56
127
104
92
146
111
120
78
117
139
92
109
56
37
98
37
37
86
99
105
84
110
86
119
138
105
171
78
75
159
58
92
55
134
92
92
75
125
168
149
127
104
75
148
105
55
126
127
79
99
103
138
67
139
126
105
92
74
99
138
119
169
83
139
79
105
105
126
123
178
144
55
138
122
122
105
138
144
100
77
58
138
91
103
93
68
139
138
111
37
158
108
122
99
126
105
110
119
138
93
126
91
138
74
141
144
122
141
118
81
134
92
122
56
103
55
146
86
86
122
67
109
55
58
130
55
99
178
100
55
169
37
55
136
145
178
163
107
117
86
67
74
92
126
131
138
119
92
148
55
86
95
69
138
58
138
126
95
122
112
92
109
128
79
67
69
117
122
139
68
141
109
77
119
105
109
103
126
148
92
152
55
84
129
132
56
58
138
69
146
37
92
77
67
104
133
138
126
77
142
92
56
145
106
105
76
145
55
55
127
127
138
146
91
104
110
67
115
152
86
92
97
122
126
104
144
139
137
92
91
122
158
127
111
123
126
125
109
97
71
58
107
91
104
138
126
77
112
100
56
163
171
149
75
89
37
67
67
138
119
158
127
37
55
55
146
91
168
55
93
144
146
92
122
127
110
134
122
105
171
108
122
55
118
58
67
97
152
89
129
103
58
55
122
122
37
104
138
103
92
105
110
138
105
99
178
138
101
134
127
105
188
77
138
126
55
110
95
128
105
58
97
106
104
126
105
105
139
139
180
56
138
100
106
104
97
105
136
110
169
105
151
122
140
144
110
132
86
92
139
55
92
178
93
55
104
77
55
126
75
105
192
91
104
114
126
103
92
138
138
84
77
130
93
105
67
122
93
139
96
120
110
79
139
55
93
55
171
56
114
138
146
72
92
86
93
77
124
124
139
152
58
109
93
103
140
146
93
86
132
104
92
37
69
104
110
130
98
110
55
178
188
109
69
178
103
99
105
97
122
142
146
109
138
138
99
93
61
115
128
178
126
105
69
106
121
105
138
92
122
55
105
91
56
127
92
110
130
122
88
67
92
91
146
55
122
144
178
55
127
55
95
67
83
138
37
145
128
110
78
119
105
92
86
145
146
119
93
92
122
92
103
138
136
67
146
83
92
141
93
92
115
105
77
109
77
110
79
92
169
178
92
86
74
104
92
56
139
109
106
119
97
79
91
75
119
37
110
88
146
126
123
55
95
105
123
130
126
110
158
58
104
111
88
150
67
110
92
110
97
126
58
122
169
135
69
103
114
92
138
67
122
128
74
100
81
110
139
67
92
92
152
143
92
37
158
135
118
148
130
115
126
199
100
74
122
37
37
126
122
75
106
105
68
91
112
187
152
74
134
76
103
110
139
55
107
148
107
138
103
122
92
122
162
127
110
110
132
106
104
146
125
75
69
136
91
158
92
37
75
127
123
92
109
56
83
158
55
140
144
138
69
55
119
169
122
55
163
109
139
122
56
99
138
99
158
126
92
146
81
65
37
56
92
55
98
99
128
67
74
110
78
137
91
93
58
109
121
103
110
119
55
134
110
93
160
110
93
95
148
126
93
137
139
97
122
144
55
104
55
105
105
123
55
111
77
74
74
138
101
122
128
104
152
139
110
138
139
105
110
67
127
145
110
97
138
107
142
122
131
80
101
58
105
169
55
86
122
56
79
119
126
122
88
163
55
75
139
105
152
131
139
118
120
56
146
69
132
83
152
148
122
138
81
178
110
163
56
134
158
107
146
110
122
146
91
56
92
122
105
55
75
131
139
146
108
119
107
37
67
138
122
110
169
168
122
110
83
127
101
105
136
123
169
79
58
93
138
126
103
64
37
104
37
127
124
126
138
109
107
55
109
107
169
100
55
126
152
69
105
95
123
110
127
110
163
37
69
92
148
111
103
79
139
104
56
146
126
126
37
110
103
111
123
126
103
111
129
138
100
171
77
132
55
100
91
152
86
128
103
104
122
110
110
127
117
126
122
144
109
105
67
108
77
69
37
37
123
84
140
67
105
126
79
146
107
92
55
122
119
92
104
56
55
79
106
189
149
92
55
111
96
127
58
110
55
92
75
37
110
105
92
103
55
169
127
122
93
111
119
99
105
95
122
58
104
111
152
146
126
113
179
58
169
126
112
107
139
92
104
127
152
134
146
127
123
105
128
92
112
122
126
124
102
122
37
111
124
58
55
105
110
101
144
126
138
122
92
109
144
163
79
56
125
56
97
123
130
107
122
55
122
146
103
117
110
113
199
55
56
132
138
110
92
124
119
75
105
105
92
188
109
95
105
105
104
131
77
112
92
93
79
92
110
58
75
55
131
100
79
158
67
56
105
102
126
119
138
93
144
168
122
110
104
97
131
124
114
110
105
104
68
94
122
136
98
92
111
108
171
91
122
37
67
144
99
141
55
105
126
110
126
105
98
126
102
56
55
105
148
103
92
67
103
79
128
144
67
122
135
55
123
126
92
135
58
126
56
55
83
102
123
127
69
146
104
118
92
91
122
75
105
126
141
37
106
108
145
110
146
146
77
135
122
113
92
158
55
37
119
138
105
139
55
58
122
122
74
80
58
152
79
110
139
138
37
110
91
139
132
126
103
77
55
106
126
138
119
67
168
58
106
92
55
55
111
123
69
138
79
67
105
169
86
126
122
113
91
37
58
122
92
144
138
55
119
110
168
92
55
158
122
89
138
113
128
105
139
182
126
110
104
93
97
144
124
93
138
92
146
110
97
119
79
92
126
109
137
142
134
164
68
56
58
139
69
105
77
138
67
105
95
122
127
169
122
154
67
100
92
122
67
115
67
126
126
119
88
69
104
67
94
127
114
134
138
84
99
122
131
168
119
109
169
107
146
122
102
55
92
138
86
67
119
89
56
93
58
163
93
41
56
149
55
67
83
139
55
138
73
101
149
77
144
86
56
92
67
140
110
169
171
148
106
110
110
55
55
110
98
95
92
104
168
100
128
92
56
145
128
152
55
55
112
92
67
67
92
92
128
169
122
138
122
111
146
110
67
122
122
122
93
121
128
99
146
141
110
74
148
126
123
68
99
119
144
103
99
138
56
112
93
105
110
168
119
91
139
67
105
106
55
55
110
131
126
126
92
93
136
144
92
84
93
92
112
67
128
126
77
101
55
56
156
88
92
109
93
75
132
104
127
92
126
55
140
110
56
86
152
128
79
137
92
126
138
55
97
146
105
126
110
107
168
109
127
104
37
178
67
95
109
86
146
56
119
127
107
55
74
126
178
74
126
111
92
37
104
67
91
89
149
93
192
55
126
122
100
104
109
105
152
171
58
107
56
158
146
122
138
145
109
92
139
126
93
140
122
128
171
108
93
67
134
126
125
98
55
55
178
56
37
111
56
92
169
89
75
148
110
105
92
92
146
164
55
111
127
110
86
91
127
67
56
92
55
125
126
104
104
92
120
92
158
105
104
109
168
110
99
171
69
56
92
126
122
56
67
67
67
178
104
56
104
67
91
122
162
107
178
58
145
110
111
92
110
55
179
110
148
109
37
96
148
91
152
122
144
110
86
126
168
122
158
127
92
138
131
37
92
103
103
79
110
105
79
122
55
92
37
110
100
58
99
69
122
67
146
138
93
91
67
109
92
93
69
110
169
122
69
55
127
67
56
69
105
110
126
138
163
92
75
37
104
110
56
92
55
55
139
110
67
169
107
127
102
58
104
130
138
110
105
123
86
110
92
75
75
158
92
129
123
123
55
69
127
110
101
110
134
55
138
89
56
119
138
178
67
117
124
77
120
122
110
93
138
118
109
119
58
93
148
88
138
83
58
110
58
37
92
144
107
83
126
79
74
104
56
86
86
104
128
122
83
55
105
110
110
37
92
165
67
92
122
110
58
74
152
87
139
92
55
163
122
106
109
180
126
75
77
55
89
132
92
122
105
146
69
124
169
79
139
180
99
56
144
56
144
130
126
77
119
69
118
178
110
107
109
171
178
138
124
92
97
125
122
92
92
144
156
56
104
160
129
86
122
108
84
105
67
128
142
109
55
92
122
144
77
89
64
101
93
104
144
77
79
95
152
114
107
91
93
119
139
55
56
67
56
92
67
105
105
92
92
139
126
138
127
114
109
126
85
79
77
67
167
86
92
67
58
81
69
134
83
74
92
139
103
97
55
56
98
109
95
105
178
55
126
152
111
139
92
98
138
140
103
124
75
79
55
69
99
55
102
118
138
163
138
105
131
122
86
140
132
111
126
69
56
131
108
92
58
177
137
138
67
86
134
126
138
122
109
55
67
92
134
55
84
58
92
122
93
98
105
67
108
55
132
171
92
86
146
58
140
103
64
169
122
55
138
58
134
92
77
103
118
93
55
55
110
75
127
112
37
112
138
67
74
92
105
146
169
117
74
140
75
108
99
122
105
126
58
126
105
69
92
114
92
58
91
91
112
126
110
92
56
93
134
138
77
104
56
55
152
127
111
69
110
137
56
118
67
79
146
110
126
79
104
138
103
86
86
111
73
111
92
68
131
93
92
110
95
126
156
68
69
92
56
134
105
91
110
122
104
178
56
75
152
127
92
152
130
68
92
132
67
178
152
55
92
86
128
139
67
110
110
91
56
74
88
138
132
129
109
93
160
178
55
110
69
146
100
92
110
92
149
106
97
56
37
111
97
56
93
109
69
138
92
55
55
67
73
126
92
138
109
101
157
58
95
111
68
123
122
119
55
168
79
151
126
77
69
92
111
110
107
92
139
122
68
111
37
138
122
105
67
126
114
138
139
110
114
119
55
93
74
112
135
136
132
74
105
134
127
122
84
55
140
139
134
67
124
138
123
122
164
84
171
108
126
122
119
67
126
74
107
111
125
107
122
69
91
130
104
67
123
67
110
55
67
116
105
55
92
111
105
105
146
64
105
158
112
84
55
79
55
152
126
139
122
110
178
169
126
139
92
92
98
117
152
79
69
105
122
93
89
168
152
122
92
128
92
152
55
92
69
144
180
79
122
138
67
171
124
99
139
67
140
55
92
105
134
108
152
139
104
160
55
79
86
139
56
92
139
152
168
126
105
84
100
67
152
145
93
55
127
110
178
134
58
119
104
105
56
169
79
146
97
138
92
111
37
139
109
164
67
89
69
122
148
144
109
141
141
67
55
168
178
92
110
93
136
92
130
122
118
37
55
103
110
124
128
104
69
92
67
84
124
92
103
125
122
140
111
152
122
117
102
92
92
91
105
139
97
55
119
128
107
126
122
105
101
148
138
122
92
122
92
139
127
118
144
67
79
146
110
110
144
93
92
110
112
37
67
56
105
92
99
128
79
92
111
151
138
178
69
92
139
131
126
105
105
178
37
92
122
110
58
89
138
188
152
137
75
134
79
132
105
55
152
67
114
128
110
122
162
67
67
84
126
56
108
122
93
92
92
104
105
123
142
92
109
104
152
110
77
67
104
142
58
117
126
98
56
127
152
92
127
92
126
110
126
124
138
92
55
109
163
171
55
92
67
180
104
130
111
121
144
138
100
112
104
55
68
95
171
120
127
119
171
178
126
126
55
122
126
89
55
79
138
83
145
110
56
140
110
56
126
105
168
67
131
134
92
56
105
56
109
92
86
123
111
105
93
146
55
56
55
105
122
126
92
178
64
55
169
110
195
136
104
67
109
146
104
144
93
132
77
109
58
123
138
139
126
58
122
139
55
92
152
92
123
127
67
169
109
37
56
120
125
146
58
87
92
37
67
92
103
102
119
56
75
67
97
114
129
110
109
126
69
139
92
37
56
148
152
105
110
68
122
55
127
92
78
122
105
105
77
138
148
105
67
136
144
91
102
123
67
122
131
178
178
67
104
86
120
78
55
105
79
148
138
126
138
136
126
169
199
77
178
152
178
99
92
84
122
146
107
88
144
55
126
138
55
91
127
145
104
67
37
130
79
93
104
114
87
123
128
119
92
110
105
144
160
124
123
135
67
55
75
148
132
92
132
56
91
103
55
75
138
103
146
107
144
120
168
84
139
119
110
56
112
110
58
144
105
67
112
79
138
55
126
91
110
105
145
110
118
74
128
55
169
144
178
146
92
110
58
141
92
127
93
171
163
103
122
95
55
37
93
67
58
75
92
92
126
109
124
94
92
126
134
126
92
89
128
127
122
55
160
178
74
91
119
110
104
114
92
103
105
104
141
146
56
121
124
92
83
93
126
178
122
103
152
92
119
122
126
128
92
134
91
93
91
91
77
92
105
75
105
56
86
102
55
114
126
169
74
127
138
168
105
123
171
67
110
55
58
58
55
140
152
122
77
108
67
75
93
148
126
109
117
129
93
110
79
55
114
84
93
92
148
67
58
181
144
111
124
99
93
74
58
123
77
74
37
138
127
104
77
122
83
92
104
163
138
127
107
92
122
86
126
120
104
122
148
105
55
123
37
79
92
93
126
128
92
144
112
92
158
98
120
169
56
148
86
178
126
92
92
67
126
103
75
120
68
92
119
124
138
111
37
92
55
86
100
127
105
178
122
69
118
88
146
92
118
139
128
144
67
56
146
141
134
99
126
91
106
67
92
111
79
58
151
165
124
96
92
122
137
139
110
126
182
128
178
93
77
119
142
138
106
123
37
126
163
93
122
105
169
106
178
138
109
138
134
163
105
110
55
136
178
110
130
111
152
114
58
103
124
144
92
55
105
107
92
107
111
119
117
128
107
127
56
105
169
92
127
169
122
74
110
99
92
93
122
108
56
111
178
105
102
55
123
121
119
77
105
149
74
160
122
110
146
86
55
112
86
92
105
144
122
122
91
101
119
93
131
55
56
97
104
37
126
127
92
86
77
58
102
92
146
160
146
124
138
67
126
114
104
140
138
160
169
100
109
146
37
110
67
122
127
103
154
105
68
138
178
152
55
140
110
146
119
55
84
56
104
67
122
105
114
126
126
80
37
97
114
113
124
105
126
105
86
55
107
122
99
140
55
138
68
104
138
99
103
81
68
58
56
55
56
92
107
100
152
67
58
67
132
92
144
91
74
110
105
37
178
99
134
126
138
125
139
67
86
92
139
67
92
77
122
55
101
138
105
58
67
55
139
69
55
122
83
92
178
74
104
99
55
56
125
86
95
139
92
105
92
79
55
149
139
55
136
126
112
127
75
126
109
37
171
112
122
99
131
92
75
126
135
144
91
123
124
93
91
55
55
126
92
139
122
123
148
140
102
55
86
92
55
107
178
79
163
89
105
135
145
152
138
111
138
109
138
92
92
97
130
138
92
118
122
105
123
92
105
146
147
67
135
55
106
158
164
55
58
109
152
126
111
67
103
128
95
98
104
89
86
55
86
77
55
134
162
126
98
123
180
122
92
158
103
144
127
67
105
105
148
138
93
104
93
69
91
110
126
67
122
162
102
58
126
180
123
122
100
122
136
106
169
162
119
131
127
140
139
114
110
127
110
122
108
138
84
124
131
117
139
105
136
98
83
165
110
126
144
123
136
75
105
138
37
130
93
91
127
114
178
93
86
138
120
182
104
126
93
178
105
58
119
67
93
103
139
110
122
79
144
156
112
119
126
109
92
55
56
93
119
67
111
110
144
138
152
92
93
182
123
122
58
67
122
122
97
152
37
104
109
74
56
123
110
138
105
86
128
128
67
67
110
55
99
99
55
74
110
93
152
86
131
56
121
126
56
110
55
110
138
162
92
127
110
149
105
100
110
107
126
131
107
178
74
95
123
55
138
104
67
92
114
79
109
118
123
123
109
178
122
56
92
128
74
163
127
122
37
68
92
171
152
134
128
99
160
126
55
94
118
140
69
139
104
130
123
105
101
65
107
93
105
138
169
138
86
126
122
128
138
146
131
135
69
178
124
138
109
37
105
37
37
102
138
127
92
93
122
55
138
55
148
178
126
128
67
89
139
132
142
99
75
126
67
99
61
67
130
144
128
139
126
110
104
152
104
119
122
128
92
105
103
110
92
92
134
138
92
91
91
148
138
92
109
93
55
74
105
91
55
111
138
128
83
55
92
67
107
81
61
104
104
110
152
110
121
68
104
122
37
56
56
92
88
85
144
55
114
127
89
93
146
95
92
98
123
148
144
122
86
67
102
67
154
126
55
56
84
102
91
95
136
122
130
91
104
111
79
122
127
77
68
110
105
104
57
109
93
180
97
55
67
67
111
152
67
109
156
136
92
91
91
105
74
58
75
139
99
138
92
97
83
178
124
56
104
95
105
122
80
144
122
169
122
126
144
67
128
75
67
123
132
79
92
128
124
119
140
99
103
84
110
163
109
105
153
117
104
122
139
145
55
101
134
112
123
98
139
139
138
121
152
122
144
144
105
86
138
56
55
119
146
104
123
107
164
102
67
92
131
126
138
55
157
178
97
119
119
67
79
122
109
68
181
144
105
67
132
110
77
148
56
139
148
117
169
68
97
83
127
138
169
55
58
146
126
107
126
58
109
99
67
104
107
152
113
128
55
182
122
137
165
110
114
104
105
67
178
109
75
37
146
149
92
129
127
110
122
55
86
110
126
99
37
111
67
110
37
180
114
67
56
105
122
140
58
124
67
55
99
114
178
55
83
180
139
110
122
138
163
56
92
109
140
140
164
91
105
93
93
130
105
99
67
107
92
138
91
127
92
144
111
110
92
93
178
110
115
67
68
93
130
98
178
86
104
56
105
41
107
126
67
109
86
37
86
107
78
55
67
145
83
119
105
103
93
134
55
55
93
55
110
69
91
93
136
67
110
140
111
145
140
67
75
128
92
112
95
169
91
124
37
122
83
126
134
69
139
56
55
112
79
104
101
122
56
152
127
126
105
148
130
144
55
132
99
88
56
126
127
79
55
105
58
105
89
105
93
92
110
75
130
55
117
92
92
56
93
111
144
178
67
178
169
56
37
122
77
105
126
117
67
110
86
115
92
75
99
110
104
55
55
112
122
118
92
56
58
56
103
122
144
92
69
55
92
110
56
163
114
80
92
37
55
55
138
99
122
138
132
165
137
127
126
127
105
97
110
110
142
56
108
55
99
110
127
104
83
37
93
92
74
92
75
139
122
86
92
122
92
95
107
79
92
110
102
150
136
99
104
147
122
144
139
105
67
140
69
93
127
84
92
73
118
99
37
117
119
169
97
110
93
118
55
110
158
56
84
97
152
110
100
74
152
77
104
117
126
79
169
75
171
108
122
55
169
105
126
138
122
67
158
98
105
37
122
104
92
122
107
55
119
146
122
109
67
109
93
124
84
136
92
110
126
178
146
140
91
95
102
92
127
130
148
109
55
91
142
114
98
178
92
104
92
86
105
105
91
125
104
105
122
92
98
55
122
131
128
92
56
92
110
124
119
152
122
104
138
37
146
84
78
68
86
100
112
86
144
122
105
168
55
77
68
101
92
55
126
122
147
126
56
128
92
105
77
120
98
55
125
91
123
37
79
120
131
182
171
56
139
93
92
138
110
93
126
92
58
67
110
92
99
122
124
55
126
101
134
104
129
146
110
69
126
110
126
55
104
104
104
119
55
122
144
140
86
111
79
97
110
127
92
55
100
111
56
146
134
89
119
127
122
105
158
89
138
138
86
107
71
88
56
83
102
131
152
84
127
77
93
169
122
91
119
122
74
104
79
105
92
178
55
55
114
93
126
127
122
138
126
91
124
122
122
138
122
110
123
74
136
124
55
84
134
55
123
126
105
93
135
37
104
139
105
93
137
106
119
134
139
138
129
75
165
91
97
114
105
122
56
115
122
128
64
125
124
97
110
105
139
145
134
131
122
104
109
122
55
105
122
138
178
130
55
92
74
64
149
58
86
138
123
87
148
120
105
69
107
115
80
67
122
131
110
109
177
122
79
126
122
104
67
139
92
109
178
178
126
104
140
92
128
56
78
115
55
75
110
69
178
124
93
126
149
163
110
97
141
138
107
67
55
92
86
132
138
131
91
146
105
103
111
92
67
102
69
114
92
138
109
127
178
103
105
144
111
105
37
99
104
127
112
161
169
105
139
58
81
124
98
131
77
106
138
146
122
126
163
67
88
55
74
124
131
138
104
104
109
178
122
93
93
122
91
119
91
127
92
91
117
130
138
120
67
79
89
152
117
122
69
126
91
92
168
111
100
171
128
86
120
111
92
94
103
125
73
79
55
67
178
148
104
108
123
105
128
104
128
167
122
144
93
132
138
107
126
126
91
83
119
80
169
91
126
67
55
81
89
88
134
79
110
77
140
138
92
126
55
152
138
139
107
92
79
122
127
83
114
178
149
127
92
58
104
110
138
92
169
122
92
67
103
130
67
102
126
79
138
79
110
125
92
178
114
138
56
55
86
93
110
107
144
139
180
79
92
55
68
126
99
92
67
58
100
140
101
106
109
110
169
67
122
67
126
97
122
92
105
69
69
103
127
55
128
92
148
123
69
146
122
168
93
93
55
120
93
122
67
67
105
122
86
180
37
97
126
146
110
81
110
122
69
91
102
93
55
97
112
55
138
130
94
58
152
86
178
93
87
128
69
102
123
139
92
87
124
92
119
92
117
132
123
158
97
141
92
87
105
105
126
109
105
178
81
130
117
111
105
127
77
83
134
77
105
138
139
75
152
110
122
110
118
74
126
93
111
122
128
111
101
144
120
138
105
37
67
92
67
55
137
84
104
56
77
98
58
124
55
119
92
75
122
111
146
110
99
93
58
108
126
138
138
126
127
58
136
78
93
138
158
84
112
101
126
84
56
110
78
101
117
87
110
122
55
134
93
95
126
119
110
126
97
92
92
55
107
55
55
75
55
75
130
131
105
74
55
86
110
169
105
114
144
127
110
67
89
105
99
138
86
55
97
56
122
144
98
110
100
86
106
113
77
69
56
64
146
144
95
67
134
93
104
67
98
122
144
37
129
105
110
151
93
55
99
146
127
152
74
86
58
92
109
79
75
126
104
92
104
55
55
110
56
146
123
168
37
112
110
114
139
123
122
102
55
93
119
117
93
152
69
109
55
100
138
55
92
144
144
92
138
110
67
138
144
128
76
55
124
58
138
126
105
127
67
169
92
105
109
77
123
145
103
127
69
120
81
104
92
135
58
68
146
117
67
56
69
79
55
93
122
178
100
105
122
93
141
110
79
103
110
86
106
108
92
123
120
168
132
136
110
58
117
141
110
162
109
91
92
95
126
92
56
126
138
104
171
56
138
67
128
55
104
160
122
138
55
56
92
92
110
55
87
127
110
122
169
163
92
83
55
104
138
110
92
56
93
56
69
55
55
119
86
105
91
67
107
92
152
77
58
93
111
122
74
148
67
110
69
144
91
126
103
75
142
93
131
105
136
178
138
75
92
55
92
74
92
92
105
97
91
103
107
104
105
134
131
104
107
122
137
110
135
130
138
119
110
105
127
58
91
110
140
127
78
144
104
104
126
127
56
37
91
126
103
55
140
77
97
55
115
56
77
93
105
110
105
99
105
122
105
130
152
98
55
126
79
75
55
55
109
138
149
122
104
111
67
105
128
148
79
104
102
138
83
92
138
37
69
146
105
127
146
126
55
37
130
92
130
101
37
140
104
67
138
122
106
100
104
168
135
122
91
152
132
169
55
122
81
104
167
37
92
105
126
86
101
93
105
37
160
131
139
105
144
55
162
108
178
139
122
122
122
74
105
105
129
92
127
77
93
126
122
105
56
123
84
144
152
83
69
58
97
83
132
144
92
102
68
139
92
120
55
127
93
104
109
124
122
93
67
93
93
56
104
128
119
67
101
114
136
126
126
127
180
123
83
67
67
129
178
58
80
67
96
144
55
105
137
148
56
56
138
130
93
37
109
105
171
122
77
169
138
139
55
111
103
105
114
91
110
136
169
127
92
139
105
138
91
92
95
126
67
132
92
108
74
120
107
128
55
131
74
74
58
122
55
69
67
55
69
110
56
106
37
178
130
110
68
152
55
128
69
177
74
146
58
138
56
101
110
93
131
115
144
72
146
199
108
88
104
55
109
104
101
134
58
77
163
119
110
168
144
122
105
55
152
140
122
102
100
77
126
86
118
55
146
77
92
144
92
126
134
107
124
109
56
120
55
92
93
67
98
92
58
79
105
122
74
111
89
109
93
111
171
92
93
104
107
101
91
139
58
69
92
55
119
127
92
93
92
178
138
68
56
110
86
92
68
56
75
93
84
146
126
93
123
77
67
122
103
109
158
110
138
168
92
37
149
104
169
122
107
171
169
80
139
86
67
131
138
104
122
69
104
55
119
124
146
86
128
91
137
75
55
144
92
97
131
119
92
164
69
67
178
101
77
126
139
128
105
152
75
105
126
75
55
127
152
105
92
128
102
127
146
105
92
69
130
126
55
104
111
79
74
105
139
37
148
91
92
55
140
69
69
110
134
126
114
91
111
79
122
106
122
93
104
178
88
122
140
122
126
122
80
169
114
107
106
93
103
68
122
110
55
77
139
110
126
92
92
120
84
139
110
122
122
104
178
56
171
152
105
75
144
144
142
55
169
119
99
92
126
92
92
110
114
37
122
81
139
100
178
77
75
56
55
138
163
105
56
123
118
89
74
56
77
138
79
178
137
72
56
93
92
83
107
148
178
126
123
92
91
105
169
146
56
102
109
68
122
139
122
111
112
169
117
93
93
77
92
115
67
55
84
69
79
126
104
77
56
126
110
79
110
112
55
69
110
105
117
67
56
77
121
77
109
130
122
128
107
117
84
79
56
91
123
122
108
92
146
37
122
122
123
92
122
110
37
169
55
67
140
105
37
132
122
145
58
138
86
103
122
107
140
109
55
110
55
128
78
127
68
119
110
92
77
74
93
135
37
150
97
74
138
126
92
93
103
168
102
58
69
178
56
92
134
55
112
122
144
146
141
125
87
55
138
105
110
105
79
83
126
105
92
160
124
127
138
98
110
126
79
93
108
136
119
119
55
91
111
78
128
74
56
138
119
128
135
93
126
79
86
110
55
139
119
67
122
89
78
144
83
77
69
144
92
123
152
118
140
136
84
94
139
86
93
92
69
111
105
158
126
79
97
69
75
128
140
96
126
178
37
135
111
130
171
139
67
104
92
119
105
126
58
95
105
101
67
131
104
112
104
120
74
144
139
61
77
37
92
56
97
104
110
144
104
92
67
94
139
139
168
126
124
169
140
93
79
110
119
127
67
144
109
96
93
178
101
120
37
110
110
75
127
178
67
105
77
92
75
171
124
37
55
92
83
144
56
122
55
89
139
110
104
154
156
100
55
77
109
144
138
98
145
55
91
102
104
92
56
92
110
110
162
110
152
132
152
99
105
122
56
140
105
92
37
119
68
131
122
92
89
146
144
134
98
119
92
142
178
126
55
112
146
145
141
102
84
128
86
37
55
138
84
112
56
37
119
104
69
165
83
56
105
123
102
92
67
92
92
69
111
92
119
55
112
56
76
92
56
56
137
92
86
162
72
77
93
68
122
134
83
104
105
109
131
103
114
79
93
58
55
146
167
127
121
68
126
178
119
110
105
146
140
135
110
105
134
104
128
79
67
58
93
134
69
105
126
123
37
78
178
37
124
178
140
122
67
67
65
55
97
120
37
158
136
93
110
97
138
110
86
124
120
122
118
55
104
139
67
91
56
77
152
69
168
127
138
107
158
83
126
110
110
138
93
99
103
74
75
58
79
128
134
144
137
93
146
111
75
122
56
61
92
56
92
162
75
107
67
105
92
171
134
127
180
92
55
110
180
55
89
67
127
55
130
77
110
58
92
178
110
37
83
122
124
92
132
69
132
177
92
127
111
58
165
83
55
56
55
125
105
111
105
178
55
56
58
139
140
92
102
152
98
37
77
55
101
55
83
129
107
99
146
138
136
93
138
122
122
138
104
86
75
61
88
55
138
110
92
55
159
105
140
92
104
108
122
138
93
146
56
128
37
104
93
37
110
77
144
111
118
134
86
138
91
139
93
92
89
118
92
55
139
99
152
92
99
67
86
110
114
178
92
67
146
178
169
69
110
152
55
127
126
67
137
55
104
105
138
167
79
130
140
56
146
91
37
131
55
75
56
67
55
104
105
89
138
110
69
135
126
180
93
105
67
92
67
104
92
137
91
69
106
92
96
107
126
74
92
109
93
138
122
138
146
168
67
178
149
92
75
138
152
55
128
67
141
126
167
138
67
102
140
100
105
122
69
137
152
92
127
171
55
92
92
89
67
86
124
104
37
93
98
106
67
37
140
56
69
95
167
58
171
109
139
55
109
124
135
134
109
110
152
77
67
55
77
67
105
112
138
127
56
56
58
79
55
104
79
138
110
108
142
107
79
104
92
125
149
86
97
91
67
182
110
140
56
92
69
124
168
105
93
104
55
79
83
139
129
92
56
55
146
118
126
107
178
110
112
92
92
145
55
102
127
86
110
103
87
55
138
109
134
134
95
111
104
108
130
114
134
169
111
37
110
163
128
91
103
56
122
123
138
152
105
142
151
136
126
92
37
72
92
128
112
138
55
77
122
56
91
104
122
119
92
84
137
102
104
92
122
138
92
108
127
169
110
122
134
93
119
55
178
37
105
162
67
67
138
129
122
104
122
131
122
168
55
75
107
131
105
123
104
119
138
104
126
91
103
56
122
178
126
58
92
92
103
124
112
128
79
77
91
140
86
144
146
92
77
110
139
138
93
95
113
128
111
93
110
105
55
138
55
92
67
79
148
69
141
109
92
55
102
178
37
144
105
119
105
163
127
58
99
128
100
123
100
79
152
110
105
110
100
65
105
108
136
178
178
178
132
138
58
56
96
126
135
93
112
119
123
92
110
110
92
91
93
69
131
156
110
140
135
109
146
123
126
122
77
83
127
162
67
93
55
92
138
77
135
110
92
135
104
138
134
58
58
77
55
83
110
67
92
126
115
69
55
105
127
119
105
92
99
112
92
75
56
92
138
37
126
127
109
140
144
110
89
138
91
139
129
124
107
79
163
126
111
107
83
105
146
77
92
101
92
178
93
105
55
138
126
149
139
136
92
105
171
178
55
110
99
68
128
75
67
67
58
92
138
110
107
111
56
56
58
120
92
92
146
92
127
110
67
105
55
67
122
74
126
56
127
165
142
140
75
92
55
122
146
123
124
110
56
55
114
104
56
93
68
199
67
55
122
124
110
122
82
122
55
97
107
138
102
127
37
89
127
178
123
126
67
105
126
122
110
92
178
103
134
93
93
138
105
122
69
127
69
144
104
93
92
55
169
152
115
75
105
119
105
123
114
92
169
103
92
146
131
37
122
105
67
105
104
55
114
93
57
92
87
138
68
93
55
126
92
55
120
123
79
107
127
124
138
103
103
104
139
68
139
167
92
105
126
83
61
148
110
99
55
138
178
89
169
92
119
126
122
68
92
58
108
130
139
110
132
140
145
119
37
83
93
55
106
126
122
117
114
110
68
144
58
124
109
83
168
109
127
152
110
100
104
67
104
127
58
55
80
110
178
135
77
104
178
67
99
105
74
75
130
58
104
110
84
100
146
92
111
178
102
123
86
110
86
110
130
107
126
55
37
67
109
152
126
138
100
120
105
142
118
180
126
178
56
92
126
96
107
126
37
89
111
88
111
110
69
104
107
37
83
123
134
86
121
67
112
123
55
131
114
56
55
37
126
55
55
110
77
74
114
124
92
103
178
178
132
91
107
81
142
171
37
64
122
107
126
119
138
92
56
67
92
122
105
124
110
148
119
124
115
109
171
83
120
58
178
119
122
132
55
126
122
123
126
103
55
100
69
134
109
154
138
105
78
167
101
134
152
128
75
105
92
67
92
68
178
97
92
120
71
56
140
104
92
111
145
92
163
104
107
149
55
132
122
138
105
93
86
146
109
110
152
67
109
171
93
110
127
169
119
123
103
55
111
144
103
69
139
105
110
136
91
122
101
149
93
85
81
92
144
74
147
104
58
111
75
122
37
101
127
110
110
134
134
56
67
119
110
92
138
55
119
92
93
67
77
112
58
120
58
110
126
92
104
126
139
91
105
92
158
127
107
95
105
58
110
97
105
114
118
139
138
107
105
146
146
152
58
117
131
106
55
146
123
105
101
102
124
84
110
145
146
92
144
93
126
55
84
69
37
131
117
124
104
119
105
139
92
103
93
67
69
77
138
132
119
152
104
55
134
83
122
55
112
139
92
126
97
130
114
109
55
105
58
37
126
126
148
122
148
152
111
37
69
110
102
104
108
67
69
138
144
92
92
58
134
83
56
75
117
119
64
112
93
122
75
101
37
55
122
99
55
127
152
112
110
98
122
103
74
122
99
114
95
93
122
93
126
126
125
127
140
144
122
69
92
89
109
139
83
37
152
58
58
165
138
132
178
77
67
128
162
169
122
169
144
163
122
126
144
182
116
104
121
144
152
58
84
122
119
180
98
124
103
105
126
122
67
125
102
119
123
93
93
110
56
100
114
126
111
119
131
106
92
109
178
77
98
144
146
88
152
107
55
100
93
122
169
55
100
104
110
77
126
37
37
88
146
123
93
58
104
93
105
126
58
111
99
131
110
105
126
138
92
105
105
103
126
126
75
58
110
92
105
110
136
128
79
130
139
102
55
114
122
55
69
134
55
92
132
144
109
68
122
104
136
93
92
178
58
126
69
79
88
144
97
127
55
91
55
69
56
105
37
111
130
146
74
138
77
109
58
138
67
138
103
107
88
93
109
107
130
119
134
127
131
93
138
151
80
110
164
148
148
105
37
55
146
139
56
67
137
104
114
158
107
86
158
58
136
123
115
118
86
128
92
67
105
178
152
110
124
114
92
37
129
117
109
111
112
122
107
104
114
69
92
163
77
67
55
111
139
139
126
137
91
91
55
126
122
130
79
81
122
140
95
104
139
152
71
115
122
122
103
130
91
37
126
102
105
99
55
55
138
92
119
105
55
91
92
109
192
77
138
105
67
105
123
77
93
146
97
105
121
55
93
93
123
110
93
111
67
37
126
56
74
126
58
197
139
120
58
55
96
138
67
55
92
103
135
126
138
55
146
122
120
106
110
93
37
122
107
37
120
68
103
103
74
92
67
80
92
126
169
105
144
163
171
92
100
105
138
124
128
69
138
110
92
106
107
152
102
138
102
91
93
122
110
81
126
130
122
98
112
139
106
79
122
92
101
92
104
145
131
122
110
79
74
55
139
55
128
127
108
171
92
160
86
109
128
78
56
78
124
56
92
144
93
109
122
99
122
120
119
109
126
152
79
122
92
67
144
146
138
178
93
55
144
180
127
67
74
126
55
91
122
77
55
37
144
104
126
104
122
122
121
93
139
144
126
122
89
75
146
138
75
122
58
110
111
122
110
140
178
140
146
138
117
109
67
167
55
111
163
140
125
102
126
110
109
67
108
55
138
67
88
91
144
93
55
104
86
109
138
109
109
92
124
110
79
139
99
77
119
86
171
105
147
100
126
92
146
100
105
110
92
69
122
79
139
55
101
122
142
92
144
69
171
110
75
124
142
78
92
122
122
110
58
168
101
144
74
137
138
126
199
74
93
139
122
100
92
119
126
104
114
92
138
67
93
146
92
128
91
105
84
131
180
92
83
140
128
99
111
144
110
92
104
123
102
152
89
91
131
93
152
119
122
86
168
92
56
110
67
83
99
192
122
92
126
92
144
103
178
37
93
55
138
127
92
97
69
106
104
99
58
178
74
117
74
169
92
67
146
104
138
122
105
86
149
105
104
75
130
152
67
126
92
55
92
122
74
105
69
92
79
119
86
111
148
55
92
55
124
107
126
122
139
119
119
139
79
93
92
107
55
67
137
130
137
105
138
129
81
93
119
111
83
74
67
69
165
123
152
126
105
105
56
160
92
139
110
104
146
143
75
55
58
108
79
110
93
146
114
105
125
92
114
105
55
122
146
93
69
105
109
138
126
58
127
92
152
122
110
56
103
92
56
92
105
92
127
67
37
109
69
110
122
67
123
92
91
135
162
134
122
122
55
92
149
99
144
126
109
105
114
92
77
112
146
120
80
37
107
93
146
126
56
124
144
178
127
55
110
56
92
164
138
138
67
91
67
138
103
119
105
144
105
75
98
126
56
107
139
122
146
56
120
92
56
92
58
110
74
55
122
110
111
124
163
122
137
140
68
122
69
118
132
103
69
101
138
55
138
115
146
105
126
111
110
79
152
139
138
122
91
58
107
55
67
148
105
92
120
126
74
56
138
138
132
138
122
139
140
92
103
110
126
131
93
69
89
79
142
126
130
74
123
83
56
108
79
127
128
55
105
92
110
145
75
105
131
124
83
125
110
146
86
171
142
144
127
103
104
135
56
55
139
123
124
124
58
124
92
91
101
144
124
56
77
86
106
168
105
125
37
92
79
126
77
119
93
180
126
112
97
126
128
120
98
123
118
92
139
64
178
55
89
138
101
67
148
144
122
169
98
139
124
119
74
105
55
142
162
92
132
122
92
68
164
110
104
110
92
122
119
110
168
138
92
111
138
109
122
57
93
92
120
67
110
109
138
122
103
124
102
89
122
74
109
138
127
162
103
118
84
138
99
107
93
130
103
130
146
93
122
69
126
111
122
93
120
124
122
69
37
92
138
139
67
92
139
138
92
130
110
91
91
104
156
112
69
119
130
126
158
110
192
127
119
138
132
126
122
101
118
178
126
140
144
55
91
146
139
67
55
87
106
111
127
110
79
138
75
93
138
104
139
67
104
138
128
106
134
138
104
92
105
140
99
86
104
107
110
97
55
111
167
122
105
146
134
55
86
109
92
136
139
137
144
101
141
104
126
93
55
91
144
104
37
58
93
103
72
105
74
139
110
110
74
79
118
101
74
104
112
138
182
123
151
178
138
37
93
152
56
94
132
138
168
104
151
122
92
93
178
37
122
104
108
80
86
67
122
138
67
126
67
163
140
92
144
126
136
139
126
144
119
69
111
104
58
135
142
111
109
138
55
128
152
93
145
68
105
79
127
92
99
138
80
92
83
140
152
55
105
56
105
105
105
110
110
92
110
138
58
97
92
95
119
146
55
136
92
37
93
114
110
139
110
69
55
110
168
150
97
126
93
77
79
93
128
55
148
64
138
130
72
149
138
56
139
92
123
178
93
55
79
146
55
67
91
109
122
127
74
105
79
178
92
91
122
180
139
84
132
93
141
102
122
55
93
69
55
122
58
91
127
101
74
93
86
111
138
55
138
122
138
180
162
83
126
108
99
67
110
138
75
137
122
67
142
163
91
126
146
122
55
93
122
77
101
138
58
126
99
152
67
144
92
120
100
126
55
58
91
75
128
119
67
126
79
74
128
56
69
138
84
126
136
55
92
158
77
92
92
119
107
67
139
140
139
84
69
178
67
93
123
77
100
79
67
92
130
58
86
139
180
92
55
169
92
93
37
139
55
127
86
67
138
37
69
92
79
131
92
111
55
110
119
138
169
99
138
111
117
131
144
104
92
105
94
67
67
37
86
88
56
171
94
126
77
55
79
93
58
67
127
93
146
100
112
119
55
92
138
122
89
137
37
129
144
67
111
79
106
92
124
93
79
95
124
93
92
127
105
111
138
97
105
92
67
110
152
139
127
178
58
152
93
55
84
92
56
122
69
109
122
105
126
148
135
102
110
89
56
65
141
128
135
102
98
56
178
93
86
69
55
75
142
92
83
55
101
102
104
97
127
119
92
122
156
119
58
142
122
163
138
105
138
55
136
55
124
127
128
138
67
93
80
126
178
92
97
92
111
124
37
127
110
109
56
152
92
93
142
93
138
127
140
99
58
77
104
92
86
111
103
91
144
92
97
136
124
105
146
104
58
178
109
69
104
55
122
93
67
67
89
109
127
138
67
107
55
97
146
101
86
85
86
122
139
67
117
92
139
37
152
105
126
123
80
67
67
110
152
79
97
77
72
112
109
122
137
92
67
168
110
56
142
113
137
126
92
110
158
110
88
104
138
158
126
178
138
105
122
134
134
178
79
104
127
131
88
126
119
91
55
97
92
37
100
123
128
37
150
93
69
119
56
119
127
126
93
74
169
126
58
144
107
108
104
92
138
126
152
135
92
104
178
119
126
79
114
105
139
165
92
69
88
124
124
99
55
105
37
131
56
93
37
127
68
126
144
104
126
55
55
103
37
74
55
148
84
110
110
56
163
67
92
115
55
122
89
37
79
180
111
103
56
152
106
119
122
56
77
101
93
67
111
86
138
178
92
86
110
74
123
136
122
124
105
117
56
100
67
74
131
37
74
37
92
80
152
55
77
86
152
130
126
92
105
127
138
199
124
83
152
107
119
55
112
122
37
146
113
130
110
138
134
146
86
146
140
134
67
77
97
92
122
99
127
93
56
146
74
123
139
126
105
145
67
92
110
122
109
91
152
111
99
105
105
139
178
77
77
148
77
92
126
91
104
56
144
180
127
56
108
92
92
138
109
123
122
110
110
67
122
163
105
114
160
79
99
110
74
122
152
112
128
110
138
128
110
152
128
105
104
126
124
114
117
106
92
122
92
122
119
67
126
140
137
37
86
104
126
144
127
104
97
97
56
92
139
138
134
138
104
110
138
37
109
107
37
127
77
165
91
117
182
93
109
56
123
146
100
130
58
117
122
37
110
145
144
138
107
180
105
37
75
104
111
67
67
69
140
92
55
78
97
67
110
74
55
146
58
148
104
92
138
124
130
106
113
67
86
92
86
105
69
118
104
92
37
74
92
79
134
162
112
97
92
98
104
104
67
75
56
55
55
110
165
110
139
104
58
80
104
119
169
110
92
98
105
122
77
134
104
158
138
101
122
122
92
67
109
104
123
79
134
110
107
75
55
108
117
110
110
93
92
92
110
83
79
99
131
120
97
126
86
122
107
146
178
111
74
55
144
127
76
67
151
110
126
91
107
95
37
165
98
178
146
138
92
119
119
146
169
105
92
178
122
67
105
92
123
131
110
127
135
37
83
122
55
92
92
91
92
79
138
130
105
67
77
74
92
138
123
123
93
126
55
130
55
142
188
55
131
86
111
124
122
84
127
112
139
140
89
138
56
127
68
107
92
169
109
93
96
103
120
139
110
105
58
164
93
140
127
105
139
106
123
158
130
118
178
110
67
55
139
126
131
74
37
83
107
55
86
86
74
104
124
93
67
86
123
37
110
144
165
152
126
100
152
169
138
131
94
169
55
127
105
92
92
171
37
138
126
75
110
92
93
56
127
77
119
178
138
124
106
128
37
158
134
56
171
75
142
128
122
123
150
180
67
146
67
152
146
146
101
97
126
91
77
126
127
55
171
146
79
118
138
122
178
91
182
92
37
134
93
106
178
67
138
169
56
105
128
120
144
127
108
130
105
92
164
138
55
178
96
188
68
131
55
74
128
98
160
103
122
120
92
103
124
138
140
56
105
140
110
107
55
138
160
99
55
167
68
92
67
67
146
67
146
97
104
129
122
134
130
144
139
75
105
105
91
83
128
74
123
55
92
58
178
56
122
128
110
163
93
122
138
110
164
104
58
146
102
135
76
142
124
105
58
122
110
146
83
101
171
127
126
129
88
55
146
75
162
147
107
55
110
110
55
178
140
79
67
104
139
110
122
84
105
55
122
93
127
78
92
101
122
55
56
105
127
67
104
105
126
132
138
64
149
178
107
109
95
134
91
122
114
146
91
138
114
92
139
122
111
92
93
93
86
136
178
107
109
92
146
136
77
127
92
146
126
139
77
106
105
169
128
92
92
138
105
160
91
92
178
105
139
148
130
138
114
55
105
127
134
122
91
74
104
94
169
56
139
134
101
118
67
92
148
131
118
104
139
37
126
37
110
91
149
104
92
37
123
110
67
106
104
67
122
55
67
69
122
130
105
128
92
128
37
138
110
37
92
129
67
67
130
132
58
92
77
139
37
58
114
93
138
138
87
104
119
146
127
102
75
139
123
56
110
105
92
123
110
102
105
92
92
83
127
128
139
88
138
126
92
146
138
55
93
93
178
126
110
126
92
111
126
95
132
105
138
130
104
110
92
126
126
79
67
122
76
88
110
81
67
92
105
56
126
67
55
114
113
110
58
105
122
117
126
139
122
99
55
119
93
84
136
89
81
92
55
130
144
119
67
119
92
105
130
110
144
124
79
148
105
76
56
112
97
58
78
148
127
136
138
126
92
58
67
122
123
104
142
104
74
139
144
92
140
91
92
134
126
110
144
132
127
128
37
93
91
139
91
107
104
58
119
92
146
105
178
169
122
139
92
158
92
110
92
122
114
92
119
75
111
110
91
128
164
169
112
56
92
98
67
105
126
126
74
55
75
92
92
56
104
119
178
114
92
105
103
100
163
37
101
120
91
106
86
126
56
67
110
103
91
128
93
104
37
129
144
138
105
127
86
104
55
127
171
123
101
69
122
111
58
116
142
67
122
97
92
134
121
110
146
105
105
56
121
69
123
105
74
119
74
55
124
138
111
67
105
126
127
119
74
37
144
55
86
37
92
55
126
75
139
80
122
69
37
119
146
110
55
140
137
97
132
93
115
110
106
117
152
126
67
105
93
55
123
92
122
79
144
122
126
122
58
123
75
117
122
110
126
93
111
110
139
86
86
122
152
130
86
118
122
146
67
119
69
148
122
199
146
105
83
169
91
99
145
120
69
158
105
126
68
74
146
104
136
139
120
110
150
122
102
92
152
55
158
148
55
93
89
93
144
103
125
99
111
169
56
55
146
128
97
122
67
131
92
129
138
122
139
127
122
69
117
55
123
104
168
132
84
127
67
131
92
122
119
178
178
122
92
37
105
92
126
88
182
110
132
107
118
126
123
100
110
69
92
77
55
168
126
56
139
56
92
79
140
164
92
146
169
91
92
55
124
138
92
168
74
105
110
127
138
86
178
111
122
144
55
138
111
103
138
84
94
83
92
75
86
92
126
77
168
146
84
168
93
55
111
69
105
126
92
104
110
110
178
110
98
126
147
119
110
121
148
126
58
124
105
105
110
122
167
111
122
69
127
110
127
122
106
178
123
119
37
93
105
93
117
88
81
56
114
126
138
106
91
126
93
92
74
111
131
72
99
77
58
126
37
128
128
75
110
122
74
104
55
91
92
110
126
123
126
110
106
111
165
110
79
91
58
56
105
75
110
178
127
106
138
122
110
75
92
152
106
110
112
117
126
96
105
74
77
74
55
79
68
146
92
56
67
92
110
164
126
37
86
68
115
109
105
189
92
139
126
126
56
37
56
80
89
123
56
92
122
101
134
140
86
75
93
134
67
86
178
55
78
37
138
119
144
144
128
146
55
104
127
107
127
110
123
178
92
58
78
122
122
178
107
134
84
128
138
178
69
56
180
109
110
78
127
99
92
56
138
98
113
95
129
55
92
88
110
99
158
128
115
122
178
110
122
122
140
139
92
127
93
152
103
110
105
104
123
123
84
138
92
110
145
152
104
92
110
126
103
169
134
122
114
178
56
128
105
109
141
105
81
146
122
126
144
119
169
97
160
110
55
55
158
86
146
132
152
110
67
180
56
149
55
152
55
56
142
120
152
122
168
55
75
152
138
93
104
86
92
138
67
92
154
58
161
178
37
103
83
69
131
138
122
138
169
128
55
142
139
56
77
127
104
110
141
67
107
55
123
128
128
105
69
92
148
75
93
138
106
111
111
55
105
105
86
120
67
99
56
104
69
110
105
144
37
138
56
86
92
104
55
139
110
101
119
145
106
99
114
171
92
57
67
117
126
55
119
91
104
69
116
122
92
109
86
81
110
123
55
99
91
114
67
92
122
92
152
123
37
126
140
105
135
86
178
58
91
104
152
58
122
171
74
134
140
121
99
72
67
130
139
74
178
139
55
92
122
134
126
122
139
93
124
126
92
69
199
122
55
61
67
110
105
111
178
86
109
102
168
92
105
100
138
122
69
69
126
163
145
152
55
131
140
131
134
109
138
122
105
138
105
92
56
98
56
110
119
37
112
58
79
55
138
74
124
126
140
110
134
55
109
123
127
121
105
146
110
122
126
100
37
136
67
91
126
92
127
104
126
128
83
66
122
134
144
122
69
92
110
110
105
162
93
92
136
126
110
93
110
67
178
130
123
127
134
148
159
199
146
171
139
79
107
69
37
132
69
111
92
37
79
84
146
109
84
75
130
92
139
86
105
104
144
126
138
93
105
128
124
126
138
79
138
163
56
122
91
56
127
124
74
146
73
122
162
138
178
110
139
128
37
139
152
156
178
146
142
110
56
122
55
126
111
105
67
110
103
55
107
122
101
93
128
126
68
58
178
178
55
68
142
77
138
102
110
56
122
86
152
105
108
104
169
168
92
74
126
169
119
98
37
130
188
92
104
106
138
67
56
107
107
126
126
149
114
72
146
123
92
122
126
138
93
144
107
146
92
103
110
178
138
91
69
139
130
92
122
121
105
111
67
79
178
140
74
142
79
89
107
89
56
119
150
111
93
134
138
138
162
127
92
55
110
104
122
69
126
139
105
144
145
179
152
83
93
110
126
127
110
110
79
146
136
124
67
119
169
126
111
83
112
109
110
105
104
56
92
139
104
146
110
139
79
164
105
163
119
92
87
118
103
134
126
127
128
122
75
105
92
91
178
169
104
86
79
56
128
58
103
117
138
105
131
139
91
98
110
110
114
92
122
148
81
75
146
104
122
58
178
91
144
55
169
126
156
91
105
92
144
105
144
127
147
111
132
110
144
124
105
111
56
111
152
178
104
96
67
55
126
114
123
114
102
74
178
188
144
112
79
69
102
56
88
121
92
123
55
138
67
135
105
122
138
112
119
134
107
69
55
92
55
119
152
55
92
83
127
126
118
89
128
105
107
74
114
139
37
111
93
119
107
95
69
99
144
112
145
56
152
122
149
109
79
37
55
92
144
55
55
61
110
149
55
56
109
101
80
67
131
146
117
135
55
136
101
55
123
110
165
55
79
64
105
122
55
58
126
92
151
92
122
139
68
78
159
37
104
113
107
92
152
67
158
79
178
79
178
105
124
110
131
55
102
110
93
55
128
105
55
146
93
122
81
156
99
138
136
123
178
92
110
127
37
134
148
56
120
105
83
126
92
41
127
75
58
75
77
111
138
106
67
148
129
127
56
58
109
130
73
138
67
105
138
99
55
69
117
168
138
126
55
104
181
109
122
132
144
111
100
119
55
86
138
92
126
93
144
93
139
120
92
169
119
92
67
139
97
107
106
114
126
55
138
96
92
92
55
169
56
92
197
109
93
134
110
106
127
138
134
55
123
110
104
115
105
104
93
88
109
109
122
162
58
91
112
69
144
69
122
132
122
37
92
188
58
55
92
98
105
55
89
124
128
104
146
122
119
97
102
117
144
93
58
139
67
142
105
169
105
123
74
105
88
122
118
119
55
67
139
78
56
55
124
169
105
104
119
58
105
122
144
56
119
55
138
105
108
132
68
123
103
56
74
55
146
126
110
67
126
162
98
94
126
110
77
138
127
98
79
171
92
55
103
56
123
55
146
55
72
138
55
56
83
37
92
105
91
138
37
146
119
122
178
147
99
122
92
139
126
99
144
91
104
74
92
67
130
144
111
122
92
104
138
108
84
127
56
104
163
112
119
140
92
104
105
131
135
110
99
94
127
92
152
96
79
107
55
110
56
122
92
67
178
77
67
55
69
87
92
99
124
55
92
93
110
126
146
74
104
112
92
101
119
111
137
152
92
126
138
67
77
69
146
132
107
109
112
119
110
55
169
55
123
92
111
88
152
177
111
139
37
169
122
64
178
93
93
67
139
139
92
164
119
135
109
111
79
115
37
122
122
55
99
126
122
67
80
132
75
93
86
93
93
156
92
105
92
105
37
127
115
83
105
137
79
56
110
119
56
92
69
119
55
126
109
67
75
56
158
139
93
178
93
152
100
92
105
58
127
126
104
111
107
131
165
67
114
79
55
142
134
122
58
55
93
75
140
105
55
79
84
132
146
104
127
163
105
86
126
56
135
138
98
146
93
55
141
105
152
152
91
110
138
92
92
128
148
37
144
92
110
127
124
75
83
110
156
69
101
58
104
102
92
67
120
109
144
138
128
111
180
127
178
120
79
113
110
75
75
92
55
118
92
180
99
169
86
177
147
105
91
58
37
86
37
146
56
144
144
115
148
112
138
105
67
37
130
92
178
55
100
109
120
126
55
134
56
138
69
148
110
152
144
89
103
67
146
92
109
56
178
55
68
145
55
92
105
171
122
68
138
67
128
67
128
124
105
127
94
67
37
122
79
146
92
92
56
80
74
69
119
123
55
148
146
99
152
126
79
67
146
104
136
110
144
105
140
93
92
93
138
139
104
144
55
112
138
89
56
100
67
92
128
92
137
145
95
99
138
110
138
92
126
69
123
139
55
118
132
122
104
143
123
122
55
107
180
67
107
110
149
37
126
124
168
92
98
110
67
139
85
67
122
107
168
56
104
122
55
122
67
148
110
122
139
126
169
105
171
169
118
128
100
58
104
123
104
114
55
69
84
68
105
37
152
37
132
67
79
119
67
135
92
67
97
58
145
103
98
171
137
67
61
126
91
122
132
56
126
126
55
126
79
144
124
105
77
145
152
97
77
134
79
122
108
112
105
130
99
122
130
58
131
178
55
80
115
95
93
101
119
99
126
132
140
117
92
128
107
128
110
126
167
122
77
92
120
124
75
178
92
180
58
152
122
146
37
123
75
139
140
104
122
138
110
199
56
67
67
56
67
104
92
138
171
119
79
107
136
126
93
110
68
67
105
178
58
131
117
163
137
141
99
92
120
111
127
152
100
92
98
109
163
122
138
106
100
118
67
138
109
169
126
111
92
67
139
122
138
126
105
105
169
146
105
104
110
126
119
169
84
110
83
105
138
126
55
107
74
110
95
86
141
92
56
148
97
88
126
135
169
91
105
92
55
69
74
37
97
128
140
107
103
138
92
77
126
67
55
188
58
126
110
138
92
86
138
104
55
56
87
99
178
92
139
74
145
67
156
91
131
168
110
37
98
92
86
105
93
130
127
67
136
152
58
105
124
136
92
104
128
139
162
58
83
68
86
105
55
58
122
69
126
95
56
86
110
178
138
93
122
122
101
56
178
86
122
67
95
93
139
123
69
126
107
55
123
93
68
122
103
37
158
114
138
178
131
160
37
83
138
152
69
122
118
37
92
110
92
105
134
100
169
158
69
93
126
55
69
134
138
169
111
128
101
55
92
69
77
92
112
93
108
152
55
95
126
134
92
93
139
122
171
144
55
104
139
107
67
138
160
96
181
83
138
110
105
67
58
55
93
105
152
128
110
126
110
92
167
67
110
75
75
122
83
105
126
110
92
126
112
105
167
144
126
119
139
139
111
74
144
122
98
79
55
74
110
163
74
120
128
168
122
78
139
97
115
138
144
93
139
103
58
79
127
74
135
79
68
110
149
158
101
89
104
75
138
92
148
92
104
55
92
67
92
56
75
139
55
136
104
126
74
104
108
99
144
134
171
127
146
55
99
169
37
126
97
55
118
144
92
168
79
122
119
140
180
79
37
178
93
138
97
134
37
123
144
118
152
55
58
104
74
114
99
136
165
105
56
104
126
93
74
126
109
93
122
146
119
104
125
136
127
91
69
69
178
168
101
55
55
137
91
58
105
144
110
114
55
138
122
98
97
153
148
110
138
77
110
179
56
163
139
92
126
152
122
92
128
74
168
105
56
110
109
72
126
101
156
144
56
180
126
104
139
119
99
93
123
105
67
110
126
103
83
104
178
99
131
105
177
122
126
93
127
123
110
118
171
113
127
58
74
153
122
110
81
126
103
126
105
140
58
55
97
105
138
110
117
126
55
100
67
152
55
122
67
120
148
69
109
67
122
90
146
107
104
178
92
92
128
105
122
105
56
55
146
110
93
104
98
55
55
67
92
93
112
121
112
92
92
128
139
99
55
144
92
152
128
140
145
138
147
139
37
119
127
138
127
131
192
127
79
169
55
55
91
56
106
178
109
104
58
58
168
92
77
126
110
68
67
37
106
105
126
80
146
75
69
105
79
138
69
160
127
144
55
105
89
58
169
122
122
145
103
58
136
110
162
152
178
109
119
122
103
99
91
105
135
87
84
165
84
56
92
120
92
104
55
84
119
91
106
126
126
67
138
86
91
58
93
140
122
67
55
37
127
93
144
92
55
127
105
138
55
107
56
92
136
93
74
134
140
69
68
123
55
104
56
105
139
103
110
146
126
56
103
112
67
71
97
152
93
110
96
93
111
91
139
76
110
111
92
139
84
122
77
74
122
78
91
74
97
67
122
110
91
55
112
92
58
69
111
150
56
67
68
79
37
56
68
55
104
104
86
126
91
37
83
55
152
104
110
69
104
135
162
126
139
139
58
55
99
169
119
110
92
144
68
139
93
138
93
138
110
56
92
86
140
102
79
138
37
126
128
77
168
131
169
114
127
126
95
55
126
144
109
107
103
144
140
122
140
69
56
128
122
127
122
105
86
105
97
169
79
122
158
122
101
122
79
119
58
139
122
180
169
112
110
93
129
56
162
138
67
55
56
67
58
164
118
136
124
128
37
171
92
92
67
55
180
93
37
93
67
104
67
124
105
93
127
93
92
112
131
136
171
83
89
92
105
114
119
105
37
139
91
140
93
136
123
180
91
75
122
55
111
69
121
137
110
138
67
58
92
119
127
92
139
123
55
86
77
152
122
58
146
138
119
126
144
146
92
147
119
117
131
110
92
92
120
139
134
146
86
122
92
69
120
144
105
92
77
126
55
158
138
123
86
178
138
126
127
130
178
136
110
109
93
105
92
124
67
104
122
37
92
75
107
110
75
109
109
102
110
117
77
105
168
128
146
104
105
110
146
110
127
55
139
69
112
118
83
169
89
92
126
139
126
122
119
93
178
67
122
178
110
68
144
95
144
129
83
74
55
94
67
104
148
91
138
92
104
138
122
86
139
37
116
134
146
111
79
105
106
134
68
95
105
99
97
117
58
110
55
79
122
110
152
93
111
125
105
110
83
168
56
92
127
108
126
55
92
162
148
93
55
56
55
123
132
105
158
75
74
138
37
104
92
126
128
58
103
106
109
93
138
138
79
104
91
119
56
108
37
127
79
126
111
104
93
100
146
122
127
99
160
93
92
37
92
138
56
168
111
92
86
55
93
105
128
37
91
104
55
55
107
37
152
110
86
125
138
167
80
104
122
162
37
86
109
124
115
134
79
123
93
105
55
112
138
134
113
126
91
37
138
109
123
92
55
110
139
110
37
111
56
93
138
67
92
86
131
128
58
138
92
130
92
105
55
92
86
163
37
110
56
110
178
86
144
122
92
126
92
140
101
55
92
110
123
126
102
110
94
102
55
123
107
67
138
140
164
83
104
126
120
112
126
84
75
138
178
55
93
159
110
67
107
92
139
113
134
69
77
93
37
37
98
162
84
104
144
128
55
92
102
169
98
131
91
106
146
124
112
127
121
111
99
138
178
79
146
75
103
106
91
56
107
58
146
126
119
110
93
105
111
132
162
92
140
134
69
93
135
105
67
146
169
88
92
83
124
92
128
117
67
119
126
110
110
138
37
55
140
148
122
122
93
69
99
164
99
103
148
110
74
87
110
119
122
91
113
56
92
110
103
93
100
125
126
127
67
138
107
100
37
178
69
67
92
69
78
108
112
61
111
77
99
110
118
56
126
67
122
178
56
178
122
146
123
139
126
89
58
92
77
110
124
126
92
140
55
103
180
119
77
107
99
134
126
123
123
110
136
110
92
95
139
109
110
145
99
56
110
112
127
148
169
156
134
144
58
69
55
104
113
88
99
133
139
97
99
118
109
55
111
109
122
55
93
105
160
110
123
105
113
119
169
86
109
164
126
163
106
117
91
146
126
128
138
171
178
126
55
97
138
122
126
126
158
93
91
37
55
89
105
56
75
123
94
108
84
137
144
67
122
105
139
131
139
37
110
134
110
56
58
37
55
108
138
78
77
125
130
141
105
56
178
103
140
149
123
144
123
67
77
178
81
109
128
86
126
69
100
55
110
112
92
138
169
138
77
110
93
69
104
55
79
111
87
67
122
122
109
126
182
163
105
134
93
131
122
86
99
105
101
138
105
145
110
128
139
158
148
139
75
199
104
134
126
93
111
109
110
55
158
144
178
122
74
139
104
56
37
55
109
126
138
97
109
68
125
93
92
178
37
69
69
134
142
104
123
74
58
132
146
105
112
110
97
169
55
99
93
99
85
58
74
110
122
67
98
91
132
178
124
128
93
160
124
162
128
104
169
79
55
92
92
93
58
104
178
178
126
103
139
126
56
91
92
124
153
152
79
75
169
92
81
85
92
67
91
107
122
84
75
145
148
163
58
112
93
67
120
122
127
91
134
69
154
146
144
119
110
134
79
119
55
146
100
145
168
93
124
122
55
92
37
127
109
55
55
55
73
91
126
109
140
111
99
135
55
125
92
106
74
105
67
144
55
99
67
148
55
105
123
107
165
69
140
127
131
93
123
55
168
119
55
86
138
123
112
110
119
119
99
123
122
139
103
92
93
69
128
55
55
68
110
93
126
103
86
89
138
91
68
100
144
130
69
130
156
122
171
103
67
138
91
92
104
152
152
122
67
140
92
130
139
86
171
67
55
141
77
104
102
58
55
144
122
152
100
138
55
79
126
92
78
93
126
130
67
68
92
105
55
56
92
111
150
110
55
178
58
56
37
37
104
110
152
67
140
122
97
80
56
37
105
126
92
112
102
100
105
55
122
108
93
111
105
126
79
123
111
55
134
178
86
105
109
91
77
111
126
37
146
131
139
83
119
134
58
146
69
118
92
128
103
139
122
178
92
110
55
92
171
92
125
92
93
138
67
84
107
121
110
55
114
114
152
37
169
58
56
120
92
92
107
178
126
92
124
132
92
111
79
104
67
92
127
92
167
169
86
55
138
139
134
55
168
89
86
158
178
110
105
134
140
105
79
58
144
139
152
110
107
79
93
112
167
56
37
92
99
111
105
143
55
109
126
142
126
105
37
119
92
69
83
79
111
146
109
134
97
115
138
139
83
128
158
107
105
93
132
56
77
124
124
143
135
120
67
122
58
152
130
86
92
104
86
135
79
138
139
126
83
179
107
139
74
105
122
127
107
111
105
102
55
92
110
138
178
145
58
92
91
91
137
96
56
138
110
93
84
56
93
138
104
99
178
93
101
127
124
92
126
138
105
123
139
105
92
119
110
55
146
79
123
74
110
92
114
152
79
86
84
92
92
126
128
132
178
110
171
104
139
148
55
58
110
104
110
105
79
105
131
109
93
81
55
146
122
144
127
69
67
139
58
95
55
132
37
55
152
168
178
110
117
105
105
67
130
114
105
130
180
55
103
110
91
160
132
144
69
55
93
55
169
109
37
93
122
168
111
91
144
110
67
37
92
148
86
144
144
95
112
92
118
146
55
111
105
55
148
137
86
92
127
127
144
95
92
138
55
55
152
122
109
56
69
86
139
178
144
138
81
129
68
118
109
169
126
67
169
109
126
144
146
111
79
37
144
152
165
122
105
91
103
92
58
92
144
37
128
79
56
91
138
77
56
178
106
130
74
55
68
160
96
67
110
119
83
126
152
119
97
103
37
178
58
67
178
122
79
55
122
92
99
56
178
56
118
146
112
119
114
110
167
103
146
126
93
55
86
145
128
126
110
75
139
109
122
132
93
109
75
141
119
105
58
137
122
93
134
92
138
110
122
56
37
123
130
109
107
104
138
122
55
67
137
112
108
145
178
123
128
55
92
144
67
126
139
92
147
168
152
75
122
101
37
112
104
92
110
124
79
110
37
99
86
123
105
131
55
138
92
105
110
152
105
127
152
58
138
111
138
67
130
92
91
83
164
64
171
150
168
58
125
138
58
67
55
109
127
58
119
55
105
75
111
92
97
105
55
67
152
93
69
107
93
122
162
120
126
140
56
110
103
102
86
144
92
55
58
92
127
67
102
178
160
137
91
92
55
178
92
75
93
126
92
56
111
91
118
123
103
98
144
122
134
68
123
56
131
117
37
55
148
110
122
92
111
142
55
104
55
144
79
69
91
138
124
119
118
138
119
139
79
89
99
37
126
152
69
110
109
37
126
144
117
95
112
77
110
118
67
55
55
102
110
55
110
144
105
105
79
92
122
110
152
56
89
178
118
58
99
105
168
104
92
181
58
92
130
122
97
124
169
55
55
107
122
56
93
132
81
119
146
105
69
122
55
55
89
105
93
79
104
92
127
55
55
178
92
92
123
128
100
131
138
169
110
89
88
104
92
114
130
134
122
122
146
122
55
122
110
79
110
126
132
58
123
122
91
132
140
110
88
102
55
144
55
122
169
146
79
124
95
110
110
55
68
77
98
77
134
58
139
144
37
92
144
144
128
105
105
103
126
132
91
139
77
105
69
55
126
147
139
89
58
110
75
106
139
122
55
92
92
126
122
107
103
91
163
56
123
118
120
67
117
111
104
152
162
132
152
110
110
55
129
138
119
125
126
74
75
138
37
74
123
134
104
37
105
110
103
56
122
110
92
147
69
122
178
91
93
130
92
92
92
81
139
134
124
67
120
144
102
92
109
56
92
119
79
111
37
126
122
123
91
75
104
92
92
115
138
132
67
83
107
98
78
55
138
107
75
55
92
57
122
138
92
124
127
122
119
139
120
122
138
92
77
130
110
122
140
127
149
111
123
92
123
126
91
127
69
104
106
103
55
180
69
55
146
105
138
122
105
103
56
105
116
126
126
110
139
103
146
105
98
110
110
91
75
92
55
107
104
97
144
178
122
105
56
92
105
111
64
122
119
124
105
110
79
138
109
119
110
93
169
99
126
55
122
111
105
139
114
83
104
92
58
122
67
126
126
55
163
84
111
110
152
67
109
104
127
91
102
146
134
74
91
192
86
126
171
114
55
92
102
89
105
64
84
56
126
92
131
58
67
127
112
37
107
55
87
139
58
122
75
122
106
122
126
74
37
92
86
91
127
111
178
92
93
126
69
119
144
122
122
100
99
92
126
99
103
37
56
77
74
188
110
128
178
55
138
110
126
139
93
118
121
136
67
144
162
56
93
37
106
107
83
105
105
98
118
55
169
104
148
126
92
103
104
139
156
92
86
157
121
84
55
107
74
134
92
77
67
86
107
126
134
144
112
55
103
55
140
127
99
104
69
125
92
145
83
169
105
98
122
122
128
126
58
92
128
67
139
55
144
139
94
79
89
112
73
56
120
99
127
103
56
103
124
128
160
37
69
92
69
69
69
86
126
110
74
83
67
110
158
110
55
93
134
92
139
97
67
126
104
139
99
110
55
56
107
120
58
55
139
67
93
130
102
112
188
126
108
136
93
91
37
139
146
58
119
126
107
97
122
105
140
84
144
134
104
110
138
152
127
114
104
136
111
138
115
126
110
105
128
126
98
56
152
92
92
98
58
104
93
168
75
126
77
73
126
99
119
113
69
109
122
122
92
134
144
69
160
74
121
67
92
112
178
119
164
110
180
55
105
55
92
105
55
92
122
55
69
152
144
69
138
104
109
74
67
69
92
67
139
152
164
119
169
164
91
126
110
107
130
67
75
146
146
93
75
137
123
92
37
84
67
160
92
81
128
189
138
77
134
110
122
93
56
119
55
92
126
75
139
163
58
158
126
92
111
131
81
127
108
87
119
37
148
91
92
69
92
79
103
122
105
37
148
134
119
91
104
141
110
144
123
128
111
131
91
160
107
72
92
158
109
132
105
100
131
86
84
56
122
178
92
77
140
74
55
92
37
117
105
109
55
97
122
169
93
91
123
144
92
114
72
72
101
55
68
128
178
104
92
79
86
92
56
91
56
55
67
67
69
144
67
105
58
138
152
168
126
104
92
146
105
77
122
98
110
126
122
92
169
122
148
177
99
139
126
37
37
55
110
93
169
67
92
104
178
145
77
111
74
79
92
74
125
135
112
92
56
92
150
123
84
69
91
162
128
132
105
144
139
178
138
92
138
169
112
101
162
138
124
107
92
178
138
178
55
93
123
110
111
104
127
106
104
74
171
87
56
87
122
81
105
136
130
92
138
134
96
126
104
122
164
132
146
55
169
111
55
93
55
84
138
129
92
138
92
178
158
77
69
126
135
109
139
163
37
56
128
80
122
106
126
110
104
69
109
105
75
105
99
111
110
55
69
37
169
105
131
73
95
85
86
91
122
67
105
79
126
98
134
122
129
107
111
55
167
101
93
109
130
105
134
152
111
92
126
78
92
110
139
98
140
178
93
101
115
74
86
69
111
124
126
37
37
92
171
74
92
124
92
100
55
93
144
131
91
37
129
105
126
178
99
107
84
107
109
106
84
93
126
101
126
180
56
91
152
74
58
162
56
55
93
105
123
130
144
102
56
124
56
83
117
158
93
140
111
84
126
164
140
92
92
178
122
120
117
139
127
67
131
139
169
142
146
86
126
92
104
109
106
93
107
130
58
124
165
148
83
55
134
126
74
92
128
138
105
67
118
91
55
107
134
126
127
122
37
92
105
118
92
56
126
128
37
91
123
126
75
103
104
103
91
107
91
127
122
91
88
126
100
126
93
56
104
104
121
73
128
74
56
110
104
75
58
95
177
110
99
105
110
92
119
138
58
122
92
120
160
128
158
148
55
152
105
126
144
111
93
74
80
122
123
122
104
144
123
56
79
110
127
83
109
114
104
126
139
93
122
146
123
58
131
138
110
77
168
112
58
120
152
55
169
103
179
110
55
107
132
86
56
118
122
74
55
110
92
115
55
102
92
139
171
84
126
67
106
92
89
128
55
138
77
86
83
119
144
138
122
105
91
123
109
126
130
138
55
74
178
127
110
122
144
126
145
86
105
105
110
123
146
119
92
91
55
37
58
124
104
104
136
77
122
104
107
55
105
124
93
119
79
111
107
69
126
102
37
138
93
122
168
126
67
122
58
139
105
77
91
80
152
67
98
138
67
111
140
138
110
154
107
67
107
122
111
84
178
91
69
92
55
58
55
165
138
128
122
92
149
139
112
123
58
134
119
55
56
138
92
99
67
67
110
87
126
146
130
104
89
37
67
67
138
87
171
68
127
74
127
105
130
168
125
124
95
131
111
128
91
109
145
114
122
84
145
162
130
158
180
84
138
126
55
138
120
104
109
148
109
105
58
130
132
92
55
139
144
74
178
138
126
122
92
110
129
131
110
94
92
105
104
131
107
37
110
134
109
152
97
160
140
158
55
138
99
56
95
93
163
120
55
114
95
105
86
118
112
75
104
105
131
138
102
122
152
127
140
99
100
146
74
99
134
86
75
102
128
56
56
110
119
37
146
75
92
73
80
132
91
102
80
169
146
67
93
138
93
118
131
55
97
180
97
105
84
110
178
107
126
128
140
104
92
136
171
127
92
68
69
91
179
99
97
92
111
55
138
107
91
130
122
86
81
105
104
69
127
121
178
122
146
109
112
138
75
89
108
55
108
92
199
122
167
56
119
105
127
58
92
104
67
92
122
107
104
105
146
152
104
144
144
55
126
105
123
126
92
67
37
178
104
130
110
74
79
122
55
178
55
110
105
139
117
92
126
56
55
105
93
126
86
123
158
68
168
130
148
158
160
58
109
148
137
127
167
124
105
128
118
122
138
93
79
126
167
86
37
110
55
86
69
126
122
104
140
69
87
55
139
144
92
37
92
107
92
74
139
146
58
77
146
92
152
127
130
144
92
91
69
178
93
110
75
103
110
123
144
126
74
110
178
171
93
55
126
77
91
126
102
37
126
55
77
56
108
56
156
138
58
131
56
105
109
138
138
93
84
92
86
146
93
55
117
122
182
106
93
74
92
144
104
104
122
131
127
119
105
110
103
178
64
152
138
109
140
92
123
138
69
122
75
56
178
92
67
127
128
37
134
37
99
104
117
56
106
100
77
120
55
74
105
93
55
146
112
77
104
126
169
110
126
129
138
92
69
99
112
102
106
178
110
127
142
130
119
69
160
67
74
75
92
69
80
93
137
92
160
67
89
83
92
171
110
92
142
77
132
169
92
160
86
105
109
128
74
109
126
79
67
86
105
105
86
55
110
99
105
119
92
107
74
127
126
162
148
79
114
128
105
55
109
110
109
140
37
55
169
106
119
128
67
92
152
107
122
124
122
37
138
124
37
146
165
55
119
126
77
128
160
121
79
69
126
110
105
139
105
83
77
122
130
119
126
127
67
79
37
92
131
92
144
93
122
110
55
152
104
92
131
112
138
92
110
110
68
132
127
104
109
122
109
97
146
107
110
110
126
107
110
124
140
104
114
104
67
77
86
102
56
134
69
178
110
152
126
75
104
171
131
105
134
105
138
75
122
134
131
56
134
104
148
144
138
37
105
122
107
67
108
99
160
74
77
92
55
55
92
101
107
126
131
169
97
104
79
104
69
37
92
122
165
56
88
98
93
104
91
92
146
126
55
139
109
122
122
110
142
143
55
126
135
122
58
86
110
124
81
37
132
127
104
102
92
37
122
122
127
178
130
79
110
169
107
122
114
131
123
178
86
104
139
79
178
183
55
146
74
55
55
178
92
69
75
127
178
56
128
104
122
171
138
55
92
105
168
144
119
178
112
180
69
98
98
179
126
134
111
124
146
55
152
69
105
140
69
119
37
109
108
117
95
169
105
103
99
146
107
126
92
97
136
55
37
55
69
92
110
99
137
55
128
92
102
92
104
110
132
146
55
55
160
107
55
127
127
144
92
180
103
106
101
138
145
92
163
93
74
146
92
86
88
110
75
105
89
55
95
58
131
122
110
130
97
139
67
105
126
112
92
103
152
120
107
105
115
107
110
67
105
99
79
110
158
139
93
37
152
134
77
92
111
146
37
55
128
55
80
86
88
119
146
98
123
75
69
58
79
103
68
92
138
105
180
55
168
93
103
37
68
123
67
110
55
171
132
99
110
128
76
56
137
79
100
77
169
144
75
55
55
117
120
77
37
111
93
56
56
67
112
138
86
94
75
55
75
180
91
105
109
160
69
100
68
67
111
168
110
178
163
144
131
122
126
103
67
165
122
167
138
92
74
101
124
55
37
67
67
146
67
93
138
93
144
152
111
92
126
144
124
134
69
136
67
89
104
105
123
79
109
105
139
93
74
127
118
78
119
92
55
126
123
138
138
146
171
92
97
99
105
87
118
110
93
138
64
67
110
123
122
110
103
144
162
92
124
95
126
37
67
109
91
178
103
126
92
127
105
122
126
169
83
92
113
58
126
109
55
55
55
93
77
134
99
92
134
95
131
98
105
151
86
109
119
146
102
67
119
55
93
56
105
126
122
101
93
68
126
171
106
74
97
138
58
103
140
110
81
93
131
93
126
111
58
109
124
79
111
145
105
105
103
83
146
152
111
37
122
105
107
178
92
104
106
56
110
138
118
89
104
37
69
77
138
105
55
136
136
89
67
74
122
56
105
75
102
79
107
139
168
180
151
55
124
67
178
139
199
37
107
148
56
133
127
92
144
158
67
96
104
171
92
55
158
138
179
93
130
56
150
99
141
124
58
138
178
140
118
144
55
109
146
37
163
103
104
119
103
122
105
37
89
140
114
86
138
160
105
92
128
128
131
107
74
148
131
99
169
136
68
117
74
126
105
106
109
92
106
139
109
107
178
131
126
127
110
105
92
104
105
58
75
103
67
56
132
37
110
120
124
73
122
137
95
122
110
144
101
178
105
55
110
105
55
169
92
169
110
127
55
102
100
104
99
79
55
178
146
138
127
55
86
77
138
55
100
111
67
79
122
110
155
120
105
64
112
171
67
98
110
55
92
86
109
55
69
139
98
110
86
103
162
79
178
105
92
92
188
104
168
111
138
148
97
178
69
110
69
126
55
67
92
140
55
97
67
152
118
56
126
169
75
87
123
120
123
92
149
119
104
67
55
109
110
124
138
97
127
69
132
110
119
144
104
126
84
68
104
160
58
130
79
74
58
138
119
91
146
76
127
122
178
92
112
105
56
104
79
79
126
117
140
67
74
86
96
163
171
55
55
56
178
93
92
77
138
77
123
138
139
92
84
88
55
55
123
138
92
93
107
130
37
68
37
131
92
124
126
79
93
55
152
110
146
93
92
105
78
111
169
69
126
178
126
144
127
79
55
128
75
148
78
91
80
126
138
124
102
122
178
167
74
127
123
55
104
180
107
110
56
122
137
92
67
67
138
79
75
178
110
55
56
86
106
91
126
69
146
110
112
158
99
56
138
178
148
92
56
178
67
152
138
105
92
101
101
137
109
129
128
111
110
152
86
55
126
163
55
92
91
123
120
91
122
128
149
110
107
110
122
182
84
127
111
128
58
112
110
127
91
55
144
137
58
126
110
130
119
134
98
112
144
55
55
128
168
105
55
136
122
97
130
107
108
119
139
138
148
37
139
92
127
123
158
180
119
146
80
77
139
89
104
110
126
101
79
139
84
177
110
93
86
56
55
152
77
148
55
55
168
79
139
77
122
87
138
92
67
110
113
144
67
92
128
138
144
122
169
92
84
104
109
89
91
111
111
141
178
137
93
104
37
127
122
92
79
55
37
86
92
182
136
56
122
122
93
55
74
139
122
99
165
117
138
74
138
56
110
136
105
111
126
138
58
110
75
110
79
55
92
93
58
55
55
58
124
138
79
92
110
109
77
67
101
126
119
140
153
110
111
108
101
55
64
56
127
128
109
115
109
110
104
110
79
128
127
37
84
88
93
146
93
144
93
78
77
122
55
146
180
137
104
55
178
92
123
92
93
92
139
130
74
67
146
104
77
74
92
146
86
131
126
67
152
92
92
81
55
104
77
127
92
93
126
123
127
123
144
122
124
92
124
144
77
134
105
55
55
55
138
144
37
138
131
152
199
108
144
104
110
93
55
104
114
98
55
55
106
101
104
95
97
143
169
138
105
104
146
56
107
129
102
126
58
127
92
122
55
164
110
117
125
136
91
75
67
127
139
67
122
152
75
93
92
115
106
145
107
99
123
144
91
92
127
126
97
109
55
127
140
111
74
127
69
112
93
55
107
75
115
132
122
77
132
103
92
105
105
130
162
92
104
55
92
103
77
74
67
105
79
126
109
86
91
91
127
148
67
93
181
188
56
107
67
83
58
138
114
180
110
68
101
92
77
55
127
56
105
93
126
148
122
92
105
199
91
164
139
55
138
55
95
122
92
55
119
91
75
168
55
138
144
67
101
178
111
124
144
128
92
119
140
55
37
104
138
123
126
134
134
144
152
105
119
106
98
98
137
109
75
92
138
99
122
77
124
178
77
69
58
109
122
146
56
58
93
169
93
105
138
55
106
55
127
115
138
104
92
138
56
119
122
146
89
152
104
128
122
119
107
93
182
106
165
37
99
178
169
122
126
127
141
37
55
69
104
75
109
99
67
75
91
110
104
169
111
104
178
128
67
109
76
103
138
178
104
86
127
122
81
89
86
178
119
122
120
139
146
91
75
111
92
122
128
107
122
123
67
55
110
79
139
122
100
127
122
110
123
37
104
55
69
79
83
89
103
148
93
67
110
169
108
55
56
138
130
111
112
105
86
104
169
56
140
140
111
97
92
105
92
110
126
74
93
171
107
56
67
93
127
169
137
92
58
77
134
152
110
126
56
55
106
58
91
99
37
146
114
122
58
110
144
105
104
79
69
88
111
122
92
112
89
56
81
55
67
137
178
84
104
150
134
152
105
104
118
122
77
58
93
130
120
56
180
65
158
107
178
171
98
81
56
107
109
122
122
103
152
92
93
178
126
92
126
110
55
126
103
112
86
92
148
144
37
134
111
108
123
126
134
122
138
105
126
92
105
126
139
37
178
134
67
140
55
124
122
139
67
67
138
110
111
126
111
56
108
93
58
110
78
110
86
91
102
139
113
56
92
105
93
110
178
104
92
89
111
104
109
107
111
84
124
127
86
128
105
152
77
110
105
67
100
188
88
55
138
110
67
92
109
106
74
122
110
55
67
117
131
127
138
77
178
110
37
111
138
55
92
134
67
140
104
37
78
123
107
80
127
105
67
141
126
68
89
137
55
37
127
67
86
92
97
132
93
92
140
105
141
55
55
92
110
107
122
189
93
55
140
37
92
138
109
114
144
107
93
122
144
131
110
58
138
95
110
169
92
98
112
144
140
104
93
127
144
106
93
127
163
105
164
55
80
56
104
109
37
122
146
126
92
152
110
127
93
144
106
105
146
178
138
120
138
104
110
73
105
88
110
141
104
67
86
105
86
74
180
126
99
55
105
104
111
104
58
69
55
134
146
146
126
104
55
83
122
126
92
68
112
105
105
86
56
81
122
105
119
134
92
95
104
37
56
86
37
152
74
105
139
178
88
97
111
126
148
55
134
171
86
138
56
107
124
67
138
178
126
110
123
37
55
102
67
131
102
134
55
98
104
93
138
102
146
92
86
130
122
105
132
103
123
178
100
138
55
55
107
122
162
146
105
99
86
137
77
102
104
111
168
148
139
126
162
104
126
55
138
122
122
123
104
168
164
79
148
112
134
92
105
93
92
104
160
105
114
68
86
92
124
148
128
56
122
105
124
120
56
119
98
152
120
138
86
86
139
110
130
110
93
91
75
144
124
77
130
134
93
178
109
128
138
105
37
55
169
72
126
138
105
152
55
56
69
125
100
139
152
122
128
139
129
171
134
81
81
134
110
122
99
110
93
144
56
97
111
98
93
123
37
127
67
152
169
58
83
88
67
104
88
177
112
178
68
55
178
111
67
86
111
95
178
130
93
152
160
100
100
178
93
92
88
55
100
69
128
37
144
109
127
105
140
74
105
69
67
122
144
122
136
105
58
55
37
74
131
126
86
83
55
117
112
121
91
105
93
98
105
107
178
86
86
68
149
77
74
152
128
178
122
138
131
137
92
83
139
105
128
106
123
101
87
91
152
92
123
69
87
108
92
128
56
152
124
140
99
132
37
56
105
105
144
122
122
114
163
67
136
171
120
58
122
122
92
56
106
58
74
86
58
91
111
110
77
69
83
80
75
56
75
86
160
126
150
123
104
105
147
110
124
37
140
123
110
138
56
92
55
119
104
140
128
83
130
77
110
168
103
92
199
138
112
119
122
55
58
152
55
134
122
123
122
108
105
122
58
169
122
58
55
96
105
171
110
91
136
103
131
168
169
119
107
122
110
119
122
122
110
144
126
91
56
105
107
127
74
111
86
67
169
138
86
77
112
120
169
126
138
139
126
107
105
74
126
67
92
124
130
122
147
122
126
169
55
81
139
75
78
105
139
138
67
138
55
137
37
144
110
169
55
86
178
58
152
75
145
123
67
37
122
126
69
97
114
74
122
92
56
126
122
127
138
74
56
86
111
110
110
104
138
164
55
68
79
105
126
130
139
138
93
138
152
67
104
139
127
107
97
104
138
95
139
55
138
77
138
97
124
84
56
144
93
138
139
83
58
79
163
92
69
117
131
127
126
122
91
144
105
92
92
122
67
91
91
110
98
75
105
110
127
94
126
67
86
126
126
152
140
112
122
126
99
67
93
96
142
99
122
163
118
100
98
93
123
126
96
105
119
105
58
123
67
37
178
80
105
37
107
134
122
93
93
58
123
105
74
128
122
132
56
146
162
117
93
107
118
122
88
138
118
126
141
101
114
67
169
109
138
178
163
83
55
93
127
84
104
37
138
126
110
126
75
138
56
93
123
123
97
109
37
37
41
67
78
107
123
124
104
91
122
55
68
122
81
74
56
99
152
92
128
79
92
84
138
67
79
144
73
58
126
126
105
37
131
158
56
55
122
78
99
178
55
109
130
128
145
109
105
112
158
127
75
56
123
104
149
104
86
128
122
55
109
104
122
127
92
92
110
55
168
109
104
111
127
180
152
72
139
126
122
74
105
118
98
83
64
146
105
79
124
67
97
122
104
149
75
95
74
146
128
122
178
171
111
84
138
148
152
107
152
128
107
55
130
126
148
97
128
79
117
119
56
81
37
79
67
115
126
134
150
138
122
92
105
123
67
58
122
127
55
129
103
105
105
138
98
97
138
103
55
122
37
138
119
108
92
126
79
138
139
104
152
146
67
152
103
124
121
110
128
118
107
132
67
138
124
56
56
139
37
124
138
138
148
92
107
100
126
93
58
122
109
110
119
93
103
86
69
148
167
107
105
58
138
105
110
114
95
100
95
122
109
123
144
158
110
188
141
56
124
79
117
122
180
102
103
104
108
144
144
104
127
112
78
126
134
89
92
77
111
91
99
119
92
105
105
138
92
67
58
55
104
138
146
132
126
165
104
77
56
139
101
81
106
103
56
127
75
79
92
56
126
110
126
136
69
37
55
165
97
127
106
114
122
107
107
56
138
110
157
91
144
121
138
144
67
106
131
105
122
169
92
58
92
55
55
105
109
56
103
58
146
117
55
86
55
163
110
123
55
130
139
105
128
139
110
72
92
105
55
92
84
128
92
67
94
122
126
99
103
86
144
91
58
118
144
112
126
119
86
100
143
83
107
112
56
67
92
152
109
144
119
112
122
67
79
148
137
96
103
109
92
68
130
126
115
148
91
55
119
110
99
37
93
105
55
105
92
98
131
178
105
138
163
37
142
95
171
83
56
94
126
55
92
93
126
124
117
134
144
69
112
105
61
128
97
98
110
56
100
169
100
92
55
134
56
105
67
128
139
144
138
126
58
110
162
144
55
109
105
132
37
144
138
94
84
67
123
168
72
178
102
178
58
101
168
125
83
105
129
144
55
92
88
162
122
86
92
138
110
55
164
107
178
127
86
100
81
67
92
126
150
122
118
56
112
138
122
56
92
108
104
126
119
158
104
106
56
128
140
125
109
132
37
122
189
126
122
122
110
121
108
120
92
128
105
138
122
97
110
134
160
128
146
56
128
86
126
126
92
75
92
83
122
152
122
55
138
110
178
69
58
165
110
96
110
69
171
98
58
122
122
137
137
91
92
104
122
138
75
106
67
127
138
126
178
109
55
37
104
152
126
110
84
152
92
55
139
152
109
58
56
144
119
83
105
127
126
140
55
67
114
134
69
169
105
101
132
109
119
100
171
67
110
132
72
119
103
125
58
140
168
169
58
100
97
122
122
69
137
138
67
104
91
120
134
128
109
134
138
103
112
92
77
152
104
86
128
93
136
167
126
92
167
104
146
56
92
83
117
127
107
109
169
97
56
110
118
84
141
93
88
122
114
92
138
99
105
86
92
109
105
123
142
93
122
55
138
56
102
56
138
104
104
93
73
55
104
55
92
37
102
67
163
171
168
128
108
126
168
110
86
77
126
58
127
67
74
55
138
92
75
126
132
124
102
93
110
127
110
77
123
122
79
106
55
139
67
58
55
146
92
171
104
127
117
83
111
122
169
112
110
126
93
122
106
56
126
58
79
178
107
169
137
146
110
100
124
91
67
92
178
124
122
92
110
56
138
128
130
114
146
110
146
56
67
130
56
119
55
110
55
92
110
91
86
75
107
165
91
109
126
178
126
122
80
37
129
37
56
92
58
178
37
123
110
104
55
67
77
105
113
75
139
122
92
77
142
110
129
81
69
110
55
92
92
178
101
93
126
55
126
127
108
105
152
105
110
126
146
138
146
89
123
107
164
165
160
104
106
105
55
105
138
178
98
122
92
126
99
58
92
92
92
67
92
86
126
126
105
123
110
152
167
86
104
110
75
128
105
138
95
134
92
69
139
69
105
130
67
108
168
178
111
68
79
138
138
93
75
144
123
91
142
56
93
182
79
111
56
55
55
92
56
127
134
67
37
98
124
92
123
112
92
119
104
56
108
123
111
122
37
102
92
126
135
55
92
123
98
110
86
110
146
136
107
98
55
79
111
118
126
140
109
117
120
86
92
105
144
56
84
126
122
55
122
114
130
86
58
74
122
92
93
92
112
122
105
67
169
55
56
83
99
178
124
84
130
58
105
55
134
144
120
93
109
67
152
107
123
93
152
67
37
93
138
105
93
111
159
138
110
122
138
55
126
122
105
67
124
138
167
110
112
105
145
110
122
55
86
77
110
139
146
55
67
92
122
128
92
56
37
92
91
93
105
111
126
55
112
122
84
124
92
56
112
58
118
69
110
119
79
92
111
37
123
103
55
55
104
104
69
123
79
112
105
119
138
99
67
131
110
102
122
69
84
124
110
107
162
134
171
141
105
144
67
92
55
123
93
109
178
111
122
110
158
92
123
56
104
93
92
139
124
86
122
123
55
76
110
92
37
67
81
130
98
104
169
55
92
83
110
91
110
68
105
110
37
127
92
104
122
67
139
152
103
122
69
128
152
93
92
55
137
110
78
69
151
152
122
145
67
74
79
99
100
105
91
104
139
105
139
91
55
77
58
132
89
126
55
69
127
109
69
78
81
104
132
92
142
58
67
126
58
129
74
139
122
100
110
55
102
78
178
55
58
92
126
92
93
120
123
58
136
56
56
92
72
169
83
55
139
86
92
103
92
128
79
127
83
136
111
81
69
92
169
37
110
78
55
79
139
58
105
152
138
105
178
127
148
93
129
158
55
37
102
127
127
109
99
136
146
129
132
126
86
83
92
146
58
67
69
56
58
110
138
103
67
138
122
95
83
106
148
99
75
103
68
124
86
67
139
126
138
110
55
126
93
169
160
131
105
124
81
189
75
84
124
56
93
58
122
140
67
97
56
126
91
55
140
93
67
92
146
126
69
158
56
128
105
136
74
64
58
103
67
128
69
55
86
105
58
126
104
126
67
110
102
93
56
122
169
127
111
58
67
163
163
103
56
55
123
58
152
107
67
121
110
139
105
117
137
69
127
69
86
55
130
148
74
112
84
92
105
128
83
123
83
77
103
145
37
131
105
105
114
126
68
105
92
126
81
169
178
75
56
92
67
110
95
69
158
110
138
127
169
92
86
138
104
105
126
122
100
120
109
144
105
138
107
139
139
74
138
86
126
93
114
56
139
138
110
99
92
117
138
120
148
126
105
110
111
58
111
104
136
74
148
67
138
74
124
104
132
138
104
72
112
92
126
122
92
68
141
122
105
93
74
56
146
69
169
97
178
67
101
74
92
67
117
107
55
132
180
92
67
127
92
140
122
148
144
138
199
139
104
67
99
128
86
132
120
152
124
110
103
128
92
105
126
56
67
118
123
91
122
84
136
56
69
138
108
124
111
114
56
92
110
104
118
92
55
181
140
68
119
130
93
110
134
124
145
139
126
89
92
178
67
55
93
120
93
79
181
139
92
92
93
83
146
83
75
93
107
119
121
167
135
132
92
79
127
55
99
138
119
105
81
140
140
92
169
122
135
104
152
74
139
77
122
110
92
160
56
130
92
136
41
127
98
127
134
37
92
146
67
105
127
77
84
37
121
105
56
128
92
158
77
132
103
92
122
92
126
37
67
56
107
58
107
126
105
104
152
168
58
98
117
178
93
86
86
86
103
37
97
126
89
110
148
148
92
37
122
126
137
91
105
144
139
93
93
139
105
178
79
55
55
152
148
92
122
83
99
119
37
130
101
56
128
37
138
55
132
110
146
139
103
127
180
69
68
179
122
138
122
92
56
137
112
93
126
138
56
140
132
114
122
98
99
130
56
119
127
124
110
110
171
93
153
55
126
110
128
92
111
103
169
128
127
122
106
74
68
117
105
140
92
67
168
74
119
110
105
58
103
95
110
104
92
126
126
86
122
104
92
152
110
142
138
86
68
126
74
139
139
178
99
86
79
105
169
58
178
127
122
37
69
134
144
93
67
117
79
84
132
67
139
126
122
109
92
74
37
146
112
127
58
122
104
119
113
95
105
138
117
134
104
55
138
92
93
77
152
69
105
92
117
122
103
104
199
84
126
75
111
55
124
110
124
56
58
169
109
123
55
109
109
79
110
131
178
105
110
123
146
105
126
110
137
126
37
78
55
55
134
171
93
80
93
92
110
124
138
86
91
114
110
55
146
92
67
80
105
171
127
79
55
122
92
164
110
127
97
94
107
178
55
126
123
127
134
103
127
67
55
128
98
92
92
117
122
93
139
138
79
104
109
119
56
55
109
92
98
126
93
103
58
136
56
128
128
81
103
139
119
126
110
126
110
132
67
104
178
122
119
126
93
171
171
92
97
92
124
55
58
37
111
92
124
104
92
75
93
37
110
171
91
146
152
75
75
105
110
37
99
58
127
158
122
103
128
111
55
178
105
164
142
91
69
92
178
180
75
102
107
110
132
124
56
67
122
55
67
84
135
93
88
93
69
148
69
86
104
58
138
144
105
100
93
110
55
128
139
110
86
104
144
144
101
104
115
105
79
158
97
79
88
110
122
106
92
138
98
83
124
128
124
120
197
136
152
126
83
87
157
122
124
67
67
84
92
100
97
91
91
124
110
139
122
95
102
91
123
55
58
152
105
77
105
101
86
138
67
126
138
110
92
67
92
92
124
55
119
110
86
178
144
67
158
89
130
122
86
105
92
110
93
105
123
109
138
128
92
140
56
124
67
110
93
87
91
92
105
122
126
92
110
126
144
128
108
83
67
109
93
140
105
146
110
128
91
86
137
152
148
138
86
168
144
113
79
123
56
98
145
105
111
135
99
119
110
138
93
136
144
92
144
58
138
92
92
152
92
86
146
110
132
56
75
107
178
135
171
93
74
109
56
104
67
127
98
37
188
106
67
37
58
138
74
134
128
105
105
93
124
127
127
55
124
139
169
58
139
98
69
56
37
168
152
178
114
136
55
127
84
151
118
79
112
144
105
139
102
130
74
138
91
88
144
110
103
92
55
143
128
93
122
119
99
128
68
122
138
99
119
69
93
139
140
55
105
92
146
152
105
140
139
138
108
92
169
58
133
69
79
152
86
74
101
56
139
178
97
122
152
114
58
122
122
86
127
123
139
139
180
105
127
137
111
93
122
146
69
55
110
67
55
75
100
104
103
138
110
67
134
110
109
55
67
110
110
55
110
92
128
107
55
99
55
122
55
69
105
134
119
140
140
128
122
93
105
156
92
122
105
92
123
56
37
127
107
110
105
126
104
110
69
105
109
122
56
83
178
67
56
119
77
134
127
93
144
74
139
104
67
67
92
91
158
91
97
126
77
152
77
56
123
67
111
74
137
131
111
139
138
108
126
69
69
105
119
163
67
104
124
97
178
103
122
101
105
105
139
110
109
109
77
77
178
111
136
114
84
126
67
86
72
158
114
152
92
146
110
144
56
122
110
103
138
131
101
107
118
105
88
178
112
126
79
93
55
55
130
55
101
92
124
104
118
55
55
199
58
126
91
105
165
101
86
74
67
164
104
111
92
134
55
103
122
55
104
178
124
101
139
126
140
123
55
67
55
122
79
138
105
105
127
68
91
103
134
110
105
119
130
67
126
122
127
180
55
122
119
109
144
107
120
37
108
67
55
56
37
105
77
74
105
55
37
120
55
83
114
126
111
56
56
109
197
146
146
55
169
103
122
127
69
128
77
105
127
75
37
56
139
105
69
124
92
67
131
92
141
55
124
134
67
67
122
160
91
171
103
55
121
144
67
79
122
92
75
104
123
55
93
178
81
110
86
91
122
105
56
55
127
86
148
75
114
178
98
104
67
75
138
93
103
95
37
135
83
55
134
55
92
138
104
80
136
178
56
123
125
126
139
139
139
91
138
93
126
69
136
92
74
126
111
134
122
37
126
92
77
144
108
55
92
107
77
107
122
92
139
84
122
93
199
139
124
58
91
86
78
156
67
139
79
105
107
110
105
110
122
111
144
122
91
180
123
55
171
55
127
132
61
92
169
93
105
87
110
78
138
139
127
127
104
138
169
73
144
56
67
37
74
137
69
93
92
122
110
126
99
92
130
160
92
69
56
92
138
37
139
74
139
114
110
169
58
123
124
123
128
55
105
92
119
156
93
138
86
93
138
138
138
182
131
55
126
105
122
100
146
110
132
122
55
93
67
168
127
93
163
92
77
127
178
160
92
78
156
56
56
127
96
86
127
123
69
55
37
92
91
56
138
178
146
91
93
138
122
132
79
122
104
115
83
55
122
138
74
138
138
111
111
92
138
104
127
86
75
111
178
110
67
91
146
103
83
92
86
132
55
98
107
75
92
105
139
136
138
67
138
146
92
148
178
67
104
110
152
104
55
93
92
120
105
79
92
104
80
171
122
127
138
132
77
92
55
146
110
128
98
37
105
152
139
163
122
107
129
97
69
124
110
37
104
110
69
68
55
122
37
56
122
138
92
92
169
92
138
134
110
105
127
110
92
92
146
55
123
118
37
148
152
110
131
105
55
113
55
104
124
82
92
138
127
152
158
92
130
145
134
111
128
93
92
56
122
74
79
37
61
119
171
74
122
103
55
105
119
144
102
126
122
37
37
84
56
169
110
92
75
111
145
88
37
69
56
105
56
105
98
105
171
105
127
142
111
100
97
122
58
86
104
109
110
126
89
58
122
104
105
163
117
79
164
86
178
75
83
55
152
100
79
134
73
124
152
69
144
137
140
115
123
105
152
92
128
119
83
118
58
121
146
55
126
58
110
64
146
110
55
122
128
138
104
138
83
56
95
128
75
122
37
146
92
109
77
110
127
138
37
138
92
104
105
105
93
74
124
123
107
55
98
160
99
104
56
122
58
122
122
67
134
55
100
110
56
105
148
91
55
55
140
77
110
142
64
92
163
92
105
126
146
167
99
55
92
58
58
83
83
123
119
127
107
138
122
127
55
104
118
152
123
122
91
108
55
146
56
93
169
110
122
107
55
109
92
97
103
112
103
137
58
107
74
105
116
92
163
37
134
86
105
74
56
126
58
84
79
127
56
56
105
138
136
122
111
55
68
104
105
104
107
74
58
74
67
58
178
124
56
111
117
105
56
97
102
67
110
169
56
180
162
105
92
95
169
56
110
68
127
55
147
132
37
55
110
91
138
58
118
37
105
86
171
141
92
138
58
93
68
55
67
108
92
104
123
74
122
127
79
75
138
128
58
83
75
92
105
138
91
117
139
104
106
122
91
132
93
107
124
55
105
92
169
152
152
98
55
178
110
103
122
142
99
91
92
152
110
152
93
180
86
152
139
56
119
37
74
67
105
103
148
105
105
134
110
93
55
55
86
79
128
91
92
93
92
92
93
144
138
67
151
89
139
158
105
126
132
122
93
75
123
144
134
118
103
92
122
110
100
146
152
105
91
110
56
88
97
105
37
95
109
119
58
110
151
134
75
107
79
75
92
120
146
57
141
69
120
105
152
105
122
57
122
55
55
55
75
126
124
135
126
109
110
134
37
98
128
110
127
105
126
134
104
119
150
122
89
146
139
67
160
67
74
88
92
83
92
146
92
55
146
119
93
105
128
139
58
158
55
88
68
126
152
138
67
169
58
105
55
104
55
86
102
55
138
56
113
77
55
91
92
109
91
55
146
158
117
55
119
91
122
92
137
138
151
138
68
92
102
146
99
105
110
92
144
79
146
130
148
126
110
74
109
126
37
110
132
55
55
104
146
67
119
180
126
122
104
104
93
105
104
79
58
104
55
58
138
56
75
139
91
77
55
168
75
37
110
122
126
178
85
37
55
152
93
134
110
136
110
188
101
68
158
114
55
86
69
127
103
37
105
127
93
122
79
101
102
106
98
92
126
163
127
92
134
91
98
94
89
144
105
92
97
122
148
104
118
146
123
109
105
104
138
55
115
104
37
69
124
55
122
128
130
137
119
159
67
84
138
92
112
104
104
92
75
67
114
146
105
91
168
105
111
141
69
83
98
138
37
91
126
111
92
104
160
138
55
171
140
130
140
127
105
148
135
58
55
140
123
104
109
79
91
55
152
127
144
122
138
122
67
86
118
92
86
84
144
58
77
79
67
67
68
103
144
55
122
124
149
107
55
122
169
122
122
102
112
91
178
178
106
146
103
69
107
122
126
95
56
37
86
93
160
115
178
105
120
56
56
148
110
93
139
67
110
100
103
79
58
119
93
97
83
124
37
147
105
126
67
128
92
122
55
92
110
126
158
92
124
86
109
99
92
119
127
110
92
104
110
56
126
113
86
134
126
111
114
110
110
117
132
123
37
103
104
55
110
92
139
104
121
93
110
67
140
67
83
127
55
152
110
146
178
69
55
123
67
152
122
110
106
92
126
119
138
92
98
124
55
110
75
110
138
127
104
105
128
79
180
140
95
124
95
77
152
122
67
93
132
103
110
108
104
123
152
77
125
67
86
138
135
67
92
79
144
92
136
122
152
126
108
69
122
110
138
77
180
138
130
165
135
105
107
55
127
104
146
117
146
74
110
126
146
74
104
92
56
145
105
178
126
110
55
138
87
92
110
126
109
67
122
110
135
77
93
152
126
138
111
122
93
123
79
105
100
97
56
112
123
69
74
86
109
138
92
146
168
126
169
110
121
126
138
105
55
58
120
105
74
67
134
127
92
139
84
106
144
136
84
97
68
58
91
55
127
96
138
101
110
67
55
144
122
146
105
89
128
110
130
86
55
144
86
56
126
56
105
126
134
115
182
160
126
55
74
69
105
131
84
126
55
109
99
91
92
123
101
134
127
127
56
93
86
105
97
128
107
126
139
126
95
135
74
119
124
140
129
148
140
138
148
122
114
127
108
55
79
146
92
73
102
79
110
79
77
104
56
139
68
104
123
122
138
167
104
122
126
177
128
119
92
55
104
105
137
55
56
37
127
91
58
104
86
105
141
105
140
117
108
74
112
144
109
102
106
110
55
92
119
74
127
104
132
138
165
104
74
146
67
93
110
92
37
127
93
92
130
107
69
104
178
37
68
146
139
126
93
122
178
123
139
126
68
92
103
69
178
127
92
122
97
138
110
151
37
111
74
56
110
75
92
55
92
104
98
69
138
108
109
109
146
126
110
122
135
73
119
114
127
127
58
92
92
109
68
56
80
85
152
55
152
128
104
126
146
77
83
126
180
127
110
55
105
122
178
105
55
97
122
138
123
78
112
144
138
58
107
92
118
105
178
67
164
79
138
122
92
56
138
55
138
92
111
139
128
92
121
129
56
69
146
139
135
146
199
55
92
92
103
138
148
93
92
103
122
138
126
92
111
99
101
126
144
124
104
129
107
110
130
105
67
92
91
129
123
55
91
178
122
58
91
163
127
69
124
124
146
169
92
55
123
92
89
72
138
122
111
74
106
105
92
58
111
92
138
122
91
75
93
110
105
105
92
122
114
93
56
58
103
138
99
110
131
138
92
74
114
92
148
104
110
112
122
163
92
71
92
152
108
92
152
93
122
127
93
67
92
111
67
134
67
37
139
178
138
37
110
108
146
138
77
126
93
152
122
56
84
139
92
122
134
58
74
115
92
67
145
140
92
83
119
101
124
37
102
124
68
92
89
55
37
58
114
88
138
80
92
119
128
119
80
120
104
105
139
178
93
144
55
160
169
163
152
58
122
92
167
77
128
152
105
120
178
105
127
104
123
162
122
128
67
126
93
139
105
140
93
137
135
122
146
93
104
119
110
92
110
99
79
103
139
72
55
97
111
55
136
178
103
113
112
104
110
67
104
67
105
92
80
144
146
110
138
101
119
104
125
91
55
119
93
86
164
138
144
37
121
120
152
105
139
92
128
120
138
55
105
118
109
83
105
128
77
126
67
74
178
126
58
122
132
107
107
136
146
178
178
110
146
102
169
92
110
148
146
110
123
127
115
67
104
134
105
148
111
119
69
139
125
110
130
37
112
158
152
107
67
122
87
123
92
146
140
128
169
103
126
56
58
126
142
144
104
110
110
102
86
144
142
144
92
91
112
134
58
152
152
126
75
110
127
89
138
123
112
107
105
146
86
67
91
122
110
95
168
77
131
37
91
138
55
131
55
178
68
93
37
138
74
99
55
92
101
140
104
120
55
91
126
107
75
122
110
79
132
37
110
144
92
128
55
104
67
75
152
145
124
160
76
126
67
114
56
163
107
91
134
55
107
92
139
92
126
178
77
78
107
68
126
148
92
169
67
169
138
104
122
97
128
125
37
160
97
37
37
128
93
89
105
86
128
56
109
96
146
37
119
86
138
169
93
111
86
110
119
93
110
127
169
105
99
168
110
128
110
122
77
99
105
152
93
134
141
96
122
97
110
69
126
122
117
58
67
55
93
138
55
55
119
139
93
152
122
91
112
91
69
138
132
86
119
123
111
162
134
94
56
69
92
72
131
58
92
68
142
178
55
136
122
104
178
92
92
168
74
146
107
55
92
122
106
138
169
93
111
55
89
178
56
178
37
83
92
110
122
55
138
83
92
138
84
128
93
77
74
88
58
123
122
145
163
139
146
124
126
88
105
188
83
110
64
126
122
139
122
92
95
108
105
126
118
122
56
111
132
105
75
113
67
97
126
93
84
127
169
95
171
128
122
55
119
92
58
104
56
92
56
110
86
137
93
37
111
139
56
92
92
55
145
106
119
134
55
134
118
111
146
128
138
110
107
92
162
92
104
132
126
169
58
122
104
122
138
97
91
92
122
160
152
131
139
126
79
58
127
131
105
56
152
117
37
122
92
104
111
178
56
119
55
148
103
105
168
122
167
122
129
138
123
100
99
178
99
105
111
37
68
55
93
67
83
135
104
110
92
97
178
118
90
75
91
74
58
126
112
67
84
93
178
148
104
126
93
93
93
123
92
114
127
122
111
104
119
91
127
110
94
138
126
69
126
122
125
92
93
91
58
178
55
97
146
130
152
146
130
86
129
122
74
152
101
88
112
92
122
140
68
129
152
55
140
126
130
37
91
138
55
69
119
67
111
37
122
105
138
93
107
93
150
91
99
126
128
37
92
79
131
126
86
61
92
92
119
58
98
110
55
126
134
97
95
58
138
58
58
37
126
128
138
104
124
55
122
132
144
138
92
152
112
67
58
56
67
127
138
69
140
111
156
112
110
126
138
99
107
119
105
146
67
171
144
110
67
122
105
83
110
65
93
134
86
142
110
134
188
105
55
148
131
110
112
132
67
102
146
55
92
56
86
93
126
92
134
61
67
124
109
67
110
74
91
169
178
146
140
86
92
67
37
107
180
56
152
138
99
77
110
103
37
58
102
55
110
104
92
83
84
93
55
126
67
104
55
115
110
139
93
74
127
55
67
92
189
79
55
123
86
110
126
137
112
138
114
68
67
140
86
122
58
127
122
77
114
37
92
163
110
55
92
138
124
104
105
110
127
140
69
127
104
138
92
169
162
119
124
92
58
138
109
81
171
55
110
55
67
104
106
104
126
77
37
168
103
122
93
110
122
145
93
163
126
105
93
105
109
110
138
134
122
110
77
107
140
110
126
97
104
119
110
106
147
105
65
55
135
132
178
77
75
123
99
58
55
58
146
120
182
138
122
55
89
131
139
116
163
110
138
127
122
140
138
122
101
110
132
83
108
111
138
171
128
41
71
55
91
84
126
110
158
37
55
55
110
74
67
108
55
114
77
69
55
138
144
119
55
56
68
92
101
169
110
119
84
56
107
101
135
110
134
122
93
92
127
96
92
91
92
169
122
123
123
105
74
122
68
105
126
93
55
102
58
138
103
110
126
56
77
78
110
69
138
122
124
164
130
151
124
103
141
146
119
124
56
138
55
55
139
110
55
140
97
105
148
92
119
110
55
110
169
74
55
105
122
102
126
105
86
56
105
92
160
163
104
97
105
67
138
92
122
138
126
115
122
110
88
84
178
99
105
110
126
139
114
93
128
109
86
107
139
56
164
110
56
98
104
119
138
88
67
105
121
55
102
139
56
180
126
93
93
108
92
99
178
105
56
105
100
105
130
67
121
138
136
148
120
117
68
110
107
145
55
127
128
110
127
127
122
55
56
110
69
127
37
56
55
78
69
55
199
79
152
37
104
105
118
93
123
132
180
109
105
75
138
178
67
132
124
78
138
111
127
158
158
130
55
127
111
126
122
105
91
58
125
110
92
104
55
92
118
79
56
92
138
108
138
124
92
105
139
58
93
110
122
111
168
55
104
137
110
92
124
95
126
75
130
118
92
139
138
146
92
86
113
178
79
140
84
69
144
79
92
93
37
134
122
122
86
111
106
111
109
122
135
120
140
126
92
152
101
92
178
92
139
58
92
139
55
77
58
92
130
127
69
67
56
37
119
127
105
55
105
114
110
127
58
67
105
37
139
91
165
126
108
105
138
123
168
99
97
169
122
127
160
122
103
138
92
86
98
108
104
178
178
122
151
110
122
152
119
111
86
122
91
69
180
128
87
128
144
93
164
67
55
55
74
109
69
104
93
79
92
109
107
122
75
110
58
139
122
85
104
79
56
83
136
138
77
109
105
55
134
79
132
56
111
136
37
122
103
91
56
105
92
103
78
69
98
58
178
105
180
69
105
115
110
139
105
138
135
109
110
122
137
144
55
64
101
104
111
92
104
134
134
105
92
126
104
55
109
92
105
105
141
122
37
122
110
178
114
146
92
92
78
102
134
68
56
127
144
126
121
136
55
164
67
110
122
99
92
107
112
171
97
131
88
96
86
169
58
138
100
138
105
119
75
55
111
111
127
79
79
55
110
87
77
122
67
148
160
122
178
136
139
95
171
160
152
105
127
94
105
73
139
107
55
56
55
104
131
74
127
104
126
114
105
127
58
86
138
99
67
103
129
92
140
67
93
105
92
92
178
105
74
55
92
107
134
97
105
99
64
162
92
101
139
132
95
110
83
165
120
92
103
89
126
144
122
37
67
128
75
140
138
146
58
79
126
75
74
122
37
102
98
83
93
122
199
128
81
100
92
93
127
139
67
144
146
171
58
55
127
104
92
92
167
139
104
108
148
109
178
92
79
120
67
169
111
142
55
134
110
92
104
163
106
91
92
126
56
55
104
104
37
55
84
119
56
93
84
111
134
110
158
95
88
93
111
169
146
104
134
106
58
103
110
104
119
169
178
136
139
104
99
146
94
110
55
93
138
67
178
75
78
139
126
86
78
86
99
78
92
101
126
165
110
138
55
97
92
145
103
37
178
92
102
92
83
110
58
88
137
122
126
105
79
111
75
100
122
146
67
86
101
86
55
126
141
105
178
87
105
122
144
56
104
102
55
55
119
86
55
163
92
148
126
136
77
95
56
178
128
105
156
163
122
92
126
105
146
122
92
111
111
92
109
130
123
134
131
137
110
58
152
111
122
105
107
84
114
139
83
56
74
111
126
128
91
56
69
74
99
152
58
178
103
119
124
68
105
110
104
111
69
139
93
92
93
86
93
134
139
126
104
110
93
91
93
168
87
107
178
126
92
104
138
178
92
37
55
102
119
113
126
122
104
131
94
146
117
127
37
75
67
171
56
139
111
103
110
86
122
92
169
144
137
126
110
127
101
140
114
117
127
92
69
144
139
68
56
126
95
122
119
122
104
55
97
131
126
138
92
79
102
135
55
138
138
138
126
110
127
79
99
139
139
146
152
105
110
126
109
122
56
58
124
137
115
110
55
131
152
136
97
124
67
106
156
92
124
97
55
89
160
122
105
164
168
105
126
118
127
152
105
55
132
103
123
77
75
113
114
107
178
104
37
131
105
37
55
126
138
114
152
110
127
67
127
119
55
67
93
58
83
105
104
138
152
74
92
149
123
55
93
67
99
83
131
121
37
55
86
131
104
69
92
67
77
55
119
112
111
93
91
106
163
123
104
104
167
152
126
139
112
143
128
104
138
103
126
95
144
92
56
117
144
103
115
144
130
156
68
104
110
124
122
139
163
105
91
110
197
83
113
180
171
67
139
58
152
139
58
115
178
134
106
67
37
146
128
152
138
67
101
144
107
138
132
122
81
122
178
92
58
114
115
105
128
110
138
158
79
117
55
74
83
110
105
92
126
78
112
148
111
105
111
89
79
69
136
105
138
55
107
91
138
93
127
92
111
199
92
89
67
96
119
121
139
37
113
146
139
163
122
125
128
119
105
104
117
100
149
127
138
79
126
178
73
138
126
138
120
99
126
134
92
86
126
37
88
160
144
77
188
37
109
118
138
110
55
177
67
105
58
83
103
110
144
146
67
148
75
122
134
67
146
111
144
148
56
110
91
123
83
124
99
178
56
117
69
104
92
93
92
92
122
95
122
104
138
92
138
75
126
92
180
68
92
92
92
112
110
134
100
104
93
104
171
105
148
104
110
84
138
133
128
138
111
100
91
91
92
139
102
55
58
58
118
79
55
110
112
56
56
77
122
152
55
106
110
92
123
104
74
110
93
101
67
100
93
129
67
127
104
136
117
144
67
86
75
148
110
152
55
93
93
128
144
93
123
105
55
120
58
110
67
105
55
168
92
84
111
138
130
93
110
130
122
122
180
138
92
146
67
105
144
122
142
110
139
122
79
127
120
124
95
129
93
98
92
138
55
89
126
144
119
144
111
110
74
68
169
56
140
78
144
101
79
55
122
124
124
110
110
104
119
100
123
58
123
94
92
152
67
113
110
97
86
74
86
137
119
97
122
128
37
86
130
91
131
107
120
138
106
137
103
68
122
103
134
79
122
99
104
92
178
110
67
132
126
89
56
104
111
55
58
109
119
55
92
92
118
91
92
111
93
109
140
136
131
92
83
92
92
130
110
126
138
168
55
122
110
110
91
134
91
79
100
101
104
110
37
119
130
92
152
111
104
102
103
69
91
178
84
92
78
103
92
178
122
55
99
110
128
92
138
126
104
110
109
122
119
55
103
104
99
178
105
104
122
92
37
37
120
163
110
110
158
122
120
126
140
107
138
92
93
56
55
55
112
93
110
92
92
67
141
104
144
37
118
104
145
77
99
117
103
92
101
56
139
104
152
86
144
159
109
55
99
108
117
55
123
92
105
138
67
69
111
124
138
91
67
92
122
122
115
92
127
55
91
149
121
119
86
163
178
91
108
169
64
77
69
122
55
179
122
134
101
92
126
128
118
99
110
67
58
110
92
109
37
55
126
132
83
93
56
69
55
158
106
56
124
101
144
107
107
111
104
158
156
105
58
99
122
162
146
126
69
93
158
68
56
107
37
92
119
144
93
105
99
92
91
126
110
105
117
105
163
92
110
110
93
162
96
140
169
134
75
37
56
178
130
103
92
110
169
107
37
58
105
55
138
97
112
128
56
142
58
105
139
129
136
138
131
105
67
126
103
158
79
139
122
37
152
162
110
109
122
149
37
69
132
120
75
122
69
55
138
37
73
105
55
138
110
146
144
88
58
55
169
122
55
110
67
109
92
138
104
122
105
74
122
126
74
137
106
152
132
112
135
92
105
146
105
138
105
122
152
130
107
105
132
78
146
74
111
67
92
55
171
111
75
139
104
122
77
107
74
55
110
119
55
92
56
162
109
146
109
140
105
107
107
69
139
110
105
122
105
92
95
110
104
79
128
107
144
156
56
119
171
142
110
126
56
55
139
130
110
55
56
152
92
105
93
127
75
103
138
92
55
146
55
118
167
122
99
105
103
152
92
171
165
104
127
105
113
104
146
105
37
149
95
124
92
98
105
67
154
74
125
144
93
123
107
91
148
144
127
128
131
122
115
55
144
122
126
92
104
92
122
134
92
103
138
122
69
138
55
110
68
108
111
109
127
126
110
110
168
138
122
79
126
77
139
140
72
122
95
123
58
92
92
96
127
150
139
67
74
96
110
105
125
111
122
37
132
110
67
93
122
102
77
152
86
37
178
99
164
168
138
130
136
110
124
98
69
110
77
55
139
127
97
92
168
104
165
110
72
126
99
97
124
139
92
178
123
122
93
92
158
145
114
103
69
91
86
105
103
55
129
131
97
91
103
37
99
79
171
55
92
110
122
123
93
123
126
125
92
92
99
139
169
104
126
92
92
139
126
92
67
141
115
148
92
99
79
92
169
119
69
105
96
55
122
126
37
123
134
105
56
102
103
104
144
106
106
69
128
79
101
55
148
93
118
104
126
105
107
105
100
67
158
69
74
138
103
96
178
122
67
55
104
134
68
99
105
37
100
69
75
107
100
138
91
177
91
110
84
110
68
105
114
56
104
126
126
92
110
146
104
69
110
152
110
122
77
105
58
92
128
68
145
119
96
165
146
144
109
37
124
105
111
79
78
105
92
146
108
107
146
107
137
92
68
110
127
122
132
146
118
55
107
144
37
101
69
127
58
138
110
158
178
74
138
122
110
75
138
144
92
138
107
55
111
77
92
138
79
67
69
92
127
92
92
58
55
171
178
97
81
93
109
134
67
138
126
84
125
92
79
75
111
100
115
75
144
138
37
79
56
122
102
83
139
111
67
98
126
81
110
107
99
67
119
77
105
80
37
96
127
114
118
92
86
134
122
126
128
122
58
144
162
111
37
110
92
110
139
139
69
105
110
145
122
92
99
56
104
55
144
92
77
122
122
56
98
86
118
84
86
77
135
69
55
110
112
93
156
106
123
144
104
139
79
93
105
110
168
146
146
91
56
164
55
83
138
67
102
105
158
135
91
56
86
127
111
107
144
152
127
120
126
128
104
145
135
162
105
110
104
164
92
120
139
152
144
56
178
56
135
103
83
138
178
152
105
138
123
144
68
122
144
122
83
55
127
169
93
114
138
105
67
126
110
126
110
134
122
103
37
129
126
117
91
122
86
75
128
122
111
122
67
93
109
136
127
93
92
67
138
69
92
105
69
109
134
86
107
123
134
99
55
138
55
122
110
92
111
149
55
139
99
143
37
77
104
64
122
139
138
56
124
117
87
58
105
83
169
122
106
77
105
67
93
69
148
111
79
78
143
138
74
74
138
105
126
130
148
79
103
178
178
110
67
138
77
141
58
104
110
56
135
124
122
124
110
125
105
83
92
98
95
149
105
110
99
134
55
111
92
147
140
92
148
93
67
138
162
89
55
67
105
138
94
110
58
128
126
144
114
126
74
138
127
105
126
140
119
56
58
79
110
178
108
92
69
93
126
127
55
122
110
122
58
128
100
144
92
136
58
139
86
178
104
108
93
114
165
122
55
93
171
91
58
178
92
122
127
86
58
119
105
138
110
128
110
109
58
119
55
152
110
111
148
139
163
109
92
139
55
67
105
110
37
127
58
68
178
56
126
152
55
138
146
110
37
128
98
68
86
104
58
160
123
140
136
128
67
103
139
95
127
140
75
168
93
93
122
126
146
55
58
105
69
84
107
178
110
83
134
142
71
98
110
105
74
93
144
134
105
146
122
135
111
105
158
158
119
55
144
124
104
58
144
93
134
152
126
127
139
139
88
75
146
127
137
144
85
119
136
100
103
134
128
122
138
92
117
110
91
110
81
107
160
92
92
131
74
58
152
139
123
107
132
58
144
68
67
100
56
122
114
138
69
55
69
109
55
86
138
126
83
152
99
99
112
58
104
56
178
91
107
91
109
55
126
105
146
92
122
146
122
37
77
126
104
118
105
67
117
107
110
119
92
135
56
163
67
55
102
92
55
169
128
138
55
129
75
152
110
146
98
99
114
171
86
124
162
126
55
110
139
132
128
107
123
55
97
92
56
164
105
126
55
58
95
101
119
112
67
86
119
152
109
56
93
55
93
88
122
134
83
55
139
102
92
138
98
83
118
89
55
92
110
144
37
111
92
110
92
55
180
107
160
171
93
105
139
110
126
120
86
104
126
111
119
103
93
138
109
92
105
102
110
55
87
93
126
55
103
122
117
41
136
92
55
102
86
92
91
74
151
75
55
178
92
146
140
92
58
105
75
134
107
92
110
115
138
126
129
84
55
138
162
140
138
119
138
109
92
103
91
103
131
68
119
55
92
55
124
84
92
140
148
103
86
37
122
105
169
121
79
165
138
144
92
92
110
130
131
178
138
93
105
140
37
114
140
74
120
37
37
55
37
119
55
56
147
37
164
169
127
68
104
165
111
74
68
67
127
67
124
126
92
55
107
111
67
75
110
158
128
110
93
138
37
92
107
67
126
88
122
92
104
84
58
55
93
126
105
55
92
93
123
158
144
83
124
92
58
144
138
138
178
99
109
110
128
91
107
110
122
139
104
112
109
77
99
79
152
69
37
132
138
41
136
69
122
140
134
55
126
138
92
128
114
110
140
68
97
126
110
160
92
91
141
86
149
87
74
117
156
67
122
122
69
132
122
56
37
92
56
37
169
93
55
55
104
108
92
146
104
37
107
103
92
67
119
92
99
138
112
37
122
134
55
126
144
127
93
105
126
139
152
177
92
92
93
127
67
37
88
56
58
83
93
93
105
67
58
102
83
123
146
37
95
58
55
146
105
118
122
110
86
126
105
58
111
93
79
127
130
67
134
124
92
122
115
152
91
110
122
141
77
103
103
138
92
92
129
168
77
177
105
75
37
56
111
92
138
99
110
67
92
119
128
110
92
141
37
123
55
77
75
178
58
131
110
92
123
55
74
86
122
122
110
98
92
104
127
93
131
105
67
37
55
100
178
37
139
91
110
140
111
78
178
146
139
126
110
123
79
171
98
144
67
99
110
101
127
55
55
104
122
101
110
99
86
117
110
104
138
92
99
104
110
110
56
74
129
83
137
74
98
122
93
55
110
105
91
56
69
124
103
109
109
92
178
56
139
58
105
126
104
108
56
105
126
92
100
75
122
119
134
132
138
122
88
91
119
128
55
128
55
110
138
152
105
99
126
92
107
169
67
67
138
122
137
127
55
178
55
126
84
134
134
139
126
92
122
119
92
92
56
69
126
131
37
77
119
131
110
169
93
152
138
106
74
169
168
146
126
107
86
104
37
92
112
130
126
122
93
55
74
92
144
86
140
104
119
104
77
56
75
37
109
95
99
103
55
67
67
104
91
68
124
56
69
91
68
67
105
58
112
58
112
111
105
103
79
152
37
105
92
167
86
110
131
119
98
122
92
93
107
56
126
152
127
73
74
58
117
55
162
93
127
138
58
144
126
69
74
105
112
92
125
139
168
158
110
79
110
144
105
111
105
37
92
37
138
56
79
56
126
123
91
124
122
105
110
139
73
77
92
127
55
58
105
95
69
151
56
134
95
123
127
56
67
69
79
105
81
37
119
126
138
69
160
91
131
76
122
55
79
74
55
118
122
69
95
127
126
165
138
152
92
68
138
112
126
97
114
138
110
92
79
93
92
93
92
122
107
69
99
113
67
102
152
126
92
122
55
92
91
56
74
77
92
127
93
83
144
162
93
92
126
120
56
92
138
126
67
110
122
104
93
37
55
86
138
111
55
73
169
92
97
75
118
114
124
110
178
112
92
126
68
126
122
119
56
123
67
79
148
92
122
139
165
55
56
148
104
126
79
125
69
152
67
55
92
111
92
110
110
92
128
152
55
93
178
91
178
144
140
134
79
110
140
104
138
139
178
110
140
122
126
158
92
84
178
134
111
55
104
92
126
136
144
83
109
67
92
126
104
93
126
138
138
67
138
79
99
75
145
67
100
128
86
104
92
93
56
83
138
107
122
137
92
91
101
67
144
83
110
110
122
93
105
126
92
55
67
122
139
128
56
92
67
56
109
69
55
138
55
91
104
107
75
128
122
105
37
145
105
92
134
56
91
105
122
112
94
106
126
104
94
77
99
74
138
104
69
55
69
77
146
162
100
122
105
125
105
138
55
146
119
110
148
138
157
67
134
101
139
122
92
127
55
165
138
79
91
99
109
89
102
81
88
78
75
79
164
91
126
97
126
137
105
110
146
119
55
67
105
128
113
105
127
58
128
110
126
55
104
110
119
105
124
109
126
98
132
104
178
148
117
37
79
138
134
138
128
103
147
77
127
137
99
111
79
107
199
105
55
159
134
110
104
128
104
169
138
138
69
111
37
69
103
171
177
105
69
107
92
171
122
92
137
110
115
58
83
87
119
169
56
105
69
64
56
56
163
146
55
111
79
111
163
172
96
69
56
126
68
105
55
124
122
83
138
135
69
102
79
102
56
92
93
107
123
92
152
86
128
93
111
56
158
134
112
131
128
117
104
85
55
139
122
104
112
171
55
55
139
55
86
127
93
56
126
140
126
126
199
130
122
138
137
91
180
92
158
110
56
55
98
107
79
109
138
92
67
118
77
55
105
79
79
119
131
110
104
56
69
75
67
55
55
118
56
79
67
75
110
92
126
81
55
123
67
89
55
122
55
110
132
55
126
105
140
171
67
55
92
158
120
94
148
127
55
119
67
118
110
144
86
58
122
123
162
152
162
110
56
110
138
171
86
124
160
55
138
104
127
105
85
67
92
67
110
144
169
132
126
104
69
92
92
144
104
178
67
100
99
104
92
130
123
114
134
55
67
37
127
58
144
58
37
80
124
138
92
132
140
92
92
139
99
126
134
110
127
111
58
195
93
58
86
100
86
37
114
55
168
105
41
138
110
55
104
135
99
152
55
87
107
93
178
111
130
131
99
108
95
102
99
144
92
126
72
139
131
92
148
95
55
110
180
127
138
128
93
84
55
131
141
113
105
93
140
102
146
105
139
58
138
105
178
139
122
168
123
105
144
126
93
91
140
126
98
127
110
180
127
74
92
93
104
108
105
127
123
99
55
67
110
130
105
105
103
110
139
68
84
105
139
122
160
76
99
118
126
127
178
119
168
92
138
92
103
128
134
92
144
102
110
134
103
105
136
76
99
134
169
151
137
91
127
178
111
180
95
104
138
138
37
55
160
74
136
105
87
55
69
69
122
123
97
178
149
55
146
134
178
105
189
99
139
146
67
136
167
124
103
178
67
104
105
37
83
122
58
105
92
92
93
86
37
120
68
83
122
55
74
131
126
67
92
105
92
56
142
111
105
111
134
146
123
160
55
55
37
125
56
83
55
58
110
134
169
98
104
148
104
104
67
122
126
130
75
91
111
92
67
104
108
146
111
104
122
180
171
134
180
104
67
55
123
79
105
148
122
126
138
110
103
93
148
104
109
99
89
92
117
103
132
126
126
122
110
92
122
98
144
134
123
56
127
118
67
56
163
55
148
91
128
55
55
101
91
146
55
77
37
119
105
86
108
148
104
92
146
92
144
55
55
91
56
162
89
102
134
75
93
69
92
146
84
103
145
138
75
86
126
132
152
117
126
37
126
119
104
119
91
122
56
55
122
122
138
137
114
138
138
147
77
93
126
55
55
126
139
93
178
92
126
98
55
139
122
152
55
105
122
98
92
119
127
110
69
55
168
119
138
126
37
75
152
55
122
92
109
114
93
67
95
55
134
69
55
56
55
118
68
126
138
142
93
148
55
92
75
126
56
178
114
110
140
122
147
74
77
126
138
104
99
164
105
138
119
83
117
139
178
83
122
93
152
138
75
139
86
139
37
104
114
122
126
105
95
84
122
69
92
92
92
110
126
56
92
100
56
139
55
139
110
74
101
93
126
122
110
106
126
122
126
55
104
69
146
126
105
128
111
144
86
88
111
92
37
37
150
92
148
164
124
117
84
137
92
74
37
138
92
139
56
92
79
146
127
58
110
37
55
126
138
111
122
79
199
37
86
69
138
67
103
91
140
91
69
109
123
37
67
93
160
146
178
158
178
84
124
105
56
140
178
105
86
105
105
86
102
105
144
75
128
152
75
144
158
110
99
56
163
37
109
126
95
107
104
91
121
93
55
100
92
110
168
81
92
55
109
99
138
105
105
104
93
68
122
122
123
55
122
126
127
121
126
75
123
105
178
56
140
79
138
110
95
99
148
106
37
167
148
92
55
169
134
152
109
148
84
105
152
146
92
105
123
111
77
136
110
106
105
55
97
126
126
55
123
78
144
122
148
67
107
126
147
139
137
105
37
112
104
110
55
148
110
126
56
92
92
121
104
67
55
122
123
99
126
56
111
139
138
92
122
92
56
93
120
92
124
58
91
119
105
130
163
146
110
152
123
97
104
139
147
140
122
105
74
105
122
86
99
86
109
55
152
83
91
92
134
110
56
99
120
138
93
86
55
136
128
103
122
110
127
126
92
110
125
152
140
158
105
162
128
140
97
92
111
92
104
86
107
55
58
168
92
138
137
151
151
92
92
92
105
140
119
110
56
138
84
120
55
126
86
122
138
94
110
180
69
55
98
79
109
122
67
37
131
111
152
92
199
111
93
55
146
104
92
152
119
126
117
146
105
69
92
144
130
98
122
68
119
140
126
92
92
169
105
144
92
111
126
148
56
138
171
180
55
128
134
98
92
68
134
128
55
123
160
144
80
109
104
124
58
126
105
37
104
91
144
55
80
120
114
79
55
85
92
139
122
126
178
56
123
104
99
91
119
122
91
67
139
122
138
152
110
119
83
162
156
152
93
138
127
67
68
104
92
92
138
75
110
67
92
122
110
110
99
114
138
55
76
118
75
128
138
127
111
139
80
104
86
139
117
132
109
77
86
37
120
147
129
104
127
108
104
79
132
126
69
101
122
110
142
93
132
55
55
55
91
75
141
110
109
99
55
123
128
75
75
132
167
55
103
55
104
158
122
97
58
134
68
86
98
110
140
83
105
138
67
93
97
93
37
105
127
78
55
67
83
131
134
37
124
74
101
158
139
119
122
133
134
93
112
123
146
146
105
105
100
126
130
84
56
108
84
67
55
105
101
110
140
145
100
67
79
127
131
92
132
104
55
144
67
132
138
138
137
74
104
122
138
137
89
69
158
119
56
144
178
75
144
110
95
112
110
145
126
165
103
128
126
104
92
99
37
79
138
84
37
132
97
55
64
110
56
101
67
129
95
88
162
158
169
124
180
137
134
92
84
92
169
105
92
37
124
109
55
95
138
110
55
93
77
169
110
74
163
81
110
101
98
192
58
118
121
93
110
37
105
137
77
110
128
92
74
127
101
58
101
83
92
134
131
69
55
169
105
134
105
122
108
56
92
134
119
92
114
56
86
108
109
55
74
110
152
99
56
91
152
147
93
67
99
171
105
144
56
67
102
162
79
92
164
122
110
139
104
122
126
122
99
98
121
94
91
84
122
126
122
68
126
122
92
111
86
169
69
55
55
178
104
92
93
178
111
103
104
56
92
111
126
149
112
127
110
103
92
122
130
144
122
108
83
58
122
86
107
126
98
92
92
126
56
93
84
110
93
169
105
152
110
92
111
58
132
105
127
56
92
152
152
83
126
119
112
110
93
105
119
138
139
84
134
86
110
79
67
122
68
77
126
110
169
138
121
164
145
93
79
69
110
86
123
168
127
55
84
139
77
138
180
110
130
93
69
122
178
110
98
119
134
104
107
122
69
122
110
178
103
97
86
67
128
94
138
144
127
87
137
117
122
92
132
126
107
152
148
69
75
178
67
137
107
77
93
110
123
117
111
120
140
111
83
122
104
110
92
83
131
37
95
152
98
128
103
58
100
97
93
111
103
37
92
168
93
104
156
144
105
134
93
123
140
55
140
123
122
122
106
89
123
104
92
37
110
91
86
140
105
160
134
122
92
86
87
89
122
122
135
69
138
146
137
167
152
122
55
79
55
92
92
111
152
55
92
136
92
95
110
152
178
126
55
131
102
73
110
74
138
109
76
92
135
122
92
84
107
144
79
178
137
91
168
178
83
100
58
104
139
86
138
109
152
91
123
110
158
99
104
56
104
68
103
67
56
56
169
163
83
126
98
130
178
106
169
111
113
139
79
91
126
95
84
75
92
107
146
144
92
55
144
164
123
75
140
92
144
102
119
98
139
110
140
92
37
110
105
81
79
111
178
37
92
56
139
77
95
73
78
126
178
178
105
123
110
78
107
69
111
109
88
56
112
127
107
117
92
126
163
103
169
104
111
55
112
105
119
163
55
123
137
67
37
110
122
55
144
74
104
56
67
140
74
163
58
97
37
114
180
139
56
92
110
96
74
97
79
91
74
109
97
126
104
56
74
86
93
112
126
114
103
132
122
55
105
139
115
37
56
124
93
152
126
132
106
93
69
67
58
55
55
110
58
67
110
119
56
126
119
103
180
99
67
105
83
122
123
55
92
80
79
92
58
92
110
92
152
74
136
87
83
111
93
67
92
135
104
138
141
163
123
99
117
92
97
109
168
120
131
55
139
79
86
105
128
77
92
99
152
83
55
89
122
91
55
122
94
55
55
122
111
101
92
93
136
126
138
110
146
127
93
178
126
105
55
107
92
178
105
132
58
105
98
74
111
104
68
108
104
55
110
123
58
134
67
93
126
58
55
56
105
152
152
139
100
112
55
56
105
139
74
145
92
158
144
116
69
180
55
142
91
92
168
37
109
165
110
139
55
127
138
86
95
99
146
102
58
132
95
124
106
148
74
105
128
83
105
58
55
58
146
110
139
55
67
126
86
92
89
138
83
93
95
67
111
56
171
67
92
122
178
55
127
92
122
56
92
138
98
56
132
55
126
182
56
93
91
126
55
126
55
110
158
55
119
92
178
56
55
122
92
122
148
67
93
86
122
56
91
105
110
58
163
127
124
77
37
67
67
138
93
139
169
110
101
67
109
108
122
112
92
126
169
127
105
131
114
148
37
37
93
56
67
127
67
146
67
91
126
123
102
139
126
93
125
140
110
83
146
91
89
111
109
122
102
111
114
138
148
169
182
72
55
92
130
96
102
110
91
58
104
178
119
122
106
119
67
165
148
146
138
55
55
84
86
132
135
131
122
93
103
86
92
37
92
105
110
138
168
105
126
99
135
110
110
146
130
37
131
134
96
92
67
119
138
93
37
169
107
99
37
122
128
112
104
91
138
126
110
105
140
58
79
178
104
105
83
92
74
110
128
37
140
119
74
89
109
100
134
92
109
56
119
126
171
67
153
68
137
67
105
75
105
58
67
169
74
122
92
124
152
115
58
122
37
123
97
91
92
163
56
105
37
110
179
126
75
138
58
126
92
139
55
92
138
86
89
83
99
101
110
148
92
93
69
118
67
97
56
93
141
37
55
75
104
55
110
55
73
89
148
152
105
119
104
79
158
121
128
169
56
119
107
122
86
69
144
136
115
169
110
80
132
80
104
146
104
100
67
164
105
91
89
55
178
55
146
92
134
101
99
92
131
93
105
93
84
126
80
93
104
128
55
67
55
122
130
102
67
104
146
109
110
126
77
146
58
95
134
67
110
93
136
93
110
77
110
105
97
92
86
92
160
55
127
127
98
67
130
61
98
91
169
168
56
55
105
122
122
55
119
106
139
126
132
77
144
105
131
110
178
111
107
69
103
104
87
144
112
99
93
67
111
169
55
67
122
68
108
171
144
56
122
92
124
139
134
83
171
105
74
122
58
103
111
122
69
67
37
93
55
127
126
169
37
110
178
138
56
128
87
123
127
92
130
132
55
126
125
56
37
56
110
69
56
69
126
144
84
199
126
119
74
74
93
67
122
98
99
138
132
55
112
105
122
127
169
58
111
55
104
79
121
122
79
81
122
79
109
119
56
74
92
105
131
67
84
87
144
111
138
119
138
134
92
111
92
58
56
169
146
67
105
104
67
79
55
113
67
89
151
136
58
146
152
37
86
146
74
165
110
110
107
111
93
146
92
122
73
93
55
111
100
131
55
148
110
122
67
122
56
111
171
128
123
178
55
162
144
102
84
104
152
138
104
55
89
56
74
107
105
92
91
55
145
56
127
86
99
114
107
119
127
138
79
93
84
67
56
56
75
140
144
58
55
56
37
67
69
55
134
102
178
109
74
120
138
74
110
55
132
69
67
92
109
56
126
137
126
99
37
86
127
69
92
77
58
103
132
138
140
92
75
112
122
58
105
67
107
100
163
126
74
152
132
67
131
55
69
119
99
95
140
117
37
58
105
97
79
111
120
169
169
110
58
110
119
126
171
56
119
67
180
55
126
96
99
139
102
58
127
55
120
128
56
67
56
163
123
69
123
122
148
55
127
110
139
56
149
126
119
120
104
148
55
178
126
67
89
75
107
92
165
55
169
92
123
165
79
67
98
104
118
91
123
108
122
195
163
139
110
146
67
92
56
180
109
105
107
171
67
124
126
127
126
37
104
124
56
37
91
93
105
140
92
77
113
92
67
114
109
92
93
67
110
105
93
118
178
114
78
72
107
118
111
180
83
130
105
117
55
139
107
97
104
139
92
168
92
92
92
95
79
127
55
108
69
67
139
132
77
110
126
152
91
86
79
91
67
120
100
104
92
144
138
92
79
120
148
101
122
92
56
103
80
107
119
88
105
55
122
110
37
95
110
108
75
91
128
88
55
162
86
110
130
56
123
91
139
109
55
105
138
122
124
92
126
142
152
69
138
67
77
56
109
37
111
131
139
110
162
144
104
105
58
122
122
158
111
67
126
69
124
119
55
105
118
55
164
122
93
110
138
37
110
37
92
68
67
100
120
105
138
110
111
138
86
92
139
92
134
79
56
163
91
104
92
67
120
55
84
137
93
126
92
92
105
86
56
126
91
84
103
79
124
92
119
92
74
37
134
92
56
91
75
104
126
178
178
92
69
86
67
119
118
56
148
58
58
67
110
108
91
127
123
104
138
126
126
111
158
140
138
138
98
130
139
105
92
91
58
140
122
132
126
77
144
67
104
146
98
68
178
122
92
110
37
138
162
92
83
163
140
114
126
86
55
102
171
138
105
91
112
110
132
55
79
105
128
140
111
94
110
101
138
69
56
126
140
107
138
142
104
119
131
152
55
126
138
55
110
114
100
79
58
56
56
37
107
105
138
58
127
74
93
139
110
122
79
58
93
178
92
55
55
152
140
130
104
123
74
105
77
103
92
55
126
67
139
104
134
110
41
93
99
138
93
109
88
127
92
56
56
126
158
146
122
89
56
139
104
132
126
138
138
37
99
106
122
56
76
127
111
128
93
109
139
169
55
77
110
102
55
88
107
130
97
108
56
93
93
138
110
74
91
74
127
75
139
115
74
92
178
67
55
119
119
104
138
92
78
74
110
92
130
138
58
148
103
93
97
65
55
126
55
100
55
80
78
160
122
58
84
55
152
92
142
67
105
127
92
56
126
120
112
99
92
169
111
74
178
56
152
105
129
122
99
144
68
146
86
92
138
55
140
136
105
67
138
169
92
93
105
178
128
152
104
80
138
55
163
93
125
146
56
144
168
153
144
89
118
103
93
126
69
124
129
124
128
110
86
79
74
109
123
104
126
103
75
55
146
67
69
162
93
118
151
84
55
104
148
67
171
139
37
138
146
92
140
68
138
67
144
144
128
75
67
109
110
114
58
168
67
56
178
163
72
55
123
110
122
92
110
138
75
144
92
92
114
123
103
67
144
67
55
139
67
110
104
80
122
114
137
122
67
134
92
105
77
105
91
169
144
92
126
92
74
58
103
125
128
91
107
58
152
144
97
55
145
148
84
74
79
139
110
79
97
92
77
75
37
178
92
92
109
100
86
91
92
126
152
104
105
188
138
67
106
107
86
138
127
139
55
104
146
92
67
111
105
77
91
126
110
105
77
122
127
122
127
178
139
122
138
138
74
122
168
55
123
93
152
169
91
105
86
122
123
105
113
122
92
37
84
56
92
134
149
93
58
124
129
122
139
109
67
93
138
134
105
87
148
81
100
139
110
84
83
93
111
128
93
112
37
138
58
55
92
120
80
93
103
132
56
104
138
56
58
55
58
105
123
139
92
55
110
67
134
55
123
79
126
37
106
93
169
138
92
56
74
168
99
122
126
67
124
131
91
94
169
88
104
86
124
122
143
105
108
126
126
138
99
56
93
146
105
92
56
112
37
139
105
67
67
114
124
58
92
126
126
92
169
74
123
92
122
56
107
92
127
86
104
55
89
160
86
103
126
92
110
138
83
67
92
146
101
112
122
67
134
92
138
80
76
67
58
111
67
77
55
56
128
80
109
68
69
56
126
120
56
55
146
83
91
37
124
106
58
105
144
110
126
83
146
88
84
67
126
126
110
58
148
105
55
109
178
58
122
56
37
139
138
139
56
126
126
105
56
92
77
86
92
37
86
69
111
104
139
112
74
140
131
110
56
122
119
91
75
110
114
55
108
146
144
75
145
37
98
92
100
178
128
152
119
86
99
55
119
56
123
99
110
92
114
55
56
95
126
96
128
127
105
119
69
119
119
103
128
92
68
99
99
92
55
92
92
68
144
124
164
120
104
74
122
56
110
77
55
61
120
152
123
79
132
93
169
128
126
178
128
92
92
110
101
99
128
138
79
138
79
127
99
56
123
68
93
55
102
92
56
140
67
120
139
128
99
92
55
99
126
84
86
105
120
77
74
58
92
126
55
146
122
110
122
126
55
119
140
93
126
93
144
56
74
134
92
119
122
122
118
58
102
126
67
92
126
139
126
126
128
104
136
55
86
105
76
140
55
119
104
122
56
55
99
130
119
138
105
137
107
130
123
103
152
105
55
156
144
118
139
138
55
79
92
152
139
100
58
138
92
136
124
99
119
128
69
126
105
140
92
138
83
58
171
55
110
122
138
75
78
120
120
67
55
77
128
93
67
69
180
55
91
123
55
140
122
55
101
163
99
105
122
67
126
97
55
105
132
58
104
92
55
37
37
93
114
92
114
55
128
86
79
92
178
110
112
83
146
55
152
55
102
124
86
126
132
79
138
178
100
106
55
169
56
122
127
37
75
109
140
146
37
92
91
104
114
92
55
122
154
110
55
111
162
165
69
144
123
122
126
178
122
119
98
181
37
127
126
98
93
125
120
148
137
84
111
67
104
180
110
138
92
55
178
110
122
92
126
122
128
92
123
126
103
74
92
139
122
120
178
111
93
127
74
126
67
138
55
128
134
56
104
105
167
137
79
55
169
56
67
67
67
107
55
105
148
178
127
126
146
105
119
92
93
126
55
139
55
148
138
110
92
124
79
124
56
105
92
58
98
75
122
126
98
74
128
110
105
139
67
132
83
77
109
107
69
163
67
81
115
171
111
69
119
144
79
122
146
126
92
58
124
128
69
126
126
100
75
109
123
92
127
126
110
105
110
74
74
77
178
91
126
163
126
67
138
127
129
123
111
89
127
91
86
99
92
67
79
180
136
127
122
105
110
127
126
75
92
141
55
127
55
105
122
178
67
135
132
69
114
92
74
148
56
111
107
105
114
92
109
178
112
110
110
178
92
58
86
135
163
128
55
128
102
119
102
86
98
107
99
94
122
119
92
110
128
158
92
99
99
130
149
91
126
151
128
126
160
92
152
69
123
92
134
126
92
178
128
139
128
152
92
67
104
118
138
119
69
105
118
105
101
92
178
142
79
74
92
93
122
99
67
105
180
156
126
55
130
105
102
138
139
75
126
86
119
124
92
104
75
105
149
110
118
55
86
55
171
122
165
124
126
106
168
83
86
141
56
55
112
55
58
122
138
139
130
126
126
140
104
122
113
136
156
75
104
99
110
79
178
89
122
104
93
92
111
123
89
92
134
122
56
130
104
37
55
165
97
163
78
138
108
105
122
110
126
92
86
67
122
120
126
56
37
127
55
99
86
67
138
99
138
107
78
117
103
92
115
126
78
93
127
138
124
136
108
124
110
108
138
146
92
92
110
105
129
100
122
105
128
79
104
91
92
165
126
110
75
91
144
107
93
37
110
93
127
68
110
177
139
95
93
169
92
74
55
119
92
55
87
138
56
104
110
58
92
130
132
110
122
55
92
199
104
126
134
98
58
152
104
123
92
119
67
169
110
136
138
104
148
93
56
105
105
74
137
68
86
105
132
93
86
131
77
117
110
148
156
110
105
93
151
97
151
93
96
149
91
104
139
74
56
55
92
148
180
105
112
122
110
117
107
120
68
68
110
141
130
138
110
58
132
146
104
122
77
144
114
37
126
105
112
110
67
134
138
58
68
122
147
139
165
83
77
152
92
127
122
180
171
122
126
168
119
58
104
93
139
58
126
146
119
148
104
99
146
138
124
138
91
122
146
105
138
119
122
152
110
83
37
92
134
69
56
77
56
67
128
140
119
108
171
93
55
37
55
106
111
83
139
110
144
89
86
105
124
146
147
55
95
104
138
68
77
112
140
83
58
105
145
55
100
138
126
105
64
74
103
99
152
138
97
138
188
79
96
105
111
132
92
86
138
97
139
139
126
152
126
109
55
93
107
104
122
122
55
195
167
122
55
56
61
67
83
92
101
103
86
146
126
84
55
169
102
105
128
104
178
92
180
110
138
110
79
146
104
119
107
119
148
86
92
127
81
126
74
101
138
128
137
92
55
102
67
123
68
110
126
92
178
138
126
67
164
139
119
122
128
134
122
56
126
74
137
169
146
67
92
123
104
126
127
141
91
96
104
119
56
168
104
163
122
126
102
122
145
83
112
67
127
91
110
119
67
55
138
105
89
122
104
92
144
97
91
126
104
99
91
171
178
130
55
69
146
122
123
100
128
67
135
98
100
74
80
102
114
110
119
138
67
119
105
128
105
92
171
168
92
96
171
139
89
138
105
73
58
138
138
92
55
79
108
128
67
78
126
55
167
74
122
122
152
88
91
69
56
104
37
58
134
86
138
120
144
37
86
139
111
56
138
79
152
91
160
58
110
56
146
138
110
122
94
92
146
122
101
107
55
58
149
146
126
111
67
138
37
72
152
111
126
146
104
178
69
67
87
142
56
112
113
130
37
87
148
89
55
58
104
105
126
67
78
138
67
123
77
67
67
92
37
139
105
130
139
55
138
99
91
110
106
92
55
106
120
178
104
92
178
156
67
110
93
138
127
122
55
120
114
92
167
97
103
105
132
58
79
105
144
104
178
141
122
110
123
152
130
55
92
169
75
122
67
135
178
144
102
152
86
93
95
37
163
104
110
136
68
102
98
145
74
37
158
109
122
104
55
105
122
126
92
169
123
78
87
99
103
93
56
97
109
122
55
56
37
134
125
114
126
92
67
110
104
110
55
55
136
128
74
136
79
146
92
86
58
67
145
91
105
92
92
147
92
37
148
99
55
77
79
138
110
122
112
139
146
138
126
139
93
92
139
104
93
110
101
92
142
92
99
110
168
144
110
77
110
86
139
126
79
127
68
180
146
83
67
91
74
112
119
92
127
119
104
158
112
127
86
55
135
67
55
97
67
56
92
124
92
56
58
75
144
68
152
97
127
80
114
86
140
148
95
110
64
152
122
152
127
109
122
67
103
93
101
138
91
178
55
81
139
124
55
104
104
93
109
67
105
37
99
105
140
92
94
56
37
84
122
105
98
138
104
120
67
55
110
122
126
151
55
105
163
91
122
126
111
56
124
93
92
104
92
131
178
137
92
110
152
89
55
56
107
178
99
110
146
37
91
136
137
97
122
110
104
148
105
86
158
158
126
98
105
134
126
92
110
120
139
144
93
92
141
104
104
91
83
124
110
109
74
105
91
144
103
93
107
58
105
93
126
79
104
111
56
130
146
93
112
56
107
122
55
122
110
127
92
81
120
124
146
180
189
86
93
93
126
127
74
99
56
100
68
119
146
92
55
138
123
128
130
67
67
92
100
104
126
153
98
122
146
74
92
55
110
148
105
127
110
76
126
111
92
127
123
105
126
104
158
169
92
178
111
107
92
104
55
144
109
180
89
83
110
37
77
152
127
139
139
124
129
104
92
104
119
105
86
107
97
168
138
74
134
178
92
111
69
114
138
179
128
80
55
104
111
69
146
140
55
92
58
127
144
101
89
105
86
101
37
104
102
56
122
122
55
69
110
123
138
141
104
68
142
69
111
109
122
110
74
93
67
138
140
105
146
58
69
69
55
37
199
56
124
126
92
178
127
122
105
55
107
37
122
152
99
122
144
55
122
93
67
93
92
104
110
55
92
178
69
105
92
126
153
109
107
92
122
55
69
84
92
161
120
107
98
151
102
180
111
111
124
144
110
92
67
105
92
86
169
152
137
114
124
92
126
98
105
87
105
103
144
67
56
146
91
55
67
79
178
122
101
152
92
126
110
100
92
77
79
56
146
67
111
99
178
75
138
56
178
86
111
152
131
123
74
92
67
110
146
92
74
103
127
100
79
119
86
55
92
55
122
135
169
164
69
110
124
112
134
92
92
92
104
56
137
110
55
128
144
126
128
137
128
136
68
91
112
111
128
106
138
122
119
109
139
126
131
110
68
178
69
105
144
92
67
126
126
144
105
84
69
55
128
105
152
93
110
126
132
117
91
119
138
126
56
130
92
91
123
127
74
105
146
147
110
99
146
158
93
110
144
158
139
102
92
55
165
168
67
110
58
103
101
122
135
68
119
124
128
98
79
55
144
84
75
92
110
104
122
56
105
148
139
168
97
123
86
132
93
105
89
126
92
110
37
83
180
152
108
55
152
97
79
68
127
113
83
138
67
55
150
171
55
69
100
123
91
105
111
111
141
128
178
95
92
101
77
136
144
114
120
98
105
56
122
144
179
37
67
56
112
127
118
126
106
178
109
134
127
128
105
79
138
122
127
105
138
55
106
117
55
139
110
79
95
138
105
119
115
105
128
99
83
95
92
55
127
83
67
127
178
93
55
55
138
138
77
67
73
123
68
110
97
103
97
154
92
126
163
146
68
92
110
126
123
79
92
91
91
131
68
99
142
99
67
122
136
93
78
68
148
92
138
93
99
99
92
67
92
145
102
37
131
92
178
146
139
84
144
104
104
104
91
86
178
37
37
146
110
100
92
128
92
117
99
106
55
55
110
163
122
127
126
131
95
83
58
165
93
79
102
110
75
56
144
56
152
119
126
95
103
92
105
147
86
122
138
55
152
164
163
74
74
116
56
130
138
165
67
105
56
118
110
78
92
93
128
147
99
152
105
106
169
137
126
93
104
58
122
146
68
75
92
99
119
144
138
128
130
169
111
151
75
55
86
115
138
109
149
138
178
91
99
77
102
55
139
56
105
119
139
136
37
144
127
102
75
67
67
110
92
93
144
139
129
111
98
123
56
110
144
125
58
86
122
110
93
74
55
93
111
171
93
56
122
93
58
109
68
91
58
127
105
37
123
105
146
138
123
93
122
144
132
165
136
140
92
37
163
55
79
37
126
75
93
162
126
103
67
154
124
178
55
84
56
93
126
55
124
111
94
92
56
120
142
103
178
103
126
135
123
169
129
111
119
123
122
67
91
103
163
55
122
105
110
178
104
55
92
97
102
128
104
140
103
56
110
126
104
93
123
93
100
138
79
137
106
138
92
111
140
127
95
81
37
140
122
37
110
105
67
169
101
165
162
110
55
92
128
146
146
139
88
110
79
79
104
91
157
128
158
105
37
105
91
138
98
126
109
79
104
67
93
37
110
148
138
138
122
122
178
77
119
37
139
92
127
92
139
105
163
84
98
178
127
138
95
111
104
87
103
128
169
110
110
95
95
126
144
144
152
131
139
79
92
182
100
169
119
144
122
139
37
106
79
75
67
140
55
152
55
146
122
55
109
107
92
114
127
126
120
55
128
127
92
139
55
97
74
56
68
92
122
126
55
137
100
107
55
55
55
163
92
110
56
74
92
165
122
71
152
104
140
123
126
55
105
84
146
130
126
169
55
83
122
105
140
37
91
92
104
72
55
139
119
144
102
119
110
67
169
92
103
126
102
118
146
156
158
127
92
138
126
111
168
162
126
99
84
119
127
55
67
89
111
92
132
138
92
138
55
104
105
104
67
69
178
114
152
67
112
107
147
97
93
182
105
130
77
126
58
97
86
88
130
110
106
118
128
119
139
179
128
93
105
81
92
78
89
55
67
69
139
92
92
139
56
110
58
127
110
110
130
114
92
91
111
98
110
79
101
110
148
93
138
144
75
109
108
138
80
137
77
124
111
130
152
115
128
105
126
132
86
122
92
152
129
138
171
122
79
140
134
55
110
105
140
138
119
92
55
105
92
56
107
165
160
180
144
86
56
55
126
111
144
107
67
104
109
152
124
95
136
58
79
55
106
67
58
100
79
75
103
55
105
126
104
144
86
103
178
126
107
93
84
178
162
110
77
126
129
138
113
165
111
158
93
146
126
92
146
68
127
126
55
92
68
109
126
67
135
93
37
55
67
138
134
92
58
132
99
67
139
149
168
122
127
136
69
112
146
92
55
117
111
104
67
94
55
120
69
126
129
105
122
58
168
178
92
138
68
67
126
37
99
132
171
56
86
55
77
138
120
107
109
56
92
93
119
119
126
104
37
79
126
127
178
58
138
135
55
152
138
69
67
146
37
134
126
112
99
55
122
83
127
126
132
103
86
77
117
110
55
126
79
119
102
58
138
152
105
105
123
152
55
93
56
95
92
169
122
56
138
101
37
138
74
68
93
69
144
93
94
58
148
110
95
126
110
37
91
67
110
103
127
55
144
93
122
81
127
165
164
92
138
146
91
126
94
92
37
123
56
69
156
55
58
140
56
110
98
109
138
122
58
152
123
55
103
67
146
163
101
75
67
105
110
109
79
136
92
92
145
163
58
110
142
55
138
132
178
86
139
92
75
115
156
69
138
75
102
79
93
92
126
171
92
92
122
77
91
123
37
146
92
101
110
100
148
105
126
56
144
110
87
138
69
99
97
120
103
55
55
110
122
95
75
110
55
134
122
73
81
131
56
91
138
112
111
104
104
37
138
146
37
69
131
152
68
67
92
37
110
55
122
138
138
169
120
169
67
104
152
111
105
89
92
89
139
37
86
68
127
55
123
77
127
139
58
108
124
138
169
142
58
105
120
93
110
103
83
126
130
58
110
111
123
124
152
79
77
98
105
83
91
103
76
127
110
152
105
110
110
109
132
123
56
132
111
136
128
132
123
104
56
92
122
86
152
77
55
79
37
91
56
84
105
104
67
55
110
93
101
146
122
100
115
110
147
131
93
105
139
130
86
80
103
37
126
91
169
56
110
56
97
86
92
110
178
93
99
138
106
55
171
188
55
86
122
93
77
110
123
169
163
152
55
146
104
84
92
56
93
109
92
79
141
126
139
122
188
158
180
122
180
92
128
58
79
120
105
105
101
138
58
124
64
136
144
140
169
85
122
149
178
56
126
104
110
92
110
126
88
100
97
110
102
131
107
83
92
141
69
152
55
67
110
160
92
86
131
169
139
92
122
139
93
92
97
104
92
160
122
106
171
69
100
93
104
100
93
110
105
67
56
140
103
114
74
140
138
110
56
138
110
110
101
111
126
68
102
110
103
91
111
93
106
104
122
152
58
120
55
109
123
108
100
105
86
156
104
64
110
92
163
178
109
86
122
168
126
105
92
138
74
74
146
129
124
127
87
99
119
137
74
100
56
74
67
104
126
122
117
105
178
127
69
111
143
91
91
55
105
146
55
110
180
178
109
84
93
144
138
68
58
93
123
169
110
97
92
55
67
122
67
67
126
86
93
79
126
104
92
121
144
140
92
127
127
109
109
93
118
89
93
58
77
162
104
125
126
101
56
55
122
139
93
104
134
178
127
55
103
171
106
110
122
148
99
110
171
146
134
79
68
104
58
107
124
110
67
92
165
126
37
169
95
126
137
126
128
119
169
120
58
148
139
122
128
178
97
79
55
92
104
86
123
128
92
92
122
99
141
182
110
100
110
126
107
144
68
56
97
105
132
106
128
104
55
93
126
144
74
178
91
68
76
99
58
58
110
92
139
122
138
37
69
138
104
121
126
99
167
86
110
136
37
122
130
131
137
103
111
69
83
144
122
139
55
111
79
107
92
92
79
144
107
101
146
58
67
67
128
67
56
128
56
139
56
101
110
127
37
114
92
104
79
128
77
123
142
67
149
152
114
126
123
119
67
122
77
131
92
107
105
119
102
104
58
131
127
92
160
156
58
92
85
107
104
122
105
110
112
56
105
86
67
56
92
104
148
102
105
122
104
134
84
114
118
128
56
92
126
56
171
179
123
37
37
67
56
122
126
152
37
77
37
107
110
171
92
110
136
37
93
55
124
81
144
104
131
134
128
87
69
37
110
109
124
84
122
139
105
138
116
168
98
118
104
92
138
122
147
102
138
67
55
83
55
114
126
110
100
128
138
131
103
168
114
37
99
162
169
126
104
138
55
86
139
97
112
97
92
55
77
119
124
105
69
123
67
77
79
112
147
146
37
91
37
98
61
126
67
107
93
102
107
106
56
93
119
126
122
93
92
58
168
106
122
108
139
55
93
110
69
120
99
104
37
144
130
105
93
134
122
117
105
95
126
126
69
118
109
77
92
104
67
126
104
152
99
138
110
149
111
93
132
110
99
84
86
110
140
91
136
64
138
122
133
111
178
114
69
112
122
127
139
98
83
104
128
86
56
144
55
146
126
152
131
56
110
92
92
122
74
178
110
122
144
140
140
93
104
139
122
55
111
126
138
144
105
75
126
126
93
55
67
104
140
122
169
77
67
37
141
144
109
168
37
94
134
182
146
83
86
77
92
169
113
107
105
103
88
111
152
126
127
92
56
67
105
146
119
86
132
105
64
86
144
111
119
109
67
168
109
117
126
58
127
144
113
103
92
88
139
67
146
138
127
56
138
104
75
105
110
120
67
106
78
144
92
146
37
130
124
123
178
83
75
146
138
164
122
110
139
103
92
138
92
92
106
127
143
93
86
138
119
178
55
92
74
37
140
114
152
110
178
56
120
110
67
160
138
67
86
124
109
126
121
119
55
119
92
118
92
79
75
56
138
136
77
122
169
97
91
86
109
138
93
92
92
68
104
56
67
126
180
142
136
58
171
164
55
169
86
141
81
117
92
130
128
141
112
110
171
157
110
126
55
104
80
110
86
92
139
146
87
164
74
151
139
134
140
56
163
144
100
105
119
122
67
119
130
92
105
67
57
152
110
145
99
37
77
128
58
158
105
152
146
127
69
145
105
56
122
105
92
108
120
136
169
158
93
68
89
124
122
140
75
56
92
144
126
149
110
56
37
86
146
158
92
55
113
77
86
109
55
128
128
107
87
83
103
138
104
105
101
164
104
135
79
146
109
113
140
178
111
105
146
37
139
134
109
102
67
95
69
138
55
55
138
55
128
158
92
138
79
127
111
189
114
138
55
67
138
104
148
138
102
105
108
56
127
148
105
140
123
126
139
122
128
128
160
124
171
92
123
93
134
58
75
134
139
151
78
110
131
126
92
122
55
92
102
91
123
97
37
93
128
104
91
126
160
74
158
104
100
86
125
138
119
105
122
135
122
122
67
69
136
92
111
138
55
102
67
110
117
92
158
99
56
122
74
104
84
86
55
100
122
178
93
138
56
178
88
139
126
120
141
107
111
77
150
101
56
110
75
102
102
92
122
139
119
91
55
169
74
97
120
91
74
127
97
138
112
105
140
67
74
142
69
164
109
146
92
109
92
71
93
123
55
138
122
171
101
122
55
104
86
110
37
100
100
158
152
152
93
92
122
102
122
100
102
106
55
178
105
108
110
103
92
178
144
144
67
124
69
128
138
122
126
37
152
69
139
93
138
119
84
92
58
105
92
122
148
171
145
127
124
92
110
148
138
92
126
134
92
55
169
104
126
122
109
110
182
99
83
110
37
132
77
105
83
55
102
110
55
139
164
104
171
79
93
119
69
126
101
118
56
112
119
122
138
136
56
128
119
105
168
126
105
92
77
141
105
81
134
91
67
128
178
145
79
146
169
109
91
55
95
56
139
95
79
79
122
56
92
55
105
138
144
79
105
132
118
102
93
37
83
125
72
169
92
124
67
104
56
163
97
110
140
138
171
128
67
136
95
134
126
127
110
79
140
178
55
142
92
111
55
119
67
105
75
110
93
56
123
86
92
121
111
37
131
126
105
55
107
180
92
67
119
110
99
108
79
104
100
111
144
37
126
144
139
55
139
91
117
140
92
181
55
99
178
100
98
150
132
92
92
92
146
99
142
86
142
148
77
126
171
110
92
122
178
122
97
169
146
79
139
92
152
67
79
199
139
134
144
92
138
139
138
164
105
151
100
75
144
86
139
139
107
111
127
139
92
55
149
127
93
163
169
127
92
67
122
67
69
92
77
142
92
134
72
99
105
37
138
105
92
92
93
77
128
110
110
55
119
92
127
110
139
123
69
146
55
94
162
126
104
37
122
122
105
178
138
111
84
37
132
105
127
117
77
126
55
93
132
114
92
105
126
93
128
131
75
79
83
158
123
92
75
146
132
111
102
93
130
122
164
69
37
56
58
122
79
128
56
126
91
67
69
120
67
105
37
92
105
74
178
56
126
144
121
37
120
126
92
122
139
110
110
67
197
92
104
169
77
137
112
123
93
56
67
138
96
138
86
128
158
105
138
68
128
126
109
152
172
105
134
96
81
178
178
110
121
55
129
165
101
109
55
139
92
99
99
69
88
144
93
138
68
144
138
142
92
126
111
55
112
148
55
144
99
105
67
132
92
126
111
138
124
98
79
123
99
92
122
122
74
180
83
110
122
92
127
101
107
122
114
110
118
55
122
79
55
95
67
79
138
99
105
138
109
110
92
180
109
122
109
84
107
114
77
109
99
169
126
68
138
37
163
110
110
79
139
89
58
168
110
126
97
132
122
69
134
115
138
111
112
105
111
55
123
106
98
169
111
110
77
126
92
136
144
93
104
92
58
178
138
107
169
56
110
92
69
79
108
105
110
105
138
37
106
105
79
86
178
105
56
126
131
122
127
99
122
140
93
97
126
92
67
182
126
151
124
109
122
58
121
152
58
58
146
58
79
118
130
192
99
122
123
107
149
143
107
55
127
77
56
110
122
131
110
122
138
144
92
121
55
131
134
122
67
73
138
138
180
180
55
178
144
92
111
107
110
109
110
105
67
110
126
138
105
74
104
128
93
139
37
144
178
122
67
56
55
128
100
140
104
140
128
138
146
101
146
138
138
99
140
131
97
110
55
104
139
112
92
99
37
83
107
136
105
105
93
99
115
103
69
107
79
148
104
178
86
56
134
129
92
67
102
122
55
111
178
67
58
77
122
37
139
106
126
68
105
111
67
122
128
99
131
91
110
149
128
92
130
110
169
110
114
110
110
122
68
126
126
68
168
110
103
93
104
110
122
129
127
67
77
126
67
93
93
111
128
139
129
97
56
139
111
126
122
55
122
119
68
92
144
104
146
102
122
86
171
93
110
121
126
105
58
117
139
86
122
129
116
110
138
136
139
92
91
136
104
55
139
149
130
168
105
87
79
119
131
79
67
131
69
105
92
97
86
79
67
111
83
122
180
91
104
105
111
116
128
92
86
75
92
138
69
69
109
122
122
126
104
115
122
146
139
137
111
123
110
56
158
92
112
97
93
169
128
144
93
102
79
112
69
127
109
78
162
138
56
131
67
110
110
105
67
108
79
104
99
105
74
110
84
56
56
146
139
103
134
104
75
122
72
126
103
84
55
139
132
169
103
138
128
92
69
134
37
128
76
134
144
93
67
55
86
159
128
122
93
163
104
72
99
101
110
92
139
93
64
86
105
122
37
138
108
99
105
110
55
106
55
122
111
102
128
93
146
126
91
91
84
64
122
100
92
139
109
56
68
128
125
37
120
122
110
139
148
178
119
92
128
37
105
58
122
127
110
130
130
178
122
165
78
104
92
67
58
165
129
122
92
139
165
152
110
162
81
81
92
93
67
107
131
142
126
128
146
97
127
103
67
195
127
128
93
56
92
95
152
122
79
55
178
110
56
86
79
122
74
138
86
127
132
123
55
103
105
127
178
97
132
107
91
139
130
146
75
152
128
122
105
126
135
126
86
101
92
58
111
127
56
138
56
178
58
86
67
67
99
74
122
55
142
128
168
114
58
124
126
105
139
92
83
86
84
110
122
115
118
55
105
106
124
104
138
92
163
164
131
126
158
152
68
92
58
92
126
126
162
69
55
169
67
55
139
86
55
77
105
140
83
92
127
55
103
104
110
79
93
158
122
178
105
105
68
106
134
99
132
119
124
64
103
110
119
178
140
171
139
67
122
126
163
124
104
55
113
110
86
145
83
124
74
138
67
126
126
104
74
77
105
110
92
37
93
127
99
119
56
111
152
122
171
126
128
55
126
156
79
91
107
141
111
140
110
152
126
138
178
171
103
79
37
138
102
138
144
92
118
67
109
92
92
122
178
55
138
122
67
105
69
79
140
126
68
138
124
152
122
101
122
92
106
104
115
79
122
128
78
92
122
84
113
131
86
130
79
37
93
123
139
152
122
55
122
134
126
122
56
138
56
142
104
110
67
123
58
140
37
158
84
178
79
131
105
103
92
68
91
119
110
95
95
169
100
101
123
114
114
79
37
171
152
92
105
126
169
56
104
69
150
106
68
115
104
128
122
103
92
58
55
171
109
84
178
92
97
89
69
138
37
92
134
178
69
55
69
74
104
122
102
37
138
127
129
127
118
102
138
78
140
127
171
138
122
58
160
105
122
103
132
67
79
128
93
105
37
115
111
92
125
140
74
109
110
104
138
92
92
111
93
92
103
134
122
124
37
67
169
103
111
81
97
122
69
37
119
86
55
122
58
56
119
68
99
127
93
104
178
37
55
68
92
180
145
105
138
105
105
89
92
128
69
56
91
148
92
110
109
103
75
75
171
55
138
126
77
124
56
158
105
178
97
87
111
92
163
111
98
103
138
136
138
146
99
98
156
75
104
122
178
86
105
56
152
144
144
111
122
67
139
67
105
100
178
104
126
91
37
77
58
67
74
178
126
122
127
55
37
79
126
124
97
152
145
56
126
148
92
167
169
178
112
92
69
122
141
92
74
152
108
113
139
68
67
105
127
69
77
110
58
119
104
109
105
92
158
127
122
139
123
100
92
111
138
72
148
93
92
56
126
69
105
122
119
139
122
92
75
55
92
110
92
111
99
103
140
152
99
92
67
92
112
128
126
144
119
92
126
110
55
105
152
128
86
37
124
146
103
126
144
139
144
169
126
179
105
114
58
37
68
83
92
122
92
77
110
103
74
110
128
97
92
69
104
102
75
127
56
55
104
148
55
180
122
146
112
103
171
56
55
119
77
97
92
110
105
152
55
91
107
121
128
74
91
138
68
105
56
99
68
144
131
58
199
105
139
147
178
146
122
118
103
109
69
124
119
110
152
128
58
124
178
55
110
92
89
92
126
92
115
105
93
55
111
120
132
112
138
139
92
55
126
160
92
105
56
120
138
123
122
178
130
122
135
105
122
112
105
113
139
110
77
139
119
162
92
104
93
55
77
126
140
105
121
79
144
95
67
102
119
119
75
112
127
127
126
55
55
67
122
138
105
122
168
109
140
67
168
110
92
110
104
138
124
89
162
103
122
118
128
92
67
86
92
138
84
171
91
178
77
56
146
91
119
74
122
105
104
69
152
105
37
75
89
58
79
55
106
128
92
107
122
124
158
84
122
55
92
119
67
163
56
104
118
98
73
145
141
91
126
75
126
142
101
146
128
77
92
105
132
77
128
131
163
93
55
123
123
100
178
168
136
126
124
74
83
138
126
140
134
122
162
138
56
138
126
77
103
127
103
58
138
103
113
67
91
69
55
105
107
109
171
92
92
92
126
92
144
122
55
92
104
37
67
93
122
144
103
122
86
168
92
122
58
67
58
122
124
152
77
146
138
56
122
137
105
94
92
109
69
182
114
56
92
153
148
122
55
152
92
128
75
138
144
119
110
152
144
121
77
135
93
148
91
163
137
146
128
69
138
92
112
99
69
122
55
98
105
120
67
168
58
103
55
138
131
93
117
122
102
78
99
129
104
58
56
109
111
93
79
122
55
55
123
93
134
92
131
107
58
139
138
86
110
115
105
110
138
139
55
104
103
144
55
55
109
124
92
55
128
144
138
67
126
56
131
105
138
124
83
145
79
130
146
110
136
111
79
178
103
145
93
122
126
92
55
110
123
56
105
180
144
110
134
144
93
167
56
69
109
139
55
92
146
92
120
178
126
93
105
110
125
144
126
56
152
160
99
69
105
77
56
110
128
107
86
122
93
55
163
127
58
37
92
138
77
111
98
126
134
98
126
126
55
56
164
144
132
80
139
128
128
144
55
134
77
79
199
110
178
126
139
152
56
92
134
92
55
75
67
110
111
178
105
55
105
126
130
110
154
105
55
92
112
104
120
74
92
126
104
92
125
122
101
114
104
81
144
131
75
92
136
105
122
152
144
178
109
99
67
126
105
139
145
89
124
56
138
111
107
92
93
138
169
105
67
110
92
122
105
123
135
134
93
125
110
77
92
105
93
86
124
41
136
58
122
122
37
74
56
144
98
148
107
81
55
37
97
178
92
113
132
55
104
139
146
98
93
102
103
110
138
108
112
95
105
107
180
139
83
105
92
138
55
105
134
138
104
107
109
139
100
167
110
136
74
152
126
55
126
126
104
79
92
110
105
74
134
68
98
74
112
77
92
152
92
99
108
58
123
167
92
114
104
123
112
138
99
92
124
146
58
106
67
55
93
122
56
126
58
134
126
84
139
67
127
138
56
93
86
93
67
99
83
132
138
178
56
126
92
92
88
137
110
69
55
126
140
72
152
110
100
84
167
126
55
67
93
124
55
58
138
163
56
110
56
138
122
112
132
104
69
138
56
56
111
138
86
111
146
127
169
105
108
92
92
104
55
110
107
118
56
104
139
96
139
169
61
171
86
110
81
69
195
105
127
134
122
138
74
131
128
93
81
69
139
119
56
67
119
56
118
55
86
119
126
92
163
67
169
115
37
132
108
37
124
93
131
117
93
108
145
74
68
92
134
105
171
148
84
37
126
112
55
138
136
56
110
146
128
91
144
77
141
74
93
105
58
111
126
99
92
146
92
58
86
110
125
104
92
92
126
138
56
55
67
100
105
67
168
127
110
127
152
92
126
86
112
138
81
119
69
122
131
105
37
139
111
138
101
110
77
68
79
110
123
93
56
158
104
67
105
92
158
37
104
99
55
126
110
105
86
165
55
134
102
56
105
92
92
123
67
152
111
93
109
144
158
144
69
93
92
144
126
55
177
140
148
99
92
112
103
144
105
138
112
37
92
122
37
79
158
127
37
92
55
130
96
92
56
139
99
103
138
104
111
126
123
110
55
97
122
138
107
147
93
169
126
89
84
107
96
67
56
83
37
74
139
119
55
55
89
105
105
122
91
89
108
67
133
92
146
112
89
93
144
55
110
91
165
109
120
140
55
144
119
37
122
146
138
55
58
92
171
102
69
105
122
152
112
178
92
148
86
124
105
138
160
94
112
178
144
127
144
122
105
37
55
105
146
126
110
86
92
105
136
126
146
55
122
128
83
126
126
37
92
108
107
99
69
104
105
105
123
103
130
152
152
110
91
89
182
75
112
149
83
117
55
123
55
120
139
105
105
135
126
122
80
148
93
139
122
92
169
144
122
100
119
122
138
160
100
105
138
122
110
56
103
152
92
93
105
92
148
106
126
112
93
92
109
55
126
169
128
122
126
178
127
120
122
110
102
56
128
37
178
69
55
168
104
138
122
92
138
139
93
105
92
83
126
103
122
109
160
86
69
120
55
144
93
138
68
107
139
67
72
110
83
75
55
123
134
98
138
104
103
126
79
134
92
67
104
111
73
37
146
55
126
78
138
136
145
116
123
91
134
122
119
91
93
144
104
126
126
118
111
126
55
119
69
152
119
138
146
94
92
83
58
99
55
122
110
122
56
138
108
138
110
123
92
102
131
109
139
103
128
119
92
58
178
110
37
110
86
55
144
55
126
100
115
124
152
136
107
55
92
69
102
171
123
58
67
105
144
158
136
124
135
122
86
97
98
127
92
147
144
106
58
79
77
64
110
69
108
74
67
55
56
69
126
144
92
91
58
111
93
92
119
92
140
91
58
122
92
124
55
37
146
56
168
93
122
150
140
141
86
110
103
139
92
83
92
74
55
126
92
199
58
124
67
86
120
152
122
37
58
122
105
119
103
105
126
145
126
122
119
58
55
55
152
100
110
122
169
110
152
127
105
138
122
105
107
93
94
115
127
80
67
109
69
91
91
123
92
134
152
127
122
102
126
104
105
142
178
92
55
144
122
144
37
122
123
93
111
74
126
56
117
169
56
128
110
109
130
92
92
92
134
55
55
106
99
56
84
179
122
110
122
56
152
132
67
67
79
127
67
168
141
123
58
117
86
86
92
55
138
93
110
83
127
144
104
55
119
178
69
103
139
128
126
67
92
92
126
55
126
127
99
117
112
74
145
138
58
105
178
91
121
123
105
148
92
127
74
122
37
109
105
56
122
178
126
139
123
171
125
55
37
67
104
92
58
92
163
95
37
123
128
144
92
103
160
134
152
152
122
134
56
92
178
83
100
132
138
129
86
67
158
132
75
55
119
117
55
138
117
67
168
158
107
148
109
147
67
75
69
92
67
56
86
126
148
122
111
113
138
110
142
95
139
154
128
139
56
56
104
127
74
104
140
92
119
68
37
99
92
93
77
55
92
123
92
67
69
152
77
37
152
89
110
56
110
122
126
93
77
98
122
122
152
144
37
135
74
131
112
92
109
105
55
67
98
56
108
91
69
105
109
127
138
123
144
126
109
77
110
169
56
169
119
105
110
84
105
55
162
104
75
86
122
55
122
93
132
77
104
76
105
122
105
67
127
55
84
93
122
144
122
77
56
178
105
115
135
84
138
56
58
110
55
168
75
72
79
55
67
78
134
105
132
144
144
139
122
104
37
127
102
100
98
123
93
105
99
131
110
56
55
140
58
67
139
110
138
105
152
105
139
119
115
104
165
138
77
105
105
124
56
110
178
108
104
139
100
119
105
138
92
77
91
77
91
55
89
144
55
105
56
178
97
79
112
127
55
124
96
178
169
58
132
58
101
110
114
56
139
148
126
178
92
75
92
123
122
138
92
178
178
58
101
152
37
104
152
92
104
112
123
109
111
122
86
58
55
127
134
104
195
86
99
128
110
98
134
83
138
55
128
55
127
93
99
90
55
163
37
106
105
178
126
92
95
122
110
55
92
93
37
103
68
105
56
149
131
88
55
169
93
103
92
150
114
178
58
92
92
122
80
92
138
138
122
163
92
119
124
93
126
105
126
110
67
117
138
99
56
131
55
83
121
67
101
92
131
109
103
135
92
75
107
126
169
37
127
111
105
110
115
123
132
126
119
168
138
105
162
86
105
126
105
55
92
105
122
92
79
79
112
146
127
95
138
92
144
117
144
122
119
128
55
92
122
122
105
68
55
126
126
77
67
126
124
69
160
55
127
139
92
114
75
119
178
127
126
107
106
138
126
55
67
56
124
104
110
109
106
126
107
145
69
75
104
126
86
93
68
105
124
56
100
93
132
55
111
123
114
105
165
111
178
152
93
117
130
127
55
117
123
110
167
104
124
105
126
126
178
144
156
134
110
122
169
122
140
138
112
67
122
138
114
104
127
126
169
117
91
103
55
56
99
152
139
67
93
105
67
122
121
126
138
122
112
88
126
92
105
105
75
92
122
92
105
148
69
92
107
74
122
169
134
146
91
77
91
92
97
55
132
86
178
93
110
126
142
68
58
139
107
97
119
126
79
128
122
105
96
68
92
127
37
122
146
111
114
67
108
130
105
55
119
119
92
86
92
105
128
107
97
66
86
67
67
138
91
103
114
124
92
124
134
67
111
122
56
83
92
103
128
178
105
118
110
119
110
147
58
95
138
93
120
107
139
77
123
110
125
106
92
98
138
110
137
56
104
67
123
69
83
123
152
67
58
127
112
56
110
131
37
107
138
111
122
67
109
105
126
103
132
139
138
55
152
119
55
152
58
92
122
92
55
79
109
37
110
139
67
105
92
146
55
91
75
56
99
169
111
56
110
89
55
152
139
178
89
144
77
109
123
92
138
110
111
88
79
110
93
56
139
100
122
102
110
178
123
100
112
93
140
107
92
109
79
120
126
94
103
122
138
127
143
105
79
110
105
104
138
137
93
134
124
92
104
162
104
56
93
110
67
110
119
37
123
93
134
104
109
105
98
144
126
126
146
88
105
178
88
118
123
123
132
86
126
111
100
110
120
104
158
55
124
58
169
92
128
141
141
138
144
126
92
107
119
126
122
110
55
122
105
118
120
86
92
92
93
37
100
127
77
79
55
79
104
55
103
104
56
67
169
110
134
102
84
103
74
67
138
128
126
93
55
56
37
103
136
103
178
180
105
105
120
124
37
178
37
99
144
104
136
107
147
126
89
84
144
68
74
58
112
127
134
122
108
126
122
131
131
141
117
105
152
105
136
178
68
126
37
158
55
93
169
144
125
68
84
75
93
56
92
104
146
67
91
105
99
144
58
75
112
98
148
104
92
138
124
79
123
137
144
120
92
138
126
122
127
124
67
136
138
37
138
101
139
146
104
92
64
138
139
119
119
37
105
151
56
152
126
69
122
92
137
138
67
105
55
152
151
104
103
138
122
136
58
119
119
120
127
107
130
151
127
81
100
136
128
91
92
162
144
56
37
56
143
117
104
138
92
105
37
140
164
126
123
77
100
67
118
132
37
104
93
192
93
55
119
178
142
105
123
110
92
112
56
128
91
152
128
92
110
122
135
99
122
122
110
84
67
103
119
92
138
109
138
110
92
122
58
103
162
91
158
101
110
110
138
127
128
120
122
56
144
112
105
125
104
67
119
103
126
37
146
97
96
165
67
37
178
104
86
56
97
122
67
122
144
178
98
80
111
110
91
83
93
110
145
164
130
104
119
92
100
55
93
123
92
169
99
110
77
37
112
93
93
101
107
120
126
55
74
112
68
109
105
86
114
93
92
138
105
134
146
122
119
105
140
119
105
93
69
86
93
97
93
178
126
92
80
127
98
56
55
79
74
93
97
37
118
92
165
119
92
109
92
55
95
56
130
164
55
123
119
84
122
84
58
148
104
92
124
163
147
56
122
92
171
110
84
129
55
136
138
86
98
55
104
109
123
97
112
137
119
75
122
93
110
110
75
37
127
110
92
114
128
69
92
178
118
86
97
138
138
124
122
109
67
58
93
138
128
146
138
37
104
55
96
105
92
110
55
138
101
110
106
110
121
92
127
178
67
56
119
126
92
126
98
87
92
137
92
158
55
138
122
120
105
126
92
140
97
136
127
84
152
132
122
79
122
124
140
138
119
110
117
127
74
162
108
55
86
147
171
128
126
104
105
136
92
148
124
140
132
92
134
75
110
86
152
99
152
130
168
117
127
119
97
84
55
144
122
92
126
152
139
110
123
37
128
169
67
119
124
103
67
67
67
122
37
117
67
92
105
112
56
138
72
128
139
79
141
162
128
69
83
128
178
152
93
92
127
138
122
111
56
93
122
105
152
126
105
92
92
124
149
91
126
109
104
122
103
105
55
131
95
86
128
169
138
112
55
122
56
139
138
75
93
148
55
110
93
139
87
55
92
67
126
122
122
37
37
141
103
163
115
119
106
67
101
37
128
148
110
56
92
107
105
126
122
110
105
111
152
112
165
105
144
105
92
140
110
77
92
130
122
109
93
93
138
109
109
91
110
55
132
140
93
126
55
86
55
169
126
69
158
103
132
56
105
139
128
93
92
123
93
107
127
163
92
110
86
139
111
110
126
64
139
136
128
126
178
107
95
122
67
122
108
138
138
99
126
138
126
77
97
105
56
92
138
127
105
110
158
68
118
109
56
169
83
119
92
97
67
104
119
119
104
103
138
93
117
180
120
69
138
83
55
105
104
126
138
163
93
163
109
92
126
137
75
148
136
104
37
92
79
127
92
92
144
126
101
107
138
76
122
98
146
98
93
124
92
128
120
88
128
74
104
92
127
146
105
110
139
104
138
69
138
55
92
144
105
126
152
140
79
122
98
56
105
168
122
107
128
58
100
37
56
144
126
105
105
119
122
74
111
126
144
129
105
105
67
92
98
138
122
140
75
67
84
55
122
93
122
146
114
79
110
110
138
110
119
110
130
55
128
148
135
114
127
114
107
129
83
98
152
134
104
92
107
105
105
110
169
110
139
69
122
139
178
139
123
98
92
126
55
138
104
169
138
139
104
75
139
105
105
89
122
127
67
119
178
105
98
58
146
139
123
81
119
123
77
79
126
137
111
107
79
105
122
178
95
127
152
132
139
140
55
128
101
139
126
144
100
81
132
92
136
79
69
103
91
79
101
178
182
106
140
92
97
67
105
138
74
126
92
110
107
122
67
109
152
189
128
126
127
69
58
122
128
77
103
77
99
104
109
103
123
123
147
146
56
110
103
98
138
104
92
93
123
104
132
74
99
105
55
110
77
80
104
37
92
37
67
122
113
58
126
148
92
171
37
89
152
124
58
55
91
55
74
55
55
55
105
110
104
55
69
105
171
130
98
102
139
92
67
37
55
103
105
152
120
144
56
122
127
82
123
122
55
105
126
93
144
144
37
110
104
92
110
111
110
126
138
158
96
67
55
110
67
91
104
109
87
110
119
123
126
117
92
138
134
55
144
126
96
56
146
68
119
139
130
146
37
84
180
139
67
134
111
102
105
79
141
77
104
131
37
139
144
126
86
118
122
92
178
104
92
119
122
86
122
122
99
120
68
122
79
55
69
109
171
97
127
117
67
105
171
56
169
55
126
123
103
144
65
105
104
122
92
138
69
104
132
138
148
93
126
107
126
95
79
105
92
167
109
122
85
79
55
163
131
111
55
132
37
128
123
146
146
79
105
139
56
127
148
56
138
123
67
128
84
146
128
127
138
105
92
178
103
86
68
100
69
178
93
128
138
126
117
91
56
126
87
138
147
120
67
92
91
119
128
105
74
55
128
80
110
122
86
122
74
134
111
122
165
120
105
126
92
122
55
93
91
92
152
93
55
104
101
122
104
122
124
124
75
103
91
100
124
101
55
122
144
152
105
142
85
112
144
152
74
121
86
58
91
154
110
153
55
122
111
168
55
92
67
105
110
99
55
107
120
109
92
130
126
112
144
139
69
77
123
139
69
128
119
93
127
79
55
55
68
126
123
92
126
151
119
104
55
92
55
132
118
127
122
126
100
92
104
104
122
89
93
126
171
67
144
123
128
114
74
137
138
77
122
69
37
100
105
104
77
69
126
131
104
139
104
139
69
138
58
139
140
93
111
105
37
79
138
178
111
93
146
148
84
169
158
110
68
127
110
80
104
104
93
137
91
163
92
168
139
134
55
134
92
56
122
110
118
55
163
98
150
140
55
68
146
110
67
95
152
122
181
67
100
138
56
77
138
55
55
91
128
136
83
125
110
104
105
138
134
58
55
123
55
74
111
104
110
56
67
107
86
106
69
94
37
55
104
122
122
86
37
67
146
122
86
126
101
75
120
92
129
104
105
74
101
126
105
138
100
139
126
164
164
134
110
67
58
55
105
91
74
110
67
126
107
107
98
178
67
92
169
75
122
91
126
67
55
104
92
93
124
128
128
103
103
158
79
122
131
133
119
91
130
110
93
134
134
86
109
171
55
105
83
74
110
110
178
102
104
112
55
92
93
127
163
77
144
123
103
105
67
105
106
37
103
92
122
94
105
92
67
122
122
122
56
55
146
86
58
114
98
122
122
119
144
103
58
148
117
140
144
81
122
103
113
148
98
55
152
165
126
124
92
95
126
110
134
56
126
123
167
101
123
89
91
56
74
178
138
67
105
67
126
110
79
56
139
103
99
110
110
122
92
93
83
122
109
58
138
147
124
178
139
126
122
93
92
105
180
91
151
126
86
139
145
126
110
37
97
64
92
125
117
55
105
91
110
136
146
128
120
69
127
98
105
56
132
104
92
37
107
67
58
127
110
120
86
126
130
158
55
171
99
148
144
152
101
139
67
139
180
58
104
81
102
163
56
126
127
98
126
168
103
144
124
146
92
81
122
134
80
91
126
104
94
105
67
111
69
110
180
119
99
139
122
93
56
87
123
178
67
95
144
110
140
109
115
130
91
140
93
132
105
144
86
84
146
138
144
118
126
56
132
99
122
105
137
124
146
127
163
134
97
126
84
105
67
55
105
112
55
105
122
41
89
37
141
122
55
91
110
109
110
69
138
88
93
127
128
140
98
118
67
124
138
79
122
79
122
124
122
130
79
140
67
56
138
86
134
92
105
120
165
99
138
79
152
56
37
105
128
105
78
69
122
126
55
84
55
178
93
112
105
126
103
110
114
129
120
105
126
92
178
92
55
58
109
152
152
56
81
143
55
137
122
92
144
148
68
129
138
110
145
75
106
97
91
112
126
77
140
56
139
103
132
108
117
127
92
152
92
58
122
151
109
123
37
100
126
58
77
77
110
79
137
55
92
37
146
103
79
67
114
122
138
169
121
122
104
83
114
79
75
92
164
167
86
93
83
58
91
93
146
99
114
93
83
77
127
99
74
103
126
124
127
127
83
55
103
79
122
83
92
123
130
105
55
77
131
37
92
86
122
55
135
122
103
127
124
132
86
86
122
77
110
112
178
116
160
55
138
158
152
126
55
67
111
92
67
124
105
55
75
37
139
67
128
84
105
101
108
132
83
152
120
119
114
110
103
104
104
104
126
135
58
131
109
126
55
83
110
110
109
130
79
110
138
91
55
123
110
152
69
138
126
56
92
92
123
138
105
148
111
126
86
37
149
138
128
103
127
119
123
144
126
145
67
105
178
58
126
139
104
104
92
122
178
88
144
79
92
55
112
58
134
92
139
37
138
92
126
146
105
67
89
105
138
79
119
134
97
92
126
117
126
122
105
178
122
118
192
127
135
86
55
104
119
55
144
58
92
58
58
127
142
77
171
111
97
92
37
107
92
101
67
111
75
148
101
105
56
74
178
139
128
92
105
163
123
124
122
127
92
67
56
178
57
81
107
138
132
119
127
95
55
136
144
144
138
142
91
142
152
119
105
129
55
122
136
138
58
138
56
122
130
55
178
92
104
146
152
99
152
97
58
111
111
138
131
55
128
150
99
103
92
144
58
99
110
114
83
104
109
91
147
122
126
138
146
131
58
132
83
103
131
94
110
127
55
158
99
140
92
178
138
79
122
92
56
122
92
92
99
134
84
67
126
37
92
160
178
67
91
92
69
111
152
104
84
124
56
92
128
140
169
105
110
139
74
128
92
123
108
55
92
107
67
94
89
122
68
178
55
104
100
110
152
148
95
110
126
119
152
119
126
55
67
126
91
83
37
56
126
122
92
110
105
55
112
156
98
74
104
92
117
67
107
171
141
139
92
67
126
86
134
163
105
134
93
146
144
55
144
58
123
138
139
55
122
110
37
56
93
93
37
92
169
91
79
84
55
104
178
104
139
110
103
55
127
79
91
138
117
55
121
68
109
126
104
122
169
55
122
98
139
55
75
138
67
92
117
56
72
103
81
178
165
83
127
144
88
88
164
152
158
94
146
91
104
138
132
122
123
92
88
56
182
127
110
146
135
100
86
178
114
92
99
104
138
128
37
107
128
139
105
75
114
105
55
171
122
108
104
111
134
163
111
92
55
110
144
122
97
144
146
142
127
144
178
171
55
144
92
125
55
119
123
138
117
122
163
55
104
103
105
126
92
128
91
104
105
140
168
37
105
124
127
128
105
127
122
139
138
99
69
171
118
104
55
144
123
92
110
178
67
131
139
75
92
169
126
55
110
58
93
81
126
123
144
55
86
109
86
75
138
37
122
144
92
114
58
122
104
171
37
100
169
104
152
56
69
169
138
86
131
101
171
104
143
91
110
69
55
93
127
92
158
99
37
128
92
67
92
178
105
105
122
134
109
124
138
58
93
98
93
104
110
130
37
110
79
88
67
118
105
93
148
123
104
69
131
67
93
92
148
92
91
91
126
103
64
131
104
106
92
110
92
91
105
122
99
104
107
127
104
126
75
126
131
56
168
93
107
101
97
127
110
58
56
169
112
178
122
138
123
119
92
102
169
146
127
91
126
152
99
86
83
128
145
37
104
119
110
89
127
122
110
122
92
69
178
97
93
122
139
122
137
92
104
79
144
110
127
126
122
87
122
139
67
69
128
92
107
77
142
148
160
130
92
126
55
75
104
92
86
92
92
83
56
109
152
137
144
119
122
182
122
104
74
119
127
104
144
86
122
168
58
104
104
93
123
152
77
110
110
55
56
146
67
77
129
171
122
37
178
148
68
105
127
93
37
55
144
140
67
160
189
138
142
163
105
37
77
91
77
148
92
192
55
86
160
68
84
79
138
126
37
37
152
124
146
104
146
171
67
92
127
37
69
171
104
55
122
138
137
146
74
138
92
102
100
92
112
89
123
144
128
104
127
55
148
104
92
72
86
104
91
83
67
136
146
111
123
122
111
111
132
131
122
110
134
180
69
169
94
128
122
131
169
135
97
75
105
128
158
67
169
55
150
127
107
148
139
111
37
104
56
91
119
111
92
109
69
132
122
55
67
122
95
84
128
139
110
146
58
110
169
92
72
126
144
109
110
107
96
147
110
122
124
141
108
150
81
88
138
128
110
67
122
139
110
67
98
130
105
126
78
69
104
100
110
103
144
77
110
74
134
167
104
97
146
110
105
128
148
138
124
86
99
77
128
83
55
110
55
122
127
122
138
104
79
84
105
55
142
99
111
105
93
105
134
69
110
138
163
139
92
79
138
56
107
69
92
127
37
56
55
144
126
105
93
178
37
69
109
127
110
92
91
89
126
67
92
74
58
79
139
37
160
74
110
93
108
92
56
122
178
99
77
105
92
77
56
105
124
110
122
124
98
130
91
112
55
67
110
94
75
92
74
86
93
122
124
122
79
69
86
77
127
140
136
105
127
92
109
86
105
92
79
92
75
144
129
109
92
97
83
81
95
144
104
101
103
139
140
91
104
127
99
105
58
130
86
127
37
87
123
144
130
122
88
55
112
144
135
111
122
68
92
128
67
124
55
103
93
158
69
144
144
109
149
144
110
182
152
123
148
138
104
77
92
138
58
92
107
106
92
130
104
138
97
69
79
110
146
72
104
67
56
127
117
99
169
117
109
55
105
99
139
124
178
144
95
126
109
37
178
55
164
56
122
91
110
110
92
105
139
55
122
120
126
140
111
126
130
124
140
105
104
134
111
139
79
105
110
92
77
99
130
56
92
55
127
169
139
56
92
148
99
79
67
139
93
158
111
79
152
84
104
100
79
110
182
94
92
86
69
77
92
138
91
55
105
89
127
130
126
126
56
110
122
104
144
97
92
80
103
77
107
111
132
83
137
152
114
169
92
148
58
37
84
99
110
130
137
171
77
58
110
126
92
126
178
103
139
92
165
37
55
104
110
127
86
145
68
101
124
55
67
139
126
122
106
69
127
122
163
67
138
37
138
91
93
69
58
69
86
55
153
98
130
92
75
55
77
104
104
110
115
138
114
171
122
110
144
75
109
92
104
178
111
56
56
69
37
138
146
139
137
140
37
128
74
118
110
69
107
103
114
83
178
58
55
67
152
111
114
112
78
160
122
139
119
55
107
56
129
128
137
106
144
99
67
77
100
75
139
111
75
124
86
67
68
124
139
171
67
178
112
92
104
138
55
111
122
114
163
58
92
128
86
178
110
126
130
106
92
92
127
104
139
106
78
178
112
101
37
105
114
110
92
105
169
92
178
79
139
127
105
109
137
92
55
122
104
56
139
86
55
111
122
93
122
92
37
122
67
164
111
111
157
120
89
110
99
178
110
74
95
58
111
92
41
122
148
127
138
119
138
171
91
115
55
144
109
105
119
87
93
138
79
98
106
163
68
92
92
149
104
110
91
105
158
104
56
138
101
128
86
126
104
37
86
126
91
84
92
103
126
100
58
105
67
92
55
138
111
58
126
93
99
188
92
56
146
56
104
110
109
93
110
55
138
104
58
109
122
56
114
112
75
134
92
144
139
37
92
37
134
58
126
99
102
126
158
84
83
93
122
107
128
93
86
128
124
92
104
104
120
67
104
111
110
138
91
144
141
105
117
91
105
67
93
107
76
55
164
138
107
55
122
110
126
162
146
92
55
145
91
168
55
105
98
104
56
122
105
139
132
92
92
139
104
152
107
138
126
79
152
79
68
74
110
105
93
139
128
93
144
110
130
123
58
55
139
110
136
122
127
171
123
55
178
56
138
127
67
139
110
110
114
171
144
123
55
180
105
120
56
105
146
126
107
105
56
126
92
122
93
122
169
169
163
56
105
104
105
171
130
126
86
148
105
56
56
92
178
123
105
171
128
138
84
104
168
110
130
76
92
92
99
169
58
102
110
110
138
92
126
122
105
79
67
105
97
126
110
92
152
37
138
107
103
111
146
89
127
110
84
105
126
55
100
86
178
169
130
144
118
91
107
122
77
101
104
110
146
128
92
92
114
114
123
110
122
125
122
145
56
37
140
55
105
122
128
56
109
92
162
92
158
152
123
92
67
55
93
69
104
37
104
192
139
91
113
93
122
93
69
138
93
162
102
152
199
122
122
93
105
93
105
55
122
110
110
167
124
103
104
138
107
110
105
92
107
115
126
114
139
178
86
103
104
127
37
148
56
131
110
105
55
110
144
124
109
75
178
122
104
58
109
130
69
58
104
110
139
122
55
69
125
138
86
89
138
144
75
75
68
138
138
164
126
37
138
105
69
105
122
56
99
128
91
86
86
128
56
77
56
92
37
105
93
122
55
104
142
92
67
134
102
126
178
152
139
110
109
108
103
126
81
67
107
86
138
138
164
139
130
138
118
125
178
110
138
92
89
144
55
67
119
122
92
127
92
132
105
106
91
55
67
105
91
107
127
93
72
105
105
107
55
122
110
69
134
123
168
178
37
148
37
130
55
101
105
115
111
92
121
92
114
93
149
139
68
171
92
138
81
118
55
149
92
178
56
105
178
58
105
92
98
122
122
146
93
105
92
109
105
138
101
109
55
138
91
56
139
146
119
92
95
178
91
69
94
137
138
105
105
111
58
86
105
146
92
58
56
92
58
77
92
102
114
138
91
85
152
152
126
127
86
136
144
77
98
89
67
140
74
148
139
138
101
129
109
83
131
124
56
128
92
138
106
111
105
56
119
110
131
55
122
178
92
105
111
56
169
55
140
109
81
126
55
55
110
105
58
56
75
171
94
127
122
126
126
104
110
92
79
109
126
127
58
67
107
131
138
100
104
105
128
98
55
101
152
139
37
114
105
92
122
149
58
122
55
130
55
150
128
99
107
135
93
139
55
124
68
139
105
75
99
92
124
56
92
149
104
138
67
110
122
105
146
122
91
99
114
104
138
138
58
58
67
105
144
95
122
110
118
37
56
92
138
100
126
104
123
123
128
81
138
95
92
93
109
69
75
136
74
89
124
56
69
93
91
109
103
37
100
146
104
103
138
158
129
79
128
37
126
97
97
104
89
132
119
37
111
148
123
144
97
92
92
150
58
55
119
106
92
103
55
146
106
165
67
144
67
178
92
124
131
105
98
105
107
37
74
93
144
110
87
122
37
105
107
93
92
122
92
106
121
68
168
117
76
125
169
110
171
56
139
68
110
93
112
139
110
55
129
92
153
84
145
92
55
104
156
126
178
163
138
77
55
92
110
128
89
189
58
80
58
101
109
69
138
114
99
122
55
56
126
88
101
163
178
119
58
146
92
143
92
134
160
110
84
163
106
67
69
102
124
123
116
105
89
168
138
92
169
122
139
163
56
126
81
125
144
92
178
103
92
67
102
118
56
112
145
105
126
138
123
178
105
58
127
137
98
105
58
128
138
137
91
122
126
119
110
130
139
138
89
119
105
128
169
136
92
128
83
127
137
37
138
74
110
126
56
67
122
152
67
129
126
100
122
110
93
178
55
67
93
55
139
178
138
77
119
122
135
86
105
110
92
114
79
178
111
126
105
56
103
110
124
138
92
107
56
107
131
111
102
158
55
92
171
92
92
74
168
144
138
97
92
58
128
139
138
131
178
128
37
97
110
169
81
139
55
92
119
114
58
55
58
126
109
144
101
97
123
127
110
86
111
84
93
64
56
107
120
37
93
92
110
92
158
56
92
148
56
126
93
105
140
110
146
119
79
139
169
110
178
67
55
146
103
122
152
126
169
100
110
130
148
138
110
92
86
150
92
139
146
107
146
140
109
120
139
74
79
103
89
152
122
101
93
104
104
152
56
58
177
92
55
137
96
104
146
81
111
169
119
128
134
126
115
140
152
119
55
83
91
129
144
56
126
55
109
158
139
122
134
136
103
93
131
110
122
67
110
92
120
126
144
37
138
67
92
106
139
92
110
55
128
197
104
92
104
37
69
104
189
92
67
105
104
126
92
103
86
97
104
76
138
79
92
129
126
92
91
37
110
110
122
119
130
180
68
138
78
146
55
149
124
92
75
144
126
114
130
93
93
122
158
91
105
138
104
119
110
146
75
105
119
126
105
129
67
105
119
165
126
86
100
99
108
105
178
69
123
105
77
129
169
137
84
103
123
151
162
92
178
97
67
55
127
139
110
119
110
152
128
92
104
109
68
130
92
56
103
146
58
146
55
178
92
144
178
104
86
92
92
118
148
106
98
105
126
92
58
112
105
123
117
75
56
111
105
55
92
109
92
122
126
79
112
95
67
77
189
124
178
122
92
93
122
98
124
86
64
97
142
167
103
114
92
100
92
123
120
122
77
55
138
104
92
56
152
79
126
136
126
126
104
117
68
77
122
93
162
79
67
79
92
77
67
93
67
91
69
55
55
99
69
169
92
178
162
92
97
132
134
86
55
105
146
148
138
56
92
103
58
58
103
178
92
83
146
144
110
93
126
99
91
67
138
92
98
69
110
164
93
138
127
144
146
56
56
67
97
102
77
148
104
148
181
55
139
110
127
122
56
77
104
79
126
122
79
103
67
128
93
93
122
98
178
56
138
55
103
126
105
126
77
92
77
104
69
55
122
98
100
99
128
127
92
119
138
67
199
92
146
123
92
149
117
126
106
145
144
92
97
146
67
102
152
134
178
122
56
139
138
148
91
103
122
92
104
55
126
92
126
84
105
104
69
138
122
127
55
168
105
138
77
67
92
68
69
105
105
123
123
105
92
120
55
138
69
126
127
76
107
105
139
137
77
111
144
84
56
138
106
105
77
74
146
56
88
142
136
131
67
144
124
178
123
92
83
56
55
119
139
105
105
144
92
87
135
55
55
92
128
117
104
138
160
61
99
56
178
140
138
163
110
124
171
169
58
55
67
75
126
93
93
93
144
110
55
91
92
138
92
103
178
92
156
152
127
110
171
134
91
69
109
158
104
93
105
92
139
84
55
93
103
55
130
107
84
122
74
171
123
122
124
55
92
122
104
86
99
168
97
55
138
67
79
109
127
132
124
104
169
138
144
58
152
178
92
105
127
58
110
93
111
140
169
107
99
144
102
99
67
103
130
55
106
126
127
104
55
126
134
127
94
67
55
37
126
148
163
55
101
122
138
160
162
109
114
107
56
58
152
110
109
129
67
152
91
107
56
104
118
55
123
134
134
169
138
98
92
92
169
110
92
55
58
92
124
83
55
137
55
103
93
122
58
130
68
122
139
122
110
119
104
56
149
56
152
111
122
106
56
110
69
165
103
91
125
91
104
122
55
105
146
114
138
124
178
171
139
122
75
127
140
139
55
83
55
127
122
126
134
55
110
122
100
136
56
156
58
158
138
122
67
55
122
58
144
104
130
97
108
144
98
110
58
67
67
109
130
93
107
152
110
132
91
104
110
105
104
56
138
92
67
93
99
178
107
75
104
92
111
122
56
138
58
117
141
119
111
37
107
123
110
56
102
128
146
144
93
140
138
105
103
92
105
122
58
91
119
92
105
67
79
122
168
144
146
83
105
131
122
55
126
93
55
164
92
178
67
97
121
55
55
109
131
92
104
126
107
110
104
67
92
37
119
91
139
101
92
136
141
146
127
86
119
138
67
134
78
93
117
81
134
87
101
83
55
79
87
92
92
168
122
105
101
104
163
58
96
92
111
180
37
112
89
110
156
165
135
92
171
115
55
114
146
122
92
109
91
67
144
110
77
122
105
126
136
67
110
139
140
83
74
138
99
92
169
139
128
79
169
144
67
67
113
100
67
74
110
92
69
146
127
107
104
56
138
75
136
55
113
127
123
119
114
148
99
79
74
103
138
144
83
99
92
112
75
99
117
110
138
139
138
93
126
136
138
68
126
91
146
67
104
144
56
105
55
56
102
131
83
142
55
67
122
107
67
55
107
107
92
150
112
110
104
105
109
68
138
77
88
114
164
105
37
92
83
111
89
79
144
109
109
56
152
122
69
122
104
98
127
138
79
138
93
122
56
124
122
37
144
122
165
122
86
110
138
67
58
138
122
105
92
158
83
103
69
92
165
55
107
83
81
55
92
130
92
56
126
138
105
105
119
67
92
118
152
79
67
178
139
122
76
122
64
178
58
37
122
68
67
92
110
138
77
134
104
74
115
149
152
92
124
162
78
144
92
121
101
67
95
122
138
89
56
123
56
126
88
92
37
126
83
110
126
86
111
178
109
86
92
127
91
139
109
144
104
107
138
105
128
114
55
111
122
87
89
92
169
103
109
91
110
67
138
56
142
92
138
122
67
58
119
169
83
114
92
103
79
105
124
67
96
91
110
126
93
74
169
110
107
79
86
140
158
141
126
93
126
109
122
100
67
107
68
77
92
122
74
92
140
128
138
130
122
77
123
138
105
134
122
86
122
37
92
129
128
37
125
152
75
91
102
93
148
72
55
58
111
104
163
110
142
162
132
79
140
93
106
67
68
105
79
56
104
83
67
56
146
137
105
104
110
139
58
127
106
56
97
120
37
126
67
56
55
104
68
140
93
72
110
79
92
79
97
55
68
91
81
144
92
65
126
139
93
126
139
79
111
121
140
126
137
110
69
160
67
86
138
136
69
92
77
58
99
92
107
168
122
110
146
122
162
56
67
124
138
130
132
101
93
138
102
147
122
180
83
114
112
178
138
158
55
126
138
163
69
55
92
105
92
138
140
67
110
126
122
98
97
81
150
124
126
86
131
138
75
110
91
146
55
83
86
134
83
127
107
158
67
79
101
105
122
110
138
163
107
92
127
152
92
171
69
58
178
56
55
178
93
164
55
106
168
93
55
97
92
67
138
178
148
104
134
145
127
138
58
83
126
148
138
89
92
110
104
137
152
55
107
74
126
68
55
92
105
67
110
108
139
138
122
110
92
122
92
56
99
55
148
104
171
68
122
146
126
112
106
55
128
127
158
56
135
68
123
110
122
106
127
140
122
169
67
67
144
146
139
89
99
94
56
122
110
110
124
102
148
123
131
55
139
92
67
169
110
101
128
111
180
89
118
55
134
127
149
67
138
91
146
127
93
105
92
138
107
78
144
79
148
107
110
124
89
107
122
76
124
92
152
178
163
92
126
139
109
138
149
122
117
123
92
148
75
160
93
126
55
134
122
103
126
84
114
158
102
77
79
78
101
122
67
152
103
122
126
67
77
92
92
92
135
69
117
127
74
98
168
125
167
93
144
93
109
37
123
138
86
93
114
127
110
75
127
126
123
94
83
109
89
122
139
79
84
55
61
109
55
107
104
144
114
124
122
55
169
77
178
105
67
127
77
139
126
69
169
92
104
132
129
120
58
138
126
138
107
110
89
111
37
92
105
93
56
92
146
74
126
113
144
55
139
138
123
123
126
101
104
56
104
67
139
110
80
92
146
128
73
86
68
152
139
92
93
136
144
126
69
123
92
122
154
178
123
56
122
139
55
146
67
104
138
122
126
110
103
104
110
67
109
92
92
147
110
123
55
145
84
101
103
55
127
74
105
152
122
138
126
84
104
69
93
104
102
37
130
134
145
138
58
119
138
123
180
139
158
131
152
160
55
69
56
134
118
138
107
105
55
108
123
127
126
92
189
134
56
128
138
110
37
105
126
128
146
135
86
91
77
92
69
122
122
122
105
109
67
178
92
127
92
134
98
122
104
144
69
55
92
67
99
58
152
92
178
148
126
68
122
130
79
92
124
55
110
104
37
86
37
55
68
119
92
126
77
92
120
128
107
55
86
88
134
138
152
79
91
55
83
139
67
92
79
101
148
110
75
122
110
138
68
124
140
169
99
126
55
119
92
92
131
109
132
55
102
93
110
92
105
69
84
106
126
110
113
67
67
146
111
58
55
92
169
119
92
69
107
37
91
91
178
56
120
55
122
118
55
67
110
103
105
92
139
80
126
114
93
178
134
168
114
145
110
103
74
91
55
109
69
178
92
104
146
74
92
101
126
197
75
58
105
91
144
56
67
56
97
55
55
78
123
58
55
104
92
160
110
126
141
92
109
92
128
67
178
37
75
119
110
83
138
67
152
140
92
102
144
123
104
75
139
122
128
128
58
67
104
110
138
56
137
128
111
86
152
55
122
86
58
101
69
55
126
67
140
77
132
86
81
104
109
55
109
146
139
146
163
122
127
110
111
58
106
144
126
128
115
92
104
126
55
146
98
56
104
67
93
37
77
123
113
104
68
122
178
122
95
142
127
37
146
178
147
93
91
144
84
135
154
92
81
138
86
132
109
127
132
86
105
89
91
67
104
110
105
119
55
144
122
127
119
75
91
79
165
91
106
67
135
178
128
77
134
126
126
37
92
146
122
127
142
69
92
126
93
92
144
92
132
67
169
37
108
67
58
98
117
56
100
37
169
158
123
77
103
140
55
75
181
139
123
127
99
105
55
122
55
94
146
132
89
98
105
79
146
55
122
92
92
140
117
126
122
145
79
138
105
105
139
126
37
138
55
150
92
117
69
119
86
74
122
37
105
55
96
134
110
56
55
139
122
139
110
69
122
122
144
104
92
55
123
92
130
123
107
140
165
105
111
37
144
92
112
139
83
92
112
108
162
126
140
146
131
136
127
104
123
123
178
58
110
122
101
164
160
95
37
126
119
144
138
93
144
126
98
110
136
74
55
110
177
86
93
126
74
56
74
77
104
67
108
127
124
105
67
109
122
110
148
56
127
110
67
151
105
98
88
37
57
69
132
68
178
92
118
109
55
110
104
108
158
126
138
75
91
129
105
58
178
110
68
169
102
131
103
103
126
128
105
56
130
122
138
98
101
128
109
122
111
131
144
136
92
128
55
67
128
126
126
97
98
93
119
99
105
55
56
138
178
138
86
79
110
111
138
92
105
109
120
103
132
99
80
128
163
139
88
122
122
108
122
110
105
91
162
119
169
92
78
126
105
103
112
92
74
136
56
130
104
160
102
55
135
99
89
158
165
83
56
152
104
128
144
37
104
134
130
163
136
123
117
139
55
75
111
93
110
93
55
81
126
104
122
56
98
77
122
178
128
105
58
138
116
37
37
110
92
86
123
105
93
92
92
91
138
91
92
100
126
107
128
144
93
92
123
86
123
109
69
135
165
122
114
149
67
121
109
111
139
144
126
126
128
37
55
55
101
119
107
105
103
83
103
118
148
138
122
104
117
152
178
139
78
106
144
86
109
115
178
122
126
92
144
140
78
56
144
144
114
55
56
58
105
138
92
105
92
92
92
75
92
138
119
123
138
146
75
144
105
106
144
138
146
126
79
67
104
92
120
126
158
144
110
123
55
122
111
111
84
79
109
124
55
119
128
162
58
141
112
103
123
92
56
75
145
37
126
124
169
56
56
105
108
119
91
109
126
138
101
123
86
142
91
117
78
110
79
67
67
92
140
139
110
151
130
118
55
117
180
130
92
138
164
114
55
128
169
162
93
126
58
107
144
58
104
37
106
146
93
69
67
55
140
58
55
92
84
92
77
106
138
105
102
98
149
105
77
92
58
78
163
122
152
86
92
58
104
127
109
144
128
132
67
92
92
105
117
127
95
86
128
128
112
122
104
144
152
104
122
104
152
79
98
55
41
92
100
93
92
140
113
56
127
117
138
111
124
124
55
74
99
55
122
137
144
123
156
69
110
110
134
99
55
126
152
92
74
103
104
119
169
110
110
126
93
56
83
178
99
67
86
86
55
92
55
92
92
126
107
92
103
122
122
110
132
105
110
122
86
91
119
92
135
110
110
74
91
128
75
89
158
77
148
56
78
122
96
110
92
127
91
55
148
89
139
126
138
104
105
92
110
110
77
109
69
93
167
171
123
37
110
146
110
104
111
138
67
93
124
99
132
122
81
122
112
138
77
74
112
146
123
101
91
110
99
92
127
149
100
92
92
131
131
55
138
103
146
67
37
110
115
112
150
92
165
144
104
120
79
55
88
124
77
58
110
55
74
92
56
128
103
92
152
58
74
105
104
110
146
37
37
142
67
91
110
91
67
144
56
104
93
158
67
92
119
55
105
67
111
75
119
123
55
92
110
147
92
92
127
120
109
55
127
124
129
144
92
92
86
112
123
126
103
102
160
109
68
120
124
178
142
107
95
81
144
121
93
126
147
128
55
139
122
118
69
122
86
104
67
74
55
168
56
58
92
122
58
55
102
58
68
138
178
123
124
138
171
109
103
132
119
75
110
97
92
139
92
111
107
168
99
134
56
92
137
127
93
79
98
103
92
107
115
92
110
55
143
164
127
138
93
56
75
148
138
122
99
144
55
138
126
126
92
144
79
128
69
107
103
126
109
139
92
92
116
162
104
138
138
105
86
93
110
156
107
123
138
76
138
91
89
56
124
84
83
100
169
91
92
130
124
123
116
126
97
92
67
77
145
93
79
150
105
124
67
169
91
114
138
55
123
144
56
92
110
69
121
138
55
146
126
138
75
138
105
56
58
92
138
178
55
144
126
107
112
104
139
126
110
134
138
110
92
69
136
55
126
107
106
178
56
122
105
105
148
168
111
122
134
68
123
126
86
110
138
92
122
114
114
55
152
171
160
55
55
78
55
69
165
152
92
132
92
139
110
68
105
56
56
117
92
152
134
78
110
128
91
55
126
141
55
68
134
127
117
104
84
79
126
126
97
169
92
106
124
109
67
92
37
74
55
134
164
102
91
67
58
99
105
93
138
103
177
105
104
112
126
37
139
152
109
79
148
92
93
126
126
83
79
188
104
122
138
107
86
139
91
130
102
112
74
105
132
110
74
67
105
123
163
104
123
152
128
118
122
103
93
146
128
110
120
105
118
55
126
114
152
128
67
92
105
128
68
108
74
169
126
56
128
112
122
37
140
67
75
92
67
110
94
127
129
69
110
55
56
55
67
152
41
146
163
123
55
105
95
58
127
92
144
164
105
105
171
69
111
55
158
180
138
127
105
79
138
109
122
178
93
141
103
106
112
56
67
136
119
111
102
106
92
123
56
92
93
55
122
93
55
92
104
126
55
91
143
76
105
86
128
111
126
99
132
92
144
92
83
160
142
56
92
128
77
74
92
111
92
138
106
104
146
119
140
58
123
92
93
104
110
55
92
80
107
152
146
83
74
37
128
104
128
126
79
169
77
110
92
114
169
122
138
171
55
123
92
86
132
93
93
137
58
77
75
110
92
110
178
144
119
110
94
93
128
67
122
110
91
105
144
128
109
171
56
105
126
77
158
111
99
168
144
121
58
95
55
123
112
110
122
56
84
122
105
105
126
91
148
92
109
99
92
74
110
105
138
167
55
95
110
138
93
109
55
77
122
103
37
79
56
92
138
109
79
58
83
92
139
126
146
127
111
77
138
152
152
86
126
37
103
138
139
55
168
138
105
107
156
138
123
169
104
123
58
107
58
92
99
92
79
93
104
86
56
126
55
114
130
92
56
67
105
102
180
77
69
101
105
56
160
79
105
131
151
92
134
97
110
127
55
126
110
110
57
92
91
92
127
104
109
122
91
110
138
93
37
75
98
131
144
119
134
111
127
67
139
69
119
80
132
93
128
131
92
140
75
84
126
55
104
167
92
67
138
127
128
126
74
169
110
79
67
95
37
56
110
134
93
105
99
104
144
140
84
122
75
92
92
126
56
126
131
55
58
110
127
77
94
79
130
92
56
77
122
80
126
110
91
178
105
92
117
168
98
105
130
146
168
56
37
110
92
158
138
130
110
169
139
195
138
178
146
126
118
80
110
158
56
69
107
121
169
123
112
103
92
110
99
77
55
55
74
105
56
92
126
117
122
111
79
104
55
91
92
141
88
132
146
75
93
146
138
144
110
92
110
86
120
56
58
127
110
138
127
104
92
122
105
69
105
112
165
129
164
77
123
55
139
97
119
67
107
126
99
86
163
86
109
37
126
55
87
84
79
110
110
109
123
55
138
55
100
123
126
104
109
128
178
92
55
118
103
89
56
58
148
106
105
163
109
67
55
135
105
108
64
122
158
67
110
132
92
115
67
92
69
92
95
146
140
93
56
74
122
93
74
146
122
105
75
87
138
105
111
58
122
120
58
104
140
144
138
138
122
69
90
105
138
169
138
152
122
92
83
97
138
126
118
180
109
139
124
144
110
93
158
110
55
104
58
126
107
134
93
126
178
110
93
37
91
102
58
56
72
130
140
128
92
123
92
122
92
122
110
37
131
58
74
77
144
104
134
79
56
111
122
114
69
113
37
106
92
37
136
139
77
56
92
119
110
110
120
99
110
126
123
109
92
123
152
107
118
124
139
178
56
123
127
126
79
37
163
135
122
134
91
99
55
137
105
119
69
37
83
163
86
146
109
75
126
99
144
58
134
126
75
109
127
105
120
124
109
104
74
109
106
92
131
168
67
152
91
95
134
55
108
104
128
103
119
86
92
67
127
105
37
167
122
124
69
100
81
87
92
58
105
144
55
109
134
124
128
98
105
111
122
84
83
149
128
55
111
139
56
110
110
127
139
110
92
110
92
104
122
86
109
110
122
92
73
145
67
95
110
83
119
56
126
56
75
56
80
92
105
122
93
118
124
112
140
37
55
95
138
146
127
55
110
139
67
109
126
144
126
93
122
110
119
123
163
128
104
92
110
109
92
37
74
163
178
100
92
124
93
126
67
105
105
122
126
67
93
119
134
136
93
146
104
110
56
110
104
104
93
67
110
139
68
98
138
104
146
77
67
107
126
105
68
99
126
55
134
138
139
104
99
103
126
92
55
104
110
68
139
122
55
122
138
58
104
160
103
137
146
112
86
92
68
163
56
180
110
122
142
111
163
160
134
83
69
162
99
92
56
99
169
67
105
55
168
104
105
145
134
126
139
146
104
93
74
99
109
37
122
112
134
105
127
110
89
110
129
138
114
55
92
122
132
168
83
84
122
69
69
124
105
131
92
103
92
92
92
111
109
132
115
55
92
109
92
112
104
104
129
104
128
56
109
178
74
110
138
122
55
178
55
117
126
86
92
199
92
92
74
126
55
98
67
127
110
138
55
114
138
122
111
146
119
103
105
126
138
131
69
103
109
171
110
114
152
122
79
127
104
105
58
95
104
178
104
138
146
139
58
83
58
67
105
110
126
126
156
105
104
163
105
84
92
131
152
74
140
123
67
104
124
118
140
122
55
122
118
100
146
131
92
67
67
124
86
123
126
113
92
79
86
89
77
178
100
92
123
178
110
122
92
114
55
74
102
93
77
105
110
148
119
152
128
68
55
164
122
165
105
122
123
92
123
77
56
104
74
178
69
67
110
109
108
114
67
55
160
37
138
138
128
152
101
149
93
104
67
88
138
110
77
101
110
95
115
110
75
138
138
79
56
169
109
104
138
138
105
92
67
106
92
110
140
104
79
101
124
75
128
92
128
110
107
110
110
146
126
158
131
103
137
89
91
110
56
93
58
69
128
178
111
86
104
111
146
114
110
92
67
67
148
128
105
122
56
110
86
103
126
67
99
131
129
55
86
99
138
67
67
122
126
139
92
122
55
126
93
119
123
137
104
74
117
98
132
148
152
55
83
178
67
92
92
74
126
86
67
182
139
101
119
122
58
92
123
123
134
109
77
122
68
139
86
141
103
105
98
109
58
139
69
92
119
78
127
138
140
86
104
55
91
74
122
141
139
110
86
171
105
130
58
123
160
55
104
67
92
94
93
67
112
37
123
56
86
112
75
122
67
93
77
55
104
56
102
37
56
55
111
117
110
119
110
93
92
178
132
97
167
75
106
79
105
152
131
37
68
146
126
37
92
55
152
93
86
84
109
56
104
110
139
127
92
79
110
169
122
138
56
126
56
140
134
92
86
158
117
55
127
96
93
111
88
111
93
100
37
56
104
128
110
134
88
56
136
111
92
74
138
93
92
104
115
69
130
105
146
56
97
37
138
138
79
178
146
97
94
97
152
138
69
79
122
67
58
99
134
69
131
178
146
115
74
110
56
123
128
105
126
56
93
95
116
77
89
101
108
84
109
92
55
64
106
92
115
180
131
105
112
105
110
122
69
105
124
55
131
55
122
92
104
126
105
77
117
124
139
89
67
69
138
102
91
109
55
55
69
79
140
92
126
79
171
110
67
128
83
169
122
126
37
105
146
68
92
104
91
121
122
55
168
99
109
105
58
83
139
86
55
79
93
144
108
110
104
139
75
69
111
58
178
108
105
168
148
97
58
55
77
139
126
77
152
107
146
55
98
79
37
127
122
144
103
79
114
139
144
77
56
99
139
144
118
83
110
67
92
110
119
148
100
94
56
77
104
86
95
138
110
99
122
121
109
144
69
122
69
114
92
122
92
105
37
67
110
127
92
103
69
56
105
92
68
110
122
123
138
134
67
132
110
147
100
144
152
83
92
105
158
118
128
55
110
55
110
138
122
100
37
105
92
104
127
74
104
122
128
110
109
67
99
111
92
146
146
97
110
139
178
121
139
105
167
126
178
123
110
138
94
56
124
110
104
55
152
91
109
139
93
103
122
122
106
92
79
55
74
107
138
55
75
126
92
69
107
119
92
97
74
91
124
105
167
119
146
138
138
123
110
74
110
92
86
56
104
110
107
126
122
92
92
105
99
89
105
147
92
126
58
110
69
110
122
111
94
122
56
119
92
122
192
134
75
104
135
119
171
126
129
101
123
67
110
110
122
67
128
67
100
126
67
96
112
97
105
134
78
97
138
107
37
110
137
134
126
127
144
75
138
110
74
139
112
92
114
86
151
67
56
138
92
122
93
110
56
58
80
152
92
152
148
92
109
107
100
112
55
55
127
92
86
69
126
142
67
67
106
127
92
139
122
122
79
58
55
37
110
106
92
92
74
104
139
92
112
93
58
111
104
110
92
146
127
104
110
77
178
79
79
122
110
122
91
136
123
104
139
93
83
137
140
131
114
138
121
118
178
146
55
123
139
126
138
91
79
180
92
77
110
100
152
126
126
105
104
135
69
111
144
130
100
92
167
86
127
105
168
131
138
56
111
67
84
92
37
102
139
152
67
55
67
104
105
138
91
140
152
55
83
160
152
122
169
69
115
108
112
101
67
55
110
134
93
67
37
168
126
55
55
97
122
126
98
138
58
131
178
131
138
144
167
105
109
68
86
146
119
103
110
92
110
139
123
138
92
104
105
126
124
55
130
74
134
122
171
167
92
103
109
86
122
121
125
99
126
146
58
103
127
110
37
67
92
74
104
139
37
139
126
127
56
111
171
83
105
74
144
84
131
74
122
93
107
122
144
144
144
105
77
127
114
110
152
109
97
97
110
142
67
138
91
55
58
55
107
127
167
140
110
122
68
69
104
86
93
93
148
95
122
117
102
99
69
77
126
127
56
138
160
67
92
109
122
105
56
74
92
37
131
106
122
58
126
92
56
99
152
126
151
55
55
89
126
110
92
148
148
178
104
160
138
110
56
83
67
144
67
180
122
104
168
123
122
128
88
114
91
132
92
107
167
127
165
123
144
126
114
104
58
130
64
56
55
99
69
91
104
105
119
110
92
55
69
94
79
122
74
91
67
80
67
56
138
100
102
146
126
124
118
167
55
92
86
128
37
126
126
134
131
134
138
105
98
146
131
156
122
120
127
100
69
99
169
135
86
93
99
67
79
86
144
110
138
85
103
107
56
144
58
37
103
55
146
117
97
109
55
119
99
131
178
109
105
55
122
140
152
139
122
126
92
105
127
123
139
86
144
152
55
92
93
105
67
74
67
111
55
69
105
109
139
92
144
55
107
131
91
79
86
105
110
123
101
92
138
69
92
178
126
119
106
138
81
37
110
92
92
108
83
55
91
138
67
102
58
56
93
110
109
128
146
93
37
108
139
69
111
165
74
138
64
119
123
104
79
83
93
146
83
105
105
163
92
69
37
188
79
117
156
180
199
55
111
126
100
138
171
56
128
139
138
110
128
126
163
144
139
127
97
178
110
105
74
92
134
138
134
86
146
152
84
138
103
169
178
144
77
122
86
99
109
92
106
139
98
127
102
56
138
104
56
152
92
117
55
178
111
138
126
106
110
37
146
169
135
182
119
93
91
84
110
104
88
144
77
138
178
92
58
136
103
110
75
109
75
79
120
115
67
105
122
146
144
140
110
56
55
92
169
103
169
142
148
68
110
56
86
152
99
37
125
67
107
126
178
118
84
110
86
140
93
134
55
67
104
139
92
79
109
96
128
55
163
104
138
56
152
146
56
132
92
141
92
92
98
67
122
160
134
122
68
139
118
126
76
55
37
104
99
67
78
100
92
118
74
142
119
163
81
91
126
55
110
92
178
146
100
132
123
138
58
128
139
122
144
109
55
115
126
74
56
104
104
55
103
69
122
119
122
56
91
109
119
130
79
105
105
86
136
169
95
168
122
112
37
122
111
138
138
93
169
67
109
74
77
87
130
124
134
77
98
104
77
140
74
99
132
110
123
119
109
86
158
126
128
122
171
105
111
128
122
92
104
140
126
67
126
74
58
126
58
67
148
192
95
89
67
92
123
106
138
122
122
56
37
56
126
55
111
110
75
92
109
122
114
92
55
75
178
92
92
140
127
126
123
67
80
55
122
110
104
98
110
83
105
56
118
160
56
79
138
136
122
37
139
171
100
138
104
103
92
126
110
98
127
122
56
86
148
139
105
178
144
128
188
93
104
122
86
144
55
162
124
134
56
171
145
122
86
144
92
180
127
58
127
55
100
92
100
112
86
110
122
171
105
100
122
37
105
67
138
104
92
58
114
128
178
98
69
114
96
58
58
67
56
139
104
92
74
112
122
104
88
109
131
144
122
134
144
69
138
99
93
92
111
105
92
67
58
138
104
55
93
58
119
67
144
110
122
144
108
87
67
92
139
110
138
122
58
37
119
97
55
171
92
104
171
127
140
104
169
69
86
91
138
138
55
148
119
81
58
91
93
145
67
158
126
57
122
98
110
138
98
138
105
105
92
88
37
104
156
122
169
84
122
79
120
144
105
138
134
79
122
37
138
93
101
127
148
69
138
55
113
111
79
107
151
55
128
169
102
139
77
99
55
129
55
80
164
37
138
93
92
75
92
126
68
92
169
107
56
77
112
93
79
137
138
138
127
69
37
67
163
94
55
98
104
55
138
78
119
56
67
105
109
146
169
104
98
144
126
88
131
55
104
79
104
152
92
93
111
146
99
122
144
105
138
111
126
149
74
138
182
145
74
139
92
92
152
55
169
140
136
139
98
105
92
56
67
58
92
122
56
180
92
69
171
148
37
104
92
136
111
85
114
74
131
128
104
178
144
37
67
112
146
106
105
92
138
146
109
132
169
105
104
72
92
69
105
101
139
127
110
178
68
67
37
144
119
122
105
110
127
169
115
122
126
126
144
55
123
91
122
76
92
92
95
68
105
92
140
55
91
107
105
83
110
110
136
74
163
103
58
67
58
55
105
138
98
126
56
109
89
67
55
111
92
103
92
92
140
55
102
171
146
92
126
99
77
124
92
178
163
88
109
122
98
105
122
37
86
105
69
178
105
146
121
152
144
67
94
119
131
112
146
126
77
92
127
104
148
126
104
121
55
109
75
138
103
126
126
178
83
138
146
164
138
139
109
74
126
109
134
55
127
91
75
128
165
169
37
105
105
56
110
69
126
110
168
104
56
105
128
55
105
104
135
140
110
91
135
144
188
93
68
111
79
126
67
79
75
67
128
136
74
144
104
132
93
108
111
138
110
128
138
139
92
152
86
98
67
134
92
146
105
144
109
56
122
94
56
88
93
55
67
74
128
55
87
127
130
149
128
152
128
92
119
93
138
92
79
126
92
92
105
107
140
105
56
68
122
148
58
92
126
86
145
139
67
115
107
126
67
164
55
77
110
92
98
69
37
146
55
125
55
138
128
99
123
104
69
103
105
92
110
122
107
56
142
178
92
92
92
100
69
67
168
128
104
98
74
111
91
168
134
119
105
92
168
56
92
152
139
114
105
77
158
75
92
113
99
178
178
144
58
138
169
107
110
68
102
67
146
109
69
74
110
169
144
134
113
127
146
108
110
160
86
65
126
106
126
127
114
101
134
145
126
132
56
110
89
75
127
163
123
128
92
75
122
58
56
115
110
93
100
92
110
135
55
67
105
138
108
126
148
144
86
92
134
67
123
97
55
127
109
124
58
55
99
69
169
152
128
128
55
139
137
75
123
86
146
152
92
137
92
105
169
139
138
104
83
104
178
67
99
111
138
55
105
74
93
92
123
58
97
69
122
123
91
93
122
107
138
123
58
122
58
56
97
69
105
109
92
126
163
56
92
104
149
92
111
92
58
103
123
126
122
92
126
55
55
132
139
122
92
104
105
160
92
139
104
93
67
58
100
67
105
111
69
123
110
105
122
89
144
168
138
111
87
56
115
144
92
92
56
104
109
92
132
152
178
105
128
138
138
169
97
123
110
107
144
162
79
89
139
143
55
55
103
148
69
110
119
103
127
97
58
58
67
107
56
55
56
69
105
123
91
92
122
137
58
145
105
104
107
130
37
138
105
110
75
171
110
139
144
131
107
56
137
162
37
55
92
101
180
109
132
107
37
86
92
137
55
122
152
75
58
126
165
81
92
105
178
119
68
92
58
86
92
93
58
37
105
83
109
92
138
107
92
178
75
104
93
122
110
124
95
128
140
103
67
178
69
56
178
105
140
128
37
67
55
79
146
64
138
110
99
67
126
97
123
168
127
93
164
37
127
55
99
105
127
126
37
110
92
139
189
122
126
127
110
74
130
168
171
93
127
58
111
107
158
122
127
127
161
93
122
92
98
152
114
67
146
86
127
81
102
122
93
84
86
128
105
92
55
152
126
79
138
146
79
58
69
74
92
107
128
126
93
148
92
110
110
152
127
86
139
124
55
126
74
152
77
127
58
122
154
146
55
120
92
128
106
74
144
103
103
104
110
67
164
74
69
122
119
89
110
130
109
139
92
138
126
110
77
124
105
109
140
128
178
128
93
138
55
144
117
105
99
122
69
92
152
139
56
146
138
86
77
104
110
91
110
69
122
111
55
122
69
144
103
132
140
79
92
98
120
132
75
107
55
55
112
122
92
138
92
146
145
104
152
130
138
55
75
109
169
86
104
55
139
93
123
105
126
120
143
105
139
92
148
76
93
146
93
138
86
127
73
88
97
55
158
105
105
105
144
152
146
144
110
69
124
89
69
103
123
122
101
110
130
92
105
126
92
110
107
127
105
99
55
105
124
122
123
131
109
67
79
92
148
117
107
37
85
126
145
118
110
138
139
58
92
56
92
93
74
77
110
105
79
56
138
152
138
89
122
126
69
117
122
67
134
92
138
101
163
131
126
108
122
67
110
93
178
110
67
93
119
77
171
122
84
110
56
158
37
105
107
55
77
58
142
77
124
81
110
178
74
111
126
122
88
75
119
37
41
97
67
131
55
55
79
134
104
178
136
37
134
122
92
138
105
83
123
138
136
55
139
144
67
120
146
102
122
158
93
104
104
122
99
104
56
162
168
128
107
37
110
122
86
110
92
136
111
55
169
132
163
67
56
123
122
89
130
89
112
120
37
92
88
169
80
138
55
137
162
107
55
78
93
74
139
68
169
91
119
122
55
74
152
127
96
99
138
137
169
178
144
123
74
114
118
110
37
69
122
93
79
58
163
92
67
103
58
138
110
165
67
91
104
89
92
84
93
92
104
55
115
56
92
122
128
113
104
161
55
126
150
91
119
93
146
110
131
55
146
139
58
103
105
65
91
67
110
55
115
152
92
86
126
110
56
111
138
55
103
105
167
119
102
110
89
92
138
126
58
56
105
128
136
79
105
126
58
37
104
68
128
93
105
127
58
79
112
137
105
107
126
127
58
92
122
140
55
178
138
86
114
55
134
122
182
92
138
139
74
93
168
91
138
84
75
126
104
169
151
100
58
107
126
128
126
138
108
138
55
105
74
55
96
130
55
95
92
91
69
55
122
146
139
126
103
107
74
165
148
92
132
126
138
119
55
104
168
126
171
69
55
79
86
127
131
120
58
37
55
168
58
69
160
67
91
110
134
123
109
126
93
110
130
127
130
93
122
130
55
126
129
92
99
101
160
74
146
58
109
128
139
134
123
110
106
123
92
92
77
132
163
169
92
69
114
146
138
86
55
144
127
139
139
104
124
67
104
110
67
92
123
56
67
69
92
138
152
139
123
100
55
106
87
91
92
169
89
127
67
64
142
138
180
168
92
86
115
83
107
105
127
138
83
144
91
126
126
95
89
58
55
144
128
91
97
121
37
168
77
110
37
116
105
41
86
119
169
99
105
107
110
148
55
92
149
91
79
121
123
55
152
129
79
139
122
55
138
126
121
122
84
139
107
107
91
101
119
126
69
91
83
148
110
55
89
103
111
77
180
138
55
58
152
108
112
55
55
93
101
120
79
110
104
168
131
55
121
146
126
178
138
58
109
152
109
109
127
126
132
55
74
144
132
100
69
91
134
67
135
124
178
152
138
178
92
110
91
114
92
158
110
131
112
92
81
104
135
55
58
110
128
104
37
134
64
162
165
124
111
134
37
55
199
101
99
138
126
144
83
110
55
109
128
93
178
93
178
122
119
127
128
107
122
91
127
138
105
140
126
37
136
168
120
69
118
144
124
115
98
180
79
107
92
92
58
58
138
134
105
96
97
111
56
67
92
114
92
56
122
73
74
92
126
86
67
123
67
163
110
99
105
93
110
181
91
83
67
149
55
126
126
110
138
105
117
92
67
86
126
157
169
87
105
169
121
139
146
92
126
162
127
83
145
92
109
144
105
139
58
148
93
104
144
92
93
152
138
152
68
99
123
92
122
102
92
79
105
139
77
104
128
56
92
91
118
122
126
130
91
126
139
55
107
93
55
104
77
131
146
67
104
152
105
178
110
107
97
152
138
80
99
77
135
140
144
56
144
123
139
128
127
92
92
84
84
92
56
112
169
138
105
165
55
56
134
110
127
122
77
75
92
126
101
67
142
163
138
135
37
105
136
58
122
144
126
122
127
58
110
55
75
37
109
92
99
91
92
58
138
83
126
105
146
111
92
109
138
67
92
122
146
178
117
58
93
92
138
110
86
112
138
119
86
141
199
155
134
122
79
126
169
128
68
139
169
55
126
144
92
102
56
58
105
67
111
146
104
137
122
178
126
92
99
109
104
138
93
79
110
127
127
126
124
137
126
122
58
92
138
114
107
122
110
37
89
67
148
93
103
55
126
58
171
83
93
55
126
56
105
103
56
124
93
95
105
123
77
107
147
83
131
178
80
86
99
75
139
55
127
122
67
104
109
123
99
79
104
165
107
119
138
107
163
83
86
67
64
109
69
92
139
55
144
104
122
103
79
146
105
119
69
55
111
69
102
144
67
93
92
122
152
178
142
110
167
55
92
162
115
137
128
105
126
67
137
126
105
119
104
138
178
92
126
77
120
124
139
78
140
92
92
119
91
148
56
81
127
152
128
92
58
93
56
122
104
122
55
83
122
139
105
110
151
103
138
139
105
67
146
115
119
106
84
128
84
124
124
127
123
86
79
111
120
127
126
134
67
92
56
37
124
109
58
103
105
86
120
109
110
101
93
160
145
109
103
110
110
138
110
67
107
69
178
110
87
37
92
126
152
119
101
79
111
79
67
144
105
56
105
119
106
37
148
86
178
127
105
138
94
75
72
103
138
79
119
122
128
84
109
122
89
92
163
105
84
113
110
177
78
92
84
58
122
109
107
105
146
138
135
86
139
139
93
122
92
127
168
169
119
92
69
93
142
128
158
56
97
104
67
67
55
112
110
105
75
104
98
168
37
122
64
135
91
111
140
101
98
126
110
122
55
127
107
178
105
178
92
86
105
138
138
139
56
92
107
117
73
67
37
67
132
93
104
110
139
122
146
120
93
139
55
67
55
148
92
105
130
92
178
55
56
55
105
92
128
92
37
103
110
122
55
104
107
103
135
178
104
37
74
178
120
92
67
67
129
55
74
138
56
114
148
93
140
93
138
72
153
110
133
178
56
114
126
83
117
153
123
145
110
146
55
97
55
178
129
119
97
126
126
144
143
105
88
92
64
79
146
92
67
163
109
169
115
126
148
151
93
144
134
69
93
178
122
114
58
110
74
123
163
116
122
56
55
55
138
110
56
119
139
89
124
69
105
99
68
92
92
124
74
86
112
56
126
55
105
92
123
93
156
122
144
105
146
127
126
178
117
111
138
146
123
67
122
97
104
139
92
122
67
110
122
126
122
120
138
68
105
145
111
86
58
126
126
135
139
69
100
138
119
114
55
112
67
37
37
55
87
105
122
180
144
102
93
134
74
56
93
138
104
132
168
92
110
98
92
139
138
122
145
128
137
160
109
104
56
111
126
37
55
128
86
138
55
126
58
107
64
189
74
105
146
119
55
168
92
136
93
96
122
92
69
74
55
83
125
104
110
127
92
73
69
110
124
94
92
104
112
138
129
144
102
122
75
111
137
67
99
101
111
105
67
105
107
140
146
69
126
91
178
69
132
93
100
95
140
109
139
105
101
138
144
92
124
92
126
86
79
91
55
56
104
168
122
104
111
138
100
92
128
92
67
93
123
87
131
125
101
114
37
77
115
81
114
84
55
122
55
109
69
102
153
75
77
92
93
58
164
99
107
104
145
118
55
92
102
146
110
144
118
92
91
55
111
78
75
110
56
100
107
93
105
69
103
92
55
92
105
56
92
74
152
115
55
79
136
105
138
37
77
101
131
104
104
199
98
126
93
111
92
93
138
55
139
128
93
55
114
92
55
79
169
37
138
138
168
86
144
117
144
138
138
126
109
117
92
114
91
55
56
91
37
111
69
108
68
127
92
110
80
91
144
55
88
124
107
37
56
144
110
92
86
123
104
128
168
92
138
132
118
138
119
126
134
152
119
37
93
148
98
152
107
111
163
169
55
37
178
92
122
117
74
111
158
124
58
140
67
138
104
122
138
58
134
169
37
104
77
99
144
126
120
127
92
74
178
126
74
111
67
138
109
98
92
123
134
84
124
55
93
136
92
92
122
123
108
55
91
139
126
56
55
97
72
160
139
171
92
138
79
92
146
180
126
92
144
110
127
56
119
72
112
92
58
168
135
67
86
74
56
55
138
104
68
134
107
110
93
146
92
104
152
181
125
146
148
93
132
68
111
131
55
138
86
108
117
92
164
146
127
178
56
132
67
92
105
83
56
77
129
107
103
110
112
178
128
103
147
136
92
127
91
77
103
37
130
162
168
178
126
92
92
68
89
79
128
169
123
140
110
84
110
105
122
142
171
128
92
92
126
129
67
168
110
56
105
88
152
123
126
84
130
105
124
92
105
105
138
37
37
69
55
112
131
110
107
92
144
148
69
91
75
105
146
105
55
123
121
109
110
109
55
86
127
169
92
111
55
98
97
138
123
80
58
93
180
91
67
152
137
107
98
86
55
126
69
123
139
168
110
69
100
83
110
104
107
56
148
152
56
138
167
122
131
139
79
92
123
119
126
139
110
138
114
92
108
123
93
144
73
103
129
144
67
91
126
75
86
140
91
119
122
117
112
123
110
122
92
178
110
107
55
138
119
104
55
104
84
122
79
127
104
103
103
122
95
77
86
123
68
79
92
138
67
123
139
126
67
102
142
122
79
93
93
79
104
113
110
138
86
171
103
110
107
127
138
122
110
124
126
55
92
132
69
134
144
79
142
92
104
124
58
164
104
105
152
56
106
67
144
138
89
124
55
146
169
55
84
110
123
168
94
152
169
146
117
91
55
55
110
83
56
105
77
122
110
91
109
110
104
74
92
142
68
77
104
124
152
98
102
105
37
91
93
110
105
128
105
37
124
117
136
129
69
138
146
56
56
122
55
158
93
93
55
127
138
92
105
99
101
129
127
92
178
98
104
84
77
134
67
126
93
92
105
128
58
92
122
119
110
137
135
122
180
83
169
104
123
178
110
126
88
89
111
55
56
55
169
126
109
92
105
92
169
145
146
178
104
140
56
77
158
104
79
122
37
55
126
126
67
58
67
55
83
178
110
67
123
107
131
124
122
55
146
92
37
91
110
104
123
92
67
138
79
92
160
138
134
55
67
37
100
105
58
178
79
135
122
37
92
122
92
67
110
37
75
180
56
128
138
92
111
55
92
127
162
110
122
56
93
128
144
93
97
139
74
146
162
69
93
105
127
126
110
122
197
120
127
122
75
92
67
111
77
37
67
98
148
92
105
69
138
109
88
86
77
121
122
111
145
103
109
122
142
77
92
114
109
138
139
130
69
92
69
158
64
169
71
92
58
77
139
146
158
37
92
93
77
148
67
56
180
86
79
178
114
105
86
37
77
148
95
98
152
110
105
128
92
138
97
142
128
37
126
86
69
93
110
67
68
55
126
139
67
111
77
77
92
136
122
55
144
122
92
107
110
69
105
111
89
110
105
122
81
105
100
102
138
114
109
140
128
86
123
160
126
55
99
122
77
110
109
178
123
122
120
118
134
138
138
131
109
107
86
93
139
122
77
67
55
37
118
122
67
92
122
56
55
179
126
56
84
178
122
169
105
79
55
127
56
67
101
79
41
124
55
92
67
102
55
91
92
158
56
119
109
104
144
92
69
69
110
93
136
110
67
178
67
92
37
199
89
105
105
56
105
75
93
144
88
114
126
56
84
178
178
79
56
131
138
122
55
83
105
84
127
171
110
105
105
129
91
138
77
138
124
132
119
138
97
75
164
105
151
37
91
138
110
105
128
92
67
138
99
139
163
77
93
67
171
110
55
138
37
104
158
126
75
67
134
146
74
97
93
134
128
92
131
168
126
120
178
158
84
110
109
98
92
67
119
115
91
99
105
124
138
92
92
156
104
127
123
55
107
91
102
131
138
99
109
67
67
77
104
83
134
92
37
92
92
122
97
126
37
139
67
86
74
110
119
134
55
93
93
110
119
107
138
61
144
178
37
69
127
37
58
148
68
110
113
80
112
139
37
109
138
79
110
74
180
115
56
37
122
131
139
126
67
152
72
86
124
128
69
144
69
128
55
100
134
138
55
93
104
103
79
55
134
56
137
122
171
124
93
75
178
139
37
178
55
144
93
127
92
93
92
55
107
104
55
67
127
97
96
122
69
109
109
171
110
79
55
55
56
79
138
98
88
105
99
93
79
56
139
88
92
37
69
127
74
58
56
91
69
110
79
104
91
103
140
67
107
126
86
37
131
110
112
163
107
97
92
84
74
37
131
67
103
118
114
123
145
152
122
105
140
139
122
75
136
92
105
122
101
93
110
115
55
178
139
56
100
162
132
77
158
109
110
75
171
107
126
122
163
80
96
84
81
55
160
122
138
37
122
146
67
132
58
56
168
123
56
123
74
104
79
86
102
122
171
123
86
55
110
103
127
138
55
107
111
110
74
131
93
55
144
169
188
58
97
128
140
158
55
91
93
134
93
145
110
75
55
98
93
169
76
98
106
93
126
55
118
93
99
84
92
97
114
126
112
92
122
163
37
119
137
105
127
91
171
140
55
146
69
117
92
178
178
103
126
74
128
107
92
138
91
92
122
58
110
105
84
158
122
160
68
110
55
145
127
110
119
107
144
74
178
122
58
171
91
93
87
95
163
104
92
92
169
144
126
67
165
104
119
77
84
105
79
92
58
37
122
37
37
148
124
107
127
113
180
146
169
138
93
55
128
188
69
84
144
86
105
119
103
130
122
127
122
67
92
92
99
92
92
69
103
138
92
126
139
137
137
58
122
139
86
67
105
92
86
105
37
93
93
58
93
122
91
67
97
114
100
107
123
122
75
104
92
104
56
124
124
105
91
55
56
83
93
123
145
74
137
37
91
92
56
107
69
152
97
104
139
124
144
102
79
37
128
110
129
67
55
144
145
151
126
122
110
56
148
178
114
144
137
37
158
67
146
58
86
106
156
56
108
74
56
171
104
88
114
110
126
146
132
104
152
130
100
92
110
69
75
84
99
104
112
67
110
93
122
56
128
152
92
83
122
122
92
104
199
122
124
86
158
178
79
117
134
128
79
123
67
139
126
104
91
56
37
135
79
103
91
126
144
104
109
67
124
77
89
67
131
58
56
92
93
126
92
131
131
88
37
126
37
152
114
96
86
110
107
110
93
128
160
92
123
146
119
55
148
152
127
141
56
84
111
86
55
69
121
126
126
92
144
95
178
163
67
122
72
104
127
69
81
104
110
55
79
138
103
58
163
58
180
106
56
104
134
92
92
56
111
104
92
146
138
103
145
110
92
105
122
124
69
105
77
55
131
123
122
122
178
37
37
122
137
67
139
146
126
86
128
130
55
107
169
119
162
74
122
74
103
135
67
116
98
107
86
104
127
93
97
107
122
110
111
144
171
126
127
122
75
122
69
126
138
126
55
55
139
103
109
139
126
122
122
178
37
110
84
112
99
93
119
58
105
134
139
144
91
165
122
111
148
55
92
135
122
86
140
126
178
164
56
77
93
58
136
138
122
91
101
56
93
83
119
104
168
110
105
105
110
99
91
139
56
136
55
178
127
58
67
58
92
138
111
56
100
55
92
139
156
92
56
146
178
92
152
91
163
138
96
164
37
110
152
134
86
110
91
78
55
37
67
134
147
136
106
56
55
105
126
75
97
55
55
92
189
139
92
67
126
114
138
93
148
109
118
55
93
83
111
188
180
134
55
83
92
104
78
102
126
146
69
56
37
37
88
178
122
105
56
139
146
126
138
99
55
124
129
126
148
110
93
169
94
138
114
101
126
178
110
122
84
98
74
67
123
109
37
88
55
150
160
105
88
122
92
138
93
56
122
132
84
79
126
56
92
122
88
103
137
127
139
87
55
178
122
97
55
55
134
126
134
112
138
93
105
122
55
118
74
98
104
126
152
169
138
119
118
67
122
136
114
109
136
58
92
138
56
91
104
75
69
110
77
114
100
131
123
122
171
126
67
128
164
128
55
146
92
86
99
144
91
123
58
55
55
67
83
110
86
69
178
91
138
110
180
147
178
145
92
142
93
37
139
105
110
144
106
129
105
146
127
107
37
104
92
104
109
86
104
110
138
86
110
69
152
67
92
132
56
136
58
139
56
67
105
122
101
75
110
138
180
107
75
55
84
152
109
67
126
144
97
146
56
141
69
146
95
56
77
105
123
111
128
110
92
128
56
111
83
139
86
126
55
89
151
88
92
169
122
67
134
107
178
56
74
92
58
126
131
105
148
142
87
169
56
127
144
107
131
99
178
111
56
146
68
144
75
103
127
92
148
99
86
110
37
69
103
137
67
55
124
103
93
122
122
106
99
56
127
55
92
105
83
88
111
104
56
74
122
105
67
123
119
109
110
104
104
79
110
139
69
122
126
126
126
127
97
83
55
108
92
104
110
86
68
67
126
132
86
110
144
119
124
110
139
127
180
165
86
92
69
88
58
128
131
136
127
119
99
111
131
171
158
104
128
95
97
93
134
144
97
110
130
122
79
109
55
113
58
55
69
92
110
69
126
105
74
108
100
110
178
75
126
139
93
87
83
126
130
126
55
126
55
56
126
122
105
122
55
125
104
58
123
67
98
110
92
86
74
146
138
169
122
112
89
152
98
119
122
131
109
55
168
75
107
92
67
79
110
56
122
105
105
124
107
134
55
101
56
122
122
160
138
79
67
105
92
58
122
133
120
68
68
67
55
104
106
124
123
123
37
127
122
146
75
123
92
55
67
114
89
80
98
93
101
92
58
83
110
104
79
69
127
55
56
55
91
134
92
158
122
92
110
86
92
92
115
122
69
140
92
110
132
67
93
93
55
78
55
78
146
146
122
105
164
68
110
37
122
67
122
93
104
122
55
118
139
92
126
138
138
56
122
148
55
37
55
93
55
139
102
136
104
135
124
123
127
127
131
126
56
135
110
110
128
127
86
105
86
135
112
105
103
105
67
140
99
74
55
92
148
69
110
152
127
122
105
37
97
104
97
139
107
123
165
127
55
167
129
128
192
98
55
178
118
110
93
55
102
76
79
140
139
109
104
110
74
104
107
86
92
129
92
93
110
68
79
148
109
119
152
136
55
138
72
123
137
145
128
134
163
68
111
136
152
127
138
140
110
81
169
117
37
98
85
139
111
96
126
122
127
138
77
99
128
100
92
71
137
104
55
55
122
144
171
93
56
107
99
163
138
110
91
69
144
146
124
91
83
104
91
110
160
86
114
74
110
92
92
92
91
109
144
58
139
74
93
122
55
114
128
126
93
104
123
109
105
199
138
110
140
93
122
55
138
37
92
67
69
67
129
56
104
152
55
127
148
121
178
69
111
130
144
56
138
67
84
56
56
58
151
105
110
109
127
144
105
93
138
55
69
127
37
126
124
128
132
136
79
127
37
80
102
126
122
146
137
75
86
111
68
37
77
92
97
126
138
92
139
55
131
112
92
56
112
92
112
178
152
158
122
109
99
139
55
122
134
93
128
130
105
105
134
37
127
105
77
92
168
105
56
92
110
139
55
115
119
110
132
178
148
145
122
56
126
105
67
92
104
92
74
117
134
55
58
152
92
86
122
122
55
85
91
110
134
92
97
123
55
110
91
111
138
131
92
131
81
56
107
157
105
143
93
148
159
104
106
126
138
83
37
122
110
130
145
144
152
67
111
56
86
67
120
67
126
128
105
99
122
56
163
55
67
104
55
124
119
92
93
111
55
127
162
69
58
104
69
110
97
104
152
92
126
86
110
78
139
67
104
58
152
164
83
132
123
110
128
55
104
144
55
107
138
97
99
67
67
77
129
138
124
56
56
127
127
178
69
77
146
74
119
110
99
105
92
98
37
74
68
74
146
93
56
127
89
138
160
86
93
121
55
67
122
88
110
89
144
109
169
56
56
67
126
110
107
158
127
118
145
126
97
119
144
139
69
81
107
124
107
152
109
91
110
99
122
56
107
129
91
56
104
109
114
138
138
136
55
130
122
110
117
92
122
110
139
146
104
128
101
127
78
55
134
146
123
68
106
127
123
110
105
119
138
144
103
128
110
139
67
138
69
84
126
178
104
138
126
83
144
110
119
58
158
104
37
126
122
180
108
146
92
144
178
89
136
121
134
68
107
92
77
86
104
107
140
164
86
86
119
110
92
107
92
93
93
122
92
123
92
105
55
180
99
105
79
138
114
127
138
58
93
127
122
106
126
55
93
138
138
92
92
55
79
111
110
178
92
86
140
79
105
127
86
168
99
130
91
139
124
56
138
91
99
169
56
144
122
77
92
83
122
135
104
138
122
111
67
108
105
128
75
75
180
122
67
93
127
136
92
104
56
144
146
134
122
138
163
86
122
92
92
122
77
100
55
110
56
58
100
122
144
110
128
138
93
126
99
128
122
119
110
86
69
105
89
93
122
111
95
119
92
119
126
92
99
110
56
110
110
138
86
135
146
136
92
92
68
139
152
72
119
75
138
137
169
111
67
138
121
122
122
111
37
140
138
58
114
67
169
56
138
169
55
92
55
74
55
122
111
137
147
79
58
92
67
91
127
111
145
105
55
106
110
134
104
93
79
127
92
138
110
55
140
110
128
67
132
126
75
67
56
144
110
107
67
110
105
120
167
171
74
93
148
118
92
104
126
55
122
97
138
74
124
92
126
127
104
112
92
92
67
105
93
37
122
103
93
55
180
99
69
124
75
92
123
127
110
118
139
117
99
126
138
92
99
136
117
123
123
104
138
128
55
105
102
138
138
110
93
86
55
37
139
92
111
69
95
91
126
122
148
56
171
81
138
79
67
56
69
103
109
140
122
101
75
55
67
87
110
146
139
123
37
86
122
105
110
104
144
102
139
37
97
138
93
74
124
160
99
93
144
138
178
110
126
119
69
142
163
122
86
98
58
92
104
56
105
132
37
55
124
92
122
93
139
93
92
142
67
92
144
146
92
73
132
126
83
112
130
55
120
122
120
110
92
69
37
104
56
101
92
92
134
110
110
86
91
92
120
69
122
98
97
124
126
56
58
69
74
144
134
58
127
93
55
120
104
140
152
95
126
67
37
110
110
178
134
55
104
92
122
126
158
119
122
138
95
105
69
148
119
56
105
67
122
140
105
55
79
110
106
122
55
120
92
86
105
138
128
178
83
144
92
144
92
84
69
123
145
77
141
144
105
138
69
144
107
105
68
123
126
122
103
148
128
56
104
55
122
126
158
105
104
110
103
67
105
128
99
127
106
110
74
119
139
72
115
148
127
140
168
74
68
129
55
97
100
123
74
144
114
92
111
112
58
178
75
93
126
79
122
111
111
118
104
92
99
99
93
126
55
92
119
92
117
75
75
92
84
110
92
56
92
134
93
122
58
137
122
95
67
92
68
142
56
134
111
91
105
178
110
104
93
134
109
55
97
55
108
102
122
146
139
68
169
122
56
178
123
135
139
92
136
92
93
102
168
92
126
103
86
56
37
92
137
110
67
110
55
75
93
114
84
126
136
89
105
130
99
126
99
103
134
122
132
101
97
138
84
104
144
67
128
92
55
110
105
56
128
105
91
146
141
139
138
137
100
83
55
126
132
67
105
103
56
132
178
93
134
122
105
110
134
93
92
104
105
69
110
140
134
110
92
152
119
152
79
123
67
139
56
144
137
138
68
148
124
104
64
93
104
75
171
92
104
105
180
92
110
109
134
67
110
55
171
92
122
110
109
79
79
68
92
103
126
95
149
102
105
86
55
139
140
122
115
169
58
152
91
110
167
67
67
55
91
83
104
107
146
137
110
146
120
138
58
105
86
110
37
122
37
138
92
139
110
140
124
127
89
132
196
127
110
68
90
122
37
92
92
91
140
110
124
137
122
144
122
110
134
100
126
67
109
86
56
122
141
126
56
124
105
128
136
104
128
112
110
109
75
105
58
55
107
127
178
37
77
110
92
111
119
111
122
55
92
78
132
93
199
98
169
168
178
93
112
122
126
115
139
93
55
56
104
105
128
55
178
69
96
122
128
92
104
152
92
104
119
171
91
86
92
118
122
56
199
130
74
77
140
77
112
55
55
163
111
105
126
75
55
122
95
56
138
55
127
140
111
136
58
163
91
92
110
139
139
162
117
136
95
92
105
122
171
97
123
55
92
126
144
103
149
67
128
122
112
152
55
111
103
134
67
146
131
165
56
109
92
73
37
149
124
138
55
144
108
67
178
159
105
122
94
128
100
107
67
69
81
67
55
67
71
144
127
120
56
73
58
152
122
103
164
77
86
101
92
110
110
149
144
146
92
126
96
80
91
37
99
138
126
105
144
69
55
171
124
119
123
126
142
122
109
138
55
171
144
93
111
152
92
146
91
105
135
144
101
83
104
102
99
67
75
122
75
93
89
67
118
55
110
56
108
148
128
168
92
77
122
69
101
142
138
126
92
69
189
152
134
55
139
105
93
109
138
77
92
158
68
126
126
130
109
148
68
163
104
149
91
130
37
56
139
151
110
106
122
140
117
56
67
169
99
55
105
104
108
124
92
144
93
55
122
110
167
110
73
102
122
122
91
123
123
55
55
92
144
126
103
56
126
78
83
110
118
122
112
105
99
103
69
171
92
121
55
122
162
122
91
55
112
91
169
95
110
138
97
138
37
95
92
109
77
92
92
114
86
122
105
126
122
67
89
77
69
55
139
110
56
167
55
37
126
92
122
93
146
138
74
136
64
73
128
92
165
152
126
127
152
92
168
110
119
122
58
79
92
110
139
122
104
163
130
92
114
127
103
97
86
109
55
88
93
126
93
92
105
130
101
55
79
144
104
74
55
107
113
75
92
103
122
92
56
107
110
152
77
58
120
146
107
104
130
128
130
68
92
83
136
128
111
126
56
122
104
109
105
110
139
130
92
123
139
127
130
158
139
91
37
94
74
106
178
104
102
152
127
98
96
137
93
67
140
92
136
115
67
120
69
83
71
167
134
126
138
149
105
144
105
105
92
92
58
91
123
67
104
110
92
67
110
104
123
138
55
169
122
67
165
126
86
55
130
74
99
92
119
122
89
122
152
37
91
55
89
55
131
114
148
92
101
93
93
55
117
171
128
122
69
77
55
122
122
102
68
140
136
165
130
104
105
122
122
56
165
77
83
142
99
79
58
126
123
67
80
126
126
77
122
107
138
168
111
100
120
131
122
128
72
138
140
68
67
58
152
127
118
124
126
143
55
107
100
92
120
102
102
92
67
75
126
93
110
110
37
126
140
92
91
167
105
55
110
104
128
126
86
103
115
124
105
55
95
123
69
55
144
55
99
128
61
93
169
69
178
56
86
127
83
69
146
99
127
107
67
105
146
111
110
122
148
105
55
91
77
86
103
88
86
105
105
110
92
110
144
139
92
92
145
86
94
58
124
109
119
126
92
79
148
134
55
67
108
124
110
144
55
126
55
55
91
160
124
92
37
69
58
105
147
148
129
138
119
92
102
69
141
93
127
101
92
93
136
126
128
168
91
112
138
138
124
128
92
104
123
110
58
124
138
93
105
37
152
152
104
92
98
67
126
58
104
92
178
104
126
151
55
138
139
152
122
109
180
91
130
93
91
119
92
138
123
105
37
132
119
92
56
139
151
83
110
168
138
110
131
142
67
169
55
110
84
140
164
138
56
93
68
93
55
86
67
126
55
107
111
119
93
122
178
37
37
126
93
144
93
97
83
122
86
56
74
106
92
55
99
138
134
92
131
56
105
138
127
122
109
138
56
123
55
146
92
56
124
122
79
55
64
109
138
110
139
91
87
126
132
75
92
105
178
105
93
127
103
55
104
153
139
104
135
77
146
69
74
139
110
138
169
77
119
56
92
74
109
152
122
107
128
138
77
123
128
122
138
169
94
74
180
103
91
74
91
93
144
178
178
178
104
92
92
92
58
139
58
122
119
162
99
131
122
56
127
109
98
122
121
106
92
55
126
86
109
91
67
67
132
139
126
93
139
92
138
97
93
99
126
146
55
110
146
110
37
122
122
138
122
112
111
95
134
56
86
92
92
122
56
140
105
162
92
127
130
91
163
91
121
110
92
69
105
101
55
99
56
121
145
91
138
55
69
167
134
134
79
153
107
148
123
79
74
126
103
126
124
101
86
98
83
68
109
145
178
139
58
79
180
148
163
128
124
126
110
146
123
107
83
106
58
146
98
93
152
122
111
69
158
105
112
160
77
144
68
127
123
112
126
55
56
92
112
110
67
169
152
55
104
139
163
138
89
37
86
92
79
92
126
122
79
162
105
97
92
146
110
178
105
92
109
138
80
105
108
77
75
84
139
127
79
56
83
178
37
56
171
116
106
97
146
67
126
69
122
37
104
92
126
122
79
105
107
126
128
74
152
55
122
122
105
154
104
80
110
134
75
134
169
93
124
69
58
104
117
68
115
178
102
56
75
110
67
104
134
85
105
97
139
141
127
93
158
128
105
56
127
114
138
56
75
86
67
91
139
126
144
114
92
130
138
79
55
81
122
55
162
127
135
122
55
112
58
107
159
128
77
56
92
149
105
168
127
105
144
110
115
69
104
106
110
126
178
109
86
111
105
122
55
105
55
69
123
86
107
110
92
79
83
178
105
152
128
98
92
126
123
87
110
138
92
113
144
128
122
109
37
124
126
134
127
105
100
91
109
140
107
104
101
56
67
180
93
97
171
67
131
126
55
146
128
58
119
109
167
97
163
138
110
92
58
127
122
89
124
126
74
148
126
56
126
55
92
65
144
137
93
92
110
90
79
158
77
98
139
67
67
101
152
58
84
126
79
105
169
110
67
139
92
58
146
74
120
120
92
146
108
37
111
74
72
89
111
74
178
67
140
137
58
117
105
67
58
55
105
92
92
152
99
92
92
93
163
107
107
109
123
79
77
55
199
56
100
69
79
37
122
126
92
110
122
92
139
55
92
105
105
67
55
92
58
144
171
127
122
79
119
79
92
122
160
105
67
110
134
80
58
136
58
67
69
139
79
76
105
122
130
103
91
112
105
114
132
79
105
110
142
126
126
56
147
152
93
119
130
126
93
67
105
144
110
152
104
67
148
139
69
74
171
122
110
93
104
110
119
122
77
74
55
79
55
69
140
123
126
111
178
93
178
104
86
56
74
134
123
104
122
131
114
126
104
124
126
92
126
55
93
135
77
92
93
152
89
84
67
178
55
146
105
86
110
119
95
122
103
67
105
124
123
107
67
92
56
91
55
109
56
55
136
134
109
127
119
168
144
169
105
99
163
111
79
128
91
126
123
77
92
104
83
56
58
69
111
131
138
55
104
93
107
105
163
110
139
127
119
55
105
103
110
104
138
55
83
104
96
97
178
163
126
139
105
109
126
77
92
110
92
146
127
148
122
77
55
105
103
104
126
124
175
169
55
105
119
72
92
126
146
79
67
110
150
55
93
92
68
37
91
92
131
138
110
100
140
99
37
86
131
55
122
119
79
110
95
160
104
104
91
109
138
126
152
99
105
126
124
102
105
122
146
158
127
91
110
37
162
123
93
137
110
69
86
178
102
55
86
139
146
138
118
92
146
158
86
132
92
131
104
178
55
144
144
55
114
126
121
117
128
105
72
126
105
93
69
98
67
152
69
122
69
127
120
105
141
104
79
111
111
104
126
56
110
139
182
37
67
104
83
107
74
79
56
37
75
110
127
111
110
105
64
56
103
139
138
91
93
91
146
99
105
122
122
92
178
127
123
69
99
122
79
110
138
91
97
69
138
92
92
37
122
106
84
91
92
126
199
138
139
104
109
58
74
111
111
77
148
67
105
77
115
152
37
119
126
68
55
55
110
93
92
93
105
110
148
74
55
92
162
93
129
92
88
138
148
127
67
92
148
37
119
146
108
127
138
117
105
55
83
104
69
107
93
130
104
140
93
105
182
58
86
124
102
69
67
92
122
178
105
55
75
92
92
131
105
122
126
105
138
105
124
107
86
146
92
81
110
103
103
144
168
126
138
138
140
139
110
58
126
122
117
102
105
120
144
106
61
103
83
180
92
105
136
37
55
75
58
37
178
126
122
152
80
56
55
37
97
69
55
128
122
138
103
110
55
75
140
122
56
91
131
55
148
67
106
138
112
69
178
92
144
107
68
123
92
126
120
69
127
119
101
109
120
119
128
56
123
92
134
93
126
139
158
94
55
81
189
124
119
126
91
124
92
97
110
130
178
122
128
55
93
118
103
127
165
138
93
122
126
67
118
128
148
105
110
79
104
95
89
105
58
92
119
92
171
122
122
58
122
67
79
105
110
144
92
113
122
55
122
178
105
107
119
61
91
123
92
92
109
93
77
93
55
37
119
127
180
121
106
140
178
77
146
69
55
139
109
110
81
69
98
93
139
107
69
126
58
67
97
138
127
128
100
106
55
104
69
127
92
108
91
138
79
115
92
94
110
67
91
169
103
92
126
122
178
93
117
69
55
119
138
126
68
126
139
102
141
92
124
103
81
122
169
56
67
110
86
56
146
132
122
105
67
121
110
92
147
67
110
99
124
58
125
79
99
74
146
144
119
148
146
138
158
92
92
141
58
110
105
138
120
67
99
92
91
55
55
55
152
74
55
199
126
110
167
199
138
167
100
128
107
152
150
138
122
110
105
58
97
126
55
140
58
148
146
138
104
163
143
105
144
77
105
162
131
117
58
178
77
68
101
114
123
84
111
84
55
109
79
112
178
138
149
67
134
188
127
180
122
95
93
144
123
128
110
67
92
55
178
105
37
92
126
119
102
96
137
152
107
58
138
84
86
103
105
92
140
122
119
93
169
126
55
105
126
79
130
79
126
77
144
104
126
122
122
105
112
138
126
122
55
104
93
110
92
94
92
123
69
103
126
79
137
107
105
135
119
98
89
99
100
178
178
100
111
131
55
110
109
131
92
55
93
104
178
123
91
79
56
128
127
126
56
104
152
110
123
67
138
97
92
146
77
109
55
110
67
79
55
67
111
122
171
138
92
58
178
127
128
152
139
74
55
109
110
105
138
79
138
139
78
139
92
67
69
55
162
126
169
162
58
86
93
152
104
171
58
84
67
144
97
128
126
169
144
79
106
115
144
104
126
91
110
37
126
122
37
119
58
88
148
55
37
115
104
58
124
112
95
126
56
56
58
91
121
138
105
122
110
55
122
55
142
140
118
132
122
110
119
105
67
134
122
58
122
163
139
89
107
84
68
69
68
104
95
178
107
112
89
93
58
114
55
102
105
37
92
122
55
152
138
111
107
56
56
126
93
37
68
55
144
81
120
92
102
56
83
110
110
127
55
84
126
122
122
69
56
178
105
149
126
68
105
126
122
97
99
104
77
156
152
105
55
119
67
128
147
127
104
146
37
68
178
92
138
144
107
122
98
56
101
105
144
67
169
78
67
164
138
105
69
139
95
178
138
55
112
93
117
104
139
123
56
110
91
130
92
92
105
58
86
119
128
92
139
99
178
124
138
109
94
111
122
55
104
92
104
56
92
126
130
127
86
103
55
123
55
152
139
56
114
164
120
130
37
138
126
105
92
86
105
93
114
158
69
146
160
77
128
92
105
158
96
110
138
55
92
106
144
138
92
106
86
165
100
119
128
149
145
119
98
92
92
110
126
84
122
103
86
139
138
126
55
126
86
110
67
55
92
117
110
68
104
105
86
126
86
119
93
92
77
109
121
126
178
93
128
104
74
67
67
69
144
152
178
58
111
130
119
55
58
119
74
104
125
67
102
119
139
101
110
92
105
55
136
77
125
114
37
132
98
37
145
96
105
144
146
55
169
93
110
130
105
115
115
67
67
105
86
119
92
150
56
75
139
122
92
56
100
132
160
122
178
126
96
37
56
138
146
101
110
105
75
146
55
103
128
178
119
77
67
118
123
138
96
55
91
152
104
163
104
55
110
83
67
103
55
92
74
126
178
110
101
140
104
142
122
92
79
128
139
55
136
67
55
58
111
136
98
122
126
37
67
104
126
77
147
110
122
102
178
110
37
156
105
126
144
68
132
146
110
138
122
99
93
92
139
168
138
67
86
141
55
92
99
107
93
97
122
105
138
126
92
55
171
77
56
180
110
110
131
126
138
122
55
105
80
41
127
89
55
139
92
92
89
129
69
107
97
109
138
55
79
92
122
140
169
124
114
105
58
169
178
131
122
138
104
105
37
107
122
122
138
126
75
55
126
126
105
138
105
144
55
56
58
148
110
126
123
132
105
105
93
107
105
87
138
152
109
109
88
117
118
126
122
111
101
110
109
148
178
108
127
91
92
126
92
92
92
77
69
58
122
58
138
67
147
99
146
92
126
127
123
136
98
114
105
67
92
122
93
122
169
148
110
103
169
94
104
89
77
130
69
158
122
148
58
67
134
140
126
138
101
92
138
139
92
104
122
110
138
110
67
105
110
122
67
111
146
136
110
140
117
92
56
67
67
37
105
92
105
105
55
156
109
128
93
37
140
103
140
128
122
69
119
109
131
67
109
56
139
97
107
123
168
92
138
149
92
107
146
104
55
122
148
101
111
55
114
197
111
126
56
110
124
92
104
91
75
123
69
120
104
86
126
128
119
79
58
102
104
94
181
132
105
127
147
79
164
92
122
105
92
105
92
86
93
110
107
104
87
121
132
105
111
105
134
179
92
149
105
67
164
110
55
67
149
37
55
110
56
123
84
55
122
110
58
67
37
165
127
83
77
119
126
67
93
67
92
93
139
119
130
80
92
152
127
74
69
138
56
92
78
147
92
131
110
58
92
122
146
152
93
93
107
79
58
99
56
56
109
84
140
127
148
99
92
128
93
99
56
91
107
56
138
58
79
138
37
56
110
92
92
92
105
122
110
130
56
163
127
80
89
122
122
103
139
123
69
158
119
138
124
107
104
110
131
146
67
89
139
126
162
110
55
67
110
89
126
138
126
110
97
162
37
55
146
67
131
68
91
105
135
197
104
119
152
122
169
146
127
109
37
122
163
139
134
105
110
92
97
134
134
134
124
128
144
110
138
68
132
178
104
93
93
105
146
37
169
56
165
104
67
92
169
138
67
92
84
93
92
145
77
138
74
75
144
91
129
77
79
127
99
122
104
92
55
67
123
138
119
55
92
180
77
127
92
122
55
125
117
72
92
56
128
67
101
37
92
132
171
94
121
123
105
105
117
127
105
152
110
85
55
103
169
189
92
92
79
139
127
77
110
139
138
105
92
178
58
75
140
67
92
152
93
168
86
56
103
86
142
122
58
105
104
83
112
56
123
110
58
126
94
105
125
92
92
146
67
105
109
138
126
93
79
127
86
109
109
106
84
69
109
105
92
110
114
92
152
92
98
77
106
55
122
106
110
93
99
67
110
104
105
69
178
101
110
117
92
93
105
103
145
92
128
134
105
55
55
67
145
119
92
104
92
99
138
122
163
110
55
87
56
92
144
56
75
144
105
125
126
120
56
86
97
69
92
130
74
158
55
127
79
103
77
55
83
100
122
137
122
86
69
169
74
56
105
122
118
138
119
110
91
110
55
122
108
144
136
128
67
105
92
128
126
111
99
55
109
81
55
86
91
180
118
107
171
58
128
92
93
119
122
146
78
178
105
105
139
74
93
122
122
178
144
68
67
138
138
123
169
83
169
67
169
86
169
97
68
117
134
120
115
111
92
95
110
95
100
119
93
134
152
109
144
67
120
135
126
124
127
168
136
128
56
140
148
56
137
105
91
110
119
127
132
178
56
68
130
126
86
105
91
69
139
93
152
144
91
74
145
93
178
126
67
37
105
67
119
55
126
178
126
130
131
140
122
103
136
135
56
55
124
124
149
180
56
104
114
132
132
112
93
126
152
134
122
146
110
109
138
69
126
79
144
114
79
55
138
55
74
69
123
123
99
129
81
122
136
56
69
37
104
136
178
96
128
55
107
122
93
119
112
99
104
144
93
56
92
111
80
126
121
146
37
158
96
105
37
122
55
58
151
83
122
178
92
163
127
111
123
129
86
78
129
91
56
55
127
110
92
104
169
109
127
117
93
93
140
37
132
105
144
93
103
110
135
55
98
86
92
67
110
122
103
56
92
113
37
110
56
93
74
126
55
69
140
146
92
168
55
122
122
164
112
98
58
55
105
138
69
110
144
103
97
91
104
92
122
138
123
69
152
105
117
115
92
105
55
56
117
137
140
103
139
139
83
92
94
83
93
103
110
83
99
83
158
58
74
55
92
105
93
92
110
105
122
122
122
178
139
74
91
105
139
86
139
104
81
56
179
56
126
77
117
126
67
74
178
69
37
104
75
104
89
152
69
158
67
67
111
122
122
55
56
182
144
67
122
138
93
103
109
128
67
37
122
100
146
93
67
78
180
79
79
67
101
152
77
146
126
128
67
120
104
122
148
91
137
69
58
92
124
112
56
122
37
58
144
126
92
56
67
85
122
91
92
104
110
99
123
55
138
110
68
171
110
68
112
86
122
92
117
146
56
129
126
110
89
92
111
127
115
93
67
110
128
163
103
169
138
148
126
138
37
89
148
93
127
92
119
56
98
92
37
58
111
67
92
37
99
138
93
67
98
127
112
110
122
168
124
110
122
79
97
95
92
55
92
112
127
122
55
93
134
164
55
110
55
169
88
92
128
123
122
92
92
139
126
104
91
37
109
103
100
81
171
55
79
130
77
110
123
92
164
114
109
110
86
130
126
81
126
130
119
92
96
109
199
150
105
77
78
101
67
97
107
92
56
138
93
126
138
144
103
138
138
105
126
146
139
93
77
103
115
138
74
128
122
101
131
92
146
127
74
119
92
103
69
138
124
146
92
55
131
110
148
92
120
97
139
110
58
56
67
77
144
140
55
138
58
67
163
104
123
56
92
56
56
94
92
110
127
138
69
101
126
37
132
110
130
92
140
79
89
128
106
171
74
74
37
108
144
126
110
119
67
69
178
105
125
105
79
119
115
56
103
104
55
58
122
92
86
134
93
79
109
120
122
69
79
93
122
92
101
58
86
188
105
69
92
92
105
131
107
67
122
92
58
74
107
92
132
130
98
119
74
86
55
128
126
92
131
126
91
79
123
83
37
128
104
119
37
132
162
109
99
128
55
111
127
123
67
107
91
138
79
37
58
119
123
145
78
69
126
84
122
126
55
74
139
105
127
158
79
99
124
86
91
105
68
169
117
104
114
77
100
106
56
122
105
124
131
97
93
105
127
55
86
148
180
91
104
55
110
110
105
103
91
122
104
75
122
101
122
178
101
56
91
110
131
110
136
132
140
138
110
169
178
140
131
55
105
139
110
58
110
122
109
83
124
104
92
117
91
197
79
117
79
58
152
86
93
109
114
94
68
91
135
110
122
37
111
109
107
110
169
69
105
126
67
74
122
122
122
55
92
180
122
128
144
168
58
106
136
126
146
91
136
134
128
126
110
168
97
37
92
140
58
55
119
93
55
126
98
105
139
56
37
139
139
74
74
178
144
130
134
110
79
91
55
92
64
100
67
126
136
146
109
105
163
128
110
56
37
56
132
91
126
81
91
74
122
128
110
74
100
119
107
107
148
110
92
111
58
130
77
139
122
74
124
127
112
110
80
99
123
139
123
91
141
120
86
68
119
92
92
105
56
139
74
109
105
137
92
168
126
138
134
162
169
67
97
104
97
152
104
138
129
122
67
92
58
92
92
178
124
126
100
140
132
111
67
92
122
67
165
122
102
69
148
55
139
112
115
56
132
81
37
69
169
68
91
58
138
122
182
92
105
107
138
55
115
126
37
109
55
152
146
86
148
67
86
93
134
74
92
110
105
67
135
72
69
107
139
128
55
146
37
128
152
122
110
178
86
122
104
91
41
163
101
136
75
123
77
164
37
131
55
144
110
105
99
111
140
104
104
79
69
110
67
169
114
122
178
111
103
178
75
128
107
188
111
74
120
99
92
122
105
107
152
55
55
110
69
56
135
126
145
116
69
91
103
67
144
138
122
178
105
105
105
86
37
111
92
169
138
92
140
139
110
112
169
80
124
92
112
127
92
37
99
55
93
75
92
83
92
165
127
105
104
92
148
83
55
146
122
138
127
110
139
86
138
148
105
79
67
56
122
120
87
139
122
92
104
92
152
119
93
93
152
168
69
55
178
178
58
83
69
138
55
137
138
158
109
78
105
163
104
178
139
92
113
86
99
75
69
118
127
169
67
58
55
105
122
91
92
104
108
122
126
75
79
74
74
127
77
92
37
122
132
79
55
144
105
145
75
69
141
79
114
58
158
58
180
145
122
126
109
127
55
162
123
75
100
126
111
122
58
55
55
69
55
99
119
156
118
68
93
56
93
55
86
152
110
55
110
68
115
55
162
67
138
99
138
126
169
110
138
114
79
92
127
79
140
111
178
110
114
89
178
37
104
180
105
56
100
126
122
126
158
158
79
103
118
110
114
58
105
109
119
123
138
92
55
55
58
111
148
107
180
105
99
136
128
107
169
86
67
67
144
145
95
110
98
122
110
158
95
152
138
97
109
169
144
138
139
142
56
69
109
91
83
56
140
105
148
105
105
110
118
139
93
124
124
159
144
56
126
165
105
69
127
79
37
67
110
110
105
119
108
55
77
105
127
126
126
136
77
126
107
92
180
138
75
126
68
93
124
124
109
92
132
171
68
146
67
139
56
67
111
126
55
126
92
55
118
181
112
106
151
108
92
104
104
112
37
86
86
121
37
67
139
138
95
152
106
110
122
108
91
123
105
104
68
130
67
108
84
123
104
130
138
144
77
92
121
77
110
93
111
126
79
79
67
126
144
126
68
84
144
98
103
122
91
91
68
67
92
134
92
120
69
148
109
152
122
110
160
124
148
152
127
171
77
68
37
67
123
126
138
132
37
110
92
67
126
93
110
77
91
95
81
93
169
105
104
56
104
138
122
152
103
138
138
110
109
75
69
123
56
140
160
55
55
124
106
111
178
137
55
119
110
58
119
56
105
69
104
108
77
131
122
169
140
109
110
95
93
91
163
122
105
130
110
111
115
93
86
139
92
105
171
68
127
67
97
127
121
103
92
134
107
104
92
86
127
104
140
122
139
92
138
112
110
178
130
99
104
55
79
75
146
148
126
105
93
123
110
130
121
67
55
99
97
55
74
134
139
67
77
123
138
105
69
138
105
114
69
108
92
75
138
144
126
103
122
126
131
134
92
97
130
86
77
55
86
110
75
139
92
145
92
144
110
156
128
122
122
118
126
142
152
138
110
67
92
103
163
123
77
37
138
107
139
145
77
37
122
144
124
122
109
67
105
138
58
92
92
122
111
92
135
92
168
83
126
122
126
56
126
58
67
55
107
123
104
105
122
127
74
105
67
79
105
107
105
92
92
126
126
91
75
110
105
131
105
132
144
139
148
165
178
55
107
67
105
93
138
122
92
55
163
138
138
113
55
126
78
110
144
98
144
68
139
105
77
144
110
69
104
134
162
114
128
127
58
103
56
55
109
96
105
58
111
110
146
132
67
126
98
180
84
91
146
134
110
58
146
112
92
105
105
92
102
105
178
93
92
105
55
131
91
130
114
106
37
110
104
118
122
105
132
37
74
86
126
92
104
91
92
91
119
112
122
67
109
56
105
110
138
77
67
123
140
144
134
138
88
104
110
55
140
86
127
122
110
98
105
128
58
105
127
152
67
127
122
69
104
139
123
162
148
109
144
103
58
92
138
93
130
110
165
110
144
37
92
130
122
67
79
110
58
92
139
134
55
171
124
135
178
104
79
178
37
69
101
110
119
139
93
119
75
138
138
139
127
74
92
104
110
109
55
118
138
124
131
138
92
129
111
124
138
84
104
92
127
115
104
77
120
110
56
55
138
127
163
105
122
92
79
111
138
144
92
110
122
111
93
56
111
129
136
126
92
111
104
134
67
146
111
105
117
104
109
139
56
89
116
146
126
123
158
111
118
107
117
93
55
92
37
138
105
126
69
99
77
95
97
138
105
126
144
119
79
111
67
110
110
56
105
93
122
122
126
158
55
120
109
192
139
165
94
93
118
68
67
83
144
77
103
67
67
111
146
83
105
139
92
122
93
92
105
152
105
109
138
114
67
94
104
75
55
122
91
95
127
92
104
58
178
140
169
139
122
55
92
122
55
126
127
75
146
178
141
111
122
92
132
169
130
120
104
75
91
123
67
67
149
67
92
74
55
83
92
119
77
105
127
119
104
128
168
56
92
104
117
83
104
138
55
156
122
111
109
104
75
127
104
112
86
139
75
169
134
128
92
122
110
103
158
93
105
127
92
79
122
58
92
105
152
102
75
152
69
55
138
74
126
55
92
119
167
55
69
139
138
140
128
93
55
92
126
37
55
144
69
58
93
92
178
105
55
130
67
126
169
104
92
58
83
156
55
81
55
117
160
151
107
130
135
130
89
96
144
93
110
55
162
126
146
169
92
139
92
127
152
138
81
105
67
93
110
122
103
139
92
103
127
178
117
104
55
110
130
119
98
56
104
122
139
165
69
138
67
84
74
131
86
140
97
123
108
109
56
163
124
55
55
109
158
138
147
122
120
127
152
104
128
152
138
109
103
93
131
86
105
93
92
72
99
104
109
122
92
109
92
92
95
58
165
37
112
119
97
146
149
78
67
138
114
37
107
104
93
77
165
152
92
79
111
142
126
93
134
140
56
55
134
69
122
144
115
144
91
86
97
144
168
93
138
124
92
115
84
112
55
79
55
92
135
131
55
160
101
75
86
105
55
107
103
55
37
122
97
127
152
148
117
110
112
122
138
146
56
111
119
178
58
110
180
93
117
130
107
55
108
122
104
137
107
67
91
138
55
104
140
56
126
101
109
92
138
103
131
138
37
138
105
75
118
92
164
112
110
110
103
127
178
67
139
67
119
122
104
138
108
137
107
67
112
104
162
119
137
91
138
148
55
129
150
110
55
91
93
92
126
110
144
105
147
139
105
93
77
122
96
92
89
92
181
110
83
56
100
83
84
138
98
86
169
110
105
169
55
114
74
137
92
55
58
117
104
106
122
100
93
152
158
55
37
67
55
152
93
122
105
152
127
55
110
178
69
103
99
120
137
138
93
138
105
130
67
69
134
122
105
120
122
109
104
93
92
92
58
126
108
122
55
107
56
105
94
124
139
178
79
92
93
105
93
128
107
55
92
68
146
120
127
74
111
97
158
37
91
92
91
171
67
68
134
103
124
101
92
92
171
138
111
110
122
105
125
92
92
93
78
105
110
110
110
55
67
188
192
109
171
110
93
110
127
56
56
92
93
117
67
120
148
92
137
92
67
119
126
75
77
122
138
55
127
126
93
130
67
118
103
188
124
92
160
58
110
97
165
104
55
93
92
84
79
139
156
56
126
123
164
152
134
104
110
86
92
128
105
97
80
171
55
78
122
110
114
146
92
83
169
117
67
105
106
122
92
138
55
146
105
99
58
110
178
100
92
138
126
55
178
127
86
126
93
138
37
97
131
163
123
126
138
84
37
134
74
56
95
67
144
105
129
178
58
117
67
56
148
92
93
92
102
122
67
58
99
142
56
135
67
101
99
132
138
58
124
55
55
122
126
105
122
37
92
134
104
91
139
55
107
123
106
55
55
127
67
37
138
181
80
69
91
55
122
152
122
118
122
92
105
104
104
114
67
123
156
141
127
55
56
107
138
152
130
86
126
105
105
87
58
55
55
91
37
83
83
103
114
134
126
128
92
105
123
86
91
110
138
117
138
91
104
160
92
55
146
37
55
97
81
84
136
101
122
168
111
55
55
105
178
114
92
123
37
144
58
93
105
158
58
56
144
98
152
152
146
55
56
67
146
127
139
122
110
69
143
105
105
178
110
128
134
119
104
169
109
122
56
104
112
69
67
105
104
123
74
79
84
83
178
144
102
199
146
122
125
56
124
83
110
149
120
83
169
127
56
109
92
112
139
110
126
79
111
120
55
114
67
95
56
122
141
136
138
95
169
107
110
87
55
139
136
95
101
67
92
148
106
124
128
93
55
91
37
75
178
79
69
180
55
37
138
107
122
55
105
56
169
93
56
126
110
178
58
77
109
109
109
69
86
148
81
139
119
99
131
111
110
152
106
92
122
92
55
86
110
92
67
56
111
134
75
130
111
126
131
67
109
124
129
180
171
122
140
140
86
99
122
126
120
162
93
79
122
104
67
79
92
102
92
138
144
123
76
144
112
122
119
92
56
103
138
138
128
67
119
74
123
110
77
92
112
92
178
104
101
75
119
130
144
109
107
117
126
103
138
126
102
55
141
139
138
56
125
96
122
102
92
164
107
138
140
140
140
75
126
139
93
139
171
77
105
123
104
134
91
107
126
160
128
93
92
55
75
89
126
105
139
178
92
79
127
83
68
58
37
58
67
122
105
104
67
178
168
56
64
136
79
109
129
104
67
55
126
110
138
132
96
37
123
110
126
67
86
97
127
103
107
110
109
169
92
178
103
102
86
56
119
124
171
92
124
97
92
91
182
122
105
67
104
92
113
58
83
79
75
122
104
56
110
145
74
122
146
74
101
167
55
158
103
67
126
178
111
124
104
88
113
55
122
74
169
97
168
93
79
127
74
91
169
117
94
55
100
138
79
67
105
121
91
105
80
77
127
79
119
149
118
111
77
111
83
92
121
55
128
79
178
140
68
58
93
136
148
139
69
56
93
126
92
169
55
109
109
86
37
83
107
37
93
78
55
118
58
138
109
104
169
103
138
120
104
132
104
104
67
37
105
83
113
146
134
123
92
125
93
142
121
105
41
122
127
128
105
171
119
56
132
130
162
106
122
126
152
92
132
105
91
138
68
110
122
96
122
93
87
105
56
56
92
122
86
79
146
150
130
139
123
55
58
67
111
122
37
58
140
168
58
92
55
56
111
122
93
140
105
105
37
110
138
122
152
122
92
109
109
126
122
92
37
89
162
86
102
156
92
126
122
67
144
182
127
122
126
55
92
144
110
55
138
58
67
92
74
178
105
69
93
111
178
67
86
99
126
105
160
86
55
102
178
111
122
110
138
97
109
97
91
86
178
74
105
119
56
104
111
56
67
106
138
125
104
122
105
92
104
96
167
126
138
122
168
144
58
77
109
56
148
56
138
109
138
92
118
110
137
92
152
55
55
119
108
109
37
122
122
109
110
97
152
93
58
37
104
122
120
168
67
93
55
67
37
122
107
126
37
67
92
74
152
84
125
103
103
98
122
101
139
167
92
103
131
124
123
86
130
67
67
124
120
152
75
112
100
55
126
92
92
122
77
126
37
110
151
99
138
127
92
92
146
69
120
110
106
151
146
152
178
138
138
132
131
132
67
126
139
122
126
55
126
91
123
58
138
67
110
110
122
119
92
110
110
127
163
58
107
79
110
160
110
118
144
92
67
92
107
91
139
72
55
112
140
152
55
163
107
178
92
58
56
55
140
152
69
91
127
55
127
110
138
138
75
126
151
144
105
126
75
114
37
104
127
100
86
126
119
139
123
120
99
117
144
178
104
55
138
105
148
114
109
93
55
89
103
55
110
126
127
84
110
132
55
91
134
120
123
163
101
124
110
121
92
110
67
128
37
122
128
138
119
126
77
92
92
138
132
119
109
77
56
122
127
55
105
152
92
101
99
122
55
74
84
110
139
75
105
126
79
179
119
118
119
106
140
98
105
96
126
99
79
126
138
127
138
78
102
140
178
108
152
103
92
55
122
122
126
121
102
93
93
111
56
93
139
122
138
144
152
140
110
131
56
97
75
67
139
126
171
126
107
126
180
112
126
131
100
92
169
131
136
139
140
55
100
92
163
122
110
93
163
119
37
99
58
55
126
93
58
104
91
94
99
67
100
87
92
92
91
126
91
103
122
144
180
128
93
114
139
74
79
126
105
104
171
114
122
107
92
132
127
56
111
103
55
144
55
84
110
127
110
95
55
99
58
86
108
97
146
149
92
130
56
92
110
127
93
122
86
69
79
112
87
139
55
92
152
139
92
171
152
79
104
119
123
83
152
112
130
141
138
126
77
37
126
104
152
93
126
105
158
127
126
110
146
77
79
92
56
178
126
134
79
105
131
92
126
131
115
138
97
92
93
104
108
134
89
91
55
79
178
88
93
126
141
79
92
145
108
110
92
108
107
126
93
152
99
37
91
110
86
152
104
56
114
114
130
84
127
110
37
104
132
118
118
106
128
126
79
124
55
124
123
74
103
104
180
113
109
92
123
106
55
119
92
124
125
110
149
178
114
67
146
92
56
134
160
77
87
92
89
37
105
139
128
111
128
79
122
179
139
127
93
150
75
124
104
103
178
100
56
122
144
140
79
91
110
74
152
68
94
56
104
112
111
98
105
108
122
105
69
169
122
135
55
118
145
105
79
37
119
92
104
105
110
127
92
92
55
99
80
77
97
110
165
86
124
101
74
141
110
105
134
73
138
55
56
91
110
105
75
110
104
111
103
84
148
104
139
93
163
119
117
171
83
105
122
178
102
93
144
101
107
131
128
165
120
75
107
127
104
107
132
134
67
144
37
131
101
79
109
139
169
117
131
128
130
182
122
105
119
104
92
92
131
178
93
93
109
55
55
69
97
124
126
100
86
111
55
150
125
105
138
125
67
94
140
124
115
132
67
92
120
120
178
93
80
77
136
75
92
120
91
127
67
138
92
180
79
125
75
67
138
178
101
139
97
122
124
122
75
132
105
120
128
156
110
178
105
91
122
178
97
80
86
99
55
95
126
122
93
122
92
68
109
56
129
141
112
138
159
56
105
78
148
92
103
122
83
122
69
108
92
58
138
141
67
55
56
122
84
114
144
119
140
145
55
171
178
168
67
58
105
168
123
87
126
139
148
152
92
139
78
136
97
148
58
179
102
122
92
146
138
75
93
171
169
139
146
126
97
105
92
37
105
95
169
93
126
111
110
134
122
146
94
92
180
126
37
122
93
109
103
104
123
144
69
110
55
68
122
138
132
124
139
171
139
74
76
91
125
91
104
137
92
146
55
92
171
178
125
138
83
171
158
58
67
148
180
105
137
102
93
138
105
114
56
138
137
75
75
139
144
138
189
152
124
126
92
93
122
106
99
74
104
130
86
138
105
139
77
104
37
146
122
122
56
95
94
138
140
157
92
69
112
147
128
110
102
84
110
75
126
99
67
139
146
92
110
122
105
169
105
107
124
169
92
92
124
56
144
55
178
138
37
152
140
104
99
106
138
122
55
55
104
99
126
199
139
58
122
138
86
126
93
69
119
107
105
119
110
111
136
75
126
92
92
152
171
178
111
104
89
136
92
110
104
178
138
93
112
93
86
167
74
110
55
138
115
69
92
163
82
127
152
156
37
139
149
139
58
109
86
171
68
92
99
92
74
58
84
132
126
69
92
127
148
99
74
86
93
178
107
144
146
105
100
123
178
104
188
67
81
123
69
141
37
105
107
126
105
128
86
92
119
112
171
148
126
75
100
86
104
67
169
100
92
79
56
105
134
56
109
171
149
163
109
100
91
105
55
99
104
127
69
162
105
122
158
109
122
75
112
92
148
135
146
178
104
138
164
103
152
93
41
178
105
83
104
111
114
105
132
111
122
99
138
122
37
122
146
140
37
93
93
56
143
67
94
105
93
142
130
105
98
100
132
69
67
126
55
69
109
92
103
92
107
55
56
129
140
138
75
110
103
104
138
111
55
145
101
56
153
138
91
83
162
80
139
110
146
126
138
84
92
110
99
105
92
122
119
107
92
188
123
101
138
69
112
122
92
93
144
128
111
131
110
105
116
120
109
122
83
105
134
142
92
139
92
105
92
178
126
138
124
99
178
107
111
122
69
178
56
126
128
99
105
139
86
67
79
97
107
110
110
126
148
104
105
104
131
79
92
102
92
107
110
101
67
92
105
84
68
86
91
56
97
180
111
92
112
178
146
105
37
100
93
105
128
130
123
111
89
58
152
79
92
95
124
110
104
128
122
178
178
93
128
77
105
55
95
58
135
83
137
122
104
86
93
58
109
86
123
111
138
188
119
92
159
110
124
103
104
124
146
139
111
106
110
97
112
126
92
91
92
55
110
68
124
92
171
104
144
77
86
86
145
171
105
149
131
111
111
127
168
126
79
122
119
74
123
73
80
55
105
105
105
104
91
128
37
122
178
56
93
105
105
177
139
171
122
110
126
197
98
41
105
91
111
55
146
55
55
58
126
92
134
146
105
92
124
92
107
146
69
112
140
178
119
104
129
105
119
89
118
119
91
84
104
110
138
122
55
69
122
126
169
55
110
103
77
122
75
110
69
105
110
171
55
138
93
118
128
126
144
84
123
104
37
109
128
139
128
138
138
126
110
124
86
107
120
126
99
93
79
123
122
41
138
93
58
109
122
105
92
67
103
89
55
152
91
110
55
98
136
97
110
79
146
139
37
122
104
152
178
138
37
92
105
92
92
93
105
58
55
152
92
105
92
91
105
192
122
122
122
128
58
126
81
152
110
134
119
104
77
126
138
67
55
77
145
93
86
79
179
95
135
127
103
134
122
104
92
55
111
104
86
123
55
144
118
92
122
162
56
105
130
137
89
123
110
152
112
67
58
92
146
127
79
105
105
56
111
106
134
58
67
126
104
117
122
83
140
55
126
111
149
69
78
139
111
102
128
117
93
56
178
122
86
105
99
74
144
152
148
105
122
126
67
67
75
92
75
92
126
55
144
110
149
74
126
132
165
138
134
37
160
105
139
79
67
55
69
126
130
105
122
86
103
146
122
146
122
125
146
55
115
124
93
92
92
122
126
119
178
37
152
148
126
122
55
123
119
92
83
99
158
180
124
119
127
132
92
114
86
121
130
169
110
105
152
89
171
178
110
128
140
110
158
67
92
110
105
58
92
126
152
55
58
168
55
107
98
126
137
118
152
127
92
144
110
139
109
123
97
123
110
56
130
58
122
119
55
74
100
93
93
137
74
144
73
77
37
93
100
55
61
134
144
92
138
93
58
147
56
126
144
120
93
165
122
127
119
138
138
128
105
171
104
126
178
81
105
109
110
119
139
92
144
122
92
136
86
56
111
107
67
79
127
69
107
94
79
92
126
77
162
142
148
75
67
178
158
79
119
122
139
93
104
140
92
146
148
125
105
145
92
92
151
123
122
107
127
131
94
92
67
104
67
55
81
109
135
103
104
56
139
123
83
112
163
58
92
105
104
89
79
89
137
56
122
128
105
67
117
127
164
111
140
122
144
140
92
109
93
105
105
79
74
119
126
92
67
105
139
91
89
136
105
69
128
104
145
112
55
58
105
119
55
124
56
125
124
119
105
119
126
119
55
138
92
107
144
169
69
129
120
67
55
127
110
109
103
110
129
92
92
92
178
77
122
107
110
55
122
130
37
126
55
74
78
126
121
92
92
123
126
55
110
134
119
92
105
77
110
123
55
127
111
163
139
122
149
144
101
139
103
96
100
55
140
110
119
92
37
118
93
74
122
58
124
37
68
152
37
84
178
55
56
146
107
88
122
121
67
55
139
37
140
124
142
178
91
37
67
120
95
128
122
95
139
139
128
55
58
55
83
86
152
124
92
122
164
92
128
138
109
56
152
138
109
109
56
144
99
139
94
69
138
104
140
128
114
146
117
110
92
169
92
37
178
56
58
110
58
105
110
136
67
123
169
122
74
55
122
147
79
67
139
152
134
138
128
111
122
97
104
137
91
126
86
58
75
69
111
58
107
134
86
91
122
105
111
168
122
140
86
127
145
103
37
105
72
102
110
136
75
138
123
55
104
56
103
148
105
111
126
104
105
107
37
102
138
139
105
92
109
120
104
127
83
99
122
113
108
138
87
122
138
178
106
105
130
126
114
93
144
77
67
110
105
178
104
67
108
148
119
104
104
58
56
77
74
138
93
111
92
74
110
105
138
171
138
168
132
80
114
169
163
105
138
69
122
127
126
79
144
110
152
136
55
97
120
105
110
56
144
55
92
92
37
131
123
93
74
126
37
122
99
92
118
105
86
134
92
175
152
84
111
178
124
55
122
120
169
105
91
58
180
141
107
178
122
37
119
122
138
88
127
75
74
136
122
75
171
111
69
122
138
92
126
158
139
110
58
106
37
110
92
107
104
109
93
110
67
168
124
144
148
147
124
56
56
108
149
140
162
127
122
131
104
79
68
126
69
148
107
124
86
92
152
178
120
111
83
93
110
111
37
67
79
55
163
92
55
119
126
86
68
138
122
74
83
110
79
134
120
91
165
92
147
104
112
152
55
131
148
188
92
146
91
119
91
68
67
127
157
55
126
102
92
146
55
139
67
171
139
109
97
55
130
103
100
152
84
124
140
112
55
139
74
98
86
67
140
67
110
138
134
111
92
142
91
92
138
58
111
92
84
72
92
104
105
127
55
89
55
139
111
122
37
95
93
122
69
178
98
128
92
132
149
109
83
69
123
111
128
110
105
111
103
56
109
178
160
110
178
86
72
137
126
136
139
139
138
123
117
158
91
138
92
168
55
158
119
92
105
55
127
91
84
110
92
79
119
77
107
146
140
104
97
138
179
58
99
136
115
92
103
121
89
37
122
105
104
128
122
67
146
92
139
128
124
122
103
55
149
37
108
91
128
55
152
105
111
158
144
93
152
69
139
105
110
101
55
124
122
71
58
110
169
97
93
109
144
126
171
103
69
136
84
92
55
165
86
124
92
107
138
92
92
153
58
55
93
119
67
55
110
67
97
128
95
94
119
79
74
134
98
114
156
136
102
83
92
110
67
144
139
104
73
92
109
55
84
55
37
92
108
92
37
105
105
123
104
56
139
169
105
122
37
91
99
148
105
105
131
162
67
105
104
104
163
122
105
86
86
105
37
92
74
92
92
77
126
67
128
178
128
58
111
126
171
104
138
134
79
131
37
58
92
126
144
104
122
110
126
123
105
119
165
119
105
146
152
67
162
61
77
139
132
92
67
108
152
74
109
79
105
126
138
137
138
92
75
139
92
126
56
124
146
112
142
67
122
180
105
111
67
111
105
92
99
68
92
120
56
111
131
94
68
105
104
92
67
119
55
55
138
100
122
128
111
58
105
125
110
137
144
99
132
130
55
58
67
56
80
126
93
102
92
56
112
112
109
67
69
122
56
162
93
89
123
92
119
140
140
91
67
111
115
92
122
89
55
109
123
67
93
92
148
103
146
67
58
134
123
110
86
126
110
84
105
79
67
106
127
77
114
122
97
110
110
110
110
144
110
74
74
123
105
109
119
92
98
124
104
37
152
69
106
68
67
93
122
110
126
105
67
79
131
55
118
112
91
86
144
126
93
79
111
79
69
97
138
92
158
105
145
119
75
127
74
86
126
120
152
92
110
160
110
128
93
162
77
127
144
138
145
79
55
37
92
75
132
126
86
127
93
55
67
84
107
105
103
75
105
139
144
140
132
134
110
105
135
37
138
107
56
140
138
126
105
104
104
78
93
77
123
67
123
37
144
92
145
164
86
122
56
69
138
125
124
128
129
85
69
93
131
126
98
75
92
105
105
91
104
55
124
76
67
68
104
129
105
74
67
93
79
138
103
132
163
124
145
119
109
122
55
142
101
144
122
128
37
140
114
79
178
37
75
139
128
107
123
126
67
91
110
136
110
123
101
163
178
178
99
67
152
152
68
140
55
138
98
109
110
132
77
77
122
86
168
127
77
142
93
109
144
136
124
169
105
130
139
103
79
68
79
92
78
146
74
55
93
91
55
138
156
158
135
105
104
68
96
110
127
105
126
122
92
92
152
126
86
138
162
79
152
92
180
55
110
128
103
128
91
171
122
138
77
111
91
138
55
58
106
140
84
110
110
55
139
93
104
55
102
69
98
107
105
138
169
58
104
105
67
138
56
86
132
178
127
69
75
107
67
123
123
123
77
123
96
67
99
105
110
139
144
169
127
152
58
102
105
74
105
104
146
122
55
105
178
55
37
178
92
158
77
119
112
98
99
58
126
138
122
123
89
55
104
126
105
134
104
123
110
98
146
138
139
124
55
92
109
86
152
92
55
92
148
138
37
148
99
138
110
135
56
122
139
123
110
67
98
37
91
110
67
56
105
126
99
37
93
152
110
99
93
75
123
81
152
112
92
67
97
105
55
97
55
101
138
93
86
104
126
56
118
92
101
126
79
134
138
110
105
132
115
93
67
120
37
134
92
78
110
55
126
110
124
152
56
138
55
125
138
163
110
92
86
91
169
55
93
146
55
114
144
138
55
178
75
130
119
55
145
86
126
99
140
144
131
145
126
140
131
112
37
101
86
178
114
77
117
86
105
120
199
99
79
163
58
68
86
104
126
113
92
109
139
126
122
144
104
138
126
167
139
178
56
111
144
104
56
93
169
37
56
138
99
100
58
158
171
58
104
138
126
83
81
55
37
142
67
92
146
97
37
126
77
93
178
67
178
123
92
137
138
124
92
139
119
92
126
128
104
110
151
77
122
55
92
138
111
127
68
110
105
169
180
67
92
99
55
83
122
110
73
109
108
152
89
110
144
92
182
140
83
105
110
145
67
122
139
107
99
107
74
149
69
102
105
127
104
126
75
67
97
139
104
151
105
136
122
112
86
37
56
126
81
163
77
86
67
178
92
144
100
123
138
75
148
107
55
92
89
118
100
169
127
132
110
111
110
88
112
122
111
92
126
114
146
144
144
138
86
58
37
123
165
144
122
122
124
69
122
92
58
140
69
86
122
125
171
91
139
171
107
152
122
135
146
58
127
68
103
105
122
122
137
104
92
83
79
123
131
122
144
95
86
180
171
91
111
178
104
67
83
103
104
58
79
91
114
94
179
95
158
140
100
92
138
180
134
89
152
92
126
107
127
126
158
144
86
77
109
77
140
178
123
104
93
107
55
77
122
104
122
67
92
101
67
99
180
111
58
120
142
123
144
138
104
92
97
119
138
119
37
110
101
111
199
97
110
126
122
169
92
92
127
92
119
148
97
144
178
67
109
119
67
126
169
111
104
93
107
126
138
92
37
56
37
122
105
126
119
110
55
146
146
105
127
148
138
92
67
178
127
101
92
139
55
91
67
92
67
139
128
108
93
104
92
127
122
56
56
117
68
109
58
138
109
93
79
107
58
104
104
124
93
37
104
120
119
98
55
111
91
139
102
163
92
100
55
100
99
146
138
119
111
92
163
37
139
119
138
144
122
169
152
110
113
55
56
134
91
67
110
144
126
123
169
122
123
160
107
132
178
138
69
98
152
58
119
79
165
105
142
104
55
55
126
152
67
105
92
92
117
91
110
103
178
138
122
112
91
83
114
178
106
153
110
146
92
140
180
58
141
123
93
58
178
140
107
91
111
127
171
104
119
67
56
139
92
105
134
111
101
153
86
127
92
122
169
77
56
124
55
67
88
122
68
104
138
122
132
122
92
138
67
115
122
128
118
55
122
105
92
105
119
67
92
138
119
101
97
178
91
110
93
117
138
130
110
93
111
56
145
137
118
146
37
126
165
171
144
58
178
110
96
178
104
101
148
99
122
108
122
127
105
92
112
104
146
127
144
108
100
140
111
127
127
92
103
126
99
68
126
138
110
110
55
110
145
55
88
100
127
56
75
92
122
110
138
139
67
92
37
55
58
107
93
56
37
105
138
111
55
105
92
126
86
116
132
67
145
126
128
169
92
92
92
55
128
75
92
67
158
91
126
91
127
56
55
144
142
121
56
160
104
146
55
97
126
122
56
107
95
55
56
97
92
55
102
132
127
178
79
93
91
67
126
67
93
126
132
109
91
74
56
107
139
139
134
92
67
109
158
55
74
109
110
138
122
92
123
144
112
107
55
119
78
69
88
129
92
104
122
126
128
56
58
84
79
104
110
110
110
77
92
124
55
101
128
169
122
130
128
55
117
144
117
104
139
139
55
102
91
126
108
124
110
126
122
178
37
94
129
138
91
138
112
123
55
144
56
123
86
110
107
91
135
122
140
92
55
79
123
151
152
140
109
92
103
92
123
92
124
130
122
104
122
37
92
128
58
126
92
75
92
94
110
105
110
92
122
56
93
91
152
141
91
55
151
117
87
150
110
77
169
58
122
104
79
105
69
126
97
110
67
119
139
117
109
91
55
92
55
37
124
56
107
119
178
146
104
92
104
136
122
67
123
126
92
99
131
120
105
104
152
107
92
92
122
132
122
37
137
111
137
111
110
79
122
118
93
67
86
66
119
56
130
122
67
105
105
124
55
123
96
127
79
122
152
163
127
83
77
56
55
110
144
55
86
118
107
136
67
171
123
93
126
93
110
140
92
56
94
55
93
67
67
86
55
122
93
86
132
92
139
138
120
131
58
128
92
164
110
178
86
138
105
123
111
55
124
104
118
92
110
95
93
92
55
106
134
126
99
134
162
140
136
138
148
122
178
122
169
156
131
138
110
99
56
138
92
146
37
138
37
105
110
123
55
199
110
79
37
55
111
146
119
93
128
74
127
37
91
169
56
106
132
105
107
110
168
93
92
119
158
91
122
69
138
37
149
104
141
126
100
96
122
163
178
55
97
105
110
158
135
168
110
91
105
95
104
146
146
138
128
74
105
122
92
67
77
93
139
171
93
110
124
139
180
138
68
124
79
122
101
136
92
37
134
178
132
104
146
114
161
107
168
105
37
79
127
128
146
146
86
146
148
130
126
56
111
98
140
55
189
134
122
158
69
67
67
105
127
178
128
138
92
67
164
126
107
123
137
67
91
126
83
122
122
122
93
104
92
93
122
69
140
123
92
55
55
105
101
92
92
134
140
92
124
178
136
37
137
134
104
139
104
140
67
103
110
119
152
140
75
99
105
55
120
97
130
67
110
56
146
92
107
74
92
123
110
91
92
86
160
83
77
112
92
138
107
140
84
126
93
92
91
55
105
109
152
128
95
56
140
91
67
147
105
126
105
134
138
127
105
127
99
55
77
97
56
56
126
138
122
114
138
121
105
97
37
119
104
105
152
86
105
103
122
112
114
55
138
97
178
88
134
97
93
105
130
138
56
86
67
169
128
79
138
93
37
105
83
111
192
104
119
105
102
92
119
97
123
89
119
77
78
55
75
144
130
55
152
131
88
105
152
124
139
103
128
111
119
104
74
122
137
99
92
128
103
74
171
146
64
122
103
69
122
138
110
163
67
92
119
111
55
77
158
97
99
99
91
126
138
95
99
152
120
58
122
136
58
67
122
126
92
118
74
122
140
104
84
69
138
97
92
162
105
147
75
126
131
93
92
127
182
83
146
110
107
122
104
110
107
92
149
107
99
134
139
107
122
89
93
122
55
122
91
67
138
67
128
119
58
91
139
144
163
140
92
37
126
127
129
55
134
99
110
102
136
110
110
99
126
152
144
160
92
58
55
58
134
67
86
97
169
122
103
92
56
74
138
104
92
136
111
122
55
74
178
56
67
197
146
112
79
110
129
127
111
144
74
105
77
93
128
126
171
119
121
167
124
137
56
55
158
99
141
114
178
97
146
152
118
178
110
122
140
68
102
74
55
95
139
111
92
77
37
104
92
136
56
163
104
109
126
58
163
140
58
77
120
165
56
75
79
138
55
110
105
127
84
67
93
102
93
74
79
93
127
119
55
37
131
92
115
138
55
92
138
104
68
134
131
119
55
92
69
95
148
55
37
102
139
152
178
104
145
107
55
99
92
139
109
148
178
163
79
55
58
144
91
105
110
122
140
142
58
110
92
152
69
91
171
104
122
55
106
93
92
147
87
110
99
158
104
139
67
105
55
126
69
178
86
126
111
144
122
140
97
67
77
78
61
104
104
122
147
152
95
126
79
104
91
86
74
100
92
117
84
37
93
126
138
126
146
122
131
178
74
138
121
55
105
122
119
122
139
110
105
75
58
97
144
178
58
92
126
131
37
93
105
110
128
55
145
103
169
138
98
92
37
138
92
91
138
158
139
55
122
84
99
125
107
130
92
105
122
55
92
84
112
118
119
75
110
92
92
97
109
122
126
102
122
67
144
74
103
92
58
67
146
92
95
138
103
55
58
91
107
126
110
139
122
110
117
67
178
105
77
80
122
67
58
91
56
108
128
110
104
75
127
92
127
92
89
105
122
68
134
67
148
55
136
92
93
105
105
92
110
101
138
120
127
127
67
55
128
107
162
122
126
152
75
122
95
135
122
146
55
100
126
126
167
110
122
115
138
144
79
126
98
178
75
58
105
126
131
56
56
104
108
105
109
123
130
138
119
123
99
93
105
148
134
98
107
104
134
180
104
146
138
58
169
168
119
100
67
37
122
139
146
109
122
83
105
182
178
110
92
93
104
98
69
126
55
91
124
93
122
178
120
139
138
126
118
86
137
178
163
152
126
105
119
55
110
99
99
156
67
93
139
138
146
104
180
139
178
105
92
122
123
130
105
120
69
110
37
139
69
127
122
58
134
93
92
123
69
55
132
126
122
108
74
119
126
55
146
93
93
58
123
178
93
169
67
105
110
110
87
160
82
169
93
79
124
67
146
139
92
100
152
138
92
104
98
136
128
75
89
92
105
119
56
55
58
99
138
130
92
178
103
139
123
122
93
109
55
92
64
111
55
126
178
56
139
111
67
103
146
86
86
78
136
91
37
171
56
37
120
93
67
110
110
104
152
75
74
131
122
105
131
122
119
55
93
68
68
142
109
138
138
114
55
93
103
55
110
122
77
131
138
91
128
101
106
92
138
100
167
55
105
86
37
122
156
134
92
152
111
55
146
126
88
89
58
178
127
98
141
37
108
79
123
107
105
126
37
178
93
178
77
109
105
178
138
119
88
127
55
103
69
110
111
64
83
55
158
67
86
135
84
144
138
135
67
92
154
165
55
122
178
99
146
98
118
178
106
92
127
144
114
138
132
93
109
100
123
79
74
68
169
85
139
122
108
110
105
92
127
123
105
86
110
146
122
110
127
144
92
58
165
105
93
104
103
92
58
92
139
126
126
119
92
103
93
122
162
91
67
37
93
56
124
104
131
86
105
146
67
56
68
148
67
92
97
92
105
127
117
180
110
106
106
93
146
119
93
55
37
56
105
122
55
104
55
55
134
107
128
178
37
104
75
37
55
117
78
58
116
112
110
81
152
69
110
110
160
137
113
97
169
126
178
130
158
97
140
92
195
105
123
119
37
144
128
37
67
104
105
135
37
122
74
139
89
93
144
77
110
92
135
138
145
109
108
138
91
138
105
129
74
103
132
91
119
152
109
128
95
139
110
127
110
107
67
86
69
67
79
93
41
79
105
127
144
134
137
138
104
86
55
92
152
135
79
58
77
122
56
86
105
72
119
110
74
115
126
92
74
79
127
128
139
56
103
56
110
103
110
178
126
92
146
92
178
135
111
97
127
68
111
103
69
104
146
104
77
178
105
148
108
67
86
83
140
122
67
77
144
107
110
111
146
68
117
56
110
122
55
135
123
37
126
131
99
169
107
119
83
92
105
105
114
75
101
110
88
122
92
92
140
99
67
104
132
37
55
160
122
77
55
144
110
37
169
55
105
92
131
79
148
77
111
158
126
111
92
67
126
146
111
132
105
89
178
107
127
149
114
138
92
67
180
134
69
104
127
91
74
126
74
58
119
95
75
134
110
86
92
131
126
92
93
140
160
107
37
165
103
104
86
138
104
69
128
111
124
74
67
86
110
37
69
105
144
111
94
141
37
149
111
79
104
110
103
140
100
146
119
77
139
132
110
110
100
96
114
144
158
55
128
144
92
128
128
67
86
93
55
126
84
126
146
58
105
148
92
122
55
130
84
92
92
134
55
119
74
110
94
67
87
128
79
97
138
122
138
93
67
84
112
138
55
125
110
67
109
83
55
178
122
113
79
128
103
92
144
77
122
67
105
122
110
146
113
107
110
78
144
55
55
139
104
139
75
92
109
137
122
68
84
91
180
78
122
152
138
67
92
138
56
135
106
58
137
197
110
68
94
55
105
101
106
177
132
55
55
104
146
126
68
122
58
101
146
107
67
162
55
83
67
56
124
55
92
93
55
140
137
146
126
171
178
92
178
55
56
169
122
67
122
105
162
92
110
93
105
139
110
151
110
86
127
126
77
138
105
111
148
98
146
79
171
104
58
92
56
138
111
75
105
92
144
58
92
92
146
67
156
110
77
120
92
137
93
74
123
69
127
79
105
152
37
199
99
110
58
152
81
108
37
123
128
115
119
104
126
128
110
107
104
55
137
109
97
83
99
93
79
128
102
83
107
163
56
103
92
91
180
148
128
75
112
110
83
92
148
105
95
105
127
81
55
134
97
69
55
127
58
93
123
105
105
93
138
110
163
110
138
126
37
67
117
138
107
115
91
110
105
99
58
109
99
75
134
58
37
168
127
94
92
188
126
89
127
75
92
55
169
123
67
178
56
37
102
123
98
126
144
94
67
124
83
178
122
68
119
122
119
92
105
130
55
122
56
128
138
108
140
55
122
93
55
146
167
124
97
92
99
56
92
109
101
123
109
87
92
125
37
139
69
124
171
93
122
107
105
56
104
97
118
132
93
55
158
110
103
122
136
56
110
58
110
127
144
139
138
105
122
180
91
77
67
122
55
110
128
104
92
109
125
123
140
95
134
127
77
108
92
92
126
92
137
138
122
131
91
92
112
138
122
178
93
126
110
122
178
88
122
199
152
86
110
144
123
92
171
86
93
142
37
135
138
87
92
169
91
123
144
135
104
146
64
118
145
110
58
122
83
138
144
56
92
112
99
178
158
92
139
74
102
106
135
95
92
111
130
122
160
105
104
100
112
122
67
37
93
93
105
79
119
55
110
110
37
122
101
110
114
91
153
104
105
109
56
122
127
86
67
55
67
105
144
69
163
105
136
37
123
101
178
146
122
100
130
178
37
92
138
83
130
169
83
123
163
132
92
122
56
110
138
56
126
126
126
93
67
37
109
37
122
118
104
92
89
122
139
104
84
55
131
122
86
129
56
118
86
68
152
56
122
58
103
110
138
128
79
75
104
92
146
37
140
129
127
110
68
37
68
92
126
162
75
82
138
101
105
128
158
58
128
105
92
127
106
37
128
67
114
142
91
140
74
75
84
178
148
93
110
127
92
110
92
142
78
126
67
93
37
69
99
92
119
127
122
55
122
55
69
55
37
74
117
37
55
77
55
152
144
105
138
77
146
130
101
122
56
100
75
138
168
37
144
110
126
58
126
138
110
178
56
134
168
126
92
144
134
80
144
92
104
138
130
132
55
114
178
55
124
108
117
75
58
139
109
124
104
94
127
169
164
126
111
126
127
139
67
110
74
101
105
145
69
126
110
137
142
162
104
123
125
105
86
58
126
86
91
69
69
100
148
132
146
92
123
168
104
106
105
92
92
138
67
55
105
138
91
135
55
103
93
105
169
165
162
148
110
105
169
122
112
144
138
105
138
67
69
140
55
37
93
127
110
112
91
139
104
105
156
104
114
105
139
37
92
122
55
92
178
58
92
104
92
134
127
169
126
130
134
67
123
91
37
92
119
55
192
58
171
58
127
92
110
127
111
117
55
55
138
110
104
58
128
107
126
130
134
129
58
124
58
122
110
78
55
69
91
148
146
67
69
123
58
68
105
119
110
91
152
92
114
122
107
104
110
139
120
122
105
83
105
138
127
68
168
138
92
74
122
122
92
103
122
111
171
91
110
152
92
74
84
86
92
149
123
109
104
77
160
127
164
104
67
92
122
137
138
69
100
91
132
94
142
126
92
111
110
91
178
120
92
92
126
127
111
110
93
105
68
105
148
107
92
128
69
148
84
37
138
83
147
99
122
94
58
99
140
55
109
138
92
92
127
55
37
160
110
67
144
55
139
111
110
103
67
92
88
92
74
79
67
112
92
126
137
55
74
69
92
123
93
120
152
122
116
98
136
104
162
122
105
97
98
86
58
115
110
109
123
119
126
92
92
131
91
93
123
140
104
104
91
77
144
134
55
74
97
56
122
56
80
122
119
130
91
139
76
112
93
55
37
124
111
91
105
144
86
152
56
146
77
136
110
123
127
56
98
105
103
37
109
119
93
127
55
152
67
58
67
111
112
58
97
122
126
128
79
105
92
75
122
122
145
93
138
110
138
122
55
145
113
58
93
67
69
83
158
162
114
120
56
55
104
101
122
122
98
92
55
169
137
178
163
92
139
58
58
158
163
55
79
111
128
117
104
119
110
83
128
138
56
148
55
84
134
93
83
55
105
126
91
74
140
76
178
144
107
110
101
138
68
83
169
92
55
104
199
56
104
107
110
55
69
93
128
107
128
69
79
146
121
55
127
58
55
119
56
105
145
55
122
86
92
91
97
37
92
127
109
110
122
105
178
92
130
92
74
91
104
119
105
77
124
94
56
162
58
92
109
67
122
110
104
110
56
75
169
178
144
97
58
77
67
138
106
122
126
74
127
138
104
104
146
92
139
119
61
105
134
55
69
86
119
138
127
167
100
93
67
95
86
91
86
122
123
75
79
138
148
77
124
119
123
105
68
103
110
122
79
105
103
169
55
127
122
75
142
107
117
85
122
126
83
126
55
122
110
99
144
68
127
92
69
86
95
122
93
152
92
122
92
110
79
100
139
138
55
58
55
122
136
37
122
73
139
122
131
99
67
69
77
77
139
92
127
108
92
56
84
149
92
131
92
109
178
86
104
84
130
37
97
77
101
125
56
55
136
92
117
110
104
122
105
93
107
67
37
106
99
110
105
111
152
74
105
152
92
138
92
58
74
58
69
165
105
37
74
105
55
78
107
139
165
136
105
123
122
139
146
178
95
92
128
127
105
81
56
139
37
37
99
55
122
126
119
126
110
105
138
104
75
56
146
104
138
110
92
124
75
92
152
122
127
179
152
126
97
93
67
140
178
79
138
105
128
97
69
56
77
126
122
67
126
105
92
107
55
110
107
180
110
126
83
136
99
128
74
91
110
67
104
122
134
134
134
58
110
97
37
87
138
58
110
152
178
152
140
144
127
110
91
110
149
104
128
178
98
152
86
55
110
140
123
74
158
122
95
132
178
92
83
98
126
89
122
180
138
56
105
91
75
83
138
178
79
122
110
56
126
100
56
55
105
144
77
122
134
144
152
56
136
93
68
69
110
67
105
55
99
171
100
56
152
100
93
112
86
56
37
115
122
55
79
147
104
104
109
117
105
102
92
99
140
101
86
142
55
109
67
92
122
178
138
110
111
102
119
139
55
128
103
92
119
139
56
130
139
105
150
77
111
138
138
126
178
56
98
162
105
139
119
68
104
96
119
138
83
104
105
110
126
122
103
144
110
126
92
92
146
119
80
92
92
104
119
119
101
163
126
122
67
114
110
91
122
91
126
107
138
79
67
86
79
67
94
93
58
91
92
178
138
67
139
105
140
144
101
122
168
143
118
69
137
139
171
128
67
67
122
152
37
56
105
93
122
97
56
91
100
92
92
93
110
138
37
56
105
104
138
105
134
114
55
128
104
162
110
67
99
77
138
104
86
56
126
37
56
122
136
127
91
86
105
92
79
130
103
138
55
91
122
77
178
84
144
86
58
147
106
128
126
178
122
104
134
120
122
77
92
92
126
79
77
110
106
56
92
56
139
107
91
106
136
91
122
126
124
56
145
139
55
105
92
178
146
129
136
106
117
55
73
140
136
125
55
138
55
128
103
127
105
104
110
134
56
105
122
122
92
58
144
139
37
92
139
109
37
55
92
131
56
138
144
104
122
134
124
114
110
165
126
109
109
178
123
137
113
37
112
128
84
67
69
56
146
148
67
37
67
68
139
74
140
56
97
86
103
69
139
93
126
128
105
178
128
92
138
104
118
37
103
119
117
124
67
171
55
92
55
126
122
102
56
114
152
139
168
75
178
92
128
110
122
93
138
144
127
171
55
101
147
110
178
127
123
92
37
99
110
138
131
74
129
92
67
92
144
56
111
67
138
92
118
83
105
55
92
141
145
138
93
123
97
37
131
92
139
160
127
83
105
79
79
56
74
105
139
120
171
55
86
178
124
134
144
93
104
69
37
84
127
138
119
92
127
92
98
138
144
110
180
146
104
122
110
148
134
93
97
56
178
67
163
79
104
55
117
110
110
105
126
91
92
77
56
92
104
92
158
110
105
64
120
97
152
122
86
86
122
92
92
128
92
109
93
99
56
86
83
91
140
188
37
158
127
92
37
92
119
126
79
110
164
75
79
107
68
132
123
92
110
128
83
125
97
58
114
99
177
37
178
75
110
126
126
110
110
126
104
110
55
178
122
128
86
138
98
105
126
119
131
105
178
131
107
110
130
88
178
128
109
168
67
138
86
69
120
104
89
122
79
67
83
110
122
67
124
83
145
127
79
122
105
127
37
124
110
138
110
138
55
123
81
55
111
56
91
92
152
111
107
140
126
86
107
125
88
122
86
162
105
199
105
144
105
122
55
129
92
55
67
56
119
122
134
119
110
139
74
130
110
92
77
67
79
146
144
122
127
92
171
110
114
130
138
37
55
107
132
56
109
55
132
98
110
108
105
93
148
144
124
114
138
91
69
77
55
102
120
122
95
77
126
144
144
55
93
126
107
109
126
69
92
102
69
127
92
105
138
92
152
98
126
92
168
93
122
84
74
37
56
103
178
69
103
101
149
79
127
111
55
88
110
97
56
168
76
122
93
86
120
67
55
92
83
86
104
99
139
92
105
55
139
126
94
139
178
158
99
93
127
119
91
110
67
144
126
122
139
112
67
126
119
169
91
55
139
72
178
144
92
110
146
37
92
69
92
37
127
101
37
123
123
77
37
111
74
100
99
111
67
130
99
75
95
55
92
188
67
105
126
123
83
105
55
178
110
92
145
158
139
99
69
55
92
107
67
109
93
67
139
118
67
91
67
99
145
88
89
130
67
127
105
55
109
126
97
152
58
152
110
58
114
67
122
138
107
135
58
169
152
55
122
67
84
122
110
127
86
69
92
104
130
182
79
144
152
105
122
93
55
79
146
92
138
105
110
128
104
55
126
110
82
67
99
106
140
103
67
139
128
67
147
144
83
128
56
92
120
122
99
86
93
58
77
122
167
98
123
86
58
105
92
97
79
97
123
146
91
132
109
139
105
111
99
98
93
55
84
178
85
114
126
140
104
119
77
104
81
107
110
93
126
55
139
122
125
114
140
104
169
123
92
72
120
168
74
110
55
105
122
138
94
104
55
152
119
178
68
55
55
58
55
122
58
58
134
112
140
55
117
134
100
92
74
107
74
107
99
111
119
127
141
141
97
55
93
84
110
126
134
126
55
56
67
105
55
93
86
127
105
138
86
98
112
58
146
69
122
165
58
101
122
124
105
104
128
86
55
99
127
139
129
92
103
91
99
93
100
123
124
120
118
104
37
122
107
92
91
139
67
138
124
101
91
69
127
107
99
67
110
37
132
162
127
91
123
69
107
144
69
56
127
92
92
139
152
69
55
79
104
37
37
139
92
138
55
93
158
122
37
93
101
105
67
83
56
110
55
152
92
123
146
92
99
158
68
109
92
103
86
110
91
93
126
56
159
92
97
165
101
109
92
92
146
56
152
37
104
119
55
152
103
105
92
139
105
92
75
58
75
127
121
119
119
56
152
163
122
139
128
67
127
118
178
75
86
126
122
122
124
122
126
79
119
162
107
180
122
180
56
92
165
126
169
68
168
95
127
128
110
58
110
127
103
86
140
105
134
105
104
83
104
138
144
126
178
152
126
74
92
58
97
131
122
110
146
92
55
152
93
138
88
91
91
79
87
168
58
123
77
138
138
92
138
84
138
77
86
58
104
163
85
79
101
116
75
118
126
55
103
55
105
178
88
68
91
106
69
104
148
122
56
123
110
92
132
88
126
180
128
123
132
93
105
86
138
138
115
136
146
126
86
134
114
126
140
104
144
100
99
55
139
110
126
74
105
105
152
110
144
138
107
92
56
99
55
139
122
104
101
130
122
89
86
134
110
148
144
68
84
104
83
177
56
107
130
111
138
127
67
55
55
56
126
123
100
92
144
122
122
124
178
75
109
92
92
126
67
86
91
105
123
126
141
122
127
100
83
110
139
98
138
109
139
138
122
103
138
131
178
94
58
118
55
126
107
97
80
79
122
104
122
105
140
92
104
136
110
171
138
102
126
95
163
88
110
171
164
55
119
169
105
68
114
69
67
37
138
126
158
109
97
146
126
111
142
110
105
146
75
74
119
55
162
126
74
79
105
37
123
55
93
56
86
138
146
134
83
122
134
91
138
122
58
67
149
130
55
67
55
105
126
92
92
110
127
75
139
105
74
91
138
147
188
131
55
126
107
128
92
126
105
104
103
37
95
140
107
93
55
104
104
107
92
92
145
136
122
106
110
110
37
138
122
124
122
119
122
95
110
56
126
105
58
123
92
110
111
98
92
178
113
126
55
103
169
84
126
105
86
122
122
104
55
79
92
128
146
124
110
139
120
119
105
67
92
122
177
69
105
119
69
37
58
138
55
105
92
126
93
104
74
138
91
128
104
93
110
106
111
67
139
130
114
56
122
122
68
56
92
147
171
92
122
122
171
93
80
75
134
55
105
100
138
109
138
92
112
110
110
79
165
127
77
86
111
92
105
171
104
122
131
178
169
122
126
105
99
168
107
105
74
126
99
119
112
139
188
123
55
105
180
123
122
98
101
134
110
117
75
93
111
93
127
69
126
92
122
128
56
98
178
68
132
74
58
110
67
122
127
75
152
55
93
91
92
87
37
144
123
105
98
148
137
86
104
74
139
119
74
111
92
72
69
58
138
178
105
56
98
134
145
96
101
56
110
110
169
128
86
178
140
182
68
93
135
123
127
55
92
91
104
58
105
145
122
55
37
102
104
146
101
110
178
86
92
92
104
83
146
119
109
55
111
119
110
111
107
109
98
118
93
79
168
131
136
37
138
109
91
110
105
56
188
153
169
123
144
138
182
164
182
86
89
92
140
104
122
100
162
67
69
138
92
104
67
91
78
83
146
58
105
126
138
88
92
138
138
56
93
128
97
139
123
139
122
141
123
122
144
92
132
84
127
104
178
78
92
56
97
97
92
126
139
86
105
75
86
105
123
171
128
55
158
109
67
128
92
58
67
126
114
92
104
167
110
123
122
92
83
110
41
105
103
126
134
103
93
138
110
86
77
122
74
122
55
100
128
110
107
89
167
101
105
140
84
58
67
126
92
84
171
105
110
141
81
84
162
92
75
93
163
77
93
67
111
37
124
131
144
92
114
102
104
144
105
92
109
110
140
126
137
122
117
55
144
104
95
105
55
100
169
138
169
124
79
93
92
135
92
56
131
68
122
139
74
128
68
93
114
107
92
139
124
117
156
99
138
109
92
74
56
55
171
37
105
104
138
140
138
74
122
67
77
117
55
117
97
123
127
58
122
139
83
126
92
122
92
92
92
105
110
131
110
127
122
110
146
124
104
122
86
110
91
58
110
69
92
55
144
105
144
104
124
105
55
92
67
112
98
117
55
139
134
98
126
108
69
100
55
55
122
123
67
123
138
109
69
138
86
93
93
86
126
156
55
95
58
92
105
92
37
122
92
169
79
144
105
169
105
92
92
130
146
92
99
67
110
128
110
128
126
110
122
92
127
58
127
83
67
138
102
56
55
138
105
108
37
128
84
134
55
83
92
92
148
127
74
131
99
37
84
64
117
103
119
111
139
107
87
140
107
75
139
114
94
56
55
92
101
128
91
139
127
86
128
56
37
126
58
92
127
104
138
138
55
144
139
79
91
75
114
110
92
56
146
56
107
105
136
130
124
99
122
67
92
140
55
107
56
55
58
110
67
139
98
124
69
140
122
152
169
138
74
138
67
92
146
126
99
123
128
69
56
138
138
89
92
140
134
37
37
104
93
139
127
110
37
125
178
55
102
168
101
81
69
91
178
126
99
55
138
169
92
105
123
126
178
93
144
104
128
56
131
86
37
148
169
75
104
100
127
68
105
37
77
123
77
92
152
168
77
105
55
93
96
110
152
122
122
104
124
84
103
122
97
58
169
152
119
139
75
140
64
92
58
69
105
67
122
105
81
131
37
110
109
144
67
128
110
148
137
77
93
92
136
87
110
126
111
138
93
67
138
92
139
127
56
138
146
125
139
103
86
67
79
127
55
92
134
100
56
67
110
180
122
106
119
83
55
105
131
131
105
182
158
107
105
122
93
58
138
55
67
93
109
89
146
140
37
101
83
67
55
122
92
74
69
37
69
110
115
122
83
138
149
119
152
107
138
144
58
37
158
134
140
86
122
37
152
94
77
91
92
178
67
126
138
92
144
105
117
152
109
122
37
105
110
109
67
178
169
105
146
142
127
55
114
134
163
149
67
92
55
138
92
138
91
138
93
137
144
56
106
77
91
144
115
86
144
55
118
67
180
109
84
91
119
103
92
167
55
142
37
138
86
75
56
56
93
74
92
80
126
146
92
92
104
109
169
79
105
111
126
67
58
93
69
107
93
119
55
79
102
56
122
79
56
104
138
79
138
37
178
123
67
109
138
86
105
101
132
111
105
74
83
55
67
117
122
110
137
93
139
138
165
55
105
110
55
178
128
67
79
92
83
91
104
55
56
104
66
92
93
93
110
67
127
74
77
56
139
74
105
74
92
138
93
78
152
121
69
93
138
93
107
124
178
58
105
93
144
110
137
162
55
79
92
178
134
111
99
105
67
76
111
132
103
103
58
128
140
93
92
131
104
55
126
58
74
138
127
178
110
105
138
119
110
56
69
101
89
144
55
139
69
56
136
55
138
114
138
111
122
86
86
140
75
152
110
138
171
102
135
178
55
68
67
110
89
122
123
92
107
74
110
103
164
105
56
122
182
126
146
37
127
128
92
55
56
110
56
67
68
100
138
112
144
109
151
136
78
126
124
99
92
108
126
69
56
105
105
134
92
139
98
81
69
163
86
126
110
86
140
167
89
114
165
101
119
132
105
122
171
84
92
99
55
68
102
91
57
110
58
126
114
138
86
74
122
122
67
141
144
126
80
122
56
122
120
110
199
128
148
126
93
67
67
104
124
110
93
131
138
152
89
110
72
136
139
130
111
123
92
58
109
105
122
99
37
92
92
139
126
140
77
128
92
131
152
74
93
126
95
163
105
86
104
122
69
134
69
86
87
148
91
79
79
140
136
55
127
58
69
105
134
110
77
58
137
162
84
114
119
122
126
102
104
128
180
97
79
126
107
75
92
55
158
79
107
138
178
126
79
110
110
67
126
103
37
152
37
144
146
98
94
101
171
98
126
139
92
92
110
69
105
92
132
92
139
55
88
93
129
67
131
137
122
92
152
94
92
171
55
114
107
123
178
105
91
104
124
119
122
127
148
55
122
104
132
122
138
86
126
105
68
67
92
146
55
93
105
127
149
111
123
111
139
138
77
126
138
84
77
138
109
160
105
55
163
69
92
37
104
182
56
115
111
138
126
93
56
81
128
126
126
124
119
91
56
67
91
120
55
127
163
92
93
105
140
108
103
169
105
141
111
122
56
126
124
79
163
58
119
117
117
101
167
124
122
75
152
122
118
152
92
111
123
58
122
67
86
37
87
122
69
91
139
110
158
92
119
83
58
123
138
126
69
138
55
138
99
104
124
103
92
126
138
92
106
112
107
127
168
109
93
138
95
67
139
160
99
171
92
178
86
105
140
93
144
55
105
126
67
104
69
69
86
77
104
55
137
126
88
131
114
167
110
56
125
126
199
139
138
145
126
162
144
134
124
104
132
72
58
117
122
123
103
93
110
112
119
147
74
55
114
86
67
130
138
84
146
93
95
124
87
139
138
55
97
131
107
55
127
92
67
105
138
111
139
131
92
83
37
139
37
178
126
126
55
105
67
122
83
92
144
104
122
138
91
83
126
55
168
107
92
124
89
137
138
127
141
130
99
55
75
122
112
55
107
138
92
158
67
56
92
91
69
56
119
83
69
37
145
93
110
134
110
104
58
110
92
122
122
69
110
86
158
152
67
138
139
55
163
110
109
105
112
58
152
104
138
130
105
126
167
148
109
110
55
107
92
93
146
92
99
58
88
110
80
69
140
115
67
130
178
68
139
140
105
136
110
56
117
127
129
110
37
168
110
98
164
152
124
105
110
55
56
140
104
134
93
77
105
122
125
117
146
109
109
107
95
92
93
122
105
91
95
123
86
123
127
110
169
104
114
126
110
105
135
104
93
37
74
93
106
93
91
69
86
110
178
92
56
178
107
131
156
139
123
139
127
110
127
182
107
56
101
91
109
92
69
74
138
74
58
86
124
67
119
104
145
55
111
101
126
55
55
103
104
109
69
74
122
117
55
165
130
126
127
89
95
115
152
99
126
124
126
55
110
178
67
83
110
122
127
115
98
122
104
122
119
69
164
86
92
92
87
55
110
37
77
110
169
99
122
55
105
55
123
122
110
110
104
123
93
145
162
37
126
122
110
139
56
75
138
152
126
146
79
109
126
99
126
104
199
88
86
114
109
91
67
110
92
104
182
74
138
123
140
117
110
83
129
86
124
89
98
124
56
134
55
55
111
67
122
105
169
79
140
67
105
138
93
99
104
126
93
93
55
108
105
55
138
110
137
145
93
105
146
138
56
92
126
160
110
69
111
136
139
122
127
178
110
55
122
104
99
67
37
138
109
95
160
69
111
123
99
139
137
67
152
69
138
105
95
55
55
111
75
92
92
138
148
144
105
86
79
104
145
55
92
138
139
92
127
139
109
110
126
169
55
91
127
140
126
92
68
114
110
114
55
92
152
123
143
93
126
102
134
139
86
67
104
109
92
158
75
79
55
137
111
158
178
138
67
93
115
104
162
126
107
105
104
97
67
92
178
137
146
99
110
55
105
119
138
55
178
56
129
152
67
96
83
55
178
122
93
138
86
127
138
86
86
126
160
124
55
92
144
55
77
126
104
126
55
75
104
144
139
129
72
56
93
69
126
108
83
107
146
130
128
108
58
124
147
96
79
58
126
119
56
156
104
97
93
127
56
105
126
138
139
69
93
57
58
145
58
138
144
167
110
130
122
99
144
58
126
126
152
105
110
92
69
67
128
132
164
104
102
105
139
122
77
178
110
139
81
139
55
77
67
91
139
105
99
138
136
103
92
127
103
79
67
84
92
37
72
105
134
98
110
131
105
67
144
67
128
37
126
139
58
55
118
74
104
55
124
148
56
135
55
104
110
77
112
98
93
163
56
122
146
130
98
139
69
56
144
61
56
168
134
83
104
56
111
55
105
67
96
72
144
105
100
84
67
146
103
105
74
118
91
67
121
101
140
120
74
56
122
55
127
136
107
110
109
99
107
138
144
79
124
37
84
110
169
88
79
92
146
122
138
140
119
128
104
138
152
136
79
152
152
104
126
93
68
86
112
146
91
134
126
55
79
111
95
69
92
122
92
139
134
112
104
144
77
105
138
131
119
56
67
148
122
55
169
131
75
110
92
122
156
108
56
58
122
67
74
68
97
64
86
177
126
99
144
102
131
105
55
178
78
67
102
134
126
67
126
67
105
105
112
56
55
127
152
92
56
100
84
84
181
100
93
102
140
126
89
55
134
105
135
55
105
74
148
128
92
79
127
122
80
178
138
104
146
134
119
67
104
107
105
124
102
99
102
126
55
119
91
137
146
134
89
97
91
55
78
126
171
84
92
119
144
152
89
152
92
149
77
178
136
55
92
37
146
58
171
148
92
124
122
168
108
67
105
92
169
152
123
92
139
140
56
118
86
99
134
127
78
72
109
180
102
106
105
127
56
178
56
178
103
178
192
104
126
131
137
106
126
178
163
127
58
126
127
67
92
139
79
114
128
56
139
171
167
56
127
67
97
178
69
91
92
83
56
162
104
75
68
124
122
93
119
123
115
109
124
123
140
110
139
69
138
107
55
158
152
58
178
138
56
91
86
122
138
55
37
92
127
110
104
37
67
128
58
91
105
137
92
91
178
118
122
101
144
164
158
92
69
130
92
134
77
152
96
92
99
127
126
169
105
92
126
152
134
105
69
69
95
136
92
67
138
102
79
86
104
69
138
83
169
58
119
86
118
93
126
55
110
147
142
158
107
119
104
92
138
126
67
79
92
84
127
58
92
91
105
121
178
67
119
108
93
111
131
132
138
81
67
107
126
67
91
111
109
126
136
126
105
69
83
67
95
92
130
58
58
122
92
128
67
148
93
58
78
165
55
108
110
110
104
37
56
91
126
58
56
89
128
152
105
182
93
122
92
56
55
69
106
101
105
128
126
138
55
139
122
55
37
152
107
105
55
107
79
137
122
146
178
79
146
92
144
110
156
99
104
69
122
37
91
69
93
122
79
142
111
99
110
67
107
144
72
89
148
122
74
102
97
98
92
139
101
168
126
37
129
83
37
86
127
104
110
69
69
145
112
67
104
58
104
126
169
146
139
144
122
55
69
37
84
168
128
120
108
92
83
110
98
131
128
99
168
117
139
103
135
67
132
55
126
69
110
105
126
56
64
146
142
124
114
134
55
79
139
79
103
139
99
110
110
105
127
129
67
55
103
92
92
69
127
86
136
56
134
171
152
110
105
134
55
92
105
67
67
144
125
178
95
144
37
37
119
152
93
105
122
91
144
138
152
105
126
128
140
110
138
75
110
119
139
93
92
122
126
144
92
180
79
92
123
110
105
58
86
111
124
37
121
55
104
110
55
97
126
110
128
55
37
92
83
67
103
144
123
126
138
138
86
106
55
137
107
109
93
122
105
107
110
140
138
93
79
180
124
55
79
188
67
37
171
94
119
99
169
122
55
127
89
136
55
169
110
132
114
122
69
80
105
105
105
95
99
144
111
55
107
138
132
37
67
122
111
97
99
171
149
92
105
56
58
107
37
128
79
92
161
111
99
56
145
67
139
77
93
139
120
152
37
104
114
120
123
148
100
146
126
140
102
77
109
111
56
93
171
152
93
68
92
140
122
56
129
56
126
197
92
120
140
118
67
158
58
167
104
110
178
74
37
67
111
144
139
56
140
92
139
109
115
69
92
83
100
86
163
131
127
139
109
56
56
92
140
160
138
168
126
111
105
111
111
55
180
113
110
110
131
165
68
127
129
83
92
92
104
58
122
73
92
128
55
152
103
146
113
105
138
55
178
105
58
86
105
128
111
138
122
92
122
92
77
75
92
160
126
119
119
110
110
67
111
110
140
67
125
130
110
114
123
146
37
102
162
55
105
129
127
139
109
77
104
93
124
144
123
93
96
105
83
104
144
83
101
105
86
92
55
77
55
86
69
146
126
135
138
178
139
86
92
109
114
122
169
128
55
108
127
67
138
145
122
115
138
110
114
131
118
134
122
67
101
138
136
127
55
83
134
55
104
114
117
122
55
92
92
110
100
110
110
138
67
105
55
94
158
67
78
99
124
95
93
37
138
104
91
110
126
55
158
158
169
86
144
122
92
110
55
109
138
139
106
136
93
117
69
95
92
111
55
109
92
84
93
55
165
99
97
109
81
146
134
93
93
126
67
144
122
78
132
112
68
105
58
58
132
110
123
119
178
80
127
146
93
158
169
56
99
110
56
107
86
162
145
110
104
122
100
126
110
128
37
55
74
138
67
146
122
119
105
105
67
86
92
105
77
110
93
105
122
73
110
110
128
56
139
104
164
122
169
105
111
171
64
126
110
107
104
93
124
55
122
163
67
98
103
139
58
138
141
102
99
55
111
105
92
74
56
55
104
126
152
129
58
109
92
111
111
58
56
55
156
91
180
139
67
104
171
148
144
99
126
137
138
164
122
56
152
126
130
162
134
105
91
124
107
105
152
152
92
99
126
68
122
148
97
104
138
107
92
110
55
122
119
178
160
55
87
146
103
91
122
55
92
97
111
146
105
128
112
169
77
58
105
97
93
55
128
152
128
107
139
98
138
67
167
126
110
99
98
58
146
55
122
142
128
58
105
156
93
77
105
67
96
75
95
178
55
132
152
138
83
92
56
105
124
130
92
171
75
74
110
64
132
68
111
100
117
122
117
126
99
103
69
132
67
89
110
105
126
152
92
67
83
74
79
107
103
55
144
138
92
123
178
132
84
105
67
95
91
148
55
110
83
105
105
135
110
132
115
105
74
180
107
95
68
105
127
100
169
91
129
67
56
37
91
107
199
56
56
77
55
92
86
110
122
56
104
69
69
104
126
178
107
92
144
164
169
99
144
92
92
138
126
89
110
163
109
178
121
92
84
111
55
128
73
37
144
144
104
126
67
119
56
99
105
103
77
111
55
94
122
55
92
178
102
168
149
110
107
122
89
80
58
178
107
104
119
118
128
55
93
122
138
92
111
131
75
86
79
93
105
131
122
104
75
104
126
127
169
124
105
126
104
111
99
58
92
73
122
104
140
69
110
169
55
114
93
56
95
69
119
111
55
97
140
74
104
55
55
110
110
92
99
92
99
93
134
56
130
93
37
99
178
169
100
67
103
87
58
72
104
55
197
37
129
110
122
104
146
67
111
178
110
97
92
110
126
122
139
75
37
105
122
37
138
112
112
55
138
134
124
79
91
105
97
171
138
95
128
98
144
144
178
100
135
130
146
55
113
55
105
140
127
178
126
105
128
96
110
144
74
106
163
107
105
55
119
86
55
91
137
77
75
105
146
123
69
37
92
127
67
69
144
127
105
55
126
111
130
55
79
74
118
67
128
110
104
178
139
74
124
138
178
128
127
97
107
120
67
79
105
107
68
140
55
171
37
92
109
127
152
109
111
93
152
79
92
75
84
92
79
91
106
37
109
138
67
105
55
111
110
117
105
126
55
55
163
138
171
122
119
58
128
83
111
98
55
92
131
138
137
79
103
68
55
146
165
75
178
92
124
77
138
101
69
99
144
93
67
93
56
86
178
105
92
128
114
86
122
138
144
144
118
128
37
106
107
93
105
138
110
97
138
37
104
105
179
159
91
105
127
104
138
107
91
98
109
77
77
56
67
122
93
89
83
120
111
178
67
86
127
100
91
56
92
75
146
67
56
110
132
111
109
67
37
182
56
77
55
169
86
111
134
58
107
122
104
178
121
104
58
92
126
93
55
77
118
68
58
123
126
122
145
83
69
122
75
171
122
92
111
92
127
102
123
55
97
169
55
93
67
104
55
79
127
127
110
69
116
67
37
104
140
67
122
74
132
138
55
55
107
126
69
98
171
91
117
55
92
89
114
139
118
55
141
86
141
99
37
67
103
110
91
55
122
128
162
111
162
86
122
56
144
69
128
178
124
97
75
126
147
138
37
68
122
158
126
67
109
147
92
89
106
67
126
144
92
138
103
127
56
105
135
104
140
199
58
83
126
102
124
152
104
136
67
110
55
128
77
111
126
84
120
158
98
99
132
58
118
37
128
136
123
101
131
111
111
146
56
138
79
140
58
37
144
91
178
86
112
55
105
178
92
139
164
152
92
91
56
119
110
132
109
55
96
119
138
95
37
56
86
99
93
105
110
68
105
79
140
102
97
146
98
134
93
92
122
110
142
58
107
107
110
105
126
119
126
106
122
158
138
126
67
37
56
142
157
169
74
110
110
81
107
146
93
110
101
126
79
126
79
105
178
139
75
105
126
122
93
98
144
55
58
126
122
55
37
130
104
111
92
92
128
56
126
77
121
138
122
84
164
93
55
178
119
101
122
67
92
58
128
123
128
98
91
84
124
55
110
56
92
178
117
122
134
37
105
91
84
37
93
171
104
69
110
126
142
55
110
93
79
69
128
119
105
138
98
56
110
127
167
55
92
110
180
112
138
146
167
149
122
97
110
37
97
105
100
58
92
55
122
93
122
163
111
37
77
92
104
135
110
142
58
118
92
91
144
105
92
100
58
115
111
105
91
138
142
67
55
84
111
109
147
119
67
92
91
67
92
55
67
119
150
138
126
93
136
83
97
91
58
56
92
169
105
130
110
56
138
135
110
92
92
92
111
110
55
69
67
126
67
68
122
109
110
138
110
89
92
55
115
111
77
105
92
81
136
102
122
77
146
126
83
67
126
104
152
55
105
67
84
92
109
98
104
126
115
91
110
105
56
92
115
67
58
122
79
144
100
55
158
126
136
75
122
91
110
138
92
92
37
130
92
122
130
123
88
117
68
55
69
138
56
145
136
138
162
104
138
126
138
92
77
124
56
152
107
55
55
67
146
98
37
108
126
144
108
188
91
163
99
93
152
122
37
37
178
138
126
93
122
67
126
104
130
56
69
86
105
150
91
55
139
67
67
97
100
93
122
95
123
92
122
139
119
77
92
139
55
130
104
92
91
171
110
110
86
101
93
122
123
139
104
130
128
91
124
112
92
144
105
69
93
110
92
138
103
99
122
69
122
93
58
146
111
169
88
138
79
144
107
148
152
98
55
144
88
105
91
84
122
74
110
37
112
97
74
56
134
103
122
110
92
86
92
130
56
104
69
91
104
127
112
148
146
180
180
55
110
91
138
55
58
122
109
111
37
68
56
58
126
67
93
138
109
140
178
169
84
111
134
158
126
55
55
119
126
109
93
81
83
111
125
141
68
122
126
146
122
138
79
122
149
139
92
120
126
69
111
127
111
188
122
58
115
132
139
168
131
58
131
129
124
37
103
116
160
92
122
91
76
55
67
92
75
93
107
110
92
127
105
110
136
99
123
110
130
110
123
178
178
152
103
160
75
68
110
93
93
109
127
93
87
74
126
92
92
77
110
56
128
68
126
123
122
99
109
99
138
134
110
105
169
115
55
105
104
110
119
74
92
138
107
125
91
103
104
104
112
83
106
79
119
74
144
110
93
67
74
68
69
67
139
87
100
105
122
142
104
102
91
146
56
178
152
56
105
55
134
126
123
79
178
163
180
131
67
158
55
83
69
127
56
55
124
139
125
93
117
118
119
83
74
67
92
55
85
169
144
105
55
120
67
69
80
67
126
171
126
69
55
93
127
136
110
67
122
81
110
80
126
101
152
138
144
104
114
56
108
107
130
126
56
83
138
128
135
67
171
55
135
91
86
119
93
105
111
111
101
77
37
152
68
58
138
138
92
105
93
56
110
126
92
131
102
137
117
74
112
86
126
106
105
74
58
138
107
99
105
109
55
109
138
169
152
105
113
56
58
129
101
69
138
168
111
107
127
144
126
95
74
138
126
104
168
128
139
92
55
83
37
148
87
86
127
127
139
86
69
92
119
56
136
99
96
130
105
104
92
169
111
92
55
122
144
105
128
93
92
126
110
105
110
92
165
138
127
108
106
58
107
122
105
151
94
69
104
123
105
105
109
138
162
120
74
105
136
110
138
80
92
108
169
178
134
142
91
138
83
78
56
138
92
122
103
74
139
124
122
37
126
146
55
110
99
55
68
126
136
146
107
171
122
178
100
148
97
93
92
55
126
169
118
56
55
93
152
86
122
138
152
171
55
110
127
139
134
118
122
110
146
152
93
148
92
136
73
122
142
79
77
67
55
56
56
136
58
56
92
67
58
131
67
139
55
124
68
37
37
95
122
148
123
110
93
123
140
55
68
104
152
144
138
122
109
138
98
119
58
93
92
126
92
126
152
127
122
55
92
160
127
128
138
67
86
55
112
92
108
123
92
136
118
56
123
110
67
110
138
152
144
105
129
92
140
122
67
138
55
91
138
128
93
118
138
111
56
67
97
152
180
123
134
126
119
128
56
76
117
79
94
109
126
122
68
122
73
103
92
103
127
103
146
126
171
83
122
55
93
126
178
97
102
123
146
139
122
92
56
107
100
56
117
128
55
119
110
140
100
140
55
122
55
110
92
127
127
55
102
58
120
128
118
86
163
105
148
74
67
111
127
55
58
37
128
75
158
37
105
93
104
146
128
165
74
84
105
128
134
58
55
139
107
126
122
124
138
158
119
55
93
134
149
67
92
122
67
105
130
75
86
146
123
77
134
55
128
123
105
105
67
104
129
130
120
110
138
130
117
109
118
97
55
115
145
162
92
122
77
138
79
67
122
118
123
93
93
102
122
138
87
134
138
86
119
167
152
79
146
171
67
122
58
171
55
91
77
105
93
75
110
103
73
75
126
146
109
123
132
109
117
134
105
77
127
144
110
132
84
128
69
67
105
116
105
131
75
139
93
75
105
142
126
100
126
122
126
110
104
169
110
138
115
109
74
99
149
105
128
110
122
142
91
93
110
112
127
55
171
86
134
37
140
55
127
144
97
83
75
112
37
136
110
104
105
108
107
144
169
152
158
144
138
105
55
92
146
95
104
178
127
86
77
126
104
152
162
130
126
83
145
92
110
58
93
100
55
122
109
56
146
79
148
126
55
99
139
89
99
103
125
152
169
131
67
92
119
86
141
55
101
106
126
92
92
178
67
55
55
124
92
130
92
177
138
72
138
124
138
104
126
122
110
114
55
122
146
56
56
122
144
122
97
104
55
152
55
67
58
139
109
138
95
138
83
110
67
130
67
79
69
152
68
93
144
69
92
86
140
83
128
56
93
131
55
105
69
97
109
77
171
69
69
122
107
127
91
110
122
146
84
84
163
112
86
58
110
105
139
98
118
128
106
105
56
37
109
56
92
86
105
91
122
92
126
126
92
56
128
119
55
135
139
117
76
112
74
127
104
158
69
55
146
131
139
171
122
134
37
131
94
55
105
104
112
111
178
122
55
104
93
105
158
86
92
139
138
56
146
67
140
123
74
92
139
58
138
105
140
86
110
153
138
137
139
99
86
99
122
164
98
142
140
122
127
74
55
56
56
145
110
121
139
122
163
98
92
55
109
105
162
56
103
99
128
55
104
160
112
86
148
92
123
188
105
86
126
128
144
79
74
104
105
110
152
79
180
88
139
58
120
180
37
96
77
122
169
144
127
93
55
137
73
55
127
67
122
91
86
91
110
123
132
119
37
92
109
118
110
126
95
99
138
58
122
119
92
79
127
81
105
144
122
144
74
156
110
37
92
97
104
110
114
67
110
169
92
84
139
107
55
98
138
136
152
152
148
146
118
95
67
142
127
56
110
138
139
127
74
77
113
146
105
128
120
77
110
92
55
67
67
92
86
97
55
92
141
78
122
127
105
56
146
132
67
91
110
98
83
69
122
171
134
117
139
122
189
115
123
111
89
103
178
138
93
122
119
109
84
91
102
58
56
138
110
91
94
67
164
74
146
92
93
106
99
68
74
127
105
138
56
148
67
109
67
110
128
37
137
67
122
37
169
122
56
122
101
92
115
56
140
169
86
105
120
160
78
58
138
92
127
140
74
58
146
105
92
88
119
152
105
134
55
75
144
121
58
86
58
122
80
169
138
77
180
127
55
169
110
95
147
74
107
123
92
167
69
125
108
178
127
164
105
110
79
122
103
92
77
109
163
178
68
114
92
55
87
58
103
67
158
122
104
140
55
104
58
111
122
134
75
127
110
79
126
91
93
110
64
107
67
69
117
178
158
74
56
37
132
69
120
126
171
111
110
119
92
178
178
93
110
86
103
110
152
55
142
86
148
92
130
141
126
110
123
69
91
126
122
128
37
161
105
92
126
128
114
79
112
136
163
130
138
163
80
114
122
122
93
69
92
55
69
86
64
119
92
111
135
139
122
131
109
93
146
127
126
37
138
135
67
148
67
144
126
134
92
67
149
123
125
111
138
111
178
79
163
119
152
122
81
92
104
77
110
138
55
111
99
92
109
126
56
108
139
110
105
92
136
98
152
119
139
103
152
93
103
58
178
67
56
126
75
104
126
69
139
67
93
128
162
138
111
98
134
86
67
78
180
140
95
98
92
109
126
115
72
69
127
55
132
138
110
79
37
126
102
79
127
131
93
104
91
103
171
139
122
122
126
92
110
67
56
99
87
74
92
58
107
92
86
110
107
56
94
75
127
89
144
105
95
67
137
144
144
132
160
112
144
138
91
103
132
122
92
127
91
122
92
130
92
67
107
146
171
92
106
86
142
75
91
56
104
142
139
107
110
140
144
130
122
115
118
169
92
178
134
37
104
136
80
164
180
55
138
75
83
124
126
105
128
139
132
139
104
115
37
126
55
56
98
144
69
122
58
126
126
104
55
126
67
126
105
110
126
67
138
105
104
128
122
144
101
56
152
55
69
110
126
55
160
105
142
122
156
109
92
37
178
122
110
92
92
69
139
169
98
110
55
146
137
120
138
122
67
126
122
117
99
122
99
104
67
105
195
37
104
74
91
148
111
110
100
104
67
138
105
103
93
69
75
122
58
105
105
160
130
68
126
128
110
104
77
123
152
120
103
144
69
92
122
104
160
86
55
119
94
55
55
122
110
37
55
91
110
84
148
114
144
115
103
178
132
67
126
105
178
107
98
56
86
109
107
110
110
74
134
75
104
105
122
117
91
74
102
144
110
138
110
105
77
92
144
110
55
105
107
91
107
140
105
138
92
79
55
79
127
128
37
128
110
127
55
123
37
111
37
119
110
55
110
109
55
92
55
93
126
77
105
37
109
139
138
111
127
122
58
92
67
37
92
128
83
110
67
105
178
111
139
122
37
164
126
103
55
105
56
74
88
69
92
127
93
91
101
56
124
95
106
162
122
131
55
92
162
128
110
123
178
100
92
110
124
122
138
152
37
93
122
110
127
55
111
152
56
110
68
92
69
84
86
138
79
100
139
109
37
67
135
110
130
92
105
146
37
104
69
98
125
123
107
58
84
117
138
74
37
122
130
110
138
128
99
92
134
67
81
91
56
123
137
139
140
115
79
104
103
178
122
98
109
55
67
86
134
97
126
56
55
138
93
144
67
92
92
37
92
56
91
140
138
109
75
122
74
152
37
99
138
119
92
123
109
126
104
37
126
92
64
79
37
69
112
93
92
122
92
92
138
134
168
152
169
67
126
168
58
119
164
123
145
139
105
122
92
144
138
56
96
93
134
144
103
139
123
58
96
146
92
37
122
118
146
92
118
56
84
98
140
105
104
118
128
98
91
119
91
146
92
178
93
138
67
168
55
144
86
67
110
169
106
92
67
188
158
103
148
99
122
110
56
92
56
124
83
79
110
139
110
75
67
142
91
117
37
110
37
111
128
68
130
93
93
148
123
92
127
114
37
55
139
105
128
100
144
99
138
58
122
126
134
152
105
74
92
149
126
92
145
110
98
107
56
146
79
83
55
92
104
138
75
101
92
126
158
105
126
139
58
93
163
92
117
132
122
130
55
178
86
104
92
110
104
138
123
138
86
99
136
131
84
56
55
128
69
138
78
92
67
131
75
105
55
83
178
178
140
106
114
110
77
55
55
93
123
111
37
127
92
37
69
110
122
135
119
111
58
76
67
122
178
105
92
69
144
58
75
111
128
134
104
128
105
110
67
111
130
92
122
168
93
103
171
67
111
122
134
110
58
110
140
110
68
132
67
119
37
122
58
158
171
163
126
122
91
168
137
97
152
107
93
136
127
127
110
122
152
92
101
55
155
108
144
130
37
109
147
56
152
74
110
132
160
99
146
144
144
110
55
139
127
58
99
128
178
159
178
79
111
67
55
109
111
148
169
92
171
58
178
67
132
111
126
144
105
120
103
104
92
92
102
110
79
86
37
126
144
126
126
81
112
139
126
130
55
93
67
55
126
93
67
124
56
76
68
178
122
55
74
101
122
110
86
92
168
69
86
77
171
105
128
116
75
55
93
139
37
112
110
86
105
92
158
169
139
75
144
89
92
152
169
118
126
105
122
99
105
148
91
37
163
73
86
110
74
152
146
114
88
138
152
55
92
142
88
127
126
58
124
178
99
148
55
86
114
93
55
92
56
92
110
75
119
144
97
110
110
109
122
37
67
67
148
122
122
91
144
55
110
55
104
92
123
180
127
86
165
138
122
89
157
122
171
158
55
102
144
126
127
138
105
67
75
169
146
69
122
163
100
91
68
110
55
131
37
117
169
164
104
55
152
93
137
126
139
171
139
104
37
128
147
58
92
105
146
139
142
103
148
123
93
126
126
37
75
138
122
55
92
56
58
123
68
182
75
56
75
130
107
111
75
58
122
134
37
92
111
37
115
138
110
105
64
89
67
98
89
86
129
126
93
55
105
114
99
56
107
55
91
119
98
56
86
91
93
104
102
102
37
69
144
69
110
92
120
55
145
123
111
91
127
67
109
105
104
58
138
92
122
58
119
110
55
110
163
58
135
107
91
79
126
171
75
110
86
114
105
122
77
110
103
138
128
125
84
56
111
111
123
127
126
37
100
164
93
105
142
119
142
86
140
97
146
56
105
199
106
69
128
92
110
128
138
127
127
105
58
67
105
74
152
138
126
138
58
86
120
55
137
138
68
110
126
55
68
65
138
126
55
122
93
129
83
98
123
83
122
67
124
118
118
127
104
115
93
123
68
92
110
86
165
103
55
144
140
134
104
130
104
123
107
89
77
139
140
136
101
128
92
55
122
92
37
139
67
98
92
58
140
126
165
92
178
119
67
169
93
67
152
55
92
158
110
146
127
140
109
104
101
163
144
94
152
122
110
74
128
123
93
119
92
103
75
140
168
169
100
182
75
67
92
104
126
37
122
139
122
163
138
109
92
86
107
98
105
139
136
93
138
56
162
92
111
178
138
104
56
69
86
67
79
144
126
110
86
104
109
118
119
92
123
115
128
122
93
112
105
130
138
134
144
86
92
146
98
91
105
67
127
127
91
152
105
79
122
126
92
97
37
178
94
75
93
167
105
56
141
124
124
126
149
179
139
122
37
97
110
114
97
104
67
151
138
122
83
178
79
113
56
128
128
113
121
122
105
92
98
126
146
165
122
178
110
152
126
93
107
128
171
114
122
148
93
55
55
122
92
105
104
37
140
91
112
110
106
138
92
112
55
56
69
92
151
100
127
99
93
103
74
104
138
138
92
95
178
83
110
111
77
124
138
122
180
77
93
127
152
55
144
146
136
109
149
171
92
124
92
105
92
110
110
110
178
91
152
78
110
67
136
112
84
69
169
104
74
144
140
68
55
104
123
91
122
56
110
75
67
37
37
119
122
110
56
67
77
84
138
100
56
108
169
152
105
122
109
169
69
55
105
122
92
169
178
122
37
86
119
83
67
123
83
93
128
126
119
79
128
137
94
92
146
107
181
98
152
79
135
145
69
152
110
55
77
75
79
83
105
55
56
69
93
75
37
140
78
126
110
146
92
128
110
145
37
169
58
139
55
134
178
37
69
126
122
162
119
146
110
105
55
37
122
138
140
109
112
105
122
92
103
93
64
178
92
123
93
144
92
88
93
77
110
128
144
74
138
127
93
122
114
126
123
126
103
122
122
92
110
134
128
79
146
119
37
122
128
77
75
37
124
56
123
178
103
171
77
178
122
92
91
100
95
126
104
110
98
105
126
104
138
67
86
68
79
124
105
111
121
105
56
126
58
92
105
138
138
135
131
122
103
122
110
128
123
144
169
138
110
105
118
86
67
93
126
95
91
98
110
106
146
92
58
92
67
91
106
128
146
89
107
131
138
55
104
117
67
134
55
92
86
37
110
139
139
72
55
126
146
122
105
55
107
110
58
58
56
37
55
138
127
67
56
140
92
110
138
110
72
107
134
112
56
94
92
93
149
152
86
114
37
123
111
92
97
105
58
122
67
99
92
74
138
104
110
97
178
139
81
67
64
89
91
111
74
58
139
91
105
104
111
140
138
91
67
58
117
99
87
105
122
167
111
114
109
67
55
126
74
76
149
123
104
120
73
107
92
81
144
68
107
110
92
74
104
138
122
122
93
56
169
92
140
55
93
91
126
92
126
104
92
79
88
126
55
122
55
178
122
139
105
164
92
93
103
126
111
110
136
77
145
56
58
55
122
144
122
74
56
86
110
127
146
134
138
178
178
118
92
56
110
92
107
92
104
93
92
67
92
146
101
93
178
56
126
91
127
129
105
105
92
86
144
180
104
152
111
126
107
104
122
92
135
144
80
110
105
119
152
122
124
110
122
119
56
55
67
123
92
110
113
119
99
152
78
58
122
88
69
98
178
126
84
67
84
97
128
126
93
75
109
122
146
95
79
110
105
115
171
165
136
122
55
126
91
139
89
55
92
98
79
80
146
112
37
122
92
128
114
37
123
127
56
104
92
119
122
67
55
144
152
72
55
67
146
92
110
37
86
37
92
104
122
86
148
92
128
109
158
93
37
142
113
140
152
75
109
69
99
126
105
83
92
178
126
102
138
122
123
106
91
160
152
88
103
55
103
138
105
56
110
79
58
93
106
110
110
140
114
144
122
55
67
122
180
122
92
92
120
79
67
125
92
81
110
137
74
139
75
132
93
98
55
178
146
124
146
127
124
165
148
110
58
109
139
180
58
79
77
106
101
93
138
89
107
88
83
112
146
138
103
83
117
136
69
132
93
112
122
119
134
127
109
84
127
92
119
192
56
177
171
182
105
134
92
126
160
128
58
144
79
97
128
56
92
69
126
75
77
56
110
92
105
67
128
105
144
75
127
152
139
121
138
67
94
139
75
111
112
86
37
142
88
121
122
86
141
93
86
107
160
92
127
126
55
137
119
114
122
178
58
138
112
56
152
92
89
111
37
146
105
127
108
104
37
140
105
107
124
148
92
119
92
126
91
78
144
56
96
103
83
58
114
37
129
178
56
107
92
107
123
134
86
138
146
146
127
37
110
91
107
55
137
110
132
93
55
128
137
104
138
105
158
122
56
84
132
137
138
88
136
91
111
119
128
168
146
134
107
137
126
138
126
75
136
92
123
104
119
83
180
122
127
139
92
75
93
123
127
89
107
67
69
139
110
123
74
129
119
126
74
67
127
77
92
56
120
67
86
100
72
99
92
104
105
138
122
128
122
88
92
105
55
110
77
98
105
77
107
158
56
93
126
55
75
117
92
37
91
140
128
180
168
149
163
110
92
109
79
171
91
80
107
118
105
99
103
69
74
127
127
56
132
86
127
126
55
139
131
55
92
134
199
92
109
122
92
126
109
37
144
163
119
69
55
124
55
55
55
67
171
92
126
91
109
67
95
135
109
124
118
68
127
92
92
105
69
136
127
67
77
86
139
92
108
99
55
79
97
114
69
75
137
139
56
148
112
92
111
55
92
122
127
131
111
152
79
92
92
126
126
81
146
152
103
122
92
120
131
102
126
91
89
105
92
109
126
81
140
134
92
85
111
139
55
165
98
139
140
67
69
110
118
171
136
152
128
93
64
104
88
56
178
69
89
126
158
178
67
138
69
79
92
56
125
164
119
111
107
121
104
93
91
55
105
67
109
104
122
89
56
122
140
129
105
164
126
92
95
122
115
113
101
37
98
150
105
110
122
56
126
110
99
122
111
58
89
77
75
58
92
105
130
138
110
79
105
104
91
92
93
146
127
148
122
139
67
122
93
55
67
67
119
138
138
110
128
98
103
113
98
55
110
92
93
131
138
55
92
37
126
95
110
144
136
55
58
104
78
67
93
75
105
152
93
78
91
158
142
109
79
146
138
152
109
79
118
144
102
55
126
135
135
111
105
75
97
152
127
83
119
56
68
110
101
122
105
126
108
136
110
58
144
120
152
93
110
67
126
93
79
103
56
131
93
152
129
107
112
105
119
126
128
126
85
158
132
122
152
68
122
92
92
169
146
67
97
124
80
123
37
37
156
83
122
37
122
55
110
58
91
124
67
152
97
151
77
138
55
138
122
123
111
99
55
127
104
114
110
55
114
104
122
123
144
89
122
91
109
137
77
120
112
67
131
188
149
146
123
55
169
180
144
105
126
86
93
123
127
92
104
55
121
83
126
67
127
117
114
91
67
109
104
169
93
126
99
86
55
115
144
110
75
127
99
128
58
55
110
122
146
106
67
58
139
129
106
56
146
110
93
104
67
162
69
65
99
124
126
55
37
110
146
67
140
56
180
110
163
88
138
106
67
74
56
105
105
105
37
163
138
152
91
37
169
130
92
120
110
92
131
110
127
126
110
105
139
128
126
68
37
146
77
105
148
139
69
138
110
139
128
97
86
110
139
119
142
69
67
131
138
144
126
169
92
123
93
37
110
79
77
110
106
74
104
105
67
92
77
92
55
92
99
99
109
91
55
140
138
122
137
99
126
131
86
127
120
118
37
92
81
56
112
55
171
86
92
92
109
69
55
93
104
100
105
75
104
138
100
164
92
91
93
56
56
92
95
75
92
105
138
152
111
55
97
105
110
92
104
152
89
56
138
67
139
67
109
138
169
96
55
128
79
120
81
79
120
55
146
130
92
55
108
122
110
84
55
139
138
84
41
122
146
56
56
68
136
105
132
111
138
102
105
109
123
95
110
56
107
79
138
80
67
92
130
128
140
122
92
178
160
79
107
110
107
93
55
109
58
123
144
74
67
110
80
152
103
83
64
99
86
188
69
146
67
123
109
79
55
37
119
37
169
102
119
139
131
109
158
138
164
113
137
130
55
93
109
56
130
77
128
75
104
58
37
58
58
92
67
84
105
67
127
103
138
104
178
138
124
105
79
110
93
132
93
92
37
105
126
118
126
92
149
148
67
126
137
178
58
119
79
139
109
98
108
75
92
110
138
78
117
122
107
79
103
58
103
168
105
106
105
142
111
92
146
56
91
122
140
165
110
139
140
110
93
114
138
112
146
67
87
148
140
92
131
122
117
55
105
169
104
139
83
120
55
69
55
67
58
67
110
138
139
105
169
105
105
56
104
130
110
58
138
110
84
162
92
105
138
122
150
37
93
83
123
163
67
56
92
109
105
146
111
128
55
55
92
123
131
55
103
138
102
145
105
126
168
129
69
180
178
111
92
126
105
75
92
92
121
105
97
95
122
104
74
163
138
131
107
126
92
107
58
138
105
55
138
180
117
126
134
163
103
92
86
138
162
110
108
122
123
67
111
58
92
80
106
106
92
115
178
94
106
99
100
91
126
101
138
92
55
104
92
37
110
55
178
137
58
119
180
97
58
58
92
123
37
67
110
92
110
88
58
105
178
93
138
114
86
56
67
56
127
131
105
135
110
122
123
104
67
178
69
138
152
99
124
86
126
123
124
134
83
55
142
120
56
75
144
126
110
114
55
122
126
110
111
55
55
55
55
119
37
131
67
55
138
114
99
105
107
67
127
178
160
105
72
171
78
55
114
152
123
57
99
67
126
122
55
138
132
160
124
88
104
139
149
135
55
119
130
86
122
120
56
105
37
138
92
92
112
100
56
138
55
93
55
107
127
37
124
77
113
110
120
127
67
55
126
93
55
146
178
105
127
79
95
105
92
67
148
106
58
134
128
83
103
138
178
103
138
105
110
56
97
56
125
123
124
178
101
138
146
105
110
130
107
92
128
56
99
126
138
67
138
67
113
67
134
169
118
123
55
107
105
89
56
130
132
134
138
67
122
56
99
56
109
92
92
127
110
137
76
126
105
55
112
86
104
55
110
55
128
69
128
83
99
178
123
110
128
103
86
138
140
138
84
113
138
92
146
146
168
92
58
92
128
56
131
77
124
92
114
168
136
100
123
97
126
179
120
122
93
56
105
131
86
74
56
55
55
96
98
55
121
56
93
58
56
37
152
122
37
75
56
37
118
84
91
126
93
101
109
109
91
146
144
58
122
99
105
122
119
92
130
149
107
163
92
79
86
122
72
92
122
77
55
58
132
140
98
120
58
126
78
103
67
127
122
92
56
122
138
56
114
56
106
109
138
80
104
92
105
126
92
152
146
104
119
132
72
92
67
91
126
97
139
92
158
152
111
126
138
67
92
138
92
152
138
55
77
126
67
131
148
126
67
92
146
162
55
126
104
132
129
127
86
128
92
140
124
37
110
138
84
37
134
152
110
79
105
79
37
130
75
140
127
122
126
100
107
148
92
163
109
169
146
58
122
82
180
139
94
146
127
56
67
92
55
138
74
134
98
79
69
136
109
86
92
105
120
37
79
136
105
55
111
149
146
77
75
88
146
131
130
56
92
136
168
146
114
37
148
119
114
146
93
104
89
138
112
69
127
126
126
103
144
138
119
93
86
127
92
109
92
109
136
122
77
75
110
152
104
91
103
138
56
164
84
120
92
126
119
111
110
137
134
138
178
56
138
146
89
139
93
69
91
139
144
115
138
91
69
75
121
84
109
144
144
138
110
56
92
37
96
78
100
124
104
139
144
103
138
110
130
152
67
123
92
126
138
163
103
86
74
113
55
56
78
113
144
55
110
178
83
120
178
106
119
103
94
145
128
158
171
129
148
178
131
138
148
122
55
138
105
126
56
122
122
91
144
123
120
111
68
37
138
111
178
144
56
119
105
131
104
89
79
92
146
58
122
139
138
77
83
110
92
148
92
56
126
126
74
122
165
98
138
58
105
138
105
72
111
92
105
92
97
58
122
138
99
93
144
120
91
105
56
93
79
131
105
105
146
74
67
105
56
107
58
55
110
67
55
178
122
92
67
56
139
152
55
144
120
67
67
92
81
148
138
109
37
144
58
79
110
122
122
67
122
104
119
86
131
134
107
128
144
67
138
139
56
139
58
126
69
55
67
157
55
69
132
178
138
162
92
169
58
55
140
139
100
180
96
92
178
105
138
104
144
37
109
119
140
110
140
67
127
98
148
138
58
100
126
93
83
134
111
134
67
58
131
115
126
169
140
55
138
109
69
98
105
138
137
128
109
119
122
122
109
110
122
110
139
149
110
105
156
135
88
146
109
110
92
126
138
95
126
124
126
139
67
121
139
69
93
106
103
128
91
158
55
58
92
93
104
110
55
55
99
139
134
122
55
114
58
168
105
55
75
139
55
86
146
55
67
199
127
128
109
122
123
139
122
140
101
69
149
146
99
37
148
135
79
109
134
138
110
58
92
110
156
122
111
101
55
56
126
105
138
99
126
128
107
92
98
75
74
126
180
67
138
110
89
105
92
75
138
92
81
169
122
58
74
122
97
167
104
149
105
130
131
142
104
135
103
122
107
104
149
104
92
119
84
69
37
110
122
110
105
125
111
111
142
139
122
130
122
126
56
178
74
79
119
150
123
67
160
165
117
84
119
148
92
141
64
74
126
136
139
126
92
138
122
128
86
118
92
37
128
97
69
136
111
97
140
178
149
93
121
117
111
68
104
118
128
122
69
131
130
163
139
134
120
140
171
126
83
124
110
81
158
122
97
91
75
58
144
169
122
79
74
122
77
148
92
37
110
152
123
188
102
110
92
121
122
55
124
86
93
92
158
58
101
89
140
126
67
139
128
41
134
67
93
109
75
119
138
58
111
98
129
93
55
105
165
110
134
55
55
150
139
81
81
131
122
122
58
168
181
141
69
130
126
83
114
93
55
75
164
139
75
110
99
107
99
105
169
100
122
110
105
67
55
114
103
107
103
92
74
105
92
178
114
169
93
114
111
130
122
140
123
119
105
107
178
138
134
119
83
122
110
74
37
138
107
123
117
84
122
83
37
105
91
93
92
122
95
138
104
164
127
104
92
138
104
92
140
55
83
74
55
128
69
131
99
135
132
120
55
104
122
100
108
97
123
126
97
144
137
75
147
55
122
135
110
138
92
128
131
68
165
103
93
107
168
136
144
128
144
109
112
69
93
110
148
122
146
106
58
110
86
110
108
110
67
119
138
55
111
55
171
92
105
105
125
98
106
124
75
79
127
122
69
67
104
37
92
55
144
67
103
100
92
110
75
97
110
91
123
55
93
122
158
74
93
55
101
55
105
110
119
138
67
107
199
74
96
93
107
69
110
140
58
57
146
84
104
152
119
169
84
92
67
67
58
104
92
152
126
58
124
58
76
130
55
110
146
119
58
92
105
56
124
110
134
169
105
55
78
124
100
77
69
58
86
124
78
112
144
93
55
126
140
99
127
91
126
67
165
143
92
126
103
92
106
112
99
124
105
122
83
124
110
102
92
169
122
160
103
92
92
86
110
86
117
67
89
110
124
128
144
55
67
110
83
130
134
137
92
58
125
131
93
109
140
56
163
122
56
107
127
122
138
138
138
108
156
134
55
169
55
56
92
101
110
109
127
105
92
86
120
110
55
123
132
88
107
128
92
132
104
139
56
178
105
110
91
107
145
111
132
101
67
100
86
104
37
134
56
93
131
92
111
131
138
84
110
79
80
126
67
139
92
92
134
178
101
103
122
93
93
124
178
118
117
37
110
121
79
148
120
162
109
146
86
122
105
67
74
119
99
109
79
58
126
96
86
139
110
98
144
146
105
127
78
93
105
120
78
102
119
169
93
91
92
110
122
56
122
108
178
111
181
37
93
56
134
139
152
127
61
77
55
107
122
58
92
69
110
163
126
131
115
58
123
131
126
178
55
147
129
99
110
67
106
119
146
127
135
130
89
79
68
138
67
126
107
37
67
131
55
79
138
55
78
130
37
69
131
95
105
104
160
120
91
119
55
178
105
110
104
129
169
56
37
141
146
92
102
92
127
93
105
107
100
126
69
37
37
105
107
126
119
105
92
55
93
97
55
126
126
126
109
67
122
138
124
149
142
126
55
110
144
119
152
122
101
146
92
171
103
83
99
140
107
128
139
104
64
131
104
37
104
144
126
178
55
107
117
55
112
122
119
67
178
111
75
86
68
152
77
99
37
111
110
105
128
56
109
91
79
93
110
58
169
139
69
111
136
74
83
126
171
105
56
138
122
105
110
178
104
109
122
55
79
105
178
140
84
120
126
119
93
55
58
144
92
142
158
128
127
58
178
122
158
134
91
110
126
127
77
127
55
122
58
180
95
136
105
146
56
114
122
95
178
130
105
55
138
122
93
75
93
126
122
75
56
105
106
111
75
92
111
139
69
92
92
126
138
61
110
122
123
178
127
110
120
67
110
138
104
119
123
105
37
55
140
132
110
86
118
84
165
127
103
150
122
93
178
77
56
123
106
83
178
87
139
138
122
144
111
55
140
123
144
77
58
152
171
122
110
109
93
123
139
104
118
178
68
105
93
58
55
128
97
105
56
67
162
110
123
123
55
126
69
69
88
55
139
120
139
138
137
138
105
111
110
93
124
138
55
109
178
68
180
126
109
55
98
105
169
92
56
127
91
97
37
105
110
134
134
110
159
104
144
152
83
127
144
142
123
55
122
109
104
89
119
104
77
56
37
138
139
115
132
123
109
67
144
93
67
122
94
56
55
92
55
144
140
55
93
79
120
148
139
144
131
124
120
37
127
146
92
169
127
122
126
105
146
128
77
111
127
104
134
123
105
144
152
67
178
139
105
178
103
105
109
119
119
105
178
100
92
83
97
122
123
94
138
92
97
126
56
69
126
101
75
125
110
126
126
139
107
92
93
132
171
128
99
122
182
96
181
67
119
55
168
137
97
137
104
55
93
106
67
110
104
178
55
64
138
110
139
152
126
120
55
84
132
105
55
126
109
84
56
67
152
138
75
137
141
122
178
162
168
93
126
158
92
110
129
56
145
139
67
138
86
110
140
122
140
37
156
138
104
92
67
152
139
74
146
56
128
55
168
130
139
89
105
68
55
55
138
92
79
145
97
122
144
134
92
37
152
122
67
68
55
115
107
103
104
105
110
122
93
144
107
37
99
169
105
79
93
97
93
107
138
137
126
56
77
91
67
92
110
109
127
107
107
67
79
110
104
119
139
138
102
75
67
56
119
56
56
139
148
126
80
126
104
144
122
114
92
111
67
146
119
37
55
158
77
127
86
114
103
140
104
140
104
55
110
79
169
139
92
178
126
103
122
119
91
111
103
56
178
92
68
146
92
89
152
138
126
92
68
92
77
120
134
105
152
119
144
144
110
126
105
104
105
93
115
171
120
103
126
137
120
92
162
165
111
103
105
169
58
164
126
104
130
77
105
92
139
101
165
67
56
37
168
140
105
153
167
74
139
140
92
148
77
119
146
134
180
104
110
105
74
126
67
79
56
86
169
117
93
98
99
105
178
128
71
144
97
122
109
123
178
110
112
93
110
123
92
136
178
164
142
102
169
110
67
128
199
67
148
56
116
137
122
117
99
135
122
56
122
146
123
132
86
55
178
56
37
112
138
110
130
118
152
93
69
109
92
69
55
131
144
92
114
56
95
122
122
144
138
55
137
56
58
127
67
84
92
55
55
122
79
56
122
92
141
110
114
138
126
55
104
92
112
114
89
144
192
114
169
104
158
127
129
138
75
56
95
74
93
69
67
67
126
95
93
77
107
104
83
105
152
171
127
67
127
138
126
128
178
123
146
135
123
92
79
67
107
99
138
92
126
78
127
128
105
68
37
107
114
105
110
131
123
145
111
105
108
107
122
80
126
105
99
123
139
110
138
56
128
58
122
96
91
92
138
119
122
138
99
136
168
92
122
58
119
110
74
146
91
130
119
136
56
101
138
92
169
104
144
132
104
98
69
119
98
92
142
55
74
131
93
126
122
112
104
55
56
144
124
69
178
110
107
56
104
56
163
37
83
74
171
128
106
74
58
56
109
92
140
126
92
88
110
126
83
84
138
56
171
132
114
134
89
130
91
139
181
136
56
152
92
126
116
121
109
104
122
134
56
91
107
110
92
105
123
37
138
92
118
189
147
55
69
152
81
67
124
55
83
178
91
130
152
86
92
104
67
67
55
114
139
112
110
128
139
119
111
144
139
134
55
114
152
88
110
55
109
83
138
83
67
119
122
56
137
55
103
130
105
122
178
92
101
140
106
67
69
171
55
83
178
139
158
69
118
77
122
105
168
169
122
146
104
138
107
99
83
93
130
109
91
55
120
92
138
137
77
126
92
171
126
126
110
123
164
55
92
111
58
149
137
93
98
86
107
68
144
104
122
86
110
111
128
37
146
134
105
199
119
73
126
126
103
58
79
139
178
37
104
131
124
37
105
58
69
55
139
129
131
134
105
73
67
93
117
140
67
91
144
105
109
105
122
108
110
77
77
37
127
122
97
92
169
88
79
92
126
122
91
126
110
134
111
122
93
55
58
134
110
140
97
105
110
61
124
122
152
126
130
37
67
93
146
99
165
67
122
138
144
152
69
67
99
58
122
103
134
105
138
122
37
86
58
104
148
139
138
86
110
110
123
55
110
104
104
78
74
67
128
55
55
103
92
105
152
146
168
138
139
80
68
97
139
111
55
136
127
92
104
86
37
55
144
140
93
98
77
105
86
99
56
97
142
67
127
91
69
124
138
126
78
126
93
93
127
128
138
153
92
105
162
124
92
105
127
69
74
104
138
92
126
122
86
79
110
99
68
107
37
110
110
105
169
37
158
138
79
58
89
56
101
138
123
86
105
56
146
55
132
89
167
130
74
65
105
144
168
122
130
162
131
55
152
92
92
114
137
55
55
92
92
92
92
93
123
126
120
56
169
77
58
92
83
177
37
93
118
93
97
105
127
127
92
92
110
92
79
144
148
137
120
89
58
86
127
67
135
75
115
144
101
122
125
136
67
37
84
55
128
110
92
92
55
86
139
104
77
91
89
67
182
146
108
77
91
139
107
119
110
104
122
163
103
163
99
92
58
122
104
138
79
55
140
127
95
86
67
110
55
99
123
126
55
134
178
144
91
134
144
55
138
64
104
37
145
55
178
56
98
92
99
122
103
91
105
105
119
67
152
122
126
67
181
139
56
137
56
126
77
137
109
162
152
152
86
56
56
107
168
124
169
125
169
91
148
171
160
138
146
138
104
131
86
105
96
128
99
98
132
77
139
69
103
67
146
117
75
92
128
91
79
37
77
67
128
86
107
77
92
126
97
146
144
132
122
126
110
144
37
92
110
92
67
139
91
134
102
107
138
88
142
110
93
86
169
137
98
104
93
142
127
178
128
115
106
104
126
55
146
122
68
154
116
91
141
107
55
86
104
110
122
55
92
120
74
111
134
58
178
144
117
74
126
98
134
101
55
144
77
126
144
79
105
123
139
55
86
110
144
118
92
110
92
146
75
58
104
178
146
134
105
37
131
146
139
112
115
112
126
139
152
112
111
126
74
97
67
105
139
111
122
111
58
93
56
92
67
110
55
55
92
180
79
67
98
37
130
110
105
69
75
124
114
152
58
138
169
120
92
56
123
117
106
122
122
140
104
134
91
105
122
80
134
92
122
137
67
56
86
92
169
148
123
92
138
152
105
92
118
58
105
138
110
89
55
115
92
86
178
127
56
55
114
125
117
119
110
127
139
110
103
119
100
142
146
126
93
132
119
92
105
37
169
111
111
64
129
144
132
55
117
126
37
122
56
67
56
103
140
138
126
138
107
91
37
119
126
105
131
107
100
140
138
83
127
107
122
104
55
112
69
152
93
55
138
79
123
169
126
86
119
86
55
122
92
127
121
91
55
93
89
92
58
91
92
108
122
74
119
74
55
80
104
55
134
98
91
110
134
92
55
100
105
55
105
112
119
127
74
146
105
98
67
144
74
105
138
178
126
169
79
122
100
104
136
81
152
55
145
92
105
139
56
107
127
88
169
138
129
127
171
122
58
83
109
127
124
109
93
103
111
87
148
110
92
135
92
131
145
79
37
105
139
178
74
105
171
140
124
104
83
55
104
130
126
127
55
152
135
127
92
178
131
110
56
148
92
37
69
92
58
55
56
110
55
178
74
55
93
122
58
122
92
122
69
55
83
126
111
69
146
152
101
95
67
37
98
123
67
160
86
74
77
117
104
55
58
93
79
117
55
105
146
93
37
128
92
37
164
92
107
83
67
103
101
110
163
67
101
55
122
131
74
92
178
180
104
97
110
123
103
103
92
92
91
119
167
93
55
92
86
141
127
135
169
122
110
164
131
98
108
58
138
84
67
117
69
104
56
105
104
55
96
55
56
144
109
130
110
78
93
126
68
140
124
105
107
171
123
131
126
92
92
138
58
68
89
55
130
123
165
55
89
74
79
144
86
92
86
75
102
92
67
178
112
128
56
69
110
67
37
139
131
92
89
104
92
126
109
56
97
132
55
126
144
105
110
110
99
92
55
126
146
109
109
113
103
122
92
74
69
67
162
55
84
127
111
136
58
92
92
85
75
92
83
128
104
134
144
152
148
92
92
93
92
126
146
92
55
55
144
113
123
152
152
80
178
99
104
55
146
135
92
55
92
83
69
92
84
144
84
105
138
92
56
138
67
105
122
56
103
91
93
107
119
69
122
151
99
128
124
58
55
92
95
96
92
110
103
67
74
110
178
118
162
101
127
55
123
93
105
123
122
77
55
98
91
128
88
168
110
55
99
180
67
138
56
144
55
127
93
143
115
88
86
105
146
91
123
79
86
92
169
94
69
56
37
110
93
110
106
110
79
93
97
110
78
110
37
141
104
126
111
105
92
134
122
122
92
178
136
126
109
55
84
121
104
118
123
55
131
55
103
69
158
56
109
128
92
152
178
178
158
56
57
119
128
137
92
126
67
92
110
171
128
92
144
140
41
97
132
77
55
74
144
55
126
124
93
152
111
129
56
105
123
127
127
164
110
107
93
92
79
107
93
118
180
122
100
55
92
171
138
92
69
58
105
115
98
86
67
106
84
139
55
109
75
56
119
92
75
79
110
74
104
135
111
55
104
107
110
110
122
146
68
127
83
178
126
95
168
92
92
67
67
130
110
83
91
104
104
37
69
67
67
104
92
139
56
146
110
95
74
110
89
55
123
77
92
119
178
107
109
156
67
105
37
150
163
105
122
92
69
81
92
122
92
139
146
127
160
152
86
87
81
179
122
147
99
134
122
138
104
58
117
79
146
103
139
55
55
101
101
56
152
101
126
92
144
80
37
110
92
103
105
79
97
37
92
110
113
89
80
98
195
92
105
99
152
105
104
75
95
55
67
93
189
89
144
180
67
67
105
86
144
124
114
37
92
131
139
69
144
112
136
111
110
99
55
77
93
67
138
105
88
92
69
102
178
91
92
144
138
142
168
112
134
92
105
106
92
92
128
110
146
107
180
105
127
127
91
74
79
145
122
107
81
131
122
109
118
103
168
144
178
138
117
122
125
110
58
122
114
122
126
128
146
55
89
88
130
99
138
92
128
111
69
102
126
126
98
79
68
75
67
139
105
121
127
138
127
58
83
92
145
93
126
126
55
55
144
126
79
79
127
168
126
37
92
136
122
105
146
74
128
144
55
84
92
110
67
147
55
58
92
55
110
55
139
92
109
74
127
139
93
146
109
95
65
126
67
119
67
55
83
69
72
105
128
152
146
55
137
104
136
67
98
104
67
67
105
37
92
178
117
122
98
69
93
92
127
114
145
110
93
110
144
55
105
107
98
146
110
97
111
55
122
110
91
180
79
55
58
75
142
146
92
55
86
119
108
122
127
135
105
128
58
140
55
37
67
149
178
136
163
107
56
126
92
127
131
138
75
104
55
138
55
92
58
55
55
108
119
91
105
56
138
139
138
77
67
103
169
122
124
122
92
140
67
55
171
55
97
131
37
69
171
146
104
101
91
122
126
122
169
93
110
56
122
55
136
93
110
132
130
92
104
152
139
110
67
93
92
122
104
67
88
55
110
104
56
55
105
126
140
56
139
110
104
67
128
109
119
99
111
167
92
108
110
138
163
124
126
81
130
61
169
126
55
127
98
121
105
122
122
97
58
130
105
106
67
180
93
56
146
127
55
37
106
148
127
55
103
92
55
92
126
67
180
101
169
92
146
152
136
93
92
101
55
123
92
93
89
99
144
135
58
128
138
121
139
152
144
69
74
55
92
156
169
102
105
132
55
69
140
122
111
88
109
68
122
67
55
122
162
169
67
178
109
105
89
178
109
138
92
141
127
179
158
84
97
79
101
126
69
104
55
122
168
110
74
131
122
115
92
110
88
178
37
134
139
55
134
140
134
92
67
126
123
144
178
67
141
178
83
58
92
104
37
111
128
89
152
109
56
73
126
169
110
169
110
139
148
58
127
122
91
92
146
114
93
110
119
104
148
106
92
56
67
107
138
107
92
110
138
105
93
130
108
105
67
110
67
92
126
107
152
146
110
114
37
134
74
105
99
115
110
74
146
91
75
130
92
105
138
58
86
64
126
67
125
105
178
37
111
74
140
138
91
93
107
55
178
178
56
67
104
88
139
122
67
92
138
138
92
140
110
79
68
55
105
105
123
67
122
135
144
71
103
171
110
55
103
138
92
86
105
178
105
122
122
97
86
55
107
142
110
56
92
105
122
58
178
104
120
144
132
171
107
129
104
58
178
91
105
67
126
77
165
126
55
105
86
127
92
55
104
86
74
122
37
122
69
86
97
92
107
58
86
55
110
110
56
68
55
131
74
110
67
77
178
104
160
126
126
109
89
171
119
126
92
69
55
152
136
92
105
122
128
123
37
67
55
104
139
93
105
103
168
92
114
123
84
87
114
111
158
117
55
126
119
110
86
119
92
91
105
136
93
126
92
150
58
37
67
128
110
110
139
138
122
138
67
171
126
67
92
55
138
122
94
111
74
103
119
138
84
77
178
67
93
92
55
86
100
92
37
122
134
103
105
55
55
146
122
126
126
122
140
77
103
92
122
144
122
128
92
84
77
97
122
67
134
169
109
117
79
92
98
144
55
138
92
144
139
110
152
105
117
105
138
134
134
119
132
98
104
171
105
55
139
111
126
77
146
126
171
91
152
93
128
55
67
92
130
93
101
56
144
56
77
69
134
105
84
92
67
55
122
55
67
93
104
105
104
126
68
122
152
110
134
122
86
55
114
138
83
79
86
67
104
74
74
97
126
98
88
55
126
110
119
93
92
105
127
55
178
97
56
105
37
92
132
160
78
140
122
57
101
178
37
93
69
128
83
107
56
92
104
67
126
130
93
56
37
37
110
130
68
110
67
134
110
132
75
126
126
146
127
79
148
110
56
134
130
55
103
58
92
61
138
132
55
104
55
69
55
68
105
93
139
119
126
79
120
105
92
160
110
122
105
86
110
139
91
128
134
67
118
105
122
121
104
182
132
105
144
58
56
91
168
86
100
192
92
122
109
112
95
122
92
126
126
122
37
178
110
88
93
105
69
92
110
93
106
95
144
105
122
74
79
86
138
100
104
105
107
144
145
123
126
55
144
79
111
105
146
68
104
137
152
102
126
127
111
149
92
105
79
126
122
98
109
122
138
101
168
56
142
83
110
91
92
56
111
129
89
122
105
127
104
117
104
178
75
37
67
144
122
55
109
109
110
121
92
93
110
128
168
124
92
126
122
104
111
86
163
100
92
75
56
92
106
122
37
55
69
121
139
77
111
128
132
37
79
146
92
91
55
92
126
56
119
105
114
127
67
124
120
100
93
91
137
67
58
104
104
55
149
55
69
119
69
138
104
130
169
98
105
93
110
122
92
139
110
79
122
139
136
89
92
55
102
110
144
122
75
110
136
135
79
69
124
77
130
75
138
55
152
55
129
105
138
58
67
93
146
152
74
138
120
152
93
111
143
138
92
138
107
105
92
110
162
99
106
122
92
110
91
105
135
92
120
104
56
104
128
138
141
72
93
127
92
105
77
144
88
84
109
160
152
55
110
123
93
104
140
123
134
56
138
69
140
122
128
56
168
93
93
130
69
139
94
95
86
56
126
37
105
106
138
138
86
137
99
106
152
140
104
144
91
92
111
83
132
99
115
56
178
79
138
69
163
83
122
92
55
114
55
122
139
103
109
91
56
138
137
87
74
139
138
107
67
122
69
68
95
130
58
92
78
178
138
131
105
58
140
104
103
110
147
128
139
98
101
128
134
56
132
138
86
178
92
144
104
64
138
130
124
111
110
126
93
116
178
148
139
93
129
105
144
122
109
69
83
75
126
55
102
126
122
122
114
104
126
105
160
92
177
105
169
111
144
178
69
140
137
93
74
69
56
103
80
112
97
58
55
122
93
130
111
55
86
77
55
126
69
110
144
152
107
76
55
92
107
132
128
130
79
67
56
105
158
75
89
104
55
145
69
111
132
138
92
105
122
146
99
140
55
92
123
152
138
123
145
139
109
105
110
125
127
139
178
110
128
92
56
89
128
122
122
79
79
146
67
92
140
119
137
55
95
97
127
142
67
110
93
151
104
144
126
169
139
110
99
105
122
148
126
111
178
55
178
154
92
79
102
58
122
91
144
110
126
111
169
134
120
110
145
126
81
126
178
79
92
104
152
56
79
67
79
139
138
138
122
110
105
91
145
144
79
98
122
131
139
86
97
148
178
80
146
92
152
55
86
100
119
77
132
138
104
111
67
145
93
144
171
111
58
123
67
119
123
56
55
58
134
101
92
178
152
108
97
58
132
105
127
104
89
67
144
92
92
92
114
132
91
122
69
104
160
178
69
103
67
126
107
92
56
136
104
92
122
138
112
152
37
69
126
92
146
105
93
139
105
126
67
109
126
92
101
55
110
56
126
104
124
163
103
158
156
56
178
110
109
131
147
139
55
56
92
79
146
58
127
168
89
74
67
110
37
127
171
105
144
58
152
93
113
92
93
37
105
171
56
152
97
92
110
165
58
117
110
138
152
110
147
140
102
93
122
58
178
58
96
110
103
107
93
89
110
144
131
67
104
111
123
55
86
144
132
138
58
97
136
138
139
152
103
107
104
93
178
102
55
124
104
110
56
67
92
92
99
74
105
95
109
56
138
171
99
69
79
91
56
92
104
127
140
138
152
110
179
134
169
105
93
92
128
99
128
107
127
92
84
92
122
130
109
67
79
67
105
67
107
92
92
118
100
69
169
55
146
88
105
91
105
79
109
135
67
139
75
103
138
92
86
106
79
145
105
105
105
111
75
102
104
69
67
169
37
92
123
178
37
144
93
105
37
92
56
105
92
130
110
56
105
110
56
122
119
144
138
67
127
67
111
37
105
122
116
105
104
138
37
138
123
86
144
86
86
105
37
138
146
122
74
93
92
105
112
55
105
110
91
122
126
110
67
122
95
117
144
114
105
168
93
128
79
77
55
126
79
37
55
137
93
146
128
103
104
75
126
132
67
122
104
110
56
104
138
120
91
109
127
151
139
67
67
110
103
107
164
114
178
55
128
92
105
126
67
55
110
55
37
128
152
37
123
97
67
110
101
86
122
91
127
126
122
162
146
146
146
37
37
144
92
122
129
122
131
107
120
75
91
140
178
165
69
110
67
119
58
110
105
110
110
139
119
169
114
79
129
110
104
104
146
101
160
92
127
122
102
101
79
105
139
148
86
69
101
110
126
110
79
55
144
158
92
105
146
158
146
132
98
92
138
58
104
138
91
123
134
77
138
109
137
111
126
69
110
109
56
158
67
121
138
84
93
55
122
145
69
92
138
148
104
105
67
93
99
167
111
180
126
139
55
91
58
110
169
146
77
58
110
105
105
97
129
138
55
122
78
86
130
119
146
138
105
58
121
122
136
56
67
105
86
110
110
79
55
92
138
112
97
122
123
86
86
109
144
104
110
91
83
93
124
96
126
104
55
113
110
152
69
67
92
119
138
98
144
169
132
74
105
99
130
92
69
126
110
117
102
126
109
110
107
148
58
138
152
92
180
37
169
89
56
104
119
126
139
163
178
93
86
37
169
132
98
37
109
114
95
124
128
61
93
123
93
144
137
122
86
88
114
93
93
137
55
140
80
138
111
127
37
92
77
92
127
123
152
92
117
105
171
126
128
152
93
79
86
99
92
146
110
178
127
109
146
37
56
119
86
163
93
163
152
58
110
152
104
37
123
126
58
67
131
77
69
169
128
83
110
92
144
81
37
141
122
105
115
146
192
138
110
106
123
92
111
119
104
84
103
130
105
171
117
55
128
91
125
144
126
140
105
77
139
127
55
110
105
109
145
108
138
149
134
123
122
160
144
92
91
104
123
37
67
97
92
92
167
104
105
144
110
107
109
138
109
91
93
105
99
104
104
75
126
92
139
103
69
67
118
169
124
127
102
58
75
92
104
109
104
105
75
92
123
92
77
96
127
101
138
119
58
105
122
169
124
86
128
56
105
138
106
122
103
119
105
146
127
93
111
104
149
109
37
107
123
138
169
126
81
56
126
55
102
134
128
93
110
131
113
79
122
109
37
140
122
122
109
55
122
105
104
84
114
123
92
122
138
122
126
134
124
109
55
134
102
92
104
55
89
120
140
165
77
110
126
127
178
127
123
144
124
119
98
128
104
55
78
119
56
75
131
164
87
55
56
140
92
140
111
95
102
67
83
99
134
109
139
55
119
106
128
146
138
106
58
105
102
110
37
138
171
122
55
144
114
86
99
134
158
103
109
83
108
55
86
105
37
55
115
97
105
148
107
110
137
122
67
55
150
55
37
55
107
105
164
92
68
107
138
86
180
144
105
145
105
92
75
114
128
68
178
126
103
111
128
37
169
121
104
58
138
122
97
67
104
68
104
105
37
136
67
55
136
144
160
92
83
138
105
37
124
55
139
101
58
118
55
145
110
122
178
68
134
127
76
75
142
179
56
93
142
69
110
56
104
123
110
93
79
126
164
37
128
56
103
105
137
79
91
139
88
105
55
122
93
85
86
87
105
126
123
138
138
91
124
168
92
105
79
99
55
140
140
120
55
126
77
138
168
105
138
92
132
129
86
67
56
126
105
135
111
102
128
91
120
91
106
79
144
140
104
105
104
137
106
139
122
104
112
104
104
120
69
75
99
69
111
37
138
92
134
74
128
128
89
56
148
127
138
110
139
136
152
56
105
180
110
56
77
75
101
77
92
80
69
119
122
104
37
105
105
124
92
138
84
56
37
86
56
92
83
138
58
122
130
145
37
139
55
122
92
55
67
104
68
109
107
122
92
97
56
152
140
138
111
96
92
119
91
123
122
126
160
110
163
75
105
55
105
105
98
99
93
55
120
76
128
99
105
127
152
122
79
132
168
67
69
125
128
138
138
58
119
55
122
139
104
79
55
55
123
130
139
119
178
69
138
68
92
110
92
75
92
93
178
97
111
104
93
120
84
56
178
77
158
99
95
93
92
134
107
55
132
92
55
110
178
55
69
132
126
55
56
123
126
138
146
127
75
126
128
79
111
109
127
37
110
55
58
99
122
178
110
165
126
127
104
180
110
105
67
138
110
55
112
69
37
188
79
171
110
107
146
146
178
144
55
92
122
124
84
169
81
110
114
110
111
69
67
92
146
130
145
79
104
92
104
81
178
132
139
77
68
97
122
79
114
104
138
139
103
126
127
110
138
37
92
93
101
162
104
197
146
93
77
109
138
99
69
140
139
109
105
103
124
130
58
68
105
74
119
79
83
128
148
55
55
104
111
67
163
103
67
144
100
138
108
56
56
134
56
92
55
101
97
171
37
119
107
75
92
91
79
74
91
146
56
130
68
112
92
92
158
110
55
141
139
69
122
77
128
127
123
119
79
97
74
97
93
139
152
138
126
106
138
74
124
139
127
107
111
64
94
138
104
93
93
55
92
120
75
140
56
75
92
105
91
156
104
67
56
127
123
92
58
124
95
93
79
86
93
146
55
92
110
68
55
158
88
56
98
77
93
122
37
123
140
92
110
123
104
178
139
92
156
92
92
126
67
75
104
107
92
134
55
169
138
67
192
92
99
69
81
129
92
110
99
75
97
37
55
144
111
111
103
122
127
55
37
122
83
69
123
109
122
119
105
104
139
104
58
58
86
58
148
110
138
131
92
55
120
74
104
110
105
104
115
110
122
113
145
74
77
97
115
110
93
138
56
122
122
58
128
142
110
111
139
93
139
144
107
110
119
74
74
92
92
126
67
122
112
92
109
127
89
100
111
148
92
95
137
126
84
68
37
67
79
189
139
144
92
160
140
118
119
103
112
92
103
148
134
58
105
109
127
138
56
110
69
122
110
92
55
130
92
122
75
130
168
148
123
110
37
58
97
67
94
144
97
101
115
92
55
56
103
117
55
158
169
55
126
110
126
86
124
109
92
111
169
67
131
105
124
122
110
56
131
119
69
111
55
68
130
75
91
128
92
111
118
106
178
137
55
148
138
105
122
55
141
55
126
162
92
138
55
144
56
126
83
111
101
123
108
37
122
169
83
111
138
131
83
123
99
55
110
86
56
83
91
84
136
86
110
119
138
93
109
134
128
93
105
138
109
103
91
77
105
56
169
55
86
140
122
141
114
106
119
130
95
79
92
105
105
150
98
92
101
37
91
122
74
138
92
86
152
134
104
91
101
119
69
86
132
122
55
126
56
103
128
72
92
105
92
107
139
93
55
108
55
145
37
126
56
127
84
99
119
86
178
148
77
130
110
69
148
110
79
95
127
144
122
126
101
163
134
56
86
55
112
106
110
88
92
132
55
105
104
104
145
132
92
171
130
123
171
126
105
97
110
76
141
55
92
92
74
139
107
122
56
135
152
126
168
56
144
56
56
110
105
126
129
105
92
126
105
103
69
120
117
74
152
92
97
77
89
86
168
144
148
122
93
148
107
86
145
127
92
105
144
56
93
99
77
92
119
69
109
77
92
92
106
128
58
127
37
104
117
110
178
93
105
72
98
123
119
55
77
158
74
110
163
123
137
92
105
122
93
110
139
67
105
111
152
56
87
103
77
93
122
138
92
148
92
128
123
158
75
84
138
152
111
67
111
94
138
140
130
128
138
120
128
92
58
141
126
132
104
124
126
105
56
182
37
92
126
93
67
104
79
86
140
111
67
105
142
86
86
100
116
109
124
128
105
137
119
134
138
156
55
144
150
103
146
138
92
104
99
86
105
101
92
146
137
86
92
102
138
92
107
92
84
58
79
110
164
110
104
67
91
69
178
122
144
68
122
110
91
134
126
58
146
109
58
37
73
105
92
137
171
119
144
122
104
110
122
79
164
55
110
74
86
152
146
122
164
99
138
122
77
171
105
141
84
144
122
109
178
95
122
139
69
110
126
178
164
114
99
144
55
149
92
131
138
144
74
79
98
67
168
110
105
163
111
100
128
169
128
110
92
109
114
97
103
55
56
117
144
84
58
147
110
69
122
93
104
77
120
92
126
103
122
138
123
89
104
144
104
74
92
104
127
75
117
126
110
122
105
101
92
99
67
74
99
92
124
105
128
139
74
107
139
55
74
99
111
104
127
93
107
132
122
105
171
123
101
124
146
178
93
129
91
110
69
93
69
152
124
146
80
58
122
142
127
114
122
168
110
122
126
99
103
92
83
69
37
134
129
126
89
144
165
106
92
68
99
122
103
92
93
127
104
67
110
92
130
127
91
138
92
163
93
103
169
93
122
92
146
93
110
104
112
146
105
100
105
180
120
77
104
55
92
37
107
138
92
92
67
93
148
55
122
110
92
178
110
102
178
92
56
122
56
146
126
93
67
108
126
74
107
109
110
115
58
110
69
104
178
104
114
138
67
88
114
109
110
131
132
110
139
110
84
55
112
178
128
92
112
55
119
69
110
144
107
91
127
86
122
111
56
93
126
77
126
91
130
109
37
169
167
126
110
126
103
158
105
105
107
98
56
75
92
105
104
126
129
91
152
83
104
124
139
109
55
105
138
139
128
69
105
104
152
123
113
92
109
37
171
138
126
67
55
163
112
92
67
107
93
86
128
112
67
99
144
135
110
104
104
69
79
84
56
110
139
99
122
139
110
92
111
122
99
122
146
110
84
86
134
110
126
110
130
122
134
100
102
77
94
55
178
56
132
134
92
134
118
152
92
147
120
111
88
138
145
105
67
93
75
79
162
37
127
58
92
92
55
102
84
79
152
144
58
126
128
120
105
140
178
58
124
131
92
92
103
37
146
178
110
92
105
124
37
114
67
119
56
37
108
132
141
138
55
37
135
98
126
131
91
99
69
85
86
83
100
97
92
146
93
100
68
103
122
79
122
105
146
110
55
93
56
95
92
139
83
67
144
108
77
148
37
91
58
92
128
99
69
121
112
75
74
37
56
146
122
100
109
74
126
178
91
110
131
158
110
150
130
100
97
120
92
147
122
110
116
77
109
122
105
92
142
142
77
110
139
86
92
178
89
111
105
68
105
55
92
37
55
110
105
100
110
88
58
91
110
130
99
88
156
126
126
69
122
56
67
135
122
157
138
77
107
67
67
102
104
80
112
108
127
67
103
132
144
109
105
92
92
138
122
118
56
110
83
125
111
55
99
67
178
178
105
99
69
117
126
107
67
124
105
123
93
92
134
136
107
108
126
124
105
126
126
91
126
122
123
75
119
138
92
97
37
169
104
107
79
127
178
122
122
107
55
86
74
92
92
127
113
125
92
127
127
67
122
126
97
110
68
67
167
105
131
126
110
165
126
67
74
92
178
84
146
144
97
120
92
113
126
102
168
127
158
67
104
105
92
104
122
152
111
108
138
97
126
112
104
122
55
74
136
69
69
123
92
127
116
119
108
104
91
126
111
69
101
122
99
118
80
91
99
58
93
119
93
144
140
110
127
77
138
104
122
67
109
128
105
126
104
115
55
146
56
138
37
69
92
80
128
110
105
110
107
107
126
139
107
77
123
55
122
105
144
139
93
99
146
99
169
121
97
97
67
126
55
138
126
140
126
148
106
140
58
126
103
77
55
81
96
74
37
120
122
37
124
84
119
69
119
105
103
122
126
67
79
67
122
131
92
86
56
79
93
133
97
122
79
110
74
113
74
98
140
104
84
118
93
122
109
122
67
152
37
138
75
92
134
68
99
110
67
105
136
102
107
134
37
55
122
74
118
138
103
55
111
126
92
110
178
69
105
144
126
99
164
128
126
119
105
37
130
69
109
68
56
111
92
131
152
109
152
111
99
109
55
67
84
144
114
169
58
140
69
80
83
104
75
92
105
55
134
99
122
169
77
112
86
171
126
122
55
119
105
67
122
56
97
69
83
111
92
131
92
92
58
92
69
136
152
67
114
178
164
67
67
105
122
69
86
58
106
136
110
91
55
37
55
180
178
105
146
122
134
92
117
56
55
178
104
104
83
180
55
124
118
145
139
93
55
178
169
79
110
123
105
92
67
138
93
119
67
123
124
126
178
110
131
55
69
112
98
91
139
112
140
102
138
87
123
67
127
74
149
117
37
112
92
68
92
130
55
122
127
79
86
123
110
128
56
72
140
169
127
111
105
105
37
74
122
68
122
97
119
163
138
69
169
92
74
101
123
144
144
137
92
139
101
110
123
126
136
139
138
180
146
169
142
122
146
110
104
97
123
93
167
123
105
55
58
92
169
67
104
92
124
122
144
126
128
147
110
105
139
84
138
93
138
104
110
91
93
146
92
104
160
98
74
130
125
134
122
67
122
129
178
146
139
103
144
103
79
126
122
92
126
107
138
55
92
139
93
67
55
105
93
119
95
81
127
56
122
140
109
56
129
122
37
122
86
123
129
92
178
119
56
138
58
126
105
105
37
167
92
89
119
132
105
104
55
58
105
139
58
55
134
123
55
69
178
126
37
56
92
55
92
163
104
111
146
79
69
77
55
56
100
67
55
56
107
91
111
122
79
105
92
122
138
137
107
80
86
92
140
74
164
92
112
120
122
152
103
110
104
110
119
92
92
148
122
88
120
110
104
110
122
79
93
102
131
131
128
56
128
56
93
75
67
148
118
56
110
130
105
126
110
92
110
67
138
37
110
146
122
56
120
144
37
93
55
138
104
83
126
144
110
91
55
127
99
109
104
138
93
138
119
83
139
123
119
119
122
109
56
123
97
55
146
139
126
126
67
105
55
101
58
75
68
118
111
124
104
149
91
105
91
118
107
123
122
64
111
146
139
122
144
83
58
152
83
127
79
69
145
127
110
110
105
152
122
100
105
55
110
118
139
104
128
105
140
100
67
130
131
79
91
171
103
140
139
122
132
119
150
83
118
37
142
103
75
104
178
102
171
92
129
92
68
138
110
144
128
94
146
58
105
105
128
67
138
91
104
123
122
138
139
117
110
126
110
69
104
86
69
140
169
87
93
123
199
162
74
139
108
58
168
182
95
120
67
152
93
110
110
109
130
107
86
178
75
135
122
134
55
120
104
77
126
148
178
111
123
146
147
56
128
55
132
138
148
138
144
106
110
146
110
83
86
99
68
111
122
102
156
139
91
79
91
139
104
158
125
100
146
178
37
107
110
58
92
136
130
144
58
75
58
146
180
139
69
92
122
122
104
75
103
101
152
126
100
178
117
55
126
55
55
139
104
86
144
126
37
136
146
139
55
56
92
104
127
171
58
93
110
58
92
105
171
56
107
188
67
88
92
110
124
74
95
111
74
104
110
120
144
132
92
79
105
67
75
92
138
56
114
55
83
56
91
104
101
55
92
114
92
163
55
77
168
138
158
92
98
178
138
105
124
94
93
169
74
138
119
105
145
92
124
112
74
111
136
93
128
119
119
104
104
56
169
100
100
119
71
105
113
92
99
55
97
139
156
114
142
55
105
95
74
122
56
146
115
126
55
110
120
104
98
91
145
86
37
55
92
75
91
104
119
55
58
110
92
68
93
104
115
99
55
138
130
138
114
93
123
139
92
105
114
84
92
122
144
122
129
56
75
55
97
55
83
128
56
109
164
76
118
100
100
37
132
67
180
122
91
138
79
93
83
168
79
92
136
140
77
56
122
126
122
136
69
138
68
110
144
139
110
68
56
110
102
77
144
92
120
168
67
146
92
93
92
92
74
93
95
169
110
56
130
110
110
102
146
91
138
137
107
79
139
55
138
126
150
110
110
111
92
119
104
150
171
171
134
74
110
110
126
67
104
126
86
91
92
146
37
137
110
91
80
146
124
103
129
103
58
138
137
111
77
102
67
110
55
138
105
68
37
126
74
139
110
178
122
86
56
92
110
178
56
104
110
75
146
92
111
110
109
139
56
134
94
93
56
68
92
67
69
55
58
105
104
105
92
86
91
168
68
180
126
37
58
123
163
37
93
55
83
55
119
127
105
102
55
61
56
139
138
88
107
139
118
69
81
104
122
55
139
89
89
104
138
101
139
128
110
58
77
55
122
92
111
104
139
98
126
138
55
110
104
83
37
138
105
105
103
94
92
105
86
126
129
132
113
144
92
104
104
114
55
104
111
105
98
134
138
125
120
111
67
105
152
92
97
122
37
103
144
92
107
110
107
55
93
138
144
107
127
105
138
122
69
68
92
96
138
110
110
55
111
169
98
111
105
142
139
67
92
109
112
56
171
67
101
92
139
55
110
75
56
119
93
101
105
77
110
92
77
86
119
103
110
164
160
101
138
110
99
99
100
74
128
125
146
126
86
139
140
145
122
58
178
156
119
144
109
37
98
171
112
146
138
138
107
119
119
105
139
77
75
152
132
77
86
119
130
92
81
94
67
105
103
56
142
122
168
158
92
126
139
169
122
56
69
112
100
144
119
69
163
75
110
122
56
110
99
68
74
122
78
67
93
104
110
93
75
111
111
105
109
148
105
91
55
110
69
55
107
105
128
104
55
128
58
74
109
126
122
110
55
120
67
92
103
58
120
86
67
110
107
91
37
104
180
74
55
138
138
152
64
68
55
55
110
55
119
104
74
127
69
111
92
93
55
114
138
165
139
67
112
118
78
99
138
69
146
95
138
110
55
92
55
178
104
126
126
124
55
110
56
89
152
144
104
140
110
74
156
68
92
58
92
80
105
139
138
126
113
127
167
135
69
92
95
104
103
160
104
139
107
92
126
67
122
68
67
120
55
122
180
118
69
93
95
55
122
105
122
110
127
162
105
93
110
110
91
126
110
69
114
139
91
77
106
74
86
139
199
169
158
122
68
135
94
67
144
140
122
92
105
122
106
97
145
126
92
77
79
122
104
92
74
93
107
139
86
69
105
74
67
131
37
168
159
100
168
146
108
91
105
135
104
138
144
123
110
104
110
74
126
69
99
110
79
58
123
128
93
95
92
105
86
109
74
114
148
74
86
119
146
55
93
107
158
92
93
139
138
58
67
119
77
138
92
37
110
107
118
99
142
131
139
122
136
67
127
122
131
91
153
104
106
67
119
68
129
138
105
107
56
67
86
92
146
91
93
138
122
105
69
87
37
138
110
77
126
92
91
55
89
122
117
152
56
110
128
137
180
74
139
91
79
147
118
69
92
74
134
92
122
138
178
126
67
105
122
180
74
134
122
110
69
130
74
92
110
58
169
103
146
169
144
67
134
138
56
77
128
169
139
127
112
122
127
117
84
111
110
152
122
74
139
119
103
67
92
134
92
130
100
69
136
112
162
93
105
74
139
126
92
110
147
102
100
152
92
56
108
105
56
103
130
75
140
199
37
132
142
110
118
105
162
65
138
122
111
77
111
178
110
137
105
55
93
74
84
120
123
132
122
138
79
117
110
55
93
146
138
144
163
86
56
92
91
110
152
110
83
92
134
97
110
105
67
127
105
144
105
55
104
92
117
93
144
134
122
122
55
122
127
103
89
56
105
79
134
122
55
126
105
92
111
123
145
104
158
69
100
122
103
105
123
103
37
77
69
126
160
104
55
105
122
92
110
92
124
55
122
92
86
128
146
56
122
92
146
122
67
110
98
169
92
58
75
105
131
111
152
144
77
37
120
92
164
58
92
134
115
146
131
144
127
158
126
97
122
110
56
110
104
69
164
138
55
92
127
109
126
138
154
92
132
126
122
119
152
102
98
69
37
109
105
105
107
91
114
139
103
81
142
55
67
93
122
101
105
122
55
105
55
75
140
144
99
106
119
178
93
105
107
103
119
56
55
134
105
128
169
146
105
105
138
93
67
79
126
92
138
169
138
109
83
93
55
67
56
122
126
77
69
93
77
139
132
69
92
93
111
92
131
111
145
146
146
80
120
91
103
104
55
93
56
109
136
111
106
177
105
127
124
144
77
55
75
55
110
126
122
132
146
92
104
171
106
67
178
86
122
111
114
158
95
56
55
125
97
138
134
126
124
56
77
86
92
105
86
123
55
77
135
163
144
79
55
127
163
126
105
105
110
119
91
105
109
148
111
103
74
103
148
144
127
92
99
122
144
55
102
92
131
69
127
92
106
106
138
122
127
134
119
55
107
86
56
138
104
111
134
138
138
67
124
77
92
68
128
126
127
123
67
92
171
122
78
141
55
124
139
79
69
58
138
74
58
110
171
67
89
37
152
109
84
120
104
169
68
92
74
110
92
106
69
56
123
92
99
122
58
55
105
92
37
122
68
138
114
146
105
127
56
126
56
102
146
93
140
84
122
75
110
92
163
109
79
105
58
138
104
106
138
91
100
74
92
152
102
77
97
158
109
103
91
113
92
83
99
91
122
91
55
178
146
152
92
112
146
67
104
110
122
92
55
67
105
158
171
58
111
93
92
105
167
128
159
114
37
104
107
134
89
55
105
126
93
124
92
110
100
123
77
98
108
144
100
128
110
92
117
123
105
81
91
178
58
110
158
142
105
138
67
104
138
152
122
77
126
69
120
152
128
178
55
89
138
83
109
158
132
128
158
114
119
104
58
104
55
92
144
111
58
128
67
168
58
67
122
112
146
123
91
98
139
55
112
58
110
96
99
55
110
138
123
93
182
58
92
112
153
105
146
138
109
115
178
129
107
120
110
56
127
144
122
91
152
126
74
178
131
55
110
67
56
85
137
107
69
93
55
141
110
68
128
83
92
37
83
92
99
163
37
139
55
119
111
104
105
123
128
123
91
112
93
146
95
178
96
122
144
106
79
55
171
139
92
86
134
67
55
69
77
111
55
138
106
97
135
100
152
178
126
104
77
136
111
75
93
110
152
138
164
178
58
139
111
92
123
58
97
55
126
167
163
102
158
144
91
139
37
74
117
106
75
69
119
152
110
56
138
69
122
92
67
102
101
122
55
84
92
93
103
177
92
111
127
109
105
164
86
86
110
93
127
101
106
111
99
141
108
138
119
92
93
56
83
105
84
118
101
55
110
126
131
97
152
119
123
105
115
98
110
126
109
111
86
55
91
93
126
104
105
100
144
105
79
55
55
93
132
182
152
117
108
55
106
91
128
104
67
146
126
126
75
78
110
92
126
128
92
109
104
79
79
95
58
37
178
128
145
122
122
92
139
37
110
105
134
178
148
69
120
121
144
139
56
95
68
92
79
109
126
100
111
79
122
137
110
134
122
119
103
99
37
67
92
110
56
100
134
144
110
95
55
107
67
37
56
134
105
92
92
105
106
55
94
86
110
93
92
110
131
97
110
92
100
169
123
108
117
124
123
92
126
126
69
117
55
92
56
126
152
68
86
169
139
98
93
104
144
55
69
86
92
105
86
134
128
110
110
67
74
64
122
100
110
128
55
110
105
139
126
125
152
67
138
69
104
77
69
104
69
92
119
79
109
107
158
37
138
168
138
124
122
122
152
56
92
139
160
138
104
139
119
83
55
105
138
144
37
75
152
93
125
88
163
75
127
127
37
55
111
146
102
122
75
117
37
92
37
68
55
41
102
58
119
139
119
146
107
37
95
104
109
151
110
103
91
92
55
93
110
79
83
111
56
105
119
104
84
144
113
134
140
93
126
58
55
105
56
144
140
122
120
117
98
178
126
178
145
122
126
92
126
77
37
138
83
126
119
120
75
111
55
69
178
145
122
67
86
111
56
55
106
86
152
152
105
61
105
67
58
69
138
92
119
110
127
67
104
55
67
79
102
103
99
110
77
127
114
91
120
127
58
67
178
136
168
127
93
109
93
55
105
77
92
69
146
110
138
111
110
127
74
169
131
92
178
144
145
142
102
105
104
160
84
89
105
55
104
146
83
37
110
58
97
110
164
83
67
86
138
74
118
105
122
101
178
113
127
91
139
139
92
93
169
110
93
199
92
139
105
105
92
165
104
104
110
103
138
138
126
146
110
139
105
138
97
113
127
122
138
58
127
78
126
110
77
56
138
144
127
104
104
122
93
55
148
123
83
92
55
105
93
158
56
91
74
93
139
56
122
138
55
56
99
77
75
77
74
140
79
140
110
92
138
126
130
127
64
79
105
158
77
74
105
102
132
56
119
126
107
122
37
117
111
69
168
119
126
98
138
67
69
67
55
117
55
112
92
123
122
105
83
104
92
118
119
112
105
127
77
79
104
140
126
100
110
98
110
103
77
136
55
122
127
68
122
105
67
92
126
118
109
83
107
142
105
126
93
91
104
139
138
122
104
79
99
124
145
67
152
178
140
152
122
126
56
138
104
67
140
55
126
139
110
119
97
122
67
92
114
92
140
142
58
86
75
110
98
121
126
110
122
178
91
105
88
127
111
138
114
124
92
111
55
92
57
140
146
95
120
92
93
118
123
112
128
138
110
171
152
92
138
67
93
100
55
109
127
122
92
110
94
58
92
152
162
86
169
86
139
171
134
126
114
95
67
118
37
69
141
128
79
55
92
55
86
103
81
77
107
169
93
58
105
86
93
56
101
138
132
97
105
107
100
122
154
69
105
105
137
58
192
78
56
92
55
122
124
144
104
128
119
138
123
144
92
178
122
111
58
105
58
79
37
69
124
107
58
92
105
92
75
128
129
102
110
110
75
144
77
104
165
92
146
91
105
122
37
105
134
114
122
92
138
152
105
127
108
104
188
138
55
110
122
146
122
67
127
55
92
120
92
104
122
105
67
58
105
97
144
146
93
124
67
55
110
91
95
104
148
117
101
169
68
101
55
114
152
79
68
119
56
93
95
58
79
128
89
110
105
149
92
110
134
139
78
110
107
144
138
58
120
127
127
131
107
77
79
79
101
127
111
68
92
93
92
68
126
55
134
55
104
139
105
105
56
99
104
150
95
130
92
118
122
110
114
138
86
84
95
67
126
138
138
103
178
122
55
75
109
126
110
55
103
69
92
77
55
153
69
105
55
139
146
83
138
58
178
104
103
93
55
124
122
120
168
152
56
99
99
110
111
100
95
188
56
110
138
92
144
103
77
84
146
58
67
123
107
134
124
105
144
103
75
121
148
58
105
119
55
91
128
144
77
104
113
83
111
105
99
110
67
126
169
78
67
93
67
86
163
138
169
178
58
123
99
56
56
100
122
80
97
56
119
105
178
105
122
127
110
86
93
92
56
122
95
111
104
110
94
55
138
144
69
114
152
126
89
144
80
56
103
134
56
95
92
117
110
37
98
110
138
56
107
104
122
104
127
55
122
139
111
107
92
79
104
92
138
56
139
75
140
99
86
168
110
67
140
119
99
86
105
110
108
108
67
92
125
92
132
178
112
56
105
138
55
105
168
79
109
127
158
69
58
104
139
110
124
126
188
93
69
55
104
131
139
105
105
69
107
169
135
69
83
99
111
37
138
122
188
119
122
92
113
110
37
129
92
169
114
69
127
134
55
110
127
126
91
68
104
139
114
139
37
111
87
97
178
93
110
139
160
119
179
91
126
110
146
81
97
110
79
126
92
122
85
146
127
111
178
130
127
119
55
119
140
146
105
146
83
111
74
169
58
86
152
138
122
119
67
146
123
69
37
111
86
126
103
67
89
119
147
138
92
152
137
37
92
122
56
138
56
126
126
128
102
104
58
91
79
144
105
137
87
134
169
77
92
112
77
55
92
178
92
67
126
56
126
105
97
125
58
122
95
139
91
122
151
114
91
58
178
55
107
109
121
110
81
128
126
110
148
146
122
55
130
113
99
110
122
144
79
141
99
109
109
139
89
128
86
178
100
163
110
55
120
152
99
67
142
92
122
128
74
88
92
126
146
128
92
92
95
131
37
129
134
124
104
105
86
77
110
92
69
56
77
180
107
146
110
104
126
105
123
180
74
126
91
152
55
55
126
152
87
145
138
79
148
69
75
126
169
37
92
92
109
125
113
106
56
146
180
111
92
122
100
93
103
107
104
84
135
139
169
126
152
119
138
83
107
152
93
138
68
84
123
110
110
122
109
97
124
58
144
178
92
105
93
122
119
122
105
163
105
92
138
92
144
110
109
74
148
163
131
140
109
92
126
92
83
135
146
144
178
92
110
104
169
92
137
98
55
110
81
104
120
83
105
103
68
104
138
92
58
144
104
110
67
140
99
92
101
92
168
144
93
92
123
122
86
120
143
103
130
140
128
69
139
148
109
103
55
134
122
122
120
92
138
67
126
73
80
99
109
104
93
103
56
95
75
84
122
67
112
77
169
104
110
127
126
96
107
92
120
92
152
107
156
109
110
89
121
79
55
74
144
110
93
126
140
93
146
56
93
55
105
55
55
146
110
104
89
67
93
111
93
86
98
130
67
104
92
124
139
92
86
37
111
56
67
144
122
92
69
55
168
125
101
105
103
119
126
111
119
67
75
37
87
111
56
119
105
55
128
107
67
135
138
149
92
160
55
92
104
80
160
124
126
127
37
140
140
99
97
93
58
119
107
92
104
127
93
128
37
69
131
106
178
69
111
83
94
104
86
74
93
144
110
107
142
127
89
67
99
55
104
56
110
126
69
92
114
37
103
138
104
99
110
74
67
69
110
127
126
104
152
139
130
86
77
155
127
105
56
86
104
144
107
99
37
122
55
131
178
67
105
138
92
37
100
151
138
131
67
132
142
56
58
138
127
169
138
86
79
107
102
126
171
156
123
107
79
74
84
92
37
97
58
58
160
126
92
103
114
104
58
127
67
92
56
126
146
78
126
126
158
75
87
84
91
84
67
76
152
163
130
138
105
117
130
105
92
119
55
79
120
126
83
68
122
135
92
122
127
104
78
69
83
123
117
122
124
168
122
84
83
128
105
127
55
144
92
158
118
112
97
122
89
99
132
102
92
55
132
122
92
112
55
119
122
110
138
110
92
126
126
91
55
124
86
119
137
124
126
136
56
55
138
131
122
120
138
118
169
131
56
134
110
126
122
127
77
89
126
56
123
58
92
86
67
144
138
147
139
167
58
139
92
55
68
88
138
102
122
122
101
55
55
111
119
152
169
126
146
92
68
104
180
77
103
58
119
55
139
73
93
81
93
168
91
146
122
122
110
110
182
103
122
146
99
132
92
126
135
138
163
99
146
126
122
105
104
73
95
104
139
118
148
105
107
58
119
131
110
105
37
131
122
58
37
79
139
55
91
138
99
99
144
132
93
55
104
180
124
92
89
56
106
76
97
126
97
86
92
123
92
110
134
178
123
158
92
128
105
122
180
93
127
126
100
127
123
123
67
126
112
83
77
91
134
158
37
110
118
58
58
132
93
104
144
122
92
140
119
102
104
55
75
126
135
55
142
91
139
67
93
164
111
74
92
67
105
101
159
126
104
91
58
103
126
123
75
93
120
93
55
126
119
126
86
67
55
67
86
92
120
67
86
107
105
119
167
110
55
92
115
165
78
77
104
92
110
122
55
126
58
139
121
111
122
68
104
158
122
58
171
75
122
93
74
128
146
108
126
83
78
163
118
169
67
139
92
124
93
105
126
55
37
148
55
88
152
105
92
67
118
160
105
55
107
112
126
104
119
67
130
115
152
105
104
100
139
144
109
138
139
101
61
67
126
138
67
147
67
91
140
68
105
74
134
88
92
55
92
56
105
118
111
93
92
110
178
106
130
146
93
138
56
105
56
149
141
127
178
37
92
79
101
130
169
92
138
88
74
37
112
56
72
69
178
103
139
58
101
69
69
126
122
118
92
91
165
58
138
110
93
144
67
91
67
132
104
115
128
77
110
97
100
105
92
126
122
101
69
37
92
146
56
55
131
128
56
143
134
131
37
120
122
128
139
69
92
69
56
100
134
124
171
104
67
139
122
138
134
69
55
105
97
103
110
67
99
92
105
105
126
101
92
56
109
92
69
105
93
145
144
182
105
69
95
97
93
131
107
105
105
126
152
104
103
144
92
89
91
77
79
171
73
163
105
139
126
104
92
139
93
110
104
132
92
84
180
127
103
111
128
55
128
126
122
114
67
121
105
138
93
105
124
55
119
110
55
55
134
126
92
55
152
109
104
101
122
99
139
92
134
124
138
123
127
110
69
86
126
83
105
86
92
119
132
124
165
149
134
93
138
128
146
126
79
92
134
55
100
128
114
127
104
84
126
126
72
122
67
58
67
126
75
128
69
178
68
58
144
138
158
83
148
139
56
75
146
145
77
138
110
138
95
114
104
178
100
142
74
77
105
126
93
69
79
98
122
126
128
110
69
69
67
93
178
122
109
104
76
158
91
104
121
93
152
88
89
83
124
105
130
167
180
125
122
86
138
178
77
89
56
110
115
110
55
120
152
93
101
134
55
93
110
140
99
95
104
118
93
84
92
93
80
92
124
126
69
126
105
111
180
144
110
37
55
114
110
148
169
95
127
105
81
134
56
146
126
92
138
55
56
109
55
110
140
86
132
132
126
105
86
55
105
168
74
97
110
104
67
56
122
138
135
98
134
107
126
149
124
99
58
144
105
124
177
55
146
111
100
122
122
105
119
134
152
98
171
146
122
37
199
110
148
104
150
109
92
92
148
171
67
110
67
92
109
69
162
74
148
122
144
121
144
93
107
92
169
55
79
114
121
55
180
103
135
86
83
92
122
69
67
37
178
132
138
37
109
93
110
67
91
86
93
68
91
101
55
122
111
138
91
131
58
142
112
69
69
110
91
124
111
111
94
97
119
127
86
58
122
105
134
106
104
109
140
122
110
74
134
37
84
144
56
122
58
126
152
92
67
111
107
74
142
168
99
55
126
148
164
55
136
92
110
105
180
126
93
89
105
111
110
92
148
178
69
167
105
138
124
107
92
92
152
105
137
158
118
93
92
91
145
182
128
110
138
107
127
99
139
110
168
105
92
55
158
97
142
93
105
56
83
67
92
92
97
152
131
99
130
134
55
105
105
97
69
126
119
139
130
69
93
130
86
131
144
130
123
110
135
92
109
55
67
110
83
122
55
99
67
110
67
91
132
139
55
104
117
89
139
160
69
67
179
139
109
126
93
126
99
146
55
91
99
67
74
123
122
122
138
67
119
138
79
143
144
79
106
102
105
140
163
93
138
105
160
110
104
109
77
104
58
178
58
119
92
55
92
55
97
101
138
138
77
55
105
105
135
75
55
110
86
105
104
137
81
84
56
105
75
92
105
131
127
169
79
110
122
144
146
105
104
146
138
79
138
123
152
134
120
77
123
58
55
110
104
105
107
148
127
61
55
180
112
56
67
127
111
144
111
67
146
158
92
55
137
138
101
122
111
146
93
111
93
101
55
112
91
129
99
55
127
128
138
158
139
86
112
126
131
109
152
122
146
123
134
58
91
168
138
92
67
109
115
146
86
69
77
178
55
99
148
92
112
105
119
80
75
67
178
146
114
55
77
138
122
136
67
37
126
67
138
98
122
56
55
102
122
107
105
120
148
98
146
37
93
55
122
169
168
152
106
110
105
96
108
120
105
67
122
95
55
91
134
91
138
55
148
126
114
122
169
55
107
91
74
56
112
171
139
93
110
138
138
122
122
144
74
92
55
83
120
126
146
110
83
137
137
171
124
144
144
67
178
77
79
122
37
139
93
93
110
93
105
75
163
100
80
99
104
152
93
139
140
77
126
110
79
92
37
56
55
55
146
107
105
138
105
124
103
168
37
169
108
55
107
138
37
99
56
122
109
107
131
104
77
132
37
67
75
105
97
138
146
144
163
94
92
123
122
91
115
104
178
96
144
75
56
55
132
68
123
112
93
152
178
92
105
73
130
67
68
76
75
55
147
123
55
79
97
137
97
56
139
67
83
139
104
110
145
105
138
94
178
67
37
122
55
146
136
86
58
55
138
98
55
91
178
110
110
128
97
107
126
93
178
139
126
180
37
125
55
109
56
125
105
140
118
92
105
126
104
122
37
119
108
105
93
97
127
180
122
104
109
119
144
126
127
75
178
68
120
105
99
134
122
127
110
122
112
99
148
67
115
56
107
154
122
104
93
92
127
119
111
126
105
122
118
162
75
93
152
56
138
126
146
126
122
135
58
110
104
88
56
110
56
92
100
122
67
130
67
107
103
145
55
140
78
110
69
81
105
139
139
104
130
110
55
93
140
126
77
79
107
128
92
156
79
146
91
91
138
55
79
106
178
104
119
103
92
104
55
144
138
105
127
105
128
112
122
123
93
134
75
112
128
81
126
104
136
139
69
122
92
37
105
58
138
93
109
105
92
102
99
117
122
145
152
138
105
148
69
103
122
139
64
58
37
79
104
138
56
132
67
130
86
77
119
152
55
92
99
69
110
102
79
37
138
107
126
92
111
132
93
188
119
110
116
58
128
55
128
122
100
93
144
79
92
110
180
154
93
152
142
134
119
83
125
56
105
105
67
140
103
100
93
83
128
152
124
75
56
91
135
110
129
144
121
130
148
107
105
171
114
145
126
99
169
110
67
92
126
122
169
86
72
104
144
122
111
79
110
126
55
144
58
127
122
123
92
122
109
105
146
103
98
56
127
163
146
101
75
131
75
119
37
55
56
92
95
152
104
89
110
83
180
37
144
67
126
111
92
111
83
146
139
100
126
83
192
78
100
93
102
137
104
110
139
126
55
144
93
55
123
55
93
92
108
122
91
122
88
113
119
74
55
122
105
79
105
151
55
126
127
124
56
146
87
122
67
56
74
139
126
139
37
56
92
58
122
92
145
91
119
122
122
58
122
114
102
92
148
83
103
55
79
122
92
131
108
37
103
150
118
67
104
159
92
122
106
110
91
107
91
93
109
58
75
104
91
126
104
92
110
37
55
105
84
144
69
89
146
92
110
55
106
67
77
37
92
55
81
144
122
92
81
122
146
178
169
55
144
107
93
119
171
55
122
110
122
139
113
107
105
56
124
91
112
139
146
69
93
74
111
64
144
67
105
119
55
168
93
74
80
138
146
122
67
84
73
138
127
105
105
121
110
37
135
136
98
84
103
69
121
122
126
86
126
122
125
146
126
110
130
69
105
69
140
134
67
99
126
124
99
55
93
110
144
126
126
104
110
126
126
138
110
105
102
113
58
125
110
123
149
139
83
74
110
169
99
37
108
138
92
120
69
92
92
92
56
127
110
67
92
169
104
110
56
127
118
136
104
92
146
119
93
158
55
109
122
56
74
67
171
98
104
122
92
55
102
67
138
89
108
111
92
77
92
104
86
84
91
126
122
127
89
67
93
126
55
119
122
92
37
58
69
179
128
92
86
103
92
92
104
126
165
67
101
126
67
92
169
83
119
104
138
134
110
92
128
144
88
72
140
86
111
93
101
103
123
144
92
112
105
138
55
127
110
77
109
104
144
99
105
92
104
55
83
140
141
136
83
118
92
91
55
178
67
93
37
111
79
86
169
110
100
55
120
105
122
110
58
134
109
55
69
58
110
158
104
79
122
138
120
107
105
150
146
58
126
131
67
74
104
163
142
109
92
93
110
126
114
127
55
86
110
92
134
134
122
142
111
86
77
109
144
58
162
105
109
140
146
144
140
103
97
67
177
144
55
92
138
138
110
104
138
67
92
148
103
158
67
119
93
105
92
101
55
127
145
123
132
78
130
37
114
178
163
138
58
151
146
138
138
97
56
101
74
67
92
110
152
69
74
144
93
144
56
122
79
110
167
77
110
103
92
92
110
92
92
55
93
122
126
109
91
104
168
78
126
140
128
141
79
74
120
58
92
139
146
127
129
91
55
104
104
67
122
123
92
92
148
92
86
67
77
56
79
75
69
139
158
93
93
99
197
111
128
74
146
112
127
110
74
118
111
138
169
104
128
171
68
104
55
55
83
178
132
178
105
144
119
112
37
140
37
99
122
77
110
140
160
127
152
92
92
55
104
122
89
108
103
124
163
95
126
93
92
132
106
91
110
122
99
136
77
67
139
178
109
122
55
93
134
110
128
139
122
55
163
144
102
110
92
110
92
107
151
144
179
105
55
109
86
124
122
127
56
127
78
93
92
138
114
86
77
102
67
95
92
122
128
105
109
77
84
67
97
74
67
127
83
146
107
146
122
67
126
122
102
69
76
136
144
127
37
142
67
114
123
92
127
83
99
92
128
103
138
93
74
135
126
92
127
105
123
138
139
99
95
55
104
89
144
138
67
123
152
124
93
86
126
138
102
67
142
168
77
141
109
92
111
131
77
178
91
152
55
138
109
79
37
69
92
135
109
114
138
55
146
92
92
124
56
178
146
152
119
192
74
105
67
138
110
87
139
56
92
56
92
37
78
104
104
37
119
93
37
105
105
100
145
86
148
112
55
89
56
122
119
94
138
105
56
99
121
164
122
178
138
147
112
136
178
109
92
104
77
195
89
117
122
83
92
126
97
105
105
92
134
122
110
55
58
126
37
93
135
92
101
105
101
168
112
91
37
146
104
69
37
58
136
92
169
122
127
138
136
119
100
92
105
92
77
37
112
110
104
77
37
74
92
105
98
138
105
122
145
134
79
144
103
126
126
56
110
74
58
110
126
132
104
111
126
58
144
125
126
105
93
107
92
101
124
95
127
79
103
119
91
104
136
93
119
55
114
126
126
110
137
74
138
106
92
140
105
199
128
100
122
56
73
58
55
68
112
120
131
55
122
92
146
144
169
110
92
128
104
127
178
126
55
148
55
160
146
88
37
164
127
107
142
127
72
138
93
93
86
105
156
79
92
98
93
69
127
69
138
126
105
108
55
140
100
77
67
86
122
123
77
115
110
111
97
100
74
98
103
105
167
110
101
101
58
105
144
144
171
109
105
122
124
104
55
55
55
138
130
37
55
180
105
56
122
93
110
146
122
104
106
55
110
122
151
178
55
148
150
134
68
79
122
69
119
104
109
168
91
110
178
69
56
124
79
102
56
55
83
136
127
148
122
126
55
100
124
123
67
58
128
92
102
122
138
138
104
80
128
56
92
37
104
110
132
55
119
103
140
83
91
141
140
67
122
169
111
138
92
111
122
110
114
144
119
79
67
123
111
93
105
58
55
169
152
122
97
121
126
105
122
103
104
163
104
118
55
58
152
101
93
133
121
37
126
37
69
164
92
122
178
126
119
105
178
110
128
92
107
105
126
110
111
93
55
169
37
123
56
123
152
152
92
122
167
91
126
130
178
127
67
97
138
144
110
128
137
152
134
92
74
92
122
101
86
138
92
122
93
103
100
119
180
105
125
126
122
111
138
68
140
127
75
92
122
92
122
56
115
107
139
55
104
111
115
137
67
139
104
110
105
86
37
67
86
69
69
111
138
92
152
97
86
117
178
58
37
138
140
148
111
82
127
178
75
77
124
92
110
74
67
55
158
92
124
55
84
79
109
104
109
123
134
136
105
104
83
93
124
137
92
101
68
79
138
106
92
103
104
86
108
106
104
55
122
103
147
169
68
67
88
106
122
69
67
122
131
122
138
126
111
92
105
162
124
122
126
149
55
138
162
98
128
105
112
148
118
55
92
132
108
58
103
37
55
126
109
144
111
105
139
92
122
79
37
105
144
105
120
118
110
127
83
58
77
126
144
138
105
128
92
126
67
117
123
93
106
110
79
115
134
138
122
80
107
103
136
67
105
110
106
55
108
74
86
114
95
126
178
74
92
56
110
93
105
56
99
98
55
120
105
56
152
110
127
123
97
124
178
199
134
83
180
180
110
93
104
127
105
126
77
159
144
120
127
92
137
67
118
104
144
100
126
119
100
127
55
37
91
144
126
55
67
144
83
152
108
91
58
122
119
126
87
138
146
138
93
152
110
92
67
37
112
122
144
55
94
55
110
132
104
138
152
122
89
169
103
110
37
110
126
92
144
128
83
55
92
92
88
77
169
74
69
107
91
67
131
104
110
105
92
110
55
178
106
37
122
97
110
105
169
108
127
139
104
56
110
127
105
92
123
139
58
55
123
105
111
56
144
97
122
124
109
41
37
97
126
84
130
122
169
91
69
74
55
99
113
37
55
144
99
55
67
178
104
67
107
55
56
105
84
105
139
102
56
126
122
92
79
92
118
74
162
178
126
67
67
169
146
108
152
110
77
84
92
114
92
140
138
123
139
105
95
55
37
74
110
122
86
126
67
162
55
91
55
126
104
127
86
152
55
138
88
139
119
122
126
107
122
178
128
74
141
122
122
81
107
142
169
148
126
135
110
126
92
93
152
125
104
122
109
110
122
69
109
139
92
58
111
104
69
124
124
93
55
138
127
92
84
105
131
55
95
104
109
67
93
158
146
92
110
131
110
128
122
178
79
158
144
139
126
121
144
146
93
55
92
107
92
75
77
152
169
122
152
92
128
83
131
149
92
110
104
122
111
132
139
69
126
55
158
101
152
171
92
167
165
145
105
67
112
141
77
79
95
56
100
119
99
99
122
101
56
92
110
55
91
69
75
92
79
119
132
127
93
135
109
56
178
92
146
138
92
105
138
126
139
93
182
67
122
86
138
57
93
112
107
138
122
110
109
67
69
77
138
97
110
122
138
55
138
56
68
104
107
138
55
125
109
83
119
110
148
58
130
92
122
123
144
106
92
126
107
131
124
92
92
77
124
58
92
67
92
104
119
178
110
135
104
146
122
69
55
127
126
105
100
165
107
98
75
106
124
104
110
126
178
92
92
69
126
69
104
169
134
92
152
118
122
134
86
86
153
86
108
105
114
160
55
110
132
92
126
55
92
92
110
130
93
112
105
91
138
104
152
92
67
37
55
171
126
68
112
107
139
138
37
178
138
79
77
138
77
111
178
104
92
104
69
74
148
158
136
140
109
92
87
122
152
56
151
55
146
80
111
123
79
126
101
68
144
64
122
126
152
152
88
167
103
107
139
137
105
105
137
119
126
131
119
93
122
110
55
111
119
104
113
144
119
74
37
37
92
138
192
126
109
139
127
138
79
58
120
86
126
144
103
92
55
100
147
74
105
92
139
92
55
146
67
93
110
93
77
138
104
58
69
126
37
67
139
144
92
138
98
140
37
165
74
55
93
67
171
56
58
140
99
119
93
55
127
110
146
138
132
92
138
122
126
114
122
128
69
79
101
108
152
145
112
123
124
95
92
104
110
58
92
126
126
119
105
127
92
124
109
139
106
104
177
68
138
105
107
169
88
171
92
109
138
93
98
69
97
67
100
105
104
128
188
74
138
139
81
67
178
115
55
134
105
93
83
126
92
105
75
104
145
99
37
126
107
69
111
110
119
92
68
92
127
93
92
192
146
164
144
132
105
169
86
86
126
144
137
122
144
92
114
146
103
142
98
69
104
56
138
122
99
122
149
104
152
144
122
105
56
77
128
67
139
92
58
128
78
69
111
128
128
144
138
92
110
101
103
110
37
139
93
67
110
126
77
105
109
138
123
69
126
124
92
86
169
92
56
111
92
138
55
119
37
110
96
99
119
134
121
55
56
93
107
138
89
93
127
124
118
126
95
77
128
84
122
97
79
129
89
136
152
69
146
92
121
84
105
86
37
56
178
92
56
134
86
110
139
126
111
134
126
122
110
128
165
126
88
55
107
56
110
105
104
114
99
104
169
178
171
146
56
107
122
104
126
142
78
103
124
92
55
123
122
97
55
125
122
126
79
104
169
124
134
104
91
95
58
56
92
91
108
199
115
55
101
85
100
138
55
79
128
101
67
69
55
105
55
105
126
139
69
56
120
67
93
93
69
105
75
75
91
109
86
122
143
123
134
105
178
103
152
105
105
138
126
56
105
111
55
92
156
55
55
142
120
134
79
111
67
92
140
158
88
93
92
96
105
105
55
100
137
122
67
55
79
146
92
93
140
146
100
134
171
92
105
122
56
128
75
105
93
105
109
140
77
92
105
139
129
110
56
103
103
56
131
110
86
105
134
117
158
91
55
168
123
178
158
158
105
139
104
115
111
126
97
56
92
104
139
56
139
110
37
93
99
77
37
144
79
134
58
136
69
169
37
78
178
110
124
91
106
92
92
104
92
58
126
104
110
160
93
114
104
126
88
105
146
69
104
67
91
104
146
103
130
98
84
136
110
126
56
122
98
67
159
138
69
86
37
139
88
146
93
111
69
130
146
97
128
178
117
91
171
148
107
92
125
128
102
93
92
105
69
107
91
126
138
58
126
119
98
104
89
122
122
100
69
111
104
138
122
105
126
110
152
69
139
119
111
146
105
105
74
92
134
122
126
104
74
112
109
93
119
105
131
105
138
77
111
55
64
112
110
106
84
111
56
139
169
113
124
134
138
126
55
92
122
139
110
55
93
144
104
56
134
128
104
56
89
134
138
126
158
91
112
55
111
67
55
37
126
56
109
118
126
55
138
37
67
91
148
112
111
69
105
122
104
92
79
56
124
99
93
92
105
126
110
88
132
55
178
67
56
110
92
58
138
169
126
58
102
138
152
107
126
107
122
132
115
169
92
138
92
104
140
67
92
146
96
144
138
55
152
117
104
110
104
169
127
104
110
158
104
81
110
108
138
37
58
92
67
139
110
135
110
148
105
56
79
37
123
139
79
135
126
55
152
69
124
55
67
106
149
139
109
93
145
138
55
124
37
158
105
110
92
101
163
93
99
109
115
126
104
146
140
144
92
108
92
127
123
126
105
109
69
99
74
122
147
130
104
139
84
126
105
92
104
158
110
110
128
152
67
100
105
118
86
122
105
117
79
67
69
79
111
58
103
104
178
110
138
56
102
56
110
68
127
138
74
123
178
138
92
171
131
92
178
152
74
86
92
55
110
56
122
95
93
139
107
84
152
105
110
97
138
58
131
135
75
131
68
110
122
92
139
144
117
58
110
124
119
119
160
92
145
104
105
86
110
178
140
58
146
55
83
134
131
146
120
55
58
152
67
67
128
99
93
114
127
165
91
86
55
127
37
144
105
127
139
93
139
146
180
67
135
108
148
139
138
152
103
75
124
102
91
92
138
56
55
86
105
105
97
138
148
86
114
108
167
138
110
110
134
105
122
107
83
154
148
152
105
92
55
144
104
86
110
146
119
56
98
86
169
56
128
79
102
119
127
149
55
105
105
58
105
56
138
55
126
124
100
37
55
110
171
58
146
110
79
163
123
134
124
138
55
122
56
37
102
105
127
138
92
103
138
67
75
67
118
110
105
138
126
178
91
97
104
56
92
92
93
122
142
138
67
122
56
152
144
89
103
126
134
104
55
37
95
110
112
144
110
164
105
106
103
171
123
146
56
92
117
67
126
140
138
92
146
169
122
91
98
69
104
127
56
109
96
110
55
126
55
140
56
105
87
139
152
100
134
105
104
79
126
148
122
105
86
92
74
168
144
67
93
83
144
128
146
92
152
136
114
103
158
144
148
92
69
119
126
77
104
77
84
88
74
55
118
122
105
124
138
128
107
109
67
92
127
86
56
152
111
142
99
104
120
138
69
122
56
122
126
111
56
151
110
144
91
105
79
104
37
69
109
171
144
138
123
103
83
86
100
89
124
114
81
37
56
107
93
110
105
55
55
108
127
144
105
178
127
74
110
138
93
178
79
92
58
139
102
110
122
37
110
79
75
77
144
110
126
134
106
127
148
122
55
128
77
139
92
178
140
119
110
55
67
122
122
56
68
56
67
122
84
68
93
107
147
67
102
128
110
101
178
109
146
98
97
105
105
124
97
94
58
86
58
105
86
114
138
131
68
92
95
111
58
74
69
121
75
100
92
55
152
91
110
140
125
105
139
111
102
92
56
137
105
110
58
91
78
55
169
102
104
152
152
122
127
111
99
138
100
92
125
128
138
92
102
99
119
69
100
56
107
111
74
128
91
105
114
120
158
139
86
126
109
92
111
56
138
122
168
110
132
108
98
136
55
56
74
103
99
138
67
119
122
56
122
75
146
37
121
58
99
68
109
132
92
37
139
105
115
152
152
178
58
152
37
107
134
138
138
76
110
104
56
164
128
56
117
86
93
149
101
55
92
122
55
144
77
178
78
119
67
158
93
144
122
92
79
139
122
91
58
55
55
55
55
111
142
100
119
124
127
148
67
69
93
110
67
92
75
55
158
55
92
138
145
123
163
148
101
126
92
140
108
144
178
110
56
127
58
126
162
138
104
107
67
127
139
126
139
92
139
37
55
88
101
104
68
55
138
139
125
86
135
93
110
83
146
95
126
126
124
86
103
114
37
110
110
92
92
58
105
139
130
140
88
105
37
172
138
168
171
103
56
168
78
110
138
156
130
97
88
119
55
56
103
110
91
138
147
178
67
79
105
126
178
92
118
122
158
88
86
56
98
93
58
146
134
158
86
115
104
91
111
138
105
127
144
171
136
93
86
105
93
178
93
152
107
138
197
128
74
67
79
109
111
105
93
144
97
97
107
67
138
67
37
122
138
55
122
106
178
67
86
92
69
139
110
182
165
127
119
111
189
92
92
105
148
126
152
110
131
140
178
138
79
83
69
117
55
109
169
127
108
111
105
92
97
103
100
92
110
109
134
94
55
74
97
110
119
131
171
105
86
92
92
131
127
118
122
122
110
67
138
105
55
138
92
99
91
163
180
74
119
162
111
81
106
55
58
58
74
126
131
147
135
128
139
79
122
56
105
106
122
178
145
128
131
58
110
73
93
55
146
75
167
144
86
109
169
67
138
142
114
55
122
138
111
102
109
100
122
126
122
92
114
120
124
55
127
105
99
55
99
97
93
102
67
69
91
138
93
112
178
58
91
152
144
67
79
67
178
55
122
139
107
139
92
111
79
108
110
127
122
103
148
86
55
119
86
93
67
100
171
180
199
122
79
104
146
163
105
118
100
130
92
104
81
139
131
58
138
146
119
122
105
55
111
104
134
105
97
148
69
122
37
92
126
146
128
128
105
110
37
144
180
92
126
178
55
104
139
92
139
95
56
152
103
127
92
144
111
105
99
106
180
134
79
104
55
106
123
138
56
152
104
92
92
160
67
122
122
67
138
56
69
122
138
78
93
67
89
126
168
93
122
138
99
119
111
119
120
104
125
86
92
124
110
92
56
178
107
107
77
92
134
93
37
119
152
75
152
92
104
105
122
134
55
138
123
109
55
93
149
55
144
118
88
162
92
134
99
67
114
105
126
79
91
134
92
122
55
37
138
100
138
104
86
104
122
126
86
67
110
139
146
127
141
178
120
110
103
114
55
55
94
126
55
136
109
56
56
93
75
92
115
110
88
93
84
92
105
107
138
122
134
142
104
118
132
126
93
93
92
122
69
123
171
37
105
91
93
93
131
58
130
134
105
138
67
129
93
128
178
131
110
126
126
117
126
92
103
126
56
97
104
109
92
92
143
130
140
145
144
75
92
93
67
105
132
123
127
152
118
86
139
122
123
122
178
104
139
92
110
119
144
104
37
105
37
55
67
76
122
58
148
107
37
67
69
105
152
37
100
37
140
104
55
69
152
93
127
110
104
158
92
93
103
69
55
79
93
69
74
67
92
104
89
92
55
111
92
132
165
178
171
79
126
119
79
144
138
110
146
84
107
109
111
152
75
74
95
139
105
158
91
78
56
79
169
92
126
139
128
79
134
56
126
112
99
86
110
139
139
126
79
83
104
148
102
144
126
106
37
104
103
120
91
156
92
152
127
123
124
131
86
74
69
86
113
69
111
68
92
128
122
97
110
131
58
148
99
119
92
144
99
152
92
110
164
105
158
119
92
79
110
138
115
139
92
91
92
104
152
92
110
67
93
58
122
169
88
55
104
69
169
93
146
139
103
115
67
109
91
55
137
138
105
55
83
103
69
55
97
126
67
67
110
128
162
122
126
104
138
145
79
118
109
115
37
109
92
74
67
168
92
126
92
134
37
58
127
122
83
126
72
110
126
171
92
104
93
67
86
127
119
120
111
119
121
93
100
79
91
113
146
125
117
111
180
105
104
101
92
178
152
99
74
92
97
152
123
102
139
138
106
105
139
92
119
140
151
126
146
134
69
126
98
67
139
69
91
110
123
105
139
55
55
105
105
56
152
56
75
37
55
55
110
158
84
83
112
67
58
146
58
131
104
115
58
138
105
122
141
138
119
148
122
86
132
105
37
99
88
138
104
75
180
142
56
109
117
108
109
92
92
146
131
92
75
110
105
74
165
122
100
104
146
110
123
105
109
127
131
92
91
138
138
55
83
167
55
105
109
93
134
152
92
123
110
127
115
92
89
122
92
136
104
56
37
164
92
56
110
79
93
104
55
92
92
105
138
119
55
56
122
139
127
123
156
56
92
37
178
67
99
124
55
144
105
67
92
93
169
104
105
148
104
118
37
74
105
55
111
123
152
177
92
87
67
178
92
93
94
103
178
123
103
129
139
114
97
180
67
122
56
178
58
99
122
122
126
138
119
122
105
105
55
105
139
126
168
100
67
128
140
138
55
123
144
105
107
105
37
114
115
56
84
101
127
55
99
58
120
105
77
149
55
91
55
55
169
163
55
122
81
126
77
55
126
131
158
126
126
95
124
146
92
126
162
58
58
93
93
100
126
105
114
122
93
110
83
104
89
119
138
68
89
107
110
123
73
79
128
76
112
67
148
180
93
56
92
124
111
93
148
106
55
146
127
149
119
93
92
93
79
126
37
146
124
110
120
84
119
122
56
109
122
56
110
111
55
105
137
104
55
178
77
138
37
127
75
146
122
55
92
93
110
139
127
140
103
111
105
178
92
189
164
92
86
163
100
100
126
119
140
126
92
178
79
37
144
180
92
126
56
112
105
140
139
67
74
105
144
122
144
128
100
148
122
110
126
92
119
122
106
97
112
139
152
127
55
105
79
114
75
109
89
126
110
179
152
148
165
118
119
86
105
126
112
178
105
178
56
152
93
126
119
56
58
138
92
104
56
119
92
105
178
127
107
58
139
138
139
68
84
100
122
107
74
122
67
56
148
97
67
138
67
98
69
122
128
58
144
69
118
55
92
126
126
83
79
178
58
127
138
178
178
55
126
92
144
110
129
134
126
110
131
122
103
139
121
144
79
165
105
124
92
139
127
37
67
178
199
112
178
152
145
104
126
127
92
86
67
77
37
80
128
105
55
130
127
134
86
110
58
127
103
117
67
86
169
92
69
93
128
138
105
108
67
93
135
105
127
56
58
56
119
118
122
92
55
131
92
118
138
110
92
131
75
99
138
127
55
178
67
56
138
138
77
86
108
104
119
126
99
67
58
151
56
37
76
112
118
106
92
126
55
142
119
145
139
55
110
110
152
93
91
67
178
140
94
77
105
86
104
134
92
92
110
105
97
103
55
128
92
122
55
131
105
92
110
97
124
126
67
104
105
98
136
67
89
92
67
55
58
92
86
112
130
93
92
103
75
144
123
86
122
104
138
109
92
55
126
110
178
110
58
55
79
144
37
92
86
164
56
146
97
119
55
178
105
91
104
106
127
138
132
104
67
110
93
124
92
55
138
37
138
160
92
109
188
128
56
126
132
103
126
139
104
138
58
146
124
122
37
125
168
125
127
75
140
91
134
178
168
92
105
37
146
138
119
104
130
91
138
169
67
104
127
83
134
144
68
122
128
81
55
67
152
55
164
99
112
134
130
112
79
92
56
78
111
56
123
144
58
56
37
122
126
126
128
140
105
178
92
138
144
92
92
67
55
58
105
110
91
130
104
141
88
99
80
122
126
124
110
92
55
81
76
92
92
139
92
171
144
76
122
110
83
105
37
79
56
104
126
69
86
55
126
58
110
103
132
112
92
128
69
105
126
122
89
152
109
162
134
56
89
56
142
91
55
99
81
67
169
127
75
85
131
58
124
120
91
77
58
132
110
178
104
77
92
127
128
138
56
93
119
105
126
105
92
178
138
128
93
134
122
134
92
108
127
105
112
137
56
86
107
83
98
92
152
144
74
119
105
162
119
139
92
111
56
168
140
110
110
121
77
98
106
178
99
109
122
112
139
110
122
105
79
92
163
112
128
113
55
92
140
58
160
67
178
152
83
79
128
126
127
105
104
77
80
67
110
37
75
146
110
92
122
92
106
69
138
105
105
158
138
127
86
140
67
163
69
58
127
75
180
178
77
110
125
93
110
122
148
104
41
199
129
74
105
104
138
77
149
132
55
56
178
127
123
91
55
124
111
106
126
152
152
139
126
109
110
105
163
97
107
140
138
86
169
58
56
93
126
126
100
126
86
126
109
75
69
124
102
139
105
122
97
110
130
86
127
58
149
114
67
37
122
88
67
144
126
178
117
134
104
92
122
178
99
111
134
127
55
122
123
111
122
146
126
109
93
136
55
96
93
110
92
127
178
67
103
110
58
74
105
122
55
131
67
55
79
141
91
112
58
139
92
92
110
110
128
128
92
139
86
171
92
123
127
93
168
93
119
74
56
79
93
55
55
92
109
134
117
84
146
110
93
92
108
104
126
67
120
167
87
119
104
122
55
112
55
86
136
178
141
127
104
122
75
118
99
55
92
178
107
112
106
126
77
110
56
138
114
127
127
128
112
109
110
138
58
171
67
92
105
92
93
118
83
96
122
77
105
123
135
69
122
110
168
105
104
67
109
122
122
138
107
104
74
58
122
67
56
77
104
97
68
105
94
105
115
126
110
164
139
127
152
93
119
138
123
67
141
140
110
122
67
148
109
128
105
88
58
124
86
138
75
37
118
140
67
56
86
69
122
92
105
92
79
67
126
110
118
105
107
169
124
55
128
95
86
110
122
158
139
126
89
120
131
110
110
110
106
93
110
143
119
103
139
130
92
110
169
93
111
79
138
122
77
93
55
128
56
126
55
91
136
37
122
152
131
92
77
120
140
124
107
128
126
56
99
92
136
117
122
110
126
55
83
102
171
129
83
139
55
126
74
69
127
144
131
103
103
107
131
182
93
110
99
144
127
55
83
55
111
105
58
115
181
103
111
56
37
128
103
93
93
77
178
127
126
103
92
122
144
37
178
37
75
122
122
84
126
88
119
79
97
119
55
55
123
104
146
122
92
107
92
120
92
86
111
92
122
77
89
58
123
126
171
122
126
110
104
55
93
55
58
101
122
123
119
92
148
162
92
162
140
105
55
139
138
37
69
107
122
95
131
55
171
182
56
92
119
67
68
93
122
131
114
110
134
56
109
148
132
122
148
158
178
123
104
91
92
67
104
77
145
56
68
99
55
37
110
89
178
138
138
126
37
56
58
104
55
169
145
122
55
130
104
93
146
126
93
178
119
135
67
105
101
144
127
110
109
93
37
138
79
56
163
110
68
123
103
167
111
37
105
55
86
128
178
89
146
58
83
138
178
88
110
139
137
108
144
92
164
178
92
86
110
55
104
168
56
178
107
146
56
79
110
178
107
92
169
178
152
75
158
110
119
158
132
123
120
139
138
79
92
120
110
79
144
178
169
169
110
126
146
102
110
75
68
178
148
56
146
55
110
139
92
56
112
77
67
139
128
144
168
131
99
131
56
100
97
99
58
110
138
114
77
117
83
91
96
122
126
92
139
134
126
92
103
105
117
89
152
92
86
100
55
111
110
93
151
119
55
146
55
109
67
55
139
178
137
118
123
105
148
107
110
160
56
122
111
110
128
68
134
110
92
77
152
105
122
100
55
138
138
104
105
97
79
178
69
117
122
103
146
107
126
94
120
78
56
78
138
119
102
178
91
74
55
110
126
148
56
138
104
105
111
99
140
68
123
56
127
122
139
91
177
158
132
124
152
111
55
165
110
126
37
126
138
129
105
144
122
105
165
119
138
108
69
110
105
108
122
117
67
138
86
88
93
104
68
178
109
87
171
69
92
128
55
92
110
145
130
146
139
79
130
126
131
178
76
100
119
105
55
114
55
126
114
109
152
151
103
118
105
138
104
134
105
136
67
84
91
56
126
69
92
97
67
98
92
180
169
91
92
55
55
119
178
130
79
140
110
134
93
79
139
55
89
99
111
139
55
110
68
92
156
122
67
86
146
93
91
138
138
111
138
103
126
144
122
119
104
67
93
92
55
160
80
110
87
55
37
126
56
79
139
67
138
152
100
136
68
76
138
138
98
92
107
92
134
138
119
118
178
55
126
138
138
92
135
111
76
138
109
139
83
41
92
178
122
105
58
67
152
55
178
122
110
138
130
92
105
67
55
104
139
127
69
145
118
106
118
169
56
149
138
123
139
103
56
86
131
124
92
125
124
119
86
163
93
130
67
134
67
81
122
97
134
56
91
124
139
152
67
122
131
127
101
130
122
106
110
146
79
139
72
92
113
140
180
93
92
93
104
92
146
99
104
86
103
130
110
171
126
122
101
138
80
99
104
37
144
58
104
127
144
117
146
110
105
152
37
103
144
110
109
56
92
128
84
83
144
67
152
103
58
105
109
73
131
119
138
77
104
37
138
146
112
83
55
104
87
145
122
102
126
138
124
101
55
93
109
99
126
134
55
99
178
89
67
119
152
92
138
67
105
68
92
119
93
119
58
87
158
122
104
105
69
77
104
79
68
123
37
114
110
55
140
140
58
105
80
75
122
92
91
101
56
92
92
167
108
122
123
55
107
104
115
86
75
104
74
105
77
163
112
128
37
138
138
84
138
86
92
113
99
118
92
139
79
144
58
69
92
104
86
58
114
134
37
150
83
127
55
103
102
92
140
67
178
152
111
93
105
144
99
105
128
178
110
130
56
124
148
152
110
109
138
105
122
107
98
93
92
93
105
125
55
67
92
111
88
86
178
140
169
180
124
92
106
126
178
67
105
137
37
162
55
158
126
69
111
89
171
122
112
83
99
138
83
119
105
92
77
92
125
178
101
68
58
122
122
108
117
109
110
104
138
107
123
67
83
128
111
111
126
140
68
104
92
97
128
92
99
67
122
58
134
68
55
152
122
139
74
37
122
139
104
146
105
101
105
92
56
105
124
138
86
75
117
138
109
116
163
105
110
111
108
117
89
144
178
55
107
188
192
55
104
92
144
55
126
146
144
92
110
93
55
114
124
58
55
126
55
141
56
104
110
55
169
178
122
74
55
134
178
144
138
138
122
126
144
178
77
127
79
123
141
56
104
128
75
86
140
77
138
56
92
37
123
111
128
55
119
104
112
92
93
110
61
146
55
167
104
69
178
101
118
37
104
158
56
110
69
86
126
55
110
117
92
92
81
127
105
130
86
105
79
139
108
180
102
178
77
81
105
97
86
134
37
78
135
37
132
127
144
123
131
93
164
37
104
55
111
92
169
55
114
136
126
37
110
121
152
91
156
110
92
92
107
67
37
67
37
138
77
103
110
79
41
55
138
110
92
110
92
99
128
101
126
122
139
124
58
93
126
134
178
138
115
126
105
67
126
75
138
130
56
96
164
122
111
93
152
130
142
67
69
163
109
74
131
128
69
128
93
55
105
126
144
86
88
144
140
69
92
83
95
126
93
168
103
83
171
86
134
110
178
105
105
104
107
114
104
92
75
139
126
114
123
111
119
126
160
130
144
55
74
148
74
89
106
123
105
104
104
56
55
127
119
146
76
83
58
103
110
69
148
67
114
137
126
130
110
178
138
91
86
55
55
144
103
68
55
93
127
122
134
163
120
178
112
138
74
139
120
140
55
146
69
140
126
79
122
37
126
58
138
119
84
128
139
139
123
74
68
122
109
104
57
180
93
77
126
110
37
103
79
126
99
178
110
124
127
74
77
68
140
146
110
104
93
107
92
178
77
105
146
188
105
111
104
105
138
103
99
69
124
74
93
88
178
110
69
146
67
92
120
126
112
160
55
139
132
140
56
92
104
95
126
127
128
122
91
92
55
84
122
110
107
37
152
120
92
55
92
146
92
122
178
67
92
103
162
99
58
130
105
104
92
180
138
99
67
110
92
126
88
77
158
105
91
69
144
111
69
140
105
123
92
138
113
92
135
123
67
146
115
58
117
122
117
84
137
81
107
126
124
67
37
119
99
163
105
153
128
37
92
79
109
111
55
104
92
67
138
120
104
138
75
119
77
122
127
106
178
127
124
105
119
93
128
67
127
148
119
104
93
110
178
124
77
37
92
152
55
139
91
132
138
119
131
55
92
122
152
93
146
144
139
110
91
128
101
56
123
107
106
55
171
88
120
99
178
164
109
163
103
83
135
98
105
126
67
146
55
109
79
145
92
107
86
74
127
152
118
92
92
55
123
72
102
97
91
93
124
146
87
138
122
56
92
58
109
74
138
136
178
127
83
100
139
79
56
103
122
37
91
122
123
107
67
104
55
132
67
91
126
156
86
110
110
138
93
114
74
138
126
92
110
138
100
119
67
110
139
139
104
152
122
99
138
122
67
92
122
87
92
110
94
178
136
140
79
132
163
55
118
132
92
105
110
106
126
105
92
75
109
83
56
99
86
142
80
55
122
130
55
83
96
77
104
93
58
168
117
131
152
122
126
112
122
119
110
119
37
55
91
105
126
128
119
69
109
126
110
56
37
110
107
126
127
144
105
99
99
146
134
99
104
56
122
122
178
95
58
83
152
124
121
107
110
138
92
93
93
131
114
122
67
99
86
75
91
122
148
144
74
109
139
55
139
169
67
92
126
126
180
138
83
99
110
159
110
74
55
126
105
138
126
122
93
126
104
56
97
140
144
92
110
138
110
99
144
124
97
56
114
99
89
99
67
122
37
89
123
92
146
123
122
67
92
131
75
178
122
55
105
139
160
92
67
122
139
88
94
86
55
91
56
55
108
169
84
110
92
114
105
55
69
178
93
99
130
83
139
67
104
75
99
119
56
104
97
138
138
104
122
122
56
93
97
123
122
92
105
104
107
79
92
55
110
126
126
122
94
92
119
102
105
91
67
109
164
144
104
180
67
158
152
103
109
105
145
100
182
119
138
105
69
138
128
110
129
138
122
163
119
109
132
122
144
55
92
179
56
107
119
126
126
56
108
122
168
55
122
79
122
55
168
55
103
93
131
97
93
128
55
122
75
67
109
138
122
92
169
92
152
171
132
110
105
178
105
138
107
178
152
151
67
138
55
122
117
97
104
67
79
122
112
83
110
123
138
103
104
148
71
126
74
105
145
104
55
86
105
116
67
182
126
105
111
79
111
102
56
130
91
139
152
178
145
165
111
111
123
128
92
139
105
109
161
117
37
75
67
56
119
127
77
98
122
110
92
55
97
119
37
67
139
109
110
91
164
110
104
126
67
56
126
144
96
98
139
55
93
84
105
92
112
109
171
56
67
178
91
130
136
106
78
111
98
144
105
104
122
160
104
56
126
135
105
111
132
92
126
124
122
144
122
110
105
169
126
93
164
110
55
141
122
136
188
55
104
129
126
111
139
126
103
139
93
163
37
134
182
126
139
37
88
156
178
92
138
91
58
55
139
108
92
152
69
126
110
91
93
91
151
86
178
58
67
126
100
165
132
67
138
84
103
88
58
75
91
83
169
55
93
84
92
107
96
55
120
99
110
93
110
111
110
178
109
67
126
37
127
122
110
142
67
104
134
92
139
118
139
67
93
93
81
144
119
56
178
93
91
132
37
106
144
106
180
110
139
92
67
138
92
126
37
130
178
110
99
148
67
79
86
93
104
93
152
122
136
58
86
124
124
177
81
109
112
92
126
148
126
132
86
120
127
138
108
122
128
122
139
110
100
37
108
67
152
142
69
148
104
86
126
111
123
105
99
109
110
100
126
144
93
126
130
122
56
94
105
115
126
115
168
123
119
100
55
149
55
135
127
112
169
67
136
164
55
124
77
92
109
55
124
112
92
128
114
127
79
146
110
119
146
98
110
136
122
103
55
138
92
129
103
88
146
146
126
131
55
107
111
55
122
37
69
117
69
106
124
132
105
127
99
146
171
92
122
149
92
109
122
126
103
139
178
104
58
88
74
77
123
55
55
138
126
104
74
81
138
138
126
81
111
152
109
130
74
74
67
93
100
105
113
127
37
152
104
105
99
64
140
93
74
102
109
37
79
100
105
143
89
109
142
144
92
86
92
126
105
103
67
67
91
74
136
119
93
55
138
152
86
139
148
99
92
91
111
178
141
122
110
67
55
111
171
106
92
152
124
109
127
128
127
115
75
119
136
165
119
55
122
135
139
86
75
92
138
110
86
74
75
146
127
146
199
136
105
138
126
110
67
164
92
88
178
55
92
56
118
139
105
139
111
58
152
55
92
113
164
127
55
100
102
126
127
69
126
55
119
93
127
106
178
114
128
137
123
74
92
37
92
79
69
122
67
74
192
55
99
110
56
138
168
92
136
91
127
162
56
110
110
58
138
110
79
91
137
37
105
107
126
109
127
67
92
92
127
146
128
132
122
102
126
92
55
126
84
68
67
110
56
114
58
92
138
140
86
152
56
100
130
83
55
182
75
74
117
105
102
169
93
92
132
145
138
69
171
79
120
108
132
104
92
128
92
55
92
110
93
93
152
37
134
128
138
95
92
80
75
69
139
178
168
109
132
169
56
105
105
163
109
145
69
75
58
37
109
92
144
138
74
55
156
89
84
58
105
169
105
58
169
178
74
111
126
127
78
136
144
77
84
178
105
108
89
146
111
118
119
126
105
119
138
165
58
99
162
144
84
92
128
102
58
163
111
102
86
120
92
158
134
92
169
56
106
127
115
58
92
135
120
37
92
91
122
37
74
97
93
134
122
58
105
75
120
130
127
178
86
104
55
165
168
122
110
160
117
92
56
148
112
109
89
160
119
68
138
55
139
126
102
110
123
103
178
117
142
58
178
68
139
136
124
164
92
105
83
114
86
119
105
122
87
134
146
92
105
79
102
37
104
101
77
92
92
92
163
55
122
105
109
69
124
169
114
102
95
148
86
110
126
131
93
126
122
138
104
110
104
109
171
67
126
105
107
92
75
123
168
124
119
67
139
169
119
67
131
136
140
103
128
92
95
138
92
124
79
105
88
58
162
92
101
92
139
126
105
98
69
127
78
37
37
144
110
126
89
55
67
168
58
92
138
178
146
75
141
112
110
69
110
110
104
122
122
127
127
158
89
110
144
109
138
86
98
92
95
134
79
127
124
69
165
138
138
67
67
180
93
92
123
91
84
94
79
86
130
178
55
105
138
130
117
100
104
127
37
139
105
137
101
37
134
92
37
138
93
56
37
105
56
148
104
105
77
180
102
110
123
142
75
162
171
103
67
163
117
83
162
146
119
123
99
74
86
146
37
111
162
67
67
95
119
145
140
169
110
162
56
85
77
139
91
80
105
69
110
180
138
126
110
126
109
110
105
119
92
169
55
93
126
93
110
158
55
126
105
92
91
120
37
93
98
77
122
86
79
111
126
127
96
37
114
55
110
99
128
55
92
93
123
110
92
55
107
92
102
96
126
169
138
122
128
93
126
124
146
91
104
67
139
68
130
199
126
168
130
137
107
104
142
104
112
146
118
55
139
104
152
152
139
117
128
98
91
69
115
120
101
111
92
74
138
55
126
123
128
69
67
141
122
67
94
171
122
58
122
93
56
58
122
144
110
92
67
138
55
123
110
119
105
86
122
110
126
102
137
144
122
122
119
91
37
58
103
100
89
92
93
131
55
107
122
162
95
55
87
67
105
69
58
132
138
58
126
55
124
132
149
99
114
69
120
123
58
178
93
126
105
79
138
91
127
124
138
119
91
123
192
126
122
92
122
126
93
92
165
97
122
101
144
56
92
68
104
122
109
115
86
92
67
104
91
152
112
107
139
100
104
68
92
149
110
139
55
122
91
98
152
58
89
111
122
93
105
109
160
178
168
56
111
75
152
138
92
86
126
93
99
55
92
55
110
135
55
87
92
169
137
122
122
110
122
122
110
123
92
128
56
79
178
131
104
122
102
152
139
146
92
146
141
144
128
87
55
92
55
94
105
144
139
146
138
55
122
138
126
103
178
122
144
81
55
86
127
110
55
138
84
67
105
122
130
109
105
83
110
137
56
109
105
92
112
119
105
140
67
110
123
95
105
37
92
123
107
168
128
91
165
112
132
55
74
188
126
110
99
119
152
37
105
111
101
92
93
92
91
58
101
58
67
92
84
105
112
126
131
120
80
92
140
55
110
178
100
138
105
105
75
92
122
92
126
97
91
138
139
104
56
139
55
126
87
127
119
55
86
146
139
69
89
68
93
123
92
91
97
67
122
84
93
126
128
58
104
103
37
74
67
122
58
135
110
167
110
77
110
92
98
123
131
178
127
139
91
105
107
105
92
86
103
92
92
152
67
144
122
74
111
123
127
67
122
58
124
84
105
75
128
122
93
107
86
55
92
146
146
93
137
152
130
138
107
114
139
109
110
105
128
56
110
109
55
86
126
158
96
145
91
67
56
88
105
127
69
58
56
88
92
139
75
122
55
127
144
138
109
144
86
55
119
114
96
146
55
111
139
93
139
55
83
92
75
140
139
111
95
146
83
55
126
105
105
103
180
114
138
92
169
74
92
56
69
56
89
107
109
37
92
122
199
122
146
139
93
69
126
128
75
135
103
92
92
91
93
100
67
144
102
86
110
138
104
56
110
141
129
99
140
71
97
122
104
122
115
127
67
100
134
126
111
77
89
92
69
139
58
148
81
123
139
116
126
86
105
37
99
139
129
114
89
106
140
93
89
92
114
152
75
86
146
122
171
136
139
156
138
132
111
97
89
69
107
77
101
140
139
139
111
105
37
178
67
159
134
93
122
124
122
118
58
93
75
104
98
131
128
55
163
110
93
105
163
135
139
117
75
131
55
86
92
105
142
138
74
56
178
55
126
91
169
55
126
127
120
56
146
92
105
104
67
97
128
93
104
122
55
99
92
92
56
92
128
67
100
77
97
146
121
127
126
37
130
110
91
115
68
124
94
94
106
97
106
112
102
127
58
134
139
168
135
101
126
56
56
68
56
93
92
69
105
37
83
67
92
111
69
79
55
92
92
91
92
136
37
92
127
91
128
37
93
56
102
114
55
122
58
93
138
91
104
132
126
55
92
56
111
37
111
105
81
56
127
106
169
129
110
139
139
55
108
58
108
163
138
134
69
127
130
55
93
55
124
93
126
99
152
68
169
104
109
77
110
138
75
98
110
56
178
37
122
126
37
152
103
109
132
117
121
139
55
122
118
67
68
124
144
55
55
69
126
93
104
110
122
126
110
110
88
138
148
92
178
132
55
92
171
92
142
146
91
69
92
67
122
92
77
122
114
86
67
127
67
105
139
55
78
119
119
144
146
110
107
113
58
178
122
126
179
123
92
55
158
92
146
109
152
144
117
37
85
126
56
127
92
104
104
74
110
138
93
79
69
113
67
104
103
158
69
67
138
67
162
92
37
69
56
152
55
92
56
111
131
146
37
55
110
104
58
110
74
58
67
123
82
109
119
127
93
55
67
92
162
37
122
138
126
110
104
69
105
68
123
79
104
55
136
119
118
69
84
120
77
75
122
139
122
105
134
118
139
122
103
104
55
55
55
91
92
161
178
92
138
140
79
105
79
55
110
139
93
160
77
105
105
67
134
55
123
168
152
128
138
105
146
74
86
91
134
178
128
55
105
141
110
152
126
107
68
111
110
152
92
56
139
103
104
58
136
109
168
127
55
69
68
138
98
37
104
123
169
115
122
130
93
99
102
91
120
56
80
75
139
169
105
126
89
118
111
131
58
104
130
123
94
102
92
110
110
126
92
89
102
92
105
138
93
115
144
91
123
84
86
119
56
110
122
106
56
102
67
138
98
103
110
67
122
58
188
56
92
110
104
88
122
139
149
144
152
55
56
105
107
139
106
104
92
132
67
126
120
113
169
149
122
119
158
58
126
104
126
92
93
92
107
126
105
105
158
79
72
74
148
129
78
89
124
105
105
58
136
92
91
92
92
97
105
37
153
171
126
92
56
127
93
144
139
92
104
146
67
55
152
128
102
119
69
180
92
86
148
110
146
67
126
152
164
139
152
104
111
110
138
105
171
148
104
122
80
58
107
131
144
169
144
122
138
105
75
91
86
122
55
92
56
91
92
92
122
104
178
124
124
80
105
130
69
139
112
126
162
138
114
141
93
138
92
139
55
139
110
92
145
112
56
88
77
92
106
92
109
119
100
55
146
92
128
68
86
123
152
119
148
144
37
132
144
178
92
139
124
110
55
106
130
118
109
58
136
77
103
138
58
105
75
98
73
127
56
92
146
55
140
110
111
102
92
110
92
56
105
110
110
58
93
171
124
69
158
67
92
67
114
55
110
140
107
110
69
144
144
122
119
95
56
141
92
99
55
105
126
101
126
110
86
105
37
139
111
129
67
122
109
127
88
146
138
104
111
83
92
112
130
55
126
91
67
139
61
104
178
199
92
152
77
37
152
119
58
110
100
169
103
138
105
178
75
127
122
37
104
105
127
101
101
122
169
92
67
114
107
110
110
105
75
122
110
79
110
69
58
97
101
110
67
165
105
68
139
92
91
86
132
144
107
86
109
140
86
131
93
110
92
103
138
156
108
165
56
126
168
169
55
117
122
56
55
138
118
146
56
81
118
144
55
79
178
68
118
111
163
130
72
55
37
92
110
92
178
121
138
58
110
74
111
105
126
86
127
67
119
120
104
111
119
138
165
112
79
104
89
110
119
92
89
56
93
131
79
105
152
104
105
121
106
83
110
122
122
103
58
138
110
158
105
167
146
88
74
107
122
148
169
131
104
55
122
67
134
118
99
99
122
146
110
122
122
58
144
93
122
93
58
119
111
77
77
86
127
110
140
119
110
56
99
107
67
152
126
77
93
93
106
104
56
91
100
104
83
92
69
93
93
144
67
163
180
126
128
169
128
128
105
178
144
84
109
56
105
138
103
92
148
126
134
132
105
92
139
122
105
56
122
107
104
114
86
67
178
126
127
129
56
126
74
55
100
55
138
95
131
93
89
107
97
163
103
132
126
123
92
55
67
107
69
111
126
126
104
105
105
152
167
112
112
103
171
109
122
138
118
37
134
126
100
131
126
103
79
79
118
77
56
67
97
56
58
91
111
111
119
56
128
132
92
58
127
67
110
178
69
69
138
107
77
138
138
146
111
144
127
105
160
144
37
182
128
69
55
126
100
122
162
131
96
93
103
134
75
138
104
79
92
93
110
92
97
123
140
132
93
127
81
56
123
122
77
148
189
104
93
105
158
122
67
100
122
93
99
146
99
111
80
105
120
114
55
130
115
111
102
84
132
74
101
86
88
107
119
110
144
58
109
79
123
144
138
118
77
127
139
119
58
92
93
92
55
105
105
112
109
122
55
67
75
91
67
146
92
94
138
107
37
109
128
84
106
117
69
95
83
127
126
111
56
55
144
146
55
92
109
122
138
110
97
105
74
114
74
89
93
119
138
153
37
93
117
104
104
127
37
86
123
136
115
104
138
127
139
86
55
104
55
148
92
127
79
133
58
92
139
67
137
119
117
123
111
92
67
118
146
93
146
111
124
104
88
145
75
109
104
92
138
120
92
178
152
109
127
122
101
138
79
88
67
111
92
97
103
131
93
77
99
103
109
118
77
121
74
58
171
128
37
138
68
55
127
180
58
107
79
104
104
125
79
67
81
138
122
138
106
178
105
107
67
146
139
110
56
55
139
110
152
69
104
79
67
109
105
79
93
138
110
158
67
55
171
122
131
126
110
126
127
192
160
126
89
84
89
114
127
122
105
123
80
134
55
140
122
126
55
55
104
136
126
93
67
105
37
144
127
102
131
110
97
105
105
107
67
37
92
132
84
77
178
152
104
122
55
139
55
140
92
103
138
152
89
138
100
126
169
55
56
130
55
55
148
74
105
91
167
132
126
144
103
100
131
110
124
144
132
117
97
110
122
69
104
127
148
74
145
144
58
126
110
132
111
92
171
93
163
95
152
104
99
92
127
110
162
130
92
83
105
58
105
58
138
55
146
122
139
56
111
126
127
126
117
125
94
146
146
97
92
109
104
98
86
144
109
144
160
75
92
67
139
124
56
169
126
67
69
138
118
105
126
144
140
119
117
148
92
130
178
55
169
138
110
132
76
75
37
92
55
144
122
122
110
101
121
179
103
92
104
146
136
138
56
86
137
88
152
110
136
104
111
110
56
68
92
86
58
92
132
163
178
92
97
130
122
113
110
123
119
104
67
138
104
148
92
91
69
74
37
104
93
128
65
119
37
178
180
92
118
123
112
126
58
91
139
146
163
105
105
136
138
146
122
144
109
152
140
93
58
134
86
92
130
139
119
109
169
122
178
104
122
110
104
141
67
128
55
110
127
91
151
93
69
126
144
105
56
55
96
148
139
127
158
107
138
56
139
104
112
92
55
83
107
98
122
77
58
146
111
138
55
86
67
111
93
126
135
149
111
138
105
103
69
126
110
119
111
110
92
145
122
58
74
93
106
118
109
122
115
138
126
58
105
88
99
138
126
68
102
110
114
138
109
105
122
105
112
37
56
123
130
97
144
37
138
93
163
132
121
97
119
67
93
136
112
122
144
64
178
104
126
122
109
122
144
67
169
107
67
93
139
128
138
151
138
163
105
123
111
146
117
111
126
122
97
83
128
158
104
122
120
146
87
140
107
86
110
146
169
93
37
92
91
178
139
92
132
105
92
69
74
92
104
152
92
162
89
67
126
122
152
129
122
178
55
93
67
104
180
105
128
94
83
119
113
139
121
139
110
97
110
152
109
79
55
122
127
103
152
111
123
110
74
127
75
134
101
144
74
92
128
128
169
138
100
146
126
152
93
81
138
107
119
86
110
56
92
139
138
126
92
111
178
77
55
79
163
110
138
92
75
115
67
77
110
58
126
124
68
127
140
55
146
75
103
144
93
122
83
124
92
56
162
93
120
132
148
105
56
102
74
56
120
144
92
92
91
104
126
69
135
145
92
81
118
86
137
107
105
77
93
118
126
109
56
105
146
93
178
178
93
126
55
56
111
93
69
58
86
92
107
144
122
144
126
55
138
67
92
93
140
126
126
93
120
61
83
111
55
105
105
136
108
105
55
123
56
56
67
128
119
110
144
92
146
105
152
91
160
56
55
144
140
110
55
92
104
93
105
119
105
122
134
114
122
146
118
123
56
169
37
178
92
55
92
68
117
98
76
117
67
105
91
104
56
122
152
152
93
92
140
86
119
119
128
148
92
126
171
178
104
56
103
163
104
142
92
67
137
164
79
128
112
67
93
144
127
58
93
165
126
67
144
110
158
134
103
99
55
110
92
102
113
104
55
162
134
130
105
138
139
89
126
118
138
98
55
111
112
91
107
104
111
103
55
126
95
131
123
119
92
55
56
86
92
74
139
158
163
114
74
86
108
55
130
80
76
152
158
105
126
134
55
111
97
55
103
126
124
93
142
139
119
105
109
67
75
86
104
106
110
111
131
149
122
126
127
139
110
124
120
126
77
111
132
119
55
110
178
128
77
56
126
139
113
105
168
93
95
110
83
119
126
126
78
67
120
139
135
104
138
122
127
126
118
142
86
67
121
107
105
55
79
89
110
93
120
110
102
110
138
86
138
129
110
122
88
148
97
92
56
107
178
105
120
67
168
128
156
105
127
134
167
89
105
105
58
104
80
122
37
58
126
123
92
67
110
87
128
138
74
110
180
75
158
144
110
67
102
144
178
138
37
91
126
75
67
81
93
55
77
110
102
93
146
127
126
92
105
110
122
122
97
114
119
109
104
169
146
79
104
144
127
93
92
93
55
119
122
79
124
74
86
77
112
69
139
144
77
140
93
130
37
106
93
79
122
105
92
106
93
110
169
118
105
158
103
148
83
126
128
111
56
89
55
107
56
140
178
37
79
115
37
56
77
130
37
127
105
122
92
120
106
169
55
119
92
86
75
56
169
111
55
67
118
79
105
58
144
93
144
109
81
79
56
91
74
69
92
37
67
58
91
110
56
86
119
130
37
132
178
138
97
79
146
77
92
91
55
110
123
88
128
56
92
55
122
126
152
122
55
114
127
69
119
152
124
140
141
99
83
139
37
98
120
67
92
152
126
93
56
92
58
136
56
114
164
56
91
137
86
146
107
126
74
132
148
147
109
132
95
110
178
100
137
105
105
105
141
115
110
146
144
77
104
92
164
126
67
122
68
119
117
126
105
110
91
178
140
119
67
55
107
162
145
109
120
104
92
86
103
69
110
132
107
118
152
148
122
124
55
125
136
122
86
77
110
37
169
144
58
119
136
92
124
92
144
69
112
123
118
55
126
122
122
126
92
77
110
139
114
97
122
92
139
139
103
119
126
138
100
108
122
111
55
146
124
139
79
68
132
56
58
122
134
93
92
152
91
81
56
122
144
126
37
104
109
122
110
37
55
156
55
147
83
111
101
138
178
127
146
120
122
93
180
96
126
110
110
180
88
89
92
93
111
169
67
93
69
104
105
148
56
92
122
162
92
92
130
134
148
171
127
98
111
169
163
77
169
110
124
128
140
138
105
92
152
55
122
84
67
119
105
37
107
146
75
92
110
127
142
86
112
92
120
122
93
75
67
118
178
126
127
199
67
93
93
138
92
55
119
83
86
119
163
74
180
104
123
55
103
93
105
178
92
126
37
127
105
92
122
146
79
139
56
127
122
92
99
122
97
92
109
93
77
93
56
105
37
124
119
138
93
169
56
58
105
98
75
134
152
92
122
101
92
99
122
114
79
110
67
110
144
160
149
138
37
92
114
92
199
138
103
178
169
37
105
92
92
138
55
68
75
144
102
103
58
87
122
104
93
138
56
93
92
37
98
105
105
92
126
148
146
74
144
37
100
107
123
110
138
148
110
92
77
69
91
55
93
158
55
100
145
105
92
56
67
37
92
110
139
83
138
122
104
138
134
110
105
110
55
119
138
117
92
137
126
124
168
37
126
56
79
84
152
37
102
91
110
103
56
110
134
134
93
67
109
97
92
77
58
90
165
83
122
69
79
152
109
86
69
92
126
127
55
92
138
138
178
107
55
107
110
126
122
69
56
106
104
139
122
105
75
169
132
138
92
105
91
55
156
92
79
79
58
146
138
92
69
56
169
142
107
109
93
92
74
178
134
92
67
68
120
103
121
105
92
130
69
124
55
92
138
110
56
178
55
138
105
55
107
130
81
124
126
152
69
37
74
67
124
74
126
127
146
107
81
144
69
178
131
126
122
169
99
149
77
75
122
127
114
138
88
68
101
93
105
104
104
139
128
135
58
56
91
127
69
107
126
105
75
105
97
119
148
92
109
92
126
128
37
69
110
79
111
178
126
67
144
110
110
56
138
152
69
104
126
162
56
56
124
93
55
158
169
79
110
58
103
74
92
98
92
148
100
105
92
56
95
92
79
114
37
69
55
92
126
75
92
119
126
75
100
91
144
158
114
112
37
74
138
92
144
126
105
135
199
67
139
129
120
178
72
93
84
67
117
56
104
74
86
92
105
56
144
144
95
55
110
92
126
126
180
56
138
67
97
111
56
93
102
138
86
146
124
110
77
89
79
123
92
106
105
122
110
55
56
98
110
134
55
128
138
110
126
126
101
148
81
122
107
138
86
92
37
152
74
58
97
122
92
152
139
55
92
55
110
127
127
123
126
165
104
110
55
107
128
56
99
101
111
107
120
111
93
116
111
122
55
119
55
144
122
148
110
110
92
92
110
139
105
134
103
79
114
126
146
67
178
144
122
146
138
138
55
92
72
105
123
74
152
126
37
120
37
101
130
111
99
91
83
55
139
74
83
105
78
84
75
92
148
92
110
127
160
87
99
105
114
130
136
92
37
126
119
128
131
104
75
77
100
119
95
92
122
138
100
112
67
58
136
99
55
92
108
123
92
139
105
140
102
138
152
92
105
37
178
105
105
104
104
55
79
69
143
79
122
138
144
139
110
140
126
147
144
144
91
81
127
56
69
91
138
110
75
146
56
92
138
69
110
55
104
168
105
93
67
111
110
55
67
77
92
178
122
55
126
58
55
91
109
103
105
122
105
139
55
110
124
58
138
168
139
67
144
92
127
110
67
111
139
91
114
110
99
136
171
127
104
130
130
168
37
104
55
110
37
92
79
102
104
142
75
180
104
92
91
122
122
117
107
97
130
99
127
182
55
126
152
56
107
79
95
138
168
131
77
152
56
105
104
67
168
92
178
37
145
93
92
55
104
105
95
148
114
104
69
79
131
139
79
92
104
92
103
67
149
126
162
100
152
105
68
127
89
95
130
105
126
105
55
118
103
58
111
106
144
119
100
110
110
139
130
104
126
127
119
55
126
134
99
55
104
138
109
93
92
144
58
75
98
109
138
127
178
110
101
169
178
77
101
120
125
67
117
165
92
55
55
56
110
107
105
171
178
138
109
37
139
99
132
120
122
122
58
68
178
98
138
119
37
77
160
127
105
84
126
109
123
152
79
93
119
178
138
92
126
118
92
120
86
122
114
104
105
110
138
160
144
127
69
93
139
77
107
119
92
122
92
98
146
122
138
114
188
37
137
112
77
109
122
104
127
97
104
105
105
126
55
115
144
110
67
91
92
74
110
79
111
110
55
122
92
158
152
122
110
178
56
58
104
128
120
93
123
92
122
122
94
117
109
92
74
58
127
98
104
92
93
144
101
120
141
138
67
122
67
55
152
67
163
37
138
110
126
158
138
129
69
55
86
110
146
139
162
122
92
126
135
93
92
77
84
83
117
126
55
138
144
79
122
152
130
94
145
127
81
122
37
138
93
126
142
115
92
93
105
122
140
93
95
152
107
120
55
93
37
148
130
56
69
126
100
172
134
122
105
137
104
139
122
67
134
67
105
119
104
126
67
127
67
169
86
111
77
112
68
75
139
134
124
86
138
101
139
98
102
93
92
163
111
165
152
68
77
67
123
91
56
152
103
104
158
122
135
97
105
92
93
120
86
67
91
137
158
75
110
126
126
112
119
79
37
126
92
107
55
92
160
131
92
93
99
152
139
99
101
91
124
134
104
56
86
86
77
138
105
156
122
109
158
144
123
79
56
123
58
91
105
110
109
81
92
92
105
55
105
55
111
137
146
92
55
132
123
103
132
57
110
92
138
68
79
131
148
127
67
146
104
129
130
118
105
91
109
110
110
144
122
124
140
150
67
93
112
127
106
91
134
138
91
111
123
110
160
55
139
55
110
122
105
83
79
127
92
55
81
122
92
110
55
104
91
55
100
74
104
122
127
168
131
93
94
69
96
97
110
144
122
92
105
67
55
92
92
98
105
128
109
148
104
37
178
77
103
105
55
79
144
168
105
178
142
110
132
91
110
55
110
92
91
128
152
83
102
79
146
111
104
111
130
104
144
88
91
81
55
142
122
122
114
140
171
92
105
92
92
37
69
139
138
67
136
132
182
122
68
37
56
84
180
171
105
120
117
122
37
126
106
125
93
128
103
58
131
56
69
79
58
55
126
119
111
55
83
110
136
92
123
130
149
123
37
144
104
89
178
97
55
69
123
55
126
144
69
164
122
127
105
89
126
103
104
93
67
77
55
131
86
127
58
110
93
146
130
128
144
109
138
139
91
37
55
117
135
89
69
56
109
75
139
139
55
122
69
127
104
98
148
86
58
144
67
105
100
178
178
88
105
58
105
92
122
55
152
92
138
87
74
119
56
67
140
67
117
58
55
67
93
55
139
92
108
79
131
138
140
37
99
75
91
119
88
92
79
126
86
79
169
104
122
55
68
127
168
119
37
92
95
105
104
104
152
169
55
140
139
134
83
178
134
86
92
122
178
84
122
58
55
98
92
87
139
95
55
56
127
93
91
139
121
65
96
103
92
67
55
148
69
56
92
56
92
87
104
92
93
93
110
55
79
37
92
64
69
92
56
55
98
92
109
138
136
107
126
131
163
79
126
89
130
139
129
92
111
67
104
89
102
122
84
178
93
92
58
72
138
67
131
139
79
86
91
138
75
122
123
58
139
67
114
120
178
110
138
180
152
77
134
118
110
127
55
37
122
93
178
169
122
112
160
110
144
169
92
55
128
67
140
78
92
134
92
92
103
168
136
111
76
55
127
67
124
110
99
123
58
169
128
67
37
105
112
138
124
138
110
107
55
126
122
135
153
124
144
37
139
83
69
122
84
93
127
99
93
104
114
88
146
131
84
92
122
104
67
56
144
148
111
104
74
178
120
93
127
110
117
129
56
112
104
130
146
83
139
99
180
139
109
92
134
158
99
146
114
99
75
74
97
69
91
138
111
128
126
127
139
56
138
140
139
55
74
130
55
103
105
67
138
139
75
106
162
55
56
106
199
122
91
117
199
92
137
100
106
146
55
91
171
110
67
138
138
107
67
101
37
67
122
126
110
104
105
120
110
92
134
139
114
92
109
136
122
79
125
132
58
89
178
144
178
169
107
37
37
104
110
120
83
106
126
67
86
126
93
88
69
126
144
92
109
69
92
126
55
124
139
134
124
93
67
104
56
100
55
122
69
156
182
142
100
79
144
105
122
83
67
75
138
67
126
138
104
121
108
144
110
127
139
110
101
114
138
122
177
103
58
112
126
146
126
138
55
92
92
152
134
105
132
105
135
178
122
92
140
110
124
119
106
122
149
127
120
127
123
105
55
158
124
67
138
128
111
111
128
134
55
75
94
122
37
67
129
98
93
94
119
112
138
103
144
105
55
122
105
79
110
69
138
92
122
55
105
92
105
67
106
126
104
110
86
110
134
56
92
86
139
81
146
37
56
56
68
67
105
99
93
37
86
131
65
105
122
110
136
109
58
146
122
127
67
125
146
67
74
92
93
37
77
79
138
55
114
107
37
132
67
77
105
148
114
109
120
120
69
95
104
138
103
92
105
101
79
72
100
37
127
69
111
110
115
58
126
169
140
93
105
92
95
109
130
69
158
146
168
100
37
122
104
83
37
93
92
37
92
92
58
126
171
117
162
92
91
69
107
74
126
69
169
105
127
55
127
97
69
74
56
127
123
91
124
164
122
67
127
110
165
122
146
104
107
167
67
56
141
158
148
104
107
142
126
105
146
110
104
56
105
75
105
132
127
144
137
106
55
160
105
112
156
67
111
146
78
92
119
178
103
119
86
109
120
130
55
139
152
56
104
92
56
92
68
93
128
104
148
104
107
105
67
68
92
92
92
178
152
110
92
169
164
139
110
122
122
55
123
119
111
168
126
146
69
122
123
117
152
92
146
114
154
77
107
89
199
134
160
79
110
126
140
169
138
101
127
74
67
140
138
93
61
111
138
74
69
56
93
138
79
56
178
139
138
127
104
104
92
77
105
178
68
124
122
75
122
135
92
123
56
146
110
56
141
132
127
105
92
99
92
110
138
138
75
79
99
67
98
37
107
56
91
134
136
158
69
67
67
103
110
68
105
129
92
105
105
102
79
68
93
126
130
138
104
107
67
178
156
138
122
115
143
56
123
124
92
93
55
107
137
99
104
171
128
122
152
126
67
109
119
84
92
92
92
124
178
109
77
67
104
101
110
126
37
92
91
124
165
128
160
91
104
110
77
123
146
138
92
79
97
110
93
127
92
101
110
99
58
168
144
126
145
93
178
37
110
138
79
118
113
114
55
37
93
107
67
111
178
93
114
92
86
77
117
69
55
37
67
114
37
134
92
122
127
105
123
126
111
91
138
110
139
110
79
106
84
138
111
79
55
119
74
67
112
55
93
69
138
109
93
128
92
86
56
124
55
93
128
107
138
122
110
55
117
188
89
134
122
91
109
138
110
146
144
122
128
104
132
146
37
152
138
58
115
124
67
93
55
37
92
110
111
117
134
92
56
93
56
81
92
105
67
92
105
56
105
105
125
110
105
123
126
131
94
92
104
105
169
37
110
79
69
144
110
75
127
105
86
109
58
122
104
75
122
126
77
101
58
127
127
88
55
152
55
169
126
92
37
93
92
55
67
146
107
110
81
37
158
55
69
126
110
55
83
128
77
134
141
105
137
150
71
92
56
93
163
141
110
92
128
92
55
105
139
130
167
86
56
119
105
138
126
104
122
122
105
119
146
160
105
122
169
93
164
165
138
110
122
163
79
92
104
69
134
92
122
110
55
136
138
107
92
104
81
123
105
92
123
110
56
158
58
93
126
67
92
178
109
92
107
81
55
69
55
138
136
92
107
83
113
148
79
142
134
37
91
120
104
88
58
139
37
55
104
139
55
139
115
127
55
92
92
103
75
140
56
148
93
118
126
55
180
178
88
69
105
67
97
79
138
91
55
132
99
138
152
122
129
140
188
110
69
55
152
120
67
104
74
123
56
58
67
74
122
91
106
162
86
126
92
110
93
55
105
122
134
110
93
105
110
86
100
139
111
119
131
106
149
104
125
104
92
102
56
37
127
55
37
86
139
138
37
126
79
158
111
126
136
97
122
139
55
110
56
97
138
69
55
146
74
92
122
93
118
91
126
105
148
110
107
135
56
138
178
138
104
122
126
126
139
128
98
136
122
171
92
99
69
109
74
163
110
139
83
163
99
152
55
110
56
74
124
55
97
83
152
178
138
56
148
105
146
55
128
104
104
122
99
146
86
110
126
178
127
55
56
169
37
109
113
92
145
111
103
138
107
72
37
114
103
93
137
138
177
107
92
97
67
115
128
178
138
104
55
122
152
105
105
128
115
114
58
89
146
123
103
104
144
105
124
119
120
138
126
37
69
146
122
126
77
124
83
164
93
92
77
110
92
92
139
178
67
73
55
56
56
130
69
132
140
134
171
86
92
58
69
138
92
55
56
102
93
74
138
79
58
56
92
107
93
101
163
104
127
103
97
165
92
55
126
114
146
86
111
97
138
138
122
68
122
37
56
92
163
134
111
55
55
77
104
93
111
162
111
55
135
108
122
146
178
120
64
92
146
79
110
56
107
56
79
127
130
105
95
100
122
119
115
104
105
91
55
126
109
92
126
92
92
135
56
92
110
56
69
124
92
105
110
105
146
67
91
92
132
148
88
69
111
122
139
144
123
139
122
130
105
37
138
104
55
123
105
93
102
140
104
110
79
101
138
105
152
146
76
109
148
105
103
37
88
134
55
92
99
126
55
132
126
105
92
144
85
67
79
102
99
136
61
141
89
86
163
74
118
111
178
100
92
138
150
75
94
152
105
55
67
128
92
93
104
127
124
77
92
92
128
97
105
56
55
79
105
178
139
163
167
99
55
67
104
123
126
67
92
122
110
73
128
110
138
84
83
105
105
139
75
93
167
56
103
128
123
92
55
86
152
68
122
37
92
83
68
92
104
56
119
98
127
128
37
69
122
178
75
112
86
105
105
126
56
56
67
67
142
92
123
111
110
56
112
167
140
148
55
95
55
84
105
138
139
110
98
37
122
152
77
105
139
110
86
79
171
65
126
152
103
91
110
119
55
111
93
138
138
152
140
77
127
139
100
104
112
111
55
105
127
67
79
128
37
128
109
91
58
103
111
138
139
144
55
91
92
58
56
74
125
37
138
69
101
126
67
169
122
114
136
68
92
127
168
55
127
100
122
123
67
110
58
84
84
56
79
92
77
139
69
130
69
105
131
98
93
146
146
152
139
77
114
93
110
148
92
118
140
168
119
112
144
126
126
119
110
107
37
37
67
110
119
111
139
91
67
107
107
93
92
105
110
110
74
117
58
55
160
104
114
110
110
77
122
112
111
92
119
104
134
126
181
92
55
111
74
83
109
122
105
99
138
122
130
130
132
127
136
93
118
69
138
105
130
99
92
95
105
178
102
99
139
93
55
111
86
138
105
105
140
37
178
120
81
86
148
123
37
104
83
136
118
178
67
58
74
127
103
126
93
146
92
145
140
101
55
127
56
105
102
105
92
125
154
139
188
124
92
148
56
146
123
69
122
124
79
110
131
86
88
92
92
105
58
104
138
92
109
105
104
37
152
139
126
55
55
128
128
109
178
120
94
122
92
67
105
56
79
58
56
126
56
122
169
134
97
37
144
92
154
37
92
109
122
55
105
56
104
126
165
58
92
102
132
146
149
107
142
67
95
178
73
56
105
105
92
137
105
122
126
55
67
109
99
93
131
138
110
123
178
74
122
91
93
77
67
56
92
110
91
127
123
126
84
144
55
104
87
96
142
95
171
91
111
89
55
139
127
168
105
122
104
128
55
37
124
138
122
178
107
138
126
71
86
109
55
97
67
134
128
134
79
144
55
102
171
55
112
93
122
111
91
152
119
92
139
134
128
125
122
108
122
104
138
126
146
89
79
37
118
56
77
109
122
67
143
110
93
134
137
122
37
169
105
119
123
122
75
146
110
97
131
119
136
74
126
122
126
56
77
110
104
104
107
126
75
144
93
55
123
79
119
55
69
139
146
69
100
163
110
58
56
67
55
93
86
146
126
69
92
110
140
129
138
111
180
69
138
122
111
83
126
77
122
86
56
152
99
140
138
86
58
55
103
112
93
139
139
122
107
138
122
55
105
104
58
83
138
79
93
58
140
109
37
105
138
148
169
89
112
105
79
147
138
67
126
93
138
103
110
134
77
110
105
91
146
105
93
138
92
99
67
67
108
79
77
139
72
139
104
168
126
114
111
55
92
144
92
92
178
134
55
37
110
108
122
102
103
74
138
55
56
74
92
37
93
122
122
132
100
99
75
109
80
106
67
158
79
68
139
104
102
118
92
143
158
164
69
148
75
86
79
169
146
55
134
124
139
141
68
92
56
79
67
152
138
110
178
146
92
128
111
122
93
69
92
119
55
55
86
86
67
86
126
105
69
138
144
124
104
113
55
132
105
69
55
102
93
55
55
138
91
58
126
178
124
105
139
117
111
138
139
55
92
93
56
37
37
79
104
138
105
57
108
152
126
138
92
126
91
138
91
111
109
58
37
139
145
106
105
111
56
134
74
37
138
55
125
139
58
67
92
178
139
92
138
156
105
105
126
122
171
79
55
142
110
126
88
92
55
74
94
37
146
106
109
55
104
139
146
69
105
93
131
134
134
164
58
132
69
134
92
142
92
104
140
77
121
104
118
109
102
169
138
117
105
99
112
92
58
108
92
92
58
160
151
148
72
67
69
122
126
56
144
83
124
93
107
169
55
56
87
178
86
139
140
136
138
115
104
103
139
139
110
67
97
104
37
119
93
37
37
146
127
178
144
152
109
93
146
77
138
131
99
112
105
126
139
137
134
123
122
140
79
139
171
105
139
93
67
152
68
37
137
93
142
110
83
122
104
199
92
56
106
137
55
135
93
105
127
92
69
98
79
87
126
119
139
128
75
103
55
119
109
67
107
91
58
92
122
75
69
111
138
140
55
122
127
92
158
122
134
180
125
91
122
69
137
79
122
180
55
92
122
92
91
105
118
56
178
178
104
69
152
120
67
67
109
126
111
138
67
55
99
160
69
55
156
124
107
89
105
138
108
92
138
93
93
140
56
140
88
99
58
120
69
129
111
92
110
136
88
55
97
134
86
110
147
83
55
55
140
123
37
92
104
91
105
105
123
104
136
37
67
144
55
122
128
92
92
92
103
72
111
125
110
112
55
127
77
83
104
91
58
67
138
134
136
128
92
37
136
109
91
134
93
94
105
152
126
93
92
37
110
84
105
111
126
102
55
171
105
111
122
126
138
148
130
126
99
92
77
76
58
138
93
105
110
105
140
126
55
74
68
89
158
146
112
152
67
126
145
115
127
146
144
100
55
55
67
131
92
74
109
92
152
61
110
120
138
178
37
86
89
122
103
158
122
130
103
168
104
140
93
127
126
134
138
74
55
119
122
58
112
92
55
67
83
138
138
125
68
136
69
89
128
114
144
163
110
93
83
69
137
131
93
168
74
131
55
104
114
56
138
103
93
106
55
110
100
140
92
163
92
112
92
79
105
160
132
165
110
110
105
105
136
106
84
88
139
139
144
165
55
86
126
136
104
138
58
107
127
126
110
168
110
135
112
105
140
110
56
109
105
120
67
37
67
102
137
163
74
160
107
122
122
105
93
56
99
169
148
106
58
92
58
111
152
75
110
92
55
104
126
55
110
93
77
55
178
58
160
123
128
84
98
127
111
131
80
92
56
106
138
37
95
142
104
95
136
80
104
169
132
56
105
113
128
95
117
115
164
98
64
121
92
124
79
139
104
58
55
180
92
105
171
122
144
105
101
160
138
93
93
126
55
74
67
95
91
99
138
58
118
93
163
75
138
138
139
92
138
134
182
140
105
122
101
128
104
138
109
67
104
104
79
77
169
102
103
126
119
93
122
37
138
105
92
189
144
55
69
137
110
132
75
122
148
164
104
126
55
55
139
139
77
107
152
152
127
105
55
169
105
111
56
105
86
92
110
74
37
55
67
140
79
169
105
55
123
138
55
105
178
79
92
68
58
128
144
105
105
132
160
127
128
55
111
124
55
164
98
103
126
74
92
146
158
178
55
103
136
131
130
104
74
144
107
110
91
152
109
104
123
158
69
152
145
93
178
74
110
91
137
104
122
91
99
150
67
110
92
84
92
67
101
122
67
101
110
139
55
105
129
110
104
131
75
158
115
92
55
124
127
58
93
111
130
77
108
138
138
37
124
56
56
75
67
37
78
163
122
178
77
93
69
104
105
93
168
112
140
147
91
58
129
126
122
128
89
92
92
92
126
96
149
92
122
37
93
109
120
95
105
58
127
112
123
93
122
121
89
110
104
126
138
130
98
138
119
128
107
55
139
84
128
144
92
132
169
92
69
55
130
101
111
72
138
139
137
105
67
93
138
88
124
55
105
77
138
99
122
111
79
79
92
105
169
178
92
79
126
92
122
72
123
95
92
84
58
37
83
37
110
86
114
86
58
127
178
112
138
93
105
123
58
104
124
137
56
105
55
119
128
178
78
158
122
55
58
119
128
168
98
124
79
131
132
56
128
104
93
127
83
101
138
152
119
146
128
103
138
69
105
109
58
136
105
67
127
37
125
138
144
109
92
58
55
91
67
92
92
122
91
130
118
152
122
149
110
110
122
109
122
78
105
126
104
75
120
92
152
178
122
69
119
122
114
91
55
97
67
122
123
131
69
56
119
109
138
110
77
126
55
56
100
107
86
83
110
55
55
37
169
152
146
106
92
77
126
99
55
105
142
78
110
91
162
126
86
93
67
76
92
119
67
134
56
122
146
128
140
107
122
112
92
104
132
128
93
55
114
111
136
91
105
103
110
74
58
124
105
122
110
69
152
58
105
55
100
111
144
107
105
111
127
121
93
67
110
56
114
37
127
99
122
55
55
58
112
79
138
97
94
131
89
55
128
122
134
118
92
122
74
93
127
178
112
55
113
104
98
105
178
152
163
99
127
136
182
130
104
128
127
122
104
104
127
146
92
136
114
67
92
161
92
126
138
152
120
128
92
56
86
37
109
92
164
79
92
77
122
130
144
106
126
92
95
120
146
119
171
124
110
146
139
110
103
122
72
92
115
122
58
55
56
114
93
109
122
91
123
178
178
134
118
192
101
107
110
117
79
126
128
91
110
140
109
103
101
126
127
99
131
130
142
110
110
105
109
92
122
107
163
92
140
126
110
104
118
97
58
107
83
112
55
56
168
104
103
94
105
138
134
37
120
103
67
91
142
112
139
127
107
136
147
109
105
108
92
69
37
146
189
110
69
158
78
114
109
180
137
56
67
92
109
127
128
74
107
67
104
67
144
144
122
105
91
84
138
105
67
124
77
163
77
178
67
93
56
93
126
98
139
137
56
92
69
121
126
123
146
55
138
56
93
123
84
134
138
140
56
127
93
118
75
67
105
112
139
128
92
134
110
74
139
163
111
56
126
56
118
79
67
55
55
122
104
128
91
146
138
103
138
144
119
152
127
67
117
92
79
58
102
69
106
104
111
104
119
127
134
140
156
110
58
110
111
107
69
129
132
136
134
152
56
89
178
55
138
122
99
136
104
126
91
146
115
95
119
105
67
130
178
83
138
105
123
69
171
86
122
135
105
136
138
100
128
56
93
87
69
126
92
99
119
127
69
55
139
67
122
98
110
162
86
117
104
138
110
97
106
99
144
55
107
139
126
115
56
37
106
74
75
99
117
128
103
169
92
55
122
91
139
128
69
158
95
178
79
69
75
107
55
111
105
37
126
77
137
76
103
86
92
67
91
128
111
152
110
109
55
111
92
98
69
77
55
56
93
55
99
55
122
138
167
139
118
114
56
86
110
139
103
67
92
122
69
104
122
105
129
171
128
99
67
86
169
55
110
128
104
127
86
168
92
122
110
92
104
118
119
120
131
69
146
77
138
105
109
127
91
126
105
119
69
114
110
122
110
126
78
84
93
109
103
130
119
112
137
132
91
105
37
130
37
138
69
127
58
109
56
107
145
171
80
96
139
127
58
139
149
67
146
122
104
134
136
103
68
58
67
175
158
91
84
138
134
139
144
56
144
67
148
67
145
126
93
77
109
67
77
123
111
55
121
178
110
136
123
126
104
126
119
134
112
110
148
37
144
117
67
105
123
169
55
105
75
122
146
56
138
122
145
92
95
69
104
55
126
67
92
111
110
55
77
92
55
92
84
139
142
110
55
58
91
56
92
69
74
178
69
67
134
73
92
92
74
97
91
67
92
110
56
74
93
109
55
92
117
119
110
104
122
91
119
138
55
92
92
125
138
56
171
148
69
114
144
178
138
74
144
153
122
86
84
109
156
104
114
69
101
37
55
67
132
110
148
55
122
98
37
134
37
105
123
100
92
178
110
56
77
55
138
55
77
56
92
56
69
55
158
122
37
94
104
104
122
107
122
126
123
93
122
131
109
123
67
123
106
101
100
104
98
127
145
99
99
92
110
135
37
84
58
95
55
119
163
93
111
105
91
152
169
144
84
126
110
97
67
92
126
56
138
67
169
138
100
86
101
126
127
93
56
171
138
120
55
131
106
105
178
104
86
104
92
171
178
122
67
145
99
37
55
106
74
92
138
93
101
115
91
146
171
37
139
162
119
105
56
122
69
127
55
105
69
110
75
58
92
92
122
55
105
77
55
79
126
93
148
104
111
144
103
107
55
119
100
75
127
122
92
68
110
138
144
69
93
138
92
104
148
144
92
134
95
58
140
92
110
92
104
101
105
123
107
122
103
110
97
146
136
138
107
109
91
113
56
110
140
152
37
98
178
58
136
105
152
56
106
138
125
103
126
88
126
55
134
136
92
92
37
74
56
92
131
130
106
111
110
105
109
58
117
171
131
138
138
98
110
97
55
56
134
56
79
126
138
99
138
120
110
55
138
105
75
125
58
100
163
67
122
55
92
130
112
110
128
138
139
105
134
138
127
56
94
112
74
117
138
81
139
94
112
110
126
55
110
139
83
102
92
126
125
105
68
123
99
138
69
125
98
138
141
84
105
100
119
122
168
110
124
162
55
67
67
92
181
109
55
67
127
67
56
83
105
105
178
132
126
93
139
168
126
83
117
69
86
55
138
124
126
91
67
126
144
110
122
99
56
79
135
134
138
180
144
138
114
118
92
92
58
122
69
105
55
129
78
77
152
144
37
106
99
73
67
74
106
37
171
105
105
122
101
67
145
169
92
146
126
122
103
58
98
109
101
92
169
110
115
86
144
58
136
123
126
37
122
79
110
93
105
169
92
67
110
110
58
74
37
152
92
152
152
92
159
55
92
67
124
111
119
92
58
144
55
138
110
141
83
74
83
160
55
144
134
110
67
152
124
111
69
67
58
122
150
92
55
146
79
126
138
110
127
111
103
109
56
144
77
171
105
128
111
107
168
58
105
128
75
105
58
98
139
144
122
126
80
56
79
122
114
104
99
146
119
139
56
37
67
122
77
122
127
148
110
55
128
67
169
123
141
109
88
67
79
83
103
146
120
83
56
107
127
97
121
99
69
122
144
77
158
120
169
124
126
68
129
105
131
123
138
178
110
92
78
105
110
126
56
100
169
55
178
92
91
56
58
105
152
104
116
58
110
91
108
79
105
74
105
124
171
110
126
127
169
134
99
76
79
148
93
169
145
92
58
92
123
56
110
69
92
178
79
134
134
120
37
115
109
107
110
123
110
139
146
58
127
99
132
138
119
105
126
110
165
92
69
92
110
178
92
158
55
55
99
92
69
138
152
79
93
105
105
139
130
141
55
140
93
83
177
182
67
85
83
84
69
93
99
152
122
110
110
55
154
128
110
128
55
131
83
93
132
146
92
91
105
128
74
124
104
111
126
139
122
110
171
124
178
140
92
79
88
78
139
77
122
105
72
171
158
56
146
149
104
126
56
55
126
110
55
127
127
86
127
55
92
67
67
55
69
110
138
139
97
106
128
37
122
94
55
86
139
140
91
115
67
92
92
104
127
55
67
152
93
99
67
77
138
67
55
74
93
139
100
105
122
104
178
79
109
92
122
148
134
128
124
55
178
79
178
69
74
134
107
138
144
84
111
104
126
105
68
55
126
105
92
107
105
75
92
128
58
124
122
103
55
126
55
93
119
56
138
148
138
139
122
146
93
83
123
122
105
101
105
83
162
127
105
171
86
92
92
127
140
67
140
55
144
111
55
56
100
104
139
92
93
96
119
37
79
120
136
141
122
127
92
122
92
69
77
92
74
122
69
92
110
138
109
67
69
92
126
86
100
105
105
92
92
122
105
128
126
122
163
126
92
130
92
146
92
37
105
158
114
134
92
126
122
138
81
105
99
91
164
55
122
134
77
100
105
122
91
131
110
91
92
93
120
69
37
37
103
138
91
92
119
128
111
68
93
37
69
105
122
108
75
114
128
119
119
67
69
112
122
58
163
122
134
126
104
96
130
109
122
110
67
152
104
55
112
117
122
86
92
67
110
137
107
105
110
111
105
142
84
37
139
93
118
171
178
93
114
135
110
104
97
130
119
139
93
119
105
92
104
73
92
92
69
126
138
138
114
158
93
55
138
105
37
134
152
69
61
130
178
129
68
101
127
102
87
128
121
92
98
118
122
92
122
92
99
86
178
126
55
100
107
165
91
92
88
106
105
180
139
56
93
37
91
138
92
107
92
110
93
149
79
139
92
111
92
105
110
92
105
100
105
131
123
112
92
128
81
126
68
134
93
111
74
55
105
92
127
105
124
86
139
109
130
67
98
109
55
127
127
124
139
79
93
81
99
58
146
92
126
93
55
123
178
138
123
96
69
69
67
171
92
56
140
37
122
56
138
126
55
110
152
127
171
92
55
68
169
55
110
163
58
92
139
139
126
178
122
93
58
134
55
131
56
104
108
110
132
79
144
123
104
77
138
55
92
86
93
56
78
108
84
110
100
109
79
111
92
56
108
152
109
110
122
73
97
162
130
139
162
180
126
92
126
128
127
92
110
37
111
122
148
68
109
74
91
55
91
118
65
127
126
77
79
86
75
91
115
92
164
152
74
55
110
144
128
86
148
128
105
139
58
69
105
127
55
68
126
55
110
138
94
78
56
77
104
111
171
144
92
110
58
119
56
105
78
79
55
56
79
109
134
132
125
102
69
131
55
119
68
144
92
91
110
104
94
127
115
92
86
144
74
98
79
164
67
67
111
126
122
88
122
86
91
99
152
138
178
111
55
104
56
104
132
106
146
107
92
140
56
86
68
163
77
122
56
86
88
178
131
138
58
105
84
103
138
41
110
138
121
95
146
97
101
122
55
105
169
119
137
68
123
92
139
110
93
73
139
146
122
112
135
122
92
126
103
104
99
124
56
104
80
92
104
100
67
134
144
123
120
94
138
67
97
103
178
137
55
92
169
149
111
37
141
139
69
78
91
67
68
178
158
130
138
122
110
152
91
168
107
67
178
79
83
55
129
55
107
58
99
178
79
152
74
110
167
121
122
122
110
171
126
111
128
169
152
110
139
96
132
178
111
127
126
89
92
119
56
124
101
122
126
134
92
64
128
188
56
115
169
105
124
58
112
67
93
92
169
128
118
105
118
118
148
141
123
136
127
180
103
144
92
92
67
104
177
144
169
122
37
55
126
91
123
75
88
56
144
138
130
67
128
102
137
113
92
128
92
126
123
67
189
83
88
55
105
126
79
120
55
56
74
93
92
69
103
126
122
64
109
55
92
104
114
157
93
105
109
92
136
107
167
110
101
110
169
199
104
92
79
122
110
83
132
102
55
58
122
94
123
144
104
123
67
122
110
139
124
67
105
92
56
93
145
138
105
56
92
126
120
37
122
79
69
91
92
67
67
140
74
128
106
104
145
56
108
140
93
107
104
58
103
178
55
127
93
119
99
67
75
117
111
91
56
167
67
67
103
68
152
105
130
102
131
128
58
58
114
93
91
58
92
126
77
162
136
92
109
111
79
123
199
126
136
77
103
104
77
37
69
145
110
55
55
92
92
146
127
37
89
128
55
67
150
141
102
83
101
79
100
119
55
105
123
93
91
77
111
92
92
120
104
92
79
91
127
128
95
122
91
92
103
119
68
124
128
56
110
110
130
129
130
55
149
120
110
105
127
105
105
144
110
126
92
84
138
114
56
151
139
163
92
117
122
137
122
37
67
106
110
37
127
130
135
138
178
92
77
75
122
104
92
55
105
84
58
123
98
74
110
55
158
127
130
67
55
99
37
124
125
69
122
79
56
37
110
126
55
123
103
56
104
92
126
55
105
128
149
37
115
122
122
140
138
110
92
91
110
83
67
107
97
99
119
145
97
146
99
136
67
105
138
158
37
110
92
92
92
122
110
91
114
122
111
111
67
77
95
110
182
100
164
128
123
134
158
55
130
99
144
110
69
81
92
107
178
144
92
94
138
171
118
122
37
126
91
137
56
55
84
178
104
93
84
139
135
131
91
122
67
136
37
69
106
140
93
58
105
171
75
126
79
127
146
75
69
135
139
124
37
126
122
74
134
98
105
112
55
74
79
124
111
86
151
152
138
169
106
79
144
74
138
122
110
56
110
104
93
171
149
104
114
93
80
164
83
67
130
108
83
84
98
77
135
111
152
110
74
37
67
126
178
124
126
92
93
74
146
127
126
101
128
138
138
67
138
92
138
138
114
129
55
101
122
103
69
67
103
113
138
119
110
138
126
110
104
127
107
55
55
77
102
114
104
169
111
139
126
101
122
117
105
78
56
146
126
110
55
142
140
93
119
92
124
144
144
122
55
124
55
126
79
92
58
138
123
55
139
152
67
77
67
109
107
99
122
55
146
110
67
122
92
105
108
93
109
68
123
37
107
55
128
97
68
104
86
127
118
106
67
114
122
83
99
79
99
105
111
126
93
56
105
55
106
37
55
93
138
98
93
104
74
120
91
105
139
77
178
122
144
61
109
138
37
123
83
138
95
122
86
105
92
110
122
84
55
105
110
169
67
144
132
126
152
86
91
92
100
74
105
75
37
110
132
107
104
108
105
67
140
93
64
55
124
74
126
104
74
92
101
105
110
92
122
126
178
122
37
56
109
74
101
138
124
171
110
67
100
91
81
119
67
122
109
123
92
37
67
74
178
122
167
55
118
98
79
134
98
115
100
101
74
124
98
68
89
58
37
119
37
92
56
56
127
122
114
138
103
145
74
119
77
68
164
86
74
122
77
93
134
140
79
111
106
122
64
138
92
111
100
97
131
123
119
108
105
111
92
58
104
122
152
79
84
144
92
67
100
136
122
110
93
37
134
55
78
67
136
139
92
92
178
105
99
74
138
131
139
89
69
56
119
110
92
139
104
110
119
126
122
110
69
130
105
110
102
109
55
103
68
148
123
97
127
55
122
135
126
79
84
138
128
88
37
67
86
55
58
127
93
126
67
55
67
92
104
146
128
55
37
160
56
103
126
79
126
86
83
167
178
178
105
86
58
104
126
138
132
131
124
56
144
110
126
126
140
139
140
55
146
67
105
138
92
168
89
139
101
128
74
55
144
105
117
122
122
114
86
69
67
67
92
104
61
37
93
145
111
178
68
107
92
56
120
67
81
110
123
105
69
97
140
92
126
127
95
55
105
92
92
97
74
111
104
93
105
144
116
126
178
139
69
95
138
92
126
126
126
105
134
86
152
56
68
127
126
171
110
104
122
110
67
163
105
55
55
37
138
92
92
93
119
91
118
110
94
104
93
91
67
92
144
178
135
91
128
56
58
86
169
109
136
140
139
122
144
123
119
138
55
144
83
56
135
55
122
112
84
104
148
139
92
92
123
93
123
128
86
168
136
169
56
101
128
127
152
164
152
67
109
97
128
126
109
55
89
93
131
107
104
107
122
144
139
158
56
83
122
169
107
122
128
97
171
144
56
91
37
138
122
55
119
104
83
105
119
93
135
148
77
92
58
139
122
55
134
149
56
91
122
134
56
92
108
104
56
139
114
136
123
122
136
146
92
55
124
87
98
127
55
110
127
58
107
56
128
126
104
105
87
99
144
134
110
105
98
67
55
99
128
75
37
84
69
139
109
121
55
178
110
152
106
123
123
124
67
139
101
108
56
79
135
93
103
126
109
140
75
55
123
144
74
147
160
92
92
110
119
134
119
169
139
96
148
111
97
128
122
122
122
79
119
135
119
126
67
102
128
131
152
103
93
107
146
152
69
122
92
99
127
105
107
75
110
123
92
168
67
111
110
126
110
138
144
140
107
128
81
57
86
92
99
55
105
55
115
178
68
122
55
119
101
37
171
93
92
56
138
165
67
169
92
138
126
105
139
152
105
79
178
111
37
86
74
123
178
128
146
105
146
169
180
74
93
79
55
152
104
110
140
140
124
84
56
104
138
91
130
126
93
37
139
86
148
107
58
104
111
77
103
122
105
56
67
77
144
78
91
110
124
98
138
140
104
75
136
37
99
138
165
86
58
110
171
110
127
95
107
93
87
67
55
171
125
111
164
144
111
69
126
164
69
55
55
93
94
55
84
68
152
114
92
158
55
110
181
67
56
86
122
55
104
93
84
89
122
92
104
93
104
92
84
122
128
110
138
126
109
78
69
104
93
145
86
110
37
139
144
98
117
110
56
134
152
93
109
124
84
134
134
122
92
92
122
56
117
92
152
122
77
146
79
162
106
122
105
113
75
122
67
77
122
112
105
142
152
100
55
119
55
92
109
67
152
117
56
92
110
93
37
124
56
149
126
138
79
68
171
56
119
122
146
149
37
132
100
119
122
67
146
74
139
106
105
109
112
126
127
122
136
130
138
111
111
107
55
136
123
110
122
120
122
37
138
124
103
108
86
146
140
123
104
127
178
167
118
76
111
91
112
58
126
126
167
79
55
101
104
74
69
56
131
56
104
128
178
111
74
122
67
160
127
67
67
58
110
56
149
67
105
77
101
55
105
74
144
134
138
147
152
55
127
110
122
122
105
77
180
130
37
122
130
114
58
105
55
109
110
58
56
164
122
91
138
126
95
134
69
81
110
69
138
67
105
94
123
178
37
146
92
105
105
55
58
146
169
124
101
69
110
75
91
138
110
100
111
56
171
126
93
93
138
126
74
144
110
93
74
92
180
108
138
124
127
139
86
178
92
103
148
56
127
110
122
92
95
69
37
92
144
126
55
128
124
127
126
126
152
138
100
74
109
106
91
146
111
122
79
146
126
55
138
92
127
104
109
107
107
102
148
146
119
139
105
105
107
122
99
97
67
105
74
92
139
91
104
92
91
84
134
92
141
132
92
55
67
116
93
158
110
167
110
151
144
104
126
162
61
178
67
74
149
132
98
94
79
109
37
86
92
104
104
104
127
55
168
74
122
148
118
69
111
126
94
105
92
122
92
124
101
83
138
72
110
139
104
152
110
110
127
104
122
56
122
110
114
152
107
55
93
126
92
93
67
98
105
158
100
120
151
105
88
139
111
105
131
55
144
93
138
139
75
92
137
152
105
171
58
110
92
124
88
144
126
139
135
94
134
92
56
110
105
122
37
91
95
105
105
92
67
107
122
98
67
126
138
122
104
146
126
132
158
79
123
126
107
128
165
92
98
92
79
67
119
79
163
168
55
92
95
37
154
111
74
92
55
67
56
56
126
107
91
128
178
56
126
145
56
93
136
104
119
138
144
86
110
139
146
56
55
91
67
122
132
168
75
67
152
127
178
93
58
105
69
120
161
146
67
58
90
79
169
101
107
55
163
110
127
55
78
58
93
142
132
75
136
114
92
127
165
86
144
140
67
93
140
128
37
138
37
128
122
55
146
67
127
130
104
144
74
119
92
106
168
110
106
92
82
122
55
58
130
69
140
105
56
55
69
126
144
109
105
93
73
138
138
168
111
105
93
92
122
128
76
126
126
137
144
109
112
93
180
126
92
98
55
67
138
99
117
93
148
132
55
92
152
159
105
69
138
107
79
152
95
97
122
93
132
137
122
111
110
138
122
138
117
56
137
169
86
138
122
92
104
91
72
139
75
105
110
55
130
105
134
56
171
92
79
84
58
145
93
58
122
79
110
55
123
108
138
139
92
79
93
55
112
110
105
146
128
122
126
105
67
122
110
110
119
67
58
146
130
55
118
122
113
58
98
123
92
146
92
79
178
113
83
126
126
139
126
75
109
146
83
58
122
178
56
56
93
77
99
74
127
126
126
126
55
83
86
93
109
103
74
103
98
78
86
114
93
114
110
107
140
56
55
110
92
135
79
122
107
158
103
128
91
132
127
119
110
122
127
137
122
158
123
138
55
139
138
124
55
55
122
122
126
137
138
104
120
130
68
92
69
123
58
91
93
67
178
93
67
119
56
122
101
105
92
92
178
55
93
100
105
55
109
107
76
88
152
92
55
120
103
138
67
150
113
126
165
69
67
140
101
105
122
55
128
105
111
100
144
67
110
92
119
178
55
86
105
124
77
105
171
178
104
139
134
56
55
107
67
112
56
119
56
131
165
165
86
79
122
107
110
132
56
67
110
169
68
105
138
92
126
122
126
92
86
160
103
159
146
110
111
105
95
178
92
139
55
105
146
122
55
178
122
80
77
105
68
145
107
93
56
122
81
58
101
86
92
105
55
134
105
86
84
122
81
138
135
95
110
118
93
102
56
163
144
146
74
91
75
178
98
104
122
58
56
110
79
128
144
88
131
88
103
138
77
88
146
108
126
93
104
105
144
138
56
86
109
56
77
108
104
168
91
138
68
72
93
69
144
119
162
108
144
92
79
94
86
178
78
99
86
55
146
102
77
122
55
122
138
139
92
92
55
110
131
144
95
132
86
111
104
122
92
99
92
178
126
37
152
110
56
55
110
67
56
55
69
93
153
120
103
37
105
152
67
67
104
165
92
86
123
37
101
107
122
131
105
105
55
138
55
56
110
146
138
75
84
93
37
75
102
110
94
104
79
101
139
55
169
105
178
103
93
128
110
55
178
93
37
169
144
114
93
138
111
67
67
107
69
92
126
56
101
97
93
111
103
122
92
139
55
92
119
109
167
68
86
67
117
55
122
127
138
134
110
146
86
104
152
92
100
122
79
56
104
67
55
128
79
104
55
92
113
58
111
91
144
146
105
130
110
37
146
106
158
72
74
92
92
89
127
92
144
130
130
119
58
79
108
58
105
139
68
79
105
179
169
107
92
114
79
178
91
37
92
69
122
105
112
67
146
37
138
134
58
103
55
100
89
95
99
83
131
67
128
135
74
92
100
123
126
110
134
119
97
139
138
126
139
67
67
152
83
128
130
93
56
138
157
104
92
138
79
84
127
37
105
74
105
84
69
122
81
169
178
127
75
160
110
92
110
126
114
138
98
101
148
91
67
105
124
105
105
58
58
93
162
97
56
99
119
152
116
107
107
126
105
111
37
148
86
103
146
142
94
83
131
91
105
84
96
126
58
67
128
99
92
55
92
111
152
140
91
77
146
92
37
104
139
126
99
124
92
92
77
55
110
55
56
144
100
56
92
169
107
37
101
110
55
119
118
92
107
55
124
104
69
120
148
58
144
95
122
180
107
108
55
123
144
89
138
163
92
122
93
55
55
69
127
92
77
77
144
99
117
102
178
111
86
67
178
168
122
122
74
107
127
56
144
93
56
124
119
104
102
105
110
110
93
64
93
99
178
89
122
110
86
98
105
158
92
128
162
107
79
99
91
158
140
37
111
136
105
107
146
144
75
107
104
55
131
55
92
107
104
122
127
56
126
138
74
138
123
110
99
55
126
58
86
56
92
178
144
122
117
109
105
104
67
127
138
93
178
169
73
178
69
146
92
109
130
56
119
55
102
105
168
178
126
67
56
152
37
64
110
93
58
123
68
110
152
169
140
128
169
118
55
103
122
134
110
67
79
125
139
75
129
128
110
148
58
146
56
124
67
114
37
178
67
105
138
74
89
37
138
74
75
68
55
178
92
67
126
127
58
105
144
87
169
119
139
91
144
106
105
119
126
97
104
55
95
122
151
171
144
138
110
126
92
103
79
180
135
104
91
78
112
92
105
140
138
92
162
56
109
105
55
178
105
117
93
132
56
92
111
81
123
122
114
138
122
130
110
132
55
86
117
92
128
120
88
126
110
92
105
118
115
55
152
92
138
105
122
112
138
126
110
79
98
138
92
149
92
97
134
178
131
89
107
119
55
122
146
146
92
100
58
123
138
138
58
109
117
105
86
86
122
74
169
77
55
55
92
123
92
92
136
122
56
68
122
99
95
84
124
124
105
135
126
138
106
178
102
83
77
110
148
55
119
178
88
68
122
58
171
138
107
56
124
92
109
58
99
68
104
104
131
168
55
77
119
141
105
168
126
139
112
67
122
137
128
171
55
56
124
98
102
74
67
92
122
92
109
104
105
69
122
69
122
55
105
130
136
129
105
122
138
103
98
137
126
115
56
108
56
93
105
163
58
148
109
178
122
123
37
91
126
126
178
148
140
123
110
92
152
55
65
110
126
92
126
93
110
92
131
86
122
111
138
104
128
169
55
55
67
104
101
105
99
37
56
104
75
58
67
105
146
104
142
136
93
103
119
104
93
92
55
105
67
83
92
100
142
56
92
89
99
146
138
144
111
56
116
109
105
37
144
146
148
67
119
128
123
92
138
92
77
104
142
122
164
122
56
134
119
104
55
86
105
80
109
55
89
86
37
156
120
126
132
178
92
158
97
178
103
178
56
112
100
169
92
114
93
112
131
58
58
80
98
120
122
103
123
104
92
126
91
164
67
79
86
132
37
92
163
97
103
168
126
93
91
97
110
104
109
110
55
122
102
69
107
92
178
87
86
55
130
74
178
116
146
67
122
168
77
126
178
126
126
55
99
119
168
122
110
144
110
101
104
105
84
127
140
127
119
75
98
55
139
84
92
89
122
138
74
199
138
144
119
126
128
136
55
111
189
123
93
110
89
104
75
134
111
162
89
55
89
126
178
56
77
74
160
144
118
105
79
122
132
55
125
122
104
122
138
110
55
67
110
92
93
105
146
114
127
131
75
122
119
55
103
104
104
92
94
92
178
148
58
111
126
105
67
110
86
104
126
180
110
126
111
122
67
163
126
55
92
105
107
122
67
104
69
105
109
131
92
55
110
91
160
86
127
91
120
104
119
91
92
110
99
98
93
55
69
126
109
105
92
178
92
126
99
110
124
106
139
56
138
126
92
122
110
111
92
110
99
110
140
109
138
120
146
93
128
100
93
110
105
104
163
126
113
128
139
146
134
87
130
131
152
128
126
100
139
93
37
64
84
169
122
37
122
110
80
86
126
107
68
152
92
67
37
55
110
93
139
92
92
98
68
93
105
105
181
92
109
110
104
105
105
56
56
67
131
109
55
37
92
92
75
67
37
100
112
139
152
120
144
126
146
119
93
73
115
58
127
56
140
74
178
163
129
144
101
144
74
55
75
140
178
89
129
69
110
86
162
138
68
169
110
110
169
107
109
199
93
119
74
92
178
67
102
178
111
103
67
92
105
107
138
109
132
126
110
115
144
67
105
92
122
58
37
146
97
58
110
103
75
86
122
67
178
67
99
105
83
105
92
91
105
105
127
108
99
79
117
69
93
56
99
92
122
67
128
93
111
100
107
91
95
127
37
92
146
144
56
69
55
126
114
130
178
110
120
92
112
127
91
105
104
107
91
122
118
148
79
69
87
110
92
106
98
91
105
162
92
119
137
56
55
92
128
93
102
77
55
67
103
134
138
127
122
124
105
104
67
75
83
92
163
58
98
104
100
122
110
112
131
69
120
68
122
55
37
74
127
83
122
152
128
110
110
120
55
67
138
77
148
67
113
120
127
106
110
138
67
99
93
178
93
67
58
55
146
84
110
98
178
104
77
123
92
128
164
83
104
109
88
122
110
67
74
75
152
92
77
79
144
104
132
56
144
144
67
146
99
67
136
178
37
122
131
122
134
111
92
180
100
138
92
144
67
79
122
169
94
126
55
134
104
167
144
104
79
98
178
93
99
134
107
55
146
131
37
69
99
86
67
92
91
55
91
92
92
92
83
55
37
91
88
146
56
107
111
136
58
110
115
119
105
111
92
120
92
55
97
91
110
139
168
104
107
152
113
92
77
74
74
79
55
122
105
122
85
126
178
128
114
131
105
112
56
114
104
93
109
122
138
77
88
104
122
158
105
93
144
99
138
110
110
128
69
126
99
37
74
122
146
127
122
123
152
126
58
92
92
138
104
119
126
93
58
152
88
152
162
79
100
138
92
122
126
122
58
79
105
139
92
55
152
74
79
139
56
92
182
97
37
124
114
100
110
127
56
55
105
55
104
58
79
148
58
112
121
93
77
55
56
131
68
122
140
89
103
146
144
67
104
122
55
152
37
55
130
131
123
93
126
92
67
111
93
92
92
139
144
105
72
126
105
126
138
110
69
127
69
109
127
110
101
93
56
79
69
146
143
119
148
104
95
99
105
93
55
137
144
107
92
132
92
88
108
119
112
178
144
122
56
104
89
122
119
126
92
126
86
110
136
74
169
122
92
75
92
122
135
97
56
110
132
122
148
88
127
128
110
144
99
92
112
110
142
56
109
110
93
139
122
55
83
135
127
55
110
131
126
152
74
105
128
81
93
126
138
138
93
119
92
168
92
122
93
178
144
74
87
165
97
58
107
130
86
105
162
102
55
146
111
77
127
92
92
126
99
92
104
74
137
102
178
146
104
138
91
86
106
139
37
163
105
122
110
144
152
122
146
144
92
165
111
37
55
92
92
98
122
169
92
111
160
79
122
55
84
102
86
144
79
87
138
93
76
64
139
93
101
105
55
74
58
144
74
126
55
58
103
123
110
91
128
125
75
67
58
148
123
169
139
117
55
110
104
140
122
149
122
105
104
74
126
122
75
105
37
99
180
79
55
67
163
126
146
74
69
55
103
67
105
92
55
55
122
123
99
89
37
101
83
105
127
139
88
126
125
69
169
56
67
97
122
138
163
37
92
55
131
109
160
55
86
37
110
56
119
139
122
110
55
56
69
95
134
77
107
77
69
134
104
84
56
55
122
146
37
92
105
152
37
145
55
152
92
124
146
152
69
97
37
105
103
152
55
103
122
158
86
86
105
67
83
99
92
67
105
136
178
126
122
55
93
199
127
127
128
171
126
126
138
37
93
97
141
92
127
178
128
127
124
164
104
93
92
55
124
134
92
163
158
92
148
123
55
55
123
135
122
93
156
167
165
77
131
69
130
97
69
55
92
163
104
119
144
101
91
104
126
163
138
124
92
92
152
122
92
79
93
86
92
106
105
178
152
146
92
92
126
105
137
140
134
107
130
163
134
55
67
110
138
88
178
137
92
148
98
111
139
112
148
146
56
92
126
152
56
117
37
146
84
178
110
109
93
138
114
105
139
55
93
111
137
144
92
119
125
144
106
127
55
110
178
58
152
138
69
123
126
138
101
122
86
128
114
138
110
178
144
138
178
55
75
92
146
139
144
178
138
84
105
152
135
37
169
93
55
110
67
55
138
106
144
144
92
86
178
144
55
69
105
56
115
147
138
139
111
139
58
127
115
107
37
98
110
114
69
178
136
67
138
105
105
144
114
123
110
58
127
95
126
55
138
58
138
135
87
178
92
92
104
37
126
152
146
130
163
109
92
162
99
99
122
122
139
101
131
126
99
91
105
93
92
169
77
92
139
105
151
130
67
107
83
92
78
138
96
178
97
79
109
74
92
146
126
134
55
146
122
178
126
92
97
120
152
37
67
79
139
92
105
105
55
139
122
138
119
105
105
105
67
55
135
76
110
127
75
37
139
140
105
58
122
111
111
56
123
133
139
140
79
109
105
134
111
55
114
103
75
67
138
95
134
92
105
91
138
180
55
101
100
121
110
99
146
119
102
122
37
105
110
55
144
110
136
92
67
152
156
91
95
127
128
105
55
92
99
88
146
124
86
77
77
69
122
92
145
55
152
74
128
122
56
139
126
92
94
92
178
104
111
97
182
100
105
92
75
105
122
115
114
144
107
75
56
67
98
55
75
105
144
55
124
77
126
92
122
58
103
84
115
92
88
92
110
117
74
127
93
124
122
55
111
164
83
55
74
123
123
122
119
178
136
67
128
126
119
110
138
105
126
122
100
91
56
144
110
142
105
92
67
122
119
169
126
104
128
72
95
92
112
126
147
120
134
146
123
55
144
178
103
105
122
144
104
171
105
110
111
91
140
104
96
127
83
56
93
146
101
105
178
106
126
89
122
92
91
103
91
92
67
118
110
37
160
110
37
56
120
120
122
69
180
92
101
131
138
109
126
92
114
180
138
58
104
84
104
37
138
110
91
75
163
105
91
37
115
138
134
169
112
158
141
104
56
99
110
122
37
163
69
92
122
110
105
102
91
67
93
139
95
107
148
122
101
107
67
119
139
91
127
97
97
163
105
69
92
127
128
141
120
122
140
55
93
168
123
79
104
55
55
58
55
168
105
169
74
131
77
139
91
58
55
69
37
67
123
126
106
152
79
91
84
74
92
126
37
99
123
104
74
126
124
146
103
152
178
56
75
163
93
86
144
92
92
109
109
86
97
139
105
64
134
102
126
55
122
110
69
104
125
86
119
86
108
131
126
126
113
88
56
122
67
127
114
55
58
178
100
138
111
99
97
139
79
105
89
126
97
99
83
92
105
93
58
55
92
142
56
93
56
122
162
128
92
97
37
58
138
67
83
58
138
105
144
140
110
126
110
104
55
144
124
55
103
126
152
104
123
102
127
92
37
97
122
104
145
139
105
130
95
101
126
69
139
58
130
56
171
169
139
92
56
125
83
88
78
139
69
93
152
55
92
55
93
139
104
92
105
104
143
158
145
56
169
92
119
127
96
120
128
109
168
164
78
91
104
104
111
138
120
93
106
128
110
122
79
92
127
163
122
139
123
94
98
126
106
91
145
92
122
126
140
102
119
99
178
138
92
128
110
111
67
55
56
67
115
123
69
92
68
58
56
110
178
55
127
97
55
110
88
138
56
93
92
92
88
105
124
79
122
119
93
119
149
114
55
100
105
99
83
92
56
143
77
122
95
55
152
144
55
74
107
139
37
55
152
122
55
105
56
151
123
125
126
100
103
37
138
110
138
99
122
123
105
69
92
91
88
98
86
58
144
122
83
58
69
105
93
92
56
93
95
160
131
56
126
178
127
99
122
122
127
139
94
125
119
126
92
132
106
76
86
126
114
138
97
55
122
109
55
37
146
178
93
37
111
126
55
74
78
110
122
127
67
96
75
126
139
104
64
122
169
122
73
55
130
56
79
93
105
139
98
138
69
138
127
93
146
112
79
58
92
139
169
92
126
103
55
124
109
127
88
178
93
110
67
110
138
128
67
92
104
67
55
91
93
119
92
109
92
80
107
56
149
100
55
102
55
104
92
91
128
58
137
139
55
99
131
126
128
126
37
95
92
158
109
119
91
93
117
92
91
171
67
144
92
99
122
105
105
126
117
110
77
37
97
127
92
139
122
92
138
110
132
168
123
119
104
113
126
130
109
58
145
92
55
79
111
138
76
122
124
135
111
115
112
124
75
139
145
113
111
96
67
105
122
134
77
126
138
105
98
146
92
148
110
180
74
146
143
146
109
91
55
37
93
123
80
69
129
84
121
102
148
98
104
138
92
55
92
74
112
86
56
137
127
136
103
37
130
110
107
125
56
56
55
55
138
79
146
104
97
75
92
95
93
105
55
169
67
56
93
55
56
167
56
92
58
126
92
127
99
69
171
106
99
92
110
69
105
69
139
92
67
37
105
178
122
122
37
171
55
134
128
123
139
92
169
55
140
146
77
37
138
146
110
105
105
144
168
93
56
122
55
123
107
79
180
124
178
178
146
104
122
97
136
139
92
122
134
105
109
104
125
178
58
122
111
127
69
169
119
79
91
129
130
99
178
104
91
86
124
110
130
56
86
55
144
110
79
168
127
56
105
58
77
110
138
55
178
178
137
160
55
126
68
93
37
92
134
171
152
127
122
84
134
128
180
58
111
138
102
139
144
86
138
122
136
93
104
104
86
134
105
92
127
67
140
68
93
84
110
55
126
109
74
103
120
131
67
93
98
105
128
58
56
92
162
104
99
92
56
113
118
136
106
79
92
91
105
111
86
55
104
113
130
132
109
111
132
75
69
145
110
98
101
79
109
104
124
138
96
58
112
135
98
100
115
115
144
144
110
93
126
152
122
58
101
105
122
110
152
67
114
146
152
79
163
118
152
93
178
139
106
75
67
105
55
92
86
107
83
79
37
58
93
126
128
110
126
92
122
140
86
79
37
119
162
112
138
58
93
124
139
144
93
122
111
122
110
144
67
56
99
92
79
138
138
103
56
130
56
138
111
182
115
98
67
138
92
110
100
55
138
168
124
55
67
91
169
91
119
56
125
123
75
67
104
92
152
55
105
123
107
118
105
110
67
144
77
92
112
93
195
130
127
79
131
105
126
92
83
104
69
99
86
126
88
67
134
110
56
111
37
55
149
75
55
126
102
67
126
123
126
105
138
110
118
83
144
114
97
91
132
55
105
122
69
108
81
67
119
122
67
111
121
148
180
139
77
139
122
132
102
55
68
131
92
101
92
81
126
56
128
67
67
55
112
126
58
138
55
104
104
99
74
58
55
56
110
169
144
126
144
93
140
144
92
142
104
105
92
163
107
105
105
98
178
67
92
37
128
55
84
92
55
75
138
140
114
111
168
110
104
37
123
178
92
144
110
107
105
83
111
109
55
92
110
92
67
139
92
107
138
58
130
144
58
37
138
110
56
126
105
86
110
74
77
89
93
127
91
180
105
178
37
124
146
131
104
164
105
127
120
126
37
98
84
169
106
146
55
105
110
69
58
74
106
92
114
117
129
99
55
128
138
55
106
178
156
92
111
107
56
55
99
74
120
105
55
91
169
67
37
107
123
117
123
103
138
37
101
126
124
93
105
37
92
158
92
105
110
110
126
111
146
134
100
103
55
77
110
37
139
122
79
152
104
148
83
178
86
150
55
126
149
37
92
127
126
127
122
114
55
92
109
55
92
109
110
105
137
162
79
146
123
138
109
135
112
102
91
56
91
58
131
93
144
146
110
55
126
103
110
75
105
58
126
145
151
79
144
110
105
146
136
92
152
58
122
110
105
74
80
91
105
123
188
122
105
102
104
139
138
138
110
142
37
152
118
138
105
127
55
101
105
144
37
146
104
110
107
111
134
139
118
110
74
110
55
128
69
110
92
110
127
171
127
110
69
122
118
99
92
178
119
122
138
167
110
37
138
55
124
180
104
118
138
131
97
105
109
109
75
92
110
55
92
105
105
107
128
105
99
92
178
105
58
126
37
127
93
55
124
146
138
128
100
69
77
122
67
68
140
126
93
91
67
135
55
126
74
105
103
119
139
125
169
93
131
139
105
145
139
55
92
105
78
169
69
55
134
55
126
56
110
152
122
93
91
127
92
104
92
117
102
138
55
110
104
127
92
169
134
127
114
86
55
123
140
122
148
37
100
55
109
122
92
86
55
168
144
102
110
119
146
88
89
118
119
140
77
127
178
122
58
136
77
120
135
126
160
150
37
122
122
89
127
92
99
128
158
152
58
110
93
55
58
126
138
107
91
69
178
103
93
163
93
122
93
110
55
139
178
130
92
130
140
105
146
37
75
131
118
139
93
92
92
110
119
105
58
55
163
92
121
74
178
140
67
73
122
119
146
138
127
86
162
105
132
68
169
93
109
56
56
122
92
104
79
109
92
92
126
137
92
146
92
131
79
144
148
126
152
79
84
138
69
79
67
92
69
100
126
132
146
149
123
55
124
69
75
92
110
89
178
126
146
180
110
91
139
128
79
67
126
83
131
104
148
55
112
165
86
134
120
123
156
148
87
149
178
105
152
134
91
77
74
111
118
122
93
92
97
55
105
119
119
67
56
110
93
122
104
139
92
144
93
86
93
67
69
138
55
140
119
67
139
114
56
93
56
150
122
93
121
132
124
134
148
92
56
135
127
77
86
136
105
68
122
55
79
126
87
83
105
164
118
111
145
112
105
93
144
178
126
138
138
67
107
122
123
132
105
134
144
124
98
77
152
55
109
101
86
105
104
126
178
128
79
69
108
138
56
37
110
110
109
79
123
78
130
180
126
86
55
67
58
105
139
188
146
110
88
138
104
124
122
122
67
55
122
127
97
110
120
122
91
127
152
144
92
127
122
105
84
55
110
92
91
146
169
146
146
119
56
56
99
123
92
138
131
119
92
58
148
105
114
93
144
111
107
74
126
58
123
84
104
122
165
68
67
92
93
102
86
79
55
119
55
139
144
93
104
110
105
105
103
55
91
95
79
55
110
55
93
178
92
128
117
105
99
169
55
93
121
139
178
109
55
152
94
58
158
56
150
92
55
92
86
37
131
178
119
163
56
105
105
103
99
56
137
138
152
126
136
127
144
146
99
91
126
104
104
55
92
58
110
158
178
122
126
144
138
74
56
110
122
93
99
93
128
146
167
122
104
92
109
77
99
58
92
56
109
110
139
168
95
178
55
138
105
89
111
55
110
107
139
55
93
101
110
104
119
182
110
91
110
117
86
55
120
122
105
104
93
111
110
178
178
84
110
122
67
109
55
124
199
108
178
103
110
110
128
92
69
122
97
75
86
127
124
67
110
171
93
110
88
74
164
139
92
126
109
83
131
109
68
188
122
127
55
126
73
92
138
37
124
110
91
97
93
67
105
123
58
92
111
104
110
178
92
92
137
104
140
110
102
104
178
110
144
138
55
149
55
56
134
122
74
139
130
138
68
114
124
131
111
55
55
67
55
105
138
112
97
123
152
58
92
178
77
105
122
122
138
103
79
97
108
144
139
101
74
122
130
86
86
146
55
111
56
130
128
127
55
135
137
105
98
86
110
86
124
67
98
83
99
74
110
148
105
140
55
103
127
78
55
122
92
104
169
163
126
93
122
114
104
128
138
111
75
67
99
58
123
146
105
92
119
152
128
88
135
122
104
105
55
148
120
169
180
104
99
107
69
110
79
109
167
110
129
110
127
37
74
122
158
102
69
97
178
128
178
122
97
145
138
100
126
56
124
110
145
92
138
169
58
144
68
169
83
93
139
144
67
97
127
138
126
55
92
104
110
79
58
67
91
144
99
69
78
83
55
132
105
127
138
92
162
105
126
91
168
144
107
104
139
77
134
107
105
128
119
74
69
138
98
55
164
158
92
110
126
110
122
118
74
109
92
55
83
92
138
126
136
67
109
37
105
93
91
169
67
128
127
97
107
146
101
140
139
162
97
84
92
97
69
140
91
67
168
124
132
55
110
92
86
146
99
91
127
137
138
84
109
126
55
110
134
101
140
126
88
141
37
135
61
144
99
178
56
83
122
104
110
105
92
104
139
118
109
91
88
127
92
88
178
110
55
132
67
37
56
92
139
121
138
152
122
78
128
179
77
110
92
77
58
55
138
85
95
110
92
120
123
67
91
37
171
67
112
87
104
110
178
122
101
127
127
178
110
123
132
86
105
171
104
55
126
80
153
93
102
122
146
93
122
106
93
69
105
127
138
138
105
37
122
126
67
58
119
92
146
111
93
37
67
55
100
92
128
104
58
139
91
88
146
86
109
118
110
110
55
146
58
102
110
92
144
126
37
144
152
37
110
152
104
138
138
67
55
79
92
163
138
109
138
136
105
37
77
177
119
138
122
120
37
108
91
91
104
56
158
86
83
127
129
126
145
104
109
118
97
58
75
152
37
126
120
127
91
160
68
67
134
92
79
138
164
86
105
139
67
109
128
69
137
132
115
147
93
92
105
126
110
127
86
124
144
55
122
105
152
138
92
117
84
130
93
92
123
107
96
122
145
86
92
55
134
58
93
97
99
37
100
56
144
67
74
104
69
107
119
55
107
178
89
103
77
55
126
104
114
93
114
110
142
127
104
91
69
126
73
139
103
55
104
99
55
124
123
126
103
114
99
92
136
140
67
79
146
92
113
74
180
123
55
55
55
92
98
92
109
138
55
152
140
93
143
105
56
128
58
146
58
178
99
91
83
79
122
163
138
119
67
102
93
122
140
93
126
87
138
134
122
144
67
138
110
67
109
108
92
151
55
104
58
91
126
138
74
178
137
100
144
123
123
104
111
55
105
178
103
56
104
55
122
67
92
79
111
58
110
77
105
123
169
126
87
146
68
56
139
110
92
128
74
107
109
67
91
92
139
126
98
99
144
122
180
163
128
122
127
164
126
122
103
67
110
105
114
146
138
144
105
93
92
67
126
110
122
178
105
84
138
77
129
92
105
110
128
92
134
55
138
37
144
135
56
103
122
122
107
160
110
84
118
106
180
105
127
56
104
144
130
56
56
169
144
148
94
134
146
139
111
92
123
92
93
126
122
171
67
110
130
165
104
131
138
122
122
92
93
103
109
140
163
151
101
110
126
105
105
110
75
126
126
140
101
92
128
58
148
69
128
67
55
122
110
93
122
99
111
148
158
105
144
89
91
123
99
144
134
120
105
122
115
69
115
138
139
110
72
119
178
122
56
144
127
104
180
67
110
104
105
122
139
77
122
127
122
105
138
126
117
148
92
128
123
126
121
37
93
106
122
110
124
88
130
55
169
92
86
144
69
55
138
83
105
160
139
89
105
110
105
178
77
79
56
140
171
37
139
123
164
139
152
120
77
138
148
148
93
138
75
107
105
86
93
67
126
92
67
92
104
55
134
178
67
78
67
107
97
132
56
126
93
84
139
149
121
136
91
178
110
118
104
92
93
101
178
99
132
86
139
105
111
169
58
110
105
55
126
105
141
138
151
171
100
37
56
178
164
139
67
104
86
109
105
89
144
105
69
122
109
126
109
110
134
124
144
105
105
122
128
111
140
105
119
67
127
56
105
91
55
56
105
146
55
136
149
128
56
114
84
55
56
128
105
104
92
93
55
104
144
56
126
140
74
140
134
152
144
125
152
86
146
135
128
86
55
144
122
105
189
124
122
55
67
107
135
121
75
37
139
146
146
74
121
75
104
106
111
127
79
138
56
108
122
146
104
169
105
178
127
68
56
69
109
126
147
91
135
92
145
92
92
78
104
119
109
69
92
128
37
124
141
56
165
104
100
151
158
181
80
146
37
130
92
56
56
146
92
91
37
101
119
189
141
75
134
37
132
138
182
92
88
91
138
136
122
131
107
86
55
89
56
104
110
95
120
130
92
100
55
178
122
136
144
55
178
77
138
83
138
126
122
119
171
132
93
146
122
128
92
120
127
138
67
87
86
110
110
55
139
68
86
83
151
58
126
122
93
67
119
124
145
169
91
105
92
132
76
127
164
164
168
93
131
67
91
67
69
58
67
105
105
92
126
104
138
127
79
79
93
109
75
79
69
112
147
93
180
146
127
55
171
83
112
92
67
118
110
95
105
79
117
100
104
58
110
96
58
97
105
67
55
122
106
92
89
83
58
123
37
104
92
139
122
144
119
131
67
55
104
152
37
178
106
91
92
130
103
165
86
37
122
92
37
99
144
56
92
111
104
178
120
118
37
92
138
91
97
104
110
167
111
105
37
92
74
140
55
139
79
126
79
91
109
110
127
111
97
146
143
81
84
126
126
91
101
163
37
67
158
87
126
118
152
146
140
131
84
146
92
92
69
67
127
114
124
110
126
97
129
169
169
134
110
103
147
105
105
108
105
107
127
122
150
120
152
92
97
148
92
67
106
104
182
122
55
137
137
104
58
92
167
67
97
110
139
102
104
178
128
126
110
97
92
67
110
98
102
105
58
122
126
110
55
55
110
138
91
99
67
178
171
93
67
37
56
91
104
105
146
55
129
55
67
124
92
67
169
152
138
124
127
122
74
58
104
123
153
126
58
91
89
86
93
138
140
99
67
138
122
152
122
67
108
120
92
146
132
89
126
75
92
139
55
128
110
152
93
104
112
113
95
91
122
123
148
126
122
105
55
111
68
101
58
118
79
168
99
138
103
69
126
144
75
55
69
92
178
110
110
127
120
67
122
67
134
86
139
110
104
104
128
108
106
55
162
105
67
103
105
74
92
105
110
128
171
117
55
110
99
140
169
132
122
77
86
97
77
55
55
122
100
91
122
145
97
93
102
126
58
168
97
91
68
37
99
74
114
180
122
123
139
140
114
105
67
138
138
120
138
111
58
138
129
146
67
93
55
146
138
126
146
178
127
92
152
110
122
111
171
119
56
119
109
92
109
64
178
156
139
122
108
126
69
86
110
138
69
58
104
92
75
111
99
132
92
134
127
148
58
93
130
83
108
138
144
122
126
127
95
134
74
67
178
110
130
64
152
93
112
111
79
101
122
138
105
75
144
115
126
144
92
140
122
141
67
93
99
104
92
92
122
110
163
86
117
77
56
149
104
93
152
122
104
139
67
138
98
98
55
139
92
135
101
110
178
37
134
93
55
95
109
86
149
55
102
105
169
79
93
86
107
122
74
79
139
122
124
95
37
67
169
144
55
89
69
134
119
95
127
55
136
111
140
122
91
93
76
111
93
93
110
58
93
95
92
103
69
97
164
165
138
80
146
158
75
68
123
91
104
104
119
122
91
136
138
114
83
126
67
37
89
108
103
93
92
93
110
92
169
58
109
122
117
106
84
92
79
109
122
122
178
74
69
120
99
126
139
111
111
105
92
55
171
158
144
110
74
138
139
55
139
83
122
139
146
126
134
152
99
110
93
105
97
77
105
37
84
91
37
127
92
93
132
78
178
67
79
56
139
58
107
105
128
110
132
126
131
97
104
55
74
128
123
92
92
69
144
160
89
92
98
140
81
140
122
103
109
135
152
96
67
107
102
91
92
74
121
107
74
134
110
146
169
110
171
171
93
37
112
67
127
144
105
69
95
119
111
92
122
139
92
91
123
144
106
127
95
92
126
86
55
74
92
110
127
145
103
122
69
69
122
93
105
74
79
132
122
123
169
83
67
55
106
126
138
146
140
75
93
91
104
92
55
169
102
91
105
168
122
105
79
103
99
111
99
92
84
88
91
68
55
69
132
112
139
55
81
73
55
115
108
105
91
109
109
126
67
56
122
110
92
168
126
98
75
124
112
105
102
158
105
178
67
75
126
138
99
73
104
115
112
91
91
152
83
101
83
99
114
89
103
75
67
100
102
145
126
92
110
55
55
144
92
92
160
128
92
104
131
126
91
92
126
137
127
182
136
77
126
140
138
104
104
122
143
93
126
148
144
121
91
163
92
79
68
112
67
158
89
72
37
87
79
110
188
138
105
100
122
126
144
84
104
169
56
104
55
122
169
93
67
79
139
55
152
105
93
77
55
55
92
102
107
110
138
92
69
92
112
67
109
92
104
93
58
178
138
105
37
55
146
104
167
93
69
138
124
127
127
58
92
67
146
110
140
134
105
105
75
120
55
137
139
58
91
55
55
67
132
91
122
127
86
83
103
114
122
92
37
58
123
138
169
178
146
104
107
117
127
93
127
79
122
92
146
102
67
138
138
110
75
139
139
127
56
126
126
87
138
110
74
75
126
100
55
75
111
56
67
56
84
91
74
110
97
77
92
122
91
111
98
152
110
89
107
146
110
144
67
110
122
37
86
75
122
91
102
105
126
92
128
99
106
178
138
68
97
93
68
58
107
122
105
68
67
69
93
178
111
55
93
122
128
151
146
37
83
139
124
80
55
93
105
122
110
86
105
165
169
92
105
126
110
126
132
148
83
97
123
37
139
69
104
122
140
180
67
97
78
105
128
55
169
134
69
68
79
67
122
69
168
178
55
105
127
58
104
181
127
138
37
105
169
146
56
138
109
127
127
141
138
61
141
162
110
123
92
110
92
171
124
160
138
99
109
138
124
67
108
178
130
58
55
100
140
105
178
126
132
109
92
55
92
104
128
98
126
122
109
109
92
162
97
55
178
56
171
119
58
56
126
182
110
92
126
92
138
140
58
102
93
55
92
105
107
93
120
105
122
124
110
127
105
111
152
92
122
110
37
111
69
37
75
110
96
91
69
78
110
56
108
140
92
110
92
138
126
127
55
79
134
139
89
124
126
121
78
67
122
122
84
131
107
104
100
104
56
127
92
152
134
144
110
169
178
103
74
126
37
67
80
75
104
122
105
55
120
58
99
158
138
102
74
144
98
120
91
75
180
144
111
111
178
79
110
56
93
110
139
91
93
72
78
122
56
67
180
58
112
101
139
55
138
93
69
74
55
74
77
79
86
126
126
67
134
67
58
79
126
128
146
128
105
128
126
92
67
146
55
138
55
158
58
152
95
125
140
74
110
119
79
58
138
83
92
69
37
74
107
104
119
110
89
137
114
114
69
135
86
152
132
117
100
110
91
112
89
55
92
92
124
106
130
69
105
126
69
109
144
119
142
110
111
103
93
126
93
104
55
75
100
55
105
105
146
55
92
93
107
136
119
137
127
127
67
146
136
105
92
55
122
110
121
92
74
146
128
144
88
121
58
188
103
86
86
148
152
146
140
137
99
148
126
99
111
97
107
105
103
99
92
79
128
138
105
116
110
37
56
79
93
111
105
68
99
122
55
134
126
130
110
55
148
132
122
120
92
128
104
122
109
107
110
104
79
55
134
136
104
126
144
163
126
109
55
144
58
92
55
104
178
92
115
91
138
122
123
92
171
79
86
97
144
132
56
105
138
107
140
138
110
105
77
123
93
89
138
93
169
104
109
93
109
93
178
127
92
146
180
122
119
123
139
104
104
79
119
126
74
164
137
110
114
139
77
105
127
171
113
79
110
93
119
37
114
120
126
128
55
152
56
92
118
69
122
126
119
58
140
84
57
128
178
159
105
93
139
128
126
92
69
110
110
56
132
123
138
58
139
79
67
92
106
105
92
104
180
114
56
144
105
124
72
57
79
179
92
67
169
55
67
99
124
127
109
55
130
93
107
126
55
69
135
109
104
144
126
105
102
169
97
109
122
138
126
139
105
101
93
58
93
144
119
138
112
139
97
83
146
138
129
93
92
134
37
110
160
91
128
56
119
58
91
37
122
110
77
152
94
93
132
79
127
127
109
56
167
86
126
139
105
126
128
37
105
118
67
148
105
86
131
89
171
178
138
168
94
140
88
110
104
56
103
56
130
67
122
104
109
99
56
122
158
127
104
93
97
138
110
110
171
55
92
80
55
55
110
131
93
123
67
37
77
79
92
55
119
93
156
178
122
168
55
152
105
98
99
92
123
127
110
158
152
92
137
111
99
144
152
128
123
37
67
55
122
127
107
138
76
105
111
56
56
68
55
105
92
106
162
110
104
134
162
144
58
144
144
93
92
127
74
111
86
58
127
120
144
130
109
37
138
74
92
105
111
123
104
134
158
124
123
135
119
92
110
131
100
110
171
95
103
93
110
55
110
110
92
55
69
164
134
84
110
69
107
86
105
37
67
124
83
55
102
134
126
138
118
103
56
144
138
112
104
123
109
110
110
127
104
99
110
123
91
55
126
81
55
68
126
75
114
104
158
130
114
150
67
130
138
95
149
110
109
92
114
119
105
140
56
105
91
128
104
105
105
58
121
77
152
105
178
67
93
92
105
146
93
86
120
126
140
98
156
138
55
138
89
140
144
79
165
123
93
98
58
169
104
96
167
92
171
92
101
55
136
55
110
56
92
74
98
77
55
180
148
55
93
114
103
111
137
111
86
163
128
104
79
55
91
140
127
180
56
97
119
106
119
78
137
86
67
92
105
140
92
128
86
102
138
67
138
56
110
114
92
67
37
178
141
99
139
126
110
56
69
98
93
58
72
127
79
88
99
103
144
124
55
77
132
136
94
138
93
83
144
105
135
124
168
37
56
142
99
105
126
92
37
127
127
55
68
83
128
86
58
129
92
111
56
110
107
84
104
163
126
103
58
141
55
126
86
127
110
148
163
110
69
178
123
104
104
145
56
122
99
122
122
97
110
92
55
110
139
138
142
122
92
110
146
139
74
86
92
138
144
178
132
131
105
120
111
178
86
110
131
125
79
37
122
92
55
134
92
111
150
69
103
112
158
122
92
178
105
169
104
67
118
92
132
105
68
55
102
92
55
105
92
95
69
110
139
110
120
107
97
126
109
140
109
105
91
58
128
117
92
167
118
138
58
93
180
92
92
103
126
91
69
108
138
126
108
144
178
119
99
112
55
123
77
77
104
55
55
104
103
146
134
103
127
99
180
119
180
96
75
121
134
69
67
142
118
58
37
122
79
152
97
107
105
130
122
110
111
138
105
58
67
126
105
163
99
140
144
122
126
92
139
103
55
98
103
104
126
56
55
122
58
131
110
79
67
67
67
180
146
56
139
93
128
86
37
152
101
86
138
92
105
55
114
74
83
99
56
86
104
117
122
98
124
141
104
95
109
111
69
84
55
76
152
69
88
92
68
83
91
139
125
144
55
118
178
104
169
58
114
110
110
122
68
126
55
105
110
152
92
178
105
58
119
127
92
61
127
131
162
75
138
118
131
97
148
119
127
122
145
105
123
78
111
180
56
144
122
103
165
140
122
119
140
120
105
139
108
123
114
138
56
101
86
69
92
86
152
168
110
169
111
103
55
171
92
86
68
131
75
105
127
41
130
79
67
127
80
137
112
126
69
55
140
105
75
92
67
178
58
127
134
127
122
168
152
139
131
123
56
77
92
124
69
67
86
37
123
126
122
92
112
110
93
92
37
119
122
109
105
72
158
97
123
122
104
122
122
139
78
123
131
109
92
128
91
79
56
56
114
55
122
122
74
37
88
55
131
178
119
138
146
122
55
164
178
178
111
98
58
138
77
58
103
142
110
169
127
55
139
107
86
55
152
55
74
127
55
146
115
104
86
92
134
132
136
93
92
144
105
69
160
101
122
135
178
139
91
55
120
131
126
138
92
110
37
134
67
89
126
79
55
93
55
122
100
105
110
75
126
138
110
110
55
105
91
58
141
67
78
92
167
93
110
131
110
111
98
144
127
106
102
139
130
93
127
128
117
124
58
146
105
132
99
89
104
83
108
105
127
178
122
110
146
41
119
171
138
152
98
138
55
55
138
122
55
55
146
138
96
110
99
152
140
110
107
67
119
92
100
111
131
110
111
140
141
138
122
158
93
140
79
55
58
119
139
55
55
55
93
97
138
122
58
132
110
144
126
152
138
124
84
93
122
124
101
122
55
139
92
105
91
74
92
67
75
122
83
86
122
93
92
134
69
152
180
152
134
152
77
103
86
110
58
129
164
138
107
108
37
92
139
130
99
120
144
74
146
55
138
92
141
126
120
136
110
91
110
107
171
110
92
126
99
99
130
104
107
137
111
140
124
91
124
118
152
109
56
37
125
92
93
111
68
67
111
67
87
56
110
131
106
92
86
130
67
138
122
140
105
163
76
107
86
93
111
55
128
55
110
83
188
93
109
152
119
58
81
92
124
120
92
122
72
106
139
123
107
180
99
122
182
158
146
55
127
93
110
74
127
92
105
139
123
139
139
114
55
55
56
92
79
163
56
86
139
110
131
122
92
128
140
110
93
107
139
92
138
105
109
67
126
93
104
107
111
119
67
126
152
146
169
92
124
132
67
55
103
93
136
178
118
105
145
128
124
163
95
114
91
147
127
103
131
138
139
92
92
111
58
127
55
138
128
93
92
100
93
144
139
55
108
67
103
107
103
37
149
91
141
67
104
67
138
58
126
37
132
111
119
127
101
120
102
199
122
139
152
139
139
126
84
112
121
92
55
93
131
93
139
168
128
119
67
109
86
87
126
178
126
102
140
132
58
92
132
105
95
122
86
131
178
122
138
137
180
169
92
56
89
79
80
109
74
138
83
178
119
134
126
104
139
97
83
92
109
56
92
140
55
58
148
92
58
105
92
138
75
119
89
110
37
67
92
74
93
55
55
67
138
81
119
122
122
136
122
92
141
126
126
134
91
88
142
105
109
99
179
37
122
137
120
122
75
111
105
118
74
158
92
56
105
127
37
140
79
101
119
104
99
69
104
69
134
139
74
110
37
130
93
123
109
55
121
93
138
92
92
88
88
75
99
74
56
92
109
75
86
92
92
168
160
55
129
67
55
92
106
98
122
169
104
119
126
75
105
92
122
69
126
111
103
138
105
108
139
144
138
134
110
146
106
126
122
182
79
103
86
96
55
178
92
102
197
110
105
109
117
92
79
56
134
127
37
109
110
128
110
168
79
105
67
74
132
93
37
77
79
165
104
126
112
58
146
138
112
138
138
122
136
110
102
110
77
126
182
114
102
92
152
94
95
163
128
123
139
58
55
103
104
110
103
92
92
89
92
86
106
110
75
75
109
146
74
92
56
93
119
67
171
101
140
137
56
67
105
144
92
118
168
129
55
99
67
102
74
69
92
101
128
55
92
67
156
163
131
92
140
92
159
118
55
135
102
122
140
138
67
109
69
55
79
102
88
122
109
144
105
111
118
79
122
99
138
142
122
92
58
142
104
67
104
128
105
105
92
122
128
86
92
124
169
169
56
119
137
92
107
139
127
138
148
101
68
122
119
160
135
92
128
77
77
126
114
127
146
58
56
107
89
140
74
69
104
56
55
126
92
109
55
138
124
112
126
92
105
112
107
138
84
55
81
97
56
128
92
105
123
97
100
115
92
67
105
132
69
89
55
98
105
138
123
87
102
181
105
128
112
56
123
95
158
122
109
58
105
146
142
130
86
84
110
134
58
122
139
139
69
152
92
178
75
171
105
165
139
126
124
123
106
128
126
64
84
126
117
123
92
68
134
156
105
55
55
119
136
118
119
109
67
126
109
106
105
122
126
122
169
178
55
79
109
156
105
126
103
55
105
123
105
134
77
55
158
106
122
55
55
129
180
165
142
119
122
171
126
122
181
128
89
188
105
92
56
105
122
107
127
93
126
93
123
140
117
144
55
122
105
58
69
69
92
84
105
139
105
98
67
119
110
86
169
128
105
169
119
130
158
164
93
55
138
122
79
124
125
122
58
67
86
129
126
67
104
37
56
109
79
139
100
92
74
124
138
55
126
104
107
74
104
169
94
77
146
110
178
131
122
91
107
83
56
56
138
86
126
139
138
156
58
105
152
97
74
169
178
98
103
92
110
145
83
58
169
138
105
92
86
55
178
130
152
163
104
91
152
58
78
55
105
100
86
55
128
132
67
127
93
58
92
55
55
134
111
144
126
152
110
163
126
138
138
92
56
127
118
160
148
122
86
92
122
144
163
171
108
86
123
148
107
138
69
58
163
122
55
118
140
132
94
165
129
178
74
93
92
169
152
178
110
55
55
127
56
138
121
122
81
119
146
74
93
113
92
122
126
96
86
119
86
110
92
98
74
67
171
56
112
68
37
67
74
178
110
126
104
138
104
58
103
89
114
115
110
124
102
139
55
122
55
126
91
156
126
122
146
110
56
134
67
58
126
89
104
130
114
123
67
119
122
138
168
93
56
77
134
169
134
93
145
141
110
122
117
117
102
86
144
92
142
105
118
111
93
91
58
55
110
55
131
58
86
79
106
134
134
122
89
123
75
123
178
136
75
152
55
109
93
147
55
109
56
144
164
55
86
56
152
91
98
58
110
178
105
58
128
67
92
152
92
171
58
144
138
99
55
127
115
138
142
110
58
104
146
136
110
77
129
162
171
58
79
122
83
138
105
138
68
67
138
104
126
140
109
58
58
105
86
146
79
178
92
67
124
37
89
79
131
69
86
83
84
134
137
91
99
89
126
68
74
105
58
83
111
92
112
105
119
124
153
104
55
127
77
84
123
149
122
108
152
67
107
123
55
55
119
69
128
178
146
67
126
122
79
158
109
86
128
146
122
124
55
110
126
139
69
126
86
37
56
88
86
108
124
58
98
126
105
56
139
138
99
104
105
92
55
67
134
104
169
109
110
58
93
163
100
132
92
119
123
119
105
92
168
92
79
92
122
92
123
122
75
122
126
92
69
146
146
92
152
92
126
105
146
106
93
140
77
93
55
113
37
110
58
77
109
139
118
101
92
123
123
77
178
146
72
67
107
69
134
182
89
110
122
124
138
69
55
68
199
122
126
55
55
92
146
104
56
111
126
126
55
134
169
79
140
79
91
136
138
99
58
126
83
122
91
105
114
92
93
69
137
77
123
128
101
55
112
56
110
67
138
163
92
92
126
56
100
75
128
105
55
86
115
92
111
92
122
55
122
119
140
114
104
138
67
58
139
180
75
122
145
55
69
105
77
146
129
79
67
122
152
86
68
169
119
138
138
107
102
122
134
69
92
117
142
92
86
86
123
138
79
158
86
126
91
199
122
151
122
122
180
101
140
126
111
110
139
103
105
171
178
67
92
152
56
56
56
68
104
75
138
163
55
104
110
56
105
126
79
131
72
122
123
103
130
67
97
67
128
144
92
93
178
91
178
132
55
105
91
138
146
149
107
58
37
56
104
83
107
144
138
74
69
37
163
93
127
105
69
110
142
199
92
79
104
160
178
103
127
80
114
138
134
158
126
127
92
126
74
119
93
94
89
122
55
104
106
128
126
146
74
101
67
92
147
169
114
92
131
56
123
135
164
126
56
119
74
79
138
169
110
92
107
56
80
138
55
118
86
105
99
97
107
67
93
89
56
92
118
83
58
122
138
103
75
92
142
92
180
119
98
126
55
102
114
67
37
67
178
111
92
74
122
122
99
101
92
122
163
110
92
133
105
123
103
103
148
110
128
106
98
91
122
139
92
105
126
104
67
55
134
56
110
56
123
58
138
149
92
130
137
92
79
144
178
55
132
122
79
37
68
117
92
128
92
69
86
115
79
152
126
142
138
137
91
86
92
126
37
117
119
119
126
110
169
148
86
138
122
79
148
138
67
110
74
104
55
77
37
139
110
103
37
56
93
134
104
77
108
91
37
105
138
119
92
178
86
55
117
93
55
178
138
92
105
67
92
126
90
146
104
138
58
92
86
136
144
138
55
104
131
93
127
55
55
110
146
55
160
92
138
148
93
122
108
92
127
56
122
111
129
55
110
122
127
110
127
104
152
58
55
110
152
55
102
144
92
103
37
164
131
127
92
152
55
127
152
122
75
134
129
37
80
110
99
110
138
140
104
122
107
149
93
119
127
92
74
171
104
74
126
124
92
139
169
86
110
126
110
171
86
178
55
178
111
125
188
111
93
97
83
122
122
107
148
128
149
98
110
56
100
92
138
178
114
160
127
126
134
126
122
140
105
146
110
178
111
126
126
92
92
80
93
92
119
86
55
140
110
37
55
135
105
110
92
122
107
105
103
103
107
105
110
115
77
91
127
97
68
55
93
124
114
181
138
144
112
141
128
105
74
146
37
87
152
99
91
55
144
144
138
92
113
136
142
79
92
104
112
67
132
131
83
178
37
104
152
108
134
107
79
158
104
86
127
110
117
104
134
67
119
158
188
111
93
55
162
144
178
178
126
128
69
105
55
92
104
103
91
144
93
67
69
146
110
132
181
105
97
199
91
145
92
107
120
91
128
97
178
79
55
152
99
84
67
74
56
107
92
152
56
169
107
74
134
122
105
114
99
110
93
122
69
126
74
56
41
138
127
104
100
68
178
93
122
129
127
144
139
105
92
134
110
92
84
88
124
134
106
107
115
114
67
89
79
105
123
67
128
104
110
171
152
109
138
92
91
110
164
122
56
144
108
137
55
134
56
128
75
105
134
126
55
122
126
89
83
122
152
126
92
105
81
117
134
93
102
134
55
91
98
122
169
138
111
127
55
84
55
158
107
92
92
86
119
140
126
151
69
74
55
105
168
126
75
178
93
93
127
89
104
178
122
86
92
110
126
119
97
56
144
104
146
91
79
69
79
123
122
99
138
163
92
110
126
169
158
127
67
138
74
56
67
100
87
178
56
79
92
110
122
55
104
110
162
103
169
127
103
37
132
55
123
139
127
79
95
152
55
37
55
111
83
102
88
123
95
110
55
158
160
110
117
67
123
119
138
132
138
117
86
92
148
122
151
95
56
144
91
110
178
91
141
128
171
55
137
58
120
97
93
109
122
104
134
152
58
110
128
137
139
135
178
122
160
165
74
171
105
146
93
74
66
126
101
77
55
93
122
144
105
123
121
149
152
122
131
167
93
122
199
37
135
109
122
152
93
92
83
119
92
111
138
126
92
146
127
105
123
94
123
110
93
126
58
163
92
146
56
122
103
110
92
114
55
37
122
139
112
110
123
110
92
106
128
127
58
128
37
67
103
55
84
126
56
122
140
37
80
92
121
142
97
67
58
111
145
128
152
140
93
92
118
119
106
140
93
130
110
169
122
126
152
91
126
93
105
144
105
92
56
99
92
86
126
137
107
137
127
37
108
169
126
86
112
106
119
55
57
105
58
110
122
169
140
92
104
135
152
130
55
128
124
138
144
97
178
112
137
139
93
79
55
164
146
105
58
55
138
92
69
126
163
132
103
93
117
37
93
131
128
92
112
139
105
149
128
104
112
138
178
110
55
92
67
79
109
131
152
67
128
111
69
58
67
158
105
122
55
104
67
104
165
119
105
95
37
67
123
110
56
178
135
109
147
58
92
109
144
128
111
102
128
126
171
122
146
139
124
144
56
104
122
111
140
92
126
95
124
123
101
122
146
55
105
105
67
69
139
140
163
77
92
118
77
139
139
93
67
167
141
126
127
127
139
93
105
111
55
152
92
95
56
109
109
97
178
69
56
86
110
123
134
156
108
144
110
92
56
168
123
92
118
55
126
126
138
92
68
104
69
122
165
103
110
92
152
110
127
128
165
132
119
122
104
97
152
126
110
89
104
112
123
91
99
67
118
132
163
104
158
128
122
199
124
144
123
107
69
86
99
126
37
178
77
118
37
138
67
146
156
78
109
144
148
126
138
79
138
92
92
152
55
178
79
109
140
125
111
178
135
86
91
122
146
91
137
111
79
77
67
127
58
92
107
105
149
92
115
55
55
56
56
122
148
55
106
92
138
171
119
144
126
102
168
105
92
107
111
58
122
130
111
104
144
92
92
110
55
169
164
92
104
67
138
127
110
89
126
92
146
56
92
67
109
55
126
105
106
107
178
92
122
77
75
127
91
126
96
92
110
105
95
103
152
136
163
123
69
180
97
37
169
127
79
124
105
139
119
138
55
92
111
98
103
109
128
148
144
105
162
74
89
178
127
104
109
93
104
117
102
86
93
126
102
91
58
95
69
86
128
75
77
93
92
55
178
67
79
163
114
83
122
92
103
101
96
92
55
139
167
168
119
37
92
115
99
55
98
105
101
127
110
110
55
169
56
92
164
118
55
105
117
140
127
96
180
126
56
121
128
92
144
126
122
103
136
79
122
74
138
144
67
128
92
122
126
169
98
69
168
138
105
105
105
105
79
67
126
69
118
67
78
55
104
146
74
67
110
163
91
93
180
130
98
67
67
129
148
77
115
55
163
37
74
126
126
123
81
101
123
92
94
146
93
113
178
136
178
92
80
105
158
118
144
144
98
107
128
107
37
110
92
92
107
110
86
138
127
120
122
146
68
105
79
124
101
132
110
178
137
110
146
55
58
104
67
92
77
109
92
93
144
105
139
146
103
95
152
101
112
144
139
55
105
68
91
123
199
134
93
69
58
134
109
99
87
37
117
128
56
74
92
56
127
140
124
86
75
169
127
145
84
69
86
107
67
67
148
144
81
134
93
93
111
140
104
67
139
140
86
107
126
74
119
152
77
105
125
114
127
112
126
37
127
55
93
138
127
119
118
119
109
139
139
134
120
110
106
106
58
99
55
92
139
117
68
148
152
122
93
93
149
152
67
74
37
139
55
112
107
104
91
55
158
122
94
152
131
55
92
75
178
120
148
140
127
134
109
103
148
109
74
67
93
160
86
88
178
92
104
138
79
105
146
105
152
122
169
136
55
111
110
104
67
119
126
56
93
152
119
58
56
178
126
79
146
55
169
74
58
103
96
119
92
93
110
103
110
178
109
165
110
92
136
104
92
105
109
105
126
126
131
92
138
125
164
67
37
56
37
105
67
92
104
138
92
110
55
104
93
92
103
55
127
126
122
105
104
122
86
137
69
119
69
105
86
79
37
110
169
152
119
67
56
122
178
138
178
104
67
110
155
74
80
109
138
55
69
88
110
67
110
144
55
55
138
55
91
171
152
92
55
192
104
58
93
100
58
129
105
85
61
89
75
55
67
92
119
98
111
103
163
88
132
131
37
167
152
91
107
140
124
110
91
92
68
67
132
169
122
146
144
158
126
146
138
110
146
126
123
111
149
188
122
124
93
158
111
110
138
37
105
67
83
122
93
55
55
129
55
199
93
138
69
105
139
136
86
112
139
122
119
69
130
154
132
111
127
56
92
119
138
92
105
123
80
68
92
77
138
169
109
94
180
37
55
128
104
37
93
122
104
127
105
152
135
171
91
108
101
162
146
86
93
126
58
178
164
83
91
178
146
55
74
139
122
55
104
110
103
123
107
119
92
92
146
138
109
67
91
127
139
122
103
122
92
84
126
104
107
169
55
141
93
123
92
144
111
112
100
148
55
69
126
67
67
105
58
180
110
123
109
139
124
119
139
103
122
128
178
88
93
107
121
109
178
93
92
126
110
105
92
69
126
105
144
122
79
119
55
134
67
171
68
55
55
160
168
74
146
89
67
109
110
132
111
86
114
105
130
115
105
97
67
83
119
122
104
109
74
138
134
126
126
55
104
127
110
122
150
122
103
199
138
92
107
88
138
111
92
93
146
139
100
106
136
56
67
105
86
116
68
122
125
122
74
55
138
106
178
130
139
77
124
55
137
55
77
96
122
122
142
104
127
122
138
105
128
127
107
119
105
178
110
92
145
134
83
92
146
55
93
171
107
67
123
109
56
144
127
160
110
92
169
86
178
56
55
55
86
146
132
119
110
92
67
92
136
128
56
178
165
55
103
104
128
96
138
105
136
139
126
110
122
92
169
104
96
104
79
144
139
168
110
105
168
105
58
103
105
120
130
108
56
149
122
131
130
98
110
111
120
92
37
111
122
55
84
69
67
122
93
104
148
69
123
127
138
128
92
144
105
99
112
160
92
93
162
139
74
120
144
91
141
122
130
178
119
89
126
132
113
58
163
80
99
37
108
55
164
55
122
148
119
92
109
55
68
95
56
93
139
93
37
74
55
104
79
68
137
110
134
178
92
55
67
122
178
92
86
120
148
128
92
129
77
77
137
92
37
138
86
163
69
99
69
122
138
104
55
55
161
55
93
122
79
109
56
106
118
130
92
139
130
110
86
91
71
103
139
69
56
126
92
83
165
98
104
37
178
144
107
93
104
134
92
67
126
127
75
128
110
69
134
55
112
144
138
197
37
95
123
152
126
67
127
77
92
105
109
132
146
128
138
79
118
142
126
86
136
144
83
130
87
55
128
107
92
110
55
111
100
122
109
131
37
144
140
137
58
138
105
126
152
79
128
108
80
55
117
138
55
138
57
146
114
99
67
79
67
119
107
58
91
92
119
92
138
163
104
103
37
105
55
75
127
146
138
107
138
123
92
130
105
115
122
127
138
146
93
109
69
56
96
164
103
37
78
119
55
76
55
83
144
55
102
104
99
126
132
134
110
67
144
55
126
144
67
139
100
92
110
91
81
56
99
105
110
126
108
58
136
124
127
126
152
169
134
106
98
122
149
99
138
139
81
158
105
104
104
92
134
126
58
55
144
92
86
110
144
119
123
125
146
106
152
144
109
105
180
138
119
144
149
119
93
67
76
92
134
110
140
178
134
126
122
101
77
139
139
104
126
64
126
56
178
92
144
144
138
146
91
93
135
104
79
69
91
117
87
130
152
104
146
126
135
91
132
127
122
144
104
180
122
92
148
79
149
123
92
137
126
122
100
106
115
110
146
132
160
99
56
158
134
122
98
180
178
124
104
56
55
86
132
160
139
92
146
112
169
105
107
81
107
110
138
92
182
122
69
98
126
92
69
110
128
80
79
152
93
169
93
37
178
105
67
139
77
110
171
169
76
134
126
142
56
105
169
55
168
120
169
103
77
91
134
56
55
105
67
55
110
77
92
129
139
112
169
140
138
127
164
119
37
91
127
137
93
130
104
74
129
122
152
127
178
148
139
119
89
146
110
126
91
92
56
147
105
178
110
109
98
107
75
55
110
91
103
122
79
138
104
104
110
56
99
126
55
138
162
110
74
91
126
110
107
89
58
55
122
105
104
55
128
55
127
138
122
122
144
104
100
104
107
104
86
105
92
77
110
180
122
136
142
37
103
137
92
79
107
104
123
75
128
111
158
123
67
37
169
106
137
169
119
119
78
88
55
97
91
79
126
92
92
105
110
139
56
131
114
105
69
111
136
126
37
148
79
136
78
91
169
98
119
75
92
164
127
134
105
103
69
138
104
128
139
79
105
92
67
129
103
110
139
131
37
110
98
151
99
126
92
74
105
56
55
139
138
92
122
119
93
59
68
110
140
137
178
91
77
121
126
122
138
91
128
137
97
110
56
84
107
140
92
93
111
99
152
146
92
55
120
122
83
149
117
67
128
109
107
112
122
102
67
95
144
92
74
144
122
99
69
99
136
126
107
140
58
192
92
110
138
110
110
109
91
144
79
105
127
122
126
67
55
110
119
148
79
110
134
129
104
67
169
146
130
127
55
55
97
105
55
56
139
109
67
105
86
123
69
110
74
105
110
110
67
110
67
92
141
110
158
126
128
55
152
169
138
117
58
180
91
123
86
110
67
67
123
135
110
126
146
104
105
140
80
92
56
124
115
92
93
109
37
120
163
127
121
127
104
69
122
92
106
122
128
138
76
74
123
68
110
169
105
92
140
163
105
128
110
131
75
75
128
67
139
104
56
67
56
77
56
81
84
114
56
79
123
122
122
138
55
127
105
74
94
169
178
158
169
163
58
127
105
98
93
67
92
141
139
69
72
67
69
92
180
93
105
138
78
108
93
134
127
67
121
119
118
92
178
55
122
111
92
79
74
77
107
104
104
121
105
92
91
101
92
69
138
165
134
158
92
67
77
158
123
86
55
127
110
139
126
78
58
69
122
103
117
111
55
122
69
122
122
131
105
93
56
128
139
99
67
107
74
67
119
122
158
127
138
104
88
86
146
105
178
92
152
91
55
128
146
55
107
134
117
103
124
169
139
37
75
122
84
83
126
110
139
120
126
98
124
68
162
107
92
126
168
122
104
122
37
92
79
110
69
92
69
37
56
126
162
127
126
103
97
100
106
105
126
113
141
58
128
92
137
92
135
88
119
86
156
99
55
128
55
79
37
109
144
88
100
105
126
106
112
165
119
58
114
119
127
93
105
122
68
86
106
140
178
122
110
130
122
56
122
128
105
138
126
169
100
169
99
68
104
109
104
122
144
88
67
91
77
139
152
139
123
126
56
140
140
134
55
67
83
67
113
122
140
138
129
119
142
55
128
130
67
84
138
58
77
105
123
93
37
169
58
55
105
178
105
84
105
92
83
179
113
122
163
110
128
144
146
69
55
110
123
110
139
163
55
55
77
79
93
55
178
122
37
97
111
92
77
122
77
126
134
93
138
91
105
128
140
86
165
55
55
55
138
109
37
55
114
140
109
56
81
98
139
86
84
110
92
136
97
107
152
91
104
74
119
152
92
110
105
144
92
110
86
139
91
74
105
37
146
109
139
126
111
55
58
67
105
144
56
163
111
156
67
67
138
55
55
67
56
110
92
105
93
138
68
126
180
99
67
95
139
80
79
92
178
104
75
144
148
92
110
84
92
126
178
106
97
55
122
134
126
104
105
151
148
86
101
67
152
104
132
69
69
75
92
122
120
119
77
128
68
139
98
123
75
178
110
37
74
171
104
163
110
136
86
75
100
69
148
128
122
103
58
110
37
148
69
105
103
86
92
109
128
169
121
77
129
101
99
37
93
56
67
123
134
104
139
178
122
126
126
55
119
55
131
92
122
122
80
67
138
110
178
138
146
126
105
56
127
91
92
127
56
118
86
128
158
152
73
69
139
67
104
124
67
105
99
178
104
92
145
55
140
93
84
144
199
86
128
107
74
126
56
120
99
110
128
93
131
130
67
122
127
130
111
122
77
152
69
56
122
110
127
127
83
83
56
138
105
119
151
141
104
110
144
68
146
104
74
100
146
122
125
136
169
124
92
127
98
103
55
86
138
58
139
133
122
104
123
130
79
86
105
136
105
37
171
149
105
75
123
138
92
104
55
97
104
138
67
77
107
55
123
110
109
55
140
128
102
58
122
104
109
144
139
77
111
83
123
67
126
64
158
113
128
55
137
93
117
92
122
56
55
55
103
92
139
92
74
103
126
97
86
93
83
102
37
92
91
128
92
75
138
97
69
104
138
127
105
100
110
98
111
145
58
122
83
110
178
123
122
126
97
77
105
127
122
92
91
164
128
144
139
126
55
156
92
93
111
146
92
110
127
83
55
79
79
80
92
122
77
55
55
110
55
110
100
109
92
105
58
91
123
69
55
122
123
77
55
139
119
181
93
84
178
68
151
171
115
99
101
102
126
132
139
109
75
163
92
158
139
123
130
91
109
99
79
105
167
134
148
144
67
84
101
131
110
148
92
94
56
119
105
55
126
139
74
97
55
134
93
92
67
152
110
101
103
73
144
135
111
139
123
126
136
139
92
67
127
122
74
93
118
139
122
110
55
169
127
122
55
144
92
67
103
69
119
110
122
106
128
124
138
105
139
55
160
169
122
93
114
122
55
142
182
56
119
37
99
146
84
129
148
58
163
140
158
58
122
74
103
55
37
55
37
78
56
163
126
127
126
105
131
80
93
126
119
98
126
131
56
103
108
108
83
110
95
67
69
75
92
109
91
92
122
109
89
109
139
103
83
127
105
107
77
113
110
182
138
152
56
110
92
110
122
55
178
56
108
146
91
128
55
106
37
67
169
83
55
92
55
110
58
119
127
58
140
56
93
92
119
106
102
127
126
55
111
152
92
98
101
56
55
88
55
122
91
146
126
131
132
140
129
110
112
138
181
138
88
124
134
146
104
67
94
160
99
69
180
124
124
105
92
79
98
98
128
81
110
127
83
178
144
86
163
67
56
104
126
104
127
130
110
140
91
104
119
75
92
144
126
92
139
138
124
139
127
91
58
92
56
102
88
100
110
137
102
77
55
139
110
132
55
55
92
122
67
168
178
58
152
37
162
118
77
74
67
79
111
110
55
110
104
98
55
131
138
55
69
124
104
139
113
58
152
131
178
79
93
128
119
78
74
109
127
67
93
138
98
37
138
110
92
95
92
178
37
67
138
84
105
169
127
119
144
74
124
112
114
178
144
111
97
104
140
139
101
126
67
104
127
77
74
55
69
93
105
162
58
137
55
86
75
92
67
109
136
126
139
104
164
139
55
92
171
55
102
99
68
105
138
171
138
72
113
93
109
127
146
58
79
139
129
69
56
108
138
99
138
67
105
122
123
140
152
128
37
140
97
88
158
93
112
160
86
110
123
130
56
144
127
56
122
134
92
67
126
83
55
58
138
158
135
148
79
77
110
169
104
68
67
130
111
127
77
73
152
105
178
67
92
55
106
129
152
37
123
74
177
126
128
55
178
61
74
55
128
74
37
97
138
122
105
119
138
126
171
126
139
119
93
146
104
68
163
106
110
138
138
110
128
139
96
93
77
128
105
122
87
126
79
138
160
107
122
126
91
87
74
86
144
86
105
93
121
107
91
68
119
106
126
105
152
56
55
102
92
92
67
74
119
56
128
178
91
37
171
110
110
92
109
55
138
105
92
69
126
67
68
86
84
92
119
92
67
162
55
124
104
99
111
122
163
138
145
152
123
160
69
148
113
192
129
86
92
119
122
83
164
86
107
92
119
89
103
55
152
79
58
56
139
91
69
92
55
128
134
105
67
58
111
144
130
92
67
110
67
105
118
103
67
86
92
138
79
69
122
119
139
92
178
123
93
139
145
126
74
127
37
123
119
178
138
139
105
92
55
146
105
109
168
122
146
104
146
138
139
68
126
122
114
122
92
134
55
105
110
148
79
83
55
178
182
126
92
37
101
146
144
104
92
77
56
182
83
122
92
58
93
122
104
67
97
84
56
105
98
111
115
67
86
103
93
86
105
118
92
139
55
169
122
55
123
64
144
84
104
86
122
105
98
92
37
107
84
164
77
128
97
92
74
37
122
101
138
199
105
97
178
164
165
134
55
110
77
67
168
169
92
139
103
91
92
101
56
127
84
92
126
168
117
107
79
37
91
99
122
77
93
99
75
146
138
56
56
55
83
105
77
140
180
152
37
111
136
140
55
146
37
122
139
91
147
92
110
97
192
122
126
58
130
162
37
111
37
100
84
130
148
122
163
110
86
110
101
107
163
69
136
109
105
160
115
132
104
105
118
107
87
65
100
69
92
138
126
142
126
93
128
55
122
127
138
86
55
182
91
104
37
110
55
93
93
123
126
114
104
83
104
55
77
67
67
86
109
136
152
112
99
127
74
89
58
67
67
93
79
78
180
83
69
107
137
119
138
126
100
146
99
105
93
93
100
122
58
169
118
139
104
105
104
86
122
127
120
58
145
114
104
37
124
169
124
127
126
92
67
122
127
138
124
56
67
127
126
132
167
97
77
122
104
143
92
104
126
55
146
171
105
118
110
178
127
149
111
97
55
139
121
107
169
151
83
98
142
168
138
92
171
131
126
103
120
56
55
136
58
122
163
168
111
55
79
128
56
139
122
139
106
74
37
37
92
118
68
108
55
126
150
169
75
92
171
124
105
130
67
56
105
138
104
108
58
131
74
178
92
58
110
110
178
74
99
106
75
74
55
113
122
199
92
67
37
37
158
105
92
121
169
86
178
139
117
93
83
122
146
98
138
178
92
92
178
123
79
111
144
86
127
119
105
105
37
105
111
92
110
103
110
168
55
169
130
91
134
165
138
113
68
98
69
163
55
55
119
105
87
99
139
86
99
127
93
122
104
67
55
104
55
69
86
104
55
123
58
104
92
92
140
79
75
99
91
110
122
55
146
162
55
92
75
67
86
79
126
95
139
55
111
101
92
56
169
102
111
92
85
104
55
92
37
137
180
92
107
92
93
146
158
91
127
122
79
138
127
92
56
144
138
111
91
79
55
139
138
131
124
124
105
55
167
69
127
102
156
69
56
110
84
37
169
108
93
131
144
168
92
101
138
37
126
152
127
92
111
122
132
180
141
69
95
56
123
79
69
146
120
127
145
109
101
118
68
148
93
55
75
89
55
146
123
163
93
92
105
181
105
129
74
84
55
152
139
132
152
126
79
103
126
171
117
105
182
92
67
91
101
126
99
100
55
135
67
86
107
110
126
67
123
86
97
122
109
55
93
127
112
41
104
178
127
130
86
138
55
105
108
86
165
140
122
110
37
113
92
110
92
55
103
86
139
93
77
138
105
74
139
122
119
92
158
97
58
84
74
56
144
168
105
163
128
178
128
67
122
105
138
69
74
130
122
124
126
110
144
126
145
122
102
110
108
58
55
92
86
55
83
69
134
92
58
126
152
128
98
152
110
179
119
119
37
122
110
89
110
144
111
126
93
165
92
86
81
132
74
122
122
67
138
92
148
136
58
102
103
152
74
105
128
56
152
168
56
55
126
92
67
120
84
126
123
56
144
105
93
99
137
86
110
171
89
105
117
118
93
104
105
178
138
107
95
134
110
77
123
98
152
86
122
67
105
56
132
178
74
178
55
110
67
122
114
164
138
106
58
67
158
37
81
55
97
130
89
64
127
93
106
112
108
128
81
144
168
105
136
123
67
74
103
56
138
122
122
126
55
126
96
110
122
128
55
99
122
128
165
58
110
122
69
110
58
67
178
75
55
158
55
67
146
128
55
86
105
86
68
55
93
75
58
111
37
130
128
110
128
126
100
122
110
127
119
105
74
140
109
79
77
178
127
138
111
110
55
67
111
56
93
128
56
167
130
138
104
122
139
96
86
120
140
74
126
81
169
128
126
122
110
169
37
92
37
126
144
146
75
104
106
104
131
126
110
119
55
178
141
37
91
138
55
112
105
128
178
67
180
138
75
151
111
121
56
148
55
178
89
67
110
128
126
77
77
92
139
178
126
123
106
126
122
77
98
55
128
103
114
132
110
99
132
136
97
111
138
67
126
151
79
69
56
199
77
132
120
140
105
109
122
56
162
178
105
67
83
74
178
69
138
73
146
55
58
126
67
88
69
92
55
138
122
88
37
92
100
109
68
122
102
68
94
77
127
92
97
92
55
67
92
146
169
158
79
58
111
94
55
158
64
178
37
101
55
107
105
148
182
128
112
93
92
79
92
107
110
92
102
75
144
95
79
110
55
110
74
84
168
93
91
58
92
126
134
120
58
137
104
105
74
91
95
92
144
56
55
144
114
92
104
139
146
145
114
152
67
134
122
169
99
67
162
92
140
92
120
115
58
130
86
105
37
126
58
122
146
138
122
102
99
122
55
105
92
127
117
111
105
99
104
92
78
55
140
84
169
98
124
138
92
111
58
107
104
138
55
130
92
103
110
132
77
122
69
104
106
105
104
136
97
110
168
178
105
144
79
120
77
122
105
105
178
110
139
127
86
55
105
68
86
114
134
126
55
92
122
80
103
88
105
86
140
56
105
110
132
55
178
126
138
55
91
78
118
122
138
99
177
140
111
138
86
104
110
55
105
149
104
178
75
55
110
123
122
92
67
152
158
138
122
110
77
55
126
92
104
104
139
126
134
128
58
126
55
86
67
138
123
55
110
139
124
149
37
67
37
144
109
92
92
105
56
168
110
58
104
102
138
145
103
56
87
139
99
55
111
78
110
117
56
128
37
138
64
92
110
55
122
55
105
111
83
123
110
152
104
131
178
105
146
121
56
144
127
67
110
139
169
77
72
109
146
37
138
98
105
109
105
123
105
139
180
81
117
158
92
130
104
107
144
144
67
159
124
105
105
107
91
89
79
79
122
138
146
93
67
69
178
139
37
139
122
122
125
134
124
104
83
110
104
108
99
147
58
55
126
110
138
122
56
128
79
37
91
144
122
169
77
69
105
110
55
160
102
96
139
55
92
86
112
93
105
58
93
105
152
55
129
152
104
55
83
148
134
107
92
106
97
92
67
126
92
110
55
146
110
126
93
126
104
104
144
139
118
92
131
130
93
148
92
67
67
84
92
107
178
92
104
138
123
124
110
152
74
127
126
111
119
155
55
188
37
115
106
127
120
144
55
110
105
92
79
109
67
75
139
122
146
167
126
136
69
113
139
126
37
105
69
104
91
152
134
112
111
86
93
55
106
92
69
121
136
92
126
86
37
122
131
95
169
137
121
55
152
76
88
109
92
126
131
109
126
152
92
84
83
128
37
135
56
132
55
169
142
146
110
67
55
110
148
92
148
169
140
122
119
140
37
105
126
55
110
69
109
105
138
110
169
148
93
92
178
110
67
75
91
104
126
93
137
104
58
162
102
122
160
140
104
92
140
99
91
120
37
119
93
123
58
180
58
134
102
91
115
112
134
122
110
110
77
126
72
37
110
107
119
74
56
122
86
162
75
126
79
127
126
132
99
178
139
138
119
91
178
124
114
127
56
67
58
55
107
126
122
160
122
112
102
169
152
79
69
55
104
126
122
126
75
138
99
110
126
188
92
104
122
92
122
189
55
92
112
171
92
110
92
122
55
91
100
92
105
55
126
138
89
139
126
107
111
67
126
142
92
126
178
149
92
141
122
55
110
81
104
109
151
162
107
105
58
104
126
111
110
92
122
105
124
79
152
140
105
136
152
110
58
139
74
146
58
128
128
75
37
127
105
74
98
69
68
124
67
134
122
107
146
100
119
93
65
58
124
100
122
93
146
105
37
102
162
74
55
148
105
131
67
93
139
146
74
55
102
152
92
146
139
126
135
126
101
105
122
37
93
146
169
138
93
146
56
105
123
88
105
78
127
105
138
77
105
55
105
55
138
137
76
99
124
104
105
122
69
67
67
86
139
137
127
124
110
111
125
110
92
92
92
56
92
92
64
178
148
144
110
136
93
56
81
126
109
146
83
92
103
107
107
168
178
104
69
93
122
171
180
55
138
128
138
56
105
83
55
79
72
138
86
110
110
58
77
140
130
140
126
56
110
95
93
55
79
138
92
92
124
126
138
104
69
139
83
55
92
109
98
67
37
126
104
95
92
69
114
146
141
58
83
67
55
98
67
126
100
105
144
178
110
192
109
138
139
126
103
92
68
97
92
92
105
149
104
105
115
68
109
92
122
67
122
159
139
158
107
103
144
86
37
122
127
105
111
105
37
110
56
79
83
58
86
126
127
138
55
126
134
105
104
126
55
118
126
92
86
114
110
98
56
92
178
58
135
99
77
86
126
55
99
178
86
67
120
79
84
81
92
96
103
99
79
79
126
119
132
122
111
86
110
110
79
105
105
132
37
128
122
110
110
75
94
75
103
104
144
68
105
79
130
92
56
107
108
126
111
122
122
178
128
75
122
140
92
111
136
97
99
56
86
120
55
92
126
148
178
75
100
134
142
92
55
148
119
92
58
77
56
92
119
58
56
58
81
122
122
93
158
93
92
105
93
103
148
69
89
74
104
93
180
56
103
83
114
124
56
126
67
146
158
140
110
123
37
82
79
131
146
152
138
105
134
139
74
126
37
105
127
117
178
83
69
126
171
92
102
93
110
130
126
69
93
123
124
111
122
122
122
84
112
152
140
178
99
56
132
127
124
138
103
130
100
105
138
138
55
92
156
137
123
144
100
158
56
84
92
123
79
139
152
137
126
142
134
152
69
124
105
56
126
122
138
104
105
178
67
130
104
91
126
169
69
81
91
86
110
97
144
91
123
117
67
146
37
74
92
128
92
168
105
93
139
138
55
109
141
92
158
81
122
107
178
92
123
122
178
74
138
163
109
103
67
106
126
110
129
140
69
127
86
123
139
99
69
104
146
105
93
98
123
145
126
144
58
92
142
79
83
128
169
93
105
69
169
131
122
122
122
110
138
152
104
108
138
74
104
56
105
126
136
55
126
99
119
92
126
180
55
93
122
105
110
69
122
67
84
110
122
180
113
104
104
37
138
122
67
79
123
105
123
64
110
131
122
91
152
105
55
110
178
109
135
55
127
103
58
89
178
93
140
105
55
37
131
67
105
128
139
127
37
103
67
55
92
105
112
169
104
55
92
94
99
164
75
122
87
122
105
67
138
103
126
83
110
126
107
77
114
110
118
56
91
145
139
104
132
171
105
126
124
98
55
138
56
119
122
69
152
92
75
122
77
55
104
139
55
101
119
93
103
122
138
79
69
110
75
122
138
167
99
146
92
107
138
110
144
132
96
105
93
98
105
79
37
138
104
77
127
126
164
122
139
119
106
117
55
67
103
77
110
58
75
145
106
104
138
178
112
37
122
126
126
110
105
134
147
79
74
101
130
122
86
76
105
92
109
77
124
103
168
163
93
56
139
93
103
163
58
92
107
139
58
69
55
126
144
83
135
58
162
74
92
126
126
169
168
92
79
99
108
126
179
93
93
127
67
138
92
67
103
146
55
138
104
67
139
97
91
138
55
93
110
126
58
128
56
117
74
169
111
86
104
131
114
105
92
127
58
167
165
162
111
67
67
92
140
58
121
138
105
110
110
55
110
103
92
110
86
103
115
37
89
56
105
102
57
127
159
178
119
122
119
92
79
77
56
139
58
56
139
55
138
37
124
168
56
112
138
37
104
110
92
55
118
178
89
111
110
97
130
37
118
37
110
93
106
136
58
152
169
126
92
67
92
91
58
124
55
99
110
127
104
55
126
56
93
105
104
122
55
126
69
110
92
131
92
67
107
84
55
139
138
120
92
67
104
97
146
163
55
86
103
93
169
104
162
92
138
129
163
110
98
105
130
152
127
122
144
178
171
148
128
55
113
130
122
89
64
55
110
168
134
137
105
55
103
102
98
110
93
146
162
78
58
37
169
111
168
138
88
146
118
110
93
56
69
92
127
138
55
144
58
152
55
138
98
144
107
139
137
69
158
128
55
139
91
79
92
58
127
144
93
105
135
92
106
104
127
99
79
104
178
55
55
105
98
126
94
122
103
105
138
104
107
105
69
120
69
37
169
111
146
97
56
126
139
105
122
126
69
58
104
111
104
104
119
131
124
122
138
104
86
135
118
104
104
92
126
126
107
110
105
105
67
122
98
103
140
110
37
98
178
154
139
104
105
106
37
111
58
127
67
67
93
75
131
110
75
104
55
139
92
83
122
136
86
74
142
138
37
69
129
106
103
140
144
103
130
75
139
120
126
77
134
112
105
126
86
152
104
55
128
55
160
86
69
144
91
100
132
104
104
128
96
132
55
111
138
67
131
86
178
75
146
112
77
140
69
117
105
55
122
110
152
105
101
140
128
93
167
102
118
169
106
130
163
92
138
107
178
69
86
123
137
75
110
144
93
55
112
139
126
67
112
128
122
126
126
77
110
126
79
122
178
56
152
74
131
126
55
107
111
92
58
106
110
139
105
99
55
56
160
123
101
75
146
77
138
55
178
122
152
126
92
120
140
91
105
106
122
169
150
146
105
55
58
122
138
105
182
105
104
79
123
126
126
55
114
123
132
80
110
114
114
138
134
178
122
138
37
148
92
126
132
99
92
101
92
140
101
138
92
100
126
55
110
130
106
67
105
148
123
122
180
122
92
152
103
138
111
158
92
92
111
105
122
152
69
167
112
119
104
69
55
79
122
92
128
178
93
122
140
92
55
83
86
78
111
92
178
93
92
140
104
178
113
126
69
86
122
120
119
110
146
158
37
107
56
103
122
138
127
110
161
37
92
58
123
162
92
106
110
75
128
105
123
55
105
67
146
109
106
56
104
125
110
156
144
75
138
144
138
74
89
138
142
168
165
139
56
101
115
127
74
79
67
58
93
67
105
67
163
79
57
178
55
55
144
137
55
123
128
122
145
138
152
178
127
104
158
134
105
111
56
139
126
109
92
98
55
178
93
120
83
75
109
105
99
108
58
99
55
93
105
92
55
93
152
94
74
126
67
168
92
75
74
74
126
104
100
93
83
92
115
160
110
111
58
126
119
105
126
67
110
110
105
111
67
138
119
56
123
75
93
127
56
130
144
152
138
86
147
169
138
98
55
138
55
104
110
136
79
107
67
123
152
152
37
110
110
110
143
126
79
146
79
92
93
77
110
128
109
118
169
127
58
127
138
164
134
104
93
89
130
74
92
67
104
67
98
92
152
37
182
79
98
99
100
67
105
169
119
86
74
147
127
93
55
105
93
67
110
105
110
138
92
138
126
105
93
160
127
144
69
93
111
102
102
148
139
72
168
92
122
109
122
119
99
144
93
148
105
138
111
69
123
104
107
130
92
162
92
75
67
139
164
178
37
89
122
111
56
158
164
110
92
145
95
55
115
171
108
146
138
92
103
139
123
104
99
110
138
102
115
67
110
128
122
124
92
55
103
100
132
79
110
97
131
134
122
91
103
119
116
105
122
78
86
104
144
55
144
55
126
128
37
144
69
110
122
93
141
105
110
109
146
92
83
91
122
141
110
101
92
77
110
86
69
138
93
178
83
67
37
55
122
104
139
61
144
144
68
152
178
58
105
124
144
74
77
68
100
88
178
56
99
105
91
110
178
132
93
146
67
110
168
91
104
105
102
114
122
110
93
111
89
37
104
97
67
101
111
119
139
124
61
95
138
93
129
92
138
132
138
37
41
105
74
69
79
122
122
55
104
129
112
126
105
67
131
126
138
158
93
92
104
79
56
169
134
141
91
126
93
93
92
126
144
138
93
138
110
74
105
145
69
93
67
146
77
110
74
101
168
55
55
138
55
119
122
97
110
131
124
123
124
124
107
126
119
67
130
122
139
127
115
138
123
110
67
67
165
105
91
122
144
110
144
92
110
92
104
55
92
55
105
122
127
114
99
105
37
37
110
117
110
67
107
178
119
105
101
92
126
68
122
105
116
107
74
124
134
55
152
146
99
69
101
112
104
146
37
67
110
118
105
84
67
140
122
101
169
118
135
55
89
58
103
37
120
169
122
107
132
103
124
86
92
122
55
104
79
119
123
127
93
119
55
117
158
37
104
178
110
178
104
124
138
178
130
92
121
110
114
102
122
169
169
152
67
110
113
163
107
69
88
93
91
110
80
104
126
132
92
131
117
99
79
56
122
55
94
127
88
160
144
55
104
145
138
103
99
120
110
105
105
110
105
92
122
106
93
122
125
140
104
127
126
92
88
128
122
152
131
146
86
56
152
92
92
103
37
122
75
113
126
92
105
55
77
152
126
138
68
122
74
140
97
122
78
158
110
67
93
105
122
138
144
107
123
67
131
130
92
55
152
67
91
130
105
37
110
92
56
110
91
56
178
69
37
146
110
110
92
152
119
126
58
140
169
126
110
122
171
122
140
110
168
103
55
140
97
69
56
84
56
91
122
127
119
117
93
99
58
101
91
93
178
118
152
122
112
98
56
110
91
64
88
138
105
122
56
169
122
69
104
58
115
101
102
91
55
169
55
117
83
146
55
55
118
137
95
112
147
55
110
107
126
93
37
55
105
37
152
110
92
152
55
111
75
92
126
126
93
93
127
134
107
92
136
79
92
56
131
160
114
111
58
93
75
178
125
118
118
55
128
123
152
117
91
110
115
164
58
56
92
146
138
37
107
56
127
146
180
128
131
105
92
122
111
115
188
139
139
92
56
168
93
92
136
79
105
93
160
146
140
104
99
154
126
104
86
112
127
122
104
138
55
92
138
148
110
37
106
92
139
122
126
86
110
111
86
77
92
104
83
123
135
104
74
109
119
169
92
93
124
138
127
126
144
104
115
89
130
146
103
152
180
107
126
55
89
94
127
146
69
158
69
67
123
110
109
152
56
91
103
152
107
99
149
168
141
123
119
92
67
139
122
93
111
139
110
126
37
56
103
56
101
135
92
104
93
111
126
127
110
55
127
177
132
110
96
110
111
127
105
122
130
75
128
126
84
122
120
86
69
92
79
126
92
86
128
92
138
92
134
122
56
122
134
127
105
117
92
119
56
126
122
169
139
126
122
92
126
115
152
93
135
123
119
123
69
169
128
74
138
138
105
105
164
118
180
178
58
83
67
105
138
120
93
103
67
126
110
92
125
100
69
105
92
91
180
111
69
139
110
86
92
127
140
178
168
128
119
111
92
110
73
119
132
126
171
122
95
73
58
79
105
138
86
148
182
152
92
69
178
139
122
123
165
126
111
154
158
83
138
56
167
92
122
131
92
67
109
106
58
139
106
120
105
86
111
92
108
126
101
67
122
55
93
122
127
110
123
123
141
126
67
138
131
56
138
110
169
110
122
110
55
158
128
104
104
158
92
139
146
105
56
37
110
135
92
154
58
182
123
91
74
123
55
93
178
122
109
126
55
169
93
140
68
111
146
58
91
110
126
123
79
122
92
126
92
126
69
79
109
146
55
37
74
110
69
119
122
126
178
108
93
122
139
140
92
126
119
122
152
141
117
92
127
92
69
163
144
124
110
89
55
158
128
122
83
144
128
109
126
104
140
140
181
93
110
68
92
55
144
92
105
72
123
58
131
105
93
111
122
114
138
67
146
126
79
144
127
67
128
104
119
79
138
105
92
92
148
138
178
103
146
111
83
92
79
132
92
171
126
130
125
83
55
67
99
122
56
126
122
83
111
93
178
55
105
144
56
99
127
139
92
112
104
112
122
122
95
126
55
110
104
147
58
119
104
126
55
119
91
119
92
112
110
140
67
93
91
123
136
139
92
104
93
136
67
79
107
122
139
114
55
138
77
99
56
37
84
138
148
123
109
55
151
117
111
105
56
55
67
93
168
128
92
37
37
67
105
126
105
123
103
55
59
103
171
145
148
55
69
55
92
109
55
110
86
83
131
71
103
110
93
110
123
91
108
56
123
92
92
64
112
95
104
138
164
146
110
67
134
97
111
111
101
144
138
110
92
104
189
91
107
122
96
55
138
128
84
149
119
56
122
178
92
74
84
83
132
138
73
37
158
144
55
123
144
111
101
109
144
105
99
107
75
122
56
74
140
67
37
140
127
99
124
111
146
111
102
127
178
58
84
56
105
74
56
74
126
69
92
93
92
180
67
77
67
138
55
131
126
81
138
140
104
163
83
84
126
169
56
120
75
56
119
75
139
110
55
178
75
139
144
122
123
56
99
110
119
107
134
114
86
92
140
140
37
75
128
164
58
56
56
75
122
105
127
109
126
144
56
104
119
107
169
171
83
167
139
122
68
92
93
55
99
144
104
130
92
107
144
98
139
171
69
103
93
111
122
107
100
37
140
144
67
105
134
105
79
122
105
138
68
91
126
126
101
126
79
138
92
180
105
55
104
160
132
55
92
178
67
111
110
55
92
131
93
115
122
144
104
122
136
92
37
92
139
167
110
103
110
110
105
110
126
123
139
69
110
118
56
75
111
123
144
83
75
104
55
144
104
105
139
58
105
105
92
92
110
79
92
138
91
126
107
93
92
138
110
74
92
130
104
158
104
102
93
127
86
78
58
99
113
67
105
109
103
117
138
100
101
92
137
112
92
69
119
110
104
92
131
79
140
114
146
67
75
123
131
93
86
92
122
79
158
189
79
109
158
79
67
146
122
86
142
130
110
180
37
92
55
128
144
126
138
122
110
111
92
74
92
86
91
93
79
152
37
91
55
178
86
99
67
112
55
122
37
86
139
164
152
138
69
158
100
69
105
92
158
86
67
55
92
138
128
104
138
158
58
84
139
141
135
93
56
67
86
178
108
105
122
128
67
110
102
92
138
91
138
129
67
93
135
146
118
127
77
92
128
144
79
92
138
119
86
77
86
129
92
93
58
105
105
99
132
93
135
113
58
104
152
107
97
86
92
91
110
169
77
127
108
168
110
144
79
92
110
100
99
107
144
123
110
138
138
152
124
127
122
178
74
83
128
67
139
56
120
37
129
121
128
111
139
95
144
122
178
128
169
105
134
93
178
77
158
144
126
135
97
110
83
146
126
55
55
122
56
122
164
55
77
110
126
134
100
104
56
152
122
123
84
148
132
67
152
87
37
93
56
105
92
152
93
126
56
138
110
134
67
169
126
93
87
105
105
105
81
89
123
139
91
138
164
56
56
105
103
124
127
55
55
122
69
138
84
55
177
103
55
127
123
105
115
64
93
138
127
126
112
146
126
93
67
139
37
152
146
122
122
55
142
138
86
127
111
122
56
77
91
89
139
105
105
97
178
122
122
112
140
126
93
69
138
58
79
132
55
55
67
104
92
107
98
67
105
107
72
122
110
169
169
68
100
146
146
105
140
128
92
83
122
110
111
136
107
67
67
144
73
100
61
111
55
131
130
86
109
92
92
92
167
126
131
75
102
169
76
138
122
69
86
67
132
107
56
91
74
137
99
105
91
56
105
119
126
104
56
106
92
74
109
69
178
107
69
142
127
77
106
152
121
58
135
165
105
139
122
98
74
130
148
181
84
169
67
150
74
109
37
136
79
108
91
120
108
130
104
132
93
58
55
136
105
138
124
88
126
124
144
86
86
131
107
56
80
55
148
99
128
55
152
104
92
138
56
139
74
99
84
119
104
92
169
91
130
67
140
83
99
58
126
92
126
126
92
84
139
97
126
124
86
69
68
105
92
89
92
127
111
111
100
110
74
56
137
104
110
127
122
68
127
108
67
97
86
128
110
110
92
67
139
162
79
162
110
132
55
137
128
127
139
138
126
67
91
105
58
67
126
127
114
105
55
122
56
144
67
107
109
122
122
110
92
105
126
169
113
158
105
110
162
106
104
107
122
110
115
92
55
144
108
91
83
122
152
92
93
56
104
86
86
126
110
103
79
69
92
79
126
178
103
110
67
93
135
135
114
122
169
55
138
178
126
111
69
92
58
103
124
110
156
121
178
98
75
79
146
128
92
74
122
92
56
56
108
122
110
138
105
110
110
91
98
37
127
139
130
138
139
138
92
67
118
110
105
110
93
109
86
123
127
77
55
124
107
92
139
55
127
139
107
122
128
67
122
92
107
92
99
67
56
92
56
139
138
182
92
118
79
103
122
37
136
113
55
37
152
121
58
152
94
69
171
126
67
103
139
110
67
92
122
119
127
110
105
110
69
92
134
56
110
127
92
140
122
37
126
108
86
114
86
107
55
110
152
86
137
139
129
124
58
160
139
130
152
125
37
109
77
134
103
117
171
55
139
144
97
55
92
128
74
111
167
92
122
127
178
147
145
144
86
55
126
127
92
104
139
79
131
178
122
167
86
97
55
91
168
114
122
108
74
145
149
139
55
126
55
67
55
84
75
122
178
101
118
55
103
105
111
105
140
93
67
144
127
126
122
126
58
91
169
158
134
107
130
126
122
128
75
110
138
77
93
92
110
67
92
89
146
122
99
119
138
92
105
178
55
99
67
105
55
55
91
91
111
92
152
129
104
75
138
110
75
83
73
108
77
138
89
37
88
138
81
111
127
139
104
93
91
55
115
178
109
56
67
92
79
122
122
107
127
128
88
171
55
37
178
105
92
92
148
123
56
92
117
92
91
126
122
67
138
122
55
75
55
87
110
111
110
138
106
119
58
74
104
79
146
110
132
92
125
83
138
97
107
67
119
103
152
110
134
56
119
79
92
93
91
131
138
67
138
56
79
144
55
169
144
93
75
127
158
79
131
93
169
56
104
135
86
87
75
144
140
97
126
67
110
69
134
56
144
74
107
91
109
67
132
110
137
158
105
109
105
101
97
180
107
98
37
83
128
152
93
120
125
67
56
92
145
92
148
144
56
67
126
137
93
122
106
109
104
178
146
122
127
110
77
152
126
109
37
110
145
111
99
104
110
169
55
79
107
178
146
77
103
136
110
74
93
117
106
105
86
105
128
55
98
68
138
146
130
146
55
103
37
69
146
120
117
92
55
110
86
86
55
96
138
55
92
110
37
56
93
93
111
92
37
121
91
99
126
110
139
111
69
119
178
109
126
110
171
99
104
68
178
55
56
69
126
74
113
92
128
84
92
109
177
110
109
92
110
110
138
120
180
122
99
67
126
168
126
122
56
92
75
140
139
92
117
105
127
104
110
77
104
104
55
126
138
107
130
126
68
110
118
93
103
89
126
111
55
81
103
92
56
94
77
132
132
121
55
146
67
108
67
56
93
117
86
69
91
110
158
91
139
142
74
67
126
131
127
128
132
79
105
92
105
171
77
119
110
180
37
122
138
120
88
139
110
107
144
181
37
93
37
119
69
107
124
67
92
126
110
178
56
126
123
178
125
69
105
104
144
123
88
144
93
127
138
164
131
138
56
55
105
67
56
93
37
126
169
180
104
122
138
138
104
69
55
55
130
56
74
97
119
105
92
67
92
58
37
178
110
146
142
128
104
104
169
152
99
138
105
88
77
109
58
168
69
110
55
107
69
93
119
118
92
128
86
118
144
126
75
138
58
55
122
128
93
126
92
83
83
123
67
55
103
56
55
127
140
75
56
152
100
110
111
122
124
77
122
77
188
122
119
56
122
107
144
77
119
79
122
67
101
122
146
122
103
55
140
75
128
104
98
122
111
67
69
138
55
97
74
152
122
37
92
67
92
92
134
105
112
86
136
107
123
128
69
120
124
55
112
128
110
92
146
99
56
56
105
109
124
80
126
152
152
103
110
105
93
122
67
122
92
105
139
169
138
69
108
178
88
105
146
69
109
122
67
109
79
69
158
139
112
67
37
93
101
107
69
122
149
92
92
95
37
91
130
91
132
91
140
92
92
68
74
192
92
146
88
126
109
149
83
110
112
138
128
138
119
126
121
126
104
123
99
101
139
119
69
105
77
93
139
79
81
138
122
95
111
142
119
56
67
139
123
58
89
152
112
146
152
140
56
122
126
122
139
127
99
67
107
105
178
55
141
87
178
83
178
119
138
134
55
122
138
92
119
152
68
119
171
138
100
110
93
163
139
101
152
92
119
139
102
58
67
137
131
123
97
139
92
122
158
188
111
74
144
89
134
132
146
86
122
146
152
122
104
138
158
84
109
55
72
128
99
92
105
105
111
104
114
122
140
110
146
110
105
92
110
55
109
96
99
147
127
92
120
122
129
163
110
56
136
178
102
110
102
127
92
129
178
92
58
128
148
105
122
126
119
122
58
101
141
152
77
127
178
138
138
77
104
92
86
120
122
97
111
117
74
107
79
110
79
58
92
139
69
92
83
37
69
103
109
55
104
139
93
126
132
171
83
130
127
56
67
92
91
123
113
122
111
55
160
111
61
178
117
93
171
126
112
83
104
112
84
110
144
99
122
128
134
111
56
110
74
126
92
122
55
106
104
92
111
138
81
56
55
146
105
122
169
123
120
120
104
122
106
124
119
103
178
189
55
138
122
37
55
122
110
171
140
122
109
67
163
92
58
75
120
55
110
121
92
126
105
67
115
143
144
120
105
123
119
148
56
83
104
91
105
122
146
97
81
55
83
78
134
92
144
152
126
69
105
107
137
55
103
78
68
122
110
107
91
120
92
58
105
69
112
65
152
138
119
168
118
178
69
145
122
92
134
97
138
139
67
99
104
127
91
128
110
140
68
93
131
138
55
77
93
92
77
135
103
55
127
139
105
145
91
110
130
69
56
86
69
126
67
110
131
99
67
75
109
56
103
92
124
126
75
87
163
123
58
67
56
37
86
105
128
67
135
128
124
125
139
152
84
102
102
114
67
37
92
77
109
144
122
103
101
92
122
134
107
110
74
67
127
108
180
171
123
79
83
111
109
128
109
122
122
79
79
67
146
163
169
92
126
182
92
119
55
168
127
127
79
88
93
106
139
74
137
105
75
126
119
97
146
105
105
69
56
146
105
77
77
92
105
126
105
56
126
99
89
171
138
78
93
93
96
123
55
55
67
160
83
104
126
55
127
139
67
110
107
55
122
69
97
103
86
117
115
100
58
128
99
55
126
152
56
105
109
149
98
91
110
93
79
122
55
56
146
55
37
163
126
114
79
92
148
109
107
105
100
123
139
178
86
56
83
127
55
124
124
126
111
122
89
140
104
131
146
128
110
123
74
105
126
105
83
92
152
115
126
79
74
55
162
58
58
67
97
58
122
119
146
101
105
123
95
199
144
112
58
69
130
116
138
94
122
118
74
122
136
169
139
105
127
105
67
178
104
126
110
75
139
56
75
158
132
68
67
147
110
144
100
152
55
123
58
120
79
56
86
74
102
84
180
117
92
138
75
123
178
37
141
138
67
131
55
67
55
138
109
92
104
144
69
92
127
100
108
105
58
181
127
79
123
79
122
110
141
164
92
134
100
91
96
92
122
68
138
138
146
101
37
77
138
91
195
58
93
80
92
123
178
105
99
146
67
67
94
112
79
111
109
104
67
139
122
134
92
119
55
56
104
92
152
58
130
107
178
134
77
112
92
164
92
77
84
55
139
139
55
110
146
146
86
111
74
92
142
140
122
107
112
119
93
122
37
171
127
37
92
122
110
123
110
152
110
113
122
108
89
126
119
92
132
158
113
109
92
110
152
93
129
108
108
103
104
107
139
110
128
78
110
146
58
101
148
145
93
131
139
139
79
106
105
167
105
92
91
86
138
120
98
83
86
110
102
126
122
126
126
134
146
96
126
152
103
163
92
122
101
92
138
111
69
77
118
122
126
110
116
92
110
104
87
126
67
152
104
58
132
103
114
103
144
140
122
171
58
83
124
144
137
178
92
121
92
120
141
55
92
119
84
88
56
105
58
93
97
107
169
55
110
92
103
110
67
103
138
160
139
122
92
58
103
138
86
67
178
109
67
163
112
92
75
122
139
55
158
169
110
111
94
75
124
141
132
77
86
84
109
119
56
134
92
58
139
55
110
75
92
92
55
162
85
138
92
128
74
152
68
146
111
122
138
104
77
107
140
126
93
138
97
75
122
126
93
93
123
138
105
55
55
55
128
122
122
61
99
109
171
126
79
163
107
74
139
92
137
127
77
55
152
67
117
102
67
110
109
37
105
111
156
37
136
86
100
67
67
84
112
132
97
86
56
104
156
91
131
126
110
138
127
146
124
139
128
67
122
109
92
104
56
100
83
110
120
122
140
139
55
88
99
144
169
122
122
126
55
144
169
141
106
105
126
56
111
128
58
120
56
123
98
104
105
114
108
134
86
122
91
58
138
67
126
58
101
115
144
105
105
131
104
98
92
55
37
135
119
111
139
69
69
77
141
67
107
105
138
119
126
158
67
83
122
93
115
178
169
127
110
58
105
127
102
105
105
111
77
55
110
67
92
110
127
127
112
122
135
86
111
168
99
140
55
104
104
55
69
92
102
109
37
140
69
105
97
101
148
122
163
95
127
119
37
104
81
100
108
110
139
92
67
92
86
139
128
92
102
92
69
160
158
171
37
100
178
131
78
104
98
86
167
55
55
122
128
125
122
77
126
67
112
37
98
135
95
136
105
124
55
110
37
105
68
77
55
127
92
91
128
92
86
93
105
134
110
122
110
146
168
104
97
88
123
69
92
92
104
129
105
67
119
128
98
105
75
76
99
91
77
146
122
112
55
83
58
169
126
107
127
152
138
69
121
107
110
172
138
188
138
104
126
93
93
95
144
110
92
56
78
127
109
126
126
111
105
122
158
105
56
152
84
165
105
102
178
134
138
111
93
126
152
69
77
105
112
118
105
119
107
126
64
56
110
104
126
69
135
92
74
67
56
162
126
115
55
104
105
92
111
120
67
93
132
146
56
127
101
138
93
105
145
122
109
104
106
117
92
58
92
110
92
178
105
55
80
93
110
67
93
126
136
112
132
112
69
94
131
122
81
37
110
127
140
58
111
145
105
109
102
92
92
55
126
104
56
146
158
105
144
119
126
67
139
115
140
132
109
56
101
84
118
152
77
137
91
92
129
134
150
92
110
92
79
55
111
130
137
55
145
126
55
110
81
111
74
124
123
144
139
122
55
107
112
109
84
119
148
126
158
56
130
55
55
92
110
122
104
103
167
91
83
110
110
152
122
126
126
105
122
114
167
123
127
75
110
80
72
93
75
92
37
75
110
122
92
131
56
127
122
67
122
98
92
122
92
104
140
123
55
144
110
91
115
115
86
122
99
58
134
92
68
110
37
139
134
69
86
126
109
123
107
74
92
110
144
104
134
37
93
126
109
129
93
122
134
93
130
138
104
75
55
107
122
99
97
110
77
104
139
122
37
124
75
134
103
132
168
72
79
119
69
37
103
122
83
169
56
86
109
105
122
105
55
75
93
126
130
55
122
124
86
152
110
99
92
110
92
135
109
92
69
75
75
55
56
105
92
75
139
104
67
74
61
109
103
55
55
68
168
139
126
139
55
67
105
107
99
144
69
122
122
55
132
86
55
110
127
109
74
104
144
168
119
92
74
112
69
111
132
124
114
127
131
58
104
149
171
109
110
103
111
119
112
67
58
117
152
139
138
117
140
55
188
141
92
168
130
75
104
123
126
108
55
37
146
139
105
122
105
55
84
103
55
138
144
72
104
139
92
122
56
152
126
104
115
58
152
55
138
55
138
56
93
138
144
126
105
103
91
146
128
84
107
128
110
103
107
146
163
106
92
138
93
92
92
92
123
126
137
120
148
93
128
88
120
128
67
55
162
110
126
58
134
126
97
93
127
127
86
58
101
69
126
127
178
55
107
138
110
107
144
146
138
122
37
93
86
107
79
178
105
126
105
124
126
138
92
92
58
104
118
92
86
107
81
105
86
67
139
56
58
178
105
104
104
114
105
58
110
83
92
122
124
77
75
105
134
57
110
92
127
120
77
55
130
128
80
110
92
110
139
122
122
92
92
98
81
92
106
37
171
122
55
138
92
92
140
139
178
138
55
101
103
83
105
139
55
69
98
110
110
109
138
105
128
93
100
92
37
91
118
56
123
108
131
127
102
99
103
126
92
95
119
128
74
108
91
104
121
124
107
92
68
135
79
109
55
169
136
123
138
56
67
103
140
107
55
83
69
144
178
126
114
102
86
56
139
86
92
110
65
171
93
92
92
67
58
126
178
128
139
92
144
55
92
84
134
88
122
56
152
111
77
92
75
123
110
93
110
100
146
79
105
75
107
92
67
136
146
120
132
92
178
105
56
55
112
122
104
92
124
111
127
104
109
104
104
98
128
152
77
146
128
97
104
105
140
126
139
138
129
92
55
110
127
119
106
131
67
144
124
137
67
126
123
104
74
105
75
178
169
37
105
76
56
55
164
37
56
37
131
118
93
67
86
93
146
128
67
58
37
122
78
55
152
105
83
120
105
110
94
100
64
138
178
182
68
58
84
126
122
55
58
169
55
152
77
97
104
126
109
151
104
139
188
92
156
55
84
105
159
169
119
122
146
103
92
58
68
107
112
107
126
56
92
114
131
131
98
37
127
92
55
178
128
86
120
122
128
168
58
134
92
123
144
136
128
100
139
138
146
122
76
104
138
37
113
127
127
134
162
104
108
55
55
139
95
55
152
138
74
125
75
122
67
93
105
122
144
99
93
37
104
83
134
122
138
93
67
104
56
109
152
75
98
37
92
92
109
154
123
139
67
92
131
147
101
122
58
37
124
58
178
171
96
146
167
126
126
105
160
92
93
122
100
152
77
117
130
111
144
169
92
169
93
92
78
107
122
105
58
58
105
178
92
111
146
37
164
126
69
91
92
107
142
163
124
127
100
55
123
112
55
112
138
152
146
169
92
93
138
77
123
139
138
139
58
91
55
127
105
119
128
144
67
91
69
142
58
105
107
91
171
126
92
77
55
100
114
79
130
105
92
126
127
93
92
134
92
131
110
78
69
99
108
169
56
80
67
122
55
92
105
56
97
179
69
100
105
55
128
92
138
99
158
106
106
91
79
145
135
64
110
91
140
68
110
111
55
94
109
169
197
168
123
138
137
37
123
122
146
37
55
138
67
138
180
91
102
100
67
122
91
99
105
146
101
134
110
77
135
67
122
56
55
122
72
92
141
110
86
55
105
122
103
92
111
112
93
122
143
135
110
93
128
142
92
146
92
67
123
189
110
104
122
68
123
55
112
91
126
122
110
130
138
146
101
79
138
136
67
171
128
97
138
93
118
55
108
67
91
97
93
55
107
55
110
105
74
56
37
92
55
58
119
158
152
104
158
67
69
104
74
104
122
104
126
92
111
110
156
139
114
167
67
58
92
122
162
100
58
86
140
92
128
144
104
86
55
146
98
146
86
67
110
110
95
67
152
117
119
131
140
122
92
77
67
78
141
91
92
122
122
122
55
126
105
80
92
110
103
152
127
91
56
73
122
99
136
128
178
58
55
146
146
98
124
119
99
115
56
74
147
58
178
93
81
75
37
74
123
91
138
86
128
126
92
56
122
144
125
92
58
104
123
69
121
124
92
77
122
105
134
164
103
86
77
169
92
55
86
140
56
119
110
134
144
99
88
111
132
97
69
126
105
110
126
139
110
127
169
146
128
119
124
152
138
145
104
77
128
163
103
103
178
86
146
86
180
126
126
110
75
92
169
74
139
108
142
92
126
77
131
110
105
126
111
79
132
55
131
56
144
138
74
99
55
92
139
110
146
124
138
110
126
114
119
92
68
138
126
74
178
126
139
79
119
79
114
58
126
92
137
144
103
127
68
122
37
134
58
139
89
58
128
138
134
67
140
139
152
123
144
126
178
152
106
88
101
130
92
105
114
107
92
75
103
128
123
93
111
67
152
144
37
105
79
93
69
101
111
126
101
55
146
124
125
74
99
123
139
127
93
122
138
55
132
110
104
110
99
169
132
67
122
139
105
93
92
84
104
148
104
74
139
134
110
58
56
72
128
146
74
67
55
117
168
55
144
128
146
113
138
138
132
74
180
55
122
86
162
55
138
106
131
69
92
152
109
119
93
99
93
67
140
92
86
55
163
128
136
126
113
132
146
100
126
98
69
67
80
55
140
55
55
55
138
67
132
119
114
56
126
181
103
91
139
131
74
93
93
148
112
67
122
138
165
56
126
134
128
56
122
91
75
134
58
93
134
139
105
117
163
111
123
126
178
135
111
103
119
55
37
126
110
100
152
105
146
122
139
119
105
77
37
86
83
92
131
67
67
118
86
122
67
102
92
122
55
119
92
111
122
119
178
147
128
97
92
86
105
111
84
104
55
122
105
124
93
98
122
171
168
56
128
117
144
138
122
99
83
74
127
134
122
105
67
110
86
141
92
110
75
55
104
178
41
93
83
124
103
104
148
105
75
146
118
122
178
108
79
140
111
128
55
140
58
110
118
58
111
105
114
120
69
127
104
78
92
86
122
113
152
122
122
56
112
106
158
165
67
89
93
58
105
55
105
124
74
124
56
92
199
107
105
139
127
127
76
127
115
178
104
110
104
92
136
104
104
119
145
81
139
144
152
105
86
110
105
128
67
55
58
128
139
77
92
108
139
139
67
98
107
56
169
144
55
138
105
92
119
92
92
92
92
122
108
37
93
102
110
126
124
152
58
88
79
58
171
37
127
142
75
123
37
169
178
127
69
152
92
104
137
101
105
93
152
140
146
102
126
140
167
74
118
92
94
115
92
55
93
134
126
110
95
55
124
55
127
128
144
151
105
110
110
55
105
55
110
111
92
134
127
79
92
127
158
126
104
126
55
56
67
122
123
93
104
126
122
103
110
144
178
134
37
92
122
98
123
122
67
95
104
105
91
67
67
92
127
92
144
93
37
130
55
125
126
111
138
92
74
110
118
104
86
130
119
91
127
141
138
37
55
92
152
91
105
55
55
55
115
37
130
126
109
105
109
137
69
131
92
127
98
146
92
122
92
58
145
105
91
127
89
102
122
104
144
131
122
110
104
104
56
144
75
178
56
136
55
67
92
138
160
37
148
58
134
122
138
69
163
67
103
127
68
92
122
127
140
77
146
139
86
144
79
56
67
163
147
132
127
93
92
55
138
178
69
104
148
37
55
55
87
92
126
69
122
126
95
138
71
55
126
91
75
178
122
107
68
69
117
93
83
171
74
152
92
169
122
107
98
104
146
99
126
152
105
122
37
122
93
110
132
132
139
77
171
122
105
144
126
110
127
77
92
139
58
67
132
92
93
109
126
105
158
123
127
152
112
148
138
139
110
110
58
104
137
108
67
112
197
151
158
88
92
93
122
122
113
105
109
69
122
140
55
111
55
122
92
158
107
137
158
105
79
79
122
146
127
178
145
55
120
74
168
167
89
98
105
126
37
111
109
126
126
75
93
169
67
56
119
55
139
69
92
92
110
68
55
92
127
56
93
139
138
122
110
122
95
122
144
92
160
128
126
138
146
144
110
108
108
69
110
132
88
132
87
163
140
92
152
74
169
138
99
104
146
110
115
128
126
99
169
167
75
126
105
171
138
86
89
126
55
122
122
92
37
124
72
140
126
118
112
138
127
80
92
83
37
171
67
73
122
56
138
118
137
100
110
139
103
126
67
95
147
126
130
55
110
55
55
118
79
91
37
109
92
67
130
55
105
138
178
102
69
152
109
107
91
56
75
92
37
67
106
104
124
100
67
104
107
136
58
127
56
123
99
134
110
132
98
178
93
103
74
92
105
102
139
138
69
146
131
114
144
134
110
95
110
37
165
93
169
86
169
181
104
91
112
67
92
104
84
110
122
92
122
55
104
123
144
69
103
123
162
84
105
138
178
119
146
105
103
37
92
114
104
55
89
98
79
58
92
123
142
122
79
92
67
132
84
55
126
68
152
111
99
92
163
128
92
58
92
126
77
93
157
122
110
126
149
67
111
130
144
124
138
92
95
55
105
171
119
127
126
110
145
67
55
67
75
163
138
105
110
88
127
93
67
93
104
171
131
93
105
94
55
68
69
92
178
124
69
93
69
37
93
107
55
58
148
100
144
92
119
131
93
92
169
88
86
67
126
148
55
144
112
55
92
126
67
86
100
97
126
92
126
122
37
37
123
139
105
110
144
76
120
56
58
118
138
55
124
152
146
107
86
97
126
105
124
135
119
104
67
122
111
163
77
169
67
86
122
58
125
105
76
86
99
136
107
55
77
56
122
55
126
97
126
178
92
118
110
105
93
108
134
136
148
107
152
169
74
138
91
69
92
97
84
146
73
110
127
131
91
37
58
126
107
122
67
110
103
104
74
140
139
132
105
104
95
58
74
139
126
93
79
92
135
105
37
87
37
103
105
56
128
77
144
73
122
137
138
126
92
122
178
138
103
69
84
67
162
93
92
110
119
110
122
110
111
138
148
77
116
93
56
169
77
130
171
56
126
138
127
101
122
108
69
128
92
137
109
101
55
160
127
178
127
128
148
144
146
86
107
95
79
114
97
130
67
93
115
109
102
178
92
108
104
75
95
139
55
37
171
67
169
107
105
132
126
112
64
127
104
134
105
135
138
122
121
105
101
104
74
145
178
92
55
122
149
126
140
122
116
111
126
177
86
134
138
91
117
55
138
137
169
134
56
95
69
126
107
148
37
144
122
169
83
123
79
142
86
164
99
178
128
123
94
37
120
112
104
144
134
135
140
169
152
112
140
131
128
138
93
137
92
55
91
97
67
110
104
126
99
110
110
139
84
146
144
142
148
95
128
67
56
92
110
55
131
130
144
92
109
67
105
138
69
163
144
92
126
56
55
109
74
86
108
74
148
37
111
113
104
55
138
126
111
127
88
86
110
124
55
104
93
93
122
77
92
67
124
86
105
119
110
104
101
56
55
99
178
83
105
122
79
109
92
126
92
67
105
110
122
107
37
125
92
152
104
127
93
102
138
58
138
112
152
105
55
132
92
110
69
67
92
149
104
67
118
127
92
128
138
78
107
126
93
144
109
105
92
103
140
168
74
108
92
61
122
123
92
122
144
97
130
86
89
160
150
67
92
148
56
144
69
55
138
126
79
169
107
117
156
128
100
145
163
152
78
146
122
138
95
112
123
98
93
110
112
107
105
69
122
105
105
138
92
56
146
123
124
99
103
74
152
139
152
37
105
107
79
93
56
106
134
37
126
74
163
92
79
68
139
110
128
124
156
122
109
123
67
56
134
135
79
126
139
160
120
112
100
100
127
123
126
55
114
92
93
126
122
169
69
69
110
92
84
55
148
74
103
120
144
79
93
134
96
178
92
37
37
108
103
126
107
141
124
122
77
128
77
146
122
138
92
178
123
119
162
104
93
92
74
110
138
92
136
126
110
152
58
146
37
124
104
93
109
108
92
110
56
138
168
55
58
144
58
107
104
55
55
127
75
93
127
144
105
140
148
146
112
148
55
84
120
138
87
140
77
126
104
105
110
104
119
124
126
104
91
37
92
55
105
79
37
123
92
109
101
119
55
132
122
77
77
105
104
93
93
123
110
128
83
98
67
105
55
178
74
138
126
102
105
92
99
104
56
88
92
126
126
105
146
104
103
158
120
110
128
144
105
140
126
122
115
37
74
111
69
105
139
122
92
56
79
114
92
67
138
55
91
163
169
122
84
141
105
140
93
99
110
137
146
114
93
75
109
93
111
149
111
122
119
127
132
71
178
134
105
114
135
139
117
114
129
56
75
89
67
146
83
139
105
146
37
131
139
122
109
123
138
111
92
83
69
93
114
94
169
128
104
139
67
178
79
92
128
124
137
56
92
97
55
98
56
122
98
68
167
168
69
79
134
105
139
104
37
126
110
134
144
83
110
112
92
55
75
37
122
131
106
92
55
92
171
56
115
71
91
109
121
105
138
109
91
122
86
91
82
134
75
167
91
99
138
140
100
127
158
105
79
110
105
126
37
92
108
86
74
130
102
93
110
146
152
135
141
56
146
93
55
144
148
152
126
55
67
58
68
180
92
92
144
110
152
56
67
122
146
37
55
171
56
113
99
123
91
55
122
146
122
91
109
124
131
152
69
104
55
98
55
122
160
79
122
37
122
86
67
102
110
127
55
130
122
123
83
122
126
109
74
58
112
169
69
93
123
105
126
142
123
122
92
146
110
138
121
67
127
119
93
92
79
96
86
95
67
55
139
104
91
67
127
111
111
127
122
149
91
92
137
127
91
56
86
169
104
160
69
77
93
110
107
55
75
145
126
105
58
138
122
105
104
138
180
126
145
168
128
55
67
146
110
97
110
98
92
56
168
37
55
124
58
104
144
126
125
92
152
92
86
75
138
138
139
123
107
58
94
88
126
122
122
107
103
74
95
126
126
123
178
138
127
109
115
37
93
86
128
84
105
56
58
110
123
55
92
69
68
127
37
138
138
93
105
127
109
105
92
99
139
110
105
100
122
122
134
93
58
178
167
104
160
105
92
111
92
124
92
111
141
139
67
105
105
74
126
122
123
126
138
100
119
125
55
138
178
58
105
92
139
56
103
92
139
108
128
55
74
123
105
92
139
122
67
55
138
171
105
127
56
75
105
109
79
111
86
92
99
136
83
110
144
92
37
67
127
104
111
67
95
122
138
119
79
77
99
92
115
92
171
103
92
110
105
83
114
165
139
167
126
124
138
140
130
131
76
123
83
122
55
86
89
148
92
37
131
120
92
86
65
136
84
111
182
105
92
91
99
114
144
126
137
123
107
126
37
101
109
93
139
74
122
139
126
131
107
126
110
118
110
139
134
122
118
86
72
111
127
112
91
114
126
106
75
92
92
55
162
139
144
91
122
68
68
74
110
178
127
67
92
37
107
69
75
137
93
100
69
69
56
145
152
108
106
122
93
149
55
92
56
92
178
119
91
110
122
121
105
126
102
108
139
107
110
139
104
67
93
122
123
92
104
110
122
140
122
55
79
119
104
148
79
131
106
178
86
86
68
104
127
98
109
140
152
58
128
110
131
92
126
105
92
108
146
107
109
105
55
55
162
119
86
55
37
97
123
105
144
104
140
78
55
107
126
101
104
156
147
122
131
178
83
139
92
110
144
134
79
106
69
105
119
162
77
122
127
92
158
56
119
138
67
109
37
122
110
165
103
141
83
128
69
171
132
107
37
107
56
55
81
64
138
105
107
105
56
152
128
68
110
69
69
138
126
98
138
171
122
104
124
55
120
79
104
92
55
55
84
122
69
92
92
122
126
139
152
123
126
144
169
56
122
110
100
58
69
55
104
92
85
96
171
168
138
122
37
146
107
93
126
55
126
58
105
126
152
93
58
77
180
123
126
128
55
138
74
140
55
138
67
102
37
138
126
92
91
58
122
158
126
105
69
178
131
37
125
122
86
104
37
129
139
145
110
55
156
55
92
134
92
164
92
86
122
67
55
55
132
105
126
55
55
105
104
77
119
110
37
55
56
110
67
144
141
69
138
139
105
138
139
105
55
55
103
120
110
67
122
55
122
144
92
55
104
69
111
105
139
105
167
152
158
123
93
168
126
137
79
126
127
127
123
93
109
58
105
77
110
107
139
76
77
67
101
92
58
114
69
84
105
124
74
91
109
122
146
128
92
146
138
37
77
124
104
109
126
74
127
92
106
83
110
105
148
126
167
103
138
178
67
56
126
119
91
104
122
111
135
122
79
74
138
92
105
146
111
105
95
152
83
37
55
111
105
92
67
69
106
111
103
122
124
169
131
110
132
37
99
152
146
99
105
110
178
122
122
105
105
104
138
132
119
74
111
69
92
88
138
140
55
126
95
56
79
105
67
101
122
67
178
140
92
144
138
58
74
92
110
93
138
138
100
122
119
69
37
37
84
107
128
104
163
111
55
55
37
92
92
110
171
152
124
89
79
86
109
158
37
58
93
110
95
92
99
138
110
144
140
144
127
105
108
55
119
105
127
56
126
137
111
118
56
77
56
122
104
178
110
56
101
178
92
58
56
128
56
122
127
55
56
104
91
99
93
131
105
93
178
165
109
123
126
37
152
152
102
146
55
178
152
93
92
93
144
106
122
127
171
104
122
134
55
56
67
58
112
91
122
122
91
55
110
138
107
138
55
69
55
125
134
112
67
67
118
94
144
146
110
79
110
67
86
105
180
119
105
99
139
144
132
111
152
122
55
89
110
67
79
124
92
69
118
126
136
74
81
56
138
130
105
91
139
69
119
93
105
74
56
109
77
92
74
72
146
79
37
144
115
37
86
180
162
107
79
104
111
123
92
58
55
124
99
58
109
92
92
67
140
105
109
117
91
92
91
144
140
55
144
69
122
37
105
126
103
92
110
86
123
146
123
126
126
92
92
105
91
55
152
105
74
127
103
92
109
123
110
122
110
69
104
158
105
136
37
138
111
178
122
123
103
126
105
126
56
138
58
69
122
138
103
126
169
139
138
138
80
126
86
126
111
139
122
146
91
104
141
118
93
56
126
148
92
124
92
99
139
127
83
37
122
37
120
127
105
93
89
120
131
127
178
79
58
110
80
178
56
139
55
92
95
168
110
55
97
55
77
72
92
144
92
118
83
158
69
128
127
110
105
139
123
126
144
92
91
111
98
67
141
92
37
122
77
103
127
178
69
105
111
108
134
122
110
119
55
127
124
104
104
105
92
109
140
139
119
163
128
37
109
108
83
127
107
171
92
110
64
37
111
165
127
126
138
126
93
122
55
67
105
67
131
92
110
111
105
110
158
128
56
117
158
91
77
74
138
91
122
77
56
144
118
158
77
146
55
81
126
104
179
119
111
91
134
92
122
104
92
93
130
122
56
122
96
81
56
126
120
75
92
105
178
75
55
115
117
67
178
93
87
130
131
164
122
37
128
144
134
67
120
92
95
99
127
92
139
92
110
115
86
79
122
84
168
126
92
152
105
110
75
131
94
132
92
104
146
109
67
68
109
55
98
67
139
67
114
118
146
110
126
56
58
92
73
109
128
123
84
86
110
93
128
104
37
139
80
122
146
93
146
136
146
180
127
178
139
138
127
140
105
67
163
105
177
178
68
68
136
123
72
107
37
56
135
98
126
77
101
55
93
77
137
178
110
169
136
105
55
79
152
160
182
107
93
55
169
56
98
105
138
86
109
127
55
69
75
127
126
122
93
110
67
110
105
122
138
138
139
131
152
58
83
140
79
67
110
79
93
104
148
195
83
99
128
124
110
92
37
37
97
67
140
99
110
110
92
58
110
169
92
123
97
83
168
92
128
110
120
58
119
122
136
138
127
188
110
99
55
127
122
126
134
67
58
58
58
103
92
111
130
169
92
131
67
162
168
37
56
110
129
119
92
119
122
110
84
180
93
74
91
97
67
74
105
58
55
105
104
109
122
138
107
138
67
56
37
126
195
110
139
138
122
144
86
126
92
107
69
67
139
79
111
105
148
69
123
69
178
119
37
126
160
89
128
110
110
112
152
91
55
138
178
104
109
58
81
144
162
67
131
75
92
138
55
75
105
139
92
178
129
56
77
110
96
74
140
141
122
140
134
146
148
111
92
140
138
88
67
125
131
92
104
75
127
110
128
139
67
81
105
109
93
169
139
138
77
135
134
67
169
118
178
79
100
111
92
55
111
103
91
151
171
138
138
152
121
142
110
123
148
100
37
152
169
152
122
122
168
122
56
69
92
164
104
126
75
178
119
126
126
178
129
98
98
120
123
92
109
123
138
67
55
67
58
152
139
118
58
114
105
139
55
104
122
138
122
92
105
163
126
107
128
92
55
92
123
144
177
169
123
117
91
139
122
137
126
110
55
110
130
152
55
92
163
109
127
126
178
135
67
105
110
99
146
115
105
92
99
168
145
101
122
107
144
100
126
98
122
134
106
138
127
89
114
127
104
171
79
102
80
105
126
78
89
138
81
122
126
146
120
158
72
135
91
126
105
91
110
56
67
79
91
178
103
171
104
56
178
99
104
117
74
158
107
92
101
122
55
92
37
125
125
85
67
119
178
127
92
110
89
139
104
92
105
165
110
95
122
56
127
109
78
139
138
138
126
55
146
92
92
111
56
75
76
152
122
67
125
138
142
126
56
67
79
178
56
64
171
55
105
136
58
140
119
104
95
79
99
80
122
93
101
122
148
138
104
122
122
92
110
58
134
75
109
83
119
69
93
93
101
123
77
92
67
160
55
67
109
110
178
168
102
93
109
145
67
134
139
122
128
162
67
99
37
136
92
67
122
107
105
58
56
110
75
134
126
126
125
67
128
56
110
106
169
139
37
69
139
134
124
89
100
126
55
152
110
79
37
99
58
67
145
128
126
169
153
119
83
104
117
111
91
92
134
180
93
101
110
105
55
122
58
124
84
168
124
138
91
148
114
160
37
139
102
112
79
105
93
128
182
152
131
111
119
104
135
104
110
74
169
97
110
164
75
178
138
56
67
58
78
92
104
67
79
126
37
139
178
55
91
41
126
92
69
67
109
132
101
86
92
37
168
102
55
84
56
148
79
58
144
178
117
91
98
56
178
58
69
137
106
140
64
122
126
86
79
110
128
124
83
56
55
55
83
137
134
58
130
37
156
148
119
86
138
69
75
144
55
55
101
144
69
67
139
135
128
105
92
58
95
119
178
105
180
93
138
110
105
69
105
107
105
110
169
162
178
152
92
127
105
58
132
132
134
122
151
158
146
122
110
112
163
104
107
92
114
91
139
55
84
118
131
122
92
74
158
92
122
92
152
110
91
150
144
147
95
134
104
37
126
56
127
58
75
119
138
57
93
92
119
152
68
55
101
163
56
163
122
126
37
146
132
69
55
55
119
92
69
105
164
109
75
144
122
58
126
55
101
122
126
146
127
55
122
77
108
58
67
169
178
69
126
128
107
162
126
92
55
103
107
37
104
139
58
120
117
146
56
106
92
140
111
92
178
109
91
169
122
93
105
55
110
67
109
140
105
188
110
110
87
86
126
105
56
134
93
181
139
69
110
146
86
125
119
127
135
122
115
169
128
140
92
169
158
77
56
122
158
103
122
93
169
92
83
178
104
148
110
104
158
69
126
114
91
99
180
55
132
120
83
37
111
100
105
74
158
107
128
67
112
110
55
122
111
127
100
103
104
105
127
58
178
55
126
139
152
122
92
92
119
105
58
101
139
78
105
119
77
104
37
92
91
124
105
123
83
109
128
130
123
91
152
37
92
127
105
141
126
104
56
178
122
55
138
109
67
110
74
58
81
108
139
69
78
131
93
92
124
138
56
148
91
122
67
134
152
92
99
92
130
178
134
79
56
131
131
68
126
114
178
77
83
105
77
130
83
92
111
119
132
168
100
110
152
160
127
146
147
127
163
127
146
92
104
152
86
56
115
69
122
55
67
67
168
93
144
127
67
140
104
55
123
56
138
37
126
69
101
105
93
91
55
110
79
67
93
104
108
152
128
108
125
110
110
67
151
55
101
67
146
88
105
77
109
107
91
91
56
99
138
116
99
118
37
86
85
56
127
139
139
91
55
92
56
178
107
105
139
171
55
93
37
138
171
103
109
55
74
105
37
55
137
69
126
93
79
92
86
105
137
112
123
55
103
136
135
117
93
104
123
93
56
104
106
115
56
69
134
127
139
86
122
111
93
134
167
109
122
80
117
83
138
111
126
93
77
105
97
114
91
93
93
55
111
110
120
75
106
134
104
91
67
107
68
67
119
122
119
69
135
69
105
144
92
105
163
158
88
138
93
148
122
92
132
103
138
88
105
128
122
93
77
67
126
77
110
109
56
146
122
84
67
127
111
126
92
77
55
139
111
67
110
139
103
67
109
58
144
110
103
152
93
106
99
92
104
104
91
127
55
37
146
138
56
126
88
139
122
107
92
68
139
88
92
55
122
105
75
67
109
124
140
122
86
110
95
122
55
140
91
56
98
72
141
84
111
139
138
55
58
122
180
105
104
55
140
126
124
95
69
134
138
178
164
37
169
92
104
105
86
128
178
107
124
138
104
122
37
69
178
77
104
92
69
56
110
55
37
103
37
146
104
104
126
178
126
110
122
105
122
92
135
98
111
110
93
86
104
111
93
111
139
92
119
168
75
56
91
86
139
112
97
110
100
55
126
99
139
92
93
158
140
149
169
110
93
92
104
134
103
114
139
122
94
126
56
134
122
86
92
58
67
129
104
152
56
58
89
74
67
180
110
124
104
144
93
111
126
188
92
56
120
169
152
134
55
67
108
152
56
55
134
104
92
127
67
92
144
55
92
123
105
127
55
92
122
55
152
109
83
122
37
56
55
91
92
103
127
37
56
123
165
110
69
168
119
122
104
164
171
92
79
126
37
158
111
118
108
84
117
136
99
37
132
109
93
55
56
169
102
119
101
104
122
109
123
144
91
55
171
136
124
136
126
122
158
87
56
89
139
79
86
69
37
67
118
92
110
140
104
87
104
55
37
144
99
138
95
111
138
102
74
55
138
110
92
84
124
152
58
120
99
127
144
109
100
109
103
86
92
55
132
140
119
104
69
58
152
128
109
56
169
97
80
55
92
58
169
110
122
109
103
148
92
131
131
104
167
144
127
93
169
100
92
105
83
91
92
138
55
127
55
67
149
107
105
152
122
122
169
105
110
75
92
67
171
123
105
130
138
92
37
139
139
132
77
56
122
137
93
145
122
61
126
139
110
55
77
144
105
122
104
110
55
108
138
67
37
146
110
156
126
91
138
138
106
122
77
126
128
86
105
126
58
104
104
55
37
67
124
139
128
136
93
111
118
152
124
89
109
123
89
109
107
146
178
124
138
107
178
169
127
111
109
37
80
168
56
37
126
105
110
79
92
86
99
105
126
110
56
122
114
117
110
109
122
101
146
67
110
132
55
92
123
115
105
122
67
57
134
67
124
93
148
56
178
105
104
105
110
146
92
123
99
131
122
115
77
55
77
146
58
162
55
91
123
108
56
93
110
55
92
188
37
122
37
114
37
74
126
112
79
84
105
92
102
79
86
92
152
137
127
105
84
126
84
67
122
124
139
169
122
89
138
110
111
79
169
138
92
86
122
84
122
86
77
146
95
126
102
122
146
115
92
58
56
92
149
103
89
58
105
144
122
56
55
67
168
92
105
55
130
104
55
99
122
148
105
126
132
69
110
67
127
58
146
111
89
112
114
146
75
92
67
110
169
55
37
138
126
105
105
126
86
79
92
91
178
104
75
86
55
105
99
56
56
91
58
139
92
127
148
67
99
56
86
110
139
138
67
79
56
86
110
101
58
168
86
84
92
56
110
126
55
110
110
56
144
110
86
131
163
58
110
152
37
55
86
118
76
37
105
107
92
55
123
69
126
162
128
111
92
93
103
136
103
67
93
55
152
92
99
107
80
125
93
81
122
55
122
146
86
103
69
107
106
84
55
84
169
56
144
91
67
105
122
93
77
37
92
144
106
126
141
105
86
107
180
134
105
127
99
67
123
138
78
37
105
104
98
67
178
138
102
138
86
122
126
92
99
128
98
134
195
124
122
74
110
138
104
84
146
126
67
124
99
126
103
127
141
119
128
92
97
115
152
123
101
126
56
56
119
74
92
67
105
138
127
110
119
92
178
117
86
128
69
55
88
86
127
67
100
107
92
93
132
67
139
105
150
56
140
103
124
92
110
131
56
55
77
123
122
126
138
89
103
138
119
162
180
104
169
107
110
126
122
55
101
58
56
103
115
69
58
75
126
69
74
55
55
131
69
67
152
158
122
128
109
56
137
58
92
93
55
67
92
74
75
127
58
158
168
105
58
78
143
152
134
77
134
91
110
95
107
178
124
105
92
119
79
122
79
79
56
110
130
92
56
168
105
163
147
110
108
55
103
101
144
103
152
123
158
144
55
138
107
92
126
104
144
104
164
158
111
105
130
92
37
86
56
122
91
67
112
77
110
105
58
148
110
55
106
101
92
86
125
146
180
104
178
139
67
138
74
122
106
126
111
91
101
134
122
138
122
171
138
68
138
92
152
99
122
84
105
122
56
132
119
138
128
105
139
104
131
93
126
56
111
139
92
114
180
162
92
138
103
123
56
127
56
112
105
182
126
58
92
122
152
86
104
122
83
124
111
144
110
107
72
178
104
80
93
131
83
102
124
55
104
110
139
56
56
126
74
110
56
138
37
117
56
138
157
55
126
126
99
103
99
107
104
103
87
139
103
117
67
146
127
140
122
138
138
178
56
92
92
67
108
123
92
146
103
67
146
110
84
92
127
126
55
144
122
110
171
126
139
139
55
92
114
58
138
146
128
58
146
122
122
94
91
138
92
102
79
160
128
138
123
55
92
134
37
139
119
169
107
152
91
112
127
139
103
74
91
56
75
86
92
139
92
69
103
58
122
99
79
89
134
37
68
92
58
58
138
79
92
119
55
91
84
118
139
105
126
152
110
55
74
86
74
37
105
108
67
91
100
58
124
169
146
77
86
122
55
109
122
169
169
55
92
68
122
112
92
77
152
75
138
146
110
83
104
171
86
86
103
79
115
117
120
134
136
55
139
126
69
68
169
105
152
138
67
138
86
130
92
126
109
168
142
168
109
77
110
126
92
152
77
93
139
110
158
126
128
178
55
171
104
56
91
56
95
165
120
97
105
93
122
167
89
110
58
180
105
92
67
104
86
168
123
126
105
120
79
122
120
178
134
83
144
137
122
67
122
110
37
132
110
92
105
110
138
127
93
122
144
55
56
122
67
96
103
122
105
124
92
126
122
79
144
162
178
55
55
92
55
126
111
86
56
92
58
126
140
109
104
92
55
139
110
168
97
69
131
67
124
124
178
110
140
112
146
130
83
77
92
164
126
180
55
152
79
104
109
75
87
126
119
55
105
92
97
93
86
75
107
55
130
99
128
83
55
99
92
104
56
97
55
178
106
111
89
128
110
86
140
105
91
106
126
139
123
126
93
122
110
169
37
68
123
79
55
105
122
106
92
146
132
152
56
92
81
128
86
121
109
140
178
171
105
130
111
102
138
55
104
110
105
86
139
164
86
104
109
37
55
131
55
103
97
128
138
92
67
119
67
105
105
130
67
111
92
56
97
122
83
128
144
103
106
91
125
111
109
58
103
111
180
132
91
144
148
126
110
132
128
124
131
136
171
110
105
124
124
105
168
109
67
126
163
138
110
137
111
95
152
105
136
146
102
75
161
126
171
67
138
110
126
152
111
105
68
99
37
138
107
110
120
110
104
122
69
104
67
37
138
152
92
144
97
104
58
83
56
135
171
138
55
125
168
56
138
123
92
55
178
55
119
92
92
123
37
56
146
110
56
178
56
158
140
68
67
103
105
122
105
142
58
111
138
79
178
168
117
79
93
130
67
130
58
123
131
107
55
93
93
56
105
140
126
93
152
105
129
145
180
126
128
58
158
127
104
169
104
74
92
98
69
105
105
102
178
144
69
148
74
92
67
134
105
199
92
139
105
110
110
138
92
111
146
79
144
130
100
144
37
37
122
165
55
178
123
123
131
126
178
111
105
178
168
92
56
56
55
122
99
55
126
152
138
110
74
92
119
83
56
120
104
115
58
67
136
56
108
99
100
135
58
55
137
105
130
139
122
86
126
127
89
110
97
127
92
94
110
67
119
93
138
110
97
104
111
55
128
89
122
112
110
140
126
177
95
141
91
130
92
104
92
68
103
123
119
104
107
93
145
86
77
84
99
97
117
105
93
122
87
101
105
110
126
120
91
122
111
126
93
92
128
58
105
55
110
134
55
178
126
147
105
178
108
99
169
93
106
123
110
100
139
111
171
105
142
67
58
112
55
99
67
112
114
92
92
99
79
146
122
110
105
109
111
95
110
93
122
138
69
144
97
111
178
69
105
139
111
84
138
55
111
99
107
105
127
167
69
128
122
178
139
178
74
110
111
105
92
67
111
106
165
92
68
98
134
88
103
92
178
57
92
104
75
107
92
188
55
137
127
100
178
149
118
178
134
124
55
83
111
122
67
124
98
130
74
104
37
86
122
105
58
129
55
105
92
127
101
147
100
83
138
160
139
67
58
99
89
178
138
75
112
178
171
122
144
148
55
91
126
138
138
104
122
107
92
109
58
37
120
102
68
69
123
152
110
93
152
104
87
55
84
104
122
92
152
138
111
110
110
93
58
58
160
64
55
124
58
98
111
101
139
110
67
122
67
109
103
92
135
110
122
110
109
111
146
132
105
138
110
56
105
126
92
37
139
68
139
110
142
58
56
138
124
137
78
139
111
79
123
69
97
139
69
189
122
148
112
56
104
58
131
126
99
111
122
93
37
104
105
92
83
77
111
109
141
55
169
146
68
178
122
129
92
178
37
148
69
158
92
86
55
107
180
55
112
97
86
160
164
110
56
74
138
55
135
106
102
146
58
69
126
55
122
56
74
167
114
140
146
67
127
92
168
122
55
86
131
91
110
37
107
86
75
144
138
139
180
75
79
75
169
151
83
69
126
105
135
37
121
123
100
105
84
122
110
178
74
100
69
152
169
140
93
79
87
37
58
55
110
95
169
100
92
94
77
138
92
67
171
126
74
146
79
142
56
127
58
77
111
119
178
105
92
105
37
55
56
55
111
136
131
55
93
92
140
112
144
92
131
144
148
111
92
37
139
111
91
119
132
93
138
104
55
92
97
91
55
167
104
110
148
178
104
105
103
138
92
130
108
105
122
140
92
99
148
117
123
56
84
108
110
105
134
97
56
81
67
144
74
171
93
131
138
126
68
92
163
95
122
107
105
146
120
129
121
114
139
108
122
160
77
92
56
137
105
122
178
109
110
92
98
92
152
92
55
171
112
122
77
37
178
105
77
55
56
93
131
95
126
122
144
139
81
110
109
148
110
123
55
148
169
119
131
105
138
92
130
105
92
110
139
92
55
110
130
55
167
136
105
112
156
56
126
69
110
76
64
158
167
122
122
178
168
88
91
93
79
139
93
92
105
37
56
144
92
122
109
107
99
100
55
108
102
125
79
135
93
58
67
92
93
105
105
107
55
55
104
122
144
92
78
93
77
92
91
122
68
111
92
103
126
108
74
56
55
104
113
92
132
152
86
111
142
146
110
92
92
110
74
142
122
144
98
108
99
169
89
109
37
74
163
89
141
101
37
104
55
98
140
189
75
92
98
105
69
169
112
128
100
93
55
56
146
55
104
110
118
148
89
152
111
138
131
67
107
55
98
102
140
168
91
109
144
86
91
146
131
138
55
112
102
169
110
110
55
136
105
105
110
169
122
144
86
69
123
122
110
105
108
138
92
109
110
117
115
122
58
55
138
112
138
138
119
92
152
163
138
134
58
92
111
107
55
92
132
104
146
126
37
92
146
92
171
67
131
92
114
93
104
127
127
83
56
110
107
67
84
114
37
92
114
110
55
91
109
131
56
139
139
144
56
67
101
104
139
178
138
92
92
104
119
126
114
145
93
92
105
79
93
92
67
109
58
68
119
138
67
127
105
199
56
128
92
110
79
122
149
93
92
74
92
158
105
128
55
110
178
109
98
111
105
55
104
103
92
110
111
137
123
105
86
131
105
138
37
92
123
92
58
124
118
126
152
86
37
92
103
127
124
84
109
127
119
77
37
146
126
130
148
135
103
171
100
105
67
92
79
89
122
67
120
138
119
126
37
178
74
101
56
55
127
104
140
124
55
140
88
128
138
91
103
91
122
117
146
151
110
102
88
104
58
95
76
122
104
79
199
109
110
138
138
122
108
92
122
140
86
84
102
55
124
55
92
140
180
192
162
89
37
127
92
138
56
105
131
167
79
105
103
140
105
180
74
167
100
105
171
122
92
55
105
138
109
55
98
71
81
87
91
199
117
58
122
84
110
103
37
56
75
75
92
110
110
110
110
56
55
67
58
67
126
118
98
110
127
110
126
108
158
103
92
161
178
92
55
152
127
67
104
128
67
139
93
104
119
92
148
86
105
56
139
114
119
119
93
95
92
130
112
127
139
156
105
123
126
128
110
110
93
93
140
136
151
124
134
150
97
75
160
55
163
110
79
83
126
67
79
146
107
110
111
134
139
128
55
197
92
103
122
146
92
139
127
68
129
103
132
55
58
128
92
104
67
146
92
118
55
114
79
146
110
132
103
138
123
110
123
144
92
55
122
93
146
58
126
95
139
75
92
151
111
138
92
130
96
107
126
111
67
109
92
55
114
138
110
139
86
150
139
55
110
126
109
122
67
104
167
103
55
102
105
130
58
146
99
135
120
137
55
138
129
122
109
79
37
119
120
110
144
80
55
105
110
92
124
91
168
115
92
74
146
126
110
127
138
37
105
171
110
138
89
158
92
76
116
69
74
104
139
178
56
178
144
107
110
55
117
177
105
139
126
150
146
152
169
56
76
93
83
55
105
128
67
55
162
131
92
98
138
81
105
122
84
128
152
56
114
122
56
144
73
37
67
107
122
138
128
120
129
89
109
105
112
124
103
67
109
144
105
156
107
95
107
103
69
178
93
93
131
126
58
105
55
122
93
168
56
92
67
88
87
164
86
55
120
158
158
171
178
110
119
92
91
91
107
58
104
158
178
152
135
105
101
110
93
56
138
81
112
140
88
124
152
105
119
58
55
122
178
93
127
74
103
103
105
104
92
167
148
87
145
106
152
127
58
111
110
100
160
92
100
92
123
134
132
110
92
178
107
152
37
104
109
152
112
92
163
83
86
104
105
124
158
64
119
74
144
146
56
68
109
110
134
131
110
37
138
98
110
93
92
123
122
67
92
110
119
81
120
110
126
114
100
69
79
56
144
139
56
131
111
138
146
74
119
146
160
75
37
110
118
88
128
56
122
89
126
128
122
92
105
123
145
91
93
178
139
93
95
148
126
56
126
117
115
108
109
92
79
126
118
134
136
119
92
75
77
120
122
93
74
99
92
74
58
180
56
110
68
138
92
109
126
144
110
110
91
125
145
126
122
152
67
167
138
93
131
104
162
130
105
105
138
56
58
163
92
76
105
127
158
79
81
55
109
178
92
139
93
101
107
92
148
105
76
112
124
128
98
86
120
139
114
105
78
127
67
142
86
139
110
104
180
120
158
104
55
94
75
122
148
105
109
144
101
148
138
126
104
122
167
99
152
92
67
93
110
101
91
64
107
178
144
92
56
122
125
117
55
92
56
138
93
164
74
92
67
128
93
98
138
140
142
69
158
55
79
67
104
110
122
126
67
105
56
91
67
56
93
105
104
92
94
79
92
178
102
97
58
126
104
77
119
77
120
110
93
138
126
92
67
92
112
126
92
122
92
56
67
140
58
84
145
131
110
58
119
97
92
68
55
124
107
119
74
69
162
93
56
55
112
99
122
119
128
92
122
95
100
115
139
111
83
160
75
92
122
158
91
122
93
92
93
114
92
120
100
92
126
122
127
122
92
69
37
113
79
95
79
110
37
124
103
93
92
125
122
67
95
104
122
92
145
128
74
119
92
105
55
105
106
139
110
158
91
110
150
106
134
122
122
103
144
137
106
169
93
67
106
105
163
74
92
107
119
122
119
130
65
105
69
126
104
118
96
67
119
55
148
167
97
98
55
92
110
119
58
110
86
58
122
109
131
92
104
117
123
111
140
109
93
96
178
72
37
37
123
68
139
99
127
67
110
91
126
56
99
136
167
124
126
98
55
56
92
69
120
77
137
105
148
146
111
138
122
180
122
103
127
100
79
56
55
138
105
79
139
109
67
138
92
55
138
55
139
178
67
92
126
75
100
123
67
56
138
86
104
110
178
108
37
105
148
127
111
122
126
110
107
93
138
92
134
144
55
75
163
55
171
110
92
114
55
67
178
146
120
105
127
109
92
56
118
140
67
56
131
107
130
117
164
152
139
92
122
86
88
128
138
134
55
58
125
98
119
74
134
124
132
105
124
177
138
92
120
131
140
111
122
149
93
105
107
92
149
134
99
119
144
97
114
74
89
178
135
56
169
67
178
110
139
79
69
123
69
139
168
55
114
56
58
92
93
152
122
122
93
110
92
58
122
148
113
138
178
127
106
144
92
119
122
111
105
122
128
164
92
69
56
122
128
145
67
119
122
92
171
122
126
56
100
58
138
134
119
94
67
105
92
140
99
107
117
92
69
151
110
92
104
92
169
92
77
138
131
122
127
55
91
138
144
79
75
137
146
56
122
67
124
158
110
152
168
91
92
68
58
132
124
139
74
163
124
92
105
79
55
89
111
74
75
100
119
171
110
134
69
149
92
160
132
111
105
136
103
107
122
69
110
55
138
138
122
67
110
97
101
86
146
37
107
131
164
167
97
58
55
104
122
93
105
84
92
163
107
122
168
69
126
152
169
105
56
97
69
141
146
148
67
93
92
55
74
86
107
146
109
171
84
127
92
109
110
163
93
148
69
123
73
128
37
139
109
122
110
101
146
100
92
37
138
135
138
169
180
131
103
37
68
127
110
145
123
140
103
129
104
102
109
126
55
171
119
99
110
58
122
138
127
105
55
127
93
144
139
126
104
132
117
105
93
122
56
119
109
109
110
111
109
148
92
103
55
122
67
37
119
103
108
67
168
104
145
83
92
55
55
105
93
74
93
58
99
112
79
127
188
55
134
122
144
122
126
84
127
80
101
67
138
127
124
180
79
127
123
98
169
75
169
97
92
79
112
144
92
120
134
92
93
55
99
92
110
100
138
122
123
162
37
147
109
69
55
81
94
126
140
127
92
58
92
67
92
105
92
79
92
124
122
181
96
99
91
136
144
110
86
105
148
178
56
134
74
144
138
130
134
107
104
152
126
74
148
180
105
158
124
171
138
163
97
118
75
86
105
102
77
92
56
93
120
152
137
110
122
92
127
127
122
55
169
102
99
56
104
56
105
58
99
122
124
93
122
126
138
123
55
55
92
67
110
177
91
110
110
122
132
138
97
92
103
77
92
127
67
75
92
55
138
92
146
145
138
111
93
146
55
105
135
86
68
123
178
86
74
126
55
87
130
122
117
122
122
120
123
58
107
124
120
93
139
100
141
95
134
123
74
77
91
55
55
69
92
93
122
86
148
93
99
164
95
74
99
55
110
132
109
105
163
67
83
104
110
55
110
56
120
117
95
158
92
144
110
111
110
122
92
139
103
127
123
152
55
126
105
146
105
83
92
92
131
102
122
126
146
109
109
83
55
55
126
130
122
160
83
92
178
108
56
124
98
126
99
118
146
138
93
105
110
109
177
132
136
123
99
124
58
126
119
137
127
127
109
171
92
122
138
122
105
92
111
77
130
152
171
138
103
167
138
73
110
152
117
131
88
110
93
77
93
134
122
105
83
146
197
123
122
56
92
110
56
178
119
115
93
92
93
140
138
159
138
116
128
138
93
122
178
119
55
56
160
138
118
55
91
123
115
79
111
105
58
120
105
37
58
136
146
110
58
138
73
124
127
100
123
37
123
147
165
100
97
152
55
127
145
104
105
127
122
115
65
138
105
75
101
105
79
139
92
93
145
128
130
67
130
124
79
104
128
146
104
79
67
91
126
144
79
138
146
110
144
123
128
123
122
107
138
67
138
122
127
134
110
128
56
105
111
93
110
100
37
199
91
119
121
128
92
128
67
123
144
77
169
146
110
152
57
104
86
37
56
55
104
105
37
123
110
169
138
122
178
83
93
122
72
134
55
55
105
92
37
123
132
138
109
79
104
101
92
91
92
128
37
134
92
131
92
148
104
79
56
92
152
87
110
78
178
167
117
144
138
109
132
92
77
75
124
162
97
92
110
104
138
58
67
92
56
55
104
75
64
93
126
128
77
110
146
103
58
126
56
37
122
99
131
148
163
111
141
92
134
152
178
127
131
92
146
110
152
92
58
144
56
89
144
105
92
97
69
109
130
105
123
138
139
122
58
138
152
112
138
67
140
134
149
126
55
55
139
55
156
152
130
67
86
91
122
56
110
101
100
79
138
139
138
79
146
55
80
104
148
92
110
92
105
56
138
79
146
37
99
146
178
109
139
105
139
110
138
55
139
109
93
126
55
74
139
117
107
111
148
37
68
144
105
140
67
123
122
100
78
126
92
144
75
55
86
55
123
77
92
67
92
92
79
137
128
73
55
152
93
110
122
68
92
106
132
126
122
145
109
129
86
107
105
92
93
138
128
142
101
99
79
95
64
126
144
93
123
92
138
111
180
58
37
111
92
180
130
104
67
189
111
158
126
92
118
86
56
122
122
69
178
92
56
98
93
92
123
122
126
178
110
178
91
123
105
131
86
93
56
144
126
68
122
127
67
111
126
55
140
104
168
37
58
55
79
92
37
122
138
56
104
168
92
114
69
139
77
55
104
56
92
137
67
58
156
104
37
124
74
84
126
168
104
104
126
102
37
139
158
91
119
102
92
138
118
178
199
169
74
122
92
107
100
178
111
75
92
69
152
168
134
97
91
55
110
107
119
105
96
74
144
101
122
146
91
101
75
178
79
158
105
138
105
69
138
104
146
127
93
148
148
122
107
139
67
74
105
115
92
103
77
152
92
118
56
80
122
92
92
139
83
105
92
138
92
92
104
69
58
146
169
138
55
111
178
122
110
56
77
104
128
92
171
55
55
130
110
135
105
79
74
94
167
127
139
178
110
58
67
74
123
89
139
126
104
146
140
120
56
74
99
138
92
128
67
58
101
75
110
126
67
138
104
88
56
118
117
109
67
121
146
139
126
117
92
37
55
120
92
93
68
171
128
169
93
78
92
109
110
77
74
110
91
104
110
139
144
56
105
92
37
86
98
92
164
164
94
37
110
122
138
122
55
105
110
123
92
126
122
141
96
37
105
111
101
91
109
83
148
114
124
74
115
110
91
171
56
104
126
105
124
77
120
107
134
75
100
133
127
77
123
119
124
56
91
126
74
58
79
128
124
122
114
104
105
152
112
117
101
83
77
77
95
92
110
138
178
152
127
78
74
110
92
108
138
67
93
67
110
37
102
192
56
114
55
104
122
156
126
105
92
55
89
110
56
105
134
67
123
92
126
126
125
92
122
130
101
108
164
55
178
178
56
156
77
105
127
126
101
146
119
122
112
58
83
128
143
92
105
80
105
148
102
148
104
110
100
92
92
105
68
80
122
168
111
124
122
93
123
37
124
126
105
93
111
122
105
144
37
126
122
122
92
91
55
160
105
131
92
37
180
69
77
84
138
138
128
126
128
126
107
55
134
122
111
127
118
140
55
146
124
58
122
74
37
93
92
55
105
67
137
103
99
74
136
67
104
86
132
93
37
139
130
101
89
135
58
110
91
167
146
55
93
58
58
104
67
93
110
92
126
152
92
126
137
56
105
122
105
158
58
69
92
104
92
92
105
122
178
171
136
126
122
103
56
111
132
136
122
139
134
74
138
139
126
146
109
126
111
115
144
126
105
55
92
58
69
104
92
104
100
56
122
64
92
167
126
164
134
138
67
169
110
105
106
146
93
138
131
146
160
110
74
127
127
122
139
152
178
168
101
123
134
169
77
67
119
86
110
126
37
110
138
103
103
130
58
67
92
126
111
91
138
92
105
104
146
93
139
114
58
106
99
69
146
144
118
79
55
37
180
67
67
144
69
148
111
105
131
110
110
124
92
84
92
56
178
100
104
122
109
92
55
93
124
92
105
168
105
105
105
118
131
122
138
91
92
126
105
178
104
152
37
37
92
105
56
178
83
126
126
109
163
188
95
159
102
98
127
37
152
75
128
37
146
77
55
92
91
121
74
74
111
126
126
131
127
58
105
126
105
110
37
144
89
177
128
132
140
55
74
104
77
92
92
146
55
160
126
107
122
105
148
138
105
107
55
55
91
138
67
119
132
131
92
111
162
160
168
92
56
109
188
99
86
67
123
89
117
126
103
146
111
92
68
122
127
99
80
126
56
105
92
103
126
136
92
105
171
156
55
178
67
122
92
75
92
145
125
56
77
126
55
91
160
120
92
110
105
132
100
117
119
55
67
67
92
128
98
83
92
74
37
138
118
105
163
55
93
156
69
93
146
148
67
55
120
104
58
105
95
122
126
92
92
111
126
83
122
122
37
109
86
83
126
124
68
55
117
77
139
107
140
139
68
142
91
122
122
134
67
91
104
67
75
92
56
58
69
165
122
88
86
55
105
55
119
126
112
139
148
122
107
56
118
168
110
178
97
123
55
96
145
58
37
127
104
74
104
93
128
169
92
122
69
91
130
158
67
126
92
121
98
131
148
141
138
127
123
84
105
168
122
146
119
104
68
126
110
138
144
58
107
56
101
110
86
126
75
110
110
117
122
79
110
126
77
92
123
74
160
86
67
144
126
127
122
74
126
58
69
106
122
67
109
79
138
94
134
104
79
140
156
67
127
110
55
140
130
109
178
160
106
92
56
104
113
125
163
144
126
97
146
97
112
84
74
69
92
111
138
112
117
122
109
84
77
67
103
104
140
37
138
122
67
92
127
135
178
165
146
69
37
145
136
55
122
168
138
106
110
118
118
74
138
114
86
92
81
122
158
92
97
146
69
56
89
92
163
67
74
178
92
126
77
132
83
77
111
105
104
74
75
122
92
37
101
86
135
92
126
92
55
97
146
105
139
110
95
123
108
100
93
56
169
105
55
91
171
169
92
67
105
55
104
55
138
75
101
169
122
92
126
105
110
110
178
138
95
77
107
111
122
103
105
105
103
126
131
168
126
103
139
92
146
178
115
119
107
83
126
37
144
110
55
104
119
56
92
138
126
37
146
56
122
107
91
149
163
104
110
68
69
165
110
103
92
102
104
146
122
139
56
92
55
110
101
153
55
147
55
110
123
139
96
93
55
119
92
152
110
56
151
119
138
122
146
104
130
93
37
110
92
144
93
136
104
139
56
77
110
199
107
138
105
75
96
138
55
101
131
110
118
74
109
105
68
122
101
140
68
178
56
126
92
75
93
134
58
158
158
169
105
67
114
144
169
56
91
130
58
199
56
143
115
67
130
55
37
75
103
69
98
99
55
83
113
119
126
139
130
105
124
127
67
92
126
105
127
56
55
89
55
126
160
83
55
144
110
134
91
138
138
92
55
105
93
152
124
56
79
123
92
55
55
74
84
77
97
92
119
98
146
152
55
126
92
126
138
98
112
130
164
136
67
109
112
111
118
55
76
93
93
68
123
138
92
111
160
178
92
122
156
86
119
112
162
37
131
92
105
69
104
122
93
74
68
77
111
58
152
75
58
162
140
136
110
178
100
122
92
86
104
79
109
92
126
97
37
107
79
137
158
126
104
74
56
103
139
99
104
119
55
110
140
75
137
139
144
92
84
91
72
143
169
107
144
108
104
132
101
92
100
92
98
142
86
152
107
89
126
55
92
119
104
126
146
122
92
55
67
128
169
144
113
92
104
122
144
126
84
131
144
56
37
93
110
162
171
93
144
112
97
128
189
136
55
109
106
67
127
93
126
139
152
126
111
91
134
93
98
110
77
119
74
91
138
68
55
93
119
127
56
67
92
130
75
81
124
74
100
144
108
99
127
86
86
74
92
55
150
127
110
95
132
122
122
152
55
156
105
145
138
128
110
107
128
163
92
104
134
89
140
146
138
123
128
98
164
144
122
56
68
122
138
92
111
103
126
99
137
55
106
104
122
55
107
55
105
68
110
127
178
108
144
85
55
111
56
67
120
97
83
127
74
145
97
104
55
106
105
104
134
120
126
104
126
55
92
163
123
110
134
69
110
91
105
126
55
67
138
104
105
178
105
162
140
134
93
55
108
107
94
77
92
126
128
156
55
126
111
69
126
110
95
56
105
37
92
100
67
122
58
137
77
79
120
99
140
126
92
134
138
77
126
139
110
109
131
37
104
55
149
126
110
169
37
104
118
92
74
134
56
160
86
93
152
119
134
37
122
167
151
99
119
77
169
126
67
104
100
56
58
69
128
110
74
110
95
122
126
56
97
104
124
131
108
105
69
104
55
130
58
69
105
75
123
55
148
56
58
105
118
139
92
67
180
92
144
106
127
126
105
178
139
37
69
92
127
110
67
178
99
77
55
111
148
126
132
104
55
141
100
160
110
105
56
122
103
146
55
104
77
160
123
80
148
93
122
158
144
169
99
112
146
100
69
134
104
131
92
56
134
104
107
98
56
108
126
108
109
93
171
74
92
106
55
55
110
93
107
128
93
102
178
123
103
134
178
122
145
92
114
92
91
178
103
104
69
75
140
127
140
145
93
126
55
110
58
138
132
149
88
100
101
126
110
68
74
79
68
68
37
180
97
107
55
105
112
83
122
69
86
122
199
101
37
93
37
58
92
136
105
92
68
37
110
104
105
55
122
126
61
134
110
93
122
67
110
114
123
67
169
138
168
119
126
55
92
92
140
136
148
110
98
104
95
131
67
55
99
91
105
89
139
127
152
55
78
109
107
112
138
105
58
134
94
130
55
152
74
92
119
126
112
110
55
98
178
164
146
119
110
80
92
110
92
146
110
92
134
126
152
167
119
129
119
182
92
119
169
110
128
92
126
165
135
93
178
75
77
100
127
112
118
56
93
110
110
111
92
114
138
37
118
68
138
139
104
110
138
104
144
79
109
105
140
37
79
105
139
127
97
139
169
77
119
138
119
95
56
67
55
101
110
56
97
126
100
56
55
104
138
118
37
105
128
132
135
144
79
110
140
93
122
69
93
55
93
138
92
122
106
105
148
118
118
83
110
136
92
168
105
152
110
122
111
169
92
92
77
105
110
158
152
92
92
104
97
139
55
93
138
177
56
119
75
67
105
167
124
67
97
55
128
92
90
75
127
146
92
114
122
134
83
139
126
58
136
92
138
119
132
134
119
122
132
146
91
178
124
126
132
139
110
114
188
126
104
110
102
101
178
77
168
91
86
67
105
106
120
123
144
37
67
139
132
111
124
92
148
138
67
107
139
93
105
105
139
139
96
115
145
126
92
114
128
55
99
74
105
67
126
107
128
74
108
158
77
69
122
99
131
117
178
55
122
83
67
142
122
92
112
119
146
92
67
126
74
79
92
98
105
146
123
55
164
55
79
92
126
152
119
117
105
134
92
169
79
55
104
121
122
104
122
123
75
83
86
74
126
107
68
100
104
169
126
144
72
107
56
92
126
55
107
105
104
126
139
77
137
86
122
93
110
135
137
92
80
99
104
146
127
58
127
138
169
110
107
99
144
114
131
99
37
178
122
55
67
93
101
140
126
98
119
79
108
91
122
122
58
75
81
119
84
134
93
67
91
151
123
77
67
105
92
92
152
127
79
58
119
123
178
105
56
110
96
79
37
103
144
111
130
152
120
75
162
58
122
102
68
139
146
123
88
78
122
105
110
132
139
126
104
146
96
79
93
93
119
148
92
74
123
69
86
58
163
103
77
119
102
92
103
107
119
99
56
92
56
89
86
146
75
145
169
77
111
118
93
119
146
137
55
92
134
144
37
115
138
93
92
69
122
124
92
92
111
105
169
144
141
141
178
67
105
158
92
58
74
126
55
104
122
126
56
83
111
117
92
122
138
115
97
37
55
84
126
67
74
126
122
138
110
110
169
86
122
110
84
92
93
103
144
92
123
83
102
93
148
152
119
55
127
105
55
178
37
163
124
58
56
110
135
138
105
180
67
171
92
137
91
137
124
148
89
144
128
134
105
58
92
139
111
78
123
56
140
72
55
75
92
105
69
69
96
139
109
107
146
123
144
105
55
104
67
67
79
58
128
128
129
92
122
67
152
55
55
152
148
104
130
144
92
93
117
138
140
110
104
104
122
108
86
107
104
93
86
152
122
127
124
93
152
127
144
128
104
112
178
144
86
144
68
105
77
109
104
56
105
58
109
138
55
92
86
105
56
102
126
110
94
146
92
126
124
93
93
86
69
93
107
129
148
104
79
105
67
138
69
111
83
124
169
111
138
56
55
37
109
117
69
167
136
129
122
136
83
110
83
93
119
84
140
139
109
69
122
92
122
136
92
83
91
93
140
128
105
75
114
126
178
99
132
110
127
163
76
107
92
110
93
58
138
135
69
105
89
77
77
67
55
122
56
56
109
122
146
138
105
137
67
67
169
104
105
123
128
178
168
92
37
92
55
139
178
110
123
93
58
55
69
158
55
109
84
177
160
99
91
124
142
104
67
99
112
107
69
107
178
86
122
55
75
140
104
69
92
122
37
138
97
110
96
105
112
135
145
105
112
168
110
135
171
104
86
73
152
37
110
89
105
199
74
99
120
136
122
111
74
92
83
122
146
137
105
135
126
56
104
91
103
144
92
95
91
77
93
139
140
56
104
108
74
138
117
126
178
67
140
144
147
127
86
92
118
92
144
104
93
58
56
75
99
105
152
37
139
119
83
93
122
75
110
103
130
104
180
109
95
114
119
110
93
178
74
93
105
67
55
83
69
91
37
91
138
135
102
112
126
105
118
134
93
120
182
55
92
37
105
105
92
148
119
109
122
92
110
67
92
178
55
128
114
178
178
92
144
92
145
58
105
105
110
86
110
126
79
110
110
132
86
128
120
152
105
77
144
119
131
104
128
123
89
91
119
114
111
144
110
178
162
178
92
144
105
178
146
112
92
109
83
165
92
83
104
100
152
56
67
122
122
74
103
152
105
99
110
58
92
86
55
56
107
79
56
107
126
122
69
67
37
128
122
139
86
93
122
93
55
139
146
55
83
126
119
86
126
138
110
97
97
92
69
58
110
126
69
67
127
118
124
144
128
119
67
58
105
56
105
69
107
37
88
122
93
130
93
91
118
122
106
55
110
102
58
67
130
109
98
58
151
128
126
178
55
55
55
123
122
138
77
110
92
136
55
92
122
68
138
74
134
37
105
37
122
140
92
134
126
122
131
126
99
92
126
55
91
105
180
67
79
131
81
146
126
113
68
104
67
122
127
91
92
167
111
86
93
55
93
110
92
56
138
178
139
122
122
147
110
91
127
37
110
106
114
178
92
144
134
123
58
92
107
160
92
109
139
55
75
80
73
169
91
93
127
55
126
127
117
55
128
109
123
67
108
92
97
86
101
55
110
140
138
146
126
134
107
55
144
140
122
178
111
130
178
99
140
148
69
92
127
138
128
107
158
111
144
37
67
77
122
110
86
110
103
144
55
69
92
126
138
105
92
37
55
144
111
124
109
75
105
55
144
152
103
127
101
128
131
144
93
105
92
86
122
74
127
110
105
95
79
120
99
130
163
110
152
100
104
104
55
56
138
92
74
92
127
83
140
123
142
111
115
138
148
180
104
110
110
152
69
106
110
139
74
139
93
93
111
77
69
152
74
56
106
92
93
160
169
112
138
86
110
114
163
134
146
107
37
99
92
105
123
74
124
95
109
126
91
92
128
69
122
57
92
91
93
98
119
77
111
163
105
99
93
122
79
110
150
145
86
95
103
106
92
37
56
110
113
67
103
67
107
77
158
128
132
122
75
67
105
103
97
109
105
138
120
37
56
119
123
92
146
146
37
92
99
123
135
67
128
55
92
118
69
144
55
74
144
37
122
120
131
110
88
138
139
56
120
79
74
110
122
124
55
92
123
56
93
139
58
37
104
104
84
93
128
139
98
58
91
136
72
83
55
124
127
56
111
108
168
69
89
130
93
110
168
120
105
103
115
138
127
131
126
77
79
122
92
81
105
152
132
144
120
106
92
92
138
110
77
84
69
128
138
127
55
130
168
109
105
61
55
118
98
110
56
104
86
56
98
126
110
138
74
91
55
164
123
122
122
92
163
180
126
146
85
144
55
132
122
138
93
178
99
110
139
129
138
105
188
93
67
104
128
55
56
122
126
126
105
83
93
122
126
55
126
105
128
145
92
160
180
126
122
119
99
122
104
92
122
178
139
92
112
144
104
67
61
126
171
56
75
168
109
77
104
110
100
92
152
101
120
83
123
65
97
56
122
112
152
122
79
77
91
131
67
146
114
97
144
105
93
152
138
55
107
75
146
100
67
114
130
105
126
150
86
91
122
107
93
110
55
75
103
146
92
126
104
92
92
105
138
152
139
67
81
92
128
137
114
93
92
58
105
67
92
105
94
55
111
128
122
105
104
148
74
115
137
106
37
92
138
37
128
95
110
138
160
56
92
149
127
122
115
105
126
139
69
56
74
178
168
122
69
122
163
89
92
122
67
37
77
152
92
92
103
139
178
127
121
144
67
98
110
112
98
74
118
126
178
92
122
111
103
91
37
178
69
107
151
146
92
144
144
138
122
91
92
104
123
137
55
119
37
110
126
67
144
55
134
92
178
75
126
123
122
122
110
67
110
122
122
139
149
138
110
55
83
163
104
37
92
128
92
69
55
83
152
37
138
138
91
110
107
106
126
139
178
74
126
75
69
158
126
55
95
144
139
105
126
92
152
138
104
55
83
107
92
138
74
128
144
81
56
86
105
105
111
128
89
77
98
188
107
139
74
115
122
119
84
75
56
93
92
127
58
55
56
130
131
152
93
146
92
132
67
56
152
139
86
101
146
55
79
86
94
126
67
74
124
103
56
91
56
137
148
74
92
69
144
93
103
138
69
178
127
99
37
92
138
93
92
92
126
127
137
92
128
101
93
56
104
94
56
77
110
105
92
127
79
105
148
126
122
55
126
105
102
135
117
128
135
58
105
128
55
152
67
98
111
132
103
131
144
109
178
105
122
87
122
148
105
92
144
92
104
147
92
77
127
37
95
67
67
92
69
105
105
110
102
55
110
139
122
139
130
120
143
67
84
138
169
96
146
134
87
109
92
67
110
92
178
88
55
154
168
114
111
74
106
144
104
104
92
100
127
104
119
93
163
109
58
91
55
127
124
109
93
69
83
93
92
92
104
104
144
105
138
86
101
119
138
114
129
126
127
56
104
105
56
107
122
104
122
79
67
178
74
158
120
146
73
144
105
122
93
127
92
86
126
110
37
134
123
86
139
105
105
128
146
97
56
112
67
126
110
141
146
132
139
105
105
127
93
67
150
67
110
131
56
119
55
138
67
140
122
97
140
126
112
55
69
109
127
144
178
99
109
123
126
122
93
37
100
140
169
67
118
131
92
105
56
55
104
56
112
156
178
127
79
55
169
126
56
117
114
136
134
58
128
37
128
99
110
104
192
178
126
152
55
132
56
92
76
178
140
105
56
115
123
99
67
112
111
37
144
92
122
122
92
86
134
56
180
55
138
112
145
127
92
89
55
55
55
115
101
55
99
93
55
92
134
122
67
104
148
105
139
67
180
138
140
119
127
55
134
110
127
92
95
93
144
178
110
37
56
80
127
169
122
67
86
111
104
93
122
132
121
122
105
55
81
152
122
122
139
79
127
178
138
122
119
128
122
162
58
135
124
103
121
93
139
139
92
55
115
104
115
140
110
100
103
139
126
92
98
139
134
92
152
126
138
122
67
138
119
97
144
56
126
37
114
113
77
163
114
162
122
104
87
137
81
67
119
110
158
55
134
146
132
69
178
148
92
107
111
55
138
110
104
169
98
140
92
77
67
178
152
122
75
132
122
55
55
104
138
67
86
55
138
122
74
100
95
122
110
104
126
91
93
119
178
93
110
138
87
93
92
93
67
131
138
126
67
79
134
127
126
118
104
123
139
135
122
105
110
92
138
56
75
105
126
78
56
67
93
56
160
74
92
122
55
158
105
92
37
92
120
138
126
37
99
68
99
127
55
77
124
92
86
84
55
105
100
110
69
37
55
144
169
92
84
107
110
110
110
107
146
55
105
180
92
97
92
69
58
75
110
162
109
163
56
199
56
92
149
169
55
139
55
115
92
164
152
101
92
107
89
55
148
164
56
74
103
93
74
127
101
92
138
55
105
124
122
93
178
144
178
122
122
92
93
92
37
104
91
136
37
117
105
128
110
138
122
132
67
105
126
105
55
136
74
105
105
79
140
91
93
69
58
37
123
124
55
110
114
152
92
55
119
37
67
67
56
169
92
77
123
110
55
115
86
139
146
138
56
92
169
98
110
105
120
122
118
92
95
112
168
113
132
105
127
119
55
99
169
123
126
160
146
138
178
99
105
104
92
104
67
67
130
69
119
126
124
107
92
109
58
110
56
127
106
169
119
97
122
128
86
126
111
138
123
77
61
144
91
134
37
169
110
130
92
140
97
91
134
113
169
130
125
124
55
122
146
139
111
105
110
134
122
93
56
69
55
56
178
119
92
152
69
55
37
109
92
127
122
137
136
140
92
98
97
124
106
105
55
75
104
139
111
109
102
105
112
92
171
148
104
92
89
58
100
178
138
93
119
128
101
56
152
37
93
115
79
136
110
101
55
112
125
93
146
64
105
55
67
123
152
178
92
93
127
67
107
111
104
124
55
139
93
58
118
37
55
58
138
64
37
162
105
122
79
123
77
91
75
68
123
110
55
118
126
114
106
127
130
110
122
92
122
158
152
110
111
75
114
81
105
122
164
146
92
139
122
126
126
143
128
146
111
110
136
138
144
139
55
121
56
126
146
144
93
139
136
84
122
128
152
67
104
77
37
123
169
123
55
132
148
126
92
135
58
117
56
134
105
104
126
56
126
92
100
138
105
138
93
55
138
138
139
119
101
92
122
89
126
132
92
69
146
120
180
150
76
103
164
180
126
92
128
103
92
74
67
106
139
134
130
56
112
55
134
182
118
58
138
126
146
123
104
114
149
123
104
92
100
122
178
138
55
92
105
77
91
92
138
91
138
111
58
55
58
141
103
138
91
171
165
125
127
84
92
144
125
84
137
146
121
111
138
144
74
37
128
128
119
100
104
134
55
67
127
93
123
67
37
67
91
92
55
69
138
128
83
163
139
107
130
144
122
92
127
134
56
134
69
95
139
80
126
169
67
105
55
74
55
152
56
138
128
110
75
56
137
178
123
106
92
86
180
138
122
93
58
67
110
92
168
105
92
110
79
78
55
168
117
144
99
92
55
55
89
92
126
123
55
79
126
110
107
139
94
160
55
118
37
92
128
93
122
93
58
101
105
92
105
79
134
92
105
105
103
55
158
128
58
126
145
169
92
110
92
123
92
99
103
126
100
126
58
111
131
140
58
123
102
139
140
122
86
92
140
92
178
127
144
101
164
109
105
91
91
134
97
55
92
102
134
138
67
105
138
107
156
171
77
107
67
84
128
74
168
119
167
112
91
104
69
127
150
132
105
123
110
91
97
124
64
158
147
148
79
102
123
92
106
80
142
80
127
55
121
84
132
162
123
138
67
140
56
144
58
92
126
92
92
178
92
93
55
128
126
177
138
68
119
138
152
107
135
146
68
122
69
105
139
110
58
74
128
110
99
169
83
55
97
95
56
128
128
69
55
127
160
58
144
75
104
67
119
122
109
152
92
67
126
119
138
64
122
126
101
119
55
132
124
178
105
126
122
152
124
135
79
69
127
86
74
119
100
167
139
55
119
92
138
134
104
79
125
126
56
144
144
127
110
93
58
93
74
93
118
158
152
74
100
178
110
86
117
37
92
91
137
37
135
79
103
67
92
117
58
105
123
110
106
128
147
72
140
37
58
94
127
123
165
126
158
127
121
74
88
138
126
141
56
84
138
93
104
67
55
146
108
142
92
67
115
92
110
109
123
110
111
140
95
109
55
122
67
105
122
55
122
111
134
127
92
146
158
138
105
91
122
109
89
126
55
69
123
110
75
74
55
68
84
77
130
178
86
84
127
139
165
55
122
122
110
91
101
37
115
79
178
86
152
122
126
74
58
136
114
58
119
55
58
92
105
139
137
115
146
104
105
105
122
86
106
86
95
92
188
126
105
105
122
130
97
77
110
87
110
152
127
98
126
122
105
93
91
126
126
86
128
138
86
88
92
37
105
92
160
92
86
58
120
88
163
67
37
117
139
93
128
146
103
134
178
98
139
93
135
100
92
110
110
134
132
56
55
163
56
117
67
133
138
67
158
139
88
77
104
92
92
67
109
67
132
126
79
109
58
92
171
112
138
138
56
117
77
107
79
92
178
129
138
58
105
91
98
138
109
58
37
180
152
126
86
138
105
86
55
123
144
138
95
140
37
110
137
92
56
138
146
144
122
58
101
58
109
109
178
139
140
93
92
178
92
158
84
108
119
56
77
99
122
77
99
84
114
37
55
144
75
127
138
79
37
55
103
95
91
138
151
92
148
87
110
109
69
104
163
126
55
104
119
126
123
97
86
37
104
140
146
163
122
152
92
92
144
117
99
92
56
56
74
56
123
99
92
92
55
121
95
131
110
169
86
103
109
122
136
67
111
178
158
132
140
91
74
134
55
37
111
92
105
122
125
105
110
79
74
55
79
55
79
55
81
119
122
146
105
74
125
37
67
130
139
92
101
110
56
114
104
91
118
136
92
92
67
165
178
110
141
55
105
92
120
137
178
122
93
86
92
144
55
98
55
92
92
67
93
56
55
126
77
164
146
131
83
89
77
106
55
167
128
92
138
86
55
178
56
126
127
163
105
181
160
152
92
64
129
92
122
79
115
126
56
107
199
123
92
84
93
77
92
92
37
114
127
94
146
69
152
55
92
126
126
55
98
56
110
117
92
55
126
138
152
128
144
55
127
122
83
120
136
107
139
99
139
67
126
84
55
67
111
110
97
122
92
188
91
103
92
146
37
140
79
94
58
144
140
100
169
55
55
152
132
91
116
67
130
158
93
96
83
107
109
126
37
122
138
171
55
118
123
37
93
123
117
67
126
130
56
86
106
104
104
139
127
86
101
58
130
152
92
100
55
124
152
123
87
110
104
131
55
55
130
92
148
86
122
55
134
146
162
123
77
109
104
119
77
88
55
92
178
77
55
77
93
56
56
146
117
69
111
105
55
104
108
100
126
111
105
92
112
144
178
123
106
69
105
93
83
111
106
61
86
149
179
138
139
105
131
56
92
92
56
121
126
67
103
112
77
124
123
75
139
101
37
56
105
122
144
86
84
130
144
80
83
88
55
130
126
55
93
128
67
83
110
105
105
79
84
106
139
180
88
126
92
105
139
136
86
109
106
138
105
92
107
56
91
67
131
55
105
58
109
74
122
105
105
138
98
126
58
148
55
126
67
152
122
126
105
127
110
75
154
110
127
138
158
120
119
110
120
139
122
86
97
104
134
167
119
108
99
197
75
129
92
69
69
110
97
84
92
123
93
99
114
105
119
138
169
92
126
101
92
105
169
112
108
103
140
93
134
92
75
127
139
146
68
95
88
123
77
58
126
180
104
93
123
55
37
140
92
146
138
182
107
122
100
107
144
79
92
138
56
58
123
91
130
124
180
105
69
93
113
92
105
140
110
107
148
83
146
96
92
56
92
130
114
37
119
134
105
104
75
139
92
131
104
110
118
152
127
110
56
110
78
110
98
107
110
112
122
127
109
122
122
138
110
126
67
55
79
92
104
134
56
144
122
91
181
55
114
110
169
124
67
96
67
123
122
140
92
104
126
83
97
99
55
92
92
180
108
91
168
123
139
92
83
122
144
56
131
56
146
58
178
105
146
127
81
122
163
67
67
127
83
58
144
110
56
119
95
110
112
138
110
138
126
103
128
138
86
123
109
138
126
123
122
104
152
139
136
122
93
94
110
83
110
117
92
128
79
146
79
158
139
67
118
119
105
55
110
146
123
110
139
113
138
86
140
134
110
122
112
69
152
93
119
118
93
124
69
103
144
105
169
129
67
91
56
55
92
124
105
162
112
127
144
68
138
126
58
104
118
37
148
102
126
122
130
110
79
55
107
84
92
86
105
132
69
105
67
75
122
111
74
180
112
104
67
138
37
105
140
92
79
97
109
97
134
37
118
110
99
92
56
105
171
158
152
93
55
37
132
104
55
92
138
84
37
78
131
138
67
77
114
130
79
79
122
93
75
127
164
75
169
67
124
152
99
111
126
113
139
178
37
89
93
104
67
92
163
127
99
56
110
151
130
134
138
122
138
55
137
101
80
67
55
140
105
93
182
171
56
163
87
94
95
126
104
105
105
92
171
178
91
91
146
138
111
123
109
102
169
112
131
69
55
105
110
122
91
86
75
115
92
127
169
74
178
109
93
178
92
56
67
122
137
91
37
122
140
168
124
55
169
119
105
104
119
93
101
111
55
74
104
199
55
119
99
91
76
141
84
69
122
107
124
79
79
105
180
77
56
130
37
92
109
123
110
98
144
110
111
128
110
122
92
114
123
138
119
92
93
137
115
74
122
139
79
92
67
86
138
167
98
122
77
178
126
56
93
104
93
135
79
107
67
85
67
86
140
139
92
139
92
110
132
139
37
93
89
138
122
91
55
106
137
79
37
85
122
83
119
127
104
126
91
67
55
105
152
92
123
99
109
107
110
128
128
68
111
123
69
93
153
93
127
105
105
128
68
102
56
92
152
147
110
55
105
107
55
58
105
69
95
144
124
105
131
92
178
128
144
77
107
114
93
148
122
100
136
126
139
147
128
110
74
148
107
111
55
127
123
144
37
125
69
144
104
37
114
140
104
55
55
81
92
91
131
126
79
105
105
122
122
72
138
103
100
138
105
104
178
158
126
103
98
178
56
123
55
114
145
93
55
152
163
84
92
138
162
67
169
79
142
169
110
58
122
91
110
110
92
165
78
92
37
55
165
99
98
105
119
93
91
134
126
92
144
88
118
126
55
67
138
128
122
92
91
178
141
55
114
122
110
110
152
117
92
132
75
92
152
67
55
109
92
138
127
169
126
138
138
74
124
93
112
122
77
163
104
122
126
69
83
127
92
93
69
118
105
93
67
105
79
107
126
111
102
139
77
110
74
95
122
178
55
120
128
107
131
105
105
122
93
178
178
109
152
69
139
120
128
83
91
178
99
55
55
138
107
148
97
55
93
105
122
119
67
101
67
119
126
69
100
152
109
67
93
128
138
169
122
122
111
128
105
110
110
72
92
138
169
110
110
84
92
69
75
162
84
130
67
104
55
110
75
112
91
126
55
122
144
117
55
148
79
93
55
117
79
69
69
68
128
56
99
122
127
146
178
87
103
37
125
126
37
58
37
138
91
91
130
92
55
86
104
79
134
169
67
105
110
55
104
67
152
105
124
126
146
135
93
199
112
160
114
55
122
168
136
127
127
106
127
119
92
138
178
168
86
126
79
37
83
127
75
92
110
127
91
103
126
152
139
138
104
141
110
110
122
103
148
56
92
55
139
130
144
55
55
182
108
128
126
111
178
123
69
56
92
79
134
115
127
126
84
86
129
138
56
55
141
101
126
69
37
56
126
55
180
122
72
104
84
84
111
178
99
99
92
109
68
98
139
138
137
105
77
138
199
152
101
124
92
140
86
112
83
126
93
97
130
126
105
178
55
108
168
74
108
92
97
130
144
91
126
58
93
69
69
67
110
58
128
126
138
86
58
58
55
127
86
120
67
146
122
107
105
152
110
122
124
67
124
121
105
110
122
126
178
67
67
88
152
100
109
105
92
122
69
89
126
93
68
146
110
98
110
146
55
199
136
107
37
126
128
126
110
92
115
127
69
112
94
110
119
139
136
58
56
93
140
158
37
67
91
104
129
126
67
129
83
144
138
144
92
152
110
93
127
169
138
131
123
105
55
69
127
126
152
91
152
178
148
74
103
91
123
55
109
102
103
55
146
118
37
37
122
180
127
55
108
75
149
146
100
110
117
79
100
105
93
67
169
178
112
106
83
138
91
110
92
93
55
178
138
69
37
110
56
178
126
98
110
123
109
55
79
110
68
86
99
96
144
169
93
119
58
110
128
74
69
130
105
138
79
58
110
138
126
128
110
126
108
122
55
107
68
110
106
122
68
84
110
110
74
122
110
138
99
122
105
134
84
105
79
77
107
119
110
117
99
138
92
79
92
108
105
104
142
139
110
146
89
169
152
105
111
91
68
138
122
118
128
55
152
146
55
74
98
110
67
110
138
104
138
123
67
160
55
68
126
124
163
126
134
74
118
69
144
132
146
79
97
131
56
122
127
74
58
125
79
105
127
138
79
114
152
105
178
111
37
109
126
105
122
37
75
127
105
78
127
79
167
83
112
103
105
99
124
67
92
122
139
55
104
92
37
139
75
140
55
67
75
134
56
79
122
58
55
144
55
152
122
171
55
111
140
139
92
119
140
107
99
125
171
86
102
86
136
122
92
119
122
138
124
126
122
92
102
122
67
168
55
86
55
134
86
103
91
88
128
147
171
160
124
93
92
77
119
79
134
110
67
114
126
92
67
119
104
158
121
127
100
93
97
92
99
104
148
126
124
105
126
111
104
55
87
58
67
56
117
92
110
37
148
77
86
103
127
138
98
56
122
109
144
77
98
138
105
114
145
92
114
105
37
37
171
56
79
147
180
126
122
163
137
92
138
142
77
55
152
86
126
56
144
110
64
152
93
67
104
93
55
139
144
37
103
104
92
104
126
127
138
110
99
93
86
104
169
122
75
146
147
146
92
67
139
58
69
122
138
55
93
122
124
67
55
55
77
169
138
105
163
137
109
101
123
162
106
104
92
104
169
92
74
74
128
107
119
104
92
79
171
125
69
77
86
56
75
126
158
127
93
132
119
110
58
84
92
139
92
104
93
126
79
139
104
91
79
92
79
123
126
127
146
104
106
122
56
98
37
132
95
126
107
75
111
165
79
104
92
122
55
109
37
182
114
131
99
112
97
92
91
93
104
112
139
169
104
55
77
122
104
128
74
105
110
92
124
144
92
93
37
110
103
105
132
56
152
91
136
123
98
92
55
109
168
167
67
119
100
104
161
105
126
98
126
92
112
144
109
55
122
98
104
138
126
104
126
86
148
152
119
79
92
58
55
97
140
163
128
69
122
149
67
69
92
99
95
110
122
86
92
68
100
105
126
171
148
104
126
55
138
93
69
86
138
74
92
79
55
92
109
55
97
144
124
127
119
37
152
92
69
93
67
126
152
99
171
92
99
106
104
138
160
91
163
122
122
37
132
138
77
122
177
37
138
122
128
55
127
110
152
120
138
178
83
122
105
55
92
144
127
74
92
67
134
152
92
92
122
124
122
111
83
92
110
83
99
105
138
138
37
105
92
138
92
139
107
120
55
128
114
144
88
56
163
128
119
110
75
56
107
56
92
91
104
92
138
93
91
182
74
104
140
104
122
138
83
138
75
134
152
104
55
127
148
126
178
104
128
55
67
135
118
86
113
68
119
122
77
77
123
138
69
114
93
55
55
88
107
111
158
86
37
105
162
152
140
37
119
122
110
104
126
78
107
122
93
37
110
105
127
93
127
101
69
105
91
99
144
99
105
135
122
105
107
109
123
138
144
80
77
92
152
105
139
111
94
138
123
104
92
119
105
118
146
138
105
138
75
144
123
104
109
120
154
126
92
122
67
93
77
83
134
104
55
105
152
152
98
124
91
99
103
55
69
105
182
77
67
180
126
69
162
96
138
120
99
105
138
110
109
37
92
112
91
138
95
111
109
99
110
105
129
159
123
134
131
58
74
93
110
112
86
164
100
55
86
105
84
124
112
86
113
123
104
55
105
128
99
152
146
139
107
138
139
83
69
139
110
167
105
103
122
91
130
86
131
131
127
92
68
122
178
110
120
89
110
169
154
67
144
92
110
88
77
56
139
127
199
152
92
91
124
128
142
112
122
146
178
79
69
122
126
92
138
58
130
55
56
165
37
37
55
169
109
129
67
102
138
56
110
180
88
139
110
79
79
123
93
135
112
77
93
158
99
169
105
96
139
124
127
107
134
55
140
105
182
91
99
93
67
99
162
112
57
171
127
171
81
86
178
104
104
111
55
126
93
135
93
146
140
103
126
110
105
110
83
69
103
136
134
86
75
92
105
178
92
105
114
105
138
119
37
56
105
180
114
55
140
37
55
104
74
55
127
68
37
110
164
58
122
139
99
92
67
111
92
146
105
68
124
93
58
137
108
81
152
37
108
169
144
99
119
88
138
91
146
138
110
108
93
126
69
126
92
92
58
126
99
123
107
128
92
55
167
112
67
75
105
118
123
138
140
130
139
141
122
67
67
126
68
105
92
139
122
120
103
140
138
145
111
79
99
122
56
83
92
123
110
122
55
93
105
104
145
178
125
122
79
127
126
77
110
37
37
58
89
106
86
115
102
126
130
86
99
67
37
151
79
71
126
120
119
111
126
75
79
119
162
144
107
126
105
165
96
55
134
55
105
126
127
105
164
122
110
37
132
137
58
67
107
56
120
98
128
104
104
112
69
91
119
84
58
93
104
144
69
119
93
104
105
105
122
86
98
69
101
122
89
110
92
91
93
126
111
167
171
92
110
188
171
123
110
92
105
37
178
110
89
110
126
105
105
127
131
110
92
110
127
131
74
140
67
72
122
178
110
127
149
37
146
68
109
110
67
128
77
69
128
169
146
86
126
124
114
37
68
105
86
126
138
97
79
55
126
104
178
146
127
67
93
114
104
123
119
144
144
128
93
37
122
55
55
100
140
178
104
120
55
79
92
126
126
93
122
103
77
126
128
152
37
55
55
72
105
152
77
146
79
55
126
111
55
132
129
55
100
140
58
67
105
103
56
122
105
69
169
97
74
146
56
107
97
92
77
55
127
83
127
139
169
92
93
103
58
75
144
123
58
135
37
113
108
55
58
148
104
86
134
92
105
92
138
37
56
37
138
78
118
93
58
182
92
126
98
139
110
103
37
152
134
105
114
138
67
104
69
123
136
146
37
105
58
163
93
86
144
144
126
128
178
126
152
152
81
146
126
138
104
77
122
105
126
110
100
138
122
67
107
146
109
72
67
93
163
102
151
122
128
144
138
122
58
125
92
110
122
55
199
92
97
171
58
55
69
37
67
92
128
67
108
92
106
158
109
124
92
110
139
163
124
69
92
58
97
105
110
103
178
130
126
118
144
138
75
95
73
74
138
55
69
76
104
127
117
145
83
110
188
126
138
104
152
111
75
146
109
146
105
126
126
131
92
135
119
91
58
106
152
130
118
86
171
92
109
92
122
83
169
199
56
79
93
55
146
67
122
126
55
126
103
118
56
91
105
108
139
100
74
132
142
107
139
126
37
92
126
104
109
128
148
86
58
122
104
112
126
126
37
139
117
92
104
180
144
126
88
146
128
122
131
97
56
122
92
55
171
126
171
58
122
55
169
127
171
126
101
126
178
110
92
97
104
93
105
97
104
97
135
113
162
68
126
169
93
109
110
110
110
92
178
92
167
129
126
79
92
74
37
122
93
122
171
67
55
93
37
71
126
126
139
144
58
110
122
127
128
37
104
110
55
101
110
148
75
67
122
58
69
92
104
93
110
92
110
93
95
167
144
124
178
144
86
92
74
146
146
93
144
105
37
56
104
74
55
148
129
109
122
105
128
111
180
55
110
86
109
104
69
84
105
83
58
138
69
77
124
56
99
107
67
126
55
109
140
93
149
119
146
109
126
109
92
92
92
119
123
109
122
37
135
112
146
98
84
91
95
67
67
83
58
130
134
93
76
105
83
104
83
98
67
127
92
86
134
92
115
67
178
146
77
55
120
178
138
126
152
122
138
127
132
69
139
122
105
105
88
56
99
107
92
109
164
138
128
139
55
58
127
68
127
114
92
128
139
92
126
67
126
67
124
139
178
103
119
97
123
105
105
56
129
55
131
99
126
92
91
110
101
146
92
122
103
105
110
128
56
149
103
126
110
86
91
87
124
92
92
67
67
163
105
182
69
55
91
104
126
67
55
91
124
103
111
58
77
132
37
178
104
127
80
74
138
56
139
37
126
67
93
67
105
114
135
105
127
104
178
55
136
55
122
169
84
144
67
105
140
92
74
103
110
104
126
146
126
56
146
138
123
101
104
152
57
140
84
105
56
99
112
86
92
132
55
178
89
77
99
105
109
37
37
138
107
77
105
86
158
104
138
94
178
105
144
146
105
69
128
77
169
58
105
79
136
58
106
74
101
37
69
138
139
74
89
122
127
105
130
119
129
110
102
69
86
105
138
122
128
55
55
128
68
138
86
93
73
128
132
127
104
110
86
122
132
138
126
93
136
58
104
122
55
75
151
111
93
141
37
132
105
98
69
83
109
117
105
147
55
126
142
107
91
104
139
56
37
67
37
126
100
134
86
56
139
126
67
58
97
122
79
140
80
102
128
126
105
126
37
99
110
138
122
107
93
110
77
130
92
126
123
86
84
123
55
128
92
152
55
105
74
138
79
125
110
102
79
55
107
126
110
127
92
126
86
146
139
169
92
138
67
79
146
120
138
158
93
92
122
103
152
123
92
128
123
146
105
146
75
105
55
79
99
104
104
55
92
101
122
122
56
146
55
138
37
132
68
67
128
110
103
110
128
104
75
93
105
114
55
126
105
122
107
37
178
91
105
105
74
132
105
164
126
110
152
56
126
139
178
139
69
86
126
92
77
103
67
73
120
126
140
92
131
144
138
58
74
108
99
119
107
109
75
92
74
83
123
123
75
105
126
114
138
127
86
67
141
134
138
103
108
86
109
123
138
79
86
92
103
110
67
111
107
110
135
136
139
124
74
79
67
93
132
107
69
37
134
55
69
114
140
137
144
55
110
92
124
55
111
180
169
109
105
128
56
126
86
138
86
92
92
144
149
101
102
127
122
92
148
124
122
110
129
91
137
122
130
146
92
104
140
115
138
67
131
178
107
139
83
126
74
55
67
138
126
93
124
67
139
123
178
105
99
67
55
109
92
137
105
165
99
127
164
119
56
138
152
134
98
135
105
140
104
67
67
86
131
127
122
69
139
99
146
98
101
58
120
69
182
122
74
56
88
56
105
126
138
110
124
92
55
135
110
127
136
55
74
110
93
109
110
56
140
68
118
92
74
67
103
140
74
147
89
120
55
99
148
55
132
118
111
152
124
105
84
110
178
120
136
127
55
104
134
83
140
55
92
126
107
144
92
140
98
55
98
55
105
93
120
95
146
83
97
148
146
127
74
138
96
79
180
88
137
93
107
122
178
101
122
92
55
55
93
146
55
55
99
67
107
138
104
89
55
128
77
107
79
110
126
95
127
55
91
74
122
148
92
110
139
126
100
92
92
67
56
58
110
180
140
110
58
58
55
115
56
132
152
89
106
89
110
126
111
169
105
146
152
117
110
92
58
124
105
144
132
56
126
104
84
37
128
123
79
140
92
168
55
107
58
146
86
139
135
140
110
77
108
119
93
105
67
130
110
104
139
56
127
88
92
58
146
92
37
123
105
58
146
104
127
91
117
55
126
126
130
130
104
37
83
56
55
75
55
55
147
138
93
125
37
146
92
56
58
126
92
69
128
131
92
68
178
92
55
108
92
122
79
86
99
138
122
128
100
114
95
122
132
126
93
55
55
140
55
138
139
56
92
56
58
122
79
55
91
139
96
91
55
102
67
56
122
146
56
58
114
55
93
153
111
131
168
139
171
134
138
148
135
101
171
127
92
128
79
138
68
171
119
84
104
122
55
79
98
56
99
96
132
136
89
126
109
105
124
89
56
55
130
104
58
92
92
67
171
77
119
140
148
126
126
120
106
124
169
102
169
93
128
56
146
124
79
115
138
102
126
138
147
93
104
67
110
86
132
56
106
158
106
110
67
56
103
110
79
68
86
169
109
111
122
74
104
105
178
91
118
169
112
117
126
122
111
92
127
58
89
132
95
111
92
55
92
86
163
169
78
105
144
83
169
138
55
122
55
86
93
92
104
67
93
171
69
152
98
144
55
138
122
139
115
111
122
37
135
123
120
86
122
75
67
92
93
146
92
83
134
131
105
114
56
118
83
126
58
55
93
55
146
67
55
127
93
114
56
105
117
93
140
97
127
67
55
105
195
105
164
128
128
132
58
100
91
152
55
99
105
139
171
158
113
37
105
93
127
134
158
117
67
55
58
91
37
55
93
93
169
124
134
106
130
114
92
122
78
77
158
58
105
56
67
122
56
120
79
104
55
126
169
56
67
91
110
137
92
109
92
122
105
105
105
136
87
106
140
74
138
67
123
137
55
104
105
86
168
104
148
136
111
79
138
105
126
88
92
105
92
163
127
126
77
112
110
81
152
56
56
104
93
128
104
109
199
178
55
93
99
103
55
88
134
127
124
110
37
105
138
67
128
95
119
87
37
86
122
105
128
127
138
146
98
77
56
126
93
165
138
56
139
119
148
141
122
94
135
146
78
110
120
105
122
123
104
92
109
104
119
117
67
75
138
56
122
93
56
146
92
107
112
68
58
158
67
74
138
93
55
152
105
169
178
65
104
56
140
79
126
110
107
93
119
88
123
69
99
92
105
91
122
110
105
67
165
134
120
105
89
67
126
92
122
122
125
152
92
122
126
138
110
122
103
131
126
168
119
58
111
55
124
168
119
152
106
99
91
55
129
140
75
79
120
55
160
92
122
55
79
118
126
107
68
137
128
69
178
111
56
79
104
162
92
67
123
119
168
138
146
93
86
55
102
110
120
86
93
138
169
110
132
92
122
55
128
77
56
92
87
138
92
105
37
67
127
122
126
69
55
55
144
93
55
122
109
134
128
109
110
119
104
127
92
138
158
118
69
107
122
138
92
122
84
144
92
84
131
75
97
162
122
69
105
74
58
126
55
126
119
105
92
105
122
91
138
105
180
97
122
138
67
103
67
107
92
55
144
122
105
93
103
104
109
67
103
165
140
128
79
178
55
122
103
138
67
106
37
101
72
119
56
115
55
58
127
92
158
141
128
95
55
68
103
122
55
55
58
126
37
134
92
128
130
147
92
160
77
56
131
169
100
120
110
55
110
137
124
67
168
100
98
92
99
178
134
92
99
122
86
152
67
93
109
104
138
171
92
96
141
104
100
138
152
75
109
55
126
58
92
79
92
88
178
92
171
67
109
77
55
128
111
91
67
122
110
110
104
140
97
78
110
143
67
84
77
67
55
67
111
104
69
117
56
124
37
58
146
92
138
134
105
86
37
118
97
110
103
37
58
79
105
128
169
110
123
92
140
56
122
77
55
162
55
58
149
126
104
123
128
107
98
79
92
111
123
67
67
55
122
152
67
77
55
58
107
67
55
110
69
129
134
58
41
139
92
92
134
125
119
152
139
124
104
138
124
67
37
99
158
123
37
86
69
93
107
55
68
75
106
67
100
97
79
67
55
123
138
122
67
55
122
127
144
86
93
92
93
147
126
92
92
152
178
105
104
127
127
134
92
105
139
58
97
135
111
129
56
92
37
138
146
77
95
105
102
92
92
105
130
37
100
112
122
102
131
138
104
55
105
164
92
140
106
149
100
122
92
75
108
110
67
92
152
127
97
93
93
55
109
101
117
92
180
101
123
110
103
92
97
122
55
138
126
122
78
138
134
105
139
178
107
132
91
105
74
69
103
68
126
105
122
56
127
134
107
92
110
92
56
139
91
86
99
122
109
110
139
69
92
37
152
122
67
117
92
104
132
120
148
104
95
122
68
134
134
122
104
92
152
55
197
37
105
124
69
56
109
98
129
104
55
130
110
92
55
127
122
144
126
192
104
92
67
138
75
134
101
83
111
92
98
139
98
92
100
151
140
162
146
105
124
146
107
152
145
67
92
97
69
56
113
103
92
167
78
105
123
99
110
110
141
144
74
86
127
124
93
103
106
86
110
92
119
105
92
56
75
122
122
123
104
122
92
97
109
110
139
128
168
99
178
92
98
134
111
69
87
99
146
55
56
69
105
109
152
140
92
92
178
98
37
67
134
58
144
93
140
55
124
105
101
79
144
105
91
105
68
126
55
138
132
89
74
139
67
86
105
91
126
120
109
146
144
110
146
91
154
130
110
105
56
93
93
69
144
126
110
120
110
178
67
79
104
125
67
58
93
116
91
169
37
122
162
127
168
126
37
67
178
86
124
178
99
148
126
55
119
37
58
37
104
112
74
171
105
101
37
92
144
79
146
97
167
79
103
178
178
55
138
77
110
122
92
138
158
69
56
192
92
104
124
58
56
74
105
138
92
92
56
126
126
152
136
139
107
144
144
93
104
92
144
92
128
104
106
168
122
93
126
104
139
122
75
109
124
102
110
136
105
91
128
55
126
105
122
86
140
163
109
148
133
111
126
123
119
99
93
122
126
142
119
105
122
122
55
92
178
144
92
103
106
107
92
167
105
110
74
77
92
138
105
128
138
135
119
57
122
110
69
168
68
97
55
145
55
58
56
127
92
138
103
146
108
124
67
56
99
69
152
122
168
123
105
111
128
131
138
37
103
92
92
117
79
119
55
109
127
163
178
89
123
104
127
126
92
167
135
132
86
134
110
69
86
178
110
105
78
119
104
110
100
67
178
116
58
87
75
67
67
98
37
158
116
164
106
110
127
86
122
55
75
123
68
56
92
95
55
148
127
103
126
37
103
91
105
141
56
152
79
99
158
169
55
67
67
69
122
67
74
138
152
69
55
105
110
86
67
144
74
126
83
122
152
77
58
92
104
56
122
58
67
122
126
104
139
122
69
138
102
110
103
125
120
127
146
138
83
67
93
93
77
97
117
92
138
178
83
77
110
92
105
92
167
105
102
81
169
127
122
124
78
67
55
130
139
75
58
92
146
126
112
111
139
92
164
139
89
58
124
77
146
67
119
58
92
152
110
130
112
122
75
92
37
110
169
99
55
148
55
69
178
128
86
74
58
126
119
110
126
146
67
110
99
126
56
106
104
55
56
119
83
105
100
58
109
103
109
79
92
109
93
168
55
56
169
93
144
126
146
92
138
105
67
168
125
37
126
122
67
110
97
74
140
111
109
163
111
92
91
118
77
99
156
93
104
56
135
92
115
110
55
167
55
91
104
122
86
98
105
56
105
138
144
92
55
136
100
110
138
128
97
67
111
55
74
127
37
126
92
127
106
148
153
131
178
132
103
178
188
92
86
146
55
122
77
165
112
138
84
86
107
92
81
178
55
105
110
69
92
123
131
104
109
158
99
178
111
144
93
104
55
56
55
123
138
178
55
58
138
126
146
146
123
148
105
119
92
56
146
118
92
105
126
108
105
117
56
86
104
128
138
122
105
103
123
122
79
110
58
127
122
37
180
129
120
104
110
138
136
58
58
37
146
55
126
83
178
105
107
56
98
107
58
119
122
74
102
138
58
93
158
138
56
104
103
122
92
92
93
74
79
148
162
89
122
68
93
68
128
169
72
148
55
56
178
56
143
84
113
86
138
92
137
127
92
92
112
67
67
110
105
114
144
128
110
119
93
74
111
128
92
158
110
122
99
109
86
148
135
110
149
138
75
89
56
92
128
140
110
88
92
109
127
58
99
75
128
178
92
136
144
92
126
122
78
134
92
148
126
114
58
114
69
122
167
122
123
138
128
58
67
77
93
107
169
92
79
128
111
69
122
92
55
122
103
93
58
158
126
122
128
106
129
89
93
158
92
56
140
111
104
127
107
122
127
97
126
132
56
158
99
58
105
67
56
119
130
123
118
92
55
146
119
108
178
93
81
93
118
79
110
37
108
67
69
88
164
58
92
139
105
177
81
178
119
74
79
109
69
120
37
123
80
69
79
138
67
119
86
55
110
95
89
55
67
104
92
162
102
92
152
58
92
132
138
104
86
107
67
84
102
146
115
111
122
104
152
126
75
144
98
119
122
102
37
111
110
104
92
83
56
56
169
105
140
89
97
139
37
79
67
92
144
107
138
139
127
92
101
67
124
37
128
146
92
105
106
144
127
126
138
116
123
99
79
104
69
178
146
160
103
139
123
56
56
152
180
105
92
81
110
111
110
171
120
69
105
162
56
122
110
105
37
91
67
92
99
37
99
110
100
105
160
91
110
126
119
139
122
69
138
105
138
130
108
83
86
160
119
92
93
69
86
126
93
69
55
147
104
122
55
119
138
86
145
137
56
110
58
126
144
130
110
138
122
79
37
92
169
93
130
144
55
55
58
139
84
171
111
126
93
123
146
127
158
56
105
95
92
67
122
138
165
105
128
104
91
110
110
105
93
105
58
124
67
134
132
178
148
132
145
169
144
145
138
37
68
92
86
168
93
110
75
118
55
122
92
164
152
58
105
127
104
124
104
117
92
139
56
128
67
140
110
104
129
126
126
92
74
91
178
92
77
92
138
109
105
107
55
58
139
37
126
37
156
94
119
92
127
144
89
122
122
122
75
77
105
122
122
112
152
110
105
126
111
105
110
105
92
78
178
123
122
178
84
100
163
146
107
93
128
55
110
93
107
68
126
55
144
92
67
55
178
136
127
89
138
178
67
126
93
97
67
103
105
104
124
58
105
138
93
99
64
55
137
132
74
106
67
122
163
138
84
110
91
171
104
119
120
180
92
67
169
84
58
101
89
122
146
58
92
74
92
88
75
152
110
56
104
148
110
138
148
103
84
69
56
104
92
111
56
67
169
115
110
109
101
107
163
150
56
86
119
111
104
128
92
56
135
98
86
105
109
55
122
93
102
139
104
123
92
91
58
110
55
110
124
102
152
126
104
119
105
111
92
95
122
56
103
122
153
37
121
136
104
122
127
56
105
79
110
79
124
110
77
107
135
140
128
110
93
80
93
139
109
79
146
145
127
77
139
110
93
69
111
132
92
126
110
138
75
178
92
58
107
37
122
122
86
77
109
146
146
126
58
144
77
114
126
126
105
104
122
55
122
132
171
146
139
67
128
110
109
171
112
128
92
126
124
92
109
171
128
123
55
152
138
87
89
163
105
104
130
165
104
138
100
56
92
127
152
124
139
110
110
99
104
122
97
139
67
72
69
86
105
137
55
80
106
144
92
126
87
114
119
85
180
132
92
144
138
79
67
139
116
86
79
152
86
93
55
55
104
104
104
152
92
120
67
56
37
121
171
105
80
79
67
122
139
111
106
67
165
105
138
93
110
92
122
137
144
122
111
93
55
109
122
69
77
124
178
92
55
92
168
55
130
93
139
131
98
74
80
131
168
123
117
122
122
95
125
178
123
110
93
112
86
111
103
126
178
74
128
122
104
99
165
110
122
37
104
119
67
138
122
69
55
128
122
110
100
121
146
110
55
139
95
140
83
119
91
58
110
105
56
109
110
98
69
132
136
119
152
55
105
58
55
122
81
128
86
80
126
138
130
67
74
110
139
99
122
171
126
136
146
123
99
162
103
104
86
67
104
127
110
75
160
148
58
74
106
119
135
152
105
37
95
69
180
149
134
79
130
126
92
127
138
74
92
162
67
55
152
178
69
113
55
68
93
138
106
165
139
68
122
92
178
122
169
152
92
67
37
132
105
122
110
56
81
55
101
109
84
55
105
69
105
148
92
178
77
75
119
110
55
146
100
93
69
100
135
122
128
69
163
56
67
92
138
79
103
98
138
105
55
117
97
112
37
110
135
93
122
122
122
158
92
84
67
89
104
92
86
140
94
105
89
178
122
139
128
140
129
110
69
142
67
56
91
67
55
122
111
55
134
140
110
123
158
117
91
131
126
109
67
97
75
139
67
168
79
93
127
126
138
114
104
104
55
83
69
114
64
55
126
112
107
92
127
169
131
134
56
91
91
131
92
92
99
127
123
37
99
136
109
80
138
112
98
178
169
104
117
55
139
126
150
56
67
101
111
68
120
56
126
126
144
92
86
56
111
55
56
163
68
112
139
122
92
105
144
107
75
123
123
92
104
58
56
126
107
92
67
123
152
37
140
105
78
88
92
105
105
139
122
126
78
145
122
109
110
109
119
144
119
109
101
91
137
162
67
127
119
122
55
64
97
146
93
126
104
99
152
138
138
139
110
58
162
91
129
92
56
123
79
67
138
110
110
124
37
178
169
122
168
80
92
97
92
129
122
92
67
122
122
124
69
92
67
58
84
122
126
74
92
110
88
122
199
110
138
56
92
92
67
115
55
129
152
126
97
144
75
77
55
128
58
83
122
126
127
126
92
144
56
147
56
58
56
152
75
37
128
107
97
56
122
55
105
55
144
171
104
67
93
69
92
105
126
137
56
152
69
55
138
178
107
37
131
110
105
122
127
67
124
119
81
126
91
76
104
88
134
92
130
91
75
68
104
115
132
74
105
126
199
92
119
105
108
124
93
56
126
122
171
110
92
67
55
128
139
134
91
144
152
89
122
181
146
123
110
92
146
92
178
105
110
80
67
110
55
67
111
102
169
110
126
58
78
56
105
152
105
84
120
68
58
55
37
93
88
91
152
110
128
122
138
83
119
122
137
81
93
67
110
56
72
93
92
92
67
93
37
58
128
37
102
56
98
56
110
123
144
37
81
171
146
109
139
109
92
132
104
99
103
122
93
105
68
92
160
102
171
138
139
165
132
114
136
119
122
137
123
92
93
93
58
110
140
134
91
134
110
97
110
55
75
106
83
169
83
93
74
68
67
55
104
93
93
130
169
122
110
55
119
92
126
111
74
139
92
138
93
93
105
169
122
138
127
122
77
99
67
122
152
79
126
103
58
67
111
84
105
58
112
92
197
103
163
109
139
89
126
118
109
134
55
68
131
79
92
92
169
74
110
132
142
110
100
158
119
111
124
78
130
147
67
103
107
102
74
93
55
122
104
146
92
142
126
67
146
167
91
122
73
93
146
92
138
92
123
159
67
79
95
86
107
146
130
112
100
56
86
55
146
119
126
56
55
98
92
110
107
171
67
140
69
67
111
105
104
178
132
106
128
97
104
92
114
110
138
58
131
55
67
97
138
122
93
108
114
92
98
92
138
144
95
56
168
69
134
92
138
104
58
156
122
126
164
56
104
140
105
92
86
122
112
104
80
68
103
110
65
127
146
104
128
56
67
138
92
80
92
105
126
92
99
128
86
163
122
99
104
37
105
104
55
79
136
110
88
67
150
56
105
127
104
86
37
105
95
77
111
92
110
114
37
86
55
77
146
148
169
92
55
120
79
97
130
163
119
83
104
126
99
109
138
107
122
122
97
67
111
93
103
140
110
58
138
58
68
77
142
138
79
79
105
169
140
127
132
110
73
56
152
69
92
75
100
58
58
55
105
55
93
138
99
93
100
146
75
72
122
105
110
105
132
79
92
69
79
104
91
93
140
98
122
158
136
69
64
55
93
74
132
127
144
140
93
93
58
122
92
92
91
107
138
107
122
180
58
104
146
100
126
92
93
92
98
91
178
134
152
93
144
118
97
126
82
84
55
110
144
81
122
107
114
126
117
126
119
122
93
55
145
86
81
92
178
124
67
122
79
55
86
109
122
122
93
98
103
105
67
55
117
146
109
127
73
84
139
110
83
108
105
123
105
92
92
56
144
127
69
121
107
105
178
110
139
180
139
129
134
144
74
104
67
93
122
105
164
119
83
100
92
110
126
105
99
55
105
93
92
107
178
129
68
138
139
137
138
99
92
119
100
125
92
79
104
152
110
122
86
139
126
86
105
67
37
83
110
77
169
169
107
67
148
128
128
119
139
139
125
140
146
131
132
110
158
119
105
110
92
86
75
152
93
88
149
138
93
95
114
91
109
55
55
56
101
171
55
178
86
92
178
138
145
126
146
135
104
64
56
178
109
112
56
124
104
146
122
92
152
92
55
92
138
93
126
146
105
122
55
74
119
67
110
169
97
167
178
55
56
92
139
126
56
69
68
122
162
55
109
55
122
91
92
122
139
140
107
111
92
86
122
162
111
93
120
75
126
114
144
122
137
111
109
171
124
102
107
144
122
123
83
144
86
55
146
77
130
99
146
74
56
178
109
112
160
92
144
115
97
86
55
139
109
109
92
138
146
110
123
138
111
76
132
118
58
89
105
110
126
124
67
98
37
122
119
110
139
56
112
74
138
55
69
178
146
55
95
104
122
145
144
55
86
103
142
105
105
131
109
104
75
67
146
111
106
132
98
79
104
140
148
127
132
77
112
138
105
124
55
124
105
92
104
92
77
119
139
92
122
86
92
162
97
138
110
130
105
110
119
180
126
58
128
105
138
124
178
37
107
119
105
67
69
146
122
92
122
127
56
79
122
122
86
146
55
67
55
140
68
152
138
110
55
104
131
171
142
124
156
74
103
37
55
148
110
128
104
55
111
122
104
110
110
137
74
144
67
115
144
106
101
122
55
148
146
89
56
92
126
120
146
104
106
171
91
91
112
69
67
127
55
146
180
122
37
55
104
127
126
99
79
106
104
110
178
110
144
67
92
105
104
74
126
78
75
67
126
119
138
139
122
110
119
103
58
199
126
93
168
75
136
136
138
123
116
104
92
126
75
56
88
131
126
83
75
111
58
110
110
158
99
67
119
104
118
128
128
139
92
110
119
123
37
93
57
130
55
104
79
92
146
178
110
74
69
67
126
56
92
111
58
55
144
104
136
111
104
132
93
122
169
98
152
139
167
93
91
110
128
135
109
79
122
138
104
168
92
79
104
148
56
145
144
77
67
138
97
67
100
119
105
146
126
58
122
55
124
122
84
74
128
67
55
105
67
92
109
110
95
58
140
88
67
58
92
101
37
178
145
93
92
168
55
67
128
68
80
92
75
96
126
171
110
93
105
56
86
93
123
55
92
80
92
111
169
110
144
75
56
77
140
67
146
110
89
105
67
189
119
55
110
169
138
139
126
123
128
86
74
112
123
86
128
67
139
56
107
152
69
119
138
126
93
110
104
79
127
110
55
122
138
37
138
99
91
86
78
69
138
55
136
130
55
88
109
146
104
55
119
122
119
105
144
131
80
132
114
138
107
139
105
106
180
127
168
92
124
92
122
152
118
100
122
92
180
110
113
122
131
122
104
98
125
107
92
92
127
144
131
93
139
37
37
126
67
104
107
120
92
98
103
37
55
55
111
109
126
110
111
127
138
111
105
162
122
110
138
106
77
74
180
56
55
67
130
37
126
67
109
55
139
67
87
122
110
122
58
167
92
140
67
92
105
69
180
84
126
55
109
89
122
178
146
123
58
110
144
55
107
55
56
114
110
178
109
126
77
146
93
122
136
92
79
126
126
56
107
128
91
119
122
131
122
127
126
123
122
131
139
142
100
171
114
107
92
74
138
67
179
92
118
109
92
55
126
104
146
105
127
56
97
69
69
112
86
178
110
104
105
110
121
79
105
102
140
91
91
55
105
68
146
124
67
74
123
130
121
126
69
168
97
122
122
119
108
104
113
92
137
144
126
92
55
98
158
104
92
105
105
56
123
109
92
84
165
55
152
77
93
163
55
86
140
69
37
56
92
77
177
92
55
92
55
92
128
92
188
145
107
55
107
106
117
105
67
105
93
111
138
126
75
144
81
165
127
102
127
104
86
110
93
130
92
111
103
171
140
126
67
92
105
74
37
119
134
180
74
114
104
74
111
104
110
55
138
92
126
130
109
67
92
128
37
104
110
111
112
132
178
105
79
103
105
127
152
169
58
140
178
86
55
110
109
92
126
121
125
178
158
98
91
105
84
138
55
129
122
123
92
105
124
138
111
74
122
146
100
122
165
92
132
126
126
67
152
139
86
74
91
130
147
92
131
129
92
126
92
92
122
104
107
120
122
123
134
134
87
69
56
99
93
178
72
138
67
140
97
171
93
99
67
77
140
134
148
139
171
105
78
130
86
91
138
99
92
122
94
123
105
105
92
99
123
55
88
127
91
55
122
162
93
152
134
122
97
93
171
120
93
92
122
67
99
56
37
108
135
119
68
128
118
139
92
93
111
99
126
148
104
122
126
92
138
110
104
74
138
79
67
139
126
127
178
93
124
119
122
123
178
118
140
104
109
147
114
139
110
180
79
79
55
67
120
107
67
138
102
104
122
84
163
37
126
92
86
58
127
158
69
99
105
110
127
126
140
119
122
105
103
92
91
112
92
93
122
135
83
55
112
74
55
78
104
134
125
37
68
127
119
111
178
156
91
69
122
135
107
148
122
67
148
126
114
55
158
37
117
77
127
93
92
86
130
93
178
92
104
136
91
115
91
55
127
84
91
106
104
37
61
107
77
105
92
92
105
119
124
182
136
93
92
86
104
95
120
146
57
122
55
110
37
107
110
67
139
37
139
132
55
127
111
55
189
105
105
86
102
137
69
126
139
55
178
138
75
69
122
92
171
138
99
80
55
165
180
134
124
104
128
148
103
69
67
92
120
140
138
115
152
144
94
55
55
124
55
86
136
141
55
131
101
37
114
58
140
122
110
122
122
105
126
152
67
89
104
178
83
58
104
112
126
131
169
105
138
110
69
110
89
55
140
132
91
106
122
56
55
88
92
139
55
86
79
131
56
99
37
144
58
129
77
86
69
37
144
158
93
104
146
92
138
105
138
118
68
110
140
136
58
104
110
37
55
107
124
146
67
92
126
97
93
103
110
93
110
105
92
138
110
114
93
158
55
55
119
126
55
122
103
126
92
69
165
55
136
92
109
67
104
128
101
126
132
75
105
138
58
158
152
128
139
139
118
58
93
97
138
138
68
126
152
58
167
122
126
138
89
122
131
107
122
178
68
126
119
94
56
86
145
123
121
140
110
56
122
92
122
92
92
92
55
139
79
67
134
99
169
105
110
103
104
106
134
64
93
134
79
152
109
122
77
124
92
148
108
151
37
134
105
67
104
122
55
98
105
92
105
135
126
55
139
164
126
93
58
93
135
99
126
79
98
138
55
92
127
77
56
120
117
128
127
98
119
136
93
125
104
110
92
37
134
107
110
104
91
119
103
127
117
97
138
84
109
86
132
72
55
122
167
105
67
122
110
138
178
92
111
77
134
74
64
135
117
105
92
104
58
58
105
105
146
126
98
126
56
55
126
79
122
105
58
67
67
118
86
91
130
138
138
105
58
93
169
58
75
83
141
140
92
178
122
122
139
110
104
142
138
117
58
101
97
118
74
83
169
145
146
152
56
126
110
56
55
55
67
92
92
171
106
199
158
55
69
130
58
134
99
146
56
152
86
110
119
55
111
110
123
152
100
69
93
146
178
74
105
69
126
99
103
122
74
140
91
128
69
130
55
128
100
117
93
126
92
148
139
55
105
146
140
92
104
144
56
152
91
110
55
105
92
105
169
109
77
83
169
56
56
146
145
37
126
122
124
131
77
114
56
178
132
146
67
106
74
56
55
146
152
83
58
123
92
178
126
138
110
122
111
55
93
111
152
67
111
37
178
105
104
56
123
111
117
111
108
55
122
122
56
126
67
37
98
122
79
114
144
92
182
126
169
110
103
37
144
105
122
123
122
103
56
177
138
92
56
67
125
148
150
105
55
128
92
138
139
127
122
55
122
100
152
79
58
91
93
178
178
127
104
148
110
119
103
58
56
99
81
109
92
55
111
123
122
101
110
138
111
140
136
126
114
146
92
122
128
55
86
142
37
110
110
130
105
136
134
93
131
37
119
123
128
138
112
127
100
98
107
158
123
37
93
56
124
67
125
123
126
128
105
126
140
103
111
126
126
93
104
113
124
126
131
55
122
91
79
146
92
128
127
139
141
127
152
136
122
178
55
141
102
67
121
74
100
144
140
58
118
99
126
146
55
122
122
122
84
55
135
138
105
109
105
84
67
89
178
104
67
138
55
104
109
74
100
55
105
74
126
91
109
67
127
139
105
58
107
114
168
126
122
164
86
127
111
122
93
109
64
138
144
134
93
68
55
77
128
58
110
171
105
99
182
89
109
168
140
55
104
110
37
92
101
112
74
67
56
92
105
107
122
138
77
110
92
169
92
104
192
77
138
169
108
104
105
75
67
67
128
122
119
98
93
83
67
92
105
110
152
168
153
98
55
138
137
122
140
92
86
134
55
122
146
91
138
110
140
104
178
142
69
122
119
120
110
162
105
77
110
122
169
138
110
145
92
37
55
75
140
55
122
88
160
146
110
97
108
93
131
138
74
100
92
55
110
55
37
128
127
137
134
77
131
127
144
138
139
112
127
126
111
92
138
126
93
55
132
127
145
122
58
136
73
69
92
93
86
114
80
138
109
132
119
99
126
92
55
69
131
178
160
138
55
58
55
91
178
105
128
152
110
93
114
110
168
58
110
104
93
55
58
139
131
122
110
92
144
104
111
55
92
92
144
128
55
127
97
126
77
91
55
37
37
105
131
128
122
56
37
92
67
97
127
83
146
118
123
84
110
103
55
122
127
84
93
110
129
132
123
67
128
131
92
137
69
107
67
197
102
178
91
162
138
92
118
139
68
109
104
121
127
120
126
132
55
110
109
142
105
105
99
86
112
69
58
67
111
126
84
109
69
105
105
138
99
105
56
75
134
93
123
158
55
127
110
139
104
79
138
146
58
92
68
92
132
119
67
58
122
178
56
37
111
114
67
152
83
122
74
104
55
105
124
69
126
104
83
130
55
92
92
126
110
144
148
171
58
91
65
119
148
126
122
91
113
104
103
103
55
92
114
146
99
126
37
147
105
132
126
75
110
69
146
139
126
92
138
122
95
178
140
139
105
69
139
79
69
127
138
178
86
114
125
114
104
104
122
91
124
91
119
104
105
110
91
109
67
122
100
73
37
139
119
55
100
188
92
158
111
124
126
109
56
106
55
86
92
37
91
58
102
105
136
55
152
131
103
79
93
68
97
146
110
140
103
99
117
178
92
123
148
105
147
67
152
144
55
138
138
37
119
148
109
111
107
77
37
86
91
103
103
128
105
58
74
138
67
178
56
92
127
160
55
109
122
83
127
111
104
122
126
160
110
112
75
122
55
81
126
131
122
92
92
122
103
122
56
178
125
79
67
105
84
68
127
131
180
126
119
80
128
58
108
67
88
56
180
138
104
56
128
102
55
110
92
56
144
169
120
104
67
93
92
152
138
97
56
138
138
123
127
99
106
152
69
164
124
107
55
92
81
138
125
92
119
67
106
98
37
98
86
130
148
136
92
125
93
144
147
67
146
37
122
105
152
137
110
88
86
169
92
99
56
58
105
102
91
162
93
169
69
104
67
146
55
138
75
86
109
99
138
104
152
105
92
93
122
83
152
131
104
93
139
93
127
55
92
99
76
93
132
80
55
105
55
127
58
84
140
97
146
107
69
93
86
107
93
130
69
132
162
92
105
103
122
55
110
132
134
56
197
112
37
104
58
92
124
156
37
104
126
127
158
122
122
127
86
139
138
124
67
58
37
138
91
92
93
104
111
94
126
117
126
105
127
107
75
55
75
109
56
127
127
127
122
137
77
91
86
55
122
122
75
92
81
56
55
74
67
92
69
122
55
67
118
126
122
147
138
56
55
119
139
127
123
75
139
94
99
84
105
137
148
109
92
126
55
58
164
127
110
110
37
105
169
75
97
111
93
79
127
55
67
119
58
132
105
114
178
93
128
148
127
99
92
119
109
74
144
167
92
74
110
107
55
122
55
69
169
67
148
110
152
137
144
67
163
128
118
104
119
128
158
105
91
135
103
130
138
100
144
152
97
98
125
152
122
95
77
56
146
92
69
92
126
138
110
110
92
124
55
79
122
37
140
144
111
138
83
93
122
127
67
92
106
134
104
103
128
92
97
56
144
56
108
93
138
79
122
140
113
127
91
93
110
93
138
119
105
111
146
69
126
102
105
135
100
178
134
122
105
117
92
122
139
138
145
148
120
105
144
75
138
107
77
144
101
126
93
110
92
126
127
93
126
178
128
107
97
93
164
103
92
140
111
92
132
92
132
119
91
37
123
92
105
139
138
104
99
109
110
111
126
55
102
55
56
88
105
58
76
110
152
105
69
83
110
126
136
119
77
95
105
92
105
92
107
100
152
95
114
75
77
92
99
37
136
128
110
156
126
110
55
92
93
84
111
122
95
134
104
74
127
152
134
77
79
67
104
112
77
180
56
69
69
138
77
91
128
98
122
127
105
56
111
93
126
134
127
69
131
131
131
134
127
93
56
114
105
104
138
128
67
135
56
146
128
89
58
110
105
139
58
122
150
55
163
104
123
128
171
109
74
138
37
67
84
105
126
92
138
92
67
67
128
86
83
122
111
146
77
105
122
68
158
74
108
69
138
55
92
178
107
146
74
93
102
55
68
69
110
148
136
84
138
56
169
118
105
163
110
107
124
138
79
96
56
98
124
127
138
84
55
92
58
67
178
83
110
123
86
105
114
122
93
138
122
140
122
86
91
103
180
148
163
152
93
92
69
110
67
120
69
103
163
105
102
58
55
79
107
104
74
107
74
126
122
107
104
110
135
128
93
56
77
134
110
134
37
105
83
131
110
106
79
69
58
92
125
55
126
128
92
164
126
92
73
104
58
55
110
37
141
117
84
92
93
126
128
142
178
171
126
92
139
75
112
104
123
104
138
74
143
83
103
98
109
77
93
92
67
55
129
55
119
134
138
126
104
105
68
104
55
124
110
139
74
56
136
77
138
86
139
104
104
83
122
67
74
122
92
178
81
109
111
104
138
138
119
109
77
109
126
134
132
67
168
91
68
91
144
56
93
119
91
92
93
99
126
138
69
144
128
92
110
65
122
144
146
92
77
147
151
138
178
87
123
69
56
144
112
56
88
114
69
55
92
67
114
127
110
105
168
110
138
92
110
100
171
144
110
112
138
67
110
163
55
132
131
129
74
139
109
79
137
74
92
140
127
112
127
86
94
89
55
55
56
146
92
134
58
109
139
56
58
87
92
111
171
92
92
100
93
74
122
171
146
139
163
122
55
111
56
178
140
106
55
56
178
93
158
158
158
105
129
126
56
77
86
111
92
113
72
147
145
124
131
123
125
111
93
105
104
132
142
92
105
86
55
122
140
122
111
103
128
167
122
146
99
104
55
108
123
146
102
98
159
107
55
74
144
86
99
138
131
93
55
104
123
58
122
98
81
56
110
89
58
37
67
119
69
92
104
105
123
92
67
110
122
98
58
67
99
105
110
110
145
67
128
56
152
77
77
123
152
107
110
138
125
120
86
56
148
115
168
171
152
92
93
122
127
56
104
92
139
128
127
122
92
55
168
168
105
97
117
144
171
83
130
138
58
123
120
75
127
104
105
55
86
127
67
147
124
131
146
104
104
105
111
93
127
110
126
139
119
158
86
105
69
92
114
144
168
95
104
145
122
84
69
99
122
92
58
79
148
104
117
111
93
92
104
140
105
138
91
130
103
83
146
75
86
56
100
105
177
93
144
37
106
56
74
55
138
122
169
104
105
127
55
86
120
138
97
171
92
105
123
104
110
91
92
86
149
56
92
85
98
138
110
110
86
105
144
83
103
124
104
122
122
124
142
139
84
74
92
56
114
55
67
138
110
55
92
67
105
55
78
55
152
126
127
74
56
110
107
140
91
105
67
109
99
119
122
112
56
110
58
91
77
93
92
127
91
79
144
105
56
115
93
178
89
99
122
160
68
124
106
138
158
92
99
117
123
55
69
126
139
105
152
131
131
104
119
141
67
55
134
178
83
110
78
105
119
92
83
86
138
109
93
123
104
105
119
102
67
67
92
92
83
74
120
126
100
55
104
122
103
86
127
67
67
131
126
178
69
75
67
92
110
86
67
92
101
122
167
120
178
55
128
93
58
107
105
98
68
97
105
55
111
104
74
139
98
93
123
92
115
67
152
122
126
148
149
118
79
122
127
144
122
99
56
122
124
37
122
122
107
117
122
83
92
84
139
110
92
88
122
102
93
180
58
148
122
105
99
81
130
73
162
126
68
110
140
131
58
83
37
110
138
165
122
93
107
124
105
134
55
164
105
130
140
140
55
92
105
146
138
164
37
67
123
124
110
131
138
99
140
119
109
110
105
56
126
123
138
99
67
56
92
77
37
180
148
108
92
102
178
123
134
126
104
37
128
92
158
108
92
144
93
92
140
68
138
136
56
122
55
91
122
99
94
126
86
104
106
178
126
127
128
114
110
165
86
122
121
55
148
69
126
152
93
56
91
110
80
37
69
92
138
67
131
122
88
126
79
92
109
105
69
199
37
178
119
105
152
91
69
127
92
74
125
123
69
178
138
122
144
107
92
56
122
122
55
97
55
171
122
164
122
138
74
146
158
123
100
92
74
122
110
129
126
55
102
86
128
138
74
108
89
105
122
99
127
55
37
105
77
111
152
67
77
122
123
92
152
55
122
110
139
122
134
105
83
110
110
119
58
104
100
107
67
139
37
140
86
105
146
67
144
86
112
119
67
126
67
105
152
67
79
128
110
142
146
138
56
122
146
67
56
79
140
120
103
105
158
110
105
56
86
128
93
112
84
111
58
102
99
110
55
58
69
132
178
138
144
154
123
105
178
99
55
93
58
132
91
119
178
92
144
110
55
112
102
77
110
56
110
89
104
134
141
128
122
99
99
110
169
92
138
55
69
91
56
112
146
95
122
58
68
140
126
108
178
104
71
67
91
117
97
58
138
141
148
144
129
110
98
126
55
105
126
162
105
105
178
75
96
99
67
110
67
99
131
91
109
110
69
86
138
105
92
69
103
163
169
106
122
178
144
78
139
104
81
55
107
105
56
105
93
110
127
127
107
141
122
144
134
57
83
55
79
110
119
104
111
92
123
80
55
83
92
152
55
68
92
110
101
110
121
58
122
77
92
56
97
81
56
126
104
148
92
55
79
92
86
98
110
134
55
108
138
92
74
110
105
92
93
122
171
120
126
114
178
128
55
130
119
164
178
132
67
114
55
146
139
119
69
55
110
56
104
138
109
75
114
138
67
56
58
74
109
107
158
146
123
105
122
122
112
129
92
93
171
112
93
111
118
99
128
58
105
58
93
122
178
197
92
104
126
105
152
158
67
126
110
122
55
92
91
99
92
148
93
132
126
134
122
77
117
105
37
93
140
67
111
92
124
122
99
127
118
110
146
110
132
109
110
93
64
58
128
122
137
164
92
123
107
180
139
92
57
104
92
110
152
138
91
138
128
56
118
55
169
55
140
58
86
67
119
56
126
56
130
105
138
119
126
110
92
106
103
74
69
117
109
88
69
148
67
144
74
91
56
139
55
120
138
163
76
100
105
148
77
56
104
171
110
79
99
68
75
138
144
58
104
55
37
93
99
127
88
79
180
102
144
108
127
111
86
93
92
83
79
56
105
135
163
138
88
156
122
69
138
67
107
109
169
104
109
111
37
126
109
110
91
148
75
120
56
91
130
127
114
110
95
69
122
93
128
169
67
55
77
130
128
55
144
55
74
110
104
92
103
58
55
37
92
169
67
55
144
114
124
104
92
129
127
86
160
58
92
110
93
126
126
104
107
178
178
86
169
93
162
126
56
79
127
67
114
37
99
99
136
138
169
55
111
92
123
93
92
108
105
131
103
104
99
105
69
79
104
92
37
69
134
122
122
141
136
135
95
146
130
110
109
141
55
37
92
89
152
123
119
126
105
86
37
180
188
110
138
67
67
111
92
110
118
56
126
110
105
126
92
178
67
126
165
152
134
55
102
144
93
146
79
109
111
55
163
37
97
104
86
110
122
110
109
107
55
138
105
140
93
145
180
131
178
55
146
92
171
110
110
110
110
58
158
143
86
105
129
91
178
56
79
67
105
92
99
92
69
126
114
74
103
55
131
144
101
123
128
102
56
92
99
105
127
121
111
112
127
168
111
109
135
107
158
127
110
86
104
122
74
111
123
56
162
104
55
107
92
105
138
98
162
79
169
121
138
110
97
67
67
69
126
119
122
138
91
138
91
93
55
109
122
164
158
105
92
56
93
58
122
79
67
152
91
178
109
105
56
93
139
37
152
114
55
67
97
167
131
84
110
79
75
123
95
138
146
92
120
104
122
99
99
124
56
123
56
177
97
124
139
55
111
55
125
108
122
92
122
67
178
67
68
158
127
55
98
67
156
93
83
126
146
55
68
105
105
92
112
104
55
78
55
55
78
138
110
119
140
92
74
92
111
111
178
58
37
114
67
58
95
128
92
105
128
144
124
37
67
93
58
55
139
178
93
67
93
126
108
99
58
148
111
178
106
56
128
127
171
92
84
122
93
112
138
77
158
69
122
91
92
67
56
162
144
126
67
122
92
105
37
92
56
169
168
139
92
88
67
114
146
128
102
56
92
102
92
139
92
122
127
92
144
123
130
37
120
75
169
56
99
67
107
178
104
55
93
103
67
169
110
199
146
144
55
107
37
107
75
130
58
74
55
76
122
86
146
127
164
139
138
104
67
119
92
91
77
127
92
122
92
97
55
128
91
92
126
138
69
92
55
93
138
152
98
69
110
92
55
99
136
106
113
91
122
152
69
140
55
120
139
122
109
104
103
79
81
109
122
104
103
110
55
110
118
125
130
98
123
144
128
55
103
138
86
126
104
126
92
171
124
105
97
56
109
92
56
58
109
128
130
91
67
158
92
93
37
162
99
128
138
93
68
92
114
56
74
118
118
37
134
130
168
98
177
135
128
122
67
93
122
163
130
178
123
140
108
100
138
171
69
144
92
110
136
69
79
93
138
130
168
131
119
131
152
124
138
69
111
93
97
114
56
114
91
127
83
122
132
124
138
105
55
111
92
127
109
104
92
139
67
75
55
83
75
110
102
105
113
126
158
68
79
152
140
114
111
55
55
131
99
152
178
127
122
111
126
142
145
146
69
132
91
37
75
136
152
105
104
126
123
134
127
127
93
178
91
152
68
92
178
145
107
107
138
105
145
92
154
79
92
122
83
99
55
111
126
91
138
102
124
109
126
162
92
74
122
92
75
55
55
130
139
58
37
37
92
168
69
55
122
116
75
119
134
139
56
105
178
86
139
119
163
110
146
178
110
110
107
69
140
67
139
102
132
132
37
56
55
92
162
149
55
55
110
119
178
197
122
67
112
69
169
156
104
67
37
104
126
126
112
105
84
132
55
67
55
77
92
152
74
171
138
127
86
144
68
58
111
91
37
93
131
128
126
110
139
111
122
55
164
91
67
169
84
93
100
117
101
104
110
126
37
138
144
55
55
107
69
67
92
55
72
122
144
139
88
139
92
134
152
37
92
92
104
93
138
144
109
121
86
144
55
86
92
110
134
101
178
110
148
69
178
92
69
115
105
93
79
67
123
99
92
138
140
163
104
122
163
178
124
92
55
123
144
101
93
93
138
126
126
81
67
171
149
171
55
92
78
58
167
75
67
105
99
162
126
125
93
178
55
69
93
127
75
67
122
150
134
138
37
77
199
126
138
106
178
56
138
123
144
92
135
112
58
169
91
152
68
93
91
138
110
68
86
55
77
127
126
107
104
67
114
110
67
100
83
122
127
110
119
92
178
138
126
92
122
139
114
67
139
126
91
37
92
146
79
128
109
112
169
92
110
104
55
122
128
69
127
122
92
127
127
139
92
75
140
128
126
74
104
148
122
37
112
104
92
152
110
66
74
126
67
110
99
92
74
37
74
178
146
98
102
123
92
167
55
123
92
56
152
146
55
122
94
178
93
144
110
106
93
69
105
122
119
105
178
122
68
92
148
126
140
75
180
67
88
131
152
92
55
56
37
110
106
120
67
77
92
126
105
104
37
79
58
74
58
178
111
137
134
92
84
69
117
55
92
152
139
94
127
67
110
69
105
58
139
127
145
92
86
104
92
79
104
110
146
55
122
139
107
111
69
91
88
75
122
83
37
178
110
55
58
98
122
55
128
110
146
37
130
55
93
104
58
81
131
110
117
92
68
111
86
105
107
67
105
158
93
140
138
147
55
114
152
89
69
67
102
69
37
128
122
119
171
110
110
55
56
115
111
122
105
109
149
95
93
129
104
152
56
104
91
67
139
55
92
67
127
152
146
77
37
122
148
86
138
102
171
171
99
75
110
105
102
91
55
127
122
110
138
178
119
86
138
111
126
114
74
139
67
99
91
109
56
67
135
134
86
144
67
58
134
56
55
148
144
122
127
105
124
104
37
95
126
55
109
115
105
165
92
69
137
169
104
111
67
110
127
56
75
122
87
92
56
126
105
138
74
104
123
105
152
122
119
138
126
56
144
144
162
126
86
92
110
110
111
145
37
144
79
150
122
178
113
152
152
110
110
139
146
135
110
163
92
138
86
91
128
88
168
126
55
105
115
85
122
92
162
152
110
69
124
122
138
103
37
122
107
99
118
109
122
68
68
91
108
122
92
131
104
93
139
152
95
55
104
146
56
146
58
122
140
106
84
117
134
152
115
86
171
105
138
168
101
124
56
93
103
134
122
111
79
138
119
126
107
110
140
92
126
75
152
109
55
138
91
84
89
122
104
119
124
127
188
107
74
93
162
169
122
106
105
69
126
67
110
89
58
112
126
122
95
106
163
99
55
122
67
89
134
78
146
92
107
67
89
37
105
109
86
131
178
122
92
55
91
86
97
102
132
138
75
37
111
95
107
169
138
56
86
122
105
122
123
131
152
104
74
122
136
105
99
55
169
99
136
152
110
105
105
110
92
74
101
123
98
89
67
104
112
55
116
139
122
67
110
37
97
178
136
160
58
69
98
152
126
152
178
144
135
68
144
74
139
168
58
101
74
99
79
124
75
127
67
122
92
105
86
74
109
104
111
104
69
55
83
140
55
56
114
178
126
122
103
92
139
126
103
178
110
123
127
148
92
119
126
107
119
56
126
144
92
127
91
56
178
110
126
105
110
171
110
102
139
134
146
55
178
178
127
169
144
178
92
58
110
104
55
122
89
56
102
93
122
126
126
109
123
130
79
130
104
93
104
86
128
92
119
178
178
92
138
138
134
119
101
110
93
79
97
126
104
74
101
37
92
114
122
86
127
100
79
108
171
67
86
56
55
158
152
93
67
110
55
138
138
61
110
117
126
152
92
110
127
110
86
122
152
96
96
127
158
55
105
67
182
67
37
107
105
127
149
103
111
128
138
89
112
92
139
106
134
110
58
119
86
105
178
55
109
126
37
58
92
105
92
67
92
79
105
111
92
91
119
105
126
110
104
110
126
92
56
89
84
79
104
110
119
55
128
109
152
92
127
141
138
92
91
105
139
126
110
104
100
79
56
152
110
122
123
92
114
128
74
55
127
104
127
56
139
103
139
126
146
182
126
37
77
78
126
128
69
171
138
169
99
128
120
128
107
152
61
122
56
102
109
126
112
178
55
107
56
122
105
69
69
126
126
127
127
180
119
164
56
178
158
104
88
123
56
181
144
122
67
111
56
110
69
126
55
105
56
86
58
56
68
111
107
126
114
86
110
144
92
69
121
55
56
93
127
112
164
91
122
109
109
97
91
134
86
164
55
138
92
134
88
138
128
110
97
86
120
92
152
169
89
105
79
56
120
37
110
107
104
110
122
105
110
104
98
140
127
110
58
83
110
79
77
105
119
119
138
92
111
122
138
101
55
146
56
69
134
122
110
152
124
86
117
126
67
104
122
127
101
126
77
79
124
139
37
152
92
122
152
122
109
67
105
83
75
72
119
92
86
58
75
126
99
122
103
67
122
122
135
111
93
136
122
74
132
97
98
123
120
58
67
92
112
88
87
79
138
107
67
144
149
163
74
105
140
127
86
58
79
104
137
55
105
124
69
73
56
138
110
55
120
125
105
178
92
91
101
93
104
127
110
126
55
75
123
126
128
92
89
110
67
122
127
153
100
158
110
56
148
92
77
69
78
67
92
122
128
75
131
122
109
110
58
136
112
135
110
107
92
138
55
92
103
67
77
178
55
41
56
111
127
120
84
104
178
126
104
171
103
99
105
152
77
77
104
171
67
119
111
109
58
37
158
105
83
92
144
110
152
92
123
138
74
152
92
92
98
121
110
69
104
92
140
107
99
110
145
126
67
123
67
105
55
105
122
126
58
152
105
126
92
126
119
119
144
55
123
146
91
105
138
122
117
122
122
123
134
110
93
167
110
169
102
124
178
169
128
110
138
152
67
93
105
105
122
110
101
106
69
69
55
122
91
110
55
146
74
86
92
79
100
55
68
105
148
92
91
104
67
121
139
72
55
121
56
55
92
126
104
92
139
55
131
128
110
77
123
96
68
83
55
122
111
92
68
99
109
97
119
139
138
56
69
75
160
168
98
94
92
146
92
77
110
141
137
92
109
138
99
126
122
55
122
56
145
92
92
98
123
137
91
104
109
98
55
106
55
122
152
139
122
91
92
139
79
97
95
86
169
104
122
55
139
134
169
126
79
93
55
110
102
91
65
69
139
138
67
110
138
37
104
110
104
88
107
56
75
138
144
110
92
93
58
83
84
67
103
37
128
100
109
37
93
100
105
37
98
92
129
124
123
127
92
101
92
99
92
127
77
89
119
69
156
127
144
101
89
127
123
110
134
103
138
124
178
74
146
126
92
58
129
103
56
169
167
138
120
119
98
110
127
138
77
144
144
122
112
126
91
92
107
122
168
69
93
126
67
105
68
67
178
171
107
55
84
110
146
58
111
139
79
119
124
86
134
109
105
108
118
127
137
55
152
132
130
55
86
74
145
127
127
119
95
93
105
56
110
58
99
68
148
114
105
146
58
138
115
58
122
110
129
126
136
79
131
80
128
127
178
139
58
149
126
84
89
138
110
58
146
119
103
119
67
134
178
55
105
138
105
152
128
146
99
139
75
67
160
140
93
76
165
55
109
122
138
92
92
110
99
101
111
67
139
126
127
99
110
77
92
104
75
111
111
138
146
107
77
124
95
56
67
67
110
126
110
136
105
127
55
124
144
122
101
100
152
109
72
93
99
75
110
91
55
79
92
79
139
105
55
84
106
107
169
78
146
152
92
89
56
178
56
93
64
55
122
86
84
95
104
104
83
122
105
58
137
131
122
123
88
128
123
75
105
58
122
110
105
114
105
93
123
58
127
91
165
101
58
55
138
88
111
56
56
91
122
128
112
117
92
86
110
110
152
92
110
105
139
110
144
110
37
93
104
146
144
138
144
105
138
69
68
128
77
139
67
126
127
104
105
105
139
114
105
105
138
116
127
92
134
152
126
79
120
92
55
122
110
78
55
126
91
104
127
92
105
109
110
144
74
104
104
124
130
122
83
95
126
115
110
130
67
97
69
67
178
139
93
152
128
67
92
93
91
109
104
64
37
75
110
122
67
178
138
55
93
138
110
67
111
56
178
109
37
129
139
67
124
75
58
101
105
79
148
138
86
126
138
55
98
86
112
128
146
91
110
148
58
144
75
152
67
86
119
104
79
92
153
178
68
178
124
98
92
120
105
74
104
127
138
122
138
77
102
144
100
55
58
138
122
107
105
144
104
134
56
121
55
68
132
153
144
111
55
110
92
150
37
122
93
55
74
136
58
93
79
127
112
136
37
162
126
55
122
104
142
83
79
110
105
123
37
55
89
55
126
126
69
146
74
93
122
126
93
75
69
111
138
123
110
110
102
37
137
122
56
55
99
178
146
103
139
93
110
139
58
95
152
68
55
126
77
75
98
107
79
67
80
121
123
132
169
37
126
146
56
128
81
149
84
104
81
124
163
110
105
123
93
77
58
122
67
92
55
111
96
122
126
83
93
68
178
119
102
56
93
132
127
131
37
92
55
104
99
138
103
127
135
56
124
75
138
97
123
105
56
91
114
126
110
123
99
105
75
110
110
111
144
140
162
67
126
126
138
122
104
79
83
126
55
92
92
136
178
92
92
74
99
110
160
138
110
127
92
138
122
109
56
58
124
110
140
127
128
139
122
169
58
122
121
122
83
55
110
86
92
127
126
56
56
92
118
79
124
111
146
92
118
68
92
131
125
103
37
92
108
112
126
67
139
139
97
93
178
75
105
178
77
92
56
119
105
110
123
103
178
152
148
56
109
92
69
56
79
92
152
110
180
69
55
139
86
147
105
126
138
55
105
120
127
84
89
178
98
74
102
109
92
104
156
56
110
99
37
127
139
93
129
37
144
107
55
92
69
79
67
103
104
92
105
69
58
138
130
152
77
105
138
67
104
77
122
105
104
92
136
67
130
99
139
139
92
107
37
117
128
134
92
83
109
55
56
122
105
128
58
169
55
122
126
55
105
55
37
126
78
69
105
129
107
56
134
55
178
126
55
101
130
55
97
98
132
55
127
152
128
74
92
67
122
93
104
122
131
93
152
92
144
86
56
110
88
139
130
79
103
148
171
92
105
178
109
97
83
110
92
86
37
123
146
58
130
55
97
112
92
67
105
168
149
118
120
144
103
114
144
151
110
92
93
114
74
103
146
122
92
136
139
152
92
55
140
103
56
121
146
111
77
105
124
144
122
124
69
122
146
92
127
69
84
79
93
126
55
58
111
114
92
74
140
139
127
118
92
158
169
128
92
124
75
105
56
171
152
92
92
123
58
104
75
109
124
93
56
91
101
55
55
152
74
122
71
111
105
138
84
144
93
58
79
119
37
124
55
56
99
55
138
92
67
140
56
98
67
128
112
55
127
140
139
122
133
118
64
178
92
69
127
67
84
79
126
138
169
56
94
56
146
105
110
92
128
89
55
68
144
171
148
98
105
67
109
102
93
122
138
118
107
112
37
126
67
58
167
58
67
77
122
130
93
56
92
92
122
122
128
55
126
55
92
104
152
164
105
55
126
106
58
138
178
93
122
58
105
92
131
92
83
93
130
130
119
120
67
92
95
58
77
58
37
105
139
96
92
91
128
103
78
178
109
165
128
131
124
152
110
122
93
103
67
130
146
112
92
67
129
138
103
169
138
93
67
110
126
92
139
122
119
139
156
55
103
152
111
127
55
188
105
126
102
108
122
58
58
178
126
110
79
77
74
92
81
109
88
37
91
126
114
158
74
146
138
105
128
104
122
138
112
105
92
92
148
92
92
139
37
67
106
150
134
92
92
138
167
110
67
106
106
97
114
138
93
126
117
83
74
78
69
72
178
136
128
55
92
110
99
121
112
131
122
93
136
148
107
108
138
56
78
97
109
37
178
92
83
86
58
140
93
169
98
122
112
98
55
104
113
124
130
122
160
109
109
122
108
68
97
128
152
131
146
144
131
158
146
93
89
145
99
92
117
127
178
126
104
92
92
158
127
105
152
128
138
178
122
92
126
122
126
132
67
128
101
74
100
169
83
165
55
67
110
167
93
86
75
136
68
119
124
56
114
55
180
67
79
86
92
67
112
122
139
56
180
134
145
146
126
122
55
178
68
92
100
105
37
77
91
138
126
92
122
178
55
97
92
56
101
111
67
138
145
152
93
93
124
37
126
144
55
110
92
67
92
119
67
122
91
167
74
126
98
126
84
97
109
110
107
127
165
68
92
144
123
127
105
110
92
108
92
92
64
55
92
55
55
138
80
103
119
114
110
124
107
91
68
103
136
55
109
152
37
126
55
180
123
92
105
152
92
112
164
178
55
77
78
110
128
158
86
152
178
91
100
107
122
99
128
55
93
37
58
109
110
92
111
83
124
126
91
126
110
138
67
56
37
122
128
124
101
87
158
152
69
93
138
120
126
110
138
110
101
56
76
92
100
92
171
149
69
100
141
119
92
127
92
74
92
126
127
105
103
92
110
69
130
86
127
105
138
164
124
124
104
67
92
178
152
102
126
105
92
68
158
110
131
75
122
122
111
92
122
105
105
148
120
178
67
108
180
127
104
105
75
91
123
55
105
89
126
55
127
122
180
56
80
67
83
55
138
152
132
91
178
79
110
126
37
99
92
126
100
144
110
169
138
105
146
58
146
92
104
93
55
137
83
55
55
126
74
178
122
74
104
122
122
88
97
110
130
144
93
122
124
111
107
58
92
102
146
146
141
101
171
93
89
146
124
130
67
55
104
158
112
86
101
126
122
130
122
101
136
109
77
55
81
104
100
136
56
93
93
110
127
171
79
37
68
75
92
135
92
113
87
68
122
139
105
169
139
100
92
105
134
118
77
103
91
93
178
92
168
69
160
55
75
84
126
111
71
122
93
110
171
110
178
69
122
73
75
105
99
146
117
139
100
98
91
84
55
97
104
134
93
111
118
126
122
67
152
83
93
128
110
67
126
122
122
104
58
93
152
58
91
149
84
86
115
37
74
106
58
56
97
93
58
138
118
109
152
127
58
110
178
140
104
55
169
80
55
123
83
110
105
110
110
110
129
104
122
134
169
93
84
93
56
158
76
74
77
99
68
152
134
110
99
58
55
180
127
111
103
104
75
67
104
169
110
55
93
178
111
67
178
138
37
104
110
123
67
91
111
75
107
77
91
124
77
92
138
83
122
89
55
110
93
92
137
104
109
124
128
104
118
105
69
136
110
91
138
118
110
79
67
123
142
130
139
105
128
178
164
107
58
139
151
178
122
129
111
119
58
92
86
138
114
169
101
37
167
127
92
138
91
55
37
106
92
134
58
140
99
75
162
107
139
99
55
148
122
122
37
55
126
37
140
92
83
126
67
55
68
37
122
180
92
86
134
92
55
114
56
119
142
162
55
132
77
122
110
140
122
152
76
110
77
105
104
120
55
122
91
160
118
124
110
105
144
107
105
178
111
125
68
67
68
138
105
123
109
93
128
104
67
104
58
92
93
110
123
92
92
77
83
84
58
104
91
79
145
94
128
92
138
156
139
55
144
77
67
139
110
111
110
86
107
104
123
128
97
139
147
132
178
92
105
58
127
144
110
111
138
178
104
117
55
105
86
37
56
102
37
99
100
138
104
178
55
100
55
156
61
126
74
65
138
138
74
56
55
79
169
55
67
123
141
97
105
137
140
91
126
58
98
106
105
138
130
114
146
127
91
149
146
77
77
56
126
105
126
37
110
69
56
110
134
86
92
125
126
139
69
126
91
55
115
104
110
56
122
84
104
58
105
92
124
105
97
158
93
55
123
109
69
80
158
128
111
69
75
67
86
122
103
138
55
138
146
148
93
92
86
126
92
87
112
144
111
123
128
37
127
55
110
92
128
138
105
126
105
123
122
58
139
140
67
86
67
55
110
92
79
146
109
56
110
128
112
104
67
122
119
126
104
105
110
106
122
105
104
140
104
74
92
92
105
123
69
75
37
111
79
133
110
169
67
58
109
100
69
69
119
107
139
124
55
141
86
67
109
104
110
56
110
55
130
110
146
55
117
93
139
93
37
146
126
127
56
67
126
111
37
105
92
138
86
91
110
91
93
122
105
69
101
180
105
167
92
162
92
119
132
55
127
127
122
104
178
79
55
92
105
156
111
127
105
79
92
122
75
110
92
68
128
134
124
74
102
126
127
122
74
122
146
130
55
128
111
139
56
91
109
92
138
55
101
126
130
111
105
180
162
121
127
123
93
147
132
84
98
134
56
79
105
55
56
91
67
104
119
122
37
158
110
92
56
105
134
108
69
86
145
122
97
146
136
128
138
89
55
104
95
122
92
56
134
69
148
105
103
67
132
55
92
67
69
92
76
126
111
111
119
134
92
131
110
37
126
55
169
93
122
37
55
138
55
67
93
77
92
92
41
138
75
77
104
110
83
92
68
126
56
79
68
55
146
74
114
140
169
77
106
144
110
171
93
92
128
37
56
55
106
110
69
84
149
105
152
67
58
146
188
112
178
122
138
105
58
104
122
124
92
74
110
58
58
110
91
168
122
92
104
112
55
126
117
178
86
79
83
58
122
93
105
131
109
127
150
84
103
119
145
137
69
79
142
139
178
144
169
56
77
127
144
110
123
138
150
127
106
55
123
77
139
55
67
168
91
56
178
104
115
56
37
75
99
74
92
110
105
92
79
86
68
55
117
105
134
162
104
138
56
139
178
74
91
123
178
79
178
91
99
56
125
67
67
77
93
123
117
131
144
84
79
121
104
55
83
79
67
55
93
162
139
144
75
132
128
126
126
55
55
105
92
165
37
124
95
93
84
99
122
110
56
111
91
67
111
92
97
77
132
124
138
148
136
104
139
84
88
109
111
56
120
138
99
126
128
104
79
111
110
109
140
100
76
122
67
146
95
105
120
134
92
108
58
134
37
127
91
109
127
97
127
99
98
126
77
69
138
169
140
162
104
102
110
37
56
86
102
122
67
92
92
95
124
105
146
84
158
92
128
55
99
178
140
130
135
122
144
104
55
93
75
55
143
91
104
57
79
91
104
55
91
67
126
55
127
86
93
122
135
111
95
126
140
93
132
110
55
111
108
89
83
126
128
101
108
78
149
74
110
138
56
67
110
55
110
93
114
92
197
122
110
104
93
160
146
138
144
58
119
105
41
167
86
145
134
131
112
99
93
171
137
122
105
37
107
126
56
56
76
58
114
152
120
117
122
77
109
127
148
110
123
77
56
69
74
104
180
55
55
122
95
125
92
86
105
178
92
111
126
55
119
86
122
93
178
91
178
122
120
163
169
140
87
129
115
68
69
86
122
55
56
110
103
104
105
127
79
101
188
122
148
122
138
152
169
92
126
92
92
104
144
158
67
100
58
123
93
92
144
55
92
110
67
144
92
138
130
105
139
69
91
93
93
67
100
105
112
67
92
111
110
67
126
110
97
107
56
84
158
92
127
138
110
92
83
105
58
111
113
110
123
105
126
67
144
37
144
152
92
105
86
84
69
139
122
119
123
114
122
126
95
110
126
132
100
160
112
144
69
134
92
56
110
123
127
146
37
123
56
55
56
58
105
105
107
86
67
138
55
75
110
109
139
92
126
105
110
69
92
104
139
122
137
178
74
37
104
129
79
123
110
139
101
110
122
134
91
92
110
124
55
127
110
84
122
127
97
83
79
122
58
78
58
92
135
91
127
56
110
123
58
122
138
58
117
139
105
144
80
144
138
127
103
134
56
131
124
98
93
144
109
56
109
56
93
130
58
109
91
152
110
104
128
67
41
178
127
109
140
55
110
55
92
37
105
163
128
118
108
115
92
55
95
144
169
86
127
144
110
169
101
126
55
146
105
142
93
127
86
97
93
55
122
77
105
162
68
91
105
77
110
178
92
92
72
104
122
138
92
55
122
110
127
37
122
67
67
162
74
110
75
126
105
93
122
111
105
124
91
67
110
86
55
74
130
67
163
104
110
67
74
127
92
117
104
100
92
148
91
75
68
58
56
55
138
77
69
92
104
92
58
104
128
104
98
55
93
122
105
67
178
89
92
146
134
163
165
55
178
114
86
182
56
56
83
127
144
139
128
122
93
110
118
110
92
106
93
93
138
69
122
67
152
77
141
127
105
74
91
138
126
178
56
98
92
130
56
126
81
122
93
55
105
83
75
56
55
110
99
111
132
128
97
93
114
89
165
55
134
75
169
111
55
55
58
105
37
104
126
134
104
163
105
68
138
126
110
95
92
118
122
133
74
110
132
93
58
122
105
67
110
138
86
126
129
139
67
69
92
55
132
144
122
105
152
67
93
110
138
144
123
111
74
148
92
128
122
92
110
68
138
81
79
122
162
95
58
114
152
37
146
122
67
67
104
171
105
162
110
55
118
122
109
126
165
146
56
119
79
105
37
126
134
56
110
110
138
91
69
68
122
131
138
75
56
58
126
91
55
148
79
104
123
152
106
97
119
68
110
105
92
93
122
127
79
93
105
125
110
37
152
56
109
144
115
130
69
105
138
140
146
124
158
55
126
105
127
105
105
37
68
110
99
126
146
110
104
84
75
145
178
122
56
137
89
79
148
122
100
75
122
126
93
126
92
110
92
104
56
111
68
110
105
69
93
86
152
99
147
89
56
122
91
103
92
91
55
97
111
127
120
152
79
89
139
91
77
58
119
138
163
91
122
178
131
105
126
69
177
110
110
93
178
138
112
124
146
122
55
92
101
69
110
104
92
178
140
119
152
111
146
127
55
93
69
105
110
178
58
134
139
104
92
69
122
105
103
99
68
79
92
134
126
100
110
127
122
92
120
77
128
92
120
100
92
55
105
126
67
110
104
138
101
138
55
119
55
107
126
139
72
164
103
128
92
67
139
104
56
138
105
111
98
92
55
89
74
107
92
104
111
55
92
122
68
104
99
37
180
101
37
84
56
104
122
92
108
110
122
55
125
122
105
92
79
131
92
92
58
163
93
119
69
99
75
119
118
79
122
103
110
92
123
92
103
68
92
124
55
126
69
83
92
138
127
128
126
86
119
105
91
105
77
100
93
141
171
67
158
93
93
139
74
169
132
123
105
99
139
93
92
124
126
37
92
110
91
127
110
67
106
103
139
37
110
117
55
127
74
58
138
110
117
128
114
69
199
126
93
110
105
105
74
127
101
160
132
92
119
104
93
103
67
69
58
106
104
119
169
126
106
92
114
110
140
165
79
93
92
122
104
122
135
114
144
92
140
92
102
146
72
67
67
146
124
105
123
119
93
69
126
139
112
55
74
114
163
158
110
79
139
119
107
55
92
110
135
110
93
92
156
122
139
97
92
99
77
125
67
92
74
122
55
107
75
165
138
152
138
192
100
122
132
127
126
92
55
37
69
110
105
169
92
139
105
88
110
134
188
79
105
92
137
86
122
110
103
110
83
92
145
69
37
112
99
108
138
37
37
108
55
146
68
120
58
96
131
111
112
119
136
92
67
146
56
178
124
73
68
67
93
122
79
177
93
110
140
84
105
101
167
178
147
92
144
178
136
104
178
126
84
55
110
86
95
128
107
91
109
109
103
79
55
104
77
127
69
106
92
77
125
146
104
92
138
110
55
37
122
127
84
178
144
103
103
105
92
126
94
148
109
107
84
140
118
110
55
117
92
122
92
132
67
128
105
79
105
55
55
178
56
120
122
99
106
124
102
99
92
55
126
148
58
139
86
92
106
55
80
122
93
67
55
92
126
124
132
107
122
139
55
104
58
56
104
58
126
69
67
67
83
58
55
92
72
68
162
146
139
111
110
86
58
92
56
92
126
93
126
146
92
129
152
152
91
92
128
137
91
37
91
55
110
91
140
99
162
134
56
105
67
140
123
152
74
142
148
122
105
130
56
178
199
92
123
104
92
110
56
126
110
138
143
55
86
105
55
56
110
91
92
139
107
55
151
68
92
55
122
93
92
58
83
93
109
79
75
109
92
69
128
67
146
137
104
127
101
126
72
110
126
126
152
128
146
103
84
93
69
93
92
168
122
122
140
91
128
89
92
124
178
132
56
146
55
145
92
128
151
131
119
67
55
83
93
67
104
99
109
58
109
87
93
128
103
104
55
93
104
75
105
140
134
122
77
178
135
86
92
103
81
104
67
167
89
55
67
92
112
41
124
131
126
92
124
91
107
104
180
99
79
79
110
128
92
105
118
55
105
123
37
122
127
122
80
126
126
106
77
69
92
37
163
58
101
144
130
152
119
55
92
178
171
67
139
118
79
91
127
93
114
91
199
122
110
122
139
119
123
99
55
93
55
126
138
171
110
86
109
81
83
37
58
109
89
92
128
92
124
111
122
110
110
131
104
122
106
99
180
105
55
92
146
69
79
111
121
169
118
74
128
137
126
138
74
122
147
79
139
126
92
92
127
55
148
140
169
67
92
141
67
58
97
92
55
91
112
132
121
123
56
103
136
110
106
91
171
141
56
55
144
111
75
99
139
89
104
37
109
83
93
75
104
56
120
113
105
74
122
92
132
68
139
122
55
105
91
126
56
67
127
92
142
109
140
93
92
55
138
167
79
160
138
128
138
148
76
117
99
93
139
180
110
123
138
104
126
110
138
91
58
159
80
144
131
92
100
138
105
127
127
127
67
128
37
102
92
139
69
138
92
105
104
146
55
55
169
92
89
105
126
119
110
111
37
111
180
105
67
67
163
127
119
105
55
55
104
58
134
119
67
110
112
99
69
37
37
127
138
126
111
92
126
81
132
126
83
123
126
55
104
89
178
105
123
128
92
126
74
126
109
128
114
55
171
128
89
58
92
169
56
37
138
110
107
99
128
119
110
105
105
69
58
67
107
138
107
111
58
37
128
139
92
119
122
119
104
110
114
127
91
106
74
56
92
111
146
105
99
110
56
99
105
110
67
152
114
141
119
55
105
104
152
138
67
138
83
138
144
69
68
91
101
122
140
103
138
104
79
122
141
104
110
169
122
126
140
92
128
122
67
105
55
86
91
121
128
55
111
134
58
110
132
55
139
37
92
127
152
110
92
122
111
127
92
56
104
93
135
91
178
105
112
146
111
92
128
138
124
131
138
58
91
139
152
119
110
169
178
56
136
140
67
140
130
109
79
139
169
55
139
93
91
92
139
146
109
104
126
110
109
199
74
127
92
178
138
55
55
98
93
137
56
86
91
118
105
86
91
75
127
69
136
69
69
135
56
86
123
111
114
110
56
122
111
97
135
56
122
93
104
106
56
67
119
192
169
110
138
120
169
122
67
89
122
56
88
104
58
139
69
123
58
118
108
55
123
58
110
119
144
92
91
56
37
119
107
178
110
125
178
74
128
178
107
100
128
128
55
169
145
136
104
126
106
128
146
100
109
68
105
169
79
83
86
110
58
93
132
69
104
89
114
138
123
120
93
37
109
55
79
81
58
132
69
115
93
138
93
139
55
138
95
79
87
104
127
144
169
110
139
163
103
91
67
117
101
120
37
56
144
146
105
134
107
128
83
126
92
146
122
122
92
139
92
115
56
118
55
93
104
112
122
99
149
110
180
164
55
104
37
69
37
37
55
119
74
122
102
105
138
138
110
178
144
109
114
37
139
93
86
111
92
122
146
67
86
119
55
55
67
105
95
109
139
55
141
91
118
98
113
83
123
55
91
139
67
92
101
162
139
55
134
93
92
169
141
84
104
92
134
100
120
169
110
124
91
87
144
92
92
141
112
69
92
83
92
105
77
91
104
125
77
58
75
80
122
93
107
130
79
107
112
178
69
111
55
67
104
92
67
122
119
123
86
110
110
69
114
162
56
144
122
75
127
86
111
107
105
111
122
148
86
83
144
68
92
55
109
126
56
92
79
160
180
122
140
123
152
105
105
55
69
151
37
105
92
119
132
107
92
138
140
58
149
55
74
69
114
56
123
110
37
92
110
135
55
67
132
101
111
128
55
121
134
178
83
58
139
107
128
92
138
109
122
58
146
55
122
169
110
136
92
144
115
105
69
126
37
122
92
92
145
122
138
138
79
158
180
107
110
83
132
120
122
100
58
127
56
162
58
107
109
123
92
56
107
137
112
67
146
103
83
123
58
178
92
144
77
69
58
130
144
109
110
92
122
92
92
119
148
151
72
75
122
152
67
139
152
126
55
68
178
93
93
92
93
128
132
105
138
110
92
79
55
104
110
97
56
122
99
119
138
110
103
144
92
122
92
126
180
162
109
126
84
55
158
67
92
77
158
107
160
91
55
138
81
97
92
91
119
138
55
122
109
37
122
122
126
91
37
67
123
122
138
107
144
124
104
83
168
55
37
171
88
78
91
128
126
92
92
84
103
92
91
105
56
55
144
97
91
67
138
101
122
158
74
99
37
139
152
92
111
144
180
138
122
138
97
108
122
78
153
103
92
126
120
103
178
124
138
136
127
178
110
148
124
69
111
93
67
67
125
92
37
79
55
109
92
178
77
99
103
92
139
79
75
103
139
146
145
122
103
127
169
75
162
148
92
125
119
111
55
128
87
56
107
102
105
126
93
119
86
119
77
130
112
100
124
138
138
142
75
138
128
105
86
119
37
105
152
110
77
77
146
110
160
110
131
152
134
111
77
106
68
138
58
110
118
110
169
103
103
119
37
55
126
93
118
149
165
100
55
120
138
127
129
169
58
37
58
56
139
83
138
127
67
103
114
103
75
91
123
128
140
111
119
92
136
120
86
123
134
88
77
99
67
140
92
152
105
75
126
92
67
145
136
110
111
126
108
163
138
138
126
105
92
108
77
97
128
138
126
127
105
140
165
138
156
95
152
69
138
164
126
105
67
110
56
110
37
109
139
138
69
67
109
98
92
132
178
55
91
110
146
105
139
100
92
92
110
105
107
67
127
92
149
197
80
134
110
105
111
122
140
95
58
162
124
119
130
69
111
97
127
111
110
152
138
55
74
88
104
69
127
152
148
92
105
117
55
126
86
110
146
139
178
134
89
127
146
91
106
169
112
126
75
109
109
69
122
137
67
138
130
104
97
124
122
122
139
55
67
37
104
91
92
127
126
93
126
139
181
122
144
55
144
132
134
138
130
110
86
138
118
56
78
138
56
104
56
105
67
69
55
105
68
93
93
115
109
105
107
72
92
151
110
55
37
135
126
56
128
93
171
105
139
110
92
138
127
67
169
58
135
111
107
92
165
74
107
97
132
105
110
120
56
110
55
69
86
178
37
150
110
137
119
162
104
138
105
55
88
127
74
83
128
122
105
75
76
114
92
56
122
105
139
56
91
152
74
86
142
104
169
126
83
110
68
58
37
142
119
160
168
37
55
55
139
92
152
164
178
139
55
108
122
139
56
126
97
98
58
180
75
110
126
94
110
178
165
104
137
112
123
127
126
110
126
77
105
162
79
105
104
105
152
182
69
141
109
95
122
55
103
93
138
79
122
74
100
73
160
119
103
110
128
84
104
100
55
118
92
98
93
103
112
55
131
37
79
55
96
92
127
37
127
75
144
158
111
118
75
122
56
55
139
91
103
55
158
75
178
152
67
110
178
122
110
110
123
110
67
55
135
126
111
84
119
107
123
138
122
79
178
99
144
72
98
122
178
146
107
138
129
58
130
79
68
105
138
134
126
92
122
148
138
56
81
37
58
144
97
67
105
92
91
55
144
111
92
69
119
67
103
58
100
55
122
134
83
110
112
92
126
178
136
56
107
139
156
83
126
141
91
105
105
140
148
105
104
104
68
67
127
146
108
67
126
55
122
141
127
92
56
101
146
126
126
99
37
110
164
112
56
126
55
55
74
92
115
79
107
130
119
91
106
99
171
105
105
104
110
99
92
141
162
55
103
139
146
109
122
93
92
74
92
126
138
171
97
110
113
130
109
126
128
134
134
55
109
56
167
77
55
92
119
109
138
69
107
111
105
104
37
97
132
75
178
37
125
122
84
110
93
122
122
110
146
83
67
67
126
79
110
58
134
97
105
105
117
77
92
139
105
77
56
100
134
79
158
139
117
110
130
109
99
93
111
83
79
84
77
105
55
69
83
162
146
110
110
69
111
93
169
37
58
114
92
168
92
97
69
134
67
109
95
55
98
91
110
110
92
126
146
199
130
86
178
110
110
92
135
118
83
137
88
138
73
103
92
156
148
92
92
56
127
123
55
105
77
122
93
107
99
37
144
123
105
105
69
93
56
122
92
55
55
93
126
152
111
77
146
144
99
69
67
128
67
110
126
132
138
74
92
100
144
105
142
68
79
67
37
58
110
113
111
37
104
93
110
67
75
138
75
123
178
152
117
98
75
92
169
92
128
92
81
58
56
92
92
92
178
122
139
92
134
58
111
122
55
58
92
119
100
178
147
120
56
139
119
55
67
119
178
127
92
132
93
55
180
160
138
126
109
67
67
119
123
86
122
115
77
105
55
130
139
122
92
123
107
123
104
93
105
86
55
55
146
68
111
144
149
144
105
67
119
160
169
99
56
37
122
105
140
69
123
93
92
69
55
112
111
92
93
130
99
67
92
104
123
93
99
168
122
139
146
125
136
80
171
145
55
83
145
98
56
105
86
77
104
126
109
91
86
110
55
55
122
80
92
77
78
37
86
122
56
67
64
146
126
105
86
102
112
92
92
92
67
105
139
110
92
104
126
102
69
101
169
171
92
37
110
104
92
109
140
55
37
110
137
77
128
69
77
123
152
92
127
138
144
104
74
67
86
92
97
105
125
139
134
171
123
56
37
122
92
56
110
182
127
139
65
109
171
115
136
139
56
124
74
79
92
105
144
110
56
136
103
152
122
89
92
138
74
79
91
139
67
119
109
127
109
144
109
138
110
110
168
74
119
104
110
56
111
65
165
111
93
96
124
165
55
55
122
138
135
127
126
97
83
99
55
58
122
110
127
58
122
75
101
117
91
178
119
97
92
79
126
93
99
99
140
67
104
134
171
69
122
55
37
138
77
146
112
110
37
74
119
127
169
74
139
131
122
146
121
111
99
69
101
139
127
86
95
180
105
131
92
178
92
119
146
144
109
105
55
58
86
111
141
178
74
107
67
83
110
123
152
110
122
93
138
124
109
148
139
104
124
77
122
67
92
110
103
148
103
105
134
77
122
56
56
119
142
55
80
56
83
92
119
56
83
114
67
75
92
119
152
55
145
58
101
140
109
110
58
74
167
67
107
97
126
86
97
110
89
138
139
147
124
105
138
144
115
138
67
55
111
104
113
87
105
118
84
79
92
110
131
122
138
126
75
92
104
180
126
138
113
105
150
95
168
162
56
138
138
102
74
77
139
97
169
122
171
83
107
144
158
105
83
126
139
139
122
126
84
103
79
56
92
67
126
86
92
100
56
55
135
119
122
162
110
118
105
99
105
92
140
104
67
74
107
67
136
140
67
92
124
144
145
92
163
117
127
142
67
140
69
120
107
99
67
110
134
127
67
138
146
92
92
91
111
100
55
37
138
55
104
37
92
93
105
67
93
178
67
122
61
171
67
101
122
105
126
74
127
91
152
139
105
86
105
103
111
114
119
55
55
55
68
67
104
105
56
146
100
106
114
122
67
110
126
126
102
55
56
55
55
110
37
110
144
115
93
56
171
144
126
164
125
178
126
127
134
77
92
84
165
89
122
142
97
56
55
95
105
144
104
58
147
139
88
135
110
127
92
123
111
118
132
128
37
91
110
68
105
110
106
144
128
65
131
84
37
56
101
93
122
58
126
140
55
92
127
97
75
55
92
55
152
122
84
58
105
137
101
67
92
120
92
106
55
93
107
105
79
138
79
77
105
158
138
86
92
148
136
55
105
92
105
127
58
74
92
56
117
138
75
68
122
171
106
55
55
112
119
178
169
140
77
69
199
110
108
92
146
92
114
69
163
122
92
180
110
37
139
67
55
68
37
139
92
92
137
138
37
93
140
77
55
56
168
86
160
165
55
58
126
92
105
104
134
126
105
126
55
146
138
122
93
122
127
110
126
124
139
104
111
84
171
178
110
58
75
110
56
126
86
105
103
122
37
126
126
107
84
120
139
122
126
104
138
86
119
167
136
91
119
92
138
110
58
83
103
105
77
132
120
158
152
97
139
58
138
110
97
126
110
67
67
93
86
67
92
169
122
87
138
103
79
92
139
139
126
132
111
92
164
104
138
92
127
55
109
69
115
79
122
110
110
122
58
105
97
104
79
110
95
114
55
110
58
75
126
69
95
148
163
163
146
56
104
92
162
104
144
110
75
91
107
110
138
67
152
126
104
91
55
111
110
123
109
106
77
113
98
55
131
56
103
103
107
122
92
37
74
122
56
97
80
73
126
152
104
91
126
134
104
124
86
56
102
163
67
106
55
178
162
178
77
110
110
67
101
178
111
119
91
123
148
105
124
120
55
67
117
104
144
158
165
111
109
56
138
58
144
169
127
140
55
74
146
103
74
114
107
119
138
132
37
92
139
168
69
74
55
92
55
55
139
148
97
104
67
77
68
99
122
55
55
122
104
105
126
110
69
83
140
178
84
56
153
122
169
106
105
92
93
100
141
122
124
127
37
99
122
151
92
105
128
67
150
124
104
120
120
92
122
92
109
113
122
122
122
37
69
105
112
75
142
93
148
171
103
152
122
69
128
109
93
111
80
122
130
67
109
123
91
67
112
68
134
91
92
103
68
72
148
106
96
164
91
104
67
92
126
37
99
111
120
103
110
103
138
178
111
120
74
144
92
177
139
110
37
99
86
138
104
92
104
105
127
92
81
93
83
68
120
102
138
74
41
128
55
107
119
92
142
92
134
122
130
105
141
132
93
144
67
79
140
122
139
135
69
56
130
75
101
169
132
69
163
93
123
86
74
160
93
92
108
138
92
131
67
110
56
127
167
92
145
56
75
110
122
127
169
106
93
83
132
92
127
92
123
178
111
56
104
149
86
106
58
139
92
105
110
127
69
58
107
128
37
127
56
92
75
104
56
56
144
144
77
125
58
178
105
58
104
104
147
58
138
169
118
139
138
73
144
119
67
109
122
37
103
55
95
139
158
58
122
67
106
110
123
67
104
92
160
55
92
152
83
112
104
69
56
120
127
178
178
122
140
126
106
91
93
114
58
92
144
91
109
93
123
55
122
123
55
93
152
91
111
74
122
135
55
98
92
178
105
37
138
140
178
122
86
92
56
58
105
37
37
131
123
114
104
135
55
58
105
67
79
110
92
131
92
104
110
55
92
58
146
99
105
138
128
92
37
105
67
77
127
101
55
124
167
132
123
104
134
168
144
104
182
104
104
105
79
97
117
179
130
93
77
97
126
169
132
110
109
110
104
58
37
103
55
92
55
101
100
112
132
126
122
37
92
79
79
127
92
158
146
105
105
91
131
92
148
58
123
131
67
112
105
146
92
132
130
105
171
134
93
88
131
128
92
55
107
79
105
138
77
110
104
126
120
100
58
171
55
110
131
107
134
144
118
110
91
104
178
84
110
152
105
91
111
92
109
126
86
67
111
137
37
86
134
152
93
92
124
93
103
74
126
110
110
101
119
92
110
139
58
138
127
124
137
118
92
92
139
122
110
69
97
148
124
110
111
124
138
92
55
138
134
117
67
110
120
69
89
123
105
89
67
92
114
67
130
78
152
142
105
68
139
37
55
122
110
139
169
106
101
119
126
127
138
58
84
55
104
37
92
104
92
92
112
105
119
126
120
80
88
146
139
118
127
92
92
37
126
163
139
138
139
92
93
137
105
68
92
104
126
180
111
126
69
178
109
98
105
106
140
134
152
37
123
105
102
105
106
74
77
105
119
56
105
130
86
122
75
93
126
152
58
92
55
134
105
69
134
79
122
130
139
86
122
138
162
93
93
126
122
37
137
138
76
69
92
83
123
55
93
138
123
112
105
119
92
123
181
127
139
129
122
138
89
144
97
111
134
67
167
145
109
58
101
123
100
92
127
92
113
178
79
37
55
169
55
131
109
75
107
122
112
136
111
110
69
123
139
122
199
93
56
132
148
81
55
55
100
109
136
171
135
107
91
92
79
139
55
99
122
138
74
104
139
92
129
126
105
146
119
148
106
69
110
124
79
55
122
67
89
37
139
55
93
181
99
134
105
92
139
110
92
110
128
67
74
122
144
119
126
111
103
55
95
139
37
122
37
146
156
105
92
107
67
111
123
146
110
168
37
126
178
138
138
127
55
152
55
110
122
126
86
109
137
55
124
67
122
109
146
139
56
104
162
127
58
56
92
110
109
69
58
119
178
152
68
92
88
134
128
144
78
99
109
105
110
69
105
77
79
55
119
111
110
109
138
114
146
130
178
67
110
69
55
104
139
99
130
111
105
144
178
64
92
127
148
84
99
163
111
149
92
115
105
158
127
103
128
128
119
126
99
91
110
178
122
92
105
93
105
55
93
111
92
119
55
103
69
139
110
79
139
110
135
99
138
132
119
107
112
127
55
146
111
75
122
67
105
130
92
55
156
37
91
120
112
134
104
122
67
118
112
126
152
67
120
123
56
91
138
110
58
179
137
98
109
105
55
138
105
138
136
55
118
134
138
163
37
92
145
114
152
91
137
146
79
123
105
169
77
92
92
152
92
55
99
146
95
104
56
91
105
152
104
92
139
86
79
119
169
58
91
75
130
131
84
56
122
124
104
37
110
126
93
169
119
89
126
138
93
106
105
110
89
178
91
144
123
119
131
92
126
55
104
163
56
55
135
114
138
134
144
67
67
68
126
55
91
93
78
92
92
93
123
93
101
128
67
152
122
86
122
56
138
86
144
171
105
108
79
92
86
119
127
92
139
92
152
55
144
74
103
88
122
86
127
84
56
105
104
86
135
178
123
110
139
37
69
110
165
93
144
104
127
105
111
110
93
109
122
104
55
122
136
92
114
67
132
110
93
55
127
93
138
79
138
58
130
110
74
126
79
86
55
55
124
178
55
56
122
119
110
104
75
55
98
77
171
92
86
144
74
138
142
79
37
90
110
58
119
92
127
91
105
92
88
138
138
77
55
110
144
92
199
98
115
167
55
105
93
92
180
129
91
107
126
128
126
127
169
178
79
140
93
145
86
128
152
140
37
67
130
128
130
111
123
158
91
92
110
58
55
115
103
56
56
142
105
92
92
97
163
161
56
55
152
56
68
56
153
119
139
58
92
105
122
67
105
93
113
144
107
128
91
104
141
104
68
92
126
83
74
92
93
86
86
67
163
134
138
100
93
67
37
105
138
140
146
138
144
56
128
111
99
100
132
144
55
138
86
128
37
56
137
169
147
77
55
67
138
37
139
84
122
67
37
37
122
132
110
103
128
163
92
168
122
105
55
112
127
56
115
120
77
138
114
74
98
86
67
156
92
146
110
99
152
148
69
86
92
139
127
89
76
73
104
84
126
128
165
138
132
178
168
112
127
146
55
92
126
126
107
86
91
146
164
93
130
92
67
101
123
180
114
114
74
86
106
126
127
119
92
112
126
107
103
91
77
55
86
122
101
119
124
112
79
92
92
164
140
126
138
122
107
109
93
129
84
152
152
104
111
112
111
56
140
55
111
104
92
124
122
89
146
142
178
55
98
109
79
128
126
104
138
126
103
92
136
104
142
122
168
139
111
126
134
56
73
105
128
55
91
55
168
110
74
67
92
160
67
105
58
67
110
146
110
123
55
93
74
138
138
105
37
146
138
67
127
105
105
92
56
160
67
169
122
119
79
67
92
107
67
128
92
67
37
138
79
124
146
127
97
37
86
104
111
152
92
109
91
56
142
163
161
67
77
102
84
37
148
128
106
109
92
67
55
105
168
93
180
138
102
95
104
122
55
119
124
69
55
126
152
86
67
92
77
122
105
100
74
105
163
79
67
122
119
92
128
91
93
134
178
138
123
92
152
91
136
106
128
123
122
55
138
135
106
55
91
130
140
126
182
165
88
131
127
126
92
104
152
134
93
67
67
131
79
92
37
110
123
73
127
132
124
58
84
79
144
178
163
134
55
112
58
117
152
138
92
138
112
152
105
169
146
91
79
160
162
136
75
67
110
55
119
58
79
77
167
81
128
132
127
122
77
99
138
104
95
86
178
104
128
123
92
91
93
55
119
75
134
122
55
139
77
81
110
103
168
146
111
98
55
104
76
119
56
117
130
103
122
104
104
127
126
79
146
139
104
126
122
140
124
111
68
126
138
152
124
105
149
138
135
56
126
87
79
122
152
74
115
178
91
111
104
126
97
37
122
189
100
55
37
67
110
93
110
128
55
126
55
169
126
55
91
111
69
74
124
92
144
92
93
134
83
130
92
138
92
79
93
55
105
69
105
124
131
88
107
86
119
119
111
37
56
111
146
138
105
169
178
138
58
92
55
104
99
92
68
110
138
55
92
138
68
92
110
110
92
124
69
124
79
105
124
105
58
58
93
68
96
127
104
92
87
91
105
72
123
92
74
131
67
58
104
134
100
122
126
58
55
144
107
69
128
131
108
110
67
37
148
178
138
105
93
109
92
144
132
126
55
122
105
105
67
93
92
58
74
123
128
117
138
91
126
92
103
126
110
122
171
77
77
138
144
100
140
178
95
37
127
67
144
124
111
129
119
140
169
110
178
79
110
97
105
104
112
86
56
120
104
55
93
86
92
92
105
132
122
140
122
67
130
67
105
127
37
122
123
130
37
79
138
64
92
119
114
107
138
122
56
110
56
92
91
139
138
127
123
134
55
122
118
105
67
199
55
107
107
119
123
109
110
171
103
152
93
124
139
91
93
138
138
56
75
56
139
56
111
152
130
68
140
79
69
120
112
99
98
127
55
136
148
169
56
83
140
125
124
86
123
115
129
56
110
104
122
112
104
69
178
105
122
105
118
69
86
178
91
58
152
152
93
122
122
91
160
138
69
92
122
103
122
169
122
104
122
93
56
113
37
105
106
140
144
142
122
92
69
167
55
92
92
55
162
152
122
126
131
113
136
152
104
126
69
118
85
110
78
118
152
180
107
139
130
55
103
122
85
67
92
128
160
58
139
92
103
55
104
93
77
92
105
122
105
122
123
104
117
56
58
110
147
126
138
152
140
127
55
110
67
146
111
76
92
67
92
56
141
110
101
154
130
105
123
99
138
113
118
144
120
105
107
104
110
110
93
188
125
169
110
147
55
135
95
139
107
122
92
99
104
92
92
122
84
152
122
112
105
55
98
74
99
169
55
67
164
122
56
67
105
58
79
134
146
130
92
55
139
122
144
137
56
75
126
111
89
169
109
104
55
123
109
144
93
92
103
92
37
148
93
138
105
178
84
79
74
126
148
122
92
128
122
105
102
91
86
79
107
169
126
89
132
112
69
37
171
87
93
139
93
130
55
83
110
103
138
55
91
74
152
188
93
109
139
95
55
95
121
56
130
92
78
110
91
140
95
126
160
99
98
122
79
99
91
122
92
122
97
93
89
122
165
55
55
107
101
111
178
84
104
69
74
93
92
77
92
67
58
110
99
91
178
134
122
135
167
119
69
95
111
138
69
92
91
138
99
56
139
104
146
122
122
110
158
92
93
67
138
152
148
56
81
92
55
67
104
144
121
139
92
37
92
126
138
111
92
126
163
122
67
122
110
130
77
108
111
92
121
150
91
146
55
169
56
74
128
69
92
92
110
67
67
67
120
118
124
144
104
111
136
122
152
105
165
139
106
148
112
104
105
55
56
104
128
119
138
55
55
144
97
92
122
104
98
56
107
135
84
99
138
76
122
106
75
126
110
100
126
106
122
134
111
122
108
103
134
99
131
163
105
139
127
92
111
104
79
93
122
69
105
92
130
104
92
74
139
123
86
120
160
99
92
58
146
67
132
138
104
110
92
103
75
92
55
37
105
55
93
95
110
138
109
110
122
67
58
104
101
79
98
73
124
74
102
110
120
86
146
124
69
110
138
74
103
138
144
93
123
104
55
88
110
108
126
138
67
58
37
123
102
112
67
122
93
117
140
139
105
124
138
101
79
69
110
138
123
67
69
127
93
78
110
107
118
106
122
79
67
138
56
93
99
114
144
77
122
138
110
163
55
56
178
93
122
138
137
67
127
86
126
105
89
126
91
119
103
118
91
104
69
142
67
148
145
131
91
104
67
56
91
152
77
105
56
140
92
169
101
137
126
98
135
171
107
91
109
105
101
138
92
102
109
83
118
169
112
78
104
148
93
138
138
75
137
127
124
140
91
67
74
55
56
111
67
162
144
77
83
110
126
122
106
102
122
164
103
128
83
69
68
119
95
69
122
86
91
126
92
37
55
126
55
77
92
160
138
56
171
56
92
137
109
105
55
105
138
119
124
114
92
126
140
138
105
104
67
107
126
165
93
131
150
104
81
56
110
111
95
152
114
105
98
111
91
169
109
105
104
55
146
111
178
148
110
138
144
136
78
168
115
149
88
151
55
56
103
91
169
165
135
124
134
56
114
74
56
86
168
105
92
58
83
126
107
136
119
103
120
101
146
152
100
109
118
37
86
93
131
134
103
79
74
93
55
109
138
105
139
123
92
122
124
178
107
56
122
109
137
92
79
99
105
67
56
197
102
139
83
58
89
87
92
105
106
114
124
103
112
138
105
126
108
103
89
100
105
151
55
55
77
139
139
67
76
169
138
91
74
101
140
150
153
112
138
110
67
120
93
67
37
91
122
92
107
92
122
92
86
127
67
178
110
134
89
107
111
105
104
56
103
138
146
67
110
68
89
55
69
112
169
126
126
130
99
56
92
122
146
110
107
92
105
130
144
77
126
75
152
139
67
67
144
75
55
152
119
83
122
127
92
126
83
92
169
92
77
147
37
107
123
169
139
91
92
93
140
103
171
110
56
77
77
111
122
122
37
180
97
134
93
126
99
88
100
93
78
180
105
67
123
127
124
89
180
58
67
105
107
74
104
122
55
146
123
111
132
112
110
122
126
74
110
67
146
109
69
105
56
139
163
104
37
58
120
91
93
55
132
118
105
69
89
69
126
139
126
69
110
107
137
117
123
126
109
55
109
146
110
86
86
110
98
58
146
56
92
92
92
178
55
101
91
102
139
56
100
110
92
146
140
67
79
67
122
105
114
93
122
138
37
56
79
92
126
134
68
55
92
169
99
104
79
110
69
83
152
104
105
91
110
138
67
126
124
134
139
140
139
99
146
111
132
109
163
105
131
104
169
56
119
152
67
110
88
122
144
86
110
112
92
92
122
138
122
169
105
120
127
138
92
122
105
55
92
67
92
124
56
101
67
92
55
138
55
119
111
152
168
146
93
69
144
55
123
55
58
158
89
122
107
118
101
105
56
79
83
126
102
105
92
37
127
110
138
69
169
110
93
140
79
56
125
55
93
93
128
129
139
56
128
105
55
105
108
56
97
127
56
119
99
94
56
56
178
104
142
58
117
104
56
110
92
105
58
122
82
122
178
138
122
127
55
126
74
152
69
144
67
104
122
56
106
119
140
138
55
144
139
89
55
178
109
128
105
132
127
58
122
83
138
138
139
105
56
114
114
99
104
178
163
122
147
107
67
144
79
104
98
92
110
110
138
58
74
67
178
122
86
56
103
123
128
105
119
152
91
138
110
110
37
102
138
67
122
122
122
138
163
83
37
169
83
122
55
178
89
132
104
92
93
138
105
139
144
110
110
89
74
55
138
67
178
132
92
169
122
55
109
75
110
105
105
179
138
130
56
93
140
93
126
178
138
110
104
58
67
128
101
119
104
138
127
56
144
37
86
75
55
111
105
105
122
105
138
110
104
104
112
88
104
122
93
138
152
130
107
138
103
139
37
171
127
92
79
69
55
144
112
67
122
75
110
107
127
55
148
88
146
74
92
128
146
107
104
92
127
58
92
109
55
75
64
146
58
67
92
146
92
122
146
55
67
138
109
98
55
93
136
105
123
93
92
131
87
101
93
92
102
146
119
126
75
110
146
138
69
104
119
56
163
92
103
126
126
92
119
79
97
119
67
130
67
76
67
169
130
110
124
56
102
138
91
136
105
144
138
58
144
107
105
81
144
55
104
110
69
127
93
92
128
137
148
67
110
141
148
163
122
169
112
55
111
146
139
112
92
148
74
128
138
100
109
122
56
74
110
163
110
138
37
104
146
69
105
146
117
127
86
105
92
56
137
101
158
178
37
122
138
120
148
148
67
69
104
77
122
37
105
127
69
56
134
158
138
67
67
138
147
92
93
130
103
98
94
92
144
110
124
178
109
107
128
77
122
110
105
124
138
69
131
128
92
106
152
118
126
110
110
74
131
93
157
108
92
92
123
126
83
37
129
110
69
99
144
129
101
160
119
67
98
126
126
110
132
178
37
92
77
122
105
37
67
93
139
122
111
110
149
139
146
37
94
55
56
148
119
127
107
56
93
108
93
127
122
119
106
171
92
95
86
55
122
137
109
110
130
92
55
159
87
81
138
92
111
93
130
88
131
86
86
99
127
178
56
145
55
118
104
92
88
138
136
74
55
55
140
92
139
126
71
56
122
110
110
139
169
69
146
67
138
122
127
110
56
105
111
138
67
139
68
91
169
77
139
55
126
106
144
91
98
91
111
165
126
92
37
105
104
128
117
171
84
86
69
55
104
165
97
105
112
134
92
91
122
97
55
92
74
58
56
127
178
105
142
86
92
109
134
37
104
55
138
103
108
105
55
79
128
103
134
83
67
104
91
79
107
123
92
144
108
55
110
126
93
77
138
148
119
92
169
75
92
188
136
99
69
110
126
127
55
110
139
55
97
126
93
117
126
139
68
119
126
79
56
55
128
81
152
92
138
115
110
126
111
178
148
103
128
79
141
103
55
89
55
137
56
67
122
178
148
93
145
67
122
127
119
148
92
99
77
93
37
165
86
122
86
67
106
126
58
134
92
58
55
91
93
139
104
84
158
109
178
110
107
122
78
92
69
122
67
99
138
122
93
104
132
56
110
79
93
98
55
37
114
56
55
111
92
37
97
169
146
74
37
93
146
67
146
127
128
125
126
131
93
69
152
138
108
137
126
98
77
156
126
56
178
134
56
115
55
97
128
127
55
55
117
106
111
92
56
37
134
105
119
68
169
86
110
128
146
92
75
92
86
130
79
104
91
118
107
128
139
55
74
107
77
144
152
93
152
109
105
58
105
110
58
96
131
110
126
139
68
140
92
37
67
127
105
128
93
55
107
98
104
56
135
138
178
128
118
112
97
138
124
139
110
144
144
93
37
55
67
101
119
148
67
126
146
134
55
55
58
144
144
132
99
55
92
122
110
138
56
142
92
106
37
69
116
93
99
92
92
139
55
162
55
126
138
197
107
79
138
86
107
125
93
160
151
130
146
141
69
55
127
138
178
127
56
92
146
140
92
37
139
126
58
92
67
122
135
126
83
112
69
146
100
92
92
152
99
79
171
168
146
128
122
109
126
122
180
134
146
88
92
178
56
56
122
67
93
56
136
121
113
122
78
122
199
126
144
132
104
119
92
139
136
122
124
104
108
67
134
146
55
140
122
58
122
150
138
138
164
105
152
111
93
122
105
180
110
93
75
85
132
92
144
126
123
55
151
110
91
135
74
135
69
119
126
37
93
104
69
69
96
127
69
105
122
178
55
92
107
105
55
56
69
105
146
126
68
84
55
122
68
91
104
67
93
137
127
84
93
69
163
111
110
126
144
127
128
126
153
178
138
58
58
84
140
122
122
109
169
79
107
110
99
93
128
152
93
107
152
138
105
144
55
123
178
69
126
169
77
146
69
146
104
138
108
119
58
55
67
69
75
152
124
146
165
58
120
110
132
92
169
111
92
144
126
55
139
144
92
130
55
188
167
83
92
144
164
100
56
111
100
134
105
106
105
122
138
124
152
84
56
128
138
152
105
156
145
105
84
92
92
120
127
65
102
140
105
180
92
67
139
84
144
92
163
146
92
122
99
109
88
86
79
146
58
152
75
165
102
55
92
97
140
37
138
144
120
55
92
92
104
37
111
58
79
93
178
103
138
78
168
139
123
74
180
95
144
113
140
95
126
134
110
138
55
114
110
105
165
152
127
152
126
105
122
138
126
110
138
55
131
77
120
128
169
119
67
130
55
37
79
163
55
123
135
144
93
122
138
110
134
126
86
55
139
122
103
69
67
124
110
122
96
56
58
98
140
79
144
56
105
119
86
197
163
67
69
106
55
37
110
152
105
108
124
139
98
110
58
105
178
93
118
118
122
68
56
128
74
111
178
119
92
80
69
92
144
105
105
92
37
92
122
122
112
109
97
137
122
126
77
99
55
108
127
108
134
104
144
37
124
92
109
146
126
138
122
91
79
93
122
128
104
37
37
100
135
127
168
144
69
178
139
127
110
79
128
92
104
79
105
146
58
92
126
139
110
93
104
56
56
55
86
138
99
56
93
80
105
72
146
140
105
129
110
58
152
56
152
146
79
118
104
100
146
125
109
67
79
104
105
152
91
67
110
77
37
55
67
100
55
79
67
109
144
108
123
103
119
86
127
110
83
55
94
105
144
124
178
84
115
92
135
55
80
126
122
138
104
119
123
160
124
67
110
84
167
139
127
58
122
68
122
171
99
139
56
94
79
91
67
122
77
127
124
105
107
58
104
93
106
104
150
92
131
92
67
127
128
58
143
110
158
107
139
178
107
168
91
144
91
136
37
108
105
92
152
139
55
139
68
122
126
128
109
125
132
138
55
75
93
105
138
124
58
97
144
75
67
92
146
126
138
104
144
93
55
139
77
103
122
97
103
56
144
92
102
97
128
104
83
37
131
105
126
123
148
105
69
127
102
120
123
92
79
119
139
139
37
99
79
92
140
92
160
138
124
56
128
58
110
55
93
79
149
92
69
129
91
139
91
144
104
110
92
55
126
102
139
169
114
92
138
146
77
110
110
58
56
115
111
67
101
152
127
91
55
104
104
122
92
107
55
123
152
102
107
92
56
152
165
96
92
55
84
138
105
56
122
110
114
92
74
126
107
37
92
92
69
92
126
122
68
146
138
56
105
122
69
111
105
84
127
67
77
55
171
122
119
68
122
92
77
37
182
122
58
136
58
37
138
134
92
128
167
167
139
58
144
127
105
92
122
151
92
37
109
109
55
92
138
127
92
116
92
68
159
55
110
56
131
140
178
79
86
56
127
178
100
55
144
74
178
56
83
118
92
102
80
109
37
105
110
55
140
138
55
178
152
122
104
100
122
127
58
104
127
120
55
126
137
178
84
110
127
101
124
37
104
122
37
128
169
93
107
115
103
126
139
103
55
92
178
105
130
69
105
91
134
37
126
163
103
127
92
74
99
123
55
105
110
74
123
97
127
123
146
96
120
138
129
126
103
92
104
83
89
178
69
37
130
127
110
55
104
158
122
79
115
93
144
92
104
158
152
103
67
122
144
92
110
122
97
55
92
55
128
96
98
126
56
105
129
134
58
68
123
67
37
37
91
83
105
56
69
158
102
100
37
110
139
55
111
79
89
86
92
135
114
75
81
79
178
122
128
89
137
77
55
146
86
105
56
180
120
127
77
122
93
103
132
92
56
119
136
104
101
107
67
163
92
139
134
110
55
148
192
109
92
89
138
37
139
114
132
55
92
167
171
92
92
107
83
55
122
88
109
74
138
126
112
92
67
55
138
103
111
112
139
126
146
93
123
55
140
102
109
104
138
134
169
127
93
126
122
130
104
126
55
171
69
117
128
127
92
103
180
130
67
105
105
114
105
122
67
104
37
105
99
56
134
79
106
74
58
152
144
92
55
126
93
93
139
122
91
56
110
127
58
103
123
163
92
100
117
112
55
92
139
111
144
103
127
37
109
100
56
102
105
122
123
111
111
136
83
111
138
163
58
127
55
69
119
37
88
67
145
110
122
97
122
128
75
128
109
77
55
126
127
104
126
168
127
123
138
91
139
140
144
152
105
199
91
151
58
146
152
56
83
128
75
103
139
102
86
55
56
77
110
74
139
92
128
56
104
122
110
110
109
104
122
178
58
77
171
112
124
122
126
138
99
122
127
122
127
105
37
98
138
178
92
97
144
139
169
139
55
55
136
168
105
146
75
91
77
122
58
111
91
122
55
111
56
117
140
86
111
189
56
56
104
91
126
146
148
126
138
102
92
110
72
127
139
105
122
74
68
105
139
105
99
139
110
139
92
55
110
130
106
104
98
126
123
126
111
127
67
117
55
139
127
67
147
103
81
93
92
58
132
93
91
105
93
74
105
138
122
86
100
77
107
104
178
99
110
87
67
61
178
99
110
58
128
126
101
169
65
105
55
55
77
105
91
55
105
117
55
37
126
109
105
105
80
67
74
74
67
86
55
105
128
79
127
134
69
119
111
67
124
127
86
92
67
152
102
123
126
126
128
178
37
104
55
124
171
95
75
97
122
100
127
84
100
103
55
55
79
128
99
132
92
57
77
56
100
114
79
130
93
129
91
168
58
94
112
112
130
169
128
55
146
139
178
123
104
86
125
128
178
139
55
122
105
104
139
178
93
97
111
55
107
126
93
77
131
67
122
101
131
111
152
126
92
105
152
55
107
92
67
102
104
152
130
124
109
137
67
139
67
144
86
152
99
164
95
80
110
169
92
123
152
123
168
127
178
92
74
93
110
69
105
74
135
58
144
79
69
56
169
126
69
138
127
97
158
79
79
104
97
126
107
144
91
55
128
119
122
101
67
146
129
83
178
122
163
126
92
92
105
111
126
92
127
55
126
127
79
93
86
122
123
136
148
147
152
84
111
67
110
97
123
137
92
69
55
110
124
126
138
138
110
149
122
109
105
104
72
138
55
110
117
128
92
86
128
164
168
124
92
93
110
128
105
84
103
83
93
160
69
91
138
128
69
55
56
162
126
104
55
83
164
104
86
125
127
92
98
105
37
100
37
109
104
95
92
58
92
144
152
104
138
75
55
134
119
114
91
84
128
138
144
78
119
110
140
105
55
92
139
152
92
126
119
92
138
189
144
56
67
110
104
55
55
98
110
149
110
105
55
122
92
105
92
127
55
92
97
84
92
92
131
86
92
110
92
55
134
111
67
92
139
140
128
103
103
55
99
80
163
69
124
122
126
55
140
126
91
74
92
55
79
112
165
93
56
122
104
109
110
139
144
87
58
134
56
94
127
110
91
114
158
69
127
178
146
122
145
55
55
109
127
55
109
92
137
105
138
171
152
138
115
73
92
56
104
67
120
144
55
115
169
58
101
55
146
107
55
68
128
58
148
105
110
126
88
137
104
55
164
127
158
95
104
148
140
92
148
87
104
92
92
75
56
88
55
135
121
178
178
55
122
138
55
109
76
92
100
139
92
110
92
68
91
74
55
56
37
77
152
37
138
92
91
37
105
78
131
37
92
146
160
138
127
92
138
138
77
67
93
56
110
110
74
81
92
109
101
138
165
110
104
55
86
177
55
104
105
119
123
55
124
93
58
55
114
154
55
109
58
55
178
109
127
111
75
127
140
119
148
37
134
55
136
92
148
67
79
68
138
105
86
128
135
180
94
111
92
127
56
138
140
108
117
92
92
69
104
152
126
86
105
123
146
56
110
93
126
126
99
105
92
110
69
78
92
178
105
178
162
158
121
93
97
86
124
123
131
144
122
136
110
92
55
104
92
146
102
106
122
124
104
127
139
138
37
111
77
67
120
128
152
105
180
92
126
126
67
92
93
107
104
83
131
158
119
93
75
93
178
126
124
109
132
78
67
144
105
92
55
148
92
37
126
55
152
93
122
152
92
135
69
171
67
93
163
144
92
110
92
123
114
105
112
69
92
144
95
107
69
125
105
93
120
83
92
105
124
93
134
67
130
105
67
178
131
105
93
68
138
92
86
163
152
160
125
86
67
104
105
128
56
55
92
122
119
69
122
144
93
120
138
110
104
92
56
122
171
67
56
93
96
124
122
162
142
67
97
158
101
92
98
68
141
163
77
105
55
120
41
105
156
109
104
127
118
55
92
146
93
128
77
164
99
93
105
106
110
93
139
92
178
67
148
92
91
104
55
67
165
124
92
144
112
119
105
107
56
131
84
107
138
92
110
123
138
109
79
128
55
106
68
77
58
149
67
148
111
105
122
77
105
104
103
124
129
56
103
104
134
111
117
110
77
122
92
78
56
148
169
110
122
91
107
139
58
134
158
92
86
110
104
105
109
55
138
104
87
131
126
55
178
139
84
142
55
92
81
98
138
122
92
178
117
122
146
83
105
178
93
100
105
149
105
104
86
56
130
121
146
115
110
55
93
92
122
105
144
145
55
138
55
134
105
127
37
88
110
106
58
92
104
178
180
77
135
92
105
101
92
37
158
122
92
86
146
99
141
138
127
140
77
105
122
116
137
178
92
96
84
127
88
171
56
67
123
171
106
138
127
119
139
144
138
197
55
109
110
138
126
56
145
92
77
58
109
126
92
68
86
122
55
178
126
105
69
56
126
56
134
115
110
139
146
102
104
104
123
122
169
100
127
126
110
129
127
178
122
93
79
74
188
92
180
128
55
69
163
55
58
122
67
91
105
178
107
106
56
126
139
58
84
55
128
77
139
127
139
142
152
138
110
128
67
120
123
144
107
138
128
83
55
129
165
77
105
122
37
56
139
92
139
104
74
98
86
55
92
55
112
55
112
110
136
118
74
86
91
111
104
118
56
119
104
124
92
112
110
79
56
130
171
122
123
55
107
69
86
119
56
95
83
139
130
112
142
77
92
58
37
127
103
92
110
37
163
114
56
110
163
110
126
100
109
105
105
110
122
162
97
92
144
77
55
104
86
110
152
94
93
79
99
178
111
104
178
95
93
135
89
177
91
126
55
55
123
122
92
153
111
105
126
144
77
126
122
93
93
131
56
84
128
126
148
69
88
132
127
77
108
122
79
92
138
139
123
92
101
139
105
111
178
146
56
92
67
37
69
152
93
111
105
127
122
91
163
136
105
69
110
67
99
148
73
105
56
37
102
132
126
123
158
144
92
103
108
152
58
58
93
61
104
37
112
126
84
91
91
67
178
111
88
169
67
180
92
97
146
58
127
146
178
67
92
128
109
67
122
104
119
146
104
73
153
97
83
148
105
164
92
122
58
83
55
77
98
119
105
58
103
77
146
80
181
107
97
104
128
178
56
75
91
110
89
118
37
83
110
126
55
92
152
92
120
92
37
105
55
140
168
122
67
55
126
126
109
126
112
122
91
103
152
110
105
129
127
152
84
84
93
138
79
144
55
69
106
122
56
55
101
122
109
139
118
92
55
111
97
126
67
111
144
119
105
126
97
169
102
98
124
105
122
89
105
134
105
58
55
122
138
112
79
92
97
160
91
67
56
130
104
123
79
55
124
181
139
132
92
123
126
58
69
138
80
105
93
144
104
112
197
123
74
58
139
93
144
118
104
69
77
139
75
86
93
130
139
146
150
92
93
112
122
55
86
158
89
103
169
121
138
55
122
55
86
92
56
127
67
126
147
140
137
156
139
75
111
138
122
146
77
102
55
67
68
127
91
110
119
105
55
148
99
110
92
83
56
110
126
69
104
55
107
77
92
126
58
91
92
89
138
126
150
89
137
55
126
64
56
105
165
105
101
140
103
77
104
126
58
122
152
135
37
138
127
168
122
109
122
67
128
92
112
104
111
37
126
72
55
104
111
139
92
83
37
55
138
104
110
67
142
92
74
104
91
130
110
110
92
86
140
37
114
77
126
135
37
104
148
103
125
108
109
98
105
168
139
160
168
77
79
115
152
86
105
178
119
56
97
130
178
108
107
88
84
105
140
112
86
55
56
119
89
55
107
123
74
37
56
104
55
111
146
55
56
113
160
105
138
58
91
122
140
138
93
67
91
139
55
86
123
89
93
96
110
93
92
78
105
58
138
37
138
37
67
110
111
93
138
119
79
93
107
58
134
101
56
138
93
92
92
110
152
55
126
139
145
128
102
55
148
110
55
127
139
37
122
92
92
125
146
86
124
83
138
104
95
127
122
164
138
110
92
126
122
105
130
104
92
58
55
92
119
127
77
104
104
92
55
37
77
92
77
86
149
146
145
110
163
158
67
122
96
109
178
93
110
58
118
56
105
74
144
124
104
180
181
98
58
92
58
67
92
132
108
86
81
92
74
92
105
138
98
55
138
109
127
109
56
109
101
55
105
86
98
91
152
119
123
123
110
105
152
127
92
67
139
69
110
37
92
126
110
55
55
149
58
89
152
99
103
124
117
69
111
139
86
106
79
123
126
126
92
122
119
104
55
92
158
111
92
55
75
107
144
86
137
67
123
56
92
122
37
145
92
56
83
105
111
126
92
122
79
74
92
178
105
105
127
92
67
125
101
69
91
126
55
119
55
156
99
105
92
178
127
93
178
105
144
126
104
78
146
105
144
111
108
117
132
92
128
140
37
91
122
168
142
134
98
79
92
109
146
134
138
67
91
126
107
119
110
143
108
139
128
163
144
92
86
55
67
105
37
130
67
101
130
89
127
119
158
119
111
144
67
146
152
110
127
104
128
127
73
92
79
55
141
169
144
110
177
55
84
126
138
138
92
92
130
92
93
78
126
178
55
138
152
132
164
144
124
105
77
114
127
178
37
58
162
67
88
128
58
105
98
110
126
105
144
91
138
118
122
136
79
92
92
72
69
110
134
86
83
144
106
97
141
127
122
92
122
126
97
93
122
138
103
55
146
86
92
126
110
104
65
81
146
56
117
139
104
37
144
92
139
92
138
163
56
124
144
171
55
122
93
144
92
92
146
107
102
92
75
105
68
58
97
88
104
105
110
126
140
122
120
126
55
178
108
110
110
138
105
171
122
109
103
103
119
130
110
134
104
104
111
142
128
99
58
104
126
144
93
144
104
92
110
102
104
126
55
199
148
146
124
122
138
55
135
117
92
148
103
58
67
128
138
122
104
138
103
148
111
55
55
122
122
109
146
79
102
92
92
100
92
55
55
93
132
158
93
146
104
67
92
110
136
107
107
105
110
95
98
136
56
144
92
110
139
55
120
112
162
117
115
67
144
92
67
104
122
167
83
55
92
138
95
55
104
119
122
145
55
110
95
126
134
116
146
110
152
105
127
55
78
104
139
69
163
56
109
69
140
105
124
92
117
107
37
115
101
99
103
86
138
110
104
110
74
58
127
110
105
79
140
99
91
122
104
99
107
126
104
122
105
77
67
122
69
124
130
127
144
105
93
142
126
107
138
110
135
110
93
56
159
101
122
123
104
138
92
92
139
110
122
58
86
120
126
94
55
130
138
138
78
116
92
78
73
144
105
144
105
74
139
72
138
131
178
126
152
111
101
56
138
117
114
127
123
93
105
122
86
111
145
67
126
109
149
114
67
136
95
119
105
122
146
105
112
107
178
138
55
37
110
94
127
105
122
104
127
122
139
122
138
152
110
77
146
77
93
131
67
171
79
94
105
153
105
56
91
55
105
93
146
124
158
37
169
104
104
168
146
95
122
110
122
119
92
152
37
178
107
124
92
126
144
92
122
103
105
152
74
58
92
58
122
119
144
134
127
104
134
146
91
104
122
55
93
126
145
180
126
37
121
93
106
92
103
126
78
92
92
128
98
111
99
92
92
148
79
37
127
105
152
86
105
79
110
89
126
150
123
77
37
169
75
122
75
145
131
87
105
134
127
139
72
58
86
91
152
127
144
93
152
126
126
110
58
56
56
130
169
110
123
92
139
134
131
152
138
109
67
88
107
55
122
37
68
97
109
148
122
37
123
124
92
126
92
105
138
127
92
136
152
37
77
69
127
139
126
110
128
37
139
92
199
56
135
144
146
109
37
77
97
122
55
126
122
144
37
55
86
138
55
75
146
111
123
122
71
85
104
122
55
104
124
67
92
92
148
139
107
67
55
118
111
123
132
92
110
171
83
141
55
116
114
55
67
109
145
83
178
119
67
100
147
122
171
56
153
126
37
91
55
117
171
56
181
93
83
110
147
77
104
109
160
126
169
140
55
160
110
92
122
106
148
127
81
165
119
69
91
152
69
138
123
127
55
92
122
119
55
138
122
122
126
122
152
58
55
93
127
55
79
131
134
139
127
55
104
74
110
122
92
178
89
132
110
127
55
109
61
92
102
67
139
117
188
109
79
67
106
122
84
144
58
55
97
109
163
96
92
80
126
100
145
136
152
139
86
107
74
119
55
119
98
72
67
111
119
58
123
84
134
152
75
55
56
126
120
105
58
126
84
144
105
152
80
55
79
110
122
134
55
110
69
89
103
134
122
132
55
122
105
55
139
135
110
112
103
152
55
138
111
55
67
140
124
105
64
55
131
77
132
138
139
77
92
93
89
135
93
124
112
122
126
122
104
56
55
169
162
55
101
55
152
141
134
105
56
110
136
144
93
55
138
138
86
169
86
67
130
122
152
37
69
86
105
124
123
56
126
139
138
105
180
92
126
127
158
138
127
93
104
55
58
93
138
75
122
139
171
78
108
55
110
165
126
110
55
69
55
55
55
105
167
140
145
103
122
134
69
140
104
138
138
92
118
118
93
119
111
107
123
104
169
37
86
122
126
74
134
110
134
127
67
99
180
93
55
111
137
123
67
93
107
158
99
58
97
123
171
74
139
127
122
126
92
105
142
146
92
128
58
152
92
138
104
130
106
122
110
138
162
178
115
110
56
69
104
92
120
104
58
99
93
92
79
144
110
67
93
104
77
103
105
103
100
110
188
91
119
178
92
104
111
171
87
146
148
138
74
83
55
84
37
104
134
138
122
68
55
105
79
80
93
67
138
99
56
55
55
111
92
103
139
122
92
58
74
169
91
93
75
171
75
138
55
104
103
137
131
127
134
105
122
92
105
69
122
126
86
105
77
104
91
126
120
55
74
146
146
139
122
83
126
103
144
124
92
152
77
74
126
135
171
144
163
99
123
97
107
140
127
105
122
55
122
126
69
99
97
99
99
178
132
138
92
131
89
55
128
138
67
139
106
96
131
108
119
111
74
100
128
167
103
88
103
122
97
128
71
56
99
55
55
110
163
120
178
67
97
138
117
92
83
92
81
126
95
92
110
58
67
56
105
138
92
112
56
88
97
81
86
158
93
178
100
67
122
105
143
138
124
92
55
144
92
144
37
107
103
122
92
69
67
139
169
103
126
152
118
89
171
92
69
92
87
37
37
123
92
111
77
178
56
105
98
105
56
162
67
134
87
67
148
93
78
127
67
67
119
144
56
55
138
138
105
55
152
128
110
138
138
67
146
124
127
93
109
97
92
86
105
158
158
79
122
139
93
111
92
86
123
110
103
127
55
110
138
139
123
141
55
126
105
171
112
110
146
122
149
104
111
93
123
91
140
144
139
148
55
130
56
55
55
126
92
178
127
100
131
55
93
138
67
92
164
110
110
138
144
67
89
92
150
119
37
124
103
79
110
93
122
55
105
122
55
130
127
122
104
111
92
126
153
92
89
188
134
92
123
110
67
92
144
55
139
102
88
93
100
171
126
124
113
138
141
106
121
119
105
126
37
168
100
79
77
92
126
110
93
126
128
122
111
92
122
152
122
171
55
125
138
89
134
100
137
92
126
93
55
73
138
99
126
67
74
146
146
122
107
105
92
138
144
152
55
125
37
171
192
138
152
109
105
119
92
104
92
37
130
163
56
92
158
107
79
131
55
79
92
112
92
180
111
93
103
178
56
119
37
55
123
37
130
99
92
56
110
123
122
149
69
119
144
127
92
178
69
107
137
122
189
119
55
99
97
69
119
69
37
67
58
69
109
126
107
55
67
95
144
158
119
103
144
37
75
104
111
118
122
178
92
94
55
146
108
86
147
131
67
122
56
123
56
135
106
94
106
126
67
77
101
128
104
91
169
117
58
86
93
83
119
101
101
126
134
124
77
138
104
152
86
106
126
152
134
139
116
83
98
104
58
92
117
110
126
139
131
56
144
110
89
74
107
110
119
104
111
37
100
101
99
139
97
93
37
86
105
56
55
102
138
92
92
138
58
56
92
77
126
138
93
126
83
77
107
37
111
118
152
105
55
171
88
126
55
115
55
139
91
79
122
142
56
139
105
88
163
104
126
92
139
152
92
123
56
92
134
105
110
122
105
37
178
92
91
110
123
126
56
69
158
93
180
162
134
122
109
104
119
119
138
56
119
126
69
104
148
69
138
140
126
114
144
121
98
93
100
37
132
92
130
56
92
145
105
122
139
121
152
119
122
105
73
97
56
103
144
75
89
126
104
127
163
124
118
87
101
55
127
178
92
56
120
104
110
58
122
126
146
92
55
138
55
138
136
92
126
122
105
92
104
67
107
99
67
56
92
91
109
55
110
105
55
93
107
112
73
55
92
126
128
152
110
130
58
137
92
37
110
81
115
139
178
148
37
93
131
120
110
55
168
92
145
69
92
138
178
122
110
68
109
144
127
86
130
64
136
37
144
97
123
77
92
94
67
178
67
114
93
132
55
104
126
110
105
116
56
122
104
103
69
74
84
129
104
165
122
126
92
119
178
93
109
128
126
137
105
122
132
55
74
92
110
92
139
109
178
56
136
91
152
92
86
152
127
114
86
111
114
122
105
132
77
103
55
56
99
69
110
92
94
104
55
132
81
180
180
146
103
93
171
55
110
126
110
75
178
93
105
165
107
55
127
108
158
67
55
126
169
67
163
37
148
109
163
93
92
123
163
171
122
123
138
100
92
156
93
104
138
92
103
77
58
55
180
84
126
105
139
75
119
128
55
124
86
86
119
167
139
93
67
111
94
144
124
138
138
105
93
168
86
67
103
122
77
91
104
124
93
86
109
180
92
99
79
105
91
92
169
138
136
105
168
135
169
168
138
58
86
67
138
134
105
117
138
137
138
92
169
67
56
104
136
152
101
147
67
105
112
134
138
92
158
122
37
110
56
122
93
122
104
93
126
156
67
123
158
122
140
110
86
83
104
126
123
86
37
37
56
99
144
140
111
67
81
139
56
58
178
126
138
92
83
149
131
110
79
104
86
92
95
67
84
110
107
74
104
144
92
91
58
91
55
131
115
169
55
105
112
102
93
55
104
100
146
107
55
93
124
67
105
130
134
67
126
101
169
75
55
144
104
163
102
92
55
67
119
77
130
103
114
131
105
138
110
109
138
92
92
123
67
152
56
110
104
79
117
58
75
55
110
144
110
105
126
178
67
86
55
80
138
69
74
178
124
131
56
171
55
106
171
156
139
152
101
162
168
162
110
144
123
127
138
74
69
55
110
92
79
162
56
119
110
55
86
178
93
101
144
97
106
104
122
67
110
37
128
104
104
119
58
103
125
136
55
138
55
56
79
110
97
122
146
180
125
105
97
127
107
97
100
92
107
93
119
55
112
93
92
146
148
56
122
124
126
93
80
139
75
56
92
56
134
55
124
127
126
105
152
138
67
144
110
37
146
111
111
126
136
139
105
168
126
79
58
58
56
105
58
127
99
178
126
105
86
91
91
141
77
67
56
80
123
58
106
93
159
80
55
178
37
92
126
104
115
105
146
122
74
99
56
109
92
127
86
137
158
55
128
58
69
92
86
178
110
55
181
55
158
67
103
92
110
55
55
171
37
79
97
138
120
120
132
56
138
104
163
92
58
110
95
158
124
88
109
181
75
144
126
67
56
139
122
134
95
92
69
105
109
56
128
93
67
140
55
138
132
67
119
171
93
93
104
127
169
58
144
56
139
86
122
105
87
67
79
67
91
69
138
140
128
138
180
109
128
169
144
178
55
104
178
171
110
131
77
69
110
163
140
104
119
110
74
67
123
121
93
67
74
92
110
119
55
101
168
67
105
139
156
88
101
138
141
129
55
180
139
91
58
156
92
138
178
77
129
37
55
55
105
123
58
92
67
139
100
110
93
91
86
109
111
91
92
91
120
104
84
77
105
58
105
110
126
122
104
91
58
67
111
107
152
145
55
55
55
105
111
104
122
107
168
56
125
123
152
127
55
144
92
110
84
118
115
139
130
91
122
56
130
119
171
92
126
67
67
124
92
110
103
100
84
79
105
37
56
55
92
55
152
138
84
69
139
55
138
55
127
109
140
98
182
107
58
105
55
92
105
91
169
134
126
104
110
37
105
104
126
98
123
67
58
122
124
101
56
92
153
107
146
127
124
105
55
97
158
108
123
105
111
58
119
139
180
121
126
128
178
58
128
104
75
58
134
55
96
55
92
118
84
145
127
163
122
113
119
105
126
144
122
145
58
100
168
140
105
114
92
100
126
104
55
109
126
55
104
92
105
111
122
110
92
77
138
93
169
110
169
128
151
105
126
67
105
110
109
149
56
56
109
109
138
69
122
131
138
130
138
128
84
67
199
162
124
67
169
146
110
138
138
126
123
92
55
105
58
103
100
146
169
83
169
99
138
69
128
135
126
103
128
122
146
92
92
106
77
93
55
160
55
55
140
126
122
100
104
146
92
104
56
56
180
146
92
123
84
110
131
140
93
119
124
86
55
91
130
84
140
107
152
92
105
148
127
99
102
144
171
105
114
110
122
178
83
119
118
55
126
55
130
119
103
75
126
114
130
57
178
138
123
126
74
55
55
105
79
135
92
138
68
114
56
134
55
92
112
77
98
139
112
119
122
138
152
122
92
135
69
105
81
105
110
67
134
105
37
112
144
122
78
80
86
138
148
128
122
104
138
145
126
129
92
110
79
148
80
104
160
169
91
124
144
122
105
67
91
55
131
146
103
88
109
84
98
122
105
101
145
126
55
132
103
132
78
92
92
67
127
105
178
114
119
139
110
74
138
88
124
103
136
149
93
122
69
58
123
106
130
109
104
67
140
115
103
55
110
182
135
91
75
91
100
67
78
88
55
110
105
93
58
58
100
138
138
86
117
126
91
105
56
136
83
136
67
55
138
148
109
156
99
146
119
117
127
37
58
152
67
104
104
126
92
92
138
74
178
81
55
99
112
55
128
117
56
79
110
140
99
37
159
180
119
110
139
138
86
93
122
92
122
138
74
55
139
144
144
67
127
64
127
69
162
77
58
98
93
100
86
127
92
69
122
92
126
58
139
75
55
144
127
122
110
178
67
122
139
110
140
138
93
91
117
123
37
55
139
55
103
74
89
105
104
152
92
37
140
149
93
178
104
74
91
122
67
81
37
100
103
104
123
127
137
97
138
101
67
100
126
138
92
144
97
110
86
69
144
139
56
93
55
140
86
103
110
178
109
140
110
110
92
93
128
146
138
103
171
37
103
55
99
109
140
130
56
152
77
92
171
128
92
130
56
145
58
126
137
144
67
115
89
104
168
67
128
111
105
100
92
97
117
122
86
105
75
178
67
110
158
112
122
37
152
128
77
104
164
110
168
56
37
67
134
92
94
79
122
106
67
103
93
92
79
151
144
104
92
140
99
122
105
119
86
139
92
122
67
126
138
138
92
55
124
178
56
92
139
130
119
67
178
78
93
130
146
68
55
58
122
101
55
55
101
104
75
92
67
105
92
89
168
93
93
37
140
55
96
144
87
75
58
141
126
140
107
134
105
37
77
92
67
109
126
89
93
92
74
124
104
56
110
55
69
58
178
117
168
111
171
139
75
37
97
119
128
55
167
111
144
122
134
105
178
122
67
110
127
92
110
89
122
91
171
109
119
91
134
67
134
75
56
55
91
171
111
140
99
137
122
58
122
119
120
110
68
93
178
86
105
138
112
126
178
97
92
55
127
109
171
123
126
119
144
122
105
67
126
126
164
69
122
134
91
97
56
92
67
91
120
104
123
55
122
127
92
114
77
58
119
140
67
37
146
67
91
128
105
168
37
130
127
58
79
152
104
104
169
138
105
107
79
77
109
139
75
127
105
179
144
92
138
127
92
126
138
126
126
86
162
178
126
107
92
107
92
140
140
146
126
156
132
97
74
128
152
83
104
126
103
123
115
178
37
107
117
105
110
169
110
37
92
110
107
79
122
55
55
171
144
93
152
37
55
111
92
92
146
110
111
99
126
92
167
138
110
99
122
55
110
83
86
68
144
169
146
178
111
171
178
114
55
91
178
79
152
119
145
37
126
77
111
55
55
103
92
55
55
92
178
145
92
119
151
131
93
67
123
122
107
139
92
134
79
58
93
104
55
118
104
86
37
105
115
92
112
92
92
37
134
86
56
110
128
67
55
98
67
92
78
123
86
92
92
55
55
92
126
122
86
105
140
105
98
92
110
152
77
92
102
92
95
55
55
109
118
126
84
109
126
69
67
69
134
92
105
146
126
111
92
168
37
55
127
110
128
130
104
97
55
104
127
86
68
138
122
134
144
56
93
92
101
122
104
93
134
92
127
126
110
99
126
152
37
139
107
105
107
134
58
105
122
55
126
169
56
110
138
98
126
99
126
144
92
92
126
119
138
146
156
37
145
93
55
106
123
67
144
138
99
91
110
68
110
79
122
102
132
122
178
72
83
148
141
86
97
93
138
128
139
122
123
126
127
115
93
138
110
92
114
148
108
86
126
140
77
79
127
75
146
104
122
80
124
146
67
146
171
122
110
178
105
74
92
92
92
105
69
138
178
69
110
123
123
77
93
126
126
89
100
92
74
79
122
55
148
58
92
67
140
110
105
92
138
132
115
122
139
144
109
105
122
92
69
92
79
171
152
122
150
83
152
67
99
134
69
100
92
126
167
115
127
37
93
182
55
55
148
178
180
139
55
55
158
126
110
138
110
72
75
56
134
55
79
99
178
77
127
134
105
92
69
105
144
55
106
55
67
117
139
37
92
122
127
163
91
69
84
37
92
92
83
110
91
130
107
110
158
92
132
178
81
92
163
120
55
127
146
122
126
138
105
136
120
92
86
93
180
86
123
69
79
86
178
122
107
55
58
77
55
93
122
152
67
91
134
74
98
79
104
105
128
105
110
69
136
111
67
144
83
138
105
138
131
118
37
69
132
56
131
156
58
178
74
111
124
104
127
92
137
92
58
56
126
122
92
104
126
55
123
140
139
92
74
110
111
144
106
83
77
123
135
127
138
92
120
74
105
107
152
138
138
92
138
92
128
126
126
168
105
152
171
110
147
56
138
58
55
104
79
137
92
110
139
111
146
134
74
114
171
74
124
92
77
122
149
126
128
138
127
107
126
92
126
55
110
127
69
126
120
55
138
158
101
79
128
128
130
144
111
37
158
58
92
110
119
134
86
134
128
138
55
56
152
92
99
124
103
120
104
92
80
67
107
83
112
126
128
92
55
67
75
93
58
152
67
149
55
123
91
92
56
91
37
132
122
113
128
69
178
56
92
109
178
86
128
122
142
83
119
92
79
139
83
178
77
55
143
122
110
55
103
84
138
105
152
84
163
160
105
122
105
37
126
55
142
122
64
122
178
74
122
105
138
138
100
102
100
126
112
122
55
69
114
37
79
92
92
163
126
58
56
93
55
74
138
146
139
109
77
118
116
192
105
55
86
107
146
110
109
97
58
99
55
144
94
169
178
138
56
110
167
160
139
110
140
126
91
104
93
122
107
104
37
55
78
55
58
55
56
111
134
162
118
152
110
75
112
182
122
180
99
169
93
58
93
109
140
91
68
109
160
110
109
67
77
55
110
83
67
126
93
110
171
92
122
122
123
123
111
123
139
127
110
67
127
113
159
87
96
139
56
104
107
92
55
92
128
120
55
97
122
105
110
137
89
93
84
79
56
92
169
100
55
69
55
107
135
101
127
104
123
152
79
100
105
104
37
109
128
105
171
117
104
65
92
131
122
109
37
178
89
91
37
104
55
119
160
140
140
74
92
126
37
92
129
92
105
93
86
104
123
110
56
55
110
132
123
110
104
92
111
55
120
92
132
69
55
84
86
75
144
110
88
145
96
107
138
92
152
93
110
126
122
55
67
123
103
126
93
99
105
93
122
111
92
58
146
178
99
88
67
126
92
123
144
130
127
144
122
104
105
106
178
122
56
56
86
79
178
122
69
56
130
86
92
58
138
136
69
55
118
92
56
105
67
67
105
92
56
122
74
92
55
169
139
169
171
152
144
141
122
37
127
140
84
152
128
126
55
128
122
171
55
127
55
122
79
103
158
140
142
140
120
69
138
122
83
74
138
93
105
105
75
128
105
105
55
105
122
111
126
160
128
171
171
105
55
107
127
67
129
146
117
152
92
122
123
131
37
162
95
126
124
140
93
105
74
107
146
127
89
107
72
92
110
125
55
122
67
55
134
67
92
104
171
124
169
134
105
75
105
119
93
92
119
146
148
101
165
144
105
55
117
92
67
122
126
110
141
158
123
103
152
56
121
110
93
37
101
37
89
112
101
86
93
37
122
122
164
111
126
110
118
124
122
67
128
67
138
110
110
107
110
110
178
55
110
58
55
107
55
67
144
148
169
67
97
147
56
93
92
103
129
146
122
146
114
92
127
68
126
55
152
92
140
122
152
128
179
84
162
127
148
77
122
167
55
126
110
144
99
128
126
104
79
110
67
92
199
139
110
127
55
74
97
137
106
146
104
56
97
91
131
92
124
152
110
114
99
122
56
67
178
138
110
93
86
139
112
93
119
146
98
105
178
55
122
56
109
138
92
55
77
118
123
86
132
92
138
91
122
67
122
37
91
93
84
140
55
67
110
101
126
56
105
92
144
92
92
127
104
138
56
92
131
55
111
122
109
93
93
122
109
144
67
91
55
84
122
127
145
146
92
145
138
93
56
56
91
178
106
91
139
112
88
92
74
92
93
131
37
104
69
142
69
122
105
104
131
140
92
83
144
126
109
98
89
113
131
138
138
41
55
127
55
67
110
77
122
126
132
131
56
69
104
105
107
79
125
91
122
69
178
68
105
101
128
110
111
126
104
123
99
92
107
110
92
163
138
128
56
122
124
136
92
140
163
144
122
105
126
55
109
81
92
122
152
110
67
142
68
123
84
139
122
120
92
86
128
120
93
77
83
92
69
83
77
107
84
83
128
67
122
99
77
105
112
92
122
86
37
58
122
107
105
139
126
114
122
122
91
128
146
101
109
86
58
92
126
122
72
113
146
92
105
93
105
92
144
103
122
146
105
126
92
169
55
136
91
37
55
117
138
55
126
77
168
92
123
120
77
127
122
77
92
122
55
117
103
79
110
165
74
69
103
119
138
69
124
122
37
109
122
101
83
148
130
97
37
122
83
178
126
77
56
56
74
120
146
122
77
92
126
121
138
67
84
146
93
122
136
56
55
138
126
106
92
58
109
91
99
145
84
99
72
139
100
134
164
180
92
99
140
123
58
55
104
100
107
100
55
114
105
67
104
104
138
119
135
119
134
55
151
104
105
105
144
122
169
111
131
152
92
123
103
69
73
128
139
92
146
69
37
102
126
67
128
95
105
158
115
56
105
67
105
92
167
92
79
92
74
128
110
107
74
80
97
92
93
130
56
58
108
126
67
92
92
93
105
105
146
160
56
122
110
139
139
181
120
92
140
122
162
111
56
164
111
144
107
162
126
104
146
110
92
93
86
109
56
105
105
122
79
86
104
55
56
126
110
114
110
114
86
122
67
97
126
120
199
79
110
127
150
109
122
107
56
37
67
169
110
93
104
117
67
138
75
138
126
56
126
55
128
74
58
122
110
152
55
87
109
68
100
111
137
110
169
110
67
103
117
169
56
106
105
91
128
163
102
128
105
92
86
92
140
93
138
95
171
103
127
67
130
140
97
152
56
126
139
132
109
69
55
122
158
122
75
92
104
37
102
98
144
93
122
105
112
74
104
103
37
79
93
120
99
98
110
93
110
83
83
120
92
138
37
93
122
126
93
140
92
122
92
127
102
103
56
92
75
103
58
55
92
120
134
134
107
55
110
69
119
127
55
58
37
104
93
169
110
103
110
107
110
114
99
110
146
78
127
146
122
55
158
152
122
122
178
168
77
91
105
79
171
122
93
123
152
91
122
127
55
126
106
92
109
55
138
68
117
107
58
138
93
92
124
109
144
138
118
124
56
93
77
92
67
92
144
144
127
110
99
122
55
149
144
74
74
127
88
119
110
77
110
126
122
144
138
55
79
114
67
138
105
55
138
77
37
67
55
127
103
56
109
37
134
178
135
100
93
169
148
178
55
56
158
144
164
138
37
110
99
68
58
146
56
110
55
126
92
123
74
107
72
93
171
180
56
92
55
92
56
55
171
56
85
56
55
124
93
139
74
92
131
171
93
148
102
74
122
93
112
160
55
103
122
164
69
163
152
169
130
148
86
55
127
137
97
110
122
92
163
161
55
134
107
128
122
128
139
127
37
75
138
55
107
110
140
93
163
104
109
144
71
157
55
98
110
98
111
106
55
99
139
92
148
122
67
123
122
81
139
152
69
139
132
99
37
55
123
74
138
126
77
114
146
126
55
120
122
67
110
188
110
118
105
37
178
110
37
178
142
69
99
68
144
126
107
92
122
137
103
136
56
110
111
97
122
99
122
67
110
120
117
56
124
69
144
109
110
82
84
56
112
135
105
113
111
97
138
126
105
92
67
83
55
74
86
128
86
104
178
104
55
99
79
55
93
127
105
126
178
152
67
119
109
92
148
89
119
146
138
58
104
134
126
110
55
143
122
139
69
128
93
56
126
147
168
118
126
67
77
92
56
138
37
55
128
69
109
105
67
105
75
138
102
104
92
134
128
165
127
83
67
58
131
110
120
110
140
131
171
86
55
140
126
126
178
105
92
138
67
142
78
139
107
152
92
152
110
100
119
105
106
92
144
67
126
130
81
79
67
105
169
138
163
105
55
148
92
67
97
109
79
124
105
122
69
79
122
55
129
139
37
67
138
123
139
99
138
178
108
139
104
92
91
120
87
83
148
92
105
169
110
75
92
86
55
138
101
58
142
83
122
134
55
138
72
112
55
56
118
75
117
99
86
88
67
121
138
169
144
55
178
67
131
138
118
92
91
104
101
114
115
109
139
103
37
132
131
178
92
115
69
144
145
83
97
152
163
148
127
104
142
97
103
101
165
110
105
127
110
104
55
99
55
138
130
118
98
55
122
91
110
67
56
56
158
93
92
55
95
119
58
151
67
152
123
105
122
144
55
128
55
122
99
126
147
126
56
83
168
110
111
178
163
81
91
110
182
126
168
105
55
79
107
111
104
119
105
127
130
126
158
111
97
92
110
128
105
99
110
58
86
84
168
160
148
104
109
122
79
67
58
137
126
129
74
132
93
122
93
178
122
105
92
126
110
55
128
146
93
130
91
55
140
168
105
67
58
92
126
93
126
103
137
139
55
144
114
110
55
79
92
112
92
156
128
138
68
144
122
56
55
67
56
56
132
111
94
130
131
55
144
111
137
102
83
91
93
93
101
55
56
67
128
104
146
55
122
102
139
55
138
127
145
122
107
106
92
103
122
127
109
105
79
126
92
92
122
95
139
148
92
105
146
132
152
110
126
37
111
126
102
127
123
67
122
111
92
119
105
55
119
55
112
134
111
92
92
86
92
83
107
124
179
115
37
126
92
86
110
180
86
122
37
67
139
141
88
92
69
178
111
92
126
126
126
74
68
88
140
105
104
138
58
92
55
110
95
92
152
99
58
146
55
171
179
144
109
99
178
109
92
86
107
105
122
81
110
178
91
74
99
56
79
130
104
56
171
169
103
146
67
117
134
138
37
95
110
125
93
109
93
124
110
92
98
138
128
105
111
144
105
58
84
92
107
92
122
92
56
118
146
104
124
106
106
127
92
37
110
110
135
92
128
134
105
140
105
56
105
132
55
110
86
92
68
104
123
144
93
69
178
103
72
99
104
104
58
97
79
67
92
93
104
99
129
169
110
105
86
68
55
67
91
108
146
178
117
100
144
169
144
138
77
107
140
146
98
121
122
56
140
105
119
69
93
56
138
110
37
92
128
105
109
92
144
55
108
126
122
127
92
58
124
92
138
145
139
92
122
69
111
120
188
99
69
105
56
140
127
122
93
178
56
91
110
110
128
93
138
134
109
107
56
86
199
171
127
58
83
130
114
142
87
98
55
105
122
77
158
146
167
69
93
132
77
146
99
55
107
105
55
88
124
99
56
126
138
67
92
92
134
88
69
93
114
128
86
74
77
77
77
102
104
115
92
110
178
58
139
58
126
111
92
124
92
104
110
100
83
103
109
137
92
93
141
122
89
92
92
88
103
103
55
146
107
86
101
167
105
105
91
101
93
92
109
112
92
105
79
105
67
83
56
92
139
37
122
199
114
93
55
110
127
139
110
139
163
83
127
95
69
93
99
122
110
122
126
114
79
128
119
56
41
129
156
117
121
128
127
67
163
58
126
37
69
105
126
126
104
126
140
67
126
58
67
114
92
122
92
126
135
56
127
124
134
158
92
179
139
144
92
93
119
119
55
67
92
37
92
102
119
152
128
110
126
118
67
146
87
86
178
101
93
146
104
37
92
92
67
110
77
110
109
99
140
110
111
100
152
122
68
93
123
126
137
92
139
152
92
158
145
55
137
104
126
95
107
67
122
67
92
55
178
122
148
164
135
110
165
126
104
69
122
37
100
144
103
142
104
105
119
79
136
132
139
126
105
92
139
37
79
152
89
132
98
126
116
72
77
138
110
37
72
101
104
69
126
98
99
93
162
92
105
134
142
102
112
121
99
147
136
58
81
124
93
130
92
127
104
124
105
55
136
98
86
110
91
79
139
37
107
56
104
138
146
56
152
105
115
81
99
75
110
122
79
37
55
104
132
100
55
67
58
75
93
55
181
93
138
67
134
104
138
55
68
177
127
158
37
64
139
56
126
92
55
92
55
122
122
140
99
178
86
122
79
93
139
124
101
127
75
130
92
122
169
146
92
105
162
110
100
67
92
37
92
100
67
55
83
137
93
75
156
127
78
151
77
139
83
144
103
37
92
138
55
67
118
158
58
110
110
138
102
93
111
67
74
55
93
97
68
92
114
126
111
75
139
110
152
141
138
124
110
67
56
122
103
55
103
139
130
126
139
115
96
75
67
178
108
107
83
105
109
109
74
83
74
93
55
79
105
89
119
67
152
103
92
102
99
92
122
69
123
120
138
146
114
119
69
158
55
161
146
126
104
127
139
122
105
139
92
144
96
134
139
105
122
79
77
86
178
138
124
105
74
110
92
99
105
109
56
109
119
122
75
104
110
146
111
93
132
138
97
139
111
75
100
91
178
139
92
55
55
122
146
110
37
138
100
95
58
112
138
75
124
139
99
123
138
55
126
77
144
152
114
105
138
55
110
67
112
58
55
136
92
178
104
79
126
169
119
105
107
91
122
56
149
119
148
79
67
139
140
83
146
111
41
69
126
105
130
167
126
110
67
146
124
107
99
75
75
136
192
110
101
144
110
105
86
69
91
138
103
91
97
88
87
123
93
110
139
122
56
37
93
92
134
91
128
55
103
37
55
92
78
130
169
58
152
92
67
55
110
107
110
105
56
126
107
77
122
169
146
158
58
55
146
126
67
83
109
139
92
58
138
98
158
105
110
126
77
69
115
107
111
151
110
37
139
123
104
122
105
122
64
136
126
138
124
105
92
56
105
55
105
92
148
97
122
126
140
58
104
180
109
122
111
162
103
93
110
169
77
79
93
58
104
93
120
77
124
112
92
37
171
55
149
56
86
152
80
58
78
122
55
178
139
92
105
124
92
130
110
58
92
110
110
92
126
104
126
86
126
102
111
92
67
169
67
152
113
164
57
79
56
146
160
178
56
86
55
93
37
152
93
107
180
79
115
103
140
86
58
88
37
162
120
110
139
138
152
139
167
148
126
100
126
112
120
72
109
199
104
69
104
138
151
69
163
37
144
55
74
126
130
92
91
103
104
130
94
107
92
163
138
111
74
92
160
92
105
152
105
122
118
130
55
55
105
79
88
104
105
99
92
56
74
99
138
138
124
79
69
122
92
122
92
101
139
138
165
130
164
119
140
138
112
97
139
93
124
117
110
169
55
56
139
107
110
126
104
110
105
67
93
92
93
55
79
118
127
69
138
144
104
92
97
146
130
55
127
126
91
126
146
55
140
105
67
107
122
178
119
91
128
92
92
55
58
93
138
79
93
178
152
92
97
104
147
111
58
105
79
127
55
86
135
110
93
131
110
67
94
122
58
118
97
140
126
167
178
75
168
111
124
104
92
138
110
100
92
122
77
104
91
86
55
92
138
127
84
37
86
148
58
105
100
55
77
67
136
88
110
74
110
128
77
92
87
182
103
122
55
105
86
101
162
92
93
92
111
95
119
169
104
81
69
97
123
69
103
124
120
131
180
69
99
139
58
146
79
102
105
140
139
58
83
122
119
148
110
68
178
144
126
105
132
171
138
79
132
127
118
95
55
55
55
98
86
148
97
105
92
122
168
104
92
160
146
56
138
105
105
55
110
122
122
146
146
58
131
144
86
74
37
110
139
79
126
92
124
146
139
92
110
100
56
111
160
144
107
55
126
134
55
67
99
92
107
92
138
122
163
136
37
92
55
56
110
56
104
129
92
122
127
127
86
171
165
89
89
132
67
128
88
122
105
127
106
92
110
110
67
126
110
138
122
72
126
56
105
107
178
126
124
127
138
122
126
111
91
79
109
92
126
138
92
123
79
99
55
56
55
122
121
109
119
86
97
55
104
96
126
130
122
105
146
144
69
92
69
110
146
67
106
56
92
94
129
75
96
135
124
104
55
171
55
144
100
169
136
126
126
108
114
139
104
91
139
126
79
92
104
122
131
92
132
56
152
74
92
67
37
105
109
105
93
144
110
104
126
122
86
68
37
117
56
152
105
101
131
122
104
152
110
138
144
126
139
139
67
127
93
152
111
104
67
92
92
110
167
92
160
144
126
158
92
136
124
124
169
56
93
180
138
169
92
122
102
105
56
127
58
138
73
56
112
97
148
139
178
139
152
110
104
138
99
114
99
79
37
103
112
139
178
67
152
148
67
112
92
67
37
132
119
93
122
92
93
67
92
91
144
111
171
116
97
110
122
77
105
122
123
140
58
37
152
86
99
86
105
138
68
87
111
67
131
124
89
77
124
178
83
55
144
102
104
142
120
93
56
67
144
122
138
92
130
93
134
93
119
37
120
105
68
93
144
130
114
92
92
110
128
128
127
77
127
122
58
134
127
126
101
104
126
68
93
138
92
127
67
146
169
69
56
126
105
110
68
123
169
126
128
111
103
92
93
112
67
78
92
105
123
79
67
104
93
91
69
107
89
58
138
74
144
126
123
92
56
67
178
144
127
126
86
117
140
122
83
68
138
58
126
108
105
109
119
109
152
58
92
179
92
100
104
89
120
92
86
104
98
84
111
119
83
118
58
86
98
93
86
77
124
124
105
37
92
118
178
107
109
128
124
83
104
104
56
167
55
126
56
126
55
96
152
110
126
109
105
92
79
105
69
55
86
69
144
146
72
105
138
67
156
146
79
138
138
118
92
118
152
107
127
127
122
37
113
126
138
139
37
152
130
56
67
86
138
132
105
58
168
128
130
55
67
37
178
67
165
67
144
128
123
169
93
37
92
127
86
58
124
55
148
68
162
91
146
139
128
114
55
93
111
55
67
56
128
111
86
144
128
37
37
75
112
199
96
37
58
109
113
146
74
146
158
55
127
97
37
56
105
95
126
104
92
152
110
122
110
188
92
67
58
168
74
104
105
128
169
134
55
122
122
122
171
138
138
136
80
58
79
69
162
134
91
169
68
111
55
105
126
122
111
55
178
102
117
93
37
149
126
37
148
126
126
144
83
79
105
110
146
139
110
122
68
92
103
92
126
127
104
55
55
131
110
126
75
77
56
123
123
105
122
122
72
110
110
86
37
37
55
127
58
104
105
132
127
86
111
95
126
105
148
110
55
117
130
126
64
119
126
79
134
162
120
88
107
105
140
55
112
67
144
152
134
143
55
140
110
92
127
93
56
93
126
123
92
91
69
56
152
105
165
126
104
92
101
92
102
127
110
69
69
169
92
112
92
67
151
110
104
138
93
105
178
152
122
104
140
169
91
122
110
120
77
140
92
100
104
111
128
110
91
80
56
104
114
56
37
58
86
144
105
122
55
87
93
122
131
110
126
128
178
99
86
55
75
122
132
132
110
126
92
139
122
169
104
138
168
104
126
140
55
104
122
99
122
123
138
126
111
92
77
67
112
75
93
100
105
152
124
127
92
74
107
97
177
93
92
126
139
125
130
127
112
169
92
79
110
140
122
102
122
122
55
138
168
128
92
152
178
121
130
152
68
79
139
107
86
92
74
132
105
105
126
123
139
114
58
79
105
122
112
111
68
111
111
91
141
79
92
103
134
86
56
140
91
119
127
110
86
130
106
122
122
100
69
99
138
118
67
55
92
171
123
169
109
136
122
140
123
112
67
122
110
69
92
122
103
55
55
119
138
37
105
55
163
92
144
81
131
122
108
122
122
110
105
123
146
107
119
99
122
78
93
92
158
122
123
67
163
77
92
86
169
75
109
119
142
107
89
99
148
84
144
104
92
55
104
55
138
37
146
152
106
168
122
134
138
130
97
110
127
64
105
127
86
92
110
128
129
126
91
130
92
101
128
146
58
74
93
93
123
78
111
127
120
127
97
124
119
159
93
79
146
122
55
99
92
99
88
152
126
134
138
109
67
152
55
110
110
104
123
98
91
67
55
105
37
146
79
92
106
127
37
109
128
88
149
55
122
98
88
119
127
110
127
167
139
56
58
134
92
126
119
83
138
120
91
92
128
91
82
74
69
92
163
124
56
138
127
55
94
83
92
105
92
124
148
152
77
111
128
92
107
138
111
77
139
131
111
110
142
162
169
140
105
93
178
83
126
104
91
88
160
163
81
105
111
109
144
69
75
178
178
97
138
79
89
107
135
127
37
86
117
96
140
162
152
104
91
123
122
58
105
55
105
127
132
126
139
68
123
165
140
100
111
37
144
92
101
75
92
55
107
74
69
83
79
139
92
55
104
111
109
81
124
162
105
171
37
130
97
138
95
67
92
37
98
105
67
110
140
105
119
124
128
111
92
67
99
74
126
109
111
122
93
58
92
122
86
72
119
55
146
92
93
112
137
160
126
104
124
55
78
58
112
91
93
55
92
152
138
79
67
126
140
89
144
68
93
92
86
84
110
68
126
178
58
104
103
37
105
109
107
37
58
56
152
109
91
107
67
122
122
139
120
55
163
110
169
58
75
99
108
127
105
160
56
92
119
139
101
109
58
58
92
100
127
86
148
140
146
75
122
110
111
122
127
123
122
67
69
77
110
103
123
127
92
105
77
162
130
124
151
104
93
122
105
93
137
104
91
165
148
126
84
139
119
127
131
164
137
104
164
122
67
68
75
178
105
69
83
84
89
99
152
93
144
69
122
88
107
139
131
138
55
134
110
102
75
89
178
99
56
104
92
104
92
148
110
114
107
130
138
104
138
95
111
122
116
138
163
104
138
107
93
140
139
149
58
92
103
93
168
105
55
55
69
92
105
122
110
67
110
75
140
126
115
55
92
86
139
117
122
56
58
93
118
179
119
121
104
122
58
152
130
99
138
87
77
104
105
126
160
37
127
74
114
86
117
127
55
99
79
139
138
122
56
93
86
124
105
92
105
55
139
55
180
131
144
110
78
67
105
58
117
37
144
92
109
158
99
96
120
109
139
92
105
114
111
109
56
144
104
110
91
37
110
92
88
93
86
111
79
152
134
56
105
106
37
93
138
92
104
138
92
67
56
130
103
92
152
56
37
92
120
139
122
92
149
103
146
91
103
105
55
103
130
55
98
134
122
130
164
139
105
146
111
68
169
178
178
127
105
122
192
119
138
37
97
171
58
111
122
67
110
152
119
83
105
138
169
96
114
104
68
86
169
91
118
69
126
104
37
103
129
171
120
138
134
67
109
110
109
75
169
165
126
110
144
150
74
140
79
89
95
124
112
107
110
127
152
74
104
123
119
91
55
88
124
138
103
145
158
139
105
122
69
55
178
178
108
55
95
105
135
67
138
178
69
148
37
86
55
114
105
93
67
105
68
138
127
55
105
124
178
138
140
55
67
55
93
108
103
134
104
84
124
119
93
100
67
124
99
56
122
123
100
127
110
106
93
138
152
122
69
92
84
91
87
105
55
108
92
110
199
171
110
127
110
86
55
104
107
108
168
138
110
110
56
127
152
105
139
126
55
74
109
104
75
138
92
93
55
128
152
123
92
104
146
112
93
178
168
122
107
104
178
138
104
93
105
55
105
171
56
105
93
67
107
105
134
138
98
123
75
83
122
92
58
92
92
146
55
132
162
147
128
101
171
138
55
145
102
58
123
111
67
103
138
104
92
87
110
139
69
163
138
91
37
105
67
127
92
124
92
77
105
105
148
119
77
116
146
114
102
79
74
122
79
56
114
97
67
122
92
119
178
158
111
199
83
92
132
112
75
68
130
138
67
105
79
103
126
118
110
92
146
137
138
119
144
86
55
144
148
91
92
56
74
104
77
92
131
55
126
93
139
58
105
69
144
124
107
138
120
104
93
110
122
77
56
92
55
110
67
109
83
105
122
56
134
162
69
72
112
104
101
178
55
180
58
110
55
58
146
93
92
92
119
126
92
115
152
107
102
126
104
79
69
67
110
110
67
55
65
109
105
109
37
58
56
105
95
122
123
79
92
58
105
56
109
128
144
55
108
105
102
91
138
115
146
67
67
152
55
67
105
67
139
37
105
128
104
141
138
69
89
67
105
127
105
77
114
89
123
92
92
110
118
122
55
132
37
103
93
152
122
91
138
126
139
145
127
120
97
178
169
152
105
92
144
123
55
122
93
119
140
55
105
86
91
99
134
112
105
69
122
74
37
101
92
139
127
92
148
122
109
136
67
110
125
111
69
144
58
110
92
91
127
56
92
144
149
55
128
129
119
134
67
92
56
79
99
122
96
67
148
119
134
114
138
79
138
68
127
138
79
105
154
178
92
122
37
158
138
105
105
58
164
58
56
67
142
55
108
81
55
110
91
105
105
126
69
139
111
103
139
78
55
131
132
110
58
103
107
93
110
138
93
92
122
119
86
92
92
144
100
102
140
104
163
107
102
112
108
104
126
67
105
75
114
108
105
141
109
55
138
152
126
105
119
92
126
139
67
158
141
122
105
110
97
68
138
105
119
92
37
120
75
115
158
55
58
79
86
104
55
114
124
96
103
168
112
67
105
136
79
110
105
168
138
139
79
138
178
148
55
107
110
56
101
139
107
124
140
91
37
86
110
98
110
58
86
126
86
152
110
122
104
92
129
55
55
122
138
105
178
105
68
139
169
91
109
93
119
178
122
128
99
105
169
101
146
152
103
125
55
105
58
122
110
104
92
123
126
105
92
138
140
87
103
140
92
37
105
127
67
127
145
79
77
146
128
55
96
127
136
148
164
110
105
69
105
126
168
122
105
104
126
124
75
111
122
127
105
139
79
139
102
178
100
86
139
138
125
114
152
79
77
79
122
74
111
104
110
128
128
128
86
72
56
67
91
58
86
119
79
168
92
149
92
92
92
55
67
134
153
163
56
128
67
108
92
162
92
105
92
122
105
55
94
74
58
140
110
105
69
55
56
110
111
138
138
144
107
68
91
67
67
83
93
110
110
178
122
140
179
132
55
110
138
127
119
86
110
119
134
119
84
91
110
105
111
169
104
93
75
138
126
145
105
92
69
136
83
73
110
107
122
147
110
104
104
109
79
119
99
126
139
92
138
67
122
158
64
122
144
92
92
79
103
92
122
104
158
146
110
119
102
93
105
127
145
75
139
138
58
120
164
102
99
55
98
111
68
138
178
105
69
94
105
140
122
145
169
55
69
178
126
88
107
67
113
122
55
178
138
58
92
138
131
92
107
101
101
110
126
104
128
92
126
56
122
110
105
83
110
144
37
55
37
117
56
122
83
122
145
120
112
140
75
69
56
168
67
122
58
58
58
58
152
145
111
104
101
77
106
55
56
123
104
163
111
139
138
148
110
139
92
132
178
148
56
148
134
168
79
139
92
139
144
148
110
127
92
103
56
84
122
119
122
134
92
107
67
105
102
138
119
89
122
131
111
69
89
169
122
37
108
103
58
128
110
127
99
98
56
132
105
56
147
169
124
92
55
114
110
158
95
148
67
83
148
86
89
168
139
92
69
92
140
75
122
122
104
94
92
77
152
56
92
86
105
69
111
139
105
152
171
37
109
67
86
105
109
92
146
134
105
104
92
91
92
111
55
124
171
55
92
112
110
79
64
58
111
99
105
81
120
67
104
126
178
83
103
92
74
110
127
122
96
132
86
67
92
75
122
99
152
149
138
56
126
137
101
126
81
124
145
138
119
119
92
56
92
110
126
58
113
138
138
75
127
105
111
145
55
146
110
158
126
105
92
55
128
91
75
110
92
55
110
178
152
104
158
103
140
146
119
139
130
86
105
104
119
109
128
91
148
69
64
92
37
141
138
144
117
136
104
55
98
103
124
109
86
140
58
144
103
104
163
124
127
69
55
139
127
92
137
92
93
126
152
55
139
79
37
131
104
109
67
105
130
124
115
97
111
55
86
122
171
56
117
92
74
55
99
75
158
55
105
101
110
140
152
124
119
162
152
139
92
126
178
104
99
141
122
128
152
37
67
100
109
102
67
56
105
126
104
98
124
141
93
55
118
122
92
74
180
91
114
77
79
77
92
93
110
55
110
144
151
146
139
99
94
92
108
79
139
162
92
80
124
98
67
139
134
110
69
83
80
138
56
106
98
169
105
83
139
110
98
152
107
114
126
79
93
128
132
127
123
158
92
102
122
55
89
92
55
110
149
78
55
152
132
92
123
58
122
84
169
138
171
109
114
110
98
56
99
92
67
93
122
123
109
92
99
138
67
119
67
100
58
160
92
122
122
148
95
111
128
93
130
144
110
92
144
93
92
158
37
124
56
178
92
86
127
145
67
69
91
130
92
92
55
75
146
77
105
110
91
128
69
138
104
74
93
107
129
128
56
107
37
74
102
140
83
95
112
56
123
178
110
92
105
127
165
144
104
127
152
117
92
122
92
92
152
117
91
139
110
138
122
140
180
102
124
56
122
105
92
99
55
148
195
105
158
162
79
127
37
142
128
178
138
74
122
84
68
84
119
68
97
67
146
92
114
119
37
146
74
107
37
138
148
138
109
127
56
93
93
127
110
105
84
163
129
110
136
55
180
112
130
131
156
132
158
149
107
110
122
122
91
74
122
92
144
92
168
92
122
171
75
119
163
75
69
138
93
178
105
74
92
86
67
92
79
58
110
109
55
84
154
119
182
92
138
127
99
75
138
123
86
127
131
92
123
56
67
120
104
112
139
138
91
178
55
123
87
138
107
56
67
92
145
138
92
99
140
171
58
86
77
55
122
55
104
122
178
105
152
139
126
111
110
130
131
111
79
129
98
55
138
67
37
55
122
67
55
110
79
110
131
119
92
138
112
94
105
37
93
74
158
104
67
111
55
92
110
75
138
101
110
108
146
104
67
58
122
97
105
111
37
105
72
138
83
92
77
110
68
109
79
146
95
92
102
123
122
138
37
105
122
122
79
92
56
128
140
37
93
97
85
127
55
138
93
104
122
111
93
145
140
119
110
78
56
171
139
171
106
68
105
152
58
123
89
88
97
109
136
127
69
67
93
128
75
108
165
108
119
37
123
127
55
169
118
171
122
140
101
152
114
58
55
105
104
68
55
91
103
126
139
169
128
169
103
138
58
86
55
105
79
55
75
105
123
55
69
110
118
67
110
165
101
107
126
137
55
111
80
107
119
55
139
92
102
101
110
138
93
126
92
138
77
92
122
105
74
55
144
68
55
138
93
138
75
151
144
122
122
58
144
93
97
126
93
92
55
56
99
160
99
122
77
99
111
123
83
37
117
74
92
105
178
152
111
158
122
86
79
122
92
99
93
137
128
55
123
37
105
80
126
122
112
37
86
110
69
127
127
110
106
67
75
138
67
88
55
93
119
104
56
126
77
92
178
119
113
94
111
124
126
69
69
139
119
67
86
105
55
130
128
56
138
147
111
74
158
127
105
146
96
67
139
128
158
146
134
92
122
55
37
75
132
105
127
67
73
79
107
180
58
126
67
128
74
67
65
93
126
138
108
92
138
58
104
127
97
56
105
138
56
122
83
112
88
105
107
122
55
75
67
122
126
58
146
109
104
37
75
93
89
146
58
37
101
92
152
67
92
123
111
126
169
80
171
123
56
103
128
144
37
138
126
92
97
126
115
122
110
105
126
130
138
122
171
110
92
130
123
58
107
83
86
67
147
69
69
169
140
178
79
122
92
55
178
140
127
144
106
107
168
98
110
100
92
130
106
55
160
149
124
75
130
93
37
56
79
88
131
37
188
103
110
92
104
69
128
128
72
56
111
105
69
37
149
111
55
110
138
122
114
123
69
99
97
92
148
110
105
111
126
73
55
122
134
110
93
104
148
110
92
58
91
138
128
55
152
182
152
92
37
92
105
103
138
56
77
134
77
86
75
138
110
55
58
124
123
67
92
144
123
122
105
55
110
112
92
151
92
89
138
177
95
79
111
56
56
110
55
144
106
86
139
178
120
115
58
114
138
86
86
124
88
92
158
110
92
105
122
165
126
78
123
110
119
127
93
37
74
111
177
95
83
79
93
86
126
122
88
104
144
169
104
102
95
146
79
122
167
91
144
148
103
84
146
69
92
75
55
110
92
37
136
118
93
122
69
128
58
178
107
118
171
93
93
75
122
148
74
163
124
126
152
67
110
89
91
56
84
152
169
67
105
93
56
122
92
138
55
138
80
83
55
56
58
105
127
144
146
109
93
168
55
74
104
93
91
83
56
112
138
107
93
129
55
69
119
126
124
92
127
128
127
58
124
105
122
122
105
121
122
137
92
110
37
92
129
110
86
77
136
122
92
68
120
80
105
56
109
122
91
122
110
58
151
167
180
93
122
146
127
101
105
126
148
110
140
84
122
88
75
55
107
163
91
93
111
108
55
105
102
56
92
77
111
99
127
58
56
93
109
123
128
152
92
74
92
120
37
152
91
178
124
95
92
104
138
58
178
107
127
99
58
105
55
140
93
56
122
56
92
122
98
107
93
146
37
105
122
105
92
67
99
75
56
111
78
144
56
104
122
92
140
122
56
168
103
128
167
122
105
67
69
144
122
136
79
77
169
146
134
146
67
92
56
126
86
104
99
67
107
77
79
58
117
105
142
117
55
122
101
122
92
55
61
92
99
110
135
126
132
37
115
79
93
126
93
169
56
101
117
37
55
37
91
79
93
127
122
96
102
149
92
122
91
119
106
146
110
69
67
98
89
91
122
56
69
139
58
122
89
111
86
117
137
132
152
136
169
103
55
122
126
55
37
79
122
92
138
107
67
128
126
55
112
100
89
55
111
128
126
37
109
128
152
74
126
58
56
58
145
117
152
119
55
152
103
126
128
115
138
110
93
169
56
105
111
124
37
107
105
65
138
139
122
126
86
97
37
104
76
123
37
110
92
55
91
126
126
99
110
92
119
111
105
124
140
92
92
75
124
122
67
139
97
83
146
138
110
92
69
55
178
178
110
56
37
77
127
136
55
67
102
134
126
144
134
56
58
105
110
122
126
99
92
138
98
92
142
130
178
105
86
152
105
111
127
127
126
69
122
105
171
77
74
112
92
104
67
126
110
126
92
123
122
122
121
37
104
107
37
92
58
114
126
178
92
111
110
163
55
100
107
86
98
138
165
150
134
104
55
109
171
122
137
128
164
105
86
137
127
56
111
138
124
169
126
55
132
126
122
126
122
126
110
93
136
152
105
136
119
55
122
123
146
56
83
119
86
56
97
122
138
127
56
112
92
67
92
112
37
122
37
108
128
92
111
140
91
114
123
118
105
104
67
126
119
93
112
141
120
86
58
117
92
55
127
168
138
122
140
122
55
37
67
77
171
105
104
199
158
92
164
128
138
55
92
92
104
69
92
144
138
91
92
78
146
131
148
91
152
55
91
56
152
102
126
122
126
67
137
146
134
110
92
123
55
104
109
178
120
93
136
91
37
110
93
69
132
80
129
67
95
55
98
144
132
93
110
110
86
134
158
105
119
122
67
138
67
92
144
122
105
105
178
69
135
111
103
86
126
74
123
72
105
114
92
83
91
77
104
84
93
131
169
74
182
58
92
126
58
93
105
135
138
55
86
105
122
37
164
56
74
113
97
146
55
178
97
104
109
105
138
126
180
138
67
92
118
58
109
168
134
139
89
126
102
132
128
55
58
171
145
110
56
136
55
169
139
144
103
88
91
106
92
126
69
139
37
123
55
109
55
178
86
56
98
169
104
109
123
138
139
140
119
123
92
84
83
110
138
126
146
55
55
122
110
128
93
67
119
67
122
79
55
100
151
110
105
126
178
55
99
114
77
105
58
123
72
169
104
139
56
109
139
102
99
135
138
99
77
64
55
91
104
146
134
120
75
105
119
160
158
138
119
122
97
128
167
118
104
105
139
139
56
144
128
118
67
139
77
67
88
110
148
98
126
107
64
83
136
93
92
178
77
169
130
92
93
37
68
92
93
153
169
110
67
105
55
144
77
123
79
58
92
92
167
139
104
126
122
128
55
89
138
150
122
148
105
142
178
146
91
138
83
111
92
92
126
58
145
84
92
92
144
104
75
138
139
138
122
93
77
110
109
67
107
123
152
58
123
99
79
74
92
136
164
79
146
93
122
105
104
138
105
91
115
162
119
149
92
110
74
152
110
55
91
146
92
122
105
130
122
56
105
122
162
105
110
110
126
110
79
146
97
110
92
144
107
131
83
58
105
92
114
111
58
37
126
92
125
110
126
105
126
138
105
92
55
103
86
79
147
152
104
93
93
58
140
110
92
120
92
110
131
114
129
55
110
93
58
69
152
104
58
122
88
102
128
168
37
55
75
110
93
97
69
131
127
127
77
56
123
110
68
111
105
55
77
111
55
92
75
105
144
130
89
55
110
97
110
92
138
105
131
104
55
101
58
106
107
55
77
84
126
92
92
93
105
169
119
91
55
104
131
169
105
110
105
84
56
92
67
93
127
93
92
126
123
67
126
86
91
160
95
120
118
93
139
67
138
126
125
37
75
93
84
131
104
126
127
69
86
158
109
148
120
122
122
178
107
93
127
58
182
127
68
126
105
145
92
92
127
122
124
122
124
110
131
69
67
91
109
68
160
119
79
119
122
138
127
55
92
149
55
55
58
126
119
128
123
138
152
91
93
89
135
92
126
86
107
138
110
103
81
92
108
117
103
84
105
104
148
41
138
67
126
56
110
117
144
127
105
114
128
178
103
77
105
139
58
110
109
56
93
77
69
144
105
96
126
123
93
136
67
122
67
123
93
58
105
75
55
122
56
86
112
68
104
93
105
125
111
105
92
92
123
75
93
139
92
110
93
37
140
56
98
77
105
67
178
58
105
84
122
128
178
120
55
93
92
55
56
168
145
124
104
126
69
92
122
136
55
131
105
114
110
128
138
105
134
75
127
140
55
92
74
105
111
104
120
81
69
92
96
93
169
171
167
121
37
122
107
111
141
92
88
128
110
55
92
126
105
114
134
130
105
122
75
74
152
88
103
152
110
102
92
105
110
83
110
152
162
92
93
107
106
91
140
164
83
128
98
79
93
77
110
69
92
145
152
104
108
178
93
148
110
104
105
126
37
105
169
110
79
122
128
58
98
78
99
114
120
107
111
112
74
101
138
152
110
88
69
109
92
55
152
115
125
128
93
56
110
135
55
126
75
55
84
126
122
99
37
78
67
169
67
167
98
92
56
126
122
93
95
152
126
84
73
138
105
55
56
91
37
91
37
126
144
163
122
138
37
110
55
56
105
126
126
126
127
94
111
77
126
182
138
169
95
138
103
92
104
92
141
110
37
37
152
67
110
104
86
92
88
83
111
55
83
110
108
105
79
130
109
55
158
137
105
69
92
122
105
122
37
178
131
111
178
178
110
110
128
158
143
140
126
91
128
164
160
122
103
139
104
144
105
122
95
178
134
146
149
77
139
92
69
124
144
110
111
119
123
127
67
104
178
88
74
110
92
127
67
138
152
124
58
74
105
111
125
160
86
99
138
86
126
93
139
75
169
131
122
55
130
56
127
99
110
138
137
92
84
88
92
92
144
104
178
128
105
92
127
55
58
178
144
67
106
104
138
79
92
93
37
138
105
94
111
138
127
122
124
119
138
125
77
120
158
169
105
140
93
56
135
56
55
138
92
101
120
128
138
129
55
122
55
124
104
110
114
92
111
107
130
75
132
92
181
69
199
105
132
67
104
110
126
162
124
83
126
146
142
99
105
146
138
138
92
81
127
56
55
180
152
37
105
128
109
122
122
136
77
97
139
105
106
37
67
67
58
104
110
37
64
67
69
127
93
146
123
105
55
86
92
92
123
105
80
77
83
93
37
92
169
99
69
92
91
84
92
104
123
86
111
91
79
145
105
139
67
125
99
105
110
83
92
55
67
178
58
126
111
119
81
111
109
117
112
97
169
104
92
58
112
103
37
55
77
104
139
55
74
105
92
74
162
139
93
55
77
138
131
92
69
104
111
89
55
103
119
105
68
126
130
55
109
69
79
139
55
105
74
110
134
152
74
67
74
109
122
79
103
55
91
107
69
128
92
92
139
105
126
79
169
106
104
131
83
139
110
163
67
83
126
79
86
56
117
122
98
152
152
138
92
146
122
67
111
69
135
129
159
105
122
105
93
98
93
168
128
180
126
188
178
110
55
110
105
92
67
139
131
188
55
89
139
92
92
74
145
152
95
92
124
77
146
105
74
92
69
55
140
102
168
75
128
139
178
109
126
144
112
55
93
138
127
105
102
144
107
99
122
89
114
95
108
79
77
119
168
77
58
112
128
92
124
149
79
122
96
97
84
111
93
144
139
68
55
178
37
56
37
110
56
152
93
140
110
178
152
79
93
104
127
122
126
142
144
89
139
123
55
99
123
110
110
160
148
122
162
79
178
93
123
105
92
178
67
95
110
91
92
96
69
65
37
104
122
130
92
104
143
56
58
92
92
92
114
92
131
99
122
67
104
79
100
55
58
127
127
122
67
126
105
148
92
55
134
134
86
77
104
101
58
119
112
163
99
58
126
88
86
135
112
122
88
67
91
56
111
159
55
109
122
177
93
105
126
92
76
124
114
83
152
55
144
92
140
58
92
79
79
89
152
74
122
92
99
152
99
138
126
145
142
86
55
121
56
92
128
94
122
109
69
138
123
107
122
93
140
67
92
104
99
127
123
140
134
92
128
151
91
146
58
105
140
77
83
128
67
86
98
55
110
158
68
77
110
104
114
55
140
127
86
67
122
113
56
128
92
92
199
114
110
56
92
104
178
69
111
110
105
132
110
117
55
144
103
93
127
102
98
105
69
109
178
91
79
110
144
171
37
127
128
178
139
37
77
101
79
69
111
119
138
104
37
128
158
55
139
127
158
92
83
144
37
105
55
104
92
56
105
86
119
178
86
130
92
104
56
79
119
119
92
122
91
119
67
109
78
178
77
128
79
92
105
105
146
110
56
98
67
123
138
144
144
37
91
156
55
127
107
74
55
58
55
149
110
163
122
92
169
120
188
79
92
69
122
115
138
55
113
138
123
93
163
124
158
111
146
110
69
138
145
169
92
146
108
69
92
86
92
110
169
126
94
105
171
122
122
137
56
168
92
110
103
104
107
180
139
168
136
69
122
67
126
119
126
123
58
92
105
91
92
67
146
69
55
67
67
105
110
37
146
56
123
126
117
55
110
75
83
91
92
138
77
74
110
84
87
122
83
83
92
169
149
67
97
58
75
119
123
107
77
128
178
148
138
69
127
127
67
126
55
100
123
74
138
86
67
110
139
162
126
92
144
162
86
131
92
146
179
130
128
83
110
127
92
56
105
107
56
146
91
110
132
111
75
104
182
80
55
67
119
105
92
138
140
138
92
169
122
74
138
122
110
153
91
160
67
109
37
122
77
105
101
93
152
93
134
94
99
69
136
109
104
163
55
178
86
83
94
104
97
58
110
92
88
92
178
92
139
93
146
126
138
123
119
83
79
37
92
119
56
138
146
145
108
126
109
69
144
182
105
148
138
55
128
104
56
146
138
99
104
92
144
128
55
123
105
127
102
67
152
126
140
104
138
164
55
126
104
103
110
189
95
69
92
97
132
93
178
126
139
86
107
55
56
139
69
122
69
146
103
104
144
92
68
118
111
55
93
138
95
123
134
55
92
163
140
55
105
56
92
104
55
139
144
92
75
58
67
55
134
37
128
107
149
152
182
103
91
128
110
92
134
180
55
130
105
37
79
56
138
122
55
169
138
110
74
127
84
131
110
123
152
144
104
79
69
134
97
55
132
56
118
97
138
69
134
37
110
55
138
98
138
138
67
148
109
55
110
110
97
139
56
91
134
126
126
124
55
128
55
169
111
55
37
112
128
144
75
76
99
92
122
123
127
122
55
134
67
86
118
122
127
91
144
138
139
146
99
132
67
105
117
127
140
105
86
92
69
92
126
109
84
146
93
144
104
126
119
103
74
148
104
122
93
77
138
58
151
139
104
68
99
146
102
126
128
105
138
99
58
110
110
127
105
55
69
158
169
167
94
110
127
146
126
138
163
142
144
123
119
114
122
102
122
92
146
67
140
126
91
99
178
120
110
37
126
148
128
69
79
105
91
104
125
103
56
110
104
105
122
80
55
93
77
92
138
164
92
107
106
112
56
118
98
124
69
134
117
109
126
93
105
92
122
37
74
146
122
92
127
108
134
105
134
93
83
146
75
169
55
148
122
122
74
110
122
120
67
110
99
134
144
146
123
145
91
152
107
79
131
75
106
102
121
122
111
77
105
110
104
110
103
152
92
110
92
178
92
104
100
92
128
92
180
105
92
107
122
75
105
84
104
111
136
110
110
137
56
56
110
55
138
73
126
110
76
93
105
178
83
110
56
141
122
139
99
99
109
92
120
127
58
140
109
109
138
92
91
56
55
79
180
81
93
101
138
83
74
55
72
93
122
134
104
105
126
138
75
126
126
167
86
93
91
55
101
141
138
127
138
112
122
139
114
67
91
138
107
86
111
128
69
55
110
148
67
105
92
37
146
139
55
122
130
138
136
104
112
122
93
122
152
134
122
112
108
75
79
122
99
67
58
152
163
111
110
104
134
169
55
92
136
131
100
139
162
69
56
123
92
67
55
140
122
135
122
104
104
81
122
128
149
99
139
104
79
126
131
76
140
37
104
104
169
77
177
91
109
110
99
126
138
138
93
95
92
67
132
126
109
139
144
110
122
122
91
87
132
104
165
128
168
132
120
130
93
104
55
55
110
169
93
110
67
93
144
145
92
138
69
109
123
104
138
55
37
77
126
74
105
55
126
126
104
111
111
95
152
37
134
91
144
178
111
83
58
128
104
97
146
92
104
138
111
126
181
67
92
56
107
127
56
56
88
68
67
118
98
37
131
158
83
104
111
98
105
110
118
105
110
89
105
88
101
67
138
58
56
140
99
91
122
158
152
163
125
97
110
111
92
163
91
93
138
86
134
56
67
83
110
109
69
114
111
171
106
55
88
124
110
126
110
67
114
119
105
110
168
67
110
92
177
107
168
111
105
92
105
104
130
79
105
104
146
122
117
86
37
123
37
110
169
127
169
79
139
56
92
128
107
103
74
162
79
55
83
131
126
128
69
55
158
37
97
105
105
134
92
67
139
138
168
86
131
123
110
92
126
134
109
92
139
110
180
131
92
67
98
75
121
92
58
110
152
138
91
105
122
112
92
55
67
92
112
113
55
126
128
101
163
103
56
178
110
55
182
92
142
127
105
105
168
67
139
55
103
136
58
91
127
146
158
55
138
171
126
99
37
138
93
86
93
91
138
89
128
105
146
79
92
124
93
91
101
68
128
171
55
84
69
67
126
127
55
109
98
138
117
79
178
83
106
105
122
148
146
137
110
67
122
123
103
111
126
101
107
105
106
56
93
164
94
67
67
142
108
110
132
74
91
109
55
67
122
56
56
78
92
107
110
128
91
55
169
93
84
55
99
131
127
122
91
167
97
126
141
122
124
104
104
91
84
75
37
122
178
55
104
122
64
119
136
138
120
105
120
119
138
84
112
128
77
146
122
105
144
122
92
105
122
58
92
104
93
37
122
92
124
55
105
180
139
83
178
79
105
109
120
74
110
86
110
58
138
120
110
55
178
86
79
138
92
67
104
103
55
67
152
139
84
171
69
37
55
56
122
88
117
128
144
123
92
56
137
138
86
126
146
86
138
128
110
103
139
139
122
67
125
93
107
152
79
67
122
128
139
109
139
37
56
56
69
79
112
147
152
126
116
138
69
112
93
138
105
105
101
144
67
122
144
178
127
69
137
109
98
75
56
139
110
122
130
128
93
128
55
138
69
67
178
58
92
55
108
56
122
105
132
92
37
134
37
92
130
110
106
125
55
92
97
139
132
99
92
69
77
139
146
55
112
98
86
128
92
178
152
103
136
139
37
110
139
92
58
126
123
118
109
83
146
148
122
139
122
67
152
189
94
178
152
163
134
138
150
99
79
68
55
92
146
122
37
132
37
95
92
56
92
92
92
105
111
69
92
102
146
92
67
37
92
92
104
99
111
55
119
126
101
58
140
122
126
74
84
37
67
79
97
110
140
78
37
124
126
138
109
93
120
107
119
160
165
118
93
131
55
111
139
105
128
58
167
58
69
171
103
126
77
178
67
126
144
126
76
134
37
132
104
126
124
110
56
104
105
127
144
178
107
128
110
79
67
92
115
131
126
146
126
93
152
79
110
110
92
67
58
157
69
126
105
67
119
151
137
84
83
109
168
55
127
144
122
86
77
67
77
83
67
110
105
110
152
95
127
122
91
86
55
178
128
67
169
126
92
126
86
132
138
178
83
134
126
126
58
37
171
67
126
199
103
92
139
37
123
69
104
56
109
127
139
102
97
127
111
110
139
180
105
98
69
105
111
92
99
126
117
138
138
164
126
92
67
92
138
141
86
91
123
79
97
99
104
105
138
67
180
110
55
69
139
92
127
119
112
131
105
89
124
69
77
131
131
87
55
192
56
143
105
92
124
105
77
104
56
127
127
188
165
93
77
124
117
120
69
105
58
105
109
92
178
126
138
178
92
55
86
122
105
126
104
138
92
107
93
92
92
74
122
94
120
92
127
37
92
91
100
178
111
131
86
58
129
99
110
92
111
144
105
55
105
169
126
144
105
118
110
67
86
93
105
67
104
92
146
92
58
144
178
124
117
93
78
148
139
136
107
56
178
124
79
104
69
67
99
37
168
95
139
93
92
122
152
77
118
117
55
152
68
128
107
91
93
128
131
162
122
108
103
120
92
146
79
126
114
105
56
75
55
152
86
124
119
121
144
139
132
55
37
122
91
111
138
104
110
139
56
55
109
80
131
146
55
139
138
146
168
103
123
86
110
56
111
126
58
110
128
165
37
93
110
144
146
122
110
56
100
178
140
109
92
77
103
122
103
119
134
119
134
67
120
97
146
56
67
126
105
128
110
79
110
131
138
122
109
105
130
74
139
55
92
107
93
58
37
148
124
119
67
104
107
126
105
77
92
126
152
128
112
128
128
136
178
122
137
123
126
127
91
169
144
107
152
83
92
114
64
105
96
104
93
107
91
105
119
67
96
37
74
126
138
37
152
37
104
126
112
110
67
104
103
93
131
169
139
92
55
110
56
81
126
178
56
139
92
119
130
55
104
110
126
55
168
92
132
178
178
93
105
130
111
150
92
139
107
132
92
79
56
140
132
93
56
138
129
79
91
56
123
92
126
124
99
93
119
126
92
106
124
108
56
110
96
56
110
144
104
75
105
58
122
138
77
100
189
146
122
93
104
149
152
122
138
144
122
67
110
89
122
167
104
110
178
75
107
123
124
58
68
127
142
92
55
37
102
86
139
111
140
92
147
105
188
107
64
178
67
110
132
92
55
91
85
56
68
134
86
146
122
127
124
75
169
103
92
100
138
92
69
158
56
165
126
56
132
169
77
128
120
138
178
91
138
89
104
55
119
178
126
152
105
122
152
95
149
79
69
67
131
37
99
105
58
104
122
92
87
95
100
167
92
56
178
128
99
94
37
55
122
146
111
138
67
144
122
117
124
58
56
80
55
67
78
93
144
69
92
121
102
37
89
139
169
93
92
92
91
55
94
92
58
142
68
85
92
56
86
122
114
75
55
110
110
119
92
86
128
107
140
55
158
75
78
163
152
79
146
105
93
83
104
178
105
93
118
139
126
101
92
127
103
37
76
138
124
83
67
67
107
115
58
105
107
152
138
105
127
74
178
110
178
103
169
158
118
92
107
167
77
93
73
122
139
55
102
92
89
83
110
131
130
105
110
97
92
93
110
107
110
81
168
92
37
120
122
107
139
127
139
67
93
55
77
67
91
152
67
74
142
110
83
169
105
98
167
55
55
127
56
138
79
109
122
127
101
75
112
124
55
135
55
55
127
104
122
101
145
92
55
169
103
123
104
83
140
111
104
67
169
106
178
126
93
92
104
127
69
91
68
181
98
105
144
69
146
105
67
122
37
55
105
69
178
112
79
123
126
144
56
118
56
110
92
93
67
69
128
97
58
123
72
56
97
122
105
110
128
110
140
79
178
92
126
93
89
100
119
126
105
58
122
92
128
128
128
135
137
138
67
107
144
79
105
37
146
122
139
122
67
110
55
110
139
67
58
115
105
98
56
169
104
119
105
105
37
68
131
105
55
69
56
134
126
96
105
127
104
56
103
78
126
111
93
69
107
104
122
93
55
99
89
146
92
56
99
109
92
67
105
58
127
68
112
144
67
78
105
122
67
104
110
92
152
126
199
37
92
99
110
104
138
126
104
105
55
124
110
97
56
144
122
119
92
140
92
138
92
127
110
56
77
56
171
92
138
126
126
69
108
69
56
105
98
124
103
122
58
129
37
102
92
67
55
56
126
138
67
111
122
122
122
110
123
199
55
147
146
67
109
144
69
88
122
74
141
58
139
152
139
127
108
93
138
144
92
162
140
138
58
80
139
92
37
119
122
92
126
98
105
148
120
80
140
67
138
77
77
107
168
67
134
126
67
92
122
139
139
112
146
77
117
114
110
152
120
99
122
134
86
119
158
112
130
107
168
93
126
97
104
134
77
92
110
152
110
104
136
110
120
160
141
109
137
148
122
119
138
146
67
81
74
127
124
180
89
125
37
81
111
67
136
123
135
105
79
68
110
55
75
67
100
129
67
99
96
93
92
110
99
97
145
87
152
119
144
105
37
104
148
122
146
37
101
37
69
55
69
122
122
69
93
78
124
144
67
165
75
86
104
93
110
138
129
111
91
97
131
74
110
37
37
79
127
37
55
103
74
178
69
58
146
92
131
92
138
91
117
122
68
130
93
103
56
55
37
77
110
107
128
178
56
67
37
94
79
138
106
126
104
138
116
126
97
103
65
104
110
68
132
144
105
169
122
74
105
122
91
131
92
111
58
122
37
138
122
139
37
98
110
132
146
106
104
98
123
111
152
130
117
37
109
148
74
84
102
77
55
104
140
144
89
93
139
110
126
77
104
123
93
124
139
126
134
92
92
92
151
74
134
92
122
117
119
105
92
104
130
92
89
64
88
139
105
178
110
158
109
75
105
92
91
178
55
98
118
199
55
105
134
178
122
92
130
93
165
126
146
126
109
139
103
107
37
106
55
158
110
74
102
104
108
93
91
94
100
169
110
152
114
110
91
122
55
114
139
98
92
56
120
91
92
67
92
86
72
109
55
139
55
37
131
195
144
146
99
139
123
128
122
99
149
109
110
88
123
122
126
171
84
127
162
139
104
110
55
77
91
55
97
92
189
144
101
140
146
79
93
108
117
126
124
80
126
121
124
138
146
67
103
139
103
126
146
55
58
122
92
136
138
86
92
92
75
112
111
178
178
92
122
138
93
110
122
103
93
139
138
131
67
146
67
126
122
104
104
131
119
67
91
92
93
110
140
99
92
104
121
130
109
132
123
104
122
69
92
67
138
122
111
126
91
56
110
97
55
103
139
162
110
124
152
122
108
100
55
128
92
74
92
92
158
124
122
122
67
103
105
75
128
169
130
81
103
74
79
139
139
80
93
92
126
91
56
169
81
146
132
105
140
92
134
67
68
139
138
148
128
126
119
37
119
95
56
92
92
91
132
99
105
69
105
92
81
122
93
93
178
105
110
140
139
96
79
92
90
199
168
145
163
114
126
58
111
120
117
75
37
169
98
139
122
148
165
104
128
75
144
122
105
55
79
123
140
67
99
169
134
58
126
67
119
144
83
105
105
56
122
111
107
122
55
132
131
55
55
99
146
109
167
108
120
92
134
67
37
117
105
93
138
105
55
110
119
98
110
123
178
142
103
122
97
122
91
92
164
68
146
89
67
56
127
119
67
93
105
152
139
56
79
112
131
130
109
144
67
164
144
74
86
86
93
78
144
163
119
131
110
114
122
117
111
122
56
145
92
67
123
105
92
117
105
110
110
163
111
104
92
128
58
127
105
142
86
56
104
55
171
92
91
138
110
55
67
143
92
119
104
128
130
37
92
120
144
92
152
92
127
144
99
84
88
128
180
67
110
55
178
126
140
138
74
107
121
55
181
131
101
122
92
126
152
138
92
139
93
178
138
92
127
86
126
126
111
92
105
140
75
93
92
122
126
128
56
68
124
110
140
55
56
69
147
104
165
67
117
110
104
102
92
105
178
123
92
58
178
67
86
79
147
69
115
138
138
141
139
92
105
126
156
119
80
110
116
120
83
104
144
146
132
138
74
37
86
37
143
93
79
56
107
126
55
91
55
93
139
103
138
91
120
79
111
91
111
72
74
131
84
92
126
92
92
138
74
67
67
144
122
69
104
180
56
110
58
100
122
67
117
56
171
130
103
111
56
127
106
77
151
146
169
37
126
77
67
110
105
156
86
80
81
110
67
93
162
67
56
139
146
110
55
134
88
128
128
139
106
93
178
104
107
108
128
67
126
126
152
144
130
122
105
112
67
93
104
163
118
123
169
119
122
80
111
75
140
67
86
103
57
128
55
107
124
98
98
139
55
138
79
93
92
122
158
138
139
122
55
163
79
122
56
105
105
126
104
37
92
56
37
148
152
56
169
37
104
110
110
180
162
110
136
113
125
110
122
137
105
146
124
75
126
169
107
67
110
111
140
111
37
75
69
123
178
110
67
122
104
138
144
102
92
114
189
131
122
69
37
110
120
140
141
122
124
93
138
130
37
122
56
122
123
56
77
92
112
126
138
86
67
126
164
92
163
144
171
144
169
92
144
105
75
127
87
122
104
122
138
108
69
132
92
127
110
100
108
138
100
89
106
152
144
104
144
139
140
122
88
56
110
92
83
86
107
104
127
69
79
105
118
89
110
180
120
67
159
97
111
110
107
126
105
124
77
152
123
75
89
86
138
55
92
56
124
109
56
138
93
67
127
104
79
138
99
127
165
92
75
181
99
135
58
152
93
126
144
92
139
128
122
135
122
67
37
127
106
109
55
122
92
55
106
137
55
144
91
122
139
152
145
122
67
88
144
178
168
93
67
105
92
93
99
75
110
120
122
146
77
103
108
37
96
55
139
102
103
169
92
92
124
110
111
79
55
122
93
104
110
37
74
86
146
145
139
144
178
124
122
146
138
139
122
124
104
128
68
92
37
92
114
83
148
37
79
122
126
108
123
99
99
93
111
122
178
37
67
58
84
58
97
130
91
138
134
139
144
123
83
58
93
91
74
55
119
55
67
58
110
152
91
110
103
105
138
67
134
99
147
146
138
67
92
92
112
101
152
56
171
152
138
146
136
86
119
131
110
105
77
111
110
55
128
74
122
92
134
141
120
103
126
55
91
122
123
99
86
142
67
107
104
110
152
126
124
103
146
98
110
113
58
123
146
138
151
74
92
118
58
159
117
55
111
93
138
37
134
55
105
77
109
74
107
169
77
101
180
138
55
68
139
77
160
122
103
111
134
93
102
74
57
148
102
130
67
101
132
119
141
58
104
93
104
146
77
152
83
145
105
114
107
127
111
152
137
114
146
126
95
122
75
136
67
122
148
144
55
55
102
169
111
103
152
92
178
109
164
127
129
69
56
79
119
163
92
122
56
178
119
111
92
93
67
55
69
141
129
128
109
122
91
118
109
110
160
83
92
123
114
69
107
148
105
104
67
92
104
67
146
199
55
122
128
131
56
83
127
92
122
96
79
105
152
56
171
67
105
158
138
182
58
110
58
67
132
98
139
55
122
121
104
96
79
126
67
99
104
158
93
136
91
37
124
114
55
111
147
55
104
138
128
88
83
152
92
110
136
103
67
98
152
92
92
79
37
92
55
69
55
165
103
122
110
99
140
111
128
55
140
68
136
132
138
110
138
104
69
165
146
55
99
152
92
122
122
104
92
69
144
126
37
178
124
86
134
92
92
132
55
124
92
117
86
55
55
122
110
58
124
127
105
126
105
107
135
110
37
142
126
92
107
167
98
103
92
79
86
110
139
104
105
86
123
162
136
105
106
169
146
37
74
127
139
100
118
128
104
93
94
169
146
55
134
69
55
139
110
84
92
134
100
37
91
91
160
104
115
152
156
163
105
128
69
144
58
91
152
132
56
105
92
137
168
80
148
75
77
127
160
104
107
168
139
112
136
98
114
169
146
120
69
83
67
168
122
118
110
110
56
69
104
109
99
92
127
67
168
122
171
158
122
107
105
124
68
104
92
105
98
89
131
169
83
67
79
105
138
67
55
98
99
56
105
107
110
107
74
135
56
93
92
144
92
92
92
107
147
74
144
144
117
126
58
162
132
86
92
110
138
109
92
93
92
67
109
138
122
111
110
65
109
178
68
92
56
106
56
93
140
131
92
37
138
85
110
74
75
107
92
92
93
144
138
86
69
137
84
189
37
139
77
169
118
91
113
79
122
110
92
77
121
104
138
55
150
117
138
104
109
89
146
137
102
107
104
56
92
79
126
138
131
69
110
127
142
93
123
128
161
105
178
144
126
140
139
118
152
55
111
110
97
55
122
152
122
110
126
75
93
58
126
127
93
145
123
134
77
103
126
134
92
105
37
107
139
146
139
103
84
124
55
152
91
92
126
178
37
138
138
111
67
122
83
67
110
98
152
87
119
126
104
163
158
93
100
78
127
55
118
92
110
146
83
86
110
55
93
125
111
129
99
56
93
127
55
144
92
138
110
67
127
92
139
148
108
92
107
135
126
99
178
139
55
132
115
55
151
127
55
163
122
138
104
146
86
55
178
91
105
140
105
100
178
105
148
105
105
122
97
127
123
74
126
178
117
56
56
152
108
55
92
162
107
69
99
69
178
56
123
55
139
119
122
145
126
69
91
132
92
126
111
109
95
77
138
122
163
55
135
123
92
86
92
109
152
101
92
127
139
89
55
86
177
150
163
56
130
55
104
67
58
122
140
130
92
106
92
126
163
92
74
86
104
58
37
123
104
178
111
110
76
55
126
165
169
129
128
139
178
79
79
55
124
77
164
132
69
138
104
110
107
138
55
122
102
79
93
37
58
56
93
103
86
103
93
127
100
104
58
92
93
134
105
98
160
110
89
105
106
68
109
69
56
86
84
123
74
93
55
122
75
119
126
129
68
141
113
169
156
139
110
126
104
107
138
56
93
86
134
58
107
61
142
91
105
67
138
67
37
80
104
86
92
146
67
110
104
103
178
107
123
123
86
126
111
92
123
122
110
37
134
55
105
121
128
138
56
163
134
105
122
168
148
146
128
178
97
130
91
148
138
83
106
152
92
105
92
93
68
168
146
92
104
145
126
144
69
55
123
129
109
122
138
56
55
178
92
131
178
58
105
92
55
92
56
67
104
124
37
55
128
105
128
136
55
55
79
146
151
74
126
69
99
68
75
55
58
86
180
140
129
86
89
92
37
105
119
100
105
56
119
55
106
92
110
122
69
152
67
92
110
106
67
120
69
126
110
104
110
134
77
122
108
37
110
165
83
138
126
98
37
104
122
91
105
122
139
104
74
103
122
141
128
92
92
106
93
144
158
74
109
89
103
58
132
148
69
37
83
97
138
92
93
109
98
118
140
101
92
107
129
55
99
119
144
124
126
109
134
86
126
74
92
105
93
92
86
98
69
140
178
92
122
56
122
122
138
110
138
93
56
84
92
126
134
93
91
68
144
138
127
105
80
67
69
55
91
165
110
122
55
92
86
178
58
55
102
168
91
75
86
171
77
107
75
152
147
56
83
138
98
119
37
139
86
86
138
144
123
107
152
98
58
55
89
69
179
105
92
119
92
92
37
99
86
131
97
111
99
99
84
122
122
165
98
124
144
110
144
55
127
55
89
156
180
91
121
134
55
131
146
101
127
104
158
128
108
67
164
92
122
128
67
67
131
67
130
123
55
93
77
112
93
56
103
74
77
131
96
115
112
105
165
103
106
105
110
67
91
56
138
152
56
102
55
147
110
127
58
122
126
119
178
152
140
56
92
56
109
126
178
55
67
119
126
111
37
136
110
178
163
67
92
104
144
95
120
37
92
110
105
119
37
144
56
92
180
91
101
109
37
127
140
107
103
58
122
165
98
111
93
128
89
83
83
103
132
134
67
55
95
104
108
160
84
67
160
152
104
140
128
106
149
56
83
107
93
152
141
98
114
91
110
138
138
109
107
75
93
130
105
93
114
109
87
144
124
152
79
138
102
58
122
92
149
126
55
95
93
92
197
123
107
139
122
104
148
105
138
93
58
67
98
77
128
111
105
126
67
37
77
106
69
179
92
127
84
77
122
169
58
58
93
92
123
131
92
158
104
148
104
111
106
58
112
112
114
92
92
92
120
144
67
152
126
37
126
138
144
56
55
37
56
152
148
128
79
103
55
55
67
92
164
92
74
67
138
55
111
87
93
127
171
55
74
111
58
122
134
127
115
92
92
126
107
107
171
55
111
37
135
138
121
111
58
77
37
127
178
127
92
139
132
122
138
67
56
120
112
58
95
122
67
56
103
138
67
107
97
178
55
67
93
112
58
139
104
92
123
105
83
79
165
148
57
94
136
56
79
189
138
37
136
95
105
98
67
75
92
138
144
101
114
83
127
92
127
58
110
138
99
104
110
110
67
37
136
56
93
109
69
122
122
122
117
91
131
105
152
55
56
92
87
109
124
146
111
178
110
69
169
58
117
56
55
92
69
127
135
86
138
92
97
100
137
139
123
37
126
104
92
91
119
168
106
86
139
92
55
124
146
122
158
108
61
122
92
91
93
127
137
146
99
138
139
95
74
92
114
126
140
168
128
178
137
134
83
93
162
122
120
114
119
119
103
104
107
105
37
154
108
110
110
75
110
139
158
58
105
134
117
108
67
55
105
92
141
163
107
56
55
92
95
127
110
132
105
104
122
69
110
127
105
55
56
77
77
92
92
177
105
144
148
89
105
84
127
163
104
126
86
126
58
110
86
98
91
75
158
92
135
91
104
150
149
123
92
111
105
152
79
110
105
92
67
56
142
144
105
135
86
138
55
68
126
126
126
126
123
122
103
110
67
109
128
55
110
139
110
124
144
67
92
138
138
119
122
149
77
122
55
91
107
122
55
93
55
178
123
105
111
122
146
123
37
128
106
138
55
163
84
86
92
99
109
110
110
77
69
55
110
108
105
110
139
119
77
122
75
92
146
152
124
93
128
92
139
92
55
114
98
98
131
131
86
75
86
134
92
122
109
56
139
86
109
104
103
140
58
126
94
127
124
86
126
111
92
95
110
130
164
149
127
81
111
55
138
122
127
86
146
55
99
169
91
122
55
128
139
98
180
163
126
119
55
117
128
37
109
148
134
86
109
69
92
92
67
105
127
93
37
92
93
99
92
93
127
138
91
123
93
122
92
107
140
138
77
93
92
68
130
122
110
92
105
126
130
140
138
67
69
91
146
69
117
148
92
56
119
37
81
104
138
127
134
122
56
123
127
92
130
77
126
139
139
74
109
74
158
68
86
86
114
119
55
83
58
138
104
139
144
178
140
103
146
110
119
55
121
129
105
139
144
83
131
178
104
74
37
56
37
37
138
124
92
91
126
92
126
128
86
148
130
168
123
109
120
55
93
93
100
107
58
92
137
105
105
67
139
109
72
102
69
37
103
146
93
107
67
119
69
144
55
69
110
117
138
122
167
55
109
75
110
164
122
119
55
138
114
158
55
169
130
138
37
152
92
106
67
136
105
67
118
107
92
37
138
139
97
138
138
127
55
138
138
128
122
92
130
120
105
107
126
89
138
107
55
86
92
122
148
139
138
92
178
107
77
99
101
124
162
139
110
132
93
158
92
152
104
79
128
104
138
122
93
126
178
138
97
119
163
104
110
55
104
55
140
92
122
152
127
138
148
110
92
99
192
126
76
127
56
91
110
123
93
122
93
69
98
79
92
67
56
122
104
126
67
124
56
105
104
109
55
56
114
74
58
146
67
152
99
56
69
146
37
91
55
115
119
86
93
105
75
115
152
67
92
56
138
127
138
138
138
67
92
126
139
127
87
105
105
127
58
127
91
55
86
124
37
144
122
92
75
55
104
122
110
122
55
93
92
69
92
114
144
114
152
105
139
127
119
139
77
130
139
148
55
67
148
93
164
104
106
84
156
92
169
138
94
132
55
115
92
92
138
105
169
110
93
137
89
101
92
67
169
149
75
105
104
83
164
162
92
56
127
148
112
92
68
100
92
127
126
58
136
120
92
148
58
138
105
55
37
138
56
100
107
92
110
99
119
37
139
111
58
146
121
152
135
101
144
104
55
120
144
119
92
178
92
74
56
134
126
55
67
99
110
168
55
139
178
152
178
86
136
138
114
140
58
134
144
158
160
92
119
128
104
178
105
83
93
171
128
127
88
92
110
140
55
110
136
92
105
105
74
110
84
148
91
126
138
158
163
101
105
123
105
96
146
139
102
99
64
69
99
167
105
169
139
120
105
93
110
109
88
126
86
119
130
154
55
104
97
68
86
97
125
122
107
126
115
138
76
152
117
146
117
110
136
93
139
138
69
56
146
92
125
37
55
67
55
122
110
56
117
122
104
93
92
131
104
112
144
79
138
148
126
67
138
131
123
98
122
169
86
113
83
97
92
55
93
84
99
124
136
92
199
127
81
79
58
85
130
56
164
88
109
127
122
106
130
69
110
91
138
99
92
83
127
67
77
122
123
122
92
122
158
140
119
169
104
68
92
91
148
110
126
58
113
67
80
68
123
142
55
77
123
100
126
104
109
104
109
169
119
144
105
92
105
122
152
79
119
92
55
93
126
93
169
37
122
95
111
130
102
98
126
110
77
127
126
55
118
37
137
146
164
139
139
58
110
37
67
146
58
67
67
98
144
138
107
152
178
144
67
93
126
79
103
110
92
99
171
158
99
139
137
105
58
152
103
93
91
67
97
127
67
131
104
117
67
93
37
126
67
110
140
95
120
146
178
140
68
88
99
112
117
114
158
126
110
97
162
58
122
79
55
144
75
111
110
95
93
144
103
102
122
69
55
144
117
139
148
56
122
132
56
130
119
124
119
104
104
89
145
152
97
145
131
93
113
139
105
100
67
101
105
92
110
86
126
95
111
103
102
111
55
168
139
104
92
110
152
73
37
120
86
122
92
111
92
111
126
69
182
129
98
138
104
163
56
169
112
102
92
122
144
122
89
128
168
104
110
69
56
75
102
93
104
96
139
128
58
134
97
123
75
95
167
83
139
169
92
139
106
163
101
56
139
75
106
148
122
127
110
144
110
37
86
138
128
122
144
92
80
134
123
105
84
56
55
142
105
148
169
105
77
68
103
152
122
110
129
55
55
67
37
110
122
55
110
58
126
144
136
104
169
119
122
81
92
55
37
144
69
114
105
109
104
95
83
79
55
105
92
122
122
58
129
92
55
110
142
55
92
104
67
104
139
119
74
144
92
171
138
148
74
125
58
169
93
92
119
92
83
77
136
152
122
55
126
126
58
55
100
104
93
83
67
61
110
67
55
139
169
180
180
105
83
110
104
128
104
97
139
120
92
110
104
119
93
103
169
169
58
110
105
107
110
127
69
79
140
55
55
58
147
55
91
103
163
92
56
86
144
92
88
122
74
92
171
103
124
69
138
123
92
126
140
158
94
139
86
74
55
111
126
126
119
56
93
122
169
122
138
146
105
80
144
55
99
130
69
152
92
79
105
178
74
55
119
156
138
188
126
55
106
180
178
124
126
56
92
67
104
99
122
99
55
146
88
124
110
93
126
91
109
138
122
144
111
69
55
77
119
158
136
131
58
127
148
124
167
97
171
163
87
92
151
92
78
112
139
122
136
127
92
92
127
123
126
132
138
91
109
123
100
104
138
152
127
136
143
86
118
146
81
110
128
169
119
55
55
109
131
92
150
178
148
127
69
122
132
104
79
114
67
127
105
128
123
104
122
55
139
168
127
111
119
83
58
138
92
93
56
92
55
56
56
55
144
126
114
178
80
92
188
93
122
144
110
107
97
77
146
195
115
55
127
74
86
105
89
79
169
126
132
55
160
127
119
104
123
126
110
169
111
158
128
56
74
92
58
139
84
126
93
89
154
93
55
99
178
37
132
119
105
125
145
55
171
56
139
138
152
104
123
117
92
55
83
110
88
112
152
146
92
130
105
195
80
77
178
58
146
92
140
84
178
138
122
78
93
118
103
84
126
151
126
67
138
93
55
58
83
119
144
56
91
112
139
105
104
105
117
104
119
104
152
55
104
126
103
148
98
123
88
122
127
111
67
134
140
128
122
106
135
56
138
126
122
127
138
92
109
104
105
69
122
111
105
109
109
178
146
67
129
76
92
92
105
102
109
92
67
37
119
55
58
103
178
56
128
92
107
109
160
124
110
67
103
178
37
105
139
122
104
92
144
110
130
37
110
188
74
98
126
77
107
178
92
97
56
127
139
128
122
84
129
88
138
171
114
55
124
146
111
91
178
126
169
86
118
122
138
92
67
121
111
81
127
91
124
74
171
122
88
148
104
37
55
55
145
138
138
74
58
37
104
122
122
58
122
139
37
104
105
113
91
105
122
55
140
107
178
163
97
78
92
55
119
99
109
129
92
69
146
128
152
126
58
167
98
67
105
126
118
67
126
122
55
110
91
163
144
86
120
123
125
92
126
126
99
147
128
126
119
140
122
122
139
92
104
158
178
124
105
110
107
110
92
86
138
110
92
144
93
178
138
56
140
37
105
129
92
67
69
128
122
127
93
136
92
169
110
74
67
107
74
77
145
138
144
92
56
111
55
126
92
67
126
104
111
123
131
146
79
37
139
114
105
125
92
56
123
110
131
67
122
119
56
105
163
103
151
55
74
105
92
67
104
108
99
168
138
110
164
98
91
55
148
118
103
37
89
132
126
56
103
99
105
95
108
109
124
84
147
109
136
142
129
123
138
99
111
120
92
130
93
138
158
138
119
105
105
55
130
56
178
97
122
158
144
92
146
125
75
110
126
105
104
92
93
138
37
92
69
117
162
56
58
127
77
67
94
78
55
124
92
67
93
69
97
84
122
123
113
69
74
121
92
122
120
122
111
83
92
110
102
127
122
93
80
97
86
37
92
140
130
110
92
152
160
75
137
105
144
55
126
138
110
132
95
101
108
58
86
58
124
100
105
67
171
109
118
146
122
140
109
92
123
55
134
67
144
86
92
69
120
79
139
101
69
148
56
72
144
55
75
104
146
163
128
97
169
67
87
74
132
122
144
56
107
139
122
104
138
142
55
134
177
138
92
92
126
69
122
92
148
92
67
181
152
130
100
55
55
76
79
55
178
180
68
77
55
106
119
55
135
92
126
142
120
79
55
56
138
129
169
37
97
69
111
56
148
56
68
67
92
37
104
57
124
121
91
92
98
144
105
99
119
126
110
104
110
163
58
129
103
128
58
99
104
67
146
139
94
122
108
67
103
139
110
160
146
92
129
93
109
103
110
58
91
138
110
105
162
138
109
139
122
92
110
122
140
55
144
152
169
93
108
80
119
128
83
93
138
144
69
110
56
69
91
169
55
169
56
58
77
64
37
98
79
67
122
117
123
79
64
126
134
110
130
105
92
104
92
123
140
149
79
138
136
69
58
110
104
139
81
122
58
55
124
127
111
105
86
86
178
158
56
126
58
114
158
111
119
119
75
105
139
86
92
132
109
102
119
127
137
119
130
58
75
103
148
144
56
146
93
126
128
127
150
110
93
101
93
86
74
37
124
92
126
91
123
104
144
106
74
123
107
110
92
92
37
163
81
110
180
56
109
92
119
138
149
109
156
74
69
139
148
122
130
104
92
83
119
110
105
144
178
37
138
117
69
128
58
152
105
74
127
110
146
91
56
55
67
92
197
84
110
112
92
55
99
94
37
163
124
101
146
146
160
110
134
98
86
86
84
112
110
69
136
67
139
58
107
84
55
93
75
163
71
144
69
152
146
91
104
68
135
88
92
93
93
111
111
96
110
122
110
74
106
56
58
104
107
171
93
55
169
126
92
162
93
105
86
152
105
110
144
93
103
144
139
104
140
117
58
96
127
121
55
79
127
131
98
83
108
99
126
139
122
56
131
55
122
132
67
119
86
126
55
75
122
119
92
134
127
126
139
92
93
105
138
105
107
151
127
139
37
80
168
93
145
93
67
122
92
110
93
178
86
152
118
99
111
67
67
122
109
152
146
111
158
92
134
97
83
110
127
55
169
69
68
99
114
67
101
178
55
110
127
93
122
55
55
86
111
97
109
69
108
111
37
37
138
138
168
68
144
68
138
126
168
102
56
110
105
92
126
37
138
145
134
127
140
55
178
140
75
69
110
178
127
56
69
132
182
91
69
106
122
64
126
37
102
104
67
146
92
105
104
131
112
77
67
127
55
104
56
37
108
55
109
110
91
105
152
67
146
142
91
58
171
158
119
102
86
58
56
126
37
124
126
134
77
103
83
105
126
93
134
165
127
104
92
139
109
69
92
139
119
55
110
104
144
122
110
104
122
178
91
74
58
105
78
93
92
103
128
103
114
146
55
146
160
97
92
132
83
93
152
93
127
107
58
93
127
120
109
92
92
127
56
128
122
126
146
55
146
109
114
144
74
122
56
146
56
55
55
135
114
152
56
75
86
138
37
109
55
58
122
149
142
126
127
37
103
127
58
145
140
110
138
140
144
130
55
79
105
178
119
92
104
107
92
120
178
126
109
120
92
104
55
160
178
127
92
55
68
135
99
130
126
77
119
169
122
116
169
67
77
105
109
106
111
107
140
111
112
123
55
98
92
111
69
138
92
122
144
139
158
126
122
55
89
120
110
126
160
69
122
93
109
123
132
126
122
126
110
98
123
92
144
137
105
119
139
122
67
83
56
99
69
86
58
86
122
93
55
138
67
126
124
79
152
105
93
124
77
92
93
75
67
122
138
67
136
169
122
92
69
69
80
58
146
93
122
123
138
104
121
129
69
68
101
119
130
95
89
109
134
83
127
88
79
93
92
103
78
86
139
104
112
162
128
126
84
139
91
37
134
144
108
132
138
127
93
69
55
91
85
108
110
100
123
110
147
126
92
67
92
152
128
92
117
83
149
74
92
77
138
92
67
58
105
103
83
178
92
110
75
126
128
67
138
148
122
123
55
110
110
151
110
146
56
178
139
37
128
99
138
37
119
127
119
110
77
105
178
92
55
110
131
75
110
55
126
131
92
93
102
128
107
146
138
69
119
105
105
123
128
67
110
103
138
162
92
92
58
139
122
109
132
152
92
86
107
111
144
110
107
93
109
100
152
138
91
105
55
138
58
69
152
146
92
128
92
109
37
92
69
92
55
92
75
110
138
77
126
92
58
93
58
94
168
86
55
103
98
110
126
97
92
144
37
122
67
58
111
144
169
37
130
122
160
107
111
92
144
109
169
92
149
126
102
110
94
113
128
56
152
126
92
91
123
107
140
77
56
92
128
139
124
138
136
135
147
132
56
92
79
110
104
123
105
129
58
118
139
139
127
127
91
55
127
152
105
104
178
146
74
55
138
67
55
91
178
104
109
139
93
111
180
105
139
55
163
148
132
92
128
56
134
127
139
122
122
125
67
143
55
104
123
158
104
55
149
123
110
105
127
105
168
139
114
101
92
67
87
104
138
92
97
56
75
132
105
138
67
105
92
105
55
104
134
84
138
110
84
69
93
93
158
127
119
105
138
91
97
56
129
67
122
109
112
146
69
92
138
178
93
127
109
75
110
91
138
134
104
122
136
55
93
105
91
37
104
126
110
107
132
99
58
103
147
105
160
122
104
75
122
103
126
134
126
88
126
55
103
79
105
152
102
56
37
139
178
100
138
99
162
104
146
127
122
69
110
110
126
126
77
117
138
92
158
77
105
92
104
99
130
122
163
169
91
171
58
56
37
58
178
163
122
116
140
167
92
127
89
107
101
141
123
92
55
67
105
67
98
93
103
77
105
37
163
105
37
122
127
55
163
199
124
138
104
78
93
168
105
158
92
126
94
58
75
134
122
91
129
130
134
98
129
127
77
122
79
37
86
126
110
122
128
146
121
122
138
119
110
118
88
58
91
169
169
79
126
140
92
92
75
75
125
146
93
99
125
139
92
111
138
92
77
111
75
91
103
74
67
105
138
124
37
55
68
99
74
168
136
68
83
87
126
136
104
67
146
156
95
92
111
55
122
138
95
93
67
122
97
124
162
102
138
105
91
136
67
92
93
55
119
86
104
93
79
128
128
93
93
152
122
122
93
180
55
88
106
158
126
123
64
105
122
139
104
119
85
37
102
138
111
110
122
126
152
145
92
75
144
77
150
110
86
169
104
110
110
89
127
65
128
104
126
104
122
127
119
68
121
101
110
83
138
56
110
58
144
111
114
55
75
138
123
139
55
141
58
93
148
86
56
105
122
126
37
122
122
162
79
105
99
107
79
92
152
148
140
152
96
110
126
110
56
104
105
169
152
55
105
140
41
139
119
86
67
92
122
178
105
115
110
92
110
138
93
169
75
37
104
138
56
111
102
55
168
105
139
55
58
144
158
114
78
37
101
126
55
55
67
37
114
168
67
69
56
146
110
110
69
92
124
55
86
178
105
111
144
56
55
92
122
105
68
127
86
163
178
55
123
55
132
121
126
105
61
126
100
163
126
118
105
107
127
139
126
86
134
79
91
126
92
55
178
58
139
137
110
93
123
91
99
110
97
131
93
56
138
178
126
106
107
152
152
164
158
69
67
126
118
122
110
99
55
148
92
109
105
110
101
117
138
79
105
92
37
56
69
120
75
102
138
122
58
138
138
169
126
127
100
92
76
98
55
92
110
149
148
104
127
128
97
160
158
139
74
171
89
97
140
92
58
69
136
146
140
67
72
130
93
130
92
144
37
86
122
138
131
110
55
99
162
148
139
137
110
135
55
55
97
79
126
105
152
168
104
92
122
127
110
58
110
83
56
168
92
138
144
112
119
69
168
67
105
91
104
56
169
67
92
78
139
104
138
138
126
124
140
105
152
158
69
108
74
37
103
55
167
37
67
128
107
92
138
105
122
95
110
152
111
58
152
152
92
56
77
105
55
158
105
126
119
107
55
104
139
119
137
93
102
105
93
127
56
101
55
105
171
99
110
126
105
122
56
67
56
152
134
128
55
162
126
129
108
100
119
75
117
107
91
56
110
92
178
144
104
140
152
104
178
126
105
122
111
109
104
122
152
140
69
92
107
77
126
56
105
69
178
37
56
146
138
72
142
107
126
111
145
110
89
138
127
178
104
104
99
110
55
105
108
109
127
126
110
67
77
67
69
79
58
122
169
91
138
84
87
56
162
104
124
123
127
128
110
122
122
138
126
122
128
67
123
105
131
55
144
110
178
105
126
103
117
122
79
67
127
74
124
164
77
144
136
126
122
93
124
126
122
131
147
111
102
138
169
92
92
92
146
119
93
58
122
88
92
146
111
105
37
37
92
160
123
146
126
117
128
126
74
111
56
37
108
120
81
126
67
67
83
92
119
134
74
136
177
58
97
105
37
110
139
92
105
79
93
127
77
127
120
119
37
109
92
91
122
138
105
68
74
105
109
69
92
118
199
56
93
146
79
74
112
56
93
130
124
107
134
169
99
122
122
92
110
105
122
165
93
138
92
126
37
69
111
134
148
100
67
122
134
103
92
58
93
148
140
123
122
142
93
163
93
111
138
122
86
74
96
58
128
121
126
126
104
152
104
134
126
55
139
104
122
126
75
67
105
55
146
92
69
114
69
122
146
131
92
103
122
122
91
131
106
110
92
96
92
110
119
138
111
122
92
56
68
138
55
55
92
55
57
55
67
92
79
119
103
91
102
180
171
93
74
104
79
104
105
99
78
129
138
104
67
111
80
110
137
104
103
56
126
100
110
78
83
91
105
122
93
168
163
75
122
92
122
152
55
56
55
144
109
74
93
129
88
79
139
119
91
138
164
37
100
91
138
67
92
110
86
111
122
93
105
106
110
126
75
144
55
105
144
117
95
56
107
119
37
108
114
92
55
163
91
107
93
68
145
110
69
98
122
158
139
109
138
93
111
104
94
178
159
79
119
92
83
99
144
100
122
169
92
128
92
127
107
122
102
105
67
111
92
122
55
109
86
138
126
138
122
56
67
138
122
79
67
86
110
164
132
91
178
146
138
95
58
74
92
79
109
92
110
122
129
104
199
119
100
55
110
110
122
171
127
124
55
37
56
105
119
37
110
111
107
75
92
126
128
122
55
83
99
104
109
110
92
132
92
126
119
132
92
55
37
128
56
92
92
110
124
93
126
92
152
132
86
97
95
105
120
144
107
111
110
140
55
110
136
107
92
99
152
80
37
58
92
102
91
136
92
124
168
67
124
169
108
58
95
122
144
126
124
105
92
93
145
77
139
138
103
139
97
86
109
55
155
104
136
126
92
137
126
55
77
138
99
140
139
180
93
93
99
110
139
81
67
104
146
105
139
122
37
109
147
152
122
110
67
79
69
55
146
105
142
152
143
98
114
80
55
139
152
77
56
137
110
119
111
112
152
105
110
93
139
69
98
132
37
122
110
107
104
140
123
119
169
112
86
93
89
99
75
138
126
106
84
110
105
148
67
104
111
118
131
139
55
75
124
152
119
105
164
78
58
139
92
119
139
111
122
67
199
75
91
126
99
110
126
77
163
37
37
93
104
56
100
122
56
92
105
119
132
37
127
83
55
134
98
126
140
56
126
138
110
140
67
109
88
123
55
180
92
105
69
97
84
56
122
167
111
110
113
124
37
91
171
138
118
119
95
136
55
152
37
56
67
67
55
92
69
111
99
162
58
86
102
138
169
75
92
169
67
122
92
68
122
107
122
104
178
104
55
139
56
93
138
97
78
103
104
139
83
146
99
93
67
120
131
144
111
128
55
93
92
139
145
101
122
122
75
140
37
146
148
67
55
135
128
144
124
171
67
138
92
69
121
169
146
92
104
104
103
55
37
122
105
126
86
126
122
128
122
169
135
110
152
91
78
138
93
118
135
92
126
127
126
103
86
105
146
100
137
167
92
55
92
140
69
92
75
104
83
138
144
37
55
109
105
111
55
110
110
92
74
105
148
128
37
110
144
56
109
111
138
111
132
56
146
67
180
69
127
68
88
112
69
126
81
106
67
140
140
160
105
74
92
140
69
97
69
128
107
104
95
124
55
104
108
127
139
110
134
122
125
138
124
106
96
92
127
178
75
58
69
122
76
136
114
93
93
163
118
122
93
144
93
74
76
112
105
124
123
93
78
93
122
55
92
126
144
132
105
110
67
105
137
93
163
67
93
77
92
93
92
134
146
93
146
128
129
103
180
106
146
135
131
124
67
178
126
91
37
134
55
112
138
105
105
146
56
128
104
162
139
139
168
104
157
100
92
132
136
91
136
103
129
105
122
93
92
93
142
126
104
55
126
110
99
105
55
105
134
152
91
144
67
92
136
93
139
106
123
122
146
164
93
140
122
58
126
114
138
55
104
164
127
104
55
69
139
126
103
122
97
77
119
109
103
131
138
58
138
99
37
92
140
88
122
67
134
79
107
94
114
130
110
139
118
160
127
75
165
139
58
37
107
61
124
152
122
138
92
77
79
138
144
86
55
114
127
55
138
131
56
130
103
164
130
104
92
58
97
109
138
109
92
101
178
92
144
126
139
57
55
134
122
104
55
99
58
138
135
140
58
149
131
104
67
117
126
110
83
68
117
139
103
67
92
122
55
107
110
111
128
126
92
110
139
98
105
68
99
141
164
92
138
169
178
163
91
97
55
129
83
58
86
106
105
94
139
111
92
83
146
77
93
91
144
55
83
133
93
123
138
107
122
56
104
37
105
55
139
104
56
58
91
72
122
124
92
179
93
117
110
67
106
122
88
139
92
105
122
138
105
58
122
67
122
127
92
126
122
126
104
92
84
84
102
83
128
126
92
150
144
127
105
126
77
93
138
110
103
139
158
93
163
93
144
114
93
122
105
80
104
100
89
111
109
142
111
107
41
101
107
55
171
130
108
119
131
55
56
37
99
67
167
56
122
56
144
101
86
105
92
134
79
56
148
83
140
122
126
67
122
92
92
138
140
89
144
37
144
131
104
139
126
122
119
55
105
110
131
78
69
122
103
105
103
178
150
92
83
92
152
142
55
110
67
55
110
92
55
83
93
104
107
86
110
92
104
119
122
140
93
95
93
123
139
139
142
128
67
97
92
92
93
105
149
93
98
93
139
100
95
75
120
96
139
56
55
94
144
110
107
89
146
74
113
58
126
69
55
122
129
122
105
105
55
97
56
135
105
86
114
75
105
152
58
111
104
152
56
58
87
92
92
119
74
128
98
105
110
122
74
139
93
55
127
126
117
140
67
110
110
110
69
142
92
110
124
171
79
134
138
109
148
77
111
69
127
138
115
112
55
178
138
123
55
55
152
91
69
126
158
37
105
69
122
138
98
37
126
144
105
178
122
199
138
79
109
67
132
67
109
122
73
160
75
122
91
68
56
99
178
106
110
100
138
139
122
69
99
152
67
92
131
178
138
126
79
55
79
138
92
56
114
188
77
55
118
67
110
178
91
86
55
110
55
88
123
55
132
103
93
139
115
131
86
58
169
178
67
111
75
111
37
100
127
92
112
56
103
144
158
105
104
74
120
152
144
68
55
122
55
93
134
105
105
136
127
92
91
144
110
74
92
122
55
74
67
122
110
119
103
69
98
107
199
56
55
111
103
182
118
126
144
93
117
37
112
126
126
83
55
80
138
115
74
75
67
122
109
178
58
164
92
128
92
86
55
139
96
103
139
102
109
97
169
77
92
199
105
139
67
110
92
146
139
105
164
105
127
100
104
86
180
110
127
83
86
92
105
110
92
55
105
93
104
67
138
139
145
110
86
125
37
122
139
74
86
102
105
67
111
105
107
126
104
83
152
165
139
93
77
110
112
86
101
126
122
152
56
79
58
150
177
122
75
55
108
126
127
111
91
107
131
127
103
115
126
146
111
91
128
110
55
195
130
101
67
163
169
37
56
104
92
58
181
122
56
69
138
107
122
163
197
92
58
144
138
83
110
103
92
120
126
86
107
140
114
126
109
126
104
131
67
124
126
78
108
110
80
169
91
88
110
136
152
86
94
91
110
182
104
77
138
92
122
79
104
123
152
138
139
119
156
119
105
117
86
56
114
92
79
37
110
75
132
55
110
86
126
178
110
128
92
109
93
109
105
126
126
92
105
138
126
122
178
180
105
67
93
92
98
102
77
89
67
127
77
138
98
114
55
110
83
37
178
137
99
110
92
146
77
110
79
110
89
120
139
93
126
123
152
110
146
144
75
127
123
110
126
144
105
134
122
171
138
92
103
55
97
164
89
55
92
123
84
122
146
92
55
148
131
127
37
105
105
160
37
131
119
104
138
169
136
178
83
76
131
93
124
122
126
146
111
105
111
110
126
58
104
99
97
112
92
92
99
105
105
105
55
55
93
110
132
110
67
178
106
105
110
79
86
105
144
127
99
93
139
74
77
55
178
56
126
92
169
99
92
56
84
109
67
110
67
132
110
103
105
178
140
110
123
124
37
124
77
125
119
103
92
79
117
138
92
72
104
67
138
58
138
55
67
91
75
55
67
127
122
136
56
104
144
110
110
95
86
178
120
106
152
91
67
67
68
139
123
106
122
105
134
67
134
55
92
55
91
115
92
67
138
93
67
81
88
126
111
144
110
134
139
55
105
93
124
127
56
138
169
69
110
55
167
105
93
67
56
146
100
138
68
123
178
55
89
105
126
112
55
124
56
122
98
138
58
111
144
138
128
92
93
100
138
104
128
138
126
126
128
55
81
74
105
139
122
171
69
101
126
128
98
127
138
169
89
127
55
110
69
111
56
105
110
126
110
114
104
93
182
138
118
119
86
93
79
92
58
122
110
144
98
101
100
99
138
131
91
89
93
77
67
69
93
88
58
92
107
110
86
91
67
137
55
164
131
130
110
92
138
122
92
107
99
93
104
122
107
110
110
107
93
122
167
138
99
110
69
138
124
135
105
92
111
138
92
72
107
123
105
126
113
67
100
77
92
138
124
127
37
158
55
122
119
180
122
92
91
127
86
139
169
106
127
171
129
104
188
155
104
107
122
141
144
167
122
126
144
102
119
55
104
110
92
113
55
107
37
138
115
163
73
58
144
126
106
58
138
99
162
138
138
105
92
110
124
114
139
139
152
139
111
105
109
58
37
110
169
169
140
143
105
55
122
55
61
74
99
110
92
122
104
88
92
69
136
132
139
55
110
92
130
117
178
122
67
109
178
67
58
122
132
138
67
122
105
56
92
123
163
100
107
79
122
77
67
138
123
171
123
93
118
79
104
109
171
104
69
126
126
84
107
92
92
104
169
103
86
105
55
168
92
67
128
58
112
55
148
67
99
106
144
56
103
149
122
148
125
112
93
67
126
178
92
88
123
110
122
114
98
119
144
138
92
105
79
58
105
79
105
56
122
77
109
104
80
92
124
146
55
105
110
178
75
144
78
37
92
110
67
109
139
152
103
146
138
164
127
92
91
105
104
108
139
92
110
136
75
122
69
93
126
131
83
89
67
55
105
64
122
103
199
105
64
105
158
105
67
92
160
114
128
58
67
55
162
124
97
110
123
93
110
137
99
100
105
138
110
139
92
55
55
105
79
84
126
86
162
106
144
163
110
55
93
58
144
130
92
134
110
58
92
146
80
109
92
112
119
144
110
108
109
55
85
98
110
104
93
55
110
123
126
92
55
92
114
123
58
93
56
114
169
79
67
37
97
104
99
55
148
67
104
92
58
181
126
37
139
56
148
142
138
81
114
74
142
67
169
139
79
105
105
120
144
165
55
67
132
126
107
105
58
169
55
55
122
99
55
164
55
75
117
55
92
91
147
171
122
86
104
37
92
119
79
111
104
104
122
83
115
109
126
137
55
99
58
81
86
110
55
124
105
169
122
110
110
126
122
171
56
55
171
119
92
99
104
58
104
105
126
74
131
93
111
126
105
83
177
92
103
86
95
122
92
86
110
119
93
69
169
67
142
92
78
140
127
92
74
93
104
138
105
55
138
97
122
110
67
92
144
93
122
110
139
124
126
55
162
138
92
86
56
112
67
89
69
92
126
148
98
86
76
100
79
69
98
92
103
77
91
123
123
122
138
110
125
122
145
37
56
74
74
77
122
152
93
83
69
69
138
149
128
122
122
139
92
105
126
91
112
92
112
126
106
93
131
128
84
110
110
150
104
58
56
103
138
148
92
114
160
125
126
127
150
94
122
120
112
56
93
86
56
83
164
101
79
152
79
93
86
110
93
113
124
67
140
178
110
140
56
146
128
112
120
58
132
152
68
112
126
55
92
127
128
68
58
122
132
89
199
94
92
79
127
110
141
140
160
92
164
107
169
169
110
92
93
119
93
101
169
110
55
103
67
69
67
167
94
127
92
92
192
132
106
168
178
137
86
171
92
84
77
110
111
58
93
73
74
110
110
92
37
77
67
167
58
67
113
84
124
58
124
178
55
122
93
160
102
130
178
123
83
86
104
126
127
192
55
37
120
93
127
67
105
55
58
67
114
140
109
107
138
103
162
119
56
55
99
145
178
192
139
56
64
125
127
178
92
119
103
55
113
168
105
131
74
144
134
152
103
139
111
124
79
126
105
139
75
152
112
86
69
140
56
138
105
137
122
67
159
109
129
122
136
79
142
158
105
109
104
55
178
58
105
107
37
69
56
55
128
122
83
119
124
122
75
152
122
74
101
98
92
98
131
169
122
124
98
134
169
69
117
180
75
101
74
171
55
132
104
110
64
55
92
93
110
56
91
123
134
93
104
126
55
92
138
99
152
163
93
131
139
110
112
79
178
120
69
64
115
105
138
124
92
91
107
139
169
92
74
105
92
69
77
141
115
74
95
99
109
126
56
102
128
126
139
127
100
144
99
97
55
79
105
105
99
135
120
55
105
127
137
56
169
122
92
138
103
110
109
152
109
109
122
92
105
139
79
122
129
104
120
138
139
178
104
138
98
67
139
55
115
148
83
69
102
138
99
58
112
99
140
109
67
108
92
93
138
138
162
92
68
56
128
67
74
76
89
92
138
69
147
109
68
110
105
69
93
128
77
122
104
163
56
123
149
144
136
79
135
93
79
122
111
112
110
104
101
56
140
55
142
180
92
93
104
105
138
93
55
107
55
115
56
123
89
91
117
106
134
92
117
168
148
180
152
127
56
92
93
125
126
145
110
136
110
152
92
110
97
99
123
199
67
55
126
152
91
83
127
126
127
56
105
110
56
127
180
163
55
126
126
92
124
37
138
86
138
104
110
117
103
88
127
92
107
105
67
79
136
126
93
163
136
105
58
74
158
87
104
92
107
107
77
92
134
56
55
55
126
105
89
69
55
92
128
144
138
144
118
139
83
126
55
79
135
79
55
178
99
169
92
104
123
97
131
146
105
55
64
131
111
171
138
55
118
97
125
130
72
75
104
146
111
152
92
56
110
156
167
119
110
137
124
110
107
55
113
105
128
56
142
126
122
122
58
84
55
74
91
146
118
55
148
99
104
122
55
110
92
67
37
180
125
131
107
58
93
55
92
149
127
55
79
127
145
106
67
110
139
122
109
79
110
134
122
126
144
86
95
105
112
108
178
92
104
56
104
77
126
103
55
106
110
123
104
69
37
97
56
106
178
67
91
119
105
110
118
74
105
99
111
122
93
152
112
138
92
138
144
107
111
69
119
91
120
37
99
58
91
148
92
134
107
92
123
55
139
99
55
163
98
122
37
104
122
92
149
92
127
107
55
55
135
122
105
55
168
89
93
178
67
92
122
123
56
178
122
105
126
124
105
171
77
124
55
75
165
105
144
56
100
92
178
110
55
69
110
94
75
139
165
138
92
118
56
169
93
93
75
108
56
114
77
91
126
122
98
169
105
92
58
139
146
105
163
110
92
106
109
92
67
107
131
67
69
55
105
105
134
138
67
56
69
75
104
127
105
92
111
93
128
55
119
104
92
127
110
110
104
128
169
162
105
58
163
37
69
134
56
110
55
130
37
122
139
97
92
138
146
199
99
104
55
83
130
132
138
102
91
112
126
146
138
178
142
105
91
106
122
119
109
91
55
84
122
101
55
92
126
93
110
93
144
122
110
122
104
67
92
140
110
92
110
167
80
138
126
99
93
128
139
165
106
58
128
112
79
86
144
126
112
164
58
75
55
79
92
107
122
105
55
126
139
92
103
103
138
122
79
151
153
119
99
144
126
192
77
37
55
122
67
112
79
138
165
99
122
122
97
102
92
77
126
132
37
37
139
92
92
104
55
105
122
84
140
138
105
128
80
126
56
146
111
55
88
126
105
58
151
122
120
178
123
139
105
119
110
106
98
136
58
122
110
122
56
56
140
126
88
92
37
98
109
169
108
55
168
78
126
146
126
93
131
102
119
58
84
138
122
86
37
126
58
122
92
56
37
93
178
86
104
120
114
102
77
107
139
83
128
74
103
104
126
74
69
148
146
124
58
81
92
89
91
146
135
78
99
127
178
56
93
120
148
108
152
92
92
139
92
86
131
79
178
104
138
110
122
111
104
138
178
132
132
152
58
67
138
55
139
152
142
68
145
126
106
86
114
117
124
122
110
97
88
55
129
124
128
110
67
105
105
138
104
107
105
122
55
120
58
37
138
178
134
104
124
117
104
105
148
55
55
84
93
126
127
164
104
126
93
119
167
146
105
122
154
110
128
123
105
156
152
67
116
67
128
140
122
138
122
144
92
97
69
126
105
128
122
104
93
97
168
128
89
101
144
105
91
55
138
92
192
127
171
77
171
110
93
171
69
109
110
89
109
139
37
126
152
92
110
69
178
107
138
97
124
55
86
146
134
68
55
101
126
178
86
146
110
119
92
169
58
83
110
138
58
92
144
105
92
92
123
180
134
98
144
149
92
105
134
138
86
77
79
79
167
120
111
119
122
138
138
138
79
138
148
138
97
77
111
55
127
111
83
158
94
144
132
69
109
138
148
135
168
92
92
98
37
56
105
102
108
67
158
72
138
152
127
56
134
110
55
114
138
99
136
162
87
74
139
122
55
192
99
121
92
55
105
138
146
105
139
126
96
129
126
108
55
58
112
92
119
178
126
56
178
136
139
79
138
105
119
77
127
122
67
58
104
58
96
55
37
127
37
105
132
123
100
93
122
92
109
109
138
139
77
109
158
99
144
67
162
137
131
93
69
119
37
136
139
152
122
92
115
55
67
153
108
126
74
92
127
92
74
79
79
104
139
127
130
93
122
97
144
108
131
91
104
92
56
91
127
75
92
131
144
56
55
105
58
56
121
149
92
140
105
58
110
92
105
138
129
138
171
169
102
79
139
86
104
112
92
91
135
67
67
122
128
126
112
67
55
169
118
146
124
106
110
58
127
103
86
141
152
83
93
97
111
92
92
130
126
104
92
122
85
92
95
178
55
56
92
67
138
67
111
84
169
146
146
152
55
37
74
138
135
92
148
122
127
109
122
122
122
169
104
55
119
92
93
56
134
93
93
79
84
120
79
127
91
68
126
101
93
75
92
57
67
124
110
75
146
138
144
75
110
86
105
58
97
110
106
105
139
126
109
152
105
138
67
99
140
138
79
169
73
58
126
119
97
118
91
124
182
79
122
95
92
92
58
84
104
105
126
55
109
123
152
138
67
67
122
142
86
98
105
107
126
110
84
104
93
93
140
122
91
56
55
55
92
110
144
56
93
144
67
103
144
74
92
74
122
55
127
67
192
115
93
104
58
67
55
100
111
111
89
55
92
122
122
75
128
127
124
103
92
58
79
74
105
124
124
140
144
108
141
122
96
148
79
169
109
124
139
92
110
119
134
139
92
105
111
92
130
67
68
96
110
55
99
67
68
115
122
128
99
128
92
56
55
122
91
55
126
127
136
169
93
109
127
105
100
169
139
67
92
178
55
68
67
55
92
93
113
75
152
56
56
105
148
127
121
178
105
120
103
67
146
86
128
178
163
127
105
64
69
138
67
146
105
119
75
138
124
139
67
86
93
37
169
68
158
56
92
75
110
141
111
148
122
110
134
128
58
122
92
110
77
95
125
92
110
150
122
110
122
118
148
128
91
127
163
124
138
129
122
105
110
103
91
91
169
162
152
134
67
127
118
88
126
55
69
101
139
138
68
92
67
138
93
55
98
110
163
106
55
67
123
69
148
91
122
95
67
128
93
87
79
130
68
142
86
77
138
58
58
105
146
91
55
122
126
89
91
178
89
84
67
92
144
109
121
92
146
79
117
83
126
145
110
105
92
108
69
124
74
92
140
110
148
73
144
69
128
91
105
56
55
97
68
86
92
56
147
55
127
110
128
178
110
131
69
112
105
147
146
110
67
92
145
91
84
128
74
165
105
69
138
37
91
58
67
79
93
37
122
75
86
126
93
102
165
138
74
110
140
37
178
122
99
122
122
99
144
122
58
146
110
92
86
92
99
89
180
138
119
86
146
37
55
105
105
140
165
141
92
104
68
144
103
105
93
92
145
86
37
67
110
126
92
92
124
37
122
104
146
112
169
144
55
144
55
139
131
79
67
68
118
127
122
56
55
165
128
99
105
79
118
104
144
118
138
122
77
67
126
69
140
104
56
87
144
148
101
79
141
122
138
127
127
103
141
111
55
139
37
146
108
68
146
67
55
92
78
123
92
57
122
83
58
92
74
96
106
78
124
55
56
55
137
160
107
56
158
139
58
135
127
178
55
69
104
104
131
56
128
104
128
134
58
103
138
158
92
146
163
84
138
163
55
92
69
105
92
92
134
105
109
118
123
92
84
169
105
137
138
92
99
69
68
104
92
102
89
37
114
105
55
58
136
122
104
95
122
119
122
126
86
128
126
92
105
148
37
86
93
86
139
135
55
110
55
132
139
86
141
169
104
37
92
110
97
99
92
148
91
110
104
37
169
77
37
77
127
93
105
127
56
128
97
118
86
37
136
168
110
55
91
124
152
109
122
130
126
37
138
74
99
93
105
119
107
134
67
178
138
125
55
69
110
67
138
105
146
156
169
105
118
131
55
77
140
122
117
122
104
67
92
111
146
103
86
105
74
93
92
87
139
96
58
37
148
94
92
77
93
128
134
84
144
146
92
122
92
96
113
93
58
55
103
104
104
86
75
68
140
67
131
79
55
58
110
139
79
127
110
92
56
122
119
92
126
152
110
58
134
111
131
110
123
125
126
139
117
131
93
127
122
165
91
105
146
109
139
103
130
77
149
56
123
138
138
136
67
79
92
105
138
101
119
109
75
105
152
110
74
105
55
109
131
146
180
75
67
92
109
146
145
104
127
58
69
180
122
56
37
105
110
110
139
68
92
128
122
92
130
67
162
100
152
105
126
92
138
86
111
110
138
97
92
94
104
100
103
69
137
129
165
91
96
55
119
74
55
135
69
92
152
139
122
55
138
140
100
113
110
105
79
69
104
127
119
152
37
160
105
93
92
55
168
69
104
122
127
84
178
83
93
97
118
138
67
158
68
178
105
64
126
127
121
92
111
92
168
56
92
105
105
87
128
79
169
107
171
165
138
120
138
110
126
56
67
58
132
93
169
109
145
86
132
119
105
152
126
130
79
94
67
93
103
86
55
79
92
68
182
128
108
122
126
127
74
128
55
58
114
144
55
128
91
86
126
168
146
127
136
92
79
74
105
143
99
125
126
97
126
69
149
111
69
126
131
99
119
131
139
109
138
93
110
178
130
103
81
107
67
55
98
92
152
92
131
104
122
134
130
55
127
56
69
126
119
119
56
126
79
178
86
126
37
126
105
138
137
86
124
55
122
126
115
123
140
55
105
132
55
55
148
140
139
58
138
101
128
122
55
138
106
92
122
117
92
99
126
139
55
110
126
69
80
58
132
112
92
171
69
92
96
129
99
171
91
58
110
97
102
93
126
152
56
110
114
144
165
126
103
99
92
67
41
152
144
58
164
55
131
77
105
98
110
169
103
178
92
122
67
109
122
163
86
55
105
134
100
105
130
136
138
149
165
126
105
55
67
77
56
131
74
110
169
138
158
180
127
152
55
105
110
122
132
55
74
99
126
74
58
55
146
127
58
118
55
97
126
92
127
92
68
111
67
67
164
93
109
149
178
134
104
109
92
92
178
138
69
92
127
138
119
92
91
138
92
93
128
92
86
92
138
105
37
68
79
69
124
122
123
126
146
169
152
123
152
98
123
128
126
55
86
105
144
101
79
75
58
105
92
92
124
37
92
91
67
149
128
98
178
169
67
114
105
122
118
58
67
55
134
80
140
180
55
105
37
126
91
37
137
93
92
101
122
75
134
171
83
119
92
122
69
95
67
104
134
122
58
104
97
87
132
93
126
136
165
130
91
111
105
122
156
104
92
148
55
149
69
86
123
104
92
104
110
111
92
126
37
132
169
99
95
104
146
139
92
152
93
94
105
89
92
134
55
123
169
128
162
115
55
110
121
144
105
78
67
92
152
37
138
109
122
109
67
120
84
67
69
107
101
58
126
152
146
110
127
99
111
122
126
69
165
122
57
56
56
118
138
105
128
169
56
138
109
92
101
126
55
92
123
143
37
67
197
105
118
181
99
107
137
105
112
128
109
128
56
122
107
128
120
180
122
110
163
129
77
75
37
115
128
111
58
140
134
69
93
104
55
92
109
104
148
129
109
67
169
93
119
122
109
132
137
91
58
98
83
104
136
91
146
105
104
139
128
105
99
86
145
77
79
95
169
67
75
97
67
89
138
55
105
105
129
93
103
158
56
115
138
55
99
92
134
93
92
56
106
128
132
110
122
93
67
92
152
146
55
139
93
112
55
95
93
103
144
103
147
111
77
93
110
111
109
67
55
93
55
140
144
55
56
100
92
100
77
139
118
178
93
135
111
125
122
180
138
55
105
105
124
126
103
139
152
91
111
89
77
95
110
110
134
37
77
83
171
169
92
178
107
105
138
69
148
126
126
110
122
74
93
146
56
114
69
69
123
105
100
92
119
69
79
106
108
123
114
81
178
67
92
127
146
138
55
37
115
67
124
138
131
79
104
122
58
110
180
110
180
132
93
149
178
58
55
104
168
178
55
139
92
110
126
112
67
75
55
112
83
104
139
92
114
105
100
67
110
122
140
123
124
104
55
58
144
148
99
92
109
138
126
105
138
146
122
74
125
112
140
131
55
99
117
77
110
93
102
89
119
79
116
56
126
126
105
130
146
138
55
55
111
58
107
92
91
84
86
68
126
111
92
101
139
92
78
138
55
132
151
89
93
92
79
134
111
69
138
105
178
67
112
92
91
110
138
92
126
75
146
138
92
114
138
109
126
75
122
110
69
138
67
122
91
92
88
136
92
167
102
83
123
158
103
122
95
122
67
119
126
138
103
56
117
127
91
121
56
138
55
111
92
105
123
128
128
82
139
136
56
131
138
88
171
152
144
110
92
139
67
138
86
86
106
109
188
91
110
144
112
93
136
131
152
37
122
128
126
131
55
77
127
67
58
144
131
105
69
130
111
55
110
110
55
89
178
105
97
91
56
131
105
110
131
126
55
99
123
55
98
128
144
144
109
105
145
109
58
139
79
122
67
77
104
92
81
89
67
123
158
55
69
109
67
126
101
152
105
152
67
73
95
75
118
122
102
111
138
92
97
55
138
144
68
93
74
144
104
117
95
128
55
81
148
122
178
131
56
92
136
152
110
92
102
86
138
110
67
103
111
128
104
55
109
84
107
160
101
146
96
128
67
119
138
148
117
129
104
122
169
56
55
152
55
77
124
56
146
92
123
37
103
55
92
77
137
122
108
158
109
99
92
93
77
67
152
74
101
129
68
92
103
55
110
127
84
102
110
128
126
67
109
105
103
83
109
56
92
110
152
134
67
153
67
112
140
102
131
93
86
127
122
37
182
96
75
74
104
111
113
121
138
68
67
69
58
58
101
105
140
169
122
55
152
126
152
110
56
92
77
107
178
69
129
92
122
93
92
86
110
94
152
109
55
109
37
136
126
37
92
104
158
159
134
138
123
103
132
95
107
92
139
165
92
89
93
110
104
123
55
127
138
105
105
92
83
128
126
79
58
93
75
80
93
55
122
102
131
122
105
152
122
58
138
140
127
91
104
55
55
169
105
108
95
126
138
138
144
91
91
178
81
108
55
110
93
103
56
86
149
144
138
140
127
122
163
55
124
115
146
139
122
77
126
86
58
126
69
92
37
119
92
110
37
75
107
117
99
55
117
69
124
134
75
139
152
138
127
110
110
122
126
149
126
98
103
55
98
139
135
119
67
127
55
69
129
68
67
139
79
105
119
146
99
138
69
134
128
152
127
122
121
110
94
128
157
77
146
103
127
125
75
144
128
84
128
91
126
79
97
55
122
95
110
110
122
136
152
158
100
67
131
171
55
37
55
92
110
138
93
111
77
138
169
178
99
92
74
110
58
104
79
81
109
139
89
97
128
107
110
93
58
199
68
89
93
69
55
111
105
91
119
127
86
92
126
74
55
134
77
58
122
126
37
122
132
107
99
93
97
107
111
117
67
134
120
55
146
105
122
110
107
118
93
104
92
127
138
97
152
144
138
105
67
55
107
55
58
152
123
158
122
68
69
93
140
110
92
122
124
55
89
104
67
74
86
55
103
119
149
37
120
55
79
67
68
95
79
95
144
100
145
99
55
93
138
139
140
104
92
58
91
141
105
138
110
55
67
99
93
105
140
126
101
93
92
105
138
145
109
122
122
67
67
79
67
97
126
93
119
95
169
93
97
69
93
139
122
105
67
126
122
158
122
74
127
69
99
55
105
117
110
56
93
69
110
158
126
75
127
145
130
130
153
99
105
101
141
88
109
132
122
110
77
128
139
169
56
55
69
79
92
122
86
131
106
169
160
134
126
56
178
146
55
74
171
86
92
110
102
55
139
132
122
74
69
55
68
92
56
138
108
91
55
158
138
126
110
131
122
79
101
55
126
104
122
67
55
92
58
103
102
103
149
92
146
128
93
56
93
126
99
111
126
109
67
69
111
67
86
138
107
79
126
105
105
56
92
178
122
58
110
146
110
93
110
37
55
97
93
67
134
68
69
130
138
75
142
67
126
140
58
92
110
105
105
92
37
126
56
199
169
55
118
92
37
79
78
128
92
92
139
111
138
37
138
67
104
128
109
110
74
86
72
69
55
102
104
92
126
99
126
138
178
75
58
139
167
75
37
139
55
130
67
101
152
139
144
101
91
69
100
58
152
110
171
178
55
125
122
55
67
126
109
79
140
92
128
134
138
118
93
122
123
107
58
110
91
56
55
104
92
119
107
126
98
56
56
122
61
130
86
86
128
58
98
110
92
145
148
105
56
77
138
91
69
75
55
68
67
146
55
163
79
77
122
104
123
109
132
138
138
92
124
127
83
122
120
112
138
101
56
93
92
92
92
121
105
129
91
58
92
126
122
95
144
67
58
110
105
110
123
55
104
126
55
146
127
67
68
67
55
152
56
56
168
56
92
119
93
178
109
164
77
92
69
126
123
74
105
109
67
104
132
105
75
151
92
83
75
93
134
74
123
132
111
169
97
92
117
165
178
110
119
67
123
151
55
122
163
109
105
55
125
127
126
134
105
58
109
98
169
93
75
122
117
132
131
105
92
128
110
148
151
117
92
74
92
106
105
130
138
139
58
55
127
144
56
91
105
99
58
67
55
104
110
58
74
105
69
120
93
105
111
107
55
67
67
165
92
92
92
108
112
123
142
55
75
104
152
110
37
146
79
178
165
105
111
163
140
164
122
37
114
111
86
152
111
138
79
142
89
92
104
124
55
109
126
79
93
124
152
100
91
178
138
126
84
149
126
122
56
99
55
134
167
138
97
138
67
79
122
101
69
67
55
93
137
102
67
104
114
146
171
123
110
92
86
109
37
69
100
68
122
136
130
110
93
93
171
122
126
67
67
144
84
74
146
139
93
37
105
126
55
104
136
128
167
92
58
133
168
55
124
68
83
127
118
37
105
92
178
67
102
115
146
109
92
138
101
169
122
105
110
105
67
152
99
110
168
130
92
92
122
103
55
91
91
55
37
168
104
55
37
67
58
156
93
134
92
56
121
55
178
86
181
124
123
122
141
93
93
129
130
131
67
79
115
105
144
116
68
74
126
88
58
119
132
103
138
86
139
126
132
138
140
104
131
105
55
164
124
152
93
104
104
146
86
79
122
126
67
132
105
56
110
127
81
119
56
55
152
128
126
107
139
93
92
130
93
79
152
76
123
107
107
105
86
92
55
123
83
127
109
104
108
99
138
146
93
83
144
117
128
92
109
93
81
126
142
105
98
123
56
92
126
67
178
104
104
127
71
37
139
93
92
180
128
55
127
74
94
136
138
86
108
104
123
74
169
67
119
124
138
127
120
107
111
91
116
83
105
168
138
108
171
94
138
55
138
130
171
99
169
120
67
99
152
139
79
148
124
103
55
110
146
178
180
144
58
89
126
145
178
122
77
110
58
67
110
119
126
105
111
58
84
89
127
105
104
93
152
92
67
55
128
91
105
92
92
163
122
110
109
92
75
92
69
91
169
146
93
110
111
92
57
110
169
55
128
120
144
92
67
122
92
119
58
67
119
92
122
69
132
138
100
126
127
108
178
125
111
139
119
55
113
55
103
111
124
104
122
67
104
105
114
55
135
99
165
109
120
130
189
56
124
138
126
94
69
91
105
69
178
55
106
139
132
37
55
104
127
86
93
106
37
69
138
87
164
163
74
55
58
138
111
122
67
110
37
144
93
77
92
67
99
119
96
110
104
79
67
146
55
83
105
126
126
99
127
135
105
130
88
140
177
92
86
92
152
126
92
144
97
139
107
55
105
93
55
107
127
164
139
79
92
122
103
109
37
139
91
102
91
92
104
118
87
144
72
89
122
126
55
74
105
127
67
67
117
73
97
165
89
92
119
144
122
86
119
124
104
146
69
152
37
120
37
146
37
67
162
108
92
67
77
109
119
138
103
171
119
101
139
55
110
92
67
127
55
122
67
118
92
92
105
128
37
152
104
74
122
75
105
86
78
123
58
138
108
137
126
149
139
80
93
180
110
103
105
37
179
104
138
129
126
110
109
86
37
156
95
55
103
37
180
92
142
114
171
92
199
77
109
99
130
105
37
92
152
56
168
124
77
98
128
58
72
104
92
148
111
138
138
110
127
144
77
123
37
104
103
110
132
138
104
119
110
67
104
139
92
110
132
139
110
130
104
91
109
92
139
105
79
122
91
86
55
69
84
86
55
178
111
75
92
103
56
110
81
130
122
103
58
146
106
105
98
122
110
110
122
92
93
105
160
56
139
154
100
112
83
123
94
105
56
126
142
93
92
139
87
126
104
165
79
77
110
84
77
55
129
122
105
144
114
144
134
110
122
146
122
88
99
105
67
127
86
92
132
148
93
81
99
65
103
132
56
119
114
111
119
37
123
92
103
110
132
178
110
92
107
131
127
110
146
77
56
37
91
93
111
111
55
74
67
141
178
139
110
92
93
144
69
56
109
167
134
139
105
98
105
92
122
67
123
93
119
122
128
58
119
55
99
104
56
126
37
58
58
139
92
91
180
67
148
180
111
178
128
168
127
139
55
55
111
79
91
55
146
105
77
138
92
110
37
74
139
128
139
124
178
169
146
110
56
146
105
55
105
104
132
122
92
92
134
87
67
124
110
169
128
79
79
107
138
75
86
92
110
151
75
140
105
86
178
105
132
55
67
91
55
130
105
136
158
56
92
55
139
79
112
91
69
55
92
91
122
128
122
69
104
100
106
92
112
55
84
118
119
110
126
110
83
86
126
69
163
92
126
139
127
160
123
110
119
178
105
55
146
138
126
131
88
111
67
122
136
171
124
126
69
105
56
114
99
37
55
91
158
67
178
163
55
92
105
56
113
110
58
67
37
55
140
84
110
134
37
103
122
97
93
109
105
122
131
75
114
94
93
37
95
169
92
100
110
111
122
164
115
169
138
92
177
152
134
92
110
79
126
92
111
139
110
144
92
106
121
138
75
180
101
102
69
92
126
128
146
139
55
138
92
86
135
110
132
84
127
117
111
163
93
146
37
93
119
58
123
134
56
99
111
118
132
55
84
104
56
169
95
112
99
111
131
163
92
122
142
126
110
122
110
67
56
86
78
107
125
127
110
114
144
87
102
89
110
86
74
55
122
92
77
119
103
118
55
126
126
109
105
91
67
92
93
37
152
111
105
91
118
104
98
138
126
152
120
124
79
104
103
134
56
146
93
138
104
105
142
56
79
67
126
122
124
93
105
123
98
112
92
138
79
119
58
168
58
138
137
37
55
182
56
110
91
178
79
58
146
37
37
98
86
77
86
56
119
104
140
126
128
93
55
58
55
69
109
92
140
55
81
55
75
148
67
127
93
84
163
126
103
122
168
37
67
105
67
105
110
158
107
146
105
169
109
105
58
109
91
122
92
107
132
69
69
146
56
122
55
97
119
92
74
96
56
152
105
92
122
169
104
126
138
84
120
110
122
179
56
122
88
139
138
95
110
142
55
128
58
93
115
127
122
92
171
86
55
92
152
138
109
69
111
105
101
110
91
86
93
93
111
122
114
104
122
79
86
122
78
93
137
104
122
122
127
105
111
123
167
92
103
126
128
102
106
122
110
67
84
122
55
84
124
56
117
144
98
140
119
55
100
168
144
118
86
130
58
109
107
111
105
105
91
123
86
138
124
79
110
105
110
92
76
55
139
163
178
69
91
37
86
122
110
197
126
104
92
101
83
123
55
114
109
67
93
126
37
98
122
118
131
128
126
91
146
55
105
136
134
126
58
120
105
68
105
65
104
105
97
111
55
105
164
126
128
56
67
37
162
178
91
55
122
152
109
127
56
58
103
75
105
108
129
127
112
136
58
168
127
136
83
69
107
58
128
58
138
124
138
138
109
109
92
68
138
131
55
111
69
108
79
134
58
169
56
110
123
104
93
92
140
104
152
123
138
132
119
55
91
126
146
128
138
68
126
92
97
139
123
117
92
152
126
104
138
109
111
140
136
178
75
171
121
91
104
55
92
144
55
81
182
105
171
105
69
67
126
67
102
111
118
83
105
97
182
119
144
55
55
178
122
139
128
110
74
146
105
37
145
92
107
67
56
55
178
69
126
77
74
122
178
92
100
110
126
92
134
106
109
101
123
37
92
171
152
169
100
104
105
92
178
57
124
129
169
178
139
144
126
92
189
144
68
65
141
93
138
123
56
56
100
136
55
144
122
138
93
74
105
67
168
92
80
120
178
74
78
55
110
104
128
109
56
135
124
79
163
117
139
109
114
37
68
178
112
83
92
123
119
67
97
144
55
139
55
104
93
92
122
130
122
169
108
88
92
104
138
91
56
119
92
75
67
119
79
144
92
162
92
180
110
178
110
126
86
122
104
99
99
123
110
138
120
140
91
58
114
146
105
128
37
37
99
129
77
111
144
113
122
122
58
109
92
97
58
74
105
122
92
86
99
124
152
132
101
105
178
86
69
138
103
104
122
92
67
126
128
127
80
92
139
105
58
128
117
99
140
119
141
72
119
115
93
122
99
162
107
128
144
178
86
56
77
142
139
109
107
124
69
189
55
126
131
93
152
58
110
92
140
67
67
89
123
138
180
139
55
119
81
88
103
111
124
110
92
148
55
152
122
84
91
110
41
105
67
67
114
92
104
122
56
92
152
122
138
93
165
122
110
107
92
89
37
79
119
127
138
105
92
103
91
56
127
139
55
152
98
105
123
152
122
122
92
89
84
152
110
92
93
97
58
148
122
37
111
77
105
131
100
122
92
105
89
111
91
103
138
99
127
146
132
144
107
108
105
55
93
58
122
84
145
128
110
178
104
92
158
136
105
97
91
139
55
93
131
188
163
37
76
117
92
110
92
110
138
105
103
92
188
75
105
101
110
107
105
86
127
132
127
105
99
146
122
75
134
98
171
92
144
103
148
93
119
79
105
55
146
180
55
92
67
109
105
93
126
134
165
139
135
55
92
55
111
75
141
79
146
105
92
92
105
67
111
104
138
110
139
134
171
56
67
148
146
122
148
86
152
55
92
139
138
95
37
142
92
55
105
138
113
75
138
92
144
146
122
93
132
122
122
37
126
99
122
122
148
178
131
83
69
126
92
139
110
153
56
64
138
104
127
126
110
67
67
56
138
140
75
92
163
178
55
67
83
55
148
146
92
180
84
118
92
127
169
124
55
98
144
79
92
126
144
146
145
69
103
126
55
77
110
86
111
129
122
127
75
92
126
56
126
120
56
107
126
97
178
58
93
92
122
103
138
104
124
101
86
67
37
93
178
92
178
98
37
75
67
55
138
138
160
126
131
67
89
92
56
145
56
92
83
137
105
55
56
178
152
105
88
126
106
104
118
55
146
148
67
75
102
55
58
136
122
55
134
141
128
105
67
84
107
163
67
106
152
127
144
178
77
127
92
124
111
111
104
101
55
92
86
114
178
126
100
97
122
111
55
109
110
86
93
79
127
86
122
124
69
55
139
84
119
87
110
89
95
128
178
122
92
92
92
119
58
81
130
127
55
97
37
77
55
110
99
122
105
92
99
169
122
107
107
144
127
192
138
169
97
110
69
126
110
122
56
58
110
104
92
134
105
152
55
104
37
92
129
93
123
148
110
92
86
127
135
146
105
110
92
109
110
122
180
109
122
105
118
55
104
144
138
106
146
77
55
189
122
92
116
106
105
105
105
139
92
79
92
86
152
139
165
124
92
120
138
99
126
122
55
79
127
140
84
134
122
110
163
123
127
103
171
110
128
126
139
139
123
126
104
130
122
110
91
149
110
67
105
169
67
128
93
114
99
107
127
103
79
138
92
67
146
87
93
92
146
109
69
75
129
93
138
162
55
122
126
144
110
131
135
114
140
72
91
100
138
93
56
110
139
77
104
178
67
107
92
178
144
77
68
67
104
152
111
178
110
110
126
93
108
56
169
56
68
55
119
158
92
144
164
106
86
138
67
80
127
55
124
100
74
132
91
124
140
100
119
109
123
122
58
138
128
67
92
144
67
140
139
92
37
110
105
55
128
144
37
56
123
99
92
128
144
112
55
69
56
75
86
138
55
67
137
105
105
93
37
146
55
75
188
122
37
134
128
55
122
128
91
122
91
128
122
97
56
72
152
92
113
158
117
92
138
92
110
91
124
104
86
86
92
144
92
152
138
146
93
79
56
102
148
162
138
99
79
178
120
127
77
92
101
119
122
113
123
123
107
127
92
127
109
56
86
68
58
37
87
74
92
77
105
168
130
147
93
139
105
168
126
132
55
83
110
112
128
148
127
126
122
37
86
119
84
146
55
140
126
124
101
113
99
138
127
67
178
152
56
126
79
110
55
110
128
106
138
75
69
148
151
158
74
93
110
106
178
80
55
58
69
69
74
57
91
67
86
112
110
110
103
67
79
138
55
180
118
139
86
98
152
142
74
152
58
69
110
123
178
104
146
67
77
97
118
126
91
138
122
93
126
127
67
123
101
126
117
129
111
144
138
92
77
92
126
86
58
92
115
101
88
126
107
68
138
96
137
122
122
105
100
77
105
122
119
104
92
132
92
110
110
122
110
124
55
56
99
79
92
114
86
110
55
123
106
92
55
98
55
103
139
104
125
101
93
91
110
68
122
55
134
139
103
92
97
75
92
122
58
69
93
56
110
110
58
122
114
123
122
97
55
122
152
99
67
67
55
69
122
126
110
119
105
122
178
103
140
109
94
86
105
56
131
134
127
107
77
83
126
55
117
136
178
86
55
55
122
152
105
93
97
82
126
107
122
105
127
171
123
109
55
110
152
102
152
122
37
188
67
93
106
110
126
145
91
105
92
146
74
105
56
56
128
138
168
112
67
178
67
122
144
120
55
91
108
83
126
136
92
122
104
110
56
58
56
168
109
139
84
101
86
104
108
138
111
114
131
98
152
79
123
122
138
55
110
140
69
168
127
122
151
105
122
83
92
55
103
110
110
104
145
58
105
99
152
178
110
144
105
126
67
55
105
122
147
68
77
169
92
58
177
109
112
152
92
91
134
122
123
138
77
138
74
56
144
126
93
93
110
58
91
88
69
138
110
67
110
157
69
110
104
139
55
118
146
95
136
56
99
120
77
149
108
56
179
122
81
142
140
122
74
37
123
120
80
56
152
68
137
123
86
92
79
128
178
126
105
58
107
164
88
139
131
130
122
139
86
127
98
146
122
109
144
109
126
98
75
138
144
105
67
105
58
158
93
148
128
92
58
81
134
92
81
92
109
74
158
162
139
138
67
55
146
67
154
91
105
134
122
67
55
92
139
122
58
71
139
148
122
110
103
67
98
124
103
104
122
67
110
55
126
58
107
142
55
111
98
55
107
122
139
110
103
146
55
58
67
127
120
109
55
169
104
127
120
92
110
122
158
126
126
86
134
106
124
86
74
169
67
165
180
55
58
86
92
146
122
110
126
111
105
126
56
110
138
91
91
56
110
74
93
69
105
139
92
93
37
110
144
83
69
105
147
110
101
126
55
126
126
105
149
122
110
138
128
92
104
110
55
138
122
56
111
131
56
110
92
111
126
79
127
144
138
103
144
122
64
138
92
58
138
99
123
139
128
110
119
37
132
67
127
92
128
110
92
138
92
158
126
126
99
56
37
122
122
162
105
85
152
83
104
55
67
110
145
99
110
167
69
178
126
115
123
109
137
75
55
178
138
94
58
110
93
109
119
123
146
124
131
56
189
122
74
105
105
123
115
110
55
69
105
107
105
138
122
104
113
55
145
152
67
105
92
67
138
105
69
80
127
79
171
104
169
123
77
92
122
110
111
122
37
144
136
162
137
192
145
142
144
122
178
140
127
124
138
128
144
127
111
129
110
104
115
112
178
131
55
119
99
55
101
122
140
119
139
127
167
103
120
88
58
117
152
111
86
132
178
139
75
69
147
169
56
84
160
138
123
67
56
178
77
122
137
67
122
92
86
75
138
160
37
55
92
164
110
138
88
158
114
105
118
79
146
112
110
111
83
84
104
67
156
171
104
122
119
105
55
124
105
163
138
56
92
86
136
83
121
168
92
69
110
111
126
105
138
122
126
178
68
95
138
127
92
178
165
93
105
152
67
56
105
104
94
104
105
92
139
145
138
105
92
128
178
122
55
126
86
93
77
132
126
92
67
91
105
132
169
89
139
110
139
138
77
86
109
109
105
75
91
55
126
127
92
75
55
123
55
122
126
138
139
77
122
139
92
144
55
127
55
139
171
152
178
37
135
105
55
138
86
105
134
152
110
79
58
148
67
178
126
104
163
119
146
55
55
104
130
158
93
84
139
69
92
104
99
106
112
67
93
128
178
119
100
74
58
92
124
55
169
87
178
92
126
89
92
97
127
105
145
140
115
136
113
141
110
121
168
84
104
122
55
107
118
115
169
178
107
104
67
136
125
100
138
119
91
104
58
92
130
127
125
110
79
122
92
105
80
109
93
126
104
104
55
105
132
138
92
69
92
92
178
37
128
146
74
114
37
126
139
111
37
80
110
91
80
110
55
137
110
144
152
105
93
127
144
105
69
103
67
58
165
122
134
93
138
86
112
138
107
69
126
105
144
127
169
106
105
131
107
144
140
129
100
93
182
83
126
105
128
122
110
162
99
110
168
55
110
58
119
89
105
96
110
84
126
86
92
93
105
93
87
139
122
167
75
92
110
126
55
104
110
55
68
124
67
120
86
169
109
152
123
144
110
97
86
92
171
126
97
92
83
126
91
58
126
122
105
58
134
126
178
129
79
128
165
69
77
110
69
101
126
108
103
99
91
55
104
142
104
69
109
92
91
126
92
138
118
110
104
77
92
99
107
98
140
122
144
67
92
88
144
144
105
55
128
123
110
128
169
138
111
55
139
122
138
74
122
69
92
128
110
131
146
77
83
56
104
123
122
122
126
119
111
117
37
127
110
110
92
138
178
58
107
122
138
55
77
110
75
148
134
105
146
86
122
139
110
81
92
58
127
129
55
55
75
99
144
56
67
104
128
111
83
105
122
152
119
98
127
100
146
67
93
165
110
92
67
58
139
139
79
55
103
37
148
152
78
110
105
56
122
77
138
88
98
88
118
127
152
165
124
89
162
69
76
110
123
88
95
114
144
126
92
67
111
55
109
110
98
37
152
158
180
104
165
130
127
112
110
58
56
139
110
67
74
126
143
111
107
104
122
92
105
92
144
127
92
104
104
77
104
111
67
55
119
138
128
92
139
119
72
88
105
55
104
171
124
171
145
145
37
139
92
126
139
55
69
111
162
130
37
138
110
164
126
55
69
148
108
127
139
105
92
117
126
142
79
134
56
124
120
75
138
69
58
56
92
109
144
104
92
106
146
92
92
110
110
78
67
122
69
105
104
55
91
146
99
110
127
104
55
139
103
124
105
126
126
92
140
99
100
127
56
92
128
104
138
110
67
106
110
93
56
109
92
119
102
115
55
169
128
142
92
110
108
99
81
37
92
55
56
105
110
102
139
144
123
103
117
110
92
134
105
133
139
56
106
74
144
56
122
134
127
99
86
146
128
152
105
99
69
74
168
56
58
180
91
67
127
58
114
105
171
122
92
134
91
74
111
105
58
102
127
138
55
122
81
92
58
79
139
58
110
55
138
108
138
122
128
103
37
58
108
58
55
92
137
136
169
55
122
122
37
126
122
77
111
135
86
104
56
79
105
92
97
55
126
102
92
105
110
139
92
84
74
55
55
140
119
135
55
77
105
37
105
56
91
91
122
55
144
107
74
110
122
138
93
58
119
67
122
69
67
131
58
140
93
138
104
126
56
126
79
111
167
126
152
126
164
126
106
154
55
126
146
77
122
92
131
109
128
91
88
120
92
55
67
91
92
109
58
144
95
126
110
144
92
141
171
138
138
110
139
131
146
37
92
140
37
109
110
108
79
119
178
169
109
178
113
136
93
92
107
178
134
128
142
37
67
104
146
104
131
58
169
105
110
114
138
55
141
126
117
122
110
109
118
73
109
178
77
55
178
139
169
140
122
91
72
115
99
122
131
169
126
92
68
92
124
92
126
92
104
163
122
105
105
126
56
158
127
69
138
118
111
102
69
56
55
37
169
111
132
55
92
56
56
177
92
100
123
117
55
152
56
171
58
109
97
91
79
86
128
103
79
67
107
132
111
122
37
67
145
144
127
99
55
126
168
37
120
129
122
122
105
124
69
99
126
92
126
123
55
58
122
56
97
100
109
55
127
104
138
111
104
89
134
77
92
119
75
69
55
119
136
123
126
56
127
97
107
144
105
69
37
77
118
144
96
91
89
163
69
110
127
92
104
178
92
92
77
128
122
110
122
74
134
67
56
112
55
99
111
119
109
139
74
103
84
122
104
148
67
144
94
92
132
92
67
56
128
128
123
138
55
119
105
86
134
126
92
152
58
108
148
67
123
58
91
69
123
55
126
92
122
79
55
139
160
139
122
128
137
126
83
132
55
37
111
37
138
122
91
126
97
128
67
68
56
104
93
144
92
89
105
83
105
92
167
128
138
138
74
146
114
142
56
140
83
138
178
37
145
122
91
111
117
93
105
110
111
93
92
118
69
75
55
84
126
119
99
109
96
105
67
171
92
139
92
152
145
139
136
106
86
74
122
178
132
114
122
140
138
138
134
144
75
122
127
168
127
37
67
127
105
88
126
126
160
127
107
171
138
144
126
91
178
127
37
122
152
132
111
151
110
92
92
77
105
126
101
92
100
123
93
110
128
74
146
55
83
110
110
91
74
69
37
92
122
92
152
138
56
151
116
169
109
144
105
98
67
77
122
155
152
123
123
137
131
118
77
56
77
67
93
92
78
134
139
99
105
169
139
122
165
126
107
122
131
106
120
139
160
163
69
140
89
138
104
127
37
126
93
103
140
98
79
134
67
139
117
56
123
92
111
128
92
68
67
56
126
126
99
127
110
84
58
107
122
122
163
92
55
69
92
89
104
74
132
138
77
110
103
124
138
93
127
105
124
55
105
138
106
146
110
55
93
73
163
95
156
67
157
37
131
124
110
110
93
74
126
122
74
128
114
41
139
126
92
122
68
169
92
119
128
92
139
101
104
77
67
138
104
126
96
124
104
56
105
102
138
93
126
138
137
105
37
128
92
74
103
111
109
178
55
144
163
79
58
104
93
123
110
152
93
105
171
127
92
98
125
126
55
56
69
139
127
114
58
128
110
58
138
92
93
67
37
152
182
92
126
127
67
93
93
105
92
86
93
92
93
103
111
78
123
104
95
122
88
139
67
105
138
110
92
110
126
37
103
92
58
134
122
128
146
99
142
169
107
98
118
122
92
92
37
104
126
152
165
171
67
92
152
102
75
93
105
122
92
178
79
93
69
139
130
163
128
56
79
110
92
128
55
126
79
144
37
84
123
178
105
164
74
112
67
146
92
110
134
103
67
56
152
103
61
92
86
127
91
138
77
134
167
55
112
92
131
132
93
130
126
55
37
107
105
136
100
69
86
79
146
128
105
138
122
122
122
146
164
56
37
126
79
105
138
127
55
118
93
178
55
55
92
110
116
131
74
122
126
55
132
123
122
110
68
100
120
110
127
106
127
142
74
98
79
178
79
140
103
55
92
126
105
74
67
92
92
131
144
77
68
92
122
152
113
37
110
158
56
126
138
169
143
93
92
105
82
99
55
93
55
85
92
88
86
91
89
55
162
178
92
124
148
93
77
110
132
126
74
37
103
92
67
138
55
131
111
130
55
146
68
105
58
55
120
138
86
117
110
91
92
92
105
188
110
119
77
77
102
105
92
99
152
123
146
127
123
86
68
144
110
152
58
105
115
144
111
104
169
93
56
140
138
122
130
146
129
67
144
122
105
110
119
102
94
122
139
93
95
104
69
158
75
114
117
107
67
126
98
110
127
69
169
127
134
92
178
132
104
67
67
104
148
92
122
126
126
92
37
88
128
104
132
74
110
122
110
86
134
139
104
111
115
148
86
103
93
68
128
111
89
37
58
86
105
100
123
122
138
95
84
152
120
58
103
128
128
37
169
75
178
127
132
138
56
138
126
180
102
165
148
37
146
97
112
117
92
136
129
124
127
103
171
128
67
131
79
105
93
79
113
138
86
67
132
148
128
67
126
56
122
148
146
139
137
145
67
178
92
56
92
77
122
138
140
58
122
178
80
55
99
92
91
93
152
68
67
75
91
110
86
110
55
171
126
152
126
93
83
74
117
86
55
137
58
132
102
55
122
138
134
58
119
144
102
99
74
110
92
104
58
120
55
168
128
55
119
110
126
110
93
122
163
104
104
127
110
110
178
152
109
75
119
178
124
146
127
87
104
171
111
105
111
55
117
67
104
56
146
55
178
55
122
118
67
120
126
94
122
128
75
110
67
91
132
91
119
102
58
178
140
165
122
111
77
111
56
104
178
127
110
102
122
128
178
110
138
99
168
103
146
55
123
69
139
92
122
69
152
110
138
124
144
122
86
118
56
92
127
109
104
110
126
126
55
119
140
56
126
148
56
158
138
104
55
109
93
105
122
139
144
67
122
56
97
178
178
134
99
122
178
55
107
56
92
37
101
106
56
134
67
94
55
128
37
75
110
37
122
110
138
126
81
58
74
110
109
171
107
152
110
122
127
99
103
130
83
103
139
56
55
135
104
168
55
123
86
80
127
146
111
107
55
158
56
146
178
110
132
67
108
138
55
119
169
98
94
122
127
122
104
126
165
144
113
96
122
109
169
104
118
74
105
122
126
146
105
146
104
67
122
126
142
171
104
69
97
79
104
128
99
56
136
126
58
169
164
56
56
105
58
89
77
178
37
37
67
103
110
171
91
138
180
144
92
162
58
72
109
110
105
91
128
105
109
55
115
92
86
148
103
103
119
142
56
180
92
127
126
93
92
105
178
91
92
107
171
119
89
69
75
86
93
110
105
105
138
178
152
58
55
93
93
92
79
110
146
58
104
107
140
105
92
126
95
139
108
138
92
98
140
75
110
92
69
86
131
98
92
103
138
58
122
122
138
67
120
178
132
75
123
105
178
99
105
100
102
148
139
152
110
104
104
138
69
104
163
178
91
123
69
77
92
104
79
139
124
122
75
178
37
100
92
107
138
106
114
95
56
137
105
105
93
122
99
104
126
92
67
56
126
160
67
98
139
122
138
56
148
93
152
104
138
122
127
123
93
158
106
92
179
144
92
67
92
64
110
105
92
104
55
101
126
105
120
111
105
139
55
104
138
37
134
178
55
138
107
132
93
80
178
110
104
55
67
114
120
124
105
160
93
92
107
110
126
126
91
131
158
138
119
56
109
167
122
92
93
110
93
164
105
56
109
146
56
127
56
93
109
139
105
108
84
138
37
93
126
67
79
55
122
110
92
110
128
75
75
55
37
88
58
37
93
105
122
126
130
131
146
175
92
104
105
104
105
107
178
139
114
138
99
92
110
138
55
152
165
110
122
179
127
68
139
117
92
79
91
67
58
136
111
86
55
104
138
178
127
56
92
101
69
106
109
93
93
55
99
114
100
94
146
146
152
92
138
139
156
152
37
67
111
152
138
56
73
134
92
178
138
122
171
105
160
81
72
122
126
126
104
136
138
114
122
178
122
68
107
67
156
93
64
56
139
180
92
55
110
93
144
75
122
79
58
112
126
100
67
197
92
126
122
74
130
56
146
146
164
105
58
109
100
55
67
55
109
92
127
104
104
68
93
75
105
142
83
132
105
140
140
110
55
132
105
105
110
168
123
37
105
119
91
86
109
92
92
105
92
79
105
128
75
110
91
92
126
110
120
92
122
74
110
102
103
56
56
92
86
104
119
111
134
86
58
126
139
92
92
93
171
163
158
112
92
92
67
105
110
93
122
115
92
58
178
111
68
117
126
124
91
69
104
120
77
138
55
123
139
122
101
92
55
123
124
69
105
84
88
92
69
110
199
168
126
119
122
122
110
92
119
105
146
128
101
110
141
95
122
37
37
107
77
86
93
126
127
111
139
168
128
138
56
95
56
105
114
114
138
80
180
110
55
152
104
122
104
97
127
55
55
91
92
105
91
144
138
105
138
79
79
69
55
104
110
138
67
126
178
56
122
122
67
93
119
37
140
93
156
123
83
103
110
136
101
122
37
105
163
97
138
104
92
119
67
102
164
55
144
128
69
58
77
151
83
83
138
121
126
182
104
199
93
130
169
127
122
104
105
67
55
127
129
98
148
92
111
109
69
137
37
37
148
105
92
55
55
122
138
142
138
138
148
58
114
130
107
92
114
169
55
55
58
92
91
128
55
110
138
56
98
55
151
67
92
93
142
91
77
58
106
122
180
110
110
93
126
92
97
139
86
91
79
55
105
127
55
37
103
92
37
110
119
86
56
100
37
134
122
92
132
92
55
115
92
91
139
111
91
55
86
137
105
139
123
123
152
109
55
110
139
165
92
114
121
105
124
55
103
56
138
55
110
162
122
111
148
94
128
105
77
126
92
55
107
138
55
145
77
55
148
144
107
93
169
138
168
92
37
128
67
56
92
126
55
69
118
79
92
138
122
67
146
122
111
111
56
68
92
138
145
92
155
178
92
75
106
100
126
105
139
105
58
105
146
58
95
111
139
100
58
104
74
148
122
56
77
105
137
80
152
124
83
139
55
92
152
122
93
112
64
99
126
92
58
152
111
178
67
37
140
134
146
69
169
79
169
152
122
107
144
67
104
131
83
111
109
108
92
89
93
138
122
162
124
86
109
139
111
138
56
139
163
169
138
89
55
152
103
104
92
88
111
104
169
105
55
55
144
144
138
110
119
56
58
86
121
119
81
99
107
144
180
67
67
181
110
139
75
68
93
102
146
139
132
55
93
110
69
106
55
139
92
111
111
79
158
122
146
110
127
67
67
105
130
122
128
101
129
139
139
98
67
126
140
139
110
152
69
128
74
55
178
92
91
180
178
165
105
180
134
152
93
127
119
104
128
158
199
84
58
122
139
67
134
153
67
67
93
111
105
79
67
105
56
119
110
56
122
92
178
56
107
111
84
92
169
93
126
107
122
113
105
92
55
77
126
105
110
131
86
140
126
126
102
99
104
67
167
77
144
128
138
134
91
119
67
139
158
67
122
56
138
58
68
110
139
122
123
67
130
78
144
118
97
104
69
126
67
108
144
81
55
178
79
138
122
77
122
78
105
169
105
92
77
126
128
111
146
105
75
55
144
55
94
123
122
110
128
148
98
146
105
55
114
56
146
67
110
58
92
125
107
107
93
92
67
67
55
105
56
56
178
91
105
109
138
91
93
103
146
137
86
55
56
93
104
124
105
92
138
67
92
139
140
178
56
97
98
105
169
124
58
138
138
126
110
110
124
56
164
104
112
79
91
158
126
138
105
136
105
127
120
139
140
138
122
122
126
178
141
140
92
138
139
81
104
134
67
55
126
123
68
109
112
152
37
139
104
79
127
110
148
95
67
95
105
93
104
55
123
100
138
127
140
122
111
67
104
124
152
105
105
96
67
67
145
92
127
79
152
92
68
118
126
127
119
92
92
110
148
140
126
117
55
93
152
124
37
122
158
134
110
101
58
105
160
92
56
69
58
74
109
122
126
69
139
152
105
106
95
119
92
128
146
99
58
104
123
67
104
139
92
89
56
164
119
105
104
134
79
102
178
146
84
93
126
167
86
110
140
105
146
127
67
67
77
105
148
37
137
119
110
144
145
74
69
92
110
55
120
105
92
139
128
37
77
124
145
122
178
140
86
56
126
110
86
144
109
99
122
164
86
135
98
127
91
67
37
112
110
84
92
146
101
122
148
122
99
146
127
69
77
152
111
69
122
123
110
145
119
105
78
69
169
94
119
67
75
69
56
55
122
110
77
124
92
105
104
107
110
105
128
138
126
110
94
98
110
58
107
97
171
69
92
75
136
37
131
84
93
138
128
79
153
114
158
136
101
163
37
107
93
56
100
74
93
105
105
122
110
67
117
139
152
67
120
122
126
55
147
138
68
93
128
93
126
110
100
146
178
124
137
127
118
67
156
57
144
126
119
178
107
145
105
93
67
168
126
182
163
96
122
110
130
110
69
139
56
81
140
130
100
123
144
118
107
99
130
134
83
156
69
111
105
67
56
98
55
67
107
119
139
75
127
127
107
79
124
79
105
119
55
55
91
140
92
107
58
110
178
77
99
55
123
126
178
105
105
69
67
101
92
126
139
92
93
104
111
86
55
93
92
119
58
92
130
126
84
111
152
131
122
164
107
139
92
80
106
138
55
122
147
98
110
122
99
101
67
126
165
178
37
105
110
79
146
111
138
37
105
103
83
100
105
129
58
105
110
117
55
93
111
67
178
37
110
126
99
76
152
77
152
94
56
99
110
137
93
111
67
69
111
139
74
102
139
78
56
81
127
117
104
110
93
118
132
138
164
93
97
138
139
105
126
99
171
58
67
89
122
126
105
98
139
37
55
74
107
126
144
126
92
178
119
152
131
112
110
158
137
55
55
127
103
107
37
146
111
55
99
104
138
91
139
67
74
122
111
119
136
92
97
138
74
105
67
126
55
92
55
91
123
92
110
67
126
110
118
109
145
122
92
67
77
74
146
152
122
158
110
139
55
107
95
105
110
178
152
134
105
55
92
169
92
146
67
119
84
106
37
37
99
86
128
163
67
103
99
178
119
103
75
105
152
109
55
167
138
109
77
107
128
138
102
106
92
138
144
79
86
77
91
67
144
74
92
122
105
128
93
73
145
130
110
68
110
127
117
105
67
58
135
99
92
67
151
75
37
105
92
103
130
92
126
126
92
79
123
178
138
139
67
154
92
105
124
92
119
55
91
123
102
93
169
105
91
91
92
104
129
84
58
74
104
86
106
109
92
92
84
97
105
169
104
110
74
81
138
91
126
158
126
122
74
104
138
79
105
105
67
84
67
89
86
91
128
123
171
114
95
74
98
110
131
98
92
105
138
164
117
56
69
103
123
116
55
126
135
110
127
123
92
105
92
122
79
101
144
110
56
56
37
58
105
126
58
126
122
77
92
92
91
37
55
109
37
138
146
75
55
80
158
146
126
105
93
92
144
122
103
146
55
163
127
83
119
92
93
98
122
138
86
77
138
77
152
105
126
127
109
91
114
122
154
56
109
69
67
120
105
122
122
142
105
56
75
55
93
134
107
122
92
79
178
110
56
56
74
110
126
139
56
132
136
137
67
69
89
79
134
67
122
136
122
92
111
127
158
118
138
152
86
138
134
79
128
75
126
136
132
104
55
55
146
98
169
102
68
178
178
126
136
122
77
139
136
37
93
158
136
138
103
131
79
55
99
110
55
129
110
105
126
117
104
56
123
136
110
108
110
99
79
113
93
83
178
128
120
97
138
119
56
104
99
80
110
138
131
92
104
37
122
106
138
98
160
122
111
58
67
55
88
163
171
69
118
93
119
119
127
128
92
92
79
134
79
122
112
111
126
123
77
37
144
138
138
145
109
134
55
93
140
92
93
75
67
127
110
69
138
122
86
37
162
55
56
69
158
58
101
104
91
123
91
107
93
105
178
92
111
81
127
73
80
74
67
67
56
93
122
108
138
67
99
105
101
92
126
100
93
138
138
92
74
100
55
58
144
78
55
127
68
98
74
119
127
92
67
56
147
99
119
92
138
105
75
58
123
86
178
127
99
56
144
79
37
58
126
105
146
86
103
136
88
110
122
91
144
110
95
132
127
102
83
58
110
144
69
75
92
123
126
100
130
58
83
128
126
86
98
146
138
92
126
135
92
112
111
93
126
110
83
67
126
109
138
169
37
37
92
86
109
58
92
134
93
139
109
138
140
127
67
132
157
107
56
92
86
104
134
146
110
146
127
93
107
113
92
138
103
128
126
109
92
56
138
146
156
93
92
110
110
110
75
67
126
134
93
149
84
114
92
149
55
67
122
122
105
112
104
101
55
55
146
83
105
58
55
126
109
138
146
99
110
127
139
86
104
91
122
67
107
72
95
169
105
109
127
110
99
122
58
86
110
122
122
101
122
69
56
99
122
101
93
104
138
103
102
55
182
91
56
104
55
134
111
92
58
144
89
55
169
139
122
91
91
148
178
146
122
105
92
160
178
68
92
110
92
77
92
109
75
106
58
164
152
100
126
56
93
139
134
128
92
171
128
128
140
93
103
126
92
80
160
37
92
123
93
121
126
120
56
126
126
104
93
110
88
69
120
122
123
136
83
79
122
128
103
91
178
137
74
113
55
162
56
92
98
128
99
92
126
67
92
79
134
104
139
55
128
123
67
144
58
122
124
142
122
122
92
79
112
103
79
110
138
140
136
86
89
55
169
127
152
84
93
93
99
91
37
86
110
69
110
126
92
126
126
131
107
140
55
122
105
122
167
138
75
67
120
126
92
99
130
144
146
139
122
131
162
131
118
105
126
86
105
127
92
74
132
58
103
55
77
75
126
138
101
56
103
58
56
136
139
127
37
101
106
119
105
123
126
94
105
178
55
92
67
58
146
67
146
152
126
79
92
124
123
91
99
107
55
146
126
111
146
86
74
74
144
77
105
87
105
119
55
104
128
55
103
126
139
92
158
126
146
152
99
137
144
112
55
56
122
55
117
105
126
178
111
163
127
122
162
104
126
79
67
79
55
124
69
122
122
126
92
121
104
144
58
92
105
105
136
126
104
138
171
104
122
127
55
92
152
75
99
105
55
105
138
105
37
122
119
92
75
37
37
138
123
92
105
106
93
58
138
99
110
137
105
120
92
122
111
92
122
180
112
128
122
93
122
56
55
109
148
107
138
111
55
104
126
126
110
171
104
55
105
93
86
67
122
138
169
104
148
126
56
146
139
67
56
110
99
120
115
79
119
56
145
86
55
122
92
37
67
93
67
91
96
110
55
146
55
107
89
127
56
110
55
178
171
140
115
123
168
55
103
55
139
92
103
180
81
148
122
126
122
102
105
146
67
127
118
56
123
105
55
94
138
104
67
132
94
72
56
105
139
104
91
109
107
106
122
106
158
110
122
97
144
37
69
77
77
139
67
69
105
126
78
88
93
169
126
135
138
56
111
55
169
86
122
101
104
74
86
127
97
139
127
103
69
93
120
105
120
69
169
67
97
86
109
160
84
138
121
126
41
134
88
91
83
122
55
75
197
56
138
55
122
137
98
37
107
105
114
123
58
169
158
91
109
67
92
58
93
123
152
140
110
103
125
103
86
58
162
122
132
99
68
169
86
122
37
128
111
110
123
104
110
79
79
92
67
136
126
100
122
112
132
178
120
122
55
122
83
180
86
146
111
99
122
92
107
128
105
142
55
127
146
92
91
86
126
146
77
110
101
130
138
75
55
92
92
104
119
160
58
127
89
92
180
41
131
91
91
138
91
151
56
91
119
122
111
109
122
86
93
119
98
56
99
83
107
92
171
67
55
110
92
152
110
74
127
110
55
126
146
122
145
67
138
93
96
108
105
105
110
140
199
160
110
131
91
88
93
69
37
56
55
122
95
127
144
109
122
134
110
126
55
146
67
103
126
137
83
128
111
108
106
144
110
109
100
103
122
74
139
127
180
130
124
110
158
105
104
126
117
101
120
169
122
125
105
91
146
79
103
126
104
58
92
93
146
37
91
146
126
178
55
138
92
162
92
67
37
109
104
130
58
115
128
144
67
110
122
68
105
83
104
92
55
146
100
67
109
130
188
67
101
140
119
142
122
75
56
123
104
188
69
122
86
127
139
69
118
131
88
67
92
144
128
106
178
93
134
123
104
55
146
105
99
89
56
124
93
100
104
122
86
151
109
105
122
67
92
110
178
104
37
74
67
98
152
37
110
126
110
110
56
131
92
103
179
122
122
138
152
102
152
152
146
120
93
105
123
139
138
80
104
67
110
55
138
37
109
144
85
92
55
37
55
148
92
55
110
139
146
101
74
111
99
126
99
94
122
89
107
169
103
89
67
110
74
122
126
127
109
109
56
160
110
58
107
102
56
93
104
104
37
122
110
92
126
58
122
119
114
92
105
105
55
107
56
135
139
105
58
108
98
104
55
93
120
114
134
126
86
71
126
92
86
107
86
93
141
67
144
104
132
92
126
107
67
124
37
140
145
126
69
94
105
99
144
92
97
169
98
55
122
144
124
92
88
104
127
92
126
144
163
107
104
144
131
55
109
126
122
122
104
163
92
67
55
123
67
99
128
103
121
103
55
55
144
55
126
138
138
93
152
56
67
119
37
111
56
110
56
104
178
104
131
110
55
160
138
99
86
106
69
128
104
131
55
104
140
152
105
107
169
140
111
152
102
103
152
111
132
99
111
126
58
55
93
58
111
137
92
122
110
122
55
55
128
37
55
56
144
99
146
92
109
126
55
122
96
96
126
152
138
92
124
145
105
120
74
139
139
91
67
105
114
92
168
144
120
68
110
109
130
37
91
169
178
122
79
84
97
158
69
79
92
107
110
91
91
178
138
92
95
126
99
110
126
135
98
85
91
168
37
122
134
171
80
99
114
163
128
160
105
55
138
110
152
98
138
110
92
103
111
67
110
126
171
128
102
122
75
162
69
119
67
67
122
86
122
58
135
105
158
92
103
112
58
128
104
104
134
114
93
58
56
92
169
164
128
56
107
91
104
69
146
58
139
98
69
55
139
136
123
122
37
119
145
127
74
69
130
132
146
55
75
111
110
83
93
92
126
79
58
69
79
93
55
126
105
79
74
93
124
154
152
139
178
79
37
69
79
152
105
110
89
126
128
103
37
130
37
92
75
128
105
92
58
99
122
122
88
111
69
138
105
114
122
112
122
79
152
104
37
178
86
104
92
126
67
158
112
100
58
56
69
119
87
122
67
103
75
148
128
122
122
89
169
127
160
92
123
93
91
134
92
100
92
134
138
74
122
67
92
122
55
92
126
137
126
138
55
169
88
124
56
95
109
119
144
110
92
92
125
93
144
131
110
118
79
56
109
58
139
108
110
81
127
120
86
139
119
131
67
149
146
126
67
88
55
148
148
109
111
169
98
111
83
148
55
138
178
55
84
98
119
107
55
125
126
178
128
126
122
121
107
58
111
140
126
112
37
142
110
178
128
79
128
93
88
158
169
126
67
56
107
138
168
115
134
79
99
67
120
93
100
91
112
105
122
109
138
92
138
99
160
126
140
100
92
110
178
86
103
105
92
120
106
152
67
67
58
122
69
74
78
88
88
55
128
111
118
126
58
178
111
144
64
83
120
152
105
37
104
92
137
138
111
118
92
134
37
86
178
111
100
107
119
56
168
92
171
105
122
105
127
79
69
171
105
168
109
138
86
110
146
118
37
156
55
37
89
126
134
56
128
122
91
93
139
167
91
93
94
83
127
67
92
55
110
79
105
92
105
144
79
93
152
91
58
168
93
120
55
103
124
156
122
56
146
98
86
122
122
93
55
122
134
119
149
132
92
56
168
93
122
106
88
67
56
77
141
105
104
146
104
105
107
119
131
144
92
127
92
104
110
69
93
37
69
106
109
79
92
123
137
145
105
110
79
55
69
55
128
37
88
114
110
92
92
124
140
165
158
110
64
110
92
123
105
92
139
146
123
178
86
91
122
146
144
126
146
67
37
165
111
109
101
86
124
148
122
110
103
122
86
55
97
152
58
148
56
95
92
139
119
67
93
152
56
90
97
146
141
126
111
101
142
144
139
67
74
58
138
104
123
79
109
134
93
77
56
152
109
99
93
152
104
123
104
105
74
84
164
130
120
180
152
55
55
109
105
55
122
152
152
152
128
143
122
144
167
95
76
92
127
91
109
69
138
91
120
103
132
91
101
92
84
92
139
178
69
105
112
102
158
75
74
92
115
139
169
84
145
123
109
178
104
144
91
128
140
127
110
148
110
55
56
138
92
74
152
132
92
114
105
126
110
139
112
137
69
113
104
140
67
92
110
152
146
55
93
110
93
140
149
68
84
55
92
92
67
79
83
124
99
126
110
79
127
108
74
110
105
67
126
104
127
68
122
108
55
56
101
105
111
134
126
75
104
67
56
67
110
83
58
111
69
134
126
122
132
104
69
67
108
128
89
178
130
119
92
139
116
139
130
86
128
83
93
110
69
55
84
55
103
138
93
138
81
140
89
126
67
126
124
72
69
122
109
92
95
110
101
103
144
130
123
93
69
104
69
56
110
37
96
126
134
128
144
56
110
92
92
58
108
86
37
55
77
86
178
122
92
122
141
93
127
55
105
92
107
127
37
92
67
107
56
134
37
92
171
79
128
79
77
91
122
105
138
146
126
92
130
131
110
144
146
37
58
104
127
99
139
152
37
104
93
110
103
58
152
56
77
86
102
37
55
67
95
58
93
132
134
111
122
69
131
104
144
92
86
69
74
146
55
105
93
126
97
67
92
104
139
92
58
55
109
69
138
138
120
89
138
105
67
144
130
110
104
67
104
79
69
119
79
144
67
110
110
92
91
91
136
135
140
140
91
138
110
104
105
93
152
92
55
55
67
131
55
56
98
55
144
79
79
110
127
128
97
37
92
109
93
104
127
93
67
86
103
55
126
122
67
122
126
178
146
92
146
56
139
69
180
104
86
83
92
86
134
55
188
122
92
180
55
123
92
120
122
138
119
84
74
79
199
111
104
144
126
126
127
132
55
111
156
103
119
56
118
104
118
126
74
92
111
55
127
127
83
83
86
100
146
169
56
67
111
83
148
144
88
105
129
126
55
124
79
112
128
67
131
134
92
111
137
133
105
111
110
84
114
135
56
79
126
92
100
58
74
69
56
87
148
148
37
75
138
93
103
58
138
89
135
138
110
178
142
128
105
69
110
37
177
55
55
152
91
105
92
74
74
55
143
55
67
109
178
119
126
122
97
178
123
99
56
139
104
101
122
122
86
163
56
178
99
111
107
91
79
55
110
92
146
123
92
92
128
139
110
134
107
119
130
144
69
114
122
141
67
95
77
126
110
104
164
146
101
112
124
56
156
109
136
86
110
138
138
92
146
140
144
144
148
91
55
122
58
55
77
92
126
99
103
67
165
117
139
105
92
111
86
79
55
111
56
92
55
122
86
37
126
126
86
99
158
58
79
93
136
105
91
124
55
126
152
74
152
56
92
93
134
56
104
55
146
110
135
128
126
169
106
128
164
129
140
95
163
74
138
105
132
91
146
97
152
56
136
137
123
37
67
105
105
110
67
87
86
117
84
125
109
92
105
67
152
97
122
110
126
99
136
93
92
103
131
75
37
110
111
126
55
55
123
75
144
114
92
80
126
107
110
110
92
102
162
126
126
171
138
72
91
74
160
122
104
178
126
105
110
128
69
134
164
79
55
122
120
105
103
148
158
126
139
56
140
55
67
104
104
92
122
56
69
74
126
126
138
88
74
122
122
92
93
55
92
92
105
77
146
67
107
83
130
126
127
158
168
110
108
93
118
55
127
92
117
58
178
105
99
91
67
122
178
149
92
152
56
99
130
127
163
144
110
37
93
55
55
110
92
138
146
117
69
116
140
139
37
120
126
74
106
69
122
92
178
37
163
132
197
92
128
97
126
92
138
128
91
114
92
148
101
56
144
55
168
69
131
37
162
152
112
104
105
158
81
146
110
112
178
138
119
93
144
127
72
79
99
68
37
138
122
55
101
152
96
140
58
99
58
80
112
55
92
178
104
99
93
108
110
121
105
84
180
55
119
144
67
112
109
178
138
138
55
58
99
119
91
109
84
99
117
55
101
127
118
123
111
99
95
55
110
104
144
162
104
138
79
138
123
37
126
110
169
55
68
91
137
104
84
56
110
67
109
123
123
37
144
111
128
96
119
128
109
178
127
171
123
58
163
84
137
55
104
122
126
95
55
104
98
130
88
92
55
92
101
146
93
163
144
105
103
109
160
107
110
126
92
138
99
105
134
107
110
56
146
55
122
119
74
67
74
134
138
139
122
56
122
178
91
128
122
140
92
105
93
126
108
113
117
91
55
92
122
141
105
56
123
152
86
164
103
110
37
126
92
105
84
178
111
124
89
100
86
158
132
128
91
138
122
122
111
128
105
164
104
77
55
92
92
105
110
75
158
93
67
127
106
93
160
55
92
68
55
123
144
67
92
37
114
95
114
67
83
192
91
115
104
145
67
122
78
37
104
77
129
132
74
111
132
114
138
138
119
127
55
178
55
69
178
169
92
182
123
86
77
110
93
109
105
102
92
105
106
128
55
178
87
156
120
93
81
109
105
56
79
93
92
146
140
122
100
119
138
126
139
139
77
111
84
119
69
127
92
86
99
93
56
110
138
55
58
139
126
67
107
56
111
77
79
134
55
118
75
139
37
138
148
120
124
101
55
55
74
111
122
139
92
77
69
135
126
92
169
114
178
105
93
92
122
55
86
96
93
138
79
120
72
56
93
126
144
79
130
138
93
77
56
92
55
56
124
126
138
86
98
127
56
126
139
150
139
139
84
105
136
93
104
91
122
92
165
92
139
131
97
100
80
86
130
69
55
64
144
92
134
98
110
127
126
88
111
188
89
92
126
92
55
55
55
105
86
91
110
122
110
55
67
69
105
55
93
93
178
102
134
100
67
134
123
122
127
92
80
55
55
105
69
146
128
130
169
146
105
103
138
128
55
128
107
92
126
152
123
146
105
158
122
92
37
119
148
69
122
92
126
105
99
77
105
135
148
128
105
92
92
93
67
92
111
119
79
122
110
56
144
109
138
86
122
140
67
122
110
55
55
126
75
138
104
67
144
55
105
110
64
108
138
126
119
132
92
143
104
178
139
107
102
92
126
37
106
127
55
101
115
109
92
148
105
138
93
75
56
122
74
110
123
122
55
67
55
104
100
120
110
118
112
120
97
101
86
79
112
139
55
91
92
92
55
122
110
92
127
69
104
122
55
55
130
92
138
119
132
55
56
110
55
197
58
94
100
146
107
126
127
67
104
93
81
124
74
93
144
120
92
136
120
110
68
56
110
37
126
117
123
149
119
110
123
110
127
37
104
130
104
119
95
160
105
110
122
127
138
55
142
84
110
93
179
104
101
178
105
119
91
146
100
152
77
68
55
124
55
92
37
91
110
55
139
128
75
107
103
112
126
104
144
178
77
67
91
122
164
104
140
122
67
144
127
169
138
85
103
56
88
144
178
144
110
37
56
144
138
92
104
75
152
55
108
127
122
92
126
115
86
92
110
110
104
105
169
55
169
178
77
55
79
93
67
127
75
178
128
140
56
55
138
178
55
37
126
83
145
138
56
93
92
126
55
74
122
67
146
128
110
86
105
123
124
120
142
126
92
86
86
74
140
37
86
126
140
117
138
55
138
93
122
92
55
37
126
138
58
67
58
138
131
93
144
158
114
140
104
105
92
100
55
117
67
93
84
128
97
80
147
135
99
101
110
128
92
110
92
139
138
75
144
83
160
67
92
136
106
74
92
74
103
114
109
138
144
124
86
84
178
122
75
58
138
92
124
138
146
69
138
144
111
122
120
83
107
103
126
114
97
139
37
103
178
75
55
146
128
79
102
125
86
92
93
55
146
158
138
37
138
104
58
162
92
138
163
152
110
180
74
89
144
152
146
158
138
67
95
83
156
55
122
123
110
126
105
112
126
142
104
127
74
136
124
92
123
97
105
128
109
126
178
37
104
92
112
114
69
58
56
58
124
92
122
158
105
122
93
92
126
122
139
69
122
138
144
127
109
91
67
152
146
178
104
88
86
104
126
148
92
139
91
69
74
104
93
162
93
110
128
134
140
124
152
104
69
109
92
104
79
146
124
126
110
129
138
110
104
131
86
105
138
93
109
111
99
178
67
115
138
56
122
55
105
55
105
128
91
134
110
93
104
80
105
152
152
114
104
55
69
110
67
92
56
69
100
92
69
110
55
105
130
83
138
101
139
67
178
92
92
146
92
56
67
67
139
74
111
86
103
105
123
92
180
182
138
37
126
164
95
127
105
139
156
107
132
69
105
168
138
126
86
138
106
147
126
135
178
37
134
127
104
141
56
91
37
101
110
120
86
178
110
119
55
104
134
110
105
106
56
107
167
101
37
126
67
120
140
122
144
68
126
79
141
152
118
88
138
134
113
55
37
128
131
107
55
178
178
118
105
145
140
138
138
97
84
139
106
110
119
122
127
122
119
96
110
55
128
146
110
139
126
86
145
92
139
74
104
105
84
92
100
144
122
107
55
92
139
75
107
97
69
167
79
67
124
67
97
134
37
93
140
74
105
56
134
163
105
79
152
138
92
55
134
111
113
67
152
160
144
56
181
92
122
111
128
93
127
102
79
119
56
93
67
146
103
92
126
69
151
75
92
110
86
86
92
99
171
67
104
110
104
92
91
98
108
144
139
104
37
86
122
136
74
83
139
109
86
134
93
104
37
178
129
178
69
77
77
132
92
152
67
103
104
139
144
84
93
131
92
55
106
158
58
92
67
106
126
99
127
105
95
92
141
105
104
152
110
92
139
58
91
115
122
126
139
149
79
153
111
67
146
92
128
86
68
122
139
37
55
110
78
37
119
77
105
110
122
142
140
127
67
144
37
83
178
119
126
99
122
178
104
56
67
111
123
138
58
115
110
55
56
104
77
55
123
131
128
105
56
128
86
124
139
105
92
86
92
105
139
92
86
109
153
103
56
130
107
75
55
110
55
58
140
58
126
56
101
127
88
126
149
169
75
55
98
56
69
164
68
109
131
93
128
103
79
138
86
37
105
120
138
128
69
92
56
58
110
104
138
56
142
77
110
139
69
67
120
122
141
74
93
92
124
92
127
56
101
92
112
102
122
124
111
79
122
110
106
86
128
134
103
136
92
105
69
55
152
140
122
138
37
136
83
169
111
93
167
55
150
79
124
148
110
112
139
137
139
58
144
92
68
122
160
158
99
112
182
92
149
92
92
69
171
114
55
110
178
56
55
124
146
126
110
107
146
99
140
55
79
92
122
122
138
55
67
105
75
110
37
86
119
93
105
124
138
91
152
109
76
94
122
142
67
140
139
74
104
141
147
92
86
84
93
127
139
83
83
164
97
73
68
127
37
109
93
132
138
76
55
92
93
103
110
101
132
152
178
58
180
105
148
138
136
111
122
144
97
159
105
126
146
69
139
122
137
152
138
105
152
102
91
55
146
139
138
104
138
127
74
138
91
144
126
126
37
127
122
180
123
93
92
80
142
93
139
107
92
77
114
146
55
111
83
55
131
117
127
115
75
178
69
130
140
107
68
56
92
37
152
139
163
67
92
55
99
105
199
58
92
92
139
74
119
75
92
101
91
74
109
56
139
139
137
116
89
163
122
122
112
124
169
122
92
107
128
135
109
182
127
164
92
105
124
58
93
56
55
56
79
105
68
93
55
104
92
178
92
104
107
92
98
134
103
74
67
146
79
101
131
165
116
67
55
107
109
105
126
107
69
126
171
92
109
104
100
109
111
151
146
93
140
110
110
126
110
142
67
126
88
97
95
163
122
148
134
92
41
97
140
92
67
37
178
126
92
114
92
111
123
91
84
139
92
131
144
55
103
91
152
69
124
86
109
99
105
55
178
67
103
55
86
122
146
86
139
149
117
119
79
124
134
86
140
110
98
152
126
126
127
55
105
113
119
128
55
104
105
93
92
163
104
55
178
112
55
152
178
122
146
105
107
123
88
92
105
91
56
105
110
74
122
171
102
56
67
122
128
106
37
105
105
55
134
124
135
92
111
86
124
37
67
104
74
144
158
56
138
110
104
131
55
138
105
69
107
92
104
67
145
146
138
131
136
127
131
138
74
180
86
77
122
123
137
67
37
92
132
86
104
69
130
138
92
83
95
92
122
105
138
105
122
134
146
67
84
55
119
140
118
56
74
107
102
100
92
74
120
146
107
136
106
165
76
122
138
111
127
67
67
105
109
110
146
79
103
88
105
101
93
178
165
119
139
55
126
58
182
158
122
135
123
92
104
110
123
103
122
99
112
122
112
122
37
92
138
103
83
104
139
160
93
91
104
55
150
106
154
107
138
92
117
138
72
126
103
152
92
83
109
105
122
111
92
58
122
107
125
95
110
69
86
74
182
79
139
106
86
122
103
178
93
99
104
169
112
140
110
105
75
55
148
104
122
122
130
56
146
126
130
92
138
37
69
110
67
69
122
74
92
56
56
126
77
72
122
112
84
97
67
163
122
126
104
67
137
152
124
94
126
75
140
122
92
92
103
111
138
98
122
110
67
122
162
103
142
69
58
104
101
110
68
77
74
132
122
119
138
138
93
111
144
109
93
108
126
99
106
56
107
104
37
83
127
146
112
92
109
37
129
86
81
58
128
104
109
169
160
55
67
92
144
110
117
77
178
69
109
97
55
92
97
138
99
134
119
169
92
98
135
56
83
130
138
55
109
178
69
56
67
55
110
92
86
116
138
131
144
126
68
123
67
124
84
110
148
144
104
86
92
67
105
92
67
106
88
178
107
74
128
56
178
105
67
146
58
130
134
105
37
138
105
104
109
56
138
126
180
93
144
58
122
118
122
79
122
110
128
58
110
100
105
92
97
114
37
104
79
93
93
110
107
55
127
55
55
123
86
92
146
140
138
178
105
92
169
93
136
140
126
56
122
123
69
111
97
93
56
168
178
149
92
124
138
81
91
138
148
87
110
67
105
104
56
77
106
93
117
91
125
37
109
126
107
92
122
165
120
69
110
132
145
91
163
86
178
78
138
122
86
105
105
169
127
136
115
147
92
127
74
152
112
93
74
91
75
146
55
67
58
92
139
123
111
101
138
78
69
86
138
162
105
138
144
124
128
140
138
169
58
122
124
100
93
69
140
58
158
149
92
138
75
144
56
77
55
169
56
37
104
104
105
86
169
79
55
58
92
56
122
178
104
110
112
56
41
105
119
100
123
92
100
136
122
110
74
152
178
110
92
56
89
92
105
128
69
92
158
67
69
110
93
102
67
126
79
137
110
105
167
126
55
75
182
123
67
169
75
163
119
75
74
122
122
128
95
55
81
139
83
92
122
146
55
111
178
122
88
114
144
105
138
69
112
152
146
139
122
74
110
110
122
110
110
101
127
86
69
126
122
169
137
110
152
58
77
107
110
122
110
99
77
139
58
106
101
104
163
112
178
81
86
138
58
178
110
122
56
99
91
104
55
77
171
122
99
67
158
129
126
152
163
178
180
144
132
74
123
92
91
110
111
58
122
92
146
56
134
55
75
123
122
138
169
92
92
111
111
79
149
37
37
77
89
120
55
74
118
92
123
171
126
93
192
93
139
102
92
122
110
109
84
58
128
56
129
127
55
92
67
163
37
69
122
127
56
162
126
110
122
56
67
74
118
91
104
68
126
105
178
99
92
110
171
110
119
122
126
92
104
104
55
169
127
106
56
110
138
122
83
75
126
56
92
67
83
132
110
67
92
37
91
120
160
61
158
92
37
122
144
138
118
108
135
110
37
37
103
122
99
126
123
97
122
119
146
122
148
37
138
137
138
67
92
81
92
77
169
91
134
156
79
137
78
92
144
144
79
138
143
139
127
118
86
105
132
116
110
138
86
122
92
130
105
122
145
93
128
84
58
111
58
104
122
134
118
144
99
110
152
106
126
55
128
67
37
134
126
92
124
121
56
61
145
92
129
102
123
130
92
110
120
140
122
160
107
55
122
109
99
148
164
130
55
178
178
146
139
111
136
119
144
91
138
105
69
127
95
127
98
104
83
56
103
105
103
75
162
103
37
126
122
128
67
138
148
122
77
106
79
104
131
131
111
55
75
86
148
118
92
86
86
91
77
163
74
123
112
119
123
139
56
74
104
56
110
56
122
92
145
124
110
58
144
92
55
92
138
130
56
55
115
93
107
140
91
134
92
55
99
55
146
58
55
79
99
92
55
105
126
138
122
93
169
128
140
124
103
55
111
58
169
138
98
127
112
126
93
69
91
126
104
92
110
153
79
67
122
132
93
110
37
139
37
91
99
67
74
79
94
67
110
122
69
67
55
120
84
122
118
178
144
110
69
132
122
99
139
178
106
110
104
126
56
93
118
169
104
83
158
146
83
86
105
105
128
144
171
97
92
100
109
69
126
92
111
81
92
148
111
110
103
109
123
114
128
86
92
178
128
56
67
110
112
92
55
67
58
106
37
135
127
74
99
138
56
110
107
56
55
67
122
134
122
121
169
86
55
139
167
152
58
37
91
168
119
67
91
105
122
92
120
110
97
110
126
122
142
114
85
74
58
119
79
92
92
84
168
123
92
178
112
126
110
138
104
58
67
122
88
110
122
140
140
92
96
77
55
128
79
106
58
144
146
119
123
104
171
86
126
92
124
105
81
140
105
127
77
110
97
120
55
83
55
93
124
111
110
105
106
146
81
84
144
110
89
108
136
97
77
86
111
92
106
158
99
158
145
111
110
55
58
92
93
163
104
92
107
144
109
58
101
91
110
178
111
56
77
86
146
97
128
111
98
104
108
37
86
105
55
123
118
118
120
117
132
146
139
105
114
105
167
55
67
143
72
67
107
93
101
168
178
117
105
104
67
126
126
178
127
95
99
99
132
180
67
56
140
107
146
110
91
178
91
130
142
128
152
37
114
152
122
111
110
110
91
138
107
110
92
37
132
105
55
178
74
110
92
138
140
55
127
56
58
125
117
178
138
37
131
58
75
123
86
86
99
37
91
138
104
178
146
93
105
86
123
79
122
79
55
56
107
152
122
138
55
55
74
55
140
93
147
92
122
128
128
127
55
139
118
152
97
130
93
180
99
117
122
132
55
127
122
105
92
110
152
95
127
93
83
67
127
86
178
146
105
122
110
119
75
136
130
180
149
128
130
108
131
92
122
92
84
130
135
56
58
105
99
105
118
56
120
107
115
136
56
144
96
138
130
126
125
135
107
92
122
146
122
86
55
105
100
107
86
55
98
126
117
128
138
131
146
77
56
55
105
67
103
56
55
125
92
104
168
102
126
122
93
55
138
122
109
126
86
84
92
67
92
127
67
92
92
122
111
55
122
140
146
134
93
74
93
138
132
134
99
124
98
93
68
105
122
92
119
55
168
144
56
108
105
130
109
134
55
92
93
58
55
115
98
69
37
58
141
146
123
86
72
92
92
112
79
92
92
109
127
69
123
126
136
110
56
84
138
55
178
163
58
144
131
79
55
92
139
130
93
127
110
105
72
118
139
93
83
37
55
104
138
37
86
110
124
122
108
67
119
144
146
67
123
131
158
110
86
169
110
92
98
118
81
104
110
178
135
121
86
92
92
119
119
91
67
130
55
77
122
55
141
122
110
37
79
55
100
126
92
55
139
92
138
104
92
126
110
178
92
56
93
37
55
103
118
56
178
105
122
80
91
92
122
111
104
104
180
126
75
92
132
69
119
109
138
180
91
105
91
123
58
121
101
74
136
122
93
152
67
110
139
67
104
109
109
105
77
102
74
144
152
56
93
79
104
92
92
106
122
122
104
197
92
149
105
55
128
56
138
87
164
128
152
138
122
56
99
110
126
118
126
144
56
99
131
171
163
123
108
75
178
92
92
178
144
178
119
108
130
152
91
74
138
124
55
123
126
37
138
84
171
55
83
152
104
114
146
67
118
92
92
199
69
117
111
144
74
138
77
58
123
91
67
83
104
122
92
156
126
134
156
75
103
103
109
164
110
152
127
110
56
99
83
58
146
105
86
144
37
68
104
55
111
69
69
37
138
89
92
122
92
93
145
144
148
109
55
98
122
80
55
55
67
144
91
110
128
55
67
79
80
105
140
55
81
108
79
37
110
126
178
69
111
149
109
55
37
91
79
156
124
110
77
105
111
139
80
146
100
110
122
93
55
129
189
122
92
56
138
87
158
79
67
79
95
126
146
55
74
102
81
79
67
78
144
58
111
165
107
105
109
100
69
131
58
110
67
92
92
98
37
93
93
111
56
138
117
91
122
105
104
91
79
123
55
86
83
138
69
92
91
74
67
92
140
122
110
92
37
138
140
92
69
162
130
105
149
110
110
131
114
100
92
91
110
122
119
91
138
130
83
55
111
93
95
139
128
122
128
101
119
103
122
105
105
126
102
67
68
104
105
92
122
56
103
92
69
55
92
138
92
150
105
164
138
93
74
91
138
178
78
144
56
80
100
130
74
58
92
97
137
128
139
67
92
110
79
105
67
91
138
178
109
104
58
110
55
124
139
134
110
126
96
162
138
122
114
37
67
154
105
106
83
122
110
105
109
148
112
58
139
92
126
129
139
97
138
182
119
139
178
127
83
88
105
122
152
69
102
92
55
58
58
146
132
128
122
114
126
67
92
138
110
81
120
92
126
126
126
92
111
127
56
88
75
67
67
127
67
135
145
92
118
114
114
104
144
55
110
56
146
58
132
152
126
102
128
93
107
67
139
127
110
122
74
72
139
73
120
92
89
37
55
102
178
110
128
117
105
56
93
104
55
136
138
152
106
84
109
58
75
106
138
139
145
111
138
102
152
67
110
56
122
152
138
92
56
92
69
83
131
105
122
119
178
138
123
126
178
69
122
123
83
84
55
86
144
89
55
86
99
91
74
110
134
91
109
86
178
74
92
124
67
110
92
109
104
117
92
148
123
104
99
83
146
77
56
134
153
77
111
98
92
146
104
115
168
126
105
97
111
139
135
79
126
158
126
138
105
144
119
99
86
88
112
67
126
128
108
126
122
126
123
163
134
67
126
77
93
122
77
129
168
105
144
110
105
92
101
86
110
91
55
111
110
104
153
144
169
112
104
130
58
86
144
56
123
138
67
117
122
128
146
55
99
119
146
37
67
138
111
58
110
107
104
93
98
123
110
109
67
37
110
126
122
79
55
93
107
109
55
139
95
113
77
58
138
130
111
97
122
146
126
132
75
109
136
94
122
122
152
104
105
139
55
55
124
80
126
128
111
67
138
168
123
107
92
55
97
146
37
165
124
110
75
138
109
83
127
140
123
109
86
110
139
149
128
127
139
101
152
178
56
92
108
129
84
58
108
83
93
152
126
91
178
56
138
128
55
130
104
56
58
122
74
55
144
122
109
93
122
84
92
110
77
105
79
139
139
87
103
55
92
79
127
75
124
128
55
92
135
67
178
105
67
111
122
100
92
119
105
120
92
58
127
67
178
120
125
151
86
126
56
104
127
37
55
77
152
92
138
122
105
122
131
83
127
128
152
88
145
131
135
122
92
127
103
111
128
124
74
122
126
129
146
126
103
67
91
55
107
109
124
92
58
128
146
86
138
138
91
79
110
138
137
71
104
98
122
110
144
127
152
103
86
126
103
67
104
123
75
105
67
127
138
123
178
164
165
162
67
107
92
93
144
105
37
69
146
150
107
55
123
104
127
91
105
97
77
77
122
126
134
104
86
92
86
127
124
110
111
84
92
152
137
93
127
91
168
78
134
92
55
138
75
138
107
107
168
126
128
122
56
105
146
92
88
130
126
131
169
72
89
180
162
92
126
122
97
106
83
67
126
91
139
112
140
134
131
131
108
74
171
130
146
138
128
158
100
110
129
110
120
162
95
92
131
169
81
130
146
67
89
89
92
55
99
110
86
58
84
139
37
123
139
105
126
188
110
167
131
92
152
92
122
144
146
109
139
100
126
86
118
74
136
68
124
92
77
69
139
100
104
92
126
137
144
163
98
67
56
104
107
152
120
132
92
104
108
86
67
102
144
93
138
81
105
55
100
84
122
92
126
72
74
56
148
67
144
140
89
92
152
87
104
130
100
74
86
127
107
56
122
146
152
78
37
104
138
58
67
92
126
106
127
110
74
93
130
129
98
83
140
92
56
84
104
86
92
102
118
123
151
92
67
103
92
146
132
86
67
101
111
126
139
119
92
114
111
93
119
75
67
152
86
93
100
123
83
169
93
93
37
122
117
138
75
122
126
93
134
126
140
117
102
122
122
131
169
92
93
178
135
94
105
69
128
121
110
106
126
119
68
122
55
122
107
93
123
93
107
110
119
74
136
84
120
69
122
119
110
103
81
124
119
122
105
93
122
134
77
122
122
113
124
128
109
126
97
151
109
126
111
142
178
79
92
168
56
99
68
107
105
37
104
138
118
171
100
138
55
171
75
81
56
58
120
122
102
110
138
100
67
83
122
58
81
78
103
86
138
178
105
86
128
163
127
130
151
126
92
111
146
138
105
104
92
105
107
138
67
103
123
189
138
144
104
136
56
75
123
138
91
98
111
109
105
124
92
105
79
105
122
106
144
91
121
117
134
122
122
122
144
103
134
146
178
55
189
58
107
134
111
124
127
105
93
128
138
92
152
109
122
99
110
168
99
100
109
108
146
56
69
89
56
112
146
122
105
119
139
169
112
144
86
83
83
125
104
104
105
113
102
105
67
92
126
136
126
122
86
88
117
69
105
99
171
55
152
37
138
152
138
69
128
124
56
110
103
86
122
104
114
138
105
132
111
105
152
146
123
126
167
138
93
69
56
119
67
122
118
92
92
152
92
110
146
55
117
144
92
58
128
64
110
55
146
99
80
69
79
127
104
122
67
138
163
114
69
158
138
92
145
105
104
126
58
55
55
67
138
122
79
110
110
126
167
168
110
130
109
138
92
146
139
114
55
105
122
115
92
56
158
110
92
105
55
123
152
93
132
128
110
104
79
84
77
178
122
126
37
126
86
91
58
74
144
134
126
144
114
110
101
108
127
105
104
104
146
104
122
128
114
56
92
138
124
110
98
75
55
55
139
122
79
93
58
55
98
105
95
152
103
124
92
123
37
178
56
72
142
110
119
91
99
104
122
41
92
55
168
120
37
141
69
127
124
99
105
55
102
103
122
79
123
79
104
67
134
75
138
37
75
74
122
98
103
122
146
122
58
74
107
56
146
64
158
37
106
111
79
131
138
110
144
110
152
110
152
93
105
55
126
119
55
92
92
88
130
139
73
104
105
86
122
93
138
110
56
104
139
104
134
79
126
91
138
111
89
69
178
92
79
171
55
126
134
103
93
127
111
56
37
68
92
119
148
122
92
109
121
105
55
98
126
138
126
37
92
56
122
164
104
75
92
138
93
56
148
138
127
122
79
139
105
126
146
105
109
55
139
124
86
55
169
127
121
58
122
136
146
56
93
107
41
109
138
99
146
126
139
92
139
140
105
55
123
55
140
146
55
152
128
83
163
148
97
92
92
75
67
131
55
138
56
104
126
55
146
58
78
111
100
138
93
164
178
165
92
110
110
108
105
132
152
93
97
163
126
94
77
169
105
119
105
138
105
37
105
93
55
110
135
130
69
122
112
92
164
178
69
110
165
75
86
77
152
178
127
79
113
152
110
92
126
87
110
163
100
83
74
98
138
105
152
121
122
92
83
138
137
108
56
37
122
74
126
126
130
119
68
91
55
127
93
105
122
136
145
138
75
130
103
110
55
58
106
126
58
105
103
74
145
126
127
56
114
138
148
55
124
109
119
144
110
74
126
122
105
93
111
92
55
138
104
86
109
37
117
140
58
91
119
92
105
139
138
67
119
83
110
92
55
55
158
55
126
67
163
92
55
130
55
109
99
37
86
107
110
138
83
104
109
178
92
145
91
91
74
74
67
92
110
104
105
138
152
123
122
98
138
92
124
127
55
109
169
123
138
67
88
139
111
122
122
79
92
148
86
72
139
110
110
58
125
67
67
117
83
55
111
67
55
128
93
125
138
105
120
95
79
105
55
109
104
138
107
55
126
129
105
126
37
124
122
37
105
55
118
123
58
107
123
103
93
138
105
55
119
146
92
101
162
110
56
127
117
110
138
144
86
67
126
126
97
92
165
77
92
104
74
139
152
128
171
109
146
119
127
92
68
105
69
110
110
134
122
93
178
158
92
110
56
86
105
144
139
92
112
139
56
140
164
127
37
55
68
56
121
83
122
69
144
55
127
180
55
92
140
92
128
139
96
134
76
55
92
138
180
107
144
37
103
112
105
74
110
124
138
129
139
104
130
126
126
126
128
126
124
122
138
123
140
122
56
178
141
93
152
110
56
56
58
76
169
55
93
104
74
165
103
124
114
89
128
75
92
146
126
85
107
68
77
111
109
105
37
140
110
105
92
104
107
56
144
55
144
92
127
144
140
109
89
92
89
140
99
105
69
140
95
92
69
112
92
126
128
86
122
102
55
178
140
86
122
111
124
55
58
104
111
124
122
135
105
58
97
79
86
127
107
126
122
114
86
169
122
105
152
138
58
55
37
126
98
122
152
79
56
146
148
92
97
55
102
58
104
126
171
86
77
110
58
135
145
107
139
92
76
111
180
127
95
109
79
55
111
110
123
74
144
64
67
97
69
98
92
140
67
107
105
74
86
55
152
105
169
101
168
110
126
109
110
103
93
105
178
105
107
139
168
83
105
110
106
69
103
56
114
130
136
56
69
122
114
109
123
81
109
105
148
96
109
144
69
138
138
69
144
111
140
132
109
126
126
146
124
138
165
125
168
92
139
56
111
104
119
122
56
61
37
77
131
119
110
109
192
58
55
91
100
105
93
55
104
110
86
105
89
86
102
114
110
126
144
132
56
55
97
111
105
178
93
144
56
77
122
56
144
79
69
108
94
55
67
169
96
94
55
77
144
67
117
136
98
105
145
122
126
123
138
122
91
100
145
101
92
139
104
80
138
143
105
93
74
97
148
110
55
77
105
77
117
79
102
99
68
119
126
138
69
92
110
91
105
144
122
123
105
180
92
92
55
138
105
188
103
139
83
86
101
122
115
91
105
110
104
95
126
122
119
56
120
126
37
124
79
105
103
91
67
139
122
99
144
93
105
74
127
95
92
56
55
160
169
122
178
139
92
78
178
178
139
92
56
119
158
55
126
116
122
58
67
126
98
37
167
88
132
110
105
134
37
73
58
91
37
104
77
93
75
109
138
151
138
104
104
92
37
129
128
92
58
114
144
105
79
93
138
83
107
109
110
136
92
126
139
138
110
117
69
118
102
55
91
126
134
149
86
111
92
136
135
139
67
93
111
67
110
69
112
146
55
140
122
105
125
110
92
67
165
92
104
111
169
68
178
139
107
92
122
92
97
106
147
146
83
148
152
92
92
67
79
68
131
127
55
169
104
131
148
140
125
77
163
97
105
158
110
178
67
104
128
162
163
92
55
164
140
136
128
110
93
139
119
138
140
55
123
118
92
92
58
86
77
91
144
126
136
140
75
124
144
93
137
77
130
122
128
111
126
163
103
104
109
105
152
104
55
123
92
127
139
119
93
55
126
56
92
92
118
92
132
125
188
119
55
91
55
108
126
37
77
126
126
98
138
136
58
146
78
92
58
158
86
110
118
168
120
152
92
104
122
91
160
37
131
91
140
92
79
104
126
104
93
126
138
104
105
55
126
107
117
110
55
118
163
111
126
69
37
102
102
139
79
109
103
142
110
126
55
122
69
95
92
139
105
55
104
93
158
67
114
93
134
77
91
58
67
126
171
146
91
69
105
104
69
126
86
158
55
55
134
69
110
67
131
58
110
169
126
139
80
126
86
56
127
55
56
37
128
128
92
138
102
103
146
126
105
67
100
103
75
110
97
139
92
58
55
132
110
132
56
115
67
92
67
109
152
79
93
169
104
138
132
87
171
110
92
138
55
58
55
134
104
56
144
77
102
152
126
127
107
106
92
92
163
37
79
124
104
92
93
92
92
124
138
92
123
74
110
95
146
37
99
112
110
105
55
126
117
130
92
111
110
93
122
111
111
37
110
139
122
105
123
79
37
122
104
144
77
127
92
140
58
146
131
93
56
123
110
111
124
84
148
37
139
92
164
67
138
122
97
124
122
168
120
146
84
69
98
92
56
87
119
104
136
104
110
115
55
92
168
136
55
180
114
86
67
163
104
112
152
110
74
79
110
80
95
137
122
101
139
152
122
144
92
107
146
92
93
106
56
126
138
104
91
139
93
92
109
98
134
178
126
37
74
119
64
105
128
105
126
118
169
110
55
180
99
75
127
138
138
132
77
55
55
158
126
88
55
162
58
56
122
69
152
93
81
132
111
55
37
122
119
98
110
138
102
58
84
124
98
127
122
69
111
93
118
119
110
74
110
55
109
91
152
135
144
115
58
103
126
139
104
58
69
171
122
127
110
55
97
138
122
137
152
56
89
37
56
110
104
178
55
178
122
109
110
163
118
105
126
138
55
163
93
93
169
169
149
55
138
86
37
131
67
110
118
124
97
122
126
58
110
67
75
93
138
92
99
122
127
152
156
109
88
67
138
91
92
110
123
55
91
92
128
129
139
92
99
103
92
108
103
122
67
58
37
110
93
138
126
107
89
145
77
146
97
160
132
58
67
135
136
111
148
110
126
37
119
107
104
140
92
138
162
189
93
58
132
67
58
118
55
79
139
55
83
127
178
92
105
55
74
107
105
99
37
144
136
122
123
92
123
56
55
86
180
123
101
137
97
105
163
123
127
94
37
55
92
89
138
84
142
94
77
163
67
37
69
139
110
124
105
86
122
148
138
83
143
86
126
126
156
75
104
55
126
75
122
92
144
132
105
68
55
110
74
127
139
92
69
162
139
152
67
55
99
104
55
79
83
105
118
105
110
67
92
89
158
86
37
105
122
109
139
106
93
95
134
91
55
110
37
104
56
168
151
100
92
180
92
104
146
77
111
122
146
67
128
79
69
163
79
91
92
55
67
106
92
68
95
142
92
127
131
104
126
120
86
114
112
74
112
86
91
123
145
136
111
61
56
77
99
189
122
67
131
93
69
55
119
137
101
134
126
134
95
123
37
110
93
107
105
111
110
123
139
122
56
110
105
58
113
122
122
72
165
103
139
120
92
178
120
152
128
56
122
107
134
91
104
169
93
122
92
110
110
105
144
148
126
67
68
69
122
94
124
122
104
105
74
104
56
109
37
126
138
145
138
69
92
105
122
69
86
105
128
169
91
111
55
134
103
104
169
79
127
37
58
99
118
97
138
122
128
103
178
139
69
69
140
169
58
124
128
79
122
97
88
124
132
91
98
102
135
105
74
144
119
58
165
56
169
86
99
99
110
74
178
77
122
67
105
106
122
79
88
128
99
95
105
67
110
123
103
111
56
126
105
67
126
104
67
104
56
138
56
37
102
107
117
121
93
134
79
92
117
138
138
110
119
149
171
55
138
171
160
55
69
102
146
105
110
171
95
169
79
100
140
168
69
107
83
109
105
108
118
92
56
55
138
123
158
126
55
93
122
110
104
139
122
142
115
127
138
104
149
74
171
110
127
55
110
67
123
110
111
92
92
105
112
86
37
122
111
122
178
86
119
77
67
109
165
56
77
92
105
101
138
136
55
58
150
110
140
105
68
135
120
113
144
123
99
119
138
107
152
139
127
92
148
104
93
126
69
37
152
105
128
93
86
138
67
55
97
86
147
110
95
56
180
122
111
67
111
111
74
126
93
144
139
104
93
104
108
146
131
126
75
144
86
110
101
98
55
79
124
95
142
72
114
74
141
102
163
93
152
171
105
79
178
178
138
56
97
122
127
122
92
180
105
73
141
110
105
127
110
92
55
98
109
58
77
100
131
103
105
112
146
83
92
74
178
104
93
83
55
101
122
119
144
86
126
56
130
119
67
122
146
91
132
99
92
143
122
110
105
107
123
160
105
128
138
130
121
80
67
97
92
104
110
110
122
127
138
67
74
152
104
158
75
188
141
107
91
92
152
37
93
109
104
134
105
110
164
123
58
105
86
109
110
135
92
139
92
139
127
126
105
127
126
111
67
109
58
83
129
74
178
180
92
101
56
148
37
130
93
122
37
144
122
127
75
146
67
110
91
146
111
137
111
171
140
136
37
69
56
164
139
110
169
144
111
77
144
67
92
67
130
74
122
67
171
126
58
92
126
92
123
37
138
92
81
128
163
102
114
110
56
103
171
123
123
139
86
126
122
114
58
128
110
37
55
104
146
92
92
169
147
149
126
152
138
152
110
37
126
67
144
37
137
140
105
92
137
110
171
109
138
92
92
74
125
105
69
169
77
69
110
55
55
148
127
104
152
138
83
55
101
126
81
169
107
93
144
91
138
122
58
93
178
128
106
92
83
128
146
119
109
122
152
92
178
92
117
75
104
107
55
69
127
123
56
178
58
105
56
138
73
109
112
56
77
75
127
67
56
74
127
126
56
140
92
105
138
127
140
97
74
132
69
107
128
134
105
138
97
110
110
119
132
164
104
103
107
146
128
85
105
127
105
110
93
67
104
98
106
78
137
134
122
111
119
126
102
126
169
171
107
104
139
86
122
122
112
55
103
92
56
56
56
86
86
92
122
92
92
56
104
122
138
110
84
152
126
138
109
110
110
127
122
92
138
128
137
139
110
69
92
56
105
128
126
109
124
104
152
126
138
139
67
122
92
144
109
67
91
93
109
93
122
97
119
144
69
114
104
125
56
69
93
92
107
126
105
139
86
108
164
55
105
199
109
139
37
127
104
126
101
97
110
122
163
37
152
123
111
122
120
168
110
124
122
92
75
69
139
123
124
126
110
124
93
55
137
146
112
68
105
79
165
146
110
110
147
58
126
130
91
69
124
178
105
124
169
92
55
139
144
75
37
92
140
119
105
92
131
95
110
68
77
139
101
75
98
56
75
138
93
79
93
178
126
128
108
117
131
110
126
105
75
68
139
75
105
152
109
69
139
110
139
111
105
128
94
107
75
67
139
100
123
178
140
55
105
105
105
56
115
146
135
126
134
128
56
138
91
110
93
123
132
56
122
167
123
126
158
160
127
118
122
108
56
178
122
126
128
58
79
79
79
127
56
55
104
146
127
107
87
147
74
122
120
67
163
107
126
171
105
169
69
93
55
180
75
142
128
89
67
128
178
99
67
162
92
86
79
93
91
139
91
120
58
110
74
141
99
96
104
126
105
92
93
127
158
122
146
119
136
55
158
128
113
105
144
127
67
93
55
105
102
144
100
152
188
138
105
74
126
67
86
178
128
128
101
41
67
122
169
67
76
139
141
92
84
91
92
37
98
108
111
104
110
167
131
127
68
92
146
115
118
145
91
78
105
114
58
138
103
76
55
74
139
114
139
55
69
55
58
74
92
92
139
67
110
74
154
86
128
72
104
131
84
178
99
123
125
110
79
126
127
77
79
122
79
67
138
105
126
110
92
55
160
110
124
80
89
122
119
58
92
144
131
127
126
79
124
158
123
67
113
199
126
164
79
91
156
73
103
128
74
69
138
104
93
110
92
67
108
139
138
138
144
134
92
123
79
126
130
122
99
83
148
178
67
37
122
180
134
110
107
130
79
128
69
147
99
75
104
171
86
120
67
58
138
128
124
91
87
110
83
56
81
152
93
105
139
69
105
127
67
169
131
107
79
104
107
110
124
130
110
104
152
122
146
83
105
100
37
55
199
144
156
138
37
157
126
110
122
138
171
144
104
152
69
58
138
124
122
182
139
77
105
104
83
100
56
138
139
118
83
122
132
75
111
56
92
178
91
104
69
67
111
83
110
144
111
139
104
158
93
104
115
83
122
55
55
102
144
152
105
105
110
69
146
146
124
93
75
138
100
148
125
86
67
89
56
112
87
110
138
56
127
92
104
114
55
138
138
55
110
109
122
132
152
119
128
93
126
74
126
55
79
110
79
163
111
135
58
92
126
132
127
122
110
144
75
104
56
55
69
104
131
92
86
144
105
67
55
92
37
110
84
136
73
123
37
122
163
122
104
37
104
110
152
110
37
122
75
99
55
120
128
110
178
138
111
96
67
56
129
55
105
56
126
92
104
104
92
105
55
139
55
92
37
106
81
74
86
92
127
75
138
105
131
138
55
109
114
158
105
126
75
169
139
110
64
105
123
74
114
79
146
69
100
104
105
98
104
148
105
110
111
122
178
77
138
122
119
139
92
110
128
146
92
126
120
69
75
92
74
75
86
55
119
55
55
55
99
67
117
107
105
67
171
92
104
139
56
152
86
128
95
123
86
107
55
126
110
110
145
86
163
106
119
97
105
152
56
105
123
110
84
89
86
99
55
84
92
126
127
134
178
37
110
92
132
126
107
67
37
101
91
110
142
111
55
128
79
148
167
111
122
152
165
160
132
98
134
104
126
126
56
37
109
144
75
77
138
126
122
74
110
79
123
152
114
126
128
91
105
107
126
110
55
37
146
86
152
178
144
107
126
163
67
55
167
108
67
69
146
56
134
124
129
126
107
122
83
124
127
130
126
68
93
123
97
108
152
144
138
123
109
178
73
122
55
100
55
91
67
122
109
110
110
168
139
164
122
126
67
58
87
55
55
123
56
111
110
144
144
67
99
58
178
169
69
167
67
156
86
119
123
95
105
110
138
122
107
119
105
79
69
100
114
123
117
106
92
55
68
112
138
92
146
104
105
126
124
104
148
56
110
92
104
67
126
86
105
139
58
128
67
127
89
92
110
127
120
58
136
102
74
169
110
67
92
119
139
105
123
111
84
178
105
86
127
139
86
55
111
93
99
117
152
122
120
110
146
67
146
122
55
134
77
69
138
129
92
105
56
123
101
126
178
140
111
93
126
92
37
93
74
110
122
148
86
139
86
171
122
74
105
93
75
92
55
146
122
122
144
91
103
167
122
58
94
139
55
122
79
79
126
131
88
134
75
93
69
134
58
93
126
104
55
105
138
91
92
109
111
108
122
102
92
163
123
55
105
37
141
138
112
122
67
122
104
119
128
67
126
138
178
126
58
126
56
130
99
110
67
58
105
104
37
114
79
55
130
68
104
107
56
134
138
139
160
192
137
99
128
104
91
80
55
93
110
104
110
139
110
127
92
128
126
122
92
118
122
67
75
67
102
178
122
92
114
130
93
81
122
140
92
89
91
37
105
104
111
92
67
55
121
126
112
92
122
111
162
83
169
122
110
125
122
55
138
122
136
55
75
178
110
139
58
146
122
139
69
144
109
118
100
37
119
152
131
152
110
55
152
122
67
139
96
110
109
106
96
171
83
102
68
92
130
84
148
126
109
138
99
55
123
79
112
107
105
56
110
104
118
122
92
92
111
146
110
67
112
109
93
119
86
107
86
122
112
67
132
92
78
105
128
105
123
130
111
178
128
56
178
55
56
180
93
138
104
67
138
110
86
107
131
110
178
126
131
56
117
138
138
110
117
55
139
91
122
92
109
142
199
79
92
86
93
126
92
79
152
126
120
140
67
138
108
67
56
138
92
67
83
127
104
168
92
83
144
169
131
146
110
180
102
93
122
105
93
164
58
95
134
93
126
169
98
158
165
75
77
58
93
132
104
136
55
55
110
77
110
105
126
171
135
169
79
105
95
105
119
127
56
125
110
37
152
122
89
163
171
37
110
127
128
123
83
67
110
140
55
68
171
91
126
74
67
108
80
124
126
124
77
119
105
79
169
55
74
84
110
77
127
55
103
69
92
92
106
55
55
55
119
178
167
126
138
144
171
138
97
67
146
126
139
69
146
92
104
110
97
134
103
69
97
164
139
152
128
77
86
97
126
105
37
105
136
127
55
139
138
92
126
146
74
122
126
122
122
122
92
55
180
55
105
107
119
58
100
104
128
69
128
110
152
93
67
92
122
138
139
91
55
56
138
74
101
87
119
124
67
91
77
118
83
171
138
86
144
55
122
127
126
91
92
80
132
138
69
37
76
117
107
92
109
75
98
98
122
138
125
77
58
146
105
92
92
122
78
137
144
37
58
37
128
86
99
105
130
125
105
77
128
37
119
74
114
91
110
139
122
131
178
55
92
178
178
83
104
80
178
91
144
124
115
127
178
134
127
103
138
67
56
107
92
86
144
55
122
67
122
69
55
75
77
69
119
79
110
126
110
55
167
56
75
110
109
93
56
67
37
56
126
58
124
120
158
99
123
104
58
105
134
134
147
55
109
92
128
93
171
103
139
103
98
124
37
117
106
105
138
122
110
56
86
138
138
55
140
135
92
92
168
92
138
91
78
138
146
37
126
126
139
105
123
122
91
110
37
92
37
94
123
93
103
169
92
97
75
120
91
119
110
139
109
56
127
97
112
92
114
77
138
93
68
144
138
95
150
92
55
93
92
132
119
92
37
106
122
75
80
122
83
182
138
67
138
127
127
167
111
132
138
89
104
58
55
37
110
138
55
88
146
92
58
171
126
55
111
123
56
101
56
121
138
67
172
131
137
134
146
144
92
128
152
119
106
72
119
75
126
83
55
122
139
182
99
58
107
92
152
69
104
37
76
87
111
109
146
55
37
119
128
93
122
138
105
114
144
164
37
119
67
67
110
114
37
109
55
137
93
67
126
56
92
55
146
129
111
167
104
122
152
110
92
67
140
115
167
92
58
110
126
111
181
110
97
109
93
67
178
56
55
105
107
123
126
106
148
58
144
148
92
178
91
138
77
99
138
108
107
123
109
123
58
87
56
126
138
86
37
91
119
92
67
119
132
55
95
56
168
93
55
138
72
199
58
92
123
104
144
56
92
122
110
69
139
152
86
83
146
111
91
127
56
139
104
104
92
101
107
67
74
84
92
93
122
37
162
55
104
86
124
106
75
118
93
110
92
97
56
93
93
127
110
97
83
107
119
123
126
92
92
139
73
55
93
99
55
111
67
138
122
127
97
99
110
108
148
104
107
105
113
139
122
126
110
104
123
102
119
92
103
138
128
122
105
126
131
126
105
58
178
146
146
110
106
115
67
55
92
104
92
111
127
189
122
137
140
101
80
134
114
152
81
178
111
124
109
111
88
74
107
138
67
138
105
92
74
92
104
75
100
114
92
91
111
79
37
152
122
107
105
91
80
139
56
148
76
91
67
107
152
93
67
83
138
58
110
97
124
117
108
163
77
148
91
122
122
111
56
92
69
88
152
178
83
58
105
79
139
178
56
79
188
137
119
92
123
86
148
91
37
110
114
137
110
37
69
114
76
126
146
124
91
79
37
92
125
105
104
92
107
37
92
123
134
110
131
91
78
55
122
68
178
67
138
110
91
93
88
105
111
104
139
169
134
109
140
135
95
84
138
92
167
67
146
79
92
122
91
93
92
154
86
132
108
56
144
138
128
178
146
178
152
114
92
110
110
146
110
104
138
56
92
138
93
81
37
158
88
114
152
110
99
68
122
37
105
148
178
134
110
91
58
103
169
124
134
69
120
110
55
92
122
92
55
92
146
110
105
74
102
69
119
97
164
126
105
105
69
152
111
56
146
126
92
93
178
138
110
91
126
126
91
74
119
69
56
105
79
105
122
169
67
138
110
182
106
140
124
134
112
130
67
120
58
91
81
95
144
178
178
140
127
144
58
122
101
139
58
92
110
80
109
138
146
108
127
125
105
75
99
69
93
83
110
126
127
102
104
123
127
92
99
106
118
104
102
109
162
142
67
146
109
140
98
76
105
95
139
93
126
92
164
127
103
98
89
110
84
130
122
55
111
92
55
37
81
152
109
178
55
92
56
152
92
111
138
105
122
131
101
178
58
118
138
55
106
144
67
149
128
122
122
110
87
126
86
105
178
105
146
148
138
100
122
146
126
74
134
110
58
162
55
107
178
141
103
55
80
105
128
126
115
104
101
92
139
137
138
55
110
129
92
139
122
105
75
126
105
55
104
104
139
79
145
102
146
169
79
56
58
112
67
58
130
103
139
76
105
56
109
126
92
112
107
105
104
93
77
68
139
112
124
119
67
88
95
67
56
93
124
126
109
92
68
55
128
75
178
83
104
148
137
91
127
67
74
152
93
55
104
37
74
139
93
127
163
92
79
97
105
127
169
37
104
160
146
178
111
100
146
91
105
67
110
110
165
126
110
37
178
37
165
84
147
132
127
123
169
122
37
135
126
119
126
178
127
127
114
67
122
127
110
105
109
122
114
74
139
178
99
67
122
69
124
69
140
92
92
93
149
110
92
123
134
106
127
105
100
58
56
147
91
68
107
110
98
75
128
138
144
92
75
92
138
103
144
138
93
93
139
164
126
55
92
110
178
56
105
55
152
56
92
69
128
37
123
126
178
102
83
114
140
137
138
169
132
92
124
104
92
144
92
152
104
74
56
122
149
92
110
92
84
69
171
99
93
74
93
86
127
138
124
138
114
119
104
138
104
56
126
126
163
92
122
105
105
138
100
144
110
92
139
69
117
104
168
55
92
127
92
55
58
79
126
109
146
92
140
178
67
110
139
124
55
64
138
86
55
136
152
37
58
83
92
103
109
139
138
131
152
80
111
92
92
55
57
128
119
129
152
37
152
99
122
120
146
71
118
139
56
92
138
180
179
109
110
105
84
136
55
97
105
92
123
152
55
56
91
138
69
138
103
93
86
135
138
180
117
178
55
120
56
92
138
101
75
111
134
136
97
178
88
130
110
127
139
146
86
58
127
68
115
122
55
164
122
69
122
92
122
144
130
105
86
91
152
69
132
146
55
67
131
110
107
105
105
37
127
56
119
106
93
126
105
138
105
68
55
100
103
105
91
92
92
79
151
171
140
127
126
122
126
111
146
92
104
122
146
142
108
122
75
74
171
114
67
140
96
55
169
139
81
78
67
67
127
77
74
86
37
105
89
37
144
69
104
110
178
107
110
126
105
56
105
110
93
119
131
160
77
138
114
99
146
98
138
122
128
110
178
74
110
110
89
125
109
148
104
127
86
122
144
136
55
92
55
110
146
92
55
55
122
92
140
104
93
92
163
83
89
91
75
118
127
162
106
37
124
67
134
138
114
88
126
130
56
109
138
101
140
138
134
88
138
126
105
58
138
94
76
78
105
55
110
84
110
152
98
99
152
83
138
55
120
126
137
92
134
37
122
105
93
158
160
114
107
122
92
67
138
92
140
122
67
126
101
93
93
151
55
67
107
102
126
94
146
67
67
110
88
156
93
120
83
93
92
92
74
123
91
104
92
111
123
123
171
89
67
132
177
126
120
148
110
129
128
128
162
69
122
162
92
138
123
152
151
123
105
55
99
178
109
92
69
110
37
110
105
124
158
93
105
91
152
136
123
178
79
134
67
107
89
55
139
110
178
103
122
58
55
92
178
92
178
74
58
122
109
125
107
64
58
120
93
158
104
105
132
163
128
99
88
110
104
126
105
89
134
37
77
105
110
76
135
122
136
55
86
101
58
144
169
67
92
122
152
104
110
58
58
55
138
100
168
106
67
122
109
122
100
111
55
58
122
99
91
144
92
163
69
105
110
138
74
69
122
123
77
79
118
152
110
86
128
91
107
168
126
55
75
92
69
115
132
86
144
139
67
145
103
128
92
128
111
110
83
58
92
109
152
93
93
55
117
105
146
122
58
93
123
55
55
138
122
110
140
171
138
138
55
92
103
124
163
119
67
55
105
99
69
138
93
55
92
92
122
122
55
146
138
98
83
91
67
84
56
123
67
79
126
102
106
86
110
127
105
93
55
122
93
84
92
109
75
138
118
92
119
178
67
105
86
110
120
125
139
114
96
122
99
122
77
138
77
37
105
134
58
109
128
100
93
69
37
67
105
92
130
93
138
58
100
92
79
111
146
67
128
128
105
110
110
69
136
37
104
77
99
127
101
56
79
67
97
111
92
120
92
104
56
134
93
178
171
124
152
122
130
69
100
37
93
122
68
144
86
86
144
127
92
92
101
92
56
97
75
86
119
119
110
79
135
77
67
55
97
127
99
126
110
103
67
69
69
86
79
68
146
56
124
110
122
107
92
169
77
77
158
128
92
139
109
122
92
93
56
122
210
105
67
131
180
124
122
104
135
109
103
110
98
139
110
104
103
105
124
140
122
92
93
56
178
144
74
105
67
127
144
109
110
67
178
115
138
102
56
115
100
107
165
69
127
152
146
126
128
126
111
104
128
114
152
128
138
105
114
104
119
58
110
138
164
86
114
126
55
93
86
86
138
148
128
93
86
122
128
122
118
37
160
178
165
122
122
111
113
86
92
56
91
126
139
144
144
75
69
110
86
105
127
109
84
122
122
122
93
83
131
118
110
105
126
93
103
110
105
102
111
93
138
99
77
75
56
37
64
55
119
92
75
95
136
69
126
67
105
107
93
55
93
93
99
67
181
91
81
122
92
55
91
138
55
110
163
93
122
146
152
89
122
93
105
104
144
92
138
127
117
115
130
178
123
137
151
100
128
112
178
91
169
122
107
37
117
83
58
122
95
103
75
138
152
92
111
110
104
126
55
169
73
136
122
105
138
138
55
122
145
132
101
111
58
75
105
110
56
69
131
118
120
152
55
111
109
137
92
131
169
122
178
138
135
92
122
99
92
93
83
138
138
113
96
152
122
67
83
105
37
126
104
104
92
168
111
69
92
124
55
122
105
93
98
122
55
114
81
158
74
58
67
103
56
68
169
136
93
86
92
101
98
161
109
128
105
58
138
55
37
163
67
152
122
145
67
55
112
169
58
58
67
114
126
127
110
140
138
138
129
37
140
86
55
139
126
56
139
92
119
105
67
134
107
79
110
67
110
99
122
55
126
37
95
92
67
130
122
122
79
58
58
122
126
126
107
165
123
137
55
126
105
92
127
56
67
110
55
93
87
92
169
67
105
122
115
56
55
126
67
138
109
92
152
178
111
139
105
105
128
55
171
169
110
122
92
91
128
67
138
108
104
58
99
108
104
138
58
74
152
68
67
101
93
146
111
37
95
126
152
138
37
136
99
144
105
55
118
138
126
104
67
114
111
69
126
67
144
113
79
67
126
146
67
91
95
119
97
58
164
99
177
98
118
138
92
112
105
58
86
92
55
126
55
56
92
119
139
122
122
100
37
93
56
92
56
152
92
75
56
108
147
55
107
91
178
114
150
124
126
104
79
79
92
144
92
141
55
169
146
119
91
67
139
169
146
93
101
97
99
56
126
139
91
99
93
128
111
103
92
103
89
123
55
37
79
104
144
126
106
122
152
199
92
180
77
109
122
56
132
92
138
107
130
67
77
56
179
127
111
130
37
121
105
67
56
92
55
77
86
110
160
77
112
126
103
55
128
138
83
104
139
93
104
111
164
138
110
111
152
122
178
69
99
99
167
107
37
114
131
146
93
55
180
110
127
64
92
110
126
86
37
110
134
80
105
92
119
92
122
139
55
122
92
126
79
69
178
180
86
103
110
132
149
163
99
122
95
114
105
109
37
104
55
92
120
55
180
89
126
126
56
109
79
127
134
127
110
163
37
37
91
132
123
120
67
104
92
123
126
142
74
105
67
110
110
168
139
92
177
37
95
58
197
110
128
92
86
178
119
122
115
104
104
169
105
123
127
131
58
86
112
110
123
37
129
92
74
137
145
68
104
105
105
55
74
56
138
99
131
58
123
93
138
78
77
178
122
111
55
128
92
83
123
99
178
178
107
126
123
140
67
126
79
132
126
148
91
55
124
75
122
123
67
105
83
122
110
110
139
126
119
124
91
134
115
105
122
124
127
122
112
119
138
110
138
91
69
135
132
69
99
126
37
167
118
37
169
126
140
92
84
104
169
148
152
117
126
126
110
146
110
178
134
122
110
122
105
104
91
128
141
136
103
55
117
138
86
138
56
124
74
138
126
79
140
138
86
122
122
105
163
104
132
79
119
55
56
98
127
126
110
110
95
88
56
55
120
132
121
104
107
76
112
67
122
55
93
126
122
92
55
126
138
67
171
105
108
119
131
37
77
105
130
92
83
126
115
112
110
123
56
110
37
92
86
93
105
55
105
144
92
122
56
75
77
139
55
88
147
55
55
122
58
80
122
93
107
58
69
58
128
105
92
99
122
139
87
105
110
58
105
139
69
135
86
92
92
55
127
127
37
110
128
134
67
171
158
110
86
67
67
107
122
104
67
127
92
127
126
92
105
84
122
92
126
37
92
92
79
122
97
75
122
105
134
88
55
110
122
92
132
110
105
105
146
105
124
128
100
107
74
91
110
112
119
152
119
138
122
126
124
92
93
55
118
109
92
144
109
56
55
114
79
127
92
104
128
55
120
92
58
126
119
104
104
104
134
37
139
93
75
55
72
123
122
119
123
107
86
79
92
58
131
86
99
132
110
122
169
178
104
138
109
99
80
97
37
140
58
103
92
112
146
67
107
105
75
130
123
92
138
58
95
93
104
104
91
92
110
138
75
110
103
67
88
146
188
135
110
139
122
93
119
139
107
119
124
139
74
158
77
126
109
92
108
122
92
127
104
97
67
124
146
139
134
130
99
122
67
92
79
98
93
58
74
77
134
58
97
93
110
117
120
117
92
58
67
83
169
37
92
139
126
56
91
146
37
98
137
110
122
118
55
93
92
126
67
126
104
103
105
145
105
109
124
58
139
165
114
126
72
168
147
102
92
122
55
104
95
165
117
129
126
139
169
121
138
127
110
138
122
134
165
93
55
111
37
99
138
140
79
69
152
109
126
110
55
98
110
146
92
68
127
126
68
122
88
139
112
110
111
92
146
179
138
122
110
67
97
92
128
92
130
152
152
168
178
121
128
126
199
109
178
99
67
139
92
102
110
146
138
104
169
169
56
91
117
74
86
74
126
126
114
101
79
136
138
100
92
67
94
146
140
105
138
144
107
92
67
97
110
110
69
163
91
86
67
58
171
69
111
55
109
56
97
164
107
58
134
146
68
132
119
86
126
110
69
148
119
56
56
93
91
122
110
67
77
84
56
105
93
104
86
130
105
55
101
92
79
93
92
156
92
151
111
123
127
55
55
123
112
104
79
103
83
139
119
122
83
68
109
74
141
137
37
92
117
178
75
110
67
92
178
138
139
110
69
92
131
110
92
128
105
110
92
139
101
122
122
132
72
104
128
67
127
144
37
126
139
126
189
55
105
109
55
144
138
110
146
120
105
123
122
79
131
106
140
92
109
75
92
126
37
104
56
100
102
73
93
109
56
126
55
144
77
126
118
122
139
69
122
127
101
107
99
101
110
152
117
58
128
92
58
163
152
91
100
110
104
106
139
67
98
126
112
127
92
125
137
58
97
101
95
123
67
105
138
92
58
128
56
86
112
152
55
55
83
123
105
92
146
158
138
56
107
86
89
58
110
105
97
37
87
98
146
74
86
123
55
138
128
178
110
58
58
74
83
119
37
91
127
152
138
109
55
58
114
95
92
55
92
67
126
131
104
79
99
122
122
137
138
102
91
126
138
148
140
179
163
122
101
56
68
126
41
104
83
129
138
152
105
160
171
92
144
105
114
105
97
128
91
122
58
56
134
138
98
105
55
103
107
37
69
178
103
83
67
111
67
125
126
136
130
188
37
114
92
67
112
147
37
127
180
126
137
101
138
127
69
92
104
93
152
92
146
104
109
122
122
55
109
93
140
102
55
56
110
138
96
110
122
104
140
78
91
178
122
67
139
171
92
119
127
140
69
79
128
168
92
112
67
100
146
122
93
69
99
131
105
138
55
122
119
105
69
104
113
171
111
127
105
131
92
128
75
105
105
104
126
86
104
105
111
126
140
67
67
146
134
56
106
127
67
117
111
92
139
124
92
74
55
91
144
138
107
110
58
75
92
168
37
136
104
126
106
79
124
110
106
119
162
146
123
58
128
105
162
93
180
55
117
111
142
92
109
107
164
139
178
145
58
97
102
102
139
114
97
89
134
140
144
104
92
111
67
105
93
167
139
83
122
92
56
126
139
144
99
104
106
169
110
111
91
56
55
83
139
138
122
92
122
58
178
92
130
119
56
124
106
122
75
55
107
126
110
92
139
180
138
144
69
124
122
141
92
111
101
145
122
127
134
95
55
126
110
77
111
139
137
118
130
158
138
56
72
119
93
128
92
169
91
144
138
126
67
112
69
55
122
126
139
37
105
68
112
156
126
37
92
110
110
67
69
104
134
138
119
98
55
138
61
127
58
129
126
144
92
178
123
58
145
111
56
58
89
55
123
69
115
199
178
103
152
56
126
122
99
58
67
152
86
140
55
69
110
55
139
92
138
146
92
148
131
178
93
141
104
64
138
79
122
56
92
105
126
99
84
95
105
58
122
109
162
178
102
41
92
104
89
92
103
178
110
144
93
103
128
74
105
123
127
146
92
111
74
56
130
146
168
79
103
93
92
136
144
122
144
75
56
126
93
105
92
67
110
86
92
164
126
92
109
67
122
93
56
152
110
93
69
139
138
128
126
178
55
144
56
119
92
55
58
169
111
104
105
137
139
122
110
158
95
55
178
79
137
105
103
110
103
88
136
123
106
126
178
58
148
86
178
178
110
55
77
146
55
127
123
116
152
131
114
111
138
37
122
104
130
37
84
92
55
93
131
169
96
79
98
104
89
109
122
79
56
135
100
111
126
126
84
98
127
37
37
139
142
169
132
55
138
141
104
67
105
92
110
140
110
144
69
92
92
112
122
74
141
55
122
122
111
97
77
107
103
89
123
67
142
126
126
92
69
110
122
169
105
69
137
37
93
84
144
104
97
101
93
140
92
37
56
67
100
58
106
92
122
127
91
37
139
127
126
144
140
105
106
109
69
128
69
103
138
105
136
77
58
105
130
93
177
101
74
139
122
169
124
114
107
73
100
120
119
140
142
37
139
37
92
105
126
100
37
171
138
69
165
92
79
124
148
69
92
122
140
108
87
119
105
122
139
148
152
136
75
37
118
126
128
122
105
122
110
109
97
123
58
138
93
56
134
110
108
79
144
146
110
69
77
56
139
55
122
126
107
92
114
138
74
102
128
92
138
105
160
78
126
117
81
58
123
107
127
127
96
55
67
55
162
162
58
58
121
138
139
92
92
69
101
134
105
144
91
126
86
122
138
86
158
122
77
169
177
104
160
163
139
88
55
56
128
142
110
80
119
110
91
74
137
55
171
138
83
93
138
127
165
178
152
122
67
167
152
144
111
67
56
102
158
110
122
138
92
139
56
55
158
56
55
86
107
92
67
107
127
104
138
61
92
138
152
99
178
126
92
37
128
55
178
56
109
144
69
107
148
138
107
188
114
84
92
139
93
160
99
130
127
142
69
68
119
93
126
128
58
67
75
123
92
132
136
146
93
105
122
134
126
80
37
122
104
105
37
92
139
126
146
105
105
79
145
81
178
138
112
92
145
79
67
73
105
169
58
103
139
104
163
125
119
110
99
119
144
124
116
142
67
126
122
138
56
157
107
99
86
99
138
69
127
56
115
129
74
180
134
92
122
55
126
162
105
69
138
83
132
104
128
138
106
58
93
126
126
92
67
105
79
112
124
178
58
105
92
127
112
122
127
69
67
140
84
99
146
55
95
98
124
86
55
91
128
121
77
107
93
110
122
103
68
122
110
128
152
37
103
127
142
122
93
118
110
55
122
100
98
110
132
138
55
126
105
139
107
104
144
68
126
56
88
126
92
110
104
79
168
130
103
138
75
56
110
37
93
56
67
37
67
110
89
152
109
124
110
182
89
105
55
122
74
69
110
109
118
160
93
139
37
58
122
126
83
92
77
139
123
145
107
105
111
126
140
138
122
138
99
112
140
104
92
122
122
92
144
98
141
120
134
114
75
67
146
55
127
131
37
104
92
122
112
127
178
68
55
37
75
148
126
92
92
104
86
129
58
138
92
74
114
162
146
92
111
140
92
144
103
156
146
124
99
55
55
124
105
105
69
113
119
72
129
126
138
127
92
98
168
125
122
56
122
105
110
134
77
97
122
138
37
105
77
126
37
75
69
55
74
88
55
74
122
92
92
110
154
140
105
138
108
178
99
146
138
110
127
56
169
92
92
180
91
137
107
55
105
92
77
56
130
37
105
119
122
134
144
91
37
164
111
152
92
75
101
122
171
102
110
67
117
92
158
110
122
126
99
55
104
79
146
159
55
123
77
98
55
105
122
106
131
58
55
128
144
122
126
92
105
37
67
104
93
137
132
110
152
110
94
129
92
122
135
55
152
152
93
139
91
124
178
148
122
138
152
180
55
122
105
149
110
130
145
69
79
100
92
146
109
122
105
98
58
86
92
74
112
58
104
92
146
169
122
134
126
158
149
131
138
131
37
120
37
88
122
105
107
138
122
104
144
122
55
144
127
79
93
91
146
128
112
141
124
55
69
37
55
104
93
87
37
105
146
109
37
105
58
144
69
88
158
138
132
146
133
178
178
92
55
55
122
100
126
134
105
178
92
144
79
110
56
77
83
148
163
74
88
107
127
102
79
180
55
105
93
37
117
144
178
56
68
107
178
99
55
58
37
92
55
93
136
77
140
56
105
163
122
92
37
56
119
169
74
77
79
99
126
122
99
74
126
146
128
169
58
110
69
118
126
178
146
138
123
91
128
92
139
105
98
149
86
144
55
92
111
92
139
138
138
92
92
127
123
109
111
92
178
110
180
101
105
92
178
75
37
108
56
107
105
105
138
128
67
86
104
67
79
123
104
149
99
108
158
102
55
110
138
138
110
144
110
111
163
126
110
144
126
92
117
37
67
138
178
67
87
119
104
83
55
96
55
169
152
107
84
56
171
147
152
145
178
74
67
77
111
138
144
58
76
134
117
126
67
117
138
92
55
122
169
178
56
111
105
122
56
55
140
138
86
67
81
103
55
144
67
136
139
114
93
169
144
67
84
67
149
106
58
95
128
178
110
58
169
74
55
146
104
124
130
139
146
92
112
92
159
138
37
110
111
119
92
56
55
37
110
92
126
69
74
138
69
105
111
127
181
56
67
88
107
92
67
126
111
122
127
138
106
105
104
92
146
111
171
97
56
123
127
105
171
139
55
132
140
144
152
105
140
138
92
110
169
105
92
110
156
83
150
138
128
144
88
138
77
140
92
144
167
110
37
132
130
106
144
67
126
127
111
105
55
68
55
92
122
178
137
178
127
142
122
101
78
68
94
138
130
110
109
105
110
79
91
68
127
144
97
103
105
74
107
169
104
130
110
58
58
104
126
77
92
138
122
128
180
126
139
93
164
109
110
131
99
126
84
74
146
142
123
92
37
105
124
104
111
122
55
139
103
119
85
105
92
92
105
109
69
130
92
126
92
178
67
122
58
100
104
122
106
67
152
92
138
83
128
128
111
162
55
159
126
114
134
139
138
152
55
68
137
122
138
126
69
126
138
37
77
55
130
56
77
171
84
109
126
138
126
171
118
110
144
135
124
136
55
129
104
56
93
178
168
58
120
67
92
110
144
92
151
128
134
126
112
112
137
79
99
138
92
165
136
92
105
138
135
92
67
122
126
127
146
74
126
92
58
92
138
178
97
127
128
103
92
93
122
91
104
123
98
68
92
91
93
110
92
138
86
169
111
55
104
74
111
110
148
67
131
168
178
58
92
69
122
104
92
144
56
105
55
92
121
37
122
92
120
93
122
131
79
92
55
110
58
37
117
86
148
92
126
158
111
55
130
84
136
55
126
55
122
181
77
122
108
104
58
97
92
127
92
111
92
93
165
69
132
103
147
112
122
89
110
102
102
110
139
58
144
102
127
144
164
100
91
98
110
162
146
97
118
140
104
107
123
128
139
68
95
103
117
126
139
129
105
98
126
199
67
86
122
67
180
165
105
123
56
178
138
144
67
58
144
122
144
97
123
37
125
103
134
138
91
111
74
140
84
92
92
99
122
122
55
92
112
92
68
100
89
114
56
131
56
104
92
136
126
69
126
101
74
165
101
93
138
119
126
163
144
124
138
178
104
101
69
105
55
37
168
105
128
92
79
105
103
126
138
124
126
146
100
68
127
84
144
128
107
69
88
84
105
108
119
93
104
92
67
92
92
139
58
75
91
92
55
128
92
139
132
139
77
122
118
119
55
112
111
139
126
91
104
55
138
83
169
55
68
110
91
94
146
56
123
108
37
178
67
93
104
55
119
91
74
109
119
121
95
122
178
91
144
132
98
74
105
88
126
122
56
105
123
67
122
128
138
37
56
92
55
110
146
165
79
83
105
99
123
109
139
117
55
146
146
138
138
103
169
105
107
87
107
138
37
126
104
152
92
126
105
91
110
55
138
128
180
126
92
105
105
120
110
92
110
92
110
138
122
104
58
83
147
131
100
120
74
37
145
110
86
126
126
122
109
110
81
127
92
109
88
99
88
104
126
84
111
89
76
128
120
58
164
139
93
69
37
122
79
99
37
93
107
140
55
97
107
91
138
140
139
58
67
110
55
138
92
126
169
169
67
92
104
128
137
144
103
163
100
144
93
77
91
110
104
136
178
56
93
110
178
103
100
119
144
171
127
80
144
99
171
83
84
56
92
122
110
110
122
127
130
92
117
129
109
124
67
74
96
139
55
92
128
81
78
122
122
86
55
99
93
152
37
86
55
127
104
128
136
93
127
114
67
127
138
74
55
98
55
55
107
97
92
138
92
55
55
122
144
119
56
138
122
178
99
124
67
88
138
91
106
93
128
99
105
130
55
37
56
55
114
93
55
58
56
128
126
104
122
104
134
86
122
115
141
55
123
105
103
139
168
84
152
106
55
92
55
138
140
99
122
112
67
178
104
122
131
79
89
111
135
100
37
56
178
146
139
125
122
92
110
110
93
105
146
86
139
55
139
127
144
178
55
92
107
56
93
104
122
122
105
180
69
104
178
126
55
178
67
107
188
118
92
144
105
125
55
125
58
146
119
92
109
138
109
138
139
99
114
126
69
138
75
104
78
92
126
56
74
84
92
55
138
138
84
109
104
124
93
110
73
104
92
92
180
110
122
74
93
67
95
146
149
140
84
122
123
122
79
115
122
92
105
168
128
86
55
86
126
99
37
67
94
110
127
58
92
148
142
146
37
56
79
178
139
89
79
122
93
127
101
134
97
144
119
73
74
147
77
105
79
77
126
180
132
88
55
122
138
55
58
111
109
140
110
102
137
88
101
86
55
119
93
138
138
93
169
99
130
56
110
103
103
99
164
99
37
121
106
55
152
95
104
127
55
56
146
72
100
101
84
37
56
98
152
92
113
92
93
158
139
92
55
99
69
152
86
109
149
93
105
106
127
55
37
75
58
152
148
144
105
138
92
97
55
105
144
137
104
110
77
163
133
105
119
138
68
83
122
169
74
127
104
144
58
122
142
122
103
126
123
55
146
126
139
55
126
105
128
139
126
106
144
152
144
74
180
93
126
93
97
140
169
139
112
167
111
89
110
107
98
92
130
64
130
58
148
128
146
137
56
162
69
69
146
98
152
56
80
55
55
134
93
55
92
124
55
67
105
128
55
67
168
136
139
77
118
105
110
158
111
86
139
86
93
178
86
91
137
122
126
77
105
91
91
139
67
146
138
104
126
105
104
102
171
122
56
126
91
117
138
102
79
139
55
140
180
58
124
91
106
107
97
123
67
138
123
111
86
112
104
92
126
86
91
104
93
99
98
55
37
75
98
99
149
92
84
77
99
58
93
150
105
126
123
106
79
37
160
102
69
139
92
126
152
148
83
56
75
56
107
55
126
64
92
110
105
79
55
86
152
144
83
83
126
150
110
146
107
107
105
122
171
67
84
178
122
87
58
140
122
178
117
124
78
150
119
144
92
122
109
75
67
105
144
180
105
67
92
86
94
127
89
123
164
101
92
67
67
55
105
92
122
110
105
107
111
144
74
55
146
110
87
167
105
128
93
169
110
178
110
75
92
178
108
112
37
169
91
98
92
103
100
92
58
92
126
74
142
92
122
138
105
86
96
126
160
144
108
169
56
110
74
58
55
117
169
146
120
93
127
91
129
122
56
110
180
112
77
91
117
111
56
77
104
126
137
148
104
104
138
126
84
58
138
96
180
160
115
67
92
134
138
93
144
111
69
169
56
108
105
79
122
104
111
110
123
119
140
91
178
92
117
110
122
58
138
192
123
139
92
92
84
108
136
122
110
91
103
123
75
112
84
130
132
144
77
160
110
92
130
107
140
55
139
91
91
142
75
178
107
109
105
124
106
104
122
103
79
86
122
132
67
126
144
119
167
146
83
55
130
126
58
134
91
37
169
83
138
88
111
58
86
142
55
110
124
99
152
146
163
158
148
123
55
55
97
164
109
77
146
93
126
138
119
74
100
56
178
117
67
64
105
67
127
104
122
92
119
67
122
126
180
110
107
148
79
67
119
67
145
102
169
125
79
139
104
67
136
138
122
107
146
132
146
146
58
55
55
105
94
93
178
123
163
140
129
178
144
77
105
55
138
67
129
110
55
120
139
168
105
91
126
84
55
189
92
126
58
104
93
110
126
83
104
37
110
122
102
117
37
178
105
74
165
119
104
126
146
56
86
104
110
99
58
150
118
55
178
58
56
152
119
110
55
92
144
99
83
111
101
139
98
56
119
56
160
126
106
103
169
55
143
122
58
109
118
93
104
69
183
67
146
128
104
89
75
111
122
37
119
120
58
138
79
104
178
86
69
110
37
97
102
96
124
105
139
111
140
89
120
138
67
199
75
119
148
138
97
126
55
105
67
137
86
164
74
68
98
139
140
132
128
75
132
123
111
104
127
152
138
138
67
178
37
55
58
75
109
103
144
91
110
144
107
67
126
77
55
76
104
127
55
130
104
113
147
56
115
58
110
69
104
68
92
69
91
137
100
148
107
169
37
93
67
164
120
77
100
112
93
55
93
147
56
69
123
55
56
92
156
146
123
171
124
83
92
92
109
156
121
169
100
74
55
118
97
37
128
68
139
106
119
113
178
128
139
64
55
97
109
77
122
92
178
152
169
55
123
162
93
100
169
168
103
124
110
121
123
110
164
109
110
93
131
37
83
134
112
67
124
99
122
116
104
105
103
138
128
110
126
92
55
152
89
103
163
92
55
122
100
169
55
131
128
128
69
122
119
83
126
141
75
99
37
104
55
55
77
122
132
103
115
109
152
37
55
56
144
105
99
122
114
111
144
58
134
96
105
92
105
139
126
119
92
138
126
98
122
152
86
105
128
122
68
169
92
122
168
112
104
86
138
102
37
105
104
152
93
86
86
105
128
104
88
124
139
58
178
128
67
110
118
99
102
137
126
146
111
55
119
37
69
56
64
126
130
93
86
68
77
105
110
123
122
93
152
76
79
68
168
119
144
55
140
114
98
69
188
74
152
93
77
118
160
77
126
101
122
128
107
67
132
138
127
169
171
104
55
58
188
124
37
92
105
92
122
83
178
56
123
164
111
129
126
97
96
98
102
126
126
55
126
100
75
128
138
92
138
102
110
139
122
144
127
124
56
137
67
126
83
139
93
112
104
56
104
86
163
58
105
111
55
99
103
169
67
118
134
112
110
97
148
139
144
130
105
92
102
126
120
91
122
127
148
114
93
100
74
111
130
110
122
92
110
126
106
67
126
92
77
165
120
119
56
138
138
122
100
171
144
91
139
114
127
92
126
84
56
105
55
124
83
118
138
152
139
113
139
104
96
162
128
101
105
199
69
92
138
105
92
56
122
67
105
140
138
72
93
130
119
168
126
110
91
67
55
124
128
74
93
92
55
178
105
105
122
95
117
72
138
162
92
83
104
132
138
119
105
178
86
67
122
124
110
104
105
55
79
98
128
105
126
105
68
99
137
75
178
167
55
96
152
83
146
97
88
92
74
55
55
105
92
93
152
91
119
109
92
131
79
79
105
105
93
69
180
55
144
92
118
69
58
178
112
58
126
105
168
147
117
56
110
138
67
139
75
89
58
69
77
110
92
67
126
171
106
55
58
104
179
92
77
126
104
111
140
106
110
92
117
69
110
152
110
37
139
110
140
131
126
144
56
149
56
67
37
111
37
110
105
151
91
126
126
128
169
164
92
67
138
105
160
128
110
136
79
105
93
88
93
100
168
91
178
114
104
92
37
84
111
92
58
88
91
168
104
56
109
126
92
102
134
152
109
107
104
56
92
158
104
151
93
67
89
119
74
83
99
37
105
58
122
105
148
105
92
56
55
122
91
79
127
152
126
130
37
92
111
55
112
165
112
105
165
75
109
109
69
100
122
178
109
126
79
124
128
67
127
98
93
93
110
79
126
138
79
89
99
56
122
146
134
56
92
55
122
135
140
152
75
69
56
77
55
144
109
105
114
110
111
92
92
91
37
95
69
126
140
144
79
92
182
119
105
122
99
105
56
77
79
110
163
122
114
84
56
178
136
55
123
138
55
127
86
37
126
105
67
37
93
79
92
140
99
124
162
158
122
126
146
75
126
55
123
92
119
67
165
109
182
128
93
86
139
104
55
93
107
75
58
103
104
149
92
105
178
140
122
127
93
105
169
55
122
100
102
107
104
107
95
99
136
127
110
122
96
67
68
110
134
136
89
110
55
126
111
92
123
80
164
126
138
101
93
99
104
84
55
162
55
86
76
67
92
122
58
92
105
68
139
126
100
122
120
128
104
135
122
100
92
144
69
122
144
109
138
122
118
178
92
135
92
144
103
123
123
79
74
92
129
79
138
122
104
123
110
146
126
109
55
86
67
107
104
110
122
86
140
119
93
98
74
139
123
58
138
104
92
84
56
79
75
92
55
107
148
158
146
121
163
178
134
104
68
110
119
77
145
139
55
56
79
144
86
92
123
110
134
138
139
119
122
126
114
111
93
86
55
109
79
123
37
138
122
105
105
131
61
55
144
105
111
138
111
139
69
136
97
55
110
130
110
128
123
41
122
89
128
105
118
126
127
127
96
97
68
92
110
120
119
110
158
89
111
118
103
107
37
144
55
138
139
126
69
55
110
67
92
138
93
122
67
86
138
134
138
107
152
137
119
106
107
104
122
152
119
123
148
92
110
92
92
67
105
92
78
89
88
75
135
144
122
105
105
123
99
83
138
127
134
77
56
55
139
86
123
126
93
37
92
101
132
110
126
86
144
105
139
99
139
89
67
92
124
55
67
80
128
152
105
99
138
105
55
111
92
55
75
69
55
178
97
110
69
124
115
139
128
86
140
126
109
55
105
146
135
127
107
92
77
77
55
67
101
98
91
84
55
56
93
111
86
127
120
127
178
149
128
69
123
55
146
162
180
104
93
111
127
109
132
132
138
138
122
110
83
122
131
120
122
139
105
104
134
105
110
123
136
138
134
109
124
139
169
110
146
92
92
95
109
122
75
136
69
100
126
122
138
74
110
139
56
93
100
92
140
110
138
105
92
128
126
127
86
67
110
104
104
102
107
79
92
105
99
136
124
98
101
126
138
138
126
130
83
37
61
140
93
92
105
58
77
92
136
110
104
98
126
55
137
92
110
68
138
105
105
93
136
55
127
79
93
160
110
92
169
99
104
126
126
92
140
67
103
126
102
79
128
55
111
122
104
75
92
68
75
92
139
158
74
67
56
92
56
92
103
37
142
123
122
131
56
56
37
152
93
92
67
128
91
146
115
95
131
138
67
67
56
74
127
72
104
134
67
75
92
105
86
129
55
78
55
99
178
123
178
140
169
88
67
92
112
99
55
75
88
119
92
115
91
105
92
100
92
178
74
107
93
104
109
128
58
119
91
67
92
199
105
126
92
55
171
91
105
139
105
199
77
136
104
89
139
77
119
131
92
110
127
144
55
97
122
110
75
139
152
119
164
69
152
178
67
128
104
144
127
67
101
134
86
105
139
146
120
69
109
128
67
126
93
122
131
126
68
105
67
139
169
169
56
37
123
102
99
41
117
128
55
74
110
79
146
108
55
161
127
127
96
58
74
154
100
168
105
169
131
137
93
87
109
126
55
106
104
142
88
126
92
146
178
56
137
55
98
55
107
99
115
74
178
123
120
104
126
55
104
37
92
109
119
116
104
91
126
97
138
67
107
91
93
92
103
37
86
139
105
178
107
56
104
110
178
83
138
110
128
56
92
111
100
118
103
56
55
126
75
138
55
106
136
122
132
92
37
130
56
100
76
84
58
127
126
107
37
112
67
84
110
126
111
101
55
55
146
86
99
134
67
79
69
92
126
125
92
104
139
93
68
171
69
83
117
117
127
91
74
105
112
135
122
104
93
139
55
146
138
55
110
131
152
149
58
104
102
169
127
92
105
67
55
165
138
127
122
107
84
109
67
144
86
124
104
56
131
130
104
86
123
58
149
88
55
138
138
110
117
137
110
134
86
163
139
138
110
119
132
128
58
109
75
146
92
56
55
107
56
138
92
93
146
55
104
108
119
110
116
37
104
68
107
97
127
154
122
37
93
112
58
89
109
110
111
138
67
152
109
110
56
104
72
83
55
135
105
122
124
144
58
126
111
92
67
105
104
55
72
126
152
120
75
138
67
105
69
123
95
99
109
136
104
127
83
122
128
92
105
160
107
55
144
55
86
92
91
144
158
55
142
37
148
91
163
110
158
37
93
92
136
138
140
99
111
158
91
55
110
128
100
119
105
142
79
139
85
123
105
146
105
93
104
79
148
92
68
67
67
104
105
121
68
55
140
115
67
37
134
104
144
105
111
86
75
101
92
92
74
158
92
104
110
92
131
67
100
92
179
37
99
188
74
92
81
104
92
37
58
111
139
109
124
148
110
168
110
93
102
144
111
180
58
93
127
105
104
122
69
122
55
126
104
103
105
107
55
37
111
77
93
109
104
138
127
128
92
131
91
138
126
77
138
126
145
139
67
126
55
124
97
117
122
56
110
118
134
168
152
119
67
110
144
92
140
92
139
69
122
122
109
130
112
124
109
92
58
111
110
126
55
122
132
56
150
152
91
104
67
122
105
55
97
122
83
92
139
158
37
178
123
140
105
107
140
75
91
114
105
69
81
111
99
58
92
93
192
122
111
55
56
127
104
92
146
110
119
91
149
107
136
147
105
83
138
126
56
89
75
56
69
119
119
123
69
141
97
118
122
55
67
110
118
92
178
124
67
119
86
55
135
132
58
92
132
67
134
143
55
124
126
67
105
67
171
112
92
119
110
55
128
105
104
110
110
100
92
89
180
104
111
144
92
138
144
115
114
137
56
93
105
148
153
100
105
178
104
105
171
119
140
92
93
58
122
144
92
101
119
92
56
122
134
94
123
152
58
178
92
152
74
97
89
122
92
86
124
138
58
178
105
110
139
67
128
83
128
122
58
92
164
126
92
74
140
37
98
89
128
58
93
145
110
122
97
164
139
92
37
122
100
104
105
168
69
105
122
138
55
158
92
92
55
178
69
92
92
37
107
126
75
152
110
68
93
148
67
92
92
132
56
111
92
127
37
144
139
92
123
144
123
37
91
111
139
92
122
67
107
92
178
58
74
55
139
92
67
181
58
111
55
105
125
104
56
126
126
93
160
56
55
105
123
37
67
126
92
148
83
56
106
104
105
55
130
86
92
75
105
145
107
105
55
168
138
102
126
109
140
37
122
126
118
111
128
67
134
110
105
144
97
126
102
162
37
55
126
160
108
121
131
158
91
86
83
58
86
158
92
93
93
146
139
37
67
112
146
55
74
146
92
117
86
111
77
104
107
126
162
144
97
134
102
109
114
55
93
111
88
122
58
37
110
138
152
105
130
127
92
105
105
122
75
107
122
93
110
77
93
79
92
178
69
178
126
68
100
126
104
128
138
122
112
56
126
127
127
97
126
158
100
58
140
86
180
56
110
148
117
37
103
138
139
178
91
99
103
104
138
104
105
128
178
58
126
55
105
95
138
123
144
58
67
106
69
58
67
92
56
144
98
152
162
122
37
37
138
104
112
92
37
107
81
99
127
117
138
105
92
180
152
56
67
123
169
164
77
110
105
69
93
148
115
107
97
150
110
112
138
86
101
109
69
110
111
144
86
107
140
140
79
37
37
178
92
92
92
91
148
75
92
75
104
104
127
122
158
148
122
108
148
158
103
67
109
126
99
132
148
146
92
118
79
93
117
138
55
168
67
69
97
83
55
127
108
99
102
106
125
110
138
103
58
69
94
168
56
67
56
79
55
128
105
139
110
122
123
137
138
110
37
110
138
85
104
169
111
37
110
100
79
69
144
138
165
85
86
171
99
55
114
110
122
104
105
58
96
73
67
80
67
149
132
110
126
149
127
178
135
84
126
55
37
57
81
87
79
152
110
178
112
138
119
37
58
92
92
109
126
180
92
76
122
55
119
55
55
131
122
106
104
112
55
86
139
110
122
79
169
140
92
55
92
105
107
91
106
119
146
73
105
138
92
122
127
138
56
178
169
103
56
105
151
129
100
131
37
122
126
110
56
93
139
152
55
92
139
110
104
107
113
67
86
144
148
67
110
109
101
92
37
105
55
109
139
96
178
101
98
138
155
137
84
55
97
103
135
105
86
93
126
102
74
127
55
134
107
169
67
56
99
97
168
126
107
104
160
148
67
116
163
178
122
56
152
92
180
144
152
127
146
95
128
112
55
123
111
92
123
79
105
110
99
109
139
110
100
146
146
138
58
152
139
67
134
119
67
138
147
139
87
146
138
147
104
128
56
93
169
111
75
55
130
111
119
109
152
86
128
105
139
55
122
107
145
145
110
104
142
152
104
117
121
81
69
110
58
171
83
139
92
55
139
56
130
122
67
92
104
92
77
68
126
119
128
37
37
149
56
124
77
142
122
58
86
92
93
121
127
56
146
122
110
55
37
139
123
55
123
146
105
92
67
104
89
138
127
122
92
91
140
125
58
92
110
126
37
93
146
126
139
150
110
146
93
101
122
55
122
104
109
83
138
114
141
127
104
138
105
109
122
55
95
74
152
91
37
140
107
122
102
138
131
178
139
140
168
160
129
123
146
118
178
122
107
124
152
130
144
124
37
92
109
110
89
67
89
92
112
91
58
75
144
78
139
105
58
168
112
92
145
67
110
106
138
83
93
129
144
131
69
104
75
127
69
169
128
86
167
55
92
162
126
119
92
124
105
111
56
112
178
122
140
55
98
178
148
99
138
55
75
118
93
126
144
55
91
55
152
99
139
92
119
55
56
92
138
86
103
55
124
104
107
107
93
37
56
121
134
105
74
119
91
180
109
123
122
78
126
106
126
152
136
123
122
158
152
138
119
122
107
37
122
122
122
119
92
145
105
88
120
118
84
138
92
121
92
79
138
110
152
69
120
138
110
169
102
114
37
144
86
122
103
55
126
122
69
77
141
67
160
119
163
152
127
103
117
142
126
134
178
92
138
144
128
103
160
122
169
55
126
69
134
98
130
91
134
145
134
105
139
92
97
92
58
92
134
131
56
122
67
92
117
105
119
110
92
69
163
74
180
89
37
144
105
122
109
110
55
110
67
159
126
134
58
128
86
92
139
69
110
126
123
110
56
138
92
75
104
119
144
104
91
55
110
158
134
91
95
74
92
79
138
55
113
58
152
137
146
110
55
55
178
105
160
134
92
93
112
83
92
122
92
171
140
138
127
168
139
91
178
138
92
99
167
95
105
126
93
126
139
126
77
69
100
169
89
119
139
91
58
105
136
124
55
67
110
74
75
131
139
122
79
112
92
126
126
83
126
67
107
111
107
119
105
149
127
126
104
110
111
67
100
86
107
139
83
102
86
104
104
168
163
75
92
94
138
146
115
128
93
140
55
84
77
37
178
104
103
86
92
122
122
102
146
110
110
122
140
92
58
103
92
37
138
168
124
103
56
56
37
110
148
110
122
104
93
55
148
111
110
122
67
67
58
69
92
67
148
112
139
92
99
55
79
134
123
77
163
69
140
92
69
144
119
117
105
138
93
152
56
104
123
79
101
83
146
55
93
74
102
122
140
103
144
110
105
114
158
88
111
104
122
111
55
146
152
104
109
110
122
55
182
55
128
67
67
134
74
139
122
55
92
122
92
130
67
138
37
100
126
93
92
99
131
77
81
107
140
119
122
139
55
128
124
104
92
67
178
122
106
126
92
146
112
110
55
93
56
119
91
134
109
144
103
105
144
140
74
126
105
122
100
122
77
109
103
92
97
94
140
122
146
178
55
37
55
138
139
69
67
122
167
127
158
56
163
139
158
69
126
139
91
169
69
55
105
138
108
178
122
110
56
110
126
133
77
92
148
99
162
91
92
37
78
122
139
146
171
103
122
101
105
126
92
89
55
67
79
101
75
55
92
110
123
126
55
55
37
89
118
69
99
126
92
110
92
126
132
75
92
105
111
55
114
79
128
152
159
93
107
55
110
146
114
103
86
58
110
169
92
111
103
86
92
144
92
37
126
88
178
144
122
124
67
92
69
129
129
55
134
68
97
110
55
67
103
122
126
56
122
86
93
124
134
167
140
73
118
55
104
130
86
55
77
178
178
126
111
92
120
127
79
122
152
120
152
146
104
55
169
158
105
127
37
148
110
97
111
127
106
111
88
139
55
99
149
136
171
83
104
92
67
110
109
71
75
139
109
80
58
130
146
122
67
178
168
92
55
127
178
103
104
149
55
92
107
103
105
92
158
91
55
86
86
138
158
83
105
79
126
56
58
138
95
138
56
132
111
132
56
122
105
110
135
37
92
169
102
99
67
92
105
132
180
127
86
101
124
84
104
105
128
93
111
37
67
127
99
91
37
104
158
126
169
122
128
92
109
105
104
103
122
127
56
110
119
163
112
103
93
88
58
77
142
139
69
171
139
110
67
110
109
92
98
69
69
146
81
158
122
128
105
192
148
110
109
127
37
110
122
105
104
98
55
80
142
137
97
104
92
110
101
68
158
105
126
117
138
92
80
132
138
105
152
104
96
86
138
105
146
77
128
122
111
55
102
67
104
86
98
144
126
110
178
55
107
160
58
117
146
58
89
87
77
139
122
86
130
89
56
144
119
58
93
129
152
110
126
56
128
104
128
164
112
123
79
118
117
140
58
58
67
99
105
100
77
93
87
126
105
77
58
152
55
132
37
130
148
115
83
112
68
124
112
110
105
122
119
91
121
55
146
139
139
138
105
67
136
111
165
107
152
79
74
99
123
132
122
122
134
104
110
132
110
105
124
110
69
58
92
69
77
92
111
105
64
127
177
122
56
97
110
56
146
180
75
81
37
104
86
111
105
130
86
128
91
138
122
126
109
178
110
122
55
67
55
131
122
105
79
122
95
126
105
134
162
138
67
111
109
93
86
74
104
110
122
55
55
55
156
110
110
128
135
109
134
37
152
55
89
77
93
127
122
104
127
56
126
98
132
139
110
55
69
75
79
139
138
107
92
120
122
37
67
134
55
56
123
141
140
165
169
107
146
126
69
122
77
140
56
108
139
98
124
123
111
92
92
136
97
110
105
128
123
101
105
58
127
92
122
104
56
110
93
110
86
55
124
88
86
93
122
126
105
68
58
110
110
105
92
56
92
55
79
77
168
110
109
148
37
111
67
178
92
74
126
103
123
91
126
58
58
86
144
55
102
83
130
109
105
127
111
75
55
128
76
127
111
69
74
104
67
86
178
67
105
140
127
92
92
74
104
135
126
158
104
92
107
99
93
37
93
132
138
69
138
98
112
68
138
119
128
104
122
84
105
160
106
56
162
55
72
69
178
99
75
126
92
41
169
115
138
199
144
92
92
126
55
105
86
69
69
122
105
58
105
55
92
111
138
112
136
69
136
92
122
55
83
83
111
91
178
144
126
126
56
144
122
92
115
180
149
122
37
102
92
132
67
55
93
129
138
74
67
103
104
67
100
91
97
122
55
101
123
144
179
104
132
126
99
55
122
93
122
138
138
103
104
123
56
146
110
117
122
163
84
131
130
104
55
84
106
56
108
178
109
107
67
144
91
165
140
67
138
79
55
105
128
98
128
130
124
144
55
138
74
91
58
126
139
178
55
138
104
58
92
55
110
55
92
55
105
144
55
144
178
86
168
93
146
110
119
178
165
138
93
56
55
92
152
67
55
112
77
56
100
110
122
74
101
105
68
102
128
158
74
55
67
99
109
67
128
180
122
123
75
92
107
92
104
79
127
126
111
99
110
93
178
138
104
77
138
105
180
142
102
86
91
127
101
135
105
126
92
139
95
109
105
105
124
105
130
126
105
67
126
152
132
134
102
134
104
104
107
169
55
169
79
138
67
69
104
55
124
126
92
164
56
111
144
107
106
109
55
92
144
55
139
67
124
111
169
96
107
110
126
78
137
109
129
100
86
126
67
99
55
89
93
93
91
55
55
86
55
55
111
55
127
84
77
98
107
92
126
99
91
92
122
152
111
79
55
93
112
55
138
91
122
132
83
105
91
55
122
92
124
56
138
117
74
144
120
68
111
104
118
91
107
67
178
107
106
92
103
55
108
55
55
104
126
178
105
110
91
99
92
99
178
138
55
144
105
118
67
55
128
122
37
92
69
55
178
55
144
138
119
92
69
132
110
86
102
135
122
178
110
132
107
110
83
92
92
123
104
138
144
105
110
113
108
143
137
64
107
75
114
139
137
122
126
79
74
79
146
120
138
167
132
128
148
123
84
55
126
138
75
178
92
92
67
152
126
132
152
114
110
100
109
148
74
178
169
139
104
86
83
93
123
55
122
128
110
92
144
199
93
102
75
86
108
110
122
110
106
110
86
169
104
55
81
163
139
55
138
148
148
105
135
127
99
103
180
75
144
122
95
110
92
106
104
122
91
92
55
108
138
92
132
152
122
55
92
69
139
86
123
92
138
130
168
178
97
110
75
104
134
134
55
104
69
56
37
37
93
127
178
178
74
152
178
107
92
126
92
105
86
119
105
55
100
105
134
101
77
129
138
68
104
92
58
109
111
123
110
83
178
165
92
110
76
56
171
110
79
105
138
111
138
110
105
144
55
178
37
92
178
86
92
145
67
55
144
111
132
92
67
84
138
128
86
92
163
97
139
152
55
83
37
84
79
92
140
99
178
122
110
115
105
58
56
163
105
92
126
55
93
152
126
126
77
77
37
111
171
74
121
119
104
149
91
169
117
92
102
178
111
74
83
119
74
124
69
126
138
112
138
69
105
58
107
91
37
101
138
144
55
123
119
160
123
92
136
144
83
104
77
119
101
169
121
178
122
122
79
75
138
145
111
156
126
197
140
83
137
84
137
108
178
124
67
75
132
92
136
78
56
146
97
96
68
103
93
180
136
91
178
88
55
91
127
68
69
95
118
55
104
122
126
136
112
105
105
105
68
67
178
97
127
77
144
139
124
105
110
55
86
178
123
92
92
101
138
37
109
92
86
146
138
127
69
128
68
126
75
56
109
55
37
67
119
135
130
158
138
132
127
138
55
67
58
138
55
119
138
100
92
104
119
58
105
117
144
55
37
165
55
67
140
126
104
124
105
86
113
55
126
139
74
111
78
111
126
107
77
178
102
158
74
101
86
55
37
163
171
146
74
56
77
56
127
79
108
108
110
152
55
109
122
120
92
178
146
152
110
123
92
137
92
127
55
55
126
86
139
104
122
96
146
55
122
163
74
122
58
58
55
122
126
110
55
92
58
126
100
55
92
58
134
55
99
105
138
126
92
126
68
163
144
98
55
103
126
111
110
56
131
128
137
92
74
79
151
69
134
138
58
138
124
131
92
163
93
122
83
92
122
89
127
132
92
178
55
151
119
120
84
141
37
126
67
138
110
109
117
55
110
84
56
77
99
162
69
105
91
110
122
105
92
135
151
75
56
107
92
97
92
105
135
110
126
95
122
144
152
127
178
67
74
122
101
55
56
131
152
58
104
144
126
105
93
111
140
102
105
92
55
92
138
128
55
145
67
134
37
55
139
110
110
138
55
55
123
128
126
75
99
91
128
92
37
89
104
79
139
75
139
55
55
99
134
100
92
122
110
129
128
110
178
74
101
122
138
188
138
72
127
139
69
86
128
126
120
148
149
105
138
89
134
86
109
130
128
93
126
56
92
123
93
148
83
122
138
129
122
83
123
77
55
126
138
105
124
92
111
148
55
146
68
55
139
99
126
67
58
55
117
100
134
103
55
92
139
126
37
119
163
92
108
120
102
146
146
136
75
99
55
88
152
126
122
178
56
138
69
122
178
168
145
122
106
160
146
128
129
156
122
129
122
37
104
67
138
105
124
107
74
58
124
138
138
139
182
92
86
37
122
127
117
105
152
139
109
69
122
83
162
117
37
110
69
110
99
144
107
182
169
127
135
95
134
122
139
127
138
146
55
137
92
138
122
93
101
84
99
178
75
99
86
126
110
105
146
146
88
37
126
69
79
55
92
67
68
158
55
178
138
114
105
103
141
93
78
95
114
55
163
55
56
58
37
98
114
104
138
77
75
92
86
37
131
81
86
78
152
178
37
92
75
146
56
93
93
55
156
138
109
178
139
178
92
83
110
92
84
107
142
75
112
92
178
139
83
105
37
146
92
121
109
55
128
55
67
109
122
105
127
99
178
105
126
75
121
55
144
79
58
122
110
142
140
119
107
58
128
122
56
126
112
101
139
120
105
111
77
138
56
92
171
103
93
138
163
98
146
152
67
146
89
140
139
107
109
169
37
115
125
92
104
134
110
119
103
69
92
107
37
68
92
130
169
168
98
126
105
55
126
126
138
122
87
67
104
138
139
111
124
106
148
111
98
162
109
110
110
122
93
178
104
144
122
98
55
107
111
128
58
84
89
56
103
92
119
37
81
109
134
132
152
126
128
126
122
171
127
139
91
69
138
94
123
55
153
128
79
110
110
104
104
127
74
126
37
110
171
110
139
132
55
67
122
56
55
92
69
122
91
164
124
37
121
126
103
178
55
124
93
139
75
105
126
93
148
107
105
152
123
58
103
138
140
136
92
145
132
108
93
55
122
56
56
110
118
152
58
69
122
126
144
67
55
113
122
92
158
92
128
92
56
92
68
101
131
134
105
86
106
103
131
92
111
126
69
101
67
97
93
83
92
109
93
110
55
101
93
134
139
67
146
69
101
55
124
132
144
106
141
92
171
105
92
160
79
126
119
129
56
138
123
125
178
37
67
110
109
120
91
74
91
110
139
168
92
102
97
169
134
110
91
37
95
178
139
146
92
56
148
92
83
182
67
95
67
67
138
77
77
128
119
139
137
152
107
91
110
126
178
41
123
120
69
110
168
83
67
107
146
93
132
127
105
178
138
95
92
137
144
107
96
75
79
144
119
128
126
93
122
69
132
75
110
109
37
122
55
134
55
56
105
105
122
91
121
123
84
137
87
123
138
138
104
107
128
144
101
144
107
130
122
58
139
107
107
104
122
119
122
104
92
119
130
110
92
122
111
127
77
55
55
144
105
123
37
139
92
111
114
110
109
144
126
105
127
84
92
93
71
109
98
127
122
110
58
86
103
55
122
162
163
146
55
67
69
144
79
92
67
119
67
105
129
105
100
146
160
74
75
144
55
138
119
106
138
123
105
99
124
111
139
119
122
92
91
124
92
58
111
67
55
140
92
169
58
56
128
56
122
95
104
105
99
101
91
138
79
106
127
95
134
93
119
138
126
109
125
92
110
58
99
93
92
138
37
114
138
55
77
37
55
129
92
144
122
123
55
97
95
93
128
124
100
93
56
110
112
146
92
110
131
105
93
94
56
104
120
111
160
134
144
92
55
152
127
140
92
152
123
152
69
69
77
127
111
148
98
109
105
130
178
55
108
87
127
104
55
67
127
168
99
152
178
119
158
88
130
131
134
156
128
122
79
126
107
134
77
141
91
169
136
55
124
110
144
123
67
126
101
152
97
98
104
131
56
69
122
91
139
73
178
104
110
55
110
55
100
144
122
139
92
101
127
77
69
168
74
119
55
112
126
55
99
83
121
92
105
144
138
124
93
110
127
79
132
120
106
128
86
55
134
128
37
67
126
112
110
56
86
120
110
127
58
137
104
127
122
105
117
127
110
124
79
107
73
122
122
92
91
106
144
110
56
178
119
101
86
136
188
91
120
75
104
69
138
83
126
122
92
130
93
105
105
140
122
171
132
139
67
134
104
56
83
127
138
93
92
56
180
107
67
122
92
148
100
140
86
126
58
55
107
55
77
140
56
56
103
67
126
113
146
75
104
119
89
138
105
119
171
105
69
77
111
124
92
152
128
109
93
56
98
110
134
97
58
122
69
37
105
139
178
137
95
126
93
124
92
138
105
88
180
126
92
111
105
84
124
105
108
92
93
180
138
162
105
139
92
122
67
136
192
140
74
84
118
92
138
107
110
139
92
103
122
92
126
178
118
92
92
180
126
127
108
117
122
95
56
55
55
118
92
146
122
109
167
77
91
92
122
109
69
134
123
144
58
74
169
146
146
138
128
144
92
56
109
55
93
130
105
117
92
99
109
140
86
122
144
110
122
125
110
126
79
107
144
103
126
126
130
37
88
127
86
146
139
92
104
119
126
93
69
37
74
98
55
105
56
178
138
73
105
134
81
123
135
74
117
68
111
124
122
104
94
86
146
140
128
107
105
37
68
105
86
105
68
128
120
56
56
110
77
104
79
92
77
79
101
67
101
118
64
152
55
127
55
104
55
106
110
126
134
140
126
126
92
69
111
105
69
139
111
104
180
102
55
122
188
92
68
139
139
139
163
86
164
56
139
92
109
120
58
105
152
120
79
99
68
110
79
138
131
92
109
105
117
122
146
103
58
126
103
168
110
128
104
86
37
121
105
146
122
58
160
144
69
122
122
55
101
92
56
76
92
37
110
56
67
105
122
100
56
67
86
139
93
119
128
98
110
74
75
119
37
69
67
139
37
56
37
105
92
96
126
112
126
139
84
91
67
83
171
107
77
92
150
107
128
122
55
92
148
122
145
104
67
104
92
171
122
122
56
111
105
139
126
100
92
122
167
67
119
130
67
111
112
111
98
106
79
168
178
92
126
126
99
37
145
169
110
110
122
110
163
125
104
134
37
55
126
169
152
109
67
37
124
92
124
92
93
105
105
178
72
95
110
55
123
93
144
111
106
58
105
134
122
104
110
144
112
74
130
122
126
105
92
140
124
110
122
86
55
107
138
126
126
131
158
111
132
109
140
56
124
93
180
123
37
140
56
144
89
126
178
55
128
105
83
92
110
107
135
92
79
130
105
97
110
127
75
126
86
75
126
69
122
110
141
121
67
67
146
110
139
55
126
93
126
55
102
134
86
67
138
138
109
37
156
72
110
100
77
77
131
118
79
122
150
117
104
69
122
108
103
139
55
136
92
126
104
126
140
128
110
152
143
83
104
93
56
110
92
83
106
138
112
169
146
92
127
123
55
79
58
126
101
75
91
56
152
139
109
178
69
101
124
115
135
102
122
56
110
75
167
126
93
98
140
104
152
146
91
139
58
37
169
124
69
122
105
146
74
78
88
138
119
101
139
139
110
101
123
138
105
106
110
101
104
146
55
75
145
110
109
80
55
128
92
128
122
163
118
93
104
114
126
197
112
126
162
123
110
37
122
55
79
104
128
132
126
79
110
104
56
55
110
105
86
56
110
145
169
122
37
69
83
122
101
103
88
110
178
160
109
136
178
103
167
119
105
134
92
144
69
139
55
141
99
67
103
149
136
67
58
134
122
93
121
111
127
126
122
56
86
67
75
144
123
104
104
128
152
67
122
37
110
92
103
92
58
86
56
152
105
109
111
111
92
92
109
69
86
58
86
86
93
79
140
100
92
55
130
92
126
55
110
58
148
146
99
124
64
158
77
126
138
122
105
114
188
92
107
140
111
75
141
140
144
120
114
56
106
126
112
99
126
68
122
87
67
73
138
130
55
126
146
77
55
56
105
146
178
140
58
58
55
92
126
107
111
111
92
56
127
138
127
69
110
80
72
92
104
105
93
101
55
99
127
107
89
122
79
98
58
55
107
93
104
169
117
67
95
104
139
139
86
115
152
138
77
58
119
138
132
122
122
127
69
67
104
74
104
69
75
37
69
122
67
92
79
107
126
111
119
130
178
119
78
104
55
117
80
126
55
92
131
110
110
93
86
105
131
92
104
79
67
117
104
140
93
79
122
92
152
91
69
126
104
37
92
110
106
136
105
58
55
67
55
122
158
97
110
126
69
75
168
92
113
106
123
98
101
110
122
119
127
93
77
122
119
105
74
130
92
119
135
101
110
97
123
88
146
144
152
136
87
126
105
110
125
110
111
92
117
104
104
80
92
79
79
125
56
139
119
110
74
68
83
126
122
139
111
122
128
97
110
126
123
118
102
58
127
107
37
79
57
104
111
109
108
105
134
80
72
97
41
128
67
81
68
99
56
69
131
80
122
67
128
86
56
136
58
72
126
37
144
123
126
144
93
56
122
171
138
37
98
126
77
105
122
105
126
92
150
92
55
178
105
138
126
56
137
137
139
97
110
55
104
105
122
126
103
104
128
92
104
37
138
68
92
124
55
105
91
78
122
129
122
109
86
55
56
98
37
95
139
163
56
153
86
105
103
137
84
132
69
69
127
105
73
122
148
79
74
127
118
105
131
55
142
93
109
106
136
119
127
56
86
69
58
144
92
126
67
91
92
77
138
92
127
152
138
67
144
152
55
110
55
199
129
103
137
122
122
92
77
111
199
127
110
119
56
55
79
88
138
91
101
92
107
126
169
89
56
144
56
105
157
92
56
158
160
162
37
178
131
146
122
112
56
117
134
55
110
149
109
101
121
107
119
124
122
98
105
122
126
92
110
107
93
130
99
108
91
105
86
81
140
97
148
37
127
111
128
110
136
74
160
128
55
138
110
136
146
105
130
119
178
126
145
105
165
122
122
92
55
126
127
86
152
137
134
105
92
123
100
55
56
67
69
105
169
92
130
138
122
138
104
122
105
92
117
118
167
55
126
165
124
111
74
146
138
139
111
102
123
144
178
92
126
104
139
127
93
55
178
110
92
122
93
56
104
69
152
100
37
92
199
80
126
92
104
107
180
138
92
56
79
67
146
93
67
138
89
55
138
122
88
110
56
86
83
56
94
79
86
103
104
138
91
92
92
127
67
110
111
76
120
105
92
160
69
58
146
152
55
132
145
86
75
105
91
111
149
67
91
126
74
122
178
127
128
119
106
55
92
104
69
123
92
93
122
139
77
127
91
135
178
105
74
92
138
86
58
178
100
126
92
79
126
95
142
37
93
139
97
56
138
138
138
104
69
86
55
138
163
103
138
107
92
140
56
105
111
128
144
192
138
105
105
124
73
129
126
139
139
169
92
133
137
84
134
77
67
162
105
79
56
56
79
78
138
56
67
128
99
126
138
77
138
92
101
103
122
149
79
67
158
127
165
138
102
126
107
78
92
126
98
105
123
139
128
138
109
110
106
171
122
167
37
110
148
77
136
171
144
126
126
86
105
122
139
136
123
93
139
56
126
104
182
93
92
107
178
103
107
138
119
140
105
126
92
104
122
81
119
144
121
109
139
92
69
139
141
101
55
122
138
126
88
68
178
122
92
146
92
110
93
140
152
67
92
79
37
92
110
132
138
92
122
55
55
83
67
69
37
92
77
55
110
75
84
144
110
84
169
138
138
103
104
148
126
56
192
67
117
87
126
128
122
126
111
99
92
109
105
138
131
124
117
126
103
75
126
55
55
134
69
86
122
58
55
130
37
55
76
178
120
110
138
104
55
106
37
122
122
162
55
93
91
105
178
56
122
92
136
67
129
119
93
105
106
122
144
122
151
123
105
92
92
138
138
131
124
127
86
107
69
67
134
117
92
151
139
117
98
149
92
56
93
110
127
102
178
136
77
100
137
110
79
114
110
136
105
146
125
95
37
144
104
74
138
180
74
152
110
121
88
122
56
74
55
77
178
169
104
117
149
115
103
110
104
58
86
110
138
110
123
92
75
81
178
110
122
110
67
93
171
111
64
99
165
138
144
146
122
139
126
55
119
99
120
104
92
93
55
109
126
55
84
94
128
138
129
92
139
144
110
110
69
99
93
86
134
83
110
148
178
92
134
80
141
100
102
169
37
92
158
138
55
68
104
68
126
58
95
89
122
120
114
107
55
112
110
55
77
95
132
69
79
74
169
86
139
58
164
69
68
92
77
139
122
123
77
76
55
92
37
119
138
95
113
119
86
122
92
37
104
168
178
55
37
104
93
123
93
56
123
110
56
67
56
55
123
75
127
157
100
92
140
122
138
178
105
160
67
83
88
102
37
92
126
109
92
92
128
122
110
56
107
104
128
67
138
117
74
37
105
92
68
110
58
124
119
92
67
122
105
69
136
111
105
126
138
122
69
139
97
123
67
140
126
55
123
89
123
89
100
130
55
162
68
142
92
108
37
106
93
67
37
146
100
132
94
128
89
127
120
124
139
126
144
107
58
108
110
158
110
56
92
119
92
93
75
55
89
102
152
92
86
114
93
37
167
126
139
58
134
105
152
122
126
55
99
144
148
118
109
162
104
92
128
122
136
58
92
105
95
84
86
144
107
92
97
105
117
92
129
152
138
126
105
55
138
145
56
104
134
104
140
79
105
126
89
69
99
55
99
110
107
92
55
126
120
67
111
98
92
105
97
139
138
69
140
101
95
120
139
93
83
41
119
122
55
142
79
92
124
144
124
67
79
93
92
138
139
110
55
152
150
67
126
55
134
138
144
138
123
88
93
104
148
138
92
99
134
123
84
93
132
55
152
93
58
105
104
110
110
95
97
127
55
121
109
55
115
37
93
188
99
37
92
58
92
111
103
56
92
119
140
127
77
97
67
101
178
116
86
115
79
110
138
92
152
127
56
145
74
55
77
144
145
146
37
92
91
117
55
69
109
110
92
105
122
92
162
92
182
68
111
75
103
79
37
139
128
84
92
68
136
92
168
128
104
56
127
110
124
83
126
110
122
127
110
144
69
178
98
128
88
110
152
136
92
104
92
123
146
74
84
178
97
103
56
152
123
56
127
79
75
92
122
79
105
104
92
110
105
92
126
123
178
69
67
56
92
79
99
92
139
107
163
37
37
67
86
79
165
127
86
128
80
138
139
100
124
127
130
127
126
163
56
104
66
148
163
67
55
104
95
134
117
101
56
99
122
111
92
162
171
105
138
68
105
163
149
92
55
91
55
100
92
89
106
56
67
58
141
69
105
139
122
112
91
102
105
105
111
134
86
105
104
74
112
114
56
130
138
93
117
132
107
178
93
69
178
80
91
163
105
37
110
101
100
119
92
126
123
152
83
111
127
109
83
140
92
144
89
139
122
162
119
147
105
84
169
92
105
111
55
130
93
92
93
158
93
92
138
69
110
103
109
138
165
122
69
122
130
120
111
104
56
104
110
106
105
55
55
178
111
127
58
86
122
102
55
171
74
101
67
92
117
122
139
109
104
67
127
92
56
110
126
83
56
146
107
122
105
120
68
55
140
105
131
92
56
67
148
92
139
97
105
97
122
68
55
67
139
78
132
178
126
128
171
75
144
98
56
67
92
92
152
122
114
139
123
92
119
165
58
77
92
138
111
88
105
126
105
99
69
99
74
148
55
124
56
110
124
105
119
67
67
152
91
105
139
92
101
55
56
37
135
128
110
109
103
110
126
105
138
146
87
67
122
112
93
146
92
120
119
126
126
171
91
123
130
107
93
138
169
138
55
138
89
127
124
126
97
83
104
122
158
124
84
117
146
75
178
148
144
182
126
138
105
144
74
56
107
122
100
138
37
69
56
120
126
126
107
92
88
134
99
93
93
128
79
58
100
93
67
127
146
101
58
122
163
77
105
134
139
92
139
37
76
92
158
135
98
128
144
119
126
127
55
55
103
93
122
92
58
130
55
152
105
92
100
164
107
138
117
111
79
122
92
55
92
37
58
55
117
67
107
97
144
148
67
92
148
56
84
138
105
138
92
123
121
122
84
110
67
171
119
105
144
56
92
128
67
118
139
128
126
152
114
139
55
86
178
158
122
74
112
104
139
56
112
111
110
128
144
134
157
92
119
86
109
92
152
111
119
104
140
140
148
67
124
122
55
105
146
146
138
140
169
76
81
92
69
55
122
81
122
67
160
169
104
83
122
104
169
139
110
77
110
56
91
58
122
178
163
37
121
110
108
128
55
55
114
101
138
67
104
92
124
134
55
58
88
134
138
92
139
81
58
67
93
74
37
152
105
67
122
56
103
55
128
139
105
126
79
79
114
78
111
102
130
75
101
56
139
142
67
146
178
55
128
110
160
69
145
129
152
123
86
110
139
91
83
145
77
56
110
138
56
67
122
138
37
129
158
55
140
139
77
55
110
67
37
98
93
92
140
100
139
86
110
96
163
67
126
86
119
75
56
56
138
92
126
92
58
110
55
55
105
91
89
122
111
104
93
123
139
69
79
101
91
128
110
93
92
119
104
104
91
138
122
114
37
128
67
104
146
97
139
128
105
55
79
91
116
109
67
122
103
109
91
152
87
55
102
104
122
128
56
92
86
56
79
77
68
92
127
114
140
77
144
119
148
122
79
68
134
138
124
84
58
92
146
126
92
101
139
137
55
97
149
138
139
140
132
144
103
104
126
56
139
95
104
74
92
128
122
127
123
105
122
92
37
56
67
140
122
145
163
92
84
56
104
138
104
110
55
111
112
128
138
152
128
126
127
92
93
67
110
56
105
86
146
124
122
138
105
152
105
56
56
105
110
58
105
122
69
74
55
105
92
171
145
122
110
122
89
105
75
122
58
110
77
144
105
37
58
113
152
67
118
110
146
122
124
75
107
93
105
163
122
92
83
104
106
130
108
92
37
93
56
55
109
84
86
110
132
136
123
102
91
146
105
144
140
104
58
67
148
92
122
138
178
83
103
69
92
37
55
139
110
56
77
86
111
92
112
126
117
109
104
139
138
55
156
91
140
130
122
146
118
126
55
122
92
67
92
105
92
122
99
67
92
122
56
86
58
128
105
105
67
110
92
178
126
159
127
164
74
83
146
92
93
138
58
105
99
92
158
91
103
55
58
84
75
84
69
107
56
138
56
148
105
93
123
128
135
78
55
92
55
127
130
74
110
55
109
119
178
164
99
126
99
107
55
93
92
111
126
178
126
55
92
171
122
139
144
77
111
83
169
93
55
105
83
75
160
56
97
169
124
92
106
83
104
130
119
55
118
127
122
67
93
123
123
104
98
109
76
55
136
126
138
88
134
178
127
110
37
139
92
144
102
107
123
92
110
55
69
122
126
122
128
55
92
37
120
105
122
56
122
132
163
146
107
127
92
146
105
105
58
56
86
112
122
55
169
79
107
139
92
55
104
114
55
77
152
124
158
100
86
105
92
56
69
121
138
104
67
94
152
136
105
139
127
146
93
126
123
107
83
86
114
55
138
74
122
92
110
58
99
55
122
92
146
58
163
162
145
107
67
144
100
126
112
67
69
126
169
98
126
110
78
56
92
92
122
104
118
136
120
124
37
171
178
86
37
138
127
134
92
163
56
67
67
102
110
109
74
93
139
101
119
104
138
110
103
83
67
144
162
105
111
58
75
88
92
182
55
99
111
122
92
55
97
37
67
171
79
122
105
156
69
129
123
122
134
138
136
128
56
79
163
139
91
148
119
146
80
152
79
58
92
122
160
122
91
93
171
100
93
122
119
56
134
92
93
69
152
105
109
110
104
111
169
178
109
167
120
138
92
107
109
107
107
139
104
110
55
100
126
144
83
109
111
139
128
119
122
124
91
122
137
56
92
109
58
102
69
92
122
92
140
105
110
139
79
122
130
110
105
135
112
144
107
86
131
67
111
122
74
92
107
126
122
100
67
110
138
92
144
130
92
126
37
178
37
56
104
146
37
138
168
122
79
61
123
110
114
55
55
76
126
122
124
152
124
97
75
138
92
77
137
74
152
126
86
55
56
86
95
111
110
178
92
37
140
92
58
138
152
105
165
110
132
140
126
122
67
162
58
105
131
126
128
178
58
99
111
104
86
67
132
58
138
138
98
68
92
122
110
100
111
128
152
126
127
128
152
114
144
55
93
105
110
162
80
110
56
93
142
55
69
152
92
93
105
37
127
56
178
144
55
122
118
139
168
69
110
117
138
91
126
119
169
93
127
160
55
77
110
158
106
69
67
138
88
108
56
107
122
117
105
137
91
140
84
56
152
56
68
92
178
55
74
169
107
84
58
104
122
171
56
37
74
56
74
127
139
56
93
75
152
105
67
125
110
122
92
122
76
69
144
89
105
135
55
92
74
55
126
148
126
122
130
110
112
92
104
126
56
92
122
92
146
180
91
153
92
79
89
152
165
55
55
118
136
126
69
109
102
92
122
122
107
81
126
132
127
139
105
58
92
122
138
110
93
105
122
152
91
69
120
93
123
160
127
124
93
163
56
110
127
117
110
126
171
169
145
152
163
89
86
95
111
92
124
77
138
181
100
58
130
104
111
171
144
163
92
106
123
109
84
101
55
37
139
77
56
165
92
81
119
88
162
110
132
110
124
37
92
69
56
92
104
148
144
56
91
104
152
69
152
93
141
104
105
79
126
99
101
77
156
139
96
103
122
77
81
75
180
86
119
122
55
103
146
72
93
86
92
74
56
139
105
111
169
119
79
56
126
111
104
132
86
92
144
177
122
138
77
144
104
127
138
56
69
110
105
152
122
99
110
105
169
101
37
103
99
140
168
126
127
138
92
128
138
92
79
145
37
93
92
67
68
127
111
106
104
122
124
110
98
92
102
91
92
137
168
69
119
105
123
92
102
122
146
92
79
104
113
56
120
111
138
37
138
77
158
75
109
99
110
111
103
96
126
114
92
80
56
110
134
91
136
109
55
123
58
110
128
99
154
139
111
102
77
130
92
99
178
79
86
104
75
122
83
92
118
108
55
92
118
105
169
122
126
92
67
148
92
127
145
138
77
92
91
140
105
178
115
55
89
37
110
86
55
55
92
126
67
104
77
88
110
91
56
55
105
104
110
105
58
77
138
119
95
67
104
103
104
138
139
122
56
105
56
109
103
107
95
131
88
126
114
130
127
58
84
75
112
158
104
92
164
126
134
128
158
103
110
56
109
114
110
79
142
97
75
139
123
95
110
92
131
123
68
97
118
37
139
97
77
107
67
104
105
56
122
138
144
114
79
138
98
55
93
105
148
112
55
128
122
77
37
122
74
136
56
56
110
75
55
83
100
77
75
58
123
67
74
74
67
93
91
156
100
138
139
99
84
69
117
158
123
134
75
131
140
98
72
55
91
105
137
67
56
180
112
72
109
122
117
37
92
37
122
146
79
104
138
93
178
75
55
123
105
139
37
111
122
92
68
138
58
56
124
56
105
92
152
112
178
152
92
37
92
110
75
122
138
182
93
111
100
55
127
171
58
37
112
37
67
67
55
74
86
126
144
92
131
152
110
110
132
132
93
146
77
105
77
69
103
199
113
75
111
165
110
92
56
37
122
126
55
122
103
110
77
67
144
86
122
144
169
146
55
131
110
99
67
132
133
92
138
92
106
119
79
105
112
55
92
92
138
109
69
95
128
91
58
134
140
101
92
92
144
69
98
126
69
114
104
122
97
105
107
124
116
109
137
152
182
178
158
77
124
83
110
134
144
89
93
152
107
128
111
92
91
136
67
122
92
123
119
93
67
58
107
106
89
55
117
81
178
122
122
120
55
111
162
138
69
148
117
103
92
137
146
102
113
138
134
168
67
58
56
92
83
55
102
152
169
69
55
92
105
58
68
105
58
127
67
111
136
105
139
105
55
135
55
178
104
64
55
146
126
93
55
89
152
127
146
99
110
110
93
135
103
127
105
136
138
122
111
91
88
125
144
103
110
74
67
110
178
180
152
139
122
110
104
136
105
105
178
77
178
168
138
67
144
80
67
86
74
119
55
146
120
106
134
93
86
122
139
123
127
144
146
92
130
123
94
92
104
56
134
128
69
116
69
119
75
95
169
80
110
77
134
138
134
127
92
151
93
104
93
86
93
69
126
37
86
67
100
102
126
37
91
92
58
135
158
111
122
79
55
178
152
122
105
146
92
131
56
74
128
105
117
131
128
55
110
55
93
94
92
37
169
178
92
140
130
105
163
147
139
80
55
67
105
77
119
126
139
105
110
110
92
122
126
37
69
178
128
119
122
113
110
99
99
144
138
148
74
119
105
106
67
105
110
110
55
110
122
104
93
118
144
67
152
122
69
104
140
56
105
105
58
79
92
117
110
126
123
67
55
93
136
147
104
127
111
98
58
137
126
87
110
152
99
105
110
55
92
97
92
104
148
139
68
138
92
127
83
169
122
77
80
146
93
92
119
56
156
110
91
118
98
129
69
124
79
122
139
101
146
92
136
109
139
110
129
92
132
92
56
123
112
123
77
73
111
123
134
139
131
86
69
75
91
56
108
55
105
148
152
199
119
136
87
55
92
100
138
126
122
92
128
178
103
122
93
111
124
152
140
93
109
141
160
160
139
162
144
168
101
134
93
101
86
122
55
67
126
92
92
55
111
83
152
86
92
79
97
86
131
180
58
139
100
84
104
118
140
56
100
105
136
132
92
87
138
145
113
67
58
92
55
58
168
79
55
37
106
171
110
122
55
100
158
146
67
73
98
67
92
112
68
126
114
110
56
122
145
75
126
126
93
140
128
132
55
56
108
104
114
131
109
136
123
96
105
132
92
105
125
85
110
58
56
55
99
55
56
146
55
138
117
101
139
109
136
104
128
178
105
105
127
122
152
92
58
83
138
83
127
111
110
91
93
124
138
75
92
74
144
69
123
110
37
135
92
81
67
106
88
131
109
99
126
93
111
72
111
104
126
110
93
92
105
122
147
92
123
128
128
152
152
127
130
127
126
92
163
124
69
146
122
84
56
126
69
122
93
127
104
139
148
134
75
138
127
92
55
77
105
55
104
110
136
37
86
112
37
92
92
75
102
124
126
86
123
67
74
130
69
122
74
146
58
111
141
178
91
116
138
151
92
79
178
126
119
109
127
122
152
162
104
110
68
126
148
122
152
69
77
75
93
112
124
101
68
73
92
92
57
110
100
92
182
88
92
110
37
128
79
92
169
140
122
55
110
167
92
134
91
37
104
96
119
146
122
138
128
128
126
138
152
110
67
86
56
110
158
83
56
122
111
55
55
74
91
95
130
86
55
126
56
97
69
86
67
76
122
178
119
169
127
135
86
104
58
92
122
127
84
134
130
123
69
37
105
93
92
178
105
37
126
69
122
93
139
69
128
134
134
104
105
69
86
126
109
119
124
123
91
180
110
126
125
58
122
106
55
56
132
140
122
114
91
144
123
110
69
119
91
138
122
75
120
69
100
97
188
67
126
109
67
37
105
139
110
152
117
105
104
117
122
119
55
122
92
84
105
127
178
92
108
67
122
73
101
110
92
126
122
93
67
110
111
119
92
105
93
75
138
56
74
144
68
104
152
93
168
74
104
148
75
126
104
127
104
83
69
134
122
37
92
139
93
104
92
104
145
171
79
56
168
55
167
135
67
37
110
56
81
79
131
128
69
138
110
56
110
55
110
110
55
120
126
139
99
92
178
104
138
79
104
92
138
106
127
128
56
126
126
106
124
56
93
141
104
97
127
126
138
56
98
182
103
55
106
84
152
164
55
37
78
158
86
67
136
93
74
79
56
130
103
148
104
128
56
105
146
119
123
138
91
112
92
56
146
104
118
138
139
105
92
69
104
92
180
128
92
127
122
58
67
69
146
127
109
86
69
127
99
130
122
56
122
104
97
105
92
67
105
178
122
109
92
151
108
91
128
92
139
105
139
86
55
105
80
126
105
146
110
139
114
111
55
37
126
110
69
162
140
141
123
122
77
73
76
92
92
104
122
101
146
128
139
56
148
74
92
67
122
92
126
93
122
67
92
69
122
58
171
106
74
92
139
163
123
92
127
67
132
92
138
56
109
55
93
122
122
127
77
122
92
134
37
88
98
138
103
105
55
77
109
119
98
144
37
113
125
92
130
144
92
124
136
89
126
109
139
37
132
55
110
92
100
112
83
122
148
112
92
105
89
138
124
144
144
99
163
92
110
106
86
126
127
104
117
108
112
69
79
93
99
139
124
99
86
111
101
152
114
83
92
126
92
164
160
126
55
104
55
145
84
56
86
92
93
188
137
105
131
130
136
128
109
58
139
144
126
122
94
56
92
138
111
83
105
55
69
56
138
92
105
122
122
108
105
144
105
122
122
92
105
58
92
169
67
123
87
127
69
58
152
100
93
55
127
124
123
69
110
69
130
142
126
178
131
67
55
79
56
138
86
128
104
92
122
97
98
58
95
67
126
126
83
55
138
132
165
108
92
140
180
91
55
110
148
134
55
127
122
88
103
74
148
93
92
91
37
69
74
75
112
163
91
98
55
128
91
122
105
131
111
126
75
93
152
67
106
67
123
152
130
37
92
86
126
91
91
127
91
92
78
132
110
138
123
144
144
132
75
152
106
92
107
135
138
93
139
127
77
86
86
103
165
56
126
87
104
144
146
91
111
138
86
67
139
158
119
126
107
56
69
95
122
68
110
92
97
109
137
55
126
110
93
99
178
130
131
97
126
74
73
37
122
146
109
92
55
110
171
188
120
88
83
105
138
126
93
104
95
92
178
168
67
139
122
124
56
122
110
110
123
129
86
140
110
118
126
37
122
148
128
92
120
169
139
141
122
79
64
75
110
138
162
110
139
108
134
122
93
199
83
102
95
102
67
84
104
92
126
110
67
127
92
99
139
111
111
110
98
178
89
119
105
37
97
199
119
55
67
178
69
110
84
105
78
99
86
77
122
127
88
110
105
178
146
111
122
158
105
109
77
139
122
128
69
138
119
144
127
122
101
101
99
58
110
179
55
55
140
138
119
93
139
67
134
128
122
104
132
125
152
138
126
122
105
55
109
55
110
171
126
164
107
126
126
92
74
117
102
129
148
69
75
99
120
139
117
148
86
55
73
138
124
65
86
139
104
58
122
182
126
124
67
55
132
138
123
89
134
171
110
92
58
123
55
92
91
178
93
140
138
158
92
128
112
122
105
138
138
88
110
139
110
105
92
126
67
169
109
58
72
55
119
110
156
130
129
134
88
178
126
146
134
126
100
56
77
178
84
69
110
86
79
91
135
107
92
56
93
146
180
126
79
134
138
67
134
122
95
105
55
140
98
127
55
122
119
139
104
126
105
111
160
93
110
126
127
138
169
171
58
56
109
58
58
122
91
162
114
67
139
37
104
104
93
163
56
55
122
162
111
151
147
131
158
126
97
110
92
92
74
37
160
77
123
128
55
97
92
84
119
140
55
180
110
136
105
103
104
77
104
86
86
91
92
106
89
102
142
118
178
105
55
126
92
56
138
67
56
93
129
92
79
134
122
125
171
128
99
89
158
122
91
67
56
55
126
139
126
95
105
91
58
142
107
139
105
103
111
105
138
56
104
58
91
123
56
55
134
67
83
122
69
105
117
86
167
67
109
127
99
128
122
83
92
171
92
67
100
93
114
139
84
137
119
122
138
37
120
114
104
110
105
105
111
80
152
139
126
124
67
126
109
86
69
123
138
67
83
122
56
138
148
55
68
77
109
144
119
169
93
140
77
123
75
55
98
56
69
92
89
144
169
93
138
56
138
102
67
111
55
117
108
110
55
56
122
107
92
106
95
105
55
55
105
105
125
92
162
56
122
119
144
55
109
99
110
74
56
105
110
55
107
104
83
93
91
105
99
180
137
93
134
128
77
123
111
96
111
56
146
92
111
159
109
105
111
124
92
55
128
105
118
134
92
37
55
69
55
109
123
74
178
126
138
138
104
95
163
99
136
93
56
178
139
171
126
93
130
92
123
121
55
84
110
131
110
126
138
103
55
73
105
58
110
100
92
107
138
180
158
110
152
139
104
139
55
140
128
92
144
122
178
124
68
74
75
67
97
139
118
110
105
105
110
132
126
115
169
103
106
92
93
127
105
58
144
152
124
141
136
122
103
110
105
92
144
120
105
37
55
84
109
98
105
79
56
127
128
41
91
126
84
55
122
37
122
89
86
139
92
120
110
67
178
122
101
64
110
119
56
110
105
122
91
126
112
97
126
126
105
92
107
92
91
55
144
79
140
55
79
110
56
119
124
126
101
88
56
67
110
93
109
105
165
117
112
121
122
67
55
116
55
79
92
55
134
98
148
122
67
127
79
79
119
154
169
122
55
93
79
37
126
126
92
79
92
99
68
92
110
112
139
55
110
58
132
163
138
102
132
138
37
111
137
126
93
120
56
56
98
74
110
37
58
67
86
74
55
67
112
91
91
101
134
92
56
126
114
68
139
55
138
74
126
107
95
126
139
180
132
169
88
55
103
119
93
126
104
98
56
126
122
124
79
37
138
79
126
96
92
67
122
98
100
58
105
92
124
138
105
126
110
92
37
128
97
67
55
105
169
140
56
37
67
56
122
55
92
55
134
89
55
58
109
56
122
117
92
105
124
140
119
142
168
138
93
83
152
95
178
105
101
97
122
110
55
139
55
110
104
144
92
81
148
122
75
75
56
56
95
140
126
111
56
109
93
158
88
75
69
104
92
138
139
56
168
126
102
132
152
105
91
79
84
83
110
126
77
126
79
86
126
107
139
139
178
140
110
97
55
92
126
126
55
111
167
122
84
128
37
122
110
138
99
169
109
37
104
108
67
110
79
55
67
37
86
126
105
92
55
138
103
79
105
93
92
75
55
77
37
126
103
56
69
126
107
148
58
107
112
139
122
113
138
109
93
139
105
136
162
136
99
127
139
110
146
92
105
93
86
144
77
127
152
92
104
103
171
75
126
162
94
146
67
83
109
67
110
55
134
105
56
138
130
104
92
93
178
74
140
122
55
100
134
122
92
169
139
132
55
104
120
169
104
55
92
100
92
138
55
127
55
79
119
91
92
56
98
139
83
114
138
67
122
138
178
86
67
97
58
55
91
80
104
126
55
140
95
110
91
88
134
55
104
91
119
92
146
111
67
104
67
134
56
119
148
114
37
140
171
111
92
103
55
141
130
128
144
110
58
152
122
91
135
132
58
107
105
126
178
138
178
165
75
88
92
124
160
92
55
103
146
139
132
128
81
69
67
84
135
92
126
69
67
56
91
55
105
92
92
97
110
146
37
95
138
151
141
104
69
67
95
92
178
83
139
104
37
138
55
86
126
67
140
89
104
93
124
93
160
103
99
78
124
134
67
111
55
126
134
97
91
92
88
129
86
77
135
119
68
106
169
126
138
93
95
93
126
122
55
139
97
108
148
102
110
111
89
110
67
135
88
92
114
160
110
67
104
122
138
98
126
69
107
128
110
92
152
56
107
134
91
114
105
141
105
128
148
92
69
77
93
92
92
91
37
104
55
93
144
37
105
102
97
55
106
67
126
131
92
105
99
93
100
41
94
108
122
127
144
140
138
92
56
138
55
109
126
139
80
178
94
127
92
199
178
74
86
146
164
138
79
92
68
86
110
139
105
55
99
122
109
109
55
102
138
74
122
97
104
92
67
93
86
118
140
55
55
115
92
119
105
119
111
167
139
109
130
109
163
68
93
148
138
78
122
92
67
93
92
131
104
140
102
86
105
105
92
69
139
122
134
37
37
93
92
148
75
92
171
104
127
136
104
135
126
122
106
152
92
55
126
117
56
149
152
37
127
67
109
75
171
58
102
122
109
104
138
58
97
132
122
37
137
92
124
126
138
55
146
128
178
110
130
111
64
139
92
92
103
146
58
92
128
84
37
158
91
130
144
89
55
123
55
92
67
58
97
56
86
126
171
55
108
92
127
122
55
105
127
89
169
104
152
138
105
37
79
138
130
100
93
75
169
67
144
92
67
95
86
93
78
80
127
67
112
86
55
92
56
110
101
127
69
101
119
134
128
92
104
140
114
67
103
58
92
105
77
146
55
122
111
83
110
55
145
74
104
142
95
106
120
93
114
58
119
114
130
138
110
139
69
126
138
104
117
138
144
108
99
37
169
77
100
98
78
124
58
110
152
126
169
160
67
102
138
139
127
128
178
56
91
86
127
115
92
79
92
69
55
104
93
58
126
102
126
144
120
152
58
144
103
37
118
110
112
122
101
122
123
126
126
99
67
148
55
91
152
73
130
169
55
110
104
109
110
99
138
139
87
138
67
105
127
122
79
171
126
56
89
122
122
78
83
146
55
130
134
55
122
86
73
123
137
146
92
81
103
159
55
137
111
125
93
55
97
109
140
79
169
80
140
144
37
58
89
67
122
110
124
105
126
91
126
67
123
104
178
67
92
178
122
55
122
92
67
67
126
97
75
114
140
122
104
105
69
92
105
68
55
136
138
98
109
92
80
75
92
122
109
104
138
104
93
141
122
126
55
127
199
112
106
164
123
104
110
58
169
152
92
110
130
55
152
107
90
105
71
152
128
104
67
168
199
37
137
129
127
79
152
134
93
128
144
37
77
112
105
138
67
123
74
92
144
99
92
107
128
75
178
92
169
163
67
105
111
110
107
110
104
55
92
109
105
122
127
163
120
67
178
91
122
55
92
100
104
93
97
122
65
138
91
110
118
37
55
132
92
103
56
123
132
113
61
106
92
134
68
126
110
168
87
135
56
169
93
123
126
81
37
114
67
119
165
69
104
55
75
139
126
126
139
110
167
138
92
136
91
163
118
163
146
144
77
126
104
110
126
55
144
110
138
69
56
79
134
115
188
67
55
55
132
104
122
56
58
37
122
37
79
55
37
103
171
131
86
148
110
140
55
122
104
106
74
103
128
123
92
83
138
101
110
105
104
144
99
85
117
162
55
84
128
81
122
56
131
130
118
126
126
110
178
91
92
56
180
134
188
67
74
128
144
140
95
58
67
67
124
104
142
78
110
126
77
117
67
128
78
151
134
113
144
122
98
134
96
74
165
138
83
144
37
123
139
58
98
115
58
127
79
104
56
127
144
104
84
74
138
126
104
114
74
58
37
142
152
146
92
110
144
93
93
69
103
37
103
93
115
107
139
104
138
58
56
79
55
55
134
79
37
105
126
99
156
178
78
134
58
114
56
165
58
67
126
126
111
105
91
93
56
123
107
37
98
92
106
55
92
95
138
111
67
138
55
95
89
58
128
126
152
171
146
104
132
69
92
68
105
140
141
158
122
86
144
92
101
120
93
69
144
100
125
144
105
100
102
138
171
75
122
152
127
140
74
112
75
67
55
127
80
86
69
91
138
92
146
58
129
111
91
105
55
144
105
163
37
180
124
105
152
67
139
37
67
37
55
105
104
56
139
55
56
124
58
37
84
105
55
92
146
88
55
92
67
56
111
178
100
158
111
139
37
86
92
126
110
91
122
92
134
84
119
67
127
104
105
144
99
146
124
110
119
79
158
75
148
122
110
148
128
169
92
138
90
69
125
120
107
119
56
141
55
126
91
127
146
122
144
123
111
126
55
105
127
119
56
188
105
56
104
83
92
122
182
74
158
110
110
145
111
134
56
148
146
128
55
171
55
169
37
131
67
83
167
122
110
55
105
124
106
110
127
67
127
93
117
140
138
55
100
122
92
92
140
120
144
117
55
128
93
122
58
139
122
92
138
92
67
122
180
101
149
116
199
104
89
147
122
113
79
104
163
138
171
140
105
114
91
169
126
100
75
86
102
115
100
158
58
140
67
139
111
55
55
165
138
178
92
75
89
55
144
104
58
93
105
97
139
152
95
149
56
130
110
104
67
122
144
83
169
103
67
102
68
92
37
93
105
140
89
121
137
56
97
68
55
110
110
104
86
139
140
178
55
117
136
152
74
169
138
92
192
126
103
55
107
94
122
69
55
169
136
67
105
55
109
138
37
58
69
55
74
98
67
134
106
93
79
67
84
152
92
177
158
101
109
55
104
112
110
105
130
67
93
91
77
56
144
110
139
77
128
100
103
93
132
69
178
112
112
56
130
55
123
100
123
139
122
56
134
119
126
128
119
105
138
146
86
81
92
37
138
69
55
95
92
146
123
128
93
93
73
92
148
120
144
67
93
123
69
67
99
92
105
56
104
110
79
126
37
107
134
122
128
127
152
67
92
86
162
111
127
105
55
132
68
169
152
126
77
145
104
79
105
104
105
144
127
99
107
56
126
92
109
56
127
111
130
91
67
178
139
99
152
109
75
146
138
104
122
105
122
122
139
136
88
37
58
165
77
120
55
124
138
134
122
92
149
69
178
108
94
55
124
122
105
104
92
136
123
120
68
121
115
55
67
104
122
107
178
152
92
55
107
132
106
96
118
134
93
178
104
126
92
122
138
124
79
128
93
158
144
105
56
67
93
81
105
128
105
138
122
126
117
91
67
110
139
114
109
122
119
110
146
118
127
134
160
110
134
102
178
178
105
58
85
37
122
171
119
56
105
110
86
92
56
97
56
127
122
131
122
108
123
144
92
110
126
55
92
111
83
67
89
37
80
112
130
103
132
169
115
84
123
127
105
129
169
56
127
169
110
138
108
105
55
122
107
93
139
144
144
128
110
132
88
105
69
144
72
105
105
93
98
124
92
178
129
99
100
95
119
77
92
126
145
75
55
128
140
152
55
111
119
55
110
117
68
120
107
152
67
92
92
135
146
91
104
83
107
138
92
91
104
122
122
93
132
144
110
178
156
105
93
126
110
74
92
126
92
149
169
139
135
74
119
146
127
178
126
105
67
58
92
146
69
127
130
74
106
164
55
79
109
139
56
126
104
110
126
128
110
99
92
104
118
98
74
146
98
171
92
102
86
97
110
110
97
56
110
105
138
95
141
152
110
92
122
105
110
104
92
56
122
84
56
139
86
84
75
75
105
93
67
92
122
128
92
37
79
112
119
93
160
177
56
110
146
74
68
135
104
67
75
79
89
109
160
55
96
93
77
146
122
83
79
110
92
126
104
92
56
110
107
109
136
168
105
128
86
140
125
67
112
119
56
127
55
86
111
37
69
69
77
144
178
100
89
56
58
102
97
93
120
105
115
150
67
128
92
144
92
168
127
67
37
100
126
134
110
58
58
93
124
37
84
144
141
55
92
119
152
129
131
146
128
88
112
126
79
56
139
67
152
91
92
145
111
127
122
122
122
88
156
103
115
160
171
122
178
171
119
109
138
89
117
110
139
110
92
110
74
98
144
126
74
83
152
140
99
152
86
152
158
106
83
69
178
130
80
130
148
146
89
77
56
128
100
100
122
134
86
126
122
58
136
139
84
189
144
169
37
104
112
139
110
91
55
92
105
77
104
104
140
169
112
74
75
127
122
91
122
67
67
79
131
117
89
92
79
130
148
97
146
91
110
92
86
83
75
118
117
102
177
92
146
69
128
109
92
55
37
126
162
140
55
74
107
92
107
105
93
58
127
86
92
86
122
119
124
110
105
56
92
37
83
126
122
67
67
115
134
139
104
103
163
126
67
69
134
124
69
178
104
109
110
99
106
169
139
110
105
55
69
103
171
122
110
93
139
132
74
105
110
58
55
55
86
137
68
127
55
127
86
109
83
110
144
122
91
58
144
104
75
122
37
140
128
58
91
92
127
79
126
122
61
100
55
122
160
119
138
109
91
56
138
122
37
92
126
102
99
139
67
135
111
110
108
67
128
139
74
126
58
139
72
77
105
55
135
138
56
160
111
104
67
169
119
138
104
138
99
55
126
119
93
69
92
126
146
158
104
139
119
122
56
69
103
140
151
128
118
104
126
64
55
128
92
126
56
171
182
115
100
107
138
92
178
105
99
41
109
86
136
92
110
118
109
37
99
37
91
146
138
104
99
68
137
97
110
97
162
77
55
81
138
105
178
37
55
124
128
103
135
92
156
102
92
75
92
74
110
58
134
86
67
144
105
55
77
139
105
104
132
152
104
93
140
169
128
37
152
92
67
126
92
83
92
92
55
139
141
106
124
67
138
110
126
122
104
93
122
139
162
132
126
92
128
92
106
124
79
83
55
105
105
93
134
100
123
68
138
75
75
126
178
122
140
130
58
127
92
92
105
92
93
86
108
126
134
128
83
131
138
74
93
128
104
58
127
119
178
56
138
139
126
169
97
92
100
105
55
127
131
158
105
152
99
88
81
146
139
138
122
152
105
111
75
140
115
92
104
103
124
107
112
134
152
126
169
110
55
139
130
106
138
126
168
109
178
139
111
131
110
55
122
55
144
152
107
123
104
92
163
136
134
92
88
160
55
136
136
139
92
55
126
56
58
67
178
152
67
74
68
58
86
114
93
178
122
131
103
93
107
105
92
126
88
110
165
146
67
160
56
92
113
169
69
128
109
158
55
178
85
69
123
67
119
104
58
55
104
134
74
86
132
139
138
122
127
130
127
138
86
93
86
178
152
152
55
67
91
86
98
178
144
124
109
58
55
67
139
126
93
110
97
145
55
178
110
100
139
105
126
37
92
93
144
117
92
93
56
86
92
103
127
91
162
37
114
107
55
134
138
158
122
103
97
105
122
163
126
74
81
127
89
104
135
93
169
67
83
68
93
107
139
140
111
139
92
55
92
79
92
152
178
92
88
105
111
105
84
138
152
139
74
163
79
123
163
92
110
93
109
67
137
114
144
58
139
152
138
92
58
110
93
56
128
77
118
92
110
114
95
114
55
122
110
122
107
127
178
139
152
126
67
75
93
56
178
79
56
55
130
67
112
95
93
110
105
92
139
91
105
56
56
132
93
122
105
106
144
55
68
122
122
55
127
110
122
114
102
93
57
103
55
111
103
127
74
111
171
109
91
126
68
92
105
55
152
105
116
178
97
110
138
131
55
91
122
67
131
105
110
105
74
144
111
160
138
127
79
100
119
100
84
105
77
104
92
104
177
93
104
120
105
55
58
104
104
93
144
55
79
102
92
55
56
92
111
91
122
130
136
92
142
37
99
99
122
144
92
37
71
122
100
104
69
127
97
105
104
111
118
127
94
146
120
124
55
56
156
37
134
67
55
122
68
139
108
67
145
92
74
58
105
139
148
178
126
138
56
99
74
138
128
67
55
126
128
105
110
55
126
127
127
77
131
126
119
76
56
127
132
111
128
103
131
92
127
77
119
58
138
104
103
122
110
139
122
109
101
55
67
79
130
89
58
105
146
93
152
152
142
152
123
74
84
140
110
119
154
160
105
146
105
147
93
37
122
169
164
152
138
159
124
79
111
152
127
139
126
106
101
118
77
77
165
104
107
58
109
158
55
180
55
91
115
92
128
92
128
140
110
56
178
37
92
158
92
37
163
134
92
106
83
127
126
178
55
132
138
55
111
163
144
178
144
92
148
138
138
109
68
122
55
109
163
119
138
168
110
55
126
55
136
77
127
124
126
79
126
144
144
126
168
67
122
158
104
138
138
92
123
123
107
74
124
140
103
112
86
109
180
92
91
105
67
126
138
111
107
181
104
105
111
79
56
130
110
105
97
124
122
146
123
55
167
104
96
144
55
67
105
109
146
55
123
104
99
127
168
120
107
93
146
99
146
86
144
139
67
144
92
58
119
86
127
99
92
67
104
165
67
122
101
110
104
58
169
129
58
104
124
168
56
77
178
129
67
107
110
67
114
117
163
138
77
55
122
93
144
92
58
92
138
146
118
122
119
67
141
126
138
110
71
127
67
132
37
144
92
86
97
126
58
83
169
55
126
123
86
110
107
138
92
105
169
105
92
124
105
103
105
95
56
108
119
140
92
99
95
91
92
92
110
104
104
74
158
37
55
98
122
67
98
67
107
117
122
126
67
136
108
144
93
132
92
140
107
121
105
58
67
92
69
122
89
139
126
105
110
124
144
122
122
130
122
92
95
100
74
58
128
58
168
117
126
126
163
92
92
107
95
56
177
58
93
108
110
92
136
67
138
101
138
122
111
128
110
55
146
113
138
79
114
123
67
55
89
148
164
92
58
127
112
100
138
61
169
123
79
98
110
128
122
92
163
139
79
58
92
178
110
110
58
122
67
97
110
126
122
109
123
138
119
56
114
178
150
148
92
55
67
126
126
105
169
138
98
138
129
37
110
97
81
123
146
103
178
126
92
132
126
138
158
178
138
113
126
126
86
165
77
77
37
105
77
98
146
122
86
75
93
122
92
114
77
79
92
122
86
105
105
122
130
107
146
55
169
86
126
56
74
67
92
110
86
67
55
75
139
103
55
98
104
139
199
105
169
107
93
37
139
83
127
92
138
127
78
178
67
88
105
122
67
178
134
56
105
56
138
104
114
178
127
55
55
110
97
104
178
124
178
91
97
79
122
179
55
142
110
120
104
112
103
138
91
171
163
87
105
138
130
93
119
147
89
104
97
119
99
55
58
55
126
122
139
146
110
123
124
127
101
122
56
104
69
58
138
69
178
56
84
93
110
93
92
91
56
55
130
109
122
128
74
171
158
124
171
139
124
56
92
122
101
144
139
140
118
122
58
67
109
110
122
92
145
55
77
99
134
98
140
152
93
67
127
68
102
105
122
69
93
119
110
132
146
141
110
134
127
140
142
138
122
138
83
144
55
93
67
138
178
56
75
164
110
113
67
122
55
119
110
78
140
178
139
134
119
55
162
92
92
151
93
97
110
144
56
79
114
124
134
37
86
67
58
92
122
92
97
146
122
105
128
144
169
128
93
150
67
169
92
37
115
122
130
139
55
109
105
139
122
58
144
122
110
110
93
178
105
110
73
91
163
138
69
67
79
92
131
67
55
67
93
144
123
122
92
92
99
110
69
122
103
108
56
122
123
131
127
123
178
74
127
131
119
136
124
91
110
79
86
178
93
55
103
79
68
104
169
110
79
93
136
152
127
55
181
58
152
138
55
89
160
92
127
103
109
122
123
67
104
104
86
37
92
118
92
98
167
92
132
123
118
114
142
79
123
178
160
55
55
112
92
56
67
144
111
109
67
146
122
127
67
105
105
83
178
192
126
123
124
169
110
58
67
138
92
122
136
92
111
151
139
56
105
150
138
67
119
105
111
169
83
139
92
138
126
122
104
99
92
77
122
124
110
136
92
124
107
67
138
101
92
98
83
120
84
106
37
148
105
132
100
144
105
56
67
55
178
152
122
126
105
68
55
58
68
92
67
162
126
131
126
110
55
92
152
74
105
105
93
122
119
127
124
122
79
67
123
146
92
56
110
86
92
110
139
122
93
79
116
127
126
104
58
126
138
55
134
105
92
140
128
122
127
86
111
110
109
111
122
142
58
119
112
92
126
122
55
126
138
138
128
151
122
102
92
118
119
144
104
110
67
104
77
111
91
138
86
110
55
178
86
55
92
102
105
104
116
140
119
55
146
69
55
122
136
148
101
110
118
56
91
124
67
126
126
97
178
138
107
169
122
92
79
55
144
122
138
93
55
163
92
105
92
105
127
126
128
55
139
84
124
146
104
74
122
127
122
94
55
149
122
92
101
119
67
138
135
178
92
145
178
158
55
69
158
86
88
139
97
105
81
144
103
93
111
144
86
138
93
92
93
92
75
122
109
139
56
110
55
61
78
146
169
92
158
104
77
127
55
103
86
92
86
101
110
122
99
55
79
58
103
58
111
122
101
55
138
127
83
114
138
139
84
162
100
92
169
120
163
152
55
152
127
139
127
138
117
114
144
135
138
110
67
122
148
67
92
136
126
103
110
92
139
126
142
178
79
77
142
93
93
92
100
126
97
92
111
80
134
137
110
105
144
152
88
122
119
122
92
152
105
67
122
140
110
138
56
122
93
74
127
192
55
104
97
77
99
83
67
152
126
97
58
93
92
67
56
110
55
169
144
104
178
128
92
139
99
92
180
123
80
127
67
110
107
100
104
69
178
92
128
104
105
77
124
86
122
92
107
107
130
105
75
79
105
139
128
91
111
119
182
58
68
138
91
138
123
67
146
140
106
74
122
68
68
127
92
144
55
134
56
55
55
55
105
142
178
111
79
92
99
67
140
169
79
104
105
146
93
92
93
137
55
104
104
67
87
58
178
79
151
144
128
67
152
92
87
110
93
125
126
126
122
83
105
55
105
124
104
55
68
169
96
79
148
111
93
55
115
171
104
93
104
86
74
145
113
138
55
67
93
111
148
55
110
168
138
126
126
86
37
102
127
169
111
105
93
126
178
130
101
74
99
67
146
123
37
72
119
86
68
178
144
104
152
178
126
109
110
93
100
144
130
119
92
55
103
103
105
67
111
105
55
92
165
138
99
67
111
103
105
152
104
92
92
126
171
169
171
114
92
56
122
119
132
92
139
103
142
107
107
119
148
171
125
122
123
103
180
178
55
93
105
101
37
158
103
110
75
107
124
111
103
37
69
138
139
105
122
111
92
115
92
112
56
103
55
92
128
98
67
92
109
37
162
56
110
69
58
105
83
92
134
97
105
118
138
55
86
100
122
79
129
77
91
127
122
109
140
99
112
106
138
99
37
146
68
92
92
89
83
79
152
124
110
123
75
111
55
107
146
79
139
89
126
167
100
69
77
84
126
138
104
134
158
152
37
104
79
107
122
130
105
131
37
105
178
127
105
126
92
126
74
148
148
56
75
99
91
84
132
92
123
107
94
37
123
92
122
138
67
81
104
55
104
126
122
148
138
139
110
122
86
92
158
67
58
55
139
124
92
118
142
126
110
92
58
37
138
67
58
92
122
126
126
132
128
130
139
89
92
188
92
124
93
138
105
135
138
119
111
67
169
55
55
134
104
87
124
112
69
83
92
114
55
103
56
122
111
182
143
178
109
107
56
56
144
138
107
79
92
112
93
122
67
138
98
134
178
124
122
127
75
74
55
97
144
109
99
124
68
77
55
107
141
56
89
128
107
107
69
140
92
67
144
127
86
111
126
89
109
65
83
104
128
131
105
138
108
100
86
192
134
124
92
138
171
92
169
109
93
86
56
138
58
150
95
56
127
89
92
171
79
130
131
92
77
58
105
128
56
139
111
110
55
92
152
56
122
119
108
109
178
102
72
122
152
105
178
105
86
158
119
123
92
128
135
105
110
91
105
119
56
134
86
79
144
115
105
139
110
139
152
86
67
124
105
101
144
134
92
135
110
122
91
77
92
110
92
55
111
92
93
139
103
94
58
122
110
58
67
138
110
109
124
134
110
110
122
55
56
91
56
83
114
104
104
127
110
37
123
118
148
127
55
107
126
117
107
140
92
140
165
169
122
102
138
67
105
122
56
104
93
111
83
108
178
37
123
86
92
88
92
122
55
126
92
92
126
58
132
105
56
138
105
122
55
119
112
126
178
126
138
58
131
126
134
79
105
67
105
67
139
122
104
93
55
93
87
55
134
92
83
56
128
102
105
55
93
37
124
93
148
139
91
109
178
178
169
180
126
105
152
37
78
122
128
110
178
135
138
107
99
55
100
75
105
123
122
123
83
95
55
89
67
91
106
69
169
123
86
171
110
110
146
110
137
138
116
89
55
126
109
93
140
79
104
119
89
110
104
122
122
114
58
109
56
83
138
119
108
58
138
89
58
55
92
56
105
77
152
127
100
67
58
67
83
164
104
105
99
55
152
139
104
127
109
86
105
68
110
83
103
92
126
86
148
84
110
58
98
103
171
126
58
92
168
146
117
128
151
126
152
92
55
158
67
104
105
123
84
104
141
124
138
74
104
134
92
109
145
77
148
126
56
144
126
88
123
98
115
135
37
104
81
130
92
126
139
56
104
131
67
92
107
100
131
171
105
128
102
110
122
104
171
146
92
92
130
93
178
105
112
127
159
55
103
99
67
122
167
93
122
92
134
103
79
105
167
123
117
83
130
178
148
208
146
56
169
135
91
138
77
55
55
86
139
77
158
55
127
128
137
127
152
56
138
97
110
135
135
122
110
122
114
101
104
98
115
132
105
138
132
144
124
67
126
37
67
148
93
151
127
111
91
105
119
83
105
99
122
104
105
99
138
104
93
97
103
103
89
126
124
55
99
178
110
127
180
88
56
144
139
81
79
84
56
124
138
105
110
126
91
67
128
55
126
111
168
128
144
122
152
104
56
118
93
139
178
122
129
105
77
138
111
111
93
119
67
146
104
127
138
126
92
86
55
122
103
69
126
79
140
58
92
129
93
110
111
104
55
92
77
92
109
126
152
160
37
74
58
110
105
55
92
122
114
56
67
37
93
138
56
108
158
180
139
138
110
83
69
119
55
67
56
110
67
92
126
55
105
139
171
122
114
98
92
178
110
134
75
105
77
107
138
73
67
111
149
79
119
99
138
93
103
99
56
95
92
152
178
119
136
55
103
138
111
86
127
169
142
110
138
37
119
92
119
56
104
110
169
126
77
91
55
136
110
122
105
93
86
107
127
75
110
58
86
178
37
105
138
111
56
37
55
99
55
97
105
114
122
101
138
107
128
110
171
138
146
92
110
139
189
178
77
122
123
148
138
148
147
104
110
178
69
67
91
126
83
77
122
152
55
122
99
93
56
75
138
160
117
145
122
130
144
69
110
152
67
109
123
114
95
106
105
106
111
178
122
158
92
126
122
93
126
127
158
97
138
110
55
134
69
139
127
88
178
93
37
126
109
55
91
169
99
152
178
58
91
92
139
69
148
138
112
105
140
92
110
110
98
139
138
138
126
124
83
104
122
140
124
128
79
119
144
105
131
56
139
138
55
169
152
93
105
161
103
37
152
122
92
55
114
146
101
148
146
37
104
104
55
92
126
101
104
146
92
75
55
178
104
89
105
104
135
104
110
171
108
126
99
145
93
105
138
55
97
122
125
144
37
110
107
92
119
99
105
77
55
68
142
119
169
148
164
56
58
122
75
124
142
125
105
104
92
92
67
125
91
104
98
127
75
56
55
127
111
86
144
180
117
105
168
84
56
104
109
178
37
112
55
92
75
120
126
92
112
199
56
56
127
105
131
75
102
169
110
79
92
37
122
122
55
107
105
37
145
105
126
106
88
105
99
119
140
139
92
123
178
149
167
86
128
142
92
178
178
139
75
109
122
124
58
56
104
146
126
138
74
92
123
56
77
123
178
111
92
126
126
178
55
119
92
92
100
169
77
127
119
92
74
103
37
110
55
91
131
55
122
110
144
92
56
93
110
56
93
126
105
55
86
104
56
37
105
56
55
163
178
113
138
91
58
115
138
139
67
88
37
65
178
110
110
169
74
127
165
55
126
178
56
152
55
123
107
138
37
55
92
91
105
67
67
92
122
37
158
55
83
139
146
92
138
37
56
129
123
140
67
92
104
129
37
127
163
67
92
92
111
88
118
149
67
146
144
136
94
107
178
126
129
105
37
103
111
67
163
152
84
105
138
139
126
123
126
56
125
55
92
113
146
158
122
55
163
123
92
123
146
58
123
67
55
121
89
93
171
106
92
132
123
136
58
123
102
126
140
37
152
112
55
169
58
109
55
103
107
123
106
55
126
134
97
67
111
55
104
55
127
144
58
126
100
136
111
110
127
146
115
103
92
122
139
128
86
111
79
108
127
123
56
55
91
146
119
114
92
144
67
92
69
105
139
75
37
127
107
121
122
126
92
58
138
127
55
138
68
139
199
105
107
67
138
93
122
99
56
55
126
56
118
68
67
110
105
92
55
92
122
93
134
98
79
107
91
127
180
86
119
180
105
79
127
55
103
92
37
124
152
37
92
119
58
76
126
105
37
97
122
118
67
112
111
67
79
152
99
104
37
114
55
128
77
92
139
120
93
114
97
139
102
178
122
67
110
56
138
124
91
127
105
139
126
97
103
139
111
180
138
103
97
109
93
110
146
152
79
101
84
37
110
79
93
56
144
67
93
92
128
83
105
92
119
79
105
93
178
37
122
127
103
122
69
92
69
123
55
158
122
107
95
102
122
134
88
163
162
139
58
55
120
110
107
152
122
138
134
119
119
138
55
88
97
56
178
124
122
126
93
110
68
128
128
37
75
86
92
104
107
119
81
110
92
144
122
165
148
104
92
89
168
104
91
110
144
122
128
93
98
92
109
109
89
122
138
81
110
123
93
124
83
144
152
138
110
144
68
99
139
124
109
110
92
92
149
37
199
67
140
171
67
92
91
122
99
105
75
37
149
144
136
92
56
103
83
122
152
55
83
124
92
58
56
178
138
55
122
101
129
58
178
106
122
110
92
92
99
110
87
139
126
104
123
93
126
122
92
148
122
55
97
163
95
91
119
126
138
134
92
55
77
74
132
86
74
126
122
122
122
111
132
110
55
139
146
92
169
101
169
109
79
105
138
178
75
102
55
86
100
104
55
126
163
101
158
58
165
99
77
92
126
102
140
138
86
120
104
147
101
67
130
118
178
139
107
104
138
37
111
86
58
171
139
93
138
127
144
92
110
152
92
138
146
122
92
163
37
127
122
135
81
138
128
105
138
107
67
102
110
69
105
110
171
91
106
92
67
58
137
171
74
79
92
110
74
128
68
122
163
126
144
109
104
111
99
152
110
163
93
67
126
127
83
92
127
168
92
120
125
115
98
169
79
130
91
126
140
37
110
134
110
102
56
69
180
75
100
110
55
129
92
86
138
105
110
58
93
134
138
105
146
110
140
162
110
139
122
110
110
131
138
113
55
111
67
92
134
58
104
139
112
67
144
122
93
69
105
114
146
144
138
107
114
138
168
138
56
56
101
56
105
119
103
130
79
98
145
105
86
92
126
56
104
108
102
152
199
178
127
111
119
75
178
128
37
55
93
108
134
77
111
134
122
146
146
105
126
171
86
93
58
58
105
92
76
55
75
55
130
122
67
58
127
37
131
69
158
131
58
147
127
58
127
37
101
122
119
102
110
91
125
148
110
130
56
75
128
169
126
144
110
86
98
112
92
55
79
104
178
55
144
55
109
163
56
69
109
123
105
55
111
146
128
69
56
122
122
110
131
79
92
110
67
91
114
110
106
92
123
138
138
114
138
92
55
69
55
129
134
69
122
120
56
128
104
104
80
138
77
124
146
105
77
103
95
140
122
99
110
188
112
138
128
55
122
91
112
77
102
138
140
97
55
137
167
92
122
55
104
103
99
93
79
112
74
124
97
152
126
144
131
110
111
105
110
105
69
138
92
75
144
55
111
122
128
92
105
111
56
139
122
110
119
55
135
58
84
138
69
114
138
122
67
144
92
67
71
68
144
127
146
140
109
158
119
135
102
140
138
119
69
55
111
69
122
67
117
141
138
69
138
107
67
105
105
69
109
145
55
158
99
122
91
109
138
138
55
114
114
93
92
199
55
56
88
92
163
84
142
158
74
105
152
55
89
55
123
132
136
117
152
110
105
104
140
126
74
109
86
138
105
68
97
169
105
126
140
55
152
110
138
127
140
111
138
122
104
152
105
130
131
119
112
79
105
74
109
130
126
92
146
110
56
158
92
128
97
131
94
131
137
73
102
105
110
144
148
127
122
37
68
110
134
93
110
67
58
109
56
140
103
104
142
148
110
115
107
58
92
146
58
126
93
93
146
126
127
110
160
81
132
105
104
119
110
69
67
74
104
92
110
146
148
93
139
67
74
163
140
168
152
93
152
67
152
118
92
124
105
119
106
127
75
124
58
74
122
86
138
79
58
97
144
93
146
104
117
91
104
77
68
97
138
104
77
117
91
56
110
123
110
89
107
120
137
158
107
127
152
144
108
92
104
79
92
126
127
67
134
105
110
139
122
93
85
122
178
122
88
126
92
93
126
83
110
144
99
89
55
55
101
104
106
91
132
160
110
77
139
131
124
130
110
103
103
93
128
132
129
107
92
129
92
126
55
98
104
67
111
67
93
93
67
180
199
122
169
118
106
91
111
74
139
92
178
136
113
99
104
144
77
124
113
67
69
114
55
118
128
56
138
112
105
67
56
104
100
105
37
163
123
92
152
145
92
112
105
58
69
92
162
122
58
152
180
122
131
105
152
77
127
58
107
74
126
124
112
58
138
87
122
107
127
134
106
97
134
56
92
86
148
110
169
119
56
151
138
103
123
164
67
100
110
138
98
55
105
92
99
92
55
178
134
75
110
130
96
110
119
147
69
56
102
79
37
138
138
86
111
56
138
77
55
92
142
139
98
79
104
88
56
111
146
178
110
110
178
99
146
131
103
58
117
142
125
111
92
92
105
105
171
140
126
68
56
112
56
41
104
55
37
152
139
146
91
67
92
103
180
139
101
56
128
140
92
122
111
79
105
103
169
55
122
92
92
121
110
77
167
162
127
105
73
139
58
91
91
180
37
55
108
55
104
105
130
92
152
104
68
58
37
58
105
78
37
150
128
104
139
56
123
144
165
135
110
178
58
92
104
152
58
105
126
93
79
139
162
119
140
93
152
58
124
145
92
92
126
189
104
91
144
146
169
95
123
107
126
55
79
93
55
55
129
91
58
83
163
140
112
77
119
138
93
126
110
122
122
55
91
128
149
105
37
138
178
99
131
77
86
84
138
160
69
92
75
67
97
83
92
164
103
107
126
110
58
171
68
55
56
92
150
117
152
103
81
67
67
127
126
119
126
138
99
132
69
55
169
117
126
139
126
98
110
144
79
92
69
131
126
55
130
162
91
110
139
139
138
117
56
67
139
77
74
88
83
92
122
107
99
126
86
129
160
86
104
91
102
150
123
55
128
124
103
105
158
104
134
56
110
147
104
84
77
148
124
138
76
180
168
55
130
91
92
109
92
138
134
77
126
58
136
127
122
77
37
110
55
100
84
110
139
144
118
126
139
105
88
37
104
105
124
128
162
104
162
58
96
58
128
79
77
106
56
78
37
122
107
97
122
152
122
139
92
124
69
123
67
93
80
56
127
56
178
79
152
69
123
101
95
58
107
199
77
92
148
67
83
180
105
122
122
164
105
122
162
123
168
138
164
105
178
140
126
110
109
86
118
92
144
75
93
111
99
83
104
144
138
55
135
132
123
139
86
110
180
104
92
92
92
127
122
112
119
136
126
91
105
126
92
67
158
178
97
123
110
105
83
55
92
119
138
79
178
99
86
79
120
67
55
110
138
89
67
92
140
169
109
178
111
56
138
87
171
112
189
120
55
124
92
55
94
152
56
122
104
102
162
74
77
101
86
92
55
101
110
148
178
99
86
92
79
139
122
158
37
101
93
56
56
180
130
118
148
92
138
94
105
105
138
127
69
93
83
81
92
162
139
126
178
86
92
146
134
128
130
55
92
110
117
182
78
178
127
165
126
80
169
97
55
37
118
104
58
128
87
86
69
93
67
152
86
105
138
37
123
79
147
77
118
96
104
55
138
67
126
138
122
138
56
92
55
138
67
127
129
130
178
119
92
134
158
69
91
164
110
104
105
37
122
139
105
92
128
123
92
144
148
178
135
92
79
152
169
92
67
65
55
138
111
97
55
178
105
93
178
138
180
152
91
105
138
122
134
55
89
135
92
104
55
111
74
91
109
37
67
93
55
104
158
58
104
55
95
92
139
144
68
99
104
37
123
117
163
105
119
95
164
163
55
139
128
122
130
94
105
93
55
146
127
163
77
92
103
104
158
122
89
68
79
102
117
164
56
152
126
58
139
138
67
56
55
69
180
119
58
41
135
92
128
107
119
104
146
126
180
74
122
144
148
119
58
56
69
156
95
104
110
124
168
126
104
93
139
103
56
126
126
111
111
74
110
91
119
119
92
138
144
146
67
58
110
93
171
74
123
97
127
128
152
124
105
107
89
122
83
158
89
56
98
144
139
112
110
67
67
86
93
93
55
105
68
126
104
74
93
105
69
58
118
139
37
56
139
91
127
92
180
56
92
91
93
123
86
99
74
78
92
138
130
86
91
55
122
93
127
126
92
105
92
67
123
92
123
144
126
112
91
75
104
136
178
180
89
131
69
55
69
86
55
119
152
112
164
89
110
55
92
122
123
79
105
67
112
105
119
104
55
144
144
111
152
69
167
136
122
128
110
86
83
101
110
100
140
131
86
126
92
126
91
103
92
178
122
119
78
56
123
105
103
56
86
99
78
178
92
56
104
56
92
144
122
91
77
86
138
101
56
93
119
105
69
96
144
56
122
69
139
91
123
107
119
139
86
55
92
109
119
130
92
107
101
125
79
138
91
127
105
91
107
152
144
158
105
105
123
105
122
92
103
122
152
86
122
114
102
122
55
110
67
137
110
97
128
105
103
55
69
126
55
78
84
144
68
72
110
67
109
93
93
99
79
68
131
158
93
178
180
55
109
86
55
138
110
120
122
126
107
138
139
91
37
119
146
140
171
178
146
55
148
93
93
110
129
110
110
105
92
126
69
74
110
55
67
199
135
146
144
55
122
138
178
144
127
109
132
98
117
144
126
99
163
110
127
122
93
92
67
86
105
178
101
105
139
178
126
55
56
93
72
135
126
104
144
110
126
37
105
126
86
110
99
55
158
67
105
56
56
105
37
58
120
126
126
122
104
113
138
103
79
122
92
119
105
127
55
67
138
178
138
37
105
98
124
67
89
126
169
56
58
152
124
55
164
92
122
55
81
114
138
37
135
109
140
138
124
86
105
138
146
169
114
55
128
99
55
138
118
131
92
67
114
55
55
163
69
97
107
110
111
55
55
122
125
105
140
56
110
139
55
111
124
67
146
117
56
112
67
92
128
67
171
77
122
138
123
67
92
123
139
138
105
79
109
117
112
105
146
110
79
127
163
110
124
68
134
139
105
93
148
169
107
105
67
105
55
105
108
167
92
122
108
92
100
101
110
128
92
118
158
93
56
95
107
92
58
99
138
80
58
105
110
123
127
152
91
102
138
75
124
91
136
67
122
74
109
122
98
178
110
139
139
126
122
111
84
92
122
180
91
103
126
105
117
180
147
56
55
97
58
89
104
77
56
148
107
79
109
152
139
178
77
122
106
110
148
171
67
130
93
92
131
104
144
138
75
152
86
140
98
100
84
110
122
58
123
110
127
146
91
92
123
58
104
110
92
37
139
109
91
114
77
123
199
111
138
126
55
104
74
109
68
126
55
122
74
138
149
109
86
75
78
92
128
92
105
56
78
134
125
101
111
126
113
114
92
126
140
123
92
178
68
111
110
123
55
67
37
92
119
138
56
138
110
128
124
55
135
105
92
58
140
158
126
122
146
162
158
109
119
55
55
93
92
110
110
56
138
139
138
95
58
93
105
55
83
93
109
55
84
58
58
110
151
180
167
75
79
139
123
67
110
100
77
105
124
55
103
67
158
110
56
126
110
79
104
122
105
124
92
105
144
128
92
67
162
37
74
132
134
67
102
124
110
124
124
146
127
91
87
92
105
122
91
55
122
69
109
93
111
98
128
86
127
67
124
128
56
171
146
109
109
178
178
122
128
67
110
138
55
103
134
107
105
92
37
169
122
138
93
104
110
122
110
119
120
106
122
110
160
78
127
75
139
58
92
69
91
126
113
80
110
168
144
138
93
180
162
69
98
107
55
67
37
92
149
138
126
99
37
37
112
126
84
99
152
88
100
119
112
55
139
132
81
67
74
122
98
58
79
110
139
126
98
140
99
56
55
110
55
110
56
67
98
122
136
92
55
138
122
110
105
93
84
123
121
126
138
104
55
110
146
139
122
122
122
178
104
122
123
144
138
112
58
138
69
75
134
93
105
146
68
158
104
141
139
56
92
126
144
144
114
171
93
180
117
122
144
142
122
98
122
105
104
146
37
139
128
119
110
118
75
55
110
72
169
111
123
55
126
150
103
105
56
122
104
126
55
138
123
55
83
119
68
122
37
119
162
110
122
146
67
126
138
102
105
125
122
67
119
138
128
171
86
126
92
74
67
105
68
107
103
178
104
138
92
75
110
72
67
178
56
92
138
110
118
58
75
146
138
92
75
105
93
93
93
89
99
56
91
136
169
130
55
134
104
69
67
79
107
131
138
121
125
86
104
87
92
127
104
55
102
67
137
110
120
58
92
55
122
126
122
120
114
92
93
105
120
67
79
137
74
83
104
92
118
139
139
83
117
55
105
199
56
124
98
92
128
92
110
58
58
92
134
92
92
144
122
37
102
119
127
58
67
79
67
55
111
122
138
86
139
124
104
55
109
69
99
110
138
92
163
169
86
58
58
77
139
103
137
92
148
119
119
97
139
144
91
111
97
142
168
109
104
98
111
92
127
105
140
92
77
75
134
78
130
74
79
92
91
140
137
110
178
56
147
98
122
120
122
126
55
120
75
107
126
126
111
93
107
55
67
92
58
92
128
130
110
122
77
92
58
158
119
105
89
128
131
139
123
178
127
37
126
67
138
95
144
91
134
119
93
178
122
169
115
122
98
138
91
104
92
55
171
110
77
119
86
93
132
69
114
109
109
105
119
109
97
122
69
109
178
55
97
67
134
69
138
178
152
131
105
144
110
106
58
104
139
77
126
178
131
110
127
92
74
104
152
104
104
103
122
98
104
119
58
134
123
77
69
158
69
139
149
55
92
56
55
110
91
178
125
67
37
87
56
79
67
136
110
92
98
138
104
91
55
106
55
146
148
122
110
127
138
139
55
136
152
105
138
101
109
119
138
92
92
144
148
56
75
105
171
55
58
141
77
58
171
93
55
92
111
110
73
165
67
81
139
105
107
100
55
118
74
92
69
110
105
152
126
128
67
101
56
189
135
67
138
122
117
104
92
55
120
138
138
139
126
152
110
146
58
93
104
115
150
149
158
110
104
67
122
110
77
126
122
92
56
122
37
117
56
75
128
122
134
110
109
138
171
56
112
135
138
126
144
123
37
55
99
138
103
92
58
169
130
67
134
144
94
114
105
56
182
37
160
67
105
126
100
107
92
86
56
126
55
104
139
110
110
105
107
55
148
127
69
104
129
93
102
140
126
162
164
56
105
146
139
134
67
83
86
126
111
84
55
138
124
123
126
92
136
79
55
74
55
146
152
169
92
122
107
124
128
79
93
107
146
128
105
169
37
37
93
92
92
139
37
110
128
88
56
110
197
126
105
109
67
122
115
75
109
104
75
126
58
124
68
132
56
111
126
138
167
74
55
119
55
105
127
100
92
105
67
91
110
92
68
104
160
92
168
171
109
109
163
68
109
146
55
100
134
100
83
110
58
171
76
79
103
138
152
122
93
115
135
93
126
111
127
146
92
146
99
96
104
55
118
58
112
127
129
37
178
55
178
138
97
69
107
111
105
67
109
56
97
91
127
104
79
148
95
110
110
99
111
110
126
169
92
105
119
92
97
178
139
110
122
139
103
100
127
110
84
107
180
105
67
110
92
56
104
134
128
92
119
109
148
139
137
126
110
67
105
110
58
79
138
74
102
109
137
136
68
58
74
92
138
136
128
128
146
101
139
140
92
139
141
109
138
104
99
101
138
110
105
122
37
110
56
128
141
105
178
126
128
92
105
158
68
114
56
107
146
126
88
105
114
110
69
146
56
105
164
107
58
55
55
93
126
117
144
37
126
139
119
126
120
182
139
122
124
104
67
86
56
123
97
119
55
92
74
92
115
105
93
92
93
112
68
138
97
93
138
92
169
138
55
122
111
138
117
152
55
123
138
139
122
107
126
56
138
91
92
126
75
105
138
126
108
92
144
124
93
79
79
110
152
58
37
126
56
69
110
94
92
139
138
69
55
56
93
102
104
86
58
86
169
79
55
127
56
93
93
139
55
109
58
99
84
122
86
138
105
139
91
109
111
67
104
119
58
94
106
146
120
56
112
105
130
91
163
110
152
138
134
104
109
55
102
99
124
109
77
122
93
110
104
98
140
86
93
110
126
138
93
122
110
97
138
119
139
105
37
103
139
109
92
92
83
68
67
67
67
92
56
158
108
74
128
105
139
105
126
146
146
68
92
67
92
92
123
149
138
122
112
178
92
67
92
130
126
109
169
92
92
140
56
126
83
103
130
83
55
55
98
139
122
126
69
91
130
99
79
89
132
75
92
127
126
110
140
138
58
37
127
37
55
94
98
77
105
92
122
68
180
119
94
104
110
169
107
105
122
110
126
93
136
136
79
56
92
132
107
122
105
105
81
83
136
92
83
135
74
131
167
178
131
144
77
139
119
99
122
80
178
56
105
91
88
67
131
79
104
137
126
93
67
104
67
110
115
123
178
138
134
109
138
123
178
123
97
140
110
88
169
107
104
110
146
92
55
122
123
122
158
139
104
127
99
126
128
67
92
122
58
109
109
68
181
103
138
126
138
110
106
55
168
104
120
68
93
67
93
75
118
106
134
73
69
138
37
122
138
67
141
135
72
58
92
124
58
93
142
91
136
58
122
138
144
105
111
56
56
93
137
127
37
68
131
122
69
104
104
98
146
111
127
111
109
67
134
110
167
119
68
111
132
139
56
67
128
126
99
152
103
130
105
86
56
92
97
92
95
55
146
103
144
92
67
77
128
55
93
79
134
146
105
138
110
105
110
55
127
98
139
178
89
92
99
74
88
126
134
152
104
87
69
92
106
123
92
138
104
142
84
122
83
108
99
98
128
79
122
69
128
138
69
110
109
126
152
103
117
134
128
169
123
92
107
55
139
119
144
118
118
96
127
55
55
56
164
146
118
91
110
122
104
92
105
91
128
104
146
56
78
97
123
127
139
126
105
92
55
37
67
56
110
123
139
99
119
121
127
100
126
56
105
126
93
134
97
126
77
148
138
93
55
158
138
122
93
122
119
102
93
138
103
68
152
67
118
163
91
99
86
152
67
58
93
113
128
169
106
178
55
107
92
138
77
126
138
168
140
109
75
105
164
148
58
134
132
144
37
158
128
89
92
92
117
128
105
105
136
138
144
77
91
92
110
58
126
139
122
127
86
80
56
104
127
55
67
126
152
122
128
58
83
102
81
109
144
58
56
126
86
139
91
118
55
92
169
140
131
146
83
163
146
86
93
111
126
92
158
110
140
104
92
69
122
105
146
101
104
162
111
110
126
162
101
181
110
67
106
100
105
37
111
101
138
75
122
110
77
67
92
169
86
86
152
126
37
126
127
153
139
110
37
127
95
116
101
178
171
122
104
79
141
110
123
122
123
148
89
104
55
114
140
78
55
56
119
81
128
130
77
107
78
120
100
169
120
152
138
67
103
138
55
105
55
178
67
55
110
158
110
127
130
101
69
141
55
92
145
146
107
105
127
95
93
130
75
106
144
68
126
55
178
92
146
67
92
127
104
97
127
91
126
37
128
104
128
105
144
126
94
165
105
120
96
93
122
111
127
126
114
84
112
55
122
56
67
75
146
55
104
122
117
58
93
146
163
73
127
37
74
37
55
139
199
140
93
109
107
126
81
126
55
55
83
126
69
95
69
128
93
148
58
138
105
132
86
105
139
56
152
148
126
138
68
105
55
178
127
109
122
99
152
120
108
99
67
144
93
123
110
93
74
92
128
86
92
56
89
110
109
132
92
58
134
114
56
162
188
122
118
110
110
138
84
55
102
178
92
104
118
130
58
139
107
188
128
98
146
109
67
114
67
67
99
93
69
112
152
146
138
55
83
148
126
114
92
56
136
105
86
91
58
111
86
140
104
163
107
37
79
125
122
107
110
138
92
93
104
124
84
115
56
58
144
146
79
93
127
178
110
139
56
104
67
126
126
99
169
111
89
165
58
122
56
111
169
180
130
112
144
74
93
119
55
125
79
110
138
111
127
55
138
139
122
105
169
92
126
122
69
149
152
130
104
92
83
67
92
162
105
93
69
137
86
67
122
55
133
169
93
105
92
67
105
112
139
139
138
128
107
109
134
105
125
37
58
55
122
110
105
164
89
119
105
127
137
92
93
67
162
93
138
152
158
122
138
86
120
95
104
92
92
122
55
110
132
112
114
158
134
105
69
123
119
107
122
148
55
122
74
68
162
79
126
92
67
105
55
37
114
104
150
178
55
124
77
122
138
86
144
134
119
77
122
58
144
135
148
56
94
92
74
178
86
138
92
120
139
105
109
171
91
88
152
115
122
107
100
107
92
152
168
122
83
74
122
144
75
138
105
55
140
120
123
84
104
67
119
151
103
132
152
92
67
37
84
74
123
88
67
139
132
56
88
146
123
99
37
110
92
92
55
93
131
119
84
122
112
138
55
89
92
86
110
92
139
102
37
104
79
120
56
92
128
37
135
117
102
128
110
128
58
146
92
122
111
110
169
126
110
104
110
126
126
104
121
126
114
92
141
169
68
132
122
86
124
117
128
86
56
118
146
77
105
111
102
140
58
144
56
169
104
67
115
55
110
67
145
127
55
106
110
111
103
137
55
105
101
55
55
144
152
144
104
69
169
178
123
126
123
103
128
93
146
110
171
58
75
117
56
92
37
138
69
89
56
171
163
122
150
111
122
180
124
122
99
110
140
105
144
148
103
126
111
105
122
105
146
100
122
105
127
97
126
69
139
92
105
103
138
93
145
139
123
130
139
107
169
93
123
127
74
92
144
118
92
120
197
67
37
128
37
55
126
122
134
56
124
118
139
92
37
100
124
163
131
104
105
101
124
139
118
127
92
83
138
69
55
104
105
126
127
138
74
69
152
105
104
92
123
138
58
92
144
180
144
128
99
137
126
122
134
92
119
146
92
122
126
86
112
130
55
87
86
55
180
77
122
104
117
103
67
91
139
84
55
74
83
92
86
104
77
169
104
152
105
127
126
110
91
37
56
109
103
37
115
101
67
153
91
92
114
104
87
92
111
93
97
56
58
56
137
112
138
126
108
105
74
104
122
97
110
88
171
127
92
92
152
150
126
83
144
86
126
124
152
93
92
37
178
69
92
92
150
97
55
55
104
122
86
98
110
77
92
55
115
91
122
131
55
105
127
127
112
138
168
126
104
92
139
139
55
152
139
77
56
55
122
55
97
58
104
148
122
55
138
55
105
110
68
37
67
55
138
77
55
77
79
110
192
91
103
55
69
92
140
61
117
127
126
114
69
119
110
92
139
122
67
55
110
104
55
87
158
100
119
58
55
103
118
110
55
77
79
146
55
104
120
56
55
152
119
144
105
123
69
122
104
131
92
55
79
104
69
106
138
92
87
92
178
98
123
110
122
58
144
67
55
144
55
134
92
100
99
69
104
37
138
178
127
93
105
37
139
110
139
123
56
114
144
126
126
138
75
105
99
126
171
102
144
122
126
58
152
55
108
67
110
68
92
55
93
75
55
93
55
144
122
126
116
105
129
152
93
139
94
55
103
75
92
126
103
122
92
92
122
55
171
138
138
58
110
56
128
86
123
91
74
56
152
128
55
104
92
75
127
135
110
56
126
67
130
86
152
88
110
123
105
110
92
92
97
124
169
135
56
131
135
69
122
134
109
110
79
96
92
67
92
178
110
122
114
119
74
37
127
58
92
123
67
110
110
104
83
142
105
77
132
154
130
92
84
92
105
171
146
67
110
178
93
110
67
130
105
158
126
119
105
105
89
162
122
138
144
37
99
114
180
136
56
123
55
152
110
127
144
127
111
122
119
126
178
105
67
91
140
98
178
92
137
127
56
127
112
120
55
105
105
126
92
109
71
127
110
169
110
92
67
105
103
103
104
119
127
67
141
97
122
110
92
79
113
128
98
122
124
105
105
56
122
145
111
123
160
131
152
110
178
102
55
130
105
122
104
135
71
123
102
144
102
55
140
55
92
104
104
126
122
123
119
67
55
110
56
119
55
144
104
103
119
103
111
112
109
93
91
37
128
110
86
169
92
105
93
37
148
69
152
137
105
139
79
112
58
180
79
77
152
105
127
97
101
122
117
127
92
138
178
83
122
79
37
122
149
58
152
92
69
58
129
92
91
37
128
93
74
92
67
107
152
74
55
169
106
146
69
55
55
104
111
110
110
77
122
67
168
127
127
127
55
67
110
37
56
169
78
123
55
112
110
127
105
127
128
93
107
152
69
119
122
105
138
106
92
97
79
55
122
169
86
104
122
92
126
93
67
138
107
104
99
138
83
105
58
131
140
93
96
148
146
69
137
92
104
134
55
58
99
92
123
67
114
104
93
93
88
110
138
91
152
138
138
110
75
134
144
147
102
67
119
37
91
105
111
55
55
104
138
128
92
140
55
56
69
56
76
100
67
104
77
83
83
77
98
58
55
109
128
55
131
110
146
92
93
77
58
92
110
178
149
104
97
92
93
110
127
55
67
55
122
138
138
92
110
58
103
74
104
146
105
145
93
112
135
130
75
122
128
75
134
111
110
103
56
128
139
67
139
77
75
110
99
102
108
67
136
92
92
126
108
105
110
139
74
92
55
67
134
132
110
110
93
69
67
126
138
103
97
105
92
92
169
86
180
67
86
58
84
55
92
131
78
134
110
105
109
93
127
55
58
119
152
164
130
119
92
67
139
105
144
91
135
138
126
67
110
150
58
84
110
37
111
138
86
67
113
178
56
178
55
79
110
121
75
122
130
144
131
139
83
146
83
138
110
79
128
72
122
132
79
58
92
99
92
138
119
93
134
125
122
114
92
139
101
114
79
148
126
178
108
138
64
105
56
107
110
144
123
178
139
92
97
144
179
137
92
110
122
86
55
69
104
122
105
104
109
178
116
37
178
156
120
92
122
122
124
114
92
97
128
146
98
67
108
92
105
139
178
77
119
107
103
140
101
111
169
180
58
139
92
88
104
56
93
92
169
124
146
114
110
109
58
112
129
126
162
102
178
69
91
107
97
92
58
122
98
156
138
77
37
86
138
55
124
83
105
106
100
126
77
109
110
112
37
75
92
84
67
105
69
83
93
94
105
130
98
171
146
146
152
103
103
67
104
99
58
86
67
131
109
122
152
105
178
55
178
131
37
92
105
119
92
106
92
119
56
74
149
124
93
132
178
122
105
97
56
110
165
126
58
124
128
110
103
131
138
91
79
102
106
86
104
169
98
86
138
97
61
37
99
128
126
55
134
152
104
74
123
122
105
111
104
92
84
98
110
111
144
128
122
93
37
102
122
105
163
93
115
122
128
150
105
138
77
79
127
110
138
123
146
138
91
110
126
67
127
58
126
92
67
126
98
107
92
141
144
104
110
126
97
144
67
139
146
144
106
124
110
93
118
119
139
67
75
144
119
75
55
138
101
124
93
37
122
156
111
110
122
127
92
104
55
92
168
74
178
83
169
111
122
93
110
144
79
110
105
103
67
131
123
152
69
104
104
86
120
55
110
156
98
160
67
58
100
134
105
105
105
124
75
92
104
110
103
139
108
67
69
83
110
111
123
126
163
86
162
55
138
119
122
105
138
99
180
122
75
168
126
110
84
56
92
105
93
104
132
104
122
77
110
107
67
102
152
93
58
110
135
105
93
114
58
146
169
110
91
146
105
130
111
101
110
149
139
178
120
126
37
127
126
56
93
55
128
55
134
104
105
99
122
55
58
58
123
111
79
122
119
93
55
104
113
126
139
127
165
99
98
99
55
169
104
77
67
169
126
69
104
92
138
109
138
169
148
119
128
92
105
126
37
126
119
55
122
127
140
103
126
104
94
69
67
137
110
56
111
79
104
136
139
105
126
92
144
37
117
120
92
136
110
105
92
110
102
93
103
162
153
92
178
92
123
144
138
152
122
74
55
110
139
126
110
58
115
61
134
119
105
152
169
103
79
123
55
89
126
113
139
67
105
111
92
92
126
107
134
93
67
92
112
100
131
134
112
163
124
102
69
68
110
95
114
110
84
146
139
135
98
139
106
92
127
124
55
169
37
92
91
105
77
139
37
105
56
110
156
138
127
92
146
104
55
86
99
138
107
138
148
122
97
74
171
153
104
178
93
109
104
75
80
122
77
148
112
105
138
118
37
110
91
92
102
69
93
58
142
74
110
123
110
126
144
92
69
123
119
126
91
93
119
104
122
144
134
123
67
69
105
128
86
109
103
105
134
104
131
122
139
178
165
152
127
140
134
138
127
162
139
78
92
140
75
55
67
110
104
69
58
169
105
122
92
79
122
84
79
93
144
92
37
134
79
171
93
55
89
144
178
75
110
119
84
99
117
169
99
136
138
105
67
93
130
55
128
123
69
76
171
103
126
86
107
152
178
55
99
131
78
109
122
105
122
180
86
109
107
83
139
126
37
104
126
112
109
92
126
92
148
101
92
86
139
109
145
148
93
160
138
95
56
171
77
123
111
92
86
179
105
134
100
139
123
140
178
56
105
86
86
93
126
102
105
107
110
37
55
92
171
119
141
104
92
134
152
126
178
130
128
126
92
55
102
111
138
125
56
144
178
55
77
69
37
127
56
138
94
58
91
55
37
112
119
98
123
122
122
138
92
110
92
98
100
137
68
69
37
131
149
104
56
146
101
165
110
110
99
109
67
105
56
100
139
121
146
55
139
122
58
100
122
100
146
55
126
56
69
124
104
105
178
167
109
169
75
69
122
134
128
91
77
86
126
110
83
92
93
114
148
130
103
110
92
69
119
117
146
119
119
103
118
139
104
67
123
126
178
111
102
178
67
74
67
93
180
122
102
138
169
97
119
55
126
79
55
124
136
110
107
124
69
89
137
67
58
80
75
67
138
129
69
126
92
126
118
144
128
119
111
92
109
146
111
123
123
93
84
128
58
148
81
94
164
93
136
55
148
140
111
99
180
132
118
92
136
158
140
37
119
86
120
105
120
162
131
138
131
104
169
178
138
146
144
105
105
110
104
163
122
169
37
114
55
128
140
123
115
126
93
178
109
132
104
128
56
146
92
67
177
92
55
139
92
127
67
98
105
111
145
56
93
98
144
138
178
79
123
123
109
139
130
102
93
37
114
146
134
178
77
131
118
86
126
58
132
77
88
105
97
55
124
58
105
102
123
58
55
139
123
92
79
110
58
103
92
69
58
152
86
109
110
93
126
139
180
107
104
112
67
178
139
37
55
178
141
105
93
93
180
92
83
131
55
84
118
105
119
58
105
111
92
105
139
140
93
122
98
122
92
97
55
105
97
139
128
138
146
55
67
158
130
152
91
118
92
126
58
146
140
67
168
93
138
112
102
128
122
111
122
56
81
56
37
111
138
93
78
56
91
144
126
98
92
55
123
104
105
56
55
37
119
99
55
92
105
110
93
122
122
138
129
92
134
95
67
178
55
91
182
139
69
64
93
118
75
75
55
138
78
178
79
69
69
127
169
84
58
138
107
104
117
67
180
92
93
92
126
83
126
97
102
67
127
139
104
86
77
37
55
111
104
75
128
104
105
109
89
178
58
152
110
110
37
93
93
75
93
55
122
105
128
126
138
74
77
138
91
148
192
125
146
146
86
121
91
138
140
134
110
144
124
92
119
123
127
58
124
119
110
104
129
138
86
109
139
69
139
123
68
58
160
112
92
92
109
92
124
105
105
105
122
55
93
169
93
97
74
105
127
58
104
92
56
92
150
138
75
139
93
114
110
73
67
69
55
107
178
114
56
144
122
104
110
79
68
92
127
107
67
120
119
92
110
55
95
135
132
67
126
99
96
104
153
37
158
67
138
100
145
37
127
91
117
55
139
91
120
56
58
56
93
74
130
56
92
97
168
69
134
124
137
139
92
106
136
162
146
69
138
178
37
126
124
108
77
74
138
110
55
117
104
55
92
165
105
93
124
122
91
126
127
58
130
100
144
114
105
37
132
102
140
67
119
180
67
134
55
146
120
138
129
137
136
138
134
105
104
58
55
126
120
119
55
122
89
144
74
58
126
105
55
126
93
140
79
113
128
112
138
146
138
142
56
123
127
55
55
105
91
122
92
88
93
98
171
83
115
58
178
110
115
134
55
98
134
111
169
152
111
55
97
105
120
79
152
108
69
122
94
146
67
126
83
107
199
139
92
124
83
122
137
84
140
122
92
178
110
69
165
162
126
100
92
58
140
138
182
110
104
91
122
104
124
104
144
55
138
55
67
110
137
58
98
126
100
93
127
105
138
122
92
55
123
126
68
110
101
142
169
138
164
86
55
144
92
92
105
107
110
93
69
151
110
37
127
55
104
109
84
58
92
104
75
144
104
138
107
92
148
69
58
105
79
138
55
104
58
69
158
138
122
140
37
55
97
138
75
95
139
67
93
105
123
134
86
111
79
138
92
148
83
111
98
92
139
122
117
93
103
56
138
122
83
121
179
55
110
126
122
67
37
92
163
134
148
127
99
93
138
92
99
119
92
107
111
93
92
58
127
92
92
178
55
178
152
123
118
180
115
124
67
110
86
138
136
130
67
145
127
69
104
123
92
56
106
100
137
92
158
92
92
138
56
105
103
138
122
105
86
117
55
56
55
37
91
75
55
78
114
110
122
92
37
74
92
83
131
105
92
169
127
93
68
104
67
138
126
138
122
67
109
122
138
126
79
126
56
37
101
86
74
126
120
109
37
112
165
37
123
104
110
132
69
132
37
92
144
102
104
55
105
95
178
134
126
128
178
93
123
146
199
55
69
69
120
110
69
140
58
37
87
122
146
91
123
110
122
104
126
126
56
92
92
91
134
101
127
93
105
162
111
91
144
148
69
126
165
99
67
101
138
122
141
103
56
67
146
74
130
120
169
158
92
55
126
92
110
91
110
128
160
104
152
131
110
97
125
139
114
178
67
93
105
139
77
56
124
124
55
74
110
92
102
178
107
108
169
55
169
92
124
118
93
101
92
129
92
99
103
97
99
129
74
168
92
119
169
169
69
68
104
91
92
37
104
91
127
110
169
144
126
99
139
123
91
152
101
109
110
100
106
107
138
37
122
55
100
122
126
111
111
124
104
119
92
131
160
139
139
138
67
162
56
67
124
91
105
127
98
138
126
93
37
86
111
111
101
152
92
69
138
168
119
168
55
122
110
79
69
122
55
55
55
130
110
178
92
56
78
91
55
92
92
132
89
102
92
99
143
93
67
178
103
122
105
127
112
138
69
93
68
129
93
110
58
141
58
110
126
158
178
105
158
92
99
168
122
58
122
139
128
127
139
127
126
107
92
69
67
67
110
122
131
100
93
169
83
139
158
117
126
67
139
105
144
167
69
91
110
83
74
119
139
110
91
55
92
138
178
105
109
126
92
119
104
123
139
123
126
37
69
55
148
136
102
120
122
92
131
75
100
138
93
160
105
100
107
111
93
110
84
111
138
105
110
110
126
109
109
107
91
144
92
126
119
99
55
144
104
97
67
110
86
128
92
92
58
110
79
138
55
105
58
105
37
120
67
92
99
55
56
109
37
126
104
97
146
126
148
58
122
126
107
93
110
131
55
124
197
84
67
122
37
93
138
117
126
55
92
142
97
126
169
126
126
178
55
165
122
104
139
37
83
110
128
109
93
114
127
129
178
178
58
146
104
58
103
122
92
138
56
138
127
67
119
93
93
74
131
97
178
58
55
126
110
109
138
101
111
139
148
104
110
72
123
74
92
169
119
122
99
122
56
122
56
83
146
126
83
110
107
126
92
169
110
98
110
106
128
103
146
135
127
67
75
122
68
127
104
148
69
75
144
79
105
131
140
123
91
126
163
152
97
131
123
104
132
98
67
89
69
119
138
69
85
128
64
139
122
92
88
144
105
92
75
128
55
99
105
104
149
111
105
132
73
103
92
55
69
123
128
67
102
131
92
67
92
78
158
136
140
67
110
68
135
92
37
122
79
134
73
132
79
92
86
169
58
122
56
169
130
138
75
67
75
92
93
92
93
92
79
124
98
107
67
136
110
164
139
100
126
92
94
130
79
111
139
110
127
37
122
86
106
67
148
107
68
91
93
145
122
111
144
119
138
109
92
67
99
93
75
56
92
139
139
126
106
146
178
122
93
128
118
152
107
126
132
146
122
74
122
124
118
93
149
92
109
122
139
91
107
114
105
122
122
144
86
127
86
134
119
37
123
120
67
93
97
127
107
127
118
128
86
86
146
79
93
132
139
74
58
107
79
92
86
132
64
83
55
120
163
148
127
83
139
74
109
122
109
93
126
122
114
95
79
97
87
74
91
37
86
67
79
169
178
37
124
67
130
131
119
89
122
142
111
92
110
84
138
104
140
134
67
104
137
99
67
126
37
112
97
169
146
92
142
105
146
111
68
92
110
152
178
101
92
67
92
102
136
92
110
55
127
101
97
86
124
91
178
67
104
138
171
132
132
169
88
126
100
126
97
110
79
122
122
138
110
122
145
58
84
105
92
138
126
56
119
92
101
67
136
122
103
126
103
123
77
67
102
110
91
111
67
121
123
93
171
122
169
110
56
72
111
126
152
116
68
178
91
126
81
138
168
92
111
67
56
92
93
55
102
92
110
164
92
144
139
178
92
117
79
114
114
67
148
89
117
101
92
122
169
79
77
107
93
122
93
104
110
104
84
92
55
67
138
152
74
67
78
127
126
86
138
139
58
105
148
107
107
127
110
110
58
103
134
180
139
122
160
104
146
91
58
110
99
104
143
123
58
111
126
76
58
68
86
93
91
126
127
86
92
55
93
146
58
67
134
92
171
100
55
58
127
69
111
74
69
162
123
110
105
152
55
120
110
77
92
163
150
75
146
139
110
91
56
98
120
112
105
126
122
169
99
160
92
58
104
188
127
106
67
165
134
55
101
104
89
99
126
84
127
67
110
91
148
93
56
112
146
122
55
104
92
67
69
142
55
165
67
93
75
178
123
55
144
92
122
93
97
55
109
76
126
69
55
139
74
139
56
110
126
37
67
67
74
168
152
178
122
58
55
56
105
67
55
86
86
106
72
92
160
148
92
56
110
138
127
67
126
132
131
169
126
152
77
122
114
110
148
105
128
114
110
171
171
55
134
136
55
140
79
110
86
78
123
123
37
126
74
119
138
112
105
86
104
69
55
98
109
97
123
104
92
67
97
37
110
55
55
188
86
123
86
100
199
122
104
55
91
144
110
103
95
122
92
67
99
138
115
64
136
107
122
100
86
56
126
68
102
58
92
126
69
107
67
110
74
180
89
119
84
56
110
102
114
158
58
144
95
122
112
126
68
122
106
92
105
131
152
105
68
144
178
178
148
56
138
178
103
86
110
139
104
140
140
92
86
111
92
122
108
100
139
120
117
105
93
138
99
102
115
152
122
152
119
89
122
93
140
75
130
110
124
127
67
146
55
100
81
199
138
127
104
105
103
169
86
105
104
67
67
110
115
146
111
75
141
138
110
68
122
134
126
107
126
126
117
109
105
99
92
110
92
107
74
92
126
97
171
84
127
67
67
110
129
152
122
79
55
142
91
110
168
122
111
92
92
93
104
55
92
106
127
58
130
124
92
144
37
132
37
74
83
152
114
188
106
136
126
99
148
104
67
104
37
146
105
92
130
111
55
93
104
178
97
55
105
79
112
55
169
92
138
84
99
58
128
55
126
74
152
93
121
98
108
126
138
138
114
67
93
138
79
92
93
169
104
67
75
102
146
98
110
37
67
77
55
67
120
138
160
123
109
103
92
91
150
105
144
89
68
92
110
128
106
130
103
107
131
105
126
92
146
127
106
144
56
140
92
110
178
110
93
58
152
103
64
67
110
75
130
93
86
144
92
67
79
146
56
56
138
105
122
152
139
143
111
69
147
126
144
122
126
130
58
168
80
122
106
152
119
93
144
93
91
92
107
169
67
144
123
105
146
138
139
154
122
100
105
122
146
67
92
118
108
144
86
93
122
93
69
111
98
91
55
158
130
105
110
110
93
110
55
122
105
93
110
120
111
111
122
134
92
109
178
132
144
123
55
138
75
126
126
99
131
58
127
125
56
75
146
141
118
120
93
58
139
127
77
139
127
84
178
103
92
109
84
114
139
69
104
91
128
148
134
152
93
111
68
99
119
128
55
98
67
152
69
92
126
99
138
113
144
67
103
93
103
69
124
113
78
100
105
56
56
163
104
55
98
169
122
138
37
79
97
55
110
104
67
123
110
152
56
91
139
105
69
55
111
109
148
124
56
83
136
122
146
178
86
105
55
119
139
68
122
129
110
107
107
104
55
97
144
171
97
122
104
86
140
144
69
92
105
144
86
58
148
127
91
56
118
126
79
132
92
92
37
91
111
127
126
106
148
93
110
55
107
77
92
144
105
110
138
124
93
55
127
91
123
55
127
100
134
134
99
99
67
93
92
138
58
58
122
68
122
83
103
93
105
122
37
104
92
125
105
92
138
105
132
138
92
67
86
91
122
110
115
93
75
138
171
125
94
152
99
55
120
110
74
68
105
163
178
158
104
127
136
91
104
58
107
148
129
92
55
86
104
67
111
158
56
110
111
139
86
127
144
92
136
107
109
86
92
123
122
58
178
104
92
148
79
114
101
58
55
126
67
67
79
131
75
37
126
122
127
112
37
74
55
109
77
93
55
164
120
123
102
58
69
55
134
152
134
140
99
126
119
37
122
109
165
92
56
92
55
91
92
105
140
67
117
126
135
80
92
75
123
55
104
116
168
102
110
117
37
104
104
56
56
152
107
103
95
110
134
75
119
178
110
77
83
123
158
75
163
83
158
138
171
55
101
55
113
99
93
92
126
100
56
89
67
92
75
168
178
69
144
103
128
56
55
107
139
169
126
74
129
100
104
74
126
180
75
169
58
104
138
178
74
93
95
92
92
105
110
169
55
104
147
69
67
56
138
55
105
120
169
69
119
169
88
104
95
139
108
58
126
89
163
169
143
37
127
101
105
84
137
83
58
126
127
104
74
55
86
58
144
119
58
123
79
126
127
139
110
37
128
146
117
122
146
124
79
58
131
126
152
124
123
156
122
138
69
110
55
55
94
86
128
122
55
126
95
126
122
56
110
139
158
117
128
104
92
91
58
92
122
56
127
110
124
126
109
58
126
178
123
146
37
123
69
122
138
92
99
56
109
111
168
105
83
58
152
105
86
79
127
69
158
110
86
55
152
91
97
122
79
122
122
74
158
37
148
105
122
55
127
58
107
37
103
127
126
123
126
139
67
107
84
91
74
92
126
131
119
158
58
127
93
128
110
37
164
110
130
122
143
68
199
141
103
112
163
92
163
103
37
140
87
122
178
118
101
145
79
146
114
130
110
93
122
122
67
74
55
55
122
126
167
109
69
180
111
92
110
92
178
148
55
92
93
138
158
171
92
99
58
131
168
93
127
136
103
122
126
112
101
55
92
127
105
146
91
61
119
92
92
111
55
123
110
77
92
86
152
86
99
89
134
138
123
122
92
134
55
127
146
91
169
110
144
169
79
93
119
69
122
109
138
89
93
132
55
169
88
92
79
102
104
128
110
77
101
110
55
137
178
55
110
37
55
110
92
112
105
109
144
110
130
55
55
91
152
56
91
138
110
100
123
162
126
99
110
178
110
104
105
105
67
55
126
56
110
131
122
55
88
105
111
105
127
75
92
55
75
129
127
110
104
146
55
55
140
75
122
99
75
99
93
110
37
107
93
78
56
104
140
131
91
93
93
86
68
119
79
139
92
131
105
109
67
126
89
123
178
37
127
68
122
132
144
105
76
158
97
83
103
126
178
134
132
91
86
104
105
91
142
55
142
169
105
110
144
122
67
148
104
144
178
104
56
134
93
146
37
67
140
91
55
69
121
144
144
104
37
98
55
104
178
75
110
92
37
55
169
106
56
145
99
146
152
89
55
178
110
74
37
112
140
130
93
103
92
123
178
137
122
87
92
144
55
146
125
69
137
79
102
110
93
105
169
92
37
92
107
138
123
138
138
67
86
67
146
92
126
138
107
105
126
122
55
110
84
92
114
105
122
126
56
110
110
102
67
128
144
178
91
126
93
126
37
86
92
114
92
111
178
134
37
107
118
37
99
109
134
126
111
138
89
56
112
141
134
132
146
139
110
99
83
110
37
81
178
123
92
146
104
162
106
58
127
55
109
88
91
167
92
105
178
92
58
92
122
56
117
122
92
100
109
37
86
93
83
79
55
74
158
144
122
128
110
92
110
55
148
92
67
140
110
168
58
138
93
68
58
134
104
92
92
148
55
140
55
135
130
37
69
105
92
93
83
67
138
130
69
93
122
92
126
81
120
106
138
138
55
146
199
110
55
117
138
114
162
111
168
146
79
188
138
119
136
55
126
92
138
55
110
105
104
69
138
69
137
180
67
134
122
110
132
69
128
55
93
135
130
188
140
113
110
152
92
122
104
92
148
67
114
138
110
119
93
100
152
114
55
123
178
97
56
126
105
56
103
67
109
55
58
67
109
126
138
165
74
105
105
127
171
55
67
58
56
138
98
106
74
138
152
91
139
127
167
127
126
69
140
55
130
93
97
55
124
123
126
105
110
100
128
146
110
122
131
146
105
127
130
139
147
104
67
119
86
117
113
104
67
55
55
74
119
169
92
138
55
92
131
107
101
88
93
91
137
178
199
56
77
92
91
127
92
126
139
135
169
74
93
69
69
126
110
110
37
126
134
37
144
167
168
132
120
77
93
144
105
99
55
110
93
109
110
103
126
56
139
103
91
167
106
122
127
169
75
91
97
144
123
134
92
127
169
37
103
55
67
137
55
104
137
119
163
123
138
123
149
105
92
122
55
92
67
130
178
168
137
69
105
37
126
110
105
128
98
103
111
110
134
99
55
126
69
169
94
168
122
92
55
55
93
127
110
93
77
122
123
69
55
128
98
91
79
138
77
69
56
67
171
130
124
112
110
111
55
117
92
122
67
131
93
111
126
119
146
69
171
37
67
104
88
92
134
169
103
79
169
145
136
119
67
104
58
87
158
77
123
127
87
69
126
102
129
37
122
120
104
58
105
134
124
123
119
122
68
58
178
159
78
75
126
169
104
55
132
142
131
144
101
55
169
69
55
92
93
127
109
92
140
134
128
56
110
94
67
122
171
112
92
126
126
100
150
126
126
80
98
55
156
105
55
124
91
92
75
146
83
56
105
55
74
98
126
144
144
79
128
102
67
122
144
105
140
138
121
91
93
119
105
98
74
110
112
104
141
144
102
126
77
101
126
138
93
86
114
122
69
80
107
37
92
106
126
96
56
134
146
199
104
139
122
120
122
67
149
107
160
178
131
104
101
67
119
73
105
86
163
55
92
75
97
135
67
110
37
105
122
158
105
122
83
112
92
92
124
92
105
83
131
123
86
67
134
138
56
128
58
138
122
136
81
127
105
110
108
92
119
79
105
58
89
55
114
122
124
105
56
120
126
105
132
101
134
56
55
168
105
55
127
126
65
111
91
104
138
108
109
86
67
55
84
92
127
131
100
126
134
99
89
57
86
98
104
79
110
105
67
127
98
75
149
120
55
121
168
178
128
123
139
104
147
160
92
162
138
108
102
68
120
128
120
100
122
104
58
55
119
144
91
97
105
137
79
104
126
132
178
67
37
139
115
69
79
126
142
132
92
56
122
123
104
110
178
104
107
144
124
69
105
110
93
56
125
97
102
103
55
69
103
109
110
86
56
130
132
138
105
74
74
75
55
138
126
55
109
83
171
105
123
128
105
145
92
74
68
122
102
103
122
74
124
144
104
67
178
86
104
130
158
110
144
120
109
164
110
98
56
67
120
119
104
83
103
93
103
169
122
92
105
162
144
86
110
58
131
127
105
138
105
92
79
105
111
122
37
122
110
110
146
55
146
124
119
130
37
92
130
109
67
110
92
146
110
92
81
146
123
83
145
37
74
131
115
37
107
58
107
92
74
92
126
139
102
140
93
92
171
86
92
126
103
77
171
55
93
120
105
92
104
56
108
139
152
122
126
119
92
108
67
74
55
149
86
92
178
110
56
91
110
138
131
75
56
138
138
169
67
67
75
109
37
130
103
92
37
146
106
96
148
153
92
126
144
117
104
126
131
69
93
92
104
138
93
122
122
163
58
138
164
110
87
86
131
152
120
92
111
75
119
91
127
105
100
142
163
92
67
37
92
109
136
130
138
139
122
127
169
119
99
93
55
92
171
75
107
148
139
108
122
93
79
92
131
92
92
152
105
138
146
93
147
131
115
126
110
138
110
105
127
100
56
55
110
92
111
178
110
67
92
76
110
104
146
67
55
146
55
140
69
119
169
130
74
92
94
110
127
86
75
120
126
92
37
160
91
56
120
136
108
128
58
55
165
121
178
58
83
152
104
78
110
146
55
140
58
91
89
138
150
92
132
138
144
114
138
134
126
142
139
74
122
92
92
99
92
132
126
127
105
114
138
69
126
92
131
55
126
69
86
122
91
67
123
109
92
119
68
130
158
97
92
126
55
55
69
79
122
83
56
163
126
105
105
67
109
110
105
130
127
128
144
139
122
55
178
110
124
111
107
128
58
124
104
146
115
67
138
123
122
93
110
109
104
56
110
97
123
146
69
164
92
93
128
92
88
123
58
74
127
56
93
92
126
105
111
119
55
144
104
77
109
136
109
138
105
91
37
152
104
127
132
93
128
107
37
75
125
55
124
103
55
105
109
88
152
103
58
93
104
91
67
74
107
56
119
75
178
105
139
55
68
55
134
128
105
107
138
117
100
119
138
105
144
122
122
158
55
122
105
92
97
105
132
178
119
109
148
111
55
105
37
178
86
94
55
100
106
55
144
91
131
102
67
139
93
128
67
75
123
81
67
75
92
92
55
131
139
136
111
103
127
124
111
87
138
84
93
37
126
145
93
144
104
92
126
134
104
104
106
141
93
146
86
152
86
146
139
55
110
55
106
136
74
97
126
109
69
103
105
74
107
144
138
67
178
92
92
74
37
105
89
105
92
91
92
55
105
145
92
83
122
126
138
124
67
131
124
101
83
138
138
122
102
140
92
92
69
55
178
129
146
100
55
127
104
67
79
93
55
142
55
127
79
122
79
144
67
69
77
92
55
180
146
144
139
55
93
105
67
122
126
93
55
139
105
91
105
146
104
122
97
102
58
122
117
75
73
134
110
92
105
152
126
74
55
105
55
119
126
122
37
128
111
69
67
58
84
107
55
122
171
136
67
69
122
128
93
129
119
87
171
122
147
169
110
56
138
79
129
169
98
91
140
37
89
101
104
83
104
88
138
122
55
126
122
138
79
122
92
103
112
188
119
87
122
89
107
110
73
105
105
37
142
106
127
120
126
128
75
114
122
122
178
55
128
56
178
107
126
92
104
55
105
86
97
56
92
140
134
56
79
144
55
122
148
58
140
55
124
111
55
55
134
67
192
152
91
138
102
146
92
92
160
55
69
146
145
92
120
134
55
110
110
92
83
146
163
119
104
100
124
138
126
55
123
136
178
131
98
93
68
114
67
104
37
56
55
100
92
92
55
58
66
149
111
126
178
122
79
104
74
55
178
88
109
114
144
58
67
67
112
126
146
92
122
145
79
131
58
135
37
123
86
126
92
123
37
92
92
100
92
105
138
81
97
114
67
139
152
144
92
110
88
55
104
98
79
86
77
67
113
89
138
136
105
83
56
123
180
122
140
138
124
80
128
99
123
84
69
84
56
84
139
126
134
67
126
110
58
138
93
138
92
99
105
56
104
129
55
146
74
122
79
123
75
131
139
114
178
55
134
107
131
112
152
79
67
99
107
67
93
37
126
91
112
92
69
126
56
138
105
79
79
79
127
126
69
111
83
180
138
86
69
136
74
137
111
93
105
103
152
37
67
104
56
79
132
122
126
84
144
122
146
105
55
131
122
178
127
119
110
158
119
162
55
132
135
150
140
171
106
127
128
55
127
92
134
168
122
101
110
86
130
112
139
126
199
92
58
109
138
158
146
128
148
67
122
144
126
122
98
169
123
77
124
99
92
55
152
74
110
138
55
110
91
139
138
93
127
92
163
74
164
138
110
139
55
158
74
146
55
126
144
67
55
55
102
152
106
126
123
134
126
135
122
92
104
74
109
83
110
117
110
105
139
147
152
145
114
67
103
103
119
169
37
86
74
126
100
92
138
83
92
171
105
99
122
97
103
169
81
104
55
56
56
138
67
130
138
106
160
178
139
110
126
110
106
83
141
114
178
92
119
127
89
122
109
104
126
104
138
122
108
110
178
120
138
117
92
102
144
138
92
123
105
56
92
55
106
67
131
139
96
56
126
122
123
79
178
67
111
122
77
178
92
152
37
127
92
139
178
119
93
84
138
122
115
119
110
106
118
149
128
110
146
128
104
128
106
135
123
110
169
111
67
139
169
104
67
110
112
142
122
144
84
37
126
79
128
95
98
134
126
105
138
144
77
110
138
58
138
122
178
93
114
126
105
58
140
105
77
171
103
163
106
92
105
86
144
148
122
126
128
114
107
122
77
118
67
122
140
56
169
110
126
139
77
55
105
91
126
69
67
112
92
67
126
164
79
101
67
93
112
67
127
138
110
136
120
129
110
99
144
137
55
91
110
146
171
111
100
134
178
68
92
97
93
122
126
114
107
55
92
110
92
169
58
124
55
64
126
105
182
119
121
142
109
138
105
110
75
55
123
37
103
74
67
178
160
152
131
84
55
77
77
110
86
104
105
55
122
99
148
58
152
122
104
92
111
139
83
37
101
55
75
119
111
178
55
127
77
94
192
110
121
140
98
56
58
168
180
138
37
167
104
81
79
122
131
105
145
178
139
104
163
109
134
103
95
178
88
75
142
138
139
97
139
110
139
79
55
152
37
162
104
109
75
120
131
92
103
105
75
83
128
105
83
102
131
86
92
56
104
139
111
77
152
138
92
118
92
109
79
112
110
104
145
93
123
109
91
139
67
56
105
69
107
127
128
74
103
77
137
104
105
105
92
110
92
132
92
92
139
112
67
144
105
178
139
92
178
58
138
128
86
138
122
132
86
67
127
135
84
144
103
139
75
101
67
167
118
56
74
146
171
67
138
138
178
67
178
130
139
101
55
58
117
130
105
110
138
69
127
55
86
164
105
79
105
126
92
110
122
92
139
111
104
56
101
168
89
126
126
131
110
93
149
110
58
138
77
127
89
92
56
126
169
55
118
110
92
99
98
169
112
98
146
139
99
79
86
138
124
105
110
103
104
91
139
111
178
169
122
138
126
73
111
112
178
58
152
152
68
134
105
122
92
110
128
144
110
119
91
119
69
111
130
122
152
126
74
120
92
110
114
67
112
68
79
138
58
122
55
171
56
110
77
105
37
142
74
86
110
130
123
105
144
89
105
92
110
58
68
121
98
117
67
127
103
56
122
136
143
102
135
92
139
83
89
124
55
127
98
92
122
115
128
92
76
126
144
92
138
55
93
92
102
122
127
58
99
74
114
93
100
69
83
105
104
117
110
91
105
58
119
144
126
91
126
144
163
140
115
148
122
84
124
92
92
158
56
102
126
146
127
128
130
134
55
119
80
163
79
61
134
67
92
56
114
132
93
122
107
58
92
93
106
105
93
93
55
104
77
58
146
105
78
107
114
67
92
130
84
146
92
139
55
100
37
104
56
126
99
55
139
122
110
105
105
126
169
149
106
77
101
101
69
92
148
93
106
126
56
125
134
146
111
126
122
136
131
180
93
107
97
92
119
126
37
56
111
118
138
58
138
107
169
123
91
132
124
93
138
140
79
138
138
58
105
139
55
55
178
112
55
178
178
110
37
105
134
152
93
111
128
178
93
126
119
169
128
179
110
92
105
138
77
86
138
141
74
89
92
56
105
80
104
119
138
105
144
56
109
126
105
169
111
126
144
104
92
93
163
74
127
139
104
122
138
92
130
86
80
109
171
132
149
110
110
102
55
84
126
122
67
86
92
84
110
98
100
105
110
111
83
110
122
168
144
131
92
146
105
127
127
127
104
139
123
138
152
130
55
56
100
137
37
105
104
55
128
146
169
93
144
110
89
138
56
138
80
111
127
37
107
83
140
160
81
93
103
152
138
104
152
123
124
55
149
169
104
147
79
56
56
55
84
110
69
109
128
148
138
97
75
111
126
111
110
55
109
144
140
91
67
77
56
128
111
91
55
69
69
104
138
97
69
125
67
153
123
37
158
109
103
67
74
92
144
178
178
77
125
126
86
128
77
79
144
127
55
124
56
111
80
86
92
169
124
119
122
138
55
139
55
93
110
104
67
158
92
130
86
92
91
110
146
97
136
148
92
83
144
103
83
122
131
78
86
55
123
55
138
138
97
56
77
110
138
122
92
141
112
127
146
139
107
178
119
128
103
105
58
95
144
104
158
109
110
171
105
92
119
69
56
92
124
104
122
55
67
146
101
122
101
86
162
126
67
109
103
102
158
92
104
78
94
123
69
91
126
138
132
75
95
56
105
146
67
84
106
130
104
79
139
55
127
83
75
105
93
55
77
115
104
86
169
118
95
105
146
67
97
55
104
93
122
79
93
110
67
83
55
93
86
105
130
69
67
79
56
105
55
98
79
102
169
124
105
131
139
67
131
56
120
105
77
111
110
127
110
110
100
92
136
122
127
74
178
114
104
122
111
110
111
109
100
122
55
132
144
128
117
109
138
138
110
128
55
138
37
99
122
109
93
115
164
89
104
122
119
127
122
58
119
119
79
92
58
152
92
139
103
137
169
109
139
131
110
92
56
55
152
37
79
103
162
55
140
72
136
100
101
106
55
144
123
93
69
146
110
146
104
56
92
122
124
126
111
102
138
86
122
107
119
68
160
69
37
93
126
104
67
132
152
140
165
134
58
111
105
37
37
126
92
152
178
92
105
126
96
107
88
79
92
139
92
169
138
126
83
77
99
56
146
139
128
126
168
178
93
110
92
107
126
117
69
126
104
139
55
149
55
152
124
134
113
68
56
93
93
178
56
55
91
105
75
109
92
97
109
122
128
120
55
127
124
67
100
126
149
138
69
56
69
92
126
108
109
125
148
110
111
92
79
58
144
119
105
104
112
126
134
128
75
127
110
158
92
92
128
91
122
92
126
105
69
109
139
147
169
122
97
88
169
178
145
104
37
92
110
105
55
122
122
158
126
92
123
107
135
117
92
79
105
111
92
78
105
119
74
56
139
93
93
86
37
101
92
79
169
101
140
146
136
55
78
91
150
79
128
169
110
81
123
126
77
98
122
122
92
67
128
56
152
77
127
126
136
109
119
168
140
92
75
92
139
126
86
104
103
142
137
122
117
68
89
77
130
127
180
110
118
104
122
152
56
101
105
56
141
139
112
68
138
55
79
93
146
91
110
83
92
127
163
132
84
55
110
126
128
104
114
122
92
128
131
178
169
139
105
127
104
114
171
132
122
139
67
93
112
126
138
105
55
128
93
158
107
86
74
67
127
144
107
92
105
122
122
123
146
99
114
104
87
67
88
130
110
77
67
111
98
55
97
83
92
101
122
144
92
134
114
103
134
110
84
139
144
107
110
103
95
110
132
162
103
106
103
152
128
105
92
58
92
103
110
110
128
119
92
58
94
37
55
75
171
99
145
126
140
61
122
86
156
55
143
110
146
104
171
142
58
92
167
139
129
135
55
66
67
171
92
110
55
139
78
127
93
132
139
56
122
106
138
152
105
139
92
105
138
163
128
92
126
93
69
154
105
92
105
162
80
152
105
110
55
94
105
83
158
55
103
106
92
93
139
109
110
74
95
144
126
88
144
91
128
69
178
130
84
126
122
105
180
86
127
144
123
140
146
107
144
58
67
147
86
58
55
83
93
108
140
97
134
92
130
58
167
69
148
152
109
58
92
126
93
93
69
127
55
139
146
126
136
86
105
127
92
93
135
86
118
56
93
144
55
37
92
109
118
180
127
92
72
103
107
67
123
163
58
105
55
99
144
107
88
171
126
138
111
92
93
144
138
104
105
152
67
92
110
134
104
122
58
152
126
68
138
162
145
55
162
86
122
169
118
110
37
104
69
130
105
67
93
128
91
56
165
139
123
101
110
104
158
110
68
56
127
140
55
58
55
92
138
156
55
127
110
139
119
37
55
103
92
92
91
92
122
104
105
128
113
98
109
92
178
134
74
96
103
125
122
56
144
180
126
37
108
56
103
119
58
92
146
144
169
104
105
138
138
111
105
104
110
110
93
139
96
104
132
122
92
139
74
110
67
95
92
104
114
105
101
127
163
119
74
109
58
93
74
126
132
92
110
110
132
106
93
122
146
37
119
67
91
128
86
162
124
126
122
68
92
117
80
163
144
146
136
140
92
86
110
138
67
138
144
37
89
97
123
92
93
134
123
111
134
37
56
105
134
109
93
121
84
69
58
149
130
123
95
110
101
134
182
91
67
58
144
134
107
138
126
92
106
149
69
68
110
101
134
55
119
107
160
169
141
112
126
79
93
96
88
127
119
55
67
146
121
140
74
56
55
55
144
93
168
55
56
92
128
122
118
91
107
77
77
80
107
91
55
122
127
146
58
105
92
124
161
111
58
188
74
126
84
79
123
123
93
68
138
57
56
139
110
119
86
149
69
126
138
98
117
135
165
122
111
77
55
92
119
131
126
132
79
56
55
146
146
163
77
55
107
100
112
81
92
55
92
106
88
93
137
123
67
79
123
144
105
55
74
130
131
118
126
127
105
97
93
55
111
93
79
162
69
92
124
120
139
117
122
92
139
142
91
120
104
134
93
55
68
126
79
58
100
96
132
144
101
93
69
92
58
134
158
79
55
110
110
124
104
92
180
134
178
69
119
91
95
104
104
122
92
79
92
122
138
92
132
37
125
75
92
152
86
58
122
138
122
127
37
132
93
37
84
92
108
126
114
123
98
56
138
92
92
97
120
104
95
109
110
56
122
123
107
138
122
124
58
92
140
84
86
92
152
110
55
180
122
111
146
126
102
102
119
122
86
55
111
67
139
104
126
178
37
107
101
140
110
141
110
110
119
91
103
168
104
126
140
111
58
127
92
144
119
178
69
67
92
104
146
55
37
144
86
83
107
86
146
122
58
102
111
75
58
105
178
126
122
104
56
131
118
120
140
122
67
89
138
132
55
120
55
86
86
169
132
139
119
92
55
122
145
160
37
127
92
84
132
55
124
138
106
99
93
91
56
129
144
56
110
86
127
104
126
102
109
92
69
134
37
37
127
121
55
92
105
169
178
92
130
169
158
122
55
92
84
89
37
120
92
69
101
92
126
104
86
110
67
137
110
75
68
92
168
87
182
55
119
158
122
81
138
122
140
134
55
37
109
122
56
69
105
97
122
92
99
67
119
37
92
77
152
107
104
138
122
138
105
55
37
93
67
109
139
142
37
69
139
55
110
77
104
105
138
143
152
110
127
148
37
107
132
55
111
55
79
104
55
92
160
105
105
93
122
122
122
138
105
152
58
83
107
104
126
55
138
178
109
56
136
56
146
126
169
101
74
93
132
58
79
114
128
129
86
105
37
57
138
105
126
74
92
58
92
103
64
121
55
110
69
55
55
128
79
55
132
111
105
126
126
56
58
169
105
119
117
58
131
152
55
117
111
55
171
105
171
56
69
124
165
148
93
92
92
117
37
126
99
119
86
83
136
137
138
137
66
169
37
139
141
163
178
148
110
73
69
127
56
104
134
109
110
146
178
167
92
55
112
142
99
91
122
89
83
146
104
93
101
102
122
107
140
89
99
37
110
92
37
126
178
95
135
67
138
136
67
68
105
105
128
79
125
178
102
122
139
149
110
37
126
169
84
69
105
56
89
141
86
104
92
122
144
169
68
144
129
163
140
99
129
37
91
105
111
122
104
86
67
120
55
110
89
104
178
122
130
98
114
56
178
69
138
104
55
92
58
89
124
111
126
171
130
148
67
91
92
92
79
127
138
139
111
138
109
114
178
86
105
159
117
131
124
88
132
95
92
111
122
152
92
91
55
78
55
101
122
122
122
122
168
131
154
98
171
68
140
128
56
117
93
171
80
79
110
72
140
129
98
112
127
55
67
68
178
56
122
178
101
55
105
126
105
92
139
138
37
91
138
122
138
77
100
67
92
138
103
146
58
105
122
56
110
69
152
91
68
58
167
67
92
88
104
55
107
110
97
55
58
58
139
77
92
92
55
37
78
139
67
144
124
55
146
169
67
138
94
111
169
91
178
111
102
92
104
92
139
124
134
110
110
144
149
99
92
103
69
138
122
134
127
139
110
131
124
122
131
152
169
58
122
128
83
139
94
149
128
122
144
69
84
110
105
58
105
121
163
97
139
105
108
86
93
92
93
37
137
123
111
55
132
144
77
68
92
139
55
146
124
178
117
74
91
79
126
86
123
138
58
132
92
95
56
139
123
104
93
119
58
81
111
91
132
111
89
79
37
144
55
37
55
102
79
93
58
105
139
132
109
55
139
168
110
131
77
110
138
84
67
105
180
126
37
126
80
101
111
92
119
37
105
122
55
110
109
106
135
105
56
77
119
139
137
148
148
122
138
126
122
92
55
152
99
152
171
182
162
122
107
111
37
92
97
110
144
37
134
128
138
102
105
110
178
136
140
169
92
55
148
119
93
105
137
79
56
119
152
105
58
114
119
168
58
146
139
67
138
88
171
81
110
114
136
37
107
122
91
67
110
105
178
56
138
128
91
79
79
55
126
104
138
92
122
122
126
126
91
67
105
67
144
37
79
67
162
180
84
56
55
110
93
126
110
126
93
135
69
144
138
91
79
105
55
169
138
37
79
123
120
77
58
91
92
138
103
126
159
68
127
55
105
37
117
81
92
56
110
56
126
152
119
118
118
57
146
86
126
146
88
152
58
128
55
91
105
92
37
122
105
110
75
74
116
137
95
99
55
138
69
104
107
77
93
91
138
92
104
110
84
126
109
122
105
126
110
69
137
126
92
103
136
127
93
95
128
99
122
132
68
127
140
127
122
109
95
58
164
112
123
144
105
163
37
105
77
126
138
112
99
117
89
92
69
98
104
67
92
84
144
110
134
137
110
178
55
119
105
93
118
91
55
178
119
178
123
110
92
144
110
125
109
104
128
144
92
103
140
138
128
131
85
92
84
79
127
122
86
111
169
98
130
114
55
100
84
91
120
56
100
110
107
119
55
146
160
69
126
93
108
110
37
55
100
126
86
37
148
67
92
122
164
92
111
83
104
109
138
116
180
138
104
111
58
126
140
91
114
112
92
78
97
139
126
144
158
105
122
55
119
109
152
127
132
58
138
122
109
93
122
101
118
55
67
122
138
139
92
122
55
104
134
100
129
105
130
55
83
162
110
115
58
104
122
138
105
138
75
110
144
134
110
69
138
149
151
77
111
139
123
122
104
81
79
130
139
144
68
67
119
93
109
126
138
138
146
93
103
134
110
55
122
114
109
110
130
134
122
107
128
138
138
97
164
110
122
117
67
169
146
132
128
81
103
105
115
78
178
140
138
79
138
88
100
80
114
55
126
119
104
123
97
105
110
127
125
109
134
94
144
58
99
55
123
93
92
146
115
138
122
92
92
92
55
58
169
146
78
171
105
74
154
107
67
139
98
152
128
58
152
92
124
76
110
107
122
55
110
128
56
93
55
81
105
126
109
134
127
104
81
111
58
91
107
122
100
139
119
74
67
124
126
37
165
142
58
37
55
146
105
192
69
138
127
92
138
132
93
91
104
165
146
138
55
110
105
105
92
89
169
56
178
122
102
114
103
134
134
131
127
106
58
93
113
105
149
105
55
119
122
99
151
122
164
55
112
146
122
122
110
89
92
139
124
141
126
37
105
91
117
124
144
128
67
109
99
105
107
37
106
67
110
58
129
122
110
91
86
112
91
91
126
127
103
112
163
144
177
67
152
117
99
156
55
55
92
128
171
93
148
104
112
55
37
104
138
93
107
92
122
105
92
103
67
97
132
136
67
55
127
138
56
55
94
128
67
105
107
98
178
37
77
134
169
92
135
86
105
106
74
92
129
178
55
122
99
93
107
119
127
112
58
92
86
128
132
107
107
131
37
55
115
124
98
83
118
162
152
131
147
158
126
101
112
69
100
122
91
103
111
131
146
56
37
101
92
165
112
69
67
146
83
78
37
153
109
138
105
79
86
74
92
152
136
128
109
122
122
75
55
136
138
74
140
103
106
105
139
74
104
110
110
140
102
75
120
58
91
162
110
110
130
110
91
92
102
93
93
162
109
93
105
69
103
104
110
110
122
108
89
139
152
93
98
144
125
105
122
144
122
178
108
138
77
92
127
92
143
77
122
86
99
101
79
118
139
86
109
92
117
37
138
146
169
109
110
55
104
139
122
110
139
67
123
106
123
67
104
58
110
148
109
55
86
122
98
67
75
130
92
126
110
103
178
106
105
122
128
55
37
110
107
138
123
109
130
104
67
118
105
107
55
92
55
139
110
92
94
101
131
123
68
122
152
114
55
178
122
67
95
92
129
55
75
122
107
92
122
110
99
93
77
163
104
165
122
75
93
104
88
111
92
127
122
141
122
122
110
110
92
110
92
108
115
122
37
146
122
130
55
152
91
55
110
69
83
122
69
127
37
128
119
136
111
178
132
134
120
86
67
74
105
129
77
136
94
109
75
144
77
110
111
99
105
58
86
144
146
110
58
109
55
169
92
104
92
122
126
58
68
92
111
127
107
112
55
126
127
58
122
139
37
56
127
92
137
92
124
178
55
104
93
140
126
92
79
92
178
99
107
103
92
88
138
93
110
86
167
84
122
104
110
126
79
75
78
138
136
110
55
92
93
105
67
148
93
122
137
55
100
117
99
126
104
91
58
139
152
111
97
74
110
122
134
37
67
139
95
178
67
75
152
97
139
56
117
101
56
104
92
86
151
110
92
122
126
110
55
144
138
126
92
178
115
124
56
103
77
92
112
86
107
123
83
124
152
74
55
118
56
169
122
180
93
67
144
122
92
105
94
108
58
148
123
135
112
37
105
91
134
138
97
108
74
118
103
171
139
139
126
106
127
86
128
110
123
103
127
55
86
37
145
83
106
148
126
92
128
124
67
37
89
178
104
92
109
178
104
105
81
92
127
86
104
168
37
131
92
92
144
99
126
92
151
117
122
67
146
111
180
146
110
110
122
122
142
92
110
127
92
74
92
169
146
56
75
77
104
91
105
169
148
136
93
122
92
55
144
107
55
93
110
105
92
93
81
104
105
109
105
109
110
127
146
132
37
102
152
126
93
109
139
146
148
124
94
152
144
56
100
110
131
126
144
75
110
127
55
105
122
128
104
104
144
69
93
104
148
132
178
147
58
123
178
67
138
121
56
139
123
122
94
37
138
122
89
77
123
114
127
134
128
126
67
122
56
102
140
110
148
99
126
144
122
123
77
93
119
104
146
169
56
178
110
110
91
152
115
110
94
138
146
105
99
114
92
55
122
104
110
116
91
64
146
92
55
93
110
110
138
122
128
55
91
123
138
102
128
112
76
99
122
74
77
126
123
107
37
104
100
105
37
86
127
110
152
110
127
93
139
93
114
75
56
104
100
56
122
146
92
93
109
55
122
110
101
107
37
91
126
119
92
81
110
139
104
115
110
105
37
138
143
55
105
140
130
178
126
139
119
93
58
146
55
135
180
55
107
135
92
130
178
180
107
55
89
120
110
110
122
37
72
140
145
92
124
138
55
105
178
93
69
151
104
130
110
55
158
67
145
119
158
138
105
83
138
77
105
152
67
123
136
77
109
55
91
146
56
126
55
110
146
91
105
110
163
147
122
77
123
115
131
140
126
68
99
123
104
55
55
109
83
88
69
105
107
178
92
144
97
114
111
110
108
123
163
131
74
168
67
138
126
138
139
91
152
77
37
92
122
119
132
110
110
146
134
123
114
96
55
92
86
58
105
77
163
169
55
104
100
92
67
127
120
91
102
111
92
128
105
104
138
56
55
75
127
144
109
79
103
123
128
136
73
110
92
77
115
122
89
136
96
120
146
97
146
67
138
140
132
99
83
122
146
105
109
126
86
178
178
79
55
122
92
89
67
122
68
137
58
138
104
123
151
126
128
131
111
119
178
152
127
138
178
119
119
137
56
100
37
126
91
67
101
101
69
92
67
122
139
146
58
152
120
92
92
104
105
55
122
93
146
104
119
79
91
127
110
126
92
169
122
132
92
91
92
58
92
84
92
103
122
144
122
111
78
55
119
89
163
131
128
168
55
98
79
81
110
56
122
146
122
104
105
127
107
128
86
67
105
105
145
122
124
119
104
118
110
67
86
55
124
178
55
126
55
124
126
91
76
58
169
146
83
123
109
102
110
104
152
138
98
163
131
67
128
104
165
68
81
64
106
148
146
109
119
123
93
92
103
144
122
126
147
122
104
98
55
148
55
120
91
67
74
98
138
109
111
69
58
55
169
126
134
92
111
78
138
79
105
126
199
114
88
110
107
99
92
169
92
74
119
119
156
144
148
126
128
134
139
67
134
79
117
110
56
139
134
67
146
107
137
142
128
127
104
79
92
134
138
126
92
139
110
55
126
105
112
131
92
75
98
91
158
88
144
127
37
138
123
93
131
105
93
146
74
126
99
77
120
138
105
100
57
105
108
128
91
105
92
56
110
131
127
138
178
55
58
92
164
67
99
111
112
165
168
128
126
72
111
156
110
99
91
105
178
158
109
95
92
122
122
56
55
68
122
126
92
74
139
152
109
107
77
178
140
109
105
110
86
69
109
55
88
138
75
146
108
75
119
108
122
126
111
55
126
67
111
156
122
139
99
55
152
144
86
144
92
105
79
145
163
67
122
97
105
128
164
92
89
107
178
110
79
115
56
88
111
110
122
77
92
110
168
188
86
126
72
169
144
96
92
120
110
97
134
56
109
154
98
138
119
109
104
137
140
99
110
146
86
122
110
55
107
76
86
119
92
138
55
93
120
81
122
97
37
88
91
37
92
55
55
169
72
86
112
56
139
112
67
126
132
86
37
131
144
37
178
110
92
152
92
67
122
126
148
123
162
102
93
97
160
140
110
126
143
67
128
140
138
138
55
110
74
127
92
126
132
56
109
108
125
126
97
55
126
99
180
188
77
98
146
123
111
74
101
88
126
139
105
152
104
124
144
56
103
105
104
126
107
126
138
164
94
80
126
92
98
73
97
144
110
123
93
160
122
111
55
92
92
156
171
119
69
92
55
37
67
132
67
126
104
69
140
69
150
139
92
180
178
105
144
55
138
55
101
104
136
114
122
148
142
37
122
140
139
91
178
77
120
110
105
93
79
95
124
134
123
134
101
93
104
92
106
105
152
146
171
139
105
110
74
122
93
69
92
104
92
105
80
117
92
89
164
92
78
69
122
169
169
105
77
123
123
102
67
108
55
127
129
93
118
99
92
111
140
78
56
140
55
92
142
69
109
122
171
93
37
92
119
107
134
122
110
122
93
122
55
56
140
123
91
103
138
132
122
58
139
109
122
139
126
104
137
146
152
112
102
103
126
109
58
138
105
92
138
93
169
119
92
146
99
37
138
130
75
124
92
56
69
87
55
79
127
104
37
98
83
92
119
37
138
58
111
122
144
122
144
55
112
74
56
132
122
111
146
92
107
122
138
180
58
55
134
105
56
138
138
75
37
104
92
107
122
91
67
146
105
138
123
37
56
126
95
55
55
55
92
199
91
122
55
127
67
93
138
55
111
144
96
67
112
55
92
78
110
79
92
131
55
110
142
150
97
103
158
138
134
109
124
110
133
123
91
97
111
101
67
121
122
114
126
68
122
103
144
67
178
171
120
122
178
112
92
86
136
122
110
138
109
92
55
67
114
79
99
93
92
162
146
92
107
93
67
56
86
99
37
93
93
75
92
125
55
56
138
152
95
126
102
120
58
75
164
126
144
192
134
117
141
98
140
104
105
92
171
114
108
100
58
56
163
138
110
119
137
102
56
105
92
122
55
122
127
126
123
69
130
92
119
97
99
169
142
125
140
139
64
75
55
95
134
92
128
110
113
128
108
37
98
69
92
140
110
97
144
152
178
171
109
112
93
121
135
92
55
92
55
123
67
178
106
105
92
77
146
91
92
109
123
75
110
99
78
67
69
79
180
169
139
104
99
111
119
76
145
109
127
97
92
144
104
144
107
178
152
89
55
129
67
106
148
55
84
158
76
58
127
72
109
97
142
128
144
171
92
168
110
122
67
124
58
86
69
77
105
126
67
144
139
67
99
110
98
79
122
163
93
37
167
37
122
138
152
124
138
99
103
107
55
92
123
119
102
151
112
108
109
98
86
94
127
109
138
127
110
110
100
130
130
160
67
178
55
105
55
58
87
127
169
126
104
177
67
97
123
55
99
92
110
74
110
93
178
178
55
119
123
119
97
124
126
55
107
144
92
122
55
93
127
96
113
107
84
97
123
107
84
110
140
101
58
55
115
91
105
105
55
55
81
67
37
138
122
109
91
92
74
55
56
105
139
79
114
109
56
140
124
119
156
130
122
56
129
138
139
192
114
56
162
55
105
56
128
58
55
123
168
122
93
92
110
124
148
55
122
139
128
138
110
93
107
131
55
138
144
91
103
55
147
92
171
138
68
110
67
99
180
126
92
105
37
101
111
146
146
169
110
110
105
105
105
111
69
138
37
93
138
138
127
127
178
126
149
122
128
178
126
55
123
37
122
130
58
126
92
92
92
69
135
128
58
67
55
67
178
91
138
93
178
152
109
110
86
130
69
86
110
37
138
37
178
91
135
83
92
145
58
93
152
91
162
140
122
123
131
110
126
105
119
128
110
74
91
91
111
55
104
99
91
130
148
146
146
104
144
67
122
67
92
119
69
105
135
140
110
139
92
109
128
123
131
111
127
104
144
138
37
104
37
119
55
86
122
178
79
105
128
83
92
92
55
73
68
98
92
104
92
78
81
56
79
144
119
126
126
114
122
139
119
104
165
138
92
95
69
92
92
107
109
107
124
68
145
105
138
92
145
84
79
74
97
178
104
126
98
105
56
122
102
134
68
122
165
110
127
124
37
124
138
126
84
122
169
56
105
110
126
83
144
144
98
160
58
79
127
56
68
106
127
144
128
122
148
138
93
138
109
119
110
104
129
122
91
100
152
131
138
132
139
105
123
122
102
120
77
105
115
158
126
99
55
123
105
126
106
95
68
105
91
169
130
92
37
37
152
128
127
138
126
111
92
140
99
139
138
138
67
68
109
132
103
152
105
79
93
160
93
119
67
107
67
104
56
111
105
77
58
167
112
126
178
110
93
55
92
139
104
109
105
84
92
144
92
67
56
126
79
152
178
84
110
152
108
123
95
126
123
111
138
91
128
158
105
138
88
107
126
139
74
126
137
92
132
74
139
67
58
107
69
110
58
144
95
139
128
69
140
134
158
122
110
107
138
111
106
105
86
69
74
171
109
86
144
139
95
97
139
109
67
110
169
58
92
122
107
79
122
120
120
138
124
69
128
111
103
132
67
109
97
67
67
131
92
105
92
55
122
92
122
132
68
148
144
99
109
55
104
79
69
148
105
158
142
149
110
139
146
132
105
122
104
127
126
165
93
105
138
109
86
144
134
134
178
92
122
93
93
104
139
169
100
105
75
122
178
112
55
55
77
103
128
55
91
55
107
121
55
93
152
92
37
105
67
103
110
67
124
77
91
127
146
37
55
83
171
79
100
132
119
83
110
127
106
55
152
128
162
123
92
146
111
130
114
152
128
120
124
97
92
77
107
55
102
123
127
107
142
67
98
67
92
136
110
131
103
171
67
129
146
88
146
122
138
111
146
55
105
114
56
127
55
114
140
67
126
92
93
86
92
74
55
93
97
74
109
79
97
105
152
55
158
135
87
99
126
138
128
97
126
92
37
122
138
178
77
126
69
83
69
93
145
58
110
109
112
56
67
86
104
105
122
55
77
126
117
126
104
147
37
55
178
169
125
140
77
163
92
110
67
139
122
92
58
129
124
135
180
86
55
124
138
126
92
107
131
149
122
132
122
67
152
84
105
83
56
146
122
55
93
148
58
105
77
86
105
55
105
109
128
37
98
119
93
92
149
122
128
138
67
93
124
177
124
110
131
122
111
112
152
55
91
128
140
119
131
75
56
169
135
83
114
126
119
109
126
104
139
55
129
139
105
110
93
81
77
75
122
88
138
75
138
92
144
55
92
105
79
126
69
131
131
148
37
103
122
140
99
67
37
69
105
127
55
77
119
91
67
134
139
124
56
169
100
107
55
93
98
55
122
107
94
164
110
104
92
144
124
107
58
168
122
138
79
58
178
128
73
118
94
146
111
55
108
74
110
75
93
169
101
89
144
105
67
98
91
94
69
83
117
122
67
146
119
92
171
110
115
114
104
138
138
106
79
122
104
144
132
74
139
147
105
122
68
119
119
104
134
37
146
92
136
137
67
110
55
68
67
91
105
58
160
92
122
165
68
120
97
158
126
99
110
109
92
56
138
137
169
97
55
131
67
134
160
127
142
152
64
83
55
84
92
58
106
119
122
138
67
92
124
139
140
83
119
136
105
68
78
111
119
55
130
158
92
55
138
117
104
109
110
122
138
109
55
83
106
131
91
122
144
110
58
56
69
162
123
105
144
110
92
77
89
110
105
158
114
110
128
91
91
144
105
93
128
119
93
144
91
92
58
67
92
58
144
134
90
138
89
127
103
120
79
105
92
144
124
100
178
91
138
55
134
91
88
92
122
124
109
93
137
134
93
93
55
97
126
74
140
93
132
69
168
92
127
138
138
92
171
55
126
110
77
140
92
127
83
56
136
56
126
37
110
89
151
126
67
105
131
126
111
139
134
37
83
58
131
126
91
126
103
91
145
58
119
105
37
126
128
124
123
128
108
119
109
69
127
178
119
37
132
144
115
122
67
169
101
117
119
122
67
91
127
165
137
58
104
128
81
126
97
138
139
139
79
132
58
117
139
69
130
122
149
142
144
98
162
123
79
122
110
104
79
124
119
69
55
110
83
110
37
109
98
55
83
152
126
92
117
67
136
122
178
75
105
92
112
124
73
129
169
128
139
139
83
86
109
61
55
110
114
76
86
127
91
37
121
79
144
146
78
122
128
122
92
132
134
104
126
56
79
148
74
139
103
77
180
105
86
138
99
114
123
140
55
119
69
122
91
101
127
104
169
55
148
128
97
92
110
144
37
92
163
92
124
139
169
92
144
169
92
68
77
110
142
69
99
92
134
138
117
134
138
146
126
55
107
112
55
93
135
138
67
105
69
148
122
95
101
69
180
127
131
104
84
126
58
127
139
105
146
111
74
139
101
139
92
69
67
149
164
144
148
107
68
107
69
139
67
124
56
56
178
69
78
84
74
139
77
100
109
67
117
65
122
79
92
75
91
178
120
101
105
91
93
58
139
144
105
128
110
92
92
83
127
104
123
136
119
169
67
122
58
111
158
136
103
134
56
110
69
138
126
92
69
138
92
119
138
109
37
68
55
37
56
91
118
117
69
127
138
69
144
146
102
92
67
120
138
74
119
149
104
105
178
58
138
86
152
56
138
56
110
88
134
138
37
55
111
126
138
105
93
109
55
109
74
67
178
75
125
136
103
105
58
56
103
146
112
127
92
171
69
107
72
123
126
128
37
83
138
126
55
58
139
107
122
92
139
126
79
82
146
56
158
110
128
110
74
37
130
68
69
55
107
55
56
117
87
146
58
126
104
127
126
139
84
110
55
67
92
171
58
128
139
124
77
111
104
114
126
138
146
91
130
104
86
134
146
126
126
140
126
111
105
99
37
55
134
126
93
93
93
138
178
77
122
104
103
92
99
128
144
83
56
152
123
122
55
88
74
55
58
37
84
37
79
110
134
77
69
55
77
79
138
56
122
101
109
37
138
171
98
104
169
77
124
128
140
131
91
168
114
99
138
67
77
178
104
104
99
92
104
144
104
109
107
124
110
111
152
132
91
144
139
86
128
56
171
87
58
178
81
110
103
55
92
119
74
88
110
67
126
92
119
56
67
92
169
37
75
146
69
100
104
139
58
105
67
128
169
178
126
139
164
67
109
116
56
152
152
72
77
83
102
55
152
84
100
74
75
37
122
55
148
137
92
105
122
107
91
104
128
136
139
136
37
55
102
180
97
146
91
139
152
92
93
152
148
122
114
69
55
128
110
144
115
137
152
124
171
178
99
127
105
122
104
95
56
100
55
56
55
91
178
126
128
92
55
152
178
95
146
144
110
139
104
122
93
92
123
122
79
58
107
105
105
104
92
89
105
37
86
95
99
93
69
145
139
95
123
103
56
152
146
79
92
158
105
55
126
138
110
56
126
58
136
55
109
146
92
146
128
132
160
55
131
92
93
139
146
149
126
92
69
67
126
123
126
120
118
122
56
91
119
122
58
128
55
92
55
144
56
110
144
127
69
98
55
140
109
93
104
110
68
55
152
55
152
67
92
114
92
158
92
110
127
152
110
77
103
127
131
37
37
75
178
107
122
152
122
99
107
55
111
55
105
104
105
93
115
91
55
141
92
92
97
110
79
104
127
55
124
122
138
41
149
55
103
110
117
127
58
55
84
104
140
74
104
97
79
92
69
67
144
55
92
180
131
105
55
120
188
93
97
122
92
56
139
110
122
105
104
134
115
92
56
127
152
138
134
126
134
144
126
180
119
147
110
107
122
56
55
111
56
79
124
77
130
68
110
92
93
86
122
55
131
148
149
115
55
67
58
37
128
55
169
146
104
92
77
104
110
126
123
86
99
105
106
77
126
55
67
75
96
69
91
55
152
101
55
109
148
169
188
104
74
178
92
128
93
94
138
138
55
118
104
92
103
110
114
144
163
100
56
55
110
92
122
136
73
91
136
110
92
104
106
123
74
92
105
103
107
142
93
148
98
97
146
77
55
83
93
105
178
178
124
67
152
55
55
107
67
139
105
119
128
91
144
107
105
103
92
107
77
110
122
55
75
58
120
146
122
79
74
99
99
169
137
126
105
77
177
124
140
67
69
132
111
138
167
146
107
178
111
115
168
128
58
135
98
81
55
98
107
92
86
92
91
167
171
179
110
93
92
93
55
108
111
110
110
92
146
138
132
92
124
78
178
93
92
128
55
165
178
152
67
138
140
67
105
108
86
138
122
79
119
105
107
128
56
55
56
105
110
126
69
56
55
96
56
55
152
120
55
122
122
119
180
83
122
140
145
128
105
110
86
92
92
105
110
92
138
92
110
123
91
92
77
127
131
55
92
104
111
93
155
120
56
169
122
103
124
56
105
92
76
104
137
99
126
108
138
104
56
105
105
87
158
58
144
134
92
113
122
122
126
56
138
93
110
58
104
67
158
67
93
67
131
92
67
127
101
69
145
137
158
130
138
95
126
92
107
55
105
67
77
75
56
55
137
127
92
138
55
122
77
122
69
105
126
104
124
138
126
144
139
124
97
102
146
138
105
126
136
105
92
56
92
140
135
108
99
55
67
69
158
105
144
97
89
105
67
56
56
114
123
89
126
138
92
163
164
58
104
111
148
92
147
123
105
152
139
100
111
178
138
110
169
37
105
74
178
140
92
127
55
55
122
77
97
130
110
114
128
93
122
123
145
152
153
67
78
119
127
58
37
92
67
105
92
111
144
122
74
110
110
91
107
69
92
117
119
101
107
67
78
122
122
126
111
55
55
118
138
41
101
79
169
122
126
138
109
56
123
122
114
92
92
88
93
55
178
91
127
93
92
110
136
158
77
67
56
110
105
120
127
97
68
69
56
86
110
56
114
126
111
37
146
92
169
110
55
55
171
79
104
136
134
86
152
67
167
130
144
123
110
110
112
122
126
128
138
105
83
122
75
134
93
178
119
69
122
110
110
104
126
56
122
110
84
105
112
138
138
109
105
132
98
139
163
127
126
126
105
75
109
163
178
171
126
178
105
92
104
139
67
55
126
145
37
86
105
56
80
55
130
110
105
74
67
124
105
122
152
126
147
58
165
67
102
56
110
55
103
86
98
67
105
178
122
37
67
178
69
69
112
56
138
111
171
68
139
104
124
178
86
115
138
92
56
122
111
58
105
127
109
127
128
127
138
148
153
104
103
139
122
84
92
92
102
103
152
104
110
106
92
92
180
86
122
75
92
136
119
105
83
109
69
139
152
167
92
92
139
118
93
89
122
122
37
104
55
110
122
122
132
140
102
134
92
122
127
65
169
156
112
68
69
55
126
103
122
178
86
140
92
93
58
76
56
93
155
109
105
67
92
93
103
139
103
169
86
109
97
105
126
124
107
126
105
84
37
105
67
93
79
93
124
146
56
92
123
119
91
58
88
103
56
169
136
114
122
126
79
64
117
56
112
106
89
122
134
110
152
131
92
114
127
146
67
146
126
112
109
109
92
134
122
148
126
128
140
105
112
127
126
103
37
92
84
91
67
140
93
111
138
160
128
74
122
128
103
122
106
128
110
122
178
171
126
58
119
110
58
101
56
55
134
119
148
111
81
120
110
110
68
89
79
104
58
69
93
87
107
132
126
155
126
104
55
80
56
55
92
144
138
102
110
169
138
122
158
68
126
92
109
126
114
67
178
123
55
79
92
67
83
126
138
138
81
199
103
127
122
139
99
69
180
138
67
67
124
55
56
132
128
127
124
137
146
138
102
164
111
117
56
89
107
55
127
126
91
81
86
114
37
56
94
108
105
77
55
110
105
91
113
144
101
122
56
97
122
110
122
126
111
146
110
92
128
109
110
109
83
83
69
132
138
119
127
92
107
169
122
67
83
126
94
100
104
83
67
93
129
138
127
68
110
74
105
126
122
123
152
110
67
169
110
105
122
135
88
99
127
142
138
139
74
108
92
109
100
122
139
152
67
134
104
99
126
105
85
139
134
114
111
122
105
84
69
114
112
91
122
146
145
178
92
58
55
56
83
55
160
86
86
105
139
147
58
126
112
140
95
158
110
127
92
123
177
92
74
169
122
128
123
104
137
138
92
67
91
148
79
93
67
146
110
86
58
86
111
132
110
92
119
139
37
126
69
92
104
92
92
168
138
102
144
126
75
106
123
111
100
91
99
110
71
55
120
55
99
125
152
138
89
86
56
69
177
122
110
69
178
169
148
139
99
152
93
152
93
144
105
58
152
126
107
79
178
92
79
56
86
169
178
67
144
126
55
56
97
134
122
126
131
58
115
92
122
178
126
122
115
106
67
99
152
163
111
107
92
86
113
109
58
104
104
104
58
167
105
147
75
119
107
105
92
67
92
126
104
77
75
146
92
110
67
37
55
105
126
138
107
89
95
84
110
164
76
139
122
178
119
136
103
84
99
119
127
114
104
123
92
68
138
100
131
126
67
123
75
56
77
77
152
105
55
138
105
144
123
92
105
164
67
131
123
103
135
124
92
110
67
105
122
112
144
118
138
138
168
148
93
160
68
138
93
152
136
56
146
152
139
97
122
146
148
115
126
131
114
58
111
140
92
103
127
152
138
79
92
67
139
109
140
138
152
152
126
97
55
67
139
106
67
67
104
110
138
119
134
92
140
92
122
92
93
74
119
56
92
109
87
92
128
103
123
104
83
104
104
79
110
138
127
55
110
139
144
74
78
110
134
140
152
110
67
126
117
105
119
126
138
140
67
119
158
123
139
178
110
112
144
104
152
83
37
126
103
92
122
122
122
86
105
135
103
121
131
92
169
67
102
105
144
110
104
92
130
83
92
55
126
77
95
105
105
135
178
93
134
93
105
56
78
93
119
122
124
110
111
83
91
156
58
111
111
103
179
100
55
67
127
97
122
150
92
37
93
135
138
67
55
67
165
128
111
92
58
97
110
92
130
92
67
75
55
139
102
138
93
122
86
126
152
37
55
67
110
141
127
126
138
127
74
105
101
169
111
55
169
126
178
138
55
171
122
97
92
134
124
162
104
75
158
95
95
98
144
158
126
55
55
104
86
69
125
127
144
112
106
88
146
92
122
122
122
126
110
93
137
88
91
110
126
144
110
105
122
146
178
158
178
131
79
104
92
105
189
111
98
165
74
131
56
131
108
128
169
91
124
108
146
75
87
75
37
128
146
56
127
55
97
134
130
144
126
127
107
178
188
67
148
122
126
119
130
117
97
55
92
58
37
122
93
105
109
139
199
92
115
104
138
92
92
171
105
134
112
55
110
123
93
110
103
37
178
107
67
99
112
93
96
105
55
37
110
56
132
103
165
105
124
69
88
56
104
56
37
92
109
105
110
126
107
93
79
110
55
91
92
67
122
126
145
92
158
64
55
37
84
111
110
152
105
56
101
140
110
67
144
104
126
107
126
55
98
55
129
92
92
86
97
139
123
140
109
123
92
139
86
160
37
110
140
134
55
152
103
92
122
168
144
109
112
111
55
126
126
92
171
138
92
137
68
69
109
134
79
37
146
58
178
55
97
144
171
110
58
78
55
37
127
92
160
92
55
138
93
92
58
122
110
107
69
122
55
104
178
92
91
128
86
37
105
126
131
110
139
89
118
55
91
132
97
110
69
104
122
108
127
92
119
92
119
97
107
93
110
67
110
148
96
56
152
152
56
110
109
104
127
83
55
97
126
55
178
55
119
171
69
58
129
167
92
93
55
122
101
79
110
110
180
134
178
118
105
92
131
122
67
37
168
89
67
86
56
139
105
56
136
119
130
110
92
126
110
37
93
132
126
91
56
86
93
68
105
126
107
55
122
138
99
95
152
92
104
77
116
142
148
122
105
79
142
67
105
178
93
68
105
168
124
106
105
105
127
93
55
127
100
107
122
86
92
103
169
152
158
146
110
103
55
77
115
86
128
127
55
37
88
110
110
105
126
122
110
55
144
111
69
67
100
77
99
127
92
88
169
105
103
92
124
136
92
104
153
92
122
119
114
92
92
64
67
58
99
164
67
113
92
128
122
118
75
142
67
67
169
105
79
93
37
77
55
126
126
110
117
100
69
122
122
126
138
37
55
168
128
122
77
147
140
152
126
104
86
118
139
111
126
134
126
98
110
37
56
37
55
103
138
197
178
92
132
128
119
138
127
188
122
58
102
56
93
146
110
67
91
55
178
92
58
89
99
56
106
111
102
110
110
99
69
58
37
88
56
152
171
169
58
92
92
110
138
91
117
134
93
128
67
152
119
92
69
139
132
58
138
126
147
108
87
56
126
122
130
169
105
58
92
138
148
132
146
178
58
122
169
67
55
80
69
37
127
139
93
107
144
55
68
128
55
93
97
98
107
56
92
95
127
120
114
178
56
115
91
69
67
92
104
92
92
105
56
108
132
123
126
118
131
104
93
178
126
146
101
158
146
110
58
137
136
114
67
79
93
123
135
105
107
118
160
146
146
92
68
113
114
180
79
178
67
55
159
105
110
55
123
197
99
55
92
92
122
119
122
119
92
55
130
130
104
104
67
131
105
126
128
67
122
37
108
138
144
105
92
75
138
105
146
99
92
171
100
122
91
55
98
92
126
131
69
124
56
168
132
67
138
37
88
107
69
126
92
110
37
100
131
146
138
94
100
92
110
131
178
134
138
178
92
163
92
92
86
77
67
121
110
105
144
138
140
171
117
112
55
126
107
97
67
58
140
105
97
55
109
144
122
162
140
122
55
123
95
169
99
129
69
110
135
92
92
105
109
79
122
144
92
139
124
67
93
55
178
56
138
37
131
119
111
123
56
110
75
122
95
93
122
81
89
55
111
105
92
122
145
103
122
138
67
126
58
75
56
77
113
138
104
99
56
55
104
86
56
37
146
67
102
55
93
169
159
146
130
105
55
105
92
93
103
55
126
122
37
188
101
104
86
119
105
167
126
126
79
104
163
128
92
122
123
109
93
67
104
74
122
78
144
131
122
96
105
105
104
126
124
124
110
127
69
73
130
109
104
97
126
112
138
105
180
84
152
138
105
67
55
178
112
95
58
158
97
131
138
99
91
158
123
171
128
152
124
139
148
92
169
111
55
107
128
81
81
169
86
124
126
93
93
68
137
126
110
152
102
178
127
105
92
163
109
138
58
105
122
67
138
37
158
69
136
92
126
139
100
86
139
89
107
136
55
169
138
99
114
137
97
93
104
138
55
140
86
55
92
86
169
74
92
144
139
77
68
125
92
110
105
56
97
89
58
152
119
56
55
55
119
92
132
83
37
103
168
144
131
93
130
86
92
144
99
92
105
111
126
110
119
91
142
56
99
110
132
55
67
144
152
110
141
92
122
55
116
134
56
127
123
88
124
138
67
140
104
56
144
127
96
178
114
148
110
86
67
91
101
146
55
178
144
86
104
169
122
109
56
138
134
77
114
57
138
102
123
152
129
83
169
122
55
122
144
102
100
105
139
122
58
37
103
124
58
138
93
69
111
92
139
104
135
130
109
92
138
56
128
58
180
91
178
139
138
105
146
138
128
92
152
138
55
92
169
144
92
132
104
100
138
105
123
57
105
145
55
114
37
123
98
91
139
138
124
105
67
146
107
107
146
144
55
145
67
128
58
107
37
124
58
122
122
91
126
122
103
128
110
114
124
130
158
37
118
126
177
67
138
139
128
98
92
105
105
111
110
77
122
93
127
169
56
119
152
126
97
109
134
126
92
121
58
74
128
126
55
140
37
107
58
138
92
56
69
89
152
74
104
144
178
55
56
110
75
79
91
137
77
103
105
55
119
84
93
37
127
144
92
67
93
111
126
144
55
125
178
99
105
55
58
92
92
122
146
131
83
138
93
126
148
55
118
55
164
104
100
77
124
129
127
103
139
56
141
78
118
168
123
139
110
92
75
110
106
103
92
101
130
169
92
86
55
37
67
144
127
138
67
122
131
89
100
124
100
86
69
98
139
98
55
93
37
103
146
126
55
112
178
83
67
104
138
106
134
67
91
104
81
92
178
104
110
111
69
99
98
126
104
107
55
125
92
122
124
75
93
144
119
136
105
110
152
37
74
141
138
105
162
89
103
122
134
128
55
134
106
68
58
92
152
107
92
94
124
56
92
139
74
112
110
83
122
132
69
124
152
105
132
126
95
104
122
139
127
122
105
56
135
92
119
92
56
67
118
55
86
68
105
126
93
103
134
105
79
92
145
56
122
148
55
92
110
138
107
92
138
67
110
122
158
105
55
86
169
139
124
122
58
67
86
75
120
126
113
104
139
127
104
105
55
92
178
119
83
152
138
104
122
56
178
74
55
129
112
55
76
100
97
122
138
104
69
138
78
122
74
146
122
126
92
37
104
92
160
101
95
110
152
92
103
55
180
138
98
151
56
104
67
139
92
134
128
109
75
107
139
55
107
92
58
110
109
167
123
111
148
168
132
79
139
146
83
55
111
92
138
104
101
139
105
37
107
86
77
79
178
128
58
93
56
111
136
127
124
122
120
58
55
119
122
86
56
171
132
129
92
122
37
93
67
121
37
111
69
138
138
158
131
110
109
138
56
178
107
139
126
110
128
110
95
149
117
129
92
139
106
152
139
136
92
37
79
126
92
138
83
110
163
110
93
37
56
122
67
93
107
92
91
122
92
69
139
58
110
105
107
105
103
138
92
67
126
128
123
126
138
93
128
118
105
109
91
110
107
138
167
178
55
127
93
91
158
55
126
131
77
99
122
140
67
138
107
92
105
92
105
93
86
152
136
105
126
105
75
126
86
77
134
109
104
134
55
92
86
37
110
140
168
165
107
55
144
69
123
111
92
119
158
123
64
58
93
56
139
67
86
105
37
126
122
126
128
103
97
112
137
74
91
178
163
95
98
92
55
100
103
128
180
127
69
123
180
110
146
144
134
139
86
139
105
103
144
127
130
105
105
109
37
110
100
140
123
109
178
92
122
67
118
68
37
104
165
119
69
146
122
104
103
55
144
99
138
126
169
163
134
67
110
105
138
73
123
107
180
75
86
67
138
69
171
131
126
93
158
138
97
37
84
149
56
72
122
104
83
56
105
68
152
105
152
98
55
55
110
37
79
122
104
152
74
178
102
56
56
126
110
126
152
92
110
67
105
37
56
74
103
69
137
37
92
138
107
68
139
167
178
141
105
93
98
136
152
108
134
127
93
124
56
107
55
86
69
138
119
122
84
37
92
122
77
139
119
110
92
120
100
146
102
92
97
178
56
94
55
91
92
56
103
93
103
138
67
126
91
139
104
122
98
67
68
128
103
138
123
86
91
92
146
74
105
56
114
122
158
58
92
97
37
122
92
92
104
92
92
125
83
111
95
58
75
132
144
55
127
37
108
104
67
55
55
92
178
84
144
97
139
105
84
74
89
92
105
92
126
58
67
97
58
178
93
119
139
122
92
86
55
93
134
145
104
138
120
117
97
91
122
145
104
124
79
119
58
77
146
83
37
105
103
121
105
67
67
37
56
140
138
56
104
56
55
111
103
110
120
171
119
145
86
107
91
99
67
37
139
118
86
79
97
79
124
142
138
111
79
123
126
122
55
92
122
109
152
99
146
106
134
122
99
110
114
92
144
110
104
140
150
126
126
58
109
37
138
178
123
107
97
111
56
110
144
83
91
129
56
67
77
139
128
127
55
55
67
93
105
126
106
138
115
126
122
180
92
91
55
67
138
126
126
79
111
152
169
152
98
73
55
105
100
110
69
126
120
79
92
69
93
96
111
75
120
126
122
124
107
178
55
110
134
58
95
93
91
107
93
127
56
106
58
110
126
146
122
55
140
112
158
92
120
93
138
93
99
104
67
126
68
58
93
92
92
97
105
149
122
169
109
95
86
79
96
92
110
105
109
92
156
109
92
97
139
117
74
140
74
131
138
150
93
126
110
56
55
81
56
67
104
127
131
92
103
152
102
107
92
122
37
123
58
79
99
86
102
69
108
130
111
92
146
79
67
91
61
134
152
37
128
138
138
110
86
126
127
58
122
110
144
55
122
56
109
103
105
37
140
138
92
120
126
152
126
56
126
122
128
139
137
92
110
126
139
169
163
162
55
69
104
128
117
132
126
178
92
121
68
180
122
114
110
104
92
91
126
127
126
122
105
87
138
56
133
128
103
199
81
93
93
87
105
112
75
110
131
126
83
93
55
75
136
97
92
104
111
107
139
105
58
87
124
122
128
79
69
146
138
138
146
105
178
140
162
163
58
145
110
144
92
93
128
56
55
110
122
142
138
69
127
58
102
105
124
102
110
92
56
92
92
111
122
80
121
79
105
105
97
105
100
55
92
105
122
103
120
138
74
110
37
126
103
122
55
55
105
93
56
169
77
93
119
124
144
56
92
91
86
126
79
67
73
79
126
92
109
77
92
143
126
114
123
89
91
92
92
92
91
92
55
104
165
139
79
110
55
105
106
146
69
118
152
103
135
123
56
126
114
122
130
104
144
142
99
92
148
108
126
56
110
127
144
67
86
126
86
112
37
77
105
99
144
135
114
105
123
112
125
104
117
56
127
122
146
127
91
140
91
152
136
77
138
92
138
110
119
104
104
144
119
93
138
105
126
69
92
93
92
74
104
92
104
100
69
119
109
68
110
55
122
67
74
126
144
138
99
104
93
105
139
55
129
98
97
138
104
89
55
81
37
93
110
86
134
109
138
67
131
103
83
105
169
37
122
37
104
74
107
55
109
138
92
144
56
69
110
178
109
146
119
104
68
68
126
119
105
162
110
110
56
152
104
122
86
144
128
110
109
107
165
104
85
110
92
103
163
131
138
110
93
178
92
75
55
56
92
93
180
107
150
140
92
92
67
79
124
158
126
92
114
107
138
126
68
103
127
91
55
86
138
67
105
122
92
78
55
93
152
138
152
91
91
139
138
92
132
118
69
67
134
110
127
88
83
58
169
75
104
127
56
136
146
134
123
92
91
119
67
105
100
144
105
56
92
79
144
104
124
127
138
37
127
126
86
92
156
127
126
86
138
126
105
110
127
92
83
103
120
67
110
130
86
104
112
58
74
92
91
108
92
67
101
69
75
67
76
55
107
77
89
111
37
105
160
37
138
37
119
122
101
110
122
92
75
74
137
126
92
139
55
74
112
92
138
77
122
104
156
93
102
55
92
136
100
97
79
105
37
109
75
128
138
100
105
75
91
136
126
86
131
110
105
55
165
110
106
104
137
110
122
127
138
148
88
138
122
103
128
122
111
88
109
75
92
37
117
86
92
104
111
92
55
126
92
67
107
197
144
145
92
101
199
93
55
77
152
105
127
92
92
104
105
126
106
126
124
126
163
178
58
144
55
69
92
120
127
144
103
126
91
104
56
77
79
69
122
131
74
123
139
122
93
67
126
92
105
89
100
138
55
110
110
105
93
139
168
126
96
89
127
132
109
67
61
119
92
113
87
56
113
105
55
107
145
58
55
138
83
144
92
124
55
89
67
56
110
122
105
169
135
106
140
93
67
75
105
56
105
104
106
109
99
110
137
56
92
126
91
105
126
86
67
58
139
75
148
92
105
86
109
120
104
158
146
55
132
67
119
126
55
119
111
37
119
37
119
55
75
105
122
111
67
152
163
112
58
83
162
134
137
55
105
126
122
67
103
138
55
58
91
105
68
105
112
138
122
126
104
105
105
134
109
79
118
67
112
55
139
105
37
110
110
91
55
144
142
169
140
180
144
74
93
122
79
105
126
105
126
110
101
108
92
74
138
110
178
124
58
79
37
55
113
88
92
67
74
91
104
138
132
105
112
110
69
123
152
138
126
126
37
138
168
126
105
104
126
138
58
79
109
127
93
127
178
122
126
128
126
119
104
111
108
79
105
122
137
122
92
128
92
146
106
79
56
102
139
128
104
137
141
93
97
56
108
115
127
67
93
121
69
126
128
135
56
92
120
108
67
104
86
146
127
92
67
126
146
92
123
79
67
107
126
120
105
128
137
149
135
139
98
122
91
111
77
137
138
144
97
138
67
126
95
103
141
118
67
148
67
119
92
110
91
144
56
37
97
68
120
163
138
146
55
107
79
92
105
104
80
125
131
92
83
37
55
68
99
69
93
123
55
122
55
97
104
92
138
95
110
131
75
141
158
164
55
122
144
132
55
138
96
127
55
99
142
72
92
122
126
104
92
106
122
138
169
104
79
115
75
74
92
92
128
92
123
112
111
105
83
151
178
105
126
111
134
67
92
110
128
58
127
158
99
119
55
93
152
138
134
114
126
122
91
56
182
130
158
132
168
86
97
92
64
111
126
98
112
55
110
139
92
69
105
55
117
73
92
58
126
93
138
98
111
144
86
140
110
91
179
126
55
55
93
138
126
92
69
55
110
138
119
126
86
110
105
140
99
98
55
91
55
92
92
117
55
83
152
77
97
118
91
124
77
55
111
119
148
55
37
122
124
55
85
91
105
76
92
109
105
109
138
67
171
69
92
84
122
106
56
105
124
152
37
102
145
55
165
69
56
92
114
126
114
156
79
126
58
140
136
55
117
105
131
68
126
77
110
114
126
126
92
86
120
126
104
146
79
74
58
111
125
37
122
152
128
126
152
98
144
104
119
37
128
69
77
92
92
139
58
97
77
163
156
103
178
126
138
127
67
86
119
163
110
56
92
79
69
178
55
92
81
139
91
69
123
138
74
56
110
128
101
131
110
111
77
152
104
68
91
88
126
55
122
58
110
110
152
92
37
105
126
92
123
144
105
110
75
102
67
122
55
108
111
126
56
67
110
55
105
94
105
127
107
55
69
144
110
134
121
105
160
55
112
139
140
141
104
110
105
144
126
67
110
64
122
55
105
68
91
112
122
92
108
122
136
124
139
122
77
67
146
69
123
55
105
69
86
110
126
69
122
67
127
120
92
158
55
105
73
127
105
126
93
126
152
55
129
79
92
91
139
124
81
37
67
105
137
110
126
56
86
92
84
83
123
105
171
122
67
68
104
92
169
77
67
178
135
86
143
103
115
146
107
86
168
104
110
67
105
108
139
111
169
139
78
111
140
67
112
57
104
67
92
77
91
55
67
105
138
55
55
110
125
105
128
67
120
118
107
91
92
92
122
126
138
152
92
37
160
160
106
178
56
123
142
104
139
93
75
119
58
122
80
126
152
160
122
92
122
104
127
79
110
93
55
171
123
108
139
83
109
95
75
123
55
122
65
89
104
92
127
105
37
154
106
55
131
146
37
100
74
177
79
92
140
56
104
124
93
110
56
126
105
58
178
68
86
148
109
67
126
105
126
126
110
112
93
105
100
148
138
132
55
64
92
138
83
67
91
58
37
77
105
124
104
55
37
142
58
112
138
182
84
134
69
128
93
67
93
112
109
55
122
144
92
144
123
135
55
127
37
83
120
128
79
128
147
127
83
93
84
75
112
79
79
108
92
178
128
102
105
77
92
103
123
90
152
102
121
69
109
110
148
69
139
78
131
58
152
134
93
139
126
110
126
122
67
128
126
126
128
92
163
104
109
134
92
138
56
37
56
146
105
105
95
138
136
92
93
69
103
74
99
83
37
97
109
178
92
75
67
93
92
92
55
110
37
144
152
126
139
69
167
117
178
76
126
140
98
128
56
92
160
120
95
122
126
93
106
79
107
109
67
99
138
152
92
110
123
55
83
55
104
111
93
105
140
146
58
97
105
178
107
180
58
92
124
67
56
127
67
131
92
86
104
144
92
139
107
91
94
120
136
126
134
92
68
122
77
124
199
131
160
128
110
122
96
79
122
138
160
99
89
88
92
122
102
56
91
80
106
138
102
106
158
104
86
126
92
126
138
104
114
91
126
55
100
74
105
105
158
99
101
104
169
128
83
69
140
99
110
127
139
91
115
178
99
37
104
110
128
98
126
103
92
122
119
97
180
55
122
152
92
126
114
110
55
122
158
110
110
92
137
122
93
56
93
86
73
141
139
69
119
67
139
78
99
69
110
127
145
106
110
74
122
92
106
169
55
127
104
104
67
104
106
146
92
134
138
110
107
128
56
37
129
93
86
144
126
139
132
152
110
105
122
122
109
123
104
104
123
138
56
107
56
79
148
102
168
120
93
86
79
93
178
103
56
138
37
109
67
126
92
110
117
119
105
92
68
83
92
129
74
104
144
67
98
136
123
102
107
123
128
110
128
99
110
103
93
152
92
92
66
92
92
101
93
107
110
117
114
55
122
56
80
164
92
127
146
68
56
163
110
99
105
138
150
145
129
168
55
115
123
139
126
96
110
111
103
77
67
105
91
121
83
110
109
110
79
105
146
131
110
122
79
86
105
138
105
122
123
55
67
105
110
55
81
92
131
93
55
56
110
171
126
92
115
105
55
105
119
132
146
92
138
126
126
81
58
37
144
56
178
163
104
105
67
102
138
77
58
105
103
109
124
117
99
123
58
111
107
103
141
77
93
110
124
138
104
92
67
164
93
126
83
67
111
91
106
88
58
195
92
105
92
97
134
169
163
127
169
75
146
91
110
106
86
105
55
58
119
110
130
89
131
92
79
79
74
126
58
119
67
75
37
109
131
132
107
108
86
92
68
138
127
138
163
58
92
58
67
37
92
55
138
163
79
107
55
178
67
110
69
144
110
131
67
109
92
110
69
92
84
81
111
91
69
110
110
104
84
122
126
104
110
126
188
139
122
114
107
130
79
127
144
169
79
119
110
105
122
140
142
86
158
92
178
93
86
56
126
55
104
92
137
79
108
122
55
158
37
146
146
92
37
56
138
55
136
138
106
61
152
131
152
138
74
124
139
144
93
56
67
93
158
83
169
126
152
129
146
91
146
110
93
127
67
139
84
108
56
139
67
58
146
86
77
146
89
139
123
55
124
99
134
107
164
152
199
137
56
178
127
138
91
128
111
110
137
122
139
75
89
128
112
132
55
122
119
92
110
58
134
145
188
139
109
104
75
79
138
37
92
148
109
111
171
138
127
110
91
144
67
58
99
37
94
69
117
146
122
140
105
55
109
105
138
123
55
67
169
119
55
109
56
148
139
92
139
69
104
126
138
103
122
111
126
139
64
178
37
126
69
69
37
126
146
69
137
99
56
134
122
118
55
123
69
92
107
144
121
67
138
55
103
111
92
99
144
152
178
77
92
107
134
105
146
162
122
67
139
138
152
111
58
131
58
110
127
55
105
92
91
55
154
114
91
136
178
55
109
56
128
178
37
37
150
120
124
122
114
138
109
122
67
163
93
92
124
114
55
110
146
109
103
69
89
91
92
134
110
86
92
92
123
139
146
67
126
104
56
130
152
84
139
138
123
126
99
178
123
103
138
129
119
55
37
138
158
162
134
126
120
79
105
67
55
130
139
100
122
126
144
110
126
177
68
117
67
109
110
138
138
124
122
164
37
98
75
99
126
138
74
77
77
67
55
178
148
107
178
123
169
110
92
83
105
92
169
84
104
178
92
110
148
104
109
92
109
163
122
162
158
107
126
75
111
67
84
140
80
98
93
163
92
150
92
91
78
55
77
91
139
69
134
86
144
104
86
86
83
92
131
120
98
139
74
107
84
67
92
127
37
122
122
140
132
122
92
107
110
56
126
107
81
144
126
110
55
126
178
98
86
126
110
103
69
55
69
107
144
99
86
114
75
37
93
178
110
56
95
119
126
110
123
124
74
109
111
56
67
105
148
109
67
92
127
58
58
80
107
110
162
55
37
126
122
56
122
86
126
122
55
69
128
123
67
137
92
99
68
69
112
126
126
139
110
126
178
37
55
145
86
148
56
142
110
136
37
67
83
74
138
85
131
56
136
136
93
55
130
55
146
92
92
122
159
91
140
92
92
126
92
108
75
84
69
87
124
137
37
92
86
118
67
128
81
147
110
37
134
37
178
123
55
93
92
104
149
56
128
178
122
181
101
75
93
105
146
67
58
122
67
139
118
189
127
144
99
126
138
130
128
117
55
138
122
119
111
74
103
108
79
110
102
55
126
144
110
105
111
86
110
142
78
144
101
151
55
55
56
136
127
92
67
93
37
108
160
178
105
101
152
178
138
120
148
55
171
132
74
86
126
138
129
86
93
126
104
137
122
140
86
55
139
68
126
127
163
69
101
163
122
55
115
178
131
69
163
55
103
128
93
112
130
109
138
114
117
75
103
127
55
122
91
146
178
37
168
126
110
93
79
122
126
136
93
125
93
92
151
119
104
178
103
97
100
56
56
67
178
139
75
37
118
92
55
98
91
55
126
88
92
56
178
55
108
111
92
128
132
99
92
110
113
140
104
108
100
101
104
169
123
92
74
92
103
119
110
111
122
152
116
56
158
141
104
138
55
126
124
56
110
124
169
69
99
74
92
139
37
136
171
75
91
138
55
112
99
180
92
67
123
55
123
56
114
111
152
110
93
178
122
138
123
92
152
91
110
92
73
122
110
197
79
126
92
104
103
92
122
122
110
92
104
69
124
92
122
105
140
110
126
75
104
67
117
79
144
138
100
67
140
105
89
106
138
151
92
75
74
86
122
140
130
91
105
134
67
91
37
126
121
78
144
67
92
105
178
67
119
110
122
110
117
138
104
152
169
104
169
77
89
100
105
100
148
86
126
108
178
37
122
99
69
122
84
122
55
126
86
97
92
105
69
171
110
120
123
110
67
67
74
74
139
75
67
75
92
97
137
122
189
104
128
55
107
139
84
67
146
56
130
37
119
126
178
119
92
77
58
93
140
93
100
103
126
83
136
98
102
134
58
37
138
134
108
144
93
58
139
104
97
123
127
69
55
55
92
199
99
86
86
138
139
87
138
142
37
93
105
56
162
92
86
132
146
144
122
55
146
94
109
81
67
92
103
56
139
69
137
171
117
92
178
67
105
137
123
94
120
158
107
139
110
105
104
122
86
143
56
86
93
55
126
67
99
103
122
68
131
69
93
79
144
98
91
127
55
68
107
122
92
127
93
89
105
178
123
144
77
58
122
99
55
105
138
91
123
56
110
69
37
91
68
99
107
83
79
122
88
37
127
127
111
93
105
69
109
127
56
126
109
97
79
79
149
138
137
69
122
92
122
93
86
73
110
74
75
110
67
79
67
95
69
55
104
37
162
79
55
134
111
122
131
83
119
130
110
55
72
55
37
93
168
69
105
75
144
144
144
140
56
119
58
169
102
126
101
67
132
122
126
95
67
37
122
78
99
105
178
105
107
140
126
178
146
110
105
56
134
56
169
122
104
114
126
126
84
95
127
77
56
122
91
158
88
100
74
79
118
74
111
93
126
126
55
163
77
122
95
136
110
92
109
122
123
79
129
135
93
74
128
92
55
122
126
67
67
122
126
169
58
93
144
92
83
89
115
55
130
135
79
69
122
93
67
128
151
110
103
67
178
119
92
128
86
169
178
55
178
105
37
104
117
109
92
104
55
92
93
178
92
138
83
139
128
104
171
67
110
93
92
122
93
171
127
104
74
105
67
56
122
91
104
99
139
134
112
144
113
124
74
126
103
127
122
68
55
122
37
68
91
83
86
104
92
67
58
178
123
134
55
99
69
123
122
105
86
103
126
56
55
139
122
55
139
123
175
67
103
77
128
146
103
110
109
125
67
126
56
69
92
128
138
122
104
114
107
134
135
55
139
75
86
178
171
37
127
138
93
179
104
105
130
117
79
152
75
92
89
92
75
92
138
122
164
110
144
122
178
127
107
104
126
122
92
138
98
122
124
178
91
171
122
106
87
113
56
178
77
122
92
98
124
146
127
124
58
126
110
126
169
55
89
37
144
107
55
124
126
79
128
55
84
103
139
110
79
92
74
97
56
107
104
124
129
111
91
126
144
122
105
75
93
132
152
93
74
67
107
68
69
124
77
109
126
169
126
92
91
178
138
91
100
91
93
100
197
92
68
98
146
107
144
106
163
56
56
58
111
126
91
78
93
58
91
138
99
138
138
128
119
122
178
138
55
145
139
138
110
110
145
69
122
95
110
55
92
55
138
165
78
112
37
92
101
110
86
112
126
114
104
111
37
91
144
144
128
67
79
109
56
55
122
152
86
104
104
80
144
80
180
89
152
163
138
105
127
171
178
112
67
58
69
109
124
104
139
162
171
75
74
92
138
56
108
74
74
109
119
122
92
83
69
83
58
110
115
92
169
92
111
58
104
126
55
55
126
163
108
111
105
115
103
97
93
98
67
126
165
105
103
58
168
37
67
56
105
119
111
178
122
92
58
114
120
122
142
131
101
92
67
69
67
167
91
140
93
130
104
91
126
152
91
156
109
119
74
74
178
93
110
105
122
105
55
130
178
55
67
132
122
128
146
86
67
58
119
135
37
91
110
56
56
56
119
122
139
95
79
100
132
168
131
102
138
104
67
152
127
77
122
111
111
91
114
92
110
122
56
120
134
169
119
122
129
112
139
152
55
126
114
109
71
119
122
171
58
123
146
158
58
139
140
180
126
149
110
134
93
98
74
103
126
92
123
97
122
93
107
178
58
100
126
56
92
110
146
135
118
105
93
110
105
148
128
104
110
120
55
92
107
58
98
127
108
101
138
152
124
95
74
132
144
120
56
124
92
105
111
55
101
100
92
55
92
122
138
92
91
127
105
178
138
37
79
55
76
123
67
92
125
102
126
128
91
67
126
109
168
138
138
136
102
92
55
126
119
55
89
55
111
120
144
146
92
93
126
92
103
74
104
92
169
75
131
111
171
91
105
128
92
106
104
93
124
83
120
56
110
68
124
117
138
144
77
92
122
109
74
111
122
125
67
128
122
167
122
92
138
158
92
58
100
67
75
104
146
109
74
138
118
110
120
138
110
105
55
122
124
97
92
123
107
178
55
126
37
55
126
105
67
74
123
105
144
111
67
126
199
122
178
79
78
67
112
140
105
105
104
169
67
84
99
122
165
111
107
146
129
118
93
55
120
127
111
107
55
68
88
118
130
104
138
104
110
77
123
118
126
124
75
69
134
37
87
106
99
146
144
93
102
109
169
119
104
110
102
140
122
164
120
92
100
105
138
120
117
126
158
111
119
138
139
146
110
127
152
92
55
126
92
115
97
101
132
77
148
84
91
138
67
128
138
69
119
119
110
56
77
178
137
103
123
104
105
56
123
105
125
92
126
68
148
138
67
146
139
148
117
86
56
97
92
169
102
168
126
134
84
110
55
93
145
146
58
122
146
91
130
140
148
152
146
92
92
144
126
126
113
74
97
171
146
67
105
126
110
126
126
92
37
91
124
67
138
142
101
37
67
129
69
122
92
148
105
91
124
75
93
92
140
81
69
128
127
93
152
89
148
122
58
89
105
103
92
108
55
138
58
138
146
99
169
128
162
126
163
135
148
104
126
77
104
89
58
104
107
121
123
136
126
103
105
117
56
37
139
92
55
67
93
134
93
110
92
138
146
126
77
169
55
139
104
55
69
152
92
126
122
152
122
164
107
69
104
92
169
92
67
97
80
83
112
110
144
102
178
55
122
92
127
69
102
80
67
122
110
83
92
127
55
117
109
55
106
77
126
55
93
136
122
112
56
130
69
114
98
105
119
102
77
92
122
92
122
86
93
77
144
126
93
93
160
93
149
138
122
110
131
110
142
86
105
178
144
74
138
58
107
91
111
101
126
92
77
67
160
152
79
135
169
152
104
55
138
117
93
67
89
126
138
109
110
104
119
171
132
37
37
126
86
110
86
152
68
158
67
132
104
104
72
171
104
110
105
126
95
128
56
178
103
168
110
110
67
144
92
93
104
96
69
120
122
141
178
91
55
122
112
138
92
122
158
37
158
105
119
110
93
127
69
122
122
128
92
55
92
67
103
37
110
119
104
112
104
91
55
98
122
134
106
110
126
92
111
139
126
126
105
92
56
55
97
105
105
142
132
93
110
131
138
112
105
110
148
80
123
152
79
104
93
79
126
56
105
105
122
104
93
136
104
56
69
103
137
55
126
162
67
37
56
178
37
139
104
56
37
127
178
99
92
163
56
119
55
55
98
55
55
140
99
104
105
138
122
101
104
122
132
110
169
101
132
58
134
126
139
110
138
145
120
140
74
92
110
55
86
127
77
138
55
128
37
178
126
122
103
104
95
178
134
55
91
104
41
69
100
144
122
128
99
135
37
139
139
142
124
127
75
93
92
74
105
68
169
86
56
92
128
98
152
124
128
110
145
92
37
92
152
128
104
180
92
92
152
163
84
109
126
126
104
105
105
137
130
126
126
69
122
93
128
130
142
128
128
118
139
84
124
92
92
93
93
103
128
140
104
122
146
75
67
92
128
105
102
101
152
117
117
98
103
118
127
100
144
110
93
115
93
99
138
77
126
126
110
146
92
135
103
74
77
55
55
119
127
123
144
69
99
138
126
109
67
104
56
79
95
58
122
122
106
140
199
110
112
67
169
130
67
55
158
93
92
152
178
139
107
67
126
126
107
169
108
156
92
55
69
109
99
144
138
139
93
93
37
127
93
92
112
92
67
122
114
105
126
110
75
111
141
122
145
37
58
152
126
120
123
139
97
55
139
142
104
148
124
131
56
124
152
101
110
122
122
109
77
122
110
103
89
146
178
138
92
140
95
134
86
93
78
110
163
129
79
37
110
162
37
58
93
92
100
93
117
92
117
93
131
105
130
144
128
102
55
77
56
91
127
55
92
104
122
110
55
103
126
152
140
108
104
74
55
99
117
139
122
56
64
146
146
55
79
134
124
92
114
64
182
152
106
79
138
111
69
91
146
144
111
55
110
152
92
168
152
134
107
64
123
117
37
101
69
139
101
144
124
86
110
93
58
105
111
122
92
165
114
110
135
126
92
92
92
104
37
110
119
86
92
152
92
92
83
171
67
132
77
140
104
180
92
58
111
138
122
139
86
152
122
157
123
105
67
92
132
37
138
104
37
122
55
92
67
105
110
93
93
132
98
102
178
74
164
93
110
93
126
102
97
113
55
117
105
178
55
93
146
169
56
120
105
105
75
105
140
132
55
178
120
171
58
148
127
138
67
126
132
126
76
37
144
103
107
152
86
92
104
102
103
92
76
55
123
178
64
110
75
100
120
127
140
55
131
92
58
105
55
92
105
119
92
180
93
55
108
107
111
74
105
58
104
109
152
126
37
138
134
113
105
99
135
136
126
93
127
110
138
112
122
169
84
119
92
58
126
138
144
105
125
107
67
95
178
144
146
93
123
105
123
139
102
92
37
123
139
108
152
102
127
58
110
130
92
56
67
56
152
105
114
138
92
105
122
131
55
92
107
138
79
55
126
67
74
119
84
110
99
91
146
55
67
92
105
104
67
67
122
74
95
126
110
138
108
93
92
91
100
37
129
93
67
67
55
110
123
68
110
134
119
69
94
83
79
124
105
107
69
56
55
171
67
109
110
110
67
92
145
163
109
101
126
178
103
79
92
67
56
132
99
142
146
120
139
110
146
67
111
92
110
86
117
55
56
56
58
91
144
105
138
119
105
110
126
55
67
145
105
122
55
134
92
69
119
137
167
58
58
79
92
138
102
105
92
55
92
122
141
129
105
158
95
37
92
131
146
55
93
104
79
88
105
105
67
103
67
171
109
105
56
105
99
55
92
127
122
138
146
37
92
93
104
168
58
126
75
122
105
105
137
119
89
37
107
165
110
55
105
55
119
158
126
77
56
105
123
92
56
146
109
58
99
86
74
138
91
126
104
131
75
92
139
92
91
118
122
134
69
37
131
102
69
37
136
122
55
79
55
130
137
127
67
56
109
156
123
105
141
141
126
86
132
148
128
56
110
69
146
93
126
55
168
105
55
159
105
128
99
132
144
128
165
58
180
67
117
126
104
139
120
81
140
134
138
154
138
58
126
126
126
99
114
142
107
58
105
93
105
126
138
122
93
110
55
145
110
147
77
199
104
105
55
134
79
98
128
122
105
105
92
74
105
110
112
58
105
171
104
122
92
118
67
119
68
168
122
127
92
55
93
92
123
92
55
138
57
92
104
55
126
122
121
93
75
55
56
67
146
119
122
110
97
105
105
123
97
126
123
128
130
110
138
56
109
111
152
152
105
56
144
122
92
107
92
92
91
138
111
167
58
55
122
37
92
168
102
67
79
128
127
92
127
102
91
55
169
55
105
128
89
58
146
109
103
55
122
144
138
99
127
114
138
126
110
67
92
112
119
93
126
142
112
58
88
92
92
109
152
110
103
110
110
83
92
55
158
92
99
105
138
144
169
56
159
75
139
162
77
92
138
110
93
92
56
92
126
58
160
110
93
37
127
55
79
84
93
74
89
56
165
103
142
171
127
56
58
55
114
67
128
103
111
152
104
169
138
147
142
146
139
122
113
74
126
117
112
75
97
96
99
138
68
67
126
149
122
89
102
128
134
104
138
124
105
91
79
79
56
37
122
136
55
118
122
111
130
86
158
56
126
56
131
147
128
134
126
109
92
89
91
106
107
144
132
119
92
131
93
103
37
69
37
119
93
109
130
103
122
126
138
37
55
55
148
107
74
138
138
56
104
122
110
140
110
110
110
55
138
83
118
95
111
140
55
122
92
152
145
92
143
75
152
122
131
126
131
107
88
110
103
138
79
92
67
74
110
114
98
67
104
37
127
119
37
144
97
104
110
139
92
58
37
126
92
99
37
178
105
55
145
110
138
55
135
107
93
122
121
105
144
100
122
148
75
152
122
126
67
92
77
92
178
98
122
139
110
69
122
152
92
79
56
169
111
95
84
110
98
101
107
95
92
122
122
122
117
67
177
145
93
180
83
92
146
92
107
130
77
105
81
142
55
77
93
92
105
110
86
117
114
144
97
126
139
99
76
56
89
77
105
169
92
178
98
56
55
69
146
55
55
149
105
78
37
100
58
105
37
158
138
74
100
178
105
138
122
93
107
139
108
55
105
101
69
152
138
105
83
148
138
92
103
75
77
126
110
55
146
99
122
117
123
86
55
95
58
55
144
99
58
139
101
92
105
122
69
110
95
127
120
126
56
110
178
101
108
105
88
94
110
111
75
67
122
110
86
99
79
55
163
105
67
139
111
110
69
105
107
92
123
138
141
58
138
132
125
92
127
56
92
82
105
58
93
122
138
83
56
83
122
55
68
58
55
67
127
118
109
81
68
110
169
79
137
111
86
127
81
79
83
75
152
109
79
152
169
109
178
86
92
83
123
68
109
147
93
108
105
67
91
100
115
92
110
103
55
77
79
67
126
199
92
110
123
110
106
92
56
123
107
37
146
92
92
55
92
148
122
103
92
119
58
56
126
120
126
75
67
138
129
145
55
92
105
123
37
103
37
127
104
134
139
168
37
93
110
146
119
144
74
130
106
55
37
128
105
122
86
148
67
144
56
140
58
139
58
132
152
91
69
127
55
107
136
104
131
74
58
123
120
104
134
113
132
106
139
58
104
68
112
100
110
146
139
122
92
79
135
158
107
119
128
152
77
128
128
124
67
83
122
79
126
109
110
139
149
122
163
134
150
91
134
67
144
93
72
98
93
92
168
105
93
104
55
148
169
138
126
111
77
97
55
79
103
103
111
122
152
120
93
132
144
56
87
129
115
117
110
55
110
55
86
55
118
68
126
105
74
111
124
126
55
123
138
146
55
138
55
149
132
58
139
158
56
67
122
58
110
180
178
163
89
110
68
105
138
146
56
163
145
139
91
134
56
144
105
163
169
112
134
119
58
119
137
126
138
92
107
37
128
91
138
122
93
77
103
110
107
86
67
164
127
84
91
124
69
126
138
92
122
79
152
55
55
78
77
119
56
139
138
111
126
122
55
124
141
37
126
104
122
105
99
98
58
122
110
128
139
93
55
67
120
55
95
138
93
58
180
104
110
104
79
138
180
92
92
158
128
92
97
144
106
126
58
92
111
105
56
110
146
86
107
112
55
67
92
126
58
137
101
104
132
93
111
78
139
86
92
110
138
137
135
104
119
93
105
109
77
122
105
126
107
93
125
144
81
55
58
146
104
138
111
126
102
97
100
108
127
156
138
122
105
128
138
110
109
146
122
67
140
92
105
119
134
84
103
134
104
67
130
97
115
152
122
141
104
55
148
119
93
126
67
110
119
138
123
99
86
122
110
118
119
123
56
178
151
122
122
67
152
144
126
55
93
110
130
56
109
101
92
92
146
75
58
137
93
128
58
150
92
105
69
99
115
124
55
178
98
127
104
104
136
152
69
86
148
95
144
125
92
92
109
95
93
114
109
75
93
126
111
77
122
113
37
122
131
55
167
146
110
67
55
169
89
138
114
110
169
110
152
93
138
110
140
152
152
126
92
139
115
110
163
144
100
124
163
87
132
163
144
122
118
67
119
110
112
130
144
110
56
131
132
122
75
126
77
92
93
98
107
102
92
55
105
96
102
77
74
55
122
55
92
109
71
37
58
162
37
92
91
168
69
107
37
74
126
56
123
72
145
122
144
74
140
138
123
110
55
92
105
104
152
67
93
126
98
89
110
92
138
122
92
107
123
93
77
111
131
92
110
86
138
83
79
107
126
138
126
122
93
131
126
69
93
55
99
124
122
131
79
123
107
109
92
111
86
122
171
126
78
55
92
119
69
119
105
180
110
132
105
92
92
88
106
79
178
69
152
110
92
56
102
131
77
93
148
91
67
55
105
86
75
164
122
122
55
37
100
192
109
139
118
92
74
139
69
78
139
127
67
92
67
144
152
106
105
123
105
99
97
138
110
75
86
55
110
79
139
37
37
109
92
114
99
92
127
92
128
142
83
122
92
92
134
126
132
107
139
91
74
77
122
115
110
79
134
105
67
119
110
37
105
99
110
67
178
128
98
86
105
139
119
110
69
100
86
79
104
92
110
92
93
75
102
138
92
92
130
74
107
138
92
132
110
111
110
140
110
107
88
146
162
146
93
92
74
118
107
128
86
126
117
146
104
55
80
134
92
120
136
148
127
110
105
122
110
119
110
126
138
93
92
158
75
178
126
111
110
103
156
152
104
109
68
55
144
178
131
124
74
127
55
128
123
144
55
55
126
105
95
58
93
37
79
110
98
55
122
119
55
110
156
138
102
92
144
140
148
75
103
55
104
56
131
152
109
104
68
120
58
92
180
92
92
121
58
152
146
93
177
79
103
55
122
169
67
92
126
93
122
140
74
99
67
93
119
79
178
109
93
140
92
69
55
69
77
86
79
115
105
58
123
37
144
110
104
104
103
100
178
93
86
119
101
105
37
122
92
99
138
79
83
55
102
56
110
104
97
55
105
151
102
144
126
55
87
178
92
113
105
110
97
119
58
91
104
128
124
93
92
64
152
127
75
93
123
122
114
152
37
126
139
93
68
131
152
100
122
105
112
107
149
74
138
131
122
127
107
178
103
55
126
58
110
37
92
138
55
115
103
134
92
92
138
138
134
56
144
102
117
92
110
128
56
122
148
128
132
126
92
77
55
106
103
58
144
55
79
122
126
91
110
92
109
129
93
67
69
107
118
122
111
75
126
110
122
67
93
110
55
138
107
67
128
138
69
97
169
110
56
180
92
83
92
92
104
106
114
86
178
138
93
99
111
111
56
79
122
86
178
55
93
99
126
168
139
128
111
178
104
114
86
92
92
58
122
104
131
86
105
105
104
104
112
164
123
117
139
138
111
146
93
56
128
96
126
126
67
126
178
139
56
111
126
81
110
126
102
97
79
67
126
105
110
178
178
169
117
79
98
100
110
138
92
122
138
86
135
122
103
180
56
109
69
58
117
110
122
101
92
145
140
80
131
136
128
107
169
123
56
134
119
135
158
68
139
144
55
110
101
93
55
110
148
92
138
139
92
55
169
119
122
87
126
92
144
78
122
129
160
68
132
152
104
110
81
69
134
138
105
128
136
122
135
171
37
117
126
148
92
97
69
55
112
86
180
146
83
93
129
140
110
127
92
55
113
138
111
168
110
139
58
114
107
136
126
93
92
105
97
122
37
139
163
110
56
92
127
73
122
92
151
55
130
123
123
151
83
101
56
55
126
104
165
178
79
123
55
108
138
152
140
139
93
144
110
81
89
110
65
134
134
75
144
110
110
127
122
126
91
136
146
104
140
56
140
130
138
128
114
122
55
128
37
56
92
110
169
103
127
91
93
99
122
107
128
144
67
87
92
122
56
104
92
124
58
105
148
139
91
140
131
134
178
136
67
109
138
67
56
84
105
105
128
148
92
112
91
108
55
128
103
105
92
105
77
144
105
126
104
114
56
119
110
105
126
58
167
79
144
92
83
69
145
92
102
118
99
169
68
119
98
128
110
144
139
68
92
144
55
146
79
86
114
93
103
138
142
110
122
110
83
138
148
126
140
122
37
109
123
92
83
122
110
131
69
104
152
92
91
132
67
136
122
178
122
118
109
91
131
122
148
158
55
144
138
132
37
131
92
55
110
145
138
91
122
75
122
163
69
100
122
68
134
139
69
127
93
110
128
139
105
197
134
115
125
92
158
104
105
67
114
104
83
37
55
110
68
139
74
127
56
146
126
152
94
105
92
138
152
83
92
89
111
104
123
152
67
109
74
99
144
119
92
111
152
74
99
110
152
56
138
109
126
37
146
67
199
84
110
92
108
139
152
104
67
152
93
140
109
131
105
79
139
162
105
105
102
102
114
56
99
126
83
124
37
95
93
122
92
134
119
122
169
95
127
98
110
107
69
84
109
122
93
67
152
56
124
146
104
139
140
120
126
55
67
58
92
178
111
99
119
126
105
37
138
122
122
158
55
104
110
104
67
77
103
114
109
167
105
152
58
69
171
146
107
108
119
122
127
69
106
134
92
106
138
124
78
67
122
144
101
122
110
126
92
103
115
55
75
110
97
126
122
152
128
125
134
104
86
67
138
138
110
110
119
121
131
95
92
103
139
86
92
79
92
104
37
103
152
137
152
98
127
37
110
55
92
55
171
37
92
93
99
93
69
144
92
102
168
109
73
75
86
92
67
145
72
138
107
135
152
91
37
139
55
108
138
75
139
126
178
56
93
92
110
122
129
101
168
114
138
122
124
122
129
56
101
146
55
110
75
96
86
149
146
79
77
114
68
110
104
74
139
67
103
77
92
94
122
55
58
105
55
91
83
97
138
92
152
126
56
156
95
97
139
55
74
104
134
56
91
110
110
110
110
162
109
127
139
119
69
138
122
125
92
134
178
128
64
110
93
104
114
118
37
126
122
112
105
55
97
67
104
69
109
138
110
102
91
101
110
138
55
80
144
111
107
55
92
145
74
95
147
180
122
124
55
89
76
138
131
92
102
55
110
152
92
98
67
92
110
56
37
92
131
105
142
86
100
111
55
112
148
126
105
69
104
73
67
98
126
107
107
131
92
74
108
67
107
110
121
138
55
91
93
89
69
122
55
105
58
92
55
123
69
79
107
119
99
109
68
68
99
74
67
122
92
74
56
146
126
55
55
91
105
92
92
122
127
110
92
79
158
122
67
122
104
162
105
110
138
99
55
140
105
123
124
128
74
109
91
139
130
107
75
92
55
57
119
115
110
139
92
100
93
146
55
88
112
138
131
110
75
78
87
139
37
110
91
58
110
152
105
37
67
134
105
79
84
126
138
144
139
68
105
124
131
110
139
130
134
139
114
92
103
142
131
58
72
112
93
171
121
91
69
93
129
98
67
75
124
84
105
122
144
111
55
110
126
86
109
69
119
122
108
91
56
72
128
104
165
67
97
108
105
120
92
188
123
56
92
75
117
105
165
92
126
88
107
122
178
109
93
74
83
122
108
144
37
75
148
105
146
138
56
146
92
163
69
122
91
138
104
110
125
119
99
92
138
138
105
92
108
92
103
105
144
92
93
67
144
89
139
110
122
68
98
55
37
110
97
67
99
67
111
178
92
168
37
109
56
126
79
124
140
110
130
86
79
67
86
123
126
95
83
104
67
138
107
139
92
69
92
123
101
109
171
77
74
58
75
103
127
102
152
78
128
145
92
105
92
56
92
104
104
67
162
127
56
127
181
92
93
103
126
105
37
128
107
144
55
158
128
164
108
126
130
110
56
77
79
140
158
128
77
112
86
136
92
158
118
140
55
55
146
110
111
55
139
92
126
122
83
107
136
128
99
114
92
117
91
112
127
110
95
55
145
142
93
111
37
138
110
95
110
67
97
123
67
58
152
110
84
178
105
110
84
152
106
101
144
56
126
92
37
126
77
144
109
55
122
79
73
138
92
58
120
109
128
106
77
122
104
105
122
122
98
67
104
79
110
138
110
103
92
104
178
107
92
110
152
91
132
79
93
178
58
110
131
75
122
139
137
126
111
123
146
165
109
139
105
58
37
105
128
92
110
93
144
139
101
110
37
74
56
92
137
122
169
105
112
132
74
123
92
92
58
101
80
122
122
130
55
55
127
55
115
37
122
152
37
91
112
107
104
129
67
109
114
92
124
56
104
111
92
138
95
145
128
100
144
126
84
120
58
119
97
138
58
127
67
122
37
148
37
114
67
160
138
144
55
112
79
139
97
122
126
108
86
92
37
99
112
105
110
129
93
171
105
144
112
127
126
165
105
178
178
92
97
79
104
114
105
146
92
138
55
146
98
178
127
126
131
168
128
92
55
169
55
110
105
152
67
144
64
171
126
145
105
93
105
132
103
91
108
56
67
167
58
99
122
138
122
132
105
91
110
93
126
119
74
131
92
93
124
128
169
92
92
91
104
107
127
128
126
84
75
127
67
104
58
107
127
86
92
148
142
127
163
98
165
58
127
111
92
122
122
55
56
189
114
83
122
91
127
75
122
139
67
37
105
169
168
113
126
111
127
58
126
99
124
138
91
104
134
105
69
86
68
56
92
69
139
83
100
104
105
177
124
128
160
79
68
81
104
104
92
152
84
146
55
152
126
56
79
105
75
84
74
55
37
110
93
92
163
144
74
67
138
92
119
126
93
127
123
158
109
68
119
56
75
139
92
149
105
92
56
72
92
144
92
78
67
87
91
55
134
109
55
110
79
58
79
145
55
105
91
138
92
67
134
110
67
138
58
123
122
69
126
74
98
144
126
147
126
122
124
67
103
122
152
56
104
55
148
128
93
92
37
152
152
115
126
109
101
74
169
77
152
122
107
112
132
122
105
144
88
146
58
178
92
120
86
55
89
164
126
122
105
146
55
92
56
114
178
144
55
122
124
137
92
120
141
111
86
111
152
79
132
104
69
138
171
92
108
164
92
99
69
148
91
56
77
69
124
99
178
140
86
72
104
141
93
122
67
56
123
92
106
120
160
134
89
106
67
106
93
139
105
112
163
92
126
105
105
104
92
163
55
138
87
147
110
81
145
110
67
77
171
111
115
132
138
126
122
138
69
74
144
58
110
109
107
92
58
118
103
55
122
104
126
109
76
118
144
83
37
178
84
124
178
122
104
126
110
103
169
126
123
92
122
55
92
119
77
104
103
67
165
146
132
123
138
67
69
67
86
86
117
141
158
75
83
56
152
55
109
79
152
171
55
112
137
110
122
92
152
120
79
67
92
188
105
103
115
137
56
148
180
110
110
171
130
138
138
126
122
167
138
55
138
114
76
118
122
58
103
67
110
67
69
178
92
116
123
110
103
119
55
96
93
178
55
107
56
120
55
55
67
122
139
132
138
107
103
67
104
140
92
58
37
55
92
55
67
162
123
144
58
122
142
92
55
146
92
131
92
105
132
122
105
105
158
148
138
105
105
92
139
122
126
68
144
91
138
130
105
136
158
110
92
67
74
135
92
163
105
126
79
92
79
169
56
89
146
92
127
115
83
103
110
91
107
92
67
37
132
93
138
169
150
134
131
88
117
92
56
103
139
75
126
139
83
126
92
92
58
107
55
122
165
139
119
127
110
122
99
138
127
58
56
77
127
67
122
118
145
165
110
76
93
99
88
100
128
106
127
152
148
92
92
110
138
164
110
98
104
138
97
110
178
92
139
122
86
37
74
98
146
139
110
107
69
144
152
93
92
119
144
92
138
37
126
78
75
100
123
122
56
110
92
97
92
128
146
110
126
91
104
169
152
141
132
107
146
169
91
37
128
122
77
58
138
168
127
168
105
99
93
111
120
95
109
98
104
117
122
55
81
122
122
37
124
122
122
55
119
168
105
130
105
122
142
107
99
119
99
110
104
102
108
91
74
128
122
79
83
58
178
169
110
61
120
139
98
56
86
139
105
56
105
67
92
100
75
93
139
127
86
92
128
119
75
58
105
105
107
178
178
137
37
67
37
92
125
122
55
126
92
146
112
69
67
126
114
67
105
55
97
126
111
79
124
56
122
55
56
104
103
110
37
92
100
105
122
67
58
141
104
91
145
92
93
117
99
58
75
149
91
55
58
111
127
67
92
92
145
178
86
72
105
86
56
86
111
55
55
122
145
127
115
122
146
107
138
67
146
123
68
93
58
56
104
92
146
178
139
110
55
126
126
55
127
146
148
93
86
127
152
146
58
144
79
163
110
122
111
93
88
110
37
91
139
79
55
105
91
165
93
37
130
110
115
93
138
56
100
67
55
199
110
131
37
56
122
178
98
105
126
55
37
93
37
138
67
105
144
126
138
55
79
125
55
114
178
110
68
127
56
123
139
152
92
128
67
100
128
135
93
92
129
78
138
56
104
169
145
67
55
122
68
37
145
104
122
93
126
160
110
55
56
55
75
91
119
122
138
86
106
119
55
92
162
67
162
129
158
37
130
138
97
158
110
93
111
96
126
110
104
81
110
91
99
86
89
146
83
127
152
148
164
124
89
67
99
122
122
75
105
55
74
109
138
163
101
123
160
154
73
98
77
92
74
58
77
122
86
55
130
162
58
138
98
138
92
160
171
127
104
105
139
138
122
111
160
178
126
58
92
84
119
93
140
103
67
122
95
128
107
92
55
91
130
140
107
104
107
169
73
92
110
122
122
144
126
110
79
105
84
56
58
137
103
169
56
103
104
86
140
160
117
92
134
110
110
119
160
119
127
128
126
169
69
93
56
67
55
122
152
121
178
92
67
138
92
169
58
163
139
88
152
126
92
152
126
86
138
55
92
92
122
126
132
55
122
92
110
122
163
148
126
107
56
134
69
126
139
146
55
77
149
119
102
130
69
169
69
109
79
105
110
55
163
171
107
92
123
93
103
92
178
69
105
178
132
128
69
100
107
188
69
122
102
140
92
139
144
116
95
139
74
37
79
92
128
104
152
127
93
98
55
137
91
126
58
144
110
67
123
105
93
139
122
105
120
144
84
140
134
92
74
104
37
37
105
110
144
92
67
99
55
55
92
163
122
112
58
126
137
105
138
139
109
151
114
93
93
87
74
93
144
97
105
113
149
69
178
119
55
122
122
37
178
58
55
79
55
104
178
37
128
110
105
55
69
105
138
126
56
58
56
105
123
123
178
81
92
69
92
67
110
165
37
37
178
138
188
92
126
92
92
136
92
91
101
128
146
55
102
126
128
144
128
119
145
178
150
74
55
122
92
58
110
107
106
152
86
110
161
140
144
56
162
123
126
105
111
178
105
101
114
126
127
55
93
98
116
67
112
99
144
146
123
110
79
127
123
160
145
79
78
144
69
93
138
76
77
123
55
134
131
92
105
135
97
101
93
178
110
58
105
131
92
74
92
128
55
163
92
79
79
58
104
138
67
128
37
137
95
139
119
84
75
86
145
92
101
169
110
104
119
122
79
122
74
122
76
86
67
110
135
126
128
100
56
123
132
55
88
89
91
122
74
110
55
75
105
178
68
180
110
92
80
152
110
83
137
55
93
138
108
111
128
56
94
67
127
111
150
56
67
126
123
140
130
92
74
55
56
86
69
122
110
92
78
93
138
152
56
136
74
146
144
137
110
92
134
91
122
102
89
122
111
89
55
55
56
105
171
55
93
93
139
123
37
146
122
92
144
56
127
142
189
122
92
56
92
178
112
37
105
126
126
55
104
138
67
138
93
92
111
75
145
128
132
127
92
110
109
140
126
105
137
135
138
134
171
105
92
152
152
86
126
138
132
110
56
137
158
69
138
56
58
132
80
144
58
132
86
128
122
137
122
92
122
55
144
58
152
146
69
144
134
106
109
131
124
122
106
171
92
142
138
132
178
122
105
92
114
134
74
89
104
122
163
122
69
145
104
151
103
145
104
148
75
109
93
178
112
122
79
138
138
126
127
99
58
122
146
126
92
55
92
91
138
92
105
75
126
92
98
86
141
129
138
111
55
139
110
123
74
92
67
134
111
128
111
81
37
122
126
126
37
122
105
74
152
154
122
67
106
67
105
140
75
105
158
58
58
56
128
55
92
92
108
122
56
75
55
199
132
122
92
105
135
110
122
137
140
55
147
92
109
119
102
55
89
105
178
158
137
122
97
122
68
138
132
67
86
138
110
149
37
92
178
86
75
107
105
126
105
130
168
122
56
127
55
106
79
139
109
123
81
123
79
126
67
55
58
92
128
107
86
79
104
127
105
77
137
103
112
152
128
105
56
67
93
111
56
67
92
97
69
122
104
126
77
147
138
67
135
139
55
92
178
139
56
105
56
92
128
37
144
132
79
92
92
92
78
139
107
136
123
152
130
119
152
126
138
118
55
58
126
144
135
99
74
112
101
67
105
69
86
144
74
67
83
110
105
75
79
79
37
89
116
180
126
105
152
92
93
122
56
122
104
77
109
69
152
118
128
110
67
92
105
92
79
105
104
83
55
152
112
122
110
122
117
122
110
56
55
67
37
55
110
93
86
115
79
92
168
144
126
74
93
126
124
110
86
86
67
55
58
103
138
109
144
138
123
67
123
105
123
110
144
69
105
139
126
75
56
126
37
99
92
92
139
79
110
58
138
67
97
123
105
139
140
105
110
93
56
37
109
55
104
37
169
67
77
127
144
169
132
67
92
104
92
105
126
169
83
169
128
104
69
107
104
67
126
105
91
146
92
122
131
164
56
74
55
92
110
178
146
110
109
150
144
55
142
110
126
112
171
55
134
120
139
74
127
119
37
122
122
110
56
131
178
101
67
111
104
127
69
178
107
104
58
168
92
142
92
127
99
56
126
139
126
110
93
79
79
126
138
122
108
37
158
139
104
107
139
111
55
127
104
74
56
156
55
92
69
69
93
178
148
87
124
74
138
86
152
84
92
136
105
68
135
139
126
122
122
129
104
92
126
104
92
105
75
146
138
56
55
152
37
145
111
128
105
168
105
104
56
137
122
91
119
122
55
89
67
105
86
92
122
138
127
104
37
122
110
134
79
122
178
37
100
58
122
128
92
97
67
91
107
124
119
107
80
123
58
126
152
105
75
131
112
69
37
132
122
68
37
67
74
128
58
67
91
150
55
102
92
125
138
156
111
146
138
159
37
55
67
92
102
113
92
105
192
132
138
91
58
152
97
104
122
128
152
127
92
104
111
152
107
56
123
119
56
56
83
122
111
104
56
139
122
92
134
107
122
55
67
55
79
67
110
81
58
91
119
93
69
178
119
168
126
99
86
110
122
67
104
91
126
55
104
128
168
122
55
98
111
104
138
105
55
92
126
131
58
99
104
55
122
55
165
91
86
140
134
126
55
126
107
56
127
89
105
131
126
138
103
178
123
111
139
103
162
122
92
79
89
106
122
58
93
77
136
79
88
122
119
91
67
134
67
140
119
69
92
104
123
92
110
102
75
110
110
105
178
148
118
93
37
138
139
119
146
81
122
146
105
122
92
144
114
74
118
92
67
124
122
92
110
58
67
105
138
104
121
178
93
95
105
79
56
74
144
104
122
114
105
105
105
123
104
105
55
104
127
92
97
122
169
112
55
140
178
77
119
55
105
91
74
108
92
122
55
105
124
67
137
106
144
55
84
56
55
92
92
105
92
37
86
126
56
91
110
86
110
132
105
110
131
74
145
110
134
118
92
56
182
37
148
137
99
138
119
143
104
138
165
92
152
128
122
84
111
169
104
126
168
56
146
126
109
94
58
104
92
102
126
140
171
83
105
58
56
92
139
74
139
75
83
84
106
105
58
138
122
104
146
37
58
92
105
55
122
132
67
114
126
146
126
68
110
79
102
92
138
56
81
81
105
107
109
126
98
138
132
92
108
104
160
67
127
111
111
79
67
110
92
83
146
101
103
152
92
58
105
126
119
138
67
126
119
74
79
143
111
55
89
169
128
104
83
104
141
67
110
139
115
123
139
123
127
37
123
130
111
137
163
55
97
55
130
152
58
129
126
86
55
104
127
91
37
168
104
127
91
124
104
135
91
134
111
138
105
110
140
98
128
114
110
77
138
123
84
105
55
169
98
169
178
67
61
138
126
144
140
145
146
93
37
128
105
105
110
138
97
107
56
130
126
126
77
37
103
169
56
56
77
69
92
93
122
92
103
111
145
67
114
81
105
146
98
68
109
104
122
93
92
110
71
55
88
95
93
55
69
160
92
110
105
92
144
79
134
126
152
131
92
137
37
110
109
105
146
144
79
111
75
169
127
92
58
77
93
119
122
79
137
97
97
81
92
105
86
112
139
178
85
122
109
67
132
58
55
128
146
148
123
138
94
74
56
88
92
152
55
122
122
105
75
93
55
138
69
110
134
74
122
110
127
86
104
110
140
102
37
55
126
107
147
74
92
122
126
110
137
124
139
67
55
104
146
162
105
127
111
169
139
67
83
55
105
74
152
93
56
124
140
105
67
127
152
126
126
109
58
106
139
122
138
79
93
111
92
123
104
144
92
127
152
69
97
134
122
105
146
146
122
111
178
121
69
55
92
123
81
151
69
134
122
94
86
145
91
122
92
92
127
93
107
122
69
107
180
169
178
131
56
131
101
80
139
122
67
105
122
83
134
55
67
110
93
135
127
104
126
128
79
114
104
92
123
105
55
86
83
103
101
140
102
138
107
93
128
138
100
99
110
77
105
37
122
92
123
109
92
55
92
110
69
56
92
136
113
114
86
139
127
96
126
93
83
37
127
104
111
123
104
93
92
112
110
117
99
139
97
55
107
107
152
125
139
115
92
105
104
93
99
144
75
92
77
122
92
67
69
56
152
126
55
96
105
55
92
55
92
123
104
55
55
58
144
104
117
99
77
93
134
124
146
138
93
182
126
69
138
104
92
97
69
128
79
110
67
97
37
92
98
140
118
119
92
69
105
138
91
146
110
138
67
180
92
92
89
138
131
126
105
167
77
164
79
93
146
138
138
80
92
122
128
127
122
92
152
55
79
165
92
69
139
115
67
126
127
126
84
104
86
138
138
93
105
74
80
135
163
67
122
55
146
103
79
79
111
138
111
122
138
97
37
93
55
134
104
134
105
105
55
101
86
55
105
92
168
103
115
107
74
126
37
160
144
110
55
69
138
145
83
74
135
92
127
110
122
105
92
84
110
188
91
104
120
107
110
102
124
92
131
106
37
148
55
122
105
58
132
87
104
67
55
107
75
128
138
136
92
104
67
127
127
92
140
131
67
112
139
103
126
145
126
105
94
123
100
91
152
92
178
97
56
104
132
107
104
110
83
121
98
117
126
117
169
37
138
101
126
98
56
84
125
120
37
127
55
126
138
178
144
138
121
55
144
126
77
67
92
93
99
93
37
92
67
86
37
138
138
75
86
171
107
139
99
92
109
152
55
67
55
110
178
79
75
67
122
76
55
91
105
37
126
163
92
103
127
92
104
83
91
37
150
140
96
86
92
110
112
91
124
92
127
92
93
110
137
69
55
139
81
107
109
126
37
37
97
67
86
118
178
135
122
120
110
56
37
138
86
167
68
92
93
112
119
98
105
152
131
74
92
139
137
140
93
104
110
110
107
126
105
89
75
69
67
124
122
107
128
139
92
132
129
122
140
136
105
111
79
79
55
109
74
104
92
111
67
127
104
126
144
127
103
93
140
92
93
122
92
55
168
122
146
58
152
55
79
58
105
165
123
107
168
58
89
58
76
104
130
125
92
84
158
109
128
169
102
92
78
79
79
110
92
77
119
95
105
126
55
178
122
77
110
146
58
103
74
139
169
58
109
134
119
122
75
93
79
152
145
138
104
103
105
134
140
92
139
126
37
105
105
92
104
92
139
58
178
134
112
113
138
119
99
152
138
83
111
92
141
78
178
122
91
122
144
160
110
78
69
91
119
56
91
98
55
91
37
131
104
105
144
105
55
67
146
169
104
104
144
110
99
56
80
117
122
152
92
118
107
99
126
119
92
103
127
178
97
126
99
152
110
138
93
67
129
55
79
178
105
92
55
108
105
37
127
55
106
122
105
104
126
105
76
67
92
139
55
134
69
55
92
37
98
109
122
126
124
92
83
134
99
103
119
122
55
86
101
122
148
122
67
122
84
74
74
127
144
93
93
107
126
115
92
55
169
105
127
67
56
122
122
103
114
178
104
145
140
126
178
86
56
103
138
55
92
199
126
79
92
77
123
126
152
58
92
122
160
105
179
92
110
112
129
87
138
93
103
93
138
97
126
171
92
67
128
105
95
136
37
74
67
146
121
105
55
111
107
139
104
104
105
107
92
105
145
105
110
67
103
69
110
169
188
37
105
58
138
74
107
105
111
126
124
146
69
55
67
55
92
140
119
95
110
69
131
99
144
58
138
102
164
105
104
69
88
114
104
77
136
126
86
103
67
83
68
122
140
107
68
122
122
104
110
128
101
105
55
117
111
126
147
56
58
74
55
105
77
58
110
107
55
56
105
77
92
104
123
104
138
140
129
141
124
160
126
89
139
178
132
92
105
178
127
105
178
56
106
122
67
105
105
118
110
178
56
91
74
110
122
74
93
148
105
164
169
122
69
92
92
97
55
126
55
104
88
91
80
58
169
103
89
55
139
92
109
58
105
109
122
117
105
110
118
105
104
56
55
178
104
139
100
169
99
112
138
124
55
58
152
119
152
111
92
92
102
107
171
112
99
55
67
92
84
138
138
118
125
67
158
55
91
93
105
147
55
188
55
104
163
117
67
74
140
109
120
123
124
102
127
139
93
67
105
83
178
108
164
124
144
91
93
138
102
99
168
126
129
139
88
139
92
115
107
110
58
67
120
122
104
111
138
126
55
105
92
148
123
113
67
55
99
128
152
37
119
92
144
122
92
83
105
56
109
74
104
107
144
117
111
99
92
92
128
128
146
67
117
144
123
128
77
117
122
106
104
126
126
83
37
122
126
124
109
97
126
91
122
55
55
92
144
79
135
110
77
111
169
122
158
99
74
83
95
92
124
58
117
128
55
79
105
55
92
103
163
110
55
75
92
124
136
103
99
92
138
180
140
136
144
148
124
119
132
55
152
86
131
67
117
129
114
105
56
135
108
58
37
169
86
148
55
67
112
105
103
75
126
67
93
121
37
110
74
136
169
67
92
110
67
75
37
83
95
84
75
114
131
126
110
110
122
128
86
86
84
152
77
171
99
55
178
127
92
77
124
123
93
171
128
104
97
92
97
69
148
171
138
56
138
102
97
110
123
69
124
114
37
122
91
188
105
148
130
131
93
67
114
84
123
79
92
92
178
69
109
106
180
178
92
138
122
56
120
156
165
55
139
144
110
139
68
37
178
84
122
86
119
94
67
105
109
55
119
129
89
92
67
67
105
92
92
92
105
126
127
114
123
96
138
169
86
127
104
132
111
105
119
74
119
93
138
67
146
138
110
75
104
111
100
127
67
107
122
148
128
164
138
152
110
139
122
68
56
74
91
178
92
110
122
37
122
134
105
146
92
126
91
169
138
67
93
128
67
168
58
138
178
91
78
55
126
110
139
126
67
132
74
92
144
144
99
141
72
56
67
91
122
58
103
56
55
127
80
124
107
164
55
105
92
126
55
122
138
92
111
55
180
55
103
110
37
139
168
69
91
67
134
105
128
104
146
58
111
109
89
56
135
67
131
158
75
144
92
55
75
55
69
97
86
92
67
138
119
139
108
92
128
103
126
67
127
163
67
92
145
126
55
128
122
55
83
134
100
104
69
91
112
92
126
56
77
139
105
122
79
92
89
126
108
122
105
37
146
119
128
96
105
93
115
77
178
58
178
127
165
110
99
138
55
156
56
122
69
112
104
130
127
138
86
145
64
127
100
92
114
113
112
144
132
104
86
127
138
122
104
67
84
110
139
178
92
114
106
105
67
109
129
119
105
137
105
92
111
68
122
113
79
134
56
122
127
111
146
75
107
144
110
99
81
111
126
118
67
123
67
99
122
122
86
126
55
89
105
105
56
75
75
122
123
138
99
55
92
138
139
130
105
138
92
107
115
122
105
119
98
105
110
77
178
138
162
138
56
110
134
110
55
178
136
101
169
93
126
178
107
92
56
74
92
124
139
139
68
127
55
92
110
58
37
167
87
55
126
130
122
92
127
107
139
127
122
110
138
58
110
119
92
67
163
92
91
82
99
89
92
105
37
169
126
99
122
103
67
93
119
80
138
144
91
67
126
92
124
112
107
67
122
112
169
79
95
192
56
122
92
69
94
134
130
109
105
37
128
105
83
92
101
126
67
101
144
55
105
99
110
138
110
105
111
130
56
122
128
106
106
93
74
114
138
105
126
101
140
92
130
92
56
55
123
126
128
117
92
130
122
128
92
138
79
109
92
93
95
118
138
122
104
77
56
147
135
122
108
37
163
109
67
114
69
102
156
89
139
119
122
107
92
144
140
78
145
122
69
37
58
87
146
106
171
56
97
140
91
93
129
169
114
67
92
100
127
152
110
69
127
83
126
104
105
97
140
152
110
79
98
139
55
105
121
92
67
126
140
110
92
136
69
55
129
56
119
127
140
55
122
97
106
136
134
130
92
127
107
104
92
56
58
127
126
140
55
138
109
78
93
114
152
119
124
108
93
105
37
110
92
92
128
91
55
178
67
78
126
64
169
152
107
91
58
110
67
110
103
92
168
57
146
74
37
168
178
150
74
132
109
105
141
92
138
138
146
126
163
104
121
140
163
139
127
128
104
144
127
105
180
127
69
128
94
162
56
138
104
128
126
110
138
148
69
126
168
146
55
168
55
103
127
91
58
127
69
55
169
111
107
105
122
114
122
56
119
122
91
138
104
164
139
110
109
123
117
110
139
93
129
111
80
56
159
124
138
122
56
93
134
55
117
67
92
127
128
146
104
135
86
56
97
127
163
79
124
122
138
110
152
140
55
99
77
104
104
107
127
112
122
89
139
91
103
152
56
93
56
131
144
145
37
138
119
55
127
92
123
138
105
79
130
55
146
99
58
110
178
119
55
139
106
136
103
110
110
119
105
92
122
111
168
138
168
119
55
132
124
56
111
109
104
55
55
109
122
122
79
92
97
74
107
67
138
111
37
78
56
128
111
104
178
169
139
129
138
98
93
58
146
105
138
83
99
55
69
58
136
103
127
110
168
122
105
126
162
107
56
55
58
122
56
56
109
95
119
138
178
171
117
79
74
126
139
138
123
162
138
111
69
99
118
55
136
104
144
106
180
162
93
86
138
129
67
162
98
98
110
179
74
112
104
139
158
90
56
178
92
110
122
55
144
127
85
56
124
83
74
127
138
74
109
127
86
111
146
122
55
93
102
93
118
92
92
146
168
126
105
119
132
91
144
123
126
77
83
158
86
131
55
69
92
144
126
69
120
127
92
178
76
110
98
123
102
75
55
93
138
148
86
138
119
37
106
122
126
169
111
107
92
92
91
130
93
160
58
142
92
55
104
93
56
80
105
144
126
74
67
138
148
67
122
124
123
107
105
92
145
92
101
169
144
55
137
138
138
84
127
97
105
55
104
122
93
105
152
89
134
120
86
139
144
92
138
56
111
58
138
122
180
55
139
79
126
126
76
99
55
99
122
55
138
64
104
77
123
77
145
122
79
91
168
138
55
142
124
95
92
144
126
137
77
92
124
111
108
126
146
148
92
144
107
152
105
91
67
105
110
110
109
139
56
152
105
55
158
58
37
112
37
93
92
105
84
112
92
67
110
134
128
138
152
138
105
69
128
58
127
128
104
126
112
103
152
92
104
119
104
56
103
107
188
105
37
92
37
112
37
56
122
67
145
93
103
93
56
100
146
178
77
144
122
144
68
67
103
137
127
146
96
56
127
69
132
69
92
105
126
104
140
128
55
104
89
163
132
117
93
98
98
74
123
92
109
67
110
93
75
112
102
104
79
69
152
138
92
158
127
108
83
103
109
105
55
127
146
55
37
147
92
122
149
110
109
169
91
127
56
138
112
146
67
67
144
141
55
97
79
151
68
138
55
152
56
122
92
37
163
128
158
138
130
93
107
37
105
146
127
37
122
124
110
58
67
138
58
112
122
92
111
126
92
77
139
152
37
94
110
130
122
55
119
139
92
126
124
77
178
91
122
67
74
55
77
67
158
130
152
58
79
92
55
139
119
126
80
199
106
91
112
141
138
127
139
77
146
138
55
105
122
110
146
178
77
125
128
146
124
119
104
169
119
89
169
126
100
92
148
103
99
78
142
97
178
103
111
119
37
92
37
117
107
74
169
76
58
79
55
92
97
130
92
67
167
121
105
93
127
144
75
127
84
91
160
123
126
105
84
68
139
139
101
165
91
92
79
77
58
74
86
122
55
128
67
122
138
56
86
56
55
92
127
110
178
56
55
92
92
178
89
67
118
132
74
92
112
83
138
55
91
105
142
138
144
121
180
127
100
67
139
128
93
182
126
105
105
93
163
122
67
55
126
119
92
74
77
105
122
152
128
122
111
92
55
127
178
79
152
140
91
106
109
124
107
110
146
86
104
92
78
123
134
94
110
110
58
91
103
56
98
93
123
128
92
84
152
105
55
55
58
104
104
86
167
123
110
122
126
56
56
129
128
122
93
93
144
134
137
81
163
67
102
122
105
93
67
171
126
93
152
105
55
110
111
56
126
105
55
105
114
98
119
104
110
138
92
37
56
91
95
92
104
37
134
37
80
75
67
95
105
105
67
92
91
37
105
75
105
109
146
67
103
122
92
139
131
86
110
56
92
104
126
114
127
122
139
130
103
140
92
158
110
134
122
126
104
144
68
122
92
55
119
146
69
56
110
114
188
119
107
77
123
96
93
81
145
78
58
142
84
110
55
140
138
92
95
123
109
87
69
91
83
75
131
55
95
92
115
92
105
178
105
148
86
58
68
89
105
102
55
134
130
148
107
139
79
92
104
92
37
103
92
55
68
55
169
180
109
151
146
37
146
111
142
37
127
67
92
65
86
92
146
92
105
84
104
99
56
127
126
138
146
107
112
55
56
111
126
127
126
109
55
152
37
105
112
125
67
104
128
151
110
55
158
56
152
115
137
136
55
140
138
102
58
111
105
55
128
84
56
152
113
140
55
134
37
137
110
64
114
146
122
92
104
37
104
122
142
55
56
104
119
146
58
110
119
123
69
104
67
140
146
105
126
138
81
93
144
140
152
128
93
105
152
151
55
103
37
104
139
56
93
110
152
138
91
37
110
92
120
128
119
92
111
67
110
110
55
68
91
144
55
138
126
55
105
55
110
104
55
139
178
110
91
122
77
132
160
178
180
139
74
180
55
104
93
126
105
126
152
93
93
74
67
79
105
111
127
58
124
111
92
140
55
37
67
126
89
67
55
104
56
93
105
93
58
146
126
102
61
67
92
114
100
81
67
77
110
128
105
124
37
55
74
55
150
104
122
152
146
110
55
139
128
169
67
83
146
85
146
106
91
92
104
134
55
75
180
146
168
93
92
92
113
126
132
89
92
138
92
104
130
98
92
151
55
109
58
93
101
123
67
124
104
68
145
56
37
126
98
104
92
122
107
110
122
112
37
103
131
92
105
104
104
168
86
138
124
97
97
139
164
92
105
110
192
67
160
110
125
131
58
55
86
129
132
102
55
139
139
138
58
55
178
94
138
128
110
107
110
123
55
144
74
148
123
122
178
117
75
37
37
152
56
146
56
67
107
68
55
75
79
104
58
77
122
123
56
104
92
138
135
75
110
113
109
138
149
126
93
92
105
126
105
107
86
110
75
110
120
178
99
137
123
92
93
55
69
37
102
105
92
141
92
146
92
99
123
55
102
131
156
55
84
86
138
92
114
77
106
56
99
102
105
122
171
139
93
104
169
103
93
105
67
105
110
93
139
158
126
126
138
146
58
104
127
92
126
120
126
106
144
145
140
99
69
135
178
138
146
188
122
124
100
128
127
126
152
131
92
104
111
99
134
152
117
107
56
163
92
91
107
122
138
92
177
148
81
92
110
111
118
158
123
138
79
56
118
126
146
56
138
123
105
169
95
146
113
124
178
91
74
67
110
122
86
74
77
122
129
104
91
110
127
152
120
128
117
98
105
149
92
128
93
56
55
182
110
37
89
93
84
152
88
128
110
104
124
135
126
128
69
169
138
104
99
115
77
167
126
114
110
92
58
144
122
74
119
96
58
114
122
127
37
105
126
111
94
68
122
109
93
77
99
67
139
56
105
103
99
154
111
140
132
83
127
126
58
103
124
140
81
77
93
98
169
55
106
77
69
107
56
109
92
105
130
126
121
103
146
100
67
55
152
108
84
132
111
110
122
124
110
127
104
55
92
126
127
105
169
165
111
86
135
110
93
168
55
104
122
104
122
103
150
138
126
127
144
67
122
122
86
55
119
178
56
123
131
92
121
55
126
126
124
37
55
77
92
139
146
123
122
89
37
77
104
83
126
134
58
69
136
105
109
131
92
92
56
181
105
119
136
104
110
55
146
67
105
99
68
68
122
83
138
131
107
111
56
92
108
105
135
79
105
95
132
163
86
69
126
92
171
110
37
58
122
139
103
138
150
67
126
93
140
126
86
126
67
67
79
146
91
68
114
109
86
67
55
92
107
110
55
104
104
169
122
126
138
81
131
110
97
163
99
146
67
91
146
138
178
126
84
137
55
91
114
148
99
126
74
107
58
56
105
67
83
92
92
103
152
180
55
109
146
126
69
140
77
101
92
83
93
135
110
83
138
69
163
146
122
92
110
86
138
126
104
67
78
92
122
69
55
100
163
79
120
92
127
164
92
83
55
104
122
126
104
146
178
178
104
102
91
122
144
105
105
110
103
69
99
92
55
110
107
74
136
110
127
105
92
106
123
99
110
145
37
110
104
126
93
69
123
158
168
168
98
99
75
97
126
104
122
69
97
91
118
112
139
58
67
130
67
56
178
104
132
58
141
117
67
56
138
99
169
138
169
144
37
127
93
92
104
91
55
169
107
92
91
92
110
86
122
126
127
37
167
92
128
110
152
118
92
86
107
119
102
121
37
122
55
69
101
122
139
77
99
110
56
92
140
105
136
110
138
158
55
127
55
131
93
139
108
55
126
55
104
84
124
139
127
109
105
105
139
138
136
37
122
158
104
109
171
92
168
138
55
75
171
55
122
110
56
105
93
79
77
144
79
92
55
167
122
138
107
188
77
92
134
122
107
140
169
69
104
92
58
112
92
138
104
100
138
111
93
122
98
99
152
67
74
77
67
104
128
67
115
109
104
98
111
79
144
136
139
127
75
126
92
104
126
122
105
148
55
107
126
122
127
178
139
92
58
101
126
92
110
138
93
56
177
92
86
123
91
104
146
92
152
114
126
122
93
126
139
146
126
112
37
92
114
67
69
110
138
37
92
101
160
144
152
79
127
110
137
106
152
102
124
139
113
169
178
93
122
105
152
56
92
126
140
169
129
111
118
83
93
122
37
168
152
123
105
124
69
131
131
111
112
105
98
139
119
117
55
55
86
92
92
144
55
138
58
37
92
93
86
99
128
92
178
84
144
138
110
149
110
101
109
92
127
124
105
55
126
135
93
112
91
105
103
92
132
105
55
123
78
83
37
92
127
93
37
105
91
105
69
126
92
135
79
110
88
92
55
55
78
138
146
128
58
37
148
152
104
89
119
55
55
92
88
181
101
139
56
67
128
78
55
178
126
131
114
122
89
157
105
128
111
152
178
88
92
109
126
109
99
138
83
79
169
81
122
104
37
178
130
144
103
108
91
37
163
105
110
165
37
89
55
95
138
69
105
132
67
79
58
103
131
135
122
67
122
97
136
92
110
126
110
100
110
110
93
79
129
105
136
115
105
127
92
132
101
91
111
139
128
124
117
55
84
93
100
162
86
127
92
79
118
127
105
67
107
56
105
55
126
56
92
107
84
146
163
138
92
178
127
92
126
109
126
138
92
110
99
178
110
122
136
56
102
92
55
91
58
122
126
126
86
105
122
110
110
144
109
144
55
138
37
112
109
86
110
115
92
83
127
105
178
169
83
92
156
144
99
101
126
105
124
79
123
138
110
110
123
178
92
127
161
55
112
104
124
128
138
132
104
97
55
119
113
127
94
92
88
134
169
103
119
110
146
146
93
74
56
67
93
105
81
122
134
138
55
109
69
88
55
92
109
132
56
199
93
37
104
144
126
181
107
109
58
84
135
92
134
56
104
78
137
122
92
107
58
138
108
118
69
99
105
128
92
124
92
119
95
92
144
92
114
122
58
126
79
93
37
67
110
107
123
178
76
67
55
91
93
105
93
84
138
55
67
84
130
122
104
114
124
91
97
163
56
92
105
178
122
110
56
103
138
138
123
86
84
56
152
84
119
136
168
127
128
144
123
93
92
136
92
140
118
146
75
92
67
104
69
142
138
144
137
92
127
126
100
92
58
161
107
164
120
92
145
105
123
104
189
111
84
93
106
103
105
56
97
110
140
92
139
112
92
136
75
127
114
79
110
108
123
83
140
124
139
58
107
179
104
92
139
55
126
77
68
77
127
37
92
77
55
93
105
93
139
37
123
77
72
122
110
55
125
83
105
92
55
92
104
55
122
122
119
67
126
99
37
126
124
92
152
167
104
137
122
119
56
55
93
117
188
144
104
134
96
119
119
139
121
138
75
127
114
84
119
83
84
148
134
56
117
110
37
110
92
156
101
55
119
105
67
138
119
55
144
124
126
55
93
69
67
102
123
142
119
105
92
84
127
107
69
135
119
99
92
152
92
105
123
94
86
123
86
68
69
107
101
124
92
119
112
110
105
104
58
168
109
105
92
138
134
127
126
109
105
97
93
105
55
138
67
37
120
126
111
101
122
127
37
123
130
88
56
110
92
102
146
55
122
124
110
110
112
86
128
122
126
138
106
127
56
144
126
104
55
110
56
110
139
110
92
92
126
144
128
104
178
105
107
76
72
110
146
152
140
122
83
86
180
178
138
126
138
158
105
127
80
102
92
79
55
92
67
100
102
146
139
67
158
138
67
56
92
178
97
118
56
55
69
69
138
132
109
96
55
37
125
146
135
136
79
169
79
105
178
69
152
127
127
149
171
91
146
67
163
142
126
110
97
74
109
180
138
107
92
134
179
110
92
67
67
127
81
119
69
37
110
119
55
138
121
93
86
104
92
55
37
98
110
122
86
136
37
122
118
75
86
77
67
152
122
105
107
105
110
93
93
139
127
97
110
126
152
69
138
137
134
110
126
104
78
58
124
131
138
102
92
107
127
104
152
92
134
55
151
138
55
126
138
107
115
132
102
168
55
126
67
93
98
178
110
148
144
56
128
86
92
79
123
124
124
139
144
140
125
110
162
160
92
74
120
110
126
123
55
123
119
37
119
93
104
110
56
151
146
139
68
127
92
56
99
97
86
92
92
126
164
37
126
37
110
93
37
122
126
55
144
122
122
37
163
92
79
37
55
98
168
140
37
122
92
123
74
138
111
76
92
126
91
86
126
141
93
135
119
99
138
81
112
114
126
86
58
105
127
104
132
139
122
126
107
126
105
158
122
118
137
56
122
106
104
69
67
93
83
132
103
178
37
109
69
55
109
126
109
123
152
144
67
131
104
138
130
56
134
67
152
139
55
110
56
92
55
158
124
93
110
132
110
131
152
55
164
91
99
93
83
163
92
122
93
55
144
127
140
67
55
67
79
89
105
105
110
128
122
165
171
146
55
75
139
83
99
140
114
146
100
178
104
135
122
146
109
55
146
144
91
110
92
123
56
111
106
92
178
139
127
130
138
122
93
136
79
111
110
160
67
126
93
152
77
134
99
74
122
79
55
120
122
132
92
86
67
77
110
144
67
120
86
92
122
111
67
92
158
105
67
97
110
124
105
107
81
122
152
105
92
86
112
68
55
122
123
55
37
127
127
138
146
137
122
92
110
127
37
110
55
178
106
122
104
127
92
144
126
58
105
81
103
92
96
92
84
81
55
151
169
126
117
104
105
138
110
104
126
94
109
105
55
68
127
67
121
55
58
55
122
56
98
122
131
67
105
92
93
178
107
77
99
135
134
86
168
97
163
93
67
67
126
96
110
127
93
169
156
138
106
105
104
129
92
73
77
106
103
126
103
92
126
144
55
37
55
79
139
127
55
142
139
69
126
122
128
55
91
126
110
37
92
136
74
104
77
110
86
110
103
86
69
101
67
92
146
104
110
178
168
171
92
105
93
136
132
91
58
122
83
122
158
37
156
98
102
122
111
110
104
98
92
56
128
58
105
124
110
118
86
122
123
92
178
92
56
118
67
180
117
58
122
93
115
69
93
139
79
163
138
104
104
55
138
146
37
55
37
122
105
110
122
122
109
146
105
144
92
92
92
58
93
67
67
128
152
126
106
122
122
149
86
144
107
37
55
171
104
58
147
75
120
146
126
110
110
127
76
75
92
128
68
127
122
89
105
169
169
110
140
104
83
132
55
95
58
118
138
91
103
92
55
134
129
58
93
91
74
130
93
99
110
108
99
126
169
119
68
74
92
152
123
88
98
69
95
92
132
144
75
119
86
127
55
131
69
77
69
148
104
93
83
127
139
138
126
55
58
152
144
139
91
105
138
110
148
139
127
144
109
105
114
112
93
105
67
146
37
91
79
92
100
138
74
91
110
37
115
105
180
128
69
109
127
158
138
69
104
86
55
110
103
110
123
134
99
139
119
126
55
158
99
104
55
67
188
58
91
104
122
55
67
111
131
109
117
93
110
93
110
122
92
119
93
79
138
182
122
122
138
123
87
55
92
91
55
138
136
177
122
178
126
130
138
146
67
55
105
152
77
86
108
114
92
105
127
139
99
55
105
37
37
104
144
104
164
139
101
122
56
144
115
100
86
122
171
126
140
131
128
92
123
127
79
158
138
104
105
139
146
67
135
126
105
122
107
171
55
134
131
104
137
92
99
99
93
93
146
89
144
92
111
110
149
92
67
57
105
55
92
146
126
127
79
55
99
103
86
138
131
122
92
55
105
119
147
127
145
178
79
106
138
55
104
114
145
139
110
111
92
126
98
88
92
152
180
37
134
123
114
114
152
178
110
91
122
101
79
180
110
138
127
56
105
138
84
92
83
122
105
92
55
138
169
92
100
105
103
104
144
148
91
105
146
115
130
56
105
104
58
92
96
55
37
123
77
122
55
86
75
134
127
89
136
104
55
56
104
110
126
110
122
164
105
107
108
138
105
55
123
127
126
138
104
139
122
74
146
98
129
86
104
123
94
178
139
144
55
104
79
111
127
67
67
99
69
136
123
107
123
99
136
126
119
139
95
37
55
108
144
171
110
131
58
114
58
122
144
138
83
124
105
138
37
67
135
139
92
135
55
144
83
93
146
77
180
88
105
77
123
56
92
180
92
140
125
92
104
93
168
105
139
89
114
130
58
91
101
105
146
92
37
86
110
55
126
110
138
116
117
92
56
122
122
146
69
67
126
113
98
102
138
127
138
107
138
102
126
83
92
105
110
126
93
77
139
163
93
121
101
107
58
138
163
158
103
96
127
158
67
101
169
105
37
58
110
126
109
138
92
134
92
107
105
127
106
101
128
77
67
104
92
67
152
110
91
110
104
67
126
74
55
169
67
92
138
97
95
182
92
105
152
107
55
79
58
83
104
73
126
122
129
93
105
138
107
130
98
93
105
56
92
92
73
180
123
55
112
135
103
55
55
55
111
69
138
122
128
122
58
105
105
199
92
112
101
110
126
55
74
92
111
139
86
105
142
105
55
84
100
92
132
92
117
77
69
92
128
122
111
55
126
109
112
110
69
104
75
169
146
128
79
89
126
92
105
126
138
125
74
123
110
122
107
112
104
69
68
69
126
146
120
92
55
126
58
146
108
92
105
76
106
178
110
93
91
168
145
86
144
92
58
122
98
146
106
134
126
122
58
103
105
79
79
151
126
138
127
67
67
131
178
102
97
67
140
93
89
100
91
92
65
110
55
128
77
168
123
119
58
88
92
56
105
144
158
102
109
93
122
92
92
37
111
92
122
178
78
56
92
55
67
171
112
86
111
110
105
105
123
105
126
55
56
122
130
122
150
55
55
101
99
56
110
107
111
122
136
67
75
122
99
145
55
126
106
122
85
98
162
105
146
123
137
178
145
122
122
111
58
92
126
126
106
102
152
169
171
58
126
117
55
79
86
127
144
122
127
55
146
117
92
120
122
95
146
86
178
131
139
58
127
55
123
126
37
93
37
107
77
109
85
129
126
138
115
91
139
195
55
104
92
165
119
144
92
118
108
134
67
92
122
107
134
122
110
127
56
178
56
56
128
56
139
119
105
119
93
95
93
92
112
98
103
104
37
92
105
126
92
138
169
138
97
126
74
77
92
138
111
80
108
111
134
109
105
93
110
92
178
122
56
92
109
126
87
55
58
67
131
160
86
91
165
103
144
67
152
37
67
163
110
138
139
69
126
126
83
92
67
126
145
124
79
138
55
58
79
123
67
125
128
55
102
58
86
126
138
105
122
171
80
124
56
126
110
139
91
94
152
110
138
124
99
93
86
109
152
158
75
109
169
127
101
122
178
142
122
148
146
37
127
122
79
101
37
122
117
151
127
79
149
61
126
69
110
106
92
92
56
58
91
136
126
122
114
93
138
122
148
105
123
126
55
109
110
75
103
110
92
122
122
144
105
37
178
126
58
74
128
115
126
162
126
178
138
67
77
110
130
127
37
92
127
55
126
131
103
178
92
107
55
181
64
138
138
56
58
127
55
67
77
122
91
95
107
86
139
93
103
123
109
69
126
129
139
92
77
55
107
72
138
79
122
104
124
119
55
106
126
127
92
55
138
104
144
69
105
107
97
77
104
164
105
55
109
138
141
122
138
92
74
93
122
119
100
74
139
93
124
55
127
55
119
138
114
137
132
77
74
56
111
152
55
83
118
89
152
130
83
164
92
55
132
105
74
110
55
55
127
110
152
101
55
91
103
114
101
107
162
146
100
104
117
88
144
162
75
146
68
138
106
104
74
79
84
117
99
105
55
110
109
55
110
146
117
168
79
135
55
96
127
93
145
103
128
139
138
55
140
104
132
130
127
131
104
55
92
142
122
55
109
58
75
67
138
55
138
55
37
92
178
122
171
74
126
108
75
107
146
74
158
92
126
105
55
55
126
107
178
142
92
148
147
56
123
140
56
92
92
141
95
139
107
122
92
122
98
168
109
91
75
106
148
102
144
111
56
87
139
148
68
171
107
105
126
104
122
93
86
99
119
99
56
110
119
58
199
92
141
123
124
144
67
84
110
75
79
110
138
140
55
92
81
75
55
84
110
138
86
58
131
160
110
98
178
128
105
37
92
163
92
93
75
138
102
109
68
110
144
130
128
180
89
138
130
83
37
37
93
122
104
91
89
124
104
119
37
158
120
102
103
168
104
103
119
144
105
126
128
150
128
58
160
105
104
104
92
180
148
139
93
55
104
92
55
37
93
152
105
77
122
138
67
92
169
122
127
152
180
107
58
89
124
58
89
86
107
122
105
100
55
110
93
110
119
178
182
119
56
92
160
162
152
162
137
119
134
109
122
126
99
138
105
84
124
104
104
124
91
93
105
132
112
128
92
152
92
119
67
107
107
109
93
168
92
138
98
131
149
126
58
122
112
138
76
178
108
139
58
107
105
107
110
122
117
119
92
178
146
110
146
108
75
67
152
37
77
131
152
104
127
120
110
120
55
92
134
111
55
123
138
67
37
56
110
100
56
92
74
146
37
146
75
106
132
55
86
122
69
127
138
114
128
107
110
132
93
92
37
144
146
86
178
180
79
92
93
111
165
134
136
105
58
127
105
84
134
86
138
75
107
55
67
138
104
92
92
128
130
126
169
98
138
107
105
107
37
146
124
132
169
139
88
110
92
55
95
126
122
92
37
146
92
138
104
127
92
56
127
92
138
138
122
123
131
79
128
107
67
95
138
109
56
124
152
92
110
126
67
132
122
105
111
55
55
138
124
93
69
126
137
146
127
144
55
92
58
95
55
122
126
55
164
119
119
158
134
56
104
104
77
112
138
142
109
123
92
138
55
144
105
138
113
56
141
126
92
178
104
92
110
93
127
92
124
93
158
105
144
84
92
171
146
124
92
146
69
93
92
86
55
117
55
126
81
138
110
126
106
75
139
111
56
123
104
67
146
138
117
119
127
124
140
126
56
139
111
92
138
104
91
67
93
103
115
95
146
91
131
105
134
55
103
67
94
126
55
83
178
144
127
132
140
119
138
125
84
124
134
131
67
56
138
122
55
117
112
92
91
106
110
55
119
92
152
146
135
126
92
102
164
169
138
74
152
110
93
93
118
138
55
122
132
92
104
178
58
55
115
105
103
92
67
91
110
114
138
67
56
128
127
77
110
92
55
93
81
138
95
92
103
79
128
106
126
126
110
127
55
83
139
128
139
134
127
130
138
139
69
140
169
127
58
93
74
158
124
55
91
122
110
112
92
146
178
55
138
79
93
37
86
139
138
195
37
55
140
128
145
74
92
105
91
119
126
138
92
83
93
55
127
105
117
74
120
122
169
72
106
92
119
105
98
135
92
58
146
79
117
58
122
140
126
101
58
67
126
122
55
110
152
100
104
110
126
110
109
110
92
101
124
106
93
111
69
117
37
127
103
122
92
74
122
119
92
74
111
127
144
67
160
78
99
92
92
132
110
169
128
110
134
108
68
86
138
92
101
104
126
55
107
55
86
55
55
77
75
67
164
118
56
178
58
101
104
103
110
37
122
152
122
105
97
69
130
110
160
140
99
58
55
92
134
158
122
58
92
67
106
122
99
111
103
138
79
178
132
92
137
77
142
92
67
139
138
122
122
92
149
140
138
136
126
88
122
134
74
122
92
111
110
105
93
139
138
117
79
98
99
67
105
91
120
91
67
55
93
110
93
127
134
128
58
67
132
169
37
168
92
152
148
105
67
126
124
67
92
99
122
67
99
101
110
144
138
144
108
92
99
110
97
110
152
141
122
130
55
56
75
144
103
92
107
115
104
68
93
99
104
86
98
119
37
168
92
111
110
144
111
134
99
127
92
122
67
111
55
144
91
139
67
117
162
95
105
127
88
110
67
99
79
37
126
107
67
109
67
37
122
104
132
56
168
68
178
58
152
69
131
123
122
105
68
78
126
103
152
152
89
130
104
92
92
93
67
37
119
105
92
92
117
75
56
55
55
92
92
58
107
75
56
55
131
138
73
92
179
37
131
140
178
88
69
92
138
127
55
74
91
126
96
56
126
93
89
55
135
105
119
152
104
122
92
140
124
140
55
138
119
123
138
109
78
122
104
114
134
102
144
158
99
110
105
92
56
178
123
74
107
138
56
55
92
140
108
123
37
148
67
122
164
138
104
55
58
104
122
109
127
69
37
91
122
142
123
92
99
106
164
115
86
146
146
104
68
152
117
139
37
128
97
97
109
84
127
122
99
126
77
139
105
119
139
118
125
86
136
122
37
130
99
99
180
92
105
144
126
103
102
110
122
55
134
93
55
128
138
126
169
56
77
104
188
123
92
86
156
93
104
134
79
140
93
104
126
68
122
85
126
138
178
128
55
158
127
104
105
55
124
67
110
156
75
199
79
138
92
57
136
115
99
86
105
58
92
37
140
136
178
92
55
56
92
55
104
128
140
56
107
126
77
114
109
109
55
110
92
109
137
67
56
93
37
168
129
55
146
58
67
123
104
127
126
127
139
142
56
58
75
120
83
110
67
69
111
79
126
139
112
84
119
128
80
92
178
92
86
147
55
55
126
107
83
138
146
55
93
92
55
111
122
67
122
83
165
111
111
115
152
92
148
120
122
105
126
147
107
146
126
37
110
55
74
118
178
105
92
67
126
134
134
138
127
131
139
139
138
96
139
139
126
122
56
122
103
79
141
103
181
58
103
138
74
99
123
97
101
37
69
104
104
96
178
37
110
146
134
158
131
138
67
138
105
178
127
103
126
67
93
126
92
164
110
127
105
105
122
103
138
93
111
92
56
93
79
92
104
123
106
105
135
103
136
83
126
101
139
86
180
55
104
68
56
107
135
92
92
131
92
105
93
138
37
122
126
144
104
105
127
134
112
110
122
91
105
93
136
104
81
146
93
146
67
140
55
68
126
128
134
109
79
138
126
103
55
105
92
86
135
97
158
110
92
163
96
55
130
74
86
104
110
78
104
199
55
131
55
104
138
126
79
126
58
67
101
81
126
109
140
99
72
92
110
107
111
178
123
131
139
89
126
107
122
101
107
93
126
148
178
101
79
122
112
91
107
123
178
180
106
68
164
67
128
55
110
123
111
55
69
103
109
55
58
126
109
123
152
37
122
138
55
68
139
127
105
92
58
56
55
112
56
58
134
122
55
121
92
91
138
162
139
93
92
138
55
104
178
92
127
105
163
140
165
79
122
126
56
67
122
92
37
122
178
111
139
92
165
122
58
127
55
138
119
126
41
94
110
126
92
72
122
55
93
37
104
122
178
109
123
140
152
58
104
158
93
67
152
152
37
108
104
56
87
160
152
158
107
138
125
128
55
105
152
69
128
146
140
152
114
75
138
58
69
118
138
123
123
169
126
67
67
69
111
149
68
91
92
83
92
105
121
180
58
74
92
92
110
103
144
132
92
108
122
139
91
120
106
117
128
138
131
104
93
55
94
93
103
122
67
110
107
55
140
67
68
138
122
37
122
86
169
55
92
106
109
67
55
91
79
69
124
101
92
104
93
79
144
122
110
56
104
146
110
105
144
86
163
69
97
69
58
93
106
92
110
128
122
80
122
69
92
67
110
68
131
108
146
87
83
104
145
119
93
131
86
121
122
111
134
91
110
124
92
99
178
128
122
130
122
107
105
126
92
122
122
55
160
77
55
58
110
104
121
86
123
164
97
93
95
122
112
92
110
55
110
152
130
93
126
136
122
178
104
103
37
122
67
105
67
140
96
127
139
148
55
117
126
148
122
56
126
127
83
146
108
115
92
110
88
110
55
127
92
93
107
139
102
110
92
132
123
55
128
138
108
126
122
109
122
79
77
121
137
145
58
56
118
64
138
164
107
122
77
134
178
100
105
171
92
110
144
92
79
137
123
104
56
130
93
105
84
77
77
127
58
84
111
110
91
91
110
56
107
122
92
110
124
124
37
119
100
55
37
86
146
149
126
58
138
110
88
104
37
122
55
69
167
79
56
138
119
169
126
79
145
112
104
112
112
134
107
127
126
146
139
111
110
114
127
91
146
55
134
73
93
67
79
92
74
158
92
105
107
89
105
138
97
144
128
37
56
110
132
111
110
107
86
79
169
144
86
86
126
92
86
115
120
89
130
55
118
102
129
91
118
96
110
99
105
134
152
93
69
142
131
91
122
126
122
169
100
97
127
138
79
75
104
144
130
160
55
103
104
140
92
92
139
95
92
92
110
144
96
91
169
93
55
104
58
104
56
79
107
104
118
110
55
180
123
140
110
92
86
99
126
67
92
145
128
55
67
178
104
119
74
73
105
126
122
56
137
58
83
146
58
55
86
123
56
91
109
92
112
134
107
110
55
69
77
105
103
105
115
92
68
130
171
124
148
138
169
109
91
123
138
103
77
119
131
134
67
122
55
137
86
88
104
76
99
178
93
122
110
92
56
139
122
95
134
110
122
146
146
55
137
92
152
68
158
55
77
67
56
151
132
148
124
74
123
110
104
122
103
126
140
119
128
169
122
91
92
55
55
148
139
75
110
56
122
106
110
145
122
152
163
92
179
69
127
37
158
105
122
122
93
112
110
93
92
110
67
130
92
152
126
169
68
75
69
110
58
136
162
104
148
139
110
144
146
67
121
104
162
91
55
105
92
132
105
100
58
55
126
56
91
69
37
126
77
171
125
69
102
93
178
126
128
128
37
72
92
106
127
37
138
114
67
123
145
127
105
141
114
122
69
139
142
136
122
105
92
78
122
144
102
107
99
67
142
104
83
139
105
104
109
178
55
58
146
126
178
56
92
67
139
146
130
93
68
123
134
158
92
111
37
91
127
127
110
56
102
107
126
104
140
110
119
139
104
68
152
109
86
126
126
122
77
110
75
109
128
86
55
75
91
37
37
152
97
92
124
109
58
137
168
67
55
104
55
178
67
138
138
143
122
126
126
78
79
92
159
84
138
138
114
137
114
55
56
148
104
67
130
105
126
168
178
67
110
104
86
178
122
120
77
69
178
74
108
99
126
112
142
106
56
128
123
99
69
108
92
122
126
138
169
93
58
93
144
79
169
79
74
105
127
105
81
168
125
122
122
104
55
92
119
92
126
117
137
123
111
104
146
55
105
126
105
55
67
103
178
68
135
110
110
55
105
129
91
105
104
119
130
92
178
146
58
93
67
102
105
134
122
105
37
117
126
126
97
86
74
138
55
89
109
119
77
74
56
110
105
144
105
134
130
118
123
110
68
79
105
138
93
86
123
126
144
56
148
92
110
139
119
58
162
93
58
93
67
86
69
92
127
68
110
92
128
92
111
180
105
134
77
37
93
55
77
101
86
93
67
103
132
152
77
126
106
67
122
122
92
145
126
105
110
68
126
134
86
86
97
93
146
55
55
67
55
92
97
86
100
92
138
131
115
126
69
110
147
127
69
152
92
68
163
91
130
105
92
138
84
98
107
146
86
123
105
93
110
92
104
93
93
169
122
104
134
99
163
107
111
119
134
79
178
134
56
138
105
37
107
169
93
93
58
37
127
122
146
141
148
74
131
138
122
95
108
178
110
147
37
79
146
146
128
152
148
89
139
123
138
55
83
104
139
142
122
104
74
110
171
110
148
75
105
55
127
111
92
99
37
107
119
128
64
69
122
127
126
160
138
86
83
139
130
122
105
56
93
92
87
158
55
86
88
178
122
56
138
148
127
105
104
91
123
56
167
97
37
106
135
139
124
117
128
138
55
139
157
99
126
138
84
92
79
146
126
37
97
167
122
92
144
141
79
86
93
141
93
99
105
93
134
77
74
127
126
92
105
103
158
122
144
110
152
110
92
180
99
104
152
132
111
74
164
126
105
99
77
126
92
103
104
123
92
92
98
126
139
56
140
122
122
93
91
164
83
140
105
134
164
105
58
101
37
74
109
92
79
111
56
97
146
55
124
105
123
84
37
126
67
99
132
148
55
78
110
69
134
75
104
122
123
146
110
171
138
79
122
55
107
148
93
55
94
132
84
164
127
56
55
92
178
148
171
68
100
55
92
86
109
146
169
111
67
56
126
105
130
119
110
99
95
131
92
152
131
55
83
105
103
92
92
129
84
104
152
67
152
93
105
122
134
110
75
92
124
106
178
104
91
101
142
171
112
109
93
134
127
111
112
104
83
126
152
111
55
95
178
91
110
122
118
119
55
104
86
110
55
55
105
99
92
109
169
107
137
55
55
126
128
171
139
100
169
122
105
126
160
148
104
127
56
56
134
126
93
110
152
114
126
55
167
56
74
74
171
122
92
92
132
119
75
178
92
92
109
139
56
169
55
92
131
146
37
37
124
104
105
169
107
56
111
127
67
164
55
104
110
67
55
126
83
148
144
55
131
109
126
126
130
104
75
75
79
75
86
171
104
75
138
37
120
127
131
113
134
76
92
93
132
136
86
140
179
67
69
135
83
37
126
110
115
126
55
58
109
127
110
128
55
105
92
83
56
146
132
105
92
122
127
122
55
55
110
119
86
138
146
112
37
146
92
111
99
169
103
67
139
105
93
111
99
146
126
137
56
169
112
37
162
177
79
105
67
147
146
84
86
105
152
122
56
150
139
127
146
144
126
146
126
109
111
138
55
86
117
126
113
131
128
141
92
107
108
91
124
91
139
99
120
138
114
119
55
89
78
91
102
104
92
136
92
120
110
144
126
69
110
104
152
148
55
75
37
110
126
101
55
127
97
37
119
105
167
75
122
138
75
93
125
80
146
104
69
144
100
132
105
127
117
103
92
98
93
123
126
121
86
122
86
104
152
107
104
138
91
74
134
92
152
92
128
111
110
79
92
78
105
102
152
126
107
55
67
131
144
109
105
92
138
128
138
67
139
123
107
92
58
109
92
56
152
37
122
130
37
178
74
56
169
97
68
55
140
126
56
178
110
55
55
152
79
139
145
122
83
136
152
56
92
68
67
128
100
126
139
122
105
118
109
91
95
74
126
56
56
56
100
122
55
83
138
69
110
128
169
110
37
122
67
91
122
138
163
160
58
146
129
88
105
104
75
138
126
93
138
55
123
137
144
58
87
68
119
67
92
106
55
109
79
111
102
86
152
140
55
58
98
55
56
119
55
58
127
140
169
55
138
86
105
101
126
171
37
127
140
97
126
109
75
67
97
110
138
139
110
75
68
56
104
128
126
74
92
160
162
139
140
67
111
95
104
111
146
103
93
122
118
127
104
144
79
92
37
134
92
105
69
105
117
55
124
129
121
122
139
110
106
107
110
91
139
56
55
108
109
93
92
55
78
98
160
147
91
105
124
140
58
135
93
122
101
107
55
74
110
111
77
110
109
87
104
111
110
127
92
123
105
37
69
122
112
131
168
113
93
69
122
126
83
86
134
106
104
117
77
126
110
99
146
107
130
127
126
67
93
182
129
110
98
55
112
55
67
55
105
37
127
92
86
140
139
105
109
127
144
92
169
105
140
68
138
122
68
74
95
37
119
178
105
138
92
158
69
79
109
93
134
105
98
178
178
123
126
97
105
127
122
139
123
123
122
93
144
128
169
119
110
105
119
103
92
110
126
55
119
92
72
110
107
105
100
97
92
104
105
55
104
109
103
55
122
120
110
138
110
58
92
109
91
93
61
110
55
146
92
107
92
92
120
55
178
55
152
86
56
138
110
144
156
56
92
92
136
86
77
119
118
123
102
119
111
160
141
105
110
67
58
138
140
56
110
111
143
104
110
115
92
64
55
56
67
75
153
126
105
56
105
138
99
144
130
165
138
160
114
152
110
122
130
93
67
86
93
110
69
74
119
147
110
88
93
164
67
139
110
55
55
171
121
110
111
119
144
55
152
110
122
110
94
75
110
122
146
122
91
160
105
56
92
110
152
97
86
104
135
104
112
93
69
56
132
119
67
121
77
95
56
110
132
110
92
131
152
119
122
75
55
99
139
110
105
104
152
107
122
55
56
128
126
67
105
93
104
103
138
169
158
115
103
92
146
178
126
93
74
75
126
75
111
152
88
132
124
158
84
67
92
123
97
109
119
104
140
92
123
93
136
138
67
85
126
92
122
144
123
92
86
55
69
74
130
132
67
56
122
127
67
92
55
110
56
92
169
55
127
67
169
104
144
132
122
178
122
69
58
144
79
171
122
97
89
122
169
67
163
139
122
103
58
105
134
105
92
119
69
37
122
97
37
132
126
55
77
58
110
128
55
127
122
101
124
125
55
139
119
146
101
147
55
126
93
131
86
138
180
103
75
123
95
105
112
136
104
67
93
126
138
146
69
86
67
180
128
58
58
118
93
37
140
122
99
139
91
91
92
128
91
99
131
171
37
144
178
120
110
110
56
169
139
129
74
67
104
56
105
92
140
109
92
152
55
96
180
69
122
58
127
105
126
67
68
138
93
160
139
99
55
92
99
68
136
131
138
122
37
178
55
137
69
138
120
109
37
37
56
140
126
104
67
128
37
105
122
77
93
178
160
97
104
152
74
132
67
97
138
105
92
128
93
126
145
121
109
138
110
58
99
105
109
92
88
171
115
127
86
104
77
171
131
107
80
92
115
91
128
112
55
169
123
118
118
139
89
92
107
122
110
58
126
125
67
134
126
169
92
56
58
124
138
105
112
92
105
152
144
67
128
107
146
79
93
137
92
92
137
92
151
178
94
97
77
180
149
104
92
92
69
99
130
92
55
83
126
69
137
110
178
92
79
122
104
124
126
121
55
74
152
169
69
122
86
67
140
103
144
67
114
79
86
126
110
104
126
92
144
140
92
119
105
56
134
68
80
101
151
138
105
122
124
119
126
132
80
108
89
58
75
138
136
138
67
152
67
92
134
134
122
68
142
93
105
89
92
56
93
135
92
128
79
69
92
128
124
110
104
104
74
140
138
120
122
92
140
140
58
178
152
110
98
92
127
56
68
113
92
105
146
144
122
169
178
84
93
115
152
127
92
92
93
141
55
127
74
105
92
91
104
120
55
111
137
104
79
77
138
74
99
97
92
77
146
122
37
124
138
144
93
126
127
144
92
119
123
99
56
110
124
122
67
55
77
126
138
126
55
122
84
118
83
67
68
83
112
130
160
123
179
68
92
180
112
110
55
80
56
86
141
112
138
105
77
139
108
128
126
68
89
112
69
67
104
178
138
122
67
86
58
115
92
138
105
122
55
69
92
107
110
93
123
128
171
152
105
79
122
98
55
151
128
122
124
139
113
168
140
178
55
126
81
178
55
77
105
163
103
91
103
74
114
100
81
92
86
122
126
109
56
112
98
100
97
92
104
126
56
87
56
122
79
92
88
149
128
122
98
171
105
144
89
137
91
124
58
69
55
104
58
145
112
92
110
55
58
128
55
55
178
138
55
92
55
110
92
99
180
107
67
83
79
92
101
83
163
77
178
92
110
152
178
154
104
115
137
162
99
159
128
133
112
122
99
67
95
88
104
122
111
122
55
83
93
125
84
110
110
106
92
127
37
92
110
148
105
110
117
92
93
92
148
92
178
144
69
105
110
109
86
93
110
69
67
127
104
75
92
92
105
110
123
130
55
67
122
92
37
138
109
99
111
119
99
67
69
148
127
178
138
110
111
56
126
67
56
124
126
139
106
67
55
171
105
92
123
107
83
124
178
152
55
163
91
55
110
112
37
126
122
127
169
105
158
167
56
105
110
102
139
69
56
178
104
111
67
110
91
80
37
140
104
110
93
105
77
168
91
126
108
92
178
67
127
152
136
109
122
89
92
127
67
111
67
119
104
79
126
108
122
178
67
138
119
93
144
86
139
110
139
138
126
95
140
132
126
86
69
77
93
119
92
145
137
86
144
138
110
55
56
92
126
89
124
112
69
58
116
83
92
93
55
138
108
67
111
67
83
138
138
95
122
92
79
92
68
68
37
104
126
101
55
119
86
37
103
111
68
136
102
92
132
92
83
57
92
126
156
146
144
92
138
93
92
138
105
55
104
93
119
163
138
138
122
69
123
92
83
129
165
77
152
119
86
130
110
106
158
189
105
119
110
69
146
127
138
92
104
74
91
146
110
92
99
104
74
77
101
55
171
148
109
110
117
109
138
104
126
136
104
92
104
140
124
55
79
98
119
56
93
134
74
124
119
119
130
117
67
83
138
75
56
127
92
104
122
126
67
138
105
55
104
98
126
152
104
92
118
106
114
134
67
105
69
55
56
140
86
126
110
105
79
67
144
100
74
152
92
126
74
120
169
134
103
132
122
156
122
86
126
178
110
139
119
69
128
58
103
169
129
138
84
126
83
105
86
110
89
84
103
97
178
139
128
163
111
123
112
107
103
68
86
122
69
127
139
92
118
86
138
104
67
37
105
69
92
56
148
101
92
110
37
128
109
103
111
104
111
69
137
102
126
80
55
105
86
92
110
156
67
112
105
119
67
58
163
84
130
92
146
122
177
122
126
122
132
86
55
125
148
56
73
105
149
83
79
69
92
92
178
136
91
140
138
102
58
110
105
131
79
83
75
160
125
105
134
86
93
93
110
122
79
67
55
86
122
125
58
109
106
114
107
138
101
146
55
56
120
140
169
147
69
112
111
86
92
56
122
80
105
75
58
134
93
86
158
102
120
126
67
146
93
111
105
111
144
128
92
123
122
100
122
55
58
124
55
74
118
56
110
128
109
117
92
79
139
138
134
110
75
124
92
93
83
91
103
118
56
148
75
92
92
68
107
92
126
126
79
92
127
93
92
138
122
95
93
75
127
124
58
92
91
134
126
69
126
92
99
101
91
156
79
109
110
55
37
92
79
138
128
131
152
126
169
111
92
92
107
139
55
79
152
178
110
104
152
122
169
74
111
131
135
86
160
56
91
89
92
124
91
138
56
146
138
126
138
139
122
92
87
69
124
119
79
69
104
97
128
74
56
146
110
56
68
140
95
67
92
119
105
152
74
149
122
110
107
110
127
69
109
105
92
55
69
114
75
67
56
123
92
37
139
138
91
104
110
119
158
102
67
146
37
110
165
126
127
148
138
138
122
67
93
129
104
100
146
110
148
83
58
69
123
146
124
122
93
92
88
146
122
79
74
139
105
169
55
56
122
80
56
146
91
105
88
138
55
55
77
152
74
84
93
117
104
120
77
81
112
178
109
56
159
110
139
131
55
129
69
128
92
122
92
134
92
79
58
99
107
92
148
139
178
129
149
119
100
126
83
110
58
37
77
93
140
146
74
107
92
109
188
93
103
197
139
56
127
74
129
91
124
126
140
122
56
100
56
56
113
86
67
119
106
92
110
156
126
79
92
124
56
152
92
78
178
153
92
114
105
104
77
128
93
105
138
105
92
131
55
127
126
88
37
92
117
104
55
178
56
126
83
138
127
110
106
92
37
132
74
140
180
55
112
107
138
136
178
110
136
119
122
104
138
56
104
78
58
131
125
55
110
122
178
144
178
110
122
75
119
89
126
105
56
69
142
122
58
135
55
165
92
105
123
107
149
105
93
110
92
144
199
110
95
92
83
131
110
126
138
122
67
56
180
80
111
92
86
104
58
139
128
139
169
92
55
126
122
55
55
56
125
152
74
126
68
93
79
115
169
150
126
112
141
158
110
77
122
98
111
67
127
169
138
122
55
139
77
92
106
146
152
144
58
138
178
92
87
105
55
92
137
92
78
169
105
93
126
92
80
128
178
92
56
122
74
93
147
93
138
92
55
37
122
122
104
110
104
128
83
124
105
104
104
132
104
89
55
55
122
67
91
92
93
119
110
84
86
92
138
69
124
119
55
97
105
130
124
178
96
119
58
138
124
104
55
122
93
128
102
55
93
110
58
108
122
55
178
136
105
107
97
105
148
95
139
123
102
104
138
37
126
139
103
86
148
92
92
138
56
126
105
55
122
83
126
37
104
123
56
138
56
98
126
37
163
67
139
92
93
110
97
93
55
132
123
140
131
58
105
138
93
92
105
138
105
67
56
69
56
55
94
92
145
110
109
126
100
111
111
123
128
152
89
112
67
126
67
109
110
171
73
110
68
55
55
105
138
125
110
67
74
37
67
105
86
144
138
126
91
126
126
99
37
111
138
93
67
55
126
67
98
37
103
118
129
93
99
138
158
180
139
122
93
178
159
105
126
67
171
55
101
101
121
139
58
92
74
74
107
138
138
126
97
130
171
56
91
134
101
178
146
107
67
152
136
107
92
102
122
152
119
92
93
68
92
127
105
91
130
74
104
55
105
92
110
91
167
98
100
92
37
110
56
178
127
41
37
120
110
75
92
55
92
97
67
68
126
122
129
117
122
69
110
91
77
105
92
91
139
69
102
86
124
180
55
58
139
58
79
119
138
58
75
138
55
163
95
105
105
127
115
75
126
37
87
37
58
86
104
137
58
37
178
199
117
146
93
144
116
56
37
139
55
97
136
144
99
131
144
140
120
92
97
99
148
110
56
55
140
139
132
126
37
67
138
37
144
86
117
97
122
125
122
106
58
56
95
171
121
86
138
118
110
138
103
55
109
104
58
37
110
124
156
55
152
138
89
136
148
92
138
106
132
158
91
77
178
141
127
137
74
55
55
56
144
56
67
124
109
56
67
118
58
169
97
110
92
104
119
104
105
122
92
69
105
86
67
74
149
79
180
163
162
37
80
75
119
95
105
101
92
111
67
144
55
140
138
110
55
93
58
56
138
140
137
86
122
126
67
127
180
126
111
120
93
126
169
178
37
127
110
152
67
138
110
138
124
92
139
153
110
110
99
67
92
168
110
67
162
110
105
152
107
101
152
127
58
92
127
105
105
138
144
99
97
138
169
178
111
69
69
163
93
112
92
83
99
119
92
169
180
77
95
102
126
56
107
131
126
83
37
139
148
169
99
138
127
67
101
128
58
122
126
130
92
158
169
148
56
139
80
141
168
69
56
105
99
55
81
55
93
92
152
148
123
139
119
132
126
130
92
55
140
58
93
119
92
92
89
137
81
110
91
146
79
144
55
126
105
178
67
105
91
109
126
139
124
105
118
69
123
122
101
69
56
111
156
104
79
139
93
128
67
107
74
140
126
92
137
128
84
72
178
138
113
126
92
92
67
152
104
122
130
75
164
126
134
146
56
92
104
74
105
122
128
68
111
92
92
74
178
56
89
99
138
163
104
109
138
91
69
111
92
105
67
138
104
79
89
91
126
56
67
88
132
109
135
118
122
139
55
92
119
119
178
126
103
110
104
92
55
91
118
79
134
105
104
127
103
122
136
111
93
122
103
104
122
110
119
92
56
110
92
111
93
127
104
131
92
101
122
37
141
58
37
144
109
158
139
122
110
178
92
123
55
92
88
138
104
92
110
110
128
67
146
109
86
104
37
104
67
55
83
122
105
128
95
56
67
98
92
122
146
103
67
107
92
139
88
110
180
97
134
84
104
119
140
67
55
122
126
91
61
92
140
106
103
162
122
37
78
132
171
128
139
169
139
105
119
136
180
132
106
109
93
58
69
138
55
112
122
123
130
79
127
92
58
138
111
127
178
123
163
92
99
144
79
110
144
92
122
79
93
134
97
171
126
122
110
178
86
122
84
92
120
86
144
92
91
55
80
122
103
69
103
126
103
105
126
92
86
99
107
110
92
56
150
92
128
105
55
99
104
132
128
55
86
58
95
123
92
105
144
171
105
55
92
86
104
169
55
86
144
67
93
111
105
92
110
126
99
119
55
138
180
169
58
93
104
171
111
126
142
110
99
74
89
93
69
55
69
92
165
124
92
160
92
109
58
112
75
37
104
127
138
97
182
110
79
58
55
111
93
146
92
98
58
93
89
68
109
129
112
136
67
86
92
149
112
135
83
97
92
92
37
160
178
111
152
178
55
93
56
56
171
110
97
110
106
55
115
163
163
55
127
122
79
67
109
110
92
78
37
122
95
146
123
188
86
126
138
92
152
104
149
135
124
105
105
127
138
104
75
110
138
100
68
117
107
67
122
139
93
37
37
92
138
55
91
104
124
126
144
86
86
169
98
127
105
69
122
55
134
139
55
139
122
110
92
146
67
122
144
128
83
128
139
109
139
123
67
93
139
178
124
37
93
80
67
67
127
79
118
105
138
99
115
122
92
111
87
56
58
109
104
148
124
168
91
122
111
93
158
37
86
140
105
127
124
79
128
107
55
104
67
91
132
99
134
75
126
110
55
122
109
56
126
111
110
67
138
58
102
67
103
79
55
146
104
56
132
122
93
58
37
119
127
92
99
67
110
142
132
100
134
122
126
111
68
147
134
92
178
56
100
136
92
122
139
88
68
127
104
140
142
152
93
144
92
74
56
105
118
101
37
138
158
92
92
107
67
126
67
178
69
67
99
126
67
138
146
122
117
144
69
72
104
158
93
178
105
37
114
55
55
97
104
126
144
138
91
83
101
67
168
126
92
110
92
55
135
148
96
156
151
100
69
109
111
105
97
138
91
92
93
37
114
163
99
144
119
144
104
113
110
79
139
123
67
92
138
58
107
140
115
126
127
110
69
169
37
67
127
56
67
146
93
92
67
125
126
144
135
128
138
86
55
114
126
138
130
152
178
69
144
152
56
138
76
55
110
152
131
110
122
106
103
138
58
58
76
67
77
125
67
37
56
178
67
140
109
86
86
55
91
110
126
67
122
92
119
106
37
134
123
144
140
127
105
67
110
169
93
136
138
126
86
37
55
131
158
92
77
138
122
69
64
119
111
74
105
56
134
163
119
55
68
144
139
105
123
123
55
144
122
119
137
105
130
75
134
77
128
41
93
114
123
56
104
127
55
104
58
114
122
92
144
128
105
138
92
132
104
168
37
92
127
79
105
83
110
67
144
124
122
75
126
146
158
139
95
104
92
112
105
109
86
138
79
127
55
180
110
79
55
89
179
144
135
79
81
110
180
69
79
152
55
92
178
118
126
92
86
138
102
138
110
122
105
105
104
110
69
92
67
71
122
105
146
134
124
58
127
125
58
139
86
101
139
110
138
146
88
93
93
103
167
91
110
138
92
93
126
93
107
37
110
93
122
91
168
37
67
75
117
143
104
55
69
119
138
134
146
148
134
56
37
105
78
122
110
118
124
92
131
102
126
105
144
130
178
105
107
142
151
93
134
67
171
104
124
122
111
91
105
139
110
55
105
107
105
134
169
132
56
159
127
119
77
119
109
92
126
168
58
110
86
110
106
178
86
88
124
122
83
98
127
37
92
92
122
152
171
101
138
67
105
138
37
108
128
69
132
67
169
67
169
138
128
164
127
178
75
67
61
55
67
127
104
110
110
110
138
93
92
93
139
139
146
109
94
138
100
101
92
146
127
93
122
105
75
91
55
104
77
144
86
139
126
108
92
92
69
100
99
169
55
138
92
110
126
55
135
127
67
92
75
112
122
77
139
92
109
119
158
122
111
110
123
95
138
99
130
148
111
104
37
93
104
152
139
86
111
178
86
122
93
122
123
146
56
91
55
111
111
104
122
98
91
37
108
37
139
110
122
86
37
84
55
112
122
123
123
109
122
88
77
139
55
126
124
93
179
93
123
92
92
104
105
122
93
67
93
102
67
84
89
110
104
55
144
124
92
67
55
55
93
180
144
110
80
93
92
131
91
137
56
86
130
92
92
103
122
126
138
95
79
149
145
107
89
55
69
86
120
160
107
144
146
120
105
102
110
110
101
168
97
105
77
100
79
131
131
146
137
144
55
110
127
58
100
119
104
113
122
178
153
104
134
58
37
106
110
139
79
93
92
140
77
136
58
92
69
165
69
55
75
83
55
92
146
104
148
124
91
119
92
139
122
178
140
152
124
109
119
107
128
137
92
106
88
103
102
122
92
109
56
107
124
111
138
93
178
106
75
105
69
67
97
67
68
107
69
122
140
105
78
178
58
92
91
169
97
105
142
122
105
104
126
111
99
86
110
86
95
127
56
55
119
77
126
106
127
131
93
37
127
138
171
110
91
110
148
92
110
74
117
37
171
88
75
123
126
55
69
105
126
105
123
86
86
55
56
69
134
169
152
122
167
126
100
122
105
69
110
109
55
92
108
84
86
100
67
122
158
37
123
171
69
126
55
92
123
83
169
92
129
58
126
139
110
92
55
91
75
67
110
77
128
103
178
93
167
110
87
99
138
69
103
123
91
55
152
137
123
93
122
86
138
56
69
104
122
56
101
110
152
58
138
171
95
93
122
92
107
169
126
104
119
144
102
162
125
37
92
104
86
122
92
138
55
92
97
110
86
67
56
146
128
93
152
55
144
86
107
79
92
92
93
148
81
92
178
67
122
119
110
119
105
67
110
158
92
83
180
56
124
139
136
58
93
119
37
165
92
111
88
122
105
92
128
69
126
55
58
55
86
110
67
88
123
55
79
123
109
122
110
105
138
139
110
146
180
126
75
92
92
79
114
89
169
140
101
127
92
105
169
93
118
178
111
92
138
122
103
127
91
37
127
148
122
148
168
118
110
111
77
138
139
123
163
109
163
55
169
37
138
105
101
73
180
126
56
101
122
119
126
138
56
167
126
103
92
86
120
67
55
145
92
93
150
68
56
105
89
152
127
106
102
144
192
67
100
105
122
178
80
180
92
91
105
138
140
128
128
111
58
128
55
156
55
109
78
69
55
171
110
97
67
111
58
55
108
104
55
92
178
79
144
67
55
69
119
69
110
104
138
55
134
122
71
111
95
118
178
128
84
105
105
119
74
162
93
101
67
119
105
92
124
37
125
110
55
162
67
128
131
77
124
138
104
37
67
79
152
107
136
58
104
144
163
99
114
171
55
126
55
93
84
37
138
122
94
104
69
146
92
122
110
110
168
178
105
120
122
58
91
139
138
123
138
180
107
127
136
86
104
92
118
67
122
132
110
55
55
134
171
110
139
58
152
77
100
132
102
58
92
86
122
123
69
58
69
122
100
124
121
128
55
120
138
107
107
119
126
101
136
58
122
105
55
123
104
149
126
111
110
104
127
105
127
178
97
69
168
86
83
107
86
92
92
58
127
118
139
127
134
86
141
140
103
122
67
37
192
120
93
138
148
93
112
126
100
104
86
91
129
110
77
118
109
92
178
67
122
180
168
138
67
56
126
130
140
92
55
144
122
67
56
91
152
93
56
67
138
132
135
152
92
77
79
92
120
122
93
67
55
89
110
120
144
55
105
138
56
58
122
152
126
79
67
92
169
128
110
111
105
98
122
125
105
169
93
108
160
138
92
122
178
127
105
55
96
109
67
124
97
142
92
126
128
110
92
101
108
69
110
111
74
102
126
55
99
146
152
115
110
180
105
56
110
138
69
118
76
127
86
139
56
138
109
93
138
67
92
110
105
69
58
139
130
55
122
142
115
67
110
119
98
93
81
58
55
120
105
88
68
139
69
92
58
138
37
92
105
122
110
37
72
86
124
91
110
86
122
55
100
127
91
104
77
171
128
55
139
79
131
111
103
100
92
195
93
91
86
108
110
132
122
122
92
107
108
118
92
180
99
138
105
55
128
55
134
139
56
111
68
165
162
55
126
37
67
122
146
119
105
56
144
103
123
128
169
92
97
110
107
152
92
122
37
92
58
138
105
124
104
146
141
128
153
103
152
92
110
169
74
158
92
178
126
122
77
139
105
109
132
107
148
56
105
110
92
93
122
56
178
127
138
107
105
119
167
107
55
89
105
74
103
152
110
171
55
178
130
119
93
55
138
55
69
110
135
55
137
178
110
37
126
69
86
97
92
127
100
110
158
148
99
126
110
110
128
103
92
109
56
105
138
56
126
104
102
92
117
140
123
114
110
92
138
67
110
55
136
104
83
104
89
128
105
69
86
92
75
123
110
108
101
169
168
127
148
37
93
113
67
105
152
92
102
92
110
74
92
104
105
122
144
55
126
134
92
140
92
93
93
58
102
131
140
120
55
126
101
146
118
55
139
93
102
77
78
77
91
122
128
169
122
86
122
122
126
119
171
158
110
80
91
122
55
134
123
98
97
93
93
56
99
69
122
144
67
131
111
55
104
125
67
83
37
79
105
171
122
79
58
122
140
134
127
171
139
56
92
112
107
138
138
126
152
163
105
140
100
75
110
112
129
67
81
152
92
74
55
67
122
92
110
37
141
69
118
55
105
88
75
55
80
122
144
92
126
152
56
58
163
110
105
117
122
122
79
56
120
93
105
139
122
73
138
139
197
101
110
126
122
105
146
37
178
178
110
122
92
67
139
58
149
75
122
55
135
122
135
104
138
130
103
77
91
122
146
152
135
55
92
86
122
138
55
94
127
94
178
169
164
122
131
109
112
105
56
92
126
114
180
67
55
93
127
105
92
55
178
55
92
140
79
55
141
110
122
130
104
37
105
139
92
110
122
110
95
37
110
120
83
67
83
109
79
127
122
138
132
37
79
92
100
119
93
120
55
139
122
55
91
103
127
99
132
58
91
107
78
56
92
92
127
67
126
99
92
134
127
139
149
122
136
92
86
110
81
112
119
84
37
139
86
110
110
92
119
141
105
126
110
92
75
144
146
102
122
152
86
37
160
169
104
55
92
67
178
119
108
148
152
55
55
123
126
165
119
107
104
95
105
127
92
75
92
55
75
92
93
156
55
86
114
105
104
75
124
106
134
138
152
131
79
86
98
127
79
75
92
55
98
37
97
164
67
37
55
126
144
148
131
58
128
126
103
114
88
181
74
122
109
58
74
127
127
104
110
134
138
132
74
128
160
69
92
71
131
109
55
119
55
55
127
86
109
92
122
178
144
122
163
91
83
92
99
122
124
169
86
78
123
122
92
105
104
75
104
132
92
55
37
126
138
88
139
129
129
169
69
89
105
178
151
91
118
56
126
107
119
139
158
136
58
110
120
138
122
148
110
93
101
79
101
77
69
127
101
99
104
55
58
86
73
144
92
130
128
144
144
119
92
134
115
92
105
159
126
122
105
73
127
122
67
122
130
101
75
55
104
119
127
122
93
56
91
123
93
88
74
92
140
105
139
122
167
138
77
151
152
127
56
122
92
56
55
134
56
119
122
104
77
126
158
101
67
111
112
122
146
122
56
144
171
37
104
123
92
127
122
55
77
178
37
93
55
56
104
127
78
140
78
162
127
125
92
134
135
104
91
92
101
146
88
152
104
92
130
99
55
180
56
69
122
110
144
140
104
92
171
69
106
55
56
152
139
169
55
91
105
122
69
109
143
61
127
107
74
101
85
126
126
160
119
131
77
88
122
93
158
109
124
67
99
126
105
37
110
58
130
120
91
125
79
79
105
139
74
92
127
139
92
76
102
146
91
114
110
122
146
163
105
104
37
136
58
126
109
122
69
138
37
93
123
92
199
93
74
119
126
163
158
55
152
56
122
93
92
132
127
144
119
126
83
122
122
139
108
58
55
110
105
144
105
138
138
58
83
105
104
119
56
124
138
99
119
129
109
104
109
56
128
119
122
100
74
58
168
69
104
110
56
105
77
58
58
93
127
107
123
107
105
79
122
132
138
122
98
136
91
109
57
77
114
77
93
134
139
122
79
178
104
122
112
67
138
97
94
133
55
105
92
103
110
106
107
126
122
163
127
138
55
138
119
123
100
37
67
88
75
123
37
180
92
113
92
93
67
144
160
130
134
92
110
182
123
67
37
104
178
79
119
58
121
124
122
122
79
122
141
104
86
69
92
67
146
126
95
108
58
75
104
103
144
105
69
105
110
105
92
123
55
146
138
55
114
101
142
86
122
92
69
152
164
110
119
139
93
78
126
135
122
178
112
55
67
107
178
55
123
107
132
127
105
139
126
138
80
79
136
123
56
105
126
117
67
76
91
149
122
79
75
127
123
91
122
79
92
100
126
105
55
92
77
128
101
37
122
92
99
37
113
93
55
92
146
152
37
139
127
122
105
152
126
104
103
37
124
138
139
86
110
67
132
74
55
75
146
83
55
56
188
122
122
110
105
77
126
56
139
127
104
122
110
84
37
144
107
139
118
117
106
140
105
102
158
92
92
132
104
178
138
110
139
110
87
93
91
79
131
142
37
164
93
75
122
77
69
105
58
37
107
92
158
144
105
114
92
69
154
122
93
122
123
105
104
105
137
109
111
131
109
125
122
146
104
98
56
92
98
171
140
111
103
92
180
92
99
177
110
37
104
126
178
55
77
75
103
55
55
124
171
92
122
55
165
104
86
99
55
178
55
144
144
58
149
86
134
122
67
92
37
110
75
55
55
83
55
124
137
104
110
126
138
123
127
55
119
126
122
165
103
69
126
126
110
104
144
122
127
109
92
55
109
67
122
79
130
139
75
178
146
127
110
127
37
110
128
152
67
139
109
56
105
178
58
119
109
88
103
168
126
126
92
128
83
162
178
91
58
169
100
37
99
140
162
152
105
146
101
91
126
110
110
140
162
37
55
122
130
105
104
55
123
152
55
110
114
67
138
134
92
169
136
98
56
55
144
122
92
107
124
119
168
158
84
100
105
55
105
117
139
105
122
105
148
58
67
152
92
135
103
55
144
79
83
146
127
102
55
119
92
146
131
138
98
138
92
122
100
178
55
110
119
72
138
105
92
74
123
136
125
99
75
119
125
99
110
128
123
126
119
127
109
110
37
92
126
160
152
37
146
105
55
58
92
89
55
55
91
180
37
92
103
114
122
104
122
127
144
132
178
58
107
105
55
99
169
92
67
105
58
138
152
92
55
123
126
146
127
105
107
58
168
78
119
55
107
79
55
69
58
104
69
144
67
93
122
137
56
110
58
126
128
102
79
110
86
56
80
111
58
118
157
146
67
79
67
123
79
92
56
128
105
99
100
118
56
134
67
93
123
109
67
122
128
167
130
56
162
107
138
146
99
58
105
86
163
104
105
136
138
109
56
58
128
67
103
111
119
122
122
110
99
138
74
136
136
139
134
109
92
165
127
105
144
111
139
111
103
122
105
104
56
122
56
144
114
178
138
103
78
79
56
89
55
92
132
127
86
93
126
131
93
138
86
99
91
127
92
67
109
79
178
37
169
37
93
73
67
122
37
105
124
138
79
122
138
103
58
158
128
101
92
122
113
68
75
105
92
122
117
104
122
132
110
140
55
105
131
77
104
110
142
139
158
75
124
104
169
37
146
74
137
129
111
107
72
86
126
111
68
74
120
69
128
91
56
105
178
124
92
75
86
178
123
74
91
106
91
102
139
130
109
134
86
146
110
122
145
79
122
110
107
74
146
93
144
142
97
79
134
162
91
75
122
92
93
37
74
130
68
105
169
180
110
37
105
138
93
111
104
58
126
162
69
143
107
105
92
138
55
92
67
56
130
55
93
104
128
97
126
122
117
67
56
120
138
55
122
104
99
92
55
56
74
86
122
146
109
138
55
95
74
105
92
182
55
92
146
104
169
92
109
101
92
119
117
58
74
122
67
69
124
97
105
120
105
111
171
92
105
136
56
146
92
197
123
122
130
75
106
138
109
56
56
171
178
162
99
68
92
130
110
143
75
144
77
144
86
104
55
67
110
112
110
77
138
58
93
99
55
132
105
92
105
106
144
37
105
79
92
67
77
109
100
55
124
132
55
110
58
55
86
123
75
55
105
131
126
142
92
122
91
86
110
67
139
138
144
93
151
58
110
111
69
83
86
106
168
158
120
55
144
152
67
55
138
86
58
139
110
99
105
92
37
152
106
69
56
97
92
75
109
152
92
91
126
55
139
158
79
92
69
92
110
122
126
56
58
99
142
56
77
105
79
77
68
89
56
139
152
107
128
122
178
77
105
102
152
119
162
152
146
146
56
103
132
58
134
163
178
103
160
148
79
104
132
86
97
100
105
68
126
55
86
180
58
134
152
131
92
79
131
102
138
117
92
128
92
127
58
105
126
104
130
86
92
110
124
119
139
86
37
138
110
56
128
55
110
127
105
55
77
105
139
37
167
74
109
128
123
109
107
138
95
169
122
111
158
120
127
128
104
178
37
138
115
136
119
105
99
107
96
93
138
110
67
104
113
110
122
158
55
110
98
104
67
130
116
110
123
74
83
58
55
144
92
129
171
139
146
67
55
122
100
144
144
136
139
160
92
55
86
56
178
138
86
152
67
58
88
152
55
107
105
93
67
86
77
109
122
67
119
107
142
136
91
56
110
130
77
56
107
144
68
77
105
139
113
58
110
107
105
138
92
92
127
74
119
145
69
118
92
87
152
56
110
120
136
112
134
126
100
127
160
97
123
55
99
92
91
92
105
55
79
139
126
105
99
69
134
69
75
92
110
134
95
126
110
122
138
37
105
61
110
128
55
103
56
67
37
122
102
79
92
83
97
55
127
126
61
111
92
110
93
163
92
152
126
55
109
91
130
110
55
37
122
67
108
74
105
73
56
98
152
92
78
139
108
127
79
127
105
126
75
67
178
37
86
92
67
110
55
105
139
110
69
101
92
109
92
138
138
83
128
115
56
84
126
146
108
158
138
121
113
68
91
109
69
55
128
123
122
102
144
119
69
106
127
104
67
104
125
131
169
111
102
112
112
138
55
128
67
177
110
107
178
92
83
122
140
99
79
110
56
87
67
56
126
122
55
163
37
110
119
109
111
142
105
69
124
152
144
128
83
123
37
117
114
58
74
137
105
86
92
81
120
114
134
127
103
138
102
132
122
93
148
56
123
126
107
134
122
138
144
132
91
104
139
136
101
146
126
127
92
83
114
112
146
103
92
103
67
119
55
178
92
37
144
89
110
139
79
139
102
67
92
56
105
178
55
69
131
93
165
105
55
119
104
69
69
105
67
78
79
92
105
69
110
113
138
92
86
74
75
144
99
55
75
163
83
122
88
138
144
126
100
92
144
146
136
58
139
178
119
169
75
134
110
139
104
103
105
111
178
56
105
162
107
37
92
55
105
138
123
140
105
92
112
122
112
92
105
56
105
55
95
139
56
119
56
37
67
92
107
86
122
138
120
92
92
68
120
140
92
86
104
111
75
77
93
84
147
104
75
128
93
131
101
84
126
105
105
151
118
119
146
105
104
140
117
160
86
122
110
91
92
126
107
152
122
122
112
99
99
91
99
79
92
83
105
86
58
126
101
56
55
110
139
131
135
93
127
106
92
92
103
69
103
99
79
126
110
55
73
91
122
86
95
122
119
105
152
180
92
110
141
55
122
122
134
131
138
91
122
152
56
178
79
163
146
144
105
58
139
158
103
135
103
92
122
177
111
105
80
79
92
127
115
134
104
92
37
37
92
122
55
93
114
119
58
69
86
119
92
169
162
104
58
93
56
69
109
145
148
110
139
105
144
105
67
98
127
110
79
86
123
93
96
99
122
130
55
67
92
111
126
130
126
99
37
138
55
77
163
105
178
127
126
134
146
106
61
67
92
110
74
144
91
77
56
56
124
91
144
101
134
122
93
56
92
101
83
138
138
139
92
55
111
144
92
127
104
69
122
110
81
110
56
109
69
107
110
67
58
138
120
121
146
37
80
92
148
110
114
104
122
146
130
93
136
146
122
110
162
118
110
126
92
84
158
129
126
74
169
86
91
67
111
94
134
139
68
55
55
168
139
114
180
91
77
122
79
167
104
91
122
86
139
74
67
138
77
105
171
105
107
67
144
74
92
110
122
86
127
123
128
138
55
92
104
104
169
56
126
67
138
79
105
111
138
105
105
98
67
144
138
195
69
111
111
69
92
107
67
178
37
69
126
91
105
37
67
110
144
105
55
69
171
124
56
168
100
138
92
92
97
110
128
119
56
109
105
84
119
68
134
114
127
146
37
92
188
92
55
56
152
130
138
100
69
110
138
55
92
86
69
130
56
110
164
113
165
122
104
114
68
107
126
126
180
86
143
87
152
138
105
92
110
110
92
100
106
126
102
93
127
192
77
92
111
178
92
160
141
89
122
122
55
126
123
119
102
101
108
180
105
92
134
56
128
122
56
77
105
55
123
132
138
55
78
56
92
126
126
122
122
110
92
83
92
107
89
89
111
127
126
103
93
164
110
67
110
95
79
180
77
55
138
105
112
122
80
139
97
105
146
92
77
75
180
84
123
37
104
55
128
126
119
171
92
152
55
120
95
138
149
105
37
105
165
67
98
114
99
83
103
103
37
168
112
152
92
119
141
67
55
152
100
126
148
93
77
58
97
100
126
144
140
111
69
104
107
37
98
178
122
79
165
140
86
178
37
104
55
124
138
122
169
140
110
128
146
144
67
107
111
99
67
127
91
86
67
108
97
107
100
127
88
86
77
139
92
105
158
58
104
68
110
122
83
122
68
56
124
146
67
138
92
128
104
93
67
79
92
92
105
105
148
76
119
79
144
117
115
146
152
105
126
58
55
69
86
126
55
99
99
140
102
110
138
142
140
152
37
146
69
146
56
152
103
152
139
93
144
110
92
67
119
137
93
146
141
131
97
138
67
121
105
128
126
93
84
144
140
107
124
126
181
182
111
127
106
55
156
126
95
140
115
76
144
146
77
67
110
55
169
74
126
138
139
178
109
138
55
134
119
127
127
117
69
101
139
105
58
92
140
58
146
109
56
109
109
83
126
92
86
126
128
127
79
142
92
140
139
144
138
110
92
99
58
74
55
110
163
122
55
126
149
99
128
112
92
144
105
178
55
67
142
92
126
122
77
105
97
86
55
75
58
67
148
104
152
91
74
37
123
146
152
75
55
121
101
119
55
91
92
169
56
132
122
104
92
138
111
58
146
117
77
139
138
94
74
127
77
112
171
84
105
151
86
146
163
138
168
113
83
58
144
80
93
105
168
163
92
126
110
100
95
92
86
104
104
91
127
55
105
98
55
115
93
93
92
178
110
126
127
67
108
123
55
120
83
69
55
55
110
92
96
146
167
106
107
108
105
91
144
134
126
79
140
55
68
138
110
144
67
92
131
103
120
67
104
92
92
67
37
69
92
75
108
104
67
119
131
97
105
67
92
99
178
93
126
67
67
178
100
104
68
162
100
122
169
92
92
86
55
92
142
138
99
37
105
110
110
126
92
138
105
146
111
93
93
75
110
122
112
97
129
148
114
122
138
74
122
138
67
67
93
101
130
117
92
139
107
74
92
146
67
123
106
119
110
58
126
126
74
104
56
55
67
111
74
105
110
92
126
126
93
92
167
162
110
91
56
177
92
127
132
119
122
101
138
105
128
171
152
58
122
138
111
148
67
135
68
110
84
169
68
108
142
93
105
69
140
37
188
37
76
107
92
105
127
55
169
152
104
67
91
122
58
55
86
91
152
101
105
169
92
84
77
55
91
126
103
55
86
86
178
97
92
37
56
128
136
86
146
37
92
75
111
139
37
126
92
99
117
58
138
56
171
56
105
93
178
92
55
148
114
123
146
168
139
74
104
123
92
122
126
105
131
139
55
112
167
84
122
93
123
56
122
115
96
146
92
123
105
110
113
139
92
119
56
55
58
122
109
105
55
78
58
105
171
112
139
84
110
37
56
126
67
86
109
158
67
93
127
91
123
67
134
122
152
120
69
126
110
92
102
69
79
178
119
99
110
104
138
93
122
180
105
69
92
77
56
86
61
122
138
92
110
139
67
97
124
124
109
110
138
138
108
152
105
86
122
92
147
79
130
55
144
169
92
171
98
126
158
119
80
69
128
152
126
152
105
178
107
69
69
77
132
56
92
93
122
120
56
169
110
88
105
67
122
117
122
74
93
74
93
163
105
131
105
56
163
109
126
56
135
55
126
55
37
126
109
69
77
138
104
56
110
75
123
92
80
126
105
127
178
144
178
92
134
178
138
68
92
55
92
105
122
122
111
139
119
162
99
93
134
104
92
129
56
37
105
128
139
120
102
180
119
105
107
77
122
111
158
104
37
117
122
55
97
100
110
139
126
58
61
168
104
37
79
55
139
79
140
136
178
112
78
122
105
139
104
152
139
55
138
110
136
111
102
98
179
55
103
56
56
92
132
138
178
106
92
105
67
95
92
67
140
105
109
75
105
106
105
101
144
67
123
109
56
103
199
55
83
122
109
84
55
97
105
132
171
130
93
126
110
103
92
124
98
74
136
55
92
93
86
74
134
126
55
92
122
74
74
55
56
68
178
128
79
144
77
135
126
55
69
138
110
92
126
164
113
113
55
139
178
67
58
91
92
92
103
126
119
110
75
122
92
110
114
148
124
124
105
83
55
131
104
126
152
75
144
97
169
92
103
163
89
110
67
122
104
56
92
86
107
106
144
152
97
55
178
110
144
56
102
114
119
99
37
109
130
122
74
89
123
95
92
138
127
105
68
146
110
55
76
134
111
118
69
122
126
128
100
111
178
93
124
103
92
111
86
122
126
169
92
112
37
111
55
136
126
122
67
144
126
92
104
126
144
123
56
111
92
111
55
144
92
124
75
56
105
127
74
91
110
99
92
37
138
122
110
117
127
122
84
110
89
171
67
37
138
95
58
126
126
104
107
111
69
99
146
130
95
128
148
74
122
111
55
105
128
69
138
56
55
123
114
123
105
74
84
124
88
105
105
126
127
138
144
92
102
92
92
106
168
123
105
178
93
130
92
138
102
158
68
79
105
92
138
162
147
91
103
139
152
111
109
89
124
55
199
78
119
109
128
111
131
152
168
92
126
86
122
128
168
127
92
55
55
128
105
117
110
122
86
87
74
56
152
79
126
126
138
97
112
91
146
58
55
119
110
104
92
105
122
180
171
171
127
140
123
58
55
79
122
96
69
77
152
119
74
93
56
130
119
79
56
55
163
69
75
91
67
127
135
144
56
79
55
55
67
128
79
98
110
55
109
105
103
37
122
55
92
76
138
37
93
144
145
55
148
178
105
103
152
103
138
67
126
55
81
55
56
105
105
127
98
93
125
67
119
92
69
169
106
92
130
137
58
68
160
55
146
122
115
110
160
163
56
119
84
92
69
92
92
138
92
92
140
110
76
79
110
138
127
126
178
146
128
93
128
122
91
138
67
130
92
92
171
55
86
115
146
104
105
126
107
77
74
109
146
146
139
119
92
126
75
92
111
158
109
109
75
122
146
146
138
110
122
110
119
152
56
122
126
182
135
126
58
127
134
67
102
119
114
138
152
144
56
56
93
55
169
123
152
178
144
67
67
178
69
138
111
56
110
126
58
126
104
131
104
69
93
119
95
110
144
91
178
110
92
122
56
74
92
56
137
123
122
75
122
107
163
93
144
58
86
110
93
95
55
104
104
119
75
91
92
110
69
93
88
119
109
163
148
96
126
138
107
107
75
92
120
107
122
122
67
105
158
87
122
92
98
55
165
178
86
55
91
104
134
139
86
119
67
58
55
105
165
105
55
118
92
37
127
128
135
55
103
107
118
100
136
110
169
93
142
178
37
56
122
197
98
126
55
140
145
144
105
126
103
107
93
115
92
95
152
97
37
138
86
93
101
68
139
178
134
92
104
104
77
92
69
93
129
139
148
110
122
58
102
37
131
180
105
92
144
103
84
134
120
139
37
124
122
110
99
91
146
138
118
93
134
91
119
67
102
122
92
92
122
136
107
91
122
69
110
58
58
105
55
132
199
129
139
152
180
108
106
74
110
171
99
92
180
132
111
101
110
138
117
67
58
127
105
87
68
69
146
134
105
37
122
56
138
171
126
138
122
169
107
69
104
163
74
79
102
37
110
84
56
97
110
91
178
79
138
178
126
110
97
136
110
93
122
132
93
138
107
55
107
90
139
122
105
178
104
123
55
113
140
144
91
127
138
139
79
92
148
139
108
144
178
138
114
84
67
138
171
86
124
37
55
114
92
67
92
121
55
139
178
158
86
107
107
178
92
109
67
122
122
56
55
119
134
77
93
127
97
107
58
132
136
152
104
105
67
37
74
178
139
55
55
110
37
91
148
122
145
110
37
105
67
119
135
101
110
122
92
94
69
134
107
37
102
127
69
138
111
74
146
136
37
81
122
91
167
95
131
165
110
114
92
117
91
127
83
144
132
55
102
127
128
128
126
68
111
74
102
100
144
110
178
123
55
119
69
110
37
123
56
56
108
127
122
106
101
92
92
55
139
138
105
68
163
92
171
101
152
164
67
83
110
138
67
55
169
126
79
122
105
97
146
92
55
139
114
77
77
138
93
122
148
91
107
122
91
69
95
37
99
104
104
92
105
104
112
118
139
77
127
129
130
114
144
127
91
146
135
56
110
56
105
74
69
148
171
93
112
148
121
122
126
92
106
92
104
126
99
105
92
97
100
55
162
77
141
131
138
126
138
122
93
123
105
91
61
131
56
110
120
103
84
162
122
124
122
55
165
110
130
103
104
110
188
126
123
37
108
98
178
139
169
93
55
37
77
109
124
58
199
144
103
164
75
141
138
67
58
152
37
110
122
130
74
152
104
127
126
149
93
109
55
104
138
58
139
105
94
124
122
93
93
37
100
142
93
92
110
55
89
69
98
146
102
140
148
110
67
104
178
69
103
124
56
92
79
118
92
92
93
79
92
91
55
138
97
67
162
178
108
67
92
110
131
129
127
67
122
104
127
99
93
37
55
140
117
56
122
79
126
144
92
74
130
122
56
107
105
144
137
106
86
74
104
127
67
146
97
124
122
93
56
124
83
136
144
110
55
58
103
67
138
139
69
126
139
107
144
105
127
96
92
58
99
110
55
129
167
105
107
129
124
92
106
105
162
58
55
165
112
132
58
134
109
68
178
92
58
158
93
104
105
110
93
122
105
58
55
79
56
122
178
77
55
119
58
138
101
79
68
67
165
56
131
75
67
83
89
169
178
136
100
105
122
152
105
67
102
55
104
152
122
79
144
105
67
104
144
103
92
178
126
107
138
124
92
109
93
103
92
69
126
93
188
92
86
122
130
138
180
100
104
149
84
122
144
69
92
178
139
92
126
110
169
130
105
55
110
134
77
160
55
79
138
77
56
138
56
123
178
105
37
92
127
92
126
84
58
105
103
165
118
134
195
111
58
107
138
138
86
122
107
93
152
104
92
91
91
92
122
91
77
104
93
67
105
122
103
124
164
126
92
67
55
109
69
58
91
138
124
122
138
138
126
138
103
68
140
178
69
92
55
139
79
91
105
139
104
104
37
84
55
144
37
94
55
98
139
168
74
79
37
169
55
102
86
58
127
104
37
144
111
67
91
96
74
89
92
140
75
67
105
112
131
55
134
123
105
127
55
55
109
92
144
178
178
139
138
92
105
58
58
111
67
81
92
124
92
67
86
56
104
67
69
188
67
122
139
56
171
126
144
138
86
126
86
141
92
92
103
125
79
139
180
152
139
105
114
138
144
128
92
152
55
91
144
138
126
169
168
165
84
105
56
75
110
97
114
92
122
69
164
145
55
126
56
72
55
56
131
138
87
98
93
144
140
69
107
122
99
127
92
89
58
135
109
104
78
68
110
139
56
169
104
96
112
123
110
164
104
92
93
180
55
89
100
138
67
189
37
111
123
105
86
111
106
141
92
93
98
110
138
92
103
55
110
105
75
93
128
128
99
105
96
138
84
89
131
123
99
105
114
178
67
119
105
86
139
69
100
74
105
138
67
55
72
105
56
110
109
68
148
79
73
129
105
55
88
67
58
178
178
95
128
92
140
138
104
147
112
114
93
119
103
37
99
79
111
127
100
138
126
110
139
79
110
93
123
122
140
151
56
74
89
110
122
92
55
144
139
55
146
160
144
74
104
55
142
135
138
136
105
56
152
74
67
104
84
55
106
134
69
148
107
130
126
113
117
93
55
162
69
105
104
84
56
55
122
122
136
106
138
122
79
87
119
55
111
104
88
126
92
128
110
67
152
144
140
77
92
122
89
89
75
92
92
140
86
91
139
111
162
55
56
92
122
119
119
91
97
75
55
138
109
92
92
126
111
56
104
93
122
93
55
69
127
55
56
122
152
56
97
138
92
67
152
126
69
126
126
114
79
107
122
107
144
80
92
128
126
97
110
145
168
88
83
122
92
110
144
56
56
138
104
127
77
117
93
127
117
55
92
138
122
144
178
91
92
83
74
107
199
56
112
55
79
106
104
122
92
92
138
126
77
104
86
110
126
86
126
102
130
111
149
132
92
100
109
137
81
148
130
102
105
127
105
178
199
138
105
144
127
120
126
158
110
92
144
138
58
178
75
127
163
58
144
108
122
138
92
105
77
114
110
109
122
112
55
122
92
41
67
93
168
86
180
67
55
127
77
127
92
104
103
122
152
55
91
81
144
105
55
92
107
146
58
68
55
105
171
128
67
112
69
58
58
110
144
131
134
56
158
104
117
85
126
100
68
92
92
110
55
92
122
138
56
126
67
95
104
83
67
92
110
96
114
127
84
92
110
110
55
93
146
98
56
93
97
55
118
105
92
86
134
129
149
105
37
58
152
55
134
58
106
171
79
83
79
104
104
123
127
122
103
164
146
169
92
37
102
69
77
105
99
126
58
92
148
110
122
104
169
56
77
110
56
67
91
138
169
92
146
126
81
107
110
67
37
83
111
138
69
80
102
104
128
92
119
160
92
122
91
109
110
128
58
132
149
122
142
115
138
126
104
67
69
111
119
67
128
134
93
105
138
67
128
128
178
128
122
98
105
145
103
111
123
86
139
55
127
84
114
104
107
113
148
180
144
103
79
139
74
93
137
105
171
132
122
58
83
88
113
129
104
140
93
129
163
107
75
123
178
110
109
152
89
92
83
67
37
102
106
105
56
69
104
111
146
163
107
74
96
95
140
146
158
67
107
144
92
103
144
106
55
106
92
103
144
139
122
131
37
122
56
92
126
93
92
92
144
123
138
109
56
110
106
37
127
93
79
109
138
55
69
56
86
67
58
138
74
101
124
55
109
104
140
124
93
95
77
55
178
100
105
55
158
79
102
74
118
199
55
105
146
126
178
104
111
112
103
92
118
110
140
105
114
56
106
86
77
78
55
140
122
56
126
83
122
123
124
105
55
148
58
119
92
98
169
148
104
135
134
140
122
111
105
126
171
122
104
123
77
126
55
140
126
55
83
138
109
83
75
86
55
108
109
140
92
93
188
134
114
110
110
122
108
126
69
55
58
97
69
92
129
130
92
56
55
139
127
83
110
105
122
109
152
55
37
146
77
92
122
89
105
103
111
122
92
108
127
110
126
105
105
74
91
132
110
110
93
108
119
109
122
83
110
119
189
56
124
81
111
126
74
69
55
100
56
58
105
122
79
140
104
110
67
91
103
124
110
110
121
122
124
56
64
93
139
55
122
110
92
97
79
122
138
126
146
178
122
138
110
75
119
113
119
124
77
101
106
37
91
104
162
178
122
75
105
55
92
124
56
77
138
126
97
93
100
127
58
122
126
127
95
110
126
123
126
105
120
56
67
58
106
127
86
103
110
138
110
92
58
124
86
103
68
75
105
92
122
74
110
56
58
139
75
138
83
121
105
110
107
58
79
37
112
127
97
144
163
77
55
99
124
147
67
68
93
152
67
122
123
92
107
138
37
113
135
92
67
105
79
83
92
131
109
165
126
104
124
95
110
125
136
107
106
158
136
110
128
122
105
105
58
105
104
37
67
104
102
122
122
148
119
104
138
122
58
123
55
124
109
105
107
181
55
122
55
171
105
91
92
128
122
148
93
77
92
89
91
123
110
118
58
138
97
129
77
127
91
89
106
97
93
107
120
122
138
110
89
120
91
67
152
109
99
118
110
97
139
107
131
67
79
105
111
74
138
126
92
105
122
105
79
138
55
92
140
67
127
55
122
86
92
92
73
103
132
105
105
108
104
163
110
55
104
136
169
92
111
142
139
122
126
122
123
83
58
111
124
89
127
122
138
136
81
169
123
91
105
122
138
144
55
92
110
67
119
165
105
138
127
55
105
122
100
126
123
126
132
81
105
75
55
92
148
115
110
126
132
55
83
139
146
126
122
56
106
92
103
84
92
113
134
111
92
89
92
114
140
135
134
122
152
67
127
140
102
92
119
95
139
128
119
127
92
100
124
80
95
110
89
119
178
140
129
122
93
132
138
110
83
67
140
132
119
138
55
105
124
109
68
124
169
159
37
99
100
110
128
111
111
110
98
162
58
110
124
126
56
138
122
110
134
169
37
104
56
119
139
105
67
91
122
77
79
152
110
92
92
105
122
67
92
68
92
111
105
123
92
128
168
55
69
110
55
92
123
112
98
110
92
74
55
74
106
129
55
101
171
169
92
138
163
37
149
104
131
171
122
158
168
92
106
131
128
92
76
104
67
122
56
55
152
163
105
122
110
178
111
119
134
69
79
79
79
37
144
136
93
56
124
102
108
100
37
160
77
138
97
92
127
126
108
140
92
55
105
110
169
199
164
110
55
122
128
102
118
37
130
55
67
138
178
117
92
178
67
140
104
69
67
122
144
164
58
111
88
67
126
58
139
134
67
55
128
111
101
124
140
91
108
104
169
178
69
126
145
128
67
134
93
136
122
105
99
122
109
103
99
101
171
103
92
181
76
169
93
76
152
55
104
67
134
104
102
132
105
56
105
110
92
93
86
180
152
110
96
105
92
101
104
139
138
103
55
37
88
112
124
110
55
69
69
58
126
126
127
58
92
135
104
139
128
138
144
86
138
92
89
67
93
55
158
120
105
122
122
107
124
92
100
83
92
119
79
130
67
92
104
139
56
127
126
107
178
56
103
92
123
158
101
37
124
128
92
122
139
67
130
110
55
92
92
55
145
171
138
122
93
91
104
93
178
55
153
58
109
92
56
86
118
110
107
114
146
134
122
127
144
37
126
91
92
78
55
138
55
122
122
99
98
75
92
142
145
58
158
58
83
104
69
105
58
105
122
109
139
128
55
74
126
92
37
104
67
110
101
55
93
144
37
178
104
134
102
126
178
162
163
152
139
55
114
110
88
95
105
138
138
110
55
111
111
75
140
105
100
95
74
113
103
74
74
152
92
126
91
120
110
37
100
169
126
110
138
126
98
92
127
79
91
138
105
178
93
126
110
158
75
110
140
93
97
144
119
56
105
92
55
114
105
92
93
126
182
115
119
160
178
55
144
197
144
37
103
79
107
110
94
78
68
92
127
55
169
106
92
78
115
58
91
140
84
131
122
104
97
119
84
86
91
126
83
92
37
91
86
127
105
123
144
56
163
137
139
114
88
180
99
86
146
144
144
105
148
138
92
92
124
163
92
37
178
115
58
124
171
58
105
37
56
84
67
69
146
106
127
92
77
151
134
129
119
55
92
74
109
125
78
107
120
160
93
111
69
122
67
130
68
99
126
99
74
144
136
83
92
92
126
69
58
88
135
103
105
67
162
86
79
130
77
122
92
95
58
103
37
55
123
92
56
120
101
93
79
93
126
122
123
93
144
89
105
138
93
99
37
88
128
55
158
127
107
104
84
136
178
122
92
56
171
124
107
104
110
110
77
69
86
140
126
74
110
56
56
55
126
107
93
144
99
169
105
93
126
96
86
58
74
69
67
100
74
160
55
122
55
83
69
99
168
141
58
138
75
101
138
139
127
163
106
138
110
104
89
138
69
110
97
169
55
67
74
69
92
93
68
119
55
105
123
128
86
69
94
122
107
79
134
110
69
139
169
106
178
92
127
169
56
171
108
79
138
121
117
91
92
56
98
152
110
110
58
92
126
138
124
92
56
156
111
93
103
55
83
158
105
145
105
68
108
130
147
171
37
92
104
126
138
122
56
105
77
104
180
122
119
93
56
91
67
128
55
105
139
139
93
83
111
93
139
138
129
161
105
160
104
55
122
104
119
109
119
74
138
56
92
128
77
126
126
122
126
84
116
92
93
126
122
75
55
137
128
74
75
55
97
116
68
144
131
105
75
128
55
117
110
74
106
110
104
89
122
55
105
92
37
136
55
55
55
107
122
55
93
144
56
78
110
77
97
79
78
138
131
58
98
111
87
97
107
67
109
55
98
144
129
122
126
110
55
55
148
104
111
55
152
110
144
126
168
164
107
109
55
152
68
120
168
122
102
69
102
91
171
140
56
171
119
127
98
58
67
158
93
104
83
165
114
92
92
128
92
128
100
100
113
127
146
104
55
104
138
126
122
104
99
55
139
146
103
103
169
93
91
68
122
127
55
119
110
123
105
169
111
105
55
93
69
178
112
123
69
138
139
119
138
58
110
122
78
119
69
138
168
55
92
55
105
92
142
138
55
55
55
110
126
56
168
99
127
92
165
92
91
123
105
128
115
92
104
107
79
89
93
108
94
55
109
102
105
138
98
152
105
56
98
111
58
127
122
105
132
96
95
114
57
149
124
110
148
89
92
168
67
92
93
120
37
92
169
67
71
138
67
92
144
156
145
119
136
123
127
91
109
139
96
106
139
111
126
110
69
91
56
127
105
152
56
55
123
92
55
124
138
56
148
109
105
105
55
110
138
89
86
77
178
75
139
122
99
55
55
149
122
122
111
148
83
92
127
103
126
152
138
126
126
105
127
139
134
55
169
55
127
91
148
103
110
122
107
110
120
163
139
132
91
67
89
180
111
109
79
120
134
119
67
127
146
99
126
55
78
141
119
55
151
37
92
124
131
67
138
111
55
110
105
92
96
97
75
152
110
56
92
140
92
75
139
91
93
144
67
77
92
107
163
98
85
122
140
169
74
67
119
105
93
55
105
77
167
105
101
92
68
129
147
123
55
104
77
111
122
92
105
138
101
114
110
136
67
77
126
101
89
55
75
138
134
99
103
105
58
126
92
122
139
108
110
115
91
122
92
109
114
124
180
139
93
69
110
144
105
105
142
101
111
75
120
107
109
152
126
79
127
119
139
97
56
120
104
58
67
107
144
91
55
144
74
107
127
92
92
101
92
119
58
104
117
124
126
105
110
79
107
122
67
138
98
92
55
67
93
105
112
55
56
107
119
182
122
105
55
95
37
128
67
100
163
78
93
109
75
122
169
139
126
91
92
77
75
55
138
55
77
148
86
123
183
67
119
99
126
93
86
93
77
111
110
158
146
127
86
169
91
146
138
146
77
67
178
58
58
102
132
111
105
110
169
55
169
96
119
103
178
124
138
126
87
68
122
79
103
67
167
74
97
123
126
92
112
92
84
144
138
88
123
138
122
92
58
169
180
111
55
105
110
128
152
100
111
58
171
126
111
67
92
69
100
106
178
55
56
92
79
122
110
97
104
138
91
138
99
58
99
127
67
109
132
139
55
55
110
122
178
126
124
55
92
122
55
102
162
124
180
58
84
55
127
122
169
134
92
122
117
56
126
126
103
111
84
110
74
74
178
75
121
123
122
100
122
128
109
93
127
67
138
68
109
148
144
160
126
79
110
86
127
179
114
171
92
144
79
106
122
126
97
91
119
112
92
104
178
37
78
55
127
127
105
134
100
128
67
55
105
138
112
138
79
99
69
93
67
140
56
55
108
104
101
55
55
122
122
111
73
138
81
115
110
152
138
127
128
79
127
69
55
126
92
122
104
92
92
83
122
126
126
101
129
137
146
160
188
178
67
122
119
108
152
67
124
79
105
119
56
152
37
105
92
67
67
93
122
83
58
74
93
125
118
110
104
148
178
139
99
77
126
92
138
79
92
124
122
140
122
99
148
92
55
169
122
110
167
100
55
67
171
122
111
92
126
110
148
92
102
110
136
93
77
91
55
127
95
171
75
104
107
171
55
95
110
158
148
139
111
123
92
67
89
122
55
69
107
58
132
145
92
122
79
92
169
77
163
110
123
105
140
104
99
178
86
105
122
126
67
55
92
138
92
74
138
92
93
69
128
123
138
92
55
128
55
103
119
58
107
178
120
55
69
98
111
67
107
138
110
76
110
128
147
92
105
58
72
114
119
126
58
117
92
110
56
101
134
107
122
97
164
104
93
104
92
79
132
99
164
119
127
55
108
84
67
69
138
110
169
58
67
92
127
144
101
105
92
67
178
104
109
138
135
105
104
122
78
120
67
140
77
92
107
110
86
105
67
105
152
122
105
127
92
126
55
104
37
105
126
130
124
171
110
67
77
132
160
146
104
134
139
101
79
158
93
96
85
79
124
75
92
92
140
98
122
99
138
119
122
152
126
107
75
100
138
100
98
180
103
122
99
137
92
98
105
132
83
122
91
126
95
144
55
126
99
131
141
137
91
122
91
58
77
127
58
93
75
92
93
111
55
58
152
67
86
37
56
110
122
152
91
138
139
69
126
55
75
55
139
127
69
83
119
104
110
99
92
96
99
67
84
138
75
132
140
93
104
152
86
74
137
122
124
128
105
100
105
55
122
178
105
67
130
100
55
74
121
99
67
79
75
111
86
86
122
69
144
93
139
138
178
127
74
128
123
37
117
58
78
103
55
99
67
115
165
93
92
163
111
86
122
91
135
69
74
96
126
92
69
119
93
92
56
122
123
101
119
152
122
120
138
105
126
127
139
69
67
125
86
68
122
104
104
97
87
178
92
128
56
160
92
58
142
92
93
86
126
149
128
58
92
111
134
99
122
56
178
128
126
56
163
160
139
128
67
110
55
55
98
83
122
111
56
127
77
110
119
105
107
91
152
138
56
106
128
134
160
104
37
55
105
37
92
105
97
92
148
92
55
56
67
124
105
105
178
195
162
134
169
81
79
137
79
122
104
144
55
79
83
102
167
158
148
128
148
37
110
178
127
140
134
123
93
92
109
146
107
92
67
105
126
109
137
124
67
134
144
107
118
98
144
92
109
120
110
56
93
92
107
126
67
77
104
84
74
56
102
88
141
138
84
91
140
138
55
111
69
178
103
55
77
67
138
122
127
110
91
127
113
105
89
138
86
69
128
68
138
128
129
73
143
101
139
127
122
55
139
152
92
91
171
128
144
145
92
104
104
138
99
92
91
92
95
139
37
93
123
111
88
140
69
150
109
178
110
79
137
128
140
122
58
164
58
158
58
122
138
86
163
156
92
37
122
112
138
167
55
67
126
55
55
171
139
102
92
149
129
56
127
67
104
67
122
100
55
135
92
67
122
75
156
110
139
67
37
79
91
148
67
145
122
119
55
58
127
95
178
178
83
126
112
93
92
127
122
56
84
74
122
55
111
58
109
37
152
92
168
126
86
86
110
55
122
123
74
138
142
126
83
67
81
77
122
87
127
92
152
128
112
68
75
79
134
92
124
152
103
144
107
91
138
92
100
108
67
86
58
110
37
68
104
56
132
55
122
67
67
145
138
132
106
67
162
101
144
101
119
127
140
180
158
37
92
93
55
122
78
144
112
171
110
93
105
123
138
138
68
139
104
105
122
92
55
110
180
69
104
93
169
92
93
67
110
125
111
160
55
67
127
146
55
138
120
137
67
131
56
91
144
158
169
74
124
79
112
126
106
104
74
58
104
103
58
104
126
107
55
117
86
93
96
74
55
128
109
110
56
105
77
138
122
86
140
107
104
105
134
140
103
104
109
110
56
119
106
95
134
88
67
92
56
77
67
126
83
178
146
124
92
126
58
126
93
93
37
144
164
92
123
126
144
58
139
128
101
110
148
99
74
152
131
86
144
86
120
148
148
180
98
79
93
103
55
92
132
126
148
138
92
139
78
55
163
126
91
92
37
136
132
138
87
123
55
99
113
105
79
122
87
126
128
110
138
55
123
160
122
93
142
37
119
126
112
119
92
139
67
67
92
141
132
126
75
92
137
99
92
58
93
117
56
126
138
105
169
111
111
127
144
169
106
139
111
144
110
122
167
56
152
58
146
67
95
74
139
144
138
56
134
104
180
139
100
104
121
106
110
152
95
178
37
97
123
178
86
111
56
86
92
105
55
152
101
74
127
110
109
132
125
146
86
69
56
89
83
92
75
114
117
58
56
160
122
128
55
148
77
37
56
126
139
92
103
126
164
124
142
178
37
126
139
113
105
55
102
169
178
105
178
86
122
55
158
126
58
79
124
180
107
56
110
127
134
135
55
93
122
98
178
162
56
163
127
139
130
93
110
105
91
139
162
74
126
112
140
115
91
56
144
100
111
105
55
69
97
122
108
67
67
86
92
69
104
138
110
152
81
83
169
122
107
178
78
126
83
102
122
86
122
86
55
103
99
122
92
178
137
56
55
104
128
139
115
79
135
168
169
94
178
138
122
140
92
74
92
104
37
104
152
110
134
78
93
131
92
113
91
103
79
110
56
169
146
115
140
55
123
128
86
114
56
92
147
58
109
139
109
67
149
93
152
110
124
92
115
67
55
114
144
130
106
112
100
122
104
104
127
99
148
92
55
55
152
101
102
67
103
102
56
93
55
105
37
92
74
144
37
37
140
74
108
171
79
86
106
107
97
79
81
56
142
97
112
110
92
105
56
92
138
138
58
104
163
122
92
92
55
144
131
144
107
91
91
67
92
58
128
124
126
107
140
67
104
138
79
130
84
75
110
100
130
111
126
58
105
98
140
120
55
97
58
91
139
91
37
91
127
58
111
104
58
67
92
107
92
65
55
127
139
58
93
104
109
110
101
132
122
79
163
93
78
134
109
92
69
127
152
134
96
114
134
105
98
101
122
101
67
86
67
104
56
99
127
109
110
136
104
138
94
67
107
123
92
120
130
122
56
55
128
69
105
92
178
101
58
132
169
91
69
122
69
139
93
110
152
103
122
91
138
138
144
93
67
93
169
126
114
55
109
80
164
92
75
56
93
41
109
119
92
56
122
139
58
56
92
109
146
123
69
104
138
111
110
110
93
105
131
92
168
104
115
37
92
107
144
55
86
55
144
132
168
146
55
123
169
123
178
55
146
171
128
119
110
128
131
98
126
120
109
127
123
58
119
139
93
111
114
122
102
104
103
132
182
137
104
69
132
58
75
69
144
93
110
129
138
92
92
68
111
127
138
105
67
80
89
79
91
127
110
123
171
67
74
104
74
92
56
110
92
86
144
67
37
55
67
104
138
56
152
91
127
77
178
84
121
122
142
129
110
86
122
127
101
105
105
56
138
84
119
99
106
73
127
58
94
110
138
98
92
126
92
127
83
75
55
139
56
119
126
119
138
86
110
122
92
140
139
91
152
55
106
104
99
126
37
115
107
56
126
55
104
74
92
83
105
122
122
105
75
105
105
180
103
55
105
105
93
77
91
163
139
142
37
104
128
140
178
92
100
152
97
128
124
56
126
128
140
105
128
99
180
92
109
58
79
122
127
92
67
86
139
69
91
104
107
92
91
67
74
75
119
110
92
128
111
58
55
86
55
120
165
92
37
69
56
75
86
180
110
92
152
89
122
139
123
55
93
123
93
67
142
178
92
84
92
178
123
55
104
91
110
144
104
130
92
37
55
83
110
111
74
127
91
139
56
122
156
152
74
97
37
127
138
105
135
55
144
67
91
109
75
55
109
101
158
55
149
152
144
146
92
132
107
58
56
86
67
141
103
99
109
138
123
138
92
138
124
110
68
69
178
87
127
55
55
103
111
105
171
132
58
139
148
121
103
92
86
67
92
138
95
103
122
110
103
107
89
109
169
123
55
104
146
162
146
105
138
111
138
146
97
78
138
129
112
107
89
160
92
37
92
126
110
163
110
109
92
169
56
136
162
93
56
55
126
146
139
134
61
55
163
102
119
110
83
108
168
114
136
67
148
58
146
131
107
119
146
77
124
122
127
74
168
152
126
99
58
77
122
77
56
104
124
92
118
134
79
93
92
128
110
67
75
126
110
122
77
127
97
126
100
109
134
122
128
86
110
163
152
84
119
99
92
92
139
92
148
138
146
114
139
103
105
130
123
37
92
91
77
76
122
105
109
98
163
124
105
130
99
105
56
55
128
136
199
122
107
92
149
56
108
160
119
93
138
127
110
171
69
92
138
105
110
101
99
119
111
169
97
124
138
101
122
126
86
93
109
93
67
138
140
119
86
56
123
109
92
92
146
86
138
117
93
126
126
122
119
102
163
55
92
105
99
79
58
138
104
86
93
156
135
180
67
178
110
100
123
99
103
188
119
131
91
126
130
139
152
74
97
83
134
169
122
118
37
115
104
97
103
111
55
92
105
110
83
139
67
111
91
92
124
178
67
168
110
104
127
93
140
37
109
69
156
97
109
178
56
122
55
122
127
55
105
120
55
68
134
127
106
127
111
126
91
139
92
112
132
92
148
67
37
77
123
138
109
103
122
110
119
68
55
86
158
91
120
140
55
93
126
37
91
92
99
67
92
86
123
124
67
104
127
105
92
92
55
56
152
130
144
69
178
126
128
92
69
83
104
123
119
138
124
105
105
134
110
108
122
111
106
139
158
92
123
105
128
120
139
77
178
89
93
109
124
163
118
126
118
101
89
130
89
93
104
55
92
91
126
97
92
111
134
178
96
105
127
103
110
178
138
93
67
93
130
67
74
105
92
37
86
168
55
75
103
92
126
92
127
122
110
125
120
93
178
55
140
108
146
126
123
146
56
109
79
103
152
105
56
99
111
123
126
127
163
92
104
127
102
79
178
37
105
111
55
138
92
104
105
72
144
163
139
111
92
105
104
56
74
136
169
91
92
138
110
83
104
122
114
56
127
110
122
137
55
91
58
104
158
69
93
92
104
111
92
111
58
178
56
140
169
105
105
56
92
122
126
55
104
146
138
123
138
55
110
92
74
56
67
110
123
91
55
92
69
122
56
93
110
110
92
146
139
55
138
86
67
56
101
56
142
95
131
138
75
158
138
127
131
107
138
67
79
110
67
67
98
110
139
115
139
119
109
58
104
139
109
77
131
67
130
92
105
144
138
67
171
126
122
144
67
104
105
104
118
110
126
110
92
109
107
86
139
122
58
83
123
146
77
92
124
37
55
105
122
96
152
128
55
122
110
106
92
128
92
139
56
139
126
146
139
146
123
139
111
91
137
112
55
92
92
104
126
56
110
126
79
126
102
128
123
171
93
67
109
107
126
85
55
110
122
86
104
122
91
56
104
74
98
122
55
69
55
86
163
127
69
158
122
79
64
110
108
126
145
92
126
141
119
139
122
130
68
141
111
93
102
67
130
142
105
67
122
84
146
100
110
97
69
92
122
180
119
178
55
126
105
105
55
92
91
171
144
105
105
69
107
56
92
69
86
91
104
110
107
134
148
138
109
132
128
55
67
124
74
122
67
167
126
57
144
67
37
180
169
128
99
128
110
103
128
99
97
110
110
126
79
99
119
122
92
55
114
86
74
93
101
134
109
139
124
111
126
55
93
126
97
105
92
109
97
122
104
55
100
123
152
178
86
86
37
99
67
67
110
104
139
134
158
55
144
104
140
115
114
130
92
69
104
55
123
109
188
67
178
77
110
122
122
146
84
124
92
130
69
111
112
161
92
123
55
118
86
136
122
104
98
114
58
93
122
140
104
83
108
109
55
148
139
105
93
131
163
67
138
178
110
67
101
122
109
137
152
122
86
103
162
124
124
114
92
123
130
122
55
144
105
114
136
69
56
126
109
122
101
147
67
152
178
89
188
93
92
86
126
104
138
126
134
92
122
110
164
146
139
119
92
83
105
106
101
122
92
86
67
127
109
126
140
55
104
55
67
67
101
111
55
55
110
168
97
100
56
127
92
134
105
92
105
138
93
92
169
74
55
144
58
79
84
139
91
83
55
67
130
75
55
92
55
110
140
110
178
148
126
92
178
146
139
67
104
162
55
105
105
111
162
169
92
136
55
115
178
138
109
128
37
138
114
91
92
146
99
92
168
92
130
104
95
37
104
122
67
123
123
104
69
81
145
88
67
88
98
58
79
68
178
56
55
104
77
132
98
122
92
97
91
123
122
101
119
123
178
121
86
56
144
178
122
105
86
92
95
56
144
127
55
122
111
122
55
158
146
37
100
58
96
67
119
126
55
178
110
105
128
37
146
55
129
105
92
55
69
146
122
180
126
124
67
83
126
119
139
58
146
55
130
103
106
122
126
75
109
138
104
139
180
87
93
126
168
56
69
79
105
171
74
55
122
74
130
87
56
77
58
99
123
108
55
138
104
145
93
110
67
55
103
75
69
37
105
55
111
124
105
110
126
138
103
105
56
92
56
93
123
101
84
127
126
138
56
55
122
104
167
55
104
138
148
114
110
91
100
139
105
103
92
99
128
138
58
102
81
108
104
134
58
97
126
55
118
101
122
97
126
99
122
103
109
69
93
114
171
93
105
115
178
107
122
93
100
141
139
171
92
169
169
37
112
56
93
67
128
105
67
178
55
74
55
88
103
68
105
169
134
37
138
148
146
134
56
130
118
146
81
69
55
96
86
91
79
89
119
126
138
122
160
130
75
127
37
138
117
122
55
162
104
91
110
127
119
124
58
126
134
100
128
91
145
167
125
92
130
144
128
124
127
56
140
69
125
55
69
55
112
58
55
146
92
126
78
126
58
84
69
162
93
144
69
84
56
119
67
108
99
86
122
77
140
75
122
122
112
93
167
152
110
127
92
37
105
106
123
160
126
55
55
67
138
103
68
178
144
55
127
141
104
79
110
122
127
112
152
122
111
69
91
140
122
103
125
56
102
126
86
69
146
89
104
86
69
127
56
138
93
105
105
92
146
111
55
55
122
105
168
134
138
99
144
124
131
131
37
163
110
126
97
105
127
122
105
135
131
37
139
111
178
69
110
74
109
56
138
56
110
97
55
127
75
182
69
152
109
92
105
124
109
123
138
127
79
92
122
55
122
102
127
93
134
92
146
67
105
92
55
134
126
123
107
58
122
86
77
138
122
100
114
111
110
69
55
126
37
109
128
91
55
83
105
55
122
127
88
101
156
55
123
131
139
148
139
139
105
105
77
110
95
100
110
136
83
119
128
119
69
144
122
141
69
92
178
58
72
134
97
58
55
110
122
86
152
58
55
122
144
67
146
126
97
178
55
75
99
123
91
124
122
37
138
92
93
130
37
122
122
125
178
89
84
77
55
86
146
56
138
158
110
152
169
109
67
95
110
140
93
92
110
86
138
86
113
93
92
127
126
106
79
100
69
139
79
144
123
140
134
120
111
92
169
92
55
105
79
140
55
110
74
92
148
122
111
148
56
119
165
144
145
109
126
75
92
92
110
37
104
140
80
92
110
92
138
169
111
58
84
117
156
128
99
75
158
92
99
98
67
122
55
93
104
122
180
78
96
120
122
144
107
138
67
99
110
108
74
67
58
55
55
122
75
110
97
41
111
122
138
55
58
101
103
126
152
92
114
111
123
110
89
105
138
110
55
97
121
136
74
67
126
140
67
122
122
169
55
99
75
93
122
56
126
97
105
128
169
108
123
144
104
126
127
122
122
122
180
92
144
56
105
182
79
92
86
138
93
107
111
110
114
122
74
55
138
55
107
100
146
93
67
92
162
92
168
124
55
138
91
118
146
138
69
105
109
74
67
105
87
37
37
110
140
110
140
88
145
99
91
55
56
123
67
104
138
167
91
138
178
110
92
56
98
148
110
122
89
126
112
138
95
124
132
152
75
122
89
67
37
103
58
91
118
108
67
119
134
69
158
92
144
88
139
182
144
105
102
56
142
117
55
117
105
132
91
106
128
109
37
68
109
123
126
148
99
92
126
119
94
93
152
111
92
92
102
105
93
77
104
127
122
178
137
93
148
109
178
92
120
67
58
69
69
140
126
122
138
79
69
67
55
132
97
199
120
105
109
93
98
107
115
92
56
55
140
67
126
149
109
67
171
122
119
87
67
168
55
74
104
146
92
122
55
67
138
119
93
75
146
138
138
92
105
139
97
84
123
92
158
105
104
146
147
92
104
79
92
92
55
146
144
92
55
110
56
126
122
178
148
37
98
158
84
92
109
58
138
110
160
93
158
98
127
92
110
171
113
74
92
168
99
75
117
127
104
92
105
67
93
139
89
58
123
84
67
67
164
92
56
67
110
75
105
126
92
55
69
111
67
127
126
37
117
138
159
56
79
55
105
86
110
92
118
95
67
122
134
37
126
152
55
99
144
119
95
178
122
68
110
56
126
139
140
111
75
110
169
169
92
104
124
93
110
169
110
139
92
126
163
103
149
55
110
122
110
144
55
94
122
84
99
122
139
100
58
67
56
55
58
67
58
88
98
110
118
123
91
110
138
163
105
105
58
86
55
91
138
123
55
123
122
112
139
165
67
152
122
112
103
92
126
91
122
86
119
122
108
93
92
92
152
144
56
178
126
105
128
105
109
178
55
110
56
140
55
92
56
126
139
74
75
122
127
128
180
92
122
110
134
67
171
69
138
169
110
69
165
138
114
92
68
56
110
105
92
126
150
138
58
92
55
138
118
162
128
178
92
58
55
107
126
56
127
67
180
122
55
122
75
128
110
169
158
168
138
178
152
139
55
67
98
110
178
104
83
126
138
122
137
117
120
134
167
139
118
56
115
144
92
140
169
148
58
77
105
110
131
75
126
126
138
140
75
58
127
108
92
144
78
122
93
119
37
55
55
138
55
138
81
105
146
138
86
144
180
74
92
144
98
92
138
92
109
144
55
91
97
93
56
69
79
152
126
92
55
79
55
67
107
93
105
134
91
55
128
112
128
188
122
79
58
146
67
55
181
55
106
139
37
107
95
127
58
92
89
119
110
97
108
110
111
56
126
93
123
144
135
148
91
83
188
110
138
126
178
109
138
178
93
37
127
92
92
124
110
102
152
93
67
104
122
55
67
169
67
91
139
91
55
122
171
58
105
112
86
152
67
93
92
109
79
99
55
126
138
122
126
158
69
93
107
139
110
55
37
89
110
99
111
37
178
105
169
105
110
158
132
67
92
122
105
114
92
67
92
122
74
119
92
158
127
55
55
56
126
56
158
132
107
79
168
111
171
106
77
146
169
107
103
139
77
56
126
104
86
81
69
104
58
58
92
111
93
92
67
139
123
58
99
110
58
92
92
178
69
109
152
122
126
138
37
58
104
69
178
132
126
79
80
109
119
55
105
111
178
138
105
126
58
105
105
92
99
104
99
152
124
178
83
138
104
93
37
124
55
99
137
163
111
107
55
128
91
119
58
160
122
139
124
105
145
87
105
160
93
55
55
110
86
92
152
178
69
138
92
134
111
123
55
142
122
92
110
118
139
105
86
122
152
86
118
92
117
37
137
67
55
56
146
99
55
55
164
73
105
152
165
110
104
86
91
111
107
138
122
105
69
126
123
164
123
56
131
152
58
171
124
86
109
56
178
79
131
130
124
126
78
92
122
89
105
67
86
126
171
58
69
122
178
144
152
126
67
105
93
79
103
126
95
178
107
107
67
56
122
92
72
92
104
69
101
135
143
138
131
130
126
110
140
148
139
131
122
126
130
136
69
160
79
92
122
69
135
67
169
152
165
105
109
67
79
79
144
67
106
67
93
110
103
93
126
138
105
77
105
79
69
109
104
110
92
126
138
178
163
118
56
103
111
199
152
128
131
101
109
89
102
104
128
93
110
127
110
55
171
84
152
111
55
56
67
79
110
86
148
55
92
103
122
104
55
55
122
92
169
56
67
146
37
67
37
58
86
92
129
169
55
138
77
114
122
137
126
58
74
55
146
148
92
83
123
77
132
58
110
122
138
96
67
55
37
79
79
119
93
127
75
37
162
123
109
178
74
111
126
77
67
92
107
138
91
128
55
138
104
104
122
67
95
107
126
131
84
67
126
91
104
97
104
124
79
109
124
92
55
55
55
146
55
56
92
110
109
178
104
97
67
126
92
92
96
138
55
77
122
67
92
105
178
104
67
92
105
93
92
126
132
122
109
58
104
111
158
178
93
55
69
138
92
123
105
102
138
99
115
163
126
55
131
104
86
109
138
139
139
56
55
115
105
93
132
84
58
77
41
119
92
55
124
104
110
97
92
124
69
180
105
68
138
67
105
56
93
108
165
92
109
67
86
163
110
77
93
55
152
55
131
98
93
112
130
122
58
123
122
127
105
164
97
111
122
56
105
92
169
93
125
122
135
134
180
168
110
181
119
129
131
178
67
144
55
37
83
93
55
111
118
138
164
83
92
112
69
58
92
107
92
105
79
114
77
67
56
100
144
110
144
99
126
94
103
107
97
144
111
105
77
109
105
102
119
138
106
138
93
152
74
122
138
97
138
79
93
99
134
111
92
122
104
144
122
104
122
122
139
55
68
110
92
144
110
75
67
104
144
56
138
110
77
140
134
84
69
92
37
69
110
92
138
58
126
152
55
92
146
86
138
93
110
77
56
124
91
93
146
112
122
123
67
181
127
123
81
100
163
69
136
122
88
92
58
108
99
101
84
128
162
110
103
142
123
118
86
110
56
55
37
106
69
122
56
58
178
162
151
92
77
139
105
122
69
140
79
131
139
105
99
122
68
56
178
56
134
105
126
104
67
56
146
112
75
140
126
171
146
134
139
58
91
74
37
126
100
126
152
114
158
140
103
122
69
108
93
86
69
104
105
83
67
56
146
91
119
122
163
86
144
110
110
92
128
110
104
58
92
105
158
108
142
99
58
160
110
98
138
84
37
77
120
67
110
103
92
92
148
37
56
104
163
69
140
107
134
110
138
105
138
123
180
92
138
105
105
105
138
92
127
55
79
138
139
105
178
140
107
123
109
167
111
132
137
168
127
122
105
67
105
124
105
92
122
55
93
91
92
89
105
56
105
93
169
127
122
69
67
178
97
137
132
99
104
140
146
56
152
86
102
67
139
162
152
79
81
107
95
77
104
165
122
139
93
110
68
123
83
124
101
105
104
93
93
178
122
125
128
55
105
135
56
110
127
144
92
69
120
129
99
122
112
74
110
92
127
128
100
87
109
110
140
105
93
146
122
122
104
55
123
152
126
89
158
93
55
109
106
128
110
64
55
69
112
139
119
93
112
140
55
75
127
67
138
75
122
122
110
103
58
83
93
69
92
86
117
122
150
124
177
92
128
171
126
126
86
123
55
144
127
152
110
131
93
102
84
56
110
111
105
56
111
128
55
106
58
55
110
67
101
83
100
92
92
178
105
108
140
55
178
145
69
92
144
93
109
110
67
92
55
104
91
145
92
92
91
139
98
93
152
69
138
37
118
108
67
180
104
117
126
67
145
128
55
120
122
58
55
78
88
107
67
119
126
92
86
126
92
100
105
86
37
122
123
149
55
55
138
134
138
178
110
152
126
138
79
86
118
126
138
75
178
126
138
178
135
92
74
86
58
99
122
58
56
122
148
117
92
55
146
144
111
37
107
138
97
118
148
144
55
122
139
130
86
56
146
122
138
112
110
126
171
110
67
92
109
37
83
156
55
144
126
104
110
127
164
107
56
126
119
123
92
121
105
124
163
57
126
107
106
112
144
126
121
135
124
105
105
124
58
110
99
122
67
69
144
131
103
58
79
99
110
139
139
130
122
92
110
89
138
128
75
114
78
107
79
141
55
105
138
92
55
128
92
67
139
101
122
110
128
79
145
138
83
110
55
138
56
69
110
103
104
169
122
55
92
110
79
139
92
102
93
92
105
107
111
105
126
58
86
75
138
127
55
162
69
104
124
110
126
120
92
69
103
105
126
55
169
67
139
105
124
124
98
110
92
111
152
79
58
109
112
55
91
92
86
75
152
103
68
111
105
56
122
101
123
114
123
103
97
146
146
110
73
110
105
127
88
127
92
110
92
96
148
120
118
146
68
139
169
119
167
126
122
162
107
56
69
92
110
105
152
118
122
92
105
92
96
111
123
95
151
127
139
138
179
122
37
122
61
37
177
129
140
134
178
72
91
107
92
75
93
93
80
56
55
92
126
171
104
164
92
112
105
138
178
139
105
111
93
124
83
37
67
58
117
110
97
114
102
67
94
126
92
56
92
69
92
140
126
128
105
92
93
92
74
115
112
105
127
102
58
140
56
138
91
168
102
103
105
103
178
119
100
103
126
86
95
109
56
67
99
146
152
127
126
140
110
58
144
122
140
126
86
86
87
104
96
110
91
101
92
67
86
140
104
107
104
78
95
55
92
105
77
84
123
122
127
55
106
110
162
69
93
121
79
110
83
146
107
138
77
75
117
55
146
130
83
67
92
92
113
132
55
92
55
110
123
55
104
67
55
169
37
107
168
104
96
107
55
122
58
89
94
104
122
126
110
146
86
92
100
139
178
134
68
92
99
77
92
105
69
148
114
131
92
111
99
56
91
128
140
84
95
122
130
124
152
136
74
122
69
55
127
97
126
92
55
93
130
119
37
58
178
102
86
56
73
108
109
122
58
93
126
67
77
79
99
126
92
37
67
105
149
127
55
122
99
67
138
105
144
92
92
58
169
126
123
130
101
67
56
123
146
55
106
131
105
107
132
67
127
148
58
162
126
122
110
106
92
139
104
158
110
115
118
168
56
69
93
104
110
79
84
110
91
37
144
83
95
89
119
134
55
95
97
99
37
67
134
138
169
151
110
67
148
117
84
145
138
114
138
126
146
138
103
122
105
91
110
93
126
105
69
109
110
55
96
105
138
97
111
86
92
138
67
146
83
122
146
92
123
88
97
112
101
127
56
122
148
107
89
146
138
93
110
103
105
104
56
139
104
130
144
77
92
122
69
56
122
126
55
89
98
55
84
92
122
109
110
97
110
122
95
92
119
144
103
56
178
106
56
55
119
122
107
138
126
111
168
139
117
120
55
123
93
129
134
55
106
37
81
104
105
92
115
79
67
126
56
140
169
132
104
55
146
67
112
99
119
105
126
75
171
58
110
147
92
55
56
56
67
144
126
37
81
55
122
128
56
131
83
55
132
110
107
93
86
86
169
88
150
92
86
55
138
111
69
58
104
79
146
92
169
92
110
127
119
55
92
136
92
139
140
110
55
114
56
92
158
114
138
101
138
164
138
128
110
105
101
95
109
171
160
109
91
158
137
86
69
56
92
84
126
84
99
99
55
67
56
92
117
122
104
86
152
127
67
127
122
56
105
37
178
146
92
127
104
104
123
104
69
139
163
124
127
134
180
131
131
126
178
58
124
89
138
139
92
130
127
144
103
144
107
138
105
67
55
121
138
138
108
75
122
144
105
92
93
67
169
79
103
58
97
105
92
92
130
142
112
74
110
37
105
67
169
55
55
37
139
67
77
146
119
92
79
130
140
103
138
92
123
55
126
122
140
103
93
56
122
140
178
105
144
169
138
110
129
149
74
144
92
56
87
140
123
169
86
112
138
119
104
97
110
69
79
92
152
79
104
74
108
126
69
112
100
92
171
58
55
117
68
67
125
171
145
138
136
55
58
171
37
77
117
77
126
110
106
126
93
37
105
110
134
127
163
106
122
140
92
146
56
67
140
92
112
139
135
124
139
178
126
67
58
123
58
55
67
178
128
93
109
144
93
84
55
160
110
67
106
140
134
126
92
111
105
110
69
178
134
83
104
148
100
58
138
128
123
110
119
178
126
148
104
105
75
69
124
95
92
55
55
75
105
77
139
93
55
128
105
98
105
152
171
91
139
126
138
139
125
91
79
152
169
86
138
92
97
119
105
119
165
127
138
67
92
104
178
139
138
122
86
73
178
92
58
92
119
110
55
122
169
111
99
92
107
56
56
77
55
140
152
92
55
138
128
104
97
104
188
77
92
77
69
87
56
158
152
139
171
180
76
58
55
110
122
110
77
105
112
56
134
56
110
178
92
131
104
77
110
122
56
103
146
75
68
104
142
74
86
110
130
37
91
93
79
178
123
128
75
139
152
112
55
105
122
91
95
129
163
92
119
110
37
169
104
67
108
97
168
169
110
93
139
67
55
74
120
67
112
122
110
86
92
163
55
93
92
152
100
139
138
88
137
152
115
92
178
171
93
123
105
89
107
104
144
141
119
129
126
110
96
188
127
110
130
126
148
119
105
128
93
127
148
122
55
104
89
99
114
96
55
105
92
98
81
111
107
134
158
127
178
55
114
110
178
56
122
93
104
122
121
93
138
92
122
92
135
79
92
112
124
86
68
97
178
109
105
104
127
129
68
110
105
67
169
56
112
135
133
109
69
79
55
110
95
110
124
110
110
163
92
152
107
55
125
55
110
105
105
55
169
72
124
126
115
37
148
111
67
91
81
91
122
128
84
83
126
138
119
146
79
117
97
95
169
86
100
144
131
81
127
122
69
69
131
55
99
122
105
93
136
110
122
125
109
138
105
91
140
140
140
178
104
80
139
98
55
107
134
92
92
93
83
110
55
158
80
67
93
56
122
92
131
122
119
119
136
126
58
110
88
75
37
138
79
37
122
162
138
75
104
122
55
107
55
126
72
104
110
104
140
102
138
104
114
168
104
55
55
122
124
92
99
55
92
110
56
79
91
92
56
89
95
144
138
75
118
122
110
92
104
123
92
86
104
113
93
144
77
95
122
110
127
68
106
144
92
74
68
69
67
131
99
156
118
74
119
92
92
114
55
56
141
139
110
112
138
56
67
75
74
105
139
92
37
55
92
109
138
92
117
128
37
119
112
127
126
102
126
110
123
73
96
93
105
110
169
180
122
199
92
37
105
107
146
56
128
138
138
115
92
93
126
69
177
93
55
122
37
58
178
99
92
55
105
110
135
103
158
92
138
110
86
140
79
68
105
178
131
110
110
144
138
168
79
126
130
75
136
110
56
67
134
93
67
104
93
125
145
93
119
67
93
107
69
67
112
162
169
158
121
101
92
110
105
105
126
67
103
77
103
92
110
92
74
134
114
146
93
123
110
122
101
139
138
68
178
111
148
138
110
101
178
99
102
77
139
105
104
67
128
94
56
163
127
55
93
152
67
146
118
111
139
110
138
139
122
110
91
138
134
115
131
140
92
138
122
107
146
79
106
109
93
74
56
104
93
58
56
169
56
93
110
119
125
123
92
138
67
93
92
110
117
122
81
97
132
86
120
119
122
144
148
144
81
119
144
122
92
98
55
123
58
77
152
104
79
144
93
58
112
67
69
58
97
119
83
111
138
69
67
105
127
93
37
92
139
122
104
37
55
138
92
105
128
58
111
99
134
37
105
104
142
92
110
92
105
58
79
111
178
106
105
146
98
114
110
55
67
69
140
107
146
124
104
92
165
58
144
129
105
92
138
139
107
67
92
122
104
37
84
146
99
110
92
138
144
132
55
122
88
138
55
83
83
125
93
110
110
105
55
146
99
55
110
138
180
92
103
74
56
126
92
103
138
122
99
145
126
67
92
92
138
55
119
148
56
93
105
119
110
146
142
126
109
91
99
128
58
104
152
126
126
102
144
135
146
95
126
123
110
105
122
109
126
162
163
92
100
87
122
58
136
138
75
100
146
105
131
139
92
118
74
79
109
138
77
141
167
104
93
126
78
105
92
92
84
81
101
55
139
105
56
67
86
123
67
37
37
75
123
99
123
126
67
104
68
109
138
75
67
104
112
130
124
79
126
92
117
158
119
78
104
89
132
148
126
122
101
56
84
146
79
119
178
56
164
95
122
123
55
110
138
114
92
171
119
103
111
77
55
138
124
37
104
123
111
148
103
138
103
126
132
67
163
69
128
111
126
104
104
105
128
134
68
92
130
114
93
122
104
87
67
96
67
69
92
178
58
126
97
126
110
92
171
126
178
126
126
126
78
92
129
83
140
92
101
122
126
96
169
129
127
92
121
127
92
111
110
104
78
91
147
92
77
127
92
37
124
67
130
92
144
107
169
122
103
111
105
127
83
105
74
37
138
88
119
142
138
67
92
122
67
55
144
92
139
171
55
101
67
77
92
107
73
128
69
123
99
93
72
180
127
56
132
69
110
171
56
126
77
86
138
104
56
69
67
91
95
105
103
109
126
145
105
112
105
55
124
105
123
56
100
169
138
138
152
122
109
123
79
37
89
105
92
55
169
55
104
56
88
105
67
56
107
67
92
131
139
55
37
55
69
114
92
104
134
103
92
128
124
110
122
98
135
88
110
67
152
107
105
93
104
105
139
56
55
79
122
92
86
75
110
67
122
117
178
69
99
139
86
123
123
105
97
104
138
55
144
55
152
104
105
91
188
139
144
110
178
69
77
56
138
128
127
146
123
123
152
108
69
105
37
122
126
122
67
138
126
169
142
138
55
162
169
99
84
105
92
87
165
123
140
180
181
126
124
120
140
146
132
105
130
86
163
130
55
79
139
105
104
144
67
86
105
144
74
125
105
118
99
126
122
110
93
100
152
92
79
127
127
107
67
111
55
93
55
158
138
139
138
92
110
56
122
123
123
104
83
55
113
69
138
84
132
37
56
55
107
112
152
79
178
93
125
199
87
75
55
92
138
58
103
55
127
156
110
108
105
75
138
135
178
68
105
58
79
110
104
99
103
107
119
55
122
146
126
178
144
99
55
110
110
110
169
55
114
139
104
101
162
93
56
119
55
119
110
37
92
105
148
55
93
67
104
92
55
171
93
122
58
92
93
98
56
138
144
124
110
138
148
56
152
110
139
67
101
79
58
126
103
55
110
92
67
108
127
75
131
138
125
109
87
152
122
122
110
69
144
126
83
55
69
123
96
91
98
84
105
89
55
140
93
109
146
127
126
86
144
37
105
77
122
110
134
77
97
86
126
178
73
84
169
111
115
69
91
77
140
127
138
131
126
37
135
163
99
67
109
128
123
135
75
105
56
138
98
67
67
104
178
146
121
92
93
169
56
146
123
110
37
37
120
100
107
110
110
138
101
92
119
92
120
138
104
118
91
91
131
37
104
67
75
131
146
119
163
104
126
115
122
122
131
92
92
140
105
104
165
138
124
55
93
92
93
114
67
145
126
122
105
128
56
158
93
56
105
135
146
142
104
74
81
105
101
80
67
118
56
77
92
74
111
37
95
128
55
55
104
58
152
110
109
128
79
138
67
37
105
128
122
55
105
150
105
55
55
122
103
93
178
105
88
92
160
89
123
118
152
129
128
126
138
144
78
152
110
56
152
178
92
93
142
112
109
107
92
144
163
122
91
144
55
79
105
130
86
104
144
128
74
98
55
67
104
109
105
92
79
134
105
146
86
104
109
55
109
137
134
92
127
139
92
152
69
119
128
91
112
131
109
152
144
110
108
78
69
124
91
77
99
130
142
138
75
132
93
110
92
178
109
110
112
119
67
142
92
69
105
122
110
189
92
69
78
138
69
110
165
75
139
131
110
58
137
130
138
110
137
37
97
109
92
119
122
138
86
160
67
107
140
112
75
139
122
139
98
146
93
93
178
92
132
110
122
169
92
145
56
67
37
79
93
150
169
74
86
158
92
144
55
56
127
119
146
56
55
80
55
164
98
105
118
127
110
126
180
92
56
121
105
122
148
138
92
58
92
55
105
152
138
93
146
112
106
122
140
37
138
105
119
101
97
56
107
55
92
144
67
55
58
138
92
86
37
97
132
58
120
126
110
102
107
169
114
67
89
168
126
137
114
105
79
93
74
92
139
56
89
138
75
92
92
89
152
123
86
55
146
55
122
105
126
138
110
122
139
131
74
126
55
139
55
127
102
110
131
127
67
122
84
108
120
151
77
128
152
74
123
69
144
110
128
138
122
152
134
86
148
98
93
83
97
92
126
144
97
138
146
119
75
68
104
37
145
55
83
148
92
92
140
103
128
55
135
68
107
148
37
122
99
182
102
86
74
37
55
91
55
96
83
109
138
128
105
122
140
122
86
122
105
93
138
178
142
103
134
124
58
111
111
152
74
126
55
104
138
56
122
126
112
69
138
91
105
67
56
110
122
130
127
67
114
178
83
134
97
109
55
169
163
83
107
130
91
146
180
98
83
75
124
84
123
92
197
104
81
117
92
110
74
169
104
91
135
127
126
105
93
138
122
110
69
55
55
55
141
106
131
75
55
105
107
169
83
87
105
92
92
148
134
126
68
126
105
79
126
92
93
169
74
111
89
165
67
92
152
145
130
77
56
58
55
67
158
92
104
124
92
67
138
109
136
58
55
105
77
122
140
132
83
114
75
93
144
56
37
152
58
152
137
92
122
61
99
122
123
93
92
103
140
97
152
102
171
110
55
124
69
83
134
104
92
100
67
152
110
58
111
37
122
108
55
148
77
93
105
122
67
123
69
37
67
160
112
92
140
67
122
58
92
180
123
37
142
84
105
131
67
139
127
127
146
146
67
105
102
138
168
98
55
144
140
86
79
56
67
138
77
55
158
92
73
109
103
105
72
139
55
107
122
55
58
102
67
105
68
58
112
126
110
37
124
67
55
123
86
103
105
55
68
178
122
134
110
74
111
56
135
37
110
123
92
127
92
67
55
67
152
114
67
129
112
56
93
75
118
138
103
139
37
92
99
144
110
56
126
138
109
56
97
134
139
105
55
93
122
126
132
92
158
122
104
152
138
92
55
127
74
67
55
99
167
122
92
92
138
37
126
130
93
139
103
124
110
144
79
77
135
144
55
105
158
169
55
138
69
134
105
126
125
141
95
109
132
149
56
91
146
56
154
138
104
144
140
104
126
97
126
110
134
98
126
122
148
58
123
142
126
109
126
58
67
104
77
127
152
146
37
104
98
92
126
138
144
138
93
122
104
110
137
84
178
110
103
92
56
105
122
110
69
37
111
109
55
127
55
125
109
56
77
105
120
122
98
56
112
58
180
110
91
58
103
86
105
122
122
138
152
145
78
79
146
100
55
101
93
37
56
178
132
164
67
100
97
128
180
126
140
56
111
114
104
109
104
127
138
95
93
122
162
158
138
167
144
67
81
58
140
55
127
55
67
146
144
140
69
144
122
169
107
112
67
92
91
122
122
104
56
114
55
105
127
75
103
93
77
55
139
92
92
148
105
91
107
139
104
132
148
105
67
92
37
152
131
81
105
91
122
126
92
132
102
37
105
149
55
138
117
110
139
55
77
122
127
127
93
101
92
114
58
78
138
130
110
126
148
37
140
109
58
92
119
105
178
56
84
92
139
79
138
92
138
69
91
67
103
160
142
138
94
140
113
162
79
122
168
92
67
105
93
136
92
119
123
105
104
74
105
144
105
93
140
127
152
67
111
92
93
92
68
89
109
79
168
169
144
111
106
37
123
55
110
122
92
110
105
138
119
67
123
178
110
69
99
147
127
130
93
152
92
138
56
149
146
86
55
110
104
58
139
75
180
77
122
91
55
92
92
110
124
105
131
152
139
122
105
123
146
56
94
92
105
83
104
105
114
146
138
128
86
99
37
55
92
100
79
106
139
112
67
110
55
122
99
79
101
103
110
58
144
140
120
92
122
117
86
110
58
126
75
69
119
119
119
92
67
101
138
126
102
122
67
110
104
77
91
105
138
138
128
140
148
147
37
103
92
114
158
138
127
128
130
93
122
144
123
110
178
78
99
79
92
134
111
93
138
105
107
105
55
37
127
122
111
93
104
67
89
79
137
135
100
132
67
139
55
55
55
92
83
103
37
67
146
109
110
138
139
110
126
109
144
104
138
55
56
92
93
118
92
111
92
110
105
103
111
146
124
105
178
132
110
144
105
110
111
96
92
67
93
92
55
100
75
122
91
110
99
138
149
95
152
104
158
56
55
110
146
131
92
113
55
94
104
128
144
124
86
67
103
123
104
144
138
168
126
178
67
92
74
91
126
169
163
58
122
164
55
91
111
130
138
37
104
86
128
104
126
104
91
92
92
92
122
111
69
119
134
55
127
56
128
118
93
158
97
79
93
106
122
105
92
122
104
79
55
92
126
105
126
131
98
77
126
110
95
92
169
142
178
171
122
86
110
121
92
92
124
178
55
178
58
128
55
110
110
138
97
152
139
105
119
109
92
105
122
93
58
55
105
111
107
55
110
164
105
122
92
100
104
111
109
56
127
124
79
56
146
126
129
99
92
105
139
122
167
55
86
128
168
74
55
83
67
91
123
152
85
92
138
55
122
144
169
105
119
58
67
123
132
91
84
139
56
79
122
110
142
92
126
122
119
132
69
122
99
55
92
67
144
146
55
148
138
58
92
55
138
119
122
69
107
93
110
105
169
100
138
55
56
110
75
124
92
111
67
92
132
55
122
139
97
136
110
95
104
144
105
110
93
110
122
127
111
122
92
152
122
152
109
119
122
56
94
111
139
144
128
106
104
122
55
109
103
105
138
127
74
122
124
140
137
92
105
124
79
127
127
134
152
58
123
56
119
56
55
103
92
75
92
67
139
58
55
92
74
79
55
132
55
93
37
144
178
105
144
146
119
92
111
92
122
102
105
111
55
144
125
146
138
109
128
75
122
92
128
101
105
137
55
37
107
126
105
146
122
93
37
55
144
123
92
124
119
107
122
103
79
139
105
122
139
138
111
92
126
67
104
134
180
86
139
101
104
158
131
139
127
129
104
113
171
159
97
130
138
140
127
106
56
77
91
126
105
138
138
168
127
134
122
141
79
67
72
110
83
67
127
110
111
152
78
126
58
98
146
156
105
122
91
152
140
146
168
92
92
56
58
180
144
178
75
58
149
105
146
74
122
138
127
108
111
123
122
55
92
105
77
148
144
127
134
130
108
56
93
119
126
108
55
55
55
93
110
178
119
67
77
37
178
56
55
119
55
92
145
83
127
74
55
56
92
127
122
131
56
119
92
55
83
92
110
152
105
89
37
92
104
111
122
118
37
138
145
69
152
119
96
93
56
56
122
104
110
148
93
55
55
139
93
56
142
67
92
138
93
119
144
171
93
103
67
100
86
122
105
91
105
114
126
67
122
69
163
132
58
55
99
105
105
37
138
104
79
97
144
126
123
55
139
137
100
120
99
119
55
126
132
126
122
127
79
91
83
64
55
92
58
144
178
122
105
86
110
79
126
111
56
118
100
124
168
37
144
56
104
72
104
146
126
79
86
163
92
122
146
58
144
121
92
105
178
110
178
123
77
152
103
69
56
109
75
69
148
137
110
67
148
94
119
92
105
106
120
181
91
83
91
83
165
122
119
129
79
128
100
77
139
58
144
55
122
74
86
110
92
110
110
152
158
91
123
55
138
74
146
55
55
139
67
91
37
92
93
67
102
67
55
119
122
77
122
126
104
55
119
88
111
120
144
93
110
148
178
169
86
99
56
105
122
178
164
105
93
92
55
139
138
67
171
105
58
122
111
123
139
132
139
127
56
91
126
111
128
146
68
111
158
79
98
86
58
111
135
93
92
138
140
55
162
126
76
158
101
92
55
138
108
92
104
144
137
117
126
105
126
126
92
130
113
77
158
122
81
79
102
104
55
56
127
105
134
126
138
139
104
37
92
67
112
104
83
114
110
122
104
124
99
126
138
122
111
104
113
169
114
56
75
77
104
56
136
100
123
83
103
178
169
127
148
138
148
56
128
103
105
123
77
79
119
56
83
139
134
93
138
55
104
144
103
68
139
55
104
131
110
55
136
58
122
74
93
89
55
92
140
56
122
138
110
92
55
122
120
138
146
110
123
113
156
76
67
93
55
128
67
126
107
139
102
122
104
169
37
99
168
101
168
126
169
55
99
105
123
123
165
109
58
56
64
99
122
86
119
152
77
119
110
122
104
55
37
109
100
127
158
138
139
122
78
109
132
138
94
113
121
99
122
105
92
105
97
124
92
69
77
86
126
138
168
55
37
67
84
122
146
99
146
169
139
144
139
122
119
127
171
122
148
126
128
126
127
109
122
74
93
117
134
131
83
112
110
107
92
104
111
130
168
130
92
37
112
105
56
120
55
103
110
55
165
134
58
168
93
110
110
110
124
105
153
56
105
171
141
109
178
126
178
128
146
37
107
146
169
178
112
58
122
107
127
139
56
178
58
75
110
92
67
55
110
119
105
67
115
77
67
139
37
126
56
98
110
58
79
105
134
128
122
92
67
128
83
88
139
79
126
144
58
86
93
135
117
124
123
139
182
139
86
152
109
93
134
146
118
79
112
86
142
67
101
158
93
92
100
122
92
110
104
74
138
86
77
105
144
103
100
123
124
67
122
144
119
105
122
91
119
122
119
119
86
103
136
127
151
92
146
79
56
37
119
56
138
92
111
110
67
55
178
149
138
142
158
92
37
58
37
127
105
67
77
178
104
152
67
160
127
139
68
56
104
92
112
126
92
86
69
105
126
136
120
126
148
110
104
101
122
122
119
92
178
55
69
127
148
103
91
105
138
105
125
105
55
92
110
112
37
104
91
178
104
145
55
122
55
104
122
99
111
120
138
99
83
93
74
55
92
87
105
92
122
74
79
58
55
122
111
162
118
122
55
105
140
92
104
126
55
142
156
111
138
56
79
144
92
76
56
109
115
137
144
101
105
148
121
77
103
105
128
92
110
86
92
55
118
67
102
100
126
77
92
74
139
119
131
119
119
94
138
67
92
68
125
132
67
171
122
92
110
124
139
58
55
104
93
158
110
129
119
127
113
88
104
67
129
122
37
140
69
104
69
139
103
103
126
83
171
75
152
58
77
58
107
138
169
171
83
127
131
115
110
67
128
138
99
122
99
122
158
91
67
142
74
167
58
152
89
56
67
83
118
83
146
132
67
67
104
117
151
67
110
110
105
91
111
102
152
111
105
92
97
136
104
110
146
169
128
144
110
181
140
93
168
55
127
92
123
152
140
83
119
55
138
86
58
97
126
98
67
139
95
118
101
139
127
110
169
92
122
110
58
98
58
92
168
56
74
144
178
110
93
126
144
88
74
105
148
122
144
87
104
144
103
108
107
123
67
67
104
126
55
131
101
139
104
139
79
111
105
105
110
37
77
107
122
111
162
69
127
134
110
134
171
77
139
92
86
128
107
123
122
122
123
130
146
149
111
67
80
101
92
56
102
100
117
56
146
111
55
124
105
126
126
144
122
120
134
93
92
92
93
93
105
93
99
105
55
92
99
55
77
92
169
92
182
146
104
139
138
67
101
158
100
169
67
138
92
144
146
58
117
68
123
144
105
126
169
74
127
114
127
112
123
119
55
104
104
110
92
138
107
124
138
122
165
127
144
110
134
93
92
126
104
104
110
134
56
105
86
67
110
125
92
92
105
67
83
171
105
148
56
126
169
192
92
114
69
126
37
109
68
129
122
171
81
105
169
139
97
123
77
104
135
55
142
111
119
96
107
109
110
77
119
127
110
126
130
56
104
126
105
120
110
178
55
127
139
87
69
138
126
106
86
140
180
112
89
86
68
140
146
55
110
67
81
126
101
95
138
104
100
126
139
74
123
79
92
74
165
111
122
178
55
127
109
74
107
67
104
122
92
126
110
121
92
104
118
89
97
139
122
132
106
55
105
123
55
181
126
126
75
158
107
104
112
127
104
92
171
103
122
105
168
165
110
55
122
161
127
118
148
91
37
67
127
127
134
55
122
103
152
126
122
67
111
105
137
135
67
93
140
93
37
123
56
149
131
128
110
109
132
55
139
117
140
92
55
126
127
105
37
95
126
110
74
131
84
103
146
79
107
169
171
105
69
126
91
140
69
127
127
58
149
55
130
118
115
103
144
104
67
56
122
110
111
160
139
93
111
137
138
178
67
68
101
55
125
74
55
126
58
135
109
107
67
92
120
134
127
92
103
104
124
138
104
84
67
103
149
84
128
67
110
107
122
167
152
107
126
119
105
110
92
81
69
92
122
105
37
144
55
84
104
110
122
179
158
37
89
146
122
128
123
83
105
122
86
122
112
105
131
126
103
127
125
124
93
114
130
138
109
37
111
56
86
124
69
93
103
69
112
126
55
122
89
92
58
55
136
122
171
136
89
56
99
120
37
67
92
93
93
167
75
180
68
88
100
92
112
109
89
86
144
89
134
93
110
122
101
86
169
56
126
127
140
119
123
140
126
58
165
122
109
37
123
139
67
126
121
83
120
64
105
79
138
67
164
138
69
93
95
104
126
127
56
37
92
86
138
77
96
92
138
139
69
89
128
112
144
58
93
139
93
146
112
74
105
126
137
75
119
92
105
121
92
79
79
55
95
92
126
103
126
140
98
138
127
120
92
136
67
67
126
94
105
130
92
111
139
98
83
67
137
104
138
91
178
55
92
77
92
144
104
105
111
122
93
115
123
122
92
58
37
55
112
67
105
56
122
137
69
106
122
55
109
146
74
67
119
122
98
139
115
164
126
91
146
93
134
134
126
126
75
67
127
107
134
58
152
104
89
127
111
119
92
128
86
92
92
134
98
56
148
111
99
124
37
165
160
128
120
58
105
92
115
77
105
55
138
135
113
67
122
124
56
109
144
104
139
55
56
136
56
127
67
178
127
117
74
114
124
126
92
92
153
126
96
118
58
140
169
74
58
58
106
107
67
88
77
138
138
97
104
79
67
124
110
97
122
162
178
93
77
130
69
125
109
92
67
127
138
144
80
92
92
100
169
138
110
93
138
107
108
104
105
74
69
122
69
178
105
104
127
127
122
92
122
37
67
115
127
146
81
58
55
104
55
110
128
55
158
136
123
37
151
143
134
136
123
136
149
37
92
132
110
178
138
104
92
99
110
136
56
55
136
146
55
168
110
122
126
139
107
67
105
126
92
97
92
178
58
69
122
128
95
101
55
37
92
83
138
110
117
127
92
114
56
92
92
37
98
74
123
93
127
138
101
115
92
67
55
149
76
122
134
103
105
149
110
171
132
122
138
104
102
145
116
122
127
108
111
84
83
118
123
126
105
92
105
103
138
119
122
99
171
37
110
102
56
168
110
105
109
163
126
37
121
86
152
144
146
142
105
99
56
79
123
104
100
140
139
108
105
92
120
86
99
91
67
130
37
126
110
109
152
56
128
138
178
128
84
58
55
128
178
92
139
77
126
97
138
67
107
110
126
169
120
67
55
92
92
99
111
87
37
111
67
56
126
55
105
91
91
93
139
105
122
126
124
55
146
140
92
126
69
74
58
69
132
122
178
83
92
55
111
128
134
92
56
37
92
129
139
92
79
144
147
55
126
119
120
110
116
110
114
169
102
146
105
92
92
127
79
122
127
69
145
138
92
137
105
104
112
58
128
115
128
134
131
83
122
55
93
120
122
144
68
83
122
146
140
109
138
126
92
83
83
56
110
105
178
110
144
122
178
78
58
69
109
105
55
136
127
139
118
75
123
92
112
110
139
79
110
109
140
144
152
139
56
55
112
104
140
152
110
124
106
164
83
89
114
143
126
65
126
105
92
110
93
123
110
139
178
92
138
134
58
110
122
122
37
95
67
111
107
122
92
124
88
130
55
148
92
139
140
105
68
77
171
123
138
55
55
93
92
92
56
99
87
122
93
154
111
117
130
123
114
146
110
123
99
137
158
115
103
92
110
84
92
122
109
122
111
103
122
105
92
104
93
147
138
169
140
56
178
145
139
55
169
123
122
104
127
178
102
99
122
138
69
56
92
91
55
110
80
98
127
37
55
83
108
134
146
122
56
114
67
75
105
177
152
55
178
102
105
55
55
75
104
67
117
105
74
93
92
98
125
92
104
178
127
104
84
55
96
126
104
55
139
152
107
77
92
139
140
110
171
93
178
105
134
137
146
69
108
126
132
93
145
79
56
93
138
95
122
178
107
92
105
138
93
84
97
92
105
93
92
131
104
110
105
92
160
146
118
110
56
112
180
93
103
178
92
127
107
111
171
67
165
101
67
138
105
105
111
110
134
92
86
120
56
148
37
102
58
107
126
67
149
101
55
158
109
122
134
171
105
110
180
92
134
103
127
122
130
139
92
92
144
110
74
104
127
119
134
55
140
130
146
127
103
146
105
138
134
55
138
112
128
126
114
105
97
122
125
122
145
138
142
58
103
111
122
111
105
58
171
84
65
110
140
122
130
120
67
138
110
139
128
92
105
92
55
69
178
93
138
105
55
122
67
91
126
92
98
67
86
75
140
105
92
68
91
138
76
105
120
171
158
104
139
122
107
97
58
91
55
84
56
122
149
134
142
138
67
132
92
68
152
74
74
162
122
98
67
171
93
99
105
73
91
124
124
107
37
110
77
125
139
92
55
75
122
158
73
178
58
110
84
152
119
55
112
131
106
178
75
68
104
91
37
158
92
124
68
110
122
104
93
55
83
138
37
128
92
146
132
92
93
140
126
139
93
92
105
55
105
158
114
109
92
105
102
100
144
103
104
92
55
55
37
77
148
110
67
92
92
138
158
92
144
107
91
178
67
74
138
101
104
98
92
126
126
69
58
92
127
158
69
77
97
68
122
93
67
86
104
37
110
128
67
139
110
146
123
127
199
123
178
110
131
122
101
139
130
107
110
57
152
128
67
104
107
146
144
169
149
104
69
178
75
163
126
58
99
123
178
126
86
146
55
77
93
135
69
93
99
110
92
92
152
123
112
95
93
92
95
140
99
107
139
138
139
122
138
171
126
69
37
55
67
117
126
122
77
131
125
140
56
55
110
104
101
119
120
91
56
115
56
69
107
67
144
134
122
97
58
144
111
77
122
126
139
37
123
86
134
105
93
132
152
104
37
55
69
122
124
119
105
105
56
67
141
106
92
104
67
156
128
107
67
55
58
100
56
178
138
178
67
105
92
56
91
122
139
69
126
103
67
134
105
127
75
112
105
115
134
92
140
145
94
132
37
92
168
118
55
144
72
110
92
128
55
134
108
139
93
91
114
122
93
105
92
101
139
189
93
169
92
152
152
118
139
97
148
126
139
105
56
110
126
69
74
130
55
144
110
104
55
122
122
124
106
110
110
138
130
75
169
92
107
84
105
138
110
126
104
122
83
89
56
124
67
127
126
101
130
111
138
138
110
99
126
105
134
123
127
108
162
106
127
55
92
104
99
56
103
180
105
127
37
109
146
152
67
107
37
88
98
141
134
120
55
118
56
69
134
126
37
178
178
148
105
131
164
169
100
77
86
153
93
162
67
122
55
92
139
58
93
67
92
124
92
58
138
58
139
146
178
127
93
100
124
131
75
37
92
144
128
92
127
56
126
77
92
117
178
56
56
103
119
67
123
79
55
110
93
67
58
127
109
119
127
126
126
84
126
105
92
110
92
171
109
86
122
112
93
104
132
111
105
132
146
139
105
105
92
122
93
122
92
55
104
68
55
124
110
131
169
178
169
138
111
55
55
126
37
119
146
78
69
104
126
110
89
98
122
128
69
122
92
79
127
92
67
127
119
69
110
134
92
107
152
113
165
122
103
128
77
171
144
104
126
69
122
122
122
56
138
105
110
105
144
83
92
80
92
58
84
138
55
123
111
131
134
139
80
138
67
83
92
104
93
67
109
69
58
86
77
91
146
126
119
92
55
110
122
163
92
92
86
67
110
124
127
144
178
91
92
130
110
105
91
110
138
128
69
164
122
93
110
110
77
109
144
77
55
123
56
92
128
37
110
119
110
112
114
130
144
152
139
93
144
92
129
123
139
122
104
118
108
102
107
91
58
126
126
67
110
98
69
92
122
55
126
128
74
92
158
122
99
171
83
110
168
67
178
134
67
131
123
122
92
146
134
92
55
91
55
74
111
146
69
139
56
138
110
37
58
93
79
104
107
122
67
56
128
119
152
138
110
130
124
67
163
134
100
79
55
108
58
83
92
116
109
158
145
93
122
55
56
107
83
138
138
100
110
138
77
79
144
125
105
92
110
105
152
105
105
102
131
137
105
72
127
86
73
160
130
86
67
37
92
110
92
127
168
122
144
55
139
152
169
104
105
75
169
119
56
122
128
92
105
114
118
92
178
119
127
132
109
55
169
122
98
128
99
136
146
105
105
79
55
171
98
86
163
104
84
111
104
138
99
110
104
75
139
146
101
123
103
132
93
167
177
67
93
67
105
108
98
102
92
37
83
126
93
93
128
169
126
192
178
110
126
127
126
37
92
55
122
105
109
92
163
140
111
105
111
178
110
178
109
168
146
126
99
137
55
144
109
131
111
99
93
152
101
92
74
158
99
75
122
95
86
86
122
67
93
122
92
140
178
178
55
104
135
122
56
146
132
103
68
55
138
37
126
99
104
86
55
79
139
105
99
58
122
111
122
178
178
109
79
56
178
167
127
93
55
92
91
152
139
67
55
104
110
144
146
126
84
92
67
103
122
127
92
105
152
105
75
92
139
67
146
129
56
122
93
140
56
114
104
132
139
92
107
55
134
92
160
138
104
91
110
111
126
168
138
93
77
122
146
138
132
91
127
93
134
69
114
178
55
126
147
37
111
55
105
128
94
92
104
144
110
105
146
119
92
127
104
56
111
55
119
109
55
178
126
58
92
152
56
122
67
97
67
122
79
122
156
91
132
37
128
132
110
126
144
127
92
72
58
119
106
102
110
145
152
178
138
75
138
110
55
56
93
92
55
132
92
139
130
102
156
127
146
77
110
109
104
139
138
180
122
110
105
58
139
127
93
105
67
92
138
141
126
127
164
75
94
110
55
99
127
86
131
144
37
144
92
103
92
103
139
75
199
103
111
165
77
67
92
160
164
132
109
55
178
69
56
55
126
140
127
114
138
122
119
107
127
107
139
99
92
67
100
93
110
122
122
178
138
103
122
118
122
37
86
92
142
134
110
95
92
89
92
122
109
55
106
55
138
139
110
138
180
124
94
74
169
104
127
114
69
156
93
92
37
109
103
93
124
138
103
101
68
56
104
119
124
146
162
139
105
69
110
146
108
178
115
122
122
58
171
110
178
119
126
91
77
169
138
144
110
55
91
127
92
140
139
110
146
110
146
169
55
110
84
139
106
111
88
139
127
117
92
188
37
178
92
98
122
120
37
107
167
79
55
156
137
92
77
77
58
75
92
114
138
105
122
114
127
126
68
110
122
110
69
144
68
104
78
144
56
86
104
93
100
104
67
58
101
67
84
138
105
67
130
86
103
104
126
110
93
126
127
56
110
105
122
102
55
122
150
83
123
148
138
129
92
146
127
118
178
121
164
75
110
110
122
101
123
122
101
112
136
152
55
104
99
93
56
126
56
67
67
110
92
113
169
180
37
129
178
58
71
92
146
78
93
75
138
109
55
110
103
146
169
67
58
152
126
144
101
152
56
140
56
120
109
93
55
79
108
37
108
58
107
58
91
132
134
161
58
75
74
104
138
92
127
138
178
140
122
94
105
92
105
109
104
169
37
127
123
92
55
55
139
124
178
110
177
152
111
152
152
97
105
92
169
119
134
56
110
152
100
55
132
92
92
122
92
55
67
101
152
58
118
92
98
67
139
92
58
68
91
146
110
110
119
140
126
104
69
69
158
127
122
92
110
110
93
69
168
140
95
105
99
138
127
58
103
92
138
65
104
189
69
126
74
106
120
139
171
93
148
124
142
130
107
92
55
110
91
105
107
79
77
55
126
122
68
117
58
74
132
180
139
69
133
148
105
140
99
93
58
127
115
67
107
92
105
142
128
92
126
56
178
138
180
136
122
58
55
152
92
137
131
37
110
92
131
55
105
146
105
84
86
163
171
92
110
139
92
67
93
95
171
56
100
58
67
69
138
93
67
77
146
138
79
144
137
144
178
69
55
55
126
127
93
55
93
128
137
110
199
139
92
144
138
105
110
119
122
103
120
104
148
110
104
113
105
79
91
127
135
111
109
69
92
58
77
93
56
103
105
130
112
124
152
178
107
107
68
101
92
93
152
138
158
55
67
55
106
58
126
98
99
109
136
55
75
122
126
146
107
110
138
128
164
111
92
55
138
135
112
55
103
169
104
127
124
93
128
152
110
69
141
110
105
156
104
58
105
37
126
147
127
98
130
37
138
103
56
69
68
105
104
138
105
178
122
122
56
93
127
158
123
69
103
110
74
91
110
110
55
67
104
55
105
74
105
99
137
67
93
128
130
92
55
103
67
114
122
74
165
123
79
146
69
103
134
92
146
64
102
95
55
93
64
79
120
98
69
104
118
110
55
56
92
105
105
79
140
88
130
138
37
144
148
92
130
110
105
56
138
102
99
127
105
122
168
84
115
67
105
138
79
107
104
122
164
110
138
99
69
56
105
146
92
93
56
126
110
55
126
109
75
122
56
127
37
79
91
122
160
123
74
140
79
55
92
122
151
55
128
55
138
134
100
134
128
144
105
79
92
138
105
67
105
92
104
64
118
111
127
92
37
104
56
138
131
58
55
56
102
74
118
99
104
146
122
138
103
37
107
69
92
111
93
162
163
127
105
105
139
93
80
123
110
131
123
132
107
119
146
86
139
101
105
55
110
145
178
119
58
122
91
122
117
110
56
55
146
55
75
56
105
100
79
110
111
110
122
58
124
103
148
119
120
105
127
167
119
91
169
69
92
56
152
144
103
55
105
126
93
37
92
92
100
67
144
102
110
122
67
67
104
158
132
55
37
37
105
146
77
117
126
92
111
122
104
109
105
55
110
110
146
69
147
74
93
74
74
74
139
37
192
92
74
122
118
158
56
152
110
160
110
99
56
126
119
92
55
79
55
101
122
105
138
92
146
88
127
142
92
130
58
131
92
109
55
146
86
93
112
180
69
122
132
131
67
56
37
67
92
119
55
115
92
88
110
103
124
91
91
110
178
126
92
91
114
139
92
92
130
126
124
55
76
56
105
122
103
138
58
152
55
92
146
103
75
104
107
128
139
110
122
122
110
169
92
97
79
55
111
105
93
111
112
110
124
127
93
110
122
79
102
58
105
69
93
126
92
107
92
152
98
111
145
92
92
126
37
92
84
108
92
67
160
122
127
126
92
56
122
124
169
128
93
109
111
113
93
126
178
55
105
68
92
67
67
137
105
136
37
84
108
56
138
107
117
93
122
104
127
138
171
122
130
135
111
181
110
78
98
178
110
93
97
103
56
126
105
92
103
92
111
128
122
58
69
67
109
105
123
152
106
114
99
110
144
95
178
92
99
127
123
58
79
114
55
93
146
84
86
126
37
78
122
126
93
83
37
37
163
93
104
113
146
92
86
117
93
140
55
139
126
37
81
92
126
122
178
92
92
69
110
169
55
58
122
103
105
122
93
92
92
106
67
77
171
122
122
122
58
109
79
67
152
156
136
77
92
162
111
136
69
178
104
118
91
122
93
145
126
137
110
79
77
92
122
152
138
56
148
104
92
139
122
109
127
56
126
55
81
93
129
126
138
56
195
126
149
91
139
118
93
107
180
99
102
162
55
55
101
158
92
105
92
83
109
104
122
114
126
37
169
56
152
127
168
92
55
93
146
105
95
122
92
123
55
104
109
83
86
84
83
91
104
83
83
92
92
105
77
178
104
104
132
127
55
122
92
117
104
58
92
152
109
152
56
110
168
92
37
37
119
134
111
105
106
140
55
128
102
130
108
131
73
56
132
79
171
146
134
92
79
163
162
56
101
69
56
91
105
126
56
83
108
171
171
110
77
93
178
58
77
126
92
134
142
109
110
80
67
110
93
55
92
77
89
74
68
79
131
56
110
93
105
75
123
55
104
105
99
56
159
93
37
58
67
105
58
126
140
91
119
56
128
127
55
138
110
86
140
128
138
55
55
89
130
93
111
138
122
165
110
93
152
87
86
97
76
139
152
122
109
152
122
89
126
139
146
91
138
119
92
158
146
134
123
105
104
92
139
67
67
139
104
104
152
92
146
162
67
75
110
88
171
67
55
93
151
92
67
119
110
119
126
129
122
75
114
178
122
107
98
89
139
92
146
93
55
74
158
56
168
119
128
56
126
110
110
126
99
92
67
152
116
92
127
168
100
99
97
92
92
99
55
146
126
121
110
145
77
65
119
127
178
110
122
158
92
87
120
102
105
164
115
119
93
103
104
79
74
100
99
109
144
56
67
89
110
56
55
109
126
178
145
169
168
105
67
124
113
178
160
89
86
145
126
105
104
140
178
151
161
138
92
92
92
112
56
37
91
105
95
110
152
67
134
139
104
74
102
178
139
177
117
122
104
55
55
138
138
56
126
152
86
126
94
132
101
55
57
95
58
37
92
92
92
109
105
84
139
138
112
58
162
120
105
92
178
55
131
98
56
67
122
69
81
146
112
136
165
92
92
93
55
72
158
144
127
139
106
123
83
84
74
75
92
105
123
139
125
80
119
119
110
152
138
56
91
86
94
110
123
67
99
92
92
92
93
105
107
138
67
105
55
107
134
169
117
108
122
67
89
101
110
122
89
93
92
138
148
178
134
126
105
122
105
134
107
55
152
79
126
58
123
37
67
108
74
127
122
126
126
110
146
126
55
92
140
109
107
126
93
79
110
138
122
55
67
56
99
110
178
67
55
124
58
93
104
56
67
88
126
58
92
138
106
114
119
122
104
93
79
92
58
104
92
55
138
128
77
127
126
99
92
182
168
92
110
99
126
74
105
134
97
92
88
86
178
98
107
93
110
134
79
136
180
128
111
105
68
80
127
128
126
56
104
151
124
58
92
131
132
122
122
109
99
138
55
124
148
158
91
55
110
147
138
37
92
138
158
99
126
105
127
88
119
140
123
126
79
105
109
92
138
126
138
123
56
132
112
97
74
138
126
67
92
122
139
123
141
158
97
131
67
110
120
87
178
86
105
68
128
37
123
152
122
79
167
105
128
119
79
105
92
104
152
55
120
86
93
111
142
69
128
122
56
84
107
92
79
112
91
109
138
69
138
74
103
146
134
74
134
69
107
144
110
105
58
103
160
56
77
81
67
111
111
111
109
124
108
73
55
129
69
79
77
178
110
139
110
122
99
98
171
92
128
104
119
98
112
105
92
110
134
122
58
119
165
118
55
134
55
84
134
77
138
130
138
128
37
105
169
68
138
144
178
58
110
121
55
92
105
55
105
152
92
56
138
131
74
92
126
122
75
160
139
134
99
113
87
139
98
69
79
117
112
92
138
127
107
69
92
55
67
148
86
122
69
92
144
122
122
109
126
130
104
55
93
120
65
67
144
105
127
142
139
91
110
92
76
37
122
37
126
55
138
77
122
99
105
58
100
115
93
107
169
37
55
148
75
120
55
77
167
135
58
122
69
180
130
86
83
169
178
37
93
131
92
92
95
56
152
138
56
92
81
139
55
102
92
178
93
83
67
122
180
110
138
178
104
123
58
136
171
135
134
77
69
88
152
103
122
111
92
144
78
56
128
106
111
130
91
109
124
37
88
126
119
110
119
126
135
92
128
56
37
138
117
145
158
131
56
110
106
91
92
110
91
123
138
104
110
55
103
67
97
152
69
122
56
139
55
127
79
58
37
55
81
93
126
107
93
115
136
80
37
56
180
110
130
92
100
104
123
79
148
139
37
101
69
67
105
58
129
146
104
122
55
69
105
105
109
69
92
67
104
105
55
126
74
125
110
117
119
105
78
168
104
99
37
123
67
122
77
56
56
55
109
69
105
140
58
139
128
119
144
144
146
125
128
105
139
93
80
68
126
131
37
157
83
139
139
104
83
92
108
165
110
55
128
105
127
104
107
74
105
92
99
152
91
92
126
178
121
178
127
110
73
120
92
37
74
104
120
180
93
178
122
91
84
138
68
83
142
58
148
56
148
122
138
122
104
126
126
129
55
105
56
93
122
86
131
92
92
122
178
92
79
178
139
93
110
144
147
140
139
106
107
105
132
114
128
77
139
92
139
139
55
101
105
104
119
67
139
169
67
104
169
168
92
81
99
134
178
152
55
55
124
126
104
110
119
55
55
158
92
144
92
111
139
67
79
112
99
107
103
74
110
145
67
139
105
55
106
77
104
101
144
127
130
138
146
122
122
126
55
163
109
134
162
132
114
138
111
93
56
104
55
146
112
140
55
127
111
75
138
164
110
37
56
126
110
163
92
138
135
168
55
138
37
138
105
130
169
110
111
55
124
104
144
55
56
122
58
103
158
104
126
107
100
107
109
139
177
152
78
93
139
74
37
137
37
105
169
132
119
122
137
126
126
105
56
92
75
58
58
110
127
125
127
75
123
146
55
55
152
128
109
55
178
100
140
178
74
58
58
105
146
110
92
146
83
58
56
139
92
93
58
139
144
58
149
58
113
88
92
77
67
119
178
93
69
168
178
127
126
137
146
128
75
136
104
75
171
109
131
79
104
107
56
110
122
134
107
145
139
105
92
92
56
169
171
58
92
83
92
118
108
105
55
69
100
69
87
140
109
122
84
169
144
77
139
67
97
97
126
112
68
124
37
158
93
84
134
134
152
117
129
120
123
104
115
56
138
58
81
69
110
140
58
122
136
138
109
105
110
55
109
105
55
56
110
77
134
103
111
56
178
68
89
58
101
126
127
99
98
110
178
138
55
41
55
83
138
105
37
98
92
108
139
92
127
55
117
139
87
56
102
128
105
139
67
56
165
92
152
99
124
91
152
120
159
127
150
105
169
95
105
126
92
110
86
119
88
105
178
110
144
92
106
74
92
126
93
124
56
79
55
122
92
122
126
67
138
114
124
152
58
109
69
110
167
139
108
55
92
67
145
93
86
110
134
93
119
55
92
152
55
146
138
56
107
55
86
188
119
132
110
67
77
134
69
138
68
56
91
140
127
111
119
92
144
134
111
138
77
89
134
120
168
37
134
163
138
104
122
110
91
55
178
100
92
55
77
127
69
128
92
101
56
67
55
78
126
55
86
88
93
138
139
75
126
139
96
126
89
92
58
168
86
122
139
122
146
139
178
110
110
122
178
86
119
127
128
127
139
111
92
96
105
128
110
139
92
122
104
162
103
84
124
69
127
134
123
119
92
134
97
103
111
74
126
107
104
160
55
122
67
136
118
139
126
110
92
110
93
95
130
119
79
105
110
56
138
138
123
126
107
109
130
83
56
128
122
178
93
55
139
103
92
69
84
69
148
56
55
124
69
168
117
148
83
55
75
110
99
138
86
128
83
56
126
55
79
111
134
119
119
128
110
104
146
67
67
93
127
127
128
83
122
104
86
178
127
122
103
148
56
124
37
152
69
83
92
55
92
144
124
105
56
55
138
110
75
146
110
109
91
132
127
105
164
110
126
169
92
134
144
86
92
92
78
171
112
118
146
84
146
126
127
110
99
105
104
74
105
74
93
126
110
138
104
93
92
124
92
69
162
163
138
56
119
126
67
112
104
55
92
56
92
71
144
107
99
122
91
122
119
37
128
56
55
105
127
68
128
55
56
165
92
134
139
178
69
110
56
111
92
55
92
144
37
110
140
134
105
114
127
92
74
145
126
56
99
55
122
91
93
115
104
169
109
162
55
55
37
111
91
146
122
99
92
180
69
105
137
126
91
134
69
138
144
111
110
126
105
56
102
128
112
55
77
55
114
111
55
138
111
81
138
55
122
122
103
130
100
158
104
105
55
111
74
104
139
92
67
122
148
111
56
103
158
55
105
103
103
103
79
152
110
152
105
98
99
169
56
55
92
109
137
120
105
122
67
74
92
127
169
92
58
148
104
122
124
132
94
132
84
105
92
118
77
74
108
69
128
77
85
56
69
104
178
122
56
130
199
119
119
139
98
125
67
127
105
138
98
55
109
169
107
97
105
91
95
117
93
171
104
152
98
140
105
77
87
122
134
83
163
142
158
152
58
105
134
169
135
134
73
122
67
56
91
92
160
128
146
104
92
123
122
128
132
103
128
105
144
122
86
132
91
56
139
123
67
105
92
102
96
152
92
122
105
110
138
136
145
92
123
97
126
93
146
144
58
152
146
107
104
124
128
119
181
124
55
130
69
104
149
121
127
126
101
69
91
139
122
146
91
110
55
55
126
69
119
144
163
55
99
117
119
146
94
67
93
55
117
93
37
89
128
79
152
69
152
104
127
114
75
68
99
132
126
92
139
146
111
55
128
67
107
92
67
92
67
101
104
55
110
171
64
68
105
148
64
108
127
105
139
92
56
122
160
105
86
128
88
110
127
85
68
110
55
123
92
105
128
95
55
132
119
138
134
79
163
101
189
110
148
67
127
146
67
128
120
98
92
69
124
104
58
81
99
110
86
178
110
91
192
79
99
178
100
122
152
101
117
75
126
107
92
105
75
91
98
126
146
119
163
56
67
139
55
122
158
81
37
67
144
122
143
103
146
146
146
55
136
77
139
127
138
92
178
126
152
105
126
180
144
55
136
158
86
144
75
58
115
67
128
152
94
105
126
67
111
107
86
97
93
92
55
91
92
93
114
79
110
107
105
96
91
110
55
122
92
126
105
93
105
108
126
146
115
115
134
103
122
110
67
163
94
138
89
171
131
105
92
112
110
140
91
144
124
109
144
138
67
180
128
122
95
75
92
67
122
107
55
67
138
110
41
105
119
92
67
55
58
79
67
164
120
69
152
104
119
92
55
83
56
144
92
104
114
114
92
101
111
110
77
55
135
55
119
138
67
146
79
92
92
55
178
104
109
146
104
122
86
126
178
91
86
69
55
74
92
86
69
92
119
127
140
160
92
99
93
108
92
78
127
88
148
93
67
152
129
119
152
92
146
58
152
92
130
56
140
56
55
80
76
146
110
120
107
134
74
112
103
67
103
58
69
105
144
67
110
75
110
128
138
110
168
107
126
152
77
68
162
92
119
128
145
110
110
122
165
83
132
123
140
104
111
127
79
136
83
136
127
102
111
107
94
178
37
114
105
126
92
167
105
37
56
105
124
109
124
104
188
58
169
152
91
92
110
67
55
103
110
55
107
112
132
126
126
138
124
130
111
58
91
99
87
122
139
102
114
110
69
95
55
140
105
117
158
110
110
127
127
55
122
92
169
104
91
171
128
55
109
109
169
146
140
92
92
146
93
37
110
122
91
86
91
92
105
74
144
79
110
122
135
98
110
139
169
112
110
58
114
97
124
55
152
56
122
126
127
37
138
178
102
169
101
58
92
139
92
91
56
144
148
110
127
74
103
102
55
105
126
92
152
37
109
178
103
126
163
138
55
123
55
83
139
126
92
178
104
58
127
118
105
93
79
122
112
67
122
104
56
87
69
77
74
98
179
99
122
112
124
104
75
92
92
112
171
163
137
99
92
144
126
86
152
93
91
104
92
117
120
152
105
67
122
55
144
152
171
127
110
134
75
122
93
75
123
164
79
93
115
122
117
58
150
79
74
168
110
92
139
75
83
126
138
124
130
122
58
75
126
122
117
140
178
100
103
67
77
111
92
123
101
92
104
152
92
67
138
122
88
152
118
104
118
165
122
105
37
93
169
93
37
103
122
75
69
92
55
110
122
131
122
55
144
67
81
127
119
127
118
37
126
112
92
138
93
139
83
93
111
105
139
125
91
92
109
171
124
109
126
160
119
103
128
104
146
128
138
119
145
111
103
107
91
104
100
86
107
55
92
138
98
85
99
93
127
110
37
111
152
55
77
126
100
138
112
119
67
93
142
105
37
126
92
130
165
37
122
100
138
67
105
124
134
110
127
122
55
99
67
107
171
56
107
37
126
83
92
109
81
58
94
146
105
110
99
56
134
122
110
110
120
138
102
58
120
178
167
111
55
96
128
122
140
139
134
180
105
69
105
92
92
67
92
127
74
110
104
111
58
111
146
124
69
112
127
122
156
79
103
69
118
99
110
136
171
127
122
127
134
93
69
126
117
145
110
92
144
128
81
68
178
74
105
37
138
168
180
110
55
127
136
56
67
104
105
100
128
55
68
105
110
74
91
110
139
138
107
107
126
93
37
69
126
98
92
144
99
122
122
178
110
113
55
56
178
74
56
146
180
111
75
37
103
118
91
109
99
100
104
117
91
110
88
148
67
81
92
122
78
92
102
137
109
152
130
123
117
58
68
110
152
92
128
125
163
92
119
109
110
130
92
122
92
146
92
163
58
56
92
110
68
99
58
78
111
109
92
160
151
99
140
178
67
74
76
119
105
92
169
119
104
105
69
138
128
178
140
144
147
91
120
139
122
92
55
138
67
110
101
138
123
126
103
148
139
149
103
88
130
104
138
92
144
100
122
122
56
118
138
111
92
78
55
58
92
104
171
55
111
148
138
122
148
88
171
92
109
124
68
37
83
87
140
103
127
69
156
123
163
107
110
138
92
92
131
138
122
110
55
139
112
69
118
110
123
119
103
93
37
55
80
67
109
128
105
37
67
81
56
122
99
124
118
127
127
37
110
123
131
92
105
138
55
56
93
117
92
56
87
138
123
127
104
92
146
109
109
138
178
91
138
134
75
110
107
145
152
134
104
76
134
84
69
127
126
92
122
152
67
109
58
58
104
119
69
139
105
169
127
111
138
139
164
93
79
58
96
123
119
120
104
55
92
141
111
109
86
144
104
178
128
69
122
37
136
86
92
167
134
110
120
122
86
110
37
55
75
56
124
37
112
110
119
122
79
37
105
139
163
83
93
128
107
134
79
124
78
77
107
69
122
109
123
163
118
110
118
107
158
110
56
55
97
122
152
178
122
108
37
99
77
111
144
107
138
89
144
87
91
146
79
126
110
123
93
115
128
55
169
164
104
135
97
58
134
110
37
123
105
134
122
100
139
160
118
88
79
138
142
197
114
69
110
86
137
93
55
69
134
110
138
86
122
126
123
107
56
93
98
55
105
37
146
56
139
83
122
126
160
93
95
92
163
68
119
168
77
77
122
67
105
110
105
56
93
92
37
123
189
178
67
127
120
55
92
77
127
152
74
126
79
101
178
67
120
55
58
91
75
79
121
114
128
152
99
56
144
86
169
91
111
76
132
79
127
136
122
56
79
134
110
127
92
199
55
58
92
152
92
92
146
122
132
139
99
127
109
68
167
144
105
117
67
105
140
178
122
72
117
111
56
117
134
93
178
127
97
178
110
56
105
99
105
79
165
110
126
67
67
92
98
92
131
97
100
169
107
131
56
165
92
105
131
139
122
91
138
75
126
69
140
56
108
122
93
110
138
146
91
77
152
91
138
37
99
93
123
79
55
107
103
67
97
104
144
92
92
67
152
72
92
105
55
134
126
136
92
131
104
119
135
105
92
110
92
67
68
160
105
77
132
69
107
122
75
109
126
105
139
55
67
178
117
79
92
125
127
107
98
112
97
58
105
107
67
55
128
127
100
131
149
55
94
67
110
158
91
55
124
172
109
86
37
139
56
37
126
138
112
92
86
138
138
92
126
37
92
56
182
55
91
105
122
127
146
127
105
106
122
93
128
67
146
138
106
124
69
122
69
56
122
127
105
111
55
112
92
102
67
67
126
178
126
134
67
105
138
104
55
140
180
69
144
69
56
130
144
138
84
148
103
122
146
92
95
122
69
142
130
135
104
104
139
103
126
110
128
88
118
105
139
131
84
105
104
127
167
135
178
127
132
86
93
37
119
56
131
130
144
67
98
101
139
171
111
92
117
58
127
105
104
97
169
122
134
135
138
105
138
122
107
92
122
69
102
145
91
56
158
55
112
109
55
122
122
118
110
160
122
104
144
67
124
104
96
120
117
69
150
110
152
152
127
55
124
134
67
83
126
112
92
126
163
104
139
99
58
121
107
110
169
87
103
130
93
80
110
110
93
69
110
105
96
123
91
37
78
160
123
92
136
110
138
69
146
67
55
152
152
97
97
69
67
78
89
110
100
127
86
105
122
95
112
169
138
110
55
69
134
126
110
140
138
138
110
37
152
110
69
124
106
126
109
69
56
92
152
110
79
37
91
138
120
129
139
156
110
102
160
122
104
74
104
67
120
58
178
55
121
81
138
105
126
127
119
101
148
178
122
55
119
55
105
92
110
110
128
105
68
131
110
122
104
104
137
146
105
93
91
160
139
93
56
107
92
56
107
55
105
110
83
144
55
58
77
55
125
58
131
105
148
138
138
98
93
122
178
122
164
127
144
91
83
104
126
92
146
56
103
126
130
89
92
92
171
104
145
126
83
135
122
37
122
92
126
86
37
77
168
145
122
136
126
140
103
101
165
92
138
37
92
56
111
75
138
131
79
138
105
178
74
92
92
104
97
104
135
127
92
103
92
67
67
55
111
88
55
69
122
92
103
86
92
162
93
112
152
101
102
98
56
139
122
139
109
104
104
140
91
136
104
121
99
97
86
58
139
128
146
69
124
74
105
111
144
92
110
111
101
110
178
163
37
69
110
104
74
86
103
93
98
126
95
93
110
136
105
37
92
107
104
105
124
117
111
75
112
86
55
111
139
130
124
105
99
91
105
92
92
104
146
110
118
55
67
105
111
105
83
91
115
67
146
56
55
139
126
122
111
138
113
75
178
145
128
56
55
92
55
169
79
77
136
58
146
152
103
37
95
93
92
168
105
126
129
78
92
120
123
77
122
104
112
107
86
138
167
139
124
105
55
92
92
138
122
86
104
123
140
131
79
178
122
99
56
146
77
124
126
134
77
178
149
103
131
119
58
67
144
92
92
67
55
92
117
104
138
58
169
55
58
92
69
178
164
178
56
126
122
55
102
67
92
55
149
93
84
93
105
146
138
140
99
122
138
84
112
55
138
178
138
137
86
91
128
103
132
128
103
99
126
69
86
67
103
58
67
93
130
118
55
127
126
110
110
75
67
122
119
122
68
67
56
93
126
139
160
127
55
138
123
67
106
127
105
150
122
126
139
56
126
92
116
148
110
84
127
92
69
101
156
68
137
103
130
127
126
114
105
111
169
145
146
119
144
79
98
83
138
105
77
129
152
111
139
75
122
97
104
83
169
67
122
69
127
103
124
122
107
104
92
92
104
138
144
128
93
100
152
86
79
99
79
89
127
101
107
134
105
107
110
74
140
119
158
55
91
110
67
37
69
122
83
79
93
67
122
121
130
97
69
128
95
107
149
128
122
144
105
95
108
131
118
169
152
126
77
92
79
178
69
126
105
86
110
146
100
67
55
80
81
92
86
126
128
126
79
92
56
144
83
158
119
130
92
122
105
122
138
58
69
108
122
79
127
84
138
144
110
122
117
37
55
139
122
128
146
137
109
98
132
119
110
144
55
126
136
91
103
139
123
126
92
126
178
92
158
111
37
126
126
92
110
168
127
110
37
93
162
129
171
127
111
55
122
144
126
103
92
93
67
123
110
104
67
37
56
122
105
124
112
86
109
79
110
67
152
169
92
109
104
123
93
178
74
104
110
130
92
126
110
110
138
56
178
92
118
104
146
86
112
56
126
127
140
104
69
127
152
86
55
136
123
165
119
126
37
55
110
110
92
119
55
140
89
137
149
178
110
127
92
110
178
81
180
149
124
97
67
93
128
126
92
92
127
98
92
92
132
74
55
110
118
92
67
110
114
110
145
89
55
92
76
55
138
56
37
137
114
108
104
143
146
124
106
105
128
104
67
146
178
139
69
127
131
105
140
69
92
58
135
120
121
110
107
146
104
122
92
87
168
55
55
180
67
97
56
128
146
37
152
105
105
67
110
126
199
99
146
95
120
74
91
139
58
130
169
122
92
104
134
88
56
105
55
110
147
139
69
111
93
74
138
162
109
104
110
110
37
67
92
152
109
92
55
104
91
138
77
99
104
83
106
122
107
55
138
109
169
139
88
139
77
56
55
149
109
67
146
110
55
93
93
105
67
138
136
89
103
110
98
128
109
92
103
124
144
122
162
99
104
67
77
152
110
93
55
95
122
163
92
122
67
67
98
105
138
127
103
79
128
97
74
122
163
104
152
79
93
131
146
123
91
74
156
130
105
95
134
134
83
55
141
56
37
126
158
131
105
122
101
56
55
126
178
104
104
104
88
74
169
58
127
123
105
69
58
126
78
111
119
110
58
178
55
126
128
140
144
178
178
133
119
99
144
124
143
152
98
92
58
136
104
78
119
93
139
106
178
93
72
124
104
129
169
169
139
138
37
120
79
92
97
110
138
138
122
140
122
110
75
147
105
128
103
37
93
118
93
165
67
56
80
92
134
103
93
77
109
105
129
75
132
58
126
127
105
99
92
100
105
69
122
55
92
171
110
92
95
122
103
130
152
180
101
130
146
69
126
135
110
109
103
119
110
126
89
181
92
99
182
92
111
37
110
158
101
92
126
178
58
69
67
105
83
67
127
127
58
103
55
139
93
55
138
67
110
109
55
114
92
110
96
111
158
77
93
92
92
55
104
110
123
67
56
93
67
178
127
64
111
67
104
55
109
58
120
92
56
110
92
123
37
69
92
139
92
138
37
139
91
75
69
127
94
58
103
122
55
169
92
67
144
138
104
83
139
104
126
105
130
122
114
110
138
74
178
37
92
119
99
88
138
126
99
128
123
55
169
86
92
75
139
55
92
55
152
69
123
110
55
128
91
67
69
56
83
105
100
84
138
93
109
144
138
132
100
119
119
158
124
105
92
126
152
138
129
103
93
142
169
86
122
108
126
56
131
69
178
92
83
178
67
105
37
142
58
127
127
122
146
122
92
92
122
105
55
111
119
37
109
131
126
94
111
67
86
104
104
65
56
109
115
105
98
88
111
110
108
68
188
105
89
105
110
119
178
135
138
104
92
122
92
55
93
106
58
131
111
105
92
146
86
138
160
110
93
92
122
148
77
79
77
56
178
127
93
69
55
109
110
86
104
122
104
107
79
146
102
93
124
127
105
109
156
126
122
127
121
92
111
91
122
91
91
67
124
92
128
110
105
147
122
137
131
160
105
140
99
140
107
55
93
81
85
92
110
138
131
138
92
144
69
119
123
178
168
69
74
67
148
37
92
67
107
92
145
111
144
124
126
74
79
92
144
169
92
138
130
146
69
56
55
136
120
93
122
146
124
104
67
132
64
56
69
77
67
67
113
126
112
106
109
105
99
127
178
104
84
104
81
124
74
122
55
92
55
105
99
103
123
118
132
93
126
93
93
126
144
130
128
109
122
92
56
130
140
86
148
55
128
104
69
105
110
67
72
178
146
56
111
167
128
92
105
123
119
105
92
55
105
110
58
148
92
171
56
119
95
126
104
108
74
69
105
119
139
37
99
111
75
158
67
105
102
110
69
126
178
138
67
146
74
126
58
37
55
136
88
146
129
138
110
144
126
37
95
119
58
75
81
92
127
147
93
122
74
93
89
95
105
92
123
105
126
97
123
120
110
112
114
123
67
92
122
56
158
88
106
68
119
92
91
134
79
111
138
55
119
75
127
139
121
123
77
137
68
119
126
126
126
126
56
58
75
93
138
146
105
126
102
105
126
93
102
126
138
107
105
138
104
77
94
123
169
134
178
121
121
91
123
109
123
122
126
126
55
122
55
104
93
144
97
55
169
105
138
55
95
107
55
132
105
67
151
144
75
128
75
118
122
148
88
138
105
106
115
169
104
77
67
105
69
122
67
104
138
123
131
55
138
115
134
114
91
68
104
56
125
55
92
93
168
37
67
89
135
122
68
138
111
145
37
92
83
126
91
154
139
111
145
136
164
127
105
123
55
79
122
144
127
110
91
112
119
92
104
102
105
105
91
160
92
92
178
128
69
105
93
122
131
55
145
92
123
171
37
93
93
105
178
105
167
103
77
97
75
58
93
131
103
139
128
122
128
118
72
37
56
103
139
124
97
105
79
103
55
67
134
144
169
104
86
76
127
107
110
119
91
134
55
65
105
99
99
86
56
144
86
92
127
111
139
92
67
171
199
114
67
105
126
111
86
74
84
74
67
55
146
88
110
79
104
138
111
92
138
96
93
126
91
92
132
72
67
110
148
93
160
92
56
92
111
58
138
105
146
140
138
92
58
106
108
69
110
37
134
55
91
148
138
131
122
93
124
58
99
126
137
56
122
144
127
105
138
126
92
67
110
140
110
122
110
64
75
106
121
109
144
138
138
114
77
110
95
162
138
98
93
93
140
69
69
92
92
92
129
77
37
93
119
98
178
77
109
178
126
127
139
131
148
91
41
107
93
92
58
92
109
121
105
67
106
67
113
110
93
91
144
146
98
92
58
56
138
107
92
104
138
120
110
92
169
92
110
139
152
93
93
69
79
110
127
110
104
152
92
64
139
55
91
69
130
110
117
55
67
37
74
110
199
105
92
138
74
56
107
86
126
160
92
128
102
139
67
115
99
89
121
132
105
95
92
139
138
67
131
144
146
152
123
105
126
126
93
93
160
152
98
106
56
79
126
79
58
144
130
55
92
118
132
127
79
106
55
144
115
74
106
144
55
140
55
130
163
110
122
69
181
92
74
114
91
55
67
102
130
67
109
92
111
86
169
138
119
55
109
122
86
92
122
107
105
144
163
67
145
93
122
97
103
108
92
97
146
110
92
127
144
118
123
105
100
123
55
128
138
55
56
58
122
146
122
119
105
92
91
163
126
69
56
124
86
122
178
152
67
111
106
107
55
104
98
55
146
112
142
55
127
86
110
58
110
102
122
80
113
144
110
86
124
69
56
105
105
76
126
37
131
67
92
85
93
58
81
127
93
87
55
134
146
178
169
128
141
110
69
93
55
112
56
131
122
93
67
104
110
141
103
130
92
122
110
109
119
169
126
146
138
178
91
37
67
171
124
93
146
92
152
55
146
111
110
178
92
139
137
105
130
169
136
55
103
123
127
127
126
105
37
102
120
123
67
122
83
140
56
93
110
112
110
127
123
131
56
93
123
171
104
56
178
55
195
146
55
140
110
91
171
152
122
119
79
67
56
122
140
138
105
77
139
127
139
58
79
110
138
146
105
140
92
58
141
126
56
61
138
55
92
138
110
55
92
146
99
178
123
146
189
123
139
56
122
55
122
110
124
144
93
126
110
75
92
130
110
93
144
58
122
55
110
74
138
108
134
67
138
122
139
138
130
139
106
101
79
122
56
123
103
104
93
112
178
158
144
95
86
144
178
138
168
69
86
126
132
67
126
104
79
122
79
135
107
127
93
122
152
122
138
110
105
101
122
120
126
119
178
92
75
128
137
127
96
180
109
55
139
56
37
161
88
141
137
126
85
178
56
130
58
104
163
86
67
133
105
93
67
138
126
56
178
91
149
144
55
58
84
139
56
69
128
129
67
92
67
86
109
110
131
92
127
67
131
92
97
110
110
139
136
93
138
58
74
146
67
68
69
121
100
99
69
139
118
93
93
86
152
130
98
83
138
55
113
67
139
77
55
123
134
79
92
178
93
92
104
104
119
79
105
104
110
119
77
79
86
139
86
148
88
89
107
122
124
105
121
91
104
56
137
122
104
117
128
124
92
115
145
58
126
134
56
138
111
112
178
92
92
67
93
110
110
124
178
127
110
138
149
139
123
144
178
119
136
131
126
92
93
93
123
105
128
94
92
110
103
55
182
138
140
126
104
74
56
56
111
149
105
69
144
93
114
89
92
103
99
162
55
55
86
81
105
107
78
105
105
104
79
114
99
119
140
104
104
55
169
125
92
91
126
92
127
111
110
67
138
119
110
138
93
152
112
124
55
178
122
99
93
110
110
83
56
138
110
146
122
124
119
126
137
103
126
104
105
79
77
138
112
79
86
130
56
92
108
110
55
144
104
55
69
119
100
56
99
112
105
74
67
152
72
118
126
79
101
56
95
110
83
58
136
56
88
132
110
178
97
67
55
158
93
115
74
138
77
105
92
116
105
180
138
122
125
104
92
106
110
178
168
128
139
131
101
139
93
93
147
105
55
105
104
77
78
84
67
93
134
58
89
100
126
92
124
55
152
104
92
110
138
169
95
89
138
97
86
110
92
163
139
122
169
56
110
137
55
139
91
104
112
110
91
122
92
56
93
67
67
56
110
69
37
164
92
69
93
73
144
122
110
140
107
86
138
55
105
107
167
130
69
55
139
134
110
120
79
77
171
131
120
55
58
86
105
156
123
109
77
92
69
93
109
37
128
56
97
76
55
83
110
98
105
37
86
126
108
105
123
106
105
122
55
123
144
80
168
91
132
140
110
139
105
107
56
146
134
169
67
55
124
75
178
55
146
146
100
111
152
102
109
126
138
92
134
127
77
111
123
101
67
93
126
91
127
168
141
128
97
99
114
110
178
92
117
107
126
92
128
169
138
99
88
135
136
55
119
144
144
92
120
127
139
128
144
146
79
79
169
74
139
126
104
79
110
92
123
67
122
93
67
67
127
138
105
109
93
55
87
104
37
56
138
163
114
100
92
67
132
122
135
104
169
56
67
109
138
141
92
102
164
56
87
92
105
104
130
110
110
178
56
148
105
56
56
58
92
123
95
67
146
140
178
92
130
104
111
110
99
110
105
127
156
103
140
139
91
105
138
132
144
93
104
77
112
58
93
55
144
93
55
122
138
99
56
111
116
132
138
104
167
37
91
139
109
126
92
93
97
77
126
86
139
103
127
37
117
104
55
58
138
79
69
93
125
55
126
131
79
128
128
178
117
142
91
171
91
74
138
144
104
56
92
92
163
152
138
118
138
92
122
101
95
123
110
67
56
139
103
67
97
117
148
127
95
67
118
127
67
56
58
67
98
138
92
92
122
134
121
127
148
84
92
110
144
110
104
110
93
97
58
37
152
122
144
58
92
118
92
92
69
69
104
137
140
178
55
117
126
123
92
55
55
162
178
99
136
178
111
84
77
97
138
67
79
37
109
109
99
110
92
160
55
58
92
127
112
56
144
119
144
75
99
92
122
92
141
69
111
83
67
75
107
103
110
92
61
126
37
56
92
127
146
144
103
88
92
131
92
126
86
41
139
139
134
56
37
77
122
188
92
138
138
178
37
122
91
146
110
97
113
128
139
83
180
101
122
92
127
74
178
126
123
92
144
105
103
74
122
115
110
101
104
92
92
103
138
99
180
139
144
120
109
160
37
92
152
89
128
152
110
110
92
106
167
92
146
139
146
128
58
37
199
139
119
99
99
110
111
75
127
92
169
56
146
126
146
124
107
159
37
93
122
103
119
95
95
123
92
138
169
55
126
117
119
110
56
126
93
178
99
167
158
122
99
80
107
98
188
123
126
92
106
110
56
120
92
99
122
84
122
130
69
75
111
110
103
123
92
145
103
104
104
75
169
123
168
83
130
105
58
55
67
55
152
92
56
119
92
93
117
126
114
141
104
103
110
144
178
99
83
128
103
92
131
83
127
134
144
120
101
123
180
103
109
107
119
56
37
56
128
122
111
55
139
104
58
88
152
107
128
122
163
97
103
86
105
138
105
67
162
104
79
105
126
104
105
144
72
73
112
55
117
146
110
77
67
119
92
58
128
105
105
93
144
119
83
107
139
55
92
138
92
148
178
37
178
128
92
138
105
37
80
109
100
147
134
92
148
105
114
127
92
67
178
93
138
84
101
122
97
146
79
106
163
99
69
152
127
138
55
69
118
92
169
105
92
67
139
128
92
138
122
169
110
119
92
130
152
56
126
67
126
93
97
152
55
110
104
111
122
178
92
93
55
58
78
178
114
128
55
123
56
138
169
92
126
178
55
142
56
91
169
120
122
118
92
152
55
138
111
110
99
164
55
128
110
107
130
111
56
124
134
105
110
105
99
104
67
138
93
122
93
126
79
119
132
92
123
97
105
122
127
79
103
93
110
55
122
112
130
97
146
67
84
105
105
163
122
126
122
91
126
104
55
64
123
56
169
37
91
146
93
74
110
110
106
134
110
69
74
56
80
92
104
111
37
148
119
128
93
132
79
105
91
55
126
77
128
122
102
114
130
122
119
103
93
122
55
138
126
58
117
152
126
138
55
138
111
94
77
139
37
127
55
119
55
129
107
122
126
123
122
144
68
104
56
78
144
92
105
55
152
111
171
110
144
67
138
67
92
75
105
76
144
148
134
178
131
152
122
110
92
89
92
110
117
92
127
127
37
58
78
123
122
92
139
122
75
126
92
69
81
68
110
110
102
83
55
92
169
127
55
105
131
123
138
138
110
104
126
105
146
144
134
156
69
144
104
122
91
126
124
107
55
122
139
105
119
144
56
138
58
37
77
68
103
56
67
112
138
110
160
69
112
105
144
145
126
86
55
37
77
140
93
143
77
124
68
119
126
164
100
37
83
67
37
56
116
77
105
169
93
128
92
138
55
93
117
92
130
104
105
131
99
103
135
149
118
67
107
146
127
92
189
118
126
139
123
126
138
97
142
75
103
103
109
55
55
169
67
95
92
178
105
110
91
75
134
93
122
77
130
109
110
105
67
126
122
160
37
92
58
83
140
131
92
74
110
104
128
140
122
67
92
110
105
69
110
79
127
122
74
92
67
104
119
83
93
58
79
112
104
110
112
79
56
107
92
110
78
114
122
138
55
77
67
56
97
92
74
171
139
55
124
37
67
95
91
56
123
67
118
139
67
144
93
67
134
162
104
77
74
56
91
92
120
127
136
111
92
158
92
110
92
123
146
55
150
110
178
168
86
115
119
138
89
110
134
119
78
106
167
164
37
37
92
104
138
92
55
122
103
91
178
79
74
37
55
156
104
69
178
131
92
139
101
58
138
105
37
126
93
101
58
91
158
134
128
119
92
75
178
126
55
126
99
92
119
99
163
83
105
139
152
119
86
104
84
123
101
67
93
110
67
134
92
162
122
146
83
67
97
92
67
126
119
80
146
138
112
111
102
178
139
138
56
122
104
123
178
55
69
144
162
67
69
126
119
86
109
83
111
122
105
126
139
56
117
107
58
123
140
142
178
110
114
122
111
74
91
41
122
79
138
104
107
127
55
68
122
119
141
138
125
98
106
105
140
128
178
122
124
128
127
86
122
110
99
93
75
86
105
104
100
68
178
101
55
119
55
109
139
138
56
126
126
55
110
37
178
122
178
92
112
99
69
127
105
126
122
146
146
152
98
140
113
104
55
123
56
56
122
107
127
107
55
69
67
101
58
93
79
146
55
69
83
109
127
92
131
136
86
58
127
104
122
126
91
105
99
129
55
112
146
79
56
103
105
95
37
83
122
126
83
128
126
111
138
95
152
75
146
92
74
114
134
138
74
122
110
105
99
108
110
178
123
93
55
104
97
117
103
111
148
162
92
105
139
79
109
122
106
124
55
122
104
69
144
68
127
92
122
55
86
145
92
168
131
69
122
138
75
92
107
130
134
71
107
110
109
84
105
122
55
86
144
93
139
128
167
152
75
104
144
152
84
138
92
126
79
144
119
102
37
148
55
92
84
111
107
169
122
144
75
138
75
139
86
92
93
37
91
102
110
105
114
37
128
131
163
119
127
178
165
144
104
123
123
99
132
104
89
58
152
92
144
89
152
58
67
86
95
99
55
92
104
56
120
58
103
138
169
92
69
109
111
132
144
95
130
144
199
144
138
126
127
146
138
69
101
94
55
103
132
129
121
123
138
169
122
93
91
123
58
122
55
145
144
117
56
109
151
102
67
92
92
169
58
111
178
86
77
126
91
91
107
114
138
105
126
55
178
105
56
115
148
93
79
127
111
199
114
74
120
111
67
123
165
55
92
168
69
169
126
124
188
55
138
105
86
78
122
97
103
136
55
130
67
128
139
55
81
178
144
123
108
67
131
128
138
128
126
68
91
55
79
126
178
152
126
126
158
119
111
122
123
74
128
56
144
122
68
110
127
69
144
110
144
105
92
79
110
139
126
80
91
55
68
144
119
126
122
96
92
92
112
91
105
107
74
122
118
93
92
118
86
122
67
56
56
58
103
92
83
120
121
104
140
103
122
140
92
92
146
104
122
105
107
105
140
78
56
93
122
106
92
104
123
105
55
104
101
92
103
127
56
178
105
122
110
139
110
69
144
178
105
92
168
162
79
146
55
110
126
169
77
199
119
149
107
111
165
75
165
65
37
117
110
123
118
58
169
56
58
123
110
67
105
92
130
56
105
132
164
74
84
131
105
55
37
37
137
104
37
110
109
110
105
93
139
92
150
99
104
110
110
88
105
109
139
81
111
91
137
123
167
99
107
111
152
123
93
93
92
130
169
69
78
92
130
137
92
179
89
126
104
122
122
86
126
144
126
135
122
110
126
138
110
92
128
91
138
55
109
178
106
92
92
126
139
124
67
68
123
116
67
56
127
58
67
69
127
58
139
126
139
104
146
110
152
140
92
122
86
140
106
109
103
56
55
107
100
120
103
136
93
92
136
104
103
144
92
92
114
122
122
104
37
56
122
146
93
91
104
131
168
130
144
121
55
95
37
126
77
93
96
93
128
104
126
152
111
127
115
105
92
105
93
83
101
58
74
199
104
110
106
74
79
105
124
106
99
77
56
124
93
127
67
77
55
88
98
144
117
67
68
140
122
37
69
92
127
119
150
169
99
104
128
138
110
109
55
79
125
169
108
91
128
103
79
131
105
122
93
67
126
128
128
138
144
55
107
105
137
122
126
163
126
169
104
91
132
127
92
105
92
146
80
119
134
69
169
99
55
58
104
126
105
130
81
167
37
110
78
122
139
67
140
37
146
92
105
69
109
152
138
92
55
122
106
110
132
83
55
144
97
119
111
110
178
104
98
139
103
122
114
119
100
180
110
146
126
118
134
55
79
79
131
144
104
128
130
123
122
122
138
79
110
136
55
74
93
137
58
93
144
108
119
127
105
146
127
74
140
169
138
138
75
108
140
58
122
137
178
130
67
142
86
92
135
105
98
122
110
163
122
83
122
123
64
134
92
104
69
130
145
130
131
105
95
99
128
67
92
129
128
105
104
37
122
107
138
127
93
58
122
110
122
109
77
122
122
58
93
99
55
92
74
91
139
128
110
104
110
37
91
126
110
74
67
55
110
110
84
138
92
148
103
139
86
97
110
138
117
92
139
146
55
139
104
126
110
120
74
110
139
79
88
92
91
55
95
107
139
181
93
104
111
77
105
127
121
129
67
119
55
101
92
58
122
99
74
83
122
138
37
123
128
139
122
69
178
107
126
67
165
127
127
121
101
55
41
178
55
104
74
56
55
129
149
122
103
119
100
122
105
92
109
58
119
109
152
114
126
122
114
110
92
37
103
140
182
122
138
92
55
148
122
67
81
77
104
74
100
148
110
56
91
144
139
112
119
152
55
55
110
105
74
86
92
136
56
69
130
103
117
77
158
93
125
169
119
68
55
180
55
108
92
117
99
122
106
69
110
69
146
100
139
129
97
76
134
126
152
138
93
37
74
178
122
55
110
92
104
111
104
110
111
122
105
91
105
55
122
99
138
126
94
103
91
37
105
140
122
144
93
110
55
130
124
87
97
178
122
128
126
77
110
127
104
168
156
138
92
103
110
116
104
127
140
146
122
67
78
93
74
97
127
116
110
83
93
144
126
167
91
97
67
114
110
79
107
109
97
105
132
80
130
78
104
67
132
93
84
140
169
138
109
122
143
105
107
122
168
84
55
102
134
67
58
92
169
104
100
91
126
122
74
128
120
146
178
148
122
67
77
144
37
55
74
91
140
147
55
103
178
138
69
119
126
37
92
139
199
92
92
83
111
136
139
69
110
114
139
136
104
144
92
138
120
169
110
69
92
144
109
110
106
105
136
122
58
118
109
100
106
56
110
138
69
95
67
126
37
130
68
139
110
104
68
111
67
149
93
55
104
104
105
128
98
55
56
151
74
164
126
138
55
92
178
122
169
110
169
75
134
99
126
79
92
75
67
69
163
122
128
98
144
138
111
86
91
68
86
130
104
91
37
126
146
146
89
99
67
79
104
91
58
109
124
89
104
182
74
169
140
55
139
107
136
56
145
122
56
111
144
99
128
144
151
93
67
41
152
56
126
67
67
136
139
138
67
110
86
104
122
58
144
138
138
144
75
69
110
61
119
126
152
56
123
134
126
136
122
104
141
124
123
83
73
68
98
148
109
163
126
93
126
91
55
130
138
126
106
92
117
37
110
107
101
162
156
159
180
74
124
152
55
55
58
110
56
119
86
123
120
178
178
74
178
67
144
146
127
104
178
199
67
92
105
134
57
122
118
92
67
110
138
125
92
139
114
128
99
107
126
86
56
103
138
110
110
92
136
137
105
111
102
86
69
110
188
132
146
122
123
146
69
92
128
105
131
169
56
86
92
93
104
67
79
178
104
91
126
79
91
138
110
103
158
56
122
126
117
79
127
79
67
162
152
73
119
110
86
138
180
89
160
84
110
92
178
112
122
99
171
156
122
178
93
135
122
160
139
115
128
56
104
118
122
67
126
123
58
122
77
99
123
86
56
111
75
109
92
37
74
58
114
105
106
107
93
55
123
37
55
86
69
110
92
138
138
110
140
122
127
110
105
92
123
104
69
56
75
58
139
86
105
77
126
105
118
77
126
74
144
56
111
105
122
169
55
74
93
92
110
55
126
56
138
55
132
92
134
152
126
132
138
112
169
123
137
56
99
105
126
93
95
107
122
110
74
87
61
119
77
127
144
138
91
146
110
104
171
110
92
136
128
144
178
55
92
124
67
105
86
126
110
105
182
107
113
126
104
55
131
74
100
67
79
128
162
128
92
139
69
93
91
74
58
99
132
92
146
81
55
93
37
122
92
92
56
86
127
122
123
127
126
83
142
108
137
106
111
122
122
119
122
55
136
37
108
141
92
122
83
105
112
68
86
111
137
105
149
104
56
144
126
74
192
95
67
111
110
92
162
37
74
107
105
123
37
126
93
84
104
98
122
55
105
68
104
90
37
142
146
97
105
55
81
144
92
74
138
110
92
69
92
134
163
119
37
178
68
92
171
92
145
146
67
138
75
105
138
64
105
92
152
74
86
56
105
86
58
89
94
118
105
126
189
104
93
106
111
77
178
115
127
55
84
55
87
111
77
145
56
113
138
92
119
139
67
152
91
178
137
122
102
92
122
122
139
107
105
105
178
92
104
140
79
158
140
67
138
55
95
138
114
67
55
105
132
104
105
110
93
123
77
93
158
122
56
119
75
89
110
56
97
123
107
165
67
104
126
56
114
37
146
92
139
110
99
56
178
122
107
86
77
109
163
67
77
138
122
103
112
109
104
86
142
146
109
102
56
77
97
138
55
144
135
136
104
109
152
105
109
115
58
105
102
127
148
83
134
105
91
144
152
131
69
115
86
111
74
107
111
152
138
110
126
92
168
105
91
55
69
103
56
93
135
111
152
150
92
103
105
69
92
136
77
126
152
124
92
96
101
68
152
67
58
56
95
103
83
56
67
80
139
67
58
144
110
74
55
77
127
144
55
123
109
55
128
107
139
119
122
178
128
100
55
37
109
103
55
171
152
104
111
55
104
58
138
56
110
93
105
56
92
56
95
93
112
55
122
92
138
124
110
131
138
93
88
56
56
92
98
56
56
110
120
105
107
127
126
127
118
79
168
132
105
109
110
37
93
146
97
69
121
178
127
92
86
138
79
91
101
58
167
101
105
111
91
108
144
74
86
55
69
69
126
128
105
84
110
110
97
37
144
55
158
55
122
111
168
119
111
105
111
182
122
122
104
92
127
37
127
105
92
55
55
111
92
37
122
123
119
110
89
93
126
67
105
126
122
110
67
120
152
93
95
163
77
147
146
93
84
122
77
131
106
105
136
67
119
55
92
151
86
55
119
178
122
79
77
110
110
104
105
178
139
110
128
99
152
110
137
56
74
69
37
105
163
152
75
102
55
126
104
126
109
127
131
138
92
123
67
96
139
77
128
144
37
74
124
58
77
137
114
110
92
56
69
122
103
93
86
122
135
135
74
99
178
104
119
169
124
91
79
114
55
93
37
110
178
119
112
138
91
111
93
98
84
104
107
123
130
104
169
55
74
137
92
77
123
169
92
110
110
105
99
126
109
97
178
144
148
93
138
105
86
123
105
93
114
142
92
127
104
92
101
87
127
122
99
122
126
178
77
144
103
122
67
124
182
126
92
105
139
105
83
109
86
83
92
127
74
37
56
125
178
69
122
137
58
93
97
69
99
101
123
92
122
178
148
110
109
114
135
37
163
79
69
139
92
92
85
163
178
110
125
140
92
79
79
93
110
164
55
113
171
127
58
105
92
122
99
37
69
111
86
126
110
92
127
178
37
126
169
144
119
55
55
91
87
171
58
79
105
138
122
100
105
105
104
130
126
140
56
105
84
127
139
127
80
122
126
168
58
92
119
56
135
123
127
120
111
109
55
101
92
167
92
120
89
77
119
105
92
154
58
77
75
69
105
79
122
75
105
92
119
105
138
169
146
148
123
126
103
105
104
67
124
178
56
86
92
132
67
99
134
104
94
126
67
97
135
92
145
126
92
122
55
120
110
152
105
117
132
94
37
55
110
37
164
91
137
56
93
56
58
136
67
171
178
117
138
146
145
55
122
126
78
122
104
152
117
79
169
137
69
103
103
92
139
67
144
58
119
140
146
58
109
68
86
164
58
69
55
139
107
134
152
67
69
55
55
69
144
114
135
145
89
79
104
127
139
131
75
58
126
103
92
55
110
178
75
104
138
92
109
123
135
105
109
114
58
139
167
122
91
69
105
146
86
113
138
104
58
56
103
92
105
152
119
56
37
103
134
55
104
117
55
104
152
37
106
55
74
138
152
126
139
144
152
83
139
104
123
92
77
97
138
69
168
93
126
110
68
119
111
75
126
92
127
139
104
104
120
103
55
148
144
105
114
92
55
124
171
105
56
109
37
56
68
152
124
105
83
119
105
99
122
149
109
138
87
147
134
118
131
130
103
138
91
92
108
139
124
93
107
79
104
140
86
195
92
81
110
103
114
92
110
91
139
99
111
99
37
134
84
138
105
69
105
131
139
69
106
55
126
68
117
105
105
139
55
122
126
109
67
102
37
146
93
125
107
157
112
126
97
111
163
79
110
69
91
102
127
122
110
180
145
55
140
79
56
135
128
101
93
56
86
99
180
92
69
105
105
107
92
119
110
139
79
138
99
92
123
128
111
100
109
119
56
67
105
98
99
58
92
130
75
79
77
56
105
119
69
67
105
107
163
139
138
137
92
37
75
128
92
100
121
58
160
138
92
106
131
37
134
93
110
148
55
132
122
67
137
144
169
121
104
165
93
55
105
107
112
92
98
93
105
55
178
97
139
56
37
67
112
148
148
110
126
87
139
138
139
83
95
79
55
103
92
110
67
116
105
105
56
55
109
144
92
115
56
131
139
178
135
58
93
92
111
41
138
104
122
122
105
92
37
112
102
105
86
134
178
88
128
134
67
113
139
122
93
119
178
58
72
87
92
110
92
110
168
128
136
139
138
110
126
110
110
92
128
84
91
162
107
122
140
132
75
67
112
139
124
92
104
126
107
123
197
148
104
93
93
80
101
55
180
163
103
98
148
139
55
68
143
123
99
136
106
122
55
105
160
55
142
138
103
140
92
91
199
92
169
109
37
130
74
56
100
67
122
69
178
69
55
132
104
104
169
74
92
111
169
129
69
138
104
86
93
55
55
178
100
92
169
138
78
119
103
92
89
110
152
152
105
99
138
132
78
55
84
79
58
109
138
163
67
119
37
84
56
126
138
167
69
107
119
67
164
55
158
69
163
56
132
104
93
86
148
134
139
122
144
109
37
118
138
158
110
92
67
134
171
117
109
92
75
129
127
95
86
67
55
93
131
138
55
67
126
120
55
101
102
127
84
105
178
126
104
107
92
110
169
92
127
114
67
138
119
75
110
124
55
92
127
89
105
105
58
128
109
127
147
93
178
92
139
138
118
139
127
122
140
105
102
139
96
92
107
56
122
56
126
119
105
139
109
94
138
123
107
126
178
77
103
69
140
110
93
99
93
167
127
132
69
148
99
107
56
92
128
55
75
117
178
104
103
109
128
144
92
122
74
104
118
58
75
99
78
92
163
146
67
84
114
103
135
56
37
110
110
164
92
86
110
77
79
169
93
146
132
69
92
58
106
103
92
56
146
64
181
105
107
105
126
93
139
93
91
120
58
86
104
58
105
86
114
92
122
111
178
92
122
37
152
88
92
86
67
92
122
56
92
88
110
127
146
37
128
138
92
169
67
92
104
127
93
58
134
122
178
92
67
110
132
103
55
122
178
128
79
122
114
91
87
152
169
111
67
126
105
126
110
199
107
152
91
92
105
67
56
58
122
152
160
78
128
102
75
144
98
135
110
107
58
92
119
69
138
138
67
110
124
139
93
168
84
130
37
37
106
110
138
118
110
107
93
128
99
139
88
145
67
91
178
100
93
79
139
123
136
103
169
138
74
126
112
56
104
127
178
109
91
199
110
69
55
168
110
146
104
136
104
91
169
189
75
86
135
74
136
134
138
142
122
84
119
178
127
37
110
92
67
119
127
91
55
107
126
122
136
67
139
138
139
146
122
146
55
100
130
163
114
107
79
55
79
88
127
56
110
146
55
128
69
67
55
67
67
67
56
93
169
104
147
189
84
107
93
138
83
55
67
126
139
109
104
92
119
67
110
110
126
67
91
107
103
92
91
139
140
92
37
127
79
104
92
107
92
115
140
37
67
114
110
122
92
100
77
152
55
110
105
164
105
152
69
67
55
119
160
55
111
67
146
99
117
110
99
146
145
55
93
55
111
69
113
55
92
69
56
56
105
74
138
92
124
127
78
105
110
144
171
199
146
79
55
98
77
83
126
126
86
138
77
100
148
86
126
145
58
104
146
93
99
67
134
122
109
69
56
152
67
91
104
122
138
97
95
93
58
95
111
128
58
92
105
92
100
178
110
104
79
92
92
109
126
140
73
55
134
68
119
69
135
67
55
56
139
122
99
119
126
93
109
67
126
75
104
110
110
127
68
137
104
178
171
92
37
105
105
145
99
118
69
118
110
138
37
197
74
67
178
163
164
79
144
77
55
126
105
110
107
58
111
55
114
109
55
122
114
92
111
107
121
122
126
114
107
146
105
55
79
104
182
100
91
138
138
128
67
79
126
56
127
148
169
162
110
76
93
126
130
122
56
158
67
56
86
37
128
105
104
109
138
55
138
122
122
56
162
144
79
92
92
92
134
105
168
93
123
99
92
139
106
152
168
105
80
140
112
139
92
56
146
128
126
84
95
139
58
139
89
122
110
103
122
160
105
138
126
109
93
139
93
138
114
86
68
137
139
56
100
171
55
107
92
93
92
56
105
110
178
105
55
112
120
144
110
105
144
110
140
68
117
104
164
92
120
169
111
55
98
95
152
124
92
110
86
77
110
124
96
105
118
140
68
91
104
77
138
147
136
56
120
104
122
118
127
67
105
56
136
83
97
163
67
138
126
105
178
117
105
126
37
93
111
55
110
58
78
104
122
56
92
69
104
109
99
58
122
113
58
141
110
111
124
92
106
138
56
109
110
94
55
168
126
67
152
110
122
134
139
117
110
58
97
55
55
93
110
139
124
169
104
92
75
169
167
144
55
123
134
146
152
171
67
75
79
55
122
99
178
178
126
119
122
75
122
92
56
110
95
67
74
128
126
107
132
109
144
79
109
125
92
101
119
74
134
69
104
67
109
104
56
109
107
127
132
127
92
89
122
110
75
178
99
110
55
92
131
79
177
79
100
126
99
130
119
144
126
122
138
105
68
152
126
123
83
91
144
83
138
101
98
97
138
178
74
55
171
92
138
92
56
107
122
110
91
37
163
67
123
123
119
163
144
119
112
67
131
58
109
178
137
75
169
75
58
139
83
178
109
86
169
134
163
83
126
120
181
122
107
122
105
124
144
92
92
93
127
138
55
119
55
88
130
180
139
55
101
144
110
151
92
138
131
180
78
127
160
107
169
105
128
67
79
144
55
135
86
91
128
92
92
110
92
127
93
178
127
77
148
84
83
146
112
93
139
144
86
79
107
171
126
104
138
78
105
152
111
89
111
37
79
55
119
128
91
131
138
110
140
77
132
126
134
144
138
123
158
122
134
93
124
122
86
144
86
69
171
83
105
55
110
114
135
93
55
169
110
105
152
55
131
178
67
109
56
55
58
106
178
169
119
146
97
98
89
127
67
171
164
95
110
111
106
93
92
55
110
124
178
199
99
126
105
138
107
152
112
135
139
37
67
56
138
97
122
152
55
144
75
100
107
152
92
92
67
55
114
56
82
55
119
83
104
96
122
86
105
105
158
122
109
99
93
111
92
106
122
92
58
122
105
56
110
105
128
138
122
55
129
74
91
79
102
144
110
74
123
110
102
105
117
92
79
117
138
114
58
79
135
55
124
104
67
169
126
134
127
75
92
132
138
140
122
92
127
92
122
181
126
93
152
92
144
110
152
105
68
108
55
86
171
152
140
105
122
144
119
67
93
158
92
69
110
55
148
127
91
105
112
102
199
168
105
100
163
134
102
122
55
145
92
111
124
123
91
93
152
110
55
128
138
94
100
131
110
110
104
105
178
76
92
67
92
135
178
138
55
107
178
137
37
126
79
37
67
37
152
91
124
160
91
92
124
55
98
178
118
77
86
95
92
124
117
138
120
169
119
105
104
139
123
74
99
77
126
126
126
105
122
122
126
146
131
138
92
122
146
110
138
135
126
121
126
169
126
146
105
77
124
152
56
58
132
105
127
112
105
160
55
121
114
122
138
109
55
69
101
114
189
169
86
119
122
37
111
144
93
128
123
58
92
107
105
152
180
138
56
89
93
77
55
55
92
104
92
91
55
169
146
127
140
138
111
131
92
103
92
109
101
146
75
122
104
55
67
93
120
104
92
163
162
130
169
110
92
134
149
123
55
138
92
110
125
56
131
105
164
58
126
79
86
55
118
55
137
77
126
118
107
92
110
68
152
98
69
145
122
122
107
105
123
119
58
79
72
109
93
122
92
126
56
86
55
128
55
69
126
117
126
55
74
89
104
68
84
138
178
120
103
123
114
144
130
138
67
55
152
146
114
55
106
110
111
55
112
56
122
178
79
105
74
160
122
92
171
136
150
120
105
92
127
55
105
122
126
144
93
131
122
104
160
115
67
171
105
143
131
144
55
67
110
111
92
67
107
122
100
110
106
127
134
67
101
55
88
144
138
103
110
109
131
100
138
79
178
69
77
139
130
69
138
130
122
104
138
99
93
152
109
80
130
37
68
73
99
103
55
109
128
105
75
111
122
69
110
92
128
110
127
144
163
140
84
98
171
108
55
146
134
100
89
178
148
56
169
55
110
106
138
67
104
93
78
69
192
37
110
152
142
122
56
105
99
81
92
126
148
118
105
69
93
178
92
110
152
110
134
100
104
69
122
92
105
144
180
99
58
122
93
67
126
138
119
86
145
97
61
68
92
124
55
67
37
122
123
92
79
133
92
55
37
91
169
74
138
139
69
143
138
55
86
78
131
148
107
138
98
110
105
111
92
103
110
79
84
105
168
55
110
107
162
109
118
148
69
74
74
126
103
104
86
117
127
92
126
92
55
92
79
119
118
110
92
169
55
93
139
104
96
137
158
139
88
132
95
105
37
102
58
160
110
110
55
105
135
178
87
83
123
122
104
167
130
37
149
130
122
104
55
138
93
126
58
89
138
148
178
98
144
92
58
76
93
158
55
86
126
178
122
122
134
89
138
110
123
119
126
127
110
68
103
138
126
55
94
122
37
126
104
69
104
55
105
68
169
134
110
56
109
110
55
134
83
80
37
126
132
111
55
124
110
92
93
56
117
109
75
106
122
56
122
104
138
127
92
127
119
134
99
56
86
122
92
110
104
122
78
152
79
37
37
92
97
67
55
104
152
110
122
55
144
104
74
103
146
101
55
67
108
126
112
108
91
126
146
122
92
106
127
178
131
178
69
93
126
156
56
77
68
122
77
107
99
92
144
79
110
69
126
110
171
122
123
105
123
103
77
146
58
109
77
56
122
91
104
112
105
67
55
139
92
119
55
140
123
56
144
168
128
139
74
64
83
92
83
110
55
141
138
67
132
124
110
86
119
55
79
138
74
109
139
128
122
110
58
105
189
110
126
148
139
122
178
178
86
140
69
56
80
126
104
129
167
169
103
138
102
138
122
95
140
126
69
89
81
56
80
138
55
119
137
144
86
37
104
126
104
178
142
148
37
144
140
37
107
105
134
109
102
138
126
55
134
87
139
104
121
144
104
69
126
108
104
144
134
37
158
37
56
112
37
92
100
86
126
126
105
93
104
125
55
67
95
55
138
56
163
111
102
110
126
99
126
178
138
56
37
131
93
67
79
138
169
167
110
83
111
138
162
119
69
127
55
111
110
55
122
159
109
92
99
103
126
100
97
130
86
146
92
92
105
132
111
75
92
92
134
93
86
122
148
138
99
165
105
132
128
127
110
138
146
107
113
124
56
86
141
92
171
55
104
123
110
139
135
55
122
92
123
142
144
67
124
56
55
110
56
86
69
148
104
56
171
67
79
93
98
197
37
58
107
117
109
58
67
138
100
110
117
55
58
154
86
122
110
55
74
100
77
83
141
144
37
110
144
104
109
137
105
92
93
122
134
115
88
138
117
84
146
96
67
134
110
96
79
178
128
99
135
105
103
178
122
124
58
122
128
105
93
92
55
154
92
132
138
79
164
105
123
67
104
120
69
122
113
91
58
123
105
126
86
107
139
178
56
142
139
101
107
94
86
109
93
55
123
55
110
67
124
110
126
128
138
56
110
84
67
104
123
115
56
69
74
58
56
144
55
138
55
171
126
109
132
122
126
148
104
168
138
67
126
75
165
140
92
74
188
55
144
94
69
58
93
55
138
67
92
92
37
152
126
92
127
92
37
105
77
93
178
93
152
56
131
122
104
120
97
197
86
93
55
94
92
128
124
105
103
111
92
127
118
110
56
93
79
69
91
86
98
116
169
138
152
126
55
146
79
106
126
56
180
84
145
100
120
106
58
144
134
79
134
104
178
140
138
126
74
74
92
122
55
58
131
74
95
126
119
58
92
126
105
148
37
74
107
55
110
91
92
123
77
128
56
110
105
55
58
126
77
104
168
139
109
144
169
92
86
138
132
67
55
87
130
136
120
109
109
99
58
75
67
68
122
144
180
152
143
110
97
128
86
109
152
99
138
178
56
139
78
146
107
126
67
169
126
122
92
178
167
109
123
77
122
86
69
134
167
55
104
110
55
93
105
55
99
108
119
92
99
67
139
122
79
136
104
55
139
102
123
93
140
92
178
152
127
55
55
138
126
99
105
67
127
130
124
92
115
118
146
132
104
124
104
178
144
109
92
119
86
58
101
126
104
132
77
138
92
120
67
83
56
128
122
55
92
140
103
152
105
56
160
152
126
134
105
111
101
79
137
139
79
104
144
55
79
86
79
92
127
93
110
92
56
105
91
55
96
93
92
142
168
74
148
111
109
123
126
104
136
55
138
37
122
122
126
190
68
74
37
124
104
113
110
118
127
55
92
107
169
111
104
138
55
56
100
55
55
178
37
129
178
107
55
120
67
123
126
126
97
74
92
67
105
112
119
105
55
128
104
130
92
56
132
98
122
104
100
105
112
135
126
91
107
182
55
92
128
107
105
92
93
93
115
107
134
100
131
123
152
93
140
105
77
55
93
121
171
109
55
86
146
55
139
122
74
89
86
139
101
55
139
92
131
123
67
79
84
128
137
93
141
91
144
93
92
144
103
104
105
55
146
112
138
126
107
125
103
37
126
89
107
152
134
110
131
118
37
138
125
138
160
138
107
111
55
97
91
152
83
143
74
110
136
138
105
58
142
37
126
58
127
97
123
127
171
109
101
79
93
131
68
138
110
139
67
104
69
126
55
55
124
56
138
140
80
110
120
89
105
110
127
127
119
144
129
101
37
130
111
56
103
111
124
67
83
105
102
110
169
92
110
131
126
58
103
123
122
55
67
169
55
68
119
92
55
105
178
138
144
122
107
130
37
104
94
56
117
56
134
58
55
55
109
56
112
91
56
127
128
73
110
107
99
137
126
37
91
73
77
37
122
79
92
105
67
105
119
91
119
128
92
119
110
146
110
106
58
132
80
56
55
126
138
119
67
55
138
139
80
138
110
152
126
126
84
107
135
134
104
67
93
127
99
122
107
99
92
178
119
104
152
126
105
126
92
89
77
111
126
126
124
92
88
107
131
79
149
56
105
56
110
58
92
128
86
114
122
126
104
122
110
171
148
126
127
92
67
158
92
105
92
158
112
86
69
86
138
104
127
134
92
135
92
105
145
144
168
138
111
69
111
146
75
69
126
37
55
128
58
134
91
110
55
98
134
93
105
146
75
127
124
92
105
58
81
103
122
138
105
136
86
92
105
123
127
109
126
182
169
55
105
55
96
58
89
86
127
123
105
74
109
122
56
110
67
123
104
37
80
92
111
169
77
139
137
58
152
67
139
68
37
105
92
79
91
69
122
92
139
92
86
109
92
138
77
122
55
126
122
56
132
92
127
105
122
138
107
178
127
88
55
124
119
128
97
58
111
122
67
144
55
126
126
104
119
93
123
89
144
127
111
104
141
135
145
107
126
126
144
93
144
58
169
139
139
110
67
110
139
105
84
77
171
91
99
110
134
67
55
130
163
55
92
110
100
164
146
89
110
99
108
168
56
99
146
37
150
136
126
105
122
152
139
119
86
58
130
110
114
91
106
86
103
89
55
74
89
69
93
117
93
104
74
148
91
55
126
67
126
126
144
115
105
118
122
77
124
163
122
139
106
79
55
58
79
124
98
74
69
126
110
92
86
91
122
138
37
37
79
127
126
126
110
112
92
92
145
104
109
55
68
104
154
56
127
74
105
89
113
56
122
109
86
56
69
122
124
92
56
69
162
126
92
122
178
107
110
164
139
92
98
122
126
79
92
97
128
97
169
123
122
112
56
86
69
119
126
92
67
55
119
162
164
109
122
83
83
92
94
128
58
86
117
111
97
119
161
134
118
104
107
55
178
120
122
126
79
104
88
110
68
110
67
146
104
58
128
101
122
67
74
122
104
144
140
105
56
109
178
134
89
148
106
83
88
104
138
86
67
138
75
152
158
107
67
132
158
92
114
107
116
127
144
56
67
74
92
139
138
146
104
127
105
56
92
92
122
122
68
79
92
67
92
138
126
79
123
180
131
74
92
109
111
124
81
126
93
105
106
105
92
138
104
148
69
67
79
126
67
148
114
89
146
139
100
86
99
110
122
104
140
104
69
55
122
140
58
109
126
91
105
164
93
86
100
140
169
67
77
71
126
88
58
55
93
107
146
138
92
93
55
146
37
197
95
121
137
144
134
77
122
122
104
180
93
119
86
56
103
100
122
68
109
92
119
110
182
138
145
139
119
146
74
109
138
67
144
77
72
79
126
69
56
56
37
67
55
112
58
144
138
104
104
123
138
178
138
86
86
55
77
106
144
110
137
92
67
55
96
126
122
92
109
111
67
140
98
67
93
111
91
122
158
93
140
92
91
102
92
137
56
112
111
79
92
88
119
122
58
112
126
138
67
58
104
122
120
117
105
77
92
105
104
67
126
111
104
98
97
107
92
126
178
92
92
169
144
117
92
152
110
178
104
119
128
126
128
131
163
110
110
138
92
104
139
99
122
92
79
125
178
105
105
55
75
93
128
127
92
37
92
126
92
106
118
86
119
138
126
119
99
91
123
145
126
122
108
69
79
68
105
123
128
104
91
89
123
111
127
92
169
128
94
55
169
178
100
37
146
119
167
112
168
99
122
55
138
171
77
56
102
99
135
126
56
139
103
110
146
92
134
92
93
108
100
55
126
79
109
58
93
138
86
127
67
98
67
120
124
93
135
69
158
128
169
129
110
171
55
105
110
88
37
126
128
110
121
127
103
100
139
37
95
69
158
152
37
92
164
139
152
92
110
110
104
126
108
86
104
58
92
139
131
93
152
163
58
124
105
56
127
126
103
126
122
165
84
104
115
135
128
150
93
68
119
92
107
67
148
81
77
163
162
122
89
152
105
93
138
165
67
93
91
92
69
104
75
126
69
110
91
127
110
58
124
83
122
144
140
126
37
122
93
58
91
144
131
56
147
120
92
181
119
100
117
141
74
74
131
91
168
134
122
93
138
167
105
104
79
68
164
180
105
77
67
122
91
37
126
114
144
124
144
105
152
86
122
123
92
55
127
89
103
123
138
148
145
146
106
37
122
146
122
58
128
111
146
138
122
55
56
165
162
162
122
86
144
104
69
110
110
139
100
138
168
55
77
83
122
126
84
122
169
107
112
149
122
128
103
105
83
104
92
132
110
126
110
113
55
122
93
108
119
169
98
55
67
148
109
127
58
92
58
105
56
127
144
71
123
127
112
126
135
92
105
119
104
178
114
124
144
127
138
93
157
126
114
122
130
92
37
92
56
55
104
126
139
58
169
126
146
91
93
158
93
188
160
93
122
131
55
110
122
124
129
136
111
119
55
136
110
81
136
107
93
56
58
56
139
171
111
100
93
37
105
126
110
104
122
68
92
178
138
110
146
126
171
111
77
92
86
134
119
164
97
56
67
92
138
138
128
121
105
69
126
105
110
138
171
67
67
110
55
92
75
126
92
169
122
121
126
124
113
68
99
56
114
171
127
114
93
142
92
160
93
83
104
56
109
131
146
67
178
106
152
119
99
146
128
119
92
110
111
109
99
138
126
114
114
58
55
164
93
55
122
138
134
77
105
167
128
122
55
79
92
77
92
55
100
130
138
67
144
84
127
68
92
69
92
91
126
92
107
77
138
148
139
120
119
93
91
92
92
112
171
97
169
104
135
95
65
145
92
105
144
109
67
67
58
110
109
56
78
93
111
103
86
110
127
124
93
140
107
89
58
67
127
69
74
91
163
127
92
91
106
110
152
112
55
37
68
139
67
55
110
122
136
127
77
123
55
110
138
110
55
67
148
138
144
110
144
180
132
120
67
103
58
126
104
138
56
77
110
58
123
137
67
106
37
152
97
69
86
98
83
55
37
100
92
178
122
111
55
152
138
119
86
92
138
92
148
138
138
108
69
144
122
55
127
114
131
124
126
144
192
110
126
139
79
127
138
99
140
37
79
178
122
122
109
122
124
91
56
119
55
104
55
77
105
37
138
118
74
104
93
108
146
83
138
98
86
55
119
108
84
105
105
97
138
77
56
83
104
138
93
139
137
55
128
144
92
67
55
104
138
124
102
168
84
134
86
83
84
139
124
124
128
69
55
75
89
126
56
105
122
146
139
56
77
55
139
139
144
126
89
107
100
127
86
119
67
79
107
37
105
197
152
169
104
138
108
55
88
79
178
180
119
37
125
92
109
146
105
58
142
100
111
110
109
37
83
58
139
132
137
37
178
86
87
169
92
111
56
134
138
73
92
126
99
92
164
124
124
146
92
178
148
77
126
115
99
127
107
105
86
150
144
67
68
79
78
126
138
84
58
165
92
130
139
110
93
126
69
140
122
127
139
67
74
151
92
110
56
122
128
92
77
178
128
152
142
120
151
134
140
58
139
58
118
112
97
69
180
119
126
37
139
122
99
128
77
105
149
104
107
92
162
89
124
146
103
124
107
122
104
144
120
75
75
95
127
88
69
123
55
109
134
91
69
171
112
58
55
102
117
55
126
122
123
146
178
139
178
112
55
100
86
152
126
92
84
126
122
122
99
89
122
136
131
126
92
83
67
124
126
56
124
97
92
84
138
140
105
128
138
110
122
74
120
86
126
128
92
122
75
77
101
138
92
67
149
130
126
74
169
92
92
126
37
77
138
127
104
178
74
111
139
75
104
75
109
65
138
100
58
77
74
83
178
55
81
110
122
110
56
110
127
132
109
152
136
74
37
58
97
140
93
126
92
103
111
122
74
67
91
122
110
91
86
144
106
159
127
128
37
160
91
55
111
138
68
110
123
95
78
104
163
104
67
74
139
101
67
144
67
147
122
99
144
105
103
119
122
152
126
67
105
86
110
102
92
68
144
69
122
148
92
55
84
120
92
91
75
68
69
110
134
109
127
109
105
93
140
103
77
86
74
127
122
104
122
128
144
123
122
86
112
162
107
56
138
89
67
103
37
122
120
107
122
109
99
137
105
88
126
107
58
119
74
132
58
110
55
58
75
178
144
58
154
105
37
122
37
105
127
55
110
110
75
37
97
98
118
56
104
130
104
122
128
105
67
126
122
99
92
37
58
122
98
169
83
69
98
126
91
56
37
110
139
37
55
137
56
178
37
126
127
164
110
78
105
92
169
109
110
111
74
131
83
122
152
56
126
137
139
91
152
105
104
119
126
104
56
148
134
126
104
126
88
180
103
131
91
117
55
84
69
92
92
126
92
55
99
100
122
93
93
119
92
127
127
112
169
152
104
144
167
139
122
109
56
58
138
105
91
76
55
122
145
37
92
37
56
178
126
105
111
89
99
92
131
37
92
99
104
99
139
140
91
81
169
92
75
178
93
140
55
67
128
107
61
92
117
124
119
93
178
127
119
84
130
56
123
55
171
117
178
135
91
99
141
86
122
120
117
125
122
55
104
126
86
105
138
74
83
92
122
110
110
122
110
84
67
110
122
135
91
81
91
126
97
77
83
77
120
56
67
37
104
92
144
126
122
55
138
130
163
109
104
67
72
138
104
106
92
103
105
129
139
56
99
67
110
146
107
56
128
104
121
79
123
55
134
56
144
97
103
69
91
126
93
122
123
122
56
122
67
122
101
92
80
111
68
100
126
67
93
163
99
79
156
138
67
74
127
67
55
110
64
117
138
69
144
123
86
100
92
111
103
135
103
55
178
118
138
123
118
163
92
69
139
58
88
56
56
178
92
37
91
58
112
86
138
77
80
74
169
130
75
112
58
122
69
55
92
148
56
158
114
127
55
37
164
144
162
144
131
138
56
76
64
105
55
102
55
118
55
199
118
93
58
68
123
83
119
138
114
118
134
110
67
148
127
92
74
75
104
140
77
83
119
117
137
139
113
134
67
130
67
64
110
104
105
146
84
128
122
128
79
86
110
122
99
109
83
110
91
58
105
93
144
138
123
58
97
86
67
110
69
128
67
136
110
144
104
74
127
58
92
119
146
110
110
92
55
56
67
92
144
55
56
120
55
167
93
105
126
93
122
178
122
92
114
92
134
75
126
67
126
116
126
104
146
138
55
58
37
104
107
122
146
124
131
105
169
55
140
97
128
156
84
131
109
92
83
128
100
95
105
69
117
131
104
83
110
138
159
146
55
93
67
86
126
55
92
169
37
56
126
92
67
86
169
97
101
83
138
162
79
102
119
75
55
75
110
127
104
144
130
74
86
58
83
79
56
56
122
114
127
169
83
74
106
92
136
104
94
105
128
37
110
113
134
75
129
102
105
112
139
178
92
99
99
127
131
56
149
86
149
92
139
75
84
138
67
144
134
91
77
84
105
101
152
67
160
122
114
67
130
138
171
160
93
104
110
55
91
67
112
144
104
97
69
91
92
94
55
107
92
122
74
127
109
92
93
171
129
129
55
69
127
124
69
110
107
150
99
112
99
135
126
145
104
104
111
148
138
55
105
91
37
122
118
92
107
146
56
152
105
152
67
92
162
58
95
41
113
68
92
77
146
56
146
74
109
104
105
180
178
144
91
152
88
192
129
109
138
124
92
92
171
122
167
120
122
86
105
86
105
124
92
105
111
126
105
146
121
108
140
120
92
135
92
127
55
106
128
104
122
138
101
111
180
99
112
110
94
138
93
118
135
74
67
101
119
56
114
167
105
136
119
97
158
88
122
169
69
110
122
178
55
127
104
122
134
107
92
67
108
98
56
127
122
92
135
92
111
127
150
74
126
100
86
56
126
109
57
103
139
119
138
138
119
122
92
128
99
138
69
122
103
140
86
119
92
188
55
37
126
126
110
122
104
75
93
127
55
126
138
89
138
152
37
56
137
69
55
55
144
83
141
126
146
123
79
131
92
123
37
110
127
56
55
122
117
101
55
148
58
92
138
139
93
138
111
106
127
110
139
127
128
134
37
100
148
104
115
37
138
67
55
93
55
55
119
128
119
123
128
98
100
116
146
107
149
106
126
126
75
37
167
178
122
105
107
92
55
110
110
139
135
134
74
122
110
127
140
104
100
127
92
131
160
84
128
89
139
55
122
128
91
56
55
125
123
55
111
55
92
119
139
86
67
107
91
110
129
56
128
56
130
148
139
104
92
83
126
131
135
67
178
171
139
77
105
58
127
37
105
92
138
109
169
126
109
107
138
145
144
79
55
126
110
88
92
144
105
104
163
67
138
110
107
79
122
111
128
180
56
92
67
104
127
74
111
109
144
146
119
69
144
37
148
75
67
122
79
146
92
146
136
105
138
56
58
126
55
104
117
106
104
119
117
111
105
114
92
110
105
119
96
73
110
127
78
146
127
92
128
92
122
139
128
75
100
132
110
55
169
138
105
99
128
123
135
123
114
86
68
107
124
92
79
122
178
93
106
126
92
146
105
101
69
123
107
126
97
146
138
92
127
127
140
167
129
109
37
117
74
58
95
55
67
109
67
68
92
109
105
141
126
97
92
93
77
104
99
69
91
58
123
138
127
105
123
58
98
95
178
144
104
69
127
103
124
55
79
138
122
128
130
69
86
119
131
58
105
131
144
67
113
79
171
56
169
67
58
140
92
188
180
124
122
126
101
107
138
77
67
92
55
103
110
58
105
119
69
178
92
97
144
55
139
139
93
92
138
128
139
93
75
92
123
136
178
178
92
110
93
122
135
110
127
56
93
109
110
92
152
105
122
131
92
124
92
92
188
127
131
92
178
139
86
111
178
74
55
55
92
99
122
56
83
139
69
105
74
178
37
56
55
93
69
130
106
100
152
152
74
123
67
142
74
83
69
136
56
89
83
55
123
69
109
100
120
126
67
105
144
67
154
110
122
92
110
56
105
144
56
79
110
122
104
37
55
105
89
146
138
111
130
55
86
86
123
55
101
148
107
55
126
122
55
104
56
92
79
122
67
122
37
110
127
67
79
124
95
122
79
139
122
131
67
105
139
83
37
163
110
107
126
92
105
69
55
107
110
122
67
91
137
126
98
152
77
92
112
158
103
110
104
72
67
92
92
178
140
160
122
93
78
164
55
167
122
144
139
119
130
104
83
55
127
110
110
134
123
93
103
56
128
122
91
104
140
55
159
119
122
135
123
104
139
119
67
93
142
55
124
37
112
122
92
55
139
121
119
128
74
146
91
89
164
67
139
139
132
148
126
55
178
146
138
105
134
55
178
130
67
111
81
140
98
138
138
72
75
86
140
55
56
142
108
139
55
138
108
74
126
141
92
119
109
107
95
130
144
110
111
98
144
129
110
56
37
134
147
92
134
117
144
138
139
119
93
105
163
104
74
109
37
67
56
101
126
130
93
122
56
37
110
69
138
109
67
55
67
122
126
105
56
84
132
127
92
104
58
120
55
55
93
126
58
94
110
55
146
140
146
124
126
58
103
83
74
138
163
122
136
130
138
168
93
144
119
77
146
123
149
55
110
138
55
56
139
152
69
84
126
114
139
137
123
122
122
91
93
67
56
139
103
107
83
93
126
105
58
134
140
158
122
126
127
104
37
93
141
126
79
99
109
93
68
110
110
146
122
139
92
164
114
92
92
55
117
104
77
79
92
122
152
83
98
69
152
107
104
93
75
148
95
101
123
98
178
143
111
101
123
89
55
139
138
169
105
91
182
99
105
75
56
182
127
152
145
68
144
56
67
92
92
68
118
127
86
37
103
55
105
140
56
84
58
91
95
56
95
123
127
110
84
110
103
169
91
122
140
75
92
122
67
92
123
120
178
68
105
37
122
126
67
89
37
69
41
138
180
55
101
106
102
161
146
86
92
110
92
103
138
136
67
106
122
58
114
104
100
79
92
135
123
99
110
132
37
104
146
75
126
75
115
98
131
178
140
122
67
69
122
115
126
119
107
56
126
58
131
103
135
92
92
104
67
92
109
134
178
105
131
128
131
122
98
67
67
165
111
104
138
107
137
119
128
122
162
93
131
75
138
178
86
92
77
178
110
103
117
122
169
58
111
105
126
138
86
69
126
92
98
109
122
126
131
138
144
104
55
75
127
126
152
107
178
127
105
139
55
104
138
56
117
122
138
55
92
144
130
122
178
122
91
126
144
119
58
83
107
127
149
75
74
93
67
67
69
128
55
138
79
56
110
152
138
67
93
180
122
104
142
92
122
56
139
92
110
140
96
83
56
56
92
119
179
97
104
110
59
58
88
109
148
105
83
67
55
68
122
55
119
128
74
163
138
109
111
55
124
91
92
144
68
139
69
111
37
92
74
92
132
91
92
144
74
86
160
141
178
128
122
105
138
109
104
110
88
105
138
165
69
110
104
55
56
138
105
103
178
102
150
122
93
93
89
128
80
92
127
128
178
91
140
67
101
67
128
124
91
111
99
126
96
139
37
122
67
158
112
89
169
58
128
152
148
56
127
95
171
55
56
55
102
141
105
126
104
109
55
138
83
165
128
122
122
68
140
103
67
73
58
110
105
118
56
158
105
55
58
128
144
55
139
55
171
93
102
92
55
132
79
69
84
92
92
105
146
108
86
113
108
56
169
78
108
122
93
91
88
56
139
122
138
127
37
74
106
92
37
144
37
58
55
123
67
76
139
160
75
128
58
103
37
55
92
131
93
140
132
93
56
128
112
110
58
97
99
75
110
56
92
55
164
92
126
120
160
169
93
55
69
83
104
92
160
56
101
72
117
95
104
56
93
116
180
110
67
65
67
106
58
55
126
92
138
55
124
148
97
86
55
110
131
102
138
93
86
156
121
178
55
162
146
110
99
126
107
128
110
131
91
114
97
86
55
104
55
56
75
96
144
145
37
103
171
138
138
178
138
119
146
138
92
162
93
55
109
118
137
58
67
104
110
138
104
68
111
74
105
110
55
126
104
64
86
178
138
140
144
131
105
74
144
93
92
67
178
55
140
102
37
126
124
122
105
122
92
55
126
127
88
93
124
109
127
97
109
86
105
67
68
102
122
104
102
111
105
58
127
158
80
105
124
126
110
56
122
122
91
122
105
110
124
134
67
127
148
92
58
112
169
93
144
138
120
93
105
69
110
93
58
37
136
110
37
86
169
142
55
105
56
169
130
122
126
55
119
55
92
67
93
144
139
112
105
158
97
128
107
98
102
140
111
160
37
152
126
169
178
126
110
68
106
132
119
122
55
55
126
67
92
105
92
152
69
92
100
92
165
91
55
119
67
125
58
104
122
150
67
119
75
105
112
86
55
138
55
110
127
103
67
75
138
109
118
169
89
145
124
110
89
83
55
55
167
123
146
83
92
92
178
152
111
140
128
109
103
105
87
75
95
126
114
92
37
127
122
106
128
119
126
122
107
140
134
67
122
56
69
169
171
79
86
92
105
138
79
112
56
178
67
131
56
92
180
109
112
55
152
122
110
86
147
109
97
104
119
109
104
130
124
126
138
144
79
144
144
141
134
92
138
106
95
103
92
139
89
104
145
123
139
122
109
131
105
104
189
180
128
130
69
100
138
114
123
91
105
77
110
106
126
104
106
119
138
127
67
123
122
92
105
110
92
139
126
138
69
92
110
126
126
56
103
92
105
105
92
171
132
132
126
37
99
163
122
89
55
79
127
69
68
111
127
55
139
77
67
79
104
102
169
181
105
37
104
104
122
97
92
127
82
55
123
139
168
67
110
104
127
180
89
92
93
55
156
72
158
110
105
146
104
171
80
101
79
103
109
124
86
77
109
138
124
138
107
122
56
126
127
126
37
86
55
83
74
152
67
163
92
159
178
91
91
127
104
55
123
162
146
86
135
127
105
104
130
74
169
122
139
105
126
55
126
178
144
119
178
56
125
105
136
86
55
148
91
37
58
137
124
122
105
137
110
178
92
132
93
126
84
139
126
55
127
108
122
117
158
120
137
92
56
105
112
37
148
178
134
140
91
37
126
134
138
138
109
171
37
55
147
55
92
55
105
37
152
138
105
103
146
104
79
104
138
86
74
93
112
101
123
114
67
111
131
152
110
105
146
148
92
138
104
137
109
128
148
138
144
72
107
101
86
37
78
106
58
68
77
123
111
103
83
122
97
105
124
110
109
111
128
105
132
124
111
93
79
123
114
110
178
92
146
158
169
128
124
123
169
128
146
169
91
122
123
135
104
112
99
99
110
111
89
88
93
91
83
134
58
127
169
169
127
37
105
168
123
93
126
112
119
73
127
93
110
129
119
69
126
146
126
124
74
123
37
126
72
83
83
69
104
106
126
56
129
105
158
109
91
139
138
79
146
107
37
105
92
163
91
92
124
104
128
86
112
86
132
55
77
144
105
101
122
55
56
139
75
92
107
163
169
93
138
55
169
55
152
110
55
104
122
106
56
58
146
56
110
146
37
138
164
55
55
91
55
105
55
162
126
93
119
105
104
144
84
119
139
55
92
137
122
136
105
56
56
55
138
138
92
56
105
169
138
92
139
110
105
92
106
81
68
109
138
92
98
105
152
86
37
91
178
58
98
128
107
104
103
122
128
67
124
80
108
103
123
93
56
134
79
123
122
107
152
114
122
144
89
111
139
55
126
108
121
122
138
137
105
128
110
55
56
102
127
136
126
144
58
138
105
152
127
103
107
140
130
122
95
105
86
93
105
67
92
79
109
152
126
105
55
56
55
95
122
123
129
126
120
37
67
55
37
146
37
138
122
88
123
127
152
110
58
144
98
74
84
122
91
92
67
147
56
130
178
105
178
56
139
93
138
104
112
140
158
110
131
108
127
92
145
122
107
55
69
55
56
58
105
126
100
114
37
122
108
67
148
126
104
105
56
122
119
126
108
138
58
122
124
58
178
138
104
122
126
168
105
67
138
55
79
110
156
119
55
58
55
58
107
55
113
106
92
104
132
95
110
114
101
178
138
67
55
93
55
105
88
56
148
117
128
92
86
148
93
79
112
128
105
98
163
122
142
79
103
86
92
56
122
109
139
122
100
105
137
67
67
138
105
106
126
77
111
137
67
127
86
192
124
93
156
128
126
126
132
74
104
119
103
103
95
58
92
93
158
128
86
92
92
79
107
105
67
132
138
139
102
109
122
68
92
92
58
69
144
69
92
108
127
41
127
37
93
118
86
144
130
110
72
55
119
119
105
126
126
91
91
115
109
58
105
147
146
92
105
92
122
102
171
104
139
110
137
125
146
139
135
56
125
110
93
122
55
98
125
111
106
55
178
77
55
120
178
101
69
114
104
106
123
111
110
131
105
91
92
110
126
110
69
158
55
127
55
74
83
76
92
140
148
121
136
107
163
107
37
110
81
67
69
138
131
91
92
100
182
138
105
91
105
105
79
138
122
56
56
180
97
146
164
37
122
126
146
109
162
109
171
122
178
151
128
129
140
93
146
58
152
105
110
56
111
109
99
122
77
129
152
107
109
74
81
135
138
138
138
144
55
119
126
179
107
97
100
127
93
122
122
92
92
93
171
98
93
140
178
67
58
92
109
104
169
139
75
132
126
110
37
103
69
163
91
110
56
91
112
139
152
126
67
127
139
67
56
126
83
86
67
69
104
180
125
138
56
123
95
105
115
56
92
69
128
127
104
127
138
105
99
116
69
148
121
131
79
149
88
69
178
56
110
122
93
126
58
126
56
92
114
126
122
126
142
87
99
138
156
98
98
111
67
101
134
138
141
99
56
110
68
37
105
104
149
124
69
178
71
93
56
104
139
89
55
37
105
178
148
93
138
146
163
127
86
74
142
103
93
77
122
169
92
127
91
169
74
87
114
92
56
126
104
132
110
92
144
92
131
127
124
144
92
110
110
55
77
74
138
117
58
111
67
146
92
107
126
160
105
37
99
130
128
110
178
140
139
92
75
114
122
131
79
134
92
58
127
126
149
105
153
110
140
127
146
74
136
92
55
119
178
86
92
55
112
108
128
110
104
178
107
138
67
95
94
119
55
127
104
146
79
106
146
55
104
110
139
67
97
92
122
152
139
132
126
119
92
122
103
56
110
165
128
56
105
139
169
88
111
77
171
104
112
99
107
178
105
110
165
134
140
93
91
77
67
58
107
139
122
126
78
92
123
98
55
110
140
93
122
123
89
92
119
110
67
127
76
122
152
110
55
92
93
145
138
114
119
121
84
79
79
92
69
126
99
107
105
91
105
75
55
140
103
92
152
105
91
144
99
74
128
117
134
127
83
79
74
128
55
111
92
139
78
107
102
58
86
105
91
131
123
55
104
119
99
122
110
110
55
136
98
55
67
69
74
123
92
164
118
107
140
110
91
120
110
92
93
128
146
99
56
130
108
146
169
142
37
126
78
92
67
152
128
152
107
37
92
105
127
69
126
128
123
104
123
92
119
152
55
100
140
104
140
130
169
80
122
103
127
126
105
92
152
110
93
122
135
136
109
74
92
58
126
126
56
104
68
55
92
91
110
140
123
91
41
98
67
105
124
92
67
99
126
37
56
127
58
169
91
152
105
86
152
79
107
105
100
131
79
93
118
67
122
178
178
146
124
144
55
107
165
138
169
98
102
104
67
91
137
111
103
67
105
122
103
103
126
164
165
111
152
134
105
99
128
122
74
92
57
92
163
119
122
127
92
93
55
126
56
56
128
122
126
55
104
92
128
92
97
140
139
130
180
119
105
37
93
55
92
77
75
107
122
56
67
119
152
105
128
110
110
103
122
118
69
138
123
79
79
127
55
110
122
140
146
67
139
68
126
55
75
178
105
139
104
127
91
55
79
56
56
126
105
126
104
79
86
92
92
152
126
144
138
120
75
136
123
119
55
144
138
73
107
55
55
74
56
119
83
119
67
158
122
128
121
109
89
93
144
67
92
103
134
112
171
146
58
126
72
69
110
145
58
69
92
100
138
110
92
105
123
104
92
122
152
92
167
139
122
92
122
55
105
136
55
138
103
93
86
126
79
168
148
79
56
93
93
92
67
149
120
127
138
126
130
117
55
110
56
74
92
114
139
92
130
105
93
103
69
67
144
103
104
84
68
55
122
67
104
163
163
75
106
37
139
140
79
67
126
127
67
109
131
105
122
107
58
178
126
55
112
122
178
103
105
152
127
105
55
69
138
141
104
105
128
55
127
92
58
146
92
123
69
104
56
141
105
136
119
37
86
126
107
119
92
68
92
103
112
97
56
95
123
37
58
92
105
122
55
79
102
55
139
178
124
104
138
92
144
84
55
56
126
80
67
58
111
83
37
104
146
138
86
146
37
144
122
110
97
101
111
83
97
69
55
105
126
105
146
122
115
126
126
140
55
92
126
131
109
67
138
169
139
92
131
68
178
171
75
92
100
138
92
105
94
55
69
104
77
117
126
110
92
92
132
115
93
110
58
127
126
126
92
152
109
105
123
74
119
67
86
69
139
178
93
119
37
110
122
121
67
126
91
105
92
148
119
152
56
119
158
120
67
101
127
115
152
92
100
139
158
168
58
124
122
138
128
75
75
37
56
91
55
127
104
110
83
199
119
178
189
55
150
152
152
86
134
169
93
105
92
122
130
69
139
123
135
79
137
56
126
138
81
92
91
98
128
148
97
126
109
37
92
105
111
127
134
55
112
79
83
92
55
37
104
164
91
56
93
80
69
126
99
69
152
111
69
142
74
139
144
117
158
152
55
139
158
92
98
119
99
80
134
126
88
145
37
56
106
134
156
117
111
104
75
122
144
144
107
83
98
139
105
99
55
105
119
189
138
110
148
199
110
127
58
56
110
134
148
152
111
128
86
55
162
75
126
93
119
138
164
123
134
37
110
167
97
56
123
92
106
77
128
97
77
126
152
139
67
110
122
56
56
152
135
139
103
169
98
146
124
131
126
97
105
92
105
128
110
128
122
104
104
169
92
162
126
110
122
119
122
146
104
55
110
110
67
130
80
99
55
122
169
134
122
86
55
126
110
138
105
109
178
141
124
139
110
118
58
105
130
169
138
134
138
144
92
94
168
110
128
139
145
58
75
118
55
144
146
79
97
105
104
74
104
105
128
122
99
148
78
111
134
93
138
148
104
105
76
124
107
110
129
95
126
92
107
56
92
91
105
134
92
139
139
139
105
56
99
91
128
178
37
56
122
67
105
58
152
67
160
93
79
138
92
55
55
141
83
152
171
37
127
139
79
77
55
84
67
55
134
99
56
138
160
159
68
110
56
146
98
92
178
178
138
56
152
92
109
74
67
146
123
55
105
169
136
128
127
110
152
92
112
146
56
55
132
92
144
69
124
99
105
92
58
92
148
138
55
152
119
91
92
142
105
67
105
93
86
134
136
126
105
109
126
75
55
178
144
55
111
136
139
79
131
137
92
110
55
163
126
55
92
122
92
144
105
93
124
126
92
37
178
110
74
140
164
140
168
119
72
120
84
75
128
55
104
92
93
107
139
169
109
138
132
134
104
104
127
55
122
134
104
91
110
109
93
93
139
128
79
79
109
104
77
141
94
100
128
104
164
110
118
103
72
78
123
67
110
168
93
104
127
124
114
86
104
132
74
93
134
106
92
86
110
126
92
111
95
81
55
111
122
122
128
123
152
126
107
126
119
104
55
144
110
55
58
37
92
110
110
108
55
163
111
94
92
105
100
98
79
67
139
93
138
93
69
67
122
56
37
138
68
91
178
107
144
55
83
104
163
74
77
58
129
162
93
111
140
132
104
118
111
55
126
139
158
81
122
104
79
162
56
127
137
119
126
91
67
138
126
80
110
93
114
138
144
130
103
110
105
139
100
120
138
93
114
144
93
93
105
123
128
112
67
127
111
92
92
138
122
58
69
37
86
110
58
105
58
37
135
146
93
104
93
145
178
93
118
56
77
55
119
139
140
55
37
74
126
92
67
95
110
58
55
105
124
93
122
37
93
138
126
122
119
158
127
110
126
105
58
56
69
105
105
105
58
92
110
119
104
124
128
126
171
127
178
87
148
107
138
138
105
128
103
123
110
104
122
110
105
123
123
105
69
127
110
92
92
55
134
131
105
55
105
67
91
83
37
122
91
132
92
106
152
148
110
154
101
99
108
56
122
99
138
124
152
108
123
37
105
69
126
178
122
146
142
111
165
131
126
148
138
92
132
55
83
104
91
107
165
92
145
107
122
77
117
178
55
105
124
55
144
132
127
128
92
105
92
55
132
140
56
104
105
127
69
67
139
69
144
55
144
77
122
92
122
67
91
92
56
92
92
110
139
67
56
67
104
86
139
86
138
105
138
127
169
112
105
67
93
145
122
119
179
108
192
138
144
147
92
91
112
37
69
107
104
144
37
123
119
111
134
139
141
98
138
188
128
95
92
152
139
93
104
138
91
56
55
138
139
55
178
105
92
84
123
79
138
158
92
67
104
138
75
122
164
136
79
105
80
77
123
160
67
110
37
123
67
115
109
117
55
84
141
91
110
86
178
55
126
128
144
141
83
92
79
88
92
67
199
122
69
123
148
104
115
121
79
92
152
105
92
74
93
124
122
110
56
178
126
81
146
55
128
67
169
146
131
58
67
139
139
109
37
93
64
105
69
106
126
56
104
100
93
93
122
117
77
171
92
110
56
126
105
92
167
103
58
118
56
92
126
77
192
111
93
92
56
164
163
92
92
127
84
106
105
138
92
130
69
69
117
127
79
126
89
92
163
106
110
92
69
92
104
105
139
105
144
152
92
110
92
107
88
93
113
83
126
37
152
106
123
64
131
128
92
128
111
55
111
37
102
169
92
91
138
56
146
144
144
126
105
152
126
92
152
69
67
104
110
199
77
144
123
178
92
144
106
138
140
171
92
111
122
139
105
115
107
92
83
55
80
128
122
178
55
110
86
37
165
67
119
105
126
112
84
55
92
102
152
103
122
105
139
103
37
93
167
55
126
105
119
127
152
104
122
73
138
99
137
119
120
55
92
92
152
110
98
126
138
127
110
110
129
136
126
58
55
97
92
110
138
138
75
122
83
103
118
130
126
104
180
58
169
146
171
107
130
92
122
104
135
107
144
69
144
112
107
99
67
115
147
128
144
111
117
122
178
148
95
95
72
126
55
56
128
137
37
67
55
105
131
55
178
126
104
127
77
92
99
134
67
104
105
104
93
83
93
105
169
92
80
108
83
111
67
100
145
98
139
142
169
104
126
103
95
56
92
106
150
64
103
122
124
55
93
123
64
105
75
127
148
93
126
120
67
92
152
55
83
101
67
122
86
180
139
122
110
123
93
106
158
126
119
120
91
122
123
98
169
126
105
92
110
130
110
93
91
144
110
100
110
67
139
122
67
121
87
146
67
37
105
169
99
140
37
89
146
146
58
92
107
56
56
119
107
122
106
180
91
105
37
126
144
55
86
111
37
163
123
100
138
56
111
37
93
67
55
126
178
92
37
110
92
37
100
55
97
110
97
131
165
69
103
98
110
69
144
105
128
58
92
69
169
77
148
93
37
139
56
105
93
138
105
91
139
97
119
139
67
68
135
178
92
55
132
144
92
55
104
109
192
127
99
114
105
146
93
111
56
128
79
74
92
86
178
115
55
132
142
86
73
79
139
104
97
55
55
178
67
86
89
110
128
91
105
104
77
160
117
87
74
110
86
110
69
58
56
128
124
92
148
92
56
56
55
140
105
126
178
122
67
110
178
103
132
77
55
93
93
91
83
122
118
149
69
106
74
110
100
151
180
55
56
122
122
92
67
124
110
55
55
117
122
97
135
130
138
74
81
77
92
69
93
139
127
140
79
109
95
69
123
118
114
105
55
126
119
69
92
95
148
122
163
115
140
122
119
37
110
128
55
136
163
92
55
178
104
55
140
55
91
92
103
146
56
83
122
105
76
110
86
105
168
110
138
92
110
139
86
120
105
69
93
92
110
72
123
87
55
131
138
92
110
178
195
92
86
92
134
178
152
100
119
103
55
110
100
95
55
105
100
146
98
109
148
86
55
169
127
139
140
110
148
164
56
139
134
110
134
92
93
77
92
146
79
100
122
138
138
56
97
80
98
145
169
74
126
138
120
92
37
92
128
105
112
138
75
92
55
105
106
84
78
123
144
146
110
97
124
91
110
152
55
126
55
120
162
127
131
92
122
122
95
92
55
56
101
37
69
139
117
55
138
138
123
169
140
122
86
121
37
68
58
140
55
118
142
105
120
105
138
105
92
156
134
109
93
148
121
127
56
92
92
126
111
69
55
110
131
144
152
98
122
122
93
146
119
74
141
128
139
55
112
134
113
78
140
138
158
127
107
104
110
107
113
152
105
123
152
132
128
164
78
55
37
118
89
103
74
152
138
122
92
93
55
109
67
92
150
126
67
139
141
105
122
105
74
128
158
126
126
74
127
105
138
127
55
122
139
145
86
122
169
67
130
95
114
136
139
158
99
77
56
88
122
86
134
55
58
167
123
127
83
126
69
89
92
75
79
120
138
178
109
111
74
128
163
123
126
114
122
169
104
152
86
139
55
162
92
93
127
91
55
128
117
132
107
110
152
109
146
100
122
139
139
58
123
148
124
137
139
110
105
37
55
119
132
115
122
104
67
144
127
180
118
122
122
126
99
93
118
83
92
97
79
138
122
122
127
126
56
93
92
138
110
102
67
83
80
37
79
91
163
126
56
120
56
110
37
56
37
104
122
123
58
123
140
55
100
144
37
126
107
92
111
37
55
97
58
120
152
171
55
162
58
164
55
111
104
148
37
79
55
120
98
132
79
104
79
74
119
75
139
84
74
100
105
84
110
132
126
178
110
58
169
101
56
124
79
152
92
110
97
119
112
118
77
37
92
169
123
109
144
110
67
88
37
105
69
132
168
91
148
122
92
140
122
83
92
69
93
103
140
108
115
105
55
178
105
67
58
138
136
158
79
135
134
119
138
124
58
124
55
138
120
98
93
91
138
98
105
92
169
69
67
178
105
55
105
108
119
122
104
127
127
139
111
126
126
132
58
105
74
139
119
72
165
84
97
138
110
152
98
158
169
126
84
95
99
108
159
81
37
110
97
55
55
55
107
122
106
110
178
77
58
127
139
152
110
104
140
88
122
104
130
126
104
84
147
126
122
111
136
169
136
127
136
138
55
146
88
178
56
86
118
162
69
126
79
92
55
92
126
93
122
104
144
122
104
105
56
86
139
99
132
92
105
92
69
104
93
99
56
126
67
78
77
128
139
104
83
55
99
92
158
138
56
119
132
86
105
107
146
107
105
67
110
147
122
58
89
124
77
92
91
144
92
86
152
123
128
69
128
152
126
111
92
92
79
83
111
107
117
111
86
104
110
55
93
139
168
122
110
105
146
58
111
93
69
126
111
92
119
110
180
37
104
139
109
107
91
55
92
56
67
118
124
119
128
110
110
138
77
144
122
140
178
122
117
127
104
86
124
125
167
105
114
138
107
122
92
126
105
139
122
118
98
67
126
91
56
67
37
55
110
127
104
122
92
92
92
109
100
126
104
79
74
58
79
139
86
122
55
163
106
125
140
127
134
111
55
67
109
75
88
75
131
122
152
110
139
97
127
142
86
56
138
139
122
58
144
145
110
126
163
92
122
105
152
97
132
98
145
188
55
58
109
140
138
118
127
111
93
69
67
85
56
95
74
115
68
122
129
67
126
149
177
135
144
142
119
86
126
55
132
97
88
55
139
110
67
119
139
37
126
95
126
55
134
67
67
98
107
139
67
75
138
104
167
144
168
91
92
128
137
91
140
109
138
128
65
152
74
140
144
79
152
126
120
67
107
93
91
55
110
122
110
101
104
111
121
122
132
134
107
86
99
56
92
55
112
91
109
98
58
105
126
91
137
138
180
110
169
122
140
37
95
126
104
122
75
110
165
67
134
86
105
138
104
126
123
92
121
110
92
98
100
131
67
67
93
139
104
73
115
37
126
124
146
123
84
125
95
111
138
106
77
128
111
79
67
58
119
58
87
122
127
79
92
93
110
75
78
117
92
126
132
128
180
126
145
67
55
140
56
69
118
92
92
169
145
152
92
140
139
112
113
127
152
127
163
92
55
111
79
58
110
103
126
55
99
109
67
104
37
152
92
58
103
58
92
110
94
110
67
37
122
119
106
96
138
171
92
106
56
138
105
93
92
130
93
117
138
124
144
119
115
163
163
100
110
74
131
103
138
55
67
105
146
127
103
122
126
136
178
171
163
134
118
91
92
110
152
87
97
84
144
92
79
126
56
108
138
100
110
103
137
122
67
126
109
58
92
102
110
107
126
130
126
104
107
139
126
105
146
138
138
134
169
126
119
119
128
143
122
111
112
168
146
126
164
92
105
158
37
132
139
37
110
152
55
138
55
67
142
55
67
167
119
163
131
130
69
69
55
146
89
92
92
152
105
69
56
119
74
180
107
110
108
93
68
169
178
87
119
115
122
139
105
127
178
55
86
146
55
118
100
127
114
122
105
138
93
168
77
86
138
102
107
126
171
74
128
124
139
105
122
128
110
131
119
146
104
105
117
105
74
126
92
79
71
107
107
118
119
178
162
109
93
69
146
94
79
74
126
127
123
55
146
138
123
93
122
130
74
56
55
178
55
140
122
118
56
169
107
126
105
110
55
124
138
122
139
169
127
101
86
138
67
128
92
152
55
171
56
142
124
92
139
138
119
139
91
37
75
93
105
140
92
100
105
123
99
64
91
105
169
145
138
55
110
144
109
37
128
152
76
139
152
118
165
92
56
127
127
122
92
122
178
102
76
75
148
55
55
126
122
101
122
131
111
146
124
92
55
89
55
126
178
141
55
91
110
55
122
74
122
138
91
55
128
58
99
93
131
92
92
123
115
110
56
122
126
83
77
107
98
104
111
117
127
110
106
79
93
122
67
115
126
148
122
124
128
168
104
56
55
132
122
126
152
152
105
139
99
126
55
120
55
83
138
169
108
104
144
171
118
92
125
83
119
126
104
105
101
130
123
109
178
149
37
111
140
67
93
144
55
129
93
119
122
110
146
105
56
105
134
126
55
144
110
144
56
104
134
86
141
91
119
168
104
77
55
152
124
37
37
105
139
144
91
168
125
37
146
93
78
128
138
110
68
113
68
134
77
135
92
141
139
138
105
104
100
104
126
144
79
117
55
149
110
77
74
113
86
126
149
76
69
111
169
160
93
152
92
122
138
99
92
81
58
94
119
127
56
131
92
105
122
126
92
67
55
138
92
81
77
69
169
135
171
92
37
67
138
92
79
110
146
37
92
94
97
122
171
77
114
122
104
37
138
128
134
127
124
144
110
37
139
109
112
67
122
148
103
79
144
93
86
199
92
151
77
178
92
138
119
139
99
126
107
152
106
127
117
67
104
169
105
123
92
102
99
56
77
169
160
56
37
67
153
104
74
167
80
67
169
67
138
55
89
111
139
132
69
126
83
83
104
127
136
92
77
122
110
105
86
99
126
130
92
138
79
134
84
101
75
110
94
146
75
167
104
55
67
126
69
92
117
67
148
103
84
37
122
111
75
110
104
119
100
55
138
128
178
110
103
69
93
69
67
67
105
37
99
105
37
112
134
110
124
126
138
122
92
108
105
92
138
122
92
132
93
92
105
84
69
114
134
107
37
92
74
93
93
110
128
105
136
138
130
132
104
130
145
67
178
135
97
67
104
133
126
182
74
81
182
67
122
123
138
89
134
119
104
56
163
92
147
69
127
110
77
109
86
123
69
55
131
105
58
69
93
67
138
138
111
91
168
56
119
113
111
122
74
67
109
92
126
139
126
121
107
104
92
139
97
118
105
55
111
128
109
138
84
95
135
124
91
138
93
102
86
92
120
122
118
111
92
101
126
69
74
99
55
105
127
69
134
56
111
67
126
131
120
110
123
55
55
123
210
127
148
171
140
79
55
126
148
139
127
163
139
139
92
68
138
110
152
126
95
138
152
141
122
137
97
101
111
127
99
55
97
171
119
56
37
104
138
97
124
77
180
101
122
55
69
131
139
56
111
105
93
141
107
55
122
95
122
178
109
138
111
55
79
100
69
92
108
99
55
107
101
79
122
74
109
144
55
113
104
86
103
119
110
92
55
37
123
88
104
137
95
92
58
55
98
110
104
107
129
58
56
128
152
85
58
92
178
55
92
88
138
134
105
93
91
126
144
57
128
93
128
104
37
67
101
105
127
107
92
110
102
104
67
69
105
146
55
110
138
77
58
128
91
79
99
132
100
92
96
86
139
139
55
122
110
55
56
117
107
92
126
56
37
158
56
105
138
105
138
67
147
86
122
92
77
104
126
138
110
91
146
126
130
138
111
92
134
146
92
128
72
103
146
92
56
178
92
91
105
77
37
122
68
105
100
119
55
56
86
122
165
106
178
123
128
125
74
78
79
105
146
109
136
81
104
138
107
104
134
105
67
122
188
37
56
92
92
92
55
122
88
92
67
79
108
140
105
92
134
58
102
91
109
119
91
67
56
178
152
58
69
101
139
119
95
130
128
104
56
75
115
110
79
107
103
56
92
92
142
55
105
105
69
55
84
137
127
69
100
127
105
136
67
55
178
79
119
124
169
92
144
127
109
83
99
181
110
126
56
130
55
125
105
105
148
69
92
122
122
69
128
145
127
139
131
92
152
74
123
67
139
107
126
104
178
105
92
122
124
147
83
55
162
138
68
56
69
74
67
119
148
180
93
77
67
127
158
92
37
111
126
104
92
111
152
126
107
104
104
58
84
135
144
92
138
135
121
75
123
111
140
67
95
109
123
122
67
169
144
152
67
74
146
99
105
110
58
86
119
92
105
92
99
112
86
127
107
141
98
92
75
171
55
122
127
111
37
56
93
109
37
169
138
92
171
120
144
124
110
67
126
110
55
75
83
92
127
171
55
97
126
92
107
104
98
110
79
138
69
37
93
96
92
138
37
89
122
168
110
126
105
83
37
134
56
110
122
152
138
103
126
144
138
179
88
122
91
104
120
119
139
58
37
127
126
67
104
58
122
93
93
164
103
156
134
95
146
100
169
76
55
101
128
128
56
92
68
37
138
55
110
55
139
110
99
139
112
68
110
37
55
122
152
91
56
105
178
126
114
181
110
126
55
144
98
69
77
122
67
92
104
111
105
138
123
144
93
109
37
167
138
126
105
138
37
110
110
99
197
110
139
122
91
168
104
119
58
97
110
135
104
105
109
110
130
55
178
58
146
125
137
144
104
97
127
37
105
146
86
37
55
67
109
123
139
111
55
138
120
56
117
128
69
94
152
109
74
93
180
111
86
91
138
93
67
140
110
122
138
152
86
74
128
110
180
180
100
58
67
67
122
97
131
69
158
67
98
119
91
56
110
83
58
144
127
69
55
92
55
119
81
117
138
138
92
110
128
126
181
55
126
167
141
162
110
80
56
111
96
91
101
111
119
37
110
123
67
163
58
92
134
139
144
78
125
105
103
55
131
126
74
56
91
146
139
146
110
158
123
152
138
69
120
124
130
139
141
130
83
126
37
99
128
56
139
58
105
84
79
105
122
132
140
180
122
110
128
56
105
72
122
126
139
152
119
122
122
67
139
92
68
112
138
98
128
74
56
103
122
101
146
138
126
144
68
55
171
139
110
92
95
110
131
105
163
55
130
58
105
105
178
87
169
126
92
126
92
107
110
171
104
84
104
86
139
139
55
100
178
58
86
37
127
92
168
142
119
138
110
67
55
101
139
92
105
67
58
122
130
124
92
120
178
188
92
148
122
55
69
127
103
92
109
92
144
107
168
123
152
96
114
97
77
123
56
110
119
171
110
148
138
138
139
55
141
109
110
138
130
93
77
122
91
126
93
83
128
93
147
105
139
122
138
178
86
107
119
104
137
126
110
126
75
144
124
79
180
122
139
163
110
69
93
152
67
86
91
108
83
92
130
110
92
134
37
114
67
137
85
122
110
56
138
92
88
67
130
130
107
55
117
122
122
83
92
139
129
117
77
120
112
144
107
139
126
55
178
103
110
92
138
105
91
98
55
122
140
106
95
149
105
56
111
94
56
112
95
91
139
110
122
146
103
58
158
128
140
105
144
74
56
103
75
131
55
122
56
126
102
106
55
37
83
67
127
110
92
126
55
92
179
127
104
152
109
132
58
92
135
168
112
79
100
152
110
126
77
88
122
86
55
138
92
142
93
56
148
37
139
105
138
86
138
93
168
92
55
128
91
128
107
100
139
168
81
144
105
55
55
94
105
110
55
104
158
37
92
140
119
122
119
95
92
122
92
77
55
128
69
55
67
128
103
37
58
140
97
86
178
144
111
67
74
139
163
58
67
124
106
122
92
55
77
105
118
55
139
144
126
86
85
92
128
132
126
110
105
67
127
104
123
69
79
91
55
124
88
146
67
92
139
79
108
55
152
103
169
107
98
110
68
69
99
105
77
69
139
92
107
67
93
153
138
119
123
122
55
108
142
77
86
69
58
56
100
74
110
79
79
128
55
124
138
126
107
55
117
111
89
92
103
105
119
92
99
37
92
79
169
139
84
58
58
114
67
109
132
178
107
163
93
100
132
86
127
122
112
92
67
92
81
148
112
100
145
117
92
92
110
144
97
131
138
55
68
126
37
137
127
105
108
92
92
56
169
105
105
122
104
37
139
69
93
178
56
144
128
74
67
114
104
64
56
124
98
128
180
128
80
97
96
132
158
121
86
93
79
91
84
105
80
105
103
67
178
101
56
58
169
67
112
93
67
99
37
180
104
110
126
111
122
55
91
55
74
122
58
93
126
167
58
122
128
111
110
58
99
92
105
75
122
84
95
158
138
56
55
126
131
92
58
110
122
109
139
110
37
83
123
67
91
77
75
138
122
58
127
101
64
104
74
77
99
55
141
178
122
168
122
99
105
127
88
69
122
119
55
103
91
139
152
74
111
127
104
56
92
106
124
93
67
92
140
37
171
122
91
89
55
131
130
97
92
68
171
56
130
94
89
77
144
144
92
122
96
95
152
140
138
138
79
122
93
56
127
97
163
67
120
109
124
139
152
58
69
79
178
146
105
99
37
92
124
122
91
119
99
103
77
178
138
128
131
128
56
137
58
136
101
107
128
138
67
55
134
56
55
146
68
110
92
37
124
182
163
95
125
101
92
131
69
171
67
152
126
92
127
86
138
56
68
117
146
111
110
124
84
55
178
37
88
122
55
37
197
69
103
131
178
67
138
126
91
83
126
134
104
103
117
67
171
92
110
110
148
91
144
110
147
99
67
127
110
109
105
126
67
128
144
138
104
139
83
138
126
55
146
67
109
101
101
105
56
139
92
122
122
122
149
104
74
122
123
85
37
122
132
105
67
132
56
122
126
144
37
105
128
81
119
72
111
139
91
100
148
69
110
139
110
106
56
55
67
93
127
93
106
69
55
73
105
55
148
68
75
118
89
168
157
104
111
112
110
128
134
134
93
105
97
98
104
105
169
118
98
92
77
105
119
138
127
92
109
144
105
122
119
122
93
99
92
111
69
92
148
169
108
105
178
77
75
144
125
132
74
122
92
132
136
134
105
92
99
112
122
93
122
130
98
124
55
110
139
37
104
110
106
99
83
110
123
108
55
111
74
107
83
138
89
124
171
126
126
55
64
140
124
110
138
122
105
126
139
93
131
67
122
162
92
110
104
106
180
93
144
55
110
139
104
74
139
132
74
91
86
112
105
72
69
104
122
138
135
139
188
78
84
99
109
91
89
92
67
105
138
58
99
138
55
119
131
110
105
109
123
103
144
105
92
105
139
92
55
92
171
92
110
73
58
111
55
91
55
86
104
79
119
146
106
99
135
105
83
119
128
75
111
94
158
55
119
138
92
130
86
118
167
104
107
122
77
105
117
58
126
108
111
111
67
101
126
83
67
92
107
105
37
68
128
55
55
83
127
56
74
107
128
93
131
95
91
131
136
110
164
105
144
169
122
110
119
74
110
138
111
92
83
146
97
104
128
127
56
110
138
139
126
171
122
104
55
100
55
102
122
144
138
77
144
91
105
110
67
67
144
121
37
144
55
111
115
96
58
77
128
58
139
37
112
91
144
67
92
122
126
100
148
92
108
86
110
122
67
55
37
92
86
178
122
127
107
93
110
75
95
107
169
67
115
124
92
104
127
130
106
110
130
178
89
144
84
84
125
92
122
93
76
91
110
139
144
137
146
86
102
178
67
151
122
103
58
55
110
100
144
98
171
126
79
97
92
169
103
55
110
67
122
114
92
98
146
67
178
110
144
110
91
125
128
69
79
111
126
122
86
148
81
37
97
55
104
105
178
171
67
127
110
56
81
120
69
126
104
100
93
128
99
122
104
91
56
129
96
131
69
92
139
126
150
76
123
75
138
77
103
93
123
92
111
75
99
122
128
138
130
111
56
178
104
122
140
180
105
100
104
126
134
122
93
56
93
92
108
122
164
105
92
126
77
100
114
110
126
92
111
124
144
67
103
104
134
55
132
105
105
122
110
110
96
128
110
99
106
55
67
124
136
128
55
139
105
132
93
126
58
121
55
92
58
56
104
106
104
126
138
58
55
139
127
132
107
77
169
92
92
91
55
58
104
55
103
92
126
137
178
107
75
112
139
92
144
144
146
93
93
145
86
92
56
142
91
92
56
169
110
122
75
126
77
139
119
159
37
105
105
92
104
118
55
110
92
77
165
56
91
139
69
122
109
58
141
77
110
83
84
122
92
56
91
105
114
139
122
134
139
92
92
126
93
110
104
144
37
110
152
56
79
122
126
131
105
55
122
93
67
142
56
107
130
75
92
126
127
92
118
111
67
104
92
111
55
122
138
178
110
140
77
168
138
178
37
114
69
37
91
105
140
122
68
138
93
55
148
107
102
126
131
68
152
126
92
112
179
95
180
92
109
126
144
67
67
139
146
75
178
97
128
104
67
110
55
37
67
122
138
165
58
122
106
92
107
128
77
102
58
126
146
123
171
139
134
56
163
99
110
102
152
99
144
123
74
139
37
105
139
171
79
124
58
67
180
123
139
168
127
106
122
122
123
67
75
110
67
56
56
152
114
99
93
156
86
146
117
163
86
139
119
109
192
93
112
86
93
37
139
123
93
37
86
127
132
110
93
91
55
122
112
119
100
180
128
126
108
178
106
122
110
55
67
55
67
138
55
169
139
92
56
104
81
92
55
105
93
149
37
128
117
109
111
146
114
55
144
122
87
127
55
152
105
37
105
144
103
91
105
58
107
124
56
146
115
104
56
105
74
178
140
104
58
122
146
138
137
126
114
75
144
55
121
128
107
67
91
134
110
114
92
104
100
128
55
111
162
74
122
199
72
93
77
122
126
101
163
83
105
55
144
146
134
110
164
126
126
86
169
104
56
105
56
105
105
128
160
105
101
139
126
104
37
99
68
138
58
111
67
152
127
165
114
56
75
126
56
81
180
67
105
37
144
75
58
125
122
93
127
165
126
139
122
120
92
146
142
122
104
55
124
64
55
126
148
92
86
98
37
120
74
55
93
103
78
111
122
122
93
139
92
105
119
111
105
160
110
96
114
144
126
117
95
178
107
138
169
164
163
110
67
126
67
77
111
137
119
56
92
126
55
126
112
67
55
58
123
77
152
92
97
86
69
127
119
148
123
110
112
68
104
74
93
55
37
91
104
158
93
69
138
55
180
93
58
148
139
74
91
79
105
55
146
152
92
91
101
111
73
37
92
99
104
109
139
56
138
162
67
127
37
146
138
104
55
126
87
136
121
99
96
127
130
94
138
110
110
93
124
141
69
152
99
126
138
129
132
92
162
128
69
192
140
77
110
92
89
123
122
126
58
139
122
104
79
123
122
178
146
95
122
123
146
97
67
104
110
84
126
126
146
92
111
110
56
92
124
160
122
88
122
87
75
178
69
119
122
37
92
163
107
67
152
139
109
58
114
104
91
140
109
138
99
103
69
138
110
179
124
139
92
68
152
171
138
136
93
92
103
152
107
144
86
67
107
123
140
94
148
104
144
123
68
146
142
105
56
139
126
55
126
182
92
104
122
104
79
118
138
127
152
128
111
178
138
127
126
97
102
146
107
89
75
37
92
56
67
64
103
169
69
134
126
105
109
37
138
58
102
122
92
105
125
93
55
95
56
56
146
139
37
56
93
77
74
178
152
115
91
110
55
91
92
110
138
110
138
110
110
156
122
126
130
99
120
93
67
123
105
128
110
89
58
107
110
76
146
127
126
92
97
104
107
92
55
86
159
92
119
152
72
178
139
122
153
56
123
78
79
78
105
55
126
67
93
99
139
128
129
119
56
110
152
178
105
126
138
140
74
55
165
98
92
152
109
180
37
122
138
127
148
108
55
122
55
119
110
55
139
120
121
122
37
169
138
37
142
119
130
92
37
105
168
122
117
105
110
122
136
119
105
148
111
152
149
105
140
130
138
77
93
126
171
126
132
103
114
107
137
122
114
178
56
94
110
139
140
139
58
56
141
131
86
93
55
105
58
99
146
87
55
105
93
126
74
122
144
104
128
141
107
105
126
55
56
146
74
83
119
93
131
80
91
111
93
92
103
105
84
110
128
94
91
93
114
86
126
162
58
105
178
118
93
67
126
109
74
79
68
98
131
146
58
127
122
105
69
137
105
138
97
84
91
119
83
118
115
74
138
142
139
122
74
86
95
108
107
139
110
119
104
122
120
67
106
55
84
129
56
96
91
92
138
79
123
178
99
58
144
130
122
103
97
144
55
99
119
56
55
125
99
96
37
99
139
77
158
119
134
55
117
56
131
92
109
92
98
132
147
126
128
126
83
139
162
93
122
83
123
126
126
91
92
75
110
93
110
138
178
84
140
119
126
158
107
138
124
88
104
168
152
110
103
67
122
105
55
120
126
123
92
79
152
110
118
105
89
138
111
100
74
178
110
110
139
112
92
86
180
103
110
138
105
92
131
111
104
58
92
92
122
86
122
56
149
58
74
110
102
37
74
122
91
144
126
79
104
104
146
110
131
55
138
101
77
127
58
119
152
55
131
104
122
117
58
122
102
107
138
107
55
58
105
110
67
110
105
110
77
55
55
37
178
146
108
127
123
56
74
107
97
67
99
126
67
79
140
139
92
146
55
69
169
92
150
92
75
119
94
105
55
122
110
64
69
117
37
92
102
98
89
126
79
169
83
126
74
137
138
122
146
102
58
110
165
125
55
98
55
55
98
86
68
110
123
139
104
105
110
146
69
92
112
148
124
92
86
79
126
58
168
128
107
104
81
114
152
124
128
84
37
58
58
86
126
171
164
127
152
126
100
88
75
56
77
143
148
126
115
55
167
140
169
122
146
58
126
74
56
140
105
58
56
104
107
103
111
37
100
104
105
107
131
123
139
97
126
108
126
119
144
105
160
69
148
140
68
37
110
92
37
56
92
55
92
124
119
93
69
124
156
171
80
110
178
122
55
97
110
37
163
104
67
106
56
122
83
99
104
178
140
138
123
110
88
104
122
138
92
145
117
144
169
110
169
142
86
105
138
130
110
114
114
56
122
77
117
110
128
74
105
123
126
67
75
67
86
122
139
98
55
93
55
103
138
110
91
93
148
108
126
127
126
168
141
105
104
139
103
134
134
105
67
91
74
122
55
129
124
86
37
92
79
56
178
122
93
144
105
122
92
92
152
92
122
86
122
99
117
92
127
126
146
86
115
68
55
146
37
119
127
84
84
79
127
92
112
115
127
58
131
55
148
56
119
163
139
56
92
139
103
105
118
146
67
110
132
189
181
68
142
93
144
158
55
69
92
37
169
103
92
109
92
55
148
104
77
37
92
99
56
75
95
69
130
128
110
122
136
128
92
86
126
105
58
93
105
106
107
75
137
128
110
105
55
37
158
74
68
119
77
178
144
119
124
138
79
163
37
130
92
117
99
69
69
55
124
122
122
92
114
148
67
75
92
92
91
140
92
144
93
171
99
107
37
122
169
124
165
146
163
126
111
162
104
117
146
132
110
105
56
169
111
58
103
99
132
102
107
86
86
146
109
148
126
97
107
138
94
126
178
104
138
94
128
110
83
134
107
178
119
107
67
91
110
92
171
105
104
104
92
139
55
146
115
37
77
67
74
86
138
55
56
83
104
138
146
99
178
55
152
58
104
127
68
171
67
122
109
127
91
132
105
89
140
123
123
55
86
152
119
103
92
106
138
55
92
58
93
67
105
118
110
92
122
132
148
126
110
77
119
95
79
93
178
92
104
67
144
168
130
180
93
120
83
75
37
100
74
55
92
121
112
127
110
140
115
56
92
69
104
69
122
92
112
92
137
79
163
104
171
92
92
55
83
78
77
122
77
123
92
56
104
99
79
137
69
100
127
128
122
110
126
128
105
58
93
107
69
144
146
105
127
103
126
169
105
144
146
92
123
101
101
93
126
122
55
67
131
122
126
69
171
74
101
138
77
92
77
132
110
138
104
122
80
140
68
86
114
107
134
37
105
126
138
86
105
122
169
119
110
96
61
140
114
110
110
122
123
37
138
93
119
131
91
132
104
75
127
103
99
140
171
127
95
79
139
110
37
162
110
55
122
171
122
92
79
110
93
77
91
105
138
37
92
131
92
148
135
77
69
91
112
104
148
122
108
92
37
55
132
95
105
58
111
144
99
128
160
69
68
126
158
138
55
158
55
83
107
67
104
126
169
118
110
178
86
111
111
109
146
157
56
37
104
110
103
37
89
95
79
105
123
122
127
123
119
122
55
139
145
139
118
86
132
180
122
130
111
86
138
127
86
77
56
136
140
101
84
138
92
92
86
134
112
144
152
86
124
92
180
105
171
140
109
122
152
55
126
111
144
139
55
67
178
163
134
92
122
169
138
153
110
122
141
114
83
92
119
131
105
111
98
97
98
68
139
111
77
178
75
93
112
69
79
128
93
139
92
92
58
84
136
144
97
134
145
140
110
128
104
105
119
105
165
136
128
122
168
126
127
86
169
128
122
99
122
37
84
95
152
58
122
79
73
67
99
124
126
104
64
122
119
105
110
152
99
110
152
110
67
92
105
146
115
169
107
92
110
154
178
105
126
55
86
168
55
67
128
58
105
139
91
127
86
120
122
110
86
92
146
37
92
139
111
139
148
69
105
104
126
79
139
67
55
95
122
171
169
122
160
109
89
122
104
160
160
105
144
137
92
67
122
181
92
114
158
138
148
188
55
152
103
92
91
148
103
107
79
126
122
168
110
140
107
112
105
152
92
58
130
145
79
110
128
135
137
126
107
97
55
104
120
140
122
146
128
56
58
144
102
58
119
56
110
105
58
163
67
109
56
162
58
119
128
99
79
163
146
56
104
122
81
85
139
131
104
118
131
163
112
55
58
105
178
55
86
123
138
126
169
55
58
94
86
113
56
152
126
95
144
132
99
178
126
122
93
127
138
55
120
110
104
104
107
132
55
146
115
110
126
134
127
93
115
128
91
69
144
55
93
55
100
148
86
78
55
58
138
123
56
56
142
67
125
99
117
56
86
169
178
105
55
75
157
55
58
79
103
55
110
138
122
122
139
37
138
126
79
137
137
167
67
55
74
93
93
126
122
97
128
103
67
56
100
123
145
67
92
92
92
55
122
146
37
93
134
92
92
109
126
158
92
139
105
102
156
140
112
111
144
69
128
104
146
67
83
100
137
109
104
168
74
111
56
55
92
122
104
146
86
56
97
171
75
105
95
105
158
127
68
140
123
93
89
86
126
98
86
104
118
93
77
96
126
138
92
107
127
55
110
89
92
124
139
79
158
105
105
55
110
91
169
127
67
169
93
93
169
138
102
101
55
127
91
74
135
55
180
93
56
105
55
139
69
37
106
55
134
93
103
139
104
136
122
92
127
119
104
107
122
92
56
122
92
132
102
111
77
126
69
128
144
119
92
128
92
137
55
169
127
146
92
126
67
104
93
105
105
126
75
107
79
106
67
109
109
146
119
131
55
146
83
91
138
72
148
92
132
55
139
86
140
162
111
168
134
37
58
55
97
104
92
131
67
55
55
91
100
55
77
86
56
93
75
92
56
118
126
37
152
171
92
136
91
55
56
112
123
122
122
105
119
110
92
152
104
130
56
156
134
105
86
99
69
55
158
127
107
105
169
152
79
84
122
163
125
83
111
128
138
100
58
88
138
93
129
110
146
74
105
104
105
58
110
127
67
58
111
123
104
110
110
130
100
77
144
92
126
97
122
127
126
119
152
104
86
140
55
55
178
85
126
138
55
110
67
77
95
111
138
135
122
150
69
126
104
55
92
102
128
55
156
126
56
92
100
146
56
126
55
86
67
178
145
152
126
122
37
126
138
110
110
92
122
126
119
92
127
87
55
125
55
124
153
77
152
110
138
103
122
75
55
138
122
146
86
139
67
83
91
55
106
58
74
55
163
110
140
128
178
91
162
67
56
152
93
108
110
104
105
104
109
69
37
109
86
126
178
98
109
132
55
180
97
95
158
79
128
140
105
104
111
139
91
55
127
79
127
105
105
56
56
111
67
124
77
105
111
58
110
138
171
122
91
132
139
122
79
81
122
108
163
113
114
120
122
92
97
67
125
105
122
128
68
126
126
103
86
110
77
127
134
118
141
99
67
126
84
37
110
138
110
105
108
110
139
127
67
74
126
109
106
124
139
104
56
119
55
110
178
104
106
86
110
122
171
92
105
123
75
58
152
124
103
126
144
103
132
132
110
127
126
169
105
99
99
126
100
68
126
127
92
128
92
140
92
144
67
189
92
130
83
67
163
110
74
74
74
131
79
145
92
117
105
108
93
92
55
169
110
105
91
92
58
107
109
144
126
134
117
56
107
95
102
134
144
119
146
171
144
120
126
122
84
89
132
91
67
129
127
69
119
138
92
122
111
56
123
79
77
74
92
144
146
77
37
79
138
58
104
125
92
122
126
94
75
122
109
86
108
94
89
124
139
127
110
122
87
92
67
168
157
123
73
56
114
109
167
178
110
122
104
104
92
101
92
122
140
130
55
55
79
55
123
67
92
144
93
92
128
86
110
126
55
163
107
58
110
128
110
167
92
55
93
105
171
169
105
152
119
165
55
122
103
58
37
140
112
127
58
164
112
109
139
67
110
55
195
105
37
86
79
79
104
99
160
139
69
138
110
123
104
105
105
58
93
77
139
56
86
130
134
55
130
131
67
110
97
126
110
122
126
144
126
37
99
55
109
101
128
79
122
97
55
123
67
104
98
74
37
104
103
94
109
99
124
55
148
68
91
132
93
138
56
92
156
169
56
91
104
124
153
56
109
86
37
124
122
102
93
55
102
92
109
146
93
83
98
93
91
138
84
124
112
92
58
92
75
67
75
92
139
67
167
126
138
110
37
55
140
117
86
105
103
79
67
122
126
68
84
93
147
110
99
96
139
128
163
144
97
122
92
86
168
144
56
111
141
93
131
55
131
127
93
139
114
124
132
79
83
138
69
128
119
69
96
105
55
162
79
134
126
105
168
169
64
139
110
126
81
56
126
56
58
98
122
110
105
122
92
100
112
123
69
126
111
37
67
122
122
119
171
126
126
68
107
132
118
110
92
109
55
37
110
92
77
171
58
122
104
56
110
163
91
119
126
108
92
92
103
120
134
89
122
79
105
144
55
171
138
107
110
79
130
126
127
95
92
104
109
92
138
92
122
104
37
103
91
122
86
130
146
123
124
111
55
86
140
74
37
120
110
126
138
139
74
103
169
126
138
144
104
99
138
37
99
74
105
77
67
169
135
55
178
127
126
136
91
69
178
73
139
67
139
127
98
136
118
165
75
123
100
138
120
144
56
164
118
158
92
103
104
158
55
92
55
169
92
119
127
56
92
86
95
99
126
105
123
111
153
131
110
109
55
55
92
79
80
55
79
55
178
104
67
78
168
55
55
91
68
109
92
197
122
56
127
140
56
92
138
105
139
123
125
79
104
129
122
110
127
138
37
58
93
75
122
100
55
67
92
93
148
58
122
110
110
97
152
127
164
105
134
140
138
132
92
178
126
146
58
55
144
124
67
126
138
178
37
152
58
199
144
56
92
114
67
104
105
56
136
103
134
110
55
144
128
139
75
58
92
139
123
144
92
124
91
112
79
110
86
163
58
69
91
139
160
118
92
98
126
75
100
139
123
100
126
192
55
108
110
109
158
109
78
105
105
93
138
75
79
120
138
93
142
91
111
37
102
97
178
126
106
55
137
93
178
98
74
124
126
93
126
86
195
55
119
137
83
122
96
138
151
55
86
126
55
111
58
146
110
152
164
56
67
161
126
55
55
78
92
79
100
56
106
79
123
93
178
130
122
93
37
139
55
126
55
111
77
99
56
111
102
37
127
178
122
144
122
139
110
130
37
97
122
110
92
91
92
89
136
123
123
137
77
86
93
93
126
93
111
93
136
178
91
119
178
171
37
139
55
127
123
178
58
110
86
104
67
139
109
110
98
104
67
103
138
109
123
75
180
67
67
37
107
58
138
105
152
92
136
92
55
138
139
55
67
55
117
126
126
110
168
89
69
152
127
119
146
178
110
122
93
127
77
169
77
152
107
97
129
128
126
147
67
110
139
92
56
107
100
94
148
129
107
101
106
92
140
106
138
78
148
105
68
126
83
103
105
109
93
122
37
105
138
55
138
122
127
123
105
55
92
102
132
56
92
55
118
130
75
110
56
113
79
104
55
58
127
110
160
37
152
95
79
119
127
152
84
110
122
104
55
146
58
92
106
67
92
99
55
107
168
111
88
104
178
118
67
146
86
144
136
67
67
104
126
111
139
56
97
146
126
124
98
55
86
92
153
91
55
104
146
75
92
79
92
110
74
169
109
137
55
156
126
106
111
107
107
79
163
138
93
83
138
122
124
126
104
148
114
127
139
110
138
86
93
67
55
127
146
119
91
126
92
128
93
86
92
122
169
140
107
103
168
110
139
102
107
126
69
169
167
88
128
110
152
58
37
139
122
92
122
152
55
139
124
55
107
128
91
99
145
92
75
56
55
69
123
144
92
144
67
105
79
141
68
92
139
126
136
126
92
83
123
179
55
92
123
149
86
99
69
104
126
67
138
101
111
152
104
92
111
58
58
104
122
110
140
111
118
55
139
105
37
104
122
79
106
124
104
64
139
123
92
55
37
127
152
107
148
125
105
91
104
119
55
83
126
178
138
105
122
103
58
98
92
146
178
139
124
92
122
131
89
37
103
67
114
56
84
91
37
105
105
99
140
86
55
92
86
103
128
91
86
122
68
126
83
127
56
92
101
92
117
56
92
189
139
105
110
79
67
169
55
130
122
141
79
69
138
138
58
78
92
92
102
103
69
99
110
99
75
127
123
56
67
100
118
128
67
92
84
110
92
152
96
67
104
105
92
169
105
126
178
55
86
188
93
55
115
93
58
168
55
124
126
98
169
138
67
122
110
105
93
74
119
83
79
119
138
56
110
104
131
95
58
132
126
67
105
77
56
56
148
122
127
37
105
107
182
139
92
110
111
144
56
37
118
139
120
146
126
108
122
144
135
105
100
68
110
126
104
178
68
98
126
104
69
130
37
97
37
122
115
139
152
104
37
119
99
67
111
37
86
86
109
89
93
111
162
139
99
144
139
37
92
145
110
126
110
122
152
111
86
55
126
100
92
111
105
178
116
156
128
120
128
180
111
110
100
109
146
93
138
92
91
74
119
122
92
75
138
77
67
92
119
91
79
122
146
134
180
99
55
56
112
105
145
56
58
105
168
127
58
98
58
74
93
55
58
122
138
128
67
110
111
103
144
55
92
119
58
140
109
69
56
128
164
119
127
152
77
142
144
56
162
141
126
165
105
92
93
95
93
86
123
97
134
79
135
92
55
69
98
104
126
119
127
92
111
122
128
105
84
55
64
105
105
138
92
127
104
138
75
105
67
132
86
67
93
56
127
144
56
132
125
93
178
110
92
119
104
87
169
138
68
134
77
55
178
126
147
122
152
92
146
92
93
117
55
146
55
55
55
127
168
86
37
109
126
118
55
119
79
55
37
110
67
56
134
92
127
67
108
104
146
105
122
137
56
138
55
105
146
56
110
93
67
169
77
91
55
55
76
83
79
128
123
67
122
83
69
110
124
144
83
56
122
131
107
119
74
152
122
69
92
93
122
126
88
127
117
122
144
126
111
107
74
146
69
55
92
69
110
127
74
158
132
55
92
105
37
74
92
89
139
138
169
92
78
122
37
123
68
139
97
126
79
92
58
67
146
105
101
152
128
79
107
126
178
86
37
104
104
117
120
83
126
121
105
129
123
122
93
67
127
37
96
142
104
146
126
94
111
103
99
122
83
114
163
67
99
57
146
107
69
130
144
127
146
55
119
99
67
109
104
152
56
110
55
110
58
192
126
122
146
93
138
119
77
110
135
109
130
37
111
128
126
123
178
110
105
72
152
77
126
105
92
127
56
144
93
89
105
67
178
122
122
55
92
67
104
110
91
178
104
130
37
120
91
93
104
122
139
58
89
138
67
55
91
110
67
74
78
140
92
136
169
158
83
118
134
122
105
178
139
91
168
178
110
75
199
97
92
105
146
126
110
92
162
119
111
104
86
122
139
55
135
111
138
105
126
86
92
127
103
105
111
102
58
104
91
98
122
110
86
138
69
165
98
128
171
110
92
123
178
106
122
37
139
132
117
127
107
56
74
58
56
142
122
67
92
120
105
171
77
104
55
144
101
58
86
112
68
58
131
126
114
67
118
112
86
58
92
92
127
138
180
106
99
92
110
127
109
111
126
92
55
122
138
110
178
92
152
75
91
110
139
126
55
112
138
92
125
99
110
146
99
124
37
130
55
119
92
127
92
139
131
55
122
132
105
75
110
55
122
182
104
67
126
122
123
92
138
83
128
168
55
75
55
169
105
128
105
119
109
37
67
68
99
75
92
138
122
109
104
105
123
138
122
152
122
145
110
101
140
103
103
111
37
147
128
37
104
56
145
69
102
127
104
106
67
136
68
105
127
127
146
58
149
37
37
105
116
105
56
171
122
68
110
178
132
136
127
110
69
69
67
105
129
86
56
122
79
104
92
103
162
64
99
112
109
56
138
58
92
114
140
79
139
144
122
98
142
139
126
137
122
107
141
158
138
97
86
92
86
55
138
55
92
118
137
67
98
105
132
93
67
92
104
67
56
92
126
122
83
55
144
77
120
107
55
77
126
178
92
69
93
152
105
55
119
89
100
110
91
109
110
131
165
130
56
110
58
58
110
91
93
130
119
67
126
111
92
105
128
92
101
103
122
158
74
85
84
58
88
132
109
123
139
104
69
58
37
105
138
86
92
178
132
67
69
67
139
144
128
92
92
55
56
37
126
126
122
104
55
138
67
146
67
92
138
126
107
55
151
146
89
119
78
92
126
105
112
86
105
140
37
148
145
132
75
124
158
92
56
67
127
84
110
168
56
144
111
126
67
58
146
104
86
127
108
95
178
130
75
92
74
67
92
128
110
199
126
120
92
146
100
56
146
136
122
37
178
67
146
145
93
148
111
117
152
99
134
93
101
119
93
144
122
126
105
139
92
55
92
64
126
144
92
148
158
111
97
134
111
61
55
99
122
79
104
146
127
97
92
127
86
104
138
110
67
122
104
88
169
55
56
181
92
88
92
110
92
122
92
134
98
152
84
124
92
124
92
55
69
138
92
131
92
101
69
68
127
93
99
103
96
121
92
110
180
104
122
86
132
134
127
92
127
93
79
126
92
55
126
69
108
92
99
92
138
92
55
123
107
102
37
164
99
80
110
56
130
109
55
127
121
125
110
37
56
122
111
67
93
86
123
108
80
84
93
69
104
69
127
92
122
140
105
106
127
127
105
122
103
84
105
111
68
146
138
107
104
152
140
119
139
107
152
92
93
104
109
102
103
146
110
148
93
122
127
110
107
128
91
55
37
89
84
69
93
134
67
126
92
139
92
178
146
79
135
127
120
69
75
92
152
124
180
58
99
171
180
134
37
138
138
95
77
92
106
122
67
98
105
79
89
58
126
151
67
132
67
126
93
122
131
86
79
55
112
126
119
140
103
152
68
178
165
93
138
37
177
122
162
58
101
58
110
126
112
169
124
67
138
67
132
111
126
117
128
73
110
126
69
92
122
139
119
92
92
135
110
92
86
130
58
123
89
122
160
110
86
138
138
105
110
120
95
68
76
126
123
110
178
103
55
122
134
121
179
140
58
104
139
139
86
148
87
115
112
107
92
56
188
102
132
110
138
127
91
55
105
56
55
56
140
122
148
178
103
99
93
105
105
146
69
109
119
55
110
110
138
110
124
169
110
117
152
55
148
111
105
105
86
180
132
103
130
67
144
114
91
100
89
127
126
67
134
148
67
110
122
110
92
139
144
126
55
94
92
122
137
37
86
37
58
86
92
169
74
127
151
110
122
122
105
79
126
77
156
123
139
138
104
92
67
97
104
146
104
79
83
37
92
119
178
110
126
138
86
144
91
139
86
92
178
138
67
55
127
122
158
69
146
84
37
138
123
114
104
79
55
144
56
77
131
122
103
139
148
148
148
104
122
92
104
122
56
105
119
92
152
126
151
67
92
58
138
69
122
144
77
126
126
104
92
37
74
103
178
122
91
126
109
105
105
126
110
77
120
99
179
138
55
122
56
127
108
178
122
94
178
98
169
103
103
92
105
87
102
92
128
74
37
55
122
178
144
56
140
122
109
55
101
114
104
124
122
55
110
104
110
100
144
110
110
109
93
83
140
136
142
105
101
67
140
69
180
55
178
124
180
146
127
102
139
105
56
55
104
93
77
75
123
118
105
132
162
74
92
119
130
92
77
148
105
103
148
138
89
126
98
122
107
105
160
55
105
81
126
98
130
56
75
105
92
111
110
58
104
178
136
144
75
37
69
134
126
104
139
102
126
134
93
86
94
79
67
119
55
68
92
105
110
92
126
122
144
84
92
124
105
110
55
126
56
138
74
55
126
110
56
138
144
101
152
93
120
144
96
135
139
69
134
167
105
104
92
145
119
163
105
92
56
91
122
58
58
92
138
93
122
122
103
74
128
91
111
56
119
97
171
55
180
120
111
104
104
126
110
122
163
92
104
122
55
75
93
109
56
104
130
105
114
111
111
138
98
130
121
126
122
105
144
58
86
126
55
138
106
69
126
137
37
97
140
132
138
137
167
104
144
140
105
58
55
168
136
126
56
152
86
101
189
92
148
139
168
89
55
105
103
115
146
111
37
69
144
58
112
126
92
92
79
92
144
89
138
130
86
158
68
139
163
122
134
55
37
109
138
126
188
119
80
92
111
123
105
69
168
55
124
55
93
92
75
110
69
137
58
104
131
56
119
55
110
79
124
165
169
105
69
92
58
56
169
138
169
146
55
126
111
83
92
152
74
105
135
92
77
139
99
139
148
110
104
79
74
97
100
55
61
89
110
124
37
111
91
58
146
126
126
92
77
93
99
108
84
104
58
91
102
126
169
125
67
111
126
104
119
105
93
105
122
93
99
104
135
91
104
37
100
160
104
93
58
110
92
55
122
55
109
140
58
126
144
37
124
152
138
111
55
178
126
127
137
105
37
120
56
37
55
140
106
158
126
115
96
111
168
79
92
79
55
130
110
37
123
92
104
126
140
152
144
146
124
138
138
122
92
37
127
122
56
122
129
122
144
79
126
178
98
129
123
83
146
138
37
122
75
127
146
126
127
139
178
105
128
107
134
93
95
56
139
144
89
136
139
144
110
55
79
104
127
134
56
117
118
86
92
169
92
104
146
67
92
140
109
132
67
105
92
84
93
80
105
127
132
58
94
110
100
55
102
91
55
92
128
124
139
75
55
160
55
77
67
107
105
37
120
111
120
105
139
105
169
178
110
98
146
122
118
156
126
124
105
144
55
111
137
122
138
134
56
112
79
171
111
56
67
138
105
55
122
67
56
163
104
105
122
37
110
86
122
92
86
92
83
167
67
110
97
126
85
126
104
132
110
106
111
126
77
146
92
83
163
97
138
125
92
138
56
67
148
92
138
98
171
105
37
37
79
111
168
55
56
126
105
58
126
93
77
89
140
178
67
79
92
67
122
86
88
37
67
84
74
169
138
120
178
105
178
122
146
123
79
137
105
92
92
169
77
129
126
83
178
178
92
180
169
144
37
127
141
92
93
119
122
105
162
178
103
77
103
92
144
152
99
92
69
119
91
144
122
178
93
83
79
55
92
117
110
67
69
93
95
105
122
88
146
97
122
84
92
104
99
125
109
102
122
119
98
83
105
139
69
100
144
139
122
55
105
105
102
131
140
138
105
55
91
105
84
138
69
93
55
164
105
148
122
104
141
37
110
93
114
119
83
109
152
122
111
107
37
100
93
100
126
92
163
56
74
126
139
112
145
122
58
109
55
105
92
138
119
138
92
93
127
98
67
99
139
169
146
127
138
95
122
103
77
104
138
122
37
109
105
146
108
128
92
97
136
119
110
91
92
123
56
122
67
74
146
138
92
156
109
119
92
126
86
86
123
123
83
67
108
105
93
138
171
123
106
111
91
93
104
124
111
138
99
124
93
92
178
86
139
102
144
164
105
91
55
77
122
105
92
107
55
112
104
138
129
105
92
86
171
111
139
109
92
104
110
105
91
93
149
127
110
144
126
126
79
89
41
91
109
77
126
126
110
86
148
163
110
109
124
111
109
122
144
123
79
145
92
145
79
93
55
109
58
108
67
110
37
104
119
122
98
152
122
92
77
105
126
178
92
55
92
55
122
122
68
83
92
122
93
95
122
98
86
126
146
37
118
122
178
91
109
138
68
146
110
134
126
162
77
114
159
86
140
138
77
56
79
61
138
139
55
106
105
79
146
122
144
126
105
86
146
67
139
106
178
102
92
123
103
64
126
93
55
107
92
126
134
97
171
67
92
149
58
105
92
180
105
92
93
92
37
130
105
56
110
110
150
86
110
67
55
105
137
75
88
69
91
77
55
110
37
130
100
189
127
168
136
93
126
138
58
122
67
146
106
101
112
139
146
139
105
104
69
56
126
55
96
119
56
123
79
101
119
92
122
122
58
122
75
139
152
138
100
101
55
91
145
146
109
122
138
77
119
138
79
79
55
107
91
58
126
105
92
104
92
102
122
67
91
92
79
108
91
56
37
68
105
136
103
178
111
77
99
158
58
110
160
148
178
138
169
109
115
69
55
102
112
93
139
126
122
56
129
152
93
131
97
92
37
93
147
99
131
92
119
144
97
88
92
178
55
123
144
92
126
69
83
99
67
67
93
122
122
127
67
87
56
105
117
178
75
112
122
99
67
105
79
169
138
109
178
56
92
74
84
104
119
83
93
127
168
67
37
126
105
56
146
69
122
149
92
55
55
138
104
123
93
168
169
146
104
88
58
87
105
126
92
68
99
126
144
139
92
134
124
92
92
69
92
69
78
37
79
178
126
77
118
67
126
55
105
37
163
168
92
180
55
92
105
74
101
107
55
127
122
97
115
169
92
94
104
91
55
178
168
105
98
110
152
67
152
37
105
122
56
55
122
146
67
126
69
146
134
93
110
119
104
86
140
123
67
142
37
114
144
138
80
58
169
110
105
139
104
107
126
169
55
169
55
99
118
126
93
152
104
178
118
152
79
87
122
58
92
84
115
139
107
89
171
152
171
55
105
92
122
56
138
139
110
86
110
107
144
169
56
105
111
144
79
124
148
122
139
139
126
77
93
119
55
126
55
55
86
148
91
131
77
37
131
103
104
92
129
67
144
169
105
180
55
69
122
131
138
81
109
103
138
98
104
92
139
58
37
55
128
67
127
67
110
103
152
92
83
83
130
56
107
69
69
104
69
129
105
121
123
99
108
83
58
122
109
144
91
92
92
138
110
67
104
152
138
55
177
118
110
89
146
134
123
122
110
55
148
58
104
120
117
178
58
68
110
92
123
84
89
110
152
123
122
56
112
138
58
168
119
138
110
101
146
146
69
105
178
55
127
139
119
105
78
110
103
110
97
55
97
124
105
92
178
67
58
152
152
55
56
77
120
99
95
109
105
92
74
55
107
86
138
77
103
109
123
93
84
75
105
92
123
124
101
92
126
67
110
104
104
56
136
69
104
79
104
92
91
86
104
55
104
89
104
55
92
127
67
102
111
93
171
152
140
112
81
130
91
98
152
105
120
56
119
69
139
110
130
178
58
93
89
113
67
109
91
37
128
92
122
130
163
110
110
105
138
104
55
37
122
74
93
109
95
146
79
178
106
169
123
138
134
109
144
55
129
115
128
110
86
92
103
88
104
106
103
122
134
148
93
128
97
123
105
69
105
89
92
178
96
124
126
106
110
127
152
138
157
58
110
92
138
110
140
55
138
92
105
97
68
138
92
37
79
165
122
58
126
119
92
180
69
128
126
93
105
151
139
138
123
55
104
146
74
74
120
132
105
110
92
119
67
75
138
144
110
146
86
92
122
92
55
103
91
114
69
122
122
77
116
178
132
146
122
110
110
93
55
122
131
126
97
146
140
107
58
55
79
77
128
146
105
67
111
77
100
55
68
103
144
67
110
74
103
144
117
68
110
139
139
132
104
69
139
138
86
105
67
110
146
69
56
93
104
138
105
135
105
138
122
86
158
105
92
111
148
67
76
122
107
122
128
178
104
71
37
67
105
99
126
144
123
107
92
107
128
98
146
67
144
122
115
92
79
99
138
139
131
67
101
144
73
56
92
104
146
69
92
110
83
132
83
139
126
126
126
111
55
144
84
178
145
122
89
110
110
111
89
135
87
122
123
152
140
104
92
122
128
92
146
128
94
92
99
178
105
69
55
92
141
37
146
79
126
130
146
138
56
135
138
91
138
138
138
67
125
104
110
97
91
108
126
91
138
55
58
106
146
144
37
158
144
105
126
117
123
146
139
144
122
37
128
99
156
105
164
127
126
124
100
58
94
92
138
124
123
128
123
79
105
142
104
126
74
92
86
110
56
56
105
134
97
91
144
124
104
144
93
122
126
127
115
37
128
146
139
118
122
123
75
91
103
107
67
110
122
92
138
92
180
56
58
113
138
92
127
79
152
107
140
122
55
67
91
169
126
139
139
105
37
122
128
162
169
101
67
104
58
92
127
111
139
142
146
178
105
93
124
127
138
152
119
146
104
91
86
123
104
110
128
74
138
58
122
92
99
134
107
92
139
134
144
178
105
122
106
119
119
110
56
108
165
110
146
77
111
91
77
75
107
55
138
169
138
105
138
91
138
138
126
122
111
97
92
92
145
94
105
56
58
110
91
169
117
179
93
120
104
89
148
138
138
126
138
125
121
126
56
122
55
128
91
67
169
56
138
67
163
144
92
126
104
67
137
104
105
138
55
74
123
93
111
171
92
110
56
55
67
69
107
75
92
55
139
122
139
101
93
86
77
123
93
134
96
86
105
179
171
144
131
122
128
122
69
107
180
178
144
100
132
37
158
86
37
69
58
77
148
110
144
89
122
79
132
126
138
146
178
92
149
92
65
110
122
128
104
86
93
37
169
136
162
67
69
178
55
158
144
80
111
93
56
81
124
67
128
117
105
55
122
119
144
56
138
127
37
126
98
136
122
146
55
78
97
119
123
111
69
163
37
178
126
119
86
140
138
150
58
86
111
95
134
55
128
127
88
99
169
93
92
114
122
148
167
128
86
93
105
56
78
86
86
178
126
178
152
96
92
123
105
105
110
96
93
58
92
104
102
105
103
167
86
119
69
92
138
197
79
84
92
37
75
139
55
122
100
92
104
110
144
124
89
115
92
110
55
98
110
140
138
134
139
105
111
110
56
142
138
93
37
169
113
58
94
134
69
105
91
97
105
118
128
110
103
56
81
93
164
110
105
146
104
55
55
77
139
134
69
79
55
111
56
128
146
67
105
75
92
111
126
128
167
124
105
91
144
105
77
37
92
131
105
122
152
105
79
68
124
110
139
92
55
55
123
110
178
144
114
169
96
104
55
169
92
122
37
126
99
178
110
126
126
105
107
158
134
100
130
58
138
112
96
56
117
127
92
126
67
126
127
87
84
92
122
138
126
69
93
122
122
37
148
104
110
37
56
86
136
126
126
102
110
55
138
137
106
55
93
131
126
78
127
123
105
86
37
156
127
169
79
114
96
86
92
144
104
122
69
148
123
110
92
93
92
104
56
67
92
75
167
95
103
74
105
102
93
139
123
127
110
89
56
92
84
101
55
124
123
80
110
110
168
138
92
77
58
79
91
146
140
105
138
105
92
138
105
109
87
111
56
138
126
126
93
146
163
104
91
55
126
152
120
55
98
112
168
79
93
126
109
110
158
152
105
92
109
119
142
56
110
127
126
178
127
148
55
135
55
103
97
56
180
144
92
111
146
86
164
146
138
37
92
75
126
55
123
92
103
119
144
61
109
56
58
109
136
109
162
132
92
92
197
74
86
123
134
55
169
67
146
126
106
92
138
77
146
75
139
138
127
55
144
188
105
37
103
75
92
86
92
107
79
56
55
106
146
138
146
105
92
136
55
119
105
93
105
67
126
119
112
178
152
107
119
77
56
138
144
120
55
75
55
122
140
124
138
99
118
69
105
64
74
75
122
126
111
105
122
55
55
92
55
55
67
67
140
104
92
104
110
77
160
128
98
120
92
104
55
86
139
105
127
110
56
139
96
151
55
103
132
91
93
124
129
37
119
79
144
97
105
55
37
91
119
79
92
119
122
128
138
79
123
92
122
110
119
75
131
108
108
92
147
132
105
55
106
110
138
69
139
86
178
120
105
138
67
120
58
97
99
105
108
67
111
37
137
127
105
93
69
138
134
69
122
69
109
110
86
91
122
92
55
114
105
145
132
163
75
105
67
84
139
74
107
56
69
58
92
69
69
127
127
110
126
69
104
158
74
74
138
169
103
129
109
135
152
110
122
58
37
104
140
103
97
119
86
104
130
89
158
134
92
122
92
55
105
111
138
146
144
83
103
112
128
58
89
97
87
138
55
105
110
114
56
55
144
67
69
58
93
126
91
73
56
109
97
132
92
105
111
126
144
69
141
107
162
37
67
144
138
92
69
56
144
152
67
104
139
128
105
122
109
55
73
86
92
130
136
146
105
79
123
55
92
110
140
56
148
146
139
104
167
148
138
86
37
37
126
138
104
93
97
178
138
55
140
55
92
122
56
92
93
97
138
81
138
140
145
55
105
140
105
139
146
58
89
102
83
55
139
91
137
149
132
92
58
122
86
136
122
79
67
139
56
93
95
89
105
158
123
126
109
79
139
55
106
126
69
110
105
107
56
110
138
126
67
104
105
127
77
152
147
122
83
138
91
104
78
160
122
153
103
122
92
97
122
105
92
111
92
171
77
79
67
67
128
69
138
127
112
127
110
58
110
122
56
124
105
140
122
124
110
79
140
105
105
163
55
151
37
77
55
142
125
58
92
106
37
58
178
37
88
105
76
122
92
139
37
104
156
144
104
142
162
130
146
131
55
75
56
80
102
178
55
104
134
134
56
104
138
126
126
86
77
120
122
77
114
131
37
92
104
119
138
127
113
75
148
55
122
92
146
121
110
124
78
122
112
74
56
55
178
92
112
104
104
122
138
109
115
86
111
103
86
93
112
126
55
83
110
105
158
104
123
146
37
105
98
56
160
92
135
92
162
75
128
105
126
79
104
84
77
92
139
132
86
139
104
96
58
146
128
56
105
110
132
119
104
93
103
55
92
126
101
110
137
101
110
101
138
106
112
118
169
91
91
106
122
144
131
55
144
153
171
69
101
110
56
122
126
144
58
91
37
138
126
158
73
144
114
178
126
110
104
136
99
163
99
102
107
123
86
99
163
105
135
127
86
120
104
119
109
122
127
58
58
105
74
167
123
105
164
138
105
55
106
127
118
113
107
123
108
135
93
86
98
92
109
168
119
91
139
91
146
109
55
118
111
67
99
56
126
92
128
126
145
169
127
110
96
105
58
55
152
164
93
106
144
67
132
92
77
122
91
75
126
83
99
100
55
37
171
79
146
74
164
139
77
109
149
138
123
127
127
146
122
124
86
138
58
171
152
107
79
93
58
79
169
98
144
67
126
105
148
138
158
56
134
152
178
69
105
75
152
119
134
93
110
92
98
102
110
139
67
92
130
97
86
139
99
122
122
162
120
92
126
56
91
58
128
109
127
122
79
102
67
111
74
55
126
92
132
126
126
104
58
102
55
111
138
104
127
126
97
81
69
122
144
141
152
110
91
103
101
79
92
55
69
113
56
68
138
134
67
104
56
58
122
55
122
168
102
92
127
93
58
139
83
92
105
93
69
37
135
121
104
108
55
84
93
87
69
55
56
56
169
178
37
112
92
127
93
67
89
74
55
107
138
127
138
159
55
104
56
148
138
109
138
55
110
138
110
110
92
134
126
140
77
55
156
110
55
171
117
74
55
37
79
110
104
93
106
79
92
132
122
120
75
103
92
152
168
79
55
105
119
37
111
55
137
110
151
91
123
83
109
139
118
67
92
86
110
67
126
122
75
127
37
55
152
55
134
91
68
136
86
122
104
126
138
55
138
119
110
137
37
79
178
105
93
110
105
113
79
146
55
109
58
139
37
87
105
74
180
99
89
68
55
104
55
92
67
118
123
92
164
92
126
139
138
77
98
145
92
86
74
91
99
58
107
58
105
139
128
171
77
128
136
55
91
105
104
122
79
37
92
67
55
37
140
110
138
109
144
126
104
107
67
92
93
55
122
110
128
93
148
199
146
149
126
128
103
167
105
134
67
139
111
114
152
92
139
138
128
144
55
58
110
56
101
124
55
122
58
55
138
109
55
86
122
138
178
128
178
120
55
134
104
69
92
93
122
56
124
110
146
111
163
69
111
111
77
93
146
104
152
37
104
126
140
160
146
141
92
69
37
105
123
92
99
104
132
126
56
138
127
119
148
103
74
109
106
105
37
98
69
56
56
92
56
144
75
127
107
132
123
122
111
144
94
56
138
79
138
92
74
158
126
92
163
98
109
122
83
92
79
69
127
126
83
122
99
152
119
61
138
171
58
74
119
76
67
97
92
140
124
69
110
127
75
148
152
58
86
119
93
126
56
105
86
84
127
126
160
146
140
37
110
178
67
126
152
55
122
55
93
110
123
123
138
138
58
67
167
56
144
138
138
103
67
126
160
68
139
92
67
55
105
135
92
58
128
119
146
75
134
144
197
114
67
144
104
58
140
86
94
91
169
77
152
152
122
146
92
120
92
92
91
148
92
152
56
55
97
144
152
84
188
127
55
180
130
109
122
105
162
86
92
88
83
110
126
92
128
119
140
105
56
92
122
122
55
122
97
126
127
119
98
110
93
58
144
138
111
103
119
55
105
67
74
107
167
146
180
139
110
103
86
139
111
101
92
55
98
92
114
134
110
105
146
122
140
144
126
110
92
105
101
67
67
131
110
165
92
105
94
106
55
68
91
100
135
122
126
109
129
105
124
107
92
92
105
105
168
111
93
103
56
67
67
140
78
86
134
126
67
139
93
92
126
37
128
104
37
114
92
58
137
67
128
93
138
163
129
92
84
68
140
74
92
93
58
77
148
92
83
138
112
79
88
158
128
77
123
86
105
134
104
98
182
122
86
122
137
104
99
67
77
92
83
102
84
104
169
138
83
123
89
126
104
67
92
135
99
132
83
165
110
91
169
112
139
144
135
55
118
120
92
58
136
55
126
134
118
105
103
138
55
110
92
104
123
122
98
126
127
149
112
131
86
109
86
55
178
128
124
143
56
92
110
37
58
110
126
74
97
104
107
178
67
101
111
86
110
69
178
139
58
92
56
92
67
119
112
103
104
72
127
55
75
77
108
67
110
110
99
107
69
86
69
77
136
110
130
69
76
55
98
55
136
122
92
164
104
37
146
105
92
69
110
93
72
127
92
102
74
138
104
119
126
109
55
127
110
111
79
104
105
105
138
56
127
124
92
83
109
111
77
119
138
110
199
119
123
95
128
56
69
92
126
108
87
37
91
92
119
75
124
69
105
119
144
92
67
74
37
89
152
138
109
138
111
122
79
119
105
67
37
77
169
137
79
106
101
139
119
93
144
93
107
146
112
37
67
152
104
110
67
89
58
132
178
123
134
118
139
104
84
126
105
145
114
105
122
72
169
104
104
111
79
126
79
107
118
105
178
148
118
92
92
98
99
105
122
86
80
92
97
105
93
92
122
126
77
127
99
79
131
123
115
79
146
122
58
74
100
83
56
105
134
104
139
167
92
138
92
56
103
105
103
105
86
112
105
118
95
83
158
93
111
122
163
37
128
109
144
97
58
67
146
120
91
110
123
116
120
110
83
80
128
113
93
55
111
120
169
124
92
144
135
137
89
109
56
110
96
111
108
138
56
67
105
136
178
122
128
162
84
105
92
122
93
107
107
122
83
58
138
67
109
107
95
93
93
109
119
171
119
105
144
88
105
55
138
130
92
84
111
178
104
107
55
105
92
101
152
178
138
107
129
104
55
58
124
71
56
127
93
119
146
92
139
68
107
122
83
152
128
55
97
103
84
138
111
55
152
137
117
105
144
107
84
122
91
105
99
64
56
105
79
127
126
92
56
123
98
75
95
127
105
37
110
74
178
130
148
128
75
93
146
55
56
102
86
83
56
123
122
146
128
127
135
67
103
107
68
58
139
74
81
144
92
58
131
99
138
124
144
145
67
110
152
93
110
139
93
146
178
55
105
140
138
144
119
152
58
67
55
168
139
92
132
127
92
137
56
37
105
80
58
77
56
139
120
126
56
122
128
92
55
134
144
164
160
146
128
122
110
144
74
67
69
55
92
92
108
103
55
138
105
140
104
105
110
99
125
139
158
123
58
110
136
152
125
132
56
77
126
129
105
131
77
75
67
140
105
56
100
124
138
58
103
55
122
77
95
122
117
112
144
126
149
126
138
110
69
89
132
148
55
138
139
55
178
88
110
95
122
111
55
105
79
139
73
144
131
122
75
169
119
99
55
79
104
56
55
56
67
102
129
114
93
126
104
79
93
152
168
104
129
139
130
122
107
92
152
79
98
123
126
56
158
77
86
68
122
148
136
111
102
92
110
55
117
128
55
74
92
109
146
81
138
127
110
55
56
96
93
56
107
103
105
146
58
147
152
119
122
164
126
126
67
72
83
124
146
58
69
134
97
106
79
104
144
110
68
148
132
128
110
138
111
83
138
152
105
55
168
138
127
106
92
58
55
95
93
67
104
104
104
111
67
169
138
91
56
140
55
123
169
55
84
126
139
67
144
99
105
55
93
134
104
126
169
92
58
122
56
93
74
92
77
99
109
55
69
106
178
86
74
55
158
122
91
84
95
144
110
107
93
92
58
104
55
107
79
137
152
92
67
134
110
178
56
91
120
92
119
73
110
98
100
152
138
92
178
110
86
83
109
86
104
119
56
75
79
78
126
139
122
55
91
79
142
81
110
138
126
105
122
126
58
107
94
126
105
114
118
131
37
55
146
152
88
122
130
69
147
92
37
123
117
105
104
103
178
55
127
92
103
56
110
127
126
93
100
144
108
148
79
37
69
123
121
138
126
67
112
139
64
110
109
169
61
92
136
92
128
88
143
92
122
77
58
134
130
72
105
106
117
105
109
126
55
158
106
55
83
103
97
68
92
55
110
123
104
122
120
114
140
144
93
55
139
79
69
162
122
108
134
124
105
105
109
178
92
126
77
56
92
126
97
135
139
92
127
93
178
109
91
109
110
79
138
111
144
107
95
86
98
129
169
58
126
110
169
180
55
104
163
107
58
79
56
67
134
104
55
69
110
92
55
55
132
58
105
169
94
86
158
110
162
110
132
126
163
138
37
55
144
104
99
91
110
140
92
94
110
138
144
132
107
106
109
77
105
97
135
124
92
140
92
138
178
139
105
92
93
148
104
37
67
92
104
122
69
84
74
92
92
69
73
118
178
93
107
109
67
108
83
126
93
55
92
67
118
144
128
156
102
122
110
122
118
92
113
92
123
106
150
138
114
69
56
110
138
124
97
105
37
98
128
122
92
127
37
105
120
119
98
144
98
89
104
119
87
165
86
129
110
58
55
111
92
58
119
152
105
92
104
165
145
96
140
107
55
67
111
122
122
126
109
94
126
92
55
92
152
77
81
92
101
126
55
132
171
86
110
75
103
55
80
93
67
122
122
124
178
131
178
121
68
122
130
144
97
110
110
126
138
118
126
79
127
122
56
122
92
199
58
79
178
55
58
77
123
77
104
159
119
124
122
122
139
127
152
163
55
109
93
73
108
139
120
162
110
110
75
67
56
111
111
67
178
138
55
138
109
56
144
145
126
156
92
93
91
130
55
69
67
105
92
132
103
134
78
139
97
119
105
126
81
110
104
110
103
114
104
122
126
141
37
165
91
121
131
67
126
131
93
77
107
92
158
67
92
55
89
103
96
55
92
126
143
105
77
93
75
138
127
93
107
91
55
92
138
74
120
109
92
86
58
77
134
112
110
156
92
92
114
37
132
93
67
111
110
103
79
113
110
58
137
101
110
123
86
132
146
110
86
128
69
110
123
110
119
92
105
111
138
91
127
93
67
128
37
144
37
55
139
93
113
107
37
91
165
122
56
171
111
56
87
127
93
109
104
146
61
115
92
105
55
112
79
123
68
181
122
86
127
92
69
119
56
55
93
91
126
86
108
105
146
127
37
167
37
89
138
105
93
37
160
103
92
122
152
119
122
55
93
104
139
145
86
148
89
144
148
99
37
93
139
56
136
104
167
100
68
177
178
94
99
68
119
105
83
105
37
111
124
37
56
104
106
160
55
92
126
126
152
89
152
122
56
105
56
69
139
123
67
106
86
104
138
68
134
55
139
94
148
139
55
119
111
158
126
163
56
56
68
111
134
68
122
55
125
115
140
89
105
126
127
83
75
107
92
67
127
92
149
136
92
122
126
152
138
107
79
134
105
119
69
124
144
79
110
130
114
77
107
55
111
77
136
127
146
91
98
144
56
56
142
105
109
69
146
100
55
110
67
138
105
122
92
109
92
92
169
58
93
126
96
67
120
86
120
112
178
112
152
95
119
122
67
75
139
56
127
132
152
136
98
56
122
122
122
125
105
86
105
74
152
37
123
107
91
79
92
92
110
122
79
144
139
122
126
122
92
137
111
56
110
67
109
122
69
93
61
178
111
92
67
134
168
104
102
138
122
109
56
131
120
114
117
178
56
107
152
152
178
120
91
110
110
127
138
144
56
140
122
86
104
110
146
100
107
158
139
126
131
105
120
131
122
55
110
140
92
128
129
139
58
105
89
119
138
129
110
83
98
58
122
104
127
126
98
146
135
180
127
69
56
160
146
58
55
123
86
58
103
119
98
58
122
83
124
91
131
117
112
107
92
137
55
86
92
128
127
92
169
127
126
148
138
122
105
127
55
57
105
67
58
122
100
178
110
93
76
37
156
126
111
152
110
84
67
104
138
92
56
152
83
160
105
91
152
86
77
78
171
138
55
95
152
140
78
55
67
69
67
102
78
126
104
131
104
92
139
126
138
79
146
67
134
110
93
91
120
146
162
102
110
110
58
75
92
37
126
178
92
119
91
167
67
146
55
86
126
127
110
86
171
126
105
119
105
69
79
93
178
122
104
132
55
91
92
81
146
126
104
67
140
126
138
74
123
144
132
110
55
131
61
138
119
139
160
122
56
122
104
169
92
99
122
37
55
102
103
152
146
139
148
110
123
138
144
92
139
110
77
104
95
119
108
105
110
139
139
109
92
199
140
56
128
98
122
86
127
111
67
120
110
110
92
169
93
92
144
123
91
107
178
123
58
105
138
163
138
148
126
69
92
55
66
126
127
152
148
37
100
100
58
145
146
92
103
122
69
55
139
93
99
122
156
114
99
55
105
146
86
138
58
114
84
138
110
92
117
147
129
122
138
138
199
128
110
118
107
124
98
67
58
104
152
105
67
110
55
117
127
56
69
138
110
104
104
110
101
140
79
67
119
103
67
109
102
102
160
169
123
105
69
110
152
78
169
117
104
69
67
123
139
67
92
146
55
120
55
124
58
146
86
69
99
93
55
110
136
147
139
93
91
138
110
92
178
93
122
109
92
89
105
77
69
178
188
106
122
156
58
55
77
83
127
169
92
126
93
91
55
95
92
74
58
152
56
55
55
119
92
92
134
103
74
104
122
105
171
89
111
105
69
58
127
122
92
138
105
180
109
105
146
169
104
77
148
110
122
126
178
55
73
178
86
126
84
139
93
111
126
138
146
99
111
58
111
128
139
91
69
178
122
67
122
119
122
93
100
138
123
110
93
95
105
132
69
110
86
99
137
104
72
178
126
127
134
89
139
122
93
139
171
56
104
146
147
110
55
112
83
105
104
140
105
92
110
101
136
67
126
93
127
89
93
130
92
105
103
105
37
108
56
122
122
146
112
110
107
105
89
128
86
58
55
92
131
56
69
109
105
92
134
108
91
124
134
92
55
105
134
86
68
91
106
158
74
124
104
95
105
86
105
100
158
92
105
138
77
122
139
111
74
123
77
144
138
55
104
102
104
56
111
144
109
123
58
105
134
152
152
105
110
87
108
74
109
122
67
55
167
111
100
74
111
92
127
99
110
79
138
105
78
68
93
140
58
144
92
105
55
58
139
117
146
86
89
144
67
109
126
164
108
84
119
127
111
92
86
105
138
109
128
102
93
126
95
152
105
146
122
56
138
93
126
55
55
93
69
104
146
171
144
138
139
169
140
105
104
119
99
107
109
124
127
37
109
89
127
58
93
69
69
67
69
122
93
75
162
138
92
122
124
126
123
127
103
98
83
100
75
105
99
178
37
67
144
101
178
37
92
140
126
56
98
111
158
79
109
97
115
111
136
111
84
128
58
128
79
101
146
55
58
104
58
55
100
119
68
92
114
55
93
158
109
139
178
134
105
103
110
88
169
119
138
79
55
163
92
105
79
55
105
128
124
69
101
143
105
107
58
152
127
144
55
103
127
138
139
89
88
139
105
102
126
74
105
67
124
77
104
152
86
69
93
138
110
68
101
69
126
74
105
119
111
148
93
137
89
105
134
56
88
69
93
126
104
122
139
92
109
139
79
114
108
111
69
55
122
152
92
92
126
138
68
126
58
178
105
146
93
105
122
105
91
122
55
134
144
120
77
138
139
127
114
129
140
72
67
119
83
142
139
105
74
58
110
132
74
149
122
146
180
99
122
104
126
58
91
55
74
110
152
73
105
122
139
58
147
98
92
122
105
92
86
124
110
56
110
55
99
83
105
112
101
69
109
158
138
152
91
55
97
75
92
152
67
138
92
87
104
68
56
109
110
55
152
55
105
103
105
55
119
138
104
93
100
97
92
178
147
111
92
105
55
144
67
134
55
55
124
37
92
132
105
118
55
77
112
55
160
105
116
56
112
58
104
58
58
83
178
98
110
56
106
126
110
86
55
126
83
75
107
178
86
105
146
96
110
55
92
110
122
132
123
126
93
93
126
55
136
122
138
169
86
93
92
134
138
146
114
138
188
55
91
86
55
95
37
127
104
55
37
105
91
56
148
122
119
93
92
131
104
138
104
105
55
144
138
125
107
56
67
123
132
131
110
104
55
55
92
109
77
86
139
92
140
105
136
110
122
100
127
104
105
111
58
122
69
92
93
122
132
97
119
55
123
81
171
104
122
99
122
99
138
99
109
67
118
152
110
110
67
122
103
127
148
171
180
144
79
127
138
56
100
55
139
104
126
105
178
146
134
135
146
93
122
56
55
127
105
37
86
37
77
110
142
69
99
140
98
169
128
92
86
122
79
79
122
92
145
118
152
55
138
110
127
126
110
99
89
92
86
139
107
104
130
119
55
110
69
37
69
105
86
55
122
91
108
110
79
122
83
124
74
107
92
136
142
104
68
178
92
111
92
107
91
152
92
105
158
130
138
84
103
110
92
127
92
178
95
107
144
105
171
152
79
110
138
104
93
58
110
148
67
110
135
149
138
99
92
128
110
160
122
105
126
56
69
148
111
169
93
171
69
168
126
56
126
122
80
104
75
127
56
124
104
126
130
139
138
58
127
130
112
93
110
55
92
92
86
127
110
93
93
92
160
124
89
55
86
123
86
37
127
144
107
110
178
111
92
145
105
91
77
146
100
106
151
140
67
68
138
109
73
122
105
67
144
74
128
139
178
138
168
102
126
103
180
122
139
152
67
165
110
58
58
126
56
138
92
171
67
110
139
69
67
169
110
104
127
83
69
110
91
109
56
122
55
109
132
127
84
130
95
128
150
119
152
122
152
163
126
92
58
122
55
77
138
37
138
55
37
114
168
92
92
115
105
110
148
56
55
88
92
56
84
55
128
122
55
101
91
171
102
56
92
122
91
91
55
37
138
111
121
84
138
109
89
105
126
110
92
56
104
92
104
89
120
55
146
127
146
126
95
99
139
75
110
124
88
91
104
105
99
178
55
55
111
104
96
110
171
122
107
86
55
105
99
110
110
144
104
123
86
126
56
126
126
119
139
86
138
122
109
92
67
55
75
103
110
152
107
121
111
101
98
138
126
92
56
145
110
92
92
102
126
79
110
67
122
105
130
139
83
67
144
114
168
69
111
93
138
79
138
55
127
134
96
92
55
110
105
79
96
105
118
107
127
178
58
104
138
138
105
148
104
37
93
77
92
97
123
91
83
163
139
122
75
55
119
105
92
93
56
93
55
165
118
78
79
68
64
56
177
105
103
75
95
126
178
146
55
139
119
142
119
168
129
131
142
138
110
128
178
92
110
92
69
122
58
180
67
74
171
178
104
109
92
69
56
109
92
138
127
146
91
139
105
84
75
105
127
128
139
160
130
69
178
126
100
138
159
105
55
93
89
92
160
132
123
104
74
171
152
105
69
124
74
122
136
109
144
92
107
92
131
178
111
93
79
122
92
127
130
146
89
99
103
144
92
120
56
69
68
104
37
56
114
87
131
105
92
55
146
100
125
132
138
126
55
55
87
92
92
110
128
140
74
56
139
97
148
178
139
92
92
169
127
84
122
93
67
55
74
69
99
79
122
55
128
104
55
110
132
74
91
109
127
104
128
131
103
110
97
144
144
180
101
93
122
55
110
110
138
92
129
137
86
91
168
37
105
92
110
148
104
92
91
140
111
110
123
56
127
97
122
109
74
122
67
140
67
165
88
107
97
122
99
58
123
92
92
152
55
127
93
105
110
122
102
113
88
74
74
105
92
126
93
93
77
74
110
83
163
122
109
124
178
92
92
99
163
37
122
144
105
110
92
92
128
75
37
75
146
67
105
79
99
67
122
122
55
148
102
110
126
106
93
114
126
92
79
92
126
131
122
178
92
105
120
117
65
162
55
104
93
119
91
110
67
86
126
55
105
92
126
92
105
99
77
140
144
146
77
152
123
92
92
122
104
104
127
188
134
103
69
91
139
139
107
122
37
122
55
37
55
58
122
146
180
67
105
37
102
92
91
105
104
128
103
118
122
113
126
37
140
107
135
92
145
127
55
119
169
37
138
75
128
92
92
69
75
93
112
55
119
152
138
79
152
109
110
123
105
135
67
156
138
146
105
152
75
134
105
93
110
124
148
37
126
99
152
108
126
37
132
178
91
146
55
119
94
146
138
58
121
111
127
126
131
92
105
110
110
67
105
152
100
109
138
92
126
148
104
92
141
37
122
134
119
79
126
152
127
112
92
109
91
67
58
86
37
122
56
79
128
100
139
169
140
95
137
146
122
56
98
104
92
93
98
165
67
110
127
139
135
169
125
69
92
134
131
122
110
103
138
171
105
55
132
107
104
69
140
123
37
152
92
83
118
56
162
126
169
111
99
37
110
139
110
110
81
144
58
120
123
136
93
92
122
122
122
68
111
99
132
178
100
122
138
168
163
127
129
67
104
178
58
152
105
118
127
152
93
119
112
110
93
139
68
138
55
160
55
138
104
106
103
162
67
84
67
178
109
144
111
99
112
86
92
86
169
56
80
67
159
92
56
134
79
110
109
128
145
138
178
146
56
92
126
146
114
149
81
92
171
91
55
103
92
55
92
124
178
120
130
146
99
120
92
67
144
97
67
104
135
126
162
55
105
178
56
105
69
83
67
55
152
56
127
37
92
167
56
110
37
178
58
145
109
79
139
142
122
138
106
126
125
149
126
144
120
56
122
83
93
93
167
124
122
83
128
110
81
105
199
138
126
144
171
104
55
110
148
130
150
107
111
74
79
92
110
56
138
138
77
110
128
105
126
92
138
139
126
92
110
162
164
104
105
58
55
140
89
128
138
123
139
140
163
98
91
128
122
86
131
111
139
178
139
139
144
138
138
131
80
164
128
119
92
55
146
97
151
103
110
105
92
171
105
124
128
126
105
100
122
122
132
122
92
75
110
98
83
110
56
119
119
91
127
134
104
188
99
115
160
146
102
122
67
139
122
152
55
144
105
146
92
56
67
168
103
126
164
81
56
79
171
55
79
110
107
101
91
117
139
92
91
126
142
109
103
140
117
139
92
138
148
105
128
106
75
120
93
105
107
69
104
99
180
67
106
78
126
122
149
110
56
122
105
110
92
152
98
122
139
146
159
126
134
114
79
146
105
55
77
93
128
91
146
105
149
139
142
55
164
144
77
126
95
124
103
110
139
128
88
55
37
138
144
110
148
127
110
69
110
105
127
77
110
127
121
180
75
138
107
86
138
139
97
134
61
126
163
171
37
180
55
127
130
55
104
101
104
92
69
160
92
139
110
144
67
93
109
105
139
109
98
76
178
138
122
106
178
160
119
105
79
126
68
84
91
83
123
126
139
86
105
110
114
55
95
79
139
55
98
122
122
121
99
91
158
135
152
126
55
126
102
95
74
149
110
89
103
122
69
69
92
111
138
105
88
93
123
79
56
79
148
37
128
105
127
85
105
67
92
106
126
58
138
55
95
110
56
108
124
123
69
114
58
103
140
114
68
126
131
68
119
55
169
104
136
107
144
67
105
119
145
106
168
104
105
98
120
148
69
104
75
136
103
75
192
85
93
56
105
115
125
128
127
139
56
109
122
107
144
55
131
92
146
180
128
56
86
144
103
93
178
92
37
126
165
160
167
122
67
55
138
77
110
116
92
103
104
144
138
122
144
178
92
110
126
128
77
78
126
55
178
128
107
123
134
91
55
169
68
145
168
146
122
140
92
86
67
91
69
139
67
56
131
105
122
110
110
69
67
92
55
86
123
138
139
138
105
37
158
94
110
139
117
122
144
104
58
152
139
37
92
164
140
74
132
103
81
142
128
105
178
67
55
69
91
110
124
110
145
77
110
55
127
56
152
110
69
37
107
178
67
55
104
126
136
168
93
86
110
58
118
117
105
93
122
110
58
144
92
93
74
112
134
55
127
144
104
105
111
119
105
99
178
99
132
137
130
168
110
126
93
101
109
106
83
104
55
69
75
87
169
152
109
127
56
188
144
125
111
91
165
69
97
163
109
109
83
110
55
122
152
91
77
136
126
98
95
83
37
83
110
125
92
92
55
126
92
74
144
137
104
92
104
92
148
58
95
74
56
180
92
169
105
92
93
86
171
128
86
37
93
101
92
126
119
178
138
119
122
178
128
103
107
119
134
120
146
109
130
164
147
138
130
122
74
58
55
105
178
171
98
130
56
56
163
110
56
67
56
120
77
58
67
146
146
109
199
165
102
110
152
165
138
91
55
139
126
134
107
92
171
99
105
92
100
142
138
110
118
92
105
56
124
138
119
69
140
126
88
110
99
37
134
160
122
109
138
84
127
105
69
118
145
56
92
169
56
55
126
74
55
92
109
139
132
55
124
92
107
110
199
138
122
92
130
110
67
93
162
139
144
37
98
139
37
105
136
120
86
123
146
152
105
93
178
56
58
110
126
179
148
69
110
152
86
122
86
136
93
93
171
75
99
99
171
111
56
89
104
158
74
160
110
104
77
122
178
67
86
105
109
122
146
122
122
122
126
67
178
123
139
77
138
67
99
55
106
126
124
111
146
105
55
162
79
77
152
81
152
69
146
134
69
138
134
138
126
111
163
91
111
58
105
107
69
67
93
37
128
37
86
37
58
55
111
55
105
178
122
92
55
126
110
113
93
67
126
127
171
126
91
93
99
104
92
189
126
92
92
92
56
56
122
89
105
135
138
111
130
92
178
37
92
126
77
79
105
74
92
146
55
119
101
145
146
92
92
122
37
77
138
55
105
144
168
92
37
93
37
114
181
79
158
94
128
148
83
55
126
158
99
84
144
92
144
146
132
138
91
178
171
169
100
105
58
92
58
130
104
56
126
152
138
104
58
93
145
74
152
72
104
122
93
95
152
83
119
163
81
105
146
99
122
126
178
105
55
139
67
142
110
106
126
110
111
144
79
67
105
83
105
119
126
138
111
92
100
110
55
93
112
122
131
56
92
156
144
138
55
104
37
110
103
143
93
93
99
92
93
74
55
103
111
80
103
110
56
75
139
109
86
139
127
123
180
75
139
110
128
126
126
147
93
171
123
127
122
139
126
69
55
130
86
119
128
126
104
101
58
128
110
178
178
126
109
124
91
91
67
79
121
68
55
86
122
117
79
152
123
37
105
130
151
134
87
158
128
178
178
111
144
142
134
86
105
117
56
55
37
37
146
126
55
56
146
106
105
56
55
105
134
107
67
152
158
130
55
130
104
91
97
111
104
55
126
67
109
55
98
105
92
134
126
142
126
164
78
103
67
125
92
91
119
86
56
105
67
55
94
138
169
79
126
142
104
107
126
119
158
92
123
77
78
86
55
69
138
82
80
163
58
97
114
97
83
105
131
105
134
111
110
146
79
148
86
122
110
103
127
79
56
123
55
95
127
110
55
128
110
86
37
119
171
68
37
68
68
106
93
146
129
112
126
168
124
126
168
129
108
126
127
86
138
111
79
74
99
74
92
67
99
37
89
105
105
140
95
93
144
119
75
69
103
103
55
92
58
105
122
58
58
55
126
56
107
80
105
99
98
171
119
144
126
92
69
138
101
104
105
109
115
140
126
148
86
56
58
37
178
56
119
71
93
147
109
199
92
91
110
105
126
138
112
74
136
55
128
122
37
131
56
138
122
122
134
68
92
135
100
97
92
93
75
111
126
55
111
92
37
139
139
165
119
55
124
55
105
93
138
115
134
74
67
67
163
86
122
58
93
188
56
159
136
98
144
56
163
152
144
126
77
122
92
130
148
127
97
105
81
100
69
58
119
142
126
55
37
58
92
74
102
55
138
110
103
79
77
74
152
122
109
117
77
148
99
69
98
122
58
92
67
144
92
125
101
126
128
113
126
126
69
112
100
86
130
110
126
55
124
77
134
178
92
58
99
55
92
74
92
55
123
58
67
55
125
74
134
105
55
105
168
55
171
55
126
67
55
105
91
99
110
134
110
178
92
168
37
103
157
99
58
104
67
92
112
126
134
105
119
110
122
104
178
110
58
77
119
55
105
92
158
169
37
56
105
122
119
152
139
92
141
126
37
74
118
124
104
93
169
55
56
92
92
107
92
55
92
67
105
79
135
93
144
127
141
144
102
111
169
110
97
104
122
37
138
110
55
94
110
122
107
67
105
69
122
69
118
124
55
92
86
93
104
67
106
152
56
122
130
103
122
91
128
89
83
105
103
128
110
127
135
152
108
56
37
138
178
134
79
119
92
91
92
139
144
77
104
140
55
81
152
126
145
110
92
92
81
77
89
122
83
92
79
55
91
124
139
111
67
109
107
123
128
107
55
58
67
131
118
69
105
67
126
86
168
98
126
110
178
93
126
122
86
178
138
93
77
122
178
121
122
56
74
69
104
178
86
88
112
128
178
180
111
92
84
74
105
104
83
55
126
101
127
180
146
146
74
55
139
92
93
171
55
68
79
140
119
67
109
139
103
130
127
92
93
122
55
105
178
77
126
67
89
58
126
169
131
144
122
58
58
77
99
131
55
41
77
126
135
55
79
77
97
67
67
137
148
75
163
92
92
152
98
58
55
141
126
92
109
74
88
130
104
93
56
104
136
104
140
98
124
74
67
104
67
122
169
37
92
126
83
110
138
144
152
103
126
98
74
67
117
104
88
55
74
91
92
83
130
79
67
55
56
92
92
55
67
134
136
92
105
67
105
67
122
103
126
69
110
110
79
56
58
86
55
92
144
167
152
146
97
139
56
69
68
127
58
122
110
122
135
110
102
168
104
102
113
169
118
140
92
92
110
146
100
56
146
55
110
125
92
107
104
93
146
146
122
77
110
138
105
105
104
126
158
128
55
126
67
67
99
128
115
110
119
58
84
136
64
139
124
107
113
110
163
126
103
138
55
107
55
102
72
55
126
110
110
126
123
122
67
92
107
95
119
122
146
104
168
92
124
138
67
178
94
178
111
92
105
55
138
103
122
84
98
56
105
105
86
126
134
123
58
77
132
105
87
79
156
114
129
134
103
114
86
93
92
56
146
164
139
101
110
79
122
122
139
105
122
135
55
122
100
138
74
126
139
68
83
92
93
79
69
156
69
100
139
100
107
67
169
77
152
126
37
69
169
58
67
119
93
114
56
140
93
98
105
169
99
128
55
95
79
108
93
100
55
67
138
178
110
92
138
160
100
100
109
109
74
107
117
140
74
105
67
139
129
110
92
64
110
110
128
178
56
152
104
122
103
86
68
37
55
126
138
93
197
111
107
56
83
92
67
37
55
91
110
122
156
152
178
126
118
67
120
127
138
122
55
178
79
126
55
83
105
140
108
98
98
126
56
67
93
67
97
105
101
171
92
118
37
97
128
138
55
100
92
145
144
105
138
144
37
55
77
110
153
127
146
132
79
67
148
68
147
103
83
104
110
67
110
144
99
99
67
106
110
104
104
199
58
129
109
126
92
111
58
92
67
110
74
58
123
109
146
93
140
162
126
169
104
101
76
95
122
122
104
93
146
55
92
146
68
84
86
123
110
83
128
112
92
68
105
132
55
55
106
104
127
75
92
122
178
96
114
83
37
120
104
55
105
126
140
104
146
140
152
86
144
123
146
152
122
55
164
138
79
93
56
107
139
55
67
105
69
55
37
69
89
178
120
102
178
75
152
140
144
92
169
138
178
139
55
139
152
79
86
55
97
126
158
110
95
120
126
55
149
56
139
92
144
126
138
75
58
92
114
95
162
132
92
104
110
126
104
56
109
105
122
160
67
118
92
138
56
94
122
122
84
92
127
104
37
88
37
105
136
137
144
138
105
164
139
149
109
112
91
128
127
104
119
169
92
69
100
126
55
91
148
139
105
121
67
138
169
72
118
92
67
86
122
130
91
126
102
79
146
123
124
138
138
109
126
126
146
86
152
56
55
89
99
104
138
136
122
129
128
119
149
142
152
178
95
110
122
92
110
127
124
69
55
126
126
107
140
152
104
55
104
92
89
104
74
93
148
75
110
180
134
86
56
37
56
140
138
146
55
132
79
77
89
146
58
67
136
88
110
132
138
139
122
92
56
69
55
126
152
168
107
92
110
56
138
140
188
75
74
109
55
165
127
67
163
122
128
104
169
152
92
122
139
92
111
78
105
105
58
93
110
67
92
169
105
97
114
139
67
92
160
93
67
162
126
124
123
92
92
92
67
104
69
105
112
140
126
77
165
139
91
92
127
109
107
104
139
152
105
64
119
152
56
110
110
122
74
75
75
93
109
126
123
119
163
146
86
119
93
79
93
113
122
152
56
160
144
92
126
91
109
122
97
102
92
124
67
139
104
178
58
92
67
124
139
144
124
88
58
140
146
152
105
178
164
110
103
148
109
80
130
97
144
122
132
37
104
119
130
182
122
128
83
115
105
105
139
83
152
56
37
55
97
56
93
124
105
126
109
37
91
169
158
58
178
127
86
55
124
55
110
178
74
112
123
80
180
117
92
105
67
122
56
95
55
103
127
169
92
168
110
92
119
152
132
104
92
138
127
178
105
122
171
122
127
152
67
110
107
74
55
169
67
122
86
92
105
137
131
81
106
138
104
106
128
67
119
92
69
106
93
111
92
128
171
111
199
69
105
104
93
112
109
91
88
100
138
152
67
145
162
56
137
110
84
69
139
79
93
122
132
126
37
119
138
127
124
109
110
111
67
126
67
104
180
138
119
99
138
37
118
89
105
112
136
122
118
67
55
165
126
103
149
37
67
92
144
67
107
91
55
55
93
67
110
86
109
138
104
122
126
119
138
89
128
67
125
128
98
126
84
130
112
37
96
146
122
86
104
144
79
130
105
139
107
128
105
139
131
110
97
127
105
77
171
83
114
77
122
84
78
119
138
56
122
165
118
122
139
92
130
107
92
127
103
120
139
83
119
178
92
93
93
58
144
67
178
99
58
122
74
55
136
180
87
139
120
86
104
100
103
130
126
69
37
131
152
126
144
110
120
58
118
67
105
69
91
142
55
92
58
156
93
101
107
105
86
92
139
134
92
92
138
58
130
110
105
110
127
122
139
55
126
86
137
110
93
104
138
88
140
75
139
110
169
112
158
56
122
110
111
83
122
127
138
127
126
134
97
128
109
93
164
92
122
128
105
55
92
75
103
55
122
104
178
110
178
68
139
146
92
103
146
110
127
140
110
178
127
99
103
92
123
68
138
123
109
110
152
178
110
118
106
55
125
93
55
131
67
98
79
144
178
67
126
138
138
124
98
86
37
75
100
110
104
109
92
111
138
127
92
127
79
117
69
104
102
110
103
177
77
55
109
55
122
99
37
134
77
110
37
93
130
81
67
111
93
139
55
138
127
126
127
92
105
153
148
37
126
122
83
131
91
158
152
93
127
91
110
129
92
92
178
120
56
146
69
92
75
69
92
109
86
103
99
122
109
104
148
92
130
123
110
74
110
68
144
84
169
152
99
111
55
104
144
92
55
67
109
126
56
91
110
87
152
118
81
128
105
99
95
122
127
126
118
139
122
65
74
56
156
79
110
79
67
140
110
108
92
104
110
126
98
105
118
138
138
97
105
178
68
127
93
111
104
104
93
138
110
78
74
55
103
126
107
122
83
56
92
86
140
105
107
123
103
109
104
111
178
37
138
109
103
95
91
129
37
119
130
112
111
58
37
163
134
138
83
119
126
126
92
135
126
124
122
138
158
105
117
58
92
75
68
56
92
126
101
126
105
109
67
171
139
101
110
163
56
102
84
110
105
128
117
77
110
169
144
92
101
91
180
107
105
110
105
58
112
110
68
105
111
127
127
55
158
92
106
178
55
141
105
92
109
139
93
64
56
138
138
92
128
86
138
142
146
75
106
55
104
37
152
93
92
119
119
67
55
79
104
127
123
144
104
146
56
79
86
110
105
105
140
88
55
55
123
142
56
111
128
104
145
55
92
73
138
136
111
77
148
110
105
151
134
107
122
110
79
79
136
56
55
138
168
128
131
79
75
130
99
67
107
55
126
75
122
169
107
125
118
138
74
86
144
103
77
127
146
92
58
127
97
92
92
86
152
92
105
97
56
111
127
98
69
105
86
92
119
37
67
140
105
197
152
144
55
169
126
55
67
122
122
74
55
138
138
126
108
127
124
110
79
131
145
69
93
126
178
110
93
92
119
139
144
120
126
75
69
77
114
69
92
122
141
55
92
69
106
107
98
83
101
188
126
77
134
91
56
115
122
123
139
99
105
145
169
58
127
122
119
92
86
111
55
110
127
79
110
92
104
140
86
148
147
94
138
67
169
138
146
125
146
126
37
69
98
94
152
147
92
110
103
144
134
122
111
55
111
69
103
105
148
111
109
68
180
93
104
100
123
109
55
79
56
146
86
104
77
140
55
144
107
178
67
111
140
55
110
122
178
123
103
89
92
69
68
92
37
163
92
68
144
93
67
104
67
111
122
145
56
132
125
127
117
104
92
58
105
91
127
122
139
94
132
91
158
122
55
110
106
189
139
145
112
68
105
109
134
122
56
67
99
92
122
86
56
126
58
93
119
99
127
126
103
105
128
110
84
122
98
119
110
97
110
104
100
178
92
134
56
55
86
128
139
105
100
122
122
122
105
167
93
110
105
127
92
104
122
126
112
92
55
37
163
126
141
67
83
75
178
93
55
91
147
134
171
127
77
165
103
137
122
146
171
55
122
110
104
58
103
123
103
110
86
122
115
122
79
92
145
100
110
105
122
111
150
67
92
92
58
110
122
83
55
105
115
104
111
180
127
67
104
115
110
69
122
123
111
132
92
92
55
92
56
109
152
126
152
92
67
86
139
163
79
92
105
144
91
140
55
92
100
100
74
97
120
110
122
58
104
130
55
105
96
97
56
143
119
92
110
127
122
137
75
110
119
58
110
84
126
75
56
105
93
178
74
112
127
165
37
139
115
139
140
75
97
104
152
75
126
65
92
92
67
169
134
69
84
92
115
127
108
111
84
92
111
138
132
171
67
139
162
123
105
67
92
107
134
110
92
57
128
104
163
58
122
126
74
110
117
37
138
169
58
92
119
126
37
97
152
55
103
55
67
139
86
105
91
55
103
37
79
115
104
67
146
110
101
104
58
55
56
97
110
139
114
109
110
93
146
122
92
69
119
128
140
105
109
138
138
119
144
152
152
132
56
178
124
69
95
128
103
103
169
167
69
111
55
79
107
122
124
100
127
55
67
122
126
105
136
111
91
104
139
132
68
128
105
109
105
92
92
55
93
86
126
126
126
123
68
111
126
67
138
126
99
37
144
55
138
77
86
110
56
56
152
139
132
37
127
148
111
104
55
56
112
165
110
164
135
138
108
67
37
104
105
104
111
128
105
137
139
105
130
93
143
58
126
58
122
144
138
74
55
58
180
138
55
67
56
144
106
130
168
110
103
110
142
127
128
67
144
37
119
152
118
110
77
55
107
91
119
91
91
105
109
134
84
105
92
89
142
110
138
126
55
92
56
55
152
119
79
122
55
127
55
158
138
118
92
102
111
126
122
122
68
123
91
122
127
93
178
123
144
92
148
55
91
105
138
126
102
74
132
110
55
93
168
126
110
67
92
138
112
131
152
67
37
126
67
111
112
56
138
122
169
107
107
37
122
56
148
93
58
126
92
138
72
122
105
141
37
92
158
91
69
112
168
122
55
119
100
104
56
92
145
55
122
182
123
86
169
101
138
104
139
126
127
139
122
117
138
56
84
92
55
168
104
105
123
104
83
110
169
139
83
127
144
165
94
55
67
158
55
139
119
140
126
86
105
92
139
105
104
55
55
111
152
86
122
58
104
178
124
110
58
169
146
55
92
92
110
169
178
95
88
138
56
145
98
152
97
103
75
92
126
105
163
37
168
58
104
75
144
75
67
104
99
111
119
98
126
123
73
55
128
93
37
134
92
93
144
128
67
163
105
122
138
92
124
178
72
128
67
91
178
69
178
145
74
118
58
107
122
128
92
84
129
144
102
92
158
104
67
107
139
138
151
58
99
37
152
107
105
97
146
86
129
92
105
146
68
83
92
86
109
104
92
93
163
144
105
97
110
137
178
139
104
178
78
118
86
171
144
119
97
103
58
55
105
119
74
124
110
152
92
37
126
87
126
167
93
99
93
79
169
138
74
112
93
92
104
104
132
87
126
92
119
91
169
107
110
110
92
122
149
119
91
125
77
92
138
139
105
110
37
56
178
84
92
131
72
105
104
105
37
110
178
134
110
91
122
144
110
138
86
93
130
130
55
104
140
67
87
119
105
67
97
75
67
74
134
74
56
104
139
67
92
99
55
104
110
77
101
171
178
110
127
115
67
107
109
165
55
127
100
55
83
110
127
68
154
37
97
111
129
56
128
124
92
115
111
58
93
115
55
75
139
92
126
138
104
127
56
91
126
138
138
122
126
148
107
79
105
92
83
55
107
180
139
56
98
140
55
111
58
128
113
113
56
123
130
100
104
144
93
37
55
67
86
123
110
92
138
55
138
74
107
55
92
123
55
75
58
132
138
110
103
169
111
123
138
56
100
152
126
140
131
148
105
146
83
69
112
77
91
126
110
199
126
56
163
105
126
92
65
119
122
55
119
56
106
91
178
140
81
135
158
86
127
77
37
117
144
79
146
105
74
138
127
79
56
105
119
58
138
92
122
108
178
69
105
126
107
144
84
117
74
67
67
139
121
92
56
79
136
58
92
122
144
55
131
150
122
56
95
92
110
58
102
109
126
169
181
110
104
124
138
122
134
91
68
126
55
56
112
102
118
178
146
128
126
138
104
74
152
171
92
110
69
138
92
146
104
126
120
67
91
67
128
37
128
119
55
199
118
77
77
178
167
138
119
128
58
55
140
105
164
92
68
148
119
37
92
126
92
67
93
105
138
104
112
126
178
141
126
140
104
92
146
69
126
55
126
86
67
105
118
123
104
124
99
110
77
105
122
119
138
103
162
85
131
169
136
69
146
180
119
103
106
139
101
77
92
92
130
110
128
92
111
105
55
55
169
131
145
58
105
138
169
163
118
56
74
103
126
110
169
67
104
96
169
79
127
58
104
55
91
105
93
114
110
105
146
110
110
107
109
122
99
122
144
105
85
146
123
101
138
111
92
139
104
124
55
92
97
102
93
92
67
105
128
101
100
96
126
37
126
92
109
152
92
146
123
86
110
55
74
83
146
55
67
158
105
123
37
178
93
137
110
146
69
84
178
103
107
178
115
92
127
115
138
126
122
88
152
163
69
110
55
56
112
55
131
139
105
122
67
92
105
56
126
127
79
113
94
110
67
55
83
152
55
138
169
127
58
130
96
106
86
97
58
110
55
110
138
101
56
110
93
178
77
55
146
78
83
99
126
178
55
152
110
138
129
105
104
56
179
110
122
110
92
110
131
107
180
104
122
188
134
122
122
100
99
119
37
56
171
84
55
146
37
69
68
105
139
138
37
56
138
37
126
93
79
109
152
126
114
110
92
69
138
145
55
91
55
128
119
128
55
144
67
92
58
128
92
55
67
124
58
139
67
127
78
162
93
128
67
134
178
75
91
84
152
122
78
93
109
104
109
152
92
92
158
138
138
92
138
122
115
169
103
93
105
92
178
56
93
79
128
91
58
107
128
105
128
55
141
138
127
146
126
37
110
105
56
124
58
131
83
125
67
168
110
146
168
138
106
152
148
178
110
122
169
126
101
110
126
92
92
92
58
92
105
123
56
122
67
56
92
111
67
69
98
128
105
108
104
110
99
146
92
67
58
126
110
83
93
110
144
92
97
75
140
77
56
92
74
86
122
55
92
150
131
56
110
127
98
127
123
139
122
93
139
55
117
111
74
81
119
97
131
152
171
127
105
55
37
138
144
132
84
131
112
146
104
162
104
92
103
111
171
110
74
56
93
37
69
152
86
56
91
110
138
105
86
138
77
126
126
56
140
154
92
122
99
109
58
126
67
110
169
126
55
92
134
67
146
93
97
136
127
152
122
135
112
171
126
138
152
88
124
103
169
69
146
86
67
92
105
37
126
69
122
148
55
97
152
131
137
93
124
56
131
145
122
101
37
146
138
163
93
152
79
122
152
75
158
113
114
77
126
67
101
92
55
91
67
123
149
67
152
93
105
92
55
92
139
144
119
126
126
126
134
107
100
122
92
109
135
140
127
121
139
55
146
74
111
104
119
127
110
68
119
139
122
122
91
126
132
134
92
117
75
139
110
105
120
55
69
105
109
150
138
140
58
118
109
84
127
104
92
92
67
110
178
122
55
131
55
122
55
112
56
134
108
55
105
137
122
135
78
128
109
83
105
91
88
131
138
79
110
144
55
92
110
127
68
79
146
72
105
84
37
139
107
102
92
104
92
128
107
92
105
78
139
107
92
151
128
74
58
110
110
146
67
109
146
92
178
92
74
91
81
56
56
119
67
104
41
119
56
106
144
171
117
123
77
140
83
127
92
122
55
92
93
122
110
103
68
93
92
104
104
122
58
92
56
180
136
58
138
123
37
138
55
144
114
144
167
67
97
83
58
144
148
142
137
56
97
128
178
56
92
178
92
162
103
131
127
122
110
56
56
84
77
110
86
139
138
93
67
130
138
126
93
93
152
124
55
105
127
100
119
74
103
139
98
126
128
132
134
152
93
137
92
96
110
125
122
160
124
128
56
122
92
128
139
168
126
112
119
93
67
152
132
126
130
108
55
171
93
89
111
127
105
105
146
55
110
110
138
75
37
74
82
55
102
133
123
83
93
79
112
69
99
55
92
126
140
169
138
105
138
178
127
92
152
148
119
122
67
128
122
104
146
100
138
92
197
74
105
37
146
144
135
139
105
130
105
100
158
55
119
138
123
89
110
122
106
111
68
94
97
126
119
78
97
119
105
101
76
84
141
55
169
111
105
138
84
104
130
37
122
55
107
75
152
58
92
152
127
138
138
37
137
105
169
92
158
117
135
124
69
119
124
58
127
106
92
77
67
69
158
139
101
91
128
94
123
77
92
110
55
69
92
97
92
138
144
68
105
97
99
58
111
55
93
92
119
124
92
140
144
105
56
37
74
112
126
55
78
111
67
122
64
92
168
97
81
69
92
103
156
55
122
178
69
105
105
92
58
105
79
77
79
37
110
79
83
134
119
92
92
69
128
107
127
67
55
126
126
37
56
127
104
152
104
105
167
92
126
132
180
92
74
138
104
130
55
88
165
75
126
130
92
79
55
132
112
128
68
123
139
139
110
81
91
162
37
105
127
67
67
122
104
110
37
92
105
153
178
114
122
87
144
122
109
110
74
178
99
67
139
110
55
79
169
138
122
102
92
178
99
92
163
110
86
110
114
111
143
105
56
83
105
86
69
37
37
67
127
92
140
92
105
152
98
56
56
169
105
120
123
97
132
132
104
111
79
37
79
123
68
80
37
105
37
139
120
58
92
126
110
169
97
144
158
67
162
105
146
122
84
122
104
134
69
104
124
97
94
93
122
128
111
92
118
111
74
105
79
105
67
67
111
123
111
74
41
69
83
139
168
127
92
135
68
56
144
93
126
111
75
110
67
97
111
138
56
101
67
86
67
92
169
83
55
139
138
146
110
144
110
144
84
55
37
122
86
98
92
168
100
91
74
79
74
122
92
86
88
144
135
122
122
95
92
68
104
55
134
126
80
91
105
119
67
104
92
178
93
162
178
79
84
111
140
142
117
55
79
67
55
103
93
69
148
110
58
122
126
138
122
56
132
123
67
92
69
105
93
95
107
119
119
97
112
158
95
122
131
123
93
122
56
56
126
138
56
73
144
152
58
122
107
163
55
107
55
109
84
68
72
100
92
101
123
104
119
103
139
92
132
92
91
104
139
74
102
58
132
182
122
86
75
56
55
162
122
135
122
139
122
126
126
103
99
67
74
136
104
168
107
138
79
115
110
37
111
93
128
74
84
74
142
122
67
110
67
110
117
168
55
122
145
92
124
127
109
143
93
110
139
109
110
110
104
67
140
122
158
98
111
138
110
146
80
139
146
105
58
55
37
58
110
103
104
122
127
110
111
138
74
67
146
122
56
150
128
113
145
74
110
55
74
77
55
110
107
58
92
67
92
110
139
137
146
74
55
151
98
105
69
117
163
107
91
56
122
92
58
55
139
55
130
56
123
148
146
93
92
110
94
74
167
73
112
106
99
105
80
120
105
143
92
123
74
122
152
135
128
88
110
138
137
76
92
79
72
123
104
92
74
152
117
67
129
110
132
110
123
169
69
171
146
126
146
101
104
105
93
120
74
56
120
67
77
56
88
92
152
75
55
37
111
89
99
169
86
92
77
109
55
134
122
75
37
115
139
77
79
69
137
93
69
55
126
92
169
128
150
92
111
91
108
127
117
93
128
55
110
178
123
141
55
103
86
114
105
178
131
109
127
171
111
103
117
141
83
93
147
93
118
68
138
139
104
86
113
180
67
171
95
110
92
105
122
138
107
111
158
87
122
92
123
163
127
74
114
104
101
162
144
119
83
37
103
138
55
152
123
105
127
107
89
56
138
110
128
92
104
56
86
160
75
127
151
124
110
169
83
55
69
93
130
55
68
110
37
119
146
37
149
104
92
97
101
139
178
122
93
97
69
92
103
122
91
105
109
83
92
92
105
110
169
68
130
128
148
123
127
77
74
111
124
67
92
130
122
109
152
180
56
138
79
110
92
77
171
104
86
69
83
91
105
37
92
102
107
55
55
138
37
164
146
67
77
147
74
131
178
37
178
91
119
104
134
169
124
128
178
93
100
139
93
92
93
78
92
128
126
126
168
112
106
58
124
95
141
119
146
119
92
139
37
92
100
139
103
77
93
67
110
146
83
106
86
111
139
103
110
134
134
134
99
178
84
95
124
92
110
127
92
75
128
128
83
37
134
104
140
152
86
67
128
103
105
142
77
74
169
92
110
67
86
122
109
76
69
104
144
110
75
125
55
108
77
37
37
169
160
168
110
67
107
67
58
106
138
131
152
92
122
98
99
124
55
158
122
128
93
91
127
55
103
178
126
92
131
126
144
104
92
138
109
105
144
56
138
79
164
55
112
77
55
105
126
119
106
55
138
164
58
110
124
67
56
178
131
58
75
55
147
140
88
138
112
92
55
93
56
97
128
105
105
128
56
104
152
101
92
77
67
55
105
180
139
137
110
92
178
139
138
67
126
134
105
122
109
152
117
105
84
162
88
111
122
74
124
126
71
126
138
37
116
122
92
127
68
55
93
134
169
126
84
111
115
122
138
92
105
105
121
136
75
138
92
111
148
178
102
37
37
106
109
109
109
138
92
92
122
86
127
92
67
152
128
83
84
138
88
67
111
178
83
126
109
126
92
92
77
132
144
178
108
138
67
104
119
127
122
77
103
92
98
119
84
110
58
56
79
136
132
93
110
128
122
145
105
126
110
95
104
69
115
163
93
91
80
104
106
92
104
67
89
110
131
110
105
86
119
92
92
144
99
84
86
120
109
136
75
130
169
108
105
114
126
165
37
126
139
97
119
138
135
122
124
131
122
178
56
130
104
126
126
105
152
126
111
127
119
107
86
152
55
111
76
110
147
92
77
118
86
92
122
107
75
104
104
147
104
164
86
104
146
37
55
139
164
164
168
119
122
138
99
128
171
148
58
101
56
105
110
138
123
138
87
139
55
151
144
120
110
112
110
178
92
134
164
111
122
56
103
122
83
130
126
125
107
152
99
92
139
56
67
158
138
68
58
134
123
114
140
111
128
69
110
126
122
88
122
142
169
95
144
129
37
92
103
123
144
105
132
138
144
119
110
110
101
138
122
103
81
122
144
110
76
122
92
120
146
171
119
69
111
56
55
122
146
105
92
146
55
110
92
162
169
58
93
110
92
55
146
126
124
144
122
110
91
86
129
67
104
119
56
74
152
99
67
135
125
37
99
56
127
55
127
93
122
76
77
127
138
91
152
107
109
144
81
122
67
128
77
126
158
130
119
55
100
169
83
110
55
92
126
111
110
92
126
105
79
56
122
105
105
138
77
130
134
140
109
188
93
105
104
104
158
122
92
105
88
105
135
146
144
58
67
139
84
110
152
117
92
93
100
106
137
144
103
92
126
92
58
69
120
77
138
128
111
110
126
92
67
92
102
158
110
105
55
146
110
110
126
93
139
144
93
58
128
110
68
95
79
126
152
92
104
127
55
92
177
79
67
178
92
139
127
56
55
69
128
55
145
55
84
124
92
99
93
112
69
105
104
74
152
103
111
138
104
178
67
69
101
126
169
128
122
122
110
37
128
110
139
92
37
138
146
124
140
178
122
55
98
128
130
178
115
111
122
126
149
148
117
178
121
110
93
55
126
115
55
132
128
117
139
77
126
138
128
91
122
103
111
84
69
110
141
117
89
122
55
91
126
140
122
101
99
55
138
127
97
121
97
122
92
67
102
168
73
107
116
69
110
98
55
68
134
112
69
122
109
105
169
92
122
105
144
93
92
171
96
139
56
93
138
92
140
124
67
120
93
69
110
119
74
110
93
114
78
110
122
130
148
56
122
138
93
69
122
146
158
120
105
92
138
105
92
93
58
37
146
105
124
72
55
104
86
67
122
92
136
37
103
168
99
92
178
92
69
99
110
126
55
105
167
130
93
102
139
126
152
69
138
104
122
58
92
146
93
134
92
149
67
98
105
55
102
127
107
122
178
58
122
178
138
122
156
171
199
108
67
126
126
139
93
99
117
127
37
142
37
110
134
132
86
104
110
146
114
131
96
138
107
96
127
128
127
79
58
111
110
127
56
58
134
152
105
139
79
55
55
128
67
122
115
69
37
112
104
144
58
107
89
171
103
111
93
107
131
121
105
55
152
79
92
110
139
127
158
92
92
109
127
152
55
148
67
146
109
138
110
148
77
112
138
107
122
89
168
37
158
128
56
92
128
86
56
104
138
100
105
105
79
158
144
91
84
119
104
106
148
77
91
99
146
146
92
146
74
79
93
141
55
122
55
105
104
68
97
107
99
74
144
127
122
98
91
37
89
77
178
128
104
107
37
144
122
69
92
110
158
127
122
112
110
69
75
55
119
135
122
134
134
122
92
108
119
146
128
110
127
69
81
105
75
92
146
56
144
55
91
37
92
122
127
110
121
109
92
107
92
107
99
89
138
99
68
122
69
127
168
56
131
75
132
134
92
83
108
122
105
169
110
124
160
152
104
67
92
78
67
168
107
56
163
188
67
122
105
105
96
122
109
162
79
129
69
144
91
92
58
91
81
92
123
144
123
111
92
106
67
56
92
158
58
93
139
119
144
134
68
122
95
126
75
110
171
55
122
139
111
67
87
56
160
126
55
67
79
144
92
124
124
110
110
55
56
84
110
126
67
91
126
127
126
99
86
138
127
146
138
126
122
130
126
111
92
146
164
93
134
139
92
105
105
107
122
99
56
79
138
58
92
120
58
105
68
79
55
105
84
86
106
129
126
122
109
94
56
67
92
69
86
144
58
110
111
56
103
110
55
139
95
92
56
95
162
141
58
152
134
100
199
101
146
79
107
110
93
131
134
93
106
99
123
56
109
92
99
81
92
171
144
69
127
144
134
92
104
92
97
77
69
56
83
92
122
99
69
55
92
144
69
163
55
92
134
56
103
169
37
171
92
110
128
138
119
37
84
126
99
104
122
122
92
92
105
98
56
81
138
92
104
128
92
110
114
131
110
86
91
144
79
146
55
74
105
141
122
127
37
108
55
110
122
128
125
92
86
103
104
123
128
64
97
110
122
126
127
162
86
128
86
104
92
104
108
126
178
138
92
126
69
55
67
138
105
67
152
110
163
104
117
67
122
111
122
118
123
75
67
69
126
92
74
131
55
93
98
79
122
55
127
144
58
138
91
105
97
122
92
140
126
122
138
110
142
79
58
93
104
37
110
122
169
122
105
134
37
100
92
171
163
160
122
125
178
132
127
122
140
122
37
120
105
109
138
106
93
111
139
89
93
104
56
67
153
107
55
107
110
99
124
92
109
110
86
138
138
138
148
105
86
56
104
55
178
130
126
147
144
74
146
86
177
67
92
110
55
122
152
105
73
126
68
122
93
127
92
92
124
99
110
58
144
105
88
74
106
106
101
124
140
95
139
146
122
77
144
67
119
88
149
180
134
92
77
105
109
55
109
75
127
128
124
126
131
74
188
105
148
130
86
91
110
92
139
103
77
107
55
123
144
92
92
138
102
37
123
132
134
91
126
131
178
105
86
119
92
74
128
139
92
83
92
138
55
146
107
75
78
93
118
104
79
83
104
122
169
124
119
93
112
138
93
169
138
104
178
146
92
92
107
178
111
108
139
92
128
92
103
123
134
152
148
89
109
79
105
55
99
122
105
110
99
105
169
83
87
95
122
169
93
69
67
128
55
152
104
94
105
55
169
146
86
88
74
110
94
124
131
122
126
119
101
148
118
119
67
86
103
69
76
58
55
126
138
164
98
146
74
79
93
105
123
122
101
139
127
126
123
37
99
109
146
84
56
103
128
109
79
146
69
149
178
67
56
138
56
79
92
106
154
152
79
152
122
109
111
92
105
92
112
93
178
139
146
105
81
91
111
76
69
91
178
144
107
123
55
56
75
139
178
144
146
107
151
104
67
103
110
111
155
92
37
127
86
110
37
55
55
119
79
136
148
122
112
144
103
55
122
69
92
128
128
67
67
111
86
158
99
139
69
111
110
37
93
77
92
138
138
152
138
105
114
134
134
139
122
101
131
56
149
58
58
105
91
122
122
92
37
111
105
69
75
91
127
110
55
93
122
123
55
122
160
123
102
93
76
58
144
55
80
127
105
105
93
138
140
139
101
92
105
152
178
128
97
107
92
58
102
182
55
55
138
163
138
111
105
131
92
107
105
75
77
105
58
58
129
119
110
56
169
146
126
75
37
131
152
144
93
95
79
92
146
127
99
122
92
126
84
128
69
37
126
93
139
139
137
67
122
56
123
55
92
175
152
139
92
56
107
122
97
56
67
128
122
105
105
119
79
126
69
178
122
55
110
126
130
110
67
58
115
58
109
105
100
128
92
55
79
120
92
131
75
129
91
109
118
55
111
75
86
152
127
139
92
126
105
110
101
86
126
91
75
119
134
89
91
105
99
122
69
111
117
110
69
152
55
55
68
126
126
146
121
152
131
119
56
158
93
74
126
144
127
92
138
104
123
152
138
128
127
104
139
93
129
141
67
115
104
67
127
119
92
83
138
146
92
119
139
138
55
111
140
68
68
127
127
110
55
92
92
167
146
94
105
91
55
111
126
110
67
67
168
146
55
55
93
92
113
138
122
132
108
86
74
100
122
112
55
92
127
97
107
169
110
92
92
139
92
178
123
123
92
110
58
98
139
144
122
138
105
92
122
56
74
55
37
55
105
107
103
68
99
56
144
74
138
58
105
139
134
92
74
68
115
93
126
100
111
37
120
123
182
108
86
188
126
126
56
114
79
75
104
138
80
128
87
122
83
111
138
92
67
140
126
171
144
37
119
67
55
169
77
128
122
68
146
105
93
123
152
37
163
55
171
144
123
91
178
67
91
107
67
122
55
67
152
55
119
134
128
107
77
92
75
105
111
136
99
112
112
122
144
56
55
178
109
55
123
138
124
92
169
69
110
114
118
110
56
122
138
93
122
120
139
79
83
144
110
110
77
126
169
55
55
144
91
144
139
106
158
108
152
110
145
138
138
100
107
105
163
128
67
105
169
127
110
100
138
128
68
107
105
127
131
93
74
58
105
178
91
56
93
158
69
89
138
138
105
110
92
118
144
92
110
101
105
130
110
69
110
138
37
122
105
104
130
95
58
99
109
107
122
92
138
111
120
110
106
111
152
138
104
109
178
110
58
105
119
77
105
105
128
92
109
58
91
103
122
55
139
148
55
56
67
110
110
178
123
126
77
126
128
99
105
55
69
107
56
56
117
114
83
105
122
86
89
124
171
139
69
139
72
100
107
55
136
58
93
74
78
92
105
95
165
74
148
92
125
37
112
169
100
56
58
148
124
126
110
178
110
123
131
55
120
103
97
105
178
37
86
164
171
55
101
158
114
78
76
138
89
37
126
112
67
129
110
131
67
138
139
74
120
171
139
111
92
126
136
108
110
138
55
139
95
56
122
56
67
56
149
56
107
136
168
37
148
96
110
138
168
120
92
93
104
101
86
168
138
86
93
110
138
86
55
149
67
140
68
144
131
118
83
138
55
75
179
56
127
91
55
92
124
104
69
132
146
97
95
95
126
92
124
138
67
37
122
181
89
105
92
110
106
152
128
128
106
134
91
122
69
111
105
117
107
110
137
138
97
126
110
105
92
91
99
152
126
107
140
89
58
178
55
55
136
110
126
138
110
129
126
91
84
146
95
117
107
139
106
56
178
114
103
141
92
137
139
92
123
83
106
74
74
113
146
120
92
55
126
37
144
92
105
75
67
110
56
138
131
92
92
167
92
105
110
55
138
122
165
105
58
107
124
148
105
92
142
110
118
92
175
99
107
111
37
131
158
109
148
110
37
135
95
104
89
104
127
119
56
79
58
55
140
69
92
109
122
67
93
110
137
55
111
123
67
115
124
122
169
123
91
110
88
86
140
73
126
110
107
171
86
162
122
134
136
117
86
67
104
74
130
178
92
126
146
58
139
58
126
105
105
67
92
130
55
37
37
128
67
55
37
55
123
126
118
92
122
144
134
144
132
69
67
134
68
171
146
67
139
127
67
152
134
79
111
72
119
138
99
99
111
92
74
137
104
104
144
122
127
56
58
178
162
138
178
55
37
84
138
134
121
111
127
101
139
152
92
110
136
123
102
146
132
79
110
110
37
79
56
140
92
144
58
139
69
55
146
37
105
37
152
87
104
106
120
79
180
111
109
67
137
130
164
75
127
107
119
84
120
136
92
117
123
56
105
178
122
123
123
115
189
105
55
37
93
111
92
92
69
58
58
115
84
127
111
122
119
86
92
111
86
92
58
160
110
97
55
105
110
178
92
56
93
126
37
158
144
140
75
56
122
105
128
144
154
103
103
93
77
55
178
104
55
58
134
168
105
97
134
141
152
69
93
91
93
152
56
99
130
118
138
58
104
111
75
56
134
126
93
122
92
110
55
55
93
92
55
86
169
144
178
61
122
55
114
77
109
132
127
86
75
67
118
110
109
132
74
88
152
55
103
131
92
128
92
128
132
140
131
138
92
84
152
127
105
55
169
37
152
110
115
86
120
122
146
125
92
138
142
105
114
152
55
93
148
122
139
148
169
110
109
110
110
77
139
169
126
67
115
99
146
69
92
163
105
131
138
84
124
100
79
139
97
92
92
122
89
130
93
131
126
111
152
126
127
92
114
55
131
93
137
105
134
110
138
122
77
93
67
92
111
55
130
136
107
142
110
144
92
104
110
110
55
169
79
86
92
152
55
69
37
83
58
98
92
139
171
105
55
123
144
92
68
92
74
110
126
104
55
128
93
98
105
122
134
101
110
58
79
123
122
93
84
110
178
119
104
126
74
138
131
138
77
105
109
122
83
126
122
74
105
67
110
169
77
110
55
178
109
99
92
171
61
144
96
110
92
67
109
84
79
128
146
130
126
75
146
110
105
146
122
77
131
163
92
77
77
127
158
92
103
110
69
122
110
146
105
146
144
92
105
112
163
86
156
91
144
111
81
152
178
139
140
138
67
123
58
126
56
56
122
55
92
178
146
92
126
135
107
108
74
56
142
93
110
89
178
138
130
106
101
74
138
67
92
169
199
189
119
122
122
122
55
92
144
124
56
77
142
109
162
110
104
127
100
92
110
69
99
126
159
115
110
123
127
93
105
132
112
138
142
110
77
146
86
105
122
56
127
92
55
122
126
114
128
55
140
73
100
178
55
69
123
55
122
126
127
126
55
79
106
122
86
37
88
74
67
139
127
56
93
93
126
104
105
92
79
93
123
55
126
84
138
124
138
136
138
56
158
58
124
93
75
178
104
92
104
88
178
92
122
83
164
101
105
102
84
141
55
152
67
100
118
75
122
126
109
123
77
126
127
110
92
110
56
79
55
110
78
75
167
117
67
126
104
152
123
79
139
171
75
126
127
93
122
105
92
101
105
69
56
68
126
104
110
135
146
92
122
77
98
92
127
67
126
134
127
55
92
92
105
84
117
138
122
67
114
79
104
79
56
169
93
141
125
131
122
163
122
178
138
119
127
77
126
86
168
146
83
86
67
128
111
58
115
126
84
93
55
79
79
136
122
75
118
132
165
92
139
148
146
126
120
93
147
67
126
69
168
122
131
69
126
169
138
99
109
109
109
160
112
104
98
67
92
104
80
86
83
148
91
107
105
128
58
118
67
105
67
92
132
148
131
178
144
107
92
124
83
92
55
107
55
115
37
127
134
139
97
103
110
140
122
67
68
122
56
98
178
98
92
152
139
99
81
109
105
111
67
163
92
105
92
114
123
117
97
144
144
122
67
37
56
55
92
101
130
83
138
158
68
92
138
110
55
99
56
115
91
163
139
128
144
92
127
129
134
69
56
178
138
37
37
122
100
126
146
109
107
128
92
171
74
58
92
106
126
138
93
111
56
169
92
84
123
55
127
180
110
96
126
122
152
122
119
178
105
89
122
168
91
74
104
79
92
74
167
138
109
55
92
89
116
74
56
152
74
107
55
138
169
83
110
160
111
109
110
55
148
110
129
119
178
92
132
138
55
141
122
127
55
78
95
58
55
95
37
126
92
104
56
95
178
79
136
100
55
140
55
148
78
110
92
160
37
110
123
58
68
163
99
79
148
123
122
111
169
74
84
136
93
105
124
122
93
136
91
110
139
68
126
132
134
69
92
144
163
67
138
119
92
105
128
55
80
127
37
79
132
122
92
56
68
131
74
122
75
147
93
138
105
118
92
55
126
68
74
178
93
104
92
138
91
67
168
93
67
162
110
79
171
138
122
139
152
140
86
126
132
69
92
67
138
124
37
37
92
99
130
131
56
94
144
69
79
84
86
141
104
107
139
77
117
107
56
127
104
77
108
171
112
126
93
104
55
75
122
169
92
128
138
104
92
178
122
178
178
106
68
86
107
123
79
120
112
110
56
148
142
67
138
37
126
132
122
92
123
115
55
110
69
111
127
143
114
111
126
79
122
104
79
93
56
160
92
105
104
117
67
122
136
144
158
103
81
107
105
84
89
92
79
165
95
92
136
169
132
171
104
69
79
122
67
137
92
105
126
83
127
67
67
101
58
122
138
100
192
140
75
92
139
92
74
55
168
56
178
93
146
110
69
114
140
178
83
106
110
139
146
119
99
144
120
139
127
75
104
104
126
55
105
134
92
105
108
178
138
105
105
120
178
106
37
122
125
127
110
103
104
171
104
56
126
107
114
117
105
111
128
178
104
67
97
99
110
104
110
124
93
74
138
58
67
178
122
129
122
37
56
92
92
104
138
103
100
67
99
105
105
163
106
142
144
134
146
77
111
131
146
139
122
55
152
152
93
69
189
138
178
114
101
93
146
110
138
92
55
103
104
69
109
152
69
109
110
99
55
86
126
146
110
128
131
134
56
93
180
110
178
99
138
122
106
112
122
124
160
67
110
178
69
74
126
126
79
105
99
104
55
140
55
149
123
110
86
67
107
138
76
138
178
114
149
114
122
55
126
92
144
55
37
139
56
124
105
127
68
110
106
139
122
144
93
67
127
126
139
110
119
102
92
107
55
104
126
75
114
91
79
93
58
131
131
114
123
124
105
137
105
58
119
178
87
81
178
77
67
110
96
75
119
138
86
92
152
55
55
98
100
105
67
56
127
122
67
110
74
61
138
86
127
122
55
126
107
127
105
124
99
105
79
78
109
105
110
114
55
109
162
92
58
126
58
144
55
134
92
110
124
146
58
103
110
84
144
110
92
171
110
105
158
107
100
56
119
140
156
162
103
106
126
58
75
79
130
92
56
103
163
117
126
126
132
55
79
105
77
69
100
178
110
127
77
131
92
110
168
105
79
104
104
114
127
178
119
140
152
110
89
112
81
169
92
138
126
110
92
55
130
138
67
86
110
110
110
112
119
160
138
123
86
93
138
112
114
171
58
132
145
79
67
123
129
136
37
128
79
56
122
99
105
110
58
58
123
105
67
127
91
111
92
122
37
105
118
122
55
79
92
109
126
125
81
137
92
126
126
93
123
92
56
152
98
93
130
92
77
130
138
142
144
110
144
84
112
126
107
111
107
77
105
68
160
104
138
169
134
67
163
58
110
119
107
55
58
126
105
110
97
58
126
93
92
55
56
92
138
110
105
178
149
140
110
79
126
123
103
69
86
126
56
105
104
67
69
126
152
92
110
79
134
145
152
67
91
144
58
105
110
109
69
109
178
95
56
139
138
146
144
99
134
79
67
105
126
126
109
93
104
119
103
168
122
69
140
86
116
140
119
146
123
136
141
105
88
146
99
79
56
144
178
119
37
119
67
135
58
37
56
104
105
99
92
67
110
117
138
114
92
126
144
88
147
138
92
76
92
122
169
105
105
163
178
178
134
67
126
122
37
57
86
126
158
37
139
110
160
56
89
128
92
112
55
138
126
145
110
122
56
122
178
123
119
56
136
146
163
138
146
139
107
67
169
99
56
95
126
58
111
152
69
105
55
109
128
178
138
111
86
79
101
137
92
105
138
123
91
180
117
104
139
99
92
123
126
138
77
37
104
92
178
138
121
67
86
138
56
111
127
92
104
128
138
110
110
91
56
75
104
106
56
168
109
146
129
138
164
92
74
128
109
88
56
126
138
104
83
55
55
134
37
122
126
146
55
93
112
106
152
123
147
152
114
137
122
72
128
86
144
122
146
114
77
92
87
86
37
93
110
148
102
58
152
55
169
128
37
120
55
144
93
131
69
105
138
67
171
109
37
98
169
119
146
104
58
37
92
93
84
139
138
126
138
109
128
109
56
104
110
92
122
55
139
188
128
37
77
126
67
126
112
68
127
67
56
126
104
110
128
86
122
83
146
169
122
122
92
92
106
124
104
55
178
107
169
138
55
77
105
92
124
109
104
142
126
92
110
92
107
122
55
77
132
117
75
123
128
92
37
110
137
107
67
104
122
115
86
55
110
75
105
105
169
169
79
91
126
114
98
55
104
92
75
105
171
110
110
105
79
92
104
97
104
86
140
106
100
68
55
92
126
163
69
105
55
89
142
37
144
75
144
92
105
93
128
67
68
68
67
56
134
122
92
105
127
111
158
99
111
146
105
92
79
127
152
126
138
105
101
56
55
77
122
110
55
122
92
110
111
126
138
93
122
122
131
128
74
77
67
100
178
148
79
67
131
128
55
86
122
56
119
126
74
79
55
110
126
89
126
89
104
111
144
67
55
169
105
74
55
69
97
93
37
92
138
137
138
168
110
110
168
105
139
56
86
105
123
134
122
69
134
37
178
72
88
110
149
104
93
122
109
122
160
122
138
137
134
138
138
55
139
112
145
94
178
126
92
163
91
110
77
107
75
93
110
128
69
119
169
140
139
77
67
55
110
55
146
138
84
103
117
120
178
178
136
139
139
169
55
109
158
75
58
75
81
56
122
138
92
127
112
171
122
122
92
142
37
69
55
144
79
135
167
139
111
55
99
69
112
128
149
109
67
83
56
67
114
96
138
107
105
93
111
86
58
92
126
146
102
92
126
144
122
109
122
149
69
93
86
107
146
110
103
123
55
89
37
58
144
92
105
140
37
111
126
167
109
103
104
127
74
93
138
152
80
93
107
92
114
105
109
107
104
148
92
182
75
77
122
81
132
122
80
199
122
86
189
128
128
55
37
56
178
127
58
181
160
118
146
73
92
92
126
87
92
86
105
127
146
92
67
56
105
112
138
86
68
58
67
169
105
169
75
102
139
93
126
122
86
84
69
117
110
69
83
124
110
134
99
148
138
109
146
86
125
123
37
140
148
129
139
111
92
92
67
138
56
105
122
180
139
118
110
55
86
77
139
127
98
104
41
178
122
128
127
122
100
127
122
89
134
55
110
127
178
55
119
78
55
120
104
99
105
140
163
112
126
146
86
92
37
101
112
105
122
122
75
138
92
167
145
67
80
79
105
67
163
126
68
104
165
126
67
74
37
122
142
128
148
168
93
100
98
80
81
138
105
105
58
123
84
123
122
126
149
139
100
144
138
132
97
138
139
127
67
55
56
55
77
75
122
37
110
128
138
56
111
56
111
139
58
74
79
126
106
67
67
55
67
122
120
103
55
86
58
138
37
110
68
119
104
93
110
113
117
67
79
110
114
123
148
93
55
55
105
110
127
118
132
93
55
81
55
144
58
128
138
109
113
134
93
138
126
109
93
135
37
139
37
139
138
126
126
58
85
91
56
37
110
67
111
92
107
56
125
67
126
153
178
126
102
79
140
37
74
55
126
100
105
108
105
56
171
122
152
117
124
95
123
55
104
109
55
67
126
91
56
134
163
67
123
55
55
124
56
74
171
146
139
122
138
93
86
110
110
55
148
105
78
178
92
69
68
122
92
37
74
122
55
56
123
85
110
80
119
77
138
55
128
92
126
126
140
100
110
109
128
111
55
93
93
56
92
138
126
123
106
123
124
92
67
78
128
122
111
68
126
69
139
67
92
92
112
109
127
101
64
146
140
105
67
140
92
55
104
123
105
86
105
56
68
58
93
144
111
105
104
91
95
86
126
105
56
67
144
55
92
138
122
171
55
126
92
111
99
120
92
72
138
104
130
110
83
127
128
101
98
163
55
37
126
104
92
122
126
126
93
114
105
130
160
99
92
122
132
104
107
92
169
79
67
122
138
123
124
55
104
128
67
91
126
112
144
77
55
92
56
92
146
122
105
74
120
55
92
178
56
74
144
56
111
138
112
127
126
111
92
126
146
110
94
152
123
104
91
127
56
105
98
151
123
111
134
92
55
69
86
111
104
67
182
140
126
91
178
148
55
67
130
122
67
83
180
37
103
142
37
92
86
132
104
122
105
126
152
67
55
146
126
106
125
171
79
152
178
92
132
180
140
128
79
127
178
56
55
140
140
99
56
37
114
55
139
67
89
139
67
69
93
92
178
122
92
103
126
86
119
69
37
122
134
109
78
139
91
109
92
136
37
139
127
77
139
89
146
163
103
79
58
55
106
110
93
125
74
123
169
100
103
55
140
55
104
110
122
141
56
92
178
91
107
107
105
92
146
67
55
119
138
122
92
92
178
140
169
123
55
67
110
152
138
146
152
67
68
122
104
67
58
130
105
55
148
122
122
130
123
152
110
119
112
120
158
58
140
107
109
110
119
99
79
144
104
67
68
122
104
104
164
122
92
169
136
55
122
104
145
74
131
75
100
55
119
37
148
104
92
180
86
55
138
95
128
122
55
58
123
83
124
55
180
37
127
127
104
146
93
122
147
67
111
145
140
180
56
58
127
149
75
58
131
124
127
58
169
122
111
107
83
37
140
122
110
114
144
144
102
110
92
91
171
107
93
56
178
122
69
58
139
118
67
104
131
75
109
96
110
144
55
141
77
128
92
93
125
69
144
105
55
122
74
164
67
77
104
92
126
109
67
88
105
144
105
144
93
37
92
139
86
149
148
55
128
126
122
110
138
126
122
104
75
127
103
37
92
92
130
139
55
168
92
138
77
169
122
67
55
92
74
92
152
124
124
138
93
37
127
103
127
138
92
74
178
67
77
111
55
122
93
128
69
68
122
124
67
92
37
79
107
122
77
105
123
68
93
69
171
55
74
105
105
160
68
139
92
178
122
92
91
56
67
72
98
77
37
98
92
117
69
83
79
122
105
105
99
120
58
105
144
135
100
100
110
148
126
92
165
104
92
169
92
110
128
92
105
127
79
112
122
139
167
138
119
127
55
140
104
107
79
110
91
92
122
92
74
152
110
68
137
93
98
128
105
140
95
69
118
93
95
69
97
124
123
107
55
106
145
67
169
88
56
124
126
178
92
127
125
55
105
109
110
98
158
92
67
37
165
132
103
109
56
106
199
128
105
56
122
74
56
127
74
91
91
81
124
168
74
92
56
110
146
138
104
105
92
56
67
67
89
104
56
134
79
148
126
139
92
89
92
107
98
178
122
134
99
126
121
83
55
141
69
140
104
69
138
110
105
123
110
69
99
55
178
92
111
129
55
111
58
92
67
122
69
124
126
67
124
129
105
119
126
92
111
92
103
125
115
103
56
67
58
109
180
146
111
130
138
104
139
110
84
93
151
130
74
105
148
92
68
129
138
55
74
37
67
69
128
79
92
95
112
143
127
135
112
138
110
69
74
144
57
117
103
93
37
104
37
114
97
137
110
55
93
92
55
104
148
67
111
128
37
55
169
55
148
67
138
128
109
104
138
67
110
110
92
74
109
55
55
74
138
128
199
138
75
110
180
139
86
92
56
105
104
56
93
126
140
178
122
102
123
92
104
146
110
93
111
163
55
110
140
126
122
87
122
99
140
119
131
127
138
92
171
92
134
146
115
79
167
69
123
126
122
128
110
55
139
56
138
77
111
126
81
55
79
89
75
126
163
75
178
92
126
168
55
178
92
124
67
152
164
109
84
104
138
134
103
126
79
111
148
75
107
138
92
78
77
138
162
144
92
144
92
144
110
138
119
134
131
67
114
126
104
75
124
164
104
126
91
167
152
120
148
126
93
110
86
67
146
67
130
125
93
147
105
122
120
114
120
135
93
69
169
92
110
104
104
55
56
56
55
121
131
148
55
92
56
74
122
104
111
92
160
178
107
67
69
158
128
89
123
105
149
91
146
79
55
178
127
178
69
77
110
105
149
122
122
146
110
77
67
145
109
131
67
105
119
104
67
105
37
110
58
92
69
58
127
103
37
126
92
169
56
127
123
167
122
146
93
129
160
123
105
67
126
126
100
58
138
104
114
178
152
171
144
90
139
55
146
110
103
55
122
92
115
91
169
92
107
91
77
99
160
105
105
92
104
139
99
92
97
180
92
86
105
120
162
127
104
122
92
138
92
105
97
122
58
163
37
92
79
55
142
103
103
58
134
126
82
134
127
95
78
122
58
126
67
126
104
127
111
148
122
67
126
92
103
37
67
77
139
67
74
163
127
136
163
122
138
136
131
93
55
91
101
107
89
55
107
77
101
126
169
138
110
102
144
111
108
122
126
107
98
75
123
93
103
144
139
126
123
104
92
160
93
152
75
55
55
55
138
138
58
107
103
139
119
94
77
55
55
131
110
92
127
112
126
56
134
110
58
137
98
79
105
58
134
110
109
92
123
126
142
139
110
167
104
37
93
56
180
146
146
138
126
110
142
105
105
138
106
105
92
122
37
110
79
145
139
136
74
126
128
138
58
92
37
171
126
152
37
56
107
79
104
77
127
146
144
101
145
83
138
92
92
147
105
37
105
139
92
110
55
110
152
105
128
56
104
86
102
122
105
146
92
93
91
86
131
105
67
127
55
41
118
178
178
67
37
144
140
37
122
138
97
120
104
56
55
148
123
146
164
122
122
134
109
105
95
104
169
93
122
138
139
158
178
89
58
67
105
67
37
92
122
67
134
128
178
112
92
126
105
55
134
105
99
75
111
134
127
37
122
140
58
88
122
138
126
107
139
146
55
99
106
92
106
92
140
79
56
152
138
109
93
55
84
110
125
122
192
92
110
139
142
81
131
109
93
152
178
104
110
146
126
92
127
117
163
128
110
74
138
107
104
103
98
111
58
122
86
55
79
126
103
91
139
122
136
126
123
104
100
110
84
92
86
55
152
128
105
132
56
80
104
110
124
111
192
109
93
104
56
93
178
55
67
119
55
127
123
79
119
122
111
107
178
144
126
120
112
123
122
168
152
99
139
55
55
110
123
127
105
58
56
110
79
111
131
110
127
122
74
128
37
114
122
158
114
169
110
122
55
124
165
56
104
134
79
146
140
55
139
69
127
56
164
127
117
158
145
56
69
55
92
119
92
152
101
123
109
119
132
92
55
119
168
110
104
77
58
91
92
107
139
111
94
139
75
144
58
110
92
37
126
110
152
119
121
104
55
110
81
69
97
138
126
86
128
100
56
122
100
92
138
139
93
92
123
109
122
152
122
139
128
104
92
156
110
122
178
118
67
139
68
77
122
83
79
67
126
112
110
123
169
84
104
93
110
117
122
84
178
37
93
122
111
67
68
134
128
109
67
139
92
103
88
75
152
86
126
116
55
110
91
144
92
140
188
132
123
169
93
74
102
107
106
93
88
146
69
97
92
139
132
86
77
122
138
37
138
122
117
77
92
158
57
56
58
95
123
162
107
105
122
67
69
68
64
110
93
146
105
86
92
58
79
171
58
169
148
94
93
124
83
126
116
117
99
92
138
135
93
122
148
122
128
67
126
81
105
123
91
98
84
148
169
118
77
107
141
139
148
140
75
73
78
92
145
139
110
105
104
84
144
139
56
86
139
69
132
99
105
130
92
127
92
110
105
107
105
124
126
138
92
158
67
110
37
103
115
136
119
67
132
77
122
55
126
126
123
180
77
117
121
92
67
139
92
132
92
132
55
122
67
127
67
178
128
122
86
92
146
102
126
79
110
130
56
109
79
67
77
105
93
92
139
158
122
144
67
123
127
86
123
138
111
144
98
86
127
88
145
128
91
77
92
55
104
67
103
77
75
95
99
160
123
103
56
112
120
81
105
119
126
110
105
127
178
124
93
91
78
138
139
37
178
69
140
123
111
92
126
167
138
178
104
109
72
86
74
105
106
92
122
67
93
86
138
77
110
84
84
178
105
67
93
92
55
112
64
69
156
55
136
124
55
123
89
55
179
100
122
58
69
158
79
146
92
91
105
127
55
122
134
64
55
86
180
69
105
92
110
109
108
37
55
101
114
37
75
139
104
111
144
128
105
139
164
128
146
92
139
127
118
123
169
114
134
93
144
178
163
123
92
108
142
152
92
131
67
112
98
91
55
105
93
178
93
189
67
92
167
160
92
127
169
138
102
114
55
75
67
122
110
86
178
138
79
84
130
128
139
123
86
146
156
104
117
107
180
160
92
75
129
105
122
164
93
111
92
56
122
55
37
93
119
105
132
126
152
124
83
127
55
55
119
134
144
98
123
127
93
96
122
114
105
91
169
92
122
169
130
144
105
80
92
86
130
168
122
105
104
56
92
55
140
105
119
86
152
122
79
100
93
92
95
135
67
56
131
163
77
119
92
100
83
140
105
104
103
122
67
126
144
37
92
105
58
122
105
104
107
68
92
114
122
58
55
110
112
127
122
123
126
124
83
156
126
95
74
110
83
111
115
119
97
86
91
92
122
167
106
105
58
163
122
92
171
139
138
171
180
86
107
144
149
126
55
129
127
126
79
126
56
178
55
92
67
37
103
75
163
105
37
178
180
67
126
91
97
55
75
129
55
105
126
105
79
93
144
105
92
152
91
58
158
99
86
75
94
67
105
123
136
74
158
134
93
105
92
127
98
139
109
91
37
93
99
92
99
56
97
112
75
134
58
104
68
93
105
56
89
126
111
138
110
138
119
138
92
122
93
69
92
105
84
91
107
55
123
105
37
138
37
91
130
106
92
92
92
128
55
92
107
69
110
105
152
95
138
100
135
160
126
138
110
55
126
110
122
87
126
69
92
129
87
77
86
74
67
119
108
127
93
122
93
92
88
93
67
68
99
55
140
158
83
58
56
55
126
90
122
122
128
138
67
112
122
126
56
122
144
86
180
92
120
37
104
67
105
142
67
58
127
122
103
144
69
67
126
77
116
122
122
134
138
107
115
134
163
56
178
123
105
69
69
122
108
84
128
86
123
178
86
103
56
131
98
123
55
84
122
37
109
55
158
100
122
119
111
92
91
93
110
92
110
55
101
110
87
140
105
109
132
128
158
107
136
131
55
126
131
140
178
152
122
138
68
126
119
106
55
140
69
92
138
104
97
132
99
67
169
74
104
144
118
138
104
85
138
122
67
123
104
139
77
136
122
119
98
104
178
86
139
93
111
111
104
101
139
126
56
67
92
130
110
122
127
86
122
110
106
112
128
37
92
130
103
86
56
79
112
112
134
91
93
104
67
122
111
148
148
77
105
92
124
56
92
178
75
37
93
151
56
137
113
180
139
115
69
121
86
110
110
137
146
178
129
126
104
77
107
98
126
138
92
110
110
122
104
119
89
92
136
102
146
56
134
83
77
168
138
126
56
110
178
122
137
144
89
132
69
107
123
55
110
92
112
189
134
99
101
169
138
87
92
97
92
93
122
178
144
119
92
100
199
77
138
91
146
110
127
114
92
92
69
105
148
122
55
110
110
139
77
105
188
152
146
105
67
178
124
56
112
103
138
58
97
74
105
111
91
107
123
110
94
126
78
122
55
136
91
103
111
94
93
93
146
114
109
100
111
110
75
92
74
99
107
77
138
104
77
107
56
119
158
126
37
77
105
103
158
146
150
105
110
88
129
67
104
58
55
122
124
121
98
110
169
88
178
103
139
102
58
103
93
126
138
110
110
130
144
88
75
128
37
86
67
105
92
126
99
93
104
93
56
103
112
152
58
86
122
119
95
110
56
135
114
131
103
126
74
56
104
106
140
138
138
105
91
139
37
93
92
55
79
105
92
119
152
122
77
126
56
92
95
138
139
104
104
105
138
124
120
77
86
169
83
110
81
137
99
178
163
58
110
119
92
79
138
156
128
110
93
128
118
105
104
105
140
93
69
126
74
128
171
37
140
126
96
86
110
86
132
37
127
138
144
79
58
86
122
105
92
94
88
120
140
178
92
55
55
92
100
68
144
171
178
126
146
55
152
37
99
101
79
98
55
105
92
77
105
83
104
119
138
67
55
178
122
119
103
122
92
93
130
131
127
105
55
139
93
110
91
119
91
122
92
104
110
92
75
101
165
165
146
128
105
110
92
138
111
74
69
74
37
123
144
148
69
122
108
56
68
55
138
138
109
99
111
91
92
106
97
81
93
100
126
110
93
122
37
37
128
105
105
105
169
107
128
134
56
128
58
126
158
146
127
92
103
56
99
74
116
162
178
126
136
75
107
107
130
92
58
122
79
169
160
84
92
56
139
146
110
115
140
107
148
124
134
119
69
99
178
121
140
169
104
74
79
126
83
92
57
58
180
107
126
178
67
55
102
131
37
126
56
118
92
93
92
58
58
139
75
58
67
91
97
129
124
138
105
126
137
55
168
152
96
92
168
122
67
112
79
86
95
37
169
120
101
75
109
152
120
122
111
105
55
55
144
144
92
92
55
122
168
121
126
124
68
55
134
93
92
97
122
67
99
84
92
95
146
128
56
139
86
139
105
152
139
93
92
99
105
136
92
169
110
37
110
92
97
127
92
55
105
69
169
88
92
126
107
152
99
55
178
100
146
92
79
104
139
91
67
134
111
105
137
69
74
148
91
105
152
83
199
105
103
122
118
110
127
55
126
67
110
88
146
58
140
86
55
69
108
178
83
93
108
101
91
178
126
122
104
139
122
104
87
139
138
122
139
77
105
67
77
100
127
110
111
92
119
119
105
104
92
110
95
55
144
104
124
126
152
91
97
152
139
55
110
122
110
110
92
89
140
55
56
75
93
55
109
56
92
103
152
101
75
138
93
146
79
126
58
138
137
67
96
139
69
94
105
105
68
104
132
137
128
111
55
139
79
84
93
136
98
56
37
144
169
153
89
138
132
110
101
146
88
104
152
178
86
128
58
56
165
99
164
110
138
138
139
81
126
152
75
138
103
112
112
55
75
126
81
138
92
135
119
146
136
128
110
56
93
122
119
123
92
58
92
160
105
110
128
100
86
126
105
92
93
92
83
126
92
126
74
93
97
111
96
69
138
99
126
103
158
113
162
92
55
93
77
128
55
74
128
104
167
178
56
67
138
147
110
69
119
76
146
122
122
97
100
138
58
123
68
104
93
79
100
138
102
131
126
178
110
110
127
199
92
92
92
144
126
126
127
130
89
67
122
120
114
114
79
130
108
98
56
124
67
140
109
105
84
96
127
123
152
104
55
37
107
93
67
183
69
37
122
77
118
132
105
132
104
144
92
110
110
134
56
92
56
55
58
109
91
110
55
122
103
104
139
92
84
138
130
110
92
86
99
56
127
197
111
79
104
119
139
104
152
55
117
128
152
103
110
104
77
81
83
114
122
114
128
105
69
37
79
83
112
122
110
110
152
86
105
105
178
144
104
109
89
146
124
112
122
122
158
67
37
126
79
110
120
104
110
55
127
56
55
122
130
64
132
67
162
126
87
146
178
122
69
158
126
127
138
105
91
79
67
126
104
122
110
126
152
122
122
65
140
144
114
86
144
104
56
178
127
144
105
95
123
149
146
109
92
134
84
123
100
146
110
105
139
72
55
92
67
127
68
111
128
55
122
101
120
92
37
136
178
56
69
119
109
92
67
126
94
92
58
113
99
37
152
105
126
178
68
140
79
103
107
178
77
139
119
86
68
122
93
92
58
92
169
178
127
122
152
68
92
122
110
110
55
131
93
145
91
93
117
138
136
56
146
102
139
138
67
91
180
78
37
58
55
92
95
138
79
138
144
37
140
86
163
93
55
124
145
123
126
58
134
78
123
69
140
111
93
123
151
146
124
79
92
100
68
127
56
138
144
109
56
55
105
97
91
37
55
125
106
68
171
149
74
168
144
79
178
92
92
126
122
75
105
92
55
104
138
130
91
105
110
104
83
152
95
79
105
119
75
127
37
79
122
92
92
126
105
178
69
104
177
127
110
37
134
92
122
132
122
92
148
99
105
108
92
126
127
104
138
132
55
168
86
105
69
37
93
107
95
72
75
126
122
92
144
58
105
140
101
122
127
92
56
123
128
67
91
110
79
199
110
152
92
138
126
138
86
92
138
80
67
117
93
93
178
110
102
37
123
83
138
131
104
92
55
92
67
158
99
122
138
58
122
110
135
140
92
67
146
146
37
165
84
128
123
134
128
105
119
91
56
77
127
188
67
110
127
55
58
104
104
92
122
167
146
55
104
94
86
93
83
122
93
55
56
96
92
100
67
103
55
110
67
91
103
79
123
81
129
144
37
55
110
134
98
92
140
124
136
92
104
92
56
108
56
92
105
93
92
130
141
74
110
92
104
93
131
67
55
146
127
138
74
103
128
121
93
110
102
67
67
106
144
121
107
73
58
79
112
92
100
84
56
139
146
122
119
139
92
138
127
123
122
56
131
178
110
118
92
105
181
105
104
128
95
104
58
122
128
110
156
138
105
110
67
109
106
122
93
92
93
130
124
126
92
58
104
105
98
56
77
110
119
110
119
139
168
127
37
101
93
109
126
110
178
148
55
139
124
123
140
126
144
130
56
128
111
105
178
148
118
148
146
104
109
126
118
55
86
74
91
183
167
126
92
146
104
119
128
143
146
105
130
92
128
58
69
95
135
117
93
58
69
142
37
74
55
110
146
83
104
111
67
127
127
95
111
89
127
89
82
55
180
126
138
122
104
109
55
103
137
37
37
128
79
92
141
122
105
110
67
37
134
123
121
55
139
104
67
140
92
99
124
105
56
67
92
55
55
138
138
146
77
111
119
91
128
178
84
137
104
141
98
119
124
140
177
122
112
105
118
55
112
67
93
92
158
99
112
100
93
79
92
68
92
119
119
105
110
111
105
107
92
92
67
126
84
140
128
95
134
110
115
79
67
74
107
55
111
92
136
98
74
56
126
140
73
119
122
107
58
84
89
105
123
128
108
124
81
171
128
126
104
139
56
77
55
152
144
105
139
126
122
110
117
92
92
109
150
138
92
130
79
93
56
127
105
83
87
92
58
58
37
104
109
120
55
126
92
138
67
122
74
67
55
104
67
83
138
108
107
79
146
144
126
58
67
115
146
58
122
67
110
111
178
127
89
134
152
96
67
69
158
56
127
168
142
110
93
58
67
122
56
93
91
122
110
56
37
98
124
168
56
91
55
148
139
105
77
126
110
55
131
137
126
158
81
111
93
56
68
56
86
165
102
140
122
109
79
68
99
169
56
126
58
144
92
92
126
138
92
128
77
58
122
92
92
126
119
86
105
118
67
55
99
105
79
134
37
154
97
127
92
134
105
127
127
37
138
99
178
148
138
108
126
93
93
122
122
58
104
100
37
37
139
131
68
69
67
55
119
105
119
138
126
105
144
107
104
126
92
127
114
139
122
139
93
146
89
67
92
37
126
140
37
126
128
112
144
127
37
105
104
106
67
122
55
102
86
105
67
171
55
93
55
139
119
126
75
83
111
56
139
126
111
142
86
67
120
91
188
122
69
110
93
86
58
109
55
110
68
152
126
120
122
168
139
147
105
122
55
88
87
139
126
126
67
122
75
145
152
122
126
110
126
68
139
110
169
105
74
110
69
138
137
178
126
192
130
77
144
92
56
110
58
104
128
74
91
103
55
37
74
104
117
55
91
37
163
87
122
98
117
94
109
94
99
79
138
128
147
123
112
134
126
171
122
109
131
119
37
138
122
134
104
102
112
67
75
74
111
56
122
131
37
92
67
79
55
162
97
67
122
127
92
104
97
122
83
92
95
126
69
127
125
67
107
127
37
138
55
132
152
86
102
55
79
137
92
163
126
80
91
98
134
91
126
124
37
105
92
55
146
103
55
178
92
105
140
84
103
136
152
37
101
130
136
93
127
138
91
138
110
92
134
112
100
37
122
79
83
126
77
67
102
111
56
67
132
95
58
92
146
127
124
79
55
56
79
119
145
56
109
105
83
168
58
180
56
110
135
79
158
67
57
123
139
122
76
58
127
104
110
55
74
105
178
122
114
138
110
86
144
104
79
104
105
98
55
75
92
101
126
139
79
171
105
140
91
123
152
104
106
103
126
149
97
92
137
109
56
104
109
124
105
103
122
104
67
127
55
152
134
134
67
138
122
67
122
106
110
87
111
37
79
111
92
146
124
91
122
105
148
132
37
101
138
98
171
92
92
171
105
123
138
171
55
134
93
163
130
127
86
144
138
111
138
55
105
68
75
132
138
86
130
138
122
84
89
128
74
105
134
104
93
105
126
110
109
91
162
67
131
139
138
139
106
91
128
58
110
128
126
37
122
130
84
84
84
37
138
150
92
56
75
119
138
152
103
105
122
55
115
55
55
139
67
146
92
93
122
120
86
138
56
92
58
64
134
126
122
93
110
109
69
110
93
132
114
152
126
134
107
152
78
67
92
92
107
67
99
56
55
97
138
105
58
122
37
169
55
75
92
110
122
89
92
110
127
146
105
74
58
86
103
37
67
92
169
84
139
127
140
138
67
168
105
110
55
139
152
92
126
110
112
127
122
102
92
79
105
126
110
146
58
119
92
91
109
75
93
110
92
129
104
138
136
122
122
134
37
144
134
163
169
111
37
136
92
138
96
138
56
127
120
122
138
112
93
127
67
93
111
69
152
92
134
163
93
56
83
110
118
141
86
144
92
131
167
122
95
93
138
98
117
121
135
92
126
127
111
84
124
122
127
163
144
92
134
91
79
95
92
126
93
58
55
56
139
149
158
169
79
120
126
105
132
137
67
81
55
158
68
77
140
122
126
111
58
158
92
99
104
138
105
97
139
98
126
107
127
122
138
138
93
68
107
92
169
122
69
89
105
156
79
128
93
118
112
144
104
111
37
138
122
67
92
105
37
56
105
86
110
120
122
152
107
86
104
178
58
144
122
105
55
55
67
109
55
122
87
69
144
126
117
138
104
107
164
67
136
140
92
115
110
89
178
110
109
99
101
55
58
122
111
77
74
136
109
91
163
104
58
89
69
92
126
107
37
110
92
126
146
156
75
178
103
123
122
105
56
138
93
67
68
118
92
97
104
142
146
106
77
37
138
93
148
55
97
126
122
55
178
123
91
56
168
122
55
95
92
37
107
92
75
144
129
37
109
122
37
119
110
138
67
99
94
110
122
99
91
69
122
110
127
127
150
144
120
107
104
122
123
105
95
56
122
104
55
140
105
124
152
122
87
128
77
55
127
144
165
100
106
122
134
67
97
78
122
79
130
100
79
138
109
109
83
67
138
109
145
119
110
92
69
126
126
55
180
117
105
123
119
119
169
94
123
92
134
75
37
126
120
178
146
98
122
80
67
123
169
91
126
37
108
126
118
102
139
150
111
58
93
97
103
122
92
37
158
122
111
115
111
122
92
103
137
111
126
55
69
146
92
84
37
55
132
67
67
89
134
74
122
131
92
122
100
140
115
55
119
128
123
178
55
180
111
100
56
109
127
164
145
55
75
122
145
126
140
93
93
93
107
106
79
111
110
104
110
140
126
146
135
92
91
104
144
58
145
92
152
67
120
91
104
178
55
105
37
55
74
139
128
86
136
122
67
105
67
131
55
136
131
140
79
169
122
55
127
139
139
110
139
55
138
86
138
119
152
103
77
109
146
92
74
105
93
109
144
128
140
178
86
105
79
55
56
139
140
74
87
56
131
138
58
86
160
124
138
122
122
110
56
109
122
178
120
86
56
68
69
93
105
114
160
92
126
119
139
86
109
122
67
92
128
77
67
109
100
92
122
92
91
178
139
144
92
78
99
156
126
103
135
139
178
144
56
92
138
122
138
75
73
91
163
104
55
128
55
122
55
111
105
67
92
117
138
163
37
89
56
119
87
92
37
58
67
178
118
136
152
102
92
75
134
67
104
163
104
180
144
120
37
169
107
86
101
55
68
110
92
122
92
139
75
178
110
99
160
84
163
92
126
138
139
104
146
171
146
103
135
77
122
144
55
122
138
68
126
122
122
55
67
131
94
127
126
126
140
103
126
99
93
84
126
55
144
117
37
180
55
93
152
152
67
138
109
124
92
103
132
146
139
69
55
68
58
111
129
110
37
109
92
127
95
77
55
92
58
110
128
104
146
164
110
104
104
105
109
110
104
77
132
128
92
99
122
178
86
106
100
93
91
110
110
79
108
67
99
86
83
110
67
116
110
91
178
55
105
118
134
92
91
126
168
171
144
105
127
122
127
128
104
139
124
126
178
37
105
128
122
109
56
110
138
167
110
77
171
93
64
74
58
141
122
102
37
58
67
123
72
92
128
93
98
104
121
127
102
124
83
111
126
93
67
93
90
138
130
56
128
67
58
67
140
86
117
108
102
110
105
140
171
104
152
105
122
122
122
129
122
104
105
114
110
67
126
112
92
56
55
110
130
127
104
144
122
126
139
110
81
79
103
98
105
146
79
139
105
79
124
171
136
104
134
102
109
132
122
109
37
110
97
126
37
58
118
99
138
162
89
139
102
169
58
139
113
56
92
119
55
98
122
55
128
164
114
55
126
128
104
110
127
67
110
92
144
178
129
75
148
99
138
92
126
74
138
92
122
110
126
152
92
83
110
178
79
37
92
169
111
138
122
104
79
55
117
105
92
180
101
125
86
169
127
124
55
169
136
126
83
126
75
103
107
110
77
93
138
136
126
105
165
112
122
139
92
92
132
127
103
67
169
144
93
139
130
146
103
138
144
92
91
67
92
138
152
119
110
105
107
138
122
97
37
86
152
74
104
55
148
56
111
138
37
122
107
140
92
37
107
55
140
139
141
58
111
188
127
131
92
108
150
84
56
75
92
105
94
37
69
199
111
119
86
178
97
147
55
93
165
105
37
92
122
112
86
152
167
100
104
37
114
139
138
92
86
123
119
126
126
123
126
169
169
110
57
138
105
110
75
91
106
124
169
67
55
117
37
137
119
110
83
92
58
55
69
122
103
110
139
97
123
74
93
58
77
122
67
110
127
177
105
67
100
105
92
123
178
75
123
122
93
104
75
104
99
41
122
146
127
105
131
122
105
75
104
103
109
75
111
118
138
126
56
87
79
69
95
92
89
93
108
110
105
140
68
58
130
92
104
93
74
127
91
139
69
162
178
111
146
56
92
139
123
152
55
88
139
110
103
138
55
178
58
169
122
58
139
171
80
119
105
37
110
64
110
92
110
122
114
104
74
127
109
125
104
111
146
69
122
80
92
92
83
105
110
122
87
112
67
108
146
138
75
105
98
55
123
104
123
138
77
110
92
99
129
55
145
181
163
152
107
109
127
178
75
138
138
126
134
67
55
100
103
86
56
122
68
169
127
148
95
92
92
107
105
113
101
92
138
140
105
58
126
56
105
138
55
140
128
133
92
126
139
37
56
93
91
107
126
67
105
107
91
71
139
37
91
58
178
138
139
138
138
91
74
77
86
110
105
138
67
123
114
117
162
126
152
110
130
92
107
93
122
138
56
114
171
111
56
119
56
134
69
67
122
103
55
92
112
192
125
110
37
92
72
119
79
108
91
148
110
37
93
140
67
146
86
139
127
124
93
79
107
124
141
77
115
119
136
56
169
134
110
144
136
55
102
119
56
139
109
69
93
119
139
67
128
79
92
107
68
139
110
107
122
106
139
105
126
139
178
139
97
92
84
92
135
168
56
84
92
109
67
124
67
126
92
103
169
106
119
92
149
107
122
146
152
123
120
56
104
138
122
146
110
118
122
127
126
138
74
146
120
171
93
55
109
93
93
134
88
178
123
55
104
126
144
126
89
92
168
138
55
92
171
160
158
180
180
146
131
140
179
122
124
164
104
130
104
92
92
67
195
74
55
55
130
92
149
127
146
158
99
104
102
137
106
107
91
77
128
56
180
105
95
152
56
118
108
107
119
55
110
105
139
126
92
140
140
127
103
136
86
109
55
109
55
105
56
134
92
106
67
142
180
127
105
110
134
105
101
148
37
111
132
67
127
137
86
130
56
118
56
171
128
55
86
158
98
99
105
171
92
69
118
126
104
105
92
152
126
122
55
162
129
58
92
97
139
146
67
139
92
120
139
108
126
67
117
105
123
55
148
79
95
79
104
94
130
91
56
134
69
99
112
97
104
128
127
67
152
67
126
72
111
77
144
74
137
109
138
103
105
109
55
107
92
140
103
104
58
92
109
126
105
72
55
104
56
79
67
163
126
93
105
109
87
104
37
169
122
86
120
152
127
55
107
182
105
122
158
92
178
92
129
92
134
126
37
91
145
122
104
83
124
109
77
138
81
105
118
56
149
94
127
138
128
105
92
132
55
55
37
171
56
128
74
124
126
117
103
124
144
92
122
105
86
55
110
86
165
122
56
122
58
107
55
55
58
67
152
169
93
103
123
158
67
92
120
122
77
134
104
110
103
127
77
169
119
122
74
91
146
136
93
72
37
168
110
122
111
109
74
169
139
106
69
114
67
115
119
83
128
134
93
58
152
126
110
55
93
146
93
122
118
119
55
115
92
102
146
169
130
178
89
138
110
127
105
131
163
67
75
130
55
67
171
92
55
139
148
128
107
110
126
104
127
122
92
69
91
122
122
67
121
99
152
138
122
74
120
128
110
58
74
138
148
109
123
69
131
138
55
138
122
123
136
126
55
122
137
119
55
121
74
128
94
139
107
110
152
92
104
128
69
111
101
92
93
139
93
122
55
79
93
99
129
119
110
110
104
55
111
93
110
139
58
110
56
67
67
122
67
92
97
107
55
55
93
77
37
178
109
138
130
127
126
56
123
110
105
37
55
37
104
74
110
67
99
79
56
69
180
56
55
110
105
105
148
86
122
138
110
84
92
55
55
122
67
55
110
128
56
105
112
110
124
68
122
103
93
139
137
180
108
119
93
110
126
110
122
128
56
92
178
74
104
73
128
92
67
84
123
126
67
75
75
86
93
105
140
140
123
128
134
105
67
67
108
138
84
171
55
67
67
152
81
55
92
67
67
56
119
69
69
69
148
92
55
100
135
178
124
180
109
98
168
99
126
126
119
92
84
75
92
104
67
134
55
125
99
105
55
125
105
76
165
132
109
124
122
55
99
162
92
92
139
139
56
178
75
146
67
126
107
122
165
144
104
122
126
79
92
67
117
91
103
105
91
37
93
118
122
99
122
67
93
105
122
119
122
83
158
75
180
79
83
93
67
56
138
58
139
69
127
138
110
91
105
126
105
158
109
121
164
119
56
69
105
109
119
152
110
122
128
56
91
110
127
89
37
56
102
107
101
58
130
134
37
110
92
134
37
56
86
122
97
91
92
37
138
122
100
92
104
126
104
92
127
100
103
58
93
97
135
169
112
67
106
56
144
122
139
104
165
104
105
68
77
167
55
92
139
112
146
105
105
86
126
123
93
140
67
93
93
149
122
114
92
111
121
93
91
93
55
55
122
105
92
124
137
99
75
56
93
139
37
75
92
86
110
151
134
110
171
169
122
55
139
139
122
134
68
102
92
105
122
58
144
136
55
104
119
115
69
92
109
55
115
83
55
104
108
117
144
115
67
126
78
105
110
158
99
127
126
91
117
123
96
56
67
105
122
131
92
128
107
152
144
93
105
67
138
145
99
120
110
91
55
138
139
124
93
67
92
126
98
110
103
108
120
86
58
92
93
77
109
92
126
55
123
95
101
165
67
55
58
93
171
138
105
124
67
105
92
92
160
132
122
139
92
110
37
56
112
56
182
140
91
144
108
55
99
130
130
126
109
148
138
122
138
84
110
139
98
132
109
126
37
37
55
55
105
118
105
105
111
107
56
134
128
58
86
163
104
146
138
55
37
138
92
105
122
152
105
122
67
146
88
109
92
169
103
134
178
128
120
98
169
55
83
75
138
74
153
77
86
67
116
91
162
126
89
91
152
104
126
178
110
134
168
98
188
58
84
92
93
178
150
79
139
91
128
124
144
128
139
99
122
75
131
121
152
67
124
104
55
37
126
144
92
67
136
67
107
103
127
79
104
77
79
105
156
140
167
158
126
151
69
58
131
113
92
152
122
93
127
93
178
67
134
91
92
104
126
119
138
134
148
56
138
127
102
119
77
69
158
92
105
122
144
75
128
110
105
69
139
138
98
110
104
149
80
169
128
110
146
131
138
146
138
126
67
67
118
139
67
84
128
136
105
87
37
108
105
105
86
104
122
101
83
180
139
138
55
138
81
126
139
122
104
111
80
102
95
55
92
144
110
104
162
123
37
103
104
144
128
56
138
178
122
122
169
92
119
67
122
55
119
92
139
126
126
104
123
56
86
99
74
126
98
75
138
37
105
123
127
152
138
92
134
119
122
58
86
130
105
138
156
127
169
141
117
105
124
134
124
77
168
119
109
145
93
152
105
67
92
134
104
67
104
67
69
99
37
138
146
93
105
74
55
144
110
83
152
104
110
144
77
139
120
111
126
77
89
152
77
37
126
144
126
126
138
134
110
134
56
138
138
100
79
152
122
152
110
67
91
92
122
92
77
135
126
55
86
112
138
92
92
104
80
158
99
130
138
55
114
56
171
101
126
110
74
91
162
92
74
122
110
144
79
92
123
111
139
92
58
126
131
131
92
92
132
127
129
151
92
126
105
86
112
75
67
119
122
110
93
88
104
130
126
104
86
120
105
130
108
92
136
58
58
55
37
97
139
92
128
95
92
122
134
56
149
58
110
119
169
163
86
119
126
56
98
86
69
158
55
61
92
69
144
122
140
122
102
107
138
126
110
93
55
138
134
69
75
98
168
105
69
58
138
79
102
56
56
92
125
56
92
119
122
91
131
138
109
92
140
153
138
122
104
111
58
141
73
148
144
102
67
144
67
126
67
119
178
131
120
69
139
79
104
180
67
100
104
126
37
69
148
140
74
92
127
92
58
92
97
55
122
180
180
103
122
121
79
139
162
122
124
122
126
83
122
118
111
111
97
117
78
139
151
169
126
136
169
152
146
112
88
105
138
119
58
122
109
92
152
114
105
58
91
69
106
107
55
89
122
77
37
126
56
146
77
152
86
103
92
122
138
93
113
109
101
56
138
92
178
112
178
140
37
110
110
178
67
92
123
122
105
138
122
37
144
152
37
117
37
136
199
92
139
132
138
37
69
110
126
178
100
93
126
104
126
126
79
55
119
105
119
67
122
199
140
127
110
111
171
126
55
128
138
138
107
171
132
69
81
144
55
91
108
56
69
104
55
117
146
91
152
89
37
92
105
105
105
139
58
148
103
140
69
138
178
92
119
127
126
110
126
105
37
77
128
165
91
105
99
107
91
105
168
107
92
130
99
105
105
55
146
105
128
58
178
131
95
101
139
135
69
124
199
117
93
58
139
110
55
139
92
99
91
86
55
92
104
95
55
56
126
56
114
107
37
67
37
130
152
91
105
126
160
92
93
86
67
110
112
138
124
109
136
55
122
124
122
110
56
168
138
69
69
160
146
112
98
58
126
126
171
92
104
111
110
55
107
126
105
110
103
139
122
147
105
94
84
102
110
105
134
105
169
130
55
124
93
124
134
105
124
146
97
110
128
104
94
56
110
111
122
147
122
144
128
88
93
105
104
121
101
83
107
111
104
123
136
119
146
128
128
91
101
55
56
109
104
104
93
138
86
67
75
56
127
110
92
110
167
37
126
79
122
122
84
127
169
104
117
126
91
134
69
93
110
139
55
111
127
99
64
92
93
110
139
58
136
99
156
167
171
117
126
74
75
92
111
110
134
118
91
124
104
37
109
105
110
106
58
138
104
86
75
106
128
107
169
144
112
180
144
138
86
79
107
37
178
86
126
114
144
92
91
130
56
112
93
146
58
126
132
129
103
92
139
55
123
92
119
138
130
58
55
156
123
122
146
92
122
171
120
144
146
95
126
126
110
140
92
152
138
140
55
109
122
156
146
87
56
127
93
101
93
129
167
79
72
58
126
93
91
134
125
93
130
55
83
55
126
128
121
83
122
144
105
126
99
137
107
130
93
69
56
110
110
140
69
69
55
122
92
93
67
114
139
67
79
139
137
144
93
67
148
152
37
99
140
68
58
122
105
92
152
55
58
152
130
37
55
77
99
91
92
99
109
134
126
88
55
98
92
93
37
58
79
163
93
117
108
105
87
83
124
67
126
96
84
104
104
146
92
93
97
171
78
105
117
92
93
99
131
92
55
119
67
92
144
128
115
188
37
96
126
110
94
105
97
148
92
109
92
139
97
122
122
163
120
89
86
122
109
37
92
146
126
138
106
91
124
104
99
123
132
134
58
107
37
126
107
122
112
144
55
178
83
122
158
93
58
138
122
92
123
138
79
119
83
180
128
134
145
140
135
139
37
128
79
92
58
92
93
67
100
152
122
120
55
75
81
68
108
146
80
92
148
152
74
123
55
56
118
138
110
168
94
146
171
58
168
56
122
92
67
75
138
144
55
67
76
136
131
56
122
128
119
134
92
89
171
92
95
56
104
93
160
124
126
110
128
105
86
139
144
105
108
96
121
86
103
37
67
152
105
105
37
55
118
139
89
149
37
94
104
139
124
142
55
138
134
111
110
69
139
110
55
69
152
93
128
98
58
102
139
197
110
93
131
104
55
139
117
128
93
122
126
138
91
107
118
104
128
180
122
138
79
126
122
58
67
79
180
67
37
55
128
68
122
130
69
110
129
144
146
55
126
131
92
105
103
110
102
104
109
122
58
138
138
110
138
92
92
134
119
83
105
178
97
122
92
127
105
138
92
98
105
78
199
55
126
136
58
91
111
149
115
165
104
75
111
126
88
97
152
110
56
122
105
178
55
104
112
110
123
92
104
132
55
167
128
105
105
160
98
37
144
160
134
169
140
119
122
93
119
101
138
92
178
128
92
146
92
110
105
138
98
92
122
146
122
103
92
92
112
55
55
164
92
112
89
99
169
120
138
67
92
68
178
111
119
162
77
105
55
58
55
92
110
104
105
139
148
105
55
86
92
122
146
58
69
168
132
97
128
139
128
138
108
91
92
67
127
164
92
91
92
145
128
110
110
126
92
110
109
171
144
138
92
138
138
102
138
105
55
178
138
122
83
144
37
55
138
126
123
152
92
79
116
97
112
152
122
83
109
55
139
93
93
137
135
136
79
101
75
123
124
99
120
119
146
77
55
83
123
92
119
122
138
152
138
130
144
93
92
74
55
122
78
158
126
58
109
106
178
55
105
86
145
171
122
126
136
169
97
122
169
139
89
180
97
148
127
109
163
104
58
168
146
37
58
55
89
138
79
37
68
122
127
169
105
104
152
128
58
169
56
100
163
111
146
140
79
103
109
128
99
92
146
100
55
109
122
127
58
103
92
128
67
55
105
92
162
56
139
169
178
109
92
56
128
163
92
84
108
180
55
105
148
140
95
136
103
148
99
55
178
117
104
99
141
106
117
123
138
105
143
68
78
107
100
130
139
103
164
168
56
55
152
107
138
158
122
93
124
58
77
67
131
138
128
86
138
105
98
122
139
122
58
99
128
102
93
178
129
138
126
105
37
118
37
93
107
91
122
162
122
123
55
56
127
122
122
92
110
55
91
92
152
120
171
89
98
120
121
93
105
78
126
107
110
148
123
107
123
98
123
55
125
56
104
97
81
122
127
142
162
105
131
92
134
55
77
106
92
144
146
37
98
110
110
81
56
134
126
122
67
67
91
140
67
110
118
56
102
56
140
132
74
75
180
146
79
104
55
145
84
98
139
86
56
83
105
126
192
152
138
148
152
168
131
97
124
108
74
110
106
74
169
99
37
162
110
112
123
162
55
67
79
92
111
86
180
86
75
67
110
67
134
86
91
122
178
111
56
114
122
104
117
99
148
67
89
67
56
55
105
56
88
93
142
92
138
92
92
127
86
105
93
132
127
117
152
119
55
140
122
105
105
144
169
119
97
67
92
69
123
117
152
107
56
171
134
107
92
92
92
98
104
91
86
123
126
140
113
178
74
134
144
128
91
56
134
106
126
93
55
92
121
105
123
163
56
169
58
101
55
55
110
138
108
105
163
68
120
112
128
148
138
122
139
117
111
138
146
58
139
105
131
75
138
74
126
87
69
148
105
110
56
140
123
120
125
105
104
110
126
104
103
110
104
107
58
110
92
135
109
92
55
104
107
83
104
104
110
110
104
139
123
69
178
99
93
67
67
178
92
92
86
74
99
107
55
138
89
126
56
138
55
55
76
58
180
110
103
91
132
169
55
119
178
111
140
146
55
56
92
127
119
118
109
110
128
67
92
99
139
127
109
154
110
144
119
110
37
104
137
137
100
163
171
93
93
89
86
105
55
104
69
165
110
93
86
138
126
149
139
104
68
132
119
139
137
156
101
88
110
110
86
93
89
91
162
126
37
127
58
110
126
108
100
105
105
131
109
122
69
105
132
91
122
121
104
124
99
92
55
86
92
126
122
107
92
126
74
37
67
162
67
104
99
67
146
37
144
67
96
146
69
67
67
113
180
104
110
110
93
92
110
99
150
55
77
107
152
37
67
115
152
55
114
126
37
56
104
138
107
56
78
56
92
123
120
126
105
132
55
58
98
80
75
55
109
146
86
92
103
178
92
146
111
146
107
139
75
139
107
156
146
110
92
109
126
178
98
104
168
92
103
140
178
118
79
56
130
126
169
55
104
103
37
126
55
56
92
56
103
92
55
109
144
122
131
122
126
37
67
67
146
139
122
130
149
122
152
77
104
97
89
110
178
105
55
131
107
146
135
169
98
112
58
144
168
149
105
67
107
122
92
110
112
148
37
171
58
143
97
92
109
118
111
56
92
69
69
111
92
65
146
55
152
92
101
105
55
152
144
126
99
131
88
139
146
110
69
139
117
67
37
103
126
162
105
102
94
58
92
110
138
126
156
122
89
126
105
55
149
86
110
136
171
97
131
79
163
97
55
97
139
126
105
55
111
124
110
128
58
58
110
55
55
147
93
104
123
120
122
67
110
67
122
92
152
105
132
123
104
67
77
105
137
128
152
122
37
110
110
178
101
105
92
134
140
178
126
148
67
105
152
88
55
84
122
67
149
69
122
122
145
67
119
67
122
126
107
93
167
125
110
91
144
131
106
92
67
105
67
56
110
146
86
92
141
55
55
109
139
67
158
67
122
104
93
109
92
152
144
148
123
56
103
110
110
69
67
104
139
92
92
89
92
95
122
110
55
118
74
162
56
145
109
101
109
141
97
105
55
146
103
58
123
123
134
99
135
92
104
122
77
162
56
165
77
56
138
92
91
92
144
84
139
106
163
92
124
79
144
146
140
112
92
127
86
55
127
126
169
104
126
91
58
106
92
120
75
106
79
123
146
152
128
123
99
106
110
165
92
106
168
171
178
93
97
74
122
169
105
97
140
132
92
163
105
92
86
169
129
55
75
93
55
111
67
92
74
139
55
74
58
171
75
126
109
67
110
110
128
118
132
89
37
139
122
56
122
110
107
180
92
152
144
138
119
117
178
69
111
92
118
178
137
138
37
145
127
103
55
103
110
88
109
122
138
69
142
104
58
124
107
92
136
105
128
104
138
91
75
93
92
165
134
138
110
92
142
67
100
37
119
92
77
92
119
92
152
126
102
127
105
109
93
58
146
124
126
122
122
139
146
37
156
55
124
148
136
55
104
92
110
162
171
163
68
152
164
92
110
92
106
146
69
134
128
119
122
107
171
178
105
67
130
93
110
152
105
37
67
119
88
105
110
102
132
92
192
91
104
126
138
86
92
134
122
97
91
95
58
124
55
75
124
152
100
92
58
138
111
117
77
77
93
139
86
158
162
58
126
37
132
122
139
152
121
105
67
83
171
79
105
93
77
108
105
93
55
86
93
56
105
110
119
91
104
86
178
105
58
134
56
86
105
122
86
96
92
106
126
92
126
105
84
107
169
119
92
123
153
55
92
92
138
138
122
77
139
111
178
165
114
110
108
142
78
126
169
77
139
91
105
94
152
37
129
134
112
102
100
93
146
126
102
148
124
107
109
124
75
109
178
103
56
123
91
86
99
83
67
130
111
119
146
56
168
75
110
86
92
104
104
112
37
178
92
56
92
92
91
136
139
138
139
55
160
106
138
58
95
138
79
120
92
91
122
111
122
144
92
110
91
99
105
67
119
128
168
104
56
93
144
126
92
93
92
139
92
92
99
110
110
104
110
75
56
86
104
56
67
109
101
126
67
134
138
146
58
117
92
119
149
110
146
128
122
93
55
55
126
121
130
86
37
115
169
105
104
104
119
144
86
55
68
98
58
83
79
58
77
91
126
119
126
91
110
79
122
122
101
146
75
104
99
105
105
146
111
56
139
139
146
127
127
144
139
67
126
111
92
146
69
134
110
83
100
105
105
101
139
69
37
69
144
89
114
101
138
108
86
92
91
93
56
55
92
93
138
124
126
146
110
58
134
122
110
178
128
122
146
115
111
91
117
131
58
58
67
126
146
139
124
126
67
67
37
138
152
122
55
74
107
79
108
91
126
56
144
86
92
37
108
123
104
146
127
122
56
69
93
171
126
105
180
110
86
128
139
122
109
134
92
124
148
131
136
88
55
107
124
88
67
140
131
139
137
77
91
178
140
111
122
110
105
103
75
93
101
122
55
140
92
140
122
55
68
139
108
122
91
122
181
119
74
119
138
178
139
120
55
149
92
126
91
91
138
110
105
56
110
110
103
146
139
74
79
104
152
110
58
146
55
65
122
123
124
55
122
122
110
152
125
138
86
105
97
135
167
97
164
92
68
105
86
93
55
108
152
75
108
132
37
105
110
141
138
111
132
105
111
178
68
178
109
92
92
110
67
92
127
84
55
168
109
123
92
78
117
93
139
144
79
142
104
110
67
120
114
127
171
138
86
102
110
138
37
111
126
110
93
37
105
126
95
182
98
122
98
75
105
169
102
138
55
105
124
119
92
134
91
105
96
124
138
122
144
55
91
55
92
83
69
105
105
56
110
123
123
55
92
151
136
92
138
107
55
104
84
132
112
128
137
37
107
105
110
79
107
86
108
58
107
56
81
55
148
146
138
92
131
67
122
93
138
77
110
77
83
148
86
69
101
56
111
92
144
123
138
115
56
86
158
79
67
122
77
92
93
119
79
126
115
93
138
178
58
69
55
105
93
119
126
178
117
138
124
168
67
113
127
137
55
109
81
105
37
37
110
55
122
122
116
92
67
105
122
58
92
107
110
104
148
56
128
104
104
138
79
126
139
138
139
92
130
72
83
105
146
164
93
139
142
91
134
128
102
92
37
127
93
92
110
131
124
132
110
58
168
81
69
128
58
93
68
138
103
92
162
93
139
142
137
68
128
122
136
83
93
112
105
140
105
79
86
126
165
111
55
126
92
122
91
160
114
107
92
126
99
139
128
104
126
92
164
68
123
56
111
93
86
92
91
139
152
58
146
119
86
92
144
192
119
114
163
69
160
105
92
55
92
110
105
37
122
144
97
130
134
108
109
112
75
103
167
126
126
96
91
55
168
93
105
178
92
77
77
74
127
146
92
108
126
152
122
163
127
103
127
91
89
123
146
144
58
56
122
56
92
105
146
123
134
134
139
104
122
110
58
138
158
103
37
93
105
117
55
158
152
144
92
99
132
86
118
55
132
178
138
122
105
110
56
110
37
92
55
122
93
107
123
105
100
134
123
110
105
127
86
55
126
127
98
122
68
124
91
37
180
92
178
110
139
88
113
128
126
101
122
119
93
104
86
122
103
131
169
56
138
110
122
128
83
178
86
169
111
139
146
93
122
93
92
105
99
126
86
67
93
95
55
68
58
67
104
55
93
92
92
61
77
146
109
158
58
37
83
127
178
110
104
55
105
37
104
98
92
138
92
93
84
77
126
139
104
124
124
131
95
152
84
146
139
98
55
111
145
149
138
178
110
83
105
178
169
105
152
101
168
126
37
107
169
144
104
79
92
131
138
122
103
138
91
73
142
109
111
58
104
79
37
99
134
74
103
86
68
109
55
128
55
126
134
97
55
162
110
144
110
55
55
127
130
122
137
91
91
104
105
110
95
56
37
120
81
69
77
55
92
55
127
138
97
137
92
123
110
110
93
169
163
81
138
109
178
68
92
111
67
127
144
56
104
113
101
56
37
91
89
114
101
117
92
144
89
134
139
109
93
77
108
100
140
146
80
92
120
178
99
58
92
92
126
67
144
84
74
110
101
126
138
92
81
86
128
67
92
61
56
152
134
69
148
86
105
92
55
122
107
67
105
122
148
168
122
55
75
123
104
74
89
77
104
126
79
122
92
91
110
114
92
140
169
152
171
104
126
74
128
68
105
67
86
140
78
104
140
110
104
152
91
134
55
139
119
55
98
67
144
163
37
122
142
107
56
144
140
92
105
134
83
67
93
83
124
92
80
152
55
68
58
139
92
105
67
93
104
122
178
85
105
134
145
117
69
158
56
92
74
134
55
37
138
146
92
107
67
110
124
67
139
55
127
92
123
58
58
128
68
110
111
92
113
114
79
76
110
105
80
178
92
135
55
169
178
111
102
87
73
56
93
126
89
140
122
95
105
94
97
67
101
79
104
100
122
103
126
114
130
139
110
158
139
140
74
92
128
93
55
123
126
163
92
104
163
171
128
168
86
102
138
37
109
151
120
92
105
100
127
109
122
89
127
67
91
105
105
103
131
171
144
104
138
111
122
178
67
110
102
138
56
169
158
55
144
128
67
139
139
56
123
144
104
148
152
138
75
143
122
61
111
55
67
67
122
103
178
110
92
101
178
99
78
55
92
144
69
97
105
100
102
55
104
92
122
138
123
37
86
92
91
127
79
110
178
105
92
139
144
55
119
127
67
114
92
152
92
77
105
124
92
124
55
178
93
110
113
126
56
167
79
138
146
138
140
105
74
127
99
124
110
67
92
92
122
148
138
138
105
139
158
93
77
105
88
128
56
37
101
93
67
142
109
134
92
110
93
56
99
55
79
55
140
69
58
178
152
110
126
124
138
74
119
122
91
117
110
55
105
105
56
126
148
127
124
134
126
110
110
128
152
138
56
163
105
78
127
105
110
67
74
86
110
110
104
163
127
93
104
97
119
132
81
139
178
105
110
69
91
122
93
110
122
102
92
67
111
110
99
92
55
104
109
56
132
120
123
103
93
119
117
180
134
152
122
122
122
126
146
93
163
126
122
171
126
92
199
116
109
104
55
142
115
107
110
75
74
110
110
126
74
67
134
139
88
92
93
126
75
146
92
119
104
69
103
105
117
126
119
122
93
67
178
55
69
105
99
93
92
55
122
102
86
75
93
152
67
109
92
75
139
126
110
56
135
152
139
86
127
92
144
92
56
105
55
171
119
93
139
93
105
110
119
115
152
140
55
119
146
56
139
163
138
168
137
55
104
58
144
105
67
103
152
75
68
69
92
123
109
102
134
111
126
119
67
139
129
138
98
92
135
105
67
108
92
120
126
132
126
128
110
138
75
92
83
118
105
67
83
138
75
75
126
106
55
56
55
72
69
68
104
126
104
139
134
122
95
126
104
109
103
139
97
115
178
86
99
92
67
67
92
74
102
73
164
105
127
86
106
178
105
146
106
103
58
55
144
67
92
68
92
126
126
92
110
135
87
126
178
86
171
92
105
162
92
58
124
124
77
92
67
99
165
37
83
124
180
37
126
152
122
83
97
110
92
134
37
117
171
91
105
58
139
56
56
68
107
107
77
139
111
99
103
75
126
178
67
124
55
110
109
69
122
92
128
92
56
92
131
110
171
138
93
112
37
127
178
102
95
134
69
56
86
105
76
138
142
92
127
56
148
93
126
79
126
56
37
110
122
92
122
103
79
122
123
84
136
107
136
56
180
152
55
119
113
132
134
75
92
58
91
104
137
117
122
134
86
119
132
58
138
126
37
110
64
55
69
126
108
119
119
110
79
86
101
92
109
163
108
122
105
115
99
122
79
105
92
83
69
104
97
55
124
67
142
152
122
98
122
104
152
86
130
104
92
67
138
110
58
92
144
67
105
138
122
124
58
118
144
122
122
74
92
109
55
100
178
128
105
97
67
123
91
180
56
105
55
127
92
147
122
152
165
124
75
58
55
123
105
122
104
104
123
55
105
110
144
86
99
124
109
110
55
107
126
110
111
126
79
104
148
77
138
86
89
103
105
92
69
152
75
105
134
120
110
127
100
56
130
92
92
99
91
93
134
97
138
67
122
104
112
110
92
86
110
124
111
168
105
138
92
79
110
158
144
92
139
138
180
99
148
136
75
105
102
92
123
126
58
92
79
98
58
132
92
105
92
58
130
92
130
111
104
107
126
119
97
104
92
119
110
107
123
146
168
171
92
96
105
41
74
138
168
67
122
104
119
117
55
79
162
55
92
55
69
92
118
98
131
126
55
75
146
93
55
132
89
138
138
199
124
55
126
37
140
138
92
122
93
197
146
178
110
108
138
77
128
55
92
126
122
105
55
168
55
78
130
105
177
144
122
119
152
92
86
104
37
93
83
92
122
110
126
178
98
122
99
80
108
67
169
120
177
56
112
178
169
81
107
136
128
93
126
78
105
126
122
169
137
37
126
110
55
95
169
110
37
178
104
68
104
81
111
104
58
163
122
169
67
105
92
122
122
178
107
105
165
74
110
189
152
104
91
69
105
104
114
146
178
126
160
121
115
152
104
105
74
131
127
131
55
169
126
127
111
67
152
55
119
37
67
137
92
111
75
69
128
137
86
37
114
111
140
152
55
105
55
83
107
105
169
110
67
104
92
152
107
67
55
74
160
122
126
102
83
126
140
126
115
79
58
139
178
128
83
67
100
113
163
74
92
74
124
74
110
158
58
97
92
122
110
162
77
83
102
128
55
74
74
58
56
102
67
130
180
67
75
130
56
146
56
55
142
74
111
128
105
104
144
122
92
116
171
93
58
93
92
126
122
55
139
140
127
105
58
104
37
64
92
105
77
122
93
156
56
107
139
37
158
104
105
100
141
104
84
110
158
92
126
55
120
122
111
75
76
138
146
105
126
83
107
126
122
100
122
67
106
152
58
37
89
146
122
130
98
127
110
110
146
138
122
152
117
92
74
131
110
88
91
126
56
126
58
103
105
138
86
138
131
128
126
130
134
104
56
79
67
75
146
78
75
139
88
104
138
114
169
92
138
141
135
93
123
105
129
99
138
104
105
58
178
91
73
135
37
74
92
104
104
165
146
138
58
122
92
55
89
81
139
132
113
104
119
83
152
67
105
122
131
123
37
80
146
92
58
140
99
75
91
163
123
128
79
127
92
92
122
56
152
178
92
105
92
103
95
124
84
99
114
105
139
81
87
126
130
92
91
55
110
55
138
92
55
128
92
122
110
128
79
56
68
61
69
129
139
104
69
127
178
122
55
159
119
100
83
134
79
121
56
165
109
111
138
77
110
55
111
84
156
55
105
92
122
99
126
141
122
145
104
110
144
126
77
167
99
122
79
67
119
105
81
79
104
136
138
126
105
131
136
152
94
99
92
92
125
128
68
68
178
58
93
56
86
127
118
79
58
166
55
152
94
92
112
114
93
97
104
97
140
91
105
139
126
93
75
92
139
72
92
67
113
67
105
98
92
95
93
107
124
125
120
67
105
88
55
98
128
127
58
152
105
92
110
146
58
77
139
171
98
109
130
163
146
119
111
126
136
67
107
104
163
67
92
84
127
140
146
37
104
134
55
93
104
126
102
119
126
74
132
79
56
79
128
139
126
55
107
137
102
121
105
126
101
92
136
178
109
55
152
134
178
144
91
101
92
124
128
55
56
104
144
142
135
92
138
101
122
83
111
69
117
130
111
144
92
99
67
149
114
99
126
122
104
123
78
107
91
122
124
123
92
91
139
169
109
110
110
122
95
139
67
99
69
100
126
55
150
68
77
147
110
110
86
128
99
126
126
58
92
77
122
97
107
68
110
104
55
126
98
67
74
146
67
107
106
169
67
122
146
55
100
119
56
126
137
110
138
69
122
120
177
56
150
139
152
140
95
122
56
97
110
37
86
142
148
55
118
138
67
79
105
138
134
93
111
128
163
123
110
105
122
138
69
126
127
178
110
128
127
69
138
119
110
111
103
152
104
148
122
139
104
118
69
122
92
67
141
138
99
146
93
137
92
122
167
134
92
74
86
144
105
110
178
127
178
124
122
149
178
89
139
139
152
126
58
127
122
55
146
104
101
97
110
98
56
146
134
108
163
152
144
169
111
169
56
104
171
106
171
112
152
86
101
92
123
123
92
92
109
134
178
127
37
110
61
119
67
152
92
171
58
37
92
104
92
146
67
110
122
74
152
86
122
168
79
99
92
92
84
138
127
118
69
55
119
139
55
168
104
123
92
138
68
123
92
127
111
169
58
75
128
178
77
69
117
111
37
86
160
122
178
111
91
86
119
55
110
106
102
167
92
128
105
122
138
140
142
104
178
77
77
122
100
138
107
55
104
101
55
111
105
122
171
92
105
67
83
110
126
67
128
99
178
107
67
120
91
84
55
64
125
111
56
79
126
126
169
134
120
114
110
109
134
93
105
131
126
142
37
119
77
128
105
102
68
95
93
104
79
68
56
126
130
55
92
122
56
127
58
110
104
138
56
79
93
67
163
67
138
122
126
103
140
93
128
75
119
154
126
67
139
110
86
77
105
152
99
92
101
56
55
126
107
171
138
69
178
136
110
55
101
105
105
67
178
134
140
146
128
77
108
148
134
56
74
95
123
77
104
58
107
56
105
77
105
134
138
91
97
122
138
56
105
37
92
58
122
138
104
56
92
146
111
37
86
127
99
79
122
110
107
58
169
105
132
152
93
139
37
128
88
163
91
92
127
55
67
109
138
126
110
102
104
126
92
93
92
67
56
127
138
119
139
171
92
91
128
105
86
92
124
55
178
119
67
134
138
55
144
105
110
81
93
75
104
92
104
55
138
91
55
92
107
110
91
148
127
171
93
74
146
111
55
55
122
104
139
92
132
77
146
119
140
128
110
92
58
105
110
56
94
127
146
97
86
88
86
153
126
125
104
140
67
55
160
74
99
79
37
107
169
144
127
110
138
178
139
101
68
105
92
84
139
83
56
111
126
105
92
67
126
69
164
84
178
122
139
138
67
139
148
92
105
86
127
171
128
83
145
92
124
120
99
139
78
86
114
182
149
102
55
119
138
105
122
178
55
178
79
74
92
122
56
99
92
134
178
92
130
134
160
74
92
87
117
67
55
105
139
107
144
136
132
110
79
86
55
75
146
160
128
141
122
93
138
106
127
139
127
138
168
107
75
74
132
127
86
58
164
67
118
56
139
126
138
106
92
131
92
105
93
83
91
55
37
126
78
56
56
37
67
93
55
55
126
93
79
138
148
113
37
140
118
132
58
131
134
126
126
67
119
93
182
55
134
92
161
67
93
117
114
123
123
109
83
119
58
178
55
92
122
123
121
126
55
55
79
124
105
92
130
139
128
92
140
105
120
104
109
152
92
148
95
164
69
56
134
81
93
138
144
103
83
93
128
148
104
79
122
92
105
119
110
55
122
93
126
77
92
92
37
58
85
141
122
138
144
37
131
122
56
111
56
108
127
107
124
55
105
122
55
126
129
105
92
99
74
152
92
123
171
69
122
55
55
114
92
93
99
152
104
126
86
138
139
104
101
138
139
74
107
171
64
67
110
146
126
110
93
55
106
55
75
123
139
144
127
79
123
182
122
125
100
126
138
138
110
92
164
141
134
104
91
101
178
55
104
56
92
75
126
108
109
95
55
86
122
178
130
118
37
92
91
120
110
92
92
135
58
104
95
56
55
122
110
134
126
114
123
152
123
92
126
81
178
79
123
112
158
127
86
37
138
37
103
122
56
112
139
110
104
86
55
69
104
109
138
104
69
122
146
138
105
144
156
92
178
94
56
134
92
105
69
92
144
55
105
86
93
92
107
99
105
138
152
141
67
67
122
107
140
56
69
92
91
178
55
130
83
146
67
158
105
112
58
108
92
126
128
110
75
138
132
86
158
124
169
109
144
79
105
105
92
152
165
140
134
134
136
107
55
138
122
125
110
93
56
126
138
127
137
92
160
140
122
130
123
140
138
110
169
123
134
138
104
55
122
126
67
69
126
178
37
138
93
178
97
152
120
105
111
103
79
55
95
91
104
99
134
110
67
98
163
37
105
67
130
112
158
68
128
56
139
124
163
127
58
125
178
56
122
56
56
134
91
69
162
108
126
122
75
97
105
124
126
122
158
92
134
69
104
67
199
179
83
130
105
37
100
124
144
123
104
98
79
104
134
79
123
79
37
99
119
105
91
79
79
105
77
178
81
56
180
122
110
105
122
56
130
105
160
106
105
110
67
112
152
92
69
126
93
163
56
56
104
110
67
67
67
92
109
77
86
171
138
105
139
129
55
152
103
93
67
126
137
109
122
78
92
118
122
152
138
128
141
58
91
112
92
92
141
138
93
67
156
92
163
77
99
110
178
103
92
99
75
158
160
78
134
55
97
55
119
110
86
134
105
116
160
105
110
109
91
122
92
99
120
105
199
91
56
56
178
86
74
58
100
55
56
92
171
56
86
178
127
93
128
56
132
140
75
104
67
92
109
56
92
55
110
75
91
152
127
56
55
146
102
152
110
178
104
107
68
122
99
136
104
134
126
84
122
119
112
119
105
122
111
55
75
129
114
141
110
95
67
138
111
56
86
139
110
105
55
131
142
138
144
92
86
99
122
156
128
104
104
144
58
139
92
67
145
95
93
77
105
138
135
109
69
86
169
105
93
77
92
92
79
178
159
58
88
165
55
138
69
100
164
138
180
152
92
129
67
104
91
86
104
105
152
134
93
163
178
56
86
138
107
110
111
92
130
92
105
110
122
97
122
64
69
69
56
68
127
118
138
105
58
58
75
74
138
72
126
103
92
188
144
89
67
83
165
110
97
105
98
93
93
149
109
123
68
72
78
148
104
122
69
123
104
74
140
55
106
86
122
101
119
178
55
81
105
92
104
67
55
89
123
119
141
67
55
138
37
123
104
138
123
182
55
75
91
92
104
99
178
111
58
97
122
128
91
91
74
120
104
122
122
55
83
189
124
135
163
164
92
93
74
131
104
92
86
188
37
122
127
119
74
138
103
122
118
178
92
110
139
117
119
139
136
128
122
105
99
138
103
119
92
37
105
130
144
110
56
92
55
122
138
127
55
91
110
128
99
138
104
111
110
111
56
199
122
128
124
83
69
58
122
104
93
105
56
92
105
131
139
111
140
152
144
127
55
160
103
111
122
105
128
112
178
106
84
75
114
84
55
132
123
86
139
104
134
126
130
67
92
88
56
136
138
67
110
110
139
128
148
79
195
151
144
122
138
146
126
55
110
104
122
128
122
98
92
141
142
68
37
140
180
164
136
93
101
125
91
67
139
146
37
55
139
124
140
122
92
55
55
110
132
132
69
107
67
138
92
125
124
55
112
111
130
102
37
121
144
138
127
146
148
99
142
126
127
77
78
137
110
124
127
99
199
77
105
171
110
103
37
74
104
58
85
67
182
124
97
69
81
92
55
79
110
136
148
67
146
92
68
122
92
110
105
86
127
152
126
127
115
94
69
119
139
100
171
77
138
67
58
142
86
93
55
128
84
110
146
56
122
111
144
56
74
58
110
103
109
138
144
124
83
74
144
123
126
103
58
124
122
127
67
55
105
79
68
138
105
83
104
141
146
92
55
107
136
127
92
138
74
115
139
98
79
105
74
127
135
92
92
128
124
58
117
109
92
92
56
69
167
168
74
56
152
104
58
110
84
89
171
83
178
56
178
112
126
105
144
130
168
110
135
124
74
86
128
131
109
152
88
144
100
104
157
56
93
138
69
91
97
144
86
114
127
124
92
56
97
67
109
88
67
114
125
122
105
111
126
104
75
180
95
56
104
122
99
69
126
58
92
56
67
180
110
103
138
56
92
37
105
134
134
123
92
171
68
67
164
99
69
58
92
131
67
92
163
56
122
110
180
122
107
152
119
122
122
123
67
37
74
99
98
92
86
97
110
144
98
110
110
67
114
152
100
122
139
91
110
103
92
107
79
138
178
110
122
56
160
128
152
178
103
92
126
128
79
55
199
105
110
92
55
126
58
103
110
109
122
55
122
148
58
92
83
180
67
146
99
120
111
93
105
136
144
105
152
67
124
83
103
134
139
67
165
144
83
167
56
102
103
105
93
135
169
139
127
92
122
126
76
86
91
105
169
72
152
144
139
105
144
77
69
55
119
197
126
104
127
122
56
111
68
37
69
58
139
110
107
97
135
168
111
131
102
117
56
126
84
127
67
95
137
124
107
114
92
79
86
68
55
92
86
104
146
128
92
122
110
119
119
122
142
138
105
84
109
156
145
169
104
110
86
135
91
55
92
126
77
106
79
168
37
37
105
138
37
37
146
104
148
103
37
84
104
81
134
104
91
103
93
107
55
92
103
109
108
138
127
92
122
37
92
105
37
105
92
126
110
69
134
79
93
102
138
104
127
58
118
37
119
67
67
122
124
122
58
55
55
122
134
148
92
139
55
127
74
110
122
58
120
110
93
124
169
55
104
73
79
56
91
58
110
126
126
105
67
67
100
105
122
77
123
55
132
104
134
134
67
178
126
122
139
178
148
110
93
83
77
77
144
178
67
78
145
131
108
92
103
123
58
92
144
119
102
105
122
162
137
119
199
122
101
69
146
93
123
108
92
64
79
84
105
117
37
169
55
104
55
67
105
107
92
105
92
77
163
146
97
162
55
126
55
75
92
122
77
99
110
112
67
126
93
103
75
122
178
112
56
67
101
58
92
128
110
92
119
120
110
110
56
58
69
111
111
114
158
111
98
55
126
67
102
89
67
92
99
153
136
75
79
110
67
120
92
56
142
93
148
152
118
138
92
67
92
93
92
68
92
95
67
195
92
92
124
55
67
149
122
109
92
79
128
56
92
109
58
126
126
123
107
83
105
100
178
101
105
127
114
131
171
110
129
86
110
169
86
77
148
148
58
55
58
115
92
157
91
122
124
139
112
92
92
134
84
86
67
111
89
86
134
122
93
92
178
56
127
122
122
132
92
121
102
122
104
110
55
110
91
134
122
77
180
146
55
98
67
152
55
75
139
139
75
110
126
178
127
67
152
140
117
100
112
144
81
138
127
126
127
123
138
171
100
67
126
107
152
107
122
110
105
104
78
146
110
103
55
56
67
122
197
110
104
92
138
107
122
99
92
164
103
109
119
74
122
138
126
67
146
86
152
152
160
104
105
128
79
37
74
92
138
92
102
55
75
110
131
56
127
98
163
110
93
122
92
92
104
169
178
102
171
74
197
104
128
144
92
105
115
132
148
156
91
104
67
104
94
37
135
146
93
92
55
91
83
86
138
110
93
107
123
99
140
169
86
158
104
110
58
122
162
67
134
99
110
56
142
67
122
67
111
180
97
56
128
101
178
138
56
119
84
130
177
69
93
93
92
107
145
86
127
160
67
93
86
92
152
110
171
86
139
67
144
56
103
55
55
104
58
92
110
147
95
146
112
145
86
139
104
127
124
92
93
122
109
124
37
171
126
136
75
126
58
178
93
69
122
56
102
119
55
105
55
104
122
91
127
55
158
138
109
105
168
148
129
110
99
119
128
99
132
169
77
81
111
131
102
178
103
135
55
138
102
128
92
163
158
113
37
117
178
106
136
163
55
158
110
104
56
178
56
55
111
103
128
58
138
95
83
163
56
79
56
178
55
104
69
128
83
92
122
112
138
140
123
158
87
126
130
103
77
118
92
55
114
88
138
110
168
67
127
67
79
92
86
67
112
91
108
109
126
119
56
138
140
148
132
127
130
178
123
137
138
69
79
92
79
93
119
86
86
79
92
93
142
144
122
168
107
99
122
139
164
104
99
69
139
124
146
122
37
146
93
93
120
109
81
55
67
130
67
169
56
99
83
37
97
163
152
107
86
113
169
56
127
109
55
93
178
146
127
103
102
95
99
58
146
69
131
37
169
162
164
105
124
37
123
127
77
97
79
83
56
107
105
92
58
131
107
105
79
164
140
84
138
112
92
146
144
139
93
134
122
138
92
74
110
55
67
92
55
67
92
86
169
92
104
138
152
127
138
139
56
152
55
93
127
110
105
79
178
107
92
162
79
78
81
103
113
178
144
105
164
138
122
105
129
128
55
178
122
110
88
111
95
91
99
109
128
37
140
69
103
92
146
181
92
136
108
180
152
55
119
119
55
124
135
139
86
56
92
110
101
154
112
68
77
138
126
77
110
98
169
128
104
136
158
178
99
93
115
110
178
124
89
93
92
128
104
138
136
69
104
86
141
126
132
127
75
92
138
56
178
58
127
55
92
140
84
110
119
123
127
104
55
105
55
124
131
127
144
110
109
111
37
139
112
105
105
92
107
55
108
122
105
136
104
83
138
55
127
119
105
119
168
93
140
74
127
139
131
92
55
99
178
114
124
105
79
92
122
111
56
122
92
148
105
103
127
110
55
169
104
168
139
101
107
136
149
58
146
94
55
67
56
144
126
110
169
97
152
75
100
138
119
104
55
67
105
138
122
110
178
138
141
116
56
122
55
92
144
75
149
111
122
67
74
106
77
81
110
69
120
126
119
146
67
56
119
55
104
132
110
55
79
140
109
84
163
127
37
126
104
67
178
92
117
92
69
97
91
128
110
75
56
86
92
178
123
139
55
126
100
37
104
109
138
120
123
107
55
110
91
97
110
105
88
177
58
188
119
126
139
160
100
55
178
109
122
138
127
123
178
105
158
99
110
110
131
76
104
158
126
37
152
86
56
101
123
92
71
78
56
55
105
81
146
124
56
92
178
138
67
134
122
144
111
123
67
77
178
105
110
92
97
105
122
58
122
67
67
93
110
126
122
55
92
141
69
127
93
122
112
156
75
144
139
126
126
146
110
58
126
97
99
137
100
105
146
178
79
111
92
56
119
110
139
137
144
92
67
122
138
146
55
144
122
152
91
55
178
123
138
110
108
152
139
104
128
56
105
92
55
128
181
84
120
56
144
134
55
119
68
119
165
139
122
123
122
103
128
112
128
117
86
103
182
107
118
127
126
37
158
126
79
178
95
139
109
92
92
86
122
138
137
76
138
139
138
92
110
67
138
151
92
103
138
138
93
113
134
139
56
144
160
97
103
122
79
95
55
126
138
91
126
91
99
108
122
92
122
104
114
110
102
110
101
122
91
55
126
110
55
146
104
67
131
124
122
126
127
55
111
152
55
86
139
132
110
168
56
69
138
67
165
110
67
122
119
178
142
94
78
160
103
122
91
74
122
75
137
69
199
163
110
93
122
124
81
112
55
93
91
131
55
91
126
56
79
92
105
104
117
138
105
68
127
67
55
146
114
178
69
101
67
110
92
110
58
74
58
68
127
88
134
124
91
110
56
58
126
126
37
138
92
67
93
79
67
92
86
86
107
55
144
180
92
104
93
67
122
86
56
111
105
128
92
55
79
122
55
122
103
92
112
55
148
103
67
134
138
110
92
164
67
106
126
104
92
119
100
93
79
55
55
149
105
58
118
92
92
89
77
112
107
69
92
122
110
124
37
110
92
69
139
98
126
119
103
74
79
55
91
140
77
139
178
67
122
117
58
134
127
169
131
67
37
163
126
85
67
110
57
91
110
91
68
91
56
110
134
178
37
127
37
91
138
69
109
180
122
110
113
55
92
178
92
81
139
123
122
75
67
120
122
92
122
55
110
105
122
67
92
131
58
58
123
79
110
122
105
68
92
67
108
118
126
95
134
106
131
122
178
78
132
152
92
92
55
75
55
142
110
55
114
93
117
99
93
138
86
110
55
113
88
105
92
141
102
105
37
152
68
179
138
126
96
97
123
107
145
58
67
137
128
110
162
78
94
138
123
110
126
56
37
146
92
139
67
68
67
146
111
79
81
104
55
105
92
55
171
55
79
106
120
92
152
92
124
100
178
93
105
97
83
136
92
104
114
152
55
92
92
171
130
92
75
37
110
73
104
104
152
92
124
123
99
67
92
110
104
56
178
37
55
131
178
161
110
110
119
171
178
146
128
105
92
55
139
99
92
67
67
126
138
111
122
146
144
105
67
104
122
101
89
105
122
97
152
67
131
104
92
146
96
109
93
77
91
122
169
105
110
105
97
152
92
105
112
124
55
125
77
67
91
129
178
86
112
144
93
138
110
55
128
91
111
79
37
104
122
140
56
91
171
120
69
101
83
91
55
168
110
79
74
105
93
92
56
98
139
158
132
91
77
136
58
163
111
55
96
104
122
105
122
105
69
118
152
74
134
130
152
120
122
122
109
108
124
71
105
77
91
127
56
75
103
138
106
122
110
100
100
99
154
55
136
110
140
86
110
86
55
104
118
148
101
77
126
92
104
69
126
93
104
135
122
99
91
144
97
79
77
92
126
109
95
138
37
93
109
55
55
165
132
101
104
105
110
144
105
97
115
122
168
99
119
92
110
110
99
102
114
124
112
37
126
138
123
158
130
68
169
118
81
58
130
105
67
55
97
152
138
112
178
119
126
69
104
97
119
92
138
55
104
110
132
162
126
167
67
105
138
105
163
165
104
169
123
83
91
92
74
105
98
123
169
124
168
55
138
149
92
134
146
92
91
152
110
124
160
56
93
92
171
122
104
77
103
140
140
126
139
92
135
163
169
37
58
100
56
138
86
105
144
105
180
61
55
119
56
93
92
111
99
127
110
160
92
110
138
105
92
74
138
146
110
37
103
81
55
55
107
128
93
110
79
110
79
91
152
129
107
92
112
122
55
92
140
123
92
67
124
86
139
97
83
162
138
127
134
84
68
86
127
92
92
126
152
104
69
89
126
140
83
83
92
127
83
109
158
55
178
122
37
104
56
110
74
127
101
122
120
139
126
126
55
127
138
135
37
93
86
165
178
37
122
171
105
93
182
56
99
106
139
37
55
165
134
127
93
83
106
86
83
171
111
106
178
108
56
139
122
86
88
127
77
56
86
169
145
58
114
56
92
103
135
105
122
74
130
140
93
128
37
104
122
64
69
92
122
103
86
77
124
67
107
58
56
143
55
55
122
122
169
106
55
92
103
111
98
138
145
105
92
124
146
123
55
86
110
162
110
122
124
93
163
112
84
75
134
86
146
178
58
74
138
77
110
127
171
146
105
55
139
79
138
93
178
122
138
56
139
92
128
122
127
55
126
132
168
151
128
109
105
55
37
105
171
178
178
145
158
126
99
92
92
84
136
119
100
92
67
67
144
83
91
56
105
107
108
102
139
93
123
110
118
134
169
93
105
92
109
125
128
148
74
37
56
158
92
138
105
110
119
86
76
134
56
69
99
138
91
77
86
126
128
129
137
55
89
77
97
168
135
122
158
105
91
120
105
122
107
182
104
121
56
103
110
110
126
109
178
55
79
142
111
156
138
55
122
67
79
138
146
92
144
97
55
139
139
92
83
100
68
55
100
168
105
37
144
126
122
126
83
79
104
55
79
92
110
55
144
158
58
55
92
124
138
115
99
119
130
111
77
105
105
81
55
105
55
110
105
127
91
138
118
125
93
37
37
69
116
88
123
171
139
55
104
126
92
104
109
69
126
58
144
92
92
178
152
138
99
146
55
110
55
77
93
105
152
79
112
110
110
126
37
93
169
101
127
148
58
104
122
126
103
91
182
58
67
122
122
178
146
83
91
37
171
93
110
104
119
124
77
78
92
122
152
171
92
171
115
138
77
67
80
56
104
125
127
105
55
110
68
98
92
130
127
146
106
37
67
79
127
67
122
104
138
105
37
104
79
105
152
144
128
168
88
92
78
93
105
99
139
140
92
92
55
55
105
91
152
91
109
91
140
108
74
104
96
102
138
138
110
168
88
126
131
92
75
189
110
158
123
86
126
69
92
74
55
74
110
127
126
93
37
55
139
144
110
79
112
126
67
93
56
148
99
92
139
88
75
92
148
178
142
128
144
162
137
55
129
92
169
112
74
56
146
110
37
86
134
144
93
122
111
104
163
105
83
105
104
77
77
122
68
123
171
105
92
122
104
126
55
105
152
95
56
58
119
126
83
105
105
93
171
56
140
104
127
105
79
152
162
144
56
110
92
107
132
144
100
169
125
55
92
110
158
126
120
117
104
123
105
77
55
128
107
56
126
92
92
127
126
111
119
79
122
84
122
93
77
168
37
126
92
140
115
158
104
68
122
56
99
148
109
58
122
135
92
105
94
114
113
92
140
144
67
57
152
137
142
81
92
125
55
88
138
152
139
58
55
92
110
106
74
55
122
74
89
91
131
37
144
110
182
146
122
77
55
122
92
97
37
92
55
56
108
126
98
76
67
138
126
101
169
138
91
146
91
146
138
101
126
103
110
152
91
67
104
79
56
109
122
55
104
178
69
110
77
122
92
114
99
123
111
75
87
152
145
95
122
146
192
137
105
56
110
88
109
91
67
119
130
138
134
114
105
123
92
79
98
139
180
140
67
138
103
146
86
93
92
162
130
99
122
135
92
122
110
93
110
101
104
115
120
55
139
122
69
92
77
98
93
112
55
123
122
55
98
77
67
103
126
127
119
105
110
126
92
145
92
86
80
77
92
127
93
56
126
164
92
37
92
55
128
138
58
37
103
105
128
122
131
75
131
92
144
146
55
131
139
84
134
55
93
37
99
68
104
105
144
119
178
169
95
115
92
83
86
79
64
152
138
109
126
107
93
140
122
132
138
69
109
58
92
67
178
147
150
138
97
122
139
144
163
84
110
93
92
55
56
136
146
88
56
119
105
105
132
110
111
109
55
138
171
111
110
92
104
108
114
119
67
167
168
109
148
169
55
129
106
58
178
138
135
111
104
91
121
67
78
121
110
84
120
138
84
37
101
110
119
104
55
163
137
110
105
58
105
111
134
120
105
115
105
126
86
108
127
118
122
178
109
119
111
67
139
99
95
126
122
152
92
144
158
84
129
37
67
117
105
118
144
75
105
111
55
104
105
93
126
164
67
109
180
67
58
99
105
138
106
92
73
92
97
93
148
67
79
92
92
86
146
189
163
178
65
135
114
120
138
178
139
55
122
110
111
37
138
171
126
67
84
127
102
68
152
68
145
55
122
122
134
92
55
105
105
152
138
79
144
110
109
119
137
139
58
80
92
55
126
139
109
140
146
152
113
55
110
104
142
103
105
91
105
199
110
126
92
103
67
139
122
117
152
86
123
104
58
130
92
92
126
105
99
86
144
122
92
56
126
92
104
140
56
110
58
55
37
149
37
112
171
55
107
152
67
79
169
122
122
69
171
109
86
92
108
110
122
110
55
101
91
67
168
67
146
37
162
55
113
126
68
105
92
138
67
119
58
104
105
109
37
100
91
111
73
109
144
58
97
77
93
105
110
127
138
69
141
92
84
122
104
67
126
86
139
144
118
126
55
178
56
152
110
67
135
58
127
131
105
169
122
78
92
140
127
89
115
98
128
55
139
137
92
146
74
89
110
140
104
144
123
124
74
134
56
104
88
96
69
130
92
126
169
104
126
58
138
97
98
92
95
126
92
162
110
110
55
55
115
87
75
92
123
105
127
142
93
94
126
104
178
171
139
37
93
128
103
55
126
37
123
139
104
92
119
152
111
58
67
100
109
67
55
98
37
119
104
74
110
138
123
55
180
67
92
127
67
75
152
67
120
110
101
122
152
131
139
127
107
126
126
152
109
178
87
107
111
120
152
103
109
110
119
144
71
102
126
125
110
162
92
100
76
122
110
127
127
93
92
127
98
138
55
55
99
178
83
144
56
127
99
123
119
92
55
165
105
110
146
122
74
148
134
130
126
86
55
126
169
37
58
171
67
171
168
92
92
128
148
126
158
119
105
56
111
75
55
151
110
92
75
122
105
126
171
58
178
127
97
92
55
139
93
56
104
92
111
68
129
169
86
110
104
98
104
138
131
138
93
127
148
95
114
110
126
69
112
119
144
171
129
69
55
146
110
144
117
105
126
140
111
56
37
138
119
126
75
92
123
110
67
37
139
122
169
111
123
56
123
146
67
122
177
104
131
37
69
123
122
58
105
126
92
99
81
37
104
103
152
78
136
110
58
92
107
127
110
126
138
119
138
140
126
69
110
146
79
119
37
75
136
92
37
120
92
128
180
144
159
146
126
110
69
88
103
152
79
127
122
68
126
134
144
126
67
144
56
110
92
74
127
67
110
105
107
119
109
138
101
55
92
139
122
68
105
171
105
69
67
112
178
58
140
128
104
37
146
93
135
138
92
144
99
105
105
55
101
104
152
86
92
111
162
105
55
168
56
87
100
55
73
103
138
37
86
86
119
127
107
146
56
86
79
142
123
127
99
146
139
86
128
79
139
169
92
110
79
99
119
156
146
124
115
120
55
122
110
123
123
79
162
115
55
67
105
152
152
152
77
122
92
55
134
104
67
56
114
110
92
146
107
105
134
122
126
126
104
92
105
92
67
115
92
138
126
86
109
74
162
74
122
140
146
79
92
148
105
117
56
128
91
122
107
110
169
109
126
58
169
126
178
140
169
105
138
92
112
112
139
104
92
103
92
89
122
111
88
77
56
55
139
93
134
152
77
92
131
138
105
144
104
104
167
169
56
111
56
144
122
112
77
91
139
67
92
144
152
74
108
79
126
138
151
122
91
104
119
119
169
122
134
58
93
112
97
138
55
103
89
140
81
111
126
123
92
152
128
91
92
55
110
110
92
146
129
110
127
105
92
93
128
118
128
148
130
91
119
100
169
92
92
104
135
55
146
105
109
110
91
126
105
122
84
92
105
134
101
109
83
91
58
56
140
37
126
105
37
114
138
122
105
55
126
127
93
169
127
55
92
72
104
110
146
109
139
92
126
92
79
158
163
122
122
93
92
58
105
99
79
55
146
74
99
80
105
178
67
55
122
122
122
134
188
127
140
152
77
93
138
93
56
55
75
140
98
119
37
105
132
86
142
55
117
110
124
108
55
110
160
123
67
127
122
105
69
92
86
55
55
164
103
113
104
122
93
109
122
128
144
92
144
102
55
92
92
92
56
99
55
96
144
146
135
104
138
125
55
122
140
67
126
138
104
123
56
189
104
146
93
105
105
99
58
144
110
123
134
81
69
148
146
79
91
109
37
128
92
138
118
99
139
126
93
126
178
109
138
158
56
122
81
56
171
104
139
142
119
163
107
139
104
74
141
92
110
56
67
140
68
118
92
105
55
110
138
139
148
67
55
169
152
139
148
115
126
102
93
58
144
136
55
92
105
88
58
122
92
188
152
111
58
91
97
131
150
37
77
67
122
126
126
83
104
55
140
55
91
86
104
146
152
128
83
169
112
144
92
137
55
67
101
128
86
92
122
142
122
92
37
67
37
114
126
105
79
110
55
67
58
137
100
111
107
67
105
128
104
136
128
104
55
167
97
111
119
79
92
123
55
119
138
126
79
153
122
37
69
55
141
105
92
37
104
55
131
119
92
86
127
100
77
58
137
98
56
126
146
114
134
124
37
115
105
130
146
132
110
104
73
127
138
134
128
67
37
107
126
192
88
69
79
92
92
128
56
117
55
122
110
171
164
126
55
99
127
126
105
105
76
37
162
104
122
126
55
127
145
169
106
110
37
83
110
126
78
55
138
105
127
80
92
105
104
103
122
79
37
114
138
122
95
87
55
109
122
123
138
127
88
55
112
139
126
107
56
103
178
91
55
103
130
91
74
105
126
93
130
105
98
68
86
178
99
103
122
67
79
108
126
139
105
139
92
110
67
55
109
178
111
128
107
188
114
102
130
67
138
56
146
105
152
152
91
158
134
120
55
122
75
130
103
167
128
98
122
79
113
99
148
140
102
110
126
109
107
137
152
131
87
106
138
104
74
122
130
119
69
104
178
112
124
145
68
109
160
104
105
127
144
110
139
126
104
37
127
120
69
142
91
139
163
178
163
55
77
111
93
102
56
92
122
123
55
138
112
100
104
158
178
105
106
37
100
89
55
92
126
138
104
117
107
128
86
104
92
105
107
92
37
69
178
104
139
146
104
92
56
105
110
122
169
131
37
178
105
169
125
79
69
86
109
140
145
56
119
122
56
58
127
58
67
104
112
109
83
109
114
92
178
110
86
55
123
102
167
171
79
118
75
131
64
110
110
37
111
92
77
103
105
77
122
122
98
93
105
134
111
67
37
160
97
74
55
104
92
58
101
55
55
55
139
109
123
92
139
169
103
58
144
77
111
138
163
146
55
37
125
146
167
56
138
110
97
102
124
92
105
105
126
56
102
74
93
86
126
92
165
104
152
139
92
67
67
130
105
92
105
122
68
134
56
104
126
64
128
67
79
56
92
160
107
139
151
55
103
78
91
145
119
122
108
126
122
99
105
143
127
169
69
169
119
113
92
77
55
104
122
92
106
118
55
105
139
105
91
110
140
86
122
104
144
195
92
89
104
97
160
37
180
122
89
110
77
140
92
105
79
146
97
105
99
69
68
105
106
58
58
119
84
112
180
61
105
93
199
110
138
56
130
56
120
93
128
122
127
92
103
110
68
92
56
76
127
55
110
67
139
152
130
77
103
56
87
169
89
122
124
69
152
122
127
134
110
131
122
75
136
146
67
104
140
91
37
69
146
138
55
92
91
37
93
138
157
68
123
140
67
67
144
99
93
177
56
86
86
105
146
37
93
139
138
55
68
91
119
152
178
101
92
126
107
69
55
117
106
100
68
114
93
126
108
119
101
139
67
126
126
122
160
139
135
68
69
89
86
58
104
69
122
105
169
136
178
127
105
138
93
55
92
180
58
127
55
77
110
55
91
127
37
92
126
55
77
56
144
169
137
67
67
91
104
144
122
106
107
67
75
131
105
91
67
55
138
164
75
92
118
74
56
92
92
56
77
162
110
106
83
58
122
114
68
55
122
91
178
131
171
92
119
110
144
69
37
178
119
79
92
88
122
112
119
110
69
75
122
105
112
128
104
124
110
121
92
158
127
93
105
86
122
105
114
37
139
55
67
136
93
55
126
78
56
100
37
92
139
169
139
107
73
119
100
92
105
169
106
87
74
110
93
79
131
111
105
76
104
67
92
152
110
146
139
169
105
55
126
112
126
138
119
92
114
127
109
178
104
56
67
111
165
122
92
109
92
37
169
77
126
130
125
139
67
67
77
97
99
139
139
109
122
86
124
67
79
92
138
123
92
199
136
181
135
110
89
122
109
109
128
104
69
122
92
92
165
180
69
55
92
58
89
107
98
37
93
126
105
67
58
103
92
55
124
127
105
55
152
77
104
104
79
126
135
98
74
127
178
94
92
86
131
152
152
110
56
158
56
124
91
110
83
92
145
77
103
55
123
111
127
92
110
92
106
55
67
178
56
112
56
128
178
152
118
168
105
92
178
74
109
178
110
77
67
103
99
110
110
113
92
37
86
64
106
103
37
178
102
55
178
92
123
169
92
152
105
127
56
125
91
104
99
99
84
138
111
104
55
110
56
158
58
137
109
98
55
99
109
89
92
122
37
109
92
55
67
56
107
120
99
110
119
140
110
99
152
75
98
67
107
146
139
55
119
74
105
127
91
58
106
69
139
100
104
168
125
140
122
110
126
139
104
86
124
111
92
129
91
103
93
146
55
55
93
37
114
138
110
55
55
122
104
160
127
144
69
109
110
89
93
56
130
126
124
131
147
92
164
122
152
104
126
77
128
67
100
138
104
152
55
132
75
146
127
110
105
107
110
119
86
69
92
163
132
188
58
122
103
93
72
55
131
98
55
109
144
178
86
110
171
163
55
99
162
122
92
128
107
180
125
140
146
55
97
123
139
108
178
110
126
152
81
169
144
110
126
138
91
56
126
56
80
109
93
93
110
116
92
55
81
74
103
67
55
111
103
75
178
79
67
79
55
178
91
55
109
152
123
83
158
102
126
126
138
148
77
127
110
55
127
130
55
56
56
88
56
140
92
91
105
92
123
55
127
180
92
105
131
152
126
119
88
138
126
58
104
104
126
56
92
162
138
126
105
102
111
83
134
165
103
69
163
37
92
127
126
123
134
109
108
88
128
149
146
109
67
146
77
67
122
55
69
91
144
178
97
67
37
58
126
138
130
83
138
99
79
114
127
83
111
127
180
93
128
85
55
99
56
98
92
144
69
138
105
89
128
104
104
144
113
98
92
69
73
55
120
131
67
91
92
144
122
145
93
139
111
137
67
89
104
104
122
119
110
93
55
111
110
180
126
69
93
69
140
148
55
99
138
92
169
92
102
75
69
123
67
105
103
110
74
134
178
129
37
55
169
152
110
114
139
110
134
122
56
160
83
152
124
127
138
105
105
55
169
148
110
93
127
180
99
105
86
74
86
96
104
56
105
56
105
95
128
56
56
138
55
55
56
56
122
125
138
105
67
122
93
152
93
109
84
56
199
149
93
102
122
110
111
67
55
99
81
140
145
180
144
100
112
86
107
110
93
56
105
178
128
37
68
101
58
103
58
144
86
105
92
110
122
127
137
67
129
103
178
128
144
67
110
108
67
110
92
110
110
55
105
138
123
91
178
55
114
55
37
137
92
67
92
55
93
55
58
169
143
99
69
138
122
83
146
92
92
91
56
99
93
37
105
130
135
171
126
55
93
138
169
105
78
126
146
55
126
135
104
67
86
119
55
110
100
132
134
123
105
37
164
124
115
145
140
92
180
105
126
93
79
105
126
110
93
123
107
124
178
95
92
110
139
122
122
139
92
114
144
61
69
110
55
68
112
110
107
104
152
180
105
55
167
104
152
92
55
92
91
105
99
134
92
55
178
152
58
138
55
91
110
110
97
110
67
146
144
126
110
86
178
86
37
67
105
135
119
105
105
127
92
169
75
105
67
126
58
55
105
152
58
107
104
144
105
139
74
126
110
146
107
144
86
75
104
122
67
105
146
91
140
110
144
109
127
126
110
119
139
146
55
119
110
86
139
110
55
134
110
67
162
104
138
123
91
55
169
91
37
127
79
92
104
114
92
77
122
93
107
67
91
67
86
77
124
138
98
146
55
139
126
92
55
122
138
93
148
128
37
138
86
124
69
105
178
138
67
123
67
74
114
92
169
138
138
93
104
55
68
111
139
89
86
126
37
131
79
144
55
110
122
81
105
37
77
110
75
138
104
104
134
55
55
97
84
75
110
86
162
168
102
107
56
55
126
110
55
110
167
114
122
105
69
104
37
132
107
138
126
104
107
67
106
122
127
110
67
37
67
100
138
103
145
99
144
139
122
178
112
138
92
178
109
92
91
144
132
55
151
110
103
123
126
72
139
151
182
92
148
138
140
132
73
122
152
99
55
144
178
132
55
105
104
55
146
92
88
105
146
126
58
138
37
110
138
163
122
104
104
105
128
123
55
93
110
112
148
127
58
178
128
74
104
110
110
127
93
55
131
73
140
110
135
148
105
138
74
105
67
122
114
92
86
108
138
110
130
130
126
110
180
37
171
122
102
139
92
123
95
55
124
127
55
128
139
37
99
104
126
37
128
122
92
122
146
91
138
79
37
108
132
126
119
67
152
163
74
162
168
178
110
165
91
114
107
110
180
76
98
105
92
111
143
119
111
56
91
127
139
116
138
92
139
105
105
89
93
125
138
178
122
132
92
178
105
37
122
126
83
141
124
55
110
188
55
92
138
134
126
86
55
97
126
79
126
105
89
117
128
103
123
105
148
105
138
122
101
93
79
56
110
86
128
123
55
37
144
119
58
127
58
144
75
199
86
67
58
73
110
136
140
110
75
152
136
146
169
75
83
138
98
122
75
106
122
58
37
178
55
67
178
68
115
67
92
55
178
139
105
56
37
92
92
139
110
92
91
92
110
55
144
122
105
128
55
117
89
111
56
91
144
139
67
92
79
122
93
122
110
93
138
114
146
140
84
142
138
126
112
75
105
115
135
92
56
104
139
139
90
67
118
55
134
92
55
115
144
92
128
152
122
92
144
110
110
86
165
105
147
105
132
144
93
55
126
86
124
126
69
107
118
132
92
138
171
92
55
105
105
92
104
148
67
122
91
78
110
105
79
107
105
126
122
67
77
146
77
197
119
138
178
146
91
145
92
79
93
37
92
125
56
55
91
55
146
126
91
126
127
112
168
97
74
74
92
84
98
83
109
104
180
105
77
110
37
68
147
55
114
138
139
88
146
92
121
180
86
110
117
127
79
122
93
163
91
146
107
127
127
100
127
132
126
92
146
111
146
178
119
122
178
130
55
126
114
92
125
56
139
140
152
136
55
109
111
110
146
120
81
104
56
104
104
134
105
67
138
119
77
92
171
93
168
67
55
97
111
56
67
79
126
37
132
138
101
106
119
56
109
56
100
92
105
139
122
105
110
37
86
109
138
55
130
137
103
56
89
110
104
146
104
92
102
94
91
138
93
67
105
83
67
126
103
105
101
130
55
99
151
122
178
99
137
58
107
119
126
110
138
158
105
55
135
75
119
110
126
128
110
107
123
92
58
84
105
110
158
55
105
111
169
169
138
79
92
87
136
104
123
111
152
122
58
138
146
128
109
110
107
68
104
169
93
152
69
81
92
144
122
167
93
122
139
79
138
88
118
163
81
55
92
171
89
110
74
123
130
74
138
160
109
139
132
117
55
128
168
136
122
79
99
119
146
56
79
55
124
77
178
64
122
105
93
126
138
105
120
67
134
71
178
79
67
134
69
104
93
75
37
109
129
107
150
139
152
127
106
122
74
110
55
74
58
55
88
92
86
130
83
122
92
101
75
105
140
79
92
92
128
75
37
92
126
92
142
58
67
128
123
110
55
110
105
93
75
92
75
86
56
110
128
110
110
110
95
37
104
67
138
103
92
105
137
101
169
146
93
83
69
141
56
178
100
139
37
92
84
138
37
69
146
109
138
37
144
144
110
58
67
147
100
67
152
138
104
92
58
167
55
144
93
131
56
89
111
104
119
110
127
105
79
97
99
105
92
128
92
86
139
130
55
106
107
178
132
145
163
93
104
86
152
145
93
77
80
104
55
77
55
158
104
139
77
105
144
79
103
126
122
178
92
122
119
110
110
105
139
131
67
91
79
55
128
92
94
140
169
89
55
102
138
65
144
75
103
117
106
137
103
93
92
169
69
67
127
139
55
89
158
122
146
56
58
92
110
99
114
93
110
171
105
117
55
109
89
123
115
68
107
126
37
92
122
55
134
69
110
178
88
86
74
77
106
129
37
110
122
58
140
56
79
125
197
126
144
178
37
109
167
146
56
55
138
171
118
132
55
110
171
92
56
111
126
105
169
123
89
55
91
142
83
92
92
122
105
110
58
110
127
158
55
139
92
122
144
37
92
123
112
99
144
77
56
138
105
118
138
138
139
72
139
55
146
88
107
138
99
164
96
163
37
140
100
95
139
106
75
178
56
105
92
110
136
110
122
138
74
110
124
144
165
58
123
118
136
75
79
86
104
68
97
93
98
58
148
112
138
138
105
92
55
86
69
123
151
74
55
55
140
55
104
103
126
74
102
91
100
79
95
182
55
100
99
117
109
55
79
139
169
96
97
110
37
110
122
56
171
110
56
137
107
92
91
68
67
75
117
110
104
67
126
105
55
127
91
56
55
178
110
136
68
138
104
119
110
93
111
110
98
80
144
146
126
98
138
144
79
105
68
122
178
122
92
55
92
169
136
77
122
127
97
105
104
79
138
119
163
55
77
126
58
132
146
122
126
135
104
68
86
169
143
122
56
138
97
138
87
122
55
56
178
58
56
99
86
119
58
73
92
67
97
37
56
79
122
91
92
122
75
55
55
134
140
98
104
139
145
178
83
93
148
167
156
162
56
104
69
105
91
89
95
110
105
56
75
144
111
124
134
128
99
37
93
148
92
107
114
77
55
109
103
131
122
127
105
92
148
55
136
137
126
74
140
75
93
135
138
178
127
152
131
91
146
88
144
97
67
55
118
126
94
104
105
55
126
104
124
97
37
106
79
122
146
138
114
92
88
108
55
105
114
104
110
106
115
58
103
91
91
122
93
164
126
104
127
144
92
92
178
89
127
97
93
93
139
55
92
77
138
150
162
56
112
92
169
58
122
92
68
134
109
102
77
148
55
110
37
126
91
92
79
110
37
110
67
139
125
119
124
120
97
95
158
55
104
128
92
178
144
105
139
111
77
139
171
56
92
110
119
92
105
139
138
152
75
126
114
58
128
67
93
104
149
180
152
107
130
58
56
91
74
162
93
119
114
92
107
112
110
124
75
93
137
76
87
123
105
101
102
74
67
69
124
67
112
56
138
148
105
95
126
114
104
105
92
165
67
105
127
37
55
92
107
128
123
126
126
55
91
181
126
99
107
106
122
108
104
56
79
105
94
107
78
148
67
149
103
144
139
69
144
111
119
105
100
104
127
158
92
92
122
122
69
109
124
110
138
169
115
56
139
93
119
147
93
92
134
149
93
77
138
92
152
67
92
119
178
150
92
105
37
92
171
114
107
55
102
110
138
112
105
140
67
92
103
122
91
109
92
91
126
110
58
108
92
120
37
69
93
106
55
148
75
92
144
68
87
123
67
77
77
77
119
110
119
169
69
55
110
171
110
128
85
122
163
158
126
58
79
163
107
138
178
92
74
105
111
56
148
134
92
141
139
67
92
92
69
128
144
122
110
163
119
92
55
56
55
160
171
117
122
67
123
91
144
112
168
123
110
93
131
127
56
105
92
127
163
69
58
138
86
92
110
55
74
119
89
144
86
79
152
55
74
104
114
110
139
110
56
67
178
138
92
122
37
91
55
126
167
122
178
152
111
55
103
86
128
122
110
168
56
93
122
92
127
69
180
55
79
104
69
55
138
56
163
136
68
37
69
69
122
55
122
79
122
67
158
92
126
111
55
122
55
124
93
138
37
67
112
134
88
139
79
105
58
156
55
138
55
105
68
91
86
145
92
58
55
104
101
122
128
56
140
103
110
55
164
126
111
77
92
92
98
74
93
37
138
140
114
138
127
77
104
56
79
103
126
75
114
79
56
92
93
117
126
55
139
55
110
158
167
110
122
92
92
95
92
122
168
126
119
67
146
86
139
144
118
109
126
105
111
104
104
80
122
111
56
113
56
111
109
56
138
146
124
58
146
178
111
146
69
110
92
86
55
100
98
98
67
56
92
55
79
107
148
79
117
79
86
111
123
55
152
149
149
67
134
109
122
67
77
146
77
56
104
153
111
92
93
67
126
169
134
168
122
103
55
160
122
37
180
55
55
111
127
140
112
86
69
105
91
122
106
130
69
105
56
126
93
89
136
132
61
123
128
162
168
109
105
107
68
92
124
107
101
97
134
72
168
103
134
152
110
69
107
136
69
163
58
93
119
138
122
81
91
105
55
103
138
110
55
83
148
156
102
92
67
144
104
146
110
83
128
144
74
55
104
56
92
127
109
75
178
128
91
99
123
127
110
163
93
91
118
126
119
92
144
123
110
122
130
127
75
55
99
74
178
123
89
58
104
100
146
152
88
55
178
169
92
140
163
188
92
144
67
105
128
37
178
55
105
141
79
67
131
69
127
110
122
163
69
83
158
119
169
93
77
178
92
126
126
108
139
149
122
127
105
56
94
105
122
138
93
74
110
84
138
55
128
92
146
138
129
92
110
92
81
55
126
111
171
92
100
127
127
55
104
67
58
37
92
92
55
113
128
139
75
126
120
168
97
127
112
37
55
145
37
93
37
138
104
55
98
83
108
136
92
92
138
58
92
144
105
68
110
105
168
55
105
126
55
123
74
124
104
152
112
92
115
127
58
127
56
37
138
178
104
105
37
134
37
122
168
94
122
67
77
139
128
92
74
87
139
67
91
135
145
126
108
119
93
76
126
139
78
74
122
109
146
68
111
110
138
79
55
171
146
109
55
92
56
126
180
58
136
78
122
92
110
144
86
123
77
95
105
77
127
107
146
105
110
55
105
105
126
93
127
128
99
92
146
122
117
105
128
111
67
122
127
93
58
128
98
114
140
98
111
81
119
69
162
158
152
104
55
127
104
68
124
127
105
114
144
127
74
145
69
178
117
104
75
89
58
178
139
81
94
110
92
152
110
86
86
67
110
92
92
58
119
91
111
171
122
103
103
86
178
106
55
55
68
37
92
126
92
169
56
139
109
122
104
92
141
92
55
55
126
138
56
84
122
83
123
75
109
79
160
126
75
87
139
37
102
92
91
77
58
138
68
122
55
55
92
122
99
84
83
131
92
110
98
105
79
109
148
124
128
128
92
122
123
146
110
79
138
92
148
128
126
105
110
124
119
105
98
64
92
126
104
74
92
138
122
55
140
135
37
109
140
103
67
162
67
75
152
107
119
72
103
105
97
122
110
69
105
104
127
103
178
97
129
109
69
99
140
128
146
178
122
93
88
144
84
169
67
86
122
105
117
126
91
93
104
74
123
37
132
103
132
92
75
117
148
126
122
121
132
128
122
123
104
92
103
88
105
126
136
126
104
104
106
102
104
110
162
101
92
124
127
97
56
171
122
110
67
119
111
92
104
99
56
178
109
67
97
93
163
55
126
141
167
158
97
105
104
75
114
37
108
180
55
93
55
83
123
109
144
58
148
91
67
112
93
75
139
119
122
152
126
127
55
67
122
119
93
122
93
92
67
110
91
74
99
92
112
122
145
152
140
81
55
56
79
83
67
92
158
67
67
111
99
86
93
69
104
58
67
122
102
107
126
37
92
75
126
132
139
110
160
110
92
92
124
146
86
126
37
99
55
199
126
67
127
139
122
81
55
117
105
139
140
104
112
55
105
68
114
77
83
55
158
83
139
122
169
84
56
79
41
67
101
55
108
126
55
88
138
55
180
109
107
105
105
110
100
126
169
103
138
126
171
126
128
109
107
56
56
93
55
74
93
122
92
169
55
105
123
180
93
163
107
138
134
180
91
58
199
127
136
83
140
126
55
69
122
92
69
55
80
67
67
103
118
110
95
130
86
134
122
131
56
89
178
125
140
138
123
69
168
74
126
91
111
55
92
87
93
86
169
55
37
122
86
37
109
131
134
109
91
120
69
158
149
79
110
138
104
146
124
92
55
104
122
69
160
112
92
171
124
55
126
152
56
122
122
144
122
114
128
152
68
92
103
67
127
104
56
122
117
119
67
91
110
122
104
91
55
94
126
122
109
126
138
55
122
110
37
92
103
58
138
111
128
69
55
55
126
74
67
107
128
93
72
122
91
132
67
92
124
111
109
91
77
132
99
67
138
178
135
67
126
144
127
117
93
109
92
126
180
92
92
104
58
152
115
139
104
122
105
83
92
55
105
56
162
107
130
72
55
93
126
178
134
55
139
127
138
92
140
92
92
77
56
122
142
109
93
58
127
144
67
107
152
92
74
93
55
138
128
126
101
178
105
92
138
100
144
126
56
86
110
111
102
74
122
110
124
139
158
139
58
126
105
102
80
92
92
114
117
104
92
138
123
93
139
122
67
128
110
74
118
37
145
84
58
109
171
93
122
182
110
110
67
68
118
37
109
89
178
92
92
79
150
67
117
132
105
77
91
99
67
122
69
110
127
92
126
132
152
122
107
140
93
126
138
144
67
79
101
55
92
95
118
110
87
126
123
138
178
128
112
119
92
138
78
126
127
37
75
146
74
122
130
128
126
110
139
148
75
119
75
93
138
104
169
92
122
139
138
139
121
67
169
107
122
199
67
118
92
92
128
113
69
103
152
114
55
78
55
126
92
69
111
92
79
105
56
105
67
37
126
122
127
139
104
93
126
109
132
107
122
83
138
74
98
93
104
146
118
127
69
86
89
126
67
106
128
37
69
79
56
74
124
168
92
99
138
118
122
114
55
126
92
119
126
104
151
91
122
138
101
111
56
122
120
56
123
180
178
99
91
139
104
123
122
122
92
127
105
109
163
134
118
138
55
124
111
83
97
138
171
56
178
134
111
79
79
113
110
98
93
105
77
122
134
131
128
169
124
95
69
91
130
103
122
69
68
126
178
97
139
178
55
69
111
117
75
123
37
122
138
182
109
178
138
120
144
144
138
128
127
126
110
132
56
58
128
77
120
104
69
104
55
88
75
92
128
67
122
109
86
180
109
129
123
126
123
88
123
139
165
144
74
55
58
58
110
69
58
163
92
139
119
89
144
105
132
134
119
110
144
152
56
55
104
128
146
120
138
108
122
92
105
58
105
94
101
92
167
105
92
110
92
140
111
134
83
139
128
69
92
139
142
126
142
118
95
105
110
126
110
55
83
152
107
122
114
139
118
111
69
84
127
55
105
139
92
93
128
92
139
127
151
152
127
84
122
69
119
119
107
69
86
37
109
99
106
104
67
112
127
152
128
107
128
151
164
152
79
158
78
79
97
37
104
119
79
92
119
79
68
86
37
144
92
122
126
58
124
138
144
83
144
93
69
138
164
121
119
114
56
169
86
99
99
127
105
92
124
152
107
55
144
126
92
91
102
144
84
105
92
128
112
168
56
56
113
55
58
167
120
136
89
67
56
112
93
110
110
75
111
124
123
92
119
118
69
58
67
178
110
110
127
127
91
87
122
107
69
199
123
139
115
55
140
144
58
117
119
110
55
86
110
126
67
144
124
127
138
122
126
128
144
128
92
145
113
111
75
139
104
135
108
55
93
80
91
91
122
55
131
149
110
55
83
132
93
105
138
139
110
178
126
123
67
67
92
55
188
163
55
138
115
56
105
69
67
122
69
144
140
79
179
67
57
144
115
72
93
110
126
126
128
105
64
69
164
67
69
93
140
112
55
92
86
110
92
117
37
140
99
75
55
122
105
138
105
178
86
138
146
127
126
58
169
104
93
80
132
127
140
37
67
92
138
123
55
171
79
56
100
55
134
146
139
92
171
112
67
169
109
104
144
104
88
108
92
67
92
138
110
182
110
137
145
131
122
134
106
127
86
148
98
115
105
141
105
169
86
109
92
86
178
92
139
112
86
77
180
138
79
144
92
110
105
83
152
138
104
69
178
93
132
55
171
140
93
93
72
126
131
56
162
86
67
178
105
75
92
83
105
126
103
138
98
122
67
138
95
99
93
182
144
105
77
112
92
135
144
128
105
112
105
104
103
178
105
122
83
91
105
69
92
79
144
93
144
77
103
108
93
88
117
169
122
139
55
103
92
122
69
91
131
105
107
93
107
95
101
128
127
69
103
67
127
55
55
138
55
146
104
139
93
92
122
69
107
67
123
92
163
152
132
144
139
105
93
144
91
127
126
92
126
134
122
92
126
92
122
77
37
92
171
69
110
122
107
139
77
129
123
94
178
132
158
150
92
79
105
55
103
107
109
55
144
92
122
95
122
111
69
110
74
145
92
79
110
137
92
152
83
123
93
37
115
146
127
126
37
105
105
121
55
109
93
67
84
169
178
139
122
72
109
92
139
78
131
165
122
158
112
104
108
123
37
102
146
79
109
55
96
108
98
75
105
119
93
138
124
93
104
69
56
110
123
93
56
139
93
67
92
132
111
138
122
132
37
146
58
138
118
105
105
169
126
92
152
132
95
109
92
146
126
93
67
55
139
86
110
67
94
152
127
56
113
85
79
178
139
37
110
56
122
58
55
56
67
127
122
93
105
74
86
122
37
128
117
140
138
135
92
105
74
123
115
92
138
138
68
105
138
77
126
107
126
199
111
141
55
92
119
138
104
119
122
58
86
139
83
79
92
105
144
127
105
144
67
92
118
83
92
178
110
102
92
56
142
122
107
110
178
139
110
100
55
120
127
58
168
92
138
101
107
129
83
127
126
122
55
105
105
86
107
169
178
111
88
91
74
67
152
117
37
105
122
105
110
148
110
93
128
92
91
110
111
93
122
92
110
180
132
117
126
123
122
75
171
151
67
110
123
93
105
92
127
178
74
122
92
74
91
108
93
56
92
168
122
111
134
102
92
95
121
67
122
37
81
56
127
56
92
168
55
93
109
140
55
110
104
55
56
130
126
104
128
79
139
93
128
168
107
117
122
100
78
127
123
55
92
122
126
92
56
163
109
67
119
58
100
92
56
58
78
138
178
93
122
120
83
122
109
128
128
110
138
122
56
84
104
152
118
119
139
92
118
104
134
134
105
106
138
130
56
128
152
102
92
112
110
118
115
104
55
67
122
126
75
146
139
132
67
110
86
37
127
145
139
178
55
105
128
74
119
58
93
89
67
55
79
127
93
126
92
139
98
69
126
93
119
55
104
143
92
126
100
105
139
107
144
89
114
139
138
126
131
93
182
105
83
122
55
92
99
91
55
124
74
128
55
92
143
102
122
131
56
130
126
137
138
114
123
128
56
127
126
144
128
92
67
67
117
55
77
118
92
100
98
55
171
122
160
136
93
110
135
140
107
138
55
138
126
109
131
92
138
138
105
167
89
86
144
131
110
110
127
104
127
137
105
69
93
102
105
199
124
110
153
93
138
92
99
110
78
135
56
128
128
92
111
139
144
92
67
74
118
86
144
104
141
74
131
93
169
138
104
93
110
99
146
105
123
132
117
169
119
86
142
110
140
139
56
68
105
84
67
139
126
142
92
139
111
128
102
93
122
92
86
56
93
98
74
110
101
122
56
140
55
109
105
105
92
105
56
77
92
112
58
137
105
110
199
123
86
104
122
169
112
105
81
86
127
74
169
100
152
104
93
92
55
93
138
164
55
126
102
107
55
138
122
67
58
126
55
122
92
55
178
126
37
119
132
105
139
93
86
91
169
146
104
92
71
37
124
135
92
126
140
110
104
72
110
136
56
122
67
104
146
105
160
106
110
152
91
126
88
107
132
120
148
75
55
109
138
126
58
55
89
127
67
105
105
152
105
101
105
107
123
128
96
144
74
75
110
126
77
92
122
111
144
92
139
130
178
117
56
92
92
74
134
86
77
126
106
97
92
55
126
103
110
56
68
115
127
122
77
115
100
104
93
110
114
110
131
55
122
55
163
105
105
124
139
119
122
137
146
83
126
111
138
146
55
126
37
144
142
93
144
100
109
158
122
120
126
74
134
124
67
139
105
105
137
129
58
67
93
128
68
69
89
138
100
169
56
112
109
124
127
67
91
127
69
92
67
146
81
142
69
86
92
123
126
95
37
119
105
84
146
56
138
123
92
152
111
92
126
74
58
126
69
56
92
80
120
146
99
92
160
37
74
180
178
67
104
100
58
178
126
104
55
67
109
168
131
122
92
92
152
105
74
92
131
123
136
78
144
56
177
107
119
110
134
92
67
81
58
105
105
134
144
126
126
105
76
93
55
56
56
104
105
77
123
120
103
105
92
99
139
99
110
107
92
67
99
139
58
55
77
122
74
140
105
147
146
158
128
77
138
104
75
134
107
110
148
84
134
67
122
55
105
104
67
148
107
93
106
79
92
93
93
91
110
92
93
122
100
113
67
89
58
92
75
123
122
99
55
110
126
92
55
140
109
120
58
104
171
124
122
55
84
188
55
164
138
136
152
109
105
102
122
55
122
100
100
55
91
102
56
37
152
140
55
136
139
162
132
120
126
122
134
113
75
104
160
105
67
144
110
92
102
146
110
92
93
104
138
124
55
88
152
92
105
160
110
89
139
122
75
126
122
138
93
95
126
105
146
144
79
105
55
110
122
93
69
105
126
77
138
105
55
86
93
69
110
110
56
138
55
74
122
122
127
139
124
126
132
128
67
134
92
114
75
68
148
139
110
75
140
141
105
138
109
129
146
86
92
139
58
146
169
110
89
101
67
178
192
58
126
56
110
97
109
110
138
112
138
105
86
99
69
56
104
55
119
131
58
58
102
140
144
126
112
67
158
123
127
80
137
92
84
92
67
110
92
178
140
86
122
74
75
110
56
139
37
110
137
92
138
79
160
110
55
55
110
152
169
92
55
37
56
118
128
92
122
110
132
83
92
122
104
104
127
55
58
56
128
126
91
114
138
92
69
139
118
110
92
67
110
92
162
93
178
110
141
127
55
126
119
148
103
97
116
138
139
93
126
138
58
146
79
105
68
103
58
110
92
122
110
104
148
148
58
108
107
93
37
97
105
55
93
92
58
55
101
127
109
119
162
107
119
93
131
125
56
149
126
181
138
148
123
58
126
163
132
132
152
37
152
146
129
89
91
122
92
123
126
160
37
144
110
93
118
67
93
148
92
106
114
92
110
123
138
37
86
91
138
55
69
110
100
111
124
67
122
123
77
110
102
140
144
86
56
74
105
91
140
105
79
37
134
99
98
122
110
79
152
122
56
110
92
107
107
123
122
86
93
123
122
152
37
110
148
75
109
84
55
77
138
134
58
171
158
56
122
127
92
58
119
169
104
169
55
104
86
37
144
138
110
122
69
122
75
108
123
156
129
105
169
144
79
69
123
81
92
158
79
105
122
137
67
56
93
92
126
169
110
106
106
160
111
77
109
126
67
119
102
138
55
110
129
69
111
79
110
146
100
75
124
99
110
37
37
140
122
84
83
92
56
58
122
110
138
91
92
146
55
91
107
69
104
127
119
86
104
144
67
58
178
139
93
110
98
136
168
77
118
104
67
99
79
99
74
111
105
152
122
94
56
158
105
114
105
110
122
145
101
136
84
126
103
67
130
160
105
56
126
146
110
109
105
74
144
55
55
69
104
56
84
102
124
37
79
178
110
77
141
144
78
124
138
98
122
88
110
114
37
56
92
110
110
105
140
127
81
37
140
55
106
92
99
110
100
169
75
101
137
178
114
104
55
125
58
110
148
122
145
93
137
131
64
178
104
56
79
56
108
124
55
93
122
169
110
56
138
146
146
74
92
86
120
123
110
93
103
92
105
95
126
124
104
92
93
99
58
140
74
83
55
123
127
102
93
56
107
86
86
118
69
55
113
148
110
119
138
138
107
138
102
101
107
104
144
178
105
93
146
119
55
56
104
74
88
128
86
67
126
113
138
146
148
136
92
86
110
167
86
152
126
136
100
104
87
110
123
140
178
107
146
55
152
110
144
168
180
163
157
122
55
124
122
124
37
104
93
104
58
91
146
86
93
124
75
93
98
92
74
37
117
126
119
111
118
110
117
136
110
136
110
93
92
92
106
138
98
58
122
171
69
92
126
55
67
75
126
110
137
37
138
126
109
134
146
127
119
92
105
105
37
55
92
144
105
141
122
103
139
171
37
128
126
81
138
97
55
92
127
92
77
138
112
126
100
109
69
110
122
100
112
138
105
111
138
79
56
145
58
99
93
56
105
138
144
105
92
105
103
107
86
124
67
117
171
104
127
92
135
92
105
37
97
86
69
138
104
74
110
110
101
110
138
93
139
122
124
112
58
124
132
92
77
180
92
112
108
113
68
131
86
132
105
144
56
127
139
37
99
79
92
107
122
75
140
92
112
137
130
100
178
69
137
107
152
122
140
120
58
92
55
158
120
135
37
139
132
138
139
128
79
131
104
69
126
167
101
92
148
139
119
139
74
37
104
86
92
139
74
55
55
92
55
105
78
171
127
139
123
178
55
74
67
119
84
148
178
138
138
105
126
144
58
162
103
111
92
99
37
122
105
158
92
122
110
152
148
152
55
56
138
127
146
56
139
122
37
114
122
144
56
144
128
91
99
122
97
122
97
110
92
86
110
121
148
101
78
110
67
69
138
130
138
77
99
55
144
91
67
126
152
92
69
99
122
105
55
97
117
56
130
111
139
104
92
55
158
144
138
123
118
100
68
140
75
178
110
128
74
99
142
123
69
58
110
105
56
139
148
104
56
89
127
108
122
110
119
131
119
106
149
122
104
92
84
69
84
91
138
150
37
119
117
79
105
114
110
127
111
122
110
122
139
105
92
91
129
126
92
83
137
127
112
92
126
67
55
105
114
119
144
55
92
67
97
144
122
67
83
102
114
134
144
139
105
110
110
122
67
148
103
122
144
126
120
120
119
103
110
58
140
126
91
69
169
131
122
138
136
55
108
86
103
123
105
83
148
87
122
132
92
110
105
56
123
144
119
152
105
124
74
138
180
140
138
81
146
67
109
105
105
98
122
171
67
103
122
134
168
110
102
56
58
74
138
122
95
67
126
110
56
134
128
106
92
67
68
138
104
77
56
92
56
93
178
122
123
93
55
105
122
140
55
69
55
84
134
127
138
146
55
88
104
56
122
118
127
67
69
105
92
55
110
109
144
56
178
92
124
126
89
139
104
178
55
126
152
178
67
69
93
105
67
134
99
86
117
92
102
129
152
58
139
105
111
110
92
128
126
139
123
92
122
79
92
124
103
84
111
130
56
128
146
110
105
195
110
93
124
111
129
55
56
128
105
139
92
122
56
110
178
152
91
139
78
96
104
67
55
79
123
134
138
134
109
134
169
128
122
105
132
93
124
99
37
67
168
122
130
56
104
131
105
89
123
56
80
146
92
145
67
96
92
127
126
92
93
107
122
93
120
111
37
79
144
93
178
93
126
92
178
99
81
104
74
56
128
105
122
109
37
92
139
55
152
104
86
138
109
128
37
91
126
91
126
105
128
93
67
58
126
134
69
128
93
107
97
130
56
111
130
55
168
55
37
144
104
165
127
105
105
58
92
93
87
98
56
178
75
55
123
93
152
138
105
109
139
93
91
55
79
58
58
122
122
127
130
131
137
138
92
91
119
93
89
68
69
148
138
119
123
92
55
111
75
92
138
92
122
92
91
141
55
133
58
122
105
128
110
74
69
131
112
37
105
124
120
138
110
144
77
138
127
168
168
138
178
69
93
123
119
105
56
69
93
169
138
138
110
122
122
120
128
110
126
103
92
91
126
86
105
79
110
152
109
178
180
164
126
79
104
92
55
122
113
86
97
67
131
119
92
102
79
86
108
55
67
55
126
135
67
105
93
37
127
123
67
132
100
77
122
171
58
147
150
55
58
138
75
67
146
123
55
86
80
119
152
69
86
92
119
107
79
107
118
55
144
105
92
67
104
74
145
102
139
132
138
158
58
37
122
126
74
91
74
104
169
92
126
89
171
144
92
58
109
119
78
148
56
74
126
110
109
110
126
110
92
105
112
144
105
104
110
106
97
95
100
119
136
134
126
89
152
180
103
128
55
127
122
102
110
55
110
114
69
97
122
122
169
56
37
132
67
114
110
128
126
178
88
171
126
105
139
93
103
132
139
126
127
164
92
144
105
138
110
104
103
148
164
105
178
58
110
122
122
89
67
169
92
74
69
99
128
86
100
69
67
160
99
128
138
89
122
56
139
56
127
144
138
92
119
92
55
105
92
167
122
93
122
92
124
158
122
131
37
120
139
122
128
112
69
122
77
105
138
146
120
126
122
178
105
72
105
104
105
56
122
112
161
123
122
182
93
37
119
138
74
139
122
92
58
79
37
105
152
131
56
69
139
58
55
178
79
92
162
110
67
92
93
146
86
79
105
145
104
111
102
126
73
67
143
109
92
137
69
135
107
138
127
74
169
105
131
122
122
74
55
152
131
86
119
75
58
92
56
117
114
128
105
138
91
83
178
127
56
148
105
135
107
104
92
105
134
101
55
151
128
171
100
126
104
58
171
93
140
55
119
131
99
139
55
114
105
104
67
162
169
110
92
119
79
128
130
119
130
140
111
58
99
178
136
93
127
105
123
105
111
169
74
109
144
119
134
124
67
158
144
138
56
126
67
79
138
93
56
110
97
55
160
74
109
119
79
118
89
140
78
131
67
128
111
102
109
136
110
138
79
93
107
100
162
67
138
69
122
92
95
55
140
135
93
97
119
139
112
75
131
109
84
56
111
99
97
119
92
106
55
104
128
139
110
146
99
110
67
73
152
92
94
104
128
105
97
128
67
55
146
131
104
138
105
80
180
107
105
89
104
147
92
110
126
72
123
109
144
123
92
110
111
134
105
92
122
168
58
128
105
93
109
126
58
115
104
86
91
104
58
110
58
92
164
79
123
188
84
55
120
110
100
92
79
55
192
127
126
138
37
130
83
109
139
105
180
126
79
146
122
127
120
110
67
171
110
141
135
136
127
37
84
136
56
122
149
91
119
105
177
110
104
105
146
104
79
104
127
146
55
122
94
156
126
128
126
37
152
67
111
69
123
86
37
105
105
117
126
122
105
77
75
104
144
144
149
92
144
104
110
109
138
92
99
146
67
101
119
86
145
104
132
132
123
119
103
119
124
100
110
83
119
92
93
104
92
92
126
99
126
92
91
139
77
92
127
77
148
138
110
91
92
121
67
130
132
141
101
119
126
107
134
136
69
106
104
122
55
104
80
79
77
138
110
92
69
105
92
158
152
122
144
67
152
140
69
56
97
68
114
119
92
131
74
122
122
117
122
114
127
119
37
127
126
105
139
37
106
103
88
37
107
92
139
103
56
83
119
110
134
139
67
111
105
144
146
92
119
120
112
168
138
104
126
95
119
114
105
144
122
105
84
92
92
138
67
105
93
108
167
126
55
120
92
122
139
104
91
92
111
67
81
139
122
140
127
122
104
118
110
86
110
55
126
105
77
81
56
178
139
122
79
86
100
92
138
92
120
74
122
137
56
112
126
122
55
165
69
130
180
58
109
137
81
99
83
146
55
138
55
92
128
138
105
123
131
171
180
126
169
79
152
122
138
122
178
91
167
99
86
92
56
105
138
164
105
92
55
69
124
105
126
140
163
86
124
95
104
110
122
158
92
100
126
86
56
122
66
130
37
110
100
138
122
110
105
134
135
152
152
167
105
104
119
74
138
128
55
192
86
86
127
178
158
67
55
69
69
126
92
127
92
55
75
108
67
67
146
135
178
134
105
104
138
105
89
187
105
127
112
102
105
86
123
67
108
58
92
148
119
79
169
79
56
138
123
138
145
79
105
37
114
119
110
68
81
122
93
91
67
124
119
134
55
128
93
93
55
56
37
122
138
77
110
93
84
139
56
146
123
55
55
146
93
93
139
106
140
69
91
69
104
146
74
162
122
149
130
69
92
127
139
109
105
110
119
126
58
37
137
140
122
134
74
134
107
114
104
104
69
123
83
105
92
55
75
92
37
122
100
138
98
152
140
58
104
98
169
139
144
126
120
152
93
79
68
92
110
107
55
169
157
92
61
147
55
58
141
105
93
126
86
83
127
114
69
67
67
83
162
122
117
148
55
105
79
127
111
123
110
163
138
122
105
86
140
126
169
118
37
130
115
138
91
79
55
55
126
99
127
199
122
110
107
83
138
83
93
138
144
105
37
122
138
69
120
126
138
92
108
144
89
136
127
168
55
79
108
55
139
69
111
110
67
101
100
105
79
105
110
126
146
55
136
169
72
37
138
74
92
110
55
152
120
93
138
93
58
118
86
86
136
101
152
178
92
152
67
74
91
56
144
92
119
69
105
146
138
112
37
139
58
124
75
130
58
138
55
105
120
97
139
56
139
37
110
72
122
75
131
122
128
148
132
122
122
122
138
77
58
91
55
139
126
120
67
139
126
109
122
122
111
81
101
69
126
178
92
107
146
146
37
56
139
37
108
92
77
98
138
106
67
86
105
109
104
93
105
79
164
105
92
122
101
92
107
112
127
92
127
110
138
119
79
148
84
138
109
138
55
134
119
169
140
55
139
92
80
124
92
122
92
102
77
130
178
105
67
93
79
58
99
178
75
103
58
119
92
104
107
127
126
138
92
67
178
146
67
169
122
164
134
132
136
92
120
126
105
122
146
103
111
92
129
67
144
140
56
69
67
91
119
128
110
92
55
120
92
122
67
105
111
165
122
127
55
109
97
103
118
110
92
178
140
97
93
55
122
92
131
58
169
58
142
122
92
56
138
69
67
110
100
86
122
122
93
117
152
152
146
160
68
171
86
122
104
56
56
104
134
91
126
67
78
110
56
104
94
128
69
107
178
105
152
55
124
58
99
91
148
74
127
120
105
178
55
84
105
84
55
138
55
91
55
79
92
144
56
134
110
100
128
126
152
110
84
137
123
144
128
171
127
118
134
92
55
138
101
86
75
86
122
126
114
55
127
171
69
110
92
138
105
122
178
55
109
69
86
105
105
67
132
93
105
118
152
110
77
110
104
178
105
92
126
111
55
55
84
105
138
97
93
178
93
55
144
67
56
104
164
127
126
104
123
152
110
126
167
92
72
152
163
88
162
55
103
129
110
123
138
128
119
111
128
160
139
68
105
55
101
126
122
89
93
61
37
180
74
158
124
124
139
142
79
110
93
167
68
56
91
138
138
68
119
110
75
37
127
104
92
180
79
152
74
104
168
146
149
117
171
178
92
67
75
126
122
94
55
104
138
107
89
75
146
122
109
86
91
58
126
74
96
138
138
122
79
127
152
109
114
37
55
123
56
146
126
138
93
126
111
138
171
105
178
140
178
105
138
158
91
92
67
84
149
128
93
79
139
88
64
144
122
58
77
92
67
97
107
55
93
67
79
92
105
119
67
126
138
104
109
169
136
134
56
107
109
119
55
92
130
119
162
127
79
138
93
158
122
68
37
146
138
130
79
122
144
55
37
102
122
92
86
122
131
37
146
89
104
130
103
110
122
92
99
92
99
67
111
107
163
119
104
126
79
110
101
92
127
84
152
69
142
128
139
89
56
55
104
67
146
146
126
88
134
130
140
92
110
75
56
188
146
81
95
83
91
110
110
124
122
122
92
104
104
56
132
122
55
111
69
80
139
67
75
140
144
178
55
100
92
92
93
179
124
107
76
130
122
97
86
78
104
92
123
56
83
152
112
178
139
178
91
110
112
109
55
138
98
122
122
55
180
55
55
169
178
171
118
139
110
105
124
122
58
138
93
152
148
92
171
148
105
79
91
149
92
160
101
37
103
112
117
97
123
131
75
76
112
68
125
58
126
128
178
119
93
119
105
92
67
124
75
91
55
104
55
148
93
92
125
37
105
92
78
58
138
127
105
117
93
83
55
134
105
136
122
37
128
169
37
100
108
97
99
69
75
91
58
92
67
75
86
92
37
182
126
67
58
92
132
138
79
91
55
110
117
93
130
126
126
95
110
78
138
72
178
126
99
104
110
111
91
178
79
115
37
164
122
110
68
169
56
156
92
105
122
126
122
95
113
55
67
105
109
110
112
67
146
110
122
79
79
55
91
169
103
140
111
146
144
69
162
79
114
75
105
86
146
105
126
119
102
104
98
103
92
147
126
56
128
37
142
169
69
119
105
55
55
122
111
69
56
139
96
134
152
56
105
126
122
55
95
110
65
69
112
67
69
171
93
122
68
113
37
110
110
110
127
69
122
168
91
79
122
93
119
109
139
92
104
100
160
92
98
107
137
106
152
146
114
119
69
92
99
137
119
146
107
88
146
137
138
107
93
110
55
55
144
109
130
91
122
146
117
92
130
84
116
122
105
199
168
122
102
119
55
148
168
138
104
132
138
144
99
67
110
122
101
58
58
138
104
162
146
104
169
144
87
104
106
107
178
110
56
123
122
92
68
131
104
86
107
122
92
37
92
104
55
78
86
144
109
92
122
55
118
95
110
138
139
149
127
37
91
93
79
67
55
123
144
117
92
87
152
92
158
58
55
104
123
77
128
171
104
105
101
105
144
152
130
55
93
124
58
122
86
122
92
37
104
78
67
93
92
92
122
105
109
110
105
37
163
178
152
55
138
146
144
144
122
115
121
146
55
107
140
122
140
105
121
91
120
105
92
109
156
92
69
89
144
37
92
92
97
110
101
136
162
110
132
98
74
178
140
138
124
138
92
91
92
91
104
84
81
89
105
135
131
99
105
104
119
127
163
92
126
169
149
97
142
178
109
137
177
104
37
105
99
89
105
128
134
126
92
87
119
69
56
110
124
77
68
93
67
55
86
114
56
146
56
55
140
109
102
92
56
104
138
56
139
93
122
122
92
124
145
92
126
114
118
122
122
104
89
138
178
110
138
138
177
75
124
67
105
122
93
168
123
86
104
134
55
55
93
122
55
93
98
127
122
154
69
126
99
55
104
169
74
67
118
105
110
110
122
56
55
58
55
152
126
111
137
93
122
98
126
74
77
69
58
148
109
69
152
199
67
56
92
117
107
132
92
122
92
158
128
136
77
93
177
96
126
58
119
144
56
119
102
107
115
72
144
83
126
119
178
119
152
104
119
138
99
111
93
131
79
108
167
134
91
122
58
55
105
124
153
103
168
92
102
138
146
138
72
104
92
92
121
74
93
134
111
55
134
138
55
124
68
111
74
55
92
79
163
178
126
108
78
37
68
67
105
119
105
77
119
79
110
110
144
74
55
78
114
104
128
148
55
92
93
56
132
138
145
79
75
56
138
119
91
110
126
104
83
122
97
132
117
105
123
142
58
37
67
139
139
100
104
146
114
164
98
110
126
138
130
55
92
79
128
56
120
75
110
169
92
67
37
110
101
55
122
75
68
178
105
55
67
104
134
144
131
69
139
91
55
83
150
92
100
178
108
79
110
128
144
102
139
111
69
105
93
109
92
136
152
104
104
126
64
58
37
67
147
89
55
128
144
122
134
67
58
106
148
105
112
93
117
164
93
74
138
124
127
140
37
115
92
92
144
188
148
139
144
102
98
162
122
56
136
131
146
37
93
144
138
188
69
110
126
169
109
125
55
105
105
105
104
55
55
77
178
97
105
148
178
110
139
104
105
84
127
131
98
67
131
75
127
110
92
97
169
104
100
93
164
122
69
67
99
92
37
139
93
55
157
77
122
102
80
93
148
100
167
158
92
128
107
125
122
105
69
68
110
108
168
77
127
132
105
67
56
127
139
91
145
126
67
119
103
55
138
134
109
95
110
138
110
158
134
138
106
119
92
105
146
140
55
92
97
132
74
127
93
37
92
55
123
134
74
55
58
132
122
104
98
123
105
160
142
92
138
129
146
108
68
56
144
92
122
67
124
92
119
131
73
92
146
104
110
68
55
105
111
104
104
92
152
130
92
114
106
114
109
55
139
122
93
107
105
56
55
99
92
105
111
146
56
103
119
119
126
99
118
113
119
104
105
111
138
56
86
110
79
111
178
128
138
110
104
101
58
93
122
83
122
125
137
178
139
55
77
123
138
164
134
144
105
124
126
144
128
144
126
58
118
58
178
97
93
86
37
55
138
100
104
144
55
107
105
69
110
93
138
55
164
138
110
118
110
77
130
37
79
98
104
122
122
169
126
120
169
122
81
56
86
93
128
72
144
127
137
55
110
92
84
92
93
169
56
74
112
104
147
129
105
139
109
139
97
91
111
110
110
92
93
110
67
37
55
92
117
83
119
105
119
103
126
110
122
152
129
74
105
145
105
93
92
148
158
126
103
164
104
126
92
92
111
119
122
178
139
80
122
92
91
55
123
105
104
92
127
139
131
55
140
67
144
109
134
74
123
97
89
107
69
101
110
92
101
140
91
99
110
92
122
79
92
86
100
75
67
55
105
67
132
67
107
139
144
93
148
67
139
110
100
58
122
69
128
93
112
126
122
110
67
163
92
56
144
92
148
107
67
81
152
105
122
105
127
105
78
55
92
79
122
169
122
69
86
138
92
67
104
138
105
55
92
98
111
182
37
171
178
37
107
55
110
139
146
128
69
122
130
105
99
134
92
171
55
148
138
74
139
126
146
144
92
88
109
105
104
110
55
121
102
125
123
127
126
55
92
92
114
67
124
102
105
58
67
146
169
58
92
139
105
67
92
126
105
111
110
134
169
152
56
77
122
89
138
74
87
123
104
127
37
55
146
67
109
122
98
189
56
110
140
107
55
122
75
64
74
108
104
169
165
92
55
77
79
178
92
121
171
68
92
67
105
105
110
178
164
127
67
105
104
105
137
55
88
84
110
122
95
67
55
119
99
56
91
110
139
127
148
99
79
93
105
139
105
146
55
110
122
101
107
130
126
126
169
110
86
138
92
37
92
129
67
67
105
104
37
138
56
105
93
101
77
122
92
122
123
169
144
122
152
69
137
126
69
127
123
69
83
75
144
114
171
110
105
101
122
91
122
55
124
158
67
171
122
169
107
73
88
109
92
86
107
78
99
163
103
93
55
165
97
128
105
105
92
122
105
140
58
122
91
74
104
105
139
92
55
138
109
124
74
126
138
105
55
91
122
127
128
107
92
88
152
171
67
91
100
114
79
182
69
123
131
136
146
98
139
138
110
123
122
144
122
92
144
86
78
92
99
37
180
105
115
58
122
111
69
55
106
123
139
164
98
124
122
104
83
112
98
37
97
129
148
67
126
146
158
122
95
105
91
92
55
105
144
141
144
67
106
100
77
126
123
122
109
103
140
79
92
56
131
138
124
104
122
56
148
55
37
98
93
58
56
98
148
110
58
165
122
98
117
92
55
139
146
123
105
130
142
123
199
122
79
110
138
105
99
137
92
104
115
105
100
131
77
105
93
134
104
79
67
100
107
75
103
55
75
109
147
138
144
163
122
140
92
130
104
131
104
98
152
55
117
126
121
93
134
122
139
92
144
105
55
112
122
105
55
138
99
86
77
67
139
167
138
105
180
134
55
55
92
91
105
56
103
151
148
99
67
132
105
75
148
134
111
178
148
77
98
92
102
169
92
127
67
104
55
128
138
109
92
158
56
123
121
55
67
55
104
123
127
105
92
138
37
126
105
178
74
140
83
162
55
139
140
107
92
55
144
137
131
67
88
55
74
110
84
75
110
75
138
69
144
92
83
92
122
127
93
122
68
72
138
124
160
92
126
69
138
178
134
138
105
92
58
67
123
156
92
91
122
56
92
83
58
69
104
79
128
83
79
152
93
92
111
97
126
114
126
93
67
125
104
92
112
115
122
77
144
99
86
104
146
92
138
69
93
93
134
95
146
178
139
67
93
79
112
108
93
67
89
86
92
111
111
105
110
124
58
138
91
56
119
55
91
134
131
67
107
119
123
92
55
126
92
104
56
134
145
88
126
128
55
99
144
74
169
139
152
139
146
114
57
79
104
92
103
58
122
97
144
56
99
138
108
149
56
92
178
86
69
178
131
110
67
163
68
138
146
104
86
146
58
169
94
81
178
55
56
182
72
119
99
111
93
37
124
110
92
110
99
140
122
56
105
83
144
162
92
56
122
109
109
127
151
74
91
122
37
128
92
93
92
55
131
67
67
104
152
56
105
109
74
144
86
107
93
110
168
102
93
68
124
55
105
128
122
55
109
119
97
100
107
110
126
152
139
122
103
68
109
122
128
93
122
123
139
178
75
104
75
110
112
114
67
128
67
139
92
122
101
145
111
131
113
139
55
110
56
110
119
122
122
104
129
93
56
103
146
114
107
122
130
171
92
58
67
100
128
127
111
130
139
67
100
106
138
108
126
105
55
69
122
75
77
105
93
92
93
119
119
55
178
178
110
55
110
69
100
37
104
55
124
114
75
83
86
109
169
92
115
122
138
171
124
122
91
123
110
109
68
122
58
132
122
79
92
110
93
135
105
138
136
92
103
98
95
110
110
93
119
91
86
119
135
138
67
127
128
126
55
178
92
79
58
115
126
111
101
144
110
92
114
152
55
55
55
55
127
105
93
37
128
122
168
119
75
144
131
122
127
93
117
111
95
55
138
67
140
122
67
178
105
146
92
79
77
139
131
139
86
55
67
136
86
110
152
91
67
100
67
122
91
147
103
126
92
77
92
136
55
138
104
122
103
110
92
56
122
124
55
93
156
95
93
122
68
108
58
92
139
149
37
146
138
115
83
102
109
104
126
135
122
165
92
105
108
89
97
104
120
146
122
110
93
120
67
69
131
95
55
180
91
178
105
126
138
69
110
67
178
110
56
58
114
178
122
92
171
55
112
93
178
163
146
37
119
138
119
146
119
67
92
122
56
92
89
84
55
110
122
140
105
74
98
88
128
104
110
67
128
104
55
67
122
140
142
93
146
138
92
56
77
139
105
103
127
92
138
92
37
180
93
95
91
58
126
105
139
110
101
138
132
92
107
67
58
138
86
93
144
69
107
119
140
79
85
152
127
55
126
105
130
92
86
109
111
111
178
138
128
139
92
122
105
92
144
133
91
123
168
58
77
56
55
156
139
120
122
106
105
110
97
91
128
55
138
119
144
105
103
56
106
144
79
86
58
178
112
92
138
72
79
119
104
128
92
105
77
111
126
127
138
195
67
110
105
83
123
138
97
123
180
104
58
182
87
119
137
104
137
69
98
122
122
104
138
67
110
98
105
138
114
122
55
69
147
135
160
92
110
99
168
56
109
122
56
92
68
138
56
88
37
107
79
55
86
131
126
111
110
130
134
109
110
158
134
126
73
138
105
74
68
93
164
55
56
112
119
123
104
130
79
111
132
92
92
122
111
105
162
110
92
126
56
55
88
92
102
91
123
178
109
104
152
171
110
84
37
55
55
104
112
67
93
110
127
110
124
93
137
123
79
148
37
102
146
117
127
138
144
134
100
64
69
92
168
126
67
86
91
74
132
126
91
107
104
92
178
97
126
144
37
69
122
101
86
37
110
92
84
152
67
93
136
140
93
93
67
92
144
93
139
93
107
122
55
37
67
111
118
139
111
65
132
98
104
122
55
92
126
58
105
122
127
86
111
144
67
139
122
56
79
163
69
126
122
55
110
92
92
109
109
126
127
152
75
83
37
102
109
112
110
107
122
105
122
138
123
92
106
97
37
103
93
55
98
160
123
84
55
37
55
119
91
101
126
76
118
126
65
110
163
152
55
114
72
119
123
67
138
105
177
139
104
58
139
131
126
146
58
128
140
100
97
92
105
162
83
171
134
126
107
139
111
93
110
37
89
37
138
128
55
77
86
126
86
140
178
139
178
109
67
104
103
140
127
93
55
122
128
171
107
74
110
118
127
86
64
128
138
77
163
95
55
71
145
77
105
138
106
180
37
104
55
110
138
128
127
97
139
110
139
67
77
140
93
100
103
55
111
110
139
67
144
137
58
102
122
56
104
138
128
130
168
75
73
55
178
105
69
122
162
115
92
105
105
79
144
119
93
105
178
101
55
125
109
93
86
122
138
118
158
92
92
122
141
91
138
92
77
102
139
122
67
148
95
104
132
122
87
126
118
169
169
127
93
146
56
111
67
105
178
139
92
92
55
152
98
148
58
93
79
105
126
55
138
56
105
122
117
79
138
110
110
129
148
110
114
37
138
123
134
122
92
122
92
77
126
67
133
79
138
138
111
107
100
126
139
72
93
139
178
162
138
115
110
110
105
67
67
86
110
56
138
55
104
89
178
58
111
138
134
56
55
92
115
79
92
127
111
91
92
126
131
55
67
139
105
132
87
169
125
162
105
93
162
92
77
130
99
171
110
75
140
79
137
67
169
83
58
140
111
55
158
98
117
69
178
139
118
107
103
95
86
121
126
104
139
84
123
125
110
92
93
79
119
97
146
139
109
81
105
103
92
122
100
67
88
122
37
103
101
105
105
100
110
75
104
55
55
56
56
122
55
122
126
139
91
69
92
169
91
92
92
95
92
58
122
83
75
126
95
107
165
163
58
126
123
139
110
136
55
83
119
171
126
110
55
119
55
92
74
123
138
110
84
122
99
178
125
105
56
182
101
110
55
75
74
126
67
69
168
126
110
92
58
97
100
67
126
107
92
122
104
55
93
69
67
109
58
79
140
148
119
138
144
110
138
67
134
178
93
124
92
67
111
67
104
139
128
138
112
122
117
92
139
146
105
136
148
168
135
169
139
67
103
107
105
139
37
91
104
91
127
126
111
68
110
105
138
110
101
92
139
122
135
126
55
112
92
92
105
138
139
100
123
96
122
148
110
84
110
83
69
80
96
126
122
109
110
149
58
111
138
121
74
55
126
88
112
134
151
107
152
37
178
110
55
55
105
140
107
126
92
152
109
69
144
148
138
144
127
93
146
123
88
111
58
127
99
111
107
55
72
91
134
69
110
109
69
138
67
86
105
122
67
98
79
67
138
37
99
99
69
132
92
109
122
131
105
108
139
101
118
97
58
99
167
67
105
56
139
75
84
105
152
92
152
56
144
98
105
136
111
146
77
92
146
86
110
144
117
81
169
56
152
126
144
56
55
55
100
103
91
131
91
122
125
37
119
110
58
126
122
122
99
149
123
56
139
110
120
95
107
126
110
122
92
104
37
109
99
37
95
103
105
144
105
123
93
100
111
92
101
122
138
100
104
152
103
102
123
171
123
56
92
89
128
92
119
56
110
56
126
117
69
111
104
56
93
92
69
114
55
109
55
140
93
105
130
124
105
69
74
122
92
86
105
55
122
55
37
122
86
105
106
122
77
100
83
126
37
146
116
126
118
93
109
77
55
84
37
140
105
101
92
56
138
127
56
55
93
37
92
55
55
139
117
92
123
110
104
56
92
92
178
138
67
146
86
139
138
126
55
169
127
98
61
134
55
146
75
68
110
105
139
58
105
92
116
68
127
146
69
138
92
93
164
128
102
127
103
92
110
104
37
92
109
146
171
67
111
144
76
130
56
56
126
92
138
110
92
74
110
91
92
83
100
92
178
105
91
56
80
79
178
69
141
69
124
92
72
122
126
55
122
89
93
74
138
78
138
91
110
55
140
122
92
92
92
105
111
178
103
92
119
104
104
178
138
89
126
74
136
55
110
74
138
138
86
79
178
58
102
126
105
128
55
55
93
92
126
139
92
182
105
135
55
123
165
105
115
135
111
119
152
109
134
162
140
55
93
55
123
92
105
108
83
69
92
91
108
138
71
78
67
122
99
110
146
74
105
97
37
92
127
55
122
67
56
106
158
110
55
138
138
137
119
139
93
55
128
122
152
144
83
74
165
87
105
105
110
123
107
130
109
105
146
91
144
92
121
138
86
80
139
99
58
129
37
152
178
126
139
124
69
114
104
56
99
88
178
68
93
110
120
37
56
138
171
128
92
55
152
68
119
122
106
122
110
178
123
69
108
160
109
109
95
124
67
67
105
178
110
58
86
163
55
105
74
92
107
56
92
58
92
104
127
131
105
77
113
106
74
92
145
110
55
127
122
69
104
110
104
67
122
98
55
75
110
169
74
67
69
104
178
83
41
89
55
132
105
156
129
55
178
69
105
138
138
178
139
127
105
112
93
114
122
126
79
135
86
127
127
100
178
124
92
91
107
104
110
58
67
124
98
139
109
69
158
134
144
55
126
138
92
109
140
98
136
119
178
107
125
102
58
117
58
86
120
127
56
126
131
55
127
76
111
74
138
118
111
132
73
93
139
128
122
137
92
136
79
171
107
122
86
79
92
128
79
126
100
139
127
169
146
128
127
97
55
146
103
75
138
171
37
144
110
127
131
107
127
123
110
91
138
126
134
92
91
89
137
92
142
111
105
122
67
75
93
105
122
102
88
199
139
93
136
37
69
102
123
104
99
152
127
91
121
105
79
92
92
124
79
92
122
104
119
134
152
86
110
138
69
119
92
58
169
107
111
107
88
67
92
104
102
93
126
178
58
110
178
126
167
92
84
126
89
107
127
126
88
93
97
88
199
159
87
93
104
98
138
104
55
127
56
117
138
126
92
75
134
111
77
126
106
55
79
122
92
93
105
148
126
79
111
55
162
105
141
56
58
134
105
131
69
91
58
93
148
158
56
92
151
56
169
58
81
106
92
109
83
127
69
149
92
102
102
126
180
137
146
122
148
132
86
110
148
139
56
139
92
139
69
139
110
123
92
126
92
93
122
142
144
110
88
160
128
139
142
77
107
105
79
58
146
163
55
92
83
111
93
93
55
92
119
104
127
123
152
68
113
128
55
55
126
119
119
67
93
135
110
127
138
92
152
105
105
55
103
92
93
138
56
105
67
91
139
104
122
126
124
93
119
55
97
105
138
120
169
86
113
119
86
55
146
132
140
151
152
111
91
139
124
120
92
69
162
98
92
164
107
119
138
140
124
122
67
92
69
110
122
69
126
56
105
138
56
69
55
146
111
102
138
132
104
127
140
138
93
145
178
127
122
132
93
165
122
144
179
138
136
128
69
91
144
127
68
101
92
122
126
56
127
144
110
127
142
131
91
144
92
107
123
123
99
126
98
134
83
111
58
129
92
67
105
110
55
126
146
92
111
104
144
144
114
93
146
67
93
104
178
93
110
77
72
92
180
124
86
95
131
141
110
92
37
105
180
139
109
105
144
152
93
126
144
169
178
55
114
92
105
55
138
56
112
110
124
97
146
110
126
128
163
129
93
92
55
91
97
92
74
103
55
100
93
138
92
89
163
139
134
104
100
138
154
127
152
98
93
142
122
126
131
67
55
140
145
180
91
122
80
55
127
37
144
89
109
140
58
168
114
99
126
122
69
148
55
152
127
105
55
122
92
92
79
55
108
79
163
134
99
126
178
110
69
55
127
137
144
111
104
144
93
105
158
84
136
128
138
99
141
105
105
178
93
178
125
37
128
144
138
146
111
126
140
67
171
110
127
64
80
122
152
122
55
122
111
72
188
149
67
148
134
67
119
138
144
58
124
112
144
92
128
100
77
139
101
164
105
128
138
67
168
140
83
140
158
124
178
97
122
97
55
135
199
124
92
112
104
83
56
56
138
123
138
167
132
93
168
126
37
56
135
75
104
58
97
110
55
79
67
135
168
108
105
105
126
55
178
98
119
163
67
103
89
92
105
122
121
178
109
111
92
103
169
111
180
140
128
126
111
92
138
87
117
86
140
104
139
92
124
55
180
128
69
109
121
122
93
122
104
122
138
93
127
110
126
56
106
132
105
92
131
92
137
127
127
37
77
104
98
56
120
67
97
141
138
108
136
93
126
105
152
126
188
55
110
69
136
119
100
67
93
88
104
152
127
110
55
167
92
75
171
109
126
139
145
101
55
89
123
126
110
99
141
104
93
123
99
103
126
37
105
162
122
118
146
138
110
162
122
139
126
105
120
92
92
104
149
92
92
91
93
104
138
111
74
86
92
56
97
139
119
56
122
131
110
144
109
55
126
75
127
178
199
86
123
104
92
152
99
69
92
127
83
105
146
75
126
92
130
75
67
121
110
91
92
129
127
105
171
94
123
92
88
55
144
169
122
105
110
144
107
86
118
55
56
138
92
136
92
37
119
119
146
150
122
91
124
140
109
105
105
162
105
92
123
103
138
162
106
105
132
126
77
79
120
139
75
138
138
55
152
69
131
122
119
120
138
83
92
139
88
114
119
74
132
79
122
81
77
169
162
141
169
110
103
152
92
138
72
139
105
92
109
68
135
92
79
171
102
86
144
105
138
58
138
103
178
67
109
74
56
178
105
139
169
127
138
92
138
138
67
56
105
146
132
104
56
152
122
146
126
104
86
107
137
178
56
111
91
122
92
93
122
69
152
127
169
122
83
126
132
88
55
56
124
77
138
123
56
92
118
139
93
118
138
55
178
110
92
126
148
58
126
56
110
128
139
110
104
110
93
74
122
95
93
119
169
148
91
103
126
92
55
138
93
108
92
148
138
122
55
104
98
94
79
178
124
89
140
146
84
99
144
122
86
138
105
138
69
126
79
55
58
124
109
138
143
112
109
119
139
122
103
92
110
138
92
126
69
167
83
93
126
105
120
77
117
112
67
126
123
147
86
130
69
107
56
138
107
37
148
106
152
128
92
126
119
106
126
178
56
58
142
105
148
100
103
99
55
67
55
55
178
127
55
104
55
68
113
105
137
178
152
109
188
37
77
141
92
86
131
122
106
92
160
56
92
92
92
81
123
97
88
122
134
92
93
56
91
74
152
110
126
128
92
110
110
69
104
140
148
67
93
126
67
112
55
138
106
138
104
106
127
171
180
92
77
148
124
92
55
105
106
152
131
139
67
58
123
75
120
111
92
131
90
67
98
138
92
56
67
122
83
93
55
178
127
92
92
139
105
92
105
122
118
129
127
67
79
56
58
138
111
122
86
127
86
75
130
138
69
110
105
135
111
105
83
119
152
119
168
139
122
111
79
171
127
119
122
139
75
120
138
138
74
147
92
58
113
131
132
107
92
140
127
124
83
126
178
126
104
91
99
117
148
56
110
68
79
93
138
123
139
103
81
81
178
92
109
134
101
56
69
97
178
144
126
138
110
163
92
92
77
112
104
117
127
160
69
107
37
122
178
104
86
126
107
89
69
109
146
111
102
180
55
79
112
91
140
58
126
105
151
111
114
104
138
104
92
93
55
123
105
67
67
139
109
130
67
178
84
86
122
119
130
69
107
92
92
124
144
61
91
109
58
55
111
55
171
56
178
128
105
77
144
146
55
126
126
74
144
140
92
37
125
105
99
64
178
95
99
93
123
123
105
126
83
139
104
122
110
100
171
128
146
110
56
104
55
123
152
74
171
92
74
122
55
78
55
37
93
92
147
55
135
86
73
55
138
138
93
58
122
132
107
88
107
126
127
110
163
126
55
128
55
86
55
87
103
81
93
97
119
56
127
104
114
178
55
105
55
138
139
139
126
87
92
69
178
128
93
67
107
142
37
55
67
92
121
110
110
75
37
129
105
105
93
117
178
110
93
37
86
122
105
86
110
124
111
126
146
55
128
58
92
110
86
105
169
128
104
139
169
126
138
134
105
140
93
178
111
122
67
123
56
129
113
131
107
104
117
122
111
152
107
135
107
75
111
105
86
128
126
110
148
126
138
69
110
135
77
169
105
139
99
107
111
171
58
74
120
144
137
117
99
110
122
58
145
132
84
160
110
138
146
126
91
58
92
128
145
58
107
128
109
105
110
74
55
111
139
126
74
178
58
110
127
105
92
111
110
117
120
86
55
119
144
130
123
37
127
86
93
112
104
56
92
127
126
171
99
93
138
122
178
103
117
74
92
109
75
129
127
93
98
127
55
105
127
103
131
138
108
139
178
110
67
92
78
132
58
92
79
83
55
119
92
110
93
67
178
109
58
77
100
92
86
111
93
110
138
128
169
168
152
98
123
91
144
110
110
104
92
118
37
93
93
126
136
95
56
126
115
98
158
145
86
137
130
104
92
58
104
110
123
128
105
69
171
126
68
122
74
138
117
152
139
138
109
139
55
55
99
55
56
58
140
104
152
107
101
58
37
123
56
37
124
109
74
121
138
79
119
55
105
99
91
37
119
83
165
131
104
105
55
99
92
110
126
67
144
107
105
75
111
118
67
123
139
67
111
55
110
105
93
126
128
79
55
110
93
138
105
99
96
138
112
86
110
93
169
144
105
58
136
146
136
126
179
92
158
93
58
134
127
110
93
103
122
55
109
92
126
169
130
112
163
55
105
74
97
162
56
146
127
128
92
126
110
120
58
93
86
126
65
105
92
92
140
119
122
122
144
58
78
122
122
91
99
127
144
77
110
92
107
92
67
114
105
146
156
55
139
74
105
122
126
104
92
105
178
58
178
147
138
146
41
91
37
99
115
91
104
124
127
93
56
67
128
56
67
67
152
55
105
86
144
130
92
69
55
55
126
110
93
130
152
123
56
86
98
122
126
77
37
105
146
56
37
145
55
75
92
93
69
146
127
77
112
144
68
93
110
88
138
128
93
109
151
117
153
93
139
146
127
178
68
119
168
131
97
77
158
124
91
93
140
56
138
75
126
129
171
171
165
103
131
127
93
65
93
126
169
178
107
55
148
55
145
126
74
86
178
74
105
168
111
107
126
126
69
138
162
120
104
171
108
56
140
126
138
134
55
67
92
126
138
93
75
80
55
152
111
122
92
128
126
37
91
100
57
139
130
77
84
99
169
119
110
152
106
75
144
104
109
109
86
86
55
67
106
92
103
93
179
55
169
92
91
104
120
131
122
101
140
139
131
138
138
81
77
92
120
138
141
127
84
92
138
93
178
105
130
105
138
109
75
55
58
37
122
58
110
67
111
91
134
144
55
56
152
67
117
127
110
86
56
110
152
92
37
112
165
37
80
106
99
110
112
98
152
128
83
121
122
92
137
92
74
74
92
148
110
68
105
138
199
37
92
79
126
58
107
139
55
144
110
132
99
130
126
77
118
58
56
109
138
58
80
126
101
137
126
104
122
139
192
122
119
92
79
99
106
104
119
117
92
99
124
138
122
103
92
126
88
80
180
86
84
92
114
92
56
123
69
136
68
55
126
104
119
56
92
164
58
105
110
139
126
56
55
74
122
132
139
105
86
128
139
126
122
67
74
120
110
67
127
110
102
127
140
69
97
105
110
132
178
93
91
92
77
123
86
103
111
55
69
132
67
138
126
101
110
122
111
109
109
118
55
141
178
105
92
91
105
58
134
124
158
37
101
93
92
37
152
77
131
74
55
144
148
123
58
138
132
106
79
128
146
169
126
92
58
92
126
92
55
104
119
77
69
144
110
103
74
136
99
110
37
164
58
122
169
92
105
110
139
92
144
124
148
104
122
93
93
92
104
131
128
122
55
163
145
110
109
152
160
92
100
140
77
87
120
67
109
98
58
86
138
104
37
93
138
86
110
134
103
139
135
109
67
146
130
91
136
55
109
74
126
58
79
126
138
152
58
141
128
112
138
69
92
83
129
178
126
107
152
117
178
91
37
110
92
126
127
104
67
106
93
126
122
119
92
109
75
37
91
169
55
93
37
139
74
136
92
56
37
91
74
134
110
122
138
115
128
135
97
92
93
75
122
37
103
144
139
110
160
67
105
144
58
119
144
99
139
106
139
69
55
109
110
104
158
144
146
105
144
126
139
58
103
122
140
67
110
105
67
92
110
156
110
126
103
55
122
83
98
178
98
98
178
104
93
110
114
138
93
144
56
146
91
95
178
135
140
178
99
103
138
144
124
92
178
169
122
130
86
120
105
67
164
104
119
55
58
77
138
56
136
122
83
92
104
110
138
124
107
80
79
178
178
144
68
134
79
120
110
99
113
93
107
83
105
55
130
67
56
93
55
91
93
142
117
180
92
91
92
105
144
111
92
93
87
56
55
122
105
128
97
119
134
171
92
139
104
126
128
55
92
138
126
109
148
146
91
91
86
67
109
86
152
152
74
144
131
121
83
99
131
67
79
92
105
109
122
55
128
55
142
74
122
169
138
109
69
105
126
138
104
69
114
110
110
74
110
122
58
110
132
55
92
120
37
91
169
74
122
123
105
94
111
105
55
146
92
123
137
109
122
138
119
122
79
139
141
37
169
126
117
69
122
55
138
126
75
92
138
122
55
122
165
89
122
144
134
55
126
122
104
68
105
126
93
130
126
92
92
100
106
93
69
126
103
110
105
109
122
37
105
146
146
122
115
171
138
84
92
122
104
84
144
56
93
92
171
98
91
126
37
37
107
144
130
138
100
126
75
160
118
140
58
146
37
156
122
165
114
94
148
122
92
178
137
83
86
92
56
109
92
74
101
182
145
91
56
69
74
111
37
105
56
112
126
108
126
178
99
112
148
122
122
124
86
109
75
127
104
128
122
92
92
91
37
69
55
109
118
74
77
127
75
65
105
152
139
69
128
111
146
92
139
105
105
92
77
37
86
104
131
107
55
86
56
126
56
122
124
126
86
114
178
67
69
79
67
139
67
80
134
128
58
126
128
67
56
180
122
114
67
121
95
74
67
79
104
55
74
104
55
134
104
86
91
58
152
91
104
92
93
74
67
107
119
74
92
80
110
152
138
92
83
126
55
37
93
58
144
55
37
67
148
171
107
122
67
138
97
107
55
56
104
75
75
88
123
140
69
122
89
122
139
99
81
55
105
106
67
97
122
116
138
126
104
55
75
104
74
128
171
74
91
92
128
107
67
144
55
37
55
122
126
128
37
125
130
130
105
119
105
138
104
127
67
98
124
178
56
109
127
139
92
92
92
56
93
100
91
135
131
130
164
58
86
122
55
83
126
105
131
138
110
55
106
180
107
110
104
113
138
97
56
55
146
178
88
105
104
122
55
135
138
138
103
127
126
92
107
136
122
171
123
95
140
169
110
105
102
105
138
37
55
93
37
79
121
105
109
67
99
127
77
123
122
122
126
119
144
119
122
144
115
130
138
55
122
55
86
100
55
127
122
119
110
116
92
55
152
126
37
99
120
180
120
134
84
123
128
127
134
104
138
55
130
92
169
123
159
74
104
37
127
104
92
55
94
105
105
110
139
91
178
56
104
56
115
92
37
130
139
122
126
93
92
111
130
79
55
135
152
74
91
104
136
141
122
168
119
56
187
142
92
178
93
55
112
139
164
89
92
105
124
99
132
146
67
79
75
109
123
127
55
41
110
127
117
178
104
165
111
112
79
127
102
105
55
139
55
107
139
169
138
125
167
104
110
169
58
58
67
144
92
103
58
56
58
178
122
146
67
169
58
156
123
107
104
105
56
104
126
103
104
105
92
67
105
129
93
162
105
137
98
126
92
104
123
108
69
139
152
140
122
102
56
126
98
122
110
147
58
80
178
119
93
111
114
93
92
55
79
168
123
55
126
109
117
86
58
110
92
119
138
127
178
84
110
104
110
105
169
165
163
92
127
104
110
92
111
74
58
105
92
37
171
130
58
122
77
122
122
79
110
110
75
105
84
56
122
140
131
138
67
104
178
102
105
69
92
142
126
126
127
77
97
126
146
139
158
126
91
93
123
92
98
129
114
56
178
110
37
140
110
126
106
130
107
101
119
67
58
139
130
105
111
126
103
56
104
59
88
178
98
123
107
98
123
127
67
110
86
105
92
67
79
88
131
110
121
56
140
148
77
110
118
134
178
165
123
148
122
105
178
138
55
126
126
138
148
104
105
127
134
178
58
88
97
145
69
102
67
132
171
138
138
89
138
156
55
58
110
92
55
135
122
146
138
122
92
105
83
131
114
103
122
67
122
55
134
126
111
99
122
84
127
109
180
110
86
76
107
135
92
87
122
55
110
92
79
92
109
58
56
152
152
128
169
144
110
136
69
92
55
92
92
124
37
138
108
110
105
93
55
74
109
124
112
100
136
77
56
139
122
152
93
92
139
56
92
136
101
113
134
149
55
127
105
86
126
138
132
132
146
152
127
112
110
168
119
110
55
122
56
156
150
126
69
138
93
144
84
67
152
122
55
64
67
93
55
106
164
126
146
92
104
119
86
122
93
122
180
37
104
77
77
160
104
56
110
124
74
136
139
55
89
140
126
138
37
58
67
69
109
126
96
93
119
95
105
74
77
149
58
122
74
125
128
75
162
111
104
123
146
74
178
88
104
104
110
126
167
127
132
37
92
144
122
69
110
55
162
127
140
109
111
86
56
69
80
122
134
75
117
127
37
74
100
140
127
171
152
91
106
56
67
114
92
105
104
91
41
93
74
140
136
122
138
104
122
126
105
116
56
178
123
83
107
55
99
181
138
111
69
55
171
171
58
148
122
136
86
128
124
37
138
134
119
122
122
112
68
139
92
139
188
104
104
122
104
74
112
105
146
140
92
67
56
77
93
126
108
69
132
105
67
126
119
121
93
65
77
110
67
92
134
102
104
109
123
122
153
83
126
102
105
122
79
130
152
100
103
123
107
67
99
116
178
92
119
110
72
104
122
122
107
69
77
75
162
126
92
126
56
125
146
74
92
79
67
126
103
169
92
99
67
178
141
92
91
127
58
122
74
132
94
55
83
89
110
146
169
138
128
67
109
68
110
87
83
111
146
83
37
92
105
99
74
152
119
69
122
77
138
91
134
146
92
128
132
128
68
132
92
55
127
92
112
105
128
74
126
105
83
55
55
124
178
178
92
98
169
75
126
119
127
144
105
75
55
112
93
104
122
139
131
58
71
138
140
144
75
105
138
121
110
67
105
111
55
110
109
158
86
67
92
105
110
56
123
126
122
92
128
77
103
103
131
92
68
114
89
86
128
92
67
97
169
128
92
126
37
144
92
102
91
169
105
110
139
118
56
122
110
92
178
88
169
127
86
138
138
105
67
139
55
160
128
122
122
56
68
126
55
130
138
67
56
110
55
79
91
122
123
81
92
152
86
102
37
163
178
129
56
99
67
58
110
94
105
78
97
74
126
110
56
138
56
105
107
79
93
109
126
138
67
91
131
114
178
55
93
37
138
99
91
100
111
77
84
103
81
139
55
128
119
128
138
92
91
120
55
110
111
152
58
110
144
107
122
92
93
142
56
110
69
92
146
110
138
152
115
75
122
127
103
124
101
138
134
134
64
165
74
126
127
128
139
37
147
68
122
55
101
140
109
107
56
152
86
69
111
79
67
92
114
106
167
67
55
69
112
103
110
77
152
138
144
134
67
163
56
140
104
158
110
75
107
126
92
93
103
122
127
55
92
152
144
109
69
127
110
92
77
37
126
79
55
178
127
68
55
158
95
92
178
122
101
104
152
75
152
67
78
178
112
114
122
96
92
132
131
78
83
169
144
74
158
139
138
178
134
122
92
123
55
105
55
111
104
140
138
111
56
127
138
141
37
119
68
112
58
124
104
124
74
55
58
55
138
104
122
128
152
126
105
99
67
88
178
56
55
37
148
55
104
124
56
104
136
104
105
92
69
139
178
110
55
162
145
148
152
92
124
104
69
93
119
110
152
93
126
37
79
148
146
110
146
105
141
86
152
105
104
107
111
122
110
179
107
107
139
37
126
99
127
152
139
158
67
105
146
108
124
86
92
105
92
67
127
126
130
129
144
58
112
132
93
69
83
67
92
110
138
64
140
110
58
55
152
104
119
149
120
128
139
149
131
92
122
171
122
119
146
98
92
105
126
56
110
139
69
169
92
122
109
93
89
69
146
79
67
139
69
92
91
112
102
92
75
134
93
79
150
111
126
124
86
137
128
83
119
127
92
178
126
148
79
104
109
110
110
107
123
110
131
110
122
80
68
169
126
67
122
110
178
111
131
130
56
93
109
110
122
126
58
58
152
130
105
130
122
140
165
168
139
55
126
74
158
109
55
92
55
109
92
79
119
67
92
122
68
105
93
146
134
126
55
124
128
56
91
67
92
83
139
110
144
110
146
86
126
37
92
93
67
128
105
123
55
130
83
142
110
144
105
92
67
143
64
84
152
97
107
169
142
93
56
79
56
137
132
122
139
130
107
92
93
105
93
93
104
75
105
107
103
103
55
138
138
163
105
138
130
108
56
128
86
110
69
56
37
110
92
55
37
171
55
77
145
104
86
69
165
37
126
110
93
92
74
138
93
152
123
171
37
126
124
110
99
110
110
105
103
134
126
119
104
98
107
56
37
93
110
100
130
164
109
67
97
58
134
58
178
91
138
141
109
37
56
123
58
105
138
98
100
138
111
92
67
128
69
119
79
92
101
130
56
169
67
56
92
139
110
135
154
104
146
77
74
105
130
122
138
98
117
86
37
69
92
88
105
86
102
128
75
171
138
56
138
104
81
163
126
107
129
151
55
55
127
92
122
125
109
109
37
122
110
92
104
67
110
104
56
56
74
123
127
137
110
130
99
98
67
126
97
92
152
92
67
103
110
139
120
140
92
110
37
122
101
74
124
74
104
67
99
79
55
178
89
55
146
97
105
122
83
163
55
178
135
126
92
56
126
67
56
104
92
92
129
100
105
55
58
55
92
74
58
81
126
180
103
110
92
81
79
119
56
105
127
131
127
55
110
110
74
58
93
99
138
99
67
126
68
55
122
77
91
105
67
126
134
127
106
119
114
79
99
171
89
56
144
81
138
104
99
142
104
171
86
55
55
98
168
168
99
92
137
110
75
93
55
104
78
119
92
58
144
148
86
56
105
122
110
135
119
138
84
165
122
92
80
122
92
152
169
110
105
131
105
92
138
110
77
92
74
55
138
103
92
92
139
126
122
110
152
169
93
67
93
151
127
55
91
142
139
105
103
92
105
169
138
171
122
152
110
148
92
138
123
103
135
86
55
92
169
122
105
91
128
81
145
55
141
91
77
110
160
77
92
72
122
140
67
152
55
122
120
69
136
92
126
122
126
122
122
79
74
105
138
75
102
129
122
144
122
119
110
145
104
103
136
55
144
84
77
91
108
55
97
88
122
140
110
138
93
152
144
88
119
56
101
72
67
144
122
158
58
144
119
138
178
92
138
126
168
92
67
130
80
95
108
92
86
93
69
91
105
126
178
138
126
138
131
105
55
117
148
122
92
141
86
67
92
93
69
86
37
126
168
163
104
67
67
139
139
93
79
127
126
99
93
56
122
55
99
127
99
92
139
92
67
139
112
119
169
118
110
111
92
138
110
84
126
98
144
92
163
104
132
113
92
167
101
55
114
139
142
169
91
111
104
55
128
104
112
108
128
101
128
105
104
97
55
104
55
37
120
92
95
93
79
109
131
77
95
92
130
126
126
136
74
92
140
113
37
105
105
75
77
92
123
139
83
144
139
146
144
67
150
117
111
56
178
69
141
126
109
127
105
122
113
153
86
119
127
92
134
124
37
95
122
139
69
122
109
134
108
144
99
122
110
124
122
144
110
158
84
139
105
100
140
67
77
37
132
122
92
104
104
86
127
99
56
56
92
83
110
80
55
135
126
178
92
142
69
178
138
110
150
146
55
111
122
79
92
131
109
88
138
56
93
94
37
67
74
37
55
137
77
73
105
92
104
104
139
99
110
77
138
111
79
138
137
122
56
110
91
127
67
56
105
105
138
55
122
55
110
92
106
83
138
97
110
92
162
138
105
105
101
128
119
92
137
103
178
92
146
118
122
58
110
92
125
79
178
122
79
102
37
112
109
67
110
139
83
122
113
165
167
109
141
55
178
67
131
138
93
93
104
56
75
105
107
108
110
55
55
139
122
134
117
111
178
56
148
134
104
105
131
92
123
126
138
132
126
79
104
126
144
79
110
84
92
67
105
119
122
121
138
108
110
127
104
75
37
92
126
105
56
110
117
126
105
92
126
78
93
79
140
56
91
111
37
69
128
180
95
134
128
139
114
77
110
169
162
188
56
92
127
56
148
132
122
130
126
92
92
37
138
132
92
109
126
127
93
146
77
117
130
55
122
123
127
123
122
91
68
37
56
119
134
126
119
178
79
93
92
92
92
140
146
83
93
99
131
126
123
126
111
92
144
37
110
126
126
105
55
91
92
93
126
111
92
37
79
92
69
99
171
104
55
55
109
152
136
98
150
67
149
93
68
127
92
111
139
104
122
100
110
122
77
69
92
138
122
79
126
138
89
138
93
138
138
152
55
92
93
119
146
114
75
114
111
126
126
103
69
105
136
92
105
56
68
122
104
142
128
164
105
189
178
55
99
89
123
117
67
110
55
92
87
199
67
146
152
137
111
105
55
93
148
130
119
93
93
99
55
37
55
103
67
58
56
148
55
99
127
152
110
179
138
92
129
86
125
67
163
91
122
92
93
111
104
110
124
69
98
171
67
92
77
111
37
105
120
92
122
130
91
121
138
128
105
130
107
110
127
122
55
55
146
67
178
139
79
74
67
75
131
128
105
128
138
76
123
92
126
109
75
100
139
98
158
67
112
55
55
109
69
73
130
109
178
169
138
56
144
92
111
68
137
111
126
148
93
92
92
134
56
134
110
109
110
168
91
79
68
56
102
144
58
87
92
122
67
37
99
58
153
93
138
74
105
128
148
58
126
139
122
67
144
112
56
92
101
110
104
67
115
55
178
89
171
37
69
92
152
158
128
148
92
55
125
111
122
86
93
58
93
110
130
110
79
56
126
122
102
110
67
132
92
92
56
105
108
110
104
138
150
105
98
140
152
128
102
88
55
77
105
93
131
146
178
93
128
134
93
143
126
93
127
37
138
55
105
132
56
102
178
101
122
146
84
58
67
110
104
110
67
111
67
126
132
112
74
67
55
111
139
168
138
165
79
118
58
68
178
105
56
67
199
104
103
122
111
67
112
93
139
148
117
139
127
110
100
58
84
120
98
86
74
86
139
79
56
55
89
122
110
105
55
105
58
55
91
105
58
127
80
104
77
93
119
95
37
74
138
93
91
140
67
97
67
67
103
105
119
126
110
136
91
127
126
69
67
139
92
107
93
79
110
128
131
89
75
75
123
55
118
67
105
67
103
92
136
123
74
126
105
104
139
67
123
92
105
111
139
122
105
109
67
110
106
91
120
37
138
55
126
58
122
123
138
55
110
80
105
92
99
56
96
97
93
104
67
103
55
91
188
98
93
124
88
120
97
123
84
93
68
118
113
56
178
93
146
126
144
102
37
109
56
144
92
97
99
138
156
158
126
105
145
74
92
119
67
126
91
105
56
56
126
55
122
138
88
124
138
79
58
123
75
104
126
152
56
55
91
138
56
99
55
118
67
119
93
74
107
150
122
37
79
132
92
127
111
92
67
73
101
110
134
105
134
127
67
75
127
111
107
156
104
138
100
56
84
87
67
129
168
99
92
105
69
119
55
104
119
58
93
109
139
123
68
104
92
178
86
145
139
130
144
102
134
134
92
86
58
99
144
110
135
107
92
138
55
111
56
110
163
67
127
86
92
67
86
126
104
138
67
152
110
93
123
126
138
92
92
129
139
97
138
86
56
132
83
110
55
92
110
107
37
178
144
139
56
55
77
178
139
67
156
126
79
110
55
122
144
83
136
105
168
37
105
104
123
122
86
83
105
104
75
74
103
105
124
67
109
110
130
91
122
132
98
93
145
126
97
134
144
67
132
104
139
178
126
107
92
98
119
104
137
114
139
55
92
93
178
92
58
92
93
169
126
94
127
112
58
58
128
119
169
99
110
123
101
126
102
106
74
169
128
146
77
92
92
107
103
37
110
37
67
75
104
75
67
131
134
77
126
55
106
92
148
95
67
163
122
103
123
69
141
178
91
67
115
110
106
105
86
55
112
67
93
107
109
92
158
144
110
134
140
55
103
84
123
128
121
110
69
104
178
37
76
56
144
99
110
58
138
92
86
119
92
81
37
146
56
67
128
92
122
144
138
126
140
126
55
97
56
107
169
120
55
105
69
158
124
37
139
125
83
178
103
146
125
105
105
146
69
67
123
92
122
110
152
67
106
126
91
178
138
55
91
55
112
127
120
69
127
110
92
122
127
55
126
106
103
37
92
104
111
55
136
69
138
92
55
108
37
111
105
138
67
93
93
75
101
127
109
69
104
122
178
102
114
97
178
126
130
105
109
138
55
99
122
92
105
58
89
124
92
178
111
110
105
107
138
56
77
91
56
144
55
126
105
139
67
122
178
56
79
75
79
122
122
138
138
105
56
118
167
58
55
91
101
92
104
144
126
153
67
136
86
144
111
127
75
100
77
104
144
110
91
128
126
105
92
109
58
87
122
99
105
105
118
110
58
119
139
74
110
152
165
92
56
144
99
168
88
152
79
58
122
132
92
58
110
99
74
92
93
137
138
77
131
77
188
58
79
126
110
74
97
55
139
122
144
37
122
88
122
152
114
178
126
58
68
127
126
178
118
103
110
138
132
97
122
138
79
56
92
138
92
105
58
119
93
131
138
92
144
55
104
105
102
95
93
113
122
110
67
152
178
86
37
152
115
77
79
110
94
55
86
178
105
68
69
110
110
118
123
74
100
104
93
138
97
126
75
104
107
123
69
138
88
123
74
105
131
93
109
126
128
98
162
144
74
95
126
120
98
92
122
101
136
77
134
55
89
138
127
144
142
126
67
178
92
138
93
69
122
118
107
135
79
56
138
123
91
93
56
67
128
111
104
112
55
130
160
86
110
122
152
134
37
55
139
142
111
79
91
55
77
117
83
127
114
99
104
110
110
92
107
97
67
67
145
156
37
110
152
55
77
92
79
138
140
83
128
119
122
37
100
120
55
132
128
79
58
55
81
163
103
75
92
139
94
37
110
37
77
105
105
77
83
105
110
104
122
104
55
120
67
148
93
119
152
123
148
114
110
137
104
92
67
67
124
110
89
131
139
67
110
92
95
178
163
140
103
56
92
112
136
104
105
105
144
104
109
127
92
77
67
77
152
67
67
156
115
86
104
105
74
37
91
114
120
55
122
124
158
140
67
84
126
74
104
122
55
69
180
55
128
55
98
122
144
122
136
110
146
178
78
67
138
75
139
110
74
93
134
144
122
67
111
152
138
119
140
178
110
99
110
75
55
146
67
139
127
55
126
55
144
69
138
178
178
128
146
162
67
113
178
104
130
142
139
112
56
130
67
92
144
118
67
56
92
99
97
136
178
169
126
92
124
137
135
55
139
128
110
101
91
122
91
102
105
92
122
134
105
79
91
92
169
58
146
164
105
58
79
109
138
110
69
112
119
140
93
142
126
37
104
139
57
92
149
127
138
126
178
99
122
86
105
122
37
123
139
112
169
56
126
146
92
110
122
111
110
99
111
178
93
152
139
152
92
122
56
127
126
89
180
138
69
130
131
56
77
84
134
100
92
75
132
92
144
144
104
92
110
105
92
99
91
140
93
93
79
130
111
67
134
56
128
114
55
126
122
101
108
110
152
55
104
110
146
79
58
104
145
130
139
83
113
138
37
169
75
55
98
117
136
131
55
97
91
105
139
138
138
128
138
67
122
98
58
92
55
55
74
120
123
136
37
110
69
120
83
117
114
79
119
122
83
110
79
92
105
127
58
168
110
120
92
102
168
118
105
123
105
145
135
146
180
178
111
122
110
55
37
144
56
178
138
134
84
136
37
110
83
130
58
136
55
104
127
126
81
88
139
149
178
122
137
105
122
92
37
180
112
136
91
74
91
67
84
123
84
90
104
146
67
67
105
152
178
139
122
125
92
79
58
127
79
122
67
92
74
117
149
104
138
91
158
178
115
104
93
92
83
93
67
55
69
122
79
156
126
58
139
67
111
128
146
86
69
147
93
110
55
148
37
112
119
139
108
122
146
56
104
37
55
134
144
138
122
67
55
169
152
109
55
178
79
69
125
58
55
126
152
126
77
75
127
120
169
164
80
110
92
131
37
104
67
56
55
83
102
84
92
105
86
105
93
92
117
127
171
122
139
126
126
139
74
100
126
117
92
110
92
130
126
105
139
37
56
144
103
110
127
95
55
55
92
110
123
109
92
171
92
55
78
138
58
123
104
103
58
94
105
67
58
128
77
178
92
112
178
75
105
139
95
118
134
55
169
110
110
112
131
110
106
127
110
127
136
104
92
106
126
135
131
56
178
169
99
131
126
146
37
107
69
146
146
92
106
76
126
80
134
67
108
92
92
129
105
92
77
74
178
122
58
92
123
126
111
180
105
146
69
171
139
146
77
138
91
67
126
180
169
112
138
93
122
69
122
126
138
92
138
118
84
92
148
67
103
137
144
106
144
74
86
135
109
144
178
93
164
124
132
134
178
119
92
56
139
140
55
126
74
99
89
56
150
74
92
137
122
97
81
95
105
69
67
77
79
109
105
111
132
79
139
92
126
130
84
110
55
103
138
78
92
158
74
55
74
119
92
141
104
118
138
144
68
146
92
92
104
67
105
93
99
119
37
110
83
69
122
164
122
55
126
91
178
69
97
160
93
37
74
111
74
152
86
126
110
119
104
103
171
130
92
106
93
128
92
138
111
139
119
93
68
131
37
123
103
95
101
152
55
110
56
79
110
107
108
178
120
114
92
178
92
169
144
137
105
55
86
152
104
117
105
107
122
111
122
67
92
131
142
127
105
152
104
92
152
75
69
119
123
101
92
126
138
114
110
92
56
92
58
123
110
122
122
93
67
84
178
118
126
130
105
110
102
126
77
74
55
104
89
67
122
67
92
55
107
180
112
120
58
86
127
75
83
56
134
144
84
55
77
135
122
105
105
37
56
105
139
104
127
123
144
134
112
91
92
162
122
163
92
114
105
101
68
37
139
37
128
126
178
93
56
69
37
105
149
111
93
92
109
67
105
56
37
171
67
83
128
37
139
126
171
127
110
84
75
110
79
93
124
75
104
110
91
138
69
79
130
146
110
95
55
86
110
126
74
164
122
56
97
106
122
138
123
169
109
144
101
110
69
151
74
146
127
89
93
126
92
112
56
94
37
110
125
168
110
139
92
128
37
110
109
110
55
93
77
143
110
110
77
126
92
86
37
109
126
103
74
139
102
92
110
147
126
104
58
37
149
108
138
55
105
105
122
135
144
100
105
171
75
126
92
122
110
135
103
67
130
92
58
79
111
110
56
99
171
92
55
101
69
123
93
87
109
37
105
69
128
126
178
78
126
91
178
139
93
139
158
111
138
104
75
126
105
122
91
124
128
93
68
91
178
110
104
104
109
124
56
130
122
105
169
132
138
58
139
37
92
58
119
110
67
126
127
101
97
128
104
105
126
146
92
169
124
126
128
126
86
105
162
109
88
79
92
74
110
92
55
84
168
158
131
123
79
104
92
105
37
98
69
130
178
58
164
182
134
104
92
55
105
126
134
110
134
138
138
135
144
128
138
107
67
107
106
97
93
110
92
122
152
162
127
107
107
111
178
97
104
74
92
92
99
126
93
134
139
109
144
135
92
138
69
118
118
171
105
110
117
127
37
124
103
134
126
146
99
102
147
128
67
55
55
124
56
138
92
122
140
115
102
126
131
178
103
104
140
94
91
37
140
104
126
140
138
93
109
126
123
58
92
55
69
86
137
139
110
105
107
178
104
55
55
92
107
58
109
74
76
92
135
127
122
83
104
56
110
102
88
56
132
127
109
86
104
55
140
99
168
127
132
136
127
92
139
75
139
122
104
109
140
67
105
182
56
122
147
104
73
122
55
126
55
111
114
67
130
55
92
106
106
117
129
178
96
115
122
132
122
84
55
171
112
168
111
67
77
126
103
67
178
137
115
130
110
55
67
122
67
158
105
110
169
111
103
79
75
96
165
126
107
103
126
69
169
79
122
93
67
104
105
117
135
92
92
132
134
74
56
81
127
137
126
105
56
83
126
108
131
79
55
126
138
55
99
111
134
105
122
138
127
128
124
123
123
92
77
123
55
109
99
55
144
55
164
92
103
109
126
134
108
140
119
89
110
77
110
56
56
137
109
128
160
127
157
138
92
69
135
109
84
58
152
130
67
112
105
105
127
74
86
135
97
110
67
104
93
110
79
67
131
131
92
177
123
69
149
86
164
126
171
108
144
92
152
79
102
105
169
126
92
92
75
107
122
105
103
144
104
134
104
104
144
89
99
139
105
128
79
106
130
96
134
91
109
117
92
92
105
103
125
69
37
152
92
144
109
55
86
124
125
69
146
92
110
188
105
139
110
138
105
124
140
138
105
115
105
74
144
72
139
107
110
112
122
109
83
138
55
128
122
86
126
105
67
92
169
131
105
109
96
86
112
113
105
105
122
177
105
92
144
99
75
83
74
105
139
122
122
148
104
138
37
93
67
92
110
129
67
138
84
144
123
110
178
126
103
92
138
55
102
126
93
56
104
189
126
104
144
124
127
127
92
67
140
97
158
74
92
122
158
138
124
37
79
58
138
104
124
110
75
135
92
69
55
122
110
105
107
67
178
110
110
56
127
58
138
119
158
110
138
69
79
122
118
128
165
92
135
110
92
37
123
80
114
126
64
75
152
37
129
89
80
105
124
92
122
158
180
138
58
89
69
77
98
111
128
92
109
86
67
137
86
55
178
92
126
98
104
104
167
55
136
126
138
56
56
119
68
37
58
92
84
69
122
144
68
122
126
37
134
105
154
123
144
58
79
58
86
124
141
152
94
67
37
110
97
138
92
92
126
146
55
37
92
130
92
105
92
145
124
89
77
138
94
56
122
108
91
127
169
74
93
105
152
105
134
146
152
123
84
92
92
178
128
167
126
104
128
152
117
75
126
92
92
110
148
55
132
93
78
110
105
130
168
68
56
75
126
138
68
128
126
67
55
56
73
105
152
132
107
79
105
146
122
119
83
55
152
67
83
67
55
139
138
156
69
142
138
79
103
160
122
104
126
58
55
93
68
104
55
125
126
140
94
79
178
103
126
128
37
127
93
77
131
120
123
110
105
126
111
58
126
79
110
111
103
69
122
150
55
181
152
127
144
124
152
93
148
81
168
56
128
91
123
122
146
110
89
56
182
55
110
152
124
122
164
111
92
111
55
67
55
148
58
55
79
110
91
68
64
138
99
134
138
119
55
58
92
110
105
69
122
127
92
178
92
119
114
104
107
126
92
126
105
138
109
89
101
84
93
124
91
124
104
110
126
56
37
178
104
125
169
110
138
138
92
77
178
120
144
146
55
37
77
135
84
79
168
163
92
128
104
77
105
163
92
107
126
144
55
138
94
108
93
67
92
127
136
89
97
116
104
107
139
91
158
105
136
55
122
56
67
56
118
126
111
138
138
55
67
105
146
169
99
127
126
58
122
105
37
110
141
91
126
110
144
138
67
67
74
124
124
126
98
110
163
109
109
69
56
138
178
169
91
119
138
163
55
144
109
138
128
134
74
169
118
119
139
120
99
147
92
122
110
74
122
152
92
169
67
148
127
135
122
107
77
134
74
126
126
58
144
107
56
103
92
115
55
104
138
83
138
124
93
74
122
169
58
122
102
58
126
92
55
140
122
58
122
97
92
112
58
178
92
110
139
146
83
126
56
100
105
86
126
148
75
67
109
114
127
67
102
162
122
109
103
126
138
126
163
122
110
58
111
99
138
67
91
84
152
92
68
102
55
55
103
110
104
122
92
83
87
110
132
115
58
122
120
135
122
114
77
119
123
124
152
139
86
105
122
122
126
127
56
119
131
67
138
122
169
131
171
104
158
83
128
130
110
109
122
92
122
69
132
68
86
113
117
122
114
86
138
81
110
74
105
136
169
37
109
67
93
124
169
69
78
58
109
140
111
134
134
104
127
92
92
99
152
131
137
81
78
55
68
135
83
124
146
93
118
92
75
132
110
88
55
146
131
56
145
169
74
158
120
92
122
104
69
67
74
107
144
138
84
81
92
138
92
110
122
163
121
92
75
110
123
55
103
110
92
56
93
144
178
118
178
110
139
122
123
110
92
102
138
99
67
104
105
126
56
164
164
138
188
123
162
92
126
79
90
91
55
86
93
120
107
127
112
122
56
111
119
86
77
122
144
110
104
140
99
67
104
110
178
55
67
80
79
105
122
138
55
134
110
138
131
93
110
69
67
93
98
122
74
114
138
106
105
169
92
86
124
102
146
55
92
151
114
67
104
103
104
110
139
180
178
134
169
86
123
138
124
122
92
146
69
97
138
109
110
126
122
37
124
79
37
178
79
64
124
126
110
58
178
92
109
138
165
105
98
69
105
149
128
127
86
130
110
120
75
164
103
141
149
144
139
105
86
55
138
126
105
112
127
101
144
55
105
122
92
126
164
104
126
37
138
123
68
128
56
67
55
93
199
88
126
105
131
97
93
79
122
126
105
55
92
146
104
108
98
103
105
104
99
67
126
55
106
56
178
119
101
110
67
74
94
169
112
125
103
152
67
102
106
91
136
135
91
171
101
148
55
79
69
105
103
91
122
105
119
88
122
110
132
134
106
67
92
110
86
147
105
123
73
123
125
127
103
150
67
105
107
55
132
123
180
91
139
108
119
145
103
100
128
56
56
138
138
58
109
144
64
110
83
134
132
93
92
92
178
56
55
104
97
109
119
74
89
112
122
55
125
75
128
92
144
165
55
122
93
55
92
58
141
58
197
136
67
91
105
126
100
119
93
104
74
128
79
134
91
148
122
93
83
67
104
122
58
178
86
120
138
126
101
67
122
119
138
126
77
122
58
127
83
77
125
93
132
123
119
112
126
83
77
58
74
37
119
111
74
127
92
92
107
86
69
87
109
128
127
92
37
127
92
112
92
69
152
127
93
74
37
122
99
120
86
110
92
140
126
93
92
76
128
109
37
105
110
122
124
128
99
110
163
89
123
68
139
105
122
124
99
37
139
93
171
104
55
169
123
93
178
111
130
116
134
106
146
128
97
130
115
104
108
122
110
83
117
163
80
92
126
115
56
92
105
58
98
105
105
67
58
68
107
55
95
138
86
55
122
111
75
91
56
103
137
144
105
55
106
109
99
128
111
100
56
148
92
67
80
138
104
55
108
93
56
67
110
91
55
92
114
110
110
92
122
91
67
107
127
56
55
79
56
171
143
92
55
128
105
138
104
101
58
104
92
135
58
37
138
74
163
104
119
56
139
124
56
92
55
69
130
93
107
140
98
122
138
138
114
55
99
58
110
169
93
178
93
77
139
152
138
152
77
92
92
122
128
58
132
89
58
138
146
56
100
58
67
69
55
83
146
56
138
119
109
103
157
92
83
78
58
67
102
37
152
119
37
110
110
126
84
92
105
75
75
110
169
152
110
74
141
164
56
92
178
149
123
120
67
69
126
126
102
55
69
92
58
146
114
144
58
152
104
93
119
123
105
92
105
37
86
55
68
110
91
56
104
127
117
126
110
92
69
55
100
132
58
110
139
122
67
110
92
178
92
118
109
99
105
126
178
67
100
101
75
146
97
114
123
109
125
55
77
93
69
86
86
111
118
37
55
69
129
148
128
111
55
55
124
101
168
124
128
138
77
69
105
56
107
79
178
139
178
104
92
127
89
138
97
138
104
67
107
93
110
152
104
177
55
139
107
55
56
105
132
112
105
79
109
84
105
104
158
152
93
91
119
108
74
128
58
171
180
99
123
37
125
144
100
171
123
109
122
79
168
55
123
146
77
122
77
182
122
74
136
144
69
106
84
169
93
58
92
105
158
151
58
138
110
105
136
91
69
97
111
126
148
138
81
89
128
160
55
123
93
178
105
100
169
122
138
77
67
84
105
144
149
92
67
136
122
110
122
136
103
138
67
80
168
107
104
79
146
92
148
162
56
138
68
56
167
124
103
92
74
122
126
138
55
75
160
148
126
147
124
37
122
89
127
195
56
68
119
171
105
119
55
77
105
105
105
119
121
110
117
91
131
86
144
139
137
105
67
74
110
126
91
111
93
67
97
67
126
86
91
100
144
128
169
99
67
73
110
91
100
138
58
138
55
138
73
105
103
110
56
58
37
103
77
130
189
107
126
81
158
37
124
87
125
164
122
104
169
55
134
139
126
145
126
37
75
98
92
124
128
74
92
92
109
55
118
92
127
56
106
58
92
146
92
146
178
144
134
56
169
37
169
138
117
130
152
123
108
152
126
75
134
104
128
105
144
107
67
126
37
112
75
111
126
124
165
92
138
88
117
110
67
126
92
138
139
58
92
77
128
139
67
105
92
111
141
119
119
105
93
55
167
146
74
68
178
139
178
100
93
55
111
72
110
74
111
56
164
137
132
55
55
69
122
92
56
188
110
138
58
93
92
107
110
134
67
162
67
126
69
126
77
105
92
122
80
93
101
69
56
132
69
122
178
139
86
103
97
160
140
93
97
67
55
92
136
110
79
110
77
67
123
115
104
108
79
110
110
129
138
137
55
107
95
122
146
55
178
140
134
169
134
55
110
37
105
75
126
106
126
55
110
124
126
123
152
104
134
134
130
114
124
122
108
67
75
105
145
178
128
56
88
109
91
77
104
93
104
110
123
107
109
138
110
100
93
126
110
110
93
124
77
111
77
56
146
180
128
158
122
114
105
122
105
134
55
93
92
56
171
84
99
105
86
144
105
139
178
131
178
86
93
58
117
107
105
126
139
55
152
128
127
92
138
69
114
139
168
67
79
56
86
58
55
126
128
126
107
122
117
123
122
128
139
55
126
136
92
91
98
55
99
123
69
178
126
92
37
55
104
104
128
136
79
92
139
124
119
122
101
122
138
169
67
110
37
110
105
126
178
139
146
126
105
124
55
56
69
131
123
107
75
138
37
149
93
91
139
55
171
55
122
105
93
37
56
68
37
55
110
114
93
58
79
67
99
180
107
169
103
37
79
110
120
180
111
110
67
100
178
105
83
109
138
56
110
77
58
56
101
140
124
83
110
86
58
122
68
69
136
92
138
84
67
139
105
78
110
109
180
75
110
75
110
55
122
139
83
92
127
93
56
134
55
105
56
105
144
92
92
178
139
138
92
138
124
69
92
142
92
110
55
110
106
163
55
91
109
93
169
148
104
79
124
92
92
105
107
112
122
67
58
67
158
139
110
111
122
172
92
138
144
109
100
138
56
67
104
199
148
92
151
124
55
119
92
109
144
37
158
56
122
98
122
37
104
86
91
104
162
55
122
140
102
99
55
171
99
92
107
55
55
110
123
105
178
104
122
134
139
91
104
130
139
145
74
92
93
111
104
178
91
128
93
56
101
92
55
165
144
91
55
128
55
163
95
122
83
93
138
92
139
167
158
56
92
138
37
79
92
92
92
132
169
123
126
79
134
92
67
126
136
37
122
67
95
81
104
152
58
182
169
178
105
77
138
107
128
123
55
55
72
55
126
37
138
91
107
86
92
105
110
92
178
111
123
92
138
55
168
99
138
109
122
132
86
105
93
114
109
55
146
92
103
140
58
93
101
67
152
92
167
139
67
110
92
104
110
139
123
67
139
91
110
114
138
140
99
96
58
138
123
140
37
56
134
109
129
126
110
119
67
158
74
56
94
126
152
124
91
99
92
92
92
167
126
144
158
55
57
139
103
86
127
149
140
101
115
110
67
139
199
126
92
93
86
106
146
56
144
128
108
119
69
146
55
37
127
67
92
144
119
117
128
128
152
92
105
80
105
105
105
92
122
92
84
88
136
105
140
135
111
87
128
93
145
178
84
56
75
105
144
76
121
144
165
124
93
56
144
91
117
74
138
105
92
139
79
81
91
67
122
55
103
122
84
127
122
126
109
126
75
111
75
105
68
93
79
111
67
105
99
97
140
105
92
124
122
55
87
146
138
148
37
91
55
138
123
67
92
114
74
136
55
138
146
67
92
105
79
134
56
128
122
112
93
75
178
113
55
122
92
110
110
104
134
168
152
37
92
123
122
146
77
103
126
67
129
92
111
104
55
92
110
93
136
122
67
92
139
134
115
111
110
138
144
104
67
169
146
148
55
122
69
144
88
92
105
144
55
109
56
140
86
107
118
126
105
138
134
127
92
86
144
137
55
104
67
127
67
127
100
104
75
105
139
144
55
124
158
171
61
74
126
99
55
103
92
140
56
93
97
105
122
93
107
104
92
122
78
127
74
110
109
99
105
56
140
110
178
123
110
104
104
106
169
69
67
138
67
109
160
107
75
146
67
139
122
111
169
93
146
131
146
93
93
92
122
138
148
98
169
74
109
92
92
111
139
56
132
122
138
156
93
180
127
132
126
93
126
138
134
98
91
104
92
152
67
138
126
109
86
149
135
104
188
37
130
148
55
114
139
158
130
101
120
140
122
140
122
119
110
92
124
97
111
126
134
74
128
122
86
79
69
122
127
105
105
126
112
138
104
138
112
37
55
126
89
98
124
92
37
134
122
92
86
126
55
69
178
92
92
55
111
69
122
37
162
122
158
169
139
189
74
122
122
91
134
128
68
124
111
146
109
169
104
122
79
158
56
122
152
83
131
110
108
120
37
56
144
137
55
138
56
110
99
111
171
108
119
79
181
68
84
110
169
86
122
37
91
58
120
135
86
98
83
105
146
86
123
77
122
126
131
152
110
105
58
111
105
106
122
110
114
37
169
158
111
128
92
92
146
83
138
92
146
140
169
110
55
97
68
144
144
122
55
126
111
92
128
69
122
127
119
77
163
93
119
122
37
122
79
55
109
86
126
56
79
92
131
86
152
122
107
55
127
55
122
67
137
83
67
93
92
127
130
79
107
67
91
138
119
146
74
104
138
93
144
104
119
68
112
104
103
139
138
169
92
67
83
104
86
127
120
75
83
138
89
67
91
92
110
109
178
138
145
91
105
134
136
104
55
126
93
144
110
56
146
126
110
92
149
107
92
139
55
158
92
128
160
92
67
58
139
105
105
97
55
112
140
86
111
144
107
120
146
105
127
55
142
77
110
72
139
55
103
92
178
141
124
134
93
37
127
128
93
79
86
111
67
127
92
105
103
84
78
138
56
86
138
138
110
92
92
113
122
105
140
141
124
37
112
122
110
178
105
68
123
105
67
93
80
122
92
92
122
126
79
99
140
37
103
92
105
58
91
107
104
55
122
136
112
131
75
86
138
111
104
105
149
93
56
110
152
127
92
105
113
92
105
98
92
122
99
56
75
107
115
163
37
122
67
171
93
88
134
56
55
102
75
119
77
55
188
79
126
79
128
80
148
110
69
37
92
127
89
105
55
78
122
55
138
131
105
104
178
67
163
115
122
178
144
131
37
77
55
55
92
106
135
92
74
165
169
124
107
79
105
58
37
138
37
95
140
128
138
67
92
122
92
122
89
104
98
122
140
110
37
140
74
152
55
105
106
105
122
127
110
92
180
111
92
56
126
126
108
127
138
171
128
74
100
56
160
92
101
146
37
55
126
74
67
148
123
56
111
144
101
171
56
64
171
37
104
123
126
92
37
37
108
86
67
55
55
107
126
67
163
126
69
105
92
110
122
123
110
110
56
124
158
139
127
96
117
108
131
178
98
68
95
128
55
169
56
89
55
92
93
110
105
164
137
67
99
56
178
103
107
56
92
99
122
128
135
56
152
138
126
169
130
119
79
97
122
92
37
144
110
134
91
110
92
152
134
92
146
118
67
126
75
55
79
164
104
152
55
148
83
92
37
109
105
92
75
126
109
105
93
111
178
126
61
69
77
148
101
126
105
124
122
126
55
140
144
127
122
56
86
158
86
136
55
140
93
144
104
169
138
126
67
140
99
138
108
88
58
152
55
97
86
111
100
138
80
122
126
109
92
107
146
83
67
163
67
137
139
105
55
98
110
127
158
134
126
131
92
89
128
55
104
180
119
162
99
95
144
107
115
140
122
105
138
107
56
127
76
98
127
182
91
111
127
95
138
127
141
93
139
142
89
110
110
93
105
91
56
112
134
75
99
138
123
67
92
137
122
126
124
105
109
105
55
99
152
138
67
56
77
138
126
37
93
92
109
95
152
135
178
168
109
105
112
110
89
124
110
139
93
178
122
144
132
146
55
127
122
69
105
105
105
105
109
108
147
105
84
139
37
91
123
93
56
92
140
127
140
105
37
37
56
126
105
83
126
69
103
104
86
111
86
92
124
74
91
169
149
140
144
68
92
130
92
67
119
138
110
120
92
77
108
106
112
119
76
146
109
69
98
55
134
122
55
103
104
127
81
126
92
148
119
126
93
79
67
91
107
68
79
110
92
138
138
130
108
178
109
139
138
144
127
139
160
77
169
56
152
160
105
128
92
126
105
112
105
122
112
92
56
102
127
58
121
37
126
102
122
69
93
56
86
169
89
163
55
58
171
92
97
125
113
152
105
158
119
158
56
77
119
152
83
93
92
79
93
152
139
152
110
74
163
99
104
122
91
55
92
55
144
131
110
104
112
110
58
152
134
69
122
74
104
128
119
99
56
138
136
93
79
109
99
67
122
107
162
67
56
144
158
69
92
144
93
110
93
119
103
101
56
72
168
178
169
119
126
92
178
55
81
117
91
74
104
171
119
88
122
178
92
84
55
103
126
104
37
152
113
105
91
104
127
93
100
122
126
93
98
110
104
139
124
88
92
110
77
55
119
55
138
92
83
126
178
122
92
127
151
102
92
110
55
89
55
177
122
138
138
139
126
109
92
104
55
104
93
117
55
37
119
92
104
92
164
123
152
189
145
121
122
55
67
122
55
105
55
104
152
122
123
159
178
55
86
112
139
91
37
77
56
138
152
92
136
112
105
67
145
58
180
130
92
139
69
109
105
138
105
122
122
126
141
122
58
106
138
178
58
152
88
171
56
67
55
111
122
100
92
92
111
105
122
69
74
144
58
92
108
104
146
69
180
67
56
122
86
99
126
122
104
68
143
134
139
132
79
91
120
98
169
139
126
102
139
100
92
118
110
124
110
55
180
127
168
107
56
103
56
92
92
178
110
171
105
69
110
97
109
77
67
122
100
146
79
130
144
130
123
67
112
105
110
144
99
109
37
89
109
146
112
139
123
126
169
105
111
93
160
104
87
67
152
114
122
138
55
84
55
121
134
74
171
92
88
107
143
127
92
104
99
144
99
110
107
104
140
93
105
55
74
69
138
92
140
92
178
77
126
167
92
108
93
137
131
126
92
123
148
98
180
127
180
79
93
55
88
105
67
152
58
138
124
138
102
110
118
146
146
110
148
139
110
178
128
37
127
112
126
146
138
83
92
123
178
152
98
110
98
69
93
126
92
92
138
92
99
128
135
92
56
126
55
104
97
102
138
55
37
139
55
130
124
105
169
92
91
75
110
128
119
140
104
131
55
144
122
93
83
146
110
138
110
178
122
105
126
68
152
123
86
98
178
111
102
119
120
92
124
126
92
86
141
122
165
55
100
199
178
105
128
37
103
178
58
84
110
58
93
139
56
105
122
55
92
104
92
93
139
122
93
104
127
91
107
79
111
93
94
131
127
153
55
127
122
99
68
178
56
140
67
124
122
107
100
93
109
56
92
92
138
102
92
107
124
55
100
140
69
111
92
149
55
97
146
122
107
169
104
92
152
138
56
75
79
105
96
97
165
58
139
56
72
149
107
123
98
134
104
135
117
94
126
123
67
92
81
134
56
93
92
78
77
109
77
92
105
107
68
117
68
58
100
138
86
134
69
98
91
101
55
120
92
188
160
152
92
92
138
86
83
92
124
142
109
92
110
86
108
101
127
67
80
67
99
119
140
55
105
69
110
98
58
92
128
122
95
120
105
146
110
69
56
126
92
55
93
58
135
55
124
92
83
128
92
68
101
74
106
104
77
107
146
128
142
134
134
112
126
93
121
137
139
141
103
169
122
92
105
75
139
110
92
163
98
110
110
106
73
104
56
137
107
105
115
125
122
126
144
93
93
55
120
56
58
171
79
171
152
79
123
122
92
67
110
104
94
68
130
92
74
163
104
130
110
146
122
58
89
123
105
110
124
37
105
56
152
178
37
144
37
101
77
92
99
122
127
130
118
67
102
122
83
108
56
135
103
138
111
163
92
92
55
158
98
139
126
91
107
109
92
137
109
104
99
107
110
123
122
102
169
83
126
37
123
109
58
72
79
55
139
97
104
69
105
122
178
169
87
104
122
110
98
92
104
126
152
138
165
138
55
132
127
37
107
127
122
136
92
120
41
199
105
178
124
138
138
93
56
92
126
110
126
182
74
152
112
74
126
146
111
97
80
119
89
126
126
77
77
89
77
110
104
105
119
105
104
104
126
111
67
37
74
55
104
55
112
119
93
160
144
110
107
92
121
104
138
138
105
110
148
134
146
138
178
92
192
146
104
100
84
104
92
127
83
103
69
74
84
94
55
138
146
146
124
68
122
105
41
138
97
86
169
124
140
147
92
93
104
138
189
92
102
129
83
140
86
140
132
99
56
93
122
105
110
55
105
103
105
91
139
122
178
92
79
138
67
171
79
131
138
37
158
112
94
55
99
55
122
118
92
92
86
58
92
144
93
67
156
126
107
105
126
122
171
55
126
130
111
122
135
77
91
189
91
180
91
93
92
134
79
128
110
103
105
146
163
105
111
126
136
126
146
127
146
105
178
138
114
68
110
68
110
55
91
145
55
128
152
37
95
92
138
127
119
122
101
69
122
138
178
146
140
56
92
178
105
139
67
128
92
56
106
91
58
67
147
158
138
92
101
138
55
126
110
92
169
67
67
140
102
69
55
92
114
151
103
109
93
123
81
146
92
98
37
75
55
152
147
110
120
144
148
93
56
105
56
55
55
37
126
137
77
102
110
138
55
56
139
92
79
92
91
138
56
128
56
58
75
104
121
37
55
55
99
128
110
93
140
110
69
55
110
92
110
178
69
122
126
122
99
68
97
168
103
86
79
37
55
111
129
67
122
83
178
139
126
89
58
130
134
98
139
110
92
124
99
130
126
93
130
56
138
152
105
104
123
92
37
92
111
128
180
75
169
126
107
126
119
91
92
97
128
158
55
144
86
135
114
93
99
93
86
67
139
146
160
122
158
146
128
164
139
55
104
89
77
89
105
92
169
109
67
104
56
93
56
37
55
55
71
104
158
110
110
128
126
126
114
67
109
104
138
105
152
122
109
77
104
139
144
56
104
118
84
119
146
129
158
93
69
93
105
92
105
102
92
136
171
117
83
92
131
67
110
56
128
104
146
138
169
92
178
128
158
144
68
105
131
101
122
92
120
88
140
86
119
104
55
69
55
110
92
67
123
92
55
75
144
110
119
139
67
58
110
69
104
180
136
69
86
136
169
86
55
104
139
92
96
139
128
135
56
123
55
128
104
56
99
92
124
83
111
67
125
99
123
55
92
178
128
55
124
55
69
149
104
97
126
92
146
69
114
100
55
117
158
126
111
169
92
152
163
67
92
152
131
79
139
169
127
152
131
144
92
105
92
152
88
74
127
138
152
122
91
92
92
140
122
105
134
130
119
67
110
122
134
128
93
122
126
181
104
134
152
69
139
169
58
86
93
139
178
126
117
92
93
68
127
92
100
148
128
178
86
131
178
130
146
117
138
140
55
158
93
135
91
77
122
58
128
112
117
132
92
140
105
93
117
178
146
112
139
81
91
168
134
146
127
94
55
139
92
127
75
146
131
139
100
107
127
99
55
105
119
92
67
110
67
127
98
138
139
137
104
178
128
140
178
93
91
181
91
127
122
158
144
138
58
122
164
132
92
58
115
134
110
105
120
58
58
130
109
110
109
56
138
110
61
93
55
138
126
55
120
107
105
86
127
178
86
55
56
197
93
78
123
128
146
119
138
79
92
132
110
140
92
105
159
111
92
105
171
55
146
67
55
91
58
92
122
118
144
115
127
138
117
55
126
169
55
125
86
103
99
95
55
56
37
55
56
104
144
55
134
91
75
181
107
83
122
74
55
104
55
169
79
138
108
152
131
152
139
105
119
122
88
180
76
105
58
158
92
146
139
126
135
145
105
111
126
56
105
91
139
67
111
180
138
104
140
77
92
120
92
171
113
103
58
144
86
86
100
56
138
93
138
77
69
80
86
178
134
132
91
126
92
100
58
138
104
138
110
58
95
110
104
105
56
122
55
56
160
55
110
104
92
128
142
105
119
74
110
97
164
105
128
122
140
67
122
178
158
103
67
110
69
158
37
143
55
126
55
171
92
88
119
84
158
67
142
74
182
109
123
110
83
102
160
162
112
126
110
92
136
103
103
92
117
79
55
56
92
86
98
139
92
100
110
94
67
92
131
56
163
91
124
137
131
58
93
109
77
126
126
100
92
136
92
56
92
93
110
58
130
93
109
67
67
55
58
68
141
99
108
105
127
144
114
55
105
113
127
122
137
134
105
178
105
114
123
101
128
104
139
136
91
79
93
93
83
92
123
99
136
120
92
83
68
105
148
81
122
93
138
105
132
178
91
169
122
108
56
122
55
132
165
101
56
138
105
104
67
55
92
169
169
110
169
69
134
105
103
37
139
55
92
126
135
124
55
58
139
100
97
145
78
55
75
105
119
169
105
92
126
171
55
152
110
55
93
98
152
91
105
103
58
124
138
105
71
110
178
55
92
118
126
92
138
74
104
73
99
126
111
111
138
105
162
105
69
95
91
114
86
152
79
91
55
108
128
107
131
130
103
107
37
138
55
171
139
93
55
67
58
72
110
148
119
93
134
55
91
104
97
75
148
77
91
56
110
126
144
148
127
58
130
102
79
86
142
67
144
67
110
138
131
120
86
67
102
69
55
130
92
108
140
93
122
72
110
105
55
138
111
68
74
114
74
92
146
106
75
128
138
67
112
58
74
105
79
56
120
68
141
122
126
107
92
110
104
105
139
79
146
111
124
69
77
95
122
91
92
69
104
99
104
156
55
69
126
124
124
111
178
92
139
55
104
122
144
78
92
55
178
123
163
126
55
79
55
179
92
93
110
69
144
138
164
55
138
139
139
93
171
104
122
126
78
140
92
149
67
109
77
97
81
92
136
117
92
103
109
128
79
58
104
146
144
98
128
146
138
75
98
79
122
122
104
37
134
119
117
92
144
92
64
68
120
162
122
127
169
101
110
130
97
140
130
158
92
178
86
105
86
106
136
122
92
168
126
110
110
128
118
58
126
128
132
126
147
55
110
56
127
162
110
56
158
112
178
92
139
139
144
92
110
158
141
138
105
93
92
127
91
67
105
37
91
92
138
93
132
55
126
58
104
92
130
67
104
144
93
99
132
179
92
92
104
167
67
118
135
92
122
169
81
162
171
144
171
123
55
122
99
101
146
130
127
146
67
110
55
138
103
148
93
104
67
67
67
128
92
126
146
144
158
108
67
105
178
126
142
127
83
93
138
99
80
127
134
114
77
104
92
55
126
92
138
74
139
111
56
105
93
127
55
139
79
122
134
138
104
56
112
107
56
138
120
101
101
91
67
134
144
139
168
134
92
56
107
109
67
104
58
55
109
69
55
74
101
168
69
92
86
67
102
169
178
55
122
69
92
104
105
37
165
77
92
56
122
119
124
127
164
75
111
127
106
126
130
128
138
55
144
188
69
91
110
138
37
124
169
145
189
134
123
37
146
37
123
67
126
55
93
117
56
126
138
134
55
171
119
67
110
148
112
168
55
128
89
119
144
79
67
92
169
55
111
178
81
77
138
56
114
107
105
126
69
140
126
86
81
105
74
55
124
138
110
127
178
110
79
125
168
144
101
121
178
126
148
178
126
131
102
92
104
152
122
93
125
117
56
97
118
131
99
122
112
97
92
140
93
92
93
86
103
105
55
104
128
91
74
75
122
74
92
92
97
152
122
37
65
117
92
138
56
105
55
99
124
67
140
130
55
118
131
117
92
172
114
138
134
68
122
122
138
81
102
138
92
69
164
110
104
110
126
107
178
139
122
93
67
139
152
128
84
128
89
105
146
171
109
110
101
110
75
129
118
122
102
152
126
147
37
104
37
56
37
168
104
126
92
55
58
110
104
55
89
111
138
92
199
37
136
127
84
68
58
102
58
99
92
138
148
178
132
69
110
86
137
126
86
144
92
120
55
37
105
168
152
105
106
112
56
91
67
119
68
56
124
56
169
69
55
67
95
156
126
105
152
77
77
55
126
169
138
128
104
126
92
99
58
138
162
128
109
134
105
55
124
55
123
55
152
69
152
192
138
109
134
122
74
122
134
77
124
122
110
55
124
56
122
126
139
67
93
83
178
127
110
37
134
110
188
126
109
81
140
152
56
152
37
74
110
55
171
55
88
110
67
97
67
96
180
101
104
138
131
114
75
131
135
119
122
37
109
104
112
126
105
178
140
104
102
123
77
56
92
69
139
152
55
126
105
152
92
111
80
138
37
110
105
80
124
69
110
114
111
67
96
93
105
69
92
152
55
138
169
83
92
144
79
135
92
88
58
86
111
126
111
138
104
99
92
144
149
117
178
128
137
37
56
122
168
123
86
138
126
67
144
122
122
109
178
136
127
104
171
69
93
180
137
156
128
122
56
55
152
130
163
134
107
69
55
58
55
55
168
78
111
74
55
56
122
92
107
122
92
105
138
114
122
105
58
41
127
135
126
56
168
55
126
122
58
110
101
92
58
92
76
56
93
99
86
128
77
55
119
140
138
124
110
110
144
136
75
114
92
110
138
58
55
138
117
55
56
146
109
124
104
92
56
55
134
167
110
97
143
92
55
67
152
79
92
125
92
127
139
109
96
97
127
56
55
97
98
69
92
37
98
122
83
128
124
92
136
104
105
122
124
67
104
144
139
89
138
69
105
93
67
84
93
67
104
92
156
131
139
109
123
80
92
115
68
97
92
91
138
149
74
99
123
108
131
56
122
55
58
138
138
123
139
55
92
115
126
125
55
105
95
138
111
122
79
152
37
58
127
122
126
107
67
128
92
148
127
79
126
124
79
91
103
134
110
127
122
105
138
127
100
69
67
136
126
122
74
169
122
117
111
111
124
120
152
122
122
139
110
119
55
126
122
146
111
122
104
118
138
74
167
92
119
56
86
110
55
100
77
98
93
67
79
99
127
132
101
55
55
111
92
118
58
138
123
132
77
117
56
91
92
92
178
146
104
146
130
121
68
137
138
105
130
78
171
132
152
100
152
81
55
88
55
110
111
55
141
55
122
105
105
122
109
55
69
77
142
77
171
168
132
56
130
122
91
122
91
37
100
104
144
139
104
118
84
86
104
122
105
56
123
55
67
93
92
125
126
123
84
92
152
179
125
56
178
92
37
37
103
126
123
67
67
111
69
92
127
109
110
152
67
110
135
109
139
105
84
107
110
110
138
79
105
117
58
68
57
67
126
138
110
126
126
74
37
127
89
55
92
94
110
67
169
92
105
105
109
144
69
131
132
92
110
92
130
37
119
99
84
152
55
56
110
37
75
123
118
55
137
142
108
93
93
109
92
127
58
93
119
55
142
139
98
126
69
105
103
139
68
137
92
128
84
127
55
105
130
104
94
67
145
93
122
107
107
169
58
114
68
56
55
124
178
37
67
110
119
64
139
126
92
107
122
138
104
37
55
169
93
111
124
89
178
81
93
102
68
67
103
102
122
136
152
126
108
178
138
104
77
84
69
138
134
92
97
104
72
105
92
182
140
58
146
67
77
83
99
138
126
127
139
67
55
55
134
178
105
55
178
104
95
122
55
92
122
139
104
144
56
101
79
132
124
107
56
78
110
80
138
77
110
122
67
92
105
146
152
75
107
92
128
99
110
126
118
92
105
105
123
99
152
95
169
91
91
93
123
104
144
74
110
122
146
142
126
111
127
98
122
144
122
92
110
55
105
55
92
58
107
117
120
69
139
93
98
93
105
158
74
94
102
138
106
139
98
77
134
80
122
37
146
93
119
122
37
158
122
55
86
110
55
92
126
132
156
112
146
109
37
108
128
163
93
132
132
111
105
55
58
92
178
92
136
105
138
122
93
105
130
77
122
92
68
67
165
56
86
86
140
103
119
84
67
136
110
107
130
140
56
101
55
152
104
122
84
138
69
58
86
75
112
110
67
126
165
136
109
146
126
105
37
138
93
67
56
162
37
110
127
171
122
109
140
106
158
55
134
122
105
119
178
110
105
134
92
122
127
127
92
92
134
77
55
122
110
126
89
136
140
168
124
152
69
168
105
93
110
105
110
139
126
55
92
139
79
105
139
114
139
135
77
138
169
109
148
79
104
98
144
144
58
67
91
160
126
93
126
95
152
105
138
117
122
158
178
122
95
99
55
109
127
110
37
105
117
69
110
56
110
178
142
105
67
103
119
83
55
144
105
122
91
132
124
134
104
122
113
56
93
144
104
127
97
91
126
136
106
148
132
138
55
124
86
88
75
56
105
92
111
83
104
115
122
67
107
37
89
152
158
138
171
110
80
106
88
37
127
126
119
149
86
77
144
67
143
138
103
69
56
99
126
83
92
105
145
127
93
140
37
114
104
127
127
126
136
126
138
68
140
73
130
105
83
119
98
69
56
111
138
37
55
138
126
37
110
75
110
146
77
178
144
92
116
80
119
56
122
92
110
188
105
77
152
110
83
119
178
56
79
128
126
127
93
93
105
37
56
139
111
138
126
130
142
92
138
110
93
138
122
104
37
58
79
123
128
122
37
103
105
139
55
144
105
113
92
122
105
122
37
92
93
75
180
105
110
139
99
146
91
128
92
122
37
132
84
146
109
58
152
58
74
107
69
56
92
117
79
111
92
91
67
109
92
122
197
55
98
79
162
55
105
79
92
144
92
77
69
110
146
139
37
148
103
138
55
105
92
146
109
76
105
122
109
104
37
67
103
128
67
138
122
138
141
104
144
122
120
145
146
145
92
88
79
110
162
113
122
127
110
37
138
99
158
67
114
106
58
122
122
93
122
146
93
134
180
146
93
86
138
55
167
136
128
58
122
126
75
92
105
91
138
146
123
111
58
138
107
92
162
146
144
134
37
163
91
139
56
106
134
126
195
122
140
100
146
99
152
92
115
128
105
56
126
126
37
75
69
86
127
79
92
139
105
92
138
140
123
79
138
122
105
55
93
98
139
110
105
89
92
169
138
89
108
128
79
110
110
140
75
79
119
152
171
92
132
105
111
167
55
104
104
37
107
178
93
55
112
67
122
75
109
93
129
93
178
92
104
92
93
99
141
86
134
104
132
152
114
128
127
103
91
139
137
110
104
107
37
110
124
126
57
124
105
56
79
56
146
58
134
117
180
169
79
99
99
138
86
129
137
128
55
83
137
117
88
92
105
99
37
124
105
56
112
55
128
58
134
37
75
92
56
120
69
58
92
93
109
92
110
163
92
134
93
69
93
104
55
55
122
92
55
110
91
169
99
112
145
93
92
77
138
58
83
67
121
171
146
92
92
105
146
138
83
144
55
93
145
126
95
110
110
69
79
122
152
99
144
126
56
105
126
83
91
110
79
144
99
107
67
105
91
146
128
158
110
104
140
139
92
56
87
144
168
122
92
167
112
104
119
139
99
74
132
55
92
88
163
56
131
120
152
122
83
86
55
84
69
98
141
132
144
68
110
69
67
122
115
75
109
111
110
110
127
37
118
72
135
137
99
92
146
100
182
104
105
67
69
105
131
91
134
67
79
197
110
163
91
152
67
122
102
67
92
56
55
92
126
109
171
144
137
99
126
104
144
146
180
74
105
122
138
122
169
74
56
93
138
92
126
119
152
88
96
104
110
122
58
99
138
139
122
55
104
67
110
138
127
124
97
111
105
104
124
104
110
55
103
178
127
126
92
67
139
104
111
97
86
139
106
117
55
115
127
146
80
162
55
131
169
105
109
75
37
115
55
171
122
144
126
92
83
110
158
37
140
111
148
110
126
92
110
104
58
122
104
92
178
58
37
105
180
77
109
120
122
123
119
92
86
162
75
122
160
122
105
55
77
110
109
55
91
136
110
110
56
126
105
79
126
79
144
122
55
103
128
163
67
98
178
158
37
92
58
128
110
135
67
115
55
105
111
117
55
127
105
163
118
55
144
75
67
99
56
152
139
55
138
104
56
126
114
72
127
37
101
93
152
93
99
55
127
110
86
126
88
58
92
139
130
91
178
75
178
144
146
56
69
122
110
58
79
114
55
110
92
122
92
139
89
105
178
140
77
37
122
90
146
58
134
148
74
138
109
104
75
144
152
122
93
103
69
75
145
55
86
84
67
92
75
76
138
148
142
128
119
55
122
131
138
56
74
98
55
139
162
130
56
105
68
178
110
104
138
93
37
82
69
107
128
126
37
120
104
105
139
110
125
140
144
95
105
135
178
92
137
178
79
94
91
55
37
93
91
169
126
178
104
93
138
148
105
100
104
84
55
118
110
130
77
138
144
104
104
120
169
104
109
99
105
123
67
178
92
158
149
67
122
92
127
67
89
74
139
122
145
104
152
139
126
104
123
75
139
122
86
93
105
136
127
138
84
92
92
69
134
126
137
92
128
55
144
98
56
105
93
56
105
103
92
37
119
110
121
114
127
111
144
110
92
138
171
138
110
151
104
114
110
103
138
97
126
58
55
105
56
127
126
84
126
119
55
140
152
119
110
127
67
100
92
92
99
119
110
56
109
140
138
138
69
104
111
138
126
124
58
181
104
127
122
158
99
126
110
74
58
160
92
119
122
77
77
119
92
92
119
99
138
163
178
69
145
105
58
111
146
178
110
144
134
123
138
149
55
134
138
138
88
126
139
91
55
92
104
107
105
138
83
140
148
58
105
67
104
105
86
65
93
145
178
128
103
104
67
58
178
37
86
126
138
110
126
41
104
69
152
93
92
134
105
83
146
123
105
79
92
145
123
127
122
79
103
122
169
92
55
139
112
107
55
140
92
126
138
97
61
114
56
67
126
103
68
139
126
122
110
163
122
92
110
111
120
122
122
67
92
126
122
99
92
144
92
128
93
78
139
130
152
112
123
94
127
37
110
164
122
127
67
138
125
131
55
56
119
110
105
65
131
69
114
55
164
55
58
68
91
92
138
67
67
139
55
84
118
56
105
110
130
111
58
144
84
162
91
108
127
115
126
131
178
127
111
93
127
67
79
140
122
77
122
37
110
177
107
58
58
132
149
92
67
119
58
37
93
163
67
100
138
158
146
100
121
55
111
74
110
144
55
67
110
105
98
104
100
55
93
93
97
104
98
110
139
130
109
93
120
102
111
99
92
146
179
162
110
126
138
106
67
126
115
92
93
182
140
119
138
92
138
110
75
128
101
58
99
79
131
132
152
138
92
140
55
126
168
158
122
67
91
75
122
56
120
107
92
74
56
93
79
105
92
138
138
79
126
93
107
97
126
67
118
112
98
97
129
105
120
120
83
86
146
69
56
138
109
148
107
150
138
160
104
146
119
74
91
104
105
140
134
75
55
104
105
124
122
92
138
188
92
178
110
119
126
55
99
138
55
97
104
55
67
111
94
99
83
92
107
126
78
84
37
86
158
139
146
109
109
138
69
92
83
127
92
37
126
120
127
139
109
126
110
117
144
119
104
138
127
104
92
114
92
85
104
123
37
110
84
72
92
134
97
134
127
95
106
126
74
138
56
127
146
56
101
132
91
139
132
56
169
136
69
37
119
84
123
67
75
123
122
115
140
58
127
94
55
83
163
91
68
68
92
109
138
55
114
92
55
91
99
138
75
73
72
139
144
110
97
111
122
127
134
105
149
129
55
86
104
178
148
128
55
110
58
119
138
92
56
126
180
104
119
152
109
110
93
123
86
104
93
163
135
144
92
109
110
92
109
139
123
101
126
55
105
110
122
158
105
123
138
93
104
178
103
55
55
140
139
127
75
92
92
55
124
97
100
126
138
146
110
67
92
92
112
138
127
104
55
108
104
142
122
37
110
69
92
92
37
102
158
67
178
128
126
37
122
98
122
138
91
105
138
144
169
92
164
111
105
134
122
108
104
92
146
109
139
119
164
91
127
138
55
148
56
89
56
111
81
110
86
95
92
178
105
37
105
178
138
79
67
119
37
84
97
69
79
83
110
138
55
37
100
102
144
108
93
146
165
146
104
160
147
138
126
138
103
127
124
123
156
67
169
110
122
123
114
107
104
91
105
111
92
140
118
124
110
55
126
123
127
127
58
130
93
105
91
94
138
37
69
93
93
58
101
56
93
67
111
128
122
74
111
126
122
117
171
97
55
55
55
91
77
55
144
69
110
100
77
37
150
95
110
130
74
92
67
122
56
93
37
131
168
128
158
169
104
94
55
105
104
107
128
105
102
92
110
97
79
101
138
99
110
144
77
132
138
127
126
104
67
92
138
79
67
130
79
123
67
92
122
144
93
150
79
55
112
105
120
126
146
95
178
123
127
127
119
92
123
110
126
56
122
120
56
124
56
114
110
110
92
138
122
75
83
58
94
104
138
91
92
110
118
37
129
122
55
37
158
92
178
169
119
55
86
98
123
110
109
140
122
103
108
67
131
119
127
58
93
199
146
86
56
152
117
106
139
105
135
58
67
55
69
107
122
152
106
67
122
127
130
167
123
142
104
107
120
55
115
126
137
92
128
122
88
162
98
99
122
105
114
76
104
122
146
91
158
92
103
109
123
144
119
123
67
178
92
140
105
128
105
55
145
55
122
92
122
122
122
127
122
67
72
58
97
37
56
128
163
67
67
56
138
124
169
107
123
104
126
127
37
83
132
132
119
130
69
93
123
92
55
74
105
55
126
74
37
111
138
164
104
104
97
104
103
92
97
92
127
91
55
69
56
67
91
126
152
163
91
56
110
69
93
152
122
178
122
86
79
55
122
91
55
81
92
58
110
138
101
55
102
123
126
119
165
92
110
118
110
135
81
110
139
92
123
91
104
113
158
119
37
84
92
149
58
144
56
99
131
122
145
122
92
131
99
109
92
100
58
110
115
104
117
84
56
58
120
92
110
138
110
110
122
178
114
107
92
139
105
88
88
169
100
55
75
104
73
110
144
105
56
151
169
74
128
69
146
178
138
56
103
126
162
101
125
141
75
37
138
111
69
92
94
164
55
75
148
97
76
118
110
37
69
131
168
55
79
110
121
160
74
128
171
138
92
97
179
178
110
101
126
67
101
126
92
37
134
111
58
124
110
105
99
147
109
67
67
37
106
123
92
91
64
105
67
105
140
162
144
152
171
180
145
92
91
122
73
110
167
55
139
138
55
122
139
126
104
105
56
92
106
105
73
119
95
169
120
144
105
146
55
105
93
69
122
144
101
178
122
152
55
79
92
105
152
55
105
124
91
93
91
102
105
169
127
152
56
55
58
92
80
67
55
131
132
67
37
148
138
117
105
114
144
98
126
136
109
139
87
122
91
139
56
73
92
67
132
119
137
138
86
150
93
110
110
134
92
93
149
93
67
138
122
37
55
148
58
169
129
106
69
86
56
171
165
140
55
127
67
55
58
138
92
126
98
67
83
92
122
67
132
37
139
129
67
92
99
91
41
56
89
127
139
56
119
93
93
56
124
55
92
122
67
79
37
110
74
138
127
110
55
41
169
126
136
37
56
122
152
139
110
138
139
110
99
122
56
124
69
84
56
105
119
91
124
168
99
105
55
92
92
92
117
89
92
112
80
138
126
169
55
138
67
83
104
169
151
92
37
140
37
86
97
74
105
138
108
138
83
100
55
136
55
55
37
55
86
92
92
126
165
119
152
55
128
179
92
110
139
69
140
110
117
141
139
139
146
104
56
124
105
55
93
118
69
114
92
97
75
92
119
132
93
134
92
149
92
130
124
98
146
87
178
37
109
37
109
127
149
132
81
122
58
67
103
37
55
91
158
165
105
140
37
169
105
55
138
134
75
152
92
86
126
144
111
122
92
103
104
98
122
126
72
152
84
67
152
126
83
128
134
93
110
92
119
37
128
55
138
122
178
97
119
122
110
77
105
110
122
140
104
92
93
92
138
37
103
92
130
138
92
178
94
92
105
37
55
37
92
58
37
178
92
127
111
96
122
138
122
56
105
69
126
139
79
105
152
95
79
106
146
130
102
117
55
138
110
55
74
122
138
138
75
92
145
168
104
67
92
135
110
123
164
109
110
123
178
131
92
93
122
92
100
67
112
130
92
138
37
122
105
139
92
138
105
37
99
93
126
56
153
92
131
92
55
86
105
110
126
139
92
102
189
55
56
122
139
92
69
182
109
79
178
58
77
67
126
128
111
120
126
104
124
122
105
75
127
67
93
123
99
125
107
77
128
119
92
55
111
102
122
37
114
69
138
67
126
37
93
92
122
67
99
139
92
134
128
158
93
151
87
37
123
69
58
103
68
93
105
103
55
74
55
58
131
110
92
92
55
67
110
125
92
131
104
119
132
105
178
97
123
77
158
67
152
138
169
109
92
93
127
122
37
142
89
127
92
130
67
109
56
81
142
55
92
126
67
158
122
105
55
126
67
55
126
105
150
56
127
105
56
92
110
110
122
110
107
126
56
102
132
139
110
110
101
119
136
139
126
165
56
130
122
144
86
168
110
119
122
171
178
110
58
84
67
101
110
56
126
97
105
92
144
131
92
138
88
139
146
114
110
79
83
128
171
123
169
58
110
75
138
91
114
124
169
135
134
67
128
177
104
37
67
162
74
109
140
91
105
55
67
127
178
122
55
100
104
83
37
93
79
105
110
110
139
122
86
92
92
55
110
110
37
148
56
89
109
55
56
148
127
128
122
75
55
108
111
99
102
86
55
109
92
128
103
56
83
55
146
199
132
110
114
158
92
100
98
134
94
55
109
56
105
67
123
112
178
104
69
106
139
144
162
92
74
126
86
122
89
120
55
81
165
111
104
134
122
130
77
88
56
126
92
110
105
56
123
140
138
139
104
93
141
144
126
121
156
122
86
145
103
95
126
137
55
56
67
107
92
122
142
111
88
168
122
126
92
109
122
105
105
149
128
163
137
104
92
110
178
55
105
119
79
79
55
121
138
122
93
110
97
126
91
139
128
67
117
92
74
37
104
56
118
74
78
92
110
55
146
152
93
69
104
138
103
56
139
126
188
92
125
93
144
55
128
114
126
122
110
58
149
55
144
122
86
79
92
123
83
97
126
114
123
92
122
122
100
93
110
109
75
127
104
67
119
92
81
131
67
86
105
111
103
122
122
37
152
110
55
178
145
105
122
105
92
146
122
102
114
110
138
88
113
138
120
120
58
74
160
72
168
92
138
58
109
122
122
151
126
105
37
55
110
37
167
110
171
69
107
74
58
139
110
137
104
83
136
92
99
92
132
126
122
83
103
122
138
92
92
178
69
121
37
122
130
99
56
127
134
127
55
103
114
136
102
69
37
58
37
139
126
101
56
122
121
169
58
55
89
55
111
107
104
56
55
126
115
67
93
124
126
65
132
122
67
128
83
107
67
122
74
77
105
95
128
114
154
136
120
136
152
146
100
148
58
178
114
122
104
105
138
104
119
107
67
122
93
55
86
103
134
138
83
91
118
146
126
67
122
55
126
37
109
84
109
110
92
55
126
37
128
119
107
67
110
107
68
171
137
138
126
131
110
122
110
55
93
86
119
92
104
137
152
105
37
139
92
105
56
122
124
148
168
55
103
92
146
158
146
91
131
55
88
109
37
118
109
55
107
139
91
105
37
145
122
99
100
122
139
91
77
164
139
56
123
169
127
120
105
152
92
143
58
123
135
107
69
101
55
93
83
56
79
139
93
102
74
138
152
105
124
168
144
92
79
37
58
131
128
122
69
95
158
144
107
122
130
126
105
74
37
37
105
105
152
68
37
98
144
111
55
122
168
69
77
110
37
122
104
75
74
79
56
105
58
75
167
92
92
126
97
140
140
181
124
178
131
55
92
140
98
104
92
58
126
178
180
92
105
104
110
67
58
105
110
138
112
126
103
56
67
127
92
94
135
79
92
86
119
69
146
56
138
37
145
126
55
123
105
147
122
127
122
104
127
91
126
86
125
102
110
106
109
132
92
37
105
168
128
144
93
37
123
180
107
110
93
109
83
123
79
138
68
107
138
110
104
103
110
114
105
144
37
104
110
55
41
105
102
91
123
91
138
145
92
104
145
67
136
93
105
111
111
77
111
108
74
127
126
55
99
139
77
146
114
55
122
179
55
55
144
160
148
128
178
100
83
79
92
93
93
178
122
75
78
75
127
122
98
58
122
126
56
122
89
138
97
104
104
100
178
108
93
69
144
134
92
37
77
128
146
67
122
126
119
112
138
67
55
146
152
109
99
163
55
169
92
139
69
152
126
91
104
160
127
146
55
61
152
55
58
152
95
163
139
83
103
122
119
37
37
56
110
104
110
122
69
105
105
128
130
55
55
93
110
122
199
178
99
130
93
56
140
105
132
92
110
122
114
107
105
124
128
104
58
147
144
111
126
112
77
138
110
126
105
93
104
126
58
111
101
132
37
180
152
110
158
152
92
56
94
74
37
93
102
93
92
100
56
77
93
96
105
92
104
180
92
119
110
100
152
75
79
146
126
130
77
110
138
122
189
105
106
126
92
72
114
75
56
132
122
99
123
67
110
95
119
178
79
128
127
97
179
92
75
104
67
55
92
37
103
55
67
119
110
55
67
120
86
93
110
55
110
128
92
178
110
55
107
111
92
55
104
58
92
127
93
109
138
105
91
126
79
138
146
92
93
110
109
55
122
102
104
178
168
123
98
74
105
84
140
67
109
55
67
100
169
139
67
37
110
161
55
92
105
75
103
110
136
135
55
124
56
92
103
56
97
105
126
127
128
55
137
126
104
56
146
69
169
152
110
128
79
126
92
105
127
145
67
92
110
69
178
58
118
89
140
123
122
120
67
68
69
105
127
55
138
95
139
126
152
103
171
130
144
94
106
119
67
110
80
148
138
78
58
139
77
79
128
165
37
89
111
126
98
86
91
92
110
178
58
111
99
134
93
77
92
97
153
101
92
106
146
138
69
139
92
126
56
110
105
110
92
110
128
105
163
37
79
105
126
178
138
55
76
134
111
92
123
93
91
146
111
98
122
138
69
122
122
110
128
138
67
144
97
67
92
98
164
192
93
86
125
162
178
122
110
119
144
97
55
55
75
110
55
144
104
103
123
67
86
138
93
146
86
119
103
118
130
127
110
91
67
58
67
134
110
79
93
93
77
74
58
56
129
139
112
100
123
107
91
169
100
138
111
68
122
151
110
98
109
105
134
104
138
126
139
69
142
180
92
138
58
152
156
55
100
130
92
134
56
56
67
138
138
108
110
138
92
93
152
79
138
55
122
110
111
180
138
110
178
144
148
146
105
92
178
67
138
111
122
122
126
117
55
92
105
91
122
113
56
105
92
169
134
146
126
92
126
93
67
92
148
105
95
123
81
67
138
171
126
144
92
122
119
178
104
55
102
67
105
106
114
110
92
84
99
126
92
126
144
122
91
74
106
120
109
69
105
114
131
122
92
122
126
127
110
154
108
126
75
97
55
92
92
92
97
139
92
127
98
92
110
92
122
122
58
104
92
93
134
93
129
58
139
111
69
140
117
74
55
93
122
91
69
138
103
138
92
69
92
107
124
148
142
86
86
92
105
126
152
83
92
37
115
110
37
81
77
146
55
68
178
138
67
92
124
140
67
74
55
91
58
162
140
107
134
83
126
55
76
126
77
68
55
138
126
169
107
86
126
67
93
107
58
127
138
152
92
93
58
105
105
98
67
55
79
56
55
86
126
122
110
93
108
119
99
37
86
111
146
124
169
67
110
107
69
93
127
123
126
104
110
93
110
103
105
105
126
77
138
105
37
138
105
152
126
144
89
126
101
105
107
127
122
80
126
108
91
163
111
111
122
119
58
92
104
37
127
93
139
86
105
119
135
117
117
56
138
91
137
105
139
110
69
67
106
143
105
126
67
178
124
109
138
74
123
97
67
123
178
110
92
178
105
110
130
37
91
55
92
111
103
56
103
92
92
126
67
122
107
92
95
126
93
55
104
56
55
86
92
55
165
37
178
111
122
69
104
56
93
146
144
126
92
102
55
144
137
93
122
109
178
75
93
79
138
105
119
108
121
105
140
110
107
122
146
102
146
105
126
75
83
105
122
37
104
58
67
55
126
75
102
98
67
152
147
152
93
55
79
37
55
89
69
136
107
77
104
106
91
171
104
134
110
81
92
107
126
95
123
164
89
178
122
138
156
37
79
131
126
91
86
126
169
109
125
112
152
169
55
55
111
139
105
126
119
93
136
105
58
92
99
138
58
56
182
97
99
55
75
104
192
139
77
93
188
111
199
58
107
56
86
93
105
55
109
92
115
126
122
140
67
97
101
138
91
114
134
124
56
139
127
163
103
139
67
58
123
77
141
56
92
142
139
106
139
110
55
37
162
122
110
56
56
105
69
110
93
126
67
79
104
55
55
123
138
124
74
118
55
110
58
37
110
104
171
67
110
77
134
110
140
110
112
92
97
150
75
101
126
152
120
55
93
99
122
55
55
86
69
168
138
126
160
69
145
77
124
104
119
122
127
91
144
104
55
111
146
55
144
92
55
55
119
55
110
124
92
128
124
126
55
106
109
137
74
92
93
130
178
120
110
55
152
74
105
178
135
122
131
79
104
67
152
122
110
178
148
92
171
77
55
102
148
122
178
83
92
120
79
92
152
107
128
69
131
104
162
152
138
55
128
69
115
110
55
91
138
92
122
95
178
117
37
122
92
97
119
103
92
69
84
138
93
152
55
123
108
134
93
144
117
108
92
104
86
58
103
152
95
93
102
126
150
169
139
104
105
56
126
93
69
148
69
126
160
119
129
144
107
158
87
110
138
83
139
145
92
92
137
75
123
152
93
74
55
78
126
105
144
99
77
144
130
68
91
127
92
188
168
100
140
130
126
169
92
128
110
92
105
122
130
163
127
110
55
126
122
178
177
55
79
92
37
140
169
97
56
103
104
127
128
104
105
37
122
122
158
68
79
122
111
132
92
169
168
37
127
110
110
110
134
67
86
92
69
122
110
122
55
69
105
110
37
55
110
99
178
110
107
122
92
152
138
132
79
101
110
107
107
178
81
103
104
122
55
67
67
140
126
56
99
86
127
130
138
135
120
100
131
56
92
105
122
67
106
169
122
55
92
178
83
124
98
123
67
138
103
91
103
110
126
89
126
178
37
84
140
152
127
127
107
67
111
141
139
123
77
145
93
91
127
110
97
69
146
122
99
55
93
55
105
136
75
74
125
55
127
124
55
55
89
92
58
55
152
110
127
86
119
55
55
79
126
92
178
93
86
105
55
67
92
69
129
122
122
79
171
67
67
67
109
110
178
92
86
92
58
112
79
144
124
84
139
101
107
112
127
75
122
126
126
98
148
102
148
122
162
99
138
55
86
103
127
144
178
112
121
129
126
93
139
137
99
83
81
164
165
111
110
74
126
164
126
180
123
104
67
75
138
77
122
87
92
178
146
91
171
131
75
178
122
76
132
83
137
105
91
69
109
56
58
110
192
55
77
83
138
120
138
104
58
37
104
122
152
139
110
55
99
91
164
138
178
79
177
144
107
127
78
93
125
122
109
68
169
134
126
67
104
169
139
58
97
137
144
55
127
104
124
56
134
130
146
128
56
152
129
146
110
141
99
55
58
123
152
92
138
131
55
122
152
144
80
107
182
105
122
93
180
152
68
121
103
99
67
92
146
138
69
165
105
152
126
178
55
138
92
110
124
104
105
104
136
92
105
138
169
126
110
178
126
37
67
92
130
109
169
138
110
146
126
122
169
92
89
77
100
134
91
150
124
55
37
74
101
100
124
97
37
188
136
67
98
132
98
163
86
120
107
136
37
158
101
145
126
138
67
92
112
105
55
58
68
122
132
56
148
126
92
126
102
111
123
135
146
126
92
81
112
75
99
92
91
139
93
86
92
74
123
91
114
97
92
105
138
137
93
74
79
127
126
98
138
108
112
140
124
169
188
123
107
93
146
139
94
140
58
93
122
124
99
110
134
92
92
110
92
107
110
127
92
109
55
83
104
105
126
94
126
168
128
99
123
104
122
92
112
178
68
69
79
104
144
140
55
104
92
75
128
92
97
105
94
111
122
110
105
89
92
74
93
58
122
134
117
145
79
123
122
178
91
110
79
99
55
83
83
75
127
69
80
110
110
129
67
69
91
149
100
105
92
77
163
93
91
110
162
110
140
110
56
126
92
86
55
92
151
126
69
110
110
151
37
123
122
83
127
104
144
67
71
67
105
105
120
105
79
169
110
79
104
122
117
95
122
92
105
171
111
37
107
98
55
67
86
164
84
110
92
111
149
125
111
139
138
105
123
105
138
100
64
100
92
93
127
114
86
126
167
110
91
58
56
69
123
113
105
180
110
104
55
93
104
55
69
55
110
110
167
58
126
119
109
104
122
86
138
112
128
83
92
122
88
92
169
37
92
126
110
110
92
75
105
139
55
67
37
104
83
127
178
83
122
79
126
112
56
58
131
74
144
128
92
55
97
69
97
178
122
100
93
81
75
74
138
37
79
55
178
68
126
83
126
138
146
103
139
105
86
110
127
93
97
83
74
56
148
86
117
92
126
105
178
100
109
146
55
152
108
127
74
169
107
55
122
119
92
138
168
154
67
105
111
123
144
126
113
93
144
99
104
138
100
126
104
122
123
105
178
103
140
98
144
95
138
127
93
80
123
122
91
92
67
105
56
80
58
83
55
146
123
122
92
158
100
96
124
138
132
83
102
122
139
99
109
105
140
91
103
137
169
92
138
84
86
128
55
130
67
109
113
105
55
56
37
58
97
74
103
105
126
110
129
103
107
92
86
110
127
160
67
104
138
55
123
97
69
125
99
138
55
119
148
144
104
104
131
79
88
103
100
152
146
105
146
146
139
132
148
100
92
188
152
139
88
55
165
92
168
132
137
146
126
56
199
67
105
93
125
92
146
74
89
122
58
178
122
79
55
138
97
92
132
164
58
180
129
105
118
144
101
74
107
146
138
110
67
126
93
110
69
67
93
120
107
138
79
67
139
103
120
81
139
92
111
152
84
101
37
58
91
104
92
93
105
100
93
126
146
79
110
178
168
89
140
92
97
104
132
56
111
79
122
67
55
139
138
171
179
105
99
110
67
83
55
37
79
180
75
139
89
88
58
105
69
118
126
102
140
148
92
152
179
94
126
92
67
104
131
83
55
153
67
110
123
169
92
178
92
127
134
128
152
127
124
55
79
122
92
89
139
67
58
119
136
169
104
104
126
109
123
119
165
55
91
77
144
93
138
56
138
122
126
149
37
88
131
126
139
127
92
180
68
99
93
102
178
86
55
58
93
79
126
98
138
122
178
127
56
93
77
79
104
81
56
58
136
138
92
144
125
123
138
79
126
162
122
127
144
92
138
152
75
130
168
58
134
126
56
104
92
99
126
67
105
105
127
93
99
110
94
145
69
98
55
145
56
128
132
56
79
127
111
105
109
69
68
141
56
138
56
162
126
138
86
162
89
93
110
97
122
126
140
55
112
110
148
119
105
83
92
99
127
126
135
68
74
168
89
122
67
104
58
55
91
98
119
132
91
126
138
92
164
56
146
124
107
105
99
95
104
93
114
128
86
93
138
93
92
126
111
122
55
111
122
140
105
139
130
56
152
110
122
119
106
144
125
158
169
69
152
144
37
152
56
126
122
104
56
105
91
92
55
105
146
144
178
138
169
100
69
97
67
107
92
92
138
91
91
134
86
91
58
149
58
126
122
55
138
86
122
122
86
67
91
122
55
68
104
104
118
180
131
55
73
104
89
92
139
146
139
74
104
160
109
105
104
127
127
122
138
126
56
56
105
56
128
105
167
122
129
107
92
169
92
55
169
127
122
137
55
105
138
111
84
105
144
110
111
113
56
98
68
146
107
120
127
92
74
134
128
67
79
114
67
126
67
109
84
112
93
115
92
56
93
75
75
58
110
92
56
92
74
75
55
127
95
93
158
105
122
92
178
158
192
171
99
93
165
103
83
134
83
100
146
148
127
92
125
67
122
74
178
137
79
92
138
92
138
134
122
105
124
131
69
79
139
67
105
92
110
67
138
105
79
120
126
122
167
92
106
92
77
75
169
79
69
55
74
74
79
55
123
93
138
107
122
84
110
139
55
83
75
104
96
58
138
105
178
93
55
140
144
104
56
127
134
122
58
58
138
79
132
152
104
110
110
144
199
139
146
152
56
127
146
140
98
111
131
139
105
111
97
93
56
139
139
93
131
55
77
122
127
111
107
91
110
67
180
138
92
56
93
97
167
178
92
162
119
37
67
138
93
97
132
86
122
122
92
92
68
37
128
131
139
104
92
93
139
56
110
134
95
104
132
84
93
68
145
105
122
112
56
91
56
67
138
164
107
97
137
83
77
110
119
55
83
37
165
140
138
105
91
148
138
58
152
109
178
77
107
199
55
37
91
139
56
37
99
105
116
152
127
105
153
140
83
92
144
139
58
103
104
74
92
107
152
122
119
92
169
122
55
118
138
98
92
122
103
55
75
138
104
86
119
105
72
105
102
119
165
92
37
75
126
69
104
92
105
69
55
106
103
171
104
126
109
128
95
144
77
105
123
105
58
180
92
104
128
92
122
162
79
138
123
114
67
199
134
69
93
124
122
110
178
92
119
86
139
105
178
67
107
144
121
127
55
58
91
77
98
138
102
105
149
126
114
127
92
79
127
103
178
163
92
111
55
67
138
67
67
126
86
127
56
158
98
37
102
105
139
119
67
137
55
109
107
146
168
110
126
125
84
109
152
55
100
69
56
135
164
126
93
91
88
76
93
104
56
106
104
107
111
98
138
75
178
93
58
112
37
103
101
167
126
171
127
55
152
104
164
105
111
84
111
99
105
127
110
126
105
104
114
97
55
111
163
92
104
67
178
152
69
178
37
98
92
89
103
77
79
138
108
78
77
139
77
77
111
110
68
180
58
92
122
148
107
92
55
67
148
84
110
128
92
71
92
140
152
55
74
109
123
111
92
77
112
56
118
122
99
83
131
126
110
92
74
55
107
67
94
148
140
58
92
134
127
99
126
84
58
69
93
164
55
119
131
102
58
77
56
130
138
111
158
103
92
55
58
127
104
123
93
98
146
75
75
93
56
124
37
37
122
37
140
110
58
74
67
105
99
158
78
114
127
87
105
105
126
105
163
146
58
81
58
79
152
144
55
146
80
104
81
92
110
79
93
149
92
119
109
120
123
98
122
92
67
67
138
169
73
146
126
114
67
103
148
124
117
105
91
93
87
55
74
79
120
139
122
105
120
93
122
129
124
144
67
168
146
104
88
110
144
105
83
93
124
74
56
109
92
104
164
123
138
119
92
138
101
119
134
92
58
75
126
83
169
110
111
110
163
37
138
136
147
99
55
151
68
127
69
105
74
132
68
105
142
92
148
99
93
101
95
92
56
55
92
55
56
110
131
110
148
126
152
178
67
97
137
122
74
69
127
139
67
137
123
74
92
119
74
91
99
134
138
126
75
144
56
99
69
146
83
152
84
126
117
99
138
112
92
148
107
130
86
79
177
37
144
56
105
122
55
67
37
126
169
105
69
67
144
138
56
92
73
178
56
55
91
123
100
56
55
111
114
129
75
92
111
123
105
55
101
67
104
169
79
128
139
105
189
119
149
93
122
103
104
97
56
103
169
126
103
138
67
91
84
127
124
128
152
55
69
138
55
110
178
77
67
127
128
69
129
103
105
107
119
93
163
140
131
55
91
126
123
131
67
101
84
91
112
93
139
37
144
119
86
92
163
138
105
110
158
58
103
92
84
55
128
165
126
127
84
145
104
67
77
111
69
162
55
106
138
75
178
110
68
138
140
97
128
134
152
92
99
122
128
110
110
152
168
55
67
58
171
137
80
99
139
144
93
114
104
92
55
55
92
56
126
126
93
141
93
127
56
86
180
99
146
126
86
122
139
137
86
100
118
120
56
109
123
163
104
122
92
37
58
86
75
83
115
67
136
110
110
110
105
180
104
55
79
103
128
139
128
110
169
124
110
106
99
120
132
142
79
92
110
138
120
152
113
178
55
138
56
151
86
107
74
37
79
126
93
99
126
134
56
110
114
104
127
138
105
92
104
105
171
93
105
112
128
122
75
110
93
83
55
55
107
55
168
138
67
105
79
128
106
117
138
128
93
106
74
126
158
93
64
127
69
169
77
139
118
69
145
126
69
74
126
86
105
124
58
58
178
76
77
152
152
92
134
75
86
58
136
67
127
69
92
169
76
127
58
56
117
104
103
109
93
123
55
83
122
127
93
75
179
134
92
92
107
165
139
152
55
152
92
58
119
37
93
122
138
134
56
178
114
127
92
163
145
126
110
149
37
119
86
109
93
111
91
92
92
123
104
114
105
123
111
104
105
104
110
93
92
67
115
123
55
64
122
92
79
138
113
121
168
122
105
105
140
119
110
168
77
110
69
58
99
126
55
119
128
146
86
134
152
139
134
124
146
93
140
112
120
99
86
58
79
69
104
56
109
78
106
112
152
92
37
169
92
79
107
83
92
86
107
83
138
91
69
122
130
131
92
152
99
169
93
131
128
92
138
93
105
103
111
67
93
97
104
169
127
75
110
100
92
58
139
77
95
92
169
126
105
139
92
123
120
99
55
134
140
146
86
88
127
118
58
99
103
138
104
58
123
92
58
127
110
103
74
93
55
140
55
92
104
56
130
105
138
114
55
110
152
107
126
105
152
110
130
123
55
97
122
146
92
168
128
132
92
132
126
98
67
149
92
169
37
120
122
126
132
55
112
92
124
67
110
55
93
135
75
127
79
76
140
119
110
142
128
110
127
69
119
105
99
134
55
93
128
144
104
110
37
102
111
110
93
146
165
91
101
101
128
67
92
67
92
138
97
88
100
139
126
163
69
69
122
37
111
171
110
152
137
110
103
105
128
74
169
107
146
122
105
120
126
118
77
163
55
55
130
92
138
92
178
93
144
199
55
137
105
126
131
110
107
110
104
130
178
58
69
109
91
113
58
141
138
110
111
67
126
93
104
122
171
91
88
127
69
134
110
37
56
55
93
142
110
56
129
107
74
105
75
105
79
86
61
69
126
104
55
105
127
92
139
107
55
99
37
126
69
110
169
93
126
110
126
118
122
37
169
55
110
110
122
109
131
102
55
55
151
103
55
136
105
130
97
122
74
92
84
83
92
67
123
110
37
92
93
79
92
91
163
69
92
122
127
55
75
122
86
122
123
67
117
74
124
92
58
138
83
169
110
92
56
105
152
138
89
152
122
104
152
75
67
67
67
93
93
119
138
84
107
124
92
100
69
37
105
110
169
109
122
55
89
77
144
110
109
127
58
67
152
99
105
131
107
105
37
105
165
134
104
74
120
68
138
93
111
110
69
128
180
55
56
146
110
169
56
127
74
139
58
110
144
126
122
56
128
91
136
111
152
86
122
119
56
158
67
123
110
111
103
55
37
93
55
148
98
69
122
171
56
142
56
168
104
122
109
93
146
168
123
55
139
144
126
69
58
55
56
67
171
104
110
122
105
55
55
69
124
103
92
139
110
92
148
132
58
131
67
93
110
67
105
110
79
99
105
112
92
91
103
92
112
95
105
119
111
105
138
100
92
105
111
105
67
123
163
105
127
124
55
123
87
110
144
134
101
124
79
93
105
105
104
92
136
130
105
105
79
37
139
56
86
123
93
104
160
119
109
121
83
92
126
139
99
104
119
137
37
92
102
126
105
130
127
97
92
138
92
138
178
126
93
178
139
169
86
146
92
122
180
137
69
160
122
99
182
164
67
138
68
92
118
75
56
99
103
107
80
67
180
127
126
124
148
119
93
92
111
138
55
102
67
92
91
55
92
55
92
103
92
92
77
93
132
118
105
103
69
69
55
92
79
67
110
93
97
126
167
128
55
92
152
138
144
105
67
99
178
92
122
152
56
139
138
119
104
148
134
127
119
119
74
139
130
127
55
168
132
138
89
126
130
74
122
122
122
119
55
110
55
92
192
128
98
56
127
37
138
139
107
132
93
105
69
103
103
129
55
92
55
92
104
136
128
92
136
67
110
124
120
105
55
148
138
138
146
134
122
122
144
79
37
67
105
139
91
69
37
87
104
109
126
138
104
97
110
79
110
126
56
55
110
152
124
152
112
138
67
110
178
105
124
107
110
125
123
84
163
144
105
105
92
178
127
138
91
92
55
127
55
92
131
122
110
139
69
37
122
101
119
120
178
122
100
92
122
93
104
67
87
109
91
140
110
120
152
91
105
55
105
88
122
66
95
148
92
67
165
92
110
178
77
93
104
109
126
67
37
149
105
127
180
109
139
122
178
92
144
124
152
56
67
123
93
152
56
178
89
121
105
92
68
104
128
110
152
110
119
126
79
126
105
75
146
92
86
93
97
107
182
104
55
117
92
119
55
163
93
109
122
92
126
37
142
56
92
67
104
110
37
146
92
123
127
122
91
134
55
152
127
75
92
178
83
77
55
55
58
93
138
105
92
126
105
128
127
105
126
146
122
55
107
92
146
105
58
136
110
105
110
163
79
152
105
104
124
122
55
146
109
110
169
111
107
93
124
105
99
78
110
69
93
92
105
103
92
125
67
138
122
126
105
165
97
122
122
117
112
158
122
93
37
119
104
138
123
168
55
146
118
126
127
123
128
67
112
105
37
139
146
171
141
104
37
134
126
136
127
91
139
127
67
55
126
105
152
163
110
98
91
101
107
126
77
122
122
118
169
71
105
102
123
69
55
109
122
134
104
56
111
122
138
128
110
58
55
77
144
140
127
102
91
92
138
86
84
69
160
67
122
131
126
168
64
119
58
152
127
110
99
139
128
140
55
100
152
110
56
107
92
126
67
93
86
127
92
84
37
169
105
152
78
104
93
160
110
123
84
111
99
57
69
178
99
55
119
124
92
67
122
67
169
77
122
169
91
105
128
55
127
93
107
109
58
125
75
111
92
92
105
92
134
120
122
144
122
95
123
103
56
122
123
127
92
109
109
127
162
92
139
146
55
105
110
92
104
128
110
91
111
160
104
78
127
105
138
67
152
105
122
112
132
120
111
169
92
132
136
110
55
126
158
178
105
137
130
126
105
37
125
127
122
107
86
138
119
55
81
131
122
126
178
107
146
152
105
178
178
58
114
127
102
77
110
97
93
37
138
105
126
58
67
99
122
127
86
113
56
72
67
154
140
146
58
77
102
67
109
139
110
126
119
122
126
138
105
171
105
138
164
178
169
130
107
88
134
75
55
105
127
95
105
56
124
126
115
110
134
102
93
122
55
88
103
79
83
79
92
58
110
126
139
91
178
92
105
128
138
138
103
128
58
137
101
138
92
104
126
130
109
110
99
171
104
93
92
92
55
122
126
102
92
158
121
127
86
134
79
75
110
138
136
134
123
126
103
55
180
180
67
103
56
58
55
55
132
144
110
67
107
131
93
37
144
120
109
122
132
93
93
171
110
91
146
74
58
126
92
77
67
144
137
122
102
55
79
110
144
127
160
131
92
148
107
169
105
93
55
97
180
105
127
178
104
127
122
123
146
110
134
138
138
126
138
99
93
79
92
92
134
56
98
122
91
118
134
58
68
92
122
109
67
178
79
122
67
103
140
138
122
138
55
55
127
92
105
122
37
91
95
80
55
93
101
92
79
120
93
37
138
91
92
146
79
104
58
114
122
130
148
162
105
95
109
138
105
163
69
55
131
107
122
93
126
158
136
56
92
92
178
136
139
92
180
69
92
169
92
124
79
158
55
58
126
132
37
55
55
122
126
98
178
134
75
84
67
134
75
58
178
140
103
67
111
144
109
91
58
110
126
146
74
114
144
104
178
105
131
107
163
92
138
86
128
124
139
130
128
117
114
67
93
113
109
56
93
86
99
93
79
105
138
58
123
104
104
69
55
125
37
92
79
75
132
87
127
110
144
37
92
56
171
56
163
55
105
105
126
92
109
67
92
83
92
119
147
68
93
122
84
92
165
67
125
93
103
94
92
87
37
99
77
139
128
105
86
123
119
104
88
105
92
180
114
127
126
127
124
122
148
55
58
110
137
124
119
99
58
122
93
37
88
92
74
67
126
122
131
93
86
162
107
127
144
189
58
104
91
55
96
122
67
104
37
123
67
85
138
144
93
105
120
91
67
79
140
110
165
126
144
123
101
140
178
178
97
68
37
126
126
139
139
145
64
137
119
189
121
105
140
109
56
105
112
120
138
107
128
67
129
163
132
83
107
111
77
92
92
56
95
101
122
107
103
55
145
104
67
134
103
146
55
146
91
148
110
111
105
69
67
75
56
163
98
124
110
146
119
92
105
104
55
122
149
55
92
110
79
122
146
88
92
139
110
127
122
84
178
105
107
134
100
92
105
104
67
109
75
146
86
68
74
128
86
110
122
58
92
93
167
91
122
178
122
138
92
178
152
144
122
105
56
58
109
128
118
138
97
158
104
75
139
56
124
91
126
56
126
102
128
105
93
123
128
128
93
95
72
122
130
97
74
107
92
126
67
168
126
122
104
56
56
105
55
82
102
67
138
148
104
126
138
56
103
74
37
91
124
105
138
178
123
37
138
103
115
58
97
101
77
122
75
189
109
110
119
118
119
58
102
122
55
139
105
135
103
58
139
67
145
134
144
105
55
114
122
58
146
92
99
109
89
67
126
124
120
105
55
104
103
98
144
92
127
126
144
102
146
89
101
107
138
83
127
92
55
79
144
55
55
103
89
104
119
115
104
74
93
99
74
131
138
99
58
78
93
127
144
93
104
92
104
122
126
152
104
69
126
139
138
118
105
134
128
114
146
126
55
127
122
100
67
93
92
92
55
77
58
64
55
180
126
100
87
152
111
102
95
101
87
104
122
162
109
123
69
138
146
56
55
58
102
128
55
37
111
67
110
75
178
55
110
99
123
169
69
169
105
178
105
56
55
81
92
120
91
139
92
139
56
80
93
55
97
78
79
87
104
110
138
92
182
178
72
139
57
55
86
136
92
111
69
146
56
37
110
92
128
145
104
126
86
127
103
138
122
118
104
130
178
103
55
55
122
144
84
99
120
138
178
72
92
108
91
77
56
126
92
37
119
56
124
140
105
103
152
67
122
136
83
106
140
69
104
111
58
74
138
146
105
110
92
152
55
56
68
37
100
97
146
81
111
129
122
84
37
111
119
149
92
171
99
125
56
95
69
87
126
55
73
120
67
93
92
91
171
110
127
104
139
93
97
67
139
55
68
99
99
103
55
89
178
110
55
58
97
67
152
92
102
152
110
93
83
92
56
84
56
92
69
55
110
127
119
99
158
128
152
92
146
132
123
105
58
92
136
121
97
107
111
139
138
158
122
92
126
127
91
92
55
138
126
105
138
84
152
111
137
115
119
122
98
126
138
139
138
131
58
122
169
105
110
158
128
131
99
104
119
122
58
58
123
127
92
67
148
165
92
137
93
178
74
55
92
126
91
126
37
91
79
67
124
58
128
92
37
111
122
122
83
142
117
134
122
103
163
86
92
119
126
103
104
110
152
128
55
126
127
93
55
130
164
126
92
132
58
79
158
56
152
123
77
134
126
138
109
92
111
117
137
69
55
81
95
55
92
126
117
139
67
97
105
104
126
95
86
111
103
86
124
55
56
105
93
122
93
178
93
165
64
55
126
131
77
122
110
105
105
118
92
121
84
169
75
56
140
152
129
92
122
144
68
110
55
138
126
131
118
105
163
146
92
183
128
97
171
148
152
77
138
123
111
86
55
152
199
140
104
56
86
77
146
138
93
102
178
58
110
169
91
86
37
84
139
122
58
138
92
109
55
75
127
88
111
55
104
151
55
144
92
109
68
134
111
108
125
55
114
110
104
104
140
168
84
79
104
55
138
92
127
140
105
104
76
144
92
104
122
105
180
93
69
119
131
67
117
92
83
129
55
126
89
114
114
110
97
67
93
80
68
105
112
122
105
164
104
103
79
84
68
126
108
117
128
138
93
56
132
55
126
146
138
55
84
92
75
92
69
122
56
110
67
69
67
122
106
86
178
171
86
134
127
91
146
149
105
126
112
137
165
67
91
126
68
109
86
58
178
104
86
128
99
99
92
134
122
180
97
55
55
102
92
110
74
97
91
126
93
55
105
92
111
67
130
138
81
55
105
79
117
122
75
128
92
119
110
128
92
83
58
104
122
111
55
109
110
92
92
69
55
138
123
100
126
58
139
115
139
92
123
103
126
93
122
74
97
104
110
67
152
160
55
93
58
122
158
88
180
144
119
130
83
105
126
138
138
112
134
126
126
75
58
55
110
109
109
158
37
109
108
119
163
58
105
169
83
83
140
126
69
104
110
148
123
134
103
93
91
105
105
92
93
144
99
126
110
82
112
138
104
55
162
138
83
138
37
135
165
56
110
126
93
111
139
56
99
56
107
89
122
138
92
117
55
55
146
101
188
58
126
110
126
110
104
97
129
74
37
89
91
104
119
139
112
120
105
128
79
86
69
135
104
122
92
122
67
67
99
92
111
55
92
100
144
67
130
110
126
140
122
127
102
55
37
92
105
138
58
79
92
84
105
105
75
165
124
127
141
76
83
110
105
79
75
105
84
145
92
55
111
67
103
107
127
69
56
55
92
92
138
146
122
160
77
105
77
105
138
138
110
128
152
56
75
67
138
126
127
111
126
134
119
97
55
140
56
104
55
58
98
130
123
128
126
69
69
104
142
55
56
178
104
110
126
67
56
111
146
110
67
105
93
111
122
144
86
55
140
102
110
152
110
132
55
103
97
58
91
147
83
75
145
131
169
123
104
122
102
107
146
126
139
74
119
119
89
107
104
126
93
171
122
126
79
132
122
124
92
68
67
37
126
104
146
150
56
171
91
137
146
67
122
117
112
97
56
105
75
93
128
126
134
128
140
127
74
105
123
127
56
126
98
117
146
141
164
126
169
93
56
123
128
122
67
77
134
74
67
86
126
108
171
92
131
144
122
105
126
128
160
93
58
148
55
151
55
67
105
117
109
91
107
169
93
146
144
188
67
86
74
67
88
77
58
138
126
56
93
126
118
67
169
83
132
112
77
74
105
92
122
80
141
69
71
105
86
111
140
98
152
101
120
93
130
111
110
92
77
92
86
126
55
140
100
131
91
91
122
92
58
127
144
105
138
127
104
124
142
58
37
79
124
140
103
99
100
138
87
111
130
104
95
124
118
134
139
105
178
78
109
152
129
109
147
69
131
138
58
105
138
122
105
67
110
110
127
152
130
97
92
93
138
169
128
132
67
138
75
131
92
138
79
102
144
112
105
140
56
99
148
152
79
126
178
74
93
79
105
110
108
105
171
55
86
92
109
55
109
69
117
92
77
118
77
77
79
110
58
164
169
152
178
37
56
122
110
75
55
73
101
134
91
122
84
121
97
138
178
178
104
110
77
86
122
78
96
67
163
131
91
139
55
58
56
122
119
134
140
69
91
110
101
122
124
146
92
139
67
67
74
92
118
93
108
178
119
86
103
102
55
109
56
55
74
56
131
169
55
91
111
122
83
55
67
138
58
110
79
92
92
58
58
163
58
55
152
84
69
101
180
105
119
124
92
92
55
91
118
150
163
139
128
126
84
75
135
122
75
93
79
122
93
86
37
117
92
151
146
93
55
126
92
104
67
74
126
126
104
146
139
128
171
110
146
75
91
86
69
105
126
110
118
75
92
110
37
83
56
68
146
91
122
103
105
92
128
59
93
138
75
168
67
91
119
148
37
127
162
91
107
105
138
120
84
105
93
122
138
122
138
74
138
74
110
134
114
122
37
110
177
123
103
58
178
37
98
92
122
55
144
139
138
93
97
110
138
88
131
127
98
110
93
126
103
122
132
122
67
122
105
105
138
127
138
100
144
160
104
105
75
137
146
132
119
55
37
55
105
74
119
56
55
55
112
126
100
93
123
99
164
83
127
122
145
103
67
103
107
56
124
132
58
79
122
105
55
67
56
110
122
99
67
55
105
134
146
99
110
83
140
129
122
56
93
93
113
123
37
79
77
75
103
110
169
148
102
122
127
37
92
74
140
124
167
152
67
92
144
99
128
144
103
86
105
169
100
102
139
109
130
144
55
98
111
146
105
138
139
178
112
58
146
77
143
97
189
92
93
122
127
146
127
98
126
37
111
146
118
134
67
119
37
119
122
93
121
127
127
37
122
58
158
99
77
99
91
119
120
139
68
127
73
55
99
124
99
126
164
123
93
138
126
138
87
37
77
134
126
123
152
103
86
55
37
119
93
91
146
139
146
77
105
105
109
114
138
102
146
99
127
92
123
92
68
58
120
67
91
146
55
123
109
115
101
86
56
124
69
92
55
67
169
127
126
58
103
75
146
162
105
91
92
138
75
93
124
108
92
98
81
58
93
117
110
169
93
55
132
55
76
92
126
122
92
178
110
138
67
152
138
75
78
144
92
122
126
110
56
91
91
89
109
126
139
178
56
86
92
122
93
55
75
110
67
92
94
92
156
146
91
122
84
126
109
69
100
68
105
122
67
111
92
146
91
89
144
100
104
128
67
122
106
109
122
111
79
104
119
110
114
112
97
124
92
92
74
149
93
144
67
163
105
69
112
180
67
126
104
152
55
105
160
138
74
80
152
111
110
74
168
152
110
92
131
122
132
169
122
144
105
152
171
93
130
127
146
144
92
124
92
55
92
152
69
136
104
105
105
55
93
167
93
136
110
89
131
178
86
104
37
68
122
122
79
58
134
69
56
134
138
86
107
81
113
123
131
96
55
138
93
131
93
67
55
67
122
79
178
55
91
91
92
119
111
56
110
58
79
56
91
72
124
37
89
92
152
105
91
92
92
152
168
178
55
104
86
105
79
84
122
111
86
55
104
92
144
102
138
92
55
126
145
104
99
109
77
139
138
146
56
97
83
92
138
146
132
56
110
91
122
55
138
152
124
139
111
73
77
137
163
92
67
92
144
98
92
139
110
110
169
169
74
116
92
74
128
86
107
140
55
138
105
69
92
124
148
99
65
110
119
97
93
92
93
138
138
97
91
126
37
92
56
93
144
93
119
103
93
105
171
93
104
100
55
55
55
122
127
125
144
69
180
115
138
83
95
110
169
67
127
124
96
93
103
79
109
107
127
132
111
138
130
122
178
131
99
104
93
55
137
144
79
142
56
92
55
111
162
55
111
103
127
56
122
103
83
92
168
126
84
104
74
140
68
142
137
93
147
127
126
69
93
109
122
104
126
67
139
110
164
92
92
124
67
110
55
126
125
111
105
139
119
69
122
75
152
121
126
126
108
67
138
99
112
77
93
142
55
77
67
55
104
124
105
67
67
106
162
75
55
56
138
138
86
105
122
92
138
56
156
104
93
37
144
93
91
152
99
110
104
92
109
55
72
105
110
93
135
138
137
67
98
91
122
169
103
92
138
93
108
108
122
92
92
127
178
55
138
105
140
104
145
58
121
77
58
37
169
92
102
138
91
74
171
56
91
126
168
92
69
126
122
74
89
79
55
79
148
93
138
104
178
128
105
103
114
86
110
167
126
92
93
132
92
103
124
98
127
67
92
126
92
92
168
149
138
81
110
144
144
55
180
109
93
55
125
106
134
55
86
91
122
138
79
107
122
56
37
124
164
67
122
79
117
79
93
162
128
89
81
69
67
37
169
58
107
134
122
118
92
104
139
92
92
111
110
128
104
98
110
122
91
97
56
75
144
55
68
130
103
104
76
180
56
124
92
169
122
98
145
37
124
126
141
56
92
122
56
83
89
104
110
122
56
75
107
92
75
104
128
86
56
92
69
111
120
122
56
109
92
180
124
126
114
134
169
67
122
132
124
128
109
158
138
152
86
110
92
92
122
180
56
148
126
144
105
79
67
105
178
37
138
111
126
93
110
126
92
101
67
114
89
138
151
150
122
119
122
110
105
149
171
139
128
139
122
111
92
152
110
115
55
91
78
123
138
55
104
178
83
141
58
77
122
92
109
108
113
55
104
68
55
89
79
104
93
168
148
86
55
138
102
105
58
114
37
93
178
123
139
57
110
119
122
169
92
140
138
74
91
127
126
152
119
171
118
107
86
100
103
106
99
97
79
128
105
58
128
122
146
139
56
55
55
107
118
69
165
67
103
110
56
111
79
74
127
106
171
126
113
122
92
146
55
105
92
56
98
138
156
55
78
106
91
55
119
37
110
114
126
100
86
56
127
112
92
91
144
139
93
97
105
104
139
77
122
92
122
91
111
86
122
37
56
92
98
122
67
127
110
139
119
37
138
55
37
163
93
104
119
86
163
55
56
123
92
126
127
120
121
74
99
58
103
178
77
138
92
92
93
55
92
55
115
178
105
110
144
99
55
92
110
124
123
86
110
37
77
158
139
93
69
131
144
178
178
76
118
122
58
92
118
67
107
169
104
92
92
138
55
92
92
37
165
55
56
178
110
168
75
91
92
130
127
105
74
122
152
105
67
75
158
92
160
122
127
88
58
74
68
130
56
127
139
126
141
131
136
74
144
104
92
69
55
92
119
169
58
130
123
98
178
92
139
178
111
110
138
93
99
104
119
74
86
86
128
86
74
67
178
56
104
84
67
101
136
126
104
122
75
77
109
139
112
79
199
83
106
122
55
55
178
95
92
78
108
69
69
126
139
122
122
92
139
122
115
122
83
144
93
168
138
178
146
169
105
69
103
111
67
163
103
86
119
110
106
105
77
135
105
144
86
104
92
122
111
123
87
109
117
178
134
92
169
67
114
105
110
124
86
100
110
123
86
122
93
139
56
93
67
123
94
126
138
93
92
91
144
126
105
87
92
91
69
105
55
139
119
134
92
152
97
138
139
105
137
138
115
113
91
139
67
79
109
126
55
128
140
122
91
93
127
127
84
74
86
105
55
89
124
96
123
178
126
118
99
140
99
56
91
92
104
105
139
131
74
110
56
126
107
103
116
123
55
69
151
55
105
110
56
79
105
152
122
55
101
148
152
92
127
87
146
92
86
152
122
99
103
58
92
89
55
75
74
100
103
139
122
92
105
69
136
88
91
126
135
110
107
110
134
139
145
56
92
67
104
151
122
97
163
110
138
105
97
148
104
110
146
111
162
126
105
56
152
88
107
141
134
69
130
86
105
89
130
139
126
110
101
110
136
163
105
37
138
92
110
93
75
169
129
55
146
89
169
55
95
119
122
55
80
126
121
93
68
139
138
101
55
127
126
126
67
93
97
109
138
105
152
109
119
93
178
58
55
93
126
122
122
107
110
145
115
119
140
140
106
122
55
77
83
123
137
55
122
91
69
110
132
92
107
79
126
164
56
139
122
97
126
100
146
93
110
56
152
105
134
91
104
102
111
110
92
37
55
79
56
135
119
92
105
104
140
89
169
92
117
78
92
122
142
113
126
168
152
37
67
86
56
152
168
104
156
110
93
123
92
69
146
92
98
56
123
126
91
55
119
55
124
139
56
144
160
120
91
75
178
137
69
126
126
126
126
146
93
109
93
178
105
67
122
55
139
125
75
110
117
146
104
67
146
130
105
126
128
126
152
86
114
55
92
123
126
67
75
169
92
122
92
110
55
139
151
69
56
119
75
110
91
178
67
67
123
126
55
146
58
74
100
103
56
127
99
56
105
136
56
86
92
110
178
72
162
123
55
105
112
37
144
37
91
56
122
171
74
55
109
110
56
139
169
122
140
127
104
146
91
110
110
120
105
112
110
74
146
158
37
117
104
103
93
110
55
93
93
86
99
122
148
146
93
93
104
56
97
171
144
110
92
104
86
138
92
138
152
92
107
144
137
105
69
169
140
105
55
130
86
127
114
37
164
89
136
75
119
139
104
169
152
99
107
56
55
107
139
55
144
103
110
171
67
111
115
127
112
122
178
67
55
55
58
92
92
122
72
103
92
138
86
91
92
67
69
122
127
92
134
104
92
56
100
92
104
92
56
144
122
104
89
55
144
135
58
101
128
67
126
119
126
138
99
105
141
58
67
110
125
55
104
115
92
102
144
127
75
124
56
146
126
58
105
160
127
111
92
146
86
79
131
88
178
137
146
92
132
86
104
76
127
69
100
55
67
114
92
122
56
92
94
109
164
104
91
92
115
102
119
37
105
134
86
73
138
67
93
105
55
103
144
123
55
112
144
92
141
119
138
87
92
158
55
126
67
129
55
79
110
171
125
138
56
126
101
93
139
146
37
146
130
58
119
92
105
138
69
92
153
92
139
55
164
178
127
67
122
110
112
171
138
112
110
67
105
123
55
92
118
88
127
123
122
105
56
119
126
131
56
37
108
67
126
56
105
55
77
67
138
37
86
121
58
67
128
138
37
119
83
118
105
74
122
92
92
139
122
92
144
55
74
114
126
128
130
152
77
93
92
136
88
91
110
126
141
148
69
139
89
103
100
79
123
67
122
69
146
124
162
144
138
180
93
114
79
74
88
126
111
55
137
104
123
55
103
113
69
37
92
56
67
122
55
56
137
91
104
122
109
55
74
56
58
103
178
79
108
138
93
199
146
111
86
111
37
145
99
146
119
56
120
55
131
137
55
92
119
126
55
137
137
104
107
99
105
138
126
139
127
67
92
152
152
69
144
138
127
123
127
37
55
126
37
67
56
104
131
55
105
105
37
139
99
126
55
130
67
109
107
107
127
134
122
119
55
93
104
120
122
58
55
110
108
55
131
55
58
126
92
115
152
74
127
110
122
105
93
138
122
163
93
106
126
67
86
103
86
127
55
92
86
81
122
77
178
111
89
55
92
55
138
115
55
128
105
122
86
130
101
118
104
69
132
118
126
138
139
104
104
97
117
67
110
92
104
148
122
83
138
110
126
120
148
154
104
123
76
124
111
92
180
171
120
99
91
67
144
105
138
127
110
55
37
67
37
117
105
92
58
103
110
104
104
134
110
119
100
37
131
122
130
126
58
75
92
111
138
56
137
55
58
169
126
139
97
58
77
180
144
69
163
124
92
67
69
102
164
139
105
139
119
55
130
109
95
119
111
139
80
127
139
55
103
104
169
127
144
139
128
111
103
58
109
74
117
77
146
122
109
126
92
134
74
144
37
89
127
148
132
107
93
86
105
138
148
138
92
97
74
77
126
144
74
139
56
67
110
119
119
110
126
146
111
91
92
152
37
124
124
92
138
74
117
127
110
101
104
126
92
37
55
92
127
181
101
126
123
91
132
142
94
105
92
127
77
104
75
67
104
91
67
56
93
138
127
168
138
56
105
61
146
148
92
138
122
163
103
131
137
105
74
67
79
37
109
58
37
145
56
81
56
91
119
119
55
178
93
92
124
128
103
126
106
124
105
110
105
110
71
105
68
101
92
146
167
160
137
126
93
83
108
151
144
168
122
92
55
146
87
104
79
69
138
58
132
138
97
92
110
126
128
128
199
86
83
55
110
105
124
55
126
106
158
83
126
55
111
171
122
99
105
146
131
148
124
55
110
138
122
105
139
104
107
114
119
152
156
130
118
94
106
55
122
134
97
67
146
37
135
142
149
122
140
69
74
56
122
67
93
81
109
138
106
58
84
98
126
119
178
138
146
37
67
122
143
37
77
144
126
117
125
130
83
138
152
144
145
144
152
110
137
55
171
92
152
128
120
110
127
112
146
110
92
104
86
67
122
178
110
107
122
105
118
140
98
122
93
56
67
68
113
92
79
92
178
83
106
67
72
75
92
92
160
144
104
68
137
152
84
126
92
37
132
146
91
86
139
180
93
105
139
58
122
160
37
130
115
136
55
107
55
112
94
105
138
105
55
69
138
149
124
163
67
98
37
99
119
178
119
122
142
67
55
56
69
56
138
141
122
138
119
128
122
115
131
138
55
138
77
152
115
105
127
139
122
138
55
122
55
122
104
69
92
119
78
123
92
138
139
92
169
104
104
118
104
122
55
122
152
55
114
67
55
93
92
110
165
132
86
74
110
145
138
137
169
142
120
93
116
105
109
91
93
56
55
122
119
75
122
128
144
123
126
118
140
37
93
138
92
119
77
137
122
136
139
103
158
167
67
118
86
123
56
129
126
122
126
79
56
68
91
138
105
92
56
109
105
67
92
152
163
91
92
126
135
77
105
126
68
138
83
64
124
86
75
152
104
127
100
55
126
55
92
138
105
120
123
122
55
139
68
141
122
138
146
138
110
103
128
84
55
93
58
110
131
105
55
67
122
137
75
69
55
181
86
178
160
104
89
98
123
138
55
119
92
95
178
107
145
55
97
55
134
148
92
138
110
97
84
109
91
55
134
58
110
67
93
92
125
91
105
178
95
91
107
92
127
58
131
110
138
89
109
55
106
178
55
122
127
168
105
127
148
92
122
91
161
137
55
91
79
120
139
139
92
56
93
144
178
55
178
93
105
124
93
92
56
142
109
122
93
74
86
148
92
192
56
178
95
178
139
110
91
58
134
127
67
140
92
104
74
119
168
171
79
117
105
67
107
86
56
37
92
104
169
58
110
118
136
140
119
105
132
180
110
126
56
56
93
68
107
110
68
169
146
93
103
84
114
55
178
67
37
126
138
110
144
58
180
124
122
124
69
169
156
158
124
122
110
122
126
92
67
104
112
111
152
106
104
152
86
92
104
67
138
145
122
69
69
105
126
146
137
168
83
140
56
99
104
69
146
101
75
92
92
75
56
95
107
67
130
128
74
105
107
74
140
67
92
98
110
110
124
146
103
136
111
79
98
110
99
56
92
152
103
69
83
126
107
138
105
126
93
67
104
128
122
123
91
37
126
76
55
122
110
77
73
139
171
55
146
104
79
130
93
102
103
122
124
92
104
138
122
107
55
67
101
105
122
91
110
110
124
138
107
101
105
105
123
111
119
171
126
37
67
158
142
138
132
69
93
75
86
67
105
93
103
111
77
92
37
144
91
105
127
37
124
101
99
67
123
128
111
104
55
122
86
109
99
104
152
139
110
123
56
178
122
55
113
67
158
37
79
139
75
77
123
122
138
132
102
58
91
92
110
139
83
93
111
148
67
146
127
152
126
134
103
105
110
131
100
58
55
110
92
110
67
119
55
109
139
138
110
138
156
119
127
103
107
111
109
145
104
112
92
58
120
37
101
138
92
152
107
56
55
79
163
128
151
105
92
56
158
178
163
123
86
169
139
165
93
152
105
134
128
92
92
92
86
98
188
144
67
68
152
55
65
93
111
67
119
111
104
148
55
77
123
168
84
69
104
120
102
67
178
55
67
73
97
55
111
56
129
104
92
104
122
92
110
189
67
178
119
37
105
75
55
69
134
122
55
113
105
79
91
55
134
110
105
109
138
111
102
104
122
127
110
56
178
136
104
79
134
165
83
138
180
178
101
138
110
119
75
56
103
99
119
55
123
95
160
178
126
92
123
55
109
67
99
98
169
105
139
110
75
142
126
92
84
83
119
122
87
122
92
126
119
110
109
122
126
158
118
144
102
152
69
105
56
139
69
55
134
111
137
178
91
127
58
110
136
178
67
122
55
92
56
122
94
146
163
126
86
126
138
100
104
105
124
109
122
55
129
138
104
91
152
132
58
101
144
138
124
37
122
126
131
169
111
94
138
69
110
138
152
139
156
122
178
163
126
92
74
138
171
126
122
105
122
79
97
67
110
163
111
110
110
122
138
92
89
37
178
126
139
164
84
137
93
92
127
67
110
55
122
104
67
77
69
160
109
138
37
125
146
140
131
126
115
146
111
93
138
126
104
86
55
112
75
86
127
55
122
56
79
56
128
55
37
111
146
69
126
67
158
171
119
104
92
122
55
105
158
150
180
107
79
93
152
138
79
126
96
104
55
142
79
74
119
67
110
58
104
55
92
148
83
105
55
140
126
105
150
171
138
104
79
122
92
152
114
37
134
138
92
139
83
139
152
126
37
77
127
110
126
92
107
97
122
83
150
99
144
77
67
101
55
55
103
98
85
112
110
58
104
99
107
67
97
126
132
109
152
79
104
146
109
89
107
69
67
69
120
92
107
110
92
162
122
92
58
136
139
119
169
104
123
108
122
122
138
56
105
105
178
58
122
110
110
58
68
171
67
126
37
56
93
126
112
138
93
106
146
137
99
81
89
101
180
88
55
138
95
132
123
58
152
92
119
93
126
86
67
138
55
67
122
128
91
93
56
37
105
69
169
126
56
92
130
92
147
144
138
55
105
136
152
98
83
126
140
69
131
111
124
105
92
189
67
75
102
169
83
111
58
109
101
84
160
101
126
95
199
74
55
93
136
163
93
124
104
126
147
83
126
105
171
86
111
178
131
146
126
112
169
117
123
102
56
92
126
86
111
100
120
94
92
120
123
169
130
77
122
138
105
148
88
92
84
160
151
75
119
111
158
55
84
134
139
126
110
67
120
67
122
103
131
92
69
144
127
93
127
93
178
138
92
127
56
55
171
112
55
139
56
78
88
152
110
111
138
122
84
124
139
58
81
92
138
114
91
67
86
138
37
111
139
148
171
55
178
178
126
58
97
137
37
110
128
37
105
56
146
122
151
150
138
110
68
140
93
148
92
97
83
110
144
37
110
140
67
106
67
92
114
149
97
169
152
104
92
37
126
122
92
140
83
122
122
67
138
168
127
113
178
75
117
80
79
55
138
152
92
104
93
92
92
58
67
139
105
37
104
132
98
69
37
67
92
109
84
124
92
103
92
168
105
99
93
88
93
114
140
92
78
74
92
171
67
122
93
123
55
138
110
97
92
55
58
136
67
127
67
134
131
55
79
58
101
132
134
119
67
122
105
171
148
146
138
74
55
134
79
55
69
139
69
92
139
81
89
139
104
118
75
104
92
128
138
101
123
101
101
93
104
110
67
164
77
104
67
69
138
55
92
122
123
79
110
56
98
67
105
132
138
132
138
112
104
80
100
168
110
56
92
108
138
107
67
130
144
178
92
55
103
91
58
123
105
109
126
79
178
144
111
122
69
67
169
114
142
149
140
127
105
126
105
138
112
74
134
67
105
107
148
110
122
67
92
127
134
58
112
140
105
104
122
100
141
131
140
107
92
119
128
109
92
58
122
101
55
109
105
78
122
134
131
76
92
101
55
110
93
104
56
178
55
61
180
69
119
120
56
87
128
92
178
101
55
56
86
92
114
104
111
122
119
112
122
79
92
169
104
126
97
128
89
67
106
92
122
126
69
84
127
136
57
93
178
92
79
136
110
91
122
139
56
126
67
105
58
91
92
126
86
110
75
101
122
56
123
97
37
136
126
163
92
138
56
139
69
152
67
122
110
122
132
123
119
94
55
138
110
122
56
92
122
96
37
77
102
109
122
126
67
104
67
144
92
67
128
114
97
92
58
67
148
127
134
105
105
110
140
92
105
83
91
86
67
56
119
138
140
99
118
129
126
141
110
110
89
105
55
138
79
122
56
104
126
67
109
92
67
67
163
152
163
93
177
97
106
56
122
95
104
123
122
117
105
134
106
92
138
122
92
112
67
152
107
98
69
105
160
92
128
127
110
92
55
178
106
69
138
56
100
105
83
122
126
103
142
105
128
126
92
92
56
169
78
93
89
165
37
169
67
111
93
152
139
93
122
117
127
83
138
140
92
55
37
104
110
126
104
152
100
139
151
67
104
126
146
92
78
140
97
130
114
37
91
148
127
119
105
123
100
110
138
114
122
58
128
110
56
110
75
92
92
162
86
138
77
132
104
109
124
107
105
107
105
111
119
122
158
103
152
112
122
92
128
68
68
105
69
93
91
110
109
110
128
109
74
103
105
103
115
95
114
110
117
77
141
135
114
56
92
92
103
110
81
103
158
138
93
91
37
100
144
138
127
94
92
139
56
171
37
144
144
139
124
139
104
101
55
67
93
104
110
142
189
104
146
139
67
109
138
106
93
128
122
109
105
120
107
138
123
141
149
138
68
134
107
146
89
67
112
105
105
112
134
168
105
111
55
99
122
136
127
122
110
102
127
126
55
105
122
104
138
97
55
122
92
69
86
84
111
37
126
124
105
139
103
117
144
105
117
127
169
126
110
37
114
126
67
158
127
167
110
75
138
146
126
86
138
83
88
74
158
110
83
143
139
138
122
169
108
79
99
127
93
163
152
55
79
140
122
98
107
92
124
138
126
55
139
92
158
127
139
113
180
99
138
99
37
110
127
83
146
136
178
55
140
122
119
86
128
115
105
109
86
55
116
128
55
127
93
169
123
37
104
138
55
105
67
84
83
110
67
67
127
134
110
79
74
168
138
101
67
111
104
93
55
117
55
177
93
56
69
127
92
110
132
55
92
86
58
64
92
145
127
131
111
68
92
122
178
56
138
119
95
126
119
115
92
92
124
69
91
79
100
112
99
122
128
178
109
58
168
77
139
58
83
160
105
67
163
55
138
105
37
56
109
93
87
152
108
75
162
69
105
119
104
169
55
128
139
105
126
37
163
79
126
144
92
122
55
122
55
91
178
92
127
104
37
146
74
110
122
92
93
111
56
37
148
111
107
77
110
67
114
162
126
105
126
131
92
111
77
99
105
122
136
127
69
152
92
67
110
139
145
171
105
107
110
126
69
110
131
110
139
119
178
126
93
55
156
101
86
67
169
128
92
86
111
93
139
146
101
79
105
109
169
146
126
148
108
91
110
56
37
122
68
119
67
111
163
140
122
146
152
108
105
138
131
95
119
128
127
122
110
75
134
105
111
104
58
105
74
37
104
120
92
122
104
69
86
37
111
122
93
103
80
142
92
144
55
122
88
92
55
55
136
55
127
110
107
126
162
152
103
148
138
77
84
145
92
146
122
67
126
139
83
74
148
107
69
119
84
67
114
69
122
103
86
110
168
169
67
152
123
99
105
101
143
92
130
37
138
37
144
120
149
139
79
162
122
105
84
84
93
134
109
67
58
123
127
55
138
111
169
69
148
148
105
107
104
122
180
119
56
55
126
112
37
158
169
69
139
118
152
77
58
104
58
119
140
128
162
105
152
178
92
55
104
78
92
110
192
146
55
92
77
131
138
178
126
126
92
138
91
114
169
158
77
109
104
169
132
84
56
69
92
130
127
41
126
122
144
124
146
107
109
92
139
130
178
79
126
122
119
122
114
104
112
104
146
104
105
98
55
92
67
144
123
95
145
77
101
92
92
138
109
132
92
127
37
67
99
127
58
92
91
91
132
104
149
111
111
105
139
123
149
178
67
110
163
92
67
67
144
129
55
138
67
110
126
55
37
138
79
131
92
178
178
56
169
145
104
61
123
126
67
111
124
55
56
105
107
140
67
110
169
163
56
105
110
92
91
67
103
104
105
144
168
104
132
178
163
98
122
105
69
97
37
86
138
93
144
55
105
93
83
93
105
103
92
58
108
120
97
103
69
104
58
58
138
158
67
122
138
124
91
126
169
92
127
178
69
122
101
98
119
107
158
123
165
55
67
55
83
55
92
122
113
88
127
134
79
93
98
128
67
121
93
74
75
122
119
74
138
104
92
139
144
55
122
105
92
122
148
126
99
37
120
110
98
129
67
141
78
93
164
126
138
107
79
124
58
98
146
110
93
107
146
67
108
103
105
109
85
83
144
169
126
56
92
92
79
92
56
56
58
111
138
75
139
107
144
138
128
126
119
126
98
55
86
55
178
138
37
104
98
99
93
105
146
110
150
103
67
86
106
107
144
55
92
37
109
105
122
121
107
140
74
56
102
178
72
55
93
58
105
67
118
58
100
127
69
138
83
103
86
148
152
126
77
92
58
120
144
139
104
74
67
79
138
110
67
128
122
127
56
109
67
105
58
68
81
67
98
109
99
180
104
109
92
56
103
132
98
132
67
117
92
123
92
79
163
127
152
125
139
58
86
152
69
92
58
105
97
75
171
134
140
87
92
124
74
77
103
140
122
127
55
104
111
140
69
105
87
69
110
126
93
74
132
113
122
101
105
134
127
130
146
84
56
79
110
107
55
146
133
134
92
124
68
69
55
126
37
139
55
137
110
110
37
67
68
99
55
146
128
55
93
79
93
127
110
178
92
100
192
105
158
178
86
55
92
152
126
55
37
92
83
178
91
102
114
55
122
55
128
117
105
67
93
92
110
92
55
144
92
145
134
131
108
106
126
105
126
79
138
138
139
126
105
126
138
110
140
58
92
123
107
126
126
122
111
79
124
74
79
132
138
55
140
124
74
86
119
126
79
126
144
107
110
74
56
55
93
126
92
55
58
107
93
86
146
79
122
129
144
110
178
118
122
128
139
127
138
127
117
104
55
92
93
178
92
122
109
92
126
126
126
86
130
146
126
91
55
149
123
132
110
152
58
86
92
92
105
181
169
152
110
55
112
165
153
92
56
103
126
108
126
180
124
107
92
139
126
56
84
67
120
122
58
122
130
100
67
142
75
122
110
140
110
128
105
122
111
152
126
86
58
120
139
56
110
122
138
180
103
67
139
55
171
123
126
100
104
144
105
104
92
58
93
67
195
37
117
111
37
93
178
110
109
79
126
138
137
67
134
104
139
141
105
165
111
163
122
114
145
126
123
69
122
92
114
102
55
134
138
107
55
86
139
122
109
104
86
104
112
77
115
92
91
122
122
105
107
92
152
169
139
92
123
113
104
37
138
58
55
104
84
100
67
80
84
74
92
122
37
124
152
122
74
56
55
104
75
105
56
92
117
91
138
134
138
160
130
199
56
163
55
131
138
92
67
80
99
99
145
127
107
119
152
132
86
69
146
92
104
128
99
58
91
128
86
92
55
37
68
105
169
107
55
171
126
119
122
56
86
37
105
101
119
171
126
75
120
102
110
114
92
86
118
139
146
140
138
127
110
92
119
74
111
95
67
134
104
158
79
171
122
107
55
93
140
92
104
148
127
79
89
169
91
74
108
92
37
103
56
67
122
56
122
111
92
104
79
93
108
107
140
104
105
128
101
106
127
103
68
91
92
178
110
100
69
69
92
144
152
56
92
144
68
104
55
75
92
92
69
123
110
138
58
105
92
37
140
126
110
138
92
58
55
109
83
110
107
91
115
93
93
131
105
109
119
119
89
56
110
99
178
120
138
81
148
134
123
128
180
55
84
165
127
37
106
92
146
171
56
69
122
122
84
110
67
108
37
101
55
105
168
104
134
37
124
122
55
148
92
89
93
124
126
152
55
92
105
104
56
126
138
92
128
111
84
69
93
103
92
55
83
89
138
110
158
178
139
138
148
138
81
119
163
103
138
69
146
169
115
56
122
93
67
83
92
99
127
105
93
67
129
83
123
115
126
140
146
92
107
99
110
121
100
56
69
89
67
167
92
146
55
84
126
139
110
71
152
92
131
140
132
146
151
132
37
68
67
139
58
92
126
142
55
105
55
67
77
67
144
107
122
105
78
110
91
122
131
124
79
67
99
97
181
56
56
130
67
93
37
138
158
146
102
110
140
69
86
123
110
114
127
92
102
88
37
126
92
122
56
92
104
110
37
115
55
108
86
105
158
55
146
138
55
92
77
146
102
123
152
126
103
146
137
156
139
111
144
92
146
67
92
132
37
104
110
100
105
37
126
55
107
126
107
58
37
97
56
121
93
98
134
105
123
92
178
93
135
168
136
139
104
107
74
138
138
105
55
112
104
124
126
104
144
115
122
169
91
98
69
58
37
138
99
75
132
37
111
145
105
123
124
37
105
160
67
127
111
104
107
105
101
130
100
127
99
107
92
81
110
122
55
152
128
69
92
92
58
180
37
55
104
92
55
67
74
91
113
84
163
75
144
86
123
171
128
37
93
144
119
69
74
126
120
104
93
68
56
128
130
106
126
68
69
169
140
171
97
122
105
107
56
148
104
144
110
126
56
138
92
105
55
86
107
107
168
109
119
108
75
58
131
83
152
55
92
127
99
91
107
69
69
110
102
151
74
37
122
146
106
123
130
55
110
69
135
104
110
111
58
92
126
105
134
100
105
55
105
69
122
123
138
92
136
134
103
123
55
93
121
139
92
55
55
122
105
110
74
92
129
152
132
99
37
37
105
37
127
97
114
101
105
69
101
91
99
120
123
138
114
92
105
178
130
58
168
169
111
69
107
119
131
101
131
140
178
127
128
122
118
119
122
138
124
124
110
169
144
86
77
169
56
69
180
152
131
37
91
178
122
152
92
104
105
138
55
110
100
152
122
144
144
105
122
92
58
79
75
167
92
83
128
122
124
55
79
69
58
105
122
56
103
104
105
95
136
109
86
122
178
110
122
122
74
119
104
127
178
55
130
112
93
126
99
93
101
92
55
77
94
119
144
107
92
128
117
159
79
114
126
74
146
119
129
130
122
139
78
79
102
105
171
74
56
74
92
75
91
84
55
58
122
152
83
120
58
127
56
110
122
127
139
181
80
146
93
139
139
58
134
110
104
152
146
107
86
126
119
112
86
144
104
110
104
110
55
67
55
68
93
128
92
126
127
145
83
110
152
92
149
92
103
110
142
92
148
122
56
83
139
110
37
37
122
105
126
130
123
78
97
171
114
83
92
110
126
138
167
168
117
67
128
127
84
138
111
128
92
128
126
128
37
139
122
92
122
120
99
56
103
55
95
99
122
74
37
144
122
55
163
109
152
93
109
169
127
92
84
69
138
128
117
107
92
68
86
76
138
105
120
92
118
104
138
178
37
128
123
55
146
67
146
126
169
117
138
92
145
124
104
92
68
92
131
83
55
114
93
104
102
74
126
112
122
79
126
105
107
126
160
89
117
120
105
92
145
87
138
92
126
152
109
122
108
55
171
109
139
93
75
127
165
92
178
55
96
109
123
158
189
199
89
93
67
163
111
83
55
158
136
92
92
56
67
72
68
37
146
178
121
92
99
89
127
135
151
105
83
56
55
107
108
104
37
67
132
86
103
110
105
158
136
127
92
86
55
114
104
110
152
135
74
104
102
100
134
127
178
55
128
92
135
109
74
104
178
92
122
130
91
126
37
127
138
56
74
141
55
123
58
127
104
178
107
69
105
79
105
92
55
134
92
144
69
91
140
119
144
74
79
136
122
110
146
104
134
97
91
84
138
104
105
123
91
92
69
56
106
123
86
94
149
92
93
109
107
104
92
56
178
123
55
69
126
122
100
110
92
121
92
69
105
102
134
84
67
105
139
100
89
139
129
127
110
58
138
122
146
92
55
64
138
93
158
68
138
134
136
139
126
144
152
124
117
124
56
158
146
123
111
139
55
80
123
91
139
93
127
128
104
111
134
112
122
110
98
105
126
138
132
111
111
94
110
86
79
92
67
139
171
37
139
79
69
97
105
148
92
86
138
91
138
105
110
67
132
93
93
160
93
122
92
139
88
56
122
100
37
92
119
55
93
92
144
123
55
64
122
55
124
97
139
37
122
92
114
56
79
158
126
110
105
122
146
128
92
123
67
83
55
103
138
111
97
91
112
92
140
138
37
122
58
98
136
137
79
137
55
110
113
144
55
68
55
122
148
67
128
139
162
149
160
79
67
146
89
180
104
168
105
138
160
88
138
126
130
69
138
139
122
55
68
98
169
140
119
92
89
123
122
105
92
58
103
122
103
86
110
122
127
110
86
146
101
92
61
138
56
77
119
56
127
55
139
146
99
92
105
122
105
55
69
109
139
37
58
114
67
92
79
101
126
152
55
119
120
146
145
37
103
105
135
140
127
111
75
146
99
105
79
112
67
126
104
111
55
148
134
68
58
144
98
118
128
122
56
119
92
122
108
138
37
105
79
122
55
140
110
132
110
55
122
131
134
104
86
128
55
122
92
56
37
56
134
134
74
92
146
132
105
89
92
105
104
123
104
69
55
101
105
126
109
74
111
138
122
86
88
117
144
83
139
100
97
104
114
110
122
98
152
92
91
127
75
138
126
79
126
92
128
37
105
98
98
138
132
110
139
55
122
138
119
56
122
83
58
67
93
123
84
105
142
92
55
160
58
110
98
158
107
111
55
55
138
110
104
55
75
110
91
120
102
99
178
163
99
105
120
113
67
103
56
169
79
75
96
132
131
146
58
99
93
79
140
69
136
110
168
91
152
102
107
146
126
122
92
127
92
84
115
67
171
169
100
110
37
104
139
102
122
163
114
110
91
109
92
110
110
69
152
117
158
56
107
92
138
92
104
93
169
92
105
67
104
110
93
109
93
122
87
95
56
132
128
126
124
119
127
92
169
105
56
118
178
118
109
180
69
74
138
100
37
74
110
169
55
77
93
122
102
127
144
81
144
127
130
120
75
126
124
55
99
69
86
126
110
84
110
110
138
128
147
127
92
127
99
178
92
124
110
126
122
122
55
138
107
92
123
107
79
126
75
126
178
128
81
104
120
124
103
92
56
144
129
103
102
55
68
37
84
69
55
92
37
111
112
55
55
105
68
103
55
109
110
130
92
92
68
158
130
134
122
130
139
136
110
105
140
144
78
111
92
110
56
110
139
132
140
97
92
93
149
81
92
169
105
86
123
169
126
126
162
122
123
89
110
69
104
104
126
86
104
56
58
104
158
104
93
180
86
138
134
104
84
122
67
104
67
134
141
67
122
126
137
145
105
105
178
37
56
117
105
92
122
79
105
169
138
126
88
107
158
102
67
92
138
69
138
74
99
58
101
132
120
56
182
169
92
120
92
181
105
130
168
128
129
55
192
68
146
67
126
131
105
100
92
144
107
91
80
104
105
120
93
138
93
58
139
67
68
122
74
152
104
124
126
105
134
56
55
58
69
178
105
69
68
55
138
55
117
126
100
144
178
104
139
139
138
126
128
104
144
134
56
126
37
96
55
127
152
55
67
103
67
67
136
103
127
105
122
146
86
104
123
105
99
98
67
138
150
55
105
127
139
144
124
56
168
110
86
114
77
115
104
58
67
178
99
110
111
130
55
122
117
146
123
91
80
68
92
139
122
134
132
126
140
93
147
55
177
119
55
58
56
168
122
92
105
55
75
113
97
138
127
128
122
144
111
92
130
169
100
84
91
126
56
127
119
162
157
92
127
107
55
93
142
55
110
55
115
105
123
119
137
110
69
128
99
144
37
92
55
92
139
79
144
138
96
98
86
92
122
171
110
152
58
98
67
55
168
122
146
134
94
122
131
89
119
55
110
55
55
144
122
74
120
122
69
110
119
130
137
55
126
110
119
37
122
58
122
110
79
77
152
112
104
106
140
103
138
122
105
37
139
55
131
58
67
137
97
122
127
84
131
98
146
118
55
119
76
123
93
122
56
164
144
130
107
74
110
69
131
107
118
126
98
188
171
158
127
136
86
93
140
55
124
110
79
92
105
101
56
134
135
99
104
146
37
67
126
93
138
142
110
83
55
110
104
61
122
104
37
75
122
140
111
69
111
92
120
178
139
92
77
107
55
138
122
132
178
79
95
105
122
37
111
102
111
110
97
140
92
126
75
148
124
79
105
148
167
58
119
139
158
110
115
100
128
134
130
86
105
128
132
152
56
158
104
93
178
112
126
67
122
58
127
74
105
137
92
103
105
107
95
58
169
92
126
107
96
152
92
92
93
106
105
110
122
99
137
124
86
56
99
128
112
138
110
127
111
84
113
138
58
103
102
122
158
58
124
110
103
131
92
123
80
130
56
37
158
73
105
148
92
146
75
146
179
162
110
114
91
86
37
138
104
92
55
58
105
67
92
122
37
152
102
117
58
178
91
146
109
105
101
119
103
110
111
55
92
111
92
55
138
75
169
76
126
152
122
58
68
58
110
101
145
93
92
146
138
110
77
117
114
100
106
67
127
55
139
129
84
61
111
93
56
139
37
85
88
146
91
123
178
55
138
56
55
169
105
107
122
104
122
140
37
74
58
102
55
88
55
134
127
56
119
58
107
109
92
122
105
138
124
127
127
103
119
105
92
109
99
67
126
74
148
146
136
163
137
156
146
79
129
100
84
92
92
55
55
188
110
105
58
178
72
80
55
138
138
82
92
86
126
123
122
139
119
56
58
84
119
92
144
136
107
178
112
75
56
55
55
127
37
152
144
146
140
110
108
78
37
69
97
107
140
104
123
55
146
127
128
180
139
69
110
55
83
67
75
92
109
69
115
72
139
111
111
103
138
105
123
69
74
162
105
137
104
67
138
114
79
105
109
104
163
58
139
119
55
137
37
145
89
93
146
77
164
75
114
152
37
118
55
84
127
148
138
107
110
37
93
106
126
146
91
104
92
92
74
93
122
69
169
95
55
105
122
37
55
55
79
56
111
104
103
118
104
126
58
86
37
55
104
123
132
77
146
119
104
131
178
144
92
93
122
124
140
74
106
122
163
37
110
104
126
169
109
95
104
58
83
67
123
92
55
127
74
67
110
134
122
146
114
123
77
138
104
93
110
110
105
105
79
55
58
69
74
69
101
99
128
131
122
129
128
120
126
55
119
110
167
104
107
152
127
178
146
97
58
79
109
128
93
144
99
104
93
56
92
93
92
141
117
171
117
67
130
56
134
104
91
69
128
158
109
138
107
86
74
58
88
165
107
103
91
107
89
92
67
67
123
107
92
98
92
69
105
124
99
37
56
100
100
83
110
93
103
55
77
69
139
67
145
168
111
131
171
131
122
104
86
81
55
93
56
149
127
56
122
134
148
92
75
126
126
126
130
110
93
152
97
103
55
69
55
126
139
104
86
122
111
92
138
110
55
55
122
86
124
126
83
92
103
105
127
123
134
105
126
110
55
110
169
92
92
169
75
126
134
152
104
129
55
127
69
135
127
169
139
74
169
56
135
93
55
92
122
92
56
103
97
92
56
110
109
112
158
129
92
127
128
37
123
67
69
105
99
98
56
140
169
93
92
56
122
75
138
131
79
81
92
91
122
122
122
56
67
109
55
55
109
139
91
152
138
127
110
127
89
55
122
37
102
138
55
69
55
111
126
92
55
105
122
112
67
111
104
122
55
119
109
69
138
103
123
178
55
37
37
69
124
97
109
67
111
125
79
110
37
139
105
127
58
58
92
55
69
110
109
146
103
138
123
138
84
100
122
126
92
138
123
140
124
112
144
148
138
137
136
132
109
138
142
67
91
139
134
168
92
114
128
123
55
119
55
109
67
37
97
139
102
78
138
128
122
152
163
105
152
86
141
122
134
105
104
178
138
164
92
110
122
146
112
67
122
126
104
115
92
56
128
109
69
130
105
74
74
93
92
107
144
139
145
128
104
74
158
75
105
105
67
92
78
109
127
127
139
83
140
110
144
130
122
107
140
138
178
178
105
138
144
93
131
148
104
93
110
120
93
181
87
113
105
127
92
110
79
102
139
108
169
111
122
127
58
119
56
146
126
119
152
126
124
149
67
139
197
93
58
93
92
130
100
103
105
55
129
99
138
180
105
92
144
127
92
127
103
138
164
104
140
79
104
122
122
168
144
122
144
145
126
122
74
105
67
119
178
131
67
77
58
178
92
110
132
111
105
104
55
127
67
69
100
110
86
89
105
180
178
67
105
110
199
122
67
107
144
104
113
98
138
146
37
110
106
79
92
100
55
138
168
136
55
56
167
152
92
92
143
110
123
138
122
101
122
92
69
58
130
91
119
106
92
169
69
58
95
89
92
64
178
69
58
178
128
120
178
138
126
37
122
127
144
131
79
178
105
107
146
119
93
105
124
110
103
55
92
126
126
127
152
92
93
110
123
122
139
127
138
110
93
138
97
105
126
76
111
58
124
138
110
101
58
37
100
111
67
92
92
122
178
86
67
122
77
119
74
158
105
122
111
55
117
103
146
178
123
107
148
122
126
111
69
163
93
168
139
105
92
56
73
110
138
95
138
106
127
112
110
80
100
110
58
139
169
125
178
134
55
138
83
92
110
144
126
92
178
92
119
139
37
100
128
105
92
91
123
113
105
138
128
92
68
89
148
117
128
147
92
110
138
58
104
139
139
138
76
130
163
138
199
92
146
81
132
77
92
165
76
67
134
55
152
105
137
178
55
112
126
111
165
69
56
104
124
171
111
69
126
107
56
105
56
89
104
79
67
58
69
138
93
74
56
95
105
119
115
93
126
180
121
148
93
101
101
101
104
116
169
74
135
127
122
55
69
128
91
92
55
140
79
139
101
103
91
129
111
105
58
169
126
67
138
55
148
37
180
139
110
178
92
105
112
74
106
122
55
92
79
126
132
131
88
130
122
144
74
137
67
67
126
130
55
126
55
99
114
91
162
110
123
127
56
92
56
95
93
138
110
152
138
110
152
123
92
165
92
92
58
107
122
100
105
146
105
134
93
110
148
86
132
103
96
98
110
101
56
67
130
171
55
89
122
118
138
93
75
55
37
125
122
103
178
163
67
104
109
128
99
122
107
92
110
55
109
119
140
112
92
103
136
112
115
69
92
86
106
127
123
92
55
118
144
92
126
67
110
139
74
139
126
55
94
122
55
127
92
134
123
56
106
148
104
169
127
75
105
55
169
74
122
67
117
92
140
106
105
199
126
58
67
97
140
55
100
103
107
79
55
128
151
92
180
37
56
138
180
55
158
127
67
58
91
55
92
83
126
55
126
145
111
95
119
106
132
107
123
75
113
138
111
105
152
144
119
79
55
55
55
91
110
77
69
139
56
77
127
104
158
55
104
138
146
129
37
91
55
37
124
89
67
102
122
72
127
84
91
110
139
93
68
67
126
146
119
139
146
75
114
127
100
56
144
120
126
180
67
58
69
92
119
92
101
144
100
56
124
110
110
55
144
107
105
122
109
100
138
92
58
55
146
83
67
109
102
152
134
129
127
119
138
92
56
128
107
55
126
79
123
122
55
125
141
148
55
178
125
126
105
131
104
61
122
104
91
110
92
55
122
105
127
69
110
160
92
103
139
104
118
88
126
104
92
77
110
81
123
83
138
138
146
107
108
162
131
146
55
107
92
37
128
139
92
128
37
55
144
167
109
67
134
58
105
124
164
128
110
138
107
55
140
91
111
79
112
106
93
105
37
105
92
84
122
110
58
139
180
126
144
104
138
117
144
97
104
83
101
75
93
122
105
56
105
68
37
134
105
92
67
122
96
146
105
114
119
104
96
129
79
105
110
79
163
93
84
131
107
144
101
37
93
178
114
110
92
91
138
92
55
69
68
158
88
130
105
88
56
65
67
152
79
140
110
69
122
128
93
105
102
55
138
138
146
131
87
163
67
111
55
56
55
144
67
139
75
100
122
37
104
169
123
168
67
138
67
87
178
111
92
37
112
105
156
138
83
86
134
58
128
169
77
110
105
56
146
105
138
126
135
128
139
67
136
124
178
111
122
149
112
124
140
99
69
126
79
111
106
107
142
126
146
158
112
101
127
74
75
110
58
122
138
117
55
139
140
144
37
110
169
84
137
79
107
126
126
79
110
92
104
167
67
102
68
105
110
107
138
81
131
92
84
86
92
123
69
131
110
138
112
138
74
119
84
67
127
108
111
169
130
86
58
79
122
56
145
120
163
56
144
110
55
67
93
92
110
149
104
132
58
119
105
128
111
146
55
72
105
77
37
122
55
105
93
74
105
136
76
134
93
98
55
77
108
163
55
140
107
122
55
109
126
110
86
91
37
139
93
92
163
92
104
103
134
144
149
168
104
91
79
126
169
111
129
167
132
110
138
144
56
93
105
55
128
55
93
122
104
58
188
169
88
92
56
92
56
86
37
105
74
76
55
99
122
77
128
75
55
67
119
127
67
140
122
152
83
77
109
58
55
139
140
55
56
137
104
92
141
93
98
105
139
69
130
158
91
126
139
126
94
105
99
158
67
67
102
108
92
83
188
55
124
162
100
79
152
146
139
138
104
148
146
103
104
69
171
110
67
135
130
148
55
122
58
92
122
134
122
144
128
139
128
109
110
123
107
74
104
55
110
92
144
138
138
119
55
110
56
138
67
126
108
122
110
138
122
77
92
74
92
126
132
112
93
37
55
139
178
126
122
138
55
139
37
105
144
98
127
140
138
68
146
96
131
102
93
93
89
92
122
67
105
86
89
100
140
97
68
165
67
91
97
110
55
104
119
128
138
131
128
92
138
105
126
123
138
122
79
132
105
74
110
58
131
132
105
122
119
180
128
77
110
67
103
105
131
146
109
56
99
163
114
169
138
144
122
135
56
169
138
158
99
139
152
97
93
128
136
144
105
128
55
135
169
55
92
91
146
98
104
100
152
110
84
159
139
102
67
110
110
130
138
37
105
144
58
119
110
178
58
122
109
105
37
144
56
92
104
122
81
110
67
126
92
74
93
110
117
139
110
58
132
67
126
103
102
126
92
114
119
67
136
126
148
107
109
105
178
110
106
105
56
165
103
67
122
144
56
110
144
171
138
130
122
105
55
93
119
55
138
126
96
93
169
75
126
111
138
55
171
110
92
101
67
119
67
64
110
86
115
163
105
122
65
37
122
107
105
127
135
127
122
67
58
105
55
58
67
58
164
132
110
92
37
146
134
121
55
110
84
127
92
134
121
80
69
126
93
105
138
122
128
149
110
109
80
56
119
104
67
121
107
110
86
128
126
112
97
55
88
127
107
117
69
93
126
127
67
126
163
120
126
159
99
109
146
142
162
55
105
126
92
102
119
138
122
110
41
74
136
169
115
123
180
69
74
105
178
85
91
146
91
142
37
134
105
119
83
138
92
74
118
104
92
86
180
114
110
93
180
128
140
132
110
37
88
126
92
92
119
99
105
171
146
67
99
122
106
37
83
55
110
153
84
79
58
168
126
120
93
67
111
108
77
98
92
110
89
168
110
37
178
127
103
93
67
37
126
122
73
126
67
138
110
144
56
122
138
67
126
104
105
169
79
124
152
55
69
110
56
105
72
104
84
140
146
114
122
123
152
58
140
55
138
93
127
146
171
74
128
119
139
119
55
67
98
178
97
146
119
93
112
112
92
178
77
128
104
148
69
108
95
119
134
110
101
37
105
122
103
119
98
138
92
127
139
104
122
163
106
127
105
105
58
104
86
93
37
92
103
37
56
109
149
110
188
92
134
122
139
110
67
93
55
78
179
67
37
97
99
138
178
77
124
93
105
55
92
83
92
99
168
178
122
111
128
128
92
111
138
119
131
121
110
110
104
86
118
89
105
110
134
97
92
139
55
138
99
144
162
122
152
162
91
122
104
56
127
89
104
111
67
105
91
86
93
122
126
67
55
56
56
106
152
92
92
92
124
107
110
119
92
99
167
68
171
151
55
93
139
122
136
104
92
55
99
56
118
168
37
108
123
55
100
91
111
79
105
84
146
165
41
138
144
126
110
117
138
123
119
81
55
105
81
128
118
178
178
55
112
107
109
111
107
91
92
110
55
138
86
140
126
105
79
146
119
56
103
146
91
120
138
92
92
152
92
171
56
55
152
152
92
92
152
165
55
131
107
104
160
139
129
111
58
92
94
37
55
125
89
152
92
58
55
105
92
146
92
134
98
79
128
101
100
89
178
146
126
126
95
37
92
139
103
105
100
126
103
103
114
55
144
110
163
111
126
152
111
146
93
110
117
92
131
92
178
79
123
125
104
126
55
130
138
122
105
79
147
141
152
110
93
93
99
58
153
67
69
89
122
160
79
105
127
169
92
148
86
122
121
163
109
92
123
146
100
138
101
69
69
130
144
98
122
99
119
55
127
126
99
102
110
55
111
171
98
130
92
146
55
55
110
119
83
92
98
152
56
120
74
140
79
169
128
112
99
169
93
180
107
75
105
127
140
58
92
92
111
146
61
100
58
55
94
126
99
114
67
126
74
105
119
171
136
171
138
122
81
77
139
126
126
126
92
126
129
91
154
55
111
149
160
105
99
67
178
126
139
178
197
127
104
139
128
127
110
81
92
149
102
105
111
110
92
91
77
79
101
92
127
67
122
69
138
92
110
86
67
99
104
56
119
122
75
139
122
178
104
105
119
67
78
144
105
122
119
55
107
88
122
124
140
120
111
107
138
104
126
168
128
105
91
178
138
74
144
86
140
37
160
153
92
37
104
105
97
131
178
163
163
138
105
93
86
122
124
88
92
105
146
88
178
132
168
55
88
79
144
126
55
110
162
81
111
55
105
74
67
127
98
152
74
180
104
122
141
169
134
110
144
55
138
128
135
58
139
93
37
67
68
56
58
80
104
111
169
148
131
126
83
127
55
109
131
169
55
122
58
104
144
132
107
167
56
93
169
110
67
93
69
138
138
119
98
104
95
104
122
136
139
162
139
37
102
120
100
110
144
105
123
128
67
79
111
126
126
55
126
86
55
126
109
138
121
126
96
137
169
56
110
126
158
110
55
58
126
136
169
98
144
138
91
122
67
111
139
111
139
120
128
119
99
134
89
105
122
104
102
138
140
178
144
104
126
97
119
138
58
55
106
138
41
87
109
118
108
122
138
120
100
111
93
109
119
110
145
132
123
93
56
92
69
55
67
114
58
110
123
58
93
123
131
67
111
92
145
83
74
91
114
105
79
152
151
105
127
127
96
92
152
148
123
67
55
55
116
126
130
122
79
122
126
69
67
110
134
169
91
37
138
79
93
102
152
138
92
131
123
144
91
125
37
55
107
119
169
75
105
107
58
109
56
103
93
112
148
123
122
122
159
92
122
92
104
108
106
37
55
67
108
58
122
138
92
37
138
111
106
152
137
138
92
55
84
158
110
92
69
56
55
105
91
68
119
55
144
110
126
122
110
92
114
141
128
91
79
37
104
55
159
83
122
105
138
114
74
77
92
119
37
105
144
67
128
156
128
69
37
92
123
127
147
55
58
114
134
68
163
152
127
67
110
148
84
122
104
144
79
55
74
139
139
128
122
93
138
55
95
58
37
110
67
88
105
113
55
126
103
122
37
122
86
105
110
85
83
100
140
122
55
147
127
131
92
56
55
67
140
55
110
162
130
110
104
148
110
93
110
117
92
56
119
122
114
138
37
137
128
160
138
92
83
58
103
123
152
37
67
97
55
178
126
55
92
58
158
138
110
92
55
123
138
87
123
146
117
92
70
148
104
127
126
105
111
114
55
144
86
101
126
122
136
58
92
79
37
75
92
104
178
93
55
93
146
74
69
124
111
74
55
124
134
138
122
55
56
74
67
122
144
79
114
69
167
104
169
99
152
73
138
144
56
92
135
112
55
139
55
107
55
122
114
136
105
131
92
56
92
110
158
144
144
86
145
140
110
126
67
73
67
69
162
74
123
110
91
169
102
55
88
56
122
122
109
79
92
93
68
84
109
91
105
139
122
122
111
120
122
69
79
178
55
55
69
144
146
160
92
37
79
123
92
139
124
93
156
127
105
168
97
78
128
112
55
109
122
77
178
55
105
56
105
147
138
114
110
138
77
93
105
37
139
93
120
110
92
67
107
69
106
56
105
55
117
98
138
118
136
56
86
128
112
55
122
75
89
99
122
168
118
138
69
97
104
37
138
74
67
123
55
136
56
123
126
58
119
91
136
101
107
92
139
92
171
79
37
178
140
110
56
110
37
148
139
132
178
126
138
111
67
56
145
122
146
67
127
140
139
117
80
56
113
149
135
134
124
130
67
55
83
107
134
138
97
111
138
104
91
126
130
92
37
104
128
119
139
93
137
92
97
69
127
75
92
91
69
110
93
110
126
138
74
138
105
69
92
139
129
92
102
105
92
102
101
79
117
69
171
119
110
37
110
123
104
89
75
127
86
92
144
98
75
178
139
126
99
103
79
110
128
73
93
178
75
168
91
168
119
67
125
178
86
92
105
127
55
93
138
150
127
139
92
103
95
104
55
94
67
136
103
74
132
144
110
132
122
138
154
108
67
122
126
79
139
126
74
138
92
127
148
109
152
178
37
126
111
56
92
86
104
80
93
92
100
67
107
111
37
118
55
97
112
99
109
55
118
119
75
56
92
138
146
162
144
92
126
117
160
109
138
110
55
55
93
152
104
55
68
144
122
111
126
140
67
104
178
158
92
102
56
92
145
132
104
114
121
163
104
110
37
84
99
67
110
129
75
92
92
180
81
105
152
56
68
147
91
110
103
110
92
77
92
93
93
79
55
56
110
109
99
67
92
138
111
120
37
77
37
64
86
126
110
92
99
128
110
110
117
122
91
104
92
92
104
105
92
138
76
152
100
83
132
111
105
150
152
138
122
105
178
75
146
146
114
122
37
77
96
92
67
101
158
75
110
92
131
88
56
117
56
149
141
86
136
92
76
110
92
122
126
55
88
67
79
119
126
92
110
69
92
152
100
79
141
92
117
93
79
118
55
56
178
37
126
115
112
120
37
105
105
127
74
110
91
119
104
127
105
55
104
146
95
56
79
99
136
95
178
92
92
136
105
139
102
140
91
67
141
92
92
178
139
122
168
122
92
144
127
67
55
137
140
169
104
139
110
67
99
91
67
108
128
138
124
103
124
158
85
141
165
122
110
77
56
100
84
86
123
110
124
93
171
126
92
56
139
55
148
147
69
171
92
93
86
111
109
58
92
105
95
107
58
138
37
58
146
58
138
86
126
69
92
127
137
104
55
163
92
92
55
138
105
138
110
92
69
74
114
92
92
75
91
100
138
152
119
67
92
105
92
142
55
140
109
105
113
130
126
122
68
139
140
77
86
144
136
55
84
115
119
55
140
55
119
67
67
92
105
97
93
75
141
102
67
69
132
107
137
136
127
37
92
37
104
126
104
56
58
126
92
99
93
103
139
92
122
76
110
111
104
67
128
55
55
122
93
92
74
87
122
122
139
107
125
169
144
126
138
61
92
77
109
134
37
69
88
56
103
67
105
140
119
69
102
130
69
152
110
81
55
124
139
101
69
168
55
126
68
93
100
67
76
74
119
83
105
55
124
92
67
138
108
146
105
110
178
122
144
74
37
86
178
100
108
126
104
58
177
105
92
101
107
144
160
89
146
75
109
92
107
56
134
79
79
58
127
69
169
146
114
139
55
138
122
126
104
106
107
126
56
105
142
100
131
93
134
115
56
169
122
105
92
69
76
131
178
119
110
55
119
139
89
56
92
109
81
86
178
67
126
127
86
124
110
93
105
110
126
86
104
92
91
111
188
123
122
101
69
134
93
119
110
58
112
105
55
55
92
134
146
92
124
91
171
92
56
148
178
104
158
138
122
123
84
120
107
148
69
137
163
74
138
104
144
55
123
131
141
128
138
104
126
56
144
93
99
123
107
92
58
127
117
58
138
122
37
92
148
108
73
114
104
101
130
89
105
122
89
104
145
144
105
123
178
139
110
123
139
152
110
126
110
126
178
168
122
67
152
127
37
37
148
74
103
56
55
94
86
68
81
75
109
86
79
158
148
119
146
69
131
139
167
108
126
105
94
126
138
104
110
92
79
126
99
138
37
152
128
104
75
129
131
109
144
111
78
110
139
99
110
148
135
138
180
105
92
69
140
138
55
139
178
122
77
134
110
144
122
94
92
106
69
122
77
130
55
37
178
83
122
122
138
138
124
138
169
92
178
93
130
92
67
178
92
67
79
98
149
145
99
75
110
92
105
55
104
101
123
92
110
123
117
114
146
67
92
58
148
146
148
92
151
99
168
92
126
55
126
126
55
96
56
37
56
129
110
55
132
58
123
119
107
100
99
130
123
126
55
152
126
122
131
80
131
129
134
110
127
92
83
146
107
122
56
178
93
95
122
114
105
100
130
67
102
132
199
124
107
142
167
126
110
103
110
92
122
118
74
111
158
126
128
92
152
69
83
89
111
126
69
102
148
58
178
144
104
138
130
138
178
92
158
79
103
138
111
105
58
92
67
110
77
178
138
112
131
127
58
92
105
160
98
55
162
83
119
128
107
92
109
125
119
132
56
79
146
140
99
102
105
139
131
140
128
79
119
67
110
69
112
56
67
123
110
56
171
152
138
110
55
122
115
56
55
130
77
85
106
140
105
92
124
107
171
144
92
105
146
111
163
104
37
122
144
116
55
99
81
120
98
139
105
37
55
105
136
86
79
69
104
120
144
84
55
107
127
162
37
145
92
122
127
126
126
152
55
77
67
86
134
102
56
75
139
128
67
129
138
126
134
103
169
105
158
67
111
92
58
93
79
140
37
126
67
103
67
152
130
79
178
114
122
95
128
165
84
105
152
104
149
104
37
111
37
138
145
166
109
55
130
56
138
55
109
146
92
167
55
165
105
105
55
81
69
86
77
169
55
105
131
126
152
144
91
75
105
68
67
134
122
132
120
92
126
130
168
97
92
84
138
58
119
123
78
124
37
37
110
122
128
122
112
55
123
149
152
55
117
118
124
180
146
93
110
140
104
164
139
79
110
67
178
109
105
146
104
93
97
98
105
79
126
146
152
110
99
136
126
139
92
79
104
127
74
126
55
104
55
122
55
123
118
103
110
123
141
122
67
74
122
152
131
67
104
110
126
112
67
122
119
139
152
67
67
122
37
126
139
92
58
111
69
110
92
110
149
145
122
140
84
180
126
92
93
92
92
74
99
69
152
169
162
110
99
130
55
97
99
69
55
110
69
83
55
92
102
122
163
37
58
137
67
92
92
140
67
137
110
92
171
37
56
120
37
126
122
122
138
126
93
107
134
141
37
92
103
130
123
123
110
110
171
139
122
55
119
81
142
148
131
126
86
167
114
138
138
105
135
56
122
122
119
127
109
168
56
138
81
163
92
104
56
55
152
132
134
98
76
169
122
151
104
162
104
112
109
67
79
126
158
91
127
111
149
101
140
56
134
67
37
73
142
94
79
171
92
125
107
127
58
37
110
91
139
98
138
92
110
122
92
126
74
37
104
92
69
77
105
92
163
109
107
134
100
136
55
68
119
112
92
92
148
144
139
139
109
119
110
79
110
158
139
92
124
141
119
72
131
92
138
55
138
84
122
97
146
108
110
67
93
104
37
144
91
91
104
91
84
99
93
100
86
56
103
122
152
67
86
79
152
83
134
93
137
98
127
110
104
55
165
124
126
129
110
55
84
79
126
122
171
119
105
126
104
117
92
160
107
104
139
92
110
126
84
122
160
58
169
121
122
118
168
93
107
137
118
144
168
37
162
127
67
178
140
58
56
105
104
69
126
58
67
103
178
109
138
109
139
105
122
152
182
105
110
144
108
56
138
124
127
138
122
169
95
138
105
138
92
110
69
118
123
122
91
120
122
104
85
67
123
105
37
102
122
92
67
55
128
110
104
56
105
103
58
76
79
104
89
122
137
110
86
128
99
80
92
110
105
69
92
111
114
126
55
127
121
178
113
56
126
138
127
112
138
67
97
180
83
127
79
152
152
125
124
126
105
182
178
91
111
92
74
101
103
138
99
99
120
105
119
79
110
86
105
105
91
140
169
74
132
139
126
79
117
124
121
58
126
136
144
105
89
74
99
126
86
103
138
178
105
68
83
138
67
93
92
56
115
93
140
67
93
86
79
110
127
122
55
110
55
92
138
148
110
83
146
79
130
114
114
55
122
134
128
124
114
93
58
178
78
127
125
74
86
146
79
55
145
130
55
144
122
91
148
127
79
105
126
79
37
126
122
132
92
92
103
93
104
55
148
74
105
150
140
58
117
178
140
146
103
110
148
144
91
199
100
69
92
105
98
144
152
138
74
128
55
138
80
132
122
126
110
106
105
104
130
135
146
91
92
122
111
93
134
123
144
128
110
144
91
168
140
68
55
146
110
112
126
144
164
100
91
178
128
56
104
178
119
126
128
37
129
127
117
144
138
83
119
144
113
92
146
93
178
110
110
104
92
119
105
55
67
91
89
178
91
92
56
127
130
86
86
122
56
144
140
136
123
140
130
163
92
110
122
67
127
104
168
86
72
115
123
104
102
105
105
99
55
138
105
110
160
67
86
123
92
68
56
111
127
79
131
104
158
146
77
122
149
98
122
77
79
92
163
138
99
178
126
95
55
93
91
67
169
55
56
67
93
159
93
146
91
111
144
123
37
105
55
126
67
95
122
123
97
108
83
72
58
122
126
138
56
145
138
91
86
111
67
56
123
86
139
104
123
92
152
99
136
56
144
81
146
167
139
93
126
126
110
81
126
122
152
67
74
92
123
55
102
103
92
152
74
126
121
103
95
58
107
76
128
93
127
79
37
171
110
169
105
124
110
138
92
123
141
126
144
93
105
127
101
178
58
134
99
144
146
75
131
104
138
110
127
100
92
138
86
152
124
122
146
128
114
103
126
55
56
58
79
131
125
79
126
93
169
55
118
114
37
68
55
56
58
56
118
55
100
37
78
104
55
119
99
86
105
127
104
56
75
134
74
129
122
37
148
144
132
138
105
144
128
103
136
107
67
55
169
141
107
79
97
93
79
93
93
67
102
93
112
99
109
56
99
58
79
80
104
134
110
77
139
67
122
69
169
81
67
74
126
114
92
178
127
68
55
122
146
99
138
138
140
67
126
127
144
56
160
124
169
158
37
158
126
105
122
122
134
171
144
138
124
178
104
122
162
158
37
55
109
68
110
102
149
55
168
110
109
104
111
105
111
122
126
110
127
89
37
67
181
178
146
124
105
91
123
116
139
67
92
37
136
56
58
178
110
104
158
81
105
139
178
99
56
93
139
55
122
104
79
92
67
122
131
139
56
92
144
104
126
112
91
146
111
138
134
152
124
126
101
111
199
108
67
109
112
55
93
139
120
67
56
55
140
91
67
92
79
128
74
111
91
110
123
135
101
115
122
55
75
58
114
69
171
114
92
93
83
83
91
118
89
93
67
110
109
78
110
110
138
119
103
139
89
55
122
37
91
97
145
126
125
95
138
105
120
148
110
134
109
122
106
134
105
77
93
141
55
120
139
126
126
134
92
61
110
163
88
139
126
138
86
178
109
122
68
105
92
158
140
105
67
55
110
104
126
134
104
55
178
74
152
104
79
56
180
92
178
105
178
109
58
127
112
131
168
138
136
69
109
126
178
92
91
101
128
77
74
118
86
119
95
128
111
55
123
86
116
134
105
37
132
92
102
92
124
104
110
105
61
92
37
58
91
102
68
78
144
122
105
92
79
83
144
102
128
58
98
99
92
138
56
56
130
91
122
135
110
56
103
123
37
67
110
84
122
37
146
92
55
55
136
136
121
138
105
119
55
119
55
110
142
146
92
92
58
93
138
110
86
92
140
178
100
119
110
75
118
105
119
55
138
139
92
110
107
119
178
144
132
55
105
55
146
122
74
148
178
114
110
135
98
130
104
110
110
79
146
127
92
105
99
138
105
126
111
162
99
102
67
92
169
104
114
95
104
93
122
158
138
106
110
93
37
139
139
126
149
124
89
178
74
104
58
138
86
83
67
126
128
56
111
93
92
148
102
102
110
103
56
138
55
86
104
103
119
103
93
67
37
106
56
146
178
125
79
99
178
87
119
178
144
171
163
69
97
123
138
140
37
92
69
110
122
145
92
86
138
67
117
169
111
135
119
56
119
119
104
94
92
124
69
105
92
138
139
107
109
127
110
152
75
126
55
105
124
110
131
104
93
93
126
92
75
67
160
141
138
98
79
110
67
139
92
119
57
102
75
110
121
78
138
86
37
107
55
148
75
109
110
74
83
110
74
126
138
127
110
77
107
91
94
126
139
56
134
128
98
74
130
55
122
105
125
92
128
136
127
81
136
122
136
128
168
127
92
55
130
92
110
139
152
105
55
126
138
171
128
110
152
126
77
126
97
89
37
178
105
93
101
107
144
84
104
131
119
92
124
122
91
126
93
37
167
134
109
148
139
123
132
110
122
110
138
122
55
67
127
110
138
79
112
114
152
140
101
120
67
119
91
130
117
105
92
93
105
74
163
58
124
144
92
92
137
126
130
126
79
69
37
132
126
122
55
122
75
99
146
92
138
89
140
74
156
92
84
56
67
126
127
79
79
141
55
167
188
103
67
126
109
78
88
140
105
134
102
97
126
188
122
102
132
110
104
169
67
138
55
120
122
110
55
110
131
55
67
111
58
103
74
98
88
138
122
126
55
83
100
134
122
126
92
122
93
140
77
92
138
95
178
78
178
114
92
134
110
105
109
73
92
98
109
69
55
127
86
104
118
104
56
55
92
180
37
105
126
104
119
37
37
178
86
69
107
55
79
110
164
105
37
92
160
105
102
122
104
168
96
131
67
99
138
73
68
128
162
67
117
93
91
110
140
79
112
107
122
103
144
122
67
93
93
149
79
110
138
92
178
55
122
104
122
56
122
93
92
80
95
178
127
122
119
138
138
92
122
171
148
55
150
55
178
146
110
97
105
69
92
122
126
77
163
136
139
37
86
37
123
128
92
122
118
106
135
104
92
119
92
130
86
110
67
77
93
126
117
126
58
122
112
128
152
119
123
126
89
110
123
126
103
103
122
107
68
83
37
77
103
37
93
98
126
130
67
152
67
55
77
86
140
95
72
178
178
120
74
140
37
122
146
122
123
105
104
81
78
97
138
134
178
75
55
104
83
55
126
101
92
98
178
138
136
55
67
104
122
93
92
156
146
103
55
132
93
112
74
92
104
132
144
56
178
152
110
86
127
58
92
74
104
142
141
94
123
92
138
101
93
77
104
92
105
107
110
118
86
119
92
73
178
92
103
197
69
86
178
58
178
129
58
77
81
138
91
165
93
105
127
92
123
122
152
138
126
178
37
55
93
55
126
98
105
148
83
92
118
152
111
79
37
111
88
75
171
67
138
93
57
111
112
138
103
126
104
55
37
99
99
199
138
107
58
55
138
55
67
55
139
92
92
163
123
147
55
55
126
55
56
138
110
139
106
75
123
95
122
104
152
56
103
37
130
67
139
178
150
105
92
180
104
110
55
92
91
37
117
92
37
107
128
122
120
142
111
37
122
67
110
58
182
178
134
91
127
138
122
126
55
55
89
93
58
55
110
86
55
156
110
107
111
92
126
79
149
180
127
169
107
138
91
112
67
55
144
126
146
106
98
99
99
124
55
92
122
88
76
126
110
86
160
67
55
67
67
103
93
117
122
81
152
149
67
98
84
93
92
138
134
107
56
105
104
104
79
93
92
104
67
78
104
122
75
92
131
75
117
111
140
138
104
91
104
75
55
72
74
110
99
110
55
112
79
152
67
64
74
55
148
100
128
58
167
91
105
56
37
99
123
132
58
99
158
104
67
58
109
92
68
180
74
122
119
138
106
119
142
139
144
92
111
37
144
144
122
111
93
123
92
158
110
123
127
69
93
152
92
91
84
92
55
92
104
138
67
109
88
146
56
67
122
111
126
100
103
119
92
122
67
146
92
109
140
55
109
119
105
80
105
164
110
105
97
122
128
92
74
169
105
123
180
123
37
56
119
105
79
92
56
80
178
129
93
128
55
139
126
130
139
77
92
55
67
92
123
122
136
105
79
105
123
137
95
127
158
120
122
171
69
68
69
110
102
79
110
92
148
56
91
56
134
92
138
67
134
145
74
117
105
37
58
138
86
126
69
79
111
97
107
67
83
162
140
56
89
100
92
109
105
69
69
139
152
58
114
137
67
168
178
110
110
148
79
55
137
109
112
58
106
67
68
139
68
92
93
122
111
69
104
122
71
160
87
92
123
79
102
86
128
110
37
144
37
127
69
56
140
103
123
55
146
84
179
178
110
128
152
79
126
144
126
91
144
134
86
111
95
104
92
105
144
56
122
98
131
159
58
69
131
69
104
37
169
105
77
141
104
83
121
144
99
86
104
105
103
178
69
161
131
74
126
110
126
111
92
134
93
162
68
137
75
107
157
74
128
139
69
92
98
99
138
77
148
67
171
169
77
100
139
92
92
92
138
55
86
126
77
171
37
93
55
55
104
92
97
122
144
123
92
69
105
58
37
93
92
112
110
131
169
74
134
119
146
99
93
139
126
55
83
139
138
110
122
109
128
92
134
55
105
135
130
58
152
138
124
89
137
97
92
139
99
109
168
128
122
105
136
126
124
103
122
124
103
127
55
58
126
126
69
146
115
67
55
74
100
110
134
56
56
87
92
124
99
115
139
169
130
124
108
98
144
79
158
110
146
122
145
92
37
92
124
37
55
120
107
139
126
55
69
107
118
138
55
104
67
99
102
111
67
144
137
148
93
107
86
83
122
83
74
93
146
105
93
144
79
67
122
146
74
162
139
99
178
144
122
112
134
92
93
55
56
105
123
122
138
144
93
111
126
92
55
55
92
128
128
140
104
164
69
95
138
178
169
75
67
75
128
122
84
67
110
95
55
178
126
92
110
138
92
126
171
68
146
152
110
140
124
108
97
58
146
83
180
132
105
109
55
140
120
91
120
55
126
99
92
159
105
67
158
91
91
88
99
104
135
128
112
58
122
37
55
169
37
126
56
168
92
93
105
75
152
93
158
134
98
123
144
110
167
91
86
74
104
37
92
56
58
98
105
138
139
69
74
142
55
37
105
114
178
92
138
149
103
138
105
79
180
93
169
37
68
152
92
111
55
144
37
119
138
118
105
89
110
122
106
56
56
169
132
104
163
64
104
152
122
55
55
104
160
126
93
92
56
55
105
126
127
169
37
128
146
104
126
87
105
110
134
92
150
136
111
67
106
111
56
122
58
93
56
138
99
126
89
93
138
122
67
122
131
123
171
110
127
158
119
124
126
124
123
92
123
144
111
134
107
138
188
87
97
55
110
136
100
110
122
111
55
55
75
86
104
77
144
134
139
67
100
138
69
104
103
86
152
37
86
180
56
58
125
77
126
83
105
171
55
110
98
127
55
104
122
115
93
140
109
93
160
102
127
37
93
135
75
126
131
138
92
123
110
92
140
127
92
126
128
106
163
138
67
120
105
123
131
93
144
104
104
178
115
83
110
146
104
124
124
55
99
122
110
126
138
138
178
139
56
75
152
86
139
122
55
122
178
88
127
92
105
126
150
109
91
136
122
127
123
69
178
56
67
138
122
132
99
122
110
58
104
56
105
86
138
135
124
37
94
93
169
68
69
123
69
105
67
123
56
146
114
138
58
67
105
126
139
146
104
122
107
127
122
98
104
126
93
105
99
122
67
110
99
123
122
77
178
110
136
128
75
56
105
118
123
105
79
104
71
126
145
109
91
99
139
111
136
93
119
139
121
89
122
111
110
55
105
118
93
152
127
105
122
109
126
126
79
58
78
92
122
67
126
178
169
109
67
105
93
92
37
69
122
118
163
101
86
55
56
109
111
91
111
55
109
55
105
117
67
89
92
69
110
37
122
92
109
105
122
122
138
103
138
102
97
139
110
112
111
92
158
93
56
79
55
128
78
92
182
126
92
58
164
109
92
92
75
138
107
109
128
110
109
92
104
67
68
109
119
88
111
122
137
128
139
152
92
67
178
119
105
105
74
105
109
134
92
105
123
92
111
126
178
109
126
127
83
92
178
122
178
100
103
89
178
122
93
158
126
139
110
92
103
92
126
67
137
126
124
107
74
105
141
56
127
126
55
182
122
131
56
80
72
110
104
127
164
55
126
138
181
37
122
75
56
110
37
69
138
58
77
56
67
55
99
132
55
88
168
110
129
93
107
92
92
120
123
110
138
92
141
75
148
177
105
105
84
111
56
75
128
127
122
138
81
69
58
122
110
178
104
105
79
55
88
93
110
138
107
97
106
107
111
110
104
92
122
110
132
122
37
124
140
68
158
98
101
58
86
55
124
136
67
75
77
132
109
100
97
92
97
86
69
56
74
37
130
68
105
109
86
171
127
122
77
69
93
138
139
110
127
146
120
58
105
110
146
102
110
169
86
178
105
152
128
58
138
56
146
128
134
93
92
122
99
37
55
104
122
104
58
126
127
56
104
55
93
67
126
92
92
79
92
152
92
139
55
77
58
131
110
126
92
152
139
103
139
169
104
109
178
138
105
168
83
67
124
114
136
178
122
122
92
126
97
55
104
138
122
56
119
69
122
98
123
55
79
148
127
138
169
92
110
104
152
139
92
100
92
128
104
91
37
180
104
103
75
111
95
124
92
105
135
113
141
119
122
138
110
67
93
64
123
67
87
75
169
138
122
122
114
126
111
55
129
128
100
74
138
152
77
126
110
56
105
107
110
132
88
107
134
55
119
58
92
114
82
93
93
58
167
92
122
92
178
127
112
67
139
58
138
105
144
104
74
120
109
138
58
139
103
105
111
144
95
105
69
126
93
92
152
98
37
132
79
144
127
56
93
139
128
92
138
122
79
78
168
138
55
67
92
69
105
139
69
67
56
101
152
110
139
100
110
126
58
58
135
92
91
180
153
148
122
110
58
178
93
124
158
37
148
139
144
69
139
68
145
116
138
100
144
58
146
146
130
103
67
126
105
91
145
56
91
110
92
119
104
79
111
55
110
104
123
138
92
105
139
126
105
120
92
134
147
105
139
153
122
152
110
37
109
110
144
56
122
127
92
111
112
132
117
92
79
127
103
88
107
163
55
91
147
55
79
126
110
93
84
77
117
55
55
105
133
107
104
122
149
122
107
110
152
67
98
92
144
56
37
132
107
55
37
140
93
124
142
144
122
153
55
86
91
103
56
127
146
79
91
127
56
137
119
55
106
119
132
79
92
105
106
123
55
104
169
92
139
74
168
114
109
104
110
146
55
169
108
110
164
76
67
67
139
67
122
58
128
86
56
152
122
67
76
55
110
55
152
78
139
86
169
104
56
124
37
162
58
137
122
169
178
98
67
126
104
122
165
105
114
67
148
55
149
168
107
123
74
99
58
105
105
109
140
55
91
138
110
119
93
108
69
118
69
130
110
77
146
127
139
92
169
138
103
104
109
88
101
99
37
178
114
126
55
106
56
126
79
132
77
110
103
93
92
92
106
69
128
68
37
110
139
107
127
104
104
122
105
55
55
152
148
105
104
123
120
92
109
130
55
168
110
107
58
73
105
92
117
69
126
88
83
169
110
56
127
119
138
55
105
126
139
123
178
126
103
89
126
138
146
92
127
127
127
119
127
93
88
146
114
146
109
171
99
77
104
163
104
56
101
178
114
132
75
67
37
111
104
67
113
105
123
93
92
109
132
75
37
138
103
83
119
146
86
119
93
139
145
67
105
147
122
80
67
131
126
93
91
37
95
91
102
67
37
140
103
178
120
105
115
92
64
98
126
97
144
126
151
163
74
95
110
139
120
144
126
139
58
84
92
69
55
131
105
75
158
126
138
91
109
127
68
119
121
169
104
86
138
86
138
137
100
107
119
78
86
137
99
79
99
55
92
139
67
122
124
55
121
111
169
37
138
144
58
87
101
104
69
110
104
110
124
122
37
104
101
180
158
164
105
122
69
55
122
100
91
86
67
105
105
163
136
104
138
119
124
126
37
152
140
126
55
93
168
111
178
37
93
146
127
92
105
130
171
104
92
147
124
75
91
89
125
100
146
169
56
67
93
69
168
121
96
93
86
92
108
94
100
56
69
126
123
171
55
144
122
146
140
105
55
97
139
133
55
127
91
144
104
109
148
138
159
134
140
126
137
37
139
125
68
110
92
92
79
67
167
127
72
55
178
110
110
93
98
67
92
118
127
127
37
122
86
134
127
92
75
75
122
123
128
122
55
122
134
104
56
135
189
111
144
58
104
119
104
99
127
110
112
140
138
130
178
122
118
169
99
167
83
69
145
136
146
110
126
119
56
134
56
123
123
56
144
105
79
131
119
178
67
119
112
101
152
89
178
178
92
55
123
152
55
146
92
122
55
105
180
92
152
58
69
107
128
134
92
126
122
138
152
69
168
55
120
110
92
138
140
122
126
109
104
139
58
105
125
120
55
91
74
67
96
92
67
107
126
99
111
139
119
110
126
79
111
124
137
134
110
99
118
92
106
169
102
148
144
139
110
123
86
37
128
127
117
107
58
69
101
146
138
92
122
110
91
139
55
104
114
114
67
55
89
105
107
55
140
110
134
113
56
107
55
168
79
126
144
74
110
67
56
98
80
178
123
75
127
140
105
105
127
58
81
105
75
74
55
146
37
178
110
109
137
99
105
73
92
122
55
58
110
139
69
103
111
58
126
110
140
126
92
171
131
56
169
55
86
79
58
168
139
105
102
56
119
92
169
56
124
152
146
137
139
110
114
139
116
55
126
131
104
128
37
79
119
122
169
56
107
123
139
128
119
114
122
138
146
110
142
88
79
131
75
58
79
105
103
109
141
68
56
168
93
110
135
163
55
105
98
114
77
110
138
92
67
129
110
126
67
138
132
102
163
58
77
55
83
93
110
107
178
93
134
55
98
91
144
122
77
74
92
115
69
134
152
152
140
179
93
142
105
109
55
139
110
110
93
138
55
109
141
92
55
152
126
178
110
97
138
93
110
110
109
67
134
57
119
109
110
58
100
119
93
123
78
75
104
107
86
106
169
56
128
119
103
92
131
180
122
61
104
136
92
104
123
92
126
122
84
37
139
110
109
75
92
158
75
69
67
56
110
142
127
97
134
55
69
105
56
120
67
139
109
55
110
128
126
138
128
138
55
169
93
105
111
37
58
134
111
126
55
37
55
126
138
74
103
69
132
56
93
163
134
160
37
126
77
101
105
55
86
139
86
139
139
171
104
119
145
178
126
37
138
92
55
67
69
104
110
105
103
86
130
169
122
154
56
58
132
122
92
122
139
93
56
130
128
138
119
110
122
139
86
129
128
99
104
132
127
110
105
127
55
130
79
98
74
104
102
92
68
126
55
104
92
58
98
55
37
77
67
92
126
109
112
138
128
93
144
110
105
122
56
37
100
86
138
122
148
122
107
103
124
128
127
55
105
114
104
109
120
69
110
140
56
122
138
58
93
122
104
126
110
139
81
104
138
92
96
164
178
138
69
92
92
138
92
74
114
110
94
178
105
86
139
105
109
165
134
138
100
56
110
86
56
139
126
122
92
178
79
139
37
98
101
93
56
120
55
145
98
56
112
114
58
117
105
93
87
122
129
171
93
131
86
86
86
138
93
134
37
104
84
89
105
146
138
107
110
86
74
164
144
138
147
108
117
107
55
92
74
75
86
178
93
127
55
126
180
138
37
169
102
109
111
144
169
124
138
134
126
117
132
127
163
123
122
110
104
169
122
109
111
98
67
138
122
55
134
98
55
56
127
104
111
178
55
111
111
144
55
111
114
110
106
93
104
37
55
93
87
138
55
156
144
110
105
105
99
69
67
107
110
110
140
67
79
91
131
122
119
91
110
83
105
67
98
77
95
152
140
128
110
168
94
126
109
89
178
128
138
158
148
130
58
105
146
122
146
93
134
110
105
134
126
115
103
163
122
55
149
145
122
131
95
128
93
92
55
73
86
110
37
105
123
117
91
99
98
74
105
103
92
142
69
105
144
92
68
127
93
123
110
138
92
109
93
163
56
126
163
138
127
92
123
37
122
138
67
92
105
83
58
79
144
140
93
138
172
105
93
128
140
55
92
79
74
109
105
139
92
145
144
101
93
102
55
138
79
92
138
126
144
152
95
178
109
111
122
92
122
105
75
93
91
98
105
127
55
106
110
92
148
140
110
139
139
127
105
105
138
55
145
128
141
141
109
75
110
139
148
111
105
79
92
158
139
67
104
92
124
126
110
144
134
109
105
69
137
122
93
55
109
105
146
55
58
37
101
130
103
92
134
95
111
93
55
132
92
92
146
171
58
122
127
140
178
75
134
93
144
99
124
65
135
58
55
99
110
110
147
86
92
138
67
134
123
111
79
160
103
121
131
147
120
86
83
102
92
56
100
178
107
87
138
122
89
105
105
92
76
56
88
105
58
105
92
126
55
75
92
178
67
139
138
91
55
77
126
122
127
77
104
127
139
103
79
144
103
126
130
92
121
75
75
92
55
105
103
127
150
75
131
128
105
55
105
105
77
55
56
58
138
122
56
122
77
122
92
105
55
104
126
97
139
158
105
104
77
120
126
138
149
67
126
152
81
145
122
120
122
102
178
58
127
135
130
92
139
142
93
86
122
139
127
110
152
109
122
123
179
138
79
92
93
83
139
139
93
99
122
92
122
169
58
122
131
92
68
37
99
139
55
122
37
138
56
146
58
128
99
99
103
74
56
106
99
124
105
138
126
110
146
119
89
141
139
78
79
67
112
92
144
119
56
105
56
105
37
58
117
152
126
105
104
119
111
56
92
99
106
37
88
55
84
158
67
89
120
93
74
180
146
132
55
144
91
93
103
119
55
137
105
135
101
103
126
103
138
102
122
114
91
109
165
55
76
138
69
81
110
128
97
67
104
107
149
120
146
93
92
69
92
165
93
165
122
105
99
86
92
56
67
84
103
144
104
163
58
178
56
68
122
37
95
56
136
139
92
105
99
144
145
93
92
111
91
114
67
138
144
97
169
169
126
37
124
55
134
152
110
75
144
93
105
139
169
103
112
78
146
56
61
169
92
127
75
145
110
105
71
152
105
93
122
122
140
131
74
58
152
123
69
79
83
55
55
128
83
58
136
122
67
89
119
103
108
137
100
122
146
110
92
69
77
55
158
152
91
126
126
114
110
99
56
119
99
130
105
139
111
105
122
110
128
104
138
79
110
92
128
138
136
92
91
162
67
138
134
135
122
146
69
147
103
80
58
138
128
104
92
158
67
162
165
127
134
97
105
126
112
109
77
138
112
92
152
123
130
111
128
79
93
77
104
122
119
138
117
127
152
56
74
110
178
79
79
109
91
56
92
105
91
91
77
141
126
122
93
111
94
158
99
138
86
146
58
91
105
139
97
110
158
169
56
69
105
104
93
56
87
152
99
83
148
83
91
110
110
93
109
180
144
152
137
119
98
110
37
56
78
129
137
58
178
126
110
58
138
109
84
126
68
55
79
134
91
91
105
67
68
67
110
124
72
79
88
140
128
93
95
84
92
92
92
138
108
37
75
88
104
67
101
99
104
58
126
64
103
106
104
140
127
122
105
131
169
101
105
149
55
92
122
146
111
67
56
79
58
146
104
77
122
86
99
141
122
126
110
106
144
152
91
69
152
104
110
97
58
104
152
138
92
115
178
122
122
67
122
111
55
128
126
114
74
37
95
77
94
124
55
92
86
79
87
148
136
158
56
131
110
134
110
41
126
123
111
127
55
92
131
103
103
106
120
127
92
138
104
91
55
138
58
37
107
69
92
182
137
93
88
92
122
55
89
89
92
122
74
168
77
89
144
92
56
92
37
67
139
126
103
138
146
148
92
56
69
105
139
158
128
111
119
74
103
37
152
145
91
146
122
93
67
92
92
107
78
86
67
67
130
74
164
141
99
56
131
110
110
148
92
140
144
115
99
123
93
139
152
146
121
69
92
104
122
114
83
126
127
92
134
105
92
97
92
162
55
122
92
75
110
93
123
125
138
122
105
122
164
99
139
138
122
77
106
134
178
152
93
92
97
140
98
104
146
84
86
139
127
136
55
119
109
37
93
86
110
110
89
126
140
114
83
55
114
117
55
77
91
56
74
37
122
58
92
134
152
146
79
92
142
91
123
37
92
74
138
67
130
127
69
104
182
116
107
178
75
130
126
138
92
79
92
126
69
92
104
126
146
99
111
122
126
140
178
92
101
122
91
104
178
163
103
178
104
169
110
92
110
92
110
58
67
86
108
131
86
92
138
88
110
138
56
110
146
115
58
158
131
84
140
91
128
109
95
134
126
37
130
119
77
37
79
178
89
122
151
126
99
67
140
144
109
105
67
55
109
126
122
135
132
131
103
106
107
91
135
134
104
112
55
138
74
178
127
122
55
152
56
105
98
138
77
105
138
99
117
55
130
123
105
106
127
109
127
123
114
138
110
105
103
55
110
67
104
134
105
55
37
110
69
110
144
127
119
110
110
171
126
110
122
178
128
88
86
93
55
92
93
117
56
189
109
74
118
92
86
55
123
92
138
127
146
68
93
110
171
178
110
92
55
77
105
158
139
122
144
69
56
167
119
79
134
55
92
67
69
117
92
105
75
94
102
55
93
93
93
122
146
104
92
140
144
147
92
144
142
92
77
55
105
178
149
137
178
55
144
92
37
160
126
93
123
143
126
129
58
111
134
104
56
138
67
142
56
67
67
122
67
56
110
92
144
72
107
56
122
55
118
140
64
56
97
105
128
119
37
93
152
75
144
162
152
144
75
83
105
126
55
126
55
102
75
92
111
142
67
110
106
122
122
122
67
104
122
136
127
161
180
122
109
127
178
104
93
67
92
93
128
96
144
92
111
91
168
146
104
104
110
56
77
136
122
77
136
152
127
119
83
165
99
105
122
126
55
140
92
99
93
109
138
86
123
92
144
119
56
91
67
55
138
56
145
122
88
79
122
91
136
123
93
138
37
138
93
136
91
128
107
130
110
126
140
122
78
110
109
148
124
74
128
86
104
76
126
110
146
93
37
68
109
37
74
74
151
109
144
178
74
105
122
136
55
92
163
55
58
148
139
126
104
88
55
178
55
131
84
86
122
178
97
106
69
110
132
84
101
110
138
96
128
146
105
58
138
67
134
93
110
139
114
86
138
91
92
110
58
139
169
100
138
164
55
89
165
104
127
97
92
126
55
152
124
108
73
139
92
104
138
93
144
109
110
112
93
93
119
93
55
55
128
110
135
144
56
98
118
122
74
93
93
92
93
123
127
127
104
110
79
55
95
105
171
92
97
126
111
92
131
105
110
92
67
139
91
142
146
117
102
137
169
103
104
91
110
105
55
92
126
101
105
58
55
86
114
110
86
110
124
37
182
104
104
55
74
122
140
92
127
75
123
111
92
151
126
67
79
138
67
105
144
67
75
37
140
67
58
67
134
138
139
164
92
55
105
100
114
105
130
160
122
152
92
107
56
67
144
112
55
105
92
92
109
103
92
144
83
126
75
58
55
69
152
79
111
126
93
55
123
86
74
92
69
67
98
105
93
110
55
74
139
148
92
105
138
56
92
92
126
58
81
69
126
178
132
55
58
110
67
107
58
92
131
127
127
138
69
91
55
128
86
37
92
163
104
99
92
100
122
123
138
122
92
165
129
92
168
104
56
178
178
163
56
56
92
146
110
56
74
76
117
178
139
126
55
127
93
37
110
124
56
134
161
75
126
126
55
111
69
67
199
55
64
55
110
138
104
148
67
138
67
79
78
105
128
140
129
126
56
98
127
74
146
55
99
131
119
130
165
86
109
121
110
110
180
138
104
160
93
140
92
83
99
86
104
139
199
134
146
105
139
117
138
92
126
55
55
92
119
110
75
127
92
92
145
107
91
127
146
58
138
138
75
136
98
55
56
69
93
126
125
127
86
93
112
68
122
119
110
92
92
93
109
98
146
92
138
108
110
110
144
105
55
83
132
118
67
126
132
110
58
109
110
55
55
67
104
140
55
104
58
56
58
55
146
92
110
122
91
132
56
126
139
77
122
122
92
146
126
146
136
69
55
77
152
130
67
92
137
104
144
77
146
83
109
126
58
93
117
117
69
55
55
55
105
130
144
105
55
144
122
92
122
100
102
80
92
122
110
93
106
126
134
55
79
130
144
67
114
109
99
58
110
68
92
93
158
109
119
55
104
98
164
67
67
79
126
145
103
160
55
178
138
122
119
178
74
93
56
93
88
58
109
114
79
99
179
138
55
83
97
105
95
99
108
55
67
55
93
101
105
122
122
138
122
55
122
92
86
83
156
148
106
37
128
81
84
55
55
146
103
138
99
93
92
127
122
178
144
138
97
152
92
112
129
110
124
92
127
83
111
138
146
138
111
171
169
138
152
124
86
114
110
91
105
86
99
171
84
96
67
92
77
114
128
104
109
105
55
101
83
144
126
110
111
122
55
114
140
140
111
134
139
84
92
104
56
105
92
92
79
58
126
134
125
91
95
146
110
127
122
99
156
104
128
169
128
134
146
58
140
92
138
131
138
145
67
110
107
122
138
92
136
83
105
158
104
79
94
112
127
56
98
88
171
123
112
55
131
69
92
56
145
151
37
55
144
122
138
103
105
181
146
77
93
108
67
130
92
58
104
104
126
55
122
37
139
130
111
120
104
169
105
122
77
88
77
111
136
137
110
140
110
171
152
126
104
105
92
126
86
126
114
69
56
100
148
124
103
122
68
126
67
179
178
89
110
127
138
92
58
104
74
141
127
100
104
126
104
180
127
128
94
96
124
120
122
113
110
115
114
138
114
103
126
110
138
120
92
123
110
139
117
126
102
105
92
163
108
89
105
67
134
126
105
55
139
86
134
146
110
74
55
92
55
56
110
138
110
56
105
58
126
92
131
126
58
140
137
74
75
146
93
138
109
140
74
138
128
93
168
105
110
100
128
57
152
148
144
178
107
126
120
104
55
91
107
169
92
147
37
86
126
139
93
86
138
110
106
134
128
177
99
69
83
122
114
126
77
92
79
69
92
138
92
142
119
152
139
127
37
67
122
138
86
91
126
55
92
97
77
69
130
84
137
169
93
169
139
102
55
105
164
103
123
117
125
67
131
111
79
103
138
37
164
92
67
37
110
86
123
67
92
105
109
105
127
104
69
56
144
128
99
93
99
75
58
134
135
98
144
109
132
92
37
126
119
138
55
77
158
77
130
93
92
104
67
149
92
160
99
84
79
104
146
93
55
115
103
55
139
77
56
120
169
55
67
122
92
108
105
152
119
178
79
69
102
138
55
139
77
128
122
55
55
98
122
141
86
123
86
110
110
93
108
117
55
128
126
69
98
122
92
67
124
56
103
171
164
144
101
123
126
126
110
110
119
103
128
74
58
86
110
178
55
138
105
55
122
105
37
92
92
124
167
91
109
58
139
87
139
135
92
138
37
138
83
119
102
130
128
178
150
126
77
152
139
104
123
86
92
122
120
139
138
104
77
107
128
69
110
79
58
124
104
99
108
132
99
126
109
138
99
126
110
104
123
110
171
75
126
93
178
171
128
140
152
84
124
119
110
104
92
98
152
110
87
79
37
167
134
123
81
37
110
55
126
55
55
89
164
106
79
101
114
103
137
138
74
138
119
128
55
104
110
122
180
103
69
123
55
107
127
55
37
138
55
122
110
119
79
110
110
122
110
99
167
178
67
107
94
119
58
110
111
118
128
77
105
139
109
97
117
55
105
146
124
91
123
91
55
67
105
123
171
107
112
149
142
131
119
118
37
131
127
120
158
163
152
92
110
91
99
139
110
69
68
83
120
122
122
114
110
122
164
171
93
95
122
99
131
102
87
92
55
58
55
67
95
152
122
97
74
115
111
56
110
132
56
142
178
110
171
105
99
178
110
136
163
37
122
55
92
93
74
86
79
124
104
134
67
77
109
92
105
105
138
110
137
112
126
132
128
37
178
79
126
123
67
124
138
37
105
93
105
92
97
118
55
178
178
55
118
74
56
144
93
103
165
93
104
131
67
156
142
102
138
115
169
102
93
97
128
109
102
110
122
152
113
37
144
105
105
79
114
75
107
37
148
104
102
56
83
120
55
69
140
128
104
78
110
107
98
109
134
55
148
138
126
91
169
58
102
107
56
148
167
110
69
124
69
138
169
178
110
92
169
106
37
96
105
138
107
132
110
144
93
117
92
117
68
124
152
97
74
148
86
122
139
103
111
120
137
118
37
92
134
105
127
86
110
110
91
55
37
107
91
92
119
69
119
109
138
55
118
126
126
158
99
122
130
68
110
138
178
110
67
67
56
78
130
84
122
138
37
110
55
131
107
110
105
110
178
55
103
124
97
92
92
126
105
144
138
37
75
138
104
64
104
149
91
127
178
122
84
93
93
55
74
178
122
130
126
152
138
100
55
128
91
104
122
74
92
55
106
56
164
105
110
104
100
109
93
98
101
126
92
110
103
110
118
110
139
96
69
67
132
79
131
110
37
119
138
126
37
120
178
103
110
128
56
163
100
55
139
132
139
92
126
138
156
58
74
134
56
158
109
152
56
58
130
86
106
134
56
163
124
105
126
111
144
104
165
104
128
102
88
178
114
68
103
124
55
37
165
104
37
92
91
111
55
137
97
109
124
122
144
67
126
109
127
123
110
120
138
111
103
86
105
122
72
140
131
77
67
110
110
101
147
107
123
125
126
55
101
123
87
111
119
58
158
83
67
92
91
75
123
99
55
126
152
103
126
105
119
58
171
162
100
73
37
110
127
178
75
111
119
105
55
104
55
106
126
122
74
56
58
144
37
152
122
93
80
89
91
164
64
110
67
126
138
137
139
115
124
58
55
146
92
107
75
111
92
118
58
126
92
93
67
122
58
110
123
103
89
77
138
158
55
127
138
122
104
117
95
139
91
67
74
107
55
105
140
105
134
145
67
109
74
79
104
104
104
158
84
92
122
127
144
105
122
171
123
55
139
123
123
107
37
67
97
130
145
92
120
37
120
144
158
92
115
67
138
99
126
152
107
69
103
92
124
55
110
107
146
169
144
55
132
67
139
69
105
92
132
130
75
163
83
110
109
122
56
67
128
75
144
56
105
119
123
93
144
58
95
108
119
168
99
122
92
110
139
131
122
146
132
135
89
67
67
56
58
79
56
131
103
67
164
92
119
101
147
92
112
134
100
92
126
91
55
134
122
148
139
132
56
178
97
92
68
55
79
138
146
55
110
138
83
104
104
104
128
92
67
86
105
110
89
168
146
104
122
99
105
112
56
152
58
55
58
92
164
55
73
110
92
134
67
107
110
86
55
79
144
83
97
111
126
56
79
55
93
72
55
132
92
105
68
110
77
92
118
125
58
152
110
115
163
110
79
110
178
122
103
146
123
55
158
83
97
91
139
105
55
105
55
128
105
111
152
169
122
132
58
110
132
146
92
119
101
77
136
55
127
99
58
126
105
75
37
105
113
103
92
102
69
144
74
69
69
56
55
126
138
167
37
122
122
103
107
106
128
55
84
180
126
97
163
158
84
91
178
144
74
73
74
169
169
119
92
144
92
55
171
99
83
98
108
104
130
126
105
105
148
126
92
56
126
69
77
94
95
37
67
110
112
134
123
126
158
97
146
178
137
56
110
93
92
105
140
97
102
61
110
119
86
126
105
116
139
109
122
122
58
69
95
77
55
109
171
110
67
163
126
138
122
128
105
99
74
95
107
75
138
138
91
93
111
72
104
122
132
127
114
126
75
162
99
107
55
104
139
144
148
178
105
152
56
112
92
55
127
113
92
55
99
73
75
56
135
92
109
146
126
168
91
138
105
108
92
110
122
139
99
110
131
152
92
88
122
122
56
122
56
138
113
110
110
110
67
56
118
122
110
55
122
101
122
104
122
97
127
92
102
105
165
122
178
154
139
108
91
146
95
188
139
132
178
116
110
126
152
111
86
131
91
91
139
101
117
171
130
100
77
105
91
119
84
105
119
146
138
110
126
122
55
92
122
115
104
171
74
119
55
119
123
139
37
104
37
122
140
122
135
107
123
148
122
110
67
171
58
105
92
138
101
126
140
99
55
55
86
127
136
110
110
123
37
138
104
97
103
99
92
92
138
110
126
178
138
107
124
134
93
75
92
138
93
99
105
98
129
86
119
127
103
55
123
128
92
126
99
112
123
92
122
67
109
126
37
124
84
107
94
110
93
37
110
126
83
58
89
92
104
178
67
120
139
126
113
37
107
93
117
152
67
137
158
78
69
109
113
75
163
58
110
122
147
134
92
98
76
122
99
148
114
58
92
104
122
110
86
122
55
110
140
124
140
126
100
58
138
92
104
110
162
138
124
112
122
117
102
163
99
134
105
139
110
105
105
67
158
106
92
103
67
110
104
146
97
55
74
109
146
91
93
127
178
37
129
101
100
93
74
126
138
67
75
104
106
134
91
140
93
127
122
93
169
126
147
104
122
93
37
105
99
152
140
37
140
124
103
122
77
169
103
126
105
110
105
68
124
122
114
110
112
67
104
126
122
123
139
86
75
56
137
83
104
160
123
110
122
92
110
92
126
93
178
105
105
55
37
146
199
119
86
73
103
126
37
79
180
93
79
169
37
122
79
99
55
105
110
119
177
89
94
92
93
67
75
92
107
79
144
93
58
109
112
67
110
118
118
122
123
144
121
122
86
92
55
140
111
55
104
178
86
127
101
117
119
56
94
55
55
99
110
152
139
37
122
69
164
107
122
105
109
83
100
103
145
95
92
37
122
104
129
123
92
112
148
91
139
37
93
110
103
126
68
122
138
110
69
178
69
105
79
92
138
93
92
93
95
55
123
122
126
86
55
126
109
55
92
92
178
122
138
92
77
164
64
110
68
79
92
127
110
171
79
105
110
127
119
139
110
125
134
111
130
114
138
85
130
93
67
148
127
134
139
131
37
127
58
106
37
56
105
69
55
105
139
56
165
178
178
122
144
107
93
136
67
69
169
150
158
125
132
128
126
126
122
58
111
55
123
111
149
58
56
55
67
55
128
74
56
119
130
128
105
139
93
83
109
134
124
146
67
77
92
178
92
86
100
93
141
140
92
67
79
69
56
140
92
139
105
126
104
148
104
178
171
83
110
68
79
58
120
86
78
110
105
55
171
104
56
55
104
126
56
69
92
146
144
105
110
122
69
104
117
105
158
138
99
93
58
102
69
178
101
169
99
113
126
77
126
110
148
152
117
122
67
140
122
152
92
92
139
178
131
93
143
83
138
37
92
138
69
107
67
111
55
144
162
103
146
107
110
92
109
122
93
75
74
126
126
56
55
126
67
148
83
79
126
127
37
168
55
58
138
114
92
134
122
130
79
74
37
128
37
106
55
109
169
89
110
104
160
146
69
92
128
99
128
55
67
152
58
103
109
104
167
105
115
132
86
56
162
77
84
92
93
56
105
99
86
127
56
92
37
58
115
138
138
144
138
125
37
105
127
67
56
85
144
68
131
178
126
105
110
55
122
105
139
152
111
139
58
75
142
58
92
132
124
110
115
91
105
92
126
58
58
145
93
92
77
138
135
69
83
104
110
122
130
134
101
134
132
146
111
92
139
128
126
110
110
109
122
127
104
178
145
92
138
105
104
128
109
136
95
144
130
99
152
148
92
146
105
104
99
138
72
98
105
169
110
178
126
142
92
104
111
110
119
126
55
56
74
131
139
92
103
91
107
149
139
146
74
131
100
92
93
78
134
126
165
86
100
92
56
87
56
119
55
101
171
69
169
67
119
69
97
158
79
67
92
99
114
127
95
69
55
56
55
55
103
83
91
92
76
132
102
87
92
119
55
142
119
131
104
134
67
104
67
92
178
69
92
93
130
180
55
77
92
83
139
126
86
93
92
74
178
119
93
92
104
67
67
107
92
67
99
67
119
124
146
92
117
69
74
119
84
110
110
77
115
76
105
74
132
112
56
104
141
104
107
92
110
127
99
119
99
138
91
86
104
67
132
92
108
104
152
105
122
93
55
55
103
127
127
67
58
92
67
104
140
92
67
92
56
139
55
146
68
138
163
37
69
120
55
86
122
74
122
37
107
120
97
67
92
56
68
92
56
144
122
75
86
87
167
37
135
104
105
105
120
138
109
106
171
152
138
84
67
126
110
118
105
55
104
111
178
92
75
163
105
108
56
67
150
92
105
126
101
134
67
122
92
134
55
147
119
144
58
144
77
100
102
79
136
89
122
138
146
122
145
92
131
88
61
145
56
74
93
132
58
58
149
37
130
97
91
104
162
92
119
152
58
180
55
188
123
93
139
55
182
74
98
67
144
134
104
138
100
122
128
111
152
86
110
132
97
55
132
55
58
178
122
137
55
110
105
180
79
105
93
111
105
92
126
69
92
128
104
92
105
69
138
92
152
93
88
178
171
93
126
56
79
56
138
67
74
55
56
67
74
93
110
110
102
97
109
103
91
98
127
138
103
139
58
101
148
178
92
124
55
99
75
180
178
100
92
58
126
107
124
126
91
124
135
110
105
107
122
55
55
105
123
37
55
113
101
86
110
126
122
78
122
112
74
108
79
69
92
127
152
114
140
119
139
178
92
138
126
131
91
122
122
104
67
109
126
132
100
126
37
146
78
99
55
120
169
97
92
109
127
169
75
144
105
126
180
139
91
110
58
110
138
110
109
126
140
146
138
79
171
152
37
92
123
120
56
67
37
56
109
137
142
92
144
74
97
97
110
97
171
122
83
138
123
92
79
152
150
110
138
86
86
75
105
74
58
178
37
138
158
55
79
92
105
152
178
92
139
58
105
97
128
55
55
105
111
138
74
178
37
138
92
111
69
55
79
134
130
126
92
72
105
77
169
69
126
178
55
128
127
104
92
112
67
132
134
55
105
152
139
139
127
178
104
108
67
110
93
139
122
119
131
74
91
86
92
110
93
58
104
138
144
122
142
129
139
75
109
134
126
106
83
56
99
55
92
89
105
110
101
122
126
110
128
139
134
129
92
122
122
107
152
126
127
92
138
64
55
123
91
125
75
92
104
119
105
102
127
123
123
86
105
123
111
93
55
126
168
81
152
99
67
37
84
97
138
105
105
111
75
104
126
138
127
125
154
178
145
168
89
144
92
99
126
73
122
139
127
138
55
110
139
91
104
117
141
144
110
118
139
138
100
93
55
67
79
104
117
56
105
104
110
55
107
113
55
122
83
56
128
37
129
110
122
58
110
93
123
79
144
67
100
67
138
138
56
109
126
106
162
160
55
122
80
92
144
105
92
97
105
84
136
75
106
138
79
122
93
56
126
128
118
86
56
105
178
148
122
109
126
119
105
69
131
93
93
167
74
124
127
92
128
126
92
138
119
55
105
126
126
119
146
92
92
122
126
117
178
138
83
130
124
104
132
119
55
105
144
123
138
56
105
127
101
67
84
68
115
105
122
138
67
130
104
111
99
86
123
55
92
92
138
123
138
104
144
86
111
67
136
139
145
178
171
58
104
107
100
152
122
104
122
73
110
138
55
105
111
104
104
105
158
129
131
55
139
58
67
152
79
75
92
134
89
99
108
122
126
55
139
122
55
158
124
56
119
163
144
122
136
147
107
132
127
92
144
110
122
105
92
37
110
134
107
135
69
55
138
139
93
178
79
109
56
151
126
37
126
81
100
123
103
112
68
110
68
102
110
67
55
77
178
119
93
105
165
107
134
110
122
139
55
152
74
56
110
74
55
55
105
112
119
180
132
144
80
146
144
140
117
163
104
105
130
93
111
148
128
144
139
92
92
152
122
134
120
130
37
134
56
158
119
139
127
126
91
104
93
92
93
110
93
105
165
67
56
92
109
152
56
138
69
55
141
97
55
67
126
169
113
146
127
178
92
120
69
92
152
97
119
146
122
37
83
105
105
37
55
69
169
101
122
91
126
92
122
104
77
105
55
152
107
112
102
56
106
72
92
124
107
91
119
55
146
122
138
144
93
104
110
126
55
91
91
56
37
55
171
55
67
110
56
103
138
92
134
110
107
68
99
91
139
120
91
89
124
122
119
124
105
199
126
122
105
152
87
138
123
110
127
88
67
140
37
86
122
55
92
37
105
91
99
110
122
37
74
110
58
123
105
72
126
142
83
139
134
104
119
128
56
119
56
55
127
148
99
78
169
104
56
58
127
56
126
168
37
168
109
83
56
56
92
93
136
99
55
68
55
122
120
55
103
92
148
104
69
110
109
37
55
107
110
104
126
132
134
113
146
121
58
138
138
138
67
128
160
93
55
55
67
92
37
119
74
37
151
97
114
109
134
55
138
81
55
110
125
84
58
92
139
86
103
132
77
149
92
126
105
91
113
110
91
110
138
138
127
105
93
128
105
178
55
67
77
138
132
98
138
92
126
164
122
86
199
112
74
122
92
138
55
139
97
180
105
139
110
130
92
138
86
92
122
139
55
122
110
58
122
69
180
140
106
56
128
168
109
119
55
126
124
95
122
169
55
67
125
67
92
92
130
119
92
109
93
79
129
122
91
55
99
119
140
123
112
58
148
144
128
122
188
100
153
105
126
122
178
37
104
79
158
69
69
97
101
165
104
146
132
110
117
146
67
114
104
148
55
130
122
79
124
119
37
56
122
83
93
121
86
89
79
146
89
152
113
139
67
134
93
105
83
69
107
58
110
69
139
156
128
92
109
110
138
140
178
103
128
80
137
122
117
132
199
105
128
83
180
105
67
84
104
171
103
92
125
72
110
178
139
178
138
92
74
178
55
79
37
67
128
104
144
105
156
124
86
104
69
55
126
110
84
107
122
67
122
139
86
122
92
131
122
126
110
127
93
104
140
74
127
126
104
137
122
165
114
123
145
119
94
67
122
162
122
93
89
104
126
67
104
111
119
123
86
178
83
98
128
149
106
134
122
91
169
139
98
92
74
132
69
55
122
146
139
122
152
92
152
122
122
55
98
118
104
180
139
83
69
88
110
122
91
112
145
129
77
98
92
55
103
55
111
55
91
110
144
102
140
146
74
126
122
167
105
56
132
56
109
110
108
102
109
144
92
102
146
92
92
167
105
110
77
55
123
93
74
122
74
122
93
111
81
74
111
69
128
79
92
67
80
153
139
158
110
110
123
104
146
134
122
144
84
83
177
120
55
77
105
122
135
58
142
134
112
92
105
67
146
105
92
91
58
105
56
139
91
126
146
127
152
92
92
105
75
178
126
102
126
138
126
123
55
128
110
122
55
139
104
97
69
93
55
148
130
137
67
37
127
171
122
135
55
56
89
110
110
110
140
111
160
122
131
102
178
128
138
128
120
64
111
146
86
139
127
182
84
178
79
178
112
110
69
127
128
97
111
110
128
126
152
126
92
115
132
105
77
86
122
146
126
105
144
123
122
75
110
104
87
83
169
110
120
93
126
86
79
148
128
55
139
69
121
93
126
127
118
110
110
110
126
99
84
122
134
102
126
77
58
110
79
122
138
118
93
146
163
67
138
136
91
122
162
93
152
104
149
168
99
100
88
126
126
93
105
84
123
139
138
123
110
86
110
107
152
149
119
110
127
58
74
168
101
128
107
131
100
55
79
84
99
139
134
55
55
103
91
158
92
99
86
137
129
98
86
152
110
112
139
127
126
91
109
103
138
138
68
79
74
180
55
152
105
111
163
152
92
67
145
142
68
126
178
104
89
122
58
37
92
122
99
67
138
97
152
37
138
78
105
78
146
148
74
58
92
56
148
152
110
162
69
67
137
97
104
127
92
105
74
134
107
107
111
104
106
96
143
93
103
119
88
79
126
91
99
105
119
111
109
93
110
55
140
107
105
88
122
178
144
146
77
119
144
56
123
126
112
93
92
171
122
93
105
37
134
79
56
107
92
152
111
126
131
126
122
158
132
97
91
55
126
110
109
110
107
122
140
150
171
152
128
74
89
92
122
122
55
152
110
112
136
110
152
91
123
67
55
165
92
92
83
130
56
78
88
158
128
102
180
111
178
103
58
105
106
76
67
132
127
67
104
128
152
127
105
107
104
127
122
122
69
144
110
103
104
93
137
107
124
145
67
111
126
55
56
98
117
92
128
127
67
88
103
102
69
105
100
86
145
122
67
138
140
68
92
126
58
99
92
105
110
92
79
102
171
152
67
117
69
123
37
75
105
115
74
56
135
94
92
93
126
55
126
178
105
121
110
56
91
140
89
124
111
107
75
37
134
92
144
178
107
58
119
91
131
146
119
132
138
122
67
144
104
105
55
58
118
75
126
138
119
92
93
58
110
86
106
128
105
178
55
171
55
178
56
92
103
123
105
99
55
136
122
105
104
162
138
92
128
67
107
64
55
164
92
93
140
146
104
119
127
92
122
123
37
127
99
91
86
138
75
75
108
92
111
158
56
58
58
122
165
122
118
127
126
126
105
122
110
109
117
104
122
149
178
127
56
110
128
135
124
100
119
69
110
92
69
111
122
91
122
139
69
126
119
84
79
148
93
110
139
78
106
139
130
123
137
67
126
144
104
67
68
125
119
121
128
69
58
112
37
178
138
105
131
178
93
110
122
169
105
110
123
92
74
55
111
37
55
96
92
158
109
138
134
107
132
138
136
122
58
146
93
93
127
110
93
105
110
122
105
137
169
37
93
56
121
111
58
152
99
74
119
152
122
134
74
92
84
93
171
122
56
119
124
91
144
128
99
67
119
92
138
105
144
145
56
104
188
56
78
138
123
144
74
144
138
126
158
126
114
110
107
136
131
122
122
91
92
92
67
93
110
122
138
105
74
55
105
146
55
79
138
130
72
101
67
109
128
105
67
146
169
92
178
74
92
134
69
112
117
79
114
67
68
89
144
152
104
152
56
139
92
55
123
134
103
92
37
110
37
139
126
114
110
152
92
111
139
146
152
67
99
110
139
84
81
56
55
91
58
110
105
126
104
91
105
119
111
128
123
99
122
67
105
158
135
93
144
67
146
37
138
104
139
169
89
92
58
92
93
123
58
55
160
55
146
160
104
119
77
178
108
75
55
146
112
92
171
103
105
67
92
93
69
169
105
112
126
55
87
75
128
56
100
83
158
152
100
119
106
119
105
97
144
110
140
168
69
126
169
146
55
124
104
105
152
123
67
110
188
93
105
122
79
111
110
127
55
177
92
137
69
55
146
55
104
109
77
122
105
126
132
115
111
93
138
61
130
138
111
101
104
107
110
105
104
138
150
93
122
122
134
68
123
138
122
127
110
139
80
99
148
58
68
92
142
165
144
56
88
97
168
55
112
112
92
55
107
169
122
119
37
107
86
122
93
164
139
87
110
106
55
169
79
111
58
169
105
119
144
139
118
55
138
84
162
126
79
104
56
138
105
97
122
134
77
131
126
105
92
88
105
98
131
74
92
145
122
68
122
134
104
110
105
126
169
104
146
86
117
99
93
75
126
92
55
55
122
93
104
108
144
178
86
148
83
109
145
122
77
92
84
79
126
55
99
69
83
109
37
169
122
146
87
112
131
117
105
180
148
67
110
37
116
126
178
171
121
69
107
138
91
122
55
109
109
56
139
126
79
122
92
122
122
69
58
79
178
104
152
126
55
55
122
97
144
92
122
37
135
105
93
122
127
92
169
134
104
119
165
139
99
126
126
169
100
75
140
93
37
74
146
138
91
93
86
126
126
126
55
58
88
126
110
86
148
90
139
105
128
92
144
103
58
84
126
55
104
37
128
122
144
123
104
169
122
164
110
69
110
118
152
79
105
77
110
122
110
144
178
120
124
126
110
58
146
122
37
122
126
168
56
140
152
165
148
167
37
150
99
58
110
138
67
67
128
123
119
127
37
67
77
77
86
110
92
56
55
110
110
163
105
123
122
83
110
103
91
61
55
127
107
107
146
131
121
128
97
130
58
92
123
142
138
92
122
104
96
131
119
152
126
103
122
37
55
93
107
109
103
134
67
92
138
180
123
139
138
77
56
110
131
178
130
126
114
93
127
91
55
92
126
105
126
92
122
139
83
55
98
124
144
141
135
97
68
145
121
131
123
107
146
111
136
148
75
137
74
99
169
110
165
144
178
58
139
98
144
126
169
75
101
126
104
104
122
107
138
55
138
158
127
119
37
117
84
104
75
77
67
55
110
79
138
55
67
110
108
56
126
92
83
119
103
119
74
55
138
105
103
58
68
56
55
67
122
144
144
171
110
109
98
139
138
92
146
93
92
134
103
37
104
55
99
162
67
93
127
78
132
138
67
105
105
55
74
99
130
178
163
92
67
128
109
89
110
55
86
77
103
91
105
67
110
111
138
55
178
37
93
103
158
122
138
92
126
118
92
110
126
69
126
75
148
109
111
92
124
122
119
111
105
111
93
119
56
146
105
92
55
132
126
111
99
130
126
147
92
132
144
163
55
55
93
93
58
93
69
169
148
56
124
56
67
56
138
136
56
104
104
162
92
178
92
55
146
92
92
122
178
110
55
56
102
67
58
37
56
80
104
37
126
93
92
77
125
126
55
69
56
95
69
91
56
148
55
69
122
122
122
138
127
91
120
123
89
152
92
110
104
162
110
68
69
92
124
114
78
138
97
58
55
107
126
123
55
126
93
124
97
56
110
110
130
104
111
139
126
134
104
144
92
127
127
79
122
68
122
67
92
86
105
77
102
67
119
55
67
146
178
98
178
114
122
123
126
56
114
103
55
55
92
165
37
98
124
105
74
55
98
89
146
91
74
144
92
55
126
123
123
128
126
92
93
139
86
168
102
89
137
144
132
69
92
110
69
160
104
79
56
111
152
138
77
91
152
69
55
37
79
83
127
105
131
93
138
104
111
99
67
162
152
55
58
122
141
127
100
158
104
123
92
178
139
67
119
110
105
153
126
93
105
178
55
77
142
69
114
77
168
178
69
104
68
110
108
111
126
134
138
92
79
105
140
105
122
89
55
101
96
107
88
122
145
122
126
105
37
75
121
102
132
135
144
98
144
127
151
146
56
100
89
152
134
138
99
84
55
127
138
139
126
149
162
126
139
79
92
91
126
118
143
37
122
126
58
111
55
123
122
104
110
101
127
77
92
141
171
122
55
178
105
58
158
103
137
101
126
86
146
119
123
108
95
93
146
114
128
104
105
124
68
92
55
99
148
148
55
151
137
66
109
107
128
93
84
167
128
109
114
77
79
79
93
110
37
169
93
56
138
139
126
105
92
138
58
122
113
67
110
37
67
56
142
55
84
86
122
86
58
152
138
99
122
55
146
107
144
37
91
138
123
93
171
127
55
148
55
69
67
93
104
93
91
103
139
93
101
144
103
105
87
55
134
56
99
127
103
169
138
131
92
105
107
79
122
126
137
146
110
91
55
92
92
37
75
132
84
138
97
86
87
122
109
109
110
119
37
93
122
86
37
122
146
139
127
92
115
56
67
67
134
69
122
122
122
157
103
123
77
110
122
140
92
128
148
96
120
55
126
74
92
58
162
74
92
110
92
152
141
124
146
138
86
77
98
67
92
79
74
92
75
138
89
139
77
122
74
120
105
93
69
74
182
109
100
129
86
105
127
146
104
105
152
115
89
92
79
56
58
74
92
92
86
79
127
122
126
67
149
67
67
110
178
178
180
92
103
125
92
152
149
56
109
56
69
77
74
55
55
126
79
67
69
67
107
79
135
79
77
67
178
93
126
122
109
102
128
126
134
105
139
84
178
98
122
127
127
92
56
111
111
92
122
128
122
136
56
126
144
92
99
69
123
139
67
55
105
92
110
122
69
140
128
91
131
104
84
105
146
122
163
67
96
77
92
124
105
92
138
112
168
110
55
93
110
146
91
61
37
93
105
110
98
92
81
78
146
134
69
69
92
119
140
103
74
169
122
146
92
100
144
105
128
124
114
92
67
68
99
110
68
93
92
144
139
92
139
86
105
94
56
67
149
92
69
126
55
138
55
138
55
114
95
110
92
92
105
124
171
87
169
55
130
37
79
84
178
105
126
67
86
140
93
74
67
74
122
111
139
105
117
138
100
105
110
92
67
148
68
92
122
55
67
93
86
110
114
148
104
37
37
106
103
123
92
144
152
56
105
99
144
114
104
91
92
152
122
109
110
105
91
130
68
130
138
58
130
107
171
81
122
99
169
146
56
148
124
93
93
55
81
76
92
126
114
128
92
99
55
168
126
128
92
55
56
111
120
92
37
118
55
110
86
128
162
178
128
126
144
91
92
67
138
137
37
105
122
58
92
105
92
110
126
104
67
58
110
55
126
77
67
146
92
84
77
178
92
92
122
138
136
93
105
147
146
108
86
67
178
110
119
55
64
55
127
67
79
98
110
126
139
58
117
169
109
92
69
75
110
123
152
92
138
104
78
169
110
118
86
92
126
136
67
132
78
67
109
67
127
131
126
79
55
127
58
105
126
144
117
122
108
93
134
143
107
55
79
67
118
105
122
122
126
122
56
109
110
163
118
86
122
144
104
104
98
105
148
152
122
55
84
110
171
111
132
122
178
131
136
56
131
118
178
68
188
137
97
92
108
67
138
105
165
73
128
67
168
68
117
37
105
93
140
77
104
92
107
67
126
144
148
138
111
84
55
168
58
167
67
110
146
105
58
92
37
104
105
138
128
137
105
126
92
99
100
128
163
75
67
128
134
92
138
134
144
149
109
92
110
138
105
55
122
92
105
139
56
79
93
56
37
92
159
37
138
104
138
93
136
91
114
37
77
126
148
122
77
115
139
37
55
93
119
104
171
136
67
37
182
92
99
169
122
139
106
67
99
89
122
127
132
133
168
107
169
148
106
79
109
98
91
180
56
122
152
121
132
138
163
110
89
109
106
67
68
169
108
152
67
104
136
92
75
137
111
127
102
140
81
93
56
163
128
131
139
123
134
105
98
112
139
91
126
100
120
67
74
105
109
75
126
117
126
139
126
69
110
103
127
110
110
69
105
92
56
93
93
37
140
79
92
147
58
169
75
37
105
126
37
67
139
86
79
127
104
109
115
37
140
139
77
79
37
117
111
139
171
105
104
110
55
55
92
138
138
110
126
107
77
105
37
100
126
110
126
122
93
135
137
86
110
134
112
110
144
171
56
55
105
117
136
91
92
114
138
107
58
104
83
105
178
122
93
140
148
148
83
126
152
74
107
110
109
178
128
128
126
110
55
55
104
138
128
92
103
152
169
79
106
169
99
178
92
122
117
139
111
110
126
169
146
58
106
81
100
139
86
140
136
131
58
126
55
128
55
105
74
128
109
92
139
55
55
105
124
122
162
89
142
109
68
55
93
55
56
146
138
138
122
69
130
126
139
134
105
104
119
92
92
113
92
94
110
105
55
79
116
122
128
100
122
163
163
110
105
91
97
100
148
92
105
73
86
37
131
55
112
134
134
126
132
105
144
110
83
67
55
110
106
37
86
92
131
104
178
69
144
144
121
107
123
122
109
168
128
109
93
134
89
110
105
124
144
86
104
93
72
146
152
105
110
124
78
99
92
91
178
178
131
134
152
68
122
121
120
100
109
79
37
37
86
122
75
146
107
138
109
86
126
144
110
119
100
118
108
104
127
104
104
109
92
55
119
104
127
83
109
178
92
92
105
92
68
122
138
178
79
55
55
105
55
58
91
182
178
130
106
105
111
110
107
126
105
152
55
77
104
111
124
93
92
116
104
77
180
116
55
105
131
68
127
86
105
146
105
98
171
55
114
86
77
92
104
110
104
128
110
77
92
110
122
119
55
162
111
102
55
37
128
138
126
109
105
126
109
178
110
75
103
109
97
107
110
123
58
80
88
128
126
110
107
99
144
126
152
178
138
139
139
110
122
104
55
117
97
138
91
107
145
131
67
140
37
55
92
93
55
55
105
91
169
146
105
97
109
97
86
81
126
104
55
92
140
55
56
92
163
104
67
152
77
105
104
105
131
138
144
112
92
110
105
104
152
126
123
122
55
74
37
67
123
79
138
105
74
93
105
37
122
182
122
105
109
55
110
139
131
93
126
79
139
91
122
164
137
105
158
126
67
122
146
58
110
115
87
108
134
91
93
67
180
105
137
171
127
110
92
122
92
92
178
92
91
111
92
124
144
138
126
98
138
55
169
77
92
110
139
130
92
152
137
111
123
144
110
58
142
92
150
138
55
110
86
88
169
77
77
55
73
122
86
110
107
139
91
91
55
144
114
104
91
119
139
171
106
107
55
127
67
110
67
55
92
122
105
86
119
135
123
122
138
126
128
144
81
91
112
67
56
97
138
77
129
74
112
127
98
110
100
123
55
134
122
123
92
180
100
55
93
98
144
104
105
169
110
96
93
91
138
93
92
124
102
92
171
79
110
125
128
152
76
162
37
109
92
140
107
104
140
127
93
110
74
119
134
79
93
93
106
123
136
56
122
130
138
138
92
110
55
139
127
101
93
93
113
122
138
138
144
55
131
88
112
97
165
123
122
97
126
122
55
92
122
122
91
92
56
86
132
169
75
130
144
91
108
79
120
136
131
92
69
55
178
110
178
138
103
109
145
132
139
55
99
79
144
98
105
92
110
139
158
122
109
110
162
97
55
104
110
125
87
55
132
158
99
147
107
91
83
138
105
55
124
122
58
83
165
104
69
134
110
69
128
104
68
122
104
144
83
122
111
130
128
68
105
55
55
146
124
114
67
101
95
98
67
138
55
110
110
126
56
110
104
123
167
37
55
152
98
111
139
138
104
74
79
108
86
69
89
55
128
106
107
92
92
92
99
109
138
126
126
110
103
120
124
92
84
109
129
75
93
55
138
92
162
102
134
110
104
134
79
100
55
124
92
146
92
107
126
78
92
67
92
101
93
93
92
37
110
178
55
146
121
165
98
122
74
103
144
104
131
128
93
105
83
67
130
92
104
81
69
55
92
107
138
101
128
110
55
86
137
178
77
89
93
109
104
91
120
122
105
104
163
110
143
56
92
138
55
138
115
118
74
122
138
55
92
134
124
83
132
58
75
111
146
99
123
142
138
58
37
92
126
126
92
126
86
148
92
67
126
107
110
144
110
86
56
128
77
124
122
67
182
122
58
55
87
101
91
93
99
168
151
67
58
67
81
93
130
75
112
119
105
126
125
144
131
152
101
67
139
92
140
134
99
129
138
148
122
122
110
119
169
91
91
74
122
122
105
108
128
110
37
144
114
138
140
95
91
122
58
55
152
55
102
126
102
112
74
136
126
55
109
126
102
132
75
178
109
92
69
178
92
111
126
55
102
73
91
95
93
109
68
108
132
178
84
147
37
119
93
136
103
99
109
37
105
126
58
140
110
55
107
92
77
55
55
138
178
122
110
104
144
171
58
92
93
92
110
93
131
55
127
110
138
178
55
104
139
110
92
115
122
130
139
55
138
110
55
92
103
67
105
103
139
138
99
55
56
139
104
68
123
109
144
56
110
92
110
104
138
119
37
139
105
93
130
130
144
122
126
92
56
115
110
110
105
37
108
103
122
178
92
92
67
144
55
92
132
110
124
122
137
110
97
118
104
110
93
68
144
99
55
152
171
84
122
56
146
104
122
178
97
123
67
114
91
37
55
130
105
130
112
127
79
122
126
122
58
37
83
55
122
103
119
79
110
122
122
58
92
37
146
107
132
126
146
93
100
110
110
81
110
126
106
169
86
178
56
92
138
104
92
92
146
68
169
135
55
140
55
74
162
158
99
132
138
126
88
126
122
124
105
123
84
97
122
108
79
105
131
178
130
92
118
178
108
126
106
122
119
124
120
123
104
168
74
178
93
142
182
120
55
148
104
134
111
122
139
92
55
93
56
83
148
130
86
124
122
56
121
72
178
89
126
139
83
140
110
104
104
56
99
134
99
149
128
102
138
122
139
123
86
127
74
55
105
91
167
104
55
37
104
132
178
74
105
97
83
126
67
131
148
55
178
122
107
118
107
138
137
110
105
126
142
108
55
102
79
138
92
119
110
127
58
110
138
92
104
127
128
152
139
131
75
142
67
139
110
152
105
67
99
178
126
37
127
87
178
109
93
122
93
119
121
92
56
110
91
123
140
92
114
92
134
91
58
91
123
119
146
79
56
120
104
105
93
88
122
127
110
55
124
114
68
132
77
148
110
126
91
91
128
160
111
171
105
162
111
152
134
139
56
146
55
168
118
114
80
56
69
127
58
92
91
55
121
92
92
141
37
138
126
178
135
98
107
134
130
146
128
130
37
99
128
135
123
144
58
37
138
86
122
55
165
152
92
55
146
126
105
138
126
103
68
138
123
67
107
151
58
138
134
92
139
178
105
146
138
77
58
123
104
108
93
126
92
79
162
105
126
93
77
92
119
92
97
92
119
92
78
169
81
92
127
37
58
83
140
139
105
55
99
86
136
110
126
92
101
92
93
146
55
77
105
122
107
110
55
169
97
109
128
92
110
139
127
110
120
169
92
97
55
97
140
67
55
55
86
55
97
74
92
55
138
69
146
139
138
110
128
127
67
37
122
93
109
37
58
69
92
55
145
92
56
93
122
104
100
93
126
79
93
132
128
171
37
105
139
144
136
124
122
58
105
105
127
93
55
123
67
69
105
105
93
58
160
104
126
74
92
89
104
149
126
77
103
37
148
119
146
127
178
138
125
97
55
111
120
178
55
144
135
119
92
146
122
99
110
105
56
91
69
126
128
140
58
56
152
79
130
67
112
86
55
135
67
122
67
105
126
93
58
159
169
178
147
122
75
158
92
110
178
67
138
92
127
56
55
139
79
124
105
127
145
179
58
142
105
55
122
130
79
99
79
94
103
126
127
136
68
144
139
122
123
99
55
93
178
138
91
110
110
77
55
138
69
92
74
144
74
104
112
105
69
104
83
127
37
37
114
144
104
73
75
138
160
144
130
108
96
37
112
128
109
92
105
128
111
87
123
126
92
101
114
58
97
83
135
124
102
74
110
92
77
110
160
144
92
77
140
126
168
93
93
56
112
85
96
94
92
112
105
37
105
125
78
79
132
105
37
169
55
68
93
86
164
122
139
122
126
55
37
55
151
122
37
122
81
79
91
67
144
171
105
69
107
86
144
37
91
105
138
99
106
158
162
138
77
83
126
105
106
55
83
99
110
109
75
97
95
160
95
105
122
93
55
107
138
86
37
92
119
103
171
104
89
91
110
115
127
102
171
117
77
100
177
55
79
67
105
122
93
93
124
138
105
144
123
98
108
108
99
56
79
140
122
144
92
104
119
101
77
105
144
111
86
55
112
126
104
56
37
122
122
111
73
114
110
123
84
123
91
138
75
69
163
56
92
146
114
78
103
67
103
128
126
83
92
56
178
111
125
119
56
96
58
97
134
56
124
74
86
112
119
163
144
97
55
67
99
69
109
103
94
134
128
55
126
58
89
123
110
139
109
129
56
92
126
77
178
37
164
37
96
37
92
132
88
99
122
118
124
69
79
80
68
55
126
105
152
55
126
104
134
58
101
67
117
140
138
105
56
92
118
138
86
92
116
169
37
103
141
122
104
109
178
58
67
55
91
67
92
182
119
68
119
92
135
105
131
165
105
110
67
140
79
120
169
144
124
74
119
138
104
93
99
119
92
74
128
126
92
37
146
127
122
81
178
152
37
151
55
92
144
169
119
91
134
55
131
124
178
109
137
58
105
108
131
55
56
75
116
126
67
55
55
74
126
93
101
132
99
139
109
152
138
79
55
178
93
126
135
126
37
77
122
151
120
56
130
75
171
74
124
123
134
110
127
114
128
128
103
89
55
169
69
140
118
104
126
92
107
117
126
37
67
110
79
112
91
140
56
74
126
91
104
93
109
68
56
92
99
122
55
103
152
112
158
93
110
140
77
92
126
139
106
58
77
119
58
55
110
86
99
69
146
114
68
104
138
122
91
109
134
130
142
110
77
92
139
98
111
126
104
92
56
109
110
91
122
110
126
99
138
126
152
86
86
83
55
111
83
122
77
163
105
37
78
67
55
111
99
114
178
93
98
114
91
92
138
37
92
56
92
107
130
110
138
67
164
122
124
92
152
95
114
55
110
122
146
122
122
119
139
171
56
68
55
104
140
149
110
138
55
122
69
37
93
69
119
104
130
111
93
92
83
139
72
100
55
78
104
152
107
69
129
78
123
110
114
110
92
67
56
109
180
107
92
105
122
92
112
105
127
138
138
128
67
74
126
126
110
118
126
109
118
74
178
178
67
139
169
93
122
178
92
127
93
37
56
99
117
97
178
107
171
69
135
104
104
55
141
112
110
148
123
107
79
98
79
58
92
146
108
68
91
92
58
107
178
103
110
130
74
135
107
69
74
124
110
92
37
177
86
148
58
92
67
93
138
122
102
104
168
89
108
79
122
132
126
144
163
104
55
122
146
37
144
158
152
126
98
89
56
104
129
109
110
105
105
111
131
105
83
146
86
105
92
124
126
138
146
110
138
128
92
134
99
105
87
77
111
67
93
104
80
67
37
132
104
128
140
91
146
83
93
128
134
126
118
107
101
138
144
91
105
69
140
144
74
112
109
180
105
105
67
136
134
99
111
104
119
110
104
88
110
95
111
37
148
131
105
148
138
56
140
55
139
77
152
122
123
181
141
123
105
178
126
89
104
75
68
182
128
55
122
128
160
75
109
58
67
58
144
127
171
97
55
104
138
138
124
103
144
55
107
128
119
144
178
110
86
124
55
37
104
72
114
92
93
140
138
139
105
150
144
126
69
152
77
169
92
110
55
139
126
104
171
142
122
103
93
127
92
79
92
163
75
97
138
100
126
93
37
139
74
126
121
105
56
139
104
144
91
131
108
109
80
139
114
139
139
55
68
109
110
67
69
98
127
124
91
144
92
134
83
74
152
74
169
126
105
55
103
122
126
93
93
67
139
109
104
58
96
139
56
196
89
88
74
55
138
138
142
75
112
178
144
132
139
93
93
117
151
104
169
169
122
147
178
55
124
129
122
92
102
55
111
128
79
120
92
92
104
91
92
105
131
93
134
86
98
86
134
74
100
140
92
103
104
92
86
91
83
110
144
130
144
127
103
152
163
171
152
146
97
92
163
126
119
109
55
55
171
102
86
56
169
122
126
134
153
37
127
109
67
107
92
68
111
103
126
122
122
91
79
126
84
169
178
138
127
119
122
139
99
110
74
56
160
122
111
126
91
122
118
83
55
134
122
67
58
56
128
103
138
107
111
68
148
139
92
108
56
129
144
55
83
130
55
124
105
55
122
119
58
109
74
104
97
110
152
104
162
55
146
37
119
199
146
163
104
69
75
134
93
86
92
139
77
67
144
79
92
84
55
142
119
93
67
108
110
104
84
79
138
124
115
105
122
139
104
37
89
110
126
67
111
122
37
92
55
124
56
97
69
112
74
140
105
74
169
110
77
86
124
126
105
84
105
92
104
138
139
104
138
105
104
123
144
99
110
105
146
92
93
69
92
127
92
93
119
158
93
169
105
127
168
92
56
144
104
123
119
126
139
84
93
130
99
67
55
126
129
91
104
56
91
92
95
146
92
152
171
58
104
83
111
74
178
55
163
74
55
138
109
138
105
99
152
153
123
151
110
110
138
122
105
105
104
104
56
67
91
109
104
123
122
110
92
67
102
123
104
107
108
55
91
55
92
103
108
103
122
110
118
92
92
68
92
55
171
122
126
56
146
104
144
119
122
56
119
108
163
119
119
93
101
79
178
178
112
79
92
97
122
178
74
67
105
91
107
109
149
55
105
127
128
137
55
84
169
102
104
74
124
138
144
92
105
79
158
104
91
92
178
129
56
162
127
86
86
98
123
123
105
58
168
56
164
110
138
67
114
104
189
108
109
138
105
146
138
92
56
67
104
139
139
129
124
55
112
146
127
138
144
37
37
67
92
145
55
55
58
110
123
154
139
69
162
92
103
169
163
77
55
130
95
138
127
122
144
92
126
117
56
101
104
55
138
92
105
154
139
156
139
144
104
56
91
148
144
58
93
139
94
86
122
144
92
139
105
111
120
56
148
126
134
123
100
112
92
152
99
127
127
122
93
163
91
110
87
105
111
83
86
169
110
124
108
134
56
111
69
124
58
138
92
91
105
69
37
163
138
107
138
152
79
134
181
122
127
138
56
99
122
58
104
104
110
93
92
109
115
138
58
85
134
105
178
74
156
140
124
128
130
118
163
105
55
105
139
138
68
84
75
144
104
84
165
118
128
126
92
92
110
122
128
114
127
139
104
121
110
79
122
127
91
125
37
55
89
117
140
107
167
67
110
122
146
149
83
168
58
126
122
165
160
136
93
122
110
121
182
67
92
135
146
126
132
67
92
110
92
68
132
92
115
100
37
126
86
114
93
139
119
55
93
56
122
67
93
67
135
127
93
178
139
56
86
67
110
92
107
91
104
152
169
93
124
58
98
167
111
92
92
105
134
55
69
109
148
92
56
126
126
92
105
158
83
126
75
111
169
74
152
124
144
97
144
119
92
128
138
188
84
122
67
86
110
148
55
122
91
178
126
110
139
138
97
169
67
100
92
117
140
79
104
93
92
92
86
128
56
67
55
168
107
146
92
142
93
55
105
114
128
138
104
92
150
92
56
58
97
119
110
137
67
92
119
88
113
84
74
156
138
132
122
58
56
111
108
37
78
104
37
105
122
163
68
103
93
69
114
105
105
92
114
122
56
91
126
178
112
74
79
92
79
119
67
144
92
79
56
92
100
69
69
92
180
126
74
84
105
139
122
105
140
120
83
93
55
55
110
98
138
152
140
69
122
138
74
169
56
72
123
122
67
74
111
92
105
126
140
125
144
89
89
123
37
123
79
119
101
55
68
144
105
122
149
136
77
37
110
158
126
119
104
103
126
103
58
110
97
123
55
92
148
114
139
110
121
120
104
111
55
89
67
139
138
98
126
56
55
55
138
152
79
97
123
139
58
180
119
79
119
91
124
69
138
110
92
128
111
92
67
119
86
91
77
178
178
123
93
152
146
111
107
93
122
104
92
101
92
106
179
146
55
126
109
122
104
91
134
127
99
164
105
107
107
105
140
58
100
92
119
92
120
110
110
79
139
122
132
55
120
58
99
92
124
133
92
146
104
105
75
152
111
56
128
58
93
126
110
93
122
104
119
84
103
99
92
138
139
92
171
114
104
86
127
100
126
93
92
162
104
139
126
123
148
110
110
123
142
37
86
110
122
110
139
110
122
122
110
122
110
105
92
128
104
119
92
138
81
77
84
151
100
110
78
112
105
67
104
130
178
77
74
86
92
85
122
55
81
69
84
105
136
103
37
123
163
55
92
120
110
110
122
122
105
68
55
67
69
104
86
93
104
105
139
67
67
104
110
104
178
86
138
87
124
127
83
131
103
105
126
154
55
58
122
104
107
75
139
141
68
122
152
91
126
171
37
131
37
122
126
110
138
86
79
86
145
92
83
128
126
56
56
92
58
104
92
55
77
108
135
104
98
105
93
119
83
128
105
137
83
91
74
127
118
178
83
163
55
126
104
67
92
56
86
92
103
110
144
76
169
67
128
107
92
104
128
92
126
167
140
104
144
55
98
69
55
127
126
138
139
67
56
92
92
109
119
144
84
92
101
169
111
92
119
104
55
104
93
67
69
56
101
102
144
126
69
97
168
104
91
134
92
126
77
146
152
55
131
167
146
109
74
126
104
91
127
107
126
146
92
104
80
120
168
128
112
180
55
105
93
55
119
80
114
111
56
122
104
75
122
109
80
56
91
114
130
95
37
58
55
95
128
122
74
138
178
105
102
84
61
69
148
89
92
67
138
138
123
97
124
105
136
55
103
37
180
139
127
92
110
171
79
107
146
102
126
86
146
139
127
56
144
69
160
92
111
105
111
105
104
122
104
127
120
136
140
105
139
56
74
67
76
92
119
102
126
56
107
91
67
113
122
140
123
107
111
138
127
67
93
105
138
110
124
104
37
103
112
110
74
122
148
101
163
75
132
146
146
58
75
104
103
140
98
148
87
112
56
140
95
77
139
169
118
67
105
67
92
67
110
188
117
37
136
126
139
105
138
119
55
127
110
58
99
102
107
110
152
68
105
55
126
56
92
110
106
99
110
138
138
138
122
67
104
105
104
122
92
69
126
122
92
91
95
93
152
67
77
148
110
144
126
92
91
86
92
109
104
105
164
158
56
158
67
168
126
111
92
126
37
79
139
169
105
103
110
67
138
75
138
119
122
171
55
143
67
106
138
144
128
67
119
120
104
69
97
56
119
92
110
117
97
122
109
138
110
55
58
69
37
99
104
94
122
126
93
144
67
144
178
67
103
122
67
138
56
114
93
69
92
69
55
111
105
140
128
74
93
37
37
93
56
139
105
92
146
137
37
92
93
112
78
93
128
68
144
83
128
110
109
138
103
110
121
86
57
136
92
58
103
104
69
75
86
127
158
122
122
148
178
138
91
122
119
99
130
122
55
105
138
134
69
138
104
134
105
101
153
114
126
55
89
110
86
121
126
144
92
92
108
127
58
74
73
104
67
91
37
112
122
75
171
199
131
104
131
116
122
134
114
55
136
110
107
93
104
55
144
93
122
144
92
122
89
105
122
139
58
122
67
130
138
169
128
105
105
104
144
67
122
105
92
86
123
124
110
69
178
118
126
104
180
118
56
123
92
56
139
124
55
138
104
139
103
123
122
138
139
105
55
122
58
126
178
104
101
107
97
124
73
56
126
55
92
139
138
86
124
107
126
106
128
86
110
56
93
75
146
79
99
152
91
110
144
110
84
122
86
110
126
92
112
100
55
92
146
67
79
109
69
97
107
92
163
122
124
96
92
93
103
124
148
101
105
99
104
110
83
122
58
110
122
103
58
162
116
158
79
75
55
117
100
156
119
55
111
126
142
128
74
124
100
93
126
152
92
105
58
87
171
67
130
92
104
129
101
67
55
67
55
127
115
119
37
118
68
92
100
104
58
118
136
127
137
73
123
103
151
117
138
114
126
178
58
75
55
139
55
131
102
128
104
139
128
75
126
107
89
108
79
141
67
165
134
84
56
83
104
138
56
110
105
105
119
89
104
91
97
134
92
146
89
134
139
92
84
37
138
165
99
152
100
110
55
93
148
152
127
128
55
97
110
67
126
178
86
56
69
67
58
119
109
83
139
132
152
79
77
124
85
69
127
87
92
109
91
113
74
89
138
67
139
67
67
136
67
127
55
122
124
134
77
79
178
67
92
92
104
119
92
67
83
110
104
92
109
134
129
109
152
55
110
128
67
101
111
79
124
128
126
110
128
55
127
160
134
163
92
122
107
178
139
122
124
67
58
67
107
160
98
56
87
104
138
103
103
127
92
104
101
123
138
126
109
79
86
79
134
114
67
148
107
92
83
169
110
162
126
58
130
105
138
105
163
126
123
86
144
103
111
55
123
121
110
123
92
78
55
122
92
114
99
105
122
104
119
93
124
138
104
103
126
104
164
55
76
97
69
58
105
58
139
114
37
105
110
87
146
98
97
119
128
180
127
81
92
68
75
139
124
80
162
111
122
138
136
128
67
105
103
122
128
134
122
144
104
126
178
92
56
130
122
122
110
122
55
126
136
140
140
86
105
93
122
69
86
109
58
67
122
138
119
178
134
117
100
92
137
111
89
128
69
96
55
84
104
105
67
67
112
122
69
131
123
105
104
152
169
115
83
123
55
127
101
86
138
136
126
92
122
199
146
127
146
58
158
122
112
92
114
104
104
168
146
109
91
152
130
92
92
125
134
56
91
98
56
152
126
99
140
178
57
109
101
122
146
169
105
110
139
104
55
122
152
74
86
105
119
149
100
56
110
105
109
77
77
138
105
105
139
119
110
137
92
139
169
55
111
130
119
137
104
132
104
163
67
55
122
146
105
122
123
138
119
69
67
92
146
128
106
114
58
144
122
151
37
134
167
110
104
134
55
58
67
109
103
126
107
136
55
102
139
103
92
69
126
99
119
180
110
100
110
126
77
55
113
126
126
58
126
105
99
126
104
92
77
112
61
152
92
55
146
171
86
55
104
134
134
69
67
120
110
171
139
67
111
93
120
169
126
122
99
112
75
100
58
128
99
106
178
119
58
55
69
37
58
120
94
55
84
55
110
119
91
122
105
107
58
126
91
124
109
108
86
178
146
93
126
37
139
162
148
138
100
55
110
140
55
178
105
104
122
104
178
127
128
104
92
69
144
56
160
37
149
178
98
146
152
126
104
148
92
79
55
104
91
111
139
74
158
130
111
131
138
138
55
110
118
139
80
104
164
92
93
92
58
126
104
101
86
69
95
99
146
86
165
171
158
109
56
168
122
79
127
141
127
86
103
127
55
104
91
37
126
123
126
123
110
122
117
139
127
58
109
122
180
74
126
130
105
105
140
124
104
122
79
119
139
92
104
89
109
108
55
122
138
103
160
122
126
56
139
102
91
138
56
152
92
104
110
97
55
152
138
113
110
165
136
55
80
92
118
126
110
175
140
55
126
80
56
92
122
117
104
128
92
55
58
138
109
107
139
104
144
144
105
77
55
105
122
140
56
93
122
67
104
124
122
67
104
138
105
92
124
55
92
83
149
93
92
124
119
67
58
97
93
108
109
146
105
127
55
152
75
67
86
110
148
58
37
122
107
92
122
86
118
55
140
56
78
146
69
98
107
138
126
69
95
146
107
69
130
169
134
86
74
75
86
110
58
83
99
119
104
119
105
88
167
169
148
97
178
92
126
122
109
138
140
120
128
160
95
126
178
144
138
89
128
77
55
123
152
99
103
127
124
104
58
140
104
91
152
92
160
146
37
67
37
134
55
130
130
92
37
67
126
122
56
178
75
92
98
83
67
74
105
140
140
112
110
55
122
103
94
144
92
112
135
168
199
55
138
136
104
114
169
105
105
146
180
138
110
67
139
122
122
105
124
113
101
67
105
58
58
122
109
105
146
92
168
95
105
102
86
126
86
68
105
105
178
122
101
89
98
37
103
140
122
92
127
105
110
55
75
75
104
138
140
126
127
144
122
89
91
104
37
37
110
120
104
92
105
74
67
125
140
171
105
97
55
58
101
126
122
110
92
110
67
158
178
110
146
148
110
107
123
138
55
139
121
130
55
74
140
109
56
105
130
111
119
55
124
122
140
112
127
119
109
128
126
67
124
105
144
77
109
144
105
152
138
68
138
126
84
122
105
99
130
148
110
55
134
130
142
56
105
138
127
105
107
108
74
110
138
56
69
110
86
92
68
104
111
83
144
92
171
136
121
93
122
136
123
126
92
128
171
92
178
111
110
92
140
128
105
92
122
138
109
110
139
139
178
77
92
92
86
112
55
58
148
138
117
125
169
110
123
109
189
110
79
105
121
127
55
119
118
109
93
140
114
117
122
119
58
97
56
144
67
109
138
122
93
86
127
134
58
164
98
91
138
169
77
74
67
139
55
103
126
75
117
123
138
171
109
37
104
77
128
92
152
105
73
111
83
55
138
110
126
152
74
140
55
37
122
107
127
37
77
122
189
138
128
84
122
118
122
158
58
97
110
127
111
95
104
122
120
77
76
101
119
110
130
37
67
88
122
55
123
138
146
138
84
110
126
92
67
118
91
99
144
55
126
164
180
37
158
55
122
171
122
123
144
56
134
162
122
105
86
88
110
122
109
104
139
101
122
105
138
138
111
96
129
109
55
136
95
104
169
110
148
105
163
178
37
88
180
180
111
100
92
145
75
98
139
92
92
126
56
55
98
99
92
56
144
178
138
123
93
109
129
148
109
105
92
86
56
67
146
75
67
146
93
140
92
144
122
103
137
55
55
75
149
132
86
110
121
55
152
122
140
67
111
91
146
92
140
56
126
128
138
112
55
123
127
138
105
109
118
103
109
149
163
104
103
122
93
122
92
55
132
55
68
138
109
144
178
139
121
84
92
138
109
37
89
55
169
135
138
107
93
58
99
122
122
127
104
58
93
122
142
56
107
58
97
138
110
92
92
55
144
104
74
138
108
110
55
84
178
58
119
146
69
56
56
86
169
122
110
122
118
91
122
138
91
99
144
91
55
128
127
56
110
92
122
104
56
126
56
136
77
91
97
91
124
99
104
138
81
110
86
55
126
110
79
92
109
111
126
110
127
92
93
127
144
105
105
92
69
92
104
117
37
93
92
168
92
74
93
144
88
99
55
89
178
92
139
104
169
110
67
92
97
104
58
55
56
111
122
55
108
55
69
106
69
115
110
79
92
144
83
139
178
126
55
105
152
122
146
140
55
105
88
83
77
37
101
138
110
93
105
86
119
122
122
69
125
152
122
105
68
110
98
134
142
80
56
164
97
97
55
97
114
84
110
165
99
152
37
55
64
96
111
98
67
110
37
139
134
68
105
128
97
140
118
83
122
99
122
126
144
69
168
128
136
122
110
108
122
123
74
110
104
144
69
93
114
93
158
110
122
178
138
134
37
92
97
126
138
83
110
86
98
128
93
79
144
77
127
80
110
122
126
86
105
86
126
162
103
110
123
134
135
152
56
122
99
56
126
139
114
128
92
110
109
74
67
79
92
92
103
169
129
146
109
93
118
102
105
75
91
105
104
131
67
171
118
93
123
55
107
104
106
120
119
146
104
112
124
138
127
99
55
134
104
92
178
93
95
74
126
178
37
98
93
127
152
110
139
111
138
92
110
188
139
138
99
92
69
104
75
56
92
84
178
105
122
171
122
37
93
127
122
86
105
110
122
105
119
139
168
164
112
105
123
146
124
92
104
58
130
169
124
106
124
151
101
93
105
86
152
123
138
109
146
126
55
56
110
101
55
126
97
121
111
79
79
105
92
139
158
110
55
146
128
37
144
169
106
92
142
129
163
122
139
104
93
92
69
92
144
84
168
69
67
93
138
125
178
105
75
37
124
89
86
95
109
55
178
67
180
58
105
74
138
128
138
145
105
114
138
142
178
105
86
107
69
122
79
126
92
119
111
128
110
83
163
134
56
110
169
86
110
114
122
118
110
125
122
105
122
122
58
152
106
128
86
92
96
93
92
122
101
127
89
99
92
123
111
102
75
139
131
107
67
75
68
127
179
107
105
138
127
110
77
98
178
122
149
55
122
102
91
92
127
104
99
122
95
126
67
148
130
56
67
131
91
126
110
178
139
138
122
69
138
100
79
189
92
77
122
139
91
109
120
144
92
138
122
93
152
163
127
110
74
127
79
92
127
111
107
92
122
79
123
55
77
37
98
178
92
67
93
81
118
109
110
91
92
92
126
93
116
128
122
69
92
130
106
160
105
110
152
69
92
104
148
55
92
105
92
105
37
104
128
55
123
58
131
58
73
69
123
67
110
92
89
118
129
169
56
75
122
123
86
143
144
92
86
93
55
106
93
138
93
108
169
171
145
110
58
92
74
83
98
112
55
107
112
119
55
114
162
129
132
144
152
67
55
75
68
138
114
138
111
94
119
109
88
158
79
122
124
79
58
111
138
134
69
64
109
55
79
58
100
122
37
58
178
139
163
119
109
131
180
102
92
69
92
99
126
114
109
169
58
67
67
100
139
93
144
93
122
67
69
110
100
102
169
140
178
58
81
93
78
110
118
178
127
160
124
67
131
56
93
74
107
139
127
109
67
92
92
122
105
171
144
142
97
145
79
144
37
110
123
104
92
93
122
96
93
74
80
77
105
92
55
168
104
109
110
56
119
79
110
92
67
69
101
128
56
77
145
105
143
138
67
169
146
105
169
118
129
138
92
131
80
137
58
83
93
146
77
91
144
158
103
92
98
69
55
139
138
56
92
105
55
107
120
164
140
110
122
56
159
109
92
56
75
88
56
127
69
119
178
117
92
122
118
164
138
95
74
55
180
105
89
134
79
122
105
130
92
96
148
178
152
116
126
112
130
98
139
95
110
130
92
145
122
138
122
107
58
58
178
92
75
138
120
105
129
92
110
103
126
110
67
144
138
137
105
95
169
138
56
92
104
178
132
92
84
93
92
130
119
122
127
75
136
92
37
109
139
55
69
75
92
93
68
111
58
119
178
138
110
107
148
171
86
37
107
93
103
104
132
144
55
112
84
125
79
83
83
122
99
146
180
138
111
92
69
55
84
91
68
68
105
55
79
122
110
120
78
37
104
106
139
99
108
104
139
86
56
152
126
111
109
86
152
134
126
92
109
95
37
94
146
137
103
111
110
124
114
144
123
69
128
178
112
109
92
111
128
105
93
107
148
55
146
128
67
138
37
104
146
55
178
136
58
122
58
105
92
92
101
106
58
129
91
138
145
77
91
67
55
169
126
114
105
79
79
127
134
145
126
92
129
119
55
126
67
119
152
56
92
57
74
83
145
119
67
108
121
136
122
122
119
126
105
91
93
67
102
127
146
86
102
83
110
98
126
55
79
91
138
107
109
106
138
112
91
115
81
86
105
77
83
110
127
144
83
111
92
105
37
119
79
118
110
110
178
110
152
146
103
111
127
92
109
86
55
93
169
104
86
58
92
37
127
105
110
92
109
93
124
132
94
139
99
58
67
138
105
86
138
99
134
86
134
126
163
67
123
67
113
91
138
55
132
56
120
99
110
152
92
74
123
126
120
37
138
80
177
92
110
37
106
97
146
119
138
56
113
97
84
84
127
98
111
99
92
126
128
114
110
150
95
152
104
127
105
126
110
104
55
67
111
104
55
105
138
67
104
55
105
103
92
105
169
109
163
111
94
67
117
86
110
105
58
67
101
105
76
107
146
86
104
67
92
128
138
122
105
77
94
111
92
104
101
37
126
122
105
152
95
112
37
110
104
93
144
92
99
109
102
168
118
128
137
119
119
178
69
103
158
93
178
110
91
92
122
139
67
55
134
122
92
156
55
100
55
97
122
158
134
67
92
107
138
144
130
126
98
58
128
37
122
77
93
105
56
126
55
104
55
146
55
109
146
109
132
122
128
146
123
144
104
122
104
123
158
126
109
178
178
169
103
93
108
92
91
120
112
80
105
148
92
68
101
55
144
101
122
115
138
144
56
64
86
97
126
123
128
119
122
136
138
109
126
110
105
67
121
124
139
99
162
125
109
105
92
122
86
56
79
67
83
83
127
37
55
145
132
98
112
101
126
88
92
126
92
178
67
92
97
104
121
105
69
37
67
92
55
92
119
132
122
91
110
55
67
122
130
104
110
132
128
152
122
68
69
105
67
107
97
55
126
69
135
131
146
55
55
55
104
104
110
107
124
105
180
108
67
126
75
76
152
158
148
111
55
110
138
95
128
56
92
111
91
122
91
105
103
105
122
92
56
126
180
139
75
86
119
111
86
146
112
104
91
95
69
55
104
127
171
106
126
119
127
58
104
109
55
146
56
69
134
37
56
140
92
74
67
55
122
79
123
105
111
104
148
107
178
92
105
110
91
138
126
136
98
91
73
126
105
74
93
122
83
92
120
109
56
105
55
103
110
69
146
101
67
110
92
55
69
126
92
110
106
106
134
55
92
92
126
152
55
130
56
92
136
122
127
152
171
58
110
105
105
67
93
67
67
69
111
152
122
147
130
104
138
100
126
55
110
146
55
122
105
171
127
80
110
77
144
140
128
180
103
92
92
120
122
152
134
99
110
77
105
37
122
138
138
107
138
55
110
131
104
126
92
84
110
77
92
119
92
55
92
122
98
37
110
37
127
140
92
126
77
123
134
100
110
58
117
56
58
58
119
58
126
105
84
120
126
105
58
126
131
55
130
152
152
144
58
106
122
126
127
92
104
67
136
106
163
126
138
144
144
165
138
122
146
124
55
123
111
99
138
138
104
55
55
122
178
55
56
67
79
104
93
105
144
178
69
124
37
56
119
137
122
92
75
127
93
128
79
91
103
127
92
110
105
110
110
93
101
58
146
84
169
55
93
127
104
55
109
105
110
138
92
81
105
55
67
146
146
163
93
126
92
162
131
138
92
109
86
69
114
110
37
37
107
145
112
97
58
199
104
142
92
92
128
112
86
86
92
121
55
37
171
55
58
148
122
104
105
101
92
111
79
88
145
122
139
139
108
92
122
120
122
67
97
77
135
105
89
67
128
105
55
74
104
180
143
138
109
92
98
120
103
128
67
55
55
109
69
92
86
112
83
124
55
122
140
92
58
55
144
101
138
120
58
55
84
79
91
148
78
122
178
162
127
55
55
103
114
75
93
178
138
123
126
101
169
109
98
180
119
92
131
122
94
126
99
127
129
91
126
112
89
97
37
67
111
131
139
93
127
55
68
106
68
37
100
137
97
119
130
105
69
56
98
126
58
138
37
112
67
128
55
56
83
128
107
98
139
92
138
37
55
126
92
93
99
103
67
55
55
104
169
83
138
98
69
119
92
104
105
86
91
98
127
178
134
67
144
37
92
67
122
55
69
171
127
79
104
132
123
178
145
77
58
140
56
169
120
37
92
104
58
178
110
132
117
81
105
103
55
103
171
79
81
37
180
67
130
75
165
58
93
111
99
97
107
67
84
118
104
55
110
99
107
93
101
86
112
56
67
58
93
104
98
113
126
144
122
109
105
79
127
92
126
55
188
128
128
55
37
93
58
164
105
92
105
67
92
127
144
37
101
126
105
86
110
105
92
92
91
55
74
128
142
135
110
138
119
163
144
74
77
92
98
107
69
146
68
126
178
111
92
117
80
93
55
110
128
162
146
167
107
92
105
122
106
69
91
130
123
79
104
122
169
92
55
111
58
122
106
41
110
110
141
127
92
74
102
138
74
140
138
178
140
122
92
122
138
72
127
110
92
92
92
69
180
147
104
118
162
140
123
102
109
89
69
86
132
169
139
56
55
92
98
92
122
99
37
92
128
144
77
119
131
146
171
126
75
92
118
74
112
130
178
92
122
92
92
105
128
58
105
127
105
139
58
56
105
127
67
104
98
146
156
92
122
117
79
138
100
91
137
171
126
104
98
122
112
99
92
144
138
128
105
110
152
108
55
110
97
178
95
110
134
37
138
126
152
138
132
105
127
92
92
138
138
138
56
55
105
99
58
134
55
37
91
178
108
131
98
105
55
122
123
91
139
92
109
55
77
93
109
109
124
122
139
104
55
104
105
167
80
69
105
91
129
105
128
92
92
105
164
123
192
91
93
105
178
58
144
126
106
109
103
55
140
105
114
131
84
55
81
148
119
103
92
118
58
110
123
126
88
58
167
120
123
55
122
114
132
86
56
148
134
129
158
140
123
127
138
126
109
127
139
37
138
105
92
91
137
127
141
163
119
130
144
55
77
107
93
110
55
126
140
104
178
104
111
117
152
122
178
93
104
110
126
128
91
118
131
113
119
158
111
58
69
104
55
122
127
122
110
83
56
93
122
115
69
130
136
122
55
92
163
148
128
119
93
124
69
87
107
75
105
126
126
92
121
67
55
126
79
148
88
92
122
114
126
56
104
55
111
103
92
75
178
102
92
107
122
93
152
132
93
109
58
55
58
58
92
67
92
93
122
86
58
136
111
126
67
55
83
127
99
55
99
92
104
140
93
92
74
127
127
93
68
99
109
92
110
104
139
110
67
124
146
79
91
120
146
67
136
152
139
67
138
93
128
55
123
138
158
169
92
110
67
98
67
146
67
92
126
126
55
88
56
93
113
93
122
93
105
105
104
84
56
56
115
126
156
152
58
139
132
139
178
122
67
138
110
151
177
64
131
93
91
55
86
56
118
92
128
169
152
158
131
103
55
139
92
131
169
92
91
103
55
124
83
86
117
178
169
108
56
67
91
122
122
55
122
93
169
130
138
124
144
58
37
123
55
124
109
92
130
89
92
147
178
37
110
130
37
93
156
55
119
152
144
55
55
127
92
55
139
92
101
142
67
130
58
67
178
103
125
105
134
56
67
110
67
56
92
56
92
56
124
101
138
105
93
169
92
138
102
146
126
37
55
114
37
122
110
74
74
74
122
128
109
83
171
111
110
112
56
37
128
164
126
126
55
124
37
97
55
146
144
81
93
75
37
128
89
126
126
107
58
178
138
109
122
130
67
92
55
74
97
122
91
110
119
126
92
138
144
126
92
158
126
178
92
122
188
128
144
92
147
162
178
79
83
93
109
69
129
107
122
101
144
182
81
105
56
138
110
109
110
81
152
180
37
168
92
138
67
122
126
84
117
99
67
145
146
120
110
107
122
139
111
122
68
86
110
55
139
55
142
108
152
169
109
167
67
71
127
55
68
104
55
164
134
126
127
94
77
104
107
58
130
178
178
55
171
55
123
56
139
69
111
167
126
110
74
136
104
105
58
138
109
131
158
58
92
158
178
123
102
37
58
138
74
178
152
110
146
122
110
126
67
79
67
92
92
114
146
127
67
107
197
92
139
146
92
139
136
128
126
110
107
138
102
178
124
91
109
139
114
92
79
67
146
67
136
55
95
128
98
178
113
56
55
67
67
112
92
124
77
138
136
58
93
104
93
69
92
104
110
37
86
61
139
110
108
138
92
56
58
138
139
140
122
55
56
55
152
119
56
158
56
107
118
55
158
177
105
55
119
180
122
110
84
103
138
126
56
95
79
37
128
169
151
114
55
55
122
105
171
146
79
141
86
77
119
130
56
138
84
98
86
132
139
74
103
144
92
55
91
92
104
92
104
99
158
148
111
127
126
92
110
146
75
134
93
110
164
154
111
74
105
105
55
140
55
83
124
86
104
84
76
110
136
126
55
126
168
55
110
123
86
152
117
104
178
111
127
156
114
99
141
136
123
124
110
165
37
77
69
148
92
58
56
137
100
83
105
110
99
92
92
104
126
55
127
123
132
107
139
147
123
92
55
128
126
139
146
37
94
139
69
74
93
89
199
100
110
144
128
58
111
128
138
146
92
138
92
138
138
99
178
126
55
107
110
93
130
107
79
67
104
93
119
67
130
110
126
131
105
55
108
118
81
110
178
111
91
138
199
92
104
103
140
110
67
122
122
119
130
91
126
105
138
58
92
37
86
139
37
126
152
119
105
149
127
111
122
105
69
110
146
178
144
132
55
79
124
75
122
126
67
107
102
109
152
67
169
123
110
146
69
75
128
92
92
93
128
86
165
98
110
126
91
138
134
77
169
138
58
134
58
110
162
105
122
99
86
77
55
137
56
83
91
128
136
146
99
139
152
55
126
98
119
126
129
92
73
126
122
126
74
92
55
104
105
92
136
126
144
67
134
117
139
134
123
37
92
140
55
56
110
123
104
140
124
37
123
131
134
135
92
110
122
92
92
164
56
101
144
93
150
145
126
111
109
122
122
69
126
89
104
104
144
104
138
108
130
97
134
69
37
106
122
144
152
126
110
97
126
93
98
122
139
55
171
92
126
111
89
162
55
83
108
134
55
73
103
107
76
127
104
93
56
127
56
105
92
167
92
93
123
128
55
74
110
158
74
145
100
68
84
110
126
67
105
92
105
158
67
111
110
84
67
79
105
69
110
92
129
146
134
105
67
178
56
97
56
122
75
84
67
146
110
139
105
93
110
92
134
67
104
91
122
128
178
99
67
84
93
144
111
98
93
55
107
118
122
180
67
105
144
68
104
128
68
102
171
128
104
69
114
105
86
122
119
123
138
108
104
37
79
132
126
105
152
111
37
177
97
69
126
79
55
178
138
67
97
127
122
92
128
74
110
92
132
138
56
126
37
69
138
105
106
110
83
56
67
92
55
110
67
103
67
78
92
137
138
93
67
86
140
67
104
105
77
69
110
123
165
126
110
37
102
92
80
92
67
83
55
109
127
134
97
93
126
75
93
137
136
55
164
55
146
111
55
146
126
37
128
95
115
92
110
152
140
146
105
126
122
81
138
167
91
83
104
121
92
92
134
169
86
146
99
104
91
127
91
137
109
99
58
105
98
99
142
117
131
55
107
94
74
77
55
92
122
56
69
110
75
134
169
126
110
110
105
122
110
86
111
102
127
139
105
148
55
97
55
92
55
178
55
129
122
103
104
126
69
144
117
114
126
126
169
130
126
146
110
67
92
97
127
122
126
178
91
152
76
138
56
110
139
69
134
178
178
95
138
105
83
93
126
69
92
69
130
127
111
122
123
122
164
88
55
109
86
134
75
132
110
144
122
123
77
104
128
111
92
144
69
92
67
144
69
79
136
83
134
92
92
178
119
160
146
98
93
69
144
132
111
92
92
110
99
122
169
102
126
128
178
146
140
144
74
76
169
119
92
138
55
86
123
126
93
93
84
37
104
140
106
109
138
139
104
122
92
138
126
139
67
111
93
93
105
169
91
86
138
92
122
158
74
92
171
92
167
67
162
146
169
122
180
92
169
109
105
124
101
58
109
74
98
111
37
128
127
103
69
122
83
68
171
146
110
128
126
134
188
110
99
126
138
97
37
138
171
37
130
92
77
58
100
37
181
86
105
105
160
93
112
55
105
178
180
144
67
67
69
142
169
93
144
111
140
93
126
122
56
75
101
67
122
67
84
92
69
55
126
111
92
105
55
123
118
92
127
75
106
86
89
79
67
105
92
86
107
122
148
136
104
110
169
139
97
180
91
178
37
67
107
134
141
99
138
92
55
94
138
110
77
110
124
91
102
55
146
164
131
107
134
74
147
112
37
37
129
98
97
99
109
123
92
140
99
142
69
127
103
127
110
55
122
37
75
83
118
56
122
111
104
88
106
103
105
146
152
110
136
142
105
111
92
58
129
67
104
92
55
79
163
122
125
67
110
72
92
92
122
158
55
110
134
98
68
104
100
110
121
91
127
104
55
92
111
58
105
126
67
169
122
122
128
56
128
97
100
152
55
119
146
93
89
72
122
86
105
169
148
128
110
139
105
86
55
55
68
105
96
136
110
37
147
37
69
134
105
110
56
111
37
107
139
55
111
168
126
56
92
97
125
122
91
144
122
92
77
126
146
105
68
74
67
109
108
72
128
146
152
86
105
152
118
178
83
138
126
126
138
141
105
126
138
146
99
119
123
110
110
37
110
171
97
109
168
83
128
105
92
103
55
95
164
138
146
112
92
79
119
146
125
104
122
109
69
126
67
152
121
122
79
128
119
79
105
114
105
178
119
110
114
55
127
56
110
108
109
56
79
109
105
111
104
107
180
37
67
77
93
77
139
126
110
152
69
127
104
134
103
178
127
130
137
119
106
127
74
92
103
55
122
107
110
67
182
138
146
91
178
79
75
164
169
124
79
37
152
148
139
58
144
178
101
108
110
138
123
101
105
126
110
79
139
159
144
132
79
79
79
110
108
109
96
120
93
67
96
77
134
79
114
91
97
137
92
127
93
79
127
140
144
105
149
37
111
84
165
107
105
104
55
75
123
92
103
91
56
104
67
67
178
144
105
55
123
84
84
86
111
74
138
95
77
122
110
74
92
109
110
132
104
58
110
111
109
152
79
142
138
145
95
110
131
122
85
158
56
55
141
178
67
86
37
134
178
67
119
118
146
97
105
74
92
178
55
105
122
92
160
56
126
110
139
92
64
138
169
93
92
104
122
151
97
105
105
67
67
110
92
84
110
110
55
123
160
92
67
103
127
58
138
55
37
119
103
129
118
126
122
139
77
86
109
56
92
138
146
110
139
56
138
37
93
84
69
92
139
92
75
58
134
139
124
55
37
81
105
118
107
112
92
122
144
134
67
56
110
110
92
58
126
78
134
58
103
128
55
92
139
55
120
93
108
92
55
180
115
126
103
139
58
162
92
144
132
112
119
86
110
55
108
104
163
122
146
123
93
74
55
131
56
55
92
146
119
139
92
144
111
123
146
92
89
97
101
149
134
95
163
67
105
56
104
138
146
104
92
180
89
146
131
68
84
92
158
67
55
75
93
110
144
93
126
56
105
91
126
110
74
105
55
77
55
146
146
55
92
167
55
123
68
107
105
92
123
105
156
67
105
108
128
178
136
67
103
79
86
124
126
95
110
139
106
67
110
107
79
150
110
109
67
127
74
67
103
123
110
136
139
37
119
122
127
178
67
87
136
84
122
86
99
69
134
84
92
91
79
107
122
128
69
112
91
126
105
127
120
152
75
77
124
105
89
115
148
146
56
171
122
127
162
93
127
140
67
83
104
129
103
104
55
124
37
134
123
55
110
146
37
68
122
104
77
139
92
110
110
55
110
152
140
119
55
56
58
126
122
139
58
109
83
83
146
110
67
169
55
126
56
86
171
138
138
79
110
98
138
88
144
144
178
134
55
180
103
94
128
92
74
139
162
105
79
77
58
138
58
37
105
111
69
56
77
146
139
147
56
145
127
58
148
137
132
110
117
92
102
108
139
67
110
106
37
103
56
95
92
92
122
110
178
92
37
69
104
110
180
75
139
132
139
83
138
108
80
119
105
58
74
122
96
55
122
93
146
92
93
110
67
105
86
93
131
127
127
86
92
92
68
111
134
93
79
55
105
138
104
67
126
72
92
110
151
105
86
146
126
110
88
37
84
180
97
67
150
105
86
122
105
105
122
92
69
123
171
91
126
138
124
137
104
104
126
146
86
138
122
118
83
84
77
92
91
75
169
110
139
168
104
95
119
128
75
122
178
67
89
136
160
140
92
107
104
152
162
109
87
138
95
110
107
134
144
81
152
105
107
123
138
110
107
144
142
105
142
122
122
178
178
110
104
75
69
56
93
138
99
99
105
110
55
127
126
118
110
55
148
169
124
164
126
92
138
107
109
104
83
124
131
144
91
67
119
178
126
93
126
93
138
128
92
110
115
180
56
67
37
165
56
109
79
55
122
93
123
72
127
65
37
122
122
86
92
92
110
122
128
67
93
146
138
56
123
167
118
103
136
104
116
140
56
110
105
104
56
69
83
130
100
163
102
126
139
131
139
127
107
138
86
67
126
138
102
138
122
195
110
134
148
75
162
102
178
74
139
126
92
128
55
126
128
126
109
110
127
123
109
104
74
92
114
81
144
128
83
102
109
110
58
199
55
126
105
138
122
93
137
148
91
93
123
112
56
95
55
127
127
152
104
56
80
106
37
126
152
141
107
127
104
120
68
126
117
92
115
144
98
124
171
69
67
127
128
109
56
56
92
92
97
92
144
117
127
115
138
130
130
144
152
75
168
123
169
126
104
140
126
134
121
99
118
135
119
92
132
104
93
126
127
122
110
107
171
56
109
104
104
113
56
75
130
158
97
122
124
81
37
103
79
92
141
177
80
117
178
93
168
105
138
92
92
148
58
56
106
122
130
89
110
139
169
126
37
138
122
92
83
92
127
37
93
69
95
56
144
55
55
55
69
56
55
105
142
95
86
110
110
109
93
144
105
144
104
56
106
131
156
92
146
122
56
55
109
171
124
124
83
119
104
92
122
69
91
37
114
55
126
105
140
124
99
69
87
134
152
146
105
58
126
122
160
93
156
37
138
37
132
140
92
93
104
109
95
163
140
107
127
178
92
105
92
37
103
56
119
128
135
126
110
91
110
37
140
144
123
92
56
114
178
149
168
134
122
144
152
86
92
163
67
146
110
122
56
93
92
92
139
158
91
105
86
152
138
104
127
37
37
110
92
178
105
112
138
146
75
122
110
167
111
121
123
144
118
126
122
110
69
105
126
67
130
126
103
109
93
37
111
121
37
83
138
55
92
75
144
158
69
146
169
122
99
178
98
96
99
92
132
75
74
148
138
127
55
92
123
109
126
119
105
118
56
56
139
77
105
178
69
131
58
110
92
168
105
149
105
107
126
178
163
58
55
110
97
109
134
116
119
75
171
92
104
102
81
105
131
78
127
68
56
88
158
74
67
128
178
57
144
99
56
122
105
120
110
105
58
111
58
56
122
79
104
58
138
91
111
58
86
110
165
57
58
89
110
103
126
102
88
148
122
56
110
178
56
144
99
144
114
197
122
92
69
143
140
158
146
107
146
115
122
126
92
138
67
100
152
144
120
165
111
178
92
57
110
122
168
55
119
122
139
158
126
138
139
162
86
99
37
110
110
122
123
69
138
91
112
55
111
55
75
89
67
37
178
55
93
88
58
67
101
130
97
107
77
101
55
119
129
118
165
122
105
67
124
56
37
152
168
134
131
148
138
168
93
88
134
56
55
67
123
178
140
58
169
101
93
69
126
37
87
109
107
98
130
152
55
55
138
152
109
89
146
152
55
188
56
93
109
110
169
55
93
79
126
110
138
88
67
112
152
128
165
114
103
139
165
122
55
92
92
58
168
58
55
112
110
87
139
103
55
126
178
105
126
131
95
56
122
98
92
55
111
160
134
178
140
129
119
137
56
91
119
37
86
110
98
104
178
55
144
86
115
169
58
102
171
103
144
138
104
104
105
127
152
139
126
110
126
77
86
101
93
56
110
78
55
146
138
92
105
58
122
146
146
93
67
56
104
115
75
105
97
111
55
77
113
136
122
56
100
138
107
93
55
93
120
138
55
104
132
110
58
55
55
180
180
105
142
130
144
55
92
126
107
56
126
123
131
93
156
152
86
130
91
37
152
58
144
134
134
127
124
55
93
89
108
109
74
86
139
110
86
144
55
110
138
138
127
76
89
117
104
86
79
122
151
103
69
139
108
128
58
55
56
74
127
58
138
103
117
122
120
77
58
122
55
138
126
146
100
112
127
93
104
101
93
104
149
110
140
141
78
110
126
123
105
115
139
69
92
111
95
58
127
107
104
114
111
37
128
67
99
146
123
58
69
105
92
123
139
124
92
89
109
110
55
79
111
124
124
79
55
113
92
105
105
178
105
67
171
178
110
93
197
86
92
130
74
163
134
158
131
138
69
118
92
124
121
105
169
119
56
165
146
104
140
67
118
58
92
78
37
139
127
93
93
92
75
110
128
55
160
108
55
94
126
126
99
111
138
97
128
68
92
146
119
93
123
58
88
74
104
91
128
144
110
105
37
122
37
131
152
152
122
104
97
55
110
139
143
92
110
158
134
110
67
74
110
146
138
92
138
69
68
55
67
105
100
138
106
138
105
164
107
56
105
137
77
122
99
114
55
105
103
122
109
107
77
130
178
55
85
57
92
56
110
79
74
75
140
96
110
138
139
105
93
79
178
152
75
121
58
130
146
134
122
101
146
146
144
122
92
99
102
58
55
171
110
69
127
134
105
100
122
111
92
146
107
97
110
160
58
55
108
112
55
123
58
138
110
130
92
138
112
102
112
37
58
140
124
180
131
92
144
69
105
91
109
122
126
105
119
158
122
79
84
67
134
55
92
74
92
111
67
122
105
163
55
144
77
126
104
128
122
123
122
55
99
67
178
126
103
93
138
104
109
139
149
137
92
140
146
126
114
138
92
144
138
103
109
58
123
122
104
163
128
110
128
126
67
110
77
101
126
119
111
111
122
138
130
128
111
92
126
138
151
37
93
146
100
86
105
92
122
58
55
95
134
75
55
110
122
178
67
146
105
55
146
110
110
67
109
144
67
55
122
188
104
74
110
110
119
67
139
122
37
134
79
199
134
55
101
138
79
127
105
180
109
138
67
192
110
139
144
77
97
119
77
100
111
144
92
111
126
92
122
107
78
110
168
104
122
123
109
122
67
178
75
77
178
124
169
140
105
152
92
146
122
122
111
171
178
138
69
93
37
123
178
104
83
138
99
105
171
105
107
152
124
126
100
58
136
91
103
140
93
86
101
55
107
144
99
75
144
55
105
91
138
122
104
132
130
107
95
134
140
122
178
55
105
111
110
79
92
75
92
122
144
101
146
92
86
134
139
91
56
75
83
56
92
97
158
163
67
104
105
104
138
67
93
118
146
69
98
171
55
136
109
178
55
126
146
111
37
104
56
110
93
119
56
55
92
37
102
110
93
110
79
55
75
127
151
122
126
126
138
105
136
146
107
104
127
102
178
169
178
139
92
178
55
99
124
124
130
77
146
92
110
132
81
128
126
55
80
107
104
105
37
77
141
149
139
132
55
109
169
122
91
92
92
139
95
56
127
56
138
110
83
122
55
56
69
104
104
102
126
93
110
67
93
113
104
152
139
127
77
105
109
67
179
138
122
92
104
91
104
180
92
93
56
75
55
77
97
136
105
84
168
55
122
55
126
128
180
138
100
109
135
119
119
111
134
73
92
119
79
110
122
77
169
91
139
67
146
126
104
110
108
107
169
114
37
121
69
144
110
122
122
140
144
56
134
103
178
128
123
100
92
58
120
126
93
152
122
127
67
105
139
126
92
110
99
37
92
152
169
105
134
55
122
143
150
58
55
123
123
110
93
131
161
138
92
128
119
79
107
89
89
144
37
122
137
67
58
104
156
137
139
78
67
97
139
126
98
178
92
128
108
86
74
135
127
55
69
58
55
148
79
122
124
103
91
144
69
122
128
128
86
104
119
199
105
123
93
104
140
37
123
92
105
91
127
103
92
138
91
178
120
79
92
139
120
171
138
99
128
123
136
112
122
86
55
140
56
122
110
104
136
110
105
140
144
123
58
55
92
138
146
141
74
105
178
86
123
110
92
105
110
84
124
120
83
105
37
81
107
136
126
104
117
139
148
138
126
178
123
83
134
139
178
104
105
128
69
104
156
138
55
152
75
122
152
105
199
105
100
126
127
178
81
69
126
126
92
152
146
122
69
169
92
163
37
95
110
110
86
111
144
141
37
80
106
139
126
105
80
122
109
138
122
146
126
92
74
103
128
77
93
147
93
56
126
110
126
118
67
105
125
79
69
138
111
110
139
110
169
105
69
126
92
92
144
73
126
93
119
138
131
104
56
139
126
67
134
111
93
55
131
104
134
140
178
107
178
55
110
128
92
111
158
89
56
86
92
111
137
146
55
102
123
67
105
110
117
131
105
144
37
178
92
55
178
146
74
138
178
123
127
123
92
109
58
158
138
105
83
86
117
105
122
152
148
72
92
102
126
152
84
92
111
105
152
119
178
126
148
79
104
81
107
122
122
55
145
120
146
122
92
110
110
93
112
56
86
122
122
110
58
140
67
169
118
123
69
58
107
123
138
106
104
110
167
148
105
127
169
89
104
79
178
136
169
122
93
84
138
122
168
138
110
128
74
152
139
122
55
99
79
55
112
105
58
86
118
101
138
152
93
126
146
167
127
123
107
93
122
126
105
138
93
93
117
144
178
106
138
135
139
129
92
110
134
91
130
122
88
178
99
104
91
146
58
92
77
69
77
124
92
146
37
128
92
138
146
162
109
105
93
144
124
103
126
79
126
105
110
152
137
171
56
112
74
112
86
86
55
55
136
145
126
144
58
81
126
148
114
128
56
134
104
97
164
144
55
114
169
91
104
104
122
76
139
122
110
84
107
146
138
122
97
67
94
140
92
111
122
92
110
126
92
127
105
119
112
122
112
108
123
104
92
119
144
138
92
144
122
124
124
93
107
139
105
67
168
126
158
93
138
55
122
134
138
104
126
104
144
112
126
123
86
97
109
79
104
105
122
92
130
178
118
37
138
109
144
67
148
92
130
55
93
37
92
110
105
105
126
105
37
92
139
126
138
168
93
106
111
138
89
86
105
111
138
58
77
110
104
169
92
138
122
93
132
122
164
93
124
127
92
123
92
126
37
183
55
140
145
146
128
178
124
104
107
110
111
178
69
79
77
55
93
83
58
55
75
121
122
110
55
77
105
123
124
37
122
86
126
104
121
123
169
105
134
110
109
104
119
88
152
91
110
111
148
127
92
56
69
93
105
86
178
152
126
110
58
148
79
104
55
55
122
152
119
77
139
92
86
126
104
55
128
97
112
110
110
55
115
138
139
101
111
64
122
139
129
128
123
158
86
95
67
138
140
124
92
121
93
195
93
178
158
128
56
122
122
109
107
134
97
92
103
104
55
58
138
123
92
105
104
55
79
56
58
93
110
122
111
109
84
139
91
109
92
37
146
144
91
105
107
92
138
135
93
92
98
92
92
91
131
131
178
56
180
106
104
110
56
79
93
92
101
93
92
58
126
58
105
105
69
105
86
120
92
152
67
140
105
110
67
144
127
105
75
111
119
138
123
92
93
92
55
55
111
89
123
67
126
92
67
127
139
136
58
67
146
127
91
92
77
106
92
124
138
105
126
86
127
123
138
77
111
144
96
56
87
77
127
67
124
58
136
146
67
55
126
97
93
91
105
169
128
138
55
126
124
104
128
128
92
74
55
67
139
104
37
137
163
84
134
67
97
79
68
106
139
128
100
167
126
128
56
126
86
69
104
55
55
87
126
146
144
104
138
153
77
95
112
74
56
134
55
58
140
92
67
127
125
123
102
67
122
87
92
95
127
180
169
58
180
110
112
68
104
58
55
104
103
55
104
139
110
73
92
56
128
83
128
130
100
92
152
88
110
110
56
37
122
110
110
92
93
37
122
126
126
74
104
110
180
126
77
55
91
127
77
146
92
144
111
123
137
149
55
110
132
126
77
93
126
126
130
74
55
192
128
55
108
58
105
146
110
178
74
163
92
67
58
105
139
124
104
140
140
109
86
93
127
92
180
138
93
131
79
68
105
84
152
138
56
126
103
69
110
124
122
92
86
145
132
55
188
178
144
178
92
55
92
86
79
99
103
130
132
81
69
84
109
144
138
106
162
104
55
55
168
93
78
79
107
139
105
137
75
67
86
92
168
110
103
91
138
67
56
68
102
79
86
101
162
122
92
67
86
104
117
138
55
134
126
55
69
122
126
140
122
144
92
93
69
111
94
140
146
163
110
102
132
93
92
104
109
79
92
92
178
158
58
91
95
119
58
142
116
178
69
126
58
119
58
103
134
105
77
126
89
123
37
98
89
58
92
139
135
169
104
92
100
92
92
69
104
128
129
86
81
93
56
91
69
139
97
37
144
79
178
180
106
139
119
105
92
83
110
114
99
123
105
152
86
83
146
110
55
120
135
158
37
134
119
132
114
136
118
167
55
109
131
122
138
199
142
92
131
151
130
55
118
126
134
139
92
83
55
99
152
127
178
120
37
168
122
126
92
122
104
117
93
67
124
127
122
140
105
109
55
180
109
77
95
77
127
188
99
104
178
138
86
56
138
100
126
79
126
56
107
162
105
117
86
101
164
99
89
178
131
126
138
99
93
92
169
124
169
56
122
69
146
144
132
92
126
99
119
92
104
130
77
92
110
138
55
81
55
178
67
178
126
105
110
144
58
58
110
132
178
105
77
107
122
55
152
95
126
83
92
69
122
178
55
67
58
110
138
92
131
122
105
105
152
108
69
169
110
134
92
178
77
92
75
93
92
55
119
138
68
67
136
92
152
104
67
122
132
92
37
126
140
75
122
55
118
92
105
138
123
104
105
93
123
132
92
126
126
146
92
124
92
69
144
115
67
92
138
77
178
37
84
169
121
104
110
56
137
126
103
100
105
55
144
99
105
160
92
105
128
111
55
55
92
93
99
105
110
129
110
91
115
138
123
123
122
139
75
119
158
91
105
92
111
95
121
148
112
37
138
92
69
122
134
145
144
137
152
163
83
123
110
92
75
99
79
55
83
67
131
86
178
105
127
58
110
92
101
104
138
92
120
165
158
69
145
128
58
128
122
111
68
84
92
111
77
105
55
91
121
139
83
55
67
92
67
93
56
122
134
91
92
58
74
99
98
131
144
118
104
118
180
105
138
144
92
137
98
126
99
99
92
139
140
58
105
163
128
69
58
122
122
122
67
67
123
55
126
101
138
102
75
55
93
104
122
98
55
107
99
88
124
55
126
110
69
112
93
110
111
168
145
104
126
138
106
56
109
138
86
138
119
163
127
86
103
104
55
89
55
55
148
117
55
108
77
97
92
93
109
37
178
118
55
144
69
55
108
124
138
151
103
110
122
122
110
105
95
128
92
67
152
109
110
114
81
105
138
103
110
105
111
67
149
119
93
105
67
111
92
122
81
92
127
99
107
92
124
110
178
55
105
92
99
123
105
58
105
126
78
111
67
92
109
92
107
64
126
92
55
79
84
126
93
69
37
55
175
114
144
104
104
127
103
80
107
138
93
122
92
110
138
105
127
92
130
95
92
138
139
37
79
122
126
171
92
122
139
128
103
128
138
95
92
84
127
132
92
69
55
99
92
105
144
37
169
123
110
74
101
104
152
138
119
67
104
162
84
69
124
122
130
130
122
77
55
67
56
56
124
122
92
112
128
124
92
92
171
138
127
122
92
178
107
37
123
105
112
67
119
110
92
109
158
127
104
98
109
122
123
126
129
104
79
93
122
86
84
41
110
105
127
145
67
103
171
109
127
127
105
108
56
123
169
93
135
126
102
74
104
104
120
56
131
122
163
74
127
93
139
107
105
110
149
86
139
104
67
111
93
110
55
122
142
83
86
86
58
56
105
140
139
122
56
91
126
55
127
56
127
58
77
74
126
92
107
93
162
132
181
139
148
129
124
148
101
126
98
97
69
91
87
104
161
110
126
152
86
92
58
37
144
56
146
86
56
122
144
140
37
67
87
122
67
93
69
67
110
67
117
84
104
37
55
86
135
134
144
92
111
92
103
112
55
97
37
128
163
114
110
168
119
92
67
55
109
92
107
92
138
93
112
86
178
79
103
158
169
92
92
152
86
98
91
126
134
67
91
124
139
130
56
111
115
92
132
104
92
148
169
92
105
178
138
152
105
37
79
120
81
122
96
92
91
103
105
69
122
107
55
58
79
168
58
86
140
128
98
110
126
99
67
111
55
97
126
128
105
124
110
58
37
72
108
105
79
92
110
110
105
92
93
92
138
104
138
37
122
125
56
98
140
91
55
105
67
162
67
127
77
95
107
79
139
91
57
145
107
138
122
95
67
55
93
134
119
55
75
138
113
93
77
119
134
107
128
149
118
83
95
122
138
86
92
114
58
93
124
169
122
152
140
93
110
128
76
56
122
105
91
122
105
110
138
98
75
67
67
180
37
99
67
37
177
139
108
89
108
92
92
67
92
178
104
136
37
37
110
95
109
134
55
87
79
139
106
93
55
122
122
77
58
111
144
134
139
56
92
77
68
128
148
55
55
138
110
67
134
141
137
167
56
69
123
56
95
101
105
131
103
138
122
178
126
92
67
160
139
37
128
152
92
37
140
56
58
103
122
136
100
110
138
139
67
110
122
56
158
144
104
126
145
122
162
107
88
119
55
74
56
92
107
77
104
67
110
178
136
104
79
74
97
131
92
92
152
109
105
144
109
74
95
119
126
92
126
37
112
58
55
55
98
127
100
139
144
58
109
116
91
104
77
86
110
182
104
139
122
92
122
58
152
168
122
131
91
126
92
67
67
105
92
110
144
126
180
146
67
131
92
56
138
99
79
110
122
110
142
88
94
92
92
138
152
58
104
163
110
127
116
107
100
55
128
67
58
110
127
92
37
158
56
122
105
55
102
178
178
84
107
160
92
111
58
110
75
124
105
122
55
146
199
120
110
138
67
104
145
122
56
98
92
93
105
104
127
58
169
74
163
132
139
55
37
67
114
126
120
123
134
119
138
178
127
118
92
56
58
122
164
80
126
55
120
163
58
144
108
69
115
92
126
162
105
105
55
104
58
92
123
128
93
91
69
79
110
93
69
109
95
126
105
67
92
124
105
114
169
37
109
69
92
58
105
75
77
138
92
128
55
55
75
169
134
58
99
135
105
69
126
178
122
56
55
93
69
56
79
95
122
87
84
109
136
124
140
139
126
178
110
108
56
103
127
138
124
105
100
55
105
130
102
130
110
146
122
144
69
56
67
69
74
92
37
67
55
111
120
180
67
67
104
67
127
109
168
126
122
109
69
81
139
100
100
128
58
126
93
140
137
104
122
169
134
163
92
145
146
55
92
134
92
139
110
182
107
67
169
92
111
122
67
110
37
105
58
125
97
105
67
152
109
110
76
88
127
93
120
122
92
92
105
126
92
128
105
107
86
105
93
84
58
74
148
69
58
77
110
103
123
146
125
101
110
103
119
103
55
104
106
134
139
138
139
69
138
104
64
119
131
148
122
86
112
84
105
146
123
164
122
160
146
138
126
144
92
105
58
139
55
127
117
55
107
110
68
111
126
134
55
109
139
67
104
74
118
140
64
101
103
110
138
126
152
122
105
101
105
92
107
115
75
105
56
105
158
58
89
92
152
67
107
122
138
67
122
55
126
92
79
125
129
92
128
93
37
93
55
91
105
126
144
146
74
119
104
122
126
105
138
92
100
158
67
146
103
110
188
110
178
144
123
129
152
110
83
140
101
122
86
92
86
122
105
110
105
93
68
95
131
111
92
58
111
139
107
77
75
92
145
112
105
92
178
92
93
146
55
88
144
110
67
92
126
163
95
110
126
138
168
93
105
128
58
92
123
139
127
83
56
178
99
111
56
165
55
92
139
92
104
61
110
144
99
55
69
169
100
92
86
103
126
122
126
92
138
148
141
138
111
97
55
126
37
120
55
108
105
104
78
83
123
110
92
107
93
74
128
109
132
105
126
144
80
56
146
119
171
80
92
91
93
120
144
84
127
171
122
69
109
69
144
69
103
180
92
178
146
77
55
126
55
112
163
112
141
69
58
55
127
67
138
131
91
109
111
37
78
129
56
165
79
104
112
103
91
147
103
182
103
178
122
69
111
98
104
55
104
178
131
92
122
139
56
69
138
105
67
144
140
92
58
55
99
126
138
92
93
158
79
118
180
144
114
126
122
86
144
104
93
92
131
134
92
108
107
144
139
37
130
148
129
105
110
83
67
107
55
180
124
91
138
171
98
69
104
104
126
56
37
119
91
122
79
178
119
93
119
77
151
69
105
119
56
109
92
110
137
119
37
152
152
144
89
74
86
136
103
167
67
92
69
87
137
151
134
77
37
145
79
124
37
58
178
105
92
55
104
92
178
64
149
107
56
95
113
98
92
123
122
94
158
135
138
146
88
104
126
95
127
37
178
164
67
111
141
118
77
144
138
112
93
110
88
104
55
107
105
138
69
92
122
138
68
105
56
76
124
131
158
167
151
67
122
92
105
160
134
55
122
122
148
126
98
138
123
68
130
110
105
122
104
128
71
126
132
56
111
144
138
92
67
92
92
178
144
146
112
92
101
95
144
84
92
104
88
149
92
56
122
178
79
110
171
131
164
138
110
67
93
152
140
79
138
126
69
92
92
122
69
140
152
128
55
55
126
138
79
139
171
135
126
37
55
104
122
126
139
111
139
107
92
37
110
168
122
104
69
145
55
86
95
93
134
55
55
92
122
105
37
86
110
92
56
109
171
141
92
144
105
137
122
122
67
77
110
131
178
126
101
144
148
74
86
67
86
126
123
127
112
56
77
109
93
97
126
97
145
37
162
178
69
56
128
107
130
37
110
91
55
119
98
37
109
104
139
126
138
110
197
146
97
144
37
56
104
122
93
102
189
110
67
86
138
105
67
146
178
152
81
84
55
105
105
110
124
37
111
105
110
93
72
55
112
74
127
56
146
134
105
55
127
162
79
148
109
92
55
69
110
122
110
91
146
72
138
74
56
122
95
79
122
169
110
127
37
111
98
91
55
105
67
152
121
149
152
83
105
37
67
171
93
55
126
91
97
67
68
139
69
122
92
56
98
111
99
99
79
182
110
37
135
122
92
123
139
144
132
127
93
92
119
139
146
138
144
110
137
138
140
94
105
110
91
119
146
92
152
67
55
180
114
37
75
56
111
104
58
92
130
138
139
69
55
77
105
93
104
126
67
99
139
104
77
127
152
86
105
107
87
105
123
77
197
87
92
169
93
74
105
126
147
55
123
74
126
139
128
55
124
55
171
104
93
93
56
92
87
93
103
92
178
110
55
126
91
152
139
72
138
114
178
37
99
110
93
138
69
92
138
122
79
103
100
158
145
80
67
138
126
132
55
83
122
134
93
56
83
146
58
55
107
130
79
105
79
37
171
58
126
178
88
119
158
92
104
75
118
104
126
158
55
103
105
55
104
197
99
131
123
67
104
134
92
83
122
95
55
93
119
104
105
98
99
126
58
67
109
88
139
122
163
105
56
117
169
104
152
163
105
55
101
132
99
110
134
81
122
160
104
92
115
131
144
108
105
98
67
75
120
79
117
104
77
111
103
188
122
58
122
110
37
93
122
79
132
104
136
105
165
92
120
69
126
110
128
138
55
160
80
105
93
110
122
91
93
92
83
123
91
101
199
110
67
67
88
110
123
139
126
102
93
94
126
83
58
77
69
109
132
91
92
152
144
180
132
110
91
67
111
91
92
105
67
122
58
126
55
84
92
110
55
126
126
188
138
146
171
122
177
152
93
92
123
130
67
99
91
178
104
111
103
110
37
131
110
55
80
178
131
92
92
37
111
122
111
92
127
92
122
55
93
86
92
104
110
92
146
168
123
105
110
119
89
168
126
109
127
111
93
92
81
105
104
112
122
105
58
68
55
110
105
92
92
169
138
126
37
58
104
126
130
123
69
108
101
110
109
69
55
110
88
126
110
178
69
55
55
100
79
144
69
104
92
137
58
55
136
67
122
138
178
77
92
55
128
109
112
109
78
77
55
92
69
114
126
140
126
137
99
110
37
119
92
122
122
88
128
111
104
120
105
56
178
79
103
118
55
144
109
110
74
134
126
110
138
97
138
146
105
106
122
67
104
139
77
144
169
55
132
105
118
126
122
164
110
167
123
119
168
123
140
152
104
105
123
105
92
93
98
56
93
127
110
124
92
138
138
92
92
92
84
123
67
110
58
112
84
93
102
117
92
88
93
119
135
126
92
37
123
105
105
37
126
77
140
149
122
55
146
169
138
138
119
123
127
37
75
131
138
37
122
117
168
111
123
105
158
77
118
106
67
84
84
130
112
99
138
93
107
145
105
178
67
75
105
152
169
37
169
104
135
139
141
105
146
99
55
128
103
67
123
127
138
77
79
92
122
126
110
126
55
55
123
99
141
107
107
104
105
92
123
93
55
55
124
84
67
114
109
105
107
122
146
56
93
104
144
105
136
132
89
146
131
169
122
105
79
55
55
169
107
122
110
168
92
68
79
110
127
55
104
119
132
92
127
92
75
105
92
114
138
126
91
56
104
148
127
138
148
107
93
123
122
67
127
160
112
37
104
154
67
140
69
128
92
69
123
94
56
105
126
126
120
136
105
55
109
93
91
169
108
138
117
122
119
102
112
178
127
96
126
146
144
178
110
74
169
103
58
56
83
56
79
92
92
138
102
109
156
144
105
144
112
56
92
138
92
80
95
55
130
89
68
91
56
111
92
69
127
92
178
107
112
152
92
77
94
122
67
100
111
180
77
55
138
104
99
84
109
37
105
111
97
67
110
148
98
168
138
136
55
37
134
55
104
110
58
149
138
104
105
55
56
105
122
126
104
167
134
37
111
128
128
103
120
118
92
92
128
91
56
121
79
68
122
56
144
55
180
178
107
110
134
94
55
103
92
108
118
101
55
104
122
114
103
132
138
105
110
69
141
146
84
55
91
122
106
126
55
105
69
118
139
162
158
37
75
168
92
158
93
104
58
127
93
86
99
122
83
134
127
136
55
126
146
114
77
178
67
122
55
92
117
104
171
126
110
104
58
105
119
84
69
127
147
146
55
108
122
104
92
58
178
56
113
91
92
163
107
84
92
124
69
79
121
147
104
92
79
169
55
138
160
100
86
55
122
55
126
152
104
126
92
117
178
110
122
140
152
110
105
103
69
55
101
93
92
92
58
120
110
129
138
67
103
119
105
122
165
72
130
126
178
139
138
91
56
92
140
122
101
199
105
92
110
110
126
83
122
180
131
120
107
144
92
92
88
92
104
120
69
58
178
103
56
182
55
105
92
89
104
164
105
138
79
127
169
85
169
123
92
139
126
91
105
105
92
142
100
130
105
56
122
124
109
109
92
109
122
129
110
84
79
71
122
110
178
130
100
67
140
77
104
140
178
128
102
124
132
105
67
122
122
83
37
92
139
92
119
110
79
110
67
178
101
138
122
122
58
99
127
98
122
126
92
158
69
91
89
104
56
122
84
151
107
122
127
126
92
92
104
111
92
104
146
75
67
81
123
92
146
126
120
105
107
165
122
118
138
139
152
128
144
146
119
98
139
114
144
122
126
92
86
114
139
138
122
110
84
119
67
107
69
83
144
128
134
55
104
74
103
182
124
126
105
69
104
93
122
55
110
86
135
147
98
72
106
105
75
104
123
56
56
127
168
139
103
86
92
92
152
110
138
152
104
126
98
122
93
126
93
122
126
127
107
104
98
111
110
137
132
104
160
91
92
92
122
123
139
80
134
178
92
109
123
103
55
122
104
110
140
111
111
55
75
126
147
126
105
126
110
119
79
83
126
109
105
158
67
106
144
105
92
99
92
55
139
37
92
80
69
97
123
104
97
105
78
158
55
84
146
104
139
126
127
58
92
99
99
78
148
118
87
93
134
105
144
110
138
56
130
119
169
162
55
91
122
107
37
79
86
144
136
106
136
92
160
127
109
74
105
169
99
126
132
107
122
55
79
105
110
37
75
98
37
67
74
92
122
178
144
67
105
110
86
106
149
92
75
110
75
148
120
122
146
92
92
126
86
55
126
112
122
75
105
74
107
92
92
137
138
127
86
122
140
169
55
93
93
69
110
56
122
126
78
131
136
134
171
140
131
79
93
97
84
67
107
69
55
134
89
67
92
104
58
102
56
67
109
120
103
122
139
83
92
127
122
126
122
141
93
109
87
97
99
87
123
132
93
119
134
95
146
119
109
111
199
99
134
104
111
136
178
55
123
122
83
109
122
148
55
111
126
92
75
67
146
55
122
67
92
92
93
74
92
92
138
126
122
138
75
92
79
92
152
144
163
109
55
67
110
158
137
178
58
123
83
77
55
114
139
55
98
67
122
122
92
144
146
93
99
69
92
99
55
37
105
56
74
138
110
126
99
110
68
104
162
79
101
112
105
120
74
169
98
58
55
132
105
75
92
126
92
67
131
67
132
83
112
126
110
109
152
199
37
178
127
130
138
77
132
92
37
100
128
86
86
77
55
91
91
99
109
56
109
122
67
87
144
118
178
138
37
119
55
152
105
137
110
105
92
58
75
86
178
92
124
122
92
122
127
110
75
122
127
100
93
167
91
109
92
91
122
92
92
80
92
130
152
77
136
178
110
130
99
37
178
110
178
56
55
56
69
89
55
152
108
104
110
84
103
171
110
86
55
118
127
37
67
123
144
67
92
119
92
105
162
101
144
83
110
58
135
115
171
77
105
138
110
77
104
97
160
115
105
91
55
123
131
84
105
92
83
111
126
105
55
56
81
122
55
111
168
122
79
122
91
139
69
126
130
88
86
126
128
169
119
92
92
120
110
136
105
37
144
134
55
92
142
55
134
138
180
79
76
126
55
97
126
67
126
103
142
119
144
67
119
92
55
168
126
119
104
122
169
113
109
84
72
146
98
56
56
138
105
125
83
178
64
86
99
104
178
79
69
79
86
56
136
37
118
79
141
199
152
89
105
55
134
79
139
108
56
122
103
124
118
77
120
122
111
110
67
91
55
92
164
92
80
73
126
37
92
127
55
111
92
74
139
127
79
92
74
119
56
55
69
146
140
128
104
105
93
91
75
105
86
92
56
69
150
92
55
92
110
122
37
103
37
124
105
126
126
131
55
168
146
37
138
149
69
126
119
162
171
105
138
169
137
118
127
67
144
146
124
88
122
146
122
171
107
86
86
105
92
134
122
67
124
112
98
69
86
56
152
144
178
91
122
105
58
109
92
92
167
138
169
83
92
91
110
168
84
139
134
55
182
171
92
122
103
123
108
92
115
67
100
91
139
95
105
152
37
134
127
121
127
168
142
135
178
110
139
123
93
127
139
123
37
136
122
67
55
121
132
93
67
119
120
103
144
93
119
97
122
105
74
127
86
127
58
110
56
122
108
110
64
92
126
152
104
148
122
111
138
37
105
152
136
92
138
93
104
105
92
115
58
105
75
128
55
123
97
180
123
69
96
104
79
152
79
171
180
120
37
126
113
58
92
104
109
77
122
69
178
92
126
139
122
124
55
122
110
123
124
158
74
119
56
67
104
97
138
152
120
126
67
55
127
97
144
119
124
139
101
105
140
111
93
127
140
67
92
180
128
58
104
92
134
88
92
93
100
110
104
91
110
122
123
105
148
104
77
134
69
122
93
91
104
111
55
114
146
92
92
114
129
105
109
119
92
134
67
169
180
91
74
74
137
112
69
178
122
122
114
104
146
109
136
139
139
178
140
74
81
67
107
83
92
104
126
168
128
127
158
104
58
55
139
69
192
128
104
79
74
122
111
138
122
122
67
110
122
55
162
92
83
107
97
58
67
107
110
79
67
56
58
110
146
126
107
180
104
146
110
144
122
92
134
98
93
165
86
79
105
55
158
178
116
92
69
110
111
96
138
169
144
100
127
139
79
105
105
104
93
178
138
105
55
127
126
56
105
110
67
122
126
69
109
178
55
112
98
92
104
92
69
86
138
69
178
111
105
127
92
110
140
69
99
86
37
138
93
144
110
103
88
178
102
145
56
126
107
79
128
110
79
75
110
67
74
134
138
137
130
79
37
105
139
37
105
178
92
67
92
55
104
92
178
137
67
140
169
126
98
104
105
102
122
104
122
83
138
139
141
91
67
126
55
99
180
126
114
58
67
152
105
74
75
180
146
37
69
158
67
123
93
189
58
171
105
147
112
138
138
77
91
146
169
180
58
122
122
55
122
138
139
91
122
152
149
122
188
126
156
103
56
163
92
126
152
69
67
110
93
108
134
117
55
134
69
140
127
107
37
64
69
37
92
105
55
69
105
104
55
55
74
107
105
93
105
127
146
144
74
123
92
139
124
105
109
138
92
67
139
134
127
103
110
83
79
112
148
92
105
138
67
181
120
124
69
110
92
110
69
67
55
136
73
88
152
67
67
109
93
104
93
132
92
110
92
107
99
165
86
55
139
58
178
98
92
168
91
128
55
91
122
55
110
92
101
126
110
79
110
138
84
138
110
158
107
110
67
110
132
134
93
79
93
111
104
55
127
89
109
55
105
124
99
92
75
119
128
55
123
107
112
105
115
139
146
126
169
127
126
93
67
105
73
67
121
136
69
117
56
55
138
105
106
124
180
79
126
128
55
137
158
67
122
165
85
58
126
99
178
152
169
91
110
99
83
67
93
92
92
105
74
77
109
94
69
56
123
89
101
92
77
93
119
178
122
67
105
110
92
181
55
107
139
99
55
140
79
105
107
122
92
58
37
98
105
122
91
131
139
122
105
92
134
105
97
128
37
104
111
120
58
93
55
69
128
68
110
55
91
86
92
104
146
156
105
138
92
138
91
127
156
108
120
67
111
102
144
127
140
138
56
91
131
92
104
123
137
105
55
55
86
86
93
119
56
127
100
111
69
107
138
124
178
92
169
138
93
77
178
120
122
151
134
126
105
95
178
56
110
128
178
79
110
124
58
132
92
126
93
163
58
168
104
138
105
81
171
87
127
136
138
56
93
75
178
93
138
136
118
110
99
152
195
130
55
142
55
86
86
67
124
55
119
112
122
104
86
58
138
92
136
138
104
178
110
109
104
95
104
67
103
148
178
92
119
109
92
109
79
130
138
104
77
103
139
126
55
93
87
93
102
152
103
169
134
104
110
101
138
93
105
160
86
126
128
138
144
122
128
127
99
74
78
111
91
126
55
92
58
92
110
152
144
37
93
103
117
152
139
127
118
83
124
132
132
109
145
163
139
118
55
139
93
122
86
69
127
112
152
109
119
110
105
105
144
110
105
138
56
104
168
126
97
127
92
58
126
122
92
86
83
69
92
77
178
92
67
68
55
126
91
138
55
132
105
142
144
144
146
92
127
169
152
77
119
56
110
126
146
55
168
67
111
99
139
158
121
117
81
138
108
180
126
37
140
124
110
86
126
138
162
126
58
110
137
138
145
93
109
106
151
138
110
122
109
192
111
146
130
88
104
144
122
127
83
139
148
55
102
110
119
95
37
110
79
110
114
178
158
92
178
131
178
100
79
55
86
130
126
67
110
92
92
130
123
144
68
132
92
104
58
108
148
67
105
83
123
126
104
103
107
58
127
74
117
58
127
55
102
89
110
67
55
152
167
140
104
67
178
92
103
109
139
79
105
111
128
55
110
93
85
104
136
138
100
144
55
104
105
93
145
139
83
178
104
169
111
92
37
106
111
165
92
144
111
56
56
104
91
110
110
107
92
55
92
119
69
110
139
75
77
68
37
105
169
92
55
96
119
69
86
105
110
121
92
75
108
126
152
79
110
92
119
104
56
92
152
122
55
67
140
92
125
152
99
130
122
120
56
55
146
83
148
104
114
126
135
67
152
75
105
99
93
79
92
110
127
79
169
37
135
125
110
122
110
126
67
104
105
55
144
140
123
122
149
99
122
152
98
144
127
117
124
126
92
92
122
111
77
84
124
139
37
92
126
75
75
122
138
92
123
56
110
55
104
110
134
126
110
104
125
110
55
95
103
93
107
178
171
199
55
180
79
171
178
105
144
123
126
139
122
55
68
92
136
91
122
105
122
152
105
163
110
111
138
126
37
131
140
55
111
122
164
164
144
127
141
108
86
123
117
99
104
158
144
138
123
107
92
37
104
140
55
123
81
130
37
106
135
134
140
78
120
92
104
137
171
69
86
138
171
56
134
37
88
92
105
126
128
84
86
122
104
92
146
102
67
105
92
178
178
155
102
197
111
105
58
67
86
37
105
122
158
109
103
58
110
74
114
93
92
92
92
58
56
92
37
139
103
152
148
144
92
103
55
104
83
178
110
55
55
189
107
126
92
164
158
103
120
163
109
92
84
110
67
104
123
93
104
100
98
165
122
152
105
122
56
97
138
143
139
109
86
178
92
112
132
128
122
79
77
92
56
67
55
158
122
67
69
109
138
122
104
146
56
111
108
92
79
126
114
110
145
126
58
101
125
164
177
136
128
127
68
79
110
67
111
79
91
119
122
86
55
104
105
58
92
92
56
152
110
56
79
178
86
148
104
37
55
91
92
101
110
122
92
103
37
108
74
114
87
178
110
93
93
110
74
105
79
116
119
119
139
56
127
126
92
119
178
146
79
99
122
145
93
110
92
86
165
56
129
110
126
135
114
55
111
84
72
109
110
55
92
126
69
126
55
123
106
93
122
123
99
55
81
107
95
111
79
110
119
98
110
75
92
104
93
58
58
99
110
77
93
122
113
110
64
77
55
126
56
106
152
105
110
138
111
104
111
92
91
105
122
56
102
92
79
119
92
139
146
138
139
86
127
132
117
128
74
134
69
69
109
67
118
88
168
140
77
86
67
107
99
92
67
79
119
152
108
104
67
126
56
146
167
122
110
104
55
37
55
75
123
105
83
55
55
126
122
104
122
98
75
86
136
67
119
93
138
104
109
146
105
55
91
140
127
92
168
123
120
110
104
152
138
122
92
91
58
77
86
105
104
86
110
178
108
92
101
84
56
141
130
98
105
178
111
152
58
138
105
160
128
105
110
74
144
178
92
145
134
105
56
128
123
130
127
112
122
138
158
92
126
110
162
123
140
55
108
92
110
127
138
110
92
56
137
104
122
104
126
138
58
58
152
88
114
92
105
114
56
122
123
131
115
137
55
58
138
126
110
138
148
178
110
69
76
180
111
92
77
97
67
104
79
105
37
98
122
68
128
178
122
134
89
104
180
79
105
162
126
102
92
93
109
75
152
104
140
93
55
103
122
124
75
92
139
105
104
138
127
69
110
123
152
107
55
93
67
144
105
92
110
37
148
136
92
107
55
127
119
169
122
91
81
139
69
37
117
132
91
146
67
126
75
171
55
105
91
55
75
112
127
97
91
104
88
110
56
138
86
92
109
110
119
128
126
79
119
69
146
67
93
98
122
118
103
126
55
167
99
37
67
105
105
127
110
74
122
105
99
69
110
92
68
152
93
165
145
55
109
109
112
99
139
110
67
134
96
178
180
128
55
93
146
108
110
79
104
137
100
109
105
110
122
56
122
126
37
86
130
138
104
138
177
67
69
180
138
111
95
105
86
122
122
118
93
80
37
178
152
79
134
56
104
92
124
118
58
128
55
93
139
135
178
92
67
56
122
56
55
107
100
122
165
93
125
134
138
126
108
84
86
110
58
55
109
152
138
101
171
120
37
103
152
163
104
110
109
104
106
92
56
132
137
122
111
37
75
131
138
130
55
58
199
67
84
105
144
122
93
55
139
126
146
128
131
68
37
104
107
138
86
110
79
67
138
92
138
152
110
169
138
122
152
158
136
83
138
107
37
110
92
178
122
89
104
146
86
105
56
110
180
92
131
138
108
139
56
99
123
128
138
97
110
75
138
126
105
126
98
92
56
111
96
93
99
55
104
110
138
67
93
82
125
78
112
126
91
122
91
37
58
109
146
126
77
86
126
56
139
102
55
125
130
136
120
92
127
93
144
55
55
74
119
105
93
119
109
57
106
126
97
105
163
111
100
135
126
56
105
68
69
152
74
138
117
91
178
37
147
79
119
137
139
105
122
122
91
101
101
122
105
103
111
123
146
107
110
56
140
98
56
127
138
67
107
126
79
105
89
111
149
127
79
92
67
148
100
145
122
107
58
93
131
89
139
178
91
55
139
146
58
92
67
126
128
97
109
110
178
56
169
169
92
86
67
117
122
164
83
94
77
103
139
92
122
92
105
110
104
180
101
122
92
67
105
91
103
37
86
126
55
169
74
67
103
83
89
55
127
109
162
135
69
122
37
86
114
104
37
105
37
55
108
144
178
83
124
74
91
152
104
122
77
122
152
95
126
124
105
126
97
89
178
67
162
105
146
138
158
131
125
93
91
67
83
55
110
58
138
92
121
178
110
104
107
55
148
101
107
126
105
146
92
83
110
108
126
123
138
126
92
67
92
100
119
138
115
126
92
123
37
122
118
127
144
171
111
67
123
107
107
122
126
104
122
109
92
144
55
126
104
101
152
132
79
93
138
171
55
58
78
93
110
92
99
122
56
122
162
110
93
107
122
74
117
178
94
109
139
56
105
69
126
148
58
98
123
128
55
58
96
168
86
168
83
119
104
128
84
107
55
140
189
69
102
109
132
126
125
55
105
92
92
92
55
37
55
137
83
126
158
37
105
91
178
86
55
92
92
56
98
105
105
58
178
178
136
83
69
75
92
106
107
131
58
162
126
144
92
58
92
69
67
67
152
117
139
55
105
102
165
140
127
92
92
111
128
92
110
55
140
146
56
58
37
84
141
93
144
56
118
101
178
122
101
93
102
122
178
106
92
55
107
126
56
69
86
126
86
133
56
122
189
122
67
122
92
127
135
110
55
56
92
178
138
55
105
37
158
129
178
134
105
91
109
86
92
91
122
55
149
111
55
111
103
37
105
163
117
101
37
138
55
56
128
104
138
119
168
112
84
105
114
107
110
131
103
104
56
126
123
69
139
122
152
74
58
147
92
79
67
56
180
146
127
97
92
56
77
126
141
91
84
171
178
138
126
110
139
109
105
91
92
138
141
147
84
55
138
77
171
109
69
130
146
119
106
138
136
114
74
105
120
144
127
92
80
110
68
55
84
131
86
134
139
74
67
72
86
169
106
144
69
99
169
163
103
129
92
101
93
56
126
152
118
56
122
37
55
56
140
94
146
104
107
148
134
100
118
146
123
144
146
128
92
58
126
147
98
105
126
178
111
92
93
138
118
109
138
140
67
110
84
119
92
107
127
55
105
139
69
110
107
92
75
92
119
128
100
55
83
178
126
146
56
55
105
110
92
120
140
146
106
138
69
144
126
97
122
104
107
118
105
92
144
120
129
69
55
126
127
148
55
144
75
56
138
37
92
58
107
105
110
146
105
98
55
178
119
91
123
37
91
124
92
55
37
106
122
130
101
55
92
55
68
119
104
69
69
127
84
99
122
129
109
110
74
93
93
144
55
67
55
37
92
67
92
126
55
138
92
109
128
99
126
128
126
126
126
92
110
149
117
69
84
128
123
92
134
92
122
178
119
127
158
86
93
76
92
139
139
92
138
107
126
67
55
134
91
99
103
91
93
167
79
178
109
104
79
92
93
55
79
86
102
117
69
105
67
130
107
126
55
126
110
117
126
152
106
158
55
110
55
88
122
105
67
77
121
114
126
69
61
56
56
109
130
93
105
98
122
37
92
128
126
110
107
134
58
105
88
134
56
74
146
178
126
152
64
140
55
110
55
83
127
106
134
126
75
56
58
86
122
101
37
149
79
55
67
88
55
122
58
99
67
126
124
67
92
126
134
110
140
69
131
178
178
92
93
134
114
92
58
74
69
97
148
92
158
55
37
131
69
139
105
69
56
104
92
56
56
152
74
115
109
92
98
126
152
119
141
152
93
110
120
92
144
74
126
144
75
110
56
138
130
105
126
55
107
74
92
118
77
136
92
86
152
56
122
69
55
92
123
117
152
138
93
122
139
123
92
110
74
100
112
56
55
58
55
152
122
122
55
131
56
132
86
104
55
74
128
37
97
105
107
93
121
112
67
118
58
126
136
58
104
67
168
110
67
55
92
55
127
134
160
105
122
138
58
55
92
128
105
123
138
105
135
119
91
93
178
120
110
169
138
89
127
104
83
37
55
69
55
178
92
142
92
107
178
144
109
152
92
86
109
104
83
122
55
55
77
144
55
152
127
98
109
138
109
83
103
112
37
105
37
120
97
77
122
126
168
86
103
67
126
105
130
109
178
134
139
148
55
58
158
144
117
139
55
55
139
128
138
112
131
105
56
152
108
140
67
92
110
68
111
122
145
128
140
105
88
139
126
105
104
138
55
122
81
105
111
67
110
138
139
56
110
145
134
110
123
107
130
127
93
126
105
92
127
55
111
121
168
109
110
138
138
139
55
69
162
119
58
146
93
122
122
152
125
107
178
162
138
152
108
92
69
92
92
105
95
163
110
81
103
112
79
107
104
86
86
105
79
122
91
67
123
92
122
169
83
122
180
138
125
72
93
139
55
138
98
180
146
92
126
151
111
56
131
117
164
92
117
178
109
127
93
91
139
169
140
77
67
128
67
144
69
122
107
119
152
56
67
69
128
122
78
119
92
74
144
104
55
110
105
178
138
74
146
58
55
92
92
37
86
107
91
146
148
119
105
111
99
92
139
138
123
126
93
127
69
144
37
69
86
122
152
107
112
178
79
139
108
99
92
67
180
93
126
110
99
79
104
75
67
138
86
93
160
96
124
126
55
92
56
68
110
104
114
110
104
132
69
145
136
136
136
93
178
127
104
56
126
56
92
105
55
152
92
126
163
55
93
130
119
110
37
84
118
76
124
55
128
74
134
144
123
67
138
107
119
119
92
99
125
120
77
122
128
110
101
126
67
101
127
101
134
67
74
126
144
55
67
178
138
55
56
91
56
126
104
67
97
125
178
55
77
113
55
67
129
67
122
128
67
114
144
103
93
69
93
56
105
128
138
56
167
69
148
105
55
37
55
56
55
77
110
139
94
93
118
76
105
74
105
93
111
67
77
56
130
105
77
67
122
109
74
137
137
67
138
136
109
180
110
128
108
126
55
126
93
122
126
178
91
37
105
58
91
56
110
67
178
153
139
123
146
199
136
138
92
67
127
122
93
123
126
126
110
77
180
110
55
79
75
79
122
89
122
138
135
55
104
92
77
86
77
79
67
93
99
110
75
110
92
169
95
56
55
105
109
68
67
120
132
127
122
104
55
88
152
160
55
75
165
138
126
105
55
111
152
110
99
144
104
169
131
86
100
146
142
148
134
152
55
138
138
58
99
138
58
93
93
79
128
110
110
138
122
178
124
169
126
67
86
126
105
79
92
77
92
149
67
98
178
123
93
37
58
67
127
127
55
77
67
92
122
94
56
152
119
138
134
67
103
104
67
119
127
123
55
37
75
75
99
92
137
104
77
110
130
92
128
37
120
93
91
122
122
178
162
146
107
146
92
136
128
77
128
67
110
152
168
110
56
124
138
79
110
104
93
180
152
109
79
93
124
127
75
97
146
162
152
111
110
58
91
92
92
127
158
105
55
129
105
69
110
123
99
168
58
178
178
105
119
110
123
105
126
77
84
126
139
122
58
74
91
122
37
130
55
126
80
110
92
69
74
97
158
79
119
103
67
134
68
107
105
152
92
55
122
126
139
55
74
162
37
126
122
111
130
69
122
146
56
104
55
128
127
92
75
58
79
126
126
104
127
67
105
144
107
92
86
110
92
55
55
139
107
55
178
104
127
144
143
104
122
134
79
69
110
67
83
127
56
55
141
41
109
37
55
95
83
100
128
111
105
56
146
152
178
139
158
104
123
104
100
92
91
67
138
127
67
148
122
37
55
69
67
78
139
104
138
169
74
100
69
111
67
100
126
138
93
104
152
84
83
55
107
83
67
102
119
108
168
110
110
110
72
55
139
92
74
78
178
126
148
92
106
58
92
69
55
145
148
67
61
83
91
127
138
122
178
131
113
37
163
67
93
92
145
145
152
168
119
55
131
75
140
138
138
114
144
81
86
141
168
77
146
58
37
123
93
146
105
121
69
55
138
138
92
83
129
86
130
92
109
126
103
55
104
110
56
139
110
100
92
92
93
114
58
138
55
145
141
80
138
111
93
58
92
123
79
110
120
130
92
96
122
136
75
152
99
109
77
110
111
93
92
92
122
146
122
126
55
138
55
110
101
76
67
115
78
55
105
122
139
104
83
138
98
55
111
58
99
122
122
112
55
180
92
110
122
121
92
152
92
127
199
105
105
126
146
134
91
138
104
147
99
165
139
146
122
56
92
164
84
126
114
140
146
105
92
105
55
103
56
74
37
164
37
130
68
104
144
199
152
69
139
120
55
89
105
146
128
104
104
178
56
103
127
180
86
110
157
67
140
110
55
152
107
110
139
92
67
138
107
92
92
110
79
110
37
110
122
78
114
55
58
56
92
89
128
67
104
147
110
37
105
100
105
128
146
138
144
146
127
122
152
132
93
104
112
92
37
99
86
67
61
119
128
139
163
104
108
92
105
93
92
169
106
55
55
142
199
56
105
134
104
93
86
93
127
98
139
119
99
138
126
58
55
122
138
138
37
122
147
67
83
127
144
111
147
138
86
110
127
55
105
168
101
164
80
102
77
110
148
144
56
105
107
79
123
93
93
89
67
78
111
104
144
86
56
77
138
92
72
89
56
136
93
92
89
93
152
75
127
128
55
56
74
140
56
126
122
55
122
126
37
67
55
91
144
79
91
123
86
146
55
75
105
119
138
122
92
132
37
146
138
93
76
122
67
168
140
119
111
144
130
169
99
58
89
69
88
92
67
110
74
139
139
139
101
165
123
119
127
55
55
110
146
122
127
75
126
146
86
106
140
169
178
78
55
93
165
148
126
56
98
158
110
119
114
94
119
163
144
79
152
112
169
58
135
55
105
69
123
127
127
126
128
92
92
131
111
37
161
144
107
138
138
124
58
93
86
127
92
67
178
69
144
92
92
110
127
111
126
148
55
37
126
97
98
93
178
136
105
81
91
91
111
111
145
105
55
119
55
56
120
110
144
111
101
131
92
110
123
69
105
55
121
37
105
58
127
74
134
111
123
144
58
67
139
171
100
180
104
134
58
105
112
89
158
55
95
105
168
101
92
86
144
110
105
139
103
138
67
131
105
126
121
118
138
169
92
111
87
158
105
126
93
98
101
92
109
126
94
122
92
93
92
104
144
107
86
115
69
139
101
164
74
122
127
68
126
67
86
148
122
88
105
105
108
122
162
123
67
83
67
73
144
131
99
92
171
178
108
128
127
110
75
92
139
138
139
74
86
58
67
56
111
127
69
126
169
91
109
147
136
37
119
111
84
122
76
168
98
56
58
180
127
99
111
105
55
178
126
110
104
83
67
69
114
152
146
130
126
55
104
67
122
89
134
146
105
105
110
139
92
122
75
137
92
101
122
178
138
138
138
151
86
55
104
69
105
132
55
37
58
127
118
107
138
92
79
86
163
152
91
122
55
126
119
168
105
78
118
69
144
110
144
92
126
139
55
134
105
160
95
111
82
152
126
74
93
132
86
109
110
93
109
69
55
86
138
55
167
103
122
122
55
55
105
103
169
169
102
92
97
127
122
110
104
97
117
104
104
37
104
56
67
120
93
92
127
136
104
111
160
111
144
118
67
162
105
138
92
181
55
86
93
97
139
146
37
92
100
98
58
92
103
163
91
110
74
97
79
91
150
107
98
124
130
127
67
122
67
92
100
167
122
123
91
140
126
162
138
122
67
110
138
131
100
106
99
122
158
55
168
75
55
109
110
74
162
119
77
105
105
86
95
107
122
93
55
93
56
93
108
86
67
105
130
104
37
112
105
139
138
104
104
69
75
58
160
67
120
92
122
58
67
139
110
37
131
55
99
104
126
37
97
180
100
86
138
99
99
107
91
77
122
83
119
126
93
127
142
123
169
131
124
142
107
69
99
128
122
122
139
138
181
86
138
122
69
69
180
151
93
97
112
112
178
122
58
83
139
37
89
104
56
152
126
142
139
99
122
119
127
145
79
37
142
110
144
86
126
104
122
75
83
132
89
132
107
128
137
105
67
99
76
131
144
75
134
126
75
127
108
67
77
104
100
69
151
77
105
94
111
67
104
56
69
127
105
152
93
92
92
37
105
92
37
138
91
58
105
127
122
126
69
178
126
144
56
92
104
126
127
146
169
111
138
92
67
126
107
138
69
105
169
58
146
122
140
144
127
107
131
55
126
55
127
118
114
92
107
100
178
56
127
106
86
91
126
105
158
140
86
152
169
92
110
180
144
56
122
114
99
152
67
92
93
86
137
55
105
55
134
128
92
168
178
138
69
92
56
93
56
144
67
104
107
128
110
146
110
124
144
37
100
138
55
134
182
109
93
109
56
92
139
69
124
55
122
55
178
110
91
110
69
140
55
171
107
122
110
103
55
91
56
98
55
68
127
67
140
107
67
171
55
134
134
114
152
146
92
119
119
136
124
139
126
120
126
105
92
139
58
146
92
37
110
131
55
86
77
110
105
92
107
128
105
102
92
138
92
138
105
37
55
74
123
92
92
93
92
129
136
134
37
128
158
122
130
130
86
109
92
112
92
93
55
37
74
68
103
92
122
55
164
77
92
74
171
182
139
37
123
78
116
110
97
128
122
92
99
126
110
69
110
69
104
72
152
110
178
101
120
56
126
109
55
146
119
122
104
69
55
124
83
152
93
55
86
127
104
123
56
67
55
69
120
92
93
110
152
108
110
107
105
162
101
105
99
75
74
95
109
105
92
188
110
131
110
56
58
110
138
123
67
152
152
178
106
140
93
124
106
55
93
138
92
168
83
126
152
104
143
171
124
55
110
55
123
92
124
105
122
171
104
75
56
67
104
126
120
86
55
77
58
92
56
81
69
105
37
105
55
102
127
58
131
55
92
127
67
122
81
92
145
134
126
69
109
117
105
142
146
111
92
128
110
169
56
67
92
135
58
118
158
139
128
122
37
55
92
138
91
122
92
79
139
160
122
55
146
101
110
55
128
128
112
92
119
127
55
162
110
106
55
105
68
137
102
55
92
104
67
93
67
137
86
55
144
55
138
79
104
67
112
139
68
109
124
69
93
169
126
55
103
122
81
127
138
99
109
122
67
104
109
138
92
146
109
165
67
75
158
91
152
75
136
105
102
117
92
144
104
118
139
134
132
126
92
178
91
55
55
102
96
84
110
168
105
92
137
167
93
92
98
122
107
171
110
99
122
123
110
74
37
132
178
105
105
102
128
99
67
119
127
55
128
98
77
152
102
55
105
109
37
99
68
110
92
171
123
67
55
178
84
56
92
134
92
67
105
55
104
141
98
122
56
151
122
126
67
92
110
55
55
122
111
119
123
120
126
55
124
169
134
37
86
133
105
92
110
105
79
107
169
101
110
58
188
102
139
86
138
149
104
122
138
122
139
162
119
126
140
152
84
92
91
105
139
122
138
91
146
110
100
132
157
127
77
92
77
105
126
148
56
105
98
99
106
67
140
110
67
104
169
92
139
128
55
104
83
126
110
105
103
111
105
99
114
106
105
122
107
58
128
146
86
126
126
110
37
150
134
86
122
146
98
89
105
138
93
144
37
189
79
55
56
92
124
79
130
107
178
77
127
92
92
107
127
73
169
114
138
139
55
81
110
171
89
67
169
92
128
131
55
92
55
67
126
130
122
122
126
92
56
130
107
111
83
123
108
122
152
108
105
105
135
92
92
122
132
110
160
97
105
92
84
58
131
169
84
95
126
56
122
110
145
138
99
126
56
87
91
104
122
93
55
92
138
130
104
138
37
104
124
122
114
69
92
79
138
152
112
110
128
92
55
110
37
80
92
141
120
138
104
56
139
105
104
102
109
107
58
135
115
105
126
101
126
126
69
92
87
167
102
119
127
55
119
55
67
120
92
81
37
126
104
105
120
84
103
114
177
55
178
92
126
93
77
128
139
77
55
110
152
55
86
91
93
92
141
100
94
74
67
122
98
104
67
105
107
105
169
105
92
104
126
112
74
144
138
119
140
77
69
56
67
104
92
67
171
146
94
91
180
55
124
92
74
67
110
140
105
55
110
110
105
110
141
86
119
84
58
139
119
88
138
127
122
92
92
105
74
125
56
58
128
110
126
110
137
126
127
97
152
75
110
105
104
140
127
91
128
37
104
164
93
146
146
150
146
77
93
93
67
105
109
92
58
56
120
67
55
93
119
138
127
103
77
110
125
168
119
81
126
69
126
101
126
92
67
74
122
107
119
99
127
93
56
102
118
101
56
108
130
127
127
37
99
122
97
56
105
126
124
112
178
92
138
126
171
103
55
112
37
146
74
178
144
91
67
92
114
122
109
99
91
55
144
127
110
139
139
37
134
128
125
134
178
158
67
122
93
118
110
67
110
127
110
105
144
169
56
92
55
92
122
138
68
37
67
79
77
130
104
126
182
126
88
110
77
122
55
110
136
84
104
55
56
126
110
146
168
98
104
105
55
56
103
121
104
105
79
37
126
182
92
106
104
127
120
85
106
126
144
79
56
123
148
158
144
99
111
112
146
99
99
107
97
55
146
67
136
120
95
92
104
144
68
109
86
92
126
92
55
127
77
98
92
105
67
134
92
120
69
131
146
122
107
134
139
130
151
167
122
138
86
93
98
92
91
128
92
167
127
55
67
105
107
104
69
169
122
144
83
37
105
93
86
107
122
123
148
37
122
104
110
123
92
168
111
122
139
55
110
86
56
144
92
91
92
93
110
127
144
105
136
55
114
144
164
168
122
107
97
123
105
78
55
139
81
58
146
138
104
108
178
122
105
162
169
128
100
37
99
100
109
126
55
122
135
126
92
58
102
110
121
135
152
139
148
37
110
111
92
92
92
88
67
92
123
144
119
131
58
126
139
128
138
147
178
104
140
114
92
110
152
69
138
99
114
169
74
99
169
169
92
138
92
146
92
104
127
131
92
69
101
86
131
110
132
128
152
118
110
152
79
146
152
104
126
37
122
146
103
177
92
55
110
93
69
110
110
107
112
68
98
104
119
129
111
169
69
69
168
92
55
117
99
56
113
144
127
85
139
138
130
92
136
92
77
122
106
104
37
110
92
84
55
126
105
117
138
126
119
144
79
105
127
110
122
67
110
93
129
97
87
91
139
99
92
128
139
55
67
56
86
55
110
107
110
144
132
69
78
152
112
92
37
130
55
171
138
93
55
55
146
104
56
92
95
37
122
91
149
122
55
104
67
110
144
136
168
168
137
105
152
182
139
69
144
74
122
126
68
144
92
126
139
148
58
99
112
55
92
119
92
136
56
180
122
178
178
79
75
122
107
75
140
132
92
178
98
138
146
119
109
69
93
139
122
132
178
77
138
146
136
58
55
111
169
101
126
144
119
75
122
92
110
122
146
89
91
93
122
139
110
142
125
138
134
94
104
138
134
126
112
97
110
127
111
97
37
126
103
152
152
126
141
132
83
69
67
115
92
67
165
105
158
56
105
122
128
69
122
100
67
134
138
78
67
107
126
122
58
56
98
178
144
152
67
67
104
122
74
146
58
146
137
92
37
127
97
127
92
92
105
138
127
111
108
139
101
89
37
58
56
105
78
37
110
74
130
138
112
119
130
144
131
56
83
169
92
55
127
67
58
108
56
103
74
146
144
56
178
95
111
128
169
138
105
104
117
126
188
130
131
117
127
122
92
169
56
92
83
134
83
126
169
138
144
92
105
126
106
124
124
122
86
130
119
110
122
129
92
149
92
138
122
124
127
110
69
110
37
138
110
89
178
92
126
91
117
132
158
178
107
92
122
138
88
152
114
93
92
126
79
93
138
56
122
126
139
58
97
178
124
131
169
122
126
97
146
123
136
122
104
134
103
56
69
138
84
93
128
122
67
152
122
97
97
69
37
93
104
102
86
122
84
93
93
134
105
58
144
92
67
89
178
37
56
138
95
162
93
37
146
126
122
119
93
127
104
111
93
122
108
67
58
78
79
93
104
109
92
135
92
58
131
104
56
138
139
130
117
126
152
100
114
127
56
126
37
110
158
114
96
103
105
107
55
86
110
135
111
74
93
130
67
126
55
99
110
92
120
92
74
81
92
117
138
55
109
55
126
58
125
98
110
132
67
152
109
58
79
55
152
164
146
132
125
160
93
171
128
55
104
117
55
126
75
74
121
92
111
109
74
101
139
122
71
111
123
110
168
169
56
145
56
130
93
123
110
67
92
74
56
162
134
128
92
91
146
114
104
162
139
127
122
137
55
92
127
97
152
107
127
111
134
56
105
126
92
92
126
126
98
138
105
93
146
80
67
92
67
119
75
122
67
123
134
67
104
104
105
103
83
135
106
67
86
148
110
126
67
56
152
144
58
148
122
55
55
92
93
105
94
127
122
91
67
110
126
93
67
138
104
122
75
79
92
55
136
104
169
136
144
180
91
106
92
68
79
111
92
37
67
136
110
141
126
126
122
119
128
110
146
92
122
55
74
67
152
118
139
37
92
81
109
122
67
78
158
111
127
111
130
111
91
132
123
114
122
97
180
91
37
105
137
104
68
69
74
132
99
167
55
79
139
110
56
140
58
109
145
76
69
138
92
126
122
130
126
67
126
92
99
178
97
118
74
101
91
122
126
91
55
83
122
148
121
144
177
92
93
93
100
139
117
119
169
105
74
92
58
58
139
109
178
105
37
146
178
104
132
165
123
74
126
122
134
102
55
79
68
139
56
104
107
67
55
132
67
146
178
105
144
74
124
58
88
105
110
102
69
126
126
93
55
128
105
138
79
178
56
37
130
114
86
97
79
58
144
119
145
92
128
126
58
144
138
92
58
79
92
115
99
105
86
122
105
178
120
144
67
144
108
126
93
37
138
141
178
132
169
91
97
55
132
56
162
58
67
122
126
99
104
55
92
134
105
92
67
55
104
93
140
67
74
92
103
146
122
105
103
86
55
126
156
58
68
180
93
55
89
98
105
89
126
95
122
99
146
55
55
67
74
110
56
138
138
37
122
115
110
124
77
92
55
69
123
111
92
132
92
111
92
69
93
37
122
125
115
92
126
55
92
109
168
104
124
56
138
127
139
92
104
99
93
140
84
92
67
128
104
74
110
139
100
126
180
67
55
105
93
130
104
74
168
110
92
144
112
58
67
119
67
105
93
55
146
141
93
122
103
92
37
180
84
99
56
110
122
107
92
157
67
134
109
122
126
178
92
111
72
86
55
101
92
67
101
140
138
92
140
69
37
92
93
126
171
127
37
127
55
126
99
128
139
86
92
91
107
55
126
103
129
119
180
92
74
105
69
122
79
58
93
169
120
152
136
140
138
111
69
92
83
97
37
110
118
37
140
55
144
128
55
122
129
92
56
142
84
124
122
108
92
106
152
92
77
107
163
69
93
56
55
69
138
91
92
99
74
101
92
111
146
110
106
56
140
92
151
98
178
110
138
69
92
169
126
93
104
128
110
149
126
152
128
163
56
127
105
67
127
144
92
134
55
162
69
120
93
126
94
108
104
75
134
144
92
152
84
122
91
79
58
167
110
110
91
114
152
120
124
56
141
160
119
92
74
55
138
69
103
110
56
58
106
105
56
104
144
105
104
128
126
99
92
178
86
106
93
105
122
125
145
122
58
138
130
56
103
74
119
88
107
151
118
122
37
132
139
110
104
126
178
126
123
152
87
138
101
138
92
126
84
120
118
139
99
69
97
134
80
140
104
37
122
91
146
58
138
67
124
137
122
55
109
98
105
105
98
114
134
67
55
103
79
124
151
37
140
56
114
132
79
55
111
84
92
108
126
93
86
84
152
92
83
91
130
112
138
158
58
146
138
169
104
110
75
92
158
105
92
98
92
97
93
114
81
162
107
74
91
97
120
104
58
92
92
67
105
136
77
128
145
110
98
123
79
77
144
110
152
128
79
124
111
37
111
92
123
110
110
139
135
127
125
114
158
58
139
105
126
102
104
126
67
91
169
83
114
117
138
126
119
105
55
146
99
122
168
68
56
162
128
93
117
91
104
138
87
158
55
92
98
69
105
37
109
84
127
110
140
139
152
111
109
58
114
109
169
139
140
110
74
119
92
105
127
99
109
122
124
79
67
122
110
93
67
140
95
126
84
92
110
165
75
103
111
128
56
144
86
122
74
93
163
123
84
78
67
180
84
140
122
92
98
111
93
98
122
91
126
75
97
134
127
178
162
103
84
64
79
138
110
86
65
37
139
81
92
126
138
93
178
118
105
146
92
138
169
67
138
55
67
142
139
92
114
119
86
69
134
102
55
93
139
55
144
99
128
77
81
139
55
129
159
79
79
178
124
106
148
163
93
86
127
105
92
92
110
37
131
115
55
55
89
93
139
148
136
79
56
121
109
92
163
56
148
77
105
111
97
92
139
37
149
119
118
138
118
69
98
107
136
69
56
122
131
167
126
152
114
104
122
91
67
93
69
110
104
37
110
128
92
69
69
106
92
117
64
110
67
131
104
55
131
142
122
92
105
118
93
92
81
55
92
180
123
124
127
55
126
123
105
115
92
92
138
180
55
151
89
139
56
93
98
93
37
99
37
140
105
139
86
79
132
92
55
92
99
128
114
117
99
58
55
68
89
56
110
89
56
144
92
92
92
109
56
78
55
99
58
152
55
104
158
67
110
105
67
104
134
118
148
97
122
118
89
56
144
92
163
56
56
128
180
138
99
123
122
139
104
138
92
93
93
58
91
169
74
107
92
55
105
107
88
110
77
56
126
122
122
67
123
123
120
152
79
110
169
106
92
105
103
83
148
110
148
92
119
96
130
100
69
74
92
169
56
67
122
139
96
93
178
134
110
101
152
67
58
122
55
93
138
124
102
91
69
92
107
71
75
122
89
92
92
67
115
110
138
111
55
138
139
112
148
178
134
178
137
55
92
55
111
110
105
55
105
75
77
58
136
93
79
55
167
103
93
67
56
123
104
126
107
144
134
105
152
117
109
55
105
92
86
80
103
126
122
108
163
123
37
178
110
105
126
88
126
86
169
109
92
128
126
84
77
84
105
106
178
55
178
93
74
105
110
95
105
139
93
67
116
109
140
74
125
168
103
58
80
83
68
78
67
74
169
134
122
67
37
108
134
92
111
79
148
134
58
119
95
146
138
55
77
144
89
67
56
109
92
126
107
55
95
126
67
110
128
122
138
135
135
103
110
178
122
151
92
178
83
110
105
110
140
93
89
168
92
137
168
109
199
138
148
67
114
123
83
111
105
37
77
144
111
74
92
67
93
163
75
123
144
146
180
93
99
105
74
145
93
122
69
131
144
111
67
108
79
178
68
128
92
127
81
86
131
56
93
56
67
122
92
178
93
152
105
37
92
97
138
101
55
178
98
92
100
171
77
56
104
104
55
101
147
165
109
92
119
86
126
105
122
58
138
67
107
110
126
56
126
97
108
92
109
79
168
123
110
126
138
86
69
169
135
67
86
55
107
55
141
99
67
102
124
105
124
105
104
139
86
79
83
129
84
124
67
67
107
37
136
102
127
55
56
128
112
167
67
165
69
119
122
129
56
171
178
104
37
145
158
89
93
124
105
124
114
67
122
74
92
104
93
86
37
138
138
67
106
105
119
119
122
93
100
152
139
126
137
69
110
128
118
119
99
109
56
131
138
100
122
110
178
92
105
104
110
68
37
58
130
122
92
122
110
92
92
69
158
58
152
69
75
110
95
92
129
178
120
111
114
126
55
117
130
93
105
110
163
55
92
139
165
105
89
152
68
92
96
160
58
119
105
148
126
138
103
131
101
92
92
123
127
74
91
93
126
89
131
138
160
182
92
55
92
67
99
178
99
134
120
122
178
104
136
178
134
75
93
169
122
146
108
55
73
106
152
92
132
55
111
55
55
87
98
126
105
122
146
138
67
74
55
138
79
136
169
72
104
83
99
105
92
80
67
55
100
136
92
144
145
139
178
110
93
123
55
67
138
111
107
56
105
127
107
138
55
126
110
102
98
152
37
106
128
110
55
85
55
58
110
178
88
178
148
56
67
139
115
139
55
126
83
84
123
105
128
122
37
56
130
105
144
92
104
122
97
110
138
106
93
128
126
131
126
111
124
130
119
104
93
56
56
37
111
139
126
92
110
91
137
67
124
95
67
158
83
138
132
122
139
126
69
106
111
104
111
122
99
127
128
110
101
97
141
55
98
91
152
98
74
127
77
144
126
124
118
93
58
124
104
122
55
139
93
99
83
67
114
163
143
93
110
109
103
110
55
93
144
37
122
88
144
93
55
109
69
91
107
75
151
104
92
67
122
92
55
138
55
77
55
112
140
55
178
122
158
58
144
86
37
144
87
105
99
146
74
81
92
109
122
56
105
93
68
111
122
91
138
126
67
122
130
178
75
111
67
104
169
149
108
69
103
138
126
55
55
126
117
103
109
104
91
146
128
132
127
86
110
89
86
148
171
122
92
146
117
106
93
154
67
92
86
138
86
97
109
136
67
77
56
142
107
104
86
126
178
178
92
139
55
55
79
105
105
56
89
139
69
56
99
144
91
55
138
93
110
121
113
75
105
159
79
122
91
126
111
67
152
92
67
88
140
127
107
122
99
55
140
105
138
109
67
126
77
138
86
55
92
55
92
92
122
93
118
67
169
65
128
104
103
93
77
93
55
138
104
55
152
138
104
127
169
79
109
132
55
167
139
160
95
92
104
55
92
97
139
81
122
178
109
75
111
110
126
128
126
99
114
110
55
97
148
105
129
99
104
146
92
69
142
91
98
146
126
110
169
56
68
126
122
37
79
69
97
58
142
105
138
69
138
126
37
119
67
55
128
110
58
69
122
134
105
163
101
104
162
122
122
89
55
104
55
91
37
55
128
67
67
105
146
92
108
79
95
83
131
123
110
92
144
138
122
105
69
92
130
126
126
124
126
105
56
110
144
163
111
169
56
55
75
127
69
105
105
69
99
117
105
37
102
139
92
119
130
138
105
105
169
107
131
55
93
140
105
105
122
79
140
138
67
139
163
168
102
146
110
123
83
105
79
103
131
86
67
109
139
163
115
55
152
86
122
92
105
122
138
104
104
55
92
136
178
74
93
138
37
77
93
37
126
56
105
126
93
103
178
169
120
99
124
130
104
127
55
109
163
86
102
103
126
146
93
109
109
94
98
131
86
55
119
110
119
92
67
128
37
122
123
92
67
111
124
75
93
119
122
56
178
134
55
83
75
114
122
109
71
77
150
122
119
146
104
127
138
178
107
111
77
138
37
56
92
149
138
92
132
93
110
152
105
69
127
111
107
92
105
128
112
105
67
114
104
37
69
126
77
134
105
103
77
122
110
37
91
128
92
111
122
119
178
110
119
126
146
77
92
152
67
138
89
105
104
104
132
61
134
148
119
56
122
101
86
126
138
93
58
55
95
128
55
104
55
138
128
104
128
104
149
138
92
69
101
104
139
110
123
56
105
119
131
122
119
56
55
123
183
138
158
92
92
122
110
91
93
123
111
93
124
93
91
55
93
152
169
144
122
127
126
110
110
55
134
145
109
92
92
102
142
109
67
75
144
104
105
86
138
152
169
138
138
83
111
171
74
139
69
180
178
98
140
123
104
104
146
126
114
79
111
67
104
145
132
117
37
80
92
128
136
130
37
123
91
86
110
97
144
126
129
106
152
140
91
141
124
92
122
122
128
111
122
127
118
104
127
160
169
104
69
119
138
131
110
107
140
128
136
122
104
93
122
106
138
138
126
68
100
55
55
130
104
69
92
107
55
168
132
140
93
130
67
123
121
92
77
178
67
75
80
37
126
152
94
163
105
67
105
55
111
74
92
92
104
104
126
92
130
56
105
149
67
127
88
126
145
142
68
178
112
103
139
108
171
93
102
107
139
86
110
111
180
114
91
55
119
91
130
92
92
91
103
91
110
92
79
68
178
138
88
86
112
122
165
55
93
67
93
138
115
92
93
122
55
56
128
86
89
169
116
93
169
93
75
110
139
69
92
138
75
55
149
97
98
58
68
160
92
122
135
111
101
69
56
138
68
77
37
144
112
124
86
69
139
69
127
110
79
118
110
140
104
75
58
69
55
119
138
92
75
64
127
156
127
58
77
169
102
56
67
55
199
56
111
56
105
131
139
93
92
92
112
105
107
56
109
92
98
67
55
110
67
110
110
123
104
104
99
55
104
105
84
55
105
114
79
152
126
92
105
56
137
72
139
105
124
56
123
128
86
105
108
109
126
107
162
122
120
122
110
69
124
111
146
99
169
178
138
126
105
37
79
119
131
93
110
141
120
134
136
158
56
165
109
126
107
111
105
55
110
134
117
138
79
126
148
58
171
55
141
105
138
128
37
92
122
91
127
56
165
152
111
92
160
165
99
105
128
92
92
56
55
123
78
55
101
83
79
67
138
98
110
113
139
122
67
55
92
105
37
134
128
68
55
78
93
152
144
67
127
105
119
122
93
99
126
126
138
117
134
138
144
122
100
104
107
107
58
111
138
92
67
55
81
110
124
86
92
138
72
150
139
58
171
64
146
86
104
144
104
105
131
92
105
144
127
105
117
103
69
163
118
119
140
138
105
138
138
77
58
81
123
119
139
105
138
114
67
123
67
178
104
111
93
138
122
146
98
41
123
69
122
67
128
148
144
55
83
105
56
84
110
55
92
138
130
197
152
58
67
126
104
132
139
111
128
140
86
146
69
178
56
122
104
139
74
58
58
93
109
151
93
86
99
89
106
56
92
136
112
110
122
126
126
111
122
55
144
110
105
55
108
165
162
147
128
148
93
58
84
67
163
83
119
97
107
79
110
93
92
110
61
55
37
77
131
92
56
92
56
171
165
75
178
158
124
93
127
74
74
69
93
139
127
56
144
100
112
122
120
128
122
86
110
92
123
107
126
139
112
109
110
83
182
67
144
86
93
126
109
171
128
122
56
67
88
67
104
83
122
67
67
120
109
77
125
58
110
105
99
152
178
158
89
126
86
56
92
178
104
92
121
118
105
92
64
104
138
80
122
119
140
112
83
55
84
126
89
164
111
109
123
122
142
56
168
122
119
104
74
138
78
124
83
101
139
182
124
110
55
131
139
92
58
110
55
56
134
105
171
58
128
146
75
67
139
178
67
127
103
111
91
111
86
139
138
83
55
79
58
128
124
83
119
140
122
119
110
95
104
156
104
110
139
105
56
122
178
92
58
159
37
92
127
37
104
113
67
122
110
93
58
163
93
69
104
105
86
93
89
92
109
130
142
79
162
37
84
144
105
122
92
144
111
55
122
92
119
55
122
111
93
99
55
105
80
77
104
118
74
136
91
92
110
138
140
37
138
105
117
104
134
122
126
74
132
92
69
128
122
104
132
171
92
58
127
93
127
171
56
92
123
104
86
127
99
99
122
58
99
109
149
123
37
123
37
69
169
118
93
144
122
139
103
93
139
124
37
138
58
92
105
165
110
150
67
163
55
37
178
149
37
144
103
117
122
69
92
110
110
67
56
180
101
152
67
91
91
180
92
110
110
55
93
178
103
130
115
115
92
144
105
56
69
140
37
105
158
55
92
127
55
37
107
99
144
56
135
110
68
67
93
178
107
178
129
100
100
55
138
103
93
92
69
118
127
95
138
92
127
110
109
79
78
55
178
91
104
152
93
119
105
86
122
107
105
134
126
55
146
145
111
158
75
79
55
55
74
58
169
109
127
111
152
103
109
146
158
93
55
163
127
69
126
114
93
110
101
124
136
105
37
113
111
119
178
77
104
126
124
101
56
140
125
103
69
146
112
163
92
67
55
104
126
126
83
132
138
56
138
130
92
105
111
158
55
37
144
192
122
126
37
67
83
139
140
138
97
55
74
111
130
119
55
138
67
125
98
134
55
83
127
180
178
67
128
123
77
104
87
74
127
92
123
86
58
107
118
178
104
92
105
146
128
69
55
122
118
58
145
119
110
102
100
101
126
123
112
75
140
111
124
92
122
114
137
58
110
122
97
55
138
67
92
152
92
126
126
139
101
107
93
139
117
126
109
122
110
110
134
55
92
145
128
105
67
83
92
74
92
139
92
99
105
110
138
69
103
77
138
55
139
92
100
119
73
123
130
140
99
56
163
128
148
77
126
93
108
92
122
122
93
123
122
99
124
79
91
79
99
92
67
138
92
122
117
91
55
55
111
91
79
119
55
126
128
123
98
122
93
115
107
142
117
92
105
134
126
123
55
119
69
110
126
55
115
87
92
132
130
91
130
138
37
178
92
160
67
96
105
67
131
136
55
105
138
55
88
55
126
110
138
58
55
77
138
122
131
89
56
119
107
138
68
92
122
105
124
139
55
119
104
109
139
162
91
123
134
55
92
68
67
119
144
78
146
169
111
93
110
119
104
110
105
139
171
140
105
146
110
58
144
158
55
127
104
127
119
93
56
123
101
67
86
138
138
144
79
110
140
169
178
92
180
136
152
122
107
110
104
91
99
120
139
122
103
112
55
127
101
92
126
144
92
137
37
104
69
83
122
128
58
134
105
119
146
126
123
37
105
75
77
55
105
110
138
56
67
138
58
105
169
132
127
162
126
140
138
92
158
178
77
107
55
146
58
92
98
111
110
132
83
67
55
128
97
195
122
138
119
75
37
139
106
56
123
178
92
145
91
119
56
55
100
138
108
146
128
126
130
110
109
168
110
136
138
77
84
127
105
152
55
92
89
110
77
58
119
121
128
141
91
86
104
122
105
92
93
127
110
127
163
138
105
178
171
55
119
92
67
91
67
107
89
122
77
67
88
55
91
105
144
102
126
67
120
122
100
110
74
152
144
56
171
105
74
93
143
98
137
58
127
89
92
79
67
93
122
139
148
100
58
55
126
121
145
92
92
69
139
104
56
119
75
99
158
122
77
79
146
79
103
103
139
120
56
152
110
84
110
103
91
135
92
72
128
163
122
100
134
55
138
130
92
37
56
126
169
86
55
139
99
86
93
110
122
92
69
37
110
56
55
83
128
119
92
146
67
69
127
104
114
100
122
110
122
169
89
67
139
144
139
148
122
77
126
105
111
131
55
128
126
117
136
105
92
55
93
75
110
69
55
92
139
58
146
89
104
37
93
104
131
122
105
112
104
97
106
37
55
138
110
105
137
178
105
120
122
92
75
124
144
105
122
110
140
109
134
138
119
122
96
117
114
135
144
105
105
109
128
124
55
105
138
105
56
105
92
84
140
136
120
37
160
37
58
89
128
138
144
79
126
114
139
110
67
95
138
126
105
89
159
55
97
86
127
86
122
67
68
126
139
178
71
122
153
55
126
132
110
55
160
149
92
110
146
75
96
68
77
105
99
91
104
134
109
107
178
56
105
114
122
126
152
55
67
37
92
67
110
181
128
122
148
144
105
95
121
119
111
178
67
126
105
80
92
110
138
152
96
138
182
61
126
55
93
115
105
122
164
92
138
126
134
104
87
56
124
93
138
123
122
79
119
89
64
92
132
56
139
139
132
158
55
92
79
145
105
89
122
74
69
79
178
127
189
67
138
77
55
55
139
68
105
92
114
162
109
126
127
92
126
104
138
110
109
163
37
163
93
68
92
105
105
92
110
105
55
131
37
164
178
92
55
138
138
91
146
58
75
55
37
119
134
92
152
79
55
75
103
87
156
93
92
138
92
55
122
199
112
101
93
127
110
105
93
139
111
110
103
171
88
123
69
152
105
55
92
125
105
79
96
111
97
55
109
97
84
75
109
110
37
122
58
104
92
139
139
101
178
140
105
125
122
86
101
55
103
110
55
67
69
119
72
93
146
105
126
127
110
132
111
105
104
55
86
92
119
171
123
69
122
100
105
120
93
132
67
37
86
129
69
91
163
122
109
105
93
56
139
93
93
58
56
56
179
55
104
178
77
124
131
146
110
132
84
86
86
148
105
134
92
135
67
140
139
127
105
139
168
81
111
37
58
123
100
163
169
110
92
124
56
37
104
55
140
129
104
92
55
110
93
86
58
122
108
68
138
138
120
79
56
111
122
92
74
127
67
171
55
55
134
83
137
56
148
37
178
139
164
86
111
121
91
98
74
99
178
92
119
105
105
92
104
119
139
74
88
105
128
69
126
87
56
79
105
79
73
99
178
69
92
92
110
141
103
105
92
105
58
105
75
93
67
56
55
105
106
140
140
79
104
127
119
114
109
148
132
67
111
138
104
79
169
91
79
110
58
94
77
124
113
94
178
125
122
58
138
83
37
138
152
128
126
127
178
110
67
178
103
64
78
75
126
80
126
122
118
67
93
105
126
127
112
139
92
144
131
171
144
139
79
67
88
132
79
93
126
91
93
144
110
139
120
171
137
163
138
105
119
109
138
58
91
127
124
124
92
119
68
125
58
113
122
110
130
56
93
107
91
162
37
137
122
123
110
92
98
118
92
127
92
97
139
105
126
138
110
92
141
92
152
120
110
148
122
92
115
110
91
105
146
128
77
55
127
123
139
105
92
124
180
122
37
122
58
56
139
92
74
127
152
152
128
91
114
122
77
119
93
139
127
110
131
99
93
137
144
122
144
122
120
86
118
110
169
111
122
55
119
127
86
104
92
92
92
55
97
92
92
75
128
117
129
91
69
79
67
138
108
130
91
86
91
122
55
79
126
122
162
128
74
126
56
67
99
105
55
92
67
114
115
168
104
92
111
178
93
178
56
178
74
109
105
67
159
67
58
105
110
136
139
110
105
101
114
88
145
74
171
109
84
92
128
105
138
112
93
110
125
85
55
126
67
152
92
128
123
58
138
109
99
111
127
67
138
99
103
124
152
58
109
163
122
93
99
144
103
111
138
110
139
110
104
55
148
122
152
79
92
138
122
96
122
81
56
97
126
55
142
107
110
144
105
37
104
104
104
105
83
167
122
68
91
126
120
93
151
137
94
141
180
148
138
102
103
135
89
58
98
136
61
110
126
122
122
92
91
99
138
109
55
124
67
56
169
144
55
139
106
117
56
83
121
122
188
102
171
67
105
152
105
105
92
83
101
138
123
92
105
89
146
132
139
122
122
37
180
58
110
68
104
101
104
92
132
92
120
68
136
122
138
127
126
122
92
122
105
91
104
128
127
67
103
92
67
92
118
138
86
126
138
124
37
104
92
104
55
67
83
67
140
162
126
129
92
75
178
93
56
103
80
75
109
86
112
109
92
158
106
148
95
128
163
55
56
106
92
138
163
83
110
56
92
138
55
107
55
80
134
58
91
55
110
55
146
97
111
171
169
99
103
104
139
69
55
110
178
110
104
138
105
67
126
86
158
126
139
92
134
78
56
69
58
122
92
93
107
100
137
110
93
92
126
126
115
110
146
123
122
120
109
144
77
75
105
86
92
67
144
67
74
134
139
84
86
178
129
79
97
93
86
112
69
69
105
81
140
136
110
144
115
162
107
55
93
130
122
144
105
112
89
93
178
87
163
106
146
67
128
77
152
55
114
75
127
110
67
106
156
69
178
138
139
139
144
128
134
95
122
68
92
91
95
122
55
105
162
106
158
58
158
126
122
99
144
146
92
55
122
99
138
104
128
138
37
88
79
67
80
79
83
83
122
99
92
67
95
126
105
124
122
104
148
139
178
75
55
132
126
92
134
158
149
144
128
67
138
132
128
92
87
67
55
127
84
92
92
114
105
152
103
128
55
102
100
146
178
56
89
118
92
110
180
113
92
56
98
92
93
110
121
110
77
105
127
144
110
92
56
93
104
67
140
92
75
146
126
77
115
178
123
164
163
110
92
79
93
134
87
103
103
56
119
142
105
77
110
92
100
86
74
140
105
110
146
105
152
105
92
126
134
124
92
69
138
105
135
117
138
92
122
148
132
89
111
152
178
105
105
89
128
56
84
99
122
135
111
104
58
103
122
55
100
144
163
144
122
124
126
92
109
168
163
58
55
92
69
105
55
131
139
129
122
95
93
122
130
84
119
122
93
136
129
114
138
100
93
110
55
69
56
106
134
104
97
152
103
84
126
74
37
127
139
92
110
124
109
168
106
93
107
122
108
69
56
84
92
37
101
110
122
72
122
91
68
97
69
98
139
37
67
148
138
126
67
137
121
128
128
58
107
55
144
110
117
111
92
112
138
152
76
92
130
123
55
101
87
56
141
139
128
104
139
120
169
127
55
106
178
92
128
56
141
110
117
93
131
56
122
123
92
124
37
138
99
93
122
169
67
105
138
91
79
91
111
91
163
110
114
105
92
55
126
132
56
180
140
131
111
91
146
123
123
92
129
92
123
91
110
158
108
92
99
105
105
110
92
146
144
55
55
126
127
144
58
144
67
67
112
58
110
55
37
163
55
139
55
79
171
96
171
109
100
128
55
127
138
138
75
107
56
119
89
110
69
122
140
104
56
67
126
37
105
110
178
93
67
67
139
140
56
105
105
37
88
124
56
146
58
67
138
67
69
152
105
56
104
79
123
37
109
55
55
124
77
55
93
108
92
121
126
127
67
91
83
55
79
93
69
137
55
67
79
58
146
69
67
58
79
122
140
111
105
167
120
41
92
126
123
130
129
105
92
67
138
138
91
144
154
118
86
100
109
144
92
67
67
55
55
55
37
178
178
152
122
105
58
104
146
98
104
97
86
122
87
128
134
37
92
92
56
152
145
127
93
58
118
121
120
91
78
37
75
109
111
37
126
150
153
139
122
127
69
124
55
56
128
91
110
69
110
139
146
120
67
146
160
79
126
109
131
140
55
105
127
104
144
105
126
77
110
122
162
74
122
178
178
67
151
92
138
56
127
121
110
107
110
110
91
138
84
97
74
126
119
92
75
79
37
102
105
99
139
92
119
129
97
58
37
105
105
178
77
74
131
131
103
182
75
56
92
109
37
74
122
92
119
79
122
92
105
167
104
139
74
163
67
142
75
131
122
105
37
123
169
119
92
119
178
128
126
104
89
148
169
37
123
56
123
55
158
89
101
158
169
55
97
79
109
55
110
86
128
180
55
146
87
105
92
119
105
105
110
88
124
127
77
92
122
103
91
171
92
86
139
37
92
126
138
122
127
56
134
105
64
127
86
139
122
93
182
99
150
89
88
103
123
171
104
138
123
137
105
122
37
132
103
79
103
105
127
80
110
128
67
146
56
128
110
74
130
122
86
91
103
92
127
92
55
67
107
127
92
99
134
57
119
115
105
56
146
69
110
56
148
152
126
103
122
99
136
92
92
117
140
92
104
110
87
178
67
126
56
108
126
94
144
169
114
91
109
55
110
79
117
169
126
77
58
142
122
77
55
93
180
86
69
131
112
119
93
67
107
56
192
142
102
92
146
56
122
178
92
56
124
107
139
145
92
37
126
104
99
142
74
105
132
136
103
86
123
122
105
164
132
110
55
122
123
108
110
124
160
75
126
92
114
69
127
86
111
124
75
55
98
92
92
68
109
79
92
55
107
75
122
134
144
92
113
95
93
105
105
93
169
69
178
126
122
110
75
84
163
92
107
93
127
69
122
124
122
109
86
122
58
126
84
122
81
128
138
92
37
55
77
147
92
117
132
83
139
102
169
77
141
122
67
84
86
134
69
132
126
67
37
134
110
126
111
146
99
122
126
55
110
56
105
122
105
139
139
92
98
86
83
99
81
134
108
55
146
102
136
98
138
77
105
67
68
37
178
72
67
100
130
138
152
105
119
122
67
92
136
92
146
122
92
139
122
93
98
55
67
144
138
111
74
97
132
114
142
106
104
115
163
126
119
37
77
67
93
56
104
145
140
37
126
103
152
93
128
110
110
178
92
67
110
75
69
92
179
148
164
120
89
132
79
126
122
107
110
144
122
102
97
55
122
105
145
56
58
107
122
116
75
102
55
127
125
105
110
84
55
168
127
74
134
69
105
91
77
106
122
100
110
132
146
74
138
121
119
81
138
77
111
122
105
122
91
139
140
109
56
67
105
111
131
68
104
152
114
106
138
160
138
56
103
126
69
37
67
67
55
110
86
122
131
89
56
67
56
92
93
123
104
134
56
58
123
78
58
110
37
104
92
124
169
55
105
147
69
55
92
138
158
92
128
55
92
110
122
103
105
140
126
122
104
156
111
104
89
130
56
93
92
37
92
144
105
105
56
149
55
89
126
114
120
145
104
93
97
83
124
98
138
169
123
152
58
146
67
164
126
139
105
37
79
152
128
104
69
122
79
56
160
119
178
69
92
91
134
55
86
93
58
112
81
146
106
123
137
92
168
119
103
122
102
127
123
92
69
55
139
149
92
139
146
55
105
93
152
158
99
79
58
122
108
73
120
199
92
92
169
111
138
146
56
92
126
148
104
99
122
56
104
110
126
114
56
98
89
110
55
135
110
84
151
58
130
105
92
55
112
93
123
56
37
127
92
130
37
130
126
146
78
77
104
110
94
112
58
101
122
121
83
74
146
127
111
58
104
119
92
55
55
171
171
104
110
58
140
147
97
91
125
69
69
102
104
105
180
152
58
110
92
125
110
115
105
110
69
67
152
103
111
110
111
168
109
126
139
123
139
138
119
55
37
123
92
126
80
141
92
79
138
69
104
105
55
139
123
92
169
92
56
93
79
81
119
138
169
138
146
111
138
93
144
93
74
91
93
138
55
93
110
139
92
93
91
72
105
55
152
55
139
110
105
162
127
138
146
94
162
78
56
56
55
169
107
126
97
139
122
119
122
134
105
81
74
158
119
138
93
110
111
55
132
144
138
123
103
178
110
169
79
107
122
56
69
127
92
126
140
58
130
126
122
105
68
122
138
128
61
146
92
110
104
69
123
138
55
180
178
119
58
122
139
99
75
189
99
104
119
67
104
100
83
92
111
78
83
119
126
139
105
91
107
83
121
92
56
77
126
96
138
126
119
122
92
67
122
123
92
105
110
92
148
93
136
100
104
110
86
122
55
55
110
106
122
168
67
131
105
122
138
83
126
92
122
55
105
75
86
138
178
112
89
178
126
91
68
58
126
69
141
79
92
78
55
105
92
120
75
117
91
132
97
92
126
92
105
58
93
56
131
55
128
79
105
164
55
128
122
114
178
92
178
92
98
134
146
74
89
152
121
152
122
112
139
122
102
110
119
178
126
75
110
93
110
146
146
134
124
92
107
104
109
122
128
110
178
88
160
118
128
127
160
122
68
77
56
75
86
122
104
92
76
55
178
104
105
105
56
105
69
97
56
37
86
137
131
93
138
141
168
37
110
104
138
126
122
94
158
104
127
134
117
67
56
110
86
104
92
55
136
67
69
120
108
105
92
92
138
119
97
139
126
178
92
140
92
56
141
134
109
126
119
128
93
55
138
101
111
126
123
92
37
119
98
110
105
109
110
124
109
56
67
74
128
67
140
92
92
139
122
103
75
110
77
92
130
131
169
139
126
110
122
55
126
110
109
97
168
110
178
141
105
128
69
134
142
108
103
107
134
37
153
126
69
122
37
104
110
37
171
102
91
122
103
69
110
152
126
137
104
107
81
69
122
123
56
148
110
92
84
101
138
122
103
127
131
110
131
100
126
55
91
86
55
91
97
180
110
178
139
55
178
104
56
55
169
132
88
105
75
55
144
158
122
126
126
92
93
55
130
67
109
55
110
99
178
56
105
88
37
55
126
122
92
137
56
139
124
124
122
122
92
64
138
127
140
126
110
105
92
105
56
131
108
138
148
139
126
109
122
58
178
126
89
112
122
83
93
119
120
127
126
137
79
77
138
107
158
137
110
92
74
139
100
140
127
105
92
92
139
98
112
55
134
124
119
165
122
139
178
126
55
178
119
78
104
99
128
105
128
69
69
67
111
88
56
37
105
144
144
140
97
110
92
55
67
67
146
37
56
140
55
105
92
58
122
110
122
92
55
120
55
145
58
110
178
126
163
126
110
122
178
105
75
110
75
92
118
126
92
55
152
55
91
145
93
56
169
98
68
110
178
79
126
86
126
84
113
158
92
134
178
58
144
115
92
126
122
110
91
55
148
93
69
58
55
105
107
104
169
67
126
127
122
55
86
74
98
122
105
127
138
152
139
93
93
58
146
139
117
55
104
127
130
110
178
110
84
139
114
130
171
189
97
122
75
68
55
93
137
138
140
124
105
93
139
72
55
68
110
103
122
93
149
105
68
119
108
163
129
55
123
169
92
98
99
126
134
104
74
127
122
98
105
126
178
123
140
55
127
139
121
144
115
99
126
101
55
139
134
67
79
79
56
103
55
169
55
125
123
104
55
126
111
106
142
152
105
110
149
139
119
92
121
152
86
142
79
77
112
93
139
58
107
77
128
149
138
103
105
122
138
92
79
105
105
86
92
148
128
124
105
122
104
127
92
144
110
91
92
158
92
58
97
111
110
55
67
139
98
138
120
55
103
79
37
93
110
37
178
99
122
86
86
126
91
68
107
107
67
92
79
104
123
107
127
138
92
123
86
120
178
55
126
152
92
111
67
55
77
122
78
117
85
104
67
122
109
61
72
134
104
93
93
55
122
137
146
122
171
92
114
55
148
114
104
122
69
138
92
99
169
110
130
93
79
56
122
92
93
67
138
128
69
110
69
104
140
75
145
110
91
105
128
92
109
138
69
115
94
84
171
96
55
144
37
105
111
126
109
77
105
111
92
138
127
99
109
37
105
124
111
86
37
119
99
92
56
88
127
104
67
37
56
110
67
144
92
148
110
138
56
74
67
144
37
104
105
178
92
86
126
138
92
127
137
110
105
110
37
169
81
132
128
128
148
110
55
120
69
93
169
58
128
77
107
119
88
134
140
163
178
169
143
107
122
123
37
122
93
130
104
55
169
86
99
105
74
163
126
55
152
104
67
110
124
139
168
55
86
92
97
58
67
128
110
132
105
138
110
138
146
123
110
122
56
93
102
146
144
110
110
122
138
92
107
92
105
117
92
126
107
105
92
126
37
99
92
175
104
122
104
122
92
77
83
144
126
58
125
126
115
111
67
67
140
107
107
56
79
55
126
95
55
105
178
138
99
69
91
55
56
97
165
115
136
169
118
140
164
96
92
128
119
126
104
108
67
138
104
127
126
86
122
55
126
104
125
37
92
93
138
92
100
92
169
106
91
127
55
55
77
58
136
119
144
139
99
74
126
120
105
126
178
114
104
86
148
55
126
126
110
110
128
92
69
109
91
55
128
55
91
136
37
74
56
67
75
99
92
84
123
117
67
93
103
178
119
127
105
140
67
122
138
91
164
110
81
69
124
141
126
74
83
110
99
86
126
128
126
128
124
86
136
111
93
112
101
104
99
140
97
111
110
138
169
146
55
158
192
152
92
97
122
163
71
122
105
169
122
58
83
138
107
122
77
111
132
56
127
104
92
91
91
103
123
119
126
126
79
74
55
99
104
101
178
120
137
97
136
121
107
37
55
117
131
55
86
105
79
92
138
55
56
55
158
93
142
124
110
124
93
101
101
114
123
112
109
91
55
73
95
128
127
122
81
177
138
105
119
55
58
56
37
138
144
152
79
92
92
56
92
128
55
168
138
86
124
138
197
79
168
105
93
168
56
92
77
72
58
37
119
104
93
139
93
128
93
75
93
137
86
69
88
92
105
92
92
55
131
86
126
122
144
99
122
55
122
126
146
104
110
122
110
126
58
126
100
169
77
104
111
93
71
169
178
127
167
122
55
144
55
92
55
105
123
55
67
126
58
68
55
97
122
92
55
55
122
126
138
123
92
55
91
113
127
127
134
93
169
122
67
105
110
111
56
105
99
124
124
92
138
55
81
169
106
101
126
119
55
110
92
58
122
101
122
69
130
58
110
122
109
180
105
160
56
55
84
103
83
152
77
93
110
128
118
104
56
107
168
106
56
123
86
58
55
142
74
134
69
126
55
131
56
104
105
138
93
110
93
69
119
126
91
92
55
69
74
67
118
67
99
92
78
55
152
56
92
122
58
144
178
102
134
104
104
112
105
67
110
95
75
109
83
87
110
84
99
74
107
67
67
77
93
110
92
169
128
178
123
123
67
138
92
162
144
68
152
169
100
56
110
146
138
138
104
55
92
67
124
171
122
126
139
123
124
122
67
95
164
127
165
146
105
128
126
75
138
110
55
89
95
55
86
131
93
178
137
109
152
56
92
127
64
131
37
67
55
125
100
37
131
103
138
67
152
146
110
169
110
126
109
92
55
138
58
165
68
141
67
58
130
92
105
107
110
92
109
83
132
110
117
128
146
132
163
100
127
67
128
107
126
126
163
92
67
138
126
112
56
107
107
107
138
127
119
68
144
55
101
92
102
93
67
134
92
138
127
69
86
144
128
92
138
115
110
56
55
105
138
92
143
108
110
75
103
110
126
92
110
123
113
108
138
72
67
104
128
115
144
92
130
139
105
136
125
105
109
92
88
92
114
103
164
79
37
100
126
93
144
120
108
58
77
126
56
111
168
98
92
138
101
78
144
58
56
104
67
139
122
103
146
119
56
58
192
101
93
178
127
139
111
158
92
130
122
86
107
79
104
67
105
178
107
105
139
55
69
128
92
132
68
67
137
112
67
55
95
58
105
111
112
139
77
127
77
56
79
144
93
105
169
110
37
80
91
111
37
104
92
127
77
148
123
178
164
105
130
111
55
107
56
142
111
178
56
134
152
133
148
107
104
105
110
128
55
79
110
92
148
78
103
110
86
67
138
58
112
77
139
132
104
55
136
93
102
122
37
105
124
99
122
105
112
92
180
92
107
119
127
127
124
138
83
92
111
109
93
83
93
128
152
127
115
112
138
84
92
178
122
79
188
134
110
55
55
69
92
86
127
134
56
105
105
105
86
97
56
37
75
128
37
146
104
139
138
83
94
105
110
75
95
139
138
84
127
101
93
110
74
92
86
152
72
58
37
145
69
132
105
144
92
123
134
74
177
137
55
152
55
56
178
138
92
124
89
132
122
152
119
55
37
105
97
110
145
37
139
37
92
163
105
164
67
110
126
119
152
55
86
110
75
74
67
128
55
58
119
93
110
139
74
55
156
92
104
55
114
74
67
92
78
178
127
105
75
139
144
56
146
69
98
92
139
79
67
99
67
92
104
122
55
152
145
99
152
92
178
140
67
86
105
110
144
122
110
110
109
75
109
138
92
93
58
83
92
75
74
69
146
139
105
55
121
123
110
105
144
106
136
110
105
56
100
86
98
122
165
55
145
146
92
138
103
58
131
138
131
107
110
110
110
178
138
95
99
122
92
92
69
162
75
92
115
93
120
169
152
134
139
110
93
92
93
139
92
122
109
158
119
77
93
119
123
141
37
122
93
138
77
92
112
92
112
126
134
126
168
83
122
139
126
139
122
137
55
131
119
81
69
56
122
165
105
109
125
112
55
139
91
56
134
144
92
110
126
55
93
130
110
140
56
119
138
100
74
92
178
67
162
105
68
122
110
163
86
79
92
104
127
105
100
104
91
103
83
110
102
55
56
152
101
122
146
79
112
104
68
115
127
110
95
91
127
130
55
113
119
67
84
115
92
178
110
123
79
91
77
103
67
58
104
152
127
104
130
56
91
110
92
138
142
75
119
110
88
92
55
146
55
123
86
141
127
99
97
109
122
127
37
92
37
139
58
122
105
169
88
124
56
117
106
163
101
119
119
127
119
56
148
92
130
152
105
178
83
56
122
110
126
144
57
92
140
69
107
99
122
136
152
126
55
77
122
104
110
107
111
110
119
104
126
75
72
58
55
127
56
130
111
123
110
75
123
92
78
178
138
105
101
122
112
88
86
120
98
139
111
58
110
77
126
104
56
138
67
86
105
100
56
134
67
126
139
83
69
110
107
69
114
68
55
99
138
92
104
93
92
105
76
111
92
138
91
68
67
91
105
122
69
138
55
56
138
169
137
110
97
78
56
171
77
69
86
37
180
132
92
112
68
178
110
122
110
131
92
104
180
55
140
81
92
104
37
112
144
136
162
92
169
77
122
117
127
92
197
122
83
67
134
114
55
139
112
140
138
169
126
134
128
119
74
169
99
108
124
126
92
92
37
104
83
67
119
119
140
127
55
55
171
147
37
152
75
138
111
123
104
67
168
104
131
68
95
146
56
86
69
92
55
56
99
93
178
110
104
74
92
92
99
83
93
92
152
178
148
123
114
77
93
107
105
83
144
122
124
110
68
128
105
157
144
74
180
91
67
126
178
112
92
138
140
139
126
110
126
142
80
130
69
56
134
55
89
91
78
144
124
127
128
189
92
126
138
122
136
146
136
112
56
140
146
147
69
67
56
145
122
144
112
144
152
91
92
55
169
105
99
122
92
94
171
74
144
139
104
123
84
171
114
103
178
67
71
92
178
146
71
37
138
103
92
55
67
104
55
92
134
92
92
56
122
91
83
56
92
104
104
138
110
93
167
56
55
121
55
58
99
99
55
37
122
138
55
83
105
144
84
104
139
92
83
156
126
132
109
123
114
100
132
67
98
55
127
92
93
103
125
178
167
138
168
111
105
69
126
103
127
131
138
138
96
180
67
126
67
58
55
169
93
126
107
93
110
122
67
110
67
88
165
55
169
131
83
146
128
127
168
75
160
79
79
138
92
92
79
139
111
67
75
132
37
86
93
56
110
56
55
127
105
79
152
131
105
126
144
105
146
104
55
68
127
109
138
138
93
138
56
125
140
111
134
37
86
163
92
98
147
105
169
56
79
58
128
83
106
92
144
67
110
99
79
92
126
138
108
107
75
93
92
55
55
138
112
169
169
123
123
139
55
119
55
67
131
127
117
178
67
97
55
178
107
123
109
122
129
56
69
138
168
55
144
92
118
92
163
55
84
111
109
104
104
129
168
92
122
117
148
130
152
126
110
92
138
123
92
105
107
89
122
126
128
55
137
122
110
111
110
145
67
136
148
112
37
151
67
126
83
104
127
152
139
124
108
99
93
123
171
126
126
178
101
79
110
137
139
101
123
103
83
110
56
105
83
136
56
128
138
92
140
92
136
86
111
138
145
77
101
37
128
111
67
92
130
78
138
178
140
110
138
139
105
37
86
125
124
56
110
137
105
91
122
129
110
55
55
122
104
127
171
92
93
105
92
127
137
56
103
130
126
106
138
92
110
92
56
92
122
104
95
55
120
162
104
86
92
107
122
123
81
123
93
123
131
92
111
128
112
92
79
91
67
128
37
178
99
108
92
104
83
85
122
171
77
114
135
55
117
110
67
148
146
107
56
109
110
139
99
152
69
112
79
55
103
110
148
177
128
104
109
124
91
134
109
128
118
102
104
111
132
169
83
139
79
95
79
92
97
130
87
102
56
169
105
110
148
162
110
131
136
92
88
122
92
55
134
109
122
100
58
122
199
105
77
75
58
77
105
92
124
127
127
92
149
197
111
98
136
128
126
168
128
92
93
55
109
69
138
122
178
81
122
146
146
134
119
106
114
102
92
147
104
55
110
146
152
139
122
55
91
142
69
93
178
92
134
55
56
69
123
55
144
122
152
134
67
84
74
113
111
138
78
105
67
105
199
105
128
178
168
122
134
58
69
55
102
146
148
77
37
67
92
37
138
148
127
138
112
138
129
127
131
124
127
58
169
37
56
92
114
101
138
110
86
150
74
58
138
132
92
93
127
67
92
109
146
106
93
108
56
144
84
92
107
126
92
123
178
126
58
67
74
91
178
99
169
67
105
126
126
56
69
58
123
111
91
119
122
105
58
119
122
122
127
126
152
178
152
109
78
107
92
94
105
74
105
91
92
89
105
64
107
138
122
171
131
122
136
105
110
127
103
67
92
84
92
117
37
125
55
111
75
79
162
144
145
127
148
79
110
123
74
126
171
69
106
71
56
67
126
122
56
122
107
104
146
140
110
148
106
110
146
140
109
86
109
75
92
55
55
152
92
37
69
144
74
123
154
110
74
120
68
152
93
110
118
67
67
74
105
97
127
37
126
139
124
75
178
110
139
127
105
180
77
58
55
74
138
55
111
147
92
126
92
110
127
104
103
97
56
67
122
84
93
147
136
97
138
67
139
104
93
100
109
86
138
92
169
124
58
144
111
196
132
91
77
56
56
138
122
110
105
83
107
122
79
131
129
105
117
152
86
102
87
104
138
168
138
127
68
110
104
140
58
94
106
162
123
56
153
105
110
134
56
58
120
138
110
129
138
128
69
92
105
138
99
138
92
67
171
93
126
110
146
93
37
83
109
69
91
123
122
171
128
105
98
146
122
92
75
112
136
105
91
67
92
56
127
92
130
93
112
55
152
192
105
110
178
122
69
122
110
67
123
110
98
69
127
74
171
93
122
93
114
105
111
126
99
105
119
67
55
146
91
55
146
119
101
58
128
134
105
103
131
128
67
146
139
111
139
110
92
134
92
126
91
171
55
55
105
144
139
93
64
106
91
64
127
93
93
83
169
79
107
126
122
77
105
171
105
56
91
55
110
58
138
126
144
92
126
152
136
105
105
93
126
129
110
122
92
67
152
55
110
178
152
37
126
67
76
58
55
152
68
92
108
104
77
110
114
126
58
138
104
86
105
140
132
114
55
154
55
140
69
104
95
109
55
55
99
135
58
75
138
75
162
58
55
93
56
110
55
92
37
169
69
92
99
111
139
138
126
110
56
83
122
138
122
93
89
67
107
77
67
105
92
114
110
69
142
139
135
91
119
80
89
122
107
199
83
105
55
111
127
69
91
105
103
126
86
91
126
139
61
178
122
152
126
86
137
171
139
111
100
112
55
144
152
83
86
124
147
98
134
93
118
104
110
127
77
92
92
110
110
144
123
92
110
80
124
37
121
127
140
163
111
106
126
109
77
58
119
104
106
105
69
110
110
55
147
126
58
55
144
77
130
74
93
141
93
69
158
56
67
138
144
119
138
138
58
79
105
131
105
56
68
55
136
126
92
127
127
128
126
68
92
68
55
122
92
92
109
104
55
139
134
107
122
67
102
169
114
122
138
86
103
98
67
111
69
91
110
128
93
109
105
114
162
127
92
169
138
111
178
37
104
69
79
55
95
92
127
158
139
126
144
37
37
55
67
126
158
93
134
97
128
104
76
110
110
168
131
171
126
178
74
67
104
55
92
84
104
169
55
104
69
126
105
162
97
126
178
127
100
126
55
120
92
105
122
92
124
92
97
104
131
91
180
144
124
74
144
146
125
167
92
110
105
126
92
58
104
152
140
122
127
122
118
75
188
136
131
126
67
55
131
115
148
74
138
168
124
84
171
58
138
135
128
89
93
69
137
140
126
163
139
126
152
104
110
92
110
114
92
99
138
88
131
110
160
68
92
131
102
67
144
99
110
79
97
100
139
169
119
119
146
37
84
103
118
74
55
126
105
165
92
147
156
105
112
152
67
92
120
127
117
122
130
119
119
127
79
97
111
180
127
92
137
74
92
55
55
139
126
127
108
119
104
105
110
138
86
138
92
69
95
110
92
152
77
75
131
99
128
92
105
58
126
139
118
111
98
169
93
105
97
127
110
106
152
69
195
92
58
119
92
77
140
122
55
93
55
77
134
112
67
144
134
122
95
140
138
92
68
69
138
110
92
55
58
142
140
124
122
105
146
110
117
76
92
148
86
119
123
168
101
192
139
37
144
165
105
111
138
68
86
92
105
91
105
86
144
126
95
86
177
171
100
93
122
58
56
84
67
127
109
55
138
134
37
67
55
122
138
163
110
125
37
119
79
122
122
105
55
75
56
126
122
103
123
119
122
111
114
178
93
67
128
178
122
55
86
131
152
144
144
122
112
101
56
69
122
114
128
140
152
103
138
91
84
103
112
110
97
117
116
110
178
92
135
99
135
140
108
83
146
94
128
109
162
148
83
110
81
58
168
139
92
158
104
152
91
110
131
109
110
120
110
139
98
119
114
58
144
128
126
58
127
131
92
109
105
92
126
99
86
105
139
93
79
69
122
171
92
105
55
101
126
91
104
86
105
145
105
92
105
93
64
109
84
110
169
67
122
127
92
93
126
67
139
147
126
127
92
79
78
77
67
67
105
92
84
146
152
110
110
139
138
171
122
105
104
76
92
103
160
55
67
69
58
138
123
118
122
100
94
37
92
56
93
69
92
119
128
119
135
93
110
146
110
169
98
126
152
127
105
92
86
56
105
101
67
128
107
77
69
93
104
75
122
95
152
169
67
136
107
110
148
55
89
56
128
122
92
126
144
91
99
105
127
139
69
134
91
93
69
110
56
104
75
126
56
118
146
64
105
122
99
91
101
152
119
75
124
67
37
111
126
178
126
110
105
55
104
141
148
110
103
101
138
139
110
105
55
128
107
120
91
104
126
75
140
124
111
117
171
55
79
134
115
56
122
92
164
135
67
138
122
178
86
84
55
93
100
92
74
93
56
169
105
99
122
126
126
171
69
56
140
95
180
128
109
122
95
124
134
106
140
112
93
138
55
127
138
89
124
110
144
160
100
58
93
55
110
126
79
130
138
105
137
178
124
73
75
110
122
134
69
86
119
79
108
79
138
92
67
93
91
58
86
149
138
112
67
67
55
79
128
111
93
79
178
145
128
104
109
68
58
55
75
149
110
138
168
138
91
55
110
55
102
138
178
124
55
112
92
105
131
126
148
123
132
109
92
68
92
102
136
119
56
127
138
55
55
102
134
55
92
104
122
139
126
126
106
86
105
128
138
86
178
105
75
117
75
84
128
131
86
91
154
152
126
126
140
74
111
126
178
56
105
98
128
124
105
91
128
107
168
86
122
105
69
164
91
93
93
56
99
110
158
136
119
122
105
146
106
122
110
95
104
122
122
56
122
178
55
102
83
55
107
109
67
138
92
79
79
122
100
110
126
79
58
107
118
100
178
110
83
104
127
142
111
75
126
92
111
134
138
99
55
93
107
110
100
134
92
104
67
112
69
126
67
130
83
109
58
37
37
110
109
105
55
138
121
139
122
158
67
126
134
138
80
122
93
151
104
139
128
75
105
178
105
122
79
110
126
92
77
122
119
152
123
105
78
138
114
101
92
144
69
138
126
138
127
98
37
127
111
146
92
56
92
132
126
114
110
55
100
119
67
105
138
89
122
104
109
108
93
92
136
169
171
86
79
99
55
110
55
114
93
124
152
88
139
95
97
127
92
99
69
139
56
118
110
134
58
119
96
55
163
37
140
139
119
88
149
122
55
103
88
91
119
67
146
77
107
107
105
146
178
58
79
67
128
149
79
111
126
169
56
55
109
77
152
92
55
148
92
199
122
122
104
56
37
144
67
137
86
168
139
92
37
109
86
105
178
103
92
92
123
144
77
115
140
92
95
126
98
37
55
110
138
137
112
67
111
141
126
122
128
101
91
91
105
146
55
130
138
122
83
92
102
69
163
56
140
138
146
127
58
92
178
136
138
114
145
58
115
55
107
92
122
126
79
37
134
74
100
126
75
105
37
178
37
144
37
139
104
138
58
119
110
127
132
103
92
127
105
122
58
99
89
110
64
120
78
127
126
127
142
126
89
139
55
139
134
79
101
92
93
162
109
105
107
123
74
83
58
37
144
104
67
56
138
92
180
92
56
182
171
138
69
85
138
145
110
169
152
144
112
146
146
104
92
67
119
75
55
151
125
178
118
55
58
86
111
127
135
127
134
110
171
123
146
78
55
80
122
103
118
103
124
110
122
56
146
139
144
55
168
105
151
109
86
169
103
55
180
92
101
89
110
69
97
99
119
139
178
37
146
95
138
160
140
126
86
37
156
117
81
122
109
105
107
104
69
56
93
122
93
132
144
103
58
124
165
55
152
56
69
126
89
55
120
37
124
123
135
67
55
158
67
144
117
111
103
78
127
74
126
92
122
141
110
138
110
128
168
107
92
91
58
105
117
56
104
86
93
55
104
58
56
103
69
76
146
92
110
104
56
140
56
89
97
99
126
111
117
67
86
55
98
69
124
131
178
158
109
77
69
92
92
180
86
92
126
130
92
114
122
78
162
69
83
127
37
127
143
136
92
126
91
77
126
92
92
107
107
67
128
103
64
137
79
104
122
122
74
55
98
110
110
104
126
109
110
138
58
93
128
126
132
37
107
86
152
69
109
92
138
105
139
112
56
55
152
132
105
87
81
111
169
178
92
58
126
76
137
102
92
55
91
69
120
105
113
107
146
139
75
138
178
127
126
138
122
77
117
119
37
67
138
109
122
145
56
130
55
158
92
105
123
127
69
58
145
99
103
92
110
58
86
137
96
122
105
111
126
93
126
104
105
110
93
77
107
109
178
92
146
139
55
146
104
178
71
127
83
111
122
105
127
178
89
56
55
92
139
137
92
126
92
118
132
105
138
74
128
126
107
102
77
110
109
58
130
178
77
86
56
178
110
86
171
160
168
124
69
127
112
79
127
122
127
126
110
130
92
122
104
138
55
122
103
138
119
126
113
67
178
110
178
97
178
107
92
99
91
93
103
126
69
67
92
110
55
144
165
92
67
92
69
128
110
79
120
126
92
79
117
89
141
168
91
91
79
79
86
120
127
91
67
105
148
92
107
80
178
86
55
122
152
67
138
67
67
111
111
169
139
122
120
58
104
77
97
143
119
74
103
126
58
86
98
58
158
95
110
121
138
139
123
37
64
55
84
56
56
110
111
126
146
126
138
122
122
67
92
178
105
144
92
102
138
92
111
117
105
119
111
119
107
75
122
139
74
97
92
92
91
110
107
105
163
91
55
69
152
93
37
163
58
105
79
169
138
110
128
105
104
91
97
92
104
109
67
158
122
139
122
105
122
109
105
129
122
129
122
92
136
128
138
178
148
136
107
150
56
110
79
146
104
139
80
37
55
119
91
122
171
91
107
127
86
102
111
104
93
122
117
163
139
124
76
98
152
136
92
74
107
138
67
103
167
91
104
89
56
104
92
169
56
136
123
102
37
108
55
115
55
124
109
89
88
98
106
55
55
127
56
79
126
111
95
112
55
138
74
140
126
56
152
135
110
126
138
119
112
79
139
105
111
89
93
127
58
58
93
138
110
111
95
178
92
56
134
93
55
103
107
67
91
87
56
178
122
112
71
119
97
79
110
92
159
103
127
107
138
55
114
94
58
103
97
56
126
111
126
139
93
122
93
67
74
84
168
164
92
56
137
107
92
67
138
123
93
123
67
67
158
91
55
92
138
110
119
93
92
127
114
165
79
93
67
140
126
120
105
126
107
148
55
122
101
122
130
97
144
55
67
105
93
55
139
58
143
105
92
126
69
105
79
126
126
104
125
55
97
91
105
68
126
86
138
103
110
105
139
128
146
122
122
92
55
126
110
75
125
37
86
79
98
37
124
92
178
92
92
107
139
67
152
99
111
110
169
56
107
68
178
108
99
77
122
178
140
55
91
58
148
110
79
107
67
77
150
58
37
119
100
58
56
122
122
79
85
123
140
92
138
103
79
139
69
104
105
75
171
138
55
138
86
79
128
86
178
104
136
103
67
69
102
84
55
110
55
97
138
138
69
124
119
105
110
99
93
126
58
134
93
105
126
55
158
37
55
69
104
105
165
104
91
93
56
152
119
55
84
75
83
140
92
105
89
126
144
112
104
137
110
69
92
105
138
171
126
139
75
123
139
84
56
136
146
180
106
67
74
146
139
123
91
99
55
92
123
134
136
58
92
110
79
178
74
105
58
141
144
119
127
110
114
128
92
92
146
168
67
93
180
178
105
92
93
145
87
110
138
152
138
119
105
100
128
124
152
101
86
75
109
92
107
97
104
99
86
160
99
102
119
79
68
37
178
104
126
89
131
92
131
92
109
131
138
92
148
79
83
126
111
91
152
104
110
99
105
125
105
165
103
122
127
110
152
75
55
110
75
122
74
83
55
105
126
123
92
105
132
136
131
69
126
122
55
152
75
163
122
105
123
55
128
126
122
92
104
121
146
101
140
55
130
138
58
93
84
92
122
56
93
55
144
97
58
122
145
131
144
55
171
79
163
86
93
130
55
69
163
122
122
37
37
55
92
101
55
188
84
69
105
55
122
144
178
163
58
55
152
91
92
55
123
163
162
126
140
121
110
152
139
105
134
138
122
114
93
55
85
124
37
123
93
124
128
148
138
58
58
92
128
103
169
110
93
55
105
92
102
146
114
152
152
114
55
56
93
92
91
111
56
37
56
169
92
67
92
122
104
55
132
55
93
58
158
127
126
105
107
126
93
126
110
146
92
122
100
89
107
77
107
126
74
139
131
95
93
55
86
105
126
124
140
105
169
83
151
126
92
103
109
69
79
169
123
94
132
127
152
178
138
148
105
93
132
84
98
110
139
123
92
138
122
169
139
129
108
122
58
121
105
146
92
92
92
131
126
140
93
92
107
67
138
91
117
126
55
127
105
104
110
178
110
93
58
139
104
86
55
55
124
169
124
128
57
169
86
105
92
124
128
122
68
110
122
55
148
127
165
105
92
92
56
123
138
126
123
140
144
128
144
101
136
86
110
56
157
123
93
92
93
56
78
132
178
103
140
91
56
105
55
110
132
103
132
55
144
109
55
107
92
81
91
69
95
122
67
91
105
178
109
148
139
169
37
37
105
127
95
78
126
104
107
171
136
55
58
122
89
74
93
105
55
158
140
178
98
92
69
160
37
126
56
146
55
92
79
68
111
122
69
56
92
67
178
134
122
92
104
142
93
126
92
138
110
148
119
92
96
105
103
119
123
146
103
127
110
55
140
67
87
92
123
100
37
126
126
128
105
110
92
122
107
178
93
110
111
123
58
86
122
146
105
144
92
105
37
156
139
124
152
131
86
56
92
105
126
56
69
74
55
77
168
74
140
105
138
104
139
56
168
95
130
79
92
55
152
69
122
162
37
92
110
138
93
55
107
127
91
37
91
104
105
86
131
103
55
92
138
92
169
69
122
114
110
110
107
127
37
55
124
123
127
138
128
77
144
111
144
131
132
126
92
86
137
127
146
93
122
74
106
79
182
56
103
106
75
180
88
110
92
92
126
107
110
91
127
107
128
93
110
104
55
97
91
122
104
138
110
110
110
37
122
126
93
92
67
99
55
127
55
122
126
112
41
105
146
110
167
136
178
188
67
115
180
55
91
143
92
77
104
92
138
55
68
79
105
122
104
110
55
37
101
122
87
105
99
79
68
107
86
126
91
169
75
105
111
178
138
128
88
139
75
137
111
126
138
92
67
138
110
104
122
93
84
37
105
56
92
126
163
109
99
122
56
105
81
169
105
55
104
56
111
55
104
126
55
37
104
122
149
55
105
86
37
86
138
146
98
132
106
69
112
93
182
98
105
37
122
67
115
126
139
122
84
122
67
77
99
178
163
67
75
94
74
118
118
104
92
152
163
104
152
110
77
126
92
178
127
75
138
163
92
178
68
115
55
95
144
92
88
128
146
158
102
91
104
103
105
138
107
92
110
130
74
167
55
119
92
146
92
77
91
88
167
100
178
109
86
123
178
109
105
146
92
92
171
110
138
169
128
139
69
122
84
110
79
107
86
56
75
69
114
126
99
55
163
128
123
68
169
123
55
99
110
139
178
119
140
92
93
130
56
74
92
138
56
121
144
86
86
111
37
139
103
106
138
105
138
139
37
144
101
126
111
58
111
55
138
75
127
127
132
199
69
58
104
56
178
136
110
92
119
144
178
84
93
86
146
83
140
92
128
126
109
55
138
126
131
118
110
126
119
93
107
92
105
138
92
126
139
123
123
78
152
93
105
92
123
144
130
83
127
96
120
55
126
132
55
92
58
169
144
123
69
69
138
138
178
139
160
104
104
79
92
132
37
58
138
93
138
81
159
114
105
74
142
105
55
88
128
110
91
146
86
97
139
138
127
56
128
121
146
178
67
126
67
178
119
110
123
92
126
122
99
55
97
58
55
105
125
58
110
107
75
122
104
94
128
169
115
123
138
140
79
140
165
111
140
104
146
92
58
144
100
110
123
75
68
122
158
96
55
152
92
77
178
91
128
105
122
126
110
134
123
152
123
110
79
104
56
140
86
79
131
128
110
124
74
69
109
126
95
144
132
92
37
180
102
55
104
84
111
92
104
130
55
74
129
77
145
93
98
126
178
101
115
105
145
110
107
110
88
79
79
55
105
144
111
122
59
55
138
74
93
103
164
138
102
56
124
122
122
85
134
91
77
112
152
92
37
126
120
128
134
122
178
55
55
104
55
58
128
122
104
119
123
99
139
119
110
122
107
102
127
92
92
126
162
169
145
98
126
107
56
167
104
91
83
152
37
77
83
77
67
128
120
138
79
102
126
112
104
89
126
138
178
110
104
126
134
80
165
96
92
75
125
124
104
146
130
178
169
126
128
122
101
56
95
85
144
110
104
95
139
192
140
122
55
122
92
100
109
178
152
91
168
110
110
37
128
106
126
119
93
139
169
55
105
79
104
122
132
104
99
168
92
160
68
122
126
140
122
117
110
101
58
56
79
92
56
107
117
58
67
152
92
56
67
144
81
108
55
93
146
58
120
122
119
69
121
169
92
79
119
124
69
110
144
94
146
178
92
110
105
69
109
139
104
55
67
97
148
123
127
107
119
104
67
58
165
67
144
120
178
147
55
93
178
93
105
92
95
68
55
91
98
58
110
139
100
168
160
131
114
109
86
75
117
162
134
92
77
178
104
122
55
92
67
55
37
93
168
122
126
55
104
169
58
55
134
55
110
127
68
127
138
119
158
146
162
37
128
163
109
67
132
56
135
127
104
127
98
109
126
104
131
104
160
98
122
92
126
93
93
178
123
112
105
138
55
98
107
182
128
105
92
95
124
37
105
78
83
127
69
158
37
110
93
75
169
92
122
122
107
97
152
158
151
152
98
138
110
131
122
55
109
105
107
132
178
144
138
152
152
134
171
104
104
55
130
110
139
110
56
138
58
127
132
81
138
37
160
92
138
122
55
55
106
110
99
124
144
58
178
105
106
117
103
122
138
105
152
92
92
138
136
99
77
92
105
104
104
67
105
140
121
92
136
58
67
139
144
122
107
92
99
131
93
91
56
99
77
67
110
102
86
151
178
146
122
93
105
119
101
110
146
178
37
67
109
92
37
92
88
138
156
92
55
178
146
104
138
128
125
122
93
92
104
168
105
110
105
91
126
92
69
180
139
56
84
55
105
119
37
105
91
55
126
144
122
84
110
126
92
152
97
55
123
55
146
93
126
91
58
128
92
152
91
109
122
159
122
83
86
139
86
91
67
119
101
75
84
139
92
105
67
152
110
124
55
132
67
74
79
139
127
122
107
122
92
146
169
105
126
139
92
100
110
120
84
139
86
140
127
162
109
111
98
56
178
136
92
55
146
145
104
123
92
67
134
144
74
107
80
109
126
58
178
122
99
144
105
99
119
134
111
130
139
92
67
105
146
81
163
111
140
95
144
162
126
92
120
110
111
37
37
92
144
92
110
152
104
97
105
126
108
142
127
107
109
138
148
127
69
112
140
102
126
124
120
37
56
140
101
126
103
55
58
119
105
167
164
55
93
93
135
107
93
108
139
83
93
163
105
91
178
119
56
138
152
91
103
137
127
107
55
162
132
146
178
128
110
56
122
94
110
104
55
55
58
67
55
144
99
106
110
95
67
122
93
92
126
69
105
92
103
69
55
126
85
104
138
104
152
105
77
138
95
178
92
68
138
74
127
56
93
144
140
99
92
81
86
126
92
120
92
119
91
178
77
122
130
55
103
93
105
188
127
69
139
67
188
126
91
92
171
122
114
55
180
135
137
139
91
37
37
94
104
110
67
104
139
103
93
108
107
55
138
104
79
113
178
144
67
126
179
148
107
160
138
68
104
83
134
137
93
111
111
56
126
118
97
109
91
127
117
83
74
135
89
103
92
126
92
122
67
107
168
105
104
130
97
147
91
69
122
87
58
55
67
75
55
182
77
55
122
126
128
91
123
104
139
144
69
107
91
126
58
55
110
126
152
128
122
110
55
79
37
180
86
97
107
67
104
111
131
89
138
99
135
67
105
134
128
107
74
110
122
92
37
122
37
92
110
132
92
138
122
158
111
137
103
69
178
110
56
126
126
110
110
169
105
37
55
100
121
91
92
55
83
122
110
134
93
138
122
104
110
110
75
146
97
68
122
55
127
168
92
117
138
93
84
86
75
101
88
95
114
149
55
58
163
69
103
55
131
93
83
128
134
67
91
134
93
55
69
103
74
76
105
131
139
119
77
79
163
86
92
149
132
132
104
92
97
58
101
130
126
67
145
103
103
141
178
122
120
101
55
126
119
79
118
109
126
79
109
104
139
109
126
144
130
67
134
126
67
92
111
56
178
37
110
138
89
113
119
139
144
135
126
93
58
104
144
136
119
55
109
93
55
68
93
126
111
138
126
92
92
131
55
92
122
86
117
95
93
119
104
103
79
145
120
111
92
156
55
99
123
105
110
127
178
58
140
105
127
92
79
99
110
92
119
77
138
178
127
180
104
67
105
104
103
122
119
56
69
146
58
127
138
126
128
122
123
92
93
55
37
178
118
86
88
117
86
104
107
119
56
129
127
129
144
55
55
92
69
102
91
97
94
91
55
89
92
104
92
93
69
55
122
105
126
119
126
105
105
37
104
100
104
110
58
93
138
110
107
163
81
69
138
107
126
92
127
199
105
86
180
127
109
123
128
92
67
56
128
126
119
158
126
146
152
83
103
67
126
130
67
127
140
139
112
55
138
109
122
163
93
139
127
154
132
104
55
56
84
138
181
148
92
119
55
192
114
138
92
138
120
110
119
69
92
122
105
104
178
91
122
169
55
146
138
104
122
69
107
79
67
92
106
98
110
92
67
140
112
126
122
111
127
130
55
104
100
103
144
141
128
139
112
113
75
138
178
146
110
127
92
119
86
126
67
139
84
110
180
84
139
67
136
86
92
128
97
37
55
84
169
105
109
99
99
138
105
180
92
110
92
122
138
148
124
55
109
110
126
77
122
105
105
128
122
55
123
69
100
127
122
79
92
111
171
146
55
105
122
106
139
127
168
141
126
169
114
123
86
79
138
86
92
101
78
97
69
92
117
103
56
110
92
127
169
55
105
126
55
83
122
69
142
92
122
128
139
127
171
105
146
168
55
138
122
97
189
99
146
136
92
146
104
79
152
112
199
73
86
92
100
119
67
67
67
122
140
37
92
109
79
128
119
97
123
139
92
117
112
169
139
67
138
163
69
56
110
122
58
93
122
105
110
111
127
125
83
86
169
101
129
67
67
75
139
58
111
93
108
81
86
127
67
83
115
144
140
55
138
56
104
119
138
58
178
107
130
139
110
136
75
105
99
148
120
139
105
138
139
111
128
104
106
95
97
115
138
132
56
145
56
69
77
92
109
171
132
147
55
89
55
98
113
93
103
110
139
99
99
58
92
55
55
117
111
86
127
69
111
119
37
138
126
118
55
171
98
126
120
160
92
126
99
58
106
110
152
64
164
123
79
138
68
79
68
111
104
127
160
97
126
55
111
88
93
138
55
110
92
103
180
124
67
127
126
93
167
110
122
92
152
178
105
131
56
99
88
148
123
94
139
129
148
75
69
126
144
119
139
83
79
130
97
92
105
104
110
136
169
180
92
95
126
162
86
152
136
127
104
91
122
37
127
122
117
86
77
68
92
67
55
128
37
126
123
99
152
69
122
67
119
130
108
103
55
110
126
78
111
93
138
136
138
113
160
97
55
130
127
117
93
121
152
130
128
105
56
92
122
138
55
180
109
107
104
37
92
110
110
110
128
67
95
92
128
139
69
146
104
127
92
122
55
92
92
168
110
37
107
132
138
126
139
92
134
120
67
92
101
126
122
105
126
55
104
92
128
128
112
152
178
148
74
163
113
111
103
139
146
55
110
91
105
104
122
127
119
121
152
104
134
69
165
105
55
93
67
145
55
83
145
139
105
105
97
110
115
91
127
105
131
138
130
98
95
119
122
138
92
105
138
127
74
126
138
114
75
139
106
86
146
109
138
67
98
119
77
119
92
119
97
105
122
171
107
128
104
177
136
67
55
55
106
122
119
123
138
67
55
140
119
178
92
69
69
127
126
86
132
58
107
91
130
146
146
84
131
93
138
118
148
100
109
180
110
67
91
139
146
75
122
93
93
119
152
127
84
37
144
56
128
138
189
168
108
55
99
37
128
97
130
92
131
83
68
171
105
123
127
56
92
58
112
99
98
110
126
123
104
122
68
160
110
169
92
84
110
101
77
58
146
126
162
88
109
37
124
104
127
128
86
105
77
126
144
107
93
92
105
120
104
83
122
139
122
55
105
160
111
105
138
83
126
58
55
67
72
158
110
138
158
148
126
103
56
55
111
92
158
171
86
122
126
91
74
145
84
75
163
119
91
167
103
129
55
55
138
58
119
92
75
110
78
163
92
110
55
105
126
111
145
104
56
86
111
117
55
107
74
67
149
122
148
122
138
91
110
146
138
110
99
124
55
122
79
93
144
118
124
110
126
104
108
126
124
93
103
105
58
86
79
79
124
103
144
110
126
105
138
111
91
107
83
106
92
93
55
164
105
146
130
111
145
181
92
55
92
105
93
110
132
100
165
97
135
92
122
138
146
148
139
37
109
105
103
105
55
122
55
134
144
79
58
86
110
93
56
84
152
92
86
126
171
104
111
129
93
69
122
127
105
68
86
110
131
92
167
79
110
146
114
104
58
105
75
112
105
138
56
120
67
91
139
58
107
122
86
91
105
110
110
122
114
158
127
67
92
120
97
111
105
67
199
136
122
127
98
55
67
122
110
55
126
37
152
102
126
165
138
162
122
118
122
103
55
164
112
162
56
124
56
171
144
105
135
120
122
108
114
104
56
139
123
92
164
67
146
99
124
132
67
146
139
127
127
126
138
77
111
80
148
171
104
79
107
56
92
105
67
143
111
130
67
124
74
131
93
37
105
105
98
67
105
92
37
137
139
138
112
91
131
111
126
126
138
126
101
137
79
93
55
169
92
104
138
126
55
89
119
77
110
152
92
125
100
55
167
55
110
119
124
138
55
93
94
112
37
55
83
97
58
68
92
122
83
138
79
67
104
56
55
105
77
138
92
110
145
152
74
110
92
110
98
127
134
110
122
126
138
107
124
110
138
110
169
69
127
37
92
138
92
58
126
126
138
110
134
86
105
126
58
103
127
152
84
58
106
144
79
140
139
158
128
91
74
86
99
122
68
92
104
122
126
55
107
140
108
122
112
128
55
55
104
111
75
74
92
86
127
75
55
138
169
122
128
58
128
120
124
93
79
93
165
123
111
108
93
178
104
108
122
69
146
146
130
91
126
138
55
92
122
110
152
55
123
119
105
178
146
55
122
110
146
92
144
92
67
122
131
55
128
168
122
130
144
77
122
110
139
178
93
122
93
111
156
91
79
162
134
87
77
127
138
124
77
120
165
55
110
162
93
126
145
69
92
105
100
95
144
134
107
67
103
111
92
93
92
55
99
86
146
69
130
110
119
123
182
103
178
104
92
122
69
77
139
171
104
93
91
132
37
146
58
93
119
67
55
168
122
92
93
92
74
114
92
111
118
55
139
92
138
138
139
122
117
126
163
178
92
109
92
74
152
126
178
119
136
92
72
162
55
110
67
79
105
122
55
92
160
178
122
122
126
105
67
139
110
55
92
55
127
128
122
93
123
118
138
122
164
86
131
139
104
152
98
55
140
105
74
105
144
92
178
105
67
105
93
92
37
110
69
111
120
123
122
92
171
107
120
136
112
146
138
74
138
103
134
89
105
146
69
160
86
139
110
92
130
86
37
37
86
112
152
139
55
105
110
126
128
104
144
124
103
132
100
92
138
105
140
126
107
134
122
122
55
98
98
135
127
99
127
122
113
126
188
97
134
109
138
92
92
93
86
56
123
104
77
93
126
108
102
115
104
84
92
138
67
105
115
138
92
99
100
104
123
103
102
92
123
67
178
117
58
93
104
56
127
114
99
69
126
152
122
122
128
64
120
139
55
58
122
97
122
146
77
93
97
111
104
169
138
178
163
110
136
79
144
105
69
75
127
105
55
111
128
55
100
178
163
128
86
134
69
110
86
55
55
92
58
55
58
67
72
114
80
122
103
127
67
128
188
138
109
67
114
169
110
37
55
105
105
132
152
144
178
123
110
37
111
119
55
105
67
139
149
56
122
111
144
91
122
178
102
122
138
69
119
124
178
111
130
117
126
123
110
126
138
69
139
140
111
105
56
117
97
130
112
56
67
110
146
92
128
103
126
169
79
75
122
146
69
77
79
67
75
168
164
92
152
104
144
92
119
122
105
127
56
79
119
126
69
136
106
93
107
130
127
77
135
92
92
139
110
88
121
149
146
130
144
69
152
178
122
122
88
109
164
180
106
104
92
126
56
86
131
89
108
89
110
55
120
55
127
98
131
75
142
100
37
37
140
58
112
79
55
158
69
69
102
169
128
126
139
77
67
105
123
77
110
92
92
102
110
105
67
144
55
92
107
67
126
72
92
86
131
139
124
105
92
148
68
113
150
67
128
37
55
83
55
152
56
69
55
138
55
152
86
122
92
92
106
86
101
131
55
144
127
108
110
180
105
69
92
139
164
91
123
126
160
122
146
55
103
144
138
99
92
163
138
144
79
55
83
92
56
127
144
55
55
93
178
130
105
110
114
119
58
124
37
99
179
111
140
125
105
77
139
77
127
119
112
102
106
122
58
64
139
140
93
122
119
75
146
127
105
168
129
105
79
58
91
103
107
180
91
55
91
178
152
105
160
127
98
122
67
119
130
146
67
94
92
93
81
55
128
127
87
69
104
55
99
69
168
67
126
87
120
110
120
56
104
92
103
92
136
106
69
105
169
110
74
56
55
56
99
139
58
169
138
110
126
146
169
79
131
55
130
105
122
120
93
197
130
123
98
122
97
93
79
119
120
103
122
37
69
135
69
171
68
84
134
89
105
78
117
122
105
93
134
146
140
128
107
105
146
105
58
56
55
126
104
104
118
88
117
105
140
105
105
124
56
112
86
134
101
139
158
37
56
122
78
74
139
55
92
140
132
68
105
100
114
119
128
139
79
92
152
110
92
67
180
97
122
138
110
83
169
92
119
144
55
120
169
131
115
110
111
126
67
138
69
92
122
104
111
107
97
105
69
127
160
108
139
101
122
83
144
178
169
138
126
119
69
167
138
112
132
146
109
55
105
107
55
114
58
119
92
138
126
127
110
110
152
92
86
144
105
109
112
67
122
79
56
102
169
148
103
91
56
113
110
99
92
86
140
88
55
122
128
138
169
55
110
131
55
55
122
138
110
93
58
104
119
78
110
93
112
134
74
138
127
67
122
91
111
132
111
94
67
77
92
74
91
137
138
92
111
126
107
81
92
158
124
104
126
169
55
92
74
105
93
169
178
178
102
160
92
91
139
158
118
55
97
128
142
92
109
123
92
111
180
128
127
102
92
136
56
128
76
37
139
126
105
110
67
100
103
84
123
79
69
147
128
58
83
99
126
138
92
122
91
56
69
56
67
55
104
128
55
55
167
37
55
99
77
109
103
139
119
125
105
113
178
138
138
94
93
123
55
138
92
138
126
55
86
103
109
105
105
105
122
138
69
110
146
99
140
104
139
140
128
92
107
99
134
99
55
92
130
148
92
169
152
92
124
164
122
68
86
122
110
101
152
69
69
55
131
123
56
134
67
105
126
127
158
92
105
146
134
105
92
55
91
122
178
55
37
124
67
134
55
132
109
100
92
99
55
37
92
56
68
93
122
110
79
123
99
101
100
103
146
92
93
93
145
67
122
110
69
147
139
108
67
119
141
37
56
103
92
139
79
137
105
56
140
86
110
123
131
55
122
93
55
138
119
104
151
139
93
138
124
67
110
137
56
138
168
55
55
138
58
152
56
92
138
114
127
145
122
55
86
67
146
125
79
37
139
122
72
106
92
126
127
106
83
131
117
122
123
93
37
110
126
140
122
55
109
67
107
115
100
77
91
67
93
105
37
119
152
67
158
92
139
55
149
105
96
146
56
93
37
92
98
167
130
169
58
178
178
120
37
146
123
140
178
118
56
105
138
56
123
91
92
92
137
37
56
146
89
122
86
122
103
135
58
138
105
103
109
56
119
156
93
158
169
92
56
162
165
126
56
148
92
125
127
139
75
92
105
123
92
67
55
120
68
138
93
104
84
67
86
110
126
55
55
67
69
37
110
111
79
122
93
148
92
55
110
37
92
104
128
74
67
138
126
178
104
178
67
69
178
126
55
135
92
127
91
56
122
122
75
110
122
139
104
98
149
92
109
37
93
92
100
67
67
79
146
134
178
67
80
92
86
171
55
58
126
164
122
109
132
92
127
120
144
120
55
92
138
75
122
122
122
55
58
171
126
110
71
134
168
122
101
141
110
169
138
144
169
132
123
55
134
126
103
125
138
92
199
92
122
55
139
123
138
146
69
138
79
83
139
131
119
178
138
105
91
92
67
84
140
146
92
165
56
105
104
93
144
58
106
199
110
72
69
72
122
126
169
138
139
68
110
110
126
92
92
83
109
104
67
169
120
128
55
105
105
130
77
55
139
122
69
96
107
91
74
92
110
93
91
105
109
105
98
122
112
103
171
131
79
67
171
55
98
74
130
169
163
131
67
92
122
67
110
58
55
69
74
110
55
55
92
122
123
69
128
138
150
37
74
69
69
138
124
56
55
126
123
169
105
55
92
105
67
77
92
134
91
109
111
105
74
126
83
128
127
110
90
152
37
152
106
37
55
118
92
122
131
126
99
110
134
77
139
105
93
100
91
111
110
128
148
89
119
138
78
124
37
138
182
55
105
146
86
69
67
75
68
56
58
86
107
105
104
56
171
92
67
92
105
169
83
56
55
89
93
106
97
92
110
112
118
120
152
92
178
109
92
58
81
104
108
114
146
107
55
37
122
122
178
119
92
119
110
124
141
56
178
110
93
105
122
189
131
110
144
104
55
108
85
69
68
169
103
92
86
178
37
122
92
127
124
69
115
92
152
92
92
111
130
112
178
126
77
88
188
127
138
94
104
69
138
85
92
165
104
169
171
75
55
126
97
144
56
110
138
122
92
122
122
55
134
148
146
134
105
146
139
169
77
69
105
55
199
37
105
99
112
105
67
199
37
99
138
119
100
58
55
92
83
56
148
105
92
92
55
89
99
178
126
127
67
126
93
110
126
105
77
146
138
110
105
110
138
92
55
110
122
138
156
126
86
110
158
92
145
132
134
132
56
68
92
55
126
144
128
55
93
110
104
123
134
55
119
105
123
55
104
67
99
178
55
126
77
105
122
124
145
110
132
131
58
84
93
104
138
122
92
144
119
92
152
130
104
122
92
105
115
55
127
125
111
105
126
158
123
126
81
104
105
91
127
80
93
92
129
83
109
104
152
37
93
56
128
134
152
123
92
93
119
37
37
77
112
138
93
138
141
92
86
74
92
158
56
158
105
151
134
122
92
138
93
93
110
105
55
128
103
98
178
92
138
92
75
74
109
109
112
119
104
127
126
110
93
79
122
100
146
94
106
92
56
138
92
163
163
148
110
99
178
122
178
92
138
118
92
67
109
92
91
128
37
122
75
69
55
117
58
105
55
56
178
127
93
104
126
119
123
58
99
67
178
92
104
75
92
126
93
84
55
169
91
122
127
84
111
67
98
68
99
129
130
68
99
169
76
110
112
105
73
138
123
105
92
58
130
111
178
101
110
127
69
134
149
152
100
91
122
88
56
111
126
67
92
99
75
178
92
91
104
169
145
83
101
134
56
86
101
178
118
111
138
163
139
169
75
126
115
86
105
105
125
77
84
91
55
122
91
138
79
126
74
88
126
144
86
56
58
105
86
67
107
68
92
67
110
84
123
94
111
119
77
93
93
110
107
103
55
126
104
132
139
139
110
79
110
162
93
110
126
69
131
141
67
178
55
92
118
89
104
92
67
55
97
119
178
138
152
103
86
101
107
139
140
126
80
124
127
138
68
77
146
92
178
104
103
139
67
105
126
92
101
100
92
75
67
37
92
138
93
134
178
147
146
92
105
146
178
92
122
108
114
127
101
112
127
111
56
135
169
83
55
123
167
127
86
105
122
156
37
93
98
110
110
138
161
118
121
126
109
148
128
56
92
110
86
114
58
92
110
107
110
122
178
101
104
178
92
122
93
128
106
75
55
58
110
105
86
103
110
109
93
152
100
37
105
119
92
93
86
58
110
103
37
86
110
138
148
128
92
152
99
92
110
105
169
112
97
156
138
122
158
93
112
144
55
105
141
139
77
138
126
130
139
93
83
74
55
122
86
148
105
110
105
105
69
152
69
58
110
37
105
160
138
84
56
122
95
138
118
110
79
56
55
77
122
67
55
126
139
77
56
67
152
127
178
55
111
123
119
152
105
114
79
86
56
107
119
93
37
178
122
92
104
122
92
122
37
138
137
86
55
93
56
110
110
37
127
105
163
106
74
69
119
138
92
100
139
92
139
92
178
126
107
126
75
67
124
105
122
107
178
105
140
110
105
67
146
122
124
152
110
140
86
99
178
37
79
134
37
117
92
111
109
103
178
99
138
138
146
138
110
74
55
128
92
74
110
67
109
105
178
91
112
154
197
87
123
128
105
117
104
67
92
79
145
105
117
56
138
95
110
123
67
114
79
109
93
56
69
122
134
109
79
95
165
105
83
77
92
140
134
122
134
68
77
110
122
69
124
92
169
119
105
99
110
102
91
77
105
146
91
105
86
97
99
58
55
138
91
64
93
146
93
138
74
37
101
199
103
105
93
93
109
92
37
55
110
78
91
55
126
127
75
122
105
104
109
58
105
104
78
84
128
107
58
122
58
111
91
64
144
121
126
138
110
130
152
120
118
92
74
128
110
111
92
55
168
126
138
37
110
134
92
139
88
67
138
78
138
139
127
169
140
158
93
92
86
146
69
131
98
110
138
107
150
146
55
92
58
123
105
86
140
37
123
126
114
77
56
139
112
119
138
92
138
55
178
67
98
131
126
130
127
92
37
118
119
105
109
56
98
102
139
127
105
79
178
178
132
110
55
76
105
94
178
178
67
135
78
83
103
77
119
148
138
99
144
56
146
105
138
139
109
139
104
103
132
119
56
55
55
92
92
92
93
105
92
165
138
87
134
92
92
158
127
105
126
178
122
86
99
77
79
58
122
119
182
178
109
55
105
127
83
123
101
67
105
120
69
91
105
110
144
93
122
127
86
128
55
101
75
69
138
58
118
122
56
138
109
55
110
139
99
92
37
84
127
150
111
168
37
180
111
142
138
58
138
69
160
123
67
122
92
105
37
67
107
91
111
177
104
104
168
122
126
96
92
84
146
93
55
126
67
101
178
110
91
88
138
58
139
58
139
58
55
130
169
134
81
92
56
123
94
97
74
124
92
124
91
122
138
98
91
126
68
126
139
92
92
92
92
93
92
56
104
169
102
55
105
178
104
106
126
156
92
111
110
180
107
88
119
107
55
86
115
127
67
126
122
55
122
79
93
104
148
85
97
37
83
55
105
119
77
97
125
126
104
122
152
92
103
140
134
134
92
110
37
111
169
111
37
138
95
117
132
105
111
55
99
67
138
58
119
152
122
124
144
109
55
104
67
58
99
69
169
92
55
92
55
178
168
178
119
111
69
169
92
56
69
152
142
86
37
110
75
138
112
67
92
55
140
55
55
107
73
144
92
103
58
134
105
67
84
55
122
114
126
105
127
105
58
67
122
77
110
77
107
93
105
83
93
69
37
55
100
83
104
108
91
119
74
140
122
67
122
92
98
83
86
169
93
171
97
79
124
97
110
99
92
91
122
91
146
93
130
112
89
131
58
83
105
104
171
197
110
93
69
92
55
126
144
131
55
96
75
128
69
138
122
119
165
92
88
122
140
92
67
77
81
91
84
178
128
104
112
109
169
126
37
132
88
109
138
93
79
137
93
75
146
75
92
108
158
92
75
110
124
37
67
178
122
162
127
56
146
67
69
110
130
105
124
139
110
91
163
122
91
110
79
110
86
138
128
122
104
144
92
152
67
127
126
83
93
93
92
109
164
130
94
55
105
56
110
101
127
67
99
74
156
114
83
138
56
120
110
105
56
144
109
56
69
106
139
55
178
138
55
178
67
118
77
77
67
111
92
124
122
69
92
122
108
99
138
109
37
88
124
178
75
110
92
137
171
131
171
169
55
128
178
78
125
92
122
140
126
37
56
138
134
37
127
105
138
105
56
110
92
92
138
130
138
92
105
137
56
55
67
126
58
104
127
55
139
105
107
132
107
128
115
122
91
107
69
93
109
102
55
67
122
111
156
111
128
122
37
152
56
110
146
138
122
128
77
126
100
55
56
135
92
146
91
126
139
111
119
110
56
158
110
158
74
105
104
127
37
126
55
146
119
68
55
92
58
104
123
94
126
56
110
128
146
134
110
162
97
91
105
122
110
147
92
111
126
73
135
110
97
156
122
169
110
56
91
74
89
139
103
104
74
145
105
110
92
88
158
109
99
123
55
95
110
67
41
37
110
55
142
77
109
99
105
126
126
131
67
71
55
37
117
130
169
178
58
55
79
86
55
100
92
91
158
58
104
127
152
56
86
105
91
139
118
126
105
127
86
98
69
129
37
127
126
58
93
149
92
68
92
140
110
169
84
110
160
110
67
92
138
110
138
106
99
97
56
144
104
55
55
152
78
99
146
171
119
122
84
126
108
128
120
146
144
139
68
117
69
74
56
93
92
93
55
140
117
92
111
105
104
92
113
105
107
112
37
103
56
139
138
107
132
103
110
55
96
88
92
128
126
97
122
79
122
98
77
56
105
138
92
152
171
92
124
67
83
144
122
92
56
55
74
93
126
37
67
92
67
91
126
128
127
122
112
122
178
139
139
83
55
135
117
109
123
98
55
37
55
91
111
93
83
111
105
111
99
139
105
129
55
67
138
92
99
55
105
55
93
127
55
55
122
144
146
56
92
150
98
112
99
93
55
114
58
92
144
97
97
123
79
122
105
123
180
56
67
104
110
126
126
178
105
106
67
68
56
69
92
79
124
136
136
67
122
138
103
107
37
55
58
126
104
132
152
58
58
55
56
142
138
86
55
102
55
136
132
144
122
92
110
145
92
56
110
126
56
126
110
81
67
55
109
122
106
55
134
109
122
88
128
86
55
169
123
83
92
131
118
92
127
95
99
127
164
109
169
104
121
105
139
126
69
55
127
122
122
107
138
86
56
92
115
105
107
103
86
71
86
146
104
112
68
55
110
101
83
93
85
99
178
78
122
119
124
113
92
110
105
144
139
104
107
110
77
74
56
92
144
132
134
110
56
110
152
110
101
138
103
37
92
56
75
99
93
55
86
128
95
129
58
110
94
55
138
124
117
93
128
123
104
102
91
122
163
55
110
91
87
55
178
109
148
77
69
74
178
56
144
105
99
105
77
58
92
72
92
148
144
149
127
137
167
92
100
55
79
105
122
153
126
69
128
130
111
92
137
55
112
58
117
131
110
112
56
98
67
178
144
104
92
123
128
37
78
104
128
92
104
96
128
169
75
144
37
92
55
127
110
104
86
138
152
138
146
104
148
169
58
130
56
92
105
144
37
144
171
152
67
105
148
92
105
105
83
119
139
75
110
55
115
144
148
69
130
58
178
93
88
104
112
123
178
92
112
144
136
75
110
93
134
75
83
93
92
122
103
55
92
67
93
139
103
122
134
93
121
122
99
127
167
126
80
91
138
122
104
124
178
91
74
88
139
97
55
111
144
55
92
110
146
148
79
55
91
119
110
105
55
56
119
158
180
119
143
92
92
110
123
99
152
37
118
122
130
58
84
111
97
138
139
37
134
106
140
141
123
128
119
37
127
126
86
55
77
69
128
110
91
127
144
111
178
79
158
122
126
111
91
56
123
81
122
74
171
88
110
91
101
103
104
110
122
122
95
126
86
92
109
92
93
110
128
91
55
139
140
136
55
138
110
116
104
126
56
139
67
138
86
56
92
107
119
126
69
80
93
55
169
92
74
146
171
97
152
127
149
67
56
37
58
86
86
123
127
123
55
92
55
110
137
152
138
148
122
55
67
91
152
67
114
96
97
67
95
122
55
107
178
58
140
37
119
69
138
109
144
178
99
91
67
123
122
119
105
55
55
69
92
131
37
77
112
55
92
55
99
106
118
69
111
140
122
83
74
126
110
134
92
127
122
58
126
56
138
99
122
146
109
109
88
134
110
112
110
105
86
128
178
126
127
75
105
104
55
93
144
127
68
122
55
75
126
102
79
139
110
122
126
69
55
93
126
116
108
138
67
91
123
144
110
58
132
130
146
92
67
110
122
105
92
105
122
92
79
122
55
87
55
122
91
106
138
89
75
89
81
99
69
138
37
130
107
119
99
122
89
144
140
122
115
122
55
114
131
138
91
93
109
136
118
145
68
140
126
111
106
139
122
86
37
67
138
157
178
111
56
119
55
110
112
110
84
139
104
92
127
111
92
64
55
134
128
74
58
74
58
120
122
122
90
55
92
110
79
103
139
114
130
56
144
110
134
83
127
99
163
128
122
171
130
58
106
56
178
92
58
100
69
123
93
152
86
148
139
55
93
128
109
105
144
98
67
134
56
92
109
92
105
91
92
122
122
79
138
83
101
138
126
67
67
128
138
124
126
128
74
92
142
93
152
105
92
124
92
122
98
127
104
56
69
135
100
86
134
92
67
110
58
168
101
178
77
144
110
91
107
105
110
169
37
123
138
92
136
91
108
139
144
99
111
142
152
124
67
135
110
104
119
92
119
89
37
128
92
67
171
83
104
56
37
55
123
110
105
92
138
152
140
91
105
119
69
58
89
92
92
92
139
138
128
67
139
55
119
67
67
169
55
134
74
103
93
77
126
92
83
37
105
144
126
55
79
124
137
74
180
111
111
122
55
158
119
56
67
110
74
127
178
138
55
122
119
93
140
91
122
93
55
136
55
171
123
92
92
79
92
37
120
124
56
123
92
77
144
144
86
92
110
102
37
119
117
55
103
110
69
91
105
92
86
67
76
55
86
107
131
139
55
93
55
146
99
37
134
144
152
108
122
122
171
92
92
114
69
79
55
127
138
77
67
37
56
78
104
92
110
104
80
92
109
104
169
97
105
97
144
152
122
146
78
139
137
146
92
92
178
171
148
93
92
110
112
138
93
178
91
72
68
81
127
128
110
148
142
79
138
56
104
139
77
100
92
101
67
134
84
95
69
92
91
67
126
126
160
141
88
152
77
110
80
134
69
110
124
119
101
112
122
122
178
142
135
100
146
139
91
115
86
160
146
146
110
58
126
152
110
101
56
126
67
107
93
119
92
134
56
92
126
93
74
56
139
111
118
132
75
112
103
126
171
92
131
103
92
103
136
131
67
73
92
97
181
123
118
105
126
91
110
107
112
100
122
142
67
92
126
69
118
107
134
107
145
97
92
122
123
75
130
110
138
92
102
105
122
104
146
169
104
110
163
56
98
111
118
128
105
55
134
126
138
139
107
67
134
99
93
102
74
168
106
126
169
74
107
105
93
123
117
113
69
77
92
58
169
97
88
110
104
105
58
104
104
147
78
110
58
97
171
114
130
138
108
139
146
79
127
105
103
104
178
124
117
113
146
110
168
130
101
55
137
146
75
159
138
55
119
92
119
127
110
92
93
115
55
145
101
109
84
87
123
93
67
126
140
152
37
144
110
105
163
123
110
167
128
178
55
105
105
132
112
92
99
152
79
107
146
139
79
138
108
69
102
128
67
64
69
79
123
127
128
110
123
103
138
178
92
130
127
139
152
123
74
91
122
144
88
110
93
110
178
126
125
178
139
75
56
93
110
169
92
67
123
158
86
104
56
92
92
67
37
126
109
91
97
139
104
180
156
55
91
55
92
77
144
95
104
131
124
104
134
69
110
75
122
99
79
110
129
104
92
67
91
115
158
122
92
89
55
122
138
152
140
122
71
105
153
122
137
103
92
56
92
180
146
110
112
74
69
37
152
138
121
93
111
74
98
57
107
128
113
68
152
160
91
141
55
56
107
117
91
88
140
92
99
142
111
127
105
74
91
171
37
93
99
138
101
119
126
104
100
93
110
138
144
104
124
110
126
122
110
107
92
126
74
104
93
140
92
92
138
126
86
55
103
146
103
92
137
93
104
127
122
56
134
55
144
83
138
58
92
92
144
37
92
110
67
138
114
74
37
158
55
109
139
99
55
89
93
67
58
107
107
111
86
68
140
81
126
93
107
56
69
131
104
93
109
86
92
97
77
106
86
152
146
74
131
126
139
134
92
128
128
37
122
72
148
102
104
105
93
67
112
92
180
55
104
55
147
92
134
139
112
105
96
171
75
119
56
55
93
79
109
104
74
126
122
86
81
136
139
171
119
111
110
126
169
136
55
55
103
107
152
67
37
56
55
67
124
92
127
104
105
84
124
80
140
112
122
152
37
55
127
106
69
85
56
160
152
93
56
105
83
122
124
77
37
127
55
140
97
138
128
56
130
178
74
134
92
138
122
144
92
56
55
67
124
104
128
78
121
58
56
128
97
156
56
37
140
99
127
119
96
110
112
122
140
92
83
111
152
67
67
92
83
122
109
138
58
119
55
126
119
104
127
122
138
86
67
91
162
127
120
105
69
132
55
92
105
169
104
138
93
128
110
92
126
104
56
110
55
137
105
110
126
92
138
69
92
101
105
118
126
93
55
120
56
122
146
140
73
104
152
139
87
68
104
100
113
105
145
107
93
99
110
152
104
104
122
88
146
87
84
110
92
81
126
104
126
124
139
104
139
104
140
147
103
130
109
55
135
91
156
58
139
125
127
140
123
58
119
55
126
55
131
169
110
37
126
85
99
110
67
107
122
104
124
178
92
178
118
139
180
92
123
55
58
126
138
168
104
119
122
103
109
137
122
37
147
105
105
182
92
56
126
126
67
126
123
92
126
127
152
146
122
58
126
91
74
97
171
75
92
122
107
37
110
107
178
105
92
160
130
169
126
110
91
178
138
92
146
89
104
112
122
93
104
104
110
56
126
105
139
139
122
58
99
55
178
67
111
139
139
79
55
119
93
111
122
130
86
99
92
55
98
67
110
79
120
123
99
135
138
92
142
169
111
86
74
99
122
158
162
67
99
110
75
67
92
92
67
144
55
178
120
128
123
140
163
92
91
142
119
92
138
180
126
138
79
188
142
152
55
56
117
123
91
74
92
119
112
148
122
178
56
93
126
146
165
168
105
110
119
126
152
92
104
138
130
124
128
99
122
92
87
178
79
83
126
109
92
99
92
104
68
67
110
105
109
111
152
138
110
92
110
105
169
93
78
92
93
105
83
146
144
110
100
105
122
128
110
56
105
91
160
126
56
67
104
55
68
37
104
127
110
169
127
178
168
58
98
111
119
138
138
152
110
95
122
110
56
99
122
122
110
146
136
124
83
56
104
92
110
118
37
122
126
119
103
135
125
55
122
55
99
92
152
165
119
55
105
171
65
126
162
146
56
178
107
146
104
127
103
55
98
58
138
92
55
111
123
37
137
178
169
122
124
104
126
110
123
58
144
93
105
123
75
56
178
104
67
84
127
152
119
104
55
58
56
74
86
124
126
91
138
67
139
100
131
107
104
88
55
107
55
124
139
130
92
148
104
67
105
107
77
67
119
122
146
139
144
178
93
138
109
127
77
67
58
86
104
107
93
126
92
118
55
138
144
178
123
55
126
37
146
101
142
91
92
125
178
105
78
83
141
119
143
163
67
111
137
127
145
127
106
110
139
107
126
138
67
93
130
110
91
100
121
55
124
114
67
134
128
156
68
139
79
93
140
126
110
92
92
101
58
55
115
104
69
134
127
68
115
109
148
74
134
129
139
93
58
67
56
110
69
126
92
77
56
103
100
102
105
104
127
152
126
125
105
86
109
89
114
107
100
105
111
126
122
178
139
114
77
150
37
57
178
109
139
105
58
86
102
144
165
127
74
55
122
58
123
86
55
37
126
122
108
68
163
58
144
138
150
136
69
136
178
120
140
138
122
74
92
140
58
77
178
139
110
163
92
127
108
105
169
139
120
119
69
123
110
126
55
127
139
139
119
138
138
128
105
113
123
92
67
77
67
93
138
67
168
148
102
58
69
104
69
56
130
122
91
139
140
132
68
126
152
158
56
138
91
158
152
92
134
92
120
67
58
123
56
55
92
93
102
104
67
93
123
117
92
139
113
55
162
92
104
92
88
135
92
58
69
124
93
104
105
146
55
92
77
55
75
122
110
111
135
92
91
126
74
146
146
139
103
109
124
58
55
55
84
86
56
105
118
126
140
107
138
91
138
168
118
88
104
56
93
104
139
37
91
92
134
144
122
126
124
141
107
112
110
137
67
99
94
107
69
112
110
119
105
126
105
119
122
37
56
163
120
135
146
102
126
178
138
105
128
126
67
124
126
93
127
119
124
67
139
56
178
92
128
93
92
92
109
169
87
75
104
134
122
92
124
127
110
77
97
110
111
55
92
138
110
152
105
97
128
127
92
106
126
127
99
56
105
169
138
178
79
123
123
56
110
89
95
111
128
104
122
37
122
79
77
55
163
155
91
171
55
92
110
105
105
130
122
144
79
117
110
142
104
120
55
102
110
142
126
37
58
110
126
123
100
127
138
104
146
126
55
157
88
37
55
156
56
77
105
178
94
122
55
92
67
105
128
178
122
139
132
58
55
55
55
144
75
107
178
92
168
100
93
146
92
178
140
133
138
55
106
105
138
169
69
69
107
109
110
81
178
55
92
94
119
178
152
130
92
74
58
152
135
124
134
67
105
140
111
67
139
91
122
136
110
114
55
110
144
112
105
134
97
37
107
55
102
122
146
136
162
55
122
140
69
74
110
110
84
114
138
56
104
171
93
124
69
58
79
122
69
128
64
144
126
125
92
131
158
69
135
104
138
171
152
138
58
77
107
97
149
89
56
126
126
148
188
56
55
122
161
110
74
89
119
110
137
55
93
55
67
109
126
97
77
144
56
92
110
148
120
169
37
124
83
104
112
101
127
37
67
100
81
109
91
138
199
132
76
134
104
106
83
107
55
68
69
92
112
67
97
122
56
98
138
169
86
112
86
68
92
75
109
144
126
144
67
122
146
102
145
109
158
138
127
104
85
123
108
84
105
134
104
103
110
67
104
79
109
178
123
106
97
101
84
171
74
119
111
99
55
37
104
95
127
139
104
69
169
97
110
93
67
109
55
55
105
92
92
111
139
84
124
139
55
110
55
89
105
126
92
139
152
123
138
158
86
107
55
110
127
67
146
127
64
146
128
148
136
104
108
67
67
142
182
55
67
121
135
104
119
69
110
146
92
110
55
134
112
111
67
56
138
99
168
79
109
69
105
92
92
148
107
78
98
146
110
93
128
91
56
55
171
97
123
92
127
110
119
92
55
156
99
182
152
104
126
102
112
92
104
99
122
77
163
95
119
105
125
77
122
137
144
68
55
55
126
58
139
55
131
92
139
92
67
55
109
74
139
122
83
92
100
126
152
152
92
139
110
92
123
77
75
121
104
74
138
105
58
103
140
127
114
68
146
138
140
58
139
105
93
146
81
93
100
56
109
139
146
75
122
124
99
92
77
158
126
127
114
103
92
69
124
92
142
180
105
37
94
92
99
134
89
92
122
55
104
103
139
58
128
37
110
69
146
139
101
67
127
152
178
119
109
124
107
105
56
168
92
55
139
104
93
128
93
103
124
122
138
128
92
105
131
138
58
97
163
138
122
180
99
126
178
55
92
128
55
37
91
81
37
138
92
86
104
147
115
104
92
92
92
76
79
55
55
67
99
152
105
91
88
55
37
110
189
37
128
56
110
134
103
136
122
83
84
105
146
130
67
144
105
182
58
126
88
91
124
130
80
84
77
122
79
115
146
127
127
115
134
158
167
111
91
55
138
163
94
132
110
119
138
128
126
145
138
117
67
92
127
105
55
69
99
131
93
37
79
72
56
112
77
55
138
122
144
138
67
98
144
111
105
86
69
126
95
67
169
127
138
122
55
122
84
114
140
144
117
144
105
110
55
177
152
178
127
96
92
99
146
178
93
64
102
37
105
178
164
178
67
146
122
102
69
110
171
111
123
126
128
69
128
74
111
121
93
122
68
37
111
83
139
110
79
92
139
56
79
91
146
41
69
92
55
97
131
180
105
104
89
92
178
84
144
181
178
37
132
130
111
139
75
74
56
102
109
119
139
67
108
67
55
146
74
109
74
58
86
92
58
99
37
123
110
37
92
107
37
84
144
104
55
109
37
55
75
120
75
108
92
138
126
91
122
177
103
56
122
122
91
84
91
110
169
86
127
146
169
138
55
67
110
148
104
110
168
144
92
114
146
104
163
99
117
110
103
104
92
137
126
124
107
77
100
92
92
106
110
158
123
55
138
75
122
80
122
145
134
122
110
104
152
126
146
148
140
126
88
111
126
37
132
117
92
126
109
119
111
67
127
105
103
75
122
99
55
138
92
110
112
74
105
107
55
108
75
127
37
75
83
144
92
92
127
75
126
117
110
122
126
105
115
69
178
139
110
74
105
92
109
122
58
105
55
145
95
110
152
105
178
101
105
92
169
123
55
88
92
105
92
79
67
92
56
144
163
109
55
103
92
37
95
110
144
103
78
55
110
92
92
92
140
122
130
144
91
78
138
56
127
83
74
143
138
132
109
55
109
93
104
140
131
69
58
126
152
168
69
123
56
138
126
93
93
109
144
55
92
86
55
100
56
79
74
97
55
69
37
126
110
55
58
121
118
106
148
86
126
152
104
97
158
148
56
92
138
164
122
171
104
86
131
91
138
138
92
110
126
137
91
55
98
114
122
167
67
88
111
144
152
122
128
55
131
155
91
58
69
119
92
55
105
92
138
126
91
100
180
122
58
169
69
83
101
110
126
55
69
124
110
178
115
92
138
112
77
99
105
126
138
80
55
102
144
134
84
58
105
97
163
75
58
92
55
110
131
126
117
108
86
74
119
79
150
55
169
140
55
178
55
55
164
134
130
88
122
114
68
178
92
144
111
158
89
169
146
93
134
148
168
101
122
122
146
139
55
55
139
91
93
110
55
55
69
77
145
126
92
105
109
109
138
67
77
147
67
168
178
126
69
55
122
91
124
130
105
144
104
146
124
138
92
87
106
55
124
121
69
138
56
105
144
55
108
105
169
124
55
110
67
122
126
135
81
119
127
103
146
37
91
111
127
114
86
102
89
171
94
56
56
107
124
167
103
67
138
146
128
92
109
140
138
119
122
77
144
81
86
110
141
107
88
105
126
77
56
119
101
75
130
95
84
114
105
118
106
126
122
92
99
110
37
105
105
132
137
103
124
105
104
126
130
91
99
67
111
137
75
144
131
122
126
93
137
93
110
67
58
69
138
75
118
112
77
122
135
109
148
104
171
140
138
132
114
105
122
131
105
77
144
131
146
149
103
100
69
126
110
139
55
199
68
110
99
122
56
178
97
110
167
69
67
134
110
136
55
139
105
107
124
77
105
56
163
134
69
138
119
126
105
119
55
124
138
55
138
55
105
168
144
74
67
139
99
92
100
130
105
93
122
138
56
95
178
55
105
56
135
111
75
92
122
104
126
144
102
104
88
56
86
69
92
127
71
127
104
126
122
103
61
178
69
92
126
122
55
178
58
182
104
137
75
91
79
171
93
122
127
132
127
152
124
58
99
126
79
105
126
95
91
55
119
110
57
138
127
144
169
55
97
127
108
67
110
86
105
86
91
55
126
139
123
105
105
93
152
136
55
119
55
55
69
128
107
130
144
92
152
139
89
75
110
152
67
122
122
119
149
92
96
105
152
140
112
92
58
69
55
139
149
55
156
77
55
139
77
77
119
56
146
84
74
124
128
110
134
168
92
122
58
93
146
37
110
74
107
138
119
164
110
84
93
92
120
122
109
55
178
103
56
123
68
67
56
87
110
106
100
178
148
144
111
75
178
83
104
140
99
86
178
100
122
138
126
134
92
138
37
58
55
127
117
58
158
125
122
67
146
55
58
92
126
105
124
86
76
110
37
152
105
93
164
138
125
164
55
92
105
110
92
105
144
106
152
128
110
119
190
178
171
178
77
178
83
146
58
97
164
126
139
119
128
122
140
152
158
104
178
91
55
81
114
84
152
138
144
111
55
178
144
93
92
104
152
162
110
117
138
56
169
75
128
122
168
128
119
139
146
64
110
92
122
110
55
123
100
67
79
152
67
105
68
129
134
58
112
152
122
139
99
55
55
107
99
72
55
178
105
127
105
91
92
122
69
105
126
107
134
138
83
148
137
99
110
130
98
169
99
165
111
144
131
171
79
55
127
126
96
92
93
168
95
103
55
122
148
121
144
56
139
56
110
152
148
114
148
171
37
138
139
144
56
128
96
92
126
126
105
119
110
112
146
163
77
127
83
56
138
55
146
108
81
199
178
140
77
67
109
56
139
111
110
67
126
110
55
104
69
122
104
140
77
127
126
92
122
110
126
105
56
55
55
131
55
92
92
105
74
109
139
126
77
93
93
93
77
126
107
134
103
110
152
56
103
111
167
127
115
83
138
92
83
69
91
105
139
152
92
72
119
138
122
77
37
138
55
126
99
92
110
37
56
101
136
144
110
92
92
178
92
122
119
97
58
169
75
93
100
124
58
138
140
111
119
86
104
127
122
119
93
117
92
92
130
129
126
109
119
69
138
124
122
55
88
55
122
75
122
118
142
126
69
145
73
56
92
138
122
91
164
93
169
73
128
110
37
105
55
123
126
58
105
55
74
74
109
146
79
58
126
100
92
56
126
58
109
55
122
69
68
79
128
165
104
134
58
89
104
169
144
139
104
165
56
67
93
117
117
97
117
106
171
110
146
92
199
139
56
89
104
67
67
138
144
103
120
105
67
114
126
115
83
79
110
126
140
97
110
146
130
110
139
126
105
107
55
111
74
100
137
136
55
110
104
178
83
93
119
55
110
122
139
79
124
109
178
94
104
92
135
91
106
138
93
55
69
104
56
105
92
69
107
148
117
109
117
75
105
168
92
56
55
123
168
110
91
127
100
100
138
104
112
92
126
178
171
152
92
138
115
79
123
123
121
127
92
131
149
178
37
93
124
93
122
126
105
103
138
127
132
123
109
89
114
104
75
138
119
127
111
111
55
99
167
58
112
137
178
104
122
127
55
105
122
55
140
56
117
83
116
101
104
109
138
67
124
122
178
58
93
158
126
92
122
67
56
77
126
92
92
152
92
67
99
105
144
107
126
67
37
67
122
114
106
122
77
55
110
102
77
126
150
110
126
144
140
104
58
126
107
146
164
130
169
104
92
58
109
105
93
37
67
128
178
128
105
146
92
58
92
58
93
163
111
68
110
126
99
128
80
105
92
58
92
56
67
92
99
92
55
79
93
138
92
55
127
91
91
138
107
129
67
134
121
169
68
101
103
126
108
104
103
165
144
110
92
93
145
76
140
104
127
138
105
92
132
112
107
55
104
122
122
152
163
92
55
69
92
67
110
180
104
141
100
92
101
128
56
104
139
56
56
105
118
127
110
110
126
91
146
91
104
110
80
67
131
110
110
148
91
105
126
58
137
79
104
120
97
146
84
148
135
105
130
127
76
92
104
55
69
138
56
129
77
122
92
97
100
55
37
56
140
103
102
73
126
104
110
109
124
105
169
139
123
74
146
55
131
93
124
93
88
110
72
79
92
105
110
122
84
119
128
114
131
55
91
93
93
140
140
111
111
75
140
100
110
92
104
105
67
122
111
79
96
126
110
68
169
119
101
92
92
68
124
79
138
83
92
37
152
110
91
159
79
110
122
107
146
110
75
145
92
93
104
144
110
92
68
79
181
136
55
111
138
169
99
89
163
138
126
118
55
91
105
55
122
93
95
55
92
83
139
79
56
106
91
119
134
124
92
92
144
138
92
145
110
92
178
125
139
107
77
105
110
55
113
137
138
92
127
92
105
105
67
119
167
84
86
167
93
122
77
105
110
178
118
69
104
126
92
92
69
110
164
122
178
37
110
110
168
105
97
55
126
139
55
146
67
104
139
75
104
92
91
79
128
103
105
126
91
111
37
84
151
138
127
124
139
75
110
144
126
126
122
92
55
37
144
97
105
67
85
111
139
93
123
86
74
93
122
95
141
111
108
92
122
144
122
100
56
104
92
92
126
79
138
92
83
97
122
58
104
152
81
80
55
56
55
138
55
140
123
104
105
69
88
126
119
55
97
178
180
118
58
148
152
144
123
128
138
69
105
137
111
67
144
146
37
117
92
78
93
127
56
56
121
167
37
144
84
128
109
114
122
122
171
55
93
104
77
131
138
55
56
56
105
75
84
140
109
158
55
138
127
124
124
69
92
122
93
93
110
105
92
110
104
132
140
110
56
110
74
55
69
104
103
110
55
92
98
152
178
107
152
119
83
68
126
122
134
126
37
92
126
37
103
119
92
67
199
55
126
103
94
103
171
58
107
104
110
37
178
122
109
80
104
105
139
178
144
92
118
108
144
139
134
104
123
67
105
125
138
138
122
110
126
139
102
134
97
91
97
83
122
108
107
110
178
105
102
69
136
114
110
56
140
67
104
138
105
122
55
139
167
144
144
101
146
55
93
55
91
55
92
92
110
93
37
127
55
100
138
123
92
83
122
104
144
104
128
69
74
98
123
131
104
126
126
111
138
110
93
55
105
119
126
58
56
55
136
99
98
75
105
139
146
109
138
37
41
178
56
120
169
139
92
99
122
122
126
67
132
134
105
78
58
164
95
146
122
104
105
122
109
137
72
99
106
134
99
92
119
165
110
146
97
105
92
139
93
55
124
112
110
84
138
55
132
55
105
55
123
79
80
139
123
37
99
105
142
142
92
138
162
138
103
92
132
142
92
92
110
89
86
178
68
110
141
117
122
56
98
86
56
69
86
104
67
126
105
92
56
75
118
162
169
118
67
79
91
92
68
92
75
55
126
56
139
134
100
136
122
171
56
138
110
138
68
118
137
117
58
99
105
92
86
58
55
126
56
122
129
77
130
126
122
128
122
84
102
93
56
111
126
105
68
92
139
171
92
152
92
112
178
55
139
92
178
139
110
74
124
112
69
128
111
138
92
152
55
92
110
92
55
134
163
110
162
37
91
146
110
124
139
108
105
69
178
130
119
169
127
131
138
131
152
126
122
138
144
139
106
122
123
69
152
56
119
58
138
178
111
55
145
41
79
146
68
109
123
79
83
104
123
104
95
144
127
111
126
86
74
105
106
97
104
58
86
86
128
138
83
86
67
138
91
169
55
122
125
118
110
128
83
110
69
99
112
122
162
86
105
111
104
55
81
55
138
134
86
91
55
104
93
109
98
138
123
92
90
119
103
67
111
156
92
139
128
138
126
109
124
55
101
171
99
132
127
104
178
104
146
138
122
178
148
58
139
130
79
55
146
67
120
134
84
126
139
93
126
56
112
142
178
128
110
144
146
188
126
56
105
105
37
37
109
134
137
126
127
139
69
58
188
117
104
102
109
122
37
111
126
93
99
126
67
128
121
163
104
103
37
97
127
130
115
138
67
144
152
97
112
55
139
67
156
178
130
128
163
110
110
68
144
107
140
55
74
127
103
122
69
122
56
134
97
122
99
100
67
97
127
93
84
55
129
93
122
93
163
92
99
139
55
113
122
77
92
37
139
58
37
119
168
136
93
131
138
163
126
110
114
142
37
97
107
91
144
100
168
127
139
148
167
130
138
93
37
105
55
151
160
122
127
152
114
58
58
103
177
104
95
107
111
120
178
37
151
178
122
97
92
83
55
102
138
152
126
122
55
104
105
140
139
127
105
56
92
146
37
122
78
68
128
91
109
109
110
152
118
137
134
75
92
96
128
92
144
92
122
89
178
126
142
102
91
124
122
146
126
122
129
169
139
92
134
130
152
105
92
100
67
93
178
83
105
92
111
105
110
120
58
86
111
110
92
122
74
37
137
55
55
58
75
93
110
110
144
112
122
118
58
146
122
148
67
56
55
169
138
55
149
100
103
69
84
126
129
78
122
182
126
56
92
86
93
139
140
110
67
111
105
55
111
134
99
131
105
37
93
98
55
134
120
148
119
58
86
97
58
76
75
104
104
99
105
80
102
104
124
56
86
56
138
55
148
122
126
92
122
110
128
139
105
92
138
103
104
93
150
92
56
79
127
144
93
92
138
96
56
122
67
58
92
92
140
56
92
169
89
146
93
105
86
56
124
92
37
93
122
55
55
128
144
79
101
92
126
67
67
139
92
93
119
136
108
110
138
141
169
178
83
92
97
138
92
56
106
130
86
55
122
93
55
127
92
178
77
142
97
86
122
139
55
126
138
58
99
123
105
110
104
67
55
127
144
55
83
55
92
104
127
105
140
56
67
92
55
169
100
104
146
131
92
126
122
93
178
144
132
109
106
58
67
101
107
122
119
102
106
55
58
86
127
178
84
167
125
104
122
92
107
152
158
112
56
79
108
119
37
104
110
91
93
144
93
128
162
127
55
105
104
68
146
158
92
139
92
55
163
67
152
122
122
92
92
37
58
92
109
125
122
69
67
99
93
93
84
88
138
92
126
122
178
134
111
138
55
131
152
138
97
130
110
88
67
105
105
56
99
114
111
102
122
101
37
114
96
148
99
138
105
163
101
56
92
126
55
93
118
126
93
93
95
182
103
91
109
134
112
100
79
55
105
126
144
111
138
140
122
146
55
55
105
58
112
178
169
92
139
79
74
69
92
105
122
119
126
122
131
124
178
107
169
122
55
111
56
110
67
107
100
105
111
146
145
89
130
110
37
112
92
37
146
101
92
138
117
123
119
138
119
112
92
93
122
92
56
69
105
37
162
104
37
148
55
105
152
110
139
67
67
144
178
134
55
55
55
138
137
122
91
89
105
114
98
72
126
109
67
37
93
152
144
91
92
138
91
55
37
136
105
126
114
110
79
139
104
145
107
163
123
56
124
104
74
56
124
112
126
55
55
122
117
122
55
114
134
37
122
130
83
122
55
55
37
56
92
122
138
169
152
138
146
56
148
138
178
104
67
122
137
87
92
92
142
140
56
105
122
67
55
178
67
37
104
92
67
111
58
122
55
86
56
169
87
98
103
110
77
138
162
105
136
110
132
77
124
55
55
56
114
55
92
69
128
107
134
92
67
77
117
122
106
128
105
55
104
93
112
127
55
56
37
126
162
110
146
56
74
92
93
126
105
111
122
93
122
109
56
86
56
76
106
122
167
55
58
105
144
92
145
119
92
77
128
92
77
99
139
37
122
128
122
137
74
123
110
144
122
74
178
150
110
73
104
91
105
110
93
67
92
120
37
138
107
139
120
41
119
110
69
109
55
92
92
91
169
125
178
86
134
67
106
98
79
117
112
169
116
78
55
148
69
162
56
126
119
139
67
126
79
138
144
86
105
102
100
79
178
93
130
158
92
119
122
67
126
105
110
120
104
56
93
111
77
162
123
110
109
86
144
99
105
92
93
131
110
56
74
56
122
98
105
119
55
111
102
56
178
105
67
55
93
152
93
122
58
122
93
105
111
111
178
126
152
143
126
55
103
130
55
126
152
105
144
92
169
86
144
103
78
104
109
55
182
131
123
122
140
103
138
122
109
138
138
138
128
126
134
179
128
124
77
103
127
112
127
146
67
138
138
119
69
127
144
79
37
99
55
144
56
105
126
83
126
108
122
91
92
104
134
111
105
138
111
55
55
122
55
104
134
93
123
131
144
67
86
83
127
99
92
99
108
178
119
55
126
171
74
91
144
122
67
126
151
56
122
69
79
144
152
92
92
69
92
122
126
122
74
124
93
99
139
152
56
119
110
124
171
140
110
178
56
108
138
92
105
138
127
103
104
93
119
93
77
93
107
105
55
110
84
104
86
92
126
92
106
110
91
120
93
144
104
79
134
74
75
126
98
84
91
123
167
104
140
137
109
126
107
86
97
56
123
142
146
92
138
126
37
119
122
67
119
145
138
92
58
92
72
92
55
144
92
105
122
169
178
55
105
92
119
128
122
111
56
99
104
127
131
123
93
67
158
105
148
58
105
110
89
92
152
91
178
99
126
107
99
79
92
95
67
92
92
69
134
146
105
55
97
138
122
67
87
105
91
140
109
108
92
138
110
144
182
56
79
79
75
103
178
105
109
144
56
102
74
158
132
55
127
98
122
107
74
67
92
126
99
112
139
105
122
112
107
75
81
92
122
99
92
102
178
69
83
119
144
101
152
128
171
92
139
126
110
108
69
139
124
55
87
79
92
140
58
105
138
122
55
89
118
69
110
122
104
138
126
110
55
171
55
124
77
144
169
86
64
93
105
55
178
109
92
138
144
105
105
178
93
91
122
178
56
114
58
93
79
75
138
55
86
92
128
92
126
139
122
138
167
144
139
139
92
92
110
100
168
79
58
37
169
67
103
130
104
146
79
67
110
109
110
104
109
91
105
55
86
79
119
91
73
112
123
123
75
162
67
139
110
104
37
178
55
93
105
123
92
92
152
128
58
92
56
108
92
144
56
112
178
129
171
122
112
118
92
86
127
105
103
105
122
75
109
115
110
83
110
93
55
128
178
135
163
115
105
55
126
122
104
110
83
55
104
87
138
126
56
75
93
93
109
98
136
77
93
168
126
69
79
55
122
91
84
92
101
95
138
93
152
92
55
80
119
123
91
68
119
126
132
178
93
139
89
123
55
122
103
111
128
55
86
67
116
77
58
100
138
144
67
55
113
138
153
145
92
69
104
178
92
151
99
111
67
101
138
55
104
122
110
168
108
110
128
138
74
107
123
122
79
189
83
126
37
120
111
130
104
144
160
127
105
67
103
56
112
55
126
77
126
106
118
103
88
167
91
37
93
140
122
67
117
97
126
99
64
92
125
92
97
138
140
122
92
127
120
105
67
110
105
56
122
131
95
122
137
104
91
127
110
103
139
138
131
56
124
88
128
105
55
113
105
93
119
65
127
93
139
127
77
127
140
130
103
84
105
146
56
83
138
118
92
107
75
178
138
144
110
105
188
126
128
122
92
120
118
92
109
146
68
84
92
100
92
83
128
99
167
92
105
126
126
178
169
110
178
92
92
126
105
178
128
55
55
55
56
144
75
111
107
79
91
86
138
92
106
178
58
67
83
83
104
148
77
67
56
119
134
110
118
139
103
138
178
152
138
111
79
75
152
105
141
171
122
117
92
107
79
136
56
136
122
105
126
148
55
144
67
158
97
139
163
107
58
111
111
56
95
105
109
67
55
58
134
55
112
110
55
122
126
126
92
122
83
109
99
121
131
110
130
99
67
110
122
109
104
92
104
58
127
55
102
92
107
158
151
152
118
83
139
128
75
152
77
93
158
109
56
128
58
138
110
139
115
109
55
119
122
58
55
130
102
69
105
98
122
92
139
115
178
55
68
146
112
58
124
86
67
146
138
79
117
169
97
92
171
152
111
92
104
92
104
93
76
91
138
132
138
67
58
146
112
67
180
83
99
105
152
149
127
86
99
146
138
55
92
146
94
124
110
110
55
138
93
93
56
110
146
128
110
74
139
126
67
111
93
95
110
178
95
138
93
86
123
146
55
140
77
92
107
92
111
122
91
83
104
122
122
69
37
113
126
103
92
127
100
91
110
152
113
92
105
127
110
122
104
74
86
119
37
93
68
132
138
99
110
119
140
58
84
126
88
134
146
105
131
93
37
128
131
143
117
130
67
118
109
55
93
138
55
77
119
149
92
126
123
105
64
123
110
88
132
144
122
92
67
68
144
58
92
92
92
137
105
178
110
146
87
92
138
138
138
67
84
134
58
138
118
56
37
105
109
91
126
124
178
136
138
162
89
105
122
146
128
126
57
89
55
122
75
123
123
86
122
67
122
119
110
105
144
126
55
111
111
74
92
139
37
127
152
98
126
126
55
163
137
104
127
92
99
130
55
56
132
69
139
58
134
152
55
105
92
55
107
130
55
107
112
139
58
37
139
120
139
95
132
67
127
99
130
167
153
138
67
86
145
139
77
104
104
142
178
126
67
138
148
85
67
122
127
169
128
104
111
55
139
103
141
158
122
110
81
109
178
117
67
92
55
169
138
122
93
105
127
169
79
58
103
165
92
107
110
132
92
129
89
37
56
180
92
103
114
110
55
67
126
77
68
77
169
67
160
96
79
104
139
105
104
110
144
88
139
91
99
69
92
114
56
91
86
93
141
67
138
37
37
119
130
127
178
88
111
127
92
104
127
178
138
144
93
137
95
131
79
180
67
93
126
126
56
119
92
126
122
75
103
168
122
127
99
93
37
56
99
55
117
126
55
110
109
134
126
79
69
92
105
77
56
178
152
138
127
107
104
122
67
74
56
100
178
141
142
79
102
56
37
107
124
76
92
37
163
139
56
119
111
74
105
134
111
58
84
74
128
75
151
152
56
132
110
122
92
103
178
93
96
122
146
69
178
92
58
151
37
180
138
122
92
106
83
84
67
146
93
75
178
77
84
58
92
105
126
127
126
123
122
99
104
119
110
134
120
122
152
104
117
110
126
124
110
122
86
110
92
104
144
138
105
169
105
128
104
75
138
122
110
105
92
110
134
58
138
122
93
99
126
74
68
69
123
144
55
93
127
128
102
130
97
55
109
110
110
103
104
67
69
110
77
92
110
102
146
138
114
110
126
67
109
126
93
92
93
148
123
98
106
56
152
118
122
122
100
110
148
128
55
128
110
138
104
144
122
92
123
104
92
127
141
122
119
104
122
105
55
139
110
92
92
138
67
146
84
75
110
127
160
140
105
55
146
132
119
105
104
106
131
55
122
132
144
138
93
126
126
139
56
55
92
109
144
75
144
146
56
120
158
72
110
123
92
169
112
162
104
128
56
122
56
92
37
79
92
58
104
146
127
56
58
79
127
136
98
92
124
122
122
91
149
58
167
126
92
180
134
56
106
145
55
105
122
55
128
110
122
106
55
92
37
74
163
56
110
55
77
152
114
146
165
111
106
144
37
120
139
162
92
55
109
126
105
94
106
93
55
98
74
178
119
109
178
92
152
126
126
122
79
125
91
110
37
75
67
169
55
124
132
93
111
91
126
37
126
69
69
98
126
37
142
110
158
37
122
103
105
105
92
158
122
114
103
114
139
93
144
86
93
178
67
131
148
111
139
105
55
92
122
168
140
55
55
110
84
126
139
122
86
140
138
105
92
138
178
145
169
79
126
83
111
92
55
92
104
122
69
123
37
110
127
55
126
88
134
107
75
92
128
55
152
110
91
86
144
146
92
58
139
134
55
139
77
92
110
77
138
114
105
112
110
119
91
153
122
81
92
111
122
92
171
110
126
92
124
144
122
93
138
110
122
105
56
138
148
122
126
37
55
67
122
114
110
111
138
105
171
95
169
134
138
67
144
122
58
122
132
126
105
105
138
127
122
134
89
92
119
146
95
86
148
69
158
55
56
103
137
136
91
122
122
123
146
97
126
123
95
112
120
178
130
86
104
110
108
68
55
69
58
152
110
110
101
158
93
140
112
79
37
56
110
37
109
92
126
139
109
98
125
55
105
104
93
107
125
110
105
126
114
87
146
104
126
67
93
118
169
127
69
79
92
103
103
92
111
55
92
92
105
91
127
182
126
138
110
104
130
104
104
67
58
119
162
144
107
146
102
132
140
135
55
91
139
97
144
146
114
169
104
138
138
67
92
140
91
134
152
145
55
140
55
104
79
180
56
75
126
99
122
110
138
55
130
112
123
92
117
110
56
122
97
92
94
148
98
122
149
126
122
93
84
55
144
74
56
92
158
91
139
120
135
189
126
127
78
130
69
110
123
131
75
126
99
37
122
126
114
109
109
83
109
58
67
55
152
163
93
55
138
110
146
119
126
123
123
139
108
75
164
79
83
178
92
69
92
138
75
55
77
58
145
134
58
93
124
107
117
92
107
180
110
110
123
69
141
130
169
138
144
111
100
146
55
79
144
87
105
55
110
88
55
160
97
86
127
146
79
127
104
107
119
100
178
56
93
107
68
104
69
126
77
93
56
136
122
55
69
107
112
105
139
140
75
55
112
110
122
89
126
112
139
104
99
79
55
92
132
127
107
104
162
114
118
105
146
99
137
58
103
104
136
68
55
114
37
180
144
171
80
103
128
96
91
128
126
138
92
94
105
104
55
127
107
138
104
119
134
126
182
56
107
56
122
92
122
126
112
93
91
58
99
108
123
58
37
178
126
148
105
122
146
119
68
86
126
92
93
124
91
88
152
139
129
126
127
127
146
129
67
135
58
178
110
139
99
67
92
105
126
105
105
104
84
146
144
104
130
126
100
127
180
156
141
125
135
67
103
109
126
92
169
55
93
83
135
140
81
126
92
126
122
105
88
122
68
127
138
68
137
138
134
158
105
126
146
105
139
73
110
74
86
144
58
102
92
92
122
122
93
182
178
58
101
92
134
65
110
110
69
105
77
105
152
121
86
106
152
93
101
124
86
120
119
93
105
73
104
67
120
124
152
79
138
148
102
84
127
37
106
129
148
118
105
103
110
91
126
100
146
67
110
103
67
98
127
103
55
122
122
137
93
72
126
105
146
148
136
126
56
91
72
55
104
104
119
103
112
99
95
146
111
93
77
126
55
103
95
55
93
169
171
92
98
127
122
55
103
99
106
122
92
120
126
92
109
106
126
86
140
160
58
105
119
56
152
127
89
111
104
77
92
110
92
131
74
123
104
102
86
55
122
93
104
91
55
121
127
130
126
146
124
128
169
111
104
163
68
67
92
92
86
139
105
119
92
122
58
162
104
110
86
137
127
67
142
160
159
146
152
67
93
141
92
92
92
132
171
103
122
144
37
138
178
103
126
134
178
79
67
69
123
127
144
127
67
119
165
146
55
92
152
146
103
147
110
180
140
139
91
160
110
139
92
126
109
89
124
98
134
139
122
55
104
97
114
135
130
139
122
122
67
92
92
138
178
178
120
100
99
92
178
126
126
104
158
146
91
171
83
55
132
110
144
130
79
115
37
144
58
144
110
67
86
86
56
105
110
111
69
152
129
86
56
144
103
86
110
84
179
67
121
152
124
92
111
139
118
199
126
146
69
119
79
69
101
144
89
111
86
86
124
55
111
68
140
110
144
180
152
69
74
164
69
79
74
74
138
123
75
152
37
111
138
37
122
86
55
138
99
140
120
125
94
77
105
135
86
99
79
75
139
132
107
126
127
105
92
93
144
123
92
56
107
178
92
167
114
104
113
79
117
56
56
96
110
133
144
110
111
91
137
126
163
56
84
69
92
68
107
67
79
148
107
110
122
136
93
112
144
58
119
77
152
149
112
96
128
104
163
138
127
165
178
122
56
138
144
56
138
67
92
89
110
126
139
101
158
101
109
168
67
146
178
37
114
92
130
92
115
104
69
86
122
92
125
138
122
114
77
55
140
122
169
144
199
100
109
126
103
122
55
119
111
111
129
110
144
93
138
74
144
112
55
92
126
144
109
120
80
67
162
99
132
81
110
37
169
122
137
92
107
92
99
126
58
92
146
122
122
77
83
80
139
102
112
91
131
162
109
138
139
110
134
144
55
126
127
92
67
162
37
111
165
152
105
67
93
101
69
158
110
55
105
144
93
86
92
122
163
91
169
102
77
112
140
58
92
105
98
140
138
75
84
94
109
104
79
37
92
105
139
180
93
128
127
195
123
93
151
98
88
75
86
83
138
104
128
114
87
134
163
134
107
104
77
152
105
55
130
93
74
148
128
107
91
55
55
93
178
139
77
144
67
77
115
126
112
67
110
126
56
138
37
138
92
110
55
126
74
107
144
119
74
92
122
105
104
140
120
123
126
109
105
144
104
98
93
132
120
92
55
169
88
58
132
138
124
148
102
126
104
111
56
127
110
138
56
138
67
92
104
111
128
111
92
126
105
178
143
110
55
96
122
97
126
92
146
105
110
92
119
140
101
81
37
105
92
138
83
138
56
119
92
76
58
56
67
55
55
140
104
37
128
117
55
138
55
105
68
130
92
104
101
105
152
92
144
77
77
69
134
105
146
120
182
139
127
144
93
55
56
119
110
74
117
92
105
58
68
86
92
55
72
104
92
152
105
109
131
130
55
119
92
126
110
37
128
104
126
37
86
105
69
126
169
108
80
74
140
128
126
104
77
92
138
168
142
92
144
164
105
77
131
112
111
138
55
178
107
74
127
92
55
152
127
75
111
135
122
109
110
145
86
112
111
126
105
92
134
89
106
105
56
92
178
138
56
55
128
105
111
104
93
152
79
171
138
93
126
37
146
74
107
92
55
107
127
168
56
56
58
139
74
55
122
92
92
136
126
92
98
111
110
163
169
144
123
136
92
55
99
127
98
109
67
69
139
117
122
108
148
69
112
101
92
110
74
56
123
104
105
117
93
178
81
152
169
100
126
80
41
169
105
143
75
105
86
103
105
74
69
117
93
152
67
138
105
105
118
138
122
110
115
122
152
121
72
111
104
128
91
119
144
56
55
69
93
110
67
126
158
111
132
138
149
104
55
93
146
58
83
169
138
140
104
107
105
109
92
148
74
92
56
84
69
139
91
92
141
122
55
119
55
144
58
56
110
127
146
130
138
134
134
37
58
110
126
74
122
139
124
92
107
89
101
139
92
92
89
69
134
102
123
84
56
105
123
122
56
55
132
110
118
37
92
123
126
102
74
92
104
92
122
126
107
152
58
130
130
69
148
119
56
145
122
110
69
95
123
120
77
144
56
69
56
92
55
168
178
105
68
120
126
109
120
122
55
134
92
68
56
112
106
55
105
104
58
105
37
111
41
122
104
79
58
104
55
92
119
178
167
77
134
55
124
119
122
122
139
178
126
123
138
92
92
77
140
37
58
148
92
171
114
132
104
67
138
58
55
111
69
97
55
110
140
92
109
92
152
55
99
110
105
86
105
109
122
103
110
56
58
118
37
178
138
68
56
92
55
110
178
139
164
92
180
68
121
84
167
163
122
119
92
104
178
75
56
132
77
92
122
105
56
55
89
136
86
56
130
152
92
110
134
79
67
158
69
139
118
91
182
93
110
140
111
83
152
158
122
139
93
139
158
139
67
92
138
181
67
68
67
139
105
144
139
122
110
120
112
152
110
110
86
152
164
104
122
88
144
146
64
111
58
152
124
56
55
124
127
105
110
104
92
131
58
104
37
127
128
108
67
77
152
109
104
93
102
55
69
89
111
178
118
93
126
93
132
92
117
123
122
58
111
97
77
91
55
56
92
97
124
74
81
75
104
55
58
93
111
67
105
178
110
138
88
37
91
128
68
169
102
74
126
67
128
92
127
111
79
69
86
56
126
89
92
75
148
109
104
130
77
163
68
124
100
105
128
122
92
37
97
104
103
55
67
148
102
58
56
67
104
92
93
67
92
105
113
158
100
105
69
88
122
74
92
80
56
55
169
138
75
126
123
55
95
138
105
139
111
86
77
127
126
178
119
148
107
111
110
126
69
138
92
110
122
92
92
56
91
91
95
138
109
120
103
79
92
92
92
109
152
55
74
119
168
86
92
56
122
123
171
91
95
92
127
81
93
78
178
105
58
79
107
67
178
132
140
92
128
55
92
113
37
126
124
136
130
138
102
93
180
123
144
103
84
83
144
58
138
163
92
92
144
169
56
67
122
73
55
126
88
89
92
110
105
99
93
68
105
122
126
67
92
55
178
55
104
58
105
104
56
104
122
134
114
146
86
74
56
89
178
136
140
105
93
126
122
127
93
139
74
37
123
128
92
122
114
83
110
141
131
86
86
118
95
55
92
140
92
110
110
58
110
93
68
92
139
178
93
119
152
140
99
140
55
111
119
152
58
97
91
126
67
90
104
123
56
103
139
56
120
110
83
107
37
105
178
67
107
119
138
93
102
77
152
103
109
96
110
41
124
168
104
69
110
95
104
126
69
67
136
178
171
139
152
98
128
93
69
92
134
77
181
99
92
112
92
138
139
102
56
139
110
55
55
128
126
119
55
99
74
126
178
56
123
126
105
163
67
105
127
105
123
132
92
126
178
67
77
75
55
84
107
148
105
94
96
137
84
92
134
74
178
181
119
104
144
138
109
114
92
99
111
147
128
122
56
126
104
163
145
126
92
77
156
56
122
178
110
109
119
138
140
92
92
113
37
75
104
68
160
188
86
134
123
124
122
86
142
138
105
109
103
67
122
104
146
146
58
137
178
67
86
110
103
58
131
122
102
104
111
168
92
58
91
99
137
106
79
37
37
80
55
86
96
126
156
105
114
118
67
91
138
104
97
199
99
55
132
123
86
83
138
127
148
138
139
77
124
126
55
131
138
120
55
37
55
83
92
92
86
106
78
67
122
55
126
139
105
56
126
152
127
128
158
123
91
58
178
131
138
68
67
177
68
164
112
37
93
110
136
129
138
55
56
127
189
104
127
171
103
127
99
67
126
122
110
75
99
137
75
88
67
178
103
103
55
126
109
37
55
37
99
69
138
77
160
144
92
123
86
127
84
58
92
55
126
144
81
164
126
106
141
146
132
55
37
111
91
75
132
144
93
68
99
144
138
92
68
56
138
104
55
92
134
55
119
37
122
122
56
164
55
86
127
92
138
162
110
127
92
111
167
131
68
100
178
79
37
105
77
55
55
68
104
97
67
105
199
119
152
122
152
79
37
77
178
110
169
55
122
144
56
152
110
123
93
123
148
138
124
137
126
109
140
111
138
168
117
145
122
92
74
119
111
144
82
105
127
152
104
67
92
110
134
152
92
114
122
138
68
97
127
91
180
55
37
95
68
124
119
91
67
126
126
146
122
123
138
146
99
101
126
37
179
92
104
137
92
127
105
148
88
69
168
83
77
83
110
128
146
117
79
122
79
138
142
105
97
110
109
67
92
151
74
126
69
96
165
55
92
131
168
105
55
131
127
101
126
55
77
92
79
98
55
127
127
100
110
104
178
104
92
67
110
58
92
146
119
67
55
104
138
138
110
78
144
119
138
178
101
79
55
146
178
58
94
152
146
93
165
158
89
138
37
56
92
127
110
110
171
95
118
37
144
122
110
58
103
132
37
92
144
68
95
37
125
56
130
115
109
128
92
89
168
92
137
104
142
119
55
103
110
126
171
99
140
110
92
91
158
148
146
148
56
55
178
95
67
104
122
122
163
81
67
148
92
178
78
86
139
134
138
91
139
92
168
171
69
126
126
139
83
67
105
128
122
128
111
105
97
92
126
123
67
99
152
105
130
105
105
56
165
109
92
104
164
106
37
86
37
138
128
104
55
86
124
112
89
138
119
142
132
144
144
83
104
97
95
128
91
120
103
152
92
91
152
110
92
79
67
128
132
105
67
138
91
58
122
128
146
118
92
77
110
93
144
92
110
104
126
100
124
74
138
137
126
127
104
92
114
152
119
171
37
99
126
91
67
127
86
107
86
178
125
58
37
92
111
111
149
67
56
146
158
93
131
92
105
144
55
103
110
122
92
67
127
158
104
102
92
58
67
142
92
104
127
134
105
92
93
171
92
77
110
86
152
89
147
138
67
110
113
178
178
78
139
93
67
93
92
127
107
136
138
105
138
92
138
134
89
93
120
138
69
55
152
55
126
55
132
86
79
91
158
110
146
110
122
75
37
105
178
139
138
37
92
92
105
165
93
122
122
93
92
131
76
145
55
75
109
92
55
92
122
55
55
37
37
94
105
110
178
125
103
127
92
77
126
110
55
75
55
86
69
79
92
92
120
105
105
106
75
152
80
139
128
56
109
139
169
79
122
105
93
111
126
138
55
144
152
178
122
180
55
69
69
122
107
75
144
92
114
112
37
93
142
107
126
144
144
98
56
141
144
69
122
134
144
169
178
148
37
86
109
37
139
74
98
92
92
99
122
67
93
86
84
116
126
99
67
37
110
92
86
152
94
146
199
58
93
93
92
56
139
128
138
77
55
141
105
140
127
93
112
55
104
99
118
109
92
169
110
110
138
127
123
98
55
55
144
109
152
104
105
136
76
127
68
110
126
55
148
105
126
103
140
104
171
178
92
74
152
55
144
140
101
92
104
79
127
123
144
67
103
130
74
95
95
75
105
171
110
105
145
110
139
178
74
126
122
37
124
93
148
93
135
138
130
89
146
165
74
93
114
79
67
92
110
122
111
56
136
126
130
55
104
122
81
92
132
69
134
123
130
55
122
138
124
126
110
103
74
92
105
75
126
128
55
58
68
79
178
146
92
162
119
75
138
37
84
134
167
120
138
69
178
69
77
55
92
126
139
104
92
131
126
92
91
79
103
84
114
104
126
92
152
112
92
122
92
103
122
105
110
139
92
158
122
122
148
126
67
83
55
122
106
56
99
169
108
55
37
132
55
56
122
91
83
122
110
126
92
160
56
140
124
136
104
58
122
91
126
89
112
105
138
77
122
55
169
97
86
138
95
77
127
93
37
128
107
67
180
55
74
107
83
92
122
126
86
79
79
58
138
126
122
95
169
139
156
56
123
55
124
93
110
126
114
67
77
104
126
112
92
139
100
92
91
139
92
92
105
146
55
152
119
69
118
77
104
144
92
91
138
105
91
56
92
69
138
103
92
56
103
93
164
92
110
125
135
128
81
122
92
92
122
126
92
138
125
122
117
79
77
111
138
112
86
55
101
117
55
77
93
110
122
69
158
108
56
169
108
56
122
122
114
167
126
110
122
56
169
199
86
146
76
56
56
126
93
84
171
105
92
114
69
109
110
105
152
122
110
67
126
111
77
112
56
67
94
138
126
105
123
105
56
56
37
144
122
122
91
128
106
126
67
119
129
136
122
83
58
104
95
75
126
105
131
124
139
93
104
123
122
126
75
110
92
68
158
91
79
67
136
111
74
92
37
160
123
127
92
58
67
109
144
69
140
146
140
81
56
158
74
77
79
171
55
142
130
107
93
178
74
129
134
178
152
37
69
127
134
86
138
144
149
109
126
69
67
131
122
67
144
136
92
86
122
124
103
92
128
86
180
92
122
127
138
103
146
126
55
55
130
148
128
130
105
178
106
126
91
138
138
55
126
92
55
140
104
146
122
169
74
122
104
67
93
138
106
74
111
122
92
178
67
69
126
126
105
134
55
37
135
163
55
91
55
103
119
128
92
58
152
169
92
148
139
151
105
93
127
107
55
55
126
83
104
86
55
58
93
112
92
138
126
93
149
152
121
55
138
92
139
112
56
67
124
126
162
67
56
58
83
104
122
75
146
139
105
67
123
152
122
77
114
140
169
122
120
169
95
79
105
144
132
79
55
169
92
128
101
114
110
101
138
109
68
84
56
122
92
138
145
67
110
105
123
83
139
67
152
169
122
178
74
105
91
168
56
139
126
55
81
92
92
122
122
138
67
86
104
114
55
151
92
131
101
130
138
91
134
126
119
138
99
92
110
152
91
126
110
149
56
69
134
122
128
91
122
107
139
126
86
159
104
103
148
67
110
126
147
128
152
127
78
58
122
92
91
99
55
111
105
106
160
69
122
55
64
123
105
107
122
123
134
99
122
102
126
110
67
139
169
126
163
67
110
86
110
110
69
127
142
119
77
120
131
103
110
138
55
110
55
110
138
79
131
128
83
144
55
134
92
135
112
86
152
119
92
139
123
91
122
55
58
67
178
92
123
124
126
127
97
67
111
37
88
37
110
119
55
55
86
37
92
178
146
67
145
101
110
144
111
152
104
171
92
138
67
92
55
67
188
110
58
98
110
93
140
99
127
92
97
168
105
131
145
74
114
79
146
168
105
110
92
117
118
67
119
122
75
148
126
127
145
89
123
72
123
150
56
105
131
55
67
132
77
127
105
67
104
122
55
114
56
92
107
110
122
126
104
112
97
56
93
123
110
128
110
178
105
122
86
122
58
111
55
110
55
110
37
79
126
178
109
69
110
150
55
89
55
92
128
86
128
37
122
145
128
67
103
58
99
98
86
103
138
91
100
55
55
171
128
136
86
110
121
55
152
79
146
165
127
69
79
77
92
144
146
92
138
139
105
92
92
100
103
123
109
75
67
91
104
134
92
97
106
139
92
138
162
105
79
111
130
127
105
122
99
144
126
128
111
37
117
91
126
97
115
55
90
92
112
56
93
130
86
92
56
122
109
127
132
139
92
58
56
103
158
103
79
126
121
126
138
69
115
99
130
111
144
122
99
134
105
127
138
74
101
110
91
93
101
74
120
178
92
73
55
105
122
110
139
106
104
168
139
79
95
55
122
92
104
139
112
99
144
92
106
178
144
37
55
123
75
109
168
55
139
178
77
128
79
126
123
105
67
168
110
111
101
122
148
94
138
146
89
111
152
110
138
68
152
138
105
138
165
100
117
180
55
110
74
92
169
111
79
93
122
97
138
110
104
120
110
140
126
103
118
109
126
138
109
144
158
119
178
110
37
135
55
142
126
105
93
137
126
67
138
111
123
92
67
130
105
158
76
128
86
89
93
88
122
110
122
144
88
122
122
69
126
131
88
92
107
127
69
129
122
92
89
37
113
122
135
67
122
56
111
127
99
144
119
119
139
74
152
58
122
58
138
103
152
164
144
126
133
122
104
122
92
110
127
104
110
112
83
68
79
171
55
100
79
149
92
132
126
100
37
102
112
126
190
130
178
92
55
144
105
67
162
122
141
121
78
56
110
56
126
118
92
144
119
138
197
122
92
55
77
140
128
111
110
122
122
92
120
139
139
58
146
55
55
55
75
182
55
119
138
69
79
109
128
139
69
122
92
126
144
99
37
55
122
93
136
148
109
55
110
105
104
74
138
37
79
93
134
75
92
106
127
144
58
110
92
92
55
138
89
122
145
110
128
105
55
104
139
55
182
69
77
123
126
104
134
124
148
91
67
163
122
168
67
105
152
126
127
92
105
138
79
156
101
178
169
56
171
79
92
105
131
103
146
158
139
67
105
152
79
175
121
105
127
95
153
86
77
93
83
69
146
178
126
55
126
165
110
101
104
169
67
55
152
104
92
131
134
163
83
128
144
56
120
119
58
122
55
69
119
122
144
118
122
139
56
99
135
92
131
138
119
168
122
107
105
67
109
126
105
105
92
86
58
149
178
55
144
139
77
109
92
126
119
67
104
84
99
92
180
122
55
104
125
139
79
92
127
67
77
126
105
37
55
97
84
67
114
147
168
87
55
93
152
122
104
105
122
81
102
164
163
77
108
75
178
86
77
105
105
72
84
126
67
95
75
120
138
102
67
134
138
101
101
69
99
55
124
109
110
91
91
131
110
146
119
130
69
128
107
97
56
126
104
169
92
88
180
178
124
178
105
55
56
56
124
93
114
109
104
93
55
122
128
146
110
144
127
178
79
99
58
56
110
104
124
110
139
136
55
91
146
110
56
110
95
122
105
163
55
55
99
158
138
138
79
130
110
114
77
160
158
105
139
105
111
110
138
91
110
127
56
123
137
92
77
112
109
178
158
97
162
76
55
105
118
169
144
128
119
93
58
58
124
138
144
79
83
107
128
55
134
69
56
55
158
158
115
107
122
124
107
56
56
152
126
37
94
105
86
128
122
109
92
56
97
110
68
97
136
111
75
58
56
55
120
92
67
77
122
126
37
132
129
168
55
138
56
123
162
58
92
92
111
86
92
129
89
139
126
107
130
144
110
55
92
37
131
37
139
127
92
128
111
119
171
78
104
123
127
55
110
105
98
138
119
119
152
110
67
91
126
169
55
122
104
163
55
126
126
136
104
178
111
104
37
105
122
93
139
37
180
127
160
56
67
136
104
119
144
37
105
124
178
86
84
67
110
55
124
128
165
138
117
89
110
105
105
100
126
137
58
146
111
134
146
105
55
122
114
56
126
77
110
110
122
120
120
138
92
58
93
144
110
92
160
139
55
138
104
100
158
144
163
122
134
122
92
93
92
118
97
120
91
91
128
105
92
171
110
67
152
128
87
169
128
58
126
83
127
105
122
103
106
92
158
118
58
152
37
103
58
99
126
123
126
56
122
67
67
80
67
79
92
110
79
68
97
55
139
144
123
178
69
131
119
144
95
152
92
139
127
69
121
134
103
105
86
74
77
110
69
104
112
178
37
146
119
109
140
168
126
134
93
122
126
158
169
168
37
86
132
134
126
134
69
178
67
67
144
56
75
86
110
92
114
74
92
138
134
130
95
102
56
127
69
138
124
122
122
152
94
122
132
104
93
92
138
67
138
146
146
93
86
99
109
55
180
119
182
152
74
131
122
144
67
146
121
101
177
123
107
117
122
178
75
80
92
126
140
109
178
127
111
134
75
55
110
77
124
105
144
67
144
126
169
92
126
91
92
178
55
162
122
124
56
86
107
92
81
119
118
37
169
88
148
110
124
92
99
138
67
169
126
122
100
119
178
67
79
109
105
134
134
77
92
97
152
95
122
107
114
148
92
139
69
110
138
138
110
138
180
122
140
93
110
139
93
148
109
138
139
146
99
56
55
171
74
91
92
67
135
55
105
139
55
92
91
122
128
55
128
126
86
79
102
148
138
56
105
104
92
123
119
104
79
127
77
124
140
107
55
138
104
127
123
79
55
56
93
84
110
132
163
83
55
104
56
56
144
55
37
37
171
140
144
105
122
128
178
105
158
93
92
129
68
37
99
126
126
109
148
67
152
92
92
130
126
110
105
128
101
104
37
134
55
103
110
92
83
152
144
103
99
69
148
127
138
37
67
92
100
146
138
121
91
152
112
86
144
178
132
112
68
152
74
127
136
80
105
104
104
122
123
37
79
152
56
69
77
94
122
127
127
139
178
169
114
122
67
152
93
137
110
55
105
107
55
58
158
79
138
128
103
68
137
91
168
55
110
86
138
105
109
136
144
55
68
131
139
138
55
68
71
107
134
178
128
116
55
112
105
77
56
122
67
114
123
101
123
129
74
164
123
138
126
86
55
104
101
152
148
127
123
122
146
103
67
37
110
141
104
124
137
104
109
120
119
67
111
119
105
122
110
67
126
124
92
149
127
74
127
110
122
105
81
136
158
140
95
74
126
95
123
58
67
139
138
56
69
93
148
37
102
67
126
120
115
138
162
139
92
127
164
126
81
123
122
104
99
142
56
110
56
58
104
69
93
152
102
79
77
127
103
122
134
126
131
171
178
55
92
105
123
56
56
86
105
103
104
144
127
99
99
98
56
55
106
123
140
92
110
58
132
144
146
105
109
92
37
92
105
126
104
178
123
138
55
79
56
122
139
102
105
68
132
67
111
86
86
135
56
146
105
103
74
134
150
139
75
118
92
126
93
91
101
75
88
123
107
140
55
55
110
105
93
55
178
130
123
107
56
95
128
110
107
111
126
92
110
144
99
138
162
118
74
58
110
92
55
68
105
103
134
58
68
138
91
197
126
37
81
86
92
105
126
99
109
95
105
146
56
92
126
56
126
97
58
169
119
134
126
138
37
178
126
178
127
124
107
138
144
130
55
104
102
131
55
56
152
168
130
99
139
127
130
56
89
110
56
144
126
55
92
169
98
56
139
163
126
67
104
55
126
55
92
178
83
128
102
110
105
105
105
122
92
148
119
105
132
139
127
152
79
109
138
146
126
158
58
126
91
56
152
127
75
56
123
97
112
85
92
55
123
92
99
122
157
103
146
169
111
55
146
83
56
55
93
138
69
162
93
146
92
144
162
83
55
123
55
119
92
122
97
93
138
122
55
103
69
122
56
67
92
55
108
67
69
58
104
139
91
104
110
122
58
79
149
81
132
78
89
67
167
105
132
92
105
123
111
78
92
55
107
144
118
92
37
112
55
99
92
122
122
37
178
56
74
56
107
144
105
106
151
123
127
127
118
97
89
152
97
105
122
109
110
100
100
178
97
138
56
111
91
122
127
99
134
122
132
181
55
127
119
117
55
120
77
103
127
152
123
117
56
142
86
84
99
91
145
55
74
122
111
69
108
67
125
110
58
37
168
67
178
138
56
128
56
155
182
122
75
67
104
122
67
104
37
122
138
127
131
79
98
136
126
56
122
138
103
110
58
93
92
132
109
37
110
89
122
67
139
104
68
105
110
148
136
122
92
93
69
97
55
150
138
119
55
67
77
123
126
123
58
131
100
126
58
117
84
169
144
92
105
57
127
67
164
138
117
109
125
92
124
144
92
127
84
83
110
146
122
67
92
55
110
67
55
74
112
56
126
105
68
92
134
113
55
138
110
110
169
84
98
112
124
178
56
92
86
127
109
171
75
126
55
140
105
55
93
122
128
56
92
99
103
37
105
74
105
107
104
55
146
106
112
105
79
99
122
98
99
106
131
98
91
86
79
119
168
158
98
92
144
135
122
92
136
132
110
98
67
83
105
97
56
105
58
138
81
120
56
119
178
97
146
67
126
122
138
67
148
55
86
77
55
75
119
96
93
104
55
67
138
55
105
86
110
64
92
128
92
69
103
55
144
152
93
139
93
118
58
92
91
123
69
104
146
104
107
107
67
122
93
126
128
67
127
55
126
122
77
75
110
139
163
104
55
104
107
71
67
79
139
85
123
180
122
77
139
56
138
110
69
123
80
152
139
55
86
142
104
111
169
119
164
168
75
91
97
178
55
56
58
93
75
93
126
149
92
139
126
77
110
171
169
138
98
105
164
86
138
79
55
106
67
169
132
122
55
126
121
123
148
128
105
122
142
126
93
55
105
93
140
77
92
79
178
69
162
169
131
92
109
146
93
138
99
67
56
100
158
103
100
103
91
178
98
92
73
55
69
137
55
124
94
110
139
104
114
55
111
118
110
122
144
178
96
37
178
178
55
55
148
79
101
93
146
110
105
56
122
92
77
122
122
110
75
120
92
103
55
160
41
178
125
152
55
110
92
127
122
56
55
122
178
134
138
74
55
97
86
122
105
162
74
139
107
138
126
138
138
106
138
58
123
132
123
169
92
128
83
104
108
123
75
126
55
119
89
97
114
104
139
110
92
103
100
67
69
134
97
99
99
110
127
144
95
144
110
55
111
112
103
107
126
107
55
101
58
126
55
89
122
83
67
126
67
67
105
130
118
109
77
69
92
67
169
55
138
131
74
92
87
128
136
92
122
93
122
92
105
93
104
55
169
138
55
93
146
69
106
120
179
56
178
152
93
55
92
86
96
55
127
110
123
55
55
122
123
122
91
92
99
120
144
114
126
107
69
105
110
144
84
158
127
123
92
144
103
105
110
89
178
55
171
122
110
37
92
123
105
144
76
109
55
131
81
123
147
110
109
81
178
92
189
140
55
77
126
56
144
126
86
122
115
178
126
92
107
107
79
110
104
69
126
138
140
92
93
122
55
171
107
131
92
132
146
126
86
119
144
119
92
122
131
181
101
146
110
126
127
140
139
55
86
68
105
127
169
135
99
108
56
132
144
124
110
128
55
112
110
169
56
104
148
138
139
110
104
74
104
92
138
139
77
146
92
77
128
110
101
105
178
55
126
92
138
98
55
111
67
58
67
61
180
98
110
127
75
105
127
67
178
126
169
114
67
55
104
146
92
93
146
99
58
92
37
169
169
146
84
94
92
132
104
146
55
139
178
110
92
56
55
74
98
117
110
122
97
84
110
77
110
122
159
107
122
138
72
55
89
72
148
104
97
134
92
139
105
110
92
55
122
107
91
93
37
121
123
105
138
138
122
145
67
127
83
109
106
86
158
67
111
92
92
56
86
169
123
55
168
67
55
146
122
92
139
122
56
164
110
98
92
108
105
107
122
92
84
118
124
123
138
127
92
111
150
169
132
158
134
96
92
122
158
105
37
122
37
110
105
56
143
126
138
124
122
93
69
137
115
55
120
99
104
79
92
139
55
122
107
144
105
56
128
110
110
123
55
132
86
171
57
67
110
109
178
91
67
89
75
79
139
67
67
119
139
37
148
55
81
138
94
92
87
138
126
105
67
75
127
74
105
105
58
69
67
67
88
75
100
137
139
69
92
139
74
69
96
137
55
117
127
108
56
86
91
77
140
107
92
104
77
109
141
128
88
74
120
129
178
134
128
140
138
163
140
55
178
87
130
107
92
96
127
146
148
126
89
140
37
55
144
58
146
138
171
124
86
103
148
171
89
111
104
104
115
105
128
134
58
178
130
93
178
129
171
118
92
130
163
144
178
129
105
123
55
135
122
126
162
127
75
138
97
103
79
86
127
99
56
123
105
142
103
127
158
93
104
55
74
138
132
149
101
134
128
67
55
155
124
67
79
119
122
55
105
55
93
122
55
92
58
178
84
126
74
131
83
93
118
152
131
92
130
91
55
105
139
147
93
124
58
104
105
91
171
128
77
178
37
110
86
152
56
144
58
55
117
135
93
55
115
92
111
110
37
77
79
144
131
55
104
102
146
120
55
112
79
127
137
139
37
110
110
104
111
144
110
144
167
119
126
92
69
93
100
152
123
152
93
120
55
56
126
138
138
55
119
92
74
55
37
83
106
119
56
79
79
145
109
92
111
37
92
134
75
126
93
103
119
92
126
124
84
112
126
109
92
55
56
126
105
67
92
56
55
146
79
68
126
55
97
101
67
89
92
92
122
93
126
58
37
105
93
73
126
165
158
67
89
125
178
136
171
127
55
144
56
148
92
131
41
79
119
137
139
83
122
139
74
138
130
97
124
126
152
105
67
168
67
126
143
91
122
95
109
103
83
122
126
37
116
119
103
178
92
37
124
123
103
124
58
129
128
122
158
138
74
79
77
92
122
110
111
74
110
127
126
105
152
105
111
128
92
114
110
105
127
91
103
139
122
105
56
128
101
128
109
104
88
138
93
75
93
163
86
129
138
84
107
105
100
74
83
152
101
148
140
37
92
37
68
56
123
83
99
127
92
92
69
127
105
140
138
122
124
92
103
169
91
55
123
108
110
86
91
58
104
138
105
146
105
128
105
158
127
107
56
127
92
171
162
103
105
92
169
93
178
93
152
97
78
77
105
148
91
103
69
102
178
131
92
122
105
171
69
134
56
55
152
92
79
55
67
178
93
58
146
88
109
158
136
109
92
55
64
83
139
139
122
109
169
126
75
152
83
110
105
56
138
105
126
145
125
141
94
75
110
169
92
151
56
67
104
110
79
148
105
127
91
100
55
92
110
93
56
91
79
152
86
56
37
93
83
114
107
151
178
104
180
132
162
122
58
92
58
127
144
152
139
167
146
69
91
107
58
122
111
107
110
58
139
136
55
77
92
111
79
92
110
104
55
98
56
126
103
88
129
178
56
99
114
126
79
115
104
147
131
37
138
105
146
77
122
122
92
56
55
105
81
112
178
171
122
67
178
91
137
56
146
124
55
163
126
93
124
127
137
111
55
152
132
55
112
91
58
131
104
125
168
69
122
98
163
91
122
108
92
127
135
58
74
91
83
77
122
127
163
179
96
56
163
84
95
112
105
92
127
137
67
55
158
109
126
110
152
134
99
55
146
147
75
130
92
105
127
93
127
122
75
92
151
127
137
69
178
111
127
139
105
92
110
55
152
55
69
139
178
144
126
91
131
105
122
74
93
122
80
84
146
97
79
84
127
79
158
140
163
178
146
137
99
58
111
37
102
109
109
104
58
109
137
105
139
119
139
112
86
67
95
122
74
122
76
55
104
74
56
67
126
139
109
92
144
104
140
119
122
110
122
109
69
119
75
110
110
131
78
131
56
146
104
130
121
37
56
122
124
110
178
138
104
93
74
105
144
91
132
122
117
148
112
158
131
110
92
84
122
94
158
68
110
171
138
138
56
112
160
55
126
199
92
130
138
55
117
105
117
104
169
119
110
92
105
55
105
95
81
99
110
68
144
119
97
78
105
103
92
122
112
92
107
55
128
67
92
37
67
128
105
119
92
110
148
132
123
93
104
55
55
105
126
86
92
120
138
128
37
111
130
121
104
109
105
81
100
126
91
86
55
138
126
67
81
111
122
122
110
114
178
169
126
121
178
37
105
105
178
102
126
123
99
92
97
103
134
146
112
127
64
178
83
146
108
105
110
169
110
107
110
37
93
92
105
92
92
37
92
134
105
146
178
67
152
58
138
178
99
58
152
123
55
137
119
135
163
102
146
138
99
55
77
110
122
56
126
97
103
138
103
91
58
111
92
74
109
88
95
105
92
165
104
110
114
152
92
103
188
104
122
122
140
55
105
98
111
163
122
105
111
104
145
105
118
122
105
67
61
168
140
75
141
74
128
110
178
85
56
110
180
69
58
132
92
91
110
69
122
120
114
136
105
92
93
37
56
146
105
104
111
81
169
171
199
86
120
74
79
152
139
55
122
37
109
160
77
99
92
56
86
123
138
56
69
91
138
117
86
105
105
91
111
178
110
126
122
104
152
142
119
132
126
127
117
56
77
67
109
93
112
146
92
126
126
74
148
86
92
140
92
122
135
55
68
134
58
132
169
109
88
110
105
129
122
109
58
83
126
78
79
129
91
112
139
123
125
110
162
124
122
92
139
178
136
67
105
140
148
125
110
103
180
37
98
97
107
68
67
139
104
138
109
135
114
55
92
123
105
134
67
103
91
92
123
91
96
110
163
88
134
92
92
92
158
86
55
152
116
125
139
168
138
137
134
75
169
105
67
67
107
104
137
58
99
123
37
122
110
67
138
144
91
56
119
102
97
164
98
37
126
110
86
146
55
158
86
105
137
55
137
144
139
121
110
144
146
58
137
93
83
163
109
136
86
99
169
152
97
140
171
127
67
110
126
139
55
56
68
105
124
105
104
97
55
75
123
105
91
55
136
134
109
92
92
134
105
67
77
126
92
178
152
79
178
86
122
55
86
105
55
169
138
178
105
164
144
144
126
69
120
122
103
93
104
92
86
152
122
131
122
146
141
110
126
101
152
37
138
126
122
105
58
75
75
91
136
178
103
91
56
124
126
100
105
93
92
105
105
131
122
111
93
139
55
92
81
137
119
55
126
93
55
148
100
124
122
126
163
97
129
97
67
142
130
158
138
122
107
105
126
128
126
134
110
163
128
103
92
55
139
109
92
103
122
130
67
98
138
78
152
139
73
93
55
93
105
146
56
136
122
103
140
131
55
139
67
86
55
138
128
122
92
178
135
58
127
92
97
74
67
105
86
146
110
92
124
58
37
138
102
86
103
98
91
93
67
91
134
112
68
124
105
56
99
105
55
92
110
105
123
138
105
169
96
93
140
127
74
119
55
158
58
110
123
104
124
146
55
92
103
138
67
122
165
67
105
169
104
147
83
86
65
67
123
91
98
73
132
122
122
104
92
55
97
105
110
149
121
104
102
98
130
91
131
37
119
79
92
119
55
147
93
139
118
67
107
86
110
58
86
105
105
58
67
55
75
146
93
37
168
122
55
110
142
163
126
107
92
92
56
77
55
74
83
138
152
132
67
142
145
105
104
126
92
134
92
110
92
134
56
55
55
92
83
148
81
117
69
100
99
132
98
105
93
163
138
92
68
152
84
100
149
126
37
105
112
92
144
122
104
105
56
122
178
69
55
58
92
109
126
91
144
92
123
169
92
56
106
135
132
138
102
148
138
139
138
111
79
142
169
131
58
96
144
128
83
109
55
92
134
67
55
123
67
132
151
180
127
77
68
93
92
130
146
86
80
92
146
138
138
122
104
119
135
122
163
37
152
109
139
139
126
145
105
55
99
55
119
122
69
178
67
89
92
103
158
76
58
55
109
120
37
145
92
119
124
69
104
144
88
120
123
126
69
93
110
128
79
178
122
75
132
67
126
132
122
100
83
37
92
110
67
122
109
139
126
139
128
97
123
148
165
83
105
100
84
89
114
120
122
122
140
92
105
68
108
169
104
144
122
92
127
146
119
55
127
131
91
97
69
37
106
138
96
130
101
97
74
105
180
110
37
86
37
69
105
128
98
56
74
169
111
118
178
146
55
101
86
85
93
122
77
111
122
139
152
138
138
158
146
105
91
119
58
37
140
101
110
105
55
121
109
67
134
126
105
55
152
110
114
92
99
134
137
135
55
162
69
105
138
67
124
92
92
55
165
126
93
92
99
55
92
117
115
169
168
110
56
107
89
78
164
37
56
178
123
126
146
56
105
105
122
69
148
67
162
109
86
91
102
58
69
99
37
162
67
67
144
122
58
109
140
110
102
110
178
106
92
122
99
167
105
98
137
69
67
86
105
130
127
110
138
105
107
83
74
110
104
79
55
37
75
114
110
86
75
126
136
111
140
126
112
178
103
131
122
86
99
167
58
92
61
111
74
68
146
169
93
93
168
128
127
119
139
79
139
120
123
169
69
180
105
58
180
114
146
105
55
110
125
55
37
138
139
79
122
120
136
104
92
56
97
117
134
111
105
169
126
146
110
97
126
105
163
126
101
131
93
111
107
67
56
126
126
110
103
126
92
136
134
88
123
98
139
139
67
126
92
165
92
104
74
146
146
120
110
138
139
110
104
86
122
37
55
55
58
123
138
141
158
138
92
67
126
55
110
111
37
138
178
146
102
67
140
105
137
86
134
111
67
67
103
105
68
119
104
122
91
126
179
158
68
112
67
104
77
139
139
127
119
122
178
68
169
92
98
127
180
120
120
56
132
131
178
92
75
110
118
122
93
100
146
124
109
105
178
56
122
97
105
109
97
131
127
152
104
79
178
125
128
127
126
129
148
138
105
109
134
92
180
128
149
138
56
136
122
99
104
92
67
146
92
122
67
123
171
91
178
110
105
128
105
55
92
67
108
105
89
86
104
119
92
144
123
110
104
58
92
138
67
152
152
111
78
105
99
67
56
131
139
178
78
144
152
130
122
105
127
107
140
69
109
77
151
100
67
104
171
55
83
93
111
69
178
144
139
110
92
69
99
58
122
158
132
110
140
146
171
110
91
152
98
55
74
93
105
103
138
105
140
92
138
92
93
92
58
138
122
55
92
99
140
77
69
69
104
127
122
92
126
105
163
138
69
55
91
92
122
117
158
122
104
144
107
84
55
163
119
67
67
86
92
104
171
120
126
114
109
111
77
93
139
105
67
107
124
104
105
126
58
105
137
140
169
107
117
69
69
81
84
132
77
79
164
110
37
104
104
122
122
105
79
84
105
152
148
126
104
138
126
92
169
79
56
92
182
67
127
107
89
126
81
92
119
114
149
75
91
98
55
79
74
119
122
126
67
126
178
126
99
55
101
110
56
110
79
55
37
112
95
55
55
127
79
56
146
56
126
93
114
158
88
132
126
79
67
91
69
110
138
37
55
152
67
120
119
77
69
67
158
137
140
156
169
117
128
75
92
56
58
138
92
139
98
105
91
105
75
91
67
122
105
127
124
37
140
127
92
125
91
128
68
55
138
139
122
83
109
69
103
105
164
87
78
163
119
138
87
138
77
105
114
89
127
91
67
127
78
79
138
105
110
77
160
134
122
55
105
138
121
67
96
112
83
105
114
67
158
124
154
74
67
110
111
119
105
67
118
56
110
92
127
152
164
93
56
139
107
136
104
55
99
55
138
144
171
74
84
171
168
56
115
86
124
93
149
107
55
79
122
162
67
139
83
126
146
114
126
131
69
122
127
93
69
144
135
137
104
93
107
169
126
171
169
120
105
138
75
84
99
69
92
171
138
152
126
162
122
106
152
77
55
117
138
110
77
162
56
77
148
75
117
124
180
92
105
134
67
105
103
104
127
178
86
91
158
67
123
92
103
164
110
56
105
162
104
139
92
79
56
83
91
178
178
104
55
92
79
58
167
92
128
122
56
93
92
105
100
127
77
69
56
144
128
58
74
148
67
93
110
88
110
80
138
105
93
123
88
127
92
178
171
99
105
74
58
95
110
130
75
37
105
95
92
131
107
138
126
160
91
93
138
89
67
108
105
122
139
108
178
117
126
77
92
128
122
79
132
128
58
178
107
86
37
178
68
37
171
67
105
144
85
105
138
151
56
104
139
55
92
111
110
138
91
92
86
106
67
104
99
67
112
92
92
118
139
55
138
117
67
102
124
113
178
55
69
139
58
67
139
79
126
169
127
106
131
119
69
104
79
93
169
152
92
105
58
83
138
126
138
143
119
118
55
92
110
178
92
78
138
110
122
111
55
93
109
68
79
67
97
92
105
56
148
169
113
128
127
139
103
37
92
56
134
91
55
144
144
75
136
178
95
77
146
91
92
97
128
131
169
55
126
55
105
138
138
84
55
169
129
99
101
110
139
138
127
55
56
104
120
93
93
130
110
127
136
112
99
146
122
124
93
110
152
110
125
67
117
68
67
126
144
129
139
111
110
92
123
138
126
146
105
83
68
103
105
139
127
104
127
163
110
123
74
122
65
122
92
130
107
111
119
105
37
178
142
128
145
109
91
37
105
108
67
102
118
117
110
83
149
105
160
120
55
122
92
110
169
122
179
138
69
89
144
139
127
109
67
122
67
113
107
139
55
79
139
171
109
152
128
123
107
105
92
124
92
134
122
126
133
92
111
138
117
92
110
67
124
86
119
129
92
67
152
144
139
105
56
119
146
37
105
138
55
110
98
105
107
69
107
84
128
77
136
72
92
55
105
178
169
91
119
122
152
101
74
107
37
92
167
93
134
79
91
99
158
55
37
92
103
134
55
134
93
158
86
37
92
126
110
139
110
117
123
79
168
104
58
128
58
134
58
119
140
119
110
122
180
180
127
128
110
86
69
122
58
128
105
126
83
101
122
122
79
169
69
101
37
67
67
56
124
103
136
37
69
131
139
92
126
111
105
130
135
98
122
92
97
58
110
148
37
56
142
58
94
83
168
169
92
92
125
107
99
139
109
124
92
152
120
105
122
56
127
112
138
117
55
138
110
99
138
103
37
93
55
104
92
110
139
148
111
105
120
138
55
105
124
104
99
130
92
109
122
93
112
56
92
75
55
92
56
122
72
122
138
37
110
101
58
128
169
92
107
110
122
152
106
107
126
178
104
94
132
110
107
105
107
136
97
91
37
122
117
92
79
134
124
139
55
56
103
111
87
144
119
128
86
55
136
140
152
139
109
92
37
119
152
110
138
64
110
127
55
104
169
99
107
105
122
92
105
109
105
114
105
127
84
112
88
125
92
61
94
158
139
127
146
119
112
118
134
58
104
122
122
55
119
56
110
110
83
107
104
120
58
171
139
144
178
122
67
145
105
128
105
109
112
163
117
93
122
120
105
104
92
145
139
120
99
139
105
79
146
92
171
83
73
67
144
69
91
107
92
92
91
69
145
126
138
124
93
139
120
138
67
55
158
105
83
118
67
178
105
100
134
86
91
97
138
55
107
134
111
127
105
93
152
93
55
104
139
105
127
122
169
144
162
95
134
119
140
139
58
93
104
123
122
125
105
122
109
115
109
152
110
107
55
180
67
92
69
67
135
139
55
114
92
67
37
104
77
83
132
55
134
111
139
105
144
75
127
105
92
111
114
68
83
92
148
152
86
93
100
105
126
124
93
119
144
75
93
109
144
178
105
55
178
178
86
77
99
75
109
139
110
84
67
91
136
127
86
67
99
104
58
122
199
92
104
67
105
109
105
126
74
123
126
110
92
150
169
79
110
105
138
146
77
122
69
119
67
83
67
164
55
107
83
92
105
138
73
158
97
149
119
144
104
137
122
123
37
162
93
58
104
122
102
79
105
67
120
122
77
74
67
107
127
177
103
137
79
169
107
125
163
92
138
107
178
110
148
55
101
93
106
110
142
122
178
77
58
152
93
139
178
74
132
109
126
55
83
114
192
37
105
131
107
178
91
138
92
122
110
92
89
134
126
79
127
110
79
93
122
111
110
104
68
140
122
58
92
93
109
136
135
165
128
111
199
110
122
144
107
74
122
126
178
180
178
92
139
98
109
92
92
111
91
105
110
140
122
56
92
160
101
92
105
104
74
93
104
103
104
37
58
110
134
76
109
126
144
37
119
55
92
55
74
126
105
105
56
146
111
111
129
110
124
55
130
92
79
110
122
107
91
67
92
163
123
122
144
93
109
178
162
126
75
140
149
101
139
93
122
97
92
92
105
55
146
92
91
97
67
163
110
86
124
99
118
92
84
64
83
109
56
146
139
111
140
92
114
92
125
93
77
130
138
122
93
92
126
92
56
152
92
122
86
122
123
67
109
127
126
129
149
92
97
105
104
111
140
104
122
92
136
123
146
109
146
55
91
137
134
75
94
136
86
124
105
92
138
109
163
128
122
67
106
91
37
78
131
58
146
131
110
106
67
162
120
140
37
97
105
91
111
122
126
37
111
79
120
127
56
158
56
114
93
55
111
104
55
109
130
134
146
152
137
124
105
118
147
146
117
68
37
149
89
93
139
104
55
91
124
110
68
37
127
126
158
105
79
74
138
138
110
105
144
127
131
126
92
69
92
110
92
169
58
37
37
152
93
117
67
126
134
119
107
129
168
92
111
158
105
137
96
92
135
37
104
122
139
77
112
77
138
144
126
93
138
56
83
138
112
105
85
41
92
140
83
92
146
158
138
110
111
110
145
110
138
127
127
92
107
56
144
56
152
158
103
126
92
107
92
127
113
100
92
139
110
152
92
58
127
93
55
114
163
75
110
55
85
99
178
56
138
142
126
152
83
140
105
178
152
122
146
168
119
131
58
122
131
105
178
67
119
98
168
122
67
104
152
163
105
92
122
110
69
120
122
140
128
92
120
102
92
92
123
138
109
71
126
67
144
92
37
92
114
138
79
126
67
144
107
107
122
58
69
124
110
102
146
128
180
112
56
79
55
92
83
92
130
107
111
92
92
122
126
126
103
110
123
144
105
83
56
105
148
78
104
119
105
134
146
105
126
126
102
131
111
97
56
149
68
123
120
69
104
56
150
74
178
103
74
55
86
98
55
55
158
152
122
93
67
37
122
55
139
79
138
158
67
112
74
55
64
128
98
105
58
67
134
105
111
110
122
144
137
105
162
105
93
101
100
122
104
120
109
134
171
109
83
92
67
37
120
127
55
131
123
93
55
58
93
101
97
111
68
130
126
115
105
104
106
126
104
93
134
178
92
55
134
114
105
139
110
68
105
139
152
93
92
93
92
122
56
123
92
110
124
128
69
126
58
92
144
110
122
136
147
56
105
122
138
109
80
86
122
130
79
109
91
67
163
138
102
93
138
131
103
120
127
139
92
140
123
83
92
138
104
55
81
122
126
152
123
92
138
80
41
55
84
134
178
122
58
119
92
128
111
93
134
67
104
122
126
98
140
56
119
128
109
105
138
127
92
110
144
109
104
133
84
146
77
77
104
122
130
58
122
110
139
67
105
107
105
130
92
122
91
93
55
93
109
104
139
56
75
178
119
92
119
126
126
110
123
144
105
128
122
126
95
55
119
111
123
110
101
144
55
138
130
152
114
158
81
83
67
146
145
92
79
86
138
110
55
104
55
74
139
86
135
123
101
131
139
126
139
119
67
123
110
122
123
37
87
110
120
146
178
138
91
92
125
180
77
92
79
105
152
67
103
93
122
121
122
105
169
129
67
98
122
109
114
144
92
91
127
100
111
92
78
130
122
105
126
119
55
178
124
56
105
145
165
123
92
67
110
141
55
169
77
58
111
127
75
103
164
110
56
77
144
93
68
178
125
105
92
123
122
169
122
105
79
138
91
144
105
103
91
84
124
138
67
144
112
126
127
144
111
84
56
156
56
178
104
152
55
56
171
55
139
58
92
108
110
152
146
86
144
105
136
123
92
37
93
110
92
99
180
92
84
126
103
107
104
94
126
122
92
178
110
140
123
37
124
98
148
171
148
197
169
110
122
109
126
69
111
55
109
83
139
122
93
105
55
138
162
104
105
101
75
69
91
110
136
126
55
109
74
126
58
97
126
134
69
138
69
126
139
136
169
92
178
110
104
92
58
122
122
92
146
178
126
144
169
126
79
68
37
111
99
55
139
56
188
75
98
56
104
169
168
55
58
55
92
55
97
127
37
112
126
119
67
69
105
67
55
168
89
56
119
103
123
91
74
67
104
103
56
105
105
37
97
134
55
127
97
55
146
152
138
74
86
92
105
97
91
162
99
92
111
91
67
108
138
134
104
130
83
127
123
122
152
149
77
92
105
127
126
135
88
121
110
99
139
102
110
111
139
98
105
89
55
67
56
122
158
67
81
126
109
118
112
144
107
122
104
152
106
93
110
92
152
152
77
144
126
110
114
105
127
169
56
83
138
56
124
168
144
108
162
140
105
67
55
105
55
159
127
92
111
104
131
123
93
79
92
111
91
37
145
93
93
67
126
92
160
119
122
135
122
122
92
105
122
122
55
92
152
139
105
122
74
81
119
130
138
138
74
78
86
37
146
114
103
140
124
95
122
86
130
127
127
99
106
131
126
104
162
110
138
93
74
103
37
144
126
122
56
83
69
178
129
93
93
148
127
109
92
92
100
67
92
93
74
69
93
137
112
77
134
69
115
134
132
111
83
79
144
77
122
109
107
91
152
119
58
149
120
123
110
106
77
131
55
127
92
116
103
69
89
55
144
169
56
74
111
178
138
128
58
77
122
126
134
122
97
109
55
110
97
139
110
110
69
152
55
119
55
178
122
122
55
55
127
92
140
113
110
73
109
138
140
104
122
55
92
92
128
178
169
110
37
126
105
128
135
93
144
37
182
97
128
97
168
168
58
126
199
139
126
105
156
126
138
37
140
37
140
56
55
93
91
134
100
92
158
56
130
58
93
122
110
67
55
138
55
67
178
79
37
55
122
56
139
114
99
110
105
106
139
92
111
122
138
169
56
104
104
55
127
105
91
56
84
99
97
79
86
93
91
144
58
126
124
58
37
146
105
55
69
104
79
110
91
37
56
132
105
122
92
105
105
56
136
128
137
132
144
69
138
102
87
74
107
127
110
138
114
122
110
110
109
55
104
56
119
140
163
122
124
92
104
58
122
99
86
131
110
103
87
58
139
92
158
105
144
58
126
94
58
147
56
152
131
110
147
93
112
113
127
144
56
105
138
120
152
111
58
75
122
131
139
103
119
126
144
126
137
79
164
55
76
126
104
107
92
109
122
140
139
119
100
86
101
169
80
144
126
169
104
37
92
67
55
69
125
108
110
93
125
104
132
126
92
132
122
131
73
67
134
104
110
93
140
152
95
111
163
112
122
67
121
129
92
178
89
165
67
106
93
67
146
89
139
86
55
93
144
106
140
150
67
110
67
164
127
67
69
128
77
171
86
37
136
103
126
107
163
37
103
37
67
127
74
178
55
150
69
122
105
102
153
130
146
138
99
128
130
105
152
37
130
144
37
99
138
122
164
118
144
110
99
92
122
91
104
140
138
163
138
138
139
131
127
122
127
67
169
118
56
113
37
55
108
112
79
69
137
108
75
105
55
93
105
110
124
93
110
37
178
104
148
136
128
107
127
79
110
55
107
121
126
69
158
140
67
97
132
74
83
55
114
123
74
146
126
98
146
92
67
168
138
99
144
93
99
122
104
127
117
67
58
110
99
129
79
152
112
134
104
55
83
126
93
139
92
126
55
69
126
128
99
83
92
104
67
69
55
81
111
58
138
169
145
109
88
127
91
55
121
110
138
115
93
148
99
124
144
68
75
115
91
120
122
77
37
126
92
110
93
168
119
55
74
109
148
140
111
89
55
169
111
67
56
55
37
127
128
78
122
101
106
100
118
58
138
105
93
105
79
74
105
104
64
97
110
119
105
55
122
111
105
95
152
104
105
67
118
138
162
112
146
105
93
104
105
138
124
152
55
67
92
93
55
119
122
122
146
55
122
128
91
112
111
138
95
92
109
106
109
92
121
83
69
171
111
92
126
67
139
58
122
56
67
152
122
102
138
127
111
168
118
92
126
109
92
124
110
115
138
126
108
92
67
143
141
105
37
67
137
81
86
112
86
126
100
122
99
86
101
107
109
92
56
105
138
127
92
128
126
152
105
122
137
99
86
117
123
122
67
92
58
144
138
78
110
139
88
138
144
92
56
120
134
55
92
55
119
92
93
126
160
139
139
108
81
139
92
93
138
128
104
138
111
55
139
142
128
97
37
152
124
74
92
180
55
92
138
122
56
180
123
93
77
104
55
55
111
130
55
67
56
92
146
115
79
112
86
81
55
134
126
91
120
105
119
138
123
58
98
93
111
110
56
139
92
68
119
144
165
127
56
110
92
139
67
103
130
86
158
79
140
110
126
79
99
132
88
55
55
56
75
94
86
138
158
37
117
128
126
91
91
124
134
74
107
97
145
56
122
67
110
122
91
90
56
146
152
77
109
109
93
110
37
119
111
55
117
56
122
104
56
67
77
55
128
58
92
148
58
58
146
119
124
118
86
164
84
145
104
94
55
144
124
91
101
67
80
126
122
86
58
124
105
55
146
92
126
92
148
126
126
119
131
124
122
140
140
123
126
127
92
122
138
110
178
107
69
112
178
92
162
126
127
92
67
75
139
67
92
105
122
56
134
178
77
197
77
105
104
104
107
122
55
97
105
93
107
68
128
86
67
144
68
179
126
152
83
108
99
92
139
139
56
168
126
110
92
122
104
67
55
58
122
79
139
67
97
86
178
92
78
56
93
169
122
110
55
56
97
104
158
64
138
127
192
67
101
75
102
92
146
104
109
55
122
92
99
104
37
55
138
55
120
67
58
144
83
104
132
137
77
105
92
152
109
127
109
124
123
138
126
86
55
126
188
58
127
138
111
148
110
88
92
125
105
58
138
107
56
55
123
93
91
75
158
136
103
79
123
64
92
105
128
79
55
105
79
113
122
126
98
138
122
67
91
91
138
92
134
92
92
92
101
104
93
55
108
122
86
144
37
67
111
119
128
178
100
67
139
140
131
104
56
106
134
55
67
103
128
92
67
105
147
69
92
163
138
93
126
74
92
110
128
123
69
93
110
105
126
105
95
144
130
67
124
92
123
103
110
122
178
105
109
114
108
139
92
130
97
55
158
95
126
178
138
138
138
138
109
77
146
169
99
103
111
110
168
112
67
139
140
110
138
146
178
126
134
87
58
127
79
67
92
111
68
56
110
169
79
122
158
93
104
171
94
67
111
55
68
126
130
144
105
115
86
92
109
122
111
126
105
97
127
164
84
92
92
126
124
74
131
178
55
122
110
111
71
69
91
122
67
105
105
127
140
177
126
142
127
91
111
91
165
130
68
105
119
91
126
111
93
104
152
131
69
126
69
100
110
127
58
152
162
91
105
58
168
114
122
118
105
92
86
109
144
105
127
122
135
64
37
146
122
56
93
107
111
110
97
55
78
101
126
126
126
93
110
124
149
131
69
93
89
110
126
97
142
55
55
92
74
91
131
140
55
68
117
107
105
124
138
91
135
104
92
107
110
152
99
101
126
127
104
139
122
127
122
37
74
110
136
79
138
99
103
67
158
69
145
91
138
140
126
69
92
118
122
55
126
110
58
127
92
122
104
142
138
107
92
110
79
92
58
92
144
165
103
97
93
122
79
152
139
124
92
128
126
145
105
134
178
94
103
55
83
92
138
126
104
87
102
67
125
111
55
69
114
114
104
105
86
138
93
111
69
92
126
126
104
79
136
130
92
171
97
120
139
92
123
164
124
92
126
138
142
158
119
178
126
98
127
110
37
92
69
93
138
162
131
169
103
117
110
92
178
122
128
132
158
67
169
77
122
56
109
126
97
138
138
104
133
111
91
169
110
55
122
107
105
56
119
100
105
134
127
104
109
178
127
126
55
158
138
86
93
85
130
37
146
146
69
93
74
139
162
124
139
55
110
104
92
127
93
102
105
56
112
91
101
67
125
103
128
137
105
138
146
67
146
134
67
92
109
75
125
55
99
120
56
74
144
98
178
110
93
37
91
69
122
171
111
178
78
180
74
104
127
105
79
92
110
89
55
120
55
128
89
92
83
92
110
96
92
104
56
93
67
86
55
109
103
104
102
139
124
91
74
138
110
110
55
136
169
169
92
122
86
127
138
92
79
128
140
55
74
93
128
86
110
55
92
86
122
93
151
140
92
138
120
105
100
169
144
92
67
140
105
126
169
120
105
55
139
105
126
93
55
69
138
119
182
92
146
104
122
37
87
139
92
110
146
164
145
123
104
135
92
93
144
78
69
105
122
92
99
146
55
67
122
58
56
138
117
105
146
102
79
122
102
138
67
160
37
55
89
138
55
55
149
138
164
37
69
136
137
103
37
128
102
117
130
68
56
55
55
105
55
110
138
138
130
138
55
139
114
107
91
93
120
102
126
132
139
55
92
83
56
97
146
139
122
114
122
105
55
110
111
123
134
107
122
139
126
156
92
140
146
138
92
92
138
92
95
122
178
86
144
92
122
160
122
92
92
55
148
104
119
139
138
79
104
92
92
152
139
69
139
55
148
162
75
92
56
110
55
92
67
77
144
169
106
104
58
93
74
136
140
104
111
146
169
130
128
92
37
158
112
92
83
105
128
105
134
79
94
88
99
93
110
92
119
92
75
127
126
110
110
74
56
55
92
132
104
126
105
93
56
131
109
139
152
94
68
128
134
67
84
92
120
123
93
109
146
145
107
111
127
126
104
93
109
109
83
105
67
93
79
130
171
69
117
107
139
58
108
126
37
112
67
76
114
78
126
92
55
122
171
69
99
97
139
109
110
58
56
130
56
123
118
55
119
128
93
144
126
122
119
109
102
109
56
152
88
122
138
92
95
120
92
55
101
92
110
146
37
135
124
130
55
92
110
142
105
105
122
104
92
56
55
67
83
105
105
91
144
103
55
119
134
138
56
91
109
105
74
118
113
99
88
74
142
122
169
76
126
102
77
78
144
126
124
110
138
55
122
105
113
55
160
92
79
136
122
67
126
126
123
110
171
105
110
126
143
119
130
93
92
139
138
58
152
124
84
192
124
110
139
93
67
192
37
37
111
91
105
152
55
56
105
138
58
105
104
75
138
105
105
123
136
126
126
55
112
123
106
68
104
138
163
127
104
130
105
55
104
93
105
122
92
129
110
105
152
68
112
127
88
117
122
58
178
92
122
55
55
138
58
77
74
144
148
146
109
105
104
110
104
112
68
93
127
58
123
67
56
110
105
37
69
96
127
92
68
109
138
127
178
109
178
139
108
110
98
97
144
69
92
122
146
138
67
93
119
140
122
92
126
109
55
122
58
78
122
108
92
135
144
79
140
181
148
92
93
138
122
134
128
92
130
109
105
119
74
140
37
108
105
79
92
178
79
139
136
136
74
144
99
127
122
135
132
136
107
124
79
118
104
137
124
110
112
107
69
37
93
135
139
92
37
129
67
110
81
122
119
67
56
117
55
144
92
110
99
105
126
92
56
67
37
92
158
58
58
152
92
58
107
117
139
101
127
126
94
152
93
109
97
104
125
67
58
103
37
110
67
91
122
119
119
134
69
127
58
126
128
37
126
152
55
160
55
126
138
126
152
152
100
141
139
139
58
92
130
126
123
168
67
98
120
68
128
168
92
119
107
141
80
68
112
81
91
105
110
107
147
86
37
92
130
178
105
92
86
158
126
93
118
140
55
134
163
55
95
189
109
171
97
105
86
77
107
75
135
135
123
131
83
88
130
92
117
111
67
74
55
92
114
138
68
102
106
126
55
77
92
122
111
135
37
55
67
123
112
98
99
56
83
152
77
111
55
119
99
105
86
78
55
146
105
105
79
75
105
55
67
58
122
93
111
55
56
92
55
105
139
68
120
88
92
98
127
122
37
130
134
56
110
68
107
132
95
127
138
56
110
171
141
69
108
93
111
158
123
126
105
78
140
107
79
110
138
92
139
169
37
93
100
111
110
145
100
111
107
58
169
114
124
139
95
97
152
126
132
55
76
75
95
55
67
105
120
92
105
86
104
92
86
105
86
92
167
69
92
120
58
178
139
92
110
130
37
120
77
124
139
56
169
92
107
55
152
92
105
84
134
137
122
126
37
140
69
93
104
140
138
86
56
104
104
110
92
37
56
139
89
144
126
56
122
111
129
105
77
123
74
103
55
178
122
162
92
134
135
67
114
110
37
118
109
126
58
148
91
118
92
128
139
169
117
93
123
86
134
127
55
126
138
106
56
138
128
111
127
56
37
55
105
146
120
140
124
126
104
110
99
123
108
139
56
99
105
37
114
55
55
146
97
86
122
134
75
56
37
105
139
89
148
55
104
104
55
145
110
178
95
132
138
126
125
128
110
92
107
111
98
86
104
122
77
110
56
126
163
58
105
55
56
101
126
104
102
127
86
101
110
158
95
126
111
55
91
171
110
128
98
148
37
134
69
145
84
102
106
138
55
77
126
67
84
105
105
92
55
126
139
67
144
75
100
105
92
146
102
78
178
162
128
110
138
74
128
144
123
93
122
123
89
127
107
113
132
162
92
93
110
138
140
123
91
127
144
92
105
152
96
132
102
37
124
110
127
91
92
77
105
92
139
140
55
163
132
167
128
86
79
104
178
67
77
122
92
126
146
103
107
102
122
81
126
138
134
91
123
91
138
89
126
97
56
107
103
122
56
127
110
92
146
106
125
139
56
117
56
110
103
123
93
122
138
55
93
58
138
122
37
77
149
89
180
131
107
92
169
127
126
147
128
127
55
84
144
105
92
55
126
124
120
86
91
105
109
110
107
97
93
37
86
123
104
96
100
97
104
111
97
58
79
110
57
67
136
37
98
67
58
122
110
37
178
110
132
84
110
110
138
92
126
122
106
105
178
37
136
122
100
64
178
77
105
105
122
96
37
92
118
142
86
114
110
134
120
104
97
69
74
139
144
146
91
86
124
152
126
108
37
122
68
110
105
122
142
86
55
163
55
77
131
106
93
89
122
169
74
110
58
127
93
127
103
55
112
180
140
92
146
132
67
79
114
75
169
86
145
58
122
178
126
69
127
55
128
123
178
152
126
105
104
86
127
134
79
126
74
139
92
145
126
37
99
37
86
122
104
126
110
37
77
109
163
110
139
144
140
86
164
132
79
37
110
171
104
106
69
109
68
122
55
92
110
95
142
96
77
128
56
93
117
103
162
68
122
114
79
93
95
103
146
138
104
171
126
127
139
122
75
130
126
37
122
111
126
105
68
180
126
58
146
86
92
129
138
58
126
118
130
68
92
144
122
148
140
79
90
111
99
77
126
149
126
92
138
88
98
110
79
93
69
152
93
128
110
69
58
93
138
110
104
137
100
110
55
92
37
124
120
104
126
126
171
86
123
109
104
169
83
110
103
152
92
37
84
148
124
101
37
138
139
77
69
58
103
93
122
92
91
132
148
56
105
138
55
144
108
69
110
127
86
37
122
37
56
152
126
93
109
104
86
178
58
167
128
55
89
152
146
122
105
128
126
67
79
122
168
92
104
37
55
122
67
130
111
92
148
122
55
127
110
99
146
37
110
55
132
104
127
109
89
149
107
111
104
80
108
137
118
119
139
149
110
75
122
146
92
144
93
111
126
115
104
139
124
104
68
124
128
124
178
104
124
107
126
104
119
111
140
110
37
126
105
138
102
92
112
105
67
138
124
163
92
107
122
146
92
122
104
126
127
132
144
74
131
163
126
119
69
111
92
127
104
132
122
152
93
138
127
122
92
107
110
138
105
139
55
67
94
110
144
93
127
55
91
41
111
135
87
55
105
119
93
126
92
138
55
144
92
55
68
126
103
86
105
75
37
92
107
110
105
110
77
68
68
126
144
37
108
103
75
67
56
55
84
139
56
124
134
127
69
126
126
101
109
92
104
182
169
110
81
119
92
144
138
78
199
79
105
37
131
67
105
77
56
122
83
178
122
55
105
178
140
122
178
122
93
144
138
139
125
122
92
119
91
56
87
74
127
93
91
169
105
74
110
178
162
122
124
140
139
127
124
160
86
119
56
58
67
93
134
132
138
93
92
67
105
104
124
58
58
107
178
93
129
111
162
152
58
56
109
124
92
138
109
67
123
56
58
110
146
101
169
118
126
138
144
111
98
55
37
55
84
144
125
91
149
105
89
151
122
104
58
122
122
92
180
81
152
126
152
122
168
158
178
131
112
111
122
89
148
86
92
138
139
67
74
125
93
92
67
131
79
55
67
58
56
127
139
122
106
37
55
128
75
78
104
110
83
146
92
58
122
92
93
92
110
171
122
114
189
111
122
128
128
183
137
138
81
178
81
55
122
55
122
55
138
106
104
67
138
169
182
105
119
92
124
138
104
79
103
92
67
134
123
77
110
86
127
122
92
126
109
110
92
122
99
67
182
152
152
110
69
88
109
119
104
55
119
124
144
122
93
123
55
92
74
81
92
124
91
100
105
122
105
122
69
56
126
146
138
139
128
124
56
69
126
37
58
148
105
105
119
122
37
180
55
92
139
55
103
163
78
37
104
152
86
110
101
67
104
74
111
189
112
135
126
178
92
114
146
106
96
55
112
123
93
110
109
122
114
149
132
92
92
136
139
146
67
92
128
127
138
93
125
139
119
79
120
92
37
67
86
118
178
102
110
92
128
55
126
126
92
152
128
126
103
144
92
93
37
119
146
103
122
138
122
126
55
123
103
138
126
69
121
68
92
84
77
58
55
126
123
92
142
110
120
110
109
105
83
171
103
93
80
56
92
138
147
81
83
69
99
104
75
104
92
124
97
37
156
97
99
123
118
83
122
97
92
171
67
122
127
55
126
74
55
55
138
122
158
137
139
104
58
136
152
55
109
139
110
114
92
137
95
99
138
122
152
123
105
92
126
109
79
109
103
124
178
92
68
150
92
37
128
132
128
138
178
110
129
98
92
56
107
126
117
137
56
74
97
55
58
121
93
91
87
55
114
112
144
139
55
138
109
158
37
105
92
92
105
119
110
168
119
137
93
140
105
126
109
138
55
92
55
67
68
199
111
104
75
126
125
141
110
58
128
92
105
110
79
79
109
99
122
108
75
79
92
178
105
178
139
69
67
93
128
139
92
122
163
67
109
182
126
91
92
92
126
92
126
122
138
68
93
55
138
106
104
138
164
67
92
58
103
117
104
69
92
92
56
124
92
169
105
69
110
58
169
83
126
104
79
126
56
74
119
105
105
83
134
107
117
152
37
144
171
164
107
56
74
126
130
112
105
146
55
139
111
117
111
104
55
111
122
55
126
72
67
55
69
128
79
69
122
99
122
152
58
160
146
139
107
104
134
69
138
178
110
139
56
122
55
119
92
67
140
119
56
123
126
93
79
88
83
108
92
92
127
126
111
78
67
55
97
103
178
139
140
110
124
69
71
75
91
108
92
92
92
92
105
76
37
126
169
103
75
78
93
104
67
92
126
55
109
138
146
178
55
169
158
132
123
55
146
111
178
138
128
122
89
92
58
80
165
127
139
56
37
146
131
110
127
177
128
146
109
110
55
77
94
127
104
92
145
67
110
110
112
139
55
58
108
69
119
127
92
67
152
138
110
103
146
169
67
148
92
164
119
122
178
130
102
122
111
139
100
149
91
92
139
105
122
91
115
122
152
139
146
122
67
79
79
126
104
126
74
110
152
55
138
138
137
104
67
105
55
101
134
93
119
141
67
56
93
137
146
114
130
108
180
152
56
130
92
125
56
112
97
144
79
93
147
122
67
95
92
81
55
55
93
114
104
83
55
171
111
69
67
146
128
138
131
131
104
120
105
138
114
122
110
138
126
138
104
111
148
124
98
139
73
83
128
101
109
162
79
110
103
130
55
92
109
178
69
123
69
58
124
106
55
107
92
138
99
169
55
67
128
124
160
83
92
178
105
126
126
115
58
74
69
124
84
67
69
122
144
124
152
75
104
58
104
99
110
131
123
55
55
91
163
86
55
144
121
104
67
69
64
37
128
114
58
139
128
126
141
126
197
68
104
126
98
152
104
130
138
58
86
69
67
92
86
126
131
79
86
105
146
139
104
128
158
128
156
97
69
67
55
105
134
104
127
105
55
123
124
127
144
146
144
111
80
109
55
106
55
130
77
58
128
140
88
55
165
55
122
138
92
117
126
107
146
103
58
79
74
106
110
112
139
104
115
168
55
134
92
163
152
83
148
110
98
92
74
126
69
119
56
93
112
104
168
67
58
77
122
58
144
123
91
126
37
69
107
67
123
55
127
169
122
69
99
79
103
93
124
178
86
92
37
138
58
92
119
139
146
37
148
83
93
124
79
37
138
163
93
55
138
126
126
58
115
84
178
139
55
86
104
110
164
146
110
37
130
107
167
92
109
139
162
98
67
92
103
37
110
132
92
146
110
67
92
105
144
100
93
102
67
55
128
93
105
56
123
119
152
37
56
128
105
122
58
112
144
162
139
100
126
144
152
95
122
55
115
55
105
55
74
128
93
92
118
118
104
146
128
74
126
105
119
55
110
152
99
111
74
126
118
118
94
75
139
92
142
86
98
113
98
37
138
69
128
111
178
92
109
92
77
138
92
122
92
163
139
126
106
178
110
69
104
37
152
96
107
92
139
98
56
102
105
141
56
122
124
79
123
162
69
128
127
111
98
92
130
110
74
75
128
127
162
67
111
110
79
128
107
107
140
92
67
148
56
128
83
67
111
131
56
69
56
79
149
127
99
122
138
69
67
99
92
126
92
86
138
131
56
138
138
158
56
122
69
122
142
37
145
171
114
105
67
107
139
67
112
83
152
108
93
67
129
110
122
108
110
144
74
56
91
138
124
140
67
84
76
55
69
67
152
92
171
110
130
122
138
112
130
55
122
77
101
56
86
139
144
158
69
72
152
55
86
102
37
55
132
67
131
107
75
128
112
93
131
37
178
138
138
109
86
74
55
140
56
110
67
163
83
93
55
122
55
126
126
105
92
77
130
138
92
104
163
69
103
123
75
93
138
92
138
134
131
95
152
93
138
104
112
138
126
108
178
88
126
91
68
126
110
118
86
86
119
89
69
110
110
122
128
55
104
91
110
104
139
146
91
140
105
56
74
131
126
69
105
92
110
37
162
92
69
91
86
138
105
83
121
79
122
127
105
139
75
58
119
93
138
92
123
126
127
56
152
55
110
92
74
55
119
112
122
89
56
178
119
74
120
105
122
119
87
122
86
37
97
77
75
110
58
56
110
110
104
55
114
158
109
103
92
92
113
105
56
109
178
96
92
92
127
105
55
139
138
37
137
92
126
55
134
55
144
144
58
86
109
77
138
102
119
89
144
109
95
110
92
122
126
93
109
92
79
139
122
119
110
79
139
93
126
138
103
126
91
75
139
87
56
93
55
67
144
99
56
93
81
79
122
80
138
163
104
58
55
69
92
69
126
122
67
121
66
91
56
140
110
56
127
111
131
37
102
92
126
58
80
130
93
138
130
79
92
37
109
86
98
67
110
77
148
126
138
107
163
127
118
146
140
138
126
139
144
167
119
138
111
75
122
127
86
92
104
138
128
113
122
79
138
86
102
55
119
120
92
94
67
69
127
55
55
92
126
88
135
55
112
104
140
105
139
84
138
67
74
125
101
123
144
119
126
55
67
86
114
138
77
139
69
56
165
111
97
72
105
136
55
107
127
89
139
101
178
146
132
144
124
138
141
92
103
91
106
55
128
56
138
107
55
75
126
86
127
56
94
89
103
128
91
146
104
111
77
105
58
105
86
131
56
102
67
100
138
74
129
109
128
132
91
160
58
139
101
92
110
134
105
139
169
93
114
92
122
110
124
79
124
55
55
103
56
131
97
37
178
105
86
178
142
138
99
79
123
92
104
122
119
128
126
148
105
107
92
127
110
171
122
79
110
103
178
118
122
91
122
134
139
139
104
74
96
139
100
114
109
148
122
67
151
69
139
145
103
144
134
149
79
58
126
105
67
77
75
130
55
69
126
92
110
58
122
55
105
127
139
56
148
144
132
152
74
55
78
105
122
103
92
77
95
79
101
121
160
111
129
111
97
122
55
99
111
140
111
106
140
84
138
139
178
93
105
104
169
126
110
74
109
112
171
126
110
152
104
74
77
92
107
139
178
99
110
92
124
67
146
107
123
188
140
126
92
108
168
58
128
138
92
105
144
123
105
105
55
120
93
139
37
86
126
114
169
107
111
56
69
178
152
110
115
117
102
76
56
146
83
126
105
127
139
126
83
126
55
119
160
165
119
86
122
114
37
110
92
67
144
69
124
92
55
58
138
56
103
144
55
127
102
152
103
156
58
123
89
152
110
110
84
127
92
55
147
138
72
68
93
131
141
83
93
110
107
93
37
93
142
118
128
92
104
120
122
105
67
93
152
69
169
135
104
77
128
169
122
104
120
144
55
58
58
122
99
144
127
91
86
67
122
92
131
104
124
86
105
134
132
105
55
95
144
67
130
104
119
110
106
81
81
93
84
93
92
128
146
105
92
104
55
129
163
105
136
75
128
115
122
126
55
58
127
55
146
104
73
104
79
71
110
165
138
99
146
102
58
56
122
111
69
165
119
110
107
162
55
92
102
119
126
67
58
178
138
91
148
169
102
140
91
178
103
56
145
67
122
127
92
144
139
162
122
56
110
142
91
110
121
56
134
105
121
95
94
92
92
75
55
69
90
124
151
67
180
55
58
93
124
144
74
118
120
122
99
105
146
158
128
164
86
89
111
119
122
142
67
142
162
139
162
105
107
127
160
122
100
138
110
146
103
105
122
123
138
118
87
93
55
152
111
86
83
75
80
37
158
92
55
84
75
111
92
122
169
178
160
106
55
95
122
104
67
92
109
73
144
122
104
144
110
131
152
89
105
144
122
138
91
55
110
119
56
92
127
142
99
109
122
92
77
178
83
152
128
138
168
98
92
126
135
124
55
134
105
122
68
37
144
132
92
98
110
148
139
83
56
110
69
107
93
99
92
134
144
95
148
86
67
146
74
77
126
144
126
105
122
97
55
137
152
98
84
138
92
134
104
105
99
67
142
100
123
110
92
122
74
163
55
111
110
100
120
126
55
83
91
119
104
86
139
58
105
103
167
55
74
138
91
163
119
55
86
168
92
122
110
77
110
126
91
107
100
115
126
137
119
86
124
107
92
92
111
91
105
56
104
55
134
111
93
128
139
68
102
126
104
67
104
131
188
178
97
83
92
128
92
93
97
150
55
158
122
126
126
126
74
130
55
98
141
126
105
67
106
104
110
139
122
93
99
84
55
109
109
92
104
110
152
110
110
74
99
92
58
93
69
146
79
92
74
169
83
104
67
69
134
83
84
122
109
130
138
93
105
107
109
86
83
160
163
67
144
68
111
37
117
127
58
56
92
92
139
75
110
110
105
69
92
98
37
126
171
180
111
110
146
92
92
122
107
110
98
139
101
93
144
56
110
104
117
67
99
114
56
111
112
37
106
129
105
110
126
128
69
119
128
69
92
92
83
158
118
75
167
93
144
122
122
138
55
138
86
122
145
126
146
93
58
69
169
86
93
77
146
178
67
129
111
108
105
134
105
105
119
67
93
122
105
84
110
138
91
92
127
136
67
110
101
56
163
158
83
128
105
105
139
105
145
163
81
109
107
139
128
79
58
109
158
123
92
167
97
105
67
123
126
86
138
140
110
92
123
110
92
58
134
97
110
55
129
37
74
118
92
180
136
178
93
73
55
105
115
99
169
126
56
178
152
126
158
92
178
110
93
67
122
104
86
178
68
119
126
67
55
152
124
134
105
58
85
77
119
122
138
102
77
110
119
86
134
130
104
104
103
123
58
75
93
89
37
79
92
87
126
119
110
91
103
111
138
138
92
150
56
103
37
69
102
158
126
148
114
145
99
105
79
126
105
105
37
120
105
141
92
110
55
69
104
178
112
122
138
128
92
103
102
80
128
107
152
134
37
37
126
99
146
122
86
122
92
55
126
134
131
112
118
67
105
91
140
105
171
126
146
84
122
69
113
110
138
126
55
92
55
122
138
126
97
107
138
140
110
109
138
110
75
92
37
127
93
114
138
92
58
126
79
101
122
92
92
122
92
109
134
110
77
105
120
74
55
110
104
79
105
93
93
165
169
37
89
75
55
92
73
160
149
110
105
117
75
67
104
139
55
132
118
126
110
138
126
111
122
119
111
86
105
127
152
78
122
107
55
93
105
138
140
55
112
152
114
56
118
77
93
80
92
86
58
122
55
84
110
79
119
110
104
67
87
110
132
67
129
111
69
128
55
146
134
134
92
92
110
138
158
37
110
55
69
139
92
139
139
139
55
105
105
126
56
112
138
152
105
55
92
92
37
169
131
163
56
141
91
122
107
81
93
92
130
91
144
128
130
144
122
127
162
139
122
169
56
55
126
58
119
55
83
127
127
152
103
101
139
110
55
111
138
58
124
123
92
93
58
105
98
122
84
122
139
37
86
67
138
102
115
58
58
55
128
103
152
164
56
99
119
117
152
138
97
56
89
110
67
110
137
167
83
58
131
144
56
110
110
55
55
58
124
67
126
138
58
111
132
110
127
126
127
124
69
56
134
79
99
69
55
114
77
158
74
122
107
103
122
74
93
55
67
67
92
152
98
55
123
130
169
104
144
123
144
67
95
99
55
83
141
105
92
108
136
127
107
55
138
148
152
92
74
93
56
55
122
146
69
135
124
127
92
75
162
93
127
99
130
105
168
122
125
169
106
149
92
92
58
139
92
67
68
61
136
110
91
106
122
169
126
138
113
92
122
91
100
93
165
163
77
107
91
110
110
128
113
55
144
139
168
138
168
145
92
98
167
118
138
123
110
74
68
138
80
107
177
92
110
67
79
152
131
110
102
127
110
122
92
139
58
119
122
92
99
97
114
138
37
92
105
93
91
83
92
98
105
122
122
83
101
140
110
74
126
75
137
83
97
110
67
110
178
165
93
118
37
93
122
110
128
111
119
104
178
92
74
99
92
83
118
102
67
56
129
109
169
55
37
69
37
92
91
101
110
110
144
104
107
92
123
93
99
94
56
167
92
149
138
92
122
92
126
130
105
117
110
99
67
130
55
55
69
131
58
92
86
152
86
37
144
122
69
78
144
120
67
126
104
104
56
86
105
86
107
122
74
111
122
131
92
58
92
79
138
75
128
132
109
103
111
77
150
93
104
58
122
146
169
131
178
67
138
138
138
68
105
69
58
67
132
126
110
139
79
55
152
55
67
79
37
119
124
55
128
178
144
91
167
75
126
78
145
86
56
111
146
111
84
119
127
126
158
152
93
165
86
95
58
139
58
93
99
55
127
122
55
119
111
122
92
139
126
178
56
58
122
75
134
106
69
68
93
107
37
87
123
104
104
86
128
102
113
132
126
178
91
67
108
122
126
55
69
92
37
69
138
91
145
84
126
68
128
110
122
178
117
104
105
99
110
180
131
128
37
86
55
92
97
92
37
81
178
117
55
178
77
92
105
93
118
87
105
55
135
99
105
93
134
93
67
158
81
86
139
55
67
105
79
77
58
134
125
67
119
93
86
122
105
104
102
110
109
79
92
110
135
86
122
69
178
93
129
69
92
146
103
127
178
55
138
99
126
67
99
180
56
55
169
145
126
146
105
55
96
92
168
37
131
132
128
114
144
93
110
105
110
140
139
55
91
93
103
134
92
117
140
100
67
92
99
119
110
92
58
127
67
122
126
92
178
106
101
122
144
126
56
105
124
109
56
131
126
92
37
92
93
138
124
138
122
125
67
93
125
140
103
56
126
110
127
124
122
122
91
122
91
122
105
89
139
131
69
119
37
79
92
109
127
105
110
75
86
77
140
105
67
110
96
122
131
56
104
55
92
67
126
56
86
81
55
138
149
105
152
94
124
110
98
192
73
126
69
83
110
127
83
109
122
138
105
104
117
114
128
132
77
92
111
152
99
75
122
67
104
93
126
110
122
158
74
119
93
139
92
84
148
169
92
79
110
79
111
99
120
138
67
171
97
92
98
120
130
111
138
137
56
93
148
98
74
77
122
126
92
93
112
104
178
37
55
103
92
55
100
93
97
92
119
55
110
110
130
74
93
56
144
142
79
105
138
134
104
37
127
126
105
126
126
104
168
74
124
92
58
167
56
56
101
110
110
93
160
69
93
120
104
138
110
122
111
119
97
158
55
104
92
106
86
110
67
131
83
111
114
127
110
127
130
92
101
138
91
56
55
101
146
127
146
92
79
58
131
67
192
110
168
37
55
158
101
117
110
101
126
74
152
92
130
124
56
69
152
58
111
123
139
137
92
67
126
92
121
126
127
144
75
178
100
152
126
138
37
122
111
158
139
110
75
74
93
92
58
67
55
124
179
92
83
91
117
138
103
178
109
92
105
77
140
119
178
58
152
99
104
178
130
105
141
92
138
148
93
169
164
139
92
122
122
69
117
92
100
122
99
126
67
105
68
169
92
55
125
86
123
109
103
93
89
93
105
169
79
86
123
102
119
122
92
134
105
104
86
37
169
146
139
111
178
128
92
128
55
126
99
67
92
88
55
127
134
37
98
91
122
37
127
55
139
171
130
160
128
152
93
58
97
110
104
118
126
56
97
144
55
106
56
105
146
92
146
55
93
77
92
124
77
55
110
68
138
110
178
104
56
102
132
114
163
128
110
105
110
171
68
105
139
117
91
77
58
138
178
58
69
139
112
83
178
140
67
152
118
93
152
146
127
178
104
117
139
88
86
126
108
123
171
67
92
89
95
69
115
122
69
110
92
140
110
99
107
55
130
86
74
55
104
169
92
93
55
83
93
156
75
86
122
67
109
138
126
119
112
130
110
92
56
137
124
123
56
83
152
163
105
92
92
86
119
178
140
178
55
138
92
103
134
122
132
86
105
178
126
110
93
146
91
110
75
56
75
134
93
92
138
150
92
126
104
110
119
91
179
98
138
75
56
119
37
110
117
69
78
37
136
122
56
55
152
69
55
126
37
126
111
138
92
92
164
125
127
69
169
93
120
148
138
146
138
101
110
69
104
146
110
100
178
95
124
55
163
105
56
110
67
122
111
122
93
79
126
81
102
180
144
58
126
150
92
138
104
91
124
100
92
140
69
77
127
122
55
67
81
118
134
122
107
178
138
130
124
58
81
86
79
111
79
105
146
126
140
136
86
110
86
105
92
104
169
67
97
119
178
132
158
138
69
103
56
91
69
178
121
110
92
107
37
128
136
104
97
92
139
128
152
131
128
69
92
58
58
93
93
105
126
134
93
99
117
92
146
84
93
127
69
92
139
58
123
68
104
119
109
152
148
93
127
127
100
123
126
37
83
111
127
56
138
152
96
127
84
169
58
123
118
126
138
86
55
55
143
103
56
180
109
140
88
97
139
103
138
74
37
79
146
92
138
139
55
126
146
92
131
99
104
136
124
91
79
136
69
56
122
67
137
110
130
114
177
146
104
104
130
113
102
37
122
128
58
93
131
119
75
56
145
95
92
122
110
77
104
110
56
110
110
110
152
37
58
93
127
103
105
118
152
110
127
119
140
138
91
77
139
160
122
124
122
122
122
100
138
146
89
142
118
111
69
122
117
171
95
92
146
146
132
69
123
122
178
98
67
58
55
104
55
79
122
144
123
95
67
138
74
100
105
138
142
134
146
55
138
55
126
126
110
37
138
122
67
178
102
93
105
94
139
127
158
91
122
92
92
69
55
56
108
105
103
119
136
113
103
111
144
122
115
137
163
117
131
104
92
122
140
37
55
128
104
110
105
67
67
138
119
101
55
110
126
110
110
138
111
117
55
83
124
91
134
131
75
103
37
128
110
93
149
127
122
110
146
86
67
55
138
103
67
152
144
55
55
142
103
130
144
122
84
92
83
130
113
74
119
56
98
75
105
138
92
80
112
171
92
134
146
105
110
69
84
93
61
93
75
55
110
68
56
68
102
92
106
91
105
178
128
55
56
140
79
79
79
130
87
105
110
123
122
171
55
109
120
58
55
64
121
84
111
92
122
138
130
109
56
122
105
140
148
105
126
105
147
84
56
164
67
37
58
107
111
56
101
85
81
68
126
132
56
105
67
122
92
104
74
110
105
37
99
68
112
92
127
101
69
83
69
101
68
132
93
92
92
105
74
37
123
126
124
85
67
112
105
124
158
55
140
37
119
55
122
110
142
100
88
128
111
97
92
169
92
139
143
55
78
56
95
171
127
107
67
119
93
74
178
105
75
92
163
126
92
117
75
127
126
93
111
105
55
77
114
129
110
99
103
115
99
79
122
122
138
101
104
122
105
93
110
103
110
122
107
58
178
144
75
139
134
74
37
112
83
148
147
126
125
58
55
128
104
141
92
67
140
129
182
134
126
58
93
122
58
93
123
84
104
58
138
169
86
97
139
99
111
139
55
58
104
97
125
55
139
92
92
144
105
68
74
122
68
92
105
138
138
93
110
139
92
156
139
158
93
69
55
104
126
122
128
146
110
79
92
86
55
138
58
139
97
117
137
110
58
110
101
109
99
122
37
119
103
77
160
127
126
67
110
93
92
131
58
95
56
105
110
169
58
102
163
56
88
84
107
146
144
104
55
169
134
67
139
169
122
107
92
126
104
67
55
105
55
69
144
92
120
58
55
89
69
102
99
139
91
56
91
105
144
112
92
113
122
128
67
37
55
110
124
109
67
160
110
144
56
122
74
128
106
138
122
139
77
92
151
99
55
119
115
92
168
56
131
138
98
138
169
55
105
117
138
110
117
67
178
134
119
140
55
148
67
107
105
100
64
69
123
92
126
92
97
110
134
110
111
119
98
104
139
138
92
109
37
152
56
111
114
122
102
104
182
75
91
140
56
122
105
105
113
180
110
167
92
92
111
93
138
79
127
67
139
37
103
112
84
93
55
79
138
92
105
67
104
146
138
138
37
104
92
93
127
126
110
104
138
37
67
138
84
69
127
67
152
136
104
122
139
79
104
55
92
92
119
107
103
55
92
105
127
139
79
123
55
69
127
113
114
127
92
156
152
152
93
91
58
171
95
69
104
55
93
92
91
98
67
37
66
105
94
99
131
124
110
126
110
127
146
97
67
107
146
37
134
69
138
86
55
109
93
122
93
75
123
58
128
138
136
37
128
138
109
105
109
126
138
89
103
146
138
126
122
92
139
55
126
67
92
77
55
93
86
37
148
102
130
56
69
139
110
97
107
69
92
93
94
83
122
132
84
92
86
103
101
92
126
138
75
104
156
128
138
103
126
92
56
144
92
92
67
110
98
92
124
124
79
139
123
58
56
101
77
138
138
138
122
69
94
138
146
152
146
105
145
65
92
132
110
114
138
178
139
68
110
103
91
56
103
134
55
103
79
126
68
111
83
126
128
37
92
110
111
104
92
100
117
92
129
104
91
158
92
93
72
104
117
104
99
112
80
92
138
126
109
58
127
97
98
105
92
145
123
56
145
74
77
79
110
138
92
138
124
137
137
107
104
97
131
104
37
127
110
110
146
132
139
105
126
93
110
142
58
152
95
139
127
92
91
104
140
77
83
122
86
92
128
131
92
37
55
110
171
105
108
92
114
122
122
153
122
55
127
110
138
152
92
139
115
145
37
130
75
139
109
122
126
112
86
144
92
79
58
77
145
77
109
139
110
140
91
128
93
152
91
112
126
111
123
139
122
122
127
92
55
126
178
79
104
157
145
128
111
55
126
77
138
152
55
122
77
126
83
178
131
75
136
74
117
97
138
92
122
104
138
141
98
128
102
104
92
92
148
112
106
130
122
55
67
86
122
123
139
104
91
122
108
130
122
126
121
123
55
144
123
55
69
123
105
100
92
77
122
126
94
132
138
131
67
89
57
143
92
67
138
128
110
84
37
55
146
110
104
93
58
79
93
79
84
110
179
105
148
105
114
37
75
104
105
92
105
93
122
55
84
140
162
91
146
55
105
152
97
103
79
67
122
140
144
100
101
61
114
142
58
124
124
75
144
120
138
121
104
139
127
127
134
109
55
55
98
137
100
97
105
67
122
110
109
139
156
91
123
110
119
110
92
139
139
79
107
123
74
122
37
37
158
86
138
111
127
105
152
134
110
93
107
55
77
92
109
104
137
110
171
122
138
109
126
104
56
138
37
79
99
132
109
93
58
67
104
128
89
74
67
126
127
178
138
138
163
178
79
111
74
178
110
138
122
169
122
145
74
167
140
122
100
122
134
81
110
105
126
101
114
158
67
165
107
55
55
124
77
152
55
92
122
67
123
75
178
56
126
67
93
75
135
91
122
92
123
111
122
169
86
58
110
178
93
122
79
92
110
152
105
122
77
115
158
97
97
124
105
37
119
55
92
92
107
122
104
92
92
109
145
83
55
93
122
102
69
58
67
126
122
144
158
106
97
77
110
78
89
92
122
92
115
102
56
150
169
69
119
107
126
111
93
57
126
178
58
97
55
77
103
89
89
122
122
69
89
79
122
92
123
101
56
105
98
37
112
164
100
126
119
91
152
120
139
67
136
69
74
152
115
126
127
56
92
111
83
122
127
144
129
95
58
122
192
178
132
101
104
73
92
69
148
69
122
124
79
127
105
112
92
111
37
158
127
37
58
81
140
180
100
55
109
69
127
127
95
126
89
126
138
152
115
127
93
104
104
75
148
140
95
177
178
126
56
110
122
126
121
93
92
105
134
132
124
37
119
169
98
91
74
110
91
104
126
58
92
105
55
110
178
119
171
92
91
93
105
79
106
67
86
75
104
126
91
146
105
55
100
93
124
119
77
152
86
91
58
92
130
134
144
116
88
122
107
97
115
92
138
67
152
69
93
56
178
67
86
105
56
83
91
148
138
105
121
122
152
84
86
37
117
104
74
69
92
148
146
68
105
178
146
79
110
146
152
110
124
67
127
93
73
144
103
167
123
122
69
55
123
55
110
69
105
124
69
37
69
120
99
37
105
126
105
92
69
120
105
128
144
158
114
152
171
127
92
41
55
156
67
144
37
160
164
122
171
131
105
103
93
86
97
75
152
130
37
92
92
92
102
103
112
114
55
122
37
139
58
108
127
55
139
122
158
138
84
104
110
105
91
55
126
126
127
165
111
97
58
110
114
97
92
160
93
138
138
86
92
55
110
127
124
122
105
75
37
149
104
77
74
128
104
122
108
92
99
148
105
122
55
178
119
67
37
104
144
56
146
106
129
69
171
146
119
123
103
146
97
148
139
122
68
110
158
69
67
127
83
105
123
144
95
79
144
124
168
67
137
152
110
158
93
58
99
126
67
139
91
93
55
89
180
131
69
107
56
93
37
92
93
119
86
110
101
146
56
69
56
122
142
192
103
122
67
99
169
105
138
178
131
158
89
79
114
169
128
103
58
93
93
122
56
104
139
110
128
178
110
78
126
93
142
110
139
169
144
104
105
93
118
100
78
94
93
102
91
146
55
55
138
110
125
127
122
126
110
126
92
118
171
55
109
110
163
111
77
93
92
93
119
126
56
122
78
55
119
171
114
58
105
180
75
104
105
86
139
109
124
67
69
123
146
55
58
74
92
88
80
103
144
92
102
103
77
105
162
114
169
107
99
140
92
123
111
146
75
138
76
98
92
148
109
105
141
169
105
56
92
119
101
119
55
92
139
74
101
104
92
122
139
136
119
92
98
56
117
67
134
168
118
143
84
69
132
77
152
104
138
138
123
131
91
119
109
98
102
67
140
95
127
55
165
92
101
153
56
171
122
93
55
118
156
110
109
110
122
58
91
152
105
104
169
55
103
105
126
122
99
138
110
111
75
92
148
158
98
152
75
119
104
152
99
56
131
55
89
119
92
107
67
69
55
178
93
112
55
69
55
100
134
56
55
58
95
79
92
67
148
122
123
138
77
138
79
103
126
56
148
178
152
37
55
163
97
105
58
93
119
121
93
104
55
113
86
55
111
105
151
111
74
131
138
140
56
99
104
128
119
132
80
56
56
122
171
56
93
120
110
67
111
131
110
55
105
127
126
92
125
140
58
105
122
92
77
79
104
56
169
120
111
107
58
123
93
97
67
144
58
92
109
139
75
128
104
140
138
132
100
110
123
55
110
105
105
118
120
118
178
109
134
138
93
56
93
126
126
138
122
139
111
128
131
110
92
58
103
55
132
122
103
92
86
55
58
107
138
92
158
144
128
122
146
117
58
123
139
112
146
122
138
55
58
111
110
92
122
138
83
141
110
67
103
96
95
92
140
67
92
107
121
123
178
106
136
80
105
93
68
163
120
105
122
92
55
138
178
105
91
189
105
178
124
109
127
58
121
69
107
122
140
92
105
85
110
67
106
148
148
87
126
110
69
120
122
122
91
152
110
37
146
91
127
110
111
69
127
58
128
101
56
55
138
122
37
146
110
126
138
138
131
126
37
138
92
110
67
68
126
88
121
77
37
84
138
144
55
92
55
93
103
69
122
91
73
122
92
86
126
134
178
169
138
93
90
138
98
122
110
122
144
86
37
110
110
128
120
178
101
178
126
55
74
179
105
119
106
100
92
171
67
142
55
180
112
55
156
58
123
178
69
56
95
178
99
160
91
144
104
67
96
138
93
126
69
110
81
109
37
69
108
58
55
105
93
110
131
101
178
91
83
79
123
126
124
98
78
119
55
126
55
111
110
79
37
86
77
119
104
110
105
92
139
126
79
104
128
86
89
100
56
74
138
67
118
126
119
93
74
144
122
92
77
128
110
67
110
110
68
75
122
67
121
134
56
144
55
100
108
79
121
128
126
139
134
126
138
122
111
37
91
126
152
129
122
55
92
104
58
55
119
93
103
69
56
93
139
92
105
110
91
148
123
55
92
168
146
114
169
110
134
122
142
74
75
126
111
104
144
55
110
108
77
127
56
92
56
140
86
144
93
92
84
68
125
92
58
58
93
37
144
110
74
126
127
92
146
138
55
119
104
55
67
148
111
108
92
122
92
119
89
75
92
95
87
144
67
178
79
146
150
67
97
67
92
75
141
56
76
110
93
93
156
86
152
55
56
139
120
169
92
110
75
139
92
126
84
152
141
126
105
104
103
122
163
139
93
78
148
135
146
55
58
144
134
144
122
37
139
105
55
128
56
106
141
58
58
148
122
122
86
111
92
128
126
127
122
126
119
84
127
151
56
122
104
93
110
93
92
169
122
67
122
68
138
119
127
92
126
104
127
101
105
123
110
109
146
127
55
111
92
92
86
91
195
113
144
55
91
119
138
122
56
74
104
127
105
105
107
69
122
55
140
114
136
137
67
152
109
83
112
109
152
112
91
104
122
146
56
92
178
152
119
58
104
148
110
144
37
55
75
114
122
135
93
92
106
168
126
138
169
56
144
146
93
77
106
110
138
74
127
124
86
80
77
123
75
79
92
139
93
67
100
162
117
126
122
162
105
110
93
110
99
180
139
67
126
138
97
69
138
79
79
122
56
78
122
146
180
114
159
127
111
110
87
79
92
37
130
110
146
55
56
69
130
56
180
146
55
103
123
144
37
37
55
58
74
55
119
138
138
92
120
55
138
92
168
119
178
55
163
55
148
126
127
79
67
58
68
108
105
144
122
139
122
58
152
93
55
55
124
105
138
91
74
138
91
92
69
81
110
88
110
98
122
122
122
93
101
148
69
147
139
128
92
92
93
122
130
99
104
69
131
126
178
105
92
105
92
122
58
146
83
110
138
99
127
124
105
139
56
126
171
92
105
37
67
126
169
101
37
130
138
105
109
83
111
136
69
67
58
146
178
84
124
92
86
58
104
138
122
67
91
37
93
92
84
92
110
107
122
140
152
67
128
55
104
108
105
146
56
105
122
93
122
199
125
152
146
96
74
80
138
127
140
58
148
113
79
126
92
138
136
160
162
84
128
178
92
108
104
134
119
178
99
122
83
67
67
152
56
188
86
148
92
91
132
123
55
127
138
130
106
122
93
105
92
92
118
99
105
145
56
93
105
122
134
55
117
110
104
93
134
115
138
56
124
74
138
110
104
37
92
55
139
140
105
92
92
92
58
119
117
81
67
77
110
58
123
141
139
134
86
127
122
92
131
165
56
138
110
122
110
105
107
127
122
93
134
56
122
144
86
110
111
171
128
86
152
101
105
126
93
91
104
152
110
158
105
135
55
126
142
96
83
86
171
69
55
92
72
77
105
138
144
144
104
110
55
109
178
110
178
55
92
110
128
122
120
127
55
126
104
91
122
155
105
99
99
67
56
146
92
106
92
122
114
104
138
58
68
122
37
92
69
104
86
146
105
55
169
92
199
138
136
126
93
105
92
128
128
55
113
91
74
138
169
87
67
92
132
132
92
67
140
68
79
58
138
103
74
109
144
55
55
169
122
139
145
152
37
120
162
83
103
37
138
109
67
100
77
93
148
92
138
110
121
56
55
37
162
136
86
110
110
69
122
58
58
92
105
97
134
124
138
105
119
68
146
37
101
178
123
86
105
126
144
110
122
107
105
115
37
110
74
67
158
120
37
156
123
126
138
122
75
77
138
122
163
103
122
56
110
74
75
93
93
119
79
93
110
99
180
123
74
122
92
104
138
122
134
107
138
97
132
122
68
56
69
128
89
55
91
127
99
111
88
110
110
138
111
55
109
128
163
105
118
146
122
37
110
126
67
127
67
103
69
67
58
134
55
140
55
69
37
152
100
148
95
107
139
135
91
140
119
79
69
178
55
105
138
104
93
120
146
152
137
148
98
55
67
101
138
110
115
92
158
56
168
118
110
134
138
169
127
119
126
37
152
93
67
92
128
67
134
105
97
104
126
67
110
105
163
67
110
171
135
86
169
75
55
165
56
58
56
178
135
92
56
127
171
171
92
140
108
171
122
134
138
110
127
92
138
131
67
37
84
58
111
69
111
92
111
67
67
181
111
144
158
165
103
134
69
178
139
110
104
152
37
92
55
105
88
146
171
93
91
110
86
130
55
92
99
74
180
162
79
58
127
171
86
132
124
110
124
128
106
55
122
114
139
171
140
92
83
67
126
158
68
110
67
162
93
105
104
109
69
55
55
75
67
104
124
178
55
108
55
110
91
113
149
118
123
56
144
111
58
91
55
145
126
152
110
75
69
86
37
110
102
56
92
67
106
97
55
55
55
124
111
91
55
99
178
169
108
107
128
58
124
111
92
124
105
74
89
178
67
127
127
122
110
92
37
123
111
131
110
122
111
55
84
122
91
92
111
178
111
92
182
95
104
103
136
37
56
158
122
178
134
74
68
114
122
56
55
100
124
69
93
112
169
55
144
37
92
80
110
91
122
134
110
152
109
111
109
91
117
126
95
37
152
56
132
127
105
69
119
109
126
55
127
110
132
93
55
56
152
74
146
99
146
139
118
162
92
110
58
144
144
178
111
122
169
127
146
110
142
84
37
110
55
105
93
140
58
126
55
122
102
138
68
56
93
74
131
144
55
139
83
98
56
169
139
138
67
127
97
144
104
145
139
69
126
55
152
126
58
126
109
144
104
105
100
67
72
126
109
169
152
92
123
56
109
67
69
138
109
135
130
140
131
75
122
37
58
91
37
92
58
109
105
104
92
124
80
56
93
136
123
79
55
122
68
111
134
104
124
103
137
74
120
180
91
89
107
122
136
144
104
168
77
111
152
146
105
110
105
67
92
122
140
74
91
178
118
99
123
139
79
138
129
123
122
123
98
86
110
105
95
55
110
68
122
92
112
119
188
126
139
138
139
110
126
93
37
139
144
103
120
104
126
74
127
140
134
55
138
126
107
138
126
67
146
84
74
122
75
129
146
104
55
57
138
77
120
55
138
55
83
144
156
131
110
138
119
92
139
152
169
111
105
58
126
55
146
74
92
168
55
109
99
110
122
79
120
92
138
138
122
130
127
80
125
92
127
67
136
69
134
92
58
123
56
116
85
112
110
126
84
69
110
105
55
110
199
83
131
148
110
148
101
138
69
67
152
37
120
127
99
139
57
58
86
67
69
142
68
112
146
93
69
55
95
122
55
58
144
55
138
110
178
144
58
144
138
105
152
92
55
126
152
104
69
104
104
67
109
101
149
101
56
127
169
126
75
56
104
67
92
96
132
128
131
74
93
114
124
122
109
119
144
188
93
123
69
74
122
160
144
68
115
110
93
105
89
93
119
122
55
122
80
152
114
74
158
67
122
55
134
117
123
37
108
126
108
91
104
91
105
37
37
67
93
67
55
56
128
55
77
104
152
199
126
117
139
117
136
56
107
169
107
56
105
104
105
123
58
132
129
64
126
139
171
56
148
56
95
138
139
101
140
126
124
67
105
68
56
110
37
87
110
139
112
119
68
119
56
122
56
105
93
103
55
58
37
127
145
145
92
95
135
127
55
83
146
126
107
122
92
69
58
100
74
178
165
92
122
140
131
68
91
109
92
126
37
105
126
92
79
55
126
122
91
105
68
148
114
138
112
88
110
162
91
110
148
92
104
140
77
55
129
128
104
122
104
102
146
110
92
67
92
158
55
67
99
68
58
93
144
55
144
55
122
127
80
152
130
134
37
83
92
92
117
116
75
84
93
110
92
55
92
119
55
126
107
92
126
123
144
58
134
164
178
138
122
97
152
105
160
144
92
55
119
88
67
110
92
143
134
122
152
75
37
103
165
171
92
74
126
67
105
106
104
75
139
104
110
128
127
125
98
122
55
149
122
122
160
105
104
162
110
84
92
55
121
103
130
74
56
171
122
138
77
105
93
109
124
119
69
104
92
58
145
123
132
93
138
58
110
112
55
123
146
164
112
89
122
97
109
129
37
67
118
105
178
146
107
146
144
81
145
56
89
122
55
122
93
58
79
103
79
122
127
56
92
56
136
137
132
104
138
134
119
110
110
152
67
122
132
91
164
126
91
110
92
75
83
127
111
55
86
131
105
123
67
105
37
139
128
68
126
122
69
69
125
55
104
105
131
56
99
139
138
92
122
110
110
55
139
104
74
178
93
110
93
55
99
99
92
148
138
145
58
199
109
117
92
98
93
75
152
178
55
98
75
139
92
93
86
98
111
110
107
148
138
55
138
92
122
128
89
79
142
37
130
55
110
91
138
77
67
138
138
107
105
56
128
119
169
178
75
145
77
56
136
167
92
69
134
116
92
92
105
92
139
127
122
122
139
56
139
58
132
92
105
134
149
122
138
140
140
107
102
122
69
135
97
136
110
105
126
140
55
92
125
55
104
139
109
140
171
93
156
105
74
131
83
67
86
92
93
56
105
75
67
122
119
123
69
105
128
178
67
107
58
94
112
152
55
127
91
109
136
67
69
126
126
131
130
144
139
105
99
124
56
86
115
122
56
86
146
37
110
103
69
144
88
126
119
134
131
127
105
100
58
102
104
56
75
131
131
126
114
138
127
92
106
55
123
127
97
74
110
123
107
79
93
123
130
92
103
95
105
135
138
84
77
164
146
139
122
109
75
92
146
89
119
169
138
119
110
92
127
74
123
124
91
129
110
139
123
96
128
56
159
127
110
58
112
178
126
168
74
92
55
86
86
55
119
87
110
67
93
80
67
158
134
111
126
107
103
97
93
97
122
65
123
86
146
83
55
56
55
56
109
69
145
178
74
105
152
138
119
126
109
115
56
78
92
102
93
92
86
55
56
152
37
178
56
178
105
104
55
122
130
114
73
110
122
58
55
122
123
58
67
118
105
131
58
101
146
110
110
37
105
148
114
119
108
122
110
67
92
92
106
37
86
85
55
77
146
141
95
92
138
67
110
141
67
92
58
104
140
126
128
146
79
110
37
88
37
100
110
92
126
139
56
148
110
37
55
123
123
108
180
94
86
93
163
110
128
67
110
101
103
86
110
126
119
56
105
162
74
55
112
100
103
124
112
111
111
87
58
124
139
131
136
127
128
119
104
111
91
123
105
56
74
148
56
68
169
111
105
138
79
104
105
123
91
37
127
83
77
146
126
37
58
122
126
110
55
92
55
67
188
69
127
91
118
56
122
121
77
79
37
110
100
126
69
69
169
93
110
139
135
102
55
144
92
122
67
122
55
132
104
55
126
101
56
127
122
178
114
93
178
67
77
95
93
67
127
56
86
145
56
92
93
109
122
98
152
67
99
107
110
126
74
104
69
93
104
171
145
104
110
55
124
140
58
37
110
109
79
105
105
74
91
126
91
105
56
93
93
107
141
67
122
107
144
89
123
104
126
127
56
126
104
126
126
58
160
87
156
83
126
55
55
138
138
55
92
102
107
83
146
127
139
67
144
110
127
37
37
119
67
117
79
126
152
110
120
83
122
74
169
97
110
115
110
109
107
55
102
105
37
119
122
111
101
152
79
189
125
67
55
112
104
81
138
110
111
159
56
167
126
131
127
157
67
138
122
140
83
146
105
178
105
128
122
130
55
110
169
55
126
80
177
69
104
77
67
83
67
93
104
138
110
97
138
100
112
148
178
149
92
37
67
104
67
135
107
140
115
144
86
69
92
58
92
117
128
37
134
91
110
139
105
144
168
118
92
81
152
144
99
122
139
146
111
99
109
74
126
99
172
78
79
67
91
83
124
98
91
178
126
56
56
126
101
126
67
97
105
67
79
124
139
55
112
104
68
92
137
77
99
169
55
93
67
86
126
91
92
56
92
122
120
111
130
75
68
105
123
127
95
178
167
86
105
139
146
93
67
123
109
122
122
79
178
138
132
69
55
140
110
122
55
104
116
119
105
107
80
56
139
105
106
110
103
88
109
160
128
122
37
180
123
58
110
110
128
67
106
127
105
178
134
130
122
103
77
152
56
140
104
119
150
92
110
78
123
55
107
94
128
119
152
169
123
199
105
126
67
138
99
37
120
138
67
169
140
97
126
119
55
132
124
100
78
97
110
117
126
132
139
105
93
130
146
67
122
110
105
93
126
86
110
103
126
55
55
110
95
93
110
55
67
146
92
188
115
111
58
107
160
104
119
119
95
138
74
122
101
68
105
171
107
104
127
119
146
105
97
37
146
89
86
144
92
58
138
127
109
123
171
122
110
58
158
79
105
169
96
93
169
123
104
95
111
122
144
103
110
105
79
124
122
114
55
104
139
69
107
91
69
67
105
128
86
136
101
138
124
67
55
111
104
144
69
101
178
122
67
93
86
105
75
92
92
55
93
110
55
55
122
105
58
134
58
37
92
120
91
138
37
143
111
37
119
123
58
55
93
105
119
122
110
110
126
126
144
138
58
126
122
86
69
67
122
72
110
138
92
105
93
74
55
110
55
169
123
162
110
138
77
119
119
178
138
128
145
56
146
89
138
103
122
129
126
56
129
146
160
119
102
105
86
126
126
122
69
56
92
77
110
79
99
110
139
109
122
105
111
56
91
111
136
138
89
74
129
111
152
122
130
92
67
105
69
75
104
135
131
55
112
199
55
126
136
128
105
67
126
131
168
55
93
92
55
169
165
104
127
109
140
112
55
93
69
56
122
136
122
158
76
86
67
171
55
132
105
146
115
126
178
103
37
131
109
86
37
55
119
122
124
124
123
92
55
75
107
92
56
134
158
91
110
152
88
105
171
110
126
67
105
110
138
119
92
104
104
105
122
126
83
178
148
109
110
180
75
103
93
110
122
89
91
109
128
93
138
104
104
138
138
180
67
144
107
110
138
37
145
112
55
110
118
109
98
163
126
152
105
110
124
124
180
69
55
37
114
128
107
152
109
92
132
92
171
177
55
58
124
109
100
67
91
122
126
93
146
77
98
122
144
134
102
67
169
124
93
111
127
92
127
127
86
108
86
127
136
126
108
37
126
74
58
99
144
55
89
58
107
122
126
84
55
138
126
110
169
58
37
99
67
105
110
69
110
160
134
69
105
151
134
79
67
75
178
169
110
83
100
79
120
67
127
122
168
92
67
142
56
79
58
164
110
134
93
110
109
69
178
105
92
56
138
122
105
74
37
81
92
58
131
92
119
67
95
99
171
84
160
104
110
152
56
68
79
67
58
106
67
119
123
103
144
124
152
123
92
110
105
67
92
103
92
55
111
58
139
138
138
105
134
139
162
103
100
55
128
151
131
95
138
105
123
79
95
93
130
69
67
127
98
169
37
152
144
67
101
135
104
126
126
104
84
152
126
111
55
92
67
127
69
68
122
152
104
97
112
89
138
93
83
112
123
138
104
105
105
158
83
105
99
91
131
104
123
64
83
146
158
152
124
92
144
95
138
140
124
144
83
130
110
92
120
178
128
158
122
88
122
92
114
91
107
58
79
99
120
104
127
92
112
138
122
103
119
37
139
105
91
113
93
79
126
55
95
122
138
69
55
178
67
102
55
55
104
98
122
126
92
131
89
142
127
122
122
144
146
67
93
73
93
69
83
103
119
103
114
67
93
126
139
92
91
105
139
138
55
199
92
131
69
135
55
58
138
93
93
158
122
109
92
127
138
92
96
105
104
56
126
107
111
169
144
144
92
178
55
137
92
75
102
139
103
67
93
67
92
126
122
93
110
145
67
84
69
75
79
126
92
122
104
167
84
93
55
86
127
92
104
132
110
128
158
140
130
171
101
111
56
118
110
58
69
109
108
105
55
97
67
79
101
92
103
103
131
37
92
140
55
92
130
111
158
138
105
92
93
105
92
146
106
75
56
112
97
142
55
135
79
122
37
92
138
128
95
110
56
58
55
140
91
74
55
103
110
77
77
91
123
122
92
104
104
122
92
141
55
171
122
128
67
103
105
178
55
137
131
86
119
169
77
127
110
137
119
55
92
131
67
83
138
69
138
99
138
111
109
92
92
135
144
105
37
139
93
93
110
152
143
107
56
77
127
168
69
105
37
97
132
99
111
98
86
105
56
75
111
110
102
56
122
137
140
67
125
120
80
123
99
92
98
122
106
126
37
178
92
55
109
122
126
55
110
92
127
122
136
105
106
138
105
142
127
127
164
123
145
138
104
92
112
134
119
105
69
104
126
164
103
140
138
74
126
86
55
67
126
58
124
123
105
67
81
197
55
100
138
56
123
83
105
113
147
126
138
55
86
86
115
69
84
69
146
118
111
110
117
92
119
138
104
91
79
139
93
105
92
103
126
167
84
135
122
111
126
91
180
127
92
77
169
136
121
92
98
131
110
55
139
122
114
118
92
104
91
91
122
171
109
105
152
79
92
144
92
79
105
55
126
92
152
123
112
178
122
126
110
56
99
55
108
126
79
56
179
56
75
104
107
110
80
93
105
79
123
126
93
144
102
126
67
74
64
55
91
138
104
100
144
104
92
55
128
55
178
99
104
144
55
122
126
92
69
127
92
56
92
122
77
148
67
128
127
79
135
107
115
126
110
126
105
105
124
114
152
67
109
168
112
79
122
139
139
127
56
128
69
132
138
132
138
56
84
55
109
131
98
93
92
92
92
104
132
58
126
104
117
77
110
37
128
147
119
128
75
144
110
91
110
124
78
67
91
124
128
140
104
139
56
110
93
131
68
169
91
164
140
99
124
86
37
145
81
77
67
114
110
73
122
110
139
119
105
122
126
86
110
123
92
128
37
91
86
93
122
69
146
92
92
58
152
77
138
107
130
55
128
110
105
138
139
74
146
148
92
55
87
56
123
114
74
93
144
68
107
55
55
107
127
88
93
127
122
146
134
91
138
93
105
138
134
127
118
106
122
74
37
104
171
58
178
171
92
122
79
104
69
114
86
103
93
138
146
93
67
126
146
67
138
132
102
92
55
148
58
141
56
104
178
169
55
178
92
126
144
104
89
99
98
92
160
114
152
139
110
67
119
79
101
56
93
37
138
74
146
107
79
123
144
88
148
55
105
68
69
100
122
110
55
37
92
152
122
123
122
105
92
131
67
92
121
140
81
142
37
105
105
97
122
105
37
56
55
127
139
86
126
88
126
152
101
103
130
93
138
92
112
126
140
55
127
97
58
128
79
74
69
37
127
110
104
84
134
167
122
104
144
74
128
112
144
123
55
67
87
102
122
123
132
110
119
56
97
138
127
126
56
104
125
126
74
74
139
92
55
111
55
146
67
37
105
123
68
178
56
120
56
110
105
138
124
119
67
68
103
106
144
67
69
138
105
58
123
104
103
92
91
86
105
93
138
77
118
93
92
146
92
67
104
138
147
37
137
122
128
69
92
105
119
110
138
92
56
56
180
106
55
92
92
138
92
79
67
128
92
110
126
122
99
92
37
122
92
121
139
146
178
92
67
107
56
128
55
92
144
139
152
67
104
126
119
103
110
110
93
126
103
126
188
92
69
110
109
171
67
123
98
148
119
123
67
168
93
110
114
92
92
130
67
122
55
139
178
138
91
144
126
180
74
119
55
109
105
107
55
124
74
140
127
132
56
58
134
103
138
108
103
77
110
110
128
126
110
55
119
115
55
146
83
110
80
105
122
79
122
106
138
139
92
80
140
152
110
162
119
98
160
127
122
109
180
89
91
144
163
74
111
108
108
120
178
58
121
126
105
56
158
79
79
37
108
179
37
117
179
158
75
121
64
117
108
103
104
105
56
140
138
92
74
138
114
122
130
92
83
127
152
68
89
91
109
141
100
138
122
177
67
67
89
144
122
97
136
55
105
122
111
110
140
69
122
126
104
93
55
144
131
105
119
168
138
37
92
104
146
77
134
37
124
109
127
162
69
130
111
127
67
123
110
79
93
139
58
124
56
123
105
99
139
110
99
138
92
160
92
107
112
127
93
55
178
122
178
105
121
109
178
139
130
56
79
122
115
77
105
105
93
168
178
122
110
134
79
130
91
180
77
104
138
135
99
110
105
123
126
105
144
138
169
146
110
55
138
79
139
97
92
138
115
86
77
171
93
122
130
120
127
55
103
102
128
108
142
74
138
152
93
92
178
92
67
128
67
178
92
67
130
104
55
110
122
77
92
128
55
126
55
69
67
83
123
117
108
107
122
126
74
67
110
91
134
105
146
92
103
134
182
119
178
104
114
126
120
139
104
67
105
56
146
110
122
93
92
152
152
137
126
69
58
74
86
55
119
74
138
83
138
142
138
138
134
102
149
92
97
92
123
140
140
109
152
122
67
104
127
79
79
117
105
110
145
67
101
131
105
127
69
74
92
110
93
134
99
128
99
178
138
56
104
109
99
95
99
67
101
128
110
89
128
109
79
180
110
144
111
67
119
105
55
169
89
139
138
92
93
106
92
58
67
105
37
92
112
138
103
72
93
101
92
126
128
67
146
37
178
129
134
131
127
107
113
92
138
86
64
110
152
169
136
110
160
119
67
91
163
118
97
93
93
92
37
56
134
137
55
122
93
77
134
128
69
108
108
103
55
122
77
67
92
93
98
144
37
55
168
92
93
55
105
75
126
94
86
92
110
119
146
139
55
121
111
146
122
110
84
121
37
182
122
122
129
84
91
138
55
93
81
107
138
119
85
126
146
37
105
89
55
128
105
177
123
134
123
140
129
134
104
139
74
111
135
138
127
69
152
92
127
99
171
55
86
124
127
55
180
105
91
74
105
171
58
178
91
100
69
37
140
119
75
56
117
138
104
86
69
169
134
103
119
142
140
146
138
144
92
126
122
118
152
162
104
86
106
79
144
104
107
136
86
110
77
127
144
97
111
107
109
75
139
139
92
37
67
139
188
74
56
58
97
123
104
128
99
117
102
55
91
79
128
58
104
110
56
37
101
67
67
79
86
138
98
118
67
67
92
163
128
55
137
138
138
64
100
99
122
116
144
111
180
107
37
111
55
92
160
101
69
55
126
56
92
182
91
92
92
139
126
126
111
109
105
137
128
122
138
146
92
92
58
79
139
178
126
124
149
92
122
86
108
107
97
138
74
180
122
55
138
86
138
107
92
74
146
67
110
126
178
92
110
93
169
58
152
92
122
67
67
126
55
163
92
152
105
123
109
139
58
109
105
97
74
92
112
146
110
158
83
69
111
139
75
93
114
126
126
103
140
129
69
91
117
75
106
124
69
138
110
104
126
91
139
123
146
132
67
111
135
83
134
89
92
158
92
97
91
58
102
95
129
103
94
144
77
92
93
41
178
93
101
58
67
178
139
92
111
144
92
99
91
131
138
104
122
138
139
144
134
77
77
88
134
37
178
138
138
146
162
118
130
146
146
164
114
89
123
110
91
55
56
122
122
107
99
79
105
126
97
139
37
74
126
67
123
77
177
139
122
83
67
92
92
122
138
106
55
144
126
125
92
164
58
92
98
126
58
106
92
79
56
122
69
146
138
56
79
95
93
58
106
91
119
55
127
56
149
128
139
105
93
99
56
67
86
136
92
138
75
138
106
128
161
138
58
56
146
110
91
138
68
99
93
55
92
123
56
128
152
74
118
67
55
123
97
69
58
126
97
92
188
105
128
105
127
130
110
93
77
55
93
107
55
126
152
74
122
67
86
75
56
75
55
138
75
56
56
79
58
146
111
78
80
123
120
126
103
72
124
92
75
97
92
108
128
110
97
135
122
138
146
178
84
164
139
95
122
136
108
78
139
120
127
56
140
111
92
37
122
118
89
84
110
56
139
122
119
109
74
104
138
122
83
103
126
113
69
130
86
134
110
37
67
55
55
107
55
110
122
122
169
199
68
105
75
138
144
169
110
138
124
112
135
126
152
98
146
110
126
144
67
142
58
139
93
110
79
120
95
139
81
107
109
122
58
93
118
138
76
122
105
134
93
37
99
149
105
56
147
110
105
103
107
132
138
126
117
92
114
171
144
74
86
136
120
110
91
122
69
122
122
93
93
110
68
135
91
138
92
164
67
111
192
138
67
67
122
93
110
97
101
146
99
138
58
55
105
67
169
111
158
105
93
124
95
119
144
142
105
134
55
67
37
92
123
104
146
98
67
126
83
108
152
138
106
86
91
136
124
122
58
126
112
138
55
105
152
123
67
105
169
69
135
55
58
55
178
97
55
178
139
127
149
92
110
139
92
110
67
168
77
105
138
110
56
99
118
58
56
162
37
126
69
138
122
119
128
134
127
58
92
105
55
92
169
69
101
55
104
171
126
78
91
130
136
37
126
99
104
86
105
152
105
128
110
97
74
100
138
105
122
122
56
128
112
105
124
105
56
128
144
68
80
137
105
122
67
119
138
91
93
67
98
110
169
142
112
150
105
93
127
86
55
130
127
139
104
111
69
105
106
77
104
111
84
86
105
83
72
122
110
134
105
126
138
92
178
104
55
178
128
110
199
110
103
74
55
55
104
74
148
144
55
126
81
136
134
102
107
124
102
128
67
171
105
92
153
79
93
55
79
134
126
89
110
178
137
79
131
138
83
138
55
134
122
97
106
105
83
105
74
105
134
92
104
114
152
122
104
130
148
55
55
139
122
93
87
132
67
138
114
55
58
119
131
122
92
182
110
138
107
100
88
104
104
138
122
56
122
124
119
128
147
74
109
144
112
128
86
118
105
75
92
93
162
168
92
92
93
138
91
146
92
117
109
118
92
55
119
55
75
163
177
144
92
93
100
78
67
88
64
37
109
162
158
55
55
139
93
94
99
77
178
75
104
130
110
144
178
75
138
119
101
122
67
146
138
178
127
95
109
58
77
55
136
92
128
109
67
86
135
180
169
69
93
129
79
76
126
58
123
137
79
132
122
93
123
134
122
68
115
92
128
58
120
118
104
122
140
88
122
104
105
142
92
118
56
111
55
132
122
141
68
122
152
178
122
104
146
56
84
75
108
110
108
79
105
131
56
67
56
152
55
37
114
37
104
138
126
139
97
144
83
79
97
139
127
143
132
120
138
122
92
122
91
128
126
55
119
69
58
138
56
105
56
92
169
55
152
92
127
86
86
149
122
67
104
118
126
83
147
69
55
158
128
110
92
178
110
149
125
114
91
111
134
118
67
105
56
105
93
169
126
151
110
105
83
110
83
146
138
120
109
126
122
127
105
146
106
109
138
69
91
58
56
110
56
122
131
122
104
169
148
110
165
109
126
110
146
171
92
75
110
79
67
122
111
93
178
69
171
126
84
37
122
131
100
169
147
74
67
120
119
92
122
123
77
98
89
89
105
99
128
126
91
140
171
126
105
86
138
67
134
122
67
171
37
92
58
122
105
130
101
93
55
127
138
139
69
123
134
93
140
178
37
139
86
69
86
105
136
109
86
139
92
138
86
99
111
55
58
86
152
144
99
107
55
130
92
109
138
139
126
97
114
122
120
93
123
123
110
55
93
158
55
93
110
104
110
111
171
130
122
95
101
91
126
126
37
55
124
86
163
146
105
125
55
122
139
140
110
37
93
101
138
144
58
180
169
80
92
125
92
111
140
123
109
92
110
107
127
106
74
104
56
98
169
37
83
139
76
55
104
95
140
130
144
55
92
37
128
55
110
92
126
140
55
105
92
134
138
55
138
37
138
126
152
146
134
67
93
67
122
162
107
138
88
110
152
112
92
67
102
91
105
178
55
88
56
92
56
122
154
105
112
109
126
91
67
93
37
37
168
56
112
168
123
111
126
92
126
126
78
79
67
109
83
92
55
55
131
105
79
103
117
127
129
69
55
74
69
92
121
119
93
84
55
110
109
126
92
55
56
69
144
138
146
122
144
130
97
109
83
122
114
84
67
144
92
67
79
75
92
112
171
139
178
108
84
110
103
140
138
122
140
180
67
110
92
68
110
67
74
67
126
138
138
126
103
134
171
67
79
55
139
137
119
92
105
146
92
93
89
112
119
144
101
144
112
169
146
146
122
104
119
79
74
128
127
67
126
77
178
163
122
67
138
58
132
55
92
69
92
137
122
169
127
126
123
139
122
109
105
92
131
67
55
94
113
123
67
93
55
123
139
104
128
122
127
67
92
92
56
104
152
92
56
111
67
139
104
123
127
104
81
126
56
104
111
74
114
110
121
75
55
83
56
110
127
120
103
127
56
91
110
152
130
134
107
107
110
122
67
67
126
139
79
83
122
139
112
139
77
126
139
103
55
111
110
92
104
136
118
37
149
103
67
104
104
110
142
110
128
128
69
100
178
97
180
105
109
162
126
55
67
107
145
152
107
104
104
169
122
138
92
128
146
126
79
124
127
168
55
74
130
146
91
92
56
86
128
105
127
130
56
122
118
93
110
138
104
91
140
56
110
67
139
56
110
110
123
118
105
58
93
128
131
92
58
130
139
144
168
131
107
110
112
111
132
119
105
93
110
168
102
110
56
138
97
58
118
138
105
126
169
180
79
122
103
128
110
128
77
144
56
106
134
37
112
86
93
69
91
67
97
144
127
146
55
110
56
55
126
146
92
104
37
86
92
145
169
56
138
105
75
107
123
140
110
37
77
125
139
55
77
83
105
131
83
58
168
92
92
92
91
67
130
55
80
93
126
97
56
110
93
92
56
58
111
77
99
93
55
56
130
55
122
93
91
144
118
146
105
138
114
149
110
171
110
83
105
91
92
145
56
168
158
97
126
178
125
127
79
138
126
109
146
152
104
122
169
109
138
99
104
56
127
122
100
152
103
93
130
158
134
126
79
114
104
95
99
169
105
158
58
138
114
123
128
110
56
126
55
123
92
139
58
37
131
123
67
178
142
127
37
104
104
138
156
97
69
56
141
110
67
119
146
138
105
132
138
56
131
144
138
165
146
124
74
56
154
103
79
127
101
55
119
169
55
126
105
144
99
130
112
86
119
91
122
75
107
102
158
75
163
92
91
149
126
92
119
91
127
105
137
68
169
138
134
83
55
148
104
92
146
55
79
138
171
104
134
56
93
58
55
67
83
104
111
178
56
69
58
178
178
92
104
89
114
105
77
140
139
56
111
69
134
77
55
79
105
128
67
178
180
122
144
168
92
112
67
169
132
92
122
123
77
167
152
122
152
109
163
105
37
58
127
56
138
123
119
140
74
124
92
55
86
128
112
93
58
110
136
178
93
88
122
92
118
92
55
122
92
58
122
87
91
110
127
122
132
109
88
130
93
74
160
123
93
74
56
111
139
92
67
152
92
37
126
68
55
55
122
135
92
110
75
37
105
55
110
56
93
72
111
105
107
146
126
37
109
92
138
123
109
79
127
169
74
91
122
146
93
126
139
109
104
163
178
140
138
92
105
105
139
123
128
112
92
138
67
105
163
102
123
134
91
169
143
67
139
67
139
98
55
119
122
92
123
67
135
107
178
57
138
115
58
97
67
105
79
56
92
99
122
105
86
127
91
37
122
55
160
56
122
104
68
93
122
126
146
139
93
37
37
55
126
79
99
109
139
134
104
69
139
67
86
119
37
169
126
110
104
77
105
110
89
69
138
144
146
138
76
125
74
152
92
67
162
114
165
79
110
137
55
79
67
118
37
105
119
120
122
103
67
111
69
122
110
152
119
67
55
92
131
74
55
122
105
104
130
92
56
124
105
92
149
104
55
163
114
69
150
79
55
139
139
92
122
169
138
92
107
92
92
114
104
105
152
138
144
171
55
144
69
137
134
112
67
86
79
55
136
126
122
110
122
139
75
92
123
130
91
56
111
58
152
77
37
92
75
88
55
144
158
77
110
138
92
135
83
92
105
138
126
93
67
178
146
146
104
67
95
79
104
138
55
104
101
110
103
58
79
93
120
125
112
128
55
105
55
126
88
84
110
104
104
55
91
134
123
127
146
140
146
55
117
162
55
122
110
119
64
56
92
132
115
102
122
68
106
132
67
144
134
105
125
112
86
126
122
105
74
148
105
56
92
110
37
160
97
55
138
138
58
93
124
69
92
37
152
56
74
119
92
146
37
92
95
104
119
110
107
103
199
104
180
69
55
92
146
164
178
128
112
92
178
55
139
107
123
128
93
129
117
178
156
55
104
146
127
114
189
93
67
58
105
111
106
92
79
92
105
83
92
104
137
139
104
55
112
148
168
89
122
180
114
93
122
92
138
144
126
56
126
79
111
92
148
55
111
56
144
119
67
92
92
144
92
93
136
100
81
93
199
77
92
122
125
110
163
56
138
99
93
139
122
134
147
74
158
56
88
139
168
58
122
114
117
158
55
120
84
112
55
110
137
134
178
139
146
138
105
144
89
92
101
105
55
104
144
126
122
138
55
84
93
139
92
67
127
169
128
111
124
114
123
160
109
138
144
55
126
110
118
108
130
112
132
165
126
86
67
104
112
83
152
68
127
127
105
77
55
92
140
98
171
100
138
122
163
139
91
128
106
120
106
67
128
109
131
95
129
55
75
146
91
104
122
110
139
109
156
134
130
111
144
122
163
130
146
178
68
101
98
110
69
92
37
68
55
85
122
128
140
111
58
86
92
91
146
86
126
109
69
97
91
128
104
55
99
109
127
134
110
83
105
126
110
140
119
91
99
58
119
110
126
92
93
144
103
110
127
67
169
152
117
168
110
110
56
122
67
152
138
98
105
97
134
105
92
74
92
127
138
97
136
93
110
122
67
92
122
55
118
119
105
110
138
114
93
110
138
102
68
114
75
126
67
130
160
152
109
97
65
37
58
152
105
122
92
148
146
129
138
104
103
56
144
96
92
58
182
139
114
104
169
180
126
85
93
104
89
67
56
77
93
120
152
92
160
99
118
119
110
111
111
103
107
67
56
92
56
93
93
92
127
122
55
126
104
105
79
105
92
119
69
127
79
104
135
138
55
138
163
92
37
138
56
55
126
162
105
106
129
144
114
97
86
88
163
125
125
105
112
56
75
152
68
111
123
131
178
55
118
55
110
55
178
134
110
55
92
140
126
92
107
156
126
92
160
109
55
145
110
86
92
178
110
102
104
92
138
37
126
145
92
105
119
110
69
55
69
56
94
92
77
128
56
92
86
55
105
67
122
92
188
86
152
126
92
127
144
55
109
148
103
103
110
92
67
160
126
122
144
152
169
122
111
126
93
118
55
112
58
101
128
144
77
178
110
105
105
77
178
127
105
92
67
122
163
75
139
126
139
112
56
106
58
67
110
114
144
55
37
110
104
92
37
134
92
98
178
92
69
178
109
105
55
67
55
140
104
105
92
92
58
178
123
110
126
138
110
109
144
115
136
161
84
99
93
110
131
123
138
146
127
122
109
138
127
122
105
123
127
139
126
105
56
122
80
122
67
91
138
160
105
129
128
107
92
86
37
111
122
58
146
122
74
127
83
138
102
67
119
75
110
93
188
67
124
68
79
93
56
122
56
105
77
55
100
86
92
130
126
67
108
107
128
138
69
146
122
123
126
111
135
92
67
125
122
98
99
83
110
119
105
104
123
146
130
163
122
139
125
84
178
79
126
122
152
153
105
111
156
69
92
148
130
102
148
110
92
135
101
86
56
123
86
68
92
139
114
105
91
74
178
128
92
81
122
138
56
109
123
92
140
152
55
180
58
55
92
169
67
80
169
146
37
103
92
110
84
92
83
124
141
110
111
92
102
122
130
152
148
86
109
110
55
144
139
104
111
56
91
138
58
37
119
92
111
126
94
117
122
139
55
152
124
111
102
122
109
77
127
111
92
139
78
99
148
137
110
107
127
67
55
105
169
132
122
140
108
120
144
120
138
130
126
138
91
140
145
122
127
67
84
104
169
134
92
79
92
113
93
119
130
119
100
92
144
111
144
126
126
79
56
122
93
127
91
68
111
110
99
91
131
119
131
132
93
92
111
127
104
89
111
92
58
114
58
114
101
169
104
130
89
105
114
58
111
104
74
37
126
130
92
126
37
97
122
104
139
67
37
130
114
37
92
37
92
93
55
138
100
152
130
110
93
105
138
81
79
83
178
92
140
37
104
110
83
140
140
136
168
56
67
86
145
79
55
114
93
92
139
127
104
105
103
92
124
110
97
58
140
178
68
110
67
69
110
111
152
168
138
92
126
89
107
127
105
138
99
146
138
75
104
55
118
138
105
124
67
104
67
138
106
77
132
58
123
91
83
114
122
161
148
130
105
126
165
99
134
124
58
132
108
144
122
67
122
128
67
91
107
146
55
142
109
101
138
100
92
130
111
93
67
110
92
69
103
104
110
79
67
109
122
107
93
122
134
105
145
110
93
110
112
99
67
178
110
58
105
105
178
122
142
99
92
107
127
91
110
134
69
112
126
182
122
87
93
77
111
79
109
136
163
136
93
112
122
130
86
110
126
111
97
91
69
146
142
122
109
93
132
107
69
104
95
129
105
188
99
134
55
98
152
58
126
111
56
122
109
135
138
111
128
99
136
104
68
178
124
98
123
55
55
79
104
118
144
110
92
123
69
138
58
123
130
104
127
146
138
139
55
92
74
78
108
134
103
92
122
126
127
122
37
122
105
92
180
110
102
58
107
67
168
158
140
124
56
120
67
178
107
101
92
58
131
102
109
58
178
169
140
123
146
158
106
93
110
58
120
94
104
93
93
110
132
138
140
127
98
148
110
111
140
37
178
37
130
101
128
56
56
86
68
91
102
138
74
92
165
178
144
93
110
122
138
93
122
127
144
103
127
58
178
92
107
169
119
95
55
58
55
110
58
75
110
110
144
126
145
55
126
137
122
105
89
119
105
122
152
56
149
105
104
126
126
83
58
180
92
121
132
127
127
178
122
138
105
104
138
87
160
124
122
126
93
67
92
68
120
67
67
141
92
105
55
122
92
112
137
93
110
122
127
58
105
103
92
104
109
178
92
107
123
102
138
67
67
106
79
55
152
55
75
165
83
88
56
140
93
67
93
102
138
37
110
138
55
140
92
139
79
92
138
104
92
128
134
152
122
69
130
92
93
105
91
107
109
103
105
55
83
127
141
69
101
79
132
37
67
104
99
92
67
93
67
112
69
67
67
92
146
138
102
92
95
37
56
122
104
148
122
102
55
67
126
139
58
152
165
110
77
104
55
119
122
100
97
68
55
92
58
160
92
101
109
189
138
110
37
92
138
139
83
83
151
105
122
138
79
72
99
93
139
79
67
110
100
126
110
132
69
86
122
99
122
152
86
92
92
123
111
55
124
104
98
168
138
119
37
131
67
104
81
101
93
99
69
169
168
83
127
110
97
67
152
107
180
75
128
99
126
118
68
144
67
105
104
56
105
158
105
123
122
74
77
110
104
37
110
92
104
127
103
105
101
107
93
67
109
180
139
134
122
139
112
56
127
67
105
123
152
119
112
158
105
167
103
127
77
105
92
58
84
110
112
92
91
139
110
105
138
76
55
92
141
92
99
122
122
126
123
103
126
111
92
100
171
127
105
122
110
126
111
121
120
106
67
58
58
128
55
37
127
144
77
109
37
148
111
83
88
67
74
127
110
105
132
144
144
92
67
107
86
69
146
86
98
101
152
105
93
111
138
144
144
124
105
107
91
69
91
55
91
110
55
83
124
108
86
132
144
104
100
146
55
77
67
67
110
91
107
130
67
55
86
99
119
107
122
56
55
92
122
139
123
107
110
92
110
101
108
110
124
105
122
122
136
126
93
93
126
109
67
37
69
105
152
110
67
110
180
125
138
119
138
101
55
126
139
113
86
58
126
105
169
152
110
149
163
104
75
139
126
112
93
111
98
127
104
122
123
104
129
122
75
69
138
119
109
110
92
67
110
97
134
55
104
56
67
93
69
122
55
144
110
104
126
139
128
101
118
92
55
105
118
126
101
140
151
105
83
55
138
138
126
110
105
110
110
67
69
92
68
149
138
111
136
110
92
93
93
92
126
93
126
55
126
126
91
140
119
139
163
105
178
132
122
107
145
139
107
140
128
128
160
160
55
152
127
37
128
55
138
93
122
138
86
93
149
144
99
111
126
127
69
69
55
109
55
151
178
92
107
109
124
107
67
178
178
105
55
106
92
58
104
107
55
75
125
110
139
55
104
138
92
110
105
135
67
128
110
55
83
105
160
164
98
169
110
178
117
134
140
146
110
122
182
98
99
199
140
55
74
138
127
88
150
93
152
92
114
165
135
99
55
103
123
79
118
162
122
56
105
37
99
58
112
105
67
122
122
146
67
132
102
149
98
92
67
112
138
124
136
140
88
124
144
86
105
37
146
119
178
93
123
180
109
55
110
124
93
74
98
171
158
91
111
84
146
145
55
122
134
148
126
145
99
92
126
93
92
152
102
138
130
111
110
68
144
68
119
100
122
83
92
126
114
138
123
110
93
146
92
95
37
139
126
178
142
67
55
92
67
121
69
128
79
131
169
100
77
139
178
84
115
139
120
92
37
37
56
127
178
152
69
95
103
123
140
110
69
178
110
105
129
122
147
128
88
123
120
107
55
58
162
126
126
118
130
110
92
159
104
99
119
132
138
138
92
109
99
92
124
93
142
148
138
138
67
55
92
84
129
58
83
156
138
128
55
56
135
69
122
130
122
58
69
67
141
92
89
138
109
91
127
132
111
127
110
67
180
138
124
122
83
37
122
105
139
126
105
79
110
130
104
110
55
119
105
93
134
56
99
126
99
100
146
69
150
122
112
105
126
93
109
119
83
107
75
93
55
115
75
58
55
79
126
119
108
147
92
164
124
178
122
178
122
92
171
89
56
103
139
114
79
146
171
122
111
55
139
126
118
158
37
55
121
93
126
112
122
58
110
74
56
73
137
127
128
105
150
171
74
146
84
101
146
152
122
105
99
55
139
138
123
178
128
99
69
69
55
122
199
106
55
55
152
55
55
105
68
92
58
139
110
105
93
126
122
111
92
128
124
110
127
93
138
123
67
112
37
144
105
69
137
144
146
92
117
127
169
95
99
122
55
128
122
199
67
131
92
144
86
104
160
127
93
83
132
119
55
67
74
105
105
91
37
69
139
98
55
68
107
110
107
84
127
92
160
93
128
55
104
92
92
149
110
99
110
138
86
67
169
126
139
37
119
152
152
100
169
127
126
69
110
128
136
104
140
132
137
126
37
96
109
146
127
127
139
55
134
74
126
108
104
99
83
119
37
55
122
122
130
74
102
68
126
126
138
80
109
55
91
104
55
107
86
129
117
134
112
163
104
74
103
85
107
37
178
119
105
67
134
150
102
92
171
105
67
122
92
92
78
138
138
136
92
77
67
55
92
135
100
92
93
100
126
144
99
126
128
122
74
84
75
178
84
98
77
138
124
139
130
74
92
92
79
92
110
92
144
114
92
69
122
99
93
111
126
67
68
99
84
68
119
84
169
108
67
86
55
86
131
99
67
144
86
77
78
152
105
110
56
122
148
171
199
117
92
92
79
55
77
122
79
37
67
93
119
116
168
134
168
152
144
138
139
108
169
150
117
55
105
103
74
37
138
74
126
146
103
105
169
75
74
83
92
55
75
86
105
165
129
110
107
126
152
101
128
77
110
107
144
127
55
107
146
122
93
156
138
110
56
131
144
144
122
169
55
111
69
105
84
69
110
146
126
144
128
106
152
93
92
92
122
129
92
110
178
152
67
92
131
73
138
91
178
116
55
148
119
112
56
119
104
110
110
99
83
69
55
122
92
105
158
148
68
126
136
86
96
55
132
92
138
122
78
119
111
178
97
126
122
128
110
122
37
130
147
127
127
95
140
55
79
123
104
72
128
55
104
103
132
86
178
127
104
56
126
55
122
58
111
146
122
86
83
110
111
104
126
92
78
58
99
67
138
104
106
98
102
93
84
92
75
138
107
92
120
56
101
105
92
124
92
55
122
111
138
131
178
124
91
148
107
126
126
77
93
139
158
128
118
110
69
127
105
84
105
69
134
92
149
92
128
138
126
69
122
152
178
91
128
130
127
122
92
93
74
102
76
87
127
139
138
122
92
56
152
56
126
125
105
149
55
111
123
100
138
104
91
55
92
56
126
72
92
89
128
122
84
105
126
114
131
144
122
128
92
127
103
55
138
163
79
105
128
117
77
55
86
111
55
107
122
168
144
89
169
86
79
139
127
56
123
67
126
104
126
127
93
107
152
145
169
105
91
103
146
104
93
86
100
81
111
110
101
152
117
152
131
119
91
164
86
105
112
92
83
111
99
92
67
120
115
55
110
110
58
92
105
122
58
110
171
56
128
68
58
119
144
55
93
178
92
128
144
97
114
107
56
104
144
55
118
136
134
110
91
139
134
97
164
138
69
138
92
55
169
111
91
127
127
122
110
77
146
171
86
69
162
152
120
67
105
77
152
99
92
79
75
139
56
122
81
83
122
178
115
92
86
68
55
103
118
92
167
104
93
55
92
118
122
140
126
122
67
107
169
122
122
139
110
37
58
93
84
92
55
97
104
106
83
105
169
101
152
109
77
55
67
126
124
37
92
109
119
55
86
75
67
126
146
127
110
119
80
73
79
56
138
105
146
99
55
126
89
79
136
122
68
123
180
126
119
110
142
104
99
139
105
122
67
67
91
86
127
178
152
122
104
58
55
92
67
91
146
56
55
134
41
189
126
83
114
105
146
111
92
106
123
69
95
109
100
105
138
55
105
123
139
56
114
56
124
104
119
93
37
119
55
55
105
55
56
128
75
92
122
55
105
97
67
37
69
146
92
127
106
58
77
123
134
104
110
134
69
69
95
104
74
105
99
107
137
126
119
93
110
192
112
56
122
125
145
146
95
104
79
104
171
145
121
58
122
114
158
74
107
123
107
92
111
123
123
123
180
55
134
67
92
55
110
107
55
126
122
92
122
98
124
122
58
111
122
86
110
67
162
92
104
97
127
55
138
84
126
93
92
138
79
110
138
103
84
127
136
124
120
115
134
107
126
126
105
131
92
123
92
79
55
131
127
126
131
110
55
98
91
127
126
139
120
83
55
69
105
56
126
97
67
162
110
127
111
123
104
140
122
105
74
122
119
92
138
56
123
152
105
138
92
87
124
69
128
104
37
93
110
158
146
119
120
69
74
88
77
146
122
56
110
178
136
87
84
178
110
138
178
132
103
122
122
122
140
104
94
137
37
105
105
119
55
104
139
56
56
74
138
93
92
98
75
104
105
138
86
55
55
103
199
130
139
93
92
105
110
149
107
92
152
128
103
77
108
120
138
86
104
119
109
55
110
111
104
135
178
138
108
125
98
91
104
56
75
139
158
79
149
92
122
109
93
91
148
138
109
93
138
152
127
102
134
144
55
109
55
134
78
131
55
146
91
139
99
92
67
107
139
56
126
89
104
109
104
144
58
92
108
128
91
110
92
128
107
104
110
144
58
140
105
86
137
92
132
110
104
55
105
74
55
104
132
103
130
139
91
138
105
146
79
86
178
101
109
99
105
79
93
119
126
122
77
105
115
77
119
171
154
138
101
69
132
131
146
68
126
152
105
139
55
146
127
55
130
123
104
109
139
146
105
123
138
123
124
93
75
68
92
89
92
105
56
92
86
121
105
97
124
80
56
103
67
126
144
140
86
92
137
55
122
127
37
139
114
68
92
160
91
140
37
146
37
138
69
122
103
140
102
56
56
146
158
111
110
56
145
104
139
110
55
107
75
110
99
92
86
92
126
111
91
122
73
122
110
67
163
132
69
96
93
110
124
75
86
178
37
122
122
55
55
158
55
55
86
77
178
67
55
144
104
74
55
126
93
55
67
111
122
79
169
152
119
148
92
105
105
128
152
56
91
93
67
169
97
67
93
126
93
119
98
55
111
139
92
67
110
127
126
67
67
126
135
132
127
58
126
58
178
110
92
74
55
119
110
122
138
122
107
68
67
105
169
91
139
99
55
144
124
69
58
114
110
98
152
104
77
93
121
92
171
101
152
124
124
55
127
111
126
138
92
69
106
75
55
87
152
55
144
92
105
79
92
162
56
69
92
87
126
105
105
86
139
159
88
55
58
105
93
79
56
93
92
126
56
162
123
123
104
67
138
124
131
110
37
138
126
143
92
86
56
86
112
92
134
148
55
105
103
134
79
75
169
55
74
56
115
104
55
68
138
105
146
104
144
128
93
104
124
104
167
113
152
127
84
151
130
92
178
58
146
138
128
109
114
77
58
92
169
56
104
105
93
56
131
156
55
92
151
103
86
122
55
58
144
105
152
92
163
98
75
95
74
106
130
75
137
152
119
112
128
105
144
105
124
118
171
105
58
69
104
67
77
56
131
164
126
99
112
114
56
55
55
163
138
149
138
55
122
92
138
152
126
110
123
130
144
122
136
109
93
127
56
112
100
146
105
99
169
144
124
58
105
55
92
56
118
152
105
74
127
37
178
55
92
138
129
109
104
55
169
75
55
135
110
102
91
138
132
79
140
69
56
67
104
67
138
104
81
55
103
131
132
110
138
37
131
126
105
139
56
146
88
93
178
110
105
72
93
122
106
138
132
126
58
152
138
139
127
79
132
126
139
138
104
131
122
84
37
138
105
178
79
104
92
56
107
105
104
92
67
111
92
79
55
55
126
55
122
106
92
127
55
108
118
105
120
87
178
92
69
74
138
102
109
126
110
105
93
109
98
105
93
93
92
109
56
109
165
137
105
120
104
122
107
92
161
124
99
110
127
103
110
100
131
55
69
169
140
126
152
81
92
128
142
144
128
130
126
122
105
67
162
86
92
138
164
93
126
91
58
86
93
55
167
55
178
160
105
83
104
55
138
55
84
122
104
140
117
86
99
149
122
144
91
92
69
101
180
110
117
130
126
180
140
124
126
112
132
67
111
122
92
79
110
138
97
117
140
108
126
117
139
58
139
37
109
37
105
103
79
139
110
126
84
110
109
110
92
79
139
128
92
99
138
152
84
122
126
105
93
55
92
91
149
97
137
123
74
92
102
138
162
107
99
67
102
87
106
144
74
139
105
136
93
138
107
55
92
124
109
130
88
105
104
127
129
91
114
92
92
73
105
164
86
37
93
134
105
169
80
138
67
79
178
134
92
110
93
110
75
128
138
117
119
105
138
92
109
84
97
144
140
89
126
55
55
69
104
93
127
138
139
127
93
128
104
169
86
137
79
107
91
138
144
75
105
55
167
55
55
103
92
127
105
145
104
91
55
137
117
110
126
106
105
92
122
144
79
108
139
128
95
110
102
93
138
89
67
134
55
56
116
92
104
122
103
92
111
106
104
104
169
139
37
55
104
93
123
67
105
110
134
83
104
162
169
152
138
55
114
110
130
144
144
130
122
110
145
127
127
118
163
79
101
100
122
67
119
140
163
105
84
105
123
128
79
109
119
111
92
130
132
92
139
56
55
138
117
127
77
58
69
92
123
79
163
122
152
91
92
56
144
119
77
126
128
55
95
93
109
139
122
134
138
103
56
92
55
122
118
122
56
104
122
105
55
105
56
87
86
128
58
107
110
138
123
92
92
110
122
104
103
128
92
74
86
112
92
107
138
178
67
104
139
148
105
146
127
79
111
93
111
126
91
164
126
105
126
110
56
104
114
178
92
86
86
144
180
127
110
88
171
93
110
124
104
146
91
128
92
77
139
94
108
169
83
79
56
69
124
129
138
104
111
105
140
101
153
123
69
119
93
79
67
137
92
110
138
92
93
122
88
148
55
110
91
93
93
68
128
122
67
112
55
75
86
146
105
91
56
171
91
123
126
97
67
74
105
151
77
101
138
108
104
69
56
162
138
139
138
79
111
37
69
140
128
55
126
105
123
122
68
104
146
106
127
81
58
148
98
123
146
79
91
188
103
92
122
105
138
105
122
123
126
37
110
77
83
91
56
171
67
132
134
119
56
145
124
98
104
127
144
117
138
110
178
105
129
92
131
86
103
93
93
75
130
127
162
135
98
92
105
138
138
88
180
109
104
104
105
152
79
178
104
75
144
152
112
108
55
77
97
92
75
138
67
123
118
92
138
111
91
92
128
67
136
99
98
144
95
84
91
146
126
92
138
84
124
105
110
162
119
167
92
142
64
92
169
86
55
105
92
178
168
119
84
104
67
152
94
110
67
58
56
110
101
93
75
128
146
130
126
56
144
105
86
110
89
127
127
163
140
92
74
92
55
142
148
109
122
105
113
67
178
116
99
112
110
92
99
75
92
68
109
93
178
142
107
138
169
122
122
152
130
92
67
137
67
167
86
37
92
168
112
105
79
92
158
127
56
140
89
92
110
146
169
152
107
37
135
165
178
92
123
56
74
122
135
110
120
144
55
119
55
37
69
104
68
114
92
109
104
99
139
92
162
127
146
37
118
86
67
146
67
83
91
126
67
83
164
107
122
105
92
152
67
91
126
107
104
127
101
139
144
56
123
160
58
110
37
130
77
148
169
83
98
58
188
138
138
95
79
92
117
169
126
92
67
94
126
107
146
128
169
162
128
168
149
101
140
139
86
109
108
104
37
110
58
92
106
178
138
104
79
123
37
132
140
104
104
104
122
86
144
56
92
76
103
144
110
74
160
111
55
115
37
139
102
108
67
138
119
79
126
98
75
178
83
159
126
139
100
92
55
123
120
67
178
67
182
112
37
156
96
110
79
143
55
105
92
58
55
92
104
93
37
99
110
37
177
55
37
126
160
105
55
93
93
89
168
92
75
103
144
105
110
55
55
139
130
86
58
130
37
128
122
105
138
139
92
104
109
131
99
119
58
93
110
130
136
80
139
67
141
109
69
37
79
139
122
81
79
109
117
105
138
69
138
106
92
92
67
128
97
139
129
168
92
127
75
126
168
158
138
69
127
106
92
110
58
122
138
104
117
101
180
67
107
132
149
137
171
109
178
168
178
105
140
139
110
99
104
92
156
138
144
123
105
83
126
171
146
127
77
139
91
105
93
146
75
137
123
169
139
92
55
37
92
110
105
167
104
56
103
105
67
67
119
69
55
105
148
104
105
81
138
58
136
100
67
55
92
126
146
75
86
122
148
110
110
67
79
127
58
105
56
119
152
86
104
55
69
140
105
130
110
164
86
55
55
110
119
169
67
139
93
37
79
102
122
79
55
56
104
130
110
171
132
89
144
109
86
152
94
97
83
128
123
92
126
74
104
123
56
101
55
77
105
147
55
105
55
78
77
99
124
55
111
77
146
124
163
139
122
124
144
103
171
67
101
37
144
93
72
111
139
75
77
74
120
68
119
92
92
136
99
37
105
152
169
92
99
91
107
134
101
92
93
122
124
93
109
87
126
86
55
126
92
92
119
169
126
138
139
110
122
120
139
56
139
118
122
110
56
86
139
37
197
88
83
55
94
110
103
99
122
93
92
106
86
58
128
55
69
126
126
110
97
131
69
143
122
67
105
103
123
103
122
91
79
131
132
92
92
92
106
146
92
139
141
126
58
152
97
140
120
109
151
93
55
178
58
123
122
55
139
103
55
56
111
67
93
135
79
99
138
122
146
92
111
139
83
105
107
93
126
37
92
95
83
162
146
56
103
111
56
83
119
120
122
93
138
92
55
67
126
97
107
124
139
169
37
124
37
69
110
131
103
104
114
107
119
128
107
83
104
100
78
95
79
164
131
140
119
55
83
168
122
137
130
134
110
126
67
98
86
100
77
56
88
37
91
105
131
110
139
164
107
92
110
138
55
126
37
104
148
169
55
104
142
101
72
106
99
93
87
86
171
67
99
68
110
56
169
138
86
132
77
110
124
105
56
124
37
115
69
118
104
91
67
144
67
123
128
111
55
110
55
140
127
138
146
56
100
105
92
122
138
111
92
137
127
142
123
110
58
122
111
138
144
58
78
105
123
138
92
58
58
91
99
136
101
88
108
105
120
55
149
138
55
98
119
91
86
126
110
92
138
107
110
178
108
64
140
152
141
122
122
93
84
110
126
122
55
93
130
126
152
56
110
92
128
110
99
74
64
86
162
123
67
92
138
169
109
126
69
105
153
56
93
37
75
55
126
69
124
91
77
122
179
144
105
119
127
138
180
125
104
79
105
55
86
138
136
93
169
148
97
88
99
134
92
124
96
138
92
116
139
111
122
69
56
119
123
86
92
110
122
92
144
118
138
75
79
107
99
56
92
148
178
104
148
127
162
74
178
105
144
140
83
108
79
122
88
128
92
101
67
56
153
127
110
105
104
102
115
146
79
167
104
168
129
58
107
100
69
125
37
110
168
100
109
148
137
83
101
104
77
195
74
98
92
144
144
110
140
109
67
138
140
120
91
91
109
93
55
127
168
99
75
130
56
119
77
119
104
74
122
79
132
74
178
122
79
89
126
122
79
93
178
102
55
111
68
92
92
131
101
110
122
127
137
105
105
93
148
79
110
37
93
114
110
105
146
110
99
126
165
105
104
140
56
93
138
169
99
92
111
100
140
92
68
136
86
92
84
139
105
110
126
171
139
105
37
110
77
164
146
122
161
55
122
127
83
79
93
104
126
134
132
122
135
138
126
75
110
37
93
77
93
111
86
83
178
56
134
77
122
93
105
104
163
58
92
122
134
103
144
102
105
55
109
111
171
180
129
86
56
132
105
86
142
56
56
86
58
128
123
168
124
118
152
111
139
138
74
138
104
126
110
110
148
106
92
182
123
91
132
126
111
180
135
110
126
134
67
140
91
139
131
163
83
119
110
116
110
122
126
144
138
144
55
134
55
108
110
122
111
169
111
110
56
92
144
56
144
92
92
124
144
138
92
139
93
105
117
110
56
158
91
105
79
91
99
81
105
58
119
162
127
140
67
101
74
138
130
138
124
123
55
93
128
180
119
92
138
96
110
122
126
84
152
92
122
91
144
103
169
126
169
77
134
124
138
58
124
146
55
152
139
69
123
75
74
86
117
75
110
142
131
134
55
37
152
123
67
92
135
55
92
106
104
126
92
162
144
158
138
132
58
104
92
146
139
126
79
55
127
118
119
37
109
86
178
105
127
127
124
105
139
79
119
128
122
58
93
78
94
127
67
138
142
92
127
104
84
130
104
56
104
67
58
160
134
119
122
122
104
89
146
178
139
98
119
138
122
97
144
37
79
105
92
104
86
93
102
92
152
83
93
181
128
146
119
86
55
138
130
139
168
126
92
74
111
180
92
55
104
152
92
55
165
189
171
128
110
95
55
105
74
137
169
93
122
144
104
105
105
122
140
92
105
55
139
138
67
37
92
127
91
140
104
103
93
93
105
128
164
158
138
56
104
106
105
105
138
122
111
97
144
146
169
107
122
139
77
56
93
137
105
144
92
37
138
119
178
127
67
55
104
118
146
91
93
56
123
127
122
93
136
144
86
102
136
128
165
169
78
110
122
81
125
37
92
126
55
79
92
93
151
58
127
74
84
178
123
106
119
107
104
110
110
129
110
117
137
138
148
122
92
86
93
86
72
92
55
93
92
122
134
126
138
77
171
111
122
97
104
126
109
92
128
55
83
134
86
139
93
74
93
178
178
120
136
69
171
92
110
56
58
132
126
171
79
134
123
55
122
56
122
105
56
111
111
134
110
178
139
152
139
146
181
86
106
74
122
67
136
146
37
126
126
86
105
92
86
58
128
152
138
55
77
92
126
178
104
141
109
37
110
105
83
126
110
130
138
126
67
95
130
123
178
145
104
126
92
144
141
138
162
87
132
56
79
122
119
103
169
86
56
98
92
58
97
128
122
132
92
84
83
140
92
56
107
168
77
140
37
169
55
74
126
134
138
109
139
105
150
99
178
93
110
86
128
146
105
55
104
110
169
139
67
104
127
55
105
92
158
97
55
138
91
144
101
126
67
98
96
55
148
107
178
158
77
122
92
92
148
178
109
55
168
130
92
103
126
105
92
92
112
58
123
69
91
67
139
126
178
55
126
127
126
79
92
110
108
110
158
149
55
132
92
126
137
169
136
126
122
120
103
138
109
168
92
69
111
126
126
140
138
110
142
141
56
119
127
102
123
178
137
142
147
67
124
105
136
58
128
140
105
83
115
126
93
86
67
156
92
69
67
93
122
126
111
92
144
122
67
124
115
58
79
69
94
110
92
67
122
112
123
110
144
92
134
181
77
85
104
98
92
93
114
58
158
123
117
93
74
106
109
103
67
136
55
122
92
73
55
130
127
138
134
65
67
100
91
127
138
146
124
92
69
92
124
86
123
167
79
55
92
148
92
126
110
55
58
145
138
139
111
126
56
105
55
92
138
77
80
104
137
138
122
119
67
55
138
137
74
138
132
55
127
126
105
162
140
146
144
144
139
145
114
98
86
126
139
130
75
78
95
122
127
151
105
92
97
77
110
111
152
132
178
139
122
93
128
140
56
97
86
138
92
55
55
148
110
93
91
67
110
83
124
92
79
105
110
122
122
144
126
99
55
122
138
92
79
111
126
110
123
122
124
84
106
79
146
92
86
79
110
76
113
56
195
110
124
138
88
128
103
169
92
110
110
126
83
126
158
86
58
131
67
165
146
105
101
55
169
118
117
169
163
37
103
178
138
109
113
135
55
64
56
69
109
169
115
67
128
152
127
104
127
118
111
92
81
69
103
104
119
138
67
110
110
124
139
112
178
139
56
103
152
118
99
92
126
110
55
105
91
91
89
91
104
138
109
105
92
82
123
93
158
67
164
122
106
171
107
67
67
178
98
110
74
110
121
126
92
131
105
150
79
137
109
91
110
104
74
128
56
138
104
105
67
75
135
55
96
79
67
55
123
105
107
110
148
69
92
86
108
86
83
55
119
126
75
37
119
122
132
68
110
126
67
139
137
146
152
73
67
138
126
122
92
115
111
131
120
138
37
93
152
74
92
111
110
108
152
178
92
75
106
103
119
55
55
124
128
127
74
55
56
122
114
109
84
126
140
123
83
95
86
134
100
138
110
110
77
74
96
88
67
110
92
103
140
104
95
110
138
87
92
89
37
93
58
149
138
99
93
55
104
103
139
92
171
110
169
144
178
122
104
127
138
104
127
180
37
104
92
88
139
92
92
37
69
81
127
84
114
93
67
140
122
79
112
77
107
92
117
88
55
119
114
96
103
138
110
169
126
98
67
74
104
67
91
92
93
130
93
138
56
146
55
92
73
138
149
134
103
92
88
110
110
91
91
101
109
104
130
56
102
107
160
110
56
104
140
92
171
104
126
105
130
102
126
178
92
163
163
104
146
144
75
128
89
55
131
114
55
37
119
92
128
92
122
55
105
108
122
139
99
138
55
77
105
127
138
92
98
79
138
110
109
92
109
138
138
137
105
138
105
92
77
74
165
105
89
65
123
128
69
139
115
165
152
75
148
99
107
98
140
144
114
118
119
56
138
99
68
86
37
128
105
102
160
92
127
104
126
146
112
178
109
92
55
119
138
89
104
178
126
131
77
138
107
110
144
105
145
169
125
69
92
112
146
134
105
55
85
93
128
158
138
103
87
109
79
111
91
138
104
122
55
144
164
122
110
109
178
161
55
100
142
111
160
123
180
37
163
126
139
56
37
126
126
58
122
108
79
145
37
178
146
91
56
55
110
145
92
140
138
126
83
126
93
55
107
55
75
168
117
95
144
37
119
111
68
68
109
107
110
67
122
128
128
104
138
114
69
58
123
163
105
55
86
139
102
110
146
111
152
58
56
83
55
180
126
79
152
128
93
138
127
149
154
109
110
83
134
92
37
110
67
79
122
178
111
113
105
92
101
122
122
105
171
102
123
69
91
139
93
37
160
178
56
138
97
37
135
92
88
127
169
139
171
37
55
119
104
145
120
92
79
122
114
67
55
107
163
67
127
138
99
67
77
55
55
37
104
169
75
148
108
103
111
126
169
67
104
55
86
92
128
138
129
104
56
100
58
126
122
92
119
92
139
136
77
110
124
100
114
55
75
55
130
112
55
99
120
74
100
83
139
55
56
67
96
72
104
79
128
55
56
127
139
122
58
178
154
131
118
110
151
91
111
55
37
81
122
150
55
103
67
75
107
75
58
122
55
110
89
37
55
134
122
109
107
112
93
127
169
101
79
67
86
56
144
103
126
122
74
92
126
92
124
122
178
86
92
122
122
169
92
117
138
122
99
92
149
135
37
110
138
67
91
171
167
89
144
138
127
152
56
56
69
130
56
137
93
92
140
171
138
144
56
106
91
178
140
169
67
139
110
77
86
74
178
97
111
124
127
92
107
111
131
55
110
144
106
126
144
178
98
130
138
124
131
67
132
58
146
180
144
122
86
37
67
138
91
122
158
148
169
140
127
122
67
84
178
76
136
55
55
99
97
92
124
122
136
114
92
99
110
104
91
74
110
84
58
37
56
134
67
99
110
123
122
138
67
139
77
146
126
178
103
122
83
95
84
111
37
92
118
55
117
103
110
89
138
73
122
122
92
69
56
55
126
112
92
103
109
126
97
92
138
102
138
72
119
134
138
144
122
92
93
105
126
118
130
140
171
127
86
37
94
69
104
74
168
126
67
148
84
144
115
139
55
99
92
86
55
169
122
171
152
180
58
123
127
92
171
140
86
56
108
92
130
67
146
178
58
158
89
67
152
91
104
79
152
144
122
67
138
106
93
119
123
146
138
112
121
76
119
92
112
92
69
110
109
158
105
144
104
110
109
93
127
126
152
56
86
86
111
84
55
103
169
136
178
180
68
129
37
171
105
92
126
132
67
55
128
132
167
91
91
150
144
104
104
92
130
56
56
102
91
37
100
149
103
58
77
152
110
103
80
104
144
117
122
127
105
158
178
122
110
162
109
106
126
120
92
68
120
124
67
111
178
74
105
69
146
55
110
110
144
91
108
146
178
114
77
79
131
109
127
67
144
86
105
74
126
127
37
105
134
79
139
55
122
105
37
132
111
56
139
58
128
146
71
104
144
122
126
92
92
77
144
128
103
124
72
74
168
86
146
146
56
55
130
93
92
134
92
98
144
93
144
122
143
164
122
104
123
95
56
144
99
134
122
146
120
149
75
110
86
126
152
55
167
92
99
99
104
158
119
122
122
55
105
55
37
171
178
110
144
144
112
122
106
119
122
95
126
123
86
122
121
138
86
105
55
91
126
93
107
103
74
92
105
139
178
138
88
118
122
74
102
37
99
67
110
111
119
103
106
105
103
117
122
93
140
67
107
77
91
91
163
56
110
95
93
103
112
110
86
144
55
111
89
55
68
138
138
152
93
139
74
138
104
67
168
93
139
112
118
168
122
135
55
118
140
144
138
67
169
91
123
130
55
128
79
152
122
139
146
105
99
105
139
67
119
37
105
55
68
74
67
97
110
144
79
103
92
104
139
69
89
124
132
37
123
146
132
105
130
131
146
134
104
105
152
134
55
146
146
130
152
122
93
139
126
126
130
134
163
37
126
83
122
105
109
144
128
92
137
189
96
119
55
37
57
92
86
139
92
126
102
37
109
138
86
55
67
37
101
110
55
126
123
102
55
92
134
56
123
110
55
117
122
104
110
95
135
55
119
129
144
92
110
89
56
110
111
92
138
58
67
55
105
92
126
99
138
141
55
67
126
56
93
126
110
55
56
115
136
160
152
99
56
108
101
180
56
58
118
105
169
171
92
128
134
101
142
103
122
98
122
37
126
56
171
58
56
148
138
146
127
89
110
144
126
122
93
110
127
169
101
138
105
148
123
92
128
111
168
102
110
99
100
122
148
138
181
75
56
86
144
56
118
67
56
110
92
55
109
79
92
55
138
152
131
105
79
92
103
110
132
77
126
86
56
122
122
158
138
138
56
68
104
111
104
86
126
111
122
146
92
171
93
86
68
146
138
80
119
37
79
122
138
119
119
178
95
152
119
56
144
93
74
105
125
120
103
122
105
79
58
92
108
103
92
152
140
67
105
126
109
136
126
127
130
89
138
86
128
103
126
120
122
104
92
178
119
122
126
100
58
158
110
122
111
129
134
67
110
131
111
98
139
105
123
92
79
122
139
86
138
126
93
56
123
178
126
119
140
58
86
105
37
171
119
135
138
105
55
122
152
126
105
138
69
105
92
136
92
110
126
107
127
58
37
128
67
98
83
105
126
93
77
117
169
92
102
55
83
130
138
37
89
104
178
152
37
106
77
104
115
93
92
55
178
127
75
105
92
119
122
144
109
138
107
112
160
105
178
97
92
101
130
146
131
145
84
136
93
68
126
126
122
92
103
79
105
79
140
37
123
93
104
167
93
55
152
139
110
122
91
80
56
67
123
178
112
91
144
37
110
123
144
152
37
79
77
119
110
140
111
145
104
92
122
144
83
122
127
37
120
122
131
126
98
123
152
139
110
110
137
130
119
67
67
86
67
110
105
92
156
152
79
160
55
56
93
83
128
126
126
100
69
37
124
110
55
131
122
109
75
104
77
165
138
109
58
92
104
79
138
56
130
110
93
89
91
128
104
105
109
132
152
144
122
58
122
55
95
92
158
86
112
99
134
126
140
144
171
103
79
138
111
122
72
69
55
146
122
83
122
178
104
56
151
111
138
92
97
178
117
95
117
195
93
83
92
140
122
79
169
146
111
92
84
92
126
58
127
140
137
55
67
124
147
139
122
127
103
77
123
86
105
137
149
178
169
84
83
127
123
164
136
77
79
105
69
152
110
91
93
92
99
79
67
79
110
126
58
104
118
79
126
69
139
86
138
130
110
92
178
163
126
146
110
115
178
158
111
98
93
126
122
69
105
127
132
83
99
92
144
92
104
55
122
167
97
104
138
168
56
112
69
67
158
113
122
110
144
92
86
98
37
111
146
164
163
127
152
119
132
93
91
122
123
55
110
86
37
122
81
92
134
127
105
122
149
93
178
75
87
103
127
92
37
126
122
123
110
123
171
126
127
86
122
92
123
120
83
93
99
131
55
97
169
146
146
55
55
103
126
140
58
99
110
138
110
122
99
92
104
92
109
127
92
152
97
101
77
58
134
127
37
138
98
91
92
91
92
91
79
146
56
93
97
109
93
105
122
134
104
122
123
149
138
101
107
58
67
110
139
121
69
122
119
115
112
138
93
56
137
74
67
55
92
105
112
69
89
55
138
140
178
138
126
114
93
98
67
122
158
79
146
92
55
67
55
111
104
93
104
134
127
122
122
128
55
92
98
55
138
68
91
132
79
79
79
109
107
138
55
92
180
127
139
73
86
55
126
112
91
68
69
92
104
110
105
76
152
122
67
139
144
113
37
55
121
93
83
119
37
92
113
91
101
139
105
139
83
146
199
126
86
180
144
56
105
92
67
56
80
160
120
58
103
138
146
119
123
110
105
104
128
146
58
124
109
83
104
97
92
122
138
126
126
75
114
56
122
136
56
111
93
92
127
123
37
93
130
128
56
106
127
138
146
107
111
110
77
56
104
139
58
124
79
92
119
69
144
110
55
138
37
86
106
130
126
92
114
86
104
148
138
111
163
146
103
152
56
67
92
105
93
123
69
92
113
91
55
139
180
104
79
79
114
92
147
110
110
79
123
69
56
107
144
122
101
128
145
126
179
131
118
118
127
122
105
92
163
126
138
93
107
105
83
139
128
69
138
122
99
171
104
93
138
110
67
122
127
162
115
105
127
126
37
139
37
179
122
67
67
92
58
92
84
99
68
103
146
138
136
92
92
123
93
92
106
98
118
110
58
126
139
127
139
158
158
128
74
158
123
168
91
140
131
140
168
107
105
110
55
56
169
136
134
110
105
152
74
136
93
55
138
67
83
110
55
134
92
138
119
69
119
55
37
119
92
178
105
69
104
92
152
92
92
67
93
111
178
105
127
106
93
91
118
163
107
93
110
56
132
105
97
144
109
67
148
127
37
55
146
91
128
146
135
138
102
139
122
55
97
107
177
56
105
67
77
123
109
123
130
55
145
120
123
69
111
169
137
128
152
104
122
37
55
92
131
99
109
178
128
139
91
110
134
107
111
138
67
165
134
146
162
101
126
139
120
55
79
105
126
103
92
56
81
112
110
122
92
104
92
126
105
129
99
114
138
140
105
139
121
129
75
145
74
124
74
98
77
144
105
105
110
168
92
110
58
127
95
123
144
126
55
105
138
139
92
132
95
55
107
138
77
122
123
122
58
83
55
126
126
84
92
137
138
56
105
69
111
93
55
37
99
178
84
134
104
83
55
126
92
108
74
91
152
128
123
121
104
86
126
92
77
124
104
128
93
144
128
138
128
74
86
77
55
80
92
126
92
89
134
79
122
37
152
69
37
126
75
91
126
98
158
119
144
92
156
113
55
78
92
139
152
99
110
144
132
75
69
142
105
122
88
92
110
119
127
111
55
111
37
127
88
134
58
114
108
119
55
139
92
58
152
110
126
111
92
114
158
99
93
92
83
122
92
138
55
93
67
180
75
77
104
101
123
75
92
91
178
117
104
99
104
95
89
122
77
55
110
67
146
128
103
120
69
126
112
37
169
138
126
138
105
138
131
132
128
126
98
130
105
128
91
128
130
79
92
92
105
138
122
132
109
142
98
128
188
103
99
131
144
75
56
178
138
93
55
99
37
126
144
104
94
110
55
126
147
114
93
104
81
128
86
67
122
140
99
101
126
178
149
145
106
144
144
83
109
55
110
122
127
110
126
69
123
122
178
127
114
99
91
126
74
144
148
158
55
104
120
77
110
127
55
92
134
122
126
144
144
105
122
118
152
110
110
124
135
124
92
113
162
86
121
92
55
110
110
79
74
93
110
134
55
144
124
37
144
110
96
67
56
74
56
67
101
55
127
117
67
75
93
117
92
169
77
110
148
86
100
137
117
99
137
55
107
105
107
55
111
92
119
138
127
112
104
179
105
56
139
100
93
79
78
165
58
58
100
67
139
83
126
56
122
128
88
92
139
124
122
99
104
99
67
67
110
126
127
105
136
92
120
114
139
56
122
109
83
55
58
115
67
138
55
92
103
171
168
148
131
92
68
138
138
199
67
67
84
110
104
55
91
68
138
111
91
93
104
147
122
93
92
126
56
126
138
112
58
89
122
140
124
105
109
147
180
56
111
55
114
78
144
126
55
105
128
103
140
110
126
55
127
108
158
152
86
92
152
139
89
79
74
100
122
137
107
138
92
84
118
111
144
126
126
110
98
92
74
37
110
132
64
126
58
121
105
98
122
101
105
138
78
56
79
139
104
139
104
109
106
139
77
74
93
86
105
67
152
56
109
37
109
138
67
56
123
88
138
92
91
111
56
110
138
98
122
107
68
152
135
37
104
55
55
122
56
105
146
126
105
67
37
128
142
55
178
110
37
99
37
152
108
106
128
109
118
58
178
107
92
122
109
67
128
79
83
55
111
83
92
126
110
120
152
55
110
79
111
56
86
125
55
104
138
120
139
122
58
71
58
130
109
140
88
169
92
126
139
146
79
92
167
56
55
56
158
137
58
93
139
105
55
146
122
134
55
178
119
106
79
67
119
92
109
56
55
67
178
131
178
123
93
110
124
127
139
69
122
93
111
92
37
110
93
148
64
130
105
128
138
110
144
55
95
88
134
79
109
92
98
146
171
103
122
104
128
97
58
136
92
129
138
136
105
122
105
67
77
126
126
199
114
69
119
122
136
99
110
86
91
122
37
99
110
111
158
55
92
93
144
58
121
55
91
138
110
85
105
92
37
77
55
114
75
69
152
104
178
111
111
152
126
56
158
105
122
130
126
55
92
112
104
105
109
144
127
152
84
94
55
80
61
152
37
93
122
110
86
127
123
124
93
138
102
37
110
148
140
101
127
107
86
117
126
109
104
171
56
92
199
107
37
74
126
156
58
92
58
122
122
92
138
126
79
81
138
178
131
169
140
123
122
92
69
77
92
110
65
105
121
127
110
92
67
126
69
104
37
122
121
139
110
110
101
56
124
128
122
134
180
127
124
55
104
138
104
77
167
110
110
111
144
122
135
178
105
105
86
124
55
55
74
109
146
92
123
118
152
112
91
68
152
79
169
122
109
107
119
75
55
99
101
178
122
105
178
104
127
124
79
110
110
93
104
55
128
37
167
142
55
163
169
91
114
110
169
55
74
98
136
104
109
105
91
58
128
92
177
56
110
140
138
92
126
178
105
55
120
91
178
58
105
107
93
69
112
100
110
56
91
74
171
114
86
67
126
109
37
92
92
105
55
92
110
152
75
92
104
128
152
140
123
110
132
158
147
169
86
55
178
93
93
148
130
106
92
152
93
111
37
74
123
126
58
148
79
79
138
79
109
91
146
178
119
139
92
178
178
139
122
110
67
110
127
81
77
56
169
37
106
92
138
92
104
102
55
110
103
92
86
93
134
68
146
71
148
131
76
169
56
135
138
109
56
100
56
112
110
120
132
107
67
75
138
119
126
67
110
98
92
92
127
79
101
138
114
152
97
110
58
138
124
93
136
69
119
110
105
122
92
103
144
126
93
181
104
98
138
58
97
92
168
92
104
109
86
92
118
92
122
144
95
177
99
79
56
164
107
110
144
68
146
97
93
79
67
56
97
122
55
110
55
128
110
93
105
67
114
92
91
104
107
171
99
128
128
122
79
180
92
73
114
110
79
126
106
55
134
128
91
74
81
122
110
58
55
124
67
118
56
74
80
91
119
158
140
146
132
178
127
111
110
56
122
137
147
146
76
110
127
55
130
110
93
97
55
37
92
126
122
126
83
103
138
112
92
99
169
103
122
93
93
58
126
69
168
68
139
113
77
104
67
144
69
169
55
55
110
117
122
126
74
55
137
92
128
84
69
146
107
158
171
158
92
122
55
67
122
104
124
69
99
104
178
110
80
130
105
139
152
169
127
58
132
56
139
58
86
68
99
127
122
110
126
105
144
105
105
122
92
109
74
55
130
139
109
138
92
113
92
130
152
55
101
97
37
109
92
169
105
134
107
55
58
58
148
72
163
56
81
88
105
74
77
93
95
69
107
111
67
171
152
109
146
117
83
103
92
75
58
124
92
92
91
122
93
56
120
93
56
138
138
73
111
110
121
178
105
118
124
123
139
122
138
152
122
89
69
178
83
115
152
55
119
105
163
92
79
109
122
126
110
105
68
67
111
168
126
92
160
134
83
126
126
111
109
55
88
81
92
113
93
107
110
122
110
146
138
37
112
145
104
55
124
138
140
122
77
152
79
55
73
126
111
111
67
79
110
119
122
171
56
114
126
111
119
110
119
110
114
56
55
122
86
110
105
74
94
69
122
138
103
122
77
138
129
100
86
126
77
92
117
55
93
74
120
103
79
140
146
146
74
91
118
126
126
104
138
146
92
100
146
92
99
140
126
92
80
75
136
79
109
127
93
110
122
103
86
105
110
111
103
110
105
68
77
130
178
79
138
138
131
110
37
124
124
99
138
110
106
120
98
150
92
89
169
91
178
139
199
122
92
148
177
56
146
55
180
83
56
37
98
92
171
105
164
120
136
100
92
126
55
160
163
37
69
124
128
109
74
93
86
55
97
92
69
100
140
105
122
146
178
79
137
122
56
119
76
55
92
122
55
55
93
124
114
158
92
55
169
122
122
152
130
152
77
103
86
55
138
99
112
102
91
180
91
99
144
104
122
147
102
105
55
104
92
55
137
139
138
109
126
67
92
130
132
111
110
99
113
140
152
131
92
86
67
67
144
110
109
79
110
104
119
127
165
92
58
105
110
178
69
119
121
99
104
37
114
123
110
152
55
136
67
75
180
104
69
92
111
83
103
134
107
152
136
139
132
112
130
126
122
181
122
169
104
105
92
67
55
55
69
138
139
120
58
110
119
122
104
102
74
75
105
37
147
92
110
98
67
182
91
115
189
56
98
105
132
92
110
169
128
89
79
144
86
139
95
119
37
132
91
138
92
152
80
134
152
139
93
92
67
152
67
123
110
127
55
123
182
138
76
112
124
120
55
75
126
127
119
126
148
107
55
79
182
126
98
147
83
148
84
110
146
93
92
102
122
110
144
86
140
83
93
105
105
138
139
103
169
105
119
171
146
169
110
75
127
134
92
110
144
140
58
105
74
164
178
55
134
104
110
171
58
137
55
104
67
105
95
128
91
146
130
67
99
56
158
77
131
132
138
152
98
80
146
122
122
93
58
112
55
37
86
67
119
97
100
105
122
37
77
122
85
69
138
93
132
91
110
137
92
109
74
147
139
64
104
67
134
116
105
104
128
84
109
138
92
117
110
69
104
169
122
169
126
105
105
105
92
92
138
55
121
141
77
108
137
93
37
167
69
126
111
55
178
111
100
92
91
138
120
93
56
55
162
83
104
134
108
92
146
151
89
105
56
114
138
55
138
56
148
126
86
146
56
109
144
77
106
83
169
178
127
97
127
139
127
110
138
134
103
124
122
107
122
86
110
109
146
56
110
92
55
58
55
105
146
122
97
56
105
75
67
138
152
99
106
140
94
110
96
112
134
37
118
79
55
99
105
110
124
58
114
55
86
93
164
105
93
123
123
77
106
134
122
55
111
139
78
111
127
92
58
110
141
67
141
67
119
91
56
107
56
138
108
78
139
169
98
79
123
126
126
122
144
68
58
158
123
92
126
67
37
122
180
126
93
168
37
178
99
127
98
79
83
92
124
119
128
110
146
139
103
124
84
152
139
58
104
67
134
92
131
124
93
55
138
126
37
92
105
55
93
117
119
131
165
122
136
122
126
92
104
74
100
105
103
148
92
138
126
111
103
105
138
74
141
126
134
55
136
119
37
92
126
55
144
139
122
55
89
140
92
110
55
104
37
110
120
88
91
100
131
92
77
74
111
93
119
74
97
138
138
146
126
93
180
179
93
104
76
111
126
138
125
103
92
58
93
105
110
55
119
56
120
146
105
123
74
58
37
110
93
128
55
144
126
37
77
104
110
78
67
110
110
123
127
92
55
163
110
119
92
119
99
110
37
37
106
83
178
117
86
92
67
180
91
138
123
56
122
68
98
127
92
178
69
122
83
131
56
69
138
74
75
104
75
56
138
171
131
91
99
127
67
158
178
118
127
107
56
146
163
171
128
110
118
105
37
55
132
110
104
123
138
104
106
37
55
109
56
67
178
105
79
92
122
124
123
132
74
79
37
55
138
93
97
92
56
126
169
111
126
122
92
55
56
92
93
139
75
77
99
55
104
91
113
55
127
114
109
109
92
128
92
102
100
144
37
165
92
126
79
128
105
55
122
111
55
93
69
92
56
119
140
110
124
105
92
146
111
106
135
78
122
92
56
104
130
99
169
168
93
109
67
114
91
67
126
127
68
110
56
144
67
110
105
164
168
37
55
138
105
92
138
134
110
146
146
101
140
69
110
122
37
55
147
105
123
128
130
99
124
158
64
55
122
37
92
128
128
86
100
126
55
140
119
89
92
178
55
89
138
138
123
146
114
178
119
110
77
79
55
169
163
137
92
107
138
58
55
146
55
55
140
92
139
112
104
83
140
122
58
84
56
130
122
107
68
109
125
106
163
92
132
108
58
84
128
146
99
162
92
118
126
188
126
111
89
93
178
77
165
55
83
92
128
88
122
146
67
92
110
77
110
93
91
55
67
122
92
110
55
118
58
126
102
67
134
134
178
178
110
122
128
112
56
120
167
58
92
104
112
92
86
122
126
100
56
110
123
91
160
84
86
79
131
136
68
99
152
139
56
58
58
180
114
122
110
55
105
111
93
152
136
105
67
68
119
104
73
58
99
140
92
92
128
139
111
144
89
111
139
56
74
55
55
110
55
92
180
67
106
171
99
106
111
127
86
122
104
110
132
127
92
117
122
180
58
79
67
104
92
126
122
112
96
77
127
112
110
146
104
86
56
121
138
126
122
93
83
93
131
92
67
92
146
180
108
148
77
96
145
58
37
126
126
89
162
123
110
86
93
111
83
119
165
138
103
144
139
122
93
105
87
110
138
134
126
105
122
122
55
126
130
128
138
143
142
134
178
125
104
134
103
92
107
91
56
122
92
134
58
112
105
37
103
178
146
122
81
56
104
152
104
128
92
199
97
136
126
107
122
144
112
110
69
80
103
37
126
128
89
80
130
164
80
122
95
56
77
108
68
136
67
126
178
128
93
110
178
122
149
114
104
110
84
126
126
56
122
56
122
157
126
92
111
128
67
128
122
79
99
139
56
74
108
56
104
119
78
105
131
37
138
119
140
134
110
68
162
130
146
122
123
37
139
110
98
55
144
135
55
105
110
89
124
105
93
119
56
109
164
55
55
127
93
110
177
152
114
92
112
92
109
75
152
126
55
114
83
127
105
58
103
137
124
110
107
106
122
112
138
146
92
86
105
86
128
91
108
134
132
138
124
55
122
146
104
168
104
160
105
138
92
92
92
67
108
56
138
138
124
110
87
55
128
124
104
110
110
131
72
55
117
100
100
122
56
56
79
142
122
58
98
100
93
145
139
163
109
91
146
109
92
138
130
122
127
79
138
92
138
114
105
79
93
107
105
146
110
144
105
95
178
144
137
67
55
83
86
75
123
119
69
127
109
110
144
56
58
110
131
124
124
118
117
37
102
128
144
126
123
144
105
69
98
126
126
138
97
55
67
152
77
104
81
178
112
158
55
139
86
67
98
92
131
94
158
145
67
95
122
168
103
56
67
56
139
138
114
69
128
148
182
178
145
94
122
122
110
163
105
92
127
56
58
104
103
92
139
138
178
75
55
93
138
37
75
128
119
79
109
110
139
68
124
127
104
136
55
124
77
138
138
178
111
110
37
156
123
126
93
55
171
169
132
98
110
140
58
121
55
126
119
122
145
122
107
126
126
37
74
56
56
132
146
77
178
93
56
105
91
141
55
122
104
107
92
152
134
106
103
92
105
83
77
146
126
55
138
92
139
104
119
79
140
99
101
124
91
92
144
123
152
58
58
180
118
110
110
56
86
130
126
139
79
107
109
135
144
104
105
171
122
144
109
79
115
119
125
151
122
127
55
91
110
55
75
67
130
69
117
134
168
67
104
111
92
83
94
92
55
56
100
92
132
118
122
93
93
127
145
69
131
168
75
88
169
73
129
119
132
55
74
92
178
67
110
55
104
110
107
144
77
107
67
126
94
138
122
122
107
101
126
121
144
107
104
123
122
56
97
106
104
104
56
92
152
67
124
92
67
55
108
110
110
131
77
123
138
93
93
58
58
55
86
144
105
148
91
121
79
128
139
77
139
92
115
92
146
104
140
92
75
158
92
106
55
180
95
168
104
84
135
67
55
169
93
138
126
126
92
109
110
88
199
119
124
111
105
75
91
92
110
92
152
55
67
78
105
110
123
56
134
101
105
86
109
110
37
127
148
146
104
178
96
98
122
138
119
119
138
103
37
140
79
92
110
105
122
67
37
168
55
145
105
152
105
75
92
119
74
91
152
138
105
152
128
92
58
140
79
104
112
91
92
138
103
122
37
132
122
120
99
92
128
127
178
103
100
86
127
55
37
77
127
119
122
122
83
146
55
55
77
178
77
67
124
110
107
123
69
92
55
58
105
55
105
58
67
152
104
171
55
104
91
103
109
58
144
127
79
92
165
69
138
92
92
67
127
106
145
145
69
69
56
37
178
98
56
92
126
131
92
148
126
113
74
123
168
67
152
92
169
91
159
171
127
93
92
128
93
136
110
103
104
142
110
83
55
122
130
84
122
104
169
86
119
126
144
110
67
146
137
105
105
178
67
132
163
92
77
55
93
68
178
68
123
178
94
92
106
128
122
178
55
67
134
67
128
56
86
92
55
138
108
93
86
81
103
107
92
55
139
126
144
56
105
126
107
91
126
92
132
131
92
105
138
68
105
108
139
134
137
67
142
125
89
122
79
58
110
130
93
114
37
199
171
158
92
58
111
149
111
105
58
104
178
106
138
110
122
92
119
145
56
97
128
136
111
146
132
146
103
98
139
138
104
119
109
79
105
164
118
92
104
146
122
158
152
112
92
37
93
111
111
92
56
68
152
77
114
102
160
111
110
93
109
134
55
138
75
37
92
126
148
131
69
110
105
152
104
83
104
146
122
69
86
110
138
77
67
136
92
178
122
106
144
92
112
138
55
126
58
99
93
91
126
138
137
139
93
67
104
104
92
109
171
114
126
124
92
67
91
67
101
104
122
127
117
126
110
139
126
37
100
138
108
110
77
128
69
102
86
130
92
171
93
56
123
158
139
128
139
102
124
139
37
127
79
77
55
139
105
92
109
107
105
110
114
119
102
122
83
37
92
134
103
111
110
79
122
121
152
110
119
93
83
146
74
58
104
132
110
177
138
148
86
104
178
105
67
126
162
127
104
77
112
120
136
77
178
122
67
122
171
139
124
96
94
92
178
168
58
69
93
68
163
126
127
69
37
128
168
107
111
104
138
75
122
124
124
109
86
75
134
127
103
79
110
94
74
126
122
123
92
92
126
122
94
37
55
123
73
148
178
127
105
92
138
55
68
89
140
139
83
117
67
110
92
55
107
169
138
37
169
122
99
122
138
152
123
67
92
163
122
68
152
124
55
55
105
138
108
122
139
110
91
86
56
77
122
87
55
86
74
105
158
159
103
146
69
99
79
37
86
138
144
168
126
104
105
126
77
105
89
144
99
122
56
130
162
152
92
169
123
98
67
92
56
107
68
107
134
122
119
55
83
138
83
123
167
74
55
164
127
122
130
126
139
122
69
86
138
126
75
135
110
124
104
120
79
135
105
178
58
75
67
67
126
144
139
84
178
136
162
75
141
77
56
110
105
146
104
68
126
56
69
132
167
92
55
111
122
122
122
171
92
107
112
101
123
69
67
84
163
93
144
64
106
106
55
148
140
110
37
122
99
169
162
144
92
140
144
126
109
110
56
104
138
92
86
37
123
105
86
163
127
110
104
110
75
162
152
145
148
114
67
109
86
178
152
92
86
55
37
37
55
77
58
129
104
107
126
169
103
37
142
144
146
105
106
56
131
107
127
92
123
69
152
140
148
140
168
96
92
105
131
126
126
127
92
56
123
86
138
99
92
55
126
103
55
140
67
92
55
134
67
140
138
103
105
110
100
99
75
120
93
79
138
55
86
104
92
55
105
146
152
67
110
110
68
75
110
77
126
114
119
55
119
136
105
168
110
92
119
118
119
144
119
56
92
163
105
115
110
86
169
105
69
178
56
162
55
122
109
105
104
93
138
110
37
97
152
111
92
123
178
126
55
126
91
131
69
110
126
127
67
111
140
110
98
79
93
93
105
88
105
69
105
126
144
105
95
55
144
67
146
124
138
103
178
122
103
58
169
120
144
122
146
103
140
122
75
110
109
95
122
92
109
92
104
139
55
126
110
126
123
99
92
146
128
109
56
123
127
156
93
126
105
104
105
91
86
139
103
74
128
77
140
67
99
69
58
75
127
110
127
111
128
145
55
93
160
56
67
91
83
149
100
117
109
138
56
110
126
140
163
126
111
83
142
103
109
122
74
140
111
67
119
67
67
92
101
97
99
64
171
138
98
77
138
56
152
79
105
122
168
139
122
110
55
131
126
178
105
144
109
140
127
122
55
110
110
74
55
122
55
105
100
37
83
58
127
83
67
138
105
93
104
132
126
92
137
131
74
67
102
178
37
92
92
77
119
127
127
56
109
110
139
140
158
122
140
68
158
188
92
79
138
67
192
68
67
118
56
146
92
122
140
99
144
55
112
105
126
139
91
105
92
139
139
67
171
123
72
37
127
58
123
145
56
55
138
67
139
148
137
83
110
56
110
137
152
168
69
152
105
160
169
165
122
79
58
67
104
93
140
122
110
89
93
98
98
127
56
77
158
56
140
152
94
92
122
92
105
178
108
92
105
152
75
92
92
92
99
103
55
77
120
127
138
119
109
110
127
83
145
56
126
111
139
91
105
122
107
139
112
105
100
37
134
169
126
58
58
79
95
127
144
56
69
128
138
67
69
100
97
79
123
79
128
76
139
122
128
112
117
55
105
101
104
123
138
127
67
112
127
105
92
99
55
91
152
112
122
138
109
144
178
86
115
144
144
139
118
123
92
124
126
92
126
164
145
110
138
37
122
110
102
67
97
56
106
111
122
126
92
79
122
55
123
93
164
146
105
127
122
92
152
169
111
122
113
69
92
138
127
165
134
136
79
110
110
171
122
97
64
103
111
110
104
163
119
152
134
91
105
140
68
124
86
104
177
92
139
128
93
140
123
79
110
126
74
109
69
134
67
89
122
104
165
79
74
74
56
104
92
127
122
132
83
119
163
126
91
169
105
56
111
74
55
134
180
126
146
92
55
126
67
37
138
110
86
68
105
55
55
148
158
55
104
105
37
83
118
92
92
123
152
92
104
163
56
126
125
67
138
55
111
74
88
123
124
139
169
139
58
122
80
105
138
56
134
140
67
168
93
91
67
178
122
67
92
69
131
105
110
146
91
124
121
127
123
122
37
93
105
140
127
99
56
104
110
178
58
110
122
126
178
122
126
37
74
171
81
86
92
144
98
94
79
122
139
112
178
127
142
182
119
92
92
126
110
126
136
67
139
126
110
122
37
122
105
77
86
92
56
86
110
169
134
122
139
146
128
55
67
138
92
122
86
99
110
99
146
37
58
37
110
137
58
67
37
124
139
123
55
159
145
56
169
138
104
79
138
55
73
188
55
134
67
111
69
110
146
86
117
146
122
136
69
111
131
79
171
111
128
122
144
110
92
56
111
55
83
110
105
75
92
77
122
120
58
107
101
122
110
83
139
98
58
105
80
55
152
55
93
122
152
95
168
67
122
56
105
134
108
158
83
93
111
56
55
58
83
92
105
83
112
93
127
99
112
139
127
91
69
92
55
77
139
58
126
92
92
131
140
144
110
171
110
168
104
110
148
98
139
152
114
37
126
122
92
91
77
86
138
182
128
138
110
92
122
93
144
148
138
104
67
119
102
37
109
104
99
122
67
37
55
122
67
126
148
102
89
109
124
136
126
92
123
122
84
110
87
110
84
55
67
139
58
114
117
119
91
93
91
126
178
146
104
144
80
179
89
105
122
124
92
122
67
37
92
117
101
123
78
56
178
67
145
111
103
85
92
94
69
92
105
146
120
180
105
122
127
67
110
144
56
67
91
178
119
56
122
102
81
99
79
178
84
119
96
83
127
124
68
103
104
58
56
110
127
122
105
152
107
138
178
58
122
93
75
111
130
67
55
92
103
110
77
119
104
69
126
135
37
99
74
77
126
91
56
92
55
136
128
87
122
126
67
152
152
138
109
110
109
99
122
114
56
37
67
111
105
55
105
110
118
126
37
56
105
146
105
124
127
92
97
146
123
79
56
105
56
99
67
105
139
104
127
114
110
67
67
37
146
123
122
73
68
98
124
110
169
129
100
126
118
158
122
121
67
180
135
69
146
56
74
93
126
160
110
74
92
120
89
105
119
67
119
84
127
92
67
122
120
138
55
93
114
122
131
75
112
138
109
110
144
110
75
136
80
115
55
55
148
139
130
91
110
122
127
77
110
102
68
105
105
93
79
112
95
123
55
122
128
105
102
129
105
156
178
124
199
178
124
78
128
86
101
163
146
120
138
55
89
56
127
138
126
115
158
127
56
110
84
110
122
67
126
126
152
144
104
107
138
92
105
131
122
83
92
127
146
122
111
153
109
178
55
139
126
99
74
146
67
126
138
122
152
180
178
131
55
77
139
134
103
37
122
69
105
111
105
37
146
106
56
58
91
37
55
56
148
154
144
126
132
92
102
114
69
115
122
92
168
108
122
67
75
92
119
92
91
126
119
120
92
117
106
126
139
86
122
140
83
67
68
139
105
92
77
158
158
138
128
117
56
105
109
110
111
110
138
56
56
110
37
109
55
104
122
117
93
139
124
55
110
55
55
84
107
138
93
69
117
111
138
110
105
126
37
110
55
92
75
158
86
130
93
103
92
177
135
92
122
139
114
104
74
141
55
139
169
55
169
93
99
105
75
81
126
126
92
151
169
144
91
139
55
110
67
127
55
92
105
55
92
92
126
56
145
83
122
105
109
37
55
55
88
83
93
89
83
105
37
84
74
83
135
92
167
91
105
101
91
118
92
128
122
122
129
103
119
120
37
86
139
69
37
148
37
67
122
91
169
127
92
67
93
64
69
120
69
105
122
104
107
154
103
110
92
171
111
138
110
111
127
140
160
144
105
122
137
104
110
178
104
93
127
138
113
146
99
123
103
101
178
75
55
122
55
92
138
138
99
68
128
116
128
92
109
92
56
109
93
134
182
55
67
67
111
139
199
146
55
104
110
171
74
124
55
69
140
138
140
122
92
55
122
152
111
122
140
111
122
126
107
106
91
37
56
74
55
122
134
146
117
92
138
92
168
67
92
93
37
137
93
69
104
110
138
178
168
92
74
134
105
178
55
108
111
103
135
69
137
105
111
127
97
139
105
84
67
126
126
106
56
124
95
152
188
110
105
119
55
92
56
178
126
124
111
123
128
139
37
139
100
92
160
146
92
138
110
104
110
105
146
126
92
138
139
67
86
88
104
107
126
95
107
140
163
83
137
122
122
56
67
99
138
104
107
104
98
117
162
117
122
105
138
122
105
105
142
118
99
87
95
165
138
126
128
105
138
136
131
127
112
92
126
100
111
138
168
122
171
56
92
83
138
105
130
152
149
105
67
92
105
67
139
137
81
110
144
119
104
126
37
37
86
86
138
109
110
79
58
122
69
112
105
87
118
124
111
55
92
128
55
92
68
135
56
146
138
171
122
126
72
105
178
111
77
58
92
37
56
122
97
122
111
103
115
119
79
144
123
127
138
37
152
137
104
95
112
122
148
104
92
92
105
139
144
67
118
105
171
96
140
139
178
103
67
97
105
146
110
126
95
79
119
55
111
55
99
79
56
105
92
76
86
138
92
95
92
123
87
83
122
122
160
111
145
101
148
117
69
102
92
110
158
105
169
144
126
69
81
141
105
126
78
126
135
139
105
137
111
92
130
81
122
92
138
180
67
106
74
104
104
55
152
92
110
56
130
69
55
92
114
61
106
69
93
139
122
74
68
131
74
144
69
75
163
55
79
110
126
92
131
68
67
92
56
122
92
103
123
131
128
158
105
126
92
86
158
138
171
67
110
92
140
69
105
69
165
55
123
110
69
126
69
69
89
56
92
130
110
134
135
106
76
111
75
104
103
123
89
91
122
91
148
86
104
110
77
56
168
139
127
105
127
119
144
144
110
148
86
93
120
92
152
112
105
106
92
123
140
122
110
192
122
171
93
136
110
148
92
99
139
55
79
67
105
69
122
75
93
55
168
92
92
92
92
84
55
89
122
110
56
92
105
128
114
126
56
105
103
92
160
140
55
139
74
75
137
124
58
56
128
56
77
37
109
134
107
58
114
105
126
131
58
95
58
99
37
86
89
56
58
166
92
122
122
91
69
144
138
101
98
102
75
98
160
37
152
58
119
67
180
105
110
146
93
84
138
127
131
110
122
131
55
93
146
122
189
78
126
130
139
144
165
75
37
86
110
86
93
104
92
122
131
148
93
92
122
139
104
108
139
93
138
58
105
128
105
86
92
139
55
75
115
139
178
89
124
105
92
124
122
67
98
37
169
55
122
152
75
124
110
56
69
55
105
138
109
92
79
122
58
97
69
92
138
111
126
119
124
122
55
112
110
92
106
58
91
126
146
163
78
126
58
121
56
109
93
105
105
127
83
127
74
142
136
95
103
105
93
104
69
124
152
91
91
139
152
120
74
164
139
146
128
92
144
99
77
55
178
105
169
92
104
56
89
37
83
109
139
131
87
110
97
178
79
68
92
126
100
122
92
56
138
105
55
111
126
76
89
67
68
152
138
93
67
129
140
79
92
134
128
123
89
104
109
110
119
56
160
83
131
123
56
122
92
123
103
128
128
144
104
110
93
83
144
178
75
127
138
92
103
146
136
67
69
98
126
111
75
127
130
118
152
126
137
126
169
69
107
55
123
105
93
105
67
138
105
56
79
110
103
55
55
55
144
138
37
56
122
127
126
56
122
92
164
67
37
56
163
138
96
69
138
126
95
122
134
101
104
92
139
135
138
55
138
96
102
56
126
110
58
134
91
152
111
92
107
117
88
127
164
56
69
101
110
67
69
128
109
92
139
122
110
110
178
138
114
144
105
55
127
152
99
99
178
55
92
58
110
91
130
55
152
74
103
99
72
67
136
105
152
110
119
77
131
130
58
77
144
144
93
122
96
92
106
64
111
55
91
126
98
105
127
121
178
99
138
95
131
131
110
74
69
109
58
86
139
37
83
110
92
37
55
126
104
100
139
111
69
178
127
122
103
103
88
79
165
58
128
69
92
56
93
110
126
126
164
114
144
98
72
92
91
37
102
152
92
86
138
79
108
56
55
55
92
146
97
168
91
92
92
109
144
118
67
67
37
130
141
180
131
94
67
56
74
139
86
98
55
139
91
55
93
146
69
160
126
101
74
86
103
84
127
138
86
126
58
56
139
141
89
110
107
123
55
110
67
197
124
78
92
99
99
144
124
92
81
91
92
144
116
92
178
84
146
110
119
93
55
93
78
67
97
126
182
119
114
138
127
91
110
119
123
107
128
83
110
178
92
197
56
111
105
86
110
91
105
69
125
99
146
92
127
92
97
171
134
122
56
55
106
55
58
67
109
105
122
67
96
74
144
92
163
126
136
139
83
122
138
109
55
144
97
86
139
135
109
134
110
92
122
83
86
119
119
67
139
139
100
55
67
127
146
120
80
146
143
97
122
101
126
74
93
111
55
92
119
111
92
92
139
124
131
91
135
74
127
122
81
58
111
109
55
127
92
114
148
110
167
126
55
105
92
111
112
109
93
86
104
109
110
110
79
92
102
136
134
55
97
104
138
104
93
37
152
91
126
107
110
126
144
93
122
138
102
104
122
126
92
111
124
103
144
67
110
84
81
169
162
92
99
55
119
138
131
77
55
122
122
124
111
126
83
100
139
169
55
144
105
130
123
86
105
110
139
77
113
55
67
92
58
114
127
92
37
140
67
56
79
56
169
67
138
144
126
162
129
69
93
144
58
74
86
74
98
126
110
92
178
171
119
140
101
146
129
132
37
144
55
122
93
67
124
98
105
79
100
134
110
138
138
86
56
199
55
97
56
98
92
127
98
104
83
92
104
104
145
146
93
110
93
169
138
37
55
55
110
56
105
93
67
111
138
55
96
110
86
140
105
97
104
127
91
138
95
37
91
139
105
58
93
92
146
108
127
139
92
122
128
122
147
75
171
101
122
126
99
92
105
126
58
110
67
68
56
80
58
126
104
110
111
138
140
68
122
111
93
134
37
130
128
93
126
144
122
128
110
92
145
199
58
75
55
56
122
69
111
102
107
103
67
55
122
142
95
110
134
93
84
93
199
134
72
128
148
138
101
134
88
142
58
152
92
143
122
69
67
86
111
122
37
171
55
110
77
69
106
178
79
55
146
67
107
92
55
123
146
110
178
163
110
110
127
127
104
163
139
69
138
67
67
148
74
67
138
74
145
122
37
56
91
104
55
136
105
169
91
117
148
146
141
104
139
92
89
110
146
92
104
139
99
110
112
105
101
98
83
93
109
126
103
56
93
169
105
146
139
56
146
163
126
55
137
104
152
58
67
122
152
109
69
148
69
110
119
91
134
169
67
152
81
55
139
138
122
92
139
105
110
138
93
92
122
124
101
79
105
107
117
130
110
56
92
100
92
119
112
91
122
126
110
93
77
93
55
55
79
130
92
55
115
105
118
144
37
126
110
122
77
126
138
109
67
92
75
91
67
144
134
124
124
134
132
110
122
84
169
97
55
110
139
68
67
103
110
97
104
124
83
95
92
119
67
112
67
107
148
105
124
69
138
93
110
93
56
56
99
79
79
128
93
74
99
89
122
92
134
144
160
135
120
56
122
55
165
110
111
86
105
92
92
140
58
152
122
89
152
67
111
37
110
87
93
102
107
180
109
171
67
93
115
123
138
122
126
92
152
88
98
107
91
84
117
67
117
138
121
86
146
56
130
107
110
111
128
148
55
92
93
110
119
79
105
92
105
164
97
120
152
75
92
56
105
92
138
123
123
79
138
127
182
110
139
92
141
126
67
126
77
131
149
162
171
121
152
55
56
55
105
139
169
105
56
94
58
93
105
109
127
55
136
97
140
105
86
128
111
178
124
109
169
139
93
138
55
118
119
105
56
112
148
115
127
97
67
139
122
114
138
118
55
144
55
171
92
122
83
129
152
55
91
56
122
97
93
93
142
58
122
126
104
95
103
122
77
92
105
109
138
160
127
122
93
122
68
69
88
83
138
97
93
86
79
56
104
171
126
109
83
56
115
169
105
104
132
89
55
89
127
178
123
37
122
55
55
93
93
58
93
138
105
188
109
137
106
162
74
103
67
37
55
92
146
114
163
144
92
74
164
105
81
178
91
98
130
125
138
138
122
117
92
146
109
93
130
130
37
126
147
128
129
138
124
103
55
134
110
86
111
37
114
107
160
134
56
110
111
110
124
134
110
128
138
99
55
126
104
107
67
93
93
117
152
101
122
104
122
114
37
104
178
152
128
37
86
111
74
138
127
96
67
75
58
96
87
119
93
67
55
104
83
127
107
92
124
119
122
92
84
140
110
107
99
74
92
128
139
144
55
105
138
103
56
104
144
67
127
75
118
68
178
171
130
78
110
122
146
74
144
77
110
98
125
79
69
37
67
67
92
127
74
127
84
110
92
74
105
67
140
67
117
37
55
93
99
99
55
123
92
144
119
67
126
169
92
92
100
77
134
104
127
92
140
56
99
104
139
146
77
92
74
67
67
139
138
56
124
99
89
67
92
147
110
104
128
126
110
37
92
110
92
115
169
111
105
75
163
112
107
107
98
110
37
107
138
126
111
138
111
114
67
106
105
56
75
67
126
55
84
130
79
99
77
111
140
126
146
122
122
178
84
110
69
110
37
55
55
126
75
67
37
136
110
97
92
67
169
92
103
77
58
58
75
115
169
109
117
112
69
123
103
127
93
92
178
110
68
37
104
146
93
153
105
99
112
134
139
69
92
55
158
169
119
75
58
152
69
110
69
128
105
127
55
105
106
55
140
104
79
75
138
89
104
105
104
67
119
101
153
135
109
56
109
114
127
56
37
141
91
164
136
75
110
136
77
92
105
37
122
128
91
37
188
126
127
103
126
104
80
128
105
93
138
110
92
160
131
55
128
152
131
152
163
58
56
67
69
37
127
109
67
110
69
167
178
119
92
79
130
56
123
165
107
97
55
92
107
137
100
74
110
67
119
119
144
55
122
93
146
111
55
55
148
123
67
136
122
58
122
169
123
75
77
56
92
55
86
79
138
105
92
61
110
56
126
138
138
37
91
119
128
109
136
92
123
56
101
86
122
94
89
124
114
80
105
102
110
67
69
100
100
139
93
120
109
178
178
92
110
107
128
138
122
93
79
105
93
122
56
97
161
114
67
144
92
139
128
110
136
147
109
165
81
107
126
105
92
86
137
134
110
138
83
178
92
178
110
152
67
93
109
55
55
110
58
109
101
163
83
69
110
74
125
77
123
123
75
123
132
144
103
110
79
122
92
126
68
144
107
122
69
92
93
135
122
92
127
144
146
37
128
110
178
111
99
138
55
109
78
148
37
93
122
104
138
146
122
106
104
189
88
117
56
146
55
83
104
103
91
131
77
56
69
88
91
138
92
152
93
139
122
104
91
152
75
58
144
140
122
98
144
128
56
55
77
169
127
93
106
84
81
119
37
86
139
92
128
119
87
92
119
67
109
110
122
110
93
144
180
139
129
86
91
91
110
75
128
91
110
84
132
67
139
168
126
92
148
105
124
100
67
140
168
110
152
56
92
55
110
127
92
163
126
101
95
122
58
138
56
122
110
93
138
92
110
55
108
110
124
122
111
92
77
146
92
100
105
126
139
67
122
103
123
106
92
101
95
92
114
127
55
182
122
138
86
77
110
126
84
156
119
105
109
105
134
124
92
137
67
55
67
111
104
104
152
92
169
55
167
83
139
152
92
93
86
122
123
105
58
77
86
126
122
104
56
84
91
55
107
139
127
157
139
145
122
119
158
88
93
171
127
79
152
104
37
118
119
98
92
136
104
123
37
126
93
109
120
92
58
77
56
117
126
128
146
138
99
135
126
124
78
146
127
110
68
110
92
137
130
180
74
67
139
37
110
124
97
68
134
92
69
158
102
127
55
86
55
114
139
92
111
109
92
137
139
56
86
58
178
105
92
93
137
160
111
124
109
140
139
74
139
89
98
77
55
110
122
91
126
99
91
105
110
55
168
55
92
136
104
98
130
99
109
122
104
97
111
118
110
107
110
83
56
136
178
102
109
125
138
110
105
92
87
105
104
103
152
84
110
55
122
99
139
105
138
67
92
104
104
79
56
93
122
122
105
105
72
58
74
69
110
78
92
76
84
107
103
178
146
37
144
138
140
178
167
55
126
86
139
77
129
92
37
144
119
124
55
111
122
107
105
139
75
95
37
118
144
180
114
92
105
181
67
105
139
93
92
148
95
128
114
110
110
37
55
127
92
130
120
112
84
91
169
107
91
56
123
178
93
74
105
110
122
88
92
92
126
146
144
105
126
102
132
91
97
138
56
92
58
119
188
92
136
139
131
79
91
84
178
37
152
105
134
74
105
79
86
110
58
67
86
92
93
119
56
86
119
126
99
103
37
77
119
92
74
77
118
178
138
94
138
55
79
127
55
91
92
74
58
139
122
135
110
74
152
74
108
95
104
79
105
67
115
83
131
37
120
93
152
88
102
123
138
128
83
83
92
58
67
92
92
92
106
137
178
118
108
104
146
37
104
151
111
97
97
134
162
135
119
132
58
122
110
138
74
112
126
138
104
102
110
110
55
110
102
92
37
107
67
126
92
58
92
109
86
93
98
150
130
58
140
56
117
152
124
68
98
122
124
94
58
122
147
105
104
126
92
122
55
74
163
55
126
152
122
169
126
55
109
138
126
69
88
126
138
148
55
56
122
105
74
126
110
92
104
126
69
73
67
105
79
132
92
165
123
171
131
55
86
68
110
111
55
139
104
75
78
67
104
169
111
79
92
110
122
162
56
105
180
122
55
110
86
146
177
144
102
92
67
55
110
139
105
138
110
122
55
126
126
108
122
111
58
100
169
112
177
145
122
56
139
104
56
136
74
128
122
95
92
138
92
136
100
163
79
124
122
105
92
55
105
136
121
37
138
106
106
58
56
103
92
68
138
122
110
58
107
99
138
92
119
144
130
93
138
92
140
138
102
75
138
128
79
122
75
79
120
55
139
91
138
104
92
165
138
114
58
122
105
105
146
139
126
148
92
99
75
104
148
55
56
105
134
58
110
55
146
67
79
109
69
93
104
138
73
122
101
67
132
77
122
146
112
78
92
122
134
101
92
68
107
105
120
110
67
55
110
86
128
79
97
67
138
112
110
114
110
55
146
81
99
112
135
126
138
101
140
91
56
127
69
58
86
55
69
79
58
110
69
55
106
115
110
140
145
86
55
122
122
79
104
146
140
79
163
122
146
109
74
95
100
86
139
67
67
119
81
56
91
58
92
104
165
98
95
103
92
131
124
105
94
92
104
141
56
69
146
168
55
146
67
98
138
119
105
130
122
56
151
105
138
136
157
105
93
118
56
144
104
78
126
99
93
55
106
110
126
104
118
126
55
86
143
68
92
178
169
37
148
111
55
111
105
126
91
88
119
77
107
139
55
123
122
105
178
109
124
122
110
92
109
91
124
139
152
131
144
77
55
96
37
105
110
150
92
86
79
144
83
92
146
138
83
105
122
111
178
140
58
102
123
119
55
75
152
98
110
110
69
86
91
119
37
127
110
119
126
111
99
91
169
118
92
79
55
93
37
68
92
146
126
122
122
75
55
119
102
92
152
67
93
142
106
92
130
64
58
103
112
109
123
92
103
69
151
92
67
122
119
86
108
111
107
144
110
93
110
105
69
55
114
126
105
93
126
160
128
114
127
77
126
131
37
91
109
128
99
146
93
127
119
107
171
110
99
89
93
55
93
103
86
55
138
142
56
67
68
149
122
140
139
144
99
92
86
55
149
122
104
56
110
93
169
55
128
126
110
122
92
148
178
55
122
126
118
85
152
105
169
75
127
128
83
56
106
92
178
67
58
148
55
126
123
110
168
37
178
124
148
119
88
131
87
137
134
105
119
127
138
178
104
122
84
122
136
79
110
122
114
107
138
169
122
110
144
127
92
79
126
134
84
131
119
58
144
126
123
92
138
74
150
110
124
104
103
74
134
105
93
92
103
96
92
110
92
122
55
152
83
128
146
109
131
178
75
110
126
58
105
130
69
122
58
104
56
56
68
104
140
55
121
117
152
140
178
37
138
110
119
110
162
139
104
169
128
134
128
79
158
92
104
110
164
67
79
69
126
91
74
178
110
124
126
126
134
97
122
126
126
56
79
119
86
111
69
146
92
126
67
123
119
104
122
105
146
139
124
67
67
92
128
122
142
122
75
138
92
131
103
128
86
109
101
127
138
110
122
74
178
131
139
110
92
115
122
137
56
89
99
118
67
114
67
67
110
122
37
56
56
97
93
111
77
171
99
126
107
105
91
126
138
146
104
92
140
58
77
105
58
169
57
79
140
92
84
67
93
124
69
92
100
152
148
119
69
138
169
131
67
104
93
110
69
92
104
101
97
124
126
146
158
169
88
110
146
138
92
110
99
67
88
140
122
105
105
111
92
67
119
111
58
139
107
113
139
105
84
100
110
124
74
77
145
110
86
92
96
146
126
144
103
67
93
107
150
37
135
110
55
79
37
75
110
55
56
126
110
67
127
76
126
140
146
89
127
105
128
178
139
138
69
74
92
110
152
111
67
56
93
92
178
83
138
139
55
122
93
102
152
140
126
110
92
140
105
111
119
92
124
56
83
152
56
131
105
144
55
104
112
123
74
92
139
101
110
105
58
92
55
55
77
148
119
69
91
92
122
92
110
101
75
122
99
120
67
117
55
110
58
80
112
110
152
158
86
92
164
178
92
104
58
124
110
79
74
126
105
127
55
104
122
125
92
135
139
111
75
88
110
88
152
83
109
98
105
37
126
37
138
165
139
55
75
122
58
146
37
134
56
56
178
91
111
56
138
110
110
92
56
123
109
126
104
180
56
79
138
82
37
118
103
55
134
126
91
127
91
104
69
122
151
105
110
75
69
123
79
84
139
144
138
74
58
110
131
92
138
178
110
92
110
37
55
83
92
93
56
119
135
56
144
92
55
105
130
92
108
130
93
91
56
131
131
92
123
83
93
91
55
55
107
134
37
122
105
79
127
67
67
107
37
138
178
119
105
104
92
77
55
86
132
56
55
144
122
105
77
143
109
110
107
139
132
95
101
164
146
93
58
138
119
110
158
37
101
105
122
188
136
104
92
95
76
99
99
152
132
112
124
199
124
99
78
55
126
67
122
169
128
92
151
93
104
110
139
75
91
107
92
55
87
147
92
80
56
92
92
122
67
138
178
105
139
168
104
139
110
92
122
58
126
92
93
164
81
119
105
86
37
107
65
152
162
110
55
74
110
88
146
97
67
99
58
105
92
75
56
144
126
93
65
168
96
92
92
122
79
144
144
110
95
104
89
67
86
110
100
37
138
135
109
92
100
144
158
55
67
92
37
122
178
69
104
98
138
126
122
142
109
55
178
103
138
144
142
126
89
139
128
151
131
130
79
67
88
119
37
105
169
146
117
55
182
139
178
93
110
37
123
56
123
138
122
55
37
86
118
95
122
56
67
56
104
123
169
110
126
104
114
56
75
111
92
56
134
92
110
129
169
146
111
158
55
69
158
152
164
107
92
110
134
126
126
122
91
77
105
111
169
129
126
55
55
146
92
136
119
107
125
130
137
140
79
152
101
105
91
97
111
128
92
93
131
138
92
122
55
128
86
67
105
139
122
117
92
86
138
55
122
104
91
126
105
158
126
79
128
55
158
122
122
119
93
117
79
105
148
98
104
55
122
127
105
99
67
138
103
126
122
92
104
169
58
115
55
55
152
74
56
168
102
103
122
134
98
104
139
91
164
111
55
74
58
126
67
105
126
110
99
55
67
146
111
122
107
122
89
109
136
122
77
104
109
77
163
119
110
180
95
56
91
92
149
131
105
74
136
37
109
138
112
78
105
37
120
128
105
138
61
58
105
56
86
55
126
163
67
92
103
121
92
79
55
169
37
136
140
104
93
55
105
87
180
104
95
127
67
121
103
117
138
115
93
102
138
109
55
178
80
111
93
104
126
92
123
119
74
67
146
93
132
56
122
125
92
141
69
104
37
69
127
141
58
171
163
103
74
104
122
122
144
152
86
67
127
104
86
138
68
92
67
107
75
122
104
105
162
138
167
122
37
164
37
55
112
69
68
93
74
92
56
84
79
150
75
67
92
114
123
110
122
58
180
98
127
131
178
37
138
138
77
83
139
123
56
139
123
113
92
92
67
126
138
127
105
97
92
93
97
123
55
128
91
74
148
55
110
92
104
126
127
111
126
55
122
197
122
101
169
110
110
92
55
123
92
86
104
138
126
58
92
104
104
111
122
138
111
55
93
37
114
142
105
100
160
67
103
83
56
122
144
67
67
119
123
84
86
111
68
67
92
136
79
67
37
110
156
123
91
129
178
86
105
139
114
122
109
122
98
97
79
178
110
105
93
163
107
188
110
74
67
107
146
93
144
134
93
120
114
124
55
105
178
124
110
139
92
152
132
139
89
86
96
76
81
138
83
106
138
88
134
107
55
121
67
104
105
69
89
138
123
55
169
105
114
119
132
92
138
72
119
55
37
178
86
109
148
104
92
92
104
92
69
67
104
104
102
119
136
105
119
118
178
105
56
124
56
149
69
144
126
126
55
132
56
122
110
83
123
138
103
67
127
128
119
163
117
120
105
58
144
101
171
92
136
105
138
69
126
126
122
92
37
105
92
92
75
122
127
110
110
55
126
145
93
111
148
104
92
132
94
68
114
92
110
55
86
55
110
123
117
105
169
122
110
89
98
83
178
142
67
128
146
55
133
139
104
144
92
105
93
92
127
114
74
77
110
122
122
67
92
122
86
126
125
110
178
138
92
139
97
75
138
55
141
105
129
167
92
67
104
110
74
104
55
122
94
91
110
131
152
136
138
74
93
122
105
104
105
123
122
55
106
107
109
104
92
67
131
92
92
58
126
86
139
67
55
126
105
108
123
93
89
109
86
56
117
126
86
134
127
122
110
94
92
92
104
112
108
148
55
101
119
114
138
99
86
75
104
110
67
124
122
122
140
126
79
117
110
79
125
126
144
150
104
104
104
122
112
108
101
93
55
55
161
56
138
92
92
123
146
138
110
126
37
58
92
37
55
126
110
110
144
55
128
139
128
105
86
122
110
108
99
106
118
110
92
124
122
134
67
110
67
122
92
67
69
144
105
67
68
106
122
144
164
122
111
92
105
77
105
140
95
107
126
56
108
127
67
139
140
158
92
122
146
137
139
92
80
125
92
128
122
111
110
105
138
92
67
140
58
56
102
37
92
69
104
105
75
139
122
37
119
123
75
58
55
131
152
55
93
146
69
111
112
158
67
77
122
55
112
127
139
93
83
105
122
55
95
55
113
123
68
104
37
107
110
144
79
126
119
110
124
86
124
138
55
92
104
104
131
140
75
105
178
77
122
92
101
144
146
128
91
77
111
169
138
122
167
110
144
55
136
55
105
138
86
91
178
91
188
171
137
134
178
125
92
92
55
55
122
148
37
79
122
86
105
152
75
92
117
126
93
138
74
97
146
100
92
123
126
93
86
111
138
67
104
138
37
92
110
162
126
126
114
103
93
99
178
75
118
119
138
67
81
119
101
92
56
91
134
55
104
126
110
86
171
105
69
93
131
111
137
92
140
92
55
103
79
92
92
152
109
129
86
55
139
158
131
56
86
122
152
136
92
115
138
37
105
69
126
122
139
126
125
171
37
95
107
56
137
110
85
126
110
78
97
69
139
92
56
127
126
132
93
138
79
95
128
86
56
152
37
188
123
122
86
146
55
119
122
79
111
110
134
144
55
93
91
55
92
144
138
109
126
37
92
138
146
105
68
127
104
110
132
148
67
55
120
126
56
117
127
144
56
74
88
178
56
37
95
92
126
110
93
95
91
110
56
126
146
134
139
84
127
127
92
126
79
99
131
140
109
67
58
124
105
120
55
128
104
93
75
111
104
92
151
126
55
178
158
92
98
99
81
98
146
55
117
128
137
110
136
67
55
105
131
138
148
128
122
96
144
127
109
104
152
99
91
178
55
163
83
128
145
92
74
152
127
127
67
92
58
110
92
92
132
56
138
132
171
92
103
110
126
55
139
114
138
122
67
139
122
91
77
110
68
152
110
55
128
58
132
105
152
105
92
103
144
144
104
97
122
178
86
126
93
99
139
101
106
92
93
124
92
119
152
123
92
128
105
110
77
92
146
122
56
91
100
137
76
109
111
55
37
127
92
92
74
99
77
136
139
178
134
160
122
139
139
104
68
111
37
69
58
112
128
92
107
92
72
92
67
138
169
100
55
107
93
138
55
136
104
58
75
92
111
148
145
91
105
91
83
138
138
139
126
137
146
122
120
123
92
101
135
92
115
146
92
119
121
37
56
56
105
126
114
106
67
126
104
92
148
136
106
97
74
140
122
123
104
110
106
79
37
58
128
102
126
84
128
123
107
56
123
100
92
55
55
109
123
110
67
79
55
126
152
169
138
117
67
92
134
77
148
107
77
92
178
126
56
128
74
105
110
138
55
126
103
92
55
67
107
67
107
110
55
77
126
67
135
55
37
149
138
127
115
84
68
150
171
37
132
114
138
140
105
75
119
106
61
105
169
126
92
92
110
131
93
130
179
128
125
58
126
112
56
93
92
136
56
110
104
92
91
105
79
162
92
104
128
37
144
109
160
86
126
68
83
77
110
126
67
124
67
105
144
55
58
106
130
144
125
110
93
126
138
55
165
152
178
168
110
92
93
105
104
72
91
58
122
75
95
130
138
138
110
92
139
178
106
110
110
55
114
119
105
105
110
120
110
122
122
115
152
75
92
55
110
138
109
122
93
86
124
93
122
140
122
69
131
67
93
55
92
169
138
152
141
139
69
105
119
104
122
117
145
69
81
37
136
119
138
122
92
122
55
125
107
127
74
105
178
37
104
119
134
169
138
119
86
92
141
79
139
79
122
105
178
56
105
91
140
122
92
126
144
131
128
100
108
145
148
86
58
105
104
127
160
105
77
141
152
105
128
131
72
37
81
140
178
109
127
188
138
122
139
92
144
122
105
56
67
115
122
99
122
105
128
122
91
163
110
128
104
156
131
88
150
105
78
67
103
92
138
105
139
99
163
126
100
110
127
77
67
138
105
104
127
144
126
144
98
58
122
92
105
58
56
134
144
171
146
104
110
88
138
103
105
126
105
138
103
147
146
114
37
100
126
56
77
98
199
137
55
105
112
55
110
107
139
91
110
126
127
74
122
56
67
92
56
104
128
86
110
144
148
110
93
158
37
105
104
97
91
104
138
110
104
119
99
106
123
92
144
125
55
131
92
126
178
138
140
110
84
126
146
76
158
92
103
110
103
146
129
109
105
152
148
110
112
122
95
199
122
56
122
105
109
110
112
178
99
158
68
67
92
134
92
123
92
127
138
55
58
107
106
99
92
92
74
86
55
119
92
103
86
72
104
122
109
99
126
84
99
169
110
69
109
92
74
105
138
79
55
58
132
138
130
74
114
122
126
80
109
139
135
149
83
103
110
139
140
126
152
122
56
105
119
101
56
122
55
111
113
158
171
37
122
91
139
67
92
138
138
138
128
55
55
130
156
75
106
107
91
146
128
110
140
127
92
55
92
127
134
165
178
115
79
140
159
124
114
132
117
92
71
134
127
134
92
69
134
58
55
77
127
164
88
78
92
92
115
122
152
122
105
105
67
88
83
37
140
67
67
122
68
127
110
134
110
122
138
135
158
124
158
138
92
93
56
67
100
177
81
105
111
69
118
122
75
105
92
169
109
105
95
109
107
92
92
105
134
89
109
55
122
138
58
83
92
119
107
127
69
138
138
92
101
105
97
84
55
136
144
80
88
110
169
169
37
147
111
92
168
122
92
69
105
126
67
122
111
92
122
92
149
127
139
56
109
98
138
178
107
58
127
124
127
67
110
120
138
128
105
146
95
84
105
178
104
86
58
135
140
178
91
140
86
89
122
138
118
92
104
107
92
122
92
104
168
110
127
92
141
78
77
140
56
67
92
160
91
104
55
99
148
137
99
55
67
124
86
135
105
123
169
122
56
67
122
55
55
100
97
91
73
126
146
99
109
55
67
105
127
55
140
138
120
105
152
69
138
104
126
104
67
144
92
139
139
158
126
110
126
97
67
92
110
91
77
138
84
67
112
126
178
110
67
69
109
160
69
137
105
37
128
87
122
58
178
101
92
104
69
132
110
86
105
99
105
108
58
140
152
110
92
79
110
99
110
105
104
92
152
119
89
81
110
91
92
122
91
92
119
56
126
182
181
55
138
142
119
55
67
107
189
120
178
55
140
105
56
126
107
122
126
179
37
95
99
72
55
104
64
138
92
123
109
123
79
134
145
122
126
55
138
104
74
58
55
56
67
91
107
104
75
105
122
144
122
126
58
163
107
67
109
146
156
86
101
55
134
67
134
105
164
162
86
86
135
92
93
95
178
140
158
108
122
105
56
130
124
122
55
95
119
105
110
124
67
126
138
159
91
110
107
107
152
124
126
130
134
109
168
110
74
56
99
144
142
55
69
69
104
129
104
56
55
141
110
104
111
97
56
126
56
128
56
91
107
55
127
110
92
92
101
79
56
92
55
104
127
37
93
126
180
146
123
92
92
152
119
69
77
67
110
105
126
111
140
107
91
111
67
122
91
127
119
134
122
146
144
67
88
104
107
180
104
137
129
64
104
104
55
105
79
88
81
78
118
77
171
152
130
103
127
104
152
134
55
92
56
122
37
132
138
110
122
105
105
110
104
120
77
55
105
122
69
138
127
104
138
67
105
93
79
55
110
126
144
75
146
92
148
117
55
138
84
92
117
138
110
79
178
79
109
92
115
126
112
178
139
74
55
180
92
122
80
107
92
86
119
131
106
92
92
127
148
107
69
56
69
140
139
89
107
127
69
111
91
92
104
108
139
110
127
171
134
131
110
104
126
138
126
55
110
105
79
75
127
105
58
56
92
80
152
55
56
121
55
37
104
144
131
148
126
178
92
144
107
169
138
75
110
125
68
56
111
105
86
104
67
110
140
104
152
107
158
107
122
144
107
101
86
103
77
104
92
144
127
165
68
128
99
102
123
178
86
152
126
93
140
107
97
77
64
92
178
139
137
144
56
126
100
118
68
152
122
110
158
69
117
37
97
37
92
144
111
137
138
126
67
93
79
152
139
126
122
110
67
92
146
104
55
79
138
89
110
119
79
122
91
56
144
110
108
67
171
92
100
101
55
122
55
92
126
171
178
81
89
69
55
67
178
127
105
110
146
86
105
58
107
110
127
119
79
55
93
92
55
37
136
91
140
58
109
92
93
55
56
75
58
152
104
138
124
55
67
92
104
56
119
146
152
58
118
67
56
67
119
92
127
67
55
93
67
92
131
110
92
152
55
178
126
105
92
67
99
72
104
123
126
138
104
58
128
100
69
69
110
123
111
107
127
105
67
152
142
127
146
169
99
144
128
126
123
146
152
67
37
127
56
97
91
77
69
178
81
139
93
99
128
67
126
105
98
123
37
83
110
130
158
74
100
91
55
138
57
110
122
99
104
92
169
152
127
132
37
69
123
144
92
98
123
126
92
67
123
69
92
130
67
74
144
55
141
93
93
99
89
103
139
67
111
93
105
117
138
138
138
146
160
146
91
99
130
130
75
76
97
110
92
134
93
123
136
105
56
69
55
92
37
99
83
105
178
107
122
110
101
93
128
126
77
139
102
119
107
144
67
127
55
122
55
139
146
122
92
129
75
103
107
140
105
128
37
140
126
139
101
117
110
127
92
110
138
84
138
110
79
146
55
138
92
142
103
104
119
126
131
114
117
93
156
110
138
126
125
110
123
74
105
74
56
105
126
140
115
91
37
104
37
139
127
163
123
91
110
128
138
55
104
109
144
134
92
95
126
98
118
92
58
146
86
137
122
92
126
107
178
119
169
142
138
93
134
92
67
55
111
119
140
127
91
105
89
104
84
138
126
92
86
92
68
112
69
119
148
178
109
111
104
77
92
110
69
75
55
115
110
104
37
56
56
122
92
130
112
144
101
94
143
93
110
67
58
127
122
67
137
126
136
79
110
146
127
93
130
107
95
93
142
122
92
126
126
92
103
138
93
127
109
152
84
109
84
162
37
117
126
152
110
102
122
93
149
131
37
122
55
138
136
123
55
37
69
105
139
110
138
127
122
67
93
93
137
67
92
55
100
117
92
93
74
120
55
68
69
101
122
122
109
145
158
83
164
67
110
55
119
127
56
139
79
122
86
76
92
139
169
74
105
144
69
158
152
169
127
93
129
126
92
119
67
144
55
67
138
69
110
169
163
91
148
130
122
126
81
55
169
119
55
110
107
37
86
124
128
138
37
142
126
99
149
67
122
69
55
122
138
95
141
55
55
124
104
55
74
152
126
145
72
99
152
99
139
37
91
93
178
149
55
86
138
112
158
98
119
55
89
123
119
146
58
75
123
55
94
110
138
75
122
127
108
91
138
110
152
146
92
110
92
110
115
95
138
178
110
180
144
126
152
58
55
144
178
126
104
119
138
92
92
178
126
83
105
92
127
107
92
105
55
139
128
146
132
168
55
134
105
122
98
91
55
122
138
83
69
146
110
105
162
124
123
67
119
110
106
67
55
92
119
92
104
177
114
64
77
77
138
111
81
91
89
98
104
139
164
126
134
67
77
69
105
58
178
152
92
37
67
138
169
119
105
122
169
138
111
67
79
111
97
122
69
130
122
138
55
124
55
92
92
126
138
91
77
95
105
109
107
56
127
55
138
126
140
110
138
95
89
110
138
122
75
56
37
127
75
95
56
148
108
84
110
129
103
118
140
92
67
69
110
107
105
110
92
67
125
126
138
92
102
126
107
138
56
127
105
79
77
92
164
100
122
77
122
74
75
123
122
104
110
110
67
110
93
55
69
126
92
160
139
119
92
122
126
83
56
122
37
67
110
58
105
117
79
148
86
109
127
110
74
138
92
85
124
109
37
152
109
126
178
139
83
122
55
122
131
122
140
110
138
67
128
67
37
75
58
152
56
169
86
164
74
103
93
137
67
131
86
146
122
92
120
107
67
110
143
104
111
78
37
55
141
79
138
100
146
55
104
137
110
56
140
138
104
67
103
91
104
141
178
168
109
169
110
58
37
128
93
92
83
69
55
128
126
105
125
93
68
105
178
132
169
130
144
103
135
124
97
92
56
55
158
156
122
93
93
103
86
79
122
74
126
138
56
92
106
124
119
128
72
67
92
56
109
122
103
68
93
93
108
134
107
102
124
109
105
128
107
104
91
97
148
120
56
126
105
139
97
58
119
92
128
56
91
118
134
104
79
127
92
112
168
122
126
93
138
104
92
77
105
93
122
110
100
117
104
93
144
55
56
122
144
91
146
92
55
58
86
67
168
140
110
55
178
139
55
92
79
122
109
99
126
169
111
180
171
109
67
128
79
92
37
130
148
67
143
91
92
56
105
126
134
92
145
144
126
55
127
122
152
149
69
144
112
110
127
136
111
105
55
104
139
117
123
148
128
104
104
55
83
152
122
126
105
137
168
127
148
92
37
109
102
114
107
58
55
110
84
102
58
128
128
67
110
119
79
134
88
122
104
138
140
122
126
92
55
91
56
110
110
93
122
127
56
56
128
58
131
126
104
67
122
99
81
95
104
92
146
78
152
126
69
139
105
92
124
126
95
105
97
144
86
138
110
104
37
55
141
68
55
101
92
92
126
110
56
112
68
69
134
67
69
115
104
146
77
139
105
104
138
69
168
67
79
97
108
69
110
97
99
127
178
110
135
105
178
139
107
105
37
122
171
122
56
104
122
56
129
122
69
99
110
146
86
178
58
104
130
55
104
144
92
102
55
105
105
139
126
79
107
122
105
92
105
105
56
144
124
132
152
67
105
145
37
88
74
168
77
102
110
130
142
79
89
80
110
134
127
75
99
89
122
178
92
123
55
144
56
144
126
105
110
93
67
75
79
92
148
92
75
138
126
139
56
88
92
68
107
92
117
55
139
105
74
89
55
134
152
72
37
180
103
138
158
55
98
126
169
146
92
93
122
137
99
105
56
88
127
148
171
105
86
105
101
110
148
127
91
101
55
55
118
112
112
77
110
58
104
138
67
79
150
152
146
67
180
92
144
139
169
111
120
79
128
105
83
119
134
122
134
104
92
55
126
104
148
84
78
121
93
145
135
139
115
179
58
127
138
83
122
37
55
92
178
55
141
77
101
77
141
137
69
146
160
75
123
137
104
140
105
138
67
171
122
122
69
152
110
162
158
126
127
86
104
124
78
160
165
110
107
156
164
178
145
55
99
115
139
100
112
110
67
105
91
144
140
128
130
91
93
168
106
108
55
37
107
124
139
104
99
67
94
97
152
56
72
105
127
106
99
56
83
138
130
146
111
114
120
104
160
162
126
106
105
138
107
87
126
69
93
77
74
69
92
92
123
55
77
122
58
110
91
138
103
178
122
126
93
110
168
178
110
92
144
144
83
128
127
101
122
126
132
140
55
123
120
136
37
139
152
104
104
102
93
124
74
104
83
126
169
91
90
127
84
85
58
92
163
124
126
178
158
86
122
127
105
105
67
122
105
137
55
136
55
104
111
37
104
99
86
146
124
126
56
93
37
67
97
75
88
74
92
122
178
92
55
102
77
126
136
67
110
99
107
122
122
126
56
99
146
123
127
134
111
102
122
110
56
86
103
119
117
110
169
138
169
100
139
106
67
111
110
140
123
109
121
56
55
107
86
68
92
138
128
56
75
58
93
67
67
107
58
168
103
86
109
122
84
126
114
72
118
109
67
152
122
107
111
124
75
104
84
92
119
119
124
126
37
128
110
92
123
99
104
178
93
67
126
165
56
81
178
91
126
58
139
92
130
74
77
107
69
92
123
98
180
97
122
123
122
162
110
138
130
126
123
109
111
116
139
92
138
92
122
114
69
93
152
92
55
126
188
86
126
152
79
78
92
126
58
118
171
129
37
92
92
126
91
138
126
92
55
79
144
58
55
144
160
131
92
169
77
92
122
93
67
139
169
144
117
139
58
126
169
77
58
123
163
122
37
109
110
144
37
119
109
105
67
126
169
126
105
117
123
101
127
110
86
128
139
74
120
123
126
127
91
127
132
119
68
145
92
114
110
87
126
86
105
55
65
92
124
129
104
139
128
136
130
74
138
152
123
144
75
92
107
55
110
37
83
144
104
56
110
55
110
171
56
169
104
104
146
178
55
83
122
180
105
69
105
104
126
126
67
120
97
73
55
110
110
92
93
112
110
132
67
163
139
92
92
92
126
56
119
122
110
37
92
107
79
110
104
122
105
126
138
86
126
124
104
92
128
136
107
128
126
77
134
74
139
89
55
199
55
122
138
122
112
37
104
84
78
114
99
135
122
101
111
122
110
75
126
56
152
75
126
146
58
144
126
93
110
93
138
108
69
94
124
95
83
67
92
123
95
168
92
91
180
122
134
110
169
110
56
178
86
98
86
56
149
163
126
67
93
103
171
132
134
152
55
98
126
111
138
138
67
74
79
138
92
139
152
110
67
89
79
92
37
79
109
169
56
93
92
105
148
126
104
127
119
138
168
96
160
152
105
55
148
110
105
128
130
138
148
124
56
104
122
124
104
104
93
97
56
91
139
138
92
105
178
83
152
79
130
92
109
75
92
106
75
122
110
126
127
109
130
144
152
136
93
109
139
130
124
101
111
110
55
152
105
68
144
110
140
138
93
178
112
78
93
136
92
69
143
136
139
126
127
55
106
105
124
93
105
92
117
105
169
97
92
126
91
79
110
104
126
89
148
160
75
178
107
171
114
105
37
77
56
110
67
122
37
110
131
165
91
158
126
139
139
68
105
129
67
142
58
91
152
55
74
55
109
107
146
126
93
128
139
56
132
139
144
110
144
55
160
119
171
112
117
87
116
122
152
56
61
55
58
56
130
112
152
199
74
152
138
79
139
88
92
104
55
121
77
118
146
67
37
144
56
109
55
111
86
92
126
37
67
134
75
99
56
127
110
107
112
141
55
127
124
122
160
140
162
138
125
56
110
68
68
134
144
74
129
122
146
126
74
98
55
118
127
92
122
55
77
91
97
163
164
107
109
131
92
119
110
93
122
127
37
127
110
102
69
111
93
126
72
122
146
110
99
89
86
69
109
144
77
111
68
93
122
143
138
95
144
105
146
55
55
92
93
102
93
55
37
111
58
129
97
105
115
58
117
132
146
158
102
122
120
91
171
92
140
125
92
110
92
109
126
56
123
89
106
58
95
128
122
92
117
131
110
137
84
144
55
67
110
138
109
124
103
95
99
92
99
139
120
68
163
171
110
131
150
134
67
180
146
97
134
178
67
127
105
138
109
134
68
112
138
55
126
104
109
110
104
37
127
178
110
91
168
67
140
126
137
109
58
92
138
126
92
149
118
92
84
122
105
55
69
109
83
139
105
136
132
91
114
56
122
128
168
105
83
67
69
37
137
148
108
55
120
119
108
178
92
67
110
138
93
56
105
114
123
152
139
56
126
132
83
122
92
79
79
136
139
79
55
111
98
126
128
101
146
56
122
79
114
107
104
137
142
124
92
93
67
77
119
92
93
92
56
131
138
110
100
119
56
105
37
79
92
119
69
109
114
55
93
138
105
91
112
58
109
86
126
119
107
163
127
116
122
67
132
169
76
93
110
180
139
128
122
105
122
109
169
103
55
67
110
92
122
142
135
104
139
104
105
92
168
107
105
104
110
86
146
112
102
168
126
67
55
107
180
55
88
124
74
169
77
103
58
86
105
122
138
55
119
105
55
74
81
152
138
119
123
119
140
122
111
110
114
67
58
109
132
142
126
55
146
92
92
126
92
55
92
92
110
122
122
138
108
105
103
37
89
110
139
56
178
119
128
111
75
69
67
81
106
105
56
91
122
99
152
56
138
111
144
137
139
75
130
167
116
127
95
134
122
86
152
55
122
122
126
86
56
138
169
104
93
55
79
99
109
112
92
55
93
123
128
146
99
122
135
144
69
104
89
99
72
56
139
138
111
130
110
56
58
104
126
105
56
99
138
112
112
123
152
130
55
109
122
165
81
122
102
122
136
86
55
123
93
56
140
93
104
67
92
100
67
103
92
138
79
119
88
144
55
127
74
122
126
131
138
138
91
121
124
91
104
178
146
152
55
68
83
93
76
132
126
100
162
92
68
122
92
92
117
75
105
79
95
144
93
118
167
84
105
100
67
127
92
146
69
169
92
55
134
119
88
139
110
138
192
100
144
78
91
55
110
86
93
69
138
91
127
103
138
74
79
122
56
178
79
86
93
86
104
126
140
68
92
111
37
169
104
77
55
138
37
99
73
107
55
92
152
128
87
125
124
75
97
127
148
119
110
126
92
37
139
92
67
123
67
126
126
127
93
55
128
104
110
93
126
69
119
168
129
110
138
55
99
56
75
68
122
105
138
126
145
75
169
69
113
98
104
105
103
126
169
55
99
177
92
55
122
69
124
126
68
160
55
93
122
75
55
152
104
117
55
119
138
72
91
139
148
37
110
126
110
69
92
100
145
122
123
105
97
128
127
109
119
91
91
110
91
68
104
122
167
169
109
92
83
105
126
124
77
168
110
67
104
120
102
109
86
152
56
107
92
92
83
104
69
79
127
148
123
88
127
128
55
55
128
37
163
92
138
69
110
127
55
178
148
58
79
126
146
99
140
128
108
55
110
126
67
199
124
92
122
106
67
180
92
55
139
37
148
136
79
178
128
118
131
126
75
127
110
92
144
171
138
146
74
138
110
135
107
108
67
132
110
91
140
111
146
122
110
92
77
83
55
83
111
144
122
169
147
124
109
112
69
127
103
130
138
138
126
55
57
56
119
109
140
115
92
37
122
98
84
128
75
99
92
138
105
126
178
106
126
93
55
86
110
178
91
104
123
96
67
138
105
139
108
147
152
130
93
110
144
124
126
138
136
69
92
110
93
131
102
122
110
69
93
83
89
111
67
178
128
110
55
126
79
55
91
93
55
55
127
92
55
178
132
148
92
123
103
126
37
107
37
56
127
104
104
110
122
99
79
111
134
128
89
146
97
110
138
105
81
169
93
126
139
120
123
37
67
56
81
92
91
124
127
123
79
101
119
92
110
92
104
86
110
119
126
101
144
126
92
138
140
109
75
103
169
97
138
139
103
122
79
178
100
144
137
145
127
56
122
67
145
92
126
55
132
55
69
139
56
105
152
56
106
92
108
77
126
132
110
86
92
86
127
79
86
74
109
69
92
169
105
105
111
124
98
122
56
118
152
55
110
118
88
156
138
93
148
127
110
104
58
92
93
83
67
99
122
93
106
148
104
79
103
105
92
178
152
130
110
80
146
139
138
110
69
126
67
93
37
122
102
119
139
105
144
106
126
69
144
55
92
58
74
37
120
171
169
145
123
122
104
104
138
103
127
122
138
92
152
37
37
146
67
188
74
37
178
119
139
158
103
145
138
111
79
69
104
105
122
105
88
126
122
55
127
179
110
104
103
126
58
128
139
79
144
86
89
139
122
55
120
55
140
94
127
148
171
124
124
122
123
140
55
120
138
37
152
152
83
171
83
126
126
77
138
91
69
107
92
67
101
139
189
128
105
111
96
128
139
74
92
123
86
110
105
77
134
102
119
131
83
128
91
138
107
55
55
118
120
169
132
110
91
55
110
93
138
111
135
138
188
92
126
56
92
123
67
58
156
148
105
69
124
67
104
144
167
56
104
69
93
95
92
139
98
58
109
92
100
138
67
92
130
55
120
114
135
67
86
149
123
110
140
124
122
68
111
58
144
69
109
110
169
77
58
148
138
37
37
122
110
110
126
123
88
58
77
72
93
81
144
110
92
104
148
178
80
58
108
55
152
93
83
77
117
141
92
117
144
114
122
58
136
126
58
93
55
75
92
69
79
55
119
144
178
37
119
165
134
92
122
119
146
107
104
56
122
199
137
148
105
110
130
134
92
146
92
56
55
93
138
144
105
101
37
105
67
121
144
77
99
138
67
37
67
83
91
123
101
87
69
95
67
123
138
92
105
105
128
55
37
110
110
144
92
92
130
171
55
180
138
139
112
95
138
169
67
104
112
137
92
152
140
144
152
87
103
138
67
110
67
140
96
92
92
110
101
75
110
69
92
79
158
158
92
80
111
37
138
107
135
69
37
125
105
139
110
86
112
162
98
99
83
106
126
126
138
178
123
110
67
56
105
143
92
119
92
37
136
105
129
128
37
77
136
126
69
69
92
146
130
130
93
37
147
92
55
92
110
119
55
77
92
74
119
134
68
114
107
93
160
146
98
99
93
56
123
127
146
126
92
37
111
55
55
123
127
120
169
94
92
99
156
146
67
88
126
138
55
120
104
105
92
55
91
134
148
101
167
123
55
110
126
102
80
122
55
75
105
138
37
122
110
115
180
55
188
110
104
139
178
124
92
152
56
127
56
108
152
146
110
107
97
163
138
127
92
117
134
37
92
128
111
106
93
55
138
144
37
101
92
103
56
92
55
69
126
86
104
37
69
146
123
104
122
69
105
135
122
93
138
104
140
126
86
92
120
67
101
120
130
140
100
115
77
123
55
146
92
93
69
110
92
126
98
86
119
126
92
105
69
104
97
92
92
178
105
102
83
74
55
127
67
115
58
127
105
122
140
110
74
122
148
37
137
128
126
110
126
122
92
99
169
99
97
55
115
114
79
98
178
127
58
80
105
86
103
75
109
126
122
104
78
148
139
145
58
79
110
127
92
123
127
93
131
122
110
37
93
145
126
127
122
114
67
146
37
180
122
92
105
109
105
124
152
55
104
107
104
69
128
99
77
112
130
148
75
93
104
178
56
112
131
77
101
67
114
137
110
138
92
55
105
79
104
109
67
124
55
104
58
86
69
69
68
108
148
127
104
139
146
100
105
137
110
92
55
55
67
37
107
88
146
92
117
104
113
144
86
144
98
78
69
98
123
88
127
92
111
83
57
104
92
55
110
55
128
105
164
112
75
55
97
79
109
92
55
79
124
86
123
138
127
77
105
56
56
84
79
98
93
55
105
37
110
102
92
119
136
68
152
86
107
93
104
138
93
168
118
93
178
98
74
93
136
152
110
128
91
123
92
92
56
122
56
91
152
139
178
67
178
75
128
74
67
92
106
144
127
160
123
106
67
67
56
55
107
86
148
158
110
103
92
104
55
138
124
41
138
110
37
124
56
58
139
87
138
67
117
109
126
103
118
67
103
67
99
102
146
79
182
127
55
122
89
148
124
107
91
55
105
138
155
146
67
92
55
92
55
92
107
69
37
126
106
119
127
104
180
104
139
171
144
148
138
158
117
121
134
114
67
75
58
92
126
92
140
86
138
126
99
92
67
156
138
55
180
112
77
55
171
56
138
77
55
37
98
122
178
162
67
69
117
146
91
126
103
121
79
127
128
86
127
93
107
110
146
140
58
86
119
163
107
98
79
92
128
144
92
138
119
138
135
122
92
97
126
122
67
86
103
127
103
140
126
139
126
105
91
55
119
138
110
110
93
55
92
76
110
99
79
158
111
126
111
103
75
138
86
130
127
55
110
86
92
110
110
92
126
146
146
138
84
114
55
139
37
126
111
127
92
92
199
124
128
93
64
92
139
178
189
92
92
158
92
115
79
152
105
121
92
75
67
128
67
142
67
111
127
103
105
156
139
92
55
178
122
144
99
122
148
158
91
128
83
69
75
122
123
55
106
119
93
69
37
108
160
55
92
55
80
112
139
104
128
77
107
178
126
144
55
67
92
110
37
58
97
110
109
56
67
92
55
119
110
110
95
144
163
107
104
132
55
104
126
55
103
99
169
97
105
122
127
55
86
84
110
56
93
93
55
148
111
104
37
126
67
122
105
139
146
93
99
115
37
139
122
105
122
128
77
111
134
55
67
105
92
92
75
92
58
86
169
140
92
126
136
67
134
114
122
138
178
89
146
122
92
128
79
178
104
126
138
144
122
86
56
122
37
199
56
92
55
109
121
74
115
104
92
139
148
69
74
79
132
92
92
122
146
79
178
122
123
110
122
91
126
104
163
67
139
107
139
137
58
92
105
117
140
143
146
110
92
118
148
152
126
152
110
37
55
138
105
100
104
68
104
126
110
108
146
122
126
158
138
132
111
100
180
68
58
144
171
119
127
158
138
134
114
128
110
123
93
134
110
140
158
124
67
152
55
123
132
58
107
148
178
58
122
105
168
88
138
105
126
178
56
92
92
85
101
56
138
58
79
139
110
127
123
130
138
86
58
107
140
119
77
58
93
105
37
56
68
102
129
105
127
109
110
83
58
69
110
122
55
162
126
117
110
79
93
56
109
123
165
83
104
92
69
56
110
122
105
55
144
137
99
67
112
105
92
144
91
131
92
69
83
37
80
55
115
92
110
99
124
105
92
83
124
79
84
67
108
92
168
69
84
92
118
110
123
56
139
121
55
140
104
88
115
122
104
105
107
37
111
180
144
88
139
110
55
92
83
55
148
92
122
123
37
111
138
56
119
74
104
93
127
105
123
86
117
93
136
110
56
114
107
92
115
69
102
104
127
111
152
130
165
110
140
126
131
122
123
122
169
110
110
178
93
114
101
104
138
69
77
139
127
127
69
86
127
140
104
37
87
144
119
145
144
81
74
92
86
178
74
86
67
171
78
93
171
74
123
162
126
131
98
93
87
123
126
86
37
122
123
124
92
92
56
55
105
122
121
104
126
55
58
55
167
144
126
93
110
58
37
122
55
168
128
37
99
92
128
69
58
123
69
110
126
105
103
110
127
92
116
100
139
144
119
122
103
153
112
76
146
86
118
138
146
119
84
128
74
131
126
122
74
55
74
104
37
74
68
55
97
140
68
79
95
55
123
93
92
110
92
93
117
92
104
55
158
131
86
105
145
79
92
91
93
92
98
134
110
110
131
69
69
86
178
98
69
37
158
107
55
130
128
96
124
119
111
86
124
92
55
199
55
177
55
104
84
110
140
93
77
67
37
99
105
92
132
92
131
58
146
67
77
137
37
76
102
93
105
131
103
152
112
136
56
168
77
37
110
69
92
76
148
114
123
83
134
148
58
111
138
83
92
74
93
56
67
122
107
126
92
119
83
105
115
144
138
192
171
67
144
146
55
122
122
122
92
146
124
86
122
122
126
110
58
92
93
129
169
119
128
86
164
144
140
132
56
86
69
55
122
110
55
118
92
168
56
37
58
131
104
139
69
122
75
69
138
119
126
122
146
77
103
55
120
105
105
67
111
105
138
37
92
108
152
127
105
100
128
79
107
169
122
79
146
110
127
99
111
123
139
105
92
121
95
56
119
110
92
56
79
107
92
56
106
37
91
109
127
122
178
126
37
178
120
138
119
122
56
169
134
124
126
134
138
92
37
171
145
79
119
126
93
92
81
91
168
122
68
55
55
123
92
37
37
123
86
92
111
138
58
131
122
92
55
106
55
126
97
69
92
126
104
84
139
122
83
58
134
148
139
67
122
158
92
100
127
120
123
86
107
105
95
91
169
92
91
37
110
84
158
58
169
58
86
37
89
92
146
178
93
123
74
139
55
152
97
139
105
56
110
128
68
61
56
169
86
111
162
37
140
136
146
180
134
163
105
192
117
104
144
37
99
122
74
105
169
130
74
58
89
139
97
93
152
152
127
92
109
67
98
67
93
110
67
144
74
92
137
110
131
67
126
106
92
140
77
126
79
127
146
102
93
83
110
91
110
130
77
163
122
93
111
126
104
127
121
139
103
109
134
146
128
144
151
91
91
55
142
75
112
108
124
91
92
81
92
140
178
93
110
97
124
84
74
83
92
91
55
115
89
105
144
92
67
109
96
130
140
146
104
162
67
139
55
77
108
86
122
93
67
77
37
91
91
91
110
55
110
93
105
55
105
94
56
151
92
83
169
109
146
149
158
92
75
130
122
178
67
122
92
105
110
37
95
104
109
64
114
104
108
123
178
37
101
110
78
99
97
146
104
105
140
92
95
122
56
89
89
109
182
108
104
56
138
138
104
106
93
180
127
103
100
140
104
67
126
151
93
92
111
134
127
92
105
128
56
99
146
92
164
122
67
135
123
98
126
68
74
129
110
37
146
67
55
105
111
169
92
110
91
74
120
131
110
92
105
102
105
37
138
111
67
55
91
67
55
135
86
134
55
126
128
110
55
169
122
58
68
102
69
119
139
89
79
110
104
93
140
56
56
124
105
86
110
95
131
104
139
122
104
110
127
56
110
123
138
113
119
131
91
92
123
120
119
110
136
55
126
123
119
126
104
69
138
37
103
107
139
148
128
75
168
122
58
55
92
92
126
105
92
114
168
104
104
127
110
140
67
99
55
134
67
68
103
126
144
105
125
37
99
86
77
92
92
124
169
67
134
144
138
128
158
126
105
55
110
113
134
109
105
92
104
112
144
144
67
93
103
138
110
67
122
122
55
122
105
126
97
114
110
152
144
93
93
138
139
163
180
127
110
58
136
103
110
67
126
127
91
127
105
168
126
119
138
92
92
110
110
105
126
93
130
67
92
110
67
105
126
146
130
92
77
128
67
154
152
105
99
98
152
37
139
139
71
122
37
110
163
58
139
69
119
141
105
93
138
55
69
122
95
109
128
92
122
98
117
77
86
114
103
101
131
55
122
56
144
152
55
122
109
67
167
128
126
178
91
58
124
105
69
67
114
139
123
74
148
105
58
124
160
37
122
130
128
69
134
110
87
58
55
86
67
92
123
105
37
137
94
110
162
86
146
126
178
126
124
123
123
117
110
141
144
55
93
55
138
93
92
119
140
88
56
56
152
180
109
75
111
55
103
79
55
111
117
127
77
105
55
91
75
127
110
126
148
55
55
165
37
139
119
126
178
79
138
105
55
132
55
111
139
144
79
138
119
55
109
105
37
109
122
67
127
139
37
104
104
91
79
58
92
110
92
105
131
92
86
109
69
138
178
112
104
55
169
67
126
110
134
58
111
139
139
110
132
55
144
128
104
89
104
112
137
105
72
112
77
92
127
91
140
99
100
128
126
56
68
92
139
139
122
138
152
178
105
104
92
114
138
138
128
128
122
86
99
75
162
37
110
92
148
92
55
56
92
124
93
74
127
126
58
126
139
68
103
127
124
92
135
84
55
109
104
151
55
105
76
169
69
119
74
96
110
114
92
148
106
112
77
109
92
92
127
110
56
152
56
165
92
76
116
93
105
64
110
138
72
92
148
55
169
119
55
67
56
100
93
105
146
92
178
140
111
178
134
75
139
104
68
177
111
58
169
67
104
37
79
92
169
77
69
79
79
93
104
110
129
93
111
119
126
75
126
56
92
92
79
79
104
55
86
91
104
101
103
97
119
104
101
67
77
160
79
128
122
81
109
77
128
121
146
110
91
69
112
124
126
68
120
152
110
55
162
55
86
127
91
138
151
123
103
110
92
67
95
37
110
97
139
122
100
178
148
92
126
171
93
93
144
152
105
110
55
136
105
74
144
103
110
74
122
138
137
92
97
169
126
55
92
67
122
67
121
97
138
103
146
126
127
105
55
100
126
98
110
144
138
110
138
55
130
55
146
104
97
137
92
168
93
58
89
92
104
58
120
178
126
93
126
120
117
126
144
55
110
114
91
93
105
124
180
136
105
146
56
107
126
123
93
92
131
138
144
128
37
98
55
127
93
58
92
93
67
92
92
128
92
169
127
79
93
92
58
104
119
144
99
178
83
105
77
97
103
99
89
78
104
92
127
145
67
95
56
110
92
37
67
77
148
101
55
92
37
58
67
67
126
93
122
109
138
56
104
55
130
105
92
92
55
77
105
105
139
128
93
103
97
111
126
74
55
138
171
37
104
93
129
138
140
139
79
79
138
111
140
110
88
126
69
58
110
111
164
123
103
138
107
55
110
120
75
105
86
122
140
110
163
58
104
178
134
105
55
131
130
104
109
110
110
58
56
144
128
126
67
152
89
146
123
107
107
141
92
84
123
105
138
105
55
67
92
91
139
122
76
122
122
92
105
122
110
105
97
105
124
122
92
126
134
69
180
37
127
92
86
146
138
75
137
115
75
138
86
89
91
132
77
139
55
92
134
178
106
158
97
97
160
95
122
110
146
122
127
144
169
146
74
79
104
126
105
55
93
91
78
92
137
105
55
97
92
127
99
105
99
105
99
140
104
67
79
131
126
93
122
139
103
105
105
37
56
127
105
77
110
122
104
154
114
122
37
104
139
75
104
122
75
114
99
163
56
92
139
126
140
127
58
67
152
69
127
126
55
79
104
114
119
93
152
105
58
77
110
152
119
114
92
111
146
131
55
128
140
86
58
92
104
74
92
76
110
55
110
92
68
139
137
77
75
101
139
105
139
102
74
106
79
105
37
163
92
103
150
122
56
92
92
105
93
103
79
178
92
127
84
109
92
92
55
127
134
180
105
37
138
98
58
67
104
128
92
127
75
92
81
86
122
110
137
99
37
169
110
180
127
152
118
152
55
117
91
100
79
115
169
124
37
55
139
158
180
127
119
140
105
178
55
134
107
119
140
178
99
178
126
122
55
148
37
122
126
178
93
104
79
144
74
92
110
163
105
177
110
37
67
56
95
77
93
158
92
140
77
79
146
77
67
74
178
104
110
92
138
107
55
126
128
67
154
127
110
119
92
37
67
152
88
88
67
105
139
37
119
98
111
104
93
67
124
37
68
124
92
160
141
92
67
138
122
98
122
106
103
136
171
138
37
92
74
93
92
89
110
128
146
99
109
105
58
102
124
110
122
93
122
55
74
56
92
104
114
79
114
77
138
108
67
122
37
92
55
67
77
92
126
77
152
92
178
105
56
84
92
140
144
104
110
137
167
110
55
37
67
83
92
146
162
77
110
77
93
89
122
67
91
105
108
69
126
37
107
74
103
138
93
144
56
104
68
152
148
112
126
77
122
128
67
126
158
119
67
120
109
163
171
138
92
55
83
92
121
78
126
119
136
110
110
58
67
89
127
56
105
110
92
99
122
122
55
67
139
92
92
199
157
178
160
122
128
100
132
98
122
160
146
108
123
118
58
146
83
56
55
68
69
135
137
107
118
132
128
152
126
56
147
92
95
74
103
58
92
103
146
132
104
67
99
86
126
128
109
139
56
135
104
94
138
105
58
94
145
146
107
140
178
109
105
128
97
106
58
55
138
141
138
92
123
163
67
129
126
92
144
93
178
132
76
122
104
136
105
138
105
162
110
104
138
144
165
92
69
169
130
110
140
105
84
134
104
69
105
138
105
95
58
75
126
105
110
56
122
110
89
122
92
56
116
77
68
118
86
162
138
138
128
122
138
56
83
56
92
138
128
55
122
93
104
127
105
146
55
92
58
126
93
97
115
146
93
178
146
140
126
92
93
152
111
127
67
182
69
93
91
109
105
110
37
104
131
67
98
152
138
114
115
37
100
131
74
92
104
99
79
137
55
83
136
55
105
110
58
86
67
104
55
99
130
104
98
88
122
92
56
55
110
129
105
67
55
109
138
37
117
86
178
122
164
93
137
67
119
136
55
86
92
89
122
138
122
122
55
139
83
67
163
92
79
84
75
146
91
109
106
139
55
142
79
92
124
106
146
87
83
68
178
101
126
67
126
122
83
140
126
55
126
104
93
64
67
110
77
130
134
69
55
105
127
75
109
86
105
109
139
128
160
58
56
165
86
139
55
123
138
88
142
93
152
111
178
178
67
139
92
135
164
105
119
92
94
91
139
134
125
73
68
152
74
92
110
153
110
146
112
92
131
139
109
122
55
78
110
110
119
171
92
97
110
126
110
69
92
138
139
126
92
93
122
120
75
93
83
86
97
130
123
69
104
103
98
103
144
77
109
92
178
180
55
112
114
77
56
144
128
75
165
144
108
122
105
124
137
127
65
92
152
69
139
93
67
127
148
55
168
126
67
139
139
37
171
116
101
169
83
69
100
122
92
92
93
67
135
112
167
86
122
130
37
107
107
67
67
152
138
139
104
92
126
86
111
37
105
91
127
134
110
103
127
109
104
160
106
122
55
123
75
145
110
88
122
67
138
139
104
109
55
37
117
105
69
56
55
93
110
135
91
122
99
68
105
144
138
37
144
67
105
67
58
92
58
119
123
100
98
110
180
110
56
128
111
92
56
92
119
110
139
106
128
127
79
131
139
129
178
110
138
124
163
127
74
86
94
55
137
110
92
74
122
126
37
91
86
127
171
55
128
118
138
138
92
110
92
56
138
128
74
134
86
130
86
128
130
124
93
128
131
162
110
105
101
89
75
122
171
146
138
119
178
102
131
56
111
148
37
178
137
67
69
95
92
55
56
56
67
122
139
160
146
134
67
67
118
105
37
105
92
111
101
123
111
104
104
117
126
67
110
127
92
127
109
136
83
56
56
105
139
122
94
92
138
126
127
109
55
169
163
165
67
139
122
68
58
144
37
197
77
105
103
110
37
86
118
124
139
119
69
109
104
139
169
55
138
152
105
104
92
144
105
92
122
144
67
77
138
140
163
91
110
146
37
92
56
138
77
109
110
105
138
141
122
138
146
140
169
137
138
92
122
56
130
55
79
132
110
129
122
104
124
138
126
55
56
105
126
74
178
37
105
178
108
126
103
132
152
92
92
119
122
178
122
104
109
74
111
67
111
134
105
110
92
123
86
105
146
104
126
119
152
140
56
68
119
92
107
117
92
152
77
117
92
55
138
117
86
111
105
103
104
122
127
91
69
162
126
80
164
138
149
101
178
69
139
56
93
126
92
140
168
78
79
146
122
86
104
127
139
111
56
55
58
108
182
92
99
79
79
74
92
56
77
138
139
55
92
92
92
105
77
128
178
99
137
101
199
148
55
56
92
69
130
77
58
125
105
58
84
91
110
171
58
160
83
55
92
55
158
139
197
92
126
69
137
105
146
98
97
169
140
56
92
77
90
138
105
114
105
92
122
92
130
126
91
120
56
55
120
146
93
105
92
146
105
138
126
110
110
122
55
146
105
75
78
112
141
58
122
85
136
77
79
55
122
146
107
138
126
92
83
92
171
121
98
119
178
131
131
103
169
139
55
138
144
75
92
141
107
88
103
132
171
138
56
97
111
122
104
138
67
109
165
178
126
58
122
95
134
128
178
169
152
105
165
123
67
109
86
56
92
125
109
96
140
102
139
169
140
108
89
107
137
165
131
67
58
86
92
110
136
58
93
55
106
149
92
171
91
128
111
131
134
127
83
100
128
128
75
127
144
131
105
107
96
134
132
72
56
97
152
143
122
108
56
101
126
122
140
56
126
146
92
138
75
144
86
138
92
128
138
67
123
139
128
138
122
55
134
55
103
92
122
127
86
55
118
124
180
144
79
105
56
55
109
55
146
199
92
55
92
107
97
92
111
178
104
139
56
139
92
55
119
56
178
130
55
137
92
152
67
109
140
148
102
84
104
88
138
145
152
103
93
55
139
37
122
178
105
126
84
148
102
119
79
136
169
128
115
132
55
104
55
169
119
75
122
86
126
67
126
110
148
138
77
128
111
55
97
126
122
110
74
56
109
91
169
104
104
138
97
120
146
91
90
37
128
74
104
162
55
122
83
88
99
134
160
164
128
93
178
158
67
110
92
67
139
128
169
132
110
110
127
139
92
92
92
138
105
134
86
97
138
138
79
102
93
140
143
98
105
103
92
126
37
127
99
79
56
124
93
91
139
109
178
103
67
86
110
140
130
122
158
146
169
123
37
58
55
178
122
123
110
122
146
126
37
56
111
118
92
55
97
91
138
117
37
92
122
126
91
113
119
150
68
77
92
178
129
98
122
131
74
79
110
104
126
79
110
138
146
109
95
107
67
120
138
74
138
56
105
109
105
115
55
109
100
92
37
104
55
141
110
139
110
138
163
110
138
171
178
74
152
93
168
98
37
93
104
93
126
55
92
37
88
119
86
92
141
97
92
77
138
180
111
92
58
130
93
109
189
108
83
106
163
144
100
152
91
56
67
122
96
105
126
91
131
120
168
67
188
95
140
111
126
103
93
99
119
89
86
127
92
110
95
99
83
37
111
122
146
67
67
192
97
101
93
124
125
109
97
146
128
121
122
97
104
127
64
144
128
104
128
126
122
37
110
122
55
93
111
139
168
74
75
105
89
122
79
122
158
91
67
126
192
91
92
102
55
110
55
109
138
139
103
138
126
110
127
124
152
105
111
74
119
122
37
169
123
111
55
146
105
104
118
89
139
128
55
140
127
131
55
152
139
119
37
134
97
146
110
77
110
110
92
111
127
122
110
58
37
55
55
139
79
67
120
120
127
114
178
138
37
110
130
146
58
144
127
178
55
105
55
144
138
105
110
95
107
128
144
169
140
92
105
122
147
67
158
122
105
69
75
178
55
91
104
95
104
92
122
134
105
37
55
126
140
120
37
117
120
120
135
91
56
91
55
127
131
127
139
139
98
92
98
105
122
134
121
97
122
92
109
67
110
91
93
56
128
134
37
126
89
104
115
68
92
109
103
101
84
56
178
68
126
68
126
55
124
118
102
105
105
55
120
171
89
124
148
92
122
109
105
139
128
92
55
56
111
99
92
55
156
122
100
105
110
37
92
86
127
78
105
92
79
141
86
110
92
105
162
104
37
138
169
123
99
162
162
67
178
107
169
92
55
86
118
178
119
140
144
110
110
101
111
110
92
137
138
92
126
103
55
109
131
158
122
92
105
126
105
110
152
55
69
180
58
55
79
126
97
124
37
87
178
93
69
131
111
199
105
123
55
94
163
119
144
126
127
93
99
92
69
128
132
105
56
99
110
178
103
127
144
97
114
178
99
129
77
138
105
74
178
163
92
126
128
119
58
144
138
124
146
132
134
132
126
146
122
74
92
163
77
127
152
74
74
149
37
124
152
88
110
105
55
146
37
105
139
128
118
144
111
126
58
117
67
74
135
144
139
124
104
67
93
92
139
135
119
128
128
79
110
55
146
146
124
99
67
126
92
134
115
118
58
93
112
95
152
123
162
139
74
55
86
55
117
111
99
144
97
152
56
126
138
74
122
149
58
92
130
122
83
55
85
130
158
128
98
109
75
122
109
136
55
104
89
138
55
69
111
74
168
84
110
126
56
99
37
109
37
108
122
86
144
130
69
93
105
68
86
120
126
178
110
105
138
37
178
105
69
126
37
140
128
122
122
178
103
56
93
138
119
109
55
146
37
92
92
168
92
109
163
152
55
105
94
67
126
67
58
114
55
67
126
146
37
105
152
139
97
67
91
110
110
92
74
91
128
92
55
110
79
55
105
55
37
122
89
125
107
69
119
67
134
163
64
138
107
148
178
121
67
37
92
55
92
58
86
105
105
120
192
74
92
104
99
144
93
148
79
93
122
84
92
110
55
67
75
158
55
109
138
67
85
100
140
37
117
74
122
109
105
137
122
120
122
146
92
37
55
99
101
108
110
79
110
131
92
128
162
138
55
139
55
138
97
95
107
56
158
93
135
95
37
37
105
146
86
105
119
107
67
91
178
144
110
163
132
137
126
134
100
92
171
103
55
84
92
83
163
93
127
55
105
105
58
91
139
86
97
109
58
93
140
129
77
56
67
158
159
128
128
92
139
182
92
92
180
55
91
92
110
84
131
99
146
123
122
77
146
56
79
92
108
91
126
55
98
89
89
111
99
138
152
86
119
67
110
91
158
127
92
105
122
123
56
77
122
86
122
110
114
68
106
91
105
126
86
110
128
139
110
129
143
55
79
37
139
126
71
144
138
92
126
67
138
77
136
92
122
138
97
132
58
93
67
109
122
122
171
93
56
111
126
105
100
93
77
67
92
122
58
84
124
55
104
102
104
138
148
139
139
58
148
85
178
83
109
58
126
37
111
56
138
107
92
93
55
92
56
167
107
111
105
58
99
146
56
55
77
92
122
169
95
122
112
122
86
126
86
112
99
81
93
56
134
115
58
160
74
151
93
122
152
104
169
178
100
107
140
97
56
127
141
122
134
114
139
151
138
84
105
112
79
55
137
92
104
101
92
55
110
79
95
104
93
55
69
56
109
110
91
138
56
55
67
105
68
55
92
110
86
122
135
128
56
56
91
135
56
68
119
55
55
67
105
138
67
127
69
94
58
169
144
152
152
152
117
122
104
127
56
92
93
99
86
92
126
127
81
108
107
178
119
123
73
84
93
106
122
105
74
112
92
80
109
67
56
84
92
92
126
69
103
67
157
169
69
105
126
65
109
122
127
152
110
110
92
56
178
128
92
110
110
98
149
167
134
111
102
119
68
122
105
109
67
55
127
135
92
56
55
127
135
126
134
122
89
139
120
140
138
55
112
110
119
58
115
127
68
75
140
91
138
86
152
37
110
142
56
55
99
93
93
146
67
163
153
110
167
105
99
119
64
86
83
128
110
93
111
138
107
92
103
112
109
124
93
104
126
72
151
139
112
117
67
152
127
86
146
126
110
126
67
107
37
94
151
126
131
105
126
105
122
138
92
86
138
55
178
100
146
55
169
58
126
107
89
56
131
92
86
72
93
103
103
75
93
55
122
68
122
93
67
37
112
99
55
37
110
136
111
139
83
152
112
105
127
106
104
152
127
131
127
127
99
67
123
86
69
96
93
138
140
103
79
69
55
103
178
93
107
68
92
111
144
105
92
146
130
144
110
98
138
144
93
78
165
139
110
138
130
140
107
107
139
96
160
104
37
105
55
92
110
92
126
127
75
122
58
99
139
138
139
55
103
69
122
138
86
104
126
128
58
139
108
126
67
126
99
92
132
136
77
56
139
55
163
138
171
93
105
55
91
55
104
88
127
118
168
115
92
55
100
76
127
178
119
92
110
55
152
126
122
128
94
120
127
99
75
110
58
146
69
124
119
37
127
110
55
178
93
105
131
128
58
55
139
128
92
79
58
119
124
105
122
83
126
104
126
99
140
105
131
111
55
126
91
138
99
105
130
162
86
37
104
117
120
132
83
105
111
104
156
67
137
93
147
126
140
89
152
92
122
105
109
79
146
138
122
88
138
83
178
93
199
73
56
99
142
178
126
168
56
110
140
78
169
152
121
126
58
55
91
124
107
127
92
144
92
138
93
55
131
105
110
139
99
120
55
77
122
101
104
58
110
169
92
104
79
146
107
75
86
110
122
69
105
138
135
67
37
86
123
92
55
127
105
104
75
162
92
92
152
110
119
104
111
105
55
138
168
84
110
75
74
58
122
138
178
123
92
161
126
91
110
104
56
139
105
74
109
104
139
127
127
97
58
126
138
139
135
91
56
127
101
67
148
110
120
178
126
163
95
74
105
67
105
86
91
99
126
37
110
107
91
99
86
105
104
145
55
126
122
92
110
178
55
122
128
178
74
92
69
55
92
108
122
104
102
92
57
162
138
92
105
74
150
68
124
99
124
110
131
126
77
127
98
92
115
74
128
88
117
158
111
105
67
101
130
120
93
93
88
75
83
67
122
86
123
77
68
136
86
139
58
127
119
55
86
103
171
169
37
110
122
111
92
126
104
69
58
107
144
122
128
55
110
74
122
84
139
134
99
104
37
105
92
118
144
99
135
93
86
140
110
105
95
119
144
123
123
152
111
55
178
178
86
126
163
140
83
146
122
69
87
69
86
122
79
126
181
107
110
75
91
91
158
104
95
104
122
86
92
118
128
99
58
152
124
132
127
132
126
91
122
79
103
110
67
127
158
109
134
69
58
55
110
134
80
55
126
55
107
126
79
91
138
127
110
114
148
138
122
146
171
122
108
132
108
105
92
115
138
111
104
86
126
109
74
105
92
121
77
86
104
126
106
162
92
138
178
130
128
104
111
69
58
126
55
67
110
142
138
92
110
75
124
113
93
91
99
115
93
146
58
122
92
139
132
55
124
101
92
117
122
110
171
120
92
131
72
93
178
92
152
55
55
162
178
138
77
105
58
102
110
67
103
92
103
145
122
145
77
131
104
83
55
146
92
178
58
111
67
92
69
126
116
169
92
74
110
92
111
56
67
55
117
92
127
180
104
144
138
92
69
111
119
131
122
56
107
122
69
98
128
55
126
130
77
67
127
178
138
138
171
144
79
93
134
80
109
126
110
79
111
92
136
140
58
69
110
110
58
104
123
86
83
140
138
108
37
110
126
144
104
163
105
86
126
55
86
138
126
139
103
112
105
110
92
123
122
78
138
144
81
119
139
93
126
109
104
130
56
58
92
87
55
113
58
107
109
77
86
148
92
99
139
139
64
144
122
75
67
138
122
126
112
124
56
105
110
92
92
130
146
89
123
88
122
138
138
121
92
164
109
55
122
79
99
55
86
165
138
98
126
93
93
95
123
126
126
148
123
113
55
134
171
119
92
127
95
55
163
69
105
113
160
122
67
138
67
119
109
67
127
122
110
144
138
178
118
111
158
117
58
117
149
55
104
76
105
81
98
182
92
105
121
158
122
99
111
93
112
55
126
164
107
55
56
74
169
55
93
93
136
109
139
56
109
124
55
69
97
92
110
55
138
94
123
104
69
122
124
103
92
119
91
127
178
140
105
119
126
136
72
92
103
58
126
105
126
55
110
126
129
92
107
122
127
120
105
105
122
110
55
180
169
55
55
110
102
140
171
58
99
122
138
144
74
158
110
92
55
136
67
169
122
79
114
144
122
68
126
110
111
139
110
110
55
106
86
110
37
37
169
123
141
162
126
122
122
120
104
55
83
105
105
134
124
138
86
158
171
55
126
84
93
146
126
91
124
91
75
139
67
92
137
56
81
139
128
37
55
178
101
105
146
37
123
37
188
110
100
169
122
135
109
110
104
56
110
67
112
120
135
104
55
109
78
100
126
119
111
91
138
124
178
92
105
77
158
103
139
122
110
67
105
55
122
77
133
86
110
93
127
126
67
86
158
103
56
110
104
169
93
134
92
162
171
152
102
122
109
130
105
92
142
74
126
138
110
146
152
118
95
56
109
69
127
122
56
105
162
108
144
93
56
93
100
126
110
105
138
86
77
92
146
55
139
171
56
124
78
106
74
146
146
122
69
79
107
110
110
144
162
119
55
122
92
119
92
152
86
92
147
111
55
79
178
105
126
160
139
127
135
128
92
152
56
169
146
58
103
91
67
88
127
93
56
55
68
117
94
127
139
92
148
135
127
122
69
94
67
110
151
105
92
99
120
67
122
110
105
178
55
124
103
105
163
56
97
114
74
171
37
109
56
114
119
138
122
138
138
138
114
152
110
98
107
92
144
97
138
99
123
56
105
105
105
98
144
110
122
110
122
106
92
152
180
86
55
138
106
192
114
104
136
101
146
122
122
139
144
139
101
110
127
105
55
146
37
122
138
138
114
178
56
122
146
92
79
113
178
106
130
37
92
178
56
74
130
111
150
109
105
109
64
69
79
126
67
69
75
55
112
92
86
138
140
107
126
122
77
115
55
123
55
105
109
77
111
109
58
169
92
163
109
106
37
140
107
67
55
110
110
56
91
122
105
55
55
118
111
67
79
104
138
55
164
124
110
119
134
74
158
79
86
37
120
93
138
178
56
126
139
69
152
140
144
37
144
178
84
58
146
92
123
84
146
117
86
93
104
138
97
80
95
171
92
134
136
107
136
126
147
104
122
99
55
158
139
130
126
127
69
122
86
77
105
55
58
99
86
119
69
139
92
93
67
97
105
152
136
69
79
110
125
105
98
55
126
152
105
163
67
178
69
126
83
69
55
126
67
182
69
122
111
67
136
132
136
126
94
114
126
111
152
58
92
92
152
139
56
139
164
152
109
58
91
105
92
55
97
103
111
107
74
140
169
148
105
55
139
122
79
178
122
140
110
107
146
91
130
109
55
101
104
127
75
119
69
92
142
93
128
110
108
56
105
77
107
95
107
86
67
144
178
139
139
103
139
67
92
56
144
108
55
126
75
165
93
93
180
104
169
56
139
68
92
101
125
119
162
119
169
111
110
77
109
56
110
136
180
86
144
103
58
146
92
126
110
120
169
103
169
105
126
92
79
69
56
117
122
158
92
131
107
107
168
97
111
74
68
105
107
105
140
122
109
113
122
127
122
135
100
67
56
92
122
37
119
122
128
138
69
37
92
126
102
163
127
141
169
97
67
83
138
119
111
69
111
37
92
139
178
37
85
146
91
122
144
132
114
105
105
105
171
138
85
127
110
109
110
99
148
92
111
126
55
128
162
92
110
110
110
77
84
138
106
128
163
139
56
92
93
138
99
67
100
122
92
104
55
92
55
148
92
139
131
91
104
80
103
121
139
152
74
140
123
122
92
77
122
110
127
69
105
124
137
110
102
115
159
92
99
110
141
126
56
91
119
74
103
169
169
122
112
110
110
148
144
139
122
126
156
128
111
67
128
67
74
107
124
138
56
122
103
119
100
107
67
55
86
55
114
56
93
152
163
138
128
93
79
97
137
104
92
89
111
37
114
128
117
99
58
122
139
117
56
91
58
99
56
112
110
92
128
91
92
110
126
68
146
110
152
104
92
37
110
141
110
127
71
92
83
79
58
110
127
102
103
92
121
92
110
178
111
93
138
148
110
126
105
58
107
56
74
92
119
110
110
124
119
67
126
89
146
127
139
112
130
169
72
93
119
107
139
107
140
110
101
55
162
93
126
144
67
127
126
122
55
119
127
104
58
79
178
147
98
126
103
122
146
144
55
105
100
139
77
55
78
136
92
103
97
127
141
110
55
138
110
126
103
79
104
127
69
97
138
124
103
97
37
152
178
126
137
92
138
55
104
77
110
102
92
122
104
122
105
113
138
148
56
69
118
123
128
146
109
128
84
144
112
122
107
163
89
92
126
178
146
114
97
118
128
88
92
67
140
92
126
110
74
67
122
122
178
132
56
103
110
67
105
122
98
138
104
56
126
134
128
122
92
58
108
123
148
67
101
126
137
69
111
84
92
86
68
103
58
67
139
79
146
56
111
93
92
110
122
159
111
91
104
136
67
139
69
84
101
163
126
79
58
98
84
99
104
122
126
140
58
139
89
105
131
74
104
160
117
99
84
122
69
55
140
111
152
111
55
127
138
138
99
74
104
110
92
67
105
130
97
110
122
188
145
114
56
79
92
37
104
105
92
67
37
67
92
111
92
122
178
67
95
152
127
56
134
130
132
97
126
163
58
123
104
149
75
87
139
86
123
105
107
148
104
74
58
169
80
84
126
91
109
85
92
127
110
109
158
139
114
132
178
92
169
126
107
122
56
146
92
144
98
126
141
140
92
91
162
126
104
120
67
89
164
127
114
77
122
55
80
146
122
105
107
138
122
67
55
152
122
92
100
55
178
126
58
152
122
92
126
110
92
122
122
108
127
74
103
99
55
140
169
56
136
126
89
138
104
67
91
37
58
171
165
55
128
126
110
122
144
139
144
178
92
110
122
91
55
67
67
142
127
104
123
67
92
99
92
130
69
145
105
67
92
104
93
55
111
122
89
56
119
67
92
146
162
129
139
67
93
128
99
105
127
89
122
139
92
169
67
139
99
154
169
104
56
104
79
112
122
130
37
150
67
127
122
122
91
77
79
88
104
69
67
55
92
55
144
56
127
136
152
131
123
92
55
92
126
75
105
119
89
92
83
105
118
122
56
136
118
68
92
122
122
126
152
91
122
56
92
111
138
124
67
55
101
126
92
118
58
101
122
138
139
178
88
100
98
58
105
104
67
104
92
144
93
148
92
118
69
158
56
69
93
56
92
56
83
122
110
148
124
83
55
111
84
92
141
122
58
134
93
158
178
124
126
92
55
122
123
55
124
130
84
99
109
92
128
92
83
91
126
37
122
67
104
120
110
178
55
106
91
126
110
105
105
127
122
135
144
130
103
144
79
55
122
110
111
146
126
138
134
91
69
109
110
55
56
37
100
97
105
55
92
55
92
130
99
67
138
178
55
79
152
148
122
56
148
169
128
93
92
98
122
107
120
138
56
162
93
67
104
109
144
135
55
105
169
119
74
56
126
92
123
67
67
93
139
123
119
110
96
92
58
105
122
163
58
146
55
37
58
105
105
67
160
103
141
146
111
105
122
138
109
139
100
162
112
124
178
105
55
127
86
55
99
136
131
126
180
109
111
92
124
145
123
55
138
139
110
110
55
105
111
103
148
136
123
139
58
67
56
124
126
114
57
93
110
148
110
58
104
92
146
83
152
169
91
149
122
102
104
110
99
122
123
127
122
122
55
139
135
100
111
140
97
136
41
79
105
110
109
158
105
139
77
92
130
104
55
136
58
105
122
152
114
99
122
92
68
132
110
92
77
65
178
110
105
124
103
55
79
123
37
146
145
92
75
99
178
93
74
67
79
77
92
110
140
91
110
158
37
127
101
178
37
118
119
123
105
55
77
119
93
107
84
105
162
140
92
86
167
101
132
138
112
139
77
105
178
159
139
67
93
103
83
67
163
86
99
55
122
142
178
110
126
93
55
109
127
138
92
110
92
138
96
74
152
92
56
139
109
79
178
145
119
121
79
139
126
92
105
91
140
152
92
69
122
145
127
37
74
126
105
139
178
139
111
146
103
74
83
58
139
103
105
101
104
98
146
139
56
55
127
105
168
126
105
131
56
105
112
178
86
37
144
68
134
93
126
55
101
91
171
135
110
92
97
149
127
105
126
37
122
86
117
118
152
37
160
67
93
95
122
84
128
92
58
104
87
178
92
110
56
105
99
116
110
122
115
105
127
178
67
144
83
114
92
146
93
126
152
67
106
146
178
55
74
37
122
97
58
37
124
84
128
56
119
119
79
164
105
110
110
92
67
67
135
115
92
178
75
132
107
58
104
55
111
127
104
58
56
55
135
140
83
144
58
55
119
79
56
117
150
111
122
77
119
134
131
125
104
111
126
55
101
138
158
122
93
127
103
102
93
105
109
134
92
178
139
122
101
75
105
105
124
158
111
110
69
156
138
67
151
55
99
122
128
137
178
128
137
110
109
75
100
171
92
92
117
114
122
105
92
169
55
93
139
107
119
56
110
109
55
129
79
102
122
152
91
37
68
37
93
119
129
123
92
138
178
56
168
134
126
75
149
93
139
127
110
144
114
126
105
99
56
144
144
105
122
126
112
98
168
122
92
178
122
110
75
102
76
110
138
158
128
104
55
68
102
126
126
55
118
69
67
75
97
73
139
169
126
111
169
55
126
105
138
37
95
152
75
92
55
111
84
56
110
58
139
122
112
69
128
123
128
146
93
110
138
89
124
130
134
93
144
67
138
110
37
178
124
97
89
68
98
125
124
130
152
79
127
91
96
69
55
124
144
140
118
132
131
74
134
146
91
105
37
92
107
74
122
77
114
111
126
69
105
110
92
126
138
92
119
146
110
138
110
107
111
135
156
138
111
158
56
144
55
145
127
146
119
105
92
81
58
152
92
93
124
55
99
56
77
164
92
93
178
122
138
152
92
79
75
93
110
110
92
169
139
140
110
146
100
144
37
112
127
109
127
109
120
138
105
138
75
92
105
110
104
163
109
110
110
74
122
126
104
79
56
144
158
98
146
129
144
92
158
79
105
89
68
97
178
67
95
69
92
93
148
105
86
169
93
55
119
105
152
106
56
55
68
121
99
106
178
122
136
124
110
105
68
58
111
132
122
152
105
146
97
111
126
134
171
99
138
171
94
117
138
92
111
120
122
91
122
56
100
37
104
69
75
92
55
55
55
58
122
105
110
117
146
95
167
122
92
101
126
86
97
109
58
97
169
138
109
75
119
132
75
130
92
86
75
55
55
55
105
56
168
110
148
67
110
144
132
103
110
136
67
107
110
69
123
144
86
143
122
167
89
55
126
104
92
92
144
86
104
80
86
86
67
138
55
58
95
126
105
144
92
56
55
91
112
68
115
162
67
92
93
125
69
118
56
55
127
92
92
92
67
122
68
56
110
130
98
92
55
152
56
107
138
104
160
138
92
169
138
132
122
128
92
93
56
117
122
106
67
178
105
56
92
127
92
92
169
55
122
110
92
107
85
67
152
58
55
55
140
55
84
144
131
110
110
136
92
110
107
138
127
140
118
93
126
126
86
92
104
126
146
74
105
114
100
152
91
126
93
89
122
139
134
67
122
111
69
122
83
127
138
110
37
37
92
134
110
67
178
152
130
123
165
67
113
68
55
80
130
55
104
144
56
74
88
55
122
93
72
122
134
126
92
101
105
165
67
55
143
92
148
107
92
56
139
134
104
37
67
144
127
99
67
139
69
151
131
92
121
128
95
69
79
91
139
138
55
123
105
67
140
55
122
148
147
91
55
131
77
110
77
122
134
92
95
55
97
136
144
79
92
111
138
126
112
104
110
124
67
107
126
37
91
138
55
168
79
67
126
67
112
137
123
55
152
110
86
127
67
119
105
124
92
93
91
139
105
128
137
110
119
152
165
127
127
55
67
105
178
89
92
134
139
92
112
130
152
171
68
145
152
122
68
146
144
132
122
91
122
113
169
105
77
134
152
80
75
145
92
140
144
138
139
55
92
111
127
56
104
89
117
103
69
128
77
104
126
105
91
104
105
134
58
92
114
103
68
171
79
93
119
55
132
99
55
127
163
126
142
67
110
180
74
110
55
103
109
77
126
55
88
117
91
105
92
92
157
138
139
139
111
114
103
99
126
91
104
55
55
92
127
56
122
92
138
171
55
84
79
102
146
55
93
152
152
104
55
79
92
92
145
109
93
79
171
93
122
79
129
99
69
122
111
126
92
126
130
112
56
87
148
105
37
148
103
104
104
37
91
93
110
103
112
110
152
119
55
120
104
68
92
79
55
163
122
148
123
122
120
188
122
55
123
69
91
75
111
152
134
92
122
100
92
110
56
109
93
122
122
139
178
114
99
122
107
105
105
105
122
92
122
105
105
79
169
104
74
112
55
55
58
89
92
126
162
56
142
124
109
56
140
105
178
104
56
108
160
93
74
56
128
124
92
104
110
92
105
67
145
103
124
111
37
67
91
111
69
98
138
55
178
58
130
129
189
69
167
98
93
178
122
124
110
99
152
55
91
106
55
111
56
152
126
55
146
92
104
77
104
92
37
56
91
146
92
108
77
126
55
139
122
125
55
110
68
91
81
169
122
105
105
129
79
93
67
111
79
69
91
132
118
67
127
93
123
104
148
80
144
79
180
79
138
148
86
93
148
110
158
55
104
91
86
93
158
142
77
128
104
165
79
37
104
124
105
92
136
109
56
145
107
37
98
109
55
69
110
138
127
80
144
182
91
92
93
74
130
126
122
77
105
91
83
142
86
104
171
86
69
126
110
126
91
93
99
69
163
79
123
152
139
92
128
105
97
104
137
104
152
128
114
86
80
86
99
104
93
100
111
158
93
111
139
92
124
148
92
83
104
128
138
92
92
110
119
152
111
68
105
114
138
144
104
124
55
123
67
119
127
58
105
93
171
128
77
146
152
180
79
93
98
122
107
86
110
37
125
95
110
128
105
164
110
55
123
130
122
168
58
105
104
93
137
37
55
105
108
108
69
110
114
97
136
132
69
103
37
126
104
122
58
37
163
55
67
55
100
178
93
138
152
128
96
140
84
110
148
159
114
123
67
111
163
67
109
92
110
67
111
93
150
144
55
106
68
75
126
105
169
83
91
128
110
178
111
102
124
130
105
126
180
58
93
122
128
110
146
84
121
99
113
55
126
111
169
56
109
126
37
123
123
134
92
121
68
75
67
55
69
68
91
104
107
127
105
86
110
67
84
105
37
109
140
138
139
148
132
113
148
113
140
55
92
178
55
131
104
92
144
105
145
138
37
55
104
108
93
123
171
152
126
67
56
151
107
99
180
158
122
103
105
98
98
122
169
118
169
67
120
169
122
86
93
145
122
101
86
83
146
112
92
122
107
105
122
131
158
85
117
104
130
146
97
105
127
93
104
104
117
122
152
122
146
67
67
77
93
123
67
114
126
156
105
92
126
67
128
95
99
188
130
145
92
104
104
122
79
130
74
86
169
127
73
69
144
105
123
109
110
102
98
126
122
144
80
105
117
88
55
55
58
122
112
67
55
128
56
130
68
178
74
152
164
147
110
138
134
91
37
93
117
89
93
103
126
84
128
103
105
138
122
84
163
92
68
114
138
77
107
56
92
122
105
95
122
56
110
152
58
109
37
92
55
56
169
55
98
55
115
104
55
97
169
37
144
67
144
103
56
67
127
134
37
75
92
74
92
83
99
92
139
92
58
114
111
67
178
91
178
138
126
75
92
139
107
123
109
74
110
127
164
168
169
75
55
92
111
91
144
139
98
104
92
122
110
84
139
146
139
136
119
127
122
171
77
55
97
86
73
109
168
102
144
100
110
67
67
67
79
104
74
138
67
101
100
92
86
83
93
148
56
146
91
88
67
126
169
144
92
149
111
104
138
93
120
112
37
101
86
126
105
92
55
104
139
123
169
103
144
83
95
92
127
100
149
67
160
119
83
139
58
136
92
77
56
126
104
126
122
92
119
97
92
103
55
74
128
92
128
56
122
55
180
74
104
55
138
158
56
119
37
95
158
126
97
104
107
101
67
104
122
144
98
122
67
126
56
139
55
55
120
55
106
123
122
56
89
139
167
105
117
107
126
74
124
128
110
89
97
107
169
74
123
127
92
111
119
104
147
67
105
134
79
92
93
110
140
126
92
93
122
110
110
126
182
58
140
119
92
144
111
97
93
55
117
58
69
56
122
55
76
124
97
127
77
132
86
122
105
124
69
119
107
178
169
134
67
92
148
98
110
112
86
91
122
55
67
93
119
117
77
119
178
56
134
55
67
111
99
55
55
115
96
124
144
127
138
110
93
67
58
162
92
58
92
91
83
104
138
127
108
55
130
140
58
92
109
107
107
67
107
178
152
104
126
127
91
89
128
103
146
110
92
101
132
105
138
131
104
55
104
122
105
58
104
98
99
127
146
146
126
97
131
104
55
81
55
138
106
171
86
169
101
134
92
104
55
91
109
105
96
78
93
110
55
93
37
83
148
69
122
180
80
180
138
86
55
97
93
104
83
122
180
146
122
103
110
113
91
119
101
75
130
130
93
140
134
37
127
99
78
100
130
111
91
68
145
131
139
100
97
74
37
67
104
139
138
126
75
74
169
118
128
55
138
92
122
127
55
158
79
152
120
79
92
104
107
180
118
118
111
79
110
58
93
126
98
110
88
92
148
146
93
58
95
55
125
147
152
156
126
75
105
67
93
138
107
119
100
127
75
108
37
119
58
37
92
130
136
178
142
99
37
105
105
148
178
56
55
125
67
124
86
56
67
69
127
122
138
146
146
139
89
104
147
146
92
169
69
93
122
168
83
86
76
119
105
105
74
126
56
178
92
139
139
139
71
129
122
158
115
67
74
119
92
126
58
101
122
55
67
110
138
123
126
171
138
119
139
148
75
83
55
107
122
124
130
107
131
77
92
56
58
164
138
103
127
89
107
163
180
117
134
126
126
92
134
119
122
180
79
199
132
122
86
88
100
107
37
122
127
122
152
92
144
86
55
111
76
77
98
122
124
110
105
105
147
104
92
152
77
69
84
171
95
152
110
99
67
56
126
79
104
138
111
67
79
178
138
140
104
122
141
180
130
75
56
139
113
106
136
127
69
134
58
138
144
128
105
136
146
104
111
146
103
58
77
101
37
144
126
86
110
100
93
75
67
92
111
101
55
99
74
138
76
75
67
89
126
110
55
144
55
139
92
105
109
86
122
152
74
37
138
105
178
37
111
79
101
92
146
55
161
127
69
106
84
102
92
171
120
81
75
124
104
126
92
169
67
97
101
110
55
37
104
110
138
178
55
138
138
110
67
119
165
146
105
56
104
178
103
136
56
92
67
123
130
75
122
93
104
104
67
102
122
93
102
122
37
130
123
152
37
69
58
92
67
110
138
79
104
77
126
123
114
169
77
68
58
140
55
105
55
124
83
137
92
37
58
134
132
122
75
93
83
122
152
111
77
99
105
138
104
126
138
55
126
110
56
92
164
91
138
178
93
165
102
104
152
92
91
68
81
122
37
152
56
67
159
169
91
88
126
140
139
145
93
144
55
110
55
69
138
99
118
83
146
138
67
119
109
134
118
109
92
69
107
92
77
55
55
164
147
138
144
69
110
98
126
79
55
55
106
58
128
152
131
92
104
67
109
139
67
119
139
112
127
138
128
104
91
37
99
145
158
128
180
105
109
55
88
103
127
100
92
79
89
122
121
56
171
75
105
145
86
180
104
113
122
138
134
93
58
110
58
92
105
55
67
92
120
56
67
105
152
105
146
93
98
92
102
56
144
105
126
139
126
122
126
92
127
97
80
135
126
105
110
96
168
67
137
92
110
126
55
144
81
92
126
93
127
126
56
93
58
127
139
141
146
111
122
56
110
93
92
165
110
179
110
55
169
106
55
126
110
162
56
126
100
88
126
111
178
111
123
138
123
122
103
55
37
87
126
169
74
138
122
126
107
84
84
104
93
79
89
123
55
110
88
92
126
119
55
37
144
122
152
69
67
56
117
126
152
119
83
74
91
77
109
122
122
99
92
37
105
160
119
55
93
86
131
104
55
136
139
169
110
145
126
152
114
111
55
120
142
126
55
58
91
122
93
104
150
67
55
37
111
111
93
148
168
180
58
91
124
119
91
83
55
99
105
122
152
123
77
140
127
134
110
72
109
76
111
58
126
92
37
165
110
56
84
105
93
144
98
139
130
91
138
147
110
178
74
120
92
55
102
130
67
126
100
104
75
86
92
122
138
87
105
163
178
117
122
110
182
119
93
144
37
99
110
93
95
169
167
67
67
139
145
93
86
107
92
92
158
107
103
92
122
126
77
119
127
56
58
111
56
110
68
92
105
105
105
67
158
74
55
132
110
148
104
77
120
132
80
79
111
126
122
127
37
127
99
91
75
105
56
126
75
158
55
105
104
139
109
91
108
179
120
83
67
91
101
92
138
119
92
146
105
68
97
129
107
91
178
107
105
110
110
160
146
119
58
138
111
107
77
105
55
67
132
55
110
100
169
122
95
55
110
69
138
118
93
99
141
122
142
139
37
110
126
126
92
55
72
83
122
75
93
127
137
72
67
165
83
127
86
106
77
121
122
67
55
120
86
69
137
152
146
92
141
83
122
86
67
91
92
67
123
74
68
92
138
182
77
92
165
105
77
79
74
126
92
165
74
138
74
104
37
104
127
131
104
108
110
140
105
105
93
124
138
126
103
151
178
100
110
146
169
92
67
91
80
180
158
93
58
104
81
77
97
138
93
112
101
123
147
127
101
55
37
56
55
99
86
107
104
110
122
130
92
103
158
58
104
98
93
146
37
122
139
146
78
91
188
67
152
81
92
140
124
142
138
92
104
105
74
111
148
138
69
178
93
37
148
74
37
92
110
128
110
79
124
93
178
145
56
160
139
146
91
107
144
127
92
127
84
37
37
149
37
74
125
58
105
138
84
134
110
105
146
178
105
92
55
126
113
92
56
58
117
110
117
123
112
56
93
110
111
127
67
55
112
171
79
37
104
77
58
69
122
137
140
138
104
122
120
37
81
79
126
138
132
142
75
146
91
67
84
167
55
131
104
86
58
83
126
95
125
105
69
122
37
77
126
77
96
56
126
58
144
79
178
122
92
69
68
178
67
139
83
149
37
131
128
84
124
69
109
134
92
107
101
67
67
178
122
101
92
149
55
58
131
144
123
89
136
131
105
122
67
92
163
103
138
131
135
79
139
110
103
92
138
158
178
111
112
95
119
122
86
104
126
146
99
145
110
110
91
122
110
112
67
123
126
86
126
178
92
139
178
105
130
37
106
123
92
84
110
86
171
97
123
168
110
134
127
92
126
126
74
131
97
104
121
144
79
92
93
126
119
98
69
92
138
105
139
178
95
110
124
67
37
142
102
103
125
55
77
79
92
79
67
55
37
124
69
124
129
150
92
123
69
110
135
105
37
128
58
99
79
138
122
120
126
106
140
67
105
106
126
123
104
69
165
122
79
152
158
104
105
79
104
107
69
93
92
55
92
126
152
77
169
138
126
122
121
140
92
67
117
111
180
110
146
122
171
146
98
67
158
138
74
93
79
67
101
93
140
139
104
138
100
146
169
110
128
74
110
75
168
168
182
171
104
93
77
138
130
112
103
91
111
109
125
89
122
55
67
80
105
58
152
122
140
160
115
105
92
140
111
103
152
37
122
105
110
144
55
109
128
111
122
146
127
110
74
122
139
168
91
83
117
92
139
78
123
79
91
64
139
122
77
132
126
110
92
113
93
111
134
110
127
104
69
122
123
84
127
104
77
138
55
146
37
110
93
140
126
122
88
104
126
163
74
89
91
104
138
136
162
138
56
162
92
91
78
117
61
127
102
76
37
123
67
67
119
109
37
110
121
67
103
111
146
55
119
140
118
55
122
107
137
105
122
123
91
126
122
83
92
110
126
107
104
67
92
128
126
107
112
110
37
86
105
55
141
103
102
131
127
169
91
100
37
110
178
55
127
119
158
69
124
67
92
55
77
87
105
110
192
55
136
152
83
148
169
122
110
132
105
97
92
79
86
117
110
111
37
110
110
139
92
146
131
67
77
152
74
79
92
56
55
55
111
75
93
55
178
139
105
144
55
93
37
58
74
169
165
120
104
139
136
67
92
67
128
99
168
134
83
119
134
56
102
84
87
67
103
108
58
112
126
122
56
126
127
56
92
111
122
112
126
55
199
100
152
67
126
178
55
139
138
58
138
58
69
84
56
112
55
92
171
91
93
122
110
93
110
178
144
149
146
56
92
120
122
199
138
105
92
136
144
37
92
122
86
144
178
86
55
55
128
178
55
130
56
55
74
122
55
131
111
138
105
138
140
110
163
140
122
56
138
110
122
122
129
69
114
141
126
91
77
126
105
110
110
67
86
169
117
58
127
169
178
55
146
182
110
127
77
141
146
91
92
111
58
92
105
110
110
99
37
37
55
126
111
84
178
55
169
86
58
105
109
110
56
178
56
56
127
152
110
119
160
55
104
128
56
56
152
92
145
93
105
56
55
128
112
140
79
105
76
127
55
124
86
93
92
110
132
139
144
138
97
110
162
130
69
92
124
119
88
92
135
69
106
110
105
55
132
146
168
37
119
122
139
92
92
55
68
118
158
86
92
128
92
110
139
152
134
56
169
144
67
124
106
92
86
122
92
131
103
106
127
110
69
103
126
103
93
92
126
158
83
92
92
180
104
138
112
111
110
55
132
75
97
140
126
128
126
74
128
67
55
128
138
109
102
148
69
146
144
144
69
139
132
119
103
163
67
138
56
105
83
107
92
97
127
110
68
67
83
138
126
91
141
148
126
139
56
83
55
55
56
83
178
110
75
92
55
122
144
37
128
93
152
101
180
126
56
122
110
127
178
136
99
67
107
144
104
126
55
163
37
83
139
67
105
151
93
92
156
171
77
111
126
67
74
105
105
111
162
75
152
101
126
105
171
128
92
169
119
84
93
84
122
110
126
104
138
107
69
78
123
140
107
91
92
86
37
111
67
92
69
105
56
107
111
107
126
145
169
122
110
110
178
37
92
56
139
122
178
105
77
69
146
79
178
110
114
119
122
139
152
122
93
88
67
122
88
123
120
118
102
119
125
79
122
76
110
110
178
127
67
138
126
114
112
58
104
162
149
122
101
109
69
131
58
131
55
105
134
101
123
132
126
117
103
37
109
108
178
145
169
55
102
103
132
146
110
78
111
138
56
138
119
109
55
128
122
130
128
139
122
105
77
110
89
58
55
78
95
93
110
119
197
92
138
105
178
107
92
58
77
99
93
150
125
37
92
139
77
92
37
105
152
128
55
178
124
178
104
67
93
99
139
127
111
55
79
92
142
67
92
120
92
37
67
110
139
105
110
104
123
119
123
67
55
104
110
55
189
92
86
169
138
131
92
127
105
111
160
138
111
91
92
55
178
56
138
77
89
104
146
37
122
126
91
158
78
84
37
109
138
130
122
55
92
92
138
123
112
121
55
109
103
158
93
107
67
146
69
122
156
92
55
122
110
128
69
138
112
93
122
122
83
93
128
128
105
126
110
67
146
105
122
37
91
56
75
77
37
107
92
138
103
125
110
122
77
92
83
105
105
169
67
68
146
160
103
144
117
55
162
131
122
136
55
117
74
80
111
118
152
56
126
79
93
55
139
75
110
67
98
163
74
158
83
37
79
105
79
99
77
148
128
135
92
56
105
77
79
128
128
55
126
107
92
165
92
105
75
123
97
152
123
37
104
37
91
139
104
163
71
128
142
122
68
104
93
169
93
169
93
92
97
105
89
126
92
92
139
56
86
56
79
37
56
168
92
58
67
180
128
74
115
104
75
67
106
148
99
134
120
100
104
67
105
138
68
110
68
144
69
55
127
104
126
105
58
97
146
86
105
126
126
105
110
138
167
67
171
103
113
110
93
138
55
92
126
92
101
67
126
86
77
146
127
104
86
92
139
119
86
168
111
127
141
149
178
138
104
92
118
126
144
119
169
58
92
55
69
126
77
67
130
75
58
122
67
74
171
92
109
78
93
106
122
55
55
145
111
102
110
139
165
138
55
124
119
68
149
92
105
74
139
138
126
132
56
37
110
126
138
92
102
93
77
92
55
139
144
56
122
139
139
105
138
140
126
74
140
56
104
110
127
67
101
92
112
131
197
58
92
67
110
37
122
105
75
112
56
137
104
178
75
122
105
67
91
105
122
104
91
122
99
92
180
119
92
92
132
68
127
111
78
104
138
91
67
134
141
119
119
93
139
119
139
93
92
122
152
110
109
127
117
110
104
152
97
84
128
111
112
126
128
136
139
58
126
164
110
127
101
126
81
68
178
92
86
132
139
78
111
123
148
102
67
92
93
122
163
160
105
58
105
127
144
152
122
127
178
122
125
160
104
145
178
144
92
56
145
92
67
105
171
121
180
68
92
169
124
136
93
92
138
99
74
115
86
93
75
74
92
122
74
67
152
122
104
110
127
104
178
126
55
92
91
132
79
83
119
156
126
105
99
123
127
56
171
91
105
86
55
55
92
77
138
55
178
86
122
55
132
100
138
122
178
91
110
119
74
152
110
55
67
131
83
110
122
110
130
108
120
122
189
158
111
91
92
105
139
122
104
95
55
128
141
92
56
91
93
145
146
72
122
135
83
105
56
139
112
110
127
145
67
116
91
101
81
55
122
148
139
92
122
147
37
110
178
92
92
86
138
56
108
91
123
122
58
122
104
104
92
55
55
79
37
84
123
91
105
105
105
104
137
152
126
107
111
152
168
104
120
139
145
58
103
126
127
67
104
119
125
99
100
84
55
105
122
136
104
178
99
146
138
92
178
104
92
125
37
122
120
123
93
110
126
114
146
105
139
126
105
111
93
178
148
148
105
126
67
92
110
84
127
55
126
163
112
112
132
92
128
127
91
138
122
37
178
122
37
92
69
104
91
84
146
105
104
92
131
138
199
163
55
104
110
146
92
69
167
126
92
127
122
139
58
138
84
145
165
110
178
146
105
163
55
109
109
104
97
93
74
106
119
55
67
69
127
146
99
87
122
77
122
126
85
138
84
104
152
110
122
146
119
56
93
67
93
122
91
152
92
168
103
86
127
78
118
138
92
169
103
93
37
122
123
110
104
138
171
103
83
97
105
169
180
105
37
65
55
56
105
98
55
122
67
122
169
97
91
178
92
97
140
98
149
105
92
84
93
83
104
93
122
125
138
111
93
123
79
140
58
37
124
126
96
67
67
74
152
98
113
163
112
119
181
138
58
126
102
104
144
148
79
107
75
110
140
67
92
146
104
123
69
67
37
101
122
55
104
110
109
110
138
126
139
92
162
124
109
127
55
104
58
88
58
134
105
69
58
105
165
135
93
67
164
69
118
104
104
56
105
122
124
67
110
101
126
178
138
92
137
58
58
104
83
110
103
189
110
55
126
55
92
122
104
68
92
77
99
105
110
127
55
75
123
158
124
111
104
127
148
137
105
124
148
55
139
138
138
122
139
102
105
107
92
92
93
58
55
75
109
68
111
122
105
74
118
118
123
103
146
91
119
110
86
93
111
55
58
37
99
134
134
93
56
119
132
137
106
58
77
105
55
68
126
56
102
74
91
69
37
115
91
138
102
77
104
178
171
103
117
97
99
123
110
138
58
84
75
110
92
92
79
75
77
126
160
67
55
55
55
128
140
139
129
55
86
122
140
79
179
92
75
91
107
110
75
178
119
67
104
122
67
55
77
92
105
158
139
92
110
126
109
148
141
91
55
104
119
112
124
110
114
99
122
111
144
126
67
37
126
128
169
105
77
136
103
37
111
75
55
132
79
55
141
110
162
106
168
92
56
117
138
132
144
56
178
108
92
97
139
109
79
91
110
74
55
100
77
126
86
101
58
144
92
92
107
37
138
178
123
149
112
98
171
180
92
100
93
122
122
81
142
131
126
92
74
139
56
58
178
103
139
91
131
178
122
105
56
112
112
69
148
83
124
55
123
110
165
152
126
171
110
68
58
104
55
128
110
103
126
127
84
110
137
122
74
55
108
55
55
67
112
86
110
139
105
138
113
105
178
104
56
144
144
146
91
37
130
117
134
100
97
105
37
138
58
86
111
126
67
123
67
126
91
93
78
101
100
145
104
75
140
69
56
128
67
56
105
75
69
107
117
132
123
92
92
110
140
55
67
178
121
152
152
104
138
77
105
120
104
139
58
77
86
93
105
79
123
104
69
92
134
169
138
93
165
56
69
110
55
110
56
69
56
138
119
115
119
67
146
139
138
122
69
98
127
93
151
119
86
95
105
99
112
104
55
89
99
140
103
55
55
97
102
110
88
55
123
142
146
126
110
104
105
165
109
37
124
130
98
58
152
86
122
110
92
97
122
92
75
55
98
56
137
119
114
93
92
77
178
111
160
123
92
55
92
126
112
109
93
122
95
92
122
110
55
98
93
69
37
124
126
67
37
105
127
93
131
126
135
169
92
89
92
112
89
131
37
138
92
145
83
108
86
55
88
132
93
37
126
104
104
69
93
103
120
138
146
111
91
144
140
56
110
110
108
178
58
130
126
56
75
107
58
86
110
104
110
37
75
152
92
55
88
104
56
91
89
58
67
122
109
91
122
77
91
117
105
127
126
127
112
92
79
104
110
119
77
132
152
119
138
79
131
55
105
110
111
126
131
122
55
92
93
123
92
105
148
103
169
139
92
99
128
79
92
37
126
74
86
55
142
92
92
138
130
69
109
69
79
107
138
93
131
92
69
75
152
138
109
152
139
126
91
134
105
113
105
178
37
37
111
163
126
126
109
91
128
107
138
92
55
111
122
55
93
105
122
56
75
92
120
148
122
104
67
127
105
131
37
83
56
138
92
128
118
126
122
55
152
111
153
58
139
88
134
119
169
86
138
122
69
105
92
37
56
105
75
95
144
134
86
112
146
146
92
110
119
67
122
80
178
105
110
138
122
138
105
119
168
126
37
110
92
67
55
92
93
56
158
79
122
124
110
100
145
125
74
140
110
119
105
168
110
122
79
55
131
79
145
189
152
68
69
138
84
75
55
167
122
111
74
110
109
92
105
108
92
138
110
77
127
77
136
55
91
95
97
107
148
124
126
55
144
105
140
37
138
56
107
122
126
92
129
99
56
141
55
110
37
94
104
79
105
110
83
68
132
123
110
110
92
93
67
131
67
92
92
55
123
69
55
126
104
92
55
104
139
67
105
138
69
122
111
126
37
55
110
152
167
92
126
132
130
134
110
103
109
79
92
77
127
69
83
83
104
120
109
152
138
178
105
152
105
99
56
67
75
104
92
138
118
100
112
77
67
91
110
93
75
132
56
55
55
77
79
99
55
79
120
105
127
132
101
88
120
110
126
144
136
129
122
122
134
95
91
179
104
138
98
151
105
167
105
138
103
92
171
144
103
122
114
58
99
55
104
55
68
84
80
148
144
58
75
111
99
104
92
69
86
114
37
97
69
136
144
92
93
75
86
79
128
122
119
144
79
80
140
122
91
56
58
109
128
144
111
93
55
124
138
152
144
139
122
126
93
84
101
138
93
126
171
144
112
105
92
178
105
105
158
55
55
92
86
68
109
37
55
93
55
138
126
126
126
122
68
139
146
67
138
171
122
122
123
55
55
120
119
56
89
163
92
67
123
86
126
104
138
37
128
113
56
94
92
138
136
88
92
58
55
79
139
138
92
104
138
56
98
139
122
138
105
146
138
168
67
138
110
91
92
144
93
138
171
58
78
92
119
55
79
58
104
138
92
106
67
107
138
119
97
55
178
104
104
140
138
56
137
118
178
126
98
105
110
56
110
67
123
158
79
55
124
55
144
126
56
93
110
139
140
55
119
79
58
126
105
83
168
91
117
97
37
58
122
124
98
58
128
178
67
92
67
93
103
55
110
158
121
92
89
127
169
98
125
126
148
104
74
56
134
58
126
105
148
100
106
37
128
98
146
67
138
149
122
127
75
86
129
178
110
127
128
93
55
55
122
126
122
108
55
101
144
92
146
123
146
55
105
77
144
182
145
178
56
136
178
139
138
104
74
104
140
139
58
139
98
77
122
102
55
168
138
105
93
110
122
119
104
178
152
122
126
152
92
120
122
156
110
140
134
105
138
92
75
122
121
74
127
138
152
92
152
137
138
120
114
99
105
146
58
104
69
110
110
104
92
126
68
75
119
122
138
122
159
126
92
146
123
138
55
94
67
111
129
105
100
79
84
110
102
55
99
92
86
105
126
139
91
109
178
126
163
83
87
55
37
110
104
110
107
168
144
146
127
100
126
122
163
122
109
106
110
67
130
58
67
55
92
122
55
127
92
74
86
120
134
93
126
152
92
93
126
122
67
164
126
140
127
101
138
81
126
158
92
79
92
95
55
58
122
103
122
132
67
93
55
98
67
122
132
104
128
86
55
101
56
124
58
144
92
137
130
178
92
122
131
112
92
95
56
67
144
123
55
122
152
144
100
55
115
110
111
92
92
169
78
146
37
93
110
58
131
105
78
58
122
122
107
152
69
139
58
37
111
122
55
122
135
134
105
139
92
97
109
126
111
136
87
110
100
178
114
75
55
111
110
146
55
37
92
178
119
122
105
146
55
110
123
139
93
105
144
126
112
180
111
93
112
126
138
74
67
105
105
148
100
138
75
37
138
105
126
122
113
79
86
91
93
144
69
93
100
119
93
138
129
124
122
122
56
178
119
127
119
67
138
99
111
55
79
122
67
152
37
55
114
58
92
118
79
92
83
58
111
126
119
110
103
137
111
152
126
122
141
105
139
169
55
114
107
122
55
68
55
148
86
152
126
55
132
109
37
56
74
104
77
56
55
55
55
134
122
93
138
93
110
169
37
140
92
58
106
126
124
74
89
138
152
163
128
169
119
102
92
91
92
69
131
105
93
178
127
138
86
56
75
92
79
55
102
77
92
122
139
182
55
130
130
56
110
56
93
171
110
122
92
92
92
105
58
102
119
188
58
91
110
138
91
91
122
144
123
122
128
131
105
110
93
109
136
146
110
145
119
138
126
167
144
67
55
130
92
117
74
114
84
110
58
99
152
91
136
37
138
75
55
75
123
91
101
109
110
91
69
199
74
106
178
139
93
144
117
104
92
138
83
99
104
105
77
152
136
110
103
69
144
92
178
77
67
92
55
83
123
139
122
56
152
112
55
126
178
136
88
105
92
123
81
148
124
76
56
92
146
67
92
130
58
92
58
138
91
139
106
114
124
73
99
93
127
128
146
55
110
56
122
105
75
92
144
109
127
105
118
143
126
104
119
152
134
114
144
169
123
139
105
97
104
120
67
111
86
103
105
120
110
110
138
55
127
109
132
55
138
56
119
144
55
92
110
88
144
55
122
110
139
104
129
97
178
92
110
134
105
122
152
92
86
138
163
178
109
58
120
74
55
111
37
123
138
144
118
86
100
72
104
55
119
110
110
83
122
56
105
126
110
132
83
79
104
136
120
122
110
112
122
128
162
67
110
118
104
137
110
126
103
107
126
56
138
92
56
109
67
122
122
92
68
103
107
86
133
93
126
56
55
86
138
122
126
109
93
92
107
105
86
119
91
37
69
126
128
126
138
134
148
67
55
67
58
37
126
105
126
112
92
58
93
180
105
86
111
126
144
37
126
67
117
110
123
105
178
55
111
118
112
110
117
110
118
122
126
104
168
103
98
56
105
123
134
178
105
108
55
130
97
109
160
126
121
112
132
95
126
146
139
182
55
177
103
86
96
83
67
126
98
122
93
83
130
55
105
91
138
109
37
124
107
69
124
126
93
103
67
55
58
111
138
138
130
152
131
86
69
55
77
69
55
109
138
105
117
110
149
92
83
139
135
92
139
144
112
86
74
109
139
58
122
100
78
58
37
180
128
86
188
126
69
68
55
113
139
79
109
93
107
134
56
55
135
79
126
126
98
86
122
162
79
77
89
122
92
151
127
103
75
105
55
79
141
126
95
144
138
104
119
152
69
75
93
93
111
37
110
122
93
67
152
92
86
139
135
69
124
55
92
104
134
139
140
86
56
108
56
138
169
92
178
37
104
92
107
92
111
178
58
139
128
93
67
55
199
122
67
105
137
55
92
138
77
149
139
127
126
122
99
56
138
111
55
92
92
98
122
103
114
136
109
85
55
112
106
55
115
107
126
92
148
56
138
37
152
122
104
109
112
105
92
178
126
138
92
140
138
55
79
68
92
99
126
119
110
146
99
121
98
79
152
92
92
125
55
128
144
169
107
178
86
55
124
64
149
83
119
108
56
162
88
144
86
86
131
79
93
92
86
106
93
55
92
37
67
140
92
110
37
110
127
114
104
92
55
122
109
178
126
126
79
56
120
68
127
168
128
86
55
128
122
110
99
178
171
55
55
152
67
92
138
178
127
93
91
92
92
171
58
98
169
132
107
139
92
110
144
92
103
55
131
109
75
92
105
101
128
135
55
55
75
105
100
128
56
77
55
134
37
92
37
79
58
125
109
122
165
178
109
127
67
79
99
139
117
55
139
122
148
139
178
139
72
104
55
152
86
92
55
178
118
101
105
126
77
122
178
137
126
138
110
93
139
178
92
100
111
122
104
105
126
92
135
104
122
77
58
68
55
83
92
126
86
105
139
92
67
111
152
104
93
69
134
146
79
130
77
126
105
139
102
55
74
67
126
92
130
55
55
67
99
99
83
128
178
91
56
56
169
118
55
104
91
138
93
105
162
126
178
123
123
138
122
92
110
58
152
74
104
125
86
107
122
104
110
138
55
110
144
122
138
92
110
92
67
55
146
75
92
126
126
91
180
67
74
84
101
67
95
156
104
110
122
105
78
139
105
126
146
89
138
146
79
127
107
93
152
92
122
126
93
165
122
122
74
97
109
126
91
99
107
108
105
69
119
178
138
93
118
131
127
93
111
131
125
75
86
124
107
93
134
110
58
72
55
83
160
58
55
96
105
127
81
104
92
92
93
89
68
118
130
92
122
91
123
136
126
97
74
84
137
100
105
92
109
55
140
126
110
104
111
69
138
102
93
104
110
105
106
105
105
37
169
92
86
107
55
138
67
126
122
138
92
91
92
123
112
127
126
107
126
104
79
146
67
73
89
128
112
122
126
126
158
75
77
127
138
68
103
168
56
160
84
68
139
109
107
138
111
69
81
127
122
140
92
104
127
118
37
91
158
87
55
138
110
86
126
144
148
100
152
78
55
110
126
126
109
55
91
169
108
107
122
75
99
139
152
138
136
152
92
106
37
146
138
122
119
146
105
136
79
97
55
67
138
171
134
69
92
124
99
79
109
74
103
119
105
156
146
139
92
93
58
126
92
86
110
117
111
92
122
92
93
110
110
58
99
94
138
56
123
110
124
55
37
119
126
58
67
92
139
119
55
74
138
92
122
67
110
103
127
188
77
92
55
131
123
107
126
109
128
126
152
55
37
77
79
119
146
139
142
146
105
77
91
92
138
109
37
91
79
148
105
77
100
103
118
115
56
111
119
113
127
93
37
56
158
128
123
178
84
58
68
37
119
101
162
128
123
111
120
99
138
111
69
77
86
37
91
95
115
132
86
93
146
67
55
110
122
92
89
146
93
111
164
119
58
58
178
92
56
144
93
124
74
171
92
146
110
104
167
110
128
139
139
114
127
105
122
69
126
67
144
106
105
93
104
140
55
67
100
79
120
107
122
87
163
105
128
114
127
99
56
110
106
126
86
162
55
104
178
103
99
99
37
85
131
123
103
122
139
92
171
149
130
138
104
163
138
110
111
171
83
141
37
115
100
56
126
107
58
92
131
74
128
64
122
92
37
119
96
84
126
122
103
126
122
114
144
152
122
74
107
122
86
93
146
110
117
142
188
110
79
148
75
93
152
92
110
58
122
128
110
131
55
93
178
58
122
110
107
119
105
77
122
111
91
96
168
138
159
158
79
93
105
134
69
86
86
140
127
122
158
158
80
97
118
178
55
58
110
67
93
55
58
178
178
56
86
112
93
128
111
55
100
110
105
105
128
106
164
93
127
75
139
110
110
93
93
37
104
79
91
103
146
128
110
74
105
127
79
93
55
152
122
37
118
138
118
67
79
94
121
56
55
178
122
104
86
79
138
117
139
55
37
56
55
37
100
68
127
178
144
131
69
139
132
77
122
180
146
145
107
131
78
126
117
75
138
58
144
69
138
171
98
126
92
99
58
138
92
92
169
177
58
107
95
92
136
93
167
110
139
138
92
138
55
98
138
171
91
131
37
37
164
92
152
119
89
131
91
122
168
104
110
126
178
87
100
56
87
169
138
92
58
109
105
171
110
108
103
129
99
158
97
91
139
126
148
79
102
77
126
110
122
169
111
131
75
95
67
104
101
137
119
110
37
55
92
123
67
91
97
91
122
56
122
131
123
92
136
126
37
110
61
126
93
104
134
92
77
171
37
92
110
138
128
124
69
119
105
112
67
146
86
111
79
126
105
165
93
67
58
105
97
55
103
140
128
126
128
140
144
114
105
127
56
91
86
141
152
122
178
110
111
119
118
160
97
56
122
94
120
58
122
152
92
118
55
129
109
119
127
128
117
130
91
110
75
129
55
110
86
99
126
67
152
93
158
124
67
92
123
67
138
119
37
138
110
93
109
56
78
91
37
149
111
152
37
75
131
99
109
122
134
142
122
131
126
105
83
128
122
99
78
92
92
75
37
126
109
180
91
177
109
92
55
67
153
92
55
104
55
89
55
126
110
105
104
86
109
84
134
93
92
138
56
138
92
180
79
56
126
99
131
107
132
107
167
92
122
103
67
122
171
74
110
92
84
131
92
91
139
58
101
124
79
152
84
94
123
107
99
69
79
99
81
98
58
99
56
67
135
107
138
91
58
86
152
139
104
89
105
37
97
107
92
117
123
92
130
74
69
55
122
92
139
110
156
139
56
69
124
135
93
92
86
131
128
55
139
56
101
102
67
113
79
127
37
113
104
122
112
56
58
86
134
105
67
109
148
128
109
122
178
146
168
109
162
119
55
119
92
93
128
91
55
67
92
110
148
119
134
77
171
97
67
56
86
130
100
37
37
92
127
149
140
87
92
126
140
67
169
58
127
165
132
112
105
37
112
111
75
146
122
117
122
104
111
141
92
110
131
115
86
94
84
106
103
137
138
142
177
158
160
152
105
138
134
55
79
122
122
74
93
55
107
93
99
93
67
134
89
93
78
74
121
123
56
56
123
92
122
144
92
131
93
77
126
127
79
126
124
111
138
128
125
109
122
92
127
109
79
169
105
100
105
127
124
37
37
138
74
97
171
115
139
104
67
69
56
114
131
178
138
105
146
131
100
148
99
87
86
83
55
127
80
107
128
91
126
105
139
162
132
138
105
110
55
169
138
138
55
171
127
92
92
110
138
104
138
56
37
92
111
91
110
55
79
99
178
136
77
109
79
55
124
127
180
123
123
56
132
132
178
126
117
163
104
67
122
126
92
74
141
122
144
119
78
75
132
127
134
80
41
68
105
140
107
68
92
93
178
104
91
105
124
122
169
144
137
93
104
139
178
110
105
56
103
122
104
102
142
104
119
58
55
138
122
68
107
92
178
126
56
97
104
110
136
178
95
92
117
112
92
109
86
110
142
164
92
109
102
103
93
37
126
130
178
169
95
105
126
92
147
92
92
152
124
122
79
112
104
122
58
126
111
126
99
103
128
67
77
111
92
93
104
111
56
104
109
128
37
97
92
92
119
119
163
67
93
67
107
92
55
105
58
122
97
122
119
123
92
37
108
144
112
122
55
169
110
158
105
110
171
101
126
107
138
55
110
178
101
93
55
110
93
105
103
109
55
143
137
112
97
89
79
138
104
92
141
37
92
110
87
104
135
105
122
37
139
124
93
110
67
178
105
92
140
93
138
131
109
68
92
111
104
112
58
122
144
138
139
105
138
122
127
126
104
91
93
104
129
120
100
79
148
109
74
126
83
117
67
110
147
122
180
67
92
55
109
79
103
92
148
69
69
171
58
110
69
69
93
101
119
110
139
92
110
106
92
37
152
107
160
178
138
130
111
77
109
158
58
111
127
127
178
93
78
105
144
69
55
86
138
138
104
144
110
126
131
75
110
97
92
93
105
131
138
126
104
136
56
93
144
137
123
93
126
67
55
119
120
138
164
110
111
162
136
134
144
55
111
105
113
110
106
103
86
77
92
111
102
79
107
110
110
104
97
91
55
55
92
110
158
144
93
79
171
124
91
117
91
105
146
102
139
152
98
110
104
84
92
107
67
84
56
92
139
103
127
123
114
55
94
144
92
127
110
80
92
110
37
104
55
97
76
138
119
95
122
134
138
56
123
92
134
122
55
169
105
56
122
178
104
137
93
92
107
103
144
86
126
114
99
110
77
74
124
56
127
126
148
92
104
99
122
67
67
98
92
169
58
55
92
91
134
120
105
120
180
55
105
67
106
138
83
180
91
118
138
92
122
97
127
93
104
160
145
103
138
95
126
105
109
67
131
126
136
126
69
67
110
93
149
138
67
110
126
92
58
93
178
139
169
107
119
77
73
146
109
122
86
142
76
128
165
120
134
111
37
88
101
126
139
74
104
92
83
104
126
104
103
127
149
86
105
139
74
103
55
122
178
138
104
149
74
152
139
93
74
109
169
126
139
104
144
89
102
67
146
120
67
88
87
106
37
107
67
55
146
123
110
148
92
99
95
81
92
139
119
93
152
56
88
122
137
69
58
55
75
129
99
92
178
102
105
110
138
126
127
136
122
93
139
67
67
94
123
168
127
104
148
128
132
122
93
104
37
168
126
138
110
127
92
99
67
110
99
100
67
123
114
136
111
55
136
56
81
58
64
93
119
151
55
139
135
79
122
93
37
126
124
58
122
138
37
146
91
178
86
126
109
103
55
78
115
122
109
178
99
93
162
67
138
92
107
138
146
97
160
171
99
56
126
111
109
81
58
69
83
105
92
74
138
119
128
109
119
79
93
127
99
128
138
110
37
79
105
123
55
104
105
88
106
105
117
110
58
171
111
144
92
93
122
111
120
110
110
58
69
79
92
110
95
156
97
123
101
110
79
37
92
56
102
118
98
132
105
92
107
102
123
110
92
92
138
103
140
93
110
122
152
178
93
123
128
105
144
98
79
69
144
168
118
178
106
144
55
178
67
92
95
107
67
104
110
58
103
56
126
123
105
86
178
138
110
104
67
92
55
127
140
146
107
178
110
104
67
119
69
105
152
91
37
162
100
138
55
131
69
81
128
107
131
92
107
122
78
105
101
92
93
93
134
119
92
137
74
107
127
111
92
69
168
163
69
120
69
69
146
119
56
105
67
110
75
93
95
146
56
110
118
86
106
92
56
163
55
121
102
136
86
178
67
94
92
169
67
146
58
139
139
124
138
105
105
128
126
111
58
67
131
55
122
106
110
126
110
138
77
67
77
169
122
79
92
112
92
168
123
138
160
128
79
119
169
56
126
158
84
104
148
77
162
160
37
134
111
92
144
103
58
126
144
108
110
104
139
126
126
178
99
117
86
89
56
105
105
169
110
116
125
55
110
109
178
164
67
98
144
104
138
99
122
140
55
110
109
102
91
139
98
67
58
58
106
110
138
122
104
124
126
136
111
124
138
137
122
107
117
101
139
102
92
146
110
92
110
117
122
92
104
83
122
135
56
103
130
97
152
148
56
158
127
99
55
86
144
139
55
112
111
127
171
92
73
124
139
119
126
67
67
128
55
104
140
79
105
144
107
134
37
37
144
127
139
93
110
138
92
178
106
58
122
140
84
91
110
86
105
110
104
139
134
83
138
55
55
58
103
102
139
136
95
125
122
37
75
58
146
137
92
131
152
97
109
110
78
126
86
148
83
93
180
79
126
67
93
146
96
67
67
110
97
122
56
74
55
69
37
110
137
95
148
139
92
138
97
55
91
78
105
127
91
152
79
112
56
110
127
138
144
126
98
139
110
134
126
92
147
138
79
58
180
68
110
138
103
118
114
131
111
168
139
122
122
105
56
55
108
93
119
56
119
37
92
178
107
98
138
110
69
101
92
75
158
134
80
92
110
98
110
107
67
169
104
89
55
169
101
92
119
140
111
92
110
91
55
102
103
79
110
167
146
126
122
77
119
55
107
92
77
178
139
139
145
192
138
77
92
158
98
69
146
119
37
146
75
105
126
109
122
91
142
68
67
105
138
134
111
105
119
144
144
106
37
95
107
67
83
136
79
112
149
119
105
110
105
178
171
152
178
92
132
127
127
148
65
138
110
134
55
127
75
109
79
92
105
110
106
128
111
84
56
178
178
110
138
56
130
56
67
110
77
134
131
138
110
84
106
91
92
101
127
131
84
105
58
160
132
123
144
79
117
111
110
144
119
92
56
146
105
68
138
104
56
95
127
122
67
131
126
113
83
69
127
127
138
86
135
69
75
104
56
110
122
107
55
127
160
77
67
97
104
84
86
103
139
55
140
55
178
111
109
55
119
122
37
127
138
107
132
92
79
55
106
127
118
92
92
67
92
119
97
55
107
107
56
127
167
104
110
110
89
144
110
77
135
89
77
144
126
152
55
67
178
138
68
140
122
102
93
58
118
37
99
56
86
97
140
118
58
152
110
119
134
67
55
105
138
119
91
79
180
178
56
127
93
138
115
139
105
124
98
104
55
93
158
99
105
128
92
104
152
134
69
178
92
144
105
124
58
56
92
114
67
101
119
131
58
92
58
92
124
138
120
56
107
37
128
144
92
105
55
126
77
123
56
122
93
138
86
74
55
77
37
55
152
104
104
126
103
91
55
144
92
55
110
67
148
92
91
104
98
124
92
139
67
171
152
55
92
100
55
144
171
122
146
138
118
111
67
37
75
122
119
105
110
55
110
92
144
106
128
98
146
56
106
145
110
127
56
104
110
78
104
139
102
93
107
144
138
76
55
140
163
104
125
165
91
127
104
131
108
132
122
152
126
93
122
110
169
117
126
95
105
104
178
37
56
107
92
67
136
55
105
92
110
69
104
93
37
37
124
148
77
84
92
122
134
110
99
55
163
79
37
122
91
67
178
108
104
91
102
56
77
179
181
119
110
152
138
152
115
123
169
79
67
79
55
67
86
91
127
58
68
111
144
79
134
148
138
111
92
144
110
108
98
122
122
92
122
86
92
127
69
77
92
92
110
146
79
92
69
92
37
68
110
139
69
128
148
139
96
148
122
56
138
111
126
114
102
96
127
105
138
139
69
58
126
88
107
109
110
88
100
55
136
105
122
110
112
139
77
107
83
110
138
91
55
171
69
67
110
122
132
109
158
126
109
69
135
146
120
92
138
136
126
84
67
92
86
108
148
144
123
124
92
134
144
37
122
92
91
138
61
104
146
104
124
107
115
107
93
144
127
144
136
109
123
67
69
178
119
144
152
128
92
125
105
55
108
83
55
92
100
83
138
105
55
77
112
164
105
79
158
104
74
126
144
119
92
127
55
67
75
92
110
107
93
105
77
104
139
132
139
105
119
123
127
122
58
37
69
144
56
75
127
122
127
126
67
104
55
169
127
146
111
112
120
121
126
105
55
128
105
92
148
105
95
108
77
89
163
92
144
127
139
126
105
56
107
98
58
140
67
55
121
99
130
55
55
112
111
98
96
138
93
122
169
89
110
105
126
109
92
118
122
111
103
126
105
92
146
110
180
55
101
107
105
56
110
112
169
74
93
104
127
58
56
91
145
140
130
152
122
110
114
121
93
69
110
139
126
55
67
127
74
69
152
152
81
139
169
134
129
55
55
105
55
178
122
105
37
110
122
122
136
69
93
129
144
88
77
83
152
126
99
163
99
163
122
117
119
99
135
55
69
146
149
67
130
135
55
126
108
114
119
86
86
58
92
100
92
111
123
126
122
110
158
55
97
105
118
67
104
106
110
69
122
138
55
92
138
110
138
37
139
93
55
105
56
117
144
105
111
67
124
102
148
105
119
75
55
111
110
74
182
128
158
93
128
158
110
55
123
127
178
99
92
139
128
111
146
75
126
103
110
74
105
88
127
144
132
97
92
107
110
84
55
91
104
111
67
55
152
92
107
145
109
146
92
118
107
74
37
110
67
101
95
93
124
115
126
117
122
78
67
171
103
126
122
37
93
107
58
188
110
107
103
138
77
93
127
104
139
105
122
118
124
137
56
95
91
98
91
110
110
58
169
152
171
138
110
74
112
67
56
91
93
93
103
92
37
134
110
103
92
92
109
127
37
101
134
110
83
56
138
139
137
122
107
92
55
180
73
142
92
108
37
92
103
178
139
162
92
127
55
86
111
105
126
98
146
67
103
75
122
111
55
131
101
132
171
56
120
74
91
87
126
93
56
144
110
112
171
58
92
137
169
107
105
98
84
67
110
110
119
79
55
104
58
126
140
110
83
86
138
56
138
141
86
65
109
160
86
84
67
37
92
58
126
74
68
92
57
146
178
117
139
127
105
55
86
104
158
127
56
151
132
73
119
92
128
122
58
67
99
37
144
105
104
105
163
58
104
169
56
105
169
136
118
126
144
105
127
75
122
104
69
148
124
93
139
37
131
86
110
111
119
92
122
86
130
138
37
92
128
102
109
117
55
146
127
98
152
55
138
164
92
122
55
152
126
67
105
93
56
158
199
123
126
92
153
56
178
122
178
146
171
37
111
178
74
126
37
148
169
126
171
56
139
127
83
126
104
158
103
139
93
58
37
37
104
110
67
67
178
55
92
69
91
136
74
130
110
122
158
178
92
112
144
103
105
127
67
126
126
92
111
126
158
92
69
127
122
126
58
79
124
129
140
178
152
92
104
103
138
105
126
37
122
105
67
145
128
127
55
110
109
138
92
105
56
55
92
104
37
98
123
74
144
122
122
88
75
111
144
97
128
138
97
131
158
107
75
55
79
58
134
55
103
120
98
56
126
110
92
69
92
92
126
110
86
92
105
126
144
86
131
160
67
97
58
56
138
138
127
124
135
104
97
136
67
148
83
105
76
128
99
123
55
169
103
92
122
92
74
114
92
56
79
123
58
55
178
126
74
107
110
119
178
126
138
113
37
56
83
107
92
93
67
98
104
67
92
122
178
92
127
86
83
134
100
144
84
100
122
139
58
91
114
100
55
37
110
92
117
138
104
115
93
178
123
92
134
138
132
169
98
92
146
68
95
126
55
69
110
144
126
126
115
148
67
67
91
178
134
126
122
74
55
105
105
126
58
106
110
136
92
55
68
91
126
91
119
138
126
56
89
118
67
123
67
140
55
58
107
119
138
146
138
122
111
110
78
110
139
105
91
69
86
127
110
104
148
92
110
124
55
93
122
92
55
104
105
97
56
131
67
93
106
122
55
92
139
58
119
69
169
142
37
110
128
123
105
105
178
105
109
138
105
110
55
126
101
135
138
72
122
146
168
138
127
92
138
58
67
109
110
134
105
77
168
169
112
117
86
127
100
140
117
109
100
126
144
129
56
178
110
131
55
109
122
122
99
55
75
77
92
37
104
128
67
114
55
107
134
86
55
109
110
74
131
130
109
126
88
99
142
67
69
92
75
55
139
83
58
55
110
110
93
92
93
126
109
140
79
114
139
93
95
58
79
92
152
86
144
110
98
91
91
91
93
111
55
103
127
140
103
120
152
119
93
108
110
122
74
91
92
124
138
126
126
92
178
122
165
105
139
169
91
103
92
110
169
126
104
58
55
110
123
103
55
128
37
122
148
110
139
55
92
122
111
67
37
123
122
128
98
145
104
67
199
92
124
169
105
56
111
56
109
138
110
126
123
119
136
165
86
56
101
86
130
55
167
67
75
101
110
109
37
102
68
119
178
109
67
83
111
79
144
74
95
83
92
144
55
92
89
105
110
151
56
76
110
93
67
139
126
37
138
55
75
123
138
135
67
58
67
178
74
86
122
55
56
105
126
56
97
126
105
58
55
148
75
115
92
74
58
178
169
69
55
146
92
67
95
67
139
98
140
111
106
55
171
127
110
89
56
67
55
92
55
167
55
88
122
136
104
122
56
56
91
127
67
69
105
104
83
92
93
164
92
111
138
160
79
58
69
105
111
89
91
179
139
94
105
92
169
105
105
105
107
56
146
107
79
124
120
67
128
111
55
189
126
104
132
128
140
109
56
75
126
138
104
140
127
110
137
75
79
83
128
110
67
56
92
139
96
123
131
74
104
55
105
69
120
68
162
111
144
126
91
126
99
128
79
97
148
138
122
92
158
128
144
93
55
148
56
56
107
91
139
104
67
160
122
136
67
152
56
79
55
104
92
92
104
126
37
58
110
134
110
103
169
92
122
140
91
55
58
124
152
130
138
55
92
138
93
58
138
104
122
122
110
108
92
99
58
114
122
122
110
171
104
89
55
74
89
126
126
158
152
139
101
119
77
56
92
126
171
180
122
92
83
127
104
127
77
122
78
110
111
92
55
81
69
89
107
132
107
86
152
127
104
146
92
177
104
163
86
105
67
130
55
140
84
103
55
104
103
144
110
152
110
132
111
144
152
92
104
126
111
144
64
124
130
55
109
92
56
134
92
138
111
92
158
126
92
106
146
79
92
55
138
148
178
105
123
120
77
111
67
104
55
122
97
139
122
92
75
104
89
106
109
56
104
138
92
55
87
93
138
79
126
139
56
135
92
67
123
79
105
126
144
95
158
86
131
138
114
99
55
126
86
123
132
152
144
71
96
79
55
138
92
67
120
110
138
127
92
92
104
69
122
105
67
138
86
111
140
122
110
110
154
72
92
55
134
138
108
139
88
123
147
105
110
163
122
84
79
178
119
92
127
128
55
110
97
111
56
106
150
56
74
107
91
105
138
37
74
164
86
143
104
128
128
67
111
79
75
128
152
125
144
122
97
128
123
56
103
80
134
79
56
139
74
104
37
91
134
105
67
99
105
105
56
92
126
126
123
138
101
83
110
55
127
100
93
76
56
126
55
92
68
119
103
100
37
134
100
86
178
110
88
146
122
169
119
130
162
110
91
139
139
119
92
91
119
69
110
74
138
93
81
169
55
122
69
67
122
93
126
104
197
56
120
37
95
58
107
102
75
126
134
110
139
122
92
103
119
105
122
55
138
58
110
37
139
93
79
101
111
108
111
86
122
152
91
69
37
137
93
92
140
124
75
55
92
146
88
128
69
119
37
103
91
61
178
134
91
158
149
138
55
103
122
122
56
104
93
110
93
136
104
86
126
131
104
134
92
37
110
69
93
152
131
123
111
86
132
119
104
124
99
37
97
56
128
104
92
127
123
105
138
114
110
104
124
91
92
126
92
102
164
128
168
122
110
37
130
58
180
122
139
119
152
86
105
100
134
144
92
87
178
99
139
169
124
146
119
95
91
107
105
55
126
122
111
169
105
138
158
127
146
58
55
130
77
37
126
111
101
139
178
58
79
126
111
125
115
105
126
144
55
178
92
122
55
162
55
103
131
92
103
138
67
91
135
139
123
67
56
91
134
104
110
126
112
89
92
67
55
105
123
101
126
37
128
74
79
67
79
91
122
112
37
119
178
138
92
110
67
178
91
92
56
126
128
56
111
152
110
146
131
138
109
84
146
169
37
69
130
122
138
132
79
139
111
105
37
92
111
122
74
67
126
127
67
126
110
93
111
105
138
55
132
56
122
117
156
110
95
110
164
79
123
69
127
80
168
123
58
99
91
93
92
86
124
107
144
127
142
110
146
112
126
142
99
92
37
122
101
171
75
107
152
128
178
178
92
128
110
55
152
169
124
110
124
122
93
87
97
142
37
139
83
122
169
98
37
146
127
105
124
98
109
122
178
92
163
119
67
105
105
110
93
122
178
152
132
134
86
122
103
93
111
67
91
169
86
56
138
111
105
79
127
96
92
79
69
128
37
55
103
127
110
109
105
126
58
169
110
86
116
152
146
105
144
92
89
80
145
111
167
67
75
104
110
122
131
92
138
134
132
93
117
105
137
99
58
67
105
107
86
83
69
126
102
92
144
99
162
80
104
92
144
122
123
111
123
123
110
110
127
134
122
199
152
100
126
189
124
67
178
103
127
111
56
124
55
93
131
137
123
55
58
97
69
111
92
104
104
111
112
105
126
103
102
148
171
134
92
126
92
92
74
100
86
72
164
138
126
68
178
105
104
92
93
79
67
56
93
41
74
69
56
99
124
123
122
58
146
55
86
104
93
117
92
67
127
130
55
93
69
55
100
74
84
132
55
56
123
152
105
92
74
92
134
140
146
119
67
142
111
144
127
152
104
92
137
146
56
138
93
93
101
126
100
92
92
58
138
114
92
93
37
178
130
197
110
56
92
93
103
110
67
130
37
97
77
140
107
110
37
143
89
110
142
93
112
79
126
67
106
127
79
119
135
93
109
67
99
103
110
122
145
136
75
68
178
56
162
132
122
98
37
103
178
124
110
132
55
146
139
139
130
105
86
84
178
118
37
122
108
110
77
55
77
86
105
107
55
109
93
105
123
126
169
69
67
138
128
136
110
55
86
110
122
55
138
92
89
69
104
132
110
138
106
110
127
98
79
95
140
74
178
168
93
55
91
126
37
138
69
107
105
110
77
55
92
92
55
105
78
67
55
111
165
79
160
58
105
92
148
122
146
86
135
178
138
152
144
69
132
158
105
91
95
110
93
96
92
152
67
91
58
169
119
77
92
95
77
110
134
79
109
110
152
152
152
107
152
67
99
117
139
55
67
105
122
109
77
110
76
89
178
117
77
109
130
144
103
152
122
122
105
92
137
55
93
92
77
156
56
101
119
105
178
91
110
55
86
55
86
126
122
169
97
152
122
178
86
81
92
79
132
69
104
140
96
168
148
120
86
75
137
106
55
126
93
105
58
93
77
102
79
152
86
111
105
131
118
79
112
105
123
111
146
126
69
139
134
55
101
138
122
126
55
93
114
135
79
107
91
135
107
139
55
171
93
144
132
152
114
77
103
74
171
58
74
127
192
92
93
180
178
128
75
140
58
91
92
55
93
55
92
132
168
105
92
89
55
56
37
144
124
55
87
138
92
127
104
122
64
111
86
92
92
110
111
75
109
92
91
86
74
67
55
145
86
110
93
127
107
140
138
92
92
119
110
140
109
171
124
69
144
126
92
69
178
126
119
109
58
145
69
126
91
55
181
122
55
144
128
101
102
79
128
79
99
122
164
146
180
100
97
84
67
139
55
91
107
55
126
122
122
130
92
112
152
105
105
123
101
92
138
128
67
123
117
126
86
148
178
93
110
114
168
93
123
110
89
119
109
110
84
145
86
122
55
110
117
99
86
113
55
98
140
122
105
103
86
75
93
98
169
122
111
138
92
138
131
178
106
144
92
110
58
111
79
83
92
115
127
102
110
37
92
104
92
86
152
152
92
169
55
138
56
67
55
178
58
93
130
138
67
79
117
118
178
158
110
106
121
58
128
127
58
126
171
140
138
119
55
105
105
88
55
93
56
96
93
127
91
105
103
55
122
68
180
104
144
113
105
56
105
105
37
105
105
189
111
92
164
104
92
160
104
100
89
74
124
146
89
162
138
182
58
55
74
79
178
67
56
93
144
92
126
86
135
104
55
89
75
92
128
143
86
112
127
110
55
112
67
92
139
92
167
110
127
55
92
144
105
124
74
86
92
114
119
67
67
122
146
168
79
122
139
126
58
163
56
79
100
55
77
169
105
112
104
80
119
126
139
163
55
37
169
55
58
37
152
68
139
122
77
69
126
130
79
93
74
137
92
92
69
130
37
55
126
138
138
142
92
128
148
67
107
144
125
88
103
180
79
152
58
138
103
105
122
105
127
127
124
122
81
127
103
56
137
105
37
122
58
146
122
148
107
168
74
79
145
55
137
67
67
152
83
126
134
135
165
86
130
119
105
105
37
126
84
125
58
114
110
111
84
169
104
92
138
67
126
122
139
139
55
119
55
92
126
110
130
139
122
139
138
56
119
67
138
85
136
91
105
139
91
129
105
134
110
55
97
138
146
144
92
123
89
105
110
138
75
180
78
131
107
138
104
128
92
92
138
37
111
99
81
56
92
169
58
55
104
129
100
107
110
119
58
83
77
55
141
100
110
99
93
92
55
74
153
119
55
112
109
92
144
91
67
138
91
84
91
37
126
134
108
107
105
122
126
146
139
104
104
106
92
130
105
105
126
122
111
122
122
144
102
103
80
141
139
132
122
58
111
152
92
178
140
58
55
92
92
120
131
92
94
131
139
105
112
158
77
56
117
144
105
104
147
104
109
77
77
127
119
99
92
104
128
132
114
37
92
99
92
87
104
97
138
144
92
92
118
105
67
142
92
92
55
152
146
37
128
140
99
138
148
103
55
128
119
122
86
126
109
111
112
92
139
56
110
86
115
126
104
37
105
92
107
93
127
55
110
93
92
111
162
69
97
110
118
158
139
110
77
122
104
188
127
110
112
55
140
120
77
56
102
152
92
178
103
77
152
55
109
122
37
113
100
109
138
144
75
126
122
92
134
74
120
83
67
93
77
111
124
103
149
56
91
69
37
103
67
115
109
92
83
178
109
122
140
105
75
102
126
131
152
119
92
67
139
55
98
75
138
146
55
134
101
178
123
125
179
58
107
86
105
106
97
92
103
144
180
138
134
146
119
55
74
58
110
178
69
127
171
119
136
86
123
55
97
140
126
128
135
122
88
126
146
110
139
131
91
56
67
92
55
104
68
92
92
126
98
104
138
56
37
55
110
139
55
92
138
93
146
104
146
104
102
139
92
98
148
75
122
144
111
55
69
124
83
126
110
97
86
135
105
138
178
128
103
123
99
103
103
67
37
122
139
167
126
55
178
141
128
77
105
109
104
137
126
67
55
74
126
105
91
95
152
97
171
122
180
129
97
58
67
126
109
178
140
123
144
152
92
105
110
127
73
93
127
126
95
152
120
58
123
77
126
144
123
92
144
92
37
56
136
37
67
92
110
188
138
130
110
69
138
134
128
99
139
93
37
96
92
58
111
197
58
124
122
122
58
110
152
169
69
98
146
122
67
84
56
79
105
135
178
55
110
106
86
178
139
144
139
178
110
110
130
92
138
135
93
110
138
137
156
84
146
55
138
123
77
126
92
99
126
69
142
79
110
97
79
91
131
139
123
93
123
88
136
148
126
55
111
77
136
144
139
55
67
104
142
111
92
100
139
105
144
109
111
104
110
98
75
68
144
109
104
138
55
122
131
110
146
84
138
105
69
121
92
138
122
149
55
109
110
55
92
138
100
135
105
124
55
99
178
111
164
128
128
93
126
127
124
146
67
79
126
127
134
99
56
98
126
178
92
58
111
127
169
37
84
169
55
134
111
92
37
105
107
130
147
138
104
58
126
108
122
92
106
92
77
128
144
126
122
105
55
37
55
92
160
110
110
109
122
128
105
92
67
100
105
127
129
129
111
69
104
77
119
55
55
69
103
104
104
123
95
91
144
119
122
55
104
127
119
139
131
169
152
69
55
145
92
121
55
111
128
74
104
67
92
127
68
92
109
91
110
168
55
132
104
55
84
58
69
111
144
97
104
138
55
77
74
93
41
126
101
101
93
124
142
127
109
103
139
93
139
111
79
117
69
68
77
127
121
139
138
169
56
146
122
152
178
86
132
109
122
123
109
97
37
119
120
56
98
119
75
100
122
92
69
73
138
168
128
136
178
37
55
138
92
144
139
37
92
105
77
126
105
107
56
139
127
148
56
135
110
55
110
119
105
120
129
110
138
126
37
168
148
67
122
92
123
110
96
92
160
105
56
146
149
171
127
123
92
74
56
113
117
107
119
97
99
56
110
148
55
127
56
178
124
138
118
110
138
55
55
168
122
110
127
127
55
178
67
110
180
86
81
75
138
108
99
74
126
117
138
169
160
56
56
124
122
132
127
126
91
136
178
140
103
74
160
123
138
111
92
136
126
118
82
111
111
55
37
138
104
100
75
75
56
69
144
79
138
92
75
178
104
110
136
122
55
152
105
55
123
158
56
56
55
178
136
128
56
152
139
124
109
135
89
104
138
138
67
81
169
56
142
152
55
178
168
148
74
37
122
165
134
109
92
116
110
37
171
138
55
128
106
163
92
58
84
142
122
139
107
152
93
104
68
83
109
169
104
113
55
67
92
92
93
92
110
56
69
83
138
83
144
103
134
67
119
122
97
107
110
139
58
55
74
55
111
122
127
115
126
95
109
92
117
123
97
67
67
109
180
68
92
92
144
105
132
104
110
105
93
138
92
140
142
131
139
55
126
67
83
75
139
110
117
126
108
110
122
99
122
119
95
110
56
93
132
144
105
129
101
77
152
110
77
152
83
105
56
56
58
58
67
93
110
104
124
56
86
104
67
109
100
162
56
79
111
56
97
110
55
105
127
112
69
171
128
67
111
79
139
117
104
67
110
55
138
58
169
127
119
105
67
104
139
111
107
134
79
138
69
69
111
93
56
119
100
123
103
58
67
127
145
138
132
92
126
122
56
148
139
118
149
105
103
67
144
126
104
74
105
100
58
92
92
105
126
97
104
67
120
110
69
147
109
134
108
119
136
127
138
148
126
130
123
123
105
86
68
134
55
122
58
136
67
93
93
124
56
69
128
92
86
58
127
120
101
69
55
119
110
128
119
110
152
104
138
92
92
92
105
152
128
92
58
55
109
126
134
55
84
139
107
122
118
110
111
152
37
126
92
88
134
152
110
56
55
138
67
104
105
109
148
152
69
178
67
105
55
123
99
110
134
92
55
144
92
123
139
91
56
126
95
178
189
126
128
55
152
122
130
104
86
74
121
110
169
139
92
110
144
79
74
104
152
136
122
110
138
124
127
178
73
144
169
114
92
56
67
138
92
122
92
126
122
110
75
68
152
134
115
152
122
178
58
108
79
68
58
58
75
123
117
117
77
67
56
100
99
138
136
127
104
171
92
126
144
126
55
107
56
126
117
93
55
86
84
114
55
137
110
56
122
58
105
122
83
139
79
91
93
135
102
93
126
124
127
77
122
98
158
128
127
139
75
75
109
112
91
126
136
123
109
122
119
118
58
127
75
122
110
188
93
104
91
140
56
69
141
69
92
132
111
91
111
178
117
93
37
77
180
105
55
132
105
98
67
58
98
119
79
107
91
163
138
123
37
91
134
79
139
111
110
123
158
112
56
93
92
122
124
146
126
144
169
110
84
99
126
144
127
83
88
104
118
58
105
64
146
91
100
67
80
152
111
120
122
169
130
112
92
110
97
118
104
149
127
139
104
58
163
109
93
178
152
104
116
68
136
144
122
110
122
58
92
123
98
92
93
67
131
122
122
86
58
152
79
92
134
138
134
180
117
104
58
128
126
126
79
122
146
92
122
115
128
127
139
152
93
75
84
67
92
108
74
68
55
67
67
74
122
126
110
55
92
93
55
163
111
93
131
119
105
127
58
69
98
122
93
131
122
178
92
99
165
68
58
93
77
92
103
67
105
104
55
127
88
55
136
99
110
111
152
145
126
93
92
168
126
123
138
110
132
122
104
105
119
106
78
135
178
92
126
122
67
110
131
98
104
58
138
58
140
86
140
79
67
58
102
178
136
178
101
111
58
55
79
56
169
180
138
93
111
138
140
105
55
126
138
122
79
92
79
79
104
56
148
93
122
158
117
139
55
105
55
86
138
79
101
56
97
110
92
111
110
119
92
146
138
79
126
79
110
92
87
104
158
152
168
105
122
92
86
152
179
56
75
56
92
69
79
178
77
110
136
127
130
55
104
97
153
122
123
92
92
74
100
107
122
103
111
171
151
93
168
165
140
75
101
105
92
97
139
141
74
110
145
139
112
123
122
126
68
122
56
122
55
122
109
69
110
92
84
107
79
103
92
79
68
107
67
119
86
105
103
122
146
126
169
91
126
114
152
104
139
99
67
144
79
139
58
169
142
74
56
110
55
178
128
105
86
83
79
152
104
102
86
122
109
68
138
140
110
126
104
115
110
98
74
126
144
74
105
122
118
111
119
126
128
91
108
55
92
95
140
127
55
99
168
178
93
144
86
37
92
122
126
91
84
118
119
55
92
91
140
105
124
100
68
56
69
92
138
139
92
105
111
77
127
75
128
104
138
122
142
56
105
92
128
105
118
110
178
98
84
178
122
130
103
178
58
64
109
58
126
56
178
83
93
105
138
178
111
86
146
99
56
69
69
144
146
123
58
99
55
64
138
84
105
119
122
126
101
56
37
56
152
79
136
79
126
168
108
104
68
126
98
105
124
110
88
199
122
138
92
132
92
134
122
92
79
138
55
93
122
110
178
93
152
127
126
105
152
67
75
130
67
146
74
83
119
55
92
69
55
96
148
127
139
124
69
178
55
141
37
122
139
68
158
105
122
58
138
126
108
100
122
55
130
171
105
103
152
92
163
105
126
146
144
126
138
37
127
110
67
101
123
107
111
127
77
55
122
79
105
158
37
93
144
163
132
105
110
146
122
111
105
105
160
145
58
126
105
105
169
122
122
105
146
169
119
105
139
105
178
56
105
89
98
124
138
99
134
105
77
93
56
56
110
75
92
92
99
105
55
128
88
92
119
107
79
147
180
37
123
148
55
137
75
122
111
92
110
55
122
127
55
92
79
92
56
178
93
104
74
139
123
55
79
106
99
104
92
93
98
110
37
37
67
138
92
125
92
105
55
162
92
91
111
148
79
178
137
106
100
67
110
111
67
126
68
134
126
169
103
144
58
178
90
171
127
79
93
139
139
56
58
127
122
112
92
138
55
163
94
131
105
83
56
92
55
126
169
84
93
107
108
79
110
146
123
37
109
110
77
118
128
55
105
109
55
75
119
74
86
103
112
58
56
118
55
75
77
110
56
55
110
103
126
79
77
119
93
103
110
37
122
124
152
139
144
114
134
105
67
55
160
114
110
144
92
117
145
138
199
117
118
123
103
118
127
122
136
119
162
79
145
67
92
124
139
69
105
122
69
56
91
171
138
107
104
86
122
80
37
180
77
69
64
93
128
126
97
68
55
139
141
92
122
75
56
120
86
169
122
121
105
75
119
100
105
146
107
56
91
93
126
55
144
122
105
79
105
58
130
105
102
110
92
128
122
123
58
178
123
67
138
144
37
127
162
79
77
105
180
178
56
141
126
92
119
130
163
125
160
124
93
56
167
55
110
120
74
122
135
165
58
37
69
118
68
110
122
122
86
123
126
126
56
92
107
144
152
98
55
138
134
119
79
109
104
128
110
119
67
124
115
134
104
178
169
79
117
37
140
37
126
56
132
92
127
109
99
164
95
92
148
110
67
93
89
138
130
88
178
93
122
110
167
139
122
69
92
105
92
126
127
86
178
75
110
104
144
138
58
122
105
138
139
86
56
94
93
37
109
110
130
58
119
55
91
146
92
67
55
126
58
160
105
93
158
122
112
152
112
93
139
94
92
111
134
79
122
79
139
57
92
78
68
123
109
105
122
126
126
122
101
55
79
149
178
89
127
128
126
95
69
122
180
91
138
92
105
77
64
92
126
169
103
123
98
96
56
81
92
105
75
92
99
178
111
92
144
135
67
138
151
125
111
100
56
55
139
93
67
149
126
117
100
124
178
91
126
110
105
79
80
104
140
107
136
56
93
92
131
69
168
163
167
142
69
123
67
140
100
126
139
118
55
144
167
108
126
109
110
67
58
123
126
171
180
126
69
109
152
126
131
122
91
152
105
79
171
37
92
67
111
89
139
110
139
100
132
137
67
119
56
103
55
130
92
126
119
149
130
119
111
92
69
73
138
126
67
126
67
123
178
67
122
73
126
92
104
111
144
93
92
104
107
105
104
56
77
110
118
91
64
99
135
55
113
152
105
110
178
171
110
104
152
128
119
110
83
86
55
149
55
97
127
79
140
69
56
67
131
55
105
112
92
144
109
93
144
92
74
56
67
107
178
178
89
134
96
92
122
74
122
126
75
104
37
92
92
138
126
138
89
55
169
138
99
91
69
108
126
67
178
152
122
105
145
104
56
68
55
104
79
115
99
65
37
110
67
37
110
127
105
119
105
122
122
115
84
128
178
123
139
104
107
134
58
125
162
69
55
56
165
178
93
92
83
110
137
86
58
91
56
188
138
105
152
126
118
178
67
137
110
163
92
164
88
160
139
110
102
89
93
86
140
127
140
69
120
83
55
105
55
56
110
122
56
105
84
139
126
107
118
79
37
110
76
122
128
56
125
126
103
102
104
69
55
144
55
103
69
158
139
110
91
114
122
104
58
123
69
110
37
144
138
69
88
75
89
134
105
80
138
126
56
56
68
89
123
142
105
152
148
182
108
101
135
55
92
84
105
79
110
55
131
92
105
144
67
122
97
138
56
105
119
126
85
92
146
110
86
78
131
112
126
58
178
124
86
37
130
122
111
103
69
92
171
86
56
142
69
140
91
130
123
37
69
56
100
37
148
55
92
110
84
110
101
110
114
56
134
104
55
79
126
105
55
126
124
92
128
92
128
163
140
132
122
120
182
55
37
77
75
85
101
163
100
117
77
135
128
131
55
131
164
67
110
56
78
122
69
101
105
128
109
139
92
144
55
122
138
110
37
126
104
99
95
97
55
123
139
58
178
139
58
58
99
93
93
79
122
105
113
92
160
91
138
128
107
127
132
67
126
92
146
144
124
67
130
86
92
92
134
113
58
86
93
94
121
115
111
126
69
119
144
37
126
142
138
93
58
112
126
37
122
86
92
56
68
139
119
126
79
140
131
92
138
76
127
119
86
138
103
158
127
93
92
99
126
67
86
58
110
99
92
79
124
127
55
104
69
138
67
103
146
169
122
102
93
74
37
100
140
118
86
110
117
138
86
122
120
115
56
114
78
169
79
95
110
92
67
139
105
111
146
109
115
105
112
92
67
97
158
79
122
98
55
137
144
138
144
169
169
102
110
91
99
188
139
109
131
75
79
95
55
169
152
106
56
139
92
152
89
134
104
144
78
122
105
104
110
55
103
79
123
132
86
152
119
75
140
125
138
112
122
104
111
89
119
103
75
95
37
148
126
99
58
162
79
178
109
130
86
138
169
145
91
138
127
83
98
122
131
144
126
135
115
104
126
102
99
93
92
111
93
110
67
69
74
140
100
140
74
99
56
112
127
118
138
55
102
182
69
112
105
126
122
122
122
144
92
101
55
132
92
138
110
122
109
104
126
106
115
122
37
138
110
122
123
86
130
127
92
93
67
84
99
37
111
98
91
105
55
105
79
92
142
144
79
127
128
92
68
104
93
112
126
131
178
105
110
67
178
75
126
140
138
93
126
122
83
69
127
101
126
152
67
122
152
105
123
104
146
55
126
140
93
107
128
110
56
92
67
110
169
55
84
134
123
127
102
188
105
126
125
67
127
92
139
58
67
122
121
92
111
107
67
93
158
122
105
130
55
93
67
74
72
91
121
67
93
67
128
104
105
67
128
104
92
110
83
126
138
126
171
138
122
92
100
76
124
146
122
77
180
67
77
55
146
130
99
111
92
37
110
139
178
86
84
37
144
126
122
96
83
178
91
74
104
127
55
91
111
146
107
92
171
55
67
93
104
126
92
98
91
146
92
92
91
178
99
67
105
64
126
55
58
123
56
58
128
146
74
139
127
144
75
93
122
55
145
149
132
178
99
67
128
104
58
127
78
110
56
114
92
127
92
138
86
171
92
117
55
95
104
137
152
169
92
152
111
126
118
95
58
55
131
107
55
134
117
84
126
105
74
99
127
118
93
110
136
75
122
139
99
102
103
92
126
56
127
100
126
91
75
110
122
122
81
75
110
86
99
55
79
105
118
86
105
138
55
139
77
130
134
122
111
145
139
37
144
134
77
162
92
112
93
92
110
110
138
110
92
167
140
110
126
67
92
126
138
138
55
98
128
137
58
104
122
93
122
86
55
122
105
99
91
128
140
92
91
122
134
92
115
121
104
123
69
110
86
122
105
92
124
199
93
138
58
55
56
105
110
163
102
92
111
89
146
138
89
135
96
73
92
138
110
103
102
103
88
139
97
138
122
55
109
114
93
75
126
67
92
139
55
91
144
169
105
107
67
102
140
178
128
111
107
93
121
56
55
56
67
77
121
129
58
92
109
119
149
80
119
109
92
134
122
122
55
58
126
111
105
105
137
55
110
86
105
122
77
119
117
83
144
107
92
55
123
55
146
98
138
104
107
138
67
139
130
138
135
93
67
164
127
139
122
55
134
86
119
105
126
152
148
152
109
58
78
57
128
92
138
56
144
152
126
61
92
92
142
92
163
93
146
69
37
67
131
95
86
144
99
144
152
119
37
67
92
55
95
122
75
93
93
127
148
55
122
120
111
92
122
178
55
67
101
138
93
119
139
122
55
92
91
128
37
128
119
163
112
68
178
69
122
128
146
58
138
128
104
69
92
92
76
110
93
131
92
95
104
149
127
97
105
119
163
83
144
67
68
127
37
110
109
120
102
55
104
67
55
83
56
93
126
79
105
69
97
92
171
169
126
180
67
55
139
79
37
104
56
107
55
117
92
138
126
69
77
178
108
58
111
77
105
67
163
103
122
83
128
111
83
86
152
152
126
67
81
142
109
180
171
91
104
110
105
106
138
178
146
55
92
55
88
117
138
122
127
58
126
127
139
152
178
127
138
128
56
67
105
77
148
105
126
105
130
92
163
106
105
92
152
122
110
104
126
130
148
95
111
97
100
165
140
164
100
106
107
77
64
107
146
124
134
92
67
79
160
58
148
91
144
126
134
55
75
55
104
92
121
168
75
152
55
92
146
91
134
93
110
83
138
79
93
79
55
116
67
93
75
147
67
124
162
109
74
123
67
152
89
119
168
126
91
126
138
180
86
58
107
55
56
109
94
55
169
123
139
55
152
55
94
110
120
110
56
91
37
109
132
58
139
144
152
67
67
125
55
146
108
112
86
136
128
122
86
79
74
122
144
77
110
138
180
178
178
128
138
136
92
144
92
152
144
159
162
37
107
126
180
105
67
101
99
91
55
122
110
79
106
37
75
55
104
152
107
55
86
122
105
139
101
120
56
110
178
105
105
128
131
105
171
69
139
105
75
91
178
178
122
75
124
104
114
134
55
88
92
162
152
146
127
67
104
127
178
92
153
119
105
67
56
95
86
135
138
138
119
69
37
126
132
67
131
103
117
91
104
103
123
138
91
37
114
127
37
119
58
69
158
138
56
122
100
58
74
79
169
122
91
58
56
110
122
111
92
75
92
124
79
98
55
55
69
126
110
168
69
138
79
67
92
126
107
123
92
92
105
67
102
93
101
113
122
123
109
105
92
92
140
131
94
160
55
126
110
67
163
106
58
111
92
88
167
56
110
110
105
119
91
37
91
92
110
92
122
55
140
110
55
103
110
76
92
93
86
105
93
83
105
110
105
124
139
104
79
127
55
122
158
83
152
55
128
163
55
138
137
118
102
158
86
84
105
95
169
105
110
104
86
101
58
74
86
128
83
169
110
197
98
101
105
93
98
79
95
103
109
37
123
121
126
123
77
144
67
139
55
122
58
143
140
92
124
92
55
88
129
123
122
104
122
178
37
138
126
92
110
145
178
122
86
91
111
126
67
116
69
136
178
105
37
69
128
144
77
139
86
180
67
144
178
92
93
118
104
138
118
154
55
99
114
93
169
92
93
92
79
97
69
86
122
92
146
92
105
129
130
151
138
88
93
55
183
178
67
55
86
121
141
78
105
55
146
180
110
92
55
58
93
56
105
93
110
139
126
67
67
55
124
110
93
67
69
110
134
169
92
119
75
122
105
111
55
127
126
139
93
86
75
160
92
122
146
56
67
178
110
105
107
151
79
87
68
105
77
144
165
160
67
56
93
178
140
119
75
91
139
92
110
86
104
138
110
92
126
58
93
93
144
96
105
163
99
131
123
107
55
67
108
77
99
104
58
92
92
104
110
128
122
81
127
58
92
120
144
123
55
107
138
122
102
107
75
79
114
92
103
122
105
122
118
55
67
168
67
79
124
93
158
95
86
109
89
107
67
37
74
55
104
131
126
138
124
98
146
134
105
92
144
99
75
84
105
110
104
92
55
86
84
139
92
67
110
127
144
107
127
56
110
162
126
67
139
58
167
122
178
105
114
84
37
67
146
138
138
86
164
56
91
108
83
77
178
92
93
127
144
99
114
93
152
55
152
55
69
109
140
37
93
144
178
102
144
167
111
110
78
92
126
69
74
95
93
104
122
135
55
92
102
98
93
131
152
65
110
105
144
123
138
132
37
110
123
91
122
134
56
93
138
107
140
75
180
122
126
146
100
75
83
92
139
109
109
92
138
93
100
94
128
146
55
86
138
128
110
126
92
110
67
134
64
99
134
74
105
105
124
110
126
93
75
131
92
123
146
126
79
110
56
126
128
124
68
101
77
123
134
138
131
104
122
126
119
75
56
136
72
58
77
178
92
92
55
37
91
79
126
58
111
134
118
111
110
121
171
110
110
124
97
58
119
128
119
55
37
56
92
55
138
79
110
67
55
123
92
126
105
169
95
99
114
139
127
138
99
134
127
110
55
152
74
93
124
169
97
86
56
37
122
146
55
97
119
118
111
122
67
92
144
109
92
139
131
110
114
136
122
95
55
178
104
128
124
144
132
75
110
79
112
124
138
69
55
122
138
139
138
139
124
144
55
93
146
122
79
83
67
37
92
138
104
110
110
93
107
128
94
168
67
55
135
110
105
130
148
180
138
56
118
105
146
68
67
105
126
139
109
96
104
119
144
148
167
110
124
93
92
111
104
139
126
137
88
68
148
79
165
69
104
122
146
92
93
127
101
58
77
55
55
138
134
79
86
140
68
169
158
139
122
126
152
144
123
139
168
107
100
56
122
126
126
107
55
37
152
148
92
128
139
164
144
74
69
93
148
103
89
92
107
134
126
79
92
141
74
109
105
138
111
130
112
91
117
92
55
152
104
55
139
56
86
102
93
178
69
69
123
67
126
122
109
92
93
152
126
104
93
105
126
138
58
144
92
64
101
92
100
118
112
92
146
92
122
109
67
138
178
105
152
110
107
93
55
105
122
56
37
93
139
138
120
58
169
89
67
55
152
69
139
107
91
126
127
110
126
136
139
77
122
92
79
122
131
91
104
93
67
67
78
126
119
55
109
189
137
104
178
178
104
120
110
132
107
152
92
144
148
126
58
136
92
131
123
55
56
110
92
138
144
37
148
178
67
92
67
139
99
117
128
124
104
91
168
169
122
84
55
105
140
37
171
105
144
91
146
140
139
152
67
123
137
77
69
115
56
93
122
104
158
105
89
169
126
92
110
55
93
123
79
134
67
67
79
104
56
95
55
74
101
67
144
109
56
110
99
127
121
67
81
58
69
104
126
110
123
75
100
110
122
55
75
140
118
108
93
55
56
122
67
92
79
58
92
131
126
110
134
130
118
108
121
105
180
104
92
100
55
110
158
95
114
119
86
146
110
67
89
121
178
67
86
140
132
128
127
86
103
69
100
88
144
138
74
119
56
77
103
148
122
144
169
130
128
110
95
67
86
91
106
69
86
119
98
79
92
67
128
103
84
79
99
134
109
83
169
109
122
97
110
107
107
67
131
139
101
92
188
138
137
37
122
91
146
104
178
86
106
69
138
138
83
147
115
79
111
138
141
92
178
164
138
126
148
146
67
92
152
56
168
146
74
58
122
126
120
105
104
122
136
79
118
93
91
93
168
127
99
104
188
37
139
110
171
106
92
126
86
138
55
109
138
74
112
105
41
123
138
138
131
152
92
106
67
125
92
162
104
78
105
111
55
103
77
110
81
84
67
99
99
160
144
55
92
55
132
139
178
139
121
86
110
56
138
109
122
103
91
152
104
55
55
89
67
92
138
97
91
89
112
55
93
69
76
138
152
122
169
140
74
122
111
178
128
98
65
118
79
100
67
140
92
73
77
58
81
37
101
122
104
37
122
130
110
122
128
37
134
182
181
86
138
146
77
136
55
101
158
135
139
122
104
123
132
92
105
114
55
93
104
109
122
67
138
189
137
144
140
58
58
139
37
152
130
168
136
67
67
91
126
114
69
92
103
144
152
92
152
140
152
131
55
105
122
67
178
105
107
107
152
104
102
138
114
95
112
109
122
41
127
67
56
122
84
55
111
55
84
55
92
165
146
91
91
111
78
119
55
104
92
147
109
127
123
139
104
152
55
119
148
103
169
92
131
140
109
122
107
77
75
105
145
180
123
122
110
105
79
133
110
117
94
92
126
58
109
86
92
165
37
98
127
128
95
98
93
92
105
145
112
138
105
74
69
122
112
137
104
74
110
122
89
83
98
55
146
67
123
79
139
169
55
79
89
158
158
115
169
80
37
92
145
144
100
55
126
107
178
122
104
169
139
67
110
109
93
158
138
111
56
119
126
104
58
55
92
114
101
134
140
144
37
56
74
127
114
58
178
79
67
86
77
114
68
68
112
71
55
162
67
58
122
75
86
117
127
93
79
56
93
97
106
99
68
77
99
104
163
144
92
127
138
110
126
152
158
104
92
93
67
109
144
169
67
95
136
102
105
144
103
122
58
138
112
56
146
138
117
93
105
171
146
93
103
138
165
105
122
138
138
91
74
109
178
105
92
75
92
80
91
96
56
139
178
124
87
104
92
37
122
61
135
67
104
105
104
98
122
126
107
111
92
69
91
67
138
114
144
97
55
126
105
67
122
87
122
109
142
101
111
92
79
92
86
127
115
55
95
149
100
104
112
103
124
69
55
120
178
110
111
92
58
74
111
55
101
93
104
118
139
100
55
104
152
128
64
86
79
136
152
94
138
56
138
93
122
127
109
100
56
86
119
81
120
131
77
92
144
118
126
67
56
98
128
122
110
94
152
77
67
127
146
83
110
138
139
55
158
110
139
152
152
126
67
148
146
107
130
111
128
123
37
130
110
92
98
122
147
92
163
105
163
105
86
134
164
171
131
136
171
168
169
127
77
144
104
138
93
77
92
105
139
110
160
126
103
103
178
74
104
105
67
69
55
109
120
121
178
55
92
118
110
104
93
126
67
128
138
126
119
126
104
92
58
78
102
56
87
89
110
123
134
97
138
112
105
105
91
132
149
134
122
135
104
178
122
162
152
122
122
89
134
95
144
169
105
37
69
84
55
113
104
68
57
122
121
77
181
93
55
55
89
89
119
152
58
127
103
110
101
92
99
141
118
103
122
92
140
93
140
67
122
86
86
178
92
127
92
122
105
58
111
55
134
153
138
55
163
163
55
127
107
105
92
86
118
135
128
114
139
109
127
107
92
139
167
114
105
122
80
138
110
93
158
111
127
105
67
126
109
127
67
169
69
111
86
136
55
67
169
122
103
123
146
55
146
148
92
148
104
95
111
110
164
126
55
139
93
146
55
152
126
58
131
93
74
124
128
105
92
162
105
77
68
167
110
92
114
110
126
101
92
92
86
105
58
92
55
102
123
109
140
168
128
93
56
55
152
95
111
117
122
69
110
138
102
147
110
153
137
139
67
178
93
58
77
111
92
92
120
92
55
92
67
37
130
108
112
152
144
138
107
178
128
56
144
110
130
56
103
108
180
67
37
92
79
89
37
129
122
124
104
92
92
108
138
89
134
138
58
83
80
69
111
129
127
122
55
77
79
122
126
110
91
79
123
152
178
105
93
113
114
158
67
77
56
107
93
110
93
104
144
37
73
124
92
58
119
119
98
99
92
105
156
144
126
145
67
67
138
55
122
67
134
126
56
120
122
124
105
152
92
107
178
140
81
126
104
105
119
93
56
169
138
58
91
93
86
55
55
136
138
132
122
146
69
127
110
104
119
55
93
145
93
68
110
126
69
156
109
67
67
138
120
95
93
105
122
67
68
79
56
37
156
108
67
144
55
122
152
92
56
93
142
107
122
110
104
74
75
123
126
105
67
92
128
123
37
152
56
74
169
112
92
92
92
105
101
178
67
128
115
111
103
104
92
148
75
104
67
111
83
123
126
92
69
105
132
123
92
58
152
104
97
128
92
144
120
105
182
79
178
105
89
92
126
107
124
67
94
112
108
55
128
107
124
58
55
178
110
122
146
110
142
86
145
112
67
55
74
132
105
119
91
61
123
37
103
91
75
171
110
152
58
123
97
56
110
37
110
58
110
89
107
158
138
104
168
104
107
124
69
58
67
102
56
138
135
101
124
140
55
132
110
180
103
139
55
115
164
105
92
106
132
79
92
125
105
37
122
154
56
89
144
86
92
139
110
138
105
146
105
97
139
100
144
137
97
146
169
169
178
67
122
108
75
122
127
74
178
163
148
92
110
55
128
111
77
163
122
75
126
68
130
104
139
55
146
109
107
103
105
55
169
167
110
55
56
103
55
108
92
55
128
86
168
135
110
138
104
139
126
136
79
131
67
126
178
178
107
55
127
87
146
56
86
112
86
139
67
97
93
126
93
109
104
55
55
92
91
169
128
152
146
182
92
104
104
92
127
136
105
125
138
55
139
152
104
56
86
37
144
122
105
178
122
92
144
67
139
55
122
109
105
167
75
56
58
93
69
134
74
103
37
123
69
140
118
138
58
111
112
117
68
131
67
58
104
134
103
98
164
165
102
74
56
56
122
68
55
144
56
101
111
83
69
67
94
134
93
56
75
37
55
148
138
77
100
75
69
126
56
91
55
136
58
55
92
93
98
104
178
55
93
124
56
107
130
67
109
144
109
92
122
169
178
122
111
124
138
110
134
135
109
79
139
122
92
105
92
168
92
107
92
127
74
126
139
58
55
106
88
83
163
104
110
55
126
87
153
108
168
104
122
110
138
92
55
109
104
79
97
122
55
97
110
92
138
126
132
114
136
55
77
126
41
86
117
55
93
106
93
105
83
74
152
128
104
92
88
169
126
74
122
79
148
128
107
77
127
92
93
122
119
108
122
127
146
119
99
68
122
124
105
122
134
103
58
137
178
105
56
178
126
110
92
152
111
167
103
56
126
146
67
138
93
110
93
94
112
122
144
127
92
104
93
111
105
160
138
118
98
127
92
105
158
74
118
92
92
129
105
140
84
178
110
127
122
92
55
104
132
95
55
77
92
79
164
55
106
81
128
79
167
140
164
126
55
156
86
128
55
69
168
69
138
126
126
88
126
171
55
55
122
106
55
97
92
138
73
104
139
131
122
55
86
109
78
158
55
55
93
93
86
142
132
92
104
136
104
104
105
108
125
126
126
111
75
55
104
92
117
109
165
58
100
102
109
37
92
55
163
91
122
101
76
101
139
122
83
92
105
92
77
89
103
132
88
146
123
117
77
132
115
75
168
102
122
83
144
89
118
144
129
138
138
103
102
139
110
58
180
103
114
83
37
69
180
75
92
100
169
138
134
92
105
169
110
125
86
128
55
93
69
107
37
109
67
104
138
111
116
110
92
108
106
146
101
145
139
106
105
127
140
126
138
126
127
128
119
92
93
105
104
119
56
122
114
112
126
69
93
58
102
130
148
105
109
110
156
122
139
110
138
105
74
58
125
109
91
67
102
79
122
105
74
94
91
127
93
115
101
144
103
110
77
126
136
132
178
111
111
56
98
88
111
92
58
139
146
178
55
128
57
128
152
92
128
127
126
93
37
67
67
127
104
99
178
105
93
82
128
126
92
104
122
67
110
178
92
110
107
91
131
37
75
75
136
138
144
114
67
99
71
132
93
92
67
164
100
131
131
85
111
146
144
91
152
141
132
127
104
84
169
104
153
103
126
104
109
129
118
119
75
145
92
138
134
55
104
92
110
167
100
56
55
119
126
105
138
138
139
144
74
56
119
140
144
103
168
78
122
107
107
55
68
147
111
119
126
139
58
126
112
104
124
109
79
164
101
110
122
151
92
92
87
126
128
55
55
110
93
134
139
138
169
104
144
163
101
126
93
74
93
69
55
160
137
75
74
150
55
55
130
171
134
103
144
139
86
114
105
56
67
112
80
55
109
136
105
111
101
55
124
79
178
121
107
178
67
67
123
119
102
110
146
67
138
148
126
95
100
110
92
58
83
105
92
120
56
86
92
126
103
68
146
110
56
110
110
109
55
125
105
104
129
110
111
171
178
85
69
107
105
56
91
99
110
75
126
126
188
110
69
169
146
178
129
138
109
137
110
55
168
135
56
67
111
67
126
110
87
56
94
134
139
55
68
126
103
140
92
92
106
130
74
110
37
127
37
123
105
68
93
124
152
126
104
89
67
130
152
160
168
67
180
104
110
75
110
97
148
139
138
138
55
122
168
139
92
106
122
178
104
79
138
105
122
101
109
77
103
123
104
138
124
79
92
57
146
119
67
56
139
130
55
111
105
55
55
115
140
93
101
92
92
92
69
100
104
128
124
55
92
93
104
113
96
56
37
119
145
55
122
92
86
105
122
37
94
83
56
110
163
110
83
107
138
126
105
110
169
126
110
138
140
91
138
79
56
128
103
92
138
107
105
55
79
152
122
131
78
55
120
92
180
150
102
69
93
92
105
139
122
109
144
139
171
37
104
171
102
132
128
75
92
105
67
138
135
122
139
147
164
132
146
105
67
122
127
69
83
104
75
79
67
55
55
138
130
37
93
178
126
93
123
105
86
109
118
127
69
67
109
111
73
55
55
83
83
117
114
67
126
79
131
125
69
105
55
107
99
98
92
77
105
56
178
55
164
103
119
122
152
55
126
146
97
58
92
105
169
146
119
127
178
101
109
69
169
92
55
104
127
86
69
58
120
148
67
99
158
67
178
74
93
134
109
104
148
128
123
56
55
139
79
55
122
141
105
74
129
104
126
158
55
92
56
110
111
74
69
93
153
92
55
141
37
126
124
126
122
107
77
55
110
104
86
111
93
96
126
105
104
111
91
109
123
122
89
138
128
111
93
92
126
156
124
92
104
37
93
67
93
138
126
122
147
107
110
67
85
111
103
111
140
152
75
92
103
120
67
128
99
98
68
162
67
146
138
56
139
55
77
110
98
105
131
93
98
55
142
144
67
58
92
110
119
67
92
86
37
102
145
122
79
126
110
56
110
91
110
169
134
123
138
55
67
134
122
158
134
73
138
126
101
179
102
56
55
93
107
131
138
110
79
109
110
73
110
146
111
107
75
104
122
56
180
84
158
178
92
104
55
55
137
37
152
100
67
112
92
107
37
92
140
168
74
79
79
98
131
140
146
119
127
55
75
103
128
149
163
122
110
100
164
58
92
69
110
69
105
104
55
169
158
126
128
56
111
118
127
93
139
137
108
127
92
126
137
110
104
110
138
93
115
92
92
110
144
103
92
109
138
67
110
167
56
122
131
138
119
148
110
105
67
126
87
129
92
55
111
122
104
69
97
92
89
104
107
178
137
88
132
162
104
123
93
68
149
105
92
55
55
119
110
168
117
148
87
83
102
103
111
67
144
121
126
65
111
105
105
111
131
86
56
68
128
124
84
67
79
55
77
139
122
105
178
95
92
92
92
134
92
178
126
67
105
126
37
122
100
92
127
55
112
98
105
92
92
101
138
92
96
178
124
77
138
127
126
122
108
152
93
106
99
152
93
152
112
122
119
148
144
93
92
171
91
102
124
126
139
122
162
152
139
92
99
110
119
69
136
134
58
92
104
126
99
92
144
148
123
138
93
142
123
139
147
101
164
112
110
127
146
152
93
110
114
91
122
56
168
110
178
55
126
149
145
136
103
139
119
111
58
122
138
92
152
107
125
55
152
122
80
152
124
99
110
55
128
37
122
128
128
111
112
118
146
122
119
110
145
137
37
105
67
125
69
86
138
93
124
77
112
144
122
92
68
105
67
58
111
109
93
126
119
91
138
122
140
110
105
169
81
72
110
111
144
139
55
118
112
86
108
97
111
107
111
128
103
140
128
69
105
123
105
130
100
55
182
104
152
122
178
98
110
132
67
142
159
152
105
140
110
58
126
177
79
104
106
92
58
110
69
110
92
119
69
93
105
138
138
123
138
93
134
112
129
178
122
91
68
74
75
88
79
110
91
162
67
110
55
114
77
127
92
93
105
111
158
127
55
128
55
137
178
99
138
126
92
55
111
91
112
89
75
55
144
126
55
128
109
122
126
93
117
148
119
131
86
115
138
152
109
119
67
158
77
156
37
67
124
178
119
55
110
99
58
126
139
107
77
104
169
89
106
126
122
123
138
75
126
139
126
122
93
131
138
56
110
101
138
105
114
126
134
138
180
56
144
55
110
127
122
80
100
105
37
58
58
112
110
122
124
91
139
110
138
91
37
110
56
99
121
77
69
74
134
122
106
152
93
126
111
122
92
91
56
126
74
152
139
97
68
122
123
67
106
74
105
111
79
67
92
92
103
139
37
164
138
178
37
178
103
110
86
132
58
69
126
139
58
140
58
119
88
97
75
122
69
103
75
126
128
58
122
55
143
56
146
111
114
56
122
146
127
127
84
133
146
178
94
152
152
114
134
122
138
137
111
67
101
140
56
164
110
119
91
146
124
58
100
138
93
93
104
89
67
138
76
110
168
92
110
92
107
110
93
55
86
121
91
123
136
105
92
104
144
97
103
87
56
122
180
107
120
153
130
79
152
104
180
105
120
169
93
169
117
169
92
67
122
152
169
107
132
68
126
144
148
120
81
171
37
128
101
83
75
180
109
123
111
92
55
121
67
99
58
144
83
114
119
132
106
134
99
83
178
140
136
77
126
92
58
92
127
92
105
92
103
105
67
104
110
94
91
139
55
105
97
75
104
105
92
103
144
122
67
79
139
126
110
127
105
178
169
146
138
152
139
96
55
128
67
138
86
126
110
91
105
92
127
163
93
107
138
92
101
140
127
111
138
138
67
136
128
93
110
98
37
87
37
104
67
68
122
127
98
146
138
127
178
105
122
100
67
132
86
124
86
134
138
110
67
115
119
111
144
92
126
111
105
140
93
88
67
55
138
81
178
137
92
127
178
79
107
123
93
104
55
111
123
110
111
107
110
105
74
104
110
113
126
83
85
128
140
86
75
105
152
69
56
69
108
37
104
103
107
152
111
122
93
169
152
125
101
79
169
114
110
139
92
131
118
110
97
84
107
56
118
110
100
92
93
138
79
74
93
105
91
119
101
79
37
81
107
104
139
69
91
58
92
72
127
139
77
104
130
86
138
105
104
108
110
100
56
101
109
105
91
130
92
119
109
93
178
110
86
37
91
126
119
56
138
98
126
128
67
146
92
58
98
93
122
148
55
131
182
137
37
123
126
92
138
77
139
56
56
69
55
122
114
37
67
98
67
56
126
103
139
86
111
72
146
110
103
55
139
148
139
58
110
110
139
105
111
111
138
118
83
131
138
92
171
123
110
140
37
110
100
55
98
130
55
79
99
109
64
152
123
119
110
92
55
87
104
55
144
86
56
37
105
91
122
97
111
69
98
92
146
92
110
134
105
84
107
123
139
93
55
115
123
109
131
108
55
138
69
178
160
55
151
55
92
105
110
81
92
138
98
67
58
130
130
99
119
92
122
92
115
104
122
55
37
131
92
88
107
119
37
122
56
107
110
136
178
117
119
146
110
79
102
110
109
152
137
56
55
146
93
115
103
67
146
99
122
67
128
104
139
110
118
171
156
105
99
87
122
86
138
93
136
109
110
122
84
86
152
110
122
178
101
112
93
91
92
140
110
134
146
55
111
104
69
152
111
123
104
92
86
110
56
74
93
109
110
110
75
110
55
64
87
111
164
92
105
56
146
122
119
115
55
140
111
160
169
98
132
107
164
101
58
79
138
122
160
37
55
127
56
55
108
37
69
95
37
79
98
55
104
67
138
110
127
105
135
110
103
103
148
75
58
92
146
142
178
138
127
103
123
105
146
92
92
122
103
107
148
134
150
171
144
134
178
126
86
91
110
56
111
102
58
73
58
139
126
103
120
138
74
86
136
67
178
105
108
138
148
108
104
122
87
92
98
92
122
128
127
55
108
104
138
105
75
56
123
103
79
178
114
111
83
86
127
55
126
64
119
67
91
144
104
92
122
109
80
55
67
124
67
86
75
83
107
93
92
55
126
67
146
92
139
55
92
92
119
131
99
79
58
123
130
97
56
122
93
92
104
86
55
91
124
107
79
126
127
67
178
114
55
99
111
199
127
107
92
178
103
171
109
69
37
93
69
114
110
110
138
139
145
67
124
37
126
136
37
116
126
37
92
139
138
92
146
92
103
127
69
168
100
37
93
92
105
145
127
134
69
104
122
92
58
100
75
92
144
109
106
84
112
114
105
104
136
139
146
140
178
98
136
105
92
152
93
56
144
110
104
99
86
146
129
107
122
130
122
110
110
152
92
107
138
100
110
79
67
97
111
104
55
171
139
104
122
105
123
119
98
99
163
92
93
81
93
110
171
122
55
160
106
105
55
79
37
125
112
92
105
67
132
117
58
58
111
105
122
93
67
83
79
55
109
69
101
92
108
122
122
134
55
127
68
55
109
119
92
107
128
93
104
69
94
104
134
119
134
56
115
93
37
112
111
126
122
111
140
71
145
141
110
92
92
119
169
92
122
110
163
58
97
107
123
67
75
152
75
140
140
55
110
119
56
114
140
77
124
86
92
55
124
105
119
138
37
139
99
68
100
56
84
67
79
86
142
55
91
138
104
58
74
110
111
91
105
83
119
86
126
92
152
107
122
126
98
139
56
58
122
93
122
58
110
118
105
67
109
138
123
56
93
55
83
56
188
105
56
55
138
132
101
67
103
122
146
91
110
144
58
134
89
118
92
126
138
178
140
58
124
104
119
128
146
137
55
169
55
67
119
109
178
104
104
56
92
69
132
122
92
106
163
55
74
56
86
160
182
123
126
146
110
56
107
124
123
169
58
55
67
83
92
126
69
68
79
55
144
37
104
92
127
122
125
122
123
58
127
126
55
137
171
55
110
105
81
132
140
58
122
106
171
111
93
91
112
124
55
126
122
58
146
128
74
76
126
92
122
127
86
134
76
138
178
94
124
56
69
115
126
92
147
58
171
122
100
122
97
86
55
158
92
178
86
93
112
97
69
103
126
138
152
124
119
104
122
122
180
127
91
55
55
75
83
105
135
118
97
104
132
134
140
110
115
146
37
83
137
109
122
110
162
111
104
117
144
86
58
130
104
128
88
126
169
105
55
138
56
134
92
162
135
55
110
146
138
91
126
37
81
55
92
124
152
110
138
99
138
99
110
111
100
162
37
92
136
139
92
122
169
130
37
122
120
67
105
105
92
86
55
105
169
178
148
93
171
122
139
67
126
81
139
162
137
104
138
67
92
37
89
55
91
69
148
134
95
162
152
139
146
134
74
138
79
127
91
99
123
105
105
68
178
58
119
119
126
37
80
77
97
99
139
55
135
101
140
171
37
130
58
69
127
169
117
69
122
83
109
91
169
138
79
104
171
88
105
58
130
102
132
67
115
111
117
127
110
118
158
134
106
128
125
178
110
86
67
122
92
55
91
92
137
107
101
103
92
113
91
124
152
139
79
93
101
115
144
93
112
127
106
111
126
93
128
105
140
127
93
180
37
105
152
69
105
67
109
178
67
93
148
122
79
58
98
92
120
58
110
139
56
92
128
92
119
138
99
110
126
83
92
58
146
107
144
55
127
122
105
110
92
122
160
164
126
55
104
68
152
122
109
117
180
107
127
105
37
115
74
67
95
67
99
92
93
86
95
104
152
93
79
110
106
144
92
92
128
178
105
129
55
146
86
127
127
100
134
134
126
119
56
92
92
139
118
148
91
55
139
122
92
126
178
56
123
86
131
138
56
105
148
152
55
127
71
91
92
162
86
93
110
92
93
86
97
110
37
178
79
55
99
97
169
111
110
122
92
105
165
97
178
111
77
138
89
69
92
105
104
105
152
145
84
94
152
99
95
126
127
92
67
144
178
86
109
67
124
164
89
99
168
98
101
55
104
138
134
93
67
92
122
74
77
131
37
55
122
58
134
104
93
107
93
138
37
105
178
107
58
92
77
126
69
178
126
92
79
69
55
126
95
117
199
55
140
104
128
144
126
105
119
158
111
86
115
92
99
122
86
138
92
103
105
115
109
130
104
127
109
79
100
55
137
56
105
152
141
114
55
100
67
126
127
152
104
144
117
123
122
92
139
111
58
103
84
89
139
77
84
79
79
92
92
110
103
99
126
138
74
124
93
146
86
84
109
127
138
144
151
146
92
152
149
126
146
110
129
73
92
126
67
83
103
144
77
37
67
56
109
180
105
148
127
126
162
74
69
58
105
67
122
178
89
123
123
56
138
55
97
127
93
78
139
68
123
67
67
69
108
110
77
67
105
67
77
111
152
130
126
137
117
144
132
128
138
67
99
79
138
128
169
117
109
127
119
92
97
91
139
119
146
93
84
92
55
128
107
126
58
138
105
152
67
92
158
55
69
127
99
127
140
119
138
77
92
75
138
86
55
67
112
122
119
182
137
144
178
92
79
92
138
127
104
146
105
111
134
79
79
92
56
138
119
75
146
146
105
110
58
178
104
79
109
89
123
75
139
110
156
139
158
120
92
110
77
112
75
122
86
101
138
127
169
104
116
110
67
122
110
105
128
55
124
58
89
138
92
67
126
91
131
124
110
127
126
69
78
110
55
108
163
105
93
107
93
69
165
128
99
145
126
147
108
134
55
139
56
93
169
140
56
119
168
126
136
152
126
146
114
127
55
127
55
123
192
126
146
163
58
102
109
126
126
124
126
58
140
55
133
160
89
55
128
122
139
79
75
123
134
138
126
110
111
126
152
110
151
138
55
139
92
58
92
148
160
101
178
69
37
93
79
95
126
105
108
120
104
105
92
55
56
67
97
92
103
122
93
109
132
152
105
75
92
104
73
114
67
138
104
111
162
122
58
88
92
56
164
122
79
109
122
105
152
58
148
178
92
169
138
126
130
111
109
92
164
105
105
122
138
94
55
143
111
114
89
114
140
93
55
107
162
107
55
55
91
86
105
88
69
74
178
110
111
56
104
105
55
119
111
144
114
92
138
87
86
56
67
55
111
84
144
112
72
83
139
126
144
99
122
92
104
69
104
152
92
144
37
104
37
104
55
56
55
106
138
112
119
99
67
67
105
147
138
55
55
92
55
139
55
138
131
128
99
105
122
79
104
109
138
139
69
86
144
103
67
110
81
138
126
111
126
55
92
104
88
107
122
136
122
126
104
126
127
86
119
93
140
111
138
100
69
132
120
136
178
132
144
107
83
79
152
67
58
93
139
164
99
146
122
178
92
118
104
55
144
152
79
104
126
110
128
74
128
37
55
171
111
92
101
122
110
139
139
107
127
105
110
56
58
55
146
67
122
75
111
165
105
84
74
130
131
122
110
104
92
67
57
152
130
92
144
103
125
180
138
122
92
86
94
112
98
37
55
93
139
91
158
67
92
152
97
67
98
78
131
56
77
97
55
86
122
109
37
99
55
93
55
104
111
134
103
118
67
105
100
137
140
119
69
105
122
119
127
122
98
138
139
37
64
92
107
92
55
74
58
55
69
138
110
82
93
55
107
58
171
168
144
55
138
56
144
111
138
86
92
122
69
152
122
131
67
126
126
178
149
55
67
58
92
122
178
67
110
68
97
110
110
126
122
79
124
79
108
55
123
58
37
123
87
92
55
55
122
127
55
74
126
75
92
107
92
89
124
167
79
117
86
104
148
110
132
67
104
86
55
114
110
144
146
110
67
67
158
127
77
105
178
67
140
122
92
93
126
110
107
100
144
102
67
92
122
107
107
144
92
122
55
152
132
140
126
92
128
110
84
91
37
114
93
69
67
93
132
76
146
146
95
69
105
160
162
130
122
93
98
55
92
149
106
83
122
86
139
98
55
69
148
69
67
37
56
122
114
110
76
152
92
146
37
130
123
79
37
126
131
67
163
94
92
75
119
69
126
69
122
79
94
91
97
93
104
178
83
158
92
92
169
127
92
138
101
87
163
128
37
134
139
138
138
128
55
69
67
110
76
89
167
110
86
138
118
75
93
55
77
122
152
105
111
92
119
127
107
119
55
138
126
83
58
126
56
138
130
86
100
101
67
138
110
88
122
152
126
77
67
126
104
37
103
56
56
74
58
178
126
111
145
79
86
122
124
99
139
92
138
110
83
67
126
163
87
105
132
134
55
138
68
37
104
58
68
56
67
164
55
105
93
55
67
83
105
93
93
124
147
110
120
168
100
104
81
122
139
105
127
93
92
58
92
126
104
120
107
37
119
140
79
92
93
128
91
146
139
128
102
55
67
124
126
91
103
165
87
120
131
55
122
122
69
139
109
104
131
92
138
105
67
87
122
56
55
105
122
126
105
77
79
122
79
58
91
105
103
143
149
178
55
105
111
120
92
55
67
78
92
180
116
126
109
92
102
136
138
138
67
55
55
83
138
130
127
137
93
99
109
106
146
92
67
122
103
58
111
55
93
67
111
37
108
138
108
126
88
122
126
107
139
105
122
126
128
109
158
110
110
167
132
93
105
77
79
84
104
55
126
136
171
58
56
92
138
96
103
102
99
75
127
79
105
58
168
148
67
92
55
127
56
112
140
128
92
122
118
93
73
83
110
55
56
123
144
119
163
105
92
117
56
152
180
134
110
105
144
134
110
178
138
69
99
122
180
79
144
105
74
86
139
123
86
105
126
74
110
111
152
132
74
92
92
126
178
92
93
77
118
55
37
95
58
138
111
56
141
67
111
111
91
105
122
122
122
134
58
91
92
84
77
110
95
119
94
93
104
58
92
92
92
110
37
122
119
126
110
138
37
107
93
92
69
67
126
128
122
92
56
56
89
81
122
97
105
123
126
102
105
56
77
108
162
75
114
92
126
55
122
119
56
88
122
110
111
122
56
92
74
56
107
107
178
106
56
151
126
127
138
146
92
103
127
77
93
56
110
67
56
56
109
149
89
110
104
162
83
58
92
122
134
126
132
126
127
110
104
119
122
146
128
79
58
55
105
128
138
77
112
67
144
93
139
93
68
99
112
55
64
139
109
64
188
146
134
77
146
77
122
139
160
126
81
92
98
138
130
58
124
101
77
135
118
81
104
78
138
139
55
77
135
162
79
141
126
55
88
138
67
69
122
92
144
55
56
129
55
83
119
163
146
105
107
128
56
178
152
137
105
113
110
138
110
127
110
146
103
86
125
101
128
148
58
105
164
74
102
99
92
74
92
122
148
67
138
37
79
104
125
56
67
92
67
99
92
178
67
97
92
127
123
91
56
178
104
178
86
180
130
76
168
144
124
144
86
122
79
107
126
104
92
56
92
104
104
67
140
144
55
92
58
92
99
104
138
56
55
92
169
106
67
93
111
139
139
75
118
139
55
93
92
142
146
168
123
92
92
128
146
92
103
56
127
126
146
169
104
37
122
132
136
142
55
126
118
80
178
56
56
110
83
109
110
91
130
69
134
91
127
101
92
58
104
140
92
110
106
139
103
138
99
74
126
138
126
55
55
122
126
122
104
114
122
55
124
37
180
97
93
136
69
144
105
122
122
146
69
110
126
130
127
105
75
123
91
137
93
104
112
79
95
58
152
178
110
126
114
139
160
144
126
127
104
122
92
92
124
139
37
67
127
110
201
92
79
127
86
69
122
104
91
37
109
100
107
124
55
93
86
58
105
137
134
122
144
111
169
126
84
139
126
123
104
105
83
124
56
178
126
94
139
104
124
134
143
149
169
127
91
126
111
55
91
139
98
156
144
69
107
77
168
161
117
55
178
182
105
99
109
146
123
126
93
83
105
107
79
92
139
55
97
95
122
111
58
171
124
106
124
138
104
83
160
152
56
113
127
115
103
77
58
140
37
122
147
140
77
81
122
158
67
92
109
178
165
126
105
104
92
111
75
55
83
103
71
92
99
169
79
122
92
58
109
83
74
119
103
86
55
84
55
88
77
127
144
127
110
178
93
141
101
169
100
91
119
147
158
92
83
79
109
55
37
126
110
55
76
110
144
122
58
143
55
118
99
109
86
140
64
105
105
122
110
139
92
128
125
144
127
110
111
152
102
119
109
105
79
98
178
104
146
84
109
105
152
112
163
83
92
138
167
107
126
80
152
56
95
55
92
110
79
131
137
75
138
69
56
79
75
178
199
137
91
139
105
122
144
93
105
92
37
69
123
110
126
55
104
56
127
37
138
122
93
126
131
138
110
93
86
93
109
120
55
92
124
135
79
99
55
138
92
55
169
64
55
74
127
122
146
107
67
122
93
108
93
119
118
111
122
56
139
110
110
110
122
146
69
67
110
104
126
126
93
145
55
58
69
122
148
74
146
55
122
134
68
144
122
169
145
131
107
122
122
110
111
178
93
89
92
146
111
128
107
69
131
55
162
126
118
122
91
104
105
55
130
88
105
86
67
152
139
162
55
110
111
135
55
145
56
97
77
110
110
79
118
75
163
111
101
138
37
69
171
144
144
105
86
105
126
128
92
55
67
104
69
120
111
92
138
188
97
110
138
126
138
139
134
122
138
109
92
110
120
105
140
105
92
104
137
127
110
160
56
139
180
126
110
74
124
134
131
92
92
99
68
152
93
131
128
178
124
126
139
86
103
80
92
88
178
55
37
110
55
95
148
37
110
56
79
160
93
104
56
67
110
103
89
55
55
122
68
122
55
169
138
138
119
111
131
67
107
130
37
93
110
106
119
117
110
178
67
55
92
126
109
74
92
93
97
123
91
89
93
126
111
128
169
105
92
110
55
104
178
126
144
115
119
118
55
128
122
91
163
144
127
37
81
128
92
119
139
83
122
108
117
104
126
93
178
158
37
104
87
138
89
92
103
55
110
104
139
104
114
138
89
109
37
121
122
105
169
92
58
87
152
86
92
138
105
138
122
110
138
120
105
102
86
139
92
76
117
108
123
75
139
126
74
138
138
178
128
130
146
138
114
68
67
122
100
37
121
124
74
91
68
127
146
139
56
138
144
93
55
55
37
86
58
67
122
148
92
122
141
55
148
75
148
92
119
126
126
83
146
122
100
127
126
122
122
111
79
56
122
111
130
114
127
92
144
114
89
122
67
144
128
145
92
126
110
122
79
91
104
105
128
58
92
152
92
152
67
55
56
139
122
92
122
110
69
105
92
168
69
199
77
140
67
106
75
58
118
168
79
58
55
55
124
100
103
149
88
56
142
169
55
122
55
84
77
188
56
55
103
122
138
125
144
139
92
105
179
144
105
131
123
108
93
92
137
140
109
127
99
110
58
123
119
104
83
78
122
152
92
110
98
55
105
126
97
97
100
69
69
55
91
122
122
69
104
152
127
126
126
67
79
111
58
123
91
128
139
83
91
75
86
92
115
144
182
110
119
127
103
74
92
122
117
104
69
121
55
92
119
178
140
99
92
56
126
110
55
135
86
122
79
164
148
86
67
122
79
67
97
107
68
37
126
123
92
93
138
58
140
96
104
92
127
168
126
55
55
134
92
84
56
126
37
134
92
127
163
158
55
98
86
122
163
124
134
169
158
92
126
146
126
126
103
92
69
104
92
92
146
134
126
55
140
134
84
58
114
97
76
97
55
92
126
93
158
126
126
105
114
144
92
140
138
123
144
105
122
111
122
100
104
126
55
138
122
83
138
109
119
158
122
138
93
178
124
105
125
108
93
142
93
84
86
110
110
37
55
74
146
105
93
138
37
139
126
100
111
79
74
136
109
95
74
139
92
56
123
95
74
92
114
167
101
104
110
105
77
92
146
160
74
128
134
123
86
110
140
138
93
77
119
55
124
118
92
110
132
138
56
104
122
65
55
99
182
109
177
74
58
99
77
93
126
103
68
67
138
56
75
56
92
89
138
146
95
87
146
77
55
110
79
75
56
111
103
92
126
122
58
139
92
120
56
93
138
144
123
75
86
110
55
123
92
84
37
107
169
87
110
139
110
93
81
92
67
128
111
92
37
126
169
118
122
55
69
178
130
119
79
168
139
103
67
69
67
140
112
149
57
92
126
86
84
56
93
122
55
58
104
83
101
92
148
55
55
122
58
128
146
148
139
146
67
37
104
113
92
108
55
103
103
92
55
92
138
134
112
122
140
119
127
122
106
138
37
140
77
67
93
122
144
110
91
110
120
37
92
169
67
92
122
122
77
126
138
148
103
163
87
178
92
178
92
95
199
92
55
139
114
114
67
37
92
67
75
127
110
93
124
67
138
55
109
109
108
138
180
107
131
123
98
122
114
67
58
167
68
126
109
123
92
92
99
123
93
144
127
134
91
126
55
158
105
150
55
87
122
79
97
171
103
105
169
119
58
149
118
92
103
119
168
37
55
119
122
146
139
110
56
123
139
103
86
126
74
134
55
105
97
75
104
114
55
92
92
58
93
91
103
58
119
55
104
100
95
55
152
93
122
92
93
178
77
92
127
56
37
67
105
120
122
104
92
81
122
92
58
126
86
92
163
99
106
79
107
122
128
109
69
107
56
132
112
107
58
37
77
139
105
58
92
98
120
109
160
126
126
68
77
93
104
56
103
56
79
105
74
55
75
103
105
105
91
92
105
106
105
123
139
126
86
67
77
56
121
168
93
93
67
114
139
169
122
178
171
144
117
126
103
97
91
83
75
120
165
67
68
77
160
83
122
67
104
106
93
112
117
140
91
67
71
110
55
139
144
56
91
74
128
122
55
92
55
110
152
99
119
92
122
89
55
162
74
140
67
139
123
178
78
127
56
86
55
77
77
58
119
144
87
122
122
105
84
105
130
74
169
134
130
148
105
110
118
105
67
55
109
95
108
92
130
79
148
55
93
178
169
110
92
126
80
86
134
91
102
74
131
138
148
131
67
55
103
123
135
171
142
92
104
93
101
91
104
137
119
68
67
152
74
110
104
64
126
146
134
152
121
107
139
55
105
197
107
86
69
129
93
111
83
169
122
67
74
134
119
37
113
105
110
67
37
76
99
104
97
91
130
37
122
37
145
105
37
122
178
138
139
134
105
92
107
126
92
109
117
178
152
139
122
169
122
93
99
96
122
119
77
127
138
134
102
178
95
144
122
144
109
69
111
56
67
168
92
93
119
178
58
67
146
124
58
131
92
79
58
109
132
74
152
92
92
126
126
110
128
79
75
86
164
110
131
93
69
111
144
111
104
147
127
99
91
104
55
92
110
126
83
110
137
91
139
95
119
112
93
135
138
69
137
55
94
114
152
138
119
74
37
93
58
92
93
94
55
69
99
105
122
96
93
67
134
120
98
126
58
86
92
115
101
104
126
158
37
164
144
122
56
92
126
127
122
122
119
162
139
105
105
93
84
108
160
101
126
56
92
81
89
139
67
138
93
37
168
123
145
134
178
37
87
148
138
126
156
79
152
150
79
92
148
86
139
152
105
105
56
55
146
152
101
146
103
109
96
55
79
105
122
107
122
91
99
138
148
147
75
132
140
110
169
181
104
127
79
68
108
178
126
124
73
122
67
56
122
92
110
122
37
92
56
169
103
148
56
132
144
109
67
127
138
111
160
105
138
165
138
109
92
103
123
104
141
93
148
56
99
124
139
144
120
79
110
145
110
138
99
137
55
92
158
79
162
91
92
99
144
134
105
123
110
104
106
126
86
104
138
37
56
86
55
169
169
138
92
119
139
86
115
55
168
92
138
138
146
107
56
55
134
134
158
126
104
138
127
123
148
105
69
37
127
144
138
134
144
144
134
112
123
104
99
101
97
127
110
128
140
139
138
158
131
111
92
105
92
111
140
55
126
74
93
107
114
37
126
122
55
98
113
110
75
92
122
134
127
136
93
140
55
138
127
135
145
37
121
92
105
146
104
104
80
97
107
81
110
152
122
37
67
86
58
92
178
122
131
101
76
138
69
37
164
134
126
67
107
104
127
105
152
67
122
91
99
69
109
92
92
83
111
105
99
123
75
163
101
131
55
117
122
67
112
122
119
123
113
148
58
107
134
92
55
105
104
77
56
110
152
132
110
146
67
92
122
107
100
104
144
56
141
139
140
58
126
98
58
67
58
91
86
105
127
110
95
105
55
118
124
112
55
67
169
156
104
55
101
134
104
96
110
99
123
56
126
110
110
99
77
92
58
91
93
122
126
92
104
103
92
127
158
77
110
169
56
81
99
92
93
158
107
87
80
55
144
58
168
74
128
89
123
127
56
122
67
142
111
105
114
86
107
110
92
117
131
153
119
55
117
132
110
152
79
109
110
80
103
126
127
92
122
55
146
134
77
67
120
138
69
171
67
106
55
128
109
126
169
84
110
178
105
56
100
114
160
80
138
138
92
138
55
67
126
178
107
93
55
110
127
119
105
136
146
126
86
127
122
135
68
111
55
58
138
135
92
105
117
56
83
126
92
83
100
178
105
152
92
58
55
55
92
55
110
152
148
74
74
67
79
163
126
160
180
55
146
169
74
55
122
92
146
55
56
104
111
142
119
105
93
75
37
111
108
37
110
86
110
89
58
110
110
122
93
56
126
119
108
67
104
146
55
163
169
127
75
160
92
140
152
139
139
67
92
75
126
169
55
55
131
105
79
119
142
92
189
138
69
127
86
127
75
126
134
120
37
58
55
74
79
119
93
68
37
100
131
126
67
128
94
83
146
119
162
128
55
92
125
67
152
93
102
55
126
79
140
132
55
69
103
77
122
92
122
67
167
112
74
138
91
111
110
79
58
111
178
110
103
91
146
168
55
134
37
122
134
126
105
107
104
127
138
171
56
81
123
104
103
126
134
122
141
91
126
130
84
84
86
132
55
180
141
138
169
109
110
139
91
122
152
105
122
137
141
55
92
92
92
130
126
56
110
99
103
67
67
86
88
102
163
55
37
58
55
68
110
132
145
56
126
91
152
74
142
67
148
126
87
110
77
139
97
109
105
93
144
37
105
56
37
69
110
132
128
124
75
56
127
139
124
127
67
69
92
123
110
98
126
167
58
91
75
126
92
69
93
67
92
55
138
126
110
145
56
100
105
67
148
92
109
138
104
131
148
79
93
84
55
121
79
168
163
55
110
123
148
104
178
93
101
138
86
121
112
58
148
178
104
101
178
110
138
167
92
37
110
138
146
93
73
37
67
74
109
138
131
101
103
107
139
110
123
93
92
104
105
128
146
139
107
110
109
122
144
112
126
105
105
99
69
178
103
138
144
140
120
124
126
188
92
92
152
140
108
158
122
148
171
127
74
99
58
139
105
146
55
145
126
92
93
180
114
134
91
178
124
107
122
117
79
110
152
72
74
91
126
56
92
128
136
105
112
110
126
69
126
118
134
55
37
92
93
92
109
123
69
132
92
101
109
134
120
99
122
178
102
123
105
168
134
127
138
119
79
109
123
140
37
126
98
122
105
139
126
138
37
104
126
139
55
58
102
78
138
107
89
112
105
127
130
100
140
86
122
116
92
105
127
92
102
104
112
118
93
112
74
79
152
83
61
151
37
123
69
107
156
134
55
93
92
89
140
92
163
119
86
86
110
74
93
127
37
109
92
122
178
112
122
105
77
110
110
79
108
91
138
93
88
110
109
91
83
91
122
77
152
135
119
105
127
92
67
75
105
67
67
144
86
119
56
108
152
132
110
110
92
84
92
67
58
58
77
178
168
139
139
84
115
98
92
104
79
122
58
99
69
127
83
92
58
110
122
94
56
93
111
120
37
145
171
86
67
112
93
119
99
91
138
93
105
99
55
110
110
67
92
58
152
105
122
58
55
178
138
178
92
105
92
91
160
104
142
97
92
139
178
86
138
110
107
138
92
88
55
148
77
104
67
56
123
55
130
77
126
86
93
123
56
126
67
103
144
103
128
68
105
89
124
103
110
75
99
126
55
100
126
110
81
126
69
144
75
139
134
37
55
152
110
93
128
105
106
119
92
67
126
92
139
75
74
55
58
195
115
86
180
104
105
144
92
140
105
93
104
126
93
55
140
67
105
119
131
171
55
120
126
92
132
106
88
103
55
67
169
104
122
171
117
93
93
86
110
138
56
100
148
139
139
93
131
109
110
178
138
107
92
128
134
92
91
56
111
95
92
111
93
105
146
69
92
105
79
110
96
138
56
58
139
67
79
114
109
122
67
55
92
138
93
93
92
180
69
122
92
117
178
69
104
110
55
104
92
74
128
69
93
152
144
128
110
162
105
158
110
148
126
92
112
75
144
91
144
123
128
128
139
92
99
92
131
144
92
109
92
84
122
103
152
92
153
126
91
67
110
100
119
104
93
67
152
114
105
56
104
92
105
138
163
92
171
92
58
92
122
146
58
74
91
112
75
56
104
67
55
56
107
128
55
92
92
154
113
126
119
180
126
158
122
111
83
139
98
82
74
146
135
88
67
119
163
58
91
146
105
69
56
97
136
104
105
110
126
104
163
122
105
99
122
109
149
107
110
92
107
56
105
56
114
111
93
139
140
79
77
104
92
105
80
138
92
91
104
148
80
37
111
146
127
56
84
92
91
111
83
93
169
152
55
105
139
93
67
89
37
79
127
144
83
136
93
83
105
110
138
122
102
138
104
126
110
92
122
69
74
114
105
109
93
139
124
122
127
105
110
91
88
144
123
99
104
138
111
97
144
105
37
105
75
105
67
134
178
76
75
158
69
122
122
140
138
127
67
58
112
79
67
55
87
140
101
77
152
103
89
167
92
68
119
168
138
124
128
110
91
106
123
110
107
83
69
152
152
148
67
107
122
109
105
128
111
119
156
86
101
79
168
127
122
119
92
75
178
104
122
105
134
131
55
132
164
114
77
55
139
131
138
55
86
91
55
120
114
95
104
67
180
136
109
126
92
55
130
122
77
110
105
138
103
178
104
158
122
122
79
105
105
97
74
71
80
104
104
137
144
110
139
169
93
139
93
138
124
138
92
55
77
56
178
146
126
58
113
119
123
56
139
169
86
105
169
104
58
178
93
135
67
107
138
122
144
148
132
104
78
86
122
99
123
75
139
144
146
92
127
74
126
56
128
78
91
76
105
86
158
104
144
56
138
100
131
67
92
84
83
130
55
123
114
92
139
122
83
122
199
92
92
93
126
55
55
104
55
105
56
103
67
74
138
74
127
111
119
82
69
92
67
55
100
97
131
122
110
69
138
199
67
98
127
79
122
112
138
37
128
92
99
109
102
142
138
55
138
77
92
152
127
92
94
110
55
114
124
99
69
132
158
130
104
92
110
122
117
123
101
123
67
56
56
92
37
74
79
158
169
113
68
110
138
55
139
118
169
119
139
56
131
93
56
55
86
127
55
127
88
69
152
92
117
117
144
138
152
75
113
105
55
93
104
130
126
56
104
92
55
69
86
104
93
138
110
102
56
55
105
117
146
128
122
107
111
123
58
123
123
124
122
67
55
105
104
93
92
178
83
105
58
56
67
106
84
110
104
103
138
122
86
110
158
92
68
111
110
122
69
136
68
56
79
107
122
131
110
129
131
105
92
169
105
178
146
104
104
79
110
79
74
141
114
111
146
110
109
114
178
122
178
144
37
103
110
152
56
92
122
124
127
105
81
115
126
67
109
138
88
101
122
178
144
126
55
138
100
56
99
94
126
109
134
126
123
92
178
122
123
104
107
126
109
122
103
118
86
112
125
56
92
105
105
67
110
69
77
168
138
92
83
110
83
128
98
69
178
122
103
130
146
146
178
58
111
138
126
105
67
86
92
92
37
113
182
88
137
122
77
144
69
138
127
100
92
72
68
56
77
124
107
107
135
93
111
99
169
119
111
169
113
146
111
79
139
104
92
140
69
138
92
164
93
56
93
68
86
111
92
105
127
92
138
92
188
126
92
67
92
138
103
143
106
55
148
98
121
127
123
162
114
56
104
83
106
146
86
56
107
55
111
86
127
58
123
111
110
101
74
146
104
105
126
55
105
107
95
110
138
79
109
111
74
169
109
128
144
74
37
144
122
55
93
56
92
126
128
97
146
123
110
144
100
86
136
67
107
98
134
91
105
91
111
113
93
56
97
178
74
105
128
123
122
123
74
55
138
111
58
98
92
122
152
134
58
110
180
109
178
138
163
127
126
93
99
69
67
105
106
74
126
127
126
122
138
110
138
123
122
55
58
55
69
134
139
92
109
122
107
105
127
140
122
91
127
142
105
92
55
67
157
126
146
122
124
37
140
37
145
105
132
126
58
105
127
128
104
55
138
122
169
158
107
139
93
144
102
123
55
67
69
104
105
86
104
127
69
67
92
68
110
110
110
104
58
122
94
91
112
102
144
99
178
123
178
92
104
99
140
117
110
110
144
67
138
110
126
105
119
199
93
154
74
92
92
122
55
138
144
101
55
105
152
122
122
105
100
67
55
104
110
92
92
68
120
163
105
138
145
126
111
105
110
145
105
169
148
139
105
105
117
122
122
56
126
126
37
126
67
55
105
121
92
107
158
99
138
77
94
37
122
92
104
110
92
104
55
127
128
105
55
110
67
92
123
104
138
152
92
92
139
67
146
110
78
110
86
168
37
152
92
95
107
55
144
56
134
130
92
93
119
99
83
65
127
92
139
126
37
56
117
151
138
92
122
92
55
55
141
92
111
105
37
108
101
56
104
105
122
94
132
55
107
119
55
148
132
142
130
92
152
92
124
93
92
104
67
55
112
104
104
138
123
55
107
67
127
105
178
92
58
134
180
146
178
169
126
165
92
138
95
119
141
178
93
103
55
78
138
67
92
58
126
105
130
95
110
128
92
67
86
122
93
134
178
110
122
128
79
71
78
58
99
55
105
105
105
152
109
138
103
110
106
124
126
97
106
105
139
92
92
123
69
97
105
138
77
92
104
151
126
122
91
97
123
37
134
123
105
56
93
56
68
105
69
86
134
148
123
93
93
188
67
77
140
104
103
171
118
103
109
106
84
171
178
152
79
129
105
104
126
124
37
58
56
177
129
37
134
103
107
122
107
130
93
104
160
127
92
127
112
152
138
127
119
66
89
138
55
144
119
91
69
56
93
83
178
77
55
58
126
97
55
92
136
124
56
119
99
101
100
92
171
84
171
142
110
122
104
95
92
56
134
97
55
138
110
105
56
92
117
79
67
126
101
56
104
93
110
91
144
112
169
92
37
93
67
123
58
111
138
93
75
92
84
104
93
92
105
152
111
105
110
67
92
139
110
126
83
83
92
146
88
84
127
139
108
142
56
119
120
55
37
92
86
67
92
103
92
55
92
92
104
167
105
106
139
178
92
103
56
87
145
107
169
110
153
105
67
107
79
92
67
138
149
138
124
77
144
120
107
58
107
84
56
122
103
122
111
110
126
102
123
96
152
178
110
139
138
126
67
56
58
163
104
37
105
56
114
109
56
110
115
146
69
92
74
124
67
86
105
115
105
58
178
138
95
69
126
199
55
169
68
163
67
92
104
104
93
110
77
126
152
91
110
122
58
146
55
77
93
152
92
107
56
92
83
104
128
55
140
92
131
122
110
69
92
107
77
105
117
138
128
139
139
104
126
128
37
94
55
58
69
92
129
168
123
58
93
55
105
99
83
55
123
77
122
105
67
56
148
138
128
144
144
92
178
55
160
110
126
104
92
171
136
55
83
99
152
178
126
123
69
119
92
37
127
122
130
55
109
146
92
56
89
55
75
127
75
178
92
139
93
92
122
138
127
104
178
104
138
97
104
92
56
123
94
91
105
140
124
137
163
122
111
122
122
55
138
141
144
58
69
127
97
105
126
81
178
79
92
126
74
146
171
86
56
139
55
146
135
104
92
75
77
104
140
138
89
93
109
164
67
111
55
128
55
123
104
144
152
138
103
126
171
139
122
146
130
107
93
199
67
110
158
171
142
92
56
107
86
144
103
111
128
126
79
124
108
144
109
92
111
139
130
122
122
69
178
93
93
139
126
119
55
55
97
134
178
125
146
93
123
126
122
55
178
119
158
126
104
130
92
144
92
69
123
105
69
103
92
171
56
55
128
92
67
128
67
37
152
171
93
75
146
83
134
109
55
128
132
110
55
144
79
101
93
92
122
164
139
105
110
93
67
127
168
92
55
56
140
152
122
69
69
67
125
93
56
127
125
127
103
126
128
104
122
134
77
84
67
130
112
139
144
72
86
105
86
148
148
129
107
142
67
77
140
76
58
110
55
131
178
124
105
141
58
100
138
131
67
105
89
137
139
146
105
105
92
55
91
56
152
139
110
128
67
92
110
122
93
67
58
95
111
127
93
105
126
126
180
163
58
139
146
146
110
126
109
67
127
55
102
107
55
56
79
126
132
101
148
56
105
178
171
118
109
120
128
105
56
122
55
168
181
104
56
122
77
56
152
37
130
104
77
126
92
138
98
55
109
131
105
105
92
102
92
126
105
58
130
119
92
83
142
126
120
56
146
110
178
178
122
107
104
148
55
41
139
138
55
121
178
67
126
55
124
138
105
146
127
37
77
110
178
127
115
152
56
126
55
105
122
110
122
152
122
126
128
105
55
56
119
74
86
119
141
69
105
140
92
92
122
68
75
77
169
139
111
104
105
83
122
124
92
37
144
87
56
119
111
74
104
104
110
101
112
127
99
134
93
126
58
67
105
99
108
104
119
144
104
163
93
126
58
58
37
111
100
107
83
104
92
79
83
119
138
107
110
93
128
106
92
131
109
124
111
144
126
134
69
109
67
122
104
104
105
146
138
104
99
126
178
144
114
102
138
93
55
92
93
56
146
83
101
126
92
55
108
56
67
67
131
158
181
113
128
58
37
105
67
126
105
79
110
56
123
37
126
122
127
80
103
91
101
178
112
104
144
115
56
104
146
122
67
69
137
118
93
110
163
37
92
182
143
86
138
55
138
67
126
109
126
79
105
122
55
91
110
163
58
179
69
99
152
119
92
126
122
91
110
109
160
163
110
126
122
180
76
103
71
112
86
74
123
55
93
144
77
171
103
92
55
122
74
110
37
131
104
122
93
110
134
68
89
120
107
81
144
105
99
103
56
55
150
124
108
56
164
92
68
110
126
105
103
122
140
131
56
110
92
112
123
86
92
105
105
131
37
120
67
110
55
58
105
105
122
37
67
140
103
92
102
169
122
111
122
105
56
97
134
104
98
178
55
110
91
103
56
109
55
37
110
93
58
126
92
69
105
105
162
107
92
105
56
139
123
129
106
122
92
146
67
144
119
178
79
119
69
110
92
37
109
148
105
125
58
138
56
55
110
107
83
126
122
169
69
92
138
148
99
55
72
146
56
109
92
92
105
56
55
83
37
92
103
132
92
58
122
67
67
107
69
154
88
134
183
55
67
126
144
128
144
58
138
127
130
92
106
178
128
92
138
93
110
88
55
126
178
92
146
138
107
92
130
114
67
139
178
163
56
105
122
126
128
124
146
93
122
93
138
67
152
95
121
69
92
104
125
105
112
144
119
92
144
122
67
37
138
122
83
156
126
178
123
104
77
132
104
178
37
139
104
146
97
108
104
104
104
93
146
117
37
122
115
92
146
138
144
126
69
95
128
123
105
104
105
55
138
79
87
126
96
58
56
146
99
144
178
148
91
74
74
131
109
68
37
122
56
105
101
95
67
98
93
109
109
103
37
119
83
55
92
123
92
123
139
69
146
58
105
104
105
55
158
117
104
104
89
132
55
139
109
122
92
105
55
55
105
55
141
119
118
110
116
92
104
122
77
146
169
119
110
135
138
109
102
105
146
56
55
181
93
139
171
124
97
158
56
139
126
86
68
106
79
107
79
92
84
130
94
77
110
55
114
107
93
55
83
104
138
55
58
132
110
142
126
163
109
141
127
110
103
56
37
110
126
91
68
84
86
178
118
58
160
126
112
110
93
96
156
137
92
92
112
126
152
98
108
109
110
101
91
114
56
178
152
126
91
98
68
105
137
126
105
102
110
126
79
104
55
149
55
138
91
126
92
130
111
138
58
134
110
89
92
123
77
92
141
79
77
126
58
127
114
144
37
139
58
135
110
101
71
110
134
105
92
152
93
55
122
91
79
86
150
128
107
178
92
97
111
138
128
104
145
104
84
67
37
74
105
118
122
126
83
86
109
127
139
127
163
146
91
123
149
104
126
107
141
107
109
125
126
86
81
136
56
138
105
110
122
67
122
93
86
124
117
126
146
92
105
68
122
93
144
138
55
146
55
110
128
104
67
136
68
56
139
86
136
107
148
178
83
56
86
114
148
110
138
91
55
107
146
119
104
67
112
93
55
91
56
119
58
93
146
105
126
109
138
138
55
126
126
140
122
160
138
105
123
67
55
69
130
168
171
67
75
110
110
134
95
100
90
138
178
110
37
152
55
93
56
93
91
107
68
103
138
105
98
86
102
117
102
122
103
151
102
93
58
146
110
69
105
111
169
68
126
74
128
37
37
127
104
150
146
126
148
58
114
138
81
139
104
93
140
37
144
129
74
99
37
139
74
152
67
103
68
93
138
75
108
67
110
146
55
126
126
139
110
138
74
67
55
105
122
129
58
160
134
178
145
140
140
83
103
67
137
113
55
104
134
67
178
139
67
92
111
77
56
107
92
93
77
114
105
158
120
139
89
110
128
127
103
129
67
110
58
138
92
128
105
55
119
123
138
118
79
93
122
55
152
110
128
56
152
127
93
152
55
122
140
122
122
83
115
91
122
68
69
128
127
105
105
86
75
58
67
104
58
92
126
69
167
92
122
56
146
169
138
134
178
134
58
93
86
107
140
111
105
169
95
178
144
55
136
132
128
56
124
107
138
56
140
37
112
92
118
126
69
122
92
131
58
99
107
107
124
92
178
104
55
138
56
126
146
98
138
124
114
97
37
98
88
89
92
89
136
68
106
92
123
109
74
146
127
126
97
107
146
136
83
55
105
111
92
152
126
122
138
105
77
119
126
128
83
105
91
139
178
132
92
69
130
122
126
55
99
126
164
58
76
144
104
140
182
122
106
138
92
92
110
67
139
99
80
132
139
92
58
122
55
91
152
109
126
123
58
145
122
144
188
92
91
126
75
145
109
167
105
92
104
127
105
139
140
92
127
126
134
58
99
110
119
126
92
127
119
109
149
124
110
110
122
98
132
137
100
56
104
127
37
111
124
117
122
55
127
92
138
130
99
93
126
37
106
68
143
138
102
137
110
109
111
56
122
138
87
55
148
55
75
107
135
107
110
56
127
178
101
113
126
67
122
127
122
91
122
103
126
92
128
105
131
108
126
152
58
56
99
75
171
178
92
111
97
199
119
55
140
77
126
128
127
178
140
104
158
55
93
93
152
146
92
69
92
138
132
58
144
140
91
101
112
67
123
124
88
74
105
124
93
159
178
67
148
124
128
144
103
126
120
146
110
107
80
178
178
165
81
37
67
86
120
92
140
138
55
55
37
99
126
140
126
67
92
110
56
126
104
126
91
126
137
163
158
122
84
55
37
92
93
55
77
100
131
55
56
55
152
58
146
92
55
134
93
110
109
110
103
139
67
67
56
140
110
104
126
179
77
104
115
119
68
126
102
91
146
55
93
119
77
178
91
127
88
91
75
138
142
84
92
68
55
93
55
92
127
77
124
37
99
92
149
97
55
135
148
55
158
109
79
123
56
148
152
144
138
104
105
139
138
139
108
37
139
92
55
105
122
83
123
86
134
131
105
86
93
69
107
123
138
169
138
131
67
100
77
92
178
104
93
105
83
92
122
104
128
134
130
138
126
55
122
86
122
92
92
55
110
93
178
145
152
91
122
144
55
139
134
69
92
79
168
120
127
67
178
110
55
130
134
140
57
86
111
122
55
105
92
126
92
89
77
55
92
55
103
101
158
58
110
107
78
122
56
92
55
153
119
144
55
112
67
126
107
154
148
138
138
126
177
152
105
123
110
139
110
118
112
94
144
171
104
86
37
124
126
67
67
138
92
75
146
117
92
104
123
69
130
110
138
93
92
167
178
56
56
58
145
110
105
154
69
91
77
127
106
177
93
127
171
126
98
178
118
148
93
164
101
97
71
178
55
104
69
178
141
67
139
37
188
58
73
86
138
111
138
158
126
134
146
110
178
108
144
144
99
110
126
93
105
139
138
110
92
93
162
160
144
140
128
119
91
110
107
55
79
110
103
109
92
109
138
74
134
37
67
55
138
107
171
130
146
126
111
55
111
105
105
67
158
77
126
88
91
146
103
67
89
92
91
122
92
93
134
169
101
56
139
92
146
67
94
91
134
92
37
180
58
110
110
131
104
138
55
93
92
74
123
37
110
127
55
130
58
107
56
77
118
122
97
124
111
138
107
74
92
92
37
122
94
75
130
119
109
66
69
107
126
110
77
122
69
134
130
144
67
101
122
126
152
126
110
110
128
128
110
56
92
92
92
55
92
37
58
83
104
79
56
55
98
98
171
128
122
83
107
56
126
69
144
86
109
110
199
163
92
84
152
74
97
92
64
145
67
55
107
111
83
169
74
158
158
127
55
75
77
79
138
37
168
55
147
126
163
128
105
55
67
112
122
110
109
148
110
105
130
110
148
91
163
55
107
138
92
178
99
77
58
122
146
85
152
134
139
87
99
138
140
89
74
92
55
55
99
138
89
91
144
126
99
171
67
77
180
114
73
69
121
148
96
100
168
103
98
124
138
105
110
146
95
112
69
135
77
110
119
83
124
69
111
79
147
110
137
139
79
92
67
76
146
124
67
138
105
92
103
124
171
105
98
56
106
126
109
104
124
95
122
135
92
67
108
123
84
58
58
84
122
101
72
190
67
105
177
149
122
140
132
114
92
118
83
122
110
136
56
144
56
100
86
72
92
152
110
152
103
67
101
55
92
105
119
79
58
107
135
132
69
109
140
98
137
56
124
67
110
56
126
110
56
156
92
139
144
142
119
122
122
104
178
74
124
55
123
163
91
139
165
122
102
109
107
110
132
69
91
152
56
114
105
69
75
98
56
126
95
146
110
83
92
55
55
92
107
55
98
182
127
72
69
91
178
108
146
103
123
122
81
127
138
92
112
68
108
128
124
104
78
79
92
128
77
105
75
68
97
132
122
149
37
110
109
89
93
37
91
55
37
83
159
56
134
122
93
139
138
138
104
178
117
92
103
126
138
92
77
92
126
92
92
111
92
110
74
126
84
105
92
92
122
110
69
56
125
124
122
67
138
109
114
56
138
83
56
97
105
107
91
67
67
103
139
93
127
138
74
126
91
98
67
107
138
119
67
119
104
37
138
83
119
110
152
122
124
92
77
77
122
126
118
171
111
115
134
93
91
55
127
123
94
103
91
122
55
134
110
127
55
94
127
144
92
146
146
55
178
92
126
37
77
119
105
68
55
138
120
138
131
109
128
100
126
67
126
98
107
107
127
124
92
89
128
56
122
109
97
37
69
92
92
56
93
95
92
55
127
68
197
80
141
77
119
69
74
115
160
37
178
146
127
105
171
111
112
140
105
105
131
114
105
105
93
86
168
146
178
104
127
105
138
56
146
132
139
169
56
106
69
169
122
56
93
92
139
92
105
109
132
67
111
37
55
55
85
92
91
67
138
55
107
135
105
58
55
132
92
140
84
122
126
56
75
139
122
55
125
139
67
178
105
74
122
111
126
99
92
55
77
105
165
137
112
171
98
77
77
105
69
138
134
114
162
56
55
126
130
107
126
140
139
181
114
124
115
112
104
139
168
138
180
68
104
125
105
126
93
87
56
55
122
109
122
144
93
110
67
139
98
93
55
122
104
110
55
168
69
109
67
104
93
56
110
67
145
105
122
150
122
77
126
144
178
104
127
75
139
56
124
137
79
55
92
125
139
88
83
126
92
67
72
107
125
105
93
126
122
123
152
126
136
180
110
178
128
67
83
75
55
124
136
100
119
126
91
120
146
56
163
55
77
138
138
100
79
58
122
122
140
110
105
93
138
93
92
68
105
83
134
69
92
67
144
136
126
131
92
146
109
91
152
127
74
126
92
144
58
138
109
119
58
108
138
122
75
107
132
123
134
128
105
144
122
107
111
83
86
110
37
104
109
124
138
134
140
119
67
93
123
92
101
120
69
128
109
122
92
91
162
58
86
119
83
92
79
146
125
56
146
105
111
165
122
74
110
92
122
101
117
104
123
55
92
118
92
178
105
100
92
120
138
37
136
138
110
93
55
56
119
55
122
138
134
178
122
110
104
110
110
110
107
56
122
77
74
110
55
130
112
55
128
92
122
144
107
144
135
99
140
109
67
122
169
122
158
122
146
128
138
92
105
146
126
109
56
178
67
75
152
120
134
171
138
58
105
79
127
77
139
105
180
56
122
55
138
104
192
122
146
110
92
131
55
126
99
146
178
69
134
56
146
123
141
105
119
103
37
122
104
56
169
105
69
91
55
80
92
128
107
135
77
84
92
92
126
92
56
138
99
91
125
122
93
58
92
146
104
123
128
104
178
138
37
56
122
119
104
163
120
91
37
152
58
91
126
106
169
37
178
138
93
91
139
134
139
111
69
178
107
110
138
144
67
114
126
127
67
123
127
83
74
126
92
127
105
67
58
103
69
75
88
139
92
114
138
122
127
124
105
127
37
88
112
92
92
68
105
144
110
127
112
55
139
134
110
58
56
140
123
92
122
109
91
109
55
126
56
37
55
55
92
126
37
55
109
124
93
55
146
76
102
69
127
138
128
104
67
103
86
138
92
55
37
130
127
92
67
108
37
55
168
67
110
93
55
122
67
92
93
58
178
122
140
149
37
97
180
169
67
122
112
110
95
144
138
119
92
169
99
79
56
136
124
138
138
68
149
84
79
67
145
67
55
96
92
130
140
83
146
109
91
58
140
92
139
92
149
128
138
144
37
126
122
162
55
92
55
92
122
144
126
107
56
180
58
93
67
75
138
37
91
156
91
81
104
105
67
122
111
67
126
55
167
111
138
134
69
152
107
158
92
123
145
58
84
92
102
58
103
124
120
119
120
122
111
144
37
139
110
92
57
110
122
98
163
112
128
55
127
118
110
74
119
37
104
37
110
77
97
169
84
74
37
120
55
139
89
93
92
114
110
98
140
110
140
139
158
110
153
124
110
131
69
55
136
127
92
139
97
162
75
75
114
74
134
169
105
131
84
122
106
93
110
67
158
69
92
56
158
58
148
146
110
100
86
109
55
106
58
146
105
92
148
138
110
88
148
109
56
81
37
110
126
123
105
138
105
110
77
95
105
148
97
126
105
93
122
136
67
67
67
108
75
91
127
109
122
93
55
117
103
151
109
114
135
138
92
74
169
89
110
67
68
55
99
127
120
55
77
127
97
123
91
69
97
99
169
67
124
158
135
121
136
117
123
78
131
110
119
79
79
152
93
100
92
75
92
105
137
126
110
110
92
75
92
111
69
111
67
122
77
144
109
104
92
67
119
79
91
141
79
104
107
131
112
147
127
138
135
134
178
136
135
120
127
131
132
89
69
126
109
152
37
99
109
55
139
81
164
91
95
105
74
105
119
122
146
107
169
104
104
126
104
126
178
93
168
74
152
152
105
93
37
178
126
138
110
105
119
89
160
140
101
107
69
92
99
123
67
55
92
114
93
79
139
137
79
55
118
92
67
119
144
140
132
77
178
126
104
107
152
139
104
37
146
126
91
55
93
122
109
91
112
115
92
105
146
110
109
136
79
55
99
81
139
126
109
92
69
122
102
123
139
99
55
178
91
80
136
123
69
132
104
37
92
117
83
140
55
129
140
84
123
97
138
104
55
138
140
126
37
110
86
139
149
119
55
129
107
171
122
110
104
101
106
92
69
69
126
147
58
84
178
93
124
91
104
130
120
126
56
92
134
141
83
67
102
105
110
69
92
104
37
99
105
178
110
144
100
97
83
93
105
148
92
55
99
99
137
101
95
122
100
56
110
105
104
158
97
124
55
127
92
105
95
126
119
92
105
138
106
148
92
123
69
139
97
75
104
120
69
74
77
105
138
86
56
119
138
168
37
93
81
84
92
89
178
75
56
122
109
74
55
152
104
160
126
122
37
146
123
104
102
55
77
106
104
130
110
107
67
37
92
75
67
105
160
120
67
105
55
107
86
122
112
56
55
167
55
146
128
56
163
78
152
91
56
92
91
55
119
99
92
104
106
137
123
126
100
119
164
110
114
168
56
111
131
123
125
75
67
92
100
103
69
138
58
163
127
99
108
178
110
74
105
93
126
67
89
103
107
110
145
83
74
98
197
79
152
105
118
92
122
77
138
92
123
104
160
92
110
58
122
126
138
104
127
55
123
67
55
144
95
152
105
104
103
138
104
110
178
86
105
81
118
163
77
121
130
110
127
107
110
138
130
122
74
92
79
105
118
92
132
110
109
84
169
144
98
126
92
55
69
169
103
67
151
132
74
128
110
100
69
160
110
128
37
168
138
68
79
131
130
104
122
169
55
122
165
111
127
156
123
110
55
152
104
171
178
110
146
37
97
164
93
77
146
93
105
139
56
128
115
168
117
58
55
105
126
122
128
103
178
122
105
67
101
162
199
55
130
178
110
55
169
126
126
93
92
127
152
67
67
106
93
145
55
104
92
55
147
178
117
92
105
178
127
79
93
111
134
58
86
92
91
92
163
55
127
106
75
37
138
105
56
163
110
105
110
93
78
105
105
103
109
89
138
180
87
137
77
138
126
55
58
75
61
67
158
152
178
104
105
79
86
138
146
110
56
99
75
55
105
84
104
104
138
110
165
122
134
134
86
84
180
139
126
131
105
92
119
140
103
92
37
178
93
138
75
130
129
67
110
104
79
55
92
160
93
152
55
131
91
139
122
163
104
137
110
74
67
107
144
56
93
126
122
93
138
67
110
169
144
58
77
93
178
104
122
55
169
171
145
132
178
178
80
69
126
55
74
122
105
126
132
105
140
77
105
122
92
110
58
146
100
110
75
55
83
79
56
146
148
119
92
83
168
127
124
109
130
105
138
106
95
37
100
140
136
126
148
132
37
126
86
122
97
127
152
122
152
55
110
179
69
56
139
138
92
140
111
107
136
168
122
104
122
126
129
105
108
123
159
92
67
92
95
37
56
107
180
92
55
178
126
58
142
117
124
119
98
162
106
111
114
140
55
77
122
123
110
67
138
88
67
69
127
58
126
112
123
122
147
105
152
68
104
104
169
122
108
126
110
100
109
112
109
84
127
104
138
148
127
126
126
122
128
67
55
74
178
119
139
137
105
92
180
104
105
120
102
120
128
69
178
111
134
67
123
158
169
152
97
112
92
158
146
164
55
123
111
130
55
144
97
110
37
105
104
144
124
55
138
131
124
151
92
130
140
83
61
107
92
74
93
79
134
110
106
128
102
169
92
131
149
103
56
55
56
93
55
112
152
37
105
69
107
134
74
110
93
110
119
137
104
107
97
120
120
55
127
137
56
110
110
55
122
105
105
110
122
74
93
122
118
99
92
97
138
92
128
103
55
148
110
67
110
92
123
55
95
106
89
83
105
77
123
78
151
67
103
80
92
140
89
137
145
110
137
75
58
74
91
126
69
122
110
55
139
110
104
126
67
83
77
178
92
146
58
121
67
114
110
55
144
105
122
107
138
142
95
105
111
55
75
56
132
138
145
94
126
61
126
178
97
84
178
67
110
178
146
111
142
150
106
77
136
130
162
132
56
126
105
126
132
146
67
56
140
56
158
169
138
158
55
92
104
126
126
67
64
91
128
37
127
89
118
140
127
67
110
138
79
110
110
124
164
92
92
93
97
138
92
126
105
102
140
128
110
93
120
92
146
123
178
58
138
122
99
138
136
146
37
67
67
111
178
149
114
117
169
99
37
102
77
119
152
93
118
98
120
104
107
92
127
140
178
55
120
152
107
109
86
139
142
55
110
122
122
106
126
92
110
144
138
55
126
105
120
73
107
93
67
122
75
91
119
99
104
140
135
56
138
138
103
87
68
75
178
158
138
55
105
111
134
131
132
162
69
69
122
105
55
138
126
91
128
55
163
37
110
77
126
55
105
99
97
152
67
119
139
128
74
120
145
77
55
93
101
56
127
122
55
55
105
114
106
80
152
126
139
115
117
93
69
105
79
37
61
102
67
171
92
148
86
130
110
134
91
192
167
103
92
122
109
110
55
127
92
178
140
86
74
122
158
98
103
140
86
92
122
92
122
119
55
104
58
139
107
69
92
77
56
122
105
122
122
144
111
126
167
101
105
128
92
113
83
56
109
93
91
86
56
123
151
132
79
178
122
128
119
92
110
104
126
56
74
107
104
75
180
138
37
128
99
152
77
55
110
55
58
77
93
114
127
76
68
144
127
144
55
58
67
128
105
135
144
91
105
92
37
58
69
56
103
89
58
134
110
93
139
110
55
56
75
110
110
128
92
122
92
92
117
92
88
55
110
86
105
104
77
80
110
123
168
92
122
128
67
122
58
55
128
75
67
37
99
178
105
138
171
146
110
92
91
92
101
105
79
144
111
178
122
86
93
107
138
139
139
91
114
126
92
93
123
58
110
77
92
105
37
138
139
144
110
122
119
122
100
114
134
111
99
104
105
126
37
122
74
127
167
55
152
74
79
55
75
56
67
152
123
138
110
149
138
68
110
92
122
93
139
93
56
67
103
144
98
58
92
110
74
69
83
127
108
131
111
93
105
110
92
74
103
103
97
110
58
69
107
138
128
123
92
84
138
92
124
99
122
100
79
110
106
97
110
111
104
124
119
69
152
93
137
132
109
77
127
83
117
84
138
104
114
146
95
104
127
99
104
55
178
162
105
69
126
119
139
169
122
126
152
68
131
92
129
128
123
109
81
102
119
58
108
122
122
104
122
130
77
111
124
78
122
128
110
100
55
138
163
98
92
110
58
55
106
134
107
122
55
68
104
138
114
67
139
138
125
135
94
122
69
121
119
86
130
92
92
92
92
169
92
138
92
105
56
55
127
58
110
146
120
110
55
98
110
126
132
56
55
104
122
105
67
119
67
144
89
56
92
79
123
103
91
69
93
55
146
178
144
58
140
55
188
37
74
140
119
110
138
144
144
139
58
139
134
110
69
167
122
79
58
128
130
163
93
169
128
140
56
37
169
138
69
67
105
169
128
144
92
92
55
79
56
138
144
37
110
110
95
152
92
80
110
92
127
110
138
105
158
124
128
199
55
128
122
75
119
79
136
69
126
69
100
124
104
110
144
69
105
127
55
92
97
92
77
109
131
106
86
140
89
128
58
37
88
105
138
122
122
105
79
104
74
99
131
55
110
178
99
148
126
139
104
92
55
126
126
138
64
55
92
138
120
91
88
128
167
122
79
93
104
107
131
128
128
152
123
171
126
126
92
55
139
140
144
140
117
92
92
69
74
144
114
139
126
106
93
146
126
95
122
55
147
171
147
138
105
77
132
132
138
93
92
88
67
169
100
107
163
55
79
122
124
127
140
167
126
169
99
104
110
37
128
107
92
136
102
171
55
69
127
171
142
93
110
126
98
103
93
110
152
104
129
105
122
159
56
55
110
123
103
127
104
104
104
114
169
144
56
67
122
128
105
77
119
55
101
101
75
98
67
124
136
69
178
163
146
103
189
127
105
127
106
69
132
109
145
131
67
160
128
140
138
168
122
137
92
92
122
91
93
126
58
56
105
80
69
92
115
99
55
99
105
55
140
55
80
113
67
112
139
119
106
105
67
132
131
106
107
105
92
138
98
92
164
67
103
69
92
110
138
144
139
110
92
124
77
104
55
92
127
75
142
153
123
92
144
178
74
126
122
97
139
141
100
92
67
110
67
163
95
109
126
84
124
130
84
58
37
92
102
55
67
168
138
67
162
105
126
162
67
128
169
77
102
127
58
102
110
145
119
77
67
128
169
67
146
58
131
92
92
67
148
105
75
122
104
110
127
126
110
146
126
86
67
110
118
55
104
140
104
152
130
138
122
58
125
55
83
92
79
138
120
136
139
105
110
169
58
92
126
135
124
76
55
158
140
58
105
77
69
103
92
100
69
139
123
105
104
81
81
91
133
95
67
75
135
84
139
135
99
93
108
105
92
163
92
105
127
37
79
67
104
104
56
104
167
122
55
122
126
56
138
131
135
146
97
110
126
80
110
68
105
104
74
68
163
58
105
79
122
152
138
130
105
122
103
92
79
84
104
124
126
55
144
119
126
56
86
100
55
67
55
97
58
104
58
169
138
171
111
91
105
103
135
131
105
78
74
56
86
105
127
92
105
79
119
126
122
77
81
74
152
37
139
109
110
37
138
37
67
162
102
129
74
56
105
99
114
67
145
130
110
110
113
118
69
68
92
124
152
55
126
105
55
110
92
93
92
92
96
122
122
127
91
126
104
152
124
92
125
58
139
99
92
86
72
134
81
118
79
152
123
122
109
77
124
142
83
83
86
126
69
56
69
77
110
144
104
86
158
158
58
139
124
150
103
127
135
99
92
165
58
110
79
144
128
109
122
114
128
126
93
89
127
146
142
127
86
96
114
92
56
163
119
92
152
69
99
126
168
160
138
123
110
109
104
144
86
115
92
138
55
131
122
163
55
126
101
138
75
92
37
105
68
92
92
162
77
64
140
69
178
138
120
86
122
92
77
126
138
55
55
148
104
139
110
67
134
67
146
91
110
98
69
41
126
93
163
104
122
67
99
105
163
92
69
55
152
69
92
168
109
126
138
111
148
119
55
123
126
77
89
83
125
109
92
118
99
67
91
182
130
92
92
37
122
56
105
110
152
124
81
178
56
37
146
110
139
92
110
104
113
101
67
122
55
92
79
111
182
122
67
92
97
77
67
135
67
105
37
135
83
134
55
55
139
139
130
107
131
92
92
92
92
78
138
91
68
75
86
55
138
37
136
56
138
105
93
67
91
124
152
112
140
99
67
92
141
92
139
178
169
127
146
138
114
106
118
102
126
77
118
119
109
158
74
127
138
110
124
109
101
110
37
122
99
58
100
76
126
97
101
152
119
102
146
128
79
126
105
92
144
105
103
123
103
180
144
92
117
144
123
122
105
92
152
97
92
83
152
124
69
56
110
92
104
55
91
122
55
105
126
77
119
119
152
104
112
144
56
89
110
106
67
91
86
114
55
158
142
117
126
93
144
126
146
68
138
37
122
178
126
130
58
124
79
105
165
118
99
114
68
152
126
132
126
122
126
55
58
111
92
106
122
138
123
128
105
92
58
105
125
106
55
74
158
152
120
139
169
98
94
111
69
105
104
117
73
110
114
79
84
67
75
110
77
92
92
126
111
91
55
58
126
148
105
110
78
120
105
37
89
188
55
117
84
83
122
127
56
146
169
130
55
178
146
126
92
55
152
55
119
123
55
104
92
152
120
118
81
98
122
107
92
92
138
79
102
55
100
92
104
145
92
67
134
110
126
111
110
84
75
69
110
37
67
104
122
56
92
104
111
104
93
127
138
126
86
134
92
169
139
55
126
140
110
103
67
92
178
91
122
164
144
136
95
128
120
128
110
67
138
119
122
105
83
109
105
97
77
98
92
37
105
104
118
55
109
111
86
122
77
106
93
146
67
67
103
56
146
178
104
37
138
55
130
152
107
86
122
117
103
134
111
92
105
122
92
79
103
115
122
74
171
126
103
67
152
99
146
67
87
163
109
178
93
74
68
77
140
104
93
92
104
92
105
77
91
128
58
134
119
99
75
130
91
37
58
127
122
93
127
108
132
67
138
115
92
128
144
168
111
93
75
89
125
139
56
92
134
135
84
162
79
124
166
56
100
158
58
126
37
119
113
119
92
110
68
127
122
105
92
168
146
97
138
92
92
89
67
92
137
145
110
126
86
110
86
152
162
158
91
117
56
123
91
97
92
56
148
110
148
55
112
148
162
107
163
169
162
126
104
55
92
37
37
69
107
149
104
56
127
92
92
104
95
86
126
138
126
146
165
144
139
55
86
149
74
109
109
90
139
58
177
105
91
93
89
144
95
110
89
138
92
79
122
86
117
104
142
92
74
135
178
93
69
91
79
92
169
140
93
113
152
67
122
91
74
110
77
162
152
120
103
144
86
92
74
77
110
122
83
96
102
74
146
138
80
139
105
110
123
145
37
77
89
144
135
111
98
110
119
169
158
131
110
55
130
107
105
118
119
105
84
58
107
37
58
91
79
55
93
67
107
142
104
146
119
122
77
88
74
104
74
138
110
95
93
92
182
142
109
114
142
105
126
104
128
126
55
91
134
104
127
146
127
132
104
178
126
79
144
130
122
163
111
93
139
122
92
144
126
126
114
92
124
83
86
105
86
75
128
126
92
126
55
92
136
103
103
55
86
138
112
55
128
126
138
55
146
92
104
79
138
98
105
117
56
56
138
128
179
92
55
91
123
84
101
104
83
138
169
86
137
106
131
110
134
92
134
37
130
55
138
86
92
67
105
79
83
128
68
152
104
69
92
91
37
92
139
140
144
178
92
107
78
127
86
104
75
55
105
105
55
146
121
165
67
127
89
87
128
58
178
74
178
122
89
104
131
121
139
92
126
121
58
67
86
58
122
37
74
122
134
121
139
128
126
123
122
37
104
86
138
91
122
152
55
55
110
178
92
67
132
92
126
55
55
126
138
122
77
178
179
178
145
169
122
110
37
98
127
105
104
112
93
138
144
75
105
111
146
89
178
146
99
92
122
122
168
127
55
99
110
126
55
100
37
92
163
37
131
110
37
161
152
105
122
180
56
119
128
98
140
84
178
122
126
107
109
93
124
113
110
126
148
144
124
122
192
79
126
104
56
146
112
169
171
121
56
144
67
123
100
79
37
105
93
127
138
92
93
122
92
104
146
110
110
140
55
67
94
158
80
100
139
114
163
58
104
139
55
56
105
93
104
168
56
67
74
126
105
69
55
55
93
128
122
55
138
67
55
92
86
107
117
83
178
74
122
92
86
105
91
111
122
146
145
120
128
55
130
110
55
110
130
83
138
79
105
92
146
124
178
77
104
122
148
122
112
180
145
105
89
111
105
55
92
119
74
144
67
169
92
110
107
92
104
112
92
138
158
139
119
79
79
37
67
128
109
153
55
138
93
67
79
122
75
169
37
92
67
58
56
58
102
67
144
67
110
56
126
107
103
67
58
144
103
69
127
122
37
139
58
127
105
92
100
148
122
110
139
92
67
146
138
104
122
69
106
68
148
152
136
105
139
110
152
75
127
146
89
104
103
152
123
92
55
153
178
144
107
67
119
37
93
79
58
58
91
149
128
178
37
56
110
74
79
80
126
81
169
118
100
104
124
77
144
163
79
86
104
110
178
169
139
164
130
178
86
122
55
75
138
109
146
119
103
102
92
86
139
92
128
92
80
110
55
56
92
75
130
86
105
93
68
122
124
109
138
122
138
127
105
86
119
95
122
77
93
75
93
74
124
106
180
109
99
167
122
138
67
67
136
109
148
67
152
105
98
122
105
105
131
67
58
146
86
111
110
124
127
123
111
126
92
58
111
127
138
58
74
104
92
105
104
138
86
111
110
105
134
126
91
84
101
86
145
67
93
37
134
92
74
131
138
131
83
75
92
105
114
92
139
122
138
130
58
110
122
37
56
91
91
55
110
146
77
79
152
101
55
105
68
141
111
126
126
67
138
58
92
96
128
95
37
122
81
96
197
55
110
86
124
178
91
127
134
128
75
128
92
69
130
92
140
127
152
110
58
130
135
139
98
104
67
178
93
117
92
104
169
129
99
134
110
110
103
83
180
178
138
159
104
169
58
148
138
55
151
139
56
105
107
74
55
105
178
93
86
55
111
55
171
110
37
101
97
163
110
122
146
93
178
100
180
127
92
103
178
56
139
127
112
124
109
144
112
148
105
126
69
119
83
124
86
92
138
104
68
37
55
126
81
146
122
92
91
118
92
68
56
58
106
147
124
168
139
123
67
105
75
37
89
126
68
93
104
138
97
92
127
131
110
103
92
103
67
92
138
122
83
105
86
111
139
107
92
105
129
58
88
105
110
92
114
92
144
67
128
162
67
140
104
55
83
146
119
103
112
67
127
119
178
67
168
127
134
78
128
77
139
152
123
126
55
110
55
171
152
58
122
105
128
83
67
107
138
58
127
56
110
56
122
110
55
122
111
91
97
138
105
139
64
68
67
138
75
92
110
144
37
104
103
98
86
105
67
122
164
92
114
93
130
126
126
92
124
122
92
137
142
136
121
55
117
126
122
145
55
104
122
137
86
77
55
68
79
122
139
144
127
55
139
92
122
110
126
92
92
99
37
92
74
129
110
81
56
98
56
126
139
171
122
140
110
58
140
55
123
55
92
107
152
144
128
103
86
128
110
131
103
37
111
37
58
169
126
110
55
103
148
110
37
95
126
74
144
79
74
67
58
55
110
92
89
124
110
67
138
171
138
97
74
104
105
139
55
93
107
134
67
74
126
134
104
136
178
169
93
104
120
180
105
139
122
126
64
122
122
122
138
88
144
83
160
93
119
144
67
110
37
69
103
69
92
103
83
91
75
99
180
138
110
178
37
109
126
77
58
104
86
144
100
103
104
83
152
168
104
163
93
144
86
131
74
126
77
167
69
104
68
67
79
117
110
93
37
69
134
92
92
92
69
167
98
74
122
134
67
120
92
139
126
122
92
119
91
91
104
89
132
107
37
199
100
122
144
99
118
139
104
56
100
105
105
139
144
98
110
37
127
91
178
178
92
92
56
109
136
98
142
139
152
74
131
123
131
55
134
138
146
124
55
152
84
102
111
58
123
92
122
111
97
110
138
79
126
103
146
86
67
86
122
92
91
103
88
162
128
103
138
104
79
100
58
120
92
156
122
105
92
122
55
126
93
93
110
162
86
105
122
128
141
77
113
111
122
120
55
178
64
69
67
152
103
146
96
123
92
109
141
126
178
92
130
140
91
92
169
58
114
126
99
56
92
140
69
123
138
134
92
55
132
104
103
126
146
69
102
98
180
55
126
109
178
146
75
126
107
139
56
178
56
122
104
135
68
199
93
67
148
55
95
92
93
55
110
158
134
92
92
112
64
91
156
55
149
131
91
119
109
164
99
122
67
55
110
77
148
92
152
55
119
105
110
55
68
67
67
146
99
55
92
105
110
92
107
146
104
126
98
37
55
78
146
67
110
178
122
152
67
171
131
74
128
123
118
131
37
122
55
92
107
58
119
55
132
120
122
122
58
109
127
117
104
67
75
78
146
93
73
92
128
107
91
138
93
104
87
97
67
37
55
98
93
69
56
119
56
134
152
108
123
162
139
105
58
122
109
69
178
55
93
169
128
110
122
55
69
69
105
55
126
146
75
126
124
128
99
69
122
97
132
109
81
109
178
146
145
83
91
92
68
83
92
105
138
107
144
83
107
104
146
55
92
122
106
56
91
134
110
110
92
56
178
138
110
123
180
178
77
92
92
110
69
102
104
111
122
56
92
56
149
138
92
126
77
178
99
119
125
103
127
67
89
139
139
109
130
131
122
55
105
149
127
116
98
122
178
77
97
77
88
146
55
104
79
126
138
55
152
139
37
138
110
126
104
99
168
180
126
97
153
188
58
126
67
134
151
106
178
105
92
99
123
122
67
138
112
138
122
144
104
128
105
55
168
160
122
81
83
129
104
77
167
122
55
122
110
37
168
55
58
97
169
134
122
144
110
135
169
140
131
68
123
169
165
126
55
92
98
99
92
110
93
56
55
119
122
56
92
128
55
111
92
55
126
103
67
178
69
132
117
139
152
92
56
83
138
92
97
131
122
139
130
55
134
55
126
119
92
127
110
86
91
100
69
112
145
162
69
169
145
139
146
92
105
91
122
117
37
105
67
105
111
140
92
74
146
56
122
89
92
93
102
122
110
99
138
178
149
91
105
92
110
68
140
122
139
67
67
128
110
67
37
89
138
131
83
144
91
126
110
126
127
107
106
58
79
127
86
171
79
119
126
37
110
37
152
55
177
139
99
93
124
127
110
126
92
146
89
119
92
56
122
163
152
97
84
92
101
69
91
138
83
134
56
178
92
169
92
139
104
171
55
79
103
55
103
144
89
109
144
67
92
122
110
93
122
128
79
105
127
67
152
110
127
126
130
55
58
180
97
126
104
122
110
122
109
69
93
126
111
108
69
105
152
104
84
55
109
188
67
139
100
171
163
124
138
124
139
55
121
88
123
112
168
101
146
78
146
79
178
139
79
152
148
136
180
140
56
103
152
110
95
152
139
105
97
86
120
119
106
126
135
107
111
107
152
55
163
145
55
127
93
138
119
93
81
67
137
86
152
56
135
79
75
138
114
88
158
130
93
83
68
110
118
178
148
93
124
171
93
56
120
102
67
55
122
107
77
119
75
132
55
110
84
114
163
104
97
188
146
122
98
79
100
92
67
111
128
100
55
122
109
136
137
122
77
126
119
67
110
144
109
56
144
86
92
118
163
58
110
117
37
37
93
178
77
146
56
122
148
92
140
92
126
144
114
132
78
56
92
124
119
55
93
67
152
192
124
139
89
110
106
110
192
163
138
168
99
119
140
132
67
134
122
105
104
110
93
158
105
128
127
55
144
128
146
93
131
73
114
111
77
55
105
92
122
123
109
104
144
55
139
153
110
139
56
111
156
158
104
75
68
68
168
126
144
58
139
104
138
83
103
119
105
107
86
37
134
140
79
58
103
138
167
93
109
134
55
104
146
110
124
92
83
141
131
127
98
37
110
138
158
127
69
132
107
144
111
56
86
144
103
74
105
138
122
77
139
68
75
93
149
89
92
139
78
96
37
144
55
140
104
118
58
116
106
126
138
180
105
69
105
169
124
162
122
148
152
165
69
79
101
122
110
130
105
110
140
74
131
146
145
55
92
126
123
55
123
115
69
122
108
123
55
122
69
64
122
92
99
144
110
181
107
124
75
55
138
86
93
56
109
79
146
37
105
69
68
74
58
122
164
127
84
110
55
91
55
105
122
93
132
110
37
120
93
110
86
139
141
139
144
128
68
136
127
55
146
105
92
105
137
122
139
109
138
103
106
79
128
178
126
92
130
104
138
137
138
105
119
96
67
75
67
126
122
109
163
126
92
110
113
122
105
123
123
149
114
110
152
79
92
169
98
67
67
88
55
132
69
67
77
55
122
117
110
105
138
118
121
118
99
93
123
126
138
55
58
107
86
104
91
55
110
74
92
93
58
92
122
92
67
56
74
140
79
152
107
165
127
74
145
132
140
122
131
92
92
120
93
56
55
148
138
114
178
86
84
119
120
91
126
180
55
107
119
114
169
83
67
128
56
68
110
55
92
74
55
75
107
126
110
124
195
144
105
178
105
104
146
84
178
55
92
171
110
122
163
92
55
56
75
114
58
55
178
55
127
110
99
139
93
83
84
140
58
93
122
105
178
110
93
105
132
132
75
92
104
104
101
126
126
99
108
107
56
137
56
148
139
86
56
92
111
105
77
126
55
123
69
55
105
122
162
138
69
91
92
138
79
92
156
89
68
115
107
67
86
139
58
91
92
138
107
55
84
91
123
56
68
164
58
67
86
126
127
69
69
152
180
129
130
169
92
110
122
148
56
112
122
92
109
178
93
109
104
101
103
55
122
92
169
95
37
55
92
138
110
104
92
92
110
98
79
56
106
105
56
88
37
83
123
114
138
104
74
104
92
178
105
127
146
110
122
55
102
79
178
122
169
171
86
119
110
107
105
67
98
122
55
77
102
124
82
118
88
138
140
132
55
55
138
125
98
123
128
107
68
124
91
144
96
78
56
122
67
123
144
131
104
178
139
146
92
126
119
126
130
105
114
140
55
127
146
94
127
58
126
89
120
92
104
128
73
106
123
92
105
169
107
163
111
105
119
138
67
81
55
115
127
93
91
127
104
111
134
55
110
144
91
178
75
99
123
127
163
99
103
132
122
122
124
69
182
69
56
135
94
75
83
122
122
55
107
145
56
69
107
105
158
158
79
95
74
127
92
55
68
131
134
84
74
92
73
88
56
92
92
93
86
139
126
192
114
144
55
136
146
140
78
178
144
126
111
93
92
92
83
144
58
100
58
146
56
110
110
107
92
92
152
86
99
127
55
110
69
120
76
114
114
140
152
55
95
178
122
68
127
169
74
110
92
112
86
92
122
140
110
131
64
146
139
139
119
67
104
138
55
91
119
158
128
55
138
86
72
132
55
132
113
68
83
178
58
111
119
128
121
137
105
105
105
93
139
122
109
37
178
105
67
91
119
122
55
37
93
77
37
79
55
92
130
122
37
92
92
55
128
68
118
122
37
124
37
115
122
104
104
74
56
139
178
127
37
92
89
79
104
106
121
93
148
152
92
111
37
92
113
67
107
67
122
55
37
178
180
138
92
139
56
112
110
55
55
123
152
139
105
139
163
105
37
75
67
56
74
69
105
105
139
139
74
92
55
127
97
68
139
105
55
37
153
139
105
100
101
93
139
102
105
110
150
146
139
105
128
92
93
97
103
99
126
69
100
58
105
140
123
105
105
99
160
92
146
114
105
138
100
86
192
112
99
167
79
72
138
130
124
160
37
126
129
122
138
139
131
144
122
78
117
83
138
105
105
139
77
124
134
69
128
58
137
37
114
178
160
105
143
110
119
69
180
75
167
67
140
55
178
110
124
164
92
116
77
74
105
119
110
110
86
111
92
122
67
146
126
111
71
105
67
75
108
115
132
92
138
55
67
178
109
126
138
119
105
93
128
92
126
86
105
92
84
79
77
126
55
139
98
75
77
131
55
37
137
109
122
114
105
135
75
139
142
130
146
132
124
122
92
105
114
104
55
152
144
120
152
138
137
110
83
168
103
86
111
93
123
88
91
128
67
56
68
55
55
127
144
99
67
132
82
114
122
92
146
68
152
119
146
93
126
112
101
112
99
130
105
169
122
107
55
178
125
92
92
92
55
55
122
126
103
138
114
152
110
178
123
37
144
164
93
91
55
69
138
168
69
104
138
109
122
138
102
92
122
105
55
139
125
79
136
69
93
92
122
128
86
140
86
137
75
105
105
132
93
128
123
55
140
128
111
123
84
112
104
122
126
138
127
105
144
105
92
95
99
105
83
56
91
92
131
105
110
103
104
139
152
122
139
104
105
126
105
137
67
104
79
83
110
92
122
144
69
74
104
55
55
114
37
110
110
138
37
126
126
77
99
56
128
146
79
55
58
122
67
86
120
111
107
105
69
67
55
64
99
178
148
100
104
105
171
98
92
140
74
122
37
124
91
127
122
126
164
158
81
110
100
101
146
171
92
137
144
135
142
138
122
92
178
58
107
167
83
114
103
152
136
128
152
122
105
55
169
105
127
122
74
124
55
75
110
127
136
110
69
119
91
79
112
86
134
112
104
37
102
79
37
100
168
92
37
115
67
134
105
107
58
86
105
127
110
148
122
91
55
158
119
58
146
164
148
119
132
92
75
85
120
159
58
104
92
104
92
112
120
122
144
109
126
97
138
134
58
122
79
105
110
92
135
146
180
37
112
77
56
55
67
138
126
92
122
110
58
99
92
122
112
76
99
107
97
93
167
96
148
56
68
105
86
138
126
67
55
37
110
57
164
86
107
56
139
148
55
138
107
118
55
79
126
84
122
105
74
152
110
110
67
128
119
152
122
92
171
37
84
84
119
148
112
104
119
149
94
110
105
109
110
56
91
126
107
67
165
126
103
169
180
92
122
55
86
123
55
171
126
83
69
135
88
130
127
92
92
144
56
163
92
74
110
93
171
110
69
102
130
152
94
55
104
126
163
98
146
58
168
178
126
139
69
158
55
55
138
104
104
168
67
122
169
122
92
122
122
109
126
138
169
146
84
55
122
148
132
92
93
112
95
101
37
58
142
99
146
104
86
104
112
69
93
102
55
104
158
178
109
146
104
122
55
58
105
69
105
79
138
92
178
67
137
143
139
102
92
180
138
92
37
67
106
69
103
132
103
110
108
139
74
92
55
91
89
128
109
92
122
122
178
105
152
180
114
92
119
138
91
132
146
77
119
110
56
92
105
67
91
67
123
169
134
119
122
139
126
132
112
135
104
146
107
169
126
105
171
178
119
128
122
104
146
37
139
141
103
110
83
114
92
163
104
86
107
101
79
100
138
55
127
55
93
111
78
129
101
77
74
103
124
80
86
134
126
92
114
104
100
77
67
104
99
91
118
139
92
69
131
58
92
126
91
80
56
77
81
140
110
87
110
140
56
138
105
112
123
168
99
91
104
37
97
126
148
134
119
134
75
79
55
111
123
171
167
126
135
110
124
101
126
104
160
74
81
132
75
103
139
55
58
152
37
56
128
123
119
55
124
58
117
105
140
138
142
126
127
106
122
111
89
92
92
37
106
110
105
107
93
105
37
144
93
80
139
92
136
109
146
131
104
55
122
67
140
126
67
92
92
110
148
128
105
86
142
69
144
141
92
55
138
148
138
146
110
105
37
56
93
124
108
74
123
55
55
188
89
103
119
122
116
136
79
37
139
139
110
128
128
169
102
104
107
58
104
92
122
119
58
100
163
110
179
58
126
92
97
55
93
109
178
111
139
138
100
55
104
103
119
56
68
92
67
169
104
126
105
74
55
92
111
126
86
105
110
108
138
119
89
105
131
105
123
105
55
144
99
58
86
104
93
91
109
127
119
104
120
56
104
92
91
122
37
163
152
167
123
126
126
92
92
144
104
77
122
137
126
124
92
89
126
109
92
128
56
152
92
152
92
93
146
100
104
112
138
105
169
105
126
126
139
74
169
180
92
126
74
104
37
86
77
92
84
130
146
158
67
126
105
164
114
104
110
93
126
127
67
92
83
86
140
58
92
144
86
92
139
139
101
180
138
92
55
127
110
126
110
55
128
146
93
128
81
55
130
105
139
139
110
74
122
110
110
127
104
84
77
110
92
105
92
152
55
58
104
83
111
138
138
122
126
110
111
93
178
131
93
151
93
86
140
105
108
109
86
152
100
93
122
144
37
162
55
86
118
111
110
169
119
56
152
105
126
156
37
120
91
107
152
74
67
55
110
90
110
126
92
146
126
138
37
99
55
126
56
128
37
55
169
148
110
152
164
37
109
37
69
122
144
68
165
67
106
92
93
92
74
138
37
105
141
130
117
108
130
135
92
139
105
130
126
137
92
67
123
140
67
128
109
139
130
138
92
114
107
119
91
56
131
105
55
55
126
134
68
122
144
56
91
93
139
56
92
122
134
126
169
134
140
67
86
55
139
110
105
178
69
148
130
138
139
109
138
105
110
37
126
37
126
92
113
162
55
126
178
77
128
139
110
111
92
131
105
93
74
128
138
93
132
67
105
111
75
162
110
56
87
75
93
139
126
127
148
110
92
79
101
56
124
138
146
122
105
55
55
121
144
55
139
110
89
37
138
141
67
78
55
86
122
107
105
178
92
128
182
169
138
126
86
123
163
83
163
55
92
110
110
55
169
55
103
122
103
92
122
123
77
110
103
77
97
55
139
101
178
127
92
55
126
144
126
105
56
119
77
105
144
168
137
104
92
169
110
104
136
119
180
92
126
171
139
144
131
140
83
110
126
92
108
55
128
112
152
123
55
110
67
126
97
178
138
37
91
55
58
123
123
94
139
138
122
37
92
139
178
134
138
138
93
105
107
119
88
96
103
113
122
178
127
56
138
119
139
105
128
117
171
146
79
86
110
55
149
93
37
93
122
119
79
122
91
144
81
139
56
110
128
177
92
58
138
98
139
105
139
160
105
144
122
117
105
67
180
92
110
122
122
178
98
109
99
92
55
124
56
130
108
139
114
99
55
172
69
162
122
92
92
77
91
67
103
110
104
56
109
83
110
69
126
120
107
152
127
56
110
84
138
55
134
126
118
146
104
138
138
118
67
67
122
144
79
119
92
102
146
55
69
148
98
123
127
110
103
92
178
126
56
67
80
67
122
55
87
139
146
55
58
101
67
102
92
138
139
158
93
94
130
158
79
67
37
91
152
160
105
105
79
56
91
93
86
110
144
146
67
131
144
86
92
169
138
136
110
144
136
79
110
92
132
68
83
138
67
56
92
99
84
37
75
37
178
56
152
105
118
56
105
92
37
55
97
127
178
127
132
112
139
92
178
109
123
130
83
56
122
56
178
128
105
55
127
92
102
104
58
93
77
134
138
158
178
100
105
37
117
58
134
58
138
79
37
112
91
165
126
110
128
139
110
37
103
138
86
138
88
167
162
140
145
131
68
145
67
92
110
104
126
138
92
110
92
105
92
136
104
138
104
58
74
83
144
119
147
91
104
122
58
67
110
55
110
178
92
110
104
139
110
56
138
93
119
120
74
105
94
178
75
77
126
178
103
92
92
55
124
126
67
97
97
55
104
105
77
126
128
122
116
58
55
180
75
120
93
92
128
109
126
93
97
127
74
110
110
55
91
86
108
68
56
102
105
56
92
128
97
140
93
104
122
56
69
93
138
128
126
100
92
124
137
117
92
79
74
99
77
110
119
37
101
114
92
69
104
136
148
55
74
144
56
100
55
55
88
123
118
138
99
74
37
56
95
168
92
103
79
123
99
114
68
178
37
138
178
171
92
169
126
106
126
93
72
92
126
73
139
110
124
169
122
128
93
37
109
165
147
92
168
98
77
67
169
106
126
67
69
110
124
145
92
127
92
56
37
99
111
127
124
162
56
93
58
93
67
92
127
139
122
108
147
93
109
95
122
56
57
106
88
163
140
92
69
83
111
111
92
111
119
105
74
91
74
169
104
132
103
128
83
111
138
67
55
101
55
126
92
105
138
93
148
99
119
105
145
104
92
169
139
122
58
138
126
110
146
128
81
178
119
93
107
123
178
104
58
105
93
93
112
152
146
122
113
79
116
110
102
126
122
80
123
110
126
55
152
128
138
123
92
122
110
109
145
123
109
104
100
100
138
126
92
146
122
92
95
98
93
92
56
91
110
69
105
109
58
92
55
128
92
67
126
80
97
91
109
110
98
122
122
144
109
126
119
92
55
101
122
69
67
55
110
144
58
93
139
74
93
138
124
107
55
92
123
67
163
140
146
138
93
74
122
126
55
67
86
55
87
152
138
55
92
92
109
92
37
127
134
140
91
92
109
197
138
74
110
134
144
146
93
109
122
83
67
92
105
86
69
152
86
139
144
87
122
130
79
138
112
97
140
122
111
121
127
138
104
138
107
144
91
55
107
74
127
67
77
189
56
147
37
144
137
92
121
122
110
104
67
92
126
148
103
107
86
138
75
111
110
79
99
122
101
126
138
158
132
83
105
69
68
56
110
123
56
56
152
120
152
77
127
123
69
103
69
103
123
79
92
75
122
139
128
56
124
128
92
92
139
132
178
94
105
178
126
140
119
110
122
55
104
55
138
146
79
146
105
93
99
126
110
114
110
122
122
109
178
92
109
106
68
75
56
122
138
103
138
67
131
58
119
56
93
127
93
131
141
92
91
124
37
110
105
124
178
92
104
97
37
105
138
56
112
37
55
92
75
101
114
79
104
110
92
148
124
56
102
178
92
123
124
126
79
122
109
104
169
126
132
130
122
123
104
92
136
91
119
127
110
122
129
105
123
69
58
163
88
93
92
178
122
119
139
93
105
122
114
171
110
58
105
126
108
98
123
55
130
55
126
130
127
123
124
55
55
171
167
109
93
178
80
66
67
122
123
138
105
55
104
144
92
110
119
93
114
130
37
117
92
107
68
127
69
104
146
92
93
104
37
105
134
99
37
92
92
126
163
122
71
152
120
69
68
105
92
111
104
120
138
68
146
92
58
181
56
169
55
127
128
69
92
93
55
119
68
97
152
110
125
58
131
92
145
119
67
93
55
111
128
128
122
138
105
104
111
146
105
79
92
111
56
126
92
139
144
92
131
144
135
98
139
92
100
158
55
86
67
93
126
140
93
79
138
122
136
92
163
111
139
37
56
102
163
138
139
83
37
92
137
105
67
75
69
55
37
56
105
104
55
67
78
101
103
119
56
122
126
55
178
114
56
56
165
138
104
86
100
86
74
86
119
124
74
144
138
147
92
134
128
127
55
156
131
104
67
93
139
103
146
122
99
55
127
138
56
102
119
126
91
92
79
108
97
92
92
105
98
114
92
132
67
106
146
93
146
64
92
128
138
127
77
127
58
122
58
89
111
158
92
58
111
37
126
92
122
120
139
92
67
138
178
152
55
92
79
86
87
92
178
105
109
146
131
58
119
139
113
67
105
144
92
79
105
92
158
110
127
111
91
56
92
136
104
67
126
162
67
122
105
138
67
92
126
93
56
116
139
136
127
86
127
105
37
67
105
119
152
83
105
105
69
122
158
93
114
68
105
61
37
156
171
144
77
134
92
55
67
37
56
92
67
123
88
99
104
138
119
69
67
110
37
79
77
118
92
37
158
144
67
58
55
107
124
96
105
134
138
110
140
111
122
69
56
180
67
127
56
110
69
67
122
99
144
162
102
128
119
119
180
83
144
105
74
92
126
55
79
136
126
106
110
68
104
99
58
86
149
105
99
140
79
64
56
122
177
88
91
55
104
105
168
126
160
135
91
86
80
93
150
55
56
69
79
122
118
37
137
127
92
126
76
138
127
55
138
55
58
113
122
152
55
138
86
122
126
104
144
126
111
74
122
68
117
136
92
110
92
55
163
107
92
92
104
148
93
37
126
55
104
58
127
105
122
126
117
146
123
126
148
117
105
139
122
86
98
107
121
55
130
86
158
171
152
139
105
126
91
86
127
122
37
144
132
138
103
144
110
126
69
69
126
74
58
75
127
129
152
104
105
89
126
93
104
111
138
126
104
126
138
92
80
138
92
118
110
107
129
103
180
37
140
125
109
163
144
114
72
122
92
79
67
130
56
99
122
105
123
122
118
138
89
126
124
110
129
119
78
92
138
128
107
93
131
126
168
91
92
136
105
79
126
109
132
124
134
144
55
132
110
138
138
105
134
105
92
67
114
138
146
131
134
122
105
111
56
122
56
127
93
105
67
75
122
146
152
74
105
119
139
139
104
92
134
138
95
97
107
139
55
93
92
92
93
58
144
112
130
55
138
158
105
127
150
128
86
92
92
77
75
55
114
55
146
146
67
131
37
91
152
103
110
93
149
137
139
110
58
67
92
104
131
178
98
122
93
83
92
92
167
93
169
136
92
104
55
93
89
37
138
55
136
55
55
69
110
146
138
104
69
146
92
169
130
58
164
99
150
145
125
163
104
109
122
140
98
128
119
104
93
86
148
122
98
93
86
68
110
86
130
122
75
110
86
100
55
81
126
117
55
111
86
74
177
77
99
139
88
126
79
55
91
97
156
104
127
109
107
122
134
108
127
126
127
126
119
56
91
56
55
67
109
69
164
119
68
168
152
55
101
128
56
127
84
110
138
55
91
109
105
98
128
55
146
101
93
112
146
139
139
69
55
86
55
56
58
122
68
139
122
126
79
93
142
123
145
107
134
58
178
104
55
97
104
92
126
104
138
55
135
127
55
139
122
126
138
104
163
126
55
127
103
58
92
92
55
105
104
92
134
112
146
37
154
92
115
55
178
130
124
68
105
56
98
56
148
119
74
104
122
127
105
128
131
122
109
69
37
74
74
128
134
77
91
138
178
105
67
109
95
92
92
136
169
128
169
110
94
105
77
102
123
55
126
55
55
92
92
171
134
122
102
139
106
110
110
92
144
104
128
119
126
67
67
83
99
79
144
104
69
109
110
97
93
105
67
110
104
93
178
144
103
37
119
86
130
92
55
126
126
105
147
148
77
105
92
112
138
110
110
124
110
77
146
99
105
180
91
109
55
148
55
111
37
78
37
91
138
144
136
83
69
144
122
106
92
67
55
110
138
112
99
92
93
69
119
139
103
37
86
134
55
128
104
110
146
55
74
104
132
119
152
98
83
79
109
103
130
126
110
122
92
55
93
156
110
169
105
58
55
74
132
122
37
126
97
127
78
122
74
119
126
140
79
67
92
55
55
75
78
140
148
58
130
139
178
152
105
86
92
77
105
105
110
69
100
104
167
55
123
123
74
104
127
100
169
139
92
105
98
92
104
92
69
139
126
122
68
79
67
84
92
56
138
138
160
132
69
55
144
91
83
140
141
103
122
99
178
117
119
100
160
144
92
74
139
105
91
75
138
95
91
146
138
128
86
56
83
122
106
128
138
112
89
105
180
151
105
142
122
134
158
122
140
156
122
56
93
89
104
105
146
125
105
131
131
74
91
55
127
122
58
134
139
99
122
158
105
122
37
93
178
138
147
79
138
58
114
110
107
132
127
55
139
126
86
104
128
124
67
89
93
110
138
105
74
93
37
171
126
73
128
84
178
95
122
118
97
112
122
97
92
67
126
69
37
97
130
124
92
37
67
146
105
122
104
91
180
178
109
92
55
79
136
86
105
138
138
83
55
167
69
93
92
122
128
119
92
37
91
68
104
56
107
178
104
164
98
109
117
55
84
99
118
37
104
110
138
107
99
120
114
86
58
152
89
122
138
122
123
107
110
126
128
128
105
110
134
67
67
124
104
122
103
122
93
122
122
130
123
138
126
110
112
92
104
127
92
69
125
169
79
126
106
93
55
141
75
55
139
104
55
139
144
99
138
119
126
139
92
169
88
139
93
111
79
86
104
144
179
132
67
55
87
56
67
86
119
75
56
119
122
126
92
110
124
144
105
91
123
55
55
100
122
55
106
92
134
110
126
86
178
181
110
92
56
106
98
138
102
119
92
152
100
56
111
144
80
120
122
118
126
104
67
81
58
138
58
105
55
118
56
55
91
128
152
144
132
152
56
180
56
122
103
127
122
171
97
97
138
110
68
55
139
139
122
79
93
151
55
126
55
126
105
169
127
138
126
180
123
105
92
37
178
97
122
122
67
119
77
102
139
127
55
92
130
92
110
92
92
163
37
67
80
55
139
123
55
114
138
104
80
86
171
84
148
158
37
138
92
69
101
93
55
105
55
110
68
56
37
127
171
92
56
140
158
55
158
122
79
55
110
79
99
127
79
138
111
110
115
110
110
118
92
126
92
67
105
58
146
92
55
97
126
114
107
91
120
74
94
55
55
69
74
92
131
130
80
127
126
131
86
105
93
37
122
102
148
126
158
126
137
122
95
92
105
144
55
77
162
68
92
77
97
126
103
55
123
110
61
93
112
56
119
122
105
145
111
123
168
100
118
127
115
92
142
86
68
55
123
119
67
68
139
138
110
122
110
128
77
55
127
92
139
126
141
92
92
139
146
131
110
127
103
69
131
92
67
105
75
92
91
100
126
74
79
168
56
104
110
136
126
80
141
122
108
79
92
109
109
138
149
122
171
37
93
104
110
178
178
79
92
91
124
110
122
100
147
122
159
56
103
122
55
80
122
105
152
105
105
144
138
77
152
99
158
126
77
139
109
92
105
111
169
105
144
55
110
128
152
152
110
122
98
92
105
163
127
93
137
124
67
105
77
146
67
76
110
105
93
129
101
93
164
93
126
104
84
148
120
160
171
37
92
37
169
93
126
127
105
165
130
167
92
83
37
144
97
86
67
122
55
134
58
104
103
169
122
128
55
122
64
126
163
122
152
126
111
164
98
93
123
110
111
67
127
162
128
56
111
93
104
104
86
122
127
92
85
110
130
109
77
74
122
92
93
93
58
55
69
92
120
79
99
55
178
86
56
107
91
78
102
88
128
163
92
123
68
97
180
55
144
55
137
137
92
139
144
105
146
122
130
121
92
37
182
92
100
83
92
105
107
67
110
130
137
111
123
128
164
169
67
79
56
102
58
93
110
84
99
144
171
102
93
138
37
109
158
83
126
92
115
74
67
146
74
37
92
109
128
67
69
134
55
104
178
109
126
127
110
92
143
122
105
103
91
124
37
114
101
169
146
111
128
92
111
55
110
55
111
144
111
168
67
128
37
55
58
122
148
111
103
122
55
92
171
138
58
79
55
114
114
67
105
55
134
93
99
55
178
124
79
55
103
105
109
124
136
119
92
92
77
128
92
77
77
139
152
104
105
126
127
128
126
178
77
80
137
127
105
104
122
103
152
103
104
109
93
104
111
111
104
77
180
131
69
105
106
67
158
123
139
140
146
122
111
123
122
75
75
104
126
122
86
68
146
138
139
134
55
136
144
104
148
134
55
92
110
126
55
107
77
109
79
69
75
92
110
122
106
129
132
122
134
122
138
75
93
107
92
93
130
118
180
169
92
104
69
105
150
78
108
128
93
93
127
56
126
107
92
132
116
109
93
69
152
91
55
56
92
55
69
128
122
135
134
105
95
58
110
81
75
132
55
139
55
111
124
127
131
138
91
181
178
132
93
123
171
132
107
86
56
92
118
126
101
92
107
77
75
126
121
85
152
148
126
178
138
104
104
92
105
92
127
122
139
122
123
140
74
122
105
75
92
126
123
102
103
92
120
74
120
92
122
119
105
79
99
107
140
75
102
104
67
55
114
126
148
144
92
139
110
126
138
69
86
55
125
67
126
105
139
92
111
130
124
55
91
74
139
110
169
109
93
138
79
149
138
92
86
137
83
127
67
122
105
131
103
138
122
55
93
91
138
55
75
122
118
132
138
124
105
104
67
67
58
109
37
57
137
145
119
108
132
126
58
79
138
148
119
126
92
103
56
122
97
67
128
114
104
178
127
178
122
105
106
55
138
171
106
37
126
110
110
178
122
138
91
178
91
69
126
126
146
104
75
152
105
112
100
55
139
131
69
162
118
163
75
119
123
99
124
84
138
139
129
69
122
69
84
105
107
79
171
199
111
93
55
37
92
142
58
169
67
99
130
104
122
128
92
55
110
104
168
123
171
108
55
138
127
152
139
121
92
134
69
142
55
91
92
178
110
110
58
146
56
139
110
95
99
105
92
110
79
67
95
109
92
69
152
105
107
134
178
112
126
102
113
105
117
137
105
104
144
83
146
138
79
105
68
103
92
126
92
37
126
138
105
93
104
134
103
138
122
55
122
110
55
140
56
137
92
120
127
55
105
101
67
105
171
122
69
119
110
128
110
89
134
140
154
124
112
92
67
139
56
126
127
105
67
126
119
147
126
144
79
55
58
67
139
56
137
97
105
104
84
86
56
92
108
93
126
105
168
103
136
139
119
141
146
67
132
92
105
144
128
134
110
92
171
119
122
119
105
92
178
89
126
110
58
105
67
139
105
55
122
92
148
37
152
164
105
105
92
110
138
136
119
86
146
168
139
107
56
122
86
122
56
130
123
126
112
146
92
111
93
55
93
131
122
105
56
121
146
88
86
139
92
152
107
56
122
122
110
178
58
126
134
127
105
126
55
110
105
122
56
126
92
122
122
67
69
96
95
105
97
146
92
144
122
69
93
167
111
114
122
107
106
55
158
105
89
107
92
84
136
140
167
104
112
67
93
102
146
93
114
105
126
93
138
75
122
122
67
56
139
144
126
75
55
92
79
139
151
122
110
109
144
122
139
92
105
55
92
56
122
126
107
107
127
134
37
105
122
58
56
138
111
98
56
144
164
67
138
67
37
103
112
93
91
135
55
79
122
178
93
92
130
126
138
107
163
139
128
58
101
92
137
99
146
122
99
106
58
152
144
146
89
112
55
126
171
192
110
122
92
58
77
56
150
67
178
120
160
74
114
122
139
109
92
112
67
111
79
136
104
153
68
138
56
55
122
99
105
148
55
92
124
128
67
67
122
119
86
93
110
77
178
178
79
77
74
138
89
79
122
99
91
169
178
89
99
146
178
110
56
138
138
110
134
110
180
37
89
92
126
56
164
69
104
67
130
139
55
137
93
92
92
122
67
110
93
111
146
110
101
127
134
110
122
97
92
128
119
92
122
124
92
110
111
86
148
138
58
122
138
152
67
126
56
127
128
178
106
117
110
92
107
122
126
124
104
138
78
127
83
104
104
144
140
102
141
105
37
56
130
146
105
122
105
69
134
55
149
126
120
83
37
169
56
92
118
110
55
83
123
79
140
122
109
37
58
134
105
122
67
105
128
144
110
119
55
126
109
122
122
68
148
99
99
93
109
86
92
139
120
55
126
56
37
128
56
104
138
134
120
79
105
178
144
140
91
152
149
110
151
126
127
97
75
138
126
138
128
55
58
58
122
92
110
37
84
152
138
55
119
55
122
58
107
100
110
139
111
178
56
138
160
105
55
112
120
122
126
110
74
138
111
138
122
118
126
86
138
130
56
139
75
124
178
122
106
75
178
67
55
146
67
138
110
138
139
105
109
86
67
110
101
158
81
110
139
139
93
67
130
146
105
139
99
102
109
168
91
152
149
110
122
128
58
138
121
89
124
55
127
152
104
91
110
55
93
99
75
127
122
168
92
132
111
126
92
77
81
105
128
146
138
104
127
55
93
144
139
165
55
169
56
131
105
69
69
86
122
55
146
138
126
55
109
140
146
93
112
109
127
111
67
126
37
144
92
83
114
128
55
79
77
91
144
140
37
110
168
92
55
84
103
109
110
86
67
120
92
92
105
101
55
178
178
105
92
55
67
104
77
125
124
92
55
104
165
91
120
68
126
110
178
55
92
105
37
122
55
178
162
126
104
126
122
128
37
110
126
171
134
119
109
69
162
106
56
126
126
69
67
58
105
152
56
92
97
106
58
178
110
123
105
119
163
89
163
127
75
109
92
138
67
148
127
131
122
56
146
86
188
80
55
140
69
127
137
125
55
134
74
98
37
119
107
104
140
112
139
132
95
83
110
178
127
92
122
107
55
77
140
122
58
55
105
127
56
125
91
56
56
132
55
91
110
56
103
93
93
86
123
92
58
122
164
126
97
74
123
55
74
92
55
109
129
79
134
77
122
79
144
142
178
110
134
92
127
178
139
98
122
106
58
109
145
99
69
97
110
100
110
110
169
92
86
123
55
152
107
146
114
92
91
67
169
55
148
77
58
124
145
105
74
178
114
168
102
134
67
110
58
56
145
58
144
109
165
58
122
55
92
104
105
92
144
139
122
68
93
104
132
92
127
138
55
144
128
126
103
102
104
124
105
56
152
67
180
138
138
86
135
110
122
108
110
99
117
99
138
88
110
55
146
79
69
55
105
122
122
56
122
140
37
105
127
56
127
146
92
92
100
139
105
118
106
115
131
138
103
75
120
37
93
123
84
93
119
122
109
126
107
139
131
138
67
119
122
106
152
168
92
79
118
135
160
67
69
110
69
77
109
152
146
92
58
37
97
126
160
169
115
127
78
118
124
92
84
123
93
127
104
101
135
122
134
147
105
104
74
97
55
79
67
107
105
92
118
106
107
74
164
110
123
163
136
69
37
101
92
93
77
109
138
73
122
138
104
37
136
67
138
141
109
92
99
130
37
67
55
58
105
130
67
126
180
138
122
91
104
126
92
98
119
58
107
159
105
74
83
55
130
105
111
105
138
123
67
104
92
103
126
110
105
92
138
71
152
83
127
122
119
92
67
102
117
73
169
104
128
92
104
92
92
123
146
114
91
55
141
110
89
55
126
128
96
96
56
92
144
105
92
134
111
109
93
146
92
112
119
67
163
105
127
134
178
88
131
105
106
69
92
55
180
74
67
127
55
107
135
107
69
178
37
139
68
83
55
122
152
92
103
139
109
84
107
55
152
100
104
104
130
134
110
104
110
122
148
105
95
93
122
105
83
93
138
55
126
92
94
171
178
127
79
103
126
99
84
92
178
126
122
110
110
105
104
110
144
67
104
139
56
101
83
109
92
169
168
105
119
58
152
126
132
67
75
55
86
103
55
124
146
160
58
144
74
92
122
128
68
83
89
83
92
127
138
91
152
93
122
146
105
105
104
146
86
127
117
152
138
135
56
77
107
92
138
123
56
103
104
91
105
78
92
136
101
92
178
103
126
69
140
55
37
55
122
92
146
69
105
125
106
117
126
109
87
86
146
126
127
122
105
92
126
78
178
92
109
56
69
105
93
138
139
37
110
140
112
91
110
128
92
69
77
128
67
167
164
144
110
58
84
105
138
126
103
92
110
144
126
92
169
127
105
106
56
164
110
146
142
108
140
97
146
93
91
135
106
55
171
128
135
139
131
92
67
93
105
68
138
58
169
55
55
122
146
83
110
119
92
68
139
55
110
69
119
140
178
92
109
37
92
68
92
146
97
92
118
152
91
56
146
134
91
126
86
100
74
75
138
144
144
146
93
119
88
126
125
92
139
55
199
178
73
92
91
118
67
74
123
139
123
109
126
92
92
93
169
138
93
142
77
138
94
124
108
104
138
105
81
92
92
108
123
75
69
118
67
84
92
122
104
91
115
97
122
178
139
104
112
109
145
55
178
83
146
124
55
127
123
158
138
77
131
126
69
92
93
91
92
122
138
128
69
58
92
146
152
134
110
56
136
138
98
92
109
55
99
80
105
146
105
108
92
69
55
152
178
136
92
112
79
92
119
37
92
92
92
109
165
151
123
136
180
108
126
67
106
104
55
91
58
98
126
104
178
55
56
55
93
84
105
134
130
67
107
95
104
104
92
171
37
139
152
104
105
127
78
101
86
74
97
92
92
77
138
127
95
94
104
139
110
137
92
93
110
142
81
55
111
93
105
158
67
37
122
55
139
140
109
55
100
146
92
91
69
171
108
67
94
37
138
105
178
86
126
84
119
138
106
110
104
132
109
91
110
91
97
92
86
127
119
139
126
104
122
92
92
93
91
148
130
105
178
127
122
169
92
139
92
67
135
139
92
97
69
171
109
152
67
87
100
84
77
114
125
69
92
124
142
160
56
138
111
37
105
110
67
114
92
56
79
91
122
67
69
107
122
83
138
98
87
138
55
110
132
140
69
55
67
104
119
97
178
126
91
97
83
122
178
164
138
75
118
107
109
89
132
37
93
37
97
154
126
67
119
164
69
86
144
69
104
122
105
78
111
110
103
145
55
152
128
148
67
145
93
122
69
93
104
99
137
91
92
104
121
128
108
126
110
110
124
122
144
152
56
129
144
144
109
169
91
75
103
37
140
110
58
128
146
92
117
37
100
111
107
92
78
110
122
165
162
96
107
98
105
92
148
106
55
178
91
105
122
65
104
111
56
56
158
103
105
68
139
104
152
92
114
103
88
178
74
92
146
110
56
112
122
158
146
145
105
74
122
55
122
105
122
127
100
91
109
110
122
124
110
104
138
122
126
55
146
112
67
103
136
68
56
69
81
139
110
67
104
107
110
56
55
111
110
122
122
152
67
127
92
120
93
99
105
103
114
122
152
91
119
86
126
111
79
58
92
139
178
122
119
164
92
122
93
169
112
134
135
152
117
92
127
139
142
93
92
122
80
128
104
93
110
121
180
107
56
169
126
75
152
93
105
79
114
56
58
110
110
121
152
56
93
79
110
122
156
105
92
109
101
56
67
86
126
79
86
86
152
122
126
67
91
56
126
105
86
105
110
124
110
111
105
104
136
92
105
79
138
69
160
111
178
67
74
92
86
75
107
67
77
111
119
136
138
58
126
122
105
180
136
67
132
98
153
110
126
55
77
168
134
74
92
122
104
122
126
110
148
123
56
58
87
126
89
125
104
105
119
55
127
110
110
55
127
158
92
169
91
122
109
122
111
146
126
122
123
77
122
109
105
37
105
104
56
128
136
123
144
122
105
79
122
68
120
57
55
119
105
92
67
92
139
55
104
122
56
92
105
122
104
86
67
58
122
134
134
128
110
55
169
110
86
55
109
126
138
99
144
111
128
91
105
139
93
135
104
100
178
104
91
109
101
126
105
99
105
105
131
92
138
119
122
86
67
147
92
178
127
37
122
122
55
103
122
137
163
55
92
55
74
92
106
56
119
58
146
122
171
119
139
92
105
55
139
86
98
110
110
165
104
144
126
103
74
122
99
138
122
55
99
152
139
127
55
122
178
152
148
110
128
114
127
160
105
144
105
126
97
118
109
120
126
69
104
124
123
124
91
164
92
122
105
145
119
100
58
110
55
138
130
110
135
56
79
56
158
126
171
105
122
105
146
67
180
127
92
55
87
146
138
122
123
169
109
122
67
144
110
92
122
56
169
139
56
56
130
109
111
103
122
110
137
105
129
91
122
124
112
105
144
140
91
131
128
169
110
92
69
127
55
108
75
93
127
139
111
112
79
149
89
56
138
146
105
116
68
86
136
122
144
124
107
55
110
128
75
122
138
100
122
88
92
95
56
102
56
140
104
100
92
171
81
92
92
138
149
110
138
127
83
111
122
124
83
92
67
58
103
75
122
55
69
58
37
127
105
84
126
105
124
67
92
77
132
56
127
123
58
92
86
178
138
128
126
140
55
37
104
134
168
128
101
123
55
119
131
146
148
86
88
56
58
152
74
84
105
67
136
128
58
118
92
126
110
152
138
139
152
128
112
101
104
92
105
149
92
126
138
67
68
117
103
138
111
37
144
141
68
102
104
139
91
169
114
105
169
92
56
169
123
126
117
73
56
64
67
140
126
55
92
120
105
118
123
92
146
131
171
55
126
126
138
139
58
105
58
171
89
92
127
37
139
140
110
118
104
91
92
92
95
126
91
122
118
37
110
107
68
148
137
93
132
104
132
92
67
100
101
67
37
127
148
131
169
109
138
93
180
126
122
104
139
126
106
123
114
55
37
143
147
109
122
105
134
92
56
92
56
178
107
92
119
138
55
122
67
123
69
55
103
122
91
118
123
56
99
122
58
92
92
122
98
118
123
180
105
88
171
134
126
122
111
99
119
180
119
132
77
171
134
146
91
55
122
126
37
86
130
99
68
180
104
114
79
79
124
93
79
67
113
148
127
123
144
178
124
138
69
124
107
103
149
122
100
103
92
91
67
139
122
69
126
56
84
55
92
105
127
127
37
126
91
56
104
152
110
73
126
127
92
99
126
105
199
138
92
118
181
126
146
56
93
93
122
126
92
123
92
37
110
100
68
138
126
93
105
67
92
122
122
140
146
140
77
134
79
79
77
112
74
77
105
109
106
55
55
134
128
86
163
100
75
139
139
92
79
140
136
86
178
92
75
123
99
37
113
68
83
93
131
152
92
55
77
68
117
105
111
100
138
105
105
128
56
123
92
88
137
139
55
58
86
169
67
58
138
68
99
107
37
104
122
92
130
79
126
132
178
56
55
111
102
138
123
128
55
55
178
148
126
68
92
105
110
105
122
55
92
110
126
74
67
69
127
131
75
109
126
77
136
56
67
83
75
178
178
110
105
56
146
56
77
138
107
112
138
55
92
138
67
58
178
100
139
171
169
100
112
126
104
124
75
58
67
93
56
105
111
37
37
55
83
138
83
119
92
139
64
74
105
93
83
55
107
110
69
127
67
104
138
131
102
126
111
141
86
91
148
110
126
144
84
58
84
67
74
179
92
124
107
146
138
97
79
83
104
67
139
119
168
79
124
123
104
112
181
104
56
67
114
107
56
58
122
130
58
151
114
96
178
55
126
130
140
132
146
136
165
126
127
92
134
122
77
127
92
55
83
177
128
99
92
134
132
95
107
99
56
104
110
132
104
58
123
110
93
122
88
144
111
171
67
37
55
160
92
138
58
122
152
122
126
91
109
89
101
138
58
178
145
98
131
55
142
126
110
109
69
92
110
114
121
86
141
84
144
127
127
88
55
103
77
92
111
55
89
67
74
134
92
182
56
104
103
180
141
37
111
108
104
106
110
55
111
138
102
122
86
37
58
98
178
123
104
123
92
86
77
103
111
55
139
122
88
92
56
111
128
100
127
160
97
55
105
68
138
58
110
56
122
152
119
111
86
119
55
55
127
93
139
107
110
122
126
92
110
58
92
74
111
178
89
75
152
126
126
37
105
55
121
67
139
77
118
69
144
104
55
103
103
37
74
127
122
99
103
98
92
168
167
69
122
122
58
160
98
122
92
111
136
79
105
104
67
83
93
122
37
188
167
152
126
131
91
55
55
127
81
55
138
138
115
86
158
114
92
92
67
92
168
144
56
117
112
84
111
67
148
142
132
128
132
126
118
152
168
91
92
99
105
138
97
91
152
104
55
114
171
152
55
92
140
105
180
86
126
110
178
67
55
158
108
37
105
146
92
138
74
129
56
131
58
103
128
56
110
93
120
92
74
109
74
83
91
127
83
56
140
93
86
79
132
55
109
128
100
56
168
171
105
122
93
178
178
98
67
89
77
119
93
134
74
56
152
92
110
79
83
126
104
86
111
178
100
98
128
95
92
124
58
139
92
104
110
105
105
92
92
122
139
55
93
148
104
105
138
105
92
110
124
132
178
92
67
58
77
74
98
124
86
109
122
110
130
122
91
169
56
119
92
84
126
139
122
152
89
67
126
103
126
119
58
118
169
103
77
58
178
126
168
138
87
55
165
92
110
104
57
105
128
74
131
122
108
104
56
126
122
134
117
37
139
58
129
55
101
110
110
138
158
105
109
83
83
68
188
110
55
55
110
69
109
103
92
98
126
171
103
101
145
93
127
122
138
152
77
122
105
188
91
92
104
138
67
110
122
136
138
92
92
110
144
138
55
144
109
122
55
91
67
138
55
105
105
105
126
178
180
134
105
93
136
58
98
158
126
92
127
148
56
37
144
85
138
111
86
146
126
148
37
56
122
123
128
178
169
163
100
119
109
114
123
123
107
106
171
117
79
104
139
164
75
110
146
105
67
140
67
140
153
92
81
93
69
124
136
138
93
98
112
88
86
67
130
131
67
158
152
101
72
67
93
126
110
55
74
122
137
131
122
109
109
105
74
146
126
104
107
131
100
168
119
104
140
58
126
110
138
139
111
105
93
165
69
37
55
77
134
92
67
93
152
110
122
126
122
169
105
126
123
106
91
126
104
128
144
98
67
86
146
105
128
138
107
74
92
105
122
91
122
197
100
92
67
126
139
145
67
124
91
126
128
146
123
55
69
56
178
148
37
72
150
68
56
103
110
122
117
122
37
98
138
158
79
111
113
111
75
138
67
91
146
92
58
122
140
124
110
92
68
132
103
105
56
105
80
128
110
134
105
126
110
105
56
123
92
140
114
144
67
111
124
126
130
128
58
104
91
93
110
98
111
91
37
92
134
69
138
77
104
123
58
93
123
152
128
104
55
138
55
105
140
152
103
122
105
74
55
106
152
74
92
56
89
79
129
92
142
119
112
123
148
110
138
122
114
95
58
67
138
105
104
58
77
97
122
144
110
67
109
114
152
133
92
128
55
109
112
67
86
55
79
92
106
92
138
55
83
152
127
123
37
123
55
144
110
122
89
138
67
67
92
110
105
128
104
105
92
152
92
123
105
110
144
123
103
134
55
99
99
111
99
182
108
67
112
67
89
108
88
56
115
56
95
93
75
92
126
92
152
182
122
110
104
131
92
114
144
55
58
105
56
123
139
92
86
126
93
123
97
169
37
55
109
67
92
69
92
158
163
92
37
132
86
91
122
91
110
109
127
182
146
126
74
94
55
122
93
99
123
127
105
104
126
101
118
122
169
146
127
180
105
127
105
126
55
86
126
92
132
158
110
37
127
107
86
118
110
105
134
56
111
105
72
86
105
92
134
122
169
110
87
111
92
138
139
105
150
178
37
93
105
55
105
180
76
130
120
107
86
131
128
69
126
122
141
56
130
75
101
130
99
68
105
122
122
117
111
106
104
122
37
126
111
55
117
124
72
55
67
144
138
111
126
138
122
93
55
96
110
178
138
127
107
92
105
148
55
93
110
109
86
126
109
122
105
76
162
68
55
92
148
93
74
178
92
56
146
123
79
86
126
199
124
92
178
92
110
92
56
110
107
92
81
92
138
138
68
109
86
122
58
67
69
138
100
67
105
126
86
92
126
122
109
106
146
119
67
86
105
142
100
148
55
91
126
55
126
101
58
168
138
37
105
138
110
104
119
97
86
93
92
105
126
67
99
93
144
79
146
126
178
110
69
37
122
110
67
127
93
139
92
92
132
127
55
199
100
138
122
86
110
58
107
104
178
86
111
77
58
104
126
98
178
138
122
151
144
37
139
138
128
110
77
67
122
110
129
55
127
93
79
124
79
119
138
136
93
78
101
141
110
122
127
178
55
138
110
119
55
104
110
122
105
69
182
126
79
111
81
112
122
67
146
92
139
138
56
37
58
67
55
93
55
75
86
99
67
104
110
114
74
119
105
122
138
79
122
75
139
80
168
122
138
55
56
140
124
106
99
91
86
86
105
117
130
144
69
131
199
169
105
123
55
126
92
165
163
110
110
55
126
126
112
131
131
37
137
142
139
158
93
111
93
69
123
81
122
67
105
92
110
92
97
92
67
146
92
91
99
150
92
178
55
110
126
91
122
163
92
132
125
117
55
127
56
92
79
145
56
37
55
104
122
79
105
137
122
91
134
178
92
81
122
167
146
100
92
141
169
37
107
105
55
80
69
117
92
131
180
105
126
122
135
99
126
37
124
37
92
104
144
119
162
108
92
140
99
151
139
115
86
91
100
95
115
92
95
56
92
111
69
131
165
102
110
37
104
79
91
122
92
58
192
120
122
67
83
111
138
83
107
123
128
56
109
110
55
105
146
83
138
55
152
58
123
143
168
123
127
37
126
105
100
126
56
107
123
130
178
99
138
122
122
110
126
104
105
91
152
81
91
55
92
89
107
75
83
76
139
102
148
140
109
122
56
122
68
37
111
77
140
56
154
113
134
119
92
101
98
110
105
56
91
83
91
74
89
164
37
112
99
128
123
124
106
178
109
126
91
74
79
169
107
122
104
110
77
92
105
93
105
119
98
146
140
142
93
105
110
135
95
67
92
149
143
109
167
88
92
55
144
145
178
100
103
68
104
123
127
37
77
144
126
144
122
111
92
168
139
105
92
87
92
55
91
105
103
110
37
58
137
124
119
56
37
106
55
104
92
104
171
98
69
103
92
55
98
128
104
178
93
124
164
112
115
119
67
93
56
93
134
142
110
79
92
88
125
55
93
91
189
105
104
67
144
138
118
122
110
127
123
123
136
106
139
165
58
165
119
67
109
91
146
167
169
99
67
144
123
107
168
75
132
55
55
169
99
139
122
55
37
83
119
92
69
92
131
55
105
96
86
58
148
105
119
130
102
98
123
122
114
92
126
93
139
138
105
93
77
146
139
121
95
92
124
179
37
55
56
67
124
127
124
116
99
55
58
91
95
100
77
110
91
169
124
110
148
105
56
55
92
126
55
112
55
132
115
122
67
123
107
146
58
37
92
107
145
67
144
92
122
139
93
105
104
56
37
146
68
86
86
138
37
67
110
56
55
93
83
152
55
144
112
98
127
104
123
86
37
122
83
178
78
84
138
126
144
127
56
141
136
138
163
122
58
146
111
58
104
93
92
68
100
79
146
134
106
122
106
104
67
104
139
126
158
169
105
92
124
156
144
37
105
124
131
127
126
109
128
146
115
93
58
91
67
105
109
137
145
122
75
107
103
95
77
110
126
104
126
86
92
138
77
152
98
104
92
138
83
37
101
138
140
92
124
99
102
92
151
140
92
67
96
55
55
92
55
93
92
96
58
117
180
134
37
92
123
100
139
122
114
67
110
75
97
122
169
128
104
67
122
104
55
77
145
123
67
152
160
69
83
152
127
138
127
127
107
99
58
122
105
88
141
139
55
97
67
93
101
112
138
87
139
138
92
162
55
69
163
75
112
119
126
139
134
92
105
69
95
139
69
119
110
122
83
56
58
67
105
125
104
86
168
55
134
139
74
92
55
79
169
126
93
138
130
178
93
92
92
122
138
83
92
134
160
122
168
58
74
160
109
75
113
55
122
104
140
169
138
135
131
58
119
105
127
91
122
55
114
106
72
147
105
105
56
56
121
37
108
132
119
98
104
124
96
114
163
105
110
73
104
119
104
67
163
58
127
92
105
128
138
109
67
127
110
67
126
75
146
107
169
109
178
93
84
110
58
83
140
122
109
111
168
111
167
93
56
64
67
164
104
64
110
107
92
125
110
75
135
55
128
86
124
117
99
178
144
126
110
152
77
138
127
55
55
92
98
92
139
101
105
58
84
89
83
147
160
151
92
93
144
140
86
138
134
152
67
92
92
117
105
146
109
91
37
104
92
146
139
91
132
163
91
55
79
171
108
103
148
126
138
58
104
158
67
92
151
92
56
152
146
68
163
122
169
130
110
55
134
37
180
126
144
146
55
128
105
109
55
152
122
163
55
37
41
55
95
37
138
75
108
103
67
108
120
86
188
55
188
110
37
91
117
152
138
105
139
107
126
77
107
110
128
126
109
127
92
100
164
107
95
93
144
98
122
74
132
115
109
148
55
114
126
92
57
92
123
67
110
119
93
144
144
69
74
92
105
58
128
132
110
152
92
131
113
171
55
127
122
80
106
139
75
158
162
146
67
104
128
99
93
86
99
105
99
110
127
74
55
137
137
130
136
130
138
144
69
93
118
67
171
117
152
93
91
105
56
138
126
126
55
122
135
69
165
97
180
126
79
122
99
110
56
137
160
126
126
55
110
140
68
92
105
77
129
91
128
67
102
145
55
104
97
162
122
126
69
99
139
123
126
124
56
137
107
91
148
109
77
58
55
55
124
58
138
37
126
93
55
126
105
122
91
122
67
169
149
93
105
121
110
178
93
37
37
93
110
119
139
126
79
67
132
110
79
58
139
122
105
99
81
75
55
127
171
127
37
106
92
99
113
68
123
122
122
126
77
137
119
167
58
97
68
86
107
122
132
151
126
74
146
107
91
126
37
119
104
127
107
84
103
99
86
91
103
80
144
139
92
110
93
55
122
140
127
92
126
123
163
37
56
100
111
151
105
110
134
98
102
119
126
158
118
92
104
74
67
93
152
128
93
109
148
100
69
69
160
105
107
144
56
178
92
55
67
144
104
67
102
163
122
55
132
100
56
178
86
93
134
93
122
69
112
122
105
169
99
99
104
91
69
93
37
91
106
104
74
107
110
126
74
164
163
55
55
126
104
55
86
146
105
91
115
178
110
138
140
127
106
115
58
86
132
107
55
122
69
55
67
119
164
119
104
138
127
93
110
131
92
103
55
91
120
132
99
127
134
139
123
178
111
120
132
123
107
120
104
58
152
55
138
37
138
67
122
119
79
98
152
122
83
92
104
146
110
68
107
37
84
37
126
110
122
138
67
119
79
89
126
139
119
56
121
69
69
107
104
122
126
136
55
178
74
152
144
107
88
92
92
146
119
103
77
126
134
92
37
56
56
136
92
130
55
109
158
104
115
110
111
88
92
127
95
138
122
95
56
100
103
126
37
77
130
99
122
93
164
109
92
99
121
138
110
118
144
180
127
105
55
104
110
104
158
91
74
109
56
139
137
162
124
126
110
89
132
107
127
145
110
67
135
128
95
69
126
146
97
119
55
92
144
86
122
37
126
74
107
97
124
138
56
144
83
100
92
96
83
110
141
101
37
92
104
109
119
55
145
110
128
109
37
110
138
83
99
138
107
158
55
178
64
103
119
98
55
138
162
97
92
169
103
122
139
103
67
122
55
109
114
86
126
92
100
178
67
110
105
100
92
122
55
138
144
134
37
122
122
91
67
126
98
119
192
106
95
93
67
55
126
93
93
144
119
105
56
110
93
138
92
137
67
111
127
169
127
171
55
55
92
56
83
169
105
164
110
56
164
105
122
109
126
146
107
169
163
56
104
163
126
126
92
92
126
101
107
105
77
112
119
104
104
79
119
103
138
93
139
130
81
79
122
67
138
105
122
92
56
101
111
136
77
56
112
152
134
152
69
118
110
37
122
114
55
93
86
88
86
77
122
58
146
102
144
110
55
105
103
120
56
188
104
92
123
105
69
122
105
104
116
119
178
148
81
58
140
110
144
68
112
119
131
148
144
86
79
73
105
58
58
127
56
99
178
123
37
92
138
111
103
110
142
138
98
127
105
56
151
110
92
104
104
112
152
105
181
137
56
129
94
101
58
92
122
57
79
126
105
119
126
74
68
139
55
92
127
105
120
142
55
109
109
105
56
93
107
142
93
93
123
105
126
55
80
110
123
171
89
74
171
107
123
67
67
126
37
107
106
109
99
69
127
178
126
79
152
56
138
103
92
131
126
104
106
122
169
127
110
93
69
109
180
67
110
112
102
92
86
58
110
69
148
92
119
103
119
79
144
77
139
37
37
104
75
144
72
119
152
55
93
103
123
136
55
117
55
93
138
113
138
158
76
110
111
55
122
110
110
110
103
148
91
92
122
99
109
92
96
102
169
105
104
139
99
68
127
123
90
126
105
139
104
167
138
138
105
103
128
100
138
56
77
92
122
178
128
111
55
140
92
129
67
93
199
105
139
127
146
122
144
144
110
112
92
178
131
104
92
93
61
138
162
56
55
178
79
128
110
74
171
68
92
104
140
104
126
55
104
113
106
105
134
178
83
138
106
92
104
55
131
144
58
129
110
169
74
126
93
86
171
110
112
140
55
92
69
109
69
91
139
178
124
119
137
69
86
104
110
122
105
92
134
56
124
134
56
110
139
67
126
97
104
126
144
139
112
55
91
122
110
138
93
107
92
93
122
126
99
126
56
92
99
105
105
134
69
110
67
119
67
181
105
123
74
122
144
126
92
98
55
55
95
103
105
79
56
122
55
124
152
132
92
110
107
171
69
92
37
122
139
146
77
86
109
158
126
74
126
127
168
123
95
122
67
108
138
93
127
114
110
158
95
128
56
169
111
93
92
69
105
104
138
107
178
144
55
123
92
69
93
92
93
144
79
79
67
118
55
91
119
122
142
104
77
67
122
79
130
128
160
67
92
105
138
77
110
56
91
111
110
37
110
111
92
146
118
105
80
107
138
105
158
37
136
93
144
138
79
79
150
100
152
58
126
104
37
99
98
106
79
75
112
165
119
55
67
148
58
79
67
162
86
138
100
118
110
128
126
138
77
92
136
58
127
107
104
139
122
110
135
119
167
127
97
55
109
110
138
92
105
117
100
110
112
123
110
91
131
102
108
110
128
131
152
93
92
92
144
92
132
124
122
98
55
146
105
127
106
91
55
122
122
92
122
67
146
126
55
139
124
56
74
104
37
56
110
100
146
99
132
110
55
98
103
105
86
55
101
122
68
83
130
92
58
128
138
79
178
37
107
105
110
93
110
138
111
119
122
160
93
137
132
69
105
126
122
111
148
92
105
55
180
111
122
125
126
105
92
110
110
122
92
109
93
104
77
77
119
56
152
55
84
144
99
69
69
80
67
135
77
138
139
128
67
127
92
79
124
148
92
67
104
109
56
110
92
126
74
58
68
152
158
110
121
120
145
149
92
128
169
134
123
118
107
93
125
127
122
139
75
109
93
126
92
127
56
122
74
99
92
124
122
144
167
167
58
95
67
152
110
92
126
109
168
126
137
168
107
74
139
86
110
127
56
111
130
105
156
69
144
37
138
92
83
134
104
109
152
56
99
92
138
69
147
105
56
138
100
171
127
138
126
55
110
148
139
105
128
119
104
128
104
83
74
104
146
74
138
188
169
103
58
92
69
91
79
134
55
97
69
92
92
145
169
104
107
37
110
99
92
122
105
105
58
56
55
92
138
107
69
78
178
126
92
77
100
58
152
74
130
135
165
94
111
77
104
92
78
144
92
67
139
69
110
105
105
122
55
122
58
104
93
69
138
55
139
67
55
126
129
127
126
126
129
92
104
140
107
93
92
97
69
92
110
105
93
122
120
126
58
134
146
105
122
169
138
104
126
122
128
67
103
138
141
110
131
94
123
139
123
37
127
122
177
134
122
126
110
165
134
112
119
149
56
93
89
92
178
91
106
77
37
169
79
110
67
93
126
130
124
102
105
126
105
123
37
138
144
169
79
109
130
99
109
93
118
169
55
122
58
109
137
131
83
79
169
92
104
55
105
138
123
95
55
67
56
98
110
134
88
92
127
119
91
56
103
138
127
92
56
126
138
138
74
92
144
67
77
55
69
91
103
134
89
122
130
138
83
140
109
93
55
92
105
105
92
93
123
103
128
134
178
88
127
122
139
146
168
110
75
56
109
99
67
124
109
89
178
37
119
105
110
138
105
83
119
99
79
119
139
78
106
144
139
56
56
99
128
138
112
131
134
138
127
128
163
105
126
178
110
111
111
140
122
104
97
148
178
138
37
55
91
122
58
103
127
77
58
67
107
67
128
110
92
110
81
134
124
110
77
138
128
58
123
56
151
92
135
105
67
139
148
93
111
55
139
55
138
140
131
181
180
69
122
105
92
56
169
128
69
134
75
131
67
97
130
158
93
67
178
178
122
72
92
114
58
109
94
77
99
88
91
122
92
104
171
124
148
112
171
110
111
110
111
56
105
67
138
127
93
110
93
103
104
122
86
131
139
126
105
138
110
83
81
37
126
95
92
105
55
93
99
138
67
92
55
68
55
98
122
139
138
93
104
126
93
55
67
107
114
138
99
104
67
126
55
103
99
75
101
92
100
127
139
138
74
122
88
119
167
69
92
104
55
55
139
95
56
122
119
101
105
58
58
107
67
91
144
144
89
104
146
67
37
138
103
56
110
111
119
67
67
105
92
94
92
165
69
104
91
85
146
92
75
93
56
89
99
110
138
105
119
92
120
136
83
105
104
126
124
139
99
128
105
98
124
67
97
138
76
128
162
144
67
92
92
104
110
99
145
37
127
56
134
37
100
69
122
126
101
77
123
104
37
107
58
134
136
134
93
97
92
83
93
105
126
123
131
132
56
144
126
105
93
117
131
122
105
89
67
128
127
122
69
92
140
99
171
105
139
144
122
91
86
111
92
97
104
67
120
86
144
105
100
104
138
105
55
92
84
158
78
124
55
126
69
128
146
169
67
122
109
86
87
77
99
77
122
126
178
92
68
103
152
79
126
122
69
104
103
110
139
158
141
58
102
180
105
67
55
110
104
168
67
105
106
127
92
146
92
106
110
124
67
140
105
138
107
92
67
93
122
122
111
139
126
146
152
104
127
74
146
55
114
171
105
136
126
179
152
123
139
67
56
169
126
135
104
125
104
79
37
138
128
152
55
56
107
37
105
105
139
94
105
110
69
55
169
87
105
128
73
83
104
117
122
92
141
138
99
123
84
123
122
105
55
117
55
91
178
55
69
92
55
116
127
74
146
92
107
92
138
110
97
122
169
138
77
55
93
122
119
68
56
122
105
158
142
55
119
37
110
137
92
110
55
109
178
140
67
92
105
126
95
131
56
58
104
163
122
37
128
124
68
164
110
93
79
138
92
123
58
92
91
92
199
128
92
99
126
55
124
88
136
77
99
91
127
141
105
92
56
163
178
69
110
79
146
57
139
104
56
37
83
101
169
56
56
122
102
130
126
114
178
55
55
134
104
146
138
83
92
119
77
139
55
110
117
75
99
122
152
75
69
135
92
138
139
122
56
126
104
67
93
100
97
55
199
164
119
92
92
128
110
122
67
92
126
127
180
122
55
103
178
110
92
92
93
126
55
56
126
67
152
56
104
55
67
152
126
69
122
98
126
104
142
104
110
93
92
149
58
131
110
126
55
75
134
92
126
144
162
69
127
74
58
142
136
104
110
67
139
120
110
87
67
86
126
92
127
138
111
122
127
91
119
104
88
107
105
123
146
105
67
92
138
91
77
92
67
106
93
110
111
110
58
79
114
105
99
55
102
56
92
67
128
146
110
129
69
105
134
105
78
122
69
138
99
131
102
104
93
84
127
109
138
132
74
139
112
111
152
105
158
132
92
134
126
105
140
122
92
122
140
56
126
158
122
119
144
67
55
79
56
89
86
87
37
123
146
136
92
69
100
91
127
92
105
98
163
138
127
58
79
104
122
169
146
178
152
92
148
84
122
109
139
136
140
92
135
152
79
64
105
118
110
118
78
125
122
152
126
111
69
75
137
105
148
142
105
77
127
126
138
122
69
104
111
73
128
69
99
93
128
55
79
86
192
131
110
113
171
55
67
99
128
125
91
55
67
126
144
138
84
74
67
92
93
99
110
67
138
86
122
69
55
126
178
67
178
178
122
139
93
93
126
91
98
79
169
126
138
114
117
131
75
92
67
126
107
122
139
99
122
153
97
37
86
56
92
67
92
58
92
55
111
92
105
86
67
119
128
178
130
88
164
99
119
146
74
138
138
75
105
160
65
37
108
139
152
67
138
123
146
163
107
91
115
132
56
92
78
102
178
97
92
105
67
143
92
92
110
97
99
74
148
86
104
92
91
67
105
131
131
104
109
112
123
112
152
55
88
110
93
110
180
139
86
75
127
67
75
69
68
55
91
171
84
91
110
120
92
126
123
74
148
79
55
67
67
104
126
58
138
138
37
67
178
55
68
124
126
140
145
105
152
123
112
112
91
68
122
56
124
92
178
128
112
68
122
123
131
93
123
55
75
110
139
77
165
37
103
67
110
67
55
101
148
129
86
134
55
55
95
104
123
136
86
158
37
112
109
77
55
92
138
55
110
122
67
105
86
102
99
169
104
55
127
67
67
101
105
130
95
67
124
104
105
104
138
178
91
67
95
152
55
117
132
69
109
86
139
109
92
92
123
110
115
77
140
189
102
107
126
110
67
79
74
92
134
56
119
67
138
102
67
92
142
67
123
108
105
67
92
121
55
135
77
75
127
68
87
83
93
107
100
97
94
92
105
55
55
122
81
152
126
55
78
94
119
103
199
67
92
93
55
162
135
37
75
126
97
146
55
103
67
110
67
130
126
114
110
119
105
91
74
37
107
55
136
55
92
97
171
107
119
55
152
117
79
110
144
178
178
37
105
152
107
68
122
92
92
178
92
92
124
100
67
58
144
104
110
86
138
58
92
104
99
169
110
58
109
168
148
140
110
77
92
56
100
58
130
91
107
99
137
139
67
67
122
92
55
134
156
58
139
127
178
128
74
92
58
92
158
55
69
86
123
178
91
92
127
126
122
93
93
108
126
67
81
78
110
77
93
107
126
99
127
126
138
104
136
92
37
119
105
126
168
80
77
104
107
146
111
55
77
92
136
126
67
93
93
118
139
67
69
143
97
164
99
138
74
79
56
146
92
138
119
148
37
152
110
146
127
110
146
67
92
107
138
58
92
99
107
122
86
55
67
79
73
55
55
55
137
139
119
68
140
177
104
131
178
138
122
91
86
144
56
92
104
178
100
105
169
92
105
119
124
98
144
171
58
139
103
104
79
92
110
128
104
131
55
105
56
126
67
127
165
122
146
152
104
138
163
105
120
37
105
122
58
67
136
138
148
169
168
110
127
92
130
126
122
122
92
103
92
146
105
178
146
104
182
79
169
69
99
55
144
56
134
127
163
78
77
138
37
178
77
104
139
118
110
103
67
128
37
127
76
92
134
58
56
123
131
92
79
104
122
118
103
139
126
37
119
37
91
138
119
110
163
114
113
55
110
122
58
93
68
163
105
56
126
67
152
58
119
104
92
121
105
103
91
55
67
128
148
78
114
126
118
128
93
148
93
127
128
152
67
139
110
110
78
105
146
178
128
126
139
126
123
110
152
125
128
55
138
134
105
138
92
77
150
178
92
88
55
165
67
92
92
56
83
69
92
55
105
125
144
127
171
56
37
105
106
75
123
93
109
76
37
92
123
56
56
86
104
110
139
102
167
124
109
110
93
128
117
142
156
138
92
111
129
95
95
110
128
148
77
111
92
74
86
55
144
55
101
122
55
144
99
122
105
105
111
148
110
55
55
83
111
77
93
92
105
171
126
69
99
93
107
104
119
126
109
105
127
146
92
136
143
92
110
122
69
100
67
119
130
121
101
103
105
92
139
192
122
109
69
55
139
136
92
86
122
74
126
120
94
55
134
127
139
92
158
92
110
99
58
117
92
78
102
130
122
103
148
100
126
55
109
169
101
55
97
83
110
178
92
77
122
136
137
55
86
169
107
131
110
138
58
93
171
68
124
105
111
110
136
126
88
37
112
142
167
106
107
92
168
136
92
69
132
148
106
119
79
67
130
134
105
112
105
92
169
58
134
93
163
178
92
92
105
55
178
92
55
92
93
178
178
144
160
88
147
67
97
58
122
109
122
67
84
119
110
126
138
99
126
86
101
98
144
152
131
105
145
126
108
130
77
138
171
110
168
139
180
67
123
139
92
58
74
168
92
104
149
105
92
92
107
101
93
126
105
101
99
55
86
37
167
126
126
83
128
110
92
68
92
110
178
110
86
139
69
99
84
139
92
104
126
75
92
91
139
122
105
91
92
127
125
138
58
123
137
122
138
165
188
121
55
138
92
91
92
92
88
152
56
61
138
55
98
140
138
131
92
146
128
140
135
132
138
119
119
74
126
96
79
128
146
138
99
123
55
122
110
91
121
114
126
100
169
55
122
77
99
101
119
92
178
105
138
101
110
91
126
58
105
68
105
97
104
138
126
112
37
123
101
117
55
37
139
128
77
104
75
97
123
130
109
132
55
123
74
93
158
178
109
149
88
103
180
104
140
126
83
55
58
137
58
112
84
138
92
110
77
171
92
120
110
138
101
37
74
67
122
110
126
55
126
56
119
146
55
138
152
138
124
169
114
69
131
93
75
144
75
67
152
122
128
92
126
55
56
109
123
91
92
127
139
115
144
131
88
56
109
97
141
69
92
111
110
122
58
56
93
86
91
130
105
100
136
108
139
105
110
107
110
97
110
128
58
126
99
92
74
96
99
92
56
119
55
110
122
92
129
105
171
122
105
111
103
89
101
139
93
128
55
122
104
37
139
93
152
56
77
130
126
97
91
104
136
93
137
99
138
61
110
86
122
178
138
56
84
146
86
134
168
132
127
139
92
152
77
126
178
86
105
93
152
75
158
55
92
56
91
92
126
122
79
146
102
67
126
102
125
118
106
169
138
67
105
58
92
105
104
105
138
55
111
93
56
152
69
139
148
110
129
37
126
142
92
123
148
178
135
105
134
107
105
69
77
122
55
119
127
55
124
86
138
110
67
56
74
126
138
107
124
106
94
169
104
92
122
180
127
92
92
77
99
58
112
67
92
137
110
104
105
134
158
134
92
104
126
67
56
91
110
146
104
83
67
75
180
126
55
148
130
126
92
109
122
126
164
37
124
168
122
122
92
122
126
140
87
131
67
154
178
91
83
55
74
98
93
131
55
58
56
110
92
112
55
68
78
109
122
141
118
67
111
91
117
68
122
107
127
86
69
110
144
92
92
92
105
92
99
92
178
134
92
55
131
144
105
109
109
92
111
146
69
55
144
92
122
56
55
140
138
118
69
92
77
97
122
86
116
180
69
37
93
92
109
171
126
104
79
111
122
122
105
92
92
167
93
91
105
134
92
138
114
178
86
167
126
55
138
111
83
107
162
81
158
152
132
127
128
139
58
104
126
171
58
67
69
93
146
131
126
95
86
145
178
58
92
69
67
93
55
58
105
58
158
58
105
89
56
122
138
114
138
79
132
37
152
103
37
104
58
99
132
122
56
55
138
112
91
127
79
178
55
56
126
55
121
131
92
171
92
86
122
93
55
144
67
126
69
122
105
56
110
115
92
122
79
104
140
58
92
105
123
81
129
55
118
95
144
125
114
99
117
67
110
92
92
67
107
58
104
92
131
126
117
122
127
152
55
92
139
127
105
105
138
79
95
105
58
134
126
92
146
110
37
58
118
37
37
126
124
123
58
107
109
138
131
122
169
107
128
69
92
160
142
55
110
138
101
56
67
139
98
138
122
92
146
109
111
67
106
92
139
135
93
114
169
107
105
110
134
104
110
152
192
127
147
107
67
56
138
127
144
145
138
93
151
68
126
92
67
152
189
67
105
134
123
92
119
169
55
122
138
105
128
92
103
55
55
100
109
131
119
93
110
55
79
74
92
91
169
104
37
128
92
56
163
137
104
37
147
67
114
102
123
122
105
134
58
128
57
92
130
146
92
100
152
139
55
69
123
56
169
126
92
139
127
139
58
138
138
67
92
122
87
58
138
56
181
67
110
79
127
105
178
146
56
178
73
144
99
56
88
84
69
126
110
180
138
86
88
112
126
56
110
118
128
56
91
92
74
83
93
119
91
77
152
130
110
152
89
160
55
67
116
178
89
109
139
134
104
105
93
109
121
122
109
124
91
158
55
86
93
126
84
55
127
111
148
122
127
164
92
55
105
110
91
178
55
105
75
110
110
92
104
104
92
122
93
138
58
105
138
104
169
122
168
119
122
67
122
107
56
105
138
152
168
104
124
122
128
145
169
122
92
141
109
92
69
138
75
178
121
122
139
122
67
99
83
92
78
178
92
92
134
56
55
119
114
92
55
58
138
93
105
139
145
99
92
126
98
111
152
126
55
104
134
55
139
77
55
107
128
146
105
67
107
67
111
97
111
128
55
95
123
109
98
88
110
103
69
69
55
102
105
67
138
83
69
88
79
119
162
122
79
123
138
178
98
56
128
134
169
122
101
86
110
56
83
77
56
144
105
122
104
144
109
72
84
178
178
104
163
77
140
58
105
55
67
97
124
79
119
107
55
122
118
93
81
122
55
92
152
134
171
77
104
126
124
140
169
37
103
152
138
122
104
118
55
158
55
110
178
69
105
127
139
55
152
91
93
98
91
112
69
58
106
103
128
93
139
58
134
137
130
75
119
74
122
126
112
75
92
127
93
58
123
127
93
169
148
92
92
110
93
92
123
55
128
128
110
100
37
104
137
128
92
126
55
126
109
79
163
122
122
131
91
91
69
93
158
92
138
140
105
119
134
93
74
91
126
84
110
144
92
67
123
58
93
169
120
156
75
119
171
55
110
79
126
128
69
138
180
130
105
55
56
138
88
128
86
138
92
137
122
152
107
119
94
122
132
138
105
126
122
67
55
86
55
81
140
122
122
68
111
124
55
105
128
122
126
84
104
132
122
93
105
117
97
110
83
138
67
126
92
122
92
110
104
109
74
55
148
138
37
128
92
92
105
127
37
92
104
93
148
55
110
110
109
178
75
123
123
140
144
168
92
105
180
110
86
67
75
127
124
92
132
99
58
67
69
107
99
104
55
111
93
56
102
109
145
104
91
55
122
139
112
91
95
171
110
56
102
86
69
139
93
92
112
55
178
152
104
55
57
105
122
78
55
180
137
178
142
83
91
122
139
77
178
37
37
55
126
137
124
78
137
123
128
69
109
91
67
102
79
97
152
110
140
113
138
138
99
78
105
37
171
104
37
110
122
55
105
99
93
83
74
110
110
69
127
119
102
119
107
122
55
37
105
126
160
56
163
134
55
144
144
124
56
110
92
108
140
106
109
139
100
126
169
138
77
110
83
104
68
128
77
111
128
144
58
99
148
92
123
110
105
37
109
104
97
37
37
92
98
110
138
79
55
107
122
132
138
148
139
178
122
37
167
92
67
55
105
132
91
105
92
140
140
123
119
120
105
92
92
167
74
37
145
126
122
104
118
55
93
146
178
168
130
118
67
128
104
126
105
55
100
128
134
74
55
146
178
105
146
144
69
149
55
81
107
122
144
112
73
122
114
123
127
107
146
126
126
104
56
56
123
125
134
92
58
109
67
86
120
128
164
91
169
68
138
56
110
105
92
75
93
86
178
58
164
169
138
103
126
148
104
55
182
110
99
67
56
92
130
105
55
130
99
119
128
91
83
105
55
104
110
127
55
92
152
110
67
58
103
178
89
178
69
92
124
92
134
104
67
110
74
109
55
78
144
92
130
92
103
128
92
152
138
100
67
92
97
74
163
67
105
92
106
77
56
92
55
56
110
108
67
96
139
178
112
105
86
104
140
126
107
75
114
92
119
148
83
105
119
68
127
92
92
109
58
55
163
111
138
79
96
55
93
123
139
119
95
148
55
126
74
178
144
56
93
97
104
126
98
180
55
138
127
92
139
146
111
138
105
102
144
104
104
104
107
136
104
120
58
110
126
91
163
105
102
139
58
152
74
126
122
146
95
92
92
120
93
104
138
85
140
92
126
101
105
126
146
152
178
77
178
105
139
110
110
55
124
68
74
93
110
91
110
69
111
127
125
126
55
104
144
127
169
56
77
92
141
164
138
138
86
55
126
67
56
92
106
56
102
152
107
68
92
55
122
56
67
104
101
79
75
86
130
93
169
139
37
126
105
74
80
131
58
104
96
110
91
67
138
105
126
55
105
127
104
132
116
67
178
111
69
58
123
169
138
123
104
75
104
128
169
97
144
136
84
69
92
37
56
99
132
124
111
119
108
80
126
99
138
92
138
97
158
115
55
105
105
131
102
37
126
126
139
106
126
105
127
67
111
83
127
178
132
126
152
92
180
105
98
123
144
131
56
120
55
112
91
145
178
136
69
110
125
146
112
100
81
169
86
126
138
104
68
114
145
128
110
37
168
119
106
93
77
103
140
91
126
128
138
144
107
105
68
105
122
56
92
104
109
74
127
99
87
146
105
122
101
163
92
105
152
127
56
158
126
84
122
85
105
123
111
92
126
123
67
92
138
55
75
37
139
124
135
178
104
120
56
122
79
178
101
79
120
92
138
104
128
127
105
128
67
69
56
142
126
169
134
160
138
106
115
122
67
111
127
105
152
55
144
169
123
122
55
134
138
122
130
126
109
126
144
97
127
140
55
93
92
146
138
126
148
122
123
67
92
118
75
92
93
58
55
122
138
152
144
92
106
178
55
138
178
128
138
106
136
144
67
122
108
112
55
109
126
92
84
169
58
139
56
111
126
68
55
55
110
55
99
127
139
178
69
91
95
126
122
111
131
168
91
178
144
126
158
169
83
146
101
136
104
146
109
77
92
127
105
118
132
78
169
109
58
110
92
122
122
126
145
131
178
107
55
69
119
128
113
144
105
149
103
58
67
111
67
111
55
92
67
58
102
134
86
92
67
58
123
126
139
139
37
107
146
106
105
104
105
110
69
110
93
104
86
146
151
146
141
37
101
107
92
79
105
139
122
131
99
55
79
74
126
142
92
111
139
86
55
112
111
110
139
84
115
86
162
144
92
104
126
112
55
137
117
55
119
92
122
56
104
80
146
165
93
95
55
110
67
99
91
88
123
126
83
123
123
67
68
139
144
92
162
103
55
104
105
99
105
95
55
124
86
120
138
58
93
101
104
134
138
136
178
104
122
126
134
105
134
55
169
94
127
104
130
105
131
92
55
101
162
105
110
77
55
67
91
58
117
126
119
148
103
104
88
99
79
105
148
55
55
126
134
110
119
104
127
139
58
93
126
93
171
126
79
75
84
55
169
75
146
79
55
128
92
113
122
104
93
141
139
107
58
92
122
67
114
123
114
105
128
93
75
55
106
152
122
56
69
138
92
105
122
107
92
122
104
146
75
69
127
55
110
114
106
105
84
130
128
55
67
93
69
117
75
131
84
160
105
169
92
105
122
144
55
58
152
117
111
93
181
98
93
138
131
122
67
138
75
110
152
104
79
74
92
56
69
126
92
58
85
105
178
112
92
135
58
37
110
139
158
139
56
119
113
122
67
119
126
68
93
56
105
83
127
107
37
126
144
92
136
92
126
126
67
97
91
163
84
92
92
111
109
84
128
55
58
180
37
37
67
105
136
67
104
105
56
104
104
98
93
91
69
111
86
56
67
92
58
99
138
139
104
128
126
93
136
110
91
92
126
91
91
169
81
126
109
84
93
104
127
138
110
80
131
127
102
137
87
86
105
99
83
146
141
126
123
99
105
103
138
140
58
92
77
58
122
79
92
162
128
104
91
67
122
105
77
107
110
55
104
127
110
123
92
105
178
129
92
128
105
122
79
37
138
138
110
56
105
122
112
128
132
37
126
55
55
55
98
74
92
169
75
55
79
164
91
103
93
55
75
127
156
103
92
110
122
96
92
105
140
56
92
93
126
104
92
105
93
67
92
124
148
148
106
37
97
180
126
122
128
152
107
55
199
126
69
69
104
139
96
109
152
123
144
122
138
126
132
37
95
152
79
178
67
74
122
77
55
76
92
107
128
69
68
127
67
139
37
122
105
111
140
67
109
58
104
37
144
138
182
111
120
120
137
77
97
106
92
77
110
99
83
138
67
123
123
92
122
93
101
92
105
55
92
126
138
144
138
152
111
58
126
128
78
158
107
171
144
99
92
88
138
138
119
127
86
105
104
55
55
55
67
122
86
123
105
126
83
122
92
67
102
107
122
152
125
67
110
103
112
139
126
123
127
146
92
104
92
119
123
128
105
101
121
110
67
91
92
122
92
104
93
126
138
126
105
69
104
77
104
55
138
91
104
163
68
67
110
103
178
111
171
105
67
69
126
110
88
55
105
143
58
58
114
141
178
110
140
68
126
56
91
120
128
104
110
55
110
55
130
68
86
67
122
110
77
139
92
126
131
104
67
92
92
122
126
93
178
123
56
37
126
110
110
123
123
104
55
152
112
58
75
110
86
79
126
67
83
110
117
94
127
37
138
178
138
105
153
99
134
180
91
37
84
93
105
83
78
131
56
120
127
105
58
126
67
86
69
106
126
104
124
93
126
139
151
110
124
125
118
55
56
99
84
55
104
110
104
105
139
92
110
160
148
56
146
37
105
107
119
75
107
178
107
128
105
92
178
68
75
122
93
122
91
126
58
104
84
92
83
58
92
67
127
86
124
79
117
109
84
69
37
127
150
67
105
130
111
56
111
93
92
37
55
128
127
56
146
169
107
139
110
152
169
99
112
171
58
109
126
124
106
89
110
188
67
144
104
111
103
126
146
84
171
126
93
67
119
128
123
138
147
92
126
105
132
138
67
107
118
58
104
164
55
122
89
135
114
117
92
99
110
104
120
178
92
105
79
139
128
92
126
56
67
146
93
98
93
75
126
105
55
111
178
104
67
55
132
83
138
67
130
104
69
110
105
91
138
83
94
56
69
120
86
152
118
134
56
138
83
103
111
138
93
104
178
37
91
55
55
117
105
56
107
126
127
37
55
144
67
56
93
106
107
92
140
140
109
37
69
56
56
107
104
178
109
93
126
100
37
148
74
91
93
105
131
83
67
118
126
75
115
99
128
119
106
91
122
110
92
56
110
124
136
93
105
115
58
135
104
104
122
91
148
130
56
126
139
127
126
104
87
58
123
178
97
74
171
101
92
124
55
122
105
78
37
75
139
131
122
99
138
94
122
107
98
178
111
110
92
94
92
55
127
138
131
111
67
138
98
56
105
58
55
56
127
168
79
37
119
79
91
77
105
37
144
117
89
119
140
105
37
118
126
122
86
92
138
105
55
67
122
92
142
126
92
56
68
158
128
138
79
92
129
99
178
55
197
68
103
146
136
79
126
140
86
86
139
55
126
162
138
69
163
55
122
152
72
67
122
126
139
75
140
55
124
138
126
86
178
127
105
138
110
69
67
92
112
112
55
105
110
97
83
128
124
150
122
110
171
105
138
146
128
74
79
110
169
127
58
58
79
55
93
37
122
58
138
104
105
37
100
37
128
110
126
178
134
67
118
75
105
123
101
178
152
109
110
122
178
103
88
123
169
114
99
106
56
123
104
122
109
178
111
110
55
134
126
99
105
92
69
178
105
74
123
92
100
110
127
68
138
110
169
152
55
140
123
130
110
124
126
131
134
87
58
138
91
92
55
100
128
98
56
108
83
110
110
69
110
111
114
92
69
101
97
92
138
126
110
67
92
55
124
56
98
122
119
138
93
74
92
99
189
139
146
55
126
144
122
92
138
114
93
134
178
69
86
119
111
98
122
69
139
103
88
58
67
144
152
124
138
123
86
110
102
56
55
136
120
128
131
79
109
146
55
110
92
146
110
132
138
126
140
37
127
109
132
119
104
110
103
127
105
67
110
92
104
83
69
168
128
141
106
112
103
137
126
144
56
69
75
113
104
104
157
131
124
123
110
92
134
105
92
144
168
127
131
69
107
127
122
122
56
105
92
110
93
124
122
134
41
111
92
56
37
118
127
122
69
111
127
67
67
77
55
126
123
131
67
55
107
111
56
56
131
69
55
99
58
77
171
102
131
180
138
86
122
101
146
152
122
74
119
67
67
123
87
99
98
123
126
134
100
101
78
92
112
97
56
99
171
86
103
138
122
171
169
139
89
111
146
163
111
56
55
136
144
101
105
83
122
146
97
92
109
81
77
146
89
104
79
95
146
152
135
111
75
178
138
139
105
118
178
139
102
91
124
134
104
91
93
110
74
58
121
131
163
99
127
107
92
126
37
67
89
92
77
122
74
122
129
91
128
122
130
146
139
122
132
55
92
110
128
55
126
144
55
111
89
58
136
55
141
107
84
37
56
122
126
122
119
67
139
104
92
86
101
102
105
93
77
37
122
68
55
119
138
144
110
77
178
83
139
124
140
159
91
91
110
98
91
91
126
92
92
139
81
145
68
126
55
105
116
128
37
142
158
111
131
127
146
122
160
75
131
91
122
109
69
91
171
100
160
111
93
107
67
56
126
101
104
79
139
148
92
79
128
139
138
92
122
114
126
163
105
92
93
131
75
37
104
105
138
127
122
123
104
146
37
110
110
152
109
110
105
140
74
130
105
92
114
122
93
83
140
92
118
126
152
92
140
138
140
67
126
138
67
78
152
118
100
74
101
110
127
123
124
123
147
162
119
137
69
99
181
56
124
67
93
122
58
108
97
138
126
105
136
115
132
56
110
126
69
126
74
165
92
58
92
93
67
165
76
126
152
124
126
92
142
83
130
139
97
111
93
105
110
138
55
80
119
55
122
114
134
123
92
91
58
122
58
152
140
124
134
58
122
67
74
109
151
144
138
162
111
86
93
55
86
127
128
122
134
114
86
130
92
92
105
92
91
75
112
57
88
139
192
126
102
106
67
110
126
84
116
120
178
122
69
128
92
99
111
105
132
102
110
55
127
152
58
122
77
146
55
92
67
89
67
92
171
130
122
110
115
92
87
142
91
104
138
97
138
101
56
56
92
100
78
99
138
92
131
110
98
101
123
103
99
107
79
83
69
86
56
92
56
56
118
199
144
58
139
107
119
79
75
178
163
142
69
79
148
110
111
103
93
158
88
92
92
79
127
79
128
83
126
103
151
55
124
79
144
104
104
79
126
92
110
114
55
114
67
37
119
55
126
56
145
101
67
79
91
165
93
55
104
158
178
149
105
122
127
131
103
55
93
68
110
58
56
68
105
139
92
92
98
138
92
178
55
83
132
98
74
86
69
91
119
83
178
128
58
92
199
105
56
96
88
79
127
103
107
105
151
129
122
92
178
77
146
99
119
55
37
105
77
105
149
122
162
105
139
75
109
107
146
126
67
117
152
92
79
118
122
79
110
105
37
122
69
126
107
110
122
76
110
122
92
110
137
74
69
93
122
86
126
152
139
58
56
123
102
103
148
58
122
118
92
178
162
104
86
79
128
110
122
122
127
138
77
127
92
105
92
95
178
105
55
84
109
37
132
127
118
67
92
110
67
118
122
92
118
37
129
92
110
77
122
55
110
119
140
122
122
178
92
105
92
110
163
148
138
110
110
69
122
37
145
126
122
137
144
58
92
55
109
74
104
87
92
86
164
105
107
178
139
122
144
91
105
92
105
104
37
93
55
105
107
169
122
105
109
109
68
81
126
104
105
134
94
111
110
158
58
130
130
74
149
67
92
92
180
92
106
122
105
83
132
126
83
58
74
86
67
160
123
178
128
105
110
105
119
114
37
37
141
138
110
169
146
142
146
93
56
81
55
97
134
122
128
37
122
79
119
75
180
69
152
67
129
91
139
56
107
110
139
140
92
117
105
101
102
126
92
144
55
180
109
91
123
107
56
111
138
84
92
158
122
74
162
56
86
103
75
152
109
92
165
126
122
105
138
91
104
110
140
178
109
55
97
55
74
126
152
103
137
117
110
150
134
178
86
91
103
178
37
138
122
144
179
119
55
37
124
61
171
98
67
111
127
93
122
122
106
123
56
137
144
97
169
156
146
111
146
126
134
138
158
69
91
131
140
75
92
37
99
139
77
110
92
37
93
93
55
146
122
110
136
152
169
119
139
58
83
77
55
110
104
192
105
165
110
92
122
77
178
125
138
110
67
139
144
83
56
92
124
91
137
55
92
86
146
55
98
128
147
119
126
93
56
110
127
92
93
110
92
106
93
104
132
104
137
56
77
93
56
56
37
56
126
74
92
111
110
37
119
105
106
56
67
110
69
137
37
92
86
178
67
69
86
126
107
92
148
69
113
112
109
144
144
67
158
123
127
92
55
140
110
139
146
122
111
104
110
106
138
148
56
130
158
122
131
87
77
126
93
128
126
127
144
123
99
145
130
105
105
147
92
136
69
110
105
138
142
104
55
37
104
127
149
119
109
37
96
99
109
103
126
126
138
127
69
119
117
99
92
122
86
126
110
92
140
93
134
110
55
111
92
158
37
104
105
75
107
123
91
105
93
93
105
128
105
178
80
180
122
169
93
134
122
105
108
93
68
122
83
146
148
149
92
55
110
69
109
83
76
105
146
55
86
92
67
97
93
178
37
86
134
99
120
93
152
138
134
169
164
97
109
178
37
92
86
105
56
58
93
146
69
93
134
122
152
99
101
56
55
126
58
133
139
140
91
98
68
113
110
122
105
109
158
92
92
139
86
92
178
122
74
104
75
104
123
55
74
128
132
111
110
111
75
178
156
179
110
132
139
110
83
138
160
119
122
98
104
86
99
109
55
110
110
122
130
126
92
89
91
110
92
107
93
134
129
106
86
122
84
91
77
110
137
92
126
75
158
55
67
92
92
67
123
107
55
115
104
77
122
56
138
178
123
79
122
67
68
104
110
122
93
56
139
115
110
74
126
105
56
122
126
92
93
79
140
67
92
126
78
111
83
77
122
55
138
126
56
56
158
104
148
92
93
105
109
56
126
119
104
124
144
152
56
67
37
92
67
122
152
91
67
163
178
58
75
105
109
67
122
140
97
105
126
55
105
119
93
55
119
92
110
91
123
126
140
104
128
95
118
58
144
111
152
123
158
67
136
92
56
130
101
127
122
117
169
110
178
146
122
138
104
56
55
92
129
139
92
56
124
139
122
104
139
122
55
168
55
135
139
110
77
122
130
152
104
123
105
128
86
139
104
122
67
147
68
58
126
56
74
128
55
55
92
127
92
58
130
110
140
127
84
55
110
105
69
79
37
127
58
103
178
138
103
128
58
138
126
93
55
144
110
55
92
75
84
92
109
105
158
91
130
101
55
93
67
171
127
104
108
92
67
152
139
144
139
127
103
145
140
64
92
55
146
77
37
110
97
178
138
146
139
92
144
144
56
95
56
111
122
77
178
93
111
138
92
129
128
58
138
114
55
75
37
169
37
124
97
145
105
109
67
122
58
118
84
67
99
91
110
55
55
86
86
103
132
105
67
171
127
83
140
93
105
110
93
144
104
99
152
124
75
105
105
134
58
126
78
126
144
58
128
56
105
130
110
158
126
110
134
92
124
178
98
137
67
138
169
56
55
138
86
37
139
86
67
118
55
107
56
114
138
171
146
178
92
105
97
93
92
124
122
67
178
126
126
97
95
139
119
69
37
126
109
146
55
119
107
178
132
140
119
117
93
122
69
104
104
93
55
126
178
138
110
91
131
107
127
55
123
140
101
123
56
83
104
136
86
110
178
117
104
114
110
56
98
105
124
92
79
76
81
123
92
111
77
167
104
138
134
171
178
75
98
110
83
55
110
78
132
83
110
80
110
122
105
104
140
79
119
131
69
56
77
136
178
69
92
105
37
79
81
138
164
124
55
79
145
68
168
122
79
110
105
169
139
122
92
126
89
92
89
105
122
55
106
126
118
100
55
109
104
178
74
199
140
131
92
55
105
76
126
37
146
126
77
169
135
123
74
122
69
92
105
58
99
109
103
152
55
75
158
97
108
122
104
127
144
110
143
128
93
75
144
122
171
77
69
178
171
178
56
111
56
77
147
109
163
146
92
110
105
111
111
58
138
114
129
110
139
67
102
95
67
122
125
55
69
122
56
122
92
163
56
105
151
178
109
127
169
105
169
105
105
103
58
56
162
122
75
92
169
113
128
93
152
67
125
55
58
55
91
138
126
55
137
138
127
124
110
149
126
180
158
103
86
152
123
56
122
123
140
107
55
104
138
167
93
152
84
92
77
91
56
91
122
93
128
122
69
110
56
93
117
37
104
93
123
178
74
127
67
122
144
91
56
92
119
126
122
92
182
127
109
109
139
178
67
37
58
91
107
109
55
139
92
114
55
67
126
64
55
138
144
86
137
74
56
67
119
123
122
122
127
148
55
127
98
37
138
55
56
169
110
74
152
93
99
111
136
58
105
122
93
91
110
79
127
127
178
77
169
129
163
77
55
56
103
55
122
105
162
178
67
144
110
56
69
74
124
97
110
55
168
138
123
93
140
178
124
67
69
105
92
123
55
110
55
55
109
92
158
162
131
105
127
124
69
110
100
75
86
168
75
105
124
81
111
87
55
92
74
110
56
122
139
126
127
104
55
123
122
126
55
140
151
56
138
69
55
96
126
126
55
84
169
92
127
169
67
124
123
110
92
86
99
126
152
104
79
124
136
107
122
152
37
78
178
79
110
168
105
92
94
67
132
138
119
55
105
95
127
104
55
122
55
122
109
112
126
55
135
101
91
127
110
144
119
178
69
126
67
84
94
104
168
84
146
56
132
37
55
164
79
123
107
146
169
55
107
56
68
119
69
105
134
56
93
77
98
177
134
67
74
91
109
103
126
135
110
134
77
93
104
77
92
92
122
93
126
112
105
152
110
144
86
92
58
103
105
92
138
139
85
103
169
164
126
144
144
171
74
37
180
91
80
93
136
178
55
122
123
56
101
126
180
126
127
77
132
110
93
139
104
79
126
92
93
88
127
108
95
74
110
138
111
110
92
77
55
144
55
126
134
122
79
139
56
160
92
122
69
80
126
67
119
58
144
160
178
122
178
93
126
138
91
83
88
138
93
91
160
126
122
106
110
128
93
105
93
80
110
178
111
178
105
137
105
139
92
112
79
120
126
127
124
138
93
37
37
152
130
93
56
101
160
105
78
77
112
146
145
93
80
160
130
73
105
128
92
93
75
93
126
58
144
110
122
58
164
146
148
110
107
74
92
127
75
104
104
169
92
122
103
105
123
128
96
67
69
127
92
37
178
105
122
109
73
178
84
135
111
121
168
137
122
146
160
125
138
168
55
55
92
171
69
110
91
111
116
99
56
111
160
105
93
68
37
58
101
55
135
92
69
37
92
79
148
126
110
93
111
138
68
104
110
119
91
92
127
122
92
140
58
142
122
69
115
140
97
93
55
77
92
55
109
105
93
135
79
104
67
67
110
105
107
75
126
126
93
67
139
105
119
128
138
79
92
86
69
122
105
69
110
140
109
169
69
110
110
122
84
102
152
83
99
93
69
126
138
93
119
123
37
79
107
131
77
146
145
107
140
93
126
105
123
92
178
56
120
93
74
136
67
131
103
79
138
124
152
139
109
138
58
152
163
91
56
126
55
93
145
93
56
58
110
163
134
58
86
101
68
126
122
86
58
136
122
138
55
148
124
99
134
178
92
55
67
110
136
125
91
107
110
105
91
129
128
37
86
83
77
136
67
105
98
122
69
119
103
112
100
58
58
92
128
56
103
139
55
104
105
128
122
55
138
55
75
126
110
124
112
118
134
67
110
56
94
74
67
128
126
110
92
92
99
105
120
104
103
111
111
152
104
74
146
136
146
122
122
55
67
139
119
115
83
67
163
83
105
146
110
103
84
108
93
122
110
92
84
93
103
93
128
112
138
93
105
119
77
127
126
95
144
110
92
93
147
55
77
74
110
55
136
122
105
168
123
101
105
109
109
79
111
92
178
122
69
58
110
165
139
103
92
109
97
55
55
99
162
139
119
78
122
126
126
139
104
92
86
163
55
122
67
171
98
139
139
178
69
128
107
127
56
128
58
146
110
92
93
74
92
134
79
107
127
55
152
67
56
144
56
92
199
74
158
58
122
92
167
145
93
92
103
178
112
93
127
91
139
97
75
178
37
100
77
110
61
145
128
126
84
112
107
144
79
169
127
93
67
101
107
78
67
100
69
104
152
105
80
92
135
152
69
107
37
107
105
86
56
167
110
56
105
92
91
55
152
158
68
131
138
123
127
140
171
122
91
37
143
69
109
168
93
165
126
126
67
93
100
126
55
122
135
67
126
171
110
103
171
140
74
152
55
92
99
130
127
58
88
84
122
81
104
104
92
122
55
139
74
112
148
93
128
55
138
96
103
100
138
122
86
79
75
79
144
88
92
41
178
99
91
122
100
92
115
178
120
146
145
152
92
139
126
146
79
163
56
148
58
171
109
92
93
37
92
77
110
86
92
56
114
55
138
128
99
89
122
110
119
146
110
93
110
169
134
92
110
69
91
92
168
122
86
106
178
149
55
92
163
55
128
91
127
110
93
56
138
139
134
127
75
122
158
110
67
58
69
138
105
68
75
92
91
86
130
152
100
105
126
58
123
138
37
93
37
130
79
93
92
158
109
110
92
91
138
77
138
74
103
127
140
99
128
91
122
105
126
104
55
58
138
105
105
75
188
111
125
55
126
104
110
144
171
132
58
84
69
92
37
99
69
144
102
68
139
126
123
111
138
122
110
168
58
132
55
105
110
122
122
192
110
108
76
105
116
112
110
101
106
104
158
163
104
69
126
132
151
139
37
104
111
126
83
122
55
67
146
55
105
122
91
122
110
105
93
188
199
79
57
104
118
56
55
138
136
58
129
86
104
79
122
107
122
92
92
134
104
120
103
126
148
138
180
79
119
144
129
99
92
145
152
180
75
138
138
104
122
108
122
55
126
168
126
92
105
110
138
91
69
55
124
135
178
93
74
104
67
144
140
55
122
79
123
127
55
37
74
108
109
112
79
86
122
138
144
93
146
147
127
105
123
127
69
122
111
177
91
93
123
84
134
110
56
150
139
146
132
86
158
119
114
37
171
124
152
134
130
92
83
79
68
111
151
147
160
138
105
127
140
138
126
128
145
97
104
117
86
92
109
180
88
110
146
92
119
55
105
104
110
105
107
56
139
37
152
145
37
110
84
171
56
163
138
112
55
93
86
137
110
73
118
56
56
92
55
144
177
138
99
91
123
110
104
58
117
127
131
124
146
158
138
138
128
142
140
56
86
128
77
92
99
110
119
92
148
139
103
79
75
107
102
138
178
104
67
158
93
107
122
126
93
169
98
92
144
139
92
99
124
129
109
92
58
124
127
110
104
58
105
93
101
128
127
122
127
69
37
124
69
79
69
178
55
110
86
131
127
105
86
169
75
110
138
56
99
104
92
92
134
55
117
126
110
106
169
83
55
55
109
106
105
98
86
128
100
99
56
104
99
98
138
92
92
138
83
110
142
122
103
92
152
98
55
122
92
123
105
128
104
171
96
37
91
152
105
74
111
123
139
91
112
104
67
126
105
99
74
93
92
92
128
92
104
126
124
134
105
139
56
55
165
92
97
119
92
86
128
79
55
134
103
119
105
56
68
139
123
92
69
127
91
138
111
105
123
106
67
104
146
58
114
110
74
112
77
188
92
55
92
162
93
110
126
55
132
79
79
93
67
109
138
123
37
139
119
103
92
134
140
74
56
128
124
92
69
92
119
109
101
104
92
128
128
55
144
67
146
91
105
103
122
74
92
144
135
126
110
97
86
99
122
110
104
55
79
138
105
115
92
140
92
109
105
103
102
169
105
79
84
92
55
69
127
105
127
130
109
152
55
123
92
37
122
67
103
167
169
148
152
105
93
122
100
138
79
74
119
146
132
111
55
126
77
92
139
56
58
92
126
100
144
91
123
145
158
139
101
74
92
138
56
93
58
100
139
119
55
92
101
164
77
67
139
122
129
67
139
88
37
55
139
178
127
127
146
105
126
93
163
122
121
79
110
110
100
89
125
139
67
58
55
101
92
169
130
104
105
55
55
58
107
93
169
139
126
105
79
55
91
56
101
128
179
56
56
67
69
67
144
139
130
122
122
152
81
37
55
58
137
105
178
126
144
102
110
104
126
67
69
152
122
56
92
105
83
126
169
58
58
114
139
105
146
138
112
139
122
178
135
124
91
92
144
139
93
84
93
103
92
178
55
92
55
37
102
92
37
91
117
106
152
104
169
55
178
69
126
110
92
84
110
80
130
92
74
123
169
119
58
111
74
83
93
111
77
103
119
123
110
98
111
107
67
109
131
145
86
37
134
107
84
112
69
139
132
91
127
127
129
92
139
37
109
92
146
111
110
162
138
122
158
93
104
122
178
178
105
144
93
37
105
122
138
127
86
111
144
93
91
171
77
68
67
105
110
58
122
122
92
122
58
69
146
121
103
126
122
130
55
108
126
127
58
56
123
55
100
85
99
58
37
127
129
126
126
67
138
145
110
92
93
158
178
109
55
152
67
122
126
67
119
100
144
55
101
178
134
178
126
130
93
92
141
37
145
98
146
111
67
58
77
97
81
79
105
110
37
171
111
55
69
138
146
91
106
92
131
126
77
127
92
79
123
140
122
104
124
92
112
93
77
145
91
107
144
139
178
83
149
97
151
105
100
110
148
79
148
110
77
126
122
79
132
92
122
55
105
124
104
74
93
56
107
55
105
91
167
69
126
134
110
92
134
92
56
102
123
122
146
103
37
95
93
102
171
105
92
104
110
99
139
123
140
79
56
122
123
67
103
58
74
122
37
122
105
99
81
147
126
104
122
79
144
134
104
152
88
92
56
67
169
130
110
110
92
92
55
75
123
169
67
103
138
180
109
119
55
88
126
104
123
92
93
126
98
147
93
134
162
110
144
146
126
80
99
126
123
110
107
103
75
93
122
92
110
55
105
128
110
109
110
162
171
126
109
86
97
144
104
169
124
80
104
84
110
75
138
67
139
123
79
105
110
77
156
107
121
148
146
152
83
92
140
122
146
140
134
106
140
162
120
127
55
92
56
138
105
103
110
169
152
111
98
93
127
108
105
110
37
55
79
124
110
105
94
122
86
132
123
105
37
100
107
103
144
93
107
95
169
99
83
131
104
126
67
56
56
55
122
75
37
67
163
56
132
92
122
37
122
141
143
92
169
110
93
83
58
67
138
158
83
105
178
58
89
146
110
74
165
112
144
105
147
163
56
107
92
74
111
138
110
78
91
109
122
178
97
88
68
180
130
56
139
74
110
37
105
77
107
128
56
37
55
110
178
74
93
107
178
100
74
93
123
37
92
55
92
165
178
92
92
127
92
169
139
104
67
110
119
144
140
109
126
121
123
119
91
111
99
104
74
112
67
146
110
102
58
122
152
86
111
92
121
103
88
55
58
126
111
149
92
101
104
169
122
122
104
105
178
140
77
148
101
136
104
128
55
55
138
92
158
69
103
74
56
55
68
100
105
105
110
125
69
168
37
67
105
92
126
122
126
101
92
119
55
124
79
124
105
140
74
91
79
104
199
86
138
37
92
122
138
37
140
55
122
100
80
127
163
69
106
122
130
108
55
115
67
56
178
121
138
104
138
126
167
126
77
192
142
92
55
108
37
69
122
105
92
92
74
86
92
56
169
37
114
130
105
79
74
148
37
102
104
109
69
134
58
123
58
107
152
105
55
169
91
92
123
93
69
58
103
129
103
152
77
118
123
138
92
122
156
75
92
67
126
101
92
138
152
77
125
80
98
127
92
92
88
110
122
79
56
104
130
95
80
106
58
58
163
55
56
136
131
111
89
169
130
128
115
56
110
169
58
110
123
92
67
146
162
92
55
86
83
120
92
67
139
68
110
168
110
55
130
104
127
137
56
139
92
55
131
99
122
83
79
55
123
104
58
68
79
178
77
103
152
131
128
122
93
69
104
55
156
56
75
144
126
97
160
103
122
86
92
126
92
37
101
169
88
105
55
105
123
92
124
92
106
127
89
110
134
109
146
110
148
132
138
139
138
111
84
110
55
94
110
92
96
119
105
123
107
149
146
74
81
69
138
148
134
160
122
126
79
92
105
122
122
122
55
92
138
141
101
126
130
152
97
67
171
126
92
111
99
77
110
55
119
79
92
92
140
127
55
92
163
68
140
127
104
138
86
122
37
55
126
104
80
67
104
56
111
110
180
99
102
76
92
110
92
141
56
120
134
146
132
101
92
69
56
79
131
95
93
128
138
67
69
100
132
114
119
122
117
92
55
110
126
107
91
37
124
146
98
160
93
110
92
84
107
126
137
111
111
131
69
126
56
127
92
67
130
86
74
144
58
98
122
55
79
105
55
129
132
110
119
122
119
126
67
83
107
112
122
83
138
148
92
55
58
107
55
126
55
108
111
127
84
93
67
136
169
55
102
86
122
56
127
103
123
105
128
73
138
55
127
55
69
55
156
99
126
86
138
127
144
92
92
55
169
146
129
74
93
126
138
93
69
127
91
110
99
110
86
109
110
117
99
93
55
104
147
112
104
74
37
93
56
138
98
117
120
138
114
75
92
145
74
105
92
102
114
138
108
55
92
92
56
138
68
92
105
110
119
110
104
56
138
122
79
158
92
58
94
106
93
81
136
105
122
105
104
110
111
152
107
92
104
92
77
77
111
104
144
109
146
122
83
93
109
93
171
75
105
77
105
130
118
146
140
69
92
131
109
55
92
37
148
92
120
103
56
123
131
122
110
169
100
104
127
56
138
77
119
134
110
55
111
128
140
105
178
126
92
122
112
165
74
110
144
110
55
148
97
79
163
126
91
158
92
120
88
110
83
86
152
139
56
109
58
55
58
127
56
92
127
101
55
105
105
92
152
130
105
105
112
37
122
92
123
67
67
37
118
98
56
138
55
144
55
93
102
145
126
104
92
93
104
120
105
105
86
180
69
104
122
55
67
122
146
130
55
138
86
134
75
180
122
135
99
136
137
119
91
105
120
92
56
58
56
107
178
122
58
67
112
112
67
127
126
132
122
123
122
107
110
92
67
128
114
55
110
110
86
152
104
108
122
127
140
126
128
92
75
55
140
92
67
152
105
92
95
91
67
120
111
93
122
37
93
134
91
122
85
132
97
92
69
55
92
55
169
89
126
148
101
92
122
118
110
80
58
106
105
178
105
126
104
93
126
94
104
123
178
99
64
74
92
55
55
139
58
119
92
113
117
111
104
126
58
147
108
163
140
86
105
55
128
58
128
92
58
69
146
148
92
58
75
93
122
104
55
55
99
92
180
107
123
41
127
129
105
79
138
58
89
163
106
37
104
93
144
92
138
84
92
67
86
123
76
122
106
103
152
91
109
103
120
92
104
141
69
92
152
107
86
124
138
77
55
99
55
138
107
126
104
127
127
55
117
146
92
131
92
93
135
37
139
119
92
116
122
132
138
137
92
138
152
55
178
104
123
168
55
122
110
122
99
55
124
127
55
95
56
67
178
122
93
92
125
109
92
169
108
55
134
152
138
148
93
67
110
138
188
67
110
132
139
169
110
139
93
67
37
100
107
134
144
138
92
58
92
140
104
95
162
99
122
126
169
110
105
128
120
149
110
55
152
79
122
98
91
74
136
119
168
92
79
125
101
56
132
97
168
86
163
56
92
138
79
114
37
169
67
152
127
55
110
37
126
122
122
124
126
79
55
147
145
110
93
93
92
108
126
83
67
102
79
98
134
139
55
104
138
122
147
80
79
67
74
104
91
84
105
92
126
132
125
99
97
67
138
103
67
58
152
119
104
178
152
86
74
104
169
55
122
97
138
138
140
152
122
146
93
80
92
92
139
110
131
180
92
112
104
138
138
123
123
110
156
55
139
126
169
138
134
86
58
127
110
105
171
111
178
107
92
142
86
122
122
126
122
100
110
163
99
142
55
112
178
139
109
104
92
105
92
178
97
56
178
110
107
106
55
110
55
92
67
55
119
122
138
67
178
126
104
111
129
123
55
103
153
144
122
105
178
122
55
182
144
58
137
69
92
128
104
156
56
92
68
83
126
67
77
126
122
104
122
110
92
138
74
122
75
108
119
91
104
122
97
67
58
118
85
91
126
79
114
169
128
104
124
105
95
160
136
80
169
55
56
55
104
146
139
128
92
168
117
127
123
92
97
138
104
37
83
119
146
122
122
55
152
122
79
55
92
83
91
67
139
55
152
75
37
110
128
56
37
105
128
93
178
138
105
115
158
98
92
146
74
127
134
123
178
104
164
56
93
179
100
169
55
178
92
92
105
67
117
72
138
92
105
122
107
111
117
77
119
79
104
128
110
69
97
128
107
92
105
97
128
122
93
97
93
169
122
153
171
106
103
105
127
126
79
122
134
98
78
138
136
58
69
138
67
126
75
138
92
146
121
126
68
92
110
55
86
110
118
104
180
79
148
91
163
110
111
105
122
110
138
102
92
55
109
106
111
92
67
56
69
92
104
55
140
114
67
125
126
127
37
139
126
77
104
113
144
162
105
69
55
92
152
136
107
110
56
141
114
37
139
99
152
148
105
111
93
55
117
105
104
122
86
79
124
123
67
148
92
132
119
92
120
55
93
135
92
131
178
110
97
55
109
110
77
122
110
93
180
122
111
119
135
77
119
122
86
55
93
110
122
93
130
126
92
180
86
105
122
103
58
110
110
92
144
95
128
58
92
122
105
67
180
86
83
92
169
93
67
91
106
137
110
67
132
86
117
58
104
110
78
72
105
152
171
135
104
105
122
178
152
77
104
124
140
101
139
68
123
169
162
105
58
119
148
56
55
95
58
127
37
92
55
178
159
122
128
178
58
67
55
103
92
122
138
110
105
92
92
55
138
110
56
105
105
104
55
98
168
105
86
146
94
55
74
111
56
37
94
97
77
37
37
58
178
79
146
126
67
93
104
128
128
107
126
74
105
69
67
139
104
104
146
144
56
97
92
86
55
58
129
55
79
104
140
122
144
138
138
163
104
92
126
110
92
97
127
37
144
55
56
122
126
123
104
138
158
127
138
149
75
56
37
58
122
67
78
93
180
56
105
139
169
77
126
55
124
126
93
105
123
78
134
79
146
169
106
124
122
158
126
122
135
148
144
148
58
81
138
110
93
171
127
92
91
104
55
92
128
178
67
89
37
136
56
152
69
86
105
108
121
97
92
91
79
67
145
92
37
104
99
162
105
74
55
117
56
79
122
169
131
169
169
178
118
97
158
118
110
145
56
105
91
104
74
92
122
145
122
111
67
122
138
105
92
93
113
37
128
92
152
86
136
104
56
92
99
122
116
105
55
112
138
144
163
145
152
67
69
110
102
69
111
110
92
126
107
55
67
89
99
93
146
106
67
103
148
67
55
105
163
139
68
139
69
124
74
115
69
126
93
124
138
109
111
144
110
99
107
124
56
84
92
92
97
122
67
178
138
83
99
56
92
171
106
86
145
69
55
69
56
104
104
55
146
130
152
58
55
122
101
103
126
104
105
104
135
86
93
122
67
95
160
92
83
75
122
132
139
77
113
138
106
122
75
119
67
75
113
131
67
67
92
86
103
83
111
79
37
110
134
148
139
94
55
178
123
148
110
152
79
93
55
102
83
110
127
178
111
141
84
58
72
92
107
92
125
92
91
92
122
110
152
144
67
107
74
132
122
55
178
128
114
112
109
138
124
67
105
69
128
122
110
158
56
110
92
56
56
111
178
92
180
58
55
92
169
69
138
110
92
56
110
111
93
140
122
98
120
92
115
98
144
150
86
126
155
92
144
37
127
138
111
55
145
128
124
94
146
127
79
37
138
100
126
55
92
110
148
92
110
77
111
58
56
128
67
178
144
37
79
92
55
69
138
144
61
83
122
92
37
37
77
128
178
72
171
55
87
93
144
92
107
84
55
109
152
93
37
86
152
104
110
69
83
163
69
152
69
134
125
104
128
77
134
79
88
146
75
107
158
56
79
144
103
58
134
122
137
55
114
79
138
127
80
56
99
138
97
122
140
98
131
67
120
89
124
122
99
120
67
104
110
138
92
96
105
67
126
75
111
122
93
110
105
138
55
81
122
92
92
112
123
91
105
105
111
105
92
91
100
111
37
84
148
138
107
119
122
117
92
140
55
92
93
171
139
123
109
105
93
107
93
122
126
136
127
126
131
104
144
55
142
126
131
58
37
117
162
101
55
56
122
144
126
91
74
74
92
111
178
91
81
104
130
144
138
123
104
126
69
107
199
114
140
74
120
139
175
56
86
116
128
98
83
84
144
122
138
91
56
126
109
92
123
139
146
127
74
75
56
67
110
111
103
178
107
68
92
135
152
107
84
98
144
91
37
93
92
37
69
102
55
146
164
138
55
138
131
104
58
122
101
138
86
95
55
80
144
138
55
138
134
67
138
138
92
92
126
104
169
144
101
122
67
128
122
92
134
152
55
69
111
134
119
105
110
122
55
37
83
142
74
67
91
105
92
127
197
140
127
89
74
139
37
126
107
92
37
122
122
128
151
56
128
146
104
127
100
92
122
144
92
119
127
138
126
107
100
67
127
96
92
87
94
141
103
92
55
83
99
122
128
85
67
87
104
127
126
148
119
67
105
83
127
69
107
105
108
74
56
95
126
138
56
58
69
92
165
92
55
92
124
122
92
144
103
123
124
104
67
107
99
130
122
105
55
37
122
104
132
69
75
99
140
122
89
137
67
102
92
92
105
126
86
69
126
122
130
104
107
197
126
77
122
99
92
120
142
126
91
56
123
110
81
122
58
122
169
69
119
105
104
92
105
122
140
79
86
138
89
89
134
131
110
55
180
103
98
86
128
146
138
58
107
92
106
119
146
126
128
99
112
67
128
110
104
146
148
107
137
105
138
56
133
37
37
160
55
103
138
138
109
92
110
136
126
110
144
130
178
122
37
110
122
83
37
178
55
114
105
69
146
55
100
103
110
110
97
55
107
99
139
152
75
56
169
167
105
76
132
105
110
169
123
100
92
139
91
58
126
126
134
126
55
169
134
126
122
132
72
152
58
79
127
92
92
127
79
58
138
95
120
56
119
109
148
122
92
107
110
110
138
109
93
134
114
92
122
146
134
56
105
95
93
126
55
128
67
68
91
103
178
110
132
122
67
105
134
37
92
146
146
91
74
119
58
126
122
117
80
138
105
104
145
75
79
165
146
110
122
58
135
169
125
92
92
178
37
148
37
58
122
171
56
140
97
56
88
88
104
139
55
126
136
122
163
180
122
115
137
77
97
67
56
105
142
55
92
127
107
37
114
122
55
110
92
55
105
122
178
140
91
142
105
93
55
74
119
178
105
102
126
104
109
93
67
127
104
93
97
55
130
139
56
110
139
107
75
104
69
128
56
93
109
105
134
105
135
122
92
152
106
120
95
58
122
139
132
56
146
169
158
37
110
127
139
127
111
127
55
119
67
55
83
178
146
106
144
92
105
91
144
102
110
122
91
105
92
109
127
37
120
126
79
77
61
69
134
122
169
138
119
103
105
118
122
100
169
138
138
84
89
55
146
58
91
122
98
105
122
105
122
140
74
107
92
55
104
152
55
107
37
92
169
110
58
97
91
37
124
37
141
37
67
152
126
144
123
37
67
128
142
109
144
134
127
74
67
106
69
95
67
119
118
86
158
86
105
102
66
152
69
58
136
126
55
139
136
152
105
119
135
138
93
104
178
56
67
37
104
67
110
126
171
55
122
132
111
56
93
105
130
119
68
109
105
67
118
37
152
126
77
119
149
102
72
120
92
92
104
55
91
107
101
83
69
55
77
92
105
91
56
178
122
103
58
95
119
134
140
105
91
67
58
111
122
126
139
93
58
132
99
144
124
93
102
55
92
110
97
110
146
67
37
138
139
56
139
122
122
55
92
56
56
79
110
67
56
163
103
93
58
92
164
56
111
134
144
106
120
110
134
127
92
77
105
104
98
37
135
79
88
122
138
101
37
87
126
111
55
86
126
122
107
77
55
126
92
118
69
37
92
93
122
86
86
107
110
67
104
138
74
134
128
163
74
138
109
152
92
55
92
128
55
168
178
126
105
199
119
91
37
79
122
100
56
137
91
108
55
55
135
67
151
75
138
168
99
56
93
92
93
55
120
146
105
126
122
126
55
105
122
81
105
128
126
146
110
92
146
126
93
163
129
180
126
58
74
91
140
104
55
143
67
111
104
180
109
67
169
152
128
178
69
180
122
111
152
129
74
178
103
119
106
91
93
93
168
138
169
56
99
75
128
93
142
37
144
123
109
58
55
139
58
37
110
92
99
146
80
131
92
98
122
178
105
138
58
55
144
80
123
120
122
160
86
67
105
55
105
111
145
110
110
37
58
80
126
147
58
99
92
122
178
92
129
109
92
93
139
94
110
105
158
84
56
67
113
55
56
104
163
122
122
136
74
105
98
78
104
91
55
122
93
110
69
92
99
67
178
91
103
55
55
146
68
67
119
111
37
55
55
58
55
111
114
118
111
77
67
126
92
55
123
107
97
114
103
108
111
74
137
95
126
128
152
107
67
128
67
134
124
122
105
69
83
123
68
92
126
55
86
134
68
55
92
75
138
100
104
97
68
131
91
138
168
146
81
105
119
92
122
178
158
151
105
123
122
105
88
79
110
97
138
56
55
130
134
134
119
55
104
37
58
138
58
58
103
134
103
41
126
104
92
111
37
67
68
178
67
58
123
105
119
180
88
69
171
138
58
75
146
79
92
144
122
99
37
92
119
58
138
152
119
83
78
180
58
122
69
55
180
128
97
80
138
92
74
122
110
126
101
126
119
55
110
92
139
79
113
67
144
171
58
109
138
92
92
56
104
122
92
134
136
99
99
139
79
127
107
105
126
163
74
92
92
67
97
151
110
114
140
124
58
99
127
119
122
109
156
92
69
58
92
69
92
122
111
119
37
79
138
130
104
105
138
126
92
58
93
169
58
136
68
67
163
107
139
119
120
92
79
105
169
152
126
92
55
95
58
110
126
77
122
56
182
122
138
79
144
56
105
58
74
158
169
152
139
128
140
137
182
121
118
122
81
154
37
178
56
146
146
140
131
105
139
123
127
104
138
119
152
83
93
92
148
122
93
92
126
144
93
109
67
55
92
124
58
67
138
159
55
158
126
56
55
100
122
110
165
100
105
104
178
135
56
93
127
144
144
107
105
107
67
86
92
144
111
77
169
97
92
92
55
162
117
114
93
110
149
140
69
112
56
139
138
92
106
86
101
123
92
164
123
78
55
167
86
130
115
134
56
134
106
120
58
56
126
98
138
178
168
67
86
158
77
131
103
87
67
139
103
122
119
67
139
138
95
92
88
122
132
132
168
162
91
79
105
93
122
171
138
93
109
99
109
55
107
75
112
74
55
97
75
56
138
77
86
158
118
128
56
56
92
134
178
75
67
128
138
131
56
109
93
92
107
67
120
114
55
140
117
122
84
122
83
126
92
169
56
67
109
74
105
139
93
128
69
92
98
68
160
138
152
146
106
109
122
55
105
152
128
122
93
128
107
55
126
58
84
93
137
104
139
137
164
136
100
102
58
142
126
58
122
95
37
77
119
92
81
144
37
126
178
105
91
162
110
127
118
86
168
96
144
92
178
152
178
146
124
126
105
105
74
128
111
169
68
106
126
138
178
169
140
99
56
106
120
75
144
138
103
105
67
122
92
105
139
148
150
122
123
104
64
58
123
138
158
139
56
171
106
139
68
138
92
110
152
104
122
86
178
138
96
139
105
119
110
139
115
163
75
158
134
69
56
107
55
110
123
168
124
107
67
92
128
107
112
144
138
105
162
103
67
120
56
55
37
74
139
80
144
119
113
105
105
122
56
92
55
97
101
105
91
79
67
122
74
93
144
110
106
77
126
144
55
127
144
122
75
55
100
102
127
92
67
75
122
102
105
139
122
107
92
156
123
56
124
89
93
144
105
123
122
105
61
55
92
79
79
127
178
138
112
55
138
92
93
144
146
104
86
134
101
144
79
101
104
149
55
75
180
126
130
37
58
92
104
127
105
178
93
144
124
152
111
104
144
92
93
138
122
92
91
104
92
103
75
134
119
92
134
56
84
146
81
122
126
107
152
144
55
67
92
55
111
92
93
140
105
128
79
111
134
144
110
152
110
105
126
144
58
55
55
111
92
132
126
95
111
122
114
92
110
122
55
169
122
103
56
104
92
92
126
122
110
127
67
104
77
178
144
67
110
163
134
103
128
67
139
105
110
127
69
110
111
37
138
124
93
55
93
158
123
127
55
64
137
110
91
124
122
55
58
134
138
144
105
55
104
108
55
104
86
138
146
122
104
55
55
105
37
128
132
81
126
37
178
139
148
67
120
67
123
56
144
86
109
117
111
122
92
127
111
145
79
77
92
139
83
55
58
164
104
110
92
127
72
146
122
122
55
126
101
178
140
119
101
104
146
102
75
110
128
55
56
74
120
126
128
130
137
145
98
145
92
67
148
127
111
136
105
111
55
81
122
91
104
163
79
140
128
115
114
67
139
138
110
127
137
55
92
126
83
146
104
86
105
148
99
105
55
58
109
139
130
123
123
152
126
117
124
106
149
93
37
37
138
67
104
122
128
92
126
178
104
96
75
55
92
55
152
122
58
56
110
134
137
58
78
144
56
148
110
108
160
127
91
124
122
131
178
79
104
55
83
118
86
104
79
69
67
105
102
93
115
110
67
178
88
58
105
101
152
55
118
55
144
74
77
123
91
92
103
104
56
86
86
37
122
110
103
115
119
122
132
140
149
122
55
104
79
115
139
55
86
122
67
137
118
37
110
124
55
55
37
106
124
138
139
55
99
110
128
119
122
180
105
92
122
77
69
111
92
84
167
152
55
136
104
139
152
79
69
146
69
136
110
121
93
103
138
77
58
199
146
92
124
92
158
141
138
75
99
104
127
55
124
86
126
105
130
77
56
55
92
80
68
117
104
93
105
74
95
119
127
104
127
93
148
178
105
128
130
58
128
139
93
139
122
124
168
127
126
123
114
168
74
67
93
124
67
37
110
144
92
144
92
124
72
124
111
111
93
64
109
56
122
178
93
180
152
75
92
111
105
107
123
78
99
126
92
37
92
122
138
58
146
112
148
105
118
182
69
167
103
67
75
137
104
134
69
55
93
99
112
58
105
92
37
100
109
107
144
152
139
92
93
55
139
58
104
69
109
89
105
138
110
37
77
119
68
58
67
126
92
138
123
93
144
138
180
105
131
67
75
58
110
104
56
117
55
37
148
138
123
110
58
55
152
137
110
105
99
67
122
56
134
92
92
91
120
92
122
55
105
122
55
92
126
128
110
111
178
160
144
56
122
107
119
56
138
110
126
122
109
55
138
146
105
104
110
55
104
178
93
93
55
96
169
126
135
128
92
97
138
69
104
110
93
115
104
69
55
123
119
103
105
114
105
95
55
132
121
140
106
139
67
93
158
122
152
55
56
105
91
122
126
93
92
138
68
99
122
92
122
92
74
139
55
122
74
77
152
120
149
83
37
122
92
149
79
99
92
86
92
79
100
171
104
178
126
83
146
136
67
124
146
158
55
75
55
37
107
106
124
80
123
119
58
69
92
92
124
139
74
67
130
122
92
104
138
140
55
127
169
56
94
138
126
128
112
169
84
69
178
67
68
114
77
124
99
103
149
93
86
55
77
134
111
101
165
68
125
55
178
68
92
140
86
126
92
55
72
56
131
122
80
152
69
128
148
93
92
77
106
144
122
104
139
122
37
83
114
103
110
119
134
113
92
92
110
140
148
138
67
91
167
146
91
178
147
109
105
138
124
136
122
79
127
56
132
141
146
55
74
134
55
58
37
93
69
104
105
134
140
77
104
122
111
105
110
138
126
92
178
79
67
99
111
110
122
123
111
69
56
131
83
139
126
37
83
55
93
92
139
55
111
83
105
79
56
110
121
126
128
86
92
105
144
146
91
127
105
110
104
122
104
152
56
131
56
103
109
104
55
105
86
95
188
126
110
126
110
92
146
152
168
122
55
105
145
122
105
168
122
122
134
131
169
171
104
78
92
92
67
105
105
69
67
93
126
55
109
93
92
103
105
148
83
138
92
126
104
55
127
69
110
180
55
77
92
111
77
126
56
84
93
55
138
56
98
180
124
83
163
55
110
111
139
96
168
77
158
110
110
107
93
86
78
110
77
105
180
140
126
119
148
110
122
144
119
91
146
69
67
86
92
132
171
178
68
130
99
56
93
93
99
178
127
67
55
84
109
93
68
111
92
178
111
56
138
161
139
169
105
138
92
139
138
86
88
178
104
109
169
93
146
74
110
79
100
122
122
124
104
97
69
136
139
171
105
91
83
67
56
140
83
178
123
126
122
77
37
105
58
92
127
105
171
55
58
130
93
118
123
79
37
110
138
148
146
168
79
135
69
123
104
58
103
86
111
130
109
105
67
140
111
144
92
88
69
153
92
37
88
79
55
92
144
160
122
110
139
110
180
37
93
75
144
95
56
84
109
55
150
107
130
55
107
93
136
100
138
83
114
93
144
126
55
119
168
104
93
55
92
83
92
136
178
110
72
55
79
79
92
65
92
128
105
144
104
122
108
92
37
91
122
137
139
37
79
138
109
69
112
68
56
91
119
100
92
152
131
104
180
108
138
95
83
79
109
74
127
110
130
122
136
67
122
163
86
136
93
144
109
134
37
55
102
105
112
122
58
99
105
67
119
136
110
126
110
91
138
138
131
93
148
111
118
169
163
114
110
55
103
128
119
69
105
122
140
148
72
105
55
144
132
138
97
165
123
74
110
89
160
122
122
110
127
126
110
79
132
92
73
144
100
126
120
105
98
171
105
134
55
105
93
138
127
138
110
67
109
105
79
56
129
110
79
123
111
169
77
67
55
93
109
37
138
92
105
103
103
97
142
168
111
132
91
162
146
105
109
146
178
178
104
105
92
79
132
136
81
128
109
55
92
104
37
135
92
122
105
124
89
146
37
126
122
84
111
75
93
105
178
126
169
136
61
111
83
105
107
122
93
120
128
122
122
122
108
93
58
109
127
126
75
167
77
138
104
86
122
37
145
110
169
108
104
67
110
58
110
110
109
37
98
139
83
92
103
105
92
37
130
109
74
92
67
79
128
128
75
123
37
122
91
136
69
91
55
67
110
122
99
152
104
67
79
115
178
95
126
91
110
79
55
55
79
127
55
122
130
100
79
165
114
146
69
78
92
110
103
91
91
169
55
168
117
92
122
180
92
131
55
58
55
92
92
131
105
97
92
69
79
68
136
122
178
99
92
123
92
119
128
138
107
139
55
92
74
92
148
145
131
67
139
126
138
111
123
77
130
77
119
119
146
55
95
140
105
110
67
113
104
178
138
78
93
138
120
107
178
37
127
58
169
115
124
126
91
129
181
105
67
104
69
80
67
75
112
92
148
103
91
86
126
139
104
139
160
124
122
55
126
95
69
128
169
104
178
92
126
67
126
144
144
110
55
105
139
55
146
56
144
137
139
92
93
118
83
126
110
56
58
107
98
123
132
122
67
139
95
92
100
67
58
79
86
139
128
83
126
138
55
137
128
146
132
111
81
69
137
105
110
37
127
78
140
138
105
58
122
140
160
123
131
55
56
67
69
105
99
67
107
92
127
89
79
74
55
122
117
144
122
104
93
181
137
56
86
119
169
140
138
119
127
111
84
110
98
67
109
160
92
77
92
138
67
148
122
141
105
86
67
67
111
56
140
122
101
107
68
127
138
92
130
142
81
104
84
37
144
110
86
126
67
55
92
67
110
130
144
138
135
171
92
93
144
55
56
97
152
139
138
104
55
143
37
137
56
75
122
86
104
91
107
104
95
132
84
126
109
126
93
180
144
138
92
92
55
67
104
123
69
37
117
160
138
139
92
92
127
93
92
168
139
123
92
55
156
55
140
91
79
77
93
83
138
91
119
164
111
114
106
103
93
122
93
37
152
75
77
67
127
74
56
87
37
128
105
86
106
122
68
167
77
102
122
109
99
55
145
122
58
119
138
127
110
109
127
74
111
180
144
56
88
93
37
67
86
92
91
171
122
122
148
117
84
104
55
92
77
122
58
122
122
110
171
84
123
37
122
55
58
98
126
55
134
103
107
163
105
126
152
104
122
122
126
110
56
178
126
106
130
111
124
69
135
58
92
102
138
126
144
120
99
103
86
147
96
74
92
139
144
128
58
123
92
55
163
104
92
119
146
108
95
55
55
105
120
67
132
139
152
128
67
69
55
148
37
94
113
122
93
37
88
122
55
56
148
105
85
107
92
110
126
126
152
138
138
86
93
56
99
107
111
97
119
110
92
130
112
117
169
126
93
56
168
105
69
139
119
127
79
124
110
144
107
107
128
55
126
55
139
152
178
122
138
97
126
105
180
92
68
103
86
55
138
105
110
110
101
84
126
123
69
126
122
146
139
109
126
56
138
113
92
92
86
55
92
92
125
92
77
110
84
146
105
37
114
140
101
178
97
37
112
93
138
67
93
123
134
178
93
69
135
122
130
106
165
86
83
92
141
37
122
117
92
104
37
135
91
110
101
169
105
68
104
116
139
162
127
37
120
110
100
79
144
122
37
55
126
119
123
129
127
87
120
101
75
55
105
126
104
104
98
55
110
55
76
101
139
112
81
58
118
141
93
103
55
73
119
111
86
86
101
110
67
181
89
163
58
122
104
164
138
110
138
37
58
55
152
146
92
169
138
111
104
92
69
55
58
163
83
104
111
136
140
83
105
122
105
80
92
124
132
162
110
79
146
122
58
122
71
105
67
126
92
132
92
169
93
124
92
75
104
61
104
171
37
134
117
163
178
126
138
127
152
86
110
37
199
144
92
92
104
135
110
130
91
55
144
104
110
56
104
56
126
74
55
138
135
97
37
92
74
77
122
130
79
92
151
101
56
58
92
130
67
55
93
123
126
69
55
119
109
69
122
37
129
74
112
55
110
104
104
107
126
127
99
126
99
55
127
100
127
169
105
79
178
92
171
138
132
132
126
92
96
160
144
134
69
67
103
93
146
92
119
123
83
126
113
92
93
77
178
97
93
119
112
139
109
124
122
104
99
67
103
93
37
83
105
91
126
69
93
144
77
144
37
55
67
55
168
105
122
126
74
122
138
86
119
86
127
123
92
69
77
75
123
69
152
67
126
79
123
77
58
138
99
92
111
120
178
69
93
93
67
104
111
107
110
98
55
67
55
127
138
99
140
105
58
122
122
56
93
128
152
73
74
178
69
102
104
152
83
122
144
122
81
109
67
112
111
163
163
58
145
135
126
92
148
91
56
139
163
119
137
104
126
86
75
146
93
110
107
105
55
86
146
110
126
100
126
92
146
92
67
68
122
126
149
69
163
58
92
98
58
140
111
178
88
58
126
79
110
122
55
55
67
109
92
111
122
92
55
105
55
138
107
124
55
115
105
105
144
124
55
75
75
99
123
92
92
127
144
126
106
122
107
93
117
131
55
77
148
152
126
144
112
178
56
106
123
83
56
87
105
81
122
101
141
58
102
92
86
128
149
105
86
97
112
178
122
112
55
92
92
111
86
56
149
75
110
127
68
93
86
86
58
127
100
110
37
80
67
132
101
102
127
105
92
99
86
87
69
144
171
131
110
75
67
138
93
119
95
107
123
98
56
104
92
130
107
154
99
86
122
56
67
94
109
158
106
101
98
93
55
93
83
110
136
93
67
55
79
104
138
168
178
126
92
138
93
164
55
180
104
148
139
140
68
77
146
97
110
104
67
92
64
58
103
138
105
164
77
58
99
56
127
68
128
138
110
126
112
146
105
109
130
169
122
138
67
92
118
144
124
122
169
109
99
119
92
128
110
109
92
56
122
168
93
92
92
92
105
126
56
122
55
162
83
105
56
110
69
171
110
123
110
119
55
55
119
169
79
55
152
67
139
158
92
91
124
109
138
84
145
134
110
105
178
126
93
55
86
132
92
68
105
134
91
101
104
122
86
69
126
110
99
126
92
83
126
117
162
103
93
182
189
137
134
77
105
124
156
55
158
86
122
126
123
86
110
109
91
55
58
58
102
122
117
92
58
41
152
92
119
37
128
122
124
139
127
87
138
171
86
169
136
131
105
92
69
56
131
91
98
93
75
126
138
58
91
100
123
152
79
128
93
69
107
95
126
110
69
105
127
128
92
122
55
84
103
164
95
92
109
55
110
37
177
104
92
101
55
126
37
132
126
105
89
110
77
126
144
86
137
126
180
146
92
55
104
108
104
162
95
67
89
126
188
140
69
69
138
105
56
37
55
138
84
152
138
92
58
111
92
104
55
178
92
105
122
95
127
92
93
110
110
114
136
100
94
122
55
122
160
97
119
103
147
138
138
124
139
122
122
127
75
92
138
97
139
74
74
128
126
126
67
104
105
134
179
160
105
108
126
56
107
139
126
169
74
122
93
115
93
67
37
92
67
58
92
69
86
77
154
109
144
178
148
126
92
86
107
93
132
56
99
58
74
138
104
168
97
97
124
122
178
77
138
180
127
144
105
86
92
144
148
86
122
110
115
102
127
92
110
107
74
139
89
89
55
103
126
96
56
74
97
163
98
121
105
111
92
138
105
123
67
111
86
110
112
92
122
99
160
162
55
110
98
109
134
144
160
103
144
129
146
138
110
89
67
100
97
188
98
55
138
124
138
55
93
110
100
109
79
119
126
122
114
101
74
105
139
92
142
138
92
104
122
91
92
122
126
152
110
139
58
92
123
58
114
93
55
169
86
67
165
112
102
108
126
147
146
138
122
178
127
68
93
127
86
55
127
158
71
138
92
56
158
91
93
95
169
92
86
92
178
127
92
140
97
139
93
55
37
92
65
138
180
122
180
110
119
110
164
92
92
99
136
58
112
104
58
55
93
179
92
107
160
134
84
56
101
126
117
117
178
117
55
124
152
127
146
136
115
105
126
68
93
107
37
64
89
128
77
144
146
92
149
144
93
124
111
163
58
146
92
69
130
55
92
110
80
122
103
122
58
71
135
75
67
97
110
92
83
144
67
181
140
67
92
55
122
97
138
107
126
97
109
126
100
92
138
102
55
55
97
68
92
128
126
138
75
139
121
131
92
105
55
164
114
134
93
104
67
110
123
108
99
77
81
104
67
178
131
97
74
110
92
139
139
119
136
178
68
97
139
137
101
119
122
98
137
130
120
99
105
92
103
119
93
55
126
109
91
148
150
105
146
138
125
122
110
121
104
138
104
165
111
67
126
163
55
126
55
92
127
99
122
104
79
55
92
138
110
92
123
108
139
126
105
88
112
92
83
127
168
92
141
126
56
91
136
92
102
128
69
112
169
67
111
75
92
103
58
67
142
104
79
158
126
104
93
55
178
97
122
92
83
68
67
83
137
110
162
126
138
89
122
37
55
106
104
138
58
55
122
136
110
127
110
128
37
55
93
122
80
122
127
122
67
79
169
119
178
139
55
55
114
169
105
139
107
91
55
104
138
178
105
69
146
92
134
67
103
91
152
86
107
123
110
74
121
152
93
126
109
122
91
74
106
111
107
138
110
55
158
58
83
69
139
103
105
92
105
99
101
104
144
146
58
188
126
115
162
142
128
163
111
79
119
104
122
77
105
83
124
134
105
138
75
144
138
122
83
77
100
119
118
86
138
138
92
111
124
105
81
139
98
110
109
110
123
126
106
128
69
104
122
128
99
55
127
56
55
144
101
144
163
58
146
93
165
84
74
91
93
144
67
145
74
89
88
111
111
178
69
91
69
128
95
146
144
133
96
160
77
92
92
92
55
110
119
103
81
89
108
55
134
81
138
140
98
56
139
56
99
126
141
140
55
199
92
118
171
169
92
111
104
137
87
109
55
178
86
126
126
76
122
41
130
122
92
139
67
137
144
111
55
119
37
93
61
134
104
138
110
127
123
146
92
93
104
169
56
55
144
55
91
92
178
69
110
74
69
68
124
56
67
128
138
126
148
129
67
158
168
104
131
79
92
138
92
92
91
122
93
67
92
123
110
180
144
138
139
55
129
55
37
128
112
144
178
56
92
139
110
58
138
92
134
146
97
105
126
67
103
86
138
92
92
99
139
109
56
140
139
92
89
92
99
103
92
102
144
146
37
138
69
37
67
123
55
80
110
110
87
123
123
122
92
69
127
122
104
99
164
92
178
88
104
122
99
92
92
103
92
178
105
86
139
92
93
119
99
97
128
130
122
148
122
152
137
110
104
104
122
69
128
178
122
134
93
103
56
95
92
109
139
92
144
146
178
140
74
138
110
131
95
86
127
144
99
109
144
67
164
102
146
126
110
75
84
138
128
92
41
79
122
93
79
145
122
55
105
55
58
146
97
92
105
110
103
93
108
158
92
91
74
74
115
122
56
56
106
106
102
110
104
92
92
92
109
146
56
138
146
91
121
122
138
99
152
74
111
160
115
178
56
55
140
101
110
55
126
138
110
126
55
128
126
67
138
58
55
92
55
127
58
118
137
92
110
138
56
86
128
114
77
67
112
84
118
58
74
79
104
84
140
163
95
135
124
126
55
111
138
92
138
84
112
104
55
126
144
167
55
137
128
134
169
58
127
92
138
74
92
92
93
127
110
138
88
152
84
180
55
148
97
67
114
144
37
92
79
123
55
86
105
139
78
93
105
139
99
102
117
105
138
119
75
123
69
84
92
122
144
160
67
69
138
138
126
147
126
74
56
117
127
69
128
69
98
180
126
93
92
103
37
127
95
91
122
104
114
111
137
109
114
93
67
162
111
92
56
93
128
78
123
111
127
67
93
84
141
119
55
169
113
91
165
108
93
117
128
92
144
126
77
110
91
126
192
79
83
136
119
102
58
93
100
97
105
134
110
110
94
92
99
110
180
67
122
83
122
152
92
95
92
110
69
64
95
105
84
127
103
142
110
148
124
110
138
105
132
108
180
127
92
180
56
97
140
93
103
105
91
110
165
101
104
69
110
103
111
119
126
93
126
130
79
99
79
55
109
146
139
111
92
110
138
95
58
92
56
144
92
56
142
77
169
144
67
128
123
122
93
86
95
122
134
56
122
56
118
79
163
105
58
110
152
100
130
150
119
37
58
164
109
124
107
105
146
100
119
140
100
92
110
106
123
104
79
99
67
111
178
58
136
99
145
128
110
138
41
104
79
112
105
169
131
122
75
69
110
98
91
110
104
126
138
55
119
112
107
77
131
130
93
109
119
79
124
93
75
109
83
104
86
126
75
148
130
146
55
177
122
58
138
55
93
109
84
75
146
94
105
122
37
104
101
131
55
55
93
92
100
81
92
67
136
69
56
122
108
79
101
109
67
144
138
114
111
77
75
114
118
105
89
67
110
55
119
122
104
126
111
37
83
169
127
92
127
119
105
105
86
106
79
104
152
67
156
58
77
110
105
99
122
67
92
146
79
139
74
107
178
122
84
84
134
84
128
99
93
92
131
148
67
58
147
134
152
93
109
97
93
110
110
91
55
93
93
55
86
146
144
92
105
145
178
146
131
105
123
56
92
139
67
138
93
134
169
37
93
164
138
91
58
93
180
115
139
144
37
92
123
67
139
69
112
139
164
100
67
110
138
98
91
110
110
99
134
119
67
58
86
128
112
98
86
134
92
110
105
93
92
146
106
140
93
127
109
84
110
79
78
117
94
146
104
138
78
92
75
128
169
58
104
110
127
122
105
92
110
56
122
93
78
158
126
67
69
74
67
152
123
119
103
93
110
130
67
123
67
122
122
119
58
75
126
101
92
86
110
105
97
152
122
130
55
69
139
37
111
56
110
69
77
178
146
56
92
105
56
86
119
106
152
146
92
114
122
95
146
169
92
86
97
67
138
178
110
145
132
75
97
58
178
92
58
55
125
111
128
67
134
138
110
56
178
99
139
67
92
79
58
37
111
109
178
37
91
105
124
111
104
91
55
83
128
122
99
105
127
105
128
128
105
37
128
112
126
123
139
83
126
127
92
55
132
123
104
103
139
105
105
37
74
110
93
122
102
78
92
139
106
102
55
72
126
122
69
86
144
93
37
110
112
146
100
126
122
68
169
126
126
111
56
106
126
134
109
114
117
152
93
144
74
138
138
104
102
122
138
119
93
110
108
105
126
89
92
56
37
119
79
97
124
101
122
94
92
136
118
79
104
86
58
152
105
86
111
88
105
103
55
145
89
99
58
119
104
56
74
92
124
126
103
92
58
114
148
127
92
122
105
179
118
93
119
109
93
84
127
145
103
55
178
77
93
152
67
123
138
86
122
123
105
74
55
37
112
86
178
122
92
110
138
168
67
92
74
147
144
104
109
105
110
79
120
122
92
122
110
110
93
118
79
94
69
56
169
92
119
168
110
146
111
93
152
118
126
122
93
110
138
130
139
92
128
86
104
37
110
127
138
132
178
138
126
86
91
122
83
152
103
92
105
126
128
92
77
79
56
92
104
96
37
91
104
37
178
92
84
122
92
122
74
122
142
102
92
132
58
80
171
74
56
110
55
92
92
140
107
89
152
171
124
92
69
136
74
92
67
178
69
130
114
124
94
146
144
125
56
139
67
97
101
67
56
78
79
144
67
77
168
105
37
120
178
68
146
79
127
130
127
171
138
138
105
131
122
122
110
79
126
69
123
110
104
67
93
58
56
129
79
144
93
169
104
99
109
126
108
103
110
139
169
132
55
37
92
114
106
178
134
93
92
125
56
104
110
104
180
146
152
101
122
132
163
137
55
107
180
119
138
129
86
144
86
104
92
139
122
126
56
110
69
79
97
106
67
131
127
138
93
123
110
163
105
92
137
119
89
58
178
69
105
110
110
138
74
79
91
107
139
148
104
105
178
160
165
96
118
137
122
134
104
138
140
74
81
75
91
67
67
103
126
144
93
103
58
104
55
105
122
107
58
58
104
93
74
75
109
74
147
140
79
92
122
104
138
144
97
119
115
67
122
91
74
128
101
92
92
110
92
169
123
94
78
132
92
128
55
105
124
37
146
67
130
37
105
118
146
105
67
124
69
126
75
126
58
75
156
178
92
69
162
93
74
122
171
178
109
126
105
93
105
146
55
126
122
131
123
169
122
97
136
106
126
141
128
79
58
92
92
152
138
92
110
119
104
92
110
93
68
58
135
67
111
178
67
145
104
67
111
105
128
84
126
99
67
134
77
104
67
67
138
74
92
92
91
124
56
188
162
67
67
122
92
81
110
56
152
124
122
138
146
55
103
97
98
55
110
79
91
104
105
72
105
152
92
86
93
127
152
169
138
92
126
178
67
138
79
93
103
109
92
84
92
122
107
83
37
126
67
56
111
92
122
138
88
107
89
103
112
105
131
119
110
138
105
123
92
79
169
92
79
122
182
92
148
126
139
126
104
110
134
178
122
92
106
126
56
109
135
56
169
138
69
99
108
110
104
148
123
79
105
55
67
56
138
55
142
110
162
104
142
67
134
58
128
103
91
55
74
56
110
55
165
91
67
114
109
92
86
138
126
92
128
92
92
111
148
103
138
92
110
84
93
103
77
146
97
92
83
122
138
138
127
86
92
55
138
126
75
126
58
143
67
98
92
152
126
103
144
105
127
121
92
56
92
92
68
107
152
126
120
160
56
122
195
104
168
84
55
110
93
75
79
92
122
104
110
92
138
107
158
126
84
96
137
138
91
135
138
137
75
138
124
127
126
69
138
132
92
158
119
107
55
83
139
69
123
126
37
107
105
37
83
138
123
102
130
111
110
105
55
84
132
134
95
99
108
55
56
121
105
119
110
92
92
124
127
109
56
56
92
92
55
126
167
87
126
86
122
126
86
122
123
106
92
92
152
105
79
67
165
152
128
122
105
124
122
79
104
58
77
138
134
104
130
127
92
110
58
104
110
106
131
119
167
139
114
55
128
146
92
139
119
77
160
127
58
122
152
56
81
67
122
130
105
139
93
171
138
110
178
139
131
139
137
91
37
126
122
56
126
122
37
92
92
92
110
138
118
136
110
55
101
92
138
100
58
92
79
140
138
131
74
81
92
75
110
86
104
58
94
55
105
98
104
127
122
122
37
144
93
93
128
56
122
92
138
144
109
68
178
127
104
89
105
138
92
93
91
105
67
67
110
109
80
138
126
100
126
105
129
58
105
105
134
169
122
139
55
107
80
124
105
92
104
67
127
55
92
91
55
119
122
178
138
128
77
144
77
138
140
91
140
105
101
131
124
138
79
118
144
110
55
171
107
67
117
103
105
104
132
86
140
105
107
111
108
110
180
122
126
83
148
158
126
138
129
109
107
58
180
112
148
138
137
69
127
110
152
134
56
158
126
103
126
110
110
122
128
68
100
126
81
139
55
108
119
55
55
74
138
74
104
68
127
110
115
138
107
56
69
168
105
109
55
138
78
117
56
93
126
127
86
103
94
55
97
69
93
128
77
105
122
83
95
67
92
178
110
178
107
138
56
122
75
103
152
79
124
118
126
178
55
127
67
104
104
138
146
146
105
127
55
83
55
95
69
105
126
182
69
123
139
100
122
92
74
55
123
138
109
77
68
107
67
92
73
75
81
132
99
126
109
140
58
144
92
37
91
122
91
105
67
119
91
92
58
138
149
105
37
112
104
138
111
75
163
139
92
180
137
92
111
122
92
67
178
92
55
86
167
126
58
119
128
105
110
98
87
122
103
93
110
55
105
81
103
127
92
163
110
139
56
169
110
67
58
139
56
104
152
127
123
110
69
169
76
109
130
110
119
110
79
128
92
98
139
145
92
110
122
55
92
75
134
169
134
130
37
58
92
58
134
74
103
55
109
68
67
69
67
168
74
69
93
160
192
91
92
109
122
56
58
55
67
178
92
110
56
122
128
126
91
104
167
55
119
92
121
134
58
110
69
104
79
55
140
122
67
105
139
37
164
123
68
126
92
146
114
104
92
99
152
84
67
89
135
140
80
84
149
137
169
111
101
128
122
110
79
126
138
75
79
123
121
158
139
138
67
58
86
55
119
92
135
67
111
148
119
128
107
84
138
105
75
93
117
104
104
98
110
56
138
169
86
86
109
79
67
105
130
86
75
110
138
169
169
77
162
139
122
92
126
130
140
148
141
122
86
86
105
140
144
101
103
111
76
55
67
112
132
69
56
67
151
72
74
152
136
67
56
95
79
138
99
124
84
67
92
169
123
58
56
106
56
122
72
56
105
92
139
92
77
138
103
123
112
122
95
158
110
93
99
67
144
119
171
102
86
112
178
126
64
67
58
74
72
146
169
86
77
92
67
58
121
58
67
109
97
100
58
163
134
105
122
152
122
58
122
104
113
92
122
100
132
126
92
67
169
122
128
138
92
89
117
58
69
158
58
119
137
92
122
86
84
127
56
55
92
55
69
93
69
107
77
104
93
126
124
104
131
67
171
126
84
153
138
119
55
56
83
130
110
89
92
55
56
146
131
98
136
103
105
122
97
56
136
69
86
37
105
178
74
92
104
138
67
178
56
126
69
132
55
107
135
111
55
110
74
55
55
119
55
105
167
72
178
152
152
127
123
55
97
119
145
158
113
56
107
105
79
92
100
92
117
122
83
112
123
105
146
55
99
69
93
79
75
67
93
91
122
142
92
77
92
105
158
92
122
67
75
84
140
55
140
122
137
56
104
103
79
126
122
149
122
105
102
148
92
98
117
100
75
169
105
91
119
93
105
68
126
97
128
110
142
119
110
160
91
79
75
92
58
128
68
105
139
55
77
106
86
122
122
122
104
105
83
110
55
140
37
58
55
37
92
112
92
139
93
138
169
107
124
103
138
122
58
180
127
131
144
122
126
99
69
128
67
131
86
145
103
139
55
92
126
104
105
179
178
126
75
111
126
144
109
122
119
152
152
105
58
101
105
69
68
146
126
103
163
107
136
143
93
127
37
93
112
86
105
171
37
37
67
130
92
84
148
110
109
110
144
109
103
55
105
83
144
99
148
128
126
104
110
126
92
105
128
98
122
138
77
111
178
144
119
103
92
98
55
111
137
89
126
148
93
100
93
148
110
146
169
126
67
110
84
55
117
110
104
37
152
107
92
112
58
55
110
131
126
55
92
93
83
104
55
128
100
55
77
122
67
91
75
91
128
140
141
110
138
111
122
105
105
139
116
77
169
146
92
107
124
138
92
112
140
107
93
112
158
68
144
37
127
122
137
131
131
138
144
178
83
163
93
58
128
69
146
117
107
134
130
137
152
135
86
56
104
119
128
138
148
76
86
163
124
106
114
114
100
109
178
37
104
114
92
128
104
119
110
144
67
58
110
105
105
126
111
104
102
122
104
74
138
126
109
55
121
74
92
86
69
139
126
67
69
130
162
105
104
167
127
126
119
105
104
103
67
122
138
138
55
75
37
98
105
105
92
104
100
103
55
138
37
92
94
129
178
144
178
120
55
77
86
99
132
136
93
92
58
122
138
120
110
178
99
118
103
138
75
169
92
77
94
122
144
126
68
99
171
55
104
56
123
127
79
127
123
92
110
110
130
56
110
163
55
56
92
104
139
67
83
99
56
126
91
69
100
67
81
92
92
126
104
92
58
178
118
110
108
37
55
127
105
77
178
105
139
178
168
129
77
55
99
58
124
127
69
167
160
127
78
83
58
83
126
106
126
138
117
127
122
171
138
83
77
163
146
68
110
178
55
122
138
104
115
139
146
104
110
110
126
81
77
92
67
56
77
67
79
144
93
107
92
159
126
178
138
55
56
145
86
139
58
75
132
110
55
126
120
98
112
139
124
124
139
112
88
111
86
114
102
55
104
92
110
122
37
92
168
93
77
69
123
67
105
130
75
148
122
37
134
140
123
105
80
178
130
96
169
106
171
109
74
92
58
121
93
69
93
77
111
149
91
146
55
103
92
67
67
109
124
105
95
144
58
92
101
160
138
178
119
91
99
103
126
123
56
92
158
178
122
105
104
104
101
79
58
67
131
86
111
127
86
128
91
163
168
67
69
55
37
91
119
107
128
91
123
127
110
122
126
122
104
122
89
37
111
178
55
109
101
138
110
111
67
144
67
110
110
86
126
86
113
55
138
68
127
56
138
83
182
74
121
139
75
114
126
122
92
104
37
138
131
124
129
67
138
134
178
144
152
104
92
137
55
128
146
137
97
67
101
104
114
123
117
93
139
131
79
56
115
142
107
128
88
109
99
105
118
147
126
104
123
144
138
164
108
93
122
92
122
105
105
93
122
164
98
89
97
123
68
77
92
58
126
126
92
115
124
131
180
75
107
92
119
128
112
93
122
91
37
92
178
152
55
169
110
117
92
92
127
56
169
56
110
126
77
89
99
92
139
58
111
127
101
95
126
37
78
112
77
139
105
110
55
110
78
104
92
128
58
146
122
110
117
132
127
105
139
94
92
75
67
92
55
138
103
140
92
92
37
115
119
107
99
74
67
109
91
55
117
146
92
104
138
169
118
69
146
158
92
146
58
109
123
126
110
152
104
152
110
92
37
74
126
115
93
84
120
97
77
77
55
97
145
149
108
110
112
58
122
160
91
56
144
55
83
55
115
128
93
37
37
109
111
56
92
83
86
106
114
138
148
55
91
111
69
55
163
83
92
113
77
83
146
111
93
158
152
138
74
139
99
130
132
83
123
128
55
122
55
134
56
146
127
138
79
146
138
37
128
83
140
83
55
123
138
79
149
55
107
55
165
138
98
111
100
138
93
56
146
100
146
122
108
91
122
102
56
127
160
67
56
93
180
124
120
92
100
58
126
114
58
106
148
128
37
67
84
92
111
141
101
92
122
128
122
107
145
97
112
92
92
91
164
126
55
112
92
123
163
93
105
91
128
169
138
100
152
122
152
110
115
103
138
55
58
55
93
92
92
107
68
131
128
55
111
111
67
37
81
117
144
112
95
69
123
120
93
56
68
111
128
78
56
37
102
107
37
110
138
84
152
56
128
67
98
110
67
86
107
80
105
106
126
67
111
106
56
95
55
138
128
93
123
123
124
107
122
146
122
86
99
126
110
55
37
178
152
126
122
126
37
126
86
92
138
73
122
168
93
71
127
93
55
132
140
93
169
55
118
128
56
67
178
103
84
69
81
127
74
114
140
126
67
139
72
55
110
55
146
126
92
67
127
128
103
115
105
126
132
129
77
91
67
138
58
75
55
101
126
55
58
102
119
101
122
148
107
58
75
84
80
178
80
84
58
128
93
134
92
79
122
122
138
138
98
140
55
74
86
91
67
92
152
107
110
126
138
98
75
37
105
92
138
126
109
97
55
105
69
91
160
138
100
132
105
138
58
56
99
122
58
126
104
55
144
37
55
92
126
107
152
58
58
119
105
126
67
110
97
92
163
79
158
84
152
121
86
132
130
109
55
147
67
119
139
56
56
128
123
103
105
105
109
112
115
93
178
127
124
152
106
56
139
122
144
110
138
107
112
165
79
92
93
99
138
111
93
178
126
83
105
119
91
152
128
58
75
86
93
145
127
56
80
93
92
122
75
134
67
67
86
151
120
58
84
126
171
69
56
134
139
56
108
144
81
138
104
180
162
58
93
79
110
146
127
97
152
97
56
110
107
92
138
108
55
67
110
124
101
123
91
55
55
86
148
92
112
169
110
58
126
165
122
92
105
110
105
126
119
122
74
169
126
134
110
67
105
116
122
139
110
67
93
93
119
93
169
110
122
84
75
37
122
180
152
152
92
110
169
67
169
92
105
178
67
109
92
138
100
55
92
74
122
126
83
86
122
169
148
138
92
92
83
99
105
67
91
92
138
110
128
138
110
116
122
128
83
75
77
109
67
91
77
126
58
84
110
79
92
99
67
114
105
100
107
127
109
92
55
105
77
135
58
92
93
69
146
97
69
105
160
64
171
171
158
169
112
77
74
99
99
103
71
122
93
91
158
144
58
104
122
105
106
107
110
130
110
105
103
110
110
139
92
126
138
98
55
79
91
102
74
92
55
109
77
75
169
138
112
92
134
92
77
138
110
126
110
106
110
145
67
55
91
128
138
56
138
93
110
104
126
124
110
138
126
119
55
58
100
91
126
37
89
132
122
135
119
165
148
138
109
37
104
93
104
37
110
93
122
122
124
126
68
67
123
152
105
111
139
74
83
55
146
92
146
138
139
97
77
92
92
105
137
92
131
126
109
119
139
104
58
122
126
122
124
92
92
160
110
123
74
55
134
128
105
137
118
37
89
138
86
165
105
86
126
67
99
104
56
138
118
169
107
126
178
111
132
93
105
98
55
68
111
56
93
138
169
69
126
137
88
178
55
58
123
140
127
37
178
105
104
178
93
105
111
86
79
104
130
92
92
127
107
79
142
101
104
58
109
160
126
91
110
58
37
152
37
139
88
55
77
122
118
134
104
139
126
58
122
138
122
55
91
74
104
122
56
77
97
75
95
93
171
103
104
107
121
111
151
99
85
110
55
110
55
68
169
122
135
93
77
138
58
105
131
96
117
142
126
106
105
119
126
37
122
138
123
56
92
138
55
58
97
74
134
37
69
87
121
55
178
92
138
126
127
92
84
104
92
83
37
111
122
78
134
67
132
56
126
93
127
138
126
112
97
126
139
73
158
105
69
134
105
110
79
122
121
195
146
168
122
55
118
55
127
55
74
110
100
105
129
88
55
91
92
109
122
112
169
122
99
109
110
77
97
139
99
140
169
122
75
135
126
56
100
122
168
127
91
58
99
95
126
58
152
55
125
110
127
104
118
163
97
92
105
67
141
178
92
93
126
140
112
93
104
118
56
91
128
67
105
107
122
156
68
37
58
89
118
75
118
79
120
132
58
138
119
117
55
56
75
111
132
102
105
109
109
58
122
88
163
92
92
122
75
56
92
127
140
103
152
110
92
111
104
92
67
92
105
98
136
126
105
142
110
171
169
109
110
37
165
109
109
139
92
169
127
122
142
105
56
105
131
79
37
146
128
119
128
119
122
122
98
86
75
126
110
37
124
119
67
104
56
139
122
102
122
108
56
55
110
104
56
104
55
169
131
189
67
92
111
131
83
105
103
110
188
69
91
122
114
144
92
92
126
37
169
128
130
37
107
169
127
138
107
55
110
119
111
131
67
122
104
178
92
58
122
127
104
105
91
86
92
58
139
152
131
122
105
126
56
104
128
100
55
110
122
79
171
110
98
126
117
75
122
118
127
75
110
177
105
105
56
92
146
58
67
67
104
127
79
122
61
58
114
109
55
138
126
56
81
130
138
68
92
56
95
69
105
122
178
80
74
76
128
128
109
113
113
93
104
55
125
77
152
37
55
104
105
92
86
79
93
92
162
92
67
132
122
192
171
92
107
111
114
169
92
67
105
110
99
122
127
56
144
139
110
92
126
110
104
92
122
111
103
109
100
81
146
162
37
74
87
93
105
148
139
105
104
178
110
121
126
118
138
178
131
92
37
106
135
160
127
122
141
144
55
92
56
115
86
127
105
105
148
55
148
55
98
92
178
163
122
152
88
98
111
178
99
126
67
67
138
75
107
111
55
138
138
104
126
119
138
55
78
92
152
169
79
119
146
55
56
104
126
37
110
105
97
112
122
178
78
58
74
86
79
114
107
178
92
56
119
139
55
124
101
84
55
127
123
97
55
92
86
77
111
135
110
180
131
168
98
122
126
119
93
105
128
178
93
138
122
127
69
104
86
127
139
119
117
106
139
141
72
58
97
146
83
122
119
77
110
132
67
74
107
92
152
89
126
152
158
103
107
92
110
56
144
79
127
100
138
119
77
146
140
178
77
138
97
86
178
128
86
89
92
132
55
110
69
146
146
122
79
99
111
178
128
132
105
105
127
152
122
128
83
110
146
132
126
55
131
55
110
101
92
111
110
138
68
68
110
58
139
128
104
132
105
123
138
105
103
160
134
67
138
109
146
119
79
92
110
37
109
144
77
92
122
152
140
58
93
109
37
67
105
122
58
122
140
67
97
138
147
67
152
139
123
37
110
68
91
119
162
107
178
164
110
111
88
88
105
136
138
139
122
55
152
138
103
77
110
93
55
55
126
93
110
122
79
105
122
110
74
137
92
56
55
92
146
92
138
95
118
124
99
126
105
122
67
92
55
127
134
138
126
127
104
104
58
128
180
127
111
105
134
117
81
137
136
103
125
105
69
110
148
109
158
178
58
87
139
56
130
104
93
137
92
108
119
121
127
104
122
122
127
138
178
139
92
126
122
104
92
37
92
79
93
126
75
130
139
130
152
96
75
110
67
148
124
56
114
112
105
104
167
132
105
99
110
79
92
92
109
77
92
121
69
119
110
139
77
105
55
110
146
92
86
127
119
83
56
122
92
55
74
95
92
92
79
83
128
136
110
110
107
67
93
37
58
92
84
83
110
86
69
93
121
169
114
55
108
138
75
97
77
127
104
105
114
101
146
93
55
152
169
104
79
128
37
99
86
56
55
122
58
107
37
56
92
142
139
74
139
107
78
67
171
144
162
83
130
91
67
122
88
140
104
86
86
138
105
55
123
55
86
102
119
152
137
127
110
131
122
91
144
56
122
123
111
93
86
123
106
139
180
67
139
117
101
124
114
56
102
79
79
92
144
144
126
135
105
160
55
139
56
136
99
56
92
55
55
105
55
105
37
55
138
92
122
74
164
92
110
146
148
124
130
137
160
124
67
127
123
55
169
109
92
119
152
78
112
117
139
104
132
37
168
78
104
171
56
92
128
67
93
140
128
120
69
111
72
107
110
55
110
114
68
126
79
105
152
178
55
69
81
86
131
69
37
152
112
128
160
112
99
130
146
94
99
122
136
92
122
146
55
138
61
111
93
67
110
55
160
122
91
122
55
67
107
160
67
128
123
132
55
77
111
110
139
55
67
179
169
86
180
123
129
92
67
122
138
92
93
106
107
104
169
105
127
93
93
97
98
104
182
146
104
103
37
119
178
151
109
110
128
55
104
105
167
119
132
92
104
122
146
91
146
92
93
122
68
109
104
138
169
37
142
122
110
105
139
125
67
138
138
178
56
55
89
79
92
110
56
126
140
144
126
104
84
105
56
58
156
122
110
101
55
119
146
93
131
56
136
126
93
126
92
163
119
103
37
69
104
69
124
104
125
102
93
95
104
108
67
162
144
91
122
104
105
178
89
104
134
91
131
139
41
91
92
58
92
55
55
79
91
132
152
99
138
110
135
139
101
111
138
162
127
152
180
110
126
141
132
117
110
145
93
58
56
126
108
114
104
98
156
178
128
130
122
129
132
127
92
114
67
108
126
122
104
178
110
93
131
55
122
100
164
126
67
67
79
136
112
178
110
122
164
111
110
95
110
124
93
74
78
97
99
126
145
126
109
123
92
67
93
109
67
140
103
67
135
92
123
110
83
55
92
105
104
124
67
58
104
110
68
55
127
99
132
110
75
67
152
140
130
92
134
110
110
128
93
92
55
125
111
126
37
122
122
107
93
139
178
110
68
122
93
123
144
92
178
128
88
178
56
97
128
37
77
56
101
178
113
131
101
105
126
124
124
122
61
104
119
76
55
67
178
94
68
56
128
55
138
55
146
112
84
121
126
122
128
119
93
58
104
165
93
121
121
74
56
69
92
129
152
163
128
92
140
86
93
122
121
152
55
110
122
125
92
109
128
56
146
157
105
105
146
92
199
55
123
138
83
122
67
138
93
104
131
127
112
92
144
138
113
105
77
197
135
108
56
120
107
122
146
110
180
107
79
137
69
100
167
180
134
37
128
112
167
37
148
139
146
111
105
58
37
126
128
180
69
122
127
169
67
56
126
119
178
122
152
110
134
142
92
55
149
75
137
180
111
140
136
84
114
128
91
114
55
119
105
104
178
115
87
110
178
93
139
130
140
139
115
178
74
109
93
55
108
109
67
128
134
55
122
56
145
119
56
104
79
55
105
105
104
58
105
131
74
92
171
37
138
138
74
104
103
104
55
55
56
69
114
146
107
148
167
109
69
124
86
122
56
128
134
75
55
138
117
142
68
93
128
123
56
152
110
83
144
83
73
156
86
197
107
105
107
135
118
92
138
138
134
102
178
163
86
119
109
107
55
105
104
146
56
92
163
126
111
109
122
131
37
92
104
122
93
77
103
92
169
107
75
103
74
92
123
67
37
96
110
148
110
98
122
92
69
158
92
87
86
158
91
37
126
144
55
122
140
138
144
69
83
67
111
55
112
92
123
56
122
122
182
101
152
92
139
118
139
92
105
93
86
110
117
122
122
134
77
89
122
110
101
118
107
67
55
105
146
119
110
122
124
74
126
94
178
67
106
140
152
92
122
118
126
111
168
99
100
135
102
77
56
76
110
105
126
104
122
145
123
162
81
92
148
144
75
89
67
118
67
104
124
138
92
178
126
55
111
92
146
128
100
75
159
112
109
78
101
110
119
146
74
111
84
134
110
123
92
140
92
123
87
138
92
92
152
136
122
101
122
152
92
86
67
84
152
98
101
77
130
132
92
117
152
122
169
105
118
109
104
92
105
77
93
152
67
111
122
134
110
140
110
92
99
138
79
108
94
92
55
112
100
99
111
86
92
134
68
86
132
109
75
122
146
109
158
67
105
68
105
91
89
74
69
162
89
108
110
92
92
178
129
109
146
58
83
92
69
69
110
110
92
122
152
139
120
139
58
122
92
148
107
58
58
104
37
123
144
109
110
91
77
104
110
188
122
74
107
148
92
123
138
134
94
37
67
171
122
171
37
69
77
55
148
139
67
88
92
91
93
138
130
146
74
55
158
169
89
79
119
103
167
171
109
119
122
128
158
93
126
110
92
91
127
128
93
55
105
119
92
56
69
129
144
126
144
106
37
55
92
127
55
178
125
55
104
123
103
144
77
55
126
124
58
119
105
69
146
75
69
74
56
107
102
152
131
78
107
131
55
128
107
91
105
104
146
92
110
91
152
104
92
105
79
92
92
189
56
91
139
55
137
67
92
123
178
56
55
55
120
55
93
86
138
178
144
118
127
78
74
73
91
110
56
85
92
122
178
101
81
86
152
120
122
169
109
69
92
74
67
122
83
92
122
111
55
135
98
92
118
104
124
107
124
127
99
139
171
115
104
122
110
67
67
130
122
123
111
111
92
123
58
55
105
56
139
105
97
55
126
149
110
109
105
105
103
89
104
148
110
127
67
108
92
108
128
134
79
123
67
77
58
92
93
93
91
103
178
55
126
126
142
110
104
139
123
91
178
92
99
127
171
146
56
73
110
105
79
139
127
92
118
110
93
97
76
105
122
92
98
105
126
126
106
118
178
92
109
99
103
111
105
169
67
178
110
109
92
160
110
68
86
87
81
152
91
162
114
138
84
115
129
92
105
128
55
139
55
139
104
148
114
132
119
74
138
93
55
127
58
128
104
92
144
145
138
122
139
79
110
128
126
55
146
124
67
92
91
163
37
138
139
56
91
163
67
152
160
67
128
126
141
110
130
92
126
146
86
55
105
128
105
78
132
105
158
92
139
122
138
122
130
55
128
77
122
67
122
77
55
110
138
140
104
67
107
79
107
146
110
92
110
93
122
105
98
109
126
178
91
92
67
139
111
86
79
122
74
55
142
56
119
57
178
110
56
105
131
92
110
56
92
99
180
146
68
178
139
167
169
123
139
144
109
89
122
92
144
98
83
92
124
92
138
74
126
65
109
100
132
37
146
110
111
86
126
79
103
117
67
128
69
103
168
109
67
128
132
79
135
91
152
110
106
37
83
69
152
122
139
55
107
126
93
114
158
55
67
102
92
58
126
126
55
100
55
125
146
103
135
199
107
92
55
68
73
98
126
92
124
137
122
168
67
127
55
92
37
91
86
55
75
126
107
110
93
111
128
58
99
86
93
93
111
134
107
171
92
67
134
138
93
109
79
120
75
79
58
104
171
58
139
74
105
67
92
67
99
92
86
74
158
92
104
77
68
92
67
149
122
83
102
128
126
146
74
105
58
122
126
126
99
56
103
55
110
105
135
104
136
104
110
105
139
104
58
107
67
119
56
107
95
107
67
55
104
37
100
83
75
108
126
104
55
101
122
92
110
107
147
160
118
110
111
55
67
122
56
79
110
88
97
178
110
126
152
120
105
112
144
110
123
138
58
102
123
55
87
122
83
115
126
56
163
122
112
105
152
146
138
180
100
126
109
55
129
128
148
55
55
111
93
146
105
119
84
110
95
79
67
138
37
56
123
93
37
92
92
178
129
152
99
122
178
106
110
126
140
101
138
56
138
105
103
92
37
102
169
127
99
67
75
128
134
178
55
128
131
74
75
122
138
127
139
107
92
92
110
169
115
139
101
110
92
103
118
69
122
168
109
89
91
146
68
139
117
37
58
140
97
92
109
152
97
92
56
110
119
103
98
79
37
92
130
92
127
99
56
103
55
55
110
104
113
104
92
122
55
101
109
77
92
126
105
105
110
144
126
92
93
111
79
160
91
126
104
67
124
138
67
123
93
102
74
92
138
105
110
93
107
112
169
123
125
105
112
68
105
111
105
55
140
114
126
92
134
140
146
146
87
86
104
55
92
105
109
162
135
122
122
110
124
171
111
67
92
92
105
55
153
101
123
164
134
99
138
123
169
93
127
104
69
55
92
139
91
107
92
144
122
37
101
169
119
56
79
144
122
146
92
110
55
92
37
55
134
199
134
92
127
67
127
119
144
92
80
122
104
138
158
107
127
92
138
134
55
92
86
92
110
77
146
92
100
123
89
139
127
158
132
93
104
139
122
69
152
58
127
96
138
132
125
123
55
109
131
71
105
68
83
140
103
126
131
122
92
77
67
138
67
146
56
138
199
126
122
120
138
148
110
109
152
138
110
105
110
158
77
130
55
122
103
74
99
123
134
104
75
158
136
55
178
122
127
168
134
67
122
55
127
58
169
55
94
146
68
102
123
110
118
110
122
178
132
37
92
89
92
92
97
105
108
104
55
178
55
178
92
106
131
93
91
81
119
111
127
126
56
152
119
105
138
104
74
37
146
110
92
105
117
138
140
137
127
188
119
131
126
112
55
91
67
103
132
58
126
152
105
93
98
144
152
58
92
56
67
104
104
126
110
122
107
75
127
119
178
138
122
55
110
126
149
91
123
58
37
97
111
156
122
110
76
119
134
108
55
92
130
105
127
122
100
91
126
92
134
110
100
104
58
151
101
104
67
56
103
168
109
119
111
127
112
93
122
122
55
122
128
103
138
97
55
56
178
69
83
92
109
123
139
85
67
125
86
92
110
55
78
92
112
126
93
99
103
110
118
99
119
56
92
55
105
131
86
37
130
91
122
128
68
67
158
162
139
55
110
110
110
110
79
92
162
37
105
110
122
145
124
105
128
123
86
126
126
144
131
104
158
56
69
92
180
124
93
134
130
126
56
103
127
91
92
87
148
83
105
140
55
92
77
138
180
92
68
139
110
107
152
122
92
77
120
126
122
93
178
126
124
180
56
56
130
126
122
108
91
109
110
158
37
61
110
56
92
103
83
112
122
98
126
178
55
178
56
128
112
126
55
86
122
37
104
129
93
67
122
100
146
103
91
84
146
106
178
145
89
128
124
178
120
92
146
139
134
37
144
56
55
99
112
99
127
102
138
123
91
92
120
93
151
98
67
135
80
139
100
74
58
146
144
110
92
92
37
110
111
114
146
126
55
138
86
140
80
67
75
123
144
154
105
127
74
148
55
104
104
171
138
56
117
158
138
139
132
55
128
171
122
121
55
103
74
178
92
179
119
139
126
86
37
102
111
58
105
55
126
55
171
126
142
127
124
152
109
37
148
108
110
55
58
93
132
86
143
103
138
119
107
101
92
92
93
111
138
160
74
122
58
145
156
108
92
132
138
104
88
99
122
167
74
160
99
146
92
74
109
111
138
99
122
130
58
122
152
92
100
87
125
92
126
110
74
56
105
171
93
92
55
126
122
134
140
75
67
99
126
97
67
69
126
37
75
105
37
123
92
102
178
126
119
77
126
87
144
104
146
86
92
136
178
105
93
92
122
92
56
138
74
99
138
138
92
105
98
74
110
55
92
158
126
163
86
123
98
105
103
138
122
128
122
56
119
121
122
56
67
110
122
69
146
158
109
165
67
136
106
134
138
110
123
134
110
140
122
95
99
178
58
110
72
123
37
188
69
55
138
119
92
55
58
92
93
105
93
126
67
86
105
122
79
122
97
56
37
56
142
180
164
75
104
126
79
92
100
119
69
92
95
127
136
55
127
97
122
79
122
80
111
123
152
89
122
122
105
77
127
99
105
104
93
92
93
55
124
86
104
93
160
144
122
67
111
92
126
55
85
178
119
104
132
110
92
114
69
93
144
97
92
169
107
91
98
137
122
55
121
89
126
123
99
92
55
37
91
110
110
119
139
87
67
77
67
86
112
56
126
105
171
169
126
92
122
128
103
105
105
56
97
152
55
87
92
105
126
146
117
55
67
37
128
143
126
93
112
69
55
91
58
67
109
111
56
122
144
55
109
192
93
146
105
123
130
122
108
127
67
122
109
128
55
122
144
111
74
119
102
67
37
111
152
92
99
132
158
142
152
114
169
140
128
105
56
109
118
107
178
138
178
134
105
119
123
141
122
110
56
93
124
126
127
84
104
55
104
74
127
88
78
169
199
103
169
69
152
140
110
105
106
128
86
55
122
139
107
105
126
158
58
148
109
126
168
110
101
122
104
100
58
84
92
75
79
126
134
92
92
148
126
55
109
105
100
55
139
138
89
119
86
86
92
56
92
55
37
122
122
105
117
69
123
138
106
126
74
37
162
55
109
129
119
92
118
121
67
140
103
112
75
131
92
92
114
37
55
122
110
139
67
154
91
89
92
134
110
93
138
91
111
107
93
77
127
56
119
37
98
55
114
105
96
81
126
123
93
134
95
69
106
118
73
37
109
97
80
55
92
56
79
126
138
67
119
117
58
55
145
127
97
130
37
121
126
105
139
67
105
55
98
136
126
104
130
93
77
92
127
110
138
37
79
104
103
138
124
75
68
104
99
86
124
169
109
158
123
118
105
67
99
152
110
139
188
105
92
56
140
152
56
146
97
137
122
86
140
140
144
55
37
100
86
78
139
105
134
58
110
105
104
83
152
105
93
107
55
152
95
105
110
126
67
123
110
117
92
106
69
139
138
146
114
144
92
98
105
122
88
105
119
144
56
99
104
105
79
178
125
56
111
92
92
110
92
100
178
156
119
129
93
139
92
169
91
86
126
91
93
92
88
67
78
110
123
79
58
120
140
101
105
106
55
102
131
92
55
123
108
92
99
148
110
128
55
140
79
113
92
127
138
92
122
101
138
74
99
178
138
37
92
120
92
131
139
77
110
152
37
55
110
77
105
93
110
112
128
118
144
111
146
138
122
122
91
92
86
69
103
144
122
103
131
188
69
124
92
123
139
79
126
128
126
122
122
139
105
110
58
128
100
98
67
138
77
92
88
98
111
105
164
119
98
111
55
104
111
126
138
130
111
37
124
127
126
55
127
86
37
126
127
138
138
122
146
93
140
152
126
98
105
67
69
122
127
169
104
93
126
58
91
55
140
127
103
81
78
126
138
146
55
122
111
86
162
126
110
55
74
92
69
105
125
97
126
105
144
138
122
104
122
140
149
55
77
165
131
69
74
98
119
115
68
126
86
93
104
110
138
171
128
92
137
79
105
128
110
92
79
92
169
58
79
127
132
139
110
122
126
126
137
128
126
74
95
92
55
138
56
83
100
178
127
124
89
64
55
92
169
178
144
112
67
115
81
122
67
83
110
37
99
107
122
92
97
138
69
136
55
163
92
105
178
130
109
139
126
67
87
138
84
55
104
146
89
146
37
126
76
55
141
97
69
139
37
122
80
168
107
89
89
67
152
83
55
138
100
113
93
134
128
37
83
56
127
105
132
140
122
55
126
124
126
136
144
55
110
79
75
95
126
91
122
110
122
110
105
67
92
37
122
91
124
99
76
74
100
128
127
37
37
144
146
69
110
92
58
152
148
55
55
126
124
146
122
56
178
122
122
105
77
146
126
97
122
138
92
92
111
124
105
79
77
69
107
152
164
55
110
126
92
67
137
109
144
146
67
56
105
92
103
67
157
128
105
56
130
37
69
142
86
55
119
122
168
104
92
111
107
126
92
92
55
67
93
104
110
95
115
139
127
105
92
55
117
58
122
58
169
92
69
180
127
107
93
144
96
103
115
132
135
120
127
109
107
74
86
128
94
105
55
92
84
74
89
126
92
56
103
115
105
69
67
122
104
138
92
117
140
119
105
100
140
37
120
107
104
55
93
139
107
86
110
140
158
131
110
122
160
83
56
92
105
55
109
148
108
37
180
88
77
138
101
128
91
138
86
91
168
112
134
126
103
92
56
91
165
92
178
80
114
94
67
67
126
151
138
103
126
89
93
164
132
169
93
121
67
92
37
93
127
109
128
98
124
79
138
119
55
55
95
123
92
180
55
55
88
56
104
107
105
148
37
122
110
109
128
195
86
92
128
171
123
130
148
97
109
138
163
58
135
127
162
105
135
114
93
98
126
68
128
74
124
105
108
107
120
55
55
127
123
56
124
165
169
138
103
92
104
110
112
146
126
78
99
122
139
122
105
55
77
138
86
122
122
105
145
106
86
110
100
67
83
110
109
124
79
132
123
55
99
138
105
110
139
58
37
124
37
146
84
92
98
58
67
140
83
144
105
37
92
88
105
67
122
92
112
104
56
58
37
122
110
55
79
140
67
107
127
37
146
138
105
67
105
105
139
134
119
106
58
144
124
92
138
138
67
123
104
136
128
93
55
126
92
75
92
178
67
131
99
109
144
74
67
92
93
91
92
129
74
92
103
107
92
69
162
87
139
104
138
104
101
126
156
102
169
92
92
163
56
126
138
134
56
137
126
105
88
103
68
55
182
169
92
148
126
74
67
92
130
169
58
93
118
124
56
107
98
126
118
169
144
121
84
139
106
100
105
103
138
105
105
104
139
119
67
119
86
58
74
55
110
105
124
79
100
144
105
139
102
126
78
93
67
109
138
74
56
58
111
83
37
139
93
83
99
144
103
139
132
104
126
110
97
92
86
160
92
110
100
92
122
126
58
105
56
127
91
79
58
146
99
56
122
122
92
122
126
104
81
127
127
104
94
162
112
132
126
138
92
126
107
86
93
119
56
122
162
92
102
64
110
152
162
111
123
37
141
171
99
114
92
56
110
126
110
131
56
55
126
122
106
126
83
105
104
55
108
105
93
93
110
92
69
68
83
55
126
103
136
81
139
148
131
119
92
109
144
122
69
92
126
138
139
138
105
105
138
109
94
122
93
126
136
126
92
91
93
93
124
122
72
134
127
158
86
126
122
126
55
123
139
138
86
171
37
105
108
126
79
110
127
65
119
178
126
152
37
103
121
140
79
103
95
91
55
111
138
128
178
69
178
124
119
158
139
110
68
144
92
105
55
92
127
111
121
131
125
93
123
148
86
182
69
105
141
132
126
104
110
142
122
162
171
110
192
110
169
122
139
126
104
98
139
84
122
37
110
122
55
122
128
69
86
138
178
79
111
128
92
67
55
110
89
127
67
97
120
169
93
88
74
92
122
123
37
97
134
119
105
122
69
138
109
93
105
93
132
112
178
141
55
122
122
105
138
139
123
178
110
55
55
79
152
79
81
127
69
110
93
114
120
97
91
122
137
69
169
93
92
86
55
144
55
55
67
83
114
91
138
67
102
124
86
130
105
67
92
146
67
55
126
139
110
178
93
178
105
123
144
99
56
109
86
156
111
37
122
56
139
103
126
128
109
178
97
122
67
79
79
110
56
110
77
75
119
138
81
92
123
171
122
75
99
97
68
69
134
126
109
73
110
98
114
77
158
131
146
180
160
55
92
134
122
110
92
55
130
37
67
124
139
160
126
95
92
58
77
104
126
55
122
67
114
152
37
58
103
107
111
124
126
37
110
92
89
178
122
112
55
107
119
152
152
126
169
119
74
111
95
122
37
100
75
58
126
110
105
122
122
84
110
126
109
78
75
110
148
164
86
122
131
128
69
67
99
152
37
124
84
152
152
97
178
77
138
103
119
58
122
128
99
165
88
104
138
92
104
119
91
104
136
126
104
93
96
138
127
92
144
124
152
67
93
119
158
152
182
146
110
126
144
144
110
131
148
84
55
146
126
74
112
94
171
103
168
138
119
67
86
115
110
92
85
138
149
109
93
119
105
119
55
139
146
92
74
152
146
134
126
95
122
104
77
122
127
93
92
127
55
92
55
110
58
75
105
67
37
126
104
138
86
119
140
58
74
97
122
111
140
79
127
67
123
100
107
178
91
79
105
77
79
37
127
138
55
110
37
93
130
135
111
92
58
109
107
101
124
77
138
152
122
75
127
127
111
178
124
127
144
127
93
75
92
119
120
58
109
83
138
168
135
134
55
119
55
69
146
190
37
104
126
74
104
81
134
67
169
126
95
168
76
74
139
105
93
171
126
92
106
111
92
180
105
139
92
86
110
146
146
69
86
92
92
111
79
55
74
119
118
146
110
105
58
87
118
110
110
58
110
171
126
55
138
178
67
55
111
146
69
56
68
110
97
82
99
131
93
118
56
92
56
68
97
92
138
146
134
135
124
128
110
55
178
136
67
110
131
106
138
75
91
93
122
111
123
147
167
110
126
58
127
55
139
75
55
140
144
83
152
97
77
144
162
134
104
68
128
122
148
178
152
122
88
127
91
91
123
180
100
55
93
89
74
110
152
55
140
73
89
131
122
92
111
74
117
104
146
92
55
180
92
93
55
119
111
126
102
128
158
74
126
91
99
127
92
109
56
144
126
171
69
110
109
163
101
55
126
110
93
107
55
111
114
123
55
92
139
127
97
140
112
178
134
77
104
103
110
144
127
74
74
106
103
131
77
138
69
182
105
127
105
37
148
142
37
67
55
134
55
126
56
169
138
171
67
140
55
119
111
114
102
123
92
126
146
130
120
123
92
104
79
118
93
92
140
110
146
55
83
149
56
195
146
105
37
105
67
105
131
56
111
122
99
114
127
74
146
56
140
67
37
92
110
55
69
110
87
55
123
86
144
92
56
180
180
105
92
91
110
105
126
144
126
55
123
124
178
67
92
37
104
68
88
93
55
79
37
104
169
55
56
141
91
146
69
126
92
139
122
37
141
84
104
171
104
134
58
69
56
138
55
178
92
91
145
86
146
103
126
112
110
110
58
120
126
92
83
67
58
134
55
109
92
37
89
80
109
123
105
55
92
126
55
83
171
56
88
56
144
58
77
110
112
99
169
37
178
122
122
55
110
105
178
105
99
99
103
138
74
127
122
79
109
114
171
131
93
122
141
135
127
55
74
152
55
110
163
169
77
126
162
111
104
127
103
134
77
68
37
99
110
128
107
134
122
67
112
110
144
135
110
135
178
107
107
169
106
122
126
89
110
128
98
67
122
122
164
127
117
124
86
91
144
95
98
126
92
83
55
152
117
108
69
120
91
104
58
56
126
67
55
139
84
160
81
104
110
75
158
67
152
169
134
69
92
124
139
111
140
118
93
105
58
92
144
74
92
58
67
107
77
122
148
37
122
126
130
55
67
141
134
92
138
92
115
152
162
97
146
138
69
67
144
56
93
67
148
79
126
122
127
122
105
145
86
135
178
67
126
58
37
37
107
56
124
92
182
103
86
139
104
86
124
110
92
92
93
69
102
72
105
169
144
142
55
87
92
107
139
148
122
146
138
109
55
148
134
139
92
97
160
84
114
107
138
125
79
74
58
160
55
132
158
138
37
128
56
146
126
130
117
92
138
146
134
140
138
128
99
110
122
110
128
148
92
126
92
126
107
130
178
105
131
134
67
93
144
111
122
128
55
67
164
93
108
58
93
92
130
123
146
75
56
92
144
109
122
110
74
114
56
126
105
92
109
139
139
127
56
138
104
144
160
106
37
122
109
122
92
149
114
91
110
83
126
139
99
37
120
56
75
58
106
167
56
138
126
108
123
75
56
171
180
122
69
105
158
119
67
110
93
119
93
122
67
140
55
122
130
130
152
92
126
92
55
91
92
134
110
92
109
103
103
37
147
109
88
139
74
169
67
56
152
69
56
55
105
144
110
98
105
137
67
134
119
79
122
140
124
86
110
79
55
126
139
86
159
140
55
37
56
79
55
139
104
88
93
137
109
55
58
104
129
92
131
139
124
139
127
55
138
110
92
92
146
122
110
110
110
178
55
152
156
169
37
146
137
104
145
128
105
131
55
101
77
145
75
139
110
55
55
55
110
144
86
77
123
112
117
55
122
130
178
158
110
104
68
138
67
134
152
128
55
91
120
126
171
138
93
105
55
104
58
74
58
92
97
105
92
124
77
106
138
124
140
67
127
138
148
58
120
93
95
55
178
67
99
128
93
93
127
92
138
55
81
105
139
110
109
104
165
122
55
92
56
109
127
122
126
139
163
178
58
126
122
126
111
56
107
93
103
181
92
130
105
107
55
69
144
119
122
138
105
92
105
92
98
141
55
84
113
105
95
103
104
98
123
122
58
122
92
140
65
126
144
112
110
165
158
91
87
105
111
140
140
92
138
55
163
78
77
64
93
75
55
145
127
138
127
79
127
125
86
103
92
117
111
178
126
111
114
93
139
114
126
104
126
139
152
119
135
125
145
67
114
67
126
105
86
110
123
68
68
139
140
92
91
37
89
136
142
55
137
126
125
92
130
58
56
171
37
84
92
138
111
188
122
152
110
107
55
111
146
167
132
120
122
110
75
132
144
91
192
55
105
117
127
119
56
102
112
110
128
149
56
93
105
111
93
110
128
144
97
67
37
122
122
113
129
103
110
112
144
55
74
126
67
119
126
93
139
55
99
94
120
108
69
110
115
109
110
92
105
134
92
126
104
126
123
102
105
111
86
144
148
117
99
126
112
97
124
86
88
122
105
111
75
56
56
55
180
83
123
144
144
134
128
101
67
55
80
142
37
55
178
144
128
92
55
93
146
100
55
131
98
106
92
93
139
86
115
101
103
77
107
92
93
55
164
146
119
93
105
122
92
127
86
138
122
88
95
121
137
122
86
104
111
105
149
77
130
111
152
74
156
79
144
122
79
105
105
106
86
55
105
101
67
138
37
122
110
165
92
178
101
86
86
77
122
93
103
110
91
136
127
109
105
111
80
178
169
88
119
55
92
56
103
126
67
144
69
95
104
93
122
101
110
92
130
140
110
142
55
126
105
55
107
152
127
84
122
80
110
136
91
105
74
122
139
67
105
81
111
56
104
86
144
169
158
171
153
132
56
110
122
178
140
92
110
37
92
138
69
110
55
117
96
103
99
107
178
122
119
91
163
96
93
126
105
128
167
87
124
139
79
126
137
91
114
55
97
99
163
103
134
110
107
126
69
122
75
127
128
55
88
144
122
138
37
123
104
79
110
108
103
122
124
162
119
148
128
92
98
169
74
123
178
171
92
104
55
77
55
134
78
107
86
105
139
55
56
131
105
125
126
74
74
178
128
92
152
109
84
123
178
55
92
152
144
110
105
99
100
92
92
68
119
58
141
180
105
97
171
134
58
67
86
104
126
128
157
105
37
67
58
122
93
37
67
55
119
126
92
126
126
178
144
128
169
92
139
111
104
137
111
107
37
99
92
109
105
101
117
92
139
119
138
114
126
134
138
97
139
171
110
124
178
67
87
68
108
114
126
122
95
92
37
74
113
56
68
98
129
105
105
110
105
109
109
107
158
144
140
58
168
122
55
114
56
37
120
92
114
110
107
92
79
55
103
56
93
83
100
110
144
131
126
67
137
86
105
105
105
169
126
152
178
122
95
79
112
93
152
67
37
146
87
119
55
126
58
55
95
110
93
98
132
79
55
91
68
93
67
55
99
105
83
122
144
75
55
79
56
55
93
167
92
110
140
178
132
104
76
104
98
122
118
126
122
104
124
92
37
91
107
68
124
55
128
74
106
144
132
99
100
105
119
115
144
122
101
138
55
141
84
102
123
76
55
138
146
86
92
131
139
126
138
58
86
73
126
134
107
93
86
56
55
123
98
99
55
55
111
92
93
122
102
55
91
131
169
104
104
122
93
58
171
55
111
126
93
126
144
67
104
113
67
87
91
98
126
126
103
122
93
180
146
68
77
136
55
104
126
55
92
92
178
78
88
124
119
91
140
124
92
110
67
106
148
115
105
86
110
126
126
119
163
92
67
102
37
79
131
120
55
55
92
105
103
118
123
74
55
67
81
169
74
127
105
120
67
139
126
110
138
114
138
138
56
97
86
55
110
104
111
138
92
122
55
126
138
122
56
110
55
178
91
110
69
55
69
110
119
152
162
93
124
128
164
86
110
86
128
138
113
79
163
124
122
152
88
37
119
100
110
163
138
110
106
131
92
158
83
107
107
92
67
105
126
93
37
110
160
110
169
120
101
75
139
111
158
122
120
55
144
93
105
56
92
119
126
124
72
93
110
112
92
81
138
132
56
92
55
92
37
67
126
83
107
67
67
104
171
56
140
139
178
69
126
55
69
92
86
58
91
105
56
105
122
71
109
37
95
108
124
105
93
56
83
130
75
138
55
138
55
58
126
89
130
93
55
124
93
75
110
114
105
77
85
55
160
88
138
110
110
55
135
55
110
138
138
111
104
56
55
136
92
138
122
127
56
123
146
92
127
126
104
152
91
127
144
122
92
55
112
137
80
144
86
132
138
127
103
55
56
68
69
120
55
138
104
137
152
126
79
67
178
75
84
138
138
139
58
56
92
138
100
109
136
93
138
131
105
67
134
178
168
111
146
104
55
146
75
86
86
110
81
138
136
58
127
112
110
180
110
55
144
69
105
128
124
55
94
103
168
127
55
146
83
105
146
109
79
122
134
99
122
122
67
130
68
84
152
144
147
67
105
144
139
106
135
37
112
126
146
165
142
93
55
74
112
105
140
103
164
136
126
130
99
178
58
144
165
77
37
99
37
126
126
67
94
140
68
92
77
109
93
163
79
126
119
79
139
92
92
55
91
86
109
92
103
164
75
119
137
178
140
144
100
123
122
92
109
109
108
127
55
68
98
55
104
79
160
123
110
152
162
105
110
110
117
104
105
138
110
107
91
95
93
123
144
55
93
134
178
127
78
92
92
124
140
74
119
127
69
158
152
139
92
102
92
122
122
93
106
89
122
120
56
95
110
109
55
111
69
84
129
69
37
163
58
122
107
119
84
109
108
119
103
56
130
86
118
163
74
119
127
110
97
89
144
93
163
144
138
126
56
93
135
55
178
111
140
91
122
127
152
104
68
68
148
55
178
92
37
92
81
126
89
79
138
110
104
92
55
122
105
55
127
79
105
169
119
58
101
97
81
111
146
144
99
122
104
68
37
127
92
126
122
138
124
109
127
109
79
110
58
144
101
162
91
69
67
93
37
126
179
55
144
92
138
37
110
104
127
126
139
119
178
109
110
79
104
120
171
69
97
139
99
138
58
104
105
118
104
105
93
111
109
105
131
122
110
93
122
92
123
67
120
122
110
126
126
119
144
79
125
138
169
110
146
107
56
123
110
67
86
189
152
168
58
104
111
55
37
127
137
126
105
56
158
109
104
171
67
127
92
123
169
105
67
92
67
122
122
92
37
97
126
92
37
119
55
110
169
69
37
152
58
97
93
104
150
123
140
122
69
199
105
138
67
91
69
123
140
105
125
105
139
169
98
92
92
110
103
104
103
92
127
86
128
138
55
144
55
58
93
64
67
126
109
115
74
139
110
147
146
122
55
93
163
93
79
100
126
67
152
67
110
152
169
79
92
105
136
110
91
178
105
122
111
79
178
104
103
139
104
58
119
122
55
111
138
119
122
83
98
181
105
104
91
117
100
77
117
105
119
93
144
138
84
121
139
123
92
138
178
74
74
74
92
139
93
103
197
119
122
79
83
92
84
144
84
126
92
55
128
55
152
169
55
105
111
119
79
119
138
139
101
145
92
124
55
79
104
167
37
69
67
138
56
56
144
56
55
58
105
127
101
178
110
92
127
92
132
122
119
92
144
93
93
122
56
105
92
134
113
109
92
91
104
163
120
98
167
105
92
101
139
37
81
139
122
92
67
107
145
103
84
55
118
69
127
58
139
93
106
144
74
79
92
105
122
91
55
110
58
104
112
131
122
110
122
56
123
131
67
55
84
110
126
146
131
75
123
180
104
127
55
92
149
104
112
109
92
162
55
124
109
92
77
104
122
146
95
138
67
135
83
137
55
93
58
126
93
168
37
67
93
92
93
147
138
123
105
80
127
92
169
127
178
149
69
56
139
122
99
141
107
69
67
119
126
119
79
37
86
122
126
79
148
144
125
69
111
67
117
92
110
74
78
144
146
92
105
99
79
86
122
92
123
75
110
127
81
67
93
86
126
58
110
92
119
136
123
135
77
55
110
92
55
122
98
83
107
131
126
105
146
137
152
105
55
92
58
111
165
178
126
169
75
146
77
69
178
117
93
123
92
37
122
146
126
139
180
115
67
168
144
69
145
110
127
128
67
58
114
106
69
163
105
99
110
126
67
118
126
103
128
89
102
110
99
138
127
93
101
87
67
67
136
138
119
88
146
95
178
77
92
56
110
146
55
109
83
99
138
119
126
67
197
134
126
105
126
122
107
142
55
92
165
67
142
122
138
67
141
58
104
56
83
127
77
93
58
114
105
169
69
75
75
105
109
92
134
148
55
110
137
92
99
103
79
69
169
110
134
67
112
95
132
79
37
79
152
138
74
37
58
58
122
93
178
56
146
110
56
127
106
139
132
158
122
128
105
86
128
130
180
75
110
99
122
74
115
55
55
109
131
119
162
103
141
67
86
58
89
146
92
99
126
88
58
138
67
105
112
55
93
152
78
92
67
146
77
93
110
160
91
77
37
124
67
146
127
55
93
37
178
91
148
146
93
144
93
158
178
130
132
138
92
154
84
77
110
102
163
56
91
138
92
91
67
132
56
128
123
92
55
126
110
145
126
112
79
55
98
58
128
118
122
122
55
148
104
169
144
126
92
152
37
130
148
76
79
92
92
100
144
162
109
93
101
93
110
37
79
140
92
136
126
122
55
77
122
139
138
138
99
74
128
92
84
103
104
122
93
126
144
104
92
89
122
122
55
136
178
129
92
130
55
104
92
98
91
146
143
121
110
92
74
146
79
158
105
134
139
125
178
58
109
56
139
110
178
146
55
67
138
111
74
127
102
79
126
93
117
125
105
123
56
56
67
67
120
127
178
67
126
55
92
58
105
107
103
105
111
69
127
56
159
107
77
112
75
97
67
74
92
110
58
92
132
140
139
144
55
136
107
119
92
86
126
130
105
138
92
140
58
137
55
148
79
92
126
140
171
127
92
83
126
178
126
126
108
110
86
112
134
139
104
92
123
58
56
152
93
139
109
152
138
97
124
92
110
111
123
124
86
97
167
121
98
116
146
79
102
120
122
108
92
107
58
86
109
67
122
171
130
111
114
74
75
151
69
67
81
92
67
138
55
110
111
37
83
92
74
144
105
76
92
139
148
127
75
144
67
127
126
114
92
138
55
124
122
122
69
79
92
110
93
137
107
122
79
134
106
92
152
128
79
99
110
110
104
110
144
132
55
79
69
86
168
105
122
111
140
37
145
104
92
138
122
124
126
67
74
103
148
55
92
84
37
79
79
124
178
92
139
131
131
105
56
67
137
122
110
55
127
114
105
122
105
122
128
109
144
180
55
111
102
55
104
97
128
37
102
67
178
56
97
86
64
55
67
123
146
98
104
104
124
97
92
55
98
75
92
86
127
55
101
109
119
77
92
103
93
127
126
67
144
146
55
139
67
119
92
146
124
131
74
126
58
110
69
197
138
103
92
103
132
180
122
107
94
110
126
122
92
146
106
136
163
84
138
104
55
92
122
138
92
105
105
56
69
67
127
98
56
127
109
138
67
178
142
79
106
126
152
104
91
135
134
140
91
122
56
163
67
138
67
83
58
93
56
107
136
55
56
144
55
58
152
110
122
92
55
178
80
81
137
105
93
138
37
144
152
136
104
110
77
102
55
92
84
131
111
110
110
180
56
152
122
99
130
148
93
135
136
104
56
126
104
142
92
92
55
56
140
126
140
84
98
91
105
138
122
77
146
110
95
119
118
109
117
109
145
138
144
138
138
177
114
99
178
92
165
104
91
145
134
105
126
92
97
124
86
55
103
110
99
180
123
112
55
91
83
139
102
132
122
56
146
75
144
112
84
195
132
105
111
93
37
110
83
123
67
86
119
89
98
67
144
56
69
126
126
124
67
127
110
77
188
105
99
84
178
55
83
71
55
146
101
79
139
127
56
87
127
128
122
105
123
140
96
93
89
122
74
91
69
139
105
114
92
111
127
121
92
180
119
94
83
105
92
88
105
122
152
58
67
139
139
119
131
144
138
110
126
138
55
178
119
105
93
162
126
67
142
122
127
127
146
92
105
148
152
138
104
58
105
126
69
119
149
122
55
117
127
67
130
69
74
167
137
37
92
74
129
111
87
37
99
99
104
152
132
67
79
56
67
132
58
127
124
37
163
110
124
171
55
92
129
81
81
79
104
114
93
110
74
122
137
130
55
199
93
106
122
56
119
91
84
105
101
111
92
99
67
138
128
130
120
139
95
168
111
112
100
144
111
55
55
55
127
89
95
119
92
123
110
55
109
128
91
138
110
92
91
105
93
91
64
146
37
100
180
123
145
128
105
55
163
105
109
92
162
102
110
67
134
160
56
124
107
99
158
92
55
164
67
151
105
97
147
122
122
112
138
139
130
110
110
118
110
93
178
106
68
144
136
110
144
112
99
92
126
128
131
138
144
91
104
105
110
152
122
138
171
79
58
110
127
92
107
143
77
55
93
55
111
130
56
111
128
126
138
104
118
98
188
139
69
77
122
138
162
93
122
126
56
74
92
122
92
138
126
105
68
148
55
135
144
123
144
86
178
58
69
92
178
128
105
111
67
92
92
79
117
122
122
103
37
119
126
99
99
55
109
92
138
128
139
178
84
144
127
126
58
112
123
119
58
128
104
110
110
77
144
98
136
138
55
129
67
124
119
79
123
55
145
92
111
67
79
99
178
123
117
164
136
74
126
79
160
67
114
152
192
92
122
92
67
138
75
131
69
56
100
107
129
137
114
127
126
144
146
144
92
127
122
105
188
92
55
112
86
58
93
37
128
178
126
141
58
142
141
61
178
55
37
145
92
178
67
139
92
112
78
134
93
86
109
105
119
146
69
117
104
136
91
93
92
104
152
152
78
55
79
139
56
101
112
152
128
91
55
131
68
68
122
118
126
92
122
58
83
163
117
104
56
67
55
69
104
93
91
152
136
58
122
92
92
83
138
126
199
126
55
55
105
126
109
67
122
105
126
105
55
103
56
101
144
178
110
126
78
128
130
67
107
106
37
67
101
79
122
105
126
56
123
105
92
75
123
93
37
92
68
178
92
147
92
92
97
122
107
139
92
136
122
136
117
86
122
79
114
105
75
105
146
139
139
37
111
122
37
117
123
128
92
127
92
99
55
134
55
111
56
99
92
84
127
128
128
109
119
37
79
77
56
103
136
109
55
138
139
117
105
139
67
110
93
92
134
124
102
138
68
110
72
144
56
111
92
67
128
74
56
92
127
101
101
124
111
97
122
92
105
91
56
126
139
178
67
144
55
69
93
128
86
134
122
55
105
92
145
55
110
92
110
67
128
126
109
138
93
126
75
79
69
110
55
93
138
37
77
118
178
119
144
144
84
120
122
117
126
112
124
55
83
58
123
69
55
77
123
58
138
118
152
122
111
107
69
85
132
163
169
138
118
79
86
67
55
69
104
103
127
110
138
105
55
86
141
146
178
88
111
128
152
114
171
105
98
75
126
129
152
110
92
165
139
152
92
152
88
92
56
55
37
120
179
130
126
118
86
67
92
180
132
99
119
114
128
159
98
178
105
56
107
104
108
92
105
68
107
139
87
68
92
124
55
86
123
92
77
58
93
128
55
91
126
169
92
92
67
58
138
122
58
93
122
83
132
138
178
105
92
138
124
122
69
142
122
83
178
107
102
119
69
103
163
67
110
134
58
122
93
109
138
103
107
129
74
101
58
91
178
99
56
117
180
86
178
104
127
109
138
135
104
152
144
119
138
107
120
67
138
171
68
128
114
74
109
86
56
131
127
55
104
55
37
151
104
112
126
149
113
119
69
75
77
56
77
107
92
169
75
91
127
138
114
100
67
92
58
122
58
101
110
127
86
148
92
68
178
127
162
122
86
92
55
122
55
122
100
167
126
68
55
58
101
105
114
138
122
56
178
58
37
131
138
92
118
37
67
141
138
105
128
118
67
126
119
138
110
55
127
55
149
122
169
92
67
56
79
88
93
127
112
86
58
126
58
139
56
86
152
105
68
126
99
103
58
111
55
92
128
178
88
74
93
139
110
77
37
58
146
104
120
110
124
105
163
79
79
55
121
180
92
104
92
110
130
123
169
107
111
92
101
55
140
178
114
55
68
126
152
122
104
92
123
145
104
127
101
122
119
152
128
107
78
117
110
123
117
110
141
134
56
110
79
124
126
104
110
140
163
122
178
139
92
77
92
139
74
182
110
105
93
104
99
110
122
123
55
67
122
83
146
86
92
171
56
55
69
178
128
86
148
108
127
55
144
112
91
92
104
92
55
67
139
93
122
134
167
119
122
122
110
123
67
131
144
84
99
123
168
148
106
110
37
144
110
92
122
169
107
67
92
111
69
92
178
105
67
58
144
138
134
77
56
83
37
99
120
92
100
69
92
104
84
37
110
126
79
56
99
102
110
178
86
148
126
164
92
123
131
93
146
165
55
127
127
126
138
128
126
37
93
55
104
56
105
79
122
152
128
55
104
77
136
144
105
58
126
138
91
105
144
144
92
58
58
128
93
92
163
92
78
103
91
83
72
55
84
178
88
133
152
77
134
67
138
92
125
110
55
67
55
67
55
83
105
114
119
81
99
147
167
135
126
123
131
55
168
111
69
138
126
98
178
92
128
93
56
146
58
109
99
110
146
140
126
93
92
111
61
105
122
127
131
91
171
127
128
79
69
112
93
91
123
37
55
135
58
37
146
122
105
80
138
145
138
160
138
125
110
58
144
37
139
55
92
92
100
119
104
144
136
138
37
146
134
97
145
79
110
138
115
117
169
56
122
128
56
126
138
56
56
56
128
55
67
86
119
103
104
105
138
92
55
104
158
146
138
77
131
97
180
67
67
86
104
104
71
110
104
92
58
132
105
67
111
131
69
93
83
105
117
105
146
127
86
103
77
92
105
111
167
95
149
74
92
138
97
127
146
146
112
146
123
169
110
134
67
132
110
110
110
92
139
126
67
145
58
68
126
56
146
132
141
89
110
37
111
140
122
55
128
151
127
122
56
67
130
92
105
74
92
122
104
169
68
127
127
105
94
128
138
122
118
79
110
67
55
86
122
146
122
112
67
69
178
107
120
104
55
138
105
110
92
93
117
138
139
107
77
37
99
86
141
56
67
108
112
181
69
122
128
110
98
91
145
126
116
105
74
92
110
81
110
79
92
123
92
136
67
55
86
110
83
105
98
114
85
120
124
123
92
110
127
123
126
92
146
37
135
55
74
94
126
55
110
55
119
58
74
168
165
101
130
112
109
37
110
104
75
58
126
146
110
93
178
108
79
120
122
77
67
112
122
67
105
56
92
104
122
57
126
56
55
93
180
55
91
58
127
122
100
110
92
83
109
93
181
102
119
111
69
109
110
88
56
69
122
104
137
105
144
119
110
117
178
107
88
131
101
140
144
55
37
110
126
105
122
119
122
69
83
105
91
67
92
122
126
99
100
151
77
102
140
138
122
56
105
55
93
171
37
103
56
92
122
55
93
114
123
144
67
55
169
136
92
37
134
55
99
104
37
127
178
99
125
112
126
110
92
103
104
169
139
69
122
111
83
178
112
132
126
122
113
83
148
92
112
178
126
55
164
169
67
139
141
127
92
138
122
104
123
139
99
105
67
107
58
164
55
92
92
162
127
69
56
139
139
100
126
134
138
140
104
75
103
126
140
79
136
72
127
152
93
86
119
134
139
139
113
69
178
142
136
104
105
127
56
58
97
58
140
110
127
178
86
139
56
104
110
99
105
124
159
128
55
111
79
58
138
138
147
127
119
56
146
148
127
122
138
105
96
58
67
111
122
92
127
100
169
127
107
55
92
114
128
122
77
168
127
95
128
134
144
110
67
56
146
118
37
55
103
110
139
37
122
105
110
144
86
122
103
98
102
113
152
111
178
110
122
92
123
135
93
99
92
103
100
127
89
74
139
69
37
67
79
79
152
67
126
111
55
92
126
105
55
104
137
77
92
93
110
86
139
56
84
111
122
92
55
80
126
104
68
123
58
55
107
112
125
122
121
89
132
86
138
92
111
110
139
100
108
55
148
74
114
56
93
74
78
69
67
136
109
124
139
144
91
122
92
55
93
122
118
84
131
144
104
178
122
92
109
144
110
144
92
140
110
56
151
119
146
112
107
67
152
126
105
126
139
105
100
58
168
139
127
93
86
111
56
92
104
132
139
37
139
122
153
75
67
92
127
107
146
130
58
95
103
68
92
136
138
92
141
114
138
122
146
92
126
67
102
122
56
148
93
122
103
83
128
91
120
67
55
152
55
110
56
126
126
126
55
103
195
100
167
126
86
92
138
103
79
178
139
97
93
132
77
123
122
124
37
100
109
106
122
84
122
122
144
58
93
105
58
37
67
74
93
92
128
77
141
168
110
110
77
132
122
56
137
55
123
92
149
152
114
126
139
58
144
107
79
124
146
111
92
123
92
56
56
104
85
178
122
84
178
126
55
122
110
75
118
67
81
104
146
97
67
126
138
122
37
126
126
89
67
109
91
105
141
126
110
140
139
77
119
122
122
119
92
178
55
93
122
122
99
105
55
86
107
122
101
134
117
56
37
79
165
100
92
138
129
79
37
119
128
146
86
128
93
179
79
56
123
77
139
146
126
74
104
123
86
109
142
132
126
110
91
103
110
163
127
56
141
139
79
127
81
105
146
162
55
138
67
144
139
79
105
92
92
94
163
110
119
92
93
88
126
138
93
142
99
138
67
148
110
144
104
169
105
69
55
58
178
74
55
37
110
110
107
112
67
118
73
105
55
83
178
105
152
77
105
91
112
105
139
141
69
81
139
110
93
168
146
106
122
127
104
178
128
152
56
178
55
92
152
105
130
86
110
127
92
122
91
37
149
93
92
58
135
67
124
140
124
122
58
93
180
86
139
119
104
83
55
86
119
120
86
74
104
93
120
199
139
105
109
92
37
105
93
163
144
134
148
55
55
164
67
145
104
109
139
110
37
156
122
131
117
83
103
37
144
92
110
136
75
130
105
139
138
84
67
181
169
107
168
139
122
37
131
169
126
97
111
96
134
110
97
56
105
55
111
74
103
122
67
152
105
93
86
92
111
75
122
102
111
112
92
158
122
104
92
178
55
68
83
138
105
56
78
110
80
126
106
178
119
110
93
120
92
131
75
93
110
139
93
77
105
105
92
105
67
55
67
121
134
105
107
92
104
108
92
144
91
55
105
102
122
110
92
69
120
105
55
146
67
93
146
92
105
145
92
55
104
79
100
78
144
127
77
107
136
55
146
146
56
92
122
146
69
55
111
110
110
105
77
55
37
92
122
99
67
128
97
56
106
119
77
75
92
158
134
169
103
145
105
156
69
69
110
92
92
178
127
128
131
126
168
124
92
110
55
96
107
119
97
138
74
87
112
58
55
144
169
75
92
110
138
93
123
126
104
142
110
126
107
126
107
124
69
163
101
169
56
140
118
124
146
104
104
93
178
55
79
92
113
92
114
110
56
120
105
77
123
81
111
139
126
144
139
97
152
122
120
122
37
37
79
93
122
122
152
146
123
77
79
67
120
93
94
138
69
146
74
37
123
110
148
122
147
106
107
93
145
158
111
138
139
110
37
103
110
122
149
152
58
98
92
68
120
83
104
92
180
110
104
130
127
171
127
104
110
104
126
136
89
69
105
69
37
122
171
128
86
93
136
138
152
138
56
106
110
105
110
134
164
92
122
104
146
75
110
127
122
139
122
105
37
93
79
107
139
132
55
110
112
93
99
178
84
55
134
152
86
100
92
37
126
140
58
144
122
132
139
109
142
83
88
89
178
126
126
86
55
105
98
160
77
86
128
77
55
92
105
93
92
93
130
152
158
93
100
69
137
125
122
119
92
110
105
148
98
79
78
117
167
145
56
78
56
104
124
92
111
95
146
77
67
69
122
169
114
108
144
110
189
67
169
110
144
152
122
126
78
74
105
122
97
101
105
171
95
122
105
134
101
99
55
110
58
104
91
110
139
58
138
112
111
152
93
58
122
93
55
105
126
115
145
168
110
146
152
138
122
104
67
139
169
109
55
111
114
108
140
69
67
112
116
58
92
77
77
103
128
86
93
55
56
132
107
126
37
123
152
110
37
188
92
139
79
95
92
86
110
86
129
97
74
127
91
139
110
107
69
37
109
92
55
101
37
171
104
69
99
138
122
139
130
114
110
107
124
178
138
132
67
139
111
110
122
74
67
107
117
55
69
103
93
92
107
140
67
55
132
55
109
96
103
148
67
144
108
55
122
93
140
127
58
92
96
37
55
109
110
55
74
127
55
126
74
138
56
189
138
109
125
178
126
128
160
131
122
139
122
144
87
67
67
104
152
102
37
126
126
126
152
111
110
122
167
109
92
110
122
79
115
79
37
99
140
139
117
55
128
104
101
67
121
89
122
55
55
55
107
109
112
162
119
119
123
55
111
56
127
105
55
110
126
96
136
37
117
104
169
56
126
37
104
110
105
108
86
114
105
127
92
105
92
67
93
92
88
124
139
126
138
128
83
109
106
129
102
128
125
146
110
105
69
104
56
122
136
55
146
121
122
55
117
74
86
181
94
37
56
69
104
146
139
77
104
122
122
110
68
69
67
146
119
138
123
146
114
55
83
126
130
138
74
146
160
110
56
107
110
146
92
148
83
105
92
55
162
138
171
139
131
122
109
77
123
109
75
138
137
92
126
122
122
74
108
55
141
92
144
95
93
126
105
110
169
55
92
178
110
98
109
93
80
163
74
122
117
135
134
128
110
92
140
105
61
132
180
93
123
95
86
113
101
79
122
69
91
126
99
56
178
178
139
79
89
37
146
126
138
148
79
105
110
58
178
109
79
146
122
124
168
87
109
92
99
132
171
67
92
102
92
56
144
119
105
139
146
168
127
92
117
86
110
138
137
164
58
126
111
104
119
74
105
107
144
67
95
139
83
67
146
55
79
127
98
93
55
105
110
69
73
104
107
126
146
110
104
91
74
96
86
86
148
152
110
139
110
79
105
92
122
138
56
105
108
130
117
123
86
56
134
92
122
111
136
171
145
136
75
137
122
106
93
92
103
134
77
58
139
69
110
68
123
138
121
120
105
80
105
92
127
83
129
105
162
138
169
120
146
94
67
137
188
144
74
149
109
126
139
110
77
37
126
134
91
37
163
126
88
110
126
146
111
69
105
56
123
138
58
123
105
69
105
55
91
92
105
140
74
74
92
83
99
55
75
126
37
180
123
132
110
122
74
114
122
92
102
117
139
56
67
104
89
178
119
134
55
94
56
69
67
122
69
148
122
110
138
134
92
37
91
103
91
156
91
163
81
122
99
132
138
84
77
110
56
105
67
122
169
110
67
140
122
99
138
92
126
130
67
111
69
99
55
55
93
55
96
77
127
58
152
122
104
144
152
119
100
55
118
126
37
58
110
142
178
58
123
115
139
136
159
103
138
127
106
104
55
67
119
93
103
146
127
83
122
119
123
128
129
92
114
122
122
132
122
109
139
79
126
91
120
158
146
55
99
80
56
130
134
119
55
68
105
148
152
138
122
130
105
127
126
104
92
139
178
93
55
111
91
69
164
92
110
95
109
89
78
143
135
110
110
115
69
164
37
101
152
146
37
67
104
75
58
135
105
110
110
171
126
122
92
139
92
55
58
107
58
88
105
138
55
56
81
114
110
92
146
58
122
152
89
110
100
110
131
178
56
79
144
135
67
67
74
92
56
140
138
78
83
69
163
138
101
116
91
134
110
65
110
168
67
105
124
56
178
69
92
122
127
77
55
122
55
92
162
55
110
37
110
144
110
123
119
138
99
74
92
67
69
126
110
37
37
115
71
122
125
99
104
69
58
138
92
58
110
93
75
126
122
122
125
81
112
93
97
56
56
104
152
55
92
146
127
122
55
55
120
120
107
67
67
37
98
127
139
110
120
129
92
141
180
127
145
126
58
81
104
58
99
117
122
122
105
126
152
55
171
119
68
117
55
105
94
119
114
84
139
147
144
105
152
138
88
104
127
119
122
86
122
134
92
93
130
104
139
110
110
91
112
134
37
69
83
136
123
77
114
105
37
55
105
138
56
116
92
68
146
79
138
138
93
55
107
131
122
162
126
110
98
128
93
119
146
109
103
126
105
92
98
148
126
98
126
67
56
110
134
58
92
120
67
102
92
135
114
92
102
134
145
169
178
105
56
55
180
86
67
144
127
122
152
93
126
92
104
122
125
104
37
106
137
84
93
138
119
141
122
88
96
139
93
109
127
92
55
119
55
149
131
110
91
131
109
91
126
123
162
138
110
55
139
139
79
148
120
118
146
92
121
84
92
105
139
110
178
95
104
92
178
139
128
67
146
122
118
169
134
55
104
86
127
128
123
128
92
55
58
127
105
93
131
69
79
138
92
146
144
122
131
110
55
168
119
93
114
106
114
128
67
171
37
69
67
56
97
105
83
55
111
58
148
105
86
92
55
55
99
109
56
124
67
99
58
122
112
79
124
67
104
58
109
163
101
128
67
104
97
129
139
138
129
138
107
122
139
163
92
109
91
67
119
55
110
126
88
69
79
91
127
134
110
138
78
115
56
58
92
128
105
79
97
105
105
92
119
91
122
122
105
92
134
134
146
92
93
105
124
127
75
123
139
122
74
75
102
128
37
55
119
144
107
55
56
144
178
92
93
92
79
113
139
169
117
95
127
169
67
128
167
111
97
144
86
169
100
116
104
102
158
163
109
95
104
141
122
128
105
79
92
137
122
105
69
134
92
107
99
178
160
77
93
144
128
86
126
92
74
84
91
74
105
128
138
139
84
178
171
123
67
105
110
55
93
169
111
92
79
139
88
128
55
122
114
105
144
77
177
152
152
83
92
92
95
110
111
69
110
122
146
146
146
110
55
122
98
98
74
126
77
111
165
122
86
77
105
58
72
107
134
128
103
92
127
130
120
107
92
93
110
110
102
55
178
92
67
110
110
127
102
129
148
86
67
92
134
104
92
134
178
127
74
139
110
110
132
67
137
123
93
138
126
55
55
91
55
67
126
136
128
126
126
55
112
96
111
167
119
112
152
86
178
144
55
108
55
101
83
67
105
86
91
107
114
105
67
67
95
122
104
100
55
55
58
105
67
86
102
156
105
100
92
144
105
126
95
118
97
164
67
68
152
86
122
105
93
126
93
138
55
158
55
75
104
107
92
104
138
92
92
160
160
123
169
99
135
136
145
55
110
93
108
144
99
104
122
138
107
68
169
128
180
128
178
128
99
123
105
83
91
100
129
91
89
148
114
86
86
149
105
111
124
123
126
111
95
86
95
58
107
128
37
105
140
171
126
92
138
69
152
92
105
110
110
109
131
128
137
109
56
127
126
138
128
122
178
127
91
79
122
84
109
55
117
130
122
122
91
138
128
92
126
139
158
104
122
135
105
128
139
109
86
132
109
139
171
162
126
37
92
56
69
136
138
110
104
119
178
109
126
167
122
139
123
67
126
158
69
69
92
37
127
91
104
158
55
67
55
178
83
55
91
127
140
68
105
74
110
91
86
104
146
67
107
104
127
79
56
92
139
123
107
105
55
55
55
67
56
138
69
138
122
123
92
55
124
132
110
110
110
138
163
138
138
131
55
56
122
58
77
122
104
110
105
37
93
56
108
99
144
92
92
104
77
92
95
56
56
105
74
136
120
67
92
67
56
55
146
122
138
110
126
86
104
55
115
126
56
68
164
162
104
37
103
138
109
67
122
104
68
141
67
37
83
105
134
55
138
139
104
169
165
100
79
110
139
105
92
86
92
153
37
126
69
148
122
77
92
110
98
37
138
55
138
152
105
55
126
92
97
67
92
100
160
91
92
126
180
139
67
181
162
104
58
146
112
168
105
171
171
105
158
37
110
55
103
58
127
103
110
144
100
92
107
124
104
55
92
98
110
79
171
122
86
146
92
167
58
144
178
107
92
165
126
92
93
77
128
163
112
123
92
126
93
152
146
169
131
121
55
92
126
86
67
163
105
138
146
93
95
64
138
127
93
119
67
69
100
109
105
56
91
91
56
92
69
117
105
120
55
127
77
115
169
55
93
104
110
111
37
134
99
93
67
92
138
111
74
146
122
55
92
127
86
104
74
130
105
105
55
139
104
138
105
140
139
127
122
102
128
105
134
104
104
131
135
188
126
93
100
126
160
92
131
110
112
138
67
37
69
102
168
144
55
119
110
132
182
104
140
37
56
110
105
134
101
92
146
120
83
92
99
122
168
119
126
56
105
122
104
124
55
55
112
96
58
85
75
110
122
69
94
163
140
95
110
132
74
103
55
119
122
67
123
105
79
102
138
37
107
121
77
122
144
58
158
122
89
99
104
122
112
56
144
144
110
139
163
67
122
127
92
134
114
138
110
110
127
140
67
91
55
92
107
178
55
75
79
146
55
83
152
138
105
122
99
119
143
122
139
109
138
126
74
99
111
74
88
132
55
109
122
56
110
106
132
92
111
102
92
55
99
105
139
122
92
130
152
93
67
104
91
105
99
104
109
86
92
118
86
158
152
110
123
119
127
142
83
128
55
171
122
108
67
37
93
55
86
104
69
111
129
97
122
122
55
107
93
37
69
91
75
56
55
37
69
105
99
107
92
111
104
92
152
142
169
122
124
92
134
104
58
149
140
152
78
93
68
111
79
168
104
110
138
56
37
169
139
110
94
138
137
105
58
128
58
77
138
92
56
127
140
77
67
92
37
124
152
139
134
122
107
163
107
110
152
165
64
84
130
37
92
107
79
163
92
118
92
101
122
112
126
103
126
146
107
181
138
92
164
110
126
89
92
98
93
79
68
138
146
127
101
123
112
139
75
104
83
105
138
92
55
146
138
109
144
67
134
69
92
99
146
83
55
83
108
73
37
108
92
104
152
92
132
93
148
138
102
105
92
58
110
88
98
55
95
129
91
86
126
79
110
105
92
110
112
92
110
104
123
67
138
123
68
127
92
67
96
67
105
134
104
107
126
105
67
138
37
56
138
92
110
67
119
56
146
105
58
110
112
110
68
67
109
123
158
148
105
149
152
124
169
78
122
110
144
146
122
111
135
94
127
104
105
140
69
146
103
93
100
105
93
126
110
138
79
148
148
78
93
120
56
158
77
139
74
69
115
99
79
67
105
55
110
127
128
111
100
92
180
93
84
163
132
83
138
92
100
55
109
162
105
127
139
78
92
110
169
114
58
122
105
56
55
73
100
105
165
169
105
93
74
122
104
92
109
146
145
86
171
74
107
126
126
79
112
95
105
107
99
117
111
148
122
164
169
69
105
169
91
136
67
126
58
74
104
111
106
171
122
139
108
122
55
132
105
58
126
55
56
83
152
111
128
92
153
92
164
163
138
69
167
104
77
93
83
91
58
37
138
89
114
56
96
92
58
119
92
55
126
136
122
104
122
122
118
77
178
84
178
69
128
110
74
138
138
91
122
126
92
86
122
122
67
92
178
139
105
98
139
111
55
96
129
126
89
37
103
122
92
126
119
92
122
152
122
55
99
146
98
105
144
139
93
64
178
58
122
55
143
105
83
56
86
79
158
122
160
56
132
91
84
104
138
69
104
148
77
104
91
132
92
152
115
123
138
104
105
122
98
58
93
56
101
144
140
139
110
55
180
119
137
110
126
99
140
67
169
100
110
86
111
130
79
98
101
77
103
64
58
138
158
58
83
138
122
126
92
122
125
92
146
180
55
127
117
134
56
92
88
92
163
84
68
122
152
165
144
104
56
147
103
84
110
109
55
126
96
89
148
93
144
127
98
126
104
128
178
75
56
75
92
106
67
86
158
132
122
119
86
74
111
144
139
103
128
92
169
138
118
83
75
105
105
146
138
136
91
93
56
119
162
77
110
136
180
67
58
122
94
55
112
128
56
128
122
104
110
127
119
118
107
55
67
111
92
106
169
103
108
110
69
105
124
109
69
99
105
122
86
122
84
93
169
97
56
135
67
127
58
138
124
92
67
139
104
56
91
77
137
74
94
126
93
138
127
111
92
122
138
105
122
92
104
169
105
139
92
148
140
75
97
94
89
56
138
126
68
122
112
128
110
160
67
67
134
92
110
108
104
93
109
122
93
110
105
105
111
77
86
122
55
56
93
104
55
146
165
55
96
164
124
178
110
75
110
138
105
132
68
123
110
37
93
146
128
128
117
122
67
37
158
93
122
178
110
93
178
74
92
67
110
92
56
55
110
67
56
100
97
88
171
87
55
124
68
119
152
178
146
55
104
55
146
67
130
106
79
104
126
111
114
115
55
139
124
178
110
178
92
137
104
105
158
162
37
107
79
168
92
135
78
140
138
58
158
139
92
132
126
122
132
92
110
56
67
105
146
171
92
110
103
67
67
101
93
104
92
122
105
111
93
110
91
81
105
111
67
122
123
88
138
75
67
132
139
123
95
111
126
93
123
110
102
178
104
124
77
81
91
122
119
77
88
110
91
119
56
93
138
105
122
99
67
67
105
126
91
138
64
69
131
55
178
55
101
139
111
112
168
93
126
92
103
122
104
100
55
138
126
105
109
169
105
86
97
92
138
55
58
126
92
126
122
104
134
67
102
131
92
137
105
124
68
92
75
91
37
110
55
156
69
55
55
74
136
127
69
109
163
122
58
97
141
142
86
138
107
92
127
37
107
114
110
126
171
92
144
122
79
117
132
67
67
139
67
152
105
92
92
133
99
104
119
139
69
127
110
178
56
91
80
56
37
56
55
126
78
69
69
134
163
107
92
92
126
144
132
103
100
37
92
163
56
110
134
55
91
138
146
126
117
105
128
104
72
130
101
139
126
144
99
109
95
126
119
93
107
126
110
69
93
109
69
107
74
110
158
108
139
110
178
37
56
92
127
68
111
92
169
139
93
105
149
119
55
119
139
105
137
138
93
92
138
138
92
119
122
67
110
79
55
91
55
148
146
95
169
118
160
55
104
144
110
131
127
67
79
169
171
84
104
92
58
67
148
111
178
93
55
56
122
107
79
138
83
171
67
122
123
104
136
103
192
92
104
117
55
92
37
123
107
92
55
140
122
92
135
111
105
152
139
140
92
136
140
92
122
138
79
55
123
58
77
169
77
127
55
69
142
81
132
178
74
126
92
122
86
109
171
144
74
92
92
140
118
93
105
152
109
152
81
67
122
92
137
139
93
104
139
92
139
92
111
103
135
126
95
110
55
138
139
56
103
107
84
55
122
94
72
79
139
111
121
105
171
137
99
55
130
98
122
58
139
169
67
126
93
55
37
79
109
103
107
92
123
138
92
138
83
92
146
126
67
105
126
77
105
178
122
103
106
110
129
127
171
93
134
69
77
107
135
158
55
132
126
67
180
92
152
93
72
109
138
92
178
122
105
119
78
111
178
112
105
144
119
56
180
168
92
123
138
55
92
92
114
55
126
92
74
75
93
92
137
145
124
123
134
92
75
92
77
69
130
103
56
56
111
122
68
110
107
109
110
104
110
119
105
89
69
107
110
93
146
152
93
102
101
67
92
92
87
37
58
104
123
128
103
169
126
99
110
104
150
55
58
78
123
114
131
79
146
58
92
124
69
144
58
79
169
79
152
162
55
93
123
58
69
93
124
126
76
117
73
111
104
158
118
81
123
112
178
126
110
106
55
199
126
178
79
105
74
131
167
144
126
135
74
55
58
127
55
178
99
138
37
122
69
93
119
92
56
138
150
103
128
101
139
118
79
139
97
138
122
152
81
140
126
55
169
92
56
77
111
55
92
98
110
98
146
69
93
110
152
55
128
122
126
86
91
74
84
110
122
109
128
122
139
158
110
110
92
86
175
105
83
139
138
92
107
111
103
100
152
67
137
92
102
107
92
122
109
105
134
106
148
56
123
58
69
161
105
55
98
99
145
104
160
181
105
138
140
105
122
109
91
55
68
99
140
37
92
152
110
105
138
93
92
137
122
93
180
110
148
110
149
134
81
104
122
55
105
105
140
110
97
103
69
110
110
103
104
105
152
93
178
105
124
138
110
122
136
91
93
110
55
126
126
122
146
138
92
139
105
97
99
92
146
74
74
111
129
105
134
37
139
117
110
55
83
123
55
103
138
127
55
126
169
178
128
92
92
109
97
55
109
127
138
105
84
75
138
126
120
92
137
92
122
165
132
94
114
138
86
107
98
95
58
80
92
110
104
123
92
99
178
37
69
138
37
92
146
81
101
109
144
121
110
168
138
168
140
105
110
140
127
131
91
169
74
122
109
68
101
124
178
67
122
100
122
55
83
146
130
122
138
158
163
77
55
123
126
111
126
80
67
110
92
146
86
92
100
55
92
101
79
104
67
93
134
169
92
144
146
132
124
114
109
144
118
110
146
122
122
126
91
110
37
124
92
64
114
92
112
117
158
69
107
102
79
55
84
139
89
56
119
83
109
138
80
116
156
56
158
67
105
130
126
127
104
55
111
105
97
126
37
105
127
163
165
67
92
92
144
104
102
132
104
55
67
146
58
55
56
126
178
78
110
119
75
67
79
92
92
92
120
144
93
93
152
83
104
158
92
89
139
122
139
37
92
103
67
122
56
92
110
79
105
75
84
92
83
146
74
137
110
104
126
105
129
112
37
162
99
92
69
92
55
93
104
138
146
126
69
84
67
128
122
99
128
145
126
107
86
131
97
55
105
99
104
115
110
119
138
105
106
126
67
129
91
74
55
144
178
123
126
86
178
114
104
145
92
126
97
105
152
178
152
105
93
122
105
109
104
126
107
91
109
56
130
127
92
146
92
93
124
98
55
87
58
178
55
55
118
92
56
138
199
139
169
134
139
130
69
37
180
146
105
99
77
67
91
122
109
108
99
139
88
111
122
144
91
56
121
122
105
119
127
126
92
103
146
137
58
146
163
180
120
110
86
79
92
110
144
67
83
37
104
123
168
81
140
126
140
128
124
55
55
118
58
104
58
55
140
68
110
92
126
97
142
55
104
136
92
135
91
79
89
93
92
138
107
144
92
104
37
111
110
120
55
77
111
126
104
126
109
134
103
55
180
131
146
131
124
178
126
56
111
37
37
86
110
37
83
92
122
105
81
122
110
167
98
78
55
64
129
113
102
139
103
55
137
126
134
103
130
126
138
92
107
58
75
152
122
93
134
127
121
74
37
58
55
128
69
55
56
56
131
77
126
152
61
126
55
67
103
122
105
73
124
87
77
92
74
98
56
158
37
130
131
75
95
138
110
107
138
139
171
68
110
169
105
92
164
122
55
138
122
120
111
169
195
132
126
110
119
56
139
92
110
169
77
92
123
138
101
92
169
146
127
137
67
128
55
139
92
67
68
111
58
92
146
111
91
168
86
138
123
94
132
92
93
56
128
103
144
144
77
55
111
118
111
171
134
158
99
93
136
116
92
136
77
178
199
135
98
162
92
135
37
83
37
73
139
69
156
91
92
122
138
58
159
92
93
55
122
134
144
86
122
105
92
93
98
122
180
55
100
122
126
67
64
37
75
118
109
122
55
111
67
109
128
138
122
126
104
105
110
69
98
106
127
178
164
160
117
112
138
92
178
122
56
55
122
96
126
136
92
144
111
140
37
104
77
98
132
144
99
127
152
142
55
138
119
122
122
93
89
58
104
142
140
55
55
101
67
160
83
178
80
168
134
80
105
61
55
164
144
79
55
55
37
92
138
86
138
138
138
74
37
132
169
55
129
105
95
122
93
124
144
84
105
110
104
110
114
123
88
79
103
145
180
37
146
126
37
144
146
149
148
55
105
152
92
75
178
109
67
37
126
146
119
55
105
92
55
122
130
37
148
100
107
104
126
69
137
69
127
92
123
83
104
114
98
58
128
97
118
55
152
105
93
89
122
126
139
122
119
74
37
105
91
101
139
180
128
58
106
168
95
104
67
111
152
75
182
92
69
111
56
127
127
91
55
164
146
99
139
55
105
92
128
146
120
88
110
91
129
180
67
55
168
105
122
139
123
101
92
93
122
169
92
55
117
105
91
115
75
67
93
139
74
92
134
127
144
126
58
74
122
37
77
91
92
92
126
144
180
180
144
169
138
69
105
92
122
37
119
178
67
178
126
103
127
37
56
126
110
122
37
107
98
37
128
55
105
148
75
160
91
93
131
127
124
92
55
84
122
72
93
140
134
117
138
124
56
123
92
138
114
67
152
58
92
101
55
58
67
126
126
99
128
122
119
132
92
100
110
67
182
127
104
148
105
80
91
160
103
139
105
92
169
130
152
122
58
110
56
103
169
92
130
104
169
144
139
114
69
114
146
96
77
67
37
149
55
127
74
127
130
86
77
122
178
102
163
92
41
169
152
92
117
131
136
126
67
75
111
131
105
126
111
79
69
127
91
103
111
86
139
122
112
180
117
146
92
180
169
152
65
169
119
100
169
92
110
126
148
152
55
105
132
37
105
120
37
92
58
105
55
122
102
128
126
131
67
107
58
92
158
93
110
55
110
138
127
105
78
122
169
134
105
121
127
134
92
105
131
110
69
145
92
152
77
114
55
134
152
96
146
114
132
122
105
92
67
104
95
144
111
107
58
105
92
92
37
119
77
75
121
144
138
146
55
102
158
37
137
139
121
69
128
100
110
79
130
110
152
178
92
110
104
183
144
105
97
148
114
169
122
105
86
110
55
92
99
92
167
92
123
125
111
58
178
75
107
58
108
92
91
111
93
91
55
67
93
93
103
132
110
138
138
92
92
69
104
77
105
110
134
168
105
93
127
144
104
103
79
69
110
109
91
128
92
167
67
55
126
112
78
122
112
109
138
105
122
142
127
104
122
119
112
134
110
122
92
100
102
112
122
178
37
138
111
103
144
56
97
124
127
128
69
103
111
160
111
122
165
37
100
92
86
92
105
103
138
107
58
91
126
140
86
67
178
105
37
105
167
67
93
110
77
148
103
118
103
111
114
55
55
92
56
69
104
37
137
55
75
67
123
79
119
91
74
58
122
92
102
138
74
67
91
92
131
37
92
144
92
147
74
105
92
104
171
58
110
37
139
55
69
107
75
110
93
138
92
98
106
79
105
91
86
105
112
138
92
115
105
149
99
146
115
67
113
92
115
92
134
104
146
93
69
92
109
68
77
56
111
130
124
124
127
107
110
124
108
74
178
83
77
91
37
178
138
109
146
67
158
168
169
107
105
98
92
104
79
93
55
92
112
58
67
92
74
93
122
91
92
127
55
105
79
87
58
55
74
129
122
68
105
138
111
92
81
92
93
92
92
122
128
77
74
112
139
168
92
126
163
109
91
116
124
169
131
93
105
138
127
67
99
75
110
126
55
122
123
129
93
128
83
105
152
97
145
164
110
92
178
114
110
69
110
140
88
124
110
123
104
118
84
118
122
138
119
93
55
37
105
97
122
168
79
58
122
105
148
110
122
132
92
37
103
131
105
146
76
78
138
99
123
58
99
152
123
104
93
123
69
55
152
95
67
146
127
138
169
180
55
144
92
103
110
128
180
110
91
110
110
146
151
92
126
134
92
110
158
55
140
102
158
110
69
126
146
139
138
110
110
79
101
92
123
104
137
69
145
92
140
134
167
169
128
123
56
100
98
178
105
105
55
125
88
126
58
152
141
132
98
109
95
56
168
148
104
106
122
124
92
92
68
69
56
101
97
77
131
58
56
93
55
89
140
92
77
99
128
188
92
145
128
74
110
123
108
104
93
56
123
92
98
110
92
104
127
69
92
97
67
110
55
56
93
110
122
56
128
146
92
103
84
122
104
86
58
105
92
68
58
138
55
86
138
144
134
126
83
107
146
139
75
112
144
118
110
158
64
97
91
67
79
139
93
88
104
97
123
178
125
56
122
105
178
105
56
139
131
55
83
139
91
92
144
69
178
168
75
124
171
92
126
106
102
74
127
58
134
122
119
67
122
105
105
103
55
93
134
67
138
131
67
105
83
93
91
93
122
58
103
92
111
93
58
67
122
146
137
152
138
93
55
129
131
67
84
92
92
122
124
140
92
139
104
178
169
105
114
37
122
105
92
144
131
180
102
109
97
37
107
55
75
162
122
83
92
127
56
93
105
92
126
111
92
126
56
128
128
169
67
122
105
93
122
58
122
169
151
162
126
55
67
104
109
122
67
69
146
111
127
138
105
74
56
69
67
55
128
98
149
141
75
98
139
92
79
69
136
56
111
97
136
105
74
148
122
93
92
84
122
128
92
105
104
83
55
55
134
110
92
146
37
37
107
93
152
99
105
110
88
178
97
84
144
140
58
168
55
37
132
144
126
152
109
77
105
67
118
105
107
107
124
169
75
140
67
55
37
126
91
110
138
100
92
93
117
86
136
86
89
122
77
93
105
96
139
180
92
118
152
144
93
105
104
146
122
122
123
178
104
67
92
107
79
126
178
67
93
114
169
105
107
107
199
92
110
144
92
100
105
55
178
171
105
55
105
152
55
146
105
58
94
122
55
93
130
92
122
105
171
67
104
139
146
56
146
162
105
58
142
110
105
58
105
178
58
123
152
74
139
56
97
149
138
93
152
127
130
138
92
92
122
163
109
55
126
107
109
84
167
139
67
58
92
91
58
139
109
92
58
55
152
55
75
138
104
74
110
113
139
106
92
93
126
139
104
67
69
111
68
136
139
58
93
106
139
92
119
169
93
119
110
118
92
93
84
110
79
110
69
77
99
188
75
127
74
56
92
138
105
138
123
127
100
104
131
55
55
92
56
86
67
122
106
112
86
37
99
105
139
92
107
146
77
122
111
37
55
163
144
127
138
165
106
144
104
56
67
122
137
55
138
55
171
110
138
148
105
92
127
84
144
55
138
55
138
178
104
138
124
105
148
67
156
104
122
109
56
144
104
165
126
122
126
74
178
152
37
125
79
69
37
74
74
139
37
139
122
130
68
180
104
93
109
132
69
99
127
128
86
104
127
118
109
109
127
127
128
126
67
122
92
144
126
37
92
168
139
92
81
126
55
92
67
119
144
137
92
109
92
92
146
111
77
137
122
127
158
56
134
131
115
74
117
83
126
127
105
111
104
144
104
120
110
107
55
55
58
178
111
86
126
142
56
126
131
56
139
152
41
87
146
91
138
93
91
55
104
124
158
122
104
109
92
92
104
139
79
122
55
74
104
107
81
197
180
118
55
105
110
128
92
122
130
92
107
105
92
78
126
79
104
128
68
127
69
93
67
105
122
105
163
55
126
110
105
92
92
160
105
122
146
92
141
58
128
132
91
110
110
158
148
127
58
118
169
126
101
169
151
67
55
111
111
58
123
132
106
128
104
55
56
105
104
106
112
75
93
77
169
114
177
89
178
92
105
126
37
68
74
140
129
126
108
134
140
92
92
55
162
79
120
141
138
86
86
104
105
152
107
55
67
68
121
95
93
123
100
92
58
68
104
139
92
152
128
55
110
104
58
178
55
75
92
102
146
105
93
67
144
79
127
162
122
123
139
171
104
58
37
122
110
105
139
75
112
152
56
132
126
93
74
105
92
124
67
178
144
118
104
162
64
109
127
67
148
74
152
67
138
69
122
78
67
67
67
105
55
138
138
92
86
98
140
100
75
93
67
105
91
104
67
75
58
58
55
107
88
110
69
111
93
84
108
152
55
144
138
68
124
67
168
105
110
67
110
152
160
92
67
86
138
92
126
99
77
111
91
104
74
55
144
135
67
102
178
56
67
108
160
162
93
56
103
120
114
108
56
92
122
180
91
55
92
123
99
77
164
104
122
127
37
102
126
104
68
169
99
119
55
67
79
105
80
122
128
138
92
104
111
124
138
158
84
123
127
110
127
113
92
79
144
92
146
122
37
105
93
56
134
104
105
110
93
68
74
80
139
139
37
74
105
103
110
146
81
178
119
68
100
74
130
67
119
104
69
83
123
56
169
129
109
138
122
56
122
86
93
114
56
122
126
103
55
117
199
122
86
55
37
69
128
127
146
100
77
105
120
104
69
105
122
56
55
55
86
158
95
86
127
124
144
55
152
92
110
126
92
93
69
114
126
120
103
93
127
107
104
122
56
97
118
107
111
122
153
103
141
67
105
139
74
144
92
67
171
123
92
77
101
93
112
119
127
74
92
79
55
139
136
139
75
67
91
146
92
109
128
162
105
104
85
152
122
178
131
75
55
139
75
128
119
128
169
92
121
101
105
138
138
104
131
110
105
56
110
104
93
91
92
135
55
110
80
55
148
92
178
55
78
75
93
56
111
110
104
126
105
95
101
56
123
104
128
113
111
131
67
92
130
152
109
146
93
105
152
126
138
139
139
92
107
55
105
110
138
37
89
55
55
167
162
118
122
37
37
92
122
128
110
178
152
129
125
55
168
122
56
100
145
67
178
169
151
103
180
122
188
67
93
127
93
104
69
106
93
102
126
101
92
98
94
169
122
74
154
92
119
123
92
112
87
126
92
110
119
140
92
134
91
77
178
67
126
119
144
120
55
139
180
178
104
79
199
129
169
92
138
67
77
146
87
107
122
92
57
120
111
92
138
105
107
55
126
97
111
56
80
93
134
146
110
96
126
74
105
105
126
123
86
55
142
79
86
110
86
92
93
56
110
131
67
56
126
169
56
105
178
146
74
55
92
111
139
122
110
56
110
102
122
55
140
92
64
92
105
141
104
138
56
162
122
152
79
138
152
139
149
109
126
92
99
124
100
56
79
108
104
140
122
135
111
56
92
79
77
169
122
100
105
136
58
140
55
145
55
146
55
111
109
114
92
110
115
92
78
55
55
123
178
86
105
56
122
110
37
91
67
58
92
120
115
178
92
127
55
55
136
131
130
92
37
117
56
122
122
136
75
146
119
104
105
129
37
122
77
133
101
56
126
55
79
127
111
128
111
58
110
58
84
138
102
180
67
132
122
74
84
139
105
123
114
123
56
67
68
99
107
126
110
95
89
123
111
178
105
109
169
79
126
109
180
128
111
67
112
56
67
180
110
168
122
145
92
110
111
126
92
122
55
75
83
69
148
138
105
76
122
126
152
144
86
123
108
138
122
178
110
37
101
91
67
122
144
55
102
56
56
126
169
74
99
92
110
110
104
119
84
55
144
89
122
146
146
134
128
99
108
114
83
105
140
158
126
103
122
67
58
92
171
67
102
56
128
123
55
101
75
80
124
126
56
137
37
148
152
104
92
75
93
94
110
139
91
127
97
98
55
131
37
56
108
138
81
55
131
122
55
105
93
124
91
67
92
56
152
105
128
92
178
124
55
88
130
86
130
103
58
138
79
139
110
146
110
128
138
105
55
126
119
110
110
55
106
107
67
92
56
91
81
95
105
145
58
120
138
148
110
69
110
127
138
37
128
122
178
178
79
79
110
144
144
122
74
148
37
126
37
126
89
110
92
119
97
121
169
104
110
79
105
67
55
152
56
122
93
56
86
92
126
104
93
126
126
99
144
117
58
123
41
171
100
122
102
69
68
122
139
119
37
55
129
84
92
161
102
92
188
144
83
101
93
120
126
92
135
83
94
92
122
86
139
122
89
122
92
188
127
74
126
84
93
138
105
56
92
138
67
122
92
55
126
100
144
126
111
99
110
109
55
106
138
149
67
55
128
128
67
105
130
152
74
134
58
169
56
91
93
105
104
56
188
126
56
110
126
119
122
119
146
127
99
105
67
122
67
37
140
126
89
105
131
139
68
68
91
91
105
79
181
67
92
158
55
68
106
152
105
64
145
107
178
105
83
101
122
118
128
110
156
105
105
126
110
128
92
94
122
110
139
69
122
126
72
101
75
114
188
122
55
105
165
55
37
126
75
128
139
152
124
108
110
99
127
152
100
148
99
92
56
104
92
37
55
104
55
77
127
169
104
110
55
163
119
92
142
58
125
165
55
80
132
138
121
103
138
126
79
92
100
111
55
99
83
109
58
82
100
110
120
122
75
148
101
118
144
86
55
178
127
92
81
123
122
92
138
67
86
146
104
105
122
67
75
58
83
109
84
79
134
105
56
128
93
134
120
144
88
56
77
79
122
122
129
169
86
199
110
138
55
106
69
92
78
119
169
56
178
152
74
37
67
99
74
37
111
105
122
92
126
127
91
139
103
126
58
115
163
110
110
119
142
127
75
69
104
67
92
55
138
86
67
137
55
177
84
110
119
179
137
92
128
55
86
98
56
58
119
178
139
139
123
109
67
138
150
75
37
127
92
178
99
92
147
107
55
92
83
110
138
127
91
140
55
67
171
138
111
120
148
127
104
120
92
127
75
55
107
132
110
55
83
55
127
83
130
137
69
151
123
146
69
68
122
74
132
152
146
74
123
113
93
93
139
56
127
140
96
103
138
126
104
130
37
93
58
55
92
99
101
130
126
55
92
58
122
140
56
109
122
138
79
92
74
55
104
103
105
178
86
146
75
69
140
126
58
91
100
146
160
126
126
98
93
97
152
92
122
199
69
139
56
100
178
127
79
127
131
93
138
86
58
111
91
93
105
92
84
111
144
122
92
83
126
178
97
77
97
110
130
138
81
148
99
117
92
122
139
67
127
110
55
92
55
171
55
92
107
92
58
56
76
92
84
92
109
127
102
110
104
126
130
97
110
138
136
105
67
105
101
92
111
92
55
74
100
119
128
138
109
92
122
136
86
105
171
55
75
158
130
37
138
139
148
126
122
79
135
103
147
138
119
122
100
110
97
110
102
179
123
110
37
91
103
138
146
168
55
110
134
93
135
110
67
110
92
122
199
125
92
37
58
58
37
163
144
109
92
84
79
127
56
127
122
126
106
148
56
151
144
101
138
126
131
169
163
112
114
95
127
110
150
136
99
139
140
92
79
148
152
67
122
79
122
105
117
55
122
122
83
93
127
160
122
128
139
105
92
86
182
142
122
93
111
93
55
128
180
74
97
83
138
146
41
92
152
146
114
139
92
104
93
139
111
140
111
93
105
141
110
67
111
169
127
74
111
107
126
134
88
163
67
162
146
91
110
127
97
83
80
144
81
152
136
93
122
122
55
37
92
86
92
126
139
67
122
92
87
138
58
105
126
105
128
55
168
79
138
99
78
55
122
111
99
86
122
111
100
128
107
118
100
130
92
146
132
126
97
106
55
126
178
146
100
169
131
86
86
139
178
122
73
110
92
125
92
86
55
108
146
118
69
146
37
123
87
56
123
109
93
134
163
123
171
69
58
91
144
115
106
93
58
58
68
67
92
140
55
104
104
83
126
127
58
77
112
83
110
127
88
122
127
103
97
95
117
125
107
55
92
139
92
91
92
80
123
104
75
128
56
138
92
136
79
122
122
110
37
122
93
110
92
124
84
112
67
113
110
119
91
110
56
55
144
169
108
65
37
79
110
56
111
91
138
37
37
92
171
127
126
105
146
86
118
148
122
74
67
55
93
92
37
104
144
110
105
103
110
93
86
78
55
92
89
100
144
37
92
98
89
113
105
131
126
86
130
92
93
92
67
115
122
127
92
111
105
122
55
104
92
106
77
124
92
92
92
80
88
92
58
152
178
126
140
69
89
126
67
74
107
107
145
93
122
55
119
110
84
69
118
86
126
138
92
168
139
56
110
128
104
91
67
111
124
109
104
126
110
128
123
93
105
104
68
127
130
110
138
69
122
56
67
126
148
136
134
111
101
123
67
158
162
148
110
165
92
125
83
67
132
109
67
105
126
99
104
104
140
67
98
102
55
104
108
109
169
138
140
37
122
178
138
167
122
92
138
152
163
138
75
148
92
58
199
122
74
83
104
109
110
126
114
117
107
93
93
92
92
110
127
120
92
122
79
92
144
58
110
110
107
135
68
92
105
92
152
125
104
92
92
165
136
148
128
127
79
105
178
105
107
86
128
37
112
92
67
92
67
67
156
55
79
132
139
92
119
111
123
110
171
114
126
69
86
146
55
138
110
132
55
144
107
55
93
86
140
138
92
139
137
79
109
127
163
110
122
98
37
139
145
101
119
102
126
104
136
99
110
112
92
55
104
178
136
169
178
126
69
55
104
92
88
92
104
115
92
92
92
74
74
95
67
56
122
92
112
128
125
122
55
126
67
92
146
92
126
86
68
55
79
93
37
56
37
55
122
105
103
104
67
92
145
123
55
67
86
86
126
110
93
55
122
178
89
178
138
158
58
105
105
111
178
167
93
93
118
105
122
56
92
138
87
164
138
111
139
55
56
107
56
107
139
119
92
103
86
56
122
67
138
122
84
69
126
83
92
124
79
106
69
140
119
92
67
110
86
146
128
58
69
146
138
58
74
152
123
126
179
105
104
86
92
126
138
86
103
67
75
126
144
152
122
123
119
122
79
111
77
84
97
101
105
55
126
162
139
126
105
146
75
105
105
92
120
126
112
92
182
126
105
109
124
91
104
119
74
107
140
103
58
104
58
83
93
98
105
78
146
92
56
107
76
122
101
109
37
122
56
126
92
69
105
92
92
93
105
75
99
37
56
103
109
79
144
55
124
110
56
138
114
103
99
126
152
79
105
112
136
98
130
98
122
92
122
93
168
58
145
145
55
75
92
95
79
144
105
37
102
126
127
110
152
93
111
111
106
110
105
111
67
114
56
144
105
107
58
124
55
81
105
110
164
91
105
142
158
73
122
91
124
114
140
138
169
122
134
122
136
146
139
56
105
55
56
105
119
58
92
55
91
139
58
67
114
131
122
102
103
110
110
67
110
148
138
109
128
111
139
89
129
58
127
124
55
146
69
91
93
92
138
149
95
92
105
103
92
169
103
99
86
127
105
86
100
91
144
110
107
114
104
76
101
110
114
138
138
92
178
92
178
138
88
124
81
180
129
120
105
124
93
124
67
55
92
111
97
58
56
110
138
92
75
171
75
88
56
122
120
74
79
179
144
146
99
123
74
75
114
110
105
119
110
105
77
67
92
112
55
86
122
132
69
160
68
74
178
131
127
110
138
84
83
67
93
122
88
122
79
107
111
86
138
92
92
146
122
92
93
91
92
138
112
128
106
122
112
81
89
92
98
158
104
93
110
126
103
93
79
111
156
144
128
74
122
115
93
74
122
169
91
75
122
110
104
55
139
122
119
122
99
37
105
85
142
192
122
126
144
138
152
162
92
130
140
119
92
86
92
138
152
115
136
105
55
37
138
100
77
104
192
127
93
64
105
144
171
110
67
67
67
138
56
99
138
110
178
139
55
103
77
122
111
126
84
127
105
103
58
102
77
127
102
99
144
122
80
139
126
182
122
138
178
142
138
55
140
138
85
104
100
91
112
69
138
55
106
122
55
144
102
92
91
144
134
132
107
92
178
122
137
109
163
122
93
152
122
98
77
55
178
93
55
56
123
136
92
105
138
134
58
55
83
37
122
55
67
130
83
102
105
68
127
110
117
142
95
147
56
107
138
37
99
37
138
122
134
114
56
137
79
144
127
102
110
110
126
92
110
95
122
105
55
139
92
67
91
110
118
92
84
55
127
138
91
92
81
106
74
110
86
130
37
118
110
121
139
135
105
178
138
113
75
122
168
138
158
67
67
105
110
81
112
119
119
97
69
105
77
77
55
104
92
104
69
110
56
81
74
158
55
106
105
118
55
77
146
99
67
123
93
92
92
102
110
75
122
122
128
180
107
130
58
55
67
126
140
132
89
138
126
107
169
163
114
138
128
93
58
119
76
92
37
67
92
119
109
178
69
89
123
104
55
91
146
113
93
152
58
69
105
37
93
104
152
122
67
171
135
136
92
92
148
37
58
122
138
92
86
119
127
92
145
93
55
92
92
86
67
119
55
58
101
117
89
122
107
92
138
64
126
169
107
104
98
89
67
139
107
75
55
100
67
37
130
127
140
119
92
110
58
92
55
179
128
168
105
56
149
126
98
37
199
128
129
104
98
149
92
126
92
115
74
37
93
122
103
93
111
74
75
111
139
123
138
105
55
104
88
74
86
69
122
109
136
109
147
144
122
110
134
56
140
123
111
75
126
110
110
109
139
126
128
178
149
92
109
55
130
110
67
58
110
67
105
107
105
152
92
107
92
105
101
91
119
105
86
97
126
81
127
169
135
110
86
115
132
105
92
120
107
130
153
188
58
128
126
55
144
105
107
105
99
126
169
110
110
169
55
119
140
129
68
171
134
110
56
109
97
109
109
105
118
75
83
178
140
148
68
105
55
92
146
104
92
55
105
55
105
132
37
86
138
67
178
92
92
89
112
68
110
55
91
92
37
93
149
67
136
125
104
37
158
169
117
110
169
138
111
69
105
122
55
87
106
80
148
105
126
56
126
104
110
182
112
163
130
103
111
169
67
140
75
101
37
110
74
103
110
136
180
37
138
131
55
131
122
134
126
55
125
122
83
92
75
104
56
74
104
68
55
69
111
126
92
55
152
139
37
79
37
118
126
163
93
137
74
105
111
74
106
104
105
75
83
86
110
110
69
178
92
141
94
92
127
123
122
138
128
91
124
125
56
93
37
126
178
92
77
146
122
107
134
168
58
110
92
163
114
55
141
103
151
169
37
55
122
77
123
144
104
135
111
55
102
89
118
169
92
160
67
144
126
92
122
92
98
99
144
55
112
99
127
112
144
58
127
113
126
92
122
75
169
105
126
89
103
124
98
110
101
137
92
141
91
91
58
55
138
122
67
140
58
118
126
112
110
152
121
67
123
69
118
69
146
138
108
110
92
95
92
111
68
107
105
79
178
199
77
129
127
128
94
149
167
138
146
56
105
67
77
55
77
77
130
109
67
146
37
134
55
105
84
128
103
93
55
69
68
98
91
123
178
122
69
99
92
55
107
79
67
79
146
169
178
55
92
101
169
87
56
163
97
127
138
118
93
101
182
55
165
67
67
128
75
178
74
91
79
104
55
122
100
110
109
112
77
123
58
134
58
84
131
144
114
98
138
79
132
139
91
126
123
128
99
178
127
69
152
55
138
111
84
122
83
100
126
55
93
128
92
130
55
134
119
138
130
126
92
91
92
134
55
37
146
111
122
169
98
104
92
92
139
105
58
68
104
104
103
158
132
55
118
123
122
127
89
110
122
86
132
99
67
144
79
56
122
110
100
37
91
128
106
120
126
92
107
56
68
146
123
169
122
122
119
158
67
97
58
95
101
109
74
109
136
55
93
99
92
67
75
146
88
126
110
104
104
110
55
144
93
105
128
140
37
91
56
111
92
113
92
110
111
152
55
55
77
123
146
56
138
93
107
92
110
86
126
97
67
105
92
122
89
152
55
128
55
144
140
139
110
139
110
92
56
56
106
79
111
99
108
37
119
37
162
188
83
110
104
104
69
37
78
97
126
138
171
114
110
135
117
104
75
92
67
107
167
139
92
68
141
121
178
134
113
134
92
86
79
89
108
139
58
152
56
67
103
93
109
74
92
55
104
138
91
123
128
92
67
58
138
67
55
56
144
58
105
182
58
139
122
104
139
146
107
111
110
107
136
93
110
130
104
138
126
67
110
67
123
92
104
105
142
148
56
103
56
86
146
74
69
92
100
56
126
92
84
74
105
105
111
105
104
149
104
84
138
119
122
178
169
128
99
110
105
104
132
158
93
114
127
146
138
122
178
92
108
99
108
138
131
67
128
119
111
67
105
110
88
119
127
84
37
107
139
88
99
79
104
107
107
146
92
110
126
151
180
67
144
37
104
119
126
55
92
55
144
110
37
58
152
111
55
138
146
104
138
126
119
104
128
77
122
105
123
92
105
110
126
139
93
55
109
92
110
126
105
148
91
109
86
152
122
55
104
122
99
96
37
67
125
74
68
37
126
56
138
111
69
92
123
86
55
130
138
122
146
56
122
97
56
104
103
92
67
145
126
76
67
115
139
37
67
105
137
113
164
79
67
58
79
146
68
67
93
77
131
128
117
86
162
93
118
107
105
55
56
171
77
122
115
93
117
37
104
93
138
37
138
58
124
91
110
152
77
140
105
114
55
136
93
110
145
138
92
169
126
139
146
55
111
37
135
178
86
122
138
114
37
55
81
105
169
112
91
132
92
104
164
119
91
109
131
138
163
152
93
178
122
129
79
88
128
67
102
129
83
97
92
104
92
55
130
104
105
55
67
85
98
122
93
123
92
68
80
122
165
92
138
92
92
56
126
142
136
105
138
92
127
92
126
167
188
126
110
37
140
160
124
126
56
92
136
126
110
128
123
138
77
110
56
69
74
104
126
114
125
92
104
94
74
93
75
58
152
110
126
56
139
111
58
104
56
86
128
107
105
103
37
140
139
86
135
162
138
92
92
110
162
178
122
119
67
105
138
86
74
122
126
105
37
55
126
117
110
86
67
146
95
92
91
75
69
79
144
79
98
125
126
55
56
112
128
99
86
122
92
124
67
150
140
104
146
56
146
111
120
178
104
74
67
37
110
67
110
125
108
92
178
111
111
93
74
139
126
152
178
120
109
122
93
110
55
67
171
58
134
56
104
123
55
162
56
109
79
122
107
144
67
37
122
80
110
146
136
171
103
109
139
126
92
114
168
122
92
79
104
77
86
127
105
169
118
122
152
104
110
151
144
126
139
139
126
67
115
110
86
122
93
126
68
118
126
91
104
58
132
110
74
128
67
118
171
109
131
86
171
77
105
75
86
127
58
67
105
79
97
169
178
110
148
93
110
139
93
125
134
163
79
188
119
124
126
92
138
127
104
55
105
126
103
151
78
131
126
120
55
91
178
122
178
105
128
119
110
146
105
134
92
92
69
134
119
67
127
104
93
99
119
67
122
135
93
68
103
111
86
79
58
56
92
107
144
110
122
131
105
92
124
55
105
134
74
128
126
79
109
55
130
93
105
55
97
138
138
103
128
122
139
139
105
104
87
152
127
92
102
55
105
55
97
134
55
160
92
91
104
67
83
99
122
126
104
127
138
144
84
69
67
117
69
110
120
152
56
178
104
92
139
68
93
103
126
178
128
81
86
112
104
126
146
92
92
146
98
67
108
131
69
110
178
123
83
119
163
122
108
112
110
105
127
37
144
111
55
126
86
100
105
56
92
55
105
178
108
148
93
101
64
139
105
92
119
74
67
68
178
146
91
139
67
37
67
111
148
74
128
178
109
111
92
126
105
93
56
110
92
112
138
56
178
148
146
127
126
92
122
92
74
105
55
92
124
123
93
56
180
122
142
105
156
171
108
96
126
138
37
105
104
99
105
152
128
55
122
130
110
56
105
37
119
74
55
104
69
77
179
114
37
144
92
140
178
69
92
130
80
124
146
55
68
138
148
107
67
92
124
110
99
67
67
120
86
97
69
92
127
67
122
92
126
127
74
140
37
160
152
178
126
37
152
146
144
92
122
156
105
92
178
110
126
180
55
128
128
130
104
110
105
69
105
89
56
92
56
99
178
117
83
168
106
178
58
138
101
123
92
79
139
55
92
92
87
92
126
126
55
128
109
138
88
110
103
77
160
110
122
92
77
180
130
169
105
109
104
127
110
140
105
67
92
92
102
111
126
79
114
77
160
110
127
144
122
138
105
126
152
146
73
104
77
127
134
146
139
148
88
83
108
67
92
146
91
110
69
56
126
105
79
119
179
140
99
93
92
146
123
67
138
122
110
197
144
93
107
126
128
104
105
86
92
55
105
91
110
112
127
92
67
104
103
97
128
89
99
56
92
99
145
122
146
104
122
146
138
92
138
55
105
41
169
69
126
178
58
130
139
110
144
122
140
107
104
122
146
109
55
126
37
122
81
110
140
67
137
105
128
126
163
122
106
138
92
77
118
95
152
67
55
144
93
58
106
132
103
77
111
110
122
92
127
114
126
55
88
131
127
105
67
110
152
93
107
123
92
119
58
74
167
56
56
128
122
68
122
67
178
105
127
92
58
103
77
124
69
93
69
80
92
110
141
126
105
130
110
77
56
123
107
142
126
126
128
75
123
91
91
79
67
111
91
122
119
92
105
132
55
92
97
67
146
138
126
93
140
99
169
107
89
110
126
169
86
124
138
67
93
121
67
134
103
68
111
158
67
130
91
92
92
55
134
178
112
126
177
56
142
88
126
126
139
152
92
92
86
55
118
37
56
112
129
77
169
131
105
110
93
69
55
58
105
69
122
122
110
139
108
55
101
128
144
104
167
167
79
92
140
67
104
56
58
74
55
88
102
103
150
99
119
93
110
110
56
165
126
102
114
122
110
168
107
99
137
113
103
122
162
140
75
68
135
37
180
105
138
119
86
138
104
93
146
143
126
105
77
127
67
58
37
126
56
68
127
56
92
126
127
55
81
178
37
167
67
138
55
147
86
56
102
131
68
105
146
92
146
91
126
37
122
37
130
55
105
68
178
163
93
92
147
56
144
177
110
58
152
92
92
83
55
140
92
104
55
131
126
79
99
92
134
138
140
126
128
150
67
119
119
134
79
67
105
144
93
144
109
107
152
146
107
120
171
146
123
55
128
123
138
138
111
169
99
115
37
56
56
122
92
80
56
91
110
37
178
126
128
108
188
126
168
105
79
178
122
75
136
144
92
55
103
138
74
91
84
89
37
171
146
92
139
126
104
112
92
91
128
79
37
65
74
92
168
67
164
119
105
120
144
92
160
55
105
126
130
111
127
114
68
115
69
103
138
92
114
144
138
58
122
104
93
110
58
104
92
98
134
160
79
126
139
83
92
180
140
122
103
109
122
99
84
69
168
74
146
92
120
92
56
101
77
138
105
57
69
144
126
67
108
67
110
55
104
122
117
105
141
68
56
104
77
110
129
127
77
130
118
92
92
104
106
86
91
132
92
127
56
112
110
68
123
106
124
139
120
115
75
107
86
97
138
55
56
64
110
126
135
127
77
92
135
56
139
92
105
92
149
109
119
84
122
55
152
105
67
139
105
93
74
115
105
123
92
67
123
171
122
138
168
109
72
119
111
58
123
103
104
58
104
126
168
56
77
58
86
92
146
108
37
126
58
105
93
56
140
105
110
74
77
55
56
93
126
137
93
67
126
92
124
55
37
109
86
107
118
109
122
126
148
128
119
138
69
74
108
77
134
100
111
124
58
91
107
111
92
92
182
86
102
114
67
92
55
37
97
168
126
178
79
152
92
122
104
120
55
119
55
92
97
58
80
112
178
56
162
102
126
107
122
108
110
140
144
178
97
140
88
110
138
77
100
83
86
103
56
110
58
123
72
110
67
92
104
140
122
127
75
126
152
111
81
178
99
119
92
126
124
123
71
92
55
99
107
76
145
92
91
169
92
132
144
138
122
180
58
144
104
94
122
95
58
92
104
112
101
92
69
144
152
112
105
123
109
152
132
144
163
56
122
138
128
114
100
100
139
152
119
92
119
92
132
56
105
92
169
123
169
99
146
58
93
127
55
86
144
105
143
109
168
134
105
78
110
118
107
92
121
58
104
126
68
93
122
102
122
105
139
56
74
68
98
152
114
110
126
123
139
142
127
126
134
120
81
122
104
83
56
55
139
132
127
93
119
67
180
37
138
92
140
92
37
109
110
132
105
99
131
92
56
93
72
124
148
75
107
67
69
75
105
171
83
77
91
171
93
99
103
110
127
37
37
101
93
146
92
124
107
138
144
147
58
92
128
56
134
132
67
127
128
67
168
92
92
79
163
99
83
108
158
98
119
79
92
67
91
92
69
104
126
92
138
127
87
111
91
56
144
68
68
105
128
92
146
105
92
110
169
178
122
139
142
109
104
132
138
122
132
99
110
93
160
105
138
75
99
110
123
123
104
109
109
120
117
110
135
103
101
110
152
74
93
122
92
104
92
138
89
124
99
124
122
163
126
144
123
89
139
67
74
88
138
67
89
69
77
108
107
105
77
55
74
134
158
171
105
93
146
67
69
84
122
75
126
147
126
86
109
112
180
126
131
169
124
56
105
58
100
178
126
55
128
112
95
151
144
104
139
111
112
148
56
169
144
110
73
93
107
79
110
92
79
79
169
178
162
135
163
99
92
75
92
156
102
169
140
105
110
134
64
110
37
131
148
77
99
68
77
104
97
112
76
138
91
92
152
55
152
146
122
79
56
67
91
110
102
122
74
109
92
103
138
69
145
55
119
56
130
122
96
86
95
122
69
101
103
55
110
111
93
134
178
122
93
148
144
83
107
111
163
37
99
75
119
99
91
134
134
68
74
110
77
72
105
67
55
112
97
158
105
92
55
158
78
138
124
79
58
127
110
37
55
110
58
89
83
102
105
93
92
56
92
81
67
105
67
79
81
91
126
77
126
55
86
58
128
123
138
92
127
111
122
105
55
114
91
178
93
130
55
69
58
93
92
144
122
153
112
92
110
69
104
56
169
178
130
81
55
140
37
130
152
69
105
79
93
56
123
119
97
77
104
67
68
130
140
104
93
105
55
158
81
92
110
148
92
93
139
37
97
105
144
109
127
107
128
126
144
122
138
126
92
89
134
107
92
72
138
124
101
110
110
92
139
139
110
169
110
109
105
55
123
126
93
105
37
103
92
128
127
92
105
93
146
103
67
102
124
124
156
149
144
100
37
110
110
56
140
145
92
55
112
124
91
37
110
55
178
69
93
139
105
124
91
152
67
55
131
122
99
110
92
127
67
144
131
68
79
55
127
111
164
55
146
127
139
122
138
103
58
68
178
107
144
138
92
56
152
136
130
94
95
56
139
92
127
87
177
139
89
92
93
111
153
122
86
169
76
111
110
171
55
92
122
110
122
144
105
128
138
75
77
135
92
180
105
126
178
102
124
112
142
142
56
148
67
75
58
105
126
149
83
67
110
55
83
92
69
152
67
92
105
164
37
86
122
168
37
92
127
93
169
109
74
147
128
74
77
68
138
58
115
144
139
139
55
94
56
77
123
123
122
107
127
127
79
105
119
125
123
105
112
79
91
92
148
105
110
139
126
142
101
104
104
98
138
134
93
86
110
79
144
144
144
129
92
56
127
139
67
128
158
103
142
55
146
103
138
145
93
75
122
55
126
123
75
100
152
56
37
132
69
165
144
109
134
127
128
83
58
138
55
98
116
58
67
128
97
127
110
117
111
126
147
138
101
92
92
114
92
105
56
58
99
110
122
127
139
138
138
110
112
138
110
117
110
104
75
119
117
108
128
169
105
55
122
140
120
158
68
119
56
55
138
119
58
67
110
77
126
75
126
93
37
119
67
158
55
56
67
139
127
107
55
37
69
148
119
55
69
67
91
104
122
134
55
56
122
119
56
110
92
75
104
138
124
56
111
111
92
105
138
178
86
111
93
171
92
110
104
92
119
86
168
75
122
92
85
104
146
105
169
56
93
37
138
56
124
99
107
146
178
98
156
109
67
144
105
67
56
160
92
91
99
97
117
67
120
123
105
37
107
110
140
122
91
148
98
105
91
143
109
104
69
92
93
109
92
104
72
100
119
105
105
144
126
110
88
110
105
93
171
152
105
145
122
110
58
152
152
144
132
92
69
122
55
110
168
178
160
37
171
92
107
138
144
126
74
92
169
91
122
137
109
92
99
148
199
86
111
112
92
91
126
55
108
37
148
119
122
110
99
37
139
69
68
126
131
95
168
108
111
92
55
55
67
139
92
105
84
92
67
55
122
56
86
138
107
122
79
126
138
138
111
144
123
67
93
105
158
123
151
92
75
67
119
149
178
144
126
139
111
67
128
120
88
92
138
146
103
122
55
93
95
128
139
138
124
86
118
146
109
127
123
93
37
126
139
69
37
68
126
144
130
83
136
79
178
137
55
135
130
37
138
69
110
69
93
97
123
128
112
74
126
86
171
149
55
122
123
105
123
148
126
126
92
105
126
93
132
111
67
92
67
91
97
92
110
138
110
92
139
138
105
55
89
92
56
105
105
126
79
55
111
92
104
144
56
123
138
109
91
56
158
137
119
105
123
69
126
98
102
146
178
104
131
168
122
67
58
69
67
144
126
75
110
127
178
122
188
138
105
68
56
67
56
93
105
55
86
122
88
128
119
127
144
78
134
126
128
126
98
178
92
37
119
126
55
105
93
92
73
123
81
140
79
168
199
152
144
144
93
37
107
126
93
97
139
126
132
80
114
146
105
86
117
37
83
105
109
111
180
77
118
109
69
169
105
139
134
122
144
169
123
105
126
136
68
134
93
86
55
91
103
117
105
92
104
180
91
144
136
141
105
139
58
104
107
93
130
148
119
144
110
107
108
55
126
67
104
93
103
169
104
145
138
150
110
105
128
134
122
68
92
106
92
148
111
138
92
109
105
158
107
72
69
144
110
127
128
109
122
108
126
103
92
126
67
140
178
56
55
55
178
144
97
149
122
75
105
84
97
69
126
56
119
69
128
117
120
67
119
149
158
178
134
55
93
83
138
92
83
144
55
55
118
55
95
135
129
37
58
58
79
75
152
88
92
101
77
77
107
138
105
75
122
127
138
126
110
117
109
55
126
83
92
124
92
56
125
104
128
120
123
55
56
158
93
124
110
128
107
99
91
134
79
119
67
106
55
93
119
69
127
93
94
132
128
88
69
111
134
119
134
92
74
178
77
169
123
55
110
67
178
138
128
123
92
55
91
68
107
124
122
75
146
74
144
101
127
155
119
55
122
122
56
92
134
178
77
105
83
100
93
178
56
55
104
56
77
55
56
146
130
55
69
139
97
92
151
111
99
138
92
91
120
139
180
92
127
135
56
125
67
140
37
138
102
92
98
78
103
109
78
93
74
67
101
144
101
55
55
146
160
138
128
110
140
120
169
171
67
74
93
93
104
107
122
140
119
110
37
134
119
92
93
92
126
93
158
178
116
110
55
83
56
56
79
146
112
135
93
37
56
111
138
110
134
94
37
140
140
56
134
108
89
107
105
106
126
168
81
119
112
169
55
122
119
67
79
104
67
110
105
126
160
67
67
169
93
102
127
120
145
93
144
79
122
99
92
110
128
146
107
55
105
105
55
105
92
55
124
179
92
122
105
138
96
123
168
126
126
55
37
55
92
109
110
95
55
139
92
56
127
169
139
118
130
112
139
137
92
158
134
178
88
127
142
109
152
56
88
126
120
92
122
104
37
148
55
56
91
178
110
115
126
115
141
37
146
92
123
67
86
167
122
122
67
117
56
56
162
130
76
58
92
91
69
171
103
105
178
130
123
81
93
109
75
138
110
74
163
122
122
178
122
126
178
105
93
55
117
55
105
68
136
171
105
180
69
93
104
92
134
122
93
119
119
67
55
121
134
86
55
135
93
126
138
102
55
122
55
110
135
124
104
109
37
37
92
126
105
104
122
117
130
75
152
109
138
128
124
110
126
77
56
58
168
118
91
92
89
146
189
109
118
68
127
140
84
89
55
126
55
144
92
140
92
79
158
152
152
144
111
56
167
95
55
92
55
74
128
58
67
91
102
147
67
163
55
86
93
86
91
199
77
126
103
134
144
138
55
129
58
105
109
93
55
92
91
109
119
137
86
83
126
110
137
138
138
123
144
68
178
126
37
93
138
110
93
92
86
110
138
86
93
146
74
162
128
104
126
58
124
146
55
163
131
77
137
105
178
37
106
79
178
89
126
68
74
93
110
144
67
92
83
37
55
129
152
162
99
74
67
67
110
55
69
127
109
95
91
134
55
55
68
114
131
93
132
92
122
93
110
88
132
138
137
118
110
74
144
37
122
160
152
55
110
110
58
107
68
169
69
144
69
146
126
55
119
165
152
99
86
58
55
77
91
139
108
126
55
126
122
110
128
105
138
105
126
104
111
138
109
69
144
105
118
104
126
97
122
105
122
109
56
90
100
101
139
128
89
127
110
93
122
92
110
99
136
95
110
86
92
105
178
126
146
99
55
120
77
122
126
122
73
162
122
168
128
117
84
92
144
127
102
139
92
122
139
105
114
67
110
68
95
109
92
105
92
151
139
74
67
122
140
95
92
139
108
107
130
104
93
152
110
138
122
37
58
152
126
140
55
112
104
178
55
144
167
110
178
92
152
58
144
110
123
132
105
118
127
86
105
169
91
69
132
97
138
58
152
104
102
105
128
119
58
93
178
79
130
144
76
129
93
96
134
105
75
96
64
126
109
55
67
122
101
132
134
165
101
86
102
167
80
114
101
99
169
138
93
107
127
129
77
92
92
55
111
138
100
178
92
139
55
105
158
88
56
55
128
124
164
167
119
138
138
162
83
138
56
105
67
92
83
139
55
152
89
158
92
67
67
68
143
107
139
118
75
111
67
119
55
105
91
126
110
129
37
163
88
142
97
126
75
107
55
58
97
138
55
91
138
128
99
58
104
58
67
140
37
126
123
56
56
134
75
109
55
105
109
139
146
138
118
104
55
122
146
123
144
74
128
126
37
145
55
55
92
131
86
114
138
123
112
127
69
56
149
98
164
108
122
79
138
93
122
128
146
93
109
169
89
111
178
119
110
126
107
55
145
101
123
127
86
136
122
98
99
110
107
178
92
69
55
126
69
119
102
99
68
56
55
104
74
112
131
128
104
106
77
105
110
139
96
57
178
92
110
102
99
110
105
103
163
79
111
80
103
92
92
91
110
163
37
115
126
93
55
55
67
127
55
146
67
165
69
138
79
93
127
144
74
109
92
91
67
83
69
136
112
107
56
122
83
126
55
152
122
37
118
171
140
86
92
55
84
122
89
99
92
67
127
171
69
104
37
91
126
56
93
79
80
131
74
67
67
139
55
122
122
92
58
68
83
93
105
151
139
139
122
165
93
97
89
128
67
119
104
169
105
127
99
55
92
98
104
74
86
109
105
169
136
138
111
109
144
80
178
110
146
146
131
67
83
105
92
144
37
104
107
56
110
99
169
122
169
92
132
119
91
83
92
67
128
163
147
93
127
69
126
121
101
107
136
128
37
56
91
55
128
138
134
164
138
126
128
105
72
128
138
98
120
67
105
160
144
180
117
99
126
107
99
37
79
117
93
139
105
58
93
56
138
98
83
110
86
138
124
102
104
122
132
144
118
103
117
92
105
122
132
139
69
92
180
105
138
105
93
171
104
106
99
105
122
88
55
104
108
163
144
158
93
75
81
138
127
144
55
92
55
99
178
126
108
75
110
101
77
138
122
99
56
162
122
122
67
68
146
92
67
67
152
169
109
104
92
138
105
169
104
105
178
93
127
56
178
139
67
105
55
77
126
143
58
104
79
103
138
128
134
163
146
101
84
139
130
104
58
55
138
163
86
110
58
96
119
126
61
178
138
122
56
55
58
37
158
105
126
67
107
110
139
126
107
146
145
58
114
139
139
84
128
113
58
92
138
91
67
104
169
109
74
118
55
118
144
74
105
37
79
131
74
77
55
140
111
67
92
92
58
124
163
169
104
128
91
98
104
55
56
110
55
124
135
134
56
37
140
55
114
101
114
107
88
121
92
86
105
117
126
55
55
158
74
79
92
104
67
124
139
164
104
37
138
92
139
56
93
92
144
86
111
127
86
169
138
140
69
101
107
55
122
152
122
126
178
87
138
134
56
37
138
37
126
127
67
122
105
37
89
152
126
122
92
152
122
123
123
111
139
69
109
126
98
114
91
94
104
158
55
86
55
167
105
67
89
67
99
122
112
109
104
104
69
139
164
109
93
107
41
111
131
104
55
37
107
101
92
58
122
86
169
134
163
105
104
55
111
126
75
124
109
127
91
105
104
117
58
110
138
158
89
67
110
112
92
77
69
132
110
152
122
105
128
77
158
110
110
142
110
92
109
98
74
118
127
105
122
138
67
110
86
126
105
107
111
83
125
144
129
123
55
80
93
126
69
108
122
110
92
138
128
146
130
67
110
126
86
100
139
139
56
74
110
128
99
92
156
146
92
86
111
119
55
127
105
75
92
146
77
128
126
89
114
157
67
105
86
86
109
55
67
140
144
67
122
88
104
127
92
167
109
55
68
144
164
99
56
138
122
105
126
107
167
135
91
109
110
146
131
158
55
95
84
100
126
56
128
97
104
112
152
171
154
105
58
144
138
110
132
37
74
171
169
69
93
138
152
123
58
102
145
92
92
162
55
81
93
128
126
106
131
105
105
110
105
122
100
178
92
94
69
56
102
109
128
67
131
81
56
86
139
86
110
92
138
110
128
93
111
69
89
86
86
132
139
146
55
122
55
122
86
92
127
58
83
105
138
127
111
67
123
97
79
93
99
84
58
128
139
58
169
101
58
98
127
122
123
92
58
89
139
93
56
138
79
55
123
92
162
79
91
126
55
61
92
123
37
122
126
138
123
98
107
67
115
105
55
55
67
115
126
58
124
105
92
99
55
92
124
115
103
171
119
80
99
93
87
93
152
110
103
128
120
144
139
55
93
123
127
158
95
110
146
74
37
128
178
126
92
55
92
152
122
103
69
58
84
92
128
126
97
126
92
139
56
164
67
110
182
122
139
55
128
111
127
138
92
99
93
37
56
99
93
122
98
136
129
115
92
127
55
171
144
104
132
118
77
152
92
111
92
105
146
93
67
81
199
56
67
105
122
56
104
111
105
126
86
163
58
37
91
169
138
169
146
86
56
69
123
146
140
58
148
106
139
37
128
138
144
64
56
75
112
138
120
97
55
110
110
104
93
138
79
132
126
112
126
55
98
58
92
146
81
56
158
104
78
128
169
102
105
91
104
67
55
120
109
104
79
56
134
92
123
142
109
72
140
123
122
130
93
99
142
158
98
69
104
109
126
92
104
140
80
169
98
56
67
87
93
123
138
129
115
138
104
114
123
37
110
122
128
92
56
56
110
102
91
114
110
152
105
88
105
114
67
118
117
55
67
87
178
111
111
127
158
58
93
58
134
168
55
77
79
126
92
56
69
58
118
140
92
134
93
99
104
110
144
131
126
126
120
128
37
122
123
55
178
69
99
77
122
151
138
86
105
93
146
127
110
56
144
178
114
169
102
134
119
105
126
86
105
146
168
144
110
69
146
74
136
171
37
93
122
56
127
138
93
56
145
95
122
158
79
138
163
112
128
119
138
123
92
181
92
101
55
140
168
119
127
114
123
127
139
127
124
119
144
124
56
126
111
109
69
122
104
84
110
138
93
93
75
109
58
92
140
131
105
138
110
137
37
164
122
79
110
138
105
162
171
101
69
138
67
122
134
168
124
109
123
124
101
105
122
58
126
55
122
56
104
110
92
92
126
105
122
120
92
92
67
122
88
75
93
93
168
93
109
178
130
55
119
110
93
119
79
110
178
67
104
75
79
122
105
58
104
86
168
138
71
92
169
117
122
126
110
56
138
110
92
122
99
55
103
119
93
122
152
119
144
122
110
92
110
79
123
86
164
105
105
98
109
98
123
67
110
75
75
122
68
126
122
92
111
121
124
99
86
92
55
138
110
98
97
128
144
114
92
123
105
111
131
136
124
102
99
37
148
122
58
138
171
169
122
75
134
110
56
74
91
142
67
126
110
165
37
138
127
105
67
119
127
109
105
104
86
93
105
110
104
132
130
55
92
146
120
68
128
55
103
75
92
55
148
146
105
134
112
148
125
126
92
140
74
169
56
55
77
126
178
95
162
37
37
67
74
105
58
124
89
86
163
178
144
55
144
120
55
120
55
105
140
126
77
127
104
105
139
55
138
178
142
105
127
99
99
109
123
88
114
93
98
110
110
58
117
122
67
126
122
67
56
92
104
105
104
77
37
144
93
178
74
55
107
136
148
67
104
93
126
138
122
91
126
99
58
162
110
111
120
121
160
127
55
83
117
126
104
110
92
128
104
123
92
99
58
171
138
118
139
93
92
110
93
126
134
104
148
97
92
130
126
141
126
68
92
178
140
69
81
123
158
105
56
104
124
55
126
110
83
37
156
55
153
79
138
105
165
144
105
122
138
106
126
55
55
91
139
152
144
37
98
146
84
83
131
111
127
106
178
126
158
126
103
138
92
152
105
83
128
77
93
105
55
138
67
56
91
55
138
127
105
68
100
74
114
56
55
114
100
130
119
106
74
138
177
171
127
111
138
123
55
126
134
37
58
111
134
123
126
55
139
134
109
132
105
117
125
77
104
138
137
67
144
111
77
137
55
58
55
152
114
122
105
86
79
92
119
131
128
91
104
69
55
58
122
138
107
56
92
130
55
86
122
55
93
37
91
77
110
92
192
58
75
56
94
117
55
139
58
178
56
119
142
103
107
124
110
134
178
127
61
55
109
126
120
119
108
77
119
144
91
86
55
107
128
126
105
79
123
110
104
139
138
110
92
37
77
92
119
97
101
96
110
79
115
84
92
109
146
109
67
128
123
69
69
110
129
122
128
110
99
122
77
74
55
37
92
164
58
75
58
56
83
111
93
114
92
58
86
110
81
58
126
138
69
79
126
55
92
69
106
79
109
137
128
110
119
83
92
137
74
111
178
56
134
165
139
139
99
110
55
128
140
127
55
120
75
122
55
111
101
58
122
58
136
138
79
92
154
67
75
165
92
128
104
144
152
119
93
74
144
101
122
56
74
93
102
152
92
103
68
158
178
77
110
106
84
139
128
138
163
79
145
77
104
110
104
37
140
79
83
89
127
138
103
134
158
119
87
168
169
56
68
188
103
127
138
122
86
128
105
139
126
139
93
89
102
55
55
138
104
105
122
152
74
97
105
138
138
92
58
67
77
55
103
137
99
89
103
105
92
101
86
89
58
110
67
106
137
55
112
146
140
92
92
95
126
152
152
123
86
164
111
122
84
104
37
86
55
105
122
110
138
123
144
107
56
134
143
99
55
75
73
55
92
136
95
105
171
55
134
101
126
56
140
128
122
79
124
111
126
104
139
93
148
129
110
67
122
119
128
104
107
58
128
104
99
92
58
93
99
67
67
105
127
55
152
95
138
110
93
108
67
92
74
92
135
110
104
103
118
92
122
148
107
129
67
79
64
169
140
95
127
109
55
93
55
103
105
126
110
127
84
55
56
146
92
128
122
127
152
138
99
77
178
160
92
58
135
128
126
56
178
77
69
92
126
122
110
144
101
110
128
126
123
87
92
180
110
138
119
105
104
110
113
127
105
128
123
122
152
153
139
91
92
139
74
152
98
165
156
55
122
104
92
126
83
97
103
128
131
108
156
79
105
109
55
92
55
126
127
107
110
119
108
126
105
58
105
100
74
104
56
126
79
67
148
123
114
92
142
110
146
131
120
67
110
120
69
77
56
55
163
107
110
138
92
138
99
79
98
56
128
127
105
104
111
110
146
122
56
95
69
140
92
77
107
127
126
97
92
55
67
122
122
84
111
122
77
37
111
107
92
77
104
74
92
162
109
127
83
104
89
91
144
37
92
138
119
68
103
111
105
92
92
144
126
141
107
58
137
126
128
126
92
92
67
128
86
104
139
84
122
145
105
138
104
107
122
138
119
92
92
110
102
100
55
55
138
118
138
134
99
92
89
77
97
69
120
120
104
134
104
144
92
106
101
58
144
162
80
83
147
144
74
110
69
58
93
178
67
123
122
107
118
124
111
138
128
104
138
118
152
122
111
92
100
144
144
151
126
107
138
105
152
91
55
105
74
124
105
93
122
91
126
104
79
56
145
56
55
127
80
110
130
68
58
180
119
93
110
55
105
55
126
122
111
55
128
77
119
106
111
100
105
138
92
104
128
141
140
110
129
99
105
77
99
97
127
103
126
104
111
104
78
103
139
138
127
92
139
56
56
75
67
55
129
169
86
79
152
169
126
127
122
171
67
99
92
105
92
104
109
97
69
131
146
132
126
69
128
171
80
148
108
105
92
138
138
55
140
105
92
126
122
94
67
92
104
168
138
95
101
107
110
96
69
152
119
114
83
146
114
132
58
37
93
134
126
130
123
83
124
102
93
58
84
55
92
127
126
111
110
139
127
97
92
92
58
99
139
67
92
122
67
110
195
105
67
110
55
37
73
55
91
55
110
110
144
56
92
122
126
101
100
105
151
139
138
146
105
92
93
67
92
140
107
107
119
122
107
111
91
37
103
119
111
69
119
55
55
164
110
92
132
105
126
123
96
93
110
105
142
138
171
136
55
148
168
84
55
75
180
123
107
104
107
146
127
92
110
127
104
114
104
119
145
148
126
37
111
56
160
107
67
109
58
140
127
139
122
93
122
105
126
123
169
110
146
58
55
92
130
91
55
123
178
122
97
55
130
131
69
67
134
126
86
79
86
55
119
99
75
127
107
93
146
138
58
75
109
110
180
92
92
105
110
92
117
178
110
110
104
169
37
67
122
118
140
105
111
122
130
77
119
55
75
104
55
92
140
138
97
115
127
67
101
123
138
86
119
138
169
86
102
56
89
144
138
95
138
104
92
92
110
178
112
111
122
144
169
64
105
144
122
127
178
126
74
91
124
58
56
107
110
126
37
162
69
123
86
127
37
156
139
162
126
55
139
134
154
122
105
140
86
119
114
112
116
96
129
138
67
55
142
126
122
79
67
107
127
152
122
127
131
80
67
91
105
58
144
88
103
68
121
160
112
137
117
55
144
135
37
55
160
55
115
127
122
79
179
107
148
152
178
56
55
103
104
109
92
99
93
91
93
123
67
105
67
130
100
122
115
119
123
128
162
104
91
138
103
104
67
67
126
144
126
119
92
74
101
55
122
93
74
148
86
55
56
138
144
112
111
69
128
110
126
55
88
92
132
74
129
93
145
56
83
92
171
118
55
110
105
55
110
122
124
169
67
122
110
104
122
122
97
110
104
110
138
86
122
122
119
144
58
93
122
127
37
122
178
122
144
145
146
67
92
126
75
138
56
114
92
128
92
102
146
67
79
138
58
144
178
67
93
109
110
178
98
69
128
140
102
122
120
128
92
152
56
134
124
55
128
140
137
107
138
98
92
112
110
144
138
138
79
152
75
86
110
58
104
140
97
105
105
132
120
91
128
104
178
169
92
97
163
139
144
122
92
56
74
67
55
109
162
77
119
56
168
69
56
92
93
165
178
92
69
122
86
123
139
130
126
126
55
92
107
110
107
160
104
91
37
110
121
123
97
163
122
122
105
98
123
86
55
74
158
76
111
146
55
110
37
119
79
130
180
92
163
122
107
107
122
55
91
128
104
75
81
120
139
98
128
119
138
91
92
158
104
67
126
56
80
122
122
93
99
134
139
93
122
119
114
103
92
86
139
110
101
95
122
171
93
128
77
138
74
55
119
134
152
93
148
130
55
117
105
103
151
81
124
92
110
88
55
132
37
165
177
104
105
122
55
103
100
169
112
123
86
56
79
171
83
92
105
74
67
139
37
123
127
126
139
168
87
128
67
93
122
98
138
56
110
122
168
122
77
178
158
92
139
83
89
138
126
92
92
68
111
130
132
123
138
124
55
139
104
152
138
144
138
118
113
105
84
92
105
139
141
122
93
56
104
55
152
67
75
139
140
119
58
101
93
104
149
98
178
110
152
58
86
92
83
92
117
144
139
99
37
112
105
98
55
127
93
110
122
119
37
124
98
97
131
119
83
83
122
122
138
92
114
58
139
37
120
58
92
67
140
106
107
120
139
168
139
199
83
86
138
152
74
67
130
93
138
83
92
86
37
138
126
108
80
37
120
152
92
103
107
92
55
92
103
130
162
126
110
55
122
55
144
55
86
104
55
108
55
86
138
106
139
120
79
106
118
37
67
86
110
110
136
69
37
105
105
74
126
37
138
55
102
89
74
164
149
84
180
126
126
93
126
121
120
86
55
58
92
118
67
109
55
69
126
152
67
171
130
138
101
92
92
93
152
126
137
69
92
122
140
109
138
126
55
105
139
89
142
138
107
92
91
73
146
111
146
134
92
146
75
192
128
178
99
114
86
101
55
99
128
87
129
74
152
75
110
93
137
107
126
69
93
139
79
120
178
128
55
139
100
127
130
140
56
105
150
97
122
122
106
101
92
132
87
117
138
146
130
74
139
97
126
105
117
138
55
117
86
110
178
148
77
105
137
158
197
93
55
110
92
138
58
56
119
163
55
104
168
67
138
151
105
121
58
92
69
110
69
119
104
104
77
168
104
111
101
56
128
77
77
105
115
58
126
137
56
104
104
79
58
141
104
164
55
169
92
91
91
118
197
95
106
139
122
123
122
92
67
92
127
152
134
105
92
93
103
122
55
67
169
144
178
114
134
92
135
122
99
111
56
108
136
100
92
93
124
104
67
92
74
139
119
58
55
137
92
148
122
37
79
152
92
105
122
122
67
55
99
122
55
55
58
58
122
69
169
55
107
178
130
55
86
152
97
58
122
37
146
76
69
110
55
109
126
93
80
182
58
105
124
139
104
86
122
67
138
77
91
109
122
111
127
74
105
110
93
138
92
109
92
122
92
123
92
98
122
92
162
138
146
98
77
55
109
55
138
169
126
106
86
56
74
110
74
99
92
92
126
113
162
152
138
55
74
99
104
122
144
178
122
138
146
110
77
58
146
169
92
138
91
67
162
171
139
139
130
55
111
167
92
93
135
99
138
149
56
169
105
110
118
56
122
83
93
123
97
119
122
105
98
94
107
55
68
55
122
105
58
55
124
138
104
78
122
122
145
93
110
88
109
139
126
148
122
136
126
134
92
110
171
100
72
139
111
122
69
146
109
117
108
107
83
162
134
131
124
129
93
56
67
134
111
99
126
146
139
88
104
104
79
102
93
134
122
88
74
55
55
56
55
178
111
115
55
169
110
112
55
151
111
92
81
55
140
162
55
138
111
58
75
91
105
67
74
79
145
76
76
92
139
122
55
55
56
76
110
84
92
122
92
168
93
146
107
105
93
144
58
106
138
138
168
99
56
55
93
103
104
146
110
119
57
99
103
152
134
138
74
68
126
136
56
83
104
152
111
131
105
168
128
88
122
132
74
111
55
122
178
55
105
86
142
126
95
93
55
105
106
56
69
69
105
104
98
110
92
92
158
75
100
112
97
134
122
58
122
55
110
105
92
92
122
68
127
152
138
93
74
104
104
130
109
132
126
168
68
102
104
140
109
105
37
136
111
178
56
105
126
92
67
112
92
92
84
105
126
126
107
146
86
79
97
37
58
126
86
178
122
101
109
110
124
67
58
55
112
110
105
56
101
138
138
108
136
91
91
138
75
91
134
92
99
75
96
107
58
92
112
142
37
129
119
148
138
123
140
92
56
127
88
92
105
144
162
97
110
128
178
113
97
168
126
92
91
108
126
69
138
110
137
135
67
68
69
105
127
168
130
134
58
67
84
107
138
110
122
124
109
104
127
55
105
67
104
68
144
105
104
100
122
114
126
139
99
75
56
124
99
122
169
89
152
144
139
97
104
77
140
135
152
92
67
93
105
149
110
79
92
180
139
169
178
126
109
55
99
69
107
178
92
117
188
112
92
121
110
75
56
136
126
103
56
144
144
126
55
110
126
119
164
58
58
129
95
110
138
122
86
127
92
141
139
86
146
76
55
139
103
97
105
149
55
104
67
69
75
126
122
122
67
126
93
110
92
139
92
98
112
138
138
91
126
119
92
67
92
127
138
68
93
98
92
128
95
171
169
92
140
138
95
105
119
99
105
104
148
72
144
55
91
122
109
122
141
104
134
68
169
146
98
132
67
84
93
37
149
144
108
55
148
126
104
144
134
178
67
144
126
139
130
115
122
158
92
58
135
167
144
93
122
110
92
67
109
55
105
124
55
148
91
119
144
68
114
93
152
98
124
126
110
110
69
148
92
128
92
105
105
138
105
148
69
131
122
92
99
55
102
146
95
74
144
112
139
69
58
56
140
139
84
140
134
102
110
138
119
109
74
77
131
55
130
145
168
169
112
92
147
75
55
162
93
126
126
107
92
86
134
138
122
110
163
105
140
103
55
126
55
120
139
77
67
110
55
126
67
139
58
92
122
132
178
124
84
132
56
68
84
92
99
92
108
118
101
117
123
74
123
101
92
123
77
138
56
58
109
83
138
144
55
105
67
127
87
56
105
110
105
122
58
58
119
151
132
68
69
152
122
77
178
138
152
37
139
119
111
126
138
92
104
177
110
92
131
92
55
127
110
136
138
119
84
126
84
69
105
110
92
152
86
127
91
109
104
77
131
55
55
75
55
67
98
131
37
105
58
92
144
169
74
130
107
122
92
109
92
127
92
138
139
136
55
112
74
98
55
92
163
105
165
124
99
110
129
180
144
92
126
122
104
100
138
120
67
169
56
92
118
105
99
55
110
58
55
91
37
92
55
55
119
130
104
93
122
69
92
144
110
105
85
86
152
128
68
134
135
67
69
122
128
122
106
119
169
56
93
129
111
92
92
111
139
104
139
104
107
92
135
110
138
74
122
69
105
55
74
109
144
99
92
119
111
122
126
128
106
69
93
162
122
56
100
137
110
114
168
77
139
110
126
110
145
105
128
128
95
110
105
56
77
126
55
58
92
134
126
58
138
92
147
104
111
122
116
103
128
56
56
124
134
89
69
86
138
55
127
56
69
89
110
158
140
132
140
111
139
130
109
56
110
144
55
106
135
105
110
136
188
123
92
141
124
151
130
55
79
132
127
122
122
88
122
158
105
95
122
93
105
55
152
126
55
74
69
122
122
105
126
99
110
144
107
89
180
152
106
110
158
104
105
110
93
83
178
64
139
138
111
134
99
163
122
117
138
92
88
126
105
158
107
92
126
94
37
140
126
138
126
103
127
67
58
138
69
152
94
86
138
92
92
126
126
91
79
67
37
37
138
108
92
75
135
107
130
79
104
92
37
69
126
128
56
92
101
56
67
111
165
120
37
163
144
92
139
55
92
165
131
67
93
110
95
131
124
37
92
56
112
148
131
128
106
164
55
125
180
140
98
105
110
93
93
138
164
56
118
144
105
37
71
89
55
55
168
110
93
92
129
103
98
77
104
127
91
136
130
138
55
97
41
79
107
56
123
99
75
58
122
111
152
105
127
88
105
136
146
178
112
105
111
109
142
127
67
68
105
111
77
74
138
55
139
127
138
110
105
180
109
140
138
158
160
178
107
37
110
56
126
123
110
75
131
148
119
92
126
103
55
110
169
138
92
182
140
136
105
112
55
127
140
160
104
108
126
100
55
96
126
140
146
79
37
103
37
110
178
128
131
93
55
107
130
55
126
55
111
139
139
110
177
110
131
126
109
91
58
104
92
119
171
107
67
55
146
86
134
134
93
116
131
93
69
134
139
67
56
104
138
139
168
92
127
104
108
65
127
178
55
79
126
98
86
55
114
93
110
86
146
165
123
165
110
122
104
83
144
86
37
130
126
92
55
89
163
111
67
86
105
152
88
119
69
69
138
102
122
122
104
122
37
79
58
105
104
56
128
86
104
138
83
151
86
83
83
58
92
99
98
55
86
77
109
138
124
171
102
67
55
109
119
95
58
144
89
89
128
139
138
37
117
81
122
122
67
127
139
126
92
127
93
110
109
81
99
86
178
117
119
91
135
123
55
105
105
72
99
150
92
178
92
58
99
136
123
110
126
146
74
86
146
138
128
168
146
130
93
92
122
93
37
69
110
87
75
102
105
79
158
74
92
148
152
74
56
169
37
134
126
104
126
110
105
119
109
139
123
56
123
67
67
91
138
131
123
92
93
55
105
86
92
100
147
100
146
105
79
169
104
67
148
119
69
75
105
152
67
105
138
104
113
137
131
97
110
81
104
55
128
99
110
122
139
55
67
58
93
127
56
165
37
140
92
91
55
138
56
105
105
92
105
120
67
104
104
93
139
158
126
105
55
124
107
37
110
111
119
123
120
106
93
96
83
99
134
104
92
138
171
89
86
140
92
103
37
74
100
67
163
122
110
92
102
145
92
92
145
122
69
67
104
58
110
126
92
126
67
55
134
119
120
110
106
105
78
92
55
105
138
146
58
103
100
56
138
120
67
178
58
164
79
122
169
37
122
140
149
140
152
79
67
55
104
55
162
55
98
107
111
122
92
84
138
149
144
98
126
99
55
97
105
92
144
128
103
144
67
120
123
74
122
110
137
148
169
110
81
105
99
100
111
92
137
126
58
91
77
168
86
122
92
123
86
107
97
75
93
144
139
92
101
92
103
107
96
37
55
169
122
139
117
158
92
169
100
77
79
92
123
67
168
122
67
126
93
110
126
144
126
37
130
67
127
77
138
122
119
110
69
122
110
75
136
139
91
110
92
55
127
55
126
105
136
178
114
89
69
127
93
127
93
92
169
118
67
119
77
37
104
139
178
134
105
56
162
105
92
55
92
93
89
105
146
144
58
103
91
37
112
111
67
138
119
131
124
105
122
92
55
67
146
104
139
92
146
126
120
138
75
120
93
67
55
93
144
91
146
112
92
37
145
138
144
92
199
97
104
67
93
132
56
126
122
126
122
129
127
55
55
79
134
123
158
99
169
104
124
138
92
99
140
132
37
99
126
67
91
92
83
111
139
77
83
104
127
163
105
92
152
123
138
55
138
122
122
132
92
119
148
74
119
126
69
138
92
55
58
122
122
132
55
55
67
104
126
93
97
94
110
92
107
144
58
75
67
92
122
67
93
58
111
110
79
122
92
92
110
56
104
122
158
107
148
122
69
74
69
179
105
127
67
146
131
103
55
117
83
129
140
56
84
178
69
98
56
110
99
104
160
37
127
99
124
126
110
169
93
37
126
92
104
56
77
169
69
58
93
103
55
56
77
67
117
122
91
126
104
95
106
152
110
56
146
55
138
136
130
123
126
126
135
126
128
123
92
138
124
86
104
104
158
92
37
107
55
122
109
123
122
134
125
126
141
69
126
122
138
110
144
84
146
110
93
74
111
105
104
94
101
93
93
136
123
58
127
103
169
105
126
103
55
83
122
97
92
79
130
138
146
69
178
122
89
178
138
67
67
88
178
178
92
123
69
119
139
105
105
99
115
144
139
134
178
138
123
126
127
105
110
107
109
107
114
130
178
119
116
78
110
55
138
86
37
56
178
56
55
105
139
152
79
97
139
110
140
127
132
58
89
78
169
180
180
92
93
92
103
77
127
103
103
58
88
144
58
122
139
79
138
69
152
93
137
92
136
126
132
110
144
102
93
74
138
56
102
77
55
123
104
126
92
148
110
111
122
69
110
75
92
67
127
144
57
105
140
55
127
108
147
134
72
99
104
68
138
136
37
111
119
171
104
86
120
122
92
152
138
122
167
168
117
118
58
100
56
152
178
97
146
138
86
37
110
149
111
111
67
128
107
93
123
55
163
67
139
93
148
140
91
90
112
109
79
109
97
128
138
104
139
117
102
138
92
91
92
56
92
98
119
171
55
160
67
125
91
108
111
92
86
69
95
56
180
148
64
110
69
99
180
121
75
69
37
55
105
56
122
56
122
92
148
104
137
79
105
112
152
110
127
164
126
92
139
110
67
67
87
146
37
55
86
86
92
132
92
126
136
138
105
126
124
56
122
127
103
131
134
105
69
110
131
55
83
89
127
122
92
104
138
129
127
104
55
126
110
124
109
67
178
92
163
67
55
139
146
118
56
56
92
117
93
119
110
132
122
67
91
69
139
37
68
127
122
69
56
112
67
86
67
100
55
109
171
119
91
128
110
124
105
136
92
105
56
80
171
105
37
148
77
67
67
127
119
146
92
128
92
92
75
58
139
105
140
69
92
97
67
109
100
69
146
130
99
58
92
79
79
110
127
86
79
111
92
55
56
123
110
58
99
56
144
95
58
92
119
58
67
105
122
134
107
124
146
86
111
37
55
122
121
110
83
158
138
126
110
67
37
105
55
55
110
55
141
146
92
73
146
105
144
138
86
104
56
164
105
92
178
119
128
91
137
126
134
103
110
168
110
105
146
127
106
74
104
122
120
89
144
110
75
83
83
169
86
139
58
69
152
93
129
69
122
92
110
76
105
110
93
94
91
58
134
92
58
92
123
139
92
122
69
67
126
93
55
79
79
148
94
123
58
103
127
68
110
134
131
37
144
86
122
130
92
122
122
83
147
130
105
152
158
138
152
104
138
104
104
55
75
122
122
140
128
152
121
110
110
165
101
86
124
126
180
55
56
122
105
131
95
97
152
138
86
95
92
104
68
99
87
92
74
144
75
112
115
108
144
37
58
122
68
77
69
138
68
119
104
104
104
61
144
139
58
105
92
110
128
135
92
102
106
69
104
127
146
69
68
146
104
55
83
101
127
92
100
74
134
92
106
115
58
92
104
112
178
110
93
152
138
69
138
56
122
92
127
67
110
93
178
119
74
69
139
56
110
171
110
122
79
104
86
93
37
160
76
69
92
122
105
55
55
178
171
101
178
110
99
109
105
152
87
37
67
124
144
93
68
110
168
91
69
92
56
56
125
160
110
95
105
105
55
102
110
119
120
138
126
104
110
103
110
119
105
93
68
106
110
86
98
111
123
138
122
169
119
56
98
110
138
67
110
55
138
103
55
86
58
127
86
83
105
162
56
77
55
139
77
111
145
105
55
92
138
123
110
92
86
114
137
167
83
128
56
110
142
122
83
75
114
77
120
138
55
104
117
124
142
138
83
92
126
95
92
55
152
146
106
91
69
75
75
112
128
148
69
126
105
178
137
165
92
134
132
109
110
92
128
110
178
122
84
126
110
79
140
123
122
55
97
92
67
92
124
130
138
136
127
83
55
56
55
124
37
152
104
146
92
180
137
126
135
108
110
111
139
127
55
144
114
109
122
122
97
67
122
103
105
124
126
80
86
68
123
58
110
37
126
146
37
92
130
69
140
136
102
107
58
148
92
178
56
132
105
58
127
126
171
99
123
136
110
92
106
127
77
112
84
126
93
91
132
126
79
139
144
92
110
110
104
105
92
92
112
92
134
105
122
55
110
105
97
178
92
37
142
144
137
122
122
152
92
93
112
121
78
57
99
108
84
104
112
56
84
144
126
56
122
67
140
148
146
122
109
132
109
67
131
69
158
92
93
92
123
75
107
140
67
84
56
92
37
86
145
67
140
75
92
128
178
111
77
148
81
72
55
83
74
99
134
122
105
107
134
145
123
139
130
122
144
126
86
103
130
55
93
55
178
67
110
105
55
122
127
110
86
55
67
111
68
84
106
110
128
58
92
99
107
139
130
67
77
123
89
105
171
110
105
92
69
178
122
122
105
138
169
111
160
126
130
55
105
110
123
104
92
92
37
92
146
123
117
144
136
93
126
104
140
73
68
109
92
109
158
58
88
69
99
91
126
134
105
93
128
163
136
144
109
149
37
138
100
106
93
101
77
152
77
156
123
37
123
120
67
92
128
114
97
93
126
109
171
119
92
91
146
92
104
103
138
55
127
56
158
199
134
55
58
104
144
119
55
119
148
140
124
134
132
97
138
104
55
67
118
126
56
122
74
92
95
55
69
127
92
103
102
92
110
92
148
119
130
77
139
127
140
138
139
132
127
56
58
140
92
178
93
93
105
134
79
111
139
55
178
112
144
127
58
123
169
138
126
122
93
171
138
140
138
94
56
142
138
86
37
93
92
67
134
127
177
56
86
74
92
67
102
56
139
55
75
110
92
69
140
93
92
69
131
138
146
134
146
140
92
77
92
110
79
55
122
104
105
75
92
55
142
95
126
58
144
199
92
141
158
126
110
127
105
93
118
92
168
122
67
104
132
104
111
77
149
156
67
148
164
97
134
110
92
56
114
98
178
139
158
93
110
118
56
102
69
92
109
56
140
55
92
67
55
169
92
138
123
126
92
95
111
91
122
68
79
126
92
153
118
79
119
86
163
79
126
127
109
110
86
67
112
138
178
56
75
188
104
130
105
119
123
74
110
138
55
92
132
99
167
110
98
178
86
55
103
55
104
99
104
110
95
56
146
144
169
69
121
111
124
86
146
145
86
92
55
103
93
146
105
99
138
105
92
102
110
105
100
110
139
86
122
126
152
105
56
146
167
110
110
86
93
104
126
99
68
129
152
55
55
92
122
92
146
78
105
86
69
37
152
67
126
56
138
103
67
100
94
126
93
117
122
56
92
69
97
178
79
120
139
146
140
118
130
114
55
86
75
110
169
74
104
105
86
77
93
110
104
102
120
126
117
100
55
91
68
140
92
110
126
123
131
69
37
110
67
56
55
103
56
92
56
86
92
167
79
89
92
105
114
55
84
105
127
98
110
126
55
93
169
126
189
149
107
155
110
83
92
126
122
79
79
138
126
158
92
122
144
124
103
122
122
129
109
126
152
89
135
93
162
138
126
56
169
127
105
79
110
122
122
69
79
93
55
119
148
105
138
139
67
55
77
126
109
103
102
110
92
132
123
86
137
103
83
141
74
122
93
37
55
69
67
143
104
112
79
124
107
146
138
77
93
110
122
91
103
55
180
83
122
171
188
124
37
122
138
132
136
126
123
127
126
92
138
55
127
56
104
92
122
127
119
104
138
67
92
37
55
127
132
169
67
72
84
55
105
81
138
84
162
123
93
138
55
105
105
127
122
99
75
58
109
126
93
124
69
93
56
105
37
123
178
152
99
92
178
56
122
122
131
109
171
122
138
104
144
92
126
110
139
79
97
58
87
93
178
178
126
152
56
107
108
144
56
87
103
126
126
130
128
92
119
110
79
93
128
84
124
127
178
107
67
119
127
97
55
122
37
106
55
79
105
105
92
92
138
84
135
91
103
69
77
91
117
55
160
107
105
105
136
75
107
91
139
128
138
55
105
74
105
158
144
136
93
105
79
105
55
111
92
99
110
104
123
98
104
139
126
114
104
109
126
130
55
69
111
105
152
178
126
58
139
139
79
138
178
69
105
69
110
105
138
92
119
79
178
56
178
92
55
113
122
55
180
152
138
123
114
127
117
128
86
68
110
102
137
146
136
127
122
111
130
67
55
122
152
92
140
105
126
67
92
111
128
99
111
67
134
55
56
124
110
122
92
106
140
124
118
113
107
126
135
110
122
122
137
107
158
37
83
67
93
105
122
69
58
56
56
126
122
122
146
107
75
99
92
55
97
101
104
129
56
37
123
109
67
69
67
55
37
58
92
92
93
123
144
169
140
120
69
64
106
109
88
126
119
126
107
119
146
178
128
56
101
138
101
126
93
55
152
98
80
122
112
67
126
105
134
58
92
91
123
79
160
105
79
128
55
178
85
99
138
55
55
122
58
128
124
122
127
105
126
108
97
55
105
144
56
119
140
105
110
93
110
152
126
92
92
93
110
75
77
104
134
127
105
92
126
163
58
122
92
77
105
67
122
105
105
55
122
152
128
139
102
106
105
112
122
78
67
149
110
92
130
118
105
134
138
119
110
109
104
105
110
104
148
110
103
158
111
104
55
97
169
58
92
92
124
104
148
93
108
110
55
95
146
91
93
124
67
120
92
146
144
104
138
126
37
139
92
68
92
162
105
128
67
81
122
56
140
178
110
103
126
122
109
86
130
138
144
178
91
114
122
110
126
124
139
93
93
96
126
105
93
138
134
124
101
109
88
84
55
67
111
105
119
37
93
178
99
140
123
83
104
89
104
111
188
100
126
107
92
115
110
128
77
179
55
83
169
98
178
178
127
126
128
105
122
138
92
94
134
126
98
150
102
107
56
122
56
146
139
139
146
126
68
112
110
151
56
171
92
55
122
56
92
119
126
123
152
84
93
55
144
146
99
124
126
127
69
126
109
93
105
83
92
144
92
139
137
102
122
124
77
119
163
110
91
105
92
79
92
91
92
83
102
55
92
92
122
140
121
105
146
152
102
91
134
136
86
74
112
126
123
123
160
55
178
136
92
168
89
139
140
122
93
127
112
178
146
127
144
110
92
79
122
79
75
138
55
135
74
119
138
67
139
138
105
106
139
132
138
138
145
93
109
122
75
139
83
37
86
126
67
106
37
169
148
56
102
104
133
92
83
55
67
67
126
138
138
124
37
102
93
169
167
126
69
105
105
56
109
126
124
123
128
64
55
83
72
67
178
55
122
69
138
102
144
111
105
119
86
149
55
144
106
92
105
180
91
98
178
134
84
56
122
93
112
86
126
67
124
55
152
178
92
104
110
106
77
67
67
105
83
122
178
100
58
67
105
127
138
128
138
79
74
122
77
110
127
92
108
126
107
122
152
111
104
93
171
67
104
111
104
58
109
55
86
67
79
117
37
165
69
144
92
111
144
122
56
138
86
160
104
95
91
109
156
123
169
126
86
127
69
132
93
138
55
92
86
128
105
127
104
140
92
91
58
74
56
152
101
148
111
92
92
138
92
124
37
122
86
55
84
126
92
92
134
79
104
91
92
69
55
118
93
67
92
84
178
175
113
189
135
92
93
148
126
120
77
105
92
128
105
104
138
126
74
93
97
110
91
55
86
152
105
103
83
146
75
69
132
93
91
67
104
92
91
163
55
92
127
55
138
92
37
138
77
110
192
122
120
122
122
131
164
139
75
127
55
86
158
75
138
67
110
56
114
145
104
88
56
93
180
130
138
152
122
138
92
138
75
178
67
111
97
144
56
126
104
108
55
109
74
122
58
132
55
135
91
89
56
111
92
110
100
122
91
103
56
138
126
55
55
138
55
86
55
138
92
92
95
104
134
58
138
120
140
143
128
67
77
69
67
130
142
122
122
99
122
135
89
92
55
139
55
122
152
104
69
92
92
92
93
115
69
58
126
168
114
139
147
58
106
92
130
69
122
92
89
139
139
81
188
110
122
92
92
152
169
79
122
152
156
55
178
128
104
110
55
79
128
99
92
55
122
92
136
110
152
144
100
93
106
171
146
135
84
55
178
165
122
107
105
135
152
137
55
101
104
126
171
105
92
128
105
178
138
146
163
146
152
58
75
93
148
103
84
97
92
104
104
80
110
110
163
105
67
127
140
67
91
92
126
144
122
105
84
104
104
139
96
120
92
138
171
69
144
92
134
68
128
67
77
92
92
92
67
128
111
74
146
67
55
92
139
127
144
125
93
67
178
37
146
99
93
92
138
67
69
92
99
160
169
119
58
104
123
144
119
77
138
127
139
134
110
112
128
77
122
110
138
171
102
118
122
69
138
146
105
178
134
84
95
138
122
112
86
139
67
127
146
117
120
105
67
110
110
122
144
107
104
119
135
101
67
110
129
55
138
119
92
138
138
128
135
105
37
110
67
56
139
92
67
134
92
127
56
106
103
92
37
92
86
56
135
93
99
93
97
126
37
114
144
92
68
92
112
105
171
122
98
103
92
144
55
163
55
171
108
158
92
55
148
144
144
146
92
138
126
69
112
55
178
55
103
119
146
69
91
55
138
126
105
130
122
67
104
112
139
181
102
127
55
103
144
77
100
139
139
93
134
122
171
134
123
128
124
99
55
106
67
55
58
139
74
109
146
109
77
69
110
127
134
164
68
75
126
97
89
127
103
138
110
130
77
169
110
69
92
138
126
105
126
127
127
55
55
129
110
123
120
127
158
126
111
122
83
139
106
152
99
122
128
110
134
93
93
55
75
73
110
178
144
55
144
138
55
128
121
55
56
139
102
76
69
129
58
55
178
146
86
115
137
69
122
93
55
56
124
169
86
138
146
122
75
84
104
162
119
127
105
126
124
110
107
169
144
128
138
110
104
158
168
69
67
78
92
75
106
162
101
92
131
192
105
127
169
67
178
92
91
37
139
86
92
58
127
58
122
108
37
122
119
122
37
92
55
128
55
108
169
138
138
119
140
123
163
110
128
126
55
123
123
131
86
119
107
104
37
147
180
107
93
55
101
105
56
68
114
69
58
69
140
55
93
122
126
86
104
92
67
69
148
67
122
55
110
99
103
92
86
130
126
144
144
69
92
58
169
58
99
105
126
69
55
93
104
110
162
127
83
55
122
92
67
128
169
138
109
152
105
162
120
91
68
138
144
104
112
93
104
104
130
134
103
122
127
69
111
123
67
88
58
126
55
92
138
148
93
37
118
74
58
122
112
110
131
128
127
105
55
104
95
91
56
98
119
126
56
92
122
169
126
128
110
105
123
122
92
55
140
122
55
122
55
55
92
93
88
56
111
93
102
55
122
58
141
83
92
146
169
55
131
122
87
178
138
67
146
110
69
119
95
74
119
79
67
92
86
146
110
128
122
91
110
104
103
136
126
128
109
148
178
92
105
117
119
58
37
127
138
125
103
81
165
142
79
152
91
139
126
122
128
108
125
126
55
56
178
127
58
37
74
58
91
128
93
92
99
122
107
143
92
79
138
145
92
120
178
152
106
169
58
144
98
94
74
111
91
124
79
92
178
127
105
105
138
127
103
67
118
58
128
110
95
115
139
122
138
126
55
92
37
169
92
92
100
145
99
101
126
110
127
102
146
122
105
69
120
107
112
69
130
158
92
109
103
99
67
178
138
126
84
168
58
152
111
138
126
126
55
97
56
92
92
144
130
80
104
37
126
37
67
91
99
135
139
92
58
55
105
138
83
103
67
151
96
92
67
68
37
180
105
119
138
109
122
144
169
99
138
169
115
122
104
119
95
105
110
104
117
138
131
58
96
93
122
67
56
168
93
119
128
99
160
122
102
103
122
177
104
105
103
120
169
131
144
119
122
74
79
122
138
79
111
92
92
132
110
107
152
127
92
128
122
117
148
114
55
67
109
126
106
97
110
110
138
127
152
87
86
160
68
122
55
74
109
117
145
145
92
79
80
104
93
91
93
122
105
122
110
74
74
74
120
93
144
119
107
105
105
144
55
111
138
100
88
144
110
122
126
147
180
37
37
165
154
111
55
126
132
126
151
126
149
169
126
126
105
93
111
93
109
122
138
55
130
122
131
103
104
92
107
104
127
122
55
104
128
77
92
178
110
110
109
139
92
68
134
67
144
144
92
139
148
122
169
127
68
88
168
99
105
93
122
105
67
152
75
112
37
126
37
110
139
74
55
127
77
67
93
169
91
91
178
119
146
135
110
103
58
126
144
110
122
109
146
126
67
178
55
109
123
67
118
158
122
137
92
95
55
37
134
92
105
92
91
119
178
143
126
73
128
138
124
127
55
142
127
127
126
91
144
110
127
171
178
107
152
122
122
134
92
37
37
37
111
148
138
92
120
91
79
93
69
136
69
138
126
92
127
123
114
103
84
86
162
99
99
92
91
67
92
79
37
123
126
139
135
105
104
178
149
177
128
67
83
134
119
67
67
92
139
93
114
107
129
144
130
64
37
92
99
162
122
56
119
146
95
58
100
92
144
122
122
105
123
136
100
79
37
77
103
74
105
92
77
122
171
140
123
99
104
55
105
110
75
79
108
92
122
110
99
93
169
127
134
110
86
55
134
105
144
77
129
97
110
110
92
67
108
56
119
67
122
152
55
123
105
93
87
55
152
110
139
178
104
105
138
108
112
74
110
101
122
152
109
102
85
122
131
152
120
92
55
129
69
93
138
139
105
168
103
144
110
92
119
86
110
104
100
152
102
126
55
118
178
84
75
109
118
117
74
84
55
77
104
110
168
93
117
126
134
101
169
128
55
126
109
152
83
122
136
69
92
91
92
110
126
56
105
119
92
121
105
67
127
110
55
92
92
134
122
67
92
126
104
77
119
150
55
56
126
110
88
86
138
105
131
37
79
127
75
103
105
122
37
119
110
67
74
128
69
131
105
67
105
92
86
158
109
140
146
74
136
109
56
119
69
86
122
164
92
68
105
122
123
138
99
56
56
92
92
140
92
109
103
92
93
119
127
139
122
146
107
119
106
110
134
92
105
122
105
122
126
138
178
104
103
163
138
91
104
84
55
126
167
140
178
144
67
79
139
139
122
169
109
105
98
123
129
152
77
139
55
67
122
92
109
163
80
67
139
93
56
93
127
111
138
93
178
110
123
132
91
105
96
169
37
128
122
37
105
96
99
104
122
152
130
92
37
138
130
127
144
112
132
103
132
111
178
119
138
122
92
142
110
144
128
86
138
74
79
164
96
105
56
103
56
77
136
137
103
92
138
112
122
83
69
56
101
180
105
142
55
92
93
97
122
67
55
67
104
93
112
122
146
109
162
93
89
58
146
103
123
74
122
93
91
84
84
105
92
105
67
78
131
58
127
122
169
119
138
126
132
118
92
138
84
135
37
118
105
92
92
84
126
123
56
107
92
92
91
55
163
92
178
92
77
122
146
139
93
108
127
131
126
105
105
168
148
105
124
110
55
108
120
56
178
86
160
67
69
148
93
85
144
69
134
148
84
109
139
92
55
110
83
162
93
100
127
93
178
168
163
123
55
69
119
92
67
122
112
144
55
75
83
86
119
89
55
69
122
127
105
103
134
140
122
126
55
122
138
78
75
67
138
110
131
67
128
105
92
92
118
95
105
67
118
126
55
100
123
152
171
55
110
56
168
37
92
79
81
104
105
90
122
131
152
67
106
83
123
68
64
111
127
151
138
178
126
79
55
67
178
126
136
93
69
127
122
55
110
105
56
105
98
110
106
131
168
37
79
67
124
37
152
67
139
77
95
178
178
58
119
106
111
110
55
55
111
138
178
138
135
103
74
122
139
55
138
92
105
110
144
107
126
160
112
125
86
69
132
55
92
105
86
126
122
101
178
146
79
110
79
93
178
97
112
91
37
104
100
55
138
77
164
92
152
110
110
146
169
105
55
110
75
138
122
126
105
152
117
126
104
178
144
127
192
99
104
119
138
127
67
137
105
120
69
126
67
55
92
86
128
127
83
122
68
122
128
91
55
130
118
79
197
138
128
127
55
105
67
58
69
68
158
92
107
77
169
122
79
113
92
56
91
99
178
37
131
58
109
86
104
169
144
67
110
139
152
104
131
120
55
97
128
99
144
77
105
122
107
135
140
146
139
55
139
109
122
67
110
103
58
92
107
126
56
86
67
37
69
144
111
152
56
138
178
126
94
55
56
69
105
120
91
163
55
123
122
58
123
97
169
138
55
58
112
111
114
58
92
75
93
64
86
79
139
122
128
109
111
55
88
115
144
92
126
109
131
126
92
146
139
67
119
110
152
55
67
37
104
55
67
74
119
178
86
105
105
126
124
55
103
56
41
86
126
91
144
55
92
56
58
124
91
109
104
105
79
121
67
110
84
124
58
139
55
126
134
171
132
55
92
137
152
105
67
103
156
92
126
135
146
146
99
163
101
92
97
56
111
107
86
77
122
169
160
79
139
91
56
158
128
139
100
100
122
122
93
138
140
127
163
100
92
107
142
146
109
37
127
146
148
98
123
105
114
178
67
110
105
98
168
93
104
105
127
110
91
99
152
69
69
178
119
104
56
93
123
123
74
55
148
86
141
103
67
122
56
130
163
114
105
139
110
110
55
105
124
55
92
88
110
138
105
74
178
67
104
37
122
55
110
55
122
103
128
167
127
127
114
118
104
92
123
97
55
118
122
55
83
126
87
99
139
94
93
111
93
141
92
58
118
89
152
99
132
134
109
98
152
67
79
169
132
110
139
126
110
55
126
102
55
141
138
92
136
104
110
58
105
93
84
74
77
115
88
105
123
67
93
75
138
152
110
178
109
55
110
95
58
137
104
68
75
67
77
88
67
105
122
55
67
140
93
178
126
101
55
110
107
56
120
92
178
137
105
104
169
75
92
110
168
95
69
55
139
92
108
162
37
144
139
55
105
69
103
92
92
67
55
123
121
107
109
137
126
56
102
122
107
37
104
110
110
126
138
138
139
91
55
77
110
122
142
74
140
146
114
55
122
132
110
55
92
138
169
101
86
128
77
105
127
127
111
130
144
37
138
93
122
110
126
74
144
122
93
110
148
93
55
69
100
128
74
97
144
93
105
69
67
110
105
122
134
104
89
110
110
67
122
79
138
110
146
67
67
56
69
95
75
114
56
77
79
120
122
93
92
58
158
126
145
67
84
67
128
105
178
163
165
55
139
84
65
55
144
110
92
110
135
138
105
139
92
128
105
107
104
69
178
127
122
149
95
104
122
69
91
128
171
105
136
56
127
139
92
55
138
103
139
78
189
92
67
92
105
119
79
105
103
89
79
92
122
148
130
110
126
67
109
79
146
69
111
110
55
58
55
92
110
122
105
192
92
77
123
91
136
56
74
67
134
138
146
105
127
139
138
55
55
93
58
107
126
138
148
105
84
110
109
130
58
126
128
56
162
109
55
127
58
169
156
92
127
69
69
91
127
105
138
105
92
105
120
88
92
178
123
104
91
137
109
119
74
126
101
104
160
178
91
55
105
104
123
79
91
92
92
67
117
171
68
97
87
138
123
77
122
92
55
110
56
178
79
123
139
93
111
55
134
138
92
67
189
103
104
146
83
104
178
93
105
55
144
67
87
110
107
144
117
67
122
162
55
86
123
106
55
127
123
128
104
93
105
146
125
86
55
103
105
92
110
75
92
79
122
37
83
138
140
123
58
147
67
92
109
79
92
108
93
139
117
86
92
152
127
128
75
37
127
178
111
97
92
140
86
55
126
117
69
101
152
144
101
84
56
74
103
110
93
122
109
146
107
92
110
84
109
122
118
105
93
105
55
92
37
92
37
92
105
84
138
165
92
67
138
114
101
97
114
122
69
91
97
144
154
97
139
123
99
169
146
152
103
93
107
56
114
146
97
119
111
99
162
111
103
171
139
110
93
126
86
139
145
103
67
55
105
91
178
146
110
55
104
104
67
122
146
129
137
84
77
55
110
165
86
74
67
148
124
69
86
138
69
123
79
112
89
105
56
56
180
56
89
138
58
57
105
122
139
105
55
109
199
56
92
135
110
104
104
162
126
110
37
37
138
149
67
104
128
138
126
101
138
110
122
92
107
55
92
127
124
93
55
124
148
37
92
104
91
37
79
122
128
98
37
104
148
99
120
58
83
58
69
75
92
89
120
169
128
55
137
104
140
104
98
83
37
138
126
152
92
109
67
110
77
138
178
138
55
110
110
122
79
88
37
138
178
67
55
58
110
74
56
68
122
75
92
99
55
126
109
127
130
124
110
84
69
105
130
110
160
81
69
126
79
99
178
123
56
121
111
169
111
104
138
56
74
95
55
127
171
139
99
158
140
55
126
67
61
79
83
124
126
123
122
126
127
93
122
69
67
138
138
144
127
37
119
92
105
37
83
134
107
74
126
119
169
126
104
162
139
114
75
95
109
37
128
97
91
97
91
111
122
134
110
92
58
89
152
134
125
124
84
86
126
74
93
127
146
122
122
122
69
127
141
109
104
104
127
104
79
84
126
84
86
126
92
111
56
67
158
102
132
126
69
93
126
55
126
110
37
102
145
104
93
178
67
118
55
122
77
77
92
137
56
144
55
69
55
167
130
56
122
139
142
79
92
77
105
107
123
91
110
126
162
122
138
74
109
67
122
122
55
91
102
135
107
131
114
92
110
169
56
103
121
77
128
146
69
105
146
118
77
122
126
124
110
92
68
105
91
136
126
79
127
105
74
100
77
55
161
110
123
138
56
108
138
92
126
110
123
138
126
92
109
158
134
122
122
146
91
144
140
150
104
126
69
92
77
92
125
101
110
101
124
126
152
137
139
110
126
92
178
93
74
149
120
148
111
139
55
67
123
104
137
92
138
56
109
144
75
111
144
138
69
135
132
138
104
55
91
178
123
132
84
105
79
146
55
127
105
55
37
87
69
104
110
124
110
76
139
55
79
95
130
103
55
111
92
147
110
126
91
146
138
37
105
103
134
127
127
55
68
127
123
127
152
88
110
152
152
144
160
87
107
139
123
55
138
119
126
105
178
97
56
37
165
146
104
178
165
110
113
91
139
97
67
138
115
146
55
146
134
168
126
69
138
105
67
160
152
122
58
97
144
121
55
144
144
91
83
97
126
92
126
146
114
111
122
67
124
93
67
69
138
162
131
178
55
127
104
165
37
126
110
123
69
86
110
126
113
162
67
126
110
110
109
103
163
55
37
168
138
112
126
55
152
138
109
58
83
111
104
37
86
144
127
137
138
120
178
69
107
128
55
37
92
93
119
92
152
139
105
148
149
128
114
139
197
119
92
67
122
84
126
122
178
167
69
128
100
86
93
91
97
139
74
55
92
79
37
93
122
164
86
98
105
146
105
128
93
123
92
105
37
127
138
104
124
84
197
130
128
145
91
124
86
139
56
88
83
127
146
117
127
93
110
92
100
119
139
180
122
89
126
105
99
138
37
83
67
68
111
56
110
114
79
69
56
93
178
69
152
92
111
146
55
105
128
93
105
129
136
140
139
69
94
92
112
93
74
139
55
122
138
134
67
93
86
58
178
115
122
80
110
138
146
37
105
55
80
77
146
119
122
168
91
131
92
122
55
80
92
99
112
119
86
152
137
93
123
104
123
74
55
122
55
55
86
93
58
110
112
127
188
158
37
37
92
164
91
92
127
126
127
37
55
101
107
55
83
58
127
83
74
139
84
152
37
67
171
107
122
69
105
76
138
74
102
127
92
178
146
92
67
148
58
138
139
137
111
140
105
122
145
153
67
126
37
122
111
56
111
127
92
127
92
140
55
126
122
120
55
138
126
109
105
58
86
92
138
138
92
91
109
120
118
139
138
139
110
138
105
97
109
111
92
79
139
140
110
92
178
115
128
199
101
111
92
110
92
92
169
171
138
99
134
55
138
81
162
168
127
139
92
110
67
152
37
126
134
134
122
146
77
131
55
55
93
111
91
122
136
101
144
98
128
122
55
89
92
169
178
138
127
136
119
162
138
107
131
67
56
103
58
122
126
110
152
104
55
75
178
139
92
107
127
92
139
55
162
93
139
105
119
67
86
86
126
92
138
135
140
160
111
99
55
93
92
163
127
55
74
79
91
126
105
37
152
92
55
135
105
55
119
178
127
128
110
152
93
95
112
138
126
171
89
139
126
138
124
92
122
78
58
55
69
104
68
124
92
93
178
92
37
138
148
74
69
119
178
118
105
122
67
37
67
144
104
124
110
122
110
104
118
56
144
178
37
55
67
101
100
140
171
67
134
126
110
87
55
162
152
92
92
89
110
118
127
58
139
126
69
123
56
58
103
68
77
118
138
109
146
136
103
111
67
138
127
126
79
93
37
138
92
169
58
92
124
95
165
104
105
91
110
80
102
55
160
137
169
93
92
93
144
74
55
144
112
75
125
138
119
180
122
152
169
141
109
104
105
152
158
109
112
93
126
107
67
152
138
146
92
127
89
105
179
93
123
132
91
87
79
123
122
131
138
123
146
110
111
58
68
111
178
138
178
199
112
56
92
55
119
67
134
69
126
122
127
72
55
55
130
83
77
123
110
95
152
83
106
146
92
93
171
138
122
129
111
72
58
81
103
108
56
141
56
144
77
139
105
93
69
79
122
130
110
110
58
126
125
124
64
92
109
67
67
134
95
56
105
67
107
94
86
137
109
110
97
144
126
106
119
139
107
88
144
99
68
123
93
119
113
107
61
55
109
152
97
56
109
92
67
138
145
56
135
139
127
88
99
92
69
72
102
92
110
104
67
83
146
126
130
146
93
144
111
68
55
110
55
84
110
92
92
92
92
144
105
93
105
56
55
134
92
77
119
55
55
55
126
64
122
118
146
139
143
138
126
131
56
138
146
126
55
92
109
67
93
92
136
126
69
92
178
110
178
126
178
111
139
152
106
163
105
114
58
89
104
124
93
107
111
123
105
98
146
122
67
86
104
93
124
126
123
136
128
112
123
105
126
141
77
134
152
99
120
110
144
92
92
144
92
55
109
101
92
81
130
91
86
123
122
122
55
83
104
58
92
69
126
140
105
178
77
84
132
134
123
171
94
91
122
152
111
134
126
158
95
123
130
67
92
103
79
58
79
105
67
171
122
84
122
86
178
123
130
91
75
126
86
109
141
178
91
160
97
68
92
92
106
104
104
178
37
139
167
122
131
114
95
127
123
114
67
104
69
111
92
69
112
104
114
112
105
93
100
68
37
105
167
79
74
107
55
56
167
92
120
119
122
103
138
110
67
122
92
93
74
105
178
122
134
152
88
107
74
37
123
105
79
139
122
92
58
67
119
69
67
139
124
104
107
108
55
178
119
92
104
111
103
109
79
118
126
91
84
144
75
122
56
124
135
86
130
110
111
55
77
103
138
105
110
126
58
58
130
105
92
92
92
92
79
138
140
178
83
160
126
178
138
94
37
56
105
131
110
92
92
110
111
107
105
91
169
67
92
164
122
55
110
117
152
122
101
110
119
138
146
130
55
79
94
56
163
111
158
139
168
115
134
169
138
86
160
104
88
92
146
88
74
37
136
92
59
178
58
128
92
105
178
97
152
105
37
127
37
55
55
111
58
92
160
126
128
56
138
67
144
84
55
111
102
144
75
126
105
74
163
105
55
58
92
106
56
123
169
163
74
106
111
107
100
55
55
140
123
124
56
127
146
107
95
110
79
144
104
118
84
105
139
148
139
91
110
124
77
86
119
180
109
151
152
106
37
123
93
77
75
98
126
141
91
95
109
102
56
169
178
83
92
56
104
109
74
92
101
55
117
86
121
92
138
56
104
126
56
98
102
138
72
105
92
37
92
144
122
105
55
138
119
104
56
86
104
111
104
144
123
158
93
138
119
109
124
126
105
67
103
138
122
110
126
126
105
110
126
122
122
111
74
141
178
68
99
152
136
104
169
92
37
105
56
138
144
91
67
164
122
101
57
126
146
97
111
164
122
123
78
92
110
124
168
104
111
67
55
122
110
146
37
77
92
126
113
119
126
144
91
37
99
110
69
105
92
132
98
55
106
138
79
84
69
67
127
105
119
122
122
69
144
91
171
107
160
134
110
118
91
124
105
178
126
55
99
84
92
81
162
122
125
148
122
169
125
58
86
56
156
122
139
105
115
69
132
55
56
93
105
93
126
123
149
110
77
104
79
122
83
103
152
128
136
169
114
69
123
126
55
86
169
122
95
77
102
139
55
77
169
171
134
135
169
104
37
77
83
110
109
74
117
92
110
126
138
91
105
92
151
104
56
122
126
67
103
152
56
178
138
92
69
119
126
110
110
105
178
58
104
56
92
138
77
169
112
74
123
113
118
55
152
83
126
137
105
110
127
126
107
97
55
102
110
129
114
92
127
168
69
37
123
93
138
148
138
122
158
122
110
118
92
169
130
58
55
111
56
91
158
102
55
168
92
107
158
69
108
158
136
58
124
79
130
92
152
95
122
77
79
105
123
148
105
158
37
188
91
123
138
122
92
88
56
91
92
134
92
112
105
105
104
124
121
119
104
126
79
86
93
41
69
91
107
37
114
74
103
127
93
126
123
138
86
67
86
67
97
134
84
139
126
120
92
146
180
178
109
100
93
67
138
109
98
55
55
128
128
55
124
124
151
67
114
126
139
169
123
123
75
178
127
107
92
104
56
84
101
117
119
127
119
140
99
148
140
93
104
104
99
92
168
114
148
78
93
107
110
122
91
92
146
137
105
126
140
152
92
123
92
56
37
139
127
104
122
126
122
122
83
138
92
145
86
93
68
138
89
55
98
55
110
141
123
138
134
75
58
74
93
126
86
93
144
122
139
104
127
122
131
105
37
74
55
110
139
148
55
55
74
171
93
124
161
55
126
55
138
68
56
129
76
127
92
126
117
68
126
148
92
126
122
79
93
58
99
95
105
111
99
93
92
119
104
122
69
162
86
138
56
122
152
109
67
138
129
77
69
138
122
135
93
126
110
138
92
110
165
148
55
142
126
178
126
122
147
110
75
69
126
115
55
134
178
158
126
68
162
92
104
92
69
101
92
129
127
134
92
122
92
92
83
104
96
67
102
126
110
37
74
167
146
110
92
110
92
144
180
93
67
112
140
74
126
37
115
58
122
158
143
67
91
105
141
55
92
99
114
86
67
109
67
58
58
128
110
128
138
152
75
99
56
92
101
110
56
139
104
134
124
56
92
95
127
123
93
91
140
138
91
77
56
69
126
152
93
110
56
105
67
139
55
139
61
144
37
97
69
101
110
138
55
76
178
158
56
120
56
136
104
101
122
136
138
107
56
99
120
56
163
67
103
138
105
79
101
67
126
55
164
105
111
144
171
93
123
162
97
107
152
87
119
146
110
84
127
58
67
55
110
178
74
55
100
122
123
119
126
132
77
119
111
55
127
67
56
144
105
123
138
111
79
130
92
86
111
69
55
103
67
128
67
122
55
116
122
126
122
93
132
93
121
104
139
138
144
101
96
55
117
132
111
56
91
55
56
138
158
122
162
100
130
88
83
55
58
92
163
89
92
110
67
152
77
55
93
92
86
104
79
78
168
138
178
138
107
111
67
144
109
178
130
138
67
77
138
91
102
122
58
93
126
55
126
146
126
91
117
110
126
93
131
86
139
37
86
55
126
138
168
86
169
83
163
169
55
69
169
78
122
128
56
126
68
55
127
58
122
84
104
139
119
114
67
110
146
67
86
106
168
126
136
109
37
97
110
146
86
93
79
108
126
178
104
122
128
105
111
128
113
144
58
114
122
105
86
92
129
152
128
37
122
126
105
55
92
77
97
138
135
119
158
37
138
118
129
86
138
123
92
107
58
122
123
122
111
74
119
148
92
122
146
110
119
171
58
126
110
122
79
86
146
102
105
67
55
55
109
121
147
93
138
178
104
127
106
111
126
126
138
79
126
92
105
55
99
86
75
139
122
138
56
105
122
107
123
178
124
86
41
77
105
98
124
131
80
58
67
111
92
112
138
114
105
55
119
104
178
92
144
123
56
128
67
130
128
123
138
99
69
86
127
92
110
144
104
58
150
92
118
103
67
76
67
140
104
101
146
111
92
58
92
105
71
97
56
119
152
122
164
127
110
107
118
134
110
130
93
103
79
126
104
101
69
97
55
83
104
108
55
103
55
55
95
138
56
136
55
126
99
69
107
138
126
138
124
74
55
37
122
110
86
119
58
56
75
168
69
128
55
67
134
134
110
169
145
72
127
55
146
93
92
55
55
75
86
78
137
107
93
140
86
121
55
146
37
169
106
122
103
129
78
91
132
37
138
122
139
56
136
93
79
127
126
112
37
75
100
55
55
123
110
117
126
74
178
104
112
140
92
93
122
110
94
110
67
93
160
69
103
75
109
100
135
138
138
79
131
125
138
105
67
146
171
104
93
93
146
139
93
55
104
137
77
92
110
99
146
109
109
121
93
95
92
122
171
146
86
86
146
124
127
92
122
162
68
126
105
69
105
178
55
137
122
110
92
101
92
105
55
105
103
105
92
68
78
105
118
94
37
37
144
55
178
138
145
92
112
122
127
105
104
58
91
118
105
102
178
122
124
129
92
58
137
68
111
126
92
122
99
106
165
97
144
91
67
55
110
92
120
97
92
132
55
105
139
178
94
105
110
89
86
122
88
83
127
126
74
55
110
55
139
144
105
93
84
107
118
100
100
56
138
122
138
138
122
67
55
55
103
105
127
199
127
92
145
93
69
105
105
86
144
119
146
92
104
109
37
119
178
178
92
123
98
122
79
106
89
97
101
100
37
91
58
109
93
128
68
79
91
119
93
178
126
55
105
138
105
178
55
69
138
93
92
140
178
152
67
112
77
104
104
122
98
110
128
110
110
192
124
125
134
123
105
86
104
110
96
67
131
93
99
110
138
140
78
144
127
92
92
67
146
68
110
102
144
138
127
110
178
178
178
56
128
92
67
114
84
58
103
88
92
110
126
109
104
69
92
131
77
120
79
105
55
130
93
115
105
139
126
135
83
55
86
86
144
178
92
127
119
55
67
144
110
105
124
79
126
138
99
119
58
130
123
55
58
56
93
111
160
148
92
152
152
100
111
122
67
89
58
61
178
136
55
83
179
93
92
122
75
169
93
126
86
87
148
123
110
105
55
128
109
92
93
108
92
156
93
146
56
128
127
138
81
123
104
95
83
127
88
92
126
126
96
188
110
118
88
66
144
168
37
55
80
55
68
126
163
92
128
122
140
93
102
55
110
56
167
103
143
95
92
111
91
74
158
67
84
110
126
56
92
178
119
124
138
37
119
126
110
105
126
56
146
125
84
105
122
97
104
138
77
122
37
126
126
93
98
117
132
122
126
37
103
67
122
92
141
123
73
107
178
67
163
144
146
146
138
138
139
144
37
107
152
169
122
122
164
192
103
69
93
152
77
55
55
104
92
124
55
67
93
92
138
114
163
93
92
118
158
127
122
134
92
146
138
104
122
158
110
128
110
105
110
56
75
75
135
103
67
130
127
55
119
122
69
99
107
109
180
55
126
152
71
128
77
104
72
55
105
86
93
178
92
105
105
111
131
131
126
91
178
127
105
77
123
164
86
140
122
55
124
92
74
75
118
74
140
156
98
127
107
110
169
75
110
144
110
126
119
105
55
93
110
92
152
122
106
152
78
56
139
103
58
69
67
79
188
126
178
134
105
105
144
146
169
119
92
69
138
105
110
58
89
107
56
126
67
93
91
111
178
138
91
56
142
105
104
122
67
55
74
153
55
92
158
92
109
37
37
109
152
101
137
86
127
178
75
69
86
126
128
169
105
131
67
134
69
55
92
104
92
56
178
122
67
79
144
164
81
105
55
111
92
111
67
106
107
144
119
88
107
58
124
128
178
92
138
136
122
74
127
92
122
97
110
55
56
105
110
37
78
109
77
99
111
112
55
58
110
139
127
118
127
138
110
103
77
148
151
92
165
92
180
122
105
37
104
122
139
68
69
92
135
126
146
92
109
103
134
122
132
79
95
56
93
87
119
67
138
92
105
105
137
140
67
67
105
103
67
144
93
110
122
107
119
83
110
139
127
127
84
164
77
56
110
58
112
126
105
55
109
139
55
67
110
37
188
152
126
105
128
83
86
104
91
58
139
119
124
74
67
56
139
104
123
139
156
97
107
110
93
144
91
127
138
117
142
88
122
99
139
142
103
104
113
105
143
75
79
55
92
134
56
104
138
122
126
106
110
171
121
111
56
144
122
98
107
56
88
99
139
75
105
178
130
138
110
104
168
83
107
55
102
146
69
128
92
108
144
123
93
138
110
126
167
126
122
178
124
122
104
153
67
124
55
171
119
79
180
126
86
108
135
125
140
146
58
122
152
67
92
144
83
138
148
91
122
69
178
169
122
55
119
55
107
178
109
67
92
127
69
146
108
91
146
107
110
168
110
37
84
122
67
139
139
171
168
139
142
122
127
37
74
146
67
56
139
92
67
132
115
128
122
152
122
37
144
97
132
152
126
104
110
55
180
178
84
68
37
122
146
92
103
55
92
105
97
138
122
86
74
139
56
92
145
178
110
144
101
58
55
123
56
139
83
171
55
144
123
105
131
79
105
74
107
140
144
104
111
128
80
144
67
91
110
123
110
67
140
55
144
56
79
88
122
104
75
99
140
105
86
105
96
71
144
115
56
55
69
110
92
105
67
134
98
110
91
93
79
115
104
92
122
55
92
109
93
114
178
104
58
89
123
149
67
126
122
86
56
181
91
103
178
104
125
115
77
74
165
55
101
164
169
67
138
111
109
81
163
121
74
123
146
178
37
122
109
110
92
69
126
108
140
146
92
86
126
55
126
138
138
123
112
83
55
37
123
99
105
105
110
126
86
122
55
128
92
123
127
67
153
169
138
55
152
56
148
105
140
127
88
75
110
98
93
120
107
120
192
112
104
120
146
153
126
146
110
178
69
107
99
74
114
105
109
93
93
128
67
92
67
86
138
105
126
169
146
147
102
88
119
79
93
122
55
67
85
110
74
107
105
110
55
69
68
144
144
69
112
79
126
127
118
137
111
110
127
56
105
75
67
158
122
124
110
92
111
106
139
93
86
110
110
101
122
79
135
145
74
169
134
74
74
73
77
92
139
140
91
128
92
67
110
139
110
91
85
93
126
67
110
144
199
122
105
105
56
140
171
158
89
111
83
130
126
104
107
122
168
138
55
92
55
91
123
37
178
134
120
58
146
92
146
148
127
107
74
110
105
99
111
74
92
169
77
110
75
164
165
104
56
158
104
128
105
79
135
55
119
98
92
111
92
102
103
99
139
67
55
138
134
86
146
86
56
110
169
178
92
164
67
180
55
134
169
158
139
180
89
93
93
108
110
92
138
110
144
110
140
120
98
96
178
81
67
92
92
55
122
92
92
169
119
132
130
107
140
105
111
127
93
122
108
178
105
134
103
122
129
69
119
56
128
97
110
110
138
127
149
99
107
109
136
131
118
91
178
138
111
169
104
58
67
124
124
74
141
112
139
144
110
92
56
86
120
55
69
122
162
92
122
102
101
171
178
58
178
126
91
146
79
104
110
113
56
151
126
132
92
74
128
55
67
68
119
110
58
148
55
100
160
109
104
144
145
98
75
110
78
109
92
37
114
144
105
67
124
83
138
94
152
144
139
77
110
98
136
92
144
100
105
126
88
110
92
138
55
56
110
55
110
127
79
55
56
122
92
105
83
122
55
138
120
110
136
178
169
178
144
58
139
92
139
162
92
139
146
138
145
105
79
106
75
37
165
79
98
178
56
113
77
84
92
69
122
162
105
107
80
91
105
107
134
115
68
110
79
148
127
56
92
130
55
55
37
138
144
55
144
134
152
67
107
138
104
178
37
137
137
91
130
119
93
112
119
140
113
99
118
109
93
146
79
163
103
74
56
110
56
55
123
171
92
128
138
168
138
92
92
118
91
122
37
124
123
126
114
130
126
126
56
55
92
110
105
125
105
123
122
128
91
119
126
67
131
92
89
79
138
100
79
138
69
97
58
162
58
99
105
178
58
146
122
92
123
92
138
122
92
114
58
105
138
140
134
144
127
178
55
75
144
75
92
148
126
139
89
122
87
92
56
111
83
58
105
103
101
55
114
105
124
67
67
92
122
122
110
128
55
138
67
37
58
103
126
139
123
124
127
55
104
144
178
86
131
125
37
55
74
122
99
80
67
126
120
67
126
65
37
67
104
68
141
123
122
56
100
77
89
55
138
139
56
119
92
140
105
123
139
67
148
111
121
84
105
126
110
93
122
138
92
93
67
111
113
140
92
141
104
92
146
105
110
87
103
105
126
89
86
56
107
110
178
72
124
138
138
56
126
69
110
67
67
69
104
146
122
92
112
130
126
99
92
122
144
138
128
111
158
55
119
146
136
55
138
110
163
178
126
158
171
127
124
105
178
98
86
58
55
56
58
58
152
84
139
139
84
91
91
167
123
138
58
122
122
37
138
122
91
55
92
89
146
75
127
86
92
111
127
109
115
123
120
171
103
86
138
142
146
92
126
110
123
139
146
83
56
69
79
77
106
140
122
138
107
98
55
74
110
124
126
119
92
122
58
138
102
75
162
81
109
56
103
97
37
56
91
104
67
128
67
37
77
110
58
102
103
74
138
126
73
105
112
105
139
128
104
122
122
37
55
110
110
136
139
144
139
74
55
67
92
120
126
111
37
138
139
119
92
122
110
107
110
105
138
55
113
55
55
122
131
108
138
178
113
138
144
91
93
126
84
199
55
171
111
126
105
55
55
130
163
92
110
105
86
55
128
67
138
98
144
56
75
91
67
109
56
93
130
128
98
74
97
122
84
140
122
105
55
144
55
138
91
92
92
118
126
69
114
127
139
74
128
67
146
76
138
141
93
55
105
142
109
79
109
180
89
126
55
139
171
98
58
95
112
69
110
134
101
93
104
199
137
169
125
122
86
130
110
56
55
147
144
119
67
178
122
110
127
69
91
149
56
128
111
79
92
178
122
105
126
135
83
56
99
105
106
103
55
171
122
105
111
122
58
99
141
37
128
55
128
95
105
37
111
146
110
132
126
83
88
55
105
89
122
69
132
67
122
97
178
114
114
98
69
110
146
109
112
109
91
122
126
127
110
74
110
152
55
146
168
56
56
126
127
105
123
98
67
122
69
139
92
126
124
75
58
138
128
127
37
105
69
152
128
102
67
78
153
138
109
122
68
86
92
119
110
79
105
77
152
158
93
146
77
128
87
56
97
56
128
110
134
112
169
122
67
55
92
69
55
74
127
178
93
105
55
37
67
110
144
178
92
104
37
117
67
56
118
128
144
126
92
110
87
91
126
120
86
67
162
110
127
92
126
141
124
83
128
93
122
107
101
92
109
107
37
67
98
106
140
127
169
139
67
56
56
56
92
139
55
104
126
138
144
127
105
168
76
69
110
69
134
55
138
56
138
126
95
112
126
105
171
58
37
152
111
56
165
103
105
160
146
146
93
113
107
91
55
122
79
178
92
75
178
122
95
171
58
67
105
92
138
122
105
126
119
91
148
110
92
78
79
69
138
128
137
127
142
152
101
123
112
92
79
144
92
178
119
55
79
92
110
110
37
55
117
119
122
93
37
89
110
171
119
152
109
114
98
92
126
58
56
104
138
92
148
126
92
104
67
106
131
75
92
122
124
122
122
93
117
107
123
92
104
74
84
158
110
55
55
103
92
37
93
96
131
163
111
87
105
122
86
178
122
126
144
91
41
87
109
104
93
111
142
138
104
124
138
97
107
37
139
128
117
110
119
112
92
127
134
144
83
142
137
146
132
109
93
137
112
106
99
128
152
164
55
148
152
79
111
178
55
144
144
103
120
109
55
37
138
105
126
139
110
104
105
110
107
180
138
164
111
105
37
122
92
134
111
138
58
117
121
92
169
132
171
79
92
92
58
124
37
110
110
162
94
104
93
98
37
146
77
79
134
102
93
148
110
104
114
99
92
122
67
110
110
119
109
104
140
171
105
148
56
74
110
111
123
123
140
110
126
79
98
138
75
94
168
110
92
128
152
160
135
89
74
151
55
144
67
74
86
164
104
125
93
107
122
164
108
83
112
77
126
55
148
155
137
137
86
91
105
146
163
128
148
140
138
105
91
110
98
97
109
119
152
109
130
69
109
122
126
69
104
67
67
123
104
67
167
145
106
67
83
81
105
84
55
139
92
93
152
119
138
104
107
145
92
144
178
75
83
105
169
146
37
55
105
146
126
163
94
92
105
110
58
152
95
140
74
56
122
74
104
126
67
104
104
118
97
84
92
67
146
104
114
110
158
118
58
83
58
122
67
55
75
108
164
104
152
103
123
93
113
56
99
80
67
105
146
131
106
67
99
104
111
144
131
144
107
104
92
92
171
92
115
87
135
122
104
100
146
92
97
92
128
110
126
92
91
69
92
86
118
56
104
97
110
124
169
103
138
105
152
100
55
109
122
123
93
74
139
74
126
122
91
93
107
128
92
127
92
122
120
107
138
55
180
126
126
119
79
91
58
107
152
152
120
69
86
110
110
144
58
102
168
56
79
107
110
91
129
105
152
168
56
122
144
91
104
92
120
104
126
79
95
105
92
123
122
119
169
120
103
93
83
67
146
55
127
127
137
122
109
138
105
137
93
145
122
131
55
144
124
99
127
77
120
125
105
92
108
91
138
107
37
92
105
144
135
86
37
128
69
140
137
93
93
122
101
69
99
127
102
114
111
105
168
178
74
67
120
105
111
163
178
139
152
92
178
139
127
146
86
74
75
58
117
126
92
165
171
92
110
86
56
55
124
122
138
126
92
77
55
126
69
114
37
122
69
87
126
67
69
125
110
101
134
67
123
83
67
77
122
95
55
86
140
55
75
146
109
120
105
131
130
79
92
93
158
122
86
122
67
92
139
105
92
140
110
92
93
117
138
163
55
111
77
122
77
101
102
120
86
55
92
55
118
105
79
110
103
126
109
110
104
91
88
69
126
110
117
146
109
118
139
132
56
105
110
111
103
37
123
55
55
152
110
110
86
93
105
100
158
88
92
162
56
136
122
120
138
110
105
69
93
97
178
55
110
79
152
110
100
138
116
143
122
83
92
148
171
139
126
158
56
110
37
111
124
55
128
104
110
115
164
55
86
131
138
131
169
55
111
111
105
138
100
123
88
111
56
91
111
126
122
171
178
145
92
112
84
142
86
81
106
56
126
75
134
92
134
75
118
55
110
104
105
123
67
140
111
91
138
180
67
111
137
199
163
86
144
142
138
123
101
92
67
56
67
115
77
92
178
99
56
64
138
158
126
140
95
135
104
134
148
92
67
93
55
77
69
127
93
92
111
79
138
91
123
102
110
93
105
104
93
105
126
110
101
65
75
114
122
111
105
132
67
37
92
112
139
126
58
138
178
111
139
92
88
58
55
138
105
55
77
92
138
37
94
55
105
99
97
118
55
99
92
77
178
58
92
138
110
104
152
124
134
165
110
37
144
98
92
110
136
138
84
122
69
163
140
178
93
37
93
67
135
122
91
138
75
86
119
110
162
158
138
112
122
92
105
114
84
106
79
127
109
69
93
92
144
119
126
55
130
109
131
152
146
55
138
119
92
118
122
92
92
152
105
122
119
152
58
105
86
83
109
74
93
122
158
93
112
146
126
120
92
107
37
109
139
137
92
126
92
93
136
74
139
123
55
77
37
79
109
93
146
123
67
120
92
93
93
140
56
122
109
110
110
144
130
138
58
102
140
115
114
139
55
92
92
126
37
67
92
58
105
77
121
126
110
123
92
138
92
122
102
131
69
146
104
162
93
119
171
103
83
99
75
126
92
37
144
138
131
91
105
104
123
138
74
114
104
78
80
97
140
136
105
67
105
92
119
86
163
110
86
88
122
105
178
126
75
56
112
97
162
74
126
144
56
75
67
83
138
55
110
110
97
130
84
92
92
110
105
126
102
111
134
122
79
92
128
105
93
148
132
144
131
84
123
56
92
55
122
104
81
68
92
115
163
123
149
99
105
138
139
37
100
56
111
112
164
110
144
105
109
145
138
55
37
37
129
74
114
74
158
102
120
105
69
83
140
77
110
86
140
138
104
104
69
112
130
127
102
138
139
148
140
138
93
110
92
91
148
67
123
99
92
55
93
126
113
139
144
119
124
92
69
67
110
92
93
93
74
77
92
132
111
92
142
122
93
93
109
178
138
130
99
102
104
122
156
92
55
83
92
67
131
122
93
145
143
110
126
126
139
91
56
67
84
56
67
138
108
111
140
136
92
119
79
107
123
139
93
108
55
131
138
92
69
84
110
74
141
110
104
126
111
122
146
88
138
67
58
55
88
99
69
122
56
56
122
101
138
111
112
142
91
138
56
98
105
117
58
92
104
168
75
141
111
122
126
122
69
55
92
92
122
123
123
107
92
124
99
104
123
122
128
84
178
102
89
162
111
104
171
180
144
138
93
103
67
92
91
138
110
102
137
145
130
131
110
86
122
139
109
126
95
122
80
77
122
123
56
55
162
120
169
123
108
69
92
105
122
118
148
145
124
86
119
158
111
77
142
122
146
110
109
86
126
75
109
97
126
37
103
181
131
73
55
86
75
86
126
146
55
86
152
79
178
56
106
84
101
110
55
140
104
148
104
137
117
127
88
68
114
93
99
126
92
110
178
107
134
75
158
93
105
92
138
67
138
127
86
122
67
55
58
100
92
119
58
144
92
92
109
104
124
119
169
67
92
169
139
142
138
110
79
92
93
118
75
138
92
58
104
92
107
144
110
99
77
79
93
105
104
148
92
112
152
55
93
178
105
119
92
105
127
129
58
55
136
142
111
97
104
95
102
119
56
77
122
74
55
126
126
37
139
37
130
144
162
129
79
120
105
74
119
178
74
122
55
79
117
116
152
123
139
123
93
126
139
78
37
55
178
37
122
67
75
108
117
139
104
138
79
105
123
67
138
119
97
144
124
101
110
91
37
126
144
144
118
165
110
92
117
163
119
123
122
104
140
152
138
144
64
86
110
105
113
144
110
139
110
132
93
138
109
148
140
37
134
55
55
110
180
105
92
124
122
162
58
124
93
100
55
93
56
56
79
110
110
86
148
139
138
158
178
123
182
74
139
110
103
74
111
77
127
105
75
56
110
92
37
169
168
92
77
55
138
131
164
67
142
105
100
106
55
131
37
103
93
188
110
138
91
146
126
168
153
128
105
101
58
106
84
37
69
134
126
93
105
55
92
84
101
148
58
118
138
152
138
93
138
69
140
92
127
105
122
95
104
84
74
110
105
138
104
110
104
110
126
69
119
105
139
119
131
98
77
67
92
92
119
146
105
157
74
104
58
103
138
92
55
109
144
152
114
119
142
93
79
130
132
102
74
55
105
127
171
95
109
77
67
119
84
126
199
104
111
55
55
74
79
104
86
126
138
92
138
126
169
148
55
139
55
105
112
37
91
110
92
126
122
138
56
144
37
99
91
69
110
110
55
124
169
69
127
89
104
55
146
100
79
56
178
182
55
83
110
126
55
55
56
110
163
138
126
122
105
56
102
69
105
134
56
110
140
139
122
58
93
124
67
100
158
119
137
126
89
110
101
114
180
144
37
93
148
201
124
124
139
79
110
130
111
123
104
138
140
56
126
158
37
93
180
141
104
75
180
93
119
105
140
138
145
97
119
55
93
122
92
146
105
128
74
108
169
92
94
105
122
169
92
105
178
122
92
122
128
105
123
109
122
105
122
86
162
110
95
123
105
105
137
122
127
93
131
92
93
55
110
122
105
101
37
86
84
67
144
149
111
55
102
77
152
105
127
139
83
122
134
105
110
86
105
104
122
79
169
68
169
103
122
117
92
92
83
124
77
104
128
122
123
122
139
130
92
114
153
122
122
111
55
126
99
112
120
105
92
126
92
37
132
99
99
152
110
89
58
91
110
117
91
169
67
109
92
178
119
97
122
122
105
67
130
101
109
112
110
144
171
138
126
120
86
64
102
75
55
140
74
122
178
101
55
91
99
135
105
138
91
104
99
103
178
168
99
74
152
178
126
152
105
105
135
89
105
139
103
92
126
127
92
138
124
80
91
55
89
126
127
138
92
83
120
178
92
136
126
138
128
148
138
58
127
118
138
68
127
167
110
138
97
139
87
110
67
89
67
123
126
127
91
100
75
88
123
55
120
92
55
92
178
148
101
123
92
74
139
99
158
107
84
146
105
144
118
93
100
64
99
126
92
128
102
126
109
56
165
139
69
99
105
124
55
105
77
55
77
55
178
95
86
138
117
178
126
128
131
109
125
144
56
105
92
129
110
83
67
37
92
102
114
128
119
93
92
127
86
105
169
126
144
100
127
124
144
152
104
118
105
93
138
127
169
37
92
126
107
110
130
101
135
95
178
150
67
126
112
122
56
168
107
92
68
83
107
129
109
37
79
92
199
55
127
105
178
72
77
126
119
104
106
87
105
111
93
67
55
56
92
131
119
104
168
55
55
102
107
68
178
182
88
114
58
126
146
128
77
126
103
103
159
104
105
122
92
89
92
168
123
152
55
100
114
160
109
134
138
56
68
152
92
100
55
92
37
126
58
122
165
86
164
103
104
67
158
101
164
122
92
55
124
92
126
55
138
37
107
139
104
91
128
138
118
67
92
86
93
92
56
79
138
110
105
111
152
146
55
100
110
92
79
119
67
105
171
86
101
142
55
69
67
152
171
122
131
110
55
135
107
119
92
169
112
104
135
56
104
74
122
104
111
75
146
58
78
99
92
101
67
104
58
93
117
67
110
79
138
83
92
130
92
104
112
127
84
83
138
99
107
111
67
126
160
122
158
101
55
58
92
74
55
109
77
103
146
101
55
128
37
97
130
178
138
55
169
100
105
55
122
144
148
162
165
81
83
92
148
37
112
138
122
144
122
67
160
79
178
93
104
56
105
128
110
92
55
151
97
146
103
55
111
97
150
116
131
83
98
148
140
56
163
93
104
97
105
92
58
119
104
113
37
102
144
139
130
123
110
119
83
111
148
127
126
109
167
140
117
93
55
55
146
56
109
126
126
92
108
101
86
122
95
126
128
56
93
37
55
55
58
112
127
152
77
93
132
104
139
97
141
138
75
58
138
67
108
119
154
178
67
146
110
55
126
122
146
127
107
58
92
105
180
100
118
92
67
86
58
162
112
56
126
86
169
146
126
119
138
178
93
75
55
178
144
56
124
127
110
140
99
87
105
97
141
55
132
84
126
123
116
138
58
126
110
74
126
105
110
139
92
120
104
58
110
128
105
112
152
131
107
58
99
105
121
178
92
92
110
122
58
56
122
89
128
72
126
138
56
111
109
110
92
119
129
139
67
92
103
124
122
138
122
104
67
169
120
84
109
146
123
105
56
146
75
107
37
111
104
37
110
104
58
138
127
55
126
152
56
64
134
126
122
122
122
55
86
152
105
169
92
55
92
58
79
69
104
93
127
149
138
110
55
86
110
104
126
80
146
92
56
126
105
69
55
180
128
120
74
138
103
67
122
146
125
68
147
105
126
115
137
110
122
110
74
55
109
112
138
122
67
139
168
92
150
139
55
79
78
139
110
121
134
92
119
105
93
89
58
114
92
122
138
130
105
105
178
146
148
75
95
99
199
124
77
134
152
105
144
144
98
140
55
105
138
77
95
146
178
55
104
122
68
110
130
86
105
110
109
112
127
123
100
69
139
163
112
111
79
146
104
83
111
101
109
105
105
56
55
125
104
86
126
69
110
122
104
69
127
136
104
148
110
160
126
105
178
102
92
110
74
67
97
104
114
122
86
110
78
109
37
105
67
67
122
55
88
122
86
152
92
144
37
83
92
131
79
138
144
107
138
104
110
139
145
122
104
188
92
138
109
55
56
83
180
67
56
163
138
92
178
122
56
86
92
93
92
84
178
139
104
122
139
37
134
120
126
37
126
178
127
103
92
105
146
69
150
56
93
86
86
106
117
75
89
105
105
110
92
79
122
105
139
105
152
78
103
84
58
92
56
56
127
178
119
107
99
139
139
92
122
109
55
110
86
99
139
130
103
109
127
122
123
139
105
85
75
91
92
110
92
169
92
105
138
105
92
168
105
92
55
115
68
138
92
103
67
93
138
107
105
108
92
138
135
142
55
138
93
110
130
104
105
103
111
128
127
56
91
122
160
139
163
86
93
137
107
55
92
55
110
100
138
73
55
122
37
67
122
111
144
55
140
83
110
100
76
150
92
126
152
92
111
138
152
148
91
118
136
101
69
122
91
138
100
58
92
144
92
103
110
99
102
67
140
138
138
119
67
58
131
95
68
69
77
130
138
91
100
110
92
104
105
58
124
58
126
91
93
75
79
126
169
128
92
92
124
92
127
146
56
132
104
55
146
106
68
55
127
127
86
93
127
123
83
172
64
69
91
110
93
126
58
122
125
107
122
146
127
56
98
77
144
99
126
93
110
140
55
102
75
77
74
178
55
86
139
92
37
74
122
146
123
111
126
56
104
122
146
104
56
104
75
138
127
146
92
93
140
104
178
92
158
138
122
92
80
77
126
110
110
126
104
126
110
92
77
138
89
158
110
67
136
110
93
134
105
136
132
56
138
37
126
99
81
93
93
93
75
58
122
75
92
37
130
64
93
92
74
134
120
126
82
125
126
130
122
55
108
122
120
37
125
109
169
119
56
138
106
56
98
131
110
79
74
79
122
91
178
103
55
178
92
119
126
148
111
110
97
152
114
93
119
69
104
148
93
87
105
37
93
110
110
126
99
120
92
118
137
105
104
92
55
138
178
104
86
70
132
109
118
86
67
93
37
126
110
124
134
93
122
109
122
84
55
100
92
122
93
178
99
127
105
93
67
126
104
79
178
139
122
123
91
75
163
74
104
139
97
58
79
122
67
104
132
127
105
138
111
91
74
122
92
111
55
139
138
96
67
144
127
67
144
55
138
127
56
89
74
114
99
101
102
55
157
134
126
91
139
138
67
67
103
79
128
169
122
91
105
122
75
104
79
110
105
122
107
74
67
160
84
96
58
97
56
164
178
92
97
168
67
138
88
117
92
105
122
84
128
99
104
122
69
127
127
126
92
126
69
146
99
77
56
97
58
92
56
144
92
132
162
178
92
105
141
88
69
55
126
138
123
92
92
55
148
103
123
55
127
138
79
127
92
97
127
121
79
105
119
105
138
67
126
93
92
128
92
67
58
139
127
56
110
110
110
98
94
124
129
92
139
69
104
138
79
105
134
55
132
110
110
69
67
93
92
140
97
111
99
110
69
145
98
180
112
142
88
109
83
122
117
58
67
140
55
93
105
104
178
58
64
92
138
55
86
120
139
56
139
69
104
79
108
55
97
109
127
138
137
128
178
110
69
102
55
67
92
124
122
144
93
112
124
93
132
117
78
178
103
130
123
68
99
144
91
137
104
128
103
126
134
105
91
138
105
99
128
67
67
93
92
139
129
105
138
134
148
167
180
83
140
136
84
107
119
126
103
99
180
139
86
127
128
105
92
136
110
69
103
123
138
119
119
107
56
135
135
162
127
89
144
104
55
119
178
119
91
126
146
123
126
189
67
140
178
126
108
134
126
92
126
110
134
112
152
105
105
77
145
107
128
55
37
146
112
110
110
55
146
92
92
92
148
37
139
79
116
92
105
105
126
114
92
127
93
104
55
109
69
139
135
98
69
119
122
77
89
55
124
146
126
128
56
171
139
167
92
138
120
37
105
92
56
74
83
104
86
124
104
67
93
97
104
126
86
111
128
105
92
149
74
127
121
103
119
106
58
74
110
77
56
58
96
110
68
92
77
126
83
99
165
135
124
127
138
74
93
92
120
111
132
134
120
56
86
117
152
56
134
104
134
107
126
55
152
68
74
93
107
83
92
86
104
58
55
152
111
111
144
75
79
110
119
104
139
55
96
92
139
118
89
67
67
93
106
93
122
55
138
77
126
138
92
146
79
138
86
107
114
158
108
105
104
122
92
104
138
55
127
69
58
75
92
93
126
140
122
91
126
79
111
139
110
123
124
144
92
67
127
110
102
135
111
138
69
147
93
110
151
119
128
148
126
67
138
109
55
91
89
75
92
122
92
115
147
104
128
109
55
92
93
132
107
126
55
69
92
139
138
89
151
56
144
127
67
105
138
93
140
103
91
99
92
146
86
79
139
110
152
152
138
138
92
112
79
110
152
79
181
122
144
132
127
86
162
58
92
134
92
127
137
188
126
146
91
158
92
102
37
126
37
37
146
123
67
67
98
105
110
77
163
84
148
178
127
86
74
136
122
126
110
114
148
93
134
93
152
110
37
122
58
124
92
138
67
105
124
139
92
110
93
180
55
105
102
126
182
109
110
91
111
122
110
55
93
110
79
106
67
55
75
107
169
58
103
124
92
78
112
138
139
92
107
126
104
69
169
69
55
137
107
107
105
111
92
55
110
107
67
104
69
129
55
127
144
133
83
118
105
120
126
68
101
91
111
139
146
81
55
178
104
93
126
107
130
136
143
123
126
58
107
105
93
56
146
122
105
105
126
92
86
93
92
111
126
95
55
126
56
55
37
182
69
91
126
79
128
108
74
164
127
75
160
115
122
67
132
67
111
104
126
140
128
37
55
132
139
58
131
55
92
105
91
151
92
127
138
105
122
122
55
128
122
86
146
95
110
56
110
110
55
69
120
92
56
127
88
120
122
127
178
158
101
158
77
93
110
110
123
118
37
86
140
138
111
55
69
110
92
56
126
107
131
55
93
93
152
108
144
122
110
180
109
92
68
121
98
118
55
93
92
139
134
112
178
93
110
122
92
178
75
178
126
131
85
178
126
112
74
102
91
77
56
126
110
122
69
56
37
146
55
74
138
100
105
139
124
110
127
122
55
92
114
122
68
135
86
171
103
79
97
92
103
139
68
138
56
77
93
139
120
92
136
126
93
124
103
88
67
152
114
104
119
122
55
121
128
131
122
126
148
138
105
110
111
105
108
145
56
56
37
138
104
105
149
130
79
68
158
69
105
101
123
67
67
130
138
138
97
178
105
112
100
92
128
169
189
83
94
110
146
92
110
122
58
93
98
110
158
117
55
127
109
144
89
58
55
94
92
119
105
104
110
99
114
79
111
107
144
56
146
84
140
67
119
92
37
98
58
92
122
55
84
55
127
67
92
138
93
58
99
127
92
105
122
55
146
105
169
55
103
67
169
142
144
124
146
77
105
126
105
55
146
146
139
55
119
67
86
92
78
144
93
122
152
168
148
92
110
79
134
56
145
119
58
55
86
55
92
122
126
73
119
67
91
169
139
99
110
119
138
140
93
127
104
55
56
104
56
56
55
122
111
134
138
56
92
79
139
79
144
139
112
118
110
92
178
119
126
68
162
110
55
144
58
138
158
79
58
123
77
58
105
37
84
55
55
144
144
128
162
148
92
92
110
92
148
140
103
110
79
91
125
86
58
37
92
99
105
55
126
58
110
127
127
111
67
164
92
127
128
146
127
105
139
37
92
122
127
105
99
136
77
126
138
126
93
104
105
110
95
91
69
55
92
107
146
67
134
121
74
104
105
78
110
122
111
122
162
99
67
122
103
104
139
104
104
127
122
110
144
104
123
58
119
138
138
55
160
132
69
37
110
114
93
171
97
55
55
55
171
109
93
105
67
110
99
126
169
55
56
91
68
107
122
124
148
37
74
110
105
152
140
92
110
120
165
114
58
92
114
104
139
130
92
67
123
77
75
126
124
188
178
105
68
140
130
163
91
92
91
128
56
144
110
122
105
92
123
144
146
89
121
67
152
55
104
101
138
110
67
37
67
163
37
122
93
69
107
56
140
126
109
110
91
67
99
77
83
74
178
67
67
182
99
58
139
86
67
105
89
146
139
79
152
105
104
169
130
101
158
132
139
122
127
105
110
104
109
93
55
128
87
136
122
67
56
56
55
146
81
122
91
146
58
107
110
58
56
58
55
94
55
58
148
120
110
67
119
105
178
122
160
122
107
128
104
37
122
109
103
58
74
123
56
105
132
178
171
178
104
126
97
75
92
67
122
169
107
104
87
138
131
101
99
126
71
67
98
93
92
105
138
97
105
120
55
67
110
111
91
110
78
37
92
130
124
101
74
55
178
67
124
135
56
56
104
122
92
138
58
93
138
84
68
118
104
110
92
112
107
104
110
150
103
92
123
56
79
37
67
123
128
92
136
118
129
111
55
69
138
79
122
83
122
144
135
119
37
67
67
93
146
121
88
37
122
83
131
138
152
108
178
103
104
126
169
104
178
104
92
99
92
55
111
109
108
138
92
69
56
178
103
55
37
110
140
92
55
105
105
105
119
55
126
92
140
100
119
164
135
122
111
69
122
137
110
102
92
178
68
92
104
143
92
171
126
126
127
97
104
126
127
37
112
130
69
67
103
56
126
75
75
55
138
108
122
169
104
56
110
107
168
56
144
122
130
55
84
97
162
92
120
58
92
74
111
84
96
67
117
126
128
86
92
93
144
146
101
129
130
138
67
126
67
178
163
68
56
55
105
67
110
77
55
122
139
136
124
163
123
110
152
56
55
109
134
104
139
55
79
126
144
123
139
144
152
109
124
110
138
109
144
55
91
86
67
144
112
169
56
122
105
148
127
124
112
92
78
75
55
67
92
111
130
94
158
114
132
169
127
105
93
105
87
110
126
178
139
105
67
110
55
122
56
122
69
119
58
122
58
67
105
56
134
108
171
104
139
152
128
87
100
99
131
93
152
92
92
114
138
126
99
55
68
105
97
152
126
138
110
69
126
37
105
161
178
148
103
119
178
139
97
86
118
138
91
138
93
158
124
67
86
152
92
110
77
105
56
118
110
55
110
104
130
148
201
92
122
117
55
138
105
138
123
74
55
105
110
101
114
83
105
127
127
138
84
101
58
93
122
140
105
110
122
91
123
104
92
56
111
79
138
169
75
131
69
110
110
74
103
37
93
105
122
104
96
144
111
56
163
114
112
123
144
122
178
139
122
67
122
93
126
92
58
110
58
110
107
100
93
92
69
86
126
122
74
126
142
55
178
67
144
74
123
114
56
138
98
123
130
56
119
120
142
92
93
144
126
55
110
94
103
109
104
58
92
55
106
144
139
124
105
93
120
110
128
139
111
119
58
58
93
110
126
115
136
110
110
55
69
110
58
152
127
83
138
56
169
69
107
56
94
110
126
37
103
83
122
122
158
138
83
122
104
126
105
55
105
178
147
108
58
109
169
110
111
123
111
158
56
56
130
124
178
144
88
138
132
128
74
55
91
138
105
79
104
126
146
105
139
74
91
58
67
92
55
99
105
140
56
105
122
122
169
138
124
126
110
103
126
110
55
93
121
120
68
79
169
104
67
119
138
128
109
111
122
138
67
86
56
110
69
58
67
171
126
85
103
126
128
55
122
134
152
118
138
152
93
126
128
112
140
141
137
138
142
114
58
126
119
110
55
55
37
118
92
56
144
167
122
122
64
127
129
106
111
138
144
122
126
122
115
163
56
93
110
110
126
110
99
122
105
135
134
114
132
122
105
110
123
55
105
55
92
152
56
105
128
152
138
91
93
107
128
77
103
135
124
95
106
100
100
109
37
55
114
92
93
67
144
69
127
114
110
100
89
136
127
126
114
79
144
92
162
126
67
56
93
67
91
160
144
92
167
119
127
107
74
92
110
171
92
127
67
55
114
55
152
178
105
126
180
146
138
110
109
55
105
134
124
127
138
117
142
122
58
68
126
92
126
91
102
58
69
144
130
144
58
92
112
93
122
127
92
58
92
107
98
140
123
126
128
125
110
122
56
96
104
93
119
109
138
152
92
122
105
92
55
37
165
178
92
101
111
118
104
126
83
99
92
92
92
105
55
86
105
134
92
107
111
126
104
122
146
144
127
138
67
122
199
138
75
122
77
104
69
74
180
110
102
128
171
103
147
144
126
148
106
171
92
122
108
92
93
93
120
148
128
58
122
67
69
113
109
93
101
92
105
178
69
97
115
55
135
178
77
134
122
74
122
77
122
93
92
126
105
139
139
94
92
110
126
67
105
56
138
138
74
99
79
105
92
75
122
105
105
148
106
138
105
122
104
139
105
93
122
99
91
147
126
92
92
178
144
117
126
178
92
92
152
122
89
122
67
112
56
86
69
115
95
126
67
69
55
139
80
92
105
138
91
126
135
121
55
69
152
178
55
105
67
105
67
123
138
98
128
110
75
93
93
117
153
111
93
92
55
77
139
126
92
56
55
69
122
123
37
134
92
163
55
182
74
67
145
126
93
109
86
79
92
109
138
107
152
154
77
128
55
104
67
102
92
74
163
92
107
109
146
131
138
105
169
138
37
152
69
107
58
55
69
56
105
95
144
67
91
199
138
69
199
122
127
104
122
37
146
130
142
126
111
128
80
67
129
109
158
93
113
93
119
104
55
110
123
137
77
138
86
69
108
105
91
92
105
119
119
104
110
144
92
86
137
83
93
163
142
69
96
84
64
92
86
84
152
134
101
102
105
92
92
114
138
168
69
146
104
138
91
126
37
109
138
163
138
67
105
158
104
55
134
144
104
124
116
109
124
102
37
138
110
127
56
178
74
69
138
122
56
105
110
122
58
56
122
122
132
79
55
104
97
128
122
92
120
97
104
104
144
84
127
137
75
105
109
118
144
126
92
58
77
55
102
138
105
122
122
55
56
141
58
55
55
75
123
56
122
104
118
180
106
123
93
120
126
103
88
93
111
122
86
93
56
165
58
75
69
197
67
146
110
127
148
162
92
138
149
168
111
127
129
92
105
69
122
138
68
79
114
110
180
169
93
138
108
126
58
104
78
55
93
37
67
104
104
169
107
55
105
56
144
55
91
67
77
109
126
104
92
123
79
91
67
127
55
58
112
131
109
99
146
168
124
110
142
110
37
126
106
56
105
37
122
138
41
138
104
64
56
105
122
68
58
92
149
93
130
127
97
68
95
55
84
138
58
128
55
126
92
134
94
81
107
123
92
103
127
111
110
122
55
167
37
97
67
138
37
139
144
125
112
123
75
91
122
160
122
109
127
146
110
139
92
117
112
105
83
58
37
137
67
55
91
144
77
148
80
83
92
130
105
105
123
99
110
55
92
171
55
105
86
178
104
140
120
108
168
93
93
132
140
146
135
77
110
126
126
124
124
88
126
119
86
93
122
127
115
146
97
107
77
119
93
124
169
192
92
92
169
56
109
146
92
56
75
75
123
91
67
56
171
122
104
105
58
67
67
146
140
150
75
88
148
148
75
123
102
126
92
105
100
86
144
104
92
128
122
105
152
105
67
134
110
122
139
55
110
127
122
91
110
138
148
119
110
77
99
130
110
92
99
138
126
74
74
138
110
110
107
107
126
55
55
56
86
152
96
141
122
103
126
55
95
92
92
144
139
93
80
132
109
123
56
104
55
94
69
103
92
139
104
105
56
178
125
92
103
92
139
124
123
105
105
111
130
169
58
92
144
128
104
139
130
138
139
169
111
138
91
93
55
144
77
158
110
55
131
56
107
69
137
92
37
55
123
138
88
103
126
138
122
67
103
110
136
79
178
93
111
126
92
93
144
110
110
122
125
55
122
110
111
131
55
110
86
105
114
86
92
126
67
79
158
55
144
104
122
139
182
67
92
58
122
107
99
110
110
140
122
58
125
105
115
75
98
104
126
58
110
104
55
105
103
146
162
67
169
58
131
92
58
68
86
135
119
37
105
144
75
110
169
105
110
125
117
123
77
107
105
93
67
37
104
138
138
93
110
83
132
37
92
37
111
121
138
67
74
139
146
110
122
120
122
144
56
74
89
105
56
126
67
150
144
92
77
92
130
119
58
67
92
119
55
123
124
117
55
79
111
139
67
131
140
68
75
126
122
105
127
127
144
149
158
144
56
171
127
55
122
55
58
58
93
105
122
79
88
126
169
93
171
84
144
112
105
56
75
58
92
168
138
104
128
97
163
119
77
110
146
111
167
103
55
119
91
58
131
56
148
118
92
55
111
91
75
138
105
92
122
151
55
99
58
128
138
91
55
99
105
93
74
110
122
134
152
69
104
110
69
86
69
148
110
126
126
122
86
167
140
56
140
152
84
117
140
92
99
86
95
105
126
56
92
37
139
127
122
92
122
126
110
131
106
69
123
109
124
79
127
86
92
114
105
110
115
69
126
136
152
93
101
141
105
101
129
104
110
92
178
146
83
115
89
152
37
144
114
93
128
75
139
77
79
144
122
122
105
122
93
152
104
67
69
95
78
37
124
112
127
104
56
110
69
58
115
74
110
101
105
124
100
126
84
91
110
77
99
55
117
152
192
56
122
93
168
89
104
138
92
107
55
138
145
92
55
67
141
178
92
126
152
107
107
92
92
91
55
58
126
126
69
67
92
139
95
68
110
110
126
138
76
178
144
128
169
143
100
109
130
67
56
142
104
109
139
93
111
109
132
110
163
110
56
120
178
111
67
171
148
99
139
107
67
144
128
92
56
103
93
56
56
127
77
104
79
138
93
92
92
126
98
92
96
113
126
110
127
122
105
119
169
131
105
86
139
117
72
105
105
126
144
106
105
55
138
110
106
97
178
105
104
125
92
141
178
97
56
130
178
86
93
55
67
146
103
96
84
93
92
75
126
93
128
105
99
83
37
126
122
115
111
83
167
146
56
138
107
123
92
105
152
105
126
105
37
167
146
122
104
91
67
138
92
56
103
92
93
55
69
86
55
92
126
37
139
104
55
147
84
77
95
129
139
119
138
119
118
102
138
139
110
37
56
75
115
94
128
171
122
123
161
178
78
138
105
58
138
92
67
69
140
178
105
137
86
119
80
158
67
169
132
123
93
111
119
161
138
122
92
55
117
152
126
127
131
122
103
105
122
93
96
113
110
104
103
92
55
67
92
55
122
122
93
68
171
138
67
171
132
131
126
122
69
56
68
148
131
104
92
77
138
69
178
37
55
56
112
122
152
110
122
77
118
98
104
55
122
37
146
92
103
119
75
58
74
92
111
84
56
92
120
92
146
37
55
92
178
37
138
55
104
122
74
110
180
71
107
126
114
79
74
92
138
83
91
92
180
97
92
119
92
138
67
56
55
120
160
84
105
120
122
92
92
138
92
69
91
86
171
104
105
92
124
56
110
138
148
136
55
122
152
92
140
110
99
163
138
83
138
87
138
131
111
55
119
144
67
171
109
58
69
144
58
126
137
95
83
106
93
56
158
105
69
58
168
95
140
139
55
114
92
55
178
148
178
69
156
138
92
113
162
178
92
126
171
92
122
124
138
91
55
92
129
91
89
126
92
178
92
92
118
131
164
108
123
144
138
103
104
86
86
88
97
55
101
89
56
105
135
110
103
137
86
75
104
132
168
140
109
122
58
104
56
92
122
105
105
88
86
69
110
122
105
58
110
152
68
77
92
122
127
74
103
123
58
119
156
93
114
131
144
152
112
89
140
128
115
109
74
148
91
140
127
92
95
109
84
110
147
91
127
67
56
152
92
92
92
110
79
146
109
122
104
148
92
138
86
107
152
74
58
79
113
91
123
146
178
92
178
144
103
129
117
158
134
118
56
67
104
165
127
150
89
100
56
126
104
69
134
105
103
93
138
56
106
103
122
55
131
91
122
122
68
146
126
126
56
122
75
93
92
110
119
111
152
93
91
92
91
121
142
138
126
56
84
144
107
127
149
141
111
107
123
92
137
55
55
69
146
124
141
178
67
55
169
58
131
83
128
92
91
56
139
93
92
144
132
105
83
104
68
101
119
68
127
139
144
131
97
105
122
109
138
61
55
67
99
86
101
168
55
55
124
119
56
123
126
93
92
37
93
158
152
72
69
113
77
92
93
88
83
138
146
122
138
152
112
123
146
144
92
92
92
58
105
79
55
56
73
92
146
93
55
122
139
84
127
152
37
148
93
178
138
178
55
92
111
58
105
128
93
167
69
108
139
109
109
139
69
122
92
105
144
114
55
122
77
142
67
119
178
56
37
37
141
92
140
55
55
104
92
156
92
110
169
93
104
56
88
137
163
104
146
107
104
163
104
139
134
103
104
128
112
123
114
68
55
139
92
55
145
99
144
91
55
124
139
122
146
105
105
142
67
79
110
93
37
165
55
79
67
102
91
92
118
92
97
126
104
103
67
83
110
126
128
92
55
92
56
137
138
134
110
67
129
163
128
122
127
106
105
104
136
93
178
93
67
123
92
67
146
58
126
128
91
37
37
56
146
105
138
92
55
138
89
103
69
37
131
99
107
123
139
110
138
139
122
128
105
92
126
148
110
92
81
103
127
126
105
104
37
122
67
122
95
105
55
152
109
84
92
37
104
126
92
105
122
37
109
171
126
69
104
126
56
137
37
89
102
67
126
112
91
122
103
132
119
100
55
67
122
56
104
55
142
58
103
75
92
110
115
92
112
120
37
115
169
56
67
110
105
141
122
138
119
126
130
37
127
125
106
92
156
111
138
122
92
74
178
58
93
156
146
110
107
110
92
114
145
105
67
93
123
127
115
92
169
67
153
69
144
119
86
56
86
104
122
88
67
37
55
122
103
119
130
55
148
110
140
139
168
139
75
93
139
119
138
119
94
92
67
127
160
127
109
126
110
152
105
74
75
104
58
93
152
84
77
111
126
92
37
56
110
58
67
84
105
138
55
58
92
92
92
153
122
123
89
169
37
104
84
126
107
56
67
128
110
138
130
91
74
134
180
104
138
89
169
160
55
56
122
93
105
178
127
91
144
165
110
93
37
107
117
56
146
171
105
92
56
103
138
67
105
67
126
109
106
56
37
69
92
56
136
86
122
95
145
126
103
102
110
122
56
55
105
105
92
55
104
149
144
158
100
74
127
68
163
87
180
178
138
58
110
55
124
126
104
105
97
68
114
171
101
140
119
123
79
120
127
140
178
122
138
67
107
58
119
105
162
55
122
41
55
105
92
134
67
110
55
138
92
93
111
182
55
74
122
141
110
105
58
91
92
78
103
138
112
55
121
110
120
152
84
109
110
98
74
127
132
92
127
102
144
108
74
126
127
86
199
103
140
56
134
68
64
94
122
160
110
104
146
150
134
74
113
125
105
37
105
110
86
127
104
169
124
122
93
67
37
126
119
124
104
122
122
55
126
55
92
126
171
83
93
134
104
91
99
56
67
178
146
127
144
68
93
131
139
93
74
55
169
137
110
126
171
126
56
110
56
37
77
91
111
58
55
148
91
122
122
105
84
100
104
180
122
92
178
126
139
91
98
92
146
91
68
37
138
67
138
137
124
122
127
56
104
122
110
163
89
138
94
146
117
171
103
77
92
55
92
128
165
122
68
77
119
86
69
55
93
112
79
66
67
178
120
128
138
77
148
148
126
55
101
56
75
92
171
146
93
55
91
93
137
128
83
138
56
55
91
83
123
55
56
74
64
140
77
92
122
104
126
37
92
126
136
77
100
55
137
72
141
37
105
139
115
139
86
138
105
105
55
92
168
79
107
104
119
139
103
37
123
164
93
92
92
94
152
144
180
138
86
77
110
92
126
110
83
152
69
136
55
117
145
107
138
171
178
103
110
107
120
56
92
127
79
108
152
130
171
132
122
67
146
92
106
152
146
152
123
86
92
111
83
122
99
111
92
132
86
109
178
69
134
67
168
126
86
169
105
158
74
126
146
148
56
92
119
126
110
111
79
77
109
126
140
169
75
122
127
69
134
110
134
56
169
152
141
91
105
56
92
126
86
138
163
146
144
69
111
56
126
146
58
163
152
122
144
55
122
122
139
126
139
122
114
182
75
58
93
123
92
105
142
148
127
168
55
91
55
37
144
152
122
92
178
128
56
98
126
99
55
118
58
104
55
163
55
56
103
67
128
122
127
122
72
139
37
123
132
138
58
105
93
134
68
122
126
55
152
126
152
110
81
126
110
138
168
99
160
92
144
124
122
147
110
93
148
55
75
77
98
67
139
56
92
55
69
168
144
91
123
144
158
91
93
123
107
111
92
112
104
105
105
139
149
144
171
67
130
162
37
128
81
128
126
119
134
126
122
64
104
67
164
83
169
92
110
92
69
56
37
147
126
92
78
74
138
104
92
68
111
92
110
131
55
67
69
168
178
144
58
139
102
139
122
132
126
89
119
131
139
171
103
109
160
89
139
126
109
126
55
91
98
145
55
74
84
105
138
152
67
86
103
67
139
138
68
56
86
188
138
123
74
122
109
92
67
67
99
106
97
102
111
122
92
111
112
122
144
105
115
122
74
126
93
138
58
110
55
152
37
110
101
86
55
92
37
119
55
126
106
152
112
102
58
92
55
178
91
110
119
130
126
55
93
145
126
122
123
55
106
178
74
93
128
92
58
79
144
93
81
69
130
99
137
69
92
55
122
91
101
104
75
112
77
127
110
55
74
92
135
78
56
179
104
67
169
119
114
124
93
58
67
86
110
122
122
99
79
119
55
69
92
111
104
139
144
178
86
69
55
127
83
97
110
110
122
37
92
99
114
122
122
108
110
99
107
58
128
128
92
114
122
137
58
58
67
91
152
110
104
93
56
55
117
55
92
91
158
74
136
58
86
75
134
110
132
111
120
122
92
83
148
105
169
105
92
141
105
139
148
178
69
138
106
92
86
109
105
67
67
91
118
56
178
144
123
169
110
132
68
74
139
126
37
169
163
55
86
105
138
124
84
139
37
105
79
95
141
109
114
117
105
134
110
37
111
92
105
136
55
104
79
126
55
80
105
55
131
106
55
122
124
91
126
163
55
178
81
128
93
86
110
67
56
102
101
152
122
92
124
75
74
122
74
69
178
104
149
111
119
111
84
138
122
138
126
163
140
126
128
126
92
117
123
144
105
93
126
104
152
107
122
74
56
144
141
178
110
91
122
123
188
87
91
131
100
139
55
105
56
93
127
146
56
105
112
58
123
56
77
105
124
178
92
152
124
152
111
122
58
134
92
89
144
126
136
113
37
116
55
67
126
110
56
92
138
126
86
55
178
92
75
55
138
99
79
122
162
152
94
37
104
58
126
56
83
120
129
98
110
37
126
84
135
84
123
104
58
122
87
93
126
104
128
55
79
114
58
122
105
139
106
135
55
91
145
139
146
144
56
37
99
105
55
56
92
55
37
105
132
58
105
146
126
88
182
123
122
110
37
115
104
127
75
167
122
103
127
55
122
93
178
93
74
110
77
104
92
138
152
148
123
169
109
114
120
126
58
110
100
122
91
94
197
92
144
139
105
168
110
104
86
56
146
144
105
92
86
104
169
99
92
91
93
92
146
122
144
93
81
58
126
134
103
168
83
144
93
138
122
56
86
140
160
110
127
119
92
152
67
131
144
92
79
85
146
56
101
122
134
110
83
138
83
99
74
128
144
55
56
55
92
109
135
178
100
140
107
109
123
128
93
144
92
102
122
109
163
105
158
104
108
58
126
69
89
110
81
122
148
128
146
58
94
110
139
105
144
86
92
112
110
129
105
105
150
100
92
117
164
92
74
68
79
81
55
146
119
117
169
100
171
139
58
86
92
74
152
92
144
69
107
67
102
134
105
110
77
138
87
110
122
55
152
105
119
58
107
98
86
110
111
100
126
68
109
107
107
109
165
56
120
122
138
119
163
89
92
77
152
123
55
126
126
103
139
104
37
93
92
163
126
61
110
110
104
55
107
93
67
105
55
145
105
117
122
64
141
121
55
136
78
55
92
146
110
148
105
118
55
55
122
123
139
128
92
123
97
131
123
111
98
85
136
67
122
108
69
55
129
127
69
110
169
114
107
97
134
55
104
124
126
152
99
138
115
167
67
98
126
67
141
156
164
128
105
97
92
92
55
145
136
37
119
79
56
91
109
92
103
92
124
130
112
92
92
128
169
67
67
99
128
119
119
126
139
128
111
146
55
152
55
128
110
83
92
92
77
105
56
67
134
110
122
146
92
139
67
162
114
119
119
67
37
123
139
101
93
68
37
74
37
178
138
140
83
88
147
126
110
163
74
83
101
58
110
164
112
106
92
110
138
93
104
138
128
91
106
56
124
158
75
105
165
160
80
117
74
83
137
111
128
127
55
178
89
127
109
91
145
119
124
124
105
67
128
130
86
92
55
120
92
139
73
91
55
128
130
122
126
165
92
83
152
152
105
86
92
94
138
105
103
92
58
138
91
111
123
110
127
67
105
55
141
55
119
148
132
128
67
58
131
86
126
93
56
105
55
109
134
138
126
58
73
169
139
146
148
55
111
74
105
95
110
127
55
178
92
139
55
81
58
128
119
138
122
78
122
122
126
126
110
89
128
103
104
104
99
101
56
92
138
106
104
41
119
197
56
93
67
104
120
110
178
138
55
128
56
93
92
56
104
169
178
68
127
126
77
92
126
67
111
125
93
123
92
69
58
131
109
105
119
89
118
92
171
92
110
115
83
84
139
91
136
138
103
169
146
137
146
148
76
110
178
122
86
108
92
93
74
111
136
56
109
103
131
182
67
147
110
141
103
94
126
152
75
127
77
126
37
69
122
119
77
110
104
109
127
87
128
56
92
37
92
75
84
112
109
122
110
182
110
128
137
74
67
111
142
132
145
139
77
93
138
73
55
104
86
77
178
55
67
110
76
119
93
75
110
92
88
126
104
77
122
128
92
55
126
148
93
156
115
92
128
144
122
92
146
144
123
122
125
110
92
122
37
92
37
169
55
114
104
169
124
107
111
99
160
92
109
67
99
67
104
178
58
124
110
110
127
128
114
67
127
114
99
107
138
139
117
86
69
91
128
75
124
106
93
105
126
56
79
171
112
79
92
119
136
55
138
129
83
118
122
92
113
113
126
140
119
128
163
146
167
55
130
97
138
169
131
127
92
146
83
121
93
56
105
146
138
110
103
104
94
55
108
58
139
127
55
122
112
88
93
58
85
105
165
93
162
58
123
37
100
123
104
83
92
109
55
55
92
138
75
130
112
107
92
137
107
131
69
119
122
92
131
122
127
169
93
135
138
122
92
93
144
55
110
104
110
138
111
178
58
110
67
55
122
134
140
126
80
58
55
137
105
92
67
69
128
56
79
84
138
145
105
84
123
67
92
74
134
67
111
148
144
110
75
95
152
77
152
178
123
136
109
127
123
171
126
112
105
100
83
136
119
86
117
107
78
67
86
114
69
134
93
163
37
75
106
69
92
122
111
123
67
145
168
110
92
58
120
69
152
56
103
122
79
103
109
93
79
110
110
110
97
98
178
163
56
110
37
150
55
122
58
132
114
93
99
111
112
69
91
86
126
139
122
104
104
178
55
91
105
105
141
55
92
86
127
58
101
131
103
124
56
79
124
122
131
58
139
99
123
104
55
92
110
169
134
80
92
84
99
110
67
95
83
84
178
75
134
152
138
95
128
134
74
138
114
81
56
102
37
127
99
79
178
131
104
83
79
69
79
127
150
140
37
103
110
110
146
122
124
104
110
58
92
108
129
140
92
126
92
168
117
105
99
93
123
58
56
92
74
110
37
138
139
160
79
126
119
68
139
138
110
58
55
67
138
126
56
122
138
144
117
134
123
146
55
113
103
108
126
109
105
97
92
55
130
115
79
55
107
75
139
67
139
110
69
86
56
129
126
84
79
122
58
109
86
139
152
67
126
55
137
110
79
56
152
111
144
142
178
104
139
139
142
148
122
134
88
93
56
152
144
145
123
165
55
138
123
104
55
138
110
126
92
106
92
77
92
123
58
110
152
69
171
163
115
140
107
110
92
131
126
68
93
122
55
169
55
99
138
93
92
104
105
167
79
107
91
151
92
93
148
126
58
105
111
109
75
122
89
37
123
92
113
110
56
91
127
122
139
105
92
124
138
110
126
127
55
37
55
110
119
37
126
55
180
84
81
69
107
152
92
101
112
146
138
156
55
152
103
110
171
110
74
58
105
117
95
135
92
67
146
69
79
113
105
139
89
58
134
138
77
75
110
115
125
103
100
37
55
56
104
127
146
123
105
88
115
96
128
69
171
108
105
168
163
126
109
67
138
119
37
91
123
58
37
92
168
99
124
141
102
123
138
55
93
151
139
138
110
171
114
128
100
109
120
55
160
146
55
105
128
55
79
134
115
105
93
37
178
125
119
178
123
111
55
67
67
97
55
97
139
126
110
144
58
56
105
111
165
105
139
146
105
103
128
144
55
80
122
67
58
109
138
152
141
128
139
103
109
37
56
37
102
67
55
139
58
67
139
92
105
127
55
112
69
67
55
133
110
139
75
105
79
77
91
56
56
96
104
55
91
99
126
105
99
103
126
58
123
56
117
105
104
121
148
55
152
104
92
128
130
37
84
93
61
74
80
119
72
92
104
58
92
96
92
168
137
103
139
126
105
138
128
55
121
121
134
180
68
58
92
178
107
58
134
74
92
118
136
178
110
93
110
110
103
119
104
92
101
93
58
123
130
108
122
97
104
91
140
127
103
93
126
56
110
37
86
151
105
93
75
105
138
119
97
169
98
56
67
99
89
140
88
140
92
138
79
117
110
123
67
67
97
74
146
139
93
110
92
141
123
92
152
178
105
138
92
99
104
132
138
118
128
139
136
74
105
104
92
146
131
58
67
146
160
178
125
114
86
67
119
138
115
126
103
37
56
67
140
79
138
67
122
88
79
58
124
178
114
75
108
55
67
128
93
139
136
67
144
114
93
104
136
178
138
122
178
78
99
92
122
122
138
122
128
77
146
83
75
91
55
112
87
56
119
105
112
105
122
104
79
126
56
78
55
138
158
120
127
75
122
122
104
58
105
126
158
110
68
105
98
128
55
146
98
135
69
178
67
139
122
58
105
67
138
122
92
171
105
178
101
73
122
120
69
120
122
126
138
108
67
152
118
78
139
105
68
122
127
55
122
144
110
122
139
127
104
58
123
146
138
100
111
56
104
122
110
92
113
138
37
89
55
118
138
105
104
152
122
127
67
144
107
92
107
138
164
144
56
146
83
134
58
37
122
123
104
91
122
119
67
124
122
93
114
89
92
67
97
105
105
58
144
92
105
55
68
79
106
140
141
67
55
169
153
92
55
138
92
135
55
102
67
55
104
103
109
93
178
124
92
91
75
75
145
103
115
105
123
107
144
126
110
128
146
84
145
105
83
92
139
92
103
92
58
108
55
110
93
145
111
152
138
138
128
110
37
105
79
37
110
92
126
56
110
110
98
114
128
99
108
117
182
56
105
138
101
92
110
111
55
119
37
122
105
179
37
140
75
152
79
144
37
93
92
104
138
105
77
119
138
122
144
79
105
122
109
131
122
110
138
146
152
109
169
130
127
106
83
105
124
67
37
55
56
122
140
123
92
105
104
58
127
58
37
92
169
114
129
105
126
109
152
126
110
122
138
104
144
104
97
141
93
68
169
122
128
122
139
58
107
122
131
99
164
178
115
110
77
77
122
105
92
93
55
37
163
109
74
81
122
110
132
178
127
126
69
122
92
92
137
139
79
87
140
158
171
93
127
102
129
58
139
146
58
158
111
100
92
86
122
169
84
127
55
180
138
105
178
110
126
111
92
139
169
104
96
122
139
68
144
55
67
123
55
68
128
67
146
107
105
55
67
67
139
55
56
77
55
74
126
92
178
56
99
110
136
109
110
120
55
105
144
96
92
93
199
102
119
56
127
105
146
91
92
104
165
134
177
37
120
55
67
104
122
111
99
92
104
77
139
93
56
138
92
128
139
86
122
126
105
69
104
107
148
85
69
130
55
79
93
115
171
124
67
138
55
138
138
126
55
114
104
109
56
67
139
122
124
113
56
92
171
138
99
84
92
55
101
111
92
111
58
91
91
92
93
123
67
91
67
69
103
99
128
107
75
146
107
107
178
146
126
55
96
67
100
180
67
105
93
92
55
138
134
79
110
120
144
126
83
69
105
105
106
99
55
110
92
124
93
107
91
75
122
124
152
79
101
134
105
74
92
124
55
164
105
104
92
58
111
56
119
93
92
146
105
55
91
163
142
55
77
146
79
37
89
158
104
95
105
55
152
126
135
146
83
110
105
142
134
105
146
101
81
122
110
128
104
131
107
56
84
92
56
110
132
78
79
124
67
92
124
92
105
122
37
105
105
99
138
138
103
79
86
135
92
169
128
126
135
84
55
91
103
95
58
110
99
146
67
120
144
55
144
101
169
105
115
55
165
120
165
110
146
97
110
97
146
56
114
105
138
146
128
55
126
91
169
105
132
127
131
73
110
105
104
125
92
55
56
91
164
55
92
114
120
92
188
122
144
56
152
144
130
128
110
146
92
92
105
126
110
55
123
105
67
93
108
69
58
104
146
56
110
55
92
56
55
178
131
119
97
100
126
139
144
123
67
108
67
171
37
69
109
107
127
105
138
131
138
56
98
122
55
122
100
93
104
146
139
139
110
120
127
55
124
55
56
122
109
111
92
109
93
97
37
158
105
56
106
104
131
91
107
132
119
99
55
142
56
121
89
144
92
84
119
69
122
104
140
105
67
110
98
93
55
96
103
58
127
105
97
69
126
92
58
75
83
120
138
99
69
102
74
77
144
144
55
105
92
104
178
144
67
55
93
95
55
140
37
131
91
93
68
103
139
163
55
152
127
100
171
84
178
112
142
55
55
67
146
105
119
69
122
86
110
56
160
58
118
93
110
138
91
55
107
119
122
37
105
105
113
56
122
92
67
118
92
131
128
128
92
93
126
114
188
160
169
105
55
143
69
119
169
109
95
97
55
69
75
138
79
138
103
118
111
56
93
106
84
101
138
109
77
67
152
160
56
93
105
149
122
104
92
122
55
67
103
178
92
146
107
122
58
87
152
105
146
138
71
110
122
58
115
93
91
140
67
91
129
58
134
77
122
152
180
111
117
110
69
144
148
136
122
67
178
114
109
122
123
67
101
105
37
134
112
178
104
105
67
122
99
146
37
139
92
56
127
145
69
106
99
55
91
67
110
104
89
152
104
134
122
123
128
122
75
37
103
56
140
67
103
67
131
92
92
124
126
152
144
127
163
110
126
78
55
105
105
145
138
55
144
168
86
127
126
140
94
89
110
110
92
83
89
102
93
89
128
119
132
107
86
91
136
169
110
56
92
67
89
126
92
68
93
123
92
107
78
122
122
132
139
144
139
92
99
146
127
104
111
92
120
122
130
87
92
138
160
127
55
69
103
163
146
69
138
164
138
140
118
123
92
55
110
75
83
122
55
68
92
124
67
148
37
139
92
74
131
56
75
117
126
139
163
119
109
133
122
75
124
152
127
56
75
83
168
77
92
119
74
148
146
56
131
86
134
111
115
118
127
126
126
91
80
37
168
67
110
152
139
126
137
152
81
107
105
124
128
138
171
91
86
88
126
37
152
126
127
139
126
122
169
144
105
126
144
134
89
86
138
124
122
58
163
67
122
99
178
67
91
56
138
56
110
93
126
100
122
169
134
110
80
92
122
105
56
119
72
180
110
112
134
126
83
122
55
122
139
92
122
86
92
147
110
102
123
168
144
126
105
74
152
105
152
55
93
152
138
67
92
165
119
126
105
144
138
104
122
127
69
123
110
67
139
58
124
92
55
122
55
55
67
139
107
146
139
100
140
180
146
120
110
67
126
83
105
124
56
140
114
110
67
126
110
88
92
169
92
169
138
127
109
69
139
104
93
67
126
83
83
122
137
58
112
92
93
138
56
69
105
122
113
89
148
96
139
112
104
67
139
92
122
138
123
88
56
104
127
67
114
124
138
37
67
101
162
122
169
126
92
104
80
105
110
127
119
73
126
107
145
147
105
107
107
122
104
92
99
55
93
140
109
102
58
92
69
99
138
104
86
126
110
127
107
177
105
79
140
92
67
94
110
92
101
86
92
77
122
69
109
100
122
56
158
163
126
104
140
139
68
128
37
122
74
103
138
126
122
146
169
126
103
110
110
127
180
67
104
152
67
93
104
83
55
92
75
92
99
92
103
140
92
138
158
138
178
37
126
111
140
74
93
138
110
171
114
79
92
97
75
92
138
138
124
101
144
114
91
99
91
110
93
119
56
84
138
148
105
146
92
122
105
86
120
93
122
110
103
131
58
79
55
131
140
125
92
91
69
105
142
126
132
84
140
139
171
105
126
58
108
178
114
152
55
137
163
79
92
128
122
101
130
127
123
126
107
128
142
126
128
58
37
91
138
69
140
139
88
93
181
56
55
132
79
55
124
128
126
105
80
93
110
67
122
106
122
139
123
67
111
92
126
103
104
146
138
105
126
79
110
92
122
77
105
95
98
122
169
78
120
67
139
69
67
69
139
122
135
171
146
146
123
138
105
144
124
69
169
124
134
92
110
92
77
126
119
178
104
127
93
111
99
98
139
68
126
75
138
99
136
109
79
122
105
55
105
92
144
56
104
58
124
55
139
56
117
152
137
105
105
119
56
122
105
67
67
108
95
127
92
118
138
67
105
110
144
169
78
75
105
114
110
122
91
119
58
37
58
55
92
55
138
133
145
92
55
98
55
86
105
152
144
123
110
99
93
146
130
55
126
92
56
109
56
126
105
152
105
152
178
96
37
58
37
86
109
74
162
140
107
122
97
105
55
91
55
138
93
104
105
69
126
74
123
92
67
114
58
56
128
55
93
56
140
67
88
55
78
99
84
120
55
99
126
92
110
138
69
123
119
106
79
144
55
103
61
128
138
92
146
56
37
123
67
92
86
67
104
67
111
105
110
95
102
138
93
127
131
138
126
168
138
102
138
104
105
99
122
111
104
134
91
178
86
74
55
122
104
144
117
105
163
132
110
134
119
124
152
84
103
89
126
79
103
138
56
144
92
55
77
37
93
120
138
127
86
56
68
55
138
102
89
106
55
92
93
119
37
92
138
110
105
122
58
109
136
178
127
138
96
140
79
105
104
80
139
77
99
110
140
139
105
104
131
86
58
55
82
129
104
99
122
162
112
74
119
126
110
75
55
152
104
104
126
138
112
56
126
152
93
178
58
144
92
99
168
158
171
128
116
122
67
104
75
171
127
105
112
55
56
105
56
136
138
138
84
67
67
93
169
55
104
146
130
138
104
109
112
109
86
118
97
58
161
132
164
74
55
110
93
58
122
119
122
77
110
74
100
127
87
86
169
104
164
178
75
95
148
122
138
122
111
128
110
121
146
126
152
91
107
67
93
55
58
86
75
92
92
123
92
136
55
126
178
138
99
109
74
127
92
55
102
144
120
168
122
126
152
124
55
56
93
92
86
55
126
144
123
178
67
55
131
178
104
55
55
104
138
103
105
148
131
126
105
58
92
55
122
99
55
122
92
56
126
105
105
77
55
138
139
124
124
130
83
93
120
91
126
87
92
131
92
37
92
103
119
139
126
37
139
136
142
94
124
74
81
97
112
110
58
122
110
68
86
67
69
84
92
134
168
126
123
103
92
93
97
179
99
100
126
98
92
79
122
110
110
126
159
142
55
122
92
67
91
162
109
93
75
107
69
134
144
105
92
89
126
92
55
80
55
91
171
110
55
57
102
55
132
122
55
152
135
122
56
138
124
110
138
165
37
37
109
169
144
77
99
127
127
139
146
138
122
100
92
105
144
120
120
92
126
128
92
77
67
137
92
139
178
160
168
105
110
138
55
56
67
78
127
128
69
75
109
104
103
104
67
128
55
58
135
68
138
167
77
56
86
81
132
105
58
152
67
68
138
138
119
126
119
167
128
37
144
128
81
75
92
91
80
119
105
123
56
105
98
107
56
121
127
92
67
171
128
124
105
165
122
147
93
128
55
92
110
137
107
102
144
116
138
110
110
89
132
64
92
139
37
109
124
140
67
146
144
169
158
107
67
130
74
77
169
55
67
130
107
86
86
152
81
126
139
107
122
75
92
126
98
104
168
131
138
105
182
74
144
95
55
105
134
86
138
105
108
91
114
118
105
146
91
104
97
152
37
148
146
139
128
58
92
139
138
105
103
146
119
110
134
103
91
139
67
105
77
160
180
92
91
123
68
126
92
93
97
140
148
171
55
136
75
144
93
109
91
131
129
67
139
110
169
86
111
55
55
119
169
130
118
108
37
92
104
103
110
67
122
92
58
105
97
105
79
141
110
138
124
55
142
93
169
123
109
92
118
37
106
119
93
126
86
92
146
122
178
139
58
124
99
152
104
126
119
128
103
122
55
110
122
55
87
92
55
72
75
110
126
92
92
76
37
126
126
119
121
92
126
69
162
103
169
109
121
77
160
109
138
55
93
110
55
138
126
152
134
37
118
127
110
92
67
74
139
91
105
58
67
58
105
103
105
56
109
126
129
105
126
86
93
138
144
68
83
171
138
138
96
92
92
101
88
110
56
105
67
102
92
117
88
105
158
97
37
126
55
58
99
109
168
108
105
124
93
119
93
169
109
103
106
188
111
138
68
111
110
138
110
110
104
122
114
137
105
98
91
105
128
122
123
69
86
103
91
92
105
134
110
37
92
126
102
86
37
119
139
122
124
86
146
102
105
145
130
37
89
105
56
55
146
110
102
95
79
91
126
126
122
56
93
86
109
56
56
126
92
115
92
79
164
55
147
37
138
165
139
126
138
93
92
126
182
124
103
106
83
126
55
119
138
128
105
127
74
139
178
137
58
84
55
122
132
179
127
134
144
97
139
104
152
58
178
103
67
122
55
88
67
103
119
88
55
101
79
132
110
178
105
122
178
171
91
131
180
110
152
91
91
138
126
131
55
138
126
103
92
74
126
110
67
91
178
79
123
92
104
58
69
123
178
104
122
178
91
124
128
124
169
97
91
92
67
92
171
122
146
103
178
110
169
139
138
58
55
123
141
93
77
58
110
67
79
86
75
105
105
126
55
105
119
138
126
138
104
130
138
67
129
55
131
134
138
146
37
79
92
92
122
128
105
146
77
123
55
55
110
127
75
110
91
91
79
147
105
93
103
139
77
104
55
55
105
127
126
79
55
139
117
123
105
103
69
139
148
55
127
67
92
110
110
136
122
141
127
58
122
56
37
104
126
67
126
110
105
89
124
127
122
56
107
144
89
79
124
130
110
105
37
105
55
105
110
110
148
138
111
114
114
152
55
128
152
127
58
93
167
77
67
56
110
169
105
92
180
93
114
138
92
75
105
104
58
122
67
171
188
163
79
106
122
105
109
56
105
123
74
58
171
93
158
178
87
119
161
67
139
91
93
56
169
180
126
107
55
126
130
110
55
136
136
91
107
122
197
91
93
110
126
111
145
164
55
135
118
91
141
109
148
84
138
105
98
128
110
93
119
77
110
101
92
67
95
163
122
75
138
125
126
110
118
68
110
138
102
37
123
165
110
77
111
55
105
162
55
169
105
168
127
107
127
113
58
126
110
92
178
84
86
110
79
122
84
168
110
92
110
103
56
68
169
92
110
130
105
146
152
67
178
169
92
103
79
134
67
92
92
162
146
104
55
105
171
112
56
126
91
94
111
132
132
106
77
56
110
139
91
171
37
110
140
104
122
180
83
110
136
91
111
178
141
111
55
92
110
67
58
115
55
103
124
113
107
104
138
122
55
67
139
109
105
138
122
67
75
100
141
69
149
102
110
138
110
109
109
93
123
160
104
69
128
67
122
37
127
105
119
126
110
119
169
56
127
146
126
37
119
134
93
91
169
55
92
178
122
105
126
92
55
37
122
109
158
58
91
92
91
37
97
92
128
93
123
77
107
105
98
37
93
93
107
109
110
110
37
120
124
178
119
58
122
109
123
56
169
122
146
74
55
119
55
128
86
104
110
121
104
178
69
58
37
55
199
100
131
88
129
124
105
122
139
138
110
111
94
105
55
122
91
104
144
75
178
158
98
58
105
118
103
88
164
55
104
122
105
58
58
114
67
78
146
148
64
144
84
171
37
127
122
110
126
122
139
67
64
92
37
67
104
120
129
79
139
67
105
74
98
178
124
104
96
105
92
105
92
92
92
132
56
131
56
75
126
92
126
91
171
55
84
120
105
105
146
56
152
91
77
103
126
139
127
89
55
127
105
139
86
56
56
93
104
92
55
56
128
58
144
83
104
67
55
138
92
92
86
77
119
93
55
127
169
69
134
104
134
67
111
128
152
112
135
123
110
97
37
102
169
91
92
178
83
131
126
107
139
122
127
129
74
92
83
138
56
134
104
55
111
56
92
75
99
110
37
171
55
132
97
97
138
134
169
92
107
135
148
122
132
171
81
103
69
74
104
178
55
56
92
126
110
74
148
105
110
110
92
140
139
126
112
92
107
104
92
55
110
139
67
37
122
110
123
84
138
178
128
105
171
104
122
180
99
78
92
56
104
122
138
112
93
79
77
67
105
93
199
140
105
117
139
122
126
81
102
109
92
110
105
146
105
93
102
122
178
128
92
126
92
136
86
144
110
110
92
55
122
104
127
131
110
99
169
135
123
104
110
104
127
138
139
95
83
110
104
110
105
79
95
58
95
55
138
68
132
92
69
105
140
140
91
98
67
88
119
99
122
55
139
123
79
75
127
105
124
55
75
148
106
127
55
55
55
122
169
134
67
127
58
69
122
91
112
80
92
74
123
56
128
178
84
111
92
105
132
111
105
88
69
144
139
69
168
93
92
89
86
102
93
138
126
119
67
93
138
123
110
106
126
92
74
92
67
37
93
37
122
128
58
130
84
109
109
117
92
92
105
55
119
158
104
139
98
136
75
146
119
69
110
55
169
126
124
67
135
130
126
56
168
104
118
93
109
178
112
88
119
131
92
110
37
55
124
146
77
149
112
67
58
126
109
55
86
100
78
104
163
122
138
144
126
69
93
127
105
128
138
126
122
105
103
169
144
178
99
100
110
55
92
128
138
180
138
100
56
131
178
134
110
138
55
117
55
55
56
105
169
104
110
126
93
99
151
178
131
169
110
123
158
126
69
122
105
55
91
134
55
55
118
92
144
92
93
114
67
145
105
104
110
92
75
131
37
67
111
37
123
122
127
91
106
112
104
160
79
92
102
139
92
92
77
134
81
122
111
138
79
126
103
126
169
169
122
104
56
55
131
126
138
136
104
110
109
104
104
126
104
86
117
113
97
67
146
117
83
126
126
97
99
104
72
69
171
95
105
148
110
55
122
105
37
67
98
107
107
171
105
109
56
105
136
58
138
126
93
136
122
138
94
101
69
58
148
126
178
55
104
127
111
110
138
92
37
95
92
56
129
150
92
56
92
152
110
55
105
110
131
86
136
55
104
134
67
55
138
55
55
118
144
107
123
97
171
110
124
97
55
123
110
122
92
58
138
86
110
75
128
138
104
56
104
130
145
104
130
160
134
148
120
92
67
128
122
107
160
120
105
55
126
149
105
75
139
127
168
199
79
55
109
58
55
110
122
92
126
163
77
106
58
104
84
86
148
122
103
144
56
91
92
67
92
128
168
56
67
105
108
79
107
74
110
67
55
135
169
110
129
77
55
139
148
124
138
80
93
69
127
123
67
55
91
107
92
86
55
118
86
126
128
152
93
69
139
138
134
83
178
102
92
138
151
104
55
93
55
106
110
123
97
162
148
146
127
93
111
109
135
138
105
92
122
56
107
122
92
107
126
91
142
84
144
138
163
100
91
55
111
102
124
75
138
86
93
123
138
134
138
105
139
178
110
123
100
119
122
67
130
178
75
110
110
55
105
162
67
55
92
178
92
126
127
37
123
93
127
98
178
107
110
158
99
139
178
92
55
110
178
126
128
124
55
103
37
91
55
97
95
86
134
56
105
139
84
92
116
67
86
114
77
138
55
55
67
56
152
93
137
37
91
122
119
167
110
93
139
92
139
92
104
92
92
93
68
92
144
58
67
105
120
110
126
103
122
126
111
146
92
138
55
120
130
88
118
139
124
55
69
134
92
93
110
97
160
105
158
95
123
58
104
105
122
92
77
108
92
56
99
152
110
146
92
100
122
144
58
104
105
67
55
134
103
126
158
126
115
67
139
126
104
86
78
55
169
74
122
98
126
110
152
107
105
69
99
130
106
132
110
168
55
92
188
119
152
112
76
55
136
118
69
68
163
138
105
77
56
128
152
112
77
122
110
105
126
132
127
110
92
74
149
103
111
138
139
163
111
138
109
91
138
122
192
55
158
37
168
127
105
138
178
37
74
140
123
92
130
93
131
100
140
128
107
107
55
152
146
123
75
55
122
77
56
67
109
103
109
138
119
109
55
86
56
152
55
110
84
55
105
144
126
123
147
122
58
126
111
134
98
104
99
140
118
55
124
138
110
127
99
136
55
119
92
115
92
135
92
110
178
37
102
122
92
126
98
105
138
74
140
95
126
93
163
92
126
134
134
119
136
126
106
97
158
109
92
93
124
56
105
86
119
92
144
138
55
152
122
99
67
119
69
119
74
134
67
109
117
77
126
92
92
123
56
126
122
77
112
130
67
122
106
192
127
126
123
77
146
58
108
91
119
91
111
104
122
109
178
111
95
138
122
110
92
68
171
56
93
122
104
55
105
67
126
110
178
74
80
122
111
92
126
89
105
103
92
110
67
79
61
127
55
95
106
139
86
122
86
122
154
122
122
122
126
138
79
110
91
110
69
37
152
105
93
140
56
178
55
127
126
131
67
136
127
168
131
147
92
130
92
107
105
69
55
99
55
105
98
127
111
107
111
138
55
79
145
74
177
92
160
93
152
79
119
140
110
92
101
73
127
178
93
138
56
123
169
56
138
138
122
79
92
102
136
93
67
123
91
41
139
103
75
95
92
119
122
110
122
168
55
126
105
67
77
152
110
134
67
126
99
138
92
83
99
105
146
178
96
69
109
92
37
134
79
74
110
119
98
105
137
109
143
86
169
37
127
97
139
58
105
118
122
93
56
149
96
74
127
75
92
144
83
126
110
55
56
91
104
37
167
106
92
92
69
135
92
126
188
64
146
146
79
138
131
146
97
171
77
78
74
99
100
55
120
122
106
105
86
104
132
167
169
103
110
67
55
56
104
103
138
56
138
98
56
150
122
127
152
107
110
122
67
111
110
93
136
105
146
56
92
110
152
95
101
140
67
138
55
119
104
92
56
106
74
91
103
122
104
168
126
160
102
107
119
110
92
92
92
77
138
110
55
122
99
126
146
92
92
61
127
107
69
146
110
92
126
152
92
126
67
138
122
143
103
132
139
138
121
123
95
88
126
103
105
163
105
120
88
119
169
86
123
56
128
129
144
126
92
86
96
110
148
55
67
93
169
168
92
126
55
102
119
77
122
67
153
158
102
139
149
109
146
110
105
171
124
56
91
119
83
112
55
110
156
75
138
67
56
126
67
56
86
92
58
123
128
118
165
102
58
56
139
146
114
58
132
75
132
104
178
132
56
103
168
123
124
111
118
77
163
92
169
126
148
126
107
74
127
119
92
92
178
149
171
55
109
56
56
99
37
122
111
171
139
148
55
114
114
122
79
107
171
132
110
79
180
138
109
128
127
86
148
55
120
69
108
107
92
56
129
139
169
99
126
140
139
100
128
92
180
79
91
146
92
110
178
144
131
110
92
128
139
58
105
128
105
56
69
144
122
112
92
165
37
104
171
168
55
107
99
124
58
178
148
55
91
138
127
124
37
138
106
86
122
112
91
122
132
55
86
126
55
92
135
144
76
122
83
127
103
105
99
130
69
122
122
69
115
169
67
114
103
110
127
37
109
110
79
127
178
58
138
130
122
144
128
119
146
106
169
112
55
56
144
158
99
132
67
109
105
169
56
83
139
120
171
92
74
91
126
127
146
132
110
37
56
103
55
84
156
128
105
102
122
67
122
71
55
142
134
139
112
180
137
146
178
109
94
144
92
37
146
110
101
105
79
93
37
79
105
110
69
104
146
127
122
152
74
74
122
122
146
126
37
122
92
92
150
178
163
84
110
105
77
88
92
56
56
105
123
86
122
86
122
69
94
122
55
106
37
126
71
110
99
118
69
124
67
105
67
127
67
103
93
128
131
178
123
111
126
112
130
111
127
127
67
134
139
94
178
37
106
178
124
138
162
126
180
122
56
105
105
144
146
122
134
105
55
160
169
110
164
178
92
102
104
92
55
122
146
58
112
55
126
178
58
74
93
139
122
134
126
75
137
140
79
131
118
144
146
86
55
92
93
127
92
111
84
138
126
110
127
69
105
110
152
55
79
109
105
67
92
105
105
55
93
67
119
127
89
84
122
92
138
146
92
109
68
83
105
126
104
55
134
135
188
92
93
138
178
87
58
110
134
97
122
122
58
109
92
56
67
68
149
118
77
122
119
95
75
67
75
122
122
81
117
55
138
125
138
69
136
110
134
69
58
98
110
83
119
110
128
56
56
92
37
110
128
67
110
123
55
138
55
105
139
56
128
100
55
180
69
105
91
101
92
56
145
135
138
89
126
122
56
126
119
110
110
123
122
74
69
92
136
123
171
158
152
127
126
93
104
139
116
160
111
55
77
104
138
55
92
171
112
158
127
56
37
124
134
128
152
105
67
74
55
140
109
75
127
139
95
92
92
69
122
158
150
122
109
118
92
69
83
178
67
110
55
164
56
55
69
114
100
138
167
92
101
101
56
112
139
178
105
121
106
109
126
104
37
69
110
55
68
93
107
56
105
92
92
105
55
67
102
152
146
67
106
92
152
72
92
84
69
178
92
104
144
119
37
139
122
152
55
110
126
86
68
123
110
74
67
74
126
74
138
77
110
126
109
72
140
188
171
74
131
91
126
55
79
139
119
55
119
99
126
144
55
109
55
134
84
119
99
104
126
116
110
136
69
122
146
104
69
138
99
93
92
122
75
107
58
84
138
113
55
131
151
147
97
178
55
37
105
111
126
119
74
67
136
139
88
37
92
83
122
123
180
56
131
95
124
105
79
139
111
67
103
135
92
127
55
93
86
122
58
151
110
158
134
111
122
110
56
128
67
84
121
104
139
105
105
148
144
144
122
58
95
104
74
58
140
102
105
134
37
68
178
144
92
55
129
138
138
119
122
146
56
86
102
109
119
107
122
182
92
55
124
114
55
56
123
113
67
122
104
98
112
89
92
112
122
164
105
123
118
171
105
69
164
163
130
132
110
126
144
55
169
92
105
122
131
97
92
128
148
146
109
100
91
107
128
67
152
126
56
137
67
122
138
122
104
146
137
67
109
86
127
122
146
75
138
103
132
130
75
67
111
144
67
104
158
118
120
178
92
117
144
110
86
118
127
138
122
138
79
126
119
58
152
131
178
165
105
37
56
164
93
65
109
106
99
158
122
130
127
56
146
122
146
92
165
67
111
92
37
92
67
110
78
122
107
58
37
83
139
75
105
99
126
79
178
103
124
100
110
126
75
56
144
127
104
91
140
105
138
77
67
124
92
141
163
86
56
97
144
112
110
107
124
169
92
67
138
106
109
106
88
120
69
144
139
144
134
92
115
119
92
144
104
92
126
138
128
92
110
110
105
109
55
81
77
111
37
105
86
112
93
94
104
86
105
74
110
110
117
134
75
139
113
92
110
110
171
56
128
140
169
107
162
56
37
163
118
122
98
75
107
122
55
127
86
92
88
104
122
149
92
86
67
92
144
37
148
126
124
93
81
93
67
134
169
138
92
171
122
88
122
178
105
56
55
110
55
134
125
144
128
83
144
110
58
100
122
146
132
122
37
69
163
126
126
77
67
152
93
169
169
74
92
103
134
144
56
112
37
130
58
120
67
92
91
138
67
101
93
123
117
114
110
79
93
105
119
58
105
169
130
109
101
93
152
86
86
104
146
126
67
119
81
131
77
37
123
103
132
104
55
91
92
77
105
121
169
92
93
136
132
105
139
122
122
122
79
120
138
122
110
104
110
37
81
180
119
127
126
138
55
105
105
92
37
84
178
111
114
89
107
55
139
105
138
92
122
104
92
135
109
105
136
125
109
127
80
67
122
122
112
107
156
145
37
139
180
55
130
110
56
124
127
152
105
137
87
86
112
115
56
110
75
91
162
128
138
122
126
109
104
109
75
86
169
77
92
92
178
102
104
165
55
86
69
171
98
92
169
77
140
92
124
56
84
55
55
56
92
94
111
164
104
138
144
132
103
111
139
139
132
92
99
74
124
197
96
111
105
56
122
138
105
112
81
152
139
127
126
122
67
110
128
139
142
122
124
67
69
139
93
83
93
110
75
122
75
122
110
152
122
149
92
131
97
92
119
140
140
121
106
110
168
67
148
99
178
55
122
144
165
103
101
58
97
56
118
122
111
136
67
117
37
115
111
69
130
77
105
148
58
86
127
128
102
114
91
144
106
117
84
140
122
93
126
84
144
67
123
110
130
124
55
171
92
58
111
56
86
136
67
105
92
107
158
86
102
122
92
148
55
181
55
126
138
75
74
122
129
140
126
56
69
67
103
122
109
140
75
171
110
132
104
107
79
119
108
160
137
126
109
109
137
128
83
107
105
171
73
110
86
86
69
110
56
86
124
92
119
120
56
56
127
93
135
84
84
69
67
126
122
144
104
132
96
130
55
123
169
55
110
119
89
122
108
83
126
76
122
110
165
105
127
55
144
105
126
126
134
140
138
55
67
110
134
117
112
122
113
67
119
37
75
105
138
37
119
93
128
97
122
58
119
92
110
56
93
139
127
146
127
92
132
104
55
74
107
119
92
134
122
110
110
124
119
68
130
58
69
128
91
83
137
123
99
79
79
77
138
122
92
93
178
99
105
55
168
55
104
117
86
122
92
122
97
126
92
119
101
92
92
92
103
144
80
67
65
105
110
55
83
88
55
74
139
162
97
120
56
124
123
131
79
126
92
122
55
98
67
83
110
118
105
139
119
67
119
67
99
37
119
69
180
162
93
171
84
74
138
111
141
138
105
37
123
132
137
108
178
86
56
67
110
101
134
77
56
114
127
91
123
126
134
98
126
37
168
122
93
126
56
169
92
144
122
77
106
102
107
140
122
86
92
37
124
178
140
146
105
152
98
123
118
136
58
115
149
126
119
104
92
86
126
55
37
55
124
137
140
55
122
55
98
56
127
58
56
137
127
146
92
132
110
171
126
146
86
168
126
37
92
140
94
138
122
110
139
105
169
119
169
122
104
92
123
105
144
122
126
56
105
83
58
55
120
160
102
77
137
93
168
139
139
104
139
55
99
91
111
56
86
140
37
99
139
110
114
92
126
99
139
144
92
74
77
144
111
55
92
126
55
119
58
97
126
100
123
138
67
138
55
55
67
92
79
58
162
92
118
130
92
106
79
101
110
138
55
105
92
138
37
110
91
55
104
55
105
74
128
105
127
98
107
77
152
148
105
158
74
163
124
105
110
136
123
126
37
126
110
152
105
150
105
138
55
158
178
113
92
75
67
144
86
122
146
67
84
93
124
134
151
104
100
92
75
74
110
37
93
112
144
104
144
138
158
101
158
109
107
56
110
92
92
92
138
86
138
144
101
79
67
67
55
160
98
178
58
101
83
124
79
91
126
139
108
122
92
139
55
160
105
146
107
128
163
92
122
109
112
58
122
139
138
104
92
55
69
163
68
68
126
117
123
128
91
69
128
55
178
104
158
124
126
105
124
69
67
102
91
104
138
80
74
114
189
149
67
112
122
144
137
127
104
110
96
118
92
95
126
94
122
93
128
128
103
128
148
108
123
79
72
122
112
56
92
67
37
110
81
95
126
122
139
92
105
104
105
138
121
104
55
104
110
67
139
109
92
75
56
130
163
132
115
67
142
134
128
119
122
58
109
93
104
103
92
69
91
137
138
92
110
146
109
122
93
67
123
37
109
91
130
102
92
123
99
97
55
145
104
134
123
92
139
130
132
83
100
139
69
86
58
120
101
148
55
105
91
67
74
94
109
92
99
146
108
127
128
99
107
127
105
105
144
92
68
67
128
178
125
55
122
138
99
127
93
37
152
143
84
122
81
126
92
58
116
99
67
93
67
124
110
72
67
74
146
97
74
93
119
105
122
109
181
105
149
92
107
128
85
95
55
97
156
144
168
104
119
119
138
56
178
104
123
37
139
165
110
130
122
98
58
119
152
105
105
111
86
109
110
138
126
130
122
127
134
123
110
126
77
109
110
139
91
114
144
152
110
55
100
136
119
79
145
138
37
127
93
122
169
92
69
112
105
110
105
55
92
37
167
55
169
134
107
148
168
152
93
122
55
127
92
123
169
77
104
88
55
178
55
126
162
138
111
110
129
126
144
144
105
75
37
152
126
122
124
117
142
148
92
123
126
89
128
152
93
126
104
130
110
74
122
95
74
120
128
140
105
135
110
178
110
68
105
104
92
92
120
104
102
56
164
130
83
123
91
55
68
148
158
79
100
98
105
55
37
37
124
134
138
104
55
91
111
104
105
108
58
92
127
67
93
68
55
148
77
126
58
103
105
128
123
104
92
55
92
138
171
124
79
92
126
104
171
122
139
56
37
79
76
37
92
109
93
56
109
101
138
37
169
55
37
105
118
93
152
93
93
138
109
110
111
56
55
105
83
146
134
104
145
135
104
105
56
169
67
107
37
86
139
127
92
99
144
126
119
146
134
37
105
145
119
91
55
123
148
110
111
127
124
67
115
104
92
146
178
119
84
93
67
58
91
69
92
146
122
104
112
77
109
130
77
92
91
92
119
131
126
86
92
92
101
110
122
55
135
37
192
146
112
105
127
111
55
110
139
110
67
55
58
92
99
177
92
125
79
122
138
139
119
112
135
100
55
105
92
124
132
55
122
119
100
67
132
140
92
98
92
56
105
114
101
75
104
110
88
131
138
110
105
95
111
180
126
149
171
126
169
110
105
110
131
109
86
122
99
128
58
104
104
122
83
56
123
130
110
123
122
77
92
37
91
111
105
129
93
119
146
105
122
122
178
111
144
134
67
158
74
86
93
55
145
92
103
139
104
105
145
122
111
105
56
122
93
123
122
168
101
178
122
107
188
146
97
55
92
138
55
100
92
91
91
122
92
126
146
93
95
114
178
105
104
122
127
56
105
126
92
55
122
55
126
139
102
112
119
138
86
136
84
122
55
74
110
56
126
99
99
69
134
122
92
152
178
136
89
55
97
122
92
117
58
55
92
140
111
122
110
110
104
111
95
125
152
83
127
55
105
67
92
117
138
138
93
107
123
126
75
152
140
37
105
126
132
55
74
92
92
139
95
162
56
122
111
144
138
112
92
79
107
37
169
178
110
55
199
110
105
126
138
105
69
72
122
164
55
74
144
126
79
92
139
55
148
110
86
100
140
119
58
92
75
92
128
83
104
178
77
169
77
55
37
105
126
110
110
122
105
75
55
128
55
119
101
117
57
139
109
104
69
55
74
55
146
55
86
123
105
99
69
122
163
134
96
122
146
110
122
180
124
124
124
145
91
146
138
139
55
68
75
103
134
126
99
92
111
100
169
110
128
92
117
111
75
56
97
58
147
127
107
92
109
105
69
92
110
138
105
134
84
92
138
169
110
148
122
55
126
103
110
128
37
67
76
76
121
158
124
104
107
138
98
77
110
128
120
139
114
69
178
130
120
83
126
110
105
164
138
134
105
92
128
147
55
92
58
104
105
110
158
56
91
55
93
119
127
92
99
158
122
93
122
110
69
104
86
93
92
122
55
84
119
101
122
124
93
123
112
128
37
55
112
110
58
139
68
105
122
139
139
67
134
92
91
55
127
122
148
126
108
151
77
69
169
168
69
92
165
56
104
122
55
55
139
140
127
55
84
126
61
105
67
171
126
79
130
55
138
58
126
92
107
122
85
84
104
120
112
128
165
92
199
119
67
125
169
126
128
127
58
98
126
74
152
93
79
114
144
111
110
100
79
138
37
79
75
122
92
69
74
81
171
110
55
152
55
126
86
99
67
92
132
145
97
152
55
178
136
86
75
93
139
83
138
92
91
123
92
69
104
150
110
167
146
138
92
146
105
123
92
127
78
134
104
56
104
79
84
127
110
105
118
119
144
144
37
75
146
55
97
83
107
122
105
138
74
55
132
126
139
99
130
37
67
69
75
68
139
69
115
96
122
74
79
55
152
105
89
167
55
148
138
119
58
75
101
178
86
67
92
122
131
101
125
93
110
58
138
120
111
55
92
92
132
107
109
138
171
138
127
69
158
162
146
109
87
178
169
93
93
147
121
123
126
75
93
114
79
75
87
126
77
163
67
168
55
99
92
169
97
111
139
123
132
148
105
180
168
111
126
178
110
165
100
77
101
126
140
37
163
109
93
140
139
140
102
126
92
104
123
139
110
69
120
67
79
67
110
140
114
140
56
100
132
124
141
91
114
67
98
97
109
138
110
121
113
37
109
148
122
88
129
111
160
168
92
139
55
152
86
67
110
162
114
86
122
98
55
160
138
94
92
105
138
58
171
58
122
113
146
92
140
89
84
139
99
126
144
142
89
37
122
125
55
91
144
69
37
92
102
152
148
106
138
143
160
103
140
178
105
56
145
139
99
56
126
55
67
122
93
104
92
128
138
92
139
102
56
126
111
92
119
158
126
110
127
91
110
146
75
97
107
100
69
92
91
58
81
78
92
92
55
111
140
110
122
119
148
140
104
74
37
110
109
122
86
152
126
97
128
147
107
100
146
126
110
138
102
92
69
116
182
144
122
56
152
128
168
126
56
122
125
128
92
67
78
56
55
79
69
106
122
99
127
104
92
56
178
145
163
171
86
131
126
79
142
37
93
122
58
55
178
105
93
129
111
55
122
138
146
148
126
92
77
93
126
105
92
119
178
102
55
92
112
139
142
104
55
58
135
139
84
119
105
67
79
37
110
92
110
100
138
165
132
55
74
165
128
131
86
92
180
111
37
134
55
124
101
69
126
107
109
122
128
58
126
169
67
122
92
92
114
188
147
93
56
86
148
55
105
122
144
118
138
55
138
55
111
138
110
92
92
111
96
126
56
93
106
67
37
107
110
168
86
140
122
55
121
67
69
99
55
138
77
119
138
104
79
93
146
104
77
138
37
169
105
93
139
75
97
105
67
111
126
138
104
119
110
109
93
92
92
110
160
140
152
144
136
152
103
114
106
127
55
110
55
156
122
67
104
158
105
134
103
92
128
139
109
75
77
152
125
135
114
122
110
79
93
99
37
126
93
111
89
79
169
105
130
144
158
56
122
105
58
126
55
122
86
128
120
103
56
105
126
140
111
84
152
37
100
122
92
112
139
119
123
98
83
104
37
123
126
171
93
114
104
146
105
140
37
138
169
106
98
122
91
67
140
86
57
124
126
104
86
178
93
146
69
180
138
114
108
128
127
125
117
56
93
93
178
126
120
146
103
55
58
140
138
123
111
110
55
144
91
132
99
58
92
108
105
171
140
104
83
67
58
119
92
92
146
92
171
199
58
124
131
146
79
128
127
56
91
122
67
67
140
126
122
138
55
139
55
68
111
79
55
58
138
69
109
84
103
110
122
93
122
117
88
109
112
67
126
146
103
162
148
122
126
130
56
171
103
135
178
73
140
98
99
104
135
69
122
56
115
105
139
126
93
122
58
92
55
119
144
139
77
83
89
110
105
136
109
130
110
92
99
88
67
107
109
56
158
118
144
129
139
74
105
123
126
110
169
79
130
126
110
118
122
122
127
138
180
171
56
106
130
68
127
37
69
169
91
146
56
144
111
119
110
69
139
127
138
149
126
75
148
67
144
168
134
144
127
103
178
91
55
86
122
156
67
95
92
96
110
79
144
122
92
56
122
69
56
55
105
110
199
124
93
139
127
111
101
171
106
178
145
83
178
79
92
178
79
139
88
192
91
160
123
130
37
138
135
169
140
104
92
139
163
130
177
110
146
137
37
138
110
178
139
72
152
139
110
105
109
104
58
84
37
55
178
84
84
152
110
93
37
86
109
80
138
138
126
138
97
122
105
123
79
138
105
104
58
122
55
131
144
105
92
103
121
111
83
152
92
105
93
140
91
91
88
79
102
148
126
91
122
168
103
58
126
144
68
143
93
146
105
75
138
110
152
127
110
83
124
37
171
58
109
119
109
123
86
114
67
126
138
178
92
91
130
92
37
104
105
55
114
83
120
128
68
142
67
104
148
146
105
138
164
115
37
111
56
104
56
119
104
105
105
139
139
127
136
101
122
93
145
92
97
69
138
111
105
126
104
110
102
138
83
146
37
56
86
108
37
122
160
75
67
92
117
92
138
104
69
138
126
105
83
104
126
92
122
136
129
99
195
93
92
55
130
92
56
158
138
55
77
105
138
92
140
123
144
178
139
158
58
55
129
144
152
110
98
152
69
127
178
97
84
37
91
95
55
94
139
122
92
120
127
110
120
55
178
148
69
105
55
106
123
84
178
67
79
75
69
98
58
138
164
55
111
93
107
79
93
91
102
104
55
144
55
55
94
105
107
104
75
109
112
138
56
134
55
75
55
110
56
138
125
103
105
180
134
124
101
86
110
126
119
92
163
92
92
91
138
95
137
126
136
131
92
103
58
104
110
138
56
134
67
126
55
37
89
37
116
99
86
92
55
58
92
92
58
37
92
148
91
110
93
118
111
127
138
127
132
126
105
91
138
144
92
169
126
109
110
137
109
37
55
74
109
134
76
104
130
99
56
64
86
105
144
92
77
75
122
122
152
178
130
135
104
146
105
105
105
67
94
146
104
119
86
104
126
104
123
37
122
169
107
126
138
131
110
93
126
140
138
171
151
169
124
111
72
105
92
178
125
122
124
117
69
137
123
103
103
55
122
67
67
93
169
88
77
127
92
132
158
56
93
91
93
152
69
55
178
169
109
86
168
93
55
136
56
110
109
97
110
110
99
55
109
55
152
126
145
41
169
75
58
128
105
92
91
55
119
126
128
58
126
140
86
104
114
55
122
119
110
77
152
80
92
55
178
100
178
98
86
128
100
127
92
105
104
138
126
110
111
92
139
92
105
119
123
92
37
114
142
92
104
128
79
105
56
144
118
122
77
69
69
79
69
92
103
69
92
146
138
56
126
119
100
68
105
122
92
105
142
86
37
92
55
58
146
97
119
56
67
74
69
110
127
55
72
144
103
144
92
137
139
92
152
164
134
127
91
102
134
92
138
122
138
100
107
137
92
104
111
128
122
126
92
93
93
92
130
123
144
55
122
126
115
132
69
152
134
99
69
138
105
77
55
67
123
103
75
144
103
58
97
91
104
152
58
104
132
92
37
86
67
37
126
93
126
93
37
178
131
104
117
126
91
178
115
123
126
79
162
126
68
92
107
112
56
79
146
169
128
67
95
130
146
93
140
97
127
100
144
55
104
110
110
92
69
111
92
92
139
74
105
158
121
122
124
37
67
55
138
122
123
101
144
92
104
93
94
91
119
84
107
58
171
69
146
55
137
58
128
148
55
91
92
55
56
145
152
122
122
109
105
146
92
126
75
92
56
178
92
98
84
138
77
167
130
152
168
56
137
79
139
92
122
96
55
79
109
110
92
77
139
99
138
92
122
122
139
86
120
79
109
69
104
77
126
37
83
126
148
104
138
121
92
99
139
144
144
91
77
105
92
140
86
55
92
91
111
86
89
119
80
87
127
92
126
144
68
123
107
139
104
130
86
58
37
110
110
67
110
81
130
144
55
107
110
122
127
91
178
152
138
122
58
85
126
103
138
77
140
56
110
109
56
99
119
122
138
55
138
122
139
168
145
92
115
152
178
163
99
68
111
103
162
110
55
128
138
105
127
139
104
128
69
55
103
104
148
126
91
56
92
146
123
105
91
122
110
92
55
148
138
107
122
86
163
124
169
56
69
92
67
122
110
55
74
92
117
75
92
92
79
189
122
74
114
178
105
92
104
119
111
92
69
122
126
92
139
93
81
74
92
93
67
103
67
91
84
119
105
100
91
104
178
37
93
136
96
110
110
67
98
178
86
169
111
110
56
55
110
55
103
107
92
105
127
171
77
178
126
141
58
103
92
55
110
144
56
158
104
92
110
55
69
135
144
138
126
93
126
145
107
127
86
138
134
152
72
146
122
110
105
68
92
37
122
79
138
92
55
105
98
55
144
77
74
107
55
84
122
136
75
74
126
89
98
122
134
148
148
146
122
112
56
148
93
78
128
104
108
144
139
37
92
122
138
92
118
74
123
37
104
110
65
146
160
105
89
142
142
58
83
105
99
55
95
92
158
110
128
126
121
104
126
55
126
104
91
56
178
97
146
98
69
130
67
110
67
139
55
91
56
122
79
122
180
142
55
126
79
110
124
83
69
119
55
86
56
104
126
122
104
55
128
80
80
93
122
55
126
110
100
75
101
122
55
113
109
105
169
169
122
67
134
55
105
152
122
119
55
126
169
140
124
122
91
92
113
114
158
127
128
68
101
144
101
37
126
104
83
128
67
122
122
178
138
107
132
109
123
55
122
126
171
127
93
163
132
105
101
188
169
75
110
109
97
123
78
58
110
146
56
56
86
55
92
140
55
110
73
131
144
126
134
178
178
55
123
101
140
139
105
75
128
119
126
126
128
67
127
107
93
91
126
123
93
83
126
110
67
134
111
146
144
146
134
110
138
138
56
105
124
127
105
122
123
123
164
69
104
110
144
84
56
124
92
110
118
132
93
92
128
93
103
55
169
95
126
144
93
110
110
110
122
105
88
67
122
93
95
127
86
127
126
138
107
105
67
138
127
69
79
149
114
58
144
83
105
93
126
139
75
122
138
160
126
127
67
135
79
123
123
138
105
144
55
92
83
55
140
178
144
136
139
56
92
104
112
100
86
86
126
138
71
58
56
107
128
110
126
144
137
123
152
126
69
37
79
139
92
37
122
75
105
92
92
169
139
125
84
55
102
55
106
105
142
126
37
99
67
88
101
130
163
79
67
67
123
96
115
138
101
105
178
93
110
144
99
126
110
56
86
110
152
67
119
109
94
139
134
91
110
93
119
119
110
105
56
92
55
138
110
132
104
178
67
105
97
105
126
139
148
123
144
67
55
84
103
89
110
105
178
98
111
110
99
86
93
58
122
55
96
86
98
108
104
127
55
37
55
110
58
93
138
104
58
55
75
126
105
37
130
55
121
178
139
97
104
110
122
129
119
126
126
111
128
55
138
87
105
67
76
138
105
126
99
138
92
89
126
103
122
69
113
127
83
106
119
55
103
91
55
105
109
139
169
146
103
55
142
113
93
107
92
91
138
146
55
139
138
134
105
122
112
55
67
55
56
92
126
130
84
67
55
92
55
93
92
92
134
138
112
75
88
77
69
127
137
67
89
104
122
178
126
124
117
110
163
139
128
92
169
75
178
180
156
91
136
99
78
146
138
140
124
104
81
110
105
93
58
108
118
105
139
56
56
128
146
81
55
110
92
122
129
75
86
58
92
122
180
136
101
171
122
89
144
67
69
69
180
105
178
55
93
92
111
67
114
122
122
56
110
122
61
92
168
124
146
110
104
110
146
127
122
128
87
75
113
55
126
178
58
87
119
74
105
122
182
105
55
126
79
79
110
114
92
110
58
79
167
102
119
92
138
126
105
55
122
57
169
123
110
104
105
37
128
119
103
168
93
119
119
121
92
91
104
56
110
152
146
145
122
122
93
178
77
37
127
130
130
152
104
128
67
108
152
105
92
168
37
109
152
92
134
55
126
152
56
139
146
92
69
148
149
178
114
110
86
55
169
140
67
107
139
92
101
138
67
123
55
96
92
178
137
58
127
128
86
152
127
110
144
58
105
92
140
138
80
55
120
126
93
69
92
100
122
72
132
127
55
100
139
104
37
109
110
110
130
119
152
67
56
111
92
138
171
146
100
110
75
119
67
139
103
128
56
114
122
58
140
130
92
171
148
152
122
124
116
148
120
93
58
128
127
111
86
68
126
111
93
138
92
93
123
138
109
122
69
146
105
104
69
137
110
171
103
146
77
92
84
55
56
139
163
91
79
68
87
99
55
122
92
110
69
114
99
109
126
115
126
139
131
83
134
91
104
119
178
148
119
141
110
69
110
178
92
152
167
93
114
58
148
98
180
85
169
86
86
109
98
140
128
67
105
55
37
109
138
79
131
122
126
122
138
140
122
132
92
93
111
98
86
80
169
139
55
126
104
137
114
105
111
56
111
107
156
93
171
69
92
146
127
104
92
122
128
92
148
122
131
149
126
127
180
55
105
107
169
171
122
140
37
86
89
126
171
138
55
37
101
92
105
55
128
64
84
93
99
92
112
111
139
37
68
140
92
144
123
100
178
152
92
109
124
178
160
122
69
101
91
139
104
127
146
100
101
55
110
146
178
127
134
132
110
122
131
148
75
109
55
67
86
105
139
146
142
92
199
131
110
55
134
122
98
93
112
152
178
92
79
146
122
110
100
110
138
138
148
126
189
139
79
67
92
105
126
110
132
126
91
104
138
37
108
171
127
110
111
159
122
92
126
65
83
128
105
93
86
148
122
152
162
67
55
152
103
104
126
126
56
144
122
146
139
102
104
83
93
138
89
69
171
55
98
178
81
37
79
69
56
128
114
115
124
126
138
84
105
92
126
109
111
55
92
83
139
92
110
80
146
58
56
92
146
127
69
67
131
86
146
69
126
111
37
164
147
93
119
104
92
78
144
126
134
79
92
98
69
55
111
122
83
86
93
111
75
110
92
101
152
92
126
119
126
138
127
92
92
127
37
126
144
83
56
69
178
91
120
56
178
109
146
99
178
178
58
93
86
178
99
152
105
126
139
104
126
92
192
131
67
140
110
122
148
83
123
55
86
110
158
122
144
55
144
100
167
37
158
134
134
69
122
93
106
67
132
78
75
104
67
93
122
58
126
115
104
136
92
122
107
168
119
122
159
104
106
127
178
144
88
119
103
56
93
139
92
79
114
126
122
144
103
104
144
164
138
122
58
103
67
104
104
105
126
107
168
55
144
102
92
122
104
117
152
105
126
92
92
126
105
110
138
67
93
37
112
93
75
128
138
37
91
131
110
37
105
178
83
86
169
178
138
92
93
92
110
117
126
92
92
118
69
69
75
158
93
144
75
142
92
76
105
110
139
114
92
55
55
122
122
55
169
122
122
110
171
58
92
55
58
137
158
138
55
138
92
107
96
92
55
122
119
77
126
138
74
95
144
56
126
110
178
110
128
122
105
97
180
110
123
37
92
74
67
140
92
188
126
105
119
56
68
88
91
128
138
123
56
93
107
55
144
124
99
111
83
164
56
105
139
112
140
134
171
103
126
111
91
140
111
126
139
100
127
110
138
138
88
110
37
107
58
122
87
122
101
92
93
128
122
127
91
92
92
95
92
67
125
136
114
106
92
123
37
92
107
139
69
75
144
126
110
92
94
109
152
109
97
101
67
144
139
151
56
139
107
104
126
148
92
123
122
128
110
74
68
163
126
138
92
58
92
132
97
130
128
55
138
110
91
105
122
145
67
120
140
134
128
91
91
67
110
97
91
92
178
58
105
111
123
76
171
110
152
126
67
120
93
110
86
126
55
55
122
93
168
126
77
110
124
112
67
74
110
107
68
105
111
79
111
92
127
167
104
160
67
110
110
79
105
69
110
180
55
144
126
92
102
104
122
135
124
58
105
158
105
109
93
111
119
104
127
110
110
83
86
107
110
107
126
110
163
137
144
122
122
86
104
152
110
105
162
114
127
55
58
107
69
126
122
58
134
168
139
165
56
152
110
92
122
171
178
55
138
105
92
146
163
37
105
129
75
132
146
123
119
86
74
145
131
138
37
69
122
69
139
132
138
105
122
144
158
138
69
97
78
142
140
160
55
128
189
152
75
144
134
122
100
92
99
169
99
110
123
145
55
92
106
37
119
135
103
110
146
120
110
105
139
178
67
92
67
92
75
69
108
93
144
167
93
119
84
69
68
144
171
117
130
169
126
123
55
119
178
111
110
86
75
106
110
56
56
55
128
152
142
98
68
55
138
75
93
89
169
126
37
152
128
151
69
124
122
139
91
110
125
103
132
55
126
146
146
67
131
126
156
122
120
86
138
95
118
122
149
79
131
105
58
67
117
104
91
83
69
138
123
96
122
132
93
128
131
69
111
122
93
77
138
55
136
164
56
122
152
123
126
124
93
107
115
55
131
111
92
126
127
104
152
69
93
178
128
126
37
126
128
104
122
79
178
92
139
120
122
74
148
92
110
110
69
138
103
110
122
69
37
93
144
67
110
130
79
91
37
55
110
139
37
125
144
178
55
138
118
178
37
69
138
139
139
127
98
126
104
144
77
93
139
128
135
112
134
101
105
95
67
122
122
57
128
110
55
69
86
72
112
105
104
74
119
119
128
160
104
138
75
130
79
92
128
92
126
105
55
126
110
103
74
163
169
56
99
152
120
138
138
126
107
126
106
110
55
97
105
136
122
123
152
128
118
122
142
122
110
111
100
55
55
68
92
93
93
55
122
123
37
136
178
67
144
92
131
109
119
127
135
146
107
89
85
67
74
139
124
122
167
69
93
92
138
67
68
140
97
104
146
110
109
113
55
126
105
120
125
132
168
112
86
83
104
152
169
92
144
104
93
86
139
140
97
134
93
125
135
111
56
122
55
92
124
92
145
93
140
92
122
92
165
126
55
56
83
143
79
99
99
105
78
83
92
119
92
178
107
105
55
37
119
77
115
93
93
169
163
152
144
134
131
171
56
105
146
56
107
55
92
67
128
58
148
64
100
114
128
160
146
77
104
178
99
111
111
128
138
69
123
122
79
91
128
138
103
131
74
84
91
92
132
58
56
83
163
107
123
122
139
93
103
74
122
103
127
122
37
37
74
119
56
93
92
106
91
104
138
144
167
139
152
107
92
83
69
178
92
69
105
92
74
92
69
122
109
145
128
67
101
102
115
37
127
57
150
124
67
77
119
55
104
122
128
178
178
93
127
67
74
118
110
136
37
159
55
152
93
110
124
104
105
134
134
56
127
192
111
144
86
83
97
109
74
128
126
139
84
93
122
99
139
67
127
93
134
134
110
103
158
77
92
83
134
104
126
104
103
124
67
128
67
55
93
126
86
92
144
122
110
111
104
146
144
84
101
111
55
120
138
103
77
67
110
114
110
56
124
55
69
114
86
124
139
89
56
127
67
104
75
199
123
124
122
110
126
111
56
146
149
58
138
138
108
37
56
37
180
104
79
144
105
55
92
105
167
162
92
37
152
79
75
92
122
79
146
74
105
37
126
92
69
105
92
93
105
169
122
122
131
107
55
37
99
126
122
111
131
111
67
152
123
93
132
98
93
148
58
92
139
93
69
77
109
93
126
109
128
144
168
165
69
91
55
126
127
79
100
105
91
122
105
58
102
93
92
123
134
58
126
56
140
124
123
55
128
92
177
114
107
152
152
105
152
93
144
146
138
146
69
122
92
77
55
141
101
75
130
117
92
138
56
99
37
37
105
75
178
163
56
178
102
55
134
93
169
92
128
144
110
127
158
110
68
139
127
127
99
152
119
110
103
78
119
110
134
92
67
56
180
77
110
83
157
93
93
137
111
110
152
128
77
106
108
104
127
138
91
105
37
111
79
69
104
134
68
37
126
67
105
67
165
118
110
56
58
97
83
100
117
110
83
69
83
93
144
139
107
92
37
152
107
152
93
69
92
67
99
55
86
122
134
92
126
68
104
105
93
138
104
55
118
104
123
110
95
56
87
158
58
106
79
80
99
55
99
108
91
124
92
56
55
138
126
127
83
122
109
119
102
92
92
138
110
93
79
104
58
110
131
55
58
92
106
92
169
55
146
146
67
92
146
37
79
92
93
110
116
75
122
128
104
169
69
92
134
98
92
92
103
128
134
102
92
126
160
128
105
122
55
122
74
58
134
139
88
111
140
75
92
144
55
58
110
144
107
141
58
93
79
114
56
92
86
111
67
95
110
122
146
152
152
69
95
126
67
74
69
58
148
56
75
134
123
81
55
126
138
158
127
75
112
126
102
110
67
92
92
148
126
67
122
67
55
92
37
132
105
143
123
127
138
105
69
128
139
74
100
119
67
130
69
138
114
92
149
68
92
128
152
139
158
131
122
67
92
104
37
122
126
55
118
178
75
109
37
92
104
146
138
130
69
124
110
86
122
92
56
124
112
74
134
98
56
122
126
178
37
109
55
56
99
126
124
178
92
162
92
92
103
127
152
142
107
102
138
105
105
127
122
105
55
88
138
55
92
79
138
83
146
168
56
105
55
121
67
84
77
92
104
102
140
56
122
69
123
138
69
92
134
92
92
55
37
105
140
58
164
114
105
127
126
79
122
55
99
107
126
58
110
146
109
55
129
107
78
37
81
111
69
99
178
142
55
57
75
134
92
76
92
56
144
105
122
104
99
92
92
146
104
75
144
98
169
77
67
126
139
144
178
55
169
58
56
69
92
137
130
103
105
122
81
138
104
74
74
104
122
109
123
138
178
92
128
122
132
126
55
127
69
122
93
55
131
111
92
152
109
67
178
111
110
152
67
146
103
88
104
139
148
72
105
126
104
86
105
68
148
138
111
67
134
93
158
68
110
58
56
92
56
69
147
105
37
105
109
67
95
93
138
134
96
138
128
178
110
122
125
178
113
120
138
126
126
140
164
93
67
92
122
69
105
144
56
86
92
55
163
103
152
122
79
128
93
107
37
100
107
93
118
74
126
92
138
84
92
144
58
58
55
56
77
79
37
104
102
97
92
108
144
105
110
99
55
77
135
107
122
58
93
120
146
136
105
158
98
119
131
92
169
92
67
109
69
67
99
134
92
110
91
56
134
130
152
102
105
37
139
67
56
109
105
93
178
122
75
92
67
92
127
128
93
86
105
100
132
68
123
163
126
103
55
144
92
105
67
92
88
138
37
126
77
122
110
110
78
37
124
68
105
68
84
37
93
122
138
152
56
105
92
152
72
123
118
67
56
114
104
124
110
56
92
55
139
77
132
169
105
163
140
114
93
110
79
67
91
110
171
67
118
121
111
104
165
112
99
69
168
105
67
58
127
105
144
105
108
99
127
75
58
146
138
178
122
79
146
37
139
146
137
122
104
55
171
104
97
105
86
84
67
136
138
37
110
100
178
126
122
131
111
138
138
92
126
117
105
180
88
92
163
83
110
114
169
114
67
127
126
95
103
92
58
128
93
168
55
99
126
126
69
78
114
126
146
103
138
111
92
37
131
118
78
131
75
69
144
120
165
58
95
140
67
146
123
134
138
168
93
75
123
122
146
92
113
123
128
55
58
141
74
86
99
86
119
92
67
58
111
58
55
142
67
110
122
68
99
92
105
199
104
188
55
111
152
126
180
92
117
158
126
56
171
122
152
152
110
92
178
84
84
92
122
128
136
74
110
162
110
148
67
144
56
110
146
145
99
110
87
97
122
126
55
75
124
110
104
139
58
93
112
67
37
81
37
171
69
139
55
92
117
180
162
92
132
119
91
56
110
138
92
146
136
122
99
119
104
75
139
171
56
104
91
138
126
99
124
92
117
37
55
95
100
58
127
91
110
100
111
148
58
169
58
127
152
163
105
67
126
105
92
164
138
138
152
131
178
109
120
105
169
55
95
178
92
67
92
144
92
102
83
93
140
111
88
164
122
127
138
134
138
138
105
111
105
127
86
56
139
93
55
58
126
92
126
139
111
92
37
139
67
56
126
108
110
88
95
93
103
169
126
79
146
55
169
105
122
119
84
83
110
171
106
92
92
127
110
55
104
122
79
105
99
107
123
131
117
92
67
102
58
143
84
67
69
107
122
91
77
56
111
92
83
131
122
79
147
95
138
56
178
56
55
68
55
103
101
142
126
104
128
149
55
67
114
91
152
131
37
122
69
92
146
67
126
93
67
128
86
55
110
67
98
126
92
178
134
138
73
101
140
144
104
92
146
139
134
163
92
92
109
55
92
86
104
74
128
100
182
69
69
134
122
103
123
92
134
135
104
108
93
89
92
79
67
67
58
105
139
105
121
93
56
105
158
104
135
110
86
110
140
101
89
112
118
58
132
127
162
67
169
138
69
111
105
171
139
138
124
164
124
128
110
89
106
139
79
125
178
139
163
106
84
55
99
67
77
93
93
123
145
144
84
78
134
55
37
110
125
100
127
108
58
146
108
138
69
93
109
118
67
67
77
83
55
55
138
92
110
105
178
93
67
84
117
122
110
128
140
102
123
56
168
156
105
171
110
138
37
126
123
77
138
106
151
104
86
136
56
107
138
37
138
92
105
107
86
92
137
122
67
137
132
79
107
56
122
159
77
145
105
110
77
104
89
123
110
92
158
158
55
126
152
110
138
104
119
79
121
99
122
138
125
56
139
56
131
92
119
111
109
139
119
122
55
92
105
136
178
69
103
56
162
101
100
58
110
138
67
138
58
110
129
75
125
127
92
67
95
122
92
110
138
138
146
92
178
92
89
122
75
92
55
138
99
128
37
56
126
178
134
138
37
152
144
144
68
178
77
138
37
139
77
122
109
67
67
146
112
92
92
119
104
178
103
55
55
126
127
128
92
138
75
92
139
75
180
107
144
126
56
83
92
61
94
129
107
92
67
122
92
126
93
111
110
138
122
164
87
152
130
110
140
109
86
109
169
122
169
128
92
92
55
86
118
113
169
105
142
122
103
199
122
55
104
92
92
98
130
104
104
55
68
92
56
67
92
86
139
93
126
93
113
92
126
138
104
143
165
119
146
120
91
92
128
58
103
144
139
74
99
92
118
77
56
139
104
105
128
129
123
126
112
148
131
67
110
92
119
132
92
118
74
110
117
136
97
129
123
111
104
37
134
118
146
169
130
126
37
92
107
132
37
128
126
74
134
67
122
145
86
79
169
86
114
126
138
92
37
80
127
111
105
160
104
105
130
77
105
91
178
139
92
92
55
55
130
93
111
75
83
103
126
37
131
140
67
55
83
92
92
101
126
139
119
87
55
144
128
124
138
58
92
75
79
105
138
103
55
92
102
109
107
83
123
92
122
95
104
56
101
110
67
122
140
37
122
107
104
58
119
138
56
86
134
127
67
165
56
99
55
138
67
102
37
103
37
146
144
180
138
139
123
107
92
145
107
92
91
55
122
138
110
126
84
103
56
127
104
104
105
93
92
96
138
97
105
127
86
92
92
107
103
163
110
124
146
58
119
67
127
147
96
180
178
168
107
75
162
122
142
117
98
104
105
138
123
103
139
138
105
132
75
142
91
178
93
144
92
80
92
104
79
139
138
138
105
105
139
171
93
101
127
58
95
37
55
37
92
74
102
122
122
146
55
55
127
127
104
114
148
104
74
144
105
168
69
134
37
180
140
178
119
105
109
110
131
130
110
55
141
138
139
86
92
58
178
152
152
37
169
137
109
122
126
67
93
67
138
81
126
58
55
92
123
123
139
144
122
139
145
112
117
93
112
123
138
109
127
67
104
91
104
105
74
37
93
55
91
69
138
127
119
109
105
56
123
119
131
140
134
119
134
55
55
123
126
127
79
131
58
91
106
92
124
105
92
77
171
74
67
126
126
104
126
138
58
37
75
110
55
111
138
178
119
84
139
158
124
69
104
144
139
136
86
122
108
81
106
37
68
122
93
79
92
86
123
111
169
56
56
91
92
104
92
99
123
107
81
123
146
83
127
104
130
110
110
118
74
77
83
144
122
122
92
144
114
122
72
124
146
122
109
37
67
162
127
127
58
110
105
95
102
180
81
55
104
110
68
92
75
122
126
146
58
75
126
126
92
123
99
86
101
67
113
134
134
139
55
67
138
122
139
114
126
131
107
146
91
144
58
126
67
55
105
58
126
107
138
127
92
67
115
92
91
178
169
138
92
142
123
37
165
74
93
110
169
119
74
132
79
119
68
92
92
144
86
146
140
171
152
118
126
95
102
55
93
107
83
127
97
105
93
75
92
92
119
77
86
37
55
110
79
89
146
55
152
126
136
67
105
93
168
139
105
110
77
122
76
115
78
104
56
93
77
110
55
77
105
139
99
67
77
114
199
145
92
86
97
104
92
122
120
126
146
104
110
130
114
56
178
115
86
107
69
105
127
126
130
140
128
88
126
67
140
144
120
99
55
114
68
55
106
74
110
171
93
91
148
84
119
67
83
84
124
146
126
117
122
86
122
138
58
105
107
160
78
67
140
92
114
126
56
77
107
126
139
105
107
101
104
56
67
77
104
104
55
138
121
86
127
126
122
109
171
122
55
167
110
156
58
93
107
126
56
110
148
138
80
56
122
83
119
58
144
79
86
86
92
132
68
77
55
131
105
119
55
112
138
127
105
178
138
86
81
67
105
86
139
37
152
122
120
126
103
104
164
146
127
158
56
77
55
180
104
56
178
92
152
122
134
105
74
92
122
92
64
77
128
92
128
55
122
138
75
165
110
134
104
152
111
104
86
122
178
140
105
114
138
119
93
188
100
104
37
111
55
37
107
68
138
104
92
56
178
107
142
129
122
126
104
140
139
69
86
69
67
171
137
74
114
56
67
127
92
128
67
138
113
105
104
106
105
126
105
124
152
136
119
126
132
97
110
68
122
188
146
56
122
92
106
56
128
138
171
163
188
103
83
169
55
91
100
69
105
119
55
108
122
156
111
105
146
164
138
110
122
69
110
139
93
146
56
138
92
111
122
100
64
75
126
109
110
92
130
112
68
111
122
125
110
110
110
138
89
76
103
109
123
91
92
160
108
55
178
58
123
178
77
99
55
111
89
110
93
93
120
126
139
67
138
138
178
105
111
77
77
139
147
105
92
108
110
55
37
169
114
104
84
37
130
110
139
88
96
151
129
56
89
86
138
56
126
92
121
146
158
134
87
92
110
122
144
67
74
79
178
74
69
142
126
69
86
127
148
74
139
128
67
67
104
138
98
91
68
127
37
114
68
56
124
74
77
167
78
124
132
56
37
86
140
123
86
77
169
69
37
136
93
103
93
79
110
92
107
83
68
140
138
130
93
122
164
55
126
91
55
69
77
104
120
100
114
105
126
114
137
171
158
109
79
92
119
58
140
55
55
104
95
86
110
92
92
56
58
122
92
93
97
92
87
92
67
76
110
77
105
167
83
142
169
99
111
164
92
163
126
99
148
92
55
101
126
69
69
104
119
122
110
106
55
37
110
77
128
80
158
111
105
130
92
91
122
93
114
121
126
126
97
122
104
99
112
92
105
93
169
128
37
94
103
37
138
144
126
92
114
67
162
144
119
138
140
178
120
89
139
111
109
93
107
160
128
92
139
122
93
37
104
67
104
152
123
134
74
102
104
92
107
92
122
148
139
144
92
131
37
119
104
74
178
93
57
58
105
101
178
92
81
105
134
160
122
109
111
164
55
55
152
144
110
131
110
126
129
126
104
122
86
67
103
122
171
132
111
132
55
97
100
111
72
67
111
110
126
138
98
58
84
138
128
77
86
78
122
92
128
147
55
105
67
122
56
93
92
142
69
123
123
104
109
104
83
104
72
56
91
136
110
126
178
131
131
110
138
126
110
118
126
139
58
117
122
138
104
169
138
92
138
97
110
105
182
99
178
92
78
55
138
84
84
56
162
104
92
55
132
99
97
67
134
93
105
122
105
120
138
97
100
158
93
146
97
171
93
130
67
92
122
122
134
91
93
93
149
104
37
105
55
69
91
119
136
126
56
110
107
109
56
138
126
55
86
132
92
55
122
67
56
104
127
67
160
86
110
122
144
93
67
101
120
138
91
180
178
97
92
37
92
99
92
100
55
56
109
104
134
100
152
105
144
55
92
93
119
67
55
178
93
134
106
68
122
104
171
178
83
93
126
122
93
111
97
144
169
126
118
73
122
138
124
55
92
93
131
74
124
107
146
110
152
104
109
93
55
146
92
55
86
110
92
86
92
110
123
67
152
111
74
138
92
138
131
111
79
104
146
74
107
126
78
178
178
111
79
105
92
79
56
178
120
105
125
103
92
124
153
148
128
139
140
104
137
101
134
56
111
68
110
110
144
124
92
92
89
122
69
92
105
122
58
69
122
140
67
107
139
101
144
86
178
55
79
104
55
125
128
69
178
127
144
92
58
146
86
106
169
137
75
122
122
128
104
91
178
122
140
55
123
134
56
111
55
86
169
97
117
110
127
86
122
138
93
134
104
111
105
120
146
111
110
138
114
126
169
92
107
67
138
144
178
105
95
104
55
120
67
144
55
128
67
178
122
180
74
83
55
103
109
111
92
92
105
67
178
56
131
134
111
72
110
85
103
136
127
129
139
93
123
146
127
37
135
123
105
146
121
75
93
68
158
93
109
146
104
84
37
104
126
67
146
69
145
128
103
105
138
127
93
67
134
92
144
114
126
110
169
128
146
87
163
127
131
75
126
152
144
84
58
107
83
75
138
111
124
138
111
93
148
97
88
138
132
104
110
158
56
58
37
93
56
92
91
144
138
138
126
109
107
99
103
55
152
77
128
145
138
83
104
110
105
93
93
55
74
127
119
105
67
67
178
144
105
130
105
111
92
79
104
58
69
126
93
110
180
92
126
111
92
101
168
104
117
139
92
58
55
93
79
120
126
111
103
86
144
105
104
97
92
56
132
56
141
104
83
126
178
137
123
126
92
122
77
128
146
122
73
74
104
67
93
67
123
141
92
126
123
86
86
169
122
104
138
105
122
140
134
92
88
37
92
164
127
58
91
110
127
55
110
79
77
178
56
107
69
111
123
105
100
105
120
110
79
110
112
100
127
122
93
58
68
37
88
93
37
146
128
126
138
131
169
58
100
106
84
105
126
92
93
152
136
92
138
110
122
55
86
120
58
93
138
132
132
164
130
122
122
97
138
119
92
74
68
178
77
141
164
144
58
67
104
108
69
91
122
164
65
58
160
169
130
55
163
55
105
55
130
69
112
139
109
110
67
141
169
93
123
109
178
56
199
100
138
107
93
104
118
127
67
104
99
145
91
41
75
103
75
152
127
69
127
75
78
92
56
69
132
100
110
91
148
56
122
56
127
148
139
104
139
69
123
92
81
69
99
126
130
126
55
151
126
146
58
79
127
55
106
105
105
139
69
141
84
138
144
75
79
122
55
105
111
58
112
128
92
69
146
118
83
104
110
158
110
126
144
111
122
123
55
144
178
105
93
79
67
120
55
93
91
110
163
68
122
122
110
105
132
158
110
138
140
58
114
112
86
55
55
92
105
122
104
99
92
79
125
144
162
67
167
67
138
74
104
86
55
105
91
56
110
138
140
105
93
122
105
131
110
112
120
55
109
37
138
138
122
122
127
139
75
128
103
55
72
148
92
55
126
37
138
111
92
140
126
100
105
37
93
67
74
69
110
135
108
86
132
109
69
123
55
134
99
67
74
126
140
109
110
91
138
105
146
140
92
75
92
77
115
110
55
101
55
91
122
169
132
118
83
134
111
55
127
99
126
92
126
102
58
180
55
138
56
96
146
138
118
131
110
55
67
119
122
119
119
86
97
144
75
168
144
55
55
123
104
89
114
122
99
105
144
110
123
122
37
126
88
148
135
55
93
138
123
79
152
126
138
119
70
105
139
131
182
182
103
136
55
110
128
122
86
180
122
105
74
122
98
102
164
105
108
58
67
74
127
108
146
99
178
84
132
97
64
68
55
99
92
67
132
134
81
131
106
58
122
67
126
119
127
132
93
178
110
117
69
104
86
106
92
67
169
92
146
84
79
114
138
93
122
118
79
107
111
130
92
122
58
110
105
145
146
109
77
56
117
123
139
108
58
79
95
67
126
58
56
148
98
67
126
139
107
92
56
37
171
122
92
105
92
105
105
178
127
68
138
67
124
122
169
122
108
110
178
139
140
92
199
126
110
105
122
122
127
140
68
107
77
124
117
122
126
92
37
68
67
56
103
159
111
138
92
79
124
56
119
122
144
104
135
73
124
56
56
69
144
110
37
98
171
127
122
121
117
165
95
56
74
77
56
111
58
99
55
137
139
79
92
105
126
122
105
37
146
126
103
110
127
56
101
119
104
152
133
107
107
138
92
74
122
105
138
152
88
92
86
127
55
92
92
134
163
146
103
92
111
109
56
107
105
134
104
121
92
83
126
105
67
92
128
91
104
98
37
171
167
112
129
119
104
67
138
79
109
105
104
111
169
92
92
149
93
55
109
144
89
111
79
144
139
92
105
92
144
114
110
110
99
117
138
91
102
140
101
104
144
79
97
68
110
122
111
110
130
94
93
122
180
110
122
92
136
86
104
195
139
119
120
55
106
126
91
139
93
178
122
139
122
91
110
69
58
122
67
106
138
122
122
93
83
74
56
139
56
103
93
130
103
160
92
55
69
79
132
132
97
92
127
122
89
105
55
152
93
55
58
102
107
102
55
37
144
93
119
110
141
136
103
93
67
127
127
97
104
104
134
126
122
144
74
144
67
92
110
79
74
55
74
92
104
138
110
127
137
56
100
140
56
105
98
136
169
37
119
178
135
93
122
146
138
127
111
122
145
67
93
77
123
109
110
89
110
105
118
126
56
67
55
86
58
92
37
158
110
110
120
146
126
74
74
105
110
67
91
92
119
105
134
139
55
134
58
87
110
136
126
128
138
128
58
134
67
89
167
132
105
169
115
86
86
104
178
145
120
58
111
130
55
92
134
69
127
122
93
139
139
152
86
140
77
104
58
75
67
138
78
119
98
139
119
74
122
67
79
149
115
128
55
111
92
105
111
107
180
91
122
105
149
86
110
110
131
93
138
123
127
139
128
92
110
92
111
122
110
105
128
112
92
110
127
134
109
98
93
165
152
132
95
168
110
104
119
67
124
122
55
55
180
110
105
122
127
56
77
74
37
146
144
126
103
56
105
144
79
144
130
109
104
125
119
146
122
139
68
67
79
69
92
130
55
139
199
56
158
83
55
55
91
92
93
146
74
98
134
110
122
171
67
119
167
58
114
117
37
96
137
152
111
84
37
126
126
58
119
95
110
74
83
144
103
144
105
74
86
127
139
162
102
169
107
55
55
74
138
83
124
95
167
55
110
112
126
104
75
134
122
132
67
92
92
123
86
111
149
55
126
125
178
124
56
162
91
86
112
100
148
92
134
126
105
132
122
119
165
101
140
168
99
122
136
71
56
112
123
88
79
126
119
84
93
168
92
69
110
80
105
106
134
105
108
55
124
168
109
141
56
132
122
103
148
102
55
122
37
91
106
107
128
164
86
130
138
92
109
56
104
67
67
119
122
104
92
110
120
146
122
110
146
123
105
110
56
74
98
105
104
91
56
56
122
189
55
139
117
128
67
127
152
99
92
67
105
139
92
105
110
92
122
93
110
118
92
105
169
178
110
145
55
127
126
74
182
124
75
67
132
91
138
139
58
110
77
104
68
162
125
149
134
93
91
86
118
136
104
162
169
148
104
168
101
122
126
58
74
139
139
58
55
110
108
58
105
89
87
146
37
127
83
135
92
69
67
69
104
136
67
168
122
104
55
124
93
178
105
105
112
169
55
114
68
55
105
122
160
134
104
93
98
86
110
67
92
77
105
67
110
110
122
111
99
86
107
126
127
138
67
111
83
109
130
127
67
58
139
110
105
69
55
126
91
139
146
78
145
169
67
99
92
110
138
128
105
138
55
86
138
84
99
139
69
128
92
124
129
146
114
112
109
117
92
122
120
104
138
92
77
111
92
164
130
136
69
113
92
56
105
117
86
91
109
100
103
93
67
55
55
86
92
91
110
55
55
138
86
104
144
118
104
106
92
145
134
104
55
37
169
81
111
147
67
132
134
92
110
144
91
127
138
178
79
56
123
55
122
74
104
118
67
128
55
168
126
55
67
122
134
67
92
124
56
93
79
37
122
122
110
104
122
93
93
55
37
122
139
77
126
109
126
55
124
75
123
92
124
146
110
67
105
109
123
67
152
103
99
86
92
111
92
97
86
168
122
93
127
37
146
86
92
55
92
97
86
86
77
76
56
134
126
130
123
158
107
67
126
160
75
105
103
122
67
140
101
92
122
67
144
110
152
138
178
37
37
104
80
122
148
128
158
92
58
129
122
104
119
92
127
148
67
84
58
138
111
149
98
138
56
179
92
86
122
128
92
93
138
130
122
56
92
55
169
105
102
128
104
92
93
138
182
122
102
105
104
105
56
120
127
144
122
148
109
126
140
55
199
180
87
99
81
110
162
56
75
131
56
128
58
168
114
67
138
103
91
138
55
92
105
93
111
88
99
58
152
122
144
56
58
55
75
114
69
128
92
67
140
58
88
84
128
97
144
126
169
136
138
37
92
134
92
67
128
104
120
110
131
105
67
83
55
138
104
140
58
127
146
127
106
122
56
160
145
68
152
56
89
69
92
123
171
101
109
93
69
110
149
138
144
77
139
124
84
67
178
67
74
136
126
107
64
105
158
123
136
171
126
148
134
92
104
58
67
144
105
132
146
93
92
58
127
132
169
58
78
109
92
93
92
144
115
109
56
123
92
148
92
55
110
140
67
151
127
83
92
138
91
165
55
92
92
91
134
109
126
91
75
83
78
92
92
126
98
117
87
56
126
86
144
130
146
101
138
37
138
58
96
67
67
37
122
139
147
89
92
55
119
122
92
110
99
81
105
126
169
92
92
69
55
131
91
144
119
97
55
148
111
92
145
86
92
122
83
58
178
125
75
123
105
124
122
77
78
136
55
67
131
149
104
92
55
55
118
137
140
92
110
136
169
122
119
93
122
92
86
83
97
141
137
104
178
67
94
122
69
119
92
105
79
134
92
105
88
79
93
137
77
126
134
92
114
141
99
128
171
124
55
108
80
104
110
122
55
79
37
37
122
68
146
107
96
134
56
83
145
78
103
74
55
58
74
122
122
55
123
56
124
105
104
163
92
144
105
127
110
93
114
138
169
122
140
96
103
104
79
37
79
105
103
110
77
105
104
67
55
130
138
93
92
122
178
128
67
55
74
56
37
105
91
87
37
55
91
56
96
138
88
110
67
119
131
124
100
119
144
92
126
98
125
55
111
110
126
108
105
109
127
134
131
168
55
98
37
119
123
110
113
103
94
131
68
110
67
104
122
131
86
55
92
110
112
105
37
122
169
119
87
56
110
93
122
111
138
130
110
103
92
58
134
144
148
107
169
144
152
144
178
128
104
69
79
79
123
55
105
67
122
91
115
107
78
88
104
169
105
124
130
123
139
92
92
105
139
114
105
56
105
140
86
144
110
111
146
113
168
55
138
105
99
122
58
127
93
92
105
67
119
86
146
138
55
58
146
158
110
58
93
92
74
79
37
110
56
135
37
93
87
122
56
56
104
138
93
146
93
105
110
68
122
37
128
120
58
92
88
118
122
69
69
107
67
123
109
58
97
110
100
55
55
127
112
110
105
67
147
169
144
92
93
37
126
163
126
130
110
79
105
93
118
119
74
55
92
110
67
119
146
122
86
92
152
138
55
75
138
138
123
58
69
69
80
178
146
67
123
105
119
148
37
101
92
138
132
111
97
152
163
146
146
67
122
100
55
119
92
93
146
129
37
92
79
105
126
122
94
92
55
100
112
119
123
96
144
146
87
58
92
104
100
84
126
101
146
85
152
137
92
134
107
178
127
103
93
144
58
79
67
78
118
146
37
93
105
104
182
106
67
92
84
55
55
110
92
110
103
119
55
69
92
115
143
122
104
122
112
169
99
144
86
69
112
144
124
93
93
105
134
80
105
79
93
110
107
138
111
86
56
118
171
89
99
93
58
103
148
112
134
105
138
146
55
137
86
111
84
188
144
75
92
122
58
123
103
55
107
55
127
146
122
126
55
120
110
104
103
92
67
131
67
37
55
120
77
91
138
55
178
138
122
144
126
105
126
119
107
75
77
58
105
58
117
37
110
91
83
139
99
122
55
103
98
127
107
119
67
101
110
92
139
104
158
158
69
105
138
122
92
171
138
102
138
139
146
99
55
69
58
111
86
109
123
100
128
92
128
138
92
92
163
122
138
92
77
130
126
127
86
92
109
132
74
69
120
80
78
74
84
136
138
171
109
79
136
56
110
130
138
92
110
106
106
132
92
171
138
55
101
92
138
109
152
122
79
139
140
137
78
119
178
92
139
84
153
75
67
127
55
132
152
139
92
124
123
178
160
138
140
67
96
103
55
79
92
69
111
128
67
122
55
168
105
126
169
92
149
104
122
92
138
55
136
92
67
136
127
114
122
92
67
122
122
130
119
111
178
55
58
122
77
140
138
139
55
127
104
138
91
55
77
125
123
110
144
98
114
96
55
55
88
138
55
55
74
91
164
119
138
92
152
86
103
178
69
77
126
138
102
92
79
131
178
93
122
123
67
83
122
179
139
55
55
119
138
91
117
105
84
55
106
171
144
124
152
97
104
114
101
55
55
93
122
104
127
104
104
168
138
114
105
168
107
138
56
138
158
138
55
140
109
126
127
111
130
58
55
178
80
143
58
92
55
113
76
144
152
147
105
122
55
104
128
105
112
126
105
138
119
120
105
122
112
69
104
74
126
37
75
110
169
105
167
97
139
146
128
122
83
104
68
138
122
55
137
138
55
110
94
105
126
95
82
99
79
137
169
75
142
144
104
146
111
126
75
135
86
144
108
84
97
55
109
138
98
146
93
92
138
126
75
163
67
122
110
110
140
67
93
109
197
104
117
151
111
149
122
139
92
102
83
139
162
122
126
135
56
126
178
69
91
122
88
117
55
69
69
107
120
69
92
92
127
138
104
80
110
69
165
171
110
99
119
160
92
158
180
138
145
138
92
128
162
56
139
55
92
122
162
58
122
105
91
126
138
91
100
92
107
131
56
145
67
126
114
99
138
122
112
94
77
123
128
93
92
92
128
120
68
105
138
124
126
148
110
55
55
77
56
110
105
69
129
128
97
67
98
67
142
79
97
130
110
123
138
67
115
55
107
110
139
83
93
98
92
110
138
118
110
138
104
37
122
152
140
110
146
144
126
93
105
178
148
105
55
105
69
92
92
68
121
128
152
109
138
152
127
126
110
92
163
124
58
140
150
58
99
117
79
83
148
110
92
98
95
126
126
95
92
91
139
91
158
137
55
127
152
132
69
138
134
109
124
127
128
91
58
156
126
104
67
111
138
103
99
67
92
100
99
128
92
124
92
55
138
93
67
123
119
68
127
103
92
104
93
144
67
127
105
138
67
37
110
92
84
138
118
158
86
88
100
84
58
138
99
138
92
105
134
56
160
126
111
104
79
93
67
69
178
122
55
138
139
104
77
132
79
77
110
81
137
144
98
112
122
169
86
56
84
149
55
122
67
91
91
67
180
86
134
128
110
83
144
138
98
124
67
126
128
130
122
79
58
80
139
79
127
169
101
101
99
93
139
105
138
93
99
117
55
126
105
111
55
146
104
67
163
126
91
132
126
121
56
67
126
109
84
67
55
86
93
74
138
92
107
100
103
93
109
124
101
56
92
95
136
86
74
114
75
178
111
68
128
58
99
55
56
141
56
84
89
138
126
92
139
109
79
139
138
126
91
126
67
122
56
106
69
124
153
105
68
117
75
37
105
105
144
56
164
117
137
98
83
37
112
125
55
122
122
109
138
93
79
123
103
134
92
67
69
79
58
139
127
138
74
77
109
91
136
138
141
110
106
153
144
126
110
104
93
119
91
178
152
75
178
122
171
139
69
138
92
83
55
79
74
109
148
55
146
119
98
144
105
55
80
165
126
122
146
83
141
136
111
67
84
138
126
104
152
110
109
105
93
75
148
75
189
92
130
105
105
92
110
55
69
122
67
97
139
110
105
79
56
112
37
132
126
136
69
67
178
101
93
55
131
92
105
126
68
123
91
86
144
56
104
138
92
146
128
55
169
110
69
55
148
77
55
110
92
92
146
56
110
178
55
69
56
163
171
92
37
119
104
126
122
55
127
69
139
86
105
56
67
143
55
110
79
123
136
106
152
91
146
120
93
67
107
171
55
92
144
123
86
120
158
125
67
119
69
56
101
162
119
135
88
118
56
74
122
98
111
55
67
56
93
123
105
107
178
168
144
55
100
123
146
92
110
123
55
126
78
128
134
132
74
91
56
91
98
126
58
138
134
91
126
96
94
138
109
136
114
56
114
146
67
138
105
92
138
87
104
89
55
148
126
126
92
122
126
93
178
105
67
92
138
69
136
55
55
178
104
104
158
55
37
134
77
99
86
105
37
55
110
77
107
86
93
68
197
92
110
92
37
92
122
105
134
122
144
138
55
109
86
104
105
122
119
169
104
104
131
178
79
168
158
91
146
97
83
122
105
162
56
137
158
56
168
146
37
78
56
92
126
122
104
105
138
77
138
106
98
109
126
67
107
104
104
119
55
67
169
136
107
110
92
56
123
132
67
107
77
55
126
127
134
134
132
123
139
120
110
116
94
140
58
98
92
92
141
119
180
107
144
69
104
119
119
105
69
122
93
117
56
96
120
104
126
126
86
92
100
119
91
126
92
81
122
178
109
104
92
108
119
122
152
67
110
99
108
123
126
142
92
67
91
139
92
55
123
58
139
89
138
105
55
127
56
122
37
107
93
55
92
122
37
57
93
168
37
69
67
127
117
92
69
127
114
55
76
146
67
104
92
58
92
55
130
127
128
110
96
97
93
75
99
122
138
123
124
111
55
123
104
119
138
110
74
178
112
92
68
55
74
126
93
165
92
92
67
128
126
178
158
126
127
92
144
112
105
86
92
99
139
134
68
126
104
92
123
111
139
74
110
92
122
69
37
136
56
108
122
92
92
89
55
107
55
105
105
124
102
37
127
122
158
126
55
67
121
92
55
122
92
80
118
110
120
127
146
109
87
178
93
92
99
92
75
138
107
77
163
127
123
56
111
132
105
134
37
77
95
137
67
139
92
105
148
105
119
68
146
104
128
128
91
86
110
92
112
56
122
105
171
122
146
144
178
93
75
144
127
111
144
131
152
77
88
158
104
123
126
109
139
37
69
117
77
97
77
105
105
58
58
56
104
127
152
104
105
83
98
120
122
58
146
55
140
79
77
77
127
135
127
100
55
92
146
103
134
134
92
126
67
104
125
120
83
93
87
67
126
94
138
139
67
69
95
55
128
136
67
134
74
55
163
138
86
119
124
120
126
92
160
109
110
138
122
126
55
146
86
107
122
91
104
124
77
92
102
100
128
127
131
93
134
67
102
122
171
111
162
126
167
55
122
138
88
67
69
123
123
156
92
182
92
114
55
122
92
144
138
101
56
92
139
142
122
55
67
139
79
67
92
138
92
81
110
104
89
122
125
180
91
103
110
109
122
67
138
123
144
83
119
126
55
110
102
105
75
92
112
131
58
140
122
139
139
104
109
81
181
91
109
169
58
110
92
122
75
131
104
92
86
169
56
58
122
110
132
37
114
93
93
67
75
83
55
111
109
104
119
77
115
178
178
136
110
92
126
126
95
77
104
81
74
75
134
112
91
122
126
92
111
126
122
106
146
106
74
67
122
119
37
58
69
144
126
86
136
122
127
79
105
105
93
178
37
178
146
107
55
122
134
125
127
107
37
105
109
74
127
92
55
88
168
164
91
92
98
56
126
81
79
92
110
128
102
105
92
86
37
114
171
92
144
126
144
93
118
103
92
86
132
98
122
138
110
104
127
127
139
104
127
55
55
55
178
119
106
93
92
69
91
138
127
123
93
126
74
103
112
146
134
139
83
122
58
91
122
110
67
78
180
144
55
139
127
68
55
92
178
126
91
97
130
92
152
37
105
85
119
93
92
110
124
67
104
67
84
92
105
138
104
104
91
92
106
110
56
67
86
37
110
138
152
117
68
86
145
88
95
110
105
117
55
74
93
107
158
91
122
130
104
139
55
93
55
122
98
75
122
118
108
128
163
37
111
124
107
93
93
138
107
178
123
104
92
127
152
107
104
122
67
92
110
89
138
126
138
144
139
128
67
110
37
92
152
100
67
126
77
110
119
110
58
75
77
92
121
127
146
98
152
93
127
158
108
83
152
92
144
86
93
101
92
92
114
104
126
138
37
110
123
122
122
105
135
93
56
92
103
67
79
75
55
110
86
109
76
114
98
98
92
138
180
77
86
152
92
86
91
135
104
67
104
55
105
107
109
75
100
140
138
122
55
58
86
122
92
81
103
92
91
79
146
146
136
104
92
67
79
128
72
131
93
112
92
72
144
148
138
162
121
140
152
110
102
93
58
92
122
138
139
126
139
55
77
105
77
58
105
140
67
123
178
110
152
104
111
130
110
73
93
92
105
138
152
104
163
110
110
171
75
67
92
138
126
67
178
141
92
139
75
99
171
92
79
119
110
103
103
83
92
37
109
158
132
138
146
55
171
109
134
86
93
79
130
92
128
169
146
105
134
74
55
110
105
171
93
178
92
101
86
144
103
74
92
74
92
95
139
103
108
56
163
131
107
55
88
79
105
99
126
132
37
108
104
138
88
100
110
77
92
105
99
92
135
158
110
110
69
145
57
69
144
92
126
80
120
104
106
77
75
134
67
110
158
128
124
148
104
114
56
67
76
81
114
107
110
69
128
178
122
104
122
55
105
162
169
92
67
110
138
55
67
138
92
152
128
110
138
55
58
117
132
146
110
92
110
69
92
55
89
55
94
138
93
110
67
103
144
139
128
91
144
86
55
112
102
86
156
134
56
67
56
55
77
85
139
83
56
92
144
110
103
127
110
67
69
188
109
134
104
119
138
80
103
67
139
127
146
131
67
105
105
105
98
110
124
126
139
99
169
93
156
111
105
110
92
144
92
104
95
144
77
86
79
92
111
105
110
122
128
69
138
109
55
75
138
138
104
104
98
146
37
55
93
69
67
138
122
138
91
152
89
111
92
55
122
58
126
99
139
93
56
77
104
124
158
99
92
100
109
56
55
55
69
37
92
58
110
55
75
182
104
75
177
139
117
92
84
125
111
110
119
138
128
126
127
92
73
110
139
105
67
84
98
104
111
68
144
171
152
65
58
144
67
130
180
122
55
55
107
68
104
89
69
86
110
92
58
79
126
106
135
91
126
100
126
136
104
86
69
122
92
104
110
77
104
103
146
69
67
58
105
138
92
110
171
86
77
55
56
101
171
56
127
129
128
124
92
152
104
56
83
122
138
92
37
99
132
132
77
92
109
107
99
146
58
105
152
55
78
127
123
103
105
160
124
110
144
93
83
126
92
37
67
87
106
112
124
122
120
124
56
140
111
108
128
58
91
122
146
105
105
93
104
67
123
158
95
105
144
86
160
146
58
144
111
55
119
100
110
110
113
138
126
123
91
180
103
163
122
119
92
126
139
55
124
126
37
110
55
122
138
93
117
146
146
56
112
37
84
123
58
128
127
58
93
92
75
126
180
127
91
93
55
55
55
92
123
123
127
92
86
55
92
105
126
132
105
123
108
126
55
128
122
122
104
118
178
148
134
171
152
105
95
102
139
92
138
67
101
121
55
93
139
139
117
69
68
93
99
58
138
55
137
37
126
114
192
37
152
126
138
139
99
130
99
163
79
104
138
58
140
37
67
55
75
77
58
127
93
92
130
140
55
128
92
92
107
67
104
91
105
55
56
56
126
127
93
146
56
92
105
138
83
79
93
123
110
75
55
37
110
110
123
56
92
55
58
139
105
103
139
68
97
120
139
126
123
122
126
107
92
100
92
126
104
126
104
138
118
101
80
122
103
119
91
126
140
189
152
178
127
58
126
139
99
139
144
91
126
104
102
92
139
105
103
122
95
135
139
128
55
128
144
126
97
119
110
83
55
75
126
111
122
83
126
93
56
67
138
131
140
105
72
67
56
127
134
96
104
55
93
105
180
122
86
104
110
119
67
122
178
55
111
158
103
91
147
56
178
111
163
67
124
101
92
58
127
91
110
77
94
105
92
126
92
58
182
75
75
138
93
178
112
110
169
148
74
138
56
86
108
69
110
119
97
111
93
93
138
144
75
139
126
92
86
104
99
92
68
93
56
122
169
68
127
136
126
171
67
138
67
110
146
123
93
56
56
87
37
122
92
126
138
83
138
126
109
69
67
127
126
55
37
122
98
67
105
131
120
75
127
94
105
169
138
126
55
56
126
137
169
74
130
105
139
104
67
122
131
152
126
108
125
74
92
92
132
37
126
128
152
79
139
77
111
93
55
79
74
139
146
141
99
79
55
98
56
77
69
127
56
140
110
101
97
111
104
122
55
138
152
126
127
126
136
112
146
178
77
126
131
111
105
123
144
180
109
104
132
138
126
79
83
105
105
77
67
132
55
55
74
152
110
58
91
138
138
77
110
105
169
171
105
178
69
91
93
111
104
91
105
109
102
123
124
109
178
69
137
165
126
56
131
104
110
122
123
99
158
67
56
169
105
104
115
67
131
110
74
122
109
91
67
152
105
68
67
107
152
110
134
105
112
142
83
122
144
87
58
55
119
86
68
99
100
148
134
152
86
58
169
178
92
136
178
56
77
123
126
92
84
105
128
132
105
158
95
95
102
122
105
107
169
152
105
112
58
79
37
92
126
92
119
178
161
152
93
105
37
93
123
119
83
91
134
86
92
75
83
84
119
139
117
138
122
127
97
77
171
146
92
67
126
123
101
37
55
124
142
91
67
169
105
101
72
126
127
178
144
92
111
164
140
102
138
105
163
107
138
102
111
126
126
169
79
97
69
111
55
92
93
55
168
120
99
55
69
97
178
55
89
86
110
95
55
92
67
91
56
138
93
118
137
99
92
140
178
122
124
67
144
119
77
92
68
171
106
58
122
139
107
103
99
111
56
67
93
92
126
92
107
111
92
111
127
102
146
104
123
112
126
93
136
152
130
110
119
119
55
86
108
158
79
110
107
91
68
126
92
81
86
104
136
58
105
105
104
138
148
138
79
86
55
144
110
77
84
144
84
92
105
58
165
134
146
111
160
92
123
146
118
140
152
138
55
189
127
178
156
139
127
86
169
141
148
56
178
99
126
152
112
139
105
138
69
92
56
110
127
122
178
58
37
92
140
132
102
111
109
91
67
139
119
110
92
110
98
79
140
128
37
93
128
103
83
77
69
92
122
128
93
56
92
55
128
134
55
126
126
169
169
99
178
67
123
104
178
93
55
138
68
104
122
127
75
86
105
119
75
120
146
56
124
56
126
67
105
58
77
134
103
122
67
110
67
93
91
110
144
56
37
144
112
149
92
86
178
127
55
126
126
77
105
77
105
92
92
56
130
92
67
137
130
104
109
104
55
144
92
103
55
58
119
126
124
144
69
134
139
56
102
110
109
92
55
110
152
130
138
92
95
111
74
67
134
105
122
140
159
110
56
107
91
99
95
138
126
104
163
97
134
111
37
123
110
134
91
119
125
74
139
92
119
123
55
128
122
67
118
92
138
119
78
126
58
152
152
55
55
122
152
80
122
110
56
79
162
126
58
122
139
56
79
118
126
134
99
108
118
67
122
122
111
111
139
105
109
105
106
37
86
122
91
92
110
169
136
103
104
101
37
100
122
55
119
92
79
79
138
122
111
67
111
105
94
110
69
92
109
165
122
109
127
56
128
109
113
58
67
124
112
37
123
71
55
138
152
56
137
139
126
67
111
123
134
135
92
86
134
92
94
110
67
106
99
124
123
79
146
67
152
69
55
88
93
67
134
55
109
105
163
93
92
56
55
178
122
169
105
152
58
105
91
92
144
67
122
152
83
123
145
37
92
164
128
151
126
55
146
135
139
110
128
128
103
139
138
110
130
104
111
105
178
58
119
126
67
83
152
91
168
122
100
56
110
145
139
127
79
189
122
144
77
139
164
148
139
103
140
160
139
115
155
127
146
93
144
86
58
104
109
55
178
58
104
101
127
102
92
148
77
125
109
152
138
138
56
69
126
110
92
55
58
110
78
138
37
88
126
56
99
75
37
122
140
99
144
138
122
107
128
111
114
138
56
111
67
102
104
69
122
139
92
142
55
79
139
111
164
110
139
123
145
92
86
130
115
119
75
95
178
56
69
56
67
75
105
55
140
110
118
83
182
123
69
92
101
110
93
91
92
104
58
152
79
92
56
107
122
122
152
99
56
55
105
123
103
92
94
110
55
74
105
117
79
138
92
130
92
92
92
93
110
98
128
122
55
128
135
105
74
127
92
110
58
139
104
104
37
91
177
37
67
165
126
55
98
100
67
138
115
56
56
104
83
180
102
75
93
93
92
139
93
126
79
124
55
146
107
92
178
122
126
99
188
98
146
119
92
146
130
92
67
67
122
128
146
105
126
152
92
105
115
169
110
122
137
105
104
58
110
56
144
105
126
84
55
138
74
127
98
146
129
122
128
128
146
97
78
92
138
146
123
130
104
68
58
79
96
137
67
75
127
100
110
105
92
104
67
122
109
92
139
112
121
106
122
111
127
105
103
146
104
97
138
109
79
103
142
139
105
128
111
128
68
92
55
92
110
101
93
128
114
98
105
56
152
55
104
97
93
122
104
92
156
122
126
105
55
67
110
84
86
92
110
111
160
104
92
99
92
95
178
120
111
178
55
92
92
56
86
144
92
37
131
126
37
58
110
119
88
105
55
144
110
55
67
126
67
178
178
74
58
111
103
110
92
86
141
55
144
122
69
112
37
92
58
67
145
138
122
55
126
109
100
110
152
83
130
138
69
92
56
135
144
136
140
37
93
97
77
135
128
105
125
56
67
89
146
56
144
110
178
104
86
69
93
69
122
58
105
92
37
107
103
56
93
110
148
126
89
91
93
79
92
103
124
121
105
146
126
110
113
77
97
139
126
93
67
92
84
171
92
67
56
58
101
56
134
99
55
169
92
69
100
130
112
87
135
67
37
107
109
148
152
92
122
126
100
122
67
37
93
118
146
139
67
110
104
105
138
105
92
58
107
123
104
137
126
98
96
139
92
128
144
139
77
92
148
132
138
101
93
182
55
114
134
122
105
67
77
158
92
55
163
122
127
119
139
126
139
144
139
126
126
67
123
139
55
92
109
95
127
99
152
74
139
55
104
138
126
93
55
137
55
126
122
92
69
104
91
182
139
93
69
110
77
85
67
69
92
122
144
79
92
136
55
163
55
128
110
138
128
91
110
78
119
77
112
95
127
106
37
118
114
92
163
93
80
139
68
37
72
138
55
93
123
79
67
61
92
75
146
128
67
67
79
104
105
138
144
58
132
130
79
105
87
56
169
110
122
110
74
138
91
92
111
117
69
122
55
160
97
56
126
56
126
93
109
77
112
130
55
58
56
105
105
99
55
102
178
146
130
86
81
67
105
120
105
105
144
110
69
107
131
55
94
79
126
111
122
122
58
152
67
146
101
84
128
117
105
92
92
192
110
107
107
136
127
37
92
134
80
86
127
129
55
110
92
93
113
178
56
180
100
104
95
137
37
55
83
119
126
145
92
83
99
92
128
126
128
169
122
104
92
119
112
104
131
112
141
92
104
103
117
126
146
137
110
105
138
123
104
126
58
110
55
92
68
104
122
136
37
88
74
123
110
165
178
104
67
126
92
128
163
97
92
86
92
92
119
86
142
104
105
104
79
122
117
120
122
148
69
91
145
79
144
95
122
104
124
111
77
140
130
139
142
92
110
130
97
93
111
122
102
58
105
73
138
55
178
89
168
37
95
105
86
105
128
114
105
72
146
79
111
74
93
178
103
178
135
110
165
178
67
37
58
55
117
110
74
92
55
107
178
67
181
92
122
58
69
67
126
145
92
92
67
101
106
69
115
92
56
104
105
169
138
110
109
138
138
110
56
127
126
77
152
178
138
130
88
67
139
111
56
58
144
171
69
144
57
58
105
111
67
55
152
128
122
91
92
105
111
69
95
139
69
111
112
69
100
110
56
56
178
110
127
92
134
104
104
58
130
139
158
111
126
144
75
56
102
37
99
115
119
104
93
69
126
68
91
128
58
55
79
92
111
138
104
178
130
146
77
37
92
55
110
105
122
120
112
110
110
140
152
104
120
122
109
77
119
126
58
122
140
140
67
128
112
178
122
86
152
139
67
93
125
169
58
56
95
106
93
110
146
152
146
181
178
67
88
56
109
55
83
128
167
151
121
138
109
140
126
74
67
152
92
128
158
188
92
123
124
106
92
75
164
74
151
93
122
67
163
105
75
138
169
120
92
110
119
138
96
55
93
144
122
105
92
132
140
135
67
92
107
110
123
144
109
95
122
122
86
141
139
152
126
105
105
75
92
130
119
126
99
124
128
134
126
68
104
122
93
95
126
128
67
69
88
92
56
105
103
86
105
177
93
92
158
86
83
110
93
77
105
84
122
58
111
77
140
122
126
144
85
138
144
58
79
127
92
138
126
74
126
114
75
139
55
105
127
144
138
58
56
91
91
110
92
92
105
121
109
139
146
126
127
74
152
136
93
127
130
86
127
139
139
119
110
109
92
55
114
134
139
105
98
178
58
64
110
138
99
107
127
171
119
178
135
99
56
77
197
98
139
55
104
158
56
105
139
130
92
83
56
111
152
37
100
178
105
56
111
77
139
105
92
55
152
163
107
127
75
104
122
178
92
149
163
67
109
113
37
104
139
104
146
94
56
128
128
104
67
122
104
55
144
92
91
67
171
144
97
55
93
55
75
101
138
128
86
56
83
92
88
93
168
77
67
96
93
122
105
92
75
136
144
110
107
109
138
122
83
127
128
41
148
109
132
110
114
134
110
104
56
122
138
138
55
99
97
58
111
93
103
145
122
137
146
56
104
148
37
122
126
93
55
109
128
55
106
110
137
104
138
165
67
139
55
92
104
102
179
79
83
89
127
127
92
103
152
91
79
126
123
146
103
58
55
118
141
103
112
126
75
104
67
93
110
144
114
110
92
146
148
58
138
67
110
89
144
122
138
122
158
115
164
105
106
152
115
83
37
139
84
104
122
110
105
111
92
126
92
169
146
105
55
37
128
110
107
105
55
117
93
93
145
122
139
136
132
78
55
99
127
122
55
104
56
92
178
105
79
126
86
105
55
138
68
93
114
120
92
110
74
126
127
79
128
69
97
55
75
37
138
91
105
140
105
58
56
91
126
178
79
55
99
126
92
56
91
119
110
56
55
91
144
144
104
138
144
110
55
139
112
136
77
165
94
109
99
55
119
92
126
89
77
140
122
148
92
122
152
105
55
55
58
92
84
117
74
129
152
55
171
110
79
81
117
169
139
92
77
127
178
139
124
99
149
37
75
126
111
127
150
127
99
110
110
92
91
105
80
152
165
92
69
171
152
134
139
126
138
67
81
112
58
105
104
69
93
92
126
169
55
126
144
72
86
92
58
55
110
178
106
127
93
150
132
104
110
55
122
123
139
104
169
93
144
152
139
126
93
104
92
134
92
55
92
83
56
55
83
99
126
104
126
168
121
37
95
152
67
178
122
107
138
69
131
105
169
135
56
107
135
69
92
78
152
81
105
139
37
115
55
87
110
37
92
163
92
56
86
138
164
56
110
125
67
152
163
124
144
99
103
86
104
67
112
69
112
79
99
84
55
55
109
140
103
97
55
104
178
119
163
86
110
67
105
111
55
92
105
112
122
199
148
144
92
58
119
69
77
105
55
91
99
107
100
110
128
123
117
84
140
95
169
127
119
67
81
67
103
131
122
79
77
126
139
119
138
144
93
162
169
67
126
79
98
152
105
104
91
168
122
130
138
127
89
132
86
116
138
79
140
123
140
92
126
67
69
77
69
140
109
79
103
99
104
104
37
152
86
55
149
121
58
99
138
58
67
126
110
93
168
169
125
98
110
37
106
107
137
67
93
86
137
138
138
126
78
139
110
140
104
122
75
92
102
37
122
101
92
146
55
109
91
136
92
122
98
105
126
86
55
124
111
93
92
152
92
136
105
158
101
107
97
93
123
139
99
103
99
126
107
122
178
75
158
77
69
91
104
79
37
72
123
136
103
84
77
103
92
146
92
104
100
83
99
178
122
92
178
118
75
97
139
77
122
56
112
117
144
126
92
136
92
112
69
93
126
136
58
110
139
102
132
164
111
37
93
86
144
68
58
80
119
127
110
103
180
103
140
111
126
122
56
84
103
105
93
180
94
58
69
110
104
99
87
55
110
67
122
137
105
93
138
144
114
101
55
93
114
112
72
105
95
158
68
69
83
125
130
89
111
126
92
139
55
55
98
86
168
136
127
178
178
86
138
105
139
148
134
97
106
105
110
68
178
134
104
104
79
138
104
101
127
92
92
140
92
56
68
67
127
105
108
124
128
74
37
126
99
86
37
122
105
108
132
67
69
58
92
139
104
122
55
123
104
110
37
110
126
77
75
178
130
58
104
126
86
138
106
128
68
92
139
102
93
104
138
92
55
107
92
56
93
92
37
67
169
115
144
103
169
67
92
92
105
37
138
56
69
103
92
180
140
93
105
92
88
103
99
79
110
130
119
56
138
144
168
69
86
180
118
97
103
104
103
91
124
69
169
105
140
92
113
69
139
93
126
112
139
56
109
100
55
105
129
93
105
110
92
86
75
58
117
146
137
135
126
110
77
178
180
148
171
138
139
128
78
132
55
130
110
55
92
169
67
83
117
55
83
160
75
126
110
107
138
79
109
86
55
178
79
77
55
126
109
69
55
107
58
105
99
139
77
93
119
122
101
141
171
149
110
103
75
158
56
144
79
146
119
67
128
146
134
92
136
104
130
122
110
160
69
93
134
169
124
56
55
69
93
119
127
37
130
111
79
137
75
138
56
122
104
171
126
91
163
188
118
105
125
111
119
67
127
78
124
55
74
56
110
171
56
37
88
120
109
89
104
122
56
109
105
178
56
75
74
92
178
119
86
56
109
110
79
178
105
74
114
79
117
105
104
102
101
123
146
92
110
168
138
92
74
110
55
102
92
122
56
146
80
55
121
37
161
110
67
144
58
69
110
37
152
152
105
148
67
56
146
92
92
86
105
103
152
178
178
93
99
93
126
37
67
148
126
104
127
140
85
122
91
109
168
139
110
67
74
110
67
123
110
93
55
67
146
107
100
55
140
129
126
107
138
165
152
67
56
157
37
103
105
91
147
92
104
119
104
102
74
139
104
128
55
168
126
100
128
94
104
126
122
139
98
178
104
92
110
105
103
105
110
140
92
131
147
152
138
83
92
169
89
103
92
178
58
167
110
110
126
121
117
109
69
92
105
104
91
119
103
119
69
122
99
178
126
123
130
75
104
126
144
137
144
99
105
128
92
55
104
77
104
122
124
105
93
92
67
105
99
104
92
104
55
128
159
169
126
154
55
55
79
126
104
134
152
67
138
163
92
93
100
127
138
134
119
93
92
134
141
109
83
77
107
171
93
69
111
122
93
142
111
137
104
110
127
169
79
83
130
138
146
58
114
110
92
55
55
100
127
99
180
117
169
109
55
67
58
107
111
92
58
117
119
55
110
138
91
93
55
104
56
86
110
114
106
79
92
55
129
93
67
56
110
99
126
92
110
99
110
178
92
92
37
126
178
37
77
146
89
67
128
55
91
55
128
123
160
122
93
105
69
124
116
178
126
126
67
74
95
112
101
107
103
138
152
58
111
169
128
126
100
139
127
91
92
171
104
139
105
79
127
122
103
72
91
123
142
94
88
92
111
95
119
79
68
144
58
93
67
115
144
77
105
131
83
97
107
130
105
105
126
152
111
93
69
139
179
102
86
139
92
58
178
67
55
86
58
56
119
91
55
111
144
158
58
74
92
109
104
91
122
86
55
97
169
178
134
106
112
86
37
126
110
142
58
92
56
131
110
122
120
124
55
92
74
56
137
119
92
91
92
77
91
105
122
169
112
55
67
83
93
137
109
122
178
108
126
131
119
126
111
122
97
92
93
92
67
67
182
106
138
74
37
124
178
171
134
93
148
171
122
93
92
178
119
74
126
169
140
109
68
178
55
138
92
110
127
67
126
56
92
126
56
92
136
124
58
67
92
124
97
126
177
95
171
86
79
105
140
144
169
56
91
97
126
180
55
123
110
58
123
92
119
104
56
138
89
102
73
55
88
92
110
91
58
131
110
139
99
92
122
67
126
102
58
126
140
37
130
160
144
111
128
92
104
138
122
55
124
75
110
93
106
105
138
102
91
84
109
110
138
92
112
37
168
144
138
83
137
69
178
126
92
122
100
149
109
104
110
92
91
107
110
77
98
127
131
158
55
168
146
112
126
120
144
97
92
104
140
110
140
95
55
110
83
55
107
79
136
122
119
127
58
104
178
111
55
97
56
97
138
92
128
104
109
55
101
99
129
99
69
127
139
132
92
124
112
126
158
128
69
58
144
58
126
145
92
100
157
104
58
105
92
110
146
74
105
140
67
105
152
92
56
126
126
56
163
134
98
126
92
109
91
122
188
105
75
93
127
164
69
139
99
158
128
105
67
124
121
81
105
109
58
128
86
92
110
120
152
93
120
128
92
99
127
111
111
83
146
104
101
93
139
105
104
56
167
128
110
105
87
119
77
125
122
178
122
93
106
67
110
105
178
55
120
104
75
144
109
126
139
74
121
91
138
128
138
123
67
119
126
128
156
56
109
68
140
97
88
58
104
129
152
145
128
136
92
91
103
117
144
146
140
74
108
91
119
37
123
72
105
97
117
152
171
138
145
138
61
91
126
74
93
124
74
138
137
152
104
92
110
99
55
78
147
138
69
128
79
107
112
55
67
138
56
104
111
126
132
86
169
110
110
92
151
105
178
56
128
104
110
92
93
58
105
130
126
144
123
144
106
92
55
111
137
109
104
122
122
110
55
92
102
128
97
77
75
119
122
122
126
55
92
128
127
148
107
58
108
104
110
103
122
93
144
110
111
93
126
122
56
97
136
126
109
104
119
37
55
109
105
188
104
56
126
55
37
125
128
67
98
164
55
37
178
132
92
122
126
67
120
69
168
146
110
110
128
92
107
55
114
55
122
178
146
119
167
139
146
92
75
146
111
169
138
117
92
136
123
110
119
130
58
124
178
105
126
138
105
79
75
93
56
109
92
110
197
162
55
141
125
119
119
123
69
135
79
152
92
67
41
81
119
92
92
136
93
126
92
128
100
86
110
101
114
56
110
104
56
92
131
92
110
168
92
138
84
55
140
37
141
84
123
91
128
169
92
106
103
77
91
67
75
67
152
100
129
68
139
97
144
84
104
99
69
102
145
110
138
93
146
110
104
112
91
74
92
128
138
114
122
92
93
138
55
86
122
56
110
168
124
86
55
132
56
58
131
105
114
55
152
138
169
67
142
110
178
122
146
104
37
56
81
37
137
146
79
105
92
87
145
56
93
80
110
152
125
152
122
93
127
144
58
111
92
119
86
169
123
120
108
83
88
79
128
106
114
79
138
68
139
92
69
56
92
110
102
123
110
122
37
67
146
84
93
127
146
140
77
179
37
55
86
138
67
86
117
81
139
139
139
119
97
122
92
55
55
104
102
178
93
55
111
158
55
92
83
127
146
91
178
122
163
164
77
84
93
134
92
79
110
126
126
105
92
105
168
109
68
75
55
84
92
92
92
93
69
148
146
150
55
134
92
67
110
144
99
128
58
105
79
83
123
149
74
152
102
107
110
92
146
74
55
169
110
144
104
138
55
56
137
79
55
111
105
67
144
138
139
122
144
103
131
144
122
104
127
105
169
74
122
110
142
92
122
55
106
67
110
148
110
101
131
93
152
126
144
178
140
98
137
77
168
92
77
104
123
110
126
152
92
178
104
110
92
122
105
104
105
119
67
126
128
110
130
124
163
55
124
92
56
128
138
93
37
130
56
126
152
110
99
74
37
107
165
103
107
146
55
93
199
67
123
92
107
122
69
123
55
55
92
100
92
67
72
104
169
164
91
67
105
58
58
127
93
163
124
67
144
55
80
148
95
105
140
122
74
118
69
74
86
75
139
58
122
83
92
127
139
99
79
89
101
144
101
67
110
138
91
138
93
103
112
99
93
128
146
101
144
69
67
56
114
56
88
110
79
122
115
105
92
110
58
107
92
81
117
92
92
55
91
152
104
148
123
77
138
76
110
128
178
58
75
138
105
127
126
93
86
101
126
140
104
178
37
91
92
93
93
165
55
110
93
111
140
74
110
68
122
105
107
92
105
148
84
67
37
97
84
92
122
122
146
58
111
123
37
105
122
144
93
74
160
139
126
92
92
55
105
92
163
105
169
119
139
77
110
92
128
111
98
105
130
56
124
126
149
109
75
158
55
89
67
137
107
122
124
126
111
178
139
140
158
103
197
138
178
55
103
105
105
88
104
152
163
69
89
103
163
152
111
139
86
144
58
92
79
67
100
92
104
99
118
98
92
56
137
171
55
105
115
93
118
107
93
105
128
139
178
92
92
67
128
92
92
105
110
92
95
126
178
178
138
91
58
102
98
67
129
144
105
69
101
139
105
146
123
55
171
56
56
37
79
171
122
107
100
146
132
122
55
92
122
55
122
55
138
182
93
99
74
104
55
140
56
86
97
105
104
92
58
165
126
127
55
106
69
79
69
83
126
88
138
92
92
119
122
103
92
110
105
67
93
126
68
93
138
77
105
105
56
178
55
146
99
105
171
86
139
110
123
148
110
153
104
178
147
145
119
93
55
127
108
92
67
92
103
92
55
56
144
112
92
128
144
58
110
105
92
37
103
79
104
180
122
128
105
56
99
138
69
115
102
122
178
160
105
140
144
104
104
119
136
110
75
127
171
168
123
86
105
152
139
109
118
72
74
77
97
122
100
93
73
122
109
115
114
146
105
122
69
56
87
74
101
92
107
58
93
86
55
105
120
37
93
103
148
67
152
138
55
126
55
84
92
56
109
138
145
75
37
92
138
119
130
68
119
126
128
79
100
86
55
91
126
104
67
55
127
122
163
58
104
138
123
122
127
101
134
68
55
110
58
119
127
86
122
160
37
79
55
169
107
120
37
110
104
111
74
103
114
169
74
37
138
56
58
146
126
58
104
89
37
69
178
92
169
55
105
128
118
110
139
144
163
126
123
169
67
83
86
105
92
89
110
169
77
92
124
152
111
93
122
109
104
104
128
74
171
93
56
58
111
37
110
56
105
56
119
104
110
144
138
139
55
55
134
103
127
105
105
131
146
126
104
161
92
105
105
127
110
93
107
93
122
84
109
58
148
135
93
110
138
58
110
144
95
104
126
67
67
104
180
111
79
178
106
122
77
92
97
123
162
56
105
69
127
122
93
99
144
119
128
109
111
105
56
67
125
75
67
104
55
129
123
105
74
69
107
126
92
138
81
144
104
67
135
113
110
83
92
105
55
97
146
67
67
165
126
123
104
111
92
77
139
56
126
93
110
37
104
74
55
110
127
123
139
120
118
103
110
74
55
105
56
131
124
138
110
37
97
91
123
122
119
139
37
55
122
68
119
112
37
148
138
105
105
84
168
135
55
105
58
55
126
178
148
93
138
92
67
104
55
152
122
91
122
56
97
105
110
93
93
144
102
103
110
146
124
58
99
93
92
55
122
139
137
92
69
55
110
79
107
148
55
97
94
67
123
68
126
134
138
122
144
55
92
124
127
152
110
97
105
152
126
99
105
105
147
171
100
37
103
146
148
37
123
132
92
79
101
119
77
67
123
37
104
140
144
56
108
122
92
114
92
102
92
122
140
92
93
121
122
118
92
107
98
158
101
111
84
105
117
98
83
79
105
138
56
104
112
107
111
58
122
126
109
138
122
140
37
97
135
126
118
109
140
132
126
178
180
86
89
138
171
146
110
100
149
97
68
97
140
84
37
55
152
138
83
164
105
122
93
92
146
74
138
55
152
98
197
137
92
104
127
118
103
92
140
140
67
105
69
76
146
58
97
138
139
69
110
110
67
69
126
97
126
93
171
105
74
79
138
55
137
181
92
58
92
92
163
138
134
91
55
127
107
92
119
110
56
98
37
138
118
92
95
118
136
55
139
113
92
100
122
79
58
93
127
132
146
74
139
122
92
74
110
122
117
86
138
74
182
105
86
107
92
37
99
69
138
103
148
126
55
114
103
100
109
158
114
158
138
104
146
169
105
105
130
56
132
93
77
92
92
178
168
146
58
139
126
178
109
69
146
131
152
55
139
56
146
112
106
180
75
88
152
122
79
119
107
58
123
67
178
152
67
123
55
95
93
122
139
101
95
58
67
178
93
106
55
152
148
107
138
75
152
69
138
105
56
56
58
124
130
92
93
92
93
103
137
107
146
108
78
104
110
138
127
127
123
110
123
139
103
93
102
168
64
169
130
103
124
107
105
83
178
106
92
126
178
138
97
146
77
127
104
137
96
144
92
105
37
67
126
120
111
104
122
92
178
110
138
129
135
58
122
55
126
80
99
92
110
105
126
119
146
86
138
102
122
107
55
122
122
99
131
146
171
91
69
55
58
64
132
130
146
92
122
105
110
114
113
92
110
37
56
92
136
110
67
109
105
122
67
92
148
56
83
109
69
109
152
55
56
104
92
177
144
105
92
138
139
140
126
169
121
138
138
105
77
178
122
107
37
56
137
74
103
91
92
122
180
122
55
67
107
56
130
169
139
92
127
92
110
56
93
122
160
92
67
125
55
145
105
131
112
119
75
37
69
101
91
122
122
132
77
67
138
94
148
55
101
111
75
139
69
110
119
122
124
79
162
55
122
132
128
56
152
122
55
126
146
136
135
97
122
142
122
144
92
145
107
113
122
123
178
77
83
58
115
56
139
127
169
110
130
107
122
138
169
128
149
126
92
148
126
93
128
88
77
138
122
117
118
111
77
37
138
56
126
138
110
100
165
128
55
91
110
104
105
127
110
139
178
56
111
105
180
105
105
107
104
55
138
79
151
55
126
102
126
126
163
105
56
110
110
91
126
105
135
83
144
138
87
144
92
67
126
122
110
105
92
79
122
120
92
126
127
139
122
126
92
67
88
109
119
165
93
55
178
93
111
102
55
92
126
99
78
101
67
56
110
37
138
92
178
92
67
123
92
152
37
127
58
119
162
86
128
127
55
105
105
138
92
105
122
75
55
138
56
152
120
150
122
164
152
93
58
169
69
56
97
138
130
91
100
67
105
122
91
123
99
58
132
74
105
92
92
110
55
127
126
92
92
78
55
69
144
139
58
99
56
122
77
118
92
111
126
95
99
169
121
169
178
138
126
122
109
109
68
152
178
102
102
119
97
110
164
105
146
92
162
58
102
122
55
105
105
138
132
92
55
142
117
104
139
86
110
139
89
110
138
93
119
128
130
95
111
85
37
58
79
92
139
146
168
152
99
127
77
79
188
130
86
128
56
103
140
99
75
130
103
98
105
55
92
89
92
108
55
140
109
88
101
56
149
144
79
87
178
110
123
134
93
144
131
140
56
74
152
55
91
98
114
122
77
110
110
55
92
132
126
67
55
152
93
75
135
104
162
139
55
93
136
140
56
92
145
110
144
119
67
86
112
105
115
86
93
74
37
104
138
152
106
117
103
138
124
125
91
107
122
101
110
119
126
74
168
69
117
92
171
112
127
67
138
119
55
138
67
155
158
138
120
105
75
122
92
56
37
74
123
138
37
69
98
105
144
92
119
67
86
178
178
107
126
104
122
79
169
92
122
99
144
69
107
122
103
118
55
138
58
93
91
123
178
92
114
122
93
106
140
128
94
114
69
103
138
165
55
110
105
92
117
83
117
68
92
118
168
144
114
75
56
67
107
103
107
126
98
114
56
139
93
83
89
74
119
178
103
128
111
86
122
92
110
91
117
67
139
105
140
144
126
67
110
126
139
55
92
58
128
138
69
144
83
76
127
163
106
138
164
101
83
85
144
73
74
122
125
178
120
79
92
55
55
138
91
105
56
104
79
79
92
67
56
122
138
137
104
122
79
58
110
119
142
138
124
58
107
97
152
110
67
126
109
55
103
86
105
92
37
145
92
55
109
92
67
126
127
105
128
122
67
152
122
56
98
37
106
103
86
91
114
110
134
99
105
95
138
92
105
104
124
142
118
69
110
67
107
105
134
152
105
86
139
114
113
79
127
162
86
56
158
108
129
67
110
91
105
126
37
92
92
152
101
139
55
138
144
55
103
158
117
122
144
75
124
138
93
127
138
160
128
56
138
123
106
119
98
124
92
128
93
99
122
139
120
134
55
127
124
86
148
163
144
55
123
86
110
138
145
58
105
122
138
125
122
55
138
171
119
111
92
97
84
77
178
158
92
152
67
141
182
123
55
128
169
146
96
77
146
55
86
136
92
91
55
126
75
115
123
37
110
110
107
141
146
55
178
138
132
125
55
138
156
127
103
144
131
93
83
105
67
123
55
61
128
109
122
56
127
152
122
128
99
55
58
88
105
125
123
55
69
125
55
123
134
97
93
75
136
178
92
55
69
103
79
55
92
123
124
83
55
104
127
180
83
97
104
56
123
56
56
75
138
145
105
137
103
67
124
116
122
101
121
105
99
92
55
104
119
75
111
132
104
130
146
58
55
138
56
115
73
58
126
126
124
144
56
138
92
91
55
109
78
126
93
144
123
134
56
122
86
110
97
149
56
119
92
126
100
55
67
124
129
152
93
128
105
126
134
93
69
127
75
131
114
72
92
105
105
55
106
104
55
58
37
55
126
73
77
105
140
109
158
140
120
71
110
178
140
92
108
55
69
83
180
69
105
139
91
103
127
139
126
69
95
110
58
114
104
101
92
146
92
122
55
84
67
163
111
99
79
56
69
104
79
101
122
108
102
140
92
134
111
98
107
105
146
87
144
122
37
104
92
55
135
110
128
142
67
55
108
188
178
111
130
92
128
104
97
91
122
56
169
67
123
55
126
91
91
126
93
119
77
105
92
110
55
126
37
55
111
74
128
55
111
88
109
67
83
37
110
134
67
55
127
128
130
55
67
120
104
168
55
92
122
77
83
77
92
110
91
122
122
101
93
126
115
126
110
182
81
146
67
136
178
117
106
77
93
93
106
84
55
115
55
180
105
119
105
69
139
107
144
158
123
105
126
119
56
104
122
130
169
126
122
55
168
165
110
92
138
117
94
128
110
75
88
138
92
122
92
108
139
146
72
93
93
139
79
156
182
123
124
115
75
92
122
152
147
178
55
67
138
127
138
139
134
119
178
135
138
67
67
55
92
91
110
92
92
96
132
110
67
107
75
56
77
55
164
124
89
104
105
105
37
133
127
163
101
110
56
188
55
55
122
126
123
103
67
103
58
101
122
104
131
110
110
105
110
55
69
55
126
139
67
123
67
110
178
37
126
105
67
128
105
128
131
86
91
108
67
105
122
77
93
110
137
110
169
122
178
151
155
117
103
56
127
152
123
123
135
131
118
79
56
92
106
110
124
93
55
146
91
101
69
75
107
93
178
88
139
117
67
74
67
119
112
113
119
56
126
153
119
92
110
103
68
107
126
169
128
67
110
122
77
146
93
140
67
58
92
109
178
56
124
152
109
110
92
111
138
92
178
80
144
120
165
111
99
68
134
93
127
125
93
146
55
69
98
91
144
119
105
139
123
109
140
105
67
110
122
146
105
126
92
124
126
37
55
126
109
56
127
67
79
68
92
92
92
140
128
97
137
55
158
109
127
126
134
126
92
86
152
124
68
122
138
126
112
93
127
103
92
138
104
138
92
126
178
110
103
138
55
100
69
98
146
56
93
91
162
139
89
140
56
162
99
105
74
69
127
102
111
132
104
122
67
67
124
122
144
146
122
126
95
123
56
126
104
92
122
144
122
67
138
67
139
69
121
93
152
162
110
139
84
122
171
105
121
107
164
144
139
142
104
141
119
128
144
111
122
110
138
131
37
91
104
56
75
123
86
104
152
122
146
58
178
127
132
122
92
122
128
37
103
122
37
125
37
147
132
98
97
69
58
139
140
140
92
75
126
158
67
98
74
77
37
107
126
92
92
130
114
106
119
120
105
55
56
103
104
120
67
86
55
104
69
92
92
144
55
56
67
110
115
118
122
56
114
100
92
100
169
92
148
126
55
129
126
127
69
139
144
118
104
122
110
55
108
105
74
144
110
92
138
110
92
91
131
74
126
67
91
110
146
92
99
121
110
92
123
92
144
92
77
91
79
146
37
167
126
105
67
68
55
124
79
92
134
75
139
69
69
107
55
178
158
126
146
171
109
138
146
111
140
105
58
135
139
121
92
99
74
105
93
112
91
93
104
94
137
164
93
110
56
79
140
91
137
152
139
67
109
91
79
123
92
137
37
126
67
55
58
146
105
93
79
109
37
146
115
101
92
80
69
95
144
139
118
56
55
67
92
124
64
92
69
126
122
104
140
92
79
110
108
55
67
134
104
119
122
124
110
180
126
119
77
110
138
178
111
103
104
109
69
169
105
146
92
138
97
119
55
180
69
100
93
126
135
93
130
55
178
107
120
112
139
127
92
131
67
79
55
167
119
100
104
105
127
139
56
92
56
117
139
126
92
122
122
126
67
103
110
58
125
74
171
146
86
127
101
126
100
164
79
102
122
74
169
139
67
88
98
110
140
129
58
178
139
138
110
92
100
123
107
109
86
103
56
188
130
100
104
178
131
178
104
89
55
92
93
72
132
130
144
103
109
67
163
100
152
89
122
169
104
152
107
126
58
91
123
123
94
37
58
110
99
128
56
140
99
77
67
138
112
55
178
99
126
148
37
141
78
89
104
109
105
67
123
67
110
117
122
112
95
55
67
109
108
55
69
104
55
75
122
83
110
101
146
146
56
148
55
123
91
92
77
123
58
104
105
92
132
92
171
138
146
67
37
134
110
55
67
119
92
98
158
92
138
92
91
111
163
110
125
130
55
136
67
144
104
103
164
127
178
91
55
177
98
56
92
86
124
138
79
105
107
55
78
122
105
37
178
74
122
68
104
122
92
169
92
117
127
86
69
122
55
102
178
56
108
69
67
128
67
146
92
105
69
169
91
146
68
55
122
37
107
107
105
140
128
127
110
84
105
138
92
126
182
110
122
144
123
75
126
128
107
37
56
127
77
98
58
138
92
138
138
92
131
93
114
138
132
92
152
181
103
128
138
107
37
126
86
122
138
144
74
111
104
126
55
69
92
67
67
110
84
94
92
75
118
84
146
109
122
109
131
126
119
152
99
137
122
55
109
102
98
109
129
67
178
37
106
77
148
105
58
136
55
97
91
111
126
55
92
169
110
69
139
122
107
122
95
144
93
154
55
92
56
56
55
56
110
126
144
111
93
128
110
69
168
138
137
110
77
67
86
79
93
137
126
122
93
158
102
75
122
106
128
126
105
56
55
144
103
105
88
77
103
138
126
110
107
160
93
37
178
58
110
152
92
69
92
139
128
119
147
92
87
111
127
126
105
178
104
112
123
145
56
67
55
55
79
178
168
118
123
122
103
55
104
105
110
138
92
67
109
122
105
146
55
126
67
168
67
55
134
178
91
128
113
104
37
105
115
104
104
112
139
137
103
92
75
127
126
67
92
79
126
55
92
55
69
69
79
55
105
55
124
55
93
126
138
120
67
134
91
105
83
152
106
104
136
119
138
127
126
67
99
58
104
122
107
37
139
110
120
104
162
55
56
111
111
129
99
98
92
92
158
105
148
110
105
164
74
125
86
122
56
108
69
138
111
92
55
107
104
79
58
136
84
89
93
55
92
110
83
136
126
97
67
127
104
140
74
182
74
105
178
118
146
74
178
119
112
140
83
109
126
77
67
67
110
92
92
126
84
117
180
110
83
89
77
105
169
126
110
105
139
156
105
86
127
104
138
69
55
89
107
152
88
127
169
55
122
126
171
114
110
56
93
178
139
139
91
93
101
138
55
86
55
122
67
74
122
107
122
107
126
110
55
103
67
110
110
169
77
129
140
67
123
83
109
86
110
122
120
138
178
126
92
77
74
128
148
138
92
152
110
104
69
100
127
163
144
130
105
67
168
146
122
138
104
69
160
102
122
91
156
118
144
136
69
104
134
110
93
93
55
105
83
58
105
104
104
75
169
92
92
132
102
109
91
126
148
55
37
199
138
69
138
128
128
56
104
86
111
79
67
37
37
118
126
127
92
93
75
93
105
37
140
74
138
139
178
105
137
86
138
122
92
134
131
93
56
119
110
86
163
105
143
158
114
110
144
81
110
122
126
79
93
135
144
74
69
103
139
92
67
122
144
114
86
67
91
122
77
91
67
110
112
104
127
75
98
104
152
67
91
58
92
126
56
74
128
128
92
67
160
127
103
122
37
55
167
92
127
67
79
58
104
120
95
67
127
93
92
146
138
86
110
123
169
171
137
73
55
99
83
125
75
69
167
128
144
93
138
107
139
104
126
112
92
128
67
146
77
93
103
156
107
126
140
122
55
67
92
56
102
126
126
180
123
101
126
122
56
92
180
144
132
105
67
152
118
55
101
114
105
69
75
96
105
168
79
151
92
139
92
69
169
58
126
93
163
77
152
37
37
111
56
169
107
135
93
178
138
79
99
92
99
109
119
103
138
105
138
67
56
106
58
169
69
58
126
123
67
67
81
95
105
77
104
93
122
137
128
67
93
127
92
69
92
37
110
92
153
126
86
55
167
140
103
110
110
118
99
122
72
86
126
123
77
146
136
139
55
102
132
138
74
152
67
69
138
146
134
101
92
139
152
126
136
56
148
92
92
56
160
140
92
98
104
178
92
37
110
110
152
138
92
67
111
92
99
107
67
121
144
139
168
55
99
126
97
110
110
58
92
37
92
138
74
101
138
111
122
67
110
91
88
111
110
74
105
104
128
75
56
140
107
99
127
92
92
103
92
111
99
128
111
68
119
138
105
178
117
120
137
107
122
114
104
74
55
104
68
123
171
55
58
111
92
56
117
131
189
93
37
69
99
110
110
105
92
139
119
92
148
55
86
126
122
105
148
122
92
103
55
58
111
110
119
178
67
119
126
98
138
109
146
152
86
138
171
140
152
133
109
55
139
58
92
138
144
67
126
109
67
127
92
127
169
105
105
98
69
152
56
178
140
144
171
99
144
139
104
126
91
146
92
117
111
182
55
138
88
95
171
99
168
122
148
100
131
126
55
138
95
137
105
109
126
148
103
139
144
126
58
113
83
67
128
92
67
55
74
126
58
122
56
99
126
89
58
165
93
55
138
56
92
84
122
89
105
92
110
67
128
105
112
92
104
55
134
77
128
104
136
99
67
146
139
101
123
77
99
131
69
109
110
126
111
124
134
109
93
122
93
92
152
92
99
55
83
92
104
92
92
122
92
104
97
100
138
178
86
105
37
92
107
55
121
118
58
146
144
139
110
146
138
92
126
111
69
109
105
144
139
101
92
107
83
77
123
89
138
56
105
178
67
125
169
128
146
67
130
91
130
107
93
126
131
136
92
127
104
101
65
79
67
134
77
131
92
98
126
122
122
55
92
122
67
77
58
93
127
130
55
92
158
93
84
92
92
122
134
114
109
128
93
138
139
99
148
110
67
127
158
105
100
107
99
104
105
171
56
74
126
100
123
110
113
110
69
171
138
55
55
178
139
123
86
138
144
92
55
111
119
126
110
103
126
97
105
114
104
103
134
109
92
104
86
91
105
138
93
67
168
131
144
104
105
126
56
146
125
99
105
79
86
109
152
79
169
69
144
99
139
138
110
124
165
127
111
79
122
104
106
105
140
95
92
110
86
92
144
122
128
139
56
128
138
105
144
152
93
86
92
126
126
122
111
92
104
104
75
120
91
95
93
86
75
163
111
171
67
160
110
127
91
69
110
120
126
126
55
127
146
122
114
55
178
56
77
122
146
111
86
131
58
92
162
92
110
67
107
92
96
104
110
126
138
106
152
104
67
92
135
83
69
104
67
55
105
119
138
138
138
152
122
89
107
120
101
92
93
126
128
92
77
123
110
126
138
98
69
77
67
123
134
91
37
111
92
58
58
139
122
37
69
114
137
144
75
118
55
138
126
104
152
56
93
123
138
89
93
74
56
75
105
146
126
109
55
105
91
68
122
77
162
103
132
178
67
146
132
104
93
55
37
126
67
105
139
118
146
169
58
67
110
55
58
105
81
104
78
146
153
75
56
144
138
105
123
128
84
123
92
93
112
67
139
126
126
127
119
92
122
91
145
135
117
122
149
123
167
128
107
130
146
92
110
77
73
109
140
105
111
144
110
158
55
144
99
92
152
92
123
69
169
169
67
74
126
152
178
92
105
152
56
127
127
110
122
127
92
178
101
92
138
102
37
123
119
111
105
86
108
100
86
126
171
110
67
67
110
178
139
55
109
105
136
178
98
69
105
110
111
152
103
120
123
92
124
110
146
105
97
101
55
139
178
58
178
111
37
122
178
144
107
107
78
110
128
138
104
92
135
122
69
56
122
134
55
103
55
138
126
138
111
168
169
67
41
126
138
117
120
56
93
144
77
92
119
56
178
95
68
104
92
119
178
97
103
55
160
67
132
126
104
92
67
94
138
91
178
92
122
123
134
128
139
92
144
112
105
37
92
74
159
111
123
138
126
158
140
110
91
67
152
105
122
149
134
105
142
92
142
58
138
56
105
77
92
93
146
122
55
67
124
93
128
56
55
104
122
86
83
109
128
111
69
111
134
91
106
152
146
114
144
92
103
119
55
79
55
37
119
67
104
108
112
86
88
99
106
105
55
120
126
110
124
114
171
79
144
67
58
126
101
118
132
56
126
144
150
55
134
92
103
105
139
55
58
69
56
92
56
132
93
110
56
105
162
122
171
86
91
90
158
168
148
114
55
169
100
92
111
144
171
77
110
180
86
92
127
105
55
37
127
55
109
97
107
122
168
146
102
64
56
178
92
37
113
162
138
101
93
79
122
138
58
163
86
98
137
164
199
92
136
134
69
98
81
144
112
107
122
94
122
148
126
95
94
105
55
146
104
56
169
178
106
142
67
92
138
77
140
152
77
110
37
131
122
110
128
79
127
56
122
140
109
69
69
111
106
105
81
37
119
92
140
128
111
126
67
146
93
122
108
105
178
104
128
92
86
123
104
105
37
126
127
119
110
69
100
110
139
106
114
92
122
134
104
146
91
93
119
102
103
139
102
74
131
144
67
93
127
37
56
119
69
110
58
131
110
168
122
126
122
67
77
130
92
119
169
163
164
163
144
138
99
127
178
79
123
146
37
86
37
169
130
113
111
111
55
77
165
130
126
105
138
69
127
132
112
101
178
104
152
105
138
96
110
56
79
104
122
75
110
126
107
92
126
105
122
93
67
56
146
125
69
163
110
126
149
79
99
108
37
126
151
92
107
86
99
124
121
121
126
105
67
105
97
134
92
128
55
126
78
56
87
114
112
92
128
117
136
56
93
102
137
58
140
139
58
132
91
68
93
126
93
104
92
138
56
93
87
138
86
144
78
104
104
110
103
152
89
180
144
55
127
93
110
122
67
93
178
127
110
92
93
104
55
67
138
138
122
92
111
110
92
107
178
58
128
55
105
126
127
123
58
120
56
128
112
56
178
92
104
69
152
130
146
126
122
130
137
92
171
132
119
120
127
99
105
69
121
128
110
145
126
92
67
92
92
84
64
73
101
74
56
122
102
92
127
55
75
98
92
138
139
55
106
138
67
77
91
148
138
139
126
92
104
126
86
77
75
122
92
130
67
104
122
128
115
105
138
122
122
110
138
169
86
92
126
100
93
182
134
67
55
180
140
144
126
81
105
126
126
110
111
123
55
100
144
105
135
111
88
123
110
139
138
79
93
178
107
37
111
124
92
74
67
146
104
111
37
93
142
146
92
110
92
58
168
109
99
67
110
110
79
105
55
129
126
160
67
55
74
112
55
67
97
118
92
108
146
112
92
138
153
68
122
83
79
86
58
122
109
105
122
104
110
77
126
144
55
110
104
74
37
89
180
105
105
67
77
37
144
92
105
102
56
91
89
99
94
55
92
81
91
68
92
148
110
99
79
124
126
97
142
101
126
86
104
141
92
74
110
92
93
104
76
93
92
127
55
107
83
123
110
119
92
122
92
104
56
103
126
37
92
92
131
37
124
144
80
119
101
56
69
55
69
105
97
122
169
144
126
110
104
127
136
95
152
118
92
126
127
152
138
149
123
105
67
92
110
104
69
128
77
79
107
77
92
69
99
55
140
146
146
134
120
92
108
105
148
119
178
139
126
119
107
119
136
75
91
104
110
138
123
98
123
37
92
126
104
93
110
69
105
101
120
92
110
158
138
124
146
110
91
92
128
152
138
58
122
110
119
122
128
103
123
92
128
99
95
140
105
126
168
139
118
109
103
104
167
169
56
73
69
122
126
110
55
55
101
89
168
138
136
105
92
86
105
132
139
86
134
124
128
130
110
138
122
93
99
92
55
92
105
110
106
146
94
178
123
92
138
127
102
92
110
122
114
139
58
92
93
110
103
138
77
134
58
86
67
120
110
105
126
92
146
139
148
55
97
55
126
101
55
112
93
78
56
94
56
146
92
109
134
98
122
109
77
58
55
55
37
67
181
139
92
122
93
107
91
86
162
67
122
56
144
123
92
127
69
188
146
120
92
139
79
97
105
92
105
55
178
119
139
105
93
92
123
56
84
79
67
138
55
109
92
72
78
130
55
111
92
126
105
122
58
148
69
118
126
134
92
163
79
134
86
109
130
178
74
55
75
96
139
74
104
58
128
171
56
108
128
56
37
93
127
138
56
138
104
119
55
169
67
56
56
105
93
56
86
130
75
109
37
93
83
99
86
126
86
94
122
101
132
103
92
105
98
104
99
136
110
114
122
122
78
86
109
139
152
67
122
152
140
144
79
122
79
122
111
86
55
67
105
106
69
123
124
99
130
93
74
127
104
56
126
92
110
117
168
55
91
55
81
69
121
93
124
178
144
113
138
55
138
138
127
122
122
110
122
93
107
109
110
111
138
74
92
139
84
178
98
55
89
89
37
110
55
58
122
92
132
104
105
56
122
67
126
93
124
79
131
55
107
143
148
122
139
111
127
55
128
89
91
138
140
127
116
178
134
84
138
68
67
158
77
138
122
79
135
106
167
107
124
109
171
92
93
122
164
84
84
123
69
98
119
129
122
128
93
97
105
37
105
92
72
104
128
83
67
88
79
55
104
103
64
135
105
128
105
146
92
67
104
119
178
56
126
94
119
122
105
56
104
111
146
67
178
131
117
110
138
111
110
55
74
56
118
79
110
123
139
100
105
124
79
110
178
144
99
126
178
114
139
168
55
109
122
122
55
58
138
99
103
55
139
67
100
78
106
109
106
58
140
37
103
114
55
152
119
92
124
58
180
124
55
56
105
104
138
104
111
124
169
126
107
148
75
56
97
111
106
122
120
104
120
105
182
103
94
69
56
92
55
111
105
104
37
128
146
92
132
110
91
92
88
122
58
92
105
137
144
92
139
92
56
105
92
56
123
67
126
67
117
74
77
126
58
109
110
129
127
122
122
37
111
37
93
92
104
86
134
178
58
92
83
123
58
108
140
105
55
130
119
75
138
163
130
94
67
139
122
92
127
126
139
69
112
139
178
67
113
146
67
58
105
104
103
122
171
111
128
119
92
124
122
123
105
135
67
55
122
92
135
110
79
124
127
58
119
127
146
103
104
112
138
110
55
122
99
102
126
67
78
87
92
92
55
144
105
86
55
103
134
127
76
123
180
56
92
178
87
110
119
55
93
96
91
92
136
88
93
109
78
58
109
77
110
110
139
93
126
58
146
113
126
73
99
77
74
104
117
109
122
109
72
118
138
110
79
86
92
122
93
105
136
100
104
93
106
107
111
152
152
140
137
55
134
84
100
97
64
87
103
144
138
67
122
91
123
134
96
126
56
93
67
138
99
110
92
118
124
69
55
117
92
75
122
55
144
103
145
146
105
139
105
126
75
110
136
93
114
127
139
55
55
124
93
129
152
92
55
37
131
55
122
128
92
158
92
75
83
111
56
69
136
124
104
139
102
139
61
148
75
107
105
37
92
138
104
119
93
147
74
95
105
55
55
93
119
110
135
164
145
158
110
105
126
152
139
93
152
91
104
163
139
120
126
127
104
110
146
134
146
105
156
117
77
67
124
138
136
127
129
165
110
127
75
138
146
55
122
104
93
92
91
179
89
94
114
105
111
114
144
67
68
102
144
67
69
97
138
93
180
132
92
153
55
105
146
101
169
144
114
171
119
139
55
77
110
102
131
110
99
131
56
152
119
93
105
127
79
100
55
55
123
144
77
69
55
103
127
67
199
130
126
89
105
92
139
55
105
122
126
67
162
156
37
140
164
83
104
93
104
105
37
92
122
113
92
86
130
69
122
109
104
106
122
114
129
138
135
119
169
92
122
67
160
164
141
144
37
107
71
122
55
110
137
83
126
55
126
127
84
131
112
129
180
67
127
126
110
134
152
69
91
144
56
116
110
84
84
123
77
105
139
55
126
56
110
103
55
163
109
55
124
101
84
162
124
140
126
37
69
122
92
68
75
126
107
67
102
131
134
105
105
86
92
105
92
144
126
88
135
126
131
138
140
58
111
92
69
93
126
139
104
139
55
92
110
122
92
93
137
126
138
122
37
92
120
93
76
56
138
98
92
64
67
110
93
138
84
37
74
105
92
58
55
107
92
144
178
121
67
77
139
140
132
107
83
92
126
124
124
103
77
105
107
104
75
92
84
67
178
160
128
122
146
123
104
122
105
93
110
55
55
37
86
106
126
79
146
77
79
127
127
104
110
114
102
67
79
123
67
64
139
56
110
77
135
139
58
76
100
55
37
92
92
69
122
95
93
98
107
69
55
127
86
56
55
92
122
130
110
138
122
67
37
67
130
123
37
105
69
168
138
129
119
55
146
110
182
178
105
95
152
104
126
89
92
127
146
122
92
56
120
146
55
127
92
92
122
169
86
122
86
69
122
132
168
110
110
106
122
105
118
104
92
110
100
79
79
92
122
96
92
74
126
168
58
110
74
77
67
58
67
92
93
105
110
105
75
123
37
134
104
105
111
136
110
67
77
105
139
67
104
92
77
55
128
144
55
124
128
110
127
147
148
152
146
146
109
104
119
119
144
56
127
178
165
97
112
56
139
56
138
95
91
98
92
122
123
101
104
111
109
92
89
95
92
92
67
102
131
119
138
67
105
67
92
55
140
119
123
104
56
67
86
129
152
109
55
56
68
67
67
92
93
111
126
37
171
97
124
158
127
107
75
105
142
64
104
56
126
79
128
146
99
100
56
95
88
158
128
74
152
180
129
144
152
138
109
126
124
124
128
148
74
79
56
69
55
93
58
101
139
122
97
127
126
92
120
138
92
92
122
89
74
126
113
103
105
101
92
86
73
145
122
127
91
122
107
103
126
122
92
37
106
130
135
126
58
98
93
122
126
100
93
86
92
92
126
180
103
55
56
103
152
110
117
123
83
55
79
97
92
92
74
69
135
55
169
139
86
104
128
169
92
139
107
152
75
139
119
138
67
86
127
105
131
84
142
139
136
144
92
55
67
144
128
56
126
105
128
58
103
69
119
89
124
192
104
55
163
124
104
178
109
125
104
178
139
110
110
122
105
124
75
140
132
137
93
118
86
144
75
127
92
58
95
92
148
169
104
145
139
86
138
138
131
138
111
126
110
77
123
106
67
131
136
112
92
37
110
92
140
79
92
107
58
110
104
68
97
67
114
109
69
55
109
86
92
128
124
123
105
118
91
69
140
110
107
110
55
130
122
111
146
105
110
127
103
109
138
112
105
144
128
110
169
58
136
178
92
92
122
140
120
37
93
163
150
77
110
169
93
110
140
94
92
123
119
122
122
106
67
110
136
107
67
152
67
131
83
55
67
81
110
136
77
131
86
139
69
104
97
77
109
168
92
86
105
55
105
122
94
91
86
139
74
56
56
92
55
79
138
68
134
105
93
58
119
105
110
74
37
178
124
105
86
109
103
102
140
100
144
128
105
126
134
171
109
169
67
121
119
152
104
110
104
134
105
111
67
113
110
79
92
126
69
152
58
106
138
122
145
171
103
124
104
122
67
77
109
110
97
105
119
144
92
99
94
114
56
79
122
91
110
118
122
105
111
132
67
114
91
123
138
104
73
152
79
100
151
140
105
58
104
56
119
97
104
96
67
55
67
95
55
156
122
109
55
103
74
128
105
127
109
83
75
58
74
99
110
37
92
134
92
168
118
123
110
108
111
138
134
132
123
146
86
122
37
110
126
160
79
55
120
87
92
122
119
126
58
99
126
95
131
127
58
138
105
103
120
77
69
77
37
127
111
93
77
83
110
92
122
92
152
92
139
178
146
67
93
144
104
105
123
122
92
55
69
105
55
122
165
127
139
55
119
67
144
178
93
69
110
169
132
144
108
120
126
84
107
110
135
132
105
122
134
138
110
138
138
55
109
105
105
92
92
119
58
99
55
97
112
93
138
139
105
67
111
146
140
171
55
104
123
92
92
91
104
110
130
110
160
117
146
55
79
144
67
55
93
79
55
138
93
86
92
55
105
77
67
84
69
110
110
105
55
97
92
91
110
162
138
69
138
110
99
144
111
126
55
69
96
159
128
69
123
105
37
146
93
112
136
123
92
111
110
152
134
123
103
92
112
138
55
119
125
67
56
75
180
126
55
110
105
91
55
55
119
122
134
103
128
83
171
86
109
105
114
92
110
105
138
109
126
92
55
55
110
152
80
92
139
77
75
122
92
106
97
112
146
97
146
104
79
112
92
122
67
93
119
94
122
37
169
37
171
132
83
110
107
55
120
137
138
107
67
138
96
114
55
160
74
106
126
169
107
134
92
91
140
105
122
126
107
119
104
138
104
139
126
92
142
168
37
163
107
88
93
104
78
122
103
55
132
114
68
104
127
137
129
67
75
69
178
126
111
58
122
130
126
137
110
88
101
135
105
92
79
105
146
140
125
97
107
93
92
146
110
58
37
119
178
122
76
151
178
126
92
77
128
127
124
79
67
138
92
56
140
120
86
134
94
171
86
75
84
67
125
110
139
74
123
163
128
109
67
79
126
122
126
145
146
164
123
148
80
91
127
148
56
77
104
79
55
74
109
56
55
93
101
105
110
103
109
134
168
111
117
104
56
138
158
92
123
148
84
139
165
169
114
158
131
117
122
92
145
119
105
84
144
134
111
169
68
93
134
137
138
86
67
140
138
139
124
138
110
122
117
56
103
171
91
74
93
105
95
80
55
100
81
103
111
75
69
75
178
58
77
108
178
69
126
122
152
97
119
119
55
118
105
178
92
120
58
56
126
67
112
110
158
178
138
88
109
69
132
55
107
126
152
169
55
126
58
126
126
152
128
92
81
178
109
137
110
56
122
93
152
37
55
123
55
122
110
127
119
178
126
92
73
55
126
122
126
151
105
131
56
114
111
58
110
55
122
134
159
56
112
144
110
104
123
126
37
111
55
110
114
79
124
111
119
81
96
104
67
111
92
122
74
135
144
105
148
69
139
144
144
102
160
105
79
93
37
128
138
104
126
122
106
57
105
93
92
67
160
110
132
149
122
56
97
146
126
92
140
56
104
58
111
105
99
103
110
86
67
115
104
58
135
109
79
58
92
67
67
55
145
111
91
134
138
158
69
125
67
127
98
144
103
103
55
92
106
105
55
122
103
122
117
134
104
141
138
92
128
67
102
127
128
123
111
138
105
105
109
152
91
77
114
110
92
69
128
92
75
93
92
56
126
56
108
144
122
148
119
55
110
110
110
93
93
107
120
120
110
55
92
109
110
105
104
137
144
126
139
199
92
67
104
107
92
97
127
106
168
119
127
123
115
142
168
144
119
77
150
139
111
79
100
55
69
99
146
140
138
99
123
122
83
67
86
37
138
167
68
69
92
55
67
105
74
129
118
56
58
69
92
55
139
74
118
110
105
130
110
110
122
146
92
180
91
96
79
119
103
168
109
128
109
158
67
92
86
111
122
122
108
92
127
55
84
139
93
74
92
91
138
117
127
67
92
84
74
92
122
107
102
122
126
105
105
139
128
137
92
139
105
102
152
164
104
68
58
142
178
93
67
67
134
142
86
138
138
92
138
105
168
92
92
139
55
131
104
108
127
74
139
67
105
101
178
126
124
144
164
160
79
93
67
117
123
93
147
98
86
138
110
67
86
126
104
37
153
105
131
98
58
139
123
97
55
163
134
67
92
111
69
83
124
178
122
99
109
138
91
126
192
69
139
58
135
160
55
135
110
138
69
140
75
56
122
104
109
105
132
171
110
111
105
180
75
75
68
110
152
98
83
104
171
105
105
132
55
92
104
98
74
134
105
163
105
103
127
75
92
119
77
76
55
86
105
69
132
138
92
123
122
71
74
124
105
91
127
93
178
110
109
105
171
128
58
105
135
126
56
122
147
168
37
97
171
67
112
148
123
146
92
114
104
69
116
67
75
126
107
112
58
97
37
130
104
77
126
119
127
56
67
95
144
122
107
162
113
122
122
111
92
55
92
120
125
120
122
104
109
144
138
189
67
132
124
139
103
67
126
105
100
126
127
105
92
110
146
146
152
92
100
106
122
79
67
105
138
69
92
135
102
110
55
122
103
120
102
132
110
67
67
119
110
127
88
107
144
138
146
130
68
138
92
144
127
110
122
83
140
67
89
41
118
37
92
78
122
69
162
77
122
56
151
131
91
93
126
103
92
92
92
112
56
105
83
128
92
92
122
142
131
110
110
86
139
110
126
104
105
74
138
101
92
77
140
107
56
69
132
67
122
123
139
58
75
128
79
92
110
105
88
110
74
134
105
98
132
92
132
93
58
105
107
178
67
92
74
106
122
109
128
144
147
93
134
56
104
91
104
99
56
126
55
132
55
110
105
101
178
122
87
110
148
79
138
142
95
156
131
151
107
140
148
77
140
96
122
139
149
109
118
158
91
56
93
129
182
92
56
77
115
105
132
122
140
92
37
178
111
67
148
110
93
37
126
124
67
58
163
56
55
178
102
113
132
81
110
134
120
136
93
109
145
92
110
93
78
99
93
144
56
55
79
55
58
89
110
123
68
105
169
124
93
87
130
138
94
55
93
104
135
67
146
92
92
126
122
88
131
146
152
56
136
150
99
104
169
37
105
104
84
104
109
105
126
107
147
110
105
169
83
167
79
93
158
144
167
100
68
126
55
130
92
126
56
86
74
67
128
37
55
160
74
92
139
91
138
58
91
93
144
67
92
104
110
163
107
132
109
110
69
139
122
122
93
126
91
92
67
92
111
92
124
106
67
104
158
88
105
93
127
122
126
89
162
138
67
138
92
92
56
55
104
110
99
128
98
128
140
37
69
130
111
125
136
81
67
58
124
55
58
69
149
58
58
105
114
128
37
56
110
67
107
146
55
127
92
69
55
139
112
165
58
110
122
109
56
123
178
92
125
139
138
92
118
178
37
126
92
104
146
92
136
122
104
101
55
111
37
86
112
104
110
138
178
126
104
91
69
107
165
110
122
55
111
112
128
127
55
110
139
111
92
37
148
139
93
104
112
84
37
139
152
178
151
69
75
151
126
123
117
67
109
104
138
95
122
86
84
86
111
178
122
104
105
124
139
69
89
58
55
92
120
92
105
89
97
97
104
37
122
58
109
122
107
188
58
110
102
149
55
104
86
144
93
67
58
120
122
122
92
92
123
105
92
56
134
131
107
86
132
120
160
127
123
107
74
112
130
126
101
86
68
110
158
58
152
93
127
104
95
138
37
105
144
103
105
163
146
131
56
139
91
127
67
110
178
197
119
105
119
88
102
126
127
55
92
144
92
68
75
139
132
93
109
92
55
101
92
123
67
89
67
105
127
111
158
122
100
120
58
134
93
110
169
139
126
37
86
139
67
146
178
109
114
145
111
180
91
146
141
126
123
130
99
99
102
146
105
128
58
92
58
80
169
139
119
138
138
126
93
37
55
67
122
139
138
110
136
92
151
126
103
84
144
75
110
126
91
127
93
151
86
103
92
55
131
127
114
130
121
177
99
138
77
77
55
37
146
84
92
146
79
123
91
98
86
93
37
123
92
126
138
92
55
126
92
56
169
99
140
119
66
112
93
37
110
99
77
138
74
55
105
163
97
110
92
110
134
104
134
105
105
126
144
111
126
110
111
189
132
91
91
139
122
119
178
139
56
69
84
110
105
136
156
171
160
140
55
55
147
77
84
105
139
178
114
104
98
124
122
92
122
92
136
56
117
131
74
69
86
132
156
58
55
169
77
105
138
37
109
77
122
139
79
79
126
56
110
79
108
129
67
126
55
105
92
123
118
107
110
69
106
127
135
37
178
105
75
146
138
55
139
58
92
146
122
109
178
140
91
93
67
118
92
105
56
122
117
56
109
92
122
76
139
103
110
91
129
139
119
137
108
78
112
168
128
55
83
81
117
160
123
55
92
138
123
104
164
67
111
77
55
68
105
109
126
86
105
102
111
127
127
162
126
86
105
112
171
105
93
104
114
67
113
139
179
55
178
110
144
104
122
55
135
168
123
167
55
91
93
169
126
158
122
107
95
92
92
145
109
111
99
122
105
100
103
37
146
122
92
104
122
142
104
74
132
109
37
122
69
99
91
92
104
113
138
37
55
126
178
98
58
86
55
92
104
113
37
140
56
120
169
55
97
119
92
122
140
92
152
93
152
148
93
134
97
139
68
126
109
56
92
103
77
158
104
127
110
69
119
91
55
86
138
86
77
56
74
69
134
126
160
105
56
122
126
105
180
102
199
120
110
68
158
160
127
122
120
110
79
105
165
111
134
110
75
178
105
110
120
126
124
139
123
83
55
178
105
122
58
67
126
56
92
134
145
93
132
100
127
58
100
56
58
74
99
124
56
135
168
58
55
68
77
178
110
199
154
92
55
122
134
83
77
139
37
74
91
138
83
119
110
86
104
122
103
123
69
126
119
106
124
111
67
126
127
138
160
127
131
87
192
126
104
113
105
55
111
138
140
92
178
178
104
138
69
93
104
87
92
55
104
92
67
79
58
105
130
128
92
101
178
92
131
122
127
127
126
76
55
110
101
55
92
99
105
138
122
67
109
79
104
110
67
122
130
37
55
128
126
114
67
110
138
126
178
128
122
128
105
169
55
137
110
152
101
56
127
178
140
126
171
92
138
79
99
141
81
119
55
56
86
68
122
160
67
56
110
146
55
110
93
128
91
105
160
92
115
110
124
122
118
105
91
144
67
146
58
138
104
130
55
99
122
67
138
109
103
105
111
152
69
57
67
58
130
110
55
69
135
139
77
158
74
55
119
122
105
110
126
104
109
152
141
119
55
112
131
127
127
105
135
105
131
74
55
96
56
86
168
98
105
67
138
67
114
110
83
99
75
83
92
122
83
86
105
55
168
127
101
126
67
150
104
99
110
138
111
109
107
144
58
130
103
93
55
100
110
127
138
91
126
79
140
152
122
37
105
105
105
128
122
110
109
128
110
115
128
89
67
56
91
99
122
67
180
121
69
109
110
37
67
55
58
122
132
103
178
131
131
138
56
75
67
121
69
144
127
93
79
138
56
178
58
122
98
92
55
55
75
75
92
109
147
99
119
104
55
171
123
79
130
55
122
145
138
92
58
104
92
119
67
93
134
93
110
105
138
58
109
109
92
98
55
92
138
92
117
79
111
104
118
93
83
114
105
83
99
139
110
93
92
88
67
104
105
107
99
110
88
67
135
138
105
105
86
124
144
105
69
58
119
110
56
122
167
140
122
126
139
55
107
123
105
86
104
55
144
104
135
105
79
138
93
110
140
122
122
91
126
69
79
148
126
123
111
107
37
126
92
58
123
84
93
69
97
37
67
126
171
102
75
178
131
111
55
37
56
146
138
105
92
55
122
55
107
55
97
95
178
99
114
178
126
109
55
105
79
139
123
152
110
122
122
145
144
112
104
119
37
123
86
55
134
93
98
92
105
112
126
92
124
58
178
55
128
92
86
147
138
55
37
117
104
86
110
120
55
105
104
67
95
99
103
105
67
92
126
93
158
126
109
106
122
157
75
144
109
162
92
37
126
130
169
178
74
91
75
115
169
123
56
105
105
67
110
103
146
132
148
55
171
87
138
119
58
107
120
100
101
103
168
58
129
79
74
110
93
128
146
111
67
89
138
81
169
138
122
110
178
91
69
94
122
104
152
69
58
119
122
123
110
178
119
55
55
105
86
97
138
97
169
158
123
87
105
85
104
102
138
169
58
103
110
138
136
134
91
88
92
93
104
122
103
182
107
69
167
106
144
132
178
134
77
153
122
92
124
122
37
110
58
74
163
105
127
92
109
67
55
137
139
126
75
134
97
122
126
122
93
117
58
98
92
68
110
55
122
178
139
104
119
109
93
178
37
158
152
105
110
138
109
110
126
93
67
98
92
132
67
37
134
119
117
125
110
69
108
130
84
93
160
68
130
86
55
162
127
189
107
127
139
76
100
104
138
124
138
105
127
168
126
67
86
146
127
127
55
153
78
92
86
80
105
140
169
91
101
37
110
55
55
160
141
138
92
55
126
110
122
178
105
105
147
55
110
55
100
110
67
126
195
165
122
119
55
55
122
79
124
134
137
140
55
93
92
109
92
128
119
80
69
105
110
58
55
136
37
101
79
107
55
126
114
132
93
123
112
141
144
122
103
92
106
139
101
120
55
146
148
122
122
93
178
79
37
158
128
55
138
152
139
131
93
110
139
67
56
84
67
110
98
58
138
67
111
86
169
127
95
84
93
77
91
138
87
131
93
75
127
77
101
147
145
92
120
58
105
108
128
58
122
67
67
110
139
103
94
138
69
91
98
55
105
105
104
136
78
100
112
67
114
171
110
55
122
118
178
86
69
169
77
122
107
180
55
110
100
105
67
169
148
178
178
93
122
110
111
104
84
80
140
69
55
128
122
92
107
92
199
67
110
106
56
144
92
75
79
72
69
86
105
139
105
115
178
79
140
98
67
107
101
75
122
144
125
105
171
91
146
74
92
140
107
144
92
58
56
122
100
77
75
160
110
135
110
89
84
126
84
103
93
105
160
109
122
37
144
171
99
37
74
102
55
67
72
37
92
93
55
37
83
79
124
122
86
92
111
37
104
109
92
67
144
145
56
37
103
138
86
67
111
110
169
137
93
104
122
138
144
110
74
109
117
138
126
55
138
69
104
180
92
92
55
55
67
134
58
58
104
78
92
162
92
74
127
105
126
125
127
91
55
69
126
55
168
105
124
92
132
88
104
55
93
84
68
120
134
169
126
119
97
55
109
95
105
58
104
101
107
74
67
122
109
107
146
92
84
74
104
92
67
92
134
55
144
146
74
110
130
79
135
117
127
126
122
103
112
107
162
67
144
110
136
37
56
127
100
74
74
138
123
128
75
147
104
104
127
139
148
100
178
140
127
91
146
104
55
126
158
105
145
86
93
55
111
103
127
138
92
67
77
81
104
152
67
93
92
121
110
163
74
126
92
127
92
112
119
100
37
130
105
81
138
86
97
91
37
89
55
83
79
105
58
58
111
104
87
92
37
55
93
124
104
129
85
104
67
138
142
128
68
122
79
122
127
67
86
138
167
139
104
74
79
92
152
92
105
140
138
104
122
67
69
128
111
139
92
56
67
138
111
92
100
67
88
37
120
105
119
56
105
55
122
127
130
106
55
105
118
55
93
122
103
139
138
126
69
126
146
104
92
138
97
154
136
130
138
104
93
169
134
144
86
139
137
107
140
122
67
97
55
154
92
37
92
169
109
136
102
128
148
98
110
105
56
109
95
92
56
152
67
83
56
93
114
144
122
77
126
58
146
178
111
86
104
122
144
93
122
144
146
122
94
92
104
168
105
91
83
122
93
110
99
101
101
92
122
134
97
58
37
122
55
104
146
56
104
99
69
163
104
67
122
169
56
131
124
105
158
127
171
146
58
120
104
68
105
122
67
103
122
158
152
139
171
75
67
97
56
111
56
76
92
138
86
106
67
69
92
104
104
92
122
55
93
79
148
138
102
58
92
123
152
67
75
165
93
58
98
122
98
112
55
109
178
67
123
67
138
171
110
92
67
117
92
158
89
126
110
152
138
92
86
55
128
37
122
126
37
93
144
91
127
100
92
126
67
67
137
131
126
107
105
56
126
139
138
75
68
137
55
138
55
97
138
148
67
124
55
108
117
122
126
37
128
68
152
164
105
126
91
113
127
139
148
92
171
158
55
122
169
69
114
98
37
86
140
168
119
132
134
93
58
37
56
110
141
93
169
37
92
127
107
178
37
128
105
126
165
112
55
130
92
79
119
127
132
69
122
126
56
104
126
189
134
67
169
37
55
145
131
58
109
89
67
106
114
55
107
56
104
100
93
56
131
75
134
92
126
91
69
103
110
132
122
58
84
55
67
138
92
92
127
152
124
37
126
128
125
127
110
37
67
37
163
83
67
69
67
138
112
93
122
169
134
135
77
68
92
119
100
104
122
178
144
68
124
92
105
135
134
127
93
55
93
92
77
128
99
83
178
105
92
97
122
105
56
141
86
151
92
160
152
86
124
56
102
55
139
67
124
55
138
107
88
67
55
139
83
104
86
169
138
152
135
56
140
131
140
110
77
105
104
126
86
56
127
67
69
103
92
91
138
123
86
92
152
99
86
111
96
139
109
124
124
109
55
67
148
145
127
98
122
58
126
79
105
103
108
144
122
132
77
160
127
56
92
67
104
178
56
148
169
104
122
156
122
111
93
124
84
131
56
138
77
139
144
122
144
148
74
126
88
139
127
83
97
105
103
111
139
111
93
92
69
163
109
92
152
169
89
138
110
146
164
56
148
146
92
97
86
126
119
55
139
152
37
107
138
138
86
144
144
83
91
138
92
148
124
98
55
138
169
92
91
92
152
111
77
103
126
37
55
110
79
122
58
101
75
58
102
58
123
122
78
58
55
67
99
79
99
105
138
149
152
103
95
122
106
93
146
92
126
67
164
92
132
105
55
105
139
109
79
110
92
111
105
67
118
92
144
106
56
122
37
105
105
91
99
77
86
110
80
110
132
130
93
110
105
148
84
112
119
140
99
79
56
118
56
84
37
69
163
135
37
37
199
112
127
126
131
58
92
55
92
92
163
37
92
122
55
61
105
69
69
99
145
104
111
127
92
132
106
147
69
100
108
58
130
129
104
178
138
105
84
92
124
152
79
92
104
115
146
37
92
122
94
98
55
104
99
93
169
111
109
130
77
55
164
69
37
146
74
75
146
67
92
119
132
93
117
110
99
110
104
68
86
92
93
126
58
158
56
117
99
67
152
80
123
158
83
92
122
105
67
110
91
126
131
69
55
86
126
79
104
178
55
140
37
55
144
67
55
92
122
123
126
55
99
99
99
107
86
124
115
68
58
152
69
56
74
134
92
144
105
171
125
138
92
55
110
121
152
114
75
168
93
109
104
91
108
110
167
107
79
92
167
126
139
138
122
121
122
127
124
88
114
92
171
56
67
135
122
148
148
179
131
144
122
93
109
126
126
58
119
126
93
75
88
80
77
56
128
132
178
135
134
113
132
84
144
120
143
55
189
55
67
125
144
102
92
56
92
93
105
56
75
94
168
105
128
104
69
79
55
79
131
132
92
67
93
106
103
144
86
127
98
144
55
104
88
120
106
104
105
67
37
169
81
140
75
75
111
131
124
92
105
105
122
109
127
37
55
134
69
99
83
104
98
75
93
128
152
120
55
110
171
142
74
123
127
93
104
122
148
67
104
92
74
84
146
110
100
69
104
132
56
69
122
110
75
122
67
86
93
110
67
110
139
93
144
106
169
92
92
58
136
77
146
120
110
105
105
92
58
178
56
109
140
171
123
122
100
122
111
55
55
69
107
139
132
95
86
55
92
77
138
93
124
111
93
104
111
77
55
128
93
86
167
103
79
104
105
84
106
138
138
105
105
146
127
55
92
37
148
56
75
102
189
94
92
126
126
127
104
152
127
143
104
97
93
126
115
123
104
122
99
56
104
74
128
105
93
55
148
105
128
103
110
122
56
128
37
134
92
93
74
98
127
110
92
163
67
139
119
148
152
69
110
138
134
126
92
126
103
110
92
122
138
138
111
104
122
110
78
79
79
124
122
55
93
92
152
139
123
144
92
126
83
111
99
75
178
122
92
105
55
123
101
74
105
168
92
69
75
92
110
122
106
197
148
153
56
67
56
67
109
126
132
105
107
122
125
146
152
104
151
100
139
69
37
138
111
129
92
126
92
88
91
86
146
37
123
58
83
124
109
126
93
99
124
119
110
134
92
144
158
104
126
56
126
91
138
178
147
138
117
56
92
105
58
110
88
180
162
92
91
168
105
122
56
69
110
104
114
67
137
74
169
122
117
37
146
140
110
122
146
55
142
136
104
91
131
119
92
75
103
93
55
104
92
128
126
107
105
123
105
110
92
101
138
140
134
55
91
158
77
93
93
131
67
102
126
110
58
127
99
110
92
92
122
105
127
126
124
107
105
139
92
93
93
120
124
119
139
123
79
110
105
164
145
199
102
122
92
86
56
122
125
169
126
111
119
91
127
115
128
95
56
93
135
55
58
107
138
75
117
92
86
126
55
110
56
92
74
109
115
140
122
146
92
122
138
127
97
105
86
152
123
134
75
179
92
178
55
92
104
67
111
103
79
140
110
55
55
109
55
138
163
105
148
100
75
141
56
55
105
139
104
55
86
92
123
93
140
160
139
91
119
107
122
127
86
37
124
122
126
103
127
104
126
86
92
81
122
142
83
144
100
122
93
93
93
140
171
97
67
56
92
55
55
98
105
81
55
138
58
114
86
69
99
125
95
122
126
122
138
178
96
56
79
117
146
178
104
127
104
97
67
111
144
112
127
104
55
55
131
92
152
55
152
164
55
104
56
91
111
81
127
138
124
138
122
55
139
99
80
110
97
103
37
92
114
86
131
102
69
86
127
119
127
105
94
109
37
130
123
146
75
144
111
93
152
110
130
91
92
55
178
129
130
58
139
122
79
92
97
91
56
37
146
69
158
83
69
78
119
122
126
55
55
168
55
142
144
110
123
127
93
124
122
120
144
74
126
86
178
37
128
124
92
119
91
138
101
55
105
99
92
103
134
138
92
67
109
88
126
75
103
106
69
105
105
80
37
69
79
122
69
109
126
92
123
105
122
92
55
55
55
136
37
122
55
140
92
56
107
128
146
110
122
55
126
93
86
144
55
130
125
56
77
126
105
74
128
146
104
136
144
74
140
119
126
105
123
134
104
55
122
138
83
104
139
139
105
122
102
109
56
67
58
93
127
105
92
122
86
139
97
109
74
100
92
124
103
139
92
105
117
139
138
179
105
97
138
77
68
75
126
37
67
89
105
67
123
119
111
67
74
105
139
152
127
55
92
95
87
75
75
110
118
104
140
168
134
103
58
104
55
97
146
104
138
64
77
105
132
101
119
152
55
92
126
138
67
117
134
77
122
75
78
121
124
138
56
140
139
55
169
123
123
77
103
92
111
110
75
178
135
103
110
56
109
67
171
55
112
75
127
99
55
55
80
58
136
167
105
139
119
102
67
58
93
92
92
37
146
107
92
55
79
146
127
55
178
144
75
114
58
147
138
55
56
67
92
37
105
138
158
120
136
55
105
144
126
163
77
178
104
110
179
110
37
56
111
169
93
110
178
99
139
87
146
103
126
138
55
69
110
144
91
144
37
178
92
171
138
117
128
139
92
99
55
89
134
81
112
138
141
127
134
58
91
55
110
138
92
126
126
147
122
123
138
56
134
67
93
147
114
134
139
37
164
122
83
37
92
112
92
111
69
138
126
110
123
93
126
144
55
138
94
58
105
178
69
112
77
122
145
102
104
74
105
118
108
92
93
55
92
127
77
129
105
58
104
139
104
178
75
86
119
148
101
83
124
104
77
79
118
101
37
105
124
79
56
56
110
93
110
55
105
127
67
109
89
68
122
92
55
37
128
122
122
110
67
92
102
105
138
94
134
86
178
83
152
86
160
169
67
58
179
112
56
83
55
127
123
122
104
98
126
37
112
92
37
146
55
169
110
122
105
124
92
83
88
132
127
120
122
180
105
86
67
100
123
77
105
55
160
110
110
122
83
93
67
122
140
122
74
140
105
77
106
132
126
128
69
97
169
127
112
199
58
95
56
67
67
83
55
122
103
110
120
122
55
104
109
132
91
165
136
37
111
93
122
132
100
122
91
55
92
134
122
122
128
144
78
132
105
122
132
102
56
109
67
123
169
137
132
69
104
79
55
105
110
37
92
104
109
55
74
109
163
86
91
122
126
86
92
93
119
74
144
130
146
56
92
56
146
139
138
56
99
105
55
98
110
69
55
146
98
97
152
56
124
105
92
127
77
105
96
89
119
58
105
74
104
103
97
93
126
118
92
69
109
107
148
93
86
122
146
64
81
178
93
92
67
128
144
103
67
162
137
37
152
67
92
55
138
171
74
56
99
55
101
169
37
120
119
138
68
152
102
144
178
55
56
110
156
126
125
134
112
92
55
67
110
69
83
99
37
136
144
138
110
67
58
92
93
152
37
128
122
56
102
140
97
171
163
37
117
110
75
104
87
103
165
107
110
67
160
56
74
144
128
146
86
128
92
109
104
92
103
133
171
58
110
86
136
110
144
146
110
128
128
104
56
135
96
144
124
129
86
148
130
77
127
104
139
138
56
105
105
95
102
94
86
55
102
77
58
124
130
163
119
37
91
107
67
111
144
128
132
128
56
55
58
105
163
79
130
178
55
171
55
77
110
99
146
37
138
158
105
122
136
104
146
152
56
144
56
58
58
79
58
105
55
101
83
104
98
131
58
105
92
55
125
92
93
144
104
55
105
74
92
171
92
97
92
55
110
92
91
55
55
110
79
58
92
92
105
92
126
107
92
110
105
131
58
92
178
126
110
105
67
67
91
109
99
141
126
93
139
67
91
139
55
105
118
93
92
55
126
92
37
152
105
129
126
127
112
69
124
74
128
132
55
168
68
83
69
139
171
148
138
160
92
146
122
105
146
110
91
92
161
56
105
110
105
101
139
164
67
110
110
126
104
119
93
147
110
77
69
67
108
127
92
146
106
110
138
122
120
92
138
125
67
71
92
105
119
104
131
92
92
84
92
92
162
86
105
56
98
122
123
119
93
77
145
107
92
132
79
58
92
58
104
127
136
134
110
92
112
92
171
138
92
110
128
123
92
92
163
126
55
132
56
79
93
122
55
152
127
105
107
110
104
93
126
146
67
128
92
93
56
122
146
146
146
105
55
110
110
144
171
99
58
179
92
132
122
136
139
109
126
131
169
127
37
55
55
93
126
148
107
119
92
126
139
77
69
119
122
111
74
122
110
134
56
93
55
139
104
171
69
92
122
117
127
152
86
55
92
117
146
110
122
93
163
98
92
119
117
69
122
92
178
67
126
92
126
146
146
67
79
92
110
102
67
87
55
139
178
100
75
138
126
128
122
122
141
158
119
119
109
128
77
152
74
96
56
138
83
91
134
55
117
111
69
126
105
58
111
56
58
93
139
105
128
118
91
86
99
114
144
120
67
144
55
67
105
67
139
110
101
138
138
86
67
122
110
114
152
171
122
142
122
93
55
98
139
98
92
100
132
169
122
126
67
55
55
104
171
55
140
74
182
139
169
55
102
127
126
189
110
119
104
37
109
69
120
138
58
119
58
56
92
109
84
55
159
92
169
162
55
67
122
139
111
199
110
67
122
105
67
122
169
122
58
98
126
92
92
55
101
119
105
123
164
131
134
158
129
126
104
93
169
92
152
89
109
119
37
119
132
122
127
130
127
111
56
134
77
146
58
86
55
110
105
104
55
67
132
110
67
122
55
97
56
55
69
104
127
140
140
37
138
144
58
102
93
126
117
119
108
91
114
107
55
128
69
148
130
180
119
158
93
105
124
123
119
122
138
56
92
138
98
144
105
110
92
126
167
131
120
104
122
91
105
105
162
99
118
114
37
105
91
92
119
97
55
105
92
122
93
105
134
105
110
92
118
119
92
158
67
110
83
111
103
56
56
122
87
118
105
93
126
92
132
55
144
123
55
105
119
105
127
135
110
140
100
103
111
67
58
114
83
132
126
112
138
123
118
93
56
167
75
105
93
128
105
107
131
171
122
171
122
56
67
79
92
110
164
178
37
105
68
142
93
126
144
110
105
93
78
102
126
140
114
37
152
168
144
92
149
107
162
86
56
127
119
109
109
101
99
106
84
105
140
55
86
128
138
58
126
110
110
83
91
97
93
58
178
110
117
148
126
107
56
117
104
79
86
67
124
162
37
111
92
92
79
93
109
139
69
97
83
93
107
100
178
142
92
110
79
138
75
37
138
114
103
120
86
122
78
67
91
108
110
128
178
103
101
105
109
93
178
55
92
118
130
138
94
79
110
160
128
136
79
86
122
109
140
55
122
126
171
56
105
152
55
127
105
122
74
138
110
146
111
79
123
86
78
67
81
122
111
152
128
67
122
75
146
119
92
101
86
146
127
93
144
158
67
107
103
93
152
109
105
171
104
105
110
107
144
104
79
106
95
105
69
163
74
126
79
126
84
140
93
104
111
131
97
163
137
148
122
37
122
136
152
111
56
105
109
104
92
105
122
122
69
112
55
89
92
56
146
68
55
122
67
110
100
119
107
56
56
94
122
139
139
92
152
110
100
92
110
37
124
139
55
148
105
95
55
98
106
68
92
142
67
93
111
99
122
102
37
79
144
79
55
138
67
96
58
92
95
104
67
130
138
97
139
37
137
56
84
68
103
110
89
135
67
163
127
126
126
144
124
93
124
126
165
139
123
91
75
144
67
110
126
77
93
114
105
110
110
104
93
112
99
105
55
149
112
37
96
139
97
152
110
100
74
146
136
69
86
118
92
92
108
87
92
77
99
107
92
126
111
165
93
67
110
139
144
58
140
118
137
126
118
58
127
140
134
56
140
152
140
105
83
68
93
37
160
74
171
158
126
135
91
146
136
139
119
110
126
110
105
105
79
67
130
122
89
92
86
107
98
123
77
86
144
164
67
129
160
127
92
84
67
144
111
79
109
58
92
127
58
93
37
156
126
138
107
119
132
56
67
114
92
151
152
144
102
134
145
158
98
110
55
122
56
101
135
129
102
127
92
67
95
92
110
139
108
110
104
67
123
124
119
67
114
75
131
123
158
111
92
37
126
119
92
110
139
138
128
92
55
91
164
92
55
134
55
168
92
55
140
120
105
110
95
127
86
37
92
132
139
93
108
152
56
128
104
123
119
139
67
106
58
91
114
144
139
92
75
74
130
128
115
103
79
55
104
146
122
105
67
127
97
101
92
148
86
167
138
92
55
126
126
120
83
139
55
92
111
137
132
119
110
126
107
78
136
108
130
119
102
86
134
92
126
110
83
108
144
178
111
92
117
86
93
110
55
144
105
138
104
119
139
111
69
146
112
93
105
122
93
105
134
99
113
91
37
105
69
105
146
58
104
86
160
104
55
104
112
78
146
124
58
100
100
138
123
130
56
188
79
55
152
122
97
146
122
132
112
95
138
109
122
105
58
169
92
107
88
55
67
138
109
89
58
138
112
126
122
131
104
134
96
121
126
80
126
75
58
86
132
68
119
138
37
139
107
171
138
122
128
105
93
112
92
128
56
122
92
111
111
135
144
56
127
109
93
149
92
91
79
122
105
169
122
145
119
178
128
104
144
92
122
92
56
74
97
109
140
119
55
86
139
104
139
138
37
92
130
134
126
167
109
104
99
55
144
55
171
127
171
105
105
138
37
107
146
135
119
104
139
93
106
69
178
108
86
55
86
83
110
134
127
91
104
136
111
102
128
92
148
92
103
56
92
67
55
110
120
105
145
177
88
138
111
92
158
178
115
55
92
127
135
122
88
144
126
37
122
92
110
178
162
138
104
178
139
37
126
168
104
126
55
117
56
169
69
127
92
122
98
138
104
119
92
127
67
178
122
135
56
92
146
139
123
131
111
56
83
146
122
83
92
92
92
104
95
92
127
58
122
37
171
67
139
110
127
67
88
139
146
92
110
92
97
93
93
86
126
138
110
137
101
105
126
101
67
162
122
92
108
55
101
127
130
83
142
67
55
105
140
127
128
96
93
105
178
92
99
146
178
140
110
105
69
67
112
127
104
138
56
126
137
169
167
92
105
108
93
56
126
68
122
140
138
122
111
78
145
109
80
124
105
178
56
138
110
93
92
127
99
111
37
110
104
105
118
105
56
138
126
126
139
110
131
55
93
98
92
127
146
83
152
92
140
139
105
37
55
93
91
135
117
81
75
37
139
55
95
163
92
138
92
58
74
92
110
99
95
148
104
105
140
55
122
110
126
109
110
107
109
126
169
132
107
119
104
79
108
78
67
95
126
74
97
93
111
124
107
171
105
110
83
107
58
182
144
112
123
92
78
107
93
86
110
178
101
107
67
137
55
83
112
114
55
126
92
122
138
91
142
37
98
131
74
110
55
122
56
128
92
123
163
91
109
152
120
109
146
69
140
122
56
78
138
58
112
135
158
105
107
92
58
58
138
122
86
110
92
146
67
92
92
88
105
91
138
124
127
107
100
92
138
67
79
122
135
152
111
92
109
91
145
55
123
103
84
91
118
86
99
107
107
122
110
109
132
104
138
94
92
148
81
107
37
104
105
93
91
104
88
136
122
58
104
162
68
125
109
67
98
126
138
55
138
138
107
92
136
120
138
105
103
122
91
93
138
92
74
110
92
128
147
112
69
137
122
132
136
110
105
69
92
37
111
103
138
146
139
55
105
74
74
139
110
37
79
121
107
91
140
104
102
144
91
126
123
144
123
130
93
74
121
92
128
142
68
110
123
68
77
95
92
110
55
91
152
74
77
178
145
110
138
122
138
56
102
67
122
86
56
56
83
99
67
61
144
126
109
92
92
105
122
139
104
114
130
74
69
130
37
112
144
146
144
144
104
58
86
152
77
64
119
55
105
92
99
138
91
104
140
55
126
80
110
103
98
93
122
132
158
111
107
92
148
138
37
148
123
178
55
104
124
122
58
123
74
91
169
126
122
107
138
128
146
91
93
92
126
122
138
105
110
79
79
127
101
97
88
112
110
122
74
92
138
169
119
74
67
104
37
67
101
138
111
122
112
117
110
127
128
67
111
56
69
111
101
138
93
93
86
92
104
101
110
124
131
56
102
55
55
178
67
178
55
104
146
160
98
55
92
119
124
128
56
122
75
93
105
138
67
92
160
110
117
115
182
58
93
169
98
99
123
126
105
92
55
55
107
145
138
180
178
122
92
94
144
140
74
109
122
79
105
139
156
139
130
107
103
178
144
99
137
110
109
92
110
123
109
178
105
119
58
110
37
97
138
99
92
104
169
110
102
125
105
132
126
134
92
103
122
83
138
37
164
126
55
37
103
81
138
56
95
103
105
92
131
55
37
79
56
86
122
58
115
109
110
79
92
138
110
122
158
137
86
127
105
55
65
107
56
92
169
134
75
114
92
146
169
91
104
124
105
124
104
105
86
37
126
108
75
61
93
138
142
152
56
97
123
128
55
129
122
139
67
77
110
91
140
124
156
138
138
92
37
67
122
56
111
37
132
139
100
55
92
58
102
93
107
139
91
79
149
67
144
124
83
105
128
93
67
111
74
105
169
121
55
74
112
104
101
137
79
128
105
138
134
130
123
122
56
92
127
111
84
67
139
86
152
92
134
178
104
56
128
93
67
92
74
105
117
56
130
112
55
100
58
74
101
145
104
92
122
77
92
107
122
165
67
55
69
138
55
83
55
110
79
107
55
92
138
158
92
77
199
93
58
126
139
58
93
132
58
110
91
104
83
107
105
134
168
112
138
119
126
102
110
61
131
102
140
99
55
92
74
67
58
152
126
127
99
122
78
92
92
74
92
131
169
158
144
127
138
83
122
101
67
74
110
56
75
181
110
92
79
105
141
109
152
127
92
79
110
37
97
91
122
77
104
146
138
69
67
93
152
144
131
104
99
135
177
93
129
138
67
164
163
69
67
92
114
109
67
132
126
92
55
109
105
140
111
99
55
55
55
178
139
188
105
56
93
144
109
126
148
122
107
104
74
37
138
67
93
126
93
68
86
169
81
130
127
92
86
148
97
97
120
104
37
126
75
97
118
122
138
122
92
57
139
74
56
140
109
106
126
165
113
83
179
104
110
127
128
126
69
178
131
119
55
58
152
109
109
144
188
192
37
104
126
130
118
55
103
139
126
104
122
124
127
134
55
171
75
139
126
112
152
92
95
104
92
110
92
123
141
144
37
144
120
144
122
160
92
86
92
178
105
144
68
110
122
122
138
98
105
148
99
94
37
126
97
111
91
129
123
111
152
146
92
122
114
37
122
139
123
105
84
152
145
67
56
104
110
37
69
109
138
122
110
58
141
128
126
67
139
163
55
164
127
111
110
92
124
178
69
178
140
58
79
55
136
148
69
92
144
110
88
126
140
55
137
122
37
69
105
84
107
105
128
121
67
136
104
126
89
126
104
79
122
178
146
94
138
138
128
86
93
123
67
132
67
148
91
127
69
182
93
178
120
137
99
86
93
67
67
99
110
136
169
92
67
104
162
124
109
93
55
149
93
122
127
123
79
92
79
92
104
182
96
92
132
37
92
169
122
107
178
79
75
178
111
88
100
126
55
169
140
67
92
93
110
89
149
55
105
92
104
109
75
55
104
55
58
135
139
169
92
138
138
122
56
67
104
138
144
74
109
92
138
110
111
92
162
99
177
140
144
86
127
88
104
128
138
119
126
83
139
178
111
92
102
92
126
146
37
55
56
152
126
99
67
92
127
126
56
171
89
169
180
123
110
169
123
92
110
104
122
127
69
68
122
92
67
110
127
105
168
55
89
122
56
68
102
142
77
120
92
126
93
92
93
92
56
86
89
123
178
37
55
118
119
93
55
56
105
110
127
103
92
122
101
69
178
105
86
152
180
88
109
109
109
108
120
91
110
92
122
111
152
92
127
102
105
122
92
102
144
104
56
93
93
132
123
109
55
138
152
111
55
93
98
138
110
79
139
126
126
80
81
67
69
93
67
178
56
110
86
126
138
105
112
178
77
105
124
122
178
139
139
111
107
110
98
92
134
37
67
91
79
55
105
136
139
126
99
55
92
110
110
110
104
67
124
56
55
92
104
88
68
104
93
123
55
126
69
69
92
128
152
136
101
92
105
94
120
126
103
122
120
102
67
105
138
109
138
55
139
168
58
75
134
142
162
104
105
67
119
92
178
91
136
109
136
89
122
92
122
93
77
91
69
131
122
111
126
55
58
81
107
105
55
105
37
110
105
93
122
138
116
144
55
162
110
86
103
126
67
67
92
122
160
84
55
152
72
134
75
55
105
105
98
104
102
112
79
147
101
123
126
92
149
134
92
124
110
101
87
107
127
152
114
146
100
56
158
120
138
124
178
144
86
103
119
58
55
58
119
86
69
83
56
92
128
83
79
92
111
110
98
122
77
77
86
105
163
148
131
111
152
160
103
100
99
146
55
180
55
58
103
55
126
92
92
139
104
152
91
79
145
91
145
93
111
92
129
88
142
55
148
79
136
93
89
86
138
123
56
134
74
56
110
117
99
105
168
67
112
58
122
93
127
120
134
138
67
67
110
109
58
178
81
126
67
110
105
92
77
129
101
110
134
92
56
105
86
158
122
122
169
107
105
144
119
139
77
111
127
56
124
119
97
152
79
56
55
122
134
56
103
92
114
91
58
118
92
152
110
134
56
109
163
180
97
144
105
134
67
124
92
107
92
92
93
138
111
93
111
138
122
115
126
138
110
95
92
178
107
55
152
99
77
119
178
97
148
108
93
139
126
93
126
58
79
119
122
146
69
37
122
73
99
128
122
83
105
92
124
103
128
145
135
74
127
152
77
95
146
104
122
122
77
110
141
55
127
138
138
111
92
126
144
92
123
92
180
100
105
93
110
93
119
122
109
86
140
169
79
75
104
103
115
126
126
75
164
84
154
106
100
84
119
69
110
110
58
95
126
138
93
146
110
122
169
55
158
124
92
171
129
58
107
104
124
139
126
56
93
110
168
55
92
140
132
92
112
67
92
123
124
37
96
137
110
107
110
145
105
124
146
136
75
67
127
91
58
83
122
138
56
37
126
118
92
128
98
56
152
77
120
72
134
147
108
67
115
119
110
84
122
109
126
103
126
110
75
144
110
169
134
178
99
92
124
107
55
162
92
74
134
55
55
105
56
144
109
37
130
91
100
110
93
105
147
103
110
104
188
144
37
126
122
146
104
91
92
158
74
126
131
169
138
153
148
67
109
152
105
86
79
128
92
109
92
58
55
91
67
108
56
107
138
178
178
98
134
95
122
141
92
122
164
37
152
110
92
108
68
89
112
84
150
58
128
83
79
138
79
77
178
158
95
152
67
146
56
83
110
55
92
92
122
114
141
101
169
110
122
105
55
58
126
122
67
171
110
110
74
79
122
119
123
99
84
109
141
55
37
93
135
129
134
95
105
92
92
144
37
138
55
126
92
58
122
122
124
91
144
105
84
77
93
58
88
107
97
67
149
139
92
114
86
178
140
117
111
122
74
58
110
129
67
140
96
122
92
55
110
110
152
112
139
122
178
84
162
126
122
92
56
110
134
125
140
199
107
179
178
92
55
138
93
123
152
165
69
99
74
92
110
92
122
99
67
103
105
126
189
126
69
55
126
110
127
109
55
127
84
111
106
37
55
119
76
126
102
92
93
138
124
69
126
67
109
111
119
55
128
110
122
127
152
56
199
105
169
122
127
105
113
110
80
152
55
128
100
92
75
107
79
138
149
169
74
119
120
104
74
55
69
118
123
130
72
102
73
79
56
105
126
148
104
127
126
92
93
100
104
126
199
87
37
126
107
91
178
92
128
122
110
110
178
146
92
105
74
56
67
105
132
93
139
114
105
110
178
104
146
97
111
142
78
101
107
92
93
88
134
103
95
101
55
80
104
105
93
55
138
136
79
118
89
144
67
94
102
138
92
171
103
37
84
111
110
110
118
107
83
123
110
93
142
100
124
92
171
103
110
100
134
104
131
126
75
79
122
109
69
104
109
122
138
92
58
55
105
55
93
138
140
67
92
56
168
67
56
84
109
92
55
110
92
110
145
123
67
110
55
105
122
55
58
110
130
69
88
105
111
97
68
107
104
169
140
122
119
103
55
107
136
74
104
140
93
139
105
74
93
93
55
128
58
93
178
67
178
124
55
117
134
122
105
110
144
99
92
101
93
104
92
92
58
152
122
92
168
132
127
37
148
56
140
55
111
134
92
105
138
168
55
83
112
92
105
127
77
69
92
118
55
74
69
126
75
118
127
108
138
158
139
79
126
152
74
74
110
56
168
74
93
110
122
75
109
75
111
81
92
114
110
178
126
55
105
84
138
106
105
114
104
109
131
92
97
169
37
132
144
138
104
146
80
152
55
105
109
93
128
55
144
126
132
139
93
119
152
139
68
92
37
153
110
122
138
56
122
87
134
101
126
107
56
158
142
86
110
86
122
37
93
124
160
119
142
56
109
92
77
111
144
127
58
37
138
55
69
89
104
91
92
152
124
92
92
69
110
128
69
104
93
74
89
37
105
122
100
99
126
127
138
92
86
119
107
119
98
122
109
92
104
109
79
126
123
67
114
122
137
119
98
110
91
140
55
122
118
56
119
128
92
104
100
140
55
110
110
123
37
178
91
67
67
115
122
107
79
126
146
56
69
178
128
55
126
104
152
91
131
92
92
37
92
178
139
139
92
93
93
104
67
110
127
96
105
158
100
84
180
104
178
92
105
122
117
178
110
119
138
148
104
37
101
69
138
105
163
99
122
178
92
130
91
103
55
86
137
92
148
169
106
126
83
55
135
112
122
55
37
114
56
110
145
122
178
148
37
115
129
86
86
105
169
148
74
114
37
86
138
67
37
114
115
127
75
141
104
146
146
56
55
92
131
178
134
138
74
139
126
89
77
55
92
132
152
107
79
122
92
55
55
105
55
140
169
55
101
138
124
127
88
138
87
37
106
110
123
138
107
118
149
110
77
142
105
144
67
110
106
178
123
110
95
152
67
69
119
104
110
79
109
137
98
122
120
122
123
126
162
139
92
110
107
67
110
123
110
126
135
199
144
139
55
179
148
101
152
110
92
92
119
58
92
92
67
97
146
128
91
109
126
178
92
127
136
105
55
67
37
58
137
92
104
139
91
81
93
84
105
152
55
56
67
140
92
107
111
127
123
92
178
128
74
93
119
111
178
85
119
55
138
105
37
98
86
107
110
123
152
55
122
132
164
92
55
122
102
93
146
126
37
138
119
136
68
105
199
107
93
89
146
138
75
122
92
114
177
67
123
100
55
110
158
58
122
92
86
77
93
110
86
114
100
113
103
107
84
99
171
55
107
110
120
74
79
77
92
106
144
134
79
55
56
37
92
169
140
91
144
55
81
135
104
171
56
104
131
110
117
37
158
122
55
122
110
104
152
144
105
127
138
197
111
97
182
119
95
110
126
92
56
55
148
105
122
144
102
56
98
93
55
105
55
89
104
125
91
169
178
127
55
122
92
127
98
109
84
69
158
122
126
37
139
56
105
122
86
77
122
135
126
79
138
103
83
37
105
124
55
107
117
128
132
110
81
92
138
104
58
148
126
89
58
119
134
110
153
126
140
58
58
56
118
111
138
144
138
99
138
171
141
67
122
84
79
69
169
37
110
55
122
97
144
81
169
144
171
124
123
104
105
92
138
68
58
72
55
177
97
123
126
139
150
86
119
104
92
130
178
136
107
171
130
120
92
130
146
122
123
152
92
67
55
91
126
105
148
92
92
104
92
134
68
178
105
111
127
93
105
126
67
138
55
179
164
169
100
110
74
110
55
110
109
105
86
165
109
111
69
115
124
105
86
83
138
167
83
92
126
93
58
163
124
148
103
92
126
178
122
86
92
126
139
58
75
122
92
98
91
99
111
122
107
74
144
178
102
146
126
131
92
152
74
144
111
130
76
123
126
118
37
105
107
122
163
103
122
74
126
55
168
131
138
102
75
92
151
68
84
119
138
92
119
86
140
111
116
146
67
85
131
138
110
93
105
103
117
132
110
56
67
111
138
93
55
138
139
126
55
152
119
126
130
55
135
99
144
92
139
104
91
93
56
138
79
140
114
152
112
148
127
104
74
104
56
37
126
112
134
119
154
138
91
75
75
118
91
145
139
152
117
142
127
168
126
67
58
146
92
97
146
92
107
105
148
69
56
83
103
93
122
144
139
55
144
107
110
55
146
105
138
56
134
119
140
83
110
105
104
138
92
105
92
104
126
100
117
86
86
104
91
137
144
110
55
138
142
178
77
122
93
86
67
88
83
122
122
55
79
169
126
105
37
74
141
74
122
67
74
37
92
93
192
127
122
93
122
101
123
110
67
138
152
67
126
119
105
100
135
110
97
67
115
93
126
105
144
112
92
122
98
92
138
139
37
180
108
142
117
138
86
129
80
171
55
112
92
93
58
69
164
55
123
180
99
107
171
111
55
67
119
119
163
102
107
92
138
92
100
126
104
93
152
37
69
55
55
79
68
128
122
138
171
192
93
127
67
93
68
160
92
105
79
134
105
138
105
92
140
142
144
144
67
98
165
163
99
126
91
55
122
88
118
93
97
95
139
92
144
165
171
124
122
100
110
122
104
69
109
152
107
107
89
67
86
109
127
58
92
104
139
91
130
110
86
98
114
103
140
92
122
111
67
105
123
37
122
86
68
69
122
138
106
127
93
55
105
138
56
110
146
144
144
94
126
134
110
138
138
138
140
119
105
109
122
101
92
128
80
144
142
92
92
68
79
139
120
92
118
110
111
106
58
122
89
69
111
122
67
80
104
100
171
110
139
109
58
83
127
127
129
169
119
92
69
126
99
104
107
123
117
56
110
74
129
123
105
111
157
123
74
92
138
56
104
144
127
109
58
92
127
67
37
140
75
132
91
125
105
101
110
158
110
69
55
56
105
124
92
69
105
67
56
138
55
168
123
105
55
37
106
55
121
126
169
37
122
105
105
171
128
122
138
79
92
37
74
119
74
89
138
128
93
55
67
99
111
56
97
119
123
78
138
55
91
142
178
106
99
169
139
37
109
128
102
127
92
55
92
144
126
138
109
123
140
99
122
136
119
55
111
102
114
110
69
134
93
92
67
101
102
119
127
58
91
110
123
37
122
122
110
139
152
92
138
132
37
110
83
105
124
88
110
119
131
158
105
69
118
122
89
77
144
86
146
58
178
158
75
134
124
146
138
86
122
55
79
74
127
103
88
74
122
122
75
55
91
105
105
79
41
131
58
111
138
110
128
75
55
128
92
105
105
152
126
146
37
119
91
99
131
67
180
92
56
37
72
148
105
119
111
69
178
104
152
105
99
110
126
113
55
123
92
105
106
67
156
55
127
83
93
56
132
127
68
132
119
138
124
168
119
56
110
126
109
144
122
110
122
114
55
145
119
92
122
122
105
92
123
69
119
130
106
74
84
163
106
55
55
127
91
110
138
126
138
118
74
55
156
131
123
99
55
56
88
92
138
123
103
77
83
86
178
138
69
127
100
91
138
67
136
127
182
122
37
110
150
169
108
118
99
75
75
92
122
123
146
105
67
58
127
144
112
88
169
146
149
104
91
152
119
111
104
101
148
91
79
110
73
128
100
55
122
138
138
105
152
91
55
91
93
92
126
110
96
105
102
126
131
126
178
107
55
55
105
182
178
107
92
58
92
58
114
58
91
152
93
100
162
122
147
104
124
182
140
69
92
122
58
108
74
122
126
88
55
140
144
93
111
92
92
132
148
139
104
138
107
111
91
180
95
144
122
138
92
87
67
119
105
69
112
92
171
102
69
67
92
77
55
114
134
148
56
106
68
77
83
146
128
55
112
162
169
108
138
126
98
126
55
107
90
93
55
120
103
93
139
103
77
136
127
163
93
77
110
91
93
95
93
139
109
110
144
93
138
105
67
146
93
126
74
69
74
58
126
84
91
75
93
136
122
79
91
98
188
37
105
103
69
55
122
126
92
115
55
110
81
138
138
105
126
55
58
104
111
127
103
138
101
67
106
178
55
92
92
74
78
81
67
84
104
91
93
37
105
152
146
86
97
67
168
55
107
123
164
105
119
126
107
115
77
136
67
83
169
105
37
126
126
99
89
37
140
67
138
152
156
58
93
89
105
92
125
123
72
140
122
58
88
58
169
137
99
69
77
106
125
79
37
99
140
146
68
142
113
104
67
37
135
124
56
140
139
117
134
55
138
125
109
139
104
104
91
55
114
92
126
92
145
182
110
105
119
83
122
119
158
99
98
146
110
136
122
171
165
56
138
107
110
109
37
118
104
105
144
86
144
122
92
105
138
114
110
124
104
56
56
127
88
105
122
141
56
131
114
92
91
110
138
119
92
55
156
89
126
122
83
104
135
134
75
146
37
149
104
128
56
138
69
163
58
123
126
56
95
99
169
119
105
68
131
72
128
58
129
93
93
105
92
128
114
95
146
111
105
89
122
37
152
110
67
119
83
55
97
92
74
138
138
128
121
86
103
101
109
125
122
178
138
92
109
55
126
77
110
104
105
93
136
89
138
69
93
123
178
79
92
56
55
138
104
86
69
105
92
122
84
117
58
144
126
104
55
58
56
107
145
144
55
127
146
138
37
93
110
78
92
126
128
178
56
86
138
122
138
128
136
146
92
138
152
129
104
169
178
162
104
69
111
55
127
138
119
103
130
135
178
58
146
55
98
138
55
105
168
126
127
69
92
75
56
67
122
144
114
58
92
69
74
122
101
82
147
138
58
123
55
95
148
126
139
77
141
86
69
69
104
55
56
91
124
192
75
138
106
55
91
67
140
146
93
56
56
55
92
178
127
83
91
131
146
122
37
111
126
124
128
105
92
86
97
69
123
126
37
92
105
127
86
55
178
69
151
110
68
98
56
123
86
93
79
134
152
95
177
112
139
130
127
56
67
74
110
105
92
93
92
107
122
92
67
111
109
110
69
128
69
127
92
92
83
55
142
37
91
79
83
76
140
74
199
109
122
168
92
67
126
127
105
86
112
160
104
135
84
105
91
95
110
37
120
92
122
69
118
77
92
148
93
83
152
109
126
110
55
110
122
112
91
123
114
80
152
115
89
95
99
99
165
178
92
152
92
138
37
79
104
55
55
127
104
137
67
93
113
110
110
55
139
171
99
138
139
108
109
127
138
95
67
91
99
58
92
91
69
144
99
55
83
56
144
134
77
92
105
110
84
105
92
104
100
119
122
75
55
97
58
106
105
56
152
178
91
118
98
122
122
56
126
136
56
145
92
127
122
110
101
91
122
58
127
93
178
56
83
144
86
92
146
140
105
126
83
108
92
58
122
104
93
92
79
104
126
55
128
105
140
140
92
138
163
83
56
83
68
55
100
97
110
139
169
126
106
80
158
107
79
37
86
105
93
135
107
55
56
107
102
98
138
141
131
81
148
134
122
55
119
178
107
58
67
95
92
152
92
55
91
146
122
93
168
79
77
144
104
126
104
107
168
97
92
55
56
178
134
126
130
55
103
110
56
124
109
153
97
140
56
84
69
144
56
127
92
37
86
123
139
169
104
144
104
105
56
93
164
180
139
110
110
110
152
127
92
152
92
138
105
56
110
105
69
129
109
104
120
122
127
67
111
138
91
55
144
118
178
126
127
146
110
105
92
69
92
55
93
150
93
110
58
91
144
108
92
138
139
104
163
139
148
37
110
138
109
105
139
56
104
126
138
93
55
144
99
144
135
146
106
74
110
169
112
123
145
110
92
145
68
110
139
37
126
138
171
92
104
99
178
126
141
122
74
98
37
110
152
58
178
110
110
55
56
92
92
91
58
83
92
128
168
37
55
111
119
75
138
140
107
86
138
105
169
111
84
120
88
112
128
93
73
127
93
126
105
87
109
158
168
127
180
105
105
119
37
56
128
160
108
123
139
126
120
122
129
105
37
127
92
55
138
95
114
77
160
134
56
67
69
126
55
79
102
146
92
58
105
58
152
122
104
128
69
55
74
58
111
139
74
37
104
178
169
67
138
105
68
139
178
55
141
104
79
108
159
92
136
107
134
111
126
58
56
67
67
122
88
37
69
79
95
109
110
104
55
106
126
97
126
127
56
103
97
144
103
139
152
37
67
92
67
92
110
58
178
92
163
93
151
104
55
178
92
101
137
92
180
83
102
127
104
111
77
111
37
87
106
127
143
119
131
58
92
92
93
55
134
182
152
105
104
113
108
91
144
144
37
55
37
92
92
128
122
126
67
74
131
92
37
111
178
152
92
107
105
104
146
112
117
119
37
115
56
105
146
113
110
92
37
92
105
138
131
79
103
105
58
67
67
93
110
104
55
119
105
77
146
77
151
105
99
105
114
69
69
37
169
163
128
126
93
77
77
55
93
127
110
99
74
104
141
122
92
92
160
104
120
145
97
104
104
74
126
110
97
126
37
160
112
77
169
178
110
79
112
167
56
126
107
58
58
58
110
178
105
144
37
81
118
119
58
92
99
150
91
138
104
110
93
171
111
64
93
93
37
125
55
92
37
138
56
138
77
101
178
123
151
122
55
144
144
92
138
107
91
55
123
122
92
114
104
148
75
139
126
144
103
58
113
76
111
127
92
107
127
163
178
109
138
92
67
83
92
67
124
135
136
95
110
56
139
122
134
105
109
56
108
131
67
56
86
86
55
160
105
121
92
95
55
147
126
55
92
74
93
138
178
126
124
111
74
55
75
126
105
107
77
152
122
137
107
138
58
109
105
158
141
138
55
74
163
138
148
160
92
108
110
99
55
74
99
109
109
126
123
122
58
92
110
67
92
138
104
88
67
127
105
55
144
126
127
107
98
92
178
120
88
119
138
91
92
125
127
139
93
55
55
114
93
110
106
107
123
140
55
92
178
169
128
146
55
110
126
55
144
122
37
86
104
146
110
37
115
122
146
93
92
125
94
94
178
55
99
149
138
169
79
122
77
178
152
104
67
83
126
132
67
120
111
138
55
55
80
55
178
146
110
109
86
107
110
110
93
92
55
91
37
91
138
55
75
114
134
58
145
122
119
122
163
132
110
140
110
98
111
162
84
104
92
100
110
152
86
137
178
56
134
67
55
105
114
168
98
144
92
92
58
55
171
127
104
112
110
122
109
178
91
92
138
55
102
87
55
146
169
126
101
107
152
122
93
58
148
92
104
162
69
138
91
122
110
126
127
69
84
55
99
144
139
136
136
138
86
122
84
178
92
146
68
122
83
146
114
95
75
105
126
148
168
67
111
88
165
152
128
94
55
152
86
92
199
110
110
93
97
140
86
168
122
163
169
122
37
130
86
83
91
112
124
75
92
104
138
131
122
55
92
146
74
55
122
109
169
69
55
81
122
130
138
37
102
105
132
146
178
180
92
122
122
119
92
103
93
123
104
109
105
139
138
93
123
55
58
92
128
120
55
55
107
99
67
105
97
37
122
75
144
103
98
104
110
127
199
140
75
92
146
55
126
91
93
92
126
104
139
111
104
55
110
114
104
79
69
107
110
160
56
104
113
119
127
105
92
163
117
115
131
69
79
109
69
110
107
137
124
86
92
92
56
122
160
139
123
126
92
124
130
120
148
79
86
126
92
165
122
37
68
178
69
114
142
117
138
68
92
69
122
74
84
134
168
77
92
69
130
69
199
104
148
141
120
151
84
131
110
138
92
146
93
92
37
112
105
122
152
102
135
123
130
99
122
138
146
105
138
84
55
177
119
55
93
37
92
56
108
58
110
92
138
93
144
140
74
112
104
118
67
131
152
134
104
132
110
86
69
134
55
162
122
67
110
58
92
146
148
128
128
149
79
37
168
178
67
55
105
104
55
104
149
86
105
69
55
58
119
138
55
126
87
126
110
104
103
146
58
138
107
145
110
146
169
104
139
135
92
69
75
141
104
139
69
92
152
55
138
109
137
79
110
138
92
110
131
105
84
126
105
107
168
61
86
140
114
74
92
110
81
97
119
162
37
107
92
124
105
127
120
169
55
88
56
84
105
110
56
152
55
92
162
55
83
94
37
92
182
58
81
55
178
132
89
93
109
55
152
114
131
138
122
114
105
123
128
137
78
126
109
119
105
126
92
105
103
105
107
92
169
93
56
111
93
110
162
178
105
92
56
131
92
86
58
180
75
167
56
149
105
132
134
123
56
91
142
183
169
55
98
110
122
93
117
92
118
110
127
105
104
122
55
69
74
92
110
99
138
126
146
67
127
79
124
86
104
93
123
111
163
110
58
158
122
69
104
128
124
110
100
163
67
105
58
144
131
86
91
168
83
152
120
146
99
123
128
92
110
110
104
89
86
55
93
99
37
141
86
105
74
132
37
109
131
69
106
122
99
126
132
105
95
126
168
152
178
138
58
178
146
178
111
126
148
104
120
78
92
104
58
97
97
69
109
148
128
55
128
136
55
122
110
139
124
144
178
120
55
128
120
138
139
104
97
84
105
79
104
79
58
56
92
100
134
141
74
55
107
110
126
130
114
58
140
104
107
104
178
58
152
105
75
83
93
180
86
86
141
93
117
110
55
110
97
74
55
91
55
56
138
138
67
75
124
122
61
112
55
37
122
75
92
92
37
111
110
111
125
122
122
108
119
110
110
138
105
55
114
55
105
122
144
83
146
144
91
127
144
92
135
104
58
92
126
126
37
138
69
93
74
92
101
131
77
126
86
89
152
106
137
37
127
134
126
93
127
110
69
110
56
103
118
67
69
99
55
122
123
106
83
151
86
128
77
126
103
67
72
123
93
120
144
138
105
96
92
123
89
79
56
77
75
138
55
37
67
99
138
105
104
137
79
122
75
99
101
58
58
56
105
74
169
123
58
92
92
68
55
67
92
89
67
178
126
55
79
104
101
74
37
178
110
152
55
178
75
122
75
102
104
97
111
86
128
104
140
92
55
100
124
123
100
127
92
67
112
55
146
105
37
91
109
93
86
55
105
83
149
111
146
146
151
119
104
56
137
127
119
138
114
129
138
136
119
148
111
80
122
106
93
103
55
58
112
146
171
86
158
131
92
88
68
93
126
69
56
98
168
167
69
37
91
67
67
67
148
126
122
67
111
104
55
138
139
64
138
92
122
92
67
89
104
144
104
99
122
110
122
109
93
107
79
152
127
91
79
140
88
126
37
104
104
69
79
163
92
126
67
37
130
95
97
103
104
105
74
126
67
139
91
128
77
138
93
138
92
104
122
122
123
101
139
92
37
118
110
110
55
128
119
110
138
55
74
144
93
134
122
75
152
99
122
81
56
122
114
162
144
113
146
150
131
105
109
67
78
109
69
55
126
67
92
110
100
178
126
92
140
140
126
146
55
103
122
37
109
74
127
124
126
110
97
134
58
122
56
67
58
95
139
100
124
37
67
134
105
105
69
55
122
69
58
56
169
131
102
138
122
92
126
128
55
37
92
102
138
74
69
86
67
107
107
144
110
92
100
67
138
107
37
67
169
69
79
92
67
93
86
132
139
131
71
73
75
146
55
55
124
122
83
178
104
169
122
69
103
93
119
132
74
116
112
122
104
56
124
64
110
107
58
55
167
81
56
110
169
107
105
146
67
152
171
92
56
138
128
56
152
93
122
138
55
92
109
118
136
119
110
152
83
146
99
105
104
102
93
110
152
158
93
56
122
107
91
110
128
77
104
56
104
134
156
126
100
74
37
69
107
119
164
55
122
105
81
160
128
114
105
93
117
138
56
92
105
105
144
124
105
80
56
148
140
105
123
84
128
162
102
171
145
58
92
78
55
93
138
104
98
104
74
142
139
169
99
55
138
115
122
163
92
105
167
165
92
122
37
126
105
75
144
127
77
100
134
122
106
105
168
127
130
93
105
146
123
144
119
73
91
56
67
68
105
92
107
122
55
93
67
77
109
55
119
79
55
58
188
92
127
92
160
123
75
119
169
110
98
67
56
55
127
106
55
37
97
83
126
122
92
37
140
150
120
105
37
89
123
55
91
119
110
67
108
114
138
127
139
74
119
122
126
93
134
122
92
55
134
55
178
64
171
56
106
93
128
132
55
139
163
108
55
105
75
92
55
124
86
92
124
113
126
138
169
92
55
122
104
92
55
127
92
118
58
56
93
140
78
139
55
110
121
121
93
55
37
139
97
56
135
104
37
67
126
92
152
171
92
127
93
74
128
110
134
56
56
139
110
131
103
69
122
96
118
138
130
123
138
128
79
104
81
169
169
119
81
79
122
99
138
164
92
122
68
95
81
128
149
56
123
158
160
122
126
58
92
37
104
79
98
97
140
73
74
99
55
93
142
55
107
93
146
146
134
126
109
164
147
92
122
104
104
56
112
168
105
117
110
138
146
99
126
107
105
126
108
92
123
102
104
119
138
112
110
131
110
92
110
137
58
128
55
127
99
99
107
67
144
144
119
67
103
138
103
55
91
92
152
104
105
144
112
126
152
106
79
146
69
67
79
107
127
74
55
109
92
117
98
68
92
140
123
55
91
69
118
92
152
105
134
109
74
104
92
58
92
119
86
148
55
75
92
109
84
152
67
92
122
148
56
152
92
55
122
142
122
56
58
105
111
140
127
139
137
55
99
92
92
55
69
110
67
93
92
164
104
86
85
107
144
92
77
134
92
109
144
127
86
37
86
89
139
99
178
102
110
67
126
37
92
58
67
189
37
122
145
168
75
146
103
145
104
92
146
103
138
144
55
88
37
137
37
37
103
105
136
101
69
67
92
92
126
67
92
75
138
110
145
55
112
92
146
92
104
138
97
138
87
127
119
92
137
93
168
138
126
169
56
55
132
128
152
111
74
126
56
129
77
138
67
92
92
178
105
37
144
92
122
97
103
169
68
68
118
178
105
55
188
146
37
178
110
55
178
178
122
110
105
123
74
103
55
91
119
127
119
105
86
105
109
138
138
199
138
111
122
58
105
122
119
83
58
151
114
124
122
122
69
142
99
74
144
58
152
126
122
126
110
113
152
113
92
119
139
144
139
107
178
105
139
103
136
67
144
126
104
110
56
122
37
102
99
86
104
146
126
99
95
138
55
107
92
136
140
112
118
68
56
148
110
69
145
93
140
67
93
111
122
140
105
136
138
152
110
58
139
91
86
98
92
124
178
146
138
92
104
122
122
104
139
91
103
83
99
104
138
167
79
122
138
55
79
37
98
105
119
68
109
132
110
146
91
83
122
178
37
84
69
178
152
138
125
169
110
110
140
55
128
67
146
119
122
115
84
128
58
58
109
134
107
79
110
67
158
114
178
110
81
105
105
88
116
67
180
119
110
122
111
105
136
55
146
118
68
134
125
140
162
105
111
64
122
56
127
67
123
95
110
137
128
126
77
55
117
171
123
69
128
139
122
126
138
127
93
105
110
56
126
178
77
138
169
112
37
56
79
37
105
126
126
37
86
69
132
138
67
122
58
92
180
79
152
97
110
77
110
96
105
95
81
79
138
92
119
110
83
37
69
169
138
115
105
83
99
55
55
91
139
77
105
151
104
138
99
134
92
55
105
94
101
114
55
92
92
178
130
106
92
55
92
178
75
122
77
58
109
86
86
122
55
109
74
144
109
146
122
134
105
92
86
107
122
126
137
92
156
92
102
118
55
152
69
144
92
132
149
144
84
92
93
79
144
37
58
105
93
91
99
120
111
56
100
146
91
128
56
37
67
117
92
130
105
138
92
92
126
151
92
55
110
92
139
119
111
79
92
126
37
111
100
139
110
122
55
178
152
127
122
139
83
126
56
105
139
111
111
101
58
73
128
118
68
104
58
122
67
95
105
144
119
92
77
86
144
110
138
110
107
81
80
102
37
124
115
37
139
178
140
178
92
55
55
80
109
138
144
122
92
122
79
128
112
160
138
105
122
110
122
55
58
140
72
107
127
92
111
55
55
182
98
77
110
86
89
138
55
110
126
122
146
126
129
67
55
169
107
93
87
110
79
109
126
122
95
37
158
152
55
83
105
67
132
55
68
142
137
99
102
130
127
56
105
69
55
56
92
152
122
67
126
178
127
92
138
131
139
146
126
126
138
123
152
58
136
140
138
117
92
139
93
105
104
139
138
115
158
55
126
55
81
105
178
140
92
122
123
136
134
114
55
111
126
126
105
144
126
144
152
111
178
122
118
131
110
93
55
105
111
37
105
91
138
128
58
58
92
118
67
67
77
55
124
103
180
92
128
138
119
92
110
165
105
86
67
119
119
67
55
67
93
111
58
138
122
77
178
128
137
37
92
128
110
130
92
37
77
56
56
104
120
102
152
92
178
127
128
152
107
56
119
130
127
91
110
86
122
138
110
114
56
199
158
56
56
93
55
140
84
110
105
148
103
110
136
168
122
124
105
131
69
93
105
127
79
147
55
68
104
120
107
128
92
188
86
138
137
152
104
56
67
135
37
142
138
92
92
58
160
56
92
67
103
37
139
99
121
138
104
127
68
89
119
124
75
92
124
92
178
69
146
80
67
105
110
119
126
162
104
127
178
75
55
92
100
126
55
92
110
55
105
83
124
138
140
124
134
92
110
128
55
84
144
122
109
58
58
91
137
139
75
178
93
152
92
110
126
124
64
122
119
109
80
55
93
126
127
126
93
55
122
110
55
140
168
67
93
37
151
110
105
136
67
148
118
126
98
107
101
122
117
165
67
126
72
84
105
76
169
76
126
75
129
100
96
87
144
58
72
105
75
56
138
130
55
55
144
91
104
68
122
37
122
55
67
91
144
55
122
114
152
75
92
104
101
55
165
163
138
136
110
163
55
119
138
122
128
56
110
110
126
105
105
93
138
98
92
138
92
79
92
128
152
58
105
111
105
138
152
55
84
92
138
136
110
77
120
165
128
138
127
100
126
109
101
58
92
122
105
58
110
115
152
124
171
55
180
69
122
140
56
67
171
178
132
163
83
105
138
128
92
119
104
126
118
92
69
126
78
67
92
119
138
56
86
67
159
75
69
106
92
91
74
110
144
83
138
68
105
92
75
92
55
68
37
180
55
91
107
126
75
126
77
55
131
111
122
91
55
105
105
126
169
92
111
181
58
134
139
58
58
127
114
112
122
92
122
127
105
92
162
106
122
126
139
104
127
56
118
140
163
93
120
56
37
106
142
128
178
148
92
178
103
168
144
178
67
93
122
106
109
139
110
105
128
92
74
144
145
92
86
67
178
149
129
106
165
92
137
105
98
138
109
69
67
37
152
92
139
110
92
139
105
107
105
130
104
67
148
127
103
56
113
120
122
152
152
37
126
139
104
86
77
61
100
68
110
132
103
105
111
55
104
126
138
37
93
138
120
105
138
84
140
123
122
122
169
135
178
136
79
101
117
92
126
118
93
97
91
124
110
131
139
67
132
127
118
105
134
103
89
75
92
122
37
75
119
142
178
93
130
110
126
112
79
55
126
56
108
56
69
122
58
55
109
119
146
109
148
146
138
126
110
122
92
132
93
92
105
75
131
67
144
107
86
104
164
37
144
55
92
136
104
67
58
67
77
110
171
152
92
67
74
58
110
92
104
142
138
67
103
92
101
56
105
127
119
138
130
75
111
138
81
93
37
134
152
37
97
132
131
158
37
92
146
92
107
126
127
110
131
57
79
104
160
126
92
98
126
197
56
107
91
141
120
92
105
127
104
110
99
92
152
110
162
67
152
124
58
126
37
84
169
122
147
105
138
145
127
110
119
55
122
105
126
105
165
75
146
55
67
55
105
152
144
124
55
75
132
188
93
111
122
55
168
139
67
138
139
92
86
104
91
169
139
127
93
106
92
37
92
126
79
101
93
138
122
127
91
138
136
114
110
92
92
138
105
107
56
104
122
92
92
123
101
102
55
37
110
37
93
92
92
178
81
121
146
110
169
58
122
103
105
77
79
178
126
178
83
95
127
56
58
139
93
137
164
56
91
134
56
168
67
121
126
162
126
91
55
99
99
93
104
106
168
99
126
92
104
92
56
122
83
104
104
92
58
101
92
104
126
163
92
107
92
124
37
152
123
55
37
69
111
119
69
127
92
169
56
75
55
97
92
67
180
117
79
144
128
92
122
138
55
139
92
107
110
119
93
168
158
92
37
124
77
139
92
95
126
134
127
55
55
141
67
93
55
103
122
127
109
131
137
127
105
119
56
110
163
122
119
152
127
138
129
102
105
123
110
55
140
55
110
127
127
58
122
178
125
92
74
110
103
126
169
69
178
127
91
80
89
55
67
178
178
67
138
138
145
119
123
128
178
112
105
141
73
69
92
117
144
55
37
56
146
100
79
67
138
104
92
119
151
93
107
169
126
89
105
152
182
99
55
138
127
110
169
69
104
92
84
83
127
55
83
163
55
146
92
107
37
106
104
99
126
55
110
110
134
77
119
104
138
77
67
55
55
58
122
56
168
169
83
144
110
92
160
138
145
117
91
167
109
112
119
141
126
126
83
139
152
114
120
122
99
67
126
97
99
110
84
140
92
122
140
105
126
67
110
121
137
114
69
124
110
93
55
104
96
109
91
110
58
136
122
139
56
138
100
37
105
119
105
103
127
91
138
92
93
104
146
107
69
96
102
105
162
128
77
150
123
110
144
109
119
142
128
171
97
126
152
68
55
58
55
152
103
75
126
122
92
122
146
138
55
79
55
141
104
128
92
55
109
114
92
111
140
76
95
55
158
122
84
119
122
77
145
126
79
152
92
83
92
115
110
158
92
105
138
117
93
169
135
105
152
110
138
104
122
106
132
55
55
110
105
58
104
77
87
127
92
104
144
92
56
75
92
109
134
92
140
126
144
91
126
100
132
139
146
92
119
112
128
122
67
138
55
105
56
112
152
67
77
111
122
55
105
115
139
58
67
107
67
126
119
109
77
109
130
136
104
95
98
128
138
111
58
78
152
128
180
103
135
112
139
92
151
93
92
122
126
91
138
67
169
107
144
136
144
103
122
129
92
75
75
127
96
67
140
98
126
58
110
178
135
138
124
178
126
58
124
92
92
67
83
105
146
111
74
138
148
101
86
137
58
110
109
146
126
142
55
110
69
139
115
139
128
150
138
79
58
74
129
92
69
163
68
146
110
92
97
122
56
110
69
164
127
138
122
55
91
126
110
127
144
102
112
123
67
67
67
178
83
109
163
77
126
126
68
93
162
122
131
152
91
122
58
169
137
144
55
92
123
69
55
92
122
55
178
67
122
104
81
96
97
93
139
152
86
108
138
122
112
95
144
137
55
139
132
158
74
75
122
104
92
139
148
127
112
107
152
100
122
138
69
86
168
95
148
92
130
128
93
110
178
126
138
109
160
122
118
119
78
73
92
138
126
92
152
122
106
107
67
100
122
119
69
139
105
126
128
92
58
145
37
104
128
67
99
138
69
103
109
138
55
148
92
144
126
74
58
93
55
167
141
137
55
127
84
74
55
120
123
55
146
104
145
152
104
124
37
138
109
105
92
56
128
69
139
112
150
138
67
98
145
91
128
72
93
110
55
120
107
139
98
69
103
92
160
91
148
56
104
110
128
148
169
68
104
134
75
125
127
178
92
100
122
92
92
104
119
68
122
105
142
148
148
77
109
92
119
138
102
110
152
55
105
126
67
148
58
152
67
118
110
93
92
58
67
140
144
162
127
91
121
55
105
132
105
67
110
92
128
110
139
103
79
144
144
105
139
122
104
163
106
56
55
69
145
143
148
84
72
103
92
105
138
92
92
110
74
130
167
112
140
103
152
140
130
109
169
92
140
127
56
117
58
168
110
103
99
84
130
111
178
93
55
105
127
58
67
117
178
180
105
93
73
105
109
99
37
164
58
137
148
122
104
152
86
99
58
126
104
98
178
149
97
103
118
103
99
123
104
126
69
86
139
91
37
105
124
104
104
113
142
162
86
180
104
55
114
74
126
127
152
112
105
77
76
93
97
122
148
93
67
77
56
37
58
144
105
145
109
140
126
92
67
101
104
152
83
122
86
55
55
103
67
134
107
122
105
106
67
55
115
94
107
123
142
139
56
126
146
76
83
58
152
100
92
92
132
56
132
109
169
75
75
152
89
55
92
97
145
110
92
92
69
119
56
55
106
110
92
56
122
112
178
93
111
146
92
122
126
91
103
75
126
126
127
126
126
108
152
110
69
99
88
74
152
148
92
74
79
122
75
83
138
117
128
171
104
178
107
120
124
124
131
122
111
111
178
106
99
120
92
138
127
152
92
99
68
101
126
127
77
122
55
137
67
91
127
93
104
56
105
163
104
93
55
127
107
127
104
121
104
126
119
98
122
55
55
145
110
148
112
101
118
152
139
89
123
84
122
86
178
67
92
58
93
103
92
80
93
126
76
111
148
138
122
105
79
134
126
122
169
93
75
126
122
97
110
92
77
129
110
96
114
126
108
83
110
102
55
126
142
139
92
37
55
108
91
110
92
55
169
120
93
55
92
122
92
122
178
67
119
79
56
92
178
100
92
178
102
67
79
58
37
130
122
138
136
122
93
93
55
119
89
146
64
128
127
37
74
92
158
134
58
171
78
92
79
77
55
86
105
126
119
138
120
92
122
105
92
110
95
164
127
58
128
123
55
99
130
102
104
56
92
107
37
127
104
114
98
92
67
110
122
37
131
91
55
132
93
37
122
56
124
139
107
134
92
83
146
56
92
126
83
145
110
134
95
123
67
128
125
37
180
139
98
83
178
103
110
128
92
89
110
37
108
118
105
92
101
99
67
74
55
58
180
111
169
127
75
146
92
111
148
126
146
122
106
100
138
126
110
92
112
67
105
91
77
169
105
110
138
67
74
58
55
104
37
107
81
146
146
68
77
104
74
92
122
98
122
102
86
110
123
69
122
130
67
144
56
58
169
138
122
122
178
93
92
138
122
105
67
37
140
107
68
122
91
146
93
122
110
86
180
56
126
58
99
105
56
69
75
105
104
105
93
119
163
122
84
180
167
122
93
92
37
104
98
122
122
37
99
151
56
105
98
144
106
67
55
104
135
79
126
84
75
139
92
86
84
93
140
56
74
37
127
107
105
97
128
67
139
139
110
152
67
79
104
67
168
115
122
171
118
144
79
37
105
152
122
67
138
110
141
55
95
139
58
93
111
110
68
92
67
163
121
101
122
102
69
137
152
92
110
56
105
92
104
138
104
111
123
122
165
131
58
139
122
69
86
55
178
88
68
95
148
122
94
92
180
178
122
104
86
182
135
110
92
128
105
92
139
123
104
138
126
126
84
55
108
58
74
86
117
100
92
128
101
86
88
122
69
178
126
104
107
92
169
83
92
58
121
91
79
140
126
110
93
93
119
99
56
81
161
79
109
86
93
56
92
144
127
86
120
55
178
139
129
110
86
119
67
139
74
119
140
55
58
122
138
86
64
99
105
123
86
169
171
139
97
104
97
79
131
67
93
86
110
146
124
110
67
105
91
37
160
126
119
111
141
109
37
79
138
93
55
189
136
98
91
109
107
169
135
139
69
138
109
152
126
90
126
75
115
92
92
124
107
111
69
77
138
92
162
138
105
99
126
55
122
77
83
132
156
105
104
144
103
55
139
114
156
126
167
148
168
120
109
93
131
149
103
58
152
126
178
109
67
109
110
92
135
110
126
84
127
149
138
138
171
111
178
126
80
37
122
93
144
150
84
110
144
92
139
92
55
134
56
122
96
110
88
55
77
139
75
148
102
69
93
126
115
125
126
126
92
58
126
130
171
77
78
97
101
55
58
129
171
98
110
37
105
135
97
37
89
86
56
128
97
102
136
134
110
119
126
105
92
93
144
110
126
67
58
92
91
118
178
130
86
93
74
104
163
81
129
122
117
91
124
92
135
112
138
97
178
122
139
152
152
93
146
126
107
181
131
69
146
112
55
122
120
69
67
106
178
78
126
127
122
169
69
128
37
89
92
134
104
56
105
115
79
105
122
146
139
55
131
104
37
77
77
122
98
55
139
89
110
55
140
111
68
69
67
118
86
126
112
103
127
88
92
86
105
72
122
93
130
104
104
79
79
110
126
189
37
93
75
120
55
128
127
127
122
130
95
101
93
79
139
75
126
105
101
79
92
139
178
112
67
106
139
122
55
126
37
56
144
92
91
112
132
77
107
146
132
69
92
102
169
67
123
122
75
111
101
109
55
55
138
122
105
149
115
127
67
134
128
99
80
134
126
88
74
169
134
152
105
122
148
37
119
117
55
138
109
55
169
101
128
138
111
126
126
140
37
178
55
138
86
81
93
92
110
37
110
119
142
111
58
119
75
171
138
78
110
178
67
104
79
109
169
79
126
119
105
92
67
142
138
124
80
144
74
110
93
110
178
110
105
58
55
103
98
99
163
114
126
180
92
97
129
163
79
124
124
83
127
92
91
91
55
77
110
120
122
93
104
114
37
67
139
145
37
110
152
180
92
140
55
124
102
147
126
93
123
118
122
111
56
55
110
127
122
131
86
121
138
120
88
123
110
109
105
128
127
110
110
156
122
55
144
37
122
126
139
137
106
56
146
122
93
93
178
94
56
134
127
56
138
92
37
126
58
79
55
110
58
77
105
135
106
127
128
131
104
105
87
93
67
139
92
92
140
126
105
125
67
178
131
119
110
88
111
119
93
93
108
69
120
115
139
56
79
110
169
144
105
146
139
68
58
134
140
110
68
104
122
158
178
146
92
110
123
56
80
182
69
67
92
128
139
101
104
96
104
148
169
138
127
110
105
81
148
110
103
107
139
112
125
79
55
74
68
55
79
79
163
128
105
55
92
74
93
55
105
138
79
178
126
126
123
129
127
79
142
37
168
105
122
103
138
131
140
103
144
152
139
120
117
110
80
79
69
148
92
92
126
103
107
55
146
125
126
55
138
105
121
119
138
153
122
58
92
101
152
89
134
144
122
74
117
92
127
93
122
98
140
99
127
152
86
139
152
139
127
177
55
93
105
92
92
132
178
37
75
140
144
67
58
110
110
131
144
104
145
37
58
122
167
92
124
74
91
127
91
139
93
149
55
56
107
110
58
111
55
145
178
125
91
178
105
69
93
144
178
55
56
130
119
127
86
93
123
163
69
127
122
138
56
103
138
138
83
92
74
67
124
138
146
139
120
92
110
77
89
101
93
58
119
69
109
138
123
126
178
80
127
83
122
105
123
152
92
93
55
67
169
93
126
79
75
76
75
152
105
146
55
104
139
131
126
92
134
131
37
126
91
151
126
104
97
74
92
117
104
105
146
37
126
111
86
58
136
99
148
132
55
149
148
81
110
93
139
110
131
126
171
100
138
111
132
86
91
139
138
168
110
99
56
87
139
83
118
122
110
103
91
111
128
99
137
110
97
56
56
123
126
84
127
109
105
55
37
178
103
99
105
111
56
138
58
105
92
84
123
67
83
116
107
105
146
74
128
104
153
146
69
138
178
92
117
124
110
86
56
122
55
128
120
77
122
93
104
127
139
92
55
127
103
123
146
58
75
37
58
67
105
110
146
122
56
122
109
131
92
92
67
99
136
140
92
126
144
58
178
105
119
122
92
139
138
171
169
122
136
111
139
56
55
67
93
128
140
140
115
138
74
110
152
68
134
156
144
105
92
107
92
110
126
79
37
122
152
56
101
68
67
101
89
89
55
56
99
92
56
139
74
86
127
111
119
138
74
139
77
178
98
37
122
92
110
74
122
127
92
67
152
123
108
109
92
80
160
86
138
105
126
86
95
75
92
160
64
55
142
127
58
123
119
86
124
123
67
139
128
77
74
91
189
128
55
93
83
140
105
55
138
126
135
77
148
55
105
56
139
56
139
106
104
37
138
104
58
110
67
37
131
112
37
104
105
114
128
147
110
86
97
134
75
109
111
67
105
56
104
105
92
126
55
93
126
55
120
88
158
92
124
109
105
104
144
122
126
67
182
74
103
137
105
74
119
69
139
88
123
92
77
104
124
107
125
126
144
122
94
115
111
92
96
92
86
77
64
55
131
77
101
178
122
97
86
37
92
55
144
134
55
58
158
122
103
92
127
77
92
118
134
92
126
89
111
144
134
144
105
138
93
111
79
56
87
92
103
164
105
122
105
164
123
122
160
148
92
68
104
123
69
138
55
55
105
105
126
123
126
91
75
109
81
98
69
122
91
146
97
56
110
110
67
84
152
105
58
126
99
138
55
138
55
136
105
138
147
122
111
124
127
135
79
152
138
139
134
58
103
144
139
140
37
126
105
93
55
122
138
103
101
122
126
146
100
142
126
138
77
110
138
140
124
104
122
68
97
130
139
131
104
92
139
79
56
55
110
69
146
107
100
105
37
69
124
67
169
92
103
164
75
91
105
109
74
111
122
83
74
55
104
144
92
79
138
93
107
69
126
105
124
37
144
104
144
138
91
122
104
95
138
55
58
126
84
122
105
165
134
126
67
138
74
124
130
104
67
97
55
130
122
93
99
103
104
37
138
93
152
171
93
56
104
55
83
146
55
92
92
92
55
37
56
109
95
128
138
138
152
69
122
87
92
126
131
109
92
110
126
87
110
105
84
144
139
37
86
126
103
80
126
138
108
128
55
146
69
77
144
105
55
105
67
55
110
108
146
67
79
158
160
110
122
79
128
127
131
110
92
37
138
79
135
67
111
98
140
168
55
138
119
119
55
92
136
152
93
105
79
56
104
89
162
99
93
107
79
56
110
55
104
69
119
92
125
55
111
101
189
86
122
126
134
108
122
136
106
117
92
122
137
97
105
131
152
114
75
75
101
107
110
105
107
126
56
144
37
77
107
169
56
105
122
169
156
144
138
77
144
104
56
86
55
128
130
105
117
131
123
95
152
110
102
122
55
144
126
158
112
139
88
56
139
110
56
105
138
91
126
55
119
130
110
146
86
110
104
139
97
122
178
92
144
92
79
148
93
129
139
56
104
112
107
168
104
146
119
69
119
138
105
137
55
100
134
127
95
128
152
37
93
37
134
122
107
160
138
164
147
67
140
144
99
84
115
99
110
105
110
93
55
105
99
105
122
99
197
111
55
67
103
74
79
104
122
58
92
92
144
146
104
126
120
146
135
120
139
128
169
56
138
138
75
182
143
91
138
138
178
126
119
132
37
110
123
79
129
92
105
128
171
110
140
165
74
144
107
144
110
145
106
148
91
180
110
104
83
126
86
67
103
107
93
123
126
81
122
130
76
37
167
132
145
88
111
122
107
178
144
58
111
122
105
138
142
114
110
106
146
105
100
148
117
37
72
146
126
162
122
104
171
93
152
110
83
111
106
152
103
91
134
93
55
138
105
119
182
126
79
79
58
55
152
92
97
134
91
93
109
105
139
92
146
104
107
169
122
56
55
138
118
125
111
104
146
128
111
74
163
146
55
55
145
135
121
138
122
99
127
122
144
126
104
122
55
106
104
123
67
171
126
98
152
104
56
58
92
165
86
140
123
122
123
91
106
56
37
109
67
139
114
122
105
93
56
97
134
103
122
127
124
139
126
122
77
162
100
140
55
122
107
92
77
97
130
37
138
77
139
106
92
126
122
139
88
169
178
114
126
122
122
126
131
58
67
122
101
179
124
56
109
110
110
92
86
138
58
92
67
77
92
107
118
67
126
128
140
128
67
152
158
55
105
178
69
128
139
162
124
146
139
84
107
67
105
151
55
92
93
92
91
92
91
102
122
104
141
111
92
122
144
139
111
110
110
126
114
69
152
58
119
93
55
110
117
140
92
79
147
136
119
69
144
92
171
104
117
122
140
75
126
105
83
79
91
88
37
58
140
113
169
105
99
123
67
122
100
98
69
83
110
136
126
121
123
109
67
100
93
84
92
92
55
168
77
104
119
92
139
103
93
110
152
138
152
67
110
69
128
110
139
56
126
68
169
77
114
100
140
87
69
58
37
107
93
123
55
67
134
92
93
133
145
152
107
110
67
131
142
171
83
104
55
138
104
103
112
110
122
123
115
139
147
126
104
110
105
55
110
55
55
55
103
146
105
119
99
97
55
158
95
92
138
138
84
86
119
91
75
162
67
93
139
104
123
55
68
122
55
92
128
171
55
69
152
92
138
69
138
105
122
162
127
168
95
126
125
105
55
68
92
140
129
139
119
98
107
67
98
103
178
68
148
92
102
146
108
110
147
169
58
126
83
110
138
169
110
144
107
55
126
68
123
108
77
130
92
75
126
123
69
145
130
126
124
105
98
55
56
87
110
75
105
123
92
111
79
120
163
74
92
136
58
68
79
134
126
91
142
104
109
139
148
100
92
106
126
55
81
122
110
37
105
123
122
124
79
126
56
119
92
110
89
104
67
106
104
123
104
107
100
68
132
67
126
104
74
124
119
85
74
128
111
98
122
180
103
136
160
83
110
119
67
151
119
110
163
103
84
104
109
111
122
37
91
180
109
67
138
163
131
138
102
138
112
126
91
127
126
122
105
91
99
127
122
55
56
126
123
110
37
139
91
92
56
58
55
116
99
126
127
105
93
111
123
138
93
180
104
92
111
93
114
139
130
92
119
139
127
37
110
138
126
169
122
93
169
110
127
106
56
146
101
77
92
103
122
86
105
103
79
137
86
55
149
134
75
69
138
108
75
79
127
178
92
115
93
104
104
128
97
118
69
126
91
138
139
79
69
130
83
55
117
107
106
93
134
136
123
122
145
92
126
127
88
104
111
104
146
108
56
92
111
128
93
93
107
132
102
124
55
152
134
79
55
168
121
123
163
56
37
112
67
67
78
126
56
105
123
37
105
109
105
153
107
98
124
110
144
92
105
152
110
84
74
55
124
119
79
56
127
107
150
128
79
107
126
80
92
93
104
93
143
103
122
67
89
106
122
55
110
67
138
104
104
163
110
78
118
110
110
112
94
140
67
107
163
77
119
56
55
92
102
152
108
144
101
123
69
37
56
92
92
136
122
58
134
104
123
139
103
111
105
126
92
93
74
132
105
110
122
119
138
68
75
69
92
122
55
93
37
111
180
55
134
86
129
110
142
178
139
126
111
180
93
93
69
91
165
127
130
55
93
122
112
56
91
128
138
123
81
92
92
67
37
103
105
103
145
126
104
119
182
138
124
144
169
140
152
118
93
89
100
123
55
124
58
144
138
111
100
67
124
146
110
139
86
56
138
105
140
97
101
56
140
152
97
105
104
86
140
140
83
98
139
138
178
104
67
169
169
92
128
55
138
180
127
127
110
126
121
107
92
119
169
148
89
89
92
139
126
148
165
110
104
75
79
86
109
144
103
92
105
110
148
93
132
109
124
91
91
56
140
58
67
122
122
92
105
95
37
93
164
110
122
92
106
67
105
105
37
55
105
119
146
41
55
92
67
105
152
164
122
141
104
77
126
138
138
123
126
92
37
122
55
126
79
121
126
83
110
86
104
37
138
104
118
69
110
67
132
130
146
128
56
126
114
105
110
104
178
109
91
67
37
92
112
55
107
131
145
110
178
92
103
92
146
55
93
67
69
119
67
99
95
123
131
152
99
148
92
92
110
105
83
92
110
55
93
69
67
102
149
92
103
69
67
69
92
58
126
67
77
56
114
121
119
79
56
98
37
178
134
105
122
84
122
86
37
58
111
152
109
138
105
128
97
105
123
127
79
92
128
93
91
122
109
105
178
111
105
117
123
93
152
56
94
142
178
119
86
123
56
110
138
83
123
69
105
110
109
178
126
106
126
55
130
119
56
126
37
128
127
92
93
127
136
110
55
134
105
92
138
119
131
91
132
75
109
58
169
126
136
140
146
122
138
123
123
87
122
138
124
153
127
171
103
110
152
152
98
93
37
104
93
178
97
110
110
138
72
127
128
148
127
127
126
68
122
93
68
75
99
89
92
122
92
104
167
114
139
84
122
122
122
127
92
107
142
91
105
109
37
68
101
98
128
121
56
56
55
99
110
109
122
55
120
122
58
145
145
92
56
127
97
135
92
162
134
130
149
37
114
110
55
136
79
92
86
68
110
68
141
92
109
144
55
126
138
69
110
67
105
78
55
178
147
128
128
103
91
139
92
125
92
93
105
55
127
128
93
109
127
55
156
141
56
67
122
93
37
99
122
134
102
105
127
178
126
126
92
104
69
130
56
105
124
148
122
99
139
69
91
127
144
93
109
58
178
79
124
79
74
97
107
98
115
139
126
128
75
92
55
122
127
152
67
55
105
128
101
146
104
104
97
134
93
107
77
56
149
91
93
138
127
55
67
107
138
131
92
58
58
68
58
126
105
122
103
128
95
178
138
92
107
55
139
93
122
139
65
148
148
119
77
139
152
67
122
95
104
92
55
129
118
84
126
138
58
69
138
144
105
67
146
149
55
56
92
127
110
124
67
122
120
104
139
152
124
74
110
144
127
83
138
138
118
139
124
130
138
110
119
119
139
148
74
86
88
110
75
105
146
92
138
99
86
112
55
101
75
83
123
69
122
127
140
104
139
55
127
97
89
107
104
178
99
93
138
136
99
178
99
126
75
178
110
102
128
83
188
122
110
79
105
130
110
138
104
178
111
55
145
105
92
127
100
178
148
74
114
127
81
55
139
88
146
86
169
149
144
58
55
67
98
86
74
168
123
163
58
103
86
138
55
83
146
138
127
37
105
92
126
109
67
106
139
58
92
37
108
91
122
105
37
152
105
169
178
89
95
126
110
56
122
131
55
126
152
78
152
148
55
93
146
124
123
105
86
37
126
110
81
104
110
111
104
92
37
37
91
122
92
83
92
91
87
95
119
152
114
126
122
86
92
126
58
68
148
92
104
122
127
75
123
144
56
79
122
55
110
117
110
102
152
122
138
144
113
97
139
110
111
88
69
146
169
139
126
112
136
107
97
127
132
56
123
126
145
178
152
55
110
79
74
92
67
84
134
158
126
69
178
86
140
138
109
90
122
69
128
58
92
123
79
91
92
146
85
58
138
111
106
92
55
68
167
138
110
93
122
123
58
58
126
178
128
68
122
74
112
144
87
144
92
121
105
95
79
106
56
120
152
98
140
93
107
92
69
92
138
75
124
92
79
92
75
199
105
89
37
55
91
67
126
139
55
86
69
98
55
178
68
127
115
104
92
134
105
105
169
106
134
140
107
105
104
114
120
146
104
67
55
146
127
130
132
79
127
127
137
55
134
122
106
37
58
55
97
67
178
93
93
67
126
138
55
126
94
97
134
101
99
92
122
91
37
123
138
58
77
99
128
134
37
110
139
127
106
109
77
69
126
97
69
122
149
138
167
84
58
92
99
110
140
126
140
119
37
92
92
109
92
124
123
140
122
79
105
144
127
69
99
128
105
128
103
110
126
115
68
110
67
126
158
139
117
69
108
75
110
92
58
56
139
84
98
127
127
138
138
91
110
126
105
85
105
58
58
144
55
131
138
92
67
105
126
56
171
137
146
79
123
150
55
110
169
91
92
98
97
100
171
127
56
86
126
122
136
117
132
126
74
168
69
111
110
101
100
144
144
56
110
130
178
93
122
77
110
86
56
92
55
124
169
105
110
144
179
105
84
77
68
81
138
92
56
131
138
110
55
125
144
128
139
127
110
79
150
91
178
112
101
111
104
56
180
55
92
122
139
138
74
67
55
56
104
79
122
97
37
69
128
122
74
75
55
123
144
118
79
92
138
110
75
89
105
90
55
105
104
55
110
56
68
139
95
55
55
151
103
115
58
126
126
105
67
104
92
112
127
56
171
110
101
110
140
126
69
164
100
92
105
158
144
58
37
178
80
58
67
122
105
138
91
103
37
77
103
55
123
138
92
148
99
104
127
99
97
37
126
122
56
162
75
67
120
93
178
122
37
127
120
139
122
131
110
92
99
99
139
75
86
80
126
136
126
116
67
112
130
104
58
137
67
132
81
83
37
69
105
109
126
86
97
92
160
111
138
67
127
140
107
148
109
110
168
86
95
110
75
122
139
168
58
158
110
79
67
107
101
140
86
104
80
110
126
144
139
138
93
100
110
110
69
145
79
89
111
127
98
148
123
138
131
92
98
95
37
92
138
69
67
122
101
37
58
92
93
138
144
139
67
80
92
77
135
121
56
115
93
178
93
178
93
99
138
56
81
67
148
100
127
69
104
158
122
139
91
56
108
101
114
126
126
158
126
89
93
147
147
104
139
128
169
100
91
103
122
110
134
123
107
138
69
119
144
55
100
117
75
75
56
140
180
105
138
55
178
152
126
77
146
178
77
65
146
180
171
128
139
122
83
105
126
110
80
113
118
84
105
67
93
138
55
55
148
171
94
122
111
67
109
69
169
107
158
110
126
139
136
125
129
127
109
104
56
99
110
128
122
55
79
138
92
37
105
126
69
77
120
105
37
105
74
112
55
77
178
110
77
81
83
89
140
107
67
138
146
122
105
115
99
144
128
122
112
58
55
123
69
76
131
101
83
74
103
92
55
178
126
55
86
72
131
127
159
143
127
93
165
139
110
122
92
124
37
92
180
152
152
163
92
112
56
134
110
126
167
126
74
146
140
92
68
118
126
123
138
103
92
129
101
37
127
138
75
138
58
83
178
138
162
81
92
100
152
110
37
104
139
140
84
140
103
79
55
136
126
55
111
144
106
93
99
69
69
122
110
110
105
122
109
114
93
55
93
138
58
92
92
67
108
75
105
144
117
139
95
92
178
128
74
92
110
67
55
92
119
139
86
136
86
93
79
135
112
126
115
138
123
127
88
132
104
104
83
138
67
104
79
124
126
145
162
100
103
119
180
98
93
113
126
110
104
152
103
105
162
92
119
126
104
140
141
56
103
79
138
122
93
55
124
87
103
111
168
105
122
69
129
56
144
144
111
135
104
126
110
178
144
122
104
67
139
171
56
110
171
141
171
95
77
55
144
148
67
110
152
105
119
110
91
138
117
126
92
136
91
92
87
122
121
158
123
138
163
69
138
110
171
126
74
67
86
109
109
127
58
69
110
93
152
152
91
127
124
144
106
134
69
79
115
92
138
92
92
152
126
91
93
104
74
119
146
55
55
109
56
156
81
122
91
101
92
104
110
109
144
103
127
93
158
93
92
77
55
67
126
93
144
134
79
74
110
145
55
152
102
136
92
152
67
144
56
138
105
92
140
56
138
160
126
152
67
89
110
127
37
138
101
146
83
55
169
67
98
37
92
55
58
93
144
83
55
158
105
97
149
92
58
68
92
92
55
138
92
122
110
102
104
106
83
127
91
112
132
89
139
67
149
123
93
92
105
168
55
124
124
149
128
67
124
106
126
160
58
103
69
126
122
134
92
128
104
91
105
130
92
67
152
122
77
112
58
55
55
178
146
122
122
128
140
91
86
119
114
139
115
127
145
111
122
91
55
111
92
111
144
147
99
163
134
104
105
92
122
55
138
118
56
93
108
96
104
69
140
37
67
103
122
139
110
126
109
55
156
110
122
138
138
128
78
178
168
134
93
131
122
122
69
188
178
93
104
95
104
67
78
89
55
67
138
78
105
93
37
97
112
68
92
99
55
152
139
122
113
75
139
99
104
105
86
69
55
110
67
79
110
138
99
67
125
126
144
92
119
122
67
146
127
122
107
56
124
74
67
178
124
126
93
122
142
106
124
101
122
118
67
83
56
146
124
127
91
67
152
139
92
126
100
124
93
115
144
100
110
178
122
67
127
67
134
152
55
125
130
69
67
110
55
67
92
138
67
158
105
93
93
92
55
122
122
105
55
67
149
69
81
104
104
134
75
88
113
83
77
98
104
58
110
178
134
188
89
126
178
122
68
103
105
123
93
110
138
139
124
127
89
86
124
111
91
104
120
152
110
140
152
110
69
67
98
123
97
92
75
131
55
123
128
37
126
107
138
67
144
93
104
92
67
86
93
119
132
109
101
56
127
138
104
99
84
55
92
126
122
122
140
140
138
128
122
67
144
55
127
75
122
92
55
111
67
77
107
111
74
91
37
78
75
104
110
140
92
37
122
152
92
69
92
122
58
81
93
74
37
110
138
69
124
58
134
102
37
73
112
122
91
80
58
68
86
102
92
146
127
75
123
37
55
69
128
84
146
99
110
92
105
69
132
75
105
152
86
55
134
139
56
94
109
110
140
150
95
98
169
92
88
139
56
122
55
103
79
104
72
55
93
92
144
67
55
55
130
138
74
146
126
74
122
86
136
164
138
164
92
92
86
134
144
123
110
93
105
103
134
138
83
80
169
104
105
79
99
112
55
67
91
110
152
104
104
77
131
106
105
93
138
146
124
55
144
77
93
93
55
152
127
137
92
134
126
55
111
126
122
109
105
55
128
55
75
107
126
92
124
83
171
128
92
55
126
104
77
55
100
122
77
165
84
127
105
69
177
92
92
131
122
92
67
136
147
99
67
69
110
93
111
95
105
114
67
122
92
114
127
142
89
144
79
92
79
122
55
152
104
92
67
79
123
128
137
93
139
109
145
105
58
92
140
130
144
92
120
111
99
122
138
107
55
144
110
139
117
56
164
110
178
37
79
111
109
109
92
126
152
105
126
92
79
112
178
178
111
152
138
105
122
86
127
158
55
119
55
67
110
55
101
122
126
131
67
128
67
93
93
56
127
96
93
122
115
105
126
77
127
86
97
128
93
55
56
139
127
77
92
119
128
126
122
55
104
163
138
110
120
94
126
93
169
55
67
92
91
140
146
127
110
37
122
67
92
126
152
126
126
104
55
110
55
109
131
88
55
92
152
128
126
107
92
56
55
99
160
110
56
93
110
111
126
122
144
56
104
55
69
107
93
178
122
122
145
105
93
119
37
77
86
93
89
152
79
163
139
91
123
99
105
79
130
77
144
93
134
156
137
122
107
146
130
105
81
103
86
93
146
109
76
128
69
105
178
138
55
105
55
69
37
110
79
88
104
112
74
110
122
86
126
110
55
123
139
178
91
105
123
92
110
67
79
86
69
139
73
122
144
92
92
92
110
92
105
86
58
69
105
128
86
138
93
110
99
79
131
111
144
114
104
69
92
122
71
144
138
105
89
93
100
67
86
136
122
55
79
92
128
105
137
132
67
92
69
110
93
122
55
108
98
111
164
134
56
69
114
86
92
123
37
86
122
107
67
92
55
69
138
92
122
121
109
67
128
109
67
110
105
92
101
91
105
132
92
140
105
128
55
169
55
139
92
139
91
158
139
92
140
126
127
69
86
171
105
74
92
123
89
127
126
58
55
127
67
140
100
105
105
74
37
146
55
110
126
138
109
104
136
105
91
92
152
92
118
124
92
64
140
37
127
163
67
69
79
127
92
112
122
92
127
125
92
55
93
55
68
137
92
126
138
79
130
55
92
69
137
110
123
74
130
55
118
94
93
109
130
104
135
144
110
92
93
168
129
37
122
110
86
77
55
163
83
67
37
168
169
67
119
131
138
37
105
178
111
55
68
134
93
151
55
119
55
120
56
126
144
127
122
130
105
69
67
140
92
55
126
41
67
98
37
120
148
91
93
168
110
144
138
124
92
178
37
92
67
105
67
126
68
108
136
114
120
138
110
136
91
138
122
79
128
163
109
55
144
124
146
67
146
89
120
111
126
182
64
122
139
95
119
93
92
55
158
65
127
110
55
105
141
136
92
77
146
95
110
104
79
110
138
92
89
110
58
56
139
120
86
145
122
199
138
93
122
134
119
79
152
148
118
188
93
58
99
144
168
72
69
178
152
86
134
180
67
115
91
144
92
110
126
132
55
126
105
111
146
92
111
188
92
92
58
123
128
126
103
97
139
119
55
84
111
109
126
67
103
55
111
119
114
56
126
134
88
138
160
92
92
55
169
74
92
139
103
83
67
55
86
55
108
112
55
127
104
101
98
92
119
165
92
118
107
152
37
128
110
122
127
122
128
93
140
110
138
127
79
142
104
164
108
180
93
92
126
93
69
111
135
58
78
37
56
93
92
77
67
64
77
93
92
132
110
87
171
117
88
92
127
144
67
144
128
93
123
75
58
56
92
91
131
104
120
180
127
68
123
117
86
127
56
146
107
119
125
126
105
93
119
105
123
139
99
89
152
122
81
100
167
139
169
127
162
97
104
120
103
92
122
107
158
67
68
111
93
58
92
110
103
88
138
93
163
75
99
126
87
55
93
103
103
142
126
92
107
126
74
56
55
144
111
128
86
135
128
105
92
92
124
92
103
139
55
56
91
56
56
81
126
99
92
117
119
126
99
138
167
122
104
158
110
180
169
110
92
119
93
152
37
93
104
145
131
74
112
126
168
122
67
139
104
67
104
92
104
104
139
104
122
92
138
122
110
139
123
109
77
92
93
56
110
123
148
92
178
75
169
178
77
105
148
92
128
92
99
92
140
122
126
58
122
134
55
91
56
140
92
126
117
129
105
110
55
109
86
178
107
55
110
93
104
107
126
105
140
130
97
110
144
144
92
92
103
122
93
126
148
64
99
95
138
105
104
169
93
92
110
77
92
110
104
69
127
92
178
67
178
102
132
93
67
110
81
98
117
169
114
128
138
75
180
122
124
92
131
123
75
138
169
139
56
55
146
109
124
55
122
111
80
91
112
124
93
67
77
58
122
148
75
92
67
138
169
92
104
37
110
55
138
128
122
67
122
135
132
79
144
114
138
114
111
92
126
55
110
93
92
92
100
92
122
92
126
105
140
119
56
105
128
163
111
98
169
56
146
138
122
127
93
123
110
95
138
164
104
91
110
117
132
152
119
58
138
150
99
169
119
122
169
96
110
88
136
92
122
106
105
107
138
119
112
149
105
104
126
122
127
164
55
109
126
104
105
84
58
111
127
125
132
178
92
105
105
105
132
75
119
93
86
96
93
92
127
122
108
93
92
55
169
91
56
83
131
68
101
99
122
124
126
122
162
120
178
134
103
127
132
139
92
105
152
100
152
122
127
124
92
110
93
98
91
111
103
171
111
110
55
169
79
58
126
122
138
127
88
130
122
138
152
127
110
122
58
103
177
126
104
178
109
152
171
92
86
139
56
55
55
164
140
77
93
110
95
122
126
124
119
111
119
37
55
139
120
55
37
79
135
92
132
178
55
126
56
86
56
93
178
129
75
122
92
56
146
163
122
79
79
111
80
146
79
143
37
178
122
97
144
118
121
130
56
104
123
146
122
119
109
55
67
74
99
68
69
92
123
162
130
77
37
99
119
122
110
100
169
111
146
77
77
106
55
178
134
99
146
106
127
74
135
168
158
130
124
102
100
92
149
152
80
119
74
178
91
86
144
178
147
75
110
102
144
110
69
56
129
67
164
152
122
91
123
139
55
55
131
122
58
141
124
158
105
69
86
158
138
84
110
99
122
134
163
127
114
127
138
138
105
134
134
68
144
104
74
95
104
138
79
114
114
92
122
180
64
55
123
122
119
97
77
92
123
67
56
56
104
92
97
144
69
103
86
55
105
55
105
67
56
118
55
123
169
110
95
148
69
123
105
55
126
67
98
178
128
111
56
152
105
37
158
68
135
99
58
146
77
104
126
92
112
104
56
134
67
126
111
152
109
79
86
169
122
156
138
55
93
92
92
138
55
109
69
119
91
127
122
110
55
122
160
144
67
122
100
75
127
55
75
171
83
112
55
80
138
84
141
122
138
108
55
136
101
67
92
180
169
120
109
138
83
134
110
148
144
77
67
92
115
128
91
55
55
152
171
101
56
123
122
138
152
136
74
67
138
83
152
139
67
102
157
178
103
123
110
58
84
74
103
105
92
146
92
92
58
86
104
139
178
131
137
126
92
152
155
67
122
110
122
56
86
169
111
119
55
103
104
140
91
92
107
114
105
79
122
89
77
109
107
119
156
117
178
122
126
56
81
69
131
105
123
126
92
37
144
178
97
111
58
95
158
131
92
138
119
107
178
127
139
77
95
144
147
76
92
75
58
146
67
56
74
74
92
126
67
91
126
152
152
56
83
111
56
91
126
95
138
56
156
103
128
69
127
92
68
86
92
67
73
58
92
140
109
134
104
92
178
140
126
164
93
117
105
140
55
123
139
74
95
144
96
152
93
67
88
37
92
136
91
126
139
77
110
134
110
84
146
141
92
129
158
119
138
78
74
92
119
93
93
107
110
148
119
138
56
120
91
75
92
126
109
124
122
97
104
146
67
80
164
148
134
67
118
105
91
142
55
139
138
138
55
146
137
93
92
86
122
119
197
138
138
139
137
79
140
118
126
103
103
132
77
111
152
83
178
91
146
86
138
138
72
144
92
163
93
122
93
152
110
122
112
101
92
67
178
74
105
93
138
126
99
122
92
74
91
146
91
122
111
140
67
84
162
126
160
126
67
56
122
103
138
99
127
106
110
130
77
164
111
127
110
122
114
86
58
86
74
123
91
117
96
106
105
140
110
138
67
104
119
56
37
93
75
104
122
37
99
67
119
79
37
114
114
126
55
118
135
128
79
164
122
152
139
128
122
123
92
92
55
92
169
107
109
104
56
141
122
67
119
126
92
86
56
103
105
92
126
67
139
67
119
86
83
78
74
93
93
123
55
109
103
118
102
122
126
138
119
110
67
139
110
55
139
152
86
138
144
94
144
104
92
92
111
168
148
122
126
105
111
92
107
122
114
151
146
138
109
86
111
110
77
68
122
91
81
138
110
126
55
126
105
55
139
126
86
99
58
81
104
55
156
105
126
123
110
110
123
109
127
126
129
88
93
84
100
79
56
67
74
88
93
138
58
160
67
122
67
144
104
169
67
56
180
139
169
89
128
139
98
126
56
106
130
92
108
138
144
124
79
110
92
105
138
58
140
37
124
107
119
103
144
86
152
114
95
138
105
93
126
84
107
135
127
37
122
74
122
132
122
110
158
110
97
67
119
92
67
86
111
95
109
92
104
67
87
105
122
122
141
126
93
122
146
126
92
107
138
55
114
133
111
119
79
122
55
93
147
92
69
92
110
139
91
93
37
79
97
127
97
128
127
92
119
102
105
163
110
160
104
79
86
37
126
178
138
69
92
128
92
119
74
107
171
58
138
55
199
100
103
67
122
152
144
105
55
67
99
132
97
163
151
169
99
152
91
100
110
88
126
168
37
140
101
110
138
106
128
134
95
55
56
111
58
74
125
156
95
68
109
104
110
134
74
92
67
58
139
146
126
81
126
126
138
55
92
152
144
58
69
122
92
92
86
106
132
98
91
99
69
139
128
127
178
80
92
126
84
79
105
119
99
74
67
37
68
67
152
112
88
92
120
97
93
97
37
69
171
92
112
67
77
138
142
79
149
138
105
130
126
104
178
92
87
37
138
110
55
140
140
67
92
86
104
122
130
124
192
55
104
162
106
92
105
109
100
37
146
84
92
122
105
122
138
131
56
92
86
126
122
122
114
58
69
178
104
122
58
131
55
128
105
122
134
135
103
55
61
55
92
81
77
86
110
103
132
122
108
58
148
55
139
122
146
79
126
140
138
118
67
119
55
118
112
67
56
139
140
56
120
139
55
124
67
74
146
92
178
126
92
67
107
128
92
79
92
92
79
139
110
95
128
129
55
123
89
67
126
128
136
93
122
92
117
72
93
92
55
134
69
79
56
104
107
37
126
124
122
99
111
92
139
143
107
69
69
122
58
114
111
58
130
127
139
55
139
146
37
129
105
139
95
75
56
111
91
105
127
92
135
180
127
67
164
126
124
92
136
67
84
86
160
144
97
122
139
97
55
92
86
152
67
126
138
79
107
123
86
120
74
122
104
92
92
110
105
122
77
152
98
92
146
67
105
122
107
105
107
67
75
126
139
178
188
110
131
109
77
99
37
130
144
86
79
127
89
158
110
130
105
58
119
91
144
128
129
105
144
92
117
122
103
100
138
92
111
111
146
122
76
134
74
74
149
67
146
56
99
128
152
56
126
75
138
124
92
134
105
171
93
69
98
144
105
122
120
111
146
112
92
141
136
111
169
138
93
126
178
55
127
92
148
55
37
92
93
74
116
37
93
92
55
110
99
55
58
123
67
101
128
128
178
126
37
86
56
139
131
106
122
152
122
105
56
134
138
93
114
93
110
95
106
93
79
138
77
109
110
101
136
94
123
126
55
56
112
111
122
142
104
93
124
125
104
56
79
118
88
67
135
92
105
126
92
95
122
144
86
73
136
171
122
146
109
103
99
103
71
110
79
149
91
58
146
107
55
110
109
139
138
132
92
126
126
110
128
98
123
152
55
83
75
125
55
122
138
125
69
160
104
67
69
126
67
139
152
138
110
83
88
92
92
110
64
152
122
111
97
92
169
107
92
110
108
92
171
99
104
118
118
55
56
126
128
105
160
132
92
92
56
79
132
169
110
110
146
136
92
55
102
91
127
92
75
127
168
92
139
86
86
130
109
114
103
55
126
79
122
79
56
126
122
92
134
95
67
105
112
105
69
101
86
105
75
138
130
104
102
152
107
122
56
109
126
122
140
76
56
74
67
139
122
92
138
105
138
75
128
138
69
79
140
131
110
99
93
119
105
128
135
105
93
126
105
92
128
122
168
55
110
171
126
56
55
96
139
37
79
92
99
119
67
37
146
138
122
98
127
92
67
92
122
37
89
132
98
67
178
110
55
55
169
127
58
134
69
126
69
86
67
105
104
56
67
56
137
67
127
100
131
93
114
169
105
67
127
127
55
93
56
142
144
124
55
67
139
57
83
92
122
58
75
105
139
103
86
69
92
68
56
93
123
152
138
69
58
112
122
92
126
139
55
146
137
127
97
126
110
84
171
67
119
178
106
122
75
126
127
119
131
79
37
86
58
92
55
91
56
37
169
91
126
178
98
122
103
55
56
139
79
92
122
55
69
111
117
56
91
138
124
122
75
55
93
103
149
128
119
138
138
105
56
92
128
67
111
104
67
130
104
98
111
118
109
134
146
110
56
37
56
146
88
130
138
112
92
55
119
122
126
67
92
86
160
91
55
124
103
77
68
126
110
126
121
37
126
92
79
146
79
55
121
122
79
111
84
58
103
111
103
178
122
126
55
132
122
77
103
96
128
178
139
109
118
122
132
134
68
55
67
126
144
182
106
69
132
119
126
137
144
146
139
93
122
93
104
110
92
105
67
126
167
139
110
152
86
124
119
97
110
110
99
131
107
178
146
146
128
93
139
95
105
144
109
93
119
74
67
107
69
77
86
103
97
146
93
138
58
104
110
106
105
104
117
140
84
119
107
128
167
146
37
112
115
55
111
84
126
91
95
126
92
84
56
55
110
138
128
122
128
104
110
110
55
144
93
79
131
122
101
55
55
98
122
115
117
67
56
122
128
122
58
67
134
109
93
75
105
37
69
127
148
105
122
55
104
129
126
152
131
56
81
61
123
114
68
77
99
134
105
152
137
107
105
111
93
89
178
152
139
110
126
103
138
156
77
107
126
127
122
105
130
134
105
67
128
127
122
99
79
105
105
180
104
158
93
58
126
127
178
55
122
97
72
104
110
146
152
105
93
111
107
105
103
138
128
139
55
144
118
67
146
111
152
111
104
122
125
37
87
56
124
75
131
93
152
122
110
92
104
134
138
105
138
178
104
126
107
55
105
81
142
124
98
138
109
99
37
122
110
138
110
152
140
104
99
122
55
152
169
93
123
122
58
140
146
124
55
58
144
114
107
67
134
105
83
126
92
126
115
105
92
146
84
104
99
126
74
122
79
158
64
178
67
106
74
92
93
77
142
110
131
67
169
93
128
126
67
111
55
58
93
69
109
163
148
111
138
103
37
182
122
69
131
105
134
110
145
139
171
139
74
110
91
55
152
119
86
142
55
91
109
56
112
134
112
92
92
101
67
56
126
92
86
150
58
127
104
105
131
56
92
139
110
168
106
131
69
139
107
105
122
118
92
110
92
93
104
142
114
92
104
158
112
169
127
58
97
123
77
56
55
55
126
148
148
180
134
120
115
119
108
74
111
97
75
123
58
91
127
69
92
169
124
92
124
105
168
105
139
101
139
138
122
79
55
109
119
143
140
149
125
171
92
95
107
99
139
69
104
86
122
110
158
55
92
122
93
72
67
85
110
37
67
107
104
55
140
100
102
104
122
110
81
123
168
122
123
86
92
109
92
125
107
127
149
106
75
138
110
74
114
67
58
109
103
178
104
97
138
55
105
103
122
178
128
93
169
105
111
105
110
102
110
37
126
107
152
97
92
92
126
67
139
125
123
101
126
104
148
92
81
69
109
93
110
73
124
144
55
92
86
126
131
138
139
152
122
144
164
92
96
98
119
55
119
152
143
67
55
67
115
107
104
92
117
148
92
146
144
105
138
124
98
56
169
104
138
180
110
76
91
76
126
144
178
130
134
118
109
105
75
104
92
199
140
72
37
105
56
68
129
92
69
146
138
143
91
84
101
91
83
110
127
144
86
140
92
104
110
75
67
91
99
108
109
55
105
128
118
93
56
111
128
88
144
79
105
151
128
145
104
127
178
97
146
58
104
86
92
123
138
138
122
93
119
91
105
67
122
122
138
92
86
178
86
139
97
93
148
92
105
105
104
114
105
92
67
103
122
103
79
152
118
81
92
158
105
93
167
123
131
105
138
104
105
132
128
58
92
121
91
159
110
178
110
130
55
92
130
122
74
104
93
111
131
105
127
113
97
105
120
111
100
180
127
126
118
74
98
131
168
149
86
55
104
93
138
68
79
139
126
74
104
104
124
138
55
102
93
122
148
77
144
104
152
86
102
126
92
79
55
100
107
138
69
56
136
102
171
126
168
55
106
56
128
106
67
109
99
55
140
55
137
123
120
92
119
92
110
105
79
67
92
91
163
110
55
103
86
92
144
55
119
178
110
152
105
107
138
99
99
83
178
137
122
139
110
69
101
144
101
58
110
79
96
108
99
128
58
178
101
139
55
83
110
58
169
127
94
178
104
160
128
132
103
113
105
126
117
104
128
93
140
131
105
126
138
126
92
169
55
112
86
75
122
126
134
148
55
139
126
111
134
127
111
93
122
104
61
115
86
124
69
75
126
69
92
114
55
103
105
127
132
67
122
109
122
139
92
122
104
164
74
127
74
37
69
138
127
55
99
107
134
138
92
169
98
93
131
55
111
111
92
69
92
100
102
122
168
69
142
126
55
100
83
79
178
93
56
104
163
67
107
93
55
37
134
138
97
110
130
55
79
110
122
100
104
110
92
37
92
110
93
55
178
83
74
108
92
105
171
104
91
79
55
105
92
92
55
122
58
56
98
92
120
122
68
130
92
58
91
105
124
111
67
74
55
119
138
138
37
91
128
92
122
181
77
124
58
152
140
97
138
93
110
127
151
55
103
134
122
105
104
111
37
111
79
55
109
127
104
122
127
104
123
138
122
96
164
104
55
126
119
77
169
37
138
163
95
93
67
178
93
127
139
109
127
102
138
92
144
105
148
144
119
86
67
104
55
73
103
74
105
67
102
119
67
37
138
67
139
72
56
69
93
144
103
67
105
178
67
144
109
103
178
55
110
102
122
126
142
138
97
126
131
129
144
74
178
79
37
146
122
134
104
132
134
37
105
169
37
84
189
105
58
69
105
199
92
74
104
120
130
67
126
148
105
83
105
127
92
122
139
58
93
144
92
127
138
178
152
67
169
75
107
138
146
77
123
131
107
178
92
55
91
163
140
114
98
56
138
138
104
92
146
104
92
140
56
138
110
56
92
56
77
126
56
86
139
178
104
122
86
109
115
122
139
146
78
95
105
138
178
110
122
109
105
110
128
146
131
74
136
110
37
87
107
55
122
138
111
139
55
96
77
105
74
103
119
140
86
55
92
105
144
74
114
120
128
126
119
110
134
74
67
104
110
92
119
119
93
98
37
111
122
122
131
92
126
111
104
109
124
110
140
91
68
129
104
118
152
103
93
92
93
55
37
171
91
163
126
37
144
67
55
144
55
111
178
37
105
92
93
55
74
112
67
126
152
146
148
92
110
116
55
109
86
37
37
117
102
56
104
110
124
152
37
169
58
67
93
109
55
67
79
158
84
81
69
100
178
77
55
122
105
157
69
111
178
163
92
99
152
93
120
74
122
104
144
153
67
122
138
122
56
127
55
118
134
88
168
77
55
126
67
105
139
93
109
162
55
124
91
124
121
37
105
55
199
119
92
178
92
93
92
92
138
109
119
122
92
134
126
126
75
55
67
37
158
92
127
160
148
75
126
105
136
105
67
139
56
146
146
93
86
128
104
91
144
128
122
164
138
55
138
55
148
128
91
84
69
134
126
120
126
75
69
98
158
79
140
99
140
110
147
126
122
92
122
158
114
109
92
112
148
104
149
79
67
67
92
110
56
104
92
122
98
92
86
160
139
126
107
138
111
56
55
104
107
119
109
178
123
126
56
111
79
67
103
93
152
91
140
128
98
126
126
74
55
55
122
99
92
74
119
144
74
136
58
144
81
119
83
69
67
55
104
77
138
107
137
123
74
71
119
119
91
124
74
107
127
99
67
112
124
111
107
104
148
139
145
103
37
112
127
37
127
92
56
86
124
91
110
92
69
110
99
92
74
148
99
126
139
110
105
93
104
109
94
124
105
67
99
139
69
126
97
130
126
55
138
122
126
110
37
107
37
140
105
79
105
110
144
88
139
128
117
124
100
93
144
134
91
55
104
86
93
55
146
84
104
106
77
110
178
105
117
135
122
92
139
126
58
106
104
132
140
178
120
140
120
124
74
127
55
55
110
77
109
92
134
122
98
125
160
100
98
169
77
86
138
37
126
111
92
152
178
37
154
144
128
104
105
102
109
158
119
92
127
122
92
110
56
55
138
162
91
124
67
93
124
130
67
126
139
122
92
92
130
105
106
110
58
105
135
126
151
86
146
75
138
105
74
164
167
58
146
56
127
92
156
130
139
67
126
114
99
92
124
169
138
105
118
91
105
110
55
92
109
102
79
128
107
112
55
140
84
105
126
122
94
158
126
105
105
146
102
91
169
91
92
92
92
110
127
75
58
56
126
78
67
138
58
55
138
56
107
160
92
111
163
75
91
136
93
58
93
137
56
86
104
55
110
138
99
119
127
145
146
79
55
58
127
108
140
93
131
144
139
127
122
104
95
89
58
122
119
178
101
92
130
99
106
99
139
92
123
138
100
79
126
37
111
91
95
55
146
138
93
109
92
130
126
92
132
105
104
95
67
138
97
126
140
67
122
105
110
55
109
69
84
99
118
69
91
122
178
79
92
127
55
77
178
122
105
163
128
156
92
128
105
123
117
86
110
163
86
56
122
127
139
110
138
134
107
144
56
144
37
99
67
108
83
97
134
138
146
93
112
92
144
120
122
73
67
92
102
152
83
102
124
136
94
146
67
142
120
144
55
37
102
111
67
37
128
103
110
56
110
55
158
122
144
83
55
126
91
67
37
138
140
78
112
122
55
146
104
114
55
199
140
144
93
131
138
178
127
98
111
139
146
138
87
89
167
152
102
56
103
93
138
138
114
134
93
138
131
55
56
138
181
104
180
122
102
126
178
122
93
67
122
140
152
138
56
132
56
127
56
97
112
111
178
113
58
103
110
67
140
69
199
104
92
92
110
55
126
123
135
89
67
156
92
111
105
93
92
69
169
91
138
119
58
55
124
131
56
86
138
109
119
56
74
138
92
86
110
86
88
55
92
122
148
56
92
93
148
55
88
107
126
110
148
167
122
86
56
144
99
68
55
152
136
178
127
104
139
126
86
105
92
136
169
58
89
69
101
107
130
107
96
92
77
117
93
164
92
111
37
105
105
69
131
148
55
178
92
83
122
92
93
178
107
122
114
100
107
117
55
93
92
110
122
101
105
37
93
58
87
111
79
68
56
92
109
37
119
93
56
107
169
105
122
93
146
67
58
93
148
106
146
127
58
144
86
92
144
99
122
86
105
67
102
124
92
139
139
146
105
113
158
128
114
123
139
99
127
136
58
55
144
56
110
112
91
178
146
130
122
123
55
129
92
105
75
92
140
92
110
79
92
105
92
98
152
136
93
119
99
67
92
55
69
91
164
83
67
68
103
110
92
126
92
67
140
92
92
146
139
126
67
119
192
126
137
88
95
86
37
141
122
69
86
75
92
92
75
74
122
140
37
93
144
55
55
148
72
114
124
162
99
104
105
131
92
148
103
127
122
109
105
84
138
122
110
58
55
138
144
128
56
67
108
168
119
83
111
99
152
107
55
134
55
134
58
64
37
136
55
110
55
56
105
93
104
73
92
105
75
105
122
69
105
138
105
92
67
130
93
92
130
132
146
86
86
93
103
37
89
148
68
110
138
110
105
92
56
92
74
168
37
138
92
114
88
105
97
104
98
134
122
136
112
126
92
58
95
119
79
93
120
112
105
103
121
152
79
103
81
69
91
95
69
58
110
37
122
74
128
109
119
118
107
102
178
58
139
56
110
67
55
126
101
158
136
126
55
77
126
178
91
78
111
75
180
69
123
169
58
138
199
146
140
78
103
162
111
139
146
67
109
165
92
122
134
169
140
178
126
109
105
93
128
37
120
75
55
103
129
104
138
86
92
104
127
74
105
119
92
99
97
67
146
169
178
86
148
104
67
122
110
92
105
126
144
93
92
71
110
146
122
122
110
104
139
153
122
117
138
122
97
55
126
103
98
37
103
134
92
105
89
126
122
68
108
136
124
129
110
145
104
55
122
69
79
111
122
110
178
77
138
91
140
178
55
105
171
107
128
111
178
37
109
123
67
64
69
58
92
83
180
110
95
86
91
135
69
92
123
110
67
92
179
126
122
121
110
119
56
56
138
105
123
178
119
122
110
77
93
93
127
110
67
37
139
117
56
104
105
122
37
105
132
124
98
74
147
79
85
162
92
163
37
110
86
124
149
107
98
104
122
178
137
92
114
103
119
152
58
111
126
126
89
124
110
110
132
56
123
104
129
117
110
105
37
122
92
69
93
126
139
122
144
93
69
138
142
55
169
93
110
37
97
105
69
93
89
146
110
99
104
127
123
101
169
92
56
110
138
91
92
98
109
197
112
128
92
132
147
134
110
56
138
169
105
117
93
92
92
64
129
99
122
128
110
178
56
134
64
93
55
122
120
68
119
56
130
103
139
132
69
125
122
146
75
123
169
56
128
93
138
93
113
126
122
168
92
91
105
104
138
67
104
86
127
104
93
119
69
105
37
105
121
100
134
114
68
123
92
123
112
122
126
69
152
91
83
144
130
68
128
67
55
122
109
105
152
131
37
136
123
122
103
139
126
122
56
105
92
77
139
127
110
123
138
107
79
138
93
110
152
162
95
162
37
97
101
135
138
104
138
145
92
95
110
92
148
107
109
131
123
138
92
92
114
91
138
138
102
122
105
96
92
73
137
122
127
103
58
86
103
127
56
137
122
92
58
105
111
110
126
81
68
152
178
92
100
101
162
55
122
55
79
69
127
55
119
134
163
94
107
79
74
109
131
79
126
109
107
37
56
139
56
105
152
105
75
104
69
105
55
68
97
139
149
126
107
119
69
122
56
110
105
105
100
132
109
97
93
93
110
178
79
96
84
56
92
84
77
86
167
58
67
114
105
92
168
67
104
146
124
103
76
37
130
152
178
128
55
122
146
56
101
67
92
109
92
178
126
122
106
107
138
105
122
84
146
83
67
97
160
86
56
162
92
117
69
96
74
102
110
106
99
104
102
110
69
92
122
110
84
122
68
122
104
128
138
131
91
127
93
168
138
37
86
109
95
91
89
112
37
56
126
152
75
100
102
145
112
55
56
67
69
99
102
58
92
102
140
169
55
101
92
55
55
91
80
93
92
105
152
56
124
105
103
67
122
152
127
110
169
79
126
127
92
169
99
110
109
126
139
115
92
158
69
83
120
126
87
92
37
140
56
98
111
91
103
55
124
122
69
144
67
104
84
92
105
55
55
105
67
92
67
74
69
112
105
79
122
79
55
144
92
99
144
171
140
134
92
69
126
178
127
163
138
144
98
158
137
119
93
104
58
134
117
126
112
67
110
146
67
92
144
100
121
111
127
163
165
114
55
92
122
83
180
145
165
114
126
56
138
104
107
92
106
104
55
93
112
105
122
152
107
138
77
126
128
119
67
110
79
169
92
93
92
138
105
104
126
77
37
107
140
93
67
109
146
103
138
124
92
107
119
141
138
97
109
139
112
134
104
139
126
77
105
86
68
109
122
152
123
97
104
92
178
92
122
79
178
141
104
92
37
80
107
146
85
37
74
92
107
105
168
127
107
178
94
58
89
139
110
139
112
37
58
37
162
99
68
127
123
148
119
107
107
118
79
119
138
92
56
132
75
178
118
105
158
87
55
61
101
77
105
111
168
119
92
104
111
92
91
110
119
55
37
91
69
138
74
122
132
110
152
78
129
137
145
111
92
55
75
129
136
127
158
93
169
91
149
138
86
118
92
105
126
126
119
142
132
99
134
140
77
146
138
110
139
138
101
138
126
122
110
122
124
139
100
105
92
178
163
56
56
56
75
77
148
105
109
122
110
110
138
92
144
92
148
127
93
105
93
134
55
98
150
111
124
55
110
105
92
68
127
79
126
138
163
178
83
67
56
119
86
55
37
102
92
75
152
58
144
120
178
105
168
111
146
110
158
74
146
152
67
144
145
122
58
55
122
146
92
138
119
83
131
158
151
101
188
127
92
91
158
113
122
119
138
122
132
58
144
112
111
67
105
122
92
117
138
75
93
127
105
139
164
69
55
119
130
111
122
182
92
101
77
124
105
92
76
92
130
163
178
152
122
55
150
78
119
92
139
94
105
93
67
126
55
137
178
92
178
122
110
77
123
107
92
132
146
126
146
92
67
111
105
37
110
180
144
122
105
122
74
106
107
138
138
103
144
124
68
102
160
178
55
92
92
169
104
37
119
144
156
105
67
69
93
55
76
105
88
69
58
122
126
106
171
67
135
55
67
141
144
126
105
92
77
158
140
122
101
77
92
126
122
105
110
68
152
110
146
146
93
58
93
164
138
55
69
93
138
58
134
74
89
93
69
127
126
56
119
123
55
67
122
126
139
126
77
69
128
169
109
144
144
95
126
69
95
91
122
165
110
69
94
111
109
69
158
122
122
139
126
55
128
69
105
148
139
93
105
132
128
74
146
108
75
93
58
77
86
69
126
137
101
92
144
122
88
99
152
122
92
126
110
107
104
122
118
122
79
95
67
144
99
126
122
105
55
67
160
178
152
55
55
99
105
56
92
97
114
126
105
136
110
55
109
58
138
107
101
105
89
136
167
148
126
92
69
169
92
105
138
75
126
105
69
105
56
122
139
110
37
110
128
146
138
37
58
146
58
92
55
178
165
136
101
126
79
117
67
99
105
99
99
111
88
148
56
110
112
99
178
111
67
58
67
134
128
58
167
120
112
127
138
67
37
109
105
67
117
122
128
99
101
129
92
58
78
127
134
164
152
168
148
95
77
110
101
104
79
125
67
92
134
55
105
123
122
138
111
178
131
119
69
178
86
92
127
144
37
119
103
93
86
79
104
134
138
93
104
77
119
106
125
144
132
58
141
123
134
126
91
55
93
128
92
56
92
92
67
120
136
122
56
79
123
86
69
86
104
56
126
99
67
97
104
102
93
77
123
126
104
95
131
67
136
104
109
67
119
75
86
92
126
144
122
95
180
93
58
106
105
104
105
56
148
134
158
92
89
139
89
123
139
122
119
169
139
104
67
127
100
118
180
120
140
104
67
55
138
146
132
152
109
139
101
140
128
169
92
101
105
110
95
86
128
86
134
97
110
126
105
138
105
55
128
158
79
126
127
152
138
113
91
107
138
134
92
104
102
104
111
119
67
55
99
104
138
92
169
119
98
112
120
56
56
113
55
93
55
112
37
144
138
146
74
178
122
74
107
130
171
126
126
134
141
56
144
127
56
67
178
123
111
67
134
140
137
121
171
122
139
127
138
171
109
167
124
104
75
139
110
178
37
126
110
140
110
131
131
126
124
55
145
142
121
127
37
117
67
110
128
56
111
145
105
55
55
109
55
98
110
91
149
92
107
126
141
119
55
110
122
122
55
55
101
93
91
130
69
101
107
119
138
104
126
92
92
91
92
128
114
105
105
108
126
99
105
58
126
103
109
144
127
56
92
118
138
86
123
67
137
169
110
67
58
89
56
58
110
67
55
109
110
110
112
146
107
109
91
107
126
122
37
138
122
150
178
146
178
110
55
127
100
103
112
56
105
110
123
104
106
119
75
37
180
139
58
122
110
83
122
144
138
178
136
125
124
150
105
142
126
88
137
92
77
37
152
106
92
98
92
92
110
126
67
103
86
182
92
124
104
152
125
104
69
104
74
91
124
86
148
91
92
72
58
146
169
103
69
110
107
152
146
162
79
127
55
92
104
131
95
58
111
122
141
79
91
104
127
119
126
92
130
93
144
123
124
141
171
136
94
158
37
103
61
152
124
121
105
103
124
92
127
74
89
112
67
92
119
92
106
79
168
67
140
112
69
105
144
134
110
126
114
56
171
105
75
111
135
156
164
171
110
92
171
56
86
134
58
104
127
92
55
37
139
107
128
110
92
169
86
123
122
122
95
92
105
140
144
110
127
144
86
100
123
69
121
37
37
126
117
127
123
92
145
139
140
100
158
126
138
146
119
163
104
37
56
124
104
178
138
122
126
169
55
91
55
126
122
110
120
92
144
118
105
121
122
122
105
67
123
104
105
132
105
109
92
134
56
79
122
56
126
37
122
139
119
92
138
109
138
134
105
146
79
146
114
167
109
109
140
130
69
91
97
69
67
125
122
140
92
107
127
75
124
122
178
91
129
127
56
105
56
146
104
37
178
127
171
83
100
112
93
122
74
100
104
58
138
128
122
104
106
99
92
146
80
128
67
94
152
68
110
55
58
169
91
93
128
188
110
122
107
144
165
122
138
131
132
75
92
55
88
89
55
119
117
162
67
56
55
68
127
67
126
92
122
117
144
110
92
138
56
91
58
100
102
91
130
69
58
119
105
127
67
144
101
147
127
120
169
123
81
93
110
74
122
55
119
105
55
146
56
77
67
120
137
92
97
156
126
139
89
178
107
143
74
140
124
58
58
93
79
163
110
132
136
92
128
144
103
93
84
134
55
55
56
91
119
126
128
104
105
171
58
145
122
92
111
148
126
126
101
139
180
92
131
37
83
92
163
124
67
137
111
92
55
105
83
92
55
152
86
97
110
123
92
148
168
165
120
119
37
92
123
123
138
83
152
67
103
92
110
55
140
126
104
110
56
104
109
89
92
124
139
55
110
128
126
126
58
110
122
112
136
138
122
126
135
122
55
58
123
119
114
122
37
130
79
168
121
112
55
152
93
110
79
92
164
110
91
93
110
104
92
107
111
138
137
85
107
123
58
75
178
103
158
92
147
93
122
102
119
126
67
56
131
111
178
112
86
127
107
119
95
58
104
164
126
86
168
92
92
67
99
139
67
92
117
86
178
55
55
131
92
136
79
109
86
55
140
101
105
56
124
110
104
86
158
93
119
74
81
110
102
136
111
77
103
111
160
118
139
139
124
125
93
188
122
89
126
122
152
169
122
110
138
109
144
105
75
74
146
120
92
126
55
86
144
92
80
72
67
180
140
146
68
75
77
178
123
130
79
86
136
67
37
146
107
67
152
37
104
92
107
122
126
126
107
117
56
91
81
98
106
74
93
69
92
169
111
109
101
132
131
98
178
127
92
126
68
148
134
110
180
144
55
92
137
168
122
128
122
167
120
127
74
92
148
86
110
178
99
110
55
37
100
130
92
144
104
92
98
120
104
78
96
104
92
55
91
110
180
135
123
199
37
67
89
115
99
92
127
112
67
79
86
164
142
119
123
142
92
121
74
126
136
127
148
55
69
77
56
92
144
37
146
105
123
92
58
58
92
69
93
169
127
128
152
127
79
110
74
138
123
132
92
138
126
79
118
134
119
127
103
122
138
77
67
102
110
138
137
97
109
92
75
95
86
79
124
56
58
103
92
93
56
122
168
56
131
91
56
119
122
111
91
102
152
148
123
163
79
99
55
92
92
122
146
103
163
110
69
93
138
146
126
68
122
128
92
138
111
178
56
104
93
195
55
104
83
115
105
126
138
92
141
67
75
103
92
111
104
128
110
67
67
37
75
171
105
92
141
104
67
92
56
110
139
125
67
134
139
111
98
123
105
107
178
110
92
104
56
122
149
93
105
134
103
138
55
55
55
92
131
93
69
162
67
69
178
130
122
104
110
69
92
152
58
128
67
128
138
135
144
105
135
125
122
68
92
134
111
93
79
122
67
107
92
83
139
138
138
156
140
120
124
122
163
74
75
92
138
138
169
114
122
93
119
58
93
92
69
122
138
92
122
91
108
107
91
61
67
127
110
169
126
55
92
140
56
55
146
107
109
130
106
55
92
93
104
74
58
178
102
139
89
138
110
139
55
169
55
79
55
86
56
92
103
110
55
110
58
58
119
92
86
37
137
67
92
148
163
126
92
93
75
37
92
75
104
102
58
109
122
77
105
93
111
138
92
127
139
92
124
168
104
55
55
77
77
123
104
105
92
122
139
91
105
110
93
158
58
178
119
144
92
114
122
158
138
124
122
81
74
109
110
118
69
139
67
111
105
110
178
152
92
126
56
75
158
122
134
139
91
127
55
67
92
56
171
88
139
127
178
105
86
56
122
132
138
126
110
107
120
56
147
92
110
127
138
81
37
139
122
104
138
79
87
83
122
123
138
123
139
56
79
105
55
88
109
125
92
140
58
110
126
110
112
77
103
69
91
122
127
58
101
104
139
169
122
137
142
86
56
92
115
81
97
74
92
103
110
122
178
56
126
67
105
97
55
68
104
92
122
104
58
91
140
126
77
56
88
91
132
109
178
110
86
152
152
55
79
164
105
55
120
111
77
139
56
79
126
152
134
178
101
67
134
138
131
108
92
126
67
91
164
125
105
83
105
104
92
79
117
55
55
138
104
114
105
104
139
128
164
139
58
168
68
92
104
98
56
105
138
119
103
132
37
37
144
163
91
146
126
77
140
178
37
110
111
99
104
93
105
126
169
168
131
110
67
138
111
79
102
139
98
69
105
122
74
131
138
128
110
86
92
178
111
119
92
148
138
128
81
115
104
138
144
110
37
102
126
77
111
105
37
89
126
99
81
68
105
108
122
114
144
86
122
79
139
74
107
55
126
128
56
134
55
92
134
139
89
128
55
162
169
122
131
79
114
83
168
127
92
95
99
75
104
110
130
126
167
164
139
119
92
122
110
68
91
55
118
122
98
107
139
104
101
168
56
98
178
117
92
92
144
56
110
124
127
67
105
109
55
84
127
69
107
72
55
105
67
128
123
132
128
138
92
114
122
93
128
67
67
67
105
79
99
122
123
92
79
122
107
109
86
126
136
68
92
37
100
148
74
92
145
92
110
122
122
140
104
58
84
99
64
122
107
37
105
37
67
140
146
99
122
105
124
110
142
96
122
112
67
77
126
58
102
104
101
158
79
132
104
110
105
178
110
122
122
99
110
130
83
110
122
105
56
158
107
123
93
56
111
168
135
86
119
105
152
144
110
81
147
114
55
97
67
101
123
125
67
89
75
110
119
124
114
56
123
126
92
77
109
74
127
107
68
139
138
68
104
107
121
67
101
146
120
146
106
87
122
122
107
74
136
64
55
110
138
169
37
122
77
91
98
139
37
77
92
91
110
122
83
67
178
67
145
139
123
122
104
83
79
67
92
148
93
134
58
122
138
123
103
122
105
55
105
169
92
58
131
131
178
55
178
128
106
152
139
89
69
110
55
55
91
92
104
67
67
95
152
146
93
55
152
56
103
105
118
120
137
79
122
152
126
151
139
74
55
110
97
92
95
92
122
74
58
56
127
68
105
92
92
152
88
55
107
107
119
92
126
67
92
132
105
92
106
144
37
56
105
128
80
126
55
120
56
79
107
122
114
86
147
112
55
126
77
84
92
122
122
56
104
67
96
162
178
107
67
122
138
122
106
123
122
138
75
149
122
110
100
119
55
58
158
104
169
110
111
189
68
55
92
56
122
101
67
134
139
119
105
169
69
107
69
137
91
69
105
99
122
126
121
77
127
56
110
126
55
55
103
122
69
55
106
56
109
99
104
58
139
99
104
103
97
148
163
91
55
109
37
138
86
77
124
152
111
168
128
111
99
92
110
93
110
92
111
101
132
146
122
117
134
119
56
73
69
126
91
37
67
138
87
138
77
131
67
92
105
138
83
138
79
138
114
56
139
104
124
131
69
105
144
164
110
86
162
75
157
105
142
67
92
122
152
55
93
55
104
58
128
139
97
104
74
78
131
37
127
134
137
92
67
77
119
101
110
107
92
126
138
122
110
83
119
137
84
147
168
134
118
122
98
110
89
92
152
136
107
56
140
118
69
75
67
132
111
55
67
93
137
149
113
119
119
146
122
69
75
122
92
112
126
93
101
138
163
128
58
69
144
134
146
105
37
110
92
136
162
105
108
111
67
178
105
79
107
140
106
86
164
102
72
67
99
164
110
138
91
126
126
99
55
93
56
105
97
137
123
67
79
67
92
100
37
126
105
148
105
103
144
92
140
106
93
67
104
113
77
55
127
126
171
110
126
123
123
132
169
126
110
55
58
68
55
140
37
67
152
92
128
134
146
122
104
55
110
92
77
91
93
100
140
69
124
107
144
105
126
139
106
111
80
74
144
138
122
124
86
103
105
126
139
104
160
81
92
93
128
142
152
56
41
69
100
118
122
144
65
178
104
152
107
138
126
110
136
138
55
171
122
122
138
126
103
78
115
163
145
138
122
109
122
144
110
85
105
91
124
93
83
97
56
122
126
126
122
169
55
103
77
92
122
92
138
126
37
134
146
120
140
69
124
89
67
138
138
110
138
123
81
95
128
104
105
138
75
37
197
106
112
139
119
114
93
69
144
125
55
123
100
92
178
69
83
169
92
129
134
74
178
134
105
122
92
110
140
55
122
112
94
56
146
110
109
101
103
152
127
74
92
146
144
122
55
56
92
56
139
108
146
97
126
110
104
92
123
158
122
91
178
104
67
150
95
110
109
55
138
169
105
138
107
105
122
163
37
122
178
58
131
67
152
171
86
93
137
178
91
103
122
110
105
119
96
103
127
92
169
119
56
80
126
124
109
134
104
111
55
121
139
92
86
129
92
123
83
171
74
105
75
138
130
138
72
104
92
37
92
123
92
55
122
37
148
148
126
127
110
135
55
169
163
122
127
98
128
152
114
128
92
122
132
109
105
146
126
103
92
111
56
126
56
144
105
107
58
122
92
92
139
110
92
147
56
91
37
92
110
178
93
37
130
67
75
105
55
129
127
182
56
91
144
92
92
104
138
146
169
169
124
104
119
102
126
127
67
55
138
144
86
67
127
58
104
104
103
169
67
126
77
69
80
83
127
119
105
180
86
146
158
126
104
126
171
72
165
138
125
110
100
104
37
128
110
126
131
92
130
110
91
100
178
91
67
37
92
86
178
139
146
55
107
37
55
92
100
126
92
37
122
110
56
109
77
134
37
55
58
146
77
134
126
83
69
128
168
110
83
88
67
109
139
152
96
99
144
110
55
98
83
105
138
138
140
131
106
93
95
110
105
152
55
101
92
67
110
144
114
69
87
74
141
92
144
140
58
112
75
102
98
138
79
122
107
86
122
144
131
130
105
104
93
123
138
93
77
120
92
146
111
94
67
112
86
74
144
55
119
55
128
128
55
55
92
122
107
138
160
91
122
104
55
125
126
92
92
105
122
55
99
122
182
105
107
92
139
69
92
131
123
134
152
69
105
134
126
105
102
130
104
93
137
83
126
127
139
92
79
92
86
67
156
138
55
98
92
128
93
97
55
146
102
126
79
119
58
135
100
58
91
102
75
93
77
148
92
119
117
37
103
104
97
74
151
128
111
67
139
92
127
83
139
152
122
99
78
134
110
92
110
77
58
138
55
104
67
119
104
91
139
117
92
55
37
91
104
92
138
58
58
127
178
37
158
69
108
83
91
116
55
92
91
138
122
122
167
83
92
104
144
138
56
94
148
99
93
67
79
93
139
131
37
126
93
128
112
109
171
55
92
93
126
99
105
67
55
110
124
111
128
139
91
119
126
92
58
109
119
138
105
140
69
178
126
177
100
56
55
92
77
123
110
92
112
105
69
146
146
126
110
92
140
72
109
137
178
83
160
58
105
83
55
69
152
87
97
101
122
67
138
97
67
126
126
105
157
92
79
55
136
112
55
92
105
110
84
92
105
112
58
105
37
104
110
110
110
138
180
103
99
162
138
122
122
89
104
139
134
55
138
55
104
126
92
69
105
87
169
100
105
68
105
77
123
119
55
75
69
55
92
55
105
138
109
105
58
139
110
58
123
138
67
122
122
127
111
55
55
146
92
104
111
144
98
55
105
122
96
146
105
144
178
69
122
114
77
92
138
123
134
79
114
91
105
109
92
67
92
79
55
110
55
105
126
105
139
103
128
74
136
67
137
152
149
92
139
92
92
93
120
138
86
180
169
110
58
169
110
108
112
77
93
110
88
152
105
92
122
164
120
141
102
88
92
91
56
73
69
122
91
91
104
79
79
92
58
93
144
163
124
120
122
122
126
105
58
65
152
138
136
180
84
76
55
105
74
110
126
120
139
105
55
139
138
105
37
117
95
144
152
127
93
55
124
144
37
126
67
37
127
91
109
169
56
171
69
122
92
92
124
119
152
67
89
91
146
126
92
123
105
93
120
92
132
75
79
91
110
122
138
138
91
110
104
89
92
92
102
144
105
92
144
79
123
67
101
37
160
104
68
55
149
107
86
152
104
67
56
138
55
93
55
92
58
114
56
91
83
104
86
169
178
122
146
93
104
77
110
105
110
130
55
105
139
79
67
110
152
141
126
67
138
131
75
122
105
146
92
69
147
91
130
110
56
93
69
158
122
148
37
106
128
134
122
92
77
128
146
140
92
111
58
148
112
164
86
137
79
105
127
67
138
152
88
89
123
91
139
55
101
168
126
139
58
79
58
142
93
123
55
56
122
128
56
128
122
110
126
92
138
138
105
105
111
58
139
152
37
119
146
128
144
105
130
92
134
152
123
67
100
139
104
77
110
122
37
55
122
158
81
103
67
91
93
120
91
168
110
165
126
56
67
84
120
130
122
139
55
55
95
109
137
123
105
92
67
92
122
74
138
126
114
162
110
168
55
92
146
111
92
124
118
55
140
114
110
55
120
55
100
128
127
122
107
171
83
98
92
55
91
92
86
122
127
58
134
58
93
37
110
138
55
75
126
92
93
77
93
99
92
135
126
55
180
139
127
128
107
146
75
122
98
104
131
169
55
109
99
128
67
126
131
122
122
89
110
67
93
92
102
37
68
168
109
92
105
139
92
67
105
168
178
74
58
92
110
126
127
168
112
178
105
86
92
67
108
117
163
67
67
55
138
55
111
102
122
132
55
55
126
89
110
138
119
93
110
64
126
150
55
148
104
55
86
98
92
110
145
69
156
144
144
152
138
134
92
124
92
126
137
152
80
124
79
97
140
181
84
143
128
139
178
122
146
139
122
163
55
178
94
93
55
137
58
93
199
122
126
122
67
178
120
104
100
144
94
152
56
106
57
110
95
171
138
55
178
92
122
74
126
74
111
122
92
58
104
69
89
122
55
77
178
139
138
122
122
158
128
69
169
99
107
122
180
92
37
92
152
139
67
97
80
126
79
110
68
110
138
122
140
68
37
105
128
122
126
100
69
146
69
156
138
55
146
122
122
103
180
122
55
93
110
55
92
135
140
55
55
77
117
169
127
112
92
79
92
110
110
37
55
124
102
77
56
92
149
65
156
86
67
164
105
37
92
78
110
56
111
100
123
122
92
122
92
78
110
92
138
86
93
127
92
126
55
107
99
71
139
55
77
81
69
103
128
126
110
77
105
57
56
56
140
37
93
139
74
55
92
162
122
111
112
56
131
110
92
127
134
105
37
110
103
93
91
56
104
126
79
152
55
178
79
110
122
136
122
122
123
55
114
37
180
122
89
177
124
94
107
127
92
110
92
105
69
79
138
163
85
123
136
105
146
160
109
83
146
58
178
58
105
168
55
92
119
55
93
104
99
103
110
55
88
138
67
140
110
97
56
58
128
126
101
93
109
93
168
138
120
109
192
84
110
67
99
69
102
105
152
69
164
107
114
122
127
99
138
127
106
68
139
112
110
74
114
93
122
163
67
146
93
92
67
105
56
138
93
122
67
112
146
127
110
86
169
103
146
134
169
92
55
79
105
55
134
127
100
122
67
92
77
110
92
126
99
94
146
79
105
86
84
55
119
169
168
69
144
75
105
169
105
77
165
95
152
69
126
165
110
152
37
104
132
93
169
69
123
56
102
58
149
91
127
107
67
67
152
164
167
109
110
74
105
138
86
104
162
104
92
105
126
56
169
55
146
110
119
107
122
74
119
67
138
55
92
146
138
139
178
110
144
178
152
106
86
144
136
127
138
119
106
114
75
69
55
110
147
144
67
110
79
83
138
103
119
91
152
110
92
67
123
67
100
120
55
100
92
55
119
99
144
128
58
119
92
93
55
97
91
144
111
114
162
100
77
132
126
122
55
122
88
84
127
140
180
152
134
123
92
104
105
136
178
132
101
165
169
105
69
77
130
127
138
126
69
69
104
134
110
67
83
171
68
67
109
92
111
124
171
92
92
91
122
138
162
136
103
92
92
105
93
127
68
92
114
91
92
128
105
139
69
74
162
128
107
88
123
169
114
180
110
110
117
138
106
117
67
55
128
119
139
92
110
92
56
127
104
92
58
123
123
125
139
67
55
146
128
106
126
150
122
64
79
171
105
92
55
55
56
89
169
152
163
129
91
126
93
92
92
103
105
69
122
139
126
67
104
105
37
110
178
140
122
138
103
37
56
58
104
162
169
37
92
76
131
109
119
122
93
111
126
93
100
104
110
92
86
92
92
56
86
92
86
152
168
101
115
107
56
77
109
105
138
92
110
92
58
128
138
56
92
105
110
79
95
105
138
117
124
123
152
122
109
92
89
69
138
55
169
92
122
124
77
74
152
152
109
106
74
144
67
104
127
67
67
110
69
105
69
127
126
124
93
105
122
107
92
101
105
178
103
127
55
122
139
160
135
37
92
94
79
83
76
92
92
55
86
126
126
105
99
77
92
105
120
123
178
144
98
89
103
122
55
92
83
139
140
126
114
138
83
37
138
37
58
110
144
138
92
105
55
98
109
131
111
78
92
101
110
67
169
140
99
103
165
120
126
92
55
126
67
126
128
68
134
55
102
37
81
103
131
192
56
126
93
104
152
93
92
104
132
92
91
117
86
128
69
110
130
169
124
58
171
106
104
126
101
138
99
127
128
92
37
127
144
37
110
164
152
136
74
58
144
144
126
126
93
89
105
178
74
115
67
88
86
105
78
149
134
111
104
124
127
104
79
91
122
83
55
158
110
105
118
111
56
132
138
119
67
79
119
84
93
126
75
105
132
97
111
119
144
104
109
122
137
79
69
122
118
162
105
56
92
111
89
178
152
83
92
132
56
105
146
122
55
87
105
37
104
55
127
37
92
140
79
67
134
169
126
138
56
92
86
56
139
80
55
169
105
91
91
84
58
126
110
138
55
106
122
68
93
55
67
152
151
158
124
114
111
56
126
152
69
93
69
56
146
67
37
178
55
120
109
37
69
55
86
143
77
92
98
37
137
93
97
69
130
58
99
122
91
91
91
110
56
105
99
79
92
142
105
93
127
88
104
93
178
105
152
74
92
77
92
106
127
146
127
92
69
79
77
75
131
126
138
169
93
120
108
56
86
105
146
84
67
87
77
100
69
69
140
122
110
104
144
131
134
128
68
92
122
110
67
58
69
93
178
67
126
88
101
118
126
92
127
77
128
139
111
86
142
111
128
74
126
110
105
105
37
91
105
104
126
92
98
142
123
131
178
74
140
169
67
126
109
55
67
119
122
119
108
55
92
65
55
93
91
67
123
112
92
126
122
56
169
104
67
152
56
92
92
178
112
178
169
69
68
178
138
126
93
110
128
122
137
55
67
113
74
56
119
120
152
79
105
58
131
37
97
67
79
86
110
104
74
95
104
110
104
55
126
139
110
37
92
55
126
129
112
101
122
122
56
127
67
123
91
124
104
75
103
74
93
127
122
136
84
148
37
122
109
169
140
164
134
67
93
123
148
122
67
127
75
105
86
122
104
122
58
110
93
163
164
126
99
105
103
122
104
55
55
86
144
105
69
111
92
95
83
92
109
79
77
178
111
105
106
126
68
134
56
104
148
58
148
140
105
104
104
178
55
111
124
105
178
104
75
169
99
77
101
55
144
105
77
69
124
56
81
93
104
178
122
74
69
92
67
110
127
86
100
92
77
56
132
74
104
152
103
55
56
101
92
67
168
122
37
160
105
126
152
111
158
94
56
55
146
91
55
92
89
92
56
92
122
55
138
75
127
105
37
126
119
122
79
107
109
69
103
122
112
100
126
92
152
55
104
101
114
92
67
104
130
123
110
130
138
138
92
55
148
105
152
136
56
106
105
56
98
69
168
105
91
132
128
67
137
64
107
104
124
122
134
92
93
146
152
92
110
83
89
110
55
137
105
103
98
55
110
136
107
123
128
134
110
37
134
105
75
102
146
86
111
118
37
74
89
134
37
130
88
109
101
113
106
127
136
55
99
163
127
37
108
98
81
69
86
78
105
93
55
110
105
92
67
67
92
77
138
67
106
135
110
169
146
136
149
119
104
105
67
99
58
69
144
92
144
122
111
107
69
146
127
140
111
93
56
92
110
69
122
75
67
139
56
163
94
131
55
77
139
146
100
104
55
110
126
128
92
178
58
128
110
99
99
149
127
169
86
105
140
69
92
138
86
122
146
138
131
109
92
100
134
92
55
104
147
126
144
68
144
104
108
163
103
144
58
113
55
92
126
128
92
55
140
180
128
67
107
126
103
37
180
93
131
98
131
77
144
92
92
74
105
119
178
123
67
145
117
92
95
152
68
97
123
92
138
122
93
77
55
144
125
69
67
114
171
126
131
110
92
67
92
99
55
86
92
178
99
67
107
92
144
146
55
55
106
119
138
152
104
100
138
169
86
55
92
178
122
92
56
158
98
67
122
106
92
104
139
132
126
103
79
92
110
124
164
37
144
129
110
92
105
126
104
127
91
162
56
126
132
55
105
114
128
139
69
55
91
169
55
69
92
126
93
37
105
58
55
75
169
69
99
139
110
118
139
92
124
105
128
83
67
169
114
112
93
148
122
104
122
80
89
74
128
169
92
134
105
75
127
67
123
110
56
74
91
101
134
178
67
110
122
87
104
148
99
144
67
124
111
105
99
112
37
105
55
127
86
93
165
139
88
127
127
105
126
127
69
104
88
92
107
127
127
104
75
58
139
110
168
56
92
146
126
77
123
55
104
140
122
139
96
117
93
93
148
111
132
167
110
126
138
124
104
58
58
93
152
165
124
123
96
105
56
102
68
118
79
105
93
126
98
139
55
56
96
93
102
105
55
118
146
126
105
75
168
37
115
37
111
55
146
56
171
67
122
110
123
93
146
144
171
122
78
91
75
93
92
138
163
102
74
131
86
91
105
74
109
163
162
110
128
75
67
110
88
138
68
91
122
139
97
67
67
56
122
75
86
139
75
122
74
139
152
79
105
92
104
137
75
94
138
112
126
93
105
146
138
138
134
169
139
86
110
138
105
79
181
136
146
106
119
56
180
55
58
98
92
79
56
55
95
37
69
80
127
74
138
83
98
67
111
93
110
69
99
104
68
91
87
99
92
69
58
98
99
92
146
126
58
122
110
118
80
95
56
117
144
127
104
138
56
37
127
81
37
131
79
105
84
89
110
105
146
99
110
107
128
84
97
55
105
119
86
139
67
169
79
122
92
110
55
132
37
139
127
55
144
160
105
104
122
122
110
110
92
55
75
123
92
37
58
116
68
92
146
125
104
68
105
92
136
74
139
75
122
86
138
77
119
122
169
67
77
122
74
130
104
84
108
58
69
55
75
119
124
79
114
169
122
74
67
91
180
77
138
109
58
67
92
122
67
171
92
55
122
128
67
122
109
138
129
92
126
105
138
120
126
105
128
178
92
138
107
104
121
68
169
87
86
111
75
105
146
138
68
56
144
110
138
128
74
86
99
110
92
61
128
92
169
138
37
58
99
92
92
149
128
99
168
119
77
134
86
64
104
92
105
105
148
126
55
92
81
138
152
92
119
107
111
93
86
97
146
126
97
93
91
122
107
169
99
124
122
158
105
104
123
79
130
120
93
110
117
67
127
158
162
138
122
92
122
103
67
55
103
110
55
119
93
93
144
93
74
55
55
126
56
131
110
68
107
122
109
103
119
92
103
97
105
110
105
179
105
169
103
122
137
122
119
148
76
122
136
79
137
56
138
107
122
89
114
92
110
58
158
67
164
91
93
128
178
56
37
99
56
168
124
140
127
92
131
56
58
83
107
105
169
93
122
148
105
97
131
140
111
110
55
99
115
109
107
110
86
92
109
88
158
142
126
56
146
75
55
55
92
137
138
37
94
109
122
74
99
109
126
171
104
118
88
146
138
104
178
110
77
169
96
139
119
92
126
114
188
69
86
109
110
109
115
115
122
91
111
131
122
122
86
168
37
79
37
144
37
138
131
92
126
131
197
92
99
58
104
92
37
103
86
67
127
109
58
110
119
107
104
105
132
152
69
111
138
108
138
103
84
55
124
111
134
140
139
67
84
67
92
105
144
127
164
55
55
146
69
92
146
69
104
89
110
86
56
110
138
146
79
144
178
122
95
93
97
92
74
74
119
131
134
99
68
93
116
69
105
114
168
128
55
132
126
86
123
127
110
91
99
120
110
56
138
135
77
167
122
93
103
111
55
114
109
89
79
127
107
103
55
130
105
140
158
125
92
127
102
112
128
87
84
67
103
67
152
119
56
117
79
124
119
144
119
55
92
113
105
122
139
149
126
177
122
146
67
127
56
122
78
67
138
105
55
69
103
120
111
152
134
103
68
122
138
55
131
135
152
93
144
122
110
168
114
99
138
104
83
104
144
110
92
93
122
122
138
127
168
119
104
178
105
55
132
91
69
92
146
79
104
122
144
93
111
104
37
55
58
99
77
67
55
107
79
105
139
138
55
110
55
93
146
105
114
158
55
107
92
91
146
121
79
126
128
91
104
128
124
67
146
37
91
134
74
67
163
68
120
152
89
119
104
97
77
132
130
110
95
92
102
105
152
86
92
138
37
93
55
146
56
139
88
56
104
126
37
119
110
77
144
178
58
67
120
127
122
139
99
100
105
178
74
138
81
109
92
92
158
101
93
67
142
88
128
104
58
84
69
98
79
79
107
136
119
67
138
142
91
146
132
75
69
55
58
132
111
56
120
92
169
83
67
110
117
86
100
86
138
56
110
127
139
97
92
110
92
77
89
126
67
105
104
128
138
58
122
69
109
55
104
105
67
119
119
128
119
122
168
136
101
130
158
92
105
122
169
84
92
58
37
77
158
103
111
146
111
147
93
122
107
99
138
152
134
158
138
91
55
124
56
139
107
144
55
144
130
169
55
79
74
146
118
108
110
92
67
131
91
37
122
75
127
144
132
37
144
103
168
105
146
103
122
105
58
93
180
127
67
77
109
144
180
178
114
55
92
93
94
122
93
97
77
122
137
142
117
117
111
178
122
146
93
91
104
126
92
74
67
113
110
168
146
55
79
126
122
69
102
110
107
126
55
92
58
79
55
105
135
110
110
140
139
197
100
75
91
75
55
92
140
74
119
92
55
180
111
126
128
138
99
126
79
122
138
56
144
58
146
138
83
124
101
37
110
144
83
109
58
86
37
55
144
127
69
74
78
111
107
148
78
56
37
55
93
104
106
128
92
139
93
67
110
128
55
65
134
109
126
178
128
139
144
98
99
110
37
118
112
55
134
167
122
93
159
55
146
126
37
138
127
119
168
99
105
146
163
152
144
147
95
92
92
144
128
58
56
178
93
67
111
79
56
67
139
139
58
84
88
139
98
103
119
103
92
152
138
56
67
92
138
138
122
115
93
123
56
105
122
122
128
152
110
86
92
103
139
138
55
107
55
152
105
92
178
92
104
75
119
114
144
148
55
79
105
105
55
128
123
134
37
105
103
178
92
92
92
146
138
99
37
91
107
74
92
178
69
69
114
127
58
93
110
148
37
138
122
93
77
126
126
125
92
55
55
93
91
92
88
92
122
124
162
92
86
135
101
111
91
104
58
56
95
92
144
86
92
93
128
139
146
178
69
148
91
110
171
58
104
131
92
58
92
112
122
109
84
103
122
83
139
93
145
103
113
97
92
126
119
105
140
106
142
105
126
105
108
152
93
127
89
128
138
67
108
100
92
105
109
105
111
55
139
122
105
110
138
109
107
128
124
93
110
114
98
111
126
77
139
115
55
112
105
138
178
37
92
110
107
127
123
86
37
167
107
78
126
104
79
103
134
119
79
37
130
123
141
91
132
126
110
119
110
178
67
178
55
109
139
69
92
152
104
56
122
58
56
139
77
138
178
92
104
130
110
122
55
58
96
110
126
92
110
69
152
139
55
37
92
122
126
80
75
105
69
37
144
80
118
93
138
75
138
55
110
141
74
178
112
140
138
138
171
134
77
93
55
139
74
142
69
109
122
126
105
79
98
126
144
98
75
138
104
105
56
98
78
99
86
92
113
56
67
55
138
105
83
178
75
103
139
139
122
86
69
139
138
146
100
126
106
110
69
86
139
56
122
143
55
55
92
128
105
149
105
91
134
109
92
107
93
120
92
130
55
103
111
105
93
74
131
126
151
65
110
125
146
37
111
55
69
104
83
103
58
75
69
104
122
140
56
86
110
144
146
110
92
67
92
128
56
134
104
67
111
58
79
111
110
144
134
110
132
139
126
88
141
69
99
92
144
197
109
130
165
122
92
140
96
139
92
140
126
55
93
92
55
75
92
56
148
99
110
92
178
69
56
105
171
130
110
79
146
135
140
126
109
55
139
92
110
69
102
163
74
105
92
103
97
129
94
100
111
146
104
127
148
68
132
110
104
105
69
105
111
69
123
84
137
104
56
127
146
103
86
119
105
110
178
122
131
79
56
178
83
126
99
55
122
128
126
55
93
134
125
92
68
56
118
104
88
104
163
75
106
111
67
55
136
152
104
109
110
119
126
67
93
100
130
105
105
114
67
145
95
126
93
109
56
104
146
110
107
55
92
144
95
92
134
92
135
67
152
74
69
84
104
75
86
131
119
94
146
92
110
92
134
103
55
122
67
126
92
56
56
104
110
146
171
122
134
178
92
163
119
56
69
120
152
37
37
127
143
92
79
56
123
74
37
92
178
112
139
55
107
77
169
180
92
106
124
92
111
151
67
152
93
93
122
55
138
106
55
67
109
77
126
56
110
104
104
94
178
92
101
92
126
178
88
55
178
55
169
55
93
110
118
92
55
132
146
93
119
105
139
73
93
138
109
144
55
144
37
137
123
107
162
69
55
158
119
126
58
68
56
56
68
146
132
178
105
158
110
94
37
96
92
171
93
56
110
132
142
128
171
119
58
111
92
139
126
92
122
163
164
110
148
93
169
37
92
117
128
109
68
152
129
163
69
92
126
122
134
107
148
87
69
100
107
55
95
55
55
111
119
105
92
138
104
144
103
104
131
124
69
107
146
92
104
138
139
97
119
58
130
55
67
139
41
105
56
56
122
58
37
55
158
74
127
122
140
138
128
110
104
127
123
99
180
122
144
104
74
110
112
126
108
126
178
67
122
122
110
68
171
134
93
122
79
146
68
72
109
86
122
92
168
104
56
103
93
56
148
104
67
152
142
104
171
148
107
138
168
120
78
55
55
199
152
69
139
65
92
152
180
103
93
110
119
110
37
105
149
103
121
67
148
178
123
93
124
55
58
77
55
144
119
137
56
122
146
92
67
69
95
101
144
178
107
77
92
79
67
92
107
92
152
93
104
69
126
105
127
180
68
134
58
75
103
91
105
56
92
126
77
169
92
122
103
107
146
92
100
55
99
110
122
122
91
146
113
92
126
92
126
77
130
178
138
89
68
130
163
131
55
124
107
104
127
122
106
138
171
152
137
77
139
55
178
110
98
104
123
124
122
92
86
68
128
69
135
67
119
118
92
107
77
110
110
101
178
122
114
55
139
83
94
67
152
104
86
98
92
79
106
119
67
178
67
169
112
67
126
99
102
105
92
180
138
93
123
169
136
107
55
111
37
93
180
84
122
67
92
126
105
158
84
99
130
122
126
128
122
69
112
79
144
79
178
104
126
134
158
83
178
169
93
69
55
91
97
111
178
123
122
69
68
98
104
123
126
145
110
126
169
111
178
37
122
86
77
93
67
110
84
105
56
104
98
74
86
98
178
67
67
122
93
138
127
56
122
126
67
92
74
110
125
180
55
126
75
105
127
106
100
138
120
67
112
67
112
92
122
178
158
137
86
107
124
98
105
131
69
156
98
58
138
83
139
152
168
126
92
126
178
110
122
103
55
110
99
55
92
55
114
111
92
138
152
92
134
135
118
125
93
120
72
171
122
104
101
92
150
126
86
104
148
107
117
104
132
144
58
99
163
86
111
110
69
122
127
56
58
91
104
89
138
68
131
137
104
104
128
178
129
92
122
68
92
104
75
154
108
178
92
67
99
110
168
144
144
144
122
92
37
127
134
109
37
111
130
138
91
152
86
122
91
56
126
188
123
105
92
74
104
55
177
37
128
67
144
103
134
110
56
108
86
100
77
111
97
110
56
145
146
67
104
92
110
105
122
87
67
67
92
144
69
109
127
168
89
67
91
93
87
178
152
110
146
127
92
104
102
136
110
118
110
126
37
138
58
79
105
56
178
178
169
93
58
106
104
136
91
122
101
119
148
91
123
92
69
99
86
58
138
56
126
55
127
64
112
160
56
136
93
103
142
168
104
145
92
79
86
108
152
112
92
108
107
131
58
107
92
92
138
146
105
55
132
127
110
125
146
122
83
107
105
92
105
84
178
122
163
86
158
110
117
138
110
94
146
97
55
83
105
146
123
92
97
99
55
115
58
139
91
123
160
69
69
75
131
99
69
55
58
121
99
127
124
37
86
140
138
135
137
144
92
136
123
111
56
111
55
128
132
92
55
99
105
110
106
69
168
105
111
86
112
107
119
178
146
58
128
110
55
56
163
86
131
122
75
67
120
67
97
178
140
130
148
109
99
138
91
55
95
56
140
58
104
114
86
138
103
58
178
126
55
110
92
58
92
79
69
68
93
86
55
92
55
58
178
100
110
105
127
58
104
93
92
97
139
171
139
105
79
100
58
127
127
146
127
81
56
131
86
92
110
56
55
105
169
103
132
138
104
89
91
58
103
106
115
125
167
126
128
162
171
110
96
92
92
93
138
104
139
114
126
104
123
127
128
55
104
127
56
105
146
128
110
55
128
140
147
104
93
127
110
110
122
89
99
112
110
91
92
169
58
146
92
75
138
122
122
128
92
135
74
110
138
139
93
58
178
152
107
118
110
110
86
121
107
132
103
105
67
126
92
103
127
55
178
92
122
148
55
111
111
67
92
152
130
124
126
118
171
76
122
122
122
139
126
107
123
111
134
124
92
126
91
107
58
112
134
56
138
74
98
37
56
89
58
126
55
122
37
55
75
69
103
110
144
119
144
110
122
91
162
167
104
92
86
132
68
55
139
68
128
92
93
109
69
92
138
178
69
118
55
83
127
128
169
74
91
69
103
129
105
163
126
55
93
75
127
128
110
79
56
134
91
139
74
79
110
123
124
104
168
56
104
178
138
93
134
109
86
124
122
56
95
151
135
119
94
122
123
67
37
92
160
93
92
68
110
164
145
74
100
146
119
83
108
178
178
134
168
69
37
138
140
146
103
110
73
110
79
140
110
182
81
55
171
110
113
55
74
102
93
58
122
122
56
86
122
110
139
128
112
79
167
75
138
67
103
58
178
37
152
123
37
92
69
126
55
139
111
169
139
126
56
165
92
79
120
106
178
93
83
126
110
102
122
119
55
102
109
140
118
93
140
119
122
56
103
58
162
104
92
125
105
122
91
156
91
152
171
110
131
127
58
122
148
92
37
92
110
138
123
91
55
131
152
106
106
140
110
68
56
132
79
56
81
168
163
92
73
92
146
92
104
55
55
152
100
120
104
58
92
68
105
92
105
55
119
110
178
158
144
152
106
58
105
80
106
37
104
146
37
119
89
146
118
92
129
138
93
91
105
171
37
37
144
127
132
56
140
126
122
146
178
110
67
138
123
119
123
127
67
128
130
56
69
137
122
37
111
128
139
110
93
134
104
92
92
146
77
104
140
112
74
67
126
163
114
110
92
148
138
79
141
126
124
138
158
126
122
75
126
138
58
127
165
110
110
146
178
138
146
67
110
140
121
138
138
104
67
79
128
104
37
37
98
99
110
139
93
93
126
103
140
105
111
69
114
86
122
138
123
86
105
135
83
122
146
67
103
103
92
107
37
107
93
101
168
68
97
105
92
67
124
92
69
67
138
92
69
171
148
99
37
37
103
92
92
99
138
167
105
37
55
91
138
158
136
110
92
55
108
84
152
128
79
122
103
69
79
110
148
163
95
127
67
107
67
110
126
84
99
77
69
92
121
67
104
110
122
58
84
55
134
128
110
67
92
180
91
120
138
75
92
99
122
111
110
37
100
84
146
149
55
125
134
92
138
37
37
65
105
93
94
92
69
126
58
93
117
152
139
178
162
69
56
92
68
86
110
83
104
55
93
131
104
178
92
110
139
162
125
89
97
130
119
93
37
92
77
99
56
138
37
134
132
119
81
91
149
97
58
55
130
123
139
92
104
55
123
55
128
104
93
127
92
148
122
75
139
55
145
55
93
55
138
37
78
128
110
67
110
92
119
122
104
130
168
92
37
93
110
105
37
77
122
84
111
122
139
105
126
91
126
104
126
83
119
110
127
86
115
139
171
104
107
105
136
56
123
110
98
104
127
119
119
75
178
110
67
134
92
132
77
69
127
69
134
138
92
93
110
92
124
148
56
105
103
122
67
98
158
130
56
139
37
79
56
168
105
93
58
105
99
122
74
77
56
129
84
91
56
105
73
126
126
119
138
123
67
148
158
123
134
99
37
144
171
92
93
152
110
110
96
130
132
110
134
146
58
139
55
69
67
111
134
55
93
37
167
119
147
127
71
102
104
92
92
93
75
144
67
148
80
104
123
124
37
92
109
152
158
95
105
97
137
55
144
126
138
81
111
144
91
92
124
112
69
127
55
148
152
118
124
119
78
126
111
93
110
178
138
92
137
86
126
100
168
104
111
55
152
131
86
114
85
140
105
104
110
134
109
93
138
127
163
86
104
110
97
77
74
107
171
140
171
74
144
178
93
130
158
77
37
75
123
111
37
99
131
92
92
127
128
126
126
178
37
119
178
139
84
104
110
75
126
58
95
122
178
83
109
169
55
138
135
152
126
110
55
107
109
122
55
124
92
92
92
102
69
74
104
93
120
122
140
99
117
104
68
79
67
138
178
56
91
118
128
55
145
169
134
79
69
56
69
92
123
123
122
68
104
105
86
105
126
69
104
129
122
142
138
147
105
137
74
126
92
127
110
65
128
110
105
37
126
97
37
37
104
138
110
100
128
122
79
127
122
105
105
55
111
77
97
146
110
165
99
138
67
67
93
138
119
92
69
92
92
119
97
55
127
104
86
144
138
169
123
92
138
124
105
110
68
168
74
114
56
139
110
120
68
111
111
139
122
93
68
122
148
132
86
75
58
122
123
108
79
152
119
77
69
138
153
126
109
58
84
171
144
93
75
136
115
162
127
163
131
68
107
126
105
178
92
74
55
169
104
92
147
104
101
114
141
83
110
126
37
92
126
56
122
93
123
55
139
99
92
58
123
152
136
164
91
139
128
119
83
126
55
98
55
130
128
128
122
100
105
127
56
67
113
134
110
122
127
86
105
105
112
108
127
92
178
105
97
127
104
152
93
104
56
92
168
84
91
92
37
86
158
95
109
56
58
178
97
55
140
178
150
83
122
130
86
122
55
55
138
108
103
110
67
144
146
67
132
124
74
119
110
92
67
119
130
138
58
77
97
56
99
93
55
106
131
114
55
110
91
138
171
37
122
92
126
92
67
104
106
165
127
126
55
122
171
92
79
110
122
152
104
123
120
124
102
138
105
56
111
140
122
146
69
55
58
97
92
55
74
100
100
126
101
138
92
103
124
117
100
67
124
92
178
92
134
110
146
99
114
165
75
92
55
58
142
92
92
55
74
139
117
110
139
94
74
140
152
165
118
105
119
92
56
140
67
91
110
136
55
119
122
84
93
158
55
86
171
140
74
56
84
67
152
111
108
131
75
37
110
104
129
92
83
119
67
146
114
67
58
134
55
56
127
91
77
122
118
58
122
93
169
92
119
86
122
103
134
105
169
139
104
178
91
104
105
93
110
118
105
91
111
107
68
111
110
110
83
124
104
126
37
108
131
58
74
110
79
91
178
119
122
74
123
168
138
58
110
128
92
55
105
139
93
110
122
55
181
104
37
128
178
104
138
123
178
37
146
92
169
92
93
118
123
178
68
179
165
64
92
37
58
87
84
105
130
122
67
150
105
122
91
69
91
123
97
122
120
92
156
56
92
105
93
171
126
105
104
92
128
122
169
92
107
138
144
140
178
105
74
55
55
117
98
134
164
138
122
110
164
134
92
37
105
148
129
102
146
131
77
126
127
127
122
67
92
122
146
123
96
92
126
104
92
105
126
100
56
74
56
105
136
96
104
139
129
69
37
91
110
134
144
122
110
55
55
122
55
99
92
119
126
55
117
105
108
146
138
67
74
122
89
189
103
178
122
79
55
134
68
122
58
163
67
58
122
123
139
104
105
104
107
55
124
92
92
125
104
134
92
134
104
110
92
139
122
68
127
137
127
102
139
99
93
104
135
146
93
130
138
86
91
110
122
122
110
67
152
105
110
55
93
149
77
69
105
132
78
145
55
106
68
77
105
129
136
67
74
110
140
123
110
106
144
109
79
127
122
55
124
122
104
147
92
140
128
122
137
144
139
178
89
126
79
132
110
115
67
126
124
103
37
118
122
98
84
138
152
99
81
103
55
104
91
149
144
132
92
37
134
138
98
162
55
136
105
55
104
105
56
84
105
107
165
107
124
58
148
132
56
110
110
139
136
163
106
67
122
92
56
105
138
92
103
128
86
92
139
123
110
110
56
92
171
99
122
37
144
122
104
56
96
105
163
91
105
37
56
69
55
139
111
68
144
56
139
37
140
109
92
149
103
178
99
168
144
127
92
123
92
92
126
138
137
122
139
56
134
105
91
146
86
146
122
75
69
103
86
67
134
102
104
139
126
69
162
105
119
139
148
92
114
67
145
92
64
123
118
112
110
92
56
68
114
178
74
144
55
128
122
126
105
121
97
69
140
56
92
140
133
69
68
128
126
110
119
55
96
135
55
169
69
86
119
86
85
80
105
134
146
105
169
74
98
105
104
110
110
135
126
100
145
144
58
138
180
77
138
111
108
37
92
136
126
178
104
105
69
37
127
67
105
126
87
92
134
105
55
86
37
110
138
152
113
93
97
148
178
56
142
100
110
167
93
127
124
117
130
37
55
123
91
152
119
67
91
109
139
93
126
151
56
136
153
67
110
92
86
127
105
124
79
84
105
68
152
138
75
152
109
92
152
93
108
130
169
147
122
104
79
135
77
55
122
119
69
110
74
124
123
160
109
67
126
104
92
178
97
92
110
127
104
146
55
86
37
122
147
111
142
111
92
37
92
86
124
138
123
124
55
145
134
79
112
67
77
122
104
55
77
93
69
67
126
105
126
115
92
107
144
77
100
122
112
74
75
55
110
146
136
75
74
91
93
72
126
68
92
94
92
84
122
93
105
119
119
100
69
115
105
171
92
37
124
107
103
158
97
55
158
110
171
92
86
128
124
56
138
138
74
138
92
165
112
123
105
110
55
104
67
55
92
67
105
115
92
144
84
93
74
79
123
112
57
104
110
139
138
138
158
132
111
77
111
145
139
92
95
120
110
55
105
123
177
162
37
77
126
92
124
110
122
58
122
75
37
58
56
163
128
55
130
91
139
99
137
115
110
105
105
107
122
178
122
152
126
55
67
79
92
111
158
124
111
78
135
112
126
56
144
55
84
92
122
97
95
79
104
69
115
152
122
104
55
100
138
124
128
92
104
55
128
126
58
138
93
124
122
104
105
56
103
105
83
152
88
88
139
178
168
37
55
139
134
96
112
68
131
131
83
122
99
146
93
55
79
119
160
165
180
86
55
56
108
103
120
105
110
145
152
146
98
92
140
92
105
55
144
107
138
92
92
56
126
92
137
138
142
138
103
99
92
92
127
122
125
67
119
107
93
74
178
98
139
75
56
152
87
122
105
93
134
126
104
91
110
55
140
92
137
56
158
137
171
55
132
105
119
126
126
69
110
67
122
138
109
110
138
108
104
111
167
92
158
56
92
122
93
119
134
89
57
126
138
139
105
93
138
97
127
105
105
93
115
74
110
67
139
104
95
107
122
106
81
91
110
92
91
138
91
67
67
97
127
92
55
122
178
123
107
67
136
112
91
137
139
169
111
138
126
56
55
126
122
149
169
58
95
99
128
134
123
123
139
108
99
188
87
104
122
56
144
112
104
137
69
122
119
55
55
84
138
101
110
99
95
127
137
168
110
56
137
122
92
75
79
58
178
146
164
37
75
92
58
92
92
37
128
148
126
68
105
146
129
92
139
86
86
79
105
122
86
96
122
111
99
99
83
68
110
58
78
148
92
92
134
56
126
103
95
147
138
105
126
56
92
103
69
103
122
108
86
123
99
105
88
129
162
95
104
126
105
58
75
101
110
67
127
126
134
92
124
131
86
192
100
55
92
37
83
126
92
92
136
55
107
56
98
72
138
55
67
171
89
96
104
56
103
74
107
126
97
141
117
79
163
89
188
56
128
68
37
134
110
119
86
119
77
110
56
92
67
56
105
93
79
148
104
124
119
99
109
92
134
107
100
110
144
55
84
58
128
168
134
75
126
93
171
100
89
178
69
37
92
169
68
107
148
67
110
138
114
110
148
126
178
110
132
110
152
88
109
147
134
128
130
139
69
105
71
126
110
109
89
120
111
88
146
169
55
37
138
136
126
55
69
37
56
65
126
146
156
134
152
122
141
55
114
122
55
119
77
37
55
79
126
152
163
91
127
125
105
69
146
143
124
107
139
104
64
120
37
152
138
86
67
126
86
111
120
67
55
67
105
119
92
77
171
112
126
105
75
93
92
105
139
55
87
117
104
138
105
55
127
147
92
56
123
109
58
104
110
92
138
93
127
180
55
55
107
110
128
111
108
74
111
92
138
126
109
105
110
152
116
56
132
134
56
124
137
126
140
122
93
136
140
104
139
126
67
111
140
103
110
55
138
117
92
110
139
144
107
91
69
105
69
92
122
152
67
67
68
92
91
126
128
107
56
93
138
58
55
103
121
37
123
103
151
105
126
55
148
178
68
111
124
37
74
158
122
127
107
122
123
101
105
55
86
56
122
110
91
178
101
105
104
110
69
67
158
149
178
37
67
69
74
37
162
97
146
58
147
37
93
86
110
56
140
84
56
68
138
148
144
122
182
134
92
149
138
67
92
107
67
122
104
92
118
138
171
88
99
130
79
144
134
105
122
119
56
69
92
156
180
120
114
55
117
140
127
108
86
58
55
92
37
55
105
83
109
140
79
79
127
91
86
126
140
67
126
122
101
128
86
146
135
138
77
171
122
67
92
178
126
109
83
138
98
58
92
104
111
144
148
111
55
86
146
137
177
126
142
86
124
110
92
99
95
123
55
56
104
104
56
93
92
127
37
111
97
91
77
93
93
122
138
127
55
104
110
112
117
152
129
138
178
37
95
105
145
37
135
93
138
132
139
79
136
105
86
104
93
168
120
127
93
123
95
134
126
131
132
122
79
144
138
127
128
109
138
111
91
143
146
105
56
139
92
162
138
107
111
67
93
120
138
99
138
144
92
58
67
169
93
126
126
120
127
127
109
107
122
146
79
58
55
126
105
137
67
84
105
93
138
138
138
122
83
83
139
110
122
104
80
127
111
112
67
110
103
178
83
131
105
134
106
126
134
84
111
127
122
126
138
138
110
126
152
167
74
110
69
74
146
91
111
92
69
106
104
79
89
138
92
127
139
178
122
77
139
138
139
126
101
169
127
148
104
103
93
126
117
152
99
180
104
129
122
91
139
122
123
92
86
55
139
55
77
139
142
111
117
92
93
110
137
56
92
69
122
110
55
105
137
56
145
110
103
75
84
107
132
138
55
169
122
111
138
127
126
138
127
92
105
93
97
37
123
158
79
101
86
152
75
134
110
138
127
107
109
151
109
110
37
67
92
180
111
124
64
102
138
93
160
98
107
67
178
93
92
79
138
55
122
88
104
115
110
134
124
124
103
55
99
92
83
105
92
122
167
138
55
122
107
111
108
103
56
124
146
178
139
132
122
67
108
130
92
99
79
128
127
146
98
128
110
55
104
92
178
139
37
67
127
168
37
80
169
56
164
55
178
58
103
91
92
171
112
169
111
92
97
126
107
144
126
156
75
104
93
98
127
180
119
109
104
123
69
87
144
136
92
178
110
122
152
92
55
109
92
87
139
122
168
92
67
83
93
92
109
98
37
134
92
148
169
158
152
178
67
110
99
97
139
110
117
127
86
84
97
102
92
171
101
69
148
95
178
78
92
178
122
169
55
163
94
93
111
86
138
107
114
93
56
56
67
126
92
142
126
119
92
109
104
127
92
148
56
106
91
56
122
139
86
103
158
91
56
55
96
37
120
58
58
111
56
128
117
146
144
152
122
138
55
88
110
122
139
109
128
93
88
55
123
169
105
124
146
105
92
77
103
68
158
149
152
69
127
105
118
74
128
138
152
56
101
135
138
58
162
126
138
128
122
117
125
77
101
56
122
128
126
92
123
92
92
92
104
122
138
104
110
139
111
55
92
140
127
177
163
144
81
122
138
37
86
89
58
148
37
92
105
110
134
74
77
146
92
115
138
122
55
37
37
138
103
105
37
56
162
86
160
68
148
126
55
127
58
178
77
91
78
126
100
126
110
171
67
138
108
147
102
128
107
178
163
105
139
84
92
152
182
104
69
146
117
81
136
164
91
104
92
169
37
99
37
67
109
138
56
107
110
199
56
79
107
139
122
127
122
111
67
105
92
119
117
92
93
92
120
110
93
122
108
122
138
178
158
126
55
109
146
135
37
141
128
93
110
92
75
152
139
169
93
128
124
123
122
149
110
93
138
93
119
83
140
104
123
140
122
115
148
67
135
138
74
67
105
162
37
178
92
75
105
110
115
69
58
97
128
112
123
111
178
92
86
124
129
110
171
55
55
188
140
55
79
120
102
137
79
169
93
162
110
122
144
118
107
129
92
92
100
79
55
144
110
137
55
138
92
112
105
122
180
75
126
131
125
105
114
81
167
107
98
73
79
69
56
101
162
126
55
139
122
93
122
171
124
126
74
105
122
111
104
127
97
127
92
92
93
101
146
104
120
145
55
105
92
144
55
67
148
130
122
37
55
122
75
105
119
56
122
139
105
128
92
146
128
105
139
55
58
55
147
79
106
105
93
67
178
69
122
74
93
123
92
179
122
77
104
123
126
132
37
107
78
55
139
101
110
75
125
55
108
138
111
165
92
138
146
105
138
93
97
105
128
105
112
83
91
67
55
58
139
77
105
126
140
55
81
92
197
126
92
131
100
123
109
178
122
139
131
138
102
138
104
104
152
91
74
55
146
148
89
123
130
144
83
55
136
74
136
109
93
67
126
83
37
105
69
126
182
92
109
122
128
120
122
139
126
167
146
178
105
119
99
128
110
142
117
178
130
122
118
110
69
164
103
55
55
93
144
110
117
119
93
140
93
58
127
67
67
55
67
55
119
110
126
93
169
138
138
55
92
92
122
55
105
139
104
92
123
92
109
107
37
126
101
93
138
127
93
98
98
122
92
115
56
95
102
93
122
117
91
56
86
114
165
122
122
146
77
97
135
126
140
58
132
37
105
105
119
92
122
79
122
140
180
138
110
110
171
136
102
110
55
55
123
55
122
55
67
110
37
110
105
126
144
103
67
128
127
152
93
95
67
105
126
103
152
107
95
97
80
105
69
73
68
98
104
109
152
104
88
128
92
148
127
111
58
134
104
55
105
134
79
37
138
68
67
56
110
138
145
109
178
128
79
108
98
87
103
77
144
146
150
92
89
162
119
86
92
135
97
109
98
37
69
111
123
105
77
122
55
168
135
79
110
178
178
137
58
110
144
93
73
167
79
110
108
104
105
132
97
144
119
122
140
119
139
110
92
56
178
128
141
88
105
93
92
79
122
75
126
92
105
92
92
58
171
140
67
178
104
142
178
92
67
56
109
138
77
169
80
91
110
92
92
67
178
141
122
140
138
95
37
93
67
92
126
67
55
105
114
112
160
105
91
122
74
114
37
102
77
69
110
138
105
110
110
37
178
110
56
109
67
105
75
68
127
92
67
56
93
105
122
127
105
56
89
92
98
124
106
92
104
178
178
123
56
124
104
105
79
122
58
140
126
92
104
93
93
98
123
89
152
92
139
127
67
55
86
111
122
124
37
91
72
105
165
92
110
169
96
178
152
96
111
92
123
127
128
110
104
37
79
134
74
138
104
134
110
112
167
129
148
122
180
93
69
151
97
124
138
93
110
152
148
139
83
81
134
104
138
99
110
152
138
55
37
122
146
119
58
122
91
122
56
75
138
138
55
89
84
169
92
67
92
69
127
104
122
67
122
180
139
79
135
92
124
119
56
67
100
109
67
56
134
92
105
117
92
86
118
110
37
99
134
79
130
124
55
58
144
92
58
86
114
69
91
152
130
93
92
83
171
104
122
105
88
134
83
144
122
178
145
74
104
110
55
146
67
128
148
102
74
111
110
134
105
55
137
88
92
56
55
148
37
130
77
99
72
69
138
56
126
178
122
92
79
79
58
92
74
37
67
92
135
117
92
135
93
56
104
58
95
67
140
79
138
107
122
164
55
74
115
138
106
92
122
110
152
143
138
91
122
134
120
104
126
99
101
160
56
152
92
114
91
148
67
101
163
135
69
104
127
126
189
68
55
37
110
95
77
134
112
92
69
92
138
122
100
107
108
58
56
178
92
74
83
104
37
79
92
110
168
55
123
37
105
110
140
101
89
111
177
110
119
163
99
104
79
144
55
72
69
122
106
162
104
128
104
189
120
163
55
58
69
144
126
92
68
83
92
55
92
92
132
37
37
89
123
122
122
158
178
130
138
91
55
92
117
55
56
92
74
123
58
169
139
178
110
80
56
103
105
110
93
107
110
92
104
131
110
58
144
106
103
139
118
105
83
92
121
110
119
110
37
126
55
122
131
92
117
56
126
79
93
95
125
148
105
123
130
122
178
136
169
110
105
69
140
128
86
107
105
137
110
55
122
112
105
110
110
126
105
37
98
104
75
111
74
123
119
56
79
144
99
55
105
169
127
140
128
91
146
97
109
93
146
127
168
93
98
92
126
122
119
56
92
138
110
56
67
97
102
89
86
37
86
110
91
139
112
126
127
56
119
55
75
37
65
55
178
56
134
110
56
123
58
139
126
127
132
148
92
111
178
127
99
103
138
37
123
126
124
91
69
110
178
67
111
86
126
138
126
55
107
128
138
105
109
126
99
119
55
92
105
56
79
122
145
126
138
124
140
100
122
136
156
110
111
93
178
128
37
124
75
107
109
86
111
110
165
117
92
69
119
37
169
122
105
105
104
169
37
56
122
110
114
79
138
55
134
93
104
149
110
94
69
180
127
79
55
178
110
109
168
92
93
91
152
58
171
69
115
110
146
92
67
109
84
37
55
93
146
105
67
77
139
92
67
86
122
75
75
91
138
127
124
127
105
139
126
144
95
110
55
92
144
124
86
77
110
67
132
110
77
55
74
67
98
86
123
100
110
110
56
55
75
56
105
126
37
136
110
134
97
111
138
55
69
108
102
67
58
122
139
105
56
159
67
134
92
141
105
104
138
83
122
55
122
134
144
178
106
104
123
92
152
152
124
95
55
127
113
79
93
97
111
139
55
111
110
77
112
79
117
58
135
37
126
110
105
92
105
86
126
124
127
128
136
122
37
140
105
55
110
103
92
75
142
68
151
92
55
126
109
126
122
67
91
119
139
126
138
158
152
180
55
122
79
67
87
169
92
95
58
105
138
56
86
138
107
92
120
112
114
92
178
105
99
55
58
79
122
92
92
67
58
138
97
72
147
86
95
68
105
58
67
104
110
126
171
79
93
107
122
138
121
144
91
128
57
86
140
83
138
69
110
98
126
55
103
107
92
122
67
162
92
139
122
67
98
93
99
124
126
56
81
74
156
122
104
109
86
126
83
105
124
128
92
91
110
127
144
104
165
67
178
92
124
122
77
140
146
127
69
126
75
102
168
105
199
98
92
56
97
91
164
86
122
120
126
104
58
37
178
92
136
126
135
74
76
37
86
112
104
68
74
92
139
145
93
75
86
106
93
93
122
79
55
130
107
123
56
67
55
72
81
77
122
37
58
131
128
139
107
122
103
111
126
138
104
126
110
104
110
99
79
93
81
92
92
78
56
67
127
86
119
110
86
105
138
126
139
88
138
127
138
138
110
165
105
136
67
55
95
126
105
110
67
86
92
55
146
105
37
104
126
99
103
55
138
93
140
146
79
122
119
55
101
122
105
147
120
144
126
134
110
55
115
93
138
93
69
67
123
144
152
144
122
146
105
122
56
169
104
132
123
74
105
163
110
168
69
37
91
109
92
199
37
56
111
88
110
122
123
105
37
110
127
126
150
96
74
122
119
75
92
114
91
92
92
138
138
138
92
74
117
92
126
105
67
94
126
92
56
152
92
146
122
132
127
126
122
192
152
146
55
84
67
79
142
122
152
122
105
178
117
37
93
67
114
68
112
178
84
107
100
58
93
105
85
104
110
146
92
126
67
74
58
67
162
107
110
122
101
83
132
122
77
67
144
126
152
103
122
86
106
148
126
104
88
126
55
87
122
139
111
146
94
55
138
132
67
92
83
110
110
83
137
138
37
98
136
139
139
126
78
83
134
98
78
153
169
89
56
99
114
163
97
105
126
55
67
92
108
118
107
152
102
93
56
69
104
127
122
127
58
74
117
128
92
125
171
91
105
132
119
122
74
69
126
92
86
128
67
178
171
79
56
101
126
67
178
105
132
58
139
92
58
67
79
167
158
138
88
110
86
140
138
126
144
105
122
92
134
107
132
56
92
123
165
99
69
58
119
110
122
123
83
122
138
98
92
113
87
37
84
92
99
55
91
164
109
37
140
85
110
122
120
110
134
138
61
75
144
79
122
128
109
67
140
128
104
76
158
125
112
114
107
128
148
92
127
89
55
199
128
123
55
124
120
119
86
69
112
92
69
74
104
144
164
56
99
152
105
86
122
79
67
92
75
99
92
77
92
92
152
126
93
131
58
56
79
130
91
158
104
67
144
104
79
73
56
138
86
77
67
158
126
120
110
104
91
178
122
110
178
79
110
79
127
55
92
126
131
79
124
139
127
79
122
55
119
83
108
37
55
122
55
109
55
79
92
37
140
152
74
110
92
127
64
126
77
107
104
134
138
122
68
92
104
144
75
101
67
192
67
147
110
144
83
103
122
124
126
105
110
127
79
93
126
138
127
92
97
122
56
110
97
117
93
105
132
138
138
55
109
77
77
179
122
107
105
105
106
110
55
81
69
55
128
104
93
92
95
132
79
111
120
120
123
58
130
91
164
108
171
104
105
107
122
74
127
138
74
58
127
106
122
130
79
122
91
55
110
160
158
110
93
99
148
55
140
56
93
120
99
55
93
55
128
93
37
56
140
104
127
112
92
93
138
56
131
55
146
124
128
103
178
127
126
98
55
55
161
110
122
139
120
105
55
93
152
123
137
119
112
37
131
140
104
79
169
111
178
105
199
148
99
37
55
128
158
126
129
91
119
110
104
123
79
55
130
109
104
156
91
110
78
123
126
92
92
58
79
126
139
93
110
81
118
111
110
178
105
79
111
101
55
126
114
124
144
55
169
105
104
164
139
122
146
117
93
37
139
168
151
138
100
55
75
128
92
138
178
106
86
56
67
127
148
94
119
131
110
96
67
107
107
139
98
138
67
99
107
67
89
74
58
95
163
55
92
58
104
89
123
111
89
110
122
110
93
92
140
127
138
58
126
104
138
93
169
119
146
130
140
122
104
105
92
165
67
122
119
99
91
105
92
55
74
107
126
92
109
79
122
37
120
58
105
105
138
104
148
130
69
105
105
67
123
162
107
92
152
122
105
69
99
145
92
93
104
119
122
67
104
111
123
152
55
132
136
37
37
106
97
92
122
69
67
111
105
55
146
104
93
68
92
137
103
55
140
122
136
106
123
55
127
97
92
92
92
67
139
69
138
122
178
146
127
104
126
138
92
95
144
98
67
139
92
126
127
124
69
134
117
120
55
37
105
67
95
92
139
162
92
107
67
138
124
122
58
58
96
148
110
105
139
79
119
93
103
56
178
67
144
138
138
58
126
128
67
104
105
98
112
79
67
99
110
55
114
98
56
37
82
122
152
127
139
104
119
140
101
87
77
115
125
122
86
97
144
92
123
88
86
138
126
126
146
146
84
103
79
55
111
56
126
55
58
93
55
148
122
110
139
114
97
119
135
55
67
110
103
105
98
138
128
134
91
77
107
104
146
77
86
56
105
137
144
134
140
152
122
79
128
55
138
83
144
92
137
110
122
55
99
92
37
165
119
67
88
112
110
55
80
132
146
58
120
152
135
148
111
91
120
178
55
67
139
124
119
67
67
92
105
74
111
114
91
55
92
69
92
67
119
128
124
124
163
119
152
107
146
146
80
104
110
104
79
171
122
119
180
83
92
104
105
140
178
92
55
74
93
138
102
123
74
105
37
110
83
92
56
72
84
69
37
109
92
92
140
110
139
152
105
147
92
136
126
138
92
137
104
144
117
84
86
107
111
80
113
56
55
114
77
139
134
87
178
55
104
134
128
146
92
169
143
124
107
199
103
55
137
91
107
74
55
128
97
109
74
108
138
138
180
77
67
171
109
134
79
114
130
122
91
56
152
122
81
37
92
92
69
111
122
126
131
105
77
146
112
74
127
106
146
126
55
92
122
152
56
126
83
119
104
104
67
58
99
135
138
110
144
73
99
126
127
110
100
93
109
158
122
168
92
132
122
136
92
98
171
99
126
88
146
144
144
128
92
110
55
117
68
92
56
158
95
81
67
104
107
110
126
58
105
122
55
139
79
112
77
58
104
110
105
77
55
138
126
127
105
144
84
92
55
93
111
152
137
110
55
138
136
126
56
105
163
37
105
126
77
124
132
56
93
122
67
106
56
127
118
178
56
37
92
126
127
138
58
98
108
123
144
55
79
114
134
95
126
102
67
158
139
88
146
152
104
178
74
152
91
37
69
93
67
127
107
110
56
55
92
37
55
138
92
135
104
114
99
86
77
95
55
92
126
92
165
110
140
105
67
144
121
152
58
106
109
93
127
68
95
180
126
58
138
84
92
126
55
119
37
99
114
75
138
103
100
128
37
152
124
126
160
102
37
124
69
122
69
126
145
58
178
119
111
55
163
123
125
122
69
92
104
88
109
110
92
74
146
96
122
128
123
105
99
122
103
105
108
93
74
105
144
58
122
86
81
126
144
168
58
140
127
79
126
138
92
104
109
124
127
67
110
108
124
98
93
93
110
37
105
136
106
130
55
64
92
84
93
104
152
92
105
67
101
127
104
122
146
126
58
140
122
144
79
107
103
165
130
169
105
69
37
139
93
93
139
56
86
68
151
177
178
92
137
99
108
110
111
58
126
74
110
107
110
127
77
158
92
77
58
55
152
69
93
126
58
37
55
107
56
92
69
126
128
92
67
92
95
79
67
81
105
55
68
107
69
92
110
123
92
103
67
111
105
69
74
56
93
68
139
67
138
86
100
56
79
94
116
146
93
128
93
122
178
127
79
55
56
58
132
126
105
134
92
178
89
58
130
103
139
75
128
55
86
55
67
122
119
99
56
98
105
129
67
55
140
67
83
127
91
105
80
93
77
104
129
92
67
122
138
103
55
55
83
122
56
67
67
103
56
107
76
110
86
92
104
138
67
122
88
113
37
168
110
122
122
104
122
74
93
55
152
55
148
92
102
127
114
93
122
104
83
58
92
178
55
138
107
100
58
105
123
124
74
122
105
139
138
129
144
92
58
37
108
84
104
120
89
55
104
114
93
111
127
119
86
92
127
93
124
55
115
111
105
127
144
92
100
126
98
68
99
128
124
131
123
138
92
110
115
96
148
136
146
55
75
105
122
135
104
139
98
92
168
55
105
169
112
77
123
119
97
110
104
144
92
84
104
104
126
126
178
140
158
110
99
105
99
55
92
163
180
128
140
109
105
105
92
103
139
110
107
134
55
104
99
131
134
109
126
122
118
122
67
55
162
132
92
102
145
102
126
55
104
122
67
178
58
92
125
115
97
79
127
171
95
86
98
126
139
56
92
136
104
124
152
67
86
119
105
55
89
83
56
87
105
144
74
126
125
79
93
122
67
127
104
103
83
110
77
162
124
123
67
67
74
119
139
127
55
55
145
180
111
109
55
119
93
103
152
146
114
110
83
92
138
92
138
93
138
110
122
110
152
122
92
56
91
74
69
37
55
92
92
55
86
152
138
122
112
67
131
86
114
67
112
67
79
110
56
139
67
55
93
152
103
119
69
126
123
37
99
110
67
146
92
119
138
138
168
112
178
168
67
55
86
131
107
92
55
79
58
92
146
126
58
55
56
138
128
110
138
128
91
128
104
120
137
138
105
150
110
79
86
146
140
122
55
67
93
138
104
125
178
110
111
119
118
124
67
56
67
131
96
124
55
178
92
140
112
121
126
131
56
122
77
124
114
105
104
128
91
168
83
178
114
122
139
55
74
101
115
178
105
109
99
93
120
56
89
167
91
122
37
92
56
152
55
138
123
56
111
126
144
122
80
132
122
149
92
105
78
124
140
127
124
138
111
107
138
68
67
98
86
104
120
92
99
67
105
104
93
138
86
106
79
138
37
92
123
127
92
160
119
104
56
104
110
123
171
138
110
127
105
122
139
152
93
144
139
127
86
111
137
74
102
96
105
102
56
126
97
106
136
75
126
126
67
144
69
139
128
101
58
144
93
139
97
119
37
92
110
138
140
58
109
122
165
136
110
189
67
144
69
109
73
91
37
149
37
127
148
55
138
105
103
58
92
128
178
55
146
138
138
55
123
93
58
110
127
103
109
178
105
126
104
119
104
58
165
92
69
144
95
93
92
55
141
127
86
138
178
104
136
69
109
55
126
110
108
55
93
79
138
77
111
79
105
83
102
122
110
128
67
127
127
79
77
121
86
92
56
104
92
67
83
104
109
139
75
109
105
103
103
95
103
83
123
110
37
89
98
178
140
93
92
105
167
122
132
110
126
86
163
37
104
58
105
112
178
56
102
83
79
78
138
124
127
78
88
92
152
111
88
99
74
55
86
74
58
127
138
79
86
133
91
139
102
98
113
84
104
126
132
92
122
123
99
56
55
126
86
105
68
142
104
128
178
122
92
105
67
37
152
134
171
105
122
144
92
134
115
169
67
140
110
86
37
178
138
122
144
55
126
93
124
105
92
93
137
127
108
138
55
55
163
67
139
110
92
74
122
126
110
56
113
122
92
99
92
67
138
98
145
55
127
37
106
138
100
122
110
72
130
92
139
56
79
131
199
139
103
146
152
92
104
178
146
55
122
92
145
124
92
79
55
163
67
58
139
131
110
138
104
138
86
141
110
110
112
169
55
178
122
92
109
92
123
37
169
171
126
139
110
79
92
128
123
92
58
127
56
122
169
152
83
107
105
72
111
178
77
158
55
108
127
37
128
71
122
178
146
141
93
67
110
140
81
126
127
95
55
58
67
74
91
78
178
119
79
138
126
110
138
126
109
121
55
110
83
127
146
146
74
130
147
69
55
103
104
131
148
118
124
56
55
152
83
104
101
79
163
138
74
104
92
56
136
103
93
92
55
91
144
126
182
74
58
99
110
128
123
92
110
146
111
105
105
110
132
56
77
139
136
124
109
135
92
106
122
110
100
84
138
146
104
164
110
128
37
67
112
138
136
92
110
93
104
103
122
58
92
144
182
110
138
127
100
131
135
132
110
104
55
146
168
96
101
107
132
106
58
92
146
122
120
80
128
97
126
105
103
117
131
99
127
105
92
122
109
69
111
57
139
128
122
152
135
121
144
126
131
79
109
56
138
163
122
138
126
98
101
127
121
138
123
67
188
55
91
67
126
140
134
92
126
199
104
140
55
178
112
99
171
127
93
126
126
105
98
102
102
99
105
123
55
110
67
105
110
67
110
103
105
169
122
107
67
91
163
91
126
104
122
132
127
115
125
92
75
92
125
55
91
103
148
110
85
158
56
138
86
110
119
101
105
92
126
105
105
144
55
130
135
178
58
128
180
56
135
83
118
128
92
81
74
92
108
105
105
84
56
56
100
128
158
74
69
152
136
106
97
199
58
55
107
102
97
105
163
168
119
139
135
110
131
58
92
114
86
148
37
67
148
78
93
162
86
102
92
92
138
91
122
128
144
123
93
182
101
69
121
93
67
134
122
132
88
84
68
114
104
97
93
55
37
105
101
128
144
113
93
99
104
86
67
92
122
75
105
67
109
146
152
125
140
128
92
92
79
103
56
97
178
138
110
55
55
109
105
110
104
111
112
105
86
127
126
77
124
67
139
55
138
104
91
104
137
122
112
140
69
92
103
109
139
169
92
89
178
146
56
138
79
74
165
37
93
139
105
92
92
69
37
56
55
130
109
75
58
104
92
37
92
127
126
122
93
110
169
92
178
110
104
56
92
123
103
92
97
37
79
55
55
110
93
165
105
128
55
68
55
122
58
55
108
92
146
92
37
104
146
67
124
118
56
79
106
146
168
122
104
114
93
152
91
74
37
69
128
144
55
110
137
152
69
69
86
123
99
135
55
182
105
105
67
79
126
92
139
138
86
137
92
169
109
138
107
105
58
122
55
178
89
67
110
114
104
152
56
106
69
122
105
92
152
69
136
178
110
104
122
126
126
89
105
65
142
92
140
138
123
144
171
92
128
86
126
56
132
79
144
93
138
102
104
92
138
164
93
55
127
131
109
122
126
67
55
56
91
67
127
92
119
104
171
122
110
98
136
92
55
139
55
103
92
104
124
67
55
144
111
68
128
89
111
127
109
106
74
56
102
92
179
136
105
67
55
99
107
164
56
199
138
58
144
127
110
122
56
74
146
101
55
99
109
168
99
86
84
107
178
111
158
148
105
138
139
112
169
68
105
104
105
99
110
74
100
58
109
105
105
120
119
122
152
117
158
179
101
92
69
56
122
126
158
128
84
146
110
56
88
93
139
114
110
88
180
92
37
106
117
122
37
139
146
75
130
58
123
135
123
123
110
139
56
130
67
92
98
158
67
55
140
152
104
117
146
77
114
130
139
171
67
152
123
126
139
160
103
129
178
122
126
169
92
56
122
58
109
106
92
111
107
110
111
140
74
122
92
77
138
138
138
110
67
69
134
111
92
79
103
67
37
148
86
104
145
83
122
122
168
67
119
171
56
91
101
126
98
122
104
128
92
152
123
93
110
77
104
130
138
122
117
91
91
92
92
98
55
110
119
110
178
58
152
105
129
107
105
178
37
171
37
75
79
91
93
171
123
75
77
120
119
110
99
144
144
67
107
105
86
55
104
122
111
128
67
147
69
92
178
89
92
92
122
69
139
102
74
139
130
93
93
122
110
148
119
106
104
105
138
105
107
126
67
111
138
100
106
148
92
138
99
139
91
139
67
135
83
140
106
58
124
138
122
128
58
120
144
77
86
55
56
110
104
86
126
167
126
139
100
138
105
109
93
146
158
152
93
111
122
77
108
105
148
91
85
77
110
104
58
93
88
134
136
126
99
128
109
127
92
144
56
55
122
69
93
56
122
55
37
55
124
55
83
37
110
69
109
168
112
141
140
112
93
56
110
144
99
92
67
121
55
124
92
110
55
105
136
79
77
146
134
122
122
127
111
55
92
68
37
55
55
132
58
75
93
139
130
130
67
67
56
98
138
67
140
112
67
113
146
107
148
134
100
126
92
147
146
69
114
92
139
80
96
138
67
124
105
108
55
150
108
149
126
104
80
126
92
110
105
106
129
37
126
102
148
109
152
104
89
123
169
110
99
138
136
55
101
84
152
74
69
117
139
131
122
78
67
67
122
126
58
69
182
138
58
55
178
111
97
138
67
55
127
112
180
104
143
56
92
105
102
139
128
84
138
130
99
72
92
127
79
103
122
126
91
91
81
110
74
104
180
169
67
169
128
102
105
146
104
88
75
119
127
92
92
103
131
103
147
55
110
92
77
92
91
75
104
92
127
138
83
169
144
119
110
67
91
134
99
144
126
69
92
55
110
138
67
58
104
67
101
79
178
110
111
99
68
92
67
92
84
125
152
67
105
86
126
105
122
101
129
163
102
107
84
107
126
58
144
86
92
107
117
128
100
178
122
128
136
37
105
74
97
37
107
163
104
103
83
83
114
178
122
144
58
102
84
91
105
92
91
105
199
93
104
132
110
111
92
152
110
148
93
89
106
146
93
128
86
74
107
55
178
152
144
119
128
178
104
152
91
128
131
109
127
126
56
137
142
126
55
137
91
74
122
120
92
146
56
91
128
118
111
55
93
182
148
126
124
111
139
58
138
130
126
55
145
109
58
127
79
69
92
128
103
92
86
146
92
138
164
92
105
119
93
113
67
162
152
103
83
92
136
56
92
92
122
110
107
112
104
108
105
92
93
102
107
92
109
128
124
111
37
122
89
105
92
93
55
92
98
167
93
124
168
110
104
146
122
104
128
108
110
130
110
100
178
130
139
55
92
67
93
89
110
120
119
92
124
165
122
67
107
92
77
123
79
130
67
142
100
92
104
158
68
142
67
79
93
37
138
97
158
138
152
152
104
78
74
146
114
83
69
105
99
92
121
110
106
93
95
55
135
164
118
144
92
58
99
105
55
105
92
126
55
119
104
80
37
138
123
128
163
92
114
104
154
110
104
57
126
130
105
67
163
92
126
140
74
68
122
117
138
93
140
122
55
130
128
55
130
105
138
37
124
135
37
138
148
58
97
138
68
130
110
123
98
146
180
118
55
74
126
110
104
77
138
64
101
122
135
126
55
163
68
188
75
118
67
152
104
95
92
74
110
138
129
67
163
168
121
139
135
91
122
55
110
178
124
37
104
110
126
146
128
92
56
37
87
127
97
138
93
104
128
105
178
37
75
123
126
92
110
122
101
127
144
92
141
126
37
130
140
126
145
139
56
127
152
105
97
114
86
55
131
158
92
58
169
56
178
58
98
148
168
114
69
79
132
99
131
178
92
122
110
86
103
110
120
153
107
104
122
127
86
148
92
104
104
37
92
124
144
77
58
67
169
69
178
56
123
122
105
139
58
122
67
55
69
122
120
126
93
120
122
104
138
110
94
164
91
58
126
127
67
92
138
131
140
110
168
119
110
136
56
108
93
110
104
138
86
92
138
122
110
87
105
112
169
91
110
103
74
128
134
92
138
110
132
138
117
110
104
55
92
104
96
74
114
118
69
77
104
130
119
120
105
100
110
110
111
67
122
131
127
56
139
122
92
180
89
124
148
122
146
158
77
97
120
58
97
126
119
122
126
58
37
58
127
58
104
144
91
105
110
77
56
74
127
99
105
37
126
84
122
73
104
77
79
37
79
86
126
111
180
138
110
68
127
93
75
182
67
122
93
74
67
122
123
92
67
138
79
122
55
122
109
92
99
145
152
110
163
92
129
74
67
81
104
144
84
67
84
114
138
110
84
134
105
93
178
68
158
128
169
56
122
165
169
122
91
104
128
93
75
127
122
171
87
110
99
68
158
122
104
178
86
131
146
79
92
92
37
138
129
93
56
122
110
122
126
37
58
137
93
100
104
122
134
138
128
91
123
74
152
108
67
127
56
69
98
69
67
105
124
110
67
144
74
69
56
74
74
139
86
69
160
146
139
122
84
77
126
92
55
122
67
135
138
144
56
135
55
79
100
130
180
110
138
111
126
109
108
104
55
86
111
93
138
127
111
119
84
77
119
122
111
37
104
67
56
92
107
103
79
104
117
138
119
138
122
152
98
122
77
67
111
139
99
128
81
163
92
110
127
131
96
93
130
114
138
119
55
139
117
103
99
37
37
162
92
126
122
138
139
69
126
144
92
122
91
123
91
138
125
131
134
144
144
110
130
105
92
111
55
68
75
128
100
93
86
119
131
124
105
144
75
138
148
99
58
105
127
91
97
88
119
126
91
37
55
139
55
144
67
144
74
58
112
144
111
139
96
115
77
128
92
55
119
152
92
111
146
104
134
138
126
37
131
144
109
138
77
178
103
127
112
104
104
56
55
56
104
37
69
105
143
109
103
93
138
119
111
126
119
55
55
58
105
131
104
77
139
126
122
140
122
86
139
55
86
105
178
109
92
123
55
111
92
122
105
55
93
126
138
86
69
77
99
122
97
138
110
126
55
99
163
178
72
92
67
55
93
149
117
97
126
126
110
145
92
55
67
122
122
105
101
92
164
137
110
79
178
146
106
67
131
129
144
92
122
110
67
55
83
134
67
124
105
127
127
101
126
110
106
86
97
56
92
105
100
68
138
104
128
121
126
128
68
109
58
152
139
152
105
55
120
77
86
67
144
140
67
79
169
153
58
162
110
56
140
103
92
110
105
77
105
124
126
67
97
131
122
128
37
105
104
68
92
104
86
67
124
134
67
105
126
67
92
74
127
109
110
55
86
117
142
105
123
126
105
144
91
134
126
93
96
160
127
67
55
146
99
137
83
168
130
164
128
169
144
89
167
126
122
109
37
152
122
133
111
69
55
122
93
122
126
55
199
55
146
104
104
136
126
89
144
126
77
138
97
105
138
106
92
122
109
105
139
92
86
105
111
94
117
55
148
93
37
58
149
139
150
67
75
116
139
55
110
138
104
110
55
55
92
144
79
126
132
92
110
130
75
55
92
178
92
68
55
105
114
104
101
84
77
165
107
56
67
144
111
139
138
110
134
111
129
107
110
151
69
104
110
163
148
104
122
105
119
114
104
67
89
122
95
56
138
126
148
126
127
148
128
105
129
152
97
83
67
146
137
110
109
126
104
139
55
99
104
92
126
88
92
162
110
140
55
123
92
99
130
163
178
56
178
122
92
119
119
99
104
189
139
152
122
110
128
130
145
99
55
104
110
92
67
103
142
116
105
168
134
93
92
55
164
105
164
79
55
134
84
67
86
127
91
91
180
126
92
74
156
92
102
138
111
130
110
67
127
119
67
131
93
99
159
56
140
58
114
55
169
37
127
92
169
105
148
110
55
77
92
140
67
104
138
56
67
79
136
98
115
152
127
103
122
99
138
89
144
55
122
77
77
105
126
128
122
98
75
92
77
93
37
119
138
101
114
84
105
105
93
104
118
138
109
37
134
126
67
144
92
93
122
107
86
105
67
56
178
55
67
68
98
127
110
110
93
111
127
86
100
105
56
55
122
112
126
119
138
111
104
120
77
55
138
92
145
68
138
127
89
55
118
123
67
137
127
110
111
135
122
146
92
126
158
110
111
67
123
122
98
97
126
122
104
144
178
102
144
67
126
122
55
126
68
55
111
55
122
67
180
92
86
56
110
151
140
56
67
169
126
109
56
92
134
136
105
83
55
139
111
110
140
105
56
178
103
68
93
91
58
130
138
99
81
112
93
126
142
158
134
67
74
92
69
144
86
55
37
127
110
126
120
104
69
105
56
74
126
169
127
132
117
163
79
138
92
110
138
112
134
37
101
83
122
139
126
104
169
126
75
74
74
181
101
92
77
105
93
92
131
98
131
110
111
55
126
85
122
79
105
69
178
75
110
158
55
74
111
167
127
105
138
77
55
127
105
139
107
99
92
149
92
37
144
55
104
91
55
119
92
126
56
134
95
138
136
67
108
139
93
147
95
127
58
105
104
152
56
56
109
79
98
86
182
92
55
139
114
152
123
167
110
124
105
152
140
67
93
93
120
144
144
136
56
119
92
142
55
105
100
56
126
103
74
144
92
105
136
119
55
75
56
138
84
138
138
91
92
92
149
92
110
92
56
111
122
58
129
86
56
55
79
99
121
123
92
112
138
67
111
144
130
56
117
93
55
160
106
92
55
77
37
110
110
122
67
122
138
104
105
91
122
119
67
123
81
109
178
126
97
69
37
145
55
152
126
55
110
148
122
126
126
147
112
123
67
144
110
146
69
162
105
122
132
94
55
69
75
168
111
130
127
92
95
87
67
139
178
92
105
107
107
146
93
138
167
122
146
69
37
110
91
79
146
110
104
74
139
92
99
78
138
126
122
92
106
126
58
109
86
86
56
110
120
126
77
92
107
68
95
110
99
118
105
126
110
77
102
105
88
180
169
146
120
111
111
110
139
105
139
163
79
110
67
138
140
152
103
178
126
71
139
128
99
99
112
86
93
141
105
129
55
127
140
55
138
37
126
92
138
151
77
105
122
103
119
92
122
56
71
56
112
127
124
152
56
178
92
69
93
122
168
105
123
56
126
79
106
122
92
91
56
169
111
105
104
146
110
142
55
139
141
122
98
139
165
92
92
109
97
79
139
92
134
110
127
177
58
119
77
92
55
77
110
109
122
123
110
92
110
115
37
110
74
92
79
55
140
56
105
131
69
110
158
169
105
131
55
122
55
130
74
55
103
146
141
140
122
168
103
67
169
169
55
94
148
119
67
136
118
140
110
74
138
146
119
101
102
104
147
92
138
138
98
134
55
123
131
126
145
105
97
162
81
110
104
110
128
103
151
99
135
105
119
178
56
105
75
92
165
55
74
145
128
83
89
160
126
84
58
67
140
144
138
139
127
97
77
105
77
124
144
93
105
127
105
111
58
119
93
158
92
126
79
107
146
109
105
105
105
158
129
86
108
55
123
122
152
138
119
129
126
122
56
83
178
147
104
104
113
92
56
99
110
139
110
178
55
105
98
113
126
114
146
92
152
69
178
110
107
37
118
110
105
37
134
58
122
150
69
37
56
69
91
69
55
169
99
178
138
123
142
67
92
67
112
122
138
67
147
79
55
171
89
110
69
77
139
126
110
55
162
124
93
74
110
110
91
92
56
127
111
56
55
178
139
110
92
37
105
122
111
122
111
67
145
109
58
107
119
178
67
92
111
92
115
55
110
108
180
88
123
105
178
58
55
136
126
67
92
139
152
93
84
178
77
37
55
91
111
92
104
128
69
142
126
67
55
86
112
79
145
55
137
148
152
164
87
113
67
129
119
110
111
111
37
107
122
93
178
69
138
103
106
126
145
99
104
144
151
138
56
178
69
120
121
105
89
105
123
92
122
152
139
91
178
144
105
139
67
171
139
83
105
104
199
88
104
92
58
115
106
92
146
92
178
55
92
118
74
67
139
154
134
145
123
118
122
55
125
134
55
134
92
37
86
84
144
111
79
144
164
37
100
37
37
104
126
79
126
79
67
55
93
55
104
140
92
87
55
168
134
67
91
126
91
139
92
69
122
92
112
128
92
69
160
95
177
86
124
119
97
140
128
127
131
55
126
104
86
104
111
105
92
74
93
79
104
119
67
69
128
110
131
171
122
112
148
79
131
126
37
128
135
140
111
139
99
56
119
37
117
144
92
67
104
99
56
123
56
123
37
104
122
72
86
119
104
107
132
110
91
99
92
111
67
111
132
92
122
110
122
97
130
77
104
67
134
105
126
119
57
102
122
93
55
86
67
110
128
163
128
108
178
178
92
67
119
100
144
105
135
138
69
92
58
55
144
91
127
102
178
110
110
92
69
102
139
169
77
120
92
55
56
123
67
93
156
92
56
156
83
68
122
84
126
69
145
114
58
126
67
79
67
180
139
148
78
56
139
79
74
127
105
83
122
58
139
110
158
56
104
136
115
163
136
158
91
110
92
127
105
83
86
93
55
83
67
104
86
138
122
101
138
104
120
110
135
144
86
67
120
126
86
127
104
79
138
127
92
144
124
75
89
103
126
110
55
109
128
128
91
94
97
93
55
93
55
105
69
139
120
134
56
178
110
104
85
134
77
69
127
122
92
110
107
110
139
137
81
139
79
144
37
123
122
91
138
92
67
86
99
56
144
109
121
122
110
69
69
105
146
126
127
67
139
97
55
115
105
124
98
120
93
124
104
84
58
138
67
136
58
69
105
148
77
127
92
122
138
122
103
67
163
92
136
142
67
92
178
37
160
117
146
144
127
86
126
117
138
117
104
139
132
68
163
92
104
152
146
138
138
106
128
131
131
146
58
147
99
122
84
146
75
138
95
92
160
138
129
122
110
104
134
86
68
138
77
55
112
77
69
138
110
178
126
77
158
152
110
134
126
128
138
126
103
122
94
92
92
91
74
178
156
105
69
93
55
141
78
55
138
105
178
122
128
110
128
110
103
110
89
102
129
109
92
105
56
92
111
129
78
135
101
77
91
92
122
91
103
91
91
180
58
92
102
156
105
105
105
126
100
55
124
124
146
37
86
138
107
55
68
93
56
109
152
126
128
56
152
160
91
112
152
55
137
171
167
77
108
79
123
107
131
69
55
142
111
107
97
104
152
126
74
92
55
86
127
124
134
145
158
109
92
75
152
105
126
69
139
92
105
110
68
55
69
104
111
105
130
77
123
55
169
101
110
138
146
83
117
126
138
104
92
134
178
67
75
56
55
139
92
77
37
99
58
91
105
79
122
139
77
111
152
108
127
126
123
110
119
122
109
119
92
86
138
79
37
105
67
105
75
106
105
134
115
55
84
99
37
129
68
110
105
93
117
108
92
55
92
103
126
132
148
134
148
58
128
91
92
144
105
79
158
75
92
119
124
152
55
110
144
102
124
144
69
91
126
67
152
110
98
88
138
74
56
92
55
37
107
116
104
127
37
37
152
163
122
103
77
135
97
134
126
162
180
138
127
110
105
159
104
56
106
144
117
92
126
91
55
115
122
178
114
106
178
144
126
130
171
93
67
86
91
105
56
104
55
67
138
123
95
127
146
99
111
110
127
56
58
127
168
140
138
120
97
165
135
88
131
92
86
56
141
139
102
83
105
110
87
122
93
37
110
110
107
92
92
117
111
55
97
92
93
113
87
93
115
144
136
92
138
91
86
120
145
61
128
108
169
105
127
130
92
79
110
104
55
118
89
114
125
67
142
178
104
55
93
138
86
67
56
138
122
86
99
122
124
140
126
83
168
67
123
120
67
100
92
124
37
56
55
119
84
74
110
67
99
97
37
102
122
122
110
122
74
126
140
114
98
171
112
178
148
92
126
126
126
104
55
128
79
67
119
151
144
122
92
122
92
100
92
74
68
122
103
139
103
58
178
111
132
107
178
136
192
84
74
110
148
92
103
56
119
69
55
56
131
37
122
140
178
67
74
126
171
103
123
55
55
149
146
68
122
92
138
74
139
168
148
142
139
126
126
37
131
171
102
122
126
132
105
111
126
148
128
37
169
126
56
55
122
83
56
169
122
110
92
123
178
144
144
111
105
83
110
37
55
58
74
86
55
91
68
110
92
72
126
117
131
110
89
122
139
106
158
55
56
92
102
128
107
105
153
127
139
105
135
126
122
98
83
55
37
122
126
74
131
110
168
92
37
37
91
138
126
55
84
91
95
110
148
152
134
67
137
98
78
123
104
119
138
56
137
117
122
138
78
79
56
147
88
92
55
122
75
104
122
126
83
110
105
127
99
144
123
144
99
92
119
122
105
127
55
92
119
55
107
149
94
117
105
99
55
131
146
67
92
127
146
91
56
138
67
56
103
77
86
77
99
97
69
104
138
122
58
122
139
146
134
138
109
74
74
77
132
122
124
105
56
138
74
111
86
122
99
86
74
156
55
138
134
111
83
158
55
84
171
109
84
130
124
37
105
122
107
132
104
125
56
125
127
58
130
101
91
178
92
93
69
144
140
74
75
104
105
69
91
55
126
126
110
93
89
105
57
93
108
55
126
144
104
122
93
120
119
110
93
86
86
110
140
110
95
130
128
69
69
93
130
95
104
86
127
126
105
168
86
122
95
91
92
67
140
126
79
68
92
120
93
168
75
67
138
105
127
145
131
55
134
126
96
103
98
58
126
134
84
68
126
117
136
122
112
138
134
110
136
122
55
138
99
138
132
126
56
134
122
110
122
110
130
110
110
74
77
107
67
138
92
67
126
110
171
92
122
86
126
99
124
123
119
58
55
79
67
107
144
67
148
153
139
110
77
58
122
124
110
56
97
119
107
103
122
169
109
67
94
107
109
37
37
99
99
105
55
105
37
89
84
139
86
77
105
74
92
152
139
130
138
138
89
169
124
114
123
75
142
56
93
119
75
111
119
137
104
142
107
93
55
93
83
148
138
67
165
152
119
110
146
88
114
144
109
68
122
86
104
119
124
152
140
140
148
86
99
127
92
105
122
110
152
126
107
123
92
97
144
127
120
139
92
178
110
67
126
139
105
93
67
144
152
117
122
117
109
137
93
55
111
103
74
112
126
121
69
91
67
105
93
106
119
58
178
77
68
55
109
107
163
144
100
74
67
110
146
137
83
55
109
92
109
169
105
111
121
127
37
91
79
58
55
37
122
67
122
98
37
146
105
139
105
169
123
56
110
171
130
101
156
75
139
123
93
146
58
171
104
123
136
110
37
112
104
180
140
122
168
104
58
104
97
56
178
117
92
101
84
97
122
55
75
138
58
122
67
140
138
128
67
100
120
110
100
142
55
139
99
92
37
123
91
115
67
104
92
169
138
74
105
37
107
67
97
112
178
55
93
144
69
93
77
146
168
37
110
169
107
67
104
144
74
141
148
105
158
79
92
58
109
158
103
92
128
139
126
113
110
139
74
92
144
83
111
67
83
122
95
61
98
111
122
105
92
92
110
92
110
138
122
127
138
180
67
178
130
126
89
95
97
117
67
37
67
140
110
105
122
110
92
55
105
99
122
115
178
135
77
110
105
92
93
138
92
144
122
55
128
128
69
92
103
139
64
92
37
58
67
169
139
79
92
144
92
180
127
56
128
105
136
136
58
95
37
79
122
122
126
122
92
99
93
118
104
105
107
109
84
119
136
138
110
86
104
75
109
123
127
126
77
67
131
110
55
92
129
92
104
122
92
139
122
92
97
115
104
67
86
104
146
86
58
125
102
111
91
127
110
58
93
55
138
152
105
136
89
149
125
105
145
144
110
134
86
92
122
152
93
119
77
56
67
103
102
88
92
169
92
55
68
169
171
68
69
139
144
67
37
144
105
126
91
180
130
84
55
95
67
37
121
105
83
91
110
55
68
117
77
136
92
74
109
56
107
67
37
92
126
122
56
93
100
139
137
97
111
92
128
110
123
105
134
75
96
67
145
105
124
123
98
105
37
55
138
56
128
107
124
113
124
110
126
120
109
89
55
126
79
123
99
126
136
55
86
107
92
124
110
104
92
83
115
127
104
138
92
132
158
58
189
104
126
99
104
110
110
108
122
92
130
37
104
127
152
67
110
147
178
74
109
105
128
122
86
138
111
134
86
75
55
144
56
110
127
104
69
93
92
55
88
138
105
56
67
124
145
169
100
55
122
121
91
55
112
107
138
55
105
112
103
93
67
168
146
126
110
106
91
84
138
146
121
83
169
115
92
146
124
111
55
178
178
93
100
67
123
138
104
110
67
83
74
122
121
79
104
163
138
97
132
37
93
109
169
120
55
148
69
89
55
58
110
152
108
144
68
55
104
110
58
126
109
124
127
86
108
120
127
110
55
127
128
139
86
119
138
110
171
169
37
75
110
126
99
113
79
93
105
122
67
128
124
93
91
75
105
55
77
69
92
128
67
68
55
98
107
178
79
124
126
126
169
122
55
114
92
93
55
128
167
98
37
68
122
99
68
146
110
123
132
79
121
69
100
104
115
178
92
127
93
110
112
105
124
112
104
137
144
104
127
55
126
127
56
164
148
37
91
111
139
138
119
67
98
167
100
107
55
120
128
110
76
37
97
131
91
92
69
67
109
126
78
93
126
104
139
75
58
86
86
58
124
152
126
105
110
139
171
110
169
120
164
92
89
121
169
128
107
89
75
139
139
117
122
91
124
139
58
110
126
148
104
122
55
144
86
178
105
144
120
37
56
122
171
122
86
68
75
56
110
99
110
102
74
121
92
110
75
92
107
163
119
124
95
178
92
123
148
144
126
75
152
109
68
158
69
58
103
92
86
126
105
75
144
126
123
55
86
139
138
93
152
109
93
104
126
105
180
123
58
67
92
104
92
55
144
114
152
138
37
169
105
97
93
131
144
109
105
131
124
79
92
105
80
178
134
127
105
152
169
76
103
127
69
91
148
152
58
104
135
100
103
139
122
126
69
105
138
138
104
126
86
81
139
109
122
93
122
129
136
55
67
55
125
55
114
55
104
152
131
104
100
92
100
93
138
124
131
92
77
55
105
91
69
121
109
104
110
99
55
126
123
56
110
171
132
107
120
105
152
134
67
69
151
122
58
145
122
144
67
122
109
126
55
124
106
126
74
77
144
92
37
148
144
131
98
67
86
110
118
124
130
58
152
123
67
99
74
128
123
109
144
92
120
146
124
74
83
135
110
119
86
138
67
93
110
127
144
99
119
119
122
68
67
105
55
110
74
126
55
55
65
122
67
99
92
67
88
55
152
110
119
110
110
107
37
122
122
104
87
127
119
127
117
92
122
126
127
152
55
144
138
122
67
86
120
163
134
99
119
92
171
99
92
158
110
86
55
104
127
99
160
122
76
77
130
86
55
126
101
103
104
126
92
123
91
104
55
115
109
148
138
104
144
111
146
123
169
89
128
123
113
139
138
110
105
107
122
168
126
92
80
74
92
126
127
146
169
110
126
138
123
55
102
178
138
106
67
107
93
77
104
127
55
178
138
79
79
37
106
67
56
104
104
55
169
89
120
114
110
84
128
105
122
128
152
92
110
122
92
79
114
105
93
104
127
105
104
69
107
138
146
93
119
125
56
152
74
146
107
69
163
102
128
178
104
104
152
55
98
67
124
110
94
86
75
158
110
127
102
74
110
106
104
122
106
127
107
114
134
83
132
130
68
92
104
132
156
120
127
100
134
56
67
98
95
67
180
56
58
139
164
92
37
92
58
119
127
55
55
68
69
168
56
92
120
122
144
102
126
97
146
120
75
55
131
169
104
114
148
84
103
69
126
103
110
95
111
97
135
104
93
134
104
146
134
56
164
126
37
55
92
89
139
79
109
69
110
77
56
122
168
110
139
92
99
56
104
107
122
74
104
119
145
126
128
110
56
122
56
135
86
92
103
105
152
139
111
93
119
58
55
83
112
91
93
92
64
97
55
93
144
146
138
104
79
99
95
152
126
139
139
37
55
99
69
117
88
124
138
126
67
199
123
84
120
104
127
69
91
128
58
77
69
109
92
75
108
139
74
178
138
92
105
140
67
122
92
109
56
126
92
37
128
110
110
92
75
92
81
56
112
138
103
84
56
126
118
55
105
93
74
84
138
152
55
138
138
91
56
128
86
138
102
122
138
76
109
199
126
67
144
37
92
69
138
146
146
91
55
122
168
110
152
83
91
122
120
110
134
123
123
122
69
147
104
138
104
91
92
122
127
171
75
146
69
122
69
58
69
152
68
93
126
110
79
134
69
67
92
107
138
138
126
128
78
125
92
118
67
126
118
152
171
119
178
138
69
93
99
92
92
56
69
107
93
111
110
124
140
92
77
99
105
112
92
111
55
139
55
144
86
140
122
67
56
111
141
105
55
55
101
93
55
144
110
99
105
122
134
126
114
67
126
73
104
104
99
138
56
67
102
122
120
125
93
99
107
79
91
126
67
56
56
91
110
69
169
103
146
74
134
74
98
117
130
86
122
105
103
37
168
37
138
106
99
129
67
105
122
91
105
93
128
105
55
89
118
111
67
134
74
58
140
58
126
105
120
85
126
79
105
111
105
92
56
125
132
91
128
109
92
86
110
128
108
93
119
116
107
134
37
178
64
148
120
69
91
55
105
110
122
134
107
77
127
75
97
105
92
144
92
110
178
99
122
55
134
105
126
55
87
132
78
110
92
178
110
105
69
68
103
110
138
149
127
139
91
86
86
152
122
93
131
98
167
138
142
114
120
77
98
86
79
79
104
132
136
110
119
136
134
99
92
144
122
152
144
122
138
93
86
138
107
168
92
109
169
93
104
132
109
169
93
56
74
146
188
136
109
56
104
55
119
123
111
100
178
37
128
37
123
67
55
134
152
146
93
69
148
56
122
77
126
134
125
69
56
93
77
180
77
93
142
146
120
93
167
55
119
115
93
86
74
92
99
148
106
69
67
67
91
104
55
68
105
113
123
104
104
103
152
69
112
123
58
139
135
138
55
55
84
92
104
178
103
105
148
92
104
119
126
67
105
74
126
86
55
122
126
102
165
69
149
37
58
122
105
97
79
74
105
86
138
139
138
105
109
168
86
110
92
92
109
104
105
106
139
106
104
121
144
67
164
138
83
92
78
105
93
93
92
92
180
129
152
122
104
58
93
146
86
37
126
91
138
105
122
128
92
55
55
128
92
128
92
138
69
92
128
138
126
179
111
139
74
127
101
126
67
152
58
93
118
126
103
134
117
79
105
148
107
37
76
105
91
107
55
96
152
87
104
92
127
123
111
152
119
77
126
124
108
136
152
100
144
177
110
101
55
71
104
55
110
107
77
178
169
163
92
146
79
64
92
126
37
132
167
103
92
86
122
102
165
99
140
93
37
92
152
140
140
128
165
120
123
92
126
98
56
78
139
178
77
165
101
55
92
93
55
126
122
103
92
144
69
131
77
146
134
92
83
74
79
111
126
122
105
56
168
168
74
130
109
137
178
69
135
178
158
107
105
134
67
102
91
92
165
56
138
110
105
110
109
75
37
104
93
55
86
95
139
158
55
104
104
127
105
128
110
37
111
152
55
138
67
84
109
126
69
55
77
123
105
56
118
69
123
69
115
128
86
55
110
67
115
91
86
171
58
92
105
93
114
138
55
123
122
104
83
178
55
93
93
109
74
160
85
126
74
105
122
99
119
122
107
97
138
138
102
67
138
55
114
138
126
110
67
79
104
138
55
58
144
105
111
110
92
120
126
92
92
55
178
77
110
104
56
127
128
92
136
105
110
56
79
75
92
104
69
128
99
104
138
119
122
105
92
87
126
109
126
58
86
126
92
123
55
110
69
103
164
138
56
56
55
122
92
146
119
152
130
72
58
122
138
75
83
55
93
92
86
92
127
117
126
126
55
37
89
126
141
127
122
92
94
56
92
86
139
93
37
141
110
67
89
58
55
144
126
55
83
127
144
58
98
140
162
103
94
111
55
135
122
93
124
130
83
126
58
55
56
61
178
83
107
127
92
126
92
67
140
127
110
126
122
109
103
92
55
104
140
105
81
117
77
84
105
138
55
67
104
55
118
122
55
138
86
101
105
67
99
58
138
139
105
136
93
92
132
55
105
107
103
139
93
37
55
136
75
138
146
167
123
79
164
132
75
89
142
79
56
104
127
92
58
92
137
129
69
87
97
93
178
169
55
110
88
148
74
92
58
111
93
100
122
69
86
120
83
67
93
69
110
152
135
98
56
140
69
110
106
128
110
146
108
104
55
110
79
92
136
105
132
107
104
55
122
97
110
138
100
110
180
105
105
182
55
67
171
122
93
126
110
92
127
77
55
81
55
55
104
146
105
126
126
122
122
105
99
105
78
86
138
92
110
75
105
138
138
122
122
67
37
146
105
126
55
111
178
137
119
107
135
58
92
86
126
126
109
58
105
134
67
91
168
164
126
92
92
131
56
84
177
93
126
68
88
92
139
37
119
126
138
105
103
67
74
67
37
56
67
125
124
127
169
178
139
92
92
37
93
105
93
99
111
93
131
99
152
144
106
152
148
146
103
91
134
93
132
123
119
81
128
93
41
168
160
119
181
86
138
138
118
139
152
77
110
55
58
101
97
91
144
165
167
139
110
91
56
58
124
144
162
104
79
92
178
169
69
108
112
86
37
92
126
110
107
110
58
108
105
119
122
80
74
104
122
103
136
77
111
132
69
125
92
136
110
122
145
127
108
163
152
127
105
67
138
136
109
128
92
105
69
123
55
134
158
163
105
138
97
97
72
111
123
104
152
131
56
126
169
56
104
126
122
93
150
104
86
122
131
153
114
86
126
132
122
112
92
124
55
146
110
79
73
55
75
152
83
111
105
146
126
171
55
55
67
140
68
152
108
74
105
111
122
126
139
92
128
55
127
37
37
122
133
171
146
105
85
126
67
93
169
111
168
92
67
37
84
127
79
127
140
169
127
97
152
146
128
92
69
122
168
178
77
138
122
138
180
92
137
69
128
138
55
105
144
67
92
169
132
105
111
101
87
92
139
104
86
103
122
122
180
97
164
67
105
92
119
91
105
126
120
138
110
74
144
104
152
92
127
171
135
68
132
69
128
128
110
117
164
158
148
126
67
92
99
123
111
126
103
55
105
55
84
120
127
69
83
107
139
74
117
138
163
92
110
55
120
123
104
104
128
128
67
112
56
97
99
55
144
148
81
104
115
103
67
93
102
104
92
103
56
123
114
37
56
77
139
111
86
92
56
86
79
103
164
123
55
109
37
93
171
126
110
105
101
55
123
105
58
104
158
86
146
92
75
55
67
88
58
58
104
138
67
109
37
144
127
112
77
119
168
158
104
74
146
58
139
93
122
67
138
138
69
92
110
105
56
122
110
118
146
148
105
92
79
55
75
195
55
130
123
93
95
55
109
55
77
169
109
105
105
126
126
129
104
55
100
124
110
118
144
144
74
138
146
102
55
92
138
162
127
75
97
122
110
122
110
140
67
131
92
55
127
162
68
137
138
67
140
199
56
105
92
123
111
107
102
178
97
168
93
135
100
136
126
126
127
92
139
93
111
92
148
122
58
127
126
97
123
122
126
110
92
126
134
109
111
69
92
105
99
122
131
99
84
110
103
56
58
138
56
92
55
110
92
126
181
86
123
114
91
92
67
86
142
138
126
79
128
126
152
119
171
98
127
92
127
93
119
109
152
92
126
55
105
99
102
146
56
104
127
152
122
55
83
111
130
158
97
123
104
104
58
73
106
86
84
104
55
119
127
122
79
105
127
99
132
104
92
126
86
67
92
146
97
101
140
95
125
97
138
79
98
105
126
110
123
122
67
127
171
56
92
69
124
138
127
83
91
55
89
199
67
58
121
80
126
122
104
86
122
55
123
107
104
126
126
77
101
69
158
95
117
152
120
127
67
130
109
122
131
55
112
144
92
144
58
177
144
122
136
109
152
58
146
142
55
126
91
55
109
99
72
67
168
111
122
114
74
134
110
158
138
107
79
110
91
68
67
109
68
104
168
178
101
130
92
92
74
93
138
55
98
122
92
110
178
111
108
127
138
105
126
122
124
67
127
129
86
56
89
105
110
58
86
105
110
92
140
80
144
104
56
123
104
126
97
55
74
75
169
114
37
83
69
146
126
100
178
139
127
110
84
105
93
77
37
75
37
77
110
79
111
110
77
104
105
79
138
110
98
104
126
139
93
67
169
55
67
122
138
98
55
92
69
55
126
76
152
91
147
110
102
58
128
92
152
105
105
139
128
122
104
110
105
86
91
67
124
37
93
77
127
126
92
93
103
122
110
138
126
99
98
93
108
138
139
55
126
109
146
93
55
86
69
105
165
140
152
114
109
86
138
109
144
98
134
156
130
125
83
93
178
155
138
110
139
122
124
110
122
124
91
120
107
105
140
92
162
92
138
110
75
111
93
178
92
55
122
128
92
100
92
128
146
139
92
99
58
171
67
178
138
126
146
105
109
160
169
86
110
67
122
99
126
92
56
109
58
105
92
144
55
138
109
92
105
104
158
100
109
93
55
87
78
110
69
75
55
105
138
118
104
110
169
169
122
55
119
144
37
124
92
88
122
158
92
142
140
110
135
74
139
107
67
67
144
139
122
152
56
178
121
92
92
77
104
92
122
122
110
55
105
112
92
72
112
101
115
111
93
109
111
83
80
98
86
128
118
55
162
126
104
127
55
122
128
128
100
55
55
79
107
75
178
93
138
68
67
144
99
158
110
93
58
92
111
124
145
168
130
104
104
110
56
67
110
169
37
80
124
92
78
69
85
56
92
104
55
138
138
105
114
55
104
146
69
139
104
107
80
111
139
55
81
67
92
99
137
69
104
92
119
55
92
138
93
126
103
110
103
107
75
103
77
92
105
105
109
123
134
142
122
138
83
37
58
58
86
99
118
78
122
97
125
101
92
98
138
145
55
56
89
58
105
126
55
110
105
127
77
37
162
37
58
109
69
152
126
89
127
104
105
110
107
178
104
134
105
92
110
127
134
55
128
93
138
93
55
110
92
67
134
104
67
128
37
91
105
127
74
93
110
101
76
138
139
104
109
126
126
75
127
160
140
102
134
92
122
122
169
37
138
56
67
55
119
110
104
114
67
131
138
68
79
136
55
128
139
107
127
77
83
140
104
126
92
120
58
74
55
134
122
104
105
160
120
122
104
127
110
55
152
69
126
104
122
98
138
127
79
152
199
37
123
104
55
67
144
100
55
128
178
99
140
92
98
152
145
69
74
105
122
162
92
128
74
137
110
95
92
126
93
138
122
111
112
126
55
92
97
126
169
128
117
105
111
77
104
123
104
55
56
92
152
139
55
123
92
127
122
110
56
104
86
67
125
123
138
67
115
138
152
138
136
107
67
89
85
92
55
151
123
139
92
122
99
55
111
111
55
105
95
105
67
122
144
91
107
100
103
140
67
110
122
93
77
119
110
67
146
138
92
56
92
123
142
55
138
131
108
111
105
105
112
111
37
134
118
144
106
92
134
126
74
91
86
101
178
139
123
146
95
105
92
104
55
135
139
91
171
108
165
178
102
37
130
86
119
105
58
92
68
91
119
92
92
37
75
55
84
106
127
84
105
58
119
56
138
108
84
55
118
139
93
92
127
104
92
92
130
69
92
127
182
69
160
178
93
178
127
120
56
74
127
80
107
148
104
95
139
104
92
144
168
86
130
122
134
56
92
74
179
110
84
92
152
152
139
178
140
138
99
37
55
93
108
152
124
146
126
126
92
103
122
138
79
104
138
77
105
75
116
58
126
98
58
105
79
178
67
92
144
91
112
75
122
74
149
111
105
135
158
75
103
127
92
98
180
122
110
95
104
127
79
55
105
128
146
78
125
169
110
111
111
74
140
169
101
67
123
109
130
105
93
99
92
132
138
138
91
178
168
69
99
69
131
56
178
122
67
104
83
142
132
113
140
134
111
122
138
148
144
128
55
104
97
128
37
138
100
126
118
93
178
91
104
122
93
118
104
105
92
55
138
106
123
171
92
67
92
123
128
152
109
37
55
67
169
165
126
83
56
56
77
79
130
122
152
169
67
92
92
109
105
111
55
80
56
105
119
92
104
112
92
105
78
122
146
146
58
93
78
123
178
98
158
97
126
98
67
58
69
127
91
93
92
126
132
122
126
106
55
111
56
137
105
104
160
37
126
92
55
110
178
105
135
138
126
92
122
182
92
105
111
114
119
105
123
119
67
93
144
97
146
110
158
106
79
104
126
148
111
123
75
115
104
111
144
93
117
128
178
89
105
97
79
163
134
110
56
92
138
56
55
144
56
55
128
100
131
105
93
110
138
91
84
104
110
56
101
122
67
126
55
127
122
134
109
92
67
58
119
89
128
127
98
105
92
148
106
122
37
138
112
138
99
110
123
97
104
132
108
104
178
103
58
123
98
141
55
139
83
126
55
86
110
92
55
122
121
126
127
67
130
79
56
127
93
111
91
178
122
119
122
58
56
152
58
93
55
122
67
93
127
107
144
127
92
55
117
55
160
55
93
145
126
140
178
126
104
146
103
99
83
67
67
56
86
37
134
110
148
119
127
55
122
122
126
98
91
79
122
37
95
37
69
93
105
162
55
130
150
92
79
79
110
127
140
141
110
128
138
91
79
67
118
165
110
107
61
142
134
110
126
67
67
138
105
105
104
93
67
92
123
61
160
158
94
56
110
105
139
92
122
131
92
67
127
139
144
164
110
117
56
126
56
154
104
139
152
84
127
126
119
93
55
127
122
100
74
105
105
139
105
127
131
178
178
110
91
55
111
69
120
107
122
96
158
127
37
138
120
123
67
152
105
56
189
120
92
91
148
122
181
122
142
37
109
92
129
112
138
103
110
69
123
93
111
101
140
111
126
94
92
109
93
123
189
120
122
105
104
180
122
69
92
128
178
93
120
37
105
56
93
127
74
55
142
122
110
146
111
103
37
110
122
87
67
137
152
55
95
75
138
126
146
119
107
110
56
141
138
88
100
92
138
55
104
98
79
110
105
122
118
69
92
109
146
104
110
77
139
105
178
110
110
144
181
104
84
92
98
110
93
169
117
114
122
132
110
56
56
97
145
123
107
130
107
93
168
152
177
37
122
67
128
145
75
92
68
93
92
68
163
86
122
37
105
91
126
158
105
122
189
92
68
144
125
93
140
158
67
144
135
92
144
127
93
110
128
124
73
69
128
110
99
37
138
58
92
56
110
134
69
92
74
132
92
110
126
107
104
111
93
126
143
169
126
37
122
122
55
104
126
104
118
55
171
144
110
126
122
92
73
110
77
107
178
131
124
105
91
104
134
179
92
55
125
92
122
93
146
126
104
122
92
119
122
127
92
138
58
55
137
138
178
180
122
37
178
126
122
148
165
132
103
138
104
109
105
165
110
169
127
37
80
99
139
104
144
152
84
98
55
105
92
55
55
104
139
110
105
124
130
122
123
110
93
125
55
120
80
97
138
84
93
104
148
69
84
104
37
126
148
152
178
139
105
92
122
152
146
107
110
105
140
144
105
97
123
74
144
119
111
169
56
137
124
67
78
56
37
105
105
130
110
92
67
164
126
148
55
152
55
126
99
93
101
109
55
110
69
138
92
165
97
122
104
81
105
126
130
93
104
91
124
140
79
152
123
110
152
199
158
144
102
124
110
101
178
110
99
55
117
110
158
58
138
37
109
86
68
55
92
119
110
92
144
105
93
163
79
135
163
92
160
92
119
105
162
107
105
105
67
127
104
110
124
110
67
92
91
123
55
144
122
138
75
92
106
86
92
74
105
99
127
95
56
93
123
91
56
122
92
99
110
92
104
178
117
126
37
178
56
92
105
112
144
56
92
58
128
75
127
122
99
69
122
97
86
79
121
131
143
68
132
89
91
126
78
56
110
104
55
122
139
110
142
77
99
139
111
169
168
37
111
105
105
67
104
109
104
138
105
37
127
68
105
98
112
68
119
67
55
67
110
147
145
93
122
67
128
67
92
56
55
58
122
101
69
55
146
169
98
79
122
102
188
55
178
78
55
83
134
55
126
130
86
92
56
100
144
55
126
149
112
138
55
144
122
145
110
111
77
79
67
112
105
91
105
92
112
123
138
158
37
104
110
105
55
122
178
138
127
107
86
124
92
126
126
55
106
55
100
171
104
138
67
118
144
55
158
92
74
89
86
84
122
105
55
74
139
178
167
168
100
67
123
69
140
58
119
107
162
167
130
136
126
58
107
119
146
152
108
55
112
128
130
122
55
55
152
178
83
111
56
110
100
55
122
93
102
37
69
82
55
148
83
107
139
69
55
132
119
122
77
123
67
127
102
92
126
126
37
68
164
139
74
86
122
79
127
138
58
138
101
56
67
128
140
83
146
92
67
110
75
178
92
55
67
111
107
140
109
67
128
55
74
107
75
133
107
122
97
56
171
126
105
92
128
123
112
56
110
134
168
104
122
105
104
126
55
79
55
123
67
140
58
122
99
101
93
97
109
92
105
107
58
158
124
178
123
58
105
78
112
92
139
119
146
104
126
126
109
144
37
93
126
110
92
105
69
158
103
92
69
98
55
55
75
106
74
86
122
168
89
119
99
99
92
105
86
103
119
128
93
169
146
93
74
91
126
122
79
76
83
126
102
89
77
75
67
91
112
140
69
56
104
92
92
87
123
109
178
138
120
58
122
144
92
84
91
134
99
122
163
56
107
67
69
86
77
92
122
164
92
67
77
91
93
98
171
92
152
37
55
97
86
55
67
58
122
103
110
92
86
105
126
138
91
171
97
83
103
146
162
92
55
92
112
138
56
123
55
109
105
167
93
99
55
112
126
109
55
126
163
122
134
134
110
119
128
129
137
146
96
128
91
86
126
58
67
92
111
97
122
110
74
119
124
146
126
126
91
134
127
74
123
177
104
171
83
138
92
92
132
99
105
55
146
55
93
156
37
123
110
99
117
93
58
138
79
56
105
77
104
92
68
124
178
126
75
55
178
152
69
123
126
98
135
91
83
138
120
55
91
81
83
56
117
79
55
92
92
122
92
123
110
92
111
79
119
37
79
131
93
180
126
132
77
119
104
138
79
122
125
134
37
67
89
138
165
138
92
111
139
126
79
93
119
79
69
67
67
171
138
126
132
55
67
115
88
92
67
77
140
86
122
69
122
110
144
103
67
55
92
95
55
109
83
58
126
110
134
123
104
105
104
105
92
128
55
55
56
128
105
92
137
97
138
92
149
105
144
92
91
126
128
178
84
56
122
160
75
104
122
122
152
85
56
152
104
139
92
56
86
86
109
109
67
120
146
123
121
56
149
105
135
110
37
123
158
123
92
93
92
120
109
152
98
102
91
93
131
110
105
103
112
103
68
110
37
152
127
139
122
167
132
128
97
74
91
122
122
105
138
93
108
95
110
56
92
55
105
86
122
91
122
117
109
105
92
84
55
92
171
55
102
55
58
105
56
86
138
92
104
178
93
126
107
91
122
67
152
148
123
148
124
55
127
92
110
104
111
79
144
93
164
109
141
89
69
139
92
119
122
91
126
104
158
122
127
74
148
138
134
97
37
86
111
67
100
134
192
92
86
56
123
126
119
112
92
105
105
105
55
58
177
67
68
110
162
131
105
105
56
58
126
105
126
159
92
165
131
126
127
79
110
83
110
37
122
92
138
123
105
169
134
56
37
69
178
86
86
86
123
123
101
126
144
146
105
56
81
75
56
122
67
122
140
114
92
67
91
89
104
99
56
92
107
104
138
138
124
93
146
75
110
152
146
146
127
152
122
86
178
110
127
92
55
88
109
114
134
144
58
146
67
178
129
138
105
123
105
138
138
144
109
122
138
126
55
92
130
88
84
110
107
123
122
122
138
92
180
107
110
128
78
178
169
127
105
83
92
56
136
77
138
129
138
124
105
122
105
119
93
67
165
152
105
144
92
105
55
156
122
122
105
92
140
134
55
107
144
110
139
122
92
110
134
68
58
109
91
119
178
103
152
144
56
124
79
144
111
103
126
88
94
163
124
105
68
130
72
134
140
127
139
56
118
123
76
168
92
110
123
152
126
122
102
144
139
122
105
105
56
123
110
92
109
58
93
55
134
110
105
67
105
141
92
92
77
104
124
110
104
129
92
123
67
88
152
124
152
139
110
111
105
182
123
56
138
124
178
56
140
69
86
130
122
97
92
56
110
122
107
134
77
122
130
92
55
138
160
86
160
104
37
93
117
93
91
126
145
55
105
139
146
126
126
119
77
79
178
104
128
128
56
37
78
93
105
195
77
91
120
146
140
122
104
104
139
104
92
138
163
144
92
92
93
99
119
92
118
93
136
137
117
138
180
178
100
139
97
102
122
89
98
55
111
55
163
126
124
123
104
86
67
79
165
158
129
110
67
91
37
110
67
126
91
97
67
101
55
152
139
132
140
105
152
111
127
138
132
111
103
58
86
92
148
138
79
141
67
109
99
122
127
104
79
138
86
105
93
104
110
93
55
56
106
99
105
110
75
178
56
56
83
67
109
136
105
99
127
144
103
92
152
92
56
144
127
37
67
130
105
74
79
55
55
122
138
69
128
109
138
104
119
103
75
104
69
117
79
189
110
83
74
122
107
169
91
58
121
105
92
139
68
178
105
135
128
86
134
37
134
110
55
101
79
139
111
107
92
109
37
103
56
79
107
119
148
56
107
128
100
67
140
86
67
148
103
104
91
152
104
139
67
56
69
152
55
69
58
117
124
55
122
178
95
92
105
56
144
110
140
67
126
103
69
109
138
56
152
151
99
199
92
97
92
92
140
67
37
92
139
127
92
158
139
56
92
126
126
64
147
131
37
123
99
140
103
79
178
119
92
134
86
110
55
108
37
91
127
122
169
110
103
55
128
93
126
126
56
99
92
55
95
110
92
152
107
55
105
74
105
146
124
67
92
113
77
92
78
120
111
56
104
87
75
105
95
75
77
102
92
89
140
169
126
69
110
67
152
103
67
131
78
130
92
180
126
126
105
58
105
100
104
124
91
75
106
122
77
58
98
100
92
92
104
66
171
144
138
93
55
55
64
144
104
109
119
178
117
86
77
105
99
124
138
122
91
58
138
67
110
105
126
131
92
55
92
139
96
144
119
178
105
84
55
92
107
67
112
128
144
136
92
86
117
77
92
134
58
122
146
110
126
110
138
140
138
69
69
123
75
37
132
114
169
118
56
144
92
111
68
80
162
105
152
101
67
55
91
77
130
56
56
93
101
75
92
92
55
137
98
55
74
114
99
138
122
126
158
37
93
118
126
126
56
91
152
110
107
55
144
75
142
84
92
96
127
127
118
148
171
93
138
110
74
104
69
55
69
89
91
103
163
126
126
67
126
58
146
126
75
110
97
90
67
103
140
122
112
117
158
110
152
138
105
37
110
104
139
137
169
96
93
138
119
136
58
92
56
102
110
92
100
152
56
101
104
138
119
152
139
86
115
139
136
127
111
128
163
150
81
105
92
79
126
78
117
144
92
127
126
92
143
93
37
78
97
122
120
124
104
95
136
92
128
56
55
125
126
105
162
152
55
101
105
86
134
132
135
138
126
100
126
122
131
126
55
105
122
118
146
148
122
105
93
55
110
122
122
145
129
93
37
110
92
93
137
104
67
138
122
77
100
158
83
56
67
56
138
74
79
109
122
111
67
165
127
105
123
139
110
122
101
146
160
74
93
95
132
95
67
169
97
87
127
119
110
92
67
130
126
97
128
164
92
65
126
169
92
56
138
105
86
132
99
126
37
110
139
149
122
105
107
91
107
120
55
105
107
105
37
126
55
74
101
99
122
105
83
93
180
126
140
37
122
152
100
122
169
105
105
93
178
67
68
86
144
86
144
178
126
92
127
92
104
37
110
55
138
178
126
169
37
138
138
144
37
58
122
132
56
56
138
92
67
103
178
134
120
86
138
79
132
93
37
55
55
110
79
111
99
138
139
99
144
55
144
92
37
105
69
122
101
104
119
92
146
144
146
115
79
112
55
92
177
86
122
86
68
138
110
130
122
137
138
142
107
99
55
140
69
119
169
178
163
122
122
126
126
102
128
97
55
92
124
152
84
103
160
127
162
100
117
94
56
92
163
92
144
109
126
171
134
189
81
93
56
97
138
84
126
128
118
92
110
55
128
96
117
169
55
110
126
97
127
107
139
135
110
142
178
124
134
110
120
97
102
92
104
112
139
122
128
127
105
92
144
122
139
55
134
105
105
117
122
93
152
104
104
55
67
111
55
119
67
109
109
69
55
37
123
86
99
137
92
55
110
92
126
124
86
110
56
55
92
162
88
144
105
91
122
169
99
122
104
103
130
67
91
127
180
109
125
77
67
55
119
128
104
77
106
146
110
37
67
110
69
122
78
79
112
150
163
122
105
92
113
110
55
104
67
91
74
93
169
120
92
74
110
115
127
89
126
106
69
178
126
138
138
55
109
110
99
94
92
144
83
111
72
123
105
67
112
146
67
86
95
178
91
109
92
120
103
139
87
160
86
55
138
67
107
127
146
128
86
93
163
139
110
69
119
55
110
134
55
58
126
92
58
93
67
55
74
105
55
55
77
119
67
124
91
93
91
69
55
74
93
114
127
55
58
97
145
106
145
93
169
56
142
108
110
109
88
105
180
138
77
110
109
109
136
55
122
104
139
68
105
56
110
124
123
105
122
97
178
104
92
138
92
74
91
69
67
142
178
56
56
109
88
110
138
139
134
79
123
37
104
119
86
126
56
111
147
144
150
99
109
119
55
169
127
110
58
158
126
37
104
105
107
67
93
69
144
169
37
134
138
124
152
145
98
128
107
92
180
86
93
89
68
105
55
110
111
92
124
56
92
56
93
110
146
111
178
67
137
95
134
132
105
56
102
37
55
64
77
140
91
56
127
178
97
91
109
106
122
79
107
131
55
164
119
74
126
92
79
55
138
126
55
122
96
122
126
150
91
92
92
152
126
110
67
111
146
58
107
92
105
116
131
69
67
98
117
139
85
138
169
93
139
140
55
169
130
148
97
55
92
104
102
67
67
127
67
77
144
138
178
37
163
92
123
98
110
56
86
58
178
146
138
158
126
130
106
123
111
138
89
101
104
67
178
110
79
83
141
140
178
97
104
68
105
67
131
75
126
92
79
58
93
126
149
110
111
122
148
120
79
91
99
100
129
163
146
93
104
67
122
127
152
138
157
119
178
111
91
126
122
139
110
114
110
123
122
92
178
111
58
98
110
55
138
67
67
144
110
56
138
147
92
96
92
126
139
75
92
97
104
169
151
77
97
92
140
67
67
122
106
79
98
152
104
147
126
148
126
168
147
136
92
128
67
67
134
92
110
55
104
152
134
110
139
104
120
92
104
92
69
91
160
99
86
105
117
75
93
119
120
92
87
104
131
110
123
138
55
37
110
138
69
139
56
55
139
118
144
95
152
105
109
178
111
55
37
110
119
178
93
58
126
132
122
92
127
108
134
123
134
140
92
146
128
137
110
93
127
132
93
140
128
108
107
111
105
148
103
37
152
138
80
145
79
98
96
92
67
55
134
134
37
126
104
152
67
55
55
55
101
138
92
110
93
122
110
93
110
110
151
158
67
140
92
144
74
141
127
143
103
127
134
55
146
105
164
105
110
107
37
92
127
93
130
122
110
134
110
37
92
112
144
139
139
171
110
86
104
127
67
123
110
93
105
178
83
74
144
134
100
146
56
67
105
105
122
93
110
144
122
122
134
139
114
111
99
122
58
138
160
86
137
105
92
58
37
92
55
113
122
79
93
105
56
105
129
91
145
41
104
139
110
126
67
138
126
134
126
102
123
93
189
109
131
111
55
160
104
144
69
93
79
169
178
119
100
119
104
119
92
81
67
75
56
146
140
92
104
102
83
104
110
93
124
126
119
109
178
104
159
104
106
98
93
110
84
83
104
140
110
92
106
67
138
119
105
89
122
139
79
152
67
92
99
126
107
114
139
123
56
69
89
139
67
139
110
55
97
104
55
67
67
110
138
67
56
55
138
109
67
192
122
122
120
171
92
103
56
142
98
159
79
92
139
123
142
74
128
140
178
138
128
105
138
87
109
119
99
103
126
124
56
98
74
56
122
138
162
128
158
75
142
75
79
86
128
178
110
139
152
140
67
110
126
67
91
55
118
158
56
158
149
122
115
128
107
105
109
67
114
69
122
91
86
105
158
104
107
146
123
55
181
135
144
163
92
55
124
169
55
122
55
67
104
151
132
95
67
169
69
110
56
117
138
138
86
112
178
126
96
104
122
105
171
37
126
92
55
126
128
72
109
111
75
127
111
102
74
67
138
92
144
178
98
56
87
92
68
110
158
58
144
122
58
105
104
58
93
138
67
129
110
178
110
138
37
139
58
110
110
123
79
132
109
139
125
92
150
128
74
138
104
69
134
120
75
95
55
114
138
91
37
92
146
86
178
110
109
92
92
132
146
127
55
56
144
107
75
67
138
122
107
164
114
86
58
127
105
147
195
93
91
122
152
69
93
105
105
55
77
106
125
144
119
153
178
74
37
139
122
109
122
92
107
146
74
58
97
86
126
92
104
109
110
91
37
91
139
105
37
96
127
74
105
117
139
134
99
139
120
79
148
171
144
126
93
144
92
37
122
122
100
144
93
107
92
180
139
97
75
105
92
132
145
126
127
56
144
109
126
111
110
79
171
117
92
128
107
58
144
105
41
104
114
114
134
122
138
118
55
123
67
79
104
89
158
104
77
97
107
89
128
138
106
117
122
55
139
128
138
58
92
103
92
171
128
140
92
104
105
138
104
92
75
69
122
132
56
124
144
97
86
109
119
104
87
106
105
92
122
93
122
67
126
114
131
122
56
101
138
144
91
126
152
169
122
93
138
139
55
110
91
79
92
178
138
109
152
67
139
75
56
109
95
79
93
105
104
122
134
93
111
122
56
144
105
126
152
158
146
135
92
93
87
180
69
122
163
69
139
169
119
135
68
93
114
199
110
136
92
107
92
80
126
102
105
122
58
122
122
119
126
56
101
79
123
126
92
92
99
110
128
74
92
146
107
123
139
138
126
148
111
127
92
91
110
74
126
160
158
58
136
55
67
139
91
158
105
93
128
86
93
127
107
156
122
134
91
118
92
131
86
126
105
122
79
110
55
37
146
56
58
102
67
138
110
126
98
127
123
112
105
142
178
104
127
111
92
146
84
97
152
58
74
58
104
110
92
105
127
119
67
92
56
69
55
132
122
126
92
119
92
97
99
140
112
92
74
110
105
55
146
104
58
77
73
77
138
139
131
124
109
92
130
56
104
111
55
110
110
56
114
126
144
37
58
93
146
67
79
138
125
122
37
92
97
132
140
86
105
163
56
94
130
67
110
56
104
84
138
122
92
92
55
110
122
144
92
109
92
146
105
148
117
169
138
123
134
122
86
120
138
79
91
93
140
107
99
81
55
58
103
138
164
68
126
56
124
152
126
139
124
77
118
182
109
126
55
67
139
93
55
128
101
158
102
104
169
119
74
138
69
97
169
122
165
114
105
55
69
55
132
119
86
99
105
123
92
123
93
104
126
99
89
178
119
104
111
93
123
127
146
171
110
101
92
111
58
109
126
110
110
79
103
109
96
111
58
74
77
134
104
69
92
103
165
109
69
178
37
91
55
110
37
102
86
152
92
92
55
100
122
122
109
110
99
91
92
138
126
122
126
37
152
138
55
92
122
102
144
105
55
91
87
37
146
77
128
126
139
169
67
84
56
106
83
122
122
122
158
105
126
122
99
69
75
104
92
149
80
124
119
139
56
127
92
106
101
126
74
86
139
127
91
77
139
144
146
169
55
109
55
132
160
110
111
122
55
126
93
114
122
122
58
132
140
101
144
99
139
138
140
126
158
128
111
56
165
105
171
89
122
81
104
119
112
92
126
144
138
55
110
110
139
56
56
152
138
69
144
116
105
55
126
165
67
104
122
144
67
55
110
127
110
134
79
58
88
124
67
124
122
37
92
144
91
94
56
178
169
178
68
141
146
67
55
79
67
169
123
67
104
69
107
152
109
83
99
148
99
128
102
123
86
104
109
58
171
105
112
111
93
131
92
107
92
122
91
110
55
144
69
105
169
105
86
110
122
93
109
127
111
83
146
95
199
152
144
91
92
56
124
156
92
138
104
86
139
117
104
178
93
56
104
134
93
105
178
76
81
128
119
93
119
92
134
104
95
144
93
69
134
138
110
123
93
92
138
101
107
101
75
139
138
92
114
75
178
145
138
178
110
92
108
114
67
109
169
152
127
164
158
105
92
93
99
160
140
83
171
145
68
111
67
138
37
127
74
98
134
122
105
123
122
135
178
122
92
122
112
134
104
92
93
120
142
148
119
178
178
88
97
137
79
55
139
93
141
150
74
67
135
55
152
97
128
100
148
79
105
93
92
55
103
95
74
110
178
37
126
103
123
139
92
92
129
135
75
67
110
144
180
104
102
37
74
98
110
86
103
89
93
178
152
105
79
116
98
146
95
102
104
138
122
139
152
104
115
123
138
178
122
152
144
110
37
122
128
162
99
37
146
178
56
56
89
105
84
124
110
37
92
122
117
77
164
126
92
109
67
126
122
110
118
107
56
126
149
65
55
37
84
86
158
74
126
122
68
67
65
163
95
104
75
124
123
110
55
109
138
139
93
119
128
103
83
122
93
105
104
58
106
67
137
122
69
104
103
91
126
104
122
109
67
127
111
58
178
146
96
122
171
120
139
110
122
104
67
55
139
128
165
111
126
171
110
95
74
37
138
144
92
138
92
37
158
110
84
103
37
91
92
37
117
118
168
56
107
126
55
117
92
56
55
146
91
69
67
56
126
178
146
56
126
105
105
91
144
84
91
104
178
92
132
137
144
123
89
102
79
138
105
100
92
86
135
109
55
55
163
79
100
146
93
92
92
120
74
117
67
89
149
138
114
58
67
105
93
67
69
114
79
105
134
67
58
56
118
138
108
108
104
109
139
100
37
123
119
56
120
101
126
111
37
178
114
79
104
144
110
139
99
92
138
37
123
127
74
132
130
163
132
107
111
79
97
67
105
138
156
136
123
105
122
130
127
152
77
93
112
152
146
55
91
92
104
92
138
127
104
152
105
178
92
105
83
107
114
140
92
92
126
86
93
68
146
140
97
55
79
114
169
92
37
169
126
105
56
127
105
92
104
171
56
55
55
178
98
78
92
105
86
180
77
122
134
93
110
71
89
86
86
55
168
37
139
124
109
126
58
145
92
92
92
118
107
55
100
152
105
97
92
77
79
146
83
55
123
93
109
110
92
73
128
93
104
37
127
137
114
110
104
56
126
139
169
139
58
178
146
104
79
127
104
111
178
56
93
138
123
169
93
127
108
92
55
91
67
64
114
92
126
75
122
127
137
74
109
110
123
55
156
138
162
74
37
92
37
56
134
139
122
97
121
105
105
138
55
131
69
56
74
99
118
131
123
98
91
122
180
58
67
110
122
98
56
79
122
69
92
136
55
126
123
107
131
146
171
122
122
180
140
109
101
140
144
67
92
91
56
83
67
104
102
58
138
67
117
55
140
107
111
165
130
55
74
74
74
122
117
55
146
126
129
127
127
67
92
123
144
122
92
138
105
58
117
55
99
104
104
118
126
135
75
114
122
79
146
104
92
122
77
102
37
103
37
79
138
138
103
92
91
110
105
56
104
84
86
126
164
152
122
139
130
126
58
122
99
110
107
86
74
92
74
119
122
89
138
107
69
55
189
55
104
79
114
127
168
119
93
128
111
110
114
67
138
146
126
86
55
67
126
178
122
104
93
162
92
56
138
144
189
134
87
126
122
139
37
134
93
127
58
145
97
102
110
105
92
162
58
105
104
74
67
55
81
56
123
113
164
126
122
92
122
75
37
122
158
109
126
93
123
122
58
163
105
103
98
74
189
92
105
56
86
138
105
92
104
105
107
122
92
67
97
69
127
127
138
178
178
121
93
67
160
104
107
67
58
58
122
67
107
79
132
80
58
131
74
119
178
146
69
55
97
92
171
110
56
102
105
138
134
138
89
93
142
55
126
68
56
56
171
138
107
139
150
58
79
110
126
93
105
92
135
126
119
58
162
122
122
105
119
122
77
112
105
97
86
165
79
114
92
109
92
126
91
126
105
67
126
93
126
86
128
122
168
107
104
162
55
109
152
102
165
105
132
158
140
91
168
56
112
148
93
110
113
122
169
55
152
86
56
115
127
56
118
122
107
119
114
105
88
55
104
102
55
86
80
102
77
83
92
171
140
119
93
122
55
55
126
68
58
140
58
126
136
122
138
134
92
160
56
67
92
116
128
69
105
153
111
98
79
105
110
110
122
124
105
136
128
152
105
144
138
103
163
77
178
110
58
101
110
67
67
89
138
92
92
122
93
58
119
146
136
178
178
107
92
119
92
178
105
79
95
99
110
118
93
146
107
110
124
164
160
79
104
126
110
138
37
92
92
114
107
84
107
79
99
107
127
127
110
56
140
111
110
139
110
94
92
136
144
56
110
119
162
83
92
145
199
129
67
92
122
87
158
92
92
84
58
97
109
134
114
93
158
93
122
126
124
163
178
105
56
55
123
99
135
92
69
58
110
106
105
117
104
127
131
93
37
79
139
75
171
67
37
93
92
105
126
55
93
127
55
105
75
104
83
165
136
178
128
109
92
126
105
128
110
102
101
92
37
104
99
160
127
165
56
114
128
144
134
169
127
55
122
67
92
103
93
126
107
56
93
92
67
122
106
92
99
144
122
67
144
115
103
135
103
92
61
104
99
105
105
75
67
55
163
74
55
152
139
126
123
123
105
92
37
98
67
160
92
37
97
92
151
92
68
67
110
169
163
138
112
105
128
119
123
137
123
147
37
127
86
91
114
97
146
132
86
113
110
138
152
122
75
92
178
162
139
91
67
97
104
37
144
97
120
128
105
156
92
163
55
119
122
105
103
152
93
132
107
93
104
122
79
68
131
146
67
169
101
110
140
92
101
67
139
110
138
67
119
98
93
92
55
119
163
95
102
110
86
109
132
138
144
138
105
111
120
123
145
139
123
100
37
92
93
37
37
130
138
108
126
138
92
74
74
105
78
99
92
91
77
110
169
138
92
169
67
92
103
178
119
180
105
92
99
128
67
145
156
171
107
58
74
84
67
55
67
91
107
130
86
56
124
106
92
97
139
127
74
55
134
110
122
126
131
84
56
37
138
101
139
131
92
107
126
126
135
158
56
146
103
114
69
135
75
139
124
164
67
58
140
152
58
86
123
138
111
138
122
128
123
122
126
68
104
126
110
125
110
91
126
144
126
156
55
104
105
95
169
169
137
58
114
91
138
138
105
114
180
131
146
144
86
105
64
84
79
127
58
69
55
169
127
114
164
127
110
104
122
58
98
92
124
131
56
146
139
152
74
69
154
178
86
158
122
68
100
93
69
93
99
58
124
127
138
105
138
122
127
92
122
77
55
110
111
138
92
138
105
134
89
111
120
92
103
178
92
101
99
104
104
92
103
99
110
127
132
74
67
92
111
91
168
137
92
101
92
139
84
119
58
93
138
122
169
138
168
104
105
119
69
68
118
111
55
140
58
88
98
58
140
106
89
148
117
55
84
121
142
92
103
122
126
119
105
58
93
178
139
119
68
128
138
37
134
58
37
164
108
55
92
98
132
122
105
119
91
75
126
119
126
92
103
180
168
92
139
158
75
83
75
64
105
122
130
41
180
110
110
148
92
105
108
104
74
127
126
122
103
128
152
99
55
105
112
92
135
144
126
122
104
56
104
122
58
124
55
148
139
92
139
55
122
55
122
92
88
84
138
139
152
126
140
140
56
123
99
122
139
146
91
171
74
55
56
67
110
95
55
74
67
100
116
78
169
99
92
99
77
146
105
111
110
37
152
144
119
89
92
69
144
139
127
68
126
92
180
55
119
55
169
110
69
141
92
169
144
129
77
110
93
139
110
93
55
69
67
55
144
126
111
169
68
121
110
132
67
92
105
126
158
146
93
141
37
95
121
130
124
77
122
93
79
110
107
123
137
91
99
108
99
68
58
37
162
104
178
101
122
199
56
105
178
122
107
122
148
74
114
117
110
92
180
139
67
140
114
69
92
119
91
92
56
122
132
37
124
79
91
56
126
55
109
122
117
86
74
169
122
105
100
177
99
104
56
92
110
169
169
132
55
169
111
171
111
67
126
69
92
86
160
110
75
77
139
144
148
58
58
99
120
128
67
115
122
134
93
138
138
74
58
140
144
91
139
69
56
86
110
74
126
169
92
152
178
108
122
129
152
119
105
128
104
107
120
144
92
136
74
67
58
130
126
99
144
122
119
106
55
105
55
84
150
69
126
132
124
144
105
134
148
178
92
74
55
67
67
126
128
55
68
111
89
92
130
148
152
69
138
138
138
58
110
112
127
92
95
105
67
110
56
105
106
110
92
126
55
67
103
178
56
67
116
114
130
144
169
138
67
95
92
105
55
126
77
160
56
92
55
140
131
139
93
86
122
92
122
122
117
122
105
92
152
89
123
128
55
86
139
123
115
92
69
110
100
165
144
105
105
127
105
126
67
56
92
111
146
128
122
56
127
105
67
110
138
144
113
138
168
58
77
67
104
58
67
102
105
78
180
93
149
92
127
105
92
138
37
135
69
144
75
182
127
91
85
111
55
55
91
56
92
109
122
122
138
109
89
89
126
74
138
130
86
125
152
124
111
102
95
77
126
109
127
110
145
109
55
92
67
58
55
126
122
110
130
93
55
101
122
64
93
92
138
145
55
84
178
105
92
95
126
152
93
55
139
103
144
139
160
95
104
56
142
104
152
122
110
58
83
137
110
122
83
105
103
146
73
178
58
138
98
104
123
105
134
67
67
92
67
106
138
122
105
75
126
110
178
56
123
92
134
93
88
112
98
146
55
105
178
139
134
131
67
130
93
75
99
67
105
74
139
97
99
103
105
125
122
144
67
55
69
67
119
77
119
127
111
107
128
75
93
144
103
136
103
178
69
80
138
92
139
97
110
69
127
56
144
110
105
55
56
98
105
152
86
58
92
105
92
130
123
112
110
77
69
139
109
122
123
104
111
67
107
106
110
138
105
104
127
86
117
126
110
171
69
110
137
122
112
58
139
140
110
138
117
56
148
37
74
120
79
92
105
111
141
101
140
109
68
119
77
56
104
128
199
110
93
56
152
105
83
83
75
67
103
171
37
93
127
139
123
86
151
124
123
110
146
112
105
123
167
105
152
147
146
92
115
127
119
146
105
91
140
110
126
58
56
137
122
131
84
86
141
128
146
164
126
148
92
55
84
119
126
74
55
132
178
180
127
74
109
93
106
104
91
123
109
92
144
55
141
100
109
122
81
67
101
126
64
104
92
139
140
106
146
91
142
105
133
67
92
122
106
92
92
67
110
103
178
103
37
180
144
122
122
124
122
83
111
97
92
37
69
86
55
79
178
97
55
69
83
153
138
138
114
122
105
92
126
112
111
163
79
111
131
118
158
89
74
117
55
137
109
126
92
138
178
67
104
139
37
103
146
92
88
105
138
126
140
122
86
139
58
106
74
74
93
97
178
127
93
56
58
55
84
146
67
122
165
69
111
140
91
76
111
67
55
128
83
67
126
126
104
93
56
75
134
106
109
138
111
178
55
126
147
127
167
135
139
67
97
163
163
110
101
130
138
92
86
122
138
103
37
126
99
105
152
110
138
164
178
126
146
37
122
152
140
131
113
135
92
146
144
171
103
138
85
79
138
128
178
97
67
37
180
104
110
169
162
122
56
136
58
55
97
160
122
93
115
171
106
109
135
100
122
55
74
74
97
152
169
163
127
144
67
139
139
127
77
110
141
148
89
132
122
104
147
168
119
93
103
93
142
138
120
159
135
138
123
58
138
93
126
140
92
146
86
91
92
126
134
135
129
77
105
105
126
105
111
67
56
111
55
67
168
126
99
110
126
100
55
126
123
123
106
126
146
122
89
105
131
165
110
126
138
178
56
119
92
118
114
92
69
139
127
110
124
105
162
126
134
122
140
112
145
103
136
126
102
138
93
103
126
104
107
37
55
139
119
152
110
127
144
178
104
92
67
58
130
138
108
104
119
92
88
67
56
104
68
75
138
93
92
178
178
92
126
126
110
77
119
109
103
126
139
146
178
122
122
75
55
37
69
178
92
37
86
127
104
178
119
199
138
146
104
117
142
89
69
169
58
122
76
158
79
139
146
137
139
105
126
64
136
126
123
127
110
127
199
105
122
110
178
92
144
86
110
126
107
137
126
92
178
178
122
103
117
93
67
93
107
120
126
89
140
56
171
84
97
56
107
120
55
108
67
92
91
58
128
104
169
93
69
104
69
79
103
105
37
110
55
67
91
92
104
37
86
105
140
79
103
110
111
117
138
138
83
138
55
86
152
140
37
107
139
105
58
105
127
69
37
107
104
74
79
114
67
138
120
122
138
110
146
134
131
56
152
100
86
131
68
56
139
107
93
92
136
86
67
109
55
140
120
81
67
58
122
75
152
104
126
122
55
105
126
156
110
126
93
88
123
178
127
122
123
104
92
37
98
67
92
156
104
118
56
123
105
158
37
169
163
79
92
83
134
110
110
130
171
92
102
146
127
92
89
37
169
68
158
117
93
131
123
105
122
67
103
178
93
144
114
126
158
152
122
93
105
92
79
37
55
162
86
168
55
105
146
86
178
93
74
138
139
113
178
122
83
93
104
103
37
67
134
104
37
61
104
122
162
91
105
67
167
123
122
126
95
37
56
68
152
169
55
69
144
69
128
151
178
93
75
134
119
92
105
58
126
105
127
119
37
92
134
55
55
123
55
130
111
55
126
77
160
92
126
93
180
149
140
77
109
104
67
107
83
93
91
92
158
135
148
93
103
110
142
91
129
56
55
93
91
55
86
126
67
95
122
106
124
120
67
127
123
55
79
102
105
86
105
139
149
105
126
105
140
107
55
132
180
56
55
98
146
126
99
178
139
104
92
98
37
152
97
152
107
105
86
92
110
84
152
134
37
103
58
139
104
110
131
79
110
55
146
142
146
130
118
77
107
55
67
101
126
104
100
92
126
105
55
93
67
146
152
86
67
69
83
75
188
120
58
146
148
135
86
138
152
110
83
152
92
104
101
77
130
140
58
122
115
171
119
137
146
37
109
77
105
92
93
139
158
74
55
124
105
134
57
100
100
69
120
104
146
119
97
56
105
128
130
79
114
146
114
109
67
69
69
69
124
99
56
55
178
105
92
123
140
64
97
140
105
117
138
99
99
93
74
55
122
130
58
93
104
146
92
127
122
92
77
123
105
107
118
92
55
139
113
138
58
77
55
37
164
112
119
126
103
131
92
132
126
146
106
105
107
180
138
105
110
119
92
146
100
110
112
152
81
128
101
79
111
129
69
126
122
93
139
123
55
104
55
58
126
118
119
92
138
97
178
81
103
138
171
92
122
132
148
132
122
92
104
55
111
125
69
86
112
178
92
127
126
144
92
112
126
58
58
130
118
109
55
118
128
67
122
67
105
105
55
171
148
55
147
56
99
37
139
146
109
146
37
92
92
58
136
111
91
131
69
124
110
134
91
122
134
122
160
103
106
89
67
55
157
122
128
114
77
109
122
79
138
122
97
56
92
107
122
138
128
67
92
77
55
126
75
152
98
94
120
128
92
163
55
119
55
115
130
107
58
132
67
126
152
112
178
139
58
56
56
95
139
89
55
131
171
126
138
146
55
131
86
119
110
163
123
104
127
77
80
67
113
152
132
99
115
68
105
178
122
93
92
164
83
73
130
146
123
127
55
178
141
104
104
169
148
92
171
138
68
120
128
117
56
123
81
167
92
99
163
118
86
67
122
104
104
37
55
118
146
122
69
92
126
58
169
92
131
115
80
129
104
139
127
122
55
92
103
37
92
121
55
58
69
130
98
110
107
141
140
99
79
67
127
152
56
72
94
93
91
178
74
104
84
152
126
69
92
122
188
148
37
119
109
93
88
67
104
105
69
131
139
91
56
92
144
110
126
104
37
138
199
74
92
139
83
138
146
117
178
92
105
92
109
109
119
92
92
37
69
106
56
122
119
120
144
108
58
138
124
122
67
119
122
126
110
137
69
79
107
138
69
92
122
110
137
55
55
56
169
99
148
126
111
74
55
93
86
91
68
67
37
131
180
146
93
98
128
55
55
146
139
56
146
178
132
124
67
124
127
74
127
67
83
122
100
86
67
126
138
119
104
105
83
138
58
135
104
180
56
92
93
67
127
121
37
127
58
152
111
55
67
118
146
131
55
169
110
163
178
199
78
104
127
92
55
144
138
111
111
144
55
126
105
105
91
126
115
58
104
74
108
178
95
77
122
104
105
75
160
92
79
107
55
144
79
119
134
56
107
128
96
58
109
86
180
93
180
86
93
69
92
106
132
75
67
119
126
163
104
136
134
93
126
99
107
105
178
72
149
98
106
138
119
138
114
64
111
55
134
169
104
138
122
156
86
77
97
139
126
132
107
169
126
139
104
81
67
92
75
106
37
79
92
103
138
107
109
123
92
146
86
148
138
93
81
84
105
151
162
126
92
178
67
168
58
67
123
140
107
77
104
138
180
152
93
139
92
122
101
115
92
86
138
91
110
138
110
75
148
178
86
56
77
37
86
146
144
122
168
146
79
105
128
75
67
105
144
98
134
110
99
103
55
131
55
69
139
105
92
37
144
106
67
122
92
109
67
56
162
92
169
37
77
131
37
128
88
67
64
55
192
111
55
123
105
171
132
119
55
138
92
92
122
110
107
69
37
93
140
99
56
139
41
105
139
92
134
122
169
150
119
68
93
127
145
138
152
134
74
73
92
126
128
93
97
93
55
92
56
105
92
67
87
110
37
138
110
169
56
152
55
123
127
119
93
146
93
144
107
110
93
124
55
104
163
92
142
86
107
37
103
138
69
99
111
105
55
114
124
56
139
105
128
138
139
74
89
137
139
119
81
134
110
144
104
146
117
86
75
138
160
112
55
86
122
99
79
106
55
55
178
169
92
122
126
55
126
169
122
104
92
92
134
37
104
126
126
79
134
94
146
110
56
72
132
74
109
134
132
56
104
69
126
104
122
118
119
55
122
178
104
106
75
103
92
75
138
112
138
87
160
178
104
122
111
86
92
118
77
122
79
108
79
148
152
92
171
105
125
122
105
152
139
105
92
144
67
148
111
144
126
110
102
56
86
111
68
124
55
67
122
105
92
114
110
105
110
110
56
80
55
80
91
122
55
148
92
83
87
122
122
109
111
139
122
158
55
101
124
80
148
136
158
37
55
134
142
114
77
68
114
56
92
163
93
92
112
128
92
105
126
112
122
110
107
138
128
83
122
55
128
124
132
89
74
127
100
134
117
146
110
92
92
103
91
86
104
114
105
121
58
117
127
37
80
110
75
110
152
79
188
56
127
56
126
75
137
92
168
92
111
152
152
178
104
55
152
105
56
122
127
93
102
117
79
56
188
138
99
102
111
130
180
146
126
67
56
104
129
78
110
114
105
79
67
86
144
110
91
93
79
69
122
110
126
139
55
67
148
167
169
55
104
56
58
126
102
107
120
152
119
128
37
138
56
92
169
83
99
92
171
144
84
58
104
55
105
107
108
146
69
105
126
123
104
104
92
126
132
144
55
104
163
92
117
152
120
79
117
108
140
97
146
126
92
126
112
138
152
92
127
123
105
55
93
101
92
84
93
110
162
126
122
67
105
145
98
105
58
99
111
169
97
127
56
152
126
126
79
37
122
120
58
119
105
78
114
86
149
148
152
146
129
126
86
142
119
122
126
69
148
110
148
139
134
105
118
55
169
92
109
92
162
92
92
138
134
55
104
189
114
55
67
58
104
75
177
146
101
126
67
169
134
79
89
122
131
128
137
178
37
101
92
92
178
122
105
94
122
37
55
127
110
144
86
130
56
67
164
152
93
146
105
56
138
105
109
110
126
96
111
92
126
110
86
126
122
146
123
74
69
58
144
171
110
111
105
92
126
152
101
93
107
79
92
104
56
58
134
58
89
146
171
122
112
135
168
104
123
37
97
56
56
92
105
99
74
55
96
67
146
83
111
74
123
92
79
55
128
37
135
92
79
98
110
110
55
152
67
105
58
148
138
87
55
69
144
178
164
67
92
141
152
180
67
69
79
80
119
68
140
58
134
145
122
67
37
55
99
55
69
122
105
93
98
94
104
55
128
146
104
126
74
119
138
152
144
55
117
92
92
148
146
102
86
67
138
139
69
37
111
110
114
152
140
122
92
69
93
95
180
102
79
86
107
93
55
86
93
139
109
81
88
92
178
124
144
138
99
127
92
86
139
58
144
127
67
93
104
105
112
110
78
37
111
83
58
83
103
103
93
122
75
126
103
144
111
104
55
92
134
56
120
83
68
128
105
55
104
105
67
135
110
104
134
104
107
109
126
75
92
144
69
135
111
105
178
95
138
126
67
105
126
147
69
138
92
67
122
77
75
104
144
126
178
134
79
92
107
96
144
92
105
144
160
169
122
132
56
69
68
110
92
135
163
105
97
55
134
139
37
55
126
79
124
122
79
139
119
178
55
55
92
67
110
104
104
55
127
128
146
78
69
163
122
55
110
93
123
135
163
56
100
104
140
101
93
83
58
79
74
130
56
104
107
83
124
94
68
139
55
110
114
160
93
93
110
110
74
79
123
127
152
69
104
88
105
169
67
75
67
67
109
103
110
122
37
126
56
152
86
123
111
103
128
135
112
123
106
92
93
92
127
131
136
93
126
67
86
110
122
131
178
131
67
67
139
55
67
58
91
139
58
55
134
135
93
55
134
178
37
127
56
56
77
56
67
122
123
164
127
138
109
98
104
67
95
144
126
152
122
37
104
119
138
37
92
126
122
55
83
74
110
88
74
103
178
110
144
171
96
151
114
123
56
68
127
92
104
56
67
178
93
138
111
79
37
58
111
122
122
37
92
122
130
89
122
110
134
134
125
86
89
137
139
122
67
147
123
91
77
123
178
58
129
67
55
110
134
91
93
130
126
168
122
122
126
128
93
126
126
107
144
55
128
93
103
114
139
120
148
126
76
91
103
122
122
100
79
79
117
144
128
100
93
134
122
105
156
92
110
110
139
136
93
97
68
69
110
37
121
99
122
92
106
126
58
56
94
93
144
91
55
106
58
79
126
127
86
125
37
74
182
138
55
127
67
56
86
111
138
122
104
91
93
126
122
105
117
122
127
146
128
110
80
107
158
107
163
102
111
128
138
86
171
93
134
100
93
74
139
55
110
86
103
105
105
111
123
92
139
164
74
128
37
67
110
109
67
127
109
122
89
77
92
79
107
180
83
86
126
107
86
110
97
129
106
104
144
56
92
117
67
131
55
128
83
97
114
74
93
169
78
122
126
92
67
122
91
58
93
105
146
107
55
111
169
109
148
55
104
96
55
145
150
92
162
92
87
79
138
180
105
55
146
56
117
109
105
169
99
104
37
160
97
127
55
92
128
163
93
126
109
104
58
110
147
119
55
139
146
144
67
111
102
110
79
92
37
110
122
92
97
56
132
91
106
79
128
138
126
139
100
68
105
92
93
124
132
160
58
112
156
93
152
169
138
124
138
109
55
120
55
136
146
138
142
67
126
97
114
134
122
80
69
127
37
37
92
101
152
92
138
92
128
162
69
55
67
100
93
74
139
92
79
123
111
152
119
112
92
79
111
110
129
142
99
122
55
110
102
107
135
132
55
74
104
177
138
138
92
126
92
101
55
113
105
105
127
122
110
92
152
55
56
119
103
69
105
58
110
110
88
119
108
109
88
178
78
148
86
113
138
115
69
117
119
139
98
132
97
119
93
74
55
122
124
144
107
91
107
37
76
77
128
104
144
127
152
95
75
107
178
126
139
117
99
122
139
68
127
104
92
115
146
122
92
152
91
138
111
124
74
127
69
55
100
122
126
110
114
83
75
55
86
144
95
92
141
98
93
126
92
92
111
111
105
132
144
139
145
108
132
92
109
105
127
77
139
56
158
83
91
110
138
92
140
138
92
141
107
99
37
152
178
129
122
117
94
55
122
104
95
69
134
134
37
122
92
138
144
146
180
103
55
79
109
93
92
79
138
93
68
148
69
163
136
126
37
138
55
105
93
77
75
178
55
92
92
111
123
107
105
86
139
37
92
99
138
67
146
100
122
105
168
111
145
106
139
97
97
126
91
122
104
104
138
122
107
79
127
139
123
152
122
111
110
178
74
67
92
127
92
104
123
119
107
96
55
105
119
37
134
105
55
56
126
77
119
69
128
75
108
178
100
128
122
92
119
77
163
106
92
142
131
98
162
55
128
138
55
83
110
132
110
146
75
146
104
105
110
99
140
127
91
118
79
140
99
125
37
163
146
56
93
145
91
138
100
58
95
104
110
69
122
93
74
92
122
180
127
55
134
144
37
55
103
150
55
93
67
105
99
136
178
199
92
55
112
105
99
119
132
137
88
157
58
139
55
146
178
178
105
92
119
111
127
138
144
92
169
86
110
127
99
115
88
67
92
111
117
138
67
68
88
105
169
105
77
77
56
123
93
110
136
99
122
122
69
95
110
128
86
92
92
91
171
134
127
91
122
67
75
100
122
110
152
89
134
104
74
74
128
77
131
139
136
122
126
105
88
144
92
126
86
178
55
37
152
138
105
37
67
119
111
109
138
110
86
119
107
67
55
93
67
118
56
152
107
37
58
79
76
178
122
138
106
138
122
67
164
79
110
105
86
140
110
89
130
103
126
119
132
126
92
138
93
56
127
109
110
92
126
93
37
92
114
103
104
130
138
126
126
122
97
77
125
56
83
110
140
56
93
92
104
103
92
58
91
139
92
106
119
86
180
67
105
124
109
146
107
178
104
86
127
104
134
110
126
86
107
111
56
135
37
139
140
104
37
120
104
68
105
83
105
74
110
86
122
122
119
41
104
142
74
92
79
91
92
55
110
171
138
67
92
98
134
80
55
92
124
139
144
99
104
86
141
83
69
93
105
127
111
139
76
148
67
126
109
56
138
139
67
163
146
91
75
55
97
138
106
139
138
140
67
146
55
86
92
139
103
79
128
56
144
138
139
67
180
99
84
144
141
140
105
148
104
140
104
171
104
140
138
111
146
110
105
127
58
138
110
69
117
77
110
77
109
158
105
99
84
91
86
138
126
119
99
148
83
92
119
122
75
144
92
110
105
160
67
136
169
139
86
120
79
126
92
77
137
139
92
169
138
55
137
110
74
37
168
107
105
168
126
199
122
127
92
178
56
55
152
144
126
86
123
134
103
93
93
138
131
67
127
110
92
160
139
99
77
110
105
162
107
138
137
55
58
128
77
93
178
55
107
119
101
128
118
56
67
55
98
114
135
56
135
69
92
136
103
126
55
56
110
74
122
55
75
55
148
67
122
169
77
136
84
92
92
92
138
97
55
122
110
92
92
55
79
109
92
69
109
55
124
104
138
98
92
135
114
178
140
86
131
95
74
58
169
101
110
151
119
97
105
127
138
110
93
162
55
130
122
58
152
67
101
99
104
101
92
126
128
92
55
162
67
76
99
122
93
110
124
135
156
138
67
92
69
122
92
146
109
144
93
92
104
92
55
92
131
110
112
119
95
67
120
105
99
76
117
74
37
121
128
86
126
106
149
92
104
67
83
123
127
122
89
107
67
75
138
55
93
103
136
122
119
92
67
91
144
110
92
55
58
122
75
103
107
55
111
144
145
139
132
100
169
126
101
55
78
67
135
104
55
91
105
138
91
110
122
105
140
140
122
124
92
98
103
178
55
58
107
75
99
105
84
68
130
37
91
100
91
93
55
131
119
136
80
69
76
104
142
55
142
128
93
165
105
105
125
68
127
138
93
118
127
67
92
86
92
79
199
124
56
178
169
192
75
81
104
127
124
91
122
109
56
69
55
105
55
86
88
92
150
141
104
92
152
67
92
68
114
114
123
114
92
131
87
110
110
75
122
105
110
79
105
99
104
105
102
138
92
131
122
144
135
55
127
92
120
37
122
92
126
69
142
127
56
107
67
77
92
144
162
138
146
126
55
105
92
144
126
79
148
67
92
141
67
106
79
98
110
75
86
100
107
92
138
79
119
130
79
144
105
91
99
75
110
67
58
100
55
92
92
138
104
37
144
135
86
114
126
152
140
92
144
93
69
110
178
106
110
144
111
99
119
127
145
146
74
138
152
67
109
152
105
111
89
69
102
74
92
163
164
126
103
79
131
55
110
105
95
92
178
93
126
123
110
136
139
136
178
92
147
178
146
122
92
92
94
98
122
169
58
79
91
92
55
128
128
139
114
134
182
144
81
55
134
110
92
108
67
55
146
105
110
77
138
98
139
127
135
140
110
107
130
89
58
56
134
125
163
126
69
126
111
107
56
111
119
139
126
93
91
122
75
55
127
111
122
138
91
105
79
37
37
122
37
110
92
58
55
58
165
119
110
125
122
122
74
92
74
68
101
123
56
145
122
105
100
119
104
37
55
58
178
56
126
163
164
136
103
105
144
139
93
92
56
157
136
56
126
110
95
126
134
93
114
104
138
104
108
124
56
140
105
111
104
109
110
122
104
67
118
164
103
139
113
104
120
159
104
37
124
74
142
128
107
37
56
105
101
55
69
139
110
105
69
123
55
178
124
75
91
91
137
104
74
87
126
109
55
92
93
163
110
138
122
178
132
67
122
89
134
148
140
37
55
67
110
68
110
125
58
146
140
105
164
146
111
136
55
124
104
99
105
126
92
119
136
110
118
92
96
84
122
114
132
107
139
140
77
55
79
97
107
86
126
178
160
56
79
58
55
79
104
139
126
178
119
110
89
65
109
109
110
123
139
84
138
93
122
126
55
92
131
103
122
128
138
99
37
101
124
122
108
92
111
135
178
86
104
138
55
74
96
136
144
105
131
92
74
130
126
67
110
58
92
111
77
140
128
79
55
144
105
55
105
67
105
138
92
92
55
150
122
105
79
111
56
58
106
122
92
111
92
124
92
120
116
37
78
37
79
69
92
99
138
126
58
104
74
127
127
92
122
105
93
104
75
83
104
124
69
119
122
124
138
110
146
144
93
136
99
122
37
67
138
105
104
104
93
103
122
122
37
103
55
104
55
139
105
139
101
55
123
127
58
138
134
127
144
160
55
37
92
160
103
136
152
74
75
118
75
55
55
93
135
122
112
128
56
105
69
89
128
125
105
103
144
128
110
105
95
69
168
100
89
91
112
110
138
58
99
165
89
92
126
110
152
69
67
118
56
100
37
104
132
124
74
136
99
89
92
162
127
58
86
138
139
83
162
110
86
67
56
92
127
75
180
127
69
37
119
99
104
55
92
110
132
56
91
95
110
110
77
144
126
79
93
91
152
128
56
128
107
128
55
58
131
110
152
105
178
140
92
98
105
112
92
122
139
105
105
93
109
107
79
127
55
169
122
105
58
95
132
55
58
58
97
56
103
144
110
132
122
135
112
110
163
55
67
72
98
139
67
103
105
104
89
156
124
128
93
162
162
111
56
37
91
92
101
110
78
105
122
122
112
86
55
109
93
91
92
56
56
122
108
123
138
119
92
67
92
126
77
92
92
152
138
105
123
127
148
104
127
178
165
92
144
119
69
136
55
100
123
112
110
123
55
103
129
104
100
95
83
142
138
97
160
135
56
138
78
99
93
110
115
180
110
119
139
151
108
93
119
143
124
92
105
134
93
154
129
58
58
56
168
56
109
104
127
144
93
132
126
132
56
110
134
171
91
37
103
104
98
105
105
99
55
104
138
123
139
110
152
138
105
122
146
150
146
92
149
55
109
102
92
105
131
118
138
152
37
122
111
79
96
95
169
126
107
103
114
122
83
58
119
92
110
163
125
178
128
171
99
56
122
91
105
122
126
146
110
146
130
88
37
92
68
122
37
118
108
126
122
91
74
152
131
126
69
178
144
136
135
126
55
178
119
110
122
139
99
130
74
92
126
107
145
140
111
58
122
135
124
95
131
152
110
104
107
107
146
123
92
126
93
140
142
110
91
109
91
122
109
104
144
127
122
126
169
56
102
138
105
37
139
112
152
55
92
127
56
91
158
110
97
144
123
140
138
110
140
92
152
97
144
56
105
97
102
68
91
146
128
91
140
97
99
67
167
140
56
55
92
120
130
86
139
55
140
106
74
108
56
105
79
115
119
122
152
127
92
105
123
119
56
67
119
105
108
67
128
110
122
126
127
139
122
104
101
92
138
180
104
92
149
128
110
84
67
158
92
152
92
109
93
56
68
118
126
151
120
122
58
127
56
55
152
120
55
148
58
92
132
99
171
146
145
178
122
110
74
148
167
126
111
138
67
135
146
100
92
128
105
107
138
139
122
134
37
105
77
58
156
56
127
92
69
104
93
178
100
67
154
110
67
55
75
92
92
127
92
86
98
77
138
67
123
58
67
92
126
93
123
92
139
92
78
87
167
92
69
115
131
132
67
101
104
56
144
105
92
92
112
80
110
167
92
91
164
138
120
100
152
110
169
92
123
138
127
56
132
105
144
93
138
99
37
75
87
126
146
77
67
76
152
134
102
158
99
68
164
105
160
55
110
126
91
105
68
138
105
110
127
132
197
111
109
139
144
77
146
84
118
139
112
75
103
104
178
127
77
119
55
138
92
83
111
67
74
110
99
92
103
120
105
165
55
127
131
92
105
134
92
126
110
123
109
146
144
89
119
139
140
122
58
83
110
178
93
56
87
55
164
106
92
169
105
89
91
127
99
138
139
122
56
92
78
118
100
119
79
160
180
91
163
178
92
92
138
93
126
139
138
178
146
123
138
92
126
142
139
107
104
117
107
92
105
128
74
118
178
124
152
119
178
107
131
110
132
86
97
77
126
137
135
104
127
163
95
123
105
86
146
75
118
92
139
73
128
111
67
139
128
95
56
146
56
164
95
126
103
126
101
55
92
37
146
109
137
126
107
126
158
130
104
122
74
109
105
86
169
55
92
67
138
92
112
67
92
93
138
146
126
148
102
162
128
93
141
76
61
138
145
121
93
132
105
92
37
86
69
58
67
103
146
110
121
122
106
122
109
126
73
178
144
105
110
92
67
92
55
92
67
99
92
146
111
178
169
119
150
152
110
140
93
77
169
104
127
119
74
119
129
93
75
122
139
92
120
84
122
105
140
122
95
67
139
58
115
99
131
93
128
92
56
99
107
120
92
92
109
138
132
128
132
107
84
103
105
105
123
128
140
138
110
135
126
136
180
111
139
105
137
67
138
105
110
109
124
37
55
56
126
103
124
123
98
151
164
146
122
105
112
134
117
127
79
111
111
124
168
86
126
77
93
152
144
79
119
122
119
92
37
138
37
56
160
99
91
55
83
178
128
171
126
56
55
93
129
77
103
110
105
131
182
99
119
139
91
104
104
142
138
138
56
104
84
77
56
56
104
37
178
126
83
180
56
139
93
86
92
69
86
91
178
92
171
151
100
139
92
105
58
104
105
107
92
92
109
98
104
146
55
134
110
92
110
110
144
105
58
139
134
93
151
110
127
168
138
152
92
124
122
138
134
130
134
104
37
75
118
138
122
104
95
118
110
144
163
83
58
122
107
91
122
120
169
126
128
140
139
171
126
139
128
142
69
138
128
178
77
118
199
152
138
104
146
92
56
113
169
68
105
105
138
138
142
169
86
74
98
169
83
104
140
123
100
127
138
164
126
93
120
126
109
122
105
138
106
105
74
105
122
110
115
178
138
56
91
135
86
139
91
160
67
68
136
92
110
105
37
92
107
37
56
148
171
146
103
131
107
92
99
114
144
55
124
92
128
126
92
104
128
96
93
127
127
93
114
122
74
93
139
124
79
93
114
86
163
146
122
69
83
140
178
123
126
139
112
139
97
84
140
67
93
55
110
127
79
79
138
55
119
114
124
110
106
56
152
114
92
93
167
92
77
67
67
126
122
83
55
122
69
75
107
104
67
104
105
93
75
92
122
126
122
87
93
67
137
94
79
110
122
67
140
147
73
122
98
126
127
110
55
56
146
164
99
148
55
74
124
78
132
81
124
104
99
102
108
140
118
93
144
92
122
93
37
104
136
153
110
127
138
37
105
122
84
131
58
67
67
123
110
92
131
93
110
119
67
67
92
138
122
58
178
92
110
122
122
110
69
67
105
163
122
152
84
119
123
158
123
138
92
67
105
128
79
100
74
122
123
55
123
86
93
104
55
92
77
126
105
123
134
121
144
112
120
56
171
178
105
92
105
139
104
68
131
104
56
114
55
129
103
96
119
110
111
118
139
178
126
87
158
171
77
83
120
55
87
110
69
105
92
158
140
93
130
140
120
67
138
104
138
110
69
61
138
107
122
167
113
110
93
122
145
104
136
99
75
93
94
91
86
138
85
92
169
92
148
148
109
124
141
137
139
126
127
144
126
158
110
131
168
67
104
107
109
56
144
58
67
139
92
146
109
69
136
55
112
139
124
92
67
111
67
79
37
113
101
123
104
111
93
141
127
182
117
103
144
128
55
110
123
104
126
92
128
139
94
89
93
83
98
122
83
139
104
99
69
93
134
117
55
55
107
126
79
99
105
92
92
158
69
111
152
122
55
92
169
58
147
123
56
152
139
92
97
111
168
123
99
123
93
118
67
99
74
93
104
107
104
67
140
129
55
141
122
134
86
110
105
90
110
130
123
139
77
120
86
152
110
122
74
37
140
138
110
123
135
111
110
67
102
101
104
105
91
163
119
169
104
37
150
162
134
146
144
146
55
122
123
126
93
55
123
139
37
79
105
55
148
107
178
56
110
110
126
132
139
97
119
92
146
102
93
88
77
80
112
128
105
110
88
126
110
105
126
134
122
77
122
139
138
75
144
110
86
91
135
178
92
75
105
105
105
140
55
86
122
120
77
163
92
136
126
58
84
122
93
67
103
67
110
80
169
93
163
99
86
106
86
55
86
107
126
110
55
79
122
103
93
92
110
67
93
75
79
137
69
129
74
104
129
105
123
56
56
112
138
122
75
86
104
93
83
67
93
144
58
56
115
138
119
55
55
126
122
123
126
100
169
128
79
37
126
55
69
123
135
58
152
37
108
152
104
119
56
69
37
55
104
92
146
122
105
162
145
139
122
138
79
105
99
99
138
107
124
110
144
83
148
122
126
92
37
56
169
160
55
79
117
79
124
37
67
119
151
152
37
93
132
110
110
86
110
92
67
126
69
88
74
123
122
55
163
114
105
58
121
99
127
140
79
114
105
92
107
171
55
74
126
37
152
178
92
100
92
123
126
92
92
169
105
102
163
58
128
138
148
79
139
128
178
80
77
123
119
55
110
104
122
68
105
122
117
58
126
114
110
123
84
99
146
110
127
103
152
105
105
158
58
86
132
109
130
105
69
68
93
138
112
107
114
37
100
91
67
109
104
128
136
138
138
146
105
84
124
165
92
142
95
105
104
79
99
67
104
98
55
151
92
132
37
138
100
169
109
99
135
139
92
55
109
117
158
67
56
92
97
126
122
106
68
115
93
67
152
136
75
132
119
93
168
67
127
37
124
158
79
93
75
101
131
146
93
110
103
110
101
199
84
106
109
110
130
111
92
127
37
109
138
110
74
122
95
74
123
128
110
56
92
126
74
89
104
126
86
169
55
92
137
130
93
119
139
79
55
105
99
92
126
149
104
55
75
92
91
74
140
104
139
102
92
126
93
128
124
148
86
93
83
97
138
122
92
92
104
55
105
107
67
79
114
37
92
126
104
110
105
80
55
110
104
108
152
55
92
67
84
138
109
160
140
110
107
122
56
125
55
122
79
115
110
55
75
97
114
112
118
79
58
55
56
93
168
74
182
99
178
122
122
122
37
105
105
122
171
178
168
37
110
126
91
128
128
122
79
138
55
110
148
168
119
128
105
171
138
123
110
55
104
122
129
67
136
119
89
99
79
111
132
95
138
134
110
152
146
132
171
136
122
37
136
69
148
110
131
74
104
92
105
86
105
119
146
55
69
122
144
122
74
74
131
108
37
128
69
110
134
67
107
119
130
67
105
110
148
105
91
144
123
103
111
126
138
126
37
74
119
104
56
122
86
107
56
110
134
138
67
67
130
74
92
138
139
122
127
78
111
67
122
136
108
109
91
128
140
128
56
126
111
138
123
140
79
56
122
93
83
123
123
124
123
55
140
56
134
92
123
158
99
128
139
99
67
132
58
98
86
126
105
127
93
115
56
101
56
118
56
105
126
128
92
148
131
92
100
56
58
124
141
86
189
178
37
111
129
108
122
122
139
55
111
58
99
74
138
55
169
158
114
67
99
169
84
84
178
67
110
110
98
119
55
73
92
101
109
92
93
110
106
37
103
180
75
124
99
92
92
56
92
118
56
160
126
139
93
105
107
92
140
144
103
112
109
144
122
152
110
92
78
55
92
131
37
103
123
58
56
108
122
144
160
110
110
58
114
74
92
149
91
98
92
37
84
197
104
138
93
101
92
125
138
146
92
83
150
99
109
181
95
105
147
108
139
67
95
55
122
156
104
67
119
120
69
93
126
107
126
92
103
109
98
55
88
102
67
56
56
123
79
128
93
178
74
140
123
83
127
77
56
55
137
146
77
162
84
146
128
108
83
138
129
55
122
37
105
55
69
145
37
102
114
100
110
110
138
178
123
99
119
134
169
99
119
122
123
37
106
93
55
92
104
69
67
110
126
146
138
69
92
93
164
142
37
92
92
89
55
110
110
111
100
92
56
164
58
128
127
138
106
178
68
75
105
148
178
95
79
92
171
122
99
37
68
55
74
105
126
124
123
55
138
86
67
55
127
67
67
139
126
134
77
125
99
104
122
122
112
37
138
91
122
126
56
104
92
109
110
122
55
87
104
127
69
126
116
77
91
169
84
178
73
92
138
103
92
178
67
87
124
109
65
104
58
139
119
97
91
152
111
131
132
132
56
81
119
75
123
56
144
178
122
55
144
55
138
130
128
58
148
121
66
122
56
105
107
110
118
122
110
77
122
69
138
105
79
126
105
91
126
122
69
97
92
127
106
138
69
92
92
56
140
79
105
122
139
178
55
130
112
117
123
58
77
56
122
55
110
138
122
118
105
75
92
93
110
158
122
86
69
55
132
99
180
178
56
128
137
74
123
134
181
55
92
61
100
171
110
83
67
110
100
146
138
146
132
118
123
110
92
110
137
126
134
152
146
107
75
119
127
126
123
79
178
145
138
104
138
79
67
128
67
126
138
152
126
86
93
79
55
110
135
110
86
89
127
104
146
114
139
110
86
77
111
105
124
109
93
152
169
110
103
171
99
84
105
144
109
92
92
122
55
104
126
104
115
178
119
134
122
37
67
100
122
67
56
105
105
55
139
111
74
93
93
123
92
126
105
74
138
74
105
55
178
138
127
55
144
93
92
92
68
37
77
138
92
86
103
107
163
128
114
126
67
84
112
123
152
106
139
77
135
119
128
77
122
105
58
117
92
148
118
55
117
97
109
110
178
86
84
102
37
138
121
139
120
74
67
146
106
182
111
102
148
162
148
110
122
119
109
105
171
180
139
167
168
105
118
74
123
105
189
107
146
56
107
138
126
168
100
124
75
122
188
171
78
92
98
84
58
147
122
105
128
139
99
136
92
74
122
92
138
55
92
95
122
91
55
122
158
128
126
171
99
55
79
152
100
107
58
136
79
119
178
163
152
55
58
84
122
122
123
105
158
110
104
103
67
79
111
105
138
93
55
109
88
104
138
126
92
57
109
114
123
37
55
134
105
37
56
95
124
168
110
105
110
138
122
69
152
56
99
55
67
138
107
92
92
89
92
92
123
138
132
92
122
55
127
168
67
145
122
105
91
64
98
199
55
139
37
126
100
169
139
140
119
104
96
126
104
105
144
114
55
127
122
178
146
74
126
122
163
122
122
56
110
55
110
106
92
110
126
110
121
108
67
123
119
74
67
122
130
122
180
92
92
149
67
127
56
129
67
67
92
151
105
128
92
55
86
110
138
56
138
145
91
146
67
120
55
92
55
110
122
56
58
88
104
92
111
67
152
93
80
122
97
91
37
124
127
98
140
144
180
105
146
119
114
58
79
152
67
122
105
123
138
67
138
105
92
91
75
92
55
131
83
74
102
199
115
56
122
138
122
103
79
79
147
120
126
56
148
110
80
126
146
97
128
55
58
69
77
74
87
124
111
122
111
93
67
123
92
55
146
192
79
122
55
122
102
122
91
105
130
92
105
118
142
92
104
95
120
93
92
68
103
77
107
112
123
138
77
122
138
102
105
93
169
55
72
98
84
67
110
160
149
129
138
79
58
67
79
95
92
55
56
110
127
67
86
122
92
146
77
92
102
178
122
138
89
77
92
126
88
97
110
160
119
37
61
178
136
92
122
122
69
122
92
131
56
146
93
91
86
110
111
56
123
118
110
138
105
164
111
122
68
55
67
86
118
127
126
128
74
55
117
57
110
131
84
107
92
86
179
138
126
84
56
91
168
122
105
92
158
171
55
97
177
127
37
104
122
92
129
169
92
164
37
105
55
119
93
99
105
104
110
99
95
91
92
130
110
104
111
178
109
124
110
67
144
104
137
122
138
130
93
105
178
104
138
139
56
104
58
55
92
110
55
119
55
171
104
104
107
92
134
102
92
139
92
105
92
37
119
110
119
92
92
138
171
89
134
132
110
55
118
126
124
110
67
128
182
152
105
68
92
105
93
89
167
55
131
67
122
146
122
152
37
122
67
137
152
112
55
131
178
93
92
104
92
110
55
122
111
178
55
79
128
104
55
75
158
58
104
171
74
144
113
92
122
55
55
126
138
131
55
105
93
99
152
105
77
144
105
135
140
92
110
75
146
92
126
98
149
91
103
122
136
119
37
142
127
117
68
120
55
111
67
89
55
93
110
139
146
92
123
103
86
115
128
148
118
119
145
92
136
100
91
126
99
92
74
140
134
137
122
67
55
99
128
114
164
146
138
99
136
169
110
122
110
93
120
111
144
55
112
67
55
55
178
180
103
122
132
131
146
106
130
144
124
138
139
114
169
92
69
139
139
131
124
138
144
110
92
160
55
138
92
127
55
110
128
74
106
99
105
104
86
139
79
67
130
69
58
84
118
110
137
99
110
69
128
110
55
58
69
92
93
144
123
151
56
56
122
105
152
83
37
126
126
127
110
119
110
114
144
146
56
122
92
105
146
122
146
138
119
128
37
126
92
92
105
91
152
163
152
69
108
128
105
110
77
129
86
56
104
92
138
127
77
122
68
67
132
122
102
126
55
119
93
86
126
67
105
157
122
106
105
100
105
104
74
67
125
110
37
55
107
138
171
74
95
83
104
110
111
139
93
122
110
97
122
152
104
110
92
120
110
58
144
138
122
138
110
99
138
93
67
69
55
79
139
178
139
140
68
138
178
67
115
177
92
110
110
104
134
127
128
128
138
55
75
69
94
109
144
107
118
139
58
98
55
55
127
83
123
144
37
111
58
110
94
152
74
163
105
126
55
171
105
139
156
68
37
147
110
127
105
69
75
119
139
130
99
118
138
67
105
111
94
98
92
148
107
93
128
142
122
92
119
104
152
92
126
37
104
37
68
99
93
56
110
110
122
91
74
55
105
123
131
92
99
160
37
110
106
110
114
126
138
118
119
68
110
140
92
108
58
122
110
180
104
56
114
88
58
91
142
122
99
64
130
127
93
144
91
171
144
95
86
138
122
144
122
67
67
69
79
99
68
132
92
83
67
122
93
55
122
55
127
178
122
91
58
79
69
92
123
124
79
122
69
119
99
140
110
165
169
122
55
126
144
126
139
109
135
102
158
146
74
105
112
110
93
58
97
131
148
67
132
83
67
105
126
101
137
110
77
131
134
134
92
122
92
127
130
92
56
56
127
118
119
122
55
92
91
104
121
58
77
74
139
55
92
136
110
107
55
56
55
123
104
55
104
146
92
67
126
122
111
104
169
92
99
67
139
132
67
93
124
92
110
69
83
122
140
178
162
92
55
140
110
105
144
55
127
123
104
79
74
140
127
105
141
127
178
67
55
104
119
138
55
109
77
93
117
109
138
69
67
93
134
58
105
56
134
79
95
125
105
130
92
100
137
110
111
167
138
104
118
55
105
138
137
119
37
92
109
122
138
92
120
127
149
138
55
120
75
144
122
56
92
92
69
92
93
169
138
167
132
83
105
119
138
92
107
37
126
69
146
123
92
37
95
130
98
110
92
56
55
55
130
126
107
37
126
103
122
131
58
55
83
145
137
105
138
131
122
58
104
152
126
110
107
74
99
55
67
55
178
75
164
56
99
130
144
119
126
127
106
105
92
110
144
109
109
131
100
123
91
55
92
146
74
139
58
114
122
199
124
135
140
178
67
149
112
79
169
107
93
105
110
69
56
93
140
126
140
93
122
122
86
152
105
104
56
89
138
77
92
110
69
139
111
178
67
151
67
110
86
112
111
93
55
137
67
138
107
132
127
158
117
55
77
101
126
105
122
152
109
178
126
69
138
69
162
86
58
111
92
86
92
106
144
97
56
127
58
110
103
91
67
103
95
55
128
69
83
139
112
139
104
56
98
110
37
128
55
128
139
127
164
55
92
111
58
115
55
126
119
55
56
123
178
67
171
144
126
67
104
69
169
141
167
84
123
67
58
105
55
118
92
79
127
107
140
86
55
67
127
69
58
105
86
137
55
92
122
92
92
89
140
92
106
112
104
178
122
128
148
67
132
110
103
74
139
78
86
122
178
107
105
55
140
58
137
56
131
153
138
56
111
55
105
123
122
78
167
99
134
86
140
142
92
55
83
92
138
55
83
107
119
110
78
86
58
83
178
79
127
92
67
58
76
128
144
178
139
139
163
105
110
77
107
120
134
92
127
56
131
134
103
122
67
122
148
135
99
169
105
96
139
105
114
107
58
167
79
99
171
56
37
102
104
68
122
55
55
162
93
110
111
131
79
37
132
104
145
84
144
122
86
122
134
164
141
115
93
86
158
92
126
55
91
181
127
138
132
164
134
109
92
73
119
110
131
120
139
111
137
107
113
104
157
122
178
55
55
144
93
152
122
81
102
138
150
140
178
55
126
102
144
123
87
97
132
123
140
140
138
126
162
92
126
55
107
111
126
137
67
86
108
178
171
168
80
68
87
158
105
83
110
56
131
128
68
105
111
158
121
105
104
69
104
108
102
136
104
56
129
55
107
110
99
92
146
120
37
101
121
67
126
56
136
83
110
121
104
141
92
139
91
126
99
75
74
55
127
97
138
136
122
94
138
55
122
106
152
86
84
126
162
148
69
105
151
101
199
79
92
109
37
67
55
79
37
148
110
80
69
111
104
102
122
180
74
127
74
106
105
55
180
128
112
150
132
92
128
138
92
138
169
79
100
122
99
114
122
109
73
124
144
79
146
91
110
104
180
104
152
132
75
146
126
138
56
105
146
93
77
124
110
105
119
93
126
37
105
84
139
109
58
138
78
37
99
105
138
101
158
91
74
112
88
86
158
128
58
105
127
138
75
67
110
117
99
92
93
122
91
77
89
169
105
122
122
180
123
79
79
158
55
58
126
37
103
138
58
109
91
91
58
55
122
104
139
98
126
116
122
92
122
58
123
139
58
181
136
126
110
112
146
127
58
67
55
68
58
134
69
105
126
67
78
105
163
69
110
178
58
93
37
92
55
124
111
136
122
92
105
86
86
122
56
89
55
97
132
122
92
122
92
128
56
148
102
146
109
136
128
93
69
169
146
99
103
68
56
56
178
55
146
123
109
86
37
138
58
67
88
69
110
146
37
91
112
178
139
93
104
37
105
139
92
105
178
122
105
178
88
135
86
146
152
99
152
56
37
92
103
67
152
130
149
109
138
79
180
92
127
55
67
37
139
93
93
79
91
55
105
128
138
55
122
93
67
92
79
127
110
58
152
158
55
122
109
97
122
131
128
169
107
104
114
110
55
122
86
92
126
144
97
144
128
55
56
80
124
74
55
92
93
93
138
146
158
58
122
37
91
99
126
169
98
134
93
105
37
107
110
98
139
109
122
140
169
92
103
136
119
37
122
136
92
152
105
140
109
144
69
162
68
93
77
127
131
128
86
55
137
110
104
67
69
104
37
127
146
92
92
169
126
75
152
144
92
75
126
83
104
92
83
122
139
105
126
58
37
123
178
158
58
126
79
105
77
122
139
122
92
69
104
124
104
160
123
68
131
169
105
119
94
91
105
115
92
92
105
111
108
93
84
138
55
138
138
169
146
92
55
86
95
119
92
99
86
69
78
110
140
101
105
77
148
110
79
68
105
92
37
139
139
103
67
142
114
84
127
104
148
56
83
86
199
169
110
92
145
93
113
55
178
119
146
117
110
138
127
146
178
110
131
67
110
110
98
122
105
99
55
127
122
178
134
138
78
139
111
109
132
126
55
132
86
69
95
103
58
140
110
84
146
89
139
86
134
128
109
80
109
56
109
77
104
130
110
127
99
37
171
103
83
75
138
79
129
122
67
92
99
55
178
126
134
180
119
99
55
110
105
130
55
56
58
99
92
146
134
122
152
110
56
55
91
126
106
127
93
122
107
131
79
119
123
67
165
91
55
56
123
69
154
139
132
138
128
110
120
152
75
92
55
107
107
84
56
110
101
103
109
144
110
115
138
146
86
105
138
105
69
92
122
132
105
92
130
67
92
122
72
55
101
107
105
178
122
56
95
83
92
77
96
146
126
147
158
126
69
132
105
123
138
110
89
122
95
148
126
92
178
55
105
55
113
95
110
68
93
126
58
123
122
92
58
92
104
178
169
110
56
69
92
37
128
93
132
138
178
149
67
69
138
84
107
105
138
77
67
136
79
138
139
136
55
96
138
126
136
169
126
74
140
118
139
124
86
98
37
160
107
128
104
110
37
88
105
92
105
110
140
69
107
164
98
110
108
75
164
78
119
105
92
74
146
92
55
136
92
92
83
83
126
122
37
67
110
110
122
112
55
122
178
67
138
103
92
56
111
122
67
86
126
92
91
142
77
122
122
126
92
74
105
110
74
128
108
127
135
79
135
138
122
83
105
55
55
84
55
107
128
86
92
126
79
123
134
83
93
55
139
93
146
152
138
67
106
136
78
95
152
127
55
109
103
139
92
119
144
138
107
131
103
146
68
92
132
96
118
137
140
93
67
103
79
134
105
103
145
138
123
69
126
55
67
126
110
138
56
137
125
148
92
55
177
106
126
123
158
110
110
146
56
126
93
144
111
105
74
169
107
146
103
138
163
101
122
171
152
122
110
126
163
89
168
138
67
105
178
146
74
67
139
92
92
92
92
103
106
140
117
68
105
134
130
123
103
92
77
37
104
119
134
152
169
97
126
92
152
138
94
105
83
128
69
67
127
92
138
93
178
92
55
110
126
128
79
107
110
168
128
92
138
126
122
105
128
92
55
58
110
98
67
112
169
158
138
56
114
122
92
67
79
85
126
55
137
136
152
79
93
130
58
144
75
92
92
103
101
104
138
111
77
77
76
92
77
122
55
92
124
139
180
92
127
79
87
146
56
134
109
104
122
139
104
58
152
103
134
92
55
124
77
127
134
55
120
132
145
124
122
146
134
131
55
98
83
127
126
105
77
145
58
56
101
144
55
149
56
37
139
92
56
77
122
92
130
152
92
130
102
169
132
138
168
139
112
37
134
178
67
91
92
132
81
136
126
105
123
56
126
130
134
109
137
110
92
56
83
132
180
104
81
171
55
55
92
56
122
140
55
86
56
56
93
119
126
86
114
56
180
119
105
127
92
55
111
104
152
138
124
105
140
58
92
92
92
105
110
67
106
126
164
122
75
84
135
126
75
169
79
58
92
126
55
67
103
99
126
105
86
55
74
69
126
169
77
138
121
112
56
92
169
152
103
56
74
145
37
129
148
92
162
122
67
92
55
109
109
101
83
97
86
56
139
126
98
139
67
144
128
67
123
92
123
92
109
152
77
111
178
37
55
102
79
132
180
74
122
92
83
110
92
58
122
77
122
91
92
146
134
138
127
160
122
37
106
86
109
37
132
127
138
122
104
103
105
144
55
55
129
92
55
122
110
122
105
93
139
74
105
144
127
92
158
67
69
55
37
122
58
137
99
122
127
93
126
37
100
100
67
92
111
139
111
110
178
103
97
139
86
77
93
122
169
153
74
55
127
126
67
98
110
148
97
103
69
107
119
111
92
146
109
86
92
152
107
67
110
86
105
58
55
93
105
112
139
98
92
141
107
122
103
163
139
117
55
115
134
37
67
119
169
92
69
122
105
120
135
127
111
138
122
126
105
178
138
92
92
69
111
127
180
119
88
135
180
126
135
138
92
102
93
58
138
132
75
69
125
92
126
58
105
127
102
146
140
152
110
134
122
56
69
126
114
107
144
169
146
122
100
102
126
145
152
77
122
132
180
55
146
103
128
144
122
67
112
94
74
122
102
107
165
105
105
110
138
171
125
117
75
55
152
109
55
88
111
37
102
105
148
93
127
128
138
110
126
67
140
139
79
126
97
67
93
77
169
79
146
99
112
83
144
126
140
89
114
134
69
119
104
126
92
118
69
83
91
119
105
110
109
93
105
55
86
92
112
103
146
123
93
68
67
140
132
105
75
111
55
69
93
138
122
37
136
128
122
74
112
37
139
140
110
150
37
120
124
111
119
144
55
104
139
91
67
106
138
67
110
110
122
126
91
119
106
67
93
89
91
146
138
128
67
55
110
134
74
126
92
117
98
68
122
105
93
128
77
88
92
129
109
86
144
64
74
115
92
136
111
122
79
110
115
75
126
92
55
56
126
110
105
98
152
110
110
58
37
126
74
140
126
92
105
124
138
86
37
124
122
152
140
92
178
126
105
93
104
75
144
127
122
101
152
55
122
122
105
108
98
86
138
126
55
122
107
146
92
110
160
69
69
75
122
67
122
92
126
117
105
151
105
55
139
136
138
97
178
138
78
93
55
103
67
93
105
122
55
92
152
122
146
112
127
119
86
69
122
84
77
117
119
104
75
132
148
112
120
92
109
67
100
127
74
105
158
118
73
55
144
134
103
104
93
67
128
122
178
128
126
111
110
139
178
79
103
74
110
93
75
130
126
127
58
104
55
144
123
55
79
126
122
120
56
56
37
107
127
67
37
55
86
56
140
111
178
124
110
114
92
122
122
55
69
105
134
167
55
132
93
98
138
55
126
55
132
138
92
93
93
146
140
55
138
92
86
110
105
122
105
134
144
104
92
56
126
55
130
104
79
79
140
110
92
127
110
86
79
100
124
67
110
93
146
144
98
126
109
98
93
103
131
58
97
55
136
105
58
178
74
78
67
67
100
93
171
37
93
69
126
100
37
146
57
92
123
56
105
171
158
110
126
122
37
58
92
119
99
138
112
123
104
55
138
144
94
144
110
105
123
178
148
92
110
123
106
146
139
105
110
122
127
86
91
95
103
130
69
75
126
134
124
69
89
134
86
143
122
180
140
122
110
75
130
93
110
93
105
112
37
122
67
109
108
135
74
97
84
79
104
97
112
92
95
127
37
92
126
127
105
65
132
79
101
135
141
92
160
122
127
56
102
104
171
92
99
110
139
103
112
128
77
132
105
56
131
152
139
128
178
81
77
37
97
67
105
56
69
100
55
138
37
92
55
138
58
92
120
74
107
55
125
178
119
96
69
91
91
86
110
93
110
122
86
137
67
56
158
55
138
122
110
92
69
77
146
93
136
126
138
171
109
178
68
92
74
134
93
126
92
58
140
55
93
103
104
149
138
126
107
148
124
58
163
122
56
79
122
144
117
138
127
67
75
105
118
105
163
91
92
126
67
55
77
110
105
105
104
140
126
87
144
77
138
122
55
122
99
84
148
92
126
86
110
128
126
122
92
74
79
104
122
84
88
92
144
86
75
118
56
91
56
113
171
138
104
128
84
140
55
74
122
162
110
55
92
55
128
158
127
119
56
109
92
79
106
99
103
124
110
55
92
139
138
92
126
92
126
127
109
64
110
92
105
110
110
152
124
122
55
147
131
144
55
69
107
165
122
105
118
37
77
81
55
75
67
100
127
92
110
92
107
134
134
138
163
105
127
86
77
165
178
55
137
56
122
127
77
56
92
122
92
55
123
126
158
99
56
122
109
55
169
77
93
83
86
37
132
138
55
107
87
109
128
93
123
74
55
98
120
105
126
139
101
151
55
79
142
74
178
58
111
101
83
144
55
92
86
163
91
178
128
146
56
128
103
107
56
103
146
130
77
107
69
86
167
122
124
55
139
110
126
134
100
114
98
56
67
144
138
109
128
146
104
67
92
58
127
123
178
79
139
69
127
58
92
129
105
55
92
139
93
92
104
139
93
142
134
74
128
144
93
92
117
102
144
92
92
97
126
146
91
109
134
105
138
119
111
111
120
122
136
165
139
87
124
178
126
56
132
146
107
79
130
83
92
93
122
124
69
67
55
122
122
144
158
106
134
67
126
56
102
86
92
156
171
67
111
139
67
128
58
86
92
127
122
126
138
139
88
55
75
37
55
139
139
171
68
148
111
138
126
91
152
110
55
75
67
152
55
126
120
55
95
136
55
37
144
101
67
130
146
138
180
169
104
109
86
56
119
117
126
91
91
126
179
122
91
131
122
122
69
119
109
103
122
109
120
178
138
139
109
67
140
67
128
105
105
111
105
93
136
79
126
168
104
135
122
134
105
110
67
67
126
178
130
105
126
112
125
55
110
134
78
92
144
128
122
138
127
100
130
138
100
138
93
55
122
109
152
56
121
92
171
105
123
118
56
105
111
106
92
110
119
92
107
131
37
126
67
113
91
105
67
37
126
107
117
148
97
75
69
97
120
100
139
80
104
122
127
69
142
131
76
93
169
105
92
99
126
86
79
55
37
98
122
146
139
97
93
86
97
167
92
67
100
171
67
55
127
56
134
122
103
93
122
144
122
95
69
92
83
105
111
103
86
58
56
92
101
92
67
104
122
92
99
58
122
92
81
105
126
126
98
112
65
92
107
139
104
163
158
105
167
144
69
126
92
126
124
92
56
99
91
126
110
108
134
88
144
160
100
130
93
69
149
178
144
109
124
79
37
97
92
72
122
105
56
110
136
110
164
92
139
110
67
171
122
56
74
122
104
146
55
163
122
92
56
127
105
74
134
122
152
137
118
126
68
123
83
77
55
124
152
164
146
104
110
122
110
163
92
117
92
56
77
78
117
138
139
126
110
86
130
67
103
79
152
126
56
132
162
139
37
93
56
83
55
134
87
153
92
119
55
58
152
93
67
180
67
67
86
72
92
106
111
83
55
67
110
105
67
37
92
178
55
86
91
104
137
158
91
131
169
128
107
37
130
92
122
58
126
110
110
138
92
79
105
119
55
122
105
92
121
109
134
128
110
92
136
110
139
110
134
75
97
107
148
106
138
162
100
122
117
127
122
55
93
99
134
118
109
37
110
119
123
131
91
58
92
55
69
69
55
69
178
67
86
75
37
110
140
67
138
110
104
93
152
106
152
139
168
110
37
58
168
152
104
122
97
91
171
144
75
105
55
110
93
56
168
128
138
152
131
162
112
94
102
86
55
139
92
88
92
58
67
140
103
152
138
168
92
137
114
91
92
128
111
69
132
163
75
58
58
83
136
93
119
150
92
142
114
86
67
75
105
116
67
55
110
167
56
92
92
104
75
138
146
93
91
124
137
105
67
92
74
67
68
158
111
126
55
73
126
86
104
102
122
132
56
91
92
152
55
128
127
122
89
122
137
158
122
146
55
110
128
178
104
111
122
119
126
89
105
126
74
110
83
127
125
140
92
114
126
86
74
110
141
69
58
55
136
148
58
101
68
55
110
55
112
115
151
67
55
122
37
114
127
139
67
127
93
74
55
109
158
92
169
92
100
126
93
148
109
69
93
37
123
138
144
135
77
152
169
117
93
139
125
123
77
55
149
117
122
127
119
128
67
104
152
122
168
124
86
79
37
55
131
178
126
92
127
139
55
109
92
55
84
105
91
69
104
67
140
55
111
122
126
86
58
74
145
129
92
104
127
105
79
56
55
169
67
117
103
92
87
92
64
110
158
91
55
119
107
128
152
169
122
77
109
56
103
163
67
92
55
97
93
55
126
67
128
165
178
124
56
163
92
92
140
138
122
92
109
127
129
107
55
88
105
118
126
119
123
106
112
76
83
104
151
112
130
138
138
99
122
110
67
93
98
108
138
92
92
93
93
125
74
169
56
99
144
55
126
156
83
122
110
64
104
104
122
110
178
127
111
79
138
122
98
105
146
127
114
37
128
79
55
126
55
37
127
86
58
107
137
130
122
113
69
122
37
122
105
69
93
68
110
105
178
110
130
122
101
123
122
111
79
37
144
122
139
92
103
122
92
127
119
122
119
74
37
108
101
104
131
67
105
163
91
144
122
105
109
152
67
146
55
105
58
105
119
137
105
67
79
91
92
105
69
140
144
136
119
123
178
152
105
93
146
126
75
128
105
69
138
114
123
130
92
123
162
67
164
110
115
168
55
79
96
139
67
103
58
91
118
122
188
69
74
138
105
93
83
102
107
105
127
97
69
152
122
122
126
130
114
87
91
122
93
178
93
138
127
152
72
86
138
105
131
109
89
67
84
144
55
136
140
74
137
56
93
55
92
124
109
122
111
77
91
55
67
105
171
107
68
111
104
105
93
177
110
145
138
134
152
110
92
146
56
151
127
92
138
178
110
122
67
83
74
105
93
92
122
109
135
104
58
110
123
111
105
111
124
56
152
109
56
111
122
119
68
123
109
124
105
134
145
37
92
75
119
55
148
105
69
123
101
146
138
111
74
123
144
99
105
152
67
112
110
126
126
56
138
126
108
103
57
140
105
119
92
55
112
77
93
102
180
92
92
55
126
110
146
162
101
136
129
136
178
92
121
69
68
127
152
89
37
93
126
122
92
74
136
138
152
92
94
91
105
98
127
144
132
107
56
91
126
93
151
163
178
107
56
79
126
139
122
139
67
102
79
152
105
136
178
126
146
152
152
146
110
56
145
110
83
105
110
104
67
77
150
144
110
84
104
37
120
126
91
69
99
104
84
91
123
110
110
123
146
118
102
100
79
149
146
162
163
93
126
122
146
58
135
103
126
93
126
152
72
74
75
122
128
92
103
120
104
163
152
37
139
92
122
105
37
94
135
105
102
91
55
139
56
144
135
99
134
111
99
119
69
139
138
180
92
95
123
135
92
130
76
178
120
91
105
132
109
105
104
68
69
114
178
37
83
148
111
120
55
122
128
37
178
79
138
146
56
80
138
148
131
160
146
69
132
77
168
137
169
64
111
178
151
110
102
94
114
105
93
122
158
122
92
148
111
178
140
67
124
97
105
69
139
68
139
83
105
138
117
126
138
100
126
137
67
126
55
134
119
140
69
142
101
152
55
122
99
55
104
55
105
108
105
128
105
152
126
92
109
109
56
124
83
107
101
55
109
140
56
152
92
68
158
69
55
108
86
128
105
103
94
86
92
110
79
92
138
114
120
92
89
92
122
101
127
146
123
164
122
139
56
55
144
110
130
139
99
77
92
122
110
56
55
93
92
122
132
139
92
104
131
61
139
91
81
109
69
107
158
110
74
92
105
126
109
130
140
146
81
127
56
55
114
144
145
92
105
58
152
138
131
100
148
131
55
109
126
178
126
140
69
79
140
99
142
86
138
130
58
188
134
140
106
93
137
138
37
93
111
114
37
110
93
67
122
72
180
126
122
123
77
93
56
128
138
140
55
163
118
56
92
92
55
37
92
68
56
107
67
124
138
55
55
110
110
126
111
69
88
128
136
92
86
126
178
56
105
119
128
144
109
119
146
148
138
160
92
130
169
104
132
126
115
178
146
128
79
94
106
105
107
77
110
55
104
110
102
167
111
111
68
109
119
118
102
55
126
144
37
93
138
67
93
55
58
92
56
138
83
93
110
126
178
109
56
69
55
56
130
97
105
83
55
86
56
168
55
93
82
75
134
110
56
138
67
134
105
56
91
98
144
110
101
126
91
95
123
58
108
126
94
144
152
93
138
93
117
131
37
37
56
86
55
127
169
103
123
103
126
138
122
104
77
92
105
126
178
152
75
58
150
152
132
58
109
149
100
137
56
55
104
56
97
126
127
111
92
56
162
58
55
105
97
152
127
92
55
77
111
92
122
169
142
107
69
37
119
140
171
99
79
93
144
146
122
105
122
55
126
105
105
144
56
102
126
110
119
55
92
55
138
91
69
152
67
105
89
55
136
146
178
92
138
110
120
114
178
55
122
138
104
138
83
58
55
139
77
69
55
110
69
75
123
91
110
109
146
105
138
69
163
104
67
122
128
86
118
178
92
97
111
100
92
67
127
139
127
117
103
105
107
152
37
89
169
99
56
91
92
101
84
79
107
144
56
158
92
110
67
111
127
109
92
136
37
92
79
104
140
152
123
123
72
91
123
82
55
105
67
69
55
114
55
113
91
58
122
74
128
138
79
160
104
75
111
124
197
169
55
55
89
110
83
162
92
92
110
58
129
79
96
92
169
55
122
111
79
123
87
67
138
104
67
58
99
140
178
145
134
92
105
118
93
105
79
58
123
92
104
102
93
126
122
144
111
178
92
77
104
56
105
37
92
105
55
122
92
111
144
112
92
178
67
69
67
55
67
75
92
132
138
125
55
92
128
91
126
58
110
146
105
119
115
134
146
119
182
126
169
122
105
104
144
139
122
84
58
138
56
122
152
94
55
169
111
137
164
105
77
151
145
75
75
92
93
122
92
92
55
123
56
138
93
128
95
110
111
110
127
168
37
152
92
137
92
92
109
55
92
103
77
134
115
92
126
92
74
100
74
105
75
152
148
110
110
105
116
180
67
126
131
178
69
55
169
122
67
125
69
110
104
126
144
105
91
105
110
120
91
110
138
111
122
74
37
132
123
55
111
126
160
95
55
92
56
105
98
146
144
104
144
110
105
37
109
105
75
126
144
105
131
67
83
67
55
110
122
126
37
104
67
171
91
119
58
110
110
92
55
105
139
127
77
178
93
144
37
140
146
178
67
124
136
74
140
105
56
105
106
58
93
69
127
105
122
91
109
96
103
115
92
169
92
105
138
128
144
110
105
110
67
127
101
111
109
87
132
178
135
77
122
140
138
74
134
105
86
138
105
56
55
126
93
97
139
120
131
127
118
126
69
126
105
92
79
122
125
55
67
97
106
138
128
148
111
56
109
84
67
110
120
107
67
78
55
178
131
103
74
128
126
110
104
92
103
68
122
112
126
91
92
99
126
77
97
164
67
111
122
92
128
124
55
163
169
129
122
134
119
138
111
75
134
178
138
119
139
100
107
140
110
91
92
69
110
127
124
92
92
110
75
55
136
109
111
72
55
104
103
104
122
127
79
55
144
107
117
126
111
126
138
89
77
126
79
92
138
126
104
79
69
146
92
104
56
109
92
105
58
105
171
55
160
152
93
93
68
127
105
146
83
139
148
120
67
123
126
92
112
75
87
55
86
139
92
74
89
160
105
79
92
127
138
158
55
104
145
132
169
86
92
55
132
109
107
144
104
79
97
136
55
126
37
99
101
55
122
107
99
56
120
37
105
163
67
37
126
117
97
55
79
93
126
92
104
178
67
122
92
110
92
37
144
110
152
122
67
92
138
55
119
56
92
93
111
67
75
111
126
142
104
93
91
92
69
117
126
199
101
97
92
110
136
111
126
107
128
126
138
122
138
139
130
105
56
104
58
68
92
114
152
110
126
110
104
117
122
182
122
152
101
92
169
91
112
122
69
128
105
145
127
105
139
178
98
105
145
104
110
103
86
79
178
111
103
101
120
146
67
93
110
109
128
103
144
109
169
119
126
130
58
37
75
126
122
122
56
74
134
122
127
56
91
126
56
110
105
55
178
69
103
144
108
126
79
92
58
92
167
89
86
78
114
138
152
92
84
119
111
131
120
87
104
139
75
128
55
163
75
110
144
130
55
111
124
102
114
74
178
134
147
86
105
123
122
180
55
122
105
103
67
144
178
119
79
94
94
74
134
123
111
77
94
146
107
55
69
55
105
105
112
92
140
55
67
107
105
147
92
146
128
105
134
105
79
104
122
110
99
55
101
81
146
91
86
104
110
76
92
138
56
127
138
138
111
101
122
99
138
156
136
93
106
93
78
142
104
139
178
79
126
83
138
105
92
162
67
122
127
55
93
138
128
93
146
123
92
115
141
126
104
92
92
102
122
181
115
105
87
56
55
110
56
55
139
146
92
110
119
92
110
144
55
93
86
146
122
84
104
119
58
86
93
55
122
76
105
123
92
93
55
127
122
178
127
144
126
92
124
55
122
128
144
110
105
138
126
107
178
163
55
111
126
122
110
178
119
112
178
79
117
79
144
101
74
104
197
55
136
128
127
165
92
99
83
168
125
109
124
105
58
77
37
37
37
112
178
105
108
119
178
110
171
58
127
78
160
105
169
152
89
91
171
89
55
148
92
122
56
122
104
74
55
145
122
140
158
37
127
146
178
110
122
125
131
37
55
92
122
126
55
107
139
91
37
117
126
37
55
123
138
128
164
108
105
92
122
128
122
167
110
93
141
93
56
139
92
79
109
69
123
95
123
126
55
127
93
91
123
110
69
93
122
105
119
189
110
119
127
125
98
131
146
107
152
89
119
55
144
67
127
114
120
69
122
128
119
138
137
127
104
98
56
77
138
56
88
92
122
160
79
107
122
146
93
150
92
95
114
169
126
37
138
69
93
55
98
81
178
98
105
171
106
114
178
146
58
79
146
152
107
69
111
122
110
73
113
68
125
55
110
81
140
37
56
110
99
91
122
178
138
169
69
98
169
91
144
92
91
138
110
138
88
110
92
93
134
92
120
109
55
92
126
56
55
79
102
122
126
104
145
179
127
119
126
41
55
55
117
77
128
145
146
128
152
144
109
110
131
99
119
93
135
126
86
107
122
138
37
55
92
178
122
138
79
128
168
74
141
146
37
92
92
100
128
139
58
109
108
132
93
83
106
92
86
55
131
148
110
98
178
85
105
178
91
92
128
162
126
105
110
126
92
139
75
55
138
122
97
146
162
55
146
138
126
105
93
110
106
129
123
108
138
138
152
169
126
162
58
136
135
117
109
163
144
105
81
124
69
110
105
126
140
110
127
178
37
93
169
178
85
93
178
100
104
92
109
93
126
69
114
123
144
126
55
92
123
107
56
141
74
80
128
56
146
37
89
79
146
104
55
104
105
127
110
106
138
104
67
104
138
77
92
119
99
86
67
56
58
109
67
94
124
92
128
99
55
124
74
105
178
144
126
102
55
120
114
100
168
127
119
122
68
92
105
105
130
97
104
104
138
178
147
67
95
105
93
92
75
169
152
55
67
69
122
79
111
127
114
111
127
103
138
128
144
91
98
180
108
106
140
108
97
92
136
110
126
101
55
139
103
55
178
56
55
55
86
126
77
93
55
110
84
74
55
107
93
126
55
105
140
178
138
75
58
109
95
128
92
104
67
145
139
56
75
94
110
104
95
56
101
105
178
103
92
122
126
67
58
126
108
98
138
61
106
138
144
137
144
74
92
67
105
119
139
110
92
105
79
112
109
168
149
138
152
105
68
115
124
104
141
97
93
91
58
110
178
69
83
55
37
37
110
55
122
105
134
92
58
124
158
79
80
93
158
104
92
92
111
144
130
78
178
131
75
126
111
93
128
37
165
126
138
122
75
86
159
88
77
123
101
117
56
178
105
55
55
110
108
105
84
93
129
120
139
144
152
126
132
92
144
169
126
117
58
104
138
126
148
122
110
138
56
56
119
138
171
93
110
102
111
105
68
56
56
105
123
171
123
122
178
67
79
119
114
152
79
110
122
138
107
81
130
139
126
125
67
110
123
91
91
180
178
58
119
137
98
67
110
171
67
103
148
126
105
122
143
110
97
124
37
55
162
102
105
111
146
139
55
119
134
167
122
104
144
138
113
103
178
138
168
56
122
89
92
111
122
67
55
74
110
56
126
144
104
110
55
92
91
105
112
178
89
138
158
138
81
136
110
169
109
69
56
110
95
126
130
92
69
171
92
139
72
58
126
92
94
97
112
168
104
67
130
122
92
83
123
67
146
104
74
89
78
122
171
122
129
94
99
79
79
105
122
171
97
126
55
105
152
89
55
102
111
92
152
69
72
138
37
93
79
110
74
111
106
92
131
156
122
69
75
126
112
92
138
93
144
67
37
122
114
58
130
93
105
126
93
105
93
152
93
128
92
131
105
110
152
75
91
108
110
67
158
114
65
55
168
123
126
55
78
138
127
138
122
158
144
79
97
127
37
139
74
138
122
69
127
138
93
101
122
56
178
92
93
55
117
122
105
109
146
140
140
86
55
96
106
86
165
178
126
67
107
92
104
104
88
104
37
122
116
56
126
55
75
61
126
105
55
160
122
152
92
94
111
93
146
111
92
84
92
103
139
37
110
67
104
138
134
119
138
101
99
105
67
107
154
178
109
128
122
178
55
83
92
104
124
58
122
111
148
75
77
105
55
128
138
92
108
103
127
123
79
126
103
178
84
92
67
92
134
68
152
139
91
69
55
91
92
84
58
55
152
103
139
98
58
75
101
111
75
65
93
112
152
164
75
131
67
126
69
139
126
131
165
91
122
37
110
104
67
92
105
77
138
144
123
119
75
55
104
122
169
110
55
93
126
109
58
126
92
179
123
124
55
146
121
88
123
110
138
105
146
119
55
109
105
126
132
138
127
139
126
83
146
106
102
55
55
169
86
68
92
168
109
81
122
58
58
65
127
145
105
55
138
134
92
104
138
56
110
86
127
83
138
118
69
138
80
94
177
89
104
123
144
105
138
178
171
77
55
160
92
85
55
103
121
56
55
107
122
55
84
86
107
75
119
99
91
122
152
126
37
114
110
93
97
127
83
105
122
58
138
122
178
92
75
91
92
124
110
146
167
74
97
147
92
56
136
146
103
84
146
37
55
126
105
103
129
67
178
86
55
138
92
138
110
122
144
75
91
178
150
58
107
92
92
118
138
128
55
110
92
113
146
105
69
58
99
122
111
37
126
56
132
144
105
122
101
126
103
79
129
144
105
55
55
122
67
126
126
67
126
110
74
105
104
72
104
99
92
89
92
74
67
112
103
56
109
139
55
74
75
122
108
138
105
56
163
128
55
58
122
68
92
109
83
139
55
91
138
123
93
130
119
122
67
122
122
84
124
57
91
92
122
56
84
92
119
123
79
126
146
126
111
110
92
92
92
127
118
122
118
111
163
110
103
37
169
67
158
93
91
93
126
92
119
123
92
92
134
146
67
169
144
56
122
129
126
78
168
178
56
126
122
67
92
55
128
140
92
67
146
130
74
122
127
69
105
67
146
105
110
178
92
102
55
79
122
126
79
126
139
146
84
111
93
75
106
91
105
122
86
109
104
139
128
144
136
103
162
105
79
122
107
127
58
55
158
119
92
105
92
93
64
138
138
93
138
110
148
105
126
77
139
69
92
138
56
56
104
93
86
107
56
92
140
126
93
92
178
92
114
91
111
110
67
92
128
55
126
122
140
156
152
122
108
128
55
109
103
122
107
137
139
122
105
126
169
67
122
110
106
58
163
152
139
83
97
107
117
139
58
56
122
122
104
136
108
91
135
56
116
91
148
107
107
86
75
188
56
92
122
92
99
97
126
178
139
37
139
104
92
137
103
107
75
80
97
140
137
69
105
111
99
152
144
122
134
91
88
122
95
105
99
68
111
111
77
126
122
124
55
92
134
67
92
56
138
124
134
67
128
37
72
37
55
107
109
111
37
55
75
67
148
122
178
179
123
109
92
92
118
119
119
95
92
55
110
92
83
93
120
92
58
122
101
144
56
130
123
139
72
67
134
111
139
110
58
110
55
111
92
77
104
178
92
122
56
74
123
118
93
144
86
110
74
104
37
91
139
93
126
124
55
104
103
55
138
148
117
128
138
91
95
126
124
37
93
122
58
122
122
105
119
122
92
55
104
110
110
126
55
84
146
69
104
77
130
124
158
78
92
58
88
126
92
120
105
86
91
110
134
126
37
57
92
132
78
104
55
163
92
92
144
168
55
122
137
92
93
132
92
92
102
109
126
93
123
55
105
139
134
130
75
131
122
103
134
93
122
104
122
128
122
134
117
126
126
100
114
126
138
123
139
139
105
139
122
144
92
58
69
180
152
110
109
111
67
55
86
92
130
144
126
93
145
122
145
94
95
105
134
104
126
79
137
69
144
121
93
126
138
67
101
128
178
91
135
139
109
160
92
58
168
140
55
69
138
58
122
127
123
92
104
99
164
98
107
131
105
92
105
169
100
92
156
93
109
79
110
77
56
112
86
130
58
126
55
122
152
137
99
139
56
75
55
110
92
124
67
110
73
128
84
110
83
110
138
119
67
92
58
104
182
101
99
58
126
140
105
58
90
37
124
110
106
92
74
92
37
58
122
105
126
58
144
102
146
126
99
58
124
134
122
128
109
93
122
103
86
117
67
109
93
104
128
93
79
126
107
92
109
123
134
106
148
165
80
138
139
105
146
139
119
114
93
119
130
114
67
104
77
111
111
136
110
104
144
138
114
86
123
55
126
92
107
122
107
114
87
103
134
67
91
124
126
67
97
117
127
118
104
135
92
100
160
178
105
92
93
58
68
136
139
139
110
110
99
95
108
126
127
74
97
138
110
58
67
67
55
92
169
169
74
104
110
110
125
109
146
104
119
104
56
97
137
105
78
105
105
92
99
88
96
110
137
79
118
93
178
92
160
91
92
140
55
69
79
146
105
146
163
138
37
55
105
163
127
102
110
92
79
100
110
104
109
58
158
126
138
127
178
107
129
105
86
119
55
127
127
74
126
92
126
144
138
55
138
146
138
138
138
37
101
139
152
138
55
107
113
55
126
168
92
105
134
138
92
118
140
92
123
144
110
169
55
86
141
122
144
130
105
146
104
138
119
123
83
92
92
104
58
140
152
123
104
139
141
140
164
99
138
138
178
110
87
139
105
110
164
79
92
164
178
55
55
105
158
92
69
137
163
110
74
178
136
92
57
79
55
105
107
112
110
55
148
128
110
88
148
119
115
37
141
108
138
122
146
127
93
105
104
105
58
92
105
148
128
92
127
92
158
105
124
104
92
92
169
56
117
122
108
126
67
109
110
126
148
138
68
59
55
92
126
168
69
105
104
134
37
109
113
58
123
86
128
99
79
121
93
105
77
171
92
104
69
105
103
119
97
142
178
138
146
69
110
91
147
137
69
98
74
104
55
130
145
126
101
117
126
58
127
75
123
178
127
64
92
123
126
105
105
92
134
138
139
146
73
152
37
147
58
74
55
165
182
55
119
105
104
105
125
92
84
112
140
103
58
107
99
124
86
111
152
126
123
178
105
92
110
55
105
104
122
118
92
140
101
122
140
124
146
94
67
101
92
162
163
126
37
152
97
136
127
104
104
146
126
103
68
118
103
67
140
68
37
86
162
139
55
122
132
178
134
128
110
93
83
122
126
55
58
105
88
83
56
69
93
58
120
119
79
92
105
128
92
92
83
92
111
128
110
110
131
88
127
104
123
122
119
91
104
146
88
84
123
99
92
37
74
138
126
37
56
69
67
178
146
122
138
92
138
136
148
96
99
171
151
92
178
178
168
110
128
134
58
128
111
124
91
86
75
126
141
117
67
67
105
139
92
74
86
68
92
103
144
79
55
86
139
109
110
126
86
137
37
105
188
138
122
108
127
126
58
74
122
105
128
100
93
105
103
55
67
122
163
56
138
69
114
67
127
67
122
123
110
115
58
100
109
37
79
152
122
88
86
107
92
55
122
92
110
107
138
110
122
91
126
146
122
139
122
92
139
74
104
67
146
180
146
127
98
92
122
128
77
140
56
138
107
149
92
126
162
110
144
101
130
55
92
105
110
152
58
105
67
178
105
122
104
127
178
144
67
102
103
148
91
126
169
67
127
104
126
111
68
138
122
93
121
146
122
67
127
105
108
127
110
55
144
86
75
138
58
126
83
140
88
86
126
55
105
55
146
79
93
123
105
128
91
103
69
92
58
178
122
74
105
74
69
118
138
56
58
138
74
69
37
92
75
110
86
83
128
129
146
109
126
105
92
86
140
92
77
105
134
93
88
134
132
180
104
146
127
86
94
103
83
162
124
67
92
105
74
55
178
144
113
100
137
83
79
105
105
151
142
104
169
69
168
105
86
127
104
104
135
105
126
104
121
83
112
105
37
138
58
152
105
144
158
86
55
130
146
128
178
146
92
119
55
92
144
138
79
168
92
144
91
107
58
112
143
37
107
88
105
126
114
119
134
112
105
144
37
140
152
127
134
112
67
138
83
67
131
146
118
104
79
144
107
123
189
110
75
138
55
138
151
89
92
109
122
169
55
110
75
137
146
110
93
103
139
104
164
93
122
105
37
126
134
109
122
67
127
137
103
124
123
119
108
110
122
111
117
141
55
101
109
171
37
137
89
146
55
162
98
178
105
126
126
123
158
110
55
55
101
128
92
93
37
92
122
91
199
92
134
115
119
182
102
123
126
119
130
99
88
138
104
92
122
99
148
124
168
138
120
110
74
105
99
37
110
103
124
138
56
105
128
110
178
67
92
181
56
127
102
122
67
117
123
99
137
152
126
55
74
123
83
92
112
127
160
93
165
127
66
122
58
58
136
84
122
148
168
169
77
134
83
58
149
105
37
158
144
146
55
55
178
152
78
122
37
123
105
89
139
178
93
100
67
138
98
93
95
117
134
139
116
126
58
89
105
103
55
122
58
105
68
110
125
164
165
123
109
67
74
56
67
99
69
86
86
140
122
152
145
100
122
81
188
67
80
130
88
92
77
67
55
144
86
93
37
160
56
122
55
55
130
128
92
92
139
93
110
125
92
79
104
69
168
55
55
121
127
100
58
110
152
55
58
67
119
99
110
105
92
122
74
131
110
88
169
55
96
109
69
162
139
140
99
104
105
122
97
122
109
97
127
110
58
56
92
151
111
69
110
138
86
131
93
92
55
114
67
178
55
93
138
92
86
111
105
86
128
109
122
105
99
158
122
146
88
138
169
139
126
105
83
111
79
86
139
122
111
178
74
138
110
131
104
141
105
104
56
144
92
92
144
92
168
79
146
86
122
67
122
105
69
105
119
105
105
134
56
139
102
111
55
128
55
93
93
103
144
124
92
128
144
93
95
105
58
69
83
100
105
169
123
67
126
89
118
169
124
99
144
123
98
132
119
58
69
58
74
122
86
132
124
178
101
37
97
110
91
97
91
77
92
110
92
91
93
127
92
37
124
92
119
169
140
136
139
152
138
105
97
169
131
138
110
143
127
113
93
119
122
56
103
124
110
108
55
79
99
111
105
110
55
75
37
109
86
92
110
93
122
68
164
56
138
123
92
56
105
109
92
69
92
152
55
69
126
126
37
68
104
86
104
55
87
125
129
178
146
69
111
112
105
128
79
91
103
79
103
67
122
110
110
99
112
58
55
145
138
69
138
79
122
103
92
55
128
92
128
178
126
103
79
148
127
56
37
56
169
122
92
80
146
120
146
119
55
178
107
92
105
110
67
92
107
126
138
162
146
56
135
74
55
107
55
86
169
37
139
146
132
67
130
140
122
84
91
169
55
75
104
93
92
84
163
86
105
89
138
122
104
139
178
111
138
97
56
58
144
103
152
103
132
178
86
67
55
103
136
92
152
109
97
171
67
37
104
106
104
89
178
56
105
55
92
67
58
67
124
92
119
145
122
138
122
123
55
110
111
92
105
92
109
55
73
92
67
92
67
55
91
139
92
55
169
58
110
91
92
123
92
56
55
138
92
126
81
55
88
119
126
101
178
92
138
58
102
134
180
55
141
182
110
122
92
144
111
164
56
101
78
79
55
126
123
140
79
114
84
105
109
105
104
152
67
86
92
55
138
92
110
92
134
140
128
138
74
168
92
124
55
122
119
58
130
92
55
97
55
152
91
105
105
146
144
92
163
58
55
152
37
92
171
114
132
139
163
37
56
122
92
97
79
105
69
104
79
92
138
137
58
178
120
93
152
144
83
110
56
169
130
69
145
132
91
138
58
91
144
93
84
178
92
122
69
126
105
67
97
144
105
100
110
67
110
189
105
109
56
55
115
127
109
55
138
77
67
109
138
140
140
124
109
86
67
79
91
127
92
74
110
78
105
79
138
139
92
55
69
92
107
110
55
106
124
119
105
122
140
128
146
74
104
128
141
121
74
92
56
138
160
109
86
55
110
139
105
69
58
123
92
138
92
123
55
105
127
131
93
120
37
138
88
92
55
55
75
119
123
107
138
94
103
139
137
136
79
93
123
69
92
91
126
55
126
146
128
92
110
69
37
148
69
92
92
67
91
71
37
92
84
68
97
55
107
56
146
144
116
103
91
109
123
152
103
180
122
58
55
110
124
103
169
139
92
165
126
128
92
144
105
114
55
122
92
126
67
37
152
152
122
67
138
99
139
145
58
107
118
110
122
58
119
103
74
77
139
55
105
74
100
119
73
109
119
92
128
92
125
93
67
56
128
128
119
138
123
109
91
55
122
81
169
111
86
132
104
178
111
91
140
134
99
92
180
103
72
95
118
79
140
119
92
168
56
123
92
97
74
56
152
37
163
134
138
86
86
110
158
83
92
92
110
140
139
115
123
171
110
95
37
91
139
134
92
104
130
68
122
58
122
58
55
141
169
138
92
67
178
122
69
144
126
91
104
128
99
56
83
127
119
92
55
105
161
152
92
139
94
69
58
130
76
124
134
56
56
124
92
139
128
55
55
107
67
104
58
119
171
86
55
37
68
148
122
55
146
138
123
182
178
58
104
105
58
94
119
112
144
124
152
77
67
92
98
92
169
137
126
56
123
101
178
127
69
148
110
178
171
104
126
138
126
146
67
37
92
140
137
55
75
91
119
120
92
89
139
119
144
79
110
55
106
55
122
37
110
69
105
95
96
152
105
103
171
109
105
92
86
92
122
74
37
58
93
68
77
144
138
67
83
74
104
114
168
138
111
136
138
77
127
55
123
105
92
138
92
178
123
93
122
55
178
146
97
69
123
92
144
91
131
75
169
100
127
148
165
86
162
111
91
152
68
58
119
127
104
110
84
56
58
93
126
72
89
144
93
67
86
138
114
142
126
75
55
56
55
147
92
138
83
84
122
103
92
69
122
105
128
152
112
128
91
92
93
115
56
111
126
152
178
122
102
105
126
158
105
127
69
113
92
138
105
96
152
126
128
37
99
69
111
92
56
100
110
110
138
107
108
138
101
178
91
130
55
144
132
130
110
139
67
69
105
136
107
77
127
124
146
132
112
92
126
92
69
163
110
110
113
91
148
122
102
69
93
79
55
117
109
123
107
93
138
92
98
148
105
104
55
86
107
128
132
86
55
122
73
113
105
127
122
138
92
138
126
107
123
105
146
37
104
58
152
110
67
138
111
128
146
98
58
69
134
55
67
111
114
56
139
92
110
103
119
110
109
99
119
79
110
127
126
146
107
67
140
91
86
109
123
88
105
68
93
75
104
139
78
140
126
99
100
92
128
84
110
138
169
92
141
130
56
67
189
104
122
93
92
139
139
122
145
93
92
158
93
105
169
101
93
123
106
122
110
56
126
132
126
108
92
91
122
114
92
67
105
92
126
99
160
123
92
109
171
104
105
119
107
110
69
110
137
139
178
127
92
110
104
89
127
122
79
134
107
110
138
56
127
138
115
126
152
86
134
96
81
110
92
122
92
37
95
146
129
67
127
171
127
99
73
55
91
57
75
146
79
55
127
110
55
165
92
92
67
110
105
95
58
104
104
69
92
58
110
127
114
99
120
105
149
93
81
75
128
91
99
126
64
126
104
92
171
103
102
132
138
110
91
118
92
86
140
124
56
122
106
92
130
108
105
79
146
129
145
86
106
158
127
126
139
79
104
86
103
74
112
56
77
141
139
37
165
91
119
104
56
58
130
93
163
58
110
109
144
93
92
77
86
78
122
122
58
110
102
165
58
105
91
132
92
126
135
37
55
138
178
134
104
104
58
55
151
127
110
74
178
79
123
55
67
138
122
92
169
122
126
122
122
146
178
58
120
105
131
92
101
92
169
139
121
92
162
123
140
103
112
67
95
126
110
104
92
134
165
37
126
79
178
83
67
108
123
104
69
55
67
138
67
135
178
107
138
55
86
178
139
92
95
158
178
81
127
131
123
67
144
55
56
110
122
126
74
101
55
134
104
99
138
91
58
67
92
126
93
132
69
105
169
102
55
111
74
56
139
97
113
152
93
104
55
86
91
37
128
105
148
93
122
178
92
148
58
99
58
104
126
146
140
104
103
146
122
55
119
68
122
69
107
55
124
98
132
138
127
178
67
138
69
111
103
139
99
138
93
81
99
139
55
55
148
56
139
86
126
105
135
86
152
107
122
124
122
122
110
110
122
68
146
55
69
140
126
146
104
55
135
139
138
178
146
89
144
75
127
55
92
58
122
55
92
105
104
104
126
122
55
130
105
122
55
56
93
110
131
123
126
91
169
58
68
178
110
58
55
117
178
163
126
178
139
105
138
144
69
55
106
55
115
93
93
92
105
122
104
104
127
119
122
122
139
92
93
126
104
69
127
128
55
79
79
79
119
97
67
178
137
117
109
92
143
126
92
105
77
93
119
83
101
117
120
122
55
92
122
128
105
92
106
103
139
99
127
126
69
101
105
121
67
56
119
103
56
55
67
79
140
122
136
37
58
86
91
104
92
151
37
56
146
92
93
136
92
126
69
110
107
55
119
69
152
110
131
112
123
122
146
178
138
122
67
127
119
92
152
134
126
109
126
104
93
55
92
83
67
37
55
67
138
92
56
105
55
79
128
56
109
93
140
92
89
126
77
122
105
140
104
77
117
99
67
56
86
92
110
152
92
92
122
74
58
114
169
136
69
152
93
99
77
89
112
79
110
105
122
93
130
92
92
69
122
100
110
74
37
127
58
145
105
110
74
55
97
127
110
139
93
91
110
68
122
152
55
139
37
112
144
91
128
145
130
139
92
132
67
146
69
104
111
105
199
109
69
149
122
110
110
92
84
188
178
109
69
138
126
130
58
131
112
119
93
67
127
178
119
110
75
107
98
83
123
139
104
132
110
168
105
113
119
134
78
110
180
123
107
104
86
92
158
88
126
119
100
178
111
104
152
81
86
144
106
86
110
129
79
105
37
178
126
111
79
130
55
93
110
118
55
139
75
122
92
92
68
92
55
105
114
81
107
130
55
56
107
148
127
92
115
77
126
104
130
110
122
122
126
56
61
124
104
104
105
93
92
178
97
55
99
110
122
123
109
97
103
127
37
105
92
138
55
58
180
171
178
122
80
56
140
126
152
139
178
105
152
75
105
140
102
152
93
74
122
86
178
94
55
158
110
94
55
127
126
139
55
178
79
101
55
55
134
122
114
122
97
126
74
140
67
93
103
112
93
93
105
146
127
93
37
108
169
92
126
55
118
69
67
105
75
120
55
92
178
136
92
122
99
110
92
144
178
144
69
110
37
126
103
92
103
93
93
148
75
109
130
92
144
105
106
75
104
124
110
117
55
105
55
126
110
104
119
111
93
58
171
77
37
91
95
79
138
144
126
144
178
107
93
69
180
92
80
97
138
107
126
74
123
144
88
131
86
162
139
140
55
92
56
125
126
93
144
132
138
178
131
144
139
74
110
98
86
56
92
110
122
138
105
146
138
131
132
86
178
83
55
168
109
104
77
105
75
106
88
122
122
83
138
131
105
68
92
97
92
149
99
88
105
92
83
141
123
55
119
108
146
105
138
122
101
37
56
110
86
86
55
145
110
55
128
56
127
92
81
139
93
178
152
106
163
56
67
92
177
138
158
86
105
126
80
144
92
126
138
139
55
118
111
123
92
56
109
199
152
37
128
92
69
105
105
103
137
93
69
105
138
138
92
55
92
140
122
138
79
144
86
131
130
162
37
92
103
97
122
136
55
108
99
88
110
109
169
55
137
105
169
92
100
127
83
107
55
131
126
92
69
112
110
93
55
123
105
146
127
108
146
110
79
144
78
69
156
74
148
122
138
114
88
138
136
139
74
111
92
114
93
91
92
95
92
178
119
92
93
127
138
132
75
124
92
96
99
138
92
119
105
105
135
91
108
126
144
55
58
93
58
178
77
67
37
99
158
97
136
92
118
126
110
122
127
77
69
140
122
99
58
67
37
130
69
146
104
88
126
130
67
93
115
95
86
107
122
101
37
126
56
55
93
111
111
136
95
123
132
119
91
138
75
126
92
145
67
138
123
178
144
182
144
86
126
92
74
122
146
112
169
104
104
87
99
102
103
67
93
164
110
119
169
80
126
119
147
110
115
126
92
135
92
178
79
101
68
126
136
107
56
138
37
86
144
110
56
92
139
58
122
126
78
105
119
78
55
92
138
105
92
55
178
92
131
128
100
160
91
138
118
122
109
138
55
110
79
105
126
93
99
87
91
67
112
91
131
86
55
67
103
139
139
55
92
122
146
119
119
126
55
148
134
69
130
139
105
37
127
104
69
134
67
55
104
122
67
79
119
111
106
110
144
77
37
105
104
124
75
99
93
55
146
68
171
129
67
93
79
84
92
137
100
127
104
126
67
136
122
124
122
104
77
151
92
107
123
138
110
110
79
105
110
58
55
180
171
104
86
79
119
79
93
80
111
152
124
138
152
111
55
69
111
145
122
127
130
115
105
110
84
128
79
91
115
94
58
122
93
55
145
99
104
102
169
122
56
100
178
122
114
144
37
110
122
97
67
111
128
75
132
67
79
55
127
91
137
93
86
126
178
148
111
99
122
110
92
67
147
122
110
140
127
67
87
107
61
67
131
80
95
122
67
92
55
180
93
91
55
55
55
56
122
131
67
126
131
110
69
123
180
120
92
67
92
115
99
104
37
128
92
105
119
142
123
130
55
122
91
122
152
92
75
146
127
162
58
147
79
75
122
110
104
102
77
92
122
92
119
146
93
69
105
111
67
67
134
146
92
37
55
126
178
55
94
148
139
37
58
37
128
169
138
92
122
56
67
93
104
122
55
56
120
98
92
138
91
58
105
138
152
67
92
104
110
132
138
122
56
117
125
105
103
92
104
139
79
180
55
110
79
97
139
104
55
105
98
137
138
105
126
92
144
67
131
105
102
95
67
92
126
109
97
122
144
105
68
124
55
178
112
118
77
122
86
138
124
55
99
144
104
105
138
67
152
107
92
75
105
91
105
55
93
119
126
118
111
152
56
80
105
117
139
79
92
131
78
110
124
79
105
92
58
119
139
131
107
91
105
105
56
128
107
55
126
113
129
92
55
92
105
67
123
152
75
114
105
122
92
178
110
120
122
140
152
84
112
105
122
86
87
152
105
169
99
56
138
56
77
92
79
178
75
152
122
144
121
128
58
144
55
99
92
100
104
138
140
119
112
93
91
92
140
103
122
105
69
67
117
140
105
128
105
104
55
178
131
56
152
127
105
100
105
83
109
115
93
126
129
110
178
126
110
126
91
72
55
180
92
74
92
108
98
84
55
92
108
178
97
104
67
92
128
162
100
152
122
169
152
56
119
152
105
69
101
134
119
99
144
152
138
92
55
102
142
104
92
138
150
146
55
167
105
111
67
178
110
113
169
127
138
138
105
55
178
140
126
105
130
171
128
69
110
93
81
58
134
55
92
108
92
138
165
126
158
97
122
83
100
122
115
69
158
131
55
182
144
91
55
92
152
144
139
58
100
105
67
119
134
37
123
37
80
122
58
140
138
55
72
95
74
116
58
169
104
83
55
110
79
101
146
79
87
92
122
109
114
178
55
110
55
93
132
144
152
146
56
105
122
110
101
144
55
117
139
110
147
92
139
110
55
110
124
101
114
92
126
92
105
110
55
80
142
74
87
55
37
91
98
138
95
97
67
139
134
92
152
119
109
103
79
152
135
56
105
126
178
129
119
55
37
92
118
98
124
115
91
110
136
105
103
92
126
93
122
122
136
55
163
110
55
109
55
58
104
125
127
111
167
105
126
112
144
127
178
86
138
56
58
124
55
137
171
118
37
138
77
103
92
171
123
67
99
56
110
56
93
99
118
105
105
162
104
146
165
126
124
138
115
152
106
171
122
55
75
112
126
92
37
92
75
117
171
126
37
104
86
83
104
124
178
92
132
130
67
92
122
92
76
74
68
103
92
144
55
132
110
55
110
168
146
146
105
93
148
148
122
77
73
124
67
132
87
37
110
86
75
115
110
128
131
122
115
77
110
126
68
104
91
144
178
93
37
79
104
131
67
97
122
56
105
105
111
67
92
93
122
126
92
104
117
146
127
99
86
56
92
139
55
122
110
110
55
122
102
91
92
69
92
131
126
136
144
122
134
56
55
122
140
171
55
127
74
92
128
148
169
97
69
92
110
88
58
146
55
152
37
122
37
123
77
134
110
69
55
138
104
91
178
106
156
152
98
137
37
55
55
124
122
152
102
109
67
127
79
92
101
126
92
152
88
171
128
93
74
93
146
104
169
105
138
56
104
158
126
56
130
92
140
92
140
92
146
92
67
146
138
99
109
56
114
110
79
135
108
92
119
95
110
92
92
92
110
92
92
58
84
164
37
152
122
69
139
108
126
113
142
105
97
37
136
152
111
55
111
109
165
74
140
137
86
152
101
141
158
55
129
104
103
102
80
79
102
93
69
110
105
110
131
93
67
91
91
134
56
67
55
92
127
144
58
180
110
140
92
56
103
91
56
96
106
127
37
99
126
79
116
58
68
105
67
104
136
37
144
74
79
127
92
107
105
69
152
103
55
123
130
136
110
122
105
122
91
37
37
119
99
105
91
37
144
119
158
108
67
111
92
92
92
131
178
138
180
56
86
91
93
144
114
144
37
110
55
79
92
163
122
67
130
67
102
91
93
144
104
128
79
128
146
96
106
125
96
107
136
93
67
37
123
69
67
122
58
69
55
146
136
104
67
79
84
56
111
139
55
144
188
128
124
37
92
37
58
74
160
152
67
92
131
113
68
138
169
144
138
92
110
138
77
122
108
148
146
74
119
117
140
91
75
104
110
105
104
105
171
119
69
128
84
58
139
134
122
123
127
104
122
67
110
149
123
123
126
122
37
126
86
95
58
125
126
88
126
130
67
55
91
132
67
152
122
152
134
122
118
105
144
122
178
96
111
138
169
56
77
55
122
128
126
119
103
144
93
109
69
132
169
104
55
37
89
105
103
105
126
110
110
163
144
119
134
111
92
56
140
91
37
75
55
128
55
144
178
55
144
130
138
110
171
56
37
105
138
96
144
124
126
93
103
126
169
127
98
180
58
117
92
107
91
148
160
99
126
126
68
79
37
178
77
146
93
105
88
126
87
146
37
91
152
152
169
92
56
148
86
105
123
105
99
77
55
104
56
130
128
103
110
130
67
119
126
128
79
89
67
92
92
93
75
148
128
126
104
111
171
142
114
127
126
111
142
93
74
37
127
127
93
128
93
123
92
109
97
109
127
110
127
79
88
67
139
75
138
105
104
110
127
104
134
56
86
141
126
163
55
55
138
56
126
58
55
77
125
143
67
77
98
69
123
56
67
163
110
89
122
109
139
139
127
92
37
116
122
92
93
58
131
134
110
105
104
139
145
89
120
127
67
91
145
104
104
114
129
58
105
126
148
122
101
144
119
112
122
142
93
111
101
115
67
111
122
67
67
136
101
102
146
138
93
126
92
67
92
163
102
134
84
75
139
105
122
128
92
67
149
127
126
67
92
86
122
104
169
180
67
105
117
106
110
138
140
110
58
131
58
146
122
58
92
119
148
92
105
163
117
106
55
55
56
144
67
146
165
56
55
104
56
100
158
106
58
138
55
107
89
104
58
111
79
118
69
121
105
122
67
86
153
146
37
109
110
61
150
148
74
178
134
86
122
112
55
127
92
126
126
55
93
122
140
147
96
92
110
144
127
97
91
107
83
134
146
55
55
102
99
100
105
110
108
79
92
178
178
144
68
126
105
138
105
93
75
55
110
55
109
160
146
67
67
92
117
139
122
120
67
37
112
122
86
86
93
88
105
69
100
163
92
98
96
67
93
67
95
127
135
178
168
108
108
144
131
55
112
139
130
134
97
105
146
104
107
67
115
92
104
104
146
127
75
92
131
55
104
106
131
139
92
104
168
67
69
122
69
138
123
68
56
180
111
88
105
106
146
37
37
91
87
55
140
117
67
92
106
138
91
83
110
128
55
122
105
95
123
107
86
123
146
56
128
109
92
110
169
144
152
84
140
92
139
93
75
131
126
124
83
178
112
135
93
168
110
128
67
123
131
58
97
122
148
103
152
92
110
98
106
140
75
122
111
178
140
126
178
140
124
167
74
123
126
55
99
124
86
138
55
55
67
126
163
79
77
138
92
105
99
127
122
74
92
139
94
151
109
126
79
93
160
126
160
124
70
165
110
138
58
107
122
99
77
119
67
83
104
110
126
58
97
110
163
37
126
149
104
93
112
67
84
131
126
105
55
111
152
135
117
55
123
126
92
109
100
74
69
91
77
55
58
104
99
178
56
122
92
103
93
79
107
79
127
92
110
83
92
55
126
101
137
126
140
146
178
104
77
86
127
93
110
79
114
93
128
56
92
122
139
139
180
37
99
93
127
144
107
106
152
162
101
112
105
118
92
132
104
92
171
122
122
56
93
136
103
67
134
55
92
99
79
109
55
139
126
97
92
147
125
180
115
122
122
102
118
118
139
92
178
58
105
105
67
81
37
72
134
58
126
79
110
169
98
122
88
55
56
112
104
139
146
55
119
91
158
55
139
79
106
104
93
102
111
105
110
109
86
86
67
122
89
69
55
123
146
55
126
86
67
146
86
114
123
139
128
105
101
126
139
169
123
55
99
105
55
138
168
122
110
152
94
110
96
122
126
138
92
144
92
86
74
171
138
55
79
55
92
122
104
146
122
110
58
56
128
128
74
78
86
139
74
139
74
93
55
55
104
104
83
67
152
37
105
126
110
131
139
103
126
144
152
127
67
67
79
122
138
79
77
104
104
55
139
55
97
110
76
138
105
126
104
115
86
128
58
81
122
55
126
75
178
106
124
97
152
55
91
110
146
67
95
92
138
148
180
128
139
105
93
135
75
148
69
109
55
109
92
79
104
55
111
105
122
105
104
93
136
93
139
67
138
108
110
169
122
104
110
128
119
127
110
92
58
106
112
152
144
109
86
55
152
146
134
122
139
58
105
160
102
119
92
138
37
128
127
122
56
110
68
93
165
55
112
86
138
120
134
91
74
140
92
92
55
55
144
92
58
156
111
158
115
74
75
178
171
168
67
144
167
88
102
109
87
120
58
126
138
134
92
110
131
55
111
81
178
104
111
105
103
92
55
109
69
79
144
110
127
91
105
79
55
58
169
67
122
55
134
55
97
67
138
83
122
93
67
92
109
109
111
105
55
138
105
92
109
86
103
178
106
106
55
152
126
104
126
141
75
58
178
91
106
67
91
58
134
146
92
119
78
110
58
132
110
128
189
92
139
88
97
103
95
110
92
58
105
111
56
74
138
56
77
37
86
37
110
74
148
138
140
91
125
152
144
138
110
37
56
178
56
126
126
139
98
93
56
92
55
56
100
119
92
122
139
107
88
138
126
92
92
67
122
171
55
93
81
83
122
56
122
152
97
110
92
115
37
122
163
165
55
83
110
110
114
122
178
79
92
135
178
79
83
188
110
93
163
84
55
113
77
104
105
102
119
105
93
110
135
127
160
92
104
67
136
127
139
124
144
127
124
88
145
55
86
139
86
152
37
75
92
55
126
37
105
79
169
128
178
123
126
109
55
89
105
92
92
79
103
142
130
89
127
77
104
91
78
67
104
126
138
89
67
180
140
138
122
55
151
165
142
119
168
105
37
100
144
122
138
122
171
134
55
126
119
165
104
92
83
128
122
99
138
118
124
148
122
92
56
77
105
92
138
126
171
141
37
97
93
180
149
78
139
132
91
79
122
136
126
106
189
123
132
99
110
122
106
105
104
69
152
134
79
58
105
55
110
107
77
55
74
79
93
126
122
67
122
55
110
122
58
56
93
178
92
97
105
131
56
139
138
144
124
67
146
67
67
77
105
67
122
127
139
126
92
92
55
95
58
122
92
111
92
83
144
138
122
124
122
138
93
118
110
165
69
122
152
110
58
121
114
58
127
127
86
99
99
88
119
110
109
126
146
126
84
142
146
124
122
79
92
78
131
98
122
80
93
79
163
119
138
120
160
104
56
122
126
169
67
121
69
105
56
55
110
104
138
92
69
140
67
103
79
92
152
130
69
89
106
126
57
130
93
105
139
110
126
122
56
93
177
140
118
86
73
74
75
79
99
104
148
67
146
127
93
98
100
81
123
56
92
101
79
114
92
88
152
126
180
56
122
105
128
58
130
91
91
95
105
105
128
55
178
93
138
144
128
74
104
105
104
122
104
86
55
98
144
148
69
105
119
69
93
127
115
124
126
128
111
102
115
105
136
120
86
123
77
81
136
105
138
99
97
139
117
127
139
132
127
92
138
119
112
93
120
92
104
128
144
178
110
98
123
92
93
99
136
123
119
67
124
98
138
68
126
122
88
156
126
134
92
130
55
105
135
92
169
138
58
152
92
104
138
92
138
56
109
93
58
111
127
56
138
134
56
104
127
140
104
75
77
55
56
182
117
171
122
138
111
127
146
97
58
79
92
93
110
107
139
126
79
104
162
138
110
126
93
105
111
92
37
79
92
55
122
138
110
134
146
139
109
137
123
67
122
123
107
55
125
126
169
111
125
111
138
120
77
75
122
105
109
67
58
124
126
169
131
128
114
120
134
104
110
77
136
110
134
77
116
75
37
92
144
88
117
104
77
131
163
92
83
138
158
99
139
100
107
143
171
171
37
104
58
93
99
92
109
104
151
102
126
79
75
58
55
92
83
74
58
58
58
93
110
99
110
127
139
138
177
93
105
140
156
67
126
178
138
134
126
140
55
98
75
135
92
75
107
140
81
55
136
107
58
139
114
131
119
178
126
123
69
111
94
55
104
104
99
111
107
67
110
92
97
79
112
135
58
146
132
146
97
105
139
67
128
119
140
138
104
77
114
37
67
37
119
126
128
146
103
86
109
117
92
69
93
92
165
109
144
126
121
179
75
146
134
122
144
123
69
37
75
67
97
92
86
77
123
55
169
55
91
136
103
55
152
127
83
91
122
152
131
104
55
122
56
110
55
163
67
110
119
140
92
94
84
78
138
138
97
110
92
105
69
58
138
37
92
162
86
55
165
86
115
88
102
152
92
121
55
178
58
98
68
109
99
67
67
77
120
55
109
83
88
122
127
158
119
100
92
67
77
120
122
37
138
126
180
67
68
140
100
55
115
55
102
130
101
110
104
86
109
148
92
69
132
169
110
67
105
94
83
58
122
84
55
69
56
93
55
103
110
139
105
92
104
178
113
58
110
105
126
189
169
146
180
93
37
67
58
138
67
120
146
132
138
56
110
69
92
56
139
163
67
115
55
92
67
104
107
107
128
37
93
111
98
126
148
58
92
152
55
89
128
171
152
77
122
178
128
104
110
92
67
188
169
131
37
138
146
199
37
148
67
150
99
117
140
144
145
107
120
145
110
114
105
92
88
101
92
126
130
136
92
158
163
55
37
110
56
114
92
56
93
124
131
178
152
122
138
74
37
124
109
92
125
98
158
79
95
180
122
120
163
111
139
97
58
111
140
110
105
122
104
144
138
105
110
145
68
58
178
122
105
92
144
56
105
67
55
142
126
178
58
95
130
118
79
55
101
91
84
132
136
122
79
126
169
131
110
92
109
147
146
138
134
101
91
178
124
163
92
122
74
102
128
138
146
120
37
67
108
110
91
167
178
171
121
105
111
138
92
79
169
131
92
67
123
67
126
67
100
149
55
67
152
138
92
92
178
111
111
126
92
119
67
83
126
86
56
152
67
105
169
56
126
144
135
55
126
178
110
92
89
37
67
140
122
144
105
91
169
126
93
178
138
142
126
86
92
119
93
124
69
84
91
169
126
103
55
118
127
91
127
123
74
127
138
92
126
56
145
55
120
105
127
138
126
79
127
92
98
124
93
84
117
92
105
119
91
68
122
122
146
171
93
119
58
119
136
146
110
138
117
105
138
105
142
122
110
119
123
178
97
83
122
139
127
58
107
56
55
139
119
67
91
126
86
132
106
114
111
152
144
122
55
169
139
171
119
139
163
92
111
102
152
98
55
137
91
111
92
122
178
93
151
128
135
69
144
147
160
149
67
145
67
132
178
178
126
55
138
120
168
85
74
107
110
92
58
75
55
102
130
56
104
105
98
67
58
93
130
110
138
169
103
123
37
93
178
37
92
138
72
119
55
134
115
140
79
112
112
115
77
92
131
110
112
67
92
93
56
163
124
55
97
104
92
79
74
92
111
125
55
171
123
104
92
139
110
127
92
144
111
144
105
129
68
111
93
56
139
89
178
150
122
139
101
79
146
106
128
115
100
110
67
108
138
138
138
140
93
75
126
103
111
110
97
120
75
111
37
148
107
110
119
128
37
122
92
162
37
77
95
110
77
137
79
126
139
67
37
100
136
92
37
126
37
109
37
103
168
119
100
58
177
67
97
138
55
126
144
92
37
144
110
125
146
55
88
138
104
160
118
169
110
69
128
88
69
69
55
109
92
107
37
103
93
139
37
92
69
119
140
128
126
119
103
145
93
109
138
122
139
92
56
107
139
134
92
128
77
105
135
92
124
93
92
122
107
56
122
162
152
106
139
134
69
122
56
92
104
126
58
126
92
56
144
139
110
124
142
92
92
91
93
127
92
138
111
92
109
92
139
146
74
178
138
122
103
92
110
122
122
131
126
98
67
105
79
118
110
88
55
131
110
105
92
55
92
97
107
122
93
56
95
86
105
37
55
74
110
110
146
56
67
104
126
79
148
78
168
91
117
140
91
126
126
37
152
91
147
138
93
109
91
79
125
128
99
92
67
128
112
139
67
92
126
122
55
131
165
104
119
55
148
126
127
91
74
123
132
67
138
101
92
178
123
111
110
105
105
127
110
92
67
165
115
93
146
122
119
122
67
105
92
93
128
37
37
135
86
74
145
110
111
56
67
61
110
99
103
103
105
92
106
92
67
107
69
105
122
98
92
84
56
131
100
169
83
55
130
145
137
158
67
140
55
168
56
104
92
128
132
148
114
119
151
69
122
126
99
91
127
74
37
86
37
122
160
126
139
132
88
139
37
79
178
104
98
169
92
138
80
92
111
105
182
103
84
144
134
112
89
100
108
162
77
122
139
123
104
79
99
111
93
92
92
122
75
119
110
88
109
109
105
139
128
111
84
127
118
130
131
105
69
139
97
99
93
104
55
137
99
109
152
69
108
92
178
119
148
55
93
92
145
111
131
105
103
104
168
180
92
91
86
119
169
178
104
56
111
104
56
104
140
139
126
137
168
115
139
124
67
123
110
158
93
123
115
144
74
180
107
144
56
67
104
102
91
121
138
67
130
112
158
138
118
37
128
138
86
178
122
103
110
152
69
107
139
152
139
128
95
101
79
119
92
92
123
109
126
92
93
112
80
104
162
101
74
77
128
126
164
77
127
93
115
79
112
118
178
67
148
119
146
55
69
99
92
148
91
122
149
56
139
138
126
67
134
99
144
114
83
104
101
178
79
91
103
92
149
122
126
37
126
178
93
126
178
137
68
136
127
126
58
138
126
92
138
135
144
145
169
86
87
55
91
105
110
122
83
130
122
92
78
56
84
101
92
93
105
69
93
105
58
93
109
109
180
55
130
68
72
119
127
119
97
55
92
123
144
146
138
109
111
92
128
138
92
97
105
122
110
138
117
112
125
127
92
75
107
111
162
168
114
105
55
139
110
127
123
134
56
67
138
79
110
84
86
55
105
178
106
74
74
107
169
99
140
86
56
146
37
132
97
86
103
110
58
122
56
138
67
160
91
171
138
92
105
94
108
92
145
56
95
105
122
122
178
69
91
120
146
37
110
122
67
92
127
110
122
91
79
78
114
123
136
124
139
104
152
123
92
122
74
86
69
67
109
93
67
144
126
126
104
141
171
105
74
178
122
121
138
123
92
67
109
74
109
114
120
69
126
131
120
114
55
169
58
110
109
119
83
105
122
146
55
105
182
105
104
169
122
138
152
67
75
139
105
141
37
79
98
56
107
108
96
122
110
94
146
138
169
122
105
55
128
114
138
55
84
74
122
92
122
123
105
92
37
122
77
168
75
126
56
93
109
55
110
92
112
92
136
55
110
123
137
126
86
138
138
97
91
92
144
138
103
126
97
92
126
126
144
69
104
104
79
109
97
122
144
92
122
138
139
92
152
69
37
56
132
58
93
55
92
126
91
110
130
127
91
122
129
92
110
72
126
126
55
68
134
75
55
92
95
99
139
91
167
55
137
92
104
122
122
95
126
168
104
55
171
99
74
92
77
115
148
55
127
123
92
146
126
100
110
56
111
165
92
137
124
122
84
178
119
99
138
58
138
135
104
67
114
101
126
92
127
138
127
110
110
58
67
88
110
178
138
110
92
111
74
130
55
152
119
106
67
92
131
98
107
55
79
127
95
122
67
124
102
97
138
130
135
152
103
104
125
169
111
105
110
83
55
92
126
122
110
122
67
91
92
93
139
55
138
68
55
87
80
79
69
122
103
74
55
107
114
93
67
106
56
167
114
127
67
117
99
81
146
56
122
79
74
58
92
87
105
107
152
101
104
110
37
104
110
139
37
144
123
168
105
86
103
37
93
171
102
139
92
105
138
126
118
122
69
104
104
67
107
98
102
134
125
91
98
55
124
86
55
56
58
128
110
131
77
92
126
126
92
169
128
93
188
148
92
69
138
126
105
180
111
109
69
122
55
127
104
69
138
126
152
120
140
92
67
55
68
56
158
103
138
139
152
139
37
37
96
84
55
55
139
103
126
67
77
80
86
128
164
124
123
92
103
92
105
58
55
122
115
55
178
68
130
122
122
169
92
95
86
55
93
131
122
69
92
102
122
106
96
136
119
178
145
122
141
162
69
118
130
130
127
56
98
146
144
119
91
55
37
104
92
55
124
92
111
139
86
67
104
138
132
110
178
144
124
167
107
152
126
126
138
93
144
140
110
69
131
134
58
134
119
105
92
92
104
138
105
37
93
92
92
111
77
91
100
110
105
84
120
56
92
152
128
144
99
74
79
113
122
92
75
69
102
134
126
148
110
162
107
37
88
104
138
126
58
111
105
138
37
122
91
75
141
86
37
169
92
79
86
129
124
152
126
137
55
123
123
110
67
144
109
138
92
146
105
92
146
160
120
92
88
89
110
152
129
146
55
55
152
102
75
88
86
65
144
92
107
128
96
58
119
91
114
103
127
138
140
110
87
146
58
69
67
77
37
97
149
122
122
86
122
110
103
142
92
122
55
92
107
92
86
122
93
67
126
97
119
105
74
55
131
74
146
55
55
131
93
124
111
108
58
140
56
148
55
122
111
110
120
104
105
110
55
146
126
83
98
178
109
144
94
127
110
140
178
97
56
92
89
122
123
91
67
93
56
152
123
126
127
110
138
67
118
104
103
100
55
104
92
110
121
147
126
128
189
69
106
79
92
158
148
58
122
91
127
93
124
168
104
67
110
127
58
55
178
92
141
69
124
152
104
105
107
110
127
168
104
81
67
92
131
146
58
144
117
97
88
139
111
77
75
68
92
169
56
67
93
117
128
102
132
127
139
110
37
118
146
55
101
127
152
67
92
110
68
56
92
111
123
111
56
123
152
139
58
138
178
126
111
122
109
126
77
69
145
110
105
74
74
37
138
92
126
138
76
142
86
55
104
124
67
180
106
138
117
86
92
110
148
97
144
105
126
91
109
164
110
75
91
100
104
152
89
127
122
122
75
140
109
56
92
139
74
56
110
91
131
119
119
122
75
74
105
145
163
152
99
110
99
92
105
131
119
124
126
105
115
96
128
148
105
80
55
105
91
92
105
178
58
110
110
134
91
126
104
128
92
122
122
69
69
122
140
103
107
69
83
92
132
134
122
105
37
56
124
107
105
58
128
122
138
139
55
92
110
99
109
119
164
86
137
127
55
93
178
69
67
104
110
118
139
143
55
79
58
110
122
58
127
58
123
152
92
119
103
92
160
93
98
142
55
127
100
122
122
105
92
55
126
126
55
146
94
127
101
144
55
110
126
104
178
106
165
55
105
104
55
104
67
168
178
110
105
140
109
115
115
92
58
58
126
55
89
58
139
105
55
104
67
107
110
110
77
67
114
105
92
111
92
126
55
131
37
109
126
107
89
132
105
105
64
165
130
148
122
171
109
58
126
138
141
122
55
144
73
92
37
37
37
123
132
77
117
55
96
56
97
138
122
111
93
111
112
110
55
123
105
134
148
92
106
146
101
139
37
104
55
89
130
126
89
148
126
123
105
93
111
138
104
110
123
108
108
91
136
152
87
101
152
100
93
122
123
151
105
119
92
178
136
146
122
168
58
79
110
92
122
134
110
126
104
89
77
159
139
138
86
93
146
83
105
120
138
178
122
104
178
112
103
84
92
138
99
106
135
37
178
130
119
127
148
56
69
105
104
92
93
178
105
80
92
147
178
55
105
144
138
110
79
139
122
55
77
178
122
112
142
86
69
126
144
89
67
162
111
92
140
112
37
55
124
110
103
92
110
122
140
145
55
84
144
104
113
75
82
104
109
97
67
110
67
130
178
67
92
144
55
127
67
144
122
122
74
152
99
127
119
93
117
111
122
126
114
103
121
67
55
114
92
148
122
169
138
106
104
136
55
107
104
138
77
37
105
92
91
128
105
91
93
124
92
126
93
111
110
114
126
138
74
165
91
92
92
104
92
55
55
169
136
77
74
93
105
55
92
165
91
105
181
108
126
138
55
74
55
86
119
107
92
105
55
55
86
139
152
146
107
91
97
159
67
132
110
58
105
109
148
110
110
146
55
106
92
144
110
130
146
93
138
55
110
105
58
139
58
83
123
119
132
92
139
92
105
122
138
55
178
125
127
91
101
140
158
126
110
67
119
99
178
137
92
56
98
138
144
145
89
55
114
37
110
105
86
68
99
111
110
119
104
145
125
105
67
92
110
67
104
37
78
69
138
56
124
146
56
138
122
122
93
122
93
123
109
92
69
126
146
121
126
74
124
67
104
110
131
55
152
55
92
67
118
127
56
56
55
93
67
92
58
99
107
102
92
110
146
56
165
122
67
100
91
56
56
139
55
109
138
93
122
58
104
92
180
138
139
127
146
126
56
104
67
134
144
56
138
92
88
69
139
56
111
122
37
144
91
124
92
55
93
74
127
126
79
103
122
67
122
56
131
138
126
104
126
67
122
92
37
37
146
111
104
146
152
55
104
126
84
119
58
94
169
104
119
124
74
178
56
91
178
56
118
110
84
98
37
111
164
127
139
146
92
95
139
124
138
163
169
126
74
112
104
84
91
101
148
75
140
55
122
108
58
92
118
144
117
105
106
139
127
127
37
110
109
56
106
92
103
58
138
110
122
93
37
161
91
79
169
105
92
125
105
105
138
169
146
97
122
110
92
122
104
87
171
146
140
152
58
142
180
111
126
138
137
128
92
139
136
55
115
169
55
92
79
108
97
164
80
104
120
126
84
92
93
105
139
126
122
178
126
127
105
180
104
98
92
55
138
126
114
67
109
105
92
122
104
134
126
138
93
107
74
152
141
110
92
132
102
92
67
84
97
115
169
55
131
178
56
79
158
110
92
106
110
152
152
105
110
93
93
138
178
111
55
158
138
123
134
92
74
127
88
163
130
152
139
138
83
86
97
178
55
111
105
55
152
122
75
105
55
146
56
130
146
93
144
105
122
105
55
58
110
126
109
110
139
122
79
162
104
138
138
92
146
93
67
130
93
93
92
92
135
111
93
114
122
97
103
139
110
67
92
58
139
126
79
86
99
100
67
117
93
92
128
37
93
140
56
110
55
116
37
137
105
55
91
58
105
67
127
152
99
118
115
158
123
124
114
115
88
79
118
127
55
112
134
137
58
89
92
111
103
114
182
169
55
105
126
118
110
92
98
92
84
104
126
92
105
121
67
123
138
139
113
100
134
138
97
56
138
126
122
126
111
122
69
55
91
132
92
112
138
77
79
104
92
152
107
69
144
92
126
99
86
145
105
91
86
77
79
109
67
107
138
122
58
105
99
144
128
55
152
114
55
58
92
110
37
103
104
138
144
109
86
92
110
126
77
104
75
103
139
120
165
55
163
105
144
146
117
56
55
122
55
134
109
92
126
169
138
114
92
86
126
114
93
120
93
139
110
192
178
92
93
120
131
92
126
92
126
138
138
105
126
127
78
110
104
86
110
144
117
122
64
69
111
104
130
97
83
109
144
131
106
89
56
141
104
101
152
55
178
169
114
138
75
107
110
126
55
67
95
55
108
84
75
107
83
126
105
97
127
67
169
138
101
92
92
89
138
115
86
55
144
177
119
122
178
83
144
86
78
92
103
81
101
136
105
136
162
114
165
118
146
92
117
55
58
169
100
114
123
102
69
111
93
139
91
69
67
75
162
92
99
79
68
79
55
122
121
105
127
56
138
122
58
99
93
152
111
58
138
84
165
79
122
122
72
112
110
127
128
99
58
102
92
132
56
86
120
107
84
92
55
37
37
55
126
101
68
102
92
112
113
93
139
106
98
144
111
171
58
138
110
138
75
67
107
92
69
139
131
79
110
139
78
92
67
75
104
55
110
92
137
105
148
127
131
169
67
110
77
135
69
77
116
99
128
168
164
67
111
140
83
106
123
56
122
37
68
85
58
55
122
158
127
111
107
83
127
91
126
107
56
110
86
92
171
126
37
128
101
168
80
86
122
134
67
138
146
136
123
144
107
86
107
55
141
138
104
92
75
138
55
111
146
56
110
111
92
93
37
146
64
77
128
110
151
83
92
110
130
74
89
122
97
122
92
124
105
79
58
67
118
92
110
127
95
128
136
104
123
126
122
92
178
122
105
106
123
55
105
86
104
149
107
110
178
114
91
122
93
107
122
106
127
122
178
58
139
126
92
55
110
99
79
98
168
134
162
112
145
178
104
127
56
67
110
139
104
68
92
105
86
67
110
110
126
138
112
92
139
146
169
58
146
101
92
79
107
152
139
55
104
97
144
37
55
86
152
69
118
91
126
123
145
162
127
102
136
88
110
134
67
127
134
91
105
146
58
135
92
77
104
112
105
55
131
137
92
139
139
127
122
147
67
67
134
92
131
120
77
58
93
147
139
138
79
74
55
55
79
138
122
146
92
165
67
37
110
86
129
144
119
82
84
142
109
58
79
91
136
118
93
128
165
91
55
111
104
103
114
105
178
158
139
199
56
56
98
139
91
104
93
95
56
91
67
146
67
115
105
152
105
67
146
106
55
107
140
171
86
56
110
139
79
110
93
74
136
140
123
37
67
122
110
146
92
119
58
122
131
104
81
104
55
144
93
105
86
146
158
86
140
93
55
55
123
111
122
140
119
93
58
138
110
152
131
138
84
117
79
128
111
140
89
68
114
107
91
138
84
55
67
146
129
108
105
122
104
112
92
75
55
92
79
109
107
37
116
91
117
119
105
122
127
92
122
69
86
152
126
138
111
67
144
131
100
163
122
122
110
132
37
134
56
55
91
104
95
128
112
144
108
67
128
126
56
131
113
55
37
102
105
77
162
67
127
110
92
122
67
104
67
110
136
122
129
83
139
128
128
106
81
105
56
140
139
152
74
128
93
144
55
67
103
109
67
93
112
56
93
104
104
111
92
75
110
92
55
69
148
139
136
78
104
178
92
89
128
102
122
123
56
148
55
119
91
178
79
88
105
75
79
140
102
178
56
123
93
68
158
125
92
86
124
136
98
55
109
122
103
152
178
103
164
55
91
126
100
199
84
109
88
134
103
152
92
104
138
126
144
144
122
74
74
163
127
110
139
146
104
104
144
103
127
122
122
56
139
89
55
123
111
86
124
132
131
56
178
104
104
107
122
111
127
67
55
88
144
110
92
114
56
86
83
58
56
79
106
104
88
123
146
105
67
74
92
56
123
93
120
92
93
75
160
138
138
169
156
109
123
101
126
171
148
197
123
110
74
104
92
114
75
136
140
110
95
131
67
93
56
91
103
158
122
140
122
131
56
138
138
140
67
84
110
93
114
69
55
56
56
91
127
91
92
56
110
58
91
93
69
111
74
128
96
105
140
58
92
67
139
171
84
58
105
93
97
132
110
130
110
79
55
127
123
171
67
69
139
123
134
163
107
87
105
146
69
102
56
93
138
92
138
99
124
58
92
79
92
110
152
37
101
178
67
157
92
178
138
107
122
111
110
136
105
140
148
75
110
138
122
93
146
76
69
126
125
138
69
160
138
122
99
105
150
122
37
127
55
92
92
122
105
92
105
68
101
58
152
138
103
102
123
109
132
128
139
158
122
77
103
84
84
75
178
75
126
178
147
79
137
122
139
97
55
104
110
139
91
37
122
55
55
119
67
144
97
134
110
37
99
178
122
83
110
109
92
92
92
67
124
82
146
98
74
138
100
37
58
138
126
114
138
93
55
147
86
55
111
152
95
55
99
58
110
92
105
152
110
105
56
58
55
111
110
97
37
110
127
135
146
75
55
114
122
124
84
178
138
91
92
136
140
138
108
105
96
127
111
126
55
92
93
182
88
69
146
81
138
92
105
104
101
161
144
97
140
92
105
69
178
131
168
92
109
92
126
131
107
95
93
160
113
105
104
138
124
151
137
126
132
85
67
92
144
120
123
77
178
75
95
122
134
64
105
75
110
107
105
79
126
164
112
74
123
75
144
146
56
67
128
119
91
122
126
103
37
148
92
123
152
55
134
119
107
134
92
105
72
125
74
160
152
142
99
99
148
138
110
109
74
92
117
92
105
74
92
104
109
92
97
110
99
92
56
69
69
104
110
104
92
109
110
101
105
73
92
110
102
110
67
111
138
67
121
122
86
92
124
58
56
110
110
138
74
124
58
138
123
55
146
75
120
128
101
178
91
92
152
138
178
123
118
110
92
131
92
116
137
105
55
123
110
69
120
122
55
163
75
152
163
119
107
100
67
80
112
58
79
105
139
146
69
79
140
139
126
110
169
55
68
140
122
146
138
119
123
56
110
126
128
56
107
93
56
144
56
138
92
56
158
110
56
55
92
106
37
178
127
123
79
112
122
56
138
137
109
37
88
137
58
119
75
122
110
139
124
74
110
112
162
86
144
152
106
120
81
126
74
119
126
111
56
55
75
114
67
55
107
138
112
122
110
128
74
68
74
134
95
140
126
126
55
91
92
56
138
131
120
55
138
58
136
137
139
146
122
146
126
144
97
110
122
86
134
126
92
138
117
178
164
86
68
123
99
111
93
77
77
121
92
119
56
105
180
84
124
86
124
92
114
122
101
132
127
78
118
110
141
92
37
37
171
109
56
107
122
92
139
126
55
138
122
122
104
138
79
107
67
92
92
92
92
144
110
107
99
84
114
79
123
126
92
168
55
86
67
128
78
144
137
93
126
130
55
127
126
139
139
169
69
163
78
117
114
143
56
92
178
124
138
123
92
86
79
122
122
148
133
107
111
105
37
146
113
80
37
110
56
109
93
56
126
92
122
137
105
119
93
79
105
56
69
140
86
124
93
67
93
148
108
93
107
104
67
58
107
104
126
98
103
132
119
178
55
122
148
118
110
55
93
114
171
55
67
146
55
93
92
148
122
83
55
110
100
93
122
127
128
123
110
126
122
67
37
129
108
67
124
124
67
79
84
138
120
56
146
75
146
125
99
146
123
96
108
146
106
138
58
55
37
79
92
148
110
92
105
78
139
110
97
56
77
113
122
103
138
138
92
58
67
37
67
55
127
178
92
131
67
144
104
56
109
119
92
122
79
146
73
111
92
55
150
119
158
110
67
128
178
68
110
74
86
122
126
56
105
124
139
55
188
105
67
144
126
138
104
139
67
58
86
131
105
84
138
100
83
92
134
101
110
104
123
104
126
178
107
122
140
58
124
119
169
104
123
152
110
64
76
115
127
107
58
113
168
69
58
152
122
83
83
99
92
55
92
126
158
67
92
111
55
93
123
92
58
111
139
146
37
92
67
92
112
106
123
139
96
145
69
105
158
123
131
110
117
141
110
119
56
122
101
126
92
181
123
109
56
128
55
126
92
92
111
79
168
92
110
55
178
99
165
129
144
136
67
37
37
158
107
55
105
100
140
122
37
127
69
142
109
55
100
134
94
67
55
58
67
127
37
195
55
122
138
99
92
110
79
146
97
67
158
180
138
105
127
105
92
169
158
178
99
105
86
79
132
110
126
124
58
110
158
55
107
105
144
140
58
139
178
105
123
146
69
109
107
123
141
79
79
91
73
106
125
122
77
67
81
86
93
69
55
122
134
144
74
74
122
110
131
121
128
56
163
126
86
122
92
93
178
126
105
56
168
104
122
67
92
127
99
105
79
83
137
77
180
86
79
93
75
122
107
114
92
58
148
55
144
120
110
104
106
86
139
92
67
92
100
100
92
92
58
123
104
163
91
55
138
144
93
122
165
136
77
137
79
55
114
110
105
163
92
75
111
69
91
139
146
92
79
110
93
97
105
122
94
131
105
55
58
58
105
115
67
83
122
55
87
148
144
126
104
78
110
109
131
139
93
55
68
107
56
98
111
104
67
138
127
138
139
94
37
37
126
130
56
92
144
79
105
99
98
93
105
144
56
56
95
69
91
169
98
100
122
131
131
135
119
120
55
110
122
110
92
152
126
138
55
169
103
58
37
165
88
126
67
67
118
69
58
77
109
126
92
138
148
137
84
162
138
75
122
138
123
124
122
76
144
124
119
142
110
132
114
139
146
138
144
80
56
146
128
104
101
91
138
109
96
109
104
76
110
55
130
126
105
67
138
110
58
122
138
138
92
138
93
67
122
105
131
132
114
92
138
86
158
99
138
126
88
122
87
58
137
123
122
122
104
69
56
137
92
67
105
138
109
84
178
110
58
188
55
55
110
93
139
80
88
126
144
140
69
127
123
105
55
146
105
139
86
180
93
122
92
92
105
122
91
116
93
126
55
55
92
69
122
189
110
109
138
178
144
156
105
58
114
78
105
77
93
110
74
89
129
93
55
134
146
131
55
126
130
86
136
79
122
119
139
171
111
55
117
152
56
56
105
114
144
131
146
99
91
126
168
77
127
137
55
86
164
104
138
93
86
148
91
165
138
134
93
55
105
145
105
92
122
138
92
127
126
75
119
126
104
91
139
55
149
138
104
141
94
98
56
74
178
122
92
122
105
92
92
164
69
56
146
127
110
64
128
86
74
92
96
117
114
178
110
92
93
146
104
139
139
126
105
56
118
119
93
136
110
124
146
92
102
137
105
105
77
93
178
109
134
142
122
138
105
130
79
95
84
107
148
164
110
104
55
56
127
37
55
76
122
151
93
199
84
92
126
69
92
92
97
180
84
114
92
56
109
93
92
78
74
56
126
152
107
107
58
126
146
76
117
105
178
131
124
102
139
97
178
180
78
110
109
92
92
55
55
92
118
121
55
119
128
56
105
69
164
58
171
37
146
105
74
92
100
167
109
104
74
69
110
139
88
74
128
55
128
122
100
105
160
79
110
105
122
126
107
145
110
111
93
129
146
138
110
110
135
105
160
148
109
68
147
56
126
92
105
111
131
92
67
169
111
103
55
105
104
139
93
122
69
83
103
56
146
95
130
91
77
104
126
37
100
135
102
152
69
127
152
107
162
100
178
91
69
139
152
75
58
86
77
134
146
104
92
79
93
148
110
108
56
104
67
56
105
81
92
146
152
138
102
104
67
91
127
98
76
77
164
105
123
86
140
127
122
110
139
88
127
97
55
146
110
178
74
56
74
77
144
110
163
104
122
119
139
139
126
128
105
178
77
146
110
91
134
117
74
110
146
168
101
58
55
128
127
119
92
37
99
122
122
56
92
96
122
99
107
109
123
124
123
104
148
110
55
178
139
93
122
144
118
92
92
56
58
75
91
138
144
92
171
146
37
37
92
93
74
92
139
168
128
122
115
105
146
171
139
74
140
92
128
144
69
146
55
93
146
126
95
97
137
111
56
37
56
58
91
92
67
110
105
151
105
180
105
92
67
138
138
77
79
104
77
126
139
55
110
102
178
105
138
112
75
141
178
92
69
92
67
104
104
107
128
126
138
55
79
69
86
93
162
130
146
138
180
139
106
69
110
122
126
105
56
128
99
105
67
56
98
103
56
37
123
126
138
86
83
122
110
131
169
140
92
92
114
138
86
79
111
76
67
164
106
83
130
86
83
139
79
123
55
92
92
104
78
93
92
146
117
132
114
75
67
117
138
106
67
67
110
92
108
109
55
86
58
126
135
86
152
123
79
92
110
67
83
115
109
169
58
128
122
58
55
84
55
56
152
99
110
152
105
94
126
124
107
74
139
37
178
92
55
77
168
128
55
88
56
56
113
138
105
55
86
165
58
105
131
111
55
135
144
55
58
102
138
92
111
119
92
124
110
110
93
107
122
144
146
136
58
122
92
105
152
67
97
163
122
71
110
156
84
119
163
93
106
92
93
93
111
103
144
134
127
56
79
77
86
99
152
55
152
91
69
92
86
92
122
128
105
131
123
104
112
137
123
126
122
37
140
86
93
130
139
122
67
136
110
92
107
104
77
140
86
152
107
37
105
140
139
105
160
86
110
69
104
149
98
92
37
98
64
92
105
135
126
138
92
138
77
140
74
91
99
110
136
110
126
171
56
110
104
169
110
55
111
138
56
128
126
163
152
104
122
138
100
135
123
81
106
131
92
67
92
64
127
96
130
119
69
92
37
55
88
146
55
168
106
104
107
67
146
102
107
169
111
67
55
105
132
67
84
79
152
101
178
110
55
86
178
114
93
100
81
111
92
111
141
84
100
56
75
68
79
55
139
122
92
126
123
158
79
110
119
112
139
92
80
92
106
55
79
84
93
110
110
69
67
91
167
92
88
111
122
101
69
92
67
110
92
119
117
99
109
139
178
111
89
128
122
92
126
112
107
123
56
102
140
164
122
128
108
104
119
103
141
132
67
86
68
67
58
104
122
110
111
89
178
67
103
55
67
128
56
119
126
56
126
146
163
55
56
74
91
110
108
134
55
104
55
101
118
169
89
92
92
58
93
163
69
104
178
58
68
92
74
132
120
111
56
165
126
37
104
92
139
122
74
105
105
130
99
55
67
146
135
139
104
146
138
93
69
92
136
86
105
37
79
107
93
92
126
105
119
158
55
126
134
102
128
102
37
128
169
86
55
104
123
123
127
178
158
79
110
73
92
126
101
87
109
145
75
79
69
37
108
140
178
122
139
144
124
109
92
92
110
109
92
105
140
98
110
55
111
86
163
93
89
126
55
105
199
134
128
56
119
148
105
77
110
109
105
127
92
144
127
128
67
158
99
67
100
93
92
105
105
110
92
158
67
58
138
140
37
146
126
138
122
67
100
111
115
77
149
144
110
122
140
104
132
92
92
67
79
128
37
110
126
56
126
126
152
95
126
105
158
150
77
37
138
55
67
107
105
118
56
110
93
58
131
139
144
107
115
37
93
58
37
55
94
92
126
92
122
105
111
72
111
124
95
138
110
140
67
103
122
108
158
104
122
131
164
130
78
139
152
146
127
124
146
139
178
127
178
75
108
138
58
92
110
84
37
138
105
110
106
105
78
104
139
120
115
128
117
178
122
140
140
119
163
56
86
146
55
168
124
138
112
83
104
92
134
83
162
122
56
99
93
104
138
89
75
128
93
152
92
134
110
69
93
101
92
169
55
138
55
110
55
58
126
122
126
92
110
148
56
105
98
171
92
105
86
124
78
103
110
97
111
127
117
103
93
127
79
131
58
135
67
149
93
92
89
92
128
122
86
37
75
104
93
128
144
92
182
76
132
130
74
138
55
122
86
126
148
105
102
122
104
130
127
93
114
138
80
130
84
167
92
178
144
126
110
86
119
144
58
134
37
138
139
158
55
124
105
131
158
132
107
127
58
124
37
122
178
58
103
110
123
122
84
92
92
106
75
92
107
56
55
93
103
126
136
122
127
152
67
93
93
169
68
76
105
92
122
37
121
167
97
121
138
149
141
138
123
144
119
119
109
107
55
110
119
37
104
163
37
56
105
92
55
101
118
108
67
105
105
169
55
104
77
107
110
121
146
75
138
134
103
93
169
97
55
126
83
146
110
110
92
117
55
171
81
122
126
106
58
178
152
136
75
91
122
118
158
55
74
92
110
58
126
84
110
136
140
156
41
169
124
112
122
55
55
123
132
148
92
134
152
122
112
148
122
102
122
106
95
146
138
99
79
127
69
55
178
74
103
124
93
117
107
94
75
92
56
69
67
199
92
58
103
68
55
163
77
107
122
178
96
139
123
68
92
104
138
92
93
169
121
110
67
114
148
128
100
132
144
128
67
132
138
104
92
131
130
139
162
89
171
102
105
127
139
56
126
114
148
135
55
76
92
84
92
103
122
55
55
79
160
111
122
140
105
69
108
79
131
123
92
67
58
109
138
84
105
67
126
131
55
126
92
119
105
128
55
138
119
74
105
122
105
55
93
103
115
92
109
110
97
92
110
112
140
69
122
139
67
67
152
91
123
75
91
92
127
93
105
86
55
138
99
91
86
69
138
138
140
105
119
138
56
109
55
55
134
131
104
111
138
126
89
91
139
92
122
89
111
140
103
109
69
126
128
103
74
140
102
126
188
118
67
55
136
110
86
95
127
127
126
132
69
103
138
164
128
79
123
169
131
110
105
164
91
110
105
55
41
107
148
92
67
130
105
92
178
119
126
37
55
68
98
146
126
92
99
105
77
86
95
110
105
106
127
74
69
67
55
148
93
120
58
178
64
105
83
114
137
93
93
92
111
55
127
118
105
132
55
178
146
89
92
56
126
86
178
192
91
67
55
118
149
67
128
55
105
94
126
171
55
112
93
92
93
79
55
58
37
55
126
134
110
122
92
56
100
104
110
152
93
124
100
128
122
110
127
134
104
139
37
131
110
104
93
37
92
110
102
165
119
146
92
111
126
37
110
140
139
58
139
105
128
112
119
37
109
139
92
104
110
67
67
161
139
55
105
122
126
83
69
37
107
139
67
122
92
126
122
138
169
119
126
156
110
126
105
139
122
122
107
110
119
104
69
122
144
80
164
111
86
83
110
132
61
97
92
122
136
138
122
178
79
92
110
131
74
152
126
168
152
67
122
127
96
67
122
93
56
104
142
112
89
122
110
93
110
119
99
152
178
69
127
67
55
102
74
126
122
87
178
139
140
105
92
101
58
138
92
123
178
99
163
119
104
86
122
37
152
56
134
105
110
152
124
110
138
127
131
122
122
88
95
75
89
91
138
149
110
138
105
152
154
131
92
122
138
138
99
79
110
92
103
160
105
138
92
67
88
67
105
122
169
123
67
146
84
139
91
138
118
111
83
131
122
92
75
152
99
122
107
180
67
104
77
67
138
92
103
58
126
67
146
56
105
77
119
37
77
122
105
92
122
131
140
92
103
67
126
98
104
91
145
110
119
163
92
127
119
140
79
55
105
77
97
179
67
139
89
84
110
105
73
92
118
84
122
92
171
128
107
110
178
122
92
67
95
74
55
122
115
110
127
92
88
138
138
104
104
181
58
104
153
117
91
74
56
129
178
102
92
74
55
67
86
79
98
128
127
55
86
89
69
152
92
168
127
117
150
126
92
126
102
151
115
104
111
92
58
105
126
55
109
122
122
92
126
92
119
137
97
80
104
64
92
37
122
92
69
103
126
74
119
122
67
141
163
110
105
93
105
74
79
93
92
127
79
124
92
88
122
89
178
55
139
144
122
171
67
146
93
55
122
68
107
55
146
58
55
130
56
86
93
126
75
158
92
115
92
75
178
92
55
67
83
139
69
55
55
69
123
104
92
86
138
75
138
92
79
55
179
86
122
88
107
105
178
58
108
84
83
103
105
81
88
128
115
148
95
111
138
93
124
102
79
171
110
169
58
99
123
165
80
92
91
87
55
89
110
126
105
97
123
105
120
122
58
104
99
112
87
178
86
119
86
95
107
91
139
131
92
88
67
58
132
67
138
162
92
111
119
152
98
104
143
128
162
122
152
74
126
107
136
104
55
152
125
55
92
110
103
131
104
110
168
104
126
168
105
92
132
58
122
178
104
77
69
146
74
105
122
126
37
123
145
55
146
91
160
69
122
55
91
103
110
97
98
92
119
55
123
102
37
92
152
110
98
108
75
101
126
97
105
69
102
134
138
105
167
83
77
127
92
152
56
68
86
37
104
179
126
56
105
135
55
110
138
37
104
67
86
152
112
119
92
126
139
107
169
105
86
140
132
119
93
127
144
56
56
111
74
128
104
69
104
165
110
158
109
115
122
138
92
110
75
129
126
129
69
88
67
91
92
140
169
121
178
158
95
122
69
58
118
114
171
105
105
67
140
67
114
122
55
104
122
146
123
67
138
111
113
138
109
56
92
92
119
37
127
77
98
75
147
128
83
126
105
127
110
99
67
119
107
67
115
132
87
55
92
92
110
37
55
146
132
122
127
104
144
95
101
135
91
111
77
91
122
56
84
92
104
128
131
56
105
128
123
109
126
128
126
110
122
131
67
119
126
132
144
117
58
101
79
104
92
99
169
77
110
112
178
37
103
93
69
138
77
110
110
138
93
56
178
130
92
139
110
114
111
109
169
104
78
74
119
137
111
81
95
55
122
37
75
92
105
122
120
93
105
122
138
92
189
146
122
92
114
105
105
58
138
107
55
55
117
110
122
93
144
91
83
67
122
69
67
146
107
104
114
138
99
146
127
128
55
58
148
144
55
138
119
137
126
122
105
92
139
126
55
104
89
92
119
58
69
109
105
67
128
126
86
93
152
92
55
37
115
122
109
171
146
37
110
92
37
138
117
83
80
109
86
111
136
127
110
69
139
126
79
169
74
84
67
101
163
110
134
138
79
152
120
138
104
37
105
144
104
67
93
110
109
138
56
158
114
87
56
93
37
171
119
112
119
92
101
101
105
58
138
69
162
93
111
92
56
87
89
132
69
122
67
138
134
126
138
120
137
75
110
97
168
37
55
58
126
37
122
102
131
93
139
138
92
93
152
67
99
55
37
104
37
109
55
112
124
126
84
169
110
69
129
99
130
104
146
55
69
130
111
104
104
127
55
178
128
117
77
84
92
105
67
126
58
122
64
103
171
109
129
165
72
92
92
169
111
37
37
92
69
77
119
67
144
105
68
138
127
122
55
105
114
99
99
128
141
112
92
146
104
93
164
105
139
92
84
92
107
67
140
138
55
131
117
83
146
55
127
126
122
148
165
139
55
138
92
79
127
93
55
56
139
93
56
110
84
74
99
91
134
122
79
152
86
92
92
138
74
105
91
128
124
131
126
92
169
167
74
105
55
146
115
136
75
105
104
126
55
69
128
110
178
37
79
110
92
117
122
75
164
109
162
138
140
132
67
110
144
140
86
140
105
105
108
138
92
104
140
91
119
111
138
104
110
91
144
92
56
92
122
55
98
169
99
127
137
109
123
178
110
127
92
93
122
55
110
93
127
109
98
92
104
105
117
167
126
91
128
37
160
146
134
144
86
69
101
110
56
91
152
199
128
94
105
92
144
152
169
111
123
58
110
137
92
110
107
152
138
119
169
104
95
139
107
110
107
56
104
55
99
146
107
146
109
169
77
67
138
138
79
92
139
112
67
180
139
136
120
37
128
55
110
105
180
91
55
114
178
168
67
110
128
122
100
122
86
68
139
79
92
69
141
68
79
110
131
106
139
92
110
58
104
58
122
58
105
92
112
91
107
92
105
56
137
111
102
92
128
138
55
104
138
77
148
124
138
126
126
99
83
56
123
67
121
93
123
146
122
114
109
128
105
69
146
118
58
104
69
86
91
92
86
127
105
138
104
169
139
92
163
128
118
105
138
103
146
67
75
120
152
105
91
142
144
106
144
110
138
93
118
126
37
92
105
115
139
106
115
67
146
120
104
55
105
180
77
178
58
163
105
199
103
138
55
83
37
152
124
122
109
92
55
152
122
109
122
105
101
110
169
86
91
58
144
120
79
78
140
86
92
86
69
177
67
178
167
121
37
56
128
107
128
171
104
55
199
73
92
138
58
111
99
110
134
128
138
93
146
171
105
171
126
92
111
56
126
111
139
128
107
104
110
160
56
138
99
144
96
139
101
83
92
122
199
122
110
110
92
100
138
89
79
56
122
140
138
55
105
115
55
126
144
97
99
122
55
87
93
178
55
122
138
123
139
89
138
93
122
110
95
104
138
127
139
80
125
114
139
79
92
180
140
117
102
67
142
124
124
111
144
136
147
110
139
123
99
158
139
55
138
69
138
162
114
79
104
88
105
92
105
114
122
86
169
104
123
100
138
100
109
178
122
92
84
99
140
105
130
93
84
114
105
128
86
91
99
139
58
58
119
74
122
156
101
74
138
89
92
144
119
99
58
105
56
109
122
79
98
111
91
152
140
92
134
110
146
188
110
140
92
117
110
92
37
122
79
101
105
169
126
140
106
126
122
165
126
92
67
92
122
152
79
92
102
165
83
93
109
123
104
55
58
138
77
97
100
110
163
124
138
122
126
115
146
119
122
67
123
152
139
119
109
122
110
83
104
111
105
95
108
169
145
123
124
92
122
92
126
58
123
55
134
74
122
91
129
55
104
110
86
140
111
122
93
56
158
79
86
94
126
169
111
104
79
158
178
134
131
92
56
103
105
123
92
122
104
138
93
56
92
91
110
102
67
79
77
144
144
158
126
119
55
77
138
37
37
69
134
138
138
107
112
110
127
100
146
135
55
126
68
139
126
146
86
127
99
104
77
122
118
55
138
58
169
79
178
55
105
69
67
37
105
83
140
103
126
75
110
123
138
135
126
99
122
92
162
80
122
178
152
153
55
146
123
122
123
99
91
92
99
123
126
104
169
37
151
56
138
138
101
188
105
131
169
139
130
131
107
171
93
152
58
168
105
122
96
56
100
74
92
89
177
84
93
111
144
92
122
124
126
84
126
104
152
67
105
178
156
69
122
107
81
81
58
110
91
160
138
93
136
180
128
104
37
131
152
93
84
67
103
55
123
102
91
91
56
144
127
139
97
126
144
124
110
93
67
152
122
99
91
127
74
126
109
182
105
99
141
132
139
104
56
126
110
169
107
126
122
55
69
98
120
110
108
92
144
138
126
74
100
145
138
138
97
138
139
55
105
92
77
134
102
119
58
109
55
105
152
126
110
79
55
127
93
109
93
58
119
152
105
152
122
69
128
91
58
99
105
92
110
112
134
119
68
92
102
77
77
58
55
104
55
91
107
103
119
128
124
93
123
93
74
67
105
120
139
171
92
122
131
92
93
146
140
109
86
136
92
119
105
122
107
145
92
104
67
105
56
178
126
93
122
55
138
128
76
89
126
92
110
56
91
144
122
92
37
101
178
99
100
123
119
77
103
67
73
127
126
75
129
149
69
93
105
55
144
92
122
107
104
168
93
69
69
55
120
140
86
74
86
124
105
97
92
122
130
37
93
75
123
139
93
79
148
111
138
178
84
162
69
138
58
93
124
58
79
146
144
138
105
92
99
124
55
55
138
139
114
98
86
93
178
67
126
126
109
168
137
126
102
55
122
122
55
126
147
64
102
178
107
144
122
55
111
158
128
68
58
139
125
114
69
55
152
126
122
92
58
119
37
119
123
124
67
139
68
100
180
122
56
124
86
119
98
110
71
123
178
134
105
104
105
97
79
117
199
169
105
110
135
105
164
55
55
109
109
92
55
83
122
144
92
95
86
126
152
79
124
112
178
92
92
126
124
79
111
168
58
136
138
122
118
55
92
68
119
139
55
105
93
122
167
122
67
131
144
55
94
97
56
148
107
93
86
97
162
146
107
148
122
152
126
93
67
103
146
86
144
67
88
134
110
92
117
126
55
104
58
37
65
56
110
92
55
110
93
79
139
110
55
139
110
124
69
162
67
101
104
67
141
99
107
56
140
139
114
146
58
131
171
97
86
97
55
127
80
178
105
122
169
127
104
104
91
56
134
69
110
55
92
93
92
122
67
104
101
56
119
67
126
122
136
169
104
169
74
92
110
144
138
83
104
113
110
104
162
124
104
104
69
127
37
109
68
92
92
111
150
55
126
55
105
123
122
105
130
56
77
67
152
58
106
90
105
138
55
126
58
102
127
117
120
92
169
152
124
92
105
92
92
169
128
110
56
111
110
129
107
56
56
119
86
134
122
77
160
86
67
111
79
122
67
91
74
103
105
74
132
110
91
92
137
77
105
122
104
111
126
86
98
37
92
126
148
122
104
110
178
56
144
92
75
122
104
92
169
86
104
89
92
37
104
77
168
74
199
83
67
119
55
128
148
107
134
178
79
104
92
92
119
182
145
138
122
92
101
111
146
126
119
103
55
79
122
69
74
105
110
104
148
128
67
56
79
169
89
105
110
55
130
158
37
92
93
55
69
103
92
146
132
74
98
105
124
137
67
109
111
126
138
92
92
101
56
131
107
105
128
127
178
180
171
74
91
86
144
156
86
92
77
110
122
122
110
75
67
37
105
55
140
110
83
69
144
138
105
67
119
104
138
110
141
115
55
37
168
55
74
98
121
119
92
109
127
127
111
92
137
92
37
122
89
67
99
55
67
145
55
127
124
138
83
134
69
111
67
100
37
128
83
122
67
37
156
83
92
138
134
126
77
74
178
122
124
163
142
37
104
58
127
126
56
115
111
58
146
56
124
122
101
114
92
79
111
120
92
109
123
81
126
97
119
111
92
119
180
104
134
55
163
92
109
119
67
37
130
144
122
67
110
104
69
109
110
104
67
178
163
122
97
134
146
109
113
178
110
102
103
67
103
115
178
139
169
149
101
110
180
67
67
138
146
162
93
55
74
77
130
139
92
120
92
127
148
134
98
137
169
163
56
69
111
114
105
92
156
139
110
126
138
103
105
101
126
112
92
178
104
138
137
99
122
169
55
58
107
139
122
105
107
128
104
138
126
83
98
55
95
163
104
100
110
152
67
123
110
105
111
148
56
55
110
56
104
120
122
55
64
79
138
138
99
67
88
105
37
105
86
55
105
67
91
89
109
149
37
158
128
67
122
69
144
146
55
127
92
69
146
122
37
55
127
69
74
69
55
79
138
67
37
128
109
107
55
178
134
128
55
56
164
67
88
105
117
103
104
128
144
130
122
92
37
138
74
126
141
56
92
93
55
84
93
55
105
110
138
107
120
119
102
132
127
119
37
78
178
55
84
104
112
178
56
162
103
92
110
178
105
93
92
92
119
99
92
168
98
92
55
56
109
86
77
77
128
98
99
93
110
110
92
167
101
126
67
56
105
139
55
108
56
86
168
75
56
86
178
104
167
56
123
144
127
111
126
95
122
140
106
79
103
77
37
122
37
145
67
67
140
114
110
132
104
56
178
58
83
56
107
77
93
69
109
104
144
113
67
144
122
114
188
112
138
139
139
110
107
111
119
134
168
67
105
107
134
140
139
110
104
74
126
130
162
100
118
119
106
126
131
69
104
107
123
93
104
126
104
92
56
37
79
122
178
110
92
131
41
146
180
77
123
86
69
100
122
122
123
127
127
122
68
144
37
152
55
92
56
104
67
92
86
104
55
139
107
120
92
144
119
169
93
138
55
55
134
150
92
110
56
104
69
168
97
105
107
67
158
98
105
56
56
178
177
138
122
122
56
67
58
152
55
67
169
95
92
92
144
120
109
69
58
55
97
138
127
105
158
110
79
103
93
105
128
124
169
134
67
108
139
69
55
163
91
107
136
123
105
105
92
144
110
55
104
92
92
122
93
139
124
102
56
67
107
104
93
127
114
67
168
125
138
105
169
178
67
122
55
105
37
144
126
146
74
67
91
37
114
146
77
107
87
128
104
158
180
110
144
74
92
100
91
92
92
122
139
92
104
79
144
110
178
92
150
123
126
74
92
138
110
127
152
56
103
55
127
67
77
55
137
97
127
138
56
111
109
55
99
92
148
110
97
122
127
95
97
121
77
122
132
73
128
96
126
146
192
119
169
92
74
93
55
77
114
127
68
107
72
140
92
107
55
79
148
144
122
92
117
126
127
104
58
56
140
181
169
134
128
55
152
126
140
105
178
84
55
93
169
110
144
122
105
104
140
101
104
122
138
56
178
92
126
69
55
109
89
146
126
92
152
92
79
56
138
104
152
144
92
178
128
114
105
67
56
127
135
67
79
86
126
126
55
56
106
126
123
99
126
99
88
138
119
110
55
163
77
119
99
110
129
138
199
92
122
104
110
79
56
162
105
100
126
56
58
105
67
55
110
138
139
83
105
124
93
124
96
116
140
101
169
139
148
103
138
169
58
126
130
55
152
105
91
79
146
104
126
88
128
58
89
104
68
75
110
110
132
111
138
58
122
93
146
111
105
126
139
93
139
152
127
110
67
55
122
178
75
93
93
111
111
124
109
92
140
178
84
142
128
138
178
109
110
55
105
74
103
122
139
103
74
37
107
105
127
135
126
126
92
122
55
105
69
132
104
91
130
69
119
92
134
132
74
105
102
110
123
119
110
55
55
92
122
162
80
37
67
144
124
102
122
69
55
105
67
163
67
84
92
120
98
55
122
98
92
55
110
148
126
146
152
144
92
37
77
122
80
178
163
123
100
91
107
122
146
55
107
104
37
129
165
67
148
104
162
99
69
101
56
139
122
114
138
132
92
126
152
132
92
139
98
130
146
55
127
127
119
92
122
111
104
118
122
107
140
79
169
127
67
138
100
74
140
91
77
126
197
167
67
91
130
84
168
141
122
122
137
103
137
122
138
122
58
68
55
126
110
110
92
144
74
87
131
56
97
123
122
111
105
137
83
92
156
122
122
128
126
92
92
107
169
92
126
92
110
127
128
77
67
107
156
86
109
67
178
178
127
136
92
55
56
55
92
152
114
37
152
83
128
118
152
192
97
104
105
148
124
105
111
106
106
67
99
122
139
56
103
55
92
110
146
110
146
67
58
147
139
156
122
97
104
146
131
178
56
127
92
123
91
104
178
89
127
171
138
55
163
144
178
76
122
92
105
152
94
138
108
104
107
86
139
140
79
78
55
126
55
178
105
79
162
122
68
74
89
111
119
105
118
92
97
67
92
80
79
162
77
126
135
93
111
110
93
126
69
122
162
132
126
83
69
79
91
139
102
117
128
146
56
128
128
74
91
93
110
123
138
86
105
88
110
134
110
55
104
86
69
55
138
55
110
110
139
77
55
103
67
144
128
95
110
37
128
75
69
111
134
127
93
132
102
128
93
110
144
138
134
103
92
126
56
91
111
123
122
122
75
37
103
128
55
83
127
120
92
138
120
79
122
122
152
138
114
144
117
83
109
105
75
92
171
128
144
127
104
104
99
55
79
104
81
138
92
97
97
111
132
80
138
122
105
146
98
104
75
132
145
115
122
92
171
104
84
123
150
124
132
110
58
123
55
77
37
87
123
110
122
122
88
120
152
77
113
126
56
77
109
109
37
91
104
92
37
138
58
144
92
123
169
55
93
55
98
109
119
93
37
122
139
138
98
130
106
93
104
111
105
67
109
107
134
126
77
55
56
95
55
122
56
91
92
129
92
134
93
83
55
67
109
92
127
69
132
69
109
144
130
77
55
99
115
128
128
55
111
106
79
93
126
122
128
158
178
97
56
178
126
145
111
105
139
95
79
152
101
103
147
169
138
105
134
58
37
99
56
119
69
105
180
139
110
152
144
146
55
178
92
83
138
124
147
126
92
104
119
67
67
92
105
75
74
104
93
127
110
75
109
92
109
104
146
103
177
152
139
169
155
104
110
97
138
123
124
55
146
104
91
123
75
104
101
92
105
160
137
55
77
119
55
138
122
37
140
75
92
92
114
69
122
92
146
142
83
67
91
117
99
92
123
167
86
110
103
55
126
158
132
55
110
131
148
139
138
132
110
81
84
110
140
126
152
75
120
160
124
111
178
119
99
122
103
139
92
152
126
55
122
55
37
67
138
37
109
119
37
81
111
77
68
107
92
98
126
123
163
123
171
58
138
138
56
122
75
92
169
91
126
91
92
58
92
105
56
105
93
92
126
127
124
91
114
138
126
67
112
58
104
122
56
138
55
67
110
74
178
56
122
81
125
97
41
93
74
67
128
134
109
101
105
69
134
105
86
119
67
55
67
106
178
114
131
56
105
67
140
104
37
92
111
110
144
124
158
68
127
56
104
69
67
56
56
128
178
126
93
120
110
83
138
92
138
105
140
108
139
110
122
55
56
114
55
123
110
117
164
127
122
115
106
68
148
146
55
110
104
83
126
99
141
171
92
75
68
158
144
74
126
89
129
130
178
75
98
92
178
83
110
84
56
132
58
178
78
104
103
110
178
75
74
92
146
74
99
122
105
108
56
104
144
99
99
158
67
139
114
122
134
58
86
123
107
148
83
92
111
108
138
55
146
126
127
79
139
99
112
178
104
67
99
67
92
92
91
139
134
152
69
118
67
152
109
169
56
130
126
93
85
110
37
122
37
110
104
188
104
105
138
110
37
137
110
105
114
120
139
118
145
149
56
93
138
110
37
56
178
100
99
92
56
92
180
169
92
105
165
93
87
128
97
128
78
119
139
55
92
79
92
152
58
138
67
75
110
92
55
127
67
55
92
77
119
98
67
104
105
93
100
74
37
134
56
74
77
55
139
104
93
67
110
67
122
199
169
92
152
69
58
104
67
93
146
93
93
100
119
126
119
86
109
122
131
138
140
92
140
112
104
124
137
126
92
67
132
91
55
93
126
130
104
110
114
110
178
122
110
124
58
122
67
79
99
37
83
105
56
128
55
122
122
138
55
169
124
122
122
111
56
79
55
178
91
92
164
74
134
93
92
92
37
94
91
146
105
122
127
122
79
106
41
111
126
107
128
55
92
119
99
145
92
162
92
58
122
107
56
55
178
139
126
92
37
136
169
126
110
146
92
119
68
56
169
111
55
93
89
128
55
135
92
109
138
178
93
99
127
92
110
109
92
115
67
99
102
160
67
105
139
104
122
37
139
103
110
105
111
126
67
126
128
77
98
111
104
105
67
134
74
69
84
86
121
110
105
99
69
110
92
128
119
100
122
98
139
92
152
146
122
135
128
104
99
131
140
107
178
111
67
37
146
144
110
110
168
105
144
83
75
102
178
105
69
103
122
55
163
122
56
86
92
115
105
126
58
119
104
69
128
139
92
126
74
91
74
144
144
86
69
92
146
126
104
91
144
122
164
139
105
80
74
67
144
55
86
93
37
139
139
178
138
127
128
68
92
178
122
126
111
140
168
75
110
111
55
55
105
58
55
111
146
84
104
117
97
126
55
105
178
92
111
111
136
126
126
118
110
140
122
92
126
93
144
148
105
105
148
124
139
37
84
138
180
110
67
160
110
110
144
129
86
75
89
74
126
55
79
138
126
131
104
131
138
122
41
139
110
58
77
37
111
86
105
145
126
126
163
55
92
140
77
55
117
162
109
55
152
126
107
146
118
128
81
104
110
152
111
107
146
126
67
92
139
122
86
104
123
69
103
110
56
126
138
104
138
109
92
69
86
77
148
119
81
122
97
114
69
109
93
148
37
117
92
152
77
197
79
138
104
127
160
137
140
120
67
130
139
111
108
119
105
119
127
110
144
105
126
122
95
119
111
109
122
92
140
104
110
56
122
79
69
117
92
55
127
55
58
97
124
118
86
93
105
138
104
86
75
55
104
165
128
110
100
92
75
109
122
136
77
105
122
119
110
110
128
105
104
74
68
79
122
92
93
56
79
104
37
103
137
105
67
118
105
120
37
134
119
106
128
58
128
37
127
92
98
92
136
56
37
74
91
152
120
92
93
93
93
122
92
58
110
169
127
122
127
109
158
105
109
149
122
171
103
178
69
144
77
117
55
126
56
37
104
134
188
127
91
122
67
56
126
69
98
122
84
105
86
92
92
74
122
110
114
136
69
69
55
152
144
84
69
122
138
104
91
105
188
169
109
74
104
110
138
56
131
105
125
105
92
110
55
108
146
79
105
85
77
152
106
74
110
146
101
126
104
92
92
92
79
109
67
55
110
141
138
92
55
117
56
126
126
67
94
145
92
168
126
158
105
127
93
120
55
122
74
122
110
107
105
102
109
67
106
152
92
95
86
67
69
163
95
102
137
92
86
103
119
104
178
37
77
92
178
69
92
119
92
113
93
110
58
55
92
55
69
126
56
148
92
169
122
55
92
75
105
120
144
178
159
86
152
100
93
138
119
55
67
78
120
37
138
110
146
79
56
67
111
134
37
123
128
122
127
93
69
79
127
93
119
92
92
86
104
110
119
110
110
67
55
152
69
119
138
117
138
105
74
91
56
138
77
56
158
77
95
140
92
144
92
126
178
136
105
144
126
128
88
67
122
69
105
105
92
105
138
94
148
119
126
91
92
122
122
77
58
129
79
69
148
92
102
128
165
93
37
137
126
109
56
128
79
135
88
120
130
80
122
110
92
126
178
105
79
86
101
169
169
122
92
74
163
86
55
58
105
178
55
110
105
84
126
138
179
106
126
152
105
117
107
91
128
136
92
83
103
55
128
123
109
105
37
163
56
107
127
77
92
122
93
79
152
58
55
180
122
84
127
105
101
127
37
126
55
114
132
126
152
98
92
178
139
67
122
128
87
104
110
110
110
105
104
123
92
78
58
110
126
138
115
93
58
178
138
178
128
110
75
108
110
78
126
97
126
126
110
75
55
77
55
37
163
178
138
145
126
111
139
92
104
75
168
105
99
110
110
123
92
126
124
121
37
128
92
162
134
140
92
58
109
111
110
93
110
122
58
120
77
123
74
139
69
55
86
58
104
101
119
93
163
171
56
74
122
92
105
79
169
58
103
55
55
99
74
139
69
92
171
122
106
110
126
137
110
67
117
104
105
136
169
67
108
67
94
142
87
146
139
144
69
55
138
123
138
92
37
93
92
92
153
137
123
105
78
104
99
110
118
119
41
152
92
134
106
167
113
139
74
146
92
122
92
93
126
137
84
126
110
152
75
144
138
106
178
104
122
93
178
105
104
55
110
104
80
152
134
104
107
180
152
55
67
107
104
146
92
99
139
169
91
122
89
97
81
128
55
129
126
69
92
55
77
95
55
178
68
67
95
171
77
105
105
138
67
75
111
92
142
160
91
69
92
126
104
79
132
112
56
146
125
107
105
56
95
122
110
83
126
58
74
129
115
122
138
75
92
123
105
69
109
91
109
93
58
119
138
134
110
122
138
92
144
127
56
83
146
111
97
134
144
136
138
138
104
67
105
117
105
138
122
67
92
58
74
99
126
164
122
126
104
124
143
110
127
69
64
93
126
92
37
122
104
55
120
126
126
126
165
102
139
169
104
105
104
105
134
92
126
86
118
55
55
93
91
152
78
84
152
146
104
55
69
122
121
119
105
103
118
146
97
74
158
67
105
112
139
122
107
168
178
144
86
104
111
104
108
137
120
93
69
58
68
152
138
97
58
138
127
146
80
119
37
105
178
146
104
126
124
178
77
37
130
99
110
91
67
105
160
140
67
91
105
67
93
138
163
123
92
92
127
126
58
58
55
69
92
122
138
79
164
103
105
75
86
93
104
114
115
168
124
118
106
103
73
110
55
92
91
83
37
109
109
92
69
112
110
126
98
156
92
67
158
111
128
117
138
92
134
56
69
118
58
178
148
139
92
136
93
37
91
158
111
67
93
128
105
115
77
92
138
92
138
86
163
55
188
55
103
87
139
127
86
104
139
139
55
178
92
143
124
140
98
178
148
99
152
55
77
110
146
94
75
138
78
104
92
104
127
67
134
104
111
92
99
126
93
114
92
171
131
67
68
92
112
92
105
119
67
84
92
162
92
127
92
92
126
55
105
110
55
86
92
122
122
124
92
122
110
91
103
97
55
122
37
126
95
93
148
104
124
55
134
178
178
86
107
105
37
77
110
91
103
104
111
130
92
67
92
75
80
92
78
75
118
111
124
139
110
55
106
139
55
75
55
178
86
67
104
37
83
89
37
92
169
178
92
92
117
92
104
162
165
178
107
111
126
169
163
75
107
178
92
55
67
69
56
188
122
138
146
105
91
168
124
182
75
105
69
112
122
109
97
111
151
138
110
103
147
126
138
107
110
140
92
139
92
118
67
126
171
69
123
37
55
119
123
104
138
104
122
109
111
88
122
103
127
58
151
79
139
110
93
169
93
67
130
108
80
178
138
110
105
98
139
104
122
126
162
91
105
139
152
146
93
101
126
105
92
55
119
100
113
126
124
139
126
105
98
88
144
55
163
55
145
106
164
55
104
139
163
134
67
79
69
92
55
55
86
127
142
92
122
105
92
37
139
86
92
74
119
126
74
77
105
138
127
105
98
146
114
178
110
100
126
91
122
104
139
103
74
109
92
124
109
112
91
152
137
92
152
93
114
110
77
58
144
140
122
122
55
109
109
116
144
72
83
37
122
152
79
148
169
55
126
144
75
138
93
106
128
95
127
107
58
102
141
178
110
103
130
56
92
110
105
55
37
110
115
110
111
169
138
122
75
158
119
55
92
124
108
135
100
136
126
106
93
144
92
93
127
94
86
122
67
114
122
58
93
163
138
110
126
92
37
139
95
126
139
92
99
140
146
104
109
118
144
122
89
146
138
37
86
99
55
119
178
146
146
122
106
55
112
169
80
127
92
122
92
123
91
122
55
67
55
104
75
171
104
67
105
58
92
104
74
92
88
92
139
123
89
124
105
92
106
56
55
89
127
127
168
58
104
55
55
178
168
67
127
55
55
168
139
163
114
192
137
123
150
110
114
139
103
128
152
122
124
144
138
115
138
192
149
99
142
98
37
37
55
67
111
122
111
55
67
105
145
79
114
93
124
77
122
144
37
68
67
92
111
126
67
144
111
93
104
178
117
68
127
129
139
126
69
56
123
167
126
139
92
119
99
126
58
87
157
126
91
55
123
122
68
92
67
37
79
126
106
77
126
189
86
68
111
110
104
114
56
107
55
146
128
134
92
103
110
92
77
93
55
178
126
99
104
178
171
97
83
146
142
139
118
109
134
160
169
126
120
160
92
93
99
93
110
160
148
110
138
137
126
129
120
86
83
55
93
127
138
91
37
126
139
110
92
98
92
127
93
92
92
104
168
105
103
126
110
69
146
127
138
153
146
126
97
92
93
92
81
128
104
86
113
37
122
81
111
127
67
199
119
95
67
126
106
100
122
144
91
178
122
79
93
122
93
101
67
93
119
67
69
110
55
37
119
55
178
127
92
103
139
126
55
119
80
84
91
138
139
79
131
152
149
110
124
105
105
55
126
178
110
144
74
86
123
101
110
122
79
100
124
128
77
67
105
121
123
92
110
56
93
139
118
126
110
110
122
108
140
144
122
92
86
105
93
69
75
127
105
92
98
128
86
163
83
95
58
77
144
105
127
126
104
103
94
128
107
102
162
74
104
93
122
92
124
145
100
55
107
104
93
55
144
75
84
91
64
107
123
103
122
110
119
67
68
124
146
55
74
73
110
110
138
111
86
109
178
164
126
137
150
91
138
77
110
115
92
144
122
146
104
107
97
77
88
92
93
56
171
67
137
97
127
67
137
56
123
122
105
146
92
74
55
127
124
99
56
77
105
79
122
122
138
119
58
125
144
126
126
92
105
129
58
92
111
77
126
107
119
55
69
138
56
92
113
110
58
79
55
67
67
171
92
67
168
88
83
146
126
58
110
139
37
126
171
127
138
83
105
126
127
103
122
86
79
132
92
103
104
92
144
122
132
74
77
123
139
128
104
67
109
75
110
148
165
126
122
138
148
110
116
99
102
127
101
136
138
138
126
178
146
169
120
125
102
55
93
144
55
99
55
93
89
92
160
56
37
138
131
122
55
93
99
75
171
111
58
122
126
162
136
125
178
104
123
110
122
37
127
139
128
146
122
122
92
104
128
122
56
148
132
69
67
129
92
119
77
142
128
109
55
105
58
102
178
123
56
111
110
127
103
92
105
92
55
84
93
107
112
146
55
92
67
104
74
144
138
122
100
83
129
139
92
160
169
67
83
67
69
104
152
126
99
92
79
55
152
92
119
144
92
171
95
139
132
104
144
91
55
104
111
163
56
99
178
55
144
97
148
106
69
152
99
80
158
56
160
56
105
67
67
127
138
58
104
139
91
89
139
98
164
128
92
55
136
55
116
55
56
138
180
128
122
37
106
109
126
105
98
124
55
86
92
126
124
55
84
148
122
138
178
105
55
106
92
97
77
114
139
93
122
92
110
77
138
99
128
89
105
122
55
105
167
108
126
127
124
140
110
110
55
139
104
67
126
140
126
92
99
102
103
169
138
92
150
122
117
92
128
67
122
110
74
119
125
126
139
110
104
106
103
58
98
84
92
103
74
107
56
127
109
79
117
55
97
67
126
112
136
152
171
105
93
199
127
138
74
178
145
104
75
144
105
55
93
77
110
141
103
81
178
134
103
128
67
132
37
178
67
123
77
37
110
92
55
55
122
100
119
130
163
158
78
55
122
56
122
77
138
91
67
127
56
92
123
116
91
79
104
139
104
98
130
92
130
111
104
109
55
58
104
91
128
108
95
85
162
67
126
81
136
138
110
81
126
197
169
128
178
58
92
138
169
128
74
98
134
58
123
138
111
127
104
148
67
127
37
103
92
67
102
165
92
162
112
122
178
92
37
169
126
98
83
126
126
56
110
55
122
67
109
120
67
105
144
74
86
67
127
92
122
103
67
111
115
180
131
55
123
37
121
58
88
107
67
178
55
139
122
131
67
56
131
74
55
86
104
129
37
93
110
126
122
177
92
55
105
124
56
130
130
104
105
137
126
91
69
69
163
122
95
178
37
110
131
92
58
122
124
86
84
76
122
92
127
127
92
94
97
77
69
126
152
111
55
105
152
111
123
100
92
152
112
37
148
105
110
126
171
103
128
126
37
55
86
120
140
127
128
110
110
104
122
58
122
55
168
89
104
152
126
111
79
96
107
122
86
107
122
106
93
55
93
93
123
105
84
162
79
114
122
123
91
103
55
111
111
110
138
128
178
93
122
81
37
99
122
123
103
88
122
83
126
123
110
104
122
111
67
104
122
118
122
122
124
162
98
142
114
55
197
105
119
122
69
111
95
136
108
55
104
126
152
103
75
79
86
146
171
104
92
111
92
122
91
92
119
139
83
56
110
92
132
92
127
55
69
77
110
171
128
93
126
111
55
140
111
168
139
127
127
163
55
134
69
110
105
108
105
146
105
55
105
69
110
163
105
69
92
122
144
119
132
144
127
92
123
146
146
104
124
83
126
138
55
138
112
100
67
122
99
110
123
126
118
92
69
178
67
55
77
139
56
126
131
109
127
55
130
126
127
91
79
37
126
139
139
122
92
55
56
105
75
97
128
163
105
55
144
152
138
104
56
136
123
103
92
58
107
110
100
67
75
109
79
107
104
98
126
147
78
92
58
56
95
122
37
138
67
144
126
178
93
139
86
139
178
115
178
37
146
98
105
128
165
106
126
152
137
139
77
126
91
127
110
88
122
55
105
122
114
55
55
102
72
128
112
137
105
120
58
91
74
139
169
104
93
122
68
105
138
122
146
127
144
134
98
122
139
138
126
74
138
92
178
138
56
152
169
69
79
137
105
126
158
144
103
69
92
69
120
92
55
105
139
120
74
101
126
105
92
119
94
126
55
92
125
139
163
130
152
55
74
74
138
126
120
126
55
138
93
171
105
75
37
138
146
89
92
56
55
86
158
110
122
86
107
127
158
152
138
118
109
69
140
93
122
55
111
127
98
93
69
92
99
146
105
146
86
105
105
112
169
105
55
132
55
93
58
92
88
55
83
139
58
55
129
146
128
138
99
126
67
106
104
92
67
92
91
122
100
108
69
147
130
93
123
146
92
92
55
148
98
105
171
85
105
55
77
131
98
91
56
67
152
126
171
104
99
138
99
56
67
140
97
55
131
138
107
119
169
123
105
92
93
92
107
110
122
105
97
128
93
126
75
105
171
110
102
58
58
105
88
92
92
110
139
56
67
110
152
127
91
92
126
69
41
110
122
55
168
69
152
104
138
126
192
55
107
150
140
148
69
67
134
146
92
121
103
67
128
110
37
127
92
92
105
95
169
137
105
126
178
126
92
125
126
109
107
55
128
105
111
103
92
96
124
86
115
148
91
78
79
74
92
79
126
106
83
152
128
178
122
37
92
110
138
93
146
131
103
101
124
123
92
138
138
55
95
86
107
79
119
98
139
69
122
107
100
92
94
99
93
67
101
169
139
92
163
122
55
169
109
152
144
142
99
98
75
123
104
94
55
104
138
140
126
92
105
110
134
105
105
89
147
137
83
93
95
105
92
83
132
180
102
58
127
69
104
105
92
148
137
139
127
123
107
109
126
77
122
56
106
112
138
37
93
104
122
55
139
126
117
67
93
58
145
55
128
139
92
92
69
178
79
126
119
93
92
131
146
56
138
91
67
122
139
122
139
55
55
138
55
101
78
123
55
92
55
127
100
138
110
98
55
130
86
120
119
100
105
158
105
105
148
104
152
58
92
37
69
67
140
126
138
123
163
123
139
124
178
92
110
119
77
55
139
138
68
127
178
92
126
110
119
75
108
110
131
126
75
123
123
92
110
105
92
148
83
99
105
127
134
67
105
56
74
146
144
105
118
138
126
92
55
104
37
55
92
138
104
110
178
139
144
68
122
122
105
56
55
131
123
140
140
138
130
127
104
37
103
145
55
67
37
120
104
58
55
86
138
178
171
105
139
122
139
124
91
139
178
131
55
126
136
140
92
138
67
92
74
55
69
111
123
92
55
105
126
126
136
144
111
104
123
130
37
111
101
92
56
138
83
123
56
105
58
97
86
112
146
99
89
86
67
55
56
127
168
144
93
37
55
93
180
83
134
152
122
169
77
37
122
56
110
138
56
123
93
67
114
110
122
68
152
93
105
123
101
107
130
107
58
93
111
178
145
127
112
117
110
122
58
110
122
178
67
91
55
86
136
75
79
68
138
106
122
92
124
168
92
134
114
138
109
83
104
37
128
122
138
169
55
92
92
131
92
126
104
98
144
55
122
67
91
122
130
107
93
110
78
86
152
122
120
123
92
89
56
92
68
126
105
132
91
99
167
89
92
77
104
104
138
165
123
67
105
109
97
122
122
123
132
131
55
110
95
116
138
126
110
104
122
126
92
110
88
80
37
105
139
86
158
126
118
126
99
104
100
55
137
106
123
110
149
86
92
138
55
110
160
67
67
77
158
122
74
101
92
79
123
92
122
144
89
127
104
69
124
122
122
169
123
152
110
105
144
128
169
119
144
123
93
145
134
126
79
123
122
148
124
147
162
105
37
119
83
92
105
57
93
133
37
107
105
104
78
56
138
111
169
92
110
122
91
178
81
92
92
122
93
182
171
92
105
124
83
127
67
109
93
139
92
55
169
58
127
81
55
144
69
110
93
58
122
119
68
76
56
138
58
80
124
79
104
138
110
124
67
76
122
92
93
162
110
102
142
137
105
75
104
122
122
164
108
92
104
111
91
67
67
105
110
67
110
104
178
152
92
128
105
112
158
171
123
67
55
151
92
99
109
127
92
91
135
110
55
153
99
67
55
109
99
104
123
93
69
112
128
178
126
92
146
103
110
162
96
132
115
105
111
138
127
107
104
103
37
126
58
56
99
138
178
123
139
99
99
178
92
55
123
55
79
109
67
56
56
127
132
84
117
55
165
37
165
139
69
126
148
93
79
126
91
55
139
105
68
98
92
86
105
58
55
56
67
162
104
37
55
55
131
138
69
83
134
58
180
37
55
110
58
92
132
68
92
178
64
86
148
119
92
75
91
126
105
93
127
55
163
128
130
67
135
138
55
105
130
178
75
79
134
122
124
126
182
128
72
76
139
37
178
136
109
105
69
55
56
128
86
56
127
104
58
132
84
105
127
126
55
127
127
92
93
110
146
134
109
99
120
134
89
178
148
127
138
132
93
169
128
139
104
78
122
91
138
37
169
128
56
188
140
86
144
96
92
58
58
106
103
168
124
56
67
77
126
138
110
122
127
114
144
111
138
180
56
58
136
110
95
68
126
110
79
114
58
96
103
103
127
122
140
122
99
55
105
93
93
110
122
145
69
122
68
127
94
86
140
92
117
56
67
55
37
139
142
169
146
105
84
145
55
162
152
91
68
110
122
112
55
131
139
138
111
137
67
124
111
124
105
126
69
178
97
92
93
136
100
112
105
130
126
103
136
110
152
128
140
93
92
149
119
148
37
128
107
123
111
126
136
104
106
105
94
109
110
127
136
92
144
93
111
123
56
134
105
79
92
104
83
108
128
122
110
86
139
104
140
152
107
100
122
109
152
99
111
110
120
110
56
197
91
122
126
89
130
55
74
122
107
55
69
140
119
138
55
92
93
92
103
162
178
122
127
95
105
124
91
139
118
138
144
111
122
100
93
55
92
119
136
122
138
144
178
119
104
178
75
58
119
69
99
92
164
92
129
111
118
126
104
130
93
165
107
67
122
56
55
99
55
130
105
127
100
55
84
97
101
67
120
169
140
138
77
122
126
144
37
121
139
93
110
37
55
92
131
145
110
115
122
152
101
99
67
99
124
100
108
69
67
146
94
131
144
110
69
140
131
58
120
103
129
110
67
37
105
89
56
58
139
139
101
69
103
93
111
127
131
162
67
105
67
69
37
93
99
56
55
105
138
74
128
99
80
119
124
104
86
56
55
37
96
55
131
128
69
132
37
74
105
169
86
93
117
74
104
56
37
97
110
91
108
127
105
55
123
152
147
92
107
109
122
138
56
74
104
67
120
108
108
122
93
122
135
99
56
178
67
67
100
91
169
79
144
104
55
91
92
69
69
92
126
77
67
139
122
122
178
138
55
138
139
127
55
139
86
92
156
58
103
68
69
139
144
144
169
148
67
137
110
93
171
138
134
37
110
89
99
86
67
92
127
56
101
69
178
110
124
67
171
146
114
92
126
37
126
92
37
105
109
55
92
107
126
101
178
146
132
110
139
92
136
114
138
112
37
140
55
139
123
104
93
92
67
56
126
126
107
158
122
92
146
104
93
139
112
122
86
109
55
75
146
112
134
138
123
88
141
134
86
132
56
79
37
140
84
134
107
126
83
83
95
69
86
56
139
79
55
37
135
92
178
127
92
56
152
122
178
122
105
122
92
128
131
103
92
67
108
109
55
92
110
105
139
138
140
91
103
140
131
140
100
67
110
180
37
122
58
114
55
122
104
74
110
122
128
128
134
139
108
92
110
148
146
139
97
168
128
81
110
55
111
55
127
126
119
77
126
144
92
138
110
123
122
55
74
77
110
58
94
106
171
127
105
107
123
107
67
163
37
138
105
152
80
131
55
110
158
105
140
99
100
37
118
58
141
37
56
105
93
56
58
78
152
55
120
79
37
58
164
126
107
131
107
139
89
140
92
128
84
122
55
56
67
141
138
146
67
67
138
92
124
104
69
162
139
92
169
111
67
55
153
55
55
127
75
139
111
67
122
126
144
67
37
77
167
104
111
110
126
110
119
92
93
122
152
110
122
137
98
122
126
102
109
109
74
105
126
67
139
75
128
138
111
55
118
146
110
92
136
148
55
67
118
92
94
56
110
92
126
118
86
92
152
84
105
104
122
136
91
127
56
122
92
93
110
130
126
55
138
108
110
118
156
93
92
162
69
109
127
122
92
122
74
110
142
37
119
104
158
135
81
139
138
84
121
95
139
103
132
127
55
131
105
168
139
128
137
119
109
79
138
104
77
126
131
79
92
123
69
152
92
111
93
37
93
103
110
118
110
178
67
129
111
110
37
139
37
126
83
58
86
79
126
122
178
134
124
111
93
56
68
169
55
145
37
91
105
75
138
126
91
101
138
104
74
105
138
86
104
56
122
67
139
139
144
107
58
152
148
92
140
92
69
102
105
56
132
114
111
140
81
72
102
95
123
104
119
56
119
110
115
110
122
92
169
107
115
121
136
169
105
92
144
178
105
152
110
131
138
105
56
56
55
67
123
128
104
139
69
58
78
171
103
122
92
92
105
75
126
92
122
56
136
104
95
67
55
138
110
98
152
144
132
92
126
92
99
139
55
123
108
55
97
56
178
130
152
148
105
114
98
120
106
144
120
122
122
93
119
107
106
91
128
127
114
130
118
135
55
143
139
112
114
127
67
93
109
163
67
144
74
120
128
127
79
55
126
67
84
141
111
86
104
79
139
58
69
132
75
119
92
123
93
110
158
93
152
55
152
105
105
122
110
138
125
99
55
55
100
119
73
105
105
83
92
138
109
79
144
37
74
92
127
67
91
139
122
104
105
55
144
86
110
127
126
127
126
138
67
108
146
140
56
67
69
139
56
142
109
105
74
55
126
124
171
178
171
92
67
122
148
138
104
75
102
138
171
105
138
77
91
122
110
98
119
137
108
88
140
128
98
134
108
168
178
98
126
122
127
86
132
101
108
139
91
122
178
99
128
118
55
75
68
109
93
123
105
67
122
77
126
109
79
58
93
58
138
111
143
101
110
77
114
55
105
105
93
105
104
118
131
126
110
56
145
162
152
55
74
55
92
67
69
92
110
109
97
58
58
99
134
92
55
103
126
55
68
123
126
139
140
144
120
132
91
168
93
78
126
104
37
56
122
92
119
104
127
92
126
64
93
111
104
134
108
67
128
110
138
105
111
55
88
107
77
131
37
67
91
122
138
138
134
77
136
105
109
146
101
111
56
112
117
119
108
122
97
119
169
79
126
168
86
105
110
138
126
103
122
110
37
140
146
55
67
127
126
109
89
97
126
134
92
111
37
149
138
77
144
91
104
167
139
152
88
100
126
86
55
83
138
152
140
101
92
94
122
93
122
119
93
127
102
126
144
86
68
120
67
138
97
109
122
109
104
122
119
196
104
134
122
122
104
56
110
69
110
110
58
139
91
138
134
112
92
56
136
67
124
79
37
86
122
77
68
103
105
106
67
56
106
55
178
182
124
105
103
56
92
126
56
92
110
107
148
178
171
74
105
55
92
92
122
37
56
105
163
122
104
104
74
127
103
110
67
178
107
103
92
119
92
127
146
178
148
79
144
110
126
56
124
67
103
105
122
92
109
127
127
37
86
92
55
128
56
58
69
152
131
126
81
109
73
58
139
93
122
138
92
109
119
121
146
99
99
139
56
102
122
104
146
83
111
105
105
97
55
92
110
74
124
122
108
95
123
127
104
152
127
37
110
109
99
86
138
126
37
123
58
130
138
122
158
88
129
55
127
55
75
105
67
110
122
178
105
144
67
124
37
137
84
93
110
67
100
56
89
37
110
164
138
102
37
92
67
97
178
101
160
126
138
105
144
119
92
86
105
79
105
99
69
152
93
115
126
91
119
128
124
58
55
137
92
79
163
138
123
69
111
139
77
110
92
135
122
144
93
119
122
178
102
123
122
37
67
109
86
69
92
148
126
158
76
79
110
37
122
96
123
163
126
113
123
144
110
178
58
107
139
128
37
105
105
144
55
58
118
110
92
188
75
144
130
74
55
123
105
55
68
67
92
92
109
134
100
115
138
114
67
75
126
58
123
145
110
58
108
92
104
105
105
37
122
79
67
123
69
74
104
99
69
140
122
123
92
144
93
58
91
100
91
126
93
99
92
74
117
64
55
37
122
77
164
105
109
146
74
92
37
58
138
122
99
92
84
110
138
110
91
92
171
92
99
129
128
92
110
148
126
92
178
67
127
138
138
92
111
91
104
83
97
126
91
126
146
105
105
92
107
163
158
104
120
74
110
125
122
164
126
77
58
56
110
92
104
111
37
79
55
126
69
110
92
145
126
105
58
67
92
101
178
119
67
152
147
110
99
97
58
85
107
104
126
55
92
127
105
92
89
105
56
110
123
77
37
122
99
91
69
55
74
182
67
56
105
104
86
178
146
122
86
138
58
110
86
74
122
103
158
127
160
37
92
93
58
67
148
122
146
168
102
138
160
178
91
163
113
58
92
122
180
126
91
122
144
142
92
101
67
107
122
123
56
140
122
123
140
105
93
119
138
110
84
93
92
168
140
83
92
105
178
105
114
92
124
55
93
87
105
171
104
55
138
92
123
122
112
112
104
126
92
81
114
136
182
138
110
126
127
74
138
93
106
132
122
137
126
111
110
104
67
109
105
98
67
69
99
79
93
79
120
128
158
105
109
69
128
55
123
110
68
107
199
92
130
144
109
122
67
93
101
86
110
92
165
107
126
152
111
110
98
92
105
152
98
56
171
67
122
128
169
110
105
126
85
105
75
93
122
67
136
122
123
74
107
110
55
129
69
74
107
79
110
92
110
146
122
55
104
110
127
127
110
140
168
55
178
86
104
109
180
122
112
74
113
67
92
91
55
55
160
123
105
104
114
178
168
76
98
56
138
67
178
139
92
110
92
110
132
55
148
55
125
104
67
152
127
114
134
105
109
37
67
110
122
124
56
180
67
111
92
93
79
91
108
110
134
105
118
67
37
126
122
168
78
110
123
139
105
110
167
177
134
127
107
110
150
106
130
68
114
97
178
101
37
126
75
107
142
160
86
122
92
126
122
67
148
79
56
106
138
127
67
104
92
55
100
138
74
134
111
123
92
69
119
109
37
119
126
139
92
110
144
91
134
69
74
56
83
69
132
149
119
112
122
67
126
139
122
122
93
67
77
105
68
99
86
127
123
180
122
119
67
101
138
110
37
83
89
84
127
109
132
55
55
126
146
149
104
139
86
105
152
105
139
123
119
95
55
79
92
67
58
134
91
101
58
55
146
122
148
93
137
122
145
92
126
139
91
111
135
138
83
92
134
74
55
178
110
58
171
110
104
104
56
122
135
93
99
110
122
92
165
79
105
136
77
92
110
102
67
79
119
178
127
67
152
37
135
80
115
136
91
149
55
138
105
92
56
67
55
67
139
139
79
104
92
92
120
131
146
139
168
158
156
55
37
138
105
83
93
107
37
107
141
67
122
110
138
58
98
55
58
86
136
138
139
92
111
127
55
105
85
101
122
56
68
93
77
130
107
56
122
122
91
37
122
138
103
144
104
56
55
110
104
132
119
138
169
128
131
55
105
132
146
171
58
78
110
199
127
92
138
92
131
171
77
58
104
58
58
138
110
128
148
128
104
152
77
127
119
69
108
112
178
79
58
55
95
138
128
55
104
130
109
110
96
86
111
178
89
87
122
178
106
84
88
92
119
119
110
97
110
127
75
126
126
56
163
92
111
138
92
105
55
105
131
139
114
146
93
139
141
160
129
111
138
138
126
58
105
122
55
93
119
55
122
110
92
69
136
128
92
67
91
131
55
92
99
104
105
122
74
122
105
119
109
111
92
138
105
56
92
138
110
123
68
93
127
178
123
126
126
89
138
122
98
153
182
86
120
55
110
128
138
106
58
110
92
188
128
56
75
89
79
55
138
110
92
92
37
138
56
138
92
68
67
122
92
152
144
104
79
103
86
114
37
126
105
91
56
93
127
37
140
112
106
86
83
104
84
86
83
55
93
131
67
178
126
93
89
158
68
152
107
119
37
103
134
79
77
138
169
180
84
124
95
97
109
168
67
106
140
106
146
86
122
92
78
132
109
37
134
55
92
128
126
105
127
68
79
88
86
104
138
98
178
86
56
110
99
178
97
106
146
107
67
110
159
93
106
136
136
86
95
122
138
110
122
86
122
104
127
110
56
146
127
110
61
115
104
58
55
56
110
67
128
92
104
163
83
86
139
58
67
127
105
55
131
55
126
55
104
104
144
80
56
123
84
149
126
147
123
122
131
139
80
144
119
180
93
101
105
131
126
68
111
134
152
55
118
93
105
86
130
56
56
92
140
128
169
56
58
77
156
178
103
146
138
110
146
138
122
144
98
92
67
138
120
92
123
100
37
105
55
112
178
69
75
103
134
140
56
139
123
67
144
55
109
56
37
69
103
92
58
110
104
69
126
69
56
55
83
67
55
145
96
110
83
127
92
138
55
89
132
112
55
55
67
93
108
104
163
152
37
122
69
105
86
118
105
92
83
106
74
134
105
97
92
180
124
75
127
158
84
73
93
123
105
110
146
56
148
139
138
101
104
55
56
93
55
79
101
146
55
132
123
104
162
134
67
141
104
74
122
93
126
131
67
55
37
37
146
105
93
110
104
146
146
132
37
105
92
164
126
167
128
67
107
136
110
98
92
110
110
92
55
74
152
79
55
93
122
110
111
127
144
55
68
93
75
107
56
111
67
138
122
110
105
92
69
55
110
75
86
55
124
139
134
55
144
55
92
130
152
130
88
67
123
86
140
127
104
92
126
95
144
106
119
138
138
162
110
67
105
55
132
89
79
112
37
146
111
93
56
86
111
162
92
124
127
109
178
92
138
92
93
56
105
110
93
113
139
104
142
83
99
104
144
138
138
64
138
138
134
131
122
105
101
109
109
103
99
105
110
152
104
128
169
122
140
92
93
100
92
55
107
92
147
67
127
55
92
140
127
108
122
107
103
97
69
102
67
146
128
74
95
127
104
144
55
81
178
105
105
110
84
55
91
110
56
91
122
55
127
122
139
67
126
99
122
79
56
104
138
98
119
93
112
75
102
158
139
134
149
137
138
138
83
67
109
92
99
148
126
95
58
68
92
110
164
92
107
144
68
110
67
92
140
112
178
122
140
105
91
139
123
77
55
138
56
56
69
146
92
67
127
128
112
120
119
171
105
92
151
111
105
122
105
111
56
144
55
93
67
134
95
122
105
146
93
123
92
107
122
128
105
97
126
135
105
122
126
165
104
86
68
104
56
123
152
79
92
182
105
134
69
92
139
58
67
84
182
103
188
55
37
139
92
97
68
101
138
93
110
93
92
56
124
140
69
92
130
138
118
104
132
104
93
152
58
67
58
105
123
152
69
167
55
37
112
110
58
127
68
110
69
101
138
93
86
120
93
130
110
105
91
146
178
136
139
122
110
169
68
109
178
111
55
164
137
92
145
110
68
55
138
110
180
55
55
148
127
86
126
126
111
111
92
105
67
69
124
69
99
127
67
105
127
58
55
148
112
127
92
163
126
55
168
104
108
103
105
58
55
103
122
110
99
92
56
115
146
92
93
117
146
105
138
110
68
181
37
86
148
100
165
56
118
109
67
146
93
152
120
56
138
124
180
92
107
104
77
92
109
93
169
114
171
84
104
122
55
92
93
112
107
126
93
92
75
86
126
37
68
55
67
115
55
78
107
93
122
92
119
58
122
77
112
131
127
146
110
158
68
133
103
97
91
75
126
104
37
104
69
104
69
92
126
128
122
119
125
110
126
99
168
93
104
55
104
167
67
132
92
86
92
93
122
126
128
68
98
105
122
138
102
139
122
110
105
94
69
37
128
67
67
134
110
169
104
126
56
122
105
104
169
107
127
79
178
104
164
110
123
67
132
92
93
114
146
148
122
169
107
140
99
178
144
110
122
158
110
105
104
126
105
110
56
105
86
110
136
117
180
180
91
83
78
75
86
88
67
122
171
124
127
55
58
140
119
145
80
122
92
126
92
105
129
69
75
148
158
180
87
103
134
122
122
107
92
92
109
110
188
103
56
123
85
107
152
122
109
55
110
149
95
128
121
80
168
122
169
126
93
56
92
55
109
138
67
138
37
96
123
92
105
58
86
119
83
117
127
114
139
92
93
144
105
95
92
127
134
144
139
139
67
92
122
55
111
123
134
109
105
104
138
86
96
120
127
110
55
139
131
139
146
58
128
93
102
55
127
88
126
111
109
37
126
58
122
110
92
92
93
126
138
110
69
92
146
55
123
69
56
93
169
126
178
86
137
83
104
86
123
37
122
106
56
134
93
75
58
110
127
93
76
122
77
107
84
83
100
92
103
101
122
119
135
80
127
105
67
123
129
122
144
93
110
122
152
77
109
94
114
110
55
92
146
37
137
139
89
93
67
138
105
58
141
123
134
127
119
130
119
111
162
178
75
105
138
109
122
146
105
138
123
104
97
97
126
127
55
55
180
104
122
152
91
152
93
111
67
91
92
105
127
122
139
118
171
67
67
111
75
110
110
139
148
152
105
99
99
138
92
171
92
84
126
79
67
124
128
55
55
92
178
110
81
126
102
123
152
92
92
119
126
105
122
67
92
37
136
55
139
55
134
67
131
126
139
122
124
147
67
144
75
81
113
129
37
37
123
131
58
102
92
139
110
122
103
122
126
67
119
132
146
110
55
75
127
105
144
134
165
144
180
86
130
91
146
55
86
138
74
91
119
111
139
91
69
93
104
107
144
128
107
104
84
69
122
72
92
139
55
67
75
126
169
79
55
113
148
93
75
152
74
152
148
106
77
110
104
69
124
86
55
68
162
135
92
99
68
93
163
119
126
56
69
178
95
56
119
123
92
96
67
153
129
55
79
105
109
77
117
111
56
92
92
138
122
92
138
95
67
105
101
99
124
128
37
130
130
128
55
55
37
140
105
126
77
99
127
146
112
134
92
152
108
92
112
84
146
122
69
127
105
75
137
122
152
67
69
139
86
93
138
100
108
123
107
75
134
91
152
140
67
92
178
110
37
112
67
109
91
152
106
92
97
69
55
114
131
110
110
55
69
92
92
138
141
134
128
75
158
93
132
169
93
105
134
67
67
126
86
93
126
93
105
97
127
93
110
112
91
119
138
106
152
107
123
148
138
93
122
139
99
55
122
117
37
146
97
122
99
99
105
127
55
58
110
56
126
126
138
178
125
122
109
37
163
138
89
138
107
134
138
165
72
152
105
110
105
138
105
126
131
37
69
126
139
126
92
134
92
69
98
56
123
127
105
123
67
130
55
88
92
92
103
126
124
104
126
37
122
144
100
109
98
67
92
169
126
93
177
104
101
61
132
98
55
99
169
102
118
104
104
74
93
110
89
104
105
146
105
152
74
91
107
56
79
92
128
156
138
107
123
86
119
110
93
37
92
84
110
137
55
93
152
68
138
141
130
74
92
169
67
142
110
124
142
111
110
119
104
37
79
104
162
127
56
104
146
139
67
92
124
130
56
99
123
138
67
142
92
150
180
105
74
97
126
146
144
93
122
79
37
117
127
146
117
74
55
134
92
67
119
126
104
74
126
144
109
55
110
94
169
178
74
123
74
67
99
115
92
127
140
145
92
146
126
144
132
113
126
81
86
109
105
79
110
93
148
111
138
110
93
67
154
132
105
67
122
110
92
126
107
92
112
37
138
56
79
105
165
122
56
119
188
178
105
138
104
69
92
69
122
55
136
77
58
106
122
138
126
105
178
178
148
93
92
75
58
69
114
134
110
105
148
144
77
138
58
146
55
55
84
110
97
84
37
99
55
56
178
144
152
71
134
113
92
110
127
139
126
103
80
75
110
56
110
137
92
105
41
110
126
144
68
103
138
122
100
110
75
91
77
122
83
79
109
67
92
91
122
98
93
124
199
104
130
102
171
152
92
146
55
55
123
79
130
92
168
92
79
95
109
55
144
138
128
110
56
37
92
75
111
79
67
108
140
74
104
69
93
139
58
56
93
67
111
110
110
86
126
126
169
92
111
138
127
126
169
132
109
91
126
108
105
56
123
114
147
110
189
164
138
135
128
138
110
81
122
55
139
126
94
106
105
110
119
126
74
167
97
146
111
37
110
97
178
106
130
111
75
126
149
138
74
122
145
127
152
122
188
178
111
119
163
117
130
138
105
56
138
99
124
68
97
192
134
152
55
56
92
122
99
74
105
104
58
93
152
113
118
127
92
110
152
99
126
92
58
122
144
111
55
140
91
92
111
128
101
144
37
178
130
169
37
69
81
163
83
91
138
126
77
164
67
158
55
105
136
122
122
75
104
135
93
56
96
140
126
55
118
110
67
92
131
135
56
58
110
92
110
134
105
104
148
122
80
136
108
163
64
104
130
135
127
105
84
92
127
133
110
125
110
119
127
116
55
110
122
91
105
55
92
75
93
169
117
146
104
55
93
122
107
67
98
178
67
79
92
127
58
140
110
162
119
144
105
55
140
92
58
107
58
79
79
55
124
114
105
110
79
138
126
104
92
97
146
97
75
55
126
55
110
140
127
178
37
138
79
55
99
103
67
110
116
67
126
104
77
58
141
37
110
92
146
140
138
56
105
91
74
92
127
69
111
140
92
138
100
79
93
92
146
136
83
79
99
68
138
110
92
74
110
67
139
105
122
74
69
103
75
146
92
55
180
138
120
122
110
58
138
67
126
122
67
122
107
86
110
109
87
122
67
101
86
115
126
93
74
136
114
84
91
55
171
83
178
112
127
122
169
73
93
163
138
111
105
97
107
97
92
111
75
128
171
93
56
126
58
109
127
152
86
98
138
55
142
78
105
138
140
109
128
125
110
139
37
64
138
56
56
122
58
122
67
92
146
105
128
37
67
104
98
132
105
139
127
141
138
81
56
122
75
178
104
86
122
55
89
67
122
127
121
110
67
138
156
146
92
105
152
146
79
178
89
95
58
105
105
105
152
169
126
55
98
110
128
93
99
58
56
37
126
55
69
134
104
142
148
37
104
92
123
86
105
87
37
122
88
122
114
108
100
98
92
69
111
127
119
169
105
67
158
56
111
136
144
72
58
126
147
104
55
110
159
124
56
138
168
123
69
182
67
148
144
37
139
99
56
111
130
126
105
97
75
122
75
75
100
75
96
104
122
114
107
138
119
56
169
144
130
74
105
55
67
138
98
97
138
81
127
77
110
138
138
127
110
56
104
138
97
103
117
67
67
74
128
138
132
110
118
144
131
67
93
37
83
93
127
144
126
77
96
104
138
138
92
138
180
92
106
126
123
122
77
107
56
99
142
75
106
109
92
55
55
95
67
138
81
69
117
55
105
67
58
105
111
75
130
55
136
75
152
92
118
110
134
138
81
92
119
178
138
55
123
67
37
98
55
138
127
118
89
68
55
139
76
109
86
104
144
92
37
105
122
97
92
77
104
69
56
163
67
134
92
107
111
127
127
97
107
118
105
86
114
135
138
67
139
83
119
89
104
123
148
69
134
68
169
92
68
98
55
105
103
164
37
110
110
86
110
102
109
75
171
124
130
91
65
109
99
55
109
123
115
138
165
117
122
103
139
58
138
55
79
126
171
169
169
83
104
152
181
123
127
138
67
55
79
55
163
105
92
69
148
77
55
117
92
121
144
178
110
55
124
126
105
92
104
152
110
123
97
138
162
69
134
139
110
178
55
55
122
55
134
74
102
110
144
139
126
128
92
55
55
127
110
146
110
120
104
100
79
127
110
56
99
106
103
64
92
171
139
97
110
110
145
76
146
104
37
126
56
67
37
169
58
123
69
75
69
92
119
104
69
71
67
133
105
91
55
58
145
146
87
144
86
84
144
74
68
55
105
134
138
110
86
120
83
144
91
114
104
55
69
127
137
119
68
134
105
58
55
130
72
103
93
107
154
74
126
107
136
84
122
110
104
96
126
79
104
122
67
152
105
152
67
108
105
77
105
146
111
86
84
111
87
112
110
56
92
93
110
105
55
55
124
92
74
122
108
91
163
138
111
122
83
55
77
93
163
138
55
92
98
84
92
97
134
104
138
92
37
132
58
128
92
146
158
126
105
123
178
171
103
118
107
99
104
140
58
103
69
134
126
67
104
138
107
56
128
69
131
148
110
58
89
144
122
88
178
55
126
138
67
92
56
56
178
126
127
129
110
126
121
115
104
123
140
138
97
92
122
123
55
92
67
104
79
126
55
109
127
69
125
92
79
67
134
126
110
79
119
110
132
122
110
55
138
158
69
139
152
129
178
105
55
126
126
56
92
111
55
92
67
119
122
126
37
105
92
84
120
55
152
152
129
138
93
77
105
178
150
92
122
152
165
104
111
58
67
92
97
105
93
150
120
128
68
178
55
101
122
93
127
138
127
93
102
55
55
104
111
180
138
103
146
110
114
140
178
92
105
168
140
56
122
123
67
67
68
140
92
69
128
169
117
144
55
55
122
55
119
104
37
122
72
126
56
101
92
171
124
93
112
137
110
115
86
37
139
122
127
102
55
58
134
169
127
126
126
67
92
92
110
110
93
148
122
105
104
74
74
122
138
146
109
169
102
164
178
56
110
180
138
128
140
67
107
83
55
92
111
77
130
119
104
105
178
105
105
144
55
67
128
56
55
105
55
148
92
106
55
107
131
167
111
119
106
144
110
105
126
105
86
107
92
122
56
58
92
126
104
169
128
56
74
178
95
138
74
128
67
139
58
92
178
68
92
118
104
126
146
171
114
178
93
152
77
83
74
138
144
92
138
105
122
83
126
77
110
158
58
140
117
119
64
110
55
123
99
100
126
110
93
122
67
77
37
152
140
122
91
111
124
55
77
105
93
123
110
124
117
111
55
117
163
92
122
55
126
103
97
55
64
144
144
160
128
110
55
105
178
74
138
104
86
120
55
55
89
164
125
127
128
92
126
92
100
123
132
139
178
123
131
126
77
84
56
152
55
171
128
158
111
56
58
128
97
55
37
138
130
55
139
110
122
148
103
111
126
58
55
140
138
138
92
110
122
99
171
105
105
134
37
144
56
114
106
58
117
112
69
147
135
103
105
122
105
122
55
55
37
169
110
95
110
178
58
91
146
37
89
55
134
122
128
92
102
110
111
152
58
149
95
138
138
110
126
139
86
140
178
110
103
102
138
91
67
146
92
126
139
122
92
144
134
126
92
146
141
178
89
122
56
83
92
37
75
119
152
110
75
69
37
75
111
123
111
169
139
139
97
105
92
117
93
115
88
117
152
154
92
126
139
138
114
160
139
68
128
92
144
162
110
105
127
55
67
140
92
122
103
109
92
67
139
55
94
171
105
110
87
92
104
134
131
84
100
92
55
110
98
72
69
124
79
92
110
92
83
56
56
79
126
152
144
126
67
126
100
58
110
91
107
69
55
88
139
120
92
132
105
93
67
199
92
139
111
122
105
180
37
93
101
83
137
188
105
147
55
105
75
127
122
84
97
91
128
86
126
55
178
75
92
127
138
86
58
110
67
117
110
122
75
95
69
109
104
58
67
144
75
37
100
110
92
122
91
138
84
105
110
92
128
131
122
92
92
55
55
158
135
104
134
92
103
92
126
138
58
55
55
89
84
128
128
107
55
178
122
86
55
74
125
138
123
83
117
69
171
86
164
92
37
128
134
92
55
99
110
126
67
55
56
152
78
122
142
85
92
147
83
127
110
89
138
128
110
37
152
92
104
178
122
145
126
178
104
123
122
74
99
58
120
135
69
94
56
110
67
93
92
178
178
98
122
121
120
75
169
111
108
104
93
162
74
138
99
108
139
128
55
93
104
97
152
72
111
144
171
127
86
37
110
122
122
111
67
152
55
115
146
69
162
98
119
154
139
77
93
126
99
138
112
104
128
111
162
88
92
149
128
67
67
93
122
122
102
117
110
138
112
110
93
110
84
55
148
114
122
110
37
168
115
79
67
55
84
107
127
81
93
69
126
91
145
134
92
103
148
119
126
56
134
130
122
103
79
144
79
104
96
139
67
126
130
128
138
132
92
142
110
100
37
99
114
95
107
136
123
104
138
77
105
92
77
110
56
126
139
163
105
92
86
56
37
138
67
67
169
67
139
109
111
171
91
171
103
144
117
74
93
151
74
55
152
134
122
104
137
68
107
138
152
104
146
84
127
122
110
55
103
95
110
110
127
74
92
158
94
105
110
127
127
55
112
134
107
138
105
58
55
68
138
69
75
92
99
111
110
56
115
91
107
144
119
92
130
75
107
83
149
74
102
92
105
99
138
79
74
67
110
98
92
144
105
146
55
151
86
126
109
99
152
75
92
92
104
111
86
92
128
178
105
134
169
168
169
110
93
126
92
92
75
178
37
105
58
130
105
123
132
92
126
104
145
110
55
56
148
67
119
130
81
182
122
152
126
79
67
138
122
67
110
126
119
37
132
106
88
93
144
110
101
127
91
138
67
92
105
152
79
138
68
118
112
56
132
55
105
138
56
122
99
74
69
109
152
68
58
104
37
92
92
146
110
163
137
132
119
111
109
92
69
56
122
146
118
107
37
127
55
117
110
127
138
107
105
159
130
126
93
58
56
122
138
58
111
105
128
99
105
83
122
138
110
143
91
92
99
55
92
37
67
77
138
75
77
117
163
92
169
128
128
109
118
146
126
92
92
139
107
169
123
75
67
138
103
139
92
110
104
107
105
92
122
128
37
93
77
92
122
127
136
139
86
92
87
149
139
144
74
178
55
68
139
75
75
98
119
100
126
75
98
137
92
138
99
152
122
126
99
98
122
178
139
127
126
104
130
145
152
56
122
92
152
127
139
109
56
119
102
56
135
67
128
104
126
108
110
139
78
67
67
114
104
131
114
110
163
86
105
93
89
69
58
139
92
110
91
110
146
86
178
107
77
86
104
109
91
127
55
56
55
142
56
105
55
122
110
171
103
95
97
126
113
74
158
55
101
178
107
169
123
102
92
89
128
131
139
109
69
92
37
37
141
145
69
128
55
86
101
138
126
37
122
74
101
111
67
111
122
107
109
100
144
126
126
92
152
92
130
110
127
171
92
67
90
56
102
93
146
138
37
139
137
180
103
92
126
55
105
126
131
58
92
75
163
95
109
92
104
92
127
134
152
138
135
128
109
111
112
128
92
105
122
136
106
140
94
140
138
144
37
138
138
136
110
77
144
83
107
56
107
100
110
83
171
55
97
152
137
92
37
56
67
123
67
178
138
122
93
92
106
37
110
55
55
37
56
55
109
126
134
77
197
126
163
111
126
126
79
67
150
107
144
125
114
139
146
67
144
119
110
160
126
102
122
104
92
122
107
55
123
110
92
126
110
122
67
97
99
126
139
74
92
126
120
56
122
105
106
156
141
74
69
122
127
126
55
134
101
67
122
128
126
105
117
55
110
99
55
160
87
122
126
126
122
126
56
122
122
126
91
115
139
146
37
86
159
115
92
55
67
102
110
139
127
104
93
145
77
77
140
56
163
86
56
165
169
37
118
93
110
110
93
92
91
105
105
37
102
109
127
55
105
93
138
110
92
105
67
101
55
95
102
56
55
110
55
58
164
93
58
99
67
112
68
92
163
100
105
37
139
124
106
126
134
127
98
77
134
146
109
178
126
144
75
74
139
95
67
144
37
67
58
93
104
129
138
123
92
97
74
127
56
55
64
67
130
122
124
139
126
110
139
122
92
138
55
126
118
92
79
126
114
109
72
105
107
105
145
126
111
122
56
119
92
105
127
131
72
84
98
134
89
105
68
137
145
138
37
92
67
108
109
120
104
144
92
93
55
126
152
122
74
153
122
92
110
128
138
55
110
92
86
58
106
101
92
120
167
122
99
99
126
123
77
146
104
122
110
124
137
105
134
80
74
138
110
146
92
140
116
118
79
110
138
122
138
103
93
93
146
92
104
127
55
169
150
125
93
178
79
178
74
97
105
140
56
138
92
171
106
104
84
110
105
55
128
56
67
132
105
58
104
122
105
126
67
92
110
105
75
111
92
109
128
69
122
139
92
168
171
144
99
147
156
144
122
75
124
37
148
139
105
102
169
55
178
137
112
109
122
37
140
110
169
68
122
74
113
138
109
122
138
75
102
138
96
92
144
126
114
136
92
124
135
56
123
114
111
135
67
101
87
140
92
178
125
140
55
105
149
138
128
91
103
114
102
75
118
104
110
110
163
105
144
55
93
100
114
89
102
58
56
123
127
122
169
126
122
139
98
122
86
119
126
126
104
79
57
126
152
122
111
139
139
105
91
123
67
110
180
100
128
122
128
107
178
103
55
109
122
119
92
93
79
126
93
160
37
67
146
110
103
55
37
110
56
55
122
144
188
58
55
37
163
128
55
69
123
138
118
86
55
92
92
55
144
139
158
92
126
130
124
55
92
126
146
95
171
122
92
132
67
110
93
139
67
108
178
91
97
93
110
199
93
119
127
146
122
122
122
37
99
126
69
37
68
114
92
139
169
138
67
105
138
145
124
69
126
92
97
110
55
55
139
91
69
93
56
137
105
110
92
149
58
79
124
105
55
67
74
103
55
93
37
55
158
104
104
106
158
105
95
79
58
126
107
92
160
167
139
110
140
106
119
99
97
55
139
138
110
93
131
140
156
67
158
139
91
120
104
138
128
98
99
130
178
105
138
126
93
75
139
58
158
123
92
126
92
144
169
80
152
137
148
136
144
68
134
105
122
115
81
122
158
87
92
92
146
86
94
55
105
67
149
127
67
37
74
55
83
56
129
127
41
136
55
86
163
74
109
79
92
92
109
93
136
92
171
37
74
122
92
110
92
111
103
105
142
37
124
91
107
144
110
83
99
93
144
136
83
146
98
153
122
56
147
92
129
55
55
107
74
110
119
151
122
137
92
55
108
104
122
143
92
112
138
77
146
92
146
119
109
138
97
110
128
122
86
92
131
104
104
152
146
148
77
109
146
145
56
163
56
105
180
56
84
92
125
92
141
139
148
83
144
88
56
118
106
86
105
56
86
92
138
93
55
92
37
136
91
110
139
109
55
68
92
140
144
56
144
122
92
138
122
93
93
127
103
55
144
125
55
69
92
178
98
107
124
122
122
76
58
100
92
122
111
67
138
127
105
110
56
86
104
86
89
79
126
86
144
128
96
41
37
108
178
148
37
58
105
69
126
92
92
105
127
96
110
112
104
126
92
122
55
126
75
74
126
55
163
92
138
127
92
122
144
118
178
109
108
105
37
37
103
92
107
110
125
77
55
58
122
75
110
178
56
146
104
158
180
92
107
92
92
109
124
106
104
56
122
100
74
92
122
84
74
37
86
107
37
71
93
58
92
152
144
91
178
126
67
105
105
92
67
89
86
37
56
111
138
138
104
91
149
119
83
126
78
122
122
104
105
92
92
117
136
126
88
128
95
83
145
123
112
86
104
102
105
56
122
122
144
124
127
168
123
142
93
92
110
109
178
139
37
78
128
105
111
146
178
107
127
152
67
115
55
138
126
125
69
139
127
138
138
107
128
109
55
83
67
126
67
58
93
127
93
127
110
105
92
92
112
104
104
92
109
67
91
76
99
56
151
93
84
91
140
88
91
77
138
169
122
105
128
126
95
109
107
126
139
74
37
105
102
56
152
126
58
104
101
137
68
83
105
136
95
134
94
145
55
122
92
111
114
56
55
55
128
92
92
104
92
83
55
81
105
69
55
86
67
56
105
139
122
127
124
99
77
168
111
139
128
105
92
150
165
122
56
92
139
122
121
67
83
122
103
146
86
169
136
93
92
126
112
77
108
180
104
74
101
67
103
137
105
68
77
140
93
112
110
69
148
89
158
93
141
111
122
69
105
100
92
91
122
104
140
92
111
74
67
122
128
152
92
105
122
104
169
123
105
110
128
91
104
126
122
152
91
178
122
37
105
178
92
138
55
131
104
139
126
119
126
69
109
117
146
144
112
127
127
122
81
109
92
95
178
67
69
105
126
95
129
102
109
104
84
91
130
105
178
152
115
130
178
110
127
111
93
93
77
142
67
92
55
126
83
169
110
124
136
104
111
69
92
114
112
111
144
97
37
56
131
169
117
37
103
93
138
92
69
111
89
128
69
110
119
122
89
56
58
110
58
56
123
67
152
165
77
92
126
77
107
119
109
144
134
86
86
122
122
92
104
107
152
180
122
110
146
56
102
91
101
171
119
107
110
69
61
138
104
92
152
110
152
105
86
109
169
138
127
77
139
55
92
58
104
126
124
102
132
86
104
74
141
139
105
93
74
69
67
169
74
91
104
75
104
128
68
93
89
104
105
95
110
112
178
158
92
103
97
127
79
123
119
109
138
55
134
146
124
122
86
122
96
144
56
92
132
105
127
169
79
102
138
138
109
55
122
109
110
69
110
55
109
97
110
98
138
110
178
144
69
68
92
37
138
87
134
119
37
171
92
105
165
138
58
86
77
104
80
168
92
158
169
92
37
111
126
122
99
126
56
97
105
178
105
146
168
138
58
105
144
67
97
92
103
134
92
93
67
132
109
171
56
169
110
92
107
58
89
126
119
55
126
126
102
92
92
105
120
122
56
144
111
37
152
111
122
117
139
139
105
104
122
104
86
122
92
55
67
37
92
126
129
81
99
122
144
126
92
124
144
110
83
144
92
134
92
131
92
137
124
105
144
92
55
122
104
103
92
55
55
139
127
122
111
56
55
105
87
126
144
110
169
114
101
131
92
55
93
56
77
128
105
178
56
69
68
37
105
58
67
92
112
144
138
122
117
67
163
110
138
119
119
55
138
95
132
104
55
92
37
55
182
89
56
138
122
55
79
164
87
77
158
89
93
96
77
92
83
171
119
126
118
104
144
55
83
105
92
93
139
135
110
105
122
132
146
37
105
55
110
110
121
110
114
136
105
127
56
141
122
117
86
104
122
74
149
134
91
37
94
111
138
109
120
55
140
110
129
67
135
127
126
122
65
140
112
139
146
83
92
56
56
87
119
56
169
171
55
79
56
67
92
98
111
122
84
110
56
97
120
86
103
105
56
146
156
92
75
93
98
122
110
162
75
110
113
88
94
105
124
122
75
67
110
138
139
58
69
97
152
83
114
158
110
75
110
119
138
92
147
56
75
93
103
110
138
105
80
105
99
122
58
91
92
122
128
105
55
117
92
126
75
79
197
86
99
83
123
117
92
169
77
86
107
104
72
126
152
55
110
74
67
126
136
99
68
103
140
93
152
58
138
132
152
67
126
56
78
119
92
126
138
178
92
93
55
103
99
105
122
105
134
55
92
126
109
92
124
146
86
104
127
127
110
178
91
80
79
146
55
171
138
127
122
76
162
37
169
55
92
58
116
130
55
55
69
132
105
56
122
171
158
109
178
123
126
146
74
83
69
130
67
160
77
111
122
91
108
91
123
145
109
97
138
144
111
168
79
55
152
104
144
123
104
126
108
134
55
99
74
164
115
136
110
110
75
92
92
138
112
83
121
142
136
123
108
139
169
140
117
55
55
56
126
178
126
124
56
57
140
108
139
138
138
93
67
86
37
158
146
144
146
74
104
104
78
118
104
83
178
81
87
105
144
77
127
158
56
123
139
92
178
131
92
104
138
138
92
117
92
55
111
103
74
117
103
83
75
144
136
105
99
127
127
92
130
124
144
55
86
91
92
122
55
86
169
92
127
138
130
128
58
110
119
145
92
68
92
56
91
92
86
122
110
104
101
77
93
140
103
139
110
149
55
144
92
88
128
128
109
92
122
105
87
86
126
95
110
92
109
93
92
55
104
137
105
83
178
37
75
122
130
139
105
103
129
144
152
93
95
114
74
138
189
168
100
56
55
67
64
99
111
163
146
105
105
110
37
119
92
122
99
182
130
111
93
74
119
86
122
111
79
79
58
37
67
152
92
138
105
110
127
69
138
86
92
79
91
103
123
137
69
77
128
92
97
71
85
111
135
93
160
92
56
79
105
105
122
92
67
83
110
109
105
83
158
138
105
112
104
178
76
108
56
104
92
162
79
98
93
178
123
110
146
64
160
55
97
107
122
92
123
114
55
78
111
121
122
55
93
124
110
137
55
68
93
152
134
109
109
152
163
122
124
135
140
56
67
86
55
138
105
126
110
92
92
92
56
140
92
107
138
105
110
105
137
130
75
110
99
138
92
126
134
97
93
56
104
112
100
84
74
104
105
104
152
67
55
76
97
146
110
99
58
169
126
111
93
86
67
146
92
58
167
83
58
137
74
169
93
92
122
169
100
132
56
128
101
144
67
58
67
122
139
169
148
99
92
178
178
119
92
124
92
105
55
89
104
128
140
136
105
83
56
110
105
55
158
127
122
92
168
55
169
123
137
138
97
107
105
105
89
122
119
112
110
125
142
128
105
122
122
97
168
92
105
91
55
77
127
37
163
95
171
91
92
123
92
138
99
139
178
92
55
152
97
67
86
107
104
131
69
144
106
93
138
92
101
101
77
128
122
111
131
56
88
104
128
122
128
122
136
56
146
138
131
92
139
122
92
37
89
111
180
92
110
146
139
128
130
92
109
122
56
69
105
101
92
112
92
135
107
92
138
67
93
118
67
105
122
55
126
122
55
104
126
92
144
101
107
114
162
58
92
123
93
55
99
169
37
37
93
55
138
123
125
67
126
119
126
139
118
103
163
74
80
138
104
105
152
109
136
139
138
86
100
120
122
109
91
92
122
69
178
122
138
144
74
146
138
67
106
106
93
55
169
92
126
112
93
140
127
127
92
119
92
104
126
122
55
110
158
109
92
122
163
114
144
126
55
111
178
107
88
99
139
178
131
98
86
92
104
105
123
180
55
118
105
67
171
105
131
105
122
67
138
114
105
104
92
55
37
103
105
93
93
178
152
114
55
126
178
127
92
122
127
119
92
95
140
178
67
144
92
122
138
58
101
152
110
78
93
117
68
110
152
74
120
126
88
171
132
127
162
138
136
67
146
56
77
93
69
122
99
105
152
137
167
138
146
110
107
56
93
55
100
127
100
37
140
55
58
79
104
127
103
167
105
137
37
112
93
110
128
128
104
67
129
118
124
56
131
56
93
111
122
97
134
136
55
91
105
105
99
112
138
91
115
58
67
138
152
124
92
126
110
165
126
92
55
126
92
67
134
138
110
110
152
112
126
92
100
137
92
146
106
108
93
69
126
122
92
104
55
123
126
100
104
139
123
93
130
158
112
104
138
107
136
140
101
99
56
146
67
86
169
92
134
122
130
120
67
92
180
128
169
68
140
144
91
67
80
138
92
105
146
96
99
58
110
67
104
101
106
123
128
140
86
83
138
105
107
67
99
110
104
122
111
92
146
163
67
110
37
126
122
109
119
119
126
83
178
140
146
75
112
149
138
55
130
104
138
148
178
134
131
100
79
124
105
101
105
67
142
122
109
105
126
109
118
149
138
180
94
177
104
122
74
128
126
152
92
126
58
127
169
99
126
144
165
142
168
104
101
76
93
126
122
91
138
86
104
97
58
110
110
115
55
93
92
110
78
91
74
96
180
128
109
127
122
136
164
93
56
110
37
105
153
122
144
144
122
123
131
105
91
79
69
130
67
74
79
93
103
104
37
127
148
103
130
120
109
105
75
122
122
126
93
152
67
92
110
122
122
152
146
138
114
119
81
102
128
105
127
93
169
93
126
58
126
126
142
55
130
122
110
131
92
126
74
80
75
92
83
99
122
92
92
107
92
127
148
69
93
112
86
139
117
37
79
136
112
126
105
69
99
91
109
56
178
139
92
148
136
131
99
103
88
91
55
92
67
107
168
132
169
37
95
104
138
67
55
104
74
92
56
55
68
93
136
169
92
134
128
123
100
55
168
111
159
104
169
97
93
101
55
111
67
56
188
119
37
58
178
55
88
126
135
79
86
127
111
105
92
138
75
55
104
131
122
119
127
104
105
67
91
153
104
139
92
138
58
74
123
86
56
138
130
104
136
92
112
104
74
128
121
122
91
73
105
145
86
110
118
92
126
92
75
110
109
72
104
96
79
119
130
81
129
105
56
107
37
134
67
111
103
55
86
91
138
136
55
55
92
169
139
122
56
120
112
122
150
139
101
131
111
178
126
74
109
122
124
92
144
67
138
92
145
169
110
86
74
139
77
105
126
84
69
110
152
119
146
105
89
67
152
138
103
126
104
145
77
138
122
138
109
107
74
144
110
97
67
158
162
138
112
83
79
106
122
92
37
83
69
120
55
105
115
91
55
122
109
69
99
58
158
123
93
152
92
144
101
104
121
92
126
156
102
55
95
72
124
138
137
122
92
117
79
128
93
92
91
92
83
69
128
122
152
95
117
122
124
131
139
104
140
67
37
56
130
178
68
37
119
178
58
75
178
110
138
105
112
56
106
105
111
122
113
152
58
138
114
178
119
105
92
105
93
119
126
111
110
92
83
92
148
146
95
104
119
109
168
135
123
122
126
92
78
37
92
37
115
67
55
109
139
122
119
126
128
114
105
144
67
122
163
56
148
146
112
138
93
122
103
124
141
55
106
55
144
92
104
92
110
107
169
118
109
111
74
79
56
146
134
99
97
100
135
144
99
171
124
120
127
105
152
122
182
110
138
92
138
117
178
110
128
58
152
139
98
126
37
55
110
69
91
152
134
148
93
119
77
104
127
122
97
158
103
109
165
67
169
123
120
92
104
139
107
92
92
67
105
55
77
146
55
161
109
67
140
93
178
74
104
93
56
92
98
111
158
122
105
119
75
169
127
136
92
56
119
92
139
77
67
144
67
144
152
92
122
108
122
105
92
119
93
126
178
167
126
164
104
110
104
122
81
146
110
162
56
122
58
162
67
126
126
146
180
78
89
92
146
114
69
58
110
105
98
178
97
152
104
55
103
81
56
160
91
55
99
148
83
146
74
123
122
109
105
55
122
144
162
126
117
138
91
126
107
144
122
83
79
122
110
169
91
64
104
146
92
148
79
79
126
140
125
138
137
144
101
119
122
122
142
91
93
67
92
104
67
121
169
146
77
93
92
55
69
111
55
99
77
37
92
128
92
152
100
68
92
67
144
58
78
75
67
137
110
37
75
122
104
152
104
94
127
58
108
69
104
139
93
56
146
140
75
111
146
93
105
91
58
86
138
92
126
162
122
171
122
91
69
123
152
144
37
77
128
126
55
138
178
162
105
86
158
128
178
93
117
127
199
92
37
152
74
127
167
131
110
99
144
56
126
110
92
126
138
138
122
104
101
77
92
129
75
88
122
98
75
79
127
104
110
92
56
125
144
110
138
104
138
58
74
123
110
92
56
118
144
144
127
104
91
92
126
135
138
67
105
55
109
102
86
69
134
93
84
138
67
126
167
67
37
37
92
110
130
55
97
126
76
55
86
123
58
86
138
92
169
137
105
101
110
79
114
92
180
69
37
127
110
100
130
120
55
55
72
107
97
92
119
100
127
56
160
103
92
136
67
122
199
103
122
151
162
99
69
138
99
139
92
104
137
55
132
69
111
112
77
83
80
123
92
74
122
122
58
171
74
125
122
111
92
102
58
92
131
139
83
107
122
98
124
131
122
120
142
158
97
55
110
37
127
101
137
77
110
178
88
163
123
37
79
79
128
148
69
55
67
132
104
69
122
101
111
171
138
68
105
55
92
111
122
94
178
68
93
132
102
92
126
124
92
180
127
138
92
108
69
55
37
37
178
131
55
111
104
93
171
55
134
163
123
56
138
115
127
122
92
126
122
67
104
110
144
106
121
93
67
122
124
105
100
144
92
58
127
55
136
163
75
56
111
74
98
37
199
109
98
67
110
99
87
92
86
86
58
92
128
180
110
109
138
91
105
146
119
105
128
110
92
110
146
148
92
93
123
79
122
123
107
120
92
107
105
79
134
37
114
92
126
144
74
37
110
56
104
69
86
104
126
122
112
61
147
146
81
101
55
72
134
108
103
146
126
104
92
110
162
123
37
146
118
107
55
163
144
122
56
152
136
86
97
125
98
105
122
118
67
104
55
199
55
130
77
131
144
148
105
92
91
127
126
134
144
119
110
130
120
120
122
126
84
162
98
99
132
67
92
148
123
56
111
158
89
119
98
84
92
105
56
120
67
135
109
55
58
104
55
105
105
109
91
105
55
109
92
92
67
105
77
126
92
128
55
55
114
56
93
105
105
138
114
92
128
55
138
89
122
138
132
110
104
67
128
160
122
123
120
140
93
69
80
55
107
110
93
139
105
163
67
105
127
67
118
92
92
144
86
123
126
58
37
139
122
92
119
126
138
110
92
163
55
107
93
138
95
68
79
123
126
92
126
122
111
110
119
74
111
55
152
86
152
110
169
142
92
56
163
178
103
177
88
112
162
55
86
107
105
126
127
92
93
93
37
79
92
97
56
37
131
83
124
67
105
37
55
131
99
146
55
104
130
126
69
75
122
97
132
119
127
111
105
104
126
144
83
84
126
104
119
92
69
86
110
101
145
83
92
92
110
144
139
69
159
162
118
67
145
178
144
169
128
142
122
91
126
131
152
83
146
107
56
92
145
56
110
56
163
169
126
98
93
56
178
37
86
37
107
163
119
92
79
122
83
58
126
103
138
56
105
142
81
110
96
86
55
75
74
93
92
139
37
55
135
123
68
134
83
83
139
77
122
111
178
74
154
144
124
105
126
122
129
37
178
117
167
92
111
113
126
137
128
146
92
127
152
93
95
67
55
55
91
93
110
178
55
169
112
109
110
89
120
93
146
138
105
55
140
104
106
55
56
93
86
146
67
99
132
146
79
106
123
128
123
104
103
107
55
110
104
101
137
118
64
75
105
88
109
126
111
122
109
79
112
56
67
116
99
112
95
83
110
92
118
105
37
55
92
122
67
129
93
105
122
121
77
37
93
126
104
109
167
124
74
69
111
67
69
130
68
127
98
125
128
109
110
67
146
110
92
145
122
127
120
77
99
167
110
92
152
126
56
81
126
56
104
142
122
68
99
127
93
105
110
138
55
104
146
145
138
58
67
37
127
122
128
138
37
138
118
68
110
131
107
83
122
104
138
107
123
77
110
103
58
127
55
140
138
152
130
67
124
107
93
171
110
69
79
124
67
126
58
58
110
114
126
93
105
103
111
109
140
91
127
126
85
164
92
122
146
112
111
67
126
171
105
109
110
110
107
95
104
124
119
138
160
74
67
56
55
126
126
103
127
55
102
58
55
110
58
91
58
115
124
80
123
83
125
102
92
86
140
146
37
56
136
55
157
164
146
106
110
119
81
128
146
139
92
55
93
119
92
138
105
163
119
102
37
126
128
110
77
102
79
138
92
104
130
105
95
107
67
67
122
134
55
75
67
122
105
105
92
55
138
110
135
134
111
92
110
92
92
100
95
105
134
139
110
37
110
87
69
152
122
117
111
120
104
156
138
67
86
67
105
104
93
37
92
101
105
104
56
146
55
171
138
100
112
77
69
134
106
67
37
92
138
141
151
114
55
126
58
58
138
74
138
139
126
79
127
37
80
182
126
56
128
110
130
199
55
86
108
93
139
56
103
180
148
110
104
98
122
139
127
131
56
140
132
152
77
84
55
134
168
105
105
144
58
163
75
107
146
92
69
55
77
92
37
79
55
139
55
104
93
139
58
97
110
128
105
77
79
110
138
120
92
127
77
127
139
122
126
102
69
131
171
127
139
93
37
122
110
114
119
104
110
178
122
92
144
105
67
126
92
92
105
122
127
152
140
148
169
138
169
124
115
109
93
146
92
105
86
98
55
92
109
97
122
169
126
138
126
111
117
138
132
126
56
104
98
122
138
138
152
123
92
77
105
178
171
123
126
123
111
91
92
104
124
37
136
105
76
67
134
74
110
76
58
106
123
169
122
119
67
111
128
110
122
86
83
137
93
77
74
74
132
105
138
56
127
105
137
55
91
156
119
58
92
134
152
55
105
67
171
128
74
139
152
55
139
69
112
146
112
127
93
93
92
98
105
103
103
37
163
122
126
55
103
86
127
120
139
105
93
55
92
93
138
138
99
138
123
139
56
104
119
37
88
178
67
119
55
128
37
88
104
92
140
111
55
152
92
55
146
105
84
55
86
105
129
67
111
105
55
138
93
69
126
180
55
131
67
136
178
78
123
110
86
55
169
124
138
93
109
97
75
138
126
162
110
91
92
111
122
109
138
69
119
105
69
86
55
139
55
69
178
162
104
102
181
171
56
92
163
119
92
127
68
86
167
67
55
124
55
138
180
86
84
55
137
92
126
123
110
138
120
127
56
83
86
146
109
108
128
95
104
141
120
124
148
138
67
56
109
92
151
56
55
135
105
58
93
69
92
93
105
74
126
139
122
122
92
74
138
91
127
77
171
100
92
55
67
76
104
100
93
146
126
67
110
105
130
79
92
67
92
178
92
138
110
56
92
163
131
126
55
92
152
109
121
178
92
103
126
122
75
105
92
86
58
145
122
126
67
118
92
169
67
58
55
86
126
150
179
93
109
96
138
105
134
102
92
86
140
121
99
127
108
160
68
100
138
37
91
146
105
123
138
92
86
112
126
128
110
127
91
93
131
69
110
114
119
107
58
128
134
93
134
77
118
122
106
110
77
105
124
120
152
104
178
110
131
101
118
123
69
104
111
178
86
136
55
178
69
76
127
135
55
146
109
104
55
162
139
79
138
138
124
111
93
122
92
107
92
55
146
120
56
92
110
138
75
112
127
92
138
152
126
122
58
123
67
140
146
178
103
152
55
126
126
122
103
152
92
180
105
99
111
162
55
55
111
178
178
122
110
114
99
55
110
120
110
126
104
110
105
83
109
138
111
144
105
117
107
67
92
58
144
123
79
119
93
122
79
103
67
92
86
92
130
91
127
107
128
122
99
67
109
58
55
79
67
132
92
97
144
105
103
122
100
163
152
122
103
97
87
93
180
69
104
126
168
119
75
126
56
128
92
106
110
138
74
56
132
119
104
79
69
124
124
140
92
132
55
127
97
171
56
67
162
58
93
88
126
145
139
55
105
181
138
118
139
56
182
92
131
138
146
124
148
136
134
111
146
118
122
178
92
55
104
67
132
93
86
131
139
103
109
125
114
126
91
104
67
177
131
92
144
117
56
110
146
67
117
92
106
148
55
122
124
105
80
74
92
55
139
91
97
75
177
92
74
91
107
152
104
152
102
123
103
69
109
140
89
56
110
105
109
92
92
167
89
102
148
128
124
168
141
81
97
178
83
109
89
75
105
99
110
86
103
127
168
86
127
55
79
92
92
109
178
55
55
122
126
127
97
111
84
138
110
138
107
37
178
126
139
126
67
67
105
112
37
69
37
122
134
100
55
123
123
144
126
100
122
104
144
132
146
55
178
74
148
158
97
37
67
87
128
139
92
178
110
165
76
105
106
164
142
56
105
126
134
89
139
118
149
83
77
69
58
58
110
105
97
129
158
86
178
102
86
55
92
75
144
79
92
110
77
105
104
111
55
105
127
128
192
126
55
152
105
122
109
77
158
79
86
105
139
122
180
56
126
127
138
37
127
37
136
146
37
92
131
138
55
110
139
148
92
37
69
86
146
72
110
131
93
102
93
123
124
126
55
58
138
105
135
188
103
86
106
92
163
169
103
77
152
92
122
127
75
92
130
79
87
140
145
126
104
122
110
168
92
110
58
115
92
91
67
138
169
120
127
95
128
105
107
180
169
92
146
114
122
135
79
67
126
105
126
97
178
138
77
55
55
122
56
92
104
134
102
134
37
67
138
139
101
92
92
99
109
171
105
56
105
67
92
92
134
120
106
158
109
74
100
118
106
104
178
122
138
115
119
55
111
83
178
92
131
151
125
105
68
138
145
110
168
179
58
144
127
37
128
56
69
139
140
144
96
79
123
139
110
56
56
135
91
123
124
138
78
58
124
110
124
127
93
152
112
110
92
139
110
105
116
122
178
119
69
134
37
132
129
58
152
105
114
83
98
83
88
148
140
105
146
103
58
105
92
79
111
92
139
158
104
105
92
75
110
104
107
124
94
37
128
169
58
104
55
58
69
105
126
103
58
77
105
127
55
165
105
55
92
78
67
104
148
83
77
68
109
158
126
55
146
140
69
92
105
146
99
67
37
127
58
132
110
138
144
118
199
92
67
110
126
55
179
122
69
79
111
122
56
146
110
93
168
77
167
105
92
75
83
92
92
56
92
140
79
110
108
92
128
128
74
119
136
126
139
86
139
110
114
69
115
138
111
69
109
83
79
92
93
121
110
92
122
92
110
140
37
55
110
92
127
142
37
136
144
92
56
117
138
131
88
56
105
105
105
105
125
92
128
138
122
105
75
138
77
126
107
128
169
68
69
105
115
92
67
147
103
167
110
104
114
108
139
140
128
102
74
86
79
110
77
81
152
122
120
55
77
152
92
93
99
109
135
58
104
69
129
138
55
37
86
138
58
77
199
75
94
139
83
128
128
55
110
81
68
152
37
55
103
78
92
148
110
136
105
79
146
109
162
128
86
106
144
111
164
132
114
99
171
139
101
122
67
57
93
104
140
92
113
74
169
107
56
108
105
87
37
92
152
55
127
97
78
134
122
93
56
111
126
117
132
138
144
124
69
56
69
129
110
56
138
119
74
123
144
64
67
148
67
144
152
37
138
99
67
56
118
67
109
99
99
69
128
138
118
67
109
92
78
126
58
140
97
134
178
55
110
105
144
169
124
126
100
123
58
110
55
56
104
67
68
126
126
126
56
58
83
109
110
160
124
105
126
89
111
122
119
139
144
67
119
110
171
137
111
119
109
79
84
138
139
178
123
92
120
104
135
92
87
91
163
122
67
178
148
122
148
110
75
181
58
55
92
74
86
110
122
93
147
122
92
75
67
86
126
56
126
92
110
112
74
138
105
79
55
128
110
138
160
119
122
105
114
169
105
86
122
104
111
92
55
67
92
105
67
122
115
68
99
77
55
103
119
105
110
87
58
105
122
110
101
79
98
158
93
56
97
67
79
95
131
92
126
127
105
123
126
141
67
162
67
92
92
93
132
122
73
190
55
79
67
140
119
107
126
92
99
93
112
169
139
87
55
138
74
138
138
110
75
146
126
126
146
109
110
123
68
56
160
138
133
93
74
37
109
114
37
138
144
103
106
122
91
114
168
55
55
101
92
138
144
92
178
120
92
99
134
86
197
93
108
67
110
123
109
110
128
56
104
105
84
67
127
74
80
134
110
149
124
124
122
152
126
141
169
92
69
56
98
123
123
37
92
149
80
148
94
74
111
132
167
55
86
105
79
146
106
122
93
122
162
144
138
79
178
111
104
105
112
131
148
96
92
110
126
123
171
120
69
111
113
138
178
178
55
67
55
123
132
140
140
58
67
104
128
75
101
79
104
107
110
110
122
168
98
146
92
127
126
93
148
127
138
123
109
110
67
58
127
132
171
58
131
119
121
119
124
142
123
92
68
79
152
55
139
122
55
58
111
92
134
68
55
132
122
110
110
99
75
55
105
130
86
129
162
92
126
130
163
103
75
37
56
104
99
110
146
148
75
55
134
93
116
104
140
162
138
92
103
122
99
74
55
146
92
55
107
139
122
56
55
100
56
102
131
167
55
135
127
77
77
109
178
110
98
128
126
77
55
56
110
114
122
115
89
110
101
37
112
55
158
102
126
105
110
107
124
128
105
93
109
110
178
37
37
139
127
107
114
99
99
115
105
67
178
138
110
128
58
88
67
137
127
137
134
139
86
92
110
135
124
178
109
112
83
125
117
110
97
169
124
101
152
55
158
93
139
105
100
69
130
138
124
86
131
110
110
163
56
106
104
111
86
101
120
152
58
122
103
110
104
91
130
134
111
152
125
89
115
126
120
79
91
37
56
56
69
103
110
55
151
128
127
92
169
98
109
138
103
148
67
110
56
127
92
106
182
74
105
138
128
74
75
127
69
119
178
119
134
140
126
111
122
83
93
136
127
109
84
100
128
79
69
114
130
104
104
139
122
67
105
86
110
136
149
81
103
102
110
146
84
77
152
148
106
99
79
88
122
125
138
56
69
119
88
72
122
138
126
138
146
75
126
138
126
92
86
110
130
67
109
92
107
127
77
93
127
127
129
128
69
140
103
69
109
92
69
93
92
69
127
67
79
92
89
92
67
58
130
126
37
58
92
110
104
67
77
67
109
105
147
112
68
99
97
139
122
127
169
105
138
139
171
75
37
93
103
101
92
146
128
106
55
74
112
111
86
138
67
77
122
110
74
109
110
105
109
110
109
69
84
144
118
67
67
122
93
112
105
117
171
88
126
86
105
127
55
92
93
69
110
79
55
102
91
37
67
107
119
37
169
180
76
68
124
119
86
124
120
105
122
169
37
178
91
58
98
67
152
68
97
93
84
125
105
168
127
146
102
97
100
140
164
152
58
134
122
56
178
88
169
134
138
58
83
139
129
111
126
140
126
56
104
138
37
140
139
127
91
122
118
124
168
87
138
69
83
139
92
163
111
123
103
114
163
139
143
75
55
138
99
138
58
178
122
168
86
91
58
103
67
138
107
178
92
158
119
122
91
84
141
99
37
69
132
101
86
122
109
169
139
140
123
105
140
128
105
110
137
178
110
139
68
125
180
122
138
171
67
105
122
103
104
119
119
107
144
91
127
126
92
73
58
139
91
131
86
92
110
104
58
152
56
55
67
122
122
103
93
110
92
109
127
55
169
105
75
100
58
74
105
92
138
92
158
75
140
138
138
111
104
127
178
111
122
55
110
104
110
124
87
116
126
138
69
126
138
122
107
92
152
74
126
192
99
139
105
69
67
180
126
103
93
167
127
105
128
110
93
110
128
124
56
146
127
178
104
124
67
123
89
37
92
93
97
146
122
68
99
92
55
91
128
126
140
83
104
134
67
126
139
180
58
111
152
83
131
86
129
102
104
110
158
92
56
140
111
104
56
124
81
115
110
119
128
55
112
67
123
94
130
56
99
37
37
111
92
56
111
111
105
138
123
106
58
114
105
55
92
99
148
55
67
83
58
138
56
105
140
56
114
117
135
127
92
152
55
56
138
92
152
37
144
92
58
134
180
105
110
67
156
139
110
126
56
171
74
144
79
99
140
128
77
117
105
67
132
105
74
118
107
105
74
131
111
111
37
55
104
150
140
104
79
77
75
126
126
67
138
104
78
55
146
78
130
104
164
55
92
123
96
131
132
55
67
99
93
101
123
110
131
105
98
105
110
91
101
75
141
105
105
55
136
104
104
126
56
110
140
131
136
130
105
178
92
55
93
110
105
89
139
92
141
92
37
86
156
37
128
109
130
137
105
109
138
69
152
141
130
134
77
137
126
69
103
122
58
86
142
37
171
134
111
122
67
67
123
107
95
56
86
180
104
138
110
105
67
37
91
67
98
146
104
93
141
105
144
105
86
96
165
163
112
112
55
105
104
119
86
135
67
169
132
152
151
111
117
100
124
105
125
110
55
103
160
144
110
37
145
122
69
144
55
104
55
93
93
91
139
91
158
92
110
124
160
104
136
109
110
138
112
105
146
119
91
98
37
164
97
158
138
92
58
119
55
91
152
86
180
122
74
101
102
178
165
123
92
122
92
77
122
72
55
178
169
122
89
97
73
122
103
67
138
126
139
91
105
149
106
92
67
138
178
124
93
178
111
138
93
55
169
93
130
92
109
146
73
104
135
158
119
37
167
111
126
104
126
67
122
112
126
104
122
146
139
128
169
147
55
105
67
110
123
139
121
86
118
110
132
112
120
107
69
120
169
79
93
75
105
105
92
128
92
86
158
149
105
168
102
126
138
180
126
37
74
37
138
122
126
146
105
37
117
56
125
67
152
102
93
122
117
100
126
136
110
111
92
104
128
165
101
144
122
74
122
152
118
127
152
126
100
68
138
93
180
128
56
58
111
126
37
109
95
92
93
92
109
110
99
92
122
88
77
92
112
56
56
139
92
105
146
138
99
92
144
67
88
124
92
55
74
139
110
83
55
92
67
89
57
135
103
128
111
178
105
80
139
137
105
119
58
58
106
115
91
126
37
117
110
93
146
144
138
107
88
104
129
111
56
148
138
122
122
107
110
122
75
139
126
104
92
110
79
101
100
163
92
111
92
119
77
149
126
99
128
86
119
56
56
178
146
142
110
120
171
56
139
92
104
97
55
169
144
104
105
95
93
105
138
122
99
144
140
92
104
167
99
92
140
104
92
77
83
134
118
104
126
69
56
69
68
126
119
37
122
129
103
58
83
122
83
132
134
86
152
122
56
93
109
122
126
56
189
93
178
84
126
152
126
128
122
110
41
92
104
138
119
110
93
93
92
105
105
139
136
105
37
101
134
110
58
83
37
83
94
99
58
119
128
104
149
129
139
92
122
86
136
107
178
68
111
127
122
79
122
37
110
92
105
125
146
56
58
122
151
127
105
92
126
92
86
92
137
111
58
149
109
55
144
67
55
55
37
106
146
130
134
74
178
67
99
37
55
171
107
130
141
128
120
127
56
122
118
111
113
169
103
138
99
83
92
92
160
109
119
138
127
79
110
93
92
92
111
55
93
136
138
105
178
105
105
92
69
55
156
56
68
132
137
124
129
57
92
56
168
122
58
79
131
120
37
55
110
171
131
140
67
111
69
144
78
69
110
122
104
81
91
67
92
105
92
111
112
93
126
104
104
58
74
105
92
163
144
37
92
139
121
77
111
124
81
123
75
92
119
86
84
138
152
69
138
123
124
37
138
106
83
104
37
97
105
122
93
179
56
74
56
55
128
58
56
99
144
165
123
126
92
91
92
92
111
92
122
112
74
138
126
122
93
122
68
158
152
126
92
110
139
138
95
37
138
146
145
105
67
109
56
138
152
67
110
58
99
178
134
102
77
139
91
99
109
128
138
152
179
92
93
122
56
110
55
55
150
100
67
107
37
140
169
105
138
104
110
111
120
55
110
67
105
117
93
139
163
128
119
141
92
169
105
102
122
77
69
105
117
92
148
139
136
109
98
127
92
97
139
146
134
77
126
105
138
152
109
104
74
122
122
122
69
92
74
104
84
67
105
97
137
182
122
122
74
64
37
58
144
92
104
104
118
110
139
84
93
55
101
92
97
110
67
56
126
117
144
128
110
55
139
128
83
164
92
55
117
79
55
132
109
86
89
75
92
77
127
126
178
126
142
67
93
126
138
144
128
139
140
122
142
138
97
122
58
55
169
111
169
93
110
67
134
89
102
122
83
84
136
148
110
110
103
91
128
110
58
152
171
110
168
139
123
107
104
122
126
92
106
178
146
91
122
164
75
55
103
55
110
67
107
123
119
97
122
118
126
178
123
146
127
128
139
104
124
101
138
120
109
67
92
122
132
122
77
136
123
171
92
91
103
74
146
110
178
121
162
104
110
136
86
127
104
125
67
122
55
178
126
77
92
86
67
101
110
114
97
126
140
92
152
169
55
169
122
65
119
105
107
109
131
74
104
178
110
128
100
171
165
92
138
171
69
83
91
104
105
178
124
111
77
79
55
124
134
86
69
68
88
56
122
69
126
123
86
75
91
104
110
92
131
110
93
146
126
122
148
58
129
93
100
132
106
75
93
55
84
152
86
91
123
152
91
75
55
37
56
152
80
103
146
67
123
165
122
111
69
138
67
122
123
178
95
139
107
92
69
55
37
55
92
93
165
69
110
140
108
126
119
91
56
123
139
93
74
152
152
127
104
139
92
117
122
123
83
122
101
118
67
58
105
138
55
134
138
37
105
93
92
105
91
164
92
126
122
126
69
99
108
126
104
84
92
138
163
137
131
152
112
126
101
92
89
109
110
69
119
92
74
91
74
92
127
122
55
69
104
91
111
92
126
146
98
93
91
104
139
92
92
128
145
55
127
112
136
99
105
138
148
37
104
138
93
67
134
122
107
79
126
92
68
118
86
92
111
138
92
148
138
37
55
105
127
126
92
55
67
138
56
91
127
124
100
105
101
138
138
126
178
55
164
146
37
77
92
92
138
55
158
134
127
112
105
142
56
107
180
110
103
178
140
158
126
69
104
124
91
107
93
55
86
124
122
148
92
129
144
127
122
105
93
126
92
69
152
153
165
56
139
136
138
67
74
86
128
138
112
92
97
115
105
86
37
67
134
68
55
104
126
105
146
123
127
83
92
146
105
111
93
92
139
110
89
92
104
55
152
91
138
105
58
99
130
99
115
84
93
138
122
122
110
122
110
55
97
112
122
102
58
112
108
56
55
126
92
152
128
79
126
108
131
92
148
163
122
103
77
144
138
68
58
126
120
178
104
146
119
123
58
89
104
84
117
92
140
171
77
78
107
126
92
126
123
110
110
124
93
56
139
110
134
37
86
55
105
126
69
152
69
169
92
138
130
178
110
56
72
104
58
152
93
144
112
99
124
119
86
93
149
137
104
91
110
144
58
74
107
67
103
75
77
148
92
67
122
178
122
55
55
86
75
109
151
131
127
139
91
119
86
103
112
137
99
153
103
123
67
92
106
127
103
93
92
144
110
77
146
107
111
178
104
152
126
126
152
105
109
56
92
139
67
111
126
123
138
92
88
105
93
112
110
102
105
92
55
158
91
105
67
105
92
92
95
122
144
86
105
67
122
93
110
127
134
92
103
139
74
144
55
58
99
128
105
132
56
126
56
127
86
134
139
139
69
98
55
98
127
144
56
134
126
55
105
105
110
123
79
56
105
97
104
92
104
134
126
55
69
93
79
84
127
138
99
103
105
103
110
131
152
56
144
102
91
99
77
67
123
131
92
139
119
123
122
169
93
124
122
128
171
122
118
128
171
110
69
146
102
88
92
93
126
58
129
135
92
73
158
77
105
56
110
128
158
120
37
107
91
100
110
55
128
58
132
58
92
98
140
79
92
55
138
105
55
110
69
120
93
131
122
146
178
55
122
138
83
118
93
122
128
126
67
113
95
55
105
124
99
138
99
112
93
69
122
123
105
93
146
93
107
127
81
56
122
152
101
67
92
134
104
164
146
92
126
37
111
74
69
104
105
92
113
105
103
107
92
145
86
69
104
122
122
163
152
74
124
58
92
56
104
130
75
126
77
92
92
122
178
126
69
89
146
139
37
178
124
69
58
115
127
69
163
122
77
102
145
109
126
84
104
110
86
126
98
74
116
55
178
74
126
92
110
124
130
92
108
146
92
146
138
107
107
105
128
58
138
169
178
122
138
128
123
162
92
96
69
92
128
72
93
79
104
123
136
109
146
58
104
138
144
152
113
100
86
93
127
58
145
146
122
110
163
145
119
140
128
97
93
160
91
123
104
128
93
111
111
111
111
114
78
110
104
100
140
105
92
92
110
131
86
144
134
67
111
141
117
77
152
55
112
92
145
122
55
67
81
74
103
96
92
75
56
127
67
110
97
118
122
110
55
76
91
84
138
104
69
109
96
138
138
109
86
55
37
118
119
138
104
92
127
145
169
152
77
169
107
98
56
99
138
180
58
67
88
109
67
69
77
146
139
95
67
103
93
105
57
105
104
109
92
105
126
92
84
104
126
180
171
138
137
126
118
152
148
93
126
86
110
37
152
146
139
144
138
168
122
138
146
138
128
138
92
106
86
58
152
110
69
101
127
91
86
127
152
127
67
139
105
146
160
69
140
119
92
37
122
127
122
146
180
104
107
55
101
146
123
100
138
111
104
127
58
74
132
151
92
178
148
84
68
123
122
110
199
108
93
56
92
86
92
145
138
79
110
130
138
105
86
55
105
92
112
109
132
138
58
111
160
74
77
55
158
92
55
55
168
140
124
146
105
77
112
129
105
55
110
126
67
55
92
139
120
110
104
148
75
135
139
178
92
55
128
74
104
144
122
98
92
139
109
119
119
110
56
131
124
80
104
94
107
55
124
132
67
92
132
101
146
67
158
99
156
146
116
127
126
84
83
145
92
122
165
127
110
55
110
128
158
106
104
55
152
105
162
111
127
146
114
112
126
120
77
81
69
125
105
105
137
74
107
122
122
126
107
126
72
126
87
93
55
135
138
102
104
146
117
74
93
107
67
109
77
139
119
56
132
55
136
105
127
73
111
83
92
118
138
119
119
77
127
69
136
93
105
91
122
100
99
99
164
92
139
76
122
134
122
126
149
104
110
74
93
120
55
102
139
105
105
131
126
68
69
178
98
122
142
137
132
93
55
92
122
90
55
119
74
105
58
104
126
107
93
103
92
106
126
140
93
92
106
37
67
169
164
87
58
168
119
67
55
92
110
67
74
37
104
117
127
105
119
74
109
75
79
126
127
110
37
140
128
99
67
104
93
117
144
92
136
58
136
109
58
120
122
58
158
92
56
67
105
97
92
108
124
91
117
140
110
67
94
58
37
130
67
117
117
131
67
122
93
86
178
55
139
123
104
118
118
92
58
134
97
171
92
111
109
92
55
123
122
128
92
181
91
114
128
99
88
107
165
124
126
84
91
177
56
93
138
92
152
122
122
67
114
93
126
56
86
86
86
91
105
109
124
77
37
105
56
56
64
126
122
122
115
153
127
108
178
139
138
56
104
138
138
92
106
56
58
124
72
92
105
169
137
156
165
99
156
144
115
67
118
81
100
103
138
77
92
55
178
104
122
56
120
122
146
104
92
87
92
86
92
93
69
68
114
104
89
56
130
55
144
58
142
144
124
74
109
81
105
67
105
98
126
104
125
110
105
138
68
99
104
93
109
107
75
77
128
107
138
37
110
138
56
109
91
122
92
37
75
148
37
110
102
152
146
56
55
119
143
107
105
95
126
67
78
77
110
144
108
93
86
105
138
105
96
92
126
92
110
77
104
67
73
188
69
131
69
126
128
56
122
92
91
84
138
84
126
122
122
77
164
138
126
122
98
126
178
61
37
122
140
74
99
111
119
86
58
55
110
126
103
69
55
144
138
95
84
134
55
37
127
119
148
92
92
106
102
110
67
69
126
95
58
144
111
55
92
111
108
92
111
55
137
91
92
118
144
56
79
180
67
74
68
110
92
134
55
139
67
110
119
74
58
58
109
122
106
110
104
112
128
104
91
104
138
55
92
122
110
91
67
109
55
55
122
83
110
93
122
148
93
79
105
93
110
139
99
55
55
126
134
55
120
122
105
160
79
86
37
138
117
138
138
118
55
134
128
146
74
55
55
97
180
111
104
56
122
110
104
92
171
106
199
93
126
124
132
146
110
93
100
74
74
122
111
55
178
99
55
69
37
55
99
126
79
122
97
121
55
178
122
92
79
182
55
58
110
178
83
105
89
169
56
97
138
128
55
124
105
165
67
134
92
83
95
126
69
178
95
104
100
126
123
107
105
58
92
106
122
119
56
132
86
105
138
105
105
96
77
86
120
100
144
56
86
110
110
100
110
55
171
165
93
86
126
83
105
57
122
110
130
177
81
92
103
140
110
126
58
57
139
99
58
100
152
55
141
117
124
117
139
135
126
178
86
126
91
139
122
146
58
126
120
93
152
37
110
77
87
123
152
128
110
79
103
155
143
37
104
92
85
74
148
114
160
146
91
55
115
146
152
109
109
126
55
92
169
110
105
92
128
92
93
140
75
178
144
126
79
122
92
140
110
55
109
91
101
103
115
92
138
146
105
110
69
55
93
98
144
163
105
140
123
128
126
122
55
67
69
122
37
92
118
105
92
107
91
83
110
114
67
76
55
102
169
140
107
69
122
92
79
58
84
92
67
138
105
69
105
93
109
84
122
86
138
100
145
68
109
126
126
136
102
123
69
79
130
67
83
144
164
92
139
92
164
114
178
158
92
139
86
110
92
56
105
69
127
119
69
105
119
74
152
93
104
99
158
122
99
102
119
75
91
92
69
111
139
171
139
69
142
126
146
134
104
75
122
92
92
139
122
93
163
144
106
126
138
123
67
89
67
67
93
168
69
178
110
56
122
55
56
104
86
128
93
144
121
178
122
55
110
93
122
93
79
93
86
104
107
126
83
144
138
77
55
75
107
92
56
56
109
138
128
67
105
119
107
140
127
112
68
37
55
92
79
122
128
37
58
67
86
148
119
58
105
162
86
127
125
67
124
58
109
123
122
123
138
67
111
138
58
105
181
120
152
178
92
126
138
68
92
56
97
115
123
75
127
107
55
55
104
139
105
148
136
92
123
146
102
104
55
83
126
122
68
37
131
55
141
55
74
171
123
138
138
98
124
56
55
67
67
110
79
178
111
128
105
146
144
93
93
103
127
146
101
86
122
144
127
92
146
92
67
121
145
95
96
138
122
126
55
168
55
178
171
56
92
107
126
55
55
119
104
55
93
139
122
147
119
111
110
152
168
132
105
83
91
127
139
56
131
103
93
107
123
110
126
111
134
128
103
91
138
79
178
91
92
124
58
103
56
68
127
92
92
146
158
127
162
37
138
178
92
110
119
127
145
79
123
92
92
86
37
139
67
92
138
92
122
138
169
92
122
91
91
138
134
115
74
171
107
147
107
91
55
75
99
105
56
79
160
107
122
86
92
106
105
197
104
37
55
104
127
93
102
105
104
93
139
118
122
126
109
178
138
107
112
99
178
97
56
122
120
126
92
74
138
111
58
104
105
83
79
140
138
67
123
171
55
67
101
119
126
130
93
117
182
122
75
77
98
160
139
124
69
103
55
67
83
55
67
92
89
136
92
37
169
122
56
138
104
119
138
92
140
139
119
92
58
124
126
127
122
180
136
93
117
56
93
126
160
55
122
107
148
105
67
104
81
69
79
99
79
122
55
122
158
139
105
136
124
128
124
56
132
180
56
136
83
67
105
169
122
110
136
96
127
139
126
169
110
146
152
149
152
132
138
67
58
110
109
138
105
109
123
131
93
134
110
169
56
142
126
92
138
118
84
100
77
122
152
92
83
93
92
92
122
119
104
103
139
79
123
109
55
126
76
122
93
114
123
163
105
58
86
74
92
92
106
178
138
122
105
67
128
92
37
104
171
76
56
126
147
107
95
146
105
122
128
148
127
58
58
127
127
134
92
104
152
92
120
119
92
146
126
77
169
92
93
104
92
122
110
118
110
146
165
79
37
122
111
138
92
79
93
109
169
106
110
92
141
69
128
189
146
93
178
110
150
180
56
95
146
152
139
99
169
178
55
138
110
56
55
127
138
140
140
180
107
88
37
110
109
139
55
105
92
180
104
102
146
139
37
92
109
67
122
110
162
93
93
92
122
97
92
126
132
105
152
139
110
126
104
67
122
115
104
103
138
55
127
111
68
122
119
115
37
131
111
99
67
99
98
109
79
104
162
138
104
92
105
58
55
134
86
123
83
128
111
127
69
92
139
107
58
92
86
93
126
67
138
83
139
107
144
138
138
83
117
178
128
105
122
140
98
79
69
67
154
158
123
91
128
126
77
139
152
86
142
125
126
93
103
69
178
105
88
112
106
56
88
101
188
138
107
83
114
124
104
58
126
109
158
98
37
126
105
139
111
139
178
110
178
79
87
92
92
122
93
99
104
111
55
135
79
92
83
152
126
138
67
122
119
110
105
86
55
92
132
152
79
74
141
122
107
92
77
77
127
37
105
105
96
83
104
56
111
110
127
55
91
68
56
138
110
111
80
92
104
103
128
118
126
92
115
111
128
138
37
96
126
74
67
134
91
55
55
55
78
79
102
68
139
138
140
104
93
135
56
92
86
91
138
105
119
55
105
104
107
55
100
112
124
169
69
79
124
123
180
122
130
88
139
115
122
37
134
106
140
56
103
126
69
92
122
100
99
74
89
138
92
127
134
104
55
180
93
127
67
126
178
117
100
162
111
88
127
110
91
126
55
147
169
79
110
178
56
67
119
127
126
122
169
122
87
79
178
178
109
92
92
126
123
77
107
182
110
126
164
122
128
105
146
178
37
55
152
105
124
55
93
165
152
117
106
101
56
79
75
111
128
152
138
130
106
138
58
76
77
162
55
92
110
99
119
75
138
126
107
152
92
58
137
131
104
93
55
125
91
99
67
93
128
55
131
110
55
169
91
126
69
140
126
131
37
109
116
127
138
92
142
77
122
103
87
99
103
130
58
138
148
100
103
124
91
107
97
134
122
110
152
67
92
119
75
110
127
127
122
58
105
126
93
140
110
110
92
158
55
128
148
74
125
104
95
105
55
92
55
124
126
163
37
68
92
131
69
146
86
97
92
105
168
55
139
152
169
110
123
74
69
111
74
105
109
128
188
55
110
95
139
74
138
55
93
146
122
122
55
126
120
84
140
93
92
91
138
75
79
110
91
188
128
55
118
126
89
130
106
146
93
84
130
128
93
104
122
178
88
127
105
92
131
99
86
110
84
146
69
122
127
134
123
108
83
139
122
146
104
110
110
83
67
67
129
74
55
119
67
138
95
197
92
86
56
74
178
37
108
105
69
122
113
56
55
67
55
86
148
109
120
105
119
110
139
92
78
58
145
126
110
92
118
58
97
126
41
69
77
122
120
131
92
107
99
58
127
132
67
112
110
178
169
104
124
105
105
89
119
110
128
110
92
144
114
122
67
122
79
122
169
92
137
124
95
107
105
122
93
140
86
84
144
122
58
110
139
169
126
92
129
122
132
156
123
160
92
92
37
146
55
158
74
122
138
94
78
178
86
122
128
122
93
56
58
111
122
134
104
58
74
67
122
127
83
171
69
105
110
125
127
146
138
126
105
74
124
128
139
104
98
55
144
98
58
122
86
105
117
152
91
127
99
122
73
105
127
126
105
56
110
92
58
99
152
109
122
104
102
69
146
122
171
178
138
126
140
37
68
111
142
138
75
37
126
122
131
111
103
58
126
94
91
99
122
78
103
104
114
99
140
109
102
109
67
139
55
92
147
109
149
123
122
55
138
130
74
178
110
111
105
105
109
162
146
77
77
56
119
58
92
110
143
91
92
122
111
134
67
93
118
99
122
105
69
89
127
107
106
83
151
79
168
77
67
110
126
111
103
77
109
145
121
126
122
144
67
92
138
163
92
122
138
126
37
110
119
55
110
109
169
135
127
74
140
92
91
94
77
106
122
109
92
119
91
92
146
132
122
169
124
152
128
124
171
163
146
93
119
182
104
123
195
122
92
55
140
110
91
163
171
109
178
92
122
105
150
55
103
92
105
127
105
152
95
128
163
91
192
122
140
152
158
128
138
56
91
111
117
134
55
92
123
122
146
105
138
67
110
105
99
126
92
84
171
138
104
37
110
152
58
100
132
110
128
92
104
144
55
126
103
138
139
110
79
114
178
107
109
93
127
57
122
105
127
122
119
106
139
99
135
144
56
141
56
58
81
67
119
109
169
127
55
132
135
134
110
171
138
105
104
83
93
105
56
138
92
122
127
104
107
74
117
56
122
131
99
104
104
105
74
107
110
107
99
152
104
67
162
122
126
97
92
122
55
107
110
128
123
67
128
127
148
93
138
122
81
79
122
128
171
89
112
98
91
169
56
74
138
122
79
110
37
178
126
143
127
84
132
74
69
110
89
127
92
146
123
105
123
93
127
93
139
67
121
67
131
140
122
91
111
109
55
100
127
139
148
122
92
171
169
152
110
83
134
58
152
91
69
58
169
92
92
138
122
110
146
58
99
126
102
93
144
67
134
146
93
104
124
162
124
136
138
95
138
112
56
138
55
178
105
104
92
56
112
98
67
104
107
126
146
69
146
122
134
92
120
105
132
122
144
117
103
146
92
114
171
37
92
110
104
97
69
92
103
122
126
114
92
126
100
92
158
92
119
178
134
131
104
102
124
37
111
117
144
110
92
74
126
93
126
103
104
86
144
122
87
104
141
55
110
75
100
110
92
105
141
148
92
122
101
58
55
126
93
109
169
55
152
37
128
55
100
105
138
118
104
104
37
93
109
132
124
88
67
110
86
126
91
118
122
122
128
55
107
55
56
86
94
134
102
105
86
109
93
69
178
110
86
122
56
93
99
118
124
55
139
114
158
130
122
77
124
103
74
79
148
104
55
126
122
77
126
80
118
67
112
178
138
138
139
122
37
91
124
127
124
139
58
105
127
126
105
146
161
126
178
122
69
109
67
122
109
178
110
138
112
138
137
100
124
92
77
169
124
55
148
92
93
67
56
125
105
67
110
122
55
122
55
122
89
127
37
58
105
37
92
126
122
69
110
67
79
131
122
168
111
124
127
152
109
140
139
55
56
74
127
139
138
124
138
180
110
55
122
79
111
55
128
110
111
111
115
92
126
92
56
124
169
149
134
110
74
81
139
55
144
122
105
136
93
138
110
111
138
91
139
104
122
124
126
92
169
122
94
68
92
84
105
112
123
74
92
122
119
56
86
107
55
138
144
145
126
55
110
104
79
122
138
146
111
148
86
95
79
178
55
110
104
86
139
93
127
102
37
144
146
126
99
138
55
77
103
103
117
110
123
125
122
138
127
135
145
93
105
178
55
55
146
105
110
128
115
126
56
98
55
92
99
140
111
130
113
37
138
126
58
138
92
122
84
92
67
122
126
162
81
55
92
55
86
178
139
110
101
146
138
92
138
128
93
163
123
130
144
56
178
83
56
92
160
138
138
91
171
108
122
67
114
98
96
110
137
123
88
92
105
126
56
67
109
93
55
93
123
99
92
58
131
69
107
58
110
110
126
56
107
93
171
126
37
128
101
130
139
92
119
86
108
132
150
144
122
132
169
104
104
141
98
109
158
99
37
104
105
105
126
84
134
126
138
93
92
178
67
55
128
37
97
139
78
120
136
131
105
138
114
162
131
92
119
105
122
122
137
182
169
137
148
92
55
138
110
128
56
92
134
99
178
55
178
134
91
100
92
69
105
92
118
106
37
103
138
144
138
79
138
139
93
92
99
55
120
55
104
93
119
84
55
127
128
171
92
110
126
103
152
148
74
55
74
92
105
111
124
79
165
79
92
123
55
67
110
83
122
77
128
105
37
107
56
67
105
93
92
56
91
56
79
122
138
128
97
86
179
77
138
97
138
86
105
109
129
122
111
111
92
120
89
103
138
149
123
79
146
126
93
123
55
122
55
101
92
122
92
83
124
135
75
107
188
110
98
127
114
122
122
110
128
119
126
130
127
99
162
110
56
86
122
103
94
79
110
128
132
92
77
123
126
67
104
126
134
178
120
126
92
146
126
104
128
126
111
125
171
87
103
148
79
101
126
139
67
122
37
146
84
126
74
144
95
56
110
95
79
118
92
144
92
58
144
92
119
86
55
192
91
104
137
138
103
104
99
69
107
69
55
58
55
86
152
55
108
139
105
178
105
92
120
139
92
86
55
92
55
110
152
104
67
105
77
67
168
92
84
77
142
122
126
110
98
107
101
111
178
79
58
77
67
111
104
92
141
168
56
127
119
76
122
139
119
152
111
92
119
110
55
58
144
91
178
55
93
104
122
56
105
107
104
126
117
122
126
178
93
99
75
117
105
139
92
169
92
110
75
128
105
144
67
138
122
130
178
78
119
104
138
110
41
152
105
130
134
119
140
152
127
139
92
37
109
122
128
67
110
74
126
58
105
74
114
169
178
67
128
126
92
99
83
55
132
58
169
140
69
139
130
111
127
104
122
122
122
145
140
152
104
158
126
178
92
126
55
122
126
105
75
92
55
110
134
171
86
109
126
92
74
138
119
110
153
111
103
55
152
68
107
75
134
111
107
98
178
135
122
169
67
122
107
162
138
132
96
67
104
127
117
92
69
122
55
113
148
129
115
93
105
126
92
109
56
79
55
56
162
154
146
69
56
146
126
134
99
75
136
75
111
105
137
104
81
127
144
110
105
105
105
126
37
144
105
109
115
188
75
140
121
104
89
77
93
64
107
69
92
162
104
146
127
106
112
119
73
105
112
144
117
124
68
105
58
110
144
37
144
92
104
144
99
92
132
169
104
126
122
110
87
123
105
74
111
114
55
91
99
180
115
110
126
140
127
110
122
138
105
67
87
67
139
149
138
126
167
149
107
55
119
178
152
73
169
92
127
147
139
105
93
111
126
138
169
104
122
123
122
75
122
92
112
122
110
92
139
93
139
106
55
122
58
122
169
58
104
37
136
37
122
93
122
92
107
86
80
84
86
105
92
126
145
123
55
69
55
110
96
128
110
105
121
69
139
132
168
74
72
74
67
132
92
115
146
92
92
104
180
126
111
119
92
58
110
122
69
114
128
69
126
55
92
104
138
178
58
126
55
163
122
152
122
123
138
123
126
92
118
105
126
93
126
92
88
79
114
111
122
119
136
91
100
162
104
95
112
123
109
140
152
112
139
123
93
105
128
139
138
126
93
140
128
88
110
110
139
67
134
144
92
67
104
178
100
56
105
141
56
169
119
92
152
131
138
138
97
55
178
112
103
96
169
56
138
67
110
105
126
178
55
106
105
75
134
119
79
65
55
160
92
171
130
75
91
109
126
67
108
119
110
146
199
84
139
138
56
55
138
120
124
67
132
126
55
123
122
104
92
105
138
56
104
130
105
37
91
93
104
124
135
127
124
77
80
129
127
138
146
122
55
105
120
158
122
37
69
152
126
144
67
128
112
105
104
92
97
58
126
56
126
148
100
103
67
80
69
110
91
144
37
105
135
133
92
112
178
83
104
138
74
104
69
104
119
67
92
99
97
114
180
74
92
117
55
144
126
56
104
68
69
126
132
138
104
92
55
93
107
56
101
178
69
111
112
110
55
119
55
138
109
55
97
79
105
94
140
169
137
55
92
132
93
167
55
86
56
74
69
103
130
98
37
126
74
168
178
110
128
99
105
69
120
146
139
67
126
134
92
55
92
110
91
86
99
37
58
105
180
165
55
105
130
58
110
99
146
69
93
132
93
118
117
145
126
103
126
105
104
119
37
87
178
93
138
74
56
180
138
79
55
91
152
126
67
149
122
92
77
164
138
92
152
110
99
126
101
86
128
138
127
108
139
140
67
127
126
69
104
110
58
127
111
109
138
104
93
79
140
58
58
55
67
75
119
110
138
55
122
55
56
118
140
102
37
107
92
91
126
110
98
58
56
68
68
86
37
106
128
83
136
122
69
119
136
122
152
84
134
110
134
122
103
69
138
99
128
178
144
88
67
122
110
88
67
138
104
84
37
55
93
97
77
127
89
92
56
67
124
158
130
126
131
122
144
122
124
56
105
102
92
104
101
146
122
113
160
168
55
139
178
180
86
122
77
122
55
120
115
123
105
55
137
108
56
55
122
122
119
144
73
110
79
98
67
122
126
58
55
138
160
56
92
69
75
138
164
100
103
171
55
55
92
56
55
91
84
93
99
110
37
92
100
119
105
117
134
92
105
144
128
86
92
117
128
102
110
110
74
110
134
109
100
131
37
91
119
168
93
115
126
37
123
110
144
114
99
92
67
165
55
123
58
118
114
86
163
55
169
136
67
58
68
105
111
96
120
122
58
75
110
122
74
144
55
110
74
99
103
119
110
102
152
58
123
79
132
169
107
37
128
55
37
55
178
139
123
55
126
88
131
146
131
119
152
111
120
68
104
110
129
122
99
67
104
109
119
112
138
104
127
99
163
124
145
105
140
146
109
81
86
119
102
132
108
97
69
139
93
92
126
126
105
144
110
102
122
103
126
69
126
107
122
139
144
75
125
146
92
178
86
55
126
146
164
126
128
99
124
58
86
113
83
126
158
92
109
67
79
58
92
112
148
164
127
104
110
78
83
139
108
167
74
93
104
67
122
108
99
109
152
122
128
68
72
110
144
134
58
92
83
122
140
103
144
122
122
134
146
104
98
69
92
144
123
180
138
87
178
37
92
109
146
37
93
126
115
68
92
92
105
69
86
128
124
93
55
110
99
74
55
139
104
103
117
119
97
79
138
105
132
105
125
128
140
122
106
122
138
132
110
92
171
144
123
117
167
128
100
95
110
125
122
93
169
122
68
138
105
127
104
93
119
138
146
99
104
55
138
67
122
123
127
92
55
131
56
93
86
103
97
126
83
67
105
111
67
138
104
55
141
123
56
132
139
104
130
105
127
134
126
55
139
99
93
55
163
189
69
69
55
99
55
178
105
37
104
152
169
55
138
162
122
121
140
111
100
137
118
117
178
128
139
91
135
67
178
122
148
128
94
138
99
86
56
111
92
118
178
138
55
109
127
100
108
86
37
91
64
77
91
67
104
37
152
92
139
67
180
37
163
140
122
122
122
110
148
67
132
148
93
122
56
92
37
122
55
55
109
55
93
76
134
93
56
92
67
105
135
79
104
139
92
86
74
58
92
88
109
74
91
104
85
127
67
58
67
123
134
163
93
109
178
56
111
75
124
67
108
144
92
188
37
55
104
92
110
138
99
134
55
108
180
93
117
136
149
139
92
104
131
105
79
103
92
105
110
110
122
109
92
37
58
140
126
55
140
105
110
105
83
105
55
110
104
58
83
99
134
92
162
146
92
107
122
69
148
130
58
126
75
55
105
114
138
100
93
141
89
114
105
93
111
138
125
120
104
136
93
107
139
140
67
78
79
37
107
144
99
69
92
92
75
105
162
127
83
104
105
123
110
56
86
91
122
89
37
37
134
75
110
111
107
126
127
140
56
177
132
105
91
122
123
101
123
168
92
178
122
104
144
91
158
131
55
83
55
69
130
105
122
110
92
55
138
110
118
131
144
105
55
110
110
92
113
146
55
164
128
112
138
92
105
124
104
105
105
105
142
92
122
122
122
139
58
79
92
137
74
124
126
138
104
138
72
84
128
177
124
109
138
91
107
67
86
83
77
55
128
91
121
123
109
56
107
111
67
107
138
135
112
67
56
118
122
91
92
92
162
67
128
120
37
123
138
56
110
126
58
101
68
180
109
107
67
99
108
114
67
55
105
91
146
109
109
92
114
103
142
103
55
77
56
55
127
110
79
130
100
91
122
126
99
55
130
127
55
75
67
139
89
146
56
169
128
67
55
111
128
152
105
69
110
69
91
128
83
144
122
122
74
97
86
89
86
105
58
146
138
152
69
107
122
91
92
80
99
144
127
67
81
79
92
127
87
146
152
92
118
148
122
122
92
83
111
92
83
55
110
88
56
93
69
93
180
55
122
113
97
99
105
152
137
92
92
67
83
103
110
97
146
127
105
169
110
55
128
103
128
146
105
75
128
138
79
83
111
107
55
162
67
139
102
103
103
105
67
122
136
138
98
126
115
136
123
126
77
106
105
130
56
138
138
100
112
138
180
119
140
91
119
92
83
93
110
123
138
107
58
169
100
163
126
155
138
110
120
110
56
67
84
99
147
128
88
132
126
105
105
58
55
67
55
119
138
92
105
55
122
117
92
108
119
102
105
119
107
154
58
55
122
58
83
111
92
55
148
152
98
81
110
101
86
138
126
146
110
122
100
91
93
110
55
55
111
107
104
127
139
131
93
92
126
93
151
93
126
138
77
105
122
69
123
128
105
98
55
79
119
126
92
117
110
110
110
128
105
92
139
142
164
122
128
178
105
111
127
124
139
55
92
114
142
82
111
110
126
146
131
139
92
109
119
55
138
55
55
127
167
55
168
67
83
138
110
103
55
76
69
84
67
55
105
55
119
93
88
119
100
72
137
103
126
105
167
162
110
92
126
99
79
86
105
55
144
110
92
144
105
168
74
113
126
111
178
86
103
152
134
55
79
124
83
93
37
67
122
105
178
55
142
124
79
105
55
109
122
126
144
126
37
110
126
92
91
67
78
114
56
67
37
100
56
37
117
68
119
119
122
92
168
178
130
93
100
86
168
91
56
55
55
103
130
93
152
37
79
122
37
119
37
67
77
123
122
138
86
123
99
121
119
55
97
126
122
79
140
138
84
139
104
105
110
95
152
138
145
180
121
109
144
106
93
97
77
104
110
105
105
88
92
122
112
136
105
97
81
138
91
77
111
124
86
126
83
92
67
67
37
119
107
107
105
58
105
87
144
37
103
126
67
104
171
79
106
152
126
37
67
86
67
92
75
104
88
128
140
178
126
86
67
114
86
163
123
94
58
134
119
103
74
119
126
146
86
93
81
74
105
103
121
91
120
93
79
105
123
58
91
138
98
56
91
99
144
162
128
37
78
55
122
126
80
69
138
139
91
86
100
58
122
132
55
69
92
178
126
111
127
123
91
111
92
69
105
138
67
105
93
152
58
104
128
105
109
144
55
56
105
107
138
56
91
93
119
92
105
55
171
79
92
117
137
55
126
104
152
104
124
110
141
68
110
101
162
111
105
127
93
105
58
138
105
55
67
55
55
105
92
110
146
119
134
128
93
86
69
92
56
56
178
67
126
144
123
99
123
111
92
74
128
178
91
56
118
131
37
92
140
144
182
128
139
163
56
55
156
178
132
110
138
92
104
93
56
122
122
110
67
92
37
119
126
67
56
92
99
132
56
56
84
138
55
123
122
110
171
126
96
37
92
110
55
92
126
146
119
55
105
111
131
93
130
37
128
105
105
79
181
55
77
126
102
37
105
138
67
110
37
122
55
74
114
83
162
56
107
148
122
58
37
111
111
144
56
152
56
138
120
37
140
118
67
73
67
68
92
68
92
93
140
139
134
104
67
105
56
167
107
55
146
79
55
37
92
55
105
138
132
138
103
91
158
55
97
146
104
99
86
92
105
123
167
138
92
110
107
117
122
108
69
127
105
130
152
110
178
152
92
103
89
110
110
180
110
79
123
138
122
136
126
93
180
56
152
122
37
106
83
138
115
110
123
103
134
56
127
126
79
91
64
37
104
110
126
124
103
127
122
178
103
67
140
118
129
138
122
92
100
169
56
69
79
121
79
112
105
73
105
127
105
138
130
108
109
104
140
92
95
127
67
55
99
152
122
126
144
103
122
67
122
144
104
86
106
37
131
152
58
119
105
67
140
130
148
105
92
126
89
134
107
146
126
111
37
55
65
58
137
122
104
67
127
37
107
110
111
126
92
131
143
92
92
91
120
149
79
180
93
92
88
146
102
122
111
180
58
55
126
55
135
118
92
67
144
149
104
107
55
110
178
126
86
93
126
122
122
67
109
83
55
111
74
128
92
92
112
92
104
104
55
104
178
105
55
110
67
138
105
126
146
122
104
77
146
105
126
110
122
136
158
74
138
55
112
89
119
91
122
93
122
110
92
56
37
67
152
111
67
138
92
122
91
77
130
93
144
105
160
114
37
110
178
163
99
136
129
138
55
109
149
114
120
86
139
112
128
84
98
152
130
163
139
93
77
123
131
86
123
37
93
131
67
105
130
56
144
138
105
122
56
37
99
93
138
114
122
104
111
104
103
67
93
109
138
58
110
92
104
101
97
128
89
146
110
55
105
110
93
119
56
114
96
145
55
126
138
146
127
126
148
97
92
93
99
95
55
122
137
75
136
58
139
105
86
110
136
119
105
126
124
149
134
126
138
99
67
111
92
128
58
56
55
138
128
84
115
78
122
108
97
169
111
55
139
95
126
127
92
127
140
127
162
126
119
135
37
58
92
104
115
122
79
92
127
152
144
104
107
55
77
122
67
84
132
126
97
55
127
131
104
92
127
120
126
110
110
86
105
138
118
111
92
178
138
99
55
97
55
93
169
182
136
109
122
105
126
107
86
93
138
111
126
144
128
110
130
122
55
122
97
110
104
101
127
87
99
169
180
163
92
83
77
168
127
105
131
68
92
79
165
98
92
92
144
101
134
92
178
126
162
37
55
67
139
74
92
105
105
86
122
130
92
107
79
74
92
100
79
122
178
180
103
67
74
169
158
178
55
139
93
139
130
120
144
178
127
75
99
139
126
72
58
153
106
55
139
127
138
144
104
93
92
138
122
55
92
131
111
104
119
129
55
92
138
163
86
148
126
74
111
130
114
92
75
139
55
138
37
138
178
96
86
105
152
104
79
103
105
119
126
123
118
107
122
122
126
139
74
89
67
122
139
148
122
110
124
178
92
134
107
178
75
93
92
146
128
109
123
55
127
37
178
73
110
138
123
149
74
83
92
126
128
112
104
111
148
80
93
69
138
182
110
97
75
108
92
77
93
107
124
136
56
77
104
122
74
68
84
37
104
104
134
37
103
55
58
134
123
126
132
118
132
122
92
122
105
116
103
100
67
91
86
92
139
37
93
86
110
127
110
146
140
124
104
87
91
93
75
102
127
101
128
105
110
148
152
79
126
74
139
55
55
56
110
131
55
92
126
139
169
146
123
180
122
120
77
178
132
171
127
89
92
88
144
37
120
122
110
93
86
83
138
138
139
162
107
104
104
77
122
67
169
37
138
104
92
67
104
178
123
127
67
55
144
144
128
101
75
119
92
146
126
99
105
111
132
93
101
55
110
97
137
91
37
75
92
92
158
112
91
140
68
105
102
119
128
110
171
74
77
55
107
55
105
105
91
139
93
134
104
111
55
92
122
67
110
55
139
80
122
98
55
126
105
146
97
104
138
110
99
55
144
98
91
69
83
75
93
95
55
115
105
137
110
101
140
134
126
140
122
122
92
74
111
97
146
98
138
106
104
122
92
126
122
68
37
83
108
58
127
146
104
152
124
58
92
79
140
74
98
114
126
106
92
122
109
104
148
92
119
75
86
129
113
92
67
58
112
104
107
131
114
162
55
67
77
56
162
134
92
165
101
180
112
104
86
120
106
115
131
94
144
92
116
98
118
152
105
86
171
122
127
86
81
139
139
123
127
114
92
130
111
119
93
96
139
140
144
127
134
119
92
110
58
103
95
76
138
55
92
138
92
92
110
55
164
128
168
126
146
138
86
68
93
92
58
92
139
122
81
103
119
110
37
180
144
104
137
105
100
128
148
93
123
58
110
110
130
144
131
92
148
110
69
37
151
55
140
158
152
138
86
105
122
87
67
99
92
144
58
138
37
126
74
139
104
74
130
79
91
105
104
103
138
138
122
37
139
94
92
131
67
105
79
83
126
92
103
79
124
141
37
144
55
136
189
102
92
92
131
124
152
58
122
114
106
74
67
138
139
105
114
128
103
178
69
92
92
110
108
58
67
110
131
95
91
67
134
122
162
138
119
104
83
110
138
106
138
109
111
69
114
55
105
171
110
93
92
55
98
110
128
111
126
122
55
146
100
122
146
162
109
178
171
118
199
99
111
148
67
140
110
127
69
89
178
74
119
97
105
102
126
117
92
105
124
138
98
77
134
92
67
178
111
171
122
93
128
105
142
138
163
117
55
107
124
55
115
92
67
122
97
110
105
146
122
105
164
163
110
158
124
103
55
105
130
93
112
138
102
93
79
37
131
110
92
131
138
99
127
67
55
93
58
55
105
144
122
67
117
86
75
146
68
99
169
105
56
145
56
84
80
69
136
139
55
99
138
106
126
138
124
113
122
92
67
130
67
171
117
124
135
126
74
110
105
120
118
171
128
37
117
92
74
67
144
56
122
104
122
163
55
144
127
93
138
110
119
56
92
171
104
146
140
127
74
69
92
37
120
122
55
58
110
110
138
55
75
107
105
93
168
79
114
101
69
77
104
67
102
110
110
92
105
79
91
112
89
139
148
127
104
67
122
128
169
124
139
105
92
126
86
55
74
123
104
97
111
58
83
68
37
127
101
146
127
122
122
110
86
103
68
56
119
93
138
104
107
122
140
120
162
104
127
152
67
106
111
93
92
92
122
58
132
139
104
127
110
152
92
134
71
92
136
178
58
127
110
114
110
77
114
141
104
93
158
120
119
138
138
92
121
74
77
56
96
134
114
55
75
138
125
55
144
69
92
109
126
126
119
104
125
67
105
132
160
93
92
109
124
58
58
111
111
160
128
96
55
89
138
122
158
105
111
127
110
92
56
119
149
107
55
126
58
55
139
139
160
178
69
122
58
132
79
86
92
69
56
122
144
128
144
84
119
104
58
104
104
86
171
110
87
115
92
127
103
103
122
122
110
122
109
160
79
92
79
105
134
138
103
104
55
93
77
91
111
104
105
89
138
139
69
58
37
74
132
110
55
95
106
138
78
178
149
56
67
92
75
88
126
92
110
119
127
80
129
92
128
75
126
86
122
102
56
149
92
58
132
127
55
136
109
104
122
103
86
129
121
92
55
127
83
109
163
119
123
138
180
139
110
122
55
55
163
110
105
178
152
178
167
67
56
138
92
139
91
92
109
97
92
107
110
92
111
83
103
56
127
178
69
98
102
180
92
104
111
93
138
55
122
126
74
147
136
119
122
163
124
68
126
119
122
104
104
79
127
105
83
178
98
144
122
130
122
123
105
182
110
108
55
139
122
110
131
136
56
111
127
93
106
75
126
144
158
91
55
122
93
138
124
58
58
152
105
105
122
169
122
139
97
122
122
136
112
146
123
92
92
110
158
98
104
127
126
180
148
55
97
158
67
88
153
64
138
111
105
55
110
126
89
93
122
105
110
86
138
111
119
126
110
92
152
138
104
122
144
92
37
105
56
37
92
178
69
130
111
138
126
130
132
92
105
93
126
109
86
55
114
152
67
110
131
110
118
98
86
55
110
55
103
110
126
122
107
111
105
117
58
104
58
92
105
55
122
110
37
56
118
92
139
104
103
105
104
55
122
138
83
127
78
92
122
134
92
138
122
178
178
112
144
122
105
138
122
55
86
37
110
81
92
37
131
121
86
122
126
67
92
55
124
56
106
126
128
56
178
169
124
74
128
123
148
160
56
138
111
168
103
67
107
37
91
142
104
122
104
119
126
119
75
120
139
91
104
77
134
74
103
75
95
138
92
140
110
110
37
122
105
37
93
169
112
105
56
93
131
132
180
67
56
68
152
74
92
111
138
126
89
101
55
67
55
58
69
67
110
129
169
93
92
178
127
163
125
79
67
37
92
67
152
104
79
171
122
123
130
123
123
55
134
92
109
146
123
111
152
122
110
178
118
56
146
103
124
68
75
92
122
128
56
56
146
125
97
144
152
86
55
55
67
105
37
92
110
128
89
115
138
115
132
100
123
120
138
124
75
131
105
37
56
152
92
146
83
165
105
105
109
163
92
110
111
146
123
69
84
127
129
74
144
93
78
68
92
74
104
105
119
55
128
77
110
105
67
179
107
119
108
92
105
110
92
122
72
75
56
139
138
99
67
152
119
105
104
126
37
110
37
140
132
75
69
79
104
79
72
114
126
163
92
140
92
92
56
122
127
144
74
93
110
139
111
107
86
111
132
119
55
55
101
138
107
93
92
92
152
58
129
124
126
122
123
151
77
92
94
169
122
130
140
67
93
138
138
109
171
69
105
120
97
64
67
92
158
138
69
126
138
80
111
122
56
128
119
58
119
37
69
110
125
58
102
55
68
128
110
111
111
110
92
126
105
91
92
55
110
144
138
93
93
97
127
139
92
111
91
126
140
118
140
120
119
105
132
55
114
122
79
137
144
89
120
105
105
105
78
114
139
152
136
152
84
152
55
55
92
111
75
178
55
134
103
122
110
124
37
123
104
55
98
56
107
110
67
75
92
105
149
105
103
86
146
139
69
111
100
94
120
122
91
92
55
79
132
122
140
74
67
104
58
77
92
141
114
88
139
126
110
92
110
96
123
149
138
114
124
96
77
86
132
169
138
144
110
86
178
58
58
67
102
115
98
55
178
112
86
56
91
86
136
152
104
55
109
57
136
105
56
93
120
105
131
148
92
128
104
58
146
110
138
120
131
37
106
152
99
120
105
67
92
69
178
86
171
91
124
135
122
56
148
178
106
56
122
163
108
104
93
92
110
67
93
105
123
55
118
126
136
55
93
122
84
124
75
126
95
119
126
56
146
67
105
126
92
67
94
55
107
92
99
126
98
106
152
55
126
145
102
92
148
140
84
122
104
148
130
128
67
37
68
104
92
128
140
79
181
89
37
178
131
122
74
56
124
125
93
75
110
131
55
105
123
73
74
74
111
158
109
77
144
146
97
67
105
169
105
138
55
122
75
79
98
126
109
100
92
152
178
144
139
119
67
93
105
126
55
167
79
126
84
134
163
92
135
96
124
75
139
112
127
119
55
138
69
111
93
37
138
131
122
168
158
146
87
124
168
152
93
55
67
77
58
146
168
92
114
165
111
122
67
92
131
74
55
69
178
122
92
80
152
83
152
152
104
126
69
122
37
79
138
92
104
97
104
92
103
178
122
92
140
55
67
127
122
56
144
67
109
127
107
110
56
122
67
92
178
122
69
164
110
37
93
69
162
55
93
112
105
69
105
122
114
138
110
91
110
79
55
105
122
124
61
74
169
127
92
107
109
67
105
126
56
134
105
119
134
76
148
97
78
126
117
126
138
144
171
126
58
72
58
72
55
79
84
83
152
37
81
163
123
134
122
55
119
128
55
37
105
134
93
138
79
69
128
103
93
83
144
92
126
111
110
109
127
122
109
121
67
105
93
140
55
110
122
75
92
55
126
117
37
79
138
37
119
88
79
122
67
122
37
130
148
104
110
122
110
105
110
139
83
92
37
164
105
152
58
92
130
55
105
100
110
120
99
146
122
138
122
92
92
105
104
99
139
118
67
58
93
140
139
103
112
138
122
169
139
104
158
67
77
55
138
67
93
101
122
180
56
135
180
119
79
104
56
97
110
98
92
144
106
122
86
134
69
84
122
138
144
138
139
56
169
37
126
107
119
121
113
138
77
138
86
56
122
104
122
111
126
110
58
163
162
114
110
87
93
126
138
117
55
122
67
105
55
100
169
138
110
55
119
83
122
76
152
144
124
144
56
92
92
162
55
118
83
58
95
92
56
145
55
111
99
178
114
152
130
152
105
88
123
55
119
126
56
119
92
92
92
98
124
139
156
134
56
142
110
146
144
169
67
152
177
99
74
79
134
110
55
55
126
73
92
37
69
139
122
169
110
135
108
55
127
131
138
146
79
162
178
144
128
139
92
104
110
67
169
110
58
145
67
92
89
75
152
106
69
128
128
106
81
56
169
139
110
56
127
105
139
138
122
103
171
122
139
75
152
96
168
124
69
55
105
110
74
127
122
114
55
91
148
55
136
96
148
146
119
89
136
129
71
128
110
138
83
67
121
144
110
92
92
139
92
118
37
126
58
99
92
92
130
104
125
135
69
106
92
141
146
139
130
110
105
111
109
72
92
92
122
92
69
127
135
124
92
58
134
146
125
123
158
92
98
74
37
67
93
120
67
92
105
105
86
55
122
93
79
78
58
119
99
122
37
110
110
55
105
83
118
138
127
55
79
169
37
140
169
122
93
110
124
93
120
124
91
128
106
92
109
119
95
105
74
162
101
122
105
122
55
123
75
74
55
105
103
119
92
99
93
169
126
91
142
55
56
128
145
84
112
68
55
122
37
92
69
169
106
67
114
91
37
98
92
119
79
126
58
105
92
144
111
105
119
119
55
92
114
167
83
55
130
122
76
138
178
80
124
157
67
138
119
92
68
146
119
108
178
111
162
68
67
122
123
110
93
123
92
75
56
67
122
122
147
98
134
69
55
126
95
93
93
104
137
55
74
98
169
122
127
168
102
37
122
139
111
110
112
110
55
55
92
158
137
97
111
55
55
136
146
110
109
122
79
131
67
84
91
127
158
104
105
126
103
138
171
92
110
75
146
94
58
145
123
69
127
131
55
110
109
118
146
126
92
89
105
104
136
163
86
138
132
105
114
178
158
105
115
56
55
130
56
83
136
178
55
67
92
119
128
149
111
148
127
119
145
104
108
103
91
58
130
105
58
122
122
111
128
139
37
103
146
139
104
162
117
144
128
99
105
56
79
137
122
105
126
56
169
146
68
74
123
168
55
125
140
105
122
91
83
119
93
69
126
67
69
113
105
99
126
69
128
180
104
114
137
56
110
171
105
110
178
105
138
139
55
55
152
110
142
127
108
134
79
105
110
171
114
158
92
146
104
92
55
134
89
123
56
110
58
93
128
92
139
122
104
152
122
127
92
37
115
110
105
81
105
112
107
137
136
123
56
37
138
103
55
103
144
99
93
178
77
104
127
178
129
86
58
96
84
67
92
55
127
124
37
104
107
127
131
122
131
121
122
128
55
93
114
105
140
138
144
37
122
75
93
146
102
152
119
91
138
152
138
87
111
128
55
92
138
138
112
146
91
91
92
101
84
128
58
122
79
102
122
37
139
115
97
126
84
92
104
145
92
74
109
93
58
122
136
55
102
105
104
138
122
98
122
75
58
126
110
83
77
160
56
37
139
145
99
58
139
131
138
104
92
102
123
178
146
107
110
122
127
93
69
74
92
92
126
37
37
105
67
126
111
138
127
119
134
138
104
79
55
77
110
86
122
107
105
92
106
58
138
69
138
103
128
110
93
77
67
55
106
119
105
138
119
145
119
148
118
138
149
109
69
99
69
126
111
138
110
87
97
144
119
83
67
79
69
109
83
95
69
110
105
106
56
134
188
104
141
37
76
127
69
55
98
122
56
56
138
79
164
55
126
97
79
77
108
56
104
67
163
138
79
110
126
86
110
127
132
152
139
144
126
93
56
119
104
92
104
83
130
74
75
93
134
73
144
120
67
123
105
69
118
92
126
119
75
69
105
56
109
128
78
122
122
122
152
127
180
138
144
77
99
55
55
56
178
105
127
92
56
93
92
103
69
122
126
56
37
105
119
160
105
92
74
151
58
105
55
89
122
91
91
128
110
140
93
131
37
122
146
148
152
92
92
79
93
95
95
92
124
105
99
107
104
128
138
119
116
105
149
138
136
92
98
55
110
83
137
81
58
178
127
110
138
67
105
55
127
56
107
86
122
105
180
134
178
126
61
56
56
123
93
69
55
171
107
92
101
167
127
138
126
148
134
79
105
126
122
139
131
123
145
105
122
79
107
92
158
92
128
86
102
121
103
37
74
79
55
181
92
77
105
171
126
139
169
102
104
136
110
111
104
92
168
109
146
77
114
93
160
55
69
67
74
92
56
122
104
110
67
92
55
122
165
122
123
92
109
122
75
110
37
79
126
119
144
169
162
171
108
104
143
99
91
126
127
55
178
126
55
136
108
55
122
103
146
77
93
93
92
95
55
122
103
126
123
126
91
122
122
138
58
148
93
69
136
127
171
111
55
68
126
122
37
93
128
103
168
75
127
136
58
121
109
131
127
37
92
123
138
89
146
138
138
101
77
111
110
67
68
139
126
55
122
171
163
131
110
122
83
77
130
134
103
169
125
75
124
74
93
120
126
181
126
128
104
58
119
165
67
119
68
178
74
107
56
78
131
127
110
100
118
171
122
105
138
105
79
93
67
138
104
126
103
83
105
135
86
92
112
139
110
98
144
56
111
115
122
152
122
117
138
67
93
110
118
89
110
56
99
123
109
92
124
37
55
75
58
178
126
67
160
127
110
128
126
55
107
128
122
110
152
178
93
83
67
171
152
107
109
86
69
111
74
92
92
110
138
101
111
110
58
77
93
56
152
100
144
104
148
86
134
122
55
122
128
126
134
55
93
146
68
178
126
127
84
108
104
37
178
92
55
89
92
109
110
88
89
92
110
97
105
148
139
121
105
122
37
56
67
107
55
120
107
140
93
146
99
74
169
78
55
119
123
69
58
55
142
122
134
134
122
110
74
146
100
122
126
105
111
104
139
69
125
55
58
92
138
109
74
128
77
67
105
91
130
91
56
146
130
92
56
92
104
126
109
92
110
93
93
55
92
55
69
160
79
98
79
111
98
117
99
68
55
136
91
104
93
146
55
99
126
140
55
37
58
101
56
88
92
92
101
110
106
37
79
74
112
168
88
112
152
177
168
98
104
79
138
110
139
55
93
111
120
105
131
105
86
79
109
98
129
67
93
134
122
127
102
56
122
122
160
130
114
127
178
122
92
109
55
158
148
92
109
138
149
69
127
76
88
58
148
104
122
67
100
163
104
152
122
83
126
84
109
93
106
180
122
67
180
55
120
123
122
75
77
80
146
142
109
138
105
109
81
83
105
67
127
58
126
91
92
144
139
93
91
138
97
139
132
121
128
67
142
124
113
124
121
112
110
152
37
122
168
111
55
131
79
69
139
139
106
131
163
152
149
86
122
103
68
97
67
131
122
37
139
119
37
104
104
146
67
119
151
110
122
110
69
138
110
67
114
144
77
122
55
110
69
138
128
108
134
110
110
110
67
169
149
55
126
148
178
67
162
144
75
108
109
119
110
146
137
110
58
37
139
138
104
114
99
111
56
103
55
55
146
93
128
75
69
92
126
100
105
178
122
152
55
178
169
115
91
122
91
83
92
92
79
93
122
69
107
140
79
104
126
58
58
93
111
92
92
158
92
110
122
127
152
69
37
105
100
139
37
119
92
107
123
55
55
92
110
69
103
92
138
56
92
122
122
128
126
168
74
67
92
139
123
136
171
138
123
104
123
105
92
55
74
83
97
126
168
110
110
91
74
114
55
58
105
104
55
92
127
151
37
105
152
126
37
37
93
58
110
122
67
99
95
148
152
110
56
171
148
75
130
134
110
139
104
93
169
56
160
105
105
126
55
139
55
152
110
79
92
106
128
101
138
146
144
56
169
68
74
144
138
117
171
56
126
178
152
169
37
77
122
92
79
107
146
152
146
77
101
119
68
171
77
138
123
77
69
69
55
56
122
158
98
119
58
112
139
109
122
86
138
67
119
55
120
100
58
128
129
86
114
37
93
107
105
84
168
152
110
122
113
105
73
110
178
99
152
122
105
127
97
105
163
144
119
67
93
127
55
105
93
104
64
130
171
146
55
139
127
122
110
126
178
67
144
68
93
156
124
123
144
144
120
58
103
178
110
77
107
122
110
84
169
55
100
144
105
89
134
95
103
92
55
110
110
138
158
109
144
128
109
124
139
104
158
92
92
139
69
169
111
69
122
105
146
58
140
108
180
88
117
93
122
132
152
67
119
110
104
123
163
102
79
127
135
111
77
105
139
149
119
138
149
110
138
56
123
122
100
126
84
144
86
148
119
99
74
178
55
138
106
105
55
97
110
112
69
110
93
99
104
92
55
92
92
99
138
92
91
89
93
134
55
105
104
122
110
138
138
145
110
126
140
130
128
92
103
105
72
69
55
104
55
146
105
130
37
152
175
86
148
127
79
55
136
56
55
124
100
86
37
110
138
128
104
122
101
92
107
104
93
74
92
67
77
58
141
104
144
126
141
122
99
37
138
132
103
67
75
55
79
126
69
113
67
102
122
122
104
92
169
67
93
73
37
119
122
152
104
103
139
134
55
123
109
122
107
107
122
110
84
84
140
37
163
146
105
138
128
152
182
128
100
104
114
68
67
122
146
156
130
171
93
158
138
92
37
98
126
126
131
69
92
135
87
84
55
92
103
134
163
127
134
123
105
131
79
138
75
152
109
92
93
37
92
178
69
138
162
128
79
139
55
55
92
138
131
122
126
139
131
117
134
92
56
77
127
110
171
112
126
92
124
89
149
92
168
138
145
138
69
74
167
110
55
104
101
123
92
145
126
105
105
114
58
76
169
126
105
92
89
105
58
77
104
126
110
138
84
92
131
74
107
123
122
106
123
130
58
77
80
75
144
104
152
135
122
121
103
37
83
86
105
135
103
103
104
112
110
67
75
139
77
104
103
56
110
93
104
145
126
126
126
179
138
100
94
110
123
140
105
127
94
105
104
126
105
110
105
79
103
55
98
91
104
153
110
100
105
122
64
55
126
92
58
119
99
69
135
138
37
58
119
105
103
77
91
148
92
111
138
130
67
126
110
139
117
110
37
125
92
91
146
126
37
180
140
132
122
104
131
86
122
97
93
158
55
105
146
67
92
146
55
69
134
88
92
110
148
139
171
148
92
178
169
119
128
122
56
95
144
58
152
169
69
142
55
145
139
128
126
103
138
121
139
162
92
92
144
126
67
83
99
117
138
126
74
37
128
80
122
74
126
125
129
138
168
120
67
123
138
69
139
86
139
110
96
110
152
117
126
122
104
167
110
134
91
138
92
105
126
145
92
80
83
58
91
105
87
110
114
79
138
69
164
169
56
78
109
111
91
99
109
55
55
107
100
110
105
58
68
126
122
119
58
117
122
107
107
144
136
92
134
178
91
138
55
110
92
74
127
104
93
126
92
105
104
77
128
37
104
110
131
68
105
79
178
86
86
122
92
92
124
126
138
178
110
117
58
93
92
110
104
134
139
55
86
144
138
144
102
126
106
122
169
69
122
126
93
105
58
86
138
55
56
58
144
92
67
37
55
93
139
139
102
124
122
110
55
86
122
149
126
72
112
84
92
147
162
109
97
67
178
122
69
104
126
122
126
118
55
126
122
135
104
110
131
128
75
55
105
109
55
140
93
120
148
118
168
77
57
119
140
92
123
171
130
158
106
99
126
104
110
92
123
91
64
93
64
128
144
92
68
103
144
122
110
110
110
169
110
101
122
108
103
140
138
103
122
139
104
178
138
67
107
180
106
130
119
37
79
92
111
58
138
146
91
127
55
122
126
88
134
74
73
110
97
132
130
163
93
37
79
37
169
79
92
132
105
122
126
126
93
111
110
64
74
86
55
56
122
55
178
92
169
67
128
93
112
105
150
92
137
138
74
93
139
99
92
148
122
107
105
138
97
139
139
86
99
122
122
130
93
86
56
122
149
122
152
37
144
122
55
127
75
67
138
160
69
128
105
137
55
94
37
93
123
178
144
108
109
126
104
74
93
67
92
110
81
102
163
152
139
109
68
152
124
107
100
100
104
107
144
79
140
124
124
56
144
140
199
142
105
58
132
152
155
124
126
55
92
169
56
103
75
94
126
107
92
108
67
55
105
77
131
93
55
55
106
178
199
138
58
97
146
109
91
87
152
110
140
169
110
144
132
122
130
136
149
92
105
58
122
110
74
126
37
132
74
158
149
178
110
171
97
178
104
84
105
105
77
58
67
84
171
110
126
93
139
55
158
119
67
92
104
145
109
104
84
71
139
107
128
117
146
127
119
144
86
110
67
97
68
146
87
74
127
110
178
126
152
139
114
56
126
79
123
169
86
129
158
152
146
56
127
131
55
100
139
145
92
86
58
92
79
105
158
126
171
123
86
126
178
55
109
98
124
110
79
171
106
104
108
112
56
169
140
58
56
117
105
197
93
139
105
138
58
105
91
137
109
58
92
126
92
55
123
123
122
93
104
124
110
115
74
118
88
67
130
138
93
111
103
93
67
58
92
126
139
67
77
104
55
109
105
92
111
117
105
123
144
127
109
56
132
83
81
126
126
92
37
55
83
112
100
69
77
119
109
137
131
156
110
69
110
128
126
107
128
117
125
105
139
134
139
120
67
122
92
132
105
137
110
139
142
156
56
146
110
92
84
95
109
92
81
127
55
110
122
146
109
58
152
37
141
105
119
134
86
37
56
79
152
55
55
130
138
124
92
69
104
178
134
105
123
178
105
99
91
178
79
104
80
86
123
98
83
146
92
81
67
91
178
58
92
110
55
93
91
110
110
138
135
105
146
138
138
104
67
119
78
110
91
107
74
144
105
96
152
105
110
140
127
178
139
110
67
138
105
67
134
122
75
138
56
99
169
55
122
128
91
74
110
126
97
163
80
122
55
91
132
164
93
111
55
103
127
55
134
104
126
146
123
58
144
97
107
122
152
73
55
92
100
126
55
97
120
122
106
75
122
92
111
103
169
169
37
111
140
126
126
79
103
132
138
92
104
122
92
140
55
92
89
58
139
118
104
114
103
134
130
146
122
107
92
120
189
105
55
91
141
91
92
110
134
134
105
117
98
92
104
100
110
58
37
107
55
110
56
79
110
119
119
91
158
117
79
68
104
110
114
92
67
92
119
122
77
131
109
122
97
55
114
126
110
67
152
77
148
110
105
122
92
146
55
92
122
55
84
91
110
178
110
138
105
92
58
55
132
138
128
37
160
105
109
126
79
122
105
55
134
84
138
99
111
55
55
95
146
105
127
128
89
92
78
105
92
84
84
77
92
117
91
98
122
104
67
126
171
138
104
106
128
132
138
139
109
86
169
104
55
127
55
107
67
109
152
67
104
84
169
106
55
86
164
96
106
139
111
58
55
110
132
92
138
93
146
147
152
122
122
122
86
99
69
99
92
110
126
138
126
107
56
128
123
55
148
148
55
69
139
84
110
58
92
55
67
110
141
110
92
110
129
146
105
169
105
104
58
119
110
123
55
144
91
132
56
144
128
180
101
178
122
144
128
131
86
127
110
110
83
103
122
99
152
128
67
140
109
55
56
93
77
74
138
110
92
123
130
58
105
126
169
122
123
122
132
178
110
86
180
110
117
126
138
126
93
134
110
58
92
93
56
165
110
169
152
139
105
110
105
95
68
55
122
75
118
92
83
108
92
169
150
144
112
139
104
110
56
138
55
74
140
141
132
69
142
139
110
122
55
92
119
69
145
56
69
136
110
120
128
126
69
104
101
83
110
134
74
91
135
89
123
92
130
67
109
105
124
139
105
138
101
112
100
68
152
146
122
93
64
110
134
37
55
126
126
83
105
93
168
110
162
124
67
86
169
110
110
55
111
116
37
113
110
55
75
69
67
139
107
93
104
124
110
95
169
68
131
178
67
146
56
152
91
92
109
122
146
105
86
105
99
130
56
169
127
67
146
126
118
110
119
92
126
104
128
92
138
92
129
144
106
122
122
122
99
178
119
93
97
127
123
68
78
119
92
134
110
126
127
109
178
105
127
139
55
56
128
83
69
115
79
127
58
79
139
92
110
138
110
126
56
131
91
136
103
92
146
169
123
132
93
92
110
119
93
168
105
92
122
89
180
74
134
169
75
89
127
109
146
84
110
104
102
110
144
134
105
110
127
169
58
92
111
151
84
158
74
68
118
58
123
146
104
91
140
67
126
67
74
98
111
178
97
134
92
104
128
112
107
37
131
110
56
102
55
107
112
130
89
128
152
69
91
147
92
127
104
92
106
135
110
93
126
56
77
180
124
132
92
58
136
99
139
110
146
126
134
138
105
139
144
169
86
122
144
89
105
67
122
148
110
122
132
152
114
105
86
92
106
92
138
107
55
158
92
55
91
103
126
74
37
124
162
91
75
140
105
122
91
128
79
55
101
137
92
138
156
140
127
104
107
139
109
178
119
37
72
127
126
105
105
144
139
92
122
130
141
95
100
56
107
97
92
147
92
93
92
167
138
55
106
126
152
110
37
130
92
92
105
132
100
137
128
137
138
95
110
109
92
126
93
168
55
110
55
95
180
69
77
58
92
107
75
119
131
69
101
92
111
104
83
122
122
139
134
140
110
93
169
110
126
91
86
104
91
112
178
93
55
92
56
67
86
93
122
102
122
135
118
110
68
92
160
110
139
67
127
37
152
55
139
99
92
91
144
86
55
95
103
92
126
138
158
98
107
89
111
146
104
93
67
110
126
100
122
105
55
110
105
178
120
134
100
138
138
104
110
67
58
140
123
101
122
55
178
142
92
56
93
134
110
119
134
112
58
100
110
138
119
163
55
122
101
56
138
103
160
139
55
128
122
37
138
140
104
123
168
110
105
110
91
128
109
127
144
138
126
110
126
132
114
55
110
96
56
110
134
104
105
120
55
98
148
144
74
100
141
158
98
100
122
180
104
122
37
55
124
110
124
127
127
171
137
112
92
123
55
92
69
178
109
138
122
105
138
55
127
156
138
123
109
92
126
93
79
162
86
138
131
109
103
104
99
37
139
117
158
89
122
110
58
111
56
146
37
147
67
67
130
92
131
69
68
110
56
144
74
123
67
139
83
84
122
92
125
122
56
117
128
67
146
144
56
188
122
138
110
119
132
126
67
86
126
97
55
139
130
139
74
134
134
148
123
104
92
111
111
163
140
130
124
56
122
139
97
55
153
104
93
104
152
171
91
55
56
152
37
138
103
111
79
92
102
92
83
110
109
110
106
124
122
123
122
112
146
126
106
55
122
55
98
152
67
112
125
126
81
138
97
138
92
120
56
91
152
126
100
92
92
92
74
169
122
122
138
139
110
134
101
83
37
93
74
107
138
92
104
86
93
178
101
55
144
93
92
103
105
77
171
74
92
95
83
78
37
92
197
169
122
55
152
110
75
99
55
56
74
135
127
117
105
117
109
140
92
134
128
122
92
122
83
122
146
93
98
67
124
135
58
92
67
99
126
58
93
37
104
168
138
93
55
92
105
110
110
126
93
136
91
55
79
122
148
103
139
152
81
105
93
126
132
123
110
56
134
138
144
148
81
158
139
104
122
98
124
123
92
109
56
93
104
110
92
119
86
83
55
67
138
69
55
77
69
103
103
74
67
92
58
69
105
110
92
67
163
137
128
119
69
107
126
106
126
152
144
83
146
138
99
119
107
124
105
58
122
37
180
128
56
108
104
93
67
126
164
124
92
92
144
146
86
126
120
92
105
114
67
55
130
107
37
77
127
111
92
37
110
107
92
56
152
69
139
178
134
86
146
85
160
92
152
92
148
121
58
98
104
67
105
163
126
140
122
67
120
137
134
67
123
69
107
67
86
129
123
122
91
67
98
107
108
101
92
92
75
138
171
93
127
58
99
137
91
69
127
152
55
67
75
83
146
146
109
136
92
96
99
138
67
169
122
100
97
169
140
93
91
108
55
139
117
86
122
55
169
138
92
37
139
69
69
127
164
105
96
92
110
128
67
122
41
169
37
178
169
75
88
58
84
93
58
99
105
69
92
148
92
92
77
107
92
109
74
180
127
83
86
114
80
118
110
128
142
101
100
178
122
110
119
55
55
93
126
178
109
110
56
111
92
130
111
168
74
122
148
101
101
92
55
165
148
56
127
55
77
136
132
97
134
163
131
77
122
104
105
105
86
79
138
86
92
109
55
110
124
168
55
110
37
104
110
103
135
129
77
92
130
123
84
79
178
101
122
126
110
86
118
69
128
37
78
126
128
91
103
92
110
37
108
108
104
110
126
169
37
122
55
112
105
105
146
110
37
92
56
69
144
92
146
105
67
110
148
158
128
93
75
111
111
79
105
144
127
91
112
152
67
139
55
167
126
80
126
134
92
105
126
93
109
152
92
162
55
111
137
67
99
37
78
140
55
67
37
146
135
101
134
67
144
140
55
105
67
146
56
167
136
123
86
69
110
77
79
137
104
93
55
69
126
122
110
126
110
67
111
93
92
111
139
118
87
93
99
126
126
58
56
58
37
122
119
110
55
55
119
103
156
96
92
75
67
139
105
92
138
92
103
126
178
123
37
134
37
134
122
113
86
165
92
119
126
92
127
169
58
98
80
67
119
140
124
74
67
69
56
169
56
75
88
105
139
122
119
69
104
150
119
112
74
110
105
144
89
138
111
127
91
89
109
138
104
160
37
86
74
79
158
55
56
89
127
105
99
97
146
135
100
148
122
104
56
130
108
79
55
77
93
131
56
55
146
138
110
140
56
92
107
98
144
55
79
67
131
75
92
144
56
74
83
79
99
168
109
168
92
105
37
145
67
140
132
104
101
180
106
75
74
138
105
102
123
91
110
91
126
130
109
55
67
103
91
105
110
121
105
144
105
91
123
56
67
91
122
138
55
126
74
154
128
110
122
122
127
139
37
110
67
56
92
77
165
92
92
37
112
108
84
93
107
138
123
99
102
37
99
58
103
74
77
152
99
127
93
127
93
169
103
55
109
107
97
126
152
69
178
178
112
119
74
124
104
110
92
105
138
127
84
122
171
124
67
103
134
107
92
122
95
93
160
125
106
84
92
55
127
110
104
132
139
56
110
109
148
123
92
105
134
56
67
55
91
110
180
110
77
37
55
105
152
67
139
123
93
128
110
111
55
105
67
145
75
55
178
55
128
78
178
135
152
93
67
37
119
37
93
145
160
75
143
105
69
67
110
127
110
125
138
69
178
37
110
169
75
77
122
126
122
86
77
122
104
55
144
128
104
134
91
117
116
55
109
105
92
98
146
104
81
105
89
69
105
86
91
124
79
55
104
138
93
92
122
126
99
134
134
58
79
92
92
138
56
105
105
107
81
109
67
152
109
92
92
103
87
122
69
151
137
138
96
67
89
93
93
102
131
169
104
105
93
101
126
114
168
103
83
105
107
123
84
81
126
92
104
141
163
178
69
110
131
129
75
152
165
93
139
165
126
139
110
105
126
108
56
158
144
122
92
67
168
67
93
146
110
100
37
146
86
171
104
109
119
55
56
136
105
110
138
106
130
139
55
119
69
56
132
99
109
129
107
138
169
126
110
142
111
107
37
55
68
128
146
68
67
109
160
167
104
74
75
138
101
138
122
122
168
100
104
132
127
91
126
146
109
146
136
110
55
86
127
67
103
123
122
84
58
86
142
180
113
136
83
105
110
138
124
92
69
122
69
110
158
122
67
130
100
79
56
177
69
119
110
93
144
119
188
168
97
92
37
169
127
140
93
145
55
69
92
143
127
101
75
67
138
67
55
143
86
146
92
163
127
104
134
139
138
188
139
55
122
55
146
55
138
136
94
123
138
122
124
37
105
56
105
144
127
122
110
119
55
55
37
110
136
67
67
178
132
128
146
104
86
92
92
92
110
122
83
75
92
169
180
55
139
158
92
131
168
86
86
122
92
178
110
99
110
110
103
132
139
122
92
105
121
55
127
156
109
92
67
55
56
93
109
100
122
111
109
105
67
144
92
105
79
158
137
178
123
146
108
126
124
104
128
162
56
92
148
98
110
107
92
56
56
92
128
106
114
122
114
55
56
93
58
98
110
67
67
122
102
111
101
69
134
92
114
164
103
105
107
122
74
69
67
105
119
67
119
55
37
92
67
120
110
55
122
134
152
105
152
56
86
88
122
134
112
110
86
105
58
144
126
149
122
127
138
119
127
122
77
55
126
162
73
122
77
67
107
67
138
104
68
131
137
99
158
86
104
132
77
69
55
178
68
109
169
126
75
197
127
93
109
178
110
107
139
69
64
55
105
128
105
105
148
178
138
125
93
92
91
104
112
138
126
107
91
139
55
55
93
77
69
95
138
37
79
139
122
128
77
126
139
127
126
147
93
125
122
86
178
75
120
139
138
58
122
56
93
105
55
158
120
110
120
69
56
104
144
67
100
107
78
126
119
58
115
122
144
106
110
109
110
146
110
55
98
55
86
84
139
118
140
69
128
146
110
95
91
158
136
122
99
122
140
92
92
146
105
178
148
118
134
139
126
158
84
88
56
168
163
178
67
126
104
55
104
134
75
142
97
111
86
96
83
75
99
164
100
118
56
69
97
92
55
56
56
86
110
109
93
122
88
122
69
126
67
178
79
92
140
140
126
92
122
146
119
152
93
124
111
122
152
93
113
77
169
126
105
95
182
139
56
92
101
110
91
110
120
143
139
99
86
105
87
110
123
55
122
92
74
74
123
83
168
110
92
134
67
114
97
92
180
107
134
92
69
67
97
138
164
119
169
37
92
139
93
110
100
123
37
74
110
99
109
105
152
105
134
136
138
127
123
127
138
56
124
111
110
74
123
84
127
131
136
110
107
118
141
107
58
105
126
199
55
118
104
158
128
122
117
135
126
131
86
75
144
110
199
104
67
138
55
93
109
67
169
124
55
103
122
86
69
116
111
69
138
92
114
74
130
127
132
122
144
55
56
91
107
37
130
93
158
97
104
126
160
112
107
55
56
128
67
101
105
141
92
111
79
138
110
123
115
129
67
169
79
119
108
122
93
55
160
138
93
95
99
163
152
58
104
55
68
55
138
105
130
146
140
148
97
69
102
79
68
145
139
56
102
69
67
140
37
104
129
92
119
37
92
78
122
138
56
169
158
69
127
92
128
128
56
127
122
138
127
74
83
137
55
83
139
122
110
103
86
152
128
92
91
74
74
55
55
120
105
134
55
118
79
56
121
118
105
88
105
113
99
126
118
110
146
86
105
126
111
91
58
92
127
117
130
110
145
55
169
139
119
128
127
55
178
77
92
110
145
99
91
121
178
83
74
92
96
67
168
164
139
162
67
75
110
56
146
134
171
92
139
101
127
108
67
105
139
119
122
151
122
132
139
111
37
128
169
111
103
126
104
178
92
152
132
58
123
76
115
168
126
104
139
129
145
152
107
37
148
168
111
104
104
37
122
169
105
104
58
114
138
135
140
83
67
86
68
92
142
104
146
171
115
111
86
167
146
128
104
112
110
124
101
199
91
114
138
165
55
148
118
37
92
110
115
92
164
77
103
55
178
67
126
83
107
37
37
55
68
136
131
144
67
148
148
146
37
119
105
103
56
148
75
168
138
37
136
92
112
144
169
146
74
123
110
55
74
160
120
168
138
180
88
131
83
139
169
103
92
93
105
164
178
144
110
93
78
111
109
106
37
115
104
169
92
118
92
119
58
105
169
69
100
178
110
110
96
109
134
106
89
122
142
111
122
67
178
120
122
91
55
124
128
92
122
122
105
76
68
127
55
119
107
98
138
68
56
72
99
92
77
75
165
158
99
118
67
124
126
104
138
138
104
149
125
110
77
37
69
55
138
146
126
103
95
144
84
67
86
104
171
67
107
144
105
67
178
132
178
92
104
109
122
86
69
102
99
160
58
55
77
118
140
178
121
122
92
158
134
98
69
119
92
99
146
92
77
117
93
168
79
92
74
37
110
69
105
122
105
77
79
126
118
117
117
91
128
126
55
89
109
138
146
108
171
78
97
92
55
126
86
119
104
122
178
92
69
104
104
123
64
126
37
55
92
83
74
92
104
109
134
128
104
55
178
88
180
55
122
93
109
103
37
105
37
79
135
75
107
68
148
86
56
105
178
141
146
55
99
94
137
84
144
126
138
110
92
132
122
127
79
107
69
122
67
111
99
138
91
109
56
111
84
92
110
92
110
55
67
105
179
126
37
105
152
67
105
55
140
124
92
104
113
124
86
56
111
127
112
127
56
67
128
55
91
119
139
122
158
169
139
129
127
177
158
92
152
37
83
138
37
162
164
92
128
110
127
132
86
122
119
123
122
122
93
128
138
55
122
108
55
146
112
105
182
120
126
139
119
99
84
126
98
92
104
67
69
69
162
78
105
110
122
128
122
134
67
87
140
110
93
65
77
139
97
123
56
109
58
92
105
56
106
56
110
105
89
83
105
110
96
122
100
137
92
134
178
99
67
109
56
91
110
91
104
127
122
105
80
126
84
111
139
91
130
103
144
107
139
67
138
152
91
68
92
127
79
69
127
55
105
77
79
127
93
55
86
140
124
92
148
111
56
75
134
86
105
139
111
138
67
109
56
55
134
128
104
86
105
158
92
91
138
158
84
152
146
55
93
93
134
56
67
76
153
91
123
110
92
102
105
69
80
182
56
75
109
178
126
141
119
128
115
134
99
123
122
92
105
126
92
108
91
103
138
141
127
122
148
107
126
128
127
139
119
145
138
134
158
96
86
94
91
37
114
91
108
144
85
92
55
112
92
67
55
152
110
92
131
92
105
105
91
99
144
105
109
128
110
75
144
93
67
138
93
56
56
119
169
67
93
162
92
110
105
67
146
92
99
104
138
122
128
83
105
124
55
58
130
105
93
131
91
138
67
79
147
105
126
180
124
55
126
92
113
110
160
138
103
110
178
83
115
101
93
138
131
79
55
104
106
86
55
158
67
92
111
126
122
158
92
138
127
168
119
168
92
105
103
93
77
92
92
105
92
56
178
126
74
130
130
124
126
136
37
104
144
130
144
144
169
124
84
126
135
105
144
55
141
139
110
58
100
101
67
128
110
104
178
67
92
110
146
130
78
58
104
105
111
67
152
92
92
111
104
68
69
55
140
123
92
55
99
99
58
37
120
138
152
178
140
92
139
128
93
105
86
92
83
119
93
99
126
91
103
138
146
168
99
152
145
110
105
137
115
123
103
128
84
92
119
136
131
55
139
134
123
93
75
92
122
69
181
126
110
101
55
104
122
71
178
86
121
140
105
67
126
79
83
104
92
134
92
99
171
138
122
56
74
89
169
119
55
163
55
92
56
132
146
78
132
105
69
110
178
37
92
55
138
127
67
55
103
124
92
119
127
128
101
84
152
134
169
67
115
86
75
84
83
67
110
106
110
56
96
101
126
69
110
126
138
119
56
111
92
79
120
99
135
165
111
122
74
92
118
67
100
122
120
122
126
126
122
123
75
104
138
75
104
110
86
37
92
140
138
111
103
80
105
77
91
92
138
171
147
126
146
37
37
37
122
99
58
95
56
68
56
55
122
122
122
152
139
80
105
109
152
93
92
86
104
55
124
91
94
91
93
130
99
136
99
67
98
93
55
105
112
127
137
138
146
158
146
152
99
55
122
128
92
91
110
77
146
92
67
92
119
110
67
79
132
111
126
92
138
123
122
128
105
138
105
89
162
92
55
107
138
136
55
58
110
110
97
56
75
146
80
92
122
92
139
89
56
121
138
110
123
67
93
146
122
123
79
74
130
124
89
55
101
56
112
55
126
163
152
127
105
83
86
95
94
132
130
86
147
100
171
58
146
58
105
55
127
109
145
56
139
92
112
139
115
128
137
75
110
144
99
136
77
58
122
98
126
123
56
87
164
140
69
67
93
126
77
160
69
119
74
55
169
100
55
124
122
123
140
88
105
95
138
134
77
55
67
135
67
122
67
84
99
122
68
110
92
128
129
37
153
67
142
105
139
144
103
169
120
127
55
122
110
128
67
118
165
144
105
37
104
104
92
123
122
86
126
105
55
79
105
69
127
123
93
122
102
122
92
128
113
55
91
68
58
126
110
138
152
105
126
92
37
69
110
83
69
89
111
55
134
105
55
127
111
117
55
55
146
88
92
145
146
127
169
77
126
105
111
138
110
93
138
93
138
110
69
74
55
110
92
99
109
92
98
93
92
118
127
109
69
127
67
55
123
91
180
110
104
105
146
146
163
120
114
111
119
117
91
77
168
110
122
162
138
138
119
110
178
146
55
122
104
152
109
83
55
105
178
111
67
67
91
92
127
37
110
188
93
105
92
116
169
69
117
152
165
83
126
95
93
110
87
138
139
109
100
114
92
126
88
148
146
140
122
135
126
146
92
111
122
158
55
55
136
67
152
139
139
105
110
126
126
92
127
126
134
67
111
75
126
112
110
122
146
123
139
92
69
55
56
108
197
126
126
93
122
123
110
67
108
97
134
104
93
163
110
37
86
111
107
119
92
55
126
146
58
56
105
55
89
75
92
105
105
69
98
152
67
94
110
138
146
83
92
110
105
79
78
152
58
142
101
103
92
122
113
168
100
103
56
165
75
69
140
146
92
138
138
68
158
118
178
111
91
69
112
109
119
119
120
139
133
93
92
149
67
107
126
110
93
112
86
83
67
67
144
156
134
118
169
74
144
127
92
122
67
147
67
93
104
92
134
105
126
146
110
144
107
92
102
37
56
92
137
55
124
56
67
140
169
67
122
99
139
91
105
93
109
126
92
58
145
86
141
145
144
93
88
77
146
105
146
126
165
56
123
138
139
93
101
110
92
138
110
37
110
105
104
72
122
79
114
131
110
93
55
141
67
58
178
92
92
105
152
55
131
122
138
69
123
152
138
119
140
126
101
148
105
67
132
93
165
74
134
79
126
101
55
129
141
126
138
105
110
126
144
139
67
128
111
105
127
92
138
138
105
110
169
130
117
134
110
79
115
93
154
122
112
171
130
76
123
119
92
97
95
110
126
92
163
138
56
118
105
132
105
165
110
89
99
74
104
146
67
169
123
99
93
122
131
146
67
126
128
109
77
55
105
114
104
146
56
55
102
128
56
55
101
140
112
131
55
130
144
104
124
117
97
93
118
109
128
138
180
107
92
146
104
110
92
55
146
123
138
106
128
164
104
171
110
92
93
104
103
110
145
86
152
83
104
104
104
69
132
127
37
178
86
58
37
122
171
160
93
138
83
138
110
92
119
92
151
169
55
136
180
152
178
151
58
139
140
77
105
169
122
58
127
148
55
144
92
107
67
99
164
141
91
104
110
55
126
180
146
56
75
126
69
178
144
79
56
55
93
75
102
92
67
144
69
92
115
99
144
103
58
127
37
123
110
171
67
122
144
55
67
158
67
139
122
92
148
55
110
127
58
104
96
139
92
178
122
142
92
73
110
67
178
124
69
132
146
127
122
122
58
104
127
144
77
92
122
56
92
58
105
122
138
69
111
127
111
55
92
197
58
118
99
124
73
92
99
146
102
180
91
110
146
145
132
152
92
55
141
144
55
106
92
124
140
171
92
134
163
105
37
67
105
180
110
110
69
178
104
119
93
104
77
89
178
95
124
67
165
120
130
105
92
78
55
84
123
126
89
67
55
138
55
152
86
169
75
86
110
107
140
93
128
126
178
93
98
128
151
87
122
119
156
101
93
128
86
110
105
134
67
68
127
126
138
127
102
178
110
93
79
111
92
189
144
110
117
122
119
75
182
97
122
83
160
109
138
180
126
110
138
140
113
168
91
138
152
79
131
92
169
93
127
92
128
56
140
67
99
122
55
171
158
92
119
138
138
134
93
58
163
131
120
92
105
138
69
115
69
132
67
103
144
126
107
122
122
56
92
92
56
77
103
105
74
93
67
86
58
126
123
130
178
140
126
162
105
127
75
67
88
112
119
122
126
178
122
92
134
126
86
146
37
92
58
56
98
122
110
67
178
150
131
84
178
111
93
103
104
126
56
92
110
111
145
112
138
98
105
130
69
119
110
69
103
92
124
56
114
75
69
131
55
126
92
110
92
71
79
114
120
126
165
139
69
69
109
86
144
69
91
104
112
74
117
100
72
86
146
119
152
122
86
91
105
93
77
55
69
109
67
110
92
80
67
58
86
67
119
124
136
55
107
111
69
37
37
99
75
120
92
105
105
105
105
107
79
56
171
134
127
122
128
91
178
110
55
55
75
136
106
103
138
77
105
116
138
127
99
123
126
120
130
37
97
122
134
92
77
110
128
55
122
132
122
146
106
178
37
55
110
93
67
55
126
74
91
128
79
110
138
122
92
100
122
119
68
144
128
37
74
105
58
129
99
118
105
146
93
93
93
92
92
55
78
92
118
130
79
138
169
91
127
74
105
146
69
97
140
132
79
55
92
122
56
123
86
93
68
58
152
110
92
108
67
126
178
138
117
109
123
138
105
37
171
69
167
178
132
169
178
37
169
56
110
67
92
67
130
139
55
114
180
92
144
92
83
108
129
55
104
134
104
180
137
146
139
79
110
110
138
122
146
89
55
122
162
169
128
109
74
152
37
92
74
138
55
79
58
122
110
171
110
123
105
138
178
103
134
86
56
55
117
93
122
132
128
119
140
109
122
103
178
105
110
139
77
148
107
92
55
56
67
118
55
134
112
91
146
131
69
67
128
123
138
69
139
163
104
119
92
146
160
56
67
169
56
104
75
111
79
121
164
55
74
106
130
119
138
146
119
122
146
104
99
109
163
134
37
139
122
178
77
124
163
105
138
148
138
107
67
55
130
168
105
107
134
74
93
180
79
122
74
122
126
114
156
122
105
178
77
93
88
122
115
92
144
138
93
139
97
55
69
67
144
92
107
131
81
119
126
93
145
92
122
180
56
119
122
104
97
105
93
132
137
93
77
92
138
148
86
58
37
83
88
67
92
104
118
162
134
144
37
105
127
104
126
111
144
86
138
123
127
171
105
167
103
91
92
104
138
111
77
105
131
119
126
131
105
144
104
169
92
158
158
97
138
140
116
140
122
134
97
126
152
93
122
128
105
92
56
111
138
138
122
123
126
69
139
140
67
105
139
144
138
138
119
178
171
122
110
105
98
136
114
111
105
152
55
100
117
106
55
111
134
55
69
139
138
93
91
64
197
110
67
86
180
58
114
137
110
178
111
130
88
78
105
100
169
58
79
103
169
75
117
99
148
55
86
129
110
126
120
104
86
110
140
67
86
92
105
92
122
131
55
110
105
78
98
92
58
144
124
104
69
146
178
130
67
112
81
126
69
146
79
68
105
138
146
92
111
138
110
55
93
144
89
99
55
93
119
138
100
110
107
114
108
126
122
129
93
92
115
91
169
56
152
105
105
86
67
111
126
165
104
152
58
93
67
145
73
83
91
93
152
91
119
119
180
67
127
110
120
169
56
68
122
92
86
142
84
92
123
99
123
56
122
67
110
126
97
55
139
92
138
118
74
167
95
92
109
126
144
126
139
156
67
109
126
110
122
79
104
158
103
107
138
93
135
146
67
127
136
92
105
56
104
126
109
99
139
122
110
93
105
139
146
109
92
131
104
56
139
67
55
107
92
119
74
95
99
104
97
91
126
126
122
105
126
58
144
69
132
122
107
105
37
81
104
55
104
56
68
69
86
92
110
105
78
87
92
119
69
110
99
58
105
77
98
67
69
144
123
169
55
92
74
138
178
109
144
122
104
55
88
146
111
92
79
139
126
119
92
105
138
55
56
119
138
55
152
110
87
121
83
122
131
124
55
56
55
79
104
178
144
122
136
165
138
103
146
93
126
178
92
93
171
169
159
129
68
144
92
55
69
56
146
80
69
114
37
37
105
37
138
107
37
56
110
126
120
128
83
123
110
79
92
138
132
107
93
110
136
89
86
128
100
99
85
122
104
107
110
124
160
89
178
126
146
126
91
171
138
92
126
131
134
134
93
146
138
55
122
140
127
144
37
124
146
126
110
102
103
79
110
105
105
122
123
123
169
127
110
138
131
111
95
110
122
78
140
117
55
122
68
110
122
122
97
95
123
58
55
106
91
144
138
104
168
139
75
131
169
69
101
102
134
57
79
178
110
122
131
55
126
127
178
149
144
93
138
126
120
92
79
84
122
110
110
56
105
55
101
84
86
93
110
123
92
105
101
95
126
104
158
104
69
106
126
178
56
37
146
95
55
93
67
105
92
92
118
58
134
67
41
72
86
144
144
107
105
37
110
56
92
122
138
37
91
126
113
141
56
67
178
105
168
107
67
171
120
168
144
37
79
92
91
107
124
144
103
147
148
95
138
105
104
138
89
75
58
132
55
79
37
95
68
122
139
172
140
144
110
128
110
55
74
117
55
171
55
92
97
126
140
93
127
67
93
100
127
107
136
37
92
93
55
92
121
122
92
117
105
122
67
130
93
97
97
75
104
119
181
93
98
122
79
109
104
122
55
142
146
123
125
69
102
107
123
98
86
92
89
178
152
126
58
56
146
55
55
180
55
83
37
122
111
126
122
138
55
97
55
141
134
148
138
68
105
119
126
55
103
88
140
86
138
138
149
124
146
77
89
75
122
148
79
144
55
107
126
104
104
117
139
106
92
104
130
92
85
106
127
86
55
110
92
105
104
55
102
146
103
110
160
92
99
135
55
126
55
55
115
79
167
117
138
97
109
78
110
55
92
69
149
128
104
117
93
169
126
103
78
124
122
139
107
127
37
72
144
58
97
126
147
158
148
140
105
130
126
119
86
126
92
37
169
164
92
37
105
56
55
126
79
116
110
84
55
74
152
57
131
107
91
92
109
122
99
122
137
128
132
163
91
110
81
103
168
75
69
122
92
110
96
134
92
125
109
169
125
93
67
81
127
109
67
134
127
107
55
126
104
105
101
55
55
122
58
93
109
56
162
67
158
58
105
105
102
102
152
69
138
98
140
111
69
92
92
105
91
122
126
99
146
55
55
110
93
75
122
122
182
122
137
98
162
105
81
98
67
92
139
104
92
134
55
122
122
126
144
152
122
58
138
127
97
55
122
88
97
138
138
127
144
93
98
58
152
56
67
115
74
148
146
122
75
88
126
104
86
127
104
146
134
179
123
134
75
56
93
97
99
109
104
134
75
139
131
123
104
69
138
138
58
148
92
67
135
56
126
55
75
74
111
104
92
138
99
110
67
56
148
110
77
122
110
110
105
56
92
121
77
110
86
86
140
93
55
126
104
92
86
109
126
103
67
105
145
130
106
67
89
55
55
109
122
178
69
127
74
124
169
138
126
120
132
111
138
102
87
92
178
132
58
67
91
104
122
92
79
88
104
111
138
178
89
92
75
113
110
127
127
111
167
118
77
110
92
134
56
98
111
105
144
140
111
127
98
101
128
68
93
86
131
114
107
69
104
69
58
122
178
111
97
105
37
74
67
37
110
99
134
79
104
128
104
92
126
180
56
131
111
140
109
92
134
123
105
93
162
56
74
131
110
138
75
126
77
139
110
104
91
92
92
126
93
110
95
58
55
115
110
55
119
69
55
74
77
105
111
69
67
122
137
139
125
112
199
110
67
77
137
92
77
77
144
114
126
127
56
92
139
92
109
94
138
178
146
55
111
92
144
74
126
92
110
126
126
92
164
92
169
55
109
152
67
110
91
88
119
124
138
144
138
171
105
104
55
75
139
114
142
178
124
67
148
107
92
105
92
122
126
100
144
108
104
102
92
55
128
126
92
55
132
55
58
93
122
103
138
110
130
101
83
99
106
92
126
151
105
171
105
75
92
123
99
55
132
128
67
178
55
138
114
103
93
126
112
144
111
55
126
103
122
126
140
122
67
103
37
136
98
55
84
119
79
126
100
122
69
110
67
91
55
126
105
124
144
132
144
110
169
111
86
83
55
126
37
124
75
180
93
178
37
145
169
177
92
67
105
91
67
124
110
171
149
126
111
138
88
132
122
138
140
128
110
128
67
92
169
122
140
94
122
112
138
105
93
125
77
127
128
122
83
122
142
119
132
92
75
164
160
122
146
92
127
103
91
110
163
182
138
138
122
122
55
146
178
92
93
127
106
122
104
126
114
104
110
138
107
122
122
134
115
92
138
122
67
105
122
75
55
178
122
86
139
97
122
122
121
146
86
149
169
178
123
134
55
124
119
126
69
108
74
37
180
139
162
69
86
75
104
105
79
58
105
37
104
178
107
92
68
81
119
128
178
55
136
92
178
140
138
74
126
58
110
69
83
171
126
117
69
110
97
123
139
169
56
58
178
100
135
107
111
55
104
58
56
138
137
168
132
130
86
112
58
86
123
126
107
99
178
103
131
77
115
117
91
139
111
67
37
107
149
110
127
55
145
101
99
55
69
58
171
167
146
110
92
55
119
105
105
94
101
110
69
55
67
139
103
92
128
125
139
131
75
56
126
107
119
158
83
104
119
119
123
58
104
178
105
138
88
120
148
101
88
139
77
152
136
72
111
93
55
94
138
77
78
111
110
126
106
91
137
91
122
37
79
103
108
99
128
138
67
55
93
122
126
122
91
154
118
98
168
144
169
152
104
134
74
144
152
100
55
126
58
103
178
134
118
92
37
127
68
122
37
55
119
138
86
58
55
107
122
117
83
122
104
93
56
99
126
58
122
138
104
100
92
74
93
97
138
122
122
92
74
144
97
119
134
55
150
95
92
67
55
138
141
110
127
74
163
93
132
169
111
104
123
55
121
55
93
101
163
169
138
58
110
126
103
107
67
55
110
138
111
146
178
67
109
105
97
178
110
144
104
37
123
105
152
37
91
67
98
91
92
95
107
138
124
138
122
105
55
127
37
119
92
152
138
141
165
108
78
126
84
107
91
139
55
99
144
144
119
97
67
77
37
122
163
123
126
111
136
131
105
79
91
139
95
102
169
138
129
55
106
110
111
108
104
138
138
178
37
134
67
84
123
146
93
152
56
171
56
103
127
37
107
127
126
96
97
56
67
78
75
56
55
68
110
124
93
92
37
177
138
92
122
122
109
93
152
129
138
105
109
144
103
131
122
99
135
123
74
104
160
77
108
126
126
110
121
115
122
41
104
136
103
37
86
178
116
92
110
67
105
122
169
112
128
95
67
131
103
81
56
67
92
163
144
124
127
142
104
139
122
122
74
97
100
91
140
145
92
120
160
121
126
120
178
134
75
101
135
55
126
95
92
93
92
86
126
55
97
104
158
37
109
109
160
152
77
126
123
125
58
55
77
93
68
92
137
110
55
99
94
67
56
105
122
126
95
122
55
122
146
69
122
119
67
177
55
91
92
105
56
105
67
58
99
110
69
169
139
58
139
83
132
56
110
55
80
103
92
56
110
110
92
105
56
92
77
188
78
55
110
77
58
92
134
105
75
131
67
144
93
103
79
79
109
111
104
92
126
107
104
122
137
67
64
179
122
168
55
69
92
68
142
74
104
105
139
140
127
55
56
139
146
138
103
122
91
119
114
79
75
145
84
83
144
92
148
122
56
68
148
75
92
140
99
123
91
126
132
138
68
115
122
126
125
122
109
75
107
139
56
136
134
139
119
144
84
112
146
127
160
100
118
92
138
144
55
93
117
107
103
105
144
86
56
144
144
152
111
108
132
75
93
56
130
119
92
105
67
92
77
37
110
138
86
93
123
58
104
37
103
56
105
139
92
127
58
95
37
92
114
93
126
138
120
93
100
146
75
188
69
122
93
130
139
146
75
156
37
56
110
140
92
99
99
105
98
109
163
164
110
178
122
112
105
123
110
165
138
107
37
67
105
140
97
56
92
100
119
110
123
58
91
139
67
93
124
139
162
69
55
119
142
143
126
132
75
119
74
132
130
119
141
120
109
119
105
118
122
92
144
55
138
167
75
79
122
92
77
169
37
92
152
67
131
93
55
93
55
110
134
74
67
78
146
110
122
152
101
77
105
93
55
126
37
124
123
68
138
77
67
98
120
123
105
110
144
122
120
139
122
134
56
55
110
55
148
126
134
67
74
67
124
108
130
122
144
58
91
81
99
124
37
83
169
126
93
110
142
139
107
103
117
122
110
138
98
117
110
110
67
137
110
83
130
97
91
122
152
138
75
102
68
138
128
148
56
37
37
122
86
132
56
97
101
77
56
128
111
127
152
91
145
126
37
131
124
92
104
163
37
99
126
55
139
92
134
138
55
105
127
132
77
98
105
99
56
41
124
103
122
110
105
55
130
128
100
121
92
91
139
178
140
77
92
55
86
126
92
91
180
135
104
56
118
110
55
107
92
37
91
83
92
110
55
180
92
74
146
152
122
109
95
91
79
144
169
149
148
118
178
138
56
92
55
77
119
138
107
93
139
178
138
122
107
122
126
55
69
127
92
93
122
93
110
67
74
178
199
69
101
138
103
181
169
80
126
110
134
127
134
158
180
169
109
178
83
128
93
92
114
144
122
105
92
152
110
117
109
67
58
178
126
105
104
103
139
111
144
103
91
126
122
93
122
93
122
68
101
135
56
56
55
93
134
90
98
131
99
110
132
148
126
126
99
139
69
119
92
92
122
55
169
127
67
126
107
78
67
144
138
75
136
148
92
69
92
139
67
55
92
98
79
55
55
104
178
104
58
92
103
126
144
152
83
92
114
92
126
92
105
79
101
110
178
83
125
105
110
101
127
55
96
55
56
118
109
164
146
122
84
162
92
37
56
146
67
152
178
55
84
115
122
122
126
134
93
55
119
110
112
163
86
55
69
109
86
126
104
105
105
103
58
99
56
74
83
134
79
91
109
104
169
131
149
67
171
104
101
55
99
107
112
37
126
92
67
139
105
178
169
69
79
96
110
107
107
93
92
92
128
69
128
55
109
122
77
92
67
37
92
67
95
152
123
110
69
119
84
92
75
140
104
55
138
163
122
97
152
146
69
93
55
104
138
67
123
107
138
104
67
141
144
105
104
138
127
109
110
104
125
92
126
120
92
74
105
130
122
138
119
181
123
152
167
75
55
111
123
144
110
104
81
110
89
144
127
92
101
127
67
119
169
105
122
99
117
140
148
111
79
117
95
75
77
55
92
140
105
139
67
69
69
106
83
123
77
99
64
95
111
122
122
144
92
171
105
139
118
152
192
91
131
86
128
119
111
56
74
56
74
126
104
83
103
138
128
144
97
116
55
56
112
105
180
138
124
122
119
110
152
141
138
127
99
144
121
92
58
158
110
75
69
55
55
104
152
101
107
69
92
37
95
92
92
92
68
74
92
178
117
128
107
105
119
122
136
103
67
77
109
105
92
56
126
139
130
81
67
92
108
105
115
137
126
128
178
112
80
67
138
92
107
120
137
93
93
69
122
138
79
139
120
55
110
93
110
104
92
55
146
67
93
93
58
92
104
37
78
111
105
107
91
104
92
92
86
123
139
138
37
110
92
93
110
55
77
75
137
92
92
171
126
123
120
92
138
131
67
109
154
99
104
126
164
103
67
122
103
56
134
126
139
122
168
139
178
118
86
168
102
119
79
55
98
122
131
141
111
171
127
110
119
127
92
104
110
93
99
151
188
86
107
110
140
74
130
110
111
69
64
91
102
107
55
124
104
58
112
178
122
195
58
117
126
55
93
105
67
92
92
162
55
92
91
144
105
92
105
105
122
123
144
93
99
139
104
104
110
69
93
91
37
110
91
83
169
55
56
92
111
132
67
122
158
146
120
122
104
114
126
37
92
105
126
37
138
91
69
79
83
58
79
101
68
92
55
56
92
94
150
126
122
111
126
55
110
93
110
138
74
67
55
99
180
104
130
104
126
92
79
122
77
120
69
100
128
140
124
57
128
55
144
122
74
92
122
144
83
146
93
83
97
98
122
158
99
98
104
160
152
83
110
119
105
79
67
128
127
168
92
138
136
58
132
138
148
140
126
169
127
55
105
135
55
140
119
128
58
110
67
134
109
178
93
165
68
103
92
91
121
132
169
131
97
142
74
89
75
107
169
55
55
104
92
77
91
37
93
110
138
104
104
89
79
104
92
67
119
93
79
58
91
105
122
131
79
110
92
139
122
148
107
105
127
139
145
55
119
92
105
55
127
126
67
58
92
109
74
107
88
86
119
75
37
102
144
171
110
77
111
146
88
86
106
111
55
37
165
126
86
158
55
86
58
152
171
142
128
75
144
110
92
115
122
103
120
104
55
92
180
122
80
122
86
91
104
56
67
126
156
91
138
101
80
79
58
127
58
111
92
105
67
92
144
144
122
119
163
122
189
86
178
140
148
92
144
92
104
75
138
110
79
110
123
138
92
77
74
58
122
105
128
106
92
56
152
56
67
146
55
92
92
79
92
58
152
105
169
134
79
129
126
123
126
140
104
84
122
138
55
99
37
123
119
119
98
77
104
100
105
139
104
110
100
69
148
138
58
140
128
151
110
58
92
105
99
89
142
93
138
91
56
122
58
74
139
68
95
69
127
79
140
168
130
110
109
97
105
77
91
110
86
67
144
122
142
104
110
110
92
134
105
110
67
157
128
77
111
110
97
92
74
105
89
123
100
75
123
93
95
105
105
106
91
77
84
122
156
75
110
122
128
98
102
37
127
67
111
91
152
124
117
99
92
79
79
93
130
58
109
41
140
55
146
114
75
58
107
124
75
128
55
119
84
37
78
55
37
152
104
112
67
138
152
138
114
131
132
77
130
111
151
106
109
122
69
128
56
128
138
67
112
162
118
144
92
105
122
124
105
140
105
120
55
56
132
55
178
167
108
105
110
158
138
128
123
146
80
122
178
104
122
105
41
104
126
79
152
138
110
99
139
55
169
112
93
126
105
84
68
55
92
123
182
126
104
100
69
144
110
69
92
144
134
55
79
83
178
103
106
134
100
146
139
55
113
71
92
132
144
160
126
74
127
102
74
64
140
138
110
92
171
112
128
55
146
105
58
114
96
74
171
144
127
119
122
102
86
152
122
55
67
118
55
89
124
152
130
91
165
37
169
126
105
146
107
119
128
67
74
104
110
37
127
69
55
126
92
130
91
71
111
106
92
107
105
137
144
127
122
119
132
111
139
122
106
37
152
122
55
117
128
104
136
115
56
93
55
69
132
106
68
99
67
148
55
118
67
144
127
122
98
139
188
109
55
108
92
144
125
55
101
88
146
126
92
83
93
110
93
109
117
67
142
126
153
69
122
75
105
67
144
119
67
123
111
56
126
127
146
126
138
67
119
126
119
58
67
138
105
92
162
110
128
91
92
140
130
89
120
56
138
130
108
74
74
109
93
126
99
110
126
56
125
128
118
122
106
152
92
114
97
122
69
92
121
122
107
169
74
106
92
101
121
68
119
56
91
131
37
105
72
136
105
132
84
140
110
94
69
69
139
152
109
138
110
126
178
103
127
58
122
126
126
126
126
56
108
103
122
134
103
118
139
152
122
158
131
77
152
83
77
105
69
119
77
116
111
104
110
152
69
144
128
75
119
126
102
122
147
88
69
56
126
92
83
101
107
69
158
92
97
124
92
144
123
134
55
122
128
146
104
55
110
138
37
138
138
124
137
107
127
146
79
58
171
87
125
163
110
67
182
148
139
75
122
132
127
178
168
139
122
77
141
151
144
122
134
111
122
109
79
55
55
92
139
86
126
129
126
105
162
67
168
69
110
105
99
61
67
37
81
100
139
56
128
55
138
146
110
169
144
92
158
181
138
84
111
138
67
77
144
75
110
107
131
117
102
92
130
55
139
169
123
77
110
74
92
115
69
140
169
106
110
128
37
92
144
164
123
86
58
110
101
55
105
127
126
126
92
178
93
110
69
67
177
74
122
146
92
126
137
188
79
130
123
77
123
79
126
171
86
110
92
99
104
97
146
86
168
92
105
110
79
144
95
134
130
123
97
158
87
158
55
67
89
111
105
144
122
104
37
138
140
104
56
37
80
109
124
107
122
110
122
84
77
119
92
127
68
92
105
108
67
55
146
105
55
105
100
138
106
105
56
69
105
105
79
78
81
91
58
74
37
55
110
103
37
122
122
92
99
55
83
138
126
139
138
108
139
67
89
122
178
171
58
128
122
105
134
93
77
79
55
124
67
130
92
146
110
104
134
88
119
139
86
92
92
83
127
146
75
56
92
169
112
104
138
147
101
105
126
158
140
83
101
108
165
180
75
128
126
97
122
163
69
138
83
93
92
92
92
126
75
104
160
75
124
137
126
178
98
97
109
139
119
92
138
92
74
101
141
123
128
104
117
114
152
73
77
152
148
92
182
77
169
171
114
115
108
139
122
67
77
124
58
120
110
145
107
37
55
103
102
134
110
126
127
86
144
110
128
138
114
124
104
178
120
92
136
110
67
104
119
126
68
55
56
83
124
127
144
137
37
106
148
128
58
55
180
124
131
124
138
138
126
79
55
92
102
152
134
126
91
126
55
58
178
37
83
92
92
126
98
87
93
126
134
110
93
93
114
120
111
86
55
122
101
92
122
107
179
158
69
128
68
79
138
77
79
117
99
146
138
100
101
92
98
105
58
132
88
104
138
139
92
182
95
93
107
148
139
55
55
111
112
160
110
110
134
67
122
78
146
104
130
92
67
78
107
123
105
103
101
55
55
92
138
92
138
110
139
108
123
114
79
74
122
146
146
138
93
129
77
127
111
122
93
127
74
92
110
126
37
122
146
105
126
138
104
68
127
92
118
80
111
151
75
111
105
69
138
126
91
134
99
122
93
91
58
117
92
104
37
130
56
126
91
140
111
103
122
67
141
130
105
138
89
131
171
144
139
178
77
112
93
152
122
58
69
119
80
122
127
122
77
95
92
142
68
139
83
124
111
146
56
103
138
56
127
56
126
122
68
79
128
125
56
107
68
120
163
103
69
93
56
67
92
105
93
83
107
122
75
117
127
122
58
178
79
103
144
139
178
92
67
144
67
168
86
92
104
144
109
55
92
77
144
114
55
75
138
178
58
102
146
67
83
119
126
152
105
91
144
160
55
92
146
92
142
37
55
127
104
126
158
104
86
55
138
162
93
93
140
168
37
126
139
55
104
171
135
56
128
84
112
110
169
126
74
122
91
105
107
104
168
154
149
122
138
142
152
107
152
86
104
105
108
107
92
92
104
119
107
110
79
99
144
127
91
158
188
105
93
148
55
152
92
97
37
67
56
147
139
122
56
122
100
65
87
74
197
78
139
89
122
88
105
77
93
93
97
168
171
144
91
92
152
119
75
124
84
98
99
146
139
134
92
55
163
55
87
146
55
111
178
138
55
126
92
105
93
122
131
68
150
92
58
69
86
97
79
105
104
138
144
92
152
113
98
86
92
92
146
119
92
56
55
139
138
127
93
67
122
123
103
148
121
110
93
105
105
146
97
102
127
127
92
69
158
134
92
92
74
169
141
93
165
58
169
152
126
56
104
58
121
178
99
72
67
91
105
178
110
127
122
112
107
69
123
130
104
104
99
93
58
104
56
104
37
123
105
110
122
122
126
104
93
83
128
55
93
107
111
126
86
178
171
55
144
152
77
119
144
168
93
108
178
92
91
75
169
139
102
104
75
92
92
152
92
110
152
146
55
114
169
122
105
131
111
78
127
119
89
119
58
110
93
126
110
122
92
69
146
105
92
84
100
101
37
119
107
61
55
99
105
118
128
75
169
123
119
99
92
105
107
109
127
138
104
178
139
75
79
169
55
110
93
107
56
163
111
144
92
72
122
122
37
68
142
67
146
146
109
77
109
148
92
139
126
109
122
168
122
37
80
55
102
126
84
92
88
67
93
105
146
117
121
127
169
108
109
55
105
122
56
37
93
69
122
126
168
55
111
75
109
140
103
79
55
135
124
118
178
67
78
139
109
79
148
111
69
111
178
113
76
104
105
139
117
79
75
93
106
129
178
77
92
84
122
92
96
123
77
99
107
112
98
126
120
122
92
107
93
105
104
144
56
114
140
55
127
72
84
56
55
92
55
140
126
93
37
37
37
149
67
107
120
178
105
169
107
55
134
110
139
134
144
107
122
92
56
126
92
136
80
126
126
93
104
139
127
105
126
110
140
98
110
92
122
75
146
128
126
138
119
139
169
104
95
69
146
67
92
144
131
104
131
74
100
139
138
136
55
98
56
131
92
103
109
140
138
139
69
55
144
110
140
104
107
122
104
163
152
140
92
146
74
58
78
111
106
68
74
144
128
56
128
138
92
135
130
37
37
67
140
123
108
139
169
99
56
128
86
128
91
171
163
92
92
128
105
138
75
80
117
56
55
132
92
92
56
77
99
55
110
55
106
74
126
144
123
55
146
74
131
67
69
92
92
69
67
55
123
99
74
169
92
107
160
144
111
138
92
69
126
58
126
171
37
92
112
171
122
110
92
73
56
152
58
93
140
178
171
79
163
75
105
58
144
92
126
55
55
127
67
37
110
56
119
67
104
146
110
105
55
56
146
146
55
83
86
99
111
67
148
37
178
55
92
105
168
138
37
92
130
123
84
152
99
56
104
67
105
56
144
171
92
110
95
158
92
93
58
138
139
67
92
93
145
55
158
177
110
88
138
122
138
110
115
83
105
67
111
86
95
122
56
122
86
93
137
56
86
141
68
110
69
162
56
105
122
103
124
83
104
130
56
122
160
98
111
114
130
67
110
78
178
79
93
134
56
109
104
109
37
92
126
37
58
107
67
107
105
75
127
99
92
139
119
92
146
138
55
146
68
67
110
56
92
131
37
102
67
120
84
125
55
95
114
93
95
122
120
87
77
104
89
104
79
105
55
122
130
127
146
139
105
69
92
148
119
107
126
56
92
92
55
132
103
92
132
104
56
152
120
93
134
56
89
127
105
92
99
105
122
99
152
138
105
140
122
88
79
138
110
122
115
105
91
56
102
55
77
146
86
55
178
126
55
92
110
110
84
110
93
79
130
111
146
58
83
138
37
146
144
79
128
92
58
105
163
92
79
120
86
105
111
141
156
88
86
122
126
67
181
105
140
37
107
105
109
152
109
108
130
79
79
110
55
119
146
122
138
100
67
103
105
122
67
178
122
83
110
55
117
128
84
110
37
79
101
56
100
145
141
180
93
110
127
92
127
83
98
128
98
102
93
119
93
102
146
105
84
156
92
126
134
93
123
69
178
77
92
104
92
144
85
75
94
122
139
106
169
127
67
146
37
117
107
58
105
104
122
162
178
56
119
37
122
99
136
128
138
95
104
104
110
69
112
119
105
67
138
69
69
55
178
69
67
139
105
178
72
152
122
67
114
104
67
67
126
56
152
104
67
137
97
88
107
105
139
93
92
139
93
149
110
67
93
92
105
56
37
107
93
111
98
134
91
117
56
115
92
111
131
169
146
111
105
91
92
37
92
56
105
92
75
138
119
128
83
136
144
111
110
146
105
132
101
83
122
144
127
119
139
132
58
56
132
99
86
91
69
108
139
75
37
83
119
98
92
55
138
55
92
56
103
162
75
116
91
93
109
93
67
92
79
110
56
110
58
37
123
146
145
67
102
105
162
127
132
92
117
67
117
134
91
77
92
126
110
74
138
58
134
144
114
102
56
93
101
152
152
67
104
69
55
164
122
138
110
165
127
138
146
67
103
138
169
55
122
126
105
139
100
178
67
108
91
110
140
92
139
92
93
123
73
55
144
146
112
139
105
138
58
148
75
56
55
171
55
146
125
137
135
144
74
77
112
86
55
105
92
137
134
132
79
105
92
79
56
55
104
127
127
114
75
158
171
84
79
97
110
103
128
67
104
110
110
55
110
109
110
110
110
180
120
146
132
112
117
56
126
107
92
94
158
110
110
111
58
77
105
121
126
124
92
83
55
56
55
92
104
67
80
144
92
127
138
55
105
92
120
137
146
37
110
81
158
104
103
139
122
104
93
123
126
67
67
55
58
107
134
136
110
55
168
111
135
119
97
110
100
92
92
179
81
110
79
122
95
93
55
91
112
145
91
78
146
83
95
110
67
68
138
127
152
111
69
112
67
130
178
188
160
69
144
144
123
55
169
126
105
105
110
87
122
122
126
98
134
189
107
56
101
132
122
98
126
84
111
147
114
138
119
138
104
93
55
92
55
122
134
58
178
113
67
111
92
96
77
139
101
119
104
75
128
109
95
138
92
109
178
92
56
93
55
110
144
74
55
67
138
93
103
106
149
130
138
93
130
105
138
92
114
95
148
102
105
132
140
55
126
92
92
171
138
75
118
67
37
107
110
74
178
120
92
86
171
55
108
99
92
114
69
111
99
92
83
95
56
95
103
127
79
77
105
119
131
110
103
84
199
93
119
139
55
87
134
69
178
97
105
91
144
138
56
146
152
168
146
103
105
162
106
67
92
138
128
58
103
160
110
122
92
93
138
180
93
91
128
119
171
128
105
144
137
119
56
92
171
103
84
86
171
101
67
106
37
100
105
124
168
114
110
104
119
84
55
139
105
72
118
88
97
117
138
92
110
168
168
171
92
67
67
138
139
126
130
178
104
104
58
130
75
92
127
122
124
84
138
55
73
138
37
89
86
142
128
122
86
84
126
92
55
74
126
110
103
55
180
91
110
57
56
79
114
138
137
148
130
55
110
37
37
75
109
91
111
146
92
86
109
136
109
75
92
122
110
112
69
138
83
86
92
92
148
139
77
92
91
92
91
118
92
55
178
55
105
160
139
169
128
138
104
109
126
140
105
55
58
148
124
93
122
112
132
122
110
165
92
56
122
146
92
55
104
110
86
148
86
56
86
114
152
55
109
92
91
104
92
146
86
178
138
55
139
55
92
67
104
163
110
123
96
163
68
144
164
75
127
128
99
119
138
69
122
118
56
104
77
199
138
152
74
74
97
109
115
124
122
92
122
86
127
158
97
55
122
56
56
80
138
110
94
75
110
77
104
131
81
75
139
105
127
139
122
104
138
86
128
78
134
93
58
126
37
93
111
104
134
67
128
86
99
99
86
122
56
140
37
178
69
92
138
55
111
105
67
86
178
69
92
77
58
55
119
86
56
130
126
171
178
126
67
127
110
92
55
110
92
58
105
55
55
99
128
148
58
110
178
92
92
139
105
101
91
56
160
91
104
124
127
126
84
92
142
92
130
169
126
156
101
106
134
119
104
138
126
55
56
92
104
104
89
105
140
110
85
138
114
92
93
86
55
144
83
102
126
115
92
67
120
106
123
97
104
99
55
123
144
128
143
86
56
146
92
139
110
107
122
127
130
74
139
127
86
124
55
178
77
86
58
111
126
105
69
122
138
128
103
67
117
78
98
114
126
128
97
105
67
37
55
67
134
104
114
127
140
69
77
126
113
86
135
123
105
110
122
138
58
93
138
99
134
124
132
110
139
103
99
126
119
92
126
138
144
122
130
110
81
142
93
56
126
138
41
135
149
67
97
99
37
56
99
152
93
138
103
130
93
55
87
148
105
91
148
92
86
55
143
74
97
86
93
74
91
58
178
126
169
92
123
105
122
55
55
127
92
92
131
127
75
158
105
100
69
98
83
58
119
110
112
69
134
74
58
122
114
55
37
67
97
148
120
139
110
75
105
107
103
123
138
122
127
134
139
56
117
79
92
102
112
111
110
110
126
126
104
71
93
123
86
122
180
92
178
102
92
136
37
128
127
101
92
138
105
129
55
92
119
37
68
65
104
127
104
55
126
144
140
99
75
127
92
139
152
140
119
152
55
111
128
37
88
55
69
146
93
109
105
106
105
93
178
146
138
93
56
79
158
109
127
127
55
138
134
105
126
110
37
138
122
92
126
77
110
105
124
92
58
111
110
83
127
122
127
98
148
104
37
123
111
79
103
79
113
122
69
119
107
56
118
55
110
92
68
102
114
127
122
126
128
108
92
74
110
146
83
119
55
134
138
105
91
169
126
139
101
171
67
93
126
86
140
137
105
122
138
92
107
114
67
110
98
109
74
37
107
86
110
105
144
138
125
92
118
119
110
103
107
92
138
103
121
67
152
126
152
84
110
93
139
145
126
69
93
98
122
104
92
178
128
139
37
58
84
92
138
164
105
94
134
104
92
104
92
136
55
122
131
58
121
100
165
93
55
69
75
168
77
178
105
67
132
127
138
120
132
79
110
109
110
104
144
126
134
37
85
139
67
97
105
111
69
58
122
139
128
92
74
144
124
109
168
111
68
69
55
140
117
104
139
140
109
104
93
105
105
105
111
109
105
55
107
84
102
110
69
105
147
126
128
93
83
89
169
104
86
105
107
110
130
92
98
97
55
77
104
137
128
79
169
171
100
79
69
58
55
139
169
83
67
169
92
55
134
93
117
151
55
160
55
69
111
83
178
105
110
114
152
180
104
105
92
58
75
99
104
178
139
77
122
58
163
123
37
105
135
140
136
106
79
110
110
120
79
93
103
147
100
117
79
91
111
67
110
143
58
105
136
75
55
122
152
104
127
99
103
92
103
108
103
139
123
104
105
180
104
74
55
109
79
68
123
67
152
55
102
122
68
67
55
128
67
92
146
83
171
56
158
126
128
106
122
139
140
126
122
68
67
152
126
128
93
148
123
75
163
135
178
114
93
79
67
122
144
69
83
120
67
78
130
92
126
110
123
122
37
132
108
171
93
92
122
58
111
118
37
110
104
69
111
131
152
110
105
83
126
56
93
55
67
138
106
67
122
56
100
146
37
87
69
128
68
107
104
109
131
37
68
178
105
136
112
139
146
144
55
68
169
78
107
55
67
67
55
120
109
93
79
79
126
115
169
105
109
124
153
109
108
77
65
180
92
133
55
106
58
138
130
138
169
180
146
134
182
138
127
86
105
67
105
122
68
140
130
104
92
169
144
127
109
126
56
81
122
138
122
180
92
126
37
74
67
138
67
135
124
92
92
131
67
104
37
122
118
55
102
67
67
37
105
97
111
93
92
56
109
104
122
69
110
122
138
92
152
146
178
92
92
83
127
120
55
67
168
141
138
107
75
128
110
127
92
137
55
55
91
144
105
67
56
97
83
126
118
104
169
56
99
87
56
67
149
106
83
138
111
106
137
111
55
110
139
79
131
55
118
126
156
55
146
126
122
67
79
92
56
77
122
67
110
92
127
104
92
104
93
110
178
68
37
145
86
138
142
89
107
139
79
128
105
109
171
117
67
77
111
152
58
112
55
55
138
92
92
67
138
124
135
140
146
117
131
89
122
75
127
104
135
113
122
37
134
138
56
68
139
110
37
101
56
112
104
119
55
92
92
55
140
152
110
128
56
86
86
83
93
86
148
67
126
101
104
105
126
139
92
131
74
79
69
128
162
104
105
123
152
138
104
92
87
73
79
144
58
77
140
89
126
137
123
56
86
110
119
55
110
91
88
138
115
92
126
86
105
144
37
127
37
56
169
139
146
138
111
55
120
105
79
106
127
89
104
37
102
123
106
122
86
55
92
101
126
84
111
127
104
37
120
169
81
93
55
84
128
122
152
123
163
77
144
123
180
120
126
123
105
123
138
109
136
93
138
142
134
138
178
67
105
122
138
109
100
123
79
111
67
83
128
93
131
83
126
130
109
120
93
98
111
67
134
106
171
123
134
56
105
86
152
139
126
138
111
91
74
99
119
55
160
111
55
75
160
123
56
119
111
55
136
178
109
104
84
94
152
37
160
144
131
55
67
56
69
95
74
139
146
91
86
55
104
91
92
84
79
126
92
86
93
138
122
67
68
111
93
160
119
119
83
126
122
138
105
127
83
93
75
77
69
134
58
110
128
110
139
86
108
138
123
67
136
80
91
74
146
86
136
55
104
121
122
102
138
55
122
55
55
56
104
37
75
37
110
83
92
92
138
56
110
79
99
86
130
107
105
109
138
152
169
105
93
95
123
56
131
110
104
127
103
101
56
152
119
128
105
139
138
119
132
55
126
58
69
95
58
134
154
67
78
127
123
79
171
93
105
134
55
135
78
67
108
122
55
111
92
138
138
95
146
152
122
141
127
126
119
67
93
97
132
77
182
119
139
122
105
144
86
112
169
37
128
92
113
124
131
105
77
120
139
55
127
92
80
110
100
37
105
94
93
130
55
93
117
56
138
122
127
58
138
118
104
100
67
199
144
74
122
107
122
105
140
84
92
152
146
92
109
69
99
55
126
104
149
92
105
112
139
130
67
37
55
138
138
109
110
88
55
104
105
114
56
92
58
67
75
114
55
131
112
69
119
110
74
146
97
110
144
117
55
104
79
37
127
124
84
58
56
158
178
105
92
67
91
138
105
67
56
148
67
122
128
95
55
79
160
56
152
136
69
104
111
178
92
68
84
67
180
86
107
93
110
144
104
144
91
37
144
119
105
140
58
127
169
92
110
105
37
75
122
115
122
138
117
104
92
146
138
139
146
145
132
79
55
79
178
92
110
92
67
110
67
74
178
122
112
145
132
120
93
146
124
139
109
105
122
111
156
109
105
104
148
110
67
84
67
58
136
104
139
139
120
113
55
74
152
138
110
141
93
117
99
146
112
79
91
139
144
138
149
109
74
146
37
138
110
127
142
93
93
75
152
107
132
83
110
96
55
92
145
127
138
92
67
145
92
135
79
127
67
83
86
37
152
110
107
69
114
79
119
56
77
91
133
55
163
92
147
110
84
92
105
69
119
93
55
67
105
144
138
79
77
139
122
56
114
55
126
139
98
99
139
124
160
126
111
137
92
178
128
93
110
105
37
92
92
75
92
138
124
77
89
56
115
144
55
117
125
101
110
120
75
110
55
134
171
127
142
67
109
169
55
106
138
79
93
83
128
92
126
124
56
130
156
101
109
110
114
180
56
122
92
58
120
77
75
109
67
138
67
110
138
86
79
104
110
67
105
73
55
115
139
92
93
122
75
55
128
169
111
55
72
86
105
126
75
104
37
105
75
83
56
67
114
105
84
126
93
58
169
56
107
123
105
110
55
110
55
138
93
58
135
105
55
89
130
134
123
92
109
58
122
56
127
74
67
92
127
122
122
55
55
179
148
97
104
105
114
140
37
152
146
148
126
171
93
134
139
99
102
37
69
123
92
157
104
146
122
178
99
162
94
135
92
126
37
110
104
86
104
107
56
76
91
138
126
86
144
123
111
110
122
91
103
127
93
104
104
103
92
107
168
144
74
104
92
112
123
148
110
104
108
131
110
79
178
122
77
93
178
126
92
99
77
122
146
105
67
110
138
67
122
122
97
192
128
67
55
126
137
126
123
115
55
127
144
102
110
178
104
123
86
144
85
105
178
148
55
80
93
110
128
122
126
124
67
69
84
105
146
111
67
122
56
67
93
56
122
138
58
67
139
127
124
107
105
122
75
178
92
110
110
142
93
55
128
92
37
152
103
79
171
55
122
92
92
110
56
114
126
92
128
56
111
158
127
148
89
88
108
104
55
92
92
105
99
110
93
124
134
92
127
122
169
138
138
55
67
128
134
122
102
103
68
83
171
56
149
109
104
104
55
100
98
75
123
104
55
169
126
55
128
55
144
84
171
130
56
148
122
56
104
127
123
178
146
146
56
152
75
92
105
74
115
171
69
132
103
130
152
138
169
139
83
144
169
56
92
109
67
86
112
144
132
92
120
140
136
93
110
92
55
111
93
118
55
78
55
37
138
79
58
168
103
92
89
111
129
138
138
124
92
79
152
55
110
138
106
110
58
122
124
150
122
69
37
107
188
56
118
56
105
135
122
131
56
122
126
55
109
164
178
122
139
91
58
123
179
106
160
134
74
56
80
138
69
55
111
69
110
103
124
74
79
102
152
122
58
67
92
86
128
111
105
109
58
178
144
102
91
171
92
138
122
126
122
69
110
79
37
92
92
37
92
84
67
126
111
64
134
91
67
37
101
138
56
92
110
124
92
162
55
138
37
98
178
109
58
67
87
160
139
139
55
160
69
124
144
92
103
138
93
95
111
103
139
56
56
107
104
101
107
128
58
92
37
134
119
111
169
139
122
81
126
144
104
140
104
74
92
132
107
150
178
122
92
104
110
146
122
110
92
122
127
55
107
148
126
139
67
146
96
152
122
76
112
144
101
93
93
94
144
110
55
138
92
97
126
106
55
98
127
93
163
92
77
102
122
144
138
37
110
91
84
131
144
79
87
75
105
126
122
74
92
105
104
138
126
105
134
119
169
112
86
67
56
83
117
101
88
152
138
67
55
72
91
92
78
87
110
91
178
122
127
69
69
144
37
67
111
56
134
171
152
144
146
126
126
92
105
77
126
152
58
128
107
138
74
138
178
134
110
55
138
127
93
72
58
122
105
56
135
67
132
92
135
122
110
91
132
123
127
93
146
171
92
146
120
55
55
92
55
112
93
121
75
55
79
122
119
106
124
91
148
130
112
110
99
93
58
137
92
138
91
129
92
171
178
109
92
138
64
67
138
69
138
126
77
160
103
128
93
67
95
164
55
79
67
88
139
109
37
110
127
93
86
105
122
138
69
92
92
117
55
124
97
58
56
105
126
55
105
86
37
169
138
99
58
120
104
138
104
138
55
135
97
111
67
93
104
178
112
122
136
107
86
160
123
152
124
58
122
105
138
167
164
169
91
92
127
180
122
104
110
126
101
100
69
178
77
104
139
55
92
77
138
99
131
58
93
163
58
105
126
92
69
138
178
138
149
86
112
124
126
104
57
67
101
152
67
104
104
93
137
83
68
56
122
152
126
58
83
113
126
132
127
102
119
84
146
99
97
75
130
146
126
55
55
122
92
126
110
37
124
119
135
86
56
146
118
152
178
92
107
99
83
127
138
79
93
92
104
199
67
67
138
169
74
55
129
110
55
122
55
58
110
92
75
105
67
92
151
126
91
104
67
146
148
122
109
67
111
101
126
105
139
105
171
138
144
138
58
69
67
105
128
75
146
131
122
123
112
105
104
86
164
104
106
162
127
169
67
123
139
56
57
168
105
123
55
67
37
180
131
87
141
104
130
128
75
152
67
77
69
131
106
74
114
110
91
132
152
88
110
104
127
151
126
110
104
138
97
98
178
92
130
169
99
117
104
92
130
146
105
58
56
56
130
75
137
146
139
168
114
69
146
127
123
67
55
115
55
67
164
136
127
137
162
178
128
180
77
119
127
55
55
105
120
126
93
150
98
55
101
119
56
67
152
37
126
109
56
138
138
93
92
55
110
79
86
79
138
123
138
126
108
105
119
68
55
102
107
79
144
158
92
110
105
122
122
67
91
127
67
77
92
126
84
69
105
121
55
144
126
37
103
81
169
104
168
74
126
104
105
152
152
102
92
98
55
146
55
126
103
55
84
91
163
109
100
55
104
92
117
168
103
86
110
110
105
111
67
148
134
67
135
55
79
126
56
122
104
68
67
117
37
110
105
112
92
67
68
178
37
58
106
55
69
56
152
56
104
105
58
124
107
56
99
55
92
178
98
67
89
122
156
139
122
105
124
144
105
105
152
160
131
55
56
131
126
146
99
160
79
98
91
130
126
55
138
146
139
138
110
67
124
92
139
169
126
102
89
122
91
92
126
105
199
178
55
138
141
128
103
55
37
111
139
122
144
128
122
139
128
37
110
102
55
140
92
110
135
77
105
93
37
55
100
126
129
92
178
67
55
110
84
178
163
58
69
106
126
100
126
164
122
122
112
101
55
77
118
92
75
84
69
126
110
81
91
95
126
67
131
140
83
88
122
104
118
92
122
93
126
58
75
105
55
126
110
37
178
101
86
109
168
93
79
138
139
101
102
142
68
138
110
92
104
56
55
124
124
134
84
67
86
93
55
72
140
144
55
148
114
99
130
152
103
152
100
152
110
37
118
92
92
92
122
119
146
102
132
180
111
139
171
105
93
160
92
103
99
179
119
126
74
105
69
110
146
84
91
55
148
69
122
139
138
146
69
92
93
128
126
138
138
105
110
107
123
92
91
148
127
138
91
122
55
104
37
92
74
163
67
107
126
139
160
75
92
105
123
160
107
180
140
92
79
144
92
101
92
92
98
37
93
104
130
127
158
117
101
92
160
122
55
178
182
93
152
95
92
106
138
109
56
171
138
37
146
67
55
178
88
111
138
104
169
122
83
99
146
86
99
55
122
127
103
122
67
104
68
149
105
127
110
105
55
138
92
136
87
99
86
104
67
100
144
163
79
94
105
108
55
105
128
104
55
92
178
104
122
167
55
138
55
127
138
110
97
100
144
67
69
122
67
104
192
163
92
99
144
37
92
67
163
128
97
114
95
127
122
77
101
89
161
110
146
78
168
127
110
124
99
73
112
119
134
93
117
104
131
149
126
69
138
55
105
138
99
93
58
104
132
105
134
91
104
104
92
107
91
122
105
105
126
92
78
112
120
105
56
104
140
148
92
105
55
74
104
160
78
138
146
93
126
124
165
146
77
111
138
88
77
101
122
69
83
144
110
97
105
123
152
140
58
127
68
123
92
126
110
138
151
111
122
126
77
105
80
104
67
58
98
109
106
122
107
162
148
92
180
124
126
105
103
55
122
106
55
151
140
163
55
101
138
110
109
69
93
95
116
55
56
130
98
75
139
139
56
105
93
126
92
91
105
56
138
124
67
58
110
89
79
128
55
105
144
55
92
55
69
92
93
144
56
148
126
93
164
100
136
69
92
93
138
93
122
138
128
152
105
127
110
98
55
55
92
55
77
122
37
92
100
146
136
118
122
37
111
119
75
126
111
146
98
58
92
102
125
91
142
107
55
127
92
148
56
112
110
115
113
126
180
140
160
133
117
55
64
79
146
148
104
37
55
104
105
105
138
79
93
139
56
144
127
55
138
139
105
56
86
138
92
119
132
86
182
86
92
56
112
93
104
168
84
120
37
105
149
169
168
105
56
131
92
140
74
105
109
55
104
134
144
144
146
74
56
104
81
105
89
56
77
79
79
109
74
93
169
86
58
122
97
134
77
93
127
136
105
97
67
131
37
89
138
128
93
127
126
105
55
56
92
120
127
56
122
134
126
68
93
122
122
73
110
163
178
145
58
126
178
105
69
138
127
92
107
75
124
119
56
86
139
148
134
67
137
140
107
83
109
91
61
128
110
114
126
119
86
58
37
138
105
119
74
101
76
67
104
152
126
55
97
67
139
69
135
120
68
97
67
103
139
97
144
100
126
160
56
132
92
164
126
171
168
110
58
122
125
105
163
58
123
92
67
114
93
75
107
110
138
132
152
97
92
92
138
56
128
58
146
105
93
128
55
152
92
41
86
127
120
74
92
168
162
130
103
146
77
55
111
122
78
86
104
91
112
152
126
122
178
134
180
142
103
55
111
106
111
146
160
58
55
130
138
56
127
67
114
93
105
99
102
89
83
89
178
96
93
134
105
104
91
141
76
104
126
152
126
124
105
148
110
67
109
127
110
86
111
169
122
102
55
137
127
110
104
134
79
92
58
58
152
100
122
178
110
58
92
109
127
83
55
122
146
74
99
137
93
55
122
109
104
122
137
110
37
75
110
105
104
55
124
92
55
56
105
140
58
92
126
127
103
110
67
139
146
105
92
67
139
120
110
91
124
105
122
55
67
107
108
110
123
55
110
55
103
178
139
126
105
56
95
122
91
58
89
126
99
139
162
37
92
134
132
55
105
93
135
107
58
124
58
77
58
138
130
75
138
67
131
98
144
93
144
122
122
110
109
78
56
119
119
109
105
122
152
110
178
102
151
92
57
93
92
91
107
123
69
99
103
55
92
58
122
127
94
74
138
107
192
92
138
135
101
163
171
122
144
67
56
91
67
180
56
93
138
91
128
163
98
111
146
121
79
146
55
109
119
104
56
104
92
137
55
101
56
105
79
169
146
89
93
134
138
122
111
118
105
77
140
151
105
93
110
55
113
56
92
124
141
92
55
110
144
37
75
140
131
128
131
106
55
93
127
100
138
93
109
84
58
138
105
104
144
58
148
105
178
77
126
178
84
126
93
178
56
93
67
153
139
122
122
146
92
138
102
126
55
110
79
72
122
110
144
93
168
130
104
58
108
126
92
122
55
55
140
83
146
93
127
104
136
110
91
112
58
92
89
55
124
138
92
120
122
55
122
101
96
141
103
99
92
93
56
58
101
92
152
58
120
126
67
107
126
180
112
144
55
110
120
152
102
122
126
126
97
105
169
152
104
124
111
103
58
117
146
74
146
104
148
150
67
162
178
107
107
92
37
110
56
146
97
122
92
79
138
92
92
92
117
102
144
114
123
95
98
168
97
110
97
92
37
99
188
110
132
178
158
92
171
110
146
109
144
55
55
37
171
112
122
138
110
128
91
178
146
114
104
127
55
168
86
67
122
67
67
91
110
122
104
91
138
107
128
55
138
114
138
55
139
37
123
93
110
92
128
79
118
56
126
119
124
120
123
128
89
107
83
152
122
86
105
111
119
105
103
55
92
86
130
110
92
67
110
127
111
139
152
56
122
171
137
58
115
56
77
122
110
132
80
105
105
137
94
105
160
111
111
79
92
124
144
135
126
93
55
97
79
55
119
55
104
105
160
55
119
109
67
79
74
121
107
37
55
67
103
123
127
119
139
169
152
55
92
92
141
68
56
178
167
73
127
109
55
88
144
92
67
93
93
112
119
178
163
138
93
152
138
111
119
119
56
75
92
37
58
95
74
55
110
114
152
55
131
77
88
178
105
104
104
188
86
86
105
99
86
128
93
93
105
88
136
55
178
92
128
79
72
95
86
92
92
37
127
130
55
125
79
104
69
138
83
56
67
103
91
109
126
92
75
115
141
128
146
79
130
55
139
130
140
56
126
92
37
104
55
145
92
105
110
56
93
122
81
135
130
145
171
122
113
139
110
180
68
139
67
178
105
137
58
107
98
138
92
67
169
92
105
101
159
107
175
105
55
163
119
104
110
92
77
103
111
75
149
104
37
56
98
89
110
107
55
86
126
127
109
110
148
131
74
139
197
163
148
92
89
122
139
37
84
139
105
178
140
110
111
165
37
92
110
92
55
114
135
100
126
105
162
138
75
138
126
92
178
83
118
67
55
122
97
146
77
126
132
103
102
104
93
103
75
105
182
103
140
58
112
67
92
92
122
92
104
69
169
93
99
69
148
69
58
130
109
104
69
128
93
110
150
74
124
122
74
111
139
80
103
123
120
115
67
126
127
123
114
127
89
171
139
117
128
181
37
69
58
104
37
107
92
99
122
127
126
126
110
110
92
37
90
138
69
104
119
37
98
138
192
140
147
110
119
67
55
103
123
127
138
92
92
110
160
56
103
136
109
92
110
169
92
55
37
104
122
122
122
156
165
105
92
55
152
107
109
138
114
100
139
169
148
79
144
107
92
91
79
118
55
152
122
77
102
69
68
140
93
136
92
129
158
126
56
169
136
55
138
137
99
94
107
67
55
58
67
86
97
110
97
56
69
104
126
92
135
139
105
67
55
56
110
115
168
105
126
111
124
148
122
112
74
105
99
169
79
37
105
67
178
154
56
124
69
135
67
92
86
109
147
92
138
67
56
56
138
163
104
55
55
86
137
169
110
178
79
126
128
58
110
144
110
111
92
103
93
93
55
101
67
138
110
114
178
110
55
124
132
92
122
105
119
111
114
146
128
114
92
55
102
105
127
83
37
178
138
93
58
178
103
55
92
119
128
104
178
138
67
134
78
138
93
56
88
110
102
111
112
67
122
169
131
152
91
178
88
101
58
139
138
74
92
122
67
128
58
169
122
75
91
144
169
139
92
126
37
140
92
98
93
55
58
122
169
93
79
86
104
146
67
122
79
111
110
55
58
122
102
178
110
126
134
138
109
55
114
75
73
109
105
92
110
58
75
92
67
77
146
67
110
91
89
123
89
126
56
86
110
69
168
55
79
122
79
119
88
100
119
110
69
104
122
104
74
134
180
152
126
83
122
56
86
110
126
111
178
110
74
144
105
56
109
67
130
111
122
138
126
138
123
107
122
127
58
55
112
123
119
86
137
67
95
152
58
92
110
37
148
56
111
56
126
55
91
178
77
134
88
110
105
117
77
122
163
132
126
101
128
55
144
81
88
126
118
120
127
122
156
128
103
67
110
58
109
138
167
105
180
92
109
134
128
86
67
67
101
67
122
100
127
169
91
67
105
92
80
110
104
126
56
55
126
92
56
110
129
91
109
127
119
92
56
93
122
128
158
58
92
86
178
104
134
92
138
139
135
144
126
178
152
122
97
122
55
119
67
149
87
121
119
122
144
55
169
122
112
171
101
69
95
56
37
55
107
138
123
92
160
55
77
74
99
138
55
93
109
123
80
146
74
93
134
69
126
109
171
55
119
86
178
92
152
105
95
135
146
127
104
92
127
109
79
77
79
127
169
199
146
112
103
67
109
55
120
37
122
119
97
138
127
55
123
110
101
100
111
91
146
110
37
126
122
189
58
86
139
55
75
104
139
37
92
92
112
67
119
74
138
138
92
92
92
67
92
92
146
134
123
69
129
104
169
114
58
178
128
86
67
128
98
79
127
136
101
139
138
126
105
58
114
160
105
152
128
99
104
86
138
138
114
105
83
126
103
109
124
134
56
140
128
67
79
55
127
55
68
139
83
122
99
67
168
126
152
128
139
145
92
58
109
126
111
127
93
111
79
95
164
93
92
147
178
110
144
67
92
110
105
169
67
117
55
128
134
68
67
147
124
104
68
118
110
93
105
101
122
145
91
67
148
55
122
55
110
152
99
139
104
78
110
110
122
126
164
92
105
138
68
109
144
67
92
139
69
128
103
79
95
81
123
84
127
118
75
110
92
105
95
126
58
122
93
55
99
110
91
79
105
138
146
105
110
110
67
91
86
97
169
132
107
74
144
121
92
91
69
67
67
123
138
58
110
127
109
145
92
122
123
138
105
105
69
136
128
91
109
128
107
93
110
67
91
67
119
68
105
120
117
123
127
92
92
72
99
58
124
79
178
69
134
79
122
110
89
37
111
126
106
126
64
188
55
171
107
115
112
107
74
122
67
110
128
138
105
55
67
75
105
67
169
67
68
105
110
125
87
69
74
56
158
91
93
145
110
56
91
110
64
92
126
131
79
109
83
128
136
105
112
139
92
178
140
108
75
110
75
93
69
127
139
146
129
139
93
93
139
138
74
158
171
138
138
127
127
93
128
102
144
58
110
68
152
109
55
37
178
92
132
79
67
134
127
97
139
104
122
104
127
164
138
91
171
56
55
182
104
106
58
83
93
169
137
69
126
89
98
102
102
93
89
112
104
111
92
67
92
79
130
92
81
128
138
55
55
135
136
141
92
139
119
82
122
138
86
55
122
126
67
126
110
105
99
101
152
142
145
146
122
93
92
55
67
143
77
105
110
121
169
110
168
130
125
55
110
104
91
86
105
93
139
122
103
110
141
126
55
56
140
142
77
108
110
178
122
117
91
144
122
122
112
58
93
138
93
55
67
89
146
55
126
67
107
92
136
37
126
171
93
152
146
131
92
110
83
92
91
98
130
120
180
110
55
67
117
69
99
92
138
104
58
55
91
167
99
64
56
122
105
91
108
88
127
108
163
99
146
169
74
130
67
109
97
69
92
69
93
77
122
77
92
75
111
127
150
144
134
67
67
136
55
138
158
83
79
67
137
122
67
94
105
55
134
138
99
98
128
126
92
93
69
122
92
105
83
104
56
127
55
134
56
105
100
158
97
122
93
83
68
119
86
132
55
127
138
145
58
122
110
113
110
112
91
110
146
178
67
95
105
146
111
56
105
122
67
69
104
105
134
67
92
101
120
87
91
92
122
37
138
92
146
126
144
139
138
93
80
136
67
126
122
105
106
130
119
171
106
142
148
92
112
55
110
109
100
67
144
55
91
105
117
67
74
104
123
58
107
120
126
128
80
111
105
178
91
114
92
114
130
91
102
105
69
138
138
109
169
69
92
107
56
110
123
101
105
86
126
67
37
93
122
91
126
144
114
152
164
118
178
64
74
118
144
75
104
126
92
105
146
67
104
37
67
58
110
122
146
104
139
130
122
118
137
101
139
71
92
95
56
122
110
84
122
83
146
107
56
56
146
77
122
105
110
104
105
128
126
126
127
92
105
122
67
134
93
105
128
122
110
124
144
69
58
138
126
92
109
92
126
127
104
105
110
91
127
132
108
91
75
178
55
56
55
73
105
84
138
140
111
140
55
58
122
140
92
139
104
93
91
93
86
119
180
76
105
75
69
126
81
128
121
152
138
110
92
110
93
110
55
145
119
124
139
124
91
104
178
56
107
117
122
145
74
74
55
67
93
127
117
92
69
128
56
128
86
93
58
69
105
118
124
79
103
139
122
146
105
124
126
122
92
55
111
124
122
74
139
171
56
110
123
75
132
132
86
123
77
67
144
137
134
56
157
92
106
110
92
55
67
110
112
139
103
58
144
106
79
92
37
105
73
139
56
161
67
128
122
69
104
92
69
120
56
104
107
122
131
138
105
107
122
68
102
55
86
56
103
55
124
128
139
102
110
177
56
75
79
77
127
105
104
109
105
93
91
80
110
132
81
118
111
122
58
83
92
83
67
152
92
122
92
56
58
114
158
92
86
148
67
92
67
131
99
169
86
97
148
92
67
152
98
92
105
93
122
122
100
126
55
103
67
123
167
104
126
95
77
93
109
56
101
104
117
93
199
112
112
105
129
128
123
92
146
124
91
128
139
136
56
55
117
139
144
92
86
79
134
92
126
55
67
145
105
111
37
162
126
110
79
91
111
132
92
92
111
138
92
128
103
56
122
122
91
67
77
122
109
92
127
110
109
55
110
69
56
109
169
111
91
67
87
55
105
149
92
56
86
105
127
144
104
110
148
56
126
111
98
144
123
138
148
80
129
152
67
92
122
67
122
110
99
56
68
104
180
146
119
67
37
139
92
149
92
148
74
132
93
130
128
126
118
75
180
138
112
67
58
105
107
118
117
93
110
129
56
144
105
127
74
93
127
140
101
117
140
122
84
92
124
119
69
67
135
110
107
160
146
93
86
146
122
92
127
99
128
58
121
106
92
107
79
105
56
92
56
134
145
103
132
67
158
77
132
69
128
92
125
127
102
99
139
168
119
122
107
118
93
98
178
178
169
138
146
111
37
122
67
69
67
93
126
132
125
105
92
111
122
74
119
126
138
79
110
142
56
169
67
92
138
122
178
156
152
110
104
122
126
55
92
138
138
87
56
110
144
111
58
56
100
122
88
97
146
129
199
101
91
104
55
104
110
100
75
98
145
129
145
171
55
126
93
92
110
127
140
101
139
132
144
74
67
93
95
75
75
99
132
110
149
37
167
146
97
109
109
58
99
138
69
178
84
58
139
92
139
77
107
86
168
69
37
178
156
128
152
139
81
67
146
92
110
109
93
91
128
199
111
141
139
75
131
128
104
86
126
105
56
69
123
93
107
138
122
127
136
55
79
91
124
89
139
55
103
127
93
148
139
148
139
87
119
98
124
55
139
122
122
109
127
37
92
56
37
98
122
100
99
197
121
93
100
55
139
128
92
128
55
86
91
168
124
139
99
96
138
127
92
145
110
92
120
58
152
91
108
67
178
123
110
180
56
119
139
83
148
101
55
56
55
126
92
67
127
178
122
69
122
69
126
75
105
92
92
101
136
93
110
178
119
139
56
84
67
127
178
144
92
134
84
122
124
122
92
111
55
103
149
164
144
37
104
110
55
138
102
122
144
138
145
171
140
93
146
109
55
69
138
58
144
56
135
122
93
126
83
110
110
126
68
122
138
178
37
168
110
84
122
108
105
67
104
56
77
84
86
128
141
140
77
163
102
99
37
127
127
92
124
55
110
97
93
69
64
128
91
58
100
122
138
92
78
109
158
144
110
152
100
164
55
110
127
144
95
86
126
74
91
55
67
145
86
138
124
171
104
140
126
88
126
122
112
81
67
114
99
122
93
81
178
92
68
37
144
92
109
74
146
144
72
139
58
77
139
135
58
117
58
123
67
104
146
126
124
105
92
136
88
105
93
138
37
92
74
122
199
178
105
119
126
106
56
55
86
117
110
56
104
152
75
37
123
67
106
152
138
127
55
178
55
146
122
108
77
126
141
67
93
117
110
144
68
126
110
105
126
164
55
126
99
113
122
104
105
55
101
146
110
110
144
69
126
123
119
152
144
128
110
104
74
91
55
152
92
162
104
74
131
126
144
56
105
168
75
74
108
55
105
55
75
55
146
152
92
86
137
75
110
122
77
92
55
80
67
134
171
69
77
110
93
138
153
169
91
55
152
138
124
146
91
122
105
74
55
122
92
86
180
139
84
110
56
84
92
58
55
99
111
67
92
139
146
77
134
86
57
105
92
138
137
92
105
110
136
105
130
124
55
67
92
120
101
122
138
109
105
178
99
77
144
56
122
189
144
123
37
152
55
123
122
93
129
152
58
55
83
100
171
56
83
120
115
97
97
123
105
160
58
160
119
152
134
67
124
105
128
126
58
122
123
67
148
105
86
119
68
55
69
122
152
149
92
56
95
58
109
92
91
138
110
67
99
109
105
152
94
37
178
122
165
110
169
105
111
146
138
55
146
105
167
104
122
171
110
115
138
146
37
91
93
55
37
122
37
122
88
104
93
67
127
37
119
104
56
101
56
110
103
134
139
55
94
55
117
103
163
138
105
104
92
126
55
75
111
105
78
128
103
83
110
127
152
55
58
79
92
117
37
95
91
79
93
122
99
105
146
55
93
152
122
110
86
92
65
55
132
92
119
123
56
131
182
137
107
93
139
178
124
92
91
78
67
56
92
92
89
126
127
56
92
55
106
92
89
58
145
145
127
163
107
130
37
92
114
55
55
146
56
58
119
74
92
119
92
122
86
145
119
132
92
152
110
87
138
109
124
37
133
105
74
93
118
111
123
146
99
92
99
138
105
104
111
68
109
55
83
139
79
37
56
137
158
138
120
126
98
56
105
37
162
149
56
148
84
91
167
56
67
95
99
138
112
93
146
122
92
111
58
105
79
117
79
93
104
106
114
124
105
55
122
103
119
126
104
105
120
144
93
126
55
91
105
110
67
58
122
37
37
55
139
105
127
144
74
92
124
92
100
130
136
92
110
92
140
138
55
128
122
122
131
103
113
110
55
117
55
79
124
124
56
93
93
138
58
98
105
106
178
104
109
152
105
139
160
124
122
92
123
92
67
123
140
163
93
101
132
83
92
67
124
55
37
144
122
178
168
109
138
92
126
55
127
37
158
103
68
171
105
109
56
104
93
111
98
67
122
119
58
107
105
55
69
126
69
56
87
92
123
131
119
168
128
140
101
104
126
67
126
55
152
69
127
152
92
93
104
106
104
126
178
105
55
163
122
75
37
142
67
86
100
102
137
78
109
86
141
103
146
148
104
119
92
105
109
84
126
67
92
126
84
110
131
178
138
92
105
93
127
138
138
37
104
56
68
86
123
136
89
138
37
138
92
144
86
92
58
146
86
140
110
124
134
92
110
123
122
122
126
92
119
104
91
118
79
168
182
126
110
123
94
119
124
55
138
118
110
144
93
158
178
109
139
99
120
103
67
68
138
56
97
122
101
67
148
58
144
122
110
101
126
123
119
139
67
114
84
126
126
104
126
55
128
69
100
139
128
130
138
140
119
138
144
104
128
93
122
67
144
91
92
105
110
55
105
77
126
124
122
104
103
91
128
122
93
127
67
125
86
164
92
79
171
69
149
104
126
97
178
83
84
138
104
92
77
106
91
92
79
69
123
86
138
55
67
78
79
93
137
105
152
105
158
110
138
86
104
102
132
138
140
169
108
67
78
188
101
127
132
117
122
152
105
92
139
158
146
56
123
91
37
56
75
105
92
104
171
122
110
105
127
69
119
92
126
111
120
136
55
120
88
152
58
109
121
119
110
105
93
119
122
102
67
67
108
178
88
120
131
37
123
127
126
122
128
92
78
87
58
144
67
93
138
146
86
55
152
139
139
119
100
94
64
138
129
77
55
74
110
132
79
77
126
178
119
110
92
126
104
127
56
146
67
144
67
55
105
110
86
126
73
122
69
124
138
138
56
126
92
131
84
144
131
123
127
107
67
58
80
104
110
56
92
111
122
126
93
80
126
119
37
122
122
121
77
110
97
67
119
139
85
126
91
163
110
152
112
55
103
93
55
105
122
134
103
127
127
136
160
105
169
56
67
104
58
122
92
114
104
158
162
91
77
117
152
144
92
93
95
122
122
110
77
122
92
104
129
55
148
77
74
139
98
99
103
134
138
75
58
132
144
68
138
67
69
95
67
74
83
178
55
55
55
126
84
93
105
123
144
56
69
178
130
140
104
68
102
105
95
138
99
134
126
91
148
58
105
56
37
110
132
71
122
55
110
169
105
180
99
151
111
110
119
81
92
91
103
171
139
92
68
138
126
178
56
138
136
77
102
107
86
101
140
79
56
75
126
178
127
138
144
67
122
124
178
92
56
180
106
129
122
86
67
169
87
104
119
130
92
123
146
117
110
55
92
86
146
110
122
126
67
152
92
84
111
126
178
68
126
163
55
75
56
152
103
67
179
129
37
105
55
137
122
106
111
93
67
126
119
178
118
75
104
146
37
146
128
105
179
81
92
126
144
129
81
92
126
122
57
126
139
67
83
67
127
137
105
145
117
37
126
140
69
105
123
106
69
92
67
105
92
105
93
67
67
126
110
104
110
94
152
129
92
55
131
105
67
145
105
122
56
92
110
126
168
138
88
84
132
127
171
122
127
128
134
138
116
102
92
126
127
55
55
138
93
92
93
111
110
134
56
122
131
92
104
92
74
139
131
169
93
114
123
134
122
55
100
168
144
111
144
92
105
126
123
128
99
112
55
88
74
105
105
103
99
146
67
92
92
144
122
146
126
116
92
127
37
56
123
55
110
122
100
117
105
55
97
126
56
107
110
104
99
83
68
75
37
64
110
105
123
140
37
126
141
139
37
136
92
122
126
139
110
89
83
199
58
138
86
152
56
93
142
105
128
69
93
105
127
74
110
108
37
117
91
37
146
58
83
56
144
147
55
132
105
37
103
110
55
58
92
132
109
171
107
97
92
122
126
171
136
110
137
92
112
55
126
104
118
159
58
89
104
55
126
100
164
92
95
92
109
140
92
178
103
92
37
92
122
130
56
105
140
124
56
128
136
78
182
140
110
91
104
87
37
128
56
122
102
138
134
58
105
55
119
69
104
110
105
138
178
127
110
106
67
110
114
56
126
132
138
126
181
74
146
74
164
149
110
86
104
95
146
110
140
55
111
67
138
110
148
140
178
99
67
56
126
169
92
146
122
58
110
144
75
92
55
137
124
138
165
136
126
132
93
122
92
74
55
138
74
55
104
79
146
171
67
92
139
122
88
127
139
105
79
104
122
107
55
99
56
92
178
92
144
93
140
55
110
58
37
122
146
37
139
140
104
110
140
157
104
37
110
110
99
86
169
67
104
74
67
98
69
105
92
126
55
135
109
126
148
92
91
92
163
101
124
138
55
136
67
92
69
88
131
55
126
77
83
139
58
122
165
58
67
101
55
127
104
79
56
121
145
105
122
110
97
145
86
74
146
56
110
127
75
56
109
69
110
136
77
168
93
58
119
55
79
122
58
89
138
103
68
88
131
93
110
110
97
113
122
148
110
126
93
56
126
147
146
37
126
124
103
135
180
126
76
122
139
109
105
158
83
67
126
111
92
144
37
122
56
115
126
146
37
138
56
127
127
140
132
156
119
127
140
68
92
55
126
78
105
126
67
105
126
58
136
56
93
146
105
131
130
105
74
56
110
37
58
140
92
140
138
122
56
121
137
127
83
56
69
110
55
99
132
104
69
67
105
92
67
55
152
122
97
137
124
178
112
37
122
102
110
119
93
146
122
144
74
74
112
105
137
163
106
105
112
119
171
117
138
93
109
138
55
99
55
68
105
127
105
144
58
128
146
104
58
105
127
152
92
126
58
168
79
92
116
103
37
55
74
169
105
171
92
110
105
55
98
180
111
139
89
92
104
123
110
138
55
130
104
106
55
69
56
103
107
92
55
92
122
83
104
146
169
165
111
117
138
123
110
149
145
99
56
136
169
171
55
74
81
119
55
122
105
146
105
105
93
88
138
104
120
139
126
86
108
83
114
110
138
144
103
55
104
86
101
131
111
79
168
93
104
118
95
55
91
58
77
140
58
69
37
77
127
139
144
68
169
67
126
138
111
99
110
111
107
56
67
55
138
120
126
104
106
127
103
126
37
77
144
93
180
105
132
55
128
168
104
109
86
111
104
100
189
164
110
56
105
122
55
105
55
128
58
135
152
37
58
93
139
152
92
92
113
105
122
100
74
95
86
123
103
152
127
138
126
126
92
37
55
138
127
128
136
104
142
86
119
131
178
110
74
153
119
145
77
100
122
111
144
105
55
92
180
128
92
127
122
146
67
105
138
68
141
138
105
127
58
55
138
55
99
111
91
122
122
130
55
92
56
178
55
55
117
93
98
69
139
87
91
146
127
89
178
86
158
114
111
146
131
97
93
130
111
131
99
99
139
110
110
139
79
122
138
148
56
92
152
84
56
93
132
178
144
162
139
37
146
128
114
92
165
126
171
105
56
114
188
69
128
92
67
69
92
106
37
79
83
103
105
109
123
100
67
105
74
158
117
139
55
104
68
92
125
99
122
129
77
92
139
110
67
124
109
109
75
189
178
178
122
148
105
100
92
81
110
74
122
122
105
75
110
84
67
103
169
72
126
126
127
99
105
123
110
67
180
93
123
68
105
114
138
37
83
118
129
138
56
163
93
67
130
37
139
177
113
138
55
93
103
140
92
68
138
144
158
180
126
178
178
178
56
37
169
86
152
152
92
169
92
105
105
102
127
55
123
91
83
105
55
123
142
99
56
86
119
55
92
67
152
55
138
92
105
55
109
104
77
56
124
92
152
74
69
163
171
93
138
74
91
139
122
112
92
145
135
107
119
92
55
123
56
104
55
77
101
117
91
132
123
77
114
119
92
104
37
122
55
119
127
55
123
108
109
114
69
131
144
122
89
169
144
126
139
134
181
92
140
123
110
110
92
112
122
93
93
180
110
80
92
104
126
104
75
108
132
123
58
127
97
110
87
67
97
139
149
138
142
55
101
74
126
138
67
105
123
138
163
118
122
119
93
139
93
67
126
152
86
178
163
122
162
140
126
128
126
105
139
93
135
122
84
56
74
67
104
144
55
171
112
92
192
126
77
126
68
104
136
99
86
92
84
58
128
56
99
78
67
118
122
74
110
134
148
139
126
152
110
93
58
56
126
112
169
67
103
67
67
104
83
126
119
112
61
110
127
126
105
56
104
123
92
168
122
105
126
86
138
127
164
87
123
126
77
92
109
97
92
86
122
92
128
58
83
126
126
129
118
79
126
110
152
75
109
83
67
92
105
110
128
130
139
69
151
110
119
105
87
111
104
69
94
67
55
119
58
92
114
110
144
109
148
126
134
139
122
86
111
92
123
132
67
93
145
126
104
69
119
119
168
136
89
103
123
126
116
93
152
167
171
37
123
119
92
55
55
55
92
93
147
128
105
144
126
120
128
92
111
77
77
171
104
110
67
114
104
84
67
100
110
67
69
105
68
127
162
93
127
128
118
86
37
132
37
101
110
104
91
86
126
127
74
119
127
105
92
92
67
37
37
111
105
55
67
123
122
92
55
122
69
124
104
126
104
110
55
110
167
55
92
92
86
128
91
56
97
55
119
92
146
144
164
142
92
91
110
126
138
99
126
91
169
162
127
129
139
67
79
56
37
122
74
128
92
55
122
55
109
79
86
127
110
120
56
101
55
139
92
138
145
104
131
152
55
58
92
101
58
97
75
110
99
56
98
117
145
92
92
102
100
148
58
67
122
69
111
122
68
128
77
127
91
37
146
86
126
106
104
178
122
110
55
110
127
91
126
67
79
127
79
105
69
126
119
37
92
92
171
92
130
77
107
178
145
55
97
92
128
109
146
92
105
58
89
178
104
122
84
105
67
79
84
55
115
127
123
74
119
109
77
110
55
126
142
74
148
139
169
79
127
180
55
105
136
132
100
67
132
122
58
98
117
138
142
168
140
119
79
86
75
169
138
109
139
122
169
95
37
55
114
139
107
37
114
79
67
126
128
127
115
58
104
55
110
92
129
139
130
58
92
93
67
122
104
109
92
55
163
110
132
55
37
122
148
103
160
86
107
104
67
141
111
126
112
92
121
69
56
139
55
107
152
92
110
110
160
107
55
58
83
109
95
93
148
112
122
122
75
97
92
105
55
128
111
77
91
144
86
55
67
98
75
127
134
108
127
67
97
37
136
131
138
56
56
102
146
92
128
130
119
104
119
182
178
122
146
123
79
92
120
74
99
178
129
144
93
55
146
56
130
104
55
126
139
144
152
93
104
144
115
120
78
160
144
37
131
55
92
126
138
112
106
126
93
75
92
92
168
79
92
138
171
105
79
37
115
126
122
93
77
104
58
158
146
134
92
110
138
92
127
58
142
37
134
95
126
109
55
127
92
69
127
122
131
122
135
99
89
136
129
115
126
128
122
82
110
69
128
56
108
144
108
109
138
111
69
92
122
152
92
122
122
84
144
152
126
163
111
128
67
110
124
117
75
67
56
168
126
178
119
92
135
111
92
144
139
92
55
58
146
86
69
114
107
122
178
92
93
56
69
138
127
37
97
79
127
86
69
92
75
92
91
92
128
92
138
91
122
110
129
110
104
111
169
119
178
74
69
92
122
126
122
110
126
139
104
67
55
105
139
146
55
126
69
138
127
69
67
152
139
99
119
138
105
86
105
158
67
37
111
131
120
92
130
131
92
75
84
122
104
126
140
103
104
102
114
55
72
105
110
138
178
79
56
93
89
146
122
89
146
92
104
79
115
138
137
138
93
126
110
119
140
140
92
87
178
180
169
79
91
152
93
105
86
126
120
79
91
110
159
37
144
77
105
68
110
105
74
122
89
75
109
122
112
93
146
86
58
118
140
37
97
55
126
37
86
114
55
93
117
92
128
144
92
122
56
92
103
146
128
134
112
112
92
149
139
164
138
105
112
124
77
58
122
55
55
114
199
75
142
119
56
105
126
123
67
55
105
91
93
110
106
126
77
99
92
86
37
138
126
55
178
124
127
140
105
127
83
178
105
167
104
91
110
97
178
92
69
126
97
56
138
92
58
126
122
69
145
79
126
135
93
110
75
74
117
102
109
189
97
138
107
103
111
140
56
130
105
93
105
152
128
102
122
162
136
55
122
169
101
67
158
67
104
111
178
164
122
132
123
110
147
111
120
55
77
56
91
140
88
88
110
55
37
122
127
144
126
146
92
122
148
138
100
104
100
78
127
123
92
130
126
129
126
91
104
105
169
138
105
144
126
104
134
123
139
126
92
98
110
178
89
117
105
56
93
152
105
92
37
67
97
138
112
112
58
87
126
110
134
140
87
107
138
188
93
56
67
105
104
144
86
116
82
126
139
106
104
102
119
108
56
92
110
138
119
111
122
131
104
122
136
178
100
37
112
107
118
55
118
93
67
55
56
105
134
97
178
119
134
68
91
104
114
154
85
126
178
98
112
104
132
138
107
110
83
123
107
123
167
55
99
74
126
146
92
167
137
167
89
108
93
122
55
92
55
92
138
37
55
137
67
111
56
148
104
110
88
110
101
92
171
119
148
142
55
128
55
56
117
67
86
117
139
101
146
110
111
127
146
99
74
147
119
98
130
104
92
104
67
58
114
105
55
139
122
122
123
77
144
91
144
55
103
120
169
126
152
122
144
131
100
158
67
122
163
67
58
92
122
79
56
92
122
109
77
122
56
104
127
37
105
92
104
104
91
139
158
55
55
165
119
131
152
83
68
100
104
75
138
146
92
110
99
113
122
67
119
86
105
67
119
110
138
93
110
105
79
74
86
142
103
86
139
92
122
152
92
77
77
55
122
126
56
152
146
112
129
122
169
124
122
91
141
105
104
55
139
79
126
152
118
55
104
103
126
111
56
93
126
92
76
127
144
92
55
99
92
124
178
128
152
126
92
119
110
58
128
143
160
126
119
139
92
140
92
86
147
137
135
55
55
114
139
122
109
56
134
137
92
123
99
67
134
126
75
104
104
87
111
127
107
111
122
126
128
171
91
139
101
138
126
138
58
178
105
162
110
126
69
126
148
119
152
178
152
75
104
67
105
100
122
86
55
79
146
127
55
146
109
37
77
104
93
55
55
92
92
92
105
152
106
37
162
92
138
109
146
122
160
104
127
99
92
104
96
127
78
134
86
148
77
102
55
56
95
92
119
163
122
146
122
171
74
126
139
158
180
110
92
92
104
107
58
91
92
163
134
92
92
92
130
105
88
152
110
112
55
91
93
83
74
138
55
110
56
110
92
130
91
37
123
92
74
158
107
171
126
91
99
122
119
67
130
69
140
88
178
100
110
58
110
92
93
91
103
67
128
105
139
114
152
111
131
69
55
56
178
106
68
58
92
169
81
37
126
86
134
122
92
93
121
134
140
77
138
93
92
92
135
160
56
114
72
127
138
122
110
109
126
92
140
92
67
111
126
105
86
122
126
58
79
122
197
105
86
69
92
104
67
148
92
106
125
103
123
104
122
131
93
134
110
139
126
92
127
111
169
124
122
99
55
93
123
37
139
93
102
128
78
127
93
91
92
105
128
168
152
138
114
140
131
171
130
55
56
126
76
77
128
138
99
55
75
98
139
93
56
97
95
75
122
68
92
68
102
126
138
67
67
56
110
67
55
128
107
127
105
92
122
134
144
160
56
97
152
104
139
163
58
86
58
92
67
37
92
138
130
110
55
58
138
107
107
69
120
110
168
106
122
77
147
93
122
134
139
100
101
139
109
104
158
37
126
131
93
91
138
108
69
105
105
110
112
146
79
139
55
112
91
55
138
169
103
99
55
92
112
140
105
119
104
131
120
144
55
75
131
129
104
127
110
139
169
103
56
122
55
122
122
122
93
124
105
126
86
169
148
144
105
138
134
135
127
56
128
92
139
104
119
79
144
180
111
112
67
127
77
86
55
93
103
91
152
121
93
152
78
122
122
92
64
80
128
55
171
119
55
92
126
130
144
144
99
142
158
144
138
69
169
55
110
117
83
126
55
55
92
110
93
92
139
92
94
110
178
148
107
67
56
74
119
69
105
105
122
118
126
111
126
140
55
105
91
162
92
148
67
146
55
67
74
109
37
126
67
144
136
118
138
56
122
74
111
126
55
94
67
92
68
126
58
138
180
75
106
110
129
103
92
92
105
105
69
105
55
129
134
126
111
142
126
139
138
97
77
93
79
138
122
55
106
106
76
110
56
152
55
92
56
55
138
123
55
80
79
56
103
103
100
93
99
83
105
152
110
91
134
123
107
77
114
110
56
119
138
55
105
126
91
93
86
110
178
105
128
152
122
58
104
110
123
92
178
137
144
134
69
122
111
110
118
69
171
55
105
105
124
100
55
110
140
74
110
92
171
120
111
135
92
104
67
92
108
144
79
108
67
132
139
178
144
105
92
138
124
144
103
84
112
138
110
105
92
55
126
95
162
148
117
74
110
56
120
92
128
123
122
92
128
121
132
92
92
67
119
168
77
132
67
104
168
56
148
84
138
148
86
126
107
140
139
122
84
132
68
127
110
79
117
92
110
93
67
108
128
124
117
107
68
87
107
69
67
105
122
104
103
123
122
136
55
55
67
91
131
178
143
93
75
93
178
78
107
140
97
138
55
92
110
107
163
86
144
122
110
92
74
93
122
99
139
75
103
144
92
55
92
121
92
178
68
125
127
122
140
124
68
108
120
77
104
56
55
92
122
74
92
140
139
126
105
127
55
126
126
98
112
74
103
146
134
56
58
144
127
55
110
110
154
77
152
37
79
75
104
126
139
110
105
153
110
93
69
132
144
92
120
91
141
91
122
109
104
77
144
68
128
122
58
69
122
144
55
120
79
86
110
92
107
122
146
69
92
56
122
163
69
110
101
126
74
93
123
83
158
110
180
149
140
122
127
120
105
106
105
92
78
146
69
124
119
110
69
92
124
109
124
131
111
37
123
127
55
86
105
127
122
103
79
68
148
95
109
146
104
67
55
93
126
55
55
171
135
55
58
160
89
74
149
92
152
55
37
110
104
122
55
55
168
145
111
110
103
111
55
168
127
100
139
105
69
79
126
132
132
122
84
112
140
58
165
122
121
123
109
119
75
138
104
37
126
104
56
169
104
68
138
84
55
56
78
104
135
107
110
144
138
91
164
37
126
138
138
92
79
92
171
106
146
164
83
119
152
92
162
122
124
61
119
140
105
80
92
126
55
55
56
130
58
86
105
55
96
110
55
103
122
127
146
122
37
108
122
105
122
92
98
91
105
110
93
74
79
106
55
97
117
119
74
128
56
138
97
137
37
74
100
122
122
122
138
130
118
168
139
144
92
103
180
110
111
91
138
92
105
135
37
56
67
123
92
104
111
128
55
139
178
138
136
105
67
122
122
148
126
69
56
104
99
55
138
105
181
146
92
92
126
92
112
105
58
109
127
110
146
69
67
77
140
98
91
138
105
148
109
119
93
67
67
93
138
128
123
109
110
37
104
148
138
105
58
92
146
91
105
146
104
105
169
68
55
75
69
56
122
110
138
115
55
67
109
125
108
126
93
110
67
136
139
104
92
55
37
140
138
134
96
92
55
92
109
109
89
89
111
67
132
148
128
92
122
152
144
144
106
97
93
91
105
111
126
169
67
108
127
86
167
56
134
146
128
111
144
122
126
123
105
133
55
69
81
56
37
92
135
115
55
37
126
101
79
124
122
134
104
104
107
180
93
169
148
119
55
128
132
110
139
149
92
152
152
69
93
144
124
105
86
37
107
140
178
158
105
92
169
139
112
89
92
84
77
107
105
123
92
107
99
122
138
104
135
56
138
168
106
158
122
126
55
118
104
93
55
93
122
91
141
105
128
104
67
55
92
69
165
74
74
83
56
110
158
81
119
104
109
178
79
92
93
69
92
110
146
169
138
114
127
83
138
141
110
144
105
110
127
37
77
58
139
171
110
93
128
126
58
115
138
77
169
122
92
146
37
109
98
126
93
67
119
119
56
94
160
160
168
122
148
56
97
92
138
126
110
134
92
58
124
110
132
162
120
144
105
93
86
140
137
92
107
123
132
105
75
104
152
110
58
135
55
92
91
152
79
144
122
55
104
139
105
122
146
104
138
132
79
92
138
110
55
110
139
169
119
122
99
105
110
115
99
92
92
178
140
92
128
144
162
97
56
138
105
152
92
110
122
118
139
77
135
128
178
131
103
178
127
124
107
101
78
111
99
182
105
56
92
68
118
123
111
55
37
104
178
105
55
111
139
55
110
162
67
138
92
92
128
79
56
110
128
92
152
132
55
102
152
156
123
127
86
55
179
102
55
92
128
139
128
83
165
92
75
138
126
110
93
109
131
92
140
67
79
123
111
122
123
134
144
126
138
110
109
99
110
92
127
110
37
73
105
110
117
136
124
107
105
99
110
91
95
171
99
91
139
127
91
58
105
69
117
152
95
67
199
120
58
127
128
92
56
124
122
107
103
67
110
106
110
55
119
137
110
55
134
127
105
64
168
139
99
160
56
92
91
139
67
139
58
83
92
123
110
139
127
86
55
122
104
75
87
88
148
67
131
92
55
69
138
99
92
37
122
99
99
113
110
158
86
103
139
105
125
68
105
93
178
128
74
127
55
93
58
55
144
103
126
79
58
122
56
105
122
91
79
122
114
103
92
163
144
126
79
93
58
127
119
122
37
92
144
144
105
160
126
102
146
152
168
55
92
126
99
77
130
69
169
112
77
111
56
67
138
106
111
111
37
145
86
100
122
122
92
178
111
93
86
92
55
92
139
103
92
122
58
105
138
138
67
93
111
126
178
152
67
127
55
136
144
110
93
92
126
109
122
122
92
122
132
88
138
83
92
81
74
93
110
104
134
55
152
138
122
128
77
67
122
37
77
83
69
55
98
56
92
92
105
118
78
58
56
127
105
97
93
105
105
95
111
103
115
92
92
122
122
127
138
98
92
149
84
127
92
92
114
127
105
92
67
101
92
111
127
92
181
144
56
97
124
110
99
105
112
83
178
134
124
158
77
128
92
92
124
105
126
142
110
122
110
146
122
79
107
37
83
128
110
74
132
55
138
58
128
122
67
126
139
152
104
37
132
139
105
130
105
126
102
79
69
86
55
79
139
55
74
110
100
127
129
138
106
75
140
129
105
122
178
98
105
91
92
163
120
144
169
164
142
58
148
37
139
91
104
106
107
146
169
55
68
92
55
140
76
74
92
92
102
67
139
55
126
86
88
102
138
105
111
83
109
104
55
98
55
104
122
56
75
126
178
79
148
92
119
118
105
37
92
86
79
152
127
75
92
117
134
101
122
86
105
136
125
138
114
74
178
83
110
178
111
105
58
91
140
86
163
128
115
122
128
111
169
142
92
69
119
142
152
111
37
92
109
58
152
91
148
123
139
105
122
112
114
55
92
178
37
111
122
148
123
146
67
178
55
119
130
140
99
68
144
122
105
120
79
105
77
106
163
110
55
112
131
56
139
131
105
162
158
100
144
98
128
138
122
110
134
92
105
120
122
93
126
103
56
126
74
163
122
144
88
117
105
127
148
107
104
110
160
122
119
126
58
123
140
67
131
69
69
107
69
115
124
169
79
128
152
152
122
128
78
123
148
126
123
119
119
74
134
146
128
111
78
110
67
139
105
139
93
92
111
83
37
99
75
79
178
150
144
141
134
169
140
110
127
77
110
100
160
168
141
69
118
122
178
69
86
93
122
123
122
105
128
137
97
69
67
74
113
56
126
109
105
105
69
80
98
58
67
55
127
74
56
67
55
122
110
171
105
141
103
110
92
118
122
110
77
110
99
69
139
56
78
107
118
104
92
126
126
75
67
126
103
122
97
145
56
92
146
92
93
138
77
55
127
171
92
126
92
110
105
55
92
67
92
123
137
56
102
86
146
75
126
127
180
107
169
58
128
192
58
110
134
92
86
37
171
37
68
37
79
128
105
138
105
138
110
93
145
104
122
67
111
103
69
79
84
105
138
144
138
93
93
103
58
127
97
122
148
105
104
178
152
120
114
67
124
92
99
106
104
122
55
69
126
99
83
56
122
56
146
55
98
124
108
37
146
126
110
122
98
122
67
67
104
138
140
79
69
91
160
73
128
134
158
105
171
55
68
67
111
138
83
92
107
138
137
108
130
86
37
101
67
83
134
77
139
127
105
168
110
86
144
126
122
93
92
99
79
93
88
75
163
138
110
92
99
118
58
104
67
99
105
122
108
127
92
92
139
67
122
138
178
140
169
109
58
67
55
127
115
124
93
56
122
126
107
163
178
144
102
110
107
109
114
55
76
74
130
110
104
178
37
119
92
105
111
99
114
101
139
125
144
126
126
148
92
125
67
144
105
138
127
117
89
55
110
180
56
104
77
163
127
92
127
67
106
87
67
146
107
105
93
178
55
55
130
125
124
55
80
122
37
126
148
126
145
68
112
146
178
146
97
108
144
178
126
68
122
124
152
169
77
126
139
69
105
122
92
105
114
104
68
106
92
101
110
84
105
158
131
110
111
108
119
91
92
77
152
84
67
122
148
137
104
69
83
110
147
58
104
67
134
100
122
37
138
152
67
55
131
67
105
110
102
152
58
104
100
138
137
67
138
37
146
123
55
178
67
86
134
56
56
171
110
119
122
56
138
112
152
108
55
126
56
67
56
122
67
55
92
92
104
105
67
146
92
146
126
110
110
122
55
86
128
67
68
109
55
178
92
69
92
105
126
144
56
104
86
67
140
93
180
128
72
79
128
93
104
135
178
93
92
37
138
37
168
83
37
124
123
162
111
91
91
68
164
81
140
104
134
110
37
138
178
135
110
123
138
103
102
139
86
99
78
100
169
107
148
119
146
95
152
146
114
135
126
160
108
127
136
93
69
140
152
72
75
97
162
56
140
125
37
114
178
128
119
105
86
106
58
139
86
123
79
93
69
135
93
117
178
104
37
84
126
117
110
110
171
110
107
99
107
103
83
128
123
139
93
68
55
67
68
93
92
123
92
165
127
68
163
131
92
115
165
100
105
124
68
126
188
56
119
110
164
122
130
37
81
126
122
74
79
122
110
125
178
92
105
134
138
106
126
56
69
69
110
104
93
92
105
122
93
92
138
138
152
55
58
123
55
111
158
112
89
136
125
83
158
105
123
126
105
99
110
103
138
141
92
122
37
83
91
92
123
101
123
92
128
98
92
131
104
152
88
178
140
158
101
178
92
110
96
67
98
132
112
126
129
180
93
73
92
56
144
69
119
165
77
58
55
104
67
75
138
67
93
106
152
111
106
117
140
114
139
67
99
102
101
110
55
77
144
67
107
139
92
192
55
132
75
92
105
100
37
74
105
105
134
67
104
127
110
143
92
93
79
104
126
93
99
105
93
122
110
75
58
92
127
127
105
110
134
56
126
55
92
67
110
56
110
145
75
104
152
97
55
122
109
93
55
56
128
97
110
132
55
168
56
37
123
145
56
55
92
55
105
138
122
55
68
119
68
55
123
122
127
126
134
93
104
79
77
178
93
56
56
83
127
117
139
92
75
93
92
109
56
104
122
104
180
77
122
58
55
79
92
56
98
138
112
37
139
180
139
110
158
55
152
142
108
126
110
122
109
83
105
139
55
56
124
134
105
86
84
126
97
78
81
86
152
127
144
123
58
110
69
151
74
109
55
104
178
67
138
139
110
180
146
110
122
156
67
58
97
58
55
122
148
69
74
93
141
67
69
105
92
111
122
105
169
111
67
127
126
109
112
92
126
110
178
126
68
123
138
180
139
127
134
108
122
93
91
140
93
127
144
144
109
67
127
139
56
123
92
92
138
67
126
110
104
92
104
79
115
105
105
152
146
146
106
114
96
99
119
55
55
86
152
138
130
107
126
105
55
77
37
140
83
162
138
128
58
128
126
124
138
75
107
121
92
144
178
92
110
165
110
139
93
114
79
84
86
178
110
127
104
92
56
56
101
131
109
86
128
113
67
120
67
79
102
142
122
130
112
138
102
37
144
130
93
128
122
189
128
103
56
69
110
56
55
128
102
104
92
128
58
81
101
114
179
131
109
104
69
126
110
92
93
132
148
98
118
104
92
138
103
99
178
145
140
117
100
110
93
93
105
110
101
114
69
105
102
86
138
144
144
117
55
56
55
112
138
67
124
134
178
67
79
86
138
109
134
178
93
93
144
104
128
109
140
83
93
167
100
119
146
112
178
126
139
83
105
100
95
110
55
110
131
91
105
100
67
110
103
152
92
58
55
88
37
55
105
127
67
91
56
104
126
67
109
55
100
56
105
102
152
104
169
144
92
56
68
130
105
122
146
123
83
105
105
144
93
92
78
126
122
56
99
139
75
102
168
144
107
98
91
124
56
89
69
105
138
139
97
92
104
92
92
109
97
97
75
105
58
126
83
102
99
107
56
144
105
105
111
144
126
158
138
111
83
95
105
139
103
92
138
126
169
138
74
114
92
138
110
68
93
92
67
67
56
110
131
127
92
67
105
98
104
91
152
148
100
92
74
141
111
83
103
111
105
104
178
124
92
119
180
107
152
37
86
37
110
144
143
122
132
55
92
55
132
55
55
103
84
142
83
93
95
99
74
152
56
92
84
138
128
136
37
37
92
128
83
105
113
76
92
55
128
75
178
152
79
122
145
92
107
148
110
127
92
92
99
96
178
93
129
55
141
110
138
105
107
163
107
56
168
122
162
37
107
77
128
169
110
122
67
88
122
92
118
105
110
169
79
137
152
122
123
112
69
86
105
138
123
106
69
124
68
81
67
37
105
56
92
55
146
124
105
56
56
93
105
103
56
138
109
92
86
67
105
105
160
114
118
126
92
105
127
152
111
93
149
124
69
86
140
69
86
77
126
114
101
55
92
56
103
37
152
122
83
100
37
37
104
143
97
92
69
111
105
67
144
149
56
149
79
111
75
67
99
178
104
55
55
146
126
56
93
160
137
93
91
119
99
126
75
122
79
123
91
109
110
56
104
110
178
56
37
89
163
55
125
171
178
91
81
92
152
69
130
68
122
111
123
104
79
91
164
92
67
110
110
122
37
105
117
88
83
56
79
67
84
67
144
93
105
92
56
126
99
132
107
126
93
55
122
135
69
74
99
139
114
145
55
55
58
86
86
92
55
171
93
93
92
92
110
92
119
122
167
117
115
110
139
152
99
92
56
122
58
122
152
93
163
55
126
91
105
107
86
92
118
55
92
122
69
178
93
150
74
114
112
139
77
152
102
138
141
110
171
126
144
92
144
55
178
128
146
93
107
95
104
91
136
55
95
136
98
92
138
55
107
110
86
100
55
146
89
109
37
134
58
37
105
74
127
67
89
122
91
74
67
109
91
127
122
188
98
91
37
128
178
109
79
88
77
79
138
126
126
132
122
101
93
122
78
110
138
121
122
138
126
126
139
100
178
55
104
97
138
104
141
110
103
126
144
92
67
92
95
124
79
104
128
139
119
130
127
139
171
56
93
109
56
146
79
104
126
119
93
56
132
110
104
105
93
163
55
103
178
79
164
93
105
92
92
79
146
131
127
180
171
68
55
83
144
163
101
104
178
58
135
139
112
126
136
137
126
75
171
67
111
148
55
69
126
139
101
138
126
178
122
101
122
102
127
74
156
162
119
137
94
122
106
93
92
140
105
55
110
67
126
67
113
56
92
67
67
104
126
138
67
68
121
132
112
105
97
56
146
127
132
109
111
101
92
130
55
92
126
56
77
122
93
92
152
109
104
124
148
56
58
58
199
111
110
55
92
56
55
74
93
79
64
69
126
92
67
92
106
119
56
92
58
79
99
144
178
109
138
111
92
104
74
171
100
67
136
122
79
122
55
86
55
122
139
105
101
140
180
122
109
178
104
138
144
91
93
123
55
126
139
119
158
127
74
140
92
55
55
56
93
100
92
37
67
111
129
128
146
123
128
101
138
144
69
99
55
127
154
91
67
92
138
122
126
122
138
115
138
128
55
55
127
56
110
111
152
129
75
92
74
138
37
107
107
103
140
110
127
138
58
148
139
126
116
128
126
79
58
99
120
119
74
138
152
55
67
137
55
58
112
102
55
146
69
105
86
56
93
110
123
122
117
119
88
122
110
134
105
56
125
105
55
58
128
93
141
119
77
178
67
137
103
69
58
56
119
128
110
128
105
110
97
111
67
37
67
119
56
152
122
86
152
105
110
167
118
139
74
110
138
169
152
134
124
145
92
37
67
178
139
128
139
92
91
139
129
77
104
122
58
55
92
110
69
79
56
104
138
127
107
93
124
107
109
67
91
103
68
58
103
115
111
139
127
138
105
109
126
122
139
138
140
92
111
77
168
118
55
144
146
134
55
77
55
163
37
110
92
93
105
93
104
178
131
76
128
98
68
104
69
149
110
139
55
77
56
162
110
126
121
110
110
114
93
79
37
135
125
69
131
97
126
122
110
148
127
138
126
165
110
104
127
56
122
37
144
119
111
55
67
92
105
108
122
92
101
58
126
98
37
105
92
144
122
152
55
104
199
130
146
58
178
97
127
67
92
101
58
93
144
75
86
99
140
134
122
41
74
86
92
127
126
137
102
141
55
105
124
115
144
120
146
102
178
100
37
55
55
105
151
158
91
55
146
95
152
67
110
110
105
55
79
138
99
105
126
79
105
127
169
92
58
152
58
146
55
99
88
144
91
83
128
107
123
122
158
114
124
119
92
105
127
99
127
119
93
127
56
146
138
140
58
67
118
150
109
117
123
92
97
128
86
58
117
92
37
109
75
131
92
105
135
107
98
92
93
121
95
104
37
89
92
67
105
146
103
126
86
69
92
147
162
67
128
55
119
123
108
104
110
110
139
178
75
158
55
138
86
148
126
163
93
91
92
144
122
68
110
144
104
122
77
92
130
110
138
152
55
138
138
152
134
162
99
144
148
109
171
76
98
146
58
145
64
122
84
147
128
138
98
55
100
92
37
55
162
93
126
138
93
108
126
105
123
126
113
128
75
99
58
37
127
55
74
123
69
169
126
74
169
93
128
138
55
88
122
119
91
139
92
92
55
55
86
112
92
139
110
56
109
135
138
122
78
95
67
80
108
134
178
102
79
55
99
122
122
103
178
180
126
112
58
139
37
75
58
104
109
108
93
126
58
110
104
55
139
135
93
122
69
55
110
68
122
130
58
92
55
131
109
134
93
146
105
97
58
111
130
56
92
69
92
67
68
55
119
89
67
56
178
87
104
144
122
139
109
138
128
119
111
87
126
92
83
107
119
69
138
130
58
56
103
101
171
75
144
79
61
84
119
135
105
109
146
124
98
105
92
126
67
135
104
149
122
126
74
152
110
101
120
105
104
99
92
130
112
111
139
122
105
152
146
122
164
92
77
119
169
162
126
122
91
138
140
139
127
122
146
99
139
137
96
109
127
127
105
128
81
105
67
105
68
138
56
112
37
134
105
101
92
58
111
126
86
119
124
55
122
122
140
119
104
151
79
168
144
144
69
107
127
112
138
139
180
86
124
105
105
56
69
110
77
110
122
182
91
107
178
69
122
131
58
138
102
163
92
138
112
67
74
128
93
139
111
58
69
144
99
163
126
55
110
117
138
99
92
102
123
69
178
55
122
178
108
58
112
86
146
93
105
132
91
138
104
125
69
67
138
110
163
149
104
136
122
55
148
146
110
111
122
152
99
109
178
104
158
92
138
77
69
122
92
58
105
71
77
37
93
74
126
104
163
122
138
134
93
37
112
72
92
55
92
128
178
128
92
104
98
55
145
138
123
105
56
93
181
126
86
168
67
138
162
178
131
138
110
110
169
104
110
93
110
110
152
74
111
55
104
126
163
105
163
139
105
92
91
37
79
108
107
91
125
105
84
136
118
69
103
119
127
168
92
138
128
129
56
75
146
110
178
146
110
95
102
55
136
110
110
84
105
79
139
122
122
128
138
58
144
168
111
178
76
126
68
107
122
111
77
92
92
115
110
110
158
67
91
123
152
110
89
55
102
103
79
138
91
110
37
69
119
115
105
123
138
56
110
164
83
118
83
163
144
83
92
107
152
123
55
158
92
109
91
165
92
67
93
138
171
92
126
110
106
58
128
92
86
108
140
138
158
137
134
92
118
123
169
105
98
122
92
122
138
110
92
112
178
67
86
144
122
37
123
180
138
37
122
98
86
58
99
91
146
128
92
126
140
56
67
139
105
126
138
111
138
123
134
148
152
92
122
111
144
135
109
37
86
94
139
122
120
74
178
101
67
92
101
122
75
153
112
93
135
104
95
152
67
122
37
122
142
126
93
119
56
126
86
75
107
93
122
138
139
77
102
104
107
104
83
77
56
111
110
140
97
79
91
122
79
98
92
67
37
138
138
117
37
129
83
127
136
92
98
92
105
68
105
91
101
96
83
162
97
55
56
55
105
111
93
104
56
110
152
121
124
163
112
94
126
139
164
132
58
92
123
67
128
105
92
93
37
124
56
121
92
138
92
122
146
124
123
105
100
68
80
92
138
92
37
130
123
110
122
99
96
86
58
89
105
119
124
83
79
119
122
122
58
103
86
110
105
55
83
105
56
111
126
91
91
146
142
88
138
178
130
86
67
92
126
144
56
69
67
111
138
92
67
55
144
109
115
92
58
111
152
141
106
136
138
146
55
179
138
145
55
75
119
138
92
114
178
55
122
137
110
55
99
69
152
86
105
131
56
92
149
103
144
117
56
149
92
126
37
69
110
114
109
110
126
140
114
152
108
92
122
178
110
92
138
180
104
105
119
110
58
69
55
75
92
105
134
77
178
83
122
188
169
67
110
189
122
146
122
91
108
95
93
55
89
126
124
122
95
55
86
79
103
140
73
103
115
127
146
94
152
104
156
105
140
92
123
147
128
128
137
139
79
58
79
128
126
105
98
142
56
144
148
75
163
139
84
111
55
122
55
152
67
92
92
119
55
128
105
152
91
104
126
104
55
93
132
91
105
56
119
58
83
163
111
127
77
37
136
95
58
136
93
92
105
77
83
79
105
126
125
92
92
98
55
99
93
122
109
114
58
92
143
92
79
58
92
104
167
55
92
178
126
93
130
37
92
134
104
111
127
72
93
100
114
124
107
146
128
69
110
92
126
92
132
77
80
56
122
165
123
79
134
138
152
37
88
56
86
178
122
84
178
105
55
110
138
104
139
56
110
137
144
104
138
58
122
105
55
55
146
69
92
56
67
86
108
55
92
114
104
99
138
93
138
58
126
107
93
92
107
127
105
138
105
101
58
162
92
140
88
145
127
119
139
119
93
58
91
122
113
92
152
55
122
92
128
119
156
178
110
111
168
126
86
89
139
94
105
37
138
111
72
69
128
101
147
55
127
158
149
75
134
86
105
93
89
119
119
68
169
56
121
92
91
99
123
118
123
128
120
91
178
146
146
67
110
152
120
164
101
77
56
55
136
127
92
128
104
55
156
55
55
37
134
99
77
134
199
92
56
167
128
128
98
92
88
110
55
92
178
128
139
111
140
92
169
58
41
83
83
139
146
67
86
92
55
140
67
146
136
91
55
93
134
93
37
188
99
128
178
112
69
99
110
140
91
68
67
67
55
122
105
126
92
93
111
104
111
37
130
89
122
55
110
83
119
123
67
37
144
56
91
140
37
118
118
93
110
123
138
118
91
111
104
104
37
146
178
55
75
55
55
58
142
99
96
110
109
124
104
91
93
92
128
110
126
107
55
131
124
128
126
92
111
55
91
92
158
92
138
86
103
79
110
56
92
168
95
93
58
144
142
122
169
122
108
117
56
152
134
122
93
92
74
104
86
56
138
91
126
138
79
178
139
104
138
144
86
110
138
127
67
91
107
158
92
104
112
91
55
67
105
105
108
77
160
110
127
55
79
105
74
165
114
58
55
146
67
178
109
192
126
104
130
93
111
83
138
144
97
92
146
100
105
122
169
105
55
105
138
114
127
123
92
37
58
151
105
89
123
92
74
105
135
122
84
69
95
117
169
122
114
119
128
56
122
93
122
180
138
127
127
92
126
56
134
58
122
93
89
105
37
112
86
104
69
123
110
92
126
69
131
144
134
97
139
111
169
140
126
188
110
79
137
122
152
152
110
121
104
101
152
111
104
105
64
92
126
69
110
69
139
117
94
104
98
55
56
140
99
83
110
56
84
105
103
105
55
74
126
92
104
138
58
97
77
67
110
92
110
58
56
144
137
111
117
92
37
132
134
98
92
86
109
92
139
192
55
171
55
139
83
55
55
37
138
105
122
112
93
151
92
107
55
91
104
128
139
56
119
55
104
141
92
122
67
167
101
67
105
126
138
122
37
100
136
110
105
122
126
67
67
79
126
151
104
178
144
122
67
79
182
86
78
99
91
92
107
144
162
122
93
138
138
137
127
110
144
84
130
122
121
110
122
92
110
79
99
104
110
55
98
130
98
119
84
56
140
128
102
126
168
88
91
37
103
56
92
107
144
150
97
181
103
144
91
93
92
81
100
144
77
110
67
138
56
122
67
126
88
126
107
126
126
127
92
178
162
69
97
171
126
147
122
91
55
55
83
110
110
104
144
127
148
92
87
110
105
137
74
139
105
140
134
110
135
111
94
55
148
67
138
122
124
67
182
139
107
89
122
105
104
180
126
98
93
110
91
137
114
123
178
122
77
139
138
93
122
112
75
123
110
102
105
111
138
114
55
98
110
117
102
146
83
108
130
102
136
119
56
55
110
93
69
111
56
122
37
144
77
119
146
104
127
89
91
126
122
122
110
86
122
140
107
105
75
178
92
104
119
126
152
93
110
77
75
83
126
139
92
79
58
69
109
125
105
127
169
91
102
138
122
75
77
119
152
126
92
67
55
178
110
126
84
79
130
112
110
56
92
67
127
101
55
55
55
108
91
92
134
130
114
56
92
138
99
139
122
122
56
67
122
126
107
152
111
69
105
92
138
79
67
58
104
110
55
101
138
56
68
148
80
140
55
137
132
56
37
55
131
92
119
132
111
135
55
58
105
105
92
95
91
55
110
162
67
138
104
84
92
93
105
114
122
136
106
127
69
110
110
139
55
92
169
122
104
123
92
178
129
126
126
110
93
67
131
178
37
104
107
110
110
56
105
163
138
152
126
178
103
105
128
127
55
68
92
55
91
56
126
167
110
67
92
130
104
112
127
110
122
109
92
89
99
146
169
122
142
145
132
134
93
67
124
169
94
126
105
92
56
67
86
67
140
91
56
138
67
178
107
160
136
152
135
123
92
138
86
144
55
119
91
178
122
77
55
126
139
91
126
92
171
128
168
138
92
58
164
110
92
56
100
169
111
107
91
111
55
126
178
92
111
92
86
56
107
104
124
110
93
93
110
55
110
105
119
163
69
67
144
110
106
108
55
148
55
122
112
110
37
86
126
127
106
107
146
138
107
69
98
122
104
128
95
138
92
55
148
105
111
138
92
130
105
81
92
169
100
111
67
127
142
162
108
169
55
37
58
56
113
75
86
152
129
148
92
67
132
110
180
58
86
104
91
105
163
149
100
91
178
178
127
128
110
56
140
55
146
122
96
126
88
111
104
78
110
103
55
111
126
95
95
110
93
110
122
122
171
75
178
67
126
104
79
93
126
126
111
164
126
138
75
97
58
55
55
56
68
152
160
124
107
164
111
110
97
93
88
105
127
140
105
160
110
138
99
162
123
163
79
79
152
67
110
89
105
92
67
164
92
91
91
92
110
56
92
105
91
58
55
107
55
56
146
138
91
122
107
92
107
168
103
130
109
56
55
114
144
164
139
107
124
99
119
199
68
72
92
139
132
124
127
37
92
55
99
122
126
78
128
104
138
74
138
105
92
178
69
121
55
126
92
111
169
162
91
162
69
127
74
123
37
138
110
105
126
136
105
144
37
61
86
55
92
169
127
92
122
152
56
79
91
68
138
87
37
99
105
110
67
104
132
111
93
152
152
188
127
67
118
86
126
92
122
67
163
93
104
79
67
110
92
86
140
86
79
138
111
56
115
100
99
95
92
140
132
94
146
126
109
91
37
92
144
126
162
178
128
97
112
129
55
119
110
37
67
124
92
104
136
138
89
97
111
123
123
100
112
67
110
123
105
87
130
122
138
129
122
104
92
148
99
91
109
93
105
69
126
55
138
110
110
122
83
92
111
104
75
58
92
86
156
93
87
105
126
138
178
104
55
112
108
126
79
111
146
67
77
139
78
110
128
91
56
93
110
130
77
105
92
88
101
79
110
93
135
112
119
180
114
92
55
128
122
167
112
92
140
144
128
102
69
156
58
126
105
77
144
110
56
99
109
152
130
55
124
109
139
103
37
168
56
67
114
37
79
152
110
131
110
146
55
126
133
55
102
61
112
142
91
92
67
158
123
92
58
122
110
110
97
110
126
111
67
92
58
55
74
91
92
98
126
77
178
178
105
146
138
104
140
104
111
55
115
58
135
107
76
92
138
123
105
92
160
56
92
92
148
69
55
131
104
77
117
93
126
77
94
138
55
101
158
139
118
107
55
77
144
119
56
105
107
122
93
78
128
92
77
168
80
126
127
58
120
138
152
79
138
104
105
98
134
106
67
58
106
37
92
122
178
138
128
140
148
130
107
68
138
107
135
67
146
126
122
56
104
101
122
67
123
55
138
56
126
134
105
126
126
74
126
74
55
99
78
98
127
106
110
136
55
105
78
69
67
139
58
86
93
67
154
55
56
98
68
105
131
110
110
117
149
92
55
136
37
126
126
128
92
103
110
109
108
103
142
169
128
122
148
55
68
178
58
77
55
67
123
164
91
56
92
37
55
56
97
152
152
112
106
55
105
92
104
86
92
81
119
55
67
110
74
92
102
122
123
92
95
92
144
158
105
140
92
146
139
127
79
122
56
56
92
74
105
93
136
137
58
142
119
55
158
122
112
113
68
122
146
178
140
67
37
92
105
58
127
67
93
103
110
111
98
103
105
136
99
92
178
107
105
92
76
148
92
55
84
144
112
83
168
92
92
55
107
92
130
84
122
163
56
92
138
146
56
138
55
139
122
55
92
67
84
87
139
138
75
102
149
37
110
168
122
112
126
128
67
89
107
127
108
67
58
113
127
134
76
178
111
111
101
131
88
178
110
103
56
92
110
74
123
122
55
93
55
138
110
101
182
122
132
67
171
96
138
88
107
67
74
79
132
67
128
146
105
126
107
93
140
126
134
152
94
56
145
146
119
99
86
146
110
55
69
126
104
139
162
98
152
103
74
92
100
110
126
122
158
146
178
92
164
139
67
109
148
114
105
127
110
56
110
168
92
178
126
93
77
91
144
93
68
110
152
152
69
58
126
104
126
105
74
138
139
139
93
101
140
92
113
138
74
114
56
124
199
99
169
144
110
110
130
110
103
178
83
77
127
146
169
121
69
105
122
159
93
99
105
140
119
126
67
110
105
67
92
93
139
96
144
105
148
91
92
105
67
128
144
144
122
79
111
83
178
107
105
122
105
132
75
55
55
135
152
79
171
134
78
102
165
92
105
139
104
122
128
110
37
105
123
144
128
98
86
139
84
37
122
169
86
105
92
105
55
128
83
152
92
75
100
85
142
160
88
123
93
91
110
144
67
92
92
146
163
117
58
86
124
69
93
103
92
171
83
55
67
126
93
93
37
92
138
92
91
127
67
146
152
126
67
118
74
110
109
55
121
169
144
114
93
88
119
79
108
67
104
182
67
122
56
124
58
105
110
67
74
127
75
122
121
139
152
126
97
56
104
92
97
109
119
99
37
123
95
56
105
178
91
165
86
93
92
105
58
105
79
152
128
123
122
139
93
138
111
110
108
92
103
75
79
67
56
91
140
109
122
127
110
107
56
105
105
110
128
180
124
135
107
118
122
58
110
126
131
146
146
130
110
139
92
126
138
91
104
56
105
104
92
126
126
111
105
93
56
106
77
169
58
122
67
138
119
167
99
112
131
126
134
58
152
126
138
131
105
92
123
56
104
111
92
88
107
152
86
109
77
152
67
77
148
67
122
55
104
148
69
93
117
126
58
61
56
98
107
171
123
93
138
119
74
131
98
130
79
138
132
134
110
91
107
112
92
69
58
37
105
92
110
69
103
56
125
37
138
92
97
131
92
55
55
92
158
138
105
55
104
128
55
67
119
95
92
83
126
92
97
56
105
109
58
146
93
178
86
75
123
67
55
139
56
83
75
91
126
135
113
105
129
146
169
92
104
109
37
89
103
111
105
105
127
144
83
104
127
79
130
110
92
132
138
108
92
128
103
146
139
118
77
86
92
126
122
101
122
77
119
126
107
131
152
93
105
83
84
148
67
122
126
148
77
93
139
94
138
110
99
97
126
56
55
137
178
75
124
138
75
137
102
69
98
37
105
163
139
127
91
58
128
58
79
74
99
124
91
104
169
77
112
104
138
119
114
144
127
167
75
158
126
125
110
162
104
105
122
74
69
110
55
105
77
88
69
104
37
124
145
110
111
67
122
74
158
69
104
56
118
56
74
69
92
104
122
92
69
105
92
144
127
110
74
88
56
178
146
126
55
93
89
86
92
119
138
92
37
58
124
95
89
110
97
136
98
123
102
167
110
138
103
138
122
98
93
139
104
56
122
56
144
94
104
162
104
56
110
67
126
102
69
75
144
74
93
55
146
115
139
124
110
178
140
55
110
123
139
120
75
55
93
131
126
55
127
108
77
92
122
86
178
102
126
123
123
118
69
111
122
91
123
68
122
127
55
144
169
138
104
93
117
105
55
68
99
100
112
92
92
110
119
130
126
105
146
91
126
112
146
79
128
110
105
79
122
92
97
139
122
77
86
138
88
169
124
37
130
56
148
99
86
178
93
103
121
92
97
136
138
76
105
127
91
178
136
138
119
56
163
98
92
127
126
92
118
110
119
68
144
93
122
74
120
119
92
117
126
127
67
93
122
110
134
122
92
144
123
127
138
79
127
127
92
140
117
88
110
37
91
189
127
92
67
77
99
67
122
105
109
127
68
178
92
55
152
97
130
138
67
143
58
93
103
122
132
98
84
67
124
138
119
99
77
152
126
107
140
104
127
108
122
101
104
138
92
67
124
91
100
105
127
67
128
92
67
58
55
131
128
126
171
107
127
75
109
67
92
87
126
37
102
69
79
97
98
103
100
67
124
122
92
119
105
144
130
37
93
122
93
110
126
126
140
132
167
93
110
149
92
152
138
110
122
86
144
91
92
93
67
126
92
106
139
92
103
146
105
110
178
58
105
102
103
91
101
103
127
105
92
126
102
77
126
160
110
105
105
178
67
169
131
151
103
110
117
77
69
95
37
56
138
92
144
122
67
105
139
130
138
132
92
148
105
144
74
58
92
93
105
126
99
74
138
152
146
105
67
130
83
69
55
77
106
105
124
136
127
127
139
124
67
131
107
158
105
152
98
101
105
83
103
110
94
127
145
93
56
132
56
124
86
148
129
105
145
110
150
56
146
111
55
58
111
178
92
148
74
134
92
108
89
93
69
79
122
122
148
134
122
83
109
84
75
119
55
91
67
168
122
55
55
111
93
104
107
140
98
146
105
102
92
110
105
56
111
58
126
152
131
140
58
109
56
137
126
109
152
122
98
130
102
121
105
37
110
122
124
122
56
148
138
104
37
103
105
171
93
100
122
148
93
55
58
68
113
152
55
93
158
55
67
111
146
107
37
127
55
126
139
77
139
98
122
92
92
126
58
126
126
138
69
132
58
122
67
122
105
125
56
111
86
99
111
124
124
132
93
92
106
105
107
92
56
109
110
122
94
105
77
112
178
104
79
88
105
122
138
93
146
115
104
55
146
84
119
158
69
112
122
37
137
124
129
88
178
162
74
67
122
181
77
93
67
104
74
119
91
91
75
122
67
136
80
144
56
164
55
89
119
67
55
101
122
110
123
92
138
138
110
55
110
109
91
140
110
110
126
92
75
138
146
128
139
138
77
110
115
105
139
37
55
126
58
127
86
55
162
67
98
138
92
119
86
98
55
139
37
120
67
67
102
104
152
110
92
92
110
75
146
92
140
74
105
105
95
67
83
171
105
126
122
77
138
163
152
99
119
102
92
92
122
110
144
119
81
122
79
95
122
55
152
192
144
56
65
128
92
138
55
105
146
137
102
178
93
100
126
110
138
107
136
105
92
111
111
165
109
126
87
105
95
58
56
109
146
55
93
131
123
104
122
37
178
55
89
110
56
55
139
126
126
67
180
141
138
79
142
67
106
92
139
114
92
122
77
113
128
126
139
117
111
97
124
138
95
58
58
74
122
58
126
91
92
109
119
103
55
152
178
144
138
93
56
92
92
106
117
55
37
123
134
139
105
92
127
126
55
152
104
152
103
126
56
92
111
138
37
55
115
110
69
79
122
93
139
110
67
67
123
178
171
56
146
136
131
105
108
138
55
122
122
104
79
165
110
111
55
105
123
119
67
92
55
92
104
92
91
56
55
126
86
77
56
103
84
71
92
114
93
152
146
56
107
178
126
92
158
104
69
126
69
171
117
91
105
138
104
145
119
92
91
142
93
119
119
92
79
67
79
84
122
84
104
102
110
192
119
119
105
178
144
146
119
83
127
37
109
139
146
55
171
148
135
122
88
146
92
55
146
169
178
178
55
136
126
83
68
104
84
55
83
79
119
99
134
99
58
111
140
152
92
104
93
169
144
139
55
116
122
67
126
67
56
128
67
92
169
58
104
92
69
67
68
67
131
126
92
58
56
199
119
127
138
139
37
99
112
91
88
111
105
83
104
120
91
55
105
56
127
119
87
55
98
134
92
178
122
131
55
55
92
144
86
55
107
92
139
128
122
75
79
127
105
123
55
128
99
119
93
138
109
111
91
83
158
67
126
86
134
55
56
108
137
126
94
105
99
127
134
138
152
121
128
76
92
55
96
55
58
37
92
126
178
75
55
152
138
105
162
67
122
80
56
178
92
67
117
101
119
104
110
79
107
101
127
37
119
146
139
120
150
99
152
92
91
110
92
56
79
92
92
103
92
55
110
152
58
69
37
97
169
127
55
135
96
134
111
140
138
55
68
56
92
107
119
168
119
69
129
56
97
84
134
56
110
72
74
93
126
110
168
136
136
91
128
126
80
79
158
112
58
118
122
106
92
69
105
122
69
134
110
131
69
160
67
140
110
160
120
93
77
118
73
130
92
134
126
144
55
100
105
129
99
111
81
92
68
69
126
79
119
168
165
101
103
92
93
127
56
93
69
123
102
124
80
126
92
171
110
126
122
107
91
79
178
98
92
107
75
103
89
91
146
163
111
93
85
86
107
86
79
55
78
75
55
152
110
92
56
118
146
55
127
138
101
148
111
92
74
75
103
137
105
138
109
110
56
146
110
107
93
112
139
168
169
103
104
95
93
139
107
37
122
103
101
128
64
98
123
74
110
67
127
110
99
119
123
92
138
107
148
75
67
92
145
144
122
56
105
74
55
86
56
92
91
110
122
101
110
55
169
37
171
111
123
86
126
126
138
74
91
122
110
92
109
110
164
107
104
100
55
144
56
100
73
144
55
75
58
98
141
168
136
91
178
92
138
128
147
132
77
77
108
104
87
107
104
144
99
110
122
98
122
55
126
169
129
111
131
136
56
67
140
83
126
122
103
162
74
109
169
92
93
178
148
122
127
148
92
126
110
119
105
122
163
147
67
138
89
110
110
104
105
136
178
95
56
136
86
122
119
126
104
101
37
138
141
171
144
56
103
93
130
111
69
75
126
67
110
58
92
92
56
169
110
103
112
134
144
128
91
134
123
109
138
127
167
178
99
91
58
92
188
99
126
56
92
137
158
110
130
58
138
92
129
93
116
110
114
139
56
86
138
37
93
114
110
75
69
92
126
68
92
144
126
178
120
74
37
112
77
56
92
92
92
140
74
148
105
192
131
127
158
132
58
137
123
123
110
92
110
126
127
91
171
110
111
80
79
127
119
119
86
58
124
107
92
138
81
100
105
110
55
101
87
111
97
93
146
55
91
106
93
86
91
92
55
37
139
103
165
122
105
101
55
98
126
126
127
84
56
148
126
111
37
92
106
104
169
105
109
126
125
110
165
92
138
92
136
68
128
132
86
104
139
139
140
119
69
56
67
75
92
109
93
97
58
112
105
77
128
102
109
126
126
140
138
67
105
127
67
171
67
146
86
123
69
55
126
92
55
84
67
134
55
56
102
86
110
67
178
128
99
139
74
92
127
148
75
138
86
74
110
79
104
92
163
128
67
152
75
126
104
127
123
113
67
58
105
97
122
165
56
86
106
127
138
127
152
56
67
92
77
77
110
97
121
74
110
138
58
105
104
91
74
128
55
99
105
138
138
122
92
67
105
137
110
37
58
69
127
103
146
178
139
131
122
83
110
104
110
122
37
92
178
152
144
110
144
93
68
110
37
94
92
139
55
109
115
139
93
81
55
56
83
58
77
140
92
124
92
58
93
100
105
92
105
120
92
132
55
138
92
92
139
139
135
124
89
125
169
168
122
152
93
58
93
122
67
56
138
139
138
74
75
122
95
92
105
110
105
92
55
122
81
68
91
55
74
99
110
127
56
67
83
80
92
37
144
123
122
122
109
56
92
122
104
75
138
111
93
104
129
110
138
105
139
140
111
98
79
110
117
148
122
92
178
75
89
180
115
119
105
139
92
92
188
92
67
93
93
73
122
117
55
110
144
131
117
146
123
55
126
110
126
91
56
103
119
98
104
83
123
55
122
69
37
67
110
122
110
128
84
86
55
146
122
169
55
144
124
67
138
112
122
127
160
97
105
158
56
128
97
92
158
145
55
164
55
178
56
128
107
105
79
92
58
171
111
55
55
105
144
139
146
146
126
130
69
67
67
131
123
75
139
171
99
86
92
148
56
97
109
110
109
138
107
152
110
132
97
104
103
98
130
106
110
92
128
91
105
55
169
128
98
128
169
126
122
93
110
111
92
104
80
119
37
99
67
128
55
105
128
101
110
37
104
127
110
74
55
126
146
56
37
74
58
67
55
91
126
169
127
126
110
92
55
56
56
118
110
55
99
55
97
104
169
122
93
110
67
100
88
131
122
127
89
58
86
55
134
92
83
92
86
117
144
92
78
197
68
104
67
103
55
138
124
92
109
108
111
107
148
93
56
140
92
144
147
67
178
100
139
105
158
132
55
146
67
144
67
93
37
178
37
77
139
110
67
127
67
69
148
93
162
55
145
93
131
93
178
122
122
123
58
105
55
110
77
91
163
78
67
114
58
97
79
37
125
98
58
138
123
119
55
93
91
67
86
93
99
110
114
93
102
109
169
74
86
128
146
114
104
58
112
69
92
92
37
117
81
119
178
110
105
122
93
112
144
122
105
79
124
92
58
149
138
105
136
120
91
163
119
139
109
84
98
104
77
92
110
56
103
129
86
111
122
126
105
163
67
124
139
109
138
55
55
111
67
164
126
92
171
139
127
67
144
88
144
37
111
65
111
110
92
77
104
146
92
67
111
92
73
110
67
55
110
113
124
148
106
120
128
140
169
56
122
65
126
122
92
110
93
134
169
158
110
171
143
148
164
135
138
84
127
102
120
169
86
74
105
139
122
89
160
139
104
56
86
178
110
146
56
104
89
122
119
160
163
137
110
110
81
131
171
122
69
58
139
128
103
111
105
56
122
92
93
144
144
93
138
67
75
136
129
152
37
124
110
110
92
69
134
103
55
137
123
126
120
92
74
119
109
134
92
139
124
138
68
91
55
128
107
127
122
144
103
178
127
148
127
126
128
137
103
122
92
92
131
41
119
74
148
103
126
105
109
139
58
55
79
123
107
122
146
138
92
74
58
99
101
56
122
91
163
138
146
105
55
104
126
138
128
171
110
163
138
68
91
79
92
92
79
67
169
152
72
56
92
123
55
124
128
79
138
169
92
126
104
140
69
160
58
67
92
55
55
139
104
88
91
110
110
140
69
93
144
110
105
89
138
144
37
152
67
56
92
149
99
111
67
104
146
67
74
91
139
86
144
83
110
56
127
131
83
158
127
105
111
122
135
56
112
89
162
138
126
122
92
122
152
107
152
112
138
138
111
104
163
58
111
114
106
56
92
92
100
109
37
139
120
56
55
58
101
119
97
127
105
92
55
171
86
144
112
92
117
114
119
126
105
58
93
126
58
126
99
92
93
106
117
112
122
119
92
132
152
137
104
58
92
91
146
123
160
108
123
107
104
178
110
167
110
140
126
105
56
75
146
104
126
160
67
101
128
55
37
109
126
96
101
103
77
92
152
169
56
77
69
79
93
104
134
67
126
152
77
77
58
74
74
110
92
169
128
169
168
138
122
178
178
134
169
92
102
56
67
99
178
67
92
56
178
78
162
138
134
56
131
103
138
110
119
148
113
67
128
124
80
110
144
150
148
75
86
104
92
129
141
127
92
92
163
69
80
136
138
93
127
69
92
92
105
76
171
86
99
74
88
128
37
55
74
92
126
99
55
146
116
55
140
126
58
93
77
92
92
99
122
92
92
105
124
118
92
92
105
179
130
138
91
126
188
178
131
67
75
120
105
91
142
37
114
75
105
83
138
55
122
130
127
112
152
122
128
123
111
118
93
137
180
69
136
58
146
92
110
75
37
99
91
144
55
55
77
107
84
124
126
55
110
67
101
126
127
77
110
128
146
152
86
139
126
123
110
136
123
135
128
105
74
127
110
55
75
92
105
56
93
56
126
149
58
56
105
103
92
67
105
88
110
93
145
130
77
197
110
91
98
122
138
192
92
124
110
110
145
109
105
67
100
56
144
110
92
37
58
56
147
99
110
112
122
139
56
100
83
93
75
99
107
167
74
138
93
93
94
134
144
100
126
139
146
126
178
56
55
189
138
122
75
112
144
55
110
67
122
134
68
103
119
109
79
126
139
111
114
139
110
125
111
110
152
37
69
75
109
99
58
139
114
67
124
146
115
55
122
67
126
105
92
100
140
139
169
92
55
158
100
67
160
122
92
122
77
58
109
89
126
139
139
160
110
91
139
148
138
125
74
118
177
105
134
99
92
127
84
79
136
113
136
56
58
104
130
92
122
138
37
111
139
56
152
109
148
92
169
92
55
91
97
58
107
130
146
150
178
144
58
92
138
85
80
93
126
55
103
105
110
81
124
126
92
93
126
91
110
55
86
150
126
96
99
110
68
99
109
95
132
144
111
109
97
91
122
105
178
110
138
83
114
37
114
178
134
105
68
67
105
73
37
55
92
88
110
146
93
100
138
91
110
119
104
107
178
127
152
119
79
67
110
79
168
93
96
178
93
58
123
110
127
126
105
139
92
140
114
119
134
110
152
103
122
112
92
55
119
56
92
126
138
93
121
67
67
178
56
92
67
83
111
98
91
67
55
92
102
99
163
107
77
107
105
56
130
67
93
80
127
105
77
79
131
92
105
122
107
120
98
109
37
92
67
134
77
55
91
152
106
122
119
93
37
100
69
122
55
122
144
110
107
122
178
107
114
109
56
126
119
149
104
110
100
105
136
122
126
119
92
104
115
56
67
146
138
92
169
105
105
92
123
55
104
58
109
109
55
58
101
110
167
99
37
138
95
56
122
158
93
103
109
139
56
138
55
104
104
110
58
128
77
92
56
93
110
58
92
119
91
123
93
105
93
87
105
138
101
79
144
94
108
92
124
92
93
83
178
55
134
123
122
55
171
92
105
152
110
55
122
144
127
169
123
86
75
92
131
152
92
105
58
140
75
86
98
122
56
84
79
138
55
92
152
138
105
86
119
101
119
92
77
91
127
77
178
55
128
149
56
92
136
69
139
69
103
77
144
91
37
129
55
110
69
79
104
79
138
119
92
91
84
105
122
128
55
92
58
109
114
127
74
123
134
138
93
148
79
152
69
104
128
124
127
127
128
138
37
168
125
74
58
69
126
162
95
138
97
110
169
138
144
101
92
111
127
122
138
128
103
79
109
67
109
67
86
110
58
152
91
96
67
105
56
138
75
56
69
110
67
77
55
122
122
55
123
110
93
127
69
111
97
103
132
104
148
92
152
92
110
91
155
119
56
67
152
147
138
138
122
93
122
115
94
131
84
104
171
115
138
105
93
67
110
37
86
69
112
93
84
105
131
128
104
110
75
134
83
140
109
37
126
64
83
56
122
56
126
164
164
96
92
56
92
110
108
83
111
67
120
131
114
119
192
152
79
75
92
55
146
122
92
160
126
138
146
124
128
122
171
100
67
92
132
72
168
67
126
126
127
67
119
56
67
67
178
69
148
37
178
56
126
86
112
138
178
89
149
79
67
126
138
99
158
178
182
111
102
149
122
117
56
119
68
77
91
138
92
127
122
139
160
104
110
119
67
111
56
79
93
56
67
116
105
138
98
55
140
146
123
132
110
56
56
56
129
105
146
104
109
67
113
92
140
102
140
114
169
105
86
88
56
92
85
122
122
128
122
67
123
156
122
100
138
148
181
110
104
130
83
152
69
69
89
107
146
131
84
77
88
123
138
122
180
160
67
99
159
92
152
122
128
111
37
115
124
162
128
79
107
97
37
122
146
124
122
134
55
69
121
128
122
126
122
104
138
138
104
77
67
123
77
110
92
92
92
138
69
122
131
99
109
103
138
99
55
55
79
103
91
104
56
130
148
103
129
99
101
111
122
152
123
91
118
81
107
55
171
135
100
75
131
139
93
117
92
58
168
114
124
126
92
126
146
122
86
178
119
92
79
92
58
108
69
55
111
67
138
178
92
75
127
126
55
103
92
120
107
127
138
109
107
55
74
56
104
67
91
105
69
103
67
55
152
122
114
81
83
110
119
55
92
55
138
110
67
105
104
99
120
152
67
110
104
99
103
171
114
105
55
138
107
112
104
110
122
92
69
146
105
105
138
86
144
91
105
135
111
93
86
138
92
37
97
110
93
104
78
55
99
103
65
126
199
93
163
105
112
55
131
55
149
92
79
77
109
56
67
122
139
84
180
81
67
103
109
92
58
105
99
124
55
139
168
98
119
99
55
92
139
58
132
83
92
92
122
91
122
152
92
138
110
107
126
92
159
128
105
92
56
92
122
92
69
67
112
58
55
131
123
105
55
114
92
55
110
144
110
139
55
83
92
119
92
92
108
86
114
79
110
146
128
122
131
111
112
79
171
122
104
122
103
55
141
127
92
145
178
100
92
138
99
91
178
122
138
67
55
77
99
92
92
94
106
138
119
105
119
55
89
122
146
110
88
80
37
100
126
128
55
152
165
100
104
138
119
55
122
168
55
58
91
58
119
126
56
104
134
78
178
130
37
122
126
122
134
67
152
106
111
77
140
92
140
67
138
152
126
127
91
127
110
81
178
75
144
77
93
171
140
110
126
171
139
134
105
168
105
146
109
115
95
56
102
139
111
103
134
67
130
37
110
56
169
158
55
56
163
156
134
127
103
146
122
99
146
119
126
37
135
93
55
180
112
75
134
110
107
168
101
107
111
100
104
92
92
126
55
130
105
108
83
104
110
109
56
122
107
125
92
127
91
55
129
56
89
101
69
105
106
112
37
138
99
171
105
140
79
58
105
105
77
152
92
140
126
84
122
105
124
178
75
86
152
105
88
138
104
105
152
67
139
126
67
146
72
107
55
126
55
37
146
104
141
92
91
137
122
83
147
117
110
92
69
116
138
138
58
139
127
178
140
55
56
104
93
123
127
136
75
81
79
67
105
104
99
120
156
122
119
119
83
138
112
110
123
158
106
130
139
114
104
146
119
152
144
110
79
88
100
109
89
138
144
83
55
104
97
84
84
127
131
169
86
83
128
106
168
179
158
127
140
58
138
98
56
104
58
138
56
131
69
138
58
92
110
55
132
105
146
99
86
131
101
92
110
117
55
67
138
104
126
144
160
101
144
169
110
69
94
107
37
105
123
132
130
69
98
138
144
105
55
122
101
151
103
67
83
110
122
139
138
126
135
55
124
105
142
91
131
92
83
105
169
139
74
139
93
101
99
167
74
105
67
75
55
106
55
56
146
130
104
126
111
91
178
146
163
92
108
83
79
138
126
101
58
97
138
37
92
69
67
139
126
118
146
120
126
138
117
167
97
92
92
140
110
55
55
81
132
55
138
67
122
99
180
104
128
126
134
86
69
98
92
107
127
152
111
67
119
128
92
58
92
119
122
120
55
93
126
144
139
126
144
178
110
115
110
68
121
122
110
97
69
128
97
92
58
178
83
107
105
138
122
74
105
104
107
110
105
107
114
120
163
107
134
58
111
140
127
123
123
109
92
122
92
139
55
178
140
104
127
126
127
37
107
92
104
93
138
56
37
151
95
75
135
162
122
56
162
110
138
93
126
92
148
93
92
92
91
111
126
79
100
112
74
99
128
88
95
126
127
162
168
91
127
124
98
56
149
126
146
67
126
86
56
138
107
92
37
105
93
131
37
140
123
144
104
105
68
111
92
104
73
83
122
178
73
110
140
128
68
146
126
122
104
110
111
122
55
79
109
91
117
110
178
139
74
111
139
92
105
127
138
105
110
92
178
92
122
110
93
87
55
55
136
92
105
92
130
55
107
138
92
97
67
171
136
169
144
146
146
91
130
55
110
128
158
126
56
86
55
92
171
162
178
144
92
144
149
144
164
126
119
79
86
92
124
127
152
178
67
74
127
144
77
178
152
37
78
110
134
86
144
104
89
109
156
120
158
92
138
92
91
67
69
69
55
109
123
122
140
119
108
105
127
92
117
139
134
130
126
93
109
56
55
56
110
55
152
106
126
123
83
124
55
123
99
178
109
69
74
130
92
67
128
105
132
122
97
126
124
117
110
105
77
122
146
104
95
104
126
75
146
110
119
128
110
147
136
138
74
126
104
128
110
138
79
93
103
80
140
110
123
144
55
105
58
110
68
188
148
144
119
152
138
144
67
146
125
91
122
169
56
138
149
169
74
146
92
105
110
101
87
55
164
138
37
130
106
104
68
93
120
92
92
113
109
140
109
105
92
149
104
55
55
138
104
97
56
74
182
145
118
122
92
93
75
134
92
37
92
92
138
98
128
109
58
105
122
67
67
102
93
109
55
138
55
92
93
77
124
77
56
123
105
95
126
55
128
139
134
99
139
99
105
84
134
168
55
103
110
74
110
110
110
171
93
91
130
67
106
92
55
134
100
99
128
122
68
55
55
92
67
123
74
144
91
138
77
79
93
68
123
91
56
67
146
105
55
104
68
110
164
86
37
122
138
58
122
140
126
109
144
71
105
92
178
75
93
92
107
124
67
92
55
128
126
56
104
55
91
92
93
105
110
69
130
138
83
79
93
105
99
160
152
37
77
148
109
58
112
105
78
110
126
134
91
69
121
119
92
108
55
106
178
37
138
105
152
169
56
103
118
93
122
122
86
128
80
68
112
131
105
126
93
119
100
74
127
105
75
149
92
171
69
105
124
75
100
56
153
148
148
130
37
106
126
105
138
56
103
104
55
79
104
111
144
163
67
91
117
55
169
134
148
61
126
55
99
144
83
126
165
118
110
135
92
122
126
77
55
55
110
142
55
131
127
138
103
55
109
139
124
37
122
56
178
79
139
109
122
144
109
86
92
146
110
105
144
178
67
178
77
139
178
126
121
114
131
75
92
80
152
104
109
182
104
75
103
110
126
111
111
162
105
55
109
91
58
152
119
105
92
84
132
122
138
77
110
134
123
104
110
107
69
126
92
132
104
128
56
92
122
37
126
160
134
58
132
110
106
119
128
105
75
105
124
124
92
140
139
124
110
130
88
109
105
67
123
152
178
97
67
77
112
101
101
163
120
110
75
122
138
163
126
132
105
97
110
151
56
67
92
132
105
74
105
119
106
126
75
104
37
127
160
92
124
110
92
79
77
126
119
107
92
55
111
138
109
168
110
126
56
89
114
138
144
152
92
128
111
68
69
98
118
58
116
178
105
167
137
126
123
148
178
110
109
138
79
106
110
110
55
97
91
56
77
158
151
91
139
92
113
83
127
127
93
86
144
83
86
86
100
126
100
110
92
74
152
144
97
165
158
138
37
55
178
105
144
100
93
103
112
134
55
74
140
165
93
56
152
110
92
122
124
109
122
138
127
139
122
105
139
110
99
152
94
139
132
56
127
92
86
127
79
120
92
105
135
111
126
103
105
122
74
58
95
56
119
37
84
111
142
128
152
168
110
135
105
75
119
58
56
104
127
91
55
112
89
119
169
126
105
139
109
111
111
146
89
55
69
110
199
178
89
134
69
93
104
138
135
92
158
144
105
137
144
160
56
77
91
37
93
152
93
56
127
58
163
110
178
93
92
93
126
138
126
131
37
103
146
105
99
128
37
67
178
169
86
114
127
55
110
180
114
67
94
110
37
110
101
55
123
126
79
111
55
122
55
67
126
139
130
126
58
117
111
110
69
104
123
91
58
152
92
138
98
169
101
137
79
75
103
92
108
93
112
139
119
56
92
138
79
122
104
104
146
110
99
56
139
128
152
55
56
56
179
148
110
112
61
138
128
105
139
93
136
55
55
117
144
101
86
136
67
126
55
127
144
107
67
92
37
122
142
134
138
104
58
55
67
120
122
67
75
92
58
74
84
122
141
56
122
55
84
99
92
58
114
58
126
140
126
99
69
138
67
92
106
92
122
89
122
58
104
178
93
105
110
103
104
104
83
55
58
169
67
110
105
107
79
55
97
127
92
126
111
92
107
126
105
123
178
104
126
99
168
92
168
37
178
75
119
139
110
134
67
122
122
144
83
152
93
98
77
61
109
122
110
92
55
105
139
86
103
75
126
126
99
126
92
69
92
152
144
142
55
100
138
68
75
92
104
126
126
86
77
126
101
104
122
103
37
105
67
56
144
92
122
152
126
122
127
69
144
126
128
77
122
169
77
146
56
123
55
102
160
126
67
67
163
103
122
79
158
138
130
91
75
55
58
146
138
89
139
37
140
153
74
146
105
122
110
95
55
55
92
132
111
123
152
134
93
126
77
126
123
83
111
122
104
117
148
110
104
93
105
79
123
92
68
79
79
67
92
138
92
152
92
92
138
67
58
138
144
149
104
178
99
126
110
134
99
92
92
128
92
110
125
126
69
93
122
126
93
126
103
110
67
75
126
138
156
127
56
98
134
79
55
116
114
110
122
171
100
126
100
93
67
37
169
84
86
180
92
139
126
107
139
104
100
108
58
116
97
88
105
105
109
113
105
118
58
126
109
56
104
93
135
104
93
171
171
55
138
110
107
137
137
93
119
146
110
92
103
92
69
122
119
104
56
123
37
104
128
142
68
99
169
139
138
139
106
55
139
123
138
105
78
131
105
68
97
56
98
110
55
91
136
110
152
111
93
56
122
123
75
92
67
112
146
128
146
158
119
75
92
67
107
92
77
110
126
110
105
37
92
178
105
145
127
105
178
74
126
182
99
104
56
140
127
118
93
126
126
138
75
55
74
104
119
126
93
119
124
104
122
134
169
122
119
110
101
146
107
117
58
55
103
122
122
93
67
139
55
178
105
86
152
156
119
134
86
146
92
110
144
93
128
55
105
86
105
126
122
98
115
171
75
139
110
58
67
56
106
58
116
103
37
68
123
108
105
111
139
78
138
140
86
88
77
138
140
180
92
146
110
56
56
128
55
126
58
79
138
178
171
88
108
89
105
58
122
118
119
56
165
75
163
55
55
105
58
127
56
138
92
110
105
128
117
123
178
93
37
67
95
56
124
111
55
55
55
127
122
109
74
144
126
110
93
199
127
128
76
56
137
122
67
135
56
109
138
117
75
91
178
110
103
122
142
92
86
105
152
92
100
130
117
131
123
138
122
134
111
122
144
92
120
84
74
119
92
132
68
92
92
92
110
69
109
110
69
106
58
104
126
67
144
138
171
188
92
138
138
107
77
146
123
117
92
134
178
127
144
123
107
126
55
139
119
128
127
126
74
107
92
103
127
92
126
127
146
122
103
114
122
79
97
105
122
100
110
118
123
130
110
56
188
152
93
80
105
78
119
178
111
127
37
128
152
86
126
169
84
88
93
99
86
122
126
83
139
93
92
115
109
126
134
138
104
110
104
127
122
139
111
110
131
110
110
126
110
125
110
104
119
55
124
124
109
131
75
55
56
110
127
122
104
55
107
158
55
111
138
134
67
84
158
55
69
144
107
122
132
122
110
105
55
92
86
98
122
110
122
124
79
165
165
69
69
146
126
105
107
92
92
144
124
55
152
131
93
103
55
83
115
58
104
74
162
104
67
122
119
119
178
124
55
75
106
75
79
104
109
67
92
122
107
109
169
122
93
79
85
93
92
105
135
126
55
67
122
58
110
92
56
126
123
105
111
110
118
110
67
122
138
92
77
86
92
124
112
168
69
55
55
110
55
77
140
126
182
95
67
116
93
93
129
135
104
68
110
67
55
58
126
56
102
138
89
142
131
109
126
55
83
122
67
134
126
139
97
97
93
75
105
132
56
69
109
126
152
123
107
144
100
86
127
122
106
58
58
144
122
165
139
168
110
92
37
137
107
86
104
138
91
139
92
77
153
112
119
55
128
131
123
91
139
152
55
92
55
138
92
110
152
68
104
86
119
58
139
92
74
123
74
115
56
152
122
67
92
79
127
110
92
56
103
139
89
119
92
55
138
93
126
55
102
100
136
165
103
55
128
92
67
102
109
67
111
92
178
92
171
79
74
37
120
126
128
104
122
137
69
138
127
55
122
111
125
81
55
117
164
144
119
114
75
86
144
75
105
123
37
164
123
55
55
122
110
111
122
126
100
132
122
86
91
105
58
69
110
113
55
131
100
92
77
92
69
92
110
92
103
180
67
86
111
107
37
92
109
138
99
75
55
95
122
74
37
168
99
93
69
58
92
126
114
110
56
111
75
122
178
92
93
152
67
126
55
114
92
144
122
122
110
144
101
78
179
163
180
79
178
122
144
134
93
126
121
86
92
110
138
110
127
55
37
146
111
152
75
103
157
69
130
122
138
105
67
123
122
126
110
104
146
56
138
178
178
97
79
123
68
111
110
144
110
134
165
65
136
134
88
56
84
178
99
109
89
55
138
58
69
119
110
140
152
148
86
78
126
94
55
86
67
55
111
104
144
122
136
92
123
91
78
104
56
112
92
77
109
140
77
120
56
84
106
105
143
109
96
111
91
122
110
169
98
77
103
126
134
67
168
122
158
69
127
134
111
107
119
180
92
178
55
93
55
105
109
86
83
123
152
126
134
92
122
110
107
105
58
37
92
67
77
102
89
140
69
139
55
103
55
89
138
136
111
77
55
91
67
79
122
180
93
93
56
134
167
130
144
83
160
111
92
95
79
124
169
99
127
110
67
120
127
104
128
104
146
77
92
56
102
146
122
128
98
105
107
117
110
97
67
160
110
58
124
126
118
86
77
114
110
140
93
103
126
124
93
113
105
84
117
100
92
55
103
93
97
178
93
126
105
140
144
99
58
123
58
126
126
104
131
111
105
104
158
67
92
110
144
73
138
122
169
103
55
118
104
169
55
37
109
69
130
111
178
102
109
127
92
138
119
96
92
134
69
110
92
123
134
128
75
58
110
108
106
192
110
132
112
104
138
138
144
122
105
105
126
92
131
132
135
110
56
128
168
105
114
127
152
93
74
124
134
140
79
105
67
58
138
165
37
120
37
55
98
69
100
152
126
127
104
56
122
92
132
89
109
67
138
93
104
119
122
92
76
138
152
122
126
168
144
134
67
69
77
123
92
77
98
161
122
104
110
78
140
58
55
119
58
110
55
74
93
171
99
110
67
55
105
126
126
124
158
109
122
126
58
107
55
79
92
56
93
92
106
125
127
91
75
139
146
92
69
139
105
158
139
131
126
163
119
99
58
97
67
144
67
73
110
130
131
122
77
106
152
56
105
92
105
55
146
67
105
119
41
92
55
110
128
67
92
69
92
73
139
95
56
98
110
92
68
104
99
127
178
165
93
135
163
152
55
111
119
110
92
55
104
122
105
144
107
144
107
110
74
140
110
121
119
137
37
178
148
58
132
109
101
105
117
67
55
142
98
126
110
152
77
86
55
122
126
178
55
105
69
152
126
58
105
104
67
69
105
92
152
37
126
130
131
118
107
127
97
107
128
123
134
110
126
92
180
152
158
67
67
124
107
126
55
103
144
104
69
140
75
55
126
93
86
92
169
144
178
105
136
139
140
128
110
138
89
122
118
92
127
169
58
126
120
91
104
126
118
110
111
55
110
123
56
84
126
110
169
139
55
112
103
97
129
110
131
126
56
122
106
99
105
92
122
92
140
105
56
132
110
138
67
110
92
144
139
37
138
126
143
58
99
92
55
74
104
128
104
111
67
55
126
146
119
114
67
84
128
37
134
147
107
104
118
67
152
123
119
98
93
114
140
109
126
138
108
128
55
93
92
69
123
104
56
104
92
79
56
132
101
126
56
110
136
100
37
55
109
120
138
93
144
110
138
171
109
122
92
144
127
99
111
144
167
97
88
105
139
110
92
139
122
165
128
119
107
56
126
109
110
83
104
92
92
112
146
103
178
69
107
55
79
138
55
55
90
103
134
122
99
106
110
92
126
92
103
55
127
128
110
58
58
92
79
122
178
138
107
124
55
109
119
144
122
105
37
148
152
111
92
58
110
102
55
141
110
111
178
123
111
137
106
110
111
108
116
69
122
56
142
138
122
139
56
78
88
92
126
95
138
146
110
138
151
127
105
119
122
169
92
92
178
107
92
139
84
178
129
135
105
105
117
110
109
122
127
192
68
56
110
110
74
135
104
55
74
107
122
55
69
58
119
128
92
89
144
101
104
105
103
136
138
110
74
126
55
79
102
107
55
56
142
147
139
121
127
142
128
130
105
122
142
110
84
58
107
149
55
103
91
122
122
137
138
140
138
128
109
112
86
141
178
92
146
128
96
79
79
99
149
79
122
97
106
100
103
83
109
126
55
105
122
56
84
74
119
55
129
92
163
100
37
56
67
92
158
92
100
126
105
56
68
81
56
107
92
69
104
138
79
122
81
110
139
105
77
104
67
84
111
92
105
168
124
97
91
149
103
119
55
110
130
86
123
123
105
143
139
110
75
138
110
126
109
67
104
75
67
109
106
144
105
86
100
138
101
109
122
126
86
92
67
106
107
158
67
130
126
146
180
94
119
92
67
119
110
68
134
169
56
58
152
127
138
92
144
105
123
105
55
122
93
99
152
114
86
122
84
146
67
92
101
123
152
128
104
138
105
152
122
69
110
110
105
126
77
102
55
55
138
98
122
105
37
56
56
104
126
178
93
109
109
169
152
107
88
79
118
119
79
86
81
105
105
129
55
67
122
138
107
105
37
105
58
164
128
101
138
122
104
110
92
93
80
99
92
95
69
103
122
56
92
101
111
92
91
103
139
58
131
79
146
165
130
114
126
91
144
37
169
92
92
132
100
109
112
100
127
119
119
55
127
74
168
126
122
91
150
121
101
78
67
56
98
126
105
129
92
158
146
144
169
110
138
127
110
95
75
152
104
119
134
134
163
138
146
104
142
55
126
92
86
120
37
95
58
124
138
128
127
169
119
92
189
169
138
128
110
152
37
102
137
158
103
115
58
127
37
105
134
55
109
94
55
136
171
92
152
79
84
105
138
99
110
91
56
132
69
77
67
130
58
69
86
140
93
55
105
83
55
86
103
126
55
103
146
152
178
122
127
119
117
77
74
89
124
111
56
37
119
92
91
79
79
144
171
110
171
92
122
110
146
81
126
126
92
77
105
74
105
122
105
104
144
127
92
123
122
55
93
144
119
123
104
167
139
86
138
107
107
138
93
139
103
169
77
138
126
86
146
138
144
102
162
152
92
100
138
93
146
112
171
122
122
122
127
58
92
169
171
126
127
91
74
86
138
58
37
58
93
146
99
109
126
104
144
169
92
79
105
92
127
122
123
68
144
138
79
86
178
122
55
126
122
121
67
56
88
79
142
118
55
79
123
136
139
124
124
92
146
110
78
122
138
138
152
55
68
138
145
110
110
105
55
108
37
79
178
110
138
110
67
178
137
92
145
110
75
103
55
69
100
37
92
97
126
74
55
145
122
118
122
56
107
93
104
148
122
74
144
104
110
67
98
165
132
138
67
138
110
123
126
107
99
75
75
158
79
102
131
144
123
123
89
122
55
127
124
178
56
126
104
93
171
105
105
112
104
95
134
126
37
118
55
102
122
92
55
99
126
98
69
102
110
119
104
129
74
91
37
110
111
119
111
146
130
134
123
138
55
138
199
102
56
178
89
123
139
138
79
123
111
139
55
95
84
107
142
68
105
83
110
97
138
58
92
91
139
138
144
152
58
126
146
171
114
139
55
107
68
100
129
138
122
56
58
55
126
112
75
132
105
93
69
112
73
55
122
123
120
165
94
92
127
126
169
146
67
102
101
91
110
74
144
152
92
189
110
107
146
92
122
58
77
101
139
124
97
67
122
67
79
146
110
128
112
137
94
123
132
162
110
84
144
67
124
93
55
93
169
105
86
123
122
102
67
126
101
122
124
105
139
98
144
114
127
105
67
105
56
104
92
84
130
104
138
127
95
67
122
110
104
126
119
107
67
123
124
67
79
55
56
171
110
134
55
171
56
92
138
146
56
92
127
37
139
171
67
110
79
135
55
74
55
144
138
164
112
119
92
93
110
80
178
110
126
125
110
92
75
114
92
139
148
124
69
148
67
138
110
55
110
136
144
178
110
55
69
144
145
127
92
67
92
144
76
92
105
105
69
119
37
141
72
69
136
92
123
79
103
110
126
55
79
145
79
158
122
93
144
127
68
92
178
152
89
110
128
91
131
55
107
92
134
146
152
93
110
169
158
103
180
144
163
122
146
105
100
110
122
178
95
138
92
138
55
56
92
102
169
140
123
92
67
92
100
67
69
55
152
37
110
73
178
92
138
92
74
109
91
104
84
163
126
67
123
55
122
110
130
67
105
37
168
86
146
75
144
111
105
148
92
105
132
84
126
37
110
91
101
122
128
109
56
138
79
119
146
139
138
55
105
126
58
180
99
104
81
92
107
139
110
58
131
163
104
110
134
138
146
144
110
123
138
55
127
108
83
152
55
58
130
106
105
111
148
126
126
86
123
119
92
178
56
93
69
105
119
126
55
56
122
92
37
75
126
89
99
100
158
92
122
118
180
91
93
91
148
79
74
152
137
121
165
131
101
152
109
92
104
127
55
118
92
124
92
55
109
111
122
122
123
77
110
110
55
140
110
142
105
92
92
67
107
92
178
92
91
127
55
134
95
163
124
106
99
69
37
105
99
152
126
152
162
122
55
107
67
119
171
86
68
139
117
103
171
58
158
80
139
121
158
55
55
123
91
75
111
163
67
119
139
112
37
92
91
122
113
93
77
152
67
122
69
93
127
98
67
128
109
56
68
169
37
110
169
105
56
92
86
67
81
89
124
101
74
122
55
67
122
79
105
79
131
84
92
119
104
56
67
110
162
92
93
98
101
130
127
139
111
126
162
105
107
67
104
92
110
55
134
86
69
146
92
107
124
92
111
129
134
121
55
127
111
80
110
92
122
126
102
99
105
69
117
148
102
146
126
135
150
139
122
37
100
152
146
74
138
149
110
148
119
178
111
105
92
74
79
105
58
103
37
144
55
144
37
86
108
74
128
93
105
67
92
99
110
137
104
99
117
122
93
126
144
67
138
92
152
86
138
105
55
92
104
104
104
128
69
105
105
84
164
139
104
132
37
109
101
108
108
108
55
124
122
112
169
180
128
55
178
92
134
138
111
105
122
152
138
131
37
98
56
67
74
92
119
58
132
97
37
105
93
125
144
119
126
84
56
55
159
55
98
68
146
178
134
110
98
146
178
146
167
93
112
127
37
158
138
152
56
105
111
67
165
128
105
128
158
162
178
178
178
105
92
111
169
69
104
109
126
138
37
122
138
83
126
128
144
78
119
67
134
83
56
164
119
152
69
126
92
92
77
69
126
123
67
104
110
68
67
127
92
140
105
126
140
122
109
75
68
103
125
146
162
112
81
87
127
69
138
124
122
92
134
119
75
87
56
126
122
58
109
104
126
55
123
117
103
138
79
111
126
144
136
136
122
110
92
74
99
91
79
122
104
88
56
83
180
139
68
111
104
162
134
160
119
138
37
107
149
69
163
109
111
119
75
77
134
72
56
138
104
58
67
69
83
109
74
136
92
128
67
110
138
91
124
91
105
144
146
67
110
134
92
156
95
67
77
83
77
92
37
58
110
138
144
171
128
91
122
146
123
136
105
152
162
121
139
129
123
92
169
130
92
124
114
67
92
105
126
67
139
126
122
131
128
116
110
146
126
123
126
99
178
105
134
77
135
145
131
110
126
138
58
138
105
110
122
148
169
104
178
104
55
171
91
141
105
138
67
84
75
126
104
104
95
141
92
141
123
93
92
110
75
122
67
92
107
106
139
79
158
169
120
126
74
123
105
55
107
119
139
58
91
160
93
123
104
101
138
152
163
110
55
128
134
104
148
67
107
105
37
122
144
86
103
138
83
122
95
146
126
126
107
163
131
91
91
148
105
104
55
139
67
56
152
74
128
122
128
146
92
178
131
93
146
56
138
67
67
110
92
138
93
69
126
69
100
100
86
163
93
134
93
95
92
105
69
67
58
106
67
127
134
134
138
123
81
129
99
144
83
37
105
69
98
55
141
67
145
105
105
92
55
104
91
111
171
126
97
111
99
148
93
163
138
139
37
37
119
126
37
77
37
105
127
58
92
104
55
139
105
127
67
139
146
146
178
135
122
37
152
58
144
86
78
126
106
67
122
103
165
130
122
92
86
124
134
55
93
119
110
110
126
76
105
139
152
104
139
58
110
55
92
67
74
128
69
95
114
117
93
105
67
92
112
79
104
93
126
126
55
56
55
105
92
79
105
110
88
99
104
111
109
99
122
56
137
138
37
134
93
107
105
135
138
91
107
105
92
103
87
178
111
87
171
138
77
58
58
55
86
152
138
188
180
132
127
77
110
103
107
79
83
122
128
123
80
103
58
149
74
132
131
69
93
105
86
67
128
110
135
130
126
97
110
92
61
146
126
95
86
112
92
55
105
69
109
127
93
144
138
92
55
136
131
178
117
169
138
92
55
92
145
125
122
56
96
110
152
113
118
110
37
112
92
144
103
178
67
167
56
146
131
79
171
111
126
56
163
138
113
55
124
69
109
88
114
158
107
169
178
127
140
79
80
92
146
107
138
144
130
105
122
110
75
169
68
178
122
138
152
178
112
126
110
107
56
138
123
126
79
98
160
144
152
88
152
112
178
99
139
126
114
139
37
124
153
107
160
110
131
55
160
132
55
110
92
111
79
123
110
128
86
124
55
78
128
163
109
127
139
67
122
103
146
37
130
169
127
123
103
99
139
104
77
56
68
110
126
104
136
108
98
55
146
139
109
55
74
105
93
100
112
122
169
92
120
69
100
56
104
111
178
89
88
104
146
109
86
142
106
126
80
67
55
110
137
56
37
105
122
93
86
129
139
97
127
146
165
69
111
79
77
122
58
142
79
162
119
90
107
55
126
75
105
146
140
146
75
105
55
146
115
93
139
132
115
109
105
152
136
58
122
86
138
169
87
76
105
91
127
55
121
84
127
138
75
178
134
69
139
138
105
37
79
86
142
128
68
92
80
84
56
117
104
105
75
158
123
91
136
69
37
131
128
105
92
122
115
122
92
104
74
105
119
92
67
188
58
148
124
55
86
144
77
92
37
37
140
75
100
140
92
88
58
106
132
152
92
55
107
89
56
138
146
171
102
86
178
126
110
100
138
79
138
37
110
152
178
97
55
132
120
98
86
126
104
124
156
122
109
138
126
139
169
123
56
92
124
55
67
122
139
130
93
126
180
152
69
123
55
107
92
138
163
151
84
97
138
158
105
75
142
55
138
69
74
68
134
93
128
75
136
111
99
95
132
110
99
92
106
37
110
99
182
91
86
114
122
141
140
55
110
92
55
106
122
92
67
178
123
114
131
122
146
122
91
94
74
138
92
86
111
98
109
130
110
144
110
67
105
58
138
105
146
95
79
135
81
92
104
134
92
79
77
124
126
162
119
91
93
95
78
127
55
104
37
72
115
92
122
132
86
67
128
131
104
122
128
92
55
146
144
86
111
58
126
122
169
128
67
55
89
132
37
140
104
102
122
93
110
130
37
126
117
124
126
119
105
105
110
144
56
105
91
135
68
171
123
88
148
75
126
93
126
119
136
168
152
148
55
127
169
99
92
105
55
92
58
122
110
74
84
79
122
55
126
86
92
55
55
110
122
124
139
99
138
144
105
131
74
79
130
110
140
146
120
37
114
145
122
124
92
91
103
86
119
178
127
158
105
105
123
74
119
138
122
37
69
137
56
98
141
55
68
110
171
139
122
56
123
148
99
152
103
109
146
56
92
122
79
93
110
163
134
106
55
68
105
55
80
109
56
93
140
69
86
146
127
134
127
144
99
119
58
135
122
55
67
98
126
93
104
110
58
110
167
104
141
103
103
93
107
144
79
128
79
96
104
67
105
152
56
67
132
91
68
141
122
139
111
93
98
119
178
109
99
163
86
79
92
105
126
139
56
122
105
83
119
92
144
69
105
152
55
178
67
111
110
92
55
83
56
103
104
104
128
104
75
134
69
92
139
146
178
84
55
92
136
110
178
104
122
37
123
37
79
168
146
122
134
67
141
83
56
106
144
126
128
128
92
55
105
110
55
77
144
77
126
55
98
56
134
158
37
123
67
169
105
56
144
110
105
126
105
77
136
120
37
69
138
37
122
123
55
102
128
79
130
122
130
69
132
77
75
37
144
110
169
169
58
103
128
140
119
93
102
138
68
104
104
110
130
114
139
96
134
119
180
118
139
110
104
92
110
122
104
83
139
138
130
180
110
92
79
146
122
178
132
93
127
92
92
131
111
92
58
105
110
92
103
92
139
103
92
134
99
86
56
171
111
119
56
124
126
123
120
55
55
119
55
83
92
146
92
138
178
139
86
110
119
144
99
126
77
131
126
91
140
127
119
140
120
122
92
75
103
158
178
92
55
81
127
138
104
126
122
128
140
138
138
127
137
110
86
132
37
108
83
111
139
105
56
101
130
55
97
122
110
126
75
92
55
146
171
91
118
37
115
118
89
126
144
105
127
97
92
86
71
122
113
152
83
158
122
152
110
79
67
122
92
92
56
74
104
128
131
92
121
126
104
169
67
93
145
91
104
55
126
144
56
122
178
181
138
122
178
37
55
92
128
120
138
105
131
128
180
130
69
56
104
81
169
69
99
55
105
126
124
111
93
86
58
93
86
94
103
92
67
146
122
109
124
55
55
148
92
92
104
138
119
126
92
81
118
111
37
92
110
134
121
139
92
178
144
146
167
111
131
122
178
68
129
107
55
122
138
165
134
134
109
146
84
199
74
144
138
37
104
110
138
127
104
178
92
139
93
86
91
138
152
107
92
110
103
69
55
109
140
111
55
162
99
127
169
93
56
107
123
37
146
69
178
95
148
92
105
77
138
141
103
146
55
37
69
162
91
110
69
102
92
109
93
144
122
128
37
91
120
104
55
74
122
92
134
37
92
126
92
120
122
123
92
124
136
110
55
86
67
93
123
37
123
122
105
79
109
69
73
83
92
106
92
135
110
55
103
92
117
134
114
55
122
67
152
95
69
138
107
75
92
79
138
103
92
138
110
138
92
96
178
111
86
126
117
111
189
126
97
105
126
129
147
79
55
144
92
67
181
134
144
178
79
126
104
128
134
91
55
107
37
124
138
99
125
92
104
156
139
79
110
55
92
132
106
122
127
146
69
105
104
67
74
74
55
58
97
69
67
67
104
92
92
97
149
37
92
86
151
122
92
163
134
69
98
86
148
122
109
69
93
81
58
130
77
126
107
77
122
97
67
91
93
83
86
92
93
56
55
152
68
69
105
55
165
136
138
107
92
152
111
124
77
140
104
37
92
58
144
105
103
37
122
104
126
110
79
120
93
95
74
67
144
104
93
93
91
171
146
105
55
128
55
146
139
126
130
107
122
168
88
69
95
122
68
55
89
92
129
158
79
104
55
110
104
101
163
145
167
138
139
91
105
99
136
101
99
146
84
77
111
122
110
122
86
93
101
74
67
122
165
92
37
146
122
110
104
69
105
93
124
95
148
107
91
75
103
79
93
105
56
56
105
37
86
92
99
79
92
98
127
92
158
79
139
126
69
127
58
68
138
139
67
69
126
122
110
104
110
67
79
91
104
104
110
104
146
152
128
126
56
112
56
77
163
92
93
140
92
92
130
138
137
56
79
91
152
105
75
127
138
104
127
131
104
92
122
139
110
67
126
117
87
86
128
95
122
55
144
102
65
144
122
159
123
55
122
104
111
91
139
107
97
75
110
122
103
85
61
144
93
69
102
92
92
158
88
104
122
128
152
110
97
105
56
144
126
146
119
167
93
75
93
127
103
118
101
86
96
114
119
92
37
178
145
92
67
92
92
116
77
130
139
37
105
56
112
78
148
79
69
112
129
67
67
99
110
144
131
93
109
55
122
127
178
122
120
122
107
102
146
178
126
105
55
86
109
126
58
118
101
84
104
56
114
138
93
67
127
104
93
58
169
126
122
138
92
126
138
127
136
128
92
79
105
130
106
122
58
178
124
122
79
139
58
77
119
164
100
137
169
104
71
55
122
109
131
148
105
92
139
122
110
127
178
119
55
144
74
88
131
55
37
104
99
138
107
131
105
56
126
67
126
104
138
69
37
55
91
128
137
127
119
120
124
67
97
75
101
69
86
55
122
103
74
55
86
128
197
89
130
55
104
122
99
86
110
93
67
152
146
55
167
84
102
104
69
99
74
146
123
92
105
126
91
106
92
123
122
78
56
122
128
37
123
88
122
139
122
131
56
99
55
55
158
105
93
152
128
162
56
111
111
120
93
104
122
94
67
115
119
75
104
126
58
79
83
58
122
69
58
145
67
55
55
105
103
91
124
139
146
55
67
86
107
178
126
131
56
122
106
109
137
152
86
164
124
111
139
110
119
178
144
146
136
110
99
92
105
92
110
138
125
110
104
127
105
79
91
93
69
149
79
105
132
92
122
79
97
83
144
126
113
139
97
107
122
92
126
75
93
98
114
119
130
128
169
111
55
55
149
138
123
74
114
122
56
110
77
98
67
107
103
146
55
150
165
74
152
130
137
119
93
92
156
69
126
145
149
106
146
69
67
100
146
138
97
55
79
56
109
75
115
87
67
83
105
56
132
67
115
86
55
97
123
123
152
104
91
56
104
92
110
132
95
79
58
105
105
119
152
69
182
93
56
92
100
122
117
143
110
138
93
110
92
152
160
37
105
55
112
138
122
79
146
141
127
58
55
80
138
109
74
111
67
144
127
110
146
105
103
55
37
145
119
146
89
140
91
109
110
69
104
127
88
78
98
101
107
104
92
91
110
123
127
127
105
67
56
55
55
102
144
138
139
178
104
126
97
104
101
126
127
67
122
92
134
79
86
98
101
104
55
83
152
69
92
122
139
126
146
105
169
83
106
132
69
37
99
56
117
178
83
160
119
168
94
126
55
111
139
75
75
56
55
134
114
92
119
115
147
139
107
110
107
77
37
92
69
69
75
109
93
107
139
138
138
56
148
92
152
77
92
97
127
92
152
151
67
122
69
105
92
122
105
147
122
109
79
67
107
148
152
56
152
143
86
131
139
92
37
145
58
111
109
126
138
105
99
163
110
103
118
127
128
58
92
104
111
163
128
55
148
144
93
104
84
110
92
93
105
92
122
91
110
164
83
138
55
110
105
105
152
99
135
91
110
139
152
75
118
110
110
168
87
128
83
104
86
178
109
55
114
148
92
56
140
131
77
55
134
138
101
93
126
146
120
104
100
98
104
110
97
105
67
99
114
92
99
138
55
67
139
55
83
123
134
92
105
92
75
115
55
122
102
124
136
152
123
99
129
56
110
55
56
144
55
109
77
67
86
74
92
119
94
79
178
110
81
144
104
75
105
108
84
91
92
107
112
112
104
152
105
136
55
86
68
148
104
55
92
92
144
110
92
123
92
103
92
67
75
122
128
93
106
106
178
110
56
129
126
131
122
130
107
168
122
97
128
55
55
118
140
58
146
107
104
92
126
123
93
110
152
92
138
69
124
140
122
74
67
58
160
138
111
144
110
122
168
127
126
139
122
152
56
101
110
199
37
55
109
119
55
92
67
129
105
84
152
114
127
126
135
105
158
139
100
138
110
92
134
140
102
178
55
75
146
110
56
107
127
126
107
75
56
58
56
79
122
159
169
122
152
79
178
83
180
138
110
98
123
157
67
178
105
102
135
105
110
135
120
84
126
138
178
110
169
79
126
74
85
83
86
122
104
67
92
74
123
56
128
68
110
37
105
105
101
69
128
56
169
55
128
126
88
92
126
86
92
105
55
139
99
72
104
126
86
117
103
41
105
92
126
105
105
144
158
92
119
105
151
158
56
146
148
77
119
110
107
55
158
92
84
67
105
93
122
123
162
56
67
92
119
110
74
110
72
111
92
127
138
79
91
138
117
146
127
123
69
178
56
122
92
111
139
142
92
55
144
138
119
68
178
139
87
118
111
86
182
98
110
145
110
105
77
79
126
67
105
158
84
92
112
126
111
141
93
105
146
55
126
55
128
86
135
104
92
139
126
122
67
169
84
110
112
67
169
111
165
94
111
163
152
156
67
116
105
75
134
55
123
127
55
56
178
111
92
126
69
117
138
144
97
122
89
92
136
123
84
114
107
101
92
110
110
137
110
122
83
123
122
67
102
97
110
119
107
122
120
178
37
122
154
127
110
92
146
83
55
91
104
75
152
122
67
69
100
65
99
153
93
103
79
111
132
75
92
74
74
67
134
67
138
103
112
119
92
81
74
146
122
124
112
56
127
56
145
138
104
171
56
144
92
134
79
126
79
103
178
67
152
104
148
112
110
178
110
109
144
119
104
137
91
77
75
111
104
126
126
55
146
93
105
136
97
139
92
120
124
105
152
139
67
105
105
134
146
104
92
123
138
152
144
55
93
140
144
55
134
77
91
92
92
126
139
112
104
120
122
91
138
55
78
91
119
105
110
178
86
132
37
74
119
139
37
148
152
139
55
77
77
102
124
109
69
67
112
109
163
141
91
103
158
111
144
134
69
107
139
169
128
111
58
110
77
128
67
144
119
163
144
92
67
106
169
144
131
124
68
58
120
119
67
93
127
83
104
110
78
110
145
122
86
109
82
110
107
122
171
105
55
122
110
178
93
79
92
139
125
139
110
122
119
126
105
58
122
37
92
92
122
110
58
67
138
56
99
132
145
110
107
37
77
99
122
105
98
138
56
104
99
105
138
104
139
126
144
114
146
171
103
93
69
79
122
110
128
135
92
67
92
69
95
55
122
104
144
152
91
86
169
156
99
92
128
93
57
76
77
93
152
169
97
92
142
97
105
144
126
139
131
122
99
169
122
104
107
74
55
122
122
110
122
106
138
122
56
109
77
139
123
55
67
88
139
98
160
105
139
110
110
130
92
81
99
55
178
112
55
122
141
106
92
123
93
109
126
112
138
138
58
84
97
88
126
122
139
104
146
61
80
138
55
105
91
140
110
67
122
55
74
137
55
178
138
157
124
110
128
67
55
122
105
89
92
165
58
92
74
110
92
105
105
138
110
178
123
67
122
93
104
148
56
104
171
83
138
92
77
153
145
37
75
146
110
37
169
79
140
92
92
109
152
138
103
144
178
109
110
144
128
77
178
93
131
67
171
91
37
121
117
138
119
83
138
100
127
107
132
122
149
100
105
100
110
58
158
114
55
104
85
91
67
144
135
92
67
69
104
126
125
79
55
178
74
126
103
55
145
91
37
74
37
93
105
89
126
139
55
152
84
105
112
122
134
126
192
77
126
99
99
56
56
188
199
107
107
55
89
104
146
86
163
131
137
93
123
109
144
130
92
110
140
110
109
105
138
137
112
126
117
57
138
89
105
131
105
117
152
114
119
56
171
144
73
149
144
110
105
111
86
122
58
111
136
171
126
163
67
105
138
75
146
74
77
146
125
55
120
138
86
67
93
92
56
111
105
165
126
92
92
55
80
117
126
37
138
55
111
37
163
151
105
178
152
105
69
137
146
74
93
118
164
137
92
55
139
151
99
134
56
55
118
138
105
83
126
55
77
92
100
188
100
127
138
91
58
84
69
92
149
99
95
152
92
83
105
79
84
55
55
67
110
67
146
126
93
103
147
77
110
169
136
110
55
55
95
126
135
68
74
180
126
74
91
119
107
139
67
55
37
104
127
144
69
67
123
140
92
92
178
105
138
104
78
148
171
115
144
91
55
110
148
112
37
122
137
67
127
92
150
122
92
144
178
134
154
109
135
124
138
77
122
159
105
81
55
152
91
139
37
92
99
178
92
67
81
110
86
103
67
122
122
110
180
149
178
92
105
111
92
138
105
106
100
104
148
144
150
110
37
110
37
58
101
97
165
126
92
126
92
58
129
152
93
109
128
110
93
92
122
69
138
56
145
102
92
103
72
55
113
103
56
93
132
144
162
135
119
178
128
83
103
106
105
56
120
75
104
67
91
178
110
138
69
72
79
55
56
98
188
55
111
93
178
146
110
86
144
89
37
83
79
103
67
110
68
134
115
107
119
122
101
138
92
91
146
100
126
55
140
122
93
105
110
86
111
102
105
104
37
126
99
110
83
134
122
169
140
126
97
178
93
122
138
140
126
55
99
120
122
144
152
128
79
138
105
55
122
136
55
86
55
92
122
124
107
152
171
123
93
123
139
144
119
83
69
103
122
55
112
110
92
126
122
68
163
127
126
132
178
110
163
92
92
122
128
99
110
92
124
97
110
139
123
89
92
105
126
135
104
67
83
111
120
105
123
127
110
88
99
56
123
119
126
105
56
134
67
100
179
105
56
119
87
104
124
110
92
110
126
126
122
99
146
84
105
105
92
119
146
168
37
103
111
92
37
126
77
79
131
55
92
74
104
165
105
152
138
55
134
55
119
110
111
92
138
124
68
127
92
67
122
67
79
126
138
127
58
126
114
79
114
83
55
105
122
142
98
146
126
105
105
167
75
68
83
122
126
122
108
105
111
102
108
126
169
110
56
146
138
101
69
126
98
178
109
122
144
110
92
163
92
138
104
121
112
109
86
95
138
110
152
74
67
67
109
123
92
103
146
139
134
150
165
92
93
86
55
56
80
146
113
111
110
77
126
130
171
37
148
93
56
114
110
105
122
94
180
56
110
74
55
122
132
141
67
105
146
126
123
178
74
97
75
86
100
56
105
74
138
80
160
128
110
55
152
99
105
148
126
67
106
124
122
111
58
110
144
100
118
97
91
103
69
137
86
56
163
92
118
93
105
69
158
91
99
106
95
111
124
79
140
69
119
98
152
132
106
104
86
69
122
79
122
99
143
105
79
37
55
110
107
111
152
75
144
106
106
56
89
110
146
188
92
126
101
55
69
127
92
92
139
105
55
68
132
92
110
77
125
178
164
146
83
112
77
123
122
67
55
104
126
67
144
109
77
67
69
125
109
178
122
64
79
67
110
138
86
126
106
122
92
169
93
55
146
158
74
92
148
122
131
147
69
147
104
134
92
105
124
92
123
64
144
138
91
126
169
105
92
105
97
146
122
67
91
55
169
37
37
169
139
74
93
137
126
158
92
110
73
89
141
122
104
128
93
136
84
134
58
91
112
138
134
126
119
122
140
126
119
86
140
56
160
89
140
79
160
138
55
67
75
81
87
144
58
55
104
92
86
138
122
136
127
74
169
139
199
144
108
123
152
137
138
89
134
93
101
55
126
171
178
126
83
138
56
102
136
105
92
178
117
138
100
144
138
79
128
169
56
104
120
92
71
41
92
108
86
123
93
164
123
152
89
111
93
126
138
139
110
126
83
127
168
91
105
126
152
55
69
37
108
126
94
55
37
67
120
132
93
138
58
58
110
178
106
138
110
136
152
75
122
118
105
105
152
68
55
122
105
134
58
110
37
37
58
128
171
74
98
105
110
67
100
107
163
130
105
111
135
136
122
79
127
126
117
138
93
110
122
92
100
118
124
56
146
105
104
92
55
140
92
158
130
152
116
69
93
171
93
110
92
99
178
178
122
104
89
119
122
110
104
124
123
83
126
97
55
86
55
109
140
92
118
152
92
55
92
136
56
145
110
126
138
72
108
109
91
147
124
123
37
92
92
58
105
126
100
121
107
111
93
140
109
105
111
110
138
136
134
110
101
105
152
75
89
144
126
56
145
74
103
100
119
67
58
134
89
86
91
122
79
122
111
111
105
117
144
120
139
158
95
83
126
37
56
58
162
130
144
37
123
58
37
67
105
140
124
105
168
123
103
77
122
69
105
76
105
122
138
112
103
101
55
163
97
92
72
148
125
88
126
55
122
120
152
126
58
77
92
128
74
104
58
109
89
110
144
37
93
58
86
99
37
103
122
164
37
117
104
100
55
55
107
79
75
110
56
114
119
112
120
106
91
55
55
55
56
92
115
130
131
93
97
80
131
80
122
105
79
126
152
94
92
86
84
77
92
104
92
74
77
110
104
79
110
56
86
178
106
74
140
122
178
126
126
58
67
105
67
97
105
178
108
56
69
65
95
55
103
123
92
95
69
137
146
106
67
127
92
110
126
178
138
79
138
89
103
111
105
122
92
67
127
83
119
119
93
55
109
83
93
93
110
107
111
55
107
92
92
120
178
163
79
107
141
84
104
56
112
37
122
107
103
113
110
67
142
168
132
86
83
140
169
104
84
104
77
178
119
69
158
91
145
126
123
141
120
55
67
92
137
126
55
130
148
37
84
119
110
86
180
105
58
158
103
162
165
117
104
127
93
92
114
55
92
139
122
104
127
92
127
122
131
67
91
92
77
99
140
164
92
152
126
37
92
107
92
58
37
93
84
93
104
110
119
123
138
128
92
110
178
78
137
55
68
67
123
168
139
97
110
101
83
122
55
68
58
110
69
67
105
144
67
138
55
182
86
92
99
56
37
124
122
108
93
58
103
138
131
144
37
110
112
164
104
74
126
74
101
113
104
104
105
110
152
146
126
126
146
96
147
130
110
92
79
55
123
77
122
55
67
128
94
55
105
140
139
83
104
79
67
84
178
93
122
119
67
105
105
55
105
134
178
92
92
146
124
132
92
67
126
99
122
55
167
138
98
137
93
109
138
68
92
67
37
128
152
92
126
126
110
108
67
141
104
108
105
110
119
107
138
144
37
92
84
92
131
108
68
126
169
138
58
68
92
91
111
171
97
135
118
75
92
100
106
110
114
37
58
89
37
104
93
126
119
122
92
120
152
79
81
58
145
92
127
138
139
92
77
110
77
138
169
104
112
178
130
92
92
104
128
171
131
123
75
138
78
37
56
148
58
97
56
86
178
92
138
91
123
127
83
92
98
162
92
56
110
117
152
92
109
104
105
75
140
37
80
105
138
122
79
139
110
146
105
91
81
180
123
104
111
126
107
122
92
75
56
123
140
93
67
178
67
55
58
122
81
169
92
67
55
104
126
104
180
55
55
97
103
55
55
96
55
122
114
77
91
152
74
122
110
75
100
171
128
178
111
97
105
167
92
110
109
80
92
129
68
55
128
110
67
112
56
178
37
105
146
114
140
105
130
91
109
139
140
83
122
105
80
67
55
134
144
110
55
105
56
138
132
199
67
104
146
67
137
107
110
178
122
88
132
55
111
111
105
148
126
141
127
74
178
92
122
75
144
139
67
138
144
123
138
122
105
86
105
93
122
103
161
119
124
119
110
160
77
79
58
109
134
37
119
111
144
69
122
106
103
122
77
56
105
114
138
104
126
105
104
56
105
55
75
131
92
93
92
105
56
178
105
122
75
122
136
79
139
104
58
124
77
92
67
132
86
141
110
137
103
104
75
132
67
110
126
124
56
124
67
145
105
122
79
110
92
132
139
123
124
149
138
93
128
56
122
97
56
56
55
93
98
105
89
139
124
81
55
169
123
103
74
119
56
126
110
58
95
78
128
104
72
130
104
105
93
89
126
112
122
55
119
67
146
79
102
56
91
169
93
126
92
138
127
127
95
126
139
69
99
126
104
146
110
144
37
67
145
58
55
126
104
125
89
122
108
126
122
110
93
122
111
124
122
127
37
105
146
75
105
105
55
122
123
94
86
69
92
162
138
171
58
104
74
37
162
55
55
94
122
69
122
92
111
92
101
123
92
163
92
127
144
146
92
139
92
127
86
119
139
136
119
67
131
104
68
78
92
92
138
124
178
77
122
132
139
122
134
126
105
178
93
93
86
56
92
77
163
92
58
91
37
104
102
86
92
93
122
144
37
144
92
119
104
115
110
131
92
144
152
138
132
134
92
55
146
132
109
126
74
99
93
130
86
93
126
58
129
114
67
138
92
164
99
100
55
152
99
127
55
105
139
139
56
105
146
75
122
88
86
37
92
37
91
93
127
119
37
124
67
92
92
120
137
146
58
56
122
126
180
99
55
127
77
55
138
74
91
75
126
130
127
127
55
140
138
152
67
199
122
139
151
55
77
168
148
125
92
37
158
74
111
178
136
127
74
144
105
101
122
92
126
164
122
144
169
69
37
109
57
108
127
110
105
112
110
93
145
110
98
89
58
119
55
178
56
91
67
144
134
86
37
56
132
114
92
139
119
101
110
144
144
67
92
55
146
142
122
55
97
119
104
128
75
123
92
122
144
67
104
67
123
100
101
67
178
56
74
122
75
68
56
75
163
111
138
126
93
178
130
146
138
84
138
92
146
162
92
92
55
138
103
93
138
84
169
126
77
58
95
75
128
98
138
92
107
197
98
75
105
106
92
122
77
55
103
37
79
99
93
56
92
77
74
107
104
75
110
126
122
122
58
92
102
126
148
69
56
127
110
55
149
123
145
126
138
122
113
128
93
55
91
104
138
106
126
140
122
55
126
111
122
127
69
92
92
105
55
163
146
138
58
68
111
86
55
110
110
102
92
109
139
162
108
81
86
115
128
84
122
79
105
119
139
55
92
140
122
124
82
118
127
178
146
67
84
98
178
127
74
92
135
94
86
77
131
138
140
107
105
102
86
110
127
178
69
115
146
110
92
119
104
139
109
117
101
58
92
92
68
122
140
118
102
104
124
144
67
119
139
121
127
126
106
92
69
126
92
86
69
107
106
83
169
105
55
126
93
152
104
55
126
117
110
126
119
109
79
110
127
138
67
128
144
92
126
107
122
107
122
58
79
83
95
67
171
79
110
126
56
126
68
144
91
164
168
107
69
136
142
110
105
110
109
55
110
56
37
92
108
93
122
68
148
124
94
99
127
178
69
79
92
55
144
55
69
91
91
56
137
136
124
158
99
93
131
92
105
83
79
110
144
132
108
122
122
101
147
169
81
92
178
144
163
127
58
79
128
145
138
178
110
99
105
110
169
138
104
105
107
67
110
67
103
120
120
126
105
107
55
169
127
92
104
144
110
100
105
69
119
102
102
101
109
136
55
56
112
110
55
178
37
92
144
122
122
99
79
127
103
127
122
110
92
178
88
114
122
164
93
79
110
56
37
119
67
138
122
105
92
126
86
128
55
105
56
110
69
58
167
79
101
105
122
92
67
37
127
144
67
58
67
67
126
116
138
88
97
138
160
128
124
178
92
130
102
105
119
140
87
55
146
67
102
105
109
110
146
128
55
122
152
119
130
80
103
158
92
77
168
122
55
86
122
122
79
171
122
152
127
92
109
110
101
146
91
100
144
91
122
107
138
58
111
55
126
94
99
105
146
110
169
55
169
110
156
93
104
127
89
124
119
127
122
88
84
103
92
83
110
141
109
142
128
55
138
178
98
147
149
134
105
105
112
77
126
89
101
126
92
105
188
139
104
105
97
96
92
148
128
105
152
140
107
69
107
122
134
123
91
152
92
139
37
171
93
56
77
178
130
136
92
92
122
105
92
86
104
93
169
97
103
58
152
56
152
122
126
55
152
92
119
98
86
92
169
110
55
83
104
67
128
67
115
92
126
67
110
138
92
122
55
126
120
55
139
91
139
92
119
112
79
139
140
78
89
95
92
134
55
104
178
55
118
93
106
122
86
75
93
92
119
86
88
110
164
104
111
93
105
138
55
144
178
95
107
134
178
105
58
140
107
146
104
55
110
135
126
105
79
92
104
88
146
119
147
122
114
98
56
144
105
132
104
92
99
116
100
128
180
58
145
123
92
93
58
138
119
146
105
74
122
126
123
69
95
92
120
144
122
89
75
93
55
58
138
122
56
126
140
92
119
55
55
112
69
163
140
92
146
122
122
171
58
37
142
92
67
93
130
105
88
91
77
134
105
128
56
128
68
104
69
139
86
55
152
113
105
110
144
121
81
101
122
115
167
75
165
160
58
152
92
178
119
168
92
76
138
100
74
122
110
97
86
100
111
81
147
126
56
99
109
81
95
104
138
151
109
122
131
178
146
92
134
119
171
99
165
67
105
37
37
77
126
114
136
105
109
145
58
79
105
81
67
138
74
86
128
106
93
178
146
92
109
55
124
120
122
110
67
137
99
134
92
69
99
114
56
107
112
129
110
58
152
146
138
110
125
58
56
115
105
131
93
69
88
92
88
67
168
96
118
119
138
149
37
132
68
67
122
105
67
107
126
55
55
146
126
103
105
104
55
97
140
92
77
105
91
134
104
67
110
104
37
139
69
139
55
67
119
122
72
58
151
89
67
84
106
144
105
169
134
92
127
77
55
58
107
58
75
146
168
99
107
122
92
105
127
178
77
142
56
132
123
86
102
128
122
55
55
152
104
58
146
97
109
122
55
99
126
127
147
140
93
87
105
105
100
92
86
92
180
75
138
79
91
56
110
99
37
122
92
58
130
110
93
104
132
144
85
140
67
127
114
109
91
103
69
105
152
84
67
92
67
58
127
55
114
169
109
107
110
110
123
152
178
96
105
111
55
67
98
168
56
114
74
114
55
138
122
107
126
83
104
109
125
126
128
105
178
75
104
112
128
126
102
67
105
134
92
99
110
119
92
92
105
55
93
178
138
127
67
55
123
135
92
93
127
92
104
67
126
87
93
107
92
144
122
178
101
126
168
105
103
68
119
122
145
91
138
131
77
105
37
61
75
128
171
145
79
122
105
97
79
76
97
86
127
132
104
110
128
178
92
101
178
178
162
130
122
156
122
127
75
56
108
119
110
126
55
100
138
138
58
77
119
55
169
138
92
79
123
140
144
56
104
168
126
114
79
146
138
67
127
122
138
67
178
37
149
109
86
165
146
55
128
75
131
122
136
152
134
55
127
55
111
144
84
111
126
81
140
147
169
138
97
145
158
126
128
132
92
146
89
56
138
117
99
110
37
92
169
68
144
92
104
178
111
121
122
148
126
97
139
119
109
55
110
95
139
163
93
79
126
92
122
103
55
67
55
128
92
139
110
56
56
110
107
104
58
55
126
92
119
117
56
127
146
104
91
74
103
58
126
92
163
120
86
138
126
69
140
123
104
144
124
91
55
104
92
132
146
111
56
134
109
92
122
93
107
139
92
99
37
75
126
138
119
134
97
37
124
105
83
138
138
77
110
132
122
152
37
37
74
162
79
134
110
139
126
113
144
112
91
128
104
93
77
109
144
126
128
104
128
152
55
152
74
92
118
67
138
122
122
119
100
56
55
122
37
94
138
101
104
79
128
110
97
163
120
128
105
130
37
104
110
126
139
56
139
93
86
139
58
93
88
56
148
106
107
97
104
152
56
138
93
104
93
69
126
55
127
126
111
144
75
101
151
132
104
55
139
56
110
75
101
67
140
79
55
111
125
55
128
93
146
58
58
67
144
110
91
146
167
86
122
67
93
67
148
123
162
151
86
55
144
79
132
122
112
137
92
37
55
55
56
91
152
74
107
178
180
123
128
130
128
95
167
83
104
93
92
37
158
67
178
146
132
123
125
92
138
169
178
110
56
110
105
95
104
105
125
122
180
84
91
113
162
126
171
152
110
93
130
69
122
119
101
158
126
37
67
92
107
110
69
107
134
55
146
128
139
93
138
37
122
77
93
93
126
56
58
138
111
92
37
146
92
160
111
124
83
107
104
128
75
146
128
110
127
75
163
58
126
140
86
92
55
140
109
136
102
55
55
126
86
128
55
122
103
120
137
105
108
122
111
104
93
92
126
84
148
139
99
99
163
105
86
83
132
69
105
110
136
55
105
89
104
110
138
150
93
122
144
138
169
97
134
110
109
152
158
55
126
119
68
127
139
105
138
110
146
105
144
106
92
92
119
104
104
107
168
111
55
115
67
105
92
55
99
138
92
105
109
37
105
92
149
111
120
67
137
126
92
83
106
128
92
138
146
144
152
79
104
137
138
128
77
91
124
124
100
130
145
92
86
58
122
92
113
139
114
99
58
55
109
86
148
110
84
110
178
92
67
110
55
124
92
37
105
110
92
105
129
122
122
103
86
92
110
103
144
58
138
112
86
146
112
152
104
104
67
84
79
101
86
93
127
93
178
67
105
89
110
55
55
67
152
75
137
138
99
69
134
111
137
110
105
132
156
99
92
129
105
106
145
83
144
100
58
122
111
129
125
119
93
138
118
56
146
55
118
110
140
140
99
99
55
167
79
126
92
118
55
165
115
84
126
92
140
123
58
109
122
105
55
104
124
67
91
92
37
104
83
107
55
67
83
92
180
92
76
138
103
119
67
126
105
107
93
55
92
58
127
139
122
97
139
110
120
75
58
77
91
104
108
105
55
106
69
178
55
105
83
148
105
120
84
122
112
98
152
126
92
147
92
139
124
180
67
101
111
80
77
134
55
139
122
114
92
109
37
55
74
122
91
144
139
138
56
144
55
152
128
80
92
110
95
100
105
126
55
97
132
101
56
169
91
162
107
119
92
126
55
105
106
180
126
93
110
84
151
124
92
92
79
146
92
122
110
148
110
111
37
92
92
105
152
135
80
138
110
37
75
138
171
37
152
104
55
123
169
93
104
126
56
152
55
56
107
139
69
109
126
123
105
137
126
139
55
111
128
122
105
132
55
110
144
88
55
79
91
74
162
122
67
144
79
55
83
67
139
79
128
103
119
120
92
99
79
128
105
56
55
101
37
126
110
152
103
114
169
179
92
56
122
69
171
37
68
138
153
110
129
69
86
178
79
56
171
75
104
140
138
93
92
144
127
124
56
123
108
139
126
92
92
112
144
119
91
146
131
37
92
124
126
106
58
97
110
92
138
92
92
110
122
111
79
158
146
158
92
122
138
134
138
91
88
86
127
93
158
144
55
126
92
93
171
107
69
110
122
92
86
67
55
150
138
102
188
169
55
126
122
144
74
67
126
126
135
110
67
56
115
88
99
139
138
55
56
56
178
58
104
92
140
111
125
67
104
128
123
111
92
37
126
110
137
94
118
140
111
92
105
92
97
104
134
55
104
55
37
55
69
109
55
144
98
130
69
126
74
138
92
122
123
74
126
158
138
56
148
55
146
79
127
138
104
144
105
110
138
117
114
105
86
111
78
101
112
68
131
138
110
102
110
139
126
111
131
128
105
78
138
126
152
145
56
92
162
152
140
146
56
86
69
88
69
139
92
129
122
92
79
92
105
104
92
105
144
86
169
139
55
101
109
94
109
102
55
129
136
139
55
56
139
136
56
109
97
37
110
102
110
128
67
86
86
93
92
69
58
92
171
104
55
109
126
127
92
115
55
92
67
83
126
136
126
130
119
67
110
107
79
80
69
138
67
55
92
169
67
91
119
152
67
109
127
158
109
178
105
110
104
55
67
55
104
91
128
56
144
37
152
56
68
138
149
37
128
92
99
138
146
56
92
105
74
74
140
92
55
64
152
139
110
142
92
140
122
162
122
93
37
109
101
67
55
169
123
144
67
58
55
92
132
72
146
111
92
91
95
130
158
148
122
92
123
123
127
105
171
132
140
86
92
123
92
58
92
56
93
99
37
146
75
107
92
55
105
103
56
151
93
124
64
127
130
113
74
104
171
110
67
79
74
158
97
67
92
97
91
69
138
134
144
37
138
110
93
105
109
126
140
138
68
55
144
144
104
91
107
55
122
105
93
92
79
169
138
129
169
135
92
77
126
58
105
93
104
160
107
74
86
86
122
89
132
178
105
92
124
109
55
106
86
92
110
138
55
138
110
114
110
125
95
107
105
98
55
132
55
122
103
98
92
119
92
114
139
134
75
55
124
104
110
80
67
105
145
178
37
68
144
122
144
160
55
74
128
145
56
110
105
92
91
97
178
147
83
56
138
93
93
69
104
163
110
110
128
123
112
37
144
107
110
149
105
93
104
37
37
58
128
105
112
114
111
92
122
58
93
110
93
132
105
122
86
146
110
75
138
131
122
55
157
104
110
86
128
126
102
127
58
104
178
56
84
56
110
122
139
92
67
156
105
65
139
83
127
146
119
55
146
58
138
92
112
100
112
152
75
67
124
110
110
106
91
114
162
127
55
122
105
104
146
123
55
127
92
99
74
56
105
69
122
126
134
139
146
93
178
104
181
93
150
92
67
123
75
163
105
56
55
92
148
152
93
37
127
55
109
199
138
106
122
55
55
55
86
126
146
92
56
122
55
101
37
122
163
99
178
93
37
89
168
56
112
98
55
56
109
178
55
105
67
126
138
92
126
93
92
104
102
122
146
100
67
56
100
138
93
106
171
93
67
139
77
130
92
105
56
126
55
37
69
86
113
134
97
128
37
79
126
122
55
103
55
104
56
163
93
100
55
128
124
67
75
55
74
122
111
99
99
93
98
105
55
93
74
122
163
138
110
120
92
91
146
77
111
92
142
131
178
122
58
92
105
111
102
139
110
92
92
110
118
67
110
109
138
169
119
55
86
122
55
104
105
93
91
138
122
105
56
134
92
75
122
74
91
86
104
99
169
105
110
104
139
160
105
138
110
104
144
138
152
110
123
91
55
138
124
138
92
138
138
69
92
105
158
122
56
152
91
178
100
146
92
110
127
67
104
110
67
37
165
132
134
162
135
69
197
116
123
67
178
58
77
122
92
67
103
92
92
98
127
58
77
93
126
139
67
134
105
127
139
56
127
127
75
56
126
55
93
78
77
117
79
74
86
37
58
123
110
92
96
123
92
92
56
178
132
37
122
146
55
148
130
56
86
110
105
154
56
69
92
139
123
110
37
138
58
107
115
68
101
171
111
101
55
58
146
165
178
100
93
118
84
74
91
124
152
86
80
104
55
127
93
104
93
111
137
104
67
55
55
105
110
110
56
110
85
87
131
110
126
73
146
134
124
67
77
111
67
56
145
74
37
130
103
77
55
163
67
171
55
122
102
126
58
107
86
93
138
104
56
75
109
138
126
103
145
96
92
152
119
105
139
67
126
104
122
104
56
127
109
105
123
127
132
122
110
55
104
126
126
74
102
119
105
37
107
105
126
146
128
106
109
77
103
105
106
110
105
103
114
178
89
67
105
146
55
84
56
98
92
123
152
139
119
104
163
104
75
152
120
130
126
107
93
79
139
69
92
103
92
91
95
124
56
149
55
37
58
92
199
105
111
102
146
110
56
105
93
146
122
110
119
67
105
139
131
119
79
127
163
93
86
114
93
105
138
94
127
115
105
83
126
99
92
138
92
83
55
89
104
119
55
179
165
146
152
110
178
93
126
118
105
110
74
105
125
110
104
128
105
146
137
110
146
68
110
67
86
124
138
126
131
110
127
169
74
122
119
37
106
138
144
138
110
146
104
119
37
96
67
126
95
37
69
83
126
74
110
118
131
114
147
67
55
168
134
55
110
67
107
115
130
55
55
138
86
119
144
69
134
99
152
126
113
122
156
104
92
77
129
104
110
56
91
89
126
122
131
69
93
128
126
93
130
84
87
169
104
139
56
137
93
122
139
139
112
114
67
92
122
152
79
122
58
122
152
55
55
92
168
110
138
37
171
75
134
129
58
75
109
103
37
104
55
178
103
106
110
139
188
92
67
93
139
126
86
126
79
55
171
128
122
55
105
69
56
102
117
103
138
178
104
92
152
139
113
79
69
122
101
92
146
111
167
180
64
126
55
55
146
92
91
86
67
152
37
138
55
144
110
105
86
105
122
104
37
126
67
55
112
124
105
67
78
93
178
67
117
178
77
122
100
92
126
169
69
69
138
126
178
127
105
138
79
67
144
56
92
58
126
105
92
180
138
104
55
67
165
105
144
92
169
110
103
56
139
139
92
158
67
55
105
178
114
105
94
137
56
144
109
144
55
125
110
123
126
92
64
93
126
92
140
125
119
125
56
105
152
109
93
55
78
127
139
127
105
94
92
89
123
139
83
92
139
77
86
79
138
37
99
142
93
169
124
109
158
55
109
126
58
91
122
67
87
110
58
104
67
126
56
111
119
110
134
126
79
111
92
122
93
134
86
96
127
122
75
55
92
126
37
120
92
75
109
125
67
146
93
126
152
178
55
138
110
122
92
37
126
138
142
58
119
127
122
91
163
163
152
55
102
109
109
110
111
92
105
55
67
93
160
178
103
92
104
107
97
110
127
92
56
92
92
69
55
146
126
74
126
88
144
136
105
111
144
122
119
104
58
131
67
158
156
93
122
139
105
55
126
100
127
69
146
98
178
107
58
86
37
94
91
109
92
75
77
58
117
152
119
122
69
114
104
77
122
104
105
86
69
113
139
58
84
74
126
182
83
156
75
92
92
154
105
124
91
138
169
178
101
92
67
129
128
97
55
92
58
92
67
104
105
152
119
58
69
169
58
74
134
117
58
103
142
77
114
55
67
94
108
109
91
111
67
148
92
56
188
168
105
56
84
80
92
110
37
140
105
128
55
144
110
83
138
86
122
122
68
91
55
135
69
126
123
158
178
108
124
146
97
122
114
138
109
110
110
124
117
79
37
108
127
140
134
128
119
127
58
127
177
122
111
122
126
56
56
119
88
130
125
141
55
138
105
123
168
140
55
132
105
56
139
92
79
169
92
95
110
169
109
126
110
110
122
180
69
55
136
112
97
144
55
126
110
67
112
123
92
83
105
105
138
99
138
55
110
56
138
93
97
104
56
79
124
119
55
128
55
77
138
92
93
55
83
92
93
77
79
92
55
139
55
131
92
158
86
178
110
139
55
123
119
110
122
99
105
105
89
113
126
93
135
126
118
126
127
144
127
110
119
101
67
128
110
83
163
108
55
119
128
69
122
72
101
95
75
67
118
119
92
55
58
123
104
126
92
58
138
119
140
99
77
127
83
111
135
129
139
58
74
55
169
134
110
122
83
129
56
55
110
86
92
100
144
103
130
126
92
136
67
126
75
158
86
92
107
150
122
162
110
107
95
67
127
135
92
104
110
86
110
97
58
128
103
68
139
94
127
56
122
111
92
69
55
92
55
139
152
111
88
122
109
84
137
118
71
126
127
178
132
56
139
77
37
132
126
138
91
142
103
138
122
122
74
134
118
110
86
128
55
150
132
127
135
104
101
118
126
110
77
37
125
104
149
37
123
105
104
75
171
139
119
138
92
81
140
114
93
139
123
146
92
180
56
134
104
168
109
134
77
89
197
126
129
168
148
127
105
58
92
92
110
56
138
158
146
67
135
122
75
56
84
127
109
104
99
92
69
69
131
74
110
93
75
169
134
105
128
122
107
122
55
87
67
105
138
92
56
92
122
122
92
105
118
77
79
91
92
55
123
117
92
122
67
91
114
122
93
56
144
56
146
146
117
132
109
123
104
107
119
130
67
92
92
122
110
84
55
131
109
89
144
144
126
178
138
99
111
37
112
91
163
148
147
55
110
138
37
131
104
56
135
139
152
110
169
58
129
168
83
103
144
142
104
110
135
110
56
110
98
86
128
105
145
55
104
119
112
92
139
102
87
126
104
92
134
37
169
99
86
55
105
93
107
110
56
140
178
169
180
92
139
111
72
113
137
92
146
83
74
91
147
178
93
152
84
111
58
138
56
100
122
104
144
37
84
118
92
81
159
93
93
69
92
169
134
137
67
138
126
131
55
126
122
104
67
126
55
37
124
110
58
152
119
104
138
37
126
120
105
126
110
112
126
92
110
56
127
140
105
148
95
105
105
126
93
79
122
110
137
122
91
92
168
69
68
152
75
105
110
158
86
109
178
168
104
126
55
126
37
178
144
93
126
69
142
55
138
165
103
56
105
144
179
67
80
158
93
67
139
139
69
122
136
132
144
178
160
55
79
114
79
136
178
55
55
99
122
93
128
92
97
55
91
103
92
146
55
138
109
126
110
126
92
122
158
138
171
134
122
93
55
124
139
110
91
74
55
122
110
86
152
75
105
105
105
117
89
178
81
58
110
104
93
78
120
122
137
55
140
144
55
119
104
122
138
163
92
58
109
92
107
128
55
92
144
124
127
134
55
93
115
69
168
110
105
131
67
92
55
122
128
138
100
110
122
105
67
93
119
126
152
110
56
86
178
122
84
55
169
83
134
127
169
111
67
120
92
157
67
92
68
119
140
55
83
126
131
74
152
99
77
55
111
178
106
88
93
108
86
139
67
112
128
169
126
124
103
106
55
126
105
152
144
126
123
107
37
83
105
93
111
105
126
55
109
134
79
92
122
169
74
93
105
122
131
144
127
81
178
139
152
163
105
163
152
126
56
117
146
126
163
80
56
72
127
112
75
140
104
92
144
127
119
144
92
122
134
178
86
122
75
104
112
74
58
130
95
92
92
67
126
75
113
110
55
126
103
127
92
79
67
93
105
126
69
93
126
127
127
104
55
109
171
103
112
107
171
79
139
95
122
55
58
106
137
104
92
56
111
103
110
67
122
91
127
144
58
58
81
162
83
127
77
56
111
105
99
58
119
92
106
55
110
93
55
137
146
104
67
126
138
136
145
110
93
162
120
79
55
55
56
145
68
169
56
55
101
92
55
138
178
123
77
126
55
77
122
67
37
103
99
93
99
178
67
109
107
91
55
180
93
103
137
55
105
128
110
126
114
127
178
152
55
55
67
126
111
178
98
171
127
152
92
37
110
92
120
155
148
55
93
110
126
127
84
93
122
127
69
139
67
69
169
55
67
109
122
126
152
126
92
110
114
110
111
138
163
75
126
58
140
128
79
189
92
92
105
131
141
92
74
83
102
67
117
92
99
58
77
127
144
130
112
91
55
128
139
101
86
91
122
138
138
128
75
92
134
126
119
67
117
123
37
152
37
123
105
92
160
110
69
37
178
178
124
146
106
144
152
37
93
37
105
126
139
55
178
67
92
148
69
92
83
144
108
79
168
58
104
152
91
92
144
92
93
126
56
92
169
92
107
158
126
127
110
132
135
92
67
58
163
139
93
92
126
109
146
110
165
56
122
92
68
122
138
147
132
92
67
109
128
139
134
92
56
139
105
88
92
58
105
69
122
146
99
67
127
69
112
74
92
109
105
67
122
121
160
138
92
67
105
171
162
92
134
124
94
37
160
144
139
165
55
126
138
134
135
119
107
99
123
92
91
122
149
55
119
124
169
99
67
127
122
128
110
127
140
104
83
92
110
122
126
109
101
92
107
93
122
146
103
110
110
92
124
74
79
95
122
93
69
119
169
139
92
79
138
114
121
144
139
139
92
109
154
68
119
80
122
126
56
120
37
105
110
105
56
127
79
126
93
86
92
86
110
140
92
67
55
136
74
37
74
128
145
99
37
144
122
144
114
110
138
138
93
93
56
160
92
91
87
110
79
128
119
126
92
104
167
97
148
55
110
137
119
106
88
77
128
83
140
92
93
68
139
99
67
74
105
127
55
55
97
123
134
110
104
67
55
92
86
138
171
77
110
67
55
105
112
126
146
99
122
75
93
79
138
86
105
91
148
149
55
55
93
138
105
92
92
119
169
55
86
99
139
122
105
146
117
109
144
146
139
119
126
119
104
37
55
119
107
58
110
122
117
69
114
167
178
92
178
93
146
69
119
169
178
92
138
109
110
138
56
178
93
95
136
135
123
103
146
83
110
83
103
37
92
92
55
126
86
122
126
81
105
152
79
169
79
122
79
171
139
91
55
93
127
138
67
160
58
74
136
126
142
79
103
146
56
139
111
92
139
134
79
92
110
95
107
75
140
55
92
55
79
115
105
125
103
152
109
69
105
77
126
138
128
131
139
93
110
83
92
37
106
110
67
58
126
37
69
58
139
92
105
122
104
138
144
126
92
127
164
152
99
111
92
178
104
103
69
144
67
101
56
69
140
146
109
134
58
37
110
140
171
74
110
92
127
109
118
130
122
56
146
79
93
127
122
141
101
111
122
124
86
131
55
110
95
122
117
140
104
108
103
169
92
126
105
92
178
94
105
55
109
128
77
135
137
81
86
144
111
126
167
67
111
55
178
178
122
69
75
37
100
105
97
104
55
147
92
104
105
103
37
138
122
92
107
152
122
77
126
69
129
110
110
37
69
122
83
55
152
114
58
178
135
139
123
144
87
99
127
109
111
122
125
110
110
37
119
110
37
55
92
108
124
92
158
37
118
55
178
92
158
122
123
91
178
168
55
110
119
109
126
56
121
114
144
123
178
92
138
110
128
91
127
110
110
104
55
86
134
120
122
67
178
92
55
107
104
110
99
56
148
131
138
92
99
91
103
178
109
58
171
146
123
117
110
122
134
121
133
69
152
79
58
79
109
67
91
142
111
126
105
123
124
128
156
126
69
142
58
110
144
111
55
122
128
119
178
127
110
158
111
56
93
37
92
69
163
102
77
126
126
139
130
65
37
135
68
105
110
138
92
151
67
93
107
110
138
74
152
105
132
162
108
128
152
123
105
79
58
69
111
138
109
110
55
92
106
74
105
124
68
103
37
55
58
122
92
55
199
118
55
169
127
128
92
128
146
152
171
123
105
138
56
79
119
128
92
147
109
55
55
92
95
91
105
86
92
111
109
69
67
111
171
126
119
86
152
106
99
140
105
86
152
67
139
110
138
92
152
95
179
67
146
152
99
124
77
110
149
68
128
58
56
77
99
127
126
67
56
79
80
180
104
91
110
58
92
127
83
107
168
114
98
56
107
136
106
105
56
123
92
110
138
136
110
79
178
109
107
83
95
128
37
56
126
110
67
103
104
83
139
103
92
124
96
93
93
67
104
84
111
182
160
148
105
105
37
37
139
93
103
106
128
55
163
75
78
58
71
55
178
120
134
126
131
92
110
92
115
114
110
171
138
138
109
122
110
111
138
101
92
104
152
132
80
112
55
127
119
123
119
109
138
77
69
92
139
93
126
103
103
104
126
67
99
178
55
37
152
93
56
178
131
146
56
55
55
118
89
148
132
138
93
152
92
112
138
55
77
138
140
126
92
88
128
77
123
111
105
115
88
104
144
142
122
122
95
99
109
67
92
110
123
99
92
178
122
104
55
95
138
78
55
55
162
122
110
112
55
126
58
110
126
138
145
110
55
86
89
149
107
139
149
126
114
126
92
91
169
109
146
128
122
146
105
138
122
77
55
92
96
123
37
112
74
127
105
55
138
109
123
111
91
91
171
95
123
105
37
78
110
138
95
171
76
124
79
95
139
139
180
180
107
136
124
138
101
105
110
122
92
92
69
86
139
96
163
67
89
110
126
37
69
105
78
61
93
178
126
171
92
58
74
111
56
127
124
108
103
110
138
145
74
146
74
126
119
123
114
79
84
92
105
123
109
93
119
104
67
140
104
122
122
108
104
138
92
55
139
74
56
139
105
56
164
67
110
56
55
110
104
67
97
123
80
163
56
127
97
105
140
56
69
55
92
119
55
110
103
112
69
76
139
87
137
93
99
92
138
56
138
75
171
105
110
93
92
55
104
37
67
122
100
138
56
126
100
146
124
122
119
122
111
178
135
137
92
126
56
105
136
87
181
131
67
103
102
68
152
104
128
92
136
126
108
137
127
93
108
75
107
122
132
95
105
123
148
135
92
122
144
127
91
150
79
55
67
83
68
74
92
69
126
104
77
122
75
103
139
134
123
140
137
110
128
169
104
120
146
140
74
122
105
102
92
128
55
144
97
114
55
104
101
105
126
37
68
74
128
122
163
103
119
109
110
122
104
107
105
102
154
86
136
139
110
120
110
134
136
105
107
79
97
127
75
95
178
110
100
138
110
104
67
83
58
92
68
146
37
152
140
120
92
180
112
55
138
110
86
37
104
99
128
110
171
55
130
178
102
134
79
168
126
123
91
105
84
92
127
67
180
55
104
110
122
86
140
165
169
126
146
123
104
67
178
79
69
142
58
88
140
123
146
122
125
92
111
107
107
37
97
197
107
37
55
109
107
69
139
55
144
75
91
83
91
171
89
127
138
84
58
128
69
75
178
110
126
92
67
140
131
58
75
120
79
93
55
55
126
92
123
99
92
92
86
138
107
110
105
91
103
72
100
105
69
76
119
146
98
58
169
163
146
134
80
167
122
119
99
147
141
105
134
91
110
126
139
131
110
100
92
134
69
148
144
92
105
84
144
146
98
67
55
77
122
92
104
105
109
79
122
147
67
122
142
126
110
79
110
37
138
110
67
146
55
118
67
104
111
92
104
92
178
56
134
77
105
105
97
58
141
97
79
74
105
93
104
122
122
110
92
93
89
152
110
109
152
55
69
126
146
58
127
77
126
111
56
144
37
178
122
74
179
122
123
164
115
93
138
141
58
126
120
86
134
122
67
104
110
98
107
96
98
138
131
92
138
58
105
55
101
93
138
88
79
158
58
68
92
79
93
79
94
55
93
122
77
94
122
93
136
162
93
139
126
79
137
91
67
55
92
103
67
75
125
104
55
163
106
55
110
178
74
134
110
110
100
105
84
127
126
56
131
138
109
138
126
105
126
97
140
105
138
122
55
127
168
68
92
152
92
79
126
115
103
94
162
91
118
109
109
122
68
144
92
162
92
101
110
178
128
92
99
87
109
144
180
67
111
105
138
37
137
138
106
93
139
103
77
69
55
111
104
55
37
145
105
74
142
146
101
110
169
97
111
178
55
118
124
92
55
126
122
105
136
110
92
37
126
67
104
178
99
86
101
92
122
178
77
122
126
86
55
80
92
37
105
107
98
139
152
105
168
55
126
56
144
110
104
79
132
105
68
83
93
127
58
37
136
127
144
169
122
78
95
86
105
139
138
105
56
145
103
137
107
92
104
121
123
119
92
126
86
162
126
105
86
152
97
58
125
58
144
109
160
104
127
152
105
129
146
132
56
150
99
167
99
134
104
104
55
105
139
122
79
122
146
142
94
105
146
69
139
140
128
92
122
117
107
91
58
58
117
126
37
158
55
104
92
67
114
150
74
134
138
126
92
79
138
134
105
92
149
127
130
138
127
58
161
162
68
92
124
110
107
126
93
152
178
92
126
69
121
178
55
138
105
69
104
138
110
142
109
180
69
55
110
86
37
37
79
105
104
162
127
55
127
122
138
119
126
139
138
37
92
105
126
105
152
110
122
95
126
91
126
160
55
74
92
123
93
134
55
89
139
171
127
92
74
138
96
127
92
127
89
126
146
92
68
86
93
152
122
67
122
94
146
126
152
37
55
97
122
58
55
55
74
100
55
110
111
122
110
68
118
107
138
92
55
178
140
158
144
134
99
79
93
122
93
110
123
104
144
67
56
126
93
126
128
55
109
103
119
55
146
93
103
99
149
122
67
89
132
131
98
110
111
144
95
127
123
67
126
111
156
83
67
92
149
93
107
56
58
123
169
92
127
56
104
67
92
114
67
131
58
56
56
147
55
111
105
86
105
55
37
169
100
104
111
55
93
122
158
178
146
122
99
37
171
180
92
92
127
122
67
105
144
37
140
141
109
131
86
92
56
37
178
94
148
110
152
128
125
103
55
164
146
126
98
122
105
58
127
93
144
127
103
93
178
67
92
92
92
84
119
105
158
138
126
67
122
79
144
92
128
58
109
67
138
119
92
93
83
55
152
139
131
55
138
130
169
67
177
79
86
131
178
96
74
171
99
75
58
107
144
105
138
127
91
180
71
92
118
115
122
110
138
104
124
105
126
152
126
103
122
77
126
67
55
93
95
131
55
95
125
122
99
126
119
127
152
105
81
178
55
123
107
94
110
127
56
128
92
132
134
69
79
99
123
128
107
101
122
92
95
110
142
91
145
140
167
138
58
58
55
110
146
102
56
105
67
120
145
146
137
169
86
124
110
55
139
92
67
105
105
77
67
112
37
122
99
156
79
152
75
89
126
67
122
93
107
180
122
67
91
131
105
126
110
92
58
103
92
91
122
55
146
180
92
110
122
122
104
131
105
83
58
110
169
127
67
67
128
37
169
119
92
74
104
56
111
92
160
93
37
103
151
138
138
94
79
171
110
56
126
79
67
37
144
140
99
55
109
105
152
58
111
110
146
110
127
138
152
81
134
105
55
138
122
118
142
144
123
92
105
56
55
67
134
128
178
118
77
171
122
134
139
55
110
138
92
152
67
142
158
138
92
55
56
122
145
58
92
105
124
97
93
79
55
122
126
126
93
93
67
158
117
127
144
163
69
138
87
148
55
92
97
127
106
112
168
128
126
110
92
127
104
108
86
75
103
98
67
55
75
67
92
37
99
111
146
56
122
55
138
129
92
73
92
110
79
105
109
56
130
98
126
133
88
124
128
152
103
109
128
92
77
86
68
105
55
58
119
95
119
92
91
79
122
92
92
56
131
55
98
92
119
138
119
67
122
92
104
37
84
109
146
67
104
149
55
109
171
126
86
138
181
178
126
92
122
92
37
102
128
119
74
84
88
103
58
124
138
144
116
131
145
72
58
149
147
168
188
92
138
140
154
67
92
105
67
69
111
56
138
92
93
122
144
103
110
138
126
122
138
98
138
37
104
69
110
156
109
139
140
130
92
124
102
99
169
105
152
77
92
80
118
92
122
55
37
122
119
93
111
139
67
92
67
93
55
105
178
92
104
37
92
92
55
69
105
136
122
122
55
110
67
103
144
144
55
134
92
91
92
111
178
105
104
75
101
74
55
119
105
127
37
128
91
178
79
122
126
139
169
37
127
171
110
119
97
138
124
126
55
123
98
147
119
101
162
162
55
141
113
55
122
178
92
37
139
111
126
93
123
127
144
126
37
93
92
105
168
119
164
92
105
180
74
93
111
104
158
101
67
79
91
119
102
58
110
144
56
128
72
122
146
105
126
89
86
69
128
58
56
132
105
67
104
55
122
126
93
131
104
106
67
109
178
126
119
111
55
171
122
91
56
92
126
131
55
139
144
144
86
77
105
67
126
145
92
69
58
144
169
105
108
74
92
158
124
178
67
165
110
109
146
152
168
55
110
69
110
91
79
110
126
67
55
104
67
119
144
115
37
67
137
138
67
123
92
137
67
37
127
92
104
110
112
109
127
123
126
77
151
127
122
74
152
111
119
37
105
95
55
64
92
130
92
139
140
128
105
130
92
152
144
91
126
139
146
93
86
55
122
122
128
101
127
97
78
122
92
105
124
83
99
122
123
93
75
109
138
140
55
56
58
139
75
92
37
178
104
178
148
139
55
122
67
92
124
98
58
171
100
92
114
122
105
122
104
105
56
67
139
87
55
37
106
105
105
130
105
99
92
92
55
138
110
69
122
110
74
146
197
152
37
126
92
112
127
103
144
128
128
111
127
69
86
158
55
91
104
167
140
146
115
126
86
92
122
110
75
105
111
122
110
127
138
109
134
135
138
104
58
75
114
92
110
110
67
139
110
127
117
74
97
139
94
55
104
152
126
141
93
138
111
138
139
110
75
114
126
75
55
98
122
67
58
58
110
144
122
92
84
130
138
55
139
169
105
123
110
91
178
93
153
92
67
160
86
83
56
73
122
111
86
55
37
138
37
171
86
126
79
102
93
149
118
122
81
67
125
56
55
123
139
93
37
92
104
178
126
169
55
56
110
106
141
152
153
67
75
144
144
113
180
145
67
178
103
122
127
56
102
92
97
168
118
92
69
77
126
86
105
83
162
146
69
55
67
132
99
119
128
122
118
169
119
148
93
110
93
127
110
104
138
100
122
120
97
119
110
124
126
110
105
124
67
97
110
111
122
146
126
134
92
163
107
128
105
107
139
139
92
167
169
113
140
55
122
139
110
101
77
136
100
144
96
104
86
126
128
105
37
119
105
126
55
92
135
100
138
110
164
56
145
131
91
79
124
140
119
123
126
93
131
178
99
104
91
162
92
139
103
90
122
104
109
152
79
91
55
104
67
58
91
92
122
119
123
37
146
102
93
105
92
55
92
122
152
119
141
55
111
180
169
126
55
105
171
119
103
37
137
56
80
104
135
122
126
102
78
128
102
86
92
178
105
105
67
123
89
67
93
180
58
56
58
107
74
74
126
55
68
106
99
97
56
111
104
92
55
144
56
105
169
92
171
110
126
55
55
104
92
140
123
119
130
99
171
130
56
92
117
169
55
69
123
122
55
127
126
56
152
152
112
93
67
67
104
109
102
69
134
58
146
55
126
119
86
148
103
105
104
134
67
128
127
88
56
56
113
75
126
55
69
130
109
140
93
83
103
74
92
91
93
122
58
55
93
111
138
105
171
58
93
103
122
92
122
122
135
119
146
122
86
68
111
144
104
103
93
152
127
171
128
149
97
119
111
178
67
144
162
140
74
138
146
160
55
147
122
105
92
55
56
86
92
123
152
111
108
67
79
93
92
122
119
94
92
92
146
79
37
131
126
146
69
104
93
69
122
129
92
67
149
148
79
126
92
55
130
122
139
55
58
55
104
56
93
105
128
86
144
104
135
75
119
88
148
37
86
119
178
119
168
134
178
92
126
56
91
56
84
105
95
91
88
148
55
126
55
99
160
108
158
122
107
140
105
130
55
55
131
138
84
138
128
152
55
109
134
180
124
58
111
103
105
104
107
123
74
127
102
67
122
124
69
138
122
134
37
112
93
122
56
92
104
139
77
110
97
92
128
116
69
123
122
119
126
112
144
104
58
37
77
111
68
55
105
138
178
58
122
127
123
122
67
56
92
110
114
92
92
37
164
162
127
138
152
55
117
148
124
127
139
104
122
97
152
126
134
69
146
119
110
92
119
140
128
58
110
55
138
99
138
129
126
67
91
67
67
126
145
111
119
136
139
152
144
69
55
168
100
127
104
126
103
122
74
92
107
132
58
138
74
146
132
104
86
79
146
97
128
119
55
130
105
55
37
92
123
134
127
127
180
92
88
104
140
110
104
55
116
109
158
152
126
110
99
139
141
137
91
126
104
92
152
58
163
104
37
126
37
158
122
144
58
79
131
58
104
126
93
146
110
77
105
127
126
92
92
79
91
171
37
119
101
117
37
110
126
146
126
124
69
92
93
138
58
67
103
152
92
139
55
55
74
105
139
119
105
126
126
77
86
103
134
86
169
139
128
132
139
138
92
89
110
122
37
105
91
77
92
92
104
169
77
105
67
74
92
178
105
93
93
103
108
139
126
138
138
126
55
167
119
107
110
146
127
56
110
163
105
117
111
111
92
144
103
138
130
55
145
122
123
127
128
110
122
110
110
105
118
162
105
107
138
93
115
167
142
79
160
124
137
55
56
110
55
69
126
105
107
126
150
105
67
128
146
134
123
78
118
104
146
68
91
165
138
148
152
105
92
56
97
67
178
67
75
107
109
75
56
126
120
67
122
132
138
92
140
97
178
144
112
67
67
124
122
163
105
92
119
88
101
139
107
123
104
110
127
126
132
111
126
163
148
58
138
139
101
119
91
139
146
86
56
138
67
86
138
55
126
67
91
119
144
127
130
144
162
55
55
55
114
145
144
67
105
122
139
104
126
55
92
111
98
98
77
91
55
77
86
124
86
55
58
105
37
87
126
107
111
55
105
139
126
130
126
146
131
58
138
93
128
55
67
55
67
37
132
111
131
132
95
92
119
77
119
72
139
95
119
119
144
88
134
138
144
126
105
126
122
162
123
119
122
122
58
152
67
123
128
130
122
111
140
138
127
107
126
138
94
138
104
148
67
108
79
165
92
92
144
56
139
126
122
144
55
93
167
79
79
110
111
56
123
190
144
151
93
74
158
104
106
88
69
122
110
104
97
119
126
171
77
92
160
79
58
103
92
91
98
109
138
122
122
55
144
122
92
126
55
56
127
139
134
122
109
87
167
91
105
126
93
163
58
102
138
122
128
122
138
92
122
131
168
74
112
55
92
105
103
95
93
122
105
119
132
112
122
113
99
67
92
55
110
105
37
144
160
126
58
55
67
169
122
91
138
122
169
152
93
146
104
178
79
93
124
142
69
77
182
115
67
152
122
152
99
105
127
119
104
93
67
105
119
127
67
55
119
58
95
96
79
119
110
78
138
144
100
128
122
93
111
105
111
106
100
109
138
145
139
100
160
143
138
99
110
105
110
146
110
103
110
79
114
122
117
149
163
55
92
67
55
152
139
105
122
128
103
86
69
127
86
92
100
165
86
163
97
126
95
58
171
110
126
101
55
105
124
92
128
67
112
56
178
168
104
104
122
138
163
110
141
69
122
104
92
145
93
126
114
55
179
132
136
67
99
107
110
147
146
171
111
104
99
87
122
177
103
92
92
67
56
92
92
107
152
55
117
110
88
122
122
104
138
84
123
126
126
110
58
182
107
92
126
102
165
134
99
121
139
55
56
123
122
126
96
81
123
144
116
79
93
86
132
169
110
92
68
55
103
169
110
92
152
55
131
122
91
126
144
146
163
92
102
92
86
67
122
92
89
134
112
99
92
79
132
37
107
109
127
139
146
37
111
56
120
178
134
67
113
126
135
138
55
92
109
67
128
110
127
93
122
134
139
121
144
86
164
92
55
152
144
126
97
104
69
92
122
126
93
107
58
69
122
110
114
99
83
111
104
92
108
110
86
178
69
152
126
91
100
67
120
68
55
74
69
110
77
79
105
56
101
67
107
118
92
122
148
127
117
107
118
92
92
67
127
76
86
77
106
37
84
151
110
92
92
160
92
107
126
122
139
109
58
83
105
56
140
104
58
105
55
122
77
132
138
169
92
97
126
150
126
169
93
67
56
99
122
67
126
79
92
158
121
92
91
163
156
148
92
144
114
118
126
55
56
113
110
104
144
67
93
111
69
119
78
139
138
92
69
122
67
110
158
118
77
138
92
105
77
112
124
79
55
152
104
128
123
77
103
92
84
130
92
144
110
92
138
144
58
86
92
93
134
138
67
162
95
93
138
164
93
103
67
119
101
86
138
146
148
111
189
55
55
128
92
92
107
112
109
108
110
127
134
92
108
152
122
56
110
93
110
98
178
93
122
152
58
126
104
99
127
122
95
69
110
55
86
99
79
139
88
146
92
134
91
92
92
110
135
123
163
122
55
146
110
69
138
111
86
178
69
131
99
56
69
126
55
58
138
178
139
171
97
91
75
67
110
91
119
67
112
103
105
105
138
158
123
93
144
55
123
55
169
104
138
128
91
144
77
55
103
127
37
100
92
178
92
122
101
110
130
140
86
105
78
126
92
81
104
84
138
131
67
99
105
103
138
152
105
128
120
79
139
122
158
56
163
139
119
56
105
92
142
55
74
128
126
98
107
165
105
128
92
56
138
128
188
105
83
146
146
55
111
123
67
127
131
100
104
118
77
126
110
55
55
107
75
123
169
171
119
37
37
99
105
105
56
122
119
104
146
158
74
127
93
106
74
110
131
104
68
146
118
56
107
165
119
77
89
128
56
138
105
92
110
101
79
144
122
144
79
79
91
92
110
37
83
126
124
77
131
56
100
169
146
160
79
98
97
126
74
55
88
140
67
83
99
67
158
86
139
138
138
56
98
91
167
122
110
188
144
199
122
92
107
126
139
77
92
94
122
148
92
105
58
107
146
138
37
139
178
110
138
93
100
110
67
92
122
103
145
123
127
110
92
122
110
139
56
136
131
140
92
55
98
96
58
69
134
67
134
110
61
152
93
55
139
115
83
93
93
122
92
81
114
134
138
110
102
91
137
107
56
68
81
74
126
143
138
91
92
69
123
178
92
91
108
107
58
37
67
101
163
137
74
137
119
92
99
92
178
159
67
178
123
120
123
110
86
93
92
67
127
77
101
37
106
110
96
139
111
109
110
178
169
79
67
130
87
139
126
99
144
98
99
83
138
138
83
103
55
134
123
81
135
56
69
132
55
131
74
137
68
110
126
55
122
79
110
86
69
55
144
86
119
91
55
67
55
101
128
75
55
144
37
88
93
129
178
107
74
100
138
122
144
122
92
105
55
152
79
55
101
91
92
119
180
127
102
119
92
135
138
58
104
152
110
127
119
105
58
128
89
127
56
168
113
56
126
79
138
67
119
130
109
67
93
55
122
138
86
58
94
86
126
148
128
139
140
92
55
110
138
108
55
78
55
131
56
56
112
103
139
144
58
110
68
79
123
139
122
117
99
93
138
37
111
99
178
122
138
131
92
130
55
122
123
100
110
118
77
178
97
86
178
124
91
55
122
140
152
67
92
182
122
74
93
117
92
92
110
67
104
138
180
105
122
67
156
77
55
79
123
106
138
55
86
69
146
139
119
83
144
93
110
145
126
74
148
58
56
107
139
168
128
128
55
55
103
80
75
98
92
108
152
118
64
130
140
83
167
77
144
138
69
140
55
109
110
107
118
94
110
131
55
55
111
105
123
37
128
104
127
136
128
55
93
83
93
74
105
112
130
120
89
93
110
67
99
122
146
56
140
69
67
112
169
134
107
118
127
68
126
124
120
99
138
168
107
128
119
92
147
110
110
122
98
105
103
99
67
140
122
83
37
93
123
58
120
139
144
93
144
124
92
138
119
105
138
67
92
147
67
69
37
128
86
92
92
111
83
138
110
138
56
104
69
92
69
139
139
99
122
92
148
127
122
122
77
199
92
104
140
79
97
169
74
138
150
97
83
67
138
126
102
178
67
138
128
122
55
93
88
189
123
144
56
93
92
134
92
92
58
148
138
99
134
146
55
92
91
146
128
117
99
103
67
105
104
55
120
84
178
86
128
89
123
91
104
105
92
92
67
79
110
119
178
171
110
102
67
144
56
58
126
69
104
122
122
130
67
167
122
69
127
169
122
100
89
37
144
130
110
146
109
151
67
105
110
146
110
79
92
122
108
118
103
92
105
139
55
93
126
69
130
126
143
146
138
140
134
141
123
110
146
110
138
56
55
146
55
109
105
119
132
109
122
122
152
67
111
56
127
125
68
111
79
122
110
92
139
126
110
152
104
67
178
67
55
138
91
99
128
89
126
122
138
79
144
67
139
128
138
75
67
138
37
110
56
67
127
74
167
92
92
77
139
97
122
152
92
132
122
92
92
131
123
107
79
105
119
109
188
131
122
110
122
144
101
100
126
69
126
110
110
131
93
91
128
86
122
99
122
122
105
105
77
124
122
146
122
110
137
142
158
109
101
144
97
105
92
111
92
83
171
67
152
112
109
92
122
92
119
146
105
138
152
178
89
178
122
92
128
93
105
103
138
144
92
137
103
69
127
110
111
140
92
55
103
56
122
152
152
91
56
69
93
144
74
140
72
109
131
110
105
105
122
127
124
93
119
68
108
68
104
117
139
92
92
123
77
92
144
117
69
112
110
126
109
99
92
92
171
122
92
92
93
126
94
89
134
111
58
178
138
145
137
127
67
136
123
126
79
104
86
115
140
37
67
92
55
67
83
142
105
92
37
86
67
88
37
104
105
119
103
117
37
92
67
171
122
122
152
55
75
58
105
86
121
180
134
110
138
123
103
110
56
104
83
110
118
105
146
68
55
110
67
55
92
146
119
92
126
57
169
93
105
140
138
148
127
110
55
74
69
111
93
109
126
178
58
120
138
55
58
110
138
119
110
58
87
126
119
105
106
91
178
127
122
178
124
101
199
93
79
152
92
136
122
69
105
93
107
144
75
69
91
107
178
122
107
144
98
55
162
171
122
111
86
130
55
134
105
92
105
152
110
110
158
104
69
92
74
58
111
111
105
67
55
103
58
92
88
169
77
126
117
119
139
77
103
178
79
37
67
84
122
88
127
171
135
136
139
79
131
148
126
92
103
68
86
110
129
105
89
105
123
92
98
148
92
105
77
92
126
75
105
169
92
110
140
105
104
131
67
162
126
122
67
104
91
122
119
69
69
103
126
127
37
112
163
169
105
87
99
104
122
67
68
126
67
104
92
128
146
139
110
122
122
91
126
67
122
56
92
110
112
69
56
146
146
68
111
146
165
92
69
138
105
55
122
110
93
128
105
123
109
86
105
124
104
92
128
126
109
91
92
92
134
134
58
182
128
56
103
126
140
178
107
138
92
105
114
123
157
152
110
102
105
91
69
79
171
110
37
188
55
74
67
122
61
92
121
67
122
92
124
122
169
148
68
105
126
86
128
92
67
110
92
92
74
105
132
104
93
67
122
145
103
158
56
152
80
144
56
92
152
58
110
107
110
123
110
79
144
130
146
77
58
77
92
110
122
122
127
108
111
106
67
67
148
144
92
116
58
37
102
74
127
55
91
111
111
146
134
132
58
119
148
99
92
56
124
139
117
105
58
126
144
128
58
92
129
128
111
124
88
97
156
148
92
58
122
110
126
126
122
80
99
105
99
169
77
67
103
58
81
140
92
67
140
126
126
126
110
134
110
126
126
122
69
142
96
139
122
101
55
122
67
91
67
77
125
127
99
87
100
97
104
105
104
152
123
139
126
55
130
55
136
167
130
99
92
86
55
93
126
124
74
105
55
140
92
111
180
83
97
136
122
92
123
110
37
128
119
37
69
56
178
67
172
122
131
139
103
103
99
152
120
104
114
152
56
110
86
91
127
69
106
105
91
56
91
168
67
56
134
123
152
67
107
74
109
58
146
79
127
69
105
37
145
92
124
99
120
127
134
138
105
79
127
122
105
148
105
169
37
92
169
92
58
56
92
104
80
124
169
122
37
67
124
139
140
110
178
122
84
110
127
169
111
67
71
130
105
162
169
178
56
138
37
110
126
86
98
119
140
122
55
68
126
104
138
67
67
67
139
55
92
75
110
118
135
129
188
92
138
89
87
74
146
122
142
58
110
146
103
92
78
77
80
110
178
101
56
77
83
117
126
92
99
124
148
88
128
58
99
81
106
75
126
127
144
76
74
119
128
93
92
138
84
146
144
138
110
123
93
97
99
107
104
130
126
92
55
104
160
99
128
83
37
89
56
69
92
77
103
67
139
139
92
92
118
58
123
136
37
152
139
91
127
89
79
86
148
168
139
127
89
101
74
55
128
127
148
139
56
84
142
37
122
127
107
114
37
103
88
146
58
144
107
92
126
107
100
123
93
102
84
152
37
55
119
134
68
112
132
67
106
111
98
138
127
122
69
101
56
110
105
128
139
104
127
122
74
56
138
119
86
69
109
123
128
106
138
119
92
134
86
168
128
67
58
114
75
126
92
169
134
111
92
128
105
139
79
92
114
104
69
83
104
105
92
68
123
55
105
110
77
99
67
55
127
56
178
77
140
136
37
127
122
67
98
55
140
141
55
92
93
178
127
86
110
92
104
55
98
110
101
129
178
56
122
55
37
93
83
103
92
104
103
165
105
74
105
122
37
97
79
86
83
67
80
92
111
56
171
127
126
55
97
92
105
110
139
126
126
114
163
107
55
138
126
74
138
55
93
97
122
106
132
122
102
119
91
144
105
131
105
105
132
56
105
122
132
93
92
124
122
144
122
110
68
105
104
105
112
94
145
86
124
126
132
79
99
102
67
99
136
126
126
55
134
112
122
55
152
138
123
93
69
126
109
92
69
138
126
103
67
114
92
152
111
91
58
171
69
99
134
77
92
111
92
123
126
104
110
56
92
132
97
160
67
144
119
144
92
91
56
110
128
126
91
136
138
76
111
58
67
119
110
171
126
128
93
144
152
122
104
58
139
139
122
138
92
144
69
140
105
104
69
110
169
111
98
55
110
77
111
182
126
98
55
95
95
178
79
122
169
105
122
189
132
93
92
119
144
146
126
110
132
67
104
95
144
146
123
148
69
126
129
123
55
123
124
126
107
99
112
122
93
123
93
99
83
97
109
86
92
125
109
99
83
93
152
37
37
110
171
169
107
89
92
123
160
93
92
110
41
178
126
146
112
119
110
127
37
135
138
93
111
122
108
138
178
119
138
110
79
110
126
92
84
105
108
123
56
55
152
124
105
109
56
74
110
104
110
138
122
55
58
94
79
126
106
128
105
126
37
109
122
160
37
146
158
127
104
74
138
144
87
120
122
79
126
55
86
126
93
127
104
103
110
139
69
92
101
105
91
152
92
119
99
55
67
140
83
92
55
86
93
104
148
132
138
91
110
178
160
103
72
88
138
112
58
92
88
104
97
95
77
127
110
107
101
126
92
100
111
138
110
74
126
91
67
93
37
67
77
109
84
86
158
58
103
37
168
102
75
89
152
140
92
98
151
132
102
145
55
105
146
93
92
135
109
77
141
124
56
122
107
92
92
111
79
105
56
110
142
67
134
75
103
91
124
124
122
93
138
86
92
149
37
92
105
169
169
55
146
67
119
139
140
55
105
79
122
138
56
67
127
74
86
92
74
146
180
132
147
134
146
122
122
75
58
118
55
37
158
146
128
93
110
55
77
92
77
67
138
122
61
108
102
117
122
65
92
146
104
58
134
105
138
128
128
119
122
107
131
79
105
122
139
74
103
110
131
91
55
150
149
134
91
55
178
102
140
97
131
92
140
99
139
109
144
92
93
124
105
139
139
88
104
92
178
110
92
91
145
87
55
121
37
139
139
131
180
91
111
105
127
138
117
122
55
138
72
109
128
138
67
79
97
138
122
124
123
56
138
55
123
99
74
122
86
68
126
147
109
77
138
74
75
55
105
152
100
158
149
105
126
134
138
105
144
131
140
104
92
55
119
55
55
121
138
138
137
135
69
105
92
138
105
55
130
79
110
56
126
126
158
138
128
122
139
55
93
56
37
138
111
138
160
128
144
119
105
77
126
86
80
112
105
127
135
83
55
171
169
156
101
178
168
78
144
105
58
171
110
138
130
110
92
128
69
109
118
81
92
131
126
110
122
93
141
107
117
126
128
126
128
56
110
92
74
156
109
92
127
92
110
58
101
69
126
122
165
67
120
126
105
92
78
141
129
104
69
79
104
169
99
67
97
105
120
103
122
37
139
110
92
67
101
93
37
138
127
74
92
91
86
165
124
105
139
55
87
67
98
120
79
67
97
178
110
104
122
91
103
123
146
98
93
146
37
136
93
144
83
128
104
69
131
152
119
93
168
92
86
139
138
37
103
100
92
111
138
131
55
97
55
152
103
105
110
107
37
110
120
105
99
100
79
128
137
127
103
67
78
72
55
84
120
135
122
109
162
140
92
99
105
152
144
119
119
129
92
126
146
197
99
58
128
55
169
55
128
97
151
68
139
127
55
105
122
109
129
135
164
105
92
158
132
105
168
86
108
75
92
144
110
92
139
69
134
118
169
128
144
84
74
75
97
100
129
120
152
92
105
55
107
69
110
55
139
110
109
110
55
122
93
71
88
110
86
79
86
89
109
117
67
55
127
136
56
140
104
56
99
139
123
91
138
129
58
138
105
86
140
178
139
110
92
69
56
140
77
142
58
126
138
91
105
86
75
135
80
123
148
56
138
97
104
56
138
55
147
69
104
105
56
138
67
126
111
124
135
110
56
99
112
79
136
128
122
123
130
134
86
146
127
169
56
92
93
139
146
132
124
140
92
139
105
103
56
67
117
111
69
160
55
130
178
128
106
92
119
122
105
105
103
69
119
144
122
178
55
110
88
103
139
138
100
37
56
135
144
104
89
163
178
141
56
99
99
124
92
105
97
105
138
55
55
144
99
105
58
109
91
146
138
127
104
68
101
150
92
113
108
118
117
67
93
127
178
138
67
163
124
67
67
188
92
126
104
105
67
37
55
123
126
146
107
142
127
55
178
77
110
110
69
89
110
55
107
160
74
127
169
110
126
104
79
139
126
105
73
96
127
109
67
138
92
152
69
134
136
55
92
110
111
114
55
122
156
134
164
110
79
110
102
127
138
86
55
134
92
37
55
127
110
146
163
111
146
55
105
58
127
126
134
169
56
134
117
93
126
152
127
127
110
75
37
122
128
91
104
92
103
119
83
109
126
144
122
99
97
87
83
105
56
55
92
126
110
95
171
75
69
105
171
87
119
93
110
98
108
105
106
162
144
74
148
160
124
132
86
126
58
69
58
112
126
148
128
37
122
67
100
105
117
55
77
168
122
126
122
123
104
114
87
105
152
110
75
77
79
111
105
104
37
81
55
144
126
122
55
75
37
67
131
55
99
104
92
84
88
100
124
188
126
67
126
58
107
122
92
146
104
56
146
105
122
74
67
87
67
178
69
37
104
122
139
56
100
67
37
110
86
67
92
91
114
119
130
105
107
126
126
140
87
92
136
110
56
171
69
37
119
84
180
114
105
102
92
124
110
84
113
105
92
56
97
92
178
74
111
95
114
102
92
139
58
118
67
97
55
75
125
138
55
105
92
92
105
68
117
76
55
171
79
126
113
79
107
152
131
158
138
130
83
55
99
126
93
114
139
126
56
122
74
67
138
109
106
69
122
95
124
146
158
100
169
114
37
127
130
144
134
55
167
126
92
104
104
99
158
146
55
110
74
122
67
106
178
122
139
78
146
137
103
152
92
67
138
92
58
128
120
111
102
105
138
144
135
169
104
122
104
56
56
146
55
99
110
92
126
58
83
56
152
56
110
92
55
105
122
178
171
93
75
103
104
140
69
122
93
107
126
92
72
98
112
144
103
110
103
109
144
112
74
128
55
58
117
67
104
126
104
138
97
110
109
122
37
109
92
58
124
134
55
99
58
101
92
100
140
104
105
152
77
105
89
86
67
128
160
120
180
67
122
105
106
37
122
138
103
67
140
122
178
146
110
123
74
110
75
126
120
37
55
117
180
100
111
69
131
152
104
109
67
92
74
162
117
112
67
162
132
91
37
100
56
92
69
92
93
138
105
105
139
99
55
113
58
92
138
104
37
164
178
98
77
141
89
152
56
74
55
139
134
58
178
56
55
139
69
112
112
99
142
58
94
122
132
169
55
109
110
110
55
123
97
56
86
103
110
86
101
178
79
122
91
140
67
55
164
67
140
86
105
169
55
93
110
178
65
92
92
83
111
93
105
144
138
152
97
104
67
127
108
56
110
55
110
92
127
156
178
103
94
126
94
141
58
122
139
67
97
138
93
110
137
93
178
98
126
91
104
114
124
127
152
128
78
146
126
120
199
145
55
178
110
55
136
169
55
58
55
103
92
92
138
55
93
102
105
122
145
110
55
107
136
178
120
120
86
93
119
92
97
92
110
56
55
139
118
87
171
120
122
56
92
124
138
58
119
37
80
56
104
152
141
67
122
138
109
69
105
168
178
123
93
93
165
146
86
127
41
171
79
138
180
120
69
178
58
123
102
126
56
79
111
96
56
84
110
139
139
146
93
69
68
104
126
97
126
83
148
169
168
110
93
126
128
79
105
55
128
117
37
104
86
145
148
67
86
104
169
122
105
104
119
111
138
101
126
91
74
123
37
92
92
124
58
130
178
120
91
144
111
97
134
129
55
124
122
93
112
114
105
91
83
138
105
148
69
158
107
122
103
77
128
105
55
74
92
103
118
69
139
92
112
110
123
83
123
56
37
122
92
55
58
92
111
122
105
144
92
111
92
99
105
92
92
128
143
56
165
178
122
93
111
139
139
122
127
105
135
105
126
58
92
37
110
114
138
55
110
134
103
127
122
100
158
107
110
92
127
92
122
105
140
58
92
92
117
131
178
146
93
146
132
123
93
139
146
55
83
140
58
99
109
111
168
146
104
158
138
151
69
148
152
126
83
79
103
77
146
55
86
91
129
91
75
92
105
169
152
122
107
122
122
55
126
91
75
65
146
123
77
110
56
169
55
115
119
86
152
110
105
104
152
130
144
110
180
92
128
106
171
178
69
77
131
119
83
93
152
92
144
58
88
92
104
56
67
85
138
169
142
86
152
58
139
105
146
111
105
134
92
92
105
68
86
105
111
100
144
138
139
127
55
56
107
83
91
110
67
110
93
56
55
122
56
105
94
128
111
105
126
64
55
104
101
55
139
114
122
145
88
123
106
92
126
93
178
97
55
75
104
110
132
37
56
110
118
95
68
110
122
67
105
58
122
83
77
139
127
140
140
75
79
105
92
76
126
99
93
92
104
92
92
179
124
105
136
67
178
58
126
145
98
100
93
107
171
152
56
98
119
168
69
128
110
77
124
126
37
69
55
163
56
72
127
105
86
75
132
146
122
79
67
122
55
108
69
79
58
93
171
93
58
105
138
138
104
92
139
125
162
171
124
37
105
134
67
126
56
117
124
92
94
75
168
105
105
79
131
71
128
107
69
92
124
92
55
67
119
104
98
103
103
98
178
112
104
169
109
127
104
123
178
139
108
123
67
93
68
56
104
146
92
142
126
127
99
92
140
92
120
110
140
58
92
107
139
105
146
127
180
79
95
104
110
67
92
128
111
92
104
169
126
115
58
110
93
83
56
104
56
144
80
126
117
127
111
118
105
138
92
56
105
97
37
92
110
130
171
77
67
55
69
126
127
74
126
92
105
93
74
55
86
139
104
78
105
139
58
101
140
137
130
164
92
86
123
124
122
118
119
92
128
105
104
72
127
138
103
69
109
138
92
139
83
138
107
55
136
122
126
113
55
127
110
91
101
122
79
165
83
126
105
83
126
105
171
37
111
127
58
110
37
68
37
55
100
67
162
122
124
86
132
55
105
78
97
107
120
109
67
105
105
96
168
58
58
124
144
169
84
140
152
121
55
104
122
67
64
110
132
102
162
89
73
178
113
81
89
199
126
127
139
91
92
93
77
137
110
104
93
92
108
105
121
69
126
144
111
37
75
105
151
92
110
92
84
152
110
69
128
74
86
56
55
139
144
55
83
86
74
138
118
124
37
112
144
152
136
92
97
101
56
139
131
118
152
55
123
58
105
92
37
126
146
180
152
104
137
112
75
168
92
69
126
138
67
108
126
136
77
120
135
37
74
91
55
91
146
158
77
92
139
58
132
55
144
69
128
111
144
122
105
105
126
87
55
89
138
122
132
114
75
92
139
55
56
74
69
139
134
96
110
58
110
167
112
55
126
105
110
98
56
130
126
74
124
134
105
93
134
86
140
123
128
111
105
110
78
127
110
104
99
92
122
110
67
105
120
141
107
83
178
144
136
86
128
138
92
92
92
110
92
127
105
79
101
56
77
72
56
122
77
128
55
119
102
91
105
92
105
128
178
171
107
105
92
152
138
107
79
126
56
169
152
92
124
92
148
106
69
122
104
106
69
132
119
169
79
120
119
74
111
107
152
110
127
171
126
110
55
149
78
122
115
110
147
122
86
128
139
37
144
126
86
178
93
171
72
86
138
67
67
110
136
55
122
122
91
105
138
122
55
93
99
55
122
146
86
171
104
123
100
55
148
130
138
109
75
99
83
124
178
101
55
37
55
87
104
127
55
69
79
122
109
55
91
91
84
110
104
180
93
92
102
162
55
79
140
123
69
55
139
122
119
141
55
104
111
58
56
86
91
122
105
92
118
122
69
152
139
92
67
146
56
144
138
115
91
108
77
136
144
56
92
128
126
67
110
93
109
67
138
37
69
178
97
91
67
107
127
122
144
93
110
58
110
77
135
180
126
112
83
140
92
124
97
79
55
109
139
77
93
106
122
109
140
178
134
162
128
86
79
56
81
93
119
146
109
93
104
37
120
178
128
144
132
79
83
110
92
101
58
86
121
146
178
125
104
92
92
123
93
92
92
146
104
79
79
127
169
67
140
56
56
125
168
103
192
126
134
145
77
55
122
122
37
139
93
56
169
105
124
146
104
55
110
69
55
69
148
105
126
138
37
99
56
148
101
146
126
55
127
121
128
171
109
56
152
58
122
162
102
77
79
58
83
126
91
104
37
144
122
122
69
128
101
119
67
67
81
37
105
139
169
145
56
119
93
152
110
126
67
93
144
111
178
119
126
124
93
86
104
140
58
92
56
130
122
119
67
110
55
110
86
106
146
126
37
110
110
91
104
124
111
69
76
92
104
79
169
109
136
188
123
55
37
92
134
128
178
84
55
99
55
111
124
109
178
99
113
86
37
69
91
89
120
92
105
105
110
122
67
56
103
122
67
139
109
139
86
55
79
168
126
56
75
37
93
128
93
138
107
37
67
140
138
140
88
108
126
86
92
118
92
88
126
92
92
123
126
91
163
139
56
127
92
86
87
92
118
148
79
92
77
126
142
67
131
138
120
122
89
92
92
178
79
138
124
104
139
146
58
56
140
100
104
122
144
84
105
110
93
162
97
118
122
122
67
93
114
78
142
130
105
75
92
134
105
103
69
134
37
110
74
94
111
55
144
164
144
181
92
92
94
138
105
74
103
178
77
92
122
111
109
122
69
126
110
37
91
110
83
77
103
92
86
126
110
119
111
163
92
58
56
93
110
91
105
128
79
122
122
119
158
105
126
58
138
148
178
55
126
106
146
95
55
139
69
76
110
110
131
55
92
152
139
92
109
99
134
91
93
56
83
129
67
119
169
112
92
122
121
126
92
139
67
67
74
56
99
92
56
92
134
169
56
132
94
144
67
148
100
114
129
92
92
91
123
92
55
92
110
79
104
144
124
126
151
152
105
107
56
83
92
92
110
97
92
117
122
122
178
55
84
37
110
122
139
93
144
103
58
88
139
74
123
168
89
58
138
139
169
88
111
122
117
86
103
92
67
55
110
122
139
69
56
119
92
69
92
104
92
93
104
93
99
139
110
104
123
110
122
55
108
130
139
92
67
99
55
92
110
73
168
128
107
144
138
98
144
126
58
119
152
75
123
92
110
104
140
37
137
120
111
153
144
55
110
97
109
122
56
110
122
92
142
67
128
105
128
138
123
77
93
144
138
86
120
92
93
122
104
126
93
144
37
130
55
105
91
148
137
122
178
126
67
55
93
122
138
130
118
148
139
126
55
37
55
130
78
138
83
123
67
61
132
97
103
169
67
91
122
106
129
138
122
122
94
123
55
123
108
55
117
92
138
113
163
88
55
152
127
145
78
105
92
130
138
150
109
126
126
144
99
119
77
105
67
139
110
100
123
68
110
139
122
37
105
93
55
92
104
139
139
123
74
86
69
92
91
92
136
92
56
134
137
93
55
92
55
110
37
113
92
144
105
178
112
109
92
127
58
137
92
110
83
111
119
67
100
171
84
122
67
89
93
122
84
79
152
58
122
110
37
122
126
67
100
171
75
112
152
126
61
79
162
105
134
107
96
99
74
114
92
92
67
122
122
122
149
131
55
169
56
128
81
37
86
111
37
93
118
55
55
37
55
178
79
138
109
123
74
100
109
67
105
124
92
92
69
146
152
110
132
120
146
104
99
120
69
107
138
141
104
86
122
92
140
126
118
138
58
114
126
117
55
55
55
124
152
110
105
105
37
104
126
104
138
126
132
145
91
126
91
106
67
122
111
152
72
92
110
58
122
120
146
126
107
104
178
119
37
67
55
83
55
138
138
122
152
79
144
72
111
180
110
110
129
140
67
92
93
110
92
55
131
144
106
104
126
136
106
114
93
92
126
102
68
119
137
139
136
152
92
102
126
126
99
114
163
158
110
118
115
93
122
146
178
158
119
124
122
180
110
58
126
92
109
105
107
55
102
91
144
86
127
144
107
137
122
128
74
55
110
69
139
139
122
55
95
138
103
167
105
148
58
110
118
67
104
55
92
107
55
86
138
140
58
139
93
86
110
158
178
95
136
92
168
55
77
108
129
138
68
178
104
77
138
67
56
110
127
125
101
92
163
74
119
67
169
69
55
152
124
105
158
122
137
152
126
37
124
123
37
67
115
117
105
105
104
139
77
91
56
107
101
123
122
89
131
83
126
126
100
105
78
68
130
119
107
55
110
148
99
58
106
110
55
117
111
100
139
171
131
108
88
117
86
144
110
122
93
138
98
127
109
138
127
74
127
110
55
92
119
163
92
130
105
126
107
140
106
56
111
139
69
93
122
139
55
104
67
124
77
107
105
109
139
118
104
105
122
138
124
136
111
119
86
101
138
93
67
144
144
126
37
92
56
110
126
92
110
109
134
146
92
114
56
91
56
149
99
138
105
110
139
37
137
67
114
55
58
169
97
104
105
77
103
92
138
122
139
68
144
126
124
126
138
86
123
105
128
74
123
110
56
74
101
74
64
37
113
55
76
104
95
128
118
67
98
105
107
144
67
68
92
171
128
128
91
77
144
91
105
92
149
92
91
55
91
138
92
92
120
163
120
105
77
122
93
137
78
123
55
125
58
55
55
103
119
130
67
119
37
180
67
56
123
108
68
127
75
68
92
99
58
92
104
139
55
96
55
126
164
92
109
100
55
55
93
138
128
55
122
84
127
133
87
152
131
127
55
104
77
126
77
122
86
158
105
119
104
120
58
101
104
55
122
77
127
144
171
64
144
126
110
86
167
98
105
178
86
128
80
104
119
92
67
114
141
104
108
127
123
111
110
88
93
93
37
146
105
112
106
92
126
148
56
152
67
128
171
122
109
178
119
92
122
105
122
132
67
107
110
111
77
74
144
55
77
56
120
75
84
109
122
83
168
91
106
110
121
92
104
58
131
58
92
105
122
113
89
58
37
37
122
87
104
91
109
180
92
178
92
92
105
135
139
110
55
104
92
67
105
91
126
122
56
55
107
37
119
122
101
126
140
56
93
138
92
107
92
178
37
145
144
120
67
92
145
138
110
92
92
99
37
121
92
55
134
110
104
69
86
67
93
122
126
69
55
122
119
126
122
37
146
167
92
67
92
92
126
127
86
86
138
119
98
139
104
104
127
122
92
55
74
92
103
110
92
92
74
56
91
140
92
105
171
138
148
56
67
146
122
77
124
67
105
121
55
58
91
79
67
105
110
103
86
56
58
123
163
134
139
89
178
67
99
91
105
105
110
119
131
101
130
77
120
86
67
105
89
67
105
126
126
126
138
127
83
92
67
79
110
139
77
104
118
86
123
138
126
92
130
146
180
107
111
138
127
95
127
144
152
37
84
130
93
68
55
139
74
148
105
55
56
92
167
69
110
158
169
81
69
105
55
109
113
114
67
110
105
132
119
104
110
126
67
55
164
126
110
122
69
146
92
56
86
97
148
55
138
110
162
122
68
74
164
86
37
126
79
168
58
138
69
99
79
55
134
163
86
105
69
58
105
37
127
112
126
146
100
118
74
93
88
83
110
140
92
55
67
98
138
146
127
92
110
102
75
58
122
37
119
152
178
110
91
83
137
109
69
91
119
55
56
109
122
104
79
93
55
105
83
122
102
131
122
56
99
111
74
81
126
92
69
110
126
83
122
144
74
124
67
56
68
146
180
79
55
105
138
86
95
144
107
55
110
111
126
138
104
117
126
144
158
110
37
158
67
37
111
119
126
126
86
110
178
138
130
111
110
139
103
83
75
144
55
110
146
110
127
122
92
104
126
92
163
92
105
103
91
123
105
110
123
128
92
105
58
105
110
139
103
131
139
104
55
74
105
138
56
122
130
127
37
106
144
142
95
144
92
178
103
69
103
168
103
178
127
169
79
110
92
122
56
130
136
110
55
171
178
92
171
79
105
58
98
105
55
79
126
122
128
55
99
164
138
84
55
130
74
110
92
55
146
74
104
67
97
139
140
106
145
146
145
67
93
140
67
55
69
55
56
92
56
105
77
109
158
83
168
84
106
152
87
126
128
101
56
104
92
104
124
152
83
122
139
144
118
79
127
92
144
67
92
147
91
55
148
81
56
146
111
72
114
67
104
122
104
92
146
79
111
135
101
37
101
110
91
104
58
104
99
56
108
117
67
55
169
56
123
77
68
104
79
92
122
78
117
105
178
123
105
138
110
123
128
86
139
127
99
86
105
77
119
104
109
55
108
122
122
92
55
93
131
107
126
117
56
119
58
105
96
136
119
58
126
37
178
56
147
139
144
81
130
97
105
146
79
105
138
97
83
110
74
126
68
67
108
169
122
122
163
100
178
169
56
112
132
69
110
126
105
55
99
109
144
94
93
109
140
178
126
145
93
67
104
56
110
97
152
110
94
132
140
160
58
110
139
37
109
128
67
178
58
67
112
105
91
114
128
110
123
75
99
93
119
92
124
136
109
67
139
122
103
93
93
93
119
145
75
105
64
111
144
126
139
126
122
171
105
93
158
92
122
104
105
91
92
122
119
140
144
178
92
75
92
105
79
160
110
169
124
106
109
144
178
89
152
58
144
123
106
110
113
79
92
104
55
67
92
55
67
55
128
104
114
162
160
123
92
105
91
86
97
110
109
37
120
79
92
55
122
92
112
119
146
128
146
37
92
88
114
92
92
128
178
84
92
55
144
77
126
56
58
110
102
107
119
141
128
55
92
126
89
122
93
168
55
131
55
99
56
118
112
92
56
144
92
55
138
136
126
55
119
95
104
137
128
169
126
169
93
105
156
105
138
67
105
126
137
139
134
110
104
110
169
92
83
122
67
168
91
171
136
110
146
126
132
125
89
126
79
142
92
123
163
79
67
95
112
127
74
178
178
128
98
178
86
55
105
178
139
58
69
152
139
178
127
78
99
178
92
125
122
160
138
106
93
120
77
158
92
105
140
160
134
122
180
37
83
110
123
67
148
56
119
92
123
138
114
93
139
111
74
131
142
91
79
92
68
92
93
92
83
144
75
110
158
92
126
69
127
79
72
86
66
55
105
110
93
110
109
152
123
158
67
92
79
139
91
55
178
152
100
96
131
74
148
123
56
92
152
55
122
134
93
88
107
136
108
138
126
79
178
111
119
67
127
58
122
56
56
142
92
74
146
69
77
110
125
106
69
126
93
138
92
79
139
93
122
115
91
127
144
75
105
109
137
77
79
138
93
67
119
67
146
102
105
56
92
75
139
83
110
137
67
110
103
164
105
92
93
148
122
148
152
127
138
118
144
178
127
122
126
92
126
138
119
98
109
139
171
105
178
178
99
122
143
131
180
123
56
110
92
86
111
67
148
67
107
67
100
100
126
139
77
93
104
104
58
107
163
92
122
67
67
117
105
110
92
86
37
97
139
139
93
92
91
81
86
168
134
111
69
139
67
86
178
126
107
56
119
105
110
123
139
112
67
105
77
139
67
104
104
110
92
67
92
119
138
107
92
92
136
152
138
55
77
91
67
58
104
93
144
104
55
79
56
58
122
94
58
56
92
74
122
122
67
109
139
126
144
92
152
121
107
110
158
126
100
126
134
146
104
105
128
132
122
122
79
134
110
104
91
163
107
55
131
92
139
171
122
75
93
113
67
130
69
92
99
92
127
103
103
180
139
75
146
93
103
124
58
107
152
140
56
132
110
106
69
101
109
123
110
126
138
146
120
119
122
138
109
110
105
111
127
105
98
69
56
111
141
102
96
86
105
55
126
86
141
37
107
111
111
120
119
110
111
95
122
56
84
89
92
163
146
140
106
105
56
118
93
110
131
111
55
105
55
37
169
67
146
139
93
128
105
89
92
123
55
131
77
102
91
139
179
67
67
122
110
55
93
56
110
89
110
144
109
139
178
142
91
129
122
67
123
55
138
86
98
100
56
140
138
122
95
102
55
92
114
67
138
169
37
74
98
152
148
124
91
86
87
123
92
55
144
77
138
109
168
130
124
144
58
79
92
99
134
138
75
128
148
110
79
178
92
144
55
69
110
152
100
110
160
55
109
105
92
67
110
104
83
55
109
83
127
127
69
104
169
105
110
122
158
139
111
167
127
144
55
37
69
91
138
92
110
58
138
67
105
97
139
37
92
107
67
114
126
111
105
93
126
55
148
69
92
92
180
138
138
100
67
83
124
119
140
122
56
99
139
112
37
113
107
37
144
89
58
139
83
133
132
89
92
55
104
138
105
105
74
56
128
105
111
77
122
168
126
75
134
75
146
55
123
91
138
83
178
69
55
56
56
110
127
58
56
152
92
128
139
156
152
89
105
180
111
55
86
92
139
95
110
67
127
105
110
81
111
128
91
138
69
92
138
114
101
144
37
134
163
129
152
92
95
111
93
58
56
110
134
112
122
110
122
84
93
171
169
131
37
77
75
122
55
93
92
128
146
169
122
146
111
144
107
92
93
83
79
105
103
55
56
134
111
105
127
105
128
126
125
93
119
56
83
104
99
88
69
104
130
146
152
111
69
67
146
92
169
148
138
93
144
79
92
89
115
74
146
105
107
165
129
119
126
127
145
104
148
115
152
100
138
91
69
37
74
106
122
92
171
122
69
124
131
97
75
105
127
146
188
105
37
55
130
92
107
105
138
77
67
146
56
100
91
109
58
158
110
140
58
79
105
180
112
93
92
126
99
169
139
58
111
131
96
92
89
56
178
75
100
144
98
132
98
123
37
127
136
112
101
94
92
128
92
75
138
171
110
171
122
91
107
178
138
37
119
91
74
171
126
126
109
122
69
104
127
124
126
139
81
108
93
99
37
110
124
93
123
118
122
55
104
148
99
92
122
67
132
105
88
89
178
138
162
162
110
101
144
69
123
67
111
171
56
110
69
122
110
107
167
99
67
104
111
138
75
86
122
58
105
58
122
122
169
132
105
102
100
105
126
99
126
171
91
97
89
74
105
144
105
67
67
92
132
104
163
69
127
104
178
144
98
123
58
92
126
55
139
69
58
119
98
92
126
139
137
67
37
126
110
92
83
119
77
136
127
122
110
104
109
102
138
122
68
84
93
58
128
158
126
92
91
110
95
180
144
83
77
55
122
142
55
92
122
105
108
128
74
123
122
122
92
91
110
74
68
93
139
146
58
37
146
110
136
151
138
119
92
144
86
86
69
37
92
112
81
126
83
148
119
127
104
179
105
119
126
105
131
139
105
122
55
92
56
131
126
138
56
92
55
84
88
111
55
129
84
126
178
107
136
77
58
92
67
84
92
169
126
122
168
127
98
93
178
138
99
138
58
93
127
74
92
110
126
122
128
110
58
126
77
152
55
124
118
74
110
126
105
130
111
149
148
37
111
139
103
138
91
144
111
164
115
67
77
146
109
92
67
148
126
162
126
119
104
56
56
138
126
139
55
69
91
144
67
138
55
95
105
124
136
68
122
137
119
102
103
122
134
56
122
140
107
55
162
98
75
110
126
178
106
122
56
55
122
55
86
74
152
115
95
91
111
139
77
37
67
78
146
55
105
162
110
138
109
132
103
92
105
93
69
138
138
55
130
104
56
138
144
84
67
92
114
67
138
144
75
83
92
67
55
79
123
122
182
128
86
55
55
95
93
92
140
123
178
74
140
180
67
94
74
138
105
99
149
126
104
79
58
93
123
124
68
67
58
110
110
127
67
105
111
169
67
134
110
102
140
118
37
104
126
127
104
104
127
37
97
109
146
75
56
139
109
165
92
37
110
122
105
104
165
37
127
146
139
92
104
93
130
122
138
144
139
88
106
100
109
168
67
105
139
105
55
75
67
87
109
105
139
55
93
58
128
128
75
118
108
119
169
122
132
55
94
56
37
128
138
122
126
122
58
127
146
55
92
135
67
107
74
86
58
102
80
178
160
113
108
110
58
58
58
105
144
123
126
138
58
74
169
55
128
79
107
79
122
93
69
105
55
146
149
77
105
138
55
138
92
58
69
130
118
56
128
56
125
67
67
126
107
152
108
141
122
104
128
137
124
131
92
160
93
110
92
122
86
110
92
122
138
74
111
142
56
144
67
178
132
132
69
105
104
128
112
55
92
68
129
37
127
105
123
111
132
106
128
132
138
138
99
147
110
92
169
147
145
92
78
67
56
92
125
134
148
119
131
91
93
136
55
158
125
148
55
146
138
69
122
127
74
136
119
105
165
128
67
103
104
126
69
77
126
140
128
167
138
110
122
110
103
108
92
101
128
126
138
96
126
55
67
74
37
122
92
92
144
92
56
85
69
67
93
139
110
137
122
86
104
92
144
169
147
126
169
168
93
65
138
135
139
67
122
58
156
138
105
120
139
69
113
110
123
89
68
55
68
105
92
112
122
122
69
124
67
122
144
105
93
105
107
120
92
130
37
119
92
123
92
92
126
120
80
144
138
122
79
126
83
140
146
139
99
92
165
181
139
178
164
146
93
67
105
89
117
139
58
67
131
124
128
122
140
146
137
122
89
37
178
171
110
55
69
126
104
92
140
83
138
120
92
128
138
58
56
106
107
92
56
37
138
111
67
105
37
55
79
97
89
138
86
163
140
75
118
56
56
104
104
76
132
74
105
111
134
55
127
138
126
91
104
37
58
146
112
37
92
138
37
119
55
130
95
122
105
55
55
106
105
92
142
122
92
107
169
178
67
168
93
152
58
92
117
97
104
55
138
146
144
160
95
128
69
103
99
178
74
137
119
92
105
58
67
126
67
55
92
55
120
171
121
122
138
67
169
123
105
111
119
107
92
98
93
92
144
142
86
92
104
105
152
55
79
72
89
57
178
103
93
112
104
75
124
142
55
93
110
93
128
140
139
152
58
93
138
107
92
126
103
58
37
58
107
124
77
138
104
109
146
92
123
144
56
152
96
148
160
122
139
67
58
105
93
74
67
163
93
104
178
92
141
140
92
127
144
105
152
126
99
67
171
55
178
146
148
58
120
92
92
37
133
86
37
112
37
81
148
114
92
125
178
105
152
105
110
122
56
37
128
103
103
123
110
138
128
126
138
152
92
131
55
140
110
92
126
56
77
146
86
111
128
83
126
77
119
110
104
138
92
81
93
74
79
98
138
119
77
37
37
145
180
139
92
56
107
122
55
169
56
92
92
126
56
164
126
104
92
110
58
131
84
92
74
69
122
132
137
75
105
139
139
55
178
55
119
130
144
146
55
138
123
97
152
136
37
128
91
75
110
123
126
67
110
178
67
122
123
55
149
126
79
122
139
112
146
122
93
152
92
92
169
122
67
162
55
126
69
91
139
69
113
136
110
92
107
110
74
74
139
107
105
178
56
139
37
86
139
169
56
55
93
77
105
104
122
178
67
58
117
77
93
146
92
55
114
69
79
83
105
55
92
126
105
178
144
178
134
146
77
123
92
105
114
88
55
104
122
79
105
178
123
122
169
138
158
92
127
104
123
122
58
118
138
104
122
126
115
146
108
110
92
86
122
164
93
56
107
105
86
121
138
122
107
56
109
138
123
139
105
139
92
145
91
123
122
92
138
92
92
138
92
123
127
104
56
131
104
122
127
105
138
127
55
145
93
137
111
92
139
153
55
92
103
105
80
55
93
55
122
92
105
146
106
92
86
105
102
138
137
127
58
139
179
68
92
146
69
122
55
92
83
122
69
110
138
110
171
77
127
144
110
122
139
79
168
134
110
75
128
73
110
98
148
122
105
56
93
92
112
93
128
91
67
110
178
100
56
126
105
93
92
109
74
132
56
122
55
125
105
125
118
67
138
144
130
105
69
123
86
128
134
126
126
69
37
131
104
98
134
92
105
79
55
104
67
121
86
138
129
67
118
55
104
148
105
58
94
152
137
107
79
92
134
97
55
104
126
105
180
77
83
78
123
137
55
61
178
110
105
91
136
104
56
55
88
123
95
122
142
37
178
121
126
111
105
37
120
118
139
92
105
92
126
103
56
109
77
107
120
122
105
102
110
93
122
80
110
58
163
138
110
110
124
188
109
144
92
92
69
180
111
146
139
56
86
108
56
144
101
178
104
92
125
92
104
138
56
122
55
122
92
74
127
67
126
139
92
146
95
99
138
110
83
74
119
92
56
99
152
123
126
87
55
37
74
140
100
104
92
67
58
105
127
146
55
136
178
124
37
103
58
122
134
122
105
144
162
144
122
148
119
92
93
126
126
58
105
67
104
122
98
119
111
37
55
146
119
148
108
104
117
126
67
69
138
74
104
122
146
126
104
55
178
92
74
122
103
74
95
56
92
92
107
126
88
67
123
67
105
67
135
104
55
146
111
55
89
164
126
114
138
138
139
84
106
146
123
67
158
88
99
88
152
67
101
109
110
101
112
126
152
75
92
114
81
139
164
55
146
130
110
91
152
163
127
69
92
91
104
67
92
123
67
122
117
122
83
127
92
37
92
104
105
119
168
134
120
92
99
98
92
92
75
86
104
92
117
126
104
152
105
56
114
103
92
135
152
92
105
111
117
134
104
126
104
140
107
144
93
88
178
58
134
67
127
134
88
126
127
99
103
100
123
56
106
56
152
99
112
92
79
122
78
92
110
138
152
164
151
91
132
152
102
67
122
126
122
144
55
88
68
122
67
152
92
67
123
58
92
126
144
122
110
134
122
68
110
126
114
92
92
126
69
178
107
92
152
58
93
74
152
37
55
139
163
152
110
178
55
92
178
119
122
37
103
101
80
178
111
110
104
127
130
110
92
103
136
123
115
126
132
101
58
105
126
92
131
79
122
138
139
68
105
122
122
145
104
75
74
107
142
104
111
138
107
120
158
99
169
58
139
122
110
146
93
162
75
104
56
99
140
105
134
123
92
122
99
71
152
99
69
86
55
128
144
146
107
79
139
84
146
178
146
134
138
120
56
55
130
110
169
122
105
182
138
112
67
55
178
123
92
110
110
122
93
104
79
109
58
127
169
79
103
37
84
138
67
118
56
114
86
126
99
123
127
98
37
110
119
140
110
105
76
138
110
56
171
120
105
98
67
93
83
126
100
138
55
76
92
104
86
86
104
55
105
92
104
139
77
130
107
134
92
128
55
122
102
105
144
104
122
55
163
126
122
126
79
83
92
74
199
126
168
103
123
168
110
107
119
74
67
55
99
163
128
74
101
169
122
84
109
79
111
58
110
126
107
138
55
92
110
55
139
135
103
105
37
141
99
56
142
58
134
123
93
162
169
93
99
110
138
79
69
141
140
138
92
104
55
104
105
92
104
67
58
110
92
91
110
98
143
103
86
152
105
126
67
72
177
92
55
105
87
113
111
92
148
79
91
126
162
67
67
105
91
122
123
104
111
139
75
107
128
83
67
105
146
55
144
92
107
104
67
106
135
105
93
131
104
138
86
122
146
110
126
77
97
74
114
110
99
94
112
67
107
128
86
79
111
92
169
93
144
93
102
146
58
134
110
122
84
104
129
169
128
163
126
73
122
37
95
101
138
102
37
136
67
58
127
111
67
122
138
126
92
110
56
162
121
67
67
103
112
164
79
84
58
67
139
144
86
178
147
122
99
149
67
138
124
119
111
140
58
109
69
110
110
111
81
55
126
164
92
37
144
84
121
112
92
74
138
111
77
139
55
61
188
110
92
92
138
122
134
144
86
55
107
180
105
122
55
110
97
101
110
127
74
124
138
107
93
77
105
138
156
180
144
55
101
140
127
126
55
67
119
58
74
126
138
149
58
122
122
144
127
69
69
81
93
128
105
58
99
126
140
105
107
168
92
123
177
55
145
91
74
152
69
92
67
122
55
74
122
77
93
92
146
55
122
138
56
103
99
112
79
86
69
128
88
105
122
124
75
86
93
55
68
97
109
68
122
37
69
58
126
138
116
92
123
79
124
138
56
78
110
169
122
104
119
122
101
195
104
128
140
55
138
69
125
178
92
105
110
109
55
80
122
167
178
103
122
139
83
111
87
169
110
126
110
163
105
169
139
118
127
126
127
37
131
124
126
178
126
117
105
126
146
122
55
102
138
110
109
103
79
107
180
126
95
129
122
104
56
83
138
79
124
55
92
119
104
104
128
126
146
74
127
79
119
55
110
139
77
144
109
86
104
104
104
55
138
115
105
55
92
110
110
55
105
122
92
131
119
105
139
92
55
169
92
123
110
92
55
92
124
106
72
134
118
124
110
106
92
110
75
92
79
92
79
152
126
61
105
143
112
164
112
105
67
92
156
55
111
126
148
112
86
99
138
110
146
122
112
119
163
165
124
167
92
126
140
92
138
92
99
107
95
140
68
55
104
146
110
67
122
109
138
144
111
123
171
110
58
136
138
122
135
75
68
67
99
97
199
93
67
127
105
67
110
146
109
139
79
83
106
92
105
109
55
178
114
55
169
67
126
146
122
144
104
93
105
58
127
138
109
55
169
93
134
105
169
55
68
67
92
134
92
135
177
162
138
144
178
92
119
104
130
115
171
144
77
122
55
122
56
113
99
55
37
132
138
55
56
127
110
88
110
126
110
179
122
76
79
122
126
120
92
123
55
92
169
79
122
92
148
110
104
144
55
152
92
56
69
117
58
105
92
81
109
128
111
124
108
126
110
56
55
110
165
122
122
110
100
67
83
124
127
92
99
162
92
118
124
122
55
148
126
98
37
120
89
146
126
105
146
139
123
122
146
92
148
158
148
140
55
105
55
69
89
178
133
124
69
67
55
122
164
92
86
109
69
135
105
131
110
105
101
138
93
97
139
105
144
105
92
37
102
83
98
92
67
122
77
75
92
84
100
122
92
122
110
109
92
162
132
110
98
92
99
122
75
104
124
99
114
122
56
110
130
92
109
130
127
77
122
119
154
130
104
64
110
110
105
126
92
55
92
178
111
128
55
79
95
67
91
152
171
93
92
68
37
146
122
145
92
178
56
105
126
55
105
119
163
92
55
103
122
37
127
67
92
128
91
105
117
92
130
144
92
92
92
136
115
104
58
120
107
87
148
92
56
138
121
77
86
105
152
58
55
102
131
83
67
97
135
91
112
72
67
158
55
67
67
77
92
167
92
119
92
126
93
140
106
110
99
78
146
126
122
126
110
55
123
120
75
89
103
123
126
146
131
148
107
164
105
131
138
92
104
97
144
68
134
99
118
92
110
92
122
55
86
139
152
91
168
37
163
55
109
139
37
169
116
119
99
134
69
92
101
92
105
105
139
103
171
152
132
127
104
56
111
58
92
104
135
56
105
77
55
139
92
55
138
105
69
93
58
109
93
92
97
127
37
104
77
104
122
74
97
89
122
122
138
169
122
126
123
139
102
104
93
122
109
113
178
105
125
92
122
117
109
67
84
97
79
68
92
68
89
37
37
89
92
146
134
104
114
97
77
122
158
110
138
111
110
167
129
128
37
55
105
37
112
127
134
104
126
55
146
103
58
55
139
104
110
135
69
126
138
126
92
69
111
105
67
114
119
55
56
138
91
126
58
113
95
92
123
80
93
110
92
146
105
58
105
115
105
87
160
58
162
119
105
122
93
105
123
127
141
68
75
134
102
93
146
92
105
126
95
128
92
180
37
104
111
138
126
83
178
105
92
55
93
55
99
104
37
146
125
92
89
122
86
119
56
110
140
105
93
110
149
114
122
122
56
97
92
144
103
112
139
69
122
124
146
69
91
37
104
122
122
92
127
119
110
67
109
122
99
152
101
119
118
93
75
124
55
151
124
128
77
169
104
124
69
136
69
92
146
149
37
111
138
79
79
92
127
37
138
163
55
117
102
150
178
181
55
92
145
93
180
122
103
110
56
112
130
123
138
123
123
162
55
160
105
99
146
93
110
140
144
93
140
123
104
55
92
114
69
134
84
102
127
56
119
104
138
122
79
93
169
126
79
118
74
104
56
131
178
138
56
92
118
91
93
127
93
74
92
105
94
92
56
93
110
105
92
178
104
110
131
110
127
152
37
67
69
124
122
110
139
58
110
93
122
56
92
109
92
146
97
110
146
74
100
131
93
107
55
124
146
92
67
86
126
105
146
69
105
100
95
146
104
96
138
93
56
74
199
152
92
69
55
148
152
126
67
146
169
126
92
58
93
100
110
107
105
110
171
56
122
178
178
110
104
146
88
128
106
77
126
68
178
91
105
37
120
74
138
150
122
168
119
139
110
104
152
105
105
92
120
100
145
101
178
127
137
68
102
92
122
122
129
138
92
132
110
126
146
76
144
178
91
107
152
105
105
84
93
160
58
92
56
148
56
127
140
55
139
127
128
109
134
126
124
127
110
37
125
105
140
67
111
92
122
128
138
104
139
55
110
105
97
58
168
92
123
108
107
57
92
105
37
119
144
92
111
55
124
134
112
126
58
122
152
152
91
164
163
127
168
104
126
93
79
83
112
140
56
110
111
138
140
117
104
86
56
122
93
92
110
136
119
105
92
119
124
122
89
93
122
109
69
171
114
122
128
115
110
147
122
127
93
79
134
105
86
110
138
99
104
105
97
111
139
92
105
152
110
109
192
110
79
69
79
126
152
79
58
122
69
146
67
130
127
67
122
91
140
86
99
79
58
110
105
144
68
103
164
58
105
56
122
86
55
110
56
74
122
58
67
56
92
79
152
105
69
92
144
67
58
107
138
107
134
93
55
68
105
136
100
110
100
92
114
138
55
55
75
58
124
55
79
92
128
55
104
119
122
77
180
111
110
55
74
91
104
138
110
124
111
55
92
127
110
122
55
109
89
86
127
128
118
120
69
67
93
138
56
105
106
55
93
106
117
180
110
58
93
126
105
136
182
99
124
122
55
130
97
75
91
55
122
105
171
138
37
128
122
123
91
162
74
138
86
120
138
131
107
122
55
110
67
69
127
106
144
75
134
122
91
126
124
124
132
101
79
91
56
119
91
95
110
126
129
110
99
67
122
128
109
140
37
127
84
105
56
122
56
122
100
126
88
100
112
92
86
92
68
112
119
105
89
77
101
152
169
114
138
69
37
169
144
145
165
168
122
98
92
105
100
162
37
93
104
148
105
122
67
99
105
110
134
112
102
138
55
160
92
134
192
127
58
56
55
69
58
37
37
58
122
146
92
88
110
171
80
75
55
93
126
127
37
55
148
105
158
92
171
122
107
92
178
142
110
152
127
67
128
122
114
86
92
37
134
138
138
97
93
169
169
110
126
149
138
152
110
122
92
69
165
75
56
122
55
86
122
37
122
67
67
75
75
81
96
55
126
57
92
99
69
140
74
148
105
86
119
111
56
105
163
85
55
37
107
126
69
139
138
152
122
126
92
102
67
144
37
56
58
146
105
86
128
127
114
104
87
126
114
104
112
152
79
92
152
58
144
74
126
55
126
92
77
109
120
61
111
105
110
55
140
92
69
92
111
178
107
123
126
84
89
122
77
103
105
104
79
110
92
120
55
75
77
92
119
86
128
136
164
179
127
108
93
118
92
148
104
105
104
56
99
107
104
93
122
144
56
163
109
138
69
139
110
92
145
114
178
98
128
92
169
127
178
123
83
55
127
132
158
79
93
137
144
92
68
56
140
134
92
126
126
139
122
69
91
92
92
122
131
148
127
99
178
89
103
123
69
37
146
140
78
77
140
110
104
139
152
111
74
86
92
146
148
178
138
140
92
69
89
105
97
126
137
105
178
107
37
127
126
109
178
110
158
99
55
144
105
68
152
142
121
58
92
104
127
127
152
106
135
124
118
91
56
105
126
55
119
56
111
110
144
98
171
97
126
129
110
86
123
139
131
115
92
37
99
111
56
178
93
56
135
152
110
152
92
119
56
93
93
91
104
139
138
91
103
55
122
120
92
138
56
74
128
55
112
112
100
127
55
103
114
144
93
104
92
178
138
178
104
102
91
152
178
178
146
126
100
100
122
83
37
138
110
121
69
123
126
79
105
146
55
67
56
162
144
144
138
152
135
158
92
127
75
74
92
77
138
77
136
55
77
93
131
58
115
56
108
92
79
128
105
114
189
139
126
93
104
100
139
126
83
37
77
126
93
58
103
106
132
124
117
98
144
117
92
122
118
67
55
56
134
111
108
164
109
109
92
136
171
145
144
126
67
136
55
128
168
55
108
128
55
58
56
146
105
169
92
131
84
110
67
140
92
88
111
92
148
131
147
105
105
178
56
139
122
178
91
69
55
139
104
126
114
112
86
107
81
68
67
137
163
138
123
114
144
105
56
146
105
144
104
144
104
58
57
138
99
122
165
58
55
99
37
164
145
103
76
105
110
93
117
148
138
138
99
58
118
134
119
107
84
128
67
110
107
128
92
178
109
152
165
92
67
138
93
83
168
55
91
111
109
128
99
83
99
92
138
93
79
126
105
127
136
139
93
55
110
124
135
110
110
119
86
109
124
91
140
55
55
140
105
128
145
104
144
162
103
58
159
75
55
110
91
111
109
171
102
112
99
86
121
92
55
65
128
111
92
55
138
55
92
55
92
56
160
146
126
146
93
119
56
98
58
152
104
86
79
107
105
139
91
146
92
55
112
98
109
158
86
55
131
119
104
126
67
138
127
55
139
84
92
146
92
110
67
138
134
56
75
72
138
169
127
110
58
93
107
128
118
122
102
179
110
146
69
178
126
69
122
67
127
78
79
55
56
92
138
110
118
148
127
110
139
162
134
146
99
172
93
178
127
56
92
142
171
55
99
67
77
178
144
58
163
97
104
146
77
105
122
122
128
104
55
105
67
122
147
126
127
169
92
139
79
122
105
105
92
102
80
68
148
111
91
122
68
109
102
78
140
141
37
67
58
138
139
132
67
122
145
106
86
56
104
138
126
111
79
128
55
75
55
99
130
109
67
105
110
163
138
92
93
110
76
55
105
126
104
152
138
55
126
93
131
86
55
55
105
92
56
110
92
55
180
100
92
128
138
169
103
105
93
127
137
79
74
182
55
92
92
75
106
110
77
122
92
92
55
58
163
164
138
56
98
122
92
126
92
134
150
104
126
55
126
67
169
110
37
92
105
126
144
134
74
104
128
109
123
92
140
69
81
93
105
103
37
152
91
55
122
128
114
92
56
93
95
56
56
67
96
178
139
111
105
37
144
55
105
83
144
37
55
58
105
110
131
75
151
152
115
110
92
92
91
105
86
93
68
144
123
105
95
124
67
65
126
163
86
75
144
126
139
104
55
119
138
139
67
142
55
103
92
93
171
79
138
123
108
98
109
127
55
128
137
92
68
107
171
126
69
122
92
123
126
93
97
83
127
92
107
68
127
103
144
132
56
37
111
146
93
56
92
110
67
178
105
69
171
123
124
105
112
107
122
133
120
92
98
55
117
89
138
105
141
123
92
84
110
125
92
123
122
100
144
124
130
86
92
104
77
96
58
132
144
37
136
127
58
124
55
118
128
146
127
122
105
92
138
93
121
135
67
92
122
37
110
69
137
123
122
110
144
55
55
126
104
77
103
68
67
72
86
56
108
152
92
122
126
126
139
122
124
109
122
92
129
152
110
148
92
167
77
102
92
77
122
180
138
76
110
77
55
134
126
127
37
95
143
126
127
67
126
86
92
55
134
110
126
103
92
118
99
124
55
92
92
138
138
92
88
92
67
134
74
144
109
56
92
110
124
100
55
104
128
137
122
145
110
55
167
55
138
107
110
75
103
139
121
158
74
122
55
91
105
127
104
127
139
92
145
152
92
126
146
169
58
105
93
114
67
109
111
105
68
132
167
104
67
86
117
104
107
92
55
110
97
127
144
124
144
93
37
68
138
86
122
134
92
56
92
67
111
169
110
92
92
117
91
92
138
124
119
122
75
124
55
74
92
105
138
105
130
64
74
109
99
77
73
126
128
111
55
55
68
105
92
56
100
122
111
144
55
139
152
117
169
122
74
139
110
139
122
55
125
146
124
92
112
58
104
104
122
139
188
142
102
105
56
67
93
146
109
105
171
139
58
98
122
98
122
55
171
37
171
110
127
92
102
199
126
130
92
103
168
134
110
92
105
74
160
98
75
169
99
79
111
92
178
138
105
92
55
119
168
180
93
127
149
69
146
79
119
74
138
111
105
178
138
37
139
127
148
86
110
37
188
122
93
169
67
104
129
104
74
105
126
58
138
126
126
88
64
103
152
77
88
105
97
58
148
136
55
123
67
127
55
139
110
91
123
139
103
104
88
146
110
111
162
37
107
139
138
104
55
128
91
110
146
92
120
152
111
75
137
117
126
139
67
128
105
130
110
92
55
130
129
37
58
129
69
162
75
152
126
119
120
110
126
178
127
83
75
138
56
105
55
68
144
139
103
107
75
131
67
144
144
134
56
56
111
92
92
102
141
167
99
134
112
140
146
76
111
119
128
92
86
58
138
67
125
110
55
92
138
128
138
126
110
160
75
79
83
138
83
55
104
92
92
140
93
162
126
37
55
67
169
146
55
126
110
92
137
139
138
99
134
139
123
110
103
92
178
103
92
77
128
69
122
122
122
146
98
99
75
110
178
55
138
122
138
138
67
95
96
37
109
169
178
91
55
104
83
67
127
169
110
109
86
144
92
75
102
58
112
37
92
75
56
55
111
75
164
77
110
92
55
68
37
104
180
74
158
67
178
144
138
56
119
58
107
67
92
105
105
169
171
91
103
124
91
165
138
145
92
126
158
149
136
79
89
112
97
124
148
92
56
134
180
110
163
146
107
91
56
105
109
68
97
93
75
93
92
114
122
93
55
79
117
103
55
37
178
94
127
56
89
110
105
121
91
110
105
55
139
92
65
108
108
110
127
55
132
58
127
132
109
84
107
110
105
105
106
77
100
55
152
104
86
123
108
67
169
138
137
93
178
122
67
123
110
152
105
92
122
137
127
91
67
86
164
93
152
93
139
56
67
93
92
93
84
160
93
128
37
87
84
80
79
116
126
178
146
93
162
37
55
56
138
119
122
178
126
109
138
126
99
67
138
122
104
107
93
92
74
138
93
103
104
84
93
126
122
139
178
146
106
126
37
84
105
144
67
55
127
55
131
77
86
123
105
55
130
105
83
58
99
67
146
104
110
121
104
94
122
102
106
104
83
37
92
178
67
111
99
86
55
67
104
122
112
103
146
148
110
113
86
92
144
132
163
97
56
97
111
119
120
126
91
92
148
93
55
56
130
122
149
138
146
144
110
139
126
123
160
98
138
110
69
83
144
98
117
37
89
98
138
92
56
144
144
92
110
122
128
136
126
37
110
104
79
146
91
79
55
37
55
124
144
41
67
74
110
104
75
123
68
55
92
109
146
139
109
122
67
141
122
102
58
86
126
103
92
105
92
136
86
122
100
89
169
97
67
55
123
139
55
105
132
55
127
138
75
169
105
110
92
181
92
146
124
77
92
55
103
156
92
180
139
145
92
110
139
178
123
129
69
55
105
138
169
99
144
124
152
122
58
100
107
136
101
92
92
105
106
76
105
92
56
93
122
92
110
128
145
126
163
146
116
67
123
163
138
126
100
55
135
126
129
131
55
110
93
105
105
110
122
148
119
99
138
189
67
127
67
109
67
120
123
169
136
105
138
144
92
75
92
104
105
180
103
67
69
144
138
92
158
152
94
128
101
86
56
139
146
97
97
110
92
110
85
127
88
144
104
112
67
122
97
55
180
87
55
55
83
107
104
92
75
152
140
168
79
146
93
37
55
163
55
74
94
146
84
109
132
103
121
69
160
112
105
103
92
92
110
138
123
110
95
138
56
108
122
105
92
107
148
56
168
55
92
171
79
92
122
138
105
55
77
77
58
107
99
93
86
169
105
129
138
93
99
37
58
145
37
105
97
75
146
80
144
75
135
130
109
92
104
56
117
137
67
169
79
86
108
93
104
119
123
131
58
110
178
67
68
127
92
74
67
114
74
171
37
110
67
119
122
139
89
110
92
86
92
92
97
55
110
92
92
145
141
91
75
140
97
171
77
97
122
105
107
122
105
86
91
126
110
156
92
95
37
92
55
56
110
102
103
119
110
88
104
92
69
105
93
131
138
169
146
55
127
163
122
180
140
105
101
107
99
178
119
105
37
104
56
56
132
138
180
37
139
152
74
78
100
55
178
92
92
116
110
79
119
93
92
55
58
92
88
122
122
86
180
92
168
126
122
123
99
103
177
93
122
67
127
77
95
105
126
142
110
144
146
122
67
171
101
55
146
122
67
92
123
178
56
120
74
127
79
111
126
69
79
144
55
56
103
169
92
129
144
121
56
112
88
104
127
105
78
67
55
77
105
37
102
122
102
105
77
98
103
105
146
101
83
77
122
169
83
110
135
107
136
81
110
81
178
101
132
124
75
56
95
111
92
146
128
111
92
103
169
37
134
110
92
132
152
91
105
104
168
55
132
126
145
152
126
92
86
110
79
55
139
77
92
123
119
168
122
93
111
126
165
138
55
132
115
101
131
79
56
110
84
105
86
67
55
103
67
127
126
88
67
137
114
110
37
91
56
86
89
127
92
93
124
119
84
105
152
55
141
109
128
127
123
37
107
124
126
86
145
134
55
105
138
146
104
144
89
126
92
102
127
128
178
127
92
169
127
93
138
104
100
74
128
139
83
178
102
152
126
110
119
107
110
128
55
102
109
152
126
120
104
115
138
139
92
79
92
99
122
95
83
100
107
109
142
69
119
98
103
92
125
99
81
95
102
74
104
92
99
55
79
67
79
111
67
142
105
55
104
79
128
105
105
127
110
118
55
178
92
144
139
55
139
97
55
139
105
105
124
135
55
108
132
171
136
105
56
92
92
100
148
127
92
67
119
126
122
96
79
79
135
104
138
91
86
122
139
93
92
92
83
171
144
126
120
92
37
110
138
100
37
147
111
139
55
97
148
178
67
104
96
58
83
56
140
105
104
148
93
92
149
109
55
119
111
98
192
169
110
134
127
75
127
130
121
72
138
92
92
111
83
169
83
37
103
92
92
144
128
93
188
58
98
89
138
138
74
125
56
128
178
92
158
67
56
69
138
146
69
102
126
83
108
126
124
130
88
93
56
107
55
126
144
77
121
97
146
84
138
93
137
56
104
55
103
55
122
92
111
92
74
100
37
122
178
106
158
93
55
55
55
111
87
127
99
67
92
108
92
111
110
138
55
91
138
178
92
82
105
110
110
99
96
139
122
138
97
74
178
138
114
92
146
92
109
107
162
97
37
104
68
55
156
102
128
108
97
126
138
105
163
142
122
124
93
37
139
140
37
178
97
93
122
92
131
121
92
119
138
37
152
138
86
162
86
136
130
69
86
56
56
83
58
109
93
55
160
124
127
58
68
77
167
67
130
135
89
55
86
109
115
126
122
92
171
104
132
103
131
158
55
104
99
101
146
93
139
92
105
103
67
79
104
188
111
152
143
56
107
118
138
132
104
55
37
69
141
92
104
105
130
55
126
92
139
127
76
138
144
119
146
158
103
104
111
92
79
105
134
123
58
139
128
115
92
93
110
146
128
92
81
97
64
125
152
144
74
111
79
105
37
138
138
92
119
110
124
98
127
55
56
97
69
132
92
178
75
104
178
163
128
138
89
37
72
92
152
178
126
144
178
147
104
56
110
110
56
58
86
127
119
124
64
126
89
107
91
69
91
110
126
158
122
92
128
105
123
128
142
92
105
58
100
92
139
133
103
139
167
152
88
126
149
97
95
138
138
67
105
102
37
169
55
79
127
105
37
92
74
171
86
107
93
77
55
79
55
107
97
92
77
167
158
93
105
107
77
92
93
145
171
37
92
126
138
55
92
92
126
126
123
108
86
101
104
92
152
140
122
56
127
56
67
105
93
103
56
107
105
86
178
110
134
122
88
123
122
103
93
58
139
138
58
121
139
92
86
107
171
131
124
91
92
77
99
92
75
103
140
119
88
95
148
139
37
162
124
92
140
81
86
134
144
67
134
102
69
144
75
83
167
58
138
112
67
86
123
92
67
111
132
79
182
83
124
93
136
92
178
127
122
124
56
77
92
127
95
55
146
86
152
92
144
93
67
93
110
74
37
56
67
92
110
138
110
93
139
105
158
87
119
92
58
122
105
126
92
86
77
105
97
75
75
162
92
126
168
127
138
55
55
110
103
84
99
112
104
97
109
92
79
171
138
84
111
139
135
105
92
126
79
114
163
86
102
134
106
110
122
79
139
93
110
123
110
56
77
119
131
125
128
119
58
37
148
105
86
126
110
139
126
92
105
67
123
108
139
130
118
138
158
104
126
89
126
138
86
105
69
91
67
138
126
67
130
69
139
127
126
139
139
37
55
93
68
168
122
55
144
122
56
128
91
122
77
158
122
68
55
128
122
137
37
139
145
92
56
136
128
89
56
92
114
128
128
128
107
131
110
107
109
178
110
119
110
67
189
136
105
178
58
55
150
107
123
104
111
145
104
86
110
56
67
105
104
56
86
102
100
111
130
139
140
104
56
178
119
55
110
92
126
37
126
122
111
178
110
178
138
75
67
110
127
140
126
55
141
93
79
104
74
81
67
152
122
93
68
138
101
132
56
111
126
132
105
107
75
110
67
146
128
122
126
92
126
110
111
110
104
104
93
178
169
146
98
152
117
56
134
136
122
109
99
122
105
83
99
75
55
92
92
138
171
113
110
37
123
130
55
122
139
92
152
67
117
114
140
132
92
105
118
92
131
79
75
122
107
69
105
137
178
69
92
67
122
92
93
131
138
104
74
55
127
128
93
140
122
144
122
126
138
75
134
112
77
79
112
55
138
69
84
86
110
92
78
104
87
178
69
56
89
119
100
84
101
127
110
119
126
105
92
74
55
110
58
145
55
169
122
134
156
105
37
55
92
163
56
107
144
146
55
56
146
77
164
144
132
92
144
55
126
55
77
124
139
148
74
104
67
126
67
128
122
55
162
91
85
92
93
122
55
126
146
122
138
145
127
171
92
55
92
152
83
110
79
122
138
109
55
109
152
104
180
126
148
92
69
65
126
178
171
56
67
86
118
126
138
126
99
102
55
139
104
79
126
75
93
103
143
104
124
104
122
140
104
55
119
98
67
91
83
92
152
105
138
83
144
138
58
127
86
138
144
140
107
67
77
97
101
79
79
126
101
122
105
92
128
104
58
123
144
84
102
69
106
127
92
92
123
178
140
92
97
103
77
160
110
124
110
131
127
126
55
99
105
67
132
152
75
77
140
146
91
55
114
128
168
105
144
67
149
169
93
81
93
92
100
99
156
111
144
106
104
91
140
146
152
74
55
105
112
79
126
56
107
105
56
134
92
55
67
144
68
103
115
122
104
110
139
56
56
162
128
67
122
178
79
92
127
105
77
77
104
99
110
92
112
69
78
117
37
120
115
56
169
69
158
138
69
134
58
111
169
127
99
92
132
126
126
178
146
178
122
91
109
69
158
93
163
56
92
58
58
56
104
69
120
77
138
77
103
105
55
105
67
104
99
178
55
110
55
69
68
56
105
92
107
122
131
103
122
55
37
126
126
110
74
140
124
55
160
83
138
128
67
98
92
122
127
126
55
103
123
101
122
138
55
134
153
103
37
91
105
95
128
119
81
132
64
37
124
138
165
139
110
74
55
67
141
105
148
89
92
93
134
122
58
92
92
103
79
117
99
92
152
92
127
120
92
126
56
103
110
128
69
92
134
122
114
122
126
55
92
92
55
74
56
109
148
105
75
80
127
100
122
92
74
93
128
140
126
110
139
104
119
162
120
93
91
138
122
137
80
110
119
74
108
37
75
55
105
55
159
77
126
144
37
115
105
92
128
171
122
110
107
83
146
115
122
127
67
163
134
110
126
69
56
141
74
109
108
106
55
99
55
73
109
105
73
138
100
37
92
114
110
119
171
110
79
109
160
93
94
119
77
129
97
126
55
92
84
58
56
92
126
138
93
55
126
114
138
55
125
105
165
86
58
92
118
55
126
146
103
122
126
138
58
110
109
55
86
139
86
130
79
92
148
120
148
91
127
128
128
123
74
76
110
105
83
122
110
56
101
118
100
92
110
126
152
37
122
104
117
132
148
102
93
92
67
55
105
55
134
126
58
132
92
105
91
75
92
92
131
69
106
109
58
99
55
169
165
130
93
93
138
37
110
126
114
168
152
103
92
132
109
58
105
79
152
132
146
109
127
92
74
131
122
55
93
123
93
168
104
55
57
108
110
110
128
56
128
110
79
37
110
132
124
129
138
91
55
86
146
79
58
77
111
83
92
55
69
78
92
93
140
79
55
132
79
58
117
93
122
126
88
84
100
105
123
109
58
169
115
111
103
86
107
56
139
110
95
67
128
93
123
105
105
171
169
104
126
56
122
94
122
74
104
91
92
93
139
117
104
124
55
105
79
86
74
92
55
56
125
99
122
110
182
91
110
102
178
127
92
100
67
169
88
128
92
138
136
111
127
144
86
55
146
99
152
86
119
55
144
126
111
122
92
121
152
97
118
67
117
126
110
103
104
152
178
86
145
139
88
91
126
58
103
119
123
109
118
123
139
67
114
93
110
138
126
67
128
126
136
111
152
110
110
132
126
163
144
126
169
67
110
107
92
58
91
138
138
91
91
105
98
55
169
124
134
56
119
138
139
122
93
99
55
88
122
105
164
122
101
110
110
67
103
103
55
122
86
109
126
124
102
86
122
69
132
58
148
178
104
140
92
99
178
104
138
56
106
123
84
92
56
127
132
72
114
122
92
110
104
83
92
55
134
98
140
37
144
158
58
105
144
81
92
55
99
99
110
109
145
75
93
89
69
92
125
107
99
109
140
56
122
107
131
122
99
171
171
122
127
97
109
77
97
152
67
126
124
138
119
104
67
132
130
149
152
55
129
162
111
146
122
55
91
55
122
138
109
165
79
75
111
178
110
139
86
152
152
91
55
110
37
129
91
79
102
58
58
126
55
164
58
169
146
105
56
79
84
86
97
148
123
93
111
69
101
126
152
89
140
92
139
137
58
84
104
117
84
145
171
93
139
114
86
92
140
178
98
103
124
67
100
100
105
122
146
146
67
122
69
92
169
169
107
68
100
126
110
122
110
146
98
119
104
152
169
58
123
87
100
91
163
86
152
122
163
126
124
109
92
67
104
105
169
92
163
123
105
138
101
128
126
127
86
101
68
138
91
89
69
178
138
122
68
97
119
107
37
171
55
123
92
92
138
58
104
87
58
188
79
120
92
109
110
102
92
55
79
97
138
79
122
105
134
86
122
83
84
127
75
105
92
86
122
126
67
163
105
83
138
56
92
139
122
123
128
141
178
119
131
65
104
180
128
100
110
152
37
119
84
103
160
93
109
107
99
105
111
132
135
105
144
69
68
105
135
110
127
55
123
117
37
122
104
111
120
107
136
134
103
99
81
92
126
189
80
93
126
110
79
79
123
105
91
138
55
119
126
111
136
131
164
95
152
128
56
55
152
103
107
86
127
75
122
134
128
86
122
120
67
119
92
122
110
138
55
130
105
104
37
110
103
115
110
93
139
56
110
74
87
55
139
74
114
171
93
126
140
92
56
110
95
111
55
104
92
146
37
139
122
165
92
131
103
105
67
75
122
138
97
140
83
110
146
99
138
138
138
105
108
104
56
104
163
148
56
126
122
93
56
105
128
86
108
178
56
86
107
67
58
119
55
96
55
92
144
92
108
146
105
122
105
86
104
86
69
86
139
135
55
171
91
110
127
92
92
126
58
93
104
104
152
105
119
55
110
138
139
104
92
128
55
129
123
69
79
126
37
135
160
110
164
110
67
149
105
171
177
110
138
55
152
92
109
58
105
105
67
124
106
92
127
84
93
178
123
92
110
127
119
180
138
92
146
58
105
75
109
37
128
111
37
99
120
146
68
92
69
126
74
69
58
114
125
67
104
119
92
138
58
93
122
110
152
114
93
86
100
126
128
105
126
140
138
109
86
92
134
119
96
107
152
83
92
118
69
122
105
93
55
56
67
119
105
180
171
126
119
107
91
79
67
55
126
126
86
126
127
104
94
92
92
104
122
99
69
120
144
77
79
138
135
141
152
74
138
75
123
148
105
146
75
158
74
152
105
99
56
101
110
108
178
178
138
144
74
105
105
58
126
58
105
93
122
107
144
92
67
75
137
146
79
74
112
110
146
122
117
67
96
169
112
55
138
56
114
122
93
75
113
92
84
117
78
152
148
109
126
56
86
171
128
118
67
144
92
67
100
126
119
79
134
91
131
178
75
67
92
100
88
178
139
148
114
69
110
152
86
115
126
37
99
91
136
128
110
131
58
75
138
92
105
92
126
103
105
80
93
86
126
138
92
123
127
105
92
93
101
132
178
58
92
111
114
68
56
55
147
127
68
139
127
126
118
152
127
105
37
69
105
122
144
127
99
92
105
158
113
122
118
105
96
92
124
99
55
124
92
86
105
37
74
74
37
110
132
67
122
88
139
120
55
124
94
134
127
138
92
139
55
55
138
97
93
105
178
74
148
91
109
55
58
74
92
91
123
158
126
146
138
92
93
102
86
110
139
103
152
92
134
122
95
106
131
128
80
55
109
110
102
89
92
83
126
126
77
158
122
146
132
169
68
55
69
139
87
55
162
104
83
92
105
67
105
79
107
111
105
55
122
127
123
97
126
139
55
132
58
92
144
123
75
148
148
140
139
139
67
110
146
139
139
78
86
144
55
126
126
93
93
67
83
67
92
83
104
120
109
122
142
117
55
126
118
56
79
126
119
127
91
95
142
92
123
74
75
105
144
55
152
110
119
110
117
55
55
37
175
93
139
92
105
91
104
103
55
132
127
122
178
101
144
92
163
124
131
123
37
126
136
124
126
92
92
111
180
131
91
55
178
55
56
86
56
74
105
92
137
86
58
181
79
109
111
128
127
68
58
111
86
144
86
104
138
92
128
93
118
77
37
92
134
126
139
92
79
92
93
122
130
128
142
68
144
103
100
138
69
138
105
86
126
97
58
178
92
122
110
122
67
92
75
138
55
128
92
67
152
55
55
105
107
139
67
92
92
55
92
105
111
110
126
92
146
139
117
56
118
74
74
128
115
106
131
67
130
125
105
84
37
104
68
158
93
148
109
55
37
84
144
122
92
93
58
150
67
55
127
79
182
123
92
180
56
144
127
68
104
110
134
55
92
69
67
107
74
93
164
162
69
144
55
104
122
105
92
55
171
152
144
58
122
56
126
83
109
105
120
118
123
104
110
92
105
119
140
106
139
188
128
130
178
144
93
56
109
103
152
110
121
146
67
122
55
156
134
171
105
67
178
122
92
128
56
109
67
55
104
129
110
69
37
110
158
58
79
99
103
67
124
37
37
182
119
126
122
37
91
120
92
130
77
122
128
126
138
109
97
67
138
128
134
58
58
93
79
84
58
69
58
93
56
111
141
119
67
126
79
162
122
55
148
56
93
130
178
75
126
110
67
104
104
119
123
130
75
99
91
67
120
122
152
67
75
148
123
56
91
99
102
122
146
129
112
152
126
89
138
110
99
122
75
109
92
67
92
37
127
163
92
111
92
125
128
110
113
99
152
126
56
110
92
105
55
58
55
68
139
126
140
55
126
107
144
123
55
92
110
107
92
120
122
86
127
108
55
138
104
128
86
114
55
91
69
92
67
118
56
122
67
109
131
99
129
139
79
107
79
151
124
119
55
105
37
109
118
55
97
75
86
109
103
97
122
144
169
169
144
127
92
55
152
123
110
127
140
111
86
56
105
67
67
92
37
119
138
75
122
148
144
85
105
178
92
122
68
67
126
93
69
118
123
120
135
67
56
97
86
98
110
110
139
136
105
152
138
105
91
128
86
92
91
92
37
56
99
109
98
140
98
93
126
178
122
132
98
109
55
121
169
178
127
86
93
119
110
146
55
144
93
129
131
169
132
145
107
110
83
105
139
77
86
130
118
128
105
144
119
67
84
178
138
128
104
58
108
126
58
189
138
129
110
83
118
105
111
92
119
167
101
152
58
119
146
110
128
139
110
93
109
152
138
158
92
105
146
69
123
123
93
128
91
171
139
146
138
55
133
67
94
84
111
144
68
69
91
134
110
37
127
110
117
158
67
138
92
75
92
105
121
107
68
118
138
107
80
108
126
167
106
55
108
110
69
77
100
122
86
67
167
178
138
146
110
58
69
110
79
58
130
126
178
111
146
79
122
92
110
125
37
83
135
126
103
91
92
56
55
138
107
145
105
105
92
104
137
56
107
148
127
92
135
138
88
55
119
127
88
128
91
106
122
55
105
126
92
122
128
94
139
138
67
110
55
68
109
128
126
56
37
126
145
56
103
79
169
93
104
55
79
105
105
98
79
58
96
58
79
119
109
129
74
163
110
55
127
110
58
37
105
97
83
122
67
67
55
132
85
92
81
126
122
122
107
146
58
134
101
55
56
123
105
163
67
104
126
140
109
105
55
135
162
92
67
152
105
121
108
97
75
67
149
55
101
103
55
67
109
92
92
98
110
121
111
99
92
178
93
37
171
105
93
146
67
58
135
100
104
118
128
122
110
127
127
55
72
114
110
92
79
105
111
58
144
111
96
144
68
80
105
55
55
138
134
67
74
129
67
37
125
93
105
110
93
131
67
180
92
163
160
86
86
122
107
104
168
128
109
79
97
144
118
110
105
139
107
144
144
178
69
127
67
55
93
67
55
55
92
103
69
134
56
55
178
69
134
132
178
124
169
113
138
93
84
55
87
69
55
107
134
124
135
37
110
124
115
144
127
97
93
180
146
146
178
104
122
87
120
110
92
67
103
37
55
37
146
122
55
67
110
118
152
110
69
98
91
88
105
135
68
134
111
149
55
91
37
126
104
100
135
58
83
55
92
83
134
118
169
103
140
122
104
99
126
110
55
99
56
138
86
169
139
88
105
167
93
93
105
103
146
104
67
79
114
89
104
92
92
55
137
75
119
105
55
126
111
178
130
92
92
105
144
138
99
145
97
138
92
122
137
163
55
140
119
111
104
72
119
127
104
138
93
127
128
128
138
58
68
145
69
126
92
92
79
107
77
89
112
105
37
105
99
124
122
158
74
37
98
138
69
56
84
69
89
105
79
68
124
99
55
104
114
107
117
75
79
132
138
119
146
144
55
58
99
100
85
128
92
67
139
142
55
83
68
130
93
132
69
100
68
144
127
122
134
123
98
122
148
110
107
88
106
178
67
103
138
119
158
158
148
93
93
120
92
55
92
110
84
162
144
126
109
103
107
126
110
128
37
138
105
37
92
105
167
122
78
110
122
119
104
107
171
130
104
55
112
77
143
93
122
114
92
56
146
101
74
138
55
180
163
144
67
141
93
122
104
58
91
141
128
110
119
104
111
55
139
128
55
55
104
112
56
152
105
56
110
93
69
69
105
124
132
98
78
74
89
107
110
69
138
105
124
37
105
178
104
92
134
119
138
122
86
56
67
167
152
145
137
104
126
92
97
146
180
130
114
67
127
139
86
122
75
124
114
116
55
93
138
91
67
178
112
103
92
37
118
134
67
93
114
55
102
130
55
100
92
92
103
56
56
37
92
93
93
110
178
106
140
110
104
130
65
126
83
89
55
126
93
69
149
79
144
122
169
138
98
127
136
80
74
105
118
122
37
140
130
75
165
120
110
122
110
144
69
95
84
168
92
163
98
93
80
91
67
168
55
58
81
108
61
123
74
75
127
144
124
56
74
92
55
93
146
72
110
56
92
75
152
74
98
92
127
109
69
91
134
92
79
168
104
126
138
99
92
75
138
102
84
68
37
127
91
110
144
152
130
88
91
79
67
144
105
93
92
110
116
69
99
74
105
37
105
122
144
125
104
111
114
86
86
139
131
142
158
56
110
122
67
122
151
199
126
67
97
122
37
108
120
56
92
92
69
91
55
123
92
126
126
146
122
163
128
197
58
124
129
122
58
74
104
92
138
108
128
124
131
131
104
55
163
128
122
107
92
74
92
92
99
144
171
104
55
138
136
88
105
163
77
126
140
105
178
92
102
55
115
77
116
134
92
124
138
67
84
92
105
93
95
127
124
129
126
143
138
122
93
171
152
144
101
86
122
55
134
104
101
197
169
105
123
104
67
93
55
104
92
97
56
93
102
72
144
92
126
84
97
138
97
55
144
110
105
111
110
37
158
105
67
92
126
130
85
88
104
169
179
55
89
128
99
79
37
115
144
110
109
138
139
99
97
92
123
110
93
92
127
150
93
74
74
107
56
146
110
92
134
169
86
94
127
138
126
111
106
55
67
146
55
126
67
126
118
86
105
163
127
110
124
86
128
107
104
152
83
128
56
122
91
92
145
142
142
122
55
100
132
137
55
55
121
138
56
144
92
105
168
37
105
122
123
75
144
55
111
105
105
69
110
171
144
105
56
68
83
131
126
73
99
146
92
74
55
105
67
126
105
169
119
107
103
178
126
107
122
110
56
139
122
138
102
122
58
55
109
110
122
138
115
107
110
171
152
99
81
91
169
180
56
165
180
91
168
58
152
110
93
92
122
138
75
92
122
128
84
139
171
122
122
77
100
110
180
69
55
120
91
143
110
92
139
138
148
92
67
109
56
178
106
92
123
102
92
37
130
152
152
83
139
199
110
67
86
92
128
55
93
92
74
105
110
83
105
104
105
138
110
119
69
132
107
80
122
106
104
75
69
128
119
126
93
134
111
167
105
137
152
104
92
37
119
56
117
83
84
140
86
126
92
163
126
103
100
139
169
79
103
148
105
92
86
77
164
153
92
55
55
92
92
97
96
109
67
105
87
92
100
93
127
92
122
119
126
110
92
105
122
55
103
92
86
58
55
110
92
93
152
105
109
92
105
122
119
171
127
55
105
105
92
55
93
119
122
134
180
122
74
74
137
55
67
55
105
137
56
37
127
79
132
110
105
140
110
177
130
86
131
92
86
56
92
169
126
37
122
105
146
92
126
138
130
110
117
93
127
178
138
122
93
105
91
104
58
160
138
178
58
158
92
55
127
168
178
103
92
67
104
105
92
106
123
105
68
77
80
91
160
77
58
117
107
119
134
99
56
55
110
144
129
118
152
119
104
128
138
92
94
105
104
128
55
55
55
105
79
91
134
55
123
138
128
169
110
113
101
146
152
105
178
122
68
91
144
103
110
99
169
105
126
169
110
139
144
109
169
55
101
178
126
37
178
92
92
138
106
110
73
104
98
126
118
168
99
75
105
37
109
93
126
74
140
123
127
92
110
56
138
122
138
92
104
139
97
127
134
120
109
84
56
110
83
55
92
126
122
105
137
69
140
114
95
110
69
113
122
69
91
127
138
111
148
55
79
88
37
111
109
92
122
110
148
109
140
141
77
79
93
126
92
127
131
103
104
91
126
120
56
140
178
112
58
79
110
69
127
128
144
118
55
138
104
130
104
107
146
58
56
139
144
58
134
104
134
92
168
117
110
138
105
84
112
84
67
152
102
169
95
55
130
122
92
92
140
120
140
122
103
132
93
127
147
124
146
55
122
93
169
93
110
122
74
55
79
37
110
159
122
127
67
138
93
58
131
128
93
75
107
101
74
152
93
126
138
128
78
126
132
104
119
123
96
119
56
55
122
144
55
126
138
55
152
79
55
105
92
126
109
37
127
119
105
105
67
111
126
67
128
128
138
132
171
104
37
120
83
100
119
158
107
55
107
138
104
142
55
103
120
119
160
79
102
107
146
110
127
86
140
139
122
111
110
67
171
127
132
67
104
93
162
178
124
139
178
55
131
110
132
55
105
132
134
114
105
58
109
139
122
134
144
73
92
86
126
107
55
92
138
104
144
134
110
104
56
138
93
79
92
105
126
122
140
127
168
138
78
105
93
84
165
93
138
105
180
122
37
55
69
123
110
74
165
75
92
91
106
86
167
37
138
139
37
77
56
138
152
104
138
58
55
148
146
144
124
106
138
128
178
74
171
139
103
92
110
115
75
128
110
55
118
117
108
92
92
37
178
56
92
122
136
92
55
55
98
80
58
169
134
138
127
92
111
84
105
146
139
120
58
178
156
58
88
126
126
103
138
55
137
178
93
92
122
67
67
92
122
95
117
87
119
126
105
158
98
86
110
127
105
127
87
105
135
104
123
144
134
92
67
99
55
84
58
105
123
144
128
55
84
92
92
89
56
93
138
110
138
88
129
105
79
146
56
69
144
138
139
178
55
126
110
107
67
97
93
169
163
126
158
152
110
138
110
112
69
144
114
67
111
95
69
146
109
138
126
146
55
79
58
140
86
91
118
134
122
109
37
69
107
111
132
105
79
123
92
99
37
128
97
158
93
103
79
124
138
58
119
126
115
122
126
152
107
92
55
134
103
105
74
98
105
144
146
126
123
148
55
107
126
56
122
126
93
92
164
107
171
56
116
69
67
178
105
122
104
148
67
56
109
104
67
105
67
134
130
138
55
58
146
122
109
168
160
67
86
123
163
107
123
126
111
146
55
109
123
79
92
126
101
131
138
118
92
132
99
92
127
147
169
148
109
98
138
103
144
152
79
86
92
122
105
127
134
93
58
93
69
111
110
146
105
153
105
58
92
134
91
37
104
119
124
77
124
105
91
94
56
75
104
56
55
55
138
55
127
86
77
79
144
75
55
56
139
123
138
92
104
104
105
111
105
92
99
92
105
126
55
91
93
100
56
107
110
122
104
127
129
138
91
58
107
110
58
56
105
126
105
92
110
85
112
37
123
112
102
67
130
108
115
105
110
105
92
105
122
130
91
158
77
57
148
111
126
92
83
138
105
137
126
74
138
114
93
123
86
128
144
103
122
171
138
106
138
92
79
111
125
55
75
56
126
68
128
122
86
56
92
111
152
110
110
93
110
140
108
79
74
92
110
37
127
55
55
92
67
105
110
100
138
134
110
99
56
122
126
134
197
103
107
56
123
75
144
110
92
138
138
105
134
114
110
138
89
99
58
127
160
119
86
138
178
89
127
140
138
135
139
104
79
67
167
104
86
69
56
122
119
144
178
67
130
105
37
146
92
122
122
109
122
138
92
178
160
122
122
110
56
74
139
55
92
105
104
37
75
110
58
79
97
37
124
169
110
110
58
91
92
167
98
37
139
91
171
146
92
41
169
75
110
102
178
58
124
144
86
98
105
158
105
105
79
122
73
75
137
148
84
77
92
89
92
58
99
117
160
138
152
92
102
152
56
110
123
105
124
171
152
127
104
122
132
104
124
92
77
93
128
152
131
83
112
140
77
92
97
126
100
126
105
122
86
86
152
55
111
132
134
89
139
132
152
124
91
105
162
56
126
55
105
58
67
74
37
104
86
130
104
55
148
86
110
77
136
134
99
92
112
139
105
163
126
111
67
152
56
138
55
146
117
111
87
91
102
67
104
92
67
146
128
99
37
106
100
103
118
104
86
37
116
118
110
74
127
105
178
56
110
132
127
68
67
77
146
110
115
77
139
134
77
110
118
110
92
76
56
131
74
103
118
171
75
138
92
111
115
119
69
109
136
152
122
138
152
105
126
92
37
130
124
139
160
127
93
104
93
109
144
115
98
152
67
103
178
132
127
100
115
131
92
83
58
56
107
122
69
136
79
91
93
79
67
144
55
74
146
67
100
97
126
109
178
99
56
84
180
100
37
55
105
105
152
138
127
178
144
77
178
84
128
104
69
147
93
144
125
86
107
86
117
119
37
86
55
93
93
126
105
138
122
112
84
138
138
84
104
134
67
130
138
75
37
117
102
139
92
108
152
110
123
55
126
77
91
106
163
101
55
105
97
56
78
111
104
126
111
135
92
86
127
92
114
126
126
67
103
144
137
98
110
79
74
69
56
99
115
163
140
110
129
92
69
171
138
178
58
178
105
115
98
103
110
105
104
104
138
138
83
107
110
104
144
137
89
67
128
137
108
103
106
99
122
83
93
55
109
146
93
67
138
56
127
79
169
103
77
109
92
86
178
140
55
92
98
105
140
110
37
109
84
92
124
69
101
104
178
169
146
128
125
58
56
127
68
144
164
158
88
140
67
80
55
75
92
130
122
55
111
110
123
139
122
134
122
92
138
169
56
105
107
92
171
165
110
149
110
86
37
120
138
93
98
104
69
92
145
91
109
109
127
110
110
126
148
93
55
130
106
128
139
104
138
55
68
67
123
178
136
104
55
139
56
113
110
137
99
139
108
139
91
138
122
108
67
188
158
126
122
138
126
138
114
123
146
67
56
139
92
58
105
92
83
99
67
138
119
122
109
114
106
82
115
55
100
92
144
91
55
37
109
168
109
132
131
83
138
97
55
86
80
58
128
102
124
139
67
119
138
107
103
88
111
58
169
68
126
102
69
56
110
58
105
119
55
105
92
146
122
105
110
93
104
104
131
37
114
92
136
146
110
138
55
168
111
127
126
169
146
128
122
107
131
56
126
127
109
58
110
128
56
144
79
55
138
139
139
126
92
110
122
136
55
55
79
123
37
148
37
74
178
55
69
128
58
140
118
163
93
134
142
93
104
104
148
37
74
178
98
146
104
100
124
92
55
145
139
123
107
67
127
144
92
99
148
122
134
103
123
86
106
92
112
148
129
139
146
142
92
37
79
138
138
127
134
130
74
89
139
93
127
55
152
68
127
140
136
67
91
99
110
122
124
108
148
112
68
127
92
110
56
37
105
111
109
113
93
132
104
128
93
69
125
122
123
139
126
144
134
110
67
122
138
126
58
115
99
75
98
114
100
109
127
163
144
55
111
37
100
122
37
65
68
91
100
152
99
109
122
92
154
97
104
83
55
110
55
169
95
86
67
123
112
94
169
110
103
56
128
67
119
91
128
144
67
86
119
55
108
138
95
142
127
104
103
92
75
110
138
92
123
80
91
86
56
123
122
128
93
105
130
144
135
84
121
37
99
67
105
144
110
86
92
91
75
55
152
118
134
138
111
110
92
127
119
124
152
138
142
178
98
168
92
114
144
122
79
107
105
78
110
101
144
152
58
110
136
149
112
139
110
92
178
93
55
72
104
55
92
139
86
124
124
69
105
92
122
178
158
110
128
92
105
122
58
92
93
55
128
110
91
67
92
111
122
110
106
77
123
122
126
152
146
128
146
92
105
146
127
55
160
132
86
119
111
111
77
115
119
126
105
164
105
104
77
152
88
91
162
55
84
110
105
138
127
67
128
108
75
75
138
126
86
119
55
146
138
110
122
55
132
96
107
138
129
93
67
106
79
104
106
126
122
122
178
105
79
92
55
81
111
67
81
169
55
138
37
79
92
92
125
55
67
105
144
138
56
77
105
37
92
111
92
138
127
120
91
56
61
128
93
92
110
122
122
165
134
92
138
37
178
91
67
124
105
92
122
68
126
74
92
107
89
126
92
138
139
144
115
107
92
144
152
110
122
129
146
56
37
56
125
55
122
119
93
111
135
103
138
78
114
144
122
124
56
99
110
120
123
56
79
67
110
37
92
83
140
129
86
105
79
144
126
110
105
148
69
114
139
123
132
169
117
55
156
104
92
37
56
86
144
107
92
122
101
122
58
110
110
104
138
101
113
92
79
199
139
169
105
56
169
110
151
122
105
67
37
114
103
163
105
171
138
109
86
103
105
128
98
86
55
125
137
92
140
137
92
55
84
105
55
55
89
92
144
138
122
67
81
37
122
37
97
140
165
55
67
84
74
111
95
110
84
122
144
126
124
122
83
55
86
55
67
122
86
122
93
123
104
106
139
110
79
152
119
117
84
117
122
92
91
138
98
123
97
67
86
110
153
109
75
72
69
91
85
126
126
102
126
138
92
126
152
58
105
92
138
93
55
58
131
152
122
120
103
86
111
111
127
56
68
138
86
124
56
104
55
104
160
55
128
110
37
110
56
67
140
126
92
178
122
55
69
163
93
67
178
79
126
93
124
126
67
107
146
92
37
68
37
128
92
132
74
127
134
89
55
126
142
93
92
119
74
152
138
128
119
56
122
69
136
126
103
98
120
122
105
99
138
55
130
92
138
58
104
121
149
124
79
107
107
126
101
79
74
164
138
146
169
110
109
144
67
79
109
55
92
55
37
91
119
150
37
145
158
181
122
139
67
110
37
138
55
110
64
106
152
114
123
126
141
122
98
131
127
67
178
132
67
105
180
86
92
122
74
92
139
86
122
104
110
77
118
74
119
163
106
93
95
109
67
122
94
122
127
74
106
171
139
112
126
140
86
55
58
169
144
110
138
108
152
163
78
106
86
139
84
75
163
93
110
178
92
55
178
131
139
121
91
103
74
93
178
86
56
144
110
92
77
106
122
117
86
110
123
84
147
92
112
92
142
126
79
55
92
122
111
126
122
138
139
110
105
105
55
74
58
123
75
96
93
139
140
64
139
69
55
139
93
68
55
58
104
103
104
126
179
93
84
145
67
67
110
74
152
112
55
122
138
138
180
92
104
119
132
126
92
104
92
55
122
109
67
110
139
124
127
135
131
58
55
88
110
100
127
126
92
110
110
127
145
86
109
152
138
165
105
37
67
37
67
117
137
110
148
94
104
130
55
97
178
168
145
138
67
106
107
162
58
122
74
110
67
67
122
178
92
67
92
55
92
105
55
85
141
99
56
95
93
126
109
68
92
92
138
106
103
37
169
37
93
105
69
110
123
123
67
111
127
104
92
81
89
108
92
110
104
178
105
67
119
171
139
109
126
130
101
139
124
110
123
83
55
93
92
138
118
138
134
86
77
104
67
122
110
55
67
103
144
69
138
108
138
128
114
92
122
140
104
108
138
126
152
92
58
163
178
115
126
128
128
111
126
67
138
112
92
92
67
146
139
152
103
124
55
77
122
117
131
138
56
104
110
92
110
136
122
79
67
127
132
104
92
123
92
152
77
144
110
95
152
58
92
37
126
126
101
109
126
128
105
122
146
92
72
139
58
56
55
110
109
139
69
147
108
111
131
109
67
86
105
140
105
126
92
108
79
114
138
109
112
37
67
114
128
138
67
55
160
37
124
139
75
105
134
91
58
99
100
105
67
158
72
119
131
109
106
104
95
56
37
104
180
138
124
67
139
126
169
117
144
92
111
89
92
119
144
110
169
111
178
152
105
86
37
117
182
123
104
160
92
96
178
128
127
138
138
180
74
55
55
104
138
138
105
86
122
58
37
37
91
55
79
93
105
67
58
56
105
178
105
108
126
149
73
93
122
152
171
134
81
110
55
152
146
126
56
67
114
139
129
69
126
88
93
127
56
104
37
152
178
169
69
106
165
129
138
139
139
128
122
123
113
93
74
128
55
138
93
75
87
123
69
178
122
110
69
67
91
37
122
110
138
137
79
129
123
109
122
152
55
95
110
67
92
111
126
164
108
91
65
107
178
146
58
69
119
93
109
117
91
152
110
140
109
105
110
55
122
80
109
101
56
112
110
112
55
127
105
171
144
97
107
152
106
146
134
79
103
92
104
104
131
132
129
74
105
86
105
55
100
120
105
137
78
68
122
105
122
69
92
178
79
134
138
104
92
37
110
58
55
122
67
86
138
77
109
122
127
138
110
127
156
92
76
117
130
127
169
97
110
126
110
92
105
163
123
67
92
81
105
126
100
95
115
122
119
148
165
128
152
104
86
93
86
74
178
128
67
92
69
79
92
158
99
127
134
139
115
119
138
93
93
128
105
105
108
140
105
102
99
142
126
178
122
101
91
93
110
77
104
140
110
106
144
99
58
119
130
120
75
92
114
105
92
115
152
113
119
94
104
105
138
55
75
118
119
55
58
138
69
105
92
128
180
67
69
67
105
58
109
134
95
110
146
91
67
139
120
110
144
115
178
110
95
109
138
56
122
56
56
146
99
56
142
92
122
110
111
56
103
109
56
58
139
152
119
139
118
122
56
171
110
180
69
126
117
97
92
103
139
169
99
138
171
93
111
85
66
91
127
119
104
169
123
93
101
93
93
58
138
152
105
55
55
126
122
110
110
126
105
126
126
69
75
122
67
91
105
138
78
144
69
152
110
122
126
101
146
169
112
107
58
138
92
99
152
152
138
138
142
152
110
79
109
111
105
111
124
146
144
79
122
91
74
86
37
146
136
99
138
92
105
128
122
101
126
68
92
67
104
114
105
140
119
127
104
162
56
55
139
67
56
126
130
100
108
103
126
112
105
83
37
92
105
108
67
61
103
110
138
110
92
178
110
107
104
91
137
117
130
67
123
93
105
92
92
139
93
79
91
182
110
84
67
56
55
56
97
104
106
122
95
104
122
105
58
67
127
119
128
56
138
103
160
86
105
156
136
138
101
144
80
69
119
82
58
74
104
67
115
92
152
140
55
58
86
102
68
55
93
126
122
119
144
126
114
111
171
127
134
144
138
122
84
148
104
98
171
55
67
122
55
138
95
122
95
93
69
55
91
69
87
146
126
107
107
131
37
55
104
146
105
137
128
56
110
123
74
125
67
109
113
67
162
93
102
69
93
121
134
104
110
75
69
152
144
123
169
91
92
169
139
105
95
139
95
123
122
55
75
127
138
67
69
74
122
127
138
158
77
127
94
138
55
152
103
105
122
128
92
56
158
138
105
93
86
120
126
64
37
158
151
95
77
120
55
92
138
55
91
136
80
169
146
92
55
79
56
123
95
126
72
105
104
104
167
107
117
55
111
55
104
138
110
122
67
119
100
67
92
167
122
108
79
91
93
67
93
105
55
109
122
107
93
102
130
136
138
55
125
107
130
138
122
105
55
115
105
55
120
104
158
138
97
114
74
98
110
134
95
163
122
74
122
171
169
83
103
152
56
105
139
69
96
103
178
124
67
105
101
105
163
138
126
92
103
138
113
68
131
169
110
136
55
92
122
119
139
109
55
142
144
114
55
139
110
144
140
104
127
104
177
105
122
127
122
158
104
105
79
135
58
55
178
98
107
105
114
129
126
84
92
110
163
141
58
148
169
55
97
104
136
110
144
139
110
169
104
109
142
103
182
122
92
92
110
152
67
178
128
104
168
146
124
98
112
109
119
123
127
55
167
58
75
92
56
113
122
123
126
67
140
83
67
117
146
145
56
148
124
148
180
93
110
106
93
182
163
55
55
128
139
105
138
109
86
126
141
106
75
132
136
88
86
55
104
79
128
134
120
149
104
134
122
56
111
92
74
144
135
158
112
55
134
127
109
107
93
103
92
79
169
178
105
105
58
152
75
92
56
123
118
110
122
95
104
169
138
77
92
110
92
105
79
98
178
112
75
88
148
138
93
104
105
55
67
169
119
37
112
126
99
74
105
109
122
67
99
152
138
128
56
55
93
98
77
171
134
138
100
144
101
55
148
104
108
169
56
56
138
103
37
122
110
140
55
138
91
110
130
55
139
83
92
125
84
123
126
92
110
109
126
79
126
69
138
58
92
169
134
138
168
138
97
126
119
86
84
117
178
79
105
55
64
92
105
109
95
84
55
102
92
67
112
138
128
93
108
122
123
124
110
102
75
115
119
83
112
122
169
146
141
79
58
146
123
89
139
67
146
126
169
83
122
122
105
138
93
37
67
86
144
146
110
84
146
69
79
92
124
99
92
110
139
82
146
167
74
92
37
131
122
109
148
128
58
150
67
137
131
58
80
139
134
93
79
58
145
86
122
110
91
110
144
144
92
122
68
92
109
132
146
180
74
122
120
55
123
69
117
67
139
56
126
93
91
126
122
67
104
93
74
91
153
126
126
86
128
56
105
110
69
111
75
93
130
105
55
152
138
86
55
74
88
77
77
92
74
55
67
101
104
144
141
55
93
55
109
99
168
127
93
139
110
110
136
138
104
105
56
130
56
146
123
106
122
79
58
140
79
104
105
139
64
169
134
55
146
138
67
99
138
178
77
105
103
110
105
117
148
105
126
118
126
122
110
152
126
110
124
162
126
134
131
140
169
135
109
138
93
91
110
55
99
89
97
136
171
127
152
114
113
126
110
118
93
81
167
93
122
37
135
136
124
55
83
92
110
55
92
128
92
109
110
37
92
110
169
138
127
89
93
109
177
37
92
127
152
122
130
74
107
144
80
55
91
120
178
145
108
107
92
56
138
130
167
83
107
136
93
138
138
55
161
139
110
86
199
95
67
136
110
127
58
122
171
171
93
55
56
110
67
122
126
102
138
99
55
136
117
107
116
92
93
167
58
105
139
67
105
139
68
69
99
105
75
122
99
144
69
105
55
56
92
135
68
110
139
127
91
139
92
105
136
103
145
55
122
122
139
138
55
126
110
93
110
92
114
111
178
99
92
67
56
92
146
37
104
122
134
138
95
74
106
84
122
75
56
58
131
114
56
56
139
93
58
109
37
67
146
110
178
152
117
103
122
122
110
140
168
67
138
68
92
122
92
122
68
152
138
146
98
130
130
67
130
77
111
152
37
86
138
139
55
139
130
146
92
138
109
122
122
104
86
157
95
130
69
67
105
138
58
104
138
134
67
139
74
81
37
122
92
92
100
135
152
93
178
92
119
138
105
135
107
110
86
83
105
91
164
109
178
37
122
125
144
168
104
98
105
119
162
92
81
93
180
138
92
37
144
99
164
146
117
167
138
86
37
67
126
146
112
124
110
111
55
135
126
88
95
103
67
56
119
55
56
67
69
67
138
92
188
118
86
122
147
122
99
152
93
69
77
162
93
103
92
92
165
37
75
115
123
74
72
178
111
56
81
139
86
122
105
86
58
163
162
127
164
55
126
107
92
117
134
126
125
141
144
75
131
75
108
103
93
56
105
122
122
103
92
126
58
138
104
92
131
91
128
130
99
131
107
160
55
68
126
169
67
83
138
126
165
105
55
127
83
134
37
110
86
104
127
67
93
122
144
115
146
104
77
105
55
124
92
97
56
92
92
120
122
84
165
92
105
163
99
69
93
146
126
103
169
138
105
92
169
163
93
138
135
134
110
56
75
138
167
156
79
128
128
110
68
89
55
75
56
149
99
138
89
92
106
171
126
92
132
178
92
69
138
110
124
152
178
138
91
55
130
110
138
158
109
146
138
122
55
126
84
109
92
122
93
56
79
92
110
122
109
104
93
67
111
79
121
109
84
107
139
93
110
119
110
55
110
92
37
97
130
122
105
77
104
104
92
99
126
99
105
105
55
58
93
101
171
86
110
55
95
67
138
37
110
103
178
119
55
110
97
92
74
168
67
122
178
55
134
56
109
169
93
171
152
138
56
167
105
168
110
144
95
128
123
105
122
69
92
110
127
122
56
55
124
97
128
110
126
37
79
76
120
126
126
55
107
105
69
67
69
169
92
92
114
122
139
138
110
98
122
169
80
80
92
91
99
93
127
55
111
98
104
119
197
97
77
69
91
92
55
97
55
149
123
110
138
73
128
138
134
111
126
116
75
144
160
127
79
107
67
91
107
92
55
55
80
169
130
146
96
95
144
130
111
75
55
91
79
122
92
152
86
67
134
100
119
37
84
55
126
92
91
126
126
129
117
148
92
92
123
99
77
92
93
99
99
67
109
58
136
138
128
122
91
73
58
103
165
138
56
122
105
117
74
111
139
104
122
138
107
122
119
180
105
126
146
152
79
134
92
171
103
122
104
135
110
123
119
105
124
111
100
91
134
152
146
83
110
158
134
110
69
92
148
122
144
114
181
100
167
138
131
127
84
132
111
105
118
139
138
131
109
118
109
110
92
119
108
138
152
99
134
178
91
122
93
108
55
111
178
120
126
55
110
67
111
145
109
160
149
127
127
75
122
67
67
134
92
144
92
126
126
122
123
93
113
105
152
122
56
109
37
67
148
92
146
87
122
138
126
144
56
126
134
79
110
110
146
124
158
92
104
107
55
139
67
56
146
67
128
55
102
109
95
139
67
110
69
67
182
67
65
169
132
55
79
81
107
77
129
122
104
105
104
131
92
130
128
74
91
130
111
91
110
152
134
110
105
144
127
92
138
55
134
122
93
83
105
107
104
67
111
92
67
102
149
55
130
92
92
94
99
56
105
58
138
93
138
92
107
78
107
130
139
89
58
134
162
139
102
86
123
138
55
171
86
92
78
105
93
67
99
124
122
92
79
83
152
139
178
94
37
55
81
106
37
56
122
110
67
58
134
118
158
77
126
163
146
110
67
69
98
83
120
100
122
92
75
86
127
110
74
126
152
55
79
132
103
178
169
92
37
96
104
128
146
105
144
92
86
164
138
74
138
104
126
99
75
127
111
98
67
58
105
79
104
122
69
86
79
55
126
119
92
75
130
108
86
69
152
92
118
103
58
86
178
131
93
122
104
37
128
56
67
138
138
144
99
105
126
128
93
105
109
139
55
107
76
171
129
93
139
93
95
148
110
126
118
144
74
177
171
105
146
122
122
123
74
135
122
92
105
37
105
122
77
74
122
109
122
126
124
105
55
144
110
127
163
97
69
130
58
138
105
55
80
122
105
81
139
75
188
104
136
135
125
110
95
139
92
139
92
126
79
128
106
105
126
100
108
128
112
122
134
55
68
55
144
122
146
75
110
111
101
92
92
74
37
126
122
74
67
110
92
69
128
55
91
69
110
105
93
139
55
122
92
169
122
110
152
146
110
93
126
110
93
130
56
69
58
128
127
55
67
130
123
146
55
92
110
94
104
77
123
124
146
164
104
37
119
92
130
122
104
99
105
106
141
119
138
93
100
56
109
139
93
122
110
124
110
169
91
75
119
99
128
122
74
79
139
122
93
104
37
130
104
104
91
99
139
104
56
123
37
127
124
55
67
74
93
146
105
92
105
58
138
168
111
131
117
131
56
93
83
122
104
138
138
69
122
126
105
122
178
126
134
56
67
163
144
144
111
126
104
130
127
92
118
110
56
106
167
98
119
67
92
126
105
99
101
127
69
107
55
122
127
124
67
92
144
104
93
89
92
138
67
74
127
86
117
92
55
111
97
128
127
37
105
111
103
92
144
142
83
152
103
140
114
146
103
122
126
99
105
67
131
74
91
119
92
114
105
111
110
91
55
93
138
139
55
126
122
115
92
105
89
140
119
134
75
56
122
37
111
93
107
148
55
123
107
100
111
37
92
37
110
69
120
146
67
111
104
105
104
122
178
146
146
132
128
127
122
178
94
37
178
169
56
118
112
171
131
169
55
74
109
92
178
153
152
92
139
56
56
103
146
56
126
127
110
80
55
86
146
93
134
178
92
152
126
93
92
169
110
97
139
124
127
106
67
111
92
106
147
108
178
122
122
92
56
105
144
123
37
80
69
131
138
37
37
92
131
104
124
138
128
138
67
67
55
111
140
97
107
110
110
109
104
55
134
122
122
152
117
104
127
127
100
69
144
148
93
92
105
69
126
58
115
105
124
126
105
110
101
84
77
67
92
75
126
126
94
122
83
110
105
92
88
58
55
126
86
79
67
69
130
103
105
69
104
105
163
92
110
178
97
58
93
122
91
56
144
130
103
99
103
138
83
163
93
55
139
109
37
121
105
74
132
55
120
92
104
169
110
92
105
92
144
55
124
122
84
37
180
97
55
103
138
92
92
86
126
55
109
104
130
114
92
125
86
100
137
93
126
92
138
84
139
109
107
79
93
126
139
124
144
93
106
56
58
55
67
169
37
92
106
168
55
74
55
58
105
37
118
104
123
78
95
86
91
122
169
168
104
146
178
126
126
80
148
74
139
122
74
92
67
119
127
86
122
93
92
56
144
128
92
132
92
92
92
84
127
128
124
146
119
122
56
107
86
86
92
67
117
97
132
105
149
152
58
141
122
134
112
105
122
67
138
92
171
68
111
55
122
178
146
110
92
37
122
114
146
93
138
169
127
55
110
127
86
110
86
69
79
123
125
37
127
74
55
122
137
56
138
110
111
122
109
105
105
67
144
55
56
111
112
178
86
126
178
77
147
93
109
55
188
140
58
55
89
58
102
169
92
58
55
107
37
138
118
101
55
92
122
102
178
92
110
126
92
110
37
124
126
100
67
128
122
75
81
67
56
55
103
102
160
110
83
110
78
91
118
105
105
126
104
37
126
128
119
144
110
81
132
145
97
99
138
91
92
120
126
104
122
129
122
105
113
86
99
122
55
55
103
130
178
126
146
92
140
110
120
69
101
135
146
67
118
122
56
122
137
160
77
105
105
139
110
111
89
58
126
67
100
80
126
152
55
74
83
69
104
160
58
77
171
144
91
124
114
139
69
93
75
86
126
119
55
126
126
99
101
110
92
128
92
55
119
83
67
152
69
104
128
158
86
112
152
119
144
56
146
55
105
37
58
91
67
112
137
67
55
56
126
147
127
69
109
105
122
56
110
99
158
144
55
112
93
117
139
92
126
92
105
123
128
122
83
103
103
122
104
74
115
91
104
104
69
122
122
77
138
92
110
144
67
122
56
85
58
67
92
99
123
67
122
83
99
108
134
148
138
105
117
122
122
111
67
75
58
104
55
124
105
122
105
92
58
168
119
169
37
92
160
89
102
84
140
126
107
92
120
195
37
126
140
67
83
79
95
180
92
56
55
93
115
67
122
107
122
110
99
93
104
55
122
128
74
127
124
148
144
67
56
103
122
69
95
134
67
178
74
122
56
148
56
118
101
93
152
126
107
132
80
55
67
119
97
119
93
158
152
138
69
56
91
152
147
127
56
93
79
93
69
139
148
122
124
74
139
69
99
55
146
56
138
126
128
128
110
152
127
102
37
56
109
105
139
104
92
58
74
92
119
99
37
84
124
145
123
126
138
188
126
144
37
58
92
105
123
75
126
104
130
135
91
56
109
92
138
92
109
181
56
178
144
104
56
146
127
105
89
163
105
111
151
127
131
93
92
110
92
69
110
91
37
105
119
102
92
167
92
127
100
128
144
178
110
99
67
128
67
83
91
135
97
139
68
108
134
74
58
86
92
91
126
58
104
126
89
55
55
163
144
107
79
168
127
127
86
104
68
55
146
56
110
58
117
55
162
55
105
104
128
119
105
119
37
140
128
134
56
87
118
67
110
103
56
126
55
55
114
93
37
79
127
107
127
37
89
139
119
121
55
92
119
107
104
86
92
92
122
138
103
92
145
110
105
77
55
122
56
105
178
77
110
134
132
177
55
81
134
139
139
92
92
139
67
122
126
144
87
124
37
105
146
75
77
130
122
169
105
105
163
67
92
87
124
91
111
55
67
134
93
121
58
86
67
77
192
93
104
169
84
144
92
99
138
83
168
126
140
127
124
122
77
138
110
117
110
37
110
77
128
138
55
126
122
99
88
86
92
69
126
145
58
138
55
139
68
93
124
131
86
58
103
95
127
55
75
132
92
92
55
122
88
77
126
140
104
122
124
79
105
126
79
105
110
103
128
98
105
127
55
105
124
99
126
92
55
114
122
55
92
126
146
135
100
69
169
37
140
103
104
104
119
136
130
100
69
122
99
126
69
178
105
126
126
105
79
169
111
122
124
122
98
92
105
104
99
110
55
75
56
37
126
55
135
55
80
122
99
67
77
109
119
81
109
105
126
74
105
37
92
158
119
110
87
55
128
67
126
126
152
123
144
67
104
93
127
169
69
126
108
152
180
77
103
178
107
139
110
58
122
117
149
91
92
106
111
128
98
140
127
182
122
93
95
105
111
97
140
67
180
55
55
105
69
99
92
160
103
144
146
127
140
126
79
55
37
105
181
120
93
37
178
103
55
142
148
111
104
92
92
78
89
138
144
109
134
92
110
105
122
109
127
120
142
134
92
112
114
68
111
69
81
55
138
104
126
130
92
126
105
110
141
126
56
122
99
163
140
138
126
122
55
107
91
95
105
99
122
178
111
136
56
128
122
97
119
169
110
120
138
146
118
92
86
118
93
165
95
92
110
128
105
106
92
92
37
75
128
122
83
55
105
138
55
138
137
126
122
105
122
105
79
67
91
91
55
101
109
92
75
111
75
92
67
146
156
80
146
140
86
91
95
83
106
110
117
110
105
93
105
56
114
138
105
105
67
116
160
91
99
55
142
131
92
112
56
105
58
119
105
67
91
139
140
93
104
128
105
122
95
128
152
108
69
152
83
137
75
67
37
180
138
122
122
117
132
146
127
92
126
67
69
110
135
93
57
126
138
37
167
56
104
93
128
122
139
108
99
126
115
110
135
68
134
55
92
178
168
95
69
92
67
68
92
122
119
55
55
69
117
117
168
119
131
119
152
55
104
138
148
123
58
99
128
146
195
126
178
105
126
37
138
95
67
55
122
68
79
105
140
56
109
110
104
110
136
138
55
131
67
122
75
58
110
109
105
160
92
119
102
69
165
135
146
105
74
136
122
152
146
115
122
146
104
110
122
144
37
92
126
138
122
98
110
86
55
55
109
58
108
93
69
178
74
163
111
37
37
138
126
79
92
118
83
67
104
178
146
169
79
93
92
132
92
152
98
88
86
92
126
126
77
146
136
110
37
122
117
77
134
105
67
129
171
99
165
126
115
55
111
56
92
120
111
79
99
169
110
143
103
55
79
165
109
69
122
110
117
75
135
139
37
112
105
160
55
139
152
169
141
178
92
80
55
93
83
113
110
122
92
138
100
92
67
126
104
55
124
91
79
140
37
37
128
79
104
110
126
37
92
83
126
92
106
124
152
145
92
58
92
126
77
138
122
93
128
127
78
67
86
126
119
55
102
100
110
110
92
134
105
126
105
55
152
120
178
178
55
146
56
37
100
110
171
139
146
119
37
55
102
103
104
110
56
140
56
138
120
160
136
127
55
92
55
106
93
178
55
109
92
178
77
171
112
55
55
104
69
122
122
122
105
84
101
112
67
99
92
134
91
105
119
152
67
140
178
111
140
92
92
138
97
120
106
76
92
126
105
126
69
167
104
85
99
37
169
93
126
83
105
105
130
126
148
123
105
138
123
127
55
168
74
56
117
111
55
118
122
139
73
139
178
105
92
148
98
111
127
138
100
81
83
84
105
119
152
109
92
122
178
37
139
128
110
74
130
114
85
55
67
178
118
138
105
110
105
180
162
91
146
123
119
138
118
126
140
104
83
91
58
55
138
178
134
124
104
74
88
37
139
119
86
110
74
92
158
148
37
103
74
110
86
104
58
127
127
122
105
93
86
55
58
129
126
177
152
92
76
89
93
79
130
92
127
119
102
88
139
93
92
104
86
58
104
111
55
122
97
92
127
105
72
169
67
130
104
131
99
115
37
136
105
105
110
122
109
122
114
98
95
120
100
110
136
122
160
104
86
110
106
142
104
131
165
37
138
112
126
120
78
79
144
178
178
144
109
136
125
77
150
92
77
107
141
77
152
110
144
67
110
107
103
178
139
142
124
92
84
110
122
92
129
117
91
134
139
147
92
105
118
100
55
146
117
69
79
55
111
122
91
95
93
138
93
146
77
79
105
139
98
91
69
134
37
74
92
56
144
93
79
149
138
138
69
86
126
146
146
67
167
55
126
110
58
92
127
95
122
99
122
122
98
105
105
92
55
69
134
148
104
126
139
110
126
123
103
99
79
134
110
67
103
93
178
104
121
127
131
55
138
92
55
146
55
67
140
119
93
83
138
106
123
130
126
122
92
120
74
92
148
74
69
118
110
92
126
67
105
128
168
114
131
105
122
140
103
67
144
126
122
123
74
140
78
68
167
130
138
123
68
93
110
126
122
119
93
74
126
55
105
81
117
135
86
134
169
105
122
104
105
138
91
120
126
124
111
110
77
199
37
126
152
131
92
67
67
93
55
105
109
105
109
110
77
128
137
92
138
56
88
162
110
67
127
115
105
122
127
105
119
139
122
74
111
121
119
92
138
114
75
134
92
104
56
77
122
139
86
37
67
152
67
126
104
128
122
88
168
111
55
126
92
103
37
105
105
104
178
92
112
126
122
142
93
178
107
107
168
99
138
125
139
111
93
122
110
69
56
144
127
93
139
55
86
148
126
105
55
37
126
68
167
105
92
84
101
92
110
105
101
128
138
127
104
135
126
134
139
56
139
128
93
122
143
55
122
92
139
110
137
109
108
126
123
67
168
120
146
124
91
89
77
101
152
101
67
178
165
162
56
180
167
103
122
131
134
74
126
142
178
58
86
55
104
139
92
138
178
104
91
132
83
92
75
108
119
152
122
125
128
58
129
103
99
55
180
92
122
119
138
121
84
92
55
92
92
77
83
135
92
127
138
138
165
75
139
89
113
146
126
127
104
127
110
126
104
128
129
67
110
103
128
138
67
127
105
107
74
83
125
158
126
89
100
75
75
128
110
55
169
93
110
105
152
81
110
55
117
92
134
97
92
55
131
105
122
100
124
110
145
92
146
142
138
122
130
95
80
126
108
144
104
83
110
78
137
123
84
122
118
110
139
68
121
77
58
56
126
139
130
138
111
92
129
138
132
92
138
178
37
122
136
105
93
67
112
67
55
111
169
99
104
77
122
99
180
144
58
100
107
114
109
122
91
119
112
144
58
55
149
123
165
178
92
117
81
100
158
56
146
102
93
123
146
127
144
92
81
89
92
93
83
98
93
132
149
37
178
169
92
79
73
77
58
146
163
83
123
79
162
114
178
119
139
144
144
55
105
122
55
107
67
92
108
75
178
107
126
119
37
117
74
100
55
127
135
104
102
128
84
95
92
131
79
83
138
110
138
145
138
105
37
163
98
138
105
115
123
84
89
167
138
140
78
104
123
37
111
55
126
128
105
109
138
56
92
83
37
77
55
167
56
131
105
104
95
99
98
178
83
105
98
97
64
138
126
105
105
67
128
108
86
55
56
110
92
110
83
100
132
105
89
56
162
74
138
126
97
126
108
93
168
79
86
75
105
111
80
95
77
55
83
110
84
107
112
91
138
148
56
132
91
55
55
139
127
97
105
144
122
139
130
122
141
140
109
119
119
169
126
79
169
140
92
139
74
117
109
105
162
146
67
158
58
92
119
69
122
127
74
122
127
99
139
110
86
152
126
91
178
92
105
58
92
117
55
56
69
55
146
84
168
132
152
152
110
124
124
56
103
134
107
84
129
122
79
104
93
114
78
56
99
146
139
145
79
124
114
93
85
134
92
79
126
124
67
178
55
119
105
169
144
93
67
110
138
123
104
79
122
55
92
91
56
55
138
138
144
110
104
138
92
105
163
122
138
55
134
138
152
69
100
139
111
146
178
92
104
152
127
111
75
126
152
135
58
97
111
138
55
134
134
144
127
122
131
139
139
86
146
93
102
126
103
114
119
104
104
92
122
110
78
146
74
138
92
122
99
127
107
139
122
37
55
111
128
58
168
117
79
136
144
129
56
120
119
86
55
104
79
64
105
127
67
102
77
92
138
98
138
145
149
92
56
152
92
138
122
55
122
86
58
122
103
91
171
92
92
92
122
55
64
86
78
75
77
104
126
123
130
128
138
86
139
89
92
139
93
125
144
88
56
150
81
126
178
106
122
120
92
197
144
105
92
127
92
108
105
99
56
77
123
119
138
152
150
178
105
126
99
126
56
83
109
86
139
132
161
128
139
37
158
122
86
105
128
89
127
144
80
126
122
163
127
104
75
126
77
135
69
92
58
67
103
92
110
93
139
79
100
37
131
142
127
134
74
107
109
112
117
56
110
104
57
178
93
146
127
137
110
104
128
139
69
178
134
37
104
126
138
110
117
56
126
79
58
104
69
122
68
104
56
126
89
91
55
92
107
91
67
126
162
58
55
37
107
67
93
102
105
37
94
105
110
74
119
91
104
58
56
83
74
104
125
127
112
122
171
91
122
178
126
99
56
91
122
68
111
152
56
92
128
69
55
104
110
97
73
101
109
127
92
127
55
163
56
163
105
122
110
128
79
92
138
67
108
92
169
111
126
120
152
132
83
134
56
104
144
104
93
126
132
58
131
37
122
119
110
91
92
77
97
56
152
136
110
105
96
55
130
55
138
105
169
95
55
86
103
69
100
79
113
93
56
101
147
92
110
77
122
92
75
127
127
103
73
171
55
56
158
112
110
162
83
93
128
92
37
138
149
137
79
55
67
74
105
152
83
103
110
152
127
55
55
91
145
144
105
134
131
105
58
102
108
111
144
99
105
91
134
107
138
77
110
127
91
146
69
104
55
104
86
152
110
67
58
138
138
107
58
114
130
92
91
104
146
126
86
68
119
105
117
92
69
122
55
97
136
178
131
125
126
127
144
67
83
67
138
111
69
126
127
91
124
69
55
130
93
105
104
127
107
80
169
77
114
107
110
144
86
131
126
123
122
136
100
55
82
93
119
130
119
148
122
142
58
152
67
69
55
92
122
110
112
37
79
107
56
138
160
86
92
103
56
169
127
77
178
55
37
91
103
55
138
179
111
163
104
92
146
123
75
99
105
102
93
151
86
110
127
67
67
105
110
126
105
144
92
126
111
127
119
126
56
89
162
55
92
74
67
55
92
148
182
105
80
104
137
152
105
152
104
122
110
55
111
56
79
95
104
127
122
67
86
55
130
130
56
67
109
67
56
167
55
56
146
169
79
140
55
119
122
122
148
55
127
69
178
144
119
138
122
122
109
138
110
126
171
67
74
168
107
163
67
110
109
85
67
168
110
144
146
122
119
105
152
126
91
169
56
126
106
37
110
132
93
105
55
110
128
118
99
56
98
146
169
56
127
56
93
96
96
91
126
105
126
37
55
117
146
140
77
91
55
92
55
139
126
122
112
93
79
79
37
109
105
127
88
92
37
178
152
83
127
110
68
55
106
93
122
138
136
134
105
118
138
142
148
112
91
55
109
138
104
69
144
55
55
97
79
104
123
126
69
110
89
110
56
144
92
107
128
136
122
96
92
92
105
127
138
67
79
55
91
151
152
120
68
67
100
122
146
146
152
136
37
67
123
104
67
79
127
67
55
138
127
55
67
142
110
134
126
111
180
163
148
112
111
139
92
105
37
83
91
79
139
88
77
67
119
131
77
127
128
178
99
126
105
119
58
126
123
104
179
178
58
92
92
117
105
55
152
67
104
92
56
136
144
138
119
92
162
122
139
117
145
56
110
138
81
109
124
138
165
96
56
67
56
180
105
77
160
144
128
138
104
146
124
55
128
105
93
89
137
91
80
110
180
37
136
69
75
103
105
110
146
146
126
168
67
142
132
105
140
104
182
138
142
37
140
169
127
58
114
67
119
67
69
131
126
120
105
55
132
92
37
56
92
69
92
92
136
37
55
127
97
163
119
116
152
67
58
110
91
152
126
134
91
127
132
55
56
128
114
165
67
99
69
91
56
169
93
138
56
137
83
138
117
130
111
129
139
98
138
89
86
139
146
56
168
55
104
105
139
144
104
138
105
110
152
108
55
122
104
67
151
77
162
139
122
92
37
105
110
122
100
98
86
58
144
92
144
55
130
98
105
128
122
122
110
122
101
55
138
37
105
97
55
109
144
104
67
130
122
117
139
101
126
105
152
152
110
115
92
111
67
152
156
99
68
122
99
138
105
139
126
109
180
67
152
114
55
111
67
85
93
137
119
92
146
91
92
56
152
122
55
97
138
110
110
79
134
134
72
105
93
93
109
100
142
104
110
178
56
68
134
112
128
117
92
105
103
148
105
92
103
92
75
152
107
113
158
119
93
105
67
99
111
107
126
126
81
121
98
55
122
140
55
130
127
111
138
110
77
55
146
138
122
122
55
84
75
55
146
92
92
142
122
56
67
128
83
138
135
92
56
119
123
138
163
79
178
89
156
55
97
126
121
92
92
139
67
55
97
144
55
109
131
102
122
146
122
105
178
117
92
77
37
110
130
138
105
152
122
55
139
122
55
37
67
77
58
122
119
92
127
110
134
104
122
139
107
109
130
69
128
96
92
92
92
102
105
86
110
91
91
92
111
111
123
105
128
93
104
152
138
127
92
79
84
165
124
79
105
108
55
92
126
128
67
144
77
126
67
55
83
92
55
169
92
58
128
67
109
104
139
178
138
55
92
92
130
112
144
164
91
104
122
128
138
55
144
138
86
112
112
110
127
146
152
104
180
145
55
84
169
55
67
110
118
95
167
138
104
138
152
126
142
126
105
93
56
86
55
92
55
69
122
88
58
55
163
104
107
126
92
69
110
139
104
110
107
180
92
148
77
67
134
111
104
92
109
69
84
83
108
105
122
74
118
118
91
105
128
107
146
55
146
103
93
105
91
110
105
55
144
128
104
144
122
122
92
177
138
134
74
86
126
103
99
110
101
77
104
37
139
127
75
58
123
92
56
129
122
112
105
110
55
105
91
110
58
110
55
67
128
112
103
79
120
138
122
93
56
56
101
37
107
37
144
152
89
115
83
87
105
163
56
91
104
107
37
167
169
103
56
67
104
124
127
105
111
128
93
86
56
146
148
111
152
75
92
140
149
55
139
91
146
178
92
109
86
37
67
92
99
92
74
152
178
92
126
83
37
117
126
56
92
171
127
122
58
119
86
139
118
136
104
119
134
104
112
69
93
178
130
140
138
138
120
169
139
58
101
37
110
101
119
55
140
178
77
110
69
91
138
129
87
104
83
122
158
56
199
122
95
104
75
126
119
178
111
56
110
71
128
123
144
105
105
93
95
110
81
110
132
121
97
113
132
146
92
74
105
105
146
169
111
56
119
75
99
55
103
110
129
140
128
92
74
109
77
92
92
109
163
92
119
41
65
138
92
86
56
146
105
152
92
75
146
97
144
168
127
130
92
126
130
165
86
126
112
123
138
138
103
169
111
111
75
58
126
142
91
111
119
108
77
122
146
145
37
67
69
163
107
107
120
93
124
131
127
110
109
146
138
132
127
92
110
130
135
55
79
160
126
114
94
134
122
92
103
91
109
110
104
127
68
152
55
67
158
128
139
110
163
122
56
91
126
93
127
140
122
55
126
64
104
93
138
109
37
108
58
92
146
110
92
93
110
92
55
92
55
169
125
67
92
137
123
95
124
128
111
178
138
169
91
75
127
67
109
138
68
99
67
110
104
104
55
55
114
144
122
67
111
124
126
114
89
126
79
92
130
105
163
55
37
142
37
139
79
93
79
105
144
79
111
68
91
138
105
164
92
138
138
126
56
138
124
105
92
169
56
107
91
105
56
178
69
55
56
56
109
101
76
37
169
99
121
56
105
129
105
55
138
92
92
91
55
58
138
131
137
138
108
55
91
152
142
77
144
107
79
55
105
139
56
56
136
79
109
169
105
92
104
58
67
129
97
122
127
67
58
55
111
165
178
169
67
124
103
152
106
99
92
110
122
84
127
55
79
178
81
122
128
126
92
121
152
92
56
100
178
178
122
92
126
105
58
86
163
169
126
127
55
104
118
136
107
56
79
67
132
104
86
138
107
56
91
110
56
127
105
55
86
37
138
120
67
79
81
138
132
105
122
93
104
111
92
67
83
126
92
138
178
74
126
110
97
124
107
140
110
79
138
58
109
105
67
138
158
103
92
74
104
92
138
105
123
178
58
138
110
67
91
122
103
148
152
136
114
79
110
109
136
69
105
104
122
105
128
112
78
111
122
146
125
92
55
158
109
160
55
117
92
56
74
137
139
128
92
79
114
93
110
100
77
139
92
110
110
105
103
138
107
132
104
58
91
69
56
101
105
100
67
91
110
104
37
89
122
114
137
92
74
104
139
132
110
110
122
113
171
158
56
119
171
144
146
124
105
110
144
107
75
55
92
55
104
140
148
110
67
137
144
140
69
113
56
119
131
152
79
118
111
130
123
79
92
69
148
144
109
104
145
138
55
55
93
104
98
77
150
126
65
55
102
111
180
74
55
56
81
99
91
93
110
128
104
171
110
110
92
139
104
77
117
138
67
122
146
119
55
104
86
126
119
164
55
126
123
75
67
109
122
138
171
93
144
110
67
89
144
91
105
83
126
140
127
58
122
148
69
91
93
68
138
105
99
92
104
104
91
138
109
119
67
138
124
163
138
178
107
145
131
140
139
123
91
140
126
37
56
109
104
178
58
92
138
108
99
105
114
138
119
139
105
58
37
103
99
138
152
84
132
91
134
92
76
119
37
139
128
92
58
92
138
125
122
67
93
148
110
138
138
107
93
92
119
111
128
123
68
105
79
139
56
164
37
97
171
37
92
92
56
177
127
126
97
127
131
56
37
119
58
152
152
165
110
134
104
110
118
84
55
77
134
107
122
110
122
114
83
67
86
122
105
146
144
79
91
55
55
126
55
138
91
93
92
37
135
127
68
127
92
86
92
92
104
110
55
101
105
89
138
123
92
178
103
91
114
119
141
92
67
86
171
118
123
67
122
115
108
163
37
93
88
144
138
99
126
55
104
114
67
139
171
139
110
178
93
138
134
130
110
122
114
55
146
107
100
128
96
152
126
104
104
74
104
55
92
134
37
118
111
120
69
92
58
104
67
152
126
111
119
74
126
74
127
109
124
138
123
130
77
119
152
131
134
55
122
122
87
55
92
92
148
110
178
79
92
110
99
127
92
111
111
134
122
122
67
138
79
91
55
56
122
74
55
142
92
138
86
92
83
126
55
110
37
69
97
137
139
119
131
58
105
93
105
122
122
109
126
120
114
93
55
126
37
91
67
126
126
107
178
89
171
80
121
67
139
88
119
55
101
58
123
112
128
136
91
110
127
81
123
65
126
37
131
105
105
118
89
58
99
126
83
55
106
37
104
55
105
98
122
169
97
164
126
119
138
128
104
83
55
122
126
37
168
92
55
126
79
92
138
124
88
92
122
107
130
152
58
136
99
160
148
110
103
92
107
92
91
74
79
107
79
119
122
122
122
156
107
192
69
171
74
122
140
68
151
139
104
106
122
55
139
146
178
105
55
93
107
139
122
95
122
147
105
107
75
144
79
104
55
92
122
169
86
101
58
128
110
116
110
124
92
110
69
125
124
180
107
138
122
37
79
178
92
163
92
58
105
37
56
55
139
162
115
110
67
111
91
92
37
122
92
67
37
110
69
83
74
127
92
105
139
67
92
55
100
128
182
138
138
111
117
93
165
104
88
162
126
132
107
118
140
100
99
103
88
88
93
92
89
94
122
123
128
122
167
178
114
56
137
180
55
150
64
109
115
56
110
121
56
104
93
126
105
56
55
144
171
68
122
101
129
92
122
134
130
104
56
55
77
92
93
126
146
138
138
136
86
122
109
178
55
105
151
105
163
139
69
86
110
199
127
141
92
37
103
110
111
91
136
149
89
124
126
122
128
101
114
92
86
104
55
102
135
110
122
84
91
111
92
69
111
55
101
105
110
131
132
105
110
126
37
101
92
104
148
109
169
102
109
93
79
114
126
144
144
128
126
122
119
55
169
110
110
109
138
105
92
139
122
92
99
79
144
129
128
110
178
74
180
67
79
126
119
144
126
169
111
144
67
105
77
75
37
127
144
152
152
92
128
101
93
138
138
112
105
139
144
56
144
92
152
138
92
105
169
58
122
152
119
136
122
92
74
92
92
93
140
81
74
124
110
92
122
92
109
56
104
171
138
105
144
92
138
56
138
124
171
123
122
111
110
92
148
137
104
107
146
58
99
122
122
169
140
93
89
117
169
92
93
118
105
92
105
110
142
110
126
138
126
67
122
138
136
113
55
146
67
148
92
92
91
126
111
89
128
139
69
67
69
122
79
77
148
152
119
139
110
132
140
67
120
125
83
171
95
92
81
104
138
126
86
75
110
92
122
104
77
142
126
55
144
105
122
138
146
56
144
101
105
88
88
76
94
132
88
70
106
87
123
110
87
120
109
69
69
128
85
101
89
128
110
102
114
99
87
90
104
87
69
128
145
76
80
126
112
104
127
69
78
67
112
99
136
97
88
93
110
185
87
117
124
119
98
80
88
129
80
164
140
91
119
95
94
72
107
175
175
131
98
96
89
124
69
88
175
69
94
121
59
175
187
95
94
131
120
148
99
115
52
174
111
175
175
106
96
109
78
120
89
121
154
101
99
78
140
119
76
88
94
67
119
56
164
90
127
56
43
163
137
107
121
79
107
91
88
164
78
134
150
147
110
76
119
69
100
96
122
156
99
131
91
117
95
69
94
119
158
100
69
104
80
89
197
72
134
110
56
125
101
107
110
114
120
71
155
115
114
88
155
80
119
80
112
187
122
128
143
110
96
80
91
69
106
72
82
98
156
95
99
69
76
76
140
103
163
101
80
80
91
89
125
80
131
120
131
80
96
133
112
134
174
88
106
99
131
161
93
120
113
102
78
109
131
151
175
129
80
115
155
110
175
96
78
78
76
123
101
131
95
69
145
69
92
139
143
87
88
112
165
94
69
94
91
119
78
154
156
96
143
154
69
94
93
78
128
80
164
109
124
114
78
120
69
80
90
122
64
109
101
124
89
69
107
121
66
99
124
140
87
121
69
107
75
87
78
69
154
112
154
119
141
111
103
118
99
90
134
114
112
120
157
78
115
172
101
154
101
163
80
160
114
176
145
125
143
109
120
119
137
78
74
103
80
107
115
101
69
118
69
107
151
101
106
107
56
119
80
107
74
90
134
142
88
175
89
127
110
119
69
129
99
80
113
118
69
144
87
134
114
69
99
77
56
58
175
83
154
109
58
80
54
113
69
84
118
100
147
117
70
102
136
109
78
135
99
93
76
131
121
121
120
119
52
138
101
90
76
113
104
87
52
113
105
143
96
134
120
194
89
94
58
76
115
175
69
80
145
185
87
150
87
78
100
107
76
112
105
138
91
143
87
175
91
103
137
88
91
78
110
175
80
69
140
76
87
99
128
136
128
93
99
87
121
89
103
117
134
109
107
93
86
114
119
91
156
113
80
91
74
99
104
72
156
84
80
78
80
156
116
94
109
99
175
80
89
52
95
87
94
80
94
119
74
160
138
76
80
136
103
91
88
134
123
153
78
98
103
117
136
79
87
80
162
120
78
87
119
134
152
104
104
140
109
69
66
119
140
109
120
80
80
99
80
151
78
163
181
74
69
154
83
73
90
151
140
76
101
110
119
83
124
103
104
116
80
80
80
56
136
107
107
161
80
82
142
127
96
104
121
69
87
127
134
79
152
73
169
76
169
76
156
104
136
114
72
109
64
83
94
93
92
128
76
69
104
64
104
144
98
69
145
131
76
69
104
80
120
78
112
137
109
69
176
94
123
89
94
56
134
171
78
87
155
165
66
123
119
117
138
80
90
88
138
113
101
69
133
76
69
93
117
146
88
126
115
105
69
100
94
106
110
147
94
80
95
99
129
88
71
127
93
151
86
102
87
156
197
125
80
115
95
154
80
99
128
109
109
122
154
78
78
104
134
78
133
88
76
75
140
94
99
175
100
54
69
119
128
108
72
80
147
89
94
138
78
80
128
94
69
115
128
146
119
106
127
107
144
74
106
112
102
105
54
142
131
99
80
76
84
72
80
69
54
122
80
88
69
153
78
89
134
104
87
137
78
96
69
142
54
88
120
154
136
82
116
97
76
112
89
121
99
128
102
101
80
90
115
76
154
125
91
69
158
93
175
154
137
175
157
174
52
100
69
110
130
101
154
112
87
69
104
68
121
135
183
136
146
107
88
151
75
110
157
70
128
94
99
140
87
78
94
143
115
74
159
88
128
111
128
82
136
155
80
127
107
80
154
69
76
115
154
118
80
107
80
118
78
80
110
164
91
107
80
91
87
121
80
107
175
110
80
154
69
118
78
80
114
112
80
89
102
69
114
107
54
107
187
80
109
121
117
96
69
121
69
80
71
100
76
119
120
87
130
76
131
80
119
80
99
80
80
107
78
87
87
104
69
100
78
76
115
93
118
96
131
81
138
117
92
85
119
126
109
113
119
94
122
107
80
134
206
80
128
78
136
154
119
106
80
76
88
109
134
133
120
89
87
106
80
103
119
164
123
155
87
80
104
119
71
80
72
130
117
164
120
131
197
99
128
85
69
89
96
80
86
80
111
120
87
94
43
132
78
119
126
96
114
76
154
133
78
100
120
130
80
93
175
154
102
110
109
102
89
175
121
67
80
175
153
154
126
123
120
119
69
69
87
99
78
60
87
78
108
94
85
69
69
119
101
87
69
115
81
59
145
121
121
78
122
130
122
119
111
69
87
72
74
105
147
175
93
150
174
100
74
87
85
143
80
80
90
80
100
115
154
136
78
80
72
76
117
96
140
81
117
136
89
67
87
120
112
115
156
154
96
69
121
130
109
119
69
114
96
81
107
141
100
103
120
197
112
69
88
121
75
110
110
108
102
91
128
119
156
69
52
88
110
112
100
80
156
89
80
156
99
155
109
128
197
69
117
93
85
80
123
127
76
76
91
128
87
96
94
152
69
104
134
185
80
78
131
185
88
140
127
144
199
91
69
80
129
112
138
88
120
120
117
117
140
69
133
114
109
131
119
95
93
104
69
119
93
120
80
197
107
131
112
84
175
143
127
127
156
80
128
80
89
140
119
125
101
125
119
90
125
100
154
149
110
106
69
104
76
155
104
117
80
79
114
131
87
59
120
100
103
151
91
175
120
88
107
151
155
99
71
118
94
100
133
119
115
89
113
117
114
59
80
88
120
99
137
144
123
109
99
93
110
88
99
111
78
78
147
94
175
80
127
89
100
68
91
80
103
154
178
119
88
91
82
135
87
142
80
69
69
85
108
124
118
175
127
152
109
80
78
127
136
97
122
80
89
155
154
123
100
88
76
106
69
133
93
101
151
78
94
123
136
69
111
156
69
80
97
91
126
175
149
119
93
96
115
87
78
100
52
93
94
133
94
128
154
155
127
101
93
121
101
143
104
132
104
76
136
113
156
112
154
112
114
99
175
146
174
87
125
151
80
125
87
89
112
172
69
69
107
107
156
121
89
74
175
85
146
72
175
136
78
120
140
112
94
132
117
118
90
134
76
128
87
115
88
107
128
155
88
121
76
76
100
56
87
88
72
96
197
76
104
104
80
120
143
163
76
132
72
82
119
122
144
78
93
80
80
69
119
69
76
93
97
102
107
141
95
119
76
107
143
164
121
69
134
91
78
112
69
146
82
72
146
87
92
106
88
128
81
117
87
137
80
87
94
78
104
87
76
145
104
99
69
113
121
80
121
87
89
78
107
112
121
142
87
114
140
74
88
102
131
69
118
136
79
97
93
128
76
151
91
143
120
89
121
87
155
103
69
109
110
119
107
91
91
80
80
101
89
128
155
76
122
156
125
83
155
166
113
106
87
126
131
154
88
87
105
155
110
54
137
119
119
85
88
126
80
76
80
124
118
87
102
93
145
85
119
72
107
56
110
96
74
71
122
117
119
88
82
100
88
87
175
110
69
69
97
136
101
113
100
66
66
69
136
80
120
125
109
120
73
160
80
101
72
94
120
124
69
119
109
156
76
117
159
69
106
155
78
80
102
96
99
106
113
87
102
118
87
80
130
80
93
76
101
129
107
83
175
75
80
114
120
110
54
87
130
143
69
87
154
128
94
80
99
96
104
117
80
87
94
113
109
102
112
153
125
119
175
121
80
115
69
76
109
80
107
80
71
69
195
69
94
120
127
79
80
123
80
78
128
155
108
87
152
66
119
148
99
119
103
109
154
107
80
126
146
134
131
164
140
80
67
99
74
146
105
80
102
151
89
154
96
92
128
197
99
94
80
121
64
69
80
96
88
123
109
94
102
122
144
152
129
54
163
105
95
109
76
120
118
142
87
89
74
119
63
130
148
60
107
87
90
72
128
136
87
157
120
119
113
69
75
117
81
78
118
126
146
80
126
111
138
129
128
113
98
131
87
72
80
101
109
80
84
93
97
88
115
105
137
96
136
96
132
111
121
82
129
72
119
127
108
110
52
89
85
87
110
141
87
135
80
104
80
90
74
104
143
136
80
111
134
87
108
137
89
116
52
119
119
76
155
113
128
99
150
145
78
87
87
139
72
54
120
119
129
120
76
156
76
89
88
89
120
136
175
96
127
87
104
94
114
104
119
151
154
94
104
80
119
87
103
104
96
69
112
148
117
148
155
89
74
113
154
146
54
118
113
54
111
183
113
80
80
134
108
99
87
183
164
88
100
91
76
128
80
76
94
78
78
78
85
146
101
74
80
175
133
114
88
107
112
99
96
115
80
136
120
54
72
99
155
154
89
164
113
139
119
119
100
82
72
121
118
83
80
87
133
75
88
131
106
111
69
140
137
100
106
119
76
113
104
175
113
111
132
155
138
154
88
113
156
123
175
131
69
101
87
197
156
94
137
96
110
150
93
109
120
149
91
78
80
154
136
102
128
80
87
137
175
109
115
102
80
88
101
87
133
88
80
69
76
100
76
131
87
87
76
143
175
113
113
156
80
113
163
154
69
56
134
87
80
100
112
121
78
80
197
175
140
175
145
124
104
129
111
80
85
78
69
154
74
144
157
110
120
107
105
109
134
80
110
80
87
78
87
125
134
175
91
76
88
117
103
69
154
136
78
101
138
66
88
78
69
140
151
80
146
143
89
87
93
164
154
69
78
102
113
152
110
80
104
94
80
109
87
52
96
112
109
102
181
113
99
89
94
101
121
75
80
134
91
131
91
80
99
122
92
127
129
78
78
110
129
154
69
175
175
131
76
136
88
79
74
110
43
72
89
124
104
110
113
95
148
54
107
80
128
94
99
148
87
80
88
69
199
124
74
152
106
69
98
76
76
107
69
78
128
151
80
88
153
163
123
119
151
106
163
104
89
93
107
88
104
78
104
87
88
89
80
80
117
112
125
131
151
111
113
140
58
128
109
120
78
120
117
103
81
127
82
54
116
99
99
78
109
100
128
94
89
69
197
69
106
91
134
117
80
64
121
99
80
115
124
152
80
96
69
56
164
131
69
103
119
143
113
90
165
147
102
136
74
76
121
101
91
175
76
104
88
80
155
69
103
80
146
155
106
87
117
115
127
80
78
157
69
154
69
175
155
54
78
94
197
93
95
88
59
87
69
87
150
80
138
72
58
69
197
119
69
175
111
71
115
120
78
87
125
110
99
156
95
129
175
89
156
144
131
126
128
78
140
90
122
90
136
101
88
120
151
151
120
80
100
131
99
185
69
101
119
87
76
128
72
119
95
80
74
155
120
67
128
120
76
72
78
135
66
113
154
94
69
106
87
101
69
78
106
136
69
119
87
155
136
119
145
87
88
119
106
76
72
106
69
107
109
136
67
121
131
89
136
185
147
80
92
102
124
99
101
109
132
94
94
99
69
80
80
87
175
69
154
107
122
83
117
142
183
54
109
115
124
113
72
80
100
74
83
78
80
92
78
68
104
87
156
98
148
88
102
127
136
137
72
96
117
87
79
63
132
115
147
136
122
164
138
154
89
80
69
163
133
69
127
133
153
119
110
108
199
119
117
126
116
118
131
69
119
126
67
134
118
145
163
153
119
132
104
166
144
98
115
119
109
128
120
78
89
127
87
148
107
128
109
87
67
137
134
175
87
129
106
74
134
109
80
143
87
107
106
99
54
80
126
143
113
131
154
80
146
118
119
72
73
79
80
118
125
78
69
141
175
74
87
148
107
78
122
80
152
139
91
69
98
85
161
64
80
110
66
100
69
93
121
76
157
87
69
89
197
125
99
80
120
107
107
89
88
80
101
118
72
151
108
172
98
154
137
99
107
78
146
114
90
119
130
76
59
153
98
124
63
82
148
78
109
109
107
119
119
120
143
114
137
108
76
78
74
131
174
104
80
115
69
107
134
134
88
131
80
157
88
94
87
124
119
89
83
80
119
67
120
54
119
100
197
154
96
76
109
133
153
134
92
155
80
94
136
134
120
88
94
72
175
83
155
69
94
128
83
110
113
111
115
155
80
87
137
117
111
86
109
175
117
120
128
94
107
52
106
131
101
128
97
119
69
103
87
136
142
134
87
76
103
69
117
116
106
74
87
197
52
121
76
159
113
94
158
109
72
78
69
113
100
80
104
104
137
83
121
120
175
89
89
136
80
69
127
80
78
122
117
99
123
78
119
109
78
69
156
76
130
69
76
134
87
131
93
131
87
131
80
69
163
118
153
107
128
94
87
122
102
78
93
175
143
78
112
114
127
58
154
80
95
103
88
88
120
150
76
69
96
76
143
119
76
124
78
121
162
117
91
102
133
80
74
163
74
75
117
114
91
69
101
101
160
99
69
131
121
80
80
140
80
78
78
104
94
123
146
100
136
78
109
102
67
94
154
103
84
119
64
69
96
109
90
121
76
94
88
80
69
80
69
85
121
56
119
151
76
119
119
78
175
152
93
104
78
71
164
119
96
109
145
110
69
87
162
69
80
72
120
87
69
115
138
136
69
80
136
89
137
157
76
84
122
80
56
115
52
100
69
129
74
108
133
80
121
88
82
174
106
84
78
87
197
60
102
88
106
89
89
119
93
87
134
137
76
69
76
68
93
87
175
74
99
154
116
137
175
89
106
119
80
137
87
69
78
119
106
98
76
87
119
145
104
110
118
89
106
87
91
110
80
89
78
163
69
78
112
105
175
99
76
71
151
106
134
71
101
123
104
80
104
97
103
87
100
69
104
76
123
117
107
146
54
94
78
95
95
78
106
175
131
151
88
120
93
175
136
76
80
119
80
99
69
87
93
109
76
94
139
80
92
136
113
134
156
80
88
78
87
107
101
78
124
76
80
156
78
117
151
147
87
69
105
87
175
99
115
88
109
112
80
76
175
87
117
120
146
80
95
76
96
112
94
99
54
138
152
106
133
128
80
94
137
104
126
139
154
106
101
78
130
80
80
87
69
87
121
154
78
143
87
121
69
104
155
118
96
94
98
99
128
112
117
109
175
69
76
54
104
101
87
57
78
96
102
52
80
100
101
160
87
121
136
151
187
69
93
136
112
99
69
99
136
100
71
104
87
175
86
80
151
183
92
176
87
78
93
94
89
148
140
100
122
89
134
104
102
160
99
80
163
144
69
76
74
116
54
120
99
74
151
90
91
104
101
69
104
98
175
87
94
89
94
76
80
112
127
69
134
80
103
181
69
154
147
119
69
127
79
87
117
83
94
76
119
98
152
69
126
76
63
112
163
80
112
127
107
111
72
164
197
69
68
120
69
80
80
130
99
119
87
87
90
146
76
99
119
124
87
89
91
80
161
130
69
106
110
134
79
119
132
117
108
87
96
85
127
131
52
132
115
80
106
119
100
102
113
110
146
69
99
54
58
80
85
138
130
80
93
101
156
134
78
66
151
94
94
90
119
80
109
115
87
134
76
69
111
89
88
136
96
121
109
94
80
136
88
66
76
88
145
88
80
66
78
87
69
76
93
94
82
110
107
201
119
101
183
113
120
163
93
136
125
98
120
69
80
91
146
73
130
78
145
80
79
113
67
80
106
117
87
69
82
140
69
76
123
106
175
129
104
85
111
92
78
80
88
121
69
89
109
80
122
91
119
126
108
78
144
127
134
78
181
69
117
137
98
89
100
120
119
122
80
69
72
110
104
80
155
69
140
134
134
99
80
120
117
69
87
93
72
120
128
104
78
104
112
80
101
164
79
123
80
100
136
136
115
95
121
100
69
117
130
74
137
111
128
140
133
145
78
83
76
72
80
121
94
99
99
85
119
162
87
112
107
95
115
80
87
78
175
131
169
80
91
129
112
131
140
74
80
120
125
94
102
109
90
89
113
69
113
137
95
94
131
104
119
130
177
89
105
75
101
130
125
74
109
123
120
175
85
113
175
89
80
106
104
95
83
88
134
145
134
175
106
80
104
75
72
71
122
110
78
107
128
109
106
119
74
85
78
91
69
101
120
128
100
92
87
96
93
106
101
104
197
117
78
175
89
107
140
78
125
96
110
136
87
118
69
144
119
145
54
138
54
137
99
102
80
120
159
105
80
144
101
107
140
69
110
69
85
104
154
123
119
100
120
74
110
122
110
175
101
118
76
80
102
133
102
90
128
76
80
109
70
121
125
69
199
130
91
130
155
80
83
69
80
120
80
117
80
91
133
80
90
109
110
163
91
56
156
78
124
121
175
96
164
91
119
67
120
118
124
91
96
113
136
113
101
80
52
113
124
143
118
78
121
107
94
76
107
124
161
98
119
136
143
144
78
94
119
137
78
114
121
69
136
96
131
208
60
120
87
120
56
78
141
72
69
119
78
87
57
121
119
123
121
117
134
131
76
73
76
110
74
134
90
109
110
96
110
128
109
155
69
120
88
113
87
87
148
72
107
119
80
72
99
117
96
131
129
89
128
69
78
107
91
78
78
127
80
116
88
88
155
135
150
107
103
124
138
117
139
90
128
74
110
111
106
101
117
78
185
137
99
76
117
69
87
117
136
129
107
101
80
119
106
205
175
83
142
147
128
76
130
87
87
100
104
130
121
138
140
69
123
88
76
155
119
93
125
76
87
76
43
121
87
56
80
106
94
121
96
80
78
123
106
151
93
119
76
76
69
117
118
100
72
95
80
78
154
119
143
87
78
107
123
76
76
78
109
109
151
132
94
137
76
88
76
175
149
76
80
133
117
54
91
93
131
104
80
104
143
144
117
80
91
154
144
138
94
80
78
80
87
104
124
64
136
136
94
80
127
78
78
100
130
99
110
80
142
72
175
69
66
78
74
98
96
100
143
131
78
126
76
94
83
69
107
125
87
107
155
114
141
140
109
117
72
134
109
151
104
124
197
117
107
131
127
60
69
66
69
175
104
112
88
104
151
106
100
134
138
94
104
69
128
101
76
88
54
118
80
163
104
76
107
69
72
145
137
148
94
116
78
87
80
87
121
175
103
80
91
154
94
87
122
69
93
121
154
106
80
107
112
80
132
88
78
129
100
69
150
121
175
111
87
131
110
76
155
80
96
120
112
87
99
104
110
67
102
112
87
174
120
101
104
76
104
82
140
124
140
69
89
128
154
66
109
112
175
134
120
80
104
138
100
80
118
128
126
115
145
89
59
201
156
106
104
119
76
96
118
104
87
136
79
128
80
72
171
74
80
156
86
104
117
120
80
145
104
112
104
116
107
69
132
93
100
136
69
78
102
69
163
76
69
89
72
54
122
78
163
113
128
87
54
80
80
131
98
87
187
97
111
132
178
156
69
111
121
149
107
98
89
82
128
164
128
107
83
91
112
108
107
110
109
110
76
120
156
154
91
88
143
69
134
87
122
96
119
66
80
104
155
99
91
69
111
75
80
131
128
106
80
80
88
80
119
110
87
78
145
131
90
69
83
80
100
69
101
187
95
75
128
80
124
131
69
93
100
100
80
106
119
91
79
103
74
123
80
151
87
119
151
80
78
99
101
155
120
101
76
165
115
121
94
69
112
80
140
153
159
93
115
87
69
175
155
69
128
120
87
80
135
104
72
149
128
85
147
107
144
175
106
151
126
78
138
71
121
82
142
100
91
85
140
69
143
104
117
87
199
103
131
164
104
96
80
95
91
81
80
69
120
102
87
85
98
154
120
99
113
199
120
103
114
94
95
144
94
94
75
126
136
120
54
69
145
136
106
107
197
74
110
145
106
76
147
69
134
175
76
110
74
78
93
56
134
93
112
104
78
78
78
97
80
72
155
69
121
113
119
110
107
80
83
104
99
80
128
181
76
88
114
107
132
80
80
135
119
69
102
125
56
104
113
78
97
80
151
160
106
104
80
106
119
94
43
110
116
151
76
109
119
145
89
136
89
88
113
69
82
52
87
164
151
80
144
146
52
155
131
156
80
104
174
91
88
120
139
149
69
110
93
156
110
107
165
101
103
110
87
96
154
96
98
142
157
131
169
87
76
87
94
119
127
102
175
80
104
119
141
83
80
142
156
87
72
109
119
129
87
152
99
93
163
101
80
89
80
99
107
119
103
155
128
107
122
69
174
113
137
75
115
82
136
123
106
104
117
72
137
113
96
156
104
107
110
99
72
73
93
56
80
87
87
110
156
69
89
144
80
88
87
96
72
110
76
109
127
134
114
119
129
102
78
174
76
134
107
119
80
154
175
148
80
87
93
118
110
128
127
112
110
111
99
107
123
140
156
115
134
175
100
88
85
102
116
112
87
82
109
110
80
101
154
120
76
145
156
74
120
78
78
69
93
107
142
76
107
131
91
110
102
143
104
99
93
95
93
102
121
125
107
175
88
69
69
147
89
94
80
76
80
127
87
52
87
69
126
83
133
109
107
110
115
83
175
69
175
112
132
154
87
92
72
120
175
78
90
89
125
152
99
119
139
145
88
147
122
99
120
142
78
116
80
67
87
94
85
102
140
107
131
112
199
66
126
102
130
121
120
80
69
102
94
117
136
95
118
80
197
113
78
72
54
76
103
69
88
201
119
136
134
163
102
112
80
107
72
88
119
74
117
80
78
69
102
127
75
124
69
88
131
99
78
96
176
107
145
155
164
175
80
131
122
67
120
87
199
110
89
110
87
87
175
120
73
121
69
93
102
78
154
112
80
175
89
91
130
78
124
123
110
96
78
69
109
94
146
115
114
134
139
87
134
78
72
166
78
145
175
119
126
85
78
104
115
160
121
113
69
175
169
89
140
111
78
120
137
56
80
175
101
109
128
126
128
134
78
99
124
157
146
107
80
107
91
197
107
138
107
88
116
147
80
80
121
69
69
66
98
83
89
132
64
120
68
128
197
101
136
112
88
151
93
101
74
75
134
111
164
106
85
69
175
127
136
56
109
69
115
124
152
114
107
119
78
78
127
136
136
121
87
93
96
113
118
78
89
119
88
95
80
88
59
88
83
80
93
97
92
110
123
121
115
106
69
82
95
120
125
132
89
142
118
150
112
132
126
72
137
76
102
69
157
88
118
80
66
78
87
80
151
154
104
155
104
100
151
91
87
96
87
78
132
96
123
103
52
172
103
107
117
88
136
128
123
80
107
80
100
69
80
66
131
80
80
136
154
88
76
78
80
118
159
88
110
138
104
69
151
69
130
128
76
52
128
145
92
103
159
128
58
117
76
106
72
127
80
104
87
87
89
118
80
110
69
72
128
106
154
113
154
69
122
164
120
92
123
57
110
120
145
130
156
72
154
137
94
93
113
91
129
140
162
80
104
76
96
149
115
115
143
109
126
80
80
185
134
109
101
175
119
80
80
83
96
87
88
136
80
119
151
87
121
87
87
78
87
151
109
120
88
154
110
131
175
94
128
99
109
121
185
183
120
109
140
113
119
80
98
83
175
120
87
106
103
43
101
87
197
80
136
110
76
87
153
119
144
114
87
78
109
117
199
107
80
140
100
185
147
76
178
69
147
81
96
148
118
112
120
142
113
87
69
103
93
69
87
89
107
127
154
134
124
104
78
169
95
131
76
76
94
92
120
75
101
144
87
175
88
60
87
72
72
137
164
109
100
154
83
116
110
110
107
80
106
127
114
69
128
101
116
88
76
76
109
69
154
109
88
88
73
80
119
132
81
87
80
116
145
140
69
87
113
104
127
80
145
154
85
99
131
107
118
80
125
152
138
98
87
78
128
85
133
104
88
113
69
54
115
100
121
78
74
145
118
143
107
87
126
74
87
76
172
69
123
96
128
83
128
154
80
69
76
99
91
87
89
96
118
146
110
69
132
80
69
80
94
93
82
43
80
119
156
138
140
66
124
154
126
89
154
131
69
69
107
151
94
89
69
109
74
101
154
98
117
105
110
98
169
114
94
108
107
87
175
139
80
162
145
79
121
126
102
72
89
80
87
140
69
121
120
119
103
80
126
88
128
123
69
87
59
97
125
109
118
89
133
76
112
80
109
111
67
64
89
102
80
117
129
128
113
163
175
174
107
141
94
144
175
131
138
167
83
75
107
80
80
120
151
120
69
69
175
113
99
118
126
74
78
136
113
142
175
110
96
129
103
107
142
69
133
80
80
130
113
72
76
101
69
136
163
122
66
118
134
155
118
154
76
87
169
138
102
91
120
99
74
69
140
112
106
117
72
69
115
144
85
126
104
89
99
80
130
81
128
78
52
81
104
78
99
120
69
121
121
95
102
156
104
164
110
121
98
69
159
101
88
106
137
69
163
95
183
101
154
87
79
113
99
72
131
119
109
138
119
76
101
112
91
76
88
114
134
88
120
130
137
66
88
104
140
163
107
140
94
118
175
120
52
164
145
88
133
80
88
140
89
124
144
133
94
95
119
88
119
150
110
119
156
102
131
83
91
140
131
147
102
113
140
154
69
114
122
127
101
80
69
78
76
80
69
151
115
107
87
76
81
131
93
80
107
108
143
69
118
131
126
89
64
121
129
93
99
69
94
91
141
136
113
80
126
134
110
76
119
146
125
128
87
76
80
78
69
112
87
195
116
185
150
80
99
110
87
54
87
189
96
101
175
138
88
80
119
108
129
154
120
74
135
87
97
144
87
125
67
80
72
131
87
94
87
80
117
146
110
160
91
94
69
69
93
99
69
85
126
91
76
87
80
66
74
90
78
69
69
78
88
93
176
149
155
99
69
72
69
124
152
87
197
132
154
140
131
89
120
80
109
172
87
96
80
87
93
87
118
72
119
103
140
119
175
80
87
87
143
134
69
80
136
154
90
80
80
94
69
76
69
76
78
99
133
116
133
91
118
128
88
113
72
163
128
91
87
88
74
137
89
120
87
94
76
110
72
78
120
111
89
72
119
175
94
78
175
69
131
109
88
118
140
127
69
130
117
104
95
80
144
120
83
113
134
87
112
88
60
127
122
107
123
119
118
131
89
69
154
102
119
101
101
117
69
101
145
88
110
119
120
118
137
155
139
94
87
112
88
113
126
99
80
109
89
112
96
52
119
144
69
101
119
69
81
110
64
80
138
76
134
94
153
85
69
80
74
136
134
147
153
197
123
111
97
119
80
110
86
103
56
85
58
76
114
120
98
76
131
106
80
98
128
80
118
136
133
112
80
199
119
120
78
80
94
92
74
132
119
72
74
59
93
87
119
143
78
152
104
81
80
99
118
153
119
119
97
69
69
119
80
136
101
87
122
103
54
69
160
78
106
94
69
140
119
96
120
93
90
120
80
69
122
80
80
128
124
89
69
177
120
127
96
109
85
119
87
80
132
76
69
128
117
115
175
152
175
72
121
178
156
107
69
101
69
98
99
69
174
80
183
69
130
104
76
102
93
120
82
67
134
127
80
131
72
69
80
79
54
92
127
131
119
120
74
78
78
76
147
119
117
155
99
175
122
110
110
84
141
117
125
80
94
80
69
87
104
175
87
69
104
43
94
78
76
121
133
91
78
80
75
151
110
75
119
69
147
72
109
80
73
69
152
118
80
103
80
140
128
78
80
134
126
110
119
94
146
80
87
99
110
136
127
122
80
128
107
113
104
80
151
102
112
90
120
117
128
80
119
153
88
175
128
94
147
100
151
52
107
175
127
94
136
127
120
69
141
166
94
76
100
87
87
119
78
80
80
117
120
104
93
119
106
89
120
130
113
126
145
80
143
69
107
80
117
126
175
80
123
126
74
94
175
80
94
131
88
110
145
80
102
175
175
96
84
69
131
115
80
104
175
109
130
124
69
87
106
122
123
107
119
88
111
134
109
136
87
110
110
76
156
83
136
92
88
72
108
109
87
80
119
140
164
69
69
69
103
104
74
69
140
87
148
72
85
156
151
80
69
82
92
121
73
199
138
154
69
72
120
146
175
76
78
80
106
80
91
106
88
124
78
72
80
104
78
98
87
74
119
102
138
185
123
69
103
93
120
80
83
111
137
93
136
74
137
87
109
131
107
127
121
76
124
102
111
83
80
120
127
88
128
80
69
117
80
129
102
80
78
147
85
126
87
75
147
78
69
143
80
109
88
100
66
87
106
110
128
87
110
94
89
80
72
64
72
155
97
106
87
99
74
140
107
87
69
132
87
128
76
112
56
69
95
87
87
89
112
94
80
80
94
91
80
98
175
109
91
70
101
76
83
69
128
91
133
110
121
78
163
88
106
69
120
95
113
66
136
88
87
94
80
89
175
134
119
103
110
117
102
80
78
76
82
120
154
69
78
127
127
74
107
141
69
93
69
106
76
43
117
122
78
143
121
129
125
102
156
85
80
110
107
87
100
133
64
134
124
175
94
169
88
133
80
76
130
72
104
136
155
131
74
82
175
136
154
112
69
154
102
74
83
80
175
146
108
175
128
69
73
87
109
94
91
69
134
69
94
136
136
120
156
80
101
122
102
76
92
101
76
89
80
76
109
121
87
146
79
93
88
69
87
106
69
119
107
76
144
99
96
123
112
127
133
80
120
88
103
89
127
119
102
80
97
175
69
154
119
96
87
127
57
119
110
112
100
115
120
99
120
150
93
88
110
117
88
80
80
118
114
69
109
132
131
87
146
113
146
111
143
87
91
117
72
76
136
107
154
104
154
104
109
119
154
82
151
115
126
72
107
121
91
85
76
94
116
87
123
80
155
83
134
139
78
146
78
126
80
135
108
54
119
126
80
100
78
120
80
80
144
69
76
154
134
100
117
119
154
92
136
80
78
130
69
89
52
113
110
76
89
80
136
128
69
103
75
114
134
69
145
120
78
94
120
99
119
69
85
69
140
142
69
94
119
115
80
136
121
76
103
130
94
130
69
128
80
88
85
109
72
128
69
88
69
125
87
182
94
164
74
80
83
75
119
93
154
69
110
78
104
76
71
120
87
119
128
75
78
80
138
72
128
109
145
120
72
117
76
87
76
185
102
160
114
101
139
84
112
69
128
119
56
87
128
152
109
140
102
87
80
78
155
76
151
112
106
87
125
137
104
69
74
136
113
76
72
80
69
139
88
107
107
80
119
52
155
119
106
130
99
95
88
107
163
100
172
88
80
76
154
80
147
175
118
113
120
95
120
134
147
76
109
107
135
197
163
138
74
136
92
134
140
92
87
107
174
123
134
109
175
76
120
111
91
126
101
120
124
128
123
107
113
87
43
88
94
88
88
100
87
142
80
118
107
119
136
56
56
76
138
145
146
80
131
140
99
91
134
150
101
110
87
69
87
122
107
181
87
175
156
54
157
107
76
121
175
199
136
154
131
126
87
74
80
174
73
113
144
87
99
107
97
80
69
91
83
140
80
88
69
137
117
129
129
128
98
120
113
87
101
69
114
99
143
112
110
111
104
102
175
118
107
87
154
120
119
94
115
107
101
130
78
69
72
112
109
76
100
69
132
76
98
110
99
74
109
146
123
89
175
78
120
116
87
80
96
89
149
101
122
80
76
69
119
96
69
124
80
107
88
99
76
78
91
146
69
69
96
131
56
145
80
119
96
72
52
103
150
119
134
140
99
102
197
105
156
134
120
131
87
93
76
98
123
109
72
80
134
156
106
106
80
119
156
117
74
102
134
109
78
107
76
134
104
78
89
91
80
101
80
76
80
119
128
128
87
87
94
87
144
148
119
80
87
80
101
122
82
179
87
175
72
117
136
106
128
113
73
93
96
134
78
69
136
95
109
110
87
91
78
126
119
107
115
110
103
115
109
78
126
132
98
87
87
102
156
128
78
80
88
136
69
88
129
109
128
80
162
129
88
140
111
124
113
75
69
117
107
87
130
69
94
87
88
107
175
78
177
111
69
74
80
69
80
105
100
83
134
78
69
107
69
131
123
114
128
103
100
89
87
112
94
123
106
110
132
155
110
56
88
104
89
72
156
124
111
117
97
80
115
95
69
140
72
67
80
78
91
57
87
87
69
80
78
76
83
80
73
108
99
88
69
151
69
84
76
109
134
93
128
107
140
136
78
140
113
68
88
120
123
80
69
155
117
154
109
155
131
179
175
80
112
154
104
52
117
87
69
136
163
115
157
88
99
120
138
69
146
143
127
80
121
78
121
79
91
69
119
63
131
118
119
128
125
94
106
87
67
72
87
111
69
144
110
110
68
78
69
78
54
155
109
120
144
89
124
160
140
69
89
84
111
78
78
115
80
80
80
134
175
91
140
142
124
117
76
89
183
88
72
102
95
103
124
69
80
119
96
80
87
86
119
94
104
80
154
175
94
113
119
120
163
119
129
54
87
98
133
101
197
156
175
127
119
87
142
78
143
93
147
183
78
76
87
102
69
96
109
134
72
102
76
94
93
76
134
89
118
119
80
145
148
128
121
69
127
67
153
80
120
145
103
87
113
87
113
106
69
120
69
54
130
154
80
159
78
99
78
78
140
69
117
124
68
87
138
121
121
104
87
80
69
175
99
129
76
120
80
85
78
101
128
102
140
96
126
88
89
95
94
106
112
90
134
102
151
128
76
96
138
146
88
100
119
76
69
104
117
102
87
69
107
107
123
119
137
122
69
88
73
104
156
76
103
80
118
109
110
69
119
80
111
69
113
67
103
197
113
154
99
78
78
69
106
80
69
80
80
91
80
88
112
83
128
104
76
151
112
136
74
76
108
118
126
154
155
127
155
136
128
140
117
137
109
147
145
99
69
99
142
80
94
87
119
88
94
115
96
106
88
109
72
56
68
69
128
76
69
80
69
81
157
183
85
165
132
80
80
129
146
100
95
126
151
106
124
69
103
112
76
104
175
87
137
101
119
143
112
69
119
128
88
104
120
94
87
128
78
79
94
113
118
90
162
151
175
69
98
80
69
67
140
169
121
101
128
104
99
93
76
117
136
112
69
121
69
87
133
87
113
106
118
78
140
82
119
197
131
164
99
69
123
136
83
88
123
119
80
89
154
104
72
120
80
101
124
76
120
124
118
116
118
87
110
120
149
93
60
106
121
76
104
89
74
99
119
69
56
175
120
43
69
80
111
129
80
175
110
69
127
107
162
75
110
79
74
124
96
54
80
140
82
95
108
169
94
112
69
126
163
88
132
142
58
118
154
96
116
104
80
69
80
131
104
87
131
67
129
76
113
78
122
119
68
151
104
120
120
139
85
120
128
88
122
123
67
91
143
144
201
154
78
146
80
109
109
100
69
140
138
153
87
80
134
156
69
76
57
131
126
88
127
113
112
78
121
116
80
106
146
114
74
111
80
76
83
120
76
89
113
52
119
76
80
125
87
132
75
99
102
78
63
89
104
131
72
102
92
124
116
87
93
94
80
130
140
131
78
118
91
102
99
129
80
80
76
131
140
127
76
87
69
72
87
80
174
93
115
72
80
152
104
123
106
99
109
136
133
56
87
78
128
76
145
125
106
81
117
87
89
138
174
197
119
185
89
96
87
112
117
69
175
78
89
93
80
80
87
94
100
146
69
160
69
163
87
132
125
107
151
80
106
162
111
80
74
78
126
163
120
88
107
119
91
149
82
143
99
87
131
69
110
141
76
113
91
88
87
138
119
131
87
85
120
118
133
89
151
78
107
80
112
80
91
120
110
69
87
91
101
107
117
146
110
94
95
128
132
119
87
80
106
124
120
118
93
120
69
96
87
88
117
154
69
72
143
120
73
106
78
80
72
69
95
87
134
87
106
78
109
99
133
91
137
78
131
175
103
69
109
110
109
106
110
106
143
154
149
80
104
116
122
72
197
119
111
87
72
80
134
97
121
140
128
43
175
80
80
175
78
109
78
106
141
113
135
89
77
101
87
131
120
80
91
147
119
92
107
80
119
111
154
97
76
56
127
56
145
114
89
69
136
80
118
113
112
94
119
132
121
121
136
133
175
197
128
64
80
112
103
139
80
72
129
110
69
113
119
123
117
197
103
136
80
119
89
91
106
92
133
128
117
80
114
113
95
93
154
69
116
78
78
134
69
134
99
89
128
140
74
80
88
154
80
119
94
151
107
127
90
60
107
128
80
123
141
106
117
52
142
112
69
87
97
174
81
113
111
117
87
80
106
74
80
69
69
107
123
78
76
101
69
106
80
80
122
93
106
88
93
95
89
97
80
108
54
74
120
69
154
88
85
78
76
120
119
69
169
155
69
114
80
136
90
149
112
104
107
113
131
151
96
143
80
110
80
187
88
107
96
123
88
127
72
101
87
80
88
87
140
99
72
90
60
144
128
78
103
101
87
132
99
109
136
54
107
146
75
116
104
119
97
43
133
75
94
128
113
88
117
132
69
119
99
94
137
54
76
104
101
121
122
111
87
93
78
87
88
127
126
175
102
111
118
127
148
90
69
125
89
96
148
124
69
74
112
79
118
119
154
136
127
127
119
95
128
157
56
124
89
78
69
96
91
100
128
149
138
155
87
98
100
96
122
80
104
69
87
67
144
94
119
136
87
131
117
89
96
102
148
109
101
80
127
80
87
115
72
80
80
120
110
87
88
78
76
72
128
119
175
128
117
96
106
96
89
142
102
103
153
151
115
112
145
76
101
95
75
93
87
115
76
119
142
110
134
68
107
107
105
76
110
91
69
117
80
115
131
96
113
133
109
197
88
105
119
136
131
99
134
141
89
155
102
93
143
88
111
71
80
89
79
148
88
126
87
76
132
123
80
76
118
85
110
88
69
117
94
87
87
104
78
80
145
80
99
87
69
124
76
80
101
87
104
52
87
78
80
89
69
52
94
145
59
82
119
80
117
109
95
99
92
90
93
69
69
145
120
126
93
107
101
104
157
133
141
80
74
108
99
80
110
176
99
104
113
175
154
80
109
140
103
69
107
69
146
128
143
125
90
119
120
163
89
155
96
146
71
124
107
117
101
73
163
106
101
85
69
120
134
80
119
71
151
78
76
112
104
110
54
87
87
88
107
145
78
80
101
80
121
127
122
87
109
118
128
145
94
56
103
119
80
121
107
76
148
74
72
91
69
69
140
102
120
71
152
134
120
87
89
69
69
98
128
123
121
106
87
80
69
114
95
101
106
112
121
117
134
156
96
71
69
80
69
123
118
123
115
149
69
152
107
104
59
99
143
89
131
128
87
121
80
95
66
80
175
93
81
52
66
125
69
129
128
76
107
104
76
112
78
119
79
91
131
156
125
69
69
89
119
100
129
109
107
129
106
57
128
139
133
69
69
120
128
105
85
104
119
155
144
87
131
94
120
80
98
107
80
76
128
74
78
96
120
120
96
143
99
147
69
113
125
111
128
87
99
94
121
154
131
54
69
102
69
88
154
119
80
104
134
83
91
83
116
80
106
128
88
80
94
154
148
80
69
125
69
78
104
120
72
88
88
117
117
90
122
97
101
120
80
97
79
87
129
114
120
90
111
87
80
79
121
69
119
126
129
96
119
76
100
73
96
156
80
118
133
69
106
143
145
132
117
76
87
118
87
80
115
79
80
137
119
136
99
73
126
156
156
175
80
69
76
101
116
120
87
52
107
134
107
119
164
72
90
78
80
114
117
113
67
80
106
155
101
83
80
110
91
119
91
118
69
103
121
128
101
109
87
88
80
121
154
119
156
109
113
163
109
72
78
75
99
147
107
133
114
69
148
130
78
76
81
112
117
110
87
85
175
81
69
136
106
89
80
104
154
95
120
129
144
94
54
175
69
115
80
165
78
76
69
119
96
123
69
110
74
80
96
144
155
92
108
92
69
108
110
56
110
80
93
193
119
123
109
140
146
109
99
72
95
78
99
93
87
109
137
83
110
109
164
87
80
107
69
127
87
116
99
87
104
69
69
108
87
121
99
138
137
115
154
80
69
175
121
119
98
93
78
163
129
154
83
93
114
93
131
120
136
54
110
103
97
80
91
128
92
87
76
185
103
137
83
69
78
142
104
87
163
104
69
121
80
128
119
127
80
96
104
89
101
109
54
101
98
107
89
117
69
80
156
72
174
106
88
80
107
155
83
152
78
147
126
80
146
123
115
96
100
80
87
134
87
112
102
127
72
127
117
101
114
80
145
128
80
80
122
98
80
154
88
154
131
199
156
80
131
151
94
138
69
134
54
67
163
87
69
120
113
59
91
80
80
78
74
149
115
99
80
76
69
69
80
112
115
127
80
104
83
151
87
110
80
90
76
101
98
111
106
69
76
80
172
69
78
94
114
114
85
107
118
137
144
119
154
78
87
69
69
155
111
156
148
98
76
112
164
80
69
96
69
128
121
117
72
99
67
69
175
85
104
128
121
69
109
118
99
102
87
86
104
145
102
113
140
114
112
101
69
119
80
128
131
87
69
123
69
89
94
80
69
137
128
80
127
142
72
108
103
118
87
119
109
137
88
119
149
101
90
125
69
80
80
93
123
157
140
134
78
72
145
76
120
82
120
58
80
110
117
89
83
109
76
154
145
128
169
107
115
87
80
69
197
101
87
76
87
120
93
172
175
131
88
110
91
80
112
82
69
80
100
110
118
89
126
197
154
117
117
85
88
115
117
175
69
120
137
117
121
87
128
69
80
113
80
71
80
136
126
89
119
140
73
78
99
107
85
83
80
140
123
80
106
131
109
119
107
88
91
175
109
52
113
80
104
80
80
147
140
135
136
147
119
85
99
113
113
175
99
110
95
80
76
88
122
134
78
78
78
76
93
94
120
94
154
131
140
119
87
102
122
131
96
96
107
89
69
75
99
95
93
69
123
104
96
115
117
96
69
69
69
93
99
109
99
78
119
175
129
107
104
132
80
121
136
80
78
87
128
132
80
78
118
132
104
69
136
69
132
109
88
106
87
69
156
122
106
176
119
120
89
169
111
69
120
88
69
87
80
87
148
90
104
80
133
74
91
197
104
93
154
111
175
134
87
110
100
156
78
87
113
76
98
113
149
121
109
106
80
72
89
69
91
114
117
148
130
121
118
67
128
133
104
71
78
104
107
104
132
110
120
151
106
199
118
72
94
144
129
94
152
130
146
107
69
121
151
118
126
88
113
80
80
91
106
80
79
145
92
155
89
69
94
104
147
80
112
151
94
136
80
69
101
94
95
126
94
166
155
69
106
160
102
175
69
76
144
148
91
120
100
89
107
93
78
94
52
128
123
72
134
69
128
114
154
126
119
119
69
112
69
110
96
88
141
80
101
96
98
156
97
91
95
140
113
119
118
103
120
113
121
76
80
84
80
76
146
96
87
80
107
145
118
57
134
93
117
151
78
88
117
137
110
54
107
151
69
69
74
120
129
94
106
69
119
82
112
52
109
164
69
78
79
91
89
154
80
54
111
88
89
69
161
121
72
120
67
87
78
69
145
75
110
96
112
112
102
87
183
128
100
80
137
96
109
119
166
107
80
154
106
151
75
78
94
91
158
155
54
149
78
88
131
126
112
122
121
80
88
131
102
155
156
142
118
140
132
80
89
67
109
106
154
87
94
111
134
69
80
156
175
105
83
72
118
76
91
80
69
80
87
93
115
80
111
100
80
88
120
118
107
185
110
98
107
78
131
133
120
87
109
91
99
113
100
164
119
130
80
104
137
134
101
124
131
121
175
93
69
115
107
69
146
88
87
154
140
111
99
72
113
141
111
67
115
87
54
121
80
121
109
140
69
66
69
128
112
71
175
100
99
114
112
99
115
87
87
117
175
114
101
67
197
78
88
119
80
95
127
130
156
94
107
80
136
99
109
99
117
95
106
163
80
154
78
121
119
71
119
80
110
96
175
111
151
78
183
72
116
172
169
94
89
132
117
107
145
87
69
143
94
80
155
68
78
88
109
134
87
128
113
69
99
145
143
78
160
92
85
80
78
69
89
155
136
103
79
88
113
156
69
76
109
69
197
154
69
137
83
124
154
109
80
133
99
104
130
80
100
145
132
91
96
112
120
134
145
71
78
87
164
78
101
91
80
87
78
80
106
99
145
101
110
155
74
94
56
87
76
132
76
120
124
78
87
109
121
121
112
120
52
107
99
123
132
118
120
154
160
91
119
69
109
175
128
104
98
145
121
109
80
91
100
119
119
69
94
99
99
89
71
155
94
72
138
134
129
127
87
128
104
87
87
78
83
101
56
110
209
91
153
109
94
76
72
133
76
134
94
54
120
87
80
69
80
75
142
112
68
107
112
69
105
151
119
54
109
69
94
107
94
175
78
76
128
78
92
103
87
163
134
107
80
146
110
117
147
107
69
78
131
109
115
80
133
128
98
89
124
110
133
131
154
128
74
148
88
185
52
88
69
99
173
155
145
76
96
127
175
156
127
74
74
110
145
87
136
118
112
112
58
69
148
122
74
110
104
119
94
87
126
91
98
87
72
99
122
162
156
174
93
132
161
162
69
117
69
133
140
117
136
107
69
78
95
80
87
80
107
89
88
107
118
117
134
118
134
134
80
133
93
58
119
119
175
80
129
127
99
76
76
102
80
80
110
80
80
75
136
107
119
76
107
83
121
94
80
110
86
80
80
131
112
152
115
136
109
132
114
166
155
69
109
113
151
124
80
111
137
107
147
101
88
69
69
124
80
156
151
93
108
78
169
131
112
43
80
93
117
91
76
76
163
163
80
133
111
99
54
78
127
72
94
90
128
107
80
150
93
96
78
156
76
140
95
174
151
83
101
156
101
87
87
90
76
74
147
87
131
74
93
56
104
143
175
114
119
69
94
90
54
88
99
72
69
99
93
80
119
131
89
126
76
137
67
118
87
118
91
174
102
156
80
74
79
99
97
80
80
95
106
58
136
102
72
83
109
67
76
119
107
87
69
169
80
128
85
102
96
121
87
80
123
154
155
71
104
80
146
80
120
101
80
154
156
69
126
94
76
69
137
79
122
94
69
88
140
124
85
71
120
118
133
93
155
134
69
75
127
80
80
154
112
134
78
80
56
110
131
99
87
109
124
134
88
69
110
104
76
90
80
136
83
158
83
105
131
156
88
107
90
69
72
101
156
118
87
126
163
80
136
109
134
106
80
87
101
76
147
154
60
134
120
174
162
143
87
88
87
120
134
107
132
94
134
69
156
98
128
78
121
87
103
69
80
130
76
80
99
94
121
87
128
99
87
174
69
120
162
76
111
104
59
76
97
76
150
76
91
136
80
52
76
74
69
87
133
85
78
96
93
54
99
90
101
123
112
117
120
104
83
116
85
115
134
113
111
127
89
140
82
154
91
80
80
154
125
123
69
113
69
80
88
69
64
79
67
117
101
120
88
92
136
128
103
132
133
69
109
119
88
134
163
119
88
119
163
107
142
101
80
128
96
154
87
85
113
112
120
76
109
119
106
97
56
107
74
69
132
128
110
102
76
72
69
106
80
80
118
83
69
67
117
117
154
156
119
87
76
137
71
78
99
119
101
128
106
88
121
128
118
112
69
110
127
134
103
117
69
156
87
80
111
71
87
136
87
115
120
79
118
76
118
69
117
117
99
69
112
136
78
94
114
43
119
90
91
88
107
134
115
131
107
101
87
169
89
155
80
120
76
145
80
98
128
115
183
134
142
101
121
82
122
109
95
118
80
130
147
107
94
78
113
120
92
99
133
128
80
85
74
143
72
103
76
90
113
69
69
85
122
80
74
143
120
141
116
120
88
80
120
129
78
156
76
80
69
76
91
76
69
112
114
147
106
76
136
120
69
175
147
113
146
97
154
76
87
78
126
172
122
89
80
74
80
99
107
120
136
136
69
122
99
94
118
154
80
94
95
69
138
123
133
69
94
80
89
69
160
130
80
136
107
89
102
87
107
79
96
89
94
107
156
100
128
110
118
87
163
151
110
96
107
80
110
119
80
94
87
90
80
120
107
69
104
80
121
116
66
133
148
134
101
164
99
106
143
76
76
99
91
197
119
130
89
91
88
73
111
135
69
103
96
121
134
131
154
118
113
80
78
80
72
69
87
59
197
69
145
132
96
99
87
80
80
163
120
107
133
126
106
78
101
119
121
131
118
123
89
99
89
103
93
126
107
83
146
128
89
127
117
78
119
175
106
125
89
88
106
94
80
113
76
91
69
80
106
127
88
109
107
95
117
99
80
122
101
94
91
75
118
136
163
128
96
128
87
56
107
97
101
103
93
197
175
138
132
88
107
95
87
115
125
119
89
69
76
96
107
106
140
94
119
165
94
96
99
80
83
87
114
107
147
88
151
133
131
88
80
78
96
80
185
80
91
80
76
59
107
156
138
80
76
185
125
88
94
154
80
160
82
125
101
142
127
91
119
109
155
158
145
78
118
101
76
72
107
154
118
80
175
99
87
183
80
101
85
69
117
137
69
80
119
80
175
154
110
119
122
76
108
89
72
156
119
107
131
88
159
175
89
88
141
99
99
80
131
118
106
112
99
76
137
80
119
175
90
76
124
111
111
140
96
80
160
134
112
136
93
76
119
114
119
112
151
69
94
87
132
69
69
54
88
76
76
103
88
80
114
154
76
107
113
154
88
99
72
78
143
110
87
88
69
76
107
85
152
78
137
201
80
142
125
175
93
69
197
131
118
88
69
80
99
131
88
137
120
88
102
117
94
151
121
119
78
76
151
120
76
134
155
78
106
63
69
69
76
124
52
197
147
118
112
121
123
156
106
154
107
115
92
85
94
104
80
72
151
128
89
128
78
78
58
127
117
97
80
69
106
155
164
78
80
67
99
155
148
88
69
90
96
109
99
119
78
76
69
146
78
78
129
69
102
165
140
123
100
78
96
183
149
87
138
136
110
129
76
129
80
153
163
80
154
163
154
104
128
134
175
155
143
59
99
80
78
72
69
89
145
100
99
89
94
175
80
106
80
106
115
108
69
63
122
113
119
102
101
137
88
112
121
187
145
131
106
154
80
74
109
140
58
111
87
87
147
78
69
69
85
69
128
99
137
76
69
183
81
80
78
110
76
155
120
76
101
87
76
197
166
148
151
80
148
87
87
131
56
94
69
54
100
76
119
131
81
109
126
87
92
78
80
110
119
116
93
79
107
69
133
175
85
121
107
119
148
80
104
78
58
80
108
146
106
78
69
128
87
120
101
107
94
148
91
87
78
100
69
106
155
87
80
80
80
106
74
80
72
76
69
101
150
120
69
69
80
94
120
104
127
112
132
78
101
133
131
128
88
117
123
78
80
133
76
119
102
74
136
107
181
119
119
137
94
128
103
80
88
138
69
80
83
56
72
86
118
133
76
124
156
133
69
76
110
100
76
131
69
136
126
119
80
124
125
109
151
197
80
124
78
154
163
60
72
89
43
117
117
69
81
87
72
117
89
69
119
94
94
133
69
80
69
117
102
104
154
119
102
80
110
121
114
122
76
120
136
78
69
113
121
111
118
154
128
159
88
130
85
109
102
69
78
153
88
71
107
78
87
94
138
138
155
89
128
83
80
136
118
109
104
121
132
80
69
72
109
88
112
107
74
129
54
76
119
102
109
139
69
54
52
99
59
140
59
155
157
121
91
60
134
134
80
69
151
119
76
80
128
81
116
83
66
93
145
113
109
128
120
128
85
94
89
98
91
80
103
101
66
87
83
128
138
69
72
142
89
99
54
121
69
91
54
147
91
128
60
93
89
115
120
131
154
78
99
89
109
74
93
80
128
69
134
99
122
119
119
69
137
87
80
76
72
120
171
158
58
76
106
151
76
155
154
118
124
80
163
119
125
69
100
127
131
155
121
104
121
93
131
78
108
131
87
110
136
98
89
134
66
96
154
109
76
88
154
154
91
99
155
83
112
91
123
69
109
101
106
175
160
78
123
79
99
111
76
88
134
94
137
89
91
71
107
106
87
120
87
110
121
110
209
76
151
99
99
101
78
117
145
119
69
102
120
156
104
94
100
89
143
156
80
78
115
154
97
201
94
151
89
72
80
69
79
108
78
103
99
134
87
104
104
87
89
108
76
52
69
87
112
89
88
100
54
130
56
76
93
87
66
87
140
121
96
107
89
93
110
151
103
143
178
109
104
109
94
155
76
76
83
104
74
120
69
69
69
95
127
89
99
149
64
99
121
80
133
87
118
80
131
69
69
87
54
136
80
72
96
135
157
131
197
102
112
99
128
69
89
117
130
136
87
89
101
119
94
128
82
131
88
80
113
110
175
105
78
69
112
130
107
146
175
150
175
91
78
69
117
80
109
78
128
120
156
107
101
87
95
144
76
166
197
168
129
80
112
123
69
129
94
113
101
127
75
116
69
59
147
69
87
80
98
78
90
128
117
69
101
133
88
78
85
87
107
80
67
54
132
69
114
96
100
69
93
122
119
69
76
76
128
96
106
74
69
88
101
93
91
106
151
117
107
119
87
112
83
99
134
112
175
102
100
69
109
134
93
110
148
108
142
120
64
60
87
87
128
69
122
132
69
94
59
52
128
88
80
92
175
56
110
156
78
80
175
79
93
107
80
96
80
163
113
199
159
116
71
93
156
110
78
175
119
107
136
122
132
80
155
155
106
54
112
120
106
91
94
109
127
109
74
89
99
99
80
137
71
98
69
76
120
150
138
80
94
110
117
117
119
118
86
80
87
69
120
109
140
132
85
69
104
123
122
56
136
87
131
130
104
80
107
154
120
154
79
157
175
88
69
110
99
112
144
87
106
95
104
145
54
145
112
87
110
84
69
110
98
117
68
120
80
80
128
98
137
78
98
88
88
88
128
82
136
87
107
101
166
59
109
131
87
107
115
80
85
120
148
102
87
99
80
154
106
89
155
163
76
122
166
154
88
132
144
111
131
96
89
87
88
95
127
132
116
104
131
129
89
128
134
84
76
74
72
111
72
76
94
78
103
78
93
78
69
82
80
96
66
175
87
78
129
87
64
66
105
97
104
89
110
95
78
109
80
69
114
102
88
79
89
88
78
155
76
175
119
93
78
69
121
129
108
89
54
176
134
140
113
120
74
91
76
115
129
112
115
136
78
156
54
112
128
87
87
80
93
80
94
76
174
102
117
94
144
140
197
121
85
102
106
99
80
110
59
78
94
104
103
136
79
67
105
69
137
91
106
132
175
119
154
128
109
175
69
102
106
98
130
115
110
160
76
87
85
163
52
120
91
87
101
88
104
124
76
95
85
76
88
149
124
175
131
69
136
76
87
72
124
78
148
119
119
151
94
89
112
130
87
125
98
101
89
115
94
128
69
132
72
76
79
79
118
138
87
112
97
174
136
94
76
134
94
91
76
69
87
110
131
175
163
152
119
152
91
76
110
93
120
134
120
104
136
69
131
87
112
89
110
56
88
76
80
119
76
79
87
80
71
56
88
143
118
58
68
175
99
136
114
134
87
85
123
124
114
127
121
107
100
99
56
78
134
88
88
90
136
140
106
109
69
96
76
121
136
101
80
114
120
115
80
119
94
131
114
80
91
88
69
109
154
80
94
88
95
80
73
143
69
80
89
76
69
156
76
72
156
109
78
89
156
104
64
69
87
155
80
80
155
120
107
127
91
69
94
87
60
94
69
118
87
85
109
128
69
80
64
89
80
52
78
136
78
112
118
122
112
95
78
163
119
115
98
72
72
89
140
114
156
80
146
71
151
69
123
110
69
151
96
87
133
78
82
80
80
76
110
69
107
64
106
148
136
117
69
175
83
78
96
54
133
99
156
80
80
110
78
96
112
80
80
76
117
78
78
82
155
136
94
134
118
102
87
111
113
69
69
175
151
95
136
74
80
125
56
98
69
80
91
138
111
69
151
76
94
127
136
112
131
160
87
117
175
69
155
125
143
107
78
76
96
69
101
120
162
80
127
76
98
110
119
197
113
69
93
175
149
77
78
91
96
119
107
94
109
66
87
146
134
99
98
87
89
109
172
120
85
111
126
102
106
111
137
87
80
93
169
87
133
87
117
91
119
109
73
120
134
87
156
156
123
113
134
107
94
76
69
162
92
114
71
209
175
128
121
115
104
140
120
122
175
131
78
110
72
146
94
80
123
78
91
80
122
91
88
80
131
69
119
103
89
80
126
107
127
94
111
69
107
66
69
197
107
93
80
175
99
107
110
131
93
119
117
78
140
52
111
99
69
122
80
114
136
148
69
120
102
175
94
107
88
122
76
88
121
94
78
101
54
88
184
107
52
138
112
87
80
87
120
94
107
56
109
94
117
131
131
89
100
130
163
121
80
138
90
107
79
131
140
197
101
69
100
78
85
78
128
145
96
102
99
101
80
107
103
140
110
107
78
109
109
163
91
175
78
106
69
119
144
130
117
69
102
125
87
80
102
87
130
128
139
71
100
101
107
82
111
101
121
72
94
138
80
114
67
69
88
185
89
101
147
147
121
121
80
131
120
146
106
96
94
176
121
78
156
156
134
96
145
102
126
102
146
103
109
115
199
127
93
137
87
119
110
76
106
97
102
91
121
104
163
88
99
151
88
111
110
94
82
129
43
197
93
106
78
113
197
119
131
94
96
107
80
109
81
106
115
91
94
112
121
134
96
76
101
104
120
106
87
114
112
113
120
80
120
145
119
94
126
175
101
99
69
94
87
112
123
80
88
69
116
135
102
107
96
140
113
133
110
87
96
100
88
136
102
114
79
119
80
109
80
69
89
72
145
80
88
136
75
128
107
120
78
104
130
69
56
87
67
69
95
155
72
155
120
95
80
122
154
151
110
78
137
87
100
112
156
151
72
69
84
117
120
96
80
119
107
80
109
72
69
91
109
94
120
69
112
78
95
113
119
151
87
69
112
97
119
131
102
74
110
83
119
175
116
119
106
80
82
87
115
120
72
80
80
82
121
87
80
87
119
104
75
93
87
80
121
134
120
138
131
74
120
119
109
98
140
129
78
82
152
130
63
120
112
80
119
80
129
74
122
114
96
76
69
94
99
115
87
80
124
94
87
69
109
117
152
87
105
100
102
87
138
78
137
133
154
110
128
72
98
127
117
94
80
123
71
80
80
143
154
128
124
126
109
94
88
100
82
107
152
126
110
154
113
80
122
175
127
111
197
119
79
115
197
88
106
99
134
98
145
69
78
132
100
80
87
79
93
87
154
109
93
151
85
80
104
88
109
76
78
151
69
73
121
88
155
104
43
133
78
136
115
106
99
107
87
74
121
143
132
90
133
69
80
93
154
72
80
89
98
160
127
117
93
69
90
145
88
113
75
81
87
80
87
86
103
89
89
120
121
138
106
76
156
87
78
78
112
72
107
95
140
133
144
93
107
110
134
80
80
119
87
116
119
133
87
80
94
69
107
120
88
69
76
129
101
54
109
140
155
99
127
134
69
169
146
111
138
87
155
140
122
115
164
72
69
109
169
69
69
119
115
119
134
66
96
153
106
130
134
88
89
113
121
99
78
64
67
99
125
136
133
69
123
80
128
110
87
93
52
106
82
87
54
56
100
131
85
107
92
136
87
100
69
69
104
125
140
104
76
119
119
124
164
78
113
93
156
110
134
151
82
100
76
73
99
72
139
80
80
80
137
76
87
109
74
122
109
106
96
146
102
106
136
43
106
120
80
109
76
69
91
132
124
92
128
127
89
175
89
87
102
96
106
82
99
134
148
113
95
124
89
107
69
113
134
87
81
121
88
69
88
99
56
76
87
94
88
107
69
83
76
78
80
80
87
110
80
117
93
155
69
126
197
154
104
88
129
87
80
119
93
74
96
72
145
136
94
80
151
101
110
164
175
88
76
96
63
136
80
78
102
109
76
136
80
175
80
118
109
69
90
98
101
75
113
149
99
209
80
145
102
98
69
111
128
99
72
96
104
92
123
103
78
94
96
119
71
144
101
80
92
95
118
77
87
85
128
106
108
134
69
76
147
119
69
89
155
80
111
117
121
154
69
67
99
99
69
87
76
80
76
108
94
138
103
119
93
80
147
134
112
94
69
69
133
89
154
113
79
152
93
150
197
78
154
142
164
118
99
88
69
90
108
134
119
119
59
76
101
154
93
80
101
109
136
137
175
76
112
91
119
69
107
87
69
140
120
85
58
163
117
137
152
145
121
120
83
67
118
113
69
98
78
133
79
87
69
117
128
107
197
181
100
99
104
121
80
75
93
88
69
156
109
69
78
107
151
94
69
131
80
76
93
52
88
107
54
80
93
113
87
99
175
106
121
83
78
128
83
69
80
110
131
100
93
113
96
104
74
94
109
120
43
148
64
130
88
118
136
139
83
89
120
80
121
80
109
112
99
100
151
104
102
89
76
87
75
89
56
67
111
87
162
101
96
110
107
56
164
132
69
114
101
123
56
80
82
83
119
119
79
151
155
112
197
89
156
119
118
107
72
52
99
175
117
126
131
69
80
76
67
80
78
163
137
128
79
78
69
76
106
80
120
69
122
134
141
125
90
124
63
120
157
87
129
128
109
94
181
109
111
99
71
136
129
56
146
90
155
91
80
96
164
56
136
117
128
78
76
122
122
131
96
113
175
87
78
121
69
104
91
107
119
76
69
119
113
94
142
78
69
172
119
80
109
112
58
78
129
130
80
87
78
94
148
175
111
119
80
113
113
59
80
79
121
80
106
144
136
126
107
88
102
116
80
206
120
106
80
107
78
75
104
131
109
87
54
76
128
145
88
80
132
127
155
93
94
93
107
144
197
108
134
115
96
117
117
140
88
110
95
119
175
69
120
80
132
134
126
117
101
78
52
140
133
100
94
97
129
92
109
157
78
87
128
107
78
114
85
52
56
101
155
78
87
74
107
113
154
128
114
113
100
76
80
177
104
139
144
69
133
104
119
76
129
136
197
80
110
175
112
119
105
80
118
106
138
119
87
69
118
98
64
69
129
114
118
110
117
113
127
197
127
87
80
101
125
141
136
87
69
122
82
78
99
76
112
142
102
80
94
128
89
118
72
113
82
154
140
119
80
127
99
128
80
69
183
128
99
89
107
107
110
175
197
89
91
104
77
139
94
132
104
122
69
76
80
175
87
117
59
164
106
209
80
134
140
87
80
128
138
69
99
94
103
134
87
112
76
54
114
69
127
107
138
110
124
127
148
79
89
183
119
88
80
193
112
175
124
107
110
117
56
152
99
146
113
110
94
117
81
169
67
111
136
174
76
87
157
78
132
148
52
145
94
199
87
163
87
116
89
85
107
69
83
156
80
150
115
109
162
193
161
118
129
197
78
121
78
80
148
88
80
140
151
127
142
141
60
136
125
72
89
82
93
100
88
88
80
87
121
145
93
89
119
87
163
80
112
80
134
126
87
119
101
91
128
69
201
78
88
148
89
56
82
87
120
87
146
151
107
75
156
163
138
98
140
110
134
134
76
98
94
174
144
121
137
85
96
134
154
78
197
100
113
155
80
120
69
132
93
80
78
152
109
113
69
80
89
126
90
98
131
143
89
98
155
92
83
96
87
143
128
80
80
88
111
115
133
117
132
83
119
74
69
128
69
87
64
133
148
93
141
69
128
80
152
108
80
87
80
78
121
112
107
72
106
76
114
156
119
82
120
80
137
76
72
119
109
98
112
72
69
120
81
112
112
78
83
52
75
76
140
78
133
110
121
131
91
80
80
131
176
119
110
121
139
43
199
80
104
121
71
132
141
98
133
88
76
69
91
80
80
78
130
144
107
80
93
120
110
52
136
74
128
117
69
74
69
104
120
113
146
133
197
142
113
120
101
119
120
91
107
66
69
76
152
112
99
157
121
80
54
112
101
132
76
72
107
102
118
89
120
69
80
95
112
100
99
113
113
119
102
119
122
113
119
120
131
147
93
122
116
80
101
136
127
94
133
80
94
80
76
142
89
80
109
111
83
160
80
54
140
72
69
136
110
78
80
78
145
119
76
136
78
88
114
101
88
100
163
115
96
118
98
146
145
109
95
109
95
80
123
147
140
175
121
109
91
131
117
69
85
76
83
85
120
91
118
80
100
113
110
123
197
128
85
90
111
80
134
67
88
137
166
115
147
87
119
80
175
163
87
99
134
102
119
154
136
78
122
107
80
136
72
69
76
80
104
96
152
119
69
101
120
119
87
107
129
76
106
76
76
69
146
101
120
121
113
131
78
101
121
76
74
132
80
89
113
88
76
99
147
118
76
99
87
140
129
136
88
78
175
119
137
113
119
69
164
102
110
140
80
114
103
119
197
136
135
80
101
89
98
144
96
87
197
105
109
66
121
128
113
151
119
107
119
134
96
143
126
143
143
109
109
87
126
69
109
69
91
154
69
129
154
146
76
69
175
107
142
95
93
69
106
107
120
69
80
113
115
91
127
85
87
83
100
120
72
157
114
80
113
122
110
175
106
80
87
197
134
93
79
154
91
117
69
76
175
93
104
78
80
107
78
119
60
107
143
120
80
104
109
123
88
117
124
119
69
110
120
72
145
122
106
80
76
164
124
69
80
132
87
121
115
107
156
197
43
120
100
111
78
104
88
113
80
76
110
87
93
78
104
110
88
89
100
140
132
175
163
134
99
78
91
76
78
88
117
93
109
102
89
69
113
76
87
69
104
106
110
76
78
138
121
209
76
148
96
88
69
99
69
106
121
80
101
109
75
134
115
102
80
89
125
80
89
160
100
104
119
99
150
115
120
118
106
107
110
133
83
76
87
148
166
105
119
91
118
76
137
154
95
95
146
119
124
111
80
67
119
132
56
110
110
112
89
136
69
87
123
132
140
187
76
80
104
135
90
80
80
163
94
143
154
78
125
139
96
159
107
87
121
175
90
120
113
154
102
90
148
87
117
117
130
69
106
88
71
76
80
120
112
96
101
54
112
88
128
89
63
80
93
80
140
174
57
91
130
88
127
89
118
156
148
69
129
107
102
52
126
88
117
96
96
78
89
119
100
144
164
106
110
136
87
119
154
163
80
112
197
74
110
75
121
87
127
136
117
99
99
115
137
136
140
111
85
128
95
119
78
154
80
146
52
181
94
113
76
69
107
107
109
93
154
87
56
176
136
69
144
69
115
128
88
80
151
88
69
69
115
78
104
107
110
99
126
54
163
143
163
156
121
156
80
101
131
154
132
72
150
113
175
76
89
178
69
104
87
106
76
121
76
130
103
156
94
119
73
101
130
80
94
109
95
112
94
93
136
76
147
119
136
76
78
101
80
80
112
87
80
88
118
69
175
80
87
69
139
129
117
80
128
89
87
156
131
146
111
140
76
160
156
87
87
80
74
120
127
80
102
69
93
151
80
125
117
69
120
56
117
80
87
104
136
80
80
93
95
99
69
197
91
76
93
66
132
78
129
131
138
175
98
89
136
80
69
78
66
52
109
88
80
88
137
120
144
109
56
119
54
131
117
136
151
140
69
136
116
74
156
98
80
85
69
80
80
175
134
131
125
69
127
143
87
156
80
80
93
91
107
136
99
143
163
89
128
120
110
104
174
80
80
113
78
77
109
114
127
119
80
89
126
99
115
119
113
78
80
154
69
79
69
95
140
87
106
113
197
129
119
74
120
120
87
82
100
80
99
97
128
147
87
101
94
78
99
134
80
175
155
100
144
80
104
124
87
80
74
85
107
120
154
94
80
101
87
110
130
105
175
175
121
69
80
69
115
129
99
76
54
96
94
131
56
109
131
90
119
149
127
100
80
124
104
128
69
122
107
103
128
120
197
87
131
145
91
60
89
127
145
117
89
88
93
78
112
143
113
99
69
163
187
93
112
128
80
154
72
136
149
78
54
111
120
113
78
80
80
110
80
69
114
103
80
125
131
80
118
99
134
79
80
94
107
136
136
100
175
69
175
73
121
89
164
118
146
76
128
99
76
87
140
76
130
121
201
80
69
132
94
121
113
76
83
120
138
87
107
154
175
78
174
88
79
128
91
151
80
125
97
178
85
152
91
88
52
89
89
129
123
151
80
131
125
131
117
145
197
128
98
80
97
119
89
80
107
87
78
91
136
118
137
114
76
154
107
56
122
121
117
88
136
93
146
94
80
69
160
80
98
69
69
126
104
132
80
80
102
76
107
120
80
138
87
80
80
151
120
94
69
98
102
74
164
99
69
100
109
183
95
80
134
76
144
112
88
80
84
134
115
102
80
99
98
91
127
98
128
117
122
69
78
111
94
69
113
126
76
124
82
117
69
121
126
107
71
69
175
80
78
114
106
72
131
93
110
129
110
117
87
155
109
145
110
104
121
71
119
78
107
88
69
78
136
89
112
131
74
129
143
156
93
107
108
80
120
167
99
96
75
119
69
99
115
94
69
135
128
150
154
80
87
94
145
105
134
101
175
120
110
117
183
80
129
146
87
99
87
80
125
95
154
128
98
87
119
119
76
83
118
72
163
93
160
181
132
86
80
76
88
128
93
126
90
152
67
99
106
80
109
175
119
133
109
80
128
99
138
197
112
131
69
113
121
78
80
54
93
94
131
76
119
80
69
111
78
117
79
80
111
87
124
69
112
121
144
88
94
72
113
78
126
128
112
115
137
84
96
122
80
124
87
136
134
82
93
107
93
107
76
123
119
69
78
133
154
110
69
80
69
185
99
124
117
78
118
76
127
102
104
133
124
99
119
80
106
80
110
119
109
88
146
98
78
121
80
125
69
175
69
99
69
69
103
149
80
126
121
109
99
131
80
76
116
80
72
99
106
99
137
76
69
78
110
95
77
80
80
99
76
111
112
113
88
155
107
115
127
105
69
69
118
143
115
112
100
94
156
87
134
104
120
88
114
134
197
99
163
124
130
112
119
99
88
87
127
107
88
122
69
80
163
88
123
119
92
157
156
69
87
110
43
134
69
91
94
128
118
146
89
107
112
99
80
80
138
87
154
80
78
128
128
113
89
169
106
56
94
87
80
90
88
126
69
114
138
87
69
87
172
69
123
88
87
88
129
128
92
85
107
107
80
119
152
99
123
103
110
148
52
98
147
175
87
142
94
74
199
80
156
83
110
78
80
76
145
87
109
87
80
73
79
87
82
89
94
124
120
80
137
117
109
134
69
109
76
131
87
119
69
54
69
88
76
134
107
93
94
164
131
145
106
101
66
133
87
120
87
87
76
69
80
128
88
87
69
116
123
76
88
175
93
87
93
74
115
56
96
113
136
102
80
69
80
106
119
134
110
76
78
84
120
89
119
112
94
131
111
128
80
52
69
140
67
144
54
76
78
119
100
175
83
78
120
155
123
128
76
148
110
69
143
80
91
93
99
79
117
127
94
82
106
92
100
87
78
107
127
88
118
197
69
96
149
115
140
126
80
136
69
120
154
56
88
117
132
175
132
76
54
197
163
94
146
128
154
80
95
89
117
80
117
89
118
78
82
80
98
119
154
54
152
115
80
80
127
154
159
58
67
120
85
145
149
134
137
95
146
111
78
104
181
119
120
99
156
96
118
80
89
102
133
120
113
132
150
145
134
76
151
87
98
72
175
137
114
124
69
140
96
120
120
130
90
56
94
120
88
95
80
140
72
127
69
69
54
124
119
185
87
80
80
80
178
78
119
144
128
113
76
107
166
107
136
112
131
134
104
91
104
138
80
160
98
76
80
114
58
80
83
72
87
175
134
120
74
92
73
76
154
74
98
88
85
113
78
94
106
134
99
80
155
62
80
80
114
89
106
109
78
155
120
109
131
117
80
88
79
76
117
104
113
96
128
90
98
69
74
181
131
117
74
78
75
69
121
69
113
131
76
119
89
112
78
78
78
72
131
88
72
85
154
121
138
111
174
110
166
118
97
69
107
113
80
120
136
78
69
154
87
69
74
78
52
121
107
78
120
82
99
96
139
174
76
157
115
69
120
197
87
80
76
175
91
175
85
80
92
154
87
120
76
139
87
119
128
106
69
76
163
75
154
99
121
122
117
69
107
133
95
118
119
96
117
119
134
107
112
69
113
99
101
69
120
110
121
63
93
117
131
107
87
93
104
80
175
74
69
66
121
96
85
156
80
74
91
94
181
69
107
128
80
195
87
98
120
154
75
143
87
163
76
80
80
69
69
83
175
74
99
87
52
113
72
110
88
82
69
89
120
79
76
115
56
87
52
80
78
69
91
119
107
89
146
69
94
72
106
143
104
88
136
69
120
136
119
118
87
104
110
120
78
88
91
54
69
96
59
74
146
175
111
94
87
112
162
123
78
113
136
154
94
80
110
128
107
109
69
102
131
102
78
107
89
56
100
120
136
89
87
69
104
114
56
104
119
75
54
69
175
43
134
89
69
144
131
78
197
93
178
80
147
99
117
144
155
103
102
80
110
101
112
69
147
59
175
107
114
76
94
197
116
104
93
111
88
80
155
146
118
148
138
122
121
110
99
109
115
113
109
153
72
99
117
89
80
96
69
131
78
101
113
80
119
69
197
69
88
146
119
163
104
76
72
128
131
130
175
102
104
146
120
80
106
147
154
87
143
87
123
134
80
121
112
93
72
91
113
82
114
102
93
52
87
137
185
107
78
75
132
154
128
107
80
119
80
87
128
76
175
104
78
121
119
103
72
124
87
154
156
115
94
85
119
106
126
80
93
96
80
134
99
69
99
126
131
96
137
197
83
87
76
80
88
109
78
69
119
69
63
88
93
127
78
131
91
69
86
80
144
119
87
89
99
136
78
117
143
119
78
69
101
80
69
89
71
110
118
157
69
117
69
99
80
110
131
154
134
151
96
117
113
110
170
185
130
80
113
119
69
80
54
111
87
117
175
94
131
118
119
69
119
140
118
94
104
120
78
94
101
136
127
69
69
96
102
137
109
175
118
111
99
93
99
136
140
78
94
112
120
142
156
154
124
151
165
80
135
94
76
107
137
120
120
99
110
87
87
175
140
76
64
76
155
174
74
98
87
78
163
175
120
175
120
74
76
59
73
135
117
109
125
103
145
106
107
109
136
120
76
69
89
78
87
106
76
76
113
122
93
116
91
91
154
99
78
124
131
76
140
117
140
78
88
80
122
90
201
52
80
117
125
87
89
154
80
102
80
159
88
146
107
117
99
107
109
109
115
169
121
93
69
138
187
100
110
86
138
119
84
121
143
137
87
165
98
78
78
58
145
119
74
199
107
111
129
90
93
52
78
78
133
80
76
74
156
155
136
71
156
78
134
121
91
89
131
110
87
97
115
174
88
122
87
102
169
89
69
89
76
140
131
134
125
183
76
76
156
111
119
136
120
148
134
124
153
89
76
113
107
97
107
154
69
132
52
93
136
131
120
154
101
99
89
69
146
144
69
142
119
96
144
88
146
107
99
119
124
164
95
80
136
148
69
175
103
82
80
72
99
121
117
91
124
86
140
123
107
76
134
138
110
144
109
140
101
80
87
83
130
109
76
122
88
117
109
156
80
172
93
104
104
87
110
151
94
69
147
128
151
129
137
76
165
174
124
144
152
89
80
154
66
150
156
69
76
128
91
100
80
72
80
106
69
104
101
142
87
76
139
99
89
124
107
99
52
118
172
113
72
119
91
101
106
100
69
127
104
69
162
131
156
136
79
99
119
175
140
147
129
103
80
72
109
86
115
75
102
69
89
91
124
69
119
79
76
136
94
69
87
154
110
54
131
114
107
95
117
110
92
120
121
117
52
56
140
109
111
76
107
132
52
96
85
85
128
69
78
164
76
87
85
104
109
113
87
102
104
101
120
80
112
137
110
106
107
107
130
80
110
64
94
101
127
80
129
88
133
126
137
100
142
183
132
99
174
69
76
134
144
139
162
98
136
107
107
151
105
69
69
69
80
99
151
99
136
112
96
134
174
196
72
117
94
113
117
109
69
99
66
124
152
91
80
140
98
109
155
54
104
80
155
78
101
102
102
69
72
123
80
114
123
80
104
78
89
155
95
87
111
69
67
69
76
107
107
176
80
74
145
99
80
175
90
96
152
136
100
101
136
76
197
94
113
80
94
119
151
110
152
109
80
114
107
89
85
117
129
103
109
136
165
108
130
122
63
80
141
114
72
175
104
99
99
87
89
76
69
109
91
69
69
89
80
117
76
110
87
93
80
113
89
76
121
80
134
80
72
103
126
104
117
72
76
175
88
69
119
100
136
80
76
101
80
114
87
69
69
74
88
131
72
175
85
82
156
80
98
119
115
119
123
76
114
99
94
100
80
69
107
104
129
94
123
126
69
120
78
117
131
94
116
119
78
122
128
99
110
163
100
128
109
175
82
145
69
98
69
87
91
174
128
95
107
128
174
96
88
151
133
156
69
87
106
94
80
83
104
117
120
120
80
83
93
101
78
104
113
80
96
80
69
104
85
90
123
87
197
69
113
76
152
106
149
183
80
121
125
80
110
69
104
104
80
126
106
147
133
69
152
96
117
80
67
100
110
107
80
69
54
78
54
121
94
120
136
128
72
143
94
92
128
107
80
109
94
106
94
80
104
106
69
99
105
80
87
136
110
80
87
87
89
123
89
87
99
174
64
99
81
99
136
90
87
93
72
151
87
126
131
155
88
120
185
79
124
197
107
154
112
54
80
80
125
79
100
163
69
140
76
109
110
120
132
119
67
89
134
175
149
119
80
154
156
94
106
175
153
144
169
116
96
136
136
102
107
96
128
119
154
119
102
80
99
85
80
156
146
126
154
120
118
185
104
80
117
128
89
110
69
88
147
76
76
68
104
143
89
74
112
78
128
69
80
117
88
113
114
175
142
136
80
69
109
124
85
112
131
120
174
115
122
91
119
175
117
52
90
156
99
113
121
95
85
134
118
108
154
162
120
163
69
145
145
99
127
80
85
126
80
75
155
123
76
80
172
137
120
197
175
110
147
71
136
118
83
128
122
99
87
72
110
69
102
80
145
99
91
146
107
107
96
69
69
106
146
143
114
87
119
107
154
131
99
124
104
91
95
140
121
91
101
80
110
136
92
140
110
69
105
78
121
117
95
69
88
69
73
87
69
80
79
118
80
119
120
122
119
80
94
197
150
93
110
94
156
88
155
94
119
66
93
146
88
119
63
108
115
80
131
96
93
175
69
80
89
76
80
96
119
78
100
78
120
110
82
103
136
64
91
76
162
80
76
127
87
116
80
99
128
115
85
78
172
103
66
109
102
78
89
76
107
96
98
54
109
128
155
155
94
119
104
109
117
110
78
109
80
109
69
88
103
109
80
87
69
80
145
71
163
80
80
155
52
107
72
130
76
94
128
164
54
99
139
94
120
154
80
100
80
113
110
76
80
104
74
87
96
145
56
134
89
80
163
119
59
124
117
104
100
104
118
201
104
103
101
78
106
125
149
79
163
94
121
96
119
107
69
87
113
87
76
114
111
89
133
80
99
130
56
80
108
152
43
91
134
106
131
131
80
80
78
197
151
91
119
104
110
143
57
80
67
128
69
121
128
133
127
129
114
148
106
96
119
92
107
120
87
129
151
81
110
78
148
128
78
106
175
80
131
103
122
94
101
124
183
107
74
69
72
91
54
128
128
72
126
106
175
197
54
118
159
111
72
109
91
128
80
123
87
76
87
131
69
163
91
126
70
83
80
100
80
120
93
110
113
104
108
98
69
80
90
131
93
136
72
78
76
175
99
95
113
117
151
112
87
78
89
110
78
76
110
76
102
78
69
103
76
69
78
91
154
92
153
69
90
89
144
117
89
93
110
101
156
80
124
80
89
69
82
104
69
135
69
133
91
69
72
87
107
80
102
114
187
99
101
79
52
101
112
87
78
131
112
100
80
123
137
154
154
131
52
153
137
67
119
102
146
76
69
128
99
129
87
80
104
113
115
72
134
78
94
85
80
88
136
132
131
112
145
87
104
175
93
126
74
80
128
72
69
93
107
121
94
104
139
69
72
118
144
155
80
164
143
112
140
102
104
88
128
154
152
126
69
156
69
110
93
90
95
76
72
136
128
80
72
80
142
69
175
69
110
76
87
140
109
101
76
80
136
112
87
76
79
78
88
99
78
71
99
107
156
92
115
104
154
54
89
67
112
93
98
105
72
109
72
147
98
78
82
78
146
141
197
120
104
90
91
107
136
156
119
136
80
112
87
109
69
107
85
155
87
78
197
99
146
133
80
134
96
95
113
175
119
120
85
123
87
99
89
139
145
107
87
78
94
94
93
80
69
89
87
102
106
109
88
69
164
56
121
80
113
94
120
116
69
69
87
88
111
96
78
87
155
149
112
112
143
96
60
127
154
94
69
69
74
78
87
76
94
144
119
140
120
90
54
100
124
78
88
99
127
93
78
113
52
109
69
124
56
136
123
80
96
56
145
104
107
156
120
131
93
76
163
155
128
113
154
108
151
145
102
110
175
101
72
147
109
104
72
88
76
80
115
140
80
87
166
100
115
89
102
159
136
137
116
163
160
88
155
88
78
102
78
175
80
85
154
74
83
144
98
109
113
125
175
110
88
91
175
80
74
104
80
143
145
69
80
104
76
79
175
78
146
130
69
112
123
89
99
145
136
78
197
72
69
107
93
138
93
88
154
76
107
89
166
80
72
87
95
122
80
160
87
80
109
120
119
80
119
99
97
109
69
69
72
156
96
154
99
80
109
85
69
124
72
76
80
87
132
100
147
143
99
163
80
96
106
80
96
151
109
78
120
87
126
115
110
112
118
94
87
97
153
121
100
54
175
78
101
78
52
126
147
76
80
103
99
69
107
101
88
89
145
197
197
119
76
174
76
122
106
134
69
99
69
69
90
80
76
54
106
154
91
112
72
76
89
78
106
160
123
129
78
91
91
128
120
119
127
78
144
89
156
140
87
76
96
107
83
134
80
152
128
133
85
80
110
69
119
72
154
69
102
76
111
72
109
118
119
121
110
99
74
118
106
76
80
183
134
160
140
171
122
114
76
175
174
101
69
107
69
107
94
69
73
83
151
126
140
119
154
87
106
64
124
69
175
140
69
104
69
131
96
87
116
110
163
109
128
101
69
69
69
148
99
78
86
131
83
156
143
120
99
112
117
111
91
112
96
80
69
93
83
95
79
71
78
83
69
89
183
138
101
69
131
133
154
134
116
137
128
134
175
80
78
128
136
107
140
119
154
137
197
78
76
126
140
85
99
107
130
131
104
107
136
114
80
69
109
87
67
69
113
56
155
113
76
120
95
109
100
119
94
89
134
98
126
127
72
118
154
80
153
87
74
106
102
102
145
69
112
110
109
78
140
110
152
201
90
88
128
80
134
80
89
106
163
117
101
141
151
165
89
104
110
74
54
80
91
107
128
159
72
80
76
87
57
123
137
98
80
110
76
145
119
104
102
80
127
104
143
145
114
128
78
128
76
80
119
154
59
130
72
69
80
54
117
78
94
123
104
54
119
121
101
94
80
102
102
93
127
104
107
78
137
181
72
125
80
69
74
83
80
122
72
91
93
103
104
110
124
106
140
104
94
96
122
102
89
115
78
154
64
107
87
117
87
66
128
134
155
94
120
54
154
155
83
69
85
122
175
137
113
89
104
72
87
144
122
86
80
91
124
80
110
78
78
154
131
116
175
140
100
54
66
197
87
90
56
66
89
69
107
120
87
78
89
99
107
78
134
156
113
136
123
175
151
93
118
100
87
80
76
104
101
131
119
112
99
80
113
175
52
92
128
69
154
111
112
114
105
87
90
126
113
80
76
99
110
87
110
78
128
127
114
96
94
124
187
128
76
80
101
101
99
88
121
175
99
138
120
80
121
87
100
119
98
111
80
119
128
110
58
111
96
89
88
93
54
146
80
80
79
113
69
154
69
87
115
69
156
119
127
94
91
107
80
124
69
121
111
73
94
88
80
119
94
87
152
80
80
78
76
76
80
119
80
109
120
111
89
110
80
120
133
99
87
134
119
121
127
118
110
99
165
83
80
123
43
155
67
115
175
175
91
175
69
144
120
120
85
156
101
71
133
74
101
91
120
120
163
114
115
154
154
127
69
103
106
129
127
69
89
88
69
91
118
94
121
93
129
80
115
43
102
54
69
72
99
104
80
69
119
94
69
131
119
133
87
83
111
69
89
122
111
54
164
71
154
56
104
80
118
121
78
154
94
80
78
87
107
97
128
89
87
109
112
163
69
90
87
106
137
88
116
79
129
69
127
80
99
88
152
88
80
146
156
131
80
104
113
120
96
113
117
111
138
117
52
154
72
69
103
93
116
121
87
91
140
134
87
78
100
78
64
136
154
89
79
85
110
107
133
74
118
54
102
106
72
157
146
80
104
91
80
154
69
111
123
107
137
117
151
88
99
128
72
112
76
99
100
107
101
134
87
76
109
87
107
106
148
133
85
88
122
174
119
69
87
131
165
78
80
132
94
119
69
69
133
120
69
120
102
154
143
112
154
117
76
149
111
109
88
93
78
87
128
96
56
134
91
78
89
72
109
78
80
88
164
106
102
87
81
87
123
80
107
91
106
69
74
136
102
56
99
128
80
154
87
79
106
143
89
69
78
107
72
128
108
80
122
130
80
123
181
87
139
69
111
89
131
85
69
94
94
146
102
98
88
131
69
116
112
89
69
164
163
69
106
118
78
99
102
69
114
80
89
128
129
69
138
99
78
97
85
94
138
142
97
128
112
183
136
120
107
128
80
120
80
131
114
155
109
175
92
75
100
91
133
74
148
154
88
99
80
131
88
69
87
109
104
138
80
164
54
85
93
93
103
149
118
118
87
110
99
78
131
164
93
154
87
144
113
101
119
147
137
134
69
175
127
80
106
140
69
128
122
69
83
107
107
83
69
87
93
124
100
93
209
134
69
56
150
80
110
85
96
91
80
87
95
114
80
120
105
94
175
110
154
80
156
69
83
145
80
109
94
136
114
72
76
110
119
118
59
78
80
119
112
134
80
80
89
91
104
119
163
134
155
99
74
157
88
108
107
199
175
154
151
137
87
87
134
154
67
60
175
124
94
80
69
119
112
127
78
135
95
69
123
110
121
74
72
87
134
112
123
76
78
138
98
128
66
79
78
91
121
134
110
127
151
101
78
121
125
158
118
113
151
128
121
95
154
117
133
78
121
109
88
128
133
80
101
127
93
151
87
155
80
99
80
99
154
59
82
96
164
199
101
76
134
69
80
136
156
52
94
69
175
128
130
76
52
108
146
142
99
118
110
110
156
112
69
87
67
136
127
95
89
80
120
106
119
80
122
80
90
128
142
69
112
109
129
114
120
91
72
106
100
107
69
145
101
181
107
76
96
117
99
175
94
127
199
175
88
106
78
78
75
89
101
99
115
109
88
146
102
67
134
101
126
69
152
76
69
152
80
89
175
88
175
80
96
174
119
157
76
80
104
90
78
133
69
93
66
113
121
78
149
112
114
199
140
93
140
80
127
89
155
80
69
78
76
113
107
120
87
91
85
66
72
109
136
90
76
99
78
93
75
69
87
104
69
103
80
94
115
80
146
120
69
76
119
107
79
99
151
107
140
144
121
148
142
69
72
80
120
140
69
80
124
69
119
107
80
69
146
140
115
104
181
115
119
52
114
128
72
169
79
128
100
86
137
118
78
87
131
87
78
76
103
82
100
54
78
94
69
156
119
101
99
146
119
128
154
145
74
94
78
78
140
102
128
121
147
80
139
109
119
134
78
95
101
80
85
93
126
121
90
89
145
99
80
94
109
119
81
140
74
124
137
96
145
106
72
175
96
104
94
87
156
90
96
115
115
80
74
80
80
101
155
80
104
136
80
72
99
80
78
90
78
128
78
87
120
104
87
114
69
99
123
78
121
150
124
69
151
99
80
119
110
127
159
80
127
120
69
80
131
151
69
120
94
69
154
99
74
78
99
58
175
78
94
76
69
76
91
122
138
110
78
133
148
148
87
91
136
87
87
175
80
90
95
69
91
69
78
87
101
76
66
114
126
112
69
104
89
158
54
92
80
197
128
104
87
67
121
125
119
80
90
96
92
80
104
129
78
143
121
93
79
85
80
129
103
80
146
80
96
99
120
102
128
80
97
79
110
68
119
107
106
123
119
110
54
107
80
143
80
95
88
120
79
126
155
69
76
118
166
74
78
116
69
105
88
163
121
118
119
88
137
128
87
120
110
108
87
90
85
80
121
138
147
79
154
69
80
99
69
130
98
93
119
80
80
94
136
152
119
107
80
155
80
107
78
140
96
112
103
88
122
99
102
94
119
155
128
93
87
89
131
114
106
131
78
78
94
151
90
99
80
107
69
98
80
69
92
96
149
78
156
106
69
119
94
106
54
151
69
152
99
157
119
76
83
95
78
104
133
68
128
78
100
162
78
197
66
85
82
107
102
131
130
109
89
124
155
125
131
87
128
54
72
99
94
94
120
149
77
107
128
80
156
77
76
149
96
100
120
72
89
164
78
151
147
119
85
174
80
80
181
80
72
88
119
125
209
119
69
96
119
127
109
163
113
119
80
107
104
99
52
72
78
80
72
130
87
112
91
67
76
99
76
114
64
197
69
143
137
96
107
132
87
87
115
76
119
119
124
119
64
89
196
136
152
78
69
110
154
90
115
96
74
64
112
76
91
80
91
80
99
107
120
89
110
154
130
119
140
150
106
73
100
121
69
147
82
101
54
136
175
128
109
78
99
115
82
124
87
163
151
109
136
147
147
69
122
135
120
115
126
94
113
80
107
109
119
132
103
159
54
85
107
136
106
129
88
66
107
148
175
109
101
132
80
119
75
60
78
87
115
112
107
157
93
80
109
117
93
197
140
89
80
91
127
90
106
87
87
103
71
80
88
80
113
121
87
88
80
119
54
164
154
78
134
101
110
127
147
101
102
87
87
131
120
145
127
98
99
155
103
131
105
128
142
89
93
127
104
80
80
140
111
93
83
80
135
119
112
154
107
94
175
85
87
101
78
122
117
109
117
72
80
127
74
175
124
80
106
99
104
93
96
145
148
84
163
105
69
101
134
164
138
107
156
136
112
74
121
124
87
119
128
69
89
120
132
94
102
74
78
119
112
120
145
125
87
89
117
122
133
106
87
69
87
88
154
101
91
78
74
90
104
78
74
156
175
69
197
156
87
76
128
78
87
111
52
119
99
78
113
120
80
76
80
89
140
103
87
175
87
87
119
146
101
96
102
101
80
78
122
146
155
69
118
87
78
175
80
120
146
80
127
132
209
145
150
93
69
139
148
113
118
102
107
103
87
93
102
80
69
103
154
160
112
115
80
145
83
138
145
43
105
104
94
78
96
128
156
138
104
80
107
54
166
90
69
125
172
131
101
80
122
96
80
80
143
109
102
91
80
68
201
132
80
80
93
87
99
111
104
76
87
107
145
85
114
69
104
104
83
91
88
119
96
122
91
87
76
118
143
80
139
116
94
152
71
43
69
133
69
106
128
96
103
112
78
130
99
69
117
94
78
89
87
140
92
112
138
87
82
128
120
134
102
148
112
113
74
122
96
107
134
80
87
175
69
93
89
131
69
113
79
80
69
99
78
121
122
80
126
112
91
175
101
77
197
153
76
121
107
119
87
56
80
101
106
113
88
98
109
125
108
99
98
109
120
85
94
160
115
69
78
148
123
78
164
163
76
113
119
199
54
163
72
69
144
102
89
69
137
67
104
175
145
83
116
117
163
99
80
111
88
126
83
72
106
87
152
104
162
104
76
128
103
156
94
71
115
80
87
106
121
142
89
129
106
104
106
87
93
76
73
104
113
136
175
130
107
80
94
69
69
94
109
119
133
82
113
99
80
112
85
80
69
80
80
80
107
136
119
154
151
140
72
101
129
69
205
78
147
99
137
104
181
111
92
113
85
175
94
66
78
89
86
78
76
87
121
127
80
109
107
113
112
94
80
113
109
113
117
99
121
126
69
106
69
117
80
121
76
209
94
128
119
52
128
111
80
80
80
115
85
130
118
89
107
125
87
107
174
106
95
91
187
56
106
137
141
127
78
104
80
88
106
80
110
140
76
118
107
128
128
119
87
107
56
78
130
103
75
112
78
99
72
80
113
94
119
85
91
80
54
175
104
163
80
87
120
93
119
76
57
136
74
144
119
148
111
80
106
122
74
104
74
112
117
94
79
121
154
128
103
155
109
78
119
159
112
80
83
119
85
175
125
131
82
148
54
88
80
69
78
104
120
107
80
158
134
128
119
88
69
136
87
102
106
197
97
117
87
75
67
130
122
116
74
89
69
89
80
101
69
67
86
87
72
113
80
131
175
78
121
80
80
120
96
93
112
109
69
78
80
88
76
131
97
78
99
87
88
89
99
69
87
76
152
78
76
93
208
120
130
88
76
66
99
72
82
140
156
104
94
107
67
102
154
134
121
121
108
110
74
118
81
99
89
94
80
118
128
122
89
155
123
163
89
134
159
102
109
127
115
131
145
143
113
154
122
76
87
115
80
88
88
99
134
142
80
120
80
72
88
131
131
124
109
131
156
175
95
137
78
145
122
156
111
121
128
106
160
97
100
119
109
201
106
104
159
94
120
101
69
109
75
151
159
74
133
131
96
85
123
98
96
99
156
101
78
113
101
114
80
135
54
86
133
118
72
139
72
148
107
80
134
121
136
123
75
69
174
80
99
131
80
155
120
87
69
114
74
120
87
80
118
80
120
106
107
54
211
111
80
96
95
109
109
71
85
175
69
80
78
69
102
175
128
76
110
99
69
75
117
112
96
128
121
125
106
100
134
80
94
99
80
106
80
142
113
197
150
110
137
131
80
114
117
91
87
147
113
69
155
54
144
99
107
110
76
151
100
120
138
115
104
80
107
107
93
107
112
84
69
97
80
52
134
69
80
113
117
74
80
115
131
78
126
74
80
136
109
199
80
101
78
78
109
80
80
134
154
121
80
113
120
78
96
78
78
101
52
127
120
146
87
132
128
157
119
119
144
72
100
99
146
121
69
90
140
83
175
127
54
106
121
134
138
122
43
84
109
66
71
87
88
95
76
87
66
104
119
119
100
109
127
87
117
87
142
102
120
115
169
80
76
165
131
76
87
175
203
78
103
109
106
59
80
78
197
83
95
121
122
137
67
87
101
69
95
127
175
152
69
165
79
96
98
113
80
136
134
85
92
128
78
118
127
119
104
155
87
88
109
69
133
109
69
111
89
88
78
107
80
104
151
111
104
121
99
131
109
136
175
148
91
72
122
85
80
119
69
54
114
94
78
99
80
85
121
121
80
154
131
136
113
154
94
87
89
98
129
163
111
137
95
106
120
131
110
155
94
109
148
80
119
120
87
91
140
99
67
106
80
106
155
80
104
112
99
85
107
72
160
128
154
87
94
87
107
87
109
119
145
69
163
109
66
107
80
175
121
112
78
72
94
80
99
96
154
79
119
106
94
76
69
91
118
124
121
128
128
99
101
56
117
155
80
109
110
97
131
128
110
80
163
175
154
80
197
88
127
117
80
80
160
60
156
134
158
109
69
107
100
75
119
52
107
80
91
181
106
151
115
76
78
89
76
89
110
148
71
69
90
80
99
143
73
87
117
151
69
145
89
122
121
69
104
120
107
69
80
87
87
89
91
69
78
96
118
87
107
54
95
145
95
119
72
109
110
88
106
155
110
150
102
87
87
80
110
69
121
69
99
69
69
134
106
108
96
76
131
175
111
69
155
144
76
54
107
80
87
117
106
80
125
80
110
98
175
131
154
151
98
69
75
172
119
135
163
100
128
119
154
68
175
126
80
174
130
107
132
94
92
152
104
94
106
94
131
76
69
119
102
64
122
80
117
87
106
134
145
99
132
69
76
87
80
102
89
107
76
128
80
119
100
113
104
87
99
80
117
175
100
80
107
87
89
80
69
76
78
110
132
89
102
89
150
91
120
80
96
143
87
82
99
74
88
69
78
119
87
87
148
130
80
80
76
175
106
69
147
99
119
99
132
109
80
117
87
111
112
89
80
137
112
88
143
98
109
109
152
139
151
87
80
102
81
80
146
95
93
112
148
181
130
107
103
111
94
92
118
146
126
78
128
137
137
85
124
80
77
114
119
102
80
78
115
100
87
95
112
121
111
140
79
96
66
91
80
99
109
138
59
117
181
175
78
80
121
115
87
119
69
87
127
93
91
157
197
72
110
120
114
119
115
80
128
74
134
80
101
80
99
69
163
94
157
130
148
76
109
154
69
136
122
85
76
87
80
135
124
78
175
94
66
80
175
185
99
67
81
76
197
89
164
99
87
195
155
89
125
87
155
119
73
137
165
72
80
119
80
80
136
131
107
98
152
106
107
88
144
110
94
89
145
155
107
75
119
67
80
94
69
119
101
189
88
99
131
131
140
137
113
69
107
131
94
87
151
76
197
76
88
69
96
80
133
94
112
66
101
181
117
87
80
99
94
43
128
119
80
78
69
99
197
93
80
130
69
133
67
137
90
107
122
99
69
74
87
93
87
88
110
75
87
52
76
118
80
80
87
155
104
131
110
85
130
154
99
69
101
122
96
87
83
106
131
80
122
78
197
69
99
120
110
134
109
78
89
80
69
156
121
128
155
87
72
134
174
99
101
87
133
130
80
108
128
90
76
140
80
79
105
175
175
88
112
72
140
140
89
69
156
76
76
181
113
113
119
66
119
93
74
69
137
76
126
120
145
69
129
102
163
151
63
64
175
121
80
112
134
120
120
114
69
140
89
115
102
114
93
104
162
123
80
93
119
69
139
171
146
175
98
89
100
69
80
76
118
69
128
112
117
107
120
119
147
78
134
80
74
109
93
104
89
143
174
150
117
137
127
197
87
88
99
101
154
68
66
69
81
88
66
117
136
52
80
113
113
114
89
134
121
94
94
110
52
76
80
69
130
134
120
164
74
89
107
120
104
80
113
93
134
73
88
155
110
118
96
87
120
69
98
123
80
64
109
69
87
110
122
107
76
87
139
78
69
89
175
115
69
107
69
140
69
121
96
136
76
98
119
87
94
175
107
146
132
120
136
113
119
75
113
201
80
110
78
88
164
78
128
129
94
119
102
119
151
145
148
88
154
140
76
86
88
134
76
154
109
134
100
80
134
69
116
134
107
155
136
140
110
119
109
91
76
154
88
197
123
87
121
103
126
155
101
109
99
197
80
109
131
133
160
78
140
78
76
104
43
112
136
105
134
87
135
111
80
119
122
128
120
119
142
103
69
94
109
116
133
80
110
131
136
138
78
80
99
91
120
120
78
69
87
72
80
120
80
69
152
197
128
91
110
134
74
60
128
99
113
69
83
98
70
96
76
99
100
86
94
69
72
150
80
143
126
136
134
151
80
69
131
85
111
154
154
140
148
78
131
133
103
87
160
85
80
79
94
88
94
134
128
86
106
101
95
95
105
105
90
124
119
89
93
80
124
107
80
157
92
132
80
78
99
68
142
100
110
117
102
104
156
80
94
146
140
120
129
175
119
109
118
146
128
80
102
87
113
144
175
76
110
155
100
83
69
88
143
120
107
122
80
101
103
88
43
107
88
74
85
121
127
87
119
120
96
99
108
86
96
102
78
123
119
78
80
102
80
127
69
128
147
124
140
137
69
91
76
110
106
78
106
94
69
107
175
76
113
103
123
87
131
117
87
88
78
88
94
90
150
80
80
102
96
92
110
121
134
97
164
90
146
80
69
69
80
85
107
94
99
138
80
109
90
120
120
154
72
145
102
117
127
87
89
118
152
115
142
121
105
87
69
130
175
80
54
163
175
120
154
78
175
156
144
80
175
87
119
155
69
108
117
74
58
87
109
80
113
89
78
131
106
112
129
104
187
80
119
133
127
93
175
131
96
77
145
76
124
154
92
72
163
130
89
80
80
115
69
102
69
93
156
120
78
87
80
128
130
175
119
115
150
156
83
96
104
76
75
136
69
119
87
128
129
138
66
80
69
113
109
102
89
80
107
156
76
94
91
120
128
87
105
122
103
69
137
88
128
93
104
102
104
143
76
76
106
88
119
107
87
80
56
89
93
78
76
69
131
80
59
76
141
112
140
99
110
78
113
119
80
54
117
93
78
100
160
169
96
69
176
142
131
133
69
80
99
119
127
78
80
87
154
87
93
69
121
90
94
175
125
89
115
119
69
96
94
136
89
131
76
144
87
87
126
119
104
140
100
76
80
87
98
144
144
76
69
107
87
132
156
76
91
102
89
120
91
87
114
43
111
87
89
120
197
106
119
69
94
119
106
107
113
114
110
104
124
104
74
129
120
145
83
93
70
96
121
136
127
93
69
127
104
80
134
112
106
152
145
89
131
156
118
72
128
78
148
110
81
162
92
82
89
76
80
134
76
116
152
78
89
69
109
111
156
134
80
80
154
80
140
114
134
72
95
151
155
109
76
136
77
90
110
96
76
69
154
76
128
93
100
144
69
146
130
118
99
131
88
80
76
54
143
64
128
154
104
85
134
80
120
80
99
134
119
112
90
133
119
107
143
100
85
119
89
80
98
119
80
115
107
89
94
94
156
78
78
107
76
69
110
115
78
113
80
99
115
78
151
104
80
126
147
120
138
87
96
134
76
163
138
103
99
99
130
95
175
102
100
109
175
106
80
101
117
97
80
112
78
93
107
72
117
137
107
175
89
80
120
80
104
151
117
80
175
71
99
109
80
69
78
121
107
87
80
69
111
128
155
74
122
158
85
93
112
107
93
156
56
123
82
69
134
157
93
69
96
107
80
74
156
136
52
93
106
80
80
76
87
117
86
107
74
129
143
78
110
69
104
120
69
107
103
117
69
109
67
140
69
54
52
107
102
143
69
115
80
113
121
94
125
69
78
102
78
128
127
151
127
109
109
113
69
112
128
107
138
98
158
69
136
78
87
199
88
113
121
110
126
75
107
93
126
156
85
87
93
80
96
89
67
80
91
56
107
128
87
85
80
127
133
175
101
134
76
64
78
197
104
119
119
130
72
133
142
104
137
89
89
85
112
197
127
102
154
109
136
119
80
69
113
120
69
91
111
80
96
69
175
87
113
101
129
76
95
134
69
69
131
100
123
127
76
121
94
74
143
110
93
69
69
69
86
104
96
126
76
80
175
146
117
101
107
80
69
80
80
80
104
100
175
153
72
134
157
137
104
99
164
112
80
72
127
87
112
93
85
172
106
106
125
114
117
69
109
119
137
69
78
69
80
90
119
135
110
119
121
126
69
122
88
117
80
87
69
80
96
100
69
98
128
87
95
128
129
93
87
175
87
163
76
99
175
76
154
79
95
175
128
91
137
172
99
151
71
110
131
100
143
113
102
101
148
130
80
80
139
72
69
76
88
89
143
102
69
69
155
80
91
78
110
80
80
110
69
85
80
159
78
143
43
90
111
78
80
131
80
131
74
54
72
69
56
119
120
116
93
99
109
69
164
106
114
89
111
87
114
134
76
89
80
153
117
103
134
120
74
145
80
81
81
133
96
69
91
112
69
137
117
69
63
69
119
164
185
129
69
89
99
89
96
76
128
69
109
103
76
152
78
183
80
69
127
57
140
80
172
111
83
128
104
122
87
64
107
122
143
201
128
133
80
85
87
76
78
87
136
69
69
87
99
151
87
148
157
134
72
91
128
156
151
78
137
107
56
134
109
118
69
151
128
74
112
106
66
109
115
119
154
136
87
122
199
175
78
78
72
80
113
88
87
69
69
101
128
89
94
121
136
128
137
133
145
113
88
110
114
80
69
110
107
88
113
87
110
119
152
155
87
136
104
140
64
91
99
111
132
67
106
134
70
67
102
88
95
109
197
74
80
81
90
76
72
72
69
119
76
137
93
87
103
121
163
80
114
88
105
94
109
119
87
135
144
78
122
93
136
80
79
88
80
196
98
136
134
69
121
155
87
80
106
98
113
87
137
103
114
110
154
134
110
96
119
175
100
134
72
88
67
156
121
128
69
107
102
82
135
117
129
69
88
104
78
157
80
103
110
179
152
72
154
88
78
152
80
134
107
104
94
100
89
131
121
87
102
80
98
155
69
72
106
85
109
80
87
123
80
87
119
80
102
110
78
54
128
199
127
113
80
106
110
131
111
96
147
80
91
91
93
134
131
58
140
104
85
80
136
89
128
175
102
78
88
161
88
109
99
57
131
131
117
111
96
80
119
106
138
52
175
100
163
162
115
110
115
88
112
100
78
80
121
109
69
119
80
120
100
92
80
68
118
102
107
117
128
80
118
52
159
69
69
83
85
146
90
120
67
80
120
103
79
69
131
78
117
112
149
95
143
94
177
82
83
78
89
80
92
90
95
80
69
104
87
107
93
107
89
76
66
80
145
156
109
113
107
129
76
149
99
197
104
91
95
133
104
69
117
131
69
106
106
120
87
80
125
154
88
134
111
99
119
69
80
140
175
69
155
69
115
80
80
100
88
112
69
72
85
123
115
87
87
69
80
142
105
100
80
148
197
93
153
136
166
110
111
164
93
78
145
121
100
104
80
120
87
143
195
107
99
118
140
78
121
123
133
89
119
118
109
144
99
138
91
104
89
114
126
78
88
129
183
109
88
80
119
101
136
90
120
154
140
88
80
98
85
80
94
94
102
107
116
69
101
88
87
156
93
87
69
120
78
114
80
124
78
76
110
84
113
76
145
102
92
129
99
88
93
100
82
80
163
99
115
156
127
124
101
119
87
78
119
107
110
154
72
175
115
69
113
78
112
112
69
106
112
88
129
117
175
140
80
99
80
131
175
102
138
78
78
93
69
118
113
69
109
136
129
67
120
84
69
110
163
94
94
93
111
89
119
119
69
80
69
135
59
78
107
69
125
109
89
102
74
91
85
76
69
140
91
87
91
101
69
133
87
94
110
128
131
89
119
80
120
80
110
79
95
89
175
83
94
80
101
78
64
89
71
79
143
78
69
102
89
104
90
119
199
87
72
80
64
80
69
79
140
119
107
112
81
114
114
89
101
87
134
175
76
109
80
128
140
114
96
95
80
159
119
69
107
94
154
131
115
113
117
140
80
137
64
106
138
132
119
69
107
136
144
80
85
107
80
90
74
95
99
139
88
91
146
98
104
137
80
96
99
80
119
107
104
76
142
140
69
164
101
124
131
78
89
94
80
93
119
69
117
112
101
69
154
80
78
143
88
116
123
99
117
69
141
119
80
89
69
98
122
94
151
80
83
107
80
147
109
119
152
111
87
131
146
111
175
80
197
95
80
91
91
85
117
99
80
80
120
80
102
85
156
119
197
69
112
113
100
104
154
80
105
101
112
72
88
87
135
106
69
87
108
175
128
129
104
99
78
69
175
117
133
80
134
164
93
120
69
71
119
109
91
69
87
69
69
114
175
123
107
119
107
119
60
129
80
100
110
163
119
106
126
121
69
147
175
126
76
87
100
80
141
77
91
140
107
69
118
80
117
163
89
96
52
131
163
110
103
75
101
147
69
75
113
132
114
142
110
99
87
151
91
128
107
156
111
87
94
72
113
107
130
146
78
66
88
124
95
118
99
107
88
69
137
120
131
140
129
69
74
154
127
126
101
156
80
92
144
87
109
119
110
120
85
113
128
69
106
75
87
125
118
80
124
140
93
134
137
142
126
64
100
107
104
115
56
88
87
124
69
109
94
72
121
125
120
175
109
69
87
72
143
144
69
120
88
76
113
131
60
52
130
107
181
117
110
121
138
128
69
78
129
175
69
80
100
117
71
185
136
124
87
60
215
120
166
59
91
129
174
107
121
43
141
88
119
80
118
115
154
119
104
148
107
157
110
151
69
73
80
128
128
166
83
93
104
104
119
131
93
128
91
80
109
199
81
89
175
91
58
104
87
80
110
76
69
103
80
79
105
120
199
107
85
119
68
146
175
80
76
156
82
94
154
76
102
98
109
52
80
100
132
110
115
175
106
181
109
134
112
78
76
175
111
119
92
153
114
134
155
106
107
96
122
72
112
128
136
89
175
90
120
101
175
80
122
175
80
121
109
80
80
128
56
110
88
69
89
78
122
78
112
96
76
80
137
146
99
94
78
96
156
78
128
80
120
150
69
78
117
120
120
91
69
80
109
150
117
175
115
119
146
123
115
69
88
145
175
99
119
86
120
131
175
117
119
87
87
80
109
129
87
107
107
175
110
87
147
80
89
80
98
112
76
69
136
115
89
98
134
107
137
98
197
78
154
137
118
130
76
78
80
99
131
150
131
101
107
120
151
161
136
119
127
78
76
72
76
140
172
94
63
123
119
96
72
153
80
80
75
131
80
99
140
146
102
99
99
76
107
151
181
154
107
133
91
106
99
72
146
150
119
99
137
94
143
87
155
107
80
80
93
106
80
94
110
121
134
43
97
181
111
116
101
136
69
108
175
99
102
88
88
134
134
88
110
129
78
69
72
72
128
128
123
78
90
130
78
106
85
69
69
80
104
127
122
109
134
80
64
107
149
80
87
88
88
92
148
119
80
78
76
120
126
143
117
156
99
76
127
89
69
119
115
99
123
150
132
128
117
109
91
156
112
104
74
128
119
54
197
99
87
80
76
87
98
69
121
99
120
144
102
140
93
76
52
87
119
76
76
119
107
69
156
197
99
95
80
145
122
110
131
125
120
96
80
80
87
107
69
124
127
82
154
113
113
114
135
71
94
130
54
128
100
157
94
108
143
130
131
134
128
76
110
106
116
121
120
73
155
90
85
141
94
106
83
80
156
97
122
69
155
119
69
80
80
88
136
106
104
110
52
80
88
156
75
131
106
175
107
95
80
66
52
76
137
96
78
175
136
145
69
112
72
119
80
69
175
132
117
99
75
111
147
106
181
175
124
121
58
133
106
88
134
69
119
103
117
119
104
107
161
102
94
121
67
113
74
83
109
80
67
151
111
95
107
99
78
136
125
126
72
78
148
99
52
88
119
101
143
154
78
80
123
109
119
100
76
98
146
80
144
87
114
133
106
52
104
107
128
145
151
80
101
127
127
103
96
142
108
107
134
72
148
121
80
87
166
163
156
137
87
69
155
163
115
52
80
69
101
91
80
88
80
90
78
110
154
80
69
102
156
157
175
117
80
175
193
72
84
74
97
122
90
94
125
107
93
136
94
112
140
174
124
89
114
69
119
101
154
85
123
54
113
131
88
145
138
142
101
87
93
94
91
209
87
88
131
80
96
175
69
111
69
112
87
119
80
78
117
106
175
109
107
76
121
119
69
87
147
120
162
104
89
93
101
99
154
119
93
109
99
80
110
80
152
87
69
111
69
117
81
109
106
104
80
147
83
169
69
80
115
97
100
87
154
89
126
96
151
80
146
130
91
76
137
103
133
76
109
80
72
99
110
140
93
146
108
80
128
113
119
118
175
107
69
80
136
89
98
111
91
87
87
115
54
95
151
69
93
90
58
80
80
128
135
80
101
74
103
78
87
120
137
78
76
87
134
197
130
107
97
155
80
93
87
100
106
127
121
127
75
129
87
120
138
99
120
128
80
112
91
134
154
69
87
107
137
69
79
154
124
69
101
126
52
134
104
99
91
114
119
93
87
80
52
69
80
80
107
175
132
99
78
56
128
102
104
102
181
89
118
69
136
106
93
136
119
99
104
130
128
115
96
131
99
94
107
80
117
76
69
78
80
78
134
93
69
72
157
114
90
132
99
120
116
87
52
136
69
117
124
90
88
128
98
121
76
137
80
58
69
52
87
143
76
122
66
91
69
97
119
112
120
80
69
154
120
87
89
137
52
111
68
94
78
119
103
154
87
128
91
142
149
117
107
96
149
133
88
104
87
89
113
83
113
87
88
80
87
88
126
119
163
74
80
87
114
121
63
131
80
76
78
80
124
119
107
91
87
131
102
76
150
104
109
69
108
128
103
104
87
122
69
120
80
94
119
80
72
110
85
108
88
81
69
154
76
115
88
96
120
80
119
96
69
88
136
118
87
136
117
78
128
103
80
131
175
162
128
43
69
91
93
127
75
118
78
56
161
131
147
80
100
126
74
90
113
119
64
69
85
118
107
143
117
130
145
112
80
88
183
138
117
127
85
128
80
80
120
80
119
85
72
136
112
82
112
197
99
77
117
120
155
56
80
112
137
107
87
104
87
76
134
165
80
87
85
96
118
56
133
120
114
104
118
80
69
69
131
56
69
85
151
80
75
80
93
105
157
69
69
154
69
95
183
76
80
119
87
104
110
140
107
64
99
67
137
119
134
80
80
54
80
109
115
90
117
107
104
147
111
156
87
121
146
88
146
128
78
127
156
150
129
103
104
92
76
87
87
90
72
136
136
89
119
80
78
113
87
100
72
67
120
80
140
94
126
106
96
112
143
94
78
106
156
80
207
89
93
138
155
94
114
79
91
150
102
128
156
88
93
160
185
119
199
80
120
126
140
150
107
87
169
110
80
99
88
113
71
98
120
103
124
90
123
131
131
78
130
80
80
136
69
97
83
69
96
88
126
104
80
117
96
94
87
83
137
138
151
76
141
128
127
117
69
79
111
99
197
78
102
129
131
91
98
131
87
136
81
98
128
175
194
175
110
99
127
80
99
85
124
69
107
94
110
110
91
94
69
98
175
154
100
69
163
80
101
163
127
88
78
85
109
87
102
110
94
94
109
78
118
69
80
166
119
69
175
137
78
155
117
91
88
78
136
94
95
118
119
96
69
99
80
87
89
109
69
138
80
121
99
128
85
80
129
142
78
127
102
109
93
74
130
137
130
60
107
69
134
131
112
76
69
116
69
69
104
88
121
128
119
87
69
69
128
110
112
80
69
107
109
106
64
52
54
128
127
140
114
140
87
82
127
107
85
123
151
94
76
90
104
76
67
79
84
78
52
56
80
124
74
130
88
96
115
110
125
69
80
124
115
71
80
97
95
76
69
88
72
121
91
69
83
134
74
140
127
88
124
98
131
114
95
99
72
111
175
132
141
80
94
95
113
82
155
88
133
100
94
119
80
88
100
107
154
119
78
128
87
123
119
119
76
100
80
94
103
146
132
154
151
102
112
140
129
124
91
106
138
80
93
76
110
109
175
91
88
154
110
136
128
89
137
115
119
90
104
154
163
69
154
101
107
98
155
87
201
131
89
120
82
69
154
122
109
67
120
114
83
69
80
87
80
101
115
118
99
112
120
54
104
98
123
107
130
134
109
96
103
106
94
175
94
94
107
107
110
117
115
175
128
140
109
78
106
119
122
80
87
104
119
89
103
137
99
114
88
148
163
67
104
69
154
69
85
69
71
131
72
128
110
87
151
113
52
80
56
88
106
79
80
136
120
69
76
107
145
121
110
163
114
87
120
87
140
89
120
162
128
128
104
52
101
87
123
121
150
104
87
152
54
120
134
67
60
94
107
80
99
126
154
112
102
67
76
120
80
80
80
85
107
131
75
80
146
88
98
93
136
93
145
102
128
102
111
69
76
121
56
89
133
119
115
101
123
80
76
106
106
115
98
93
85
69
66
89
136
118
124
76
185
80
132
69
87
80
154
80
78
115
90
118
96
128
106
89
76
133
130
72
119
80
96
107
119
133
87
110
175
164
79
93
104
120
54
107
80
87
155
78
117
94
69
69
132
88
127
155
119
76
80
121
56
80
107
89
82
54
119
95
69
134
69
112
113
163
114
142
91
58
118
94
127
94
128
165
80
88
110
107
96
136
134
100
88
118
72
80
128
69
154
104
93
69
67
151
110
150
185
149
72
120
123
109
87
134
187
136
94
87
76
80
101
80
80
80
67
155
131
131
104
87
78
113
123
69
88
76
87
99
99
156
136
129
136
120
113
99
121
74
101
76
78
175
128
106
122
119
89
104
107
106
88
69
110
91
90
151
109
128
104
106
87
128
69
120
91
72
137
82
76
78
175
107
140
91
107
74
98
107
129
163
100
112
77
101
113
97
66
134
92
76
160
119
87
148
69
131
89
78
80
104
112
109
116
138
128
126
154
175
69
76
78
119
87
87
80
109
147
104
128
102
88
136
93
149
76
80
117
197
116
120
89
172
89
78
118
109
80
69
54
106
89
69
85
128
138
137
134
91
80
80
139
93
136
175
141
83
96
137
101
91
137
120
76
110
154
151
131
96
80
99
102
121
72
96
122
175
112
78
130
78
93
74
87
83
154
80
87
127
80
175
82
119
128
145
90
96
84
156
109
175
146
137
112
94
69
87
141
156
140
183
139
119
76
76
197
111
96
92
121
107
134
99
69
143
81
76
128
122
69
140
89
97
80
136
175
67
89
76
94
74
131
128
136
80
131
96
115
109
104
107
151
98
76
127
124
119
102
100
163
106
69
120
134
112
124
80
69
151
106
80
80
95
151
111
120
80
124
80
151
93
69
93
126
185
69
82
72
136
88
102
107
88
110
67
101
80
127
80
128
175
104
143
80
107
106
128
79
109
104
157
143
134
87
69
111
163
79
162
110
175
87
109
102
90
99
89
79
126
96
99
150
137
98
123
107
121
69
111
136
107
140
156
121
93
113
154
94
109
155
116
123
145
120
87
131
78
132
76
102
54
87
93
140
87
80
78
112
183
110
118
89
209
155
57
119
132
120
100
76
119
136
131
101
87
120
117
112
103
94
100
89
80
99
143
127
104
64
80
90
72
78
80
129
130
76
120
69
76
78
80
121
103
104
109
89
155
100
110
128
117
93
69
117
76
89
120
119
80
109
154
131
136
103
104
163
132
107
87
146
108
97
94
68
106
106
78
119
147
128
80
89
114
160
154
87
68
87
132
130
80
69
80
54
119
105
94
80
90
76
69
136
154
151
80
138
69
123
104
80
52
69
78
89
140
87
93
72
128
106
71
107
72
54
125
121
136
89
119
153
96
99
87
80
123
80
100
74
87
128
151
154
119
82
101
80
157
117
127
145
140
87
106
76
83
166
119
78
126
107
101
69
118
101
128
102
69
120
146
89
99
56
175
69
93
164
113
78
119
154
117
60
130
120
154
137
90
87
110
137
88
147
87
115
87
80
106
69
100
156
69
78
72
146
93
128
89
58
175
79
117
80
83
101
96
110
76
94
107
147
83
80
78
69
74
89
69
118
121
110
87
87
100
160
113
119
80
133
69
76
129
129
113
106
113
78
128
127
175
136
109
80
74
151
140
80
121
119
104
80
121
80
88
119
72
136
99
116
120
141
120
66
87
113
87
94
128
109
149
105
143
88
69
76
125
99
80
69
69
96
120
107
89
96
94
76
197
54
138
136
76
74
169
76
154
74
104
118
119
106
69
143
80
88
155
89
69
78
76
110
119
126
131
151
80
131
80
91
96
183
77
93
89
76
107
120
117
119
163
90
54
89
155
87
162
107
101
79
80
118
54
82
111
110
94
140
118
78
69
80
101
149
140
118
144
99
87
132
90
108
120
75
134
88
126
144
78
69
78
104
110
87
158
109
154
104
76
104
89
138
95
111
113
113
88
119
78
111
115
110
80
87
109
134
80
151
138
146
78
201
94
120
106
100
78
83
80
131
106
121
104
122
72
58
71
120
69
120
99
145
87
131
89
78
80
147
78
199
140
94
104
117
123
76
134
123
80
93
98
78
88
159
136
69
143
128
89
72
104
54
88
136
110
136
127
128
80
69
147
87
122
80
83
87
175
72
118
94
163
136
112
140
175
107
83
54
99
134
96
80
108
95
163
144
76
134
118
106
89
122
127
120
93
119
181
88
69
156
80
119
175
87
80
163
138
87
99
87
93
78
80
80
187
88
128
120
72
71
109
78
113
106
80
113
52
119
102
69
128
99
69
113
110
126
93
148
92
99
102
130
106
134
91
80
80
96
154
127
140
132
145
96
80
76
69
80
131
102
96
80
90
112
128
149
89
99
80
157
69
112
101
90
127
101
110
121
78
134
146
83
119
69
121
131
98
76
119
117
156
103
119
109
87
78
104
119
138
76
69
88
52
134
69
120
83
154
69
145
134
133
107
148
137
97
52
54
69
134
118
78
78
69
88
134
148
106
128
104
99
58
114
69
113
89
117
119
154
120
100
76
187
107
75
158
99
80
69
67
69
76
120
81
145
100
93
94
121
155
80
131
80
106
172
80
104
87
117
129
175
94
142
80
148
99
120
87
80
123
118
104
131
175
102
80
91
101
80
106
177
69
124
87
107
86
80
69
69
78
80
100
106
119
69
80
139
69
132
151
91
121
134
80
110
120
164
99
128
151
133
66
76
127
120
146
94
99
113
69
128
128
154
134
136
78
92
72
123
88
78
148
78
107
104
134
110
80
117
96
131
113
113
86
69
199
59
88
137
111
118
109
69
87
74
76
151
154
76
126
117
101
80
122
152
93
107
75
121
134
124
129
90
56
126
132
119
123
101
112
131
183
131
137
89
87
99
96
96
76
93
175
96
89
74
85
80
89
152
76
108
134
121
156
96
80
80
87
140
100
113
78
107
54
123
115
123
52
143
117
80
110
106
109
119
87
121
138
72
78
128
96
91
87
69
120
155
69
76
142
106
88
80
80
52
111
69
163
128
98
117
136
121
143
92
88
131
88
134
88
99
76
140
125
103
137
113
146
127
156
133
131
69
151
91
152
106
115
93
154
119
134
175
89
66
76
110
69
107
154
100
128
80
175
80
121
104
174
69
113
107
121
140
101
80
209
99
109
197
175
154
118
69
110
69
87
67
90
99
78
101
95
151
96
136
80
106
69
119
72
133
87
106
107
101
163
123
78
126
163
89
94
69
135
80
106
129
126
69
80
124
79
101
87
110
106
130
107
152
64
96
104
88
106
109
140
121
143
136
80
154
107
165
67
89
113
138
120
106
119
143
162
78
119
68
175
128
94
103
89
103
69
43
123
128
80
119
78
112
80
101
77
88
145
107
89
116
107
88
131
107
69
106
134
87
108
96
193
112
80
80
114
120
129
128
93
103
137
107
140
78
140
122
135
154
155
121
119
76
96
76
119
87
88
119
87
91
91
151
87
80
69
88
151
141
104
66
83
72
107
69
121
88
134
134
112
132
66
76
71
113
80
102
80
80
80
109
69
119
87
69
112
69
81
89
101
113
95
146
69
96
123
119
151
129
99
80
80
88
94
94
131
134
99
110
123
80
69
80
115
94
175
87
78
78
94
127
142
127
75
119
117
81
168
119
155
94
151
103
110
181
136
95
119
130
107
114
71
110
131
87
80
117
87
99
78
123
131
96
103
119
159
94
118
101
78
127
106
128
91
72
123
107
134
76
80
174
128
69
69
87
69
88
85
107
110
74
131
99
60
107
113
154
143
175
95
88
85
87
56
94
121
99
89
109
87
63
107
76
66
90
165
97
109
127
91
73
132
99
165
80
114
69
175
147
126
56
107
120
131
95
69
93
129
73
126
109
107
161
54
89
72
85
87
78
87
69
80
99
120
76
117
117
80
69
95
88
72
104
110
113
152
145
88
123
125
93
132
160
106
133
69
144
183
140
93
108
128
76
115
121
78
119
78
87
131
69
110
80
120
83
140
110
111
69
74
126
76
120
94
197
97
147
87
145
80
69
152
112
103
106
66
94
76
127
80
126
110
99
102
72
104
93
76
80
149
101
96
56
74
80
76
87
156
111
91
80
172
122
121
106
122
117
176
87
129
127
134
120
80
78
104
136
72
94
78
78
148
134
80
111
94
90
164
69
115
89
83
160
78
72
131
80
123
120
99
119
71
175
104
69
89
80
103
120
113
76
121
87
76
140
64
151
120
87
104
89
78
137
54
87
131
99
80
95
175
128
75
119
87
95
110
129
105
94
93
128
136
146
124
87
52
89
93
121
99
94
85
119
99
69
78
136
99
156
101
91
89
99
99
88
112
83
56
128
110
109
92
155
117
111
96
175
80
110
100
143
78
69
92
126
80
76
134
69
128
100
96
151
99
85
89
80
100
131
101
154
69
93
96
66
132
120
127
89
78
78
98
109
78
136
87
109
114
109
112
94
104
76
69
64
111
130
113
94
69
80
109
120
107
101
90
107
107
89
133
87
52
85
126
165
119
155
99
99
102
148
95
99
88
155
106
104
76
69
181
76
76
90
94
175
87
80
117
120
120
113
108
96
94
136
69
134
104
78
119
109
122
112
108
87
121
132
120
138
169
106
90
120
124
98
175
80
129
132
113
99
80
87
109
116
175
87
72
98
89
94
88
89
143
76
76
104
88
109
120
121
80
80
69
80
186
181
56
126
72
87
80
80
69
99
107
89
119
140
82
110
80
132
152
99
127
120
91
121
72
87
109
69
144
107
66
80
99
143
132
132
156
131
80
131
106
121
91
69
72
94
121
111
80
121
80
78
119
100
106
94
93
109
115
134
120
126
78
119
111
94
113
164
107
114
107
128
76
69
75
136
89
88
120
162
72
69
121
134
119
78
75
104
129
69
106
80
115
147
119
76
56
87
134
99
130
83
80
102
104
174
111
146
109
80
121
103
96
80
80
102
96
122
84
100
104
106
138
94
101
119
78
110
107
98
87
104
134
82
88
125
88
101
106
80
154
71
156
89
54
99
87
104
140
106
122
104
119
80
69
112
119
78
89
64
131
93
121
117
91
87
123
107
121
78
140
120
110
175
112
99
117
54
107
107
95
99
128
117
120
120
93
102
103
175
80
109
52
110
87
104
117
127
145
102
175
115
110
104
109
72
145
128
118
104
87
104
135
80
80
164
104
106
76
80
100
154
135
176
87
93
69
87
76
136
110
58
90
91
94
138
99
113
197
87
69
116
94
114
175
134
104
80
102
99
106
91
154
136
80
147
113
80
69
99
148
68
123
78
52
95
89
109
124
88
69
120
135
80
136
121
105
120
156
78
131
131
175
104
164
201
128
119
93
72
91
124
152
107
149
78
69
94
69
110
126
118
119
164
94
110
80
69
80
117
142
96
104
69
70
98
102
94
110
138
78
118
132
80
80
149
131
120
94
93
105
69
103
155
137
80
107
152
69
155
80
69
130
80
87
99
131
87
131
87
119
80
144
128
156
114
130
83
151
78
87
80
109
127
80
80
94
93
121
127
69
76
88
131
123
87
90
119
80
93
76
88
147
119
102
113
175
112
117
138
92
136
128
64
163
111
154
91
106
82
88
120
80
80
90
93
105
101
134
95
160
101
101
110
69
154
59
88
147
108
69
72
76
112
175
78
76
81
96
174
106
88
120
87
133
87
80
104
131
164
78
103
80
106
109
139
119
78
146
113
124
89
104
131
154
154
107
140
175
131
111
133
151
89
109
107
52
43
104
127
88
134
129
69
127
97
74
93
56
88
107
136
72
119
175
102
124
106
174
105
54
148
122
76
87
78
126
156
52
122
52
109
87
124
114
164
80
118
122
80
128
120
93
131
113
78
78
145
80
78
136
96
89
94
156
87
155
101
104
140
69
131
160
128
121
112
108
87
106
108
78
164
128
87
78
93
78
106
109
130
80
87
113
112
99
182
136
88
124
95
85
104
146
128
80
87
143
136
175
103
147
117
85
118
69
106
78
80
155
184
115
120
89
151
185
143
154
74
69
99
69
96
80
76
127
134
145
145
64
109
69
118
102
106
76
153
119
152
104
59
104
151
162
81
76
58
119
93
76
160
132
72
87
139
102
115
140
155
156
87
181
80
134
68
95
94
131
120
80
155
76
104
101
88
118
56
121
110
106
201
132
122
120
109
128
118
106
110
76
83
120
121
78
78
78
83
89
111
140
120
110
102
101
83
99
102
52
80
111
114
121
93
87
152
79
104
120
91
87
89
93
85
120
139
72
128
119
120
78
90
80
84
132
110
111
152
69
131
137
175
80
101
87
87
111
139
160
78
152
72
128
130
75
104
74
115
154
99
136
117
76
104
112
80
128
99
100
88
163
88
69
76
136
96
119
85
120
87
156
69
64
75
69
106
80
100
76
120
85
120
100
119
121
69
122
116
155
185
118
119
115
139
101
99
69
97
148
106
133
145
87
151
87
89
110
154
76
80
141
88
60
69
87
102
76
107
80
119
89
122
120
151
90
90
121
80
144
93
96
110
155
69
102
113
128
170
110
124
112
154
64
99
131
126
123
199
156
80
83
95
106
91
80
119
87
99
106
94
154
78
151
78
80
136
89
74
107
95
76
80
101
106
116
104
80
140
94
110
110
109
109
69
99
71
130
91
110
80
107
106
120
80
99
175
99
80
121
199
80
156
129
109
74
93
118
69
72
104
132
76
95
119
107
155
104
93
104
90
89
76
89
87
78
87
150
160
120
104
59
117
106
119
99
54
119
72
102
112
87
94
89
122
110
101
89
117
148
140
94
80
76
136
78
117
99
117
69
175
56
137
128
142
99
87
119
119
76
54
94
71
69
113
160
132
80
107
120
96
88
69
107
136
121
80
117
120
72
91
152
99
69
106
88
88
88
128
120
169
112
69
106
126
93
127
94
175
193
106
88
124
54
128
118
121
119
66
72
146
111
128
80
117
154
80
78
87
87
127
89
87
85
80
64
129
132
76
90
197
89
107
80
87
69
114
78
109
122
80
119
88
131
128
117
71
87
80
93
156
146
92
121
116
76
137
197
78
58
126
183
75
88
106
144
101
143
80
189
76
99
83
80
146
74
119
107
87
78
78
126
109
107
110
113
99
110
110
112
119
76
155
120
113
136
155
85
100
129
134
103
156
128
99
88
88
91
109
107
80
80
82
119
136
87
164
109
85
112
142
131
93
78
115
56
99
109
99
85
111
107
110
124
76
113
80
88
80
99
80
114
149
76
121
111
107
134
111
89
100
78
85
80
107
109
147
144
89
93
72
72
80
87
145
94
113
137
110
79
128
111
76
88
74
120
187
99
100
113
87
80
175
103
87
124
82
88
72
88
80
117
115
58
136
119
147
76
80
144
74
140
54
118
129
118
104
80
72
60
54
101
175
110
80
80
109
97
101
112
123
100
89
87
71
120
80
110
109
87
119
164
69
76
87
56
131
107
69
100
130
104
96
80
76
122
112
94
88
120
145
138
111
135
201
118
105
80
104
157
91
124
92
80
133
110
74
126
117
145
121
126
69
136
106
87
64
135
128
74
119
83
107
78
69
69
140
89
137
107
156
67
117
109
123
201
121
155
109
97
109
140
80
107
89
120
148
64
127
80
118
91
82
113
80
132
75
72
80
93
154
107
109
128
74
129
109
98
128
58
119
175
140
99
140
155
89
109
78
137
69
93
88
96
140
148
166
129
105
155
145
155
128
125
69
136
90
89
109
102
197
74
130
131
119
112
175
147
117
112
72
119
56
151
69
69
52
101
92
121
96
89
131
78
117
121
69
131
130
107
118
82
80
151
169
109
80
137
87
87
78
134
76
146
69
91
99
133
58
88
89
102
145
69
122
91
80
87
122
69
56
118
80
79
130
175
134
56
153
120
80
96
97
119
115
104
154
89
62
156
87
69
159
156
69
69
136
124
136
107
117
149
92
124
98
69
137
104
133
117
87
69
87
138
96
100
87
93
102
99
114
140
119
80
69
78
69
175
117
78
155
113
120
87
134
134
154
90
87
117
114
116
80
89
175
112
197
73
78
80
107
129
94
69
164
78
136
109
120
154
145
94
109
119
109
113
125
143
96
113
117
175
110
118
126
100
89
199
154
78
104
78
134
147
140
123
73
87
76
72
89
123
107
123
175
78
103
119
131
107
108
110
147
80
132
89
78
119
76
145
120
175
175
78
119
109
124
80
107
134
174
87
78
110
79
90
80
78
69
93
117
69
52
91
141
69
110
106
175
153
91
80
69
91
80
152
93
76
123
76
81
154
72
101
94
154
128
80
115
163
80
80
87
115
100
157
117
128
113
145
117
106
112
80
166
96
94
69
124
104
164
87
131
87
136
78
151
87
78
132
80
96
76
166
109
145
78
69
116
175
106
69
89
134
121
103
80
83
146
113
147
54
89
76
133
52
166
94
69
119
80
118
80
94
134
112
140
85
104
107
92
112
121
143
108
78
126
98
145
110
107
112
88
130
106
80
69
146
80
119
107
107
85
87
175
78
55
117
111
74
80
106
102
87
87
69
112
74
120
99
69
69
154
121
104
107
69
80
117
94
78
118
68
75
128
106
123
129
118
107
146
183
94
109
139
69
80
109
109
201
107
122
76
100
76
108
125
52
107
80
106
76
154
94
134
120
145
110
140
119
93
90
122
90
78
78
86
69
76
151
128
94
134
129
128
109
107
155
175
96
60
107
69
113
110
101
119
125
97
78
69
99
107
145
150
104
76
82
154
94
71
80
110
69
129
93
109
120
128
111
94
124
79
120
154
151
112
76
120
52
87
131
109
154
136
197
118
78
113
138
145
80
109
118
155
151
82
80
99
77
129
96
99
81
90
76
93
139
80
116
175
87
151
87
140
80
129
128
90
140
131
107
99
52
110
104
114
114
85
73
110
60
117
76
197
96
114
106
69
154
96
146
80
110
117
113
99
80
112
109
93
131
110
76
106
101
80
74
60
133
123
120
96
159
88
98
104
134
69
91
118
101
74
137
72
96
91
89
131
78
124
64
87
113
98
136
107
72
122
94
104
78
106
121
185
107
134
106
119
140
115
76
134
54
121
142
143
80
111
66
88
120
80
89
118
87
101
134
87
117
100
106
138
80
78
126
104
76
72
132
90
112
80
94
128
78
69
82
142
93
104
54
149
140
134
75
139
146
80
87
87
69
120
133
100
113
99
109
93
175
175
96
78
102
131
110
85
110
120
106
87
121
117
134
80
80
131
148
130
109
87
117
117
89
128
80
88
95
149
80
151
74
63
121
120
119
95
89
88
104
163
88
144
128
69
99
78
72
94
183
87
102
120
87
91
123
154
80
130
87
154
80
69
81
154
99
87
80
69
120
90
69
119
89
87
181
113
56
134
150
112
80
77
113
80
132
126
87
164
88
80
136
72
106
78
113
90
98
90
94
211
89
69
103
107
160
119
111
140
92
84
115
112
154
131
111
128
87
101
140
163
175
106
118
84
76
120
121
80
113
136
102
111
69
69
197
78
80
156
175
69
109
151
80
104
113
72
94
115
74
104
99
125
131
112
120
76
117
115
123
114
69
110
145
78
119
93
99
174
162
134
111
107
101
120
107
76
136
93
78
134
127
134
94
154
128
127
127
89
148
129
163
95
104
120
80
90
83
78
163
96
71
78
72
81
120
140
165
132
110
109
96
106
87
109
123
139
80
72
80
78
107
152
80
76
119
140
80
104
68
56
120
80
86
85
110
126
54
78
78
120
175
127
150
80
72
174
119
104
88
76
185
138
111
82
69
120
131
127
80
80
85
119
88
78
100
80
174
78
80
94
119
126
75
80
110
72
69
101
165
76
138
175
69
88
115
101
120
80
80
87
163
115
120
76
106
54
112
87
72
142
88
164
117
95
118
76
134
143
118
163
69
80
166
109
131
110
154
78
107
89
156
131
103
175
143
126
122
133
128
127
196
121
100
138
80
80
99
99
91
115
80
80
89
107
110
104
74
69
147
78
80
96
130
144
109
128
88
56
132
69
128
52
105
67
106
85
199
104
93
110
93
80
118
76
156
139
91
127
106
140
119
88
97
120
134
78
133
121
130
151
112
80
80
76
69
69
175
175
125
69
88
132
132
78
111
69
131
131
80
121
156
155
149
94
94
69
131
96
78
99
99
128
117
154
69
123
94
98
72
163
69
152
136
78
104
80
102
125
112
127
160
80
69
77
76
80
120
152
83
119
104
92
110
80
89
80
98
104
118
104
69
106
140
90
104
72
197
80
128
122
104
76
115
93
119
80
122
78
69
69
76
76
136
148
91
155
123
94
89
149
99
102
118
137
176
169
116
87
72
114
199
137
78
121
80
197
90
73
52
121
89
80
54
69
69
111
79
84
131
76
112
78
89
87
80
93
163
119
80
113
125
73
127
109
117
94
93
140
118
120
90
156
140
66
76
156
74
94
87
120
121
121
87
135
80
78
145
174
140
110
110
111
123
95
80
63
131
72
133
69
88
81
107
89
160
165
80
140
131
80
69
119
57
175
145
69
106
87
108
136
80
76
120
107
80
108
94
175
108
128
104
69
101
123
80
87
78
85
143
120
105
69
99
80
149
120
117
76
134
112
183
107
69
78
157
141
110
54
85
126
80
59
128
105
88
109
72
96
113
87
88
106
117
113
169
133
107
71
110
76
101
78
132
154
80
78
127
78
124
89
110
89
89
128
84
54
112
56
74
88
96
197
117
80
122
106
94
164
83
101
112
120
123
128
120
88
87
110
69
146
88
128
140
69
140
72
93
87
131
80
155
76
129
80
132
175
101
88
91
80
107
133
134
109
154
102
88
99
80
121
69
103
134
94
120
112
128
121
93
106
72
87
110
94
76
56
102
129
156
56
130
123
87
101
113
133
80
164
79
89
81
90
58
80
130
119
67
118
94
80
121
96
84
109
136
119
107
69
87
122
102
76
92
91
156
131
76
126
197
115
105
131
123
85
88
54
106
80
115
72
72
109
103
78
101
160
80
197
117
183
121
80
151
87
80
155
69
119
151
80
105
107
175
76
106
80
78
81
124
69
101
119
122
131
132
104
68
166
119
95
95
99
107
87
134
76
120
107
78
99
138
104
98
119
80
80
160
93
56
126
107
134
91
87
201
80
138
72
118
114
109
78
101
155
136
67
119
76
66
148
98
125
54
78
113
132
69
88
119
95
94
174
128
58
89
99
113
107
76
120
109
80
87
54
95
109
95
78
106
117
76
91
118
106
98
169
181
69
109
80
68
136
72
88
146
109
163
69
140
134
174
131
54
120
83
121
69
76
101
126
183
150
104
120
122
80
94
112
78
134
163
80
197
100
89
76
175
111
63
121
89
175
64
91
96
80
78
80
118
88
120
117
94
197
71
156
72
114
134
86
108
99
88
80
80
87
80
101
87
83
89
147
87
140
154
160
117
95
117
111
76
80
120
123
154
87
93
113
111
146
96
127
121
163
70
99
56
129
197
118
112
99
94
130
119
99
113
69
113
175
99
117
96
106
104
133
87
137
104
52
101
136
88
80
69
80
126
80
69
101
134
117
76
72
69
87
89
113
133
155
80
165
107
76
163
103
87
93
145
99
175
156
156
154
132
74
80
105
99
161
118
132
109
120
89
140
91
119
98
109
76
175
88
80
93
148
121
121
197
110
124
122
119
132
78
140
78
76
175
69
94
76
117
69
126
102
96
113
91
91
104
94
98
89
131
87
87
99
121
96
69
89
175
76
92
69
152
101
80
80
83
131
72
154
98
94
76
116
139
80
69
69
112
78
110
80
87
87
154
96
119
89
112
72
128
87
175
105
88
80
54
88
91
99
145
126
118
76
134
77
127
169
126
69
72
142
122
138
120
159
146
72
73
119
159
140
112
76
175
87
197
75
76
80
115
89
80
117
105
110
99
99
144
134
80
103
69
76
151
109
88
143
88
106
88
101
146
69
69
99
69
76
93
109
86
131
110
149
107
175
80
80
80
94
93
76
107
136
80
64
89
157
77
128
72
130
72
109
201
87
175
87
87
94
69
87
92
76
144
120
106
113
96
52
133
87
99
107
118
175
69
125
74
118
136
69
118
120
119
174
78
102
197
85
112
94
154
120
54
89
76
90
120
107
112
120
80
112
127
76
103
96
91
88
138
100
74
134
118
145
94
80
94
76
154
69
104
72
96
148
80
95
175
74
111
67
123
78
91
94
72
151
134
80
175
93
128
99
175
78
80
69
67
78
80
155
160
151
107
76
133
146
140
95
56
69
88
174
87
122
80
88
137
71
136
100
80
91
134
110
100
99
109
106
101
94
87
91
54
80
120
87
95
87
154
87
96
119
78
136
127
83
87
97
107
109
139
87
99
104
154
72
80
130
91
137
96
154
141
80
71
119
118
165
156
112
141
99
87
94
108
119
76
102
76
80
103
143
75
113
163
154
120
110
106
76
82
91
112
78
107
80
156
120
83
80
112
136
144
131
88
74
76
126
98
99
109
87
80
110
129
74
72
108
130
89
78
80
69
101
89
94
106
175
57
76
118
80
117
102
80
80
99
137
137
93
128
197
109
76
69
95
124
80
140
83
101
147
120
101
119
136
134
109
89
87
101
101
119
142
148
69
121
97
87
80
104
91
85
93
85
126
103
107
156
143
164
88
106
102
196
197
72
94
137
136
129
116
134
120
95
109
134
80
133
96
143
80
76
69
91
85
76
114
63
118
107
78
175
96
117
119
99
120
76
156
80
99
113
100
98
127
95
112
125
120
138
118
87
131
52
120
89
121
78
69
140
88
126
94
90
107
154
102
74
146
78
155
156
132
114
155
87
92
80
89
87
157
102
136
117
80
75
67
113
154
86
96
128
175
154
78
109
102
151
107
126
131
129
108
83
143
96
110
169
83
80
136
146
143
197
86
72
93
76
87
144
131
80
87
156
88
54
119
89
197
74
119
91
128
84
56
156
148
112
172
80
175
136
134
86
52
123
85
117
98
120
95
120
117
115
78
83
112
104
130
154
145
69
136
138
155
87
76
69
98
110
123
66
141
95
109
135
87
87
114
111
89
142
131
114
134
69
91
91
80
107
120
107
80
112
96
76
134
128
134
88
119
78
69
152
110
164
91
96
144
129
119
154
89
134
91
155
117
69
69
119
109
76
85
130
90
107
98
154
80
74
89
135
107
169
83
100
90
88
90
87
89
80
101
114
133
147
96
113
144
141
69
155
174
92
119
140
154
93
89
69
106
163
72
122
118
71
115
132
107
76
122
119
137
164
99
104
109
156
118
101
104
78
197
128
145
175
80
88
87
75
107
78
175
145
43
104
175
86
102
71
97
151
117
117
129
76
156
88
145
160
138
122
85
116
101
94
59
69
140
107
80
175
110
97
123
80
140
78
104
131
56
74
119
126
72
154
111
131
89
128
165
96
90
154
148
69
95
128
94
151
76
66
140
112
119
104
107
109
99
80
155
80
120
69
147
128
155
93
163
69
128
87
128
94
64
136
101
132
97
148
88
54
139
136
119
99
114
72
117
119
129
107
103
139
78
100
80
123
100
78
141
120
131
111
94
76
120
107
175
80
120
163
107
96
69
83
109
93
78
104
109
175
119
87
117
80
100
165
131
109
140
83
82
69
87
143
76
116
91
89
71
66
99
104
146
133
136
146
106
58
127
111
149
80
99
137
76
119
69
78
109
76
123
100
80
121
111
87
134
106
96
108
145
102
94
134
76
154
122
99
90
150
175
99
69
99
69
120
96
74
132
69
96
129
156
129
107
121
111
124
69
69
154
72
136
52
120
152
88
125
80
121
131
101
96
79
107
146
95
80
113
119
111
111
140
109
123
80
69
122
88
80
91
94
75
101
101
94
155
122
104
85
104
147
115
160
74
126
122
68
120
87
91
120
60
78
175
87
155
154
69
136
175
128
175
134
92
78
107
87
99
175
134
69
93
78
104
160
78
96
134
95
154
120
78
119
132
124
56
129
89
162
88
107
103
80
99
69
80
76
118
146
90
117
56
74
107
97
123
151
175
80
113
143
93
104
119
76
136
98
109
94
98
80
80
88
94
123
117
87
175
151
94
102
136
66
117
80
87
102
69
113
69
76
127
92
90
112
110
110
76
103
80
110
80
140
98
129
109
96
156
69
56
119
134
91
118
96
123
66
175
80
74
79
80
123
80
72
76
109
137
94
145
101
76
106
69
69
106
100
110
112
114
118
43
119
80
69
120
93
69
104
134
128
199
76
142
85
128
119
90
94
87
113
80
150
149
74
125
88
69
99
154
112
89
123
69
119
86
113
89
69
80
76
110
88
109
78
156
87
52
52
87
120
87
136
130
80
107
107
151
80
95
119
80
85
131
54
88
110
80
136
124
69
106
80
110
164
93
69
104
122
109
76
87
120
183
80
92
80
57
89
127
143
88
109
138
94
69
140
91
136
87
80
80
94
80
78
115
151
69
80
144
120
98
140
154
64
187
107
80
80
80
148
101
69
119
199
113
120
78
169
85
110
80
152
109
131
94
113
69
134
109
76
120
76
117
91
69
69
101
94
128
87
144
154
87
164
138
162
112
112
120
118
117
109
109
136
183
76
100
80
175
78
71
87
118
117
111
154
154
98
115
118
107
76
109
103
107
129
74
80
175
80
91
94
80
164
78
93
72
80
99
117
113
154
181
78
80
88
140
93
87
151
80
76
90
108
136
100
197
87
91
115
72
97
93
95
110
118
126
107
88
118
69
154
91
69
133
110
56
148
117
93
128
133
69
87
126
104
107
123
154
94
120
88
119
80
80
87
69
95
101
209
142
69
107
80
56
143
80
134
78
76
119
78
128
125
125
88
83
87
140
89
119
187
144
117
100
133
69
93
69
119
175
72
119
123
83
117
66
119
69
69
87
80
95
69
140
136
127
80
86
115
99
107
89
145
138
102
93
80
76
142
56
131
169
119
109
80
66
151
113
139
146
112
110
98
128
100
101
90
119
80
131
80
78
120
96
87
80
118
72
114
69
80
97
128
120
107
80
87
92
175
163
199
74
80
113
124
113
78
201
69
152
131
131
80
131
151
127
164
118
80
148
80
83
110
80
78
187
69
90
155
74
101
131
78
100
117
104
89
78
93
111
113
106
154
114
115
89
128
93
76
78
136
181
127
80
163
107
87
118
80
99
69
99
76
114
109
87
151
87
87
69
93
96
80
100
69
110
175
109
107
128
80
43
119
101
89
169
128
140
115
131
72
87
94
139
102
80
143
119
163
99
80
99
111
130
94
108
80
76
69
148
142
102
110
69
107
87
128
79
121
120
76
141
80
69
128
89
119
76
80
120
121
126
80
117
151
88
72
93
120
113
69
103
124
91
76
124
93
134
110
120
80
85
88
124
120
80
107
70
78
136
197
127
80
88
89
115
56
83
145
87
73
152
119
90
91
72
80
80
96
76
80
107
131
64
175
119
107
118
107
78
131
127
80
99
87
74
109
96
83
76
80
59
128
96
71
97
106
109
69
140
112
110
106
88
88
98
78
100
119
96
112
103
80
119
163
113
78
100
151
110
113
72
131
175
142
94
92
127
78
130
78
123
124
80
128
88
89
78
78
119
100
87
106
142
110
134
78
56
137
128
80
137
102
95
96
69
72
125
155
101
85
139
87
140
140
87
134
154
112
87
112
93
88
43
87
115
128
119
80
118
131
120
93
112
136
82
82
94
107
72
80
107
87
118
92
126
87
109
99
100
107
109
157
129
119
89
110
114
93
110
80
107
134
106
76
132
54
96
80
72
80
119
113
69
76
104
89
94
151
96
151
107
110
93
140
113
107
112
117
112
93
119
66
52
128
88
131
143
106
146
83
106
69
80
80
175
110
121
91
72
104
87
175
69
87
89
120
92
107
93
73
96
128
101
99
80
58
72
96
99
80
103
122
69
156
112
131
80
91
88
120
85
119
91
116
94
83
131
83
74
117
69
120
98
175
87
124
136
117
98
151
111
104
80
80
54
100
76
134
87
197
119
121
143
75
104
151
175
106
80
80
80
87
66
156
133
142
87
110
99
78
143
119
136
110
125
160
80
43
119
175
189
120
165
88
118
127
117
69
78
66
163
126
87
69
122
54
101
94
69
117
74
107
80
88
106
113
78
88
109
69
113
110
87
106
137
102
87
87
94
102
69
75
104
88
78
119
78
155
78
120
69
100
112
112
88
107
85
104
133
149
118
87
98
115
94
87
72
52
104
107
69
99
69
119
109
129
98
118
80
78
101
89
80
119
72
129
74
114
131
69
121
80
72
113
133
87
120
78
136
175
78
96
102
104
88
87
131
99
136
93
128
88
99
109
69
112
175
121
72
92
98
130
131
91
119
80
54
98
99
76
99
89
80
157
119
69
80
119
104
83
187
154
118
104
118
69
43
111
88
109
156
108
144
87
118
89
159
72
128
134
123
175
69
72
128
82
123
85
87
120
154
128
107
140
175
109
80
103
78
104
101
60
119
160
122
131
125
113
75
80
127
78
98
97
76
80
69
69
122
72
112
134
110
74
165
96
101
80
74
78
128
99
120
98
72
91
175
209
124
174
104
89
112
87
130
154
153
111
128
71
110
80
115
101
80
110
130
109
119
164
80
175
90
89
104
117
135
89
131
72
128
122
115
104
113
136
88
131
80
106
112
114
113
110
154
126
148
87
90
120
141
80
142
94
80
109
109
76
87
97
112
110
80
76
132
71
128
99
101
87
117
128
87
80
89
151
69
52
87
71
80
72
120
95
87
69
85
108
197
106
154
80
80
96
76
137
128
88
56
87
102
126
129
69
72
119
107
83
137
140
87
80
109
175
163
96
108
131
102
175
175
69
95
82
54
80
80
69
119
85
117
54
113
154
118
72
153
114
175
111
80
94
87
91
69
115
151
99
69
145
123
80
119
85
175
138
80
88
91
146
156
88
109
140
119
84
120
99
128
96
72
111
137
69
80
106
82
101
128
80
99
127
137
106
110
72
69
69
80
88
72
154
91
107
72
122
82
137
150
89
80
69
76
87
87
80
109
99
75
122
88
80
73
69
87
80
112
78
145
94
128
76
136
107
94
120
145
154
122
101
131
110
115
84
117
137
104
74
119
76
112
134
107
80
56
128
109
131
122
115
90
92
109
136
120
120
87
107
69
69
143
128
131
113
89
197
78
80
154
89
80
113
103
76
88
155
120
72
96
175
127
119
110
154
127
111
74
99
95
99
98
151
83
94
111
112
167
174
80
111
120
154
109
122
150
117
98
94
87
80
87
80
126
154
87
120
102
94
115
107
127
80
69
94
120
69
146
136
80
135
134
118
107
134
132
123
121
105
87
101
86
91
68
80
132
69
78
121
109
69
122
134
102
197
99
146
209
148
90
69
80
110
113
104
100
138
100
123
175
69
106
72
106
155
91
153
80
83
89
98
119
69
101
106
119
89
154
117
136
107
154
162
151
83
99
107
90
197
140
112
80
96
118
115
89
118
91
128
80
123
119
69
102
107
143
149
78
97
124
87
113
104
131
83
80
69
119
117
175
103
69
96
125
90
87
106
140
78
56
100
94
112
109
80
128
89
104
78
197
119
121
127
91
94
175
76
121
156
69
134
87
72
76
146
89
104
118
124
111
142
77
92
76
80
69
136
69
89
96
117
80
52
80
126
66
69
109
78
131
104
80
199
115
128
103
109
120
163
131
136
155
80
96
91
132
72
69
112
128
101
82
118
74
80
119
121
197
127
136
80
75
113
98
140
109
109
128
96
91
71
143
87
80
56
103
131
110
142
80
102
87
80
102
131
99
111
156
115
183
107
175
139
107
120
69
80
79
88
78
122
155
131
133
106
131
115
72
112
69
197
123
94
155
89
92
78
76
140
54
119
139
82
87
76
107
85
107
127
149
162
94
80
128
78
74
54
111
134
83
90
96
131
99
91
80
80
163
80
80
119
76
69
130
74
115
147
109
105
89
156
87
111
118
119
69
143
99
121
119
121
107
87
76
128
54
87
69
183
109
126
54
143
80
69
116
136
142
93
89
76
128
119
123
118
76
154
107
87
78
80
80
107
141
163
99
128
117
94
108
175
89
88
89
107
117
154
126
78
69
127
80
87
102
104
106
127
122
78
43
114
103
143
56
154
121
154
95
102
99
156
111
150
137
121
66
99
143
136
113
80
54
154
175
76
117
101
76
88
175
99
119
133
103
98
89
175
72
144
88
79
96
134
87
64
128
120
82
87
76
80
121
69
76
197
101
133
117
88
104
134
102
78
113
128
88
80
76
93
103
80
145
117
106
87
153
81
83
106
175
54
80
98
93
69
43
106
67
107
43
89
78
78
112
99
78
66
88
80
43
143
124
121
109
69
151
102
104
72
154
104
151
91
112
140
149
109
87
106
109
93
125
99
88
127
156
111
84
104
52
88
175
126
136
117
133
89
175
78
76
102
148
89
119
150
107
120
69
76
52
89
113
131
109
78
145
89
88
71
80
114
131
112
114
88
98
101
94
88
67
80
93
106
118
88
76
143
90
101
92
121
110
109
129
134
131
113
128
93
87
54
78
69
154
131
69
164
87
187
94
102
89
91
100
87
100
121
155
76
85
74
104
127
69
120
75
119
99
138
94
87
120
147
87
127
80
115
175
107
117
76
94
103
107
105
94
78
67
120
83
111
109
115
125
143
81
120
146
78
107
131
80
120
94
88
163
72
109
197
69
154
137
87
120
109
96
107
151
103
102
148
111
136
131
119
72
114
116
117
175
113
107
172
127
114
131
129
165
137
77
69
128
89
110
80
97
96
69
88
87
64
80
126
69
115
197
96
88
80
80
119
87
72
58
69
93
105
102
69
119
80
52
94
80
98
197
88
58
80
155
69
134
135
104
73
79
96
121
94
119
67
119
181
78
100
80
69
97
72
131
119
80
80
160
134
98
87
113
109
87
80
78
72
121
101
80
151
107
120
119
109
117
119
69
107
69
100
110
110
99
111
107
67
88
87
100
120
80
175
69
128
90
99
115
69
155
76
102
128
88
151
80
95
101
155
98
165
118
93
102
187
85
128
104
87
102
154
107
137
114
69
78
109
115
112
157
87
112
84
87
94
152
98
125
69
115
102
88
80
64
107
134
85
131
71
91
78
67
93
128
100
87
120
78
78
107
104
143
175
120
120
69
163
81
72
80
127
78
147
145
124
78
107
110
87
69
120
111
156
154
116
76
110
119
80
93
155
80
88
146
83
111
104
109
152
117
78
79
175
140
68
93
94
113
99
100
136
109
91
106
54
87
80
106
102
91
110
75
94
109
128
72
102
149
112
80
80
138
123
80
155
175
80
78
112
76
76
113
149
181
131
87
79
131
124
131
128
140
71
137
109
87
120
102
124
109
115
104
151
76
78
166
127
72
104
103
72
131
76
107
80
120
120
131
80
78
125
76
151
125
114
134
80
101
87
85
103
69
110
127
107
101
104
93
72
66
76
78
89
75
131
140
87
113
104
96
78
164
119
88
80
76
89
134
87
98
99
76
95
80
69
109
54
78
149
80
130
80
111
94
80
96
110
76
140
109
120
101
69
88
76
121
140
122
87
107
107
111
107
101
88
99
146
121
107
100
68
78
112
80
117
52
80
151
127
64
76
138
80
89
124
121
90
95
128
154
137
133
126
102
127
117
101
102
78
147
58
145
91
97
86
127
116
149
69
148
112
125
90
107
106
94
88
69
181
128
134
156
123
120
80
80
131
78
151
109
106
201
132
151
76
123
76
69
78
91
121
109
95
132
127
174
87
110
115
109
99
121
117
101
69
78
132
89
80
76
78
107
104
88
145
76
108
66
85
89
151
100
69
80
121
112
69
127
154
99
120
164
110
82
95
134
93
95
107
118
110
133
85
134
80
151
129
120
94
128
112
78
99
106
80
95
127
106
149
99
116
87
78
175
82
69
119
80
96
197
100
152
110
93
145
140
109
107
76
99
110
117
121
130
87
75
80
106
75
94
113
118
76
80
128
69
69
64
117
165
100
113
85
109
99
107
129
175
91
89
128
87
99
140
78
154
88
87
148
109
104
113
85
87
106
88
126
85
154
91
119
132
87
80
149
76
80
93
80
109
131
107
144
91
119
78
78
175
80
94
96
154
78
69
76
154
128
108
123
164
94
109
164
146
113
119
140
119
123
69
89
81
100
110
78
78
58
143
80
117
148
96
104
57
69
120
104
80
95
122
109
60
80
121
141
104
95
173
87
68
127
183
94
84
106
87
112
134
137
111
91
104
175
74
80
67
91
76
151
89
87
76
104
101
98
162
106
87
107
89
145
123
121
94
197
69
69
128
88
104
145
120
134
119
105
97
185
101
134
88
140
83
91
91
138
128
131
76
69
80
132
76
88
94
87
74
80
76
123
147
102
87
69
87
107
125
87
197
76
99
137
128
84
96
80
117
155
139
110
54
80
109
146
87
116
57
142
88
80
163
87
120
80
80
80
155
88
78
106
137
128
87
78
131
69
76
115
117
113
121
85
54
107
99
163
69
99
126
67
120
93
114
148
91
88
69
93
110
87
80
101
163
134
140
150
130
128
135
109
101
118
101
102
114
83
69
106
128
132
134
101
175
126
121
133
100
159
94
122
102
117
89
105
106
147
128
118
124
69
56
106
131
123
113
130
120
124
111
87
136
76
117
80
109
109
54
88
110
80
80
54
164
164
78
108
80
80
120
87
69
80
175
74
109
175
122
166
110
143
127
93
78
111
76
95
132
69
117
129
175
120
144
131
98
175
92
69
122
88
78
88
151
120
95
128
78
175
88
107
107
109
107
118
111
80
102
104
99
87
110
76
119
119
109
133
80
120
119
127
175
149
102
175
134
98
72
80
88
133
132
111
131
136
87
80
107
112
106
145
107
107
156
87
144
80
120
101
78
80
80
109
78
80
109
94
144
110
197
68
111
89
93
78
80
109
136
107
89
119
80
119
87
115
119
134
87
80
99
96
78
64
78
109
88
96
128
102
87
119
112
120
156
110
119
69
120
154
110
107
83
89
69
80
69
101
76
76
123
59
58
87
72
115
93
123
87
109
111
109
76
160
82
120
88
69
104
94
154
144
136
151
83
129
119
80
102
154
119
97
100
144
87
139
143
80
89
101
80
107
112
127
106
120
74
56
117
80
122
131
91
118
96
121
87
141
154
80
117
87
56
117
117
154
94
69
86
96
80
74
87
110
78
156
121
106
138
91
117
106
151
128
80
123
99
115
106
94
134
145
99
90
69
127
107
119
99
78
58
175
88
82
80
110
156
116
110
120
125
97
80
156
120
80
123
72
80
76
96
117
94
128
148
107
134
104
69
143
125
80
99
69
134
76
118
154
78
78
104
69
109
98
128
69
108
140
69
88
83
94
93
52
143
117
109
119
87
123
93
104
90
93
104
93
164
151
154
89
87
76
136
151
121
134
89
156
175
107
127
112
166
106
113
64
144
56
118
113
104
107
107
78
80
131
133
113
85
80
145
87
100
119
107
99
80
110
112
146
80
205
87
114
120
120
138
138
122
80
83
121
140
154
107
114
106
110
80
88
69
103
80
127
87
76
101
134
90
87
80
69
72
108
102
163
154
66
174
80
69
120
133
88
87
110
119
94
80
76
127
78
120
76
109
69
101
128
126
134
146
69
74
129
197
76
80
128
69
112
43
68
117
132
126
143
104
175
109
119
110
102
137
155
107
93
104
129
64
120
76
107
69
96
134
72
100
129
99
80
72
90
99
86
123
109
69
90
80
69
110
72
101
76
147
80
151
76
112
79
111
74
121
131
101
83
76
78
80
76
97
112
107
124
121
96
80
162
129
81
119
80
72
110
96
99
110
72
101
80
128
110
166
117
69
80
80
118
80
164
69
133
98
110
112
144
108
106
76
80
88
140
76
81
99
91
96
128
119
80
88
131
104
80
76
117
124
78
80
88
94
112
103
126
130
87
78
107
134
134
91
154
134
87
131
123
101
80
87
69
74
122
110
89
119
109
134
107
128
54
140
119
154
147
107
99
145
121
54
151
164
128
155
120
83
87
102
63
89
156
78
140
140
117
119
110
88
76
123
80
146
120
89
109
137
80
95
131
109
80
83
69
154
72
101
113
144
151
93
119
107
121
110
76
103
110
80
121
102
78
123
110
80
119
163
93
69
69
76
118
118
58
111
104
131
155
100
99
119
89
126
101
78
69
69
104
132
102
110
155
104
92
99
52
80
120
122
87
145
164
98
130
110
85
119
137
75
69
80
113
69
120
154
94
119
146
175
88
79
70
123
80
93
154
80
120
154
134
154
43
80
159
104
154
76
112
54
80
113
76
115
92
119
146
87
88
69
76
112
82
112
113
137
69
119
80
75
106
79
80
140
175
174
140
107
129
175
117
138
69
121
76
140
199
80
102
99
157
140
117
109
72
69
69
134
159
119
129
126
99
102
67
85
96
87
107
87
80
113
80
118
110
104
163
69
99
125
151
104
112
131
126
103
148
110
80
120
88
148
119
118
107
117
104
116
80
89
156
80
133
91
80
106
114
78
95
120
85
66
109
110
87
113
99
93
78
128
69
133
137
92
80
69
110
175
100
100
96
87
80
90
145
122
69
78
87
54
104
110
167
87
142
96
118
52
98
102
76
111
69
128
96
87
185
111
89
127
110
78
69
121
72
69
79
88
92
122
103
69
83
175
106
111
80
69
118
84
154
78
112
120
89
143
106
69
54
115
127
95
124
85
154
124
128
78
119
119
119
80
81
59
96
142
154
136
104
119
134
80
76
139
89
133
126
113
54
164
144
80
72
129
151
134
94
120
134
132
69
88
91
141
102
69
80
100
94
85
119
69
80
136
74
64
101
140
96
87
69
107
121
143
69
99
100
79
87
103
151
133
123
101
87
128
104
78
88
54
80
119
154
154
69
138
151
101
106
69
129
139
89
119
98
106
145
91
87
109
100
97
127
123
151
119
107
69
154
96
75
119
110
80
80
88
103
151
135
56
92
87
63
64
87
80
87
89
121
154
80
140
118
112
160
69
81
109
131
69
133
112
69
97
60
131
126
80
72
106
76
113
89
102
78
56
94
127
197
120
118
104
72
86
147
69
90
80
96
69
89
88
120
107
83
94
119
83
104
69
127
121
129
80
134
99
96
110
91
121
107
96
78
140
102
74
112
91
87
111
69
88
80
96
109
109
151
197
82
78
107
118
112
72
94
89
99
97
151
169
86
69
100
69
91
69
175
76
89
129
104
139
114
80
102
96
120
136
156
72
119
125
71
86
102
152
104
80
128
181
128
137
95
72
181
131
128
99
121
69
172
90
116
91
120
175
78
128
80
90
115
84
92
80
80
69
115
76
80
69
119
115
122
78
66
68
117
119
69
99
199
93
115
131
120
78
175
132
94
88
106
117
69
87
175
113
151
72
69
95
144
154
157
67
69
109
87
103
80
80
117
69
130
100
54
89
64
120
136
122
66
54
120
120
120
99
121
79
111
60
127
109
78
106
89
107
115
145
140
137
76
109
80
128
154
76
106
154
119
74
120
89
152
156
119
133
87
104
78
69
109
94
87
99
110
80
82
87
162
69
122
144
175
72
119
69
87
88
87
100
118
134
119
93
88
104
80
163
157
110
91
80
80
119
78
109
130
91
87
56
78
120
104
120
154
113
110
80
111
89
163
147
78
141
92
78
112
89
119
76
115
54
80
78
175
89
54
126
112
111
151
128
102
148
98
83
90
110
136
174
43
123
151
101
54
145
96
78
138
96
78
80
80
113
78
90
80
78
89
133
201
78
113
113
89
104
76
140
137
74
93
90
91
154
110
78
107
104
119
89
99
104
87
100
80
80
140
108
137
107
69
69
87
134
87
94
197
76
87
154
128
119
175
107
117
134
109
95
197
87
87
107
98
99
88
99
128
85
69
137
106
80
131
120
117
69
76
94
99
107
101
130
96
80
127
87
78
90
107
80
174
78
145
101
80
102
69
80
95
80
154
90
109
118
110
76
107
137
87
140
87
54
119
78
67
83
131
91
90
118
136
99
197
118
99
120
109
87
109
117
89
109
144
107
118
114
104
98
88
80
119
110
80
151
112
99
148
101
120
148
164
88
128
105
155
68
89
120
138
131
76
80
151
93
120
76
93
113
107
69
87
99
104
163
94
76
175
107
102
145
89
85
147
89
76
91
90
155
117
156
136
76
73
52
94
117
43
88
138
137
156
197
128
154
76
107
69
91
101
74
69
101
69
175
175
146
120
72
96
72
69
93
128
59
156
118
111
78
76
78
69
76
69
123
91
164
59
118
110
102
133
83
128
145
80
106
120
119
101
80
76
119
152
80
54
80
175
80
126
118
166
100
110
134
145
80
80
80
94
99
140
163
106
72
131
76
136
88
116
106
80
80
80
91
87
121
102
80
89
69
90
110
128
113
175
69
111
110
137
76
99
87
109
138
74
112
99
120
93
78
109
113
108
117
120
164
127
107
80
87
112
156
163
80
56
80
80
80
91
126
123
88
80
69
143
94
199
99
80
101
128
129
80
154
109
152
104
87
128
94
69
155
136
156
104
113
69
68
140
87
121
135
80
152
85
121
119
54
151
80
122
80
143
82
91
76
93
98
76
118
109
99
142
69
69
109
72
94
143
103
120
106
75
120
187
107
88
134
80
125
72
174
120
76
76
109
99
94
93
87
73
89
98
94
85
137
154
101
127
131
100
152
72
82
107
69
120
151
137
122
112
187
80
140
104
118
154
125
69
85
126
110
149
78
104
115
69
154
107
89
113
64
43
175
100
69
69
128
97
115
87
80
107
80
81
80
80
121
101
99
175
156
143
104
134
69
87
74
87
76
181
80
107
133
94
74
109
175
135
119
156
69
94
140
80
117
88
169
69
98
145
113
78
110
104
103
154
108
69
121
87
136
108
78
80
193
73
185
134
56
145
87
91
80
88
99
80
93
111
130
72
106
100
120
80
99
175
117
120
88
163
111
69
73
80
98
88
80
101
88
106
123
138
136
114
102
107
119
78
100
78
60
54
91
102
78
80
69
175
145
90
163
99
89
94
110
80
80
91
69
88
175
69
87
54
80
122
116
102
69
82
174
175
112
80
117
134
147
76
175
134
111
119
144
109
96
164
73
87
201
106
106
146
75
87
80
54
93
80
128
184
80
69
91
119
113
134
123
103
140
56
78
69
146
80
164
69
43
126
87
152
91
175
79
94
128
69
114
56
109
122
153
115
107
197
122
117
112
119
143
76
120
120
151
113
128
107
109
147
78
155
69
145
87
87
69
101
109
133
115
144
149
80
126
94
154
106
97
78
110
120
74
98
106
109
94
78
69
118
78
99
95
104
93
99
56
146
99
93
112
67
114
156
88
175
106
82
122
152
136
80
118
71
117
95
87
87
91
109
69
151
98
109
156
80
89
106
109
136
120
74
110
99
99
150
107
128
126
100
76
154
145
74
88
81
80
80
80
54
144
151
78
111
151
164
103
96
127
107
120
101
88
87
99
76
119
146
80
137
107
89
72
142
112
78
83
94
154
113
80
154
117
145
110
110
120
69
137
109
151
112
112
131
71
104
80
80
150
80
151
128
85
115
69
54
72
128
101
121
69
94
145
58
85
80
136
128
135
139
64
80
91
127
110
172
102
133
91
121
89
104
69
75
80
126
155
100
87
133
87
197
69
160
78
114
201
87
56
121
128
69
79
80
69
69
101
92
117
117
80
99
59
88
117
76
121
89
175
131
120
69
80
123
150
111
69
72
78
197
73
128
154
89
111
175
134
54
78
119
175
89
120
136
128
104
92
164
145
112
159
76
93
124
101
143
113
87
110
99
155
80
69
99
146
80
96
119
80
127
163
136
98
145
101
69
104
109
110
146
128
87
109
143
80
90
87
130
95
120
99
114
69
78
90
175
91
103
89
197
120
82
80
140
117
93
80
96
152
103
80
69
117
151
87
119
87
107
110
136
69
101
93
80
69
124
137
100
80
107
78
109
109
119
151
80
80
120
119
201
69
99
107
136
69
80
134
107
151
96
107
80
83
131
99
69
69
94
80
76
107
133
116
78
92
134
56
97
116
80
87
52
106
72
104
164
128
56
78
175
83
101
134
127
122
109
109
128
128
137
56
80
69
74
136
120
93
87
95
114
115
87
98
80
80
69
142
137
127
94
80
89
102
80
120
115
76
96
100
78
104
115
134
87
115
118
103
69
101
130
156
111
88
165
147
149
88
80
69
174
69
66
143
98
76
128
93
80
112
85
133
133
80
111
140
87
138
135
104
80
88
154
175
69
78
59
79
101
74
120
127
119
110
175
88
107
78
109
54
80
85
117
69
87
111
78
113
80
157
143
87
93
144
126
69
96
147
106
104
87
148
59
155
66
121
69
109
119
78
72
132
134
121
102
96
78
110
129
121
104
120
72
123
121
101
107
80
123
98
98
80
119
110
119
69
137
129
80
122
66
69
155
164
175
87
98
175
87
87
126
122
69
69
91
69
131
115
133
91
102
87
80
66
109
115
110
89
121
80
126
104
87
128
155
87
92
154
155
120
80
128
156
121
88
80
109
119
132
80
109
78
78
97
103
119
146
163
78
174
145
76
134
133
136
145
131
119
154
100
111
120
83
127
76
88
59
94
125
123
94
74
69
100
80
80
95
103
120
69
96
80
104
137
74
145
76
107
74
69
120
134
109
121
52
88
133
96
54
119
101
111
147
152
94
117
118
128
69
70
132
66
67
152
109
80
140
78
145
78
89
82
106
82
96
87
110
105
129
76
78
174
156
107
71
123
102
93
136
69
133
131
112
110
96
117
120
107
122
125
69
150
83
113
117
128
106
69
87
136
76
93
72
69
99
143
95
100
107
87
113
110
87
110
146
67
87
106
146
72
67
69
91
113
122
120
109
140
87
75
68
76
107
78
103
87
97
140
80
127
175
98
80
78
127
96
69
94
88
99
107
116
128
69
151
104
142
96
208
156
112
125
78
113
93
162
96
80
87
96
86
87
109
164
113
82
99
120
95
178
87
156
80
56
163
80
131
78
78
80
87
151
102
101
112
136
78
163
78
80
151
80
99
145
120
80
78
145
52
93
76
98
91
88
78
162
91
104
128
74
80
105
112
87
110
95
95
155
101
151
123
133
82
119
80
90
123
80
99
121
80
118
145
122
119
88
154
119
80
127
54
121
104
123
80
91
103
94
69
121
98
113
126
103
71
69
69
80
197
129
78
93
102
80
69
80
127
69
117
118
76
137
88
91
72
88
87
80
69
125
145
92
110
164
80
104
80
164
80
66
176
91
187
88
89
134
120
80
114
88
89
121
107
129
52
119
80
136
52
94
118
142
95
78
100
156
94
104
94
110
109
69
101
110
80
114
104
69
124
76
113
83
117
56
175
78
140
104
120
79
151
112
69
76
96
134
95
143
54
130
80
62
82
140
71
80
136
152
54
91
134
74
109
80
88
133
128
101
155
119
91
115
128
131
123
88
69
88
128
76
136
104
88
121
112
98
76
93
78
154
69
127
80
102
112
187
69
87
78
100
157
96
104
76
134
87
123
134
87
159
78
148
119
140
104
131
118
119
112
87
88
87
87
69
78
117
92
110
119
113
118
114
147
127
126
128
103
89
113
137
114
69
136
119
80
69
110
142
154
88
109
69
111
109
101
91
101
112
88
99
88
78
101
156
72
106
98
136
113
107
88
111
54
78
156
87
99
107
78
88
143
75
145
54
80
80
151
120
104
154
101
120
118
146
119
144
85
127
80
107
122
109
132
154
123
148
112
78
94
119
151
128
175
87
164
128
197
90
87
134
87
134
90
94
96
74
118
112
69
121
110
99
104
87
96
78
99
76
197
69
76
92
98
136
107
121
129
112
151
88
80
97
107
181
69
69
80
87
79
85
99
199
91
64
136
120
80
93
90
69
176
99
87
149
88
63
148
95
78
80
89
102
98
145
74
163
69
132
90
155
76
80
80
74
106
93
90
143
80
58
119
80
83
77
109
126
115
96
76
105
106
133
107
133
119
118
119
80
101
117
128
110
175
197
96
94
85
80
69
119
89
66
119
88
104
121
102
144
156
87
148
123
100
129
80
129
87
104
52
74
69
94
120
131
117
76
119
134
112
85
129
88
100
197
103
80
121
150
117
89
126
66
92
85
109
78
145
124
136
117
118
69
101
87
150
85
87
80
76
88
89
134
71
155
134
78
137
136
123
100
103
106
136
80
69
80
80
80
72
87
109
99
87
113
94
119
151
118
117
87
80
107
132
134
146
96
174
113
86
80
128
151
130
91
130
120
120
119
121
159
129
110
100
154
131
88
175
129
78
136
140
128
89
80
113
103
78
91
78
73
119
78
107
201
134
76
111
94
94
69
88
127
125
154
88
154
121
129
85
128
88
78
154
87
104
80
93
72
102
94
121
128
166
87
175
88
94
52
76
175
106
99
104
112
109
87
96
145
113
154
72
119
136
205
117
71
143
120
101
104
103
80
112
87
107
110
143
69
155
87
134
127
60
69
119
93
69
154
104
54
87
81
143
52
89
183
121
111
109
76
124
78
162
110
89
122
54
147
149
76
103
117
80
88
80
118
69
132
148
130
69
140
111
69
87
54
134
67
78
152
94
120
104
88
78
197
82
80
117
80
115
115
112
87
130
163
134
69
99
87
118
76
87
151
114
160
98
69
101
156
87
119
59
139
54
163
145
78
105
87
110
80
76
153
134
154
80
138
136
150
80
112
111
125
69
117
104
80
93
90
88
94
109
175
112
80
133
94
80
128
98
128
94
149
75
69
160
104
80
120
104
138
117
121
119
76
164
78
106
175
111
91
100
119
169
95
69
131
75
110
124
88
109
94
74
94
131
80
128
140
56
120
69
78
112
120
131
148
126
120
120
145
197
98
103
128
69
69
70
119
80
88
163
136
80
156
119
87
89
197
78
130
138
94
98
112
175
89
90
153
87
120
80
154
120
87
76
99
119
109
146
139
162
119
80
80
102
87
123
87
99
101
169
105
119
94
136
78
78
94
80
52
120
80
80
175
105
133
89
52
154
121
121
80
88
175
136
72
119
84
131
111
108
169
80
96
110
78
104
101
107
107
152
106
124
87
95
89
109
124
143
112
89
89
109
69
118
95
69
78
72
109
92
104
69
154
116
96
119
69
133
69
83
99
127
95
101
93
124
102
112
128
151
134
136
86
76
95
109
131
89
69
54
100
78
88
118
104
99
69
80
43
164
119
88
80
87
120
76
128
111
114
113
154
98
140
80
80
125
131
134
109
78
93
133
137
56
115
78
91
110
119
93
129
106
76
69
125
104
121
146
52
155
181
73
131
93
120
78
146
137
106
82
78
92
102
143
80
88
119
110
101
175
66
80
115
91
93
78
94
112
142
112
136
103
128
80
93
110
109
104
175
80
183
134
94
76
113
139
118
54
134
95
134
83
80
119
87
78
134
156
76
129
69
128
115
109
129
72
88
76
99
138
88
94
69
95
78
99
131
76
121
117
131
64
163
138
107
147
78
84
127
107
119
83
100
104
113
109
80
90
87
80
76
88
104
126
164
151
76
109
134
110
87
154
106
113
91
80
87
111
78
137
87
69
80
143
94
134
69
89
132
128
141
72
72
123
127
87
175
108
110
127
136
113
69
171
87
83
110
120
128
69
87
154
80
98
122
69
139
110
143
98
100
107
156
117
119
112
120
119
78
87
100
120
119
114
128
134
187
89
154
107
88
123
125
112
76
131
80
104
125
67
69
99
80
84
107
87
80
94
183
125
78
128
80
87
119
79
111
85
115
124
89
80
107
56
111
119
156
80
96
120
121
69
87
132
118
117
115
104
119
136
119
87
88
99
100
72
106
118
69
54
98
143
110
101
134
136
153
80
159
95
156
117
69
69
119
137
87
104
154
69
137
117
201
107
154
107
118
80
80
69
96
81
140
78
147
104
90
69
101
74
87
104
120
155
56
125
113
87
119
76
125
83
88
197
101
128
93
93
87
141
133
109
104
87
69
79
76
197
80
69
134
119
89
123
94
152
152
76
80
164
103
132
111
119
88
94
140
74
54
99
101
74
154
101
94
163
54
117
113
96
67
94
156
82
121
69
52
113
104
99
132
88
127
85
134
54
154
100
104
137
146
133
160
67
87
146
120
151
109
135
134
89
74
121
80
155
78
80
115
110
104
99
143
94
125
197
69
106
74
78
80
147
101
197
78
136
103
89
87
136
185
74
140
131
109
122
76
75
73
137
69
156
134
78
152
87
119
175
120
134
80
96
118
107
120
69
120
107
72
107
93
75
106
99
128
197
107
156
136
72
74
120
88
67
78
78
146
80
181
137
117
120
187
152
110
103
164
115
197
114
94
90
76
142
69
87
80
88
87
80
131
85
89
127
104
119
56
76
125
121
54
77
129
175
70
119
113
143
138
88
119
120
155
107
120
107
89
87
128
114
110
100
122
74
133
161
111
137
69
104
119
69
80
98
110
94
120
175
128
126
144
197
54
151
134
80
87
82
120
151
134
87
99
126
76
91
120
80
78
76
122
89
117
94
116
80
116
83
80
78
87
134
80
134
69
89
175
127
113
110
101
69
151
134
119
104
123
103
120
78
140
145
103
142
143
78
104
104
134
80
142
119
138
126
154
88
80
95
87
128
197
94
123
80
69
111
89
102
110
131
52
185
94
88
120
128
137
113
151
156
107
80
117
103
88
90
109
145
110
69
96
115
156
136
82
136
149
91
143
152
88
88
93
107
76
175
119
155
80
121
80
183
109
87
78
104
87
143
87
164
140
80
69
104
80
56
128
87
78
69
103
87
93
69
87
120
88
119
117
78
99
91
80
74
80
139
109
165
119
69
69
80
138
174
99
128
120
72
109
120
98
88
69
100
142
80
93
99
87
125
99
183
151
89
119
147
69
156
117
102
72
89
131
196
174
94
156
94
72
135
95
66
93
133
76
100
155
148
126
80
88
145
87
120
127
107
147
69
69
99
93
80
101
163
69
160
134
132
118
127
132
96
127
89
89
80
183
94
76
104
99
121
96
107
134
134
120
124
120
111
134
201
131
88
134
164
149
89
115
109
99
104
107
89
107
131
104
69
129
130
84
128
82
106
77
163
197
112
113
140
87
111
91
69
201
134
117
80
76
69
98
118
87
99
174
110
117
88
109
119
76
69
67
197
119
128
163
60
128
118
69
72
109
85
87
144
87
98
52
107
87
119
78
109
107
69
100
93
106
91
88
69
156
106
101
156
88
118
110
123
156
80
56
110
69
113
87
88
150
109
154
85
137
80
110
110
156
156
85
156
69
87
110
67
80
90
137
151
76
145
74
87
93
113
79
127
118
106
80
129
92
119
119
131
110
161
54
87
93
91
93
76
64
120
87
128
94
99
146
72
76
89
69
109
145
120
152
80
154
119
112
129
91
147
80
78
69
123
80
107
125
175
148
138
103
76
105
64
154
87
79
80
122
110
80
80
54
134
123
80
90
99
100
69
127
104
121
89
117
109
119
78
165
145
120
90
93
119
102
111
138
106
75
111
52
134
99
101
123
117
151
85
88
72
135
99
93
69
116
78
137
76
106
87
160
107
115
87
132
87
143
123
90
107
175
88
89
85
154
80
117
96
154
110
97
120
93
146
131
85
69
121
114
128
161
120
87
78
94
89
143
99
78
85
119
137
114
66
87
118
115
78
69
85
121
99
120
78
140
72
80
140
163
80
120
110
93
68
87
94
147
107
69
80
76
132
80
95
164
64
74
78
89
127
72
82
109
69
76
72
69
163
128
116
91
131
146
121
113
94
78
85
91
116
104
128
80
76
80
78
87
110
87
79
80
107
87
83
120
132
89
126
80
128
76
136
93
69
154
154
72
78
128
129
83
87
208
156
128
96
109
117
110
52
95
109
128
107
105
69
121
80
87
111
156
124
78
103
123
118
93
87
118
103
56
78
111
77
119
88
94
69
80
119
95
121
110
99
104
69
112
43
69
134
120
69
120
120
107
94
119
80
87
85
76
105
72
78
91
164
112
69
109
89
122
129
130
134
75
84
82
71
114
119
72
118
109
87
78
119
125
78
88
80
85
126
76
102
120
154
87
101
66
110
124
132
107
107
69
69
69
69
182
101
83
99
124
107
146
199
80
109
160
80
80
99
85
123
96
69
76
80
187
54
134
84
80
87
113
155
80
107
143
120
151
138
110
80
54
136
121
104
112
113
80
99
89
80
114
106
76
87
80
94
175
80
126
87
119
110
109
56
103
133
107
136
69
107
164
87
111
104
99
80
76
97
80
128
103
76
80
99
78
99
109
114
76
175
78
94
128
109
107
87
69
87
120
80
124
147
128
181
112
80
88
99
80
128
99
89
163
94
122
119
80
103
69
99
120
119
69
132
134
110
82
113
115
112
117
69
175
69
138
87
69
118
79
80
106
117
69
120
152
145
107
94
110
115
83
163
120
119
88
100
138
119
79
88
78
109
98
88
117
97
87
134
78
175
92
72
113
117
107
124
154
101
91
123
121
72
81
154
69
69
106
157
197
78
72
109
109
121
89
80
80
116
166
113
80
111
131
117
109
93
142
112
111
109
80
96
130
120
109
147
78
95
104
104
80
119
123
100
119
110
107
144
154
122
105
136
117
128
107
109
127
149
118
127
155
69
114
129
107
79
125
104
115
136
77
90
115
84
115
112
87
124
108
76
76
91
107
106
99
113
69
123
90
164
72
113
154
115
127
83
118
118
78
80
69
75
156
78
69
137
72
137
120
67
99
115
175
201
124
126
117
96
155
96
81
127
88
128
89
76
60
69
181
154
121
76
83
126
109
155
104
115
80
72
59
154
132
175
85
93
80
104
154
112
80
152
154
197
60
87
197
127
160
80
121
120
52
145
80
96
95
69
96
137
80
134
67
115
90
105
80
148
104
127
144
90
197
140
80
67
89
69
154
68
74
87
109
72
117
146
69
102
78
123
80
67
69
91
99
112
52
107
128
107
126
127
88
52
120
87
106
154
117
66
112
112
93
106
88
109
197
102
54
113
88
89
123
78
88
144
72
80
107
126
163
164
112
133
175
111
136
107
166
78
87
72
80
112
118
120
80
119
80
80
120
118
120
69
120
143
100
109
80
80
80
107
88
97
82
175
154
67
155
81
119
80
97
107
69
69
78
69
105
128
69
139
87
88
121
134
80
69
78
142
69
80
69
136
111
122
96
74
92
128
76
80
107
72
104
169
56
119
71
69
78
87
99
69
52
80
69
96
93
80
119
87
99
87
129
80
111
175
76
80
109
88
119
130
120
78
78
117
109
88
100
87
148
80
146
146
145
117
95
76
112
95
69
119
126
87
109
110
119
166
154
154
87
136
143
80
108
69
148
52
78
155
119
82
80
154
110
88
56
97
122
156
76
80
127
85
175
151
80
95
123
78
154
52
123
114
121
122
76
84
72
52
119
131
69
76
145
147
87
128
175
74
123
129
156
144
99
154
96
134
83
118
146
100
102
99
131
99
115
104
87
76
75
79
151
78
111
103
174
140
74
112
99
89
113
80
69
120
119
154
119
80
94
93
103
143
107
60
126
107
145
130
124
175
107
134
119
96
124
80
87
145
160
136
93
123
76
175
120
172
147
149
101
94
141
152
126
130
52
88
94
155
69
137
60
87
128
104
97
114
111
76
94
124
89
113
127
152
69
104
120
113
72
155
74
115
100
151
163
127
154
137
128
76
119
145
107
76
110
74
147
151
69
80
106
103
169
76
54
113
69
72
109
93
97
138
123
147
135
117
54
80
99
131
113
175
131
80
91
119
119
80
69
90
116
140
111
80
78
114
78
140
80
80
69
121
154
134
80
121
89
69
80
60
131
96
93
96
82
106
87
107
107
139
154
72
131
123
80
109
80
76
145
128
69
72
107
111
107
95
108
99
64
87
107
76
128
154
56
94
122
72
78
119
88
96
152
140
94
104
156
120
78
69
80
80
110
156
109
77
110
143
118
139
156
134
117
76
107
186
69
104
110
96
93
144
120
85
110
99
72
163
162
89
120
154
75
121
80
117
107
123
120
114
151
116
86
74
87
112
69
104
96
99
148
78
76
76
86
80
154
66
147
84
89
94
134
175
102
175
119
109
80
92
131
118
119
109
78
78
137
134
80
89
110
175
101
109
121
147
57
91
88
124
102
92
107
124
89
80
69
142
197
143
80
154
136
96
91
175
154
137
119
128
92
137
134
119
88
143
118
126
80
125
100
76
116
103
80
175
87
120
87
80
97
175
76
52
80
109
91
128
93
93
99
134
107
52
95
88
154
141
172
126
102
121
155
80
80
156
80
120
98
93
96
151
89
134
88
98
130
93
69
147
140
87
134
125
131
90
136
87
102
115
120
112
152
59
100
99
131
136
113
143
87
154
102
97
160
143
101
76
104
156
136
123
69
83
111
69
122
175
106
89
156
117
87
69
54
143
140
113
76
117
87
136
119
93
89
175
128
80
119
110
101
96
67
160
104
108
91
102
80
108
96
88
80
139
94
90
78
93
80
89
80
78
80
117
89
175
175
151
102
88
78
118
123
107
100
120
109
115
69
128
74
80
136
117
98
128
76
115
82
69
134
134
69
69
109
88
144
142
72
88
119
121
199
80
199
175
72
133
82
94
69
117
136
69
87
175
113
80
156
112
87
80
83
89
72
109
76
93
111
155
117
87
154
88
121
91
128
114
122
115
109
80
83
80
154
132
106
89
117
138
104
74
79
80
148
119
78
138
103
100
121
109
127
96
72
119
118
93
69
113
110
96
91
76
129
104
119
90
102
111
163
74
96
103
111
80
148
156
150
80
175
88
107
110
123
91
80
93
107
127
93
113
69
96
78
112
107
104
106
109
118
112
80
72
152
100
119
87
121
111
127
69
85
113
94
152
139
104
109
109
85
109
87
102
85
195
78
142
121
111
143
80
78
80
166
87
69
99
94
109
93
78
69
88
76
117
118
122
94
76
122
127
140
103
76
88
199
93
106
56
110
128
76
80
78
140
83
78
104
95
111
136
96
76
91
104
127
169
123
136
95
123
98
104
99
107
89
115
69
95
106
145
106
119
80
112
69
74
85
134
118
118
111
80
76
73
120
120
109
69
131
181
110
156
110
78
131
80
140
119
120
109
197
52
94
111
94
101
119
111
87
74
66
107
69
93
110
154
87
119
80
117
125
154
121
127
76
107
119
120
80
100
126
139
89
113
88
113
80
107
142
78
148
78
154
113
121
98
111
121
76
137
87
80
151
80
136
69
43
133
116
126
109
112
99
119
108
154
110
78
104
89
69
154
149
128
96
74
175
127
163
154
156
69
72
111
76
80
69
109
113
106
71
154
91
134
72
99
76
126
76
107
197
130
80
72
76
94
76
88
110
127
64
76
92
119
87
113
109
85
87
69
89
101
156
111
119
106
107
72
99
69
74
169
154
94
145
156
116
145
120
88
80
101
96
76
175
112
99
197
107
69
151
112
187
167
183
172
156
69
116
80
114
87
148
112
124
197
125
175
89
137
110
121
80
107
143
99
109
120
119
69
69
100
85
123
140
78
80
128
87
140
107
119
143
134
175
128
80
164
128
100
69
104
112
104
130
113
80
145
101
90
96
163
80
128
92
80
117
156
140
122
78
127
89
125
95
80
175
78
156
112
175
110
110
100
96
197
113
89
98
119
119
117
156
157
69
112
80
78
89
78
131
117
69
72
80
97
77
131
103
94
109
197
85
143
112
175
119
87
129
154
88
110
104
181
115
69
71
119
109
99
142
89
69
67
145
146
91
80
122
59
93
88
56
97
101
76
109
130
119
88
134
142
117
155
109
156
79
96
93
118
69
87
104
111
115
76
93
115
78
101
78
93
69
99
69
110
102
93
135
89
161
112
69
106
165
119
121
56
76
89
75
131
88
154
134
89
80
156
109
111
72
110
124
69
174
72
107
163
101
128
110
78
120
149
102
80
88
106
122
123
131
175
96
127
144
100
100
101
154
88
185
146
133
151
90
124
111
154
107
101
110
127
129
94
134
154
54
66
104
80
110
113
80
96
152
117
154
156
121
106
99
68
116
120
69
110
130
103
131
69
94
146
125
102
197
139
128
80
109
107
145
87
96
93
81
91
150
69
80
69
69
82
117
69
163
155
155
67
96
136
136
87
142
96
113
71
109
134
102
120
99
118
113
128
120
99
166
199
117
99
102
80
146
143
132
88
80
87
120
199
131
128
115
93
89
132
78
127
143
87
107
107
105
120
110
78
160
126
151
78
133
113
119
73
87
80
120
111
80
90
102
119
92
107
69
69
76
94
111
93
98
154
130
93
147
89
118
80
106
96
120
69
90
157
107
148
98
69
120
119
83
88
80
113
126
80
52
199
104
160
110
94
87
140
119
140
107
115
96
102
126
88
104
99
88
104
137
123
112
76
86
154
76
100
54
80
153
75
119
117
80
196
137
154
131
120
94
106
90
69
104
93
121
69
110
113
80
69
96
140
110
129
131
102
121
149
144
87
127
103
103
109
107
80
122
131
107
87
99
78
80
87
136
69
99
111
141
74
80
120
175
146
197
54
175
100
132
114
155
154
119
90
74
69
109
87
151
90
102
78
145
114
80
119
87
117
131
89
71
132
94
88
117
100
137
161
110
76
116
96
89
69
78
104
115
52
81
140
91
80
105
131
69
121
89
80
80
115
109
140
80
185
96
85
140
73
78
123
97
101
80
76
137
107
123
107
147
106
136
137
76
87
104
106
140
52
96
180
106
154
104
149
132
99
128
94
107
121
115
110
120
144
76
79
113
89
104
93
111
95
87
103
88
94
151
75
128
175
130
113
119
136
109
109
82
175
90
91
80
138
78
88
178
91
76
69
69
197
80
69
87
99
100
146
104
89
80
69
128
80
136
107
118
80
114
95
69
136
54
99
87
121
100
110
92
133
76
119
100
76
199
114
109
103
78
127
109
76
175
78
102
145
102
174
110
122
121
80
143
100
129
93
130
69
87
80
119
76
94
136
109
93
120
127
78
69
181
136
145
103
119
129
80
124
87
121
78
109
112
93
131
132
87
93
94
80
104
134
101
96
109
104
95
109
169
90
164
87
80
89
119
116
140
120
110
155
76
107
87
160
104
72
74
88
80
69
154
94
82
141
93
69
60
129
67
150
87
76
76
112
117
148
126
107
197
153
80
63
109
100
140
96
93
59
134
87
93
76
78
147
107
148
100
99
75
175
99
97
131
73
112
87
78
80
80
96
119
128
72
76
119
88
133
80
131
87
91
80
80
88
125
103
104
96
76
117
78
199
91
98
80
93
123
131
76
110
121
78
80
118
91
209
151
96
79
119
83
121
163
97
95
120
102
69
80
106
111
88
115
112
54
129
52
136
87
87
129
122
119
87
129
122
88
115
157
121
93
137
78
110
79
117
131
109
67
154
120
80
87
93
133
122
69
94
80
154
69
56
78
175
144
87
107
156
148
117
96
89
109
119
78
113
110
125
69
88
144
134
56
72
72
69
69
69
131
87
109
110
118
127
83
121
134
134
80
80
78
99
87
151
185
106
91
97
114
110
78
99
68
129
119
54
60
99
110
175
126
87
164
87
133
121
136
123
80
143
176
94
87
90
119
155
124
97
107
89
99
114
134
133
105
97
80
69
134
112
175
96
111
96
109
52
119
54
143
78
127
80
80
52
107
93
156
113
69
138
69
76
100
106
129
111
87
72
148
123
143
117
80
146
110
80
128
120
109
146
163
87
149
118
88
136
100
94
134
78
80
78
151
87
96
140
113
88
87
54
104
66
151
76
136
76
164
74
129
85
94
120
118
110
72
112
111
87
138
113
113
136
80
73
140
156
110
75
175
140
116
80
69
123
145
80
87
111
88
175
156
80
134
52
96
87
69
157
89
80
109
134
80
80
139
119
89
94
58
80
99
98
80
80
94
107
80
87
96
119
113
69
69
93
78
69
66
145
104
148
112
76
80
83
132
93
76
103
123
160
127
107
96
76
69
111
87
144
175
69
119
80
133
94
129
130
156
107
80
80
78
106
120
80
87
175
113
99
118
80
72
69
80
134
94
123
98
54
88
87
87
88
52
119
120
93
112
121
160
80
144
136
128
93
52
89
183
106
73
112
130
121
90
119
131
111
76
138
94
149
99
135
133
118
113
175
80
111
80
128
78
119
113
99
128
69
96
110
154
98
99
69
128
96
69
134
197
142
136
140
103
87
89
80
113
101
137
80
118
69
109
156
126
134
88
166
91
94
87
163
117
104
154
80
120
106
134
76
110
157
107
109
99
197
169
89
93
101
119
76
117
106
156
72
113
80
107
87
113
152
69
89
175
87
156
120
127
80
119
70
126
142
175
174
104
175
134
87
99
90
76
126
69
157
69
80
69
133
76
96
109
109
154
95
119
69
183
96
174
175
97
101
140
118
99
127
69
141
76
155
126
154
87
151
80
156
89
66
133
78
107
117
81
201
89
119
78
156
74
154
127
94
76
87
80
76
103
54
175
175
118
80
149
104
94
69
78
69
91
110
86
72
175
69
69
96
99
154
140
154
122
78
115
131
90
136
132
80
145
175
110
80
99
128
80
94
155
121
165
109
94
119
101
106
140
52
109
63
69
69
118
121
112
99
93
115
120
128
76
104
113
69
121
126
122
88
136
76
154
112
134
104
94
119
109
117
119
160
159
112
106
80
102
101
87
89
87
133
80
85
100
109
100
106
147
123
140
121
87
140
164
168
88
148
174
95
99
130
88
78
96
128
89
145
185
121
89
59
80
131
127
80
76
134
151
104
80
89
115
136
126
144
80
85
150
104
143
80
89
69
155
131
80
96
56
121
97
85
107
117
140
112
120
78
135
80
99
134
113
104
69
76
125
117
88
119
172
89
78
72
120
54
101
132
89
140
162
92
80
86
137
134
130
87
122
69
99
54
125
88
132
67
134
87
80
69
131
148
111
87
118
120
123
133
76
96
134
117
80
115
130
129
107
76
80
88
111
69
113
197
136
99
107
76
94
126
125
90
91
80
112
54
85
80
67
159
99
144
104
91
102
69
136
69
71
154
95
134
130
155
153
90
118
119
123
154
79
131
66
113
69
175
109
119
88
122
109
117
78
80
175
106
88
97
52
124
97
119
78
106
121
120
128
93
96
111
175
174
94
89
102
78
154
156
136
98
94
80
113
115
91
145
96
90
88
110
87
144
80
151
134
80
72
123
69
119
72
69
114
109
115
96
117
157
122
87
125
151
89
87
107
106
119
121
99
124
74
106
106
83
94
119
74
164
93
96
126
87
123
69
80
94
127
106
54
120
126
104
76
87
99
87
75
112
94
88
88
89
92
101
69
105
129
69
87
101
87
117
163
74
119
122
140
128
87
89
87
201
140
96
150
146
76
103
92
99
76
97
119
101
87
175
115
113
103
120
109
175
88
143
154
94
152
80
120
112
113
113
68
80
137
107
175
98
107
74
76
98
92
56
117
76
99
93
147
107
128
104
131
96
81
69
117
119
92
88
118
69
110
110
92
110
109
99
80
133
80
131
134
101
120
132
69
87
134
149
142
110
80
80
120
78
94
76
66
77
89
96
119
69
76
140
136
115
80
88
154
80
109
91
104
91
112
110
117
69
99
131
76
156
117
80
69
137
88
137
54
94
99
87
104
93
96
107
137
87
155
101
87
86
119
149
72
96
107
80
101
80
138
80
87
80
102
115
119
80
80
78
96
144
80
69
117
80
134
119
91
104
145
109
197
72
114
183
100
119
112
156
80
101
80
197
140
93
87
74
78
107
90
56
80
134
151
107
96
80
144
69
76
98
127
151
106
76
134
111
85
52
94
68
95
104
69
89
145
107
76
80
80
134
72
116
72
120
133
119
93
127
128
88
69
91
80
106
94
147
110
87
127
76
88
98
93
102
85
78
97
121
76
78
174
116
137
69
99
80
99
99
185
183
121
126
114
96
85
88
145
106
112
107
148
139
69
99
147
144
120
127
136
69
76
99
197
145
88
89
102
118
94
151
87
99
76
109
119
119
69
72
94
76
69
103
80
117
80
107
94
78
120
79
69
76
118
106
120
102
120
120
119
154
78
116
80
99
104
166
134
136
90
98
99
69
98
110
76
201
114
80
110
85
66
128
96
113
131
87
56
117
91
94
117
114
136
126
88
136
120
107
112
106
87
128
109
147
106
115
89
75
150
98
99
69
100
129
123
110
95
69
156
80
116
81
109
78
69
117
99
80
129
87
58
117
151
112
117
106
142
107
107
169
87
93
117
175
111
107
80
131
175
119
95
76
99
78
80
127
104
110
110
151
113
101
109
126
151
95
76
93
75
80
144
69
87
127
80
94
87
80
109
121
78
113
120
132
89
94
58
164
94
80
80
197
123
144
69
80
107
134
126
99
120
143
165
90
164
80
115
88
152
80
88
101
137
112
94
107
120
72
109
110
106
80
88
134
100
120
94
54
131
80
112
140
99
175
135
87
69
69
91
96
117
89
133
87
117
137
69
80
99
123
117
117
115
80
104
110
137
102
137
107
107
175
118
175
89
128
151
155
111
137
88
88
80
80
92
69
76
87
201
143
120
107
132
146
69
74
76
99
97
154
120
129
89
78
87
125
88
113
80
76
107
102
80
95
117
106
106
134
121
91
88
69
76
138
103
133
151
80
107
134
87
78
93
106
163
110
63
69
74
116
79
83
83
69
76
102
87
128
113
69
169
143
111
87
89
118
76
128
113
128
136
87
146
197
163
131
197
107
76
88
102
113
104
69
80
87
134
136
131
94
163
130
104
185
80
107
128
143
98
123
87
69
165
87
88
149
80
132
87
146
95
154
124
96
89
74
113
115
120
82
85
69
110
103
140
160
103
69
120
106
154
80
121
88
69
80
110
87
129
87
109
80
80
131
69
109
80
147
120
181
154
117
69
107
69
85
69
102
154
69
121
80
80
80
78
106
76
119
83
76
128
82
96
80
59
78
131
78
100
146
112
134
151
134
117
103
113
104
80
118
156
87
117
97
112
80
119
146
113
80
87
166
151
96
99
99
54
113
75
151
120
165
148
80
93
69
134
76
156
136
151
136
170
197
145
110
126
101
114
199
157
80
69
140
110
88
112
87
134
132
87
127
96
95
99
154
98
122
69
76
128
107
69
121
145
80
100
174
110
121
99
118
107
137
116
52
88
87
89
87
91
93
84
80
103
106
76
95
102
134
74
72
89
88
72
147
80
136
93
149
99
113
137
80
145
127
113
80
151
138
155
136
111
136
120
154
74
175
109
78
135
80
96
89
85
72
147
76
119
129
56
106
78
156
79
181
76
91
69
109
112
110
56
156
126
96
154
123
175
136
96
94
120
110
69
118
154
121
80
91
72
76
118
78
165
87
80
154
140
88
107
57
69
80
80
152
126
122
119
132
91
87
58
69
88
109
168
106
89
69
119
72
197
87
80
74
106
100
154
80
137
147
69
183
80
91
111
69
90
80
96
87
127
78
87
54
106
78
99
80
104
163
54
69
151
74
157
101
132
141
72
109
199
113
163
109
74
161
99
153
91
111
103
112
117
96
157
94
128
128
64
137
83
118
107
87
96
78
78
126
136
122
80
121
78
88
109
117
93
52
96
69
154
69
127
87
133
94
121
87
69
80
95
143
89
138
89
87
72
72
195
98
104
115
87
119
110
134
84
109
80
95
106
74
136
107
72
88
80
151
89
121
69
99
144
69
87
74
131
82
86
69
155
80
133
72
76
119
80
145
78
116
129
120
78
185
119
110
156
80
154
121
134
122
90
72
69
124
112
101
175
127
111
121
120
113
88
134
87
110
94
119
122
120
161
69
80
78
151
80
119
89
100
99
154
124
109
106
78
107
78
140
78
78
69
83
80
85
69
123
181
78
117
156
110
133
108
87
156
132
72
126
101
156
89
72
128
90
99
127
89
85
175
88
69
115
54
136
64
111
80
110
88
151
99
76
131
91
80
115
143
137
87
99
175
120
80
69
166
151
124
129
88
80
78
112
99
131
69
102
197
125
79
95
69
183
151
127
89
145
136
109
89
69
87
199
90
175
114
106
130
157
120
154
52
90
76
106
75
107
123
109
71
69
112
175
145
119
160
137
88
106
142
146
99
119
120
121
183
113
54
87
152
87
96
120
106
113
87
93
80
115
137
120
80
110
175
94
132
117
88
134
110
119
80
80
54
145
130
104
85
156
136
119
80
99
87
136
109
185
93
99
112
101
88
99
69
115
115
112
119
114
87
96
72
109
143
102
88
146
134
69
78
76
120
104
87
112
78
99
113
80
100
78
64
127
155
113
156
130
80
80
76
87
120
111
69
109
78
119
69
80
119
136
80
122
93
127
110
69
89
113
177
113
117
121
72
118
155
80
80
119
80
87
119
112
110
99
120
92
80
127
106
121
69
69
120
96
78
118
109
87
128
117
115
96
93
121
156
76
134
128
156
120
117
94
117
112
94
88
115
77
80
79
80
52
78
96
111
80
118
88
74
70
120
110
110
128
104
116
150
151
72
136
109
87
96
95
115
80
80
107
80
69
91
76
99
94
128
96
140
197
175
119
118
155
87
80
113
119
185
102
95
119
140
98
117
119
119
122
110
152
69
124
175
136
87
69
69
80
154
69
134
119
107
175
54
128
80
91
101
128
87
125
120
107
69
107
80
114
110
113
146
119
52
69
83
91
94
119
142
137
100
96
91
111
76
69
106
69
79
114
100
69
117
69
131
156
80
102
119
119
109
87
105
119
142
87
80
85
87
126
79
145
136
143
156
69
95
118
76
83
119
80
115
122
175
80
69
87
80
126
96
89
101
78
100
134
88
153
78
113
78
109
78
125
120
101
87
74
120
136
103
113
92
119
89
98
146
175
127
99
124
102
137
118
104
155
87
114
113
100
106
120
112
127
128
94
97
175
128
80
110
99
88
93
148
127
120
131
120
112
80
109
124
83
83
99
151
69
93
117
76
134
121
88
69
147
123
99
116
107
157
69
154
102
115
159
104
99
95
120
76
110
98
95
119
99
146
154
69
107
106
87
119
80
80
154
121
110
102
137
106
92
147
133
87
97
78
69
125
78
110
98
105
69
96
136
72
91
139
113
88
113
131
69
76
117
121
123
69
142
102
151
175
134
154
205
69
175
76
88
76
90
96
76
107
160
106
126
128
72
80
87
87
80
140
69
120
102
87
100
127
113
154
87
89
110
111
117
98
80
113
80
111
71
174
101
69
78
80
142
52
183
69
87
91
80
133
87
74
134
91
113
109
175
119
136
80
87
113
87
121
183
76
78
121
120
78
69
76
69
80
127
134
163
155
54
80
94
112
96
146
128
101
109
56
78
90
106
128
104
109
117
120
79
127
93
148
197
107
88
97
69
140
71
112
175
78
80
115
102
151
75
88
78
76
52
80
84
163
127
80
98
78
129
112
87
93
74
76
80
120
154
99
80
85
87
80
101
121
64
105
78
88
94
113
86
102
119
155
107
87
119
76
80
113
103
128
101
197
69
156
93
69
87
140
128
87
69
78
119
88
99
142
142
156
77
73
119
118
118
64
88
156
155
106
150
66
93
90
151
174
144
117
69
88
81
69
87
96
88
112
115
90
76
78
109
121
154
102
87
106
136
154
85
69
116
103
69
144
80
104
43
154
78
144
118
113
81
69
80
149
67
107
96
43
73
117
131
88
117
134
102
80
80
102
80
69
175
80
104
59
107
89
131
154
76
80
69
107
99
52
199
104
154
96
87
137
109
88
146
112
104
93
127
102
126
80
101
134
120
97
127
175
59
94
89
78
69
131
106
100
151
119
104
103
97
136
69
110
78
117
175
109
126
185
120
88
144
124
107
93
106
80
88
104
121
128
78
121
164
119
98
187
128
96
131
88
69
140
101
91
151
78
122
79
80
96
140
104
80
117
119
88
93
112
80
69
113
72
87
99
76
99
78
96
72
102
76
80
76
69
80
76
87
100
129
156
117
88
97
119
113
80
100
155
107
147
82
149
131
80
80
118
80
52
129
139
136
104
75
122
99
115
134
97
57
107
124
88
80
87
111
87
119
103
119
156
127
69
76
74
98
107
105
147
175
141
154
113
87
140
57
120
99
87
175
119
129
85
121
76
69
131
156
80
111
154
74
88
129
113
113
75
69
99
78
155
93
163
69
107
145
99
89
69
80
80
87
119
96
140
119
106
99
69
88
120
138
69
111
101
91
101
99
72
127
69
109
80
106
69
69
74
116
150
76
103
154
157
128
88
74
128
78
100
136
136
163
109
69
115
78
110
147
156
129
137
115
99
127
124
99
88
78
113
110
69
105
76
71
101
100
69
122
122
160
107
133
80
87
106
88
93
76
105
136
131
133
98
88
102
63
80
80
113
125
131
87
154
134
102
80
119
165
118
94
94
124
134
137
76
80
69
99
80
52
103
121
93
128
106
109
96
99
148
66
107
120
112
69
175
109
74
87
105
112
122
89
120
132
74
113
88
160
87
120
119
107
82
88
120
88
96
43
69
123
78
101
110
126
148
58
80
80
91
72
76
80
124
98
102
163
118
99
122
69
134
80
119
151
69
102
76
72
85
114
160
104
80
123
80
92
67
87
52
56
126
136
111
174
98
121
111
154
143
109
43
119
155
99
113
80
98
134
88
111
138
87
96
114
136
96
136
156
106
154
91
85
113
104
144
113
99
80
104
121
97
112
137
76
122
73
91
107
89
120
94
102
84
164
91
128
74
89
131
126
113
91
160
69
98
121
87
120
131
69
109
140
78
85
107
72
87
106
87
102
134
94
80
124
151
87
151
130
69
162
119
80
99
152
115
69
96
87
80
103
78
109
133
151
59
112
87
90
98
152
78
108
155
72
99
201
68
163
57
129
54
120
70
114
151
98
137
110
155
88
126
72
113
89
87
136
87
117
87
94
119
128
166
94
109
131
60
78
121
124
128
104
119
134
78
67
107
99
75
98
183
131
92
110
115
100
84
120
109
103
144
121
111
85
131
112
143
136
96
87
128
99
94
145
88
91
76
80
109
69
91
128
80
129
99
85
151
96
76
84
111
80
107
93
87
71
119
99
81
163
80
52
80
79
80
78
120
137
80
78
123
87
80
78
117
72
69
197
78
128
54
80
86
91
138
83
103
79
79
107
154
128
81
155
127
94
69
175
89
109
80
78
127
78
123
78
151
80
84
151
131
80
80
111
130
125
94
174
96
80
164
99
119
117
76
101
93
175
109
110
69
109
72
130
75
118
78
112
140
175
89
80
100
94
175
52
120
197
52
197
164
80
107
130
128
80
93
126
69
122
112
95
89
78
69
80
112
80
175
56
115
148
87
155
85
69
106
80
80
52
107
114
110
90
69
148
80
69
175
145
80
114
112
80
89
130
85
118
78
87
88
137
110
69
93
89
109
88
95
118
104
124
78
78
89
43
69
107
132
134
76
150
123
112
52
101
106
131
197
90
136
141
163
150
117
136
175
78
118
104
75
127
136
124
161
140
69
54
69
93
78
128
88
155
131
83
119
175
105
164
118
69
83
113
120
100
136
99
119
128
80
80
128
85
107
119
89
134
146
96
153
87
72
81
102
99
60
104
80
121
128
94
129
87
175
133
80
123
156
132
69
113
72
93
126
80
90
155
115
80
163
123
109
117
69
131
104
104
107
80
111
80
80
119
96
69
96
112
107
80
94
91
134
155
109
133
52
88
136
69
78
89
96
174
94
87
102
185
80
43
87
123
99
181
142
110
104
69
112
99
113
110
87
85
146
100
85
88
66
78
136
80
114
113
104
69
100
87
83
80
87
131
197
154
127
80
155
90
175
76
115
78
99
95
123
124
76
130
131
98
80
120
107
106
119
87
100
91
96
142
107
69
128
119
92
76
87
107
99
140
107
113
87
118
137
80
100
120
69
131
109
88
87
197
78
110
169
107
119
98
87
80
104
69
120
132
109
78
72
69
76
93
104
129
109
107
74
76
102
141
125
132
80
96
106
114
119
109
128
80
78
76
154
119
138
134
185
54
119
129
157
195
109
91
146
156
54
154
93
95
154
94
197
89
88
87
143
139
89
69
154
69
154
80
132
56
100
102
80
91
91
78
109
93
80
110
99
80
87
107
67
54
76
88
80
128
120
83
112
154
123
119
128
104
141
102
92
87
126
155
88
78
78
76
118
141
69
109
78
111
121
197
131
106
58
106
138
111
175
124
110
69
80
94
89
87
129
127
69
109
78
95
69
99
89
94
80
99
80
144
74
133
80
154
90
93
175
106
108
118
150
128
127
69
88
118
109
120
76
150
171
110
87
117
152
151
100
80
114
145
93
131
133
88
113
106
88
87
80
104
74
87
107
69
78
156
134
100
120
69
82
69
99
69
78
69
69
138
127
146
52
78
128
106
113
99
109
102
129
120
94
96
80
104
114
117
58
113
100
113
120
80
106
76
72
114
87
154
151
68
156
100
134
98
87
131
73
96
60
134
133
87
154
69
87
115
76
94
100
131
69
74
175
96
120
119
155
83
104
118
57
114
137
157
87
169
124
104
165
72
175
100
111
133
110
146
175
69
118
87
88
76
115
119
117
126
139
76
80
120
175
136
175
156
123
113
96
111
126
119
111
80
80
76
117
143
80
80
69
107
69
78
80
89
69
163
72
109
64
199
129
128
88
80
69
119
131
143
117
80
76
107
120
120
88
154
120
110
69
113
96
56
113
132
87
109
120
122
113
109
118
107
88
136
115
80
54
155
134
69
76
66
140
88
56
131
87
69
80
175
134
69
131
146
149
119
155
87
67
134
134
88
154
163
104
104
93
125
120
100
78
140
87
145
76
131
127
113
99
140
102
119
119
197
99
89
76
77
108
76
140
80
128
80
119
128
74
83
87
99
85
133
80
99
118
67
94
151
121
118
174
69
175
87
109
76
56
101
93
113
94
175
93
93
130
122
129
80
155
80
76
106
120
120
117
175
110
93
133
156
128
117
121
107
78
114
119
80
71
91
106
119
74
154
87
69
117
87
101
134
59
118
110
69
106
104
80
101
66
142
93
128
79
79
131
116
104
85
134
129
106
163
126
88
95
175
124
151
80
134
145
91
134
127
76
106
69
197
80
78
88
106
144
52
80
87
120
87
163
124
118
101
54
125
78
80
104
130
85
96
80
119
80
118
120
107
112
154
78
96
154
87
102
175
114
99
107
137
74
107
110
87
120
128
145
163
87
112
89
112
56
74
118
121
107
97
104
154
123
94
52
78
89
136
152
112
92
83
88
74
78
116
69
80
104
96
124
132
80
80
125
99
104
80
163
80
117
118
107
112
120
102
110
80
119
126
149
106
107
136
112
123
69
76
80
96
89
127
76
136
78
99
123
89
131
108
78
173
103
157
78
104
78
78
101
132
93
87
154
107
83
87
115
56
60
138
106
78
109
120
175
109
120
54
93
98
101
119
91
93
109
80
80
80
156
175
132
69
151
81
80
78
130
69
93
88
72
104
115
128
121
107
69
107
93
127
91
119
60
79
119
119
128
155
113
66
123
101
85
94
133
93
121
155
154
102
125
80
156
78
116
166
118
86
72
88
98
131
145
80
80
120
76
119
76
128
117
123
87
111
127
98
80
117
56
89
75
197
128
110
85
143
89
80
175
131
99
80
138
87
136
99
96
107
183
155
94
156
54
104
115
107
132
109
83
80
97
80
137
92
95
91
100
80
107
87
138
89
76
80
121
102
104
138
156
107
83
113
114
92
74
69
93
122
129
76
112
54
172
93
131
99
69
80
80
99
165
72
101
74
94
107
139
100
122
103
89
89
88
146
91
102
54
96
80
118
109
197
80
107
80
87
76
88
74
89
74
136
69
75
80
132
125
144
85
87
69
95
94
186
115
76
89
108
138
72
80
106
104
110
115
99
75
93
76
80
119
66
88
141
78
74
80
72
69
99
132
69
111
91
99
121
155
69
69
102
140
74
148
138
82
128
80
120
143
78
125
84
111
127
154
201
117
87
80
87
84
80
104
112
69
99
96
87
128
91
145
131
120
87
92
131
79
101
72
109
109
163
166
120
187
72
80
93
80
104
117
109
164
119
146
175
121
104
96
126
87
119
136
145
120
78
116
87
118
150
78
102
128
117
111
174
151
136
102
128
106
122
136
94
126
80
91
163
78
78
120
69
80
106
163
156
85
95
110
136
80
110
154
93
126
123
76
80
109
130
156
94
80
119
80
76
94
115
113
76
111
98
120
104
78
115
154
87
140
138
146
87
149
128
110
109
80
107
120
117
119
99
144
121
94
197
69
76
87
99
154
89
105
69
94
107
107
69
125
109
88
117
119
89
122
96
72
128
119
163
120
64
120
134
78
74
124
154
97
136
93
112
181
147
94
104
89
76
91
117
69
115
112
175
118
103
131
95
148
85
112
154
183
87
80
87
146
64
94
121
87
185
136
165
63
72
109
80
96
186
120
69
175
164
115
90
100
105
151
93
87
93
141
87
78
163
90
96
122
120
69
80
99
133
76
134
147
138
126
156
125
162
115
80
106
87
113
69
90
117
103
102
178
52
156
99
175
104
110
76
93
152
126
147
137
99
154
152
69
131
131
128
88
110
87
120
80
83
131
175
131
94
88
120
83
134
108
80
104
87
80
122
128
88
152
73
99
122
85
127
78
156
113
123
80
78
125
160
78
87
140
131
78
114
52
128
88
76
79
106
80
80
58
69
119
69
92
80
143
75
156
131
124
80
110
87
106
99
100
107
72
60
99
129
154
116
122
126
119
126
118
132
94
88
99
112
110
112
101
122
128
69
118
91
117
69
133
97
120
98
138
128
88
66
172
99
80
123
110
68
134
160
132
93
155
107
132
72
80
82
118
143
83
113
80
69
107
93
125
80
76
106
69
146
175
78
112
151
78
119
89
87
109
131
80
113
107
69
80
74
80
99
163
132
128
106
69
119
119
156
137
141
107
88
127
88
76
69
140
131
115
119
119
80
78
154
86
112
121
76
96
145
96
128
87
183
138
101
76
114
101
80
185
99
103
78
100
109
98
104
88
80
134
119
102
136
122
111
76
153
115
99
80
197
105
78
78
90
80
119
80
129
102
80
103
96
95
94
104
114
94
88
76
69
69
104
89
174
120
80
120
109
104
155
94
92
81
89
97
117
128
69
87
89
130
76
94
127
107
102
87
89
80
80
99
137
107
120
120
56
134
156
87
145
140
80
107
120
72
94
119
102
69
56
123
131
125
149
106
93
120
132
113
96
88
175
156
114
156
78
56
136
69
72
69
64
132
80
99
159
107
151
99
109
80
69
104
54
88
77
88
80
145
120
154
94
115
118
110
112
69
93
80
156
87
117
190
76
151
112
143
76
94
117
134
80
69
146
78
81
110
151
80
69
69
155
109
118
136
80
89
137
76
131
80
106
110
69
76
78
104
78
69
87
93
140
80
60
110
109
76
84
80
69
104
128
78
91
114
87
106
111
87
123
87
136
76
102
80
99
91
80
110
123
87
69
113
134
134
89
58
154
145
128
69
97
106
76
80
69
89
132
109
119
90
96
69
99
134
89
102
131
110
99
80
140
143
127
119
87
78
74
94
99
139
93
94
129
89
115
43
80
151
80
87
106
136
119
88
131
139
145
129
113
89
136
131
69
99
87
78
136
80
85
154
79
87
76
94
124
143
78
96
124
85
119
107
80
89
111
110
117
127
119
175
78
52
113
199
69
73
107
69
80
136
136
87
163
67
106
54
136
87
112
76
96
107
98
136
54
94
128
112
156
88
112
137
112
74
135
128
132
113
122
126
59
96
93
89
107
78
78
141
128
69
109
96
104
121
88
129
158
90
113
89
59
80
78
52
112
87
175
107
54
143
87
80
131
89
76
89
175
89
109
78
81
107
117
78
148
68
88
102
93
106
106
92
145
94
121
185
120
109
87
124
114
100
119
99
140
76
69
78
130
107
80
197
148
129
131
136
80
175
121
119
131
112
71
120
76
78
104
108
121
107
126
87
175
134
87
99
87
88
83
87
145
109
138
117
107
146
119
88
145
109
85
205
69
80
71
91
80
127
126
99
101
113
156
83
80
100
95
109
94
155
92
156
114
183
183
113
128
78
136
106
96
183
139
119
109
85
69
138
131
88
69
119
131
69
88
109
74
76
101
89
95
64
128
134
120
76
136
196
151
99
69
130
159
128
175
112
112
121
119
117
117
56
69
88
69
175
134
87
74
121
87
58
133
151
81
119
56
85
159
80
109
123
80
120
80
64
91
118
104
143
54
82
114
80
94
120
104
80
146
69
93
107
127
107
76
104
88
155
91
96
80
80
69
99
87
96
90
175
110
64
98
89
69
69
138
96
197
91
80
155
56
112
110
89
79
72
154
110
80
123
83
120
80
80
114
156
112
115
134
90
166
155
76
72
102
128
136
120
72
80
145
87
119
120
108
69
79
106
89
104
69
80
64
69
96
129
69
80
128
175
126
106
99
107
102
94
145
76
110
154
103
134
143
88
126
157
102
104
101
76
69
106
96
117
128
148
80
99
110
88
143
118
118
104
128
119
78
129
119
107
94
80
109
112
120
107
80
133
136
80
57
113
78
91
96
121
138
80
80
72
112
174
54
90
93
43
101
156
89
109
127
80
104
131
148
110
109
119
89
144
146
97
134
114
128
67
66
120
87
113
164
121
134
80
69
103
124
148
130
80
122
134
112
94
106
146
119
130
87
112
174
155
87
95
88
110
175
76
110
140
80
154
142
107
126
155
106
94
128
89
118
112
116
113
101
127
108
132
69
111
107
80
143
69
93
175
87
114
89
113
144
83
104
123
87
126
134
121
107
131
150
78
174
98
96
80
151
126
120
154
113
99
136
66
113
120
80
140
155
89
68
76
120
76
146
94
76
121
119
120
87
154
80
163
94
78
89
145
119
76
52
58
102
126
75
94
127
106
136
88
154
119
54
74
120
96
89
91
88
141
87
87
117
69
109
107
91
117
52
76
145
100
113
73
119
102
113
131
96
94
75
69
89
88
111
128
104
119
148
128
112
69
175
85
140
89
115
120
144
87
80
66
78
78
80
119
163
69
83
154
115
88
129
125
106
149
52
119
96
151
143
137
80
80
177
99
107
120
115
102
175
125
124
91
69
127
156
91
76
140
155
101
137
76
107
147
145
126
83
134
88
72
131
106
80
94
106
94
77
118
87
69
67
99
110
166
120
145
132
126
107
110
133
80
120
117
127
134
85
111
104
132
106
99
69
137
106
113
91
91
111
89
69
77
124
101
103
69
126
145
78
81
104
127
121
71
143
101
69
99
69
89
88
134
142
143
69
104
102
88
107
100
120
89
76
136
113
99
120
112
119
101
106
114
154
69
142
72
80
120
89
128
92
87
97
91
94
96
89
87
112
112
153
88
52
99
52
157
82
94
87
76
57
197
80
109
64
117
89
163
106
100
72
145
69
95
80
120
104
135
106
93
54
73
91
80
78
110
140
136
78
123
134
80
154
139
93
89
99
93
72
78
136
175
52
147
120
80
112
155
69
122
76
80
126
89
145
134
78
109
121
113
101
78
115
156
101
93
131
67
156
94
146
120
69
98
107
107
80
136
118
109
128
78
69
131
121
76
87
84
118
87
76
123
74
119
134
151
78
119
87
154
76
88
95
69
106
66
176
114
112
140
132
109
124
156
106
78
69
131
104
117
116
102
169
87
113
78
131
113
136
76
119
123
113
154
88
80
127
80
76
80
80
109
87
156
117
121
87
71
134
78
87
72
119
109
119
94
129
83
108
64
80
128
140
80
102
154
109
117
88
121
74
137
128
131
76
93
126
117
151
93
80
80
107
129
174
119
69
80
120
102
88
93
89
114
115
78
175
87
85
100
117
80
69
115
76
78
99
133
110
60
135
102
118
69
116
117
116
107
94
69
123
80
120
148
175
107
101
145
78
69
113
197
111
76
76
136
106
145
159
99
87
104
101
80
83
201
119
93
80
122
117
80
154
130
102
107
80
80
60
69
129
94
107
80
107
154
104
102
115
87
107
148
197
69
122
69
111
76
85
101
127
80
134
104
110
131
101
76
80
126
144
84
107
101
69
106
103
80
96
87
80
151
59
137
113
137
181
69
99
141
110
121
66
69
91
74
119
111
76
69
128
106
154
74
175
128
80
69
143
121
100
87
111
103
115
69
134
120
155
102
91
130
116
120
112
87
80
107
69
128
104
64
80
68
79
163
160
87
164
111
107
104
126
115
154
109
116
119
84
89
110
121
126
99
136
91
127
107
128
106
69
175
105
88
87
176
163
154
131
85
164
78
69
81
119
101
69
107
128
113
91
69
83
80
85
89
112
88
164
156
119
154
106
140
88
56
152
99
175
115
101
87
74
87
175
154
162
148
140
136
87
175
94
87
149
80
146
156
114
57
93
90
80
155
87
80
69
134
76
69
59
164
121
120
118
110
78
134
92
120
69
80
80
107
156
131
80
93
54
110
77
104
146
134
101
94
57
134
120
113
112
164
76
175
126
69
94
69
147
139
139
76
99
156
102
128
109
109
106
69
146
118
104
76
90
118
87
90
102
148
117
69
143
99
152
128
79
120
184
121
112
80
129
107
66
123
119
145
91
119
155
76
148
110
113
128
80
78
78
124
76
74
69
111
80
156
131
109
139
105
96
76
136
80
106
80
134
175
80
120
102
80
197
80
88
80
136
112
175
128
80
146
113
80
148
69
119
156
76
83
78
54
69
94
104
131
102
102
154
128
72
96
87
115
78
52
115
88
136
143
136
121
69
60
80
87
94
76
100
78
110
69
99
80
83
78
119
115
109
69
86
89
96
91
76
69
143
94
114
76
106
113
154
131
129
87
110
79
78
80
154
106
85
145
96
111
69
78
119
83
162
80
117
137
76
124
126
123
78
119
106
114
128
54
89
69
106
137
118
80
110
107
69
156
98
69
110
147
140
129
119
112
119
80
128
110
130
76
137
120
89
183
152
126
78
87
136
107
106
123
155
132
133
69
145
99
107
120
58
119
80
131
131
134
80
110
155
76
127
121
93
118
78
142
88
114
78
102
115
132
72
78
80
107
72
94
72
78
140
80
121
110
113
98
88
174
80
106
101
120
82
80
99
102
117
117
80
94
152
109
87
87
175
112
108
118
128
80
119
80
174
134
87
116
119
109
80
119
99
120
78
156
89
128
69
106
113
69
117
99
80
197
104
78
93
117
109
175
87
103
69
119
122
76
103
76
87
140
80
96
76
116
137
140
91
107
80
175
174
120
78
111
145
85
91
111
118
111
89
123
154
78
89
88
120
136
136
99
72
80
89
100
78
80
120
110
120
75
145
91
100
122
106
187
119
125
96
100
137
79
107
131
113
111
140
109
120
104
113
155
120
122
69
106
69
154
133
111
80
74
76
117
130
118
117
150
104
87
100
78
130
87
96
99
102
175
88
120
78
100
136
107
164
109
120
117
80
76
112
197
123
137
142
120
76
80
134
126
99
156
69
69
69
122
56
94
107
69
104
143
128
72
80
134
76
69
80
128
122
148
69
90
123
89
80
103
107
145
120
133
93
143
121
69
92
89
113
99
83
143
103
103
175
110
122
145
131
80
59
76
129
119
134
146
175
69
91
175
85
143
127
120
140
76
88
120
123
104
136
119
154
102
80
78
123
119
134
155
175
80
52
83
69
111
115
96
101
121
121
144
107
80
93
80
69
112
110
89
89
101
88
209
88
87
109
152
85
124
155
128
64
143
99
80
99
78
69
127
107
87
99
104
54
109
147
110
99
131
163
72
69
118
118
132
99
107
109
69
128
144
89
147
134
111
93
88
87
83
124
145
80
104
127
104
151
101
118
197
107
87
73
96
102
87
133
113
129
127
107
125
111
80
78
106
91
107
109
126
199
89
72
85
128
85
72
151
130
106
118
93
94
110
145
136
154
76
69
109
72
89
80
76
133
106
80
128
119
102
134
120
175
66
175
80
98
98
197
66
88
87
92
197
107
128
131
175
120
113
87
76
54
97
87
131
163
111
136
106
91
69
73
76
76
111
110
164
120
106
132
124
104
78
93
74
86
103
112
80
127
121
109
107
112
129
126
80
88
76
93
129
109
76
93
126
78
145
87
88
143
113
96
115
128
107
120
89
175
114
95
101
123
172
69
72
69
164
121
109
80
87
89
79
128
155
69
145
80
148
88
120
114
113
175
127
76
73
107
93
87
69
175
117
129
80
117
80
88
64
120
104
126
128
119
93
120
101
91
76
162
145
80
69
89
69
120
136
175
110
140
109
90
118
152
99
126
118
52
155
154
103
80
80
76
131
136
172
111
113
121
76
80
94
78
54
144
106
109
113
113
100
128
120
86
111
107
117
52
96
78
78
119
80
114
78
133
154
133
143
121
76
82
107
129
117
99
76
134
119
87
104
78
121
98
112
117
87
100
106
80
76
66
145
197
80
80
130
201
143
134
114
153
137
120
197
72
146
102
96
68
88
91
175
134
104
88
148
131
119
93
107
93
54
119
120
93
110
115
150
136
80
110
128
197
94
107
78
80
145
69
80
145
69
106
80
101
56
103
89
80
80
115
80
117
100
117
156
80
107
117
76
175
90
87
89
75
109
87
138
80
109
136
106
116
156
132
132
120
101
119
76
81
69
69
154
107
120
106
89
118
136
72
76
109
175
96
96
140
113
156
69
105
85
89
80
69
178
109
99
64
140
106
91
211
80
80
75
134
121
134
103
88
69
156
69
94
119
181
99
175
80
94
119
136
109
107
80
76
148
109
80
74
100
106
110
131
74
88
118
80
147
63
197
119
76
76
69
128
56
154
164
118
119
86
109
80
74
136
106
115
80
154
121
118
160
52
119
163
84
114
122
121
118
80
101
120
80
175
151
74
154
137
102
129
131
119
95
78
80
80
130
76
89
126
156
78
131
87
128
113
104
138
69
136
104
76
99
146
148
120
111
126
144
127
95
110
87
71
129
118
76
143
107
80
119
91
121
119
108
119
146
99
83
89
107
111
109
164
90
78
58
140
104
88
91
80
128
80
74
158
113
104
101
107
74
120
102
69
100
120
112
121
96
80
154
76
80
155
156
69
88
90
80
54
117
89
130
96
104
175
118
124
128
120
89
164
78
88
113
87
119
154
159
134
96
119
154
89
109
120
110
175
130
76
113
98
69
117
94
117
125
119
136
193
155
98
113
114
89
130
99
102
78
120
82
106
100
52
123
120
128
139
126
177
154
87
127
129
101
89
80
109
94
93
83
88
118
132
82
149
122
121
88
185
107
80
133
95
140
101
120
146
80
91
145
107
96
134
107
102
100
117
99
130
101
119
80
154
150
121
69
129
85
69
90
117
80
145
69
94
96
78
109
174
110
119
89
112
101
131
63
93
134
93
90
123
120
128
163
197
113
154
134
111
116
115
175
74
78
80
62
87
80
69
134
131
80
117
80
128
88
158
119
128
94
102
140
107
106
110
69
76
87
78
80
83
129
69
69
78
109
69
126
137
107
96
107
139
69
127
143
107
109
111
93
140
141
87
93
87
80
155
133
99
115
159
110
96
120
132
74
93
69
94
136
164
119
107
135
89
85
131
146
145
109
103
80
131
107
117
127
183
69
133
69
59
109
145
80
112
109
131
104
88
88
93
77
69
97
114
147
110
120
126
148
104
78
78
140
82
94
131
78
94
92
72
98
102
118
142
149
117
125
69
156
96
90
104
134
118
128
123
80
197
120
128
110
119
122
117
113
154
119
140
78
90
138
148
113
74
118
128
69
79
89
134
112
152
69
129
94
155
89
113
121
118
64
52
175
54
93
94
132
146
175
111
92
117
80
175
197
107
91
89
119
69
94
140
175
93
94
131
132
118
139
121
98
88
107
87
120
107
148
112
90
143
130
123
133
128
113
101
154
88
106
149
81
80
169
89
144
105
92
54
120
107
169
99
69
89
76
89
106
76
175
121
134
142
80
127
99
117
69
69
184
104
104
81
80
80
76
149
69
103
109
85
134
121
154
127
111
175
121
147
151
113
80
69
112
156
163
128
120
74
121
89
101
110
80
102
185
88
91
103
114
88
83
87
183
104
134
87
114
88
94
113
152
109
88
145
137
107
89
80
99
96
80
69
93
143
87
101
90
77
79
143
109
80
134
78
128
120
113
147
74
118
80
140
111
154
109
137
80
101
154
140
69
183
66
114
154
115
138
115
109
138
93
117
148
80
134
113
80
155
114
80
129
103
117
94
142
76
75
136
131
111
107
91
93
78
128
128
73
123
103
69
64
128
156
108
87
87
88
197
69
134
111
81
126
107
70
175
78
89
98
80
104
154
131
93
96
107
87
80
137
119
102
132
78
87
87
80
85
59
103
94
156
83
133
69
120
121
78
120
104
79
111
69
121
80
88
78
164
113
87
110
149
76
104
199
127
78
76
132
102
160
80
96
87
78
104
76
110
80
120
94
98
78
112
78
143
90
69
80
80
197
121
140
69
80
89
102
110
142
131
151
80
148
104
107
119
80
175
137
164
123
94
67
80
116
175
120
78
43
82
85
121
80
80
127
82
169
131
124
95
121
76
100
78
80
95
187
91
121
104
87
145
175
113
98
69
95
80
125
90
99
91
169
104
78
159
106
122
109
175
107
120
119
112
93
106
80
69
80
98
102
112
154
110
80
153
69
110
74
69
69
127
115
69
89
87
143
137
93
100
197
94
104
76
119
94
141
137
132
83
183
145
67
102
132
120
80
156
120
117
140
80
66
117
162
146
56
54
103
119
76
140
78
80
76
95
74
141
109
137
93
89
122
146
80
80
72
194
119
128
128
93
117
130
116
129
147
69
111
144
83
69
69
119
106
96
85
107
119
132
80
107
104
123
131
155
80
83
80
101
119
88
156
155
78
109
96
128
81
78
74
175
76
74
109
99
87
69
69
132
58
131
146
106
89
69
146
101
78
85
175
93
78
80
93
148
107
70
80
197
94
120
89
80
80
121
76
137
72
89
134
78
113
89
88
99
122
92
126
96
106
78
91
145
100
80
130
115
93
69
119
113
69
154
88
76
69
148
117
138
80
52
54
148
76
80
147
109
78
110
154
89
143
109
109
80
136
79
120
136
155
80
74
140
175
91
87
144
114
80
98
59
103
133
54
78
119
76
136
69
156
120
137
130
118
134
120
83
87
69
118
85
119
72
88
69
136
185
88
88
149
156
146
144
80
175
115
113
88
124
78
104
121
69
90
111
78
69
128
69
120
69
134
76
139
94
110
138
109
92
175
82
124
154
134
80
69
80
117
126
119
94
94
114
109
93
76
93
69
80
133
59
136
154
175
152
114
69
111
107
109
121
129
143
138
87
101
176
122
154
132
99
159
155
108
117
181
69
129
146
175
69
100
80
87
78
94
96
119
126
118
74
101
67
101
112
59
106
120
104
113
120
101
78
114
89
110
149
82
80
91
129
75
76
151
89
106
121
87
154
87
156
101
137
75
80
163
119
95
106
129
69
94
102
199
125
134
89
117
120
76
78
117
80
87
137
142
63
89
129
109
153
107
117
104
155
110
134
119
130
78
113
94
164
99
79
68
145
87
69
197
96
80
101
88
76
148
82
80
80
153
120
108
103
145
84
112
174
54
80
72
109
80
106
109
104
76
175
127
137
99
114
131
101
87
99
74
143
93
100
120
109
85
154
121
118
114
119
99
100
69
88
78
107
155
87
119
109
92
143
112
119
89
128
101
102
63
128
119
88
107
85
94
156
120
128
134
128
132
99
88
113
78
154
134
104
108
78
121
134
87
153
143
89
94
69
57
127
98
143
136
197
117
104
80
89
132
107
106
117
175
85
95
80
112
69
110
88
69
149
175
115
78
150
147
69
111
102
81
107
90
112
137
73
145
80
128
119
88
76
78
110
127
89
106
118
93
109
91
91
175
147
69
118
144
76
96
115
117
94
127
69
88
127
112
145
76
101
91
72
126
79
80
69
120
94
106
69
87
88
66
90
150
150
72
52
74
87
79
74
80
76
88
146
127
163
119
107
111
121
111
88
90
93
119
120
80
118
80
115
69
85
80
78
96
138
120
89
80
115
140
125
154
78
88
155
94
80
80
69
140
87
88
89
151
80
132
89
87
76
87
207
175
94
131
69
109
126
103
147
90
107
112
116
100
115
54
131
67
80
85
151
102
112
128
78
181
76
101
69
102
122
99
88
145
88
109
80
128
107
90
78
133
97
151
174
106
197
80
80
94
80
133
80
81
80
154
106
128
181
107
126
112
175
106
80
106
104
197
107
69
75
92
155
119
140
119
110
69
197
89
114
120
88
98
78
140
89
107
52
117
74
85
99
107
76
99
87
201
96
80
154
99
72
175
117
142
69
109
130
109
109
95
87
113
169
99
119
172
87
155
110
78
164
140
87
72
87
131
120
140
94
101
133
127
129
85
80
118
91
94
76
113
91
78
175
87
131
122
90
106
136
80
93
114
111
91
72
140
138
154
88
120
121
120
69
146
89
107
94
142
132
69
127
87
109
95
115
127
76
112
101
134
136
87
111
106
75
83
103
87
89
125
52
121
120
151
104
119
119
131
134
163
156
89
69
109
99
155
80
120
101
102
87
66
90
129
136
151
66
112
109
80
109
154
120
121
76
91
107
119
69
104
131
115
175
107
87
120
154
69
130
52
56
137
175
72
143
80
120
80
91
90
94
155
99
120
127
132
76
89
82
137
100
99
110
104
64
113
154
80
140
107
127
117
125
129
101
102
174
104
109
107
123
114
69
151
88
96
113
80
88
69
81
113
117
99
113
91
197
138
103
188
110
69
80
52
175
125
94
78
119
146
164
76
106
110
122
137
140
126
123
110
87
80
121
103
99
104
121
80
89
121
69
142
117
93
99
114
99
121
88
143
109
175
69
72
128
80
80
137
90
145
80
129
111
144
87
156
69
151
110
136
162
91
114
145
123
134
118
78
120
99
117
109
107
109
87
91
82
107
89
174
154
76
112
56
83
133
95
78
88
69
72
175
111
66
80
131
102
87
103
120
107
143
85
93
91
140
102
154
117
107
120
133
105
116
117
93
140
78
54
94
175
128
119
164
69
120
118
106
149
80
69
94
80
124
72
91
119
143
120
87
125
74
80
134
88
110
80
94
119
101
74
113
114
80
119
92
128
67
87
93
119
154
80
80
154
72
74
112
107
100
78
69
154
69
123
80
117
151
69
138
120
121
102
103
103
113
150
117
143
80
155
149
89
174
93
147
69
144
85
130
123
175
106
98
136
56
107
109
95
89
110
90
80
113
72
154
112
80
80
76
175
109
131
130
155
109
119
69
134
100
76
69
132
98
98
118
88
99
82
83
80
101
154
138
78
134
99
120
118
69
120
80
67
72
76
87
75
148
123
87
126
69
95
113
117
151
107
97
78
120
152
85
106
151
80
146
80
124
119
78
107
80
100
69
134
131
96
69
136
80
134
97
93
169
197
107
72
140
119
107
56
110
78
119
69
140
111
136
89
134
108
146
80
107
80
124
69
92
167
83
127
93
142
121
80
137
90
151
132
88
118
133
142
69
138
119
112
113
88
201
110
140
151
72
87
114
183
109
90
137
75
72
102
98
121
88
110
94
88
80
80
80
80
120
113
119
94
120
96
128
120
69
164
133
69
69
119
109
144
80
175
133
69
88
80
83
90
107
175
78
54
144
106
67
80
102
100
151
151
175
148
80
99
175
129
117
80
87
102
151
87
175
78
146
78
106
78
95
104
117
119
87
121
120
76
99
175
80
87
76
78
78
104
78
145
109
136
78
87
123
120
120
87
109
80
69
119
128
72
129
164
183
93
69
74
87
80
88
129
103
140
128
72
107
100
80
197
119
146
76
151
69
157
101
106
129
113
78
130
78
69
80
136
80
80
91
99
112
69
95
114
80
166
69
100
80
151
88
78
104
88
90
134
128
80
115
52
154
107
175
131
124
165
80
118
76
56
69
91
94
80
99
106
134
80
111
128
67
91
95
78
175
128
125
139
85
108
88
80
154
129
114
89
120
115
128
116
100
91
140
90
101
101
78
197
93
79
128
72
88
101
103
96
111
78
76
88
156
139
119
164
153
107
89
134
175
154
104
52
154
115
69
69
78
151
88
89
106
94
104
85
107
89
88
109
71
119
131
101
127
99
144
122
107
80
136
109
134
69
87
87
94
123
103
120
131
131
78
80
87
141
66
120
143
114
134
80
146
154
89
54
113
106
87
146
69
122
133
80
175
137
94
129
114
87
134
87
160
99
119
121
59
110
56
80
80
131
107
112
69
80
75
110
156
80
120
144
69
100
96
87
75
99
69
82
148
119
69
175
104
80
85
146
128
80
175
152
119
82
87
131
78
111
155
132
114
133
107
104
154
131
94
119
120
102
107
128
85
136
88
80
122
107
109
87
93
119
109
156
54
112
69
87
131
52
80
144
112
87
80
110
76
129
117
122
80
88
145
91
159
155
131
88
96
88
148
104
89
140
80
113
72
175
87
111
155
69
88
76
125
94
76
129
119
69
96
80
76
80
78
137
87
81
107
111
87
69
129
72
89
90
78
80
99
154
114
80
87
127
102
119
155
69
172
87
136
76
87
91
183
121
79
151
109
131
80
112
107
109
117
106
123
83
80
93
87
134
108
121
99
117
113
56
78
131
119
71
99
90
113
90
80
109
80
87
80
126
120
120
80
130
69
100
132
131
123
69
99
88
78
69
94
104
98
80
82
136
112
104
89
113
138
77
107
83
99
80
154
153
156
121
52
120
76
71
175
76
80
76
80
80
87
96
89
82
90
122
74
76
134
134
126
80
131
119
87
76
94
109
131
87
90
154
89
119
69
94
128
80
152
112
151
117
125
72
91
130
69
110
140
99
87
145
54
169
90
52
143
111
117
163
76
78
72
89
119
117
76
110
134
159
80
80
69
106
155
108
148
88
113
131
69
151
107
151
94
106
56
104
78
76
107
102
98
69
114
128
128
94
89
122
67
113
72
163
88
80
69
91
101
123
69
54
120
95
175
126
127
109
87
140
80
123
87
89
118
123
56
88
87
52
82
138
56
128
80
97
124
95
104
92
74
145
150
146
128
72
78
94
85
197
80
104
146
78
69
114
109
96
78
197
119
136
107
154
76
62
137
175
101
107
99
124
79
94
100
99
80
93
150
80
120
87
87
124
87
80
118
134
148
87
82
87
94
145
80
78
69
52
103
80
151
154
96
89
103
69
128
93
87
80
119
112
87
97
143
119
93
74
113
80
131
88
131
69
106
117
80
113
127
87
76
175
134
117
94
131
129
118
96
91
118
69
88
120
69
58
109
87
104
69
109
126
140
143
115
145
154
87
133
111
80
74
110
151
88
89
76
80
107
175
94
119
72
43
90
109
111
121
87
88
133
80
121
104
87
80
80
115
110
127
124
69
112
128
119
56
159
80
131
80
88
120
197
147
151
123
103
119
93
87
122
80
89
93
119
100
72
99
105
123
107
94
72
80
181
91
76
145
78
136
110
69
87
80
131
69
89
201
164
104
87
59
66
88
112
89
81
99
91
128
126
80
79
169
117
137
99
136
54
57
175
108
119
134
93
91
90
157
110
99
110
155
88
80
134
88
128
76
69
78
80
66
91
100
76
82
122
88
80
80
76
136
144
136
89
69
76
122
80
144
122
106
197
78
124
80
80
90
108
95
80
128
78
97
106
115
118
72
94
156
69
94
175
150
66
117
87
76
76
69
87
87
147
154
154
157
85
87
132
109
116
120
107
105
80
80
120
154
175
106
99
156
89
106
87
87
69
122
87
131
69
156
94
100
117
78
126
87
106
99
175
132
106
128
126
80
69
76
95
107
112
130
94
78
90
124
98
112
101
104
80
121
131
112
52
122
112
92
120
94
197
143
166
88
149
76
134
140
146
155
106
100
80
69
117
81
80
122
69
101
136
91
128
87
69
113
107
143
129
78
125
93
96
175
109
154
76
80
119
94
67
107
80
80
175
145
140
76
117
87
123
128
80
72
69
121
97
157
69
106
104
43
83
109
69
107
119
96
154
80
128
135
76
104
54
163
131
106
80
106
80
80
137
112
154
128
89
107
104
80
80
91
175
102
69
131
160
87
119
80
150
78
76
80
114
99
126
133
69
89
80
138
128
118
80
91
145
98
121
90
140
93
164
104
76
126
112
121
110
128
120
145
101
119
118
136
104
104
163
87
80
99
131
134
125
87
80
69
128
87
78
96
87
54
99
80
78
102
112
76
127
74
139
119
108
148
149
201
109
175
89
139
78
81
87
75
116
89
80
121
68
109
94
131
87
101
132
89
156
98
87
79
137
137
80
139
83
131
91
78
151
78
90
101
112
80
119
106
102
80
156
85
160
82
119
109
98
89
110
80
145
107
76
69
66
87
83
69
80
69
78
134
74
152
119
104
94
87
149
144
129
87
69
76
124
110
79
137
175
107
80
94
80
113
127
80
123
56
87
155
69
140
72
134
113
86
99
113
78
154
60
119
81
107
96
127
119
99
80
159
103
109
89
140
109
90
153
69
88
117
142
63
76
159
140
138
69
83
119
69
88
59
134
80
128
102
156
148
100
110
95
105
80
100
80
81
88
78
187
92
93
72
80
94
99
67
175
134
150
87
107
128
83
145
106
119
91
94
111
52
89
159
69
119
96
79
87
156
78
121
80
115
136
150
144
85
72
54
90
79
99
99
154
120
103
109
128
134
100
104
147
119
78
109
80
134
119
99
155
102
72
80
107
109
115
152
108
56
134
98
136
98
78
69
107
120
88
96
107
69
107
76
107
104
131
87
151
145
109
80
118
120
80
91
88
164
130
134
160
94
78
111
80
119
83
143
118
64
126
80
98
175
131
104
131
140
121
80
88
56
101
69
148
78
119
88
91
69
119
103
112
156
131
125
121
100
110
80
119
95
134
80
106
99
109
107
115
97
175
94
154
104
87
69
43
119
91
155
90
101
163
144
110
134
88
128
76
129
116
69
96
90
80
113
127
76
123
78
109
76
99
86
87
131
78
117
102
80
114
114
99
117
197
85
140
89
87
175
72
120
119
109
66
100
89
108
102
104
89
99
87
106
69
131
154
117
126
92
154
88
120
80
135
89
90
140
146
78
89
140
119
80
174
89
126
88
91
63
76
123
95
129
104
141
129
64
76
94
72
122
110
122
156
79
120
154
106
69
121
117
72
69
69
54
141
78
183
127
109
142
80
107
80
96
144
56
89
104
80
89
113
78
117
69
88
120
111
107
69
80
78
115
151
74
153
163
54
102
72
90
103
109
122
107
143
132
120
121
100
87
119
104
89
80
113
43
113
100
87
76
91
87
128
121
121
87
80
150
143
78
87
94
131
123
99
164
156
126
156
108
85
125
154
148
78
69
80
94
101
69
120
80
80
80
169
137
125
54
154
151
69
80
94
104
128
126
103
103
87
104
123
69
147
80
154
112
145
117
80
127
122
83
136
129
106
92
69
94
114
88
120
94
136
93
121
99
136
87
116
103
69
163
52
89
155
69
78
136
56
121
107
69
106
43
151
90
106
69
126
58
101
76
83
94
118
120
113
99
54
105
115
80
76
145
71
69
90
80
95
98
106
119
100
151
77
80
109
108
91
97
87
56
92
76
120
106
88
142
109
118
118
74
69
99
154
119
106
101
120
101
76
134
69
78
78
89
134
80
104
69
137
69
124
117
110
144
106
104
81
131
87
76
175
87
75
69
134
130
109
109
133
69
109
127
120
88
128
103
154
54
78
88
106
164
99
80
148
120
107
87
106
84
110
74
117
54
128
80
120
96
123
72
111
80
78
76
91
99
89
104
131
113
156
83
136
128
91
155
134
147
124
100
94
52
78
106
126
88
80
76
121
109
72
72
94
88
78
120
80
118
175
94
93
156
79
87
115
128
112
117
96
134
197
91
88
155
110
181
80
80
72
151
69
63
110
69
114
99
109
145
88
78
126
82
100
107
88
164
80
119
96
121
144
98
95
87
115
145
99
78
119
110
54
76
107
100
69
72
112
89
56
137
122
101
120
87
87
122
147
97
80
99
117
93
80
88
82
80
111
134
148
101
80
151
154
125
152
98
156
89
76
120
109
123
80
80
197
154
103
69
80
154
121
111
93
147
76
69
127
134
131
112
80
80
121
109
121
87
122
78
112
140
134
109
101
154
112
148
99
99
106
99
56
175
76
96
87
154
89
118
133
144
104
104
131
94
175
134
123
115
78
67
144
109
93
120
54
119
83
111
89
91
146
110
85
75
80
94
69
114
54
80
69
115
119
119
119
118
69
102
76
92
136
69
78
178
76
69
89
95
175
76
108
154
112
91
78
159
80
128
99
94
115
101
139
193
69
95
78
76
110
128
139
59
117
103
106
117
76
88
100
87
69
67
102
143
110
155
80
89
99
156
87
99
115
80
76
107
128
89
109
148
99
80
88
154
151
107
109
137
175
114
104
89
109
80
117
69
80
82
99
78
175
121
89
101
117
88
122
69
89
116
150
69
120
89
78
123
122
69
87
127
87
69
119
76
69
116
112
117
71
52
88
94
147
80
165
120
128
80
121
69
121
69
69
78
155
120
101
78
133
80
128
131
175
80
130
87
119
69
106
123
74
120
110
80
100
78
99
164
92
87
126
131
78
144
107
131
96
156
97
93
74
104
103
99
89
76
88
163
117
76
88
117
87
76
88
80
122
106
143
144
102
88
96
163
78
88
100
69
134
87
78
100
87
69
101
91
127
155
80
89
104
94
131
106
69
87
66
64
69
107
101
85
146
104
104
54
100
121
154
78
121
74
128
117
87
69
89
80
80
72
117
134
89
87
109
56
104
120
145
155
154
113
99
154
87
131
146
67
164
113
124
58
120
89
76
87
106
69
76
147
156
127
106
132
69
125
120
143
106
106
105
109
101
139
80
112
132
115
151
185
175
132
119
97
69
123
129
175
118
100
54
131
87
69
130
88
139
89
115
106
93
130
54
69
175
109
87
108
117
97
76
94
80
76
89
80
96
119
203
119
108
56
112
110
120
52
107
148
102
127
115
100
101
123
113
87
109
146
121
94
111
140
107
155
164
106
164
80
69
69
76
80
106
69
122
113
78
94
96
95
80
106
106
83
144
88
156
89
155
119
76
117
89
154
83
96
87
83
89
130
134
109
54
119
101
132
112
87
114
87
116
117
127
120
156
131
87
96
142
72
119
78
78
107
89
131
132
110
95
134
165
148
106
155
69
83
110
104
99
80
93
147
139
104
87
80
117
100
109
142
120
104
104
125
197
94
76
120
140
121
134
133
90
114
120
88
69
80
125
136
99
125
135
75
106
78
88
43
85
175
88
80
78
111
102
69
80
113
69
113
101
119
69
76
120
127
85
112
80
87
110
128
120
59
80
76
76
76
122
156
146
80
84
131
122
69
156
106
107
103
74
175
101
143
156
156
60
87
87
69
134
126
153
151
137
90
87
78
78
111
69
80
123
152
107
56
80
69
78
175
107
69
88
120
129
120
83
104
106
119
136
83
78
80
104
122
126
133
87
88
88
80
96
89
137
126
109
117
110
101
110
128
114
112
104
80
80
137
87
96
97
129
144
131
89
89
144
120
76
107
102
146
134
91
80
175
94
112
80
87
130
87
72
80
79
145
149
95
80
76
154
80
151
118
94
123
111
99
89
76
80
69
87
54
88
104
94
175
80
137
112
69
43
82
109
118
80
104
110
138
119
80
80
80
125
89
107
123
134
113
93
119
94
107
76
136
110
80
119
76
78
100
56
120
107
69
129
124
145
175
96
69
111
76
119
95
80
112
87
121
120
107
115
120
161
74
100
127
69
107
84
160
99
122
112
80
106
110
121
97
126
156
145
69
80
96
67
78
104
106
104
78
121
160
185
145
88
128
119
102
119
121
87
103
117
108
69
96
103
111
121
117
89
143
69
94
118
113
107
119
120
78
102
69
99
148
126
100
69
69
74
90
119
120
54
80
94
104
113
101
92
150
127
134
80
113
109
154
94
83
99
76
114
80
119
87
120
69
72
119
96
78
128
110
129
91
80
119
74
142
101
87
69
125
84
111
72
74
197
133
99
69
99
85
106
69
151
136
78
134
140
99
104
131
125
87
117
110
118
160
119
87
87
69
69
78
80
80
68
104
133
134
174
149
88
120
102
123
104
87
87
80
130
96
112
120
78
80
146
76
69
76
123
117
69
96
99
107
154
89
138
111
127
107
143
119
96
117
113
87
143
80
80
148
91
106
99
130
147
125
130
78
80
104
94
80
69
76
96
149
80
164
94
110
95
85
119
106
100
185
80
138
87
75
94
101
80
96
106
78
54
80
94
115
140
104
88
87
59
128
88
121
88
118
175
98
142
83
102
112
120
120
113
69
114
88
74
121
120
74
88
80
88
99
157
75
86
64
127
80
136
185
52
151
69
128
131
54
101
80
89
111
154
175
78
66
114
80
80
132
135
96
87
107
89
76
95
156
87
99
117
78
85
95
93
104
69
154
75
96
80
107
66
69
117
175
72
110
199
115
164
72
102
89
88
139
80
118
106
148
56
87
107
87
140
117
146
111
109
57
74
78
69
74
101
169
105
76
78
110
107
76
100
120
80
119
72
131
106
102
173
110
79
99
106
96
146
69
113
101
107
69
101
179
156
80
76
78
169
80
117
197
148
95
96
174
116
69
106
69
129
115
146
117
107
76
87
137
96
74
117
83
56
94
120
126
98
88
67
94
129
54
119
147
104
94
54
80
87
89
136
72
111
96
175
133
131
80
101
89
76
78
88
86
72
76
80
104
175
132
87
126
76
80
131
100
106
69
91
80
83
96
109
94
143
136
120
101
133
96
120
100
96
78
69
151
130
80
121
113
154
137
107
87
76
74
76
183
113
88
99
160
80
100
131
93
129
72
97
94
89
131
133
123
80
69
76
81
107
142
96
88
119
157
104
137
90
107
121
119
95
130
87
86
156
128
127
126
121
78
87
76
115
109
87
111
87
72
80
87
64
154
107
76
87
110
123
120
136
133
120
69
137
127
134
101
121
64
136
64
126
69
99
145
87
121
83
111
94
64
136
94
127
128
89
91
127
69
134
115
155
175
78
96
126
119
120
154
103
134
136
120
87
112
137
128
120
85
175
69
128
107
154
87
94
122
93
131
71
128
114
128
96
87
131
154
107
201
140
95
87
91
134
128
69
154
104
94
109
56
146
154
125
66
104
59
76
78
107
131
95
163
109
99
67
145
154
155
78
89
76
87
69
63
145
131
108
107
110
76
110
156
89
69
156
103
99
56
113
197
202
130
177
69
155
105
146
89
100
115
139
54
127
143
82
136
136
121
82
69
89
87
140
102
127
80
79
140
140
140
78
117
69
119
130
128
136
84
88
175
113
80
122
129
109
69
80
174
64
107
107
142
113
121
83
197
139
129
134
78
165
87
141
110
99
119
78
127
121
80
107
154
80
134
107
87
69
109
92
80
52
52
113
120
131
91
123
104
109
123
128
87
107
128
120
128
131
175
156
155
164
79
74
119
80
76
76
76
126
120
109
132
78
131
88
91
152
119
121
91
69
142
116
201
94
115
87
120
80
89
94
120
131
129
87
148
118
121
73
92
134
69
156
80
134
162
109
127
113
136
110
103
95
97
69
146
69
194
91
106
109
88
80
69
153
117
79
141
80
120
78
69
99
110
119
87
85
88
133
125
80
135
87
132
128
97
110
114
136
122
102
76
91
175
114
175
154
133
109
94
128
69
120
96
134
121
99
72
94
112
88
104
101
110
109
96
88
54
120
80
107
76
134
126
102
76
121
99
121
106
52
93
67
115
80
175
126
99
111
78
106
74
118
69
119
80
89
158
88
68
163
140
121
114
147
117
137
107
69
92
91
124
69
72
133
114
120
80
69
148
126
121
83
112
80
125
99
121
136
103
154
43
54
119
115
97
156
99
135
108
134
141
97
134
120
83
81
146
136
69
69
78
90
107
175
102
78
110
100
175
109
102
89
145
154
69
69
69
163
128
128
56
155
99
80
131
119
78
154
148
117
91
120
109
93
123
119
83
134
154
119
69
144
106
118
109
119
87
201
94
52
87
79
187
56
87
123
75
80
99
56
84
99
75
78
75
117
119
134
131
98
89
72
140
155
113
107
134
129
148
100
72
155
101
99
101
132
116
80
69
91
119
111
88
120
67
80
118
80
66
97
74
154
106
159
101
75
109
175
169
104
142
88
175
121
104
80
99
106
80
140
80
107
87
119
71
69
60
119
105
128
78
87
52
85
146
112
132
136
151
78
69
69
69
123
85
87
119
69
120
80
149
112
74
80
88
80
154
151
80
119
175
106
79
120
115
151
175
80
111
95
155
109
156
126
84
120
69
119
74
120
69
95
140
151
69
118
131
111
124
126
104
80
164
80
104
120
80
163
96
119
109
91
80
94
119
116
117
80
110
86
69
108
76
91
76
80
75
147
123
71
87
78
148
78
117
110
80
88
160
69
106
134
87
54
88
154
69
69
131
156
116
129
80
88
88
99
140
59
209
143
119
106
74
104
143
107
140
109
100
80
76
69
80
117
87
111
87
69
140
69
80
134
94
52
164
78
104
83
136
87
80
88
124
80
76
107
129
80
175
110
122
87
80
143
104
80
120
90
121
137
89
119
156
69
54
110
136
72
175
91
145
97
69
89
116
126
72
85
69
119
99
175
106
120
99
78
87
89
96
146
76
154
96
69
69
134
117
154
88
128
120
120
109
155
146
109
77
134
136
59
127
83
109
175
82
175
130
112
129
88
104
83
111
52
87
78
102
120
76
128
110
109
80
69
69
122
115
147
83
120
145
69
83
136
87
80
76
99
107
109
80
76
104
161
118
106
78
88
95
82
76
132
69
69
87
79
119
106
54
91
74
90
69
119
97
88
175
128
122
122
156
107
80
172
113
99
78
78
56
87
91
99
107
112
89
110
104
76
80
104
157
125
95
118
69
89
88
101
99
69
78
118
78
78
110
114
94
119
60
138
80
110
101
75
107
119
117
120
95
107
76
91
91
110
110
120
94
87
121
72
117
132
143
94
104
128
90
106
80
93
69
132
106
119
156
80
80
87
43
80
107
137
104
197
89
128
136
106
106
96
118
67
162
148
99
89
75
94
113
156
136
120
115
129
175
112
125
88
76
114
156
69
80
80
99
110
128
128
80
137
154
107
74
120
94
56
91
127
160
80
76
109
120
127
113
121
100
129
94
89
136
54
145
78
84
104
80
92
84
82
174
93
79
174
156
92
80
75
87
163
87
133
58
80
111
69
146
148
175
102
76
76
91
117
82
96
141
87
103
86
80
69
59
119
119
171
115
175
76
117
140
101
111
136
56
112
107
117
132
56
102
54
104
117
137
127
140
80
80
114
69
118
102
128
141
69
76
123
101
43
89
154
152
80
90
122
175
80
127
99
114
155
87
90
131
80
88
93
121
117
96
87
80
174
140
134
85
76
69
131
110
99
107
116
121
104
89
69
78
118
78
131
85
152
69
131
120
86
80
134
109
88
146
88
113
131
69
114
110
110
131
130
83
137
54
87
64
120
74
145
80
109
117
69
80
136
124
122
85
96
151
185
78
95
201
52
126
121
120
126
131
118
134
123
146
106
91
112
80
140
80
100
101
105
78
143
114
93
111
87
69
106
115
67
89
89
69
154
121
174
67
80
64
119
96
118
83
71
43
87
105
128
119
159
83
88
76
111
76
129
134
91
113
134
121
76
71
109
107
80
94
69
64
80
89
140
121
83
117
96
72
133
106
76
120
155
120
163
119
80
105
110
110
89
131
80
151
80
69
120
87
128
101
133
138
94
94
120
69
145
101
94
104
80
132
69
124
140
77
106
163
99
175
74
131
87
102
142
109
175
175
159
101
102
80
127
94
147
108
183
89
80
138
136
91
72
155
117
131
142
69
78
80
119
88
71
76
128
69
136
80
121
113
88
128
117
138
107
107
104
107
76
67
77
109
120
129
121
69
80
80
102
78
72
80
104
78
80
88
115
136
78
107
150
80
201
80
159
87
59
80
102
101
95
110
106
147
93
125
116
113
99
110
130
125
128
80
120
121
131
138
131
54
146
120
89
76
120
72
123
87
120
121
147
87
94
142
132
98
96
120
156
97
160
85
107
90
100
119
111
117
110
117
183
69
118
93
80
80
148
175
121
69
175
154
69
64
111
107
69
91
128
67
78
109
100
142
110
99
54
119
80
88
78
78
165
87
115
80
146
88
111
101
113
129
80
69
82
96
124
85
100
92
107
97
109
119
137
130
110
123
87
83
107
74
118
119
87
128
88
106
80
175
105
89
117
76
69
197
93
93
148
84
87
133
87
112
119
147
107
148
136
92
106
104
78
163
132
88
130
69
102
69
112
87
69
78
128
93
115
129
178
154
88
72
87
143
99
96
59
118
93
80
129
104
180
128
146
119
94
117
148
145
146
106
99
99
115
136
128
69
121
138
137
69
115
87
76
80
164
119
87
140
109
123
89
110
56
120
89
150
109
115
119
117
109
154
118
71
197
116
80
129
76
87
87
93
119
87
76
121
93
87
98
112
56
87
79
87
112
106
122
136
119
80
113
128
120
118
109
69
87
110
69
96
99
92
96
125
119
74
156
101
136
76
146
89
115
88
121
154
94
199
123
101
120
136
159
80
93
118
117
128
54
128
109
56
89
91
205
69
69
114
89
121
100
106
72
175
117
137
131
78
88
145
115
121
167
69
119
175
100
124
81
72
134
106
113
69
69
91
76
75
148
69
87
102
99
102
76
175
137
76
119
78
87
117
104
148
155
119
137
140
89
80
143
80
99
67
107
96
88
109
146
133
72
69
154
80
108
69
94
80
99
114
115
80
185
118
104
119
109
115
80
59
80
121
115
155
99
134
106
78
109
100
150
56
76
78
137
76
69
93
154
197
101
59
115
101
140
128
140
143
115
88
54
101
126
110
154
92
69
100
109
95
77
131
140
151
130
128
145
80
140
140
69
187
81
110
69
147
82
78
78
117
91
96
151
89
104
80
81
120
125
80
99
156
80
131
104
80
76
162
88
76
94
88
123
74
80
67
120
196
127
80
91
69
118
69
99
128
181
121
175
101
69
80
69
145
143
97
107
112
145
94
88
104
72
106
118
120
89
113
99
106
99
78
120
106
114
119
160
123
143
96
69
104
175
109
52
131
109
117
121
76
75
80
162
80
131
72
119
175
134
69
110
89
52
94
69
87
111
112
89
87
119
154
88
134
87
56
81
76
78
123
80
117
76
104
129
80
99
72
115
91
87
80
87
131
83
147
119
154
69
80
87
134
94
175
69
87
146
76
119
94
128
99
103
87
87
89
151
131
116
69
109
98
111
118
120
136
100
69
120
128
115
80
91
123
131
107
91
72
81
156
87
199
114
78
104
93
87
120
87
54
106
87
107
88
105
124
56
107
113
76
120
107
89
128
72
80
119
67
113
69
80
111
74
107
151
85
69
143
119
78
69
134
98
130
115
99
119
143
69
99
69
89
98
109
119
92
103
110
92
87
107
148
94
136
78
94
134
43
80
80
112
146
80
175
107
100
87
54
110
102
146
120
126
156
101
106
152
69
78
143
101
140
80
114
179
117
80
106
96
107
121
151
87
78
140
80
143
151
128
80
80
154
69
90
120
121
146
90
78
72
130
122
122
80
154
108
107
148
100
145
108
102
76
107
154
94
85
87
101
76
81
80
74
136
119
119
107
89
151
131
197
147
87
94
83
89
107
93
175
87
104
120
109
76
68
143
101
115
59
52
100
87
80
119
121
69
148
140
93
104
124
80
112
152
143
119
67
98
56
56
87
117
113
112
151
146
119
104
83
87
117
69
136
148
175
69
156
85
147
120
120
117
154
109
164
122
96
72
80
131
175
98
88
69
119
96
107
76
114
104
87
110
134
69
109
72
69
117
128
87
175
154
78
140
97
96
138
89
126
87
88
143
156
82
80
110
108
150
107
76
197
80
87
100
78
106
119
69
80
85
80
138
94
157
101
119
93
134
94
87
109
129
115
100
122
107
91
69
163
148
126
87
102
147
81
139
146
107
89
116
107
123
80
137
99
78
110
114
112
113
89
117
106
80
112
87
56
119
78
104
107
128
113
131
78
80
120
89
87
104
131
69
89
118
175
80
176
94
133
80
119
87
129
114
89
156
76
87
128
80
93
72
122
137
69
87
93
85
78
85
128
107
145
76
102
107
52
95
43
143
113
113
134
110
148
119
75
52
154
78
87
104
110
112
134
80
136
99
69
89
76
58
88
54
80
119
127
78
87
121
104
145
99
80
109
113
134
88
136
101
69
148
115
113
99
130
76
119
104
80
127
87
78
118
110
122
175
127
76
87
119
113
140
104
80
93
109
54
99
76
104
72
87
106
112
80
143
96
80
69
96
69
106
93
69
80
109
153
114
127
138
134
101
112
101
137
69
89
80
87
145
109
123
69
89
80
106
138
94
124
120
78
199
140
152
118
111
111
166
134
119
130
80
117
121
87
69
154
90
107
146
69
109
120
89
76
110
57
69
175
95
87
130
106
119
163
126
88
118
140
119
88
90
82
121
98
119
124
131
85
93
165
112
144
120
80
154
78
129
134
78
98
175
87
107
107
91
76
69
144
126
66
87
134
76
94
107
78
93
89
103
119
103
87
69
52
119
127
85
80
79
93
154
69
104
69
56
78
80
151
119
94
64
76
60
154
87
80
140
197
104
119
89
147
175
122
126
80
69
93
110
112
98
80
118
120
117
80
72
109
78
87
69
114
110
80
94
174
76
119
185
76
120
89
110
88
106
126
175
94
76
135
126
138
80
69
96
94
119
175
91
139
123
102
137
96
144
114
76
107
128
69
131
74
89
90
126
80
92
58
87
69
134
163
101
111
99
84
96
76
87
69
151
115
119
87
80
175
96
101
89
80
87
80
151
99
91
87
80
137
125
83
142
151
80
93
69
130
69
117
163
155
56
138
131
93
131
74
60
94
89
117
69
85
142
106
87
104
106
83
54
112
134
89
110
106
69
128
87
87
91
133
88
140
69
103
107
175
94
88
69
126
156
144
89
89
100
93
128
107
89
154
175
151
140
94
107
89
107
93
76
96
87
163
87
94
100
120
83
78
52
96
72
78
72
119
172
80
99
93
121
121
96
87
145
78
104
112
87
118
69
120
74
120
87
123
146
127
137
80
96
104
175
94
78
80
75
110
107
100
175
80
88
131
133
89
105
133
85
151
121
99
80
90
124
78
52
149
80
106
74
131
93
120
117
80
156
79
136
101
80
104
69
128
87
109
106
87
140
80
113
131
69
95
163
80
80
64
114
80
87
73
85
148
80
99
128
76
156
72
110
154
106
106
117
80
119
87
125
111
117
87
94
78
120
107
133
80
69
87
112
91
113
69
76
140
89
97
131
127
118
80
154
94
88
119
93
80
69
136
128
183
121
80
140
69
126
110
146
118
80
120
78
89
52
113
118
88
120
89
114
63
134
106
96
131
109
119
69
88
89
109
69
107
99
146
99
128
122
134
102
152
69
197
118
87
78
156
80
106
151
76
136
143
69
87
155
74
100
131
112
127
105
140
174
106
91
76
166
106
80
93
146
100
120
69
113
69
140
151
128
54
108
101
104
80
119
102
148
119
104
77
76
80
98
91
130
103
157
143
80
154
113
112
102
130
56
112
120
113
78
85
93
78
107
113
88
107
87
126
140
117
148
80
69
69
87
175
128
83
69
69
88
87
72
115
150
104
89
104
146
80
106
69
119
140
174
136
181
127
132
187
96
96
117
69
110
156
201
109
67
69
120
94
128
69
128
160
134
119
115
156
72
109
80
130
69
140
123
174
72
80
119
112
197
99
149
80
69
105
87
175
197
78
72
106
162
197
112
136
76
74
122
99
94
169
150
80
87
119
88
124
174
115
69
126
115
122
114
120
175
124
113
113
164
118
87
114
88
69
142
163
120
78
87
89
72
78
83
141
94
131
71
69
94
103
97
78
43
76
87
80
109
102
149
75
94
128
126
119
134
80
78
130
175
87
142
91
80
69
85
128
118
127
122
76
80
126
80
80
87
102
69
77
118
78
119
144
76
115
99
148
106
185
58
87
82
87
119
110
134
109
87
113
119
63
82
148
138
110
80
56
148
112
80
119
104
69
82
98
106
69
117
102
92
109
108
106
114
98
134
125
147
80
69
89
144
156
72
109
101
148
87
152
119
99
80
128
120
63
72
89
156
80
119
163
89
120
87
91
93
101
69
88
101
131
120
101
52
104
133
72
72
69
121
131
90
129
151
96
199
87
128
120
110
112
132
91
89
78
119
120
128
66
87
69
102
52
197
80
127
197
128
133
78
127
102
69
109
101
197
80
52
92
110
120
100
119
66
107
80
85
199
120
120
159
148
146
121
119
107
151
90
78
89
69
99
107
117
113
123
130
87
52
127
119
110
109
80
99
131
156
80
125
88
99
106
154
114
88
80
113
89
133
98
85
122
163
87
107
102
69
80
175
96
74
140
117
52
92
157
107
104
119
110
87
107
82
87
130
54
80
106
111
69
110
128
89
87
117
106
96
152
78
107
93
85
134
133
121
124
185
76
120
82
114
69
175
90
129
90
155
136
109
80
197
111
149
89
124
119
128
131
134
69
80
106
101
78
80
120
140
83
140
175
80
123
124
117
72
125
117
74
89
100
93
72
126
87
127
117
120
115
88
139
106
118
113
76
80
104
69
96
107
76
143
117
75
99
99
104
127
154
117
123
78
88
76
112
89
187
87
118
69
95
93
101
83
100
98
69
184
158
123
119
146
107
69
89
149
152
93
80
94
69
121
80
137
136
80
109
145
140
144
110
162
121
89
89
69
87
76
145
87
78
133
115
124
72
100
76
83
143
110
99
117
69
128
134
164
103
96
89
121
76
122
78
85
121
110
108
67
69
88
112
102
80
89
119
123
94
100
87
154
89
76
59
56
107
119
72
125
104
104
114
80
148
178
114
127
109
91
154
104
104
58
80
80
175
99
93
120
80
118
137
123
78
87
97
119
175
107
122
164
99
112
69
151
130
120
104
103
100
80
71
80
134
80
140
89
93
132
131
104
80
80
78
78
89
151
99
79
130
85
120
125
76
88
119
155
72
95
80
80
94
88
120
143
69
119
128
143
152
128
132
130
160
152
128
128
110
154
134
128
115
106
134
73
107
85
89
123
136
69
127
164
137
91
136
130
154
160
69
119
133
122
126
160
134
88
145
156
89
107
160
140
159
143
99
125
147
76
197
156
147
137
115
139
96
54
113
119
143
93
82
54
104
147
110
105
197
80
105
120
175
169
156
69
87
91
78
88
119
80
89
156
87
160
162
144
131
94
137
134
146
80
87
120
134
120
113
69
80
104
75
164
85
80
89
134
154
99
76
80
73
78
69
129
119
101
113
128
113
151
131
130
133
196
119
106
112
127
76
96
119
134
54
110
94
136
100
91
114
107
110
89
80
119
142
110
146
94
76
120
69
104
72
134
87
69
121
74
98
119
69
96
100
78
140
128
107
109
124
91
94
99
127
69
80
137
164
102
106
175
78
80
103
154
111
145
87
162
80
163
175
69
107
152
87
113
138
131
100
92
164
90
174
89
127
56
69
107
99
148
80
69
87
144
78
174
132
146
175
119
155
80
163
118
99
69
97
145
114
82
76
107
136
93
110
88
127
175
80
69
151
156
78
69
76
154
109
148
80
117
116
175
118
76
78
117
88
66
123
109
110
109
127
78
115
113
71
88
80
128
131
119
80
139
143
121
94
110
90
119
88
183
96
90
80
99
69
87
104
136
99
69
136
43
91
89
91
145
120
106
69
114
83
89
72
100
80
131
123
80
80
94
152
69
102
143
120
113
75
78
89
156
140
128
87
78
76
174
78
127
113
89
143
107
91
120
99
147
59
94
89
88
120
98
76
120
110
117
134
99
109
146
104
115
155
96
131
137
113
102
69
147
99
119
120
123
67
69
91
87
199
97
119
110
104
80
110
113
80
144
104
118
128
134
134
93
151
115
110
58
121
96
119
80
123
119
117
119
112
69
107
109
113
119
147
151
99
88
80
150
151
80
69
69
119
109
118
115
80
80
124
111
104
91
130
140
52
76
87
87
96
89
107
111
88
80
128
94
104
109
81
101
168
79
88
78
134
128
87
85
109
156
119
69
120
151
159
87
78
78
78
134
76
156
155
87
138
175
130
76
111
174
189
64
159
93
126
87
140
80
69
140
130
76
90
98
60
140
69
69
87
109
99
76
164
113
78
79
118
89
121
175
80
87
152
109
109
80
151
80
78
113
162
78
102
76
94
154
117
80
128
69
119
147
78
76
80
114
69
88
163
131
128
87
110
155
97
72
79
69
127
107
128
175
87
111
110
175
110
104
52
128
69
104
88
111
112
138
197
69
175
145
80
109
137
87
82
106
85
110
138
72
80
80
163
78
76
94
101
134
76
145
54
96
123
115
80
78
121
82
113
100
78
106
109
174
138
109
80
96
106
109
121
112
163
106
89
93
69
64
78
115
113
146
80
92
156
139
96
88
141
115
114
123
138
175
76
131
122
106
136
85
113
142
110
80
72
74
107
116
142
85
78
91
99
80
143
69
69
121
107
80
99
98
106
120
156
118
130
100
96
118
123
69
89
116
87
90
90
87
146
136
136
87
162
80
109
154
110
72
103
145
69
107
131
87
128
100
93
89
109
54
140
175
109
140
115
74
104
78
197
124
106
151
117
78
98
80
94
99
119
87
152
107
89
118
87
131
152
80
119
121
118
88
75
162
130
154
78
107
89
110
56
130
119
103
76
88
119
118
76
80
116
83
157
69
94
102
104
129
88
128
76
106
128
117
121
126
117
76
87
110
59
100
69
107
127
74
119
80
112
87
80
78
80
120
119
54
101
66
76
134
56
109
69
95
80
96
121
87
120
154
111
145
100
80
108
69
87
151
94
76
80
74
109
117
99
96
119
114
127
112
91
131
99
111
87
136
147
115
104
69
118
120
87
102
187
120
54
124
128
63
115
130
117
103
87
108
88
91
78
128
136
120
117
96
100
99
107
80
138
175
72
92
106
123
107
80
141
89
72
58
76
119
115
89
127
104
78
76
80
109
80
115
69
87
112
88
110
80
122
88
80
114
127
88
131
104
84
181
123
119
165
76
89
94
132
111
113
112
69
151
155
78
80
104
54
136
159
101
115
93
111
156
120
151
175
90
78
69
107
154
88
125
76
112
110
121
87
131
91
120
103
98
158
76
128
87
155
134
119
80
135
76
96
69
107
89
69
54
131
117
76
69
69
164
140
154
115
121
101
112
175
69
78
87
80
175
80
89
80
74
107
69
120
137
136
117
114
91
80
76
54
69
136
134
123
101
172
107
89
80
94
118
90
100
78
151
126
100
87
76
80
89
197
110
80
155
112
69
80
131
109
148
128
119
123
99
154
69
87
119
110
115
80
91
114
77
148
110
109
128
175
134
96
104
127
197
64
106
104
110
109
128
89
160
114
128
78
87
80
76
80
104
175
121
69
78
98
108
130
141
69
129
131
90
105
80
106
54
93
123
92
78
80
164
107
126
137
78
118
183
163
119
127
101
80
85
119
87
119
100
130
69
142
74
136
76
109
119
80
85
76
52
110
134
87
102
90
80
91
104
77
69
112
87
109
109
154
54
80
112
138
98
80
157
137
71
107
69
107
89
133
76
86
103
145
78
87
80
143
72
145
119
80
152
89
78
110
94
99
100
83
89
121
69
136
132
104
91
89
112
79
95
101
99
110
154
87
175
80
80
147
89
95
157
110
87
72
146
109
80
80
104
89
134
120
87
96
99
107
120
80
101
69
128
87
127
110
87
140
107
80
80
80
56
85
80
132
59
106
78
94
156
123
119
69
107
93
123
125
78
56
156
118
103
120
119
112
97
76
141
113
96
95
119
118
87
76
105
105
143
122
72
89
175
69
154
80
127
69
110
121
134
113
110
89
120
115
94
91
80
124
128
66
59
88
119
80
78
99
129
121
136
130
147
113
136
95
133
138
72
81
106
123
89
107
80
134
89
132
69
80
134
119
108
76
101
89
130
87
69
54
132
76
88
197
164
114
96
83
72
149
87
119
127
66
145
91
79
72
80
140
156
87
160
80
75
76
107
69
111
100
80
115
95
119
146
131
106
91
87
114
145
89
104
95
95
140
156
145
80
96
89
80
80
112
129
123
120
141
128
78
119
72
110
117
76
96
90
147
151
107
76
85
69
80
136
87
91
80
66
69
114
100
94
104
165
88
78
122
92
92
89
94
96
107
94
101
113
105
78
80
199
128
88
74
93
96
113
104
86
154
130
117
113
116
119
91
52
104
183
99
89
134
209
107
112
134
78
100
112
102
104
175
66
117
102
146
124
144
111
90
69
99
133
122
94
89
89
131
69
96
89
114
93
117
114
126
181
98
109
69
107
69
127
78
80
113
95
80
124
100
113
69
98
77
109
80
128
132
94
146
87
80
76
78
52
86
115
78
99
89
68
125
111
80
128
178
137
119
175
80
69
102
136
117
76
69
111
154
112
112
69
149
130
93
92
72
85
69
148
66
64
151
118
87
109
72
140
82
88
88
80
107
151
145
102
117
101
110
103
102
98
108
89
91
113
120
88
187
129
80
154
99
130
69
145
116
78
111
157
102
136
87
69
69
88
151
146
131
85
43
80
106
106
52
87
140
131
78
114
106
77
80
93
118
99
99
93
109
87
124
98
89
154
99
76
91
87
87
96
80
201
54
156
119
110
139
87
98
110
123
163
102
56
160
106
133
91
107
74
87
52
145
135
80
104
126
166
120
148
128
89
72
140
112
94
43
69
146
99
80
125
66
91
112
74
99
80
147
175
72
90
91
80
75
102
129
69
69
156
80
87
69
102
103
76
175
113
164
146
119
87
110
136
80
89
120
72
155
73
94
80
76
87
107
76
80
100
78
128
80
150
154
64
144
126
160
78
128
102
78
115
112
78
130
69
69
110
109
89
78
52
96
163
91
110
154
160
143
113
126
136
120
69
80
88
88
76
145
76
140
142
87
99
101
137
111
87
183
54
104
69
80
96
113
69
89
119
78
197
120
89
153
123
80
121
80
91
80
166
153
136
120
99
78
76
87
107
175
88
93
155
76
154
57
80
72
69
109
80
161
125
82
96
113
76
94
78
80
126
129
102
137
90
93
108
88
128
151
121
91
129
119
115
119
120
80
80
185
119
136
104
119
113
76
87
154
133
131
111
93
155
175
110
119
149
101
115
118
131
82
80
120
72
144
80
104
129
119
80
145
78
89
155
104
99
175
131
75
131
129
102
64
87
132
136
78
134
106
74
80
145
119
109
96
69
80
78
101
78
104
124
149
69
96
103
138
175
118
101
111
93
197
80
137
96
52
209
117
140
69
87
123
133
76
87
107
131
69
77
94
76
88
76
78
166
119
155
118
96
155
91
134
100
101
155
119
121
144
87
164
140
145
76
89
80
93
74
127
140
104
69
106
102
134
71
78
128
154
80
93
101
80
121
113
117
121
87
160
104
163
94
119
115
87
128
69
104
136
76
69
121
99
154
156
197
72
113
80
69
107
119
148
111
80
80
128
80
88
91
115
109
107
101
157
54
121
146
102
96
181
119
115
74
164
151
123
87
76
151
80
82
67
115
69
124
111
134
118
69
93
87
67
78
94
80
110
87
74
104
161
107
118
87
102
130
121
80
90
128
108
154
145
69
87
136
137
74
130
175
128
69
76
87
138
80
104
88
93
80
136
88
120
103
120
118
72
151
94
156
94
197
111
80
91
80
88
90
113
131
54
87
132
151
128
90
183
98
106
110
80
96
114
88
95
69
101
116
112
93
128
136
80
99
80
154
76
52
94
78
179
115
119
79
119
94
118
120
134
128
118
112
52
118
103
136
74
119
136
97
141
106
102
87
80
80
87
175
76
76
80
88
54
98
104
143
177
72
87
110
76
76
136
117
104
88
52
78
83
83
80
155
78
108
69
118
87
117
93
59
106
119
99
80
104
128
52
107
112
116
63
118
109
131
80
109
69
120
197
107
69
80
121
140
80
154
87
69
69
174
78
104
197
120
164
144
107
88
108
101
76
109
99
136
91
93
69
134
89
85
80
72
122
83
140
123
115
151
109
134
67
87
76
88
66
87
80
156
113
93
107
142
80
72
80
69
87
87
118
109
134
113
76
136
88
175
142
127
87
80
78
187
119
63
69
131
141
147
136
149
115
111
183
174
111
78
107
113
79
80
109
101
78
76
155
74
111
104
99
120
58
76
181
146
151
121
80
106
106
166
154
128
120
125
119
122
76
101
117
127
107
96
114
197
118
107
93
99
93
107
87
54
69
140
160
110
140
80
109
107
115
78
54
78
163
111
76
118
120
93
127
132
169
116
100
121
144
113
104
119
71
130
127
151
94
140
76
111
54
151
90
103
78
120
131
87
89
80
99
100
91
87
127
175
56
145
154
72
103
130
80
130
122
80
76
93
67
106
80
119
107
85
140
117
124
110
107
87
71
89
82
154
80
95
120
107
76
98
107
104
93
104
78
106
113
89
139
119
109
93
148
119
120
117
112
118
96
127
104
80
90
148
95
145
134
87
96
69
109
123
197
111
128
69
80
96
119
107
76
119
110
90
156
113
98
76
117
134
138
201
154
122
69
126
121
126
69
78
80
165
130
91
101
99
83
137
96
88
147
80
90
114
110
126
94
129
128
110
119
80
109
134
81
88
131
105
80
102
94
175
128
107
80
127
116
109
128
132
155
145
80
139
69
122
144
119
78
144
128
175
87
122
69
93
80
132
87
89
89
126
119
121
128
113
119
136
112
119
69
117
87
110
87
80
156
115
99
104
91
72
151
87
107
197
185
69
80
76
89
91
111
134
148
80
197
117
80
155
148
115
76
76
103
104
104
154
138
114
103
93
54
99
89
169
151
123
144
101
78
99
94
74
147
76
83
94
99
149
80
123
80
87
85
91
69
115
103
114
90
154
76
87
104
144
123
67
80
106
89
136
66
110
117
69
175
117
80
133
52
88
97
69
69
75
106
87
92
197
80
80
152
140
89
89
104
117
105
69
78
119
109
120
87
117
99
101
94
91
87
100
104
76
80
144
87
151
102
129
103
104
93
76
142
140
85
91
91
85
89
175
103
80
79
134
58
119
89
69
94
75
104
69
102
87
142
76
94
113
69
76
137
138
80
90
121
80
113
120
139
88
128
109
112
112
118
78
197
79
115
109
89
175
80
133
102
92
197
109
164
97
75
69
101
93
80
154
80
122
78
103
106
123
132
117
69
69
85
154
74
140
93
89
69
163
69
110
156
76
129
140
107
109
95
80
80
79
118
80
76
107
101
74
91
88
163
88
110
140
99
76
131
137
102
52
122
87
99
137
74
87
107
80
154
113
74
68
78
87
73
106
69
114
99
93
125
91
54
80
119
116
52
119
78
78
101
134
154
119
69
130
78
130
175
111
119
110
110
136
134
122
201
144
90
101
102
101
119
89
67
151
66
78
80
69
85
93
154
115
104
96
158
87
140
107
78
80
83
113
78
144
78
106
115
116
69
135
67
109
121
175
78
93
154
175
128
155
121
138
69
78
80
110
98
121
129
99
131
156
83
175
88
161
120
80
111
199
154
118
80
196
80
80
113
197
76
93
95
76
146
119
175
154
76
76
122
175
74
106
139
134
67
78
94
119
96
147
69
54
99
148
118
104
101
88
99
80
96
201
104
76
112
60
93
132
58
91
85
92
123
183
120
147
157
56
104
103
76
76
128
88
114
94
120
175
181
156
88
119
59
199
80
197
124
110
69
91
100
132
199
145
135
109
73
87
96
87
123
110
94
119
134
72
128
99
128
137
126
78
162
56
85
103
87
78
130
94
73
69
141
85
134
197
78
69
101
140
110
97
88
137
91
133
145
109
197
91
87
145
125
89
82
72
69
145
80
83
106
145
80
91
148
145
56
96
120
109
117
109
69
154
130
100
76
108
80
89
113
114
68
89
130
106
107
129
101
129
76
146
116
59
69
69
127
58
102
80
78
80
78
78
111
119
129
145
88
183
145
100
123
120
80
107
110
88
93
94
93
127
125
127
69
96
104
197
96
78
104
104
160
87
138
76
155
78
69
134
113
93
101
69
110
126
121
89
100
156
78
154
159
78
96
140
96
134
87
80
112
80
80
109
80
84
69
69
98
69
66
112
109
102
115
67
138
128
100
87
154
91
128
69
113
104
112
163
80
143
140
160
134
80
172
69
96
118
127
176
89
127
131
66
78
63
80
113
136
76
143
69
98
87
107
148
103
112
69
124
134
120
82
80
69
154
89
118
94
140
76
78
123
69
59
87
197
111
56
122
76
160
90
118
127
124
98
140
79
64
120
127
158
78
132
119
103
69
126
88
129
175
96
117
72
72
119
126
128
107
96
76
80
154
69
87
88
134
96
87
109
164
87
80
120
96
197
129
80
151
110
135
199
106
123
80
131
99
87
80
107
153
91
87
107
76
80
87
69
76
127
80
96
83
88
87
87
87
69
87
121
127
112
121
119
145
120
110
80
82
115
80
121
80
155
78
80
100
145
86
103
156
133
110
145
52
87
69
80
69
88
88
134
104
107
69
93
80
136
130
128
72
175
108
102
113
156
71
76
95
78
124
107
127
128
107
134
132
89
94
129
76
120
99
111
94
154
175
102
104
122
112
78
115
109
93
121
87
69
105
94
116
98
120
102
131
69
134
99
78
92
162
76
154
104
72
137
80
119
117
110
128
69
89
74
99
80
119
110
104
117
125
52
119
149
117
124
69
122
69
110
151
78
88
99
117
136
80
101
69
150
87
112
134
80
80
115
66
96
80
109
122
69
60
129
129
105
80
124
104
119
113
130
72
160
89
138
94
106
75
66
134
107
69
82
114
78
129
121
109
107
120
87
104
99
80
78
134
80
83
82
163
80
104
80
134
72
115
109
131
201
114
120
88
142
89
107
119
87
151
96
88
113
98
107
76
107
80
87
148
87
115
94
104
166
87
89
107
91
56
122
76
111
107
101
69
79
118
80
111
80
150
98
131
154
110
109
163
80
113
128
172
107
103
155
119
120
126
123
140
137
89
156
97
90
69
80
85
151
112
69
87
80
119
74
87
90
78
80
96
115
136
118
78
121
72
63
131
134
145
83
143
87
87
89
69
119
85
126
52
87
112
120
78
133
109
95
98
144
88
87
74
80
76
102
127
154
175
74
120
120
87
94
94
84
79
116
87
119
151
114
106
137
140
76
69
94
75
110
162
102
109
128
80
87
69
87
76
133
109
56
175
78
175
146
103
116
145
96
106
175
91
153
100
80
103
109
100
174
78
94
83
165
110
120
52
111
80
113
87
120
87
128
69
143
89
104
151
106
101
82
106
89
121
163
78
136
106
94
124
119
93
110
76
148
99
134
78
101
109
89
136
87
110
136
130
136
175
109
78
99
69
88
93
155
102
129
80
119
158
77
89
112
99
80
96
76
133
94
137
107
181
121
154
111
96
88
76
80
108
80
76
119
148
80
72
156
80
123
80
80
92
105
87
144
80
122
172
137
143
80
128
80
88
80
78
107
143
175
115
106
121
107
156
126
121
126
128
91
100
136
87
147
118
131
106
155
87
94
80
119
119
140
163
69
87
106
79
100
104
78
132
91
80
80
129
130
120
76
78
69
72
148
128
80
106
197
80
160
163
95
93
69
121
126
156
144
128
149
80
94
87
52
113
130
107
78
101
118
89
69
94
69
134
96
128
94
151
80
101
76
80
175
78
120
76
129
69
94
69
80
52
96
69
78
80
80
164
69
136
94
115
94
129
136
150
69
88
175
76
127
76
94
93
102
136
99
102
100
137
69
107
54
84
79
87
80
88
169
185
109
80
175
128
104
155
85
138
175
96
69
99
119
118
80
90
154
112
115
99
109
106
131
80
78
80
136
94
88
101
80
118
91
104
137
88
76
80
76
79
80
175
99
69
72
69
93
128
94
84
110
136
151
131
117
87
80
94
90
155
107
119
119
89
69
87
89
118
88
80
77
81
87
128
125
67
101
111
109
109
121
80
120
91
197
96
104
94
107
141
113
108
69
89
112
128
101
131
146
126
72
91
121
69
113
107
79
87
103
69
134
148
175
124
96
143
115
175
78
128
131
72
121
120
71
74
88
80
69
74
89
69
107
155
88
80
121
119
69
175
120
69
156
89
127
121
151
83
103
76
69
87
94
103
99
78
104
78
131
71
171
80
134
151
88
75
134
69
88
85
78
120
100
147
146
132
114
137
93
119
43
129
95
69
87
157
112
130
126
106
120
74
80
80
87
175
87
106
143
83
93
119
54
80
79
87
134
98
110
110
175
130
110
78
153
112
131
93
163
88
90
143
112
101
66
72
120
122
78
87
137
107
121
94
110
104
134
128
128
92
54
134
95
130
134
102
115
131
134
91
113
144
128
80
175
128
69
110
110
80
76
128
43
106
88
175
76
96
80
144
113
69
69
98
76
117
137
139
120
76
146
100
93
69
154
131
102
80
88
169
99
132
88
66
80
126
107
154
107
76
93
104
134
155
163
76
109
125
94
101
89
100
96
78
132
98
141
107
78
128
109
80
164
88
87
54
119
95
120
146
91
144
85
80
69
75
99
93
89
123
107
120
69
152
80
106
69
99
100
174
152
66
111
106
103
104
154
110
139
102
92
89
90
117
110
138
171
175
140
175
96
78
87
123
99
165
78
155
107
87
117
175
185
80
91
54
85
154
115
103
120
123
80
119
121
107
69
119
119
80
80
114
80
99
85
56
117
101
107
76
112
78
69
107
128
76
87
110
54
107
78
43
69
99
148
130
93
115
128
153
99
140
92
76
163
122
110
126
80
136
101
74
140
72
125
75
73
130
94
88
109
121
132
80
127
87
128
152
99
98
96
113
89
108
163
129
106
119
112
127
94
110
114
127
95
79
102
148
92
74
121
85
112
101
101
123
109
87
89
104
161
163
96
76
195
87
107
94
150
93
115
120
154
134
80
93
131
155
89
104
100
128
112
109
78
87
119
119
94
87
85
100
69
102
131
100
100
76
120
69
88
109
80
106
88
76
108
99
120
99
92
76
80
102
119
89
100
130
52
87
69
109
138
120
129
82
72
107
80
109
80
80
140
122
197
100
111
155
87
99
94
88
134
64
78
106
152
122
87
78
66
100
79
78
93
94
101
115
100
76
119
136
134
88
174
136
121
140
69
154
106
89
100
110
151
117
72
93
106
89
80
80
115
143
63
111
133
106
106
91
99
142
104
107
109
114
94
104
66
96
94
72
102
72
68
98
107
110
117
87
127
80
110
89
93
78
80
107
106
119
111
125
134
103
69
154
69
80
121
67
185
69
99
80
72
151
78
140
69
163
87
125
88
136
115
119
100
80
135
78
104
91
82
185
132
94
69
121
115
69
69
99
102
112
83
76
80
128
134
162
118
197
66
120
144
126
197
145
131
80
88
143
199
69
89
104
67
117
79
156
166
150
101
76
89
118
119
77
87
103
126
78
91
134
129
87
106
71
154
69
94
145
91
138
128
101
102
107
87
76
122
72
69
175
92
120
72
121
87
140
119
95
91
80
91
88
159
69
78
85
69
80
151
91
100
80
114
121
112
69
154
98
138
143
76
126
124
99
87
109
94
102
154
118
113
104
72
80
107
80
100
78
107
104
120
69
144
93
88
103
128
175
136
80
114
104
154
87
69
102
119
157
90
78
99
69
89
120
69
80
93
120
76
115
80
137
119
87
75
78
87
123
117
87
90
144
76
76
150
91
88
141
107
119
93
72
72
101
91
80
87
149
118
146
85
82
121
87
169
76
97
113
100
92
119
163
96
140
78
80
76
87
100
126
128
120
72
77
110
94
89
99
87
78
88
129
89
119
60
155
115
99
69
63
174
112
118
104
97
72
80
140
76
123
80
103
87
94
76
109
80
60
155
125
124
97
69
123
126
56
106
96
76
129
88
152
87
122
131
128
155
144
88
80
101
138
76
104
76
143
131
159
139
100
156
69
148
78
96
80
120
69
136
131
78
78
69
88
175
102
119
80
110
99
76
100
88
90
69
76
71
107
52
131
131
100
144
149
175
157
76
72
154
94
90
85
117
136
90
76
94
104
136
146
79
106
76
110
135
87
80
172
74
110
115
110
107
109
156
127
105
88
94
89
128
134
80
175
78
92
104
96
69
107
66
93
80
127
87
90
52
123
80
91
125
131
69
58
69
151
128
109
88
134
69
78
132
89
127
101
76
69
119
77
89
197
162
145
154
127
88
139
137
91
78
87
69
92
80
115
89
72
72
120
151
136
80
79
93
120
110
101
74
145
85
60
175
80
137
71
90
87
58
79
156
99
101
113
87
132
78
91
83
67
129
151
112
113
80
151
148
78
136
95
91
78
88
123
69
89
156
113
107
109
63
69
138
88
43
76
95
94
106
99
119
120
113
147
80
120
109
96
119
118
119
88
78
69
113
119
88
69
80
123
80
80
98
102
115
117
87
145
146
112
80
104
117
136
78
150
146
156
139
95
80
118
78
154
154
177
125
74
95
113
80
122
119
117
85
139
109
96
95
104
72
144
131
101
97
113
106
109
104
113
104
88
134
74
104
76
101
111
87
131
131
73
151
154
120
107
96
78
134
98
87
111
109
99
145
145
124
102
118
78
59
88
109
126
96
94
80
175
131
76
77
156
136
104
109
85
102
99
95
76
80
80
154
155
89
111
96
156
113
87
78
96
117
119
107
122
126
137
120
107
74
122
87
90
119
145
117
96
112
127
88
91
107
115
104
92
78
88
87
154
69
146
80
102
94
130
108
175
124
87
123
156
107
111
156
80
88
107
80
183
119
112
87
175
152
175
131
74
151
99
121
104
164
107
157
150
110
127
128
134
148
74
101
176
80
66
120
102
80
104
83
151
78
118
109
123
109
119
107
156
69
146
69
80
94
129
96
78
91
76
175
124
72
89
151
69
125
109
112
73
107
127
102
121
76
156
101
133
87
120
117
137
111
80
76
89
91
133
126
89
109
76
155
175
121
79
175
106
80
80
106
131
119
101
107
89
69
154
146
121
119
87
69
76
134
94
99
120
107
120
120
80
136
128
81
147
113
94
110
112
112
134
78
119
102
120
91
76
117
78
89
133
120
80
87
150
128
119
80
110
118
126
136
140
80
146
115
107
76
69
144
80
87
87
106
58
69
80
119
140
125
172
100
166
99
98
175
175
83
79
100
92
136
209
69
155
104
80
120
63
80
101
88
148
78
116
99
87
146
164
156
131
99
107
80
107
103
80
87
120
79
89
137
100
85
78
112
164
76
112
117
175
154
163
54
69
109
129
101
101
130
69
88
136
128
160
87
138
87
113
87
91
76
154
94
134
87
131
85
134
107
107
175
136
121
69
80
110
143
136
120
108
118
121
88
88
128
121
151
119
106
117
69
94
137
72
87
119
69
76
67
100
128
94
108
123
69
69
80
69
107
109
175
78
131
80
93
128
78
105
88
110
136
123
127
69
69
107
110
144
95
69
112
99
87
121
136
80
151
146
97
106
155
80
201
78
78
101
113
100
80
93
69
80
91
124
119
140
94
136
131
76
154
155
136
89
119
87
175
89
78
78
110
80
130
106
110
72
125
99
87
76
127
175
128
80
140
138
119
76
87
80
94
122
107
163
107
112
163
129
93
152
74
71
119
104
101
80
80
88
96
107
80
114
109
78
96
91
128
145
80
76
78
69
151
109
110
80
69
80
137
99
120
128
109
109
131
76
116
87
88
97
121
130
74
114
69
119
121
154
146
89
123
112
128
71
156
156
121
80
76
153
111
91
72
158
120
123
156
87
78
126
163
96
121
122
120
117
106
111
90
140
72
121
119
131
109
109
123
78
155
110
69
69
140
110
80
99
117
106
101
107
136
87
128
131
146
73
114
94
169
163
132
107
69
78
110
78
112
74
162
197
84
145
185
69
114
69
98
153
93
128
94
139
78
88
175
80
79
117
112
96
80
112
76
92
112
72
137
54
67
137
100
79
78
174
79
80
114
143
124
113
87
156
107
87
74
72
90
103
154
80
119
93
87
147
103
88
128
80
69
175
71
117
69
88
69
88
181
154
80
127
153
163
80
117
98
154
133
80
56
137
132
110
76
80
78
96
113
134
104
119
155
111
104
90
104
69
145
66
58
153
113
128
131
112
147
72
107
69
146
80
128
94
102
115
85
118
155
78
89
183
78
117
69
153
88
154
76
69
154
80
148
67
163
175
154
99
88
137
96
73
79
117
80
100
69
87
78
75
113
95
125
127
117
107
81
78
58
120
83
134
79
69
118
100
154
56
130
175
172
122
43
123
112
71
110
103
106
104
69
155
94
98
138
106
78
89
69
76
128
69
154
119
112
88
56
102
80
76
64
101
90
140
119
56
87
78
136
106
80
117
120
101
87
76
117
95
69
80
118
117
78
110
102
80
88
92
116
76
118
80
79
76
137
123
69
136
113
155
133
119
104
80
80
154
138
90
132
120
80
66
78
135
104
156
69
57
96
122
107
117
99
136
110
104
104
76
96
80
132
146
98
102
160
128
154
154
107
111
72
78
136
101
93
154
123
136
120
148
87
104
96
76
109
69
123
69
119
69
113
93
119
69
80
164
78
117
142
78
106
112
118
142
78
91
106
107
87
78
91
119
78
80
112
97
87
110
69
121
115
96
76
87
133
87
87
93
80
103
100
136
52
85
69
81
78
143
130
102
101
109
94
133
88
126
72
115
88
104
140
87
99
111
80
87
113
112
88
110
54
88
175
89
69
78
102
120
132
80
113
119
111
109
76
100
43
76
144
87
91
96
120
75
80
76
98
109
105
127
119
76
80
75
115
72
135
59
94
80
96
130
98
118
80
87
69
78
121
143
139
151
69
113
69
147
104
102
126
89
80
72
69
69
76
69
136
120
128
85
101
119
74
74
104
119
131
175
109
80
71
120
69
120
80
109
121
80
174
69
69
131
88
128
131
91
117
106
104
103
115
56
112
89
151
104
56
89
107
142
137
69
69
154
128
135
93
148
100
69
119
110
140
67
95
143
80
78
103
78
120
164
104
119
54
99
123
107
91
110
87
104
119
78
71
69
99
88
87
87
133
106
72
74
154
80
175
136
134
89
80
152
130
87
131
156
136
110
134
88
121
87
164
156
109
175
69
95
74
118
163
119
120
107
154
155
88
85
125
74
88
107
95
80
118
155
175
91
80
123
87
69
113
120
121
137
160
72
106
123
87
110
113
128
117
80
154
100
69
109
106
112
175
95
113
104
110
132
97
175
132
112
80
87
120
72
106
119
80
138
151
76
131
110
92
127
106
117
107
148
154
104
175
87
87
136
83
102
103
148
87
87
119
78
74
87
115
74
78
149
96
128
152
80
102
119
69
156
69
117
96
78
119
151
117
58
136
134
64
136
78
83
121
112
92
94
128
116
76
174
110
132
124
131
76
62
83
76
76
118
76
127
103
128
78
74
175
134
78
93
91
80
109
85
99
86
137
93
74
107
80
113
147
132
145
128
98
121
177
106
101
128
133
119
94
76
118
183
115
109
128
80
113
72
134
106
87
102
113
137
100
175
69
130
91
72
80
107
98
141
52
140
106
94
117
114
124
126
94
75
100
100
124
85
87
72
147
117
120
175
95
110
76
87
88
80
80
69
138
129
125
164
142
145
107
87
109
88
150
76
117
119
90
145
76
78
80
134
126
94
80
151
69
87
154
88
175
139
107
172
119
101
67
88
91
150
89
174
107
126
156
99
67
142
93
154
118
90
103
124
174
121
156
80
120
129
119
104
91
107
131
78
120
87
88
78
99
76
109
54
111
76
107
197
131
80
151
101
155
78
88
115
78
88
117
88
131
87
122
137
69
69
128
69
142
93
151
147
80
126
147
94
114
146
104
94
106
113
107
89
116
125
90
114
78
151
119
131
174
106
69
136
128
69
106
112
175
93
67
74
87
94
67
119
98
118
94
124
52
72
117
91
97
89
113
118
107
150
113
124
185
87
87
94
119
99
93
117
201
104
69
114
121
120
119
80
92
69
106
121
166
155
102
89
70
136
133
78
101
113
80
134
89
131
88
119
109
94
69
148
136
146
117
95
100
85
82
134
160
101
80
95
146
107
93
109
94
154
97
101
88
80
98
69
94
80
94
80
95
99
121
100
119
133
87
131
109
145
78
89
80
93
197
131
132
96
69
86
78
69
104
119
175
83
134
92
106
109
95
80
86
93
95
111
129
126
130
115
106
124
112
164
101
78
78
80
89
79
143
109
91
78
121
197
154
99
118
104
113
95
43
80
132
140
52
175
154
104
126
69
160
69
110
69
103
164
69
120
96
128
76
99
87
87
76
114
85
116
89
95
79
128
80
102
80
183
110
113
101
107
157
76
95
79
113
124
91
69
130
80
80
197
129
76
122
87
121
121
117
114
69
100
120
88
80
80
85
156
143
72
69
134
123
119
80
76
119
107
154
78
155
99
69
119
76
91
109
137
137
136
106
155
100
87
78
109
104
87
78
129
120
134
78
69
69
106
69
112
76
76
140
91
147
87
145
123
69
153
87
80
109
120
80
113
121
175
138
95
69
106
80
109
52
80
76
122
175
80
80
78
144
115
78
69
96
74
175
134
157
166
80
80
114
104
152
99
69
121
80
105
137
119
104
134
120
112
76
69
101
131
118
136
154
134
72
154
101
107
120
69
145
69
69
133
78
116
120
136
100
102
124
133
99
121
78
78
74
127
130
87
106
74
118
155
88
78
134
95
134
121
76
78
107
83
69
154
128
99
109
99
109
113
80
94
93
95
127
93
96
66
112
155
80
107
94
113
102
95
142
106
104
160
109
72
85
128
110
175
110
69
134
83
144
88
107
80
136
140
111
137
136
78
76
77
113
80
71
76
109
109
156
76
80
175
134
116
127
131
155
80
69
116
113
175
99
117
52
76
112
139
138
89
52
199
87
151
151
140
72
91
69
99
165
120
69
131
118
69
87
121
74
80
99
80
87
156
124
87
156
69
95
81
128
80
120
69
111
93
100
109
137
159
107
136
69
126
152
117
88
80
80
79
120
137
87
99
131
80
98
131
94
92
118
69
106
104
80
79
54
78
80
129
123
113
89
72
80
69
107
94
87
133
131
78
120
142
88
156
119
129
106
84
104
104
96
121
101
80
76
93
72
117
91
88
88
88
131
120
109
95
80
72
69
163
58
80
80
78
85
110
74
69
117
120
80
89
80
54
140
87
96
58
93
68
89
109
69
101
96
99
80
88
119
85
99
166
99
99
126
122
122
120
106
119
79
129
117
111
93
130
130
106
109
156
96
174
110
133
99
175
109
93
197
87
70
76
175
130
132
91
102
110
136
112
126
80
95
119
119
87
87
115
114
174
88
156
94
94
117
104
76
128
90
80
80
133
102
128
143
69
69
96
87
127
99
106
69
114
92
69
115
89
131
108
99
101
78
94
87
67
80
109
119
99
123
94
147
111
80
112
110
122
144
148
94
106
80
109
80
113
72
95
112
151
125
131
151
175
120
72
69
119
112
175
80
90
93
123
69
76
78
123
76
154
87
128
91
96
76
67
91
100
94
52
162
99
80
89
89
69
74
100
69
69
131
106
80
129
119
69
121
104
90
72
156
109
103
80
118
78
154
94
95
119
94
102
69
102
101
120
123
80
78
78
80
74
76
154
87
131
78
119
78
122
96
89
154
140
134
138
120
137
80
160
131
87
91
113
80
118
94
67
103
163
103
89
78
80
69
74
76
119
104
115
76
197
92
156
80
123
89
80
140
91
91
56
80
107
94
134
93
120
163
87
128
72
89
112
103
101
119
151
83
74
69
115
72
131
72
94
89
69
85
72
133
106
129
109
195
80
117
120
113
128
87
80
80
88
89
80
103
134
72
103
130
99
80
128
175
116
87
69
54
89
118
104
75
127
80
88
136
136
69
142
75
109
90
99
87
104
119
52
90
78
99
128
119
140
119
125
101
154
89
80
137
174
72
80
95
120
155
197
118
109
110
69
136
106
80
98
149
76
132
114
119
111
107
56
78
175
115
69
164
130
80
132
71
153
128
105
95
69
76
87
126
76
117
117
72
131
119
134
80
72
134
143
100
119
93
85
59
109
76
175
87
69
80
99
87
137
80
124
119
93
151
120
112
114
120
80
99
156
76
69
69
107
106
103
100
102
111
69
133
99
88
128
120
160
94
136
114
100
86
94
136
69
125
201
132
107
146
109
150
95
145
131
114
187
115
117
69
150
109
72
175
128
120
156
175
136
175
80
87
76
80
76
69
78
99
87
113
124
87
129
78
80
72
69
106
69
80
114
88
199
96
110
90
109
80
80
104
72
52
112
111
129
112
72
94
98
87
112
87
154
155
105
165
195
80
76
137
121
156
89
120
80
78
146
88
118
80
119
102
121
117
78
76
111
104
94
107
106
117
78
133
156
100
88
54
120
97
137
85
148
88
78
88
69
69
121
114
140
154
95
118
147
110
100
86
91
143
133
72
87
80
111
96
107
148
80
94
87
79
76
80
78
80
110
109
101
87
120
94
107
111
150
69
172
175
94
78
76
112
87
134
110
120
78
76
54
138
76
113
80
102
81
78
43
121
114
69
137
80
140
136
79
67
119
107
101
87
95
94
171
101
121
134
101
115
80
80
91
89
96
100
119
98
137
72
150
131
102
69
110
80
80
121
88
89
80
78
101
80
72
80
144
100
80
99
87
69
147
114
69
120
80
52
78
156
94
60
164
103
136
80
128
91
89
156
113
91
109
78
69
125
92
148
87
72
103
124
174
76
88
123
122
120
69
112
80
113
85
146
98
120
63
111
121
107
88
89
155
93
114
89
89
156
119
88
83
96
120
96
94
87
85
88
87
120
197
80
56
143
129
78
120
119
140
96
151
99
95
74
119
69
72
117
137
111
89
75
89
87
136
80
80
114
94
163
134
104
119
52
119
120
100
148
94
93
83
83
112
142
99
128
147
183
126
90
151
119
89
93
117
80
175
120
78
154
80
69
98
76
100
175
87
113
128
151
92
124
119
114
154
125
130
89
118
109
52
114
104
96
117
120
87
87
120
91
119
43
76
115
148
85
120
76
113
136
134
109
140
68
80
131
120
94
78
92
76
122
169
87
85
83
119
119
120
100
108
69
69
109
110
71
131
183
131
76
80
155
98
119
156
113
87
109
128
125
93
87
115
146
135
69
119
95
76
80
163
92
106
104
94
130
199
109
155
107
106
145
151
76
96
146
93
151
187
89
145
199
80
112
121
111
122
128
94
102
69
52
102
78
146
83
103
90
87
106
87
78
144
107
93
136
109
87
119
201
124
69
106
69
76
101
76
154
197
88
85
136
111
87
114
155
156
83
175
116
112
87
90
119
76
80
69
119
78
98
154
87
197
114
54
80
80
175
126
112
121
128
117
119
154
112
113
115
127
163
122
87
175
117
117
90
76
123
123
119
113
87
101
87
106
130
87
89
78
151
128
89
94
94
119
69
80
104
106
87
134
110
80
104
122
153
69
185
143
101
183
164
82
93
108
69
87
56
94
69
96
110
145
100
80
98
96
80
122
111
101
107
101
136
107
78
136
144
120
107
87
110
119
120
119
76
96
119
87
131
80
88
80
131
136
75
67
160
119
148
124
155
114
140
69
127
165
106
118
141
75
82
80
125
120
134
100
141
52
100
148
85
119
80
88
120
69
92
67
80
134
175
130
107
89
104
80
76
104
154
163
133
140
76
80
96
80
145
87
87
101
175
134
76
52
112
84
69
105
87
119
114
74
106
106
80
79
163
75
136
56
113
145
118
88
100
87
87
155
94
93
149
118
128
118
94
74
78
101
80
119
113
69
87
187
101
83
99
121
101
88
78
110
150
140
94
151
104
89
114
95
74
88
147
88
76
122
97
80
104
169
120
78
154
87
63
127
123
76
137
144
121
87
99
133
144
146
115
52
79
69
163
143
134
129
89
136
80
76
87
78
107
87
148
92
104
100
105
85
89
91
151
76
95
140
175
78
72
109
69
175
80
177
104
125
80
72
88
110
94
69
80
156
156
152
113
134
136
54
80
151
137
76
72
117
128
163
134
148
102
112
112
69
111
91
151
87
80
76
69
96
89
69
78
104
133
104
77
72
107
87
73
146
93
94
88
119
102
87
88
91
94
80
80
72
87
87
175
114
141
74
58
131
76
137
154
131
89
96
104
136
119
85
89
78
104
91
112
107
134
128
91
91
96
154
134
72
131
120
117
126
78
93
138
80
109
87
93
69
67
107
104
159
134
175
69
69
112
114
187
89
80
118
119
126
87
104
118
128
135
111
87
112
90
94
94
110
69
76
80
146
107
123
96
148
154
118
107
109
104
96
175
109
92
74
87
87
56
78
74
78
98
120
127
121
97
134
76
157
104
143
87
121
121
118
128
80
138
100
56
80
78
154
85
69
155
78
89
176
126
69
88
87
99
94
87
98
131
93
127
67
87
112
143
124
143
87
107
137
140
128
94
130
115
103
83
80
140
112
119
87
112
87
155
114
106
69
87
121
107
107
80
95
85
52
107
114
121
69
137
80
121
128
85
69
109
78
114
123
106
88
146
107
106
105
154
78
106
110
119
104
52
113
90
87
112
151
81
110
128
93
103
80
94
83
104
137
120
113
95
109
72
94
134
81
88
110
89
80
72
185
80
102
80
106
127
89
80
72
91
74
134
156
76
72
109
78
128
101
101
100
76
99
69
150
80
107
138
87
72
63
80
119
106
100
117
80
145
131
131
69
120
98
96
119
128
175
129
88
80
57
92
57
107
107
76
64
144
120
89
87
80
69
156
119
171
109
110
69
111
169
133
80
94
163
119
69
134
104
94
69
153
119
78
151
110
106
169
89
144
93
97
88
134
96
117
80
87
111
87
89
121
56
133
129
114
101
78
120
104
115
175
75
91
121
69
111
76
128
131
148
87
69
145
153
74
78
96
119
109
80
106
54
113
96
115
143
145
115
93
97
96
87
175
89
119
76
88
127
80
117
154
86
136
163
74
75
80
89
128
100
93
72
132
85
119
151
99
156
154
76
80
76
69
118
103
97
115
80
106
154
119
99
145
68
151
69
104
101
76
155
175
87
107
107
80
91
154
163
104
123
80
98
89
163
131
101
109
132
68
90
175
126
110
153
154
100
154
155
94
102
135
134
119
69
96
80
117
154
78
78
129
131
104
76
87
88
76
101
164
107
97
169
124
128
56
78
99
128
136
87
85
69
80
60
107
124
88
115
88
131
69
76
183
133
88
149
93
91
101
95
69
102
78
113
78
119
119
120
94
115
107
69
64
142
117
87
154
163
128
96
128
94
87
156
127
56
107
128
89
134
111
80
67
91
56
123
122
78
175
120
58
98
107
89
99
78
119
56
69
109
127
80
167
80
164
136
121
156
175
122
113
134
54
74
119
79
116
102
115
76
76
107
87
115
117
123
76
78
76
78
142
109
126
134
78
120
125
91
88
78
119
130
140
128
140
82
89
74
92
110
69
122
72
69
96
99
76
113
99
94
128
80
69
78
76
132
80
101
131
154
87
104
145
69
134
134
95
117
107
96
105
113
80
101
78
78
80
145
99
55
59
98
119
119
93
96
151
69
100
106
93
154
103
114
69
74
87
87
78
119
197
78
74
136
106
94
121
107
69
120
122
121
91
136
78
64
175
127
83
87
87
107
114
88
80
93
82
101
154
94
76
69
125
113
134
94
76
197
163
118
128
85
76
122
107
154
110
175
119
118
128
94
66
87
120
103
110
134
56
69
78
197
74
119
201
69
145
96
107
69
75
78
69
109
123
99
69
81
156
132
153
88
74
76
76
118
99
124
69
69
110
87
72
109
100
110
71
54
117
110
93
120
144
91
80
164
89
137
72
86
91
85
140
146
143
85
134
95
150
102
138
96
80
93
80
147
69
131
88
106
85
99
104
80
76
69
80
121
175
72
69
127
80
106
187
113
138
89
87
128
80
89
106
88
87
76
87
127
69
69
156
78
67
69
89
92
113
143
120
84
160
78
134
76
107
119
69
201
88
104
113
87
111
197
129
80
119
119
85
87
80
79
87
155
106
88
106
69
80
87
154
99
87
106
89
87
121
109
123
113
73
147
56
78
156
87
123
145
101
136
110
69
69
69
89
93
107
80
109
69
69
120
151
158
138
80
109
134
134
152
145
69
87
113
69
69
80
59
72
94
107
144
113
100
175
76
140
92
140
76
99
145
80
136
136
126
175
109
136
127
119
76
56
119
132
121
128
92
100
88
109
69
94
120
101
76
154
96
150
80
111
87
113
154
111
148
83
108
85
91
72
140
72
80
114
145
69
89
109
89
72
69
72
88
85
129
136
111
80
117
66
122
175
146
104
88
174
127
88
154
128
59
106
140
99
87
132
117
109
131
94
183
116
69
129
112
156
127
110
107
69
80
122
106
128
140
155
76
133
113
113
120
125
74
162
116
131
94
121
155
100
132
123
90
104
79
87
112
87
87
124
80
134
163
119
119
86
121
134
145
117
154
131
69
147
101
105
74
143
119
100
80
119
120
122
122
80
69
99
59
124
101
104
120
92
96
76
127
119
93
88
119
69
69
94
111
109
131
69
80
155
98
113
100
89
122
99
134
76
80
82
101
175
98
87
99
93
127
88
94
80
103
119
151
145
120
111
69
119
72
137
140
126
120
80
122
80
76
154
151
134
107
80
136
104
77
113
152
122
79
160
97
91
80
106
104
126
134
78
197
117
116
104
89
134
107
132
92
80
107
114
89
119
78
113
80
88
156
131
80
78
80
100
106
169
150
148
72
136
71
175
100
119
80
107
96
95
80
128
78
69
120
144
120
104
85
101
110
71
124
140
154
74
88
137
87
113
80
72
90
111
72
82
80
74
87
90
80
43
145
115
80
67
120
83
119
80
113
106
69
99
80
99
120
104
93
127
122
163
115
91
132
74
150
146
96
80
72
94
72
115
134
80
119
120
102
83
98
101
136
112
113
85
87
78
119
78
120
117
80
154
119
126
106
135
93
87
156
151
131
89
110
88
113
134
96
156
79
69
175
69
120
80
114
109
127
80
115
146
95
106
111
189
131
110
83
140
101
52
120
106
87
99
100
88
107
87
111
104
76
56
94
201
88
115
76
162
54
69
144
175
131
181
123
82
94
78
107
88
80
69
130
88
69
109
69
156
72
120
96
88
54
119
106
107
116
72
183
99
69
140
106
88
144
76
143
164
120
118
136
166
78
80
113
69
117
121
69
80
211
121
69
69
119
99
95
125
79
120
63
93
128
120
112
92
131
104
118
109
134
110
120
116
80
76
164
120
112
76
120
80
101
89
154
119
72
119
118
80
69
69
69
69
151
104
112
88
111
106
87
121
91
69
109
121
87
133
118
104
99
80
96
80
119
80
78
69
131
125
92
94
72
130
88
115
74
107
156
94
175
136
145
134
106
101
137
89
106
107
175
128
134
126
89
80
89
105
80
80
127
87
81
101
78
112
117
127
99
151
121
110
131
106
140
121
94
113
130
87
74
76
108
69
152
80
101
145
80
112
89
128
151
151
175
88
73
120
88
156
107
128
89
128
127
120
120
69
113
69
69
91
78
134
88
109
128
127
88
82
156
106
164
147
72
76
163
116
87
80
119
120
136
175
108
69
120
69
69
151
174
104
78
100
78
112
154
127
92
88
87
69
112
80
69
115
134
123
64
120
115
102
175
131
80
100
80
107
123
137
106
107
172
104
113
96
76
175
69
99
117
69
72
94
126
119
87
119
80
102
69
175
154
69
105
127
109
80
93
87
78
106
74
111
52
112
124
156
99
76
113
111
105
78
151
78
128
100
96
113
131
74
138
128
119
76
69
122
76
103
133
101
101
149
123
88
113
94
76
136
156
105
107
78
93
145
95
107
76
197
69
102
99
87
71
140
115
120
78
112
154
110
87
80
122
104
118
140
96
80
100
90
140
69
137
119
82
104
94
157
107
78
110
74
113
103
90
163
73
87
74
125
80
91
69
90
154
76
146
154
104
80
88
99
110
118
87
119
83
74
75
197
69
99
69
96
103
111
93
120
126
80
80
72
107
138
96
163
91
75
128
69
76
87
69
156
75
78
91
144
69
138
74
119
75
119
97
128
58
172
111
78
95
87
139
69
76
119
91
175
131
93
52
80
109
128
133
96
197
93
119
136
201
80
104
69
161
85
103
113
89
109
56
124
174
109
93
76
78
140
93
119
147
94
133
52
131
117
99
69
119
137
72
93
80
98
64
109
131
154
74
140
133
72
80
69
112
56
168
82
80
93
98
128
111
130
109
93
130
99
87
117
117
136
91
110
136
72
93
78
94
78
72
172
93
156
121
132
101
96
110
111
118
101
89
80
80
112
78
123
72
80
107
80
76
143
98
119
131
69
128
128
92
72
128
114
80
43
120
97
156
99
93
118
127
93
113
163
76
120
78
114
69
102
69
117
80
119
151
89
80
102
88
69
80
133
73
148
115
155
117
109
87
87
112
71
86
163
80
57
139
85
103
69
90
126
102
85
175
80
80
107
117
95
89
80
131
124
69
80
106
76
80
88
128
110
143
76
80
92
78
137
69
124
88
129
88
115
155
111
117
69
138
78
80
69
120
89
80
142
175
111
137
87
106
106
87
91
151
145
91
107
118
80
146
102
76
99
88
80
104
128
80
113
119
133
118
58
175
76
132
72
134
120
89
197
96
163
78
175
133
175
134
164
93
109
128
112
117
88
80
138
107
81
75
80
96
175
69
54
88
102
85
98
97
163
76
121
99
69
72
83
88
80
155
138
75
138
175
89
87
118
146
80
153
80
113
119
175
104
83
127
127
80
137
102
89
69
121
154
52
87
137
80
134
145
109
144
95
80
169
197
145
69
120
101
139
148
64
113
154
134
89
96
87
113
76
110
78
109
76
90
117
64
107
80
80
163
117
87
199
124
105
95
80
79
87
69
121
119
120
113
99
115
96
127
123
128
80
75
151
112
89
92
119
80
111
123
80
93
101
127
125
197
106
96
95
96
155
138
125
88
113
128
112
104
120
124
122
52
87
80
112
157
161
112
98
69
155
128
72
107
150
85
83
156
117
76
112
99
76
93
82
197
78
117
112
117
145
103
149
156
119
154
120
122
154
134
54
87
120
121
114
100
76
102
94
107
89
131
80
88
80
100
124
107
166
56
79
89
80
67
76
87
76
80
78
91
149
110
134
88
88
121
87
94
80
101
102
107
183
69
86
197
91
78
69
148
97
144
137
88
93
127
94
87
80
110
91
131
130
94
144
96
127
107
87
110
74
110
80
72
137
99
94
80
150
76
131
117
78
127
109
124
146
59
104
134
119
87
69
121
80
120
104
87
131
110
69
119
155
69
78
109
95
101
113
136
128
131
119
74
112
69
85
122
119
128
162
87
88
128
101
93
109
94
78
108
109
99
122
127
124
99
110
76
80
69
89
76
88
123
88
89
101
101
118
151
94
88
112
106
128
90
146
151
87
80
80
113
138
117
127
87
78
141
127
109
154
87
78
80
126
76
156
73
109
128
133
99
131
119
155
103
103
117
87
105
96
71
109
125
143
76
52
69
106
154
120
83
88
76
83
119
92
115
121
80
149
147
69
80
80
148
118
183
96
72
175
78
152
155
78
189
89
94
134
69
126
74
128
69
120
99
78
69
118
80
106
119
128
183
81
103
121
114
59
85
94
112
69
103
119
67
69
122
80
78
76
89
103
175
69
175
94
80
127
80
109
117
99
134
143
123
157
56
114
69
83
69
108
122
140
110
107
110
120
80
69
104
142
112
69
87
80
137
113
175
97
72
80
80
119
103
80
131
88
143
115
43
125
82
78
116
128
69
115
87
128
175
87
120
80
66
130
74
111
101
76
163
156
163
95
80
76
69
118
119
175
163
112
78
88
80
119
118
89
78
119
71
80
87
154
120
154
164
175
80
107
106
74
140
120
119
120
197
69
69
72
106
90
106
94
52
69
52
109
88
88
80
133
205
69
88
112
151
119
114
69
187
80
127
99
109
69
110
87
95
100
87
94
93
69
78
110
67
80
140
111
121
67
69
80
80
88
69
133
128
106
117
131
80
120
100
109
128
80
167
76
134
78
69
78
80
89
80
98
89
78
134
137
147
113
88
197
127
127
92
110
94
100
121
163
80
112
80
145
83
111
69
110
94
136
106
89
78
143
121
123
89
110
80
107
106
119
145
106
104
99
132
181
107
99
154
107
110
139
128
98
87
96
76
146
91
123
99
95
174
119
142
100
131
110
80
136
78
185
148
154
113
154
119
95
114
69
72
87
93
93
87
110
78
199
72
80
146
101
129
110
119
112
80
109
112
87
148
88
78
78
117
98
118
154
83
101
98
89
146
185
80
97
146
76
69
107
88
134
88
120
69
120
88
119
80
109
134
114
154
101
80
130
118
69
113
101
144
113
103
87
90
90
74
78
89
117
118
104
76
80
124
78
132
103
117
54
119
197
109
80
77
96
111
174
101
86
131
115
89
89
80
100
76
78
125
112
99
118
80
120
87
131
128
80
149
93
140
151
201
76
119
95
117
87
140
122
72
101
109
94
99
72
56
80
80
80
104
117
87
103
151
87
80
80
80
87
138
74
134
145
106
140
88
76
69
82
80
80
101
43
80
144
157
113
94
104
136
175
110
93
137
80
83
96
109
166
87
72
117
94
52
69
99
174
111
121
80
43
120
89
163
97
69
94
174
134
129
131
99
131
143
87
136
144
93
107
136
144
128
99
76
99
146
64
69
175
76
159
103
72
99
146
128
117
80
101
88
69
83
106
104
147
56
80
76
69
56
76
113
145
80
100
126
117
69
119
119
157
80
197
106
69
136
128
80
89
93
80
99
56
154
140
78
149
99
80
87
93
99
52
121
99
146
69
89
128
68
80
104
78
78
113
145
72
69
69
199
145
78
88
94
80
120
98
80
154
120
124
80
69
127
78
147
56
87
96
69
89
150
120
95
118
76
169
76
69
87
87
127
54
106
88
160
107
78
90
101
107
67
66
128
176
56
175
109
104
78
113
69
91
115
128
155
126
138
87
80
119
89
107
112
136
100
95
143
147
105
78
78
87
120
119
87
76
76
154
113
76
175
115
134
110
119
201
139
115
119
88
78
69
109
131
140
131
118
96
112
160
76
126
94
163
119
140
109
107
85
103
136
69
102
69
104
136
117
119
69
128
80
110
69
127
78
91
154
87
88
159
66
104
156
87
101
117
112
69
69
89
120
93
72
146
93
60
113
99
59
113
96
66
82
118
80
175
192
128
107
128
119
121
89
153
96
119
78
94
101
107
133
80
74
84
102
104
80
109
136
104
137
69
129
78
69
119
128
96
120
67
96
120
74
72
87
157
72
137
80
89
56
80
88
130
69
175
91
117
78
76
119
69
87
69
69
69
129
107
122
110
80
67
136
133
118
94
175
142
151
74
121
85
80
80
80
123
78
107
91
154
100
106
103
103
115
151
80
80
112
117
87
89
154
113
121
80
94
87
80
115
98
91
52
68
112
95
87
120
88
137
119
127
110
64
106
95
69
59
117
128
120
69
114
109
71
69
136
116
98
82
98
89
69
59
79
134
140
69
56
76
175
79
80
175
154
79
183
100
121
121
72
119
95
131
110
78
78
69
105
118
88
94
85
88
93
101
89
154
156
124
134
89
94
111
142
111
144
107
74
69
163
92
156
69
83
87
72
75
88
132
113
94
165
56
119
103
89
148
128
77
140
90
76
89
89
113
144
87
92
131
155
69
131
89
87
99
83
187
80
72
134
143
79
69
91
87
56
119
99
107
78
183
110
130
131
121
69
104
69
93
102
121
99
82
92
160
126
87
118
128
156
87
74
113
123
110
140
100
94
80
147
110
73
128
78
99
130
74
118
110
101
103
112
131
99
83
139
87
87
126
117
87
110
125
69
119
69
131
132
106
97
174
121
119
80
106
110
76
140
74
69
76
127
137
106
69
80
99
123
116
137
124
113
193
43
110
138
87
69
104
69
89
87
136
142
117
80
115
104
183
52
80
69
115
80
69
80
78
74
52
109
85
102
140
175
130
69
76
69
78
93
69
155
121
69
136
113
95
154
83
91
154
154
80
107
99
69
69
119
155
99
164
72
131
78
95
69
109
80
79
76
131
133
88
130
127
119
74
106
119
121
76
88
115
115
101
128
110
89
134
132
56
80
117
106
78
79
102
60
140
104
75
120
104
72
76
69
69
147
72
128
140
80
163
136
131
100
95
99
185
88
127
128
107
175
175
118
69
91
99
164
133
69
107
103
94
69
111
143
154
89
185
96
76
137
175
120
99
88
138
106
69
80
107
152
69
148
69
89
148
124
89
88
154
121
147
156
121
118
69
156
102
169
107
107
117
164
69
106
52
99
119
118
101
54
146
113
123
107
89
126
89
80
121
80
113
74
90
88
98
76
103
120
110
87
130
119
86
106
104
87
119
108
110
88
80
87
52
112
72
94
69
88
141
131
76
101
134
142
113
69
87
93
74
140
98
120
115
104
155
78
91
145
107
75
100
91
80
209
113
175
93
76
156
117
99
106
79
69
80
109
69
78
87
140
119
80
129
172
111
112
93
64
140
124
78
80
102
113
69
85
121
72
80
117
89
99
59
145
103
85
76
90
117
160
113
88
119
78
125
69
128
137
115
104
76
78
94
69
78
138
109
104
163
114
93
124
120
109
69
101
100
72
80
80
95
104
110
80
120
119
72
119
107
69
76
117
123
100
166
87
87
87
94
130
72
104
175
175
80
87
74
93
80
144
87
119
125
69
89
78
83
89
143
128
72
146
131
115
102
128
145
144
102
142
99
115
80
128
134
199
117
69
186
91
69
75
112
104
67
136
69
93
78
120
109
80
154
69
80
156
69
72
89
119
166
76
87
69
134
130
126
80
117
85
88
110
59
119
119
69
93
119
120
87
87
87
94
80
96
120
117
155
80
97
52
107
69
88
110
87
74
132
128
163
88
80
69
69
121
131
89
76
117
136
94
80
129
118
134
78
132
119
93
119
91
76
175
90
96
175
72
120
89
85
69
121
69
80
78
175
155
113
109
160
145
175
163
104
72
76
80
90
87
75
143
104
69
122
88
111
87
110
134
76
154
117
156
113
87
136
109
100
105
93
80
55
147
87
80
150
94
101
127
80
76
78
137
83
87
69
80
69
80
99
101
145
89
99
83
155
155
87
94
80
99
131
63
108
129
110
148
59
100
69
197
67
134
126
112
152
87
106
80
80
104
121
112
76
136
116
133
99
76
119
156
89
52
110
149
143
128
80
201
120
69
69
151
64
88
112
87
101
64
107
98
102
131
104
76
80
110
145
121
115
89
80
128
120
117
90
118
92
88
117
69
76
155
87
69
69
91
110
94
76
88
83
128
91
121
143
72
69
87
80
113
117
129
89
74
126
78
117
82
100
54
89
80
80
103
78
87
88
128
103
80
87
85
87
140
69
118
91
112
78
120
113
175
106
132
88
132
118
133
69
125
96
91
117
73
131
106
80
80
106
131
124
138
103
83
68
140
80
96
83
76
69
69
154
119
76
85
125
146
103
102
87
83
119
88
78
175
127
156
78
104
127
69
128
78
155
154
106
118
145
101
121
78
109
87
85
99
114
85
94
103
151
108
76
130
107
175
80
113
87
121
87
110
110
104
80
104
124
125
87
155
80
76
132
156
80
94
80
104
111
127
76
110
80
80
128
69
130
175
147
78
87
93
115
87
76
136
104
152
75
78
78
124
78
99
123
69
80
80
78
107
68
80
136
83
74
129
89
151
104
87
128
78
121
109
127
155
88
87
74
76
126
78
74
122
78
104
154
107
134
74
151
131
137
128
80
136
78
69
117
151
102
80
154
105
112
87
112
91
205
165
94
107
136
80
80
56
147
126
128
83
109
83
66
78
120
156
69
140
72
96
175
107
69
109
78
80
56
110
155
134
107
120
83
105
69
104
80
91
89
146
108
137
175
137
113
80
78
102
128
175
80
156
121
140
209
113
78
80
123
80
80
94
119
131
89
84
56
119
88
120
112
93
80
78
106
131
52
142
109
104
154
80
69
117
69
104
69
112
146
58
110
87
120
134
151
142
69
69
109
136
112
117
69
87
98
102
115
132
126
69
123
78
80
175
114
121
128
80
80
128
175
99
101
165
120
163
128
80
137
80
153
87
101
89
106
69
110
148
120
144
109
102
89
98
121
74
80
64
126
78
142
142
134
119
169
80
122
197
118
72
117
87
156
78
80
103
132
80
197
154
197
94
117
136
151
104
175
129
109
120
126
99
106
117
146
56
109
132
106
101
118
89
116
111
106
96
80
109
126
109
121
148
93
128
71
136
76
94
112
88
145
121
87
71
135
100
88
69
151
148
116
100
72
162
126
175
130
78
154
69
130
154
158
106
121
102
128
69
83
89
117
96
76
108
112
123
80
80
99
96
157
99
118
69
181
110
72
110
137
80
127
69
132
76
78
154
94
78
126
101
143
113
136
197
78
76
112
85
52
74
111
78
119
96
80
78
76
69
162
87
87
69
74
163
117
76
69
112
121
76
144
93
119
156
120
80
80
110
163
119
103
76
103
131
94
80
87
107
80
57
91
113
151
83
116
127
132
78
87
121
69
175
136
119
112
121
132
152
134
78
119
121
106
160
76
80
67
147
90
139
174
175
88
118
120
119
78
119
110
131
69
69
146
68
89
146
140
106
129
131
78
80
111
80
69
134
72
80
109
113
107
80
104
136
137
107
154
109
88
104
89
154
85
120
93
79
87
175
83
111
87
69
80
131
120
125
80
120
114
78
69
112
99
89
120
115
78
113
113
175
87
94
86
56
123
69
78
80
89
123
174
80
69
119
79
87
120
80
72
90
88
136
72
136
95
148
69
162
149
91
178
80
80
89
119
56
72
81
128
127
176
118
145
160
132
80
156
103
106
131
91
80
66
69
119
172
154
175
69
145
69
78
123
148
133
109
146
69
80
74
112
125
140
73
91
87
122
110
110
118
120
72
120
88
100
140
72
102
69
107
134
79
98
80
74
134
76
101
52
69
133
127
112
117
94
156
136
156
99
120
104
94
155
110
104
60
134
69
110
131
78
80
154
69
85
133
99
101
89
96
119
87
74
107
97
174
69
80
113
110
78
129
80
154
140
140
119
69
94
91
154
87
102
113
115
154
69
145
99
80
88
69
137
90
80
136
111
136
118
137
110
110
121
137
91
109
76
76
104
120
98
87
104
134
119
87
154
86
93
108
80
107
80
80
109
79
143
107
120
150
112
75
110
175
175
76
107
109
160
80
121
82
80
132
88
91
123
100
80
144
100
118
76
96
130
67
102
110
87
91
101
87
107
87
211
87
89
197
101
80
117
95
106
197
69
156
118
94
175
82
96
119
91
107
120
76
96
154
120
138
91
91
134
76
76
131
201
87
81
69
128
103
78
121
80
145
129
93
75
128
76
69
116
134
88
102
76
91
99
107
154
78
107
87
43
83
52
104
175
72
69
132
80
80
154
80
140
69
175
104
87
112
123
103
99
131
119
87
79
148
125
76
94
145
94
138
109
96
211
136
80
197
80
69
80
76
201
127
104
119
94
112
93
87
57
131
69
87
126
143
93
120
131
88
87
80
87
76
80
151
99
78
74
127
134
110
88
119
152
76
138
91
69
78
78
113
90
101
80
96
126
161
92
119
88
94
134
115
107
120
69
162
92
76
91
107
113
88
134
80
119
178
78
85
78
94
91
146
85
87
112
69
43
87
130
99
119
154
89
128
80
66
175
175
83
132
112
142
80
110
88
80
152
140
117
87
78
101
199
80
115
130
85
107
134
114
76
114
80
120
104
149
149
110
100
89
106
175
154
117
69
114
95
107
107
125
122
175
87
120
175
172
94
87
119
114
69
93
87
119
99
110
69
110
102
114
131
80
74
119
111
165
120
107
104
87
117
125
104
87
78
69
121
95
98
80
110
111
136
88
107
128
104
76
80
128
119
134
175
118
74
109
120
116
66
122
140
74
120
102
80
148
136
106
126
143
91
87
87
148
80
120
122
164
154
110
88
128
71
117
69
111
114
80
80
107
78
99
119
122
67
150
80
175
80
129
80
89
107
80
66
131
120
160
57
123
80
78
107
121
89
110
78
88
101
69
110
119
89
110
107
80
126
74
98
120
127
154
117
80
136
104
118
144
72
112
69
139
80
122
154
140
155
140
109
87
104
102
87
69
120
56
72
80
131
123
145
197
140
78
156
145
59
107
78
127
119
119
91
154
76
87
128
110
100
175
72
137
154
76
78
104
175
76
155
128
118
109
70
87
106
106
80
119
99
155
120
119
131
88
102
78
104
144
87
87
87
110
96
105
88
96
143
74
80
90
94
114
154
106
118
89
114
96
111
126
201
107
119
121
131
107
147
136
132
69
152
154
76
175
117
113
99
110
90
111
80
102
104
54
76
80
107
88
74
88
88
127
80
78
87
107
161
125
96
94
69
83
102
110
76
97
120
120
140
69
131
104
100
81
74
91
119
94
113
76
69
151
162
72
134
69
172
140
109
121
107
169
85
88
107
119
87
142
113
130
69
113
88
89
76
120
104
80
80
102
118
156
135
110
69
101
128
119
110
131
112
136
113
145
87
93
80
52
80
126
123
93
115
94
154
56
104
112
154
78
98
124
69
135
117
80
110
72
69
87
169
96
71
119
78
109
88
43
94
119
131
78
60
163
107
72
106
203
97
128
66
175
80
94
156
54
154
156
155
83
76
100
112
94
87
87
95
160
171
144
69
140
76
69
80
87
109
114
76
132
80
85
107
151
131
66
76
126
121
80
104
69
120
76
149
142
88
71
127
96
137
95
151
129
154
120
110
134
80
156
110
175
78
112
87
108
56
154
155
99
111
134
119
118
98
131
109
94
112
88
72
100
164
162
131
106
87
76
102
92
175
106
119
66
119
181
94
151
88
69
113
141
104
153
111
126
80
134
147
87
120
151
89
133
80
124
131
148
80
175
148
120
69
88
101
109
80
95
109
140
102
128
110
118
120
100
99
96
98
74
119
185
72
113
122
87
138
113
69
75
112
156
97
56
89
152
132
98
99
113
69
183
125
54
145
87
114
76
114
175
107
119
131
87
80
107
87
80
64
122
80
94
120
80
128
134
111
154
119
124
80
80
101
122
163
107
88
103
148
94
72
69
64
78
111
128
80
101
69
110
131
87
80
69
89
112
80
74
127
80
103
80
72
89
91
146
154
107
175
119
113
76
138
100
88
93
127
110
120
102
87
139
96
114
154
59
197
94
134
138
101
129
87
103
72
80
134
81
119
72
121
76
66
148
160
76
136
116
128
151
136
133
121
110
109
155
175
80
80
69
160
113
106
91
120
88
119
135
80
69
136
78
112
69
93
124
94
59
107
119
80
99
138
72
78
175
151
78
128
102
52
158
69
128
64
89
142
131
87
89
91
87
107
75
94
94
113
119
87
80
151
69
134
102
80
82
87
87
140
175
107
134
69
94
66
113
83
80
102
107
119
121
69
114
69
91
119
72
125
113
95
130
87
80
197
88
99
78
82
110
80
110
102
156
146
112
110
154
123
128
103
94
76
69
114
98
169
69
87
144
109
52
99
123
131
93
69
80
76
107
104
88
99
69
80
109
137
88
156
67
104
76
116
80
113
122
52
113
134
154
72
94
88
101
154
80
80
106
100
56
136
70
85
175
183
76
76
71
88
110
119
83
106
131
128
94
90
140
80
90
76
81
115
117
87
107
112
69
76
102
90
91
87
146
80
104
125
78
80
92
76
87
69
69
121
128
76
101
148
74
151
77
80
89
109
163
137
140
124
152
126
197
145
120
175
69
82
120
121
87
127
120
80
128
144
120
117
91
114
111
69
80
117
81
81
76
131
119
124
87
66
78
80
156
78
85
126
78
137
75
81
197
89
93
110
94
80
138
128
89
121
113
111
113
123
120
69
134
118
101
107
142
118
88
174
54
89
90
150
152
76
87
127
96
87
59
80
87
106
87
78
89
139
96
140
78
120
80
113
87
89
102
69
119
91
174
100
80
120
76
106
67
101
123
107
159
119
120
109
87
91
72
120
126
56
128
130
87
140
109
57
152
119
101
91
134
109
91
94
150
120
107
119
69
112
128
119
131
87
138
114
119
78
69
136
76
107
88
125
80
163
146
73
110
102
94
119
136
145
148
101
87
88
115
80
137
72
119
94
132
59
98
131
122
132
172
91
99
58
175
116
101
87
175
112
114
133
107
127
117
131
109
131
94
87
94
99
113
165
117
69
99
113
67
76
89
104
89
102
107
85
76
69
89
96
69
58
156
88
94
125
144
110
76
132
131
110
113
104
109
117
117
76
96
74
117
160
164
105
72
76
120
110
119
79
143
110
94
148
91
80
87
156
87
172
129
69
111
156
175
56
78
156
140
115
120
80
94
141
80
101
122
120
52
94
87
115
80
87
54
76
119
128
104
88
106
131
54
121
91
128
145
136
124
146
101
112
109
80
90
80
138
120
183
101
140
175
96
109
80
87
80
102
104
118
100
119
131
72
106
71
104
99
85
82
146
69
151
126
94
69
138
107
154
185
99
80
162
76
135
109
87
128
154
80
66
80
128
143
79
52
100
120
103
119
87
130
155
93
163
78
114
107
112
130
93
119
115
98
98
76
99
154
109
120
119
80
101
142
119
128
156
94
104
76
66
69
99
89
183
136
67
87
112
121
83
76
120
93
131
69
87
121
91
99
69
137
66
80
114
99
134
69
94
119
83
69
98
94
197
128
134
72
80
175
153
172
150
78
80
69
89
121
69
110
136
145
89
121
78
131
136
87
87
87
142
80
119
78
115
129
93
130
85
110
117
154
79
137
115
127
154
151
109
140
131
120
110
100
119
101
128
105
87
123
128
56
69
89
154
85
94
120
120
99
109
155
79
69
69
99
101
145
118
87
81
95
87
91
140
92
98
94
112
119
69
88
96
80
123
164
80
99
80
104
88
144
57
113
87
73
107
100
115
87
106
69
93
78
93
89
136
143
137
101
106
94
82
99
109
72
120
54
119
52
68
120
89
107
146
111
120
175
109
69
54
128
89
124
155
112
114
128
125
80
109
197
80
67
145
148
136
101
109
72
140
72
119
112
75
156
66
66
99
154
80
101
93
117
69
102
78
89
89
150
87
69
87
69
76
67
80
112
160
68
100
164
93
118
80
106
83
120
145
77
69
107
111
103
95
75
43
88
69
91
69
80
107
136
54
68
117
126
80
117
110
76
82
80
104
119
80
197
74
88
131
82
112
112
154
92
110
114
80
101
69
87
175
96
69
43
80
88
80
107
69
88
156
89
88
163
80
91
87
118
154
89
165
127
154
110
56
75
76
100
94
69
67
143
114
69
107
148
69
80
90
100
67
124
138
197
69
87
140
87
119
154
142
115
59
78
93
133
105
131
175
125
106
103
129
88
92
175
107
154
96
109
130
102
112
100
104
69
123
134
80
56
130
124
88
119
101
113
92
69
91
131
132
134
185
106
69
81
123
119
80
69
165
80
59
155
100
120
52
154
110
78
175
80
141
59
107
135
93
163
52
106
69
94
129
113
78
138
93
131
76
138
97
110
69
148
69
69
87
78
80
151
54
73
119
121
104
120
78
134
96
146
187
90
102
88
94
119
72
78
71
124
94
183
87
165
197
156
112
72
69
69
147
122
87
112
69
113
197
83
69
111
76
140
89
138
85
175
76
69
69
175
154
94
165
123
113
85
93
93
175
96
96
80
72
99
113
144
88
110
119
146
134
136
148
125
87
99
104
69
119
78
199
94
112
69
107
100
76
93
130
90
107
175
128
174
88
104
80
94
76
69
76
72
80
120
118
163
80
109
112
120
119
80
139
159
66
136
73
150
72
148
79
154
82
140
94
160
215
78
109
80
117
148
106
120
109
94
110
113
156
120
121
119
119
69
138
77
88
76
141
143
76
197
85
126
115
115
80
100
80
156
120
69
76
112
117
136
136
99
117
69
83
117
155
89
133
128
67
106
106
99
143
131
116
147
107
175
128
80
129
99
174
121
93
154
99
119
93
81
69
88
99
119
69
80
156
127
102
124
82
76
76
128
78
107
119
43
172
175
134
96
119
80
80
80
99
118
123
131
122
117
93
126
109
120
142
113
99
143
69
80
80
111
69
99
69
152
98
107
131
183
60
98
123
120
136
128
87
78
85
88
120
54
80
133
69
113
80
142
94
128
76
103
76
80
56
80
78
109
69
153
91
99
80
54
88
128
52
80
146
136
118
69
154
76
109
126
104
127
126
140
78
143
136
165
131
142
74
80
183
89
80
122
79
120
69
69
114
102
88
120
87
101
131
91
54
142
136
129
119
93
172
127
94
101
128
76
79
99
78
117
80
131
115
117
80
87
110
87
64
109
131
122
113
119
91
78
156
143
80
69
87
175
91
64
88
148
116
107
126
90
87
120
164
150
69
117
107
112
125
69
128
197
89
89
113
187
98
145
109
101
146
150
121
151
104
117
175
101
76
130
112
80
80
110
94
93
80
102
80
120
128
89
114
101
118
94
119
120
69
110
136
119
109
147
131
141
119
164
72
109
91
104
75
87
60
52
140
113
87
80
110
115
106
143
101
137
78
120
134
82
110
93
112
107
119
56
131
156
117
148
109
107
144
162
134
101
90
89
99
151
119
91
106
154
88
136
110
87
120
80
144
112
88
87
66
128
87
109
154
83
69
69
87
110
89
175
89
110
78
74
107
75
69
69
111
103
95
109
76
131
119
91
151
119
132
128
69
107
78
155
87
101
131
94
127
111
94
175
102
143
175
76
128
64
130
87
154
126
87
87
87
80
151
69
89
109
80
69
78
52
104
76
95
128
116
115
133
175
118
69
138
87
121
175
197
123
52
86
101
80
155
105
78
87
175
145
162
88
69
54
56
87
96
73
72
76
74
87
119
119
80
115
131
52
80
88
187
141
78
58
106
154
115
43
176
80
96
152
94
76
132
103
106
154
69
63
67
140
104
88
102
80
128
87
80
105
131
185
117
82
56
144
96
103
122
157
127
120
69
120
89
69
92
114
85
80
87
133
94
99
127
148
126
87
149
87
107
121
118
119
80
102
130
72
144
74
102
120
147
87
151
109
147
130
145
147
175
129
90
138
88
102
128
56
91
104
118
79
104
87
80
92
80
154
151
110
94
110
84
154
80
146
116
98
85
74
89
96
129
121
131
119
155
73
129
128
94
131
80
115
128
69
87
120
80
128
80
110
78
69
105
69
91
60
78
102
154
80
80
126
80
94
129
87
130
115
117
86
139
119
99
156
96
106
133
126
99
98
69
154
80
132
80
134
112
85
80
69
92
88
119
74
87
149
76
109
87
133
113
93
94
135
80
136
80
172
76
114
127
87
89
164
131
105
123
88
127
76
107
94
160
80
75
131
58
135
80
78
80
76
151
80
80
100
127
69
99
109
154
66
101
119
87
102
120
120
139
88
107
69
85
175
111
80
175
85
80
104
88
78
112
130
67
90
94
119
102
87
127
104
94
80
119
175
80
175
113
101
106
87
147
72
88
96
175
95
88
161
80
100
123
69
124
143
109
109
89
88
88
120
144
80
107
103
75
128
91
87
87
60
165
90
146
106
128
155
109
119
84
83
109
94
104
103
120
143
87
69
87
175
81
52
95
136
72
69
80
87
156
120
117
74
166
100
154
85
134
123
80
140
164
175
75
91
104
123
87
164
122
154
140
99
175
109
119
80
118
153
112
91
89
72
155
137
118
89
78
118
80
87
88
134
91
99
72
89
95
69
154
76
90
76
119
89
104
154
124
164
95
159
101
129
99
79
175
121
151
54
94
119
69
103
114
99
143
118
119
74
66
121
122
66
89
124
131
69
69
120
80
114
80
54
140
69
95
124
89
75
104
112
164
100
115
106
83
90
147
76
127
78
144
151
120
175
112
69
106
151
92
127
109
89
106
113
71
84
69
72
107
104
96
122
151
64
110
88
109
162
119
69
80
151
76
107
80
87
52
69
78
102
69
137
52
107
119
80
104
131
120
94
96
128
128
197
117
143
80
117
99
95
127
147
87
122
175
115
78
109
112
85
154
120
117
135
100
109
87
69
106
88
197
93
80
117
96
76
78
96
80
92
93
80
76
131
140
94
121
107
146
120
83
128
132
110
94
84
69
96
145
120
145
145
106
76
113
74
138
72
149
140
88
88
80
154
162
80
154
114
147
185
80
131
76
107
143
76
80
76
88
88
94
134
109
126
96
76
121
66
54
80
201
155
131
54
95
133
72
89
175
175
88
69
96
107
115
91
94
80
95
87
81
154
69
110
85
99
96
72
80
107
128
91
104
80
120
119
76
120
102
83
91
101
76
87
136
96
151
111
102
108
123
129
80
119
87
116
119
76
126
80
91
136
117
118
78
107
103
163
136
114
87
140
117
142
120
80
118
155
109
137
197
141
154
91
148
97
121
96
155
104
122
72
78
100
78
78
107
127
121
80
87
87
101
90
54
99
52
88
175
154
155
80
197
102
117
80
94
128
116
69
87
89
128
112
101
87
54
175
93
146
90
106
78
106
131
122
78
93
143
140
112
105
175
85
76
155
105
131
120
117
136
80
148
121
151
107
118
69
81
154
74
87
89
131
121
113
111
87
119
80
76
138
74
134
80
78
104
151
120
80
119
69
80
136
74
88
137
113
99
107
72
110
106
114
93
127
90
107
78
132
87
164
93
153
67
85
120
131
109
99
83
72
80
85
76
155
117
106
97
89
101
146
127
156
146
119
146
76
43
101
121
94
92
184
69
131
100
137
83
76
175
96
119
154
119
118
117
67
69
107
154
140
94
122
74
69
112
131
140
93
107
111
114
92
117
75
164
134
154
101
54
106
80
52
146
88
89
94
146
69
98
131
154
146
101
75
144
73
126
54
131
120
89
88
88
109
121
78
93
106
94
87
83
76
88
72
88
106
128
83
78
187
88
120
142
78
87
99
117
87
119
80
113
97
119
112
104
91
134
76
103
88
160
80
166
76
87
96
140
103
140
80
80
126
94
74
80
134
102
128
128
78
88
94
102
114
115
58
85
140
125
148
76
102
106
118
80
121
111
144
106
142
80
78
72
185
152
88
69
107
82
69
125
123
140
120
156
132
88
80
183
87
71
80
196
110
99
109
94
136
120
78
175
89
76
80
104
128
109
98
125
108
110
87
134
69
74
91
76
93
115
80
106
116
139
54
175
80
78
146
133
93
78
80
175
101
156
134
78
104
76
87
78
162
109
111
107
80
85
80
80
117
106
160
69
87
141
80
87
132
76
84
155
74
124
87
134
90
89
87
80
131
123
160
69
148
52
160
151
129
80
136
120
80
126
121
87
132
197
104
113
136
88
128
52
128
52
76
67
80
56
80
117
140
76
89
78
72
156
108
85
94
99
80
78
127
156
78
69
132
72
120
126
69
119
126
99
114
125
80
78
119
60
101
80
93
116
69
111
69
79
99
154
102
69
87
154
109
80
134
83
111
122
120
107
100
164
104
69
107
89
128
87
109
107
120
158
100
109
99
69
78
121
69
157
78
119
76
102
93
43
76
64
146
111
93
75
156
138
83
106
76
76
119
162
164
99
106
107
139
120
145
128
99
83
87
69
69
163
80
87
155
140
127
140
140
143
117
69
95
106
121
52
119
92
87
58
131
107
85
72
80
112
128
128
69
164
115
69
76
93
99
144
185
101
80
82
78
88
107
78
76
129
174
172
72
88
72
125
109
164
88
91
118
76
137
86
69
174
134
111
72
114
154
174
107
80
120
124
87
112
136
80
117
93
99
112
88
174
69
107
142
120
107
128
78
80
80
142
78
69
91
80
78
80
89
131
128
175
88
99
93
203
67
113
109
89
98
121
133
69
151
112
80
112
128
107
87
155
78
113
112
99
96
69
155
80
109
80
87
80
80
115
72
154
142
126
94
174
99
171
85
106
87
87
96
125
109
118
118
80
119
78
99
175
134
110
107
75
155
112
175
76
164
128
89
127
78
143
135
114
69
134
80
118
175
134
148
113
89
127
52
133
112
96
90
104
151
91
145
120
98
110
87
89
80
78
131
134
76
87
89
87
78
121
114
69
69
100
122
76
71
93
90
185
80
117
175
107
78
89
99
87
87
80
125
94
183
91
90
127
134
72
140
80
69
66
119
69
76
140
140
87
101
170
102
155
130
132
131
175
122
67
111
80
107
72
94
81
154
80
154
122
148
99
109
76
119
133
109
69
151
80
69
101
96
87
85
107
94
175
80
96
91
83
114
122
106
80
80
69
154
96
83
99
128
118
120
112
54
95
112
76
83
119
115
140
80
151
102
80
106
138
138
107
80
89
175
127
85
69
112
69
88
140
165
112
87
181
136
87
80
140
136
131
80
110
104
107
128
80
119
87
76
128
87
92
127
146
80
80
89
112
104
42
88
175
54
112
136
197
131
113
138
76
99
91
140
109
128
144
112
96
99
113
94
160
120
131
75
69
66
76
80
78
88
84
80
90
135
69
118
87
115
127
99
88
95
76
108
112
69
107
120
87
64
151
110
134
87
69
174
106
89
112
139
126
112
128
174
113
119
88
69
181
94
78
87
120
80
100
98
117
66
91
147
122
123
58
112
154
90
82
131
102
175
119
80
87
136
133
115
87
104
145
109
137
100
73
129
129
78
116
106
122
106
78
111
128
101
114
87
80
137
110
67
91
175
166
131
154
117
78
124
143
95
121
126
150
110
85
99
126
87
112
98
99
129
94
143
132
80
117
80
136
76
140
121
104
133
76
110
149
131
109
119
134
52
94
121
76
104
99
148
133
76
80
69
66
119
69
119
80
181
109
136
107
123
151
75
72
101
164
121
90
75
72
118
88
80
98
164
87
67
101
69
103
95
88
110
134
102
113
60
131
93
121
78
80
113
102
88
121
80
113
80
96
69
131
139
128
133
107
110
137
107
89
80
164
80
80
94
157
98
109
128
119
114
93
94
56
80
94
93
99
100
85
89
92
74
87
82
119
56
172
78
102
87
43
119
103
120
106
83
99
187
133
98
154
138
171
121
151
109
134
95
103
93
43
131
107
114
93
101
112
120
88
76
185
122
80
101
80
119
87
69
156
87
101
123
111
145
74
88
111
132
106
117
99
125
99
73
76
101
87
128
80
94
154
111
95
183
80
136
89
103
146
76
43
74
69
151
127
104
91
94
120
69
87
80
113
120
124
101
80
119
131
141
154
83
120
56
120
107
154
152
163
69
142
94
69
99
99
148
69
138
90
87
94
154
103
128
89
57
87
78
130
106
146
110
101
185
52
120
163
80
94
154
69
95
88
80
80
107
106
120
69
69
98
122
110
80
128
78
107
143
120
128
149
120
87
99
104
85
88
80
99
133
136
78
130
120
99
107
80
80
156
120
80
94
175
87
144
137
102
120
131
84
69
145
153
83
134
75
113
78
110
136
87
85
67
91
107
118
72
78
143
80
163
123
80
176
104
119
136
136
140
110
99
78
112
87
121
154
115
154
87
107
88
132
98
88
100
80
99
106
119
96
134
128
148
110
80
54
78
138
90
89
90
89
74
154
104
120
120
87
89
113
128
69
69
94
76
109
87
52
109
69
69
69
122
152
140
146
138
69
99
90
109
80
80
100
124
119
69
74
131
96
52
128
83
197
93
87
121
153
99
69
89
104
83
80
133
93
117
78
89
136
136
169
76
201
143
166
80
130
72
152
125
90
87
155
149
154
146
92
107
147
80
72
96
107
78
136
85
119
90
111
119
175
114
109
197
142
111
175
89
121
69
56
145
78
89
52
108
80
81
69
69
155
148
197
95
76
91
89
119
112
169
156
110
163
69
82
157
72
78
69
99
145
119
110
157
78
140
155
87
127
110
109
99
136
133
87
80
136
121
124
78
164
93
88
119
148
59
94
128
96
96
89
164
99
72
80
89
80
85
69
119
69
93
78
69
109
118
69
101
80
163
107
94
107
88
178
80
80
154
94
144
142
109
89
119
89
69
123
104
155
69
109
69
136
146
94
151
119
52
80
88
128
80
113
87
143
106
119
80
113
112
137
133
64
199
93
109
67
121
132
69
87
142
136
129
80
69
119
109
80
80
95
99
52
99
87
87
118
56
133
134
97
151
113
95
120
148
129
131
101
136
144
156
117
99
98
82
106
155
121
183
69
127
76
175
104
104
122
133
120
143
156
118
152
91
115
143
99
89
69
110
87
76
76
87
80
136
111
56
107
87
99
107
78
78
80
175
104
103
80
83
104
131
87
93
148
118
117
131
89
102
107
94
72
123
125
99
140
141
80
78
153
132
101
136
122
110
74
66
69
175
201
130
56
137
89
107
99
134
159
94
99
119
115
69
155
69
88
175
142
78
91
88
96
94
91
114
78
80
144
151
120
149
146
80
100
134
96
107
104
68
76
154
80
85
140
98
107
97
80
136
78
89
100
111
87
94
75
52
69
80
80
80
87
117
88
125
80
99
162
80
101
125
101
132
123
69
89
80
154
89
106
89
152
156
88
110
69
78
88
157
122
69
113
127
108
140
124
104
76
120
126
99
119
120
80
80
111
140
112
87
69
128
119
72
136
154
142
153
90
89
88
135
106
87
80
109
80
107
121
143
107
98
104
87
87
99
69
80
75
151
119
74
85
96
80
102
136
106
113
131
89
149
143
69
99
89
113
78
107
80
145
127
127
160
80
96
94
104
95
104
131
104
91
119
87
140
120
123
134
76
162
140
103
106
88
128
109
118
107
96
129
80
119
76
145
89
154
93
107
110
113
104
110
135
120
119
98
113
80
151
112
152
75
183
110
128
80
154
78
72
99
109
88
69
197
129
76
143
89
80
154
128
126
43
85
78
88
105
80
130
80
78
126
154
78
87
76
125
99
69
117
175
134
131
87
126
121
106
111
76
94
150
88
99
154
103
93
80
156
94
78
102
80
69
88
121
80
109
113
56
151
145
107
80
117
69
94
109
105
87
110
119
87
102
102
110
189
78
113
127
128
115
64
76
94
80
99
80
119
115
100
121
151
88
131
114
66
87
99
89
88
176
57
123
89
69
143
79
87
80
100
119
89
134
103
121
107
128
87
113
76
140
91
110
80
78
110
148
87
89
109
86
106
76
132
104
140
119
54
107
89
117
95
96
112
78
112
80
87
94
183
78
74
132
101
89
100
118
113
155
145
162
121
99
140
120
68
151
80
128
55
110
78
69
83
80
76
109
80
121
137
86
80
74
95
80
109
111
91
118
110
145
110
69
100
80
156
134
113
134
94
145
143
110
108
118
89
76
78
79
110
91
126
80
123
52
109
69
106
145
142
107
54
118
83
106
89
87
101
140
76
66
107
175
99
102
148
124
69
76
89
97
130
175
80
106
69
72
114
78
136
138
143
80
64
111
146
87
123
111
43
80
125
88
89
128
104
131
90
69
169
175
174
94
136
78
80
131
90
127
63
80
117
59
121
75
113
197
79
113
83
124
117
69
132
104
103
132
110
110
126
86
69
118
127
142
112
111
175
69
114
132
112
96
88
87
99
154
133
104
95
80
74
114
128
80
78
88
93
99
128
87
127
121
127
144
119
76
69
107
175
127
108
151
76
80
78
78
109
72
89
151
80
143
101
78
87
119
91
78
136
99
88
87
111
106
78
80
80
120
153
87
87
76
136
118
72
79
87
87
107
107
121
69
78
86
146
72
136
85
137
90
103
155
169
78
104
116
120
124
110
80
107
99
80
91
119
80
131
106
99
76
115
87
126
104
72
93
76
151
80
93
78
102
106
124
74
113
69
112
80
107
117
56
93
109
107
98
119
154
127
68
110
85
145
105
80
96
119
106
160
154
107
175
76
156
119
151
115
105
119
110
71
72
80
87
156
72
119
109
101
164
80
78
111
140
97
91
151
119
87
136
155
143
130
98
78
78
119
119
143
116
87
91
110
87
97
146
137
87
166
80
155
80
98
104
64
72
67
101
109
117
120
69
94
104
145
80
126
110
78
80
125
80
110
69
108
85
141
111
91
120
151
112
87
80
96
111
145
134
81
94
78
94
151
78
109
69
128
108
119
118
76
80
145
87
115
123
106
120
147
80
94
91
80
95
100
131
67
69
107
98
146
112
114
147
116
132
112
87
93
120
128
76
197
112
136
98
140
109
110
121
96
76
131
117
120
106
69
109
107
93
154
89
76
78
74
150
156
140
121
130
95
130
130
87
100
149
121
120
107
69
133
94
131
90
140
87
126
154
162
66
109
83
87
113
143
80
148
122
126
132
78
132
146
113
54
144
92
98
175
100
99
123
140
93
107
80
114
66
110
85
151
101
107
78
199
88
121
93
71
146
72
128
124
132
156
109
82
121
126
175
121
88
140
94
98
69
143
96
112
88
110
132
122
80
134
74
78
80
118
98
107
128
69
119
85
119
158
76
133
128
121
146
126
69
89
80
87
119
102
69
100
101
96
92
144
133
76
94
137
151
101
183
80
99
103
118
134
120
78
165
66
80
119
120
132
136
148
80
154
72
80
87
113
101
80
117
106
100
80
89
136
118
52
131
125
107
120
89
107
87
93
69
88
111
138
136
148
110
121
78
134
79
136
76
113
74
123
96
78
69
147
112
80
89
120
119
99
96
107
87
175
134
107
145
56
69
128
156
119
163
175
66
128
89
169
91
90
118
69
99
96
110
145
120
78
133
117
69
94
155
87
80
115
134
107
128
121
112
101
175
69
89
78
109
94
155
89
104
163
88
136
113
136
197
74
109
76
119
78
80
140
97
95
72
95
88
69
115
83
98
99
80
117
123
103
127
99
78
175
118
87
146
140
109
88
120
101
87
104
96
104
117
151
136
107
131
64
109
136
142
121
93
121
113
197
80
151
117
108
85
127
127
106
71
80
143
82
149
110
87
151
131
101
120
120
88
145
76
130
75
83
87
69
112
106
156
87
93
140
102
129
69
143
89
109
128
104
80
144
78
134
94
129
69
80
128
146
148
87
80
99
113
111
88
93
120
154
107
132
138
94
85
96
135
123
87
75
78
76
113
112
119
113
108
155
76
131
117
131
133
80
133
156
76
74
80
126
123
107
94
131
93
175
99
128
88
129
113
52
140
126
155
89
154
81
78
118
109
120
76
80
201
90
136
110
76
78
155
96
98
112
119
131
69
113
69
136
140
109
104
128
80
78
133
140
145
94
141
113
80
69
71
89
120
154
154
112
114
143
87
80
111
144
145
109
87
131
134
106
126
94
119
175
94
120
69
117
99
134
60
136
96
69
69
98
108
87
112
89
119
114
124
59
104
131
107
114
160
93
93
87
131
54
159
128
136
75
94
117
92
127
104
128
175
69
90
184
118
123
133
76
94
76
112
102
89
93
69
80
87
104
140
101
69
151
109
52
126
69
128
154
149
140
76
80
119
76
76
64
80
163
69
197
88
156
133
72
193
80
101
149
132
113
115
118
95
146
107
111
120
128
109
107
120
78
141
96
96
80
175
134
89
87
107
80
76
155
78
100
79
76
175
109
121
107
78
175
121
104
107
124
89
140
106
123
146
76
78
134
114
128
76
153
80
99
80
117
197
156
83
109
69
87
103
110
89
78
158
104
93
76
78
80
126
78
80
106
104
121
89
99
121
128
111
132
158
102
87
127
111
121
120
121
87
136
80
69
119
85
94
128
109
169
131
147
80
76
123
92
121
99
128
54
64
76
107
196
155
106
113
69
161
108
115
75
95
148
156
69
147
67
121
69
145
69
110
89
112
120
156
72
69
94
88
93
99
85
102
119
108
114
95
112
144
74
114
128
142
80
80
94
89
96
69
134
126
69
119
76
118
119
96
69
164
99
69
163
142
154
85
137
136
87
153
112
96
92
80
69
88
120
103
127
99
146
93
120
154
80
120
133
136
96
109
95
127
102
89
69
111
87
131
80
80
126
119
69
69
80
80
102
94
142
89
142
117
128
93
69
109
91
78
78
137
102
112
128
118
94
80
104
87
197
54
119
112
110
151
112
78
69
134
149
87
94
121
112
117
107
69
113
146
80
80
104
134
80
89
80
119
109
110
67
102
119
89
134
69
106
136
106
136
80
85
115
120
94
83
119
132
131
131
88
80
76
154
88
104
69
96
175
87
128
92
111
89
78
80
136
128
87
76
94
106
95
98
88
131
150
91
69
164
144
95
128
69
131
88
110
99
100
136
91
100
76
116
89
175
72
69
101
127
87
87
126
80
76
78
125
72
85
87
175
127
76
110
69
96
128
78
89
111
129
89
107
142
119
164
155
102
127
112
119
69
99
80
113
103
99
99
78
69
175
96
64
80
94
122
114
66
93
87
94
80
130
82
80
109
75
104
110
104
88
69
69
119
80
149
80
72
72
94
56
94
96
113
72
83
95
138
184
127
138
69
80
76
78
69
69
69
69
129
129
69
131
69
104
101
185
110
78
76
111
121
113
111
94
80
114
120
66
144
109
119
66
104
175
128
112
120
110
80
95
155
121
88
80
78
134
175
67
151
140
147
120
87
109
101
80
94
87
120
86
76
119
156
78
69
104
78
119
104
69
94
107
74
122
93
74
155
156
80
88
69
64
156
116
120
89
78
118
126
115
122
121
93
69
96
154
80
107
94
69
74
106
88
145
76
72
124
89
120
87
197
110
104
80
94
94
121
94
95
197
197
154
106
88
120
136
138
99
99
78
163
69
112
85
100
114
145
154
106
56
78
120
74
83
119
144
131
76
119
66
120
113
117
76
104
76
109
80
109
70
163
89
109
80
72
69
174
110
131
87
121
163
122
113
93
109
119
94
112
69
94
155
94
76
100
175
75
107
89
80
118
78
146
98
99
136
133
106
112
135
96
67
72
116
128
156
154
114
109
107
58
57
69
80
69
114
101
89
106
183
156
119
141
120
110
98
127
91
132
154
67
154
100
114
80
94
85
115
68
72
134
159
55
155
128
102
113
69
102
105
83
80
80
142
126
138
126
97
136
119
72
126
106
147
164
111
101
104
147
119
192
107
80
69
69
69
80
69
87
109
154
119
107
80
78
88
93
117
155
139
147
106
69
149
96
80
69
76
137
134
99
143
80
80
107
151
114
80
85
178
129
108
113
88
99
89
175
113
107
89
101
89
104
151
120
115
109
109
134
57
80
175
119
78
100
89
87
134
128
110
153
122
117
79
118
69
134
112
89
76
148
92
83
69
73
99
76
78
120
83
80
69
80
99
154
102
76
94
130
119
103
113
69
92
43
122
127
119
58
109
76
88
151
100
103
128
80
89
76
99
133
106
151
162
118
116
80
93
117
88
123
87
99
113
69
100
67
87
128
74
145
80
88
115
128
153
130
87
79
76
80
76
104
80
124
119
76
104
144
134
87
120
94
69
78
99
78
88
121
69
80
175
88
117
97
120
145
69
108
69
109
133
93
142
82
72
83
151
138
73
117
107
117
80
54
106
76
94
120
164
80
115
54
156
80
69
99
87
104
120
110
103
91
69
153
175
88
80
175
110
54
140
71
69
172
174
80
80
96
52
107
69
93
90
104
85
100
109
83
131
80
83
87
134
91
80
93
156
104
86
101
101
67
164
146
79
69
175
116
124
69
181
144
118
89
119
99
80
69
138
80
89
89
127
136
94
76
130
117
54
129
101
82
154
95
147
169
89
96
156
80
113
134
110
80
107
128
54
117
122
85
78
155
69
89
93
89
107
120
93
131
154
78
100
126
154
136
144
100
113
99
88
155
102
99
88
107
99
69
154
132
140
78
82
102
127
121
76
78
136
66
140
100
101
107
113
106
78
104
101
109
72
69
197
69
109
154
69
127
201
154
94
131
87
87
133
142
87
96
77
102
80
147
154
131
80
107
101
120
91
74
136
107
80
94
101
145
175
109
156
87
78
119
126
121
175
142
101
87
80
175
154
94
196
146
99
109
78
78
69
127
106
119
107
69
129
112
80
87
99
92
131
114
131
152
80
109
110
107
69
80
107
175
155
76
87
102
143
69
175
111
76
80
72
93
88
99
76
134
131
143
69
94
147
128
107
78
80
117
175
107
137
82
69
111
84
78
145
110
98
118
118
69
43
95
137
80
92
119
136
80
109
130
119
175
80
151
120
154
106
129
156
89
69
102
174
80
140
100
59
164
123
175
59
145
176
139
80
104
87
107
124
80
112
52
110
79
78
113
136
104
78
101
80
78
80
114
88
118
109
69
82
128
104
94
110
119
80
94
130
101
69
69
87
94
119
87
109
80
113
169
89
137
156
80
107
134
89
113
87
88
122
119
155
94
69
111
89
111
175
92
153
99
136
144
98
80
175
69
93
87
94
155
96
69
69
102
76
69
92
78
78
67
96
115
87
93
101
80
83
72
175
120
106
69
131
121
76
69
80
93
69
88
175
80
88
67
80
93
80
160
89
80
99
98
101
127
80
84
69
58
131
109
109
137
90
78
143
134
131
86
54
108
127
56
88
112
127
91
165
80
99
128
89
118
80
82
95
163
111
104
92
129
94
69
89
96
124
69
134
99
80
69
87
69
98
80
73
101
117
98
119
133
80
209
80
87
91
76
94
78
100
80
74
120
120
109
131
69
98
133
72
110
119
71
126
98
76
140
78
107
80
76
78
107
144
80
175
119
197
88
69
74
98
126
69
56
100
128
69
104
84
118
69
89
135
124
112
69
74
69
124
136
95
121
129
115
156
107
80
95
69
66
175
87
120
54
78
80
75
80
143
110
87
87
106
78
104
85
69
109
110
104
81
140
69
78
134
91
91
69
131
110
56
150
80
87
147
104
78
136
78
136
113
103
113
106
91
175
91
57
119
102
78
130
101
120
90
154
76
78
116
104
88
111
131
69
87
112
152
78
72
93
104
197
87
134
80
120
87
75
152
174
140
154
69
80
149
104
122
94
144
69
144
151
80
185
174
151
128
110
112
56
139
102
107
112
120
69
134
120
76
110
87
69
96
109
83
80
160
104
90
111
111
90
101
129
87
154
74
90
88
104
80
104
93
118
80
72
181
127
118
151
78
164
80
87
119
69
76
121
96
67
76
144
174
141
80
89
99
76
94
126
106
88
155
154
152
91
100
104
82
94
72
93
80
151
87
72
157
128
69
137
106
94
163
76
101
91
78
140
91
80
134
142
110
87
94
99
104
117
101
101
106
123
87
115
87
69
110
69
123
101
89
94
100
88
78
128
155
197
127
69
93
154
76
76
116
129
175
155
106
92
69
115
78
66
76
113
145
108
80
93
122
80
93
156
119
80
66
69
76
143
110
117
154
121
119
100
76
95
106
80
175
78
88
131
106
142
121
140
72
119
83
88
80
67
155
110
79
56
72
115
104
87
80
197
175
128
94
119
89
87
80
80
134
94
106
101
56
103
69
118
95
137
80
140
94
69
160
151
128
56
54
94
112
154
113
117
148
80
80
110
143
88
113
78
59
97
108
120
145
67
119
107
102
109
69
69
130
118
99
119
89
104
146
69
94
117
82
76
169
137
154
119
80
101
92
107
104
80
111
52
137
81
126
112
121
89
118
140
78
142
119
74
142
87
103
146
91
78
98
115
99
119
87
94
154
136
91
121
109
109
111
93
76
151
160
146
119
80
87
99
67
106
113
134
145
87
114
88
69
87
74
96
88
74
78
100
93
57
80
133
128
137
69
131
136
87
69
80
140
136
106
106
87
133
100
134
148
120
128
110
99
126
110
119
87
80
78
110
104
98
134
109
134
80
69
130
72
95
76
88
133
97
106
76
69
80
128
134
145
154
113
69
80
93
131
88
113
152
82
143
98
104
122
101
69
155
126
151
156
155
54
78
78
175
80
88
120
128
112
154
102
69
131
69
78
113
93
76
80
149
175
114
93
141
154
109
89
113
110
80
104
78
119
88
80
89
54
72
78
119
151
121
54
76
64
80
69
140
101
115
175
69
76
69
161
94
114
117
100
93
109
87
91
119
99
76
89
129
107
69
96
94
107
69
80
110
128
80
136
89
87
76
69
80
107
97
99
155
163
80
137
100
121
119
80
69
113
96
110
107
101
87
80
122
80
87
107
154
109
110
147
88
94
132
83
175
127
114
78
153
134
80
114
76
150
90
147
186
154
166
117
80
80
79
80
107
101
143
104
126
80
80
126
80
154
99
91
109
118
126
201
154
111
175
78
117
132
98
113
119
80
130
124
89
80
119
155
87
129
80
87
128
134
69
150
154
146
96
82
80
76
98
175
80
117
114
151
52
136
131
72
126
73
80
155
106
80
99
199
87
96
140
99
78
80
96
151
90
88
69
87
113
66
85
78
131
118
156
104
120
79
69
128
185
81
76
79
99
140
128
86
78
136
146
103
96
183
114
88
109
107
114
120
88
92
155
121
85
102
174
134
125
107
113
109
157
163
112
120
76
90
197
109
115
87
139
141
137
76
104
88
93
137
119
174
78
56
111
131
80
119
136
87
76
183
69
74
151
107
94
130
128
109
115
148
89
80
144
94
80
69
119
112
69
107
121
146
78
175
119
76
111
140
108
76
69
78
155
124
91
175
131
98
100
69
197
90
89
87
110
102
102
69
69
93
80
112
119
80
100
120
76
175
110
134
69
137
79
69
120
80
120
78
199
96
88
120
87
76
60
94
110
110
134
104
137
100
136
129
80
89
72
69
94
101
109
136
101
197
140
98
141
101
69
94
106
80
119
88
128
87
54
101
127
175
99
87
119
134
76
80
94
162
129
118
107
129
109
140
87
136
146
99
133
87
78
95
78
73
76
128
87
78
145
134
91
138
91
174
78
123
141
85
122
175
80
89
125
80
76
78
154
83
80
66
91
76
113
126
134
107
194
121
119
185
76
69
119
143
69
109
110
52
107
76
120
125
175
131
134
155
52
80
87
151
120
94
94
99
78
67
144
104
66
78
67
148
119
80
80
87
101
80
123
89
52
108
112
80
69
153
121
181
72
129
134
175
94
137
54
72
155
175
69
69
80
120
142
80
80
93
75
134
80
104
164
80
87
129
66
85
141
126
69
81
69
173
80
112
64
102
69
172
136
136
78
109
104
72
117
136
78
88
106
54
120
87
72
118
117
149
58
136
113
69
69
113
175
123
123
115
108
94
117
106
113
100
76
119
107
119
104
89
151
111
91
154
69
72
108
111
78
79
80
78
74
128
79
109
69
52
94
69
197
71
152
94
52
154
131
88
119
151
102
93
118
98
113
103
145
72
122
107
111
80
114
99
77
140
87
107
107
132
137
175
78
126
109
87
58
78
69
99
112
128
121
197
99
82
69
130
119
114
80
78
123
94
143
79
134
112
69
175
128
83
54
153
80
98
69
71
104
138
122
69
107
66
145
103
81
130
111
88
132
103
80
76
128
76
73
89
76
105
121
69
72
81
175
133
87
80
111
101
63
112
93
93
129
113
69
91
144
128
175
128
133
94
108
88
120
128
80
95
106
76
119
175
117
69
93
175
121
93
69
69
87
155
88
76
174
69
154
153
93
137
80
117
99
132
120
155
78
118
137
80
102
112
126
82
62
98
119
78
109
87
119
69
110
80
89
137
88
140
90
113
120
80
78
91
94
116
69
54
74
124
75
137
110
131
69
155
96
114
76
69
123
73
95
52
110
151
80
69
111
121
134
109
140
119
99
86
99
74
154
120
97
117
76
109
69
101
164
117
111
115
69
132
52
80
134
164
103
101
154
138
78
143
76
99
156
107
69
112
114
109
72
136
59
64
175
88
89
87
66
109
90
80
144
119
124
69
89
88
152
80
87
76
113
126
87
87
89
93
149
109
80
133
80
94
85
119
117
110
91
69
91
103
68
95
78
106
87
142
145
69
93
110
116
80
115
57
109
72
80
154
134
91
118
67
69
76
69
140
101
110
80
106
80
133
104
69
119
93
94
80
95
112
113
89
119
78
78
158
112
120
88
80
72
87
79
120
101
121
69
138
80
119
120
88
131
143
93
74
94
100
80
115
107
78
96
80
155
94
108
110
147
80
90
91
150
109
119
72
90
128
110
107
87
69
88
156
119
75
102
80
138
119
119
101
145
134
74
107
164
181
119
80
94
96
92
102
98
91
120
143
100
175
106
72
145
80
82
74
149
127
128
148
80
103
87
89
89
101
130
121
102
87
87
78
131
119
128
99
80
112
133
78
136
69
144
119
154
102
109
80
94
110
91
109
115
104
110
175
80
88
109
104
83
80
104
143
93
87
91
80
72
94
110
87
87
104
100
72
201
128
80
101
80
115
134
87
140
69
94
94
154
134
175
155
72
139
87
104
102
144
54
95
60
123
110
111
78
113
121
99
126
54
136
80
80
80
155
125
79
69
52
94
87
106
56
87
154
113
104
197
87
82
138
134
111
127
69
107
109
140
89
120
119
80
94
76
69
93
154
119
101
154
80
89
177
99
131
159
145
101
104
80
109
76
154
131
129
72
112
154
101
109
115
155
117
109
79
94
88
80
80
143
113
85
128
99
111
112
125
78
87
96
135
89
78
96
152
117
120
69
163
124
134
175
102
88
110
76
74
78
104
106
101
80
72
109
133
80
137
144
80
87
119
76
88
128
89
80
104
154
78
72
89
110
120
101
100
109
154
80
102
99
80
140
80
87
119
154
95
72
107
87
181
63
146
134
99
107
89
95
110
137
117
130
154
87
59
69
116
78
87
116
113
174
130
106
85
107
122
99
126
91
72
83
78
144
85
121
89
91
109
144
119
100
142
87
76
96
166
140
104
66
56
109
138
106
150
121
69
89
134
93
130
148
128
109
110
78
72
69
107
80
103
91
136
76
72
115
80
52
64
144
116
80
127
120
156
137
154
119
89
137
118
104
130
118
132
110
69
80
94
174
71
78
134
117
130
155
123
117
80
114
117
156
93
94
98
98
88
91
140
98
85
117
87
175
116
121
88
126
92
103
87
107
76
121
154
103
149
126
124
83
109
78
89
119
69
120
99
100
116
134
78
72
72
98
91
101
76
74
128
101
131
144
88
80
104
145
109
89
56
69
109
163
175
69
78
122
110
101
80
121
113
134
127
87
110
56
147
94
94
151
100
138
152
154
69
88
91
129
125
197
87
87
131
102
149
128
74
119
71
83
99
89
76
104
143
134
121
103
144
142
69
80
121
127
120
99
175
101
106
129
85
80
89
80
175
85
107
114
94
175
78
88
163
101
91
87
88
80
76
72
109
89
80
74
142
89
130
151
109
69
81
80
109
166
152
109
113
125
91
93
132
69
80
110
119
121
104
90
107
99
109
171
80
54
80
119
94
69
76
143
164
136
146
83
120
103
69
128
123
80
107
128
94
87
156
104
151
88
80
102
140
66
186
104
133
155
121
76
119
43
128
78
128
69
69
87
89
110
74
141
107
76
128
109
121
93
155
106
104
91
119
80
136
134
80
89
120
94
76
175
110
91
119
104
87
156
69
186
107
67
75
154
80
89
80
145
71
106
96
79
118
139
104
87
87
89
117
87
91
121
109
145
117
87
88
106
121
99
106
87
89
107
115
175
120
78
134
162
100
78
119
117
91
52
113
136
110
56
85
111
175
69
80
69
80
120
102
72
69
106
131
76
160
80
89
80
132
142
113
128
94
119
119
76
106
110
89
89
76
88
76
109
143
81
83
96
102
123
165
89
102
69
121
143
136
145
75
120
141
112
99
74
136
76
134
101
76
142
94
80
154
106
80
154
149
154
94
109
134
98
100
99
110
93
103
87
93
146
88
101
69
135
87
119
89
110
80
79
69
130
112
83
104
143
110
146
109
106
156
69
142
133
74
108
69
99
74
131
69
101
78
110
126
159
133
120
169
78
80
57
145
88
175
80
110
76
80
140
109
119
79
72
150
72
99
80
104
69
128
197
121
87
126
121
93
107
197
112
80
123
74
119
145
76
131
156
98
123
143
113
80
80
110
112
96
83
94
69
78
85
87
123
43
174
76
78
76
87
88
69
103
94
113
115
106
140
111
121
88
156
56
121
121
80
91
76
54
109
145
69
69
104
109
112
76
78
91
136
109
78
118
118
138
109
151
93
97
146
128
140
140
56
128
124
109
120
76
145
118
90
106
117
109
89
164
89
94
85
89
89
131
127
68
89
69
52
80
131
134
155
85
80
69
94
94
101
154
104
88
121
78
110
118
80
163
144
72
128
120
80
69
119
69
138
123
112
112
96
201
104
69
99
80
175
106
76
119
113
101
100
104
69
104
134
110
101
76
151
185
121
119
134
87
109
91
128
132
80
154
94
80
80
80
87
107
104
151
110
125
87
99
134
72
114
128
92
93
150
109
78
112
120
87
88
76
127
93
115
75
143
85
121
72
76
88
69
175
104
80
151
99
104
115
136
80
83
69
96
119
87
90
113
93
87
78
143
109
175
83
80
76
109
132
154
80
131
85
87
142
131
113
69
87
102
104
109
131
81
78
111
94
78
113
97
133
87
88
128
76
154
95
120
89
124
136
175
104
72
69
132
101
146
143
72
121
160
78
101
175
122
74
80
59
121
129
157
95
80
87
76
174
136
76
87
122
134
134
107
87
90
144
96
121
91
107
111
91
101
109
87
87
159
94
88
106
119
89
128
87
68
140
102
109
175
111
156
76
136
163
118
110
107
69
54
107
96
56
80
88
87
72
123
154
128
119
69
74
78
85
72
102
134
69
165
93
136
80
80
72
121
140
163
69
69
108
91
76
79
69
119
109
154
87
92
104
69
69
78
120
78
148
98
87
127
72
126
94
83
107
80
113
151
87
93
172
93
109
74
88
122
107
87
78
117
80
136
80
69
131
187
138
100
56
110
102
43
134
109
100
76
155
99
138
69
80
156
101
69
118
101
137
109
120
54
175
123
102
97
148
100
104
93
85
69
136
120
133
195
83
126
105
104
113
92
120
121
99
117
131
136
99
76
106
118
134
93
121
111
128
113
123
175
115
110
69
86
106
160
110
119
99
128
106
94
110
80
76
99
110
154
98
69
56
80
80
81
69
87
107
76
128
87
89
80
117
122
98
133
113
127
80
118
125
114
98
62
107
69
156
80
112
148
88
94
119
94
109
78
54
85
109
174
107
54
69
115
78
102
128
79
74
140
126
69
91
151
98
96
93
78
95
140
87
137
131
103
120
85
127
74
121
107
174
69
195
78
72
78
122
131
80
134
174
130
110
52
104
63
112
80
90
80
107
134
112
80
82
97
69
137
136
106
89
107
91
113
175
132
201
80
149
80
75
175
113
80
87
76
88
128
87
80
106
112
80
99
72
117
147
100
87
107
175
66
127
80
80
88
156
155
104
99
76
136
172
113
109
78
146
155
119
131
78
109
78
88
78
76
72
79
74
93
114
118
73
151
54
155
93
80
106
107
120
115
80
80
56
102
107
120
128
117
131
172
69
127
175
87
132
80
74
101
112
103
112
119
96
76
94
80
120
93
122
59
137
107
60
78
106
94
69
80
78
118
87
69
106
162
111
80
69
106
78
109
91
63
105
69
78
80
163
110
66
137
80
197
94
144
87
103
128
69
69
83
97
91
107
126
131
114
103
145
119
78
88
80
116
69
99
102
106
109
80
72
115
69
76
120
109
120
134
80
156
104
201
145
123
69
106
136
106
83
110
113
102
106
108
102
109
64
101
197
141
92
80
128
122
101
78
197
80
155
106
95
94
80
69
88
143
84
131
155
111
76
89
96
140
128
110
129
98
80
94
80
52
151
88
54
134
104
154
106
100
83
120
95
115
136
100
132
76
80
87
151
139
69
93
156
136
69
80
99
80
114
128
90
145
118
113
104
43
78
87
120
113
82
163
80
87
80
134
69
88
83
141
106
76
82
119
92
109
112
134
113
144
117
143
87
100
69
132
112
87
120
119
89
109
96
121
80
107
134
69
78
126
143
110
121
106
156
110
101
140
125
119
151
136
102
132
107
96
78
80
123
117
87
96
76
109
98
156
117
87
129
111
89
91
87
160
113
109
127
107
69
131
94
161
87
80
76
164
113
98
114
134
125
199
125
56
80
110
107
150
106
175
94
69
136
131
120
80
131
80
69
95
127
107
139
142
160
103
112
74
82
90
131
88
114
90
102
119
78
78
136
138
122
160
120
110
88
91
69
87
106
80
115
127
154
175
80
94
163
90
69
128
80
126
107
120
124
114
115
115
80
126
117
80
89
87
111
208
172
80
131
80
69
96
120
120
199
93
175
71
174
119
87
91
69
153
87
84
95
134
54
134
155
80
126
133
110
99
133
112
84
106
91
89
80
126
128
111
145
131
102
52
110
175
80
78
102
77
69
175
148
131
156
112
163
69
87
197
143
80
69
80
133
156
117
96
89
80
77
69
123
80
69
68
104
94
110
94
105
106
119
54
78
99
163
125
87
123
134
140
93
122
80
76
80
128
149
75
137
81
142
91
161
120
87
128
88
150
94
87
115
131
106
176
123
76
119
99
156
87
142
140
95
143
91
175
154
137
164
128
69
69
146
99
107
56
95
96
128
119
120
124
78
120
96
154
56
78
145
144
118
107
69
137
69
106
175
154
121
88
78
101
96
163
89
120
120
113
81
119
151
100
114
76
147
52
99
110
120
119
104
113
115
142
69
181
123
68
94
199
96
114
69
87
94
127
99
88
99
125
80
93
99
80
127
69
75
116
112
106
109
76
80
137
120
175
143
59
154
165
71
122
122
148
187
88
113
76
112
163
154
69
80
113
98
117
113
137
154
85
76
114
88
114
81
175
87
87
138
80
136
80
121
80
114
119
104
89
109
74
78
110
59
89
72
110
105
143
120
99
83
94
80
80
64
87
164
94
72
112
149
78
104
128
69
102
87
131
119
87
109
106
80
117
162
99
73
89
104
107
73
80
163
119
80
154
107
119
91
67
119
69
97
104
93
91
89
69
128
91
103
97
160
175
99
88
115
69
92
154
131
87
83
149
90
121
88
85
128
101
95
134
80
114
69
69
80
72
113
126
78
93
104
150
89
58
78
87
69
80
69
72
94
125
101
156
146
94
119
101
110
100
154
83
119
85
128
78
128
139
69
91
87
80
113
78
175
80
87
69
118
89
157
89
69
69
129
127
87
59
97
104
175
94
88
127
80
80
80
126
69
110
174
72
95
87
152
146
69
148
115
69
97
122
157
76
127
98
107
154
98
69
91
99
123
93
175
106
69
80
106
69
113
134
78
125
69
85
76
152
80
72
109
78
93
138
143
104
109
72
80
100
87
95
136
82
69
111
93
88
64
120
138
160
121
87
119
131
80
109
108
107
95
80
92
144
128
162
80
106
91
93
126
96
101
111
80
91
88
95
120
151
136
80
89
144
99
99
108
113
125
121
134
93
99
74
117
87
109
133
52
104
140
69
101
106
78
175
87
121
169
108
76
84
145
105
80
52
77
132
99
106
101
69
104
125
78
148
80
102
92
91
131
80
78
166
107
117
125
74
120
155
99
119
134
80
137
95
87
199
69
130
89
95
127
72
148
134
59
95
80
185
110
134
113
197
125
134
78
129
79
104
151
69
155
91
80
76
80
140
151
160
114
102
109
106
104
164
96
90
128
94
106
120
107
78
181
108
133
147
109
119
120
87
80
78
99
80
69
109
66
156
118
98
80
154
81
91
87
75
87
112
201
133
88
76
112
102
127
101
127
109
131
120
87
120
127
146
87
125
109
88
100
137
71
89
76
69
119
89
154
73
114
89
140
119
93
94
94
101
81
97
134
115
120
95
160
127
133
140
80
78
106
127
88
92
69
76
80
80
89
106
120
93
94
160
131
89
99
76
76
106
80
163
120
69
80
89
83
155
123
87
88
112
87
96
119
126
130
115
97
154
85
175
110
88
137
164
111
89
126
83
101
107
159
154
123
109
118
80
117
110
143
113
128
106
80
136
67
78
119
87
112
83
87
137
107
109
89
113
127
91
80
93
119
54
52
115
69
69
76
89
78
93
114
117
69
69
76
56
80
80
128
89
88
102
69
87
80
69
101
100
115
64
88
112
121
112
127
107
80
130
128
101
154
101
69
80
154
131
69
119
54
113
69
80
148
69
120
108
106
78
154
114
110
78
104
88
175
127
88
91
140
76
69
113
89
155
93
67
137
151
99
76
78
89
133
89
118
88
154
111
72
87
94
112
110
175
70
117
87
112
87
197
93
80
74
140
80
128
134
175
78
133
69
87
72
80
93
119
118
80
113
78
81
80
80
80
67
80
56
140
109
152
88
160
78
140
140
72
107
54
132
157
94
87
89
121
143
104
120
119
144
89
78
126
74
80
134
79
128
54
67
76
128
124
107
121
131
129
111
112
118
163
76
80
78
79
155
145
93
121
54
111
76
154
83
143
95
117
72
175
102
125
131
69
72
88
76
80
131
90
91
154
106
131
137
114
57
87
100
185
109
76
121
93
102
143
109
80
117
88
112
91
138
136
110
101
110
106
110
99
95
69
127
131
76
128
60
56
87
101
119
58
142
91
69
94
89
119
99
76
175
111
146
120
113
164
156
131
106
175
163
101
99
110
137
69
77
101
99
134
93
69
80
78
80
154
80
93
106
100
93
174
67
140
91
78
71
144
99
121
106
127
95
97
130
123
139
183
85
158
69
69
124
155
87
154
94
66
112
154
83
102
127
117
56
76
137
112
128
71
80
78
78
129
123
151
154
143
118
99
98
156
78
87
151
157
136
99
131
102
117
87
80
69
80
54
91
130
94
56
117
69
126
131
80
117
111
133
118
131
99
137
99
71
130
89
87
78
96
128
144
94
111
69
98
127
118
94
88
74
131
106
151
80
117
85
123
138
107
87
120
109
144
78
136
87
133
139
121
80
111
100
125
72
76
117
94
128
122
136
88
93
93
99
99
69
69
112
120
80
78
80
134
107
76
69
107
199
76
56
76
164
89
80
72
89
107
172
113
129
106
88
106
136
155
76
94
114
113
114
119
107
89
110
87
145
128
175
76
145
134
78
123
128
197
87
136
80
154
102
120
111
128
80
90
119
89
145
102
97
122
139
145
174
131
148
76
107
80
140
119
69
97
106
83
71
131
88
131
112
99
163
155
80
99
107
80
80
106
109
93
130
112
87
76
87
76
79
66
128
118
175
117
95
138
120
69
129
128
69
156
89
126
119
80
76
99
163
69
132
69
131
97
113
119
132
115
136
175
80
112
119
80
88
125
134
120
133
78
151
100
59
119
93
108
73
128
119
80
76
100
88
88
90
128
156
94
111
127
107
163
87
175
76
69
75
89
124
137
106
69
52
185
74
128
74
109
118
155
80
90
111
126
72
128
85
175
76
102
78
112
99
75
154
151
87
80
78
69
100
135
112
140
133
76
104
69
127
160
142
113
183
134
146
96
125
137
106
152
102
145
120
175
99
80
86
119
113
103
80
86
72
120
106
142
175
121
120
145
197
118
76
131
80
109
76
76
117
93
126
120
76
80
78
80
87
87
121
89
80
115
76
120
119
87
94
109
52
147
109
107
69
80
93
112
154
106
99
80
80
71
90
140
54
128
72
109
76
80
88
76
89
138
152
120
85
136
88
80
144
80
156
116
87
166
117
109
145
109
113
106
130
76
78
69
78
151
104
120
76
98
110
109
112
99
88
134
76
83
169
147
121
82
104
66
143
95
99
130
107
92
69
104
131
93
96
114
58
96
76
136
101
70
162
96
87
80
69
87
88
131
93
154
129
80
105
159
197
136
117
121
78
110
117
93
104
80
119
138
69
80
117
107
107
76
104
104
156
80
89
78
109
147
121
91
112
108
131
107
175
117
145
155
142
151
109
131
175
87
81
87
119
154
80
83
80
112
87
43
131
80
144
126
106
113
87
69
87
140
106
81
128
130
87
102
80
119
80
197
121
80
117
69
78
89
69
100
110
76
128
107
56
76
99
119
78
69
80
67
151
160
76
85
80
109
101
56
118
120
76
106
148
122
84
56
54
135
151
80
80
69
79
96
79
103
87
111
118
127
80
127
87
139
154
52
156
89
120
80
118
110
142
176
166
125
101
74
59
120
137
165
157
78
87
134
107
146
109
78
80
136
80
131
111
134
78
120
152
146
80
107
80
102
88
106
127
80
159
110
148
102
151
69
144
154
69
80
110
119
117
72
119
110
138
112
127
110
175
122
110
94
69
109
128
89
91
74
80
110
99
88
131
100
80
80
104
59
106
80
95
90
103
89
125
78
155
112
73
107
110
80
115
126
74
128
89
84
78
76
120
140
120
93
88
91
115
145
78
95
98
69
149
80
109
118
112
113
135
80
120
98
69
112
154
78
69
120
144
111
119
80
131
110
144
132
103
144
96
154
120
109
107
119
106
134
110
127
87
90
127
76
94
109
127
87
94
80
138
78
109
107
123
98
91
121
80
110
84
127
120
132
154
121
144
80
117
155
90
76
121
136
80
100
92
89
76
109
100
119
107
128
127
67
112
142
131
93
80
85
69
119
109
94
102
104
113
102
134
99
80
163
164
87
112
117
111
120
80
131
197
112
175
126
104
134
181
175
112
59
110
128
96
85
121
69
121
112
126
130
130
80
94
80
101
88
148
119
99
89
88
80
136
156
146
131
119
76
78
100
145
109
74
94
69
104
131
78
128
76
110
87
87
72
132
109
175
136
76
80
80
119
78
100
113
156
80
147
89
110
113
104
80
119
80
154
101
142
128
107
106
89
107
174
119
67
110
122
69
63
109
92
87
85
108
137
119
183
117
163
100
69
156
112
197
131
76
87
87
69
134
80
127
93
131
128
157
115
80
76
92
122
93
119
145
93
87
113
80
93
87
80
78
133
118
156
87
98
83
76
76
88
80
175
78
120
69
140
140
69
128
98
89
88
69
175
148
156
104
78
69
129
80
82
150
199
99
88
91
80
80
142
119
85
76
117
87
77
80
107
134
109
56
79
87
104
119
128
79
69
154
80
91
88
123
120
69
80
82
78
78
123
131
69
89
151
112
87
136
87
128
131
89
92
80
114
111
128
69
121
80
69
80
76
90
100
80
59
93
103
154
118
141
92
112
76
155
156
101
124
140
106
165
132
80
89
116
145
87
76
146
93
175
175
107
89
155
172
76
99
80
69
66
113
94
56
80
80
69
78
78
71
85
78
107
115
96
151
120
89
134
119
156
111
128
106
89
129
100
140
163
69
121
152
88
123
123
113
140
92
111
115
87
134
154
108
113
94
128
96
127
121
80
72
121
72
150
69
80
107
140
154
154
76
154
94
104
136
90
154
69
110
110
146
139
87
113
94
171
152
136
106
112
119
58
76
123
107
76
87
121
101
197
140
80
107
100
78
99
126
78
98
69
104
126
91
103
75
107
160
106
100
143
80
106
145
80
119
155
211
54
82
109
72
120
80
78
112
120
124
78
94
117
78
144
89
154
76
80
56
69
120
130
132
59
151
154
143
126
78
109
98
89
88
92
151
119
102
78
112
106
76
124
140
109
128
78
91
156
89
117
128
74
56
154
115
156
124
94
78
107
69
94
107
85
80
109
152
117
104
103
115
114
156
112
109
89
96
109
126
88
131
78
71
121
101
136
162
91
76
88
74
80
117
128
107
69
99
104
146
117
88
120
152
83
115
119
132
72
107
69
131
132
121
78
99
89
125
111
113
164
119
110
131
99
120
124
154
113
149
155
87
128
99
123
174
117
142
136
107
92
109
165
118
72
76
119
154
82
56
72
148
76
119
121
105
87
100
107
90
120
100
109
119
136
100
131
134
128
111
197
169
137
78
122
74
131
103
94
131
78
121
129
169
101
80
149
91
87
128
72
92
79
110
69
121
78
69
76
69
118
129
80
90
165
136
123
80
75
112
106
113
129
76
150
87
117
98
85
112
102
175
133
111
54
113
109
88
67
119
85
79
80
163
112
131
123
143
64
87
143
113
93
104
80
104
83
76
124
94
164
112
133
43
136
80
87
74
93
90
107
92
106
80
93
121
205
130
79
119
106
147
78
87
80
104
97
78
121
119
137
89
69
107
80
129
137
149
80
109
128
80
69
106
117
78
88
100
87
109
91
119
104
148
58
107
102
124
76
157
80
110
80
119
134
80
115
76
117
125
136
100
78
110
117
89
80
85
155
83
58
199
163
76
112
112
69
120
78
115
104
155
69
105
97
157
80
133
128
116
74
128
106
136
85
76
80
119
175
69
110
80
56
86
80
145
93
172
115
106
134
69
76
109
100
102
69
156
78
102
136
109
80
80
96
106
80
119
134
81
69
107
129
107
102
97
91
69
119
197
106
143
147
69
94
109
76
73
132
99
94
43
74
119
78
117
107
80
88
110
69
89
87
156
94
128
134
80
117
154
101
148
78
94
119
89
113
197
134
90
129
80
87
159
69
69
148
110
120
69
127
94
87
106
80
152
119
76
69
88
118
145
127
126
112
80
107
166
128
126
92
121
121
90
69
113
109
146
107
174
74
122
108
154
119
107
88
87
117
85
130
87
154
69
120
175
107
75
91
76
175
74
80
102
80
69
78
156
144
91
87
80
104
120
91
120
126
69
146
122
102
150
69
75
69
91
87
110
134
80
115
143
80
163
80
98
135
72
107
88
183
80
78
115
106
76
106
128
118
85
87
132
80
136
80
154
88
52
132
69
117
147
76
137
94
136
94
117
106
42
72
120
144
69
175
80
119
121
119
78
88
88
119
76
106
125
80
110
113
151
144
90
67
136
109
174
87
128
72
76
88
136
106
131
116
127
119
69
69
134
98
88
89
69
114
80
136
145
177
96
139
73
148
107
69
125
80
107
87
91
87
76
129
79
69
69
120
175
122
124
106
105
134
117
148
92
80
69
95
120
69
106
141
92
76
80
94
96
93
120
72
139
96
80
137
78
87
78
99
99
137
109
129
88
126
120
80
183
101
80
124
94
122
143
197
102
126
150
119
122
183
68
112
88
142
118
80
94
89
76
74
101
92
72
80
132
80
175
160
67
72
91
112
76
82
93
76
107
137
80
118
120
154
174
153
80
155
119
134
69
74
105
88
54
76
110
72
80
80
80
123
87
109
80
66
102
121
101
85
119
69
80
116
80
148
127
95
109
58
147
151
68
175
146
112
128
68
185
136
119
69
117
174
113
78
67
110
120
100
129
136
128
69
87
145
69
60
69
109
134
148
100
118
96
147
175
80
106
110
175
109
76
80
87
72
89
113
165
163
175
101
148
154
77
155
87
128
104
109
93
78
99
130
95
133
88
99
69
106
136
80
128
93
88
78
69
128
100
140
107
79
87
111
69
94
104
101
98
104
161
117
119
143
87
107
137
106
88
66
99
80
115
104
131
69
109
99
88
69
195
80
94
89
106
140
148
120
90
69
91
118
113
93
134
109
93
120
100
78
175
126
113
104
85
87
104
175
87
87
131
80
154
101
145
146
67
78
94
78
112
69
89
115
92
95
95
129
89
74
88
129
124
107
64
80
107
78
99
113
131
146
78
148
144
110
122
72
106
75
104
145
111
133
98
69
101
145
143
109
76
145
101
95
93
111
90
78
132
99
87
175
115
72
140
69
69
106
88
94
144
138
107
69
104
100
154
130
76
66
72
80
78
154
120
146
104
69
110
80
83
87
106
162
129
80
87
100
67
109
99
185
134
107
94
75
125
72
69
115
92
80
99
120
112
93
107
72
76
147
125
134
74
101
94
155
85
117
106
99
72
96
85
136
78
155
94
69
125
121
140
82
99
120
122
185
144
114
69
120
120
119
80
140
101
163
136
119
134
121
136
80
121
155
106
128
137
113
100
154
90
88
123
69
169
101
142
131
114
164
175
112
96
137
130
85
89
134
134
128
87
87
80
137
155
126
113
80
101
134
93
72
127
148
163
155
80
80
94
117
94
176
132
124
87
69
126
109
80
83
106
197
78
89
154
121
80
121
111
154
134
96
117
106
120
102
88
134
107
88
111
85
69
88
54
106
150
103
98
78
175
123
56
107
146
87
76
82
119
115
88
87
107
146
101
96
124
119
91
93
69
80
107
76
134
100
175
163
122
43
52
174
100
72
154
119
69
96
140
141
121
85
112
149
76
127
175
103
78
134
159
74
80
88
87
80
94
127
93
98
80
115
120
80
74
69
88
106
106
91
83
154
118
113
175
96
99
64
127
115
143
102
101
140
115
99
69
128
123
91
145
128
165
107
76
104
106
76
88
154
127
109
109
162
85
114
137
172
111
80
95
99
119
146
78
69
89
95
69
87
87
56
90
88
121
100
87
80
82
78
154
91
119
111
54
134
154
80
52
87
134
151
91
56
80
151
154
78
115
69
87
153
93
73
80
78
134
121
80
157
54
80
69
69
130
69
128
107
72
159
155
99
101
99
127
105
87
109
62
163
52
100
197
80
125
76
88
69
78
102
120
119
78
78
78
146
82
125
76
104
175
150
123
143
69
87
76
78
120
128
163
136
127
88
142
95
126
80
133
185
111
90
106
99
120
109
80
137
129
109
69
72
107
120
78
102
98
80
147
87
88
113
94
136
155
99
69
87
88
130
72
87
89
131
104
100
164
91
99
83
108
115
104
78
101
104
144
78
93
80
107
59
113
94
80
119
110
109
137
99
130
80
130
109
106
88
80
133
87
107
106
146
113
74
52
80
119
78
113
134
172
80
129
87
107
66
110
85
93
110
143
88
99
115
101
100
72
95
74
69
107
99
118
119
69
80
66
134
162
131
107
122
80
93
104
101
87
72
89
126
140
120
69
146
131
69
128
99
69
156
128
112
201
87
67
52
87
78
120
93
80
159
69
69
109
124
76
94
102
107
87
76
93
119
78
128
104
131
112
128
88
135
115
107
95
69
120
113
133
106
104
69
201
133
89
163
88
87
107
120
89
80
80
145
98
80
119
78
137
76
90
87
94
113
87
164
124
87
78
124
131
120
80
101
80
109
69
78
123
120
164
121
69
128
87
69
80
69
43
93
141
120
93
113
148
69
165
107
59
119
80
112
81
102
136
126
121
85
80
109
110
112
69
112
107
87
109
93
90
154
109
104
201
123
69
199
130
76
143
66
88
136
89
76
94
76
69
155
140
103
121
129
80
127
90
80
164
101
80
99
76
90
146
71
88
52
175
76
104
107
101
152
135
69
183
107
133
87
137
103
78
107
96
96
80
120
89
78
93
94
112
132
147
120
160
52
82
103
134
68
80
87
69
87
76
80
80
80
153
80
80
69
72
134
78
93
96
87
140
127
118
84
136
56
104
146
95
80
209
69
109
151
117
87
74
72
87
95
175
89
87
88
96
72
80
88
127
129
136
156
111
113
76
105
121
69
78
130
80
99
137
109
128
87
87
85
137
106
140
87
100
112
100
80
69
85
146
69
87
160
88
112
129
175
114
80
110
128
80
80
79
94
107
79
114
156
175
131
130
94
86
153
63
124
144
119
116
120
146
145
175
80
69
87
81
80
140
80
128
109
109
130
110
128
76
106
115
145
101
120
80
119
117
109
107
96
110
118
175
109
110
101
89
130
69
92
106
66
128
113
128
87
163
74
104
119
111
56
156
96
87
80
54
100
128
131
136
123
56
120
150
155
81
80
175
80
96
104
80
130
127
74
136
151
113
119
117
103
68
80
128
52
136
78
69
134
107
121
113
155
107
88
78
106
145
80
197
72
121
71
102
88
69
134
80
128
112
88
91
155
80
101
143
94
89
120
111
93
118
99
140
76
101
115
120
97
154
106
80
124
80
69
107
69
107
172
133
82
139
128
103
82
94
154
174
83
80
139
100
113
121
88
98
96
91
140
155
109
99
89
117
140
89
102
94
108
119
114
55
119
80
106
139
128
102
121
87
99
113
156
113
76
89
131
138
121
88
94
87
76
125
130
120
137
66
160
93
69
87
87
120
112
102
113
110
156
88
120
88
110
146
95
143
112
87
81
113
119
145
120
121
69
93
80
89
146
104
80
119
80
100
113
114
105
119
106
76
76
175
52
102
115
120
155
100
72
80
101
99
94
89
197
142
125
146
117
137
109
90
82
76
69
87
149
101
91
75
146
78
117
121
115
80
175
146
90
156
145
76
119
113
100
106
100
80
109
54
128
80
69
69
94
94
128
89
87
110
54
126
83
98
148
94
107
89
101
69
175
69
147
111
197
69
139
155
136
99
115
110
117
119
99
69
174
91
80
128
95
85
131
90
109
52
128
116
131
88
101
88
104
197
88
80
76
128
155
78
91
99
99
102
87
78
91
122
69
99
127
120
151
88
119
80
64
132
87
158
136
148
80
96
120
120
119
96
52
83
133
91
104
78
88
112
107
80
88
76
175
151
120
87
129
197
101
102
78
67
146
111
175
121
80
94
160
151
103
99
78
93
137
85
102
87
98
118
87
137
128
155
89
110
112
103
107
152
120
80
154
96
96
130
124
175
120
69
99
69
87
80
175
154
85
143
56
175
78
121
80
105
175
89
118
131
174
101
78
69
80
156
76
92
91
87
140
163
138
134
89
78
83
74
87
80
121
107
64
138
75
72
93
118
69
99
154
197
87
52
87
156
94
66
115
181
152
146
146
113
154
87
87
96
56
69
129
69
72
156
93
87
80
175
78
69
110
94
131
80
107
120
136
112
111
103
119
124
127
80
118
69
145
89
80
106
104
72
156
121
78
67
98
110
121
120
197
123
119
116
93
69
139
78
80
175
140
175
110
129
85
160
73
88
76
104
131
175
76
115
127
100
99
151
82
112
119
69
121
107
100
137
107
80
80
59
99
76
130
107
133
154
132
80
156
113
155
80
181
69
109
80
117
91
110
127
69
95
80
87
115
132
128
156
104
80
118
111
175
80
134
164
149
99
98
89
121
87
83
201
80
69
101
69
120
134
150
134
76
147
112
166
100
154
89
88
104
99
80
103
129
88
112
87
128
93
59
76
127
122
109
69
101
76
80
88
131
89
52
121
178
111
99
85
78
118
80
120
104
87
92
149
80
133
80
120
119
93
69
91
109
140
125
99
83
64
113
128
127
107
152
80
156
145
124
156
117
80
78
109
102
128
144
102
153
109
96
107
96
143
72
75
79
78
119
87
102
154
79
78
122
89
118
69
130
101
69
88
154
100
128
121
110
96
89
91
104
107
52
175
107
175
115
91
145
143
120
69
72
80
76
117
113
69
93
151
80
80
78
136
119
87
80
54
76
137
91
80
54
121
106
78
135
120
69
78
110
91
87
92
72
74
121
94
100
80
103
131
87
175
101
111
80
131
146
132
69
69
106
110
79
76
87
93
119
143
197
94
59
160
89
181
80
110
133
67
123
120
91
78
144
156
107
121
89
78
137
113
117
69
122
91
129
100
121
152
171
104
111
69
112
205
117
149
149
85
89
121
88
80
80
93
103
128
84
79
107
87
56
111
114
175
163
119
120
142
88
90
94
109
145
136
154
69
134
74
80
117
121
126
117
160
87
118
64
80
107
72
145
120
107
147
128
87
118
106
80
104
119
140
99
80
88
106
78
115
113
89
104
91
94
72
110
122
69
52
76
151
69
132
87
139
107
104
131
94
120
93
94
78
104
121
149
128
121
112
105
91
131
80
80
103
89
115
104
87
80
56
113
114
88
90
131
124
120
146
160
87
117
69
117
175
91
72
117
69
80
76
93
101
93
80
100
91
111
80
99
128
156
143
69
120
137
80
129
80
78
69
154
87
155
78
114
112
99
99
156
154
80
80
134
175
80
80
143
88
87
119
126
87
87
110
100
93
107
148
117
74
134
110
164
156
119
74
199
111
69
125
101
87
129
109
95
80
80
74
99
154
143
120
164
80
69
98
136
79
69
114
128
145
91
154
136
136
80
197
121
112
154
152
116
87
155
80
76
89
89
137
119
155
107
54
151
64
148
131
141
99
107
175
69
96
122
78
109
88
113
154
109
132
123
176
90
78
80
87
87
80
133
119
78
121
115
119
78
109
197
88
80
101
75
95
99
104
68
56
143
163
79
111
96
88
114
76
132
106
117
83
146
69
66
159
88
69
76
117
121
138
159
69
113
128
118
80
97
145
121
89
76
99
129
153
98
78
71
126
117
127
89
98
95
83
80
89
119
74
74
107
110
80
103
106
94
69
107
136
114
146
93
89
80
89
119
94
80
99
74
69
94
128
83
76
99
121
146
88
132
99
154
129
120
129
173
109
72
119
120
98
117
128
92
76
104
126
156
80
97
118
71
114
87
94
111
76
80
80
133
87
80
122
120
52
131
128
112
112
136
135
145
126
181
76
107
69
121
87
74
87
129
80
87
120
130
118
134
80
69
107
128
69
80
69
74
87
131
112
76
87
112
85
69
175
112
89
109
125
124
54
197
140
69
100
80
128
110
94
69
76
199
93
98
76
120
106
89
123
133
109
127
94
80
151
69
101
154
128
99
105
85
80
69
121
148
133
87
104
166
124
128
183
128
91
134
119
88
94
107
80
152
111
104
131
100
80
69
134
56
117
78
80
131
78
92
102
93
69
131
118
114
134
88
140
131
87
134
120
90
119
98
88
80
175
119
122
99
80
101
209
78
80
69
137
106
69
80
156
104
80
119
174
154
211
78
101
80
104
80
129
134
89
109
134
117
145
125
80
76
132
69
96
122
128
162
110
83
134
134
121
154
94
80
106
80
113
120
175
148
109
107
182
94
78
100
136
80
78
69
107
107
94
82
183
160
91
117
128
83
118
78
155
80
119
110
101
69
121
124
128
119
73
119
78
115
80
113
80
87
141
88
83
163
77
63
147
69
120
183
69
80
97
112
112
79
83
69
185
69
96
107
119
91
81
175
144
80
87
76
88
76
72
117
110
134
112
69
93
147
154
143
99
78
76
80
76
128
88
113
154
152
102
71
128
131
88
118
113
58
79
92
154
78
75
128
78
80
157
87
175
91
104
121
78
94
96
52
66
124
110
94
94
88
154
115
163
120
115
138
160
76
131
112
140
69
56
127
136
113
87
146
121
88
91
56
109
110
104
132
119
119
123
101
80
99
119
94
110
148
90
113
117
76
122
110
119
128
69
110
75
116
104
159
89
143
69
122
109
80
91
80
143
83
121
80
80
99
69
83
156
66
93
175
80
163
121
69
128
94
125
69
91
80
54
111
112
89
87
127
78
54
83
69
87
69
52
154
113
88
159
69
94
78
147
128
84
80
69
147
100
156
148
140
154
104
128
119
175
76
147
69
128
131
109
90
80
87
88
78
94
78
89
107
131
110
80
114
113
134
92
125
69
94
87
80
111
158
164
119
78
120
85
94
132
118
197
107
80
119
124
101
121
157
197
78
154
110
99
69
123
90
137
122
76
154
139
80
131
104
69
107
139
69
155
99
95
69
124
108
99
101
69
104
120
78
107
89
74
113
127
103
118
52
143
76
72
197
121
93
80
104
102
54
87
126
175
175
71
69
147
112
69
160
94
69
136
93
111
151
101
127
104
69
129
76
104
78
71
69
76
78
80
76
109
112
174
87
106
171
175
136
106
99
109
110
138
134
87
109
119
134
137
76
134
91
80
147
178
110
78
165
112
119
80
118
88
145
94
52
122
87
90
76
149
59
115
96
56
154
115
91
154
99
76
175
78
104
95
140
96
107
129
72
117
78
120
113
69
69
69
69
69
121
94
78
127
148
109
110
109
110
119
101
54
69
87
91
76
134
145
119
92
118
119
140
98
113
88
175
127
94
87
117
119
114
78
146
86
162
69
85
83
103
80
113
80
69
107
128
78
79
87
98
74
145
113
131
104
80
112
74
102
120
163
113
78
76
154
99
80
120
164
110
118
80
69
104
107
120
79
154
103
104
87
67
144
156
100
95
124
52
88
152
135
78
94
106
76
69
80
111
76
89
93
78
80
73
95
129
80
69
75
153
91
94
107
100
111
69
115
104
134
139
104
175
87
94
155
87
74
109
75
69
109
175
76
133
116
119
96
72
123
107
199
76
163
54
110
87
80
76
78
138
89
108
69
110
120
137
78
74
112
101
136
64
78
96
108
69
164
78
132
129
156
80
114
112
106
119
54
78
123
126
96
136
85
78
134
134
122
163
89
131
97
78
119
168
94
104
96
113
99
136
74
96
156
80
142
154
158
99
78
103
117
87
165
80
94
156
106
96
123
85
92
131
154
108
78
99
140
119
107
78
127
126
80
103
107
106
69
78
134
119
143
163
132
121
87
69
76
80
119
87
175
102
93
76
120
94
149
69
101
74
115
78
108
109
89
104
80
79
134
87
157
109
80
82
107
107
109
100
109
91
87
109
99
80
120
118
129
56
52
124
120
143
107
107
116
78
126
119
107
151
76
136
88
109
160
147
54
93
87
96
136
126
131
94
83
80
104
80
131
154
80
69
154
69
115
107
99
108
72
80
109
72
112
119
85
99
127
88
133
154
119
103
175
80
136
80
140
111
80
95
109
128
148
164
143
109
121
91
119
113
107
99
95
197
111
162
175
99
76
131
100
93
93
109
137
87
69
131
80
119
100
142
83
133
110
128
134
72
156
109
88
117
156
97
91
139
136
80
80
92
144
76
87
90
92
101
80
85
78
133
107
103
66
93
78
99
120
156
69
118
107
94
89
175
110
96
52
109
95
87
69
120
94
105
142
109
115
90
69
58
76
121
127
106
119
87
197
87
69
120
89
151
108
72
78
119
134
87
148
78
89
119
88
130
94
119
127
136
88
76
100
106
78
120
121
89
151
89
87
129
76
80
98
87
85
121
145
89
123
121
69
88
99
59
69
56
66
156
117
69
78
86
109
114
131
137
140
138
102
85
101
87
69
154
128
94
74
103
102
99
80
69
80
119
126
137
85
94
80
52
107
119
123
80
80
175
52
115
111
152
90
107
175
148
88
78
88
134
126
88
109
94
80
80
104
69
146
91
125
72
76
76
110
96
106
76
90
54
69
87
118
87
76
147
133
115
118
87
82
78
156
134
88
114
80
87
126
76
103
78
78
158
107
76
136
120
199
131
137
94
112
128
140
112
104
87
160
113
102
112
102
69
94
56
94
131
43
102
89
101
118
89
80
69
83
121
133
76
181
112
130
69
80
175
88
119
85
80
80
88
201
85
80
99
69
80
109
119
100
99
88
156
54
106
99
131
69
87
107
151
104
128
89
69
151
114
69
117
136
176
76
93
119
76
117
101
107
123
93
117
128
107
102
155
106
137
155
128
117
100
136
69
78
120
144
154
114
139
76
156
117
150
69
69
54
136
95
69
54
123
131
131
121
89
144
122
121
99
175
103
93
156
125
150
111
80
107
107
76
123
111
74
112
93
80
112
54
107
73
152
149
113
90
64
80
174
129
117
109
78
87
89
87
106
121
134
103
93
88
76
164
80
80
90
117
99
151
85
153
59
129
122
69
87
78
88
88
87
96
87
107
74
152
78
96
128
136
78
109
134
76
107
78
99
103
134
109
119
80
69
111
78
69
80
64
69
76
128
119
109
154
147
150
112
94
187
69
80
58
119
122
137
69
125
69
154
113
119
88
119
80
199
134
109
127
108
127
80
87
154
189
87
175
107
104
164
74
136
106
58
101
115
155
99
117
156
100
104
104
89
69
76
89
106
88
80
107
177
43
95
106
175
91
76
128
85
112
76
109
128
89
124
134
145
134
120
80
80
56
107
99
128
174
112
96
118
56
85
87
94
106
76
80
96
89
197
96
136
78
80
88
109
91
136
94
117
78
113
80
154
69
72
91
87
80
117
99
93
94
83
83
124
120
156
106
155
121
102
128
72
113
120
128
92
88
154
107
156
126
108
163
103
127
94
89
107
142
155
106
74
137
69
128
88
93
54
110
164
90
80
163
100
80
98
69
72
145
104
85
67
131
78
78
110
107
90
127
99
128
113
122
87
146
99
54
136
176
112
107
145
76
121
144
109
78
120
131
76
117
156
87
94
163
95
69
187
88
128
110
80
89
199
104
119
154
68
80
140
124
87
96
149
100
89
87
131
80
78
87
76
151
146
144
133
89
89
152
72
117
134
69
151
87
88
109
89
117
72
76
149
128
110
88
93
134
166
140
175
80
85
95
121
117
94
110
80
74
113
52
150
131
72
80
123
101
148
175
104
96
113
89
149
79
131
155
92
122
110
98
154
83
99
109
140
78
87
123
156
89
99
104
110
104
118
89
87
140
80
80
102
107
93
122
117
69
74
78
69
67
52
134
87
76
78
96
112
67
155
80
89
96
119
175
106
69
120
91
58
112
128
119
80
89
129
136
154
94
109
197
89
69
146
94
69
154
197
114
69
85
153
82
163
121
76
56
126
76
102
115
128
91
99
87
64
120
69
110
94
107
141
99
156
106
119
175
122
102
199
102
131
110
52
154
101
125
103
75
134
104
146
105
154
156
152
128
113
119
78
91
109
104
115
140
146
147
69
110
76
128
110
112
106
119
87
103
73
96
80
88
115
122
119
154
87
69
133
94
120
140
163
154
140
87
145
69
131
79
109
109
85
175
80
129
122
141
128
76
156
112
128
119
151
118
120
100
104
104
106
101
104
141
68
119
104
151
119
143
107
115
88
69
85
110
143
87
91
118
69
80
156
143
92
74
143
117
106
118
101
101
69
89
69
78
91
69
91
155
128
197
107
121
126
76
67
106
90
154
80
80
88
98
151
99
112
107
110
119
99
110
129
140
120
109
120
80
164
107
144
93
111
57
68
120
134
88
104
74
91
99
111
76
97
99
131
104
120
119
96
114
107
119
119
91
144
117
125
128
144
119
87
134
93
197
87
141
183
135
96
144
128
80
118
60
69
104
133
110
87
113
127
91
80
80
130
78
128
79
76
96
87
137
84
112
126
87
69
185
197
94
106
98
120
110
69
115
113
107
134
107
175
120
99
120
64
76
95
80
138
132
151
115
113
109
118
87
69
91
151
88
87
197
102
186
69
113
137
121
83
87
110
116
156
60
80
121
126
80
89
74
78
106
94
119
156
131
113
131
117
104
114
114
78
83
76
111
119
87
99
76
134
78
96
119
87
136
78
87
111
120
87
107
96
104
142
115
113
72
99
89
119
113
125
104
122
96
110
137
148
100
127
131
85
175
123
108
79
89
107
85
54
124
78
80
137
95
156
156
99
121
72
140
100
76
124
109
87
126
104
136
103
154
119
81
119
117
76
80
120
101
69
103
101
71
97
160
52
76
152
154
96
102
72
74
128
99
94
107
78
105
129
91
88
80
123
107
76
69
101
80
154
94
175
147
117
103
94
123
139
94
69
112
110
78
102
115
111
104
119
105
99
119
69
56
78
72
101
99
118
156
128
146
112
120
99
82
112
123
128
115
111
95
119
154
78
80
80
122
88
91
80
80
154
107
144
80
98
150
113
57
120
80
100
107
146
100
87
69
90
80
121
69
66
99
87
140
73
112
97
115
125
134
76
95
154
121
148
80
174
106
197
77
101
112
112
57
106
130
107
121
101
119
152
87
80
80
54
93
119
116
151
96
111
89
112
54
115
146
109
122
109
91
78
127
151
69
89
147
80
72
175
175
78
69
129
67
124
132
58
127
69
99
118
106
131
91
76
80
85
78
175
115
89
80
109
80
80
138
119
80
120
69
54
80
143
43
69
80
117
150
120
154
88
76
69
87
87
118
93
175
69
129
148
136
79
64
87
113
80
171
126
69
127
155
80
155
117
119
117
87
80
109
140
117
80
99
91
110
113
98
104
106
146
89
148
128
134
107
163
131
99
76
128
122
162
96
87
151
107
78
78
80
120
80
80
127
111
113
80
78
78
69
102
99
82
120
43
93
114
175
175
103
76
69
56
80
96
110
78
89
80
116
131
94
140
122
131
69
80
88
80
149
74
96
154
89
107
99
99
121
126
110
96
91
120
113
115
115
87
147
105
85
107
175
120
99
109
119
126
157
85
175
94
119
113
87
90
123
98
142
101
89
98
175
134
84
156
163
109
107
128
98
99
136
83
128
107
117
52
96
123
87
81
71
69
106
160
106
90
150
121
69
148
76
175
109
96
89
72
174
154
147
128
107
76
163
156
104
107
109
87
155
88
104
109
87
69
80
99
109
78
91
111
76
80
106
104
104
119
85
78
94
176
102
85
74
89
125
119
91
119
136
72
154
67
89
78
113
140
127
87
80
112
120
80
133
122
197
100
120
80
136
175
109
110
102
123
94
80
102
96
78
101
127
72
107
66
154
76
120
72
104
87
147
87
134
123
112
101
123
130
112
126
88
156
69
107
93
120
80
124
95
144
175
95
91
120
125
113
87
69
112
93
201
121
99
99
151
101
104
134
122
126
156
80
74
80
103
123
122
78
88
128
113
104
109
125
118
175
80
104
110
80
109
145
126
133
119
145
43
117
87
154
104
92
110
80
88
88
90
164
94
78
80
123
175
72
98
69
156
110
107
137
110
89
121
95
54
145
140
94
110
69
103
83
76
111
104
117
147
84
85
175
112
155
87
101
123
67
76
89
126
122
102
109
69
117
78
106
69
91
146
109
80
80
54
134
175
69
120
112
108
76
175
106
136
140
87
91
76
69
91
155
109
144
142
140
57
69
91
69
119
128
134
134
93
146
157
151
128
76
118
80
96
111
102
80
93
132
107
117
155
74
87
123
115
157
85
87
76
120
101
119
99
94
89
104
78
69
87
197
109
130
110
131
78
155
80
69
92
134
128
111
91
140
52
112
80
113
69
76
107
107
125
121
175
84
128
98
106
134
131
89
120
69
147
120
175
57
96
106
87
134
80
78
94
87
120
175
85
88
175
76
85
117
85
69
112
138
82
121
82
116
127
86
121
93
100
132
76
69
80
144
88
76
112
80
87
115
117
119
79
87
80
69
88
119
97
110
80
147
92
56
79
164
69
94
151
81
110
126
80
80
76
80
88
69
81
91
152
111
101
94
99
137
89
128
150
76
67
69
117
101
140
197
151
87
110
128
99
76
197
85
134
145
122
154
141
94
128
80
113
101
80
72
154
90
109
134
104
89
160
131
119
132
183
107
82
126
119
122
76
175
156
101
117
87
76
114
145
164
126
106
109
118
69
80
80
80
120
80
120
126
76
87
147
94
128
90
175
69
126
91
119
69
119
87
95
72
89
143
76
119
109
101
114
154
103
80
80
114
112
69
119
119
137
134
128
201
97
155
80
154
163
87
119
122
131
80
88
80
99
78
94
94
197
52
149
134
89
74
120
126
120
129
94
101
109
99
142
155
128
155
80
91
93
109
120
80
71
76
197
128
104
124
161
90
120
69
80
112
80
148
74
133
152
154
108
120
120
80
54
126
101
115
99
76
107
109
87
96
110
90
87
87
87
101
76
71
116
114
106
87
118
154
76
90
107
126
76
120
115
146
107
78
154
140
94
76
147
152
135
101
118
69
101
119
56
69
69
117
131
175
96
144
175
120
93
80
80
78
112
100
89
100
115
83
175
100
140
99
72
87
87
120
151
69
128
93
80
125
156
128
88
104
119
109
119
107
89
121
107
99
174
69
56
90
69
119
83
69
107
112
109
113
87
110
78
197
101
105
72
119
67
116
105
71
69
117
104
133
143
80
78
99
92
80
80
90
128
83
96
154
88
78
131
107
56
78
132
94
106
137
120
78
112
88
164
117
197
80
197
76
101
88
97
121
146
140
80
99
156
123
109
87
78
128
87
140
69
87
127
80
79
93
107
140
128
113
131
93
123
104
113
107
99
110
72
136
110
88
78
87
69
111
87
117
108
78
134
154
113
120
152
78
98
112
104
181
103
119
89
43
130
117
87
107
93
111
131
80
76
78
69
142
79
123
118
102
117
93
175
69
98
131
88
104
69
130
99
80
101
126
96
76
127
93
80
94
76
111
87
116
102
69
80
94
134
76
69
88
77
175
110
154
75
107
69
78
115
78
146
155
89
80
93
94
96
104
88
96
91
80
119
110
104
183
110
78
155
149
119
80
76
112
121
122
69
106
100
111
120
52
91
154
78
94
76
107
78
119
137
119
69
109
185
69
119
126
146
114
163
87
87
101
162
80
103
131
104
160
94
151
121
78
115
101
110
94
137
102
80
110
80
99
94
106
69
73
99
136
99
110
199
80
121
80
115
125
112
131
122
100
154
111
127
94
87
87
78
130
52
76
76
140
52
69
107
154
90
107
94
146
126
92
107
69
56
112
88
151
69
140
154
123
134
175
156
80
122
106
156
96
76
93
100
163
69
120
96
120
99
119
99
89
107
106
69
80
72
107
116
120
154
69
110
56
76
154
107
69
133
109
143
77
111
142
117
109
74
104
78
107
128
76
134
89
99
136
91
87
115
102
126
99
72
120
78
175
88
136
131
109
117
89
116
80
94
87
106
76
102
69
131
80
133
75
76
72
119
137
115
76
106
196
136
93
112
141
122
125
128
78
80
99
80
138
134
80
137
69
94
114
91
134
82
120
74
80
143
154
154
87
154
80
78
80
156
131
85
97
128
131
144
80
69
122
80
69
107
88
82
89
103
82
104
89
120
101
121
69
96
133
133
76
114
63
106
94
95
102
69
152
94
121
87
148
85
115
99
120
155
118
85
183
80
80
110
185
107
118
76
96
89
94
117
134
137
88
138
104
131
105
183
104
80
122
94
82
151
78
87
121
66
99
134
117
131
118
93
110
140
113
117
134
104
134
110
117
80
96
98
71
87
86
134
131
102
69
142
78
89
106
88
100
80
101
122
69
155
125
43
107
78
74
119
117
140
80
96
93
119
119
98
80
54
52
91
131
114
109
96
133
69
172
69
112
69
69
118
102
69
98
76
85
175
139
136
131
96
130
113
106
128
96
120
76
155
80
74
142
104
148
184
107
80
150
175
80
104
74
74
69
133
121
91
111
106
117
100
122
89
100
100
154
156
140
69
119
86
101
102
122
104
124
87
124
87
90
107
136
83
94
89
103
156
136
184
85
120
114
80
91
132
137
154
149
95
90
116
121
88
146
118
109
127
75
69
104
128
121
87
109
109
119
89
99
119
80
125
115
82
71
128
80
94
113
80
181
154
102
78
95
80
85
80
137
96
106
104
80
154
98
107
118
94
69
87
121
128
146
89
101
131
118
98
87
94
87
119
146
120
154
156
87
94
87
134
138
108
93
96
104
128
69
87
109
76
75
124
148
108
73
109
123
157
136
78
140
112
87
99
175
117
80
79
151
94
93
107
133
164
91
74
136
116
100
95
104
117
154
76
94
105
107
127
100
67
154
94
86
80
78
146
134
104
148
132
87
89
78
184
99
102
99
83
146
98
119
87
136
89
99
69
101
175
100
76
199
69
80
119
113
140
109
109
80
69
69
69
117
134
96
87
88
113
84
110
128
115
94
80
137
142
56
145
107
88
69
134
107
94
87
128
96
110
140
131
123
146
80
99
109
76
69
112
66
117
80
114
110
100
67
87
89
87
69
119
104
80
106
99
89
88
78
87
80
87
162
80
69
76
106
124
104
197
76
115
140
131
140
101
99
101
88
141
144
120
135
127
76
109
69
72
72
112
107
102
100
69
121
72
132
76
153
148
93
148
201
109
94
134
89
76
78
80
56
152
52
96
104
80
175
98
87
110
117
80
100
79
78
140
155
169
80
140
69
152
120
88
163
148
93
131
89
107
181
78
130
106
76
134
89
104
106
121
126
76
56
175
154
103
140
156
93
80
106
74
73
69
119
128
109
80
93
94
83
80
112
111
107
127
102
76
69
118
80
111
87
80
78
106
100
121
112
110
78
78
87
104
197
102
79
110
83
99
129
91
88
90
128
110
76
111
96
87
87
160
129
128
134
187
104
80
122
76
154
72
131
109
106
115
131
106
154
87
154
119
112
122
113
101
118
80
69
175
85
119
78
95
136
69
101
76
107
87
106
101
79
175
69
87
98
69
113
88
166
93
156
99
69
99
148
117
102
91
160
97
67
80
76
154
112
89
52
78
80
137
107
126
95
76
99
112
80
69
83
119
119
69
69
93
75
79
128
121
72
126
175
69
118
78
113
127
54
88
80
72
201
109
95
124
154
164
134
109
106
104
94
122
93
155
102
111
199
124
96
99
102
83
80
80
78
128
109
106
104
98
143
76
137
122
80
80
107
110
80
137
78
110
59
80
120
149
134
120
94
89
113
121
134
110
121
94
99
98
175
154
152
129
96
112
154
119
69
108
118
118
56
80
93
108
113
96
110
99
110
131
85
139
78
98
117
125
88
115
119
60
128
100
93
99
110
115
69
87
69
85
120
89
87
128
96
133
107
79
124
117
111
79
74
104
69
78
98
74
121
134
80
130
121
114
87
102
94
91
110
80
52
88
118
80
109
127
88
80
54
156
117
156
121
136
80
117
99
95
110
101
124
101
95
153
87
72
156
72
137
91
78
128
137
134
85
185
171
138
80
106
94
113
128
157
69
112
87
72
76
80
72
69
80
78
110
131
87
128
175
131
90
109
123
76
87
101
80
80
69
150
91
131
112
90
100
109
110
80
91
80
120
87
127
69
80
89
69
109
113
119
76
110
129
96
54
121
109
104
96
134
76
140
66
145
88
149
154
143
102
162
78
83
87
109
89
157
155
124
104
80
110
156
89
91
131
112
118
113
99
107
90
80
87
80
99
80
100
107
128
76
106
128
89
175
88
121
90
80
127
137
136
119
94
94
151
92
197
110
76
100
94
91
127
73
80
142
106
101
80
171
175
89
80
106
64
92
69
115
89
76
134
69
143
102
83
89
76
102
80
110
104
119
80
145
78
111
146
119
100
80
112
131
131
112
134
88
130
87
90
151
91
97
131
78
98
126
94
197
78
138
78
132
69
91
80
69
88
102
118
99
78
119
121
145
69
60
127
106
56
116
80
87
89
80
128
132
106
72
89
74
120
151
159
78
80
106
119
132
135
78
91
120
88
121
121
112
138
134
69
100
115
80
97
79
87
92
96
134
69
122
163
94
127
93
171
106
106
122
94
150
134
110
87
144
52
100
94
76
152
69
110
87
87
96
80
120
57
81
134
94
110
100
88
80
199
145
136
121
52
143
154
144
133
144
88
110
80
74
118
112
102
114
80
175
99
78
154
78
87
166
174
95
130
112
80
134
80
107
87
152
137
109
152
76
120
87
107
87
163
106
130
137
148
89
88
69
109
95
119
134
80
80
119
120
120
99
175
125
96
134
114
78
96
120
120
54
124
88
103
144
101
125
114
133
110
120
120
89
110
120
69
88
124
93
72
69
106
174
69
69
99
156
78
120
131
80
115
121
127
126
113
99
87
78
132
91
115
134
64
99
72
104
109
78
175
76
91
99
69
92
119
134
100
106
133
43
123
80
136
81
80
134
74
107
131
109
129
118
95
80
112
112
69
120
103
74
131
101
94
128
79
80
127
123
91
88
93
121
169
80
110
120
78
76
100
94
154
121
87
166
88
131
69
107
95
78
101
88
91
109
109
104
103
106
101
93
134
106
91
110
72
107
147
91
157
80
128
100
80
80
91
94
156
115
88
137
69
87
129
78
127
89
80
80
155
124
80
112
137
77
74
154
96
102
156
87
99
117
154
130
43
175
156
87
115
113
112
121
117
92
145
164
103
87
151
119
128
123
89
80
79
109
80
87
80
106
153
152
112
92
99
52
94
81
94
129
90
124
128
80
80
134
106
80
88
88
109
96
99
151
146
136
89
111
107
119
119
100
130
80
95
120
120
115
87
127
123
164
76
134
112
106
109
130
107
114
87
76
134
119
151
175
56
104
161
116
110
93
69
87
129
109
120
96
107
119
175
88
99
106
119
117
105
175
80
87
208
79
110
120
85
128
75
140
115
138
76
109
140
54
133
83
87
99
80
124
156
151
126
54
140
69
160
80
127
73
112
123
102
123
69
63
147
143
106
103
81
115
80
80
125
56
106
87
117
119
85
69
69
126
113
96
119
121
80
115
58
144
113
98
134
138
143
54
69
117
121
94
91
119
80
134
115
80
140
69
112
155
149
166
94
100
136
154
80
95
69
69
133
69
81
78
74
126
175
117
80
80
90
154
99
122
109
69
127
121
87
197
82
125
87
107
73
100
72
119
151
183
130
80
132
106
132
89
128
127
154
124
119
133
104
119
93
118
89
116
69
120
197
130
120
151
110
185
133
154
164
115
175
69
136
104
172
151
80
94
72
87
155
80
74
108
94
135
76
110
98
99
80
154
119
106
99
119
80
99
164
134
83
133
169
110
144
89
128
176
69
134
99
118
69
87
80
148
177
119
54
87
127
146
100
106
78
76
151
115
120
123
87
134
80
110
117
76
123
154
152
117
111
87
87
151
163
128
175
117
95
115
201
73
91
80
131
118
69
93
78
102
123
103
87
138
106
78
87
80
119
109
111
69
100
128
68
87
115
80
82
101
107
124
58
169
80
154
69
91
107
113
126
110
66
69
129
88
94
110
96
69
119
131
127
80
99
96
105
156
119
121
69
150
111
118
165
76
83
88
88
118
90
80
140
128
87
119
135
72
89
116
78
87
113
126
88
93
110
89
134
143
80
102
52
134
101
100
104
134
119
74
109
54
69
129
76
87
118
102
80
146
107
130
104
137
134
80
88
120
87
94
72
109
76
105
135
69
69
131
87
93
56
154
138
155
63
164
113
93
109
98
91
87
80
104
113
80
103
94
74
120
88
112
81
121
121
57
109
99
78
104
152
88
113
96
106
83
80
127
113
69
109
128
120
166
56
87
142
85
127
69
133
120
80
94
110
117
112
156
107
93
106
96
151
152
109
137
87
119
94
111
121
139
146
85
66
79
91
104
120
156
115
80
69
94
126
154
79
69
175
101
69
80
74
105
104
140
108
197
80
87
106
121
69
99
136
120
174
113
124
88
118
144
93
131
110
125
76
102
54
72
134
76
109
109
100
76
85
112
112
128
123
125
101
91
119
114
87
69
72
82
136
76
125
88
69
100
110
175
119
127
80
154
69
91
119
80
106
174
106
197
132
107
101
102
120
80
80
140
89
80
80
110
124
78
54
119
134
80
154
110
136
119
80
111
120
128
119
94
87
138
113
103
156
76
78
76
110
88
122
80
87
115
104
143
144
79
80
89
154
131
155
137
157
100
88
129
99
109
99
99
93
69
78
111
80
69
69
78
147
149
137
90
154
69
96
146
104
76
106
133
93
139
96
119
69
98
91
99
80
69
137
69
175
78
87
80
136
165
120
94
159
147
103
121
175
96
80
80
118
154
80
62
197
109
117
128
52
87
120
99
104
130
111
102
75
109
87
76
74
120
72
117
94
114
104
76
76
160
121
134
99
87
77
90
80
80
103
121
87
144
109
101
136
109
99
138
112
107
83
66
121
107
80
88
140
96
167
134
145
79
106
107
163
72
93
76
98
147
107
102
158
120
87
95
69
149
131
106
97
80
99
124
122
107
96
155
75
78
67
69
120
141
90
69
80
102
78
56
78
74
80
102
72
98
87
131
117
117
118
137
92
78
72
175
88
110
80
109
154
175
96
80
111
136
85
128
78
118
80
100
107
78
119
75
145
78
100
89
69
120
119
143
117
80
128
76
120
94
120
122
123
94
119
76
123
80
76
154
89
109
96
120
98
106
69
136
89
134
164
139
90
117
138
136
80
97
69
72
52
98
83
117
120
121
93
90
87
88
87
102
120
83
133
119
109
181
151
106
148
80
145
58
92
72
80
137
96
91
94
73
80
107
109
80
69
128
72
106
100
80
128
110
134
80
69
175
187
84
121
86
72
106
75
80
119
80
101
88
197
109
155
154
94
154
74
106
99
87
154
154
80
89
109
175
132
134
175
113
128
80
72
109
78
80
72
93
87
154
80
118
165
103
164
124
90
74
78
87
131
128
69
114
155
91
154
76
88
80
78
80
82
94
125
113
109
144
132
69
88
107
69
155
175
74
119
67
83
146
111
132
119
197
114
117
89
88
76
107
98
80
88
88
117
80
88
156
77
119
80
80
115
70
71
91
106
71
138
80
87
201
121
106
67
129
143
80
151
106
100
69
87
122
76
127
96
101
104
88
99
69
74
143
111
69
132
69
163
69
78
93
99
93
54
136
67
106
80
88
69
87
119
76
66
122
80
104
102
117
82
107
80
89
80
122
78
80
123
112
144
117
95
112
89
110
69
136
91
113
154
75
52
94
106
88
144
87
131
89
140
110
99
99
110
88
87
131
117
93
87
63
136
115
140
78
119
78
106
154
91
106
156
76
144
89
128
69
76
76
74
81
87
83
99
146
80
88
83
85
72
80
132
69
89
101
128
126
175
72
52
78
134
99
119
111
146
112
175
116
91
103
128
80
88
118
87
123
156
72
115
98
119
69
128
104
92
131
74
117
72
91
52
69
85
123
135
78
137
131
110
88
78
121
126
95
91
112
101
56
107
128
82
121
140
94
112
102
110
78
140
69
80
94
122
107
59
136
126
110
120
197
78
72
80
156
147
121
126
151
104
74
69
93
74
128
80
69
89
121
117
92
87
110
125
74
69
153
88
113
124
139
87
94
93
140
80
73
127
110
69
69
74
88
103
63
187
76
106
99
91
120
80
69
80
146
76
101
119
122
104
93
78
76
90
110
87
131
147
106
120
117
78
94
134
125
69
137
99
69
63
78
102
72
161
99
131
87
72
162
155
106
76
118
120
56
69
58
146
96
99
91
127
75
121
69
110
105
121
78
151
175
94
78
91
76
80
165
104
80
76
140
156
96
80
97
114
87
99
117
114
197
80
99
155
85
87
76
140
87
76
107
148
91
115
69
115
99
154
59
107
69
69
78
120
117
142
117
69
112
181
76
90
143
90
110
144
76
107
109
69
80
87
74
109
78
72
80
125
113
131
117
110
146
102
154
88
96
52
87
175
106
101
87
69
143
111
120
80
83
120
69
150
83
121
100
155
94
80
69
145
134
88
78
106
137
101
94
117
89
80
80
99
69
104
131
175
151
101
101
79
88
87
69
157
89
54
126
145
99
95
88
69
96
80
107
71
133
80
129
87
118
80
154
67
104
81
128
148
76
80
112
87
80
85
83
129
85
110
74
78
80
132
89
76
78
164
120
74
94
96
126
80
88
72
74
88
110
118
78
88
119
87
82
80
147
69
129
144
124
155
128
79
80
175
94
88
133
110
146
87
130
91
78
56
85
131
90
196
87
120
120
118
72
69
110
143
96
100
74
80
119
154
109
72
117
131
76
122
99
114
128
128
76
72
80
163
130
151
80
54
126
87
155
174
69
121
101
87
183
99
94
153
72
87
69
110
87
175
109
98
162
78
124
124
113
115
104
80
99
127
110
89
69
106
154
69
83
91
76
90
140
122
80
111
69
134
104
99
123
103
118
78
78
124
128
67
174
109
155
87
144
151
140
91
143
132
99
80
110
78
199
128
87
119
96
63
106
69
72
117
95
66
107
89
199
121
80
154
113
88
111
129
131
121
128
136
104
114
115
80
87
119
94
187
134
109
93
54
110
133
154
66
87
68
128
113
154
56
69
183
101
125
56
89
110
100
107
93
134
90
149
104
153
110
174
106
109
99
78
88
117
113
78
87
124
116
74
119
89
83
87
175
80
69
97
149
60
107
175
155
102
107
95
127
99
121
121
99
90
128
129
109
181
110
69
136
113
87
87
140
175
88
69
175
74
76
121
120
69
72
120
158
134
172
54
80
91
117
69
73
117
136
91
100
118
88
134
143
143
91
119
94
120
154
60
156
87
150
80
137
88
87
129
100
87
156
69
128
111
128
109
113
76
80
101
80
114
110
110
163
112
145
156
137
62
87
78
87
87
110
137
105
96
54
151
115
100
131
52
137
78
132
134
111
107
148
107
87
102
146
129
165
104
104
175
80
129
97
104
92
80
102
69
175
154
164
112
101
87
69
87
87
112
130
78
121
119
69
136
127
56
76
128
78
80
69
146
76
80
96
76
101
113
120
99
156
127
79
84
69
132
73
134
80
150
197
131
87
125
93
154
121
88
129
106
132
69
89
99
134
129
164
87
163
137
96
90
161
121
94
113
89
77
112
78
154
76
175
80
99
72
197
78
128
155
101
76
74
78
76
154
175
87
127
120
104
109
151
134
121
74
134
104
155
94
106
78
155
104
74
110
144
85
87
122
88
100
117
110
69
94
83
96
106
114
56
135
76
85
107
89
110
87
100
76
69
80
154
109
128
90
122
110
103
80
137
107
115
147
87
107
78
123
78
80
63
122
126
93
74
80
96
172
76
111
124
111
129
69
150
101
76
156
130
93
100
78
94
69
76
128
88
128
100
69
110
113
146
94
72
83
82
112
54
109
113
80
109
107
78
119
132
175
69
131
107
88
104
124
129
78
117
107
80
78
106
78
124
154
139
69
110
78
83
107
143
76
109
119
130
122
145
134
88
80
120
82
85
87
139
94
78
69
117
144
93
87
94
155
106
75
108
80
69
110
165
80
131
88
156
78
136
121
69
119
119
121
119
155
118
119
136
133
119
129
132
117
106
134
143
69
140
69
122
91
147
105
87
110
99
78
119
74
76
197
87
109
102
128
71
69
128
96
145
87
152
162
78
109
89
119
76
118
165
93
69
74
98
85
91
119
117
154
119
88
102
131
175
89
89
121
110
185
78
69
74
197
197
136
117
148
175
96
69
143
99
197
154
131
131
128
80
54
78
121
100
69
119
175
67
52
152
80
102
85
69
109
126
107
76
89
89
201
175
134
96
69
154
122
138
57
137
80
136
109
87
111
98
87
114
96
88
149
95
140
131
87
131
73
52
122
80
127
72
155
88
80
80
120
113
95
98
131
117
88
99
175
119
107
76
115
100
87
119
87
143
142
130
87
152
154
69
136
78
72
138
185
108
80
133
87
101
91
127
117
102
128
83
175
80
175
87
110
99
109
80
106
136
102
109
69
112
69
137
95
122
130
116
80
99
86
89
78
89
87
106
69
76
115
88
144
95
151
87
113
78
101
136
78
151
80
117
141
166
134
138
94
110
109
78
107
131
175
104
123
131
123
174
112
93
102
119
99
158
69
78
154
69
69
107
121
154
78
78
104
80
110
127
79
76
76
114
125
120
148
149
140
174
156
66
102
110
87
76
139
87
93
93
108
143
164
78
85
140
111
96
93
111
118
69
154
152
69
78
99
80
151
121
138
114
110
72
88
77
143
89
99
163
67
106
113
104
119
112
94
113
143
78
80
69
76
154
131
132
109
71
99
137
129
126
69
132
136
121
146
151
85
88
132
82
80
64
80
120
76
109
138
141
154
112
136
88
146
87
155
101
110
103
89
104
94
104
113
112
78
80
69
146
132
87
155
74
139
76
139
80
80
87
98
69
151
76
145
125
80
110
80
119
101
197
99
124
107
201
102
107
120
105
89
143
80
80
102
52
138
69
94
78
80
119
123
96
109
117
76
162
90
126
80
131
110
86
157
163
104
114
69
69
140
175
98
109
112
114
78
69
147
66
92
119
121
117
94
54
124
80
83
104
104
123
106
160
112
87
119
87
80
87
80
95
134
91
87
85
119
148
121
164
127
163
69
98
76
80
94
119
136
154
145
99
90
156
126
113
143
87
136
75
90
69
115
74
127
94
99
99
69
87
69
102
107
90
89
76
76
120
185
74
80
117
113
131
148
109
89
94
102
69
197
139
119
91
69
88
76
136
121
100
143
98
159
90
80
80
120
96
78
110
120
78
93
80
82
114
78
88
110
136
121
69
119
80
86
115
119
69
153
78
128
68
94
121
131
80
106
96
131
146
69
87
88
149
98
116
122
78
148
80
130
101
134
125
92
56
80
102
87
89
142
114
109
99
152
52
128
69
87
110
76
87
89
149
94
143
148
175
78
80
85
104
78
118
76
112
104
175
109
104
127
87
76
155
112
92
120
104
94
121
155
132
128
118
69
88
89
80
137
98
80
126
131
175
80
93
102
131
99
99
107
175
83
76
69
110
112
143
143
88
79
88
80
69
93
99
156
103
87
136
161
98
183
143
127
69
106
71
119
112
151
149
76
115
124
74
76
143
136
101
128
156
92
83
69
72
104
56
115
102
117
99
78
151
126
67
126
175
72
110
87
119
128
157
76
119
157
131
105
69
80
127
145
88
114
98
103
124
69
94
162
102
118
74
126
78
136
80
132
121
113
96
154
123
113
129
121
74
148
80
89
69
69
64
85
121
131
78
107
99
72
80
67
87
76
69
119
127
155
52
128
76
128
104
110
106
76
76
75
69
100
80
89
119
115
80
124
154
91
78
93
88
104
96
140
78
109
146
80
107
69
76
154
128
119
127
72
88
145
163
117
127
94
134
101
76
81
114
118
69
165
93
122
172
114
103
92
130
120
127
154
104
69
89
91
174
110
133
120
69
78
52
89
114
128
138
109
97
69
124
69
112
80
120
80
80
102
101
110
153
99
137
104
144
89
88
80
78
94
87
95
87
69
96
76
137
148
129
90
131
43
69
96
113
141
132
107
115
80
106
143
138
148
137
156
93
80
80
80
91
136
87
142
80
79
88
121
201
175
111
101
79
104
89
128
84
140
99
128
112
134
131
146
87
144
87
78
172
133
72
94
89
119
76
80
80
89
69
67
174
76
110
87
101
93
175
149
110
72
93
113
52
87
78
136
99
89
152
107
156
87
109
69
128
124
137
113
54
147
85
83
87
114
80
140
104
143
69
119
111
128
117
69
154
123
139
85
88
99
69
87
133
174
84
197
134
138
112
103
209
106
129
117
112
119
112
80
80
154
154
80
197
133
94
96
101
128
136
99
136
80
147
117
162
89
88
98
145
56
110
139
87
110
69
102
89
128
80
155
93
101
110
76
100
78
67
78
80
99
91
76
69
74
145
69
163
119
91
154
102
109
76
87
80
99
80
128
166
98
69
175
110
140
76
175
69
175
78
78
87
119
113
64
83
104
132
132
80
87
112
87
69
69
85
149
109
126
87
111
104
128
80
110
107
106
107
128
112
69
80
78
102
80
69
150
89
144
74
87
107
80
80
114
111
102
160
94
69
126
76
162
118
120
183
109
94
117
122
197
151
99
117
131
72
156
95
147
130
201
112
89
119
130
126
120
69
111
118
102
160
120
114
92
99
127
118
87
146
69
94
80
197
74
98
137
117
155
120
96
94
197
85
72
119
140
107
69
110
155
197
80
123
121
116
122
69
121
120
87
121
103
80
80
163
90
82
120
54
87
146
95
88
80
131
91
69
107
175
151
78
156
106
175
133
80
99
63
93
151
138
169
175
110
111
69
100
109
152
127
87
117
131
107
116
107
104
80
106
76
71
126
110
80
138
88
98
156
128
121
72
71
80
121
105
69
80
76
95
100
107
101
127
90
99
171
144
78
80
76
94
76
80
78
128
197
76
109
69
69
80
119
74
163
80
107
74
80
140
94
102
109
125
163
136
117
121
138
94
103
175
104
152
112
136
107
76
76
175
85
87
91
88
66
133
95
96
113
126
175
88
88
98
119
136
104
95
131
76
73
121
80
128
76
130
156
209
76
120
78
151
69
132
155
164
163
146
97
119
115
140
54
69
110
69
107
80
78
94
80
80
119
74
152
134
155
160
121
148
132
102
154
69
76
76
78
88
69
136
69
79
137
80
88
119
69
80
109
76
156
96
69
102
87
109
100
118
76
151
69
87
138
99
96
113
76
76
72
79
69
120
76
74
69
101
74
88
116
76
69
118
119
151
69
114
197
76
125
110
69
137
104
107
116
69
125
156
88
106
96
99
109
66
80
126
102
80
87
52
143
140
163
96
140
105
122
100
87
143
93
89
54
113
80
89
137
74
91
115
69
67
69
120
145
156
96
120
78
88
74
96
96
83
131
113
80
128
115
56
98
90
87
89
152
107
107
100
78
73
76
74
124
69
107
78
93
112
89
145
78
56
91
115
113
90
117
76
117
131
136
100
104
114
78
100
154
72
144
89
131
105
134
80
76
78
80
54
118
120
87
81
80
69
128
104
74
107
141
69
136
100
96
69
145
106
154
71
58
96
69
88
80
112
78
104
110
85
113
107
131
69
119
113
96
71
56
175
154
104
121
87
80
113
80
64
69
119
197
104
128
102
136
69
118
78
138
154
117
101
69
94
109
125
119
80
99
143
104
54
183
134
76
101
99
174
111
181
87
122
140
91
69
43
80
56
74
109
153
107
94
94
81
163
128
163
132
119
110
161
117
157
91
71
94
128
88
116
112
78
112
87
121
115
115
80
103
78
150
131
175
100
107
106
128
120
94
134
69
109
80
109
96
88
87
72
99
175
140
133
69
113
88
147
98
148
128
87
69
52
80
96
106
71
135
80
142
119
110
122
69
69
110
76
114
89
87
72
175
121
76
87
145
91
74
97
96
110
151
141
79
89
126
120
83
96
80
175
101
79
104
117
87
126
107
74
118
107
87
88
122
123
80
175
66
80
148
163
112
183
87
109
136
92
52
148
85
80
124
120
130
107
151
88
58
106
54
127
59
78
128
80
69
111
134
74
76
78
69
112
124
93
112
75
119
109
69
183
125
174
120
93
127
76
103
43
80
120
102
94
117
123
103
102
88
101
118
100
54
69
98
115
67
69
95
80
183
120
87
76
151
164
120
121
89
89
136
110
91
131
119
175
120
101
89
96
54
76
100
107
107
91
119
110
147
87
94
76
91
88
120
121
156
157
75
118
69
145
109
102
116
69
107
110
78
123
94
100
175
128
134
88
76
155
103
106
141
108
87
132
145
99
131
80
78
80
119
106
175
138
113
99
145
78
151
121
113
139
80
115
117
154
174
101
154
69
76
74
98
129
154
98
123
136
104
134
137
87
121
140
133
143
80
120
120
89
122
114
112
80
99
127
119
79
118
123
146
154
78
110
104
77
93
154
133
140
69
147
87
127
88
82
80
78
94
82
93
88
136
141
114
88
80
76
197
75
99
151
88
69
80
106
102
94
94
145
78
119
107
78
109
131
98
112
85
80
117
67
87
76
119
151
76
136
92
52
52
123
123
107
183
80
120
80
109
131
130
131
91
110
131
80
119
127
127
80
136
96
154
154
76
122
146
94
154
72
119
115
119
122
120
127
104
128
175
128
115
113
120
148
119
76
75
96
115
151
87
113
80
91
143
82
143
104
156
80
141
99
117
143
104
109
131
154
64
69
155
80
69
102
150
74
120
181
97
99
118
96
131
76
132
90
113
143
74
120
99
102
107
120
110
72
110
109
136
129
169
87
109
96
107
109
126
101
155
146
80
132
87
163
154
87
174
138
128
109
175
137
143
104
94
78
160
69
69
102
80
127
107
104
104
154
93
107
78
164
139
82
140
80
76
91
87
106
87
136
73
78
69
80
93
94
80
69
67
119
154
80
89
120
110
91
80
69
96
122
157
155
110
87
94
90
181
87
197
98
78
91
165
134
85
154
69
94
119
75
104
94
87
78
80
94
94
80
111
52
92
117
69
98
119
129
113
104
94
52
104
121
92
131
66
78
96
95
114
109
136
197
69
103
111
87
117
154
119
134
104
78
112
109
110
80
90
76
132
101
94
175
94
95
104
104
131
69
146
101
91
154
127
78
100
117
69
103
69
88
75
122
111
146
69
175
76
83
100
99
52
113
113
78
174
88
88
80
154
132
74
76
107
87
156
69
122
95
175
91
101
136
99
88
139
169
118
109
126
110
113
107
76
134
100
113
82
120
90
120
151
80
80
90
52
78
78
112
119
52
54
78
89
57
106
97
107
121
115
80
87
80
109
175
87
129
107
78
92
67
103
76
96
138
109
131
96
100
160
69
107
141
107
78
175
93
76
115
78
110
88
197
107
107
99
87
88
92
117
87
78
104
156
80
120
69
99
84
60
131
151
78
90
69
99
104
144
80
69
120
120
99
120
80
106
110
80
119
154
117
99
156
87
99
183
88
112
102
122
118
98
115
89
91
87
80
140
69
121
88
99
120
113
165
131
120
118
87
83
78
64
163
91
69
69
112
106
99
88
74
90
100
107
129
69
69
80
144
96
104
124
80
106
175
106
68
140
69
117
100
92
134
113
107
89
92
80
156
118
113
112
119
69
131
160
114
91
151
101
136
87
87
107
120
94
117
99
106
100
117
109
93
102
79
69
110
119
96
93
175
80
128
90
126
85
142
94
140
85
126
165
123
119
87
120
91
77
79
109
76
80
80
109
80
114
94
160
72
162
116
123
113
76
87
104
87
75
136
174
100
69
82
72
113
80
99
80
151
128
112
103
88
154
136
107
76
164
140
113
69
43
78
152
152
87
87
88
54
104
140
99
120
87
112
109
69
116
126
72
99
80
155
112
136
126
106
56
175
138
69
80
69
87
87
106
80
111
154
175
56
80
163
112
80
117
69
69
140
128
128
128
99
103
123
110
88
156
102
110
96
88
115
87
69
107
87
156
160
80
69
114
80
157
80
154
99
69
69
101
134
104
127
140
80
137
85
69
152
155
89
153
72
197
80
78
78
121
93
110
104
78
87
69
123
88
96
66
115
93
91
101
72
69
94
89
76
140
108
150
154
163
99
99
80
80
89
121
79
109
91
68
197
113
89
107
107
107
104
89
78
80
118
109
128
80
80
113
99
147
175
165
80
106
110
92
80
94
123
106
122
142
80
107
102
78
73
113
107
160
76
104
96
151
115
69
107
136
116
110
93
155
120
155
140
114
128
82
99
197
98
127
80
75
71
143
101
103
119
76
104
104
143
122
107
75
88
72
89
74
107
111
69
69
175
100
63
154
119
67
78
104
80
112
107
109
152
94
156
69
94
132
119
107
80
107
93
104
74
76
197
69
177
147
86
113
67
112
115
112
83
110
119
117
78
89
111
134
99
89
87
78
143
128
120
71
120
154
119
69
124
88
80
119
80
138
123
88
134
96
151
115
69
69
88
119
52
88
140
156
80
175
80
144
69
88
91
128
104
119
113
78
101
109
148
121
83
121
80
155
89
100
78
78
113
113
80
132
103
88
110
115
116
137
121
130
104
128
151
163
125
174
122
154
87
99
185
80
87
107
109
78
69
89
128
80
66
91
69
72
120
175
131
80
78
80
56
113
109
133
131
121
127
78
88
78
124
107
94
99
133
121
87
75
95
87
175
107
119
155
110
95
107
97
69
94
175
131
120
156
54
99
115
121
69
91
83
89
80
74
80
132
99
138
113
88
120
140
80
128
80
106
110
87
66
175
120
100
87
80
109
80
125
154
106
80
78
88
175
96
80
109
111
140
146
102
78
140
69
78
100
109
122
129
112
127
80
78
151
98
87
106
111
81
80
118
175
93
102
69
74
120
80
185
113
111
120
87
106
64
87
69
87
87
87
127
87
88
121
117
127
136
128
76
110
72
123
93
80
122
76
78
131
87
118
145
82
82
73
91
115
163
154
175
143
122
99
107
69
175
154
110
104
129
83
197
87
175
80
52
183
121
158
76
112
128
154
89
76
120
100
104
120
154
115
52
132
135
113
163
69
101
52
132
155
148
128
76
83
106
104
88
174
95
89
80
72
87
87
119
109
116
197
99
43
103
146
119
131
85
155
76
78
115
69
99
99
143
138
69
87
99
172
154
80
129
115
93
121
142
107
118
119
87
89
128
157
112
80
80
76
76
117
163
140
134
88
110
152
91
88
154
72
119
131
106
115
101
92
154
109
64
78
103
104
115
104
80
148
67
124
140
153
151
120
76
110
100
87
203
94
118
141
99
110
161
100
69
110
76
102
109
88
69
69
87
89
109
155
88
80
54
72
87
72
122
100
76
100
69
76
78
154
69
117
145
87
69
107
135
69
94
74
137
99
111
87
94
164
74
85
121
54
88
154
90
124
126
80
120
117
78
76
101
78
87
110
127
118
80
78
76
119
54
80
69
121
80
121
140
80
130
88
147
115
128
87
76
163
115
119
87
78
104
145
107
131
146
101
101
134
119
104
154
154
87
96
74
131
175
103
114
91
93
151
155
106
93
104
80
175
102
175
119
99
96
175
107
85
134
150
100
69
87
151
104
87
87
99
106
119
99
80
52
109
87
104
140
181
80
119
78
110
132
69
169
126
107
96
87
136
124
128
181
115
106
109
99
119
151
80
78
93
143
104
175
87
104
120
68
120
136
87
87
164
140
112
76
109
169
99
115
106
128
132
80
56
128
118
118
156
56
87
175
201
128
118
88
99
154
80
115
76
120
150
80
125
93
99
175
102
102
120
88
113
89
99
121
134
86
128
127
130
107
69
134
69
100
120
80
143
154
128
67
123
145
112
166
87
87
107
76
96
80
120
54
89
175
78
69
119
76
87
154
131
80
110
69
80
78
69
110
106
80
104
67
127
104
80
128
96
69
123
134
104
155
119
63
113
169
78
54
80
112
133
57
87
120
80
109
109
128
109
104
76
121
109
136
116
175
90
71
80
80
131
145
69
112
99
142
89
72
103
119
87
72
109
76
129
99
76
78
69
113
107
117
106
80
121
149
175
104
155
76
91
129
87
154
175
104
99
92
136
121
111
136
54
96
93
80
58
118
88
140
175
87
88
119
78
109
136
108
146
83
119
80
119
88
80
99
104
103
156
126
109
113
80
136
128
145
72
119
133
140
123
87
103
78
154
83
72
84
138
160
86
148
102
109
92
134
134
69
102
78
89
126
131
129
80
114
69
93
128
87
104
124
87
113
118
156
117
101
166
118
127
89
117
94
131
134
89
80
127
88
109
129
88
87
66
91
76
80
88
197
131
117
136
127
80
175
88
109
78
78
147
69
110
119
80
110
102
111
76
106
122
69
69
54
151
109
80
101
154
87
110
80
128
74
155
101
135
156
144
137
91
146
128
151
109
106
155
115
164
64
87
96
78
134
169
91
87
128
69
69
83
93
119
114
69
93
127
140
109
76
112
74
136
108
134
87
90
87
80
69
102
107
155
154
80
120
76
121
94
154
96
140
119
140
112
88
120
94
131
93
69
79
104
73
99
80
109
110
120
120
69
101
197
175
151
131
80
94
80
107
72
112
166
120
69
115
131
163
88
80
175
92
128
91
122
99
140
69
175
155
146
146
94
89
134
78
187
87
69
80
120
115
93
117
88
72
87
87
128
99
164
136
154
153
106
175
110
69
119
122
140
93
106
72
140
111
106
100
69
110
89
150
69
94
128
110
96
136
101
175
76
138
104
128
120
132
106
99
78
120
112
160
87
114
99
88
72
128
145
133
100
120
79
104
100
121
140
69
111
87
172
79
104
99
78
104
128
120
76
83
69
155
120
154
106
113
175
110
78
113
110
87
140
147
87
149
136
68
126
197
138
100
95
127
78
80
128
208
76
103
120
125
79
78
87
99
76
56
87
80
69
99
88
67
107
102
118
109
109
102
124
54
76
104
80
88
119
78
165
106
69
80
110
127
128
87
127
87
90
109
96
80
109
96
69
80
69
87
89
99
83
111
134
80
80
80
156
87
134
102
89
80
98
93
104
119
95
136
99
88
88
69
119
110
87
136
52
110
80
107
80
136
154
100
131
69
129
108
66
164
78
66
113
93
88
138
99
109
105
80
138
175
109
146
147
106
79
69
107
76
129
197
148
78
157
121
78
80
148
87
112
80
123
72
87
120
80
69
175
88
104
76
131
96
87
118
87
112
145
151
109
126
90
136
108
78
120
154
89
197
100
88
72
124
85
112
131
100
128
69
119
120
80
87
88
78
80
109
110
97
121
78
95
54
130
107
76
74
78
137
101
107
89
54
94
107
155
91
88
96
78
107
78
120
169
87
117
80
97
93
115
94
154
80
121
87
156
89
112
136
137
133
80
160
130
91
138
112
112
75
88
76
80
94
125
54
69
147
117
175
80
175
102
72
165
130
106
163
87
99
125
120
123
87
142
91
87
99
136
78
83
197
111
161
90
89
76
104
94
119
87
78
69
82
152
83
112
140
69
78
99
89
107
117
107
52
80
128
159
69
156
109
107
160
133
113
80
80
80
151
132
66
74
107
151
130
132
76
80
117
119
136
80
110
154
131
108
110
120
101
98
69
80
144
148
197
154
101
88
101
76
104
119
88
156
69
154
145
103
67
80
140
67
126
119
78
130
117
100
146
87
119
93
117
94
89
155
117
132
74
120
111
98
80
78
93
78
68
76
140
89
119
120
134
89
89
100
93
94
66
72
120
134
155
119
119
117
80
175
138
67
175
74
78
88
74
69
111
113
69
99
69
95
107
78
89
106
120
106
145
132
106
76
119
131
101
69
102
107
119
111
99
76
146
116
80
69
111
104
80
143
112
118
160
148
69
174
54
140
126
80
78
76
93
120
78
79
94
106
87
112
109
56
121
87
107
137
119
113
80
134
74
119
131
76
142
80
157
106
87
175
143
56
88
87
88
131
93
199
117
87
69
80
78
114
87
115
119
145
154
78
133
119
103
112
120
140
138
119
136
151
107
119
80
130
113
43
128
91
140
104
148
131
94
130
125
69
113
94
79
110
145
120
78
136
112
131
113
127
80
112
181
110
85
83
146
87
137
56
175
87
107
67
102
56
89
80
87
119
136
163
109
87
106
151
69
129
91
80
105
128
71
110
110
109
128
137
91
146
128
81
103
119
120
104
128
120
197
88
150
69
72
99
161
104
113
112
118
107
107
104
109
175
134
96
131
104
69
111
104
101
80
128
88
87
103
151
115
69
76
89
81
109
129
121
93
81
110
110
121
111
80
104
96
99
76
155
131
89
127
90
88
126
89
140
134
99
113
130
96
69
104
117
104
94
128
106
134
95
131
78
80
134
80
91
54
78
150
132
100
119
99
94
136
88
129
121
80
104
142
80
149
78
104
122
131
122
104
90
133
102
154
129
69
115
175
111
154
134
123
89
69
93
69
118
110
104
99
154
110
94
107
119
89
91
106
138
106
54
89
97
80
94
69
103
89
72
128
107
52
113
175
152
107
87
87
87
78
111
87
110
52
69
123
119
130
175
112
110
132
94
119
117
110
120
112
119
94
88
74
87
119
128
93
87
146
155
106
119
87
175
119
99
118
119
147
136
120
156
80
155
69
76
69
112
119
113
99
80
134
107
181
175
78
104
77
144
156
83
71
95
106
106
117
185
99
159
69
122
67
119
134
93
80
54
101
91
80
109
59
72
91
119
94
154
100
104
132
154
84
115
91
85
103
76
146
80
129
137
69
91
122
121
140
109
128
80
78
143
140
128
102
106
119
106
100
120
76
140
142
122
119
107
145
154
76
120
87
111
163
120
142
76
101
107
88
80
164
151
87
89
119
59
69
117
109
113
105
104
69
130
76
74
102
88
74
145
127
87
128
154
134
140
76
131
69
119
69
104
110
92
119
138
117
107
69
80
94
80
111
146
112
108
80
99
118
117
128
102
78
120
110
80
92
80
72
124
89
94
76
91
129
130
89
136
117
80
88
134
91
139
107
89
128
76
152
134
87
69
91
145
121
78
80
131
113
137
69
183
123
66
151
113
128
128
150
78
95
89
123
127
119
137
119
87
109
87
54
154
74
118
163
160
131
101
80
98
91
101
86
115
109
100
76
80
134
69
102
78
137
104
72
76
119
119
119
197
94
93
88
78
113
72
134
104
88
93
144
89
115
156
89
101
135
107
119
104
76
91
80
136
128
109
175
133
137
96
95
110
100
175
136
120
123
80
78
129
54
95
131
108
129
89
109
148
104
78
80
156
131
69
117
122
91
87
132
119
104
133
86
104
119
76
52
148
67
109
134
76
95
181
94
80
134
76
109
120
80
80
99
136
136
76
83
76
76
87
76
102
83
131
69
80
91
144
114
89
138
175
77
69
76
69
69
88
132
97
129
147
91
126
93
121
98
142
132
131
87
128
69
127
90
120
69
155
87
163
120
146
119
99
110
121
93
99
111
87
80
104
114
146
121
71
69
76
104
80
154
69
110
80
89
80
99
143
69
154
144
69
120
100
82
74
137
128
115
73
80
69
95
110
99
69
88
78
93
106
92
140
175
76
124
80
93
131
80
163
102
118
80
80
69
131
99
83
94
127
119
100
88
99
69
107
148
151
112
197
110
93
142
63
114
89
93
54
69
115
96
78
76
88
148
126
93
175
80
118
120
80
94
89
154
131
98
104
88
129
156
88
135
78
89
103
106
134
174
119
76
132
83
123
127
99
120
80
69
131
146
72
80
106
95
124
151
78
119
90
142
111
74
133
76
87
78
87
136
94
89
141
128
94
106
110
164
138
76
136
72
119
93
146
116
87
146
154
150
71
91
106
115
129
119
76
144
76
133
110
111
95
78
112
163
134
107
127
118
120
89
88
110
115
89
142
136
120
194
121
114
113
78
127
52
96
117
154
104
102
79
94
96
87
80
80
121
100
69
117
99
110
106
138
99
128
146
112
154
69
54
80
136
132
93
134
102
69
101
165
154
90
99
78
166
80
88
119
126
104
138
74
91
186
197
98
100
78
54
87
80
78
99
69
76
89
140
93
76
69
106
114
120
118
78
128
160
128
100
169
154
101
118
145
112
174
68
78
80
80
107
109
43
161
107
87
66
67
183
90
80
93
95
100
80
201
101
139
80
98
110
92
87
107
134
119
125
130
87
69
89
96
108
117
89
144
78
120
120
102
91
119
87
120
89
107
93
78
52
125
73
114
107
69
85
120
69
101
72
112
78
120
69
87
137
80
69
107
69
99
142
119
119
128
80
119
91
87
68
98
60
143
134
69
137
78
109
104
56
145
54
120
110
111
116
88
52
120
88
88
78
80
69
104
118
88
101
69
80
143
104
80
113
109
131
138
72
87
119
80
129
109
58
140
87
115
89
137
69
71
154
151
83
166
72
96
106
109
154
88
117
132
148
113
131
76
113
120
107
72
154
94
119
122
95
80
78
107
78
174
80
113
107
76
76
120
155
113
121
116
131
63
120
80
154
108
76
115
109
162
89
107
89
109
94
96
104
137
109
129
102
122
116
128
94
73
124
99
78
78
96
117
146
113
83
78
160
56
88
76
89
175
136
80
141
96
107
76
80
127
80
106
76
80
163
88
156
69
69
122
134
75
87
80
155
93
120
88
76
69
87
122
107
112
112
80
112
87
89
197
95
119
107
103
128
88
134
155
151
89
101
110
138
138
131
172
91
78
169
120
128
175
112
117
110
155
131
138
99
102
104
87
85
74
82
69
80
80
109
117
111
131
118
147
89
117
99
101
94
120
76
107
78
167
72
136
69
163
109
89
106
144
87
154
99
109
144
116
117
136
122
126
121
104
69
87
80
151
144
156
105
76
88
87
58
118
87
123
93
107
87
113
150
98
138
78
111
80
154
142
165
121
137
80
129
99
99
87
80
80
129
80
127
94
87
87
118
113
78
59
93
91
93
128
80
89
151
69
99
76
68
88
175
79
117
109
80
85
69
104
119
119
80
110
77
127
136
114
120
119
110
74
105
132
143
78
87
112
115
99
113
113
88
136
109
80
120
104
106
101
69
97
152
78
91
136
107
136
127
134
131
87
88
159
113
138
107
166
80
69
80
118
134
100
88
131
76
93
87
88
76
110
78
112
69
151
159
94
129
69
78
126
94
84
91
87
100
80
119
110
99
107
87
112
142
96
94
136
107
124
164
101
121
75
56
80
140
127
80
85
147
87
69
87
115
88
132
109
76
128
132
115
100
142
87
125
96
163
181
130
113
102
123
143
80
74
88
107
69
110
104
127
76
154
75
131
80
80
157
107
129
112
104
98
78
80
82
110
69
74
117
143
80
99
120
80
131
119
146
101
80
80
112
112
72
131
95
84
102
106
64
104
102
116
99
120
96
145
126
119
113
103
145
72
99
103
76
151
101
131
183
74
91
109
107
121
153
130
94
120
80
119
85
69
137
115
143
107
76
110
151
110
153
151
80
98
76
75
93
89
80
79
187
111
151
122
78
133
108
154
163
94
76
149
92
155
80
87
109
117
110
127
147
130
69
110
136
73
80
76
145
87
91
104
87
128
102
64
117
124
80
80
134
73
80
119
80
66
89
109
106
164
69
91
52
87
115
119
110
99
76
87
128
142
96
117
113
80
94
109
197
99
139
92
164
76
175
131
59
113
110
102
129
107
143
69
100
117
142
111
117
69
156
100
119
175
76
78
151
112
69
54
87
93
72
113
155
107
166
139
181
95
119
99
107
76
131
120
74
144
78
124
75
99
88
80
67
103
78
137
94
122
80
69
134
135
76
155
131
134
108
128
145
88
78
123
69
127
69
107
131
123
93
110
78
80
103
111
63
76
104
83
136
88
93
69
88
80
156
85
107
54
69
76
108
120
106
78
72
80
136
100
76
83
89
122
69
120
80
132
89
132
165
120
88
147
119
107
107
128
175
98
89
89
123
128
69
76
154
63
178
104
154
134
175
136
124
154
69
146
91
80
134
136
80
126
134
113
113
128
124
87
110
119
88
175
87
154
136
140
95
110
132
133
136
99
137
131
122
149
87
87
154
89
78
110
175
109
88
69
88
112
149
69
81
93
121
87
131
78
175
100
94
137
197
80
119
69
116
121
134
128
101
123
174
134
129
156
67
69
132
80
131
77
117
119
104
103
119
106
131
121
149
175
79
107
114
90
52
72
83
151
80
164
109
80
69
145
80
116
144
90
109
91
54
72
120
154
155
107
118
87
101
93
128
121
104
99
127
69
107
76
175
107
76
116
91
99
60
69
87
128
87
175
89
69
136
110
110
83
71
91
121
78
91
119
76
93
116
87
102
120
78
96
109
145
80
80
163
94
87
80
89
138
114
104
117
113
117
118
175
156
136
87
93
123
110
101
85
74
88
94
113
102
80
126
69
119
155
128
107
87
141
145
107
119
130
100
102
112
87
121
145
143
87
88
78
122
80
91
107
78
80
78
56
119
89
99
126
110
115
175
124
134
80
106
111
148
85
119
89
121
116
148
69
87
76
143
135
120
90
145
69
66
113
91
99
69
128
117
110
104
69
120
131
140
163
160
112
91
69
145
106
131
67
87
80
101
128
164
114
103
78
120
89
115
89
67
99
54
80
67
119
85
160
99
143
72
78
72
127
87
104
125
120
102
78
114
87
85
117
86
117
172
94
107
69
80
76
76
162
109
80
120
126
69
69
106
130
175
80
146
104
80
197
131
100
93
119
136
123
143
74
80
69
72
131
171
145
139
123
110
117
145
120
175
80
119
87
102
74
119
197
111
80
128
69
120
69
85
80
128
94
102
117
78
112
119
120
109
128
155
58
132
140
109
69
87
126
59
121
106
107
155
82
75
56
160
164
108
74
103
80
89
123
111
80
90
134
102
146
120
137
54
74
69
153
151
114
136
122
80
89
116
154
120
90
121
112
125
140
76
140
110
94
175
69
104
104
124
110
100
110
92
112
136
155
106
175
110
120
156
134
99
126
89
146
92
151
54
130
140
99
122
110
93
72
101
137
120
69
71
85
111
69
121
117
99
76
98
189
43
140
80
101
144
154
113
119
94
164
136
134
80
121
94
80
109
104
80
89
128
43
128
94
101
101
99
101
109
127
136
72
120
95
134
109
80
175
96
72
76
151
156
104
88
102
80
151
151
94
91
128
80
116
120
102
94
152
89
131
120
129
155
112
154
151
131
119
91
76
131
78
94
87
141
56
118
104
120
96
128
56
76
129
101
85
80
119
69
80
80
114
118
120
107
80
69
118
131
126
87
162
72
111
106
119
145
151
67
136
64
107
131
131
121
80
64
98
80
117
112
145
99
130
94
113
78
69
113
140
165
89
117
69
211
91
111
83
80
72
80
133
87
102
89
96
119
137
117
117
110
116
106
156
78
80
127
142
99
136
80
80
52
119
119
104
69
76
89
80
123
93
80
80
71
121
181
69
156
154
96
146
69
154
136
90
106
114
117
131
96
115
113
76
93
101
199
128
80
156
119
96
54
69
156
122
80
112
126
74
113
119
80
104
80
94
87
145
87
119
80
104
104
119
185
119
88
103
99
84
122
69
141
134
151
187
94
74
110
95
76
87
80
85
136
134
102
69
101
76
113
107
95
109
128
134
87
69
79
151
96
147
107
101
122
175
199
120
83
101
128
87
156
131
56
115
101
106
80
78
87
107
87
80
85
104
128
109
120
76
154
74
128
80
121
69
83
94
85
72
78
113
100
88
80
100
63
146
131
71
156
150
80
87
145
87
85
150
89
131
109
110
87
124
144
128
100
113
69
80
80
127
117
110
107
125
115
106
153
100
80
104
112
154
80
69
199
98
133
85
129
87
153
110
97
107
93
87
128
113
80
164
121
72
109
87
110
90
115
69
112
127
106
120
89
69
80
107
110
93
154
69
175
80
87
119
88
132
151
78
80
80
128
116
119
102
78
119
87
123
175
94
127
112
72
88
87
109
72
128
87
95
87
117
160
94
101
114
69
156
100
100
80
78
101
104
104
104
90
88
87
134
91
169
80
109
130
89
89
131
119
155
99
94
151
89
110
97
89
80
104
54
138
113
136
88
76
120
93
95
85
112
128
89
106
107
88
119
78
164
140
76
80
111
119
88
150
107
69
109
119
109
87
113
146
112
122
124
120
69
119
115
124
96
175
96
148
91
119
128
124
128
124
136
94
160
102
138
120
106
80
107
88
136
96
139
131
75
94
105
80
119
107
120
107
80
91
129
78
119
94
158
111
93
151
104
104
110
87
151
80
159
134
124
101
151
175
148
131
127
123
80
93
141
197
119
197
80
124
140
80
119
107
103
125
142
94
80
107
76
80
69
118
70
66
80
119
152
94
103
183
118
87
119
80
148
76
101
197
99
87
69
69
121
131
114
146
146
108
52
109
136
99
66
119
108
131
80
113
99
113
127
69
96
156
100
128
151
119
91
101
69
43
72
99
54
112
87
86
127
104
94
99
143
89
101
148
101
120
102
160
54
113
93
69
131
76
115
111
104
128
72
138
120
175
120
148
106
76
76
80
87
54
111
183
175
112
145
75
144
175
154
113
113
147
119
87
80
133
92
110
133
110
63
94
54
120
75
78
71
128
145
80
99
85
95
136
118
125
76
124
120
96
91
100
78
155
121
115
85
126
94
85
106
80
113
106
187
85
109
69
156
138
88
80
94
76
80
127
91
154
123
78
98
99
69
132
79
98
100
80
109
115
117
143
116
117
111
132
175
128
69
78
143
143
107
131
69
75
137
123
120
145
119
69
131
106
143
147
93
119
88
93
123
94
96
99
155
80
102
91
76
90
92
117
126
120
94
104
107
107
155
87
143
111
78
94
119
69
72
154
102
80
106
78
108
69
133
96
119
102
110
106
154
156
112
93
130
78
115
146
140
126
72
107
109
80
87
121
128
109
128
82
69
128
112
121
113
123
91
87
96
154
101
64
96
88
113
110
80
175
88
56
79
52
131
111
154
199
87
120
72
128
107
56
107
175
80
69
129
92
150
151
163
89
137
175
87
89
197
80
54
78
74
101
108
80
88
74
73
93
89
87
69
79
120
80
104
99
59
121
175
206
80
145
104
78
110
115
87
128
123
128
69
76
98
136
125
118
80
69
85
156
89
143
156
83
99
110
104
101
99
153
80
128
80
155
134
89
117
164
80
107
119
90
141
106
131
100
78
107
78
69
154
145
104
76
87
163
74
120
146
106
87
69
181
138
104
117
152
119
157
78
100
80
85
87
79
110
104
109
151
137
141
120
69
89
106
118
76
131
104
69
154
69
118
154
146
100
87
108
80
75
164
137
87
120
119
99
80
113
94
90
126
140
104
119
69
78
199
127
116
69
87
78
95
120
76
87
76
111
101
89
100
85
88
87
80
129
183
85
76
147
120
91
112
84
97
74
80
88
123
128
93
128
76
52
127
85
80
136
76
107
110
137
72
114
78
101
112
128
99
119
127
104
76
88
80
78
88
52
76
112
87
132
120
87
104
98
76
89
99
175
120
113
104
107
118
125
84
107
123
69
87
120
175
88
76
54
95
97
110
175
80
89
104
120
148
102
87
54
96
131
76
134
197
129
109
102
69
151
107
110
88
153
127
121
78
119
78
79
104
80
93
109
156
102
73
91
104
163
99
121
117
75
120
87
100
76
110
99
87
130
148
154
117
87
96
96
134
123
111
154
72
76
114
87
99
175
76
88
107
107
146
115
133
88
92
75
169
89
109
164
123
99
87
128
85
80
145
93
104
120
137
118
134
140
187
134
100
76
175
107
140
106
73
76
90
76
69
127
69
112
93
89
104
154
156
144
154
110
78
110
163
175
119
119
126
76
72
95
91
101
122
101
125
123
89
87
145
140
78
128
78
175
106
76
129
119
87
69
145
123
120
139
80
150
69
119
69
80
112
119
80
74
87
78
154
95
185
175
136
128
87
119
121
127
73
160
96
76
80
120
107
119
102
110
197
116
136
80
69
85
87
80
80
76
164
136
134
134
69
58
112
175
144
64
74
80
74
120
142
99
121
99
107
69
67
89
143
108
119
111
154
80
93
90
148
117
94
120
80
80
74
99
152
127
78
87
107
94
160
56
110
72
110
109
183
151
76
85
83
133
113
215
120
80
104
78
142
154
121
72
160
96
136
80
80
172
110
80
131
100
169
128
80
137
154
133
115
80
76
87
149
99
99
80
93
83
78
80
95
102
99
78
199
152
78
112
78
144
80
151
104
140
134
54
112
80
67
112
154
102
80
129
104
121
95
175
78
87
103
128
82
75
78
110
101
80
104
121
134
88
78
119
87
164
121
93
115
100
56
119
175
80
118
112
80
69
90
87
128
103
88
54
131
112
113
100
54
69
88
69
154
80
80
99
122
146
69
115
120
96
52
93
76
89
95
96
153
69
87
120
155
187
131
102
76
80
74
80
87
80
80
74
197
96
80
117
116
107
76
111
85
132
141
119
83
120
52
104
101
128
127
107
125
77
98
106
118
175
175
158
87
71
78
96
136
156
130
88
99
80
80
78
67
52
93
103
115
54
114
80
160
152
94
101
118
110
137
104
100
145
115
69
132
148
156
71
78
85
87
125
69
87
103
78
80
80
72
112
119
128
129
95
114
151
80
69
112
99
57
85
123
93
59
99
80
76
90
75
74
113
87
107
175
123
94
80
119
75
69
119
120
69
76
163
87
78
113
69
76
139
108
197
128
118
136
76
80
128
87
145
130
104
110
89
87
76
113
74
109
75
109
69
99
69
150
78
83
175
101
120
78
145
106
151
140
89
80
119
159
121
106
148
87
115
175
69
117
80
85
119
120
69
80
112
102
120
80
167
148
140
80
106
94
91
76
126
92
119
140
80
109
110
155
101
120
87
107
131
72
81
114
201
114
175
143
143
91
122
107
104
109
88
117
143
88
128
107
80
94
140
122
127
75
90
69
119
120
98
88
80
123
72
88
114
109
119
96
145
134
131
132
80
119
131
120
120
69
80
80
163
63
109
75
125
119
80
120
77
117
69
118
160
151
83
136
94
91
69
107
76
87
76
125
92
69
87
79
80
60
185
148
197
99
71
85
155
120
104
189
87
80
102
99
120
78
175
85
119
76
94
99
74
69
69
89
78
92
88
154
88
43
80
102
99
99
107
89
94
78
134
89
94
69
156
160
134
122
106
183
134
90
103
119
175
128
146
80
74
121
130
136
132
97
72
119
94
134
110
76
78
76
80
100
107
90
96
115
125
161
72
106
85
132
93
144
136
119
151
80
69
69
125
101
54
154
68
138
117
54
123
87
76
114
76
155
113
113
101
147
175
87
87
80
157
110
89
134
106
87
147
94
78
123
69
80
175
88
196
100
69
134
80
92
119
88
83
76
136
80
156
100
116
77
94
100
107
132
96
93
122
120
85
87
117
87
122
107
78
139
69
147
69
110
140
117
69
117
87
104
107
138
106
107
88
80
76
87
108
104
169
69
99
153
101
88
69
69
109
109
113
121
141
112
80
89
156
134
104
100
123
128
80
128
97
80
162
59
156
164
88
110
112
132
131
80
54
78
77
76
136
93
78
94
80
109
81
107
104
80
112
152
118
119
133
69
69
175
80
119
78
154
94
104
69
100
106
80
88
83
121
109
199
119
107
76
108
92
94
78
76
69
120
101
131
119
175
43
174
83
117
80
138
74
80
130
94
162
101
174
120
91
161
67
80
54
76
130
134
69
140
69
122
66
80
78
107
112
99
69
97
72
79
152
156
156
175
69
80
67
117
154
104
120
80
52
175
154
119
91
144
91
90
112
99
136
93
112
131
78
107
91
120
129
78
80
96
80
102
109
99
113
154
131
123
110
109
74
117
148
69
80
140
131
119
80
83
98
69
98
147
112
115
111
69
127
87
110
131
94
119
69
117
78
81
78
104
94
101
136
69
110
163
93
106
128
119
87
136
80
80
69
128
107
102
92
80
69
69
98
156
43
89
154
104
72
110
115
102
114
87
175
111
87
119
99
85
104
87
78
74
144
146
76
131
94
106
119
100
85
131
156
80
156
106
130
178
138
110
155
113
143
89
112
128
134
120
66
89
94
69
99
98
107
91
80
88
80
112
78
109
101
119
123
127
112
121
120
143
185
147
82
101
76
107
123
92
87
120
128
161
112
69
113
87
110
87
88
76
144
104
136
80
121
134
134
87
154
83
80
83
144
131
78
183
145
175
128
78
99
78
52
151
125
126
88
92
119
113
128
104
113
87
154
64
99
120
109
102
131
74
78
85
156
146
86
122
151
127
148
113
97
114
128
127
142
94
145
120
70
76
108
75
112
103
69
113
156
142
92
69
118
145
80
117
109
117
101
159
119
106
69
80
54
201
99
154
128
163
78
154
156
76
136
108
69
94
78
110
197
80
175
110
87
119
113
69
96
99
134
134
52
108
131
93
80
107
114
121
134
127
80
108
107
80
96
88
119
69
80
112
89
89
113
124
78
83
120
144
99
119
96
93
85
80
87
118
109
117
78
80
69
119
106
80
87
109
82
112
134
94
121
69
156
115
69
80
80
119
69
82
123
115
106
80
76
137
80
140
69
111
99
59
80
109
71
80
89
113
115
127
69
123
94
96
56
156
104
75
80
134
69
162
120
75
96
76
121
129
199
91
92
120
64
93
85
127
96
154
152
80
78
72
75
201
139
69
84
69
121
110
103
194
80
72
104
80
107
85
121
91
69
60
119
131
80
163
197
93
99
99
69
119
88
76
126
76
148
131
69
152
80
124
112
67
80
107
135
76
99
121
88
117
76
120
149
76
110
127
96
175
136
99
128
87
143
78
120
80
72
150
57
175
154
104
114
74
91
117
109
100
119
138
164
69
119
110
94
76
105
107
134
94
104
110
80
101
58
72
83
87
119
102
99
134
118
135
87
78
88
124
128
87
107
93
85
87
91
107
155
139
140
87
80
80
74
104
129
80
87
125
120
99
88
100
80
181
131
92
87
88
140
119
80
69
121
120
87
113
151
120
107
81
102
161
107
78
134
123
112
145
76
88
78
134
121
94
132
80
140
87
99
80
90
139
94
99
135
113
136
123
112
99
103
169
63
82
88
137
117
58
136
129
89
78
78
154
134
100
109
113
104
80
156
156
78
197
130
91
138
80
128
99
137
87
148
119
107
128
130
109
157
154
151
91
69
131
87
118
163
78
76
87
80
80
119
58
87
56
54
163
78
43
100
134
160
69
80
87
80
69
121
113
87
109
99
128
197
134
80
154
175
113
69
163
154
76
121
99
103
75
131
66
131
131
69
155
80
124
94
104
119
96
69
72
138
130
113
103
78
99
127
99
99
72
69
154
140
122
87
66
155
76
89
120
151
78
66
72
83
116
126
80
145
151
119
80
80
147
109
107
128
105
109
99
140
69
88
119
69
69
118
154
66
104
102
123
80
136
101
128
80
106
175
134
85
110
91
122
72
80
128
80
80
80
154
101
69
199
123
69
99
115
80
156
80
130
102
151
111
132
74
110
89
71
125
145
79
148
115
106
131
106
112
155
69
80
78
78
78
92
93
89
95
125
106
119
142
80
80
80
107
104
91
154
89
133
80
107
78
175
154
87
78
103
89
112
88
93
97
80
128
148
89
136
84
128
175
80
59
80
117
93
118
69
164
43
99
196
80
95
154
162
54
80
89
121
78
96
154
119
149
80
64
91
93
120
88
128
125
100
106
80
85
131
119
128
87
78
134
163
69
107
91
163
155
81
131
78
115
107
174
107
145
131
93
115
76
87
110
102
110
156
119
94
96
93
110
69
94
68
69
107
80
107
104
80
136
80
89
91
120
146
87
78
89
80
131
156
104
80
87
87
117
90
95
120
117
94
84
87
86
80
66
82
154
145
102
104
94
109
175
78
94
107
92
80
109
109
88
76
93
87
80
78
89
123
78
122
113
87
96
156
85
69
151
104
168
101
158
136
101
175
69
76
152
104
107
96
91
102
154
87
69
88
78
113
96
87
113
110
69
87
136
115
102
175
115
110
96
89
119
69
118
122
98
110
164
114
125
101
137
181
154
127
94
120
128
123
89
80
125
119
89
113
87
72
119
54
91
142
140
99
155
123
88
82
76
185
197
77
141
69
115
136
78
101
145
121
66
118
95
157
104
94
80
145
115
125
123
66
102
87
175
128
80
87
140
117
106
136
136
146
85
80
124
136
110
80
93
151
175
78
104
69
114
80
125
107
104
87
175
114
72
90
154
66
134
76
64
94
140
195
72
69
43
78
106
119
76
64
117
107
98
94
128
85
69
76
56
67
120
76
144
112
87
100
119
130
120
175
140
124
72
107
116
88
78
87
100
87
115
110
119
110
98
80
175
163
112
94
99
93
69
119
56
89
119
110
80
136
52
151
78
94
88
76
94
120
100
175
129
96
87
96
52
164
124
138
117
80
131
96
110
80
76
139
96
132
92
169
169
94
119
140
87
88
189
120
69
83
102
128
154
76
110
78
83
94
120
58
156
43
96
147
144
78
69
95
134
117
175
94
113
113
119
99
128
125
80
175
112
115
145
128
87
156
119
74
137
155
78
54
134
88
80
94
125
103
113
109
80
117
76
145
69
78
127
99
80
87
99
87
80
76
124
87
99
197
134
109
79
144
131
174
76
89
87
175
131
101
110
99
121
56
93
109
80
139
67
107
128
76
137
68
197
117
119
104
112
128
101
69
107
101
85
91
120
112
138
185
115
175
133
78
88
69
81
72
80
80
85
115
120
69
94
78
120
120
119
93
132
80
123
119
114
102
89
88
117
107
147
129
96
107
134
71
98
106
96
175
56
90
95
72
88
106
72
147
122
80
156
136
78
121
106
166
71
80
123
80
117
132
118
104
117
119
80
197
52
185
114
131
102
99
151
43
72
96
59
130
76
99
54
96
95
94
164
163
87
89
69
76
130
119
175
113
125
138
154
69
163
134
99
175
154
80
165
96
107
183
155
129
115
149
134
197
128
128
87
113
149
89
109
102
69
128
102
69
80
87
136
120
88
111
127
69
128
88
134
80
122
131
80
146
69
71
89
85
91
100
129
78
85
63
111
158
96
134
69
90
88
112
74
109
136
77
93
105
80
137
151
52
80
131
80
119
175
109
83
98
145
144
136
154
97
120
69
136
69
95
110
109
92
96
103
154
99
120
99
140
102
94
74
87
80
93
154
148
80
164
132
94
80
119
106
103
120
100
119
121
94
136
96
126
76
119
137
119
109
95
85
104
106
120
106
80
80
88
136
76
136
121
80
99
134
97
80
74
87
99
87
59
92
69
94
99
183
96
93
69
96
138
98
80
100
120
175
57
69
104
175
125
118
69
119
127
87
56
85
69
69
199
82
67
82
88
120
107
125
128
144
91
121
133
137
95
82
102
89
79
101
54
76
112
107
116
110
94
84
112
80
136
135
96
73
91
117
151
72
69
96
117
80
164
134
88
120
151
80
89
112
111
155
92
121
76
78
96
104
76
87
80
80
110
69
119
102
94
74
74
87
131
104
80
131
76
116
201
88
69
120
175
175
163
80
183
114
93
119
87
112
83
107
102
99
96
146
128
69
91
54
106
89
121
74
83
137
82
111
119
109
156
93
96
197
121
88
80
98
107
115
126
58
93
134
76
156
101
88
90
131
183
99
72
132
78
122
155
94
91
121
107
174
69
87
159
78
90
125
104
63
145
78
142
124
89
110
175
104
106
121
88
69
92
110
106
83
120
140
209
117
56
129
113
117
128
131
93
67
163
134
122
164
175
75
102
121
76
60
107
133
117
151
87
119
121
119
72
115
110
143
124
119
140
88
154
164
197
78
101
118
127
140
72
80
175
120
144
95
88
87
134
99
128
139
73
75
134
155
91
150
155
113
128
120
157
175
78
112
109
43
80
80
117
175
80
80
109
80
145
92
175
91
76
154
134
176
107
94
80
78
125
123
67
150
68
140
102
101
80
109
137
92
101
95
137
121
143
93
72
107
96
89
83
175
101
197
106
96
119
131
69
121
54
140
69
69
69
74
119
117
87
87
109
137
146
74
117
109
107
152
144
110
164
102
115
80
114
128
109
94
80
126
128
140
132
164
94
110
98
112
87
132
120
88
80
148
109
87
121
175
117
88
121
80
68
107
106
108
138
128
89
137
91
87
140
94
151
104
97
113
123
126
69
126
88
99
145
94
80
118
140
74
72
117
80
77
87
183
118
80
140
92
69
87
120
148
80
80
80
72
69
69
112
109
118
76
136
175
93
99
114
69
80
120
119
100
130
109
172
100
129
130
80
131
69
100
110
119
126
76
93
151
124
78
154
87
107
83
101
69
154
78
175
142
71
118
78
97
69
76
80
80
120
76
69
120
89
69
137
148
121
99
121
69
87
108
78
140
154
94
79
109
80
76
67
101
80
175
100
136
104
163
116
74
69
67
150
72
89
118
97
106
119
145
80
98
123
128
130
134
80
107
122
110
87
106
106
142
119
175
163
80
111
147
101
154
78
95
80
80
78
117
136
80
119
109
76
85
120
128
88
139
91
80
87
80
114
80
109
87
71
76
87
178
100
117
121
54
106
121
112
93
140
76
99
69
78
136
76
80
69
201
175
175
107
143
126
154
68
87
107
100
158
80
96
74
127
156
99
80
121
117
94
110
175
94
112
120
107
123
88
83
110
108
119
130
81
76
124
164
154
146
66
100
87
102
163
87
76
80
69
128
90
107
80
69
80
96
94
163
78
121
119
108
69
117
69
127
69
80
128
91
99
88
80
101
69
67
83
101
69
71
154
78
111
64
118
104
80
80
76
99
120
96
154
134
96
91
69
112
155
107
78
104
69
119
58
78
64
101
113
120
76
119
88
154
106
126
69
69
132
80
127
103
120
136
69
83
138
114
77
80
76
74
72
113
151
93
66
175
93
78
69
69
88
69
128
69
144
136
140
143
107
87
74
107
129
93
163
130
104
126
117
125
78
69
117
112
113
104
95
111
105
80
80
109
175
69
120
172
76
121
91
131
145
146
89
69
137
66
128
83
80
80
123
96
136
160
134
89
119
151
73
80
175
94
87
104
89
95
87
80
119
154
120
109
130
109
150
134
99
119
128
69
112
78
80
175
103
110
153
148
155
52
156
131
131
85
80
90
87
112
76
109
91
72
76
143
89
109
93
87
175
88
112
137
190
106
143
99
80
98
69
134
80
127
69
115
54
92
69
87
133
87
69
69
94
100
91
94
154
175
116
76
101
95
140
107
101
96
118
68
113
78
90
156
80
182
89
76
76
187
107
80
133
78
96
111
121
150
165
120
66
96
76
154
158
69
136
69
135
157
122
80
149
117
80
93
99
107
111
122
131
87
134
72
136
96
112
87
74
69
183
110
68
96
118
110
109
116
103
93
147
71
79
72
104
72
127
69
82
87
104
111
80
91
80
128
140
99
136
119
107
134
74
87
78
102
136
147
119
131
87
80
69
80
78
121
143
69
72
133
83
138
76
106
145
76
136
99
69
93
119
109
78
90
106
93
87
136
150
126
89
146
99
75
88
133
69
109
143
101
137
103
95
68
80
87
155
126
43
112
146
107
76
71
106
85
201
134
104
91
146
106
154
151
131
75
90
99
112
78
69
117
74
80
69
120
54
112
127
85
69
78
67
69
107
99
121
127
87
100
110
76
151
117
78
138
69
175
76
123
75
87
74
93
120
91
78
69
87
104
142
88
80
109
130
80
79
149
69
94
85
120
118
69
122
80
80
102
109
87
112
109
100
119
69
128
105
119
89
71
99
134
113
111
88
103
76
117
43
131
152
137
101
122
137
78
131
85
112
69
100
80
87
134
69
102
113
110
137
83
131
78
99
94
117
80
76
68
74
128
69
155
125
118
109
80
104
130
127
169
136
76
133
175
148
96
104
80
112
120
93
126
117
119
145
80
78
107
74
80
117
127
134
80
104
93
68
69
128
69
113
127
52
129
91
154
199
109
91
102
117
149
78
125
80
127
69
100
132
98
140
62
99
111
69
88
110
119
93
104
112
88
128
122
74
102
69
69
69
132
88
146
76
43
69
95
118
122
80
99
135
91
98
100
128
89
80
109
80
122
138
69
80
102
69
115
92
76
152
87
96
88
156
80
132
76
151
124
78
88
94
121
114
148
76
113
69
114
127
118
80
100
175
71
69
134
80
156
112
119
164
112
145
93
76
155
107
82
146
56
103
74
120
76
104
183
110
127
69
112
69
99
80
76
114
119
107
131
76
88
80
56
87
69
69
69
118
101
97
140
78
104
80
88
120
107
69
137
79
134
98
72
66
80
137
76
69
126
153
110
80
112
80
103
140
106
112
82
69
103
129
119
104
197
92
101
120
118
107
120
128
69
119
69
99
92
87
99
127
118
160
89
88
79
148
131
154
69
96
117
119
87
104
80
106
110
94
69
93
98
80
76
69
89
87
74
162
91
93
151
119
110
119
117
99
121
109
87
69
80
107
101
106
131
107
80
121
94
80
119
164
122
88
80
117
118
69
107
74
106
93
80
175
117
73
109
104
69
56
143
72
80
80
89
80
109
56
104
136
78
80
69
107
79
80
134
120
113
154
128
146
113
164
120
92
117
131
102
120
80
199
174
101
109
69
197
133
107
125
99
87
85
128
120
94
76
121
175
97
83
69
126
69
137
78
117
134
107
104
199
80
72
87
76
128
78
96
117
69
76
156
69
112
80
87
162
80
82
78
76
121
85
87
120
122
80
54
69
60
56
87
78
93
113
89
110
80
107
80
99
174
64
118
104
124
80
69
56
154
102
92
104
76
80
94
113
174
69
79
131
123
151
109
154
80
134
80
80
118
99
80
64
131
94
72
80
91
91
96
156
96
69
134
162
69
66
76
76
114
101
121
104
88
140
72
89
76
80
113
96
88
78
89
75
109
107
87
80
101
76
88
155
122
80
106
90
69
131
133
75
54
91
91
96
166
101
85
185
128
143
118
88
93
79
110
80
69
127
89
87
101
126
109
71
144
82
98
87
129
117
94
102
136
89
156
69
89
119
110
78
121
131
131
114
175
123
80
85
80
94
93
143
122
76
68
69
93
114
113
132
76
88
109
74
107
120
68
82
76
119
88
80
80
80
131
115
109
131
129
80
87
106
151
94
80
85
69
107
131
99
93
143
133
112
113
119
144
120
88
80
69
69
136
96
128
148
113
69
107
121
71
76
78
78
95
119
146
72
69
123
88
117
52
133
98
107
103
154
106
120
112
43
120
114
109
136
121
69
78
119
89
120
100
101
100
88
132
107
116
100
67
91
69
80
112
134
129
128
67
152
100
120
80
121
132
76
104
140
76
136
146
80
80
99
127
80
147
151
134
155
76
102
80
91
80
121
69
76
88
138
69
142
128
77
119
67
74
117
100
91
69
175
143
159
78
119
112
54
133
96
67
78
80
129
109
87
69
83
103
67
80
87
88
87
176
121
94
78
80
119
74
156
128
69
110
121
103
80
111
162
151
76
110
154
106
80
160
102
94
73
122
80
98
140
72
89
151
115
154
145
69
156
96
74
119
169
102
80
131
104
131
127
107
118
132
109
80
129
54
89
69
80
85
87
115
69
123
146
93
76
139
69
64
78
118
105
43
140
120
91
80
120
85
94
56
67
119
110
106
151
69
114
69
80
107
69
104
103
121
130
93
104
155
69
99
89
113
106
87
101
74
109
80
110
89
80
76
123
113
87
104
106
76
175
90
107
144
111
145
102
100
109
107
120
147
136
140
106
128
93
129
94
80
98
127
96
104
94
76
131
72
109
111
152
69
146
104
96
78
88
107
80
131
104
80
69
117
113
106
104
89
106
87
106
78
88
78
88
91
107
78
78
78
109
130
95
99
197
80
131
82
104
113
95
147
129
143
141
128
80
109
102
69
119
99
87
181
76
160
159
128
107
137
69
118
85
99
87
104
118
137
143
107
93
102
163
119
113
52
119
153
122
113
76
116
80
56
121
119
140
124
69
103
78
69
76
80
76
143
106
107
80
154
120
69
129
154
130
136
80
87
146
133
103
89
138
85
100
139
119
148
136
114
69
114
101
94
74
120
72
110
174
78
157
87
112
89
76
78
119
85
74
145
87
80
85
123
175
107
113
69
69
93
154
76
138
160
142
80
103
109
129
94
78
69
104
119
88
96
121
80
126
134
110
151
80
96
120
85
121
69
94
128
136
114
78
123
99
154
83
79
123
69
76
117
69
106
99
69
87
79
136
54
156
85
80
56
69
80
128
163
104
175
154
146
76
87
109
109
89
121
133
120
102
69
76
89
120
76
104
113
80
140
91
76
121
69
95
107
132
107
69
89
136
87
69
67
106
96
84
175
110
118
117
131
107
126
100
129
195
120
69
59
183
104
113
120
93
80
138
133
109
149
111
175
101
80
143
91
102
91
134
73
119
80
134
69
101
119
120
80
136
80
68
136
76
119
52
88
87
89
138
82
183
140
87
80
54
119
119
80
80
80
80
54
109
154
82
56
72
80
117
209
120
106
80
143
113
175
197
175
71
74
103
102
89
172
87
67
140
94
136
119
113
78
109
89
109
88
153
68
140
54
166
80
176
80
69
88
69
56
107
87
112
80
80
119
80
102
110
87
56
106
100
76
67
79
80
145
128
93
128
89
154
106
129
133
76
119
109
85
109
99
80
183
142
128
162
76
76
89
69
187
89
107
76
80
102
131
109
80
96
87
123
115
43
112
121
128
69
80
119
109
134
89
201
120
99
121
106
141
175
87
154
91
109
119
107
83
154
109
80
175
107
134
76
113
140
109
116
119
89
102
156
80
87
88
80
78
163
76
127
123
120
155
78
115
151
56
56
69
143
147
102
78
123
154
58
80
101
101
80
115
89
80
136
118
119
155
155
118
80
124
80
113
125
76
72
140
80
87
175
119
101
80
93
80
102
96
109
96
91
94
126
163
104
154
175
80
81
174
110
89
116
152
83
136
60
146
80
103
85
148
88
95
122
125
168
145
175
94
104
131
93
171
80
78
156
109
80
146
96
112
138
114
140
155
76
91
78
183
96
143
148
88
87
103
119
113
110
99
120
102
113
69
103
99
93
85
80
43
91
104
78
139
80
148
52
119
140
80
121
100
80
107
78
56
143
109
78
88
100
80
69
89
80
52
99
69
72
201
157
92
176
80
94
92
69
69
69
110
80
87
83
91
88
80
128
87
134
96
119
76
99
107
80
66
78
121
94
154
136
120
69
155
94
76
101
94
135
79
75
100
87
120
87
107
69
124
163
106
102
114
156
119
118
121
145
127
117
156
134
146
109
110
128
132
94
76
154
52
156
76
165
143
84
83
129
80
88
76
120
87
93
100
80
106
91
104
76
119
89
69
78
88
108
140
117
118
88
144
96
184
89
69
109
99
109
88
112
87
109
88
142
157
80
118
80
88
154
143
101
91
69
150
124
156
93
187
80
104
92
117
99
87
93
94
98
91
114
120
120
91
80
76
73
150
119
52
43
87
145
112
80
110
75
99
153
108
148
112
80
94
87
96
80
119
119
157
137
104
79
137
102
76
134
89
175
156
125
80
99
76
80
137
52
107
102
175
94
69
72
162
132
112
156
87
140
87
136
89
91
101
109
100
80
81
78
145
69
87
99
91
80
80
110
113
76
78
107
94
87
96
89
154
94
72
132
87
87
120
101
80
110
80
127
110
112
154
79
60
128
163
96
118
69
80
156
80
76
142
89
107
112
89
76
88
72
89
104
109
115
132
72
119
120
122
136
111
148
72
73
80
117
140
111
80
99
101
69
109
131
95
99
112
107
118
114
89
128
87
141
121
80
107
110
69
155
56
80
69
93
88
80
112
96
69
132
119
78
101
138
145
140
133
83
76
151
119
88
89
154
109
138
69
120
128
85
109
80
80
120
98
80
149
142
87
87
109
72
104
80
137
76
90
110
82
114
99
119
95
90
133
88
54
109
158
107
165
74
94
140
100
80
112
80
112
113
89
68
131
89
76
80
109
71
120
78
80
154
113
131
76
99
83
76
175
125
140
107
112
69
110
94
109
89
72
66
81
69
87
87
100
104
97
96
87
124
74
96
114
106
125
94
66
115
120
98
74
134
136
169
119
119
133
172
129
107
100
69
80
80
66
99
87
123
148
121
145
123
128
54
54
120
118
109
89
120
76
124
128
72
126
106
90
112
175
89
87
153
101
69
99
78
76
54
115
90
107
112
163
106
175
119
88
155
99
127
101
80
128
183
76
125
87
107
76
87
130
112
104
131
157
128
132
154
78
116
142
130
113
89
112
78
175
120
143
175
94
99
113
69
106
69
69
52
88
183
125
127
119
80
124
80
146
117
143
107
120
110
126
110
87
154
128
90
80
164
72
78
54
106
153
115
121
93
87
111
154
143
115
160
87
121
100
151
119
175
78
130
78
111
147
175
87
113
71
80
73
78
124
107
107
80
175
79
144
80
74
123
131
155
78
154
120
102
89
80
69
181
69
163
133
136
151
110
133
76
102
80
74
69
143
87
129
78
94
99
93
78
138
109
104
72
112
132
112
104
110
80
88
121
151
109
136
78
106
104
80
116
139
69
197
54
109
76
96
137
78
76
69
82
114
112
128
102
99
78
64
76
100
92
74
128
69
80
140
72
80
88
118
104
119
72
134
69
121
131
119
78
80
91
78
111
117
77
69
88
101
120
112
69
154
78
113
135
155
72
80
109
107
104
80
72
119
104
127
137
109
144
156
130
155
197
115
102
114
150
87
60
100
121
69
93
120
106
98
69
134
87
113
87
94
127
95
94
119
127
107
126
89
87
107
93
78
89
80
154
122
138
52
69
151
76
99
157
100
91
155
175
120
104
156
69
72
175
76
99
96
85
56
75
95
110
107
137
69
83
136
131
144
152
93
120
69
145
83
120
128
94
80
133
128
98
81
80
76
164
128
89
107
69
89
175
119
131
117
80
133
131
88
97
69
104
121
85
126
141
109
87
104
66
126
116
76
121
87
80
69
151
132
69
197
106
69
69
94
124
107
87
124
107
149
85
119
144
120
146
107
80
118
138
137
121
119
78
115
69
93
149
78
88
147
80
56
93
101
157
136
151
87
71
76
109
87
90
131
88
118
78
93
140
175
109
113
96
74
124
78
69
91
137
74
176
131
96
76
136
94
100
129
120
109
54
69
75
111
100
148
96
130
148
72
80
87
148
80
178
103
106
143
104
119
140
78
68
136
98
96
112
69
119
99
156
93
76
94
69
120
72
93
86
80
109
52
80
109
152
109
119
110
76
69
111
104
87
80
67
90
94
122
66
119
208
126
82
78
93
142
114
107
130
89
89
107
74
128
107
131
74
120
136
80
106
80
119
92
128
111
90
106
120
110
107
132
82
88
54
99
109
117
69
117
100
126
134
89
88
112
129
96
99
88
58
80
150
69
80
136
69
69
80
69
80
69
76
113
136
54
175
130
88
79
122
110
115
104
138
120
142
91
78
131
88
115
128
69
151
78
136
83
104
141
80
121
107
154
80
129
72
133
136
69
87
118
119
110
115
80
94
69
121
102
130
113
75
89
125
56
69
116
93
128
80
169
80
113
119
117
128
76
117
69
154
80
80
129
139
134
91
92
94
120
175
87
99
69
114
91
119
104
130
84
144
109
120
130
128
120
72
66
87
96
96
96
142
143
87
99
160
119
125
121
127
80
78
80
118
131
72
147
163
69
120
83
80
143
104
110
151
119
110
76
87
74
79
109
103
117
69
109
145
119
134
64
132
101
144
155
104
88
133
121
56
154
128
99
148
110
119
74
80
72
100
119
69
127
54
106
128
140
80
83
140
102
124
69
69
94
127
131
80
94
152
155
128
100
139
80
94
104
87
88
94
123
79
117
89
75
197
87
76
129
96
74
80
91
117
106
67
131
112
109
98
99
134
143
104
122
106
175
88
107
107
174
108
72
94
72
112
143
110
122
136
121
78
100
124
91
101
146
113
93
85
156
52
79
80
131
117
156
145
164
80
67
76
88
74
136
134
87
96
136
175
72
76
69
78
78
80
138
104
140
89
118
131
54
105
156
117
98
148
120
80
119
69
78
88
77
105
76
156
84
80
87
169
92
154
142
94
91
88
59
113
80
114
87
78
131
119
148
109
80
89
119
69
81
211
79
93
80
111
88
156
87
80
99
117
83
106
89
141
80
156
102
94
136
56
110
75
134
135
99
117
137
154
74
104
94
118
87
138
121
74
175
63
93
154
80
80
133
143
104
87
140
90
69
69
104
101
80
69
147
91
101
136
175
94
79
120
127
80
106
147
69
104
69
117
57
78
128
89
69
78
110
131
175
134
101
100
80
69
120
128
80
160
140
125
134
147
89
96
43
80
43
78
154
74
82
156
104
69
199
99
120
187
80
72
85
63
146
80
52
126
80
87
120
106
136
54
104
134
117
102
146
85
148
148
98
107
89
134
93
54
91
97
87
85
80
69
110
89
111
98
102
156
80
87
76
142
87
120
160
122
145
104
183
85
142
69
124
94
104
140
88
129
87
133
125
104
157
128
96
119
120
90
96
107
124
80
80
112
139
69
120
76
151
136
128
160
54
112
69
52
101
109
80
110
102
185
80
120
72
78
69
109
127
107
95
124
197
110
122
119
87
126
76
133
93
122
163
99
175
138
80
175
136
122
54
88
133
163
78
69
80
86
127
154
106
127
140
101
113
117
117
118
87
91
136
119
136
96
109
109
93
138
133
87
96
78
90
156
87
130
64
126
88
119
76
146
88
83
99
88
106
113
152
89
155
88
87
78
80
92
145
80
121
101
128
136
83
87
106
83
87
102
57
163
164
89
154
88
117
69
88
78
166
154
154
85
89
106
69
107
95
54
120
136
151
136
156
94
142
119
138
54
165
120
89
197
109
133
101
104
134
54
112
121
119
69
88
109
74
138
54
104
80
78
181
117
119
80
69
80
111
112
175
134
80
91
128
107
102
109
131
121
121
144
73
91
150
175
133
90
60
119
52
67
145
116
118
43
154
101
118
78
88
80
134
164
121
76
137
118
147
81
109
132
69
112
69
131
112
76
164
151
80
87
90
138
78
78
80
175
82
118
80
80
146
69
109
78
112
69
87
69
119
120
151
94
87
87
125
119
131
98
146
103
63
80
119
131
76
78
128
54
115
89
153
112
114
83
52
109
103
117
169
114
80
96
83
89
98
164
78
91
117
119
106
131
80
107
69
87
112
107
109
78
90
88
81
115
69
69
93
80
78
110
107
95
113
87
140
64
120
102
100
76
155
128
120
118
100
99
119
117
127
76
69
142
119
93
127
54
104
76
88
87
148
197
87
133
113
140
87
110
110
122
137
109
88
80
95
118
99
128
175
80
132
78
124
80
135
69
156
69
137
99
102
69
74
76
80
154
117
115
133
85
56
105
151
91
151
89
160
197
74
149
116
183
106
78
69
117
151
118
80
78
87
93
95
131
80
80
107
131
87
131
164
151
69
93
80
131
149
197
166
143
78
136
120
124
83
80
113
88
88
153
121
121
112
91
95
94
87
69
74
136
75
199
94
154
80
102
130
145
107
120
120
109
147
72
117
94
52
96
113
59
87
82
89
75
76
117
109
72
69
119
179
120
104
78
85
128
78
78
106
131
95
107
94
88
80
107
113
118
102
75
137
88
89
145
113
72
75
151
102
103
90
106
136
136
76
90
74
131
134
107
109
94
111
143
74
131
136
78
107
84
118
109
132
69
88
80
175
80
128
78
80
123
110
96
93
88
136
56
154
87
88
80
107
80
130
100
85
54
140
147
76
80
125
127
149
80
80
99
118
80
164
85
100
80
75
155
117
175
72
88
140
76
80
87
139
145
121
76
103
80
163
59
87
88
122
101
80
118
105
80
107
89
80
143
112
150
69
74
107
121
80
112
119
133
115
96
75
80
78
101
117
121
152
165
119
102
106
88
80
69
126
146
94
71
89
80
78
99
72
87
72
69
122
91
93
175
123
126
114
90
130
78
111
143
112
106
142
76
142
74
120
109
90
146
162
106
112
107
114
52
118
87
121
99
143
111
80
69
138
107
119
94
107
64
120
76
75
120
120
109
93
80
82
109
152
93
109
98
120
104
126
78
80
132
98
128
78
79
63
106
154
113
134
88
126
52
113
89
71
174
117
67
175
95
78
127
78
147
164
99
154
94
161
115
132
134
80
116
87
80
69
73
112
152
99
80
174
69
80
76
113
90
104
69
72
83
175
174
108
128
76
131
80
146
69
76
60
128
128
151
99
113
80
121
90
110
151
91
115
110
166
102
129
199
120
106
80
95
78
104
112
117
121
80
128
89
89
133
54
88
165
143
80
54
98
89
69
154
181
175
99
69
89
99
128
76
71
184
69
107
137
95
101
88
109
156
123
130
94
80
197
117
103
69
94
80
56
156
142
95
201
78
76
136
91
80
89
54
69
80
141
119
71
127
69
174
112
87
83
56
104
98
69
89
119
89
134
89
118
175
109
76
88
78
76
89
145
80
175
89
156
69
128
175
99
165
126
119
154
128
163
88
165
124
151
96
106
145
104
80
80
109
112
112
69
78
175
87
113
95
175
43
87
69
136
133
103
78
116
78
136
87
78
80
54
83
122
110
119
141
76
66
111
164
89
120
95
144
69
90
151
88
80
80
119
155
121
88
112
128
107
78
133
104
76
110
154
78
101
69
156
115
154
105
119
69
120
133
144
78
110
76
175
197
80
151
69
128
118
136
117
69
87
120
98
109
109
94
94
111
118
76
93
121
99
89
124
91
110
107
107
115
83
115
156
89
114
111
109
133
80
80
127
140
89
78
106
101
106
87
104
80
177
120
60
66
87
89
69
109
120
104
152
97
93
124
56
151
99
43
93
147
164
115
94
154
99
128
107
137
134
69
172
89
134
113
131
131
175
89
128
87
104
134
175
54
69
140
122
93
99
155
89
89
103
56
103
69
72
175
113
87
126
80
163
107
175
110
54
88
80
106
106
75
107
76
128
69
89
103
121
76
87
56
119
93
151
163
89
110
76
120
113
197
69
175
122
106
144
87
163
104
151
123
88
120
175
87
164
94
117
124
140
116
124
123
109
52
71
140
129
69
80
91
126
175
106
80
109
121
117
69
98
201
72
69
80
104
133
177
128
155
143
70
120
125
100
80
87
107
112
174
79
151
175
142
82
94
69
120
69
136
110
80
160
91
101
119
83
146
80
127
111
80
110
78
166
106
120
129
103
118
175
80
104
72
102
80
69
133
123
94
109
118
115
107
78
111
96
99
78
99
80
87
76
147
110
87
87
165
89
76
69
142
109
80
112
74
117
78
87
91
95
87
72
101
67
101
76
120
143
136
120
91
134
110
163
119
118
156
175
80
69
120
134
84
96
134
74
107
141
78
107
78
84
114
72
80
134
155
146
127
156
143
119
72
144
74
101
201
69
69
115
140
93
80
129
78
121
69
132
93
160
136
146
76
54
80
120
151
101
117
80
146
72
78
175
76
56
80
98
197
92
143
114
110
115
131
97
93
80
118
78
125
73
78
95
79
87
80
83
109
80
128
132
69
88
104
121
112
63
100
143
69
80
69
72
80
78
145
201
88
88
138
117
90
104
117
80
98
128
80
120
99
88
98
102
78
80
78
54
76
80
140
74
120
130
94
80
69
78
69
69
111
96
78
109
80
131
119
137
114
88
94
88
88
83
144
76
110
111
78
76
106
96
72
113
80
136
64
80
88
107
74
72
99
100
88
80
140
127
146
90
155
104
119
93
127
130
99
109
54
72
76
106
154
120
69
80
112
110
122
74
164
76
120
80
87
148
103
56
76
66
107
78
102
91
136
109
80
80
131
110
140
52
80
94
78
119
118
111
120
115
103
79
110
56
54
69
107
87
71
146
91
121
80
76
160
126
100
137
137
54
123
93
76
76
104
80
107
113
78
122
97
113
72
137
89
112
157
58
133
119
175
142
109
134
92
151
113
156
163
109
155
107
154
117
109
99
138
94
109
111
146
136
128
76
69
69
87
69
69
102
69
107
69
177
93
88
87
136
119
129
147
52
126
140
143
69
87
175
93
160
197
112
69
78
106
100
89
99
87
183
69
121
76
134
88
80
134
91
76
140
139
80
72
121
87
121
134
64
113
110
69
69
140
72
66
81
113
78
72
99
102
93
101
52
69
99
76
69
127
114
140
122
175
69
64
155
80
175
175
115
138
123
120
127
89
93
136
87
119
80
174
121
74
131
134
99
52
104
118
95
120
83
154
102
142
107
87
78
127
128
87
119
72
187
78
128
125
124
132
69
80
163
80
93
79
138
127
87
78
134
151
139
93
87
119
120
74
76
131
83
80
96
107
130
114
107
80
80
106
112
154
87
156
101
69
106
147
85
90
128
93
117
148
75
143
80
69
132
119
69
110
146
69
78
134
80
78
119
165
76
95
146
89
106
107
80
119
120
156
108
119
121
87
114
101
113
76
99
59
145
98
108
76
79
104
162
117
115
80
72
69
89
72
175
119
85
121
142
117
74
144
104
119
102
110
120
129
112
136
142
132
155
114
107
137
93
156
126
78
88
107
178
121
72
102
110
69
111
80
109
79
175
134
85
93
67
80
78
100
91
89
112
111
112
126
76
131
107
78
86
113
89
78
102
113
115
76
89
118
80
69
72
115
113
103
106
69
78
161
109
123
121
126
159
99
111
128
127
96
106
80
103
104
106
87
151
126
117
111
76
88
119
92
69
87
130
89
96
124
201
116
110
80
131
131
83
69
95
130
145
89
76
88
114
141
151
80
120
107
69
128
132
88
69
78
72
115
87
120
56
69
146
143
102
80
104
175
109
154
140
91
163
117
128
78
85
78
120
107
151
124
89
80
80
146
88
169
119
96
152
134
91
43
140
100
94
88
136
175
120
91
69
56
106
69
134
89
69
73
174
144
76
137
134
80
112
80
162
94
109
149
69
89
109
106
91
103
124
101
110
98
89
87
80
80
76
72
69
69
76
99
118
109
76
127
128
43
74
73
118
121
145
94
100
52
118
77
120
127
94
94
142
98
131
79
93
174
133
107
104
104
82
100
169
107
99
115
69
118
80
149
87
112
142
69
183
109
94
87
69
154
131
90
111
119
87
106
87
76
121
87
175
128
88
97
111
87
69
120
113
80
138
138
109
103
96
119
54
111
154
142
88
119
69
89
110
115
142
146
68
175
110
128
96
94
80
109
106
174
131
154
147
52
110
104
163
138
78
129
87
136
82
131
160
109
133
98
110
104
129
113
113
130
121
107
99
127
69
69
110
156
78
154
154
83
80
87
121
94
83
109
75
117
148
101
85
80
69
89
131
104
78
76
87
92
68
88
66
87
164
140
110
107
78
87
87
134
160
127
80
197
119
99
76
115
99
107
169
114
94
134
80
80
78
99
80
76
131
140
136
93
119
87
103
144
89
134
100
96
121
127
96
113
89
134
87
155
154
78
78
69
122
119
89
116
122
99
69
69
104
145
80
135
119
69
128
80
131
102
110
112
86
108
141
87
89
69
137
120
107
76
56
157
106
117
106
86
136
69
101
114
69
112
111
142
107
145
104
80
74
80
130
56
104
100
88
136
85
126
111
118
69
80
121
156
82
102
128
139
98
165
117
119
140
80
89
159
127
136
78
80
131
110
120
93
149
136
96
175
175
119
67
78
135
78
143
81
146
80
137
161
92
120
151
94
137
80
90
69
174
156
52
89
68
76
99
175
156
107
73
78
106
102
80
76
87
80
72
96
127
111
88
69
96
120
104
78
80
76
99
89
80
103
72
80
78
103
104
111
119
163
104
175
71
96
113
163
80
135
93
123
107
82
72
127
90
133
112
122
80
136
119
69
85
112
78
89
109
85
87
106
87
124
79
87
94
106
118
87
121
99
144
69
102
91
111
128
128
103
123
104
80
164
69
107
164
109
109
78
69
80
80
87
128
80
152
87
119
119
69
74
141
117
113
105
103
94
134
69
131
68
118
136
94
164
85
127
106
69
136
164
99
79
75
109
109
88
91
154
121
119
117
80
134
69
113
115
121
119
69
101
96
80
82
113
175
134
89
87
80
123
58
140
69
89
120
57
195
175
131
134
117
90
119
80
80
107
80
107
104
145
129
80
153
145
119
137
143
87
107
71
80
80
94
128
97
106
121
121
66
106
80
127
120
80
78
91
78
136
103
130
109
107
107
175
69
122
113
107
114
111
80
89
107
89
82
113
169
125
185
85
96
107
107
106
146
88
107
94
154
137
88
119
118
74
88
80
69
78
69
156
119
106
121
133
115
105
57
87
150
78
113
94
139
74
106
102
120
120
112
134
80
75
120
107
106
156
128
80
94
92
76
131
148
89
155
87
91
89
109
102
122
124
87
88
145
106
80
99
87
118
114
94
113
80
80
52
134
115
136
163
96
95
139
185
130
144
147
69
81
112
78
128
97
175
69
76
142
109
102
69
89
104
69
118
56
69
87
122
80
87
109
91
69
89
146
137
175
56
101
94
130
107
120
138
69
128
139
72
74
106
104
148
106
119
92
69
85
111
78
174
102
96
87
89
54
87
89
125
175
159
87
99
175
121
137
91
93
125
80
95
112
177
102
80
107
80
119
112
106
120
80
74
128
54
85
78
143
67
80
117
80
134
66
80
75
112
87
69
131
94
79
117
78
160
75
122
140
133
80
78
155
100
99
163
94
78
80
88
136
101
111
93
120
162
123
120
152
154
150
69
152
83
119
87
88
98
90
80
99
140
78
105
102
110
93
106
136
129
103
80
97
113
175
119
121
120
109
107
134
76
121
93
80
136
71
142
138
99
83
95
117
114
87
131
80
197
146
87
103
117
104
106
101
80
109
111
119
103
94
76
91
78
132
94
69
164
80
156
109
92
87
120
87
78
166
146
87
147
110
137
87
69
80
134
78
88
119
78
129
78
136
80
94
69
111
121
134
154
102
185
76
82
175
76
76
128
76
122
101
121
162
112
113
197
106
87
157
99
154
88
106
69
90
112
134
94
121
78
85
133
137
80
134
99
117
69
138
89
98
99
99
99
91
126
80
117
81
121
98
120
161
69
121
136
83
87
100
109
91
81
107
175
80
91
91
69
69
99
52
86
129
72
164
52
78
128
177
130
85
83
119
112
134
107
120
80
72
107
114
94
119
118
163
101
136
87
87
78
119
178
140
156
132
152
145
131
137
95
69
99
80
119
69
134
115
80
113
91
114
76
106
128
87
107
146
76
54
87
117
69
78
102
121
134
127
121
87
113
119
124
90
74
120
93
93
120
91
54
142
80
54
95
120
151
119
72
120
155
136
72
69
106
80
69
73
119
113
102
107
95
136
69
107
117
76
89
123
78
134
54
94
110
131
128
69
130
58
127
119
120
112
142
87
76
145
107
121
128
159
162
120
85
136
107
80
104
109
131
80
181
87
109
121
87
104
109
112
134
122
118
132
156
87
80
124
110
147
69
117
143
110
99
172
131
87
117
127
102
80
96
94
128
78
122
122
148
128
128
132
125
126
130
128
107
92
117
129
104
69
96
80
99
98
119
74
87
80
119
135
109
123
106
88
94
151
92
78
69
134
69
90
93
87
69
138
82
131
119
87
109
93
102
69
69
145
107
151
99
121
185
78
119
76
151
102
80
107
124
74
123
89
87
133
118
99
118
102
123
99
80
74
69
154
96
134
87
78
119
118
131
119
152
136
120
80
107
133
121
110
161
155
122
85
112
119
87
93
80
118
80
78
117
69
102
119
130
89
104
133
102
100
78
134
80
107
144
69
54
87
113
122
110
128
93
107
66
137
106
80
87
128
87
93
78
88
101
109
109
91
78
112
143
131
94
69
76
112
95
78
107
107
75
175
93
199
137
123
89
80
69
99
134
106
80
52
145
136
125
151
69
120
88
136
81
69
211
164
175
110
109
80
177
120
116
138
109
128
100
89
97
88
131
140
80
140
87
88
91
106
124
114
144
107
121
128
112
175
102
155
113
76
150
79
174
98
96
76
117
88
69
78
69
78
76
110
69
130
119
109
101
99
121
52
124
93
76
154
80
113
107
80
163
110
102
90
78
83
119
80
87
146
160
131
89
94
119
82
134
76
96
131
54
80
76
80
79
89
92
156
123
94
69
99
107
95
80
106
143
115
163
80
88
80
151
131
120
82
119
96
78
91
113
113
54
146
99
119
71
134
154
97
151
90
134
137
129
127
107
69
89
89
118
154
129
154
141
109
96
158
163
154
100
78
123
76
80
103
80
106
87
90
94
175
78
88
119
112
69
117
175
128
127
80
102
80
80
115
109
144
101
118
117
88
120
175
79
78
91
127
151
109
148
78
69
154
114
107
119
69
87
67
89
59
91
80
139
155
69
87
156
109
88
76
54
89
154
175
185
136
78
80
146
72
83
109
78
52
114
96
78
102
110
134
155
109
152
122
78
129
107
175
112
80
111
99
76
141
69
78
68
121
129
120
69
197
76
88
94
96
139
137
109
134
87
121
80
54
144
148
89
136
164
103
143
98
129
124
129
122
95
127
151
94
143
78
94
69
131
156
150
146
54
116
72
87
128
140
80
76
43
127
98
102
172
94
107
122
118
83
95
80
99
137
156
43
97
100
125
128
145
122
85
88
80
88
119
69
83
151
88
88
127
132
115
76
134
87
128
151
134
69
147
87
73
201
113
83
117
94
113
164
100
83
120
72
89
94
80
113
119
94
151
99
78
69
87
69
114
151
113
121
130
148
122
87
112
96
80
78
76
64
134
54
119
75
74
121
91
87
43
54
94
99
111
87
83
87
109
127
80
87
129
69
104
96
94
120
98
151
185
185
127
80
89
76
106
174
69
96
87
91
124
114
113
80
118
117
133
151
85
136
89
145
119
87
115
115
131
128
91
110
87
69
175
110
110
113
128
69
127
69
98
86
91
72
89
104
122
106
76
69
100
91
76
78
123
80
175
109
76
154
136
175
111
69
85
97
96
157
103
91
134
89
156
128
118
154
100
175
128
104
107
54
69
143
88
156
106
120
76
134
131
127
87
119
96
152
78
107
140
143
119
113
78
105
104
78
119
69
89
106
87
128
112
107
115
94
115
154
96
120
94
117
135
135
88
175
57
80
69
80
126
91
80
109
112
94
79
93
80
87
175
52
96
95
154
104
121
101
110
107
80
135
76
114
113
93
76
175
54
163
119
117
94
107
120
94
100
146
87
136
94
156
131
124
115
88
68
80
131
66
123
99
101
130
121
151
127
69
43
134
106
136
67
93
87
88
99
101
114
82
52
100
117
152
54
87
69
119
54
146
134
76
113
113
107
90
136
109
111
162
121
94
122
154
148
109
175
87
76
154
137
154
120
154
118
80
80
80
116
143
119
154
117
56
124
130
128
107
67
154
76
134
80
87
69
108
85
197
130
137
112
155
154
87
147
134
87
109
107
120
96
107
112
111
94
72
78
80
106
79
115
87
82
109
109
145
69
81
134
112
117
153
75
88
80
80
154
69
89
139
113
155
95
94
88
69
121
109
107
90
72
78
154
127
199
151
128
140
102
80
69
74
94
78
102
127
104
137
96
69
145
117
112
100
78
87
72
122
175
98
87
115
111
93
109
154
146
123
67
101
130
69
96
102
78
80
94
134
69
119
69
121
140
178
107
111
118
172
89
115
76
121
98
128
87
106
140
87
122
106
87
106
100
119
154
140
130
143
137
121
136
87
154
100
163
132
76
115
99
112
199
78
85
132
89
106
116
88
140
76
78
151
109
69
104
156
80
87
122
83
127
140
94
94
80
80
110
155
80
107
72
175
69
166
78
80
121
130
96
95
80
155
76
69
76
78
69
91
106
128
89
69
110
120
113
98
96
144
104
111
101
69
119
103
104
155
80
131
94
87
115
89
56
134
120
175
102
112
126
154
181
66
82
101
63
130
87
156
89
80
77
184
118
121
144
75
113
56
69
128
76
151
80
132
134
119
145
68
81
151
119
159
131
76
69
123
113
119
128
122
80
80
129
76
99
80
134
110
76
107
78
155
120
83
87
109
78
107
80
131
135
90
145
116
123
154
80
154
52
90
132
69
141
69
134
87
78
106
163
111
109
109
145
121
136
117
147
91
151
111
80
155
89
128
154
120
101
64
87
99
80
120
99
90
78
149
69
156
98
107
154
94
128
80
56
91
80
119
109
120
113
114
89
69
175
134
119
138
87
106
68
120
87
99
96
142
76
80
119
88
76
121
80
78
110
117
96
142
99
131
142
76
80
69
82
90
124
79
107
52
102
90
80
99
106
109
113
120
91
110
107
175
69
94
99
80
80
132
69
121
117
109
113
154
87
115
109
120
156
87
80
80
99
131
56
100
133
142
72
80
113
115
165
93
72
121
109
134
84
80
109
87
89
175
110
88
83
157
69
76
87
107
111
126
69
69
89
117
123
80
81
113
103
87
69
93
94
128
87
140
150
99
109
100
120
106
119
87
119
96
154
96
109
76
155
78
87
100
69
126
103
104
110
121
116
87
136
88
94
104
124
80
131
107
128
103
78
175
140
93
89
112
126
164
87
110
99
107
143
87
107
132
144
87
99
78
72
99
123
107
86
149
120
119
146
91
142
80
110
76
125
82
80
104
87
80
99
76
133
100
156
106
80
175
80
119
117
76
101
157
125
93
131
197
134
83
119
89
174
128
76
146
69
80
118
78
68
110
76
99
89
102
107
69
88
78
69
119
138
119
69
119
163
124
78
91
69
78
140
80
120
120
120
104
154
80
88
105
175
94
143
102
157
136
80
69
119
154
80
76
89
119
69
120
69
85
78
114
124
72
156
78
69
69
166
78
174
123
109
88
74
87
92
80
80
72
80
106
110
140
69
103
107
119
107
74
143
127
96
120
123
134
120
143
88
99
101
78
100
134
52
76
121
138
107
131
69
69
131
69
118
154
110
112
76
80
118
69
74
83
126
144
138
87
154
76
134
145
119
92
111
109
54
67
99
87
127
104
102
95
80
126
80
85
109
69
120
130
102
104
110
106
157
100
87
87
76
113
80
153
129
133
107
76
95
120
113
72
107
80
76
132
69
99
69
149
87
130
132
88
101
88
175
140
87
96
114
89
123
112
156
155
134
87
101
107
117
132
136
94
106
76
122
120
140
74
69
158
125
69
87
94
96
122
72
119
80
80
93
87
110
137
80
99
143
69
87
80
80
106
69
175
117
78
83
114
96
80
156
78
89
85
89
80
148
164
104
57
130
77
151
110
113
113
114
87
94
115
175
109
96
88
175
80
80
121
119
89
69
107
119
121
85
121
117
89
140
93
149
136
78
89
114
90
119
74
79
126
102
122
119
69
95
163
87
100
107
112
80
80
126
201
113
112
144
135
114
69
129
80
128
134
111
78
90
123
143
172
112
123
56
88
80
80
112
175
155
128
78
80
76
119
127
76
118
87
155
175
126
91
142
66
96
154
87
78
134
159
123
91
90
88
85
155
113
121
80
87
128
76
93
96
94
87
136
79
133
99
118
52
163
142
76
122
111
138
101
119
156
131
113
113
197
116
109
175
131
93
101
163
111
132
134
87
108
145
80
101
80
56
107
87
87
154
80
142
112
66
119
107
155
80
74
146
78
127
183
128
132
134
115
87
85
89
120
69
151
175
94
78
113
80
66
146
89
114
119
94
98
80
142
103
102
91
89
78
88
138
117
101
81
69
87
148
91
156
80
95
72
78
78
67
154
107
119
87
94
108
142
151
78
131
152
110
156
130
43
110
74
132
54
110
107
130
105
120
121
133
99
197
99
133
78
131
151
76
109
99
80
69
72
117
155
118
128
80
101
151
89
109
111
127
101
137
99
78
131
112
76
80
131
80
79
119
113
89
154
131
156
175
106
89
130
94
94
163
76
57
154
91
93
128
69
113
92
89
121
197
119
69
114
144
107
151
52
112
94
76
91
120
126
121
155
80
80
80
76
115
116
174
175
109
110
43
80
156
81
127
140
93
69
113
75
96
136
154
160
112
110
136
133
88
80
125
74
146
76
136
106
142
94
156
138
100
69
80
69
156
80
126
94
104
76
113
119
80
134
80
88
104
76
128
165
154
99
126
128
69
95
149
155
150
129
118
110
93
140
107
80
163
123
100
154
76
80
113
76
154
69
110
56
175
155
78
76
78
98
134
151
87
80
111
80
91
175
76
154
144
175
125
120
155
103
109
175
88
87
78
111
87
99
119
110
166
88
147
69
117
97
104
104
101
140
99
175
88
78
69
110
131
87
121
78
67
154
112
59
90
118
101
197
133
117
100
80
69
145
103
69
52
104
98
100
94
94
80
114
80
43
118
119
69
102
156
108
101
101
69
149
71
118
69
109
88
69
128
118
197
76
133
96
96
94
154
132
119
93
163
88
102
125
80
112
91
97
151
107
87
76
69
94
80
76
43
110
88
119
145
123
109
111
78
76
87
78
133
137
140
87
104
133
88
100
78
87
103
87
69
59
109
157
107
140
127
113
154
87
69
72
119
76
67
118
108
119
197
106
111
89
151
152
99
175
131
130
99
68
80
91
148
143
71
89
159
96
69
96
144
185
80
112
145
80
89
145
69
95
96
104
145
102
125
69
105
155
107
69
68
95
89
66
128
117
110
85
93
121
164
107
156
52
107
69
68
121
88
109
72
88
94
112
54
121
119
80
89
106
99
96
129
80
69
156
175
106
87
175
126
104
69
93
78
76
119
106
75
78
78
175
56
109
154
100
114
77
80
144
87
80
69
87
69
92
101
97
87
98
88
78
197
80
76
144
106
104
135
69
103
112
87
120
102
87
99
96
131
125
110
91
154
155
181
144
126
72
123
87
101
87
69
72
80
102
119
78
109
101
106
69
137
87
116
154
102
78
69
76
146
80
208
115
119
109
80
69
138
99
87
134
110
90
107
78
131
95
75
69
127
131
140
76
87
112
134
120
69
80
88
76
69
107
120
78
87
175
87
127
112
83
131
112
113
106
87
87
160
69
120
95
112
72
107
143
134
113
152
154
106
144
126
104
99
87
80
154
87
92
137
136
136
134
88
43
69
175
137
74
76
161
76
136
120
93
69
107
104
79
143
140
113
187
140
113
95
80
91
78
76
136
175
175
72
175
133
129
126
140
117
109
59
95
76
80
88
99
115
120
174
119
87
120
87
99
163
89
99
87
43
88
119
119
180
154
118
119
146
87
137
76
80
164
155
120
80
80
119
148
140
54
113
69
87
134
120
80
103
119
151
67
107
93
88
69
80
94
78
79
80
89
78
78
119
80
134
174
87
137
87
87
94
69
145
85
119
69
134
154
163
137
69
177
67
134
83
107
150
80
94
104
76
103
122
88
113
87
93
116
197
71
80
112
121
89
113
199
96
87
110
87
80
101
87
112
80
128
131
134
133
88
136
132
120
80
145
110
142
112
102
80
89
148
155
126
54
80
76
136
106
69
80
69
156
152
80
88
107
67
93
94
106
91
88
89
122
146
89
76
80
130
69
154
72
120
83
146
80
110
111
122
115
72
110
110
119
54
113
174
69
127
76
71
99
117
140
93
87
112
117
137
125
118
145
121
88
80
133
106
106
149
131
174
87
76
80
141
80
115
99
93
128
74
78
129
89
134
69
78
89
93
131
88
76
103
145
104
151
99
69
57
175
127
123
119
109
69
155
82
76
152
91
134
120
80
67
113
87
94
80
78
140
87
66
92
125
110
100
115
94
99
128
144
106
101
80
114
80
71
110
91
78
93
89
87
54
76
107
106
136
112
80
122
52
120
87
175
54
89
88
106
78
128
117
93
69
92
109
87
80
112
106
80
155
94
87
87
101
124
174
126
69
69
89
104
140
93
154
119
69
99
69
109
78
69
163
80
151
106
137
87
162
104
112
120
90
76
145
85
119
56
99
107
106
101
94
113
146
80
133
78
120
92
69
72
69
140
156
163
129
131
69
76
88
134
69
120
134
122
114
89
117
155
69
98
87
80
140
71
107
132
80
175
134
80
175
76
94
128
94
80
152
83
87
120
107
69
113
80
128
80
104
115
69
112
103
117
69
93
126
154
175
107
149
126
146
106
98
101
119
78
120
123
124
136
104
181
69
107
125
147
112
120
91
140
143
114
119
88
114
80
83
147
126
110
141
151
142
89
88
148
87
152
104
113
131
89
63
119
99
173
94
131
185
72
68
78
94
69
120
183
150
129
78
99
72
94
87
105
112
142
76
128
120
87
91
120
162
197
197
144
110
76
113
127
90
56
131
96
80
174
76
103
80
52
118
157
78
175
165
80
110
134
76
78
101
80
78
87
101
56
96
80
119
119
150
127
88
106
109
99
147
103
154
151
131
85
69
103
90
99
91
138
140
100
69
83
87
76
119
99
69
87
151
109
151
91
58
87
87
56
69
101
78
175
112
109
131
136
99
125
76
111
102
110
54
100
76
114
88
99
128
92
116
155
134
134
157
145
143
175
87
109
91
54
76
124
96
80
119
74
109
100
54
102
114
78
85
84
131
130
69
127
87
119
110
76
132
153
87
104
131
80
89
154
109
140
145
90
56
80
78
80
128
88
69
69
109
78
175
78
136
107
128
131
129
100
132
107
183
134
175
87
169
69
175
142
156
122
80
92
78
69
87
80
131
169
72
151
89
78
109
76
89
134
56
72
110
109
169
125
121
143
119
87
104
119
111
110
69
175
68
148
160
131
85
80
113
141
88
82
76
197
99
143
69
162
124
175
72
181
126
78
80
183
137
121
155
129
160
80
77
85
52
144
175
52
140
120
101
154
153
110
141
120
102
69
140
89
80
83
125
85
94
80
128
76
151
92
117
96
136
93
120
85
88
52
56
115
69
80
114
87
124
129
69
134
151
76
175
130
79
119
75
69
145
78
72
96
69
136
128
69
78
80
137
75
121
117
120
101
121
78
166
111
82
109
124
112
80
127
80
78
140
80
74
119
120
106
59
156
76
74
136
110
56
80
80
109
123
76
144
87
110
93
119
150
128
155
99
104
155
112
87
129
134
113
119
156
110
119
136
119
88
80
80
79
88
101
69
80
147
100
76
136
95
119
94
112
112
89
123
80
80
136
69
109
128
154
140
183
102
128
139
76
104
131
80
154
119
125
64
78
133
127
121
102
159
80
109
89
110
133
80
131
94
197
79
77
92
148
94
78
76
120
120
114
87
88
120
80
101
52
156
89
91
119
96
130
166
78
69
130
98
69
76
119
85
87
130
128
175
129
80
119
87
94
120
80
83
136
120
146
93
137
94
88
91
69
97
112
80
80
76
75
104
89
63
94
96
80
78
115
138
87
76
80
164
130
136
88
102
175
71
78
147
128
160
129
83
112
93
125
88
100
199
138
154
96
90
127
87
87
72
87
136
119
66
106
129
144
67
99
96
120
110
175
119
175
157
121
145
88
106
124
102
123
111
101
80
80
175
107
121
129
150
102
74
69
134
160
151
69
69
69
112
87
197
69
80
113
77
69
89
105
102
107
152
118
184
106
156
121
52
137
175
149
80
88
132
111
117
95
76
78
87
175
142
87
80
80
69
137
117
89
98
72
88
151
87
123
134
164
96
136
103
89
126
80
88
69
107
89
94
80
104
80
120
119
107
75
154
94
69
80
78
78
87
141
118
140
118
70
85
146
69
136
87
102
66
101
68
80
132
87
80
128
101
87
117
175
113
75
87
90
87
80
115
120
106
80
124
78
131
119
119
85
98
140
104
93
154
144
115
119
76
99
96
80
103
80
156
96
113
71
69
87
107
52
119
96
129
80
114
88
118
94
120
96
107
113
94
80
142
107
109
52
76
91
101
164
128
69
127
138
128
113
119
80
78
89
106
119
116
69
94
78
88
87
93
96
54
110
98
69
74
121
134
107
124
131
131
112
112
118
151
78
119
145
99
121
118
78
163
99
87
72
76
85
118
78
119
83
119
79
63
115
118
109
125
175
119
109
88
67
80
90
80
136
101
85
123
111
96
133
113
119
154
80
87
56
120
87
80
131
89
88
128
113
90
107
72
83
156
89
99
94
126
87
89
91
129
136
142
153
64
113
121
115
106
102
76
86
138
69
85
76
113
87
148
121
80
117
110
111
108
87
143
69
80
87
89
112
112
132
69
102
80
91
74
128
105
93
152
90
120
89
120
112
120
124
80
102
66
154
93
152
154
99
95
163
75
175
99
131
80
110
87
113
93
74
120
107
156
155
107
91
107
140
75
107
89
80
78
72
74
98
107
125
94
107
113
87
111
130
88
69
112
78
87
103
105
128
107
197
121
82
197
106
109
103
104
117
132
136
87
128
91
120
88
175
144
107
88
80
52
136
107
80
110
143
121
71
80
136
147
156
151
127
109
136
91
111
146
164
80
107
69
87
89
100
76
187
120
110
128
69
127
175
148
87
87
88
156
76
101
102
106
151
106
119
131
98
151
197
197
125
130
69
120
123
103
85
131
80
87
197
124
71
100
119
87
80
120
106
79
129
175
154
95
69
120
133
76
80
145
119
127
95
126
175
69
76
154
117
80
100
80
154
80
87
120
131
154
138
87
127
109
103
143
107
67
69
175
80
151
87
175
56
110
69
78
88
124
101
155
116
201
80
119
148
85
175
93
118
154
94
117
93
80
132
96
175
69
80
120
69
172
121
123
104
120
112
106
76
145
119
78
99
80
90
79
117
97
133
54
112
107
109
128
122
102
99
107
69
99
117
76
87
147
118
115
72
134
166
107
90
80
95
119
142
128
91
125
80
183
101
110
112
78
117
56
54
130
109
99
156
127
127
144
88
145
69
87
127
69
103
80
89
197
151
90
146
113
121
72
80
78
106
72
71
113
104
119
89
80
110
164
109
87
80
157
83
59
117
109
80
118
134
117
99
71
150
52
140
133
145
82
161
107
69
88
66
69
78
106
69
87
102
128
87
88
89
87
94
137
116
110
54
60
113
97
119
87
89
165
145
104
69
76
104
89
116
56
114
94
172
134
52
87
100
112
106
149
120
78
110
59
100
99
117
78
137
128
113
76
80
78
80
78
172
129
175
76
80
72
136
78
72
148
154
154
112
151
101
143
154
136
123
78
146
131
113
143
117
123
90
131
100
195
110
76
104
156
93
103
80
91
117
121
80
80
69
201
104
121
80
80
56
117
133
134
78
114
110
107
156
126
140
107
134
87
183
78
88
147
99
80
54
76
140
89
89
169
106
131
123
133
112
71
162
88
78
80
60
89
72
72
112
134
81
79
127
69
126
140
102
93
100
120
132
106
155
156
175
118
87
72
106
122
79
134
72
107
72
107
156
78
76
107
88
80
146
87
122
147
89
91
117
119
104
104
102
74
96
121
54
88
104
149
72
72
119
92
82
119
80
139
107
99
154
99
154
69
78
94
118
144
118
83
150
88
112
54
109
90
69
110
175
91
153
69
60
78
69
106
89
80
43
137
52
136
121
110
94
103
143
89
99
76
80
129
154
100
117
131
120
69
69
110
96
146
138
98
150
80
72
78
128
110
175
130
145
155
110
80
136
149
138
138
80
121
87
100
136
110
87
113
127
107
76
82
85
99
160
69
76
80
161
101
100
94
69
165
101
110
75
88
69
119
103
125
155
101
76
69
80
72
80
78
160
87
91
151
151
96
109
128
126
129
131
117
109
90
119
99
99
96
83
127
80
87
163
109
121
121
91
112
131
74
43
94
117
88
119
106
110
95
151
87
69
87
146
87
151
80
155
94
143
80
69
155
114
78
69
99
109
73
76
101
75
78
110
183
80
140
76
145
145
109
90
137
78
151
141
66
102
80
125
112
80
154
89
164
76
93
99
64
79
197
157
136
129
163
104
85
80
91
78
69
87
69
80
93
147
69
107
151
93
120
120
128
94
78
163
78
103
76
78
125
154
78
107
76
128
74
67
85
73
117
169
115
174
107
158
79
106
101
136
97
94
156
145
99
87
101
93
136
133
87
56
156
88
133
87
95
144
103
111
84
104
69
76
88
120
56
110
118
120
96
80
127
119
66
90
131
136
107
69
107
58
76
129
137
135
118
64
76
88
87
76
121
151
114
154
133
96
121
128
99
79
101
76
125
94
87
69
146
156
120
58
134
119
107
78
78
69
75
129
137
69
108
109
90
88
125
145
109
104
88
181
118
87
56
110
102
128
78
110
119
76
69
124
106
91
87
120
174
130
88
118
99
106
80
102
87
69
123
87
114
80
87
147
96
126
87
118
78
43
144
120
98
94
138
78
120
119
88
87
88
103
140
69
154
78
147
148
82
128
69
155
120
109
109
69
69
89
96
99
94
201
56
112
119
89
82
175
69
122
87
52
113
151
156
78
115
99
102
145
172
87
77
98
80
140
93
93
95
56
87
80
80
141
80
80
76
83
175
175
69
121
169
80
120
101
80
80
104
54
108
89
120
158
117
146
107
82
130
89
106
115
69
107
151
124
125
108
88
94
125
138
76
78
169
98
129
87
127
80
76
106
106
120
109
92
116
94
175
133
151
152
69
93
59
78
103
137
114
72
163
93
152
117
80
128
157
110
119
169
76
101
119
128
119
93
119
108
106
88
119
80
151
76
69
88
88
163
80
151
109
148
121
140
95
109
87
80
106
134
122
96
110
78
80
160
128
151
88
154
71
96
174
128
106
120
134
91
127
134
99
85
96
175
80
80
69
117
80
69
154
87
116
94
87
107
69
102
102
87
136
112
124
108
175
56
134
129
104
151
121
72
129
89
160
76
134
85
89
80
163
120
93
123
109
152
120
89
144
80
140
101
155
156
78
76
69
89
89
197
113
87
66
117
76
96
93
137
89
102
151
88
112
197
126
89
111
69
87
91
76
87
107
121
131
80
59
91
120
74
82
119
80
134
76
99
80
107
87
78
119
140
128
113
69
111
87
83
128
89
99
114
99
76
145
80
78
110
97
128
162
162
88
150
174
80
131
112
154
110
76
80
76
76
88
101
115
127
131
144
80
95
110
80
136
69
117
132
133
136
87
69
100
91
107
52
67
113
118
140
69
128
88
119
69
69
78
118
121
99
78
71
112
88
164
80
136
109
114
78
124
101
105
111
106
87
159
123
128
136
89
107
89
69
78
124
99
91
94
131
145
175
106
175
136
76
113
117
89
132
154
87
150
112
151
139
85
76
57
94
93
163
121
127
104
90
101
80
89
130
100
76
144
163
151
134
95
138
88
116
96
119
164
80
91
85
147
59
94
69
120
67
94
112
99
102
69
142
95
94
134
137
123
62
101
156
117
91
72
102
174
69
80
102
153
103
87
104
107
100
102
80
101
112
123
94
110
69
108
126
112
54
137
80
121
86
120
175
66
94
94
87
112
174
131
80
80
69
80
104
143
124
69
142
128
80
93
113
80
134
91
178
100
72
94
145
69
110
127
118
107
94
69
76
58
99
118
98
99
118
133
90
80
90
76
197
78
107
80
155
93
175
69
74
74
95
94
103
147
122
102
116
72
97
103
121
121
151
80
88
109
144
89
145
80
137
54
123
80
131
78
74
43
128
128
107
80
115
78
69
128
145
85
105
151
121
137
112
163
88
80
120
120
82
175
96
95
128
117
131
89
71
78
129
94
120
69
111
88
164
128
160
127
110
78
93
80
119
131
83
102
95
110
87
107
113
84
93
87
43
127
155
128
72
117
99
118
117
96
80
120
110
128
136
90
128
106
88
80
91
127
154
90
89
100
80
134
106
89
145
78
119
154
121
151
87
76
94
102
144
72
161
88
132
90
113
154
88
52
201
88
155
107
85
112
156
127
145
129
80
80
197
94
120
137
69
134
107
115
89
103
80
80
94
76
74
121
80
140
75
154
58
98
96
115
89
122
78
109
67
136
76
155
72
127
78
143
95
72
175
69
156
103
78
110
134
114
127
72
169
104
120
138
99
74
88
80
96
119
148
87
140
69
80
88
87
143
155
99
88
69
78
76
119
101
181
131
120
112
122
93
147
120
69
162
87
74
104
106
131
106
134
69
119
80
104
80
104
104
115
151
97
134
72
146
96
120
80
117
87
148
135
131
132
88
121
87
132
80
132
85
95
133
99
136
114
88
121
76
92
74
134
91
120
89
197
112
80
80
74
128
88
104
79
175
57
110
117
52
111
148
131
112
93
126
88
78
104
110
80
97
137
130
119
155
107
128
63
96
131
152
80
101
88
80
112
75
101
107
69
122
87
94
99
106
121
104
134
120
140
80
154
115
72
80
96
80
80
163
85
117
175
92
110
183
114
111
78
131
100
134
88
72
110
96
101
124
76
103
72
119
129
175
106
120
120
99
69
128
69
106
159
127
130
126
172
106
81
113
88
166
122
80
80
164
69
134
148
78
124
119
87
87
106
62
106
66
80
126
80
110
134
54
102
109
78
76
118
175
91
154
128
72
130
127
69
67
88
175
156
127
121
80
78
78
92
130
100
95
80
69
86
80
126
127
140
109
52
72
88
80
104
131
94
119
110
72
117
108
69
109
128
117
177
101
117
117
71
134
128
93
99
121
156
74
94
102
78
134
103
154
136
115
77
87
96
69
74
80
150
88
80
66
107
117
93
72
69
104
131
113
80
98
122
71
78
80
69
78
108
102
52
107
93
145
76
120
74
96
117
80
74
117
104
104
119
134
90
128
69
118
114
150
121
120
83
106
93
69
155
107
120
69
83
109
87
116
114
106
131
143
146
121
111
106
104
100
99
157
72
107
133
120
87
52
66
83
154
110
112
106
113
163
80
94
99
78
88
78
83
131
109
102
87
154
105
119
117
87
87
87
99
156
120
78
119
107
94
109
89
69
99
156
80
72
95
85
112
110
76
87
76
137
84
156
98
88
94
119
104
111
80
69
101
100
76
152
107
148
134
100
94
76
128
94
64
59
137
133
106
87
67
106
69
113
160
120
101
174
113
109
104
114
80
69
120
172
115
94
100
110
78
148
174
91
122
156
110
106
88
115
109
87
88
80
98
96
87
107
151
67
94
111
116
136
94
79
163
123
164
146
131
136
140
132
129
144
131
88
119
87
76
109
110
88
95
104
101
110
109
112
120
99
134
80
150
117
112
54
80
52
123
69
99
151
74
96
138
126
90
83
137
146
120
111
175
129
66
78
72
106
80
132
93
80
152
146
80
121
131
85
130
156
122
104
128
105
121
69
69
88
145
119
103
145
117
154
87
119
107
120
78
114
108
79
123
78
91
80
128
69
128
104
93
90
80
87
107
112
128
138
76
115
117
89
109
160
164
87
72
99
113
107
152
113
120
107
106
119
109
69
80
99
88
74
107
69
94
66
119
109
69
107
118
96
117
109
175
102
72
127
109
101
111
144
119
155
156
106
80
78
144
80
87
126
88
112
80
76
92
120
78
131
114
79
94
79
151
106
73
117
96
163
92
175
93
103
80
104
76
166
102
119
101
120
92
127
126
69
104
76
80
87
91
151
107
80
75
87
113
131
120
88
96
111
54
98
154
80
130
107
80
78
60
138
88
148
118
69
78
121
78
127
74
156
76
156
95
80
103
75
112
80
149
80
106
121
72
93
70
78
93
127
78
90
90
117
98
119
72
91
117
69
64
122
78
166
133
107
63
115
93
87
109
119
120
156
110
151
93
163
91
76
99
69
175
113
93
126
113
134
128
107
112
80
106
69
159
87
92
118
90
119
69
106
144
153
107
117
94
154
73
69
54
154
107
127
69
91
99
80
131
89
99
113
128
93
118
76
80
87
121
91
120
89
109
146
94
80
88
72
107
146
143
88
199
136
113
113
93
120
80
201
103
80
91
152
107
88
201
98
104
119
123
78
72
69
107
110
80
131
155
85
155
150
175
78
69
82
117
117
94
56
135
93
119
78
90
100
164
69
117
94
96
78
145
88
85
148
78
127
82
116
80
109
144
87
134
75
76
78
122
153
146
119
54
140
119
87
72
120
104
87
96
72
69
83
136
52
110
165
131
122
96
80
144
102
80
151
76
115
76
87
69
80
80
89
117
76
110
119
93
111
80
69
130
69
125
120
117
119
120
80
89
131
76
83
78
64
93
130
127
99
140
75
107
87
94
96
99
76
80
119
69
79
96
102
163
133
155
118
52
78
110
91
69
94
131
72
56
69
72
117
93
78
117
56
118
87
197
104
87
69
119
110
123
80
128
78
110
80
128
120
110
185
128
99
80
111
117
121
154
87
96
72
69
101
87
107
71
80
80
107
72
91
114
89
80
152
175
82
54
100
120
87
119
107
87
119
109
120
120
129
105
80
107
109
109
88
88
127
106
80
91
69
78
88
69
181
93
89
93
127
85
186
123
58
87
56
69
113
109
142
104
87
64
76
119
78
119
130
103
103
118
69
87
125
87
127
109
76
155
66
201
69
85
80
141
197
87
127
102
78
102
131
121
109
124
123
94
67
153
74
76
137
104
90
83
119
76
128
87
147
69
113
136
79
93
67
175
87
78
114
151
117
128
129
88
121
102
87
89
204
86
110
137
74
121
126
119
104
104
128
106
177
125
93
130
102
80
94
160
93
197
93
59
113
78
134
69
148
164
80
87
128
87
69
98
80
124
80
96
175
140
120
69
43
80
97
125
175
121
126
107
82
141
76
78
74
138
78
181
199
69
175
102
78
155
87
113
119
87
154
128
160
120
149
120
151
131
89
153
94
113
80
106
83
89
93
107
88
96
140
72
88
124
122
69
134
120
87
154
109
114
69
144
115
91
59
121
76
123
120
97
76
131
120
107
78
116
156
113
132
121
126
132
110
132
119
54
85
78
82
115
118
152
87
156
87
69
69
119
102
104
110
73
102
85
106
69
94
148
113
76
78
80
121
106
80
69
99
112
80
91
175
121
120
98
92
151
115
121
118
99
96
89
78
128
107
109
78
101
113
91
120
122
67
118
109
154
69
134
78
80
75
84
71
87
146
172
80
69
87
82
110
88
119
119
87
87
114
80
128
120
156
99
129
128
136
87
104
122
109
154
136
87
123
107
94
137
111
136
76
164
107
54
127
80
132
123
162
99
164
140
91
69
113
91
76
87
139
75
120
78
145
119
87
119
98
87
89
136
89
116
85
104
69
107
133
183
80
164
91
117
156
110
125
89
87
87
113
76
96
87
128
111
69
69
140
76
107
94
175
154
78
82
139
175
175
76
88
73
109
90
106
87
126
130
88
80
99
107
83
136
80
98
108
134
69
69
87
80
78
118
117
113
69
134
146
134
80
78
88
80
87
113
85
74
99
88
136
137
110
99
99
120
87
69
69
115
127
156
75
112
89
89
72
93
80
109
98
76
88
76
69
101
134
78
60
121
87
52
93
144
136
125
107
166
124
87
80
101
137
69
112
43
109
80
86
87
119
145
160
109
107
99
154
54
107
143
132
153
94
69
69
96
87
72
85
69
120
78
87
133
110
104
133
93
72
85
132
76
76
69
87
126
164
78
101
119
148
85
80
78
118
76
131
197
197
87
123
132
145
80
74
98
104
115
109
100
126
154
69
156
119
144
98
107
175
143
128
131
140
93
96
95
109
102
175
89
124
136
72
127
194
112
118
113
66
129
146
136
80
96
161
76
80
112
146
140
140
154
128
146
112
69
85
123
137
80
154
134
87
75
87
110
148
100
119
110
120
104
78
87
98
152
119
80
101
80
78
112
54
121
145
123
113
74
93
127
69
107
54
120
83
77
107
120
112
95
187
103
102
111
107
154
72
91
80
137
118
89
96
123
80
94
102
125
148
76
79
76
136
117
122
89
87
119
78
144
69
80
120
136
118
88
112
76
133
94
169
80
99
134
101
102
118
146
69
97
112
174
197
127
87
127
139
83
80
103
128
107
118
69
160
121
143
111
80
137
151
94
69
98
101
116
134
111
87
80
78
140
137
87
76
75
92
75
87
76
87
89
104
104
155
76
106
121
124
107
89
127
119
87
87
74
136
107
87
163
88
111
87
78
100
90
76
69
69
101
175
69
149
76
60
78
121
87
91
80
69
133
80
107
78
83
106
89
101
120
174
87
120
80
93
147
91
117
89
87
69
140
160
174
89
80
114
69
114
134
117
76
96
80
80
127
80
80
80
139
114
78
136
94
76
102
132
78
134
78
87
118
136
120
103
121
107
80
67
131
114
76
80
76
136
137
111
136
124
140
88
120
96
117
102
80
116
69
104
56
175
78
80
120
94
96
69
94
66
69
115
119
87
153
164
105
131
147
107
74
104
78
69
80
130
135
78
175
76
94
134
120
157
104
78
101
119
110
205
94
107
128
99
128
129
98
56
107
100
109
151
163
175
130
136
119
125
72
131
69
76
99
80
80
92
175
115
104
121
117
74
189
87
99
76
83
115
175
134
80
163
104
159
74
69
76
86
83
96
114
78
99
109
151
74
114
89
101
69
90
94
128
80
80
87
78
69
80
163
107
94
115
80
52
128
131
80
131
95
122
131
148
80
69
87
72
80
187
151
110
136
131
123
83
122
140
95
79
96
104
87
94
120
155
183
120
99
54
78
143
130
99
87
106
107
115
75
76
93
112
119
74
78
96
117
87
78
72
112
120
128
115
87
92
80
87
114
69
143
112
112
76
174
60
112
121
87
91
122
106
113
106
80
74
104
102
140
197
169
152
94
91
136
69
80
88
107
120
183
120
175
106
80
131
123
54
109
128
85
151
128
76
104
80
88
80
85
129
129
110
153
80
119
66
146
136
201
136
80
76
134
113
140
145
127
64
137
87
80
94
140
139
128
76
109
77
120
69
115
148
69
91
78
89
119
155
101
174
110
97
114
121
149
151
93
80
143
67
140
56
128
107
80
89
131
80
69
175
109
80
109
80
142
131
145
54
106
78
78
199
109
69
109
80
106
69
73
69
133
156
80
122
119
106
103
119
137
185
80
130
71
99
110
154
87
104
104
85
69
89
140
76
76
151
137
140
163
128
146
120
81
76
119
82
69
78
107
87
134
94
82
119
89
125
109
105
69
69
69
136
124
106
66
125
104
143
80
107
120
88
78
69
88
72
122
76
115
109
151
69
52
74
83
115
83
137
69
78
80
140
80
87
76
106
80
106
131
138
80
78
103
143
106
87
88
80
112
78
69
113
67
128
140
89
87
145
80
146
111
109
80
154
130
69
135
175
99
91
88
69
107
85
104
117
151
128
80
131
99
110
67
115
102
111
131
156
113
114
88
80
128
113
78
106
69
80
54
97
87
87
106
197
87
107
128
123
78
97
76
88
123
110
113
107
104
106
113
90
102
69
89
146
201
106
80
128
69
120
121
109
134
69
112
69
91
101
140
163
69
154
112
107
87
87
111
187
104
150
43
80
80
87
145
131
83
152
143
119
69
91
164
78
119
104
154
127
103
76
80
69
113
115
119
119
119
114
120
80
144
80
152
80
151
91
94
91
175
117
94
127
99
101
156
83
96
125
74
98
80
107
102
80
78
140
144
109
132
102
117
100
127
140
91
160
43
89
128
131
73
112
124
107
80
78
69
109
83
88
144
154
131
103
78
175
76
175
137
80
87
88
93
90
87
117
115
74
99
121
90
81
153
69
151
112
80
146
89
88
131
43
76
99
88
95
69
112
124
76
104
119
99
98
128
89
134
99
83
93
80
69
76
175
120
144
159
69
175
133
106
69
72
162
80
130
99
99
110
113
131
94
80
74
93
94
99
69
94
174
163
43
145
80
151
81
78
76
109
54
101
107
155
120
134
121
69
137
69
131
113
78
146
69
120
156
75
140
144
100
62
131
142
80
87
128
93
78
154
91
127
107
148
115
88
115
107
80
163
80
88
78
79
149
80
120
78
127
136
64
115
76
96
132
115
69
80
78
76
116
129
121
107
138
74
101
104
76
69
69
83
109
119
104
175
121
161
144
125
93
87
103
85
78
80
69
119
112
91
104
115
72
80
146
78
69
132
76
145
118
131
109
175
110
140
104
69
80
52
130
90
78
88
83
116
151
80
87
128
76
104
134
138
87
123
176
78
95
90
128
163
87
134
120
80
110
166
80
82
89
137
69
130
82
80
154
83
134
80
131
89
132
120
72
69
119
95
161
104
107
136
80
109
118
109
75
110
112
83
69
99
151
127
145
121
99
75
136
163
112
109
75
80
80
121
78
113
136
72
118
76
119
89
113
73
122
126
70
90
115
112
160
80
127
116
80
93
133
128
84
144
104
69
80
120
115
78
109
80
136
69
90
107
88
163
100
78
119
84
103
107
102
109
74
112
69
69
104
143
69
100
120
80
138
104
88
104
103
69
89
121
171
80
110
75
140
161
110
145
106
147
109
151
128
80
163
93
119
77
115
121
145
93
98
107
89
118
76
109
132
54
76
104
133
69
131
90
69
87
80
69
91
134
121
121
80
69
155
114
69
80
80
114
80
205
126
95
131
113
144
54
89
96
120
93
82
143
101
80
163
117
111
109
80
98
102
69
175
147
138
78
129
87
88
89
109
78
74
148
69
154
115
78
110
101
112
101
96
93
83
69
76
89
78
87
94
126
121
140
156
80
75
154
110
163
137
154
140
124
94
69
136
85
87
87
112
69
133
123
131
109
69
78
107
128
123
128
100
91
76
148
128
54
69
107
120
89
106
99
72
100
83
137
142
80
120
185
151
90
187
82
136
69
108
78
85
111
69
140
64
80
120
119
166
110
121
104
76
110
140
78
98
110
67
88
127
107
83
110
129
110
78
87
52
93
154
117
155
104
126
94
103
151
129
82
94
69
174
69
121
80
78
78
69
76
134
103
163
160
94
151
109
87
154
118
119
104
120
79
78
100
74
120
99
109
110
164
96
118
80
119
79
102
128
174
69
110
54
106
80
101
100
94
129
87
78
124
155
126
129
132
155
99
78
110
101
87
96
95
87
95
113
131
133
144
91
80
104
105
80
76
117
129
118
120
106
199
124
122
88
119
146
69
54
113
109
85
72
121
69
69
128
111
87
72
93
107
76
88
146
69
107
56
150
80
69
69
154
131
54
129
85
119
93
109
94
147
124
80
54
104
137
110
67
146
160
107
119
89
107
136
113
112
88
76
63
92
156
134
69
110
89
136
122
80
115
76
112
80
110
132
78
94
130
130
199
69
69
154
89
120
118
136
74
83
81
90
130
58
163
88
126
137
128
96
154
89
78
119
106
80
94
87
89
78
88
69
120
89
78
83
136
121
150
160
80
110
134
78
115
146
109
104
154
163
58
115
163
88
110
96
69
147
136
87
155
104
115
118
99
94
88
175
67
127
84
76
91
69
154
97
78
82
117
146
95
119
80
107
141
69
89
88
66
72
99
111
88
115
76
163
76
66
78
123
101
92
72
104
175
80
99
100
76
54
99
80
113
69
108
128
107
83
128
101
80
113
89
69
119
43
104
72
127
54
130
133
80
126
146
80
87
88
96
69
160
54
91
92
142
95
88
88
78
103
69
69
112
128
107
126
119
94
92
78
90
120
174
108
104
140
134
154
107
94
69
94
90
136
87
117
99
163
119
80
114
88
87
69
78
104
128
88
118
87
80
83
114
151
111
109
99
104
104
69
111
110
78
123
120
80
175
78
118
80
76
107
117
113
87
78
145
106
80
104
132
134
139
80
99
99
78
140
142
102
93
96
91
106
82
151
165
78
69
175
140
78
89
69
88
80
119
140
150
106
145
88
80
75
95
113
157
80
75
181
123
122
197
132
110
119
93
125
94
74
75
89
140
159
143
98
126
128
107
109
102
80
143
88
80
114
131
74
93
154
128
154
74
106
137
87
69
88
106
107
80
118
74
80
124
71
95
56
76
78
79
78
110
120
126
117
87
67
87
78
69
94
130
80
89
158
110
80
107
78
197
197
76
136
131
69
121
69
127
101
131
80
145
52
138
96
54
175
107
187
119
128
114
79
156
143
94
78
156
141
106
69
120
107
80
128
69
72
98
111
116
121
151
117
120
69
101
89
80
90
93
106
99
111
84
136
135
123
88
80
87
175
91
89
89
102
121
97
76
72
124
128
109
129
111
132
76
112
166
101
99
107
96
134
175
134
154
156
69
99
140
85
110
113
80
92
140
88
89
84
148
99
69
87
78
104
78
98
89
52
130
150
52
101
106
80
104
59
78
101
161
140
69
137
80
88
94
99
103
78
72
114
156
154
94
69
93
76
175
119
91
66
80
54
78
109
82
80
154
154
94
79
95
110
122
80
81
112
80
80
106
119
56
52
110
123
110
120
99
132
131
82
172
80
117
107
136
80
147
177
104
120
132
59
120
78
76
69
88
74
119
79
80
112
80
80
134
144
71
80
69
119
120
80
87
156
102
118
76
93
133
69
69
130
117
76
80
119
103
112
80
118
99
87
104
104
91
69
130
80
78
119
80
69
120
151
87
119
107
79
76
93
78
91
99
161
93
111
120
151
80
82
80
144
106
78
101
131
109
100
94
165
79
128
113
76
87
104
85
69
69
69
136
80
80
143
197
76
80
72
154
134
104
80
118
119
98
67
102
69
91
87
92
134
120
163
78
69
175
164
80
69
110
197
121
94
107
128
102
52
76
69
72
120
83
69
92
102
117
110
175
80
155
110
69
136
154
99
160
130
151
106
71
73
121
131
117
80
130
128
132
133
119
78
88
120
117
76
146
80
80
87
149
89
129
80
80
128
87
69
131
69
119
175
106
129
141
103
54
127
91
78
164
121
88
148
104
91
90
119
101
110
102
150
156
80
121
128
110
118
98
88
124
110
87
127
104
175
131
90
87
112
154
80
120
88
148
115
104
109
75
104
146
69
150
78
91
106
99
80
76
87
80
128
130
88
121
122
111
80
78
154
126
96
119
69
103
94
121
69
76
103
69
85
115
175
103
96
197
106
151
135
80
132
143
123
140
88
119
113
99
59
80
108
130
71
126
83
87
122
145
80
101
94
80
104
197
80
128
122
109
85
113
87
107
110
175
132
43
86
80
145
118
183
73
100
78
87
87
154
119
99
101
69
112
107
78
107
104
156
155
59
146
131
80
80
123
187
124
140
122
109
137
87
113
122
90
101
134
107
121
80
126
125
185
80
164
104
134
109
88
129
101
140
91
76
94
101
136
128
134
136
175
80
112
110
78
78
80
76
83
120
136
100
80
120
99
174
78
76
100
69
100
106
72
69
138
88
174
87
175
144
122
120
141
64
88
120
69
169
201
75
120
175
154
118
71
54
137
138
119
98
99
93
131
128
96
80
89
132
82
159
155
76
88
104
54
103
69
134
151
121
89
52
87
69
124
128
85
75
136
52
144
78
117
134
90
136
80
52
80
69
52
76
76
124
87
119
112
119
113
154
209
89
88
132
110
109
120
113
78
80
87
85
110
140
124
57
79
52
119
107
120
88
148
112
78
93
87
104
199
131
95
80
151
80
87
151
126
119
100
136
64
109
72
134
93
80
154
119
87
158
75
163
85
175
131
52
110
95
131
99
157
118
109
140
69
107
99
115
117
78
90
78
80
121
76
121
142
69
75
106
128
129
87
87
76
132
127
148
95
94
94
110
140
87
133
80
96
172
98
101
80
127
76
99
102
90
133
84
106
96
130
106
156
160
112
78
93
87
69
137
102
117
107
90
76
80
87
119
80
99
136
139
99
87
140
163
151
145
66
78
128
72
145
175
137
107
128
146
85
96
117
116
91
148
76
140
85
115
151
68
90
110
93
80
64
76
87
83
187
155
107
80
96
115
80
113
89
140
78
104
185
90
201
146
90
85
128
80
109
69
131
128
56
79
96
80
120
140
113
155
117
117
139
122
83
116
99
183
102
199
76
118
134
151
140
80
69
105
111
122
80
154
103
69
69
87
121
112
104
83
89
85
136
129
110
121
101
145
143
90
109
69
69
80
88
114
120
169
112
193
80
69
121
109
80
85
82
121
99
102
114
185
181
76
76
99
110
76
121
175
146
128
119
122
130
80
104
76
80
107
102
94
106
146
78
113
81
178
137
87
106
119
76
113
119
78
175
96
67
76
121
88
98
110
106
71
69
94
94
87
145
88
136
126
52
52
77
78
131
80
175
131
155
72
175
109
83
80
96
80
86
118
94
88
133
69
93
145
132
117
154
154
80
80
121
123
78
92
110
197
115
156
120
120
99
119
80
79
175
96
109
151
131
183
74
120
104
78
74
69
163
137
119
69
110
110
80
94
123
94
80
76
132
80
151
78
115
94
71
87
160
149
174
104
112
140
154
92
104
100
104
102
185
126
96
106
104
69
138
142
104
93
94
88
172
80
66
127
107
76
89
131
85
129
120
120
106
127
156
119
149
127
197
122
94
133
120
72
117
78
123
78
154
119
124
78
121
148
156
89
106
100
114
128
106
136
172
90
119
80
88
87
60
80
80
134
134
80
85
123
128
69
95
120
83
126
150
94
137
114
72
128
109
80
120
69
106
76
93
80
100
80
97
87
151
119
131
76
109
87
131
93
128
95
87
121
69
104
121
104
69
110
69
72
76
96
69
80
183
123
87
69
117
94
106
106
154
119
101
90
80
94
88
56
83
80
125
154
159
74
80
119
96
77
140
89
151
69
134
98
54
109
69
91
106
104
164
121
80
112
166
80
90
87
80
107
155
101
156
142
110
72
69
100
154
124
64
76
119
148
76
80
76
76
54
78
137
197
174
83
127
98
140
124
134
128
93
107
114
107
84
117
99
95
119
99
69
89
111
88
119
147
87
151
133
110
116
80
120
80
132
82
88
78
119
69
115
104
78
148
119
90
80
78
76
113
94
112
109
102
106
104
151
76
94
107
80
80
127
185
72
89
78
87
95
81
93
115
101
140
78
123
78
104
127
69
116
123
108
115
74
104
94
137
160
197
127
76
136
125
69
115
111
119
109
205
87
154
69
74
104
93
89
80
197
114
64
80
90
156
82
85
208
109
80
83
105
78
87
69
76
80
89
91
80
110
89
110
134
131
107
80
146
99
78
94
80
156
109
80
89
122
146
91
64
155
87
87
145
128
113
128
124
54
197
76
126
120
89
89
78
93
93
80
175
127
134
80
80
143
80
156
112
175
94
71
119
107
120
54
87
69
68
145
89
131
99
134
120
91
104
100
80
118
123
54
99
125
145
72
102
82
80
110
106
74
80
146
174
98
114
94
148
100
80
99
128
69
104
69
76
119
161
73
78
151
148
87
131
199
76
124
107
175
117
109
66
80
119
76
80
143
176
111
72
155
78
114
121
107
144
109
69
126
100
87
71
109
100
69
87
129
119
72
197
175
52
118
148
151
101
128
87
120
56
87
110
80
137
93
91
52
69
94
87
52
54
106
100
103
80
85
87
134
111
138
102
69
185
80
69
120
95
88
95
138
93
80
85
99
69
175
96
128
118
129
80
150
164
76
88
80
110
85
98
87
127
156
113
154
96
99
89
88
87
147
83
83
101
78
74
145
140
146
134
69
69
109
112
117
69
146
154
129
69
119
133
80
101
74
80
67
72
89
154
144
169
123
87
73
102
113
89
119
134
107
80
94
143
134
81
69
80
87
96
100
94
117
80
85
146
121
128
183
115
69
197
126
78
125
120
154
80
79
110
175
128
163
100
87
87
121
87
80
109
74
105
120
80
136
103
149
98
127
80
140
94
110
122
119
119
92
76
132
115
93
89
120
91
110
112
120
98
78
91
69
78
120
117
87
74
52
94
127
69
87
89
106
96
113
57
124
114
137
76
164
80
197
77
93
155
69
102
130
87
87
89
82
104
67
105
119
67
100
93
87
89
149
80
120
120
89
181
98
80
106
78
151
175
147
69
133
153
98
131
76
143
94
107
89
130
88
117
106
78
111
175
96
160
94
135
85
107
116
121
113
113
99
115
83
140
103
121
197
76
99
76
187
153
94
109
78
129
110
69
80
98
93
124
67
69
69
113
104
58
106
97
136
87
68
134
109
87
134
134
107
99
130
94
88
80
89
93
93
143
80
104
80
88
124
117
78
104
93
113
83
122
115
87
134
126
134
99
113
88
69
107
92
112
79
122
119
102
134
107
88
132
102
76
144
129
102
80
69
78
88
52
80
100
74
90
109
69
164
148
69
120
99
119
87
131
72
126
88
102
128
115
119
140
76
69
80
134
154
76
94
88
106
94
136
100
139
69
106
130
79
76
94
104
78
113
80
145
95
87
87
109
145
95
69
175
101
80
96
78
112
120
74
107
120
128
137
145
156
119
79
101
96
85
156
106
112
103
197
126
151
94
120
119
106
80
80
100
87
69
80
89
145
128
117
109
131
99
104
96
118
120
71
128
185
87
145
89
114
120
96
120
110
56
69
76
88
120
89
88
129
80
155
87
97
87
99
112
159
82
106
106
80
107
136
89
69
110
89
119
110
119
95
103
101
87
154
104
102
147
120
104
98
140
80
78
123
115
95
110
72
103
52
91
96
80
162
151
126
69
76
104
146
87
118
123
69
154
150
87
138
121
128
96
69
120
71
94
83
69
96
156
138
136
130
129
81
68
100
155
119
100
145
118
143
185
104
78
87
113
76
115
56
76
131
88
109
78
132
78
156
86
87
89
74
113
175
101
107
142
169
89
160
119
99
94
107
174
110
120
119
96
90
80
72
76
79
106
99
119
80
78
120
76
141
104
69
76
69
119
157
164
52
80
101
80
78
119
128
120
175
134
69
100
106
110
72
99
109
69
117
78
93
138
141
175
118
94
148
109
107
96
85
119
134
120
120
56
153
120
110
106
144
89
197
175
106
140
154
107
137
69
101
88
80
152
113
119
150
128
99
101
152
80
111
139
148
156
122
121
118
110
130
83
122
80
119
110
76
112
89
132
123
88
87
128
154
123
72
80
91
146
80
126
161
69
175
101
108
129
80
138
129
52
140
134
110
80
69
75
87
101
102
114
174
164
143
121
104
67
76
87
110
99
98
99
154
87
101
87
113
115
102
163
87
52
80
113
107
69
146
94
88
107
104
119
90
133
72
148
96
83
120
148
80
107
111
69
145
94
117
139
69
79
69
127
69
79
80
116
78
119
193
174
99
88
95
80
164
89
104
88
80
90
107
69
83
76
80
76
74
155
120
134
140
118
91
131
94
104
117
80
93
100
119
91
127
96
69
119
80
114
143
87
78
79
123
89
112
99
109
81
104
103
101
69
94
131
72
119
69
90
107
54
133
78
72
128
106
69
114
76
109
54
119
76
80
99
78
107
129
119
151
80
80
99
131
93
54
107
89
80
155
78
76
125
134
151
92
128
74
96
94
54
118
174
99
120
101
87
117
119
134
99
108
156
199
93
80
69
119
74
69
87
99
121
131
87
111
99
76
107
128
131
118
100
119
98
95
78
114
108
87
88
104
126
160
95
89
93
154
80
147
71
121
117
102
128
104
155
160
87
134
94
140
94
80
128
117
130
124
116
80
80
98
119
156
72
72
95
72
87
69
136
91
100
120
89
101
80
91
80
145
80
97
94
113
67
140
100
76
99
75
69
88
120
78
112
87
78
130
113
109
131
140
87
76
85
139
156
140
117
127
93
160
175
78
152
88
103
87
76
136
121
136
103
85
128
107
76
121
76
69
87
101
89
80
115
87
129
118
87
102
80
134
131
100
129
197
69
131
160
162
127
110
80
155
162
143
130
134
107
69
69
154
110
101
80
141
139
109
110
111
106
91
86
107
129
78
106
110
80
101
80
100
143
118
106
113
120
66
106
175
52
54
123
82
78
75
87
128
140
80
140
106
69
125
100
137
106
69
103
83
92
101
69
154
134
95
78
78
113
175
136
87
74
72
118
109
89
93
106
114
120
136
160
120
185
89
89
136
68
74
98
125
132
85
201
133
114
146
80
94
88
131
128
136
154
115
52
80
113
121
101
121
120
109
110
96
134
138
120
126
104
120
69
119
76
156
52
91
120
96
72
123
133
93
120
80
69
118
99
102
87
78
69
120
95
151
76
69
119
134
159
80
96
119
78
69
69
155
79
107
80
78
154
89
74
112
197
91
72
100
145
87
194
66
175
80
108
91
69
80
80
80
80
110
69
111
107
136
112
142
76
80
197
140
99
98
106
78
54
107
96
118
151
201
131
83
76
107
156
94
134
138
88
128
88
110
121
80
104
100
110
118
107
120
121
127
87
157
76
197
152
80
72
69
80
94
149
69
77
175
140
69
96
99
110
101
69
78
106
80
72
97
80
175
69
80
113
69
120
161
93
119
94
91
194
136
149
115
146
109
87
175
134
121
54
130
76
109
80
80
175
74
96
102
144
69
131
120
107
75
67
136
93
103
104
89
69
80
69
129
99
80
110
96
145
80
88
119
74
113
120
123
119
127
94
69
121
87
120
99
120
69
136
113
119
100
89
87
125
131
70
106
109
113
128
69
107
95
89
78
152
136
128
136
94
136
175
113
97
175
128
69
69
119
99
138
134
91
128
83
100
93
69
95
87
77
76
69
76
164
162
106
135
136
92
102
98
119
80
142
146
140
69
58
134
143
77
87
120
141
118
87
154
99
134
80
78
67
121
142
113
106
145
154
107
122
69
118
89
117
101
98
80
122
122
109
119
80
80
122
127
93
69
102
108
103
101
76
71
87
109
54
67
131
101
112
78
80
128
152
98
98
93
111
107
95
80
147
119
80
92
93
72
107
114
156
117
76
137
92
113
155
104
136
76
154
110
107
76
106
175
132
128
99
101
109
175
75
128
80
151
109
114
107
109
138
68
116
107
109
162
163
93
69
80
120
134
104
86
108
69
106
125
110
164
85
120
119
130
128
125
111
104
128
196
93
67
114
80
113
87
69
93
88
80
151
97
68
87
80
54
120
78
140
83
186
69
144
120
90
127
74
88
121
94
87
96
119
102
80
120
80
120
78
148
144
95
87
80
72
88
100
120
114
52
109
144
69
57
117
107
128
104
114
89
107
91
137
107
87
157
136
91
197
104
78
98
69
116
104
131
80
175
117
103
107
119
151
155
128
146
94
152
144
100
101
78
80
149
89
128
156
99
134
80
124
100
144
154
87
157
112
133
132
85
197
120
80
93
80
95
95
131
120
110
76
155
80
119
87
112
126
201
125
80
80
76
120
122
104
78
109
115
128
69
106
80
128
126
99
96
125
154
134
127
80
95
136
197
69
120
120
91
69
106
69
127
76
69
117
77
130
113
99
143
136
89
101
118
120
63
99
76
88
80
115
78
93
100
107
126
133
93
110
169
69
103
78
133
78
119
93
69
76
147
175
80
131
104
101
144
99
127
123
80
80
88
80
110
97
80
121
69
69
146
88
89
107
148
78
175
76
80
78
120
146
96
80
100
131
107
133
74
119
76
117
131
94
99
105
88
72
93
106
137
152
109
110
120
78
117
136
140
131
107
76
163
92
115
114
136
78
128
119
137
128
112
197
107
89
89
101
109
99
99
115
120
127
175
80
80
87
72
154
156
113
56
157
127
80
149
110
88
113
139
149
89
69
117
69
102
80
87
81
107
175
69
80
69
72
87
78
62
88
175
80
163
134
175
78
74
122
116
128
114
136
69
154
94
99
78
69
175
128
76
80
99
130
114
85
101
128
76
134
137
134
132
110
157
143
123
54
110
105
131
151
93
140
120
107
197
78
187
72
87
80
154
99
109
80
99
78
127
157
80
151
117
96
115
128
113
119
80
128
76
151
88
93
118
69
80
100
129
107
87
107
76
88
69
113
127
163
87
80
90
102
134
100
130
133
106
118
85
80
111
113
87
88
93
164
175
123
136
130
120
121
69
89
101
80
76
80
80
88
157
115
104
78
54
138
72
96
119
181
96
108
89
145
175
112
156
106
76
88
69
78
134
69
67
123
59
87
69
100
80
95
134
118
128
76
76
80
69
119
131
80
169
80
123
123
76
120
67
104
104
91
72
134
132
93
85
163
69
80
69
99
142
72
95
101
148
87
120
77
104
71
67
80
157
88
112
140
109
80
93
72
76
109
97
92
80
93
104
104
131
87
131
93
94
99
97
141
122
78
100
172
69
79
69
85
83
143
81
130
160
154
119
157
99
107
110
102
105
76
80
99
134
99
132
87
87
130
134
91
128
56
88
127
118
112
103
91
96
119
119
69
147
110
80
120
89
117
151
106
69
146
76
175
151
112
128
145
124
83
80
112
119
114
88
98
87
80
78
129
131
107
91
80
89
87
88
140
107
96
109
175
80
80
74
87
69
80
69
109
80
154
87
98
107
96
114
80
114
134
104
147
96
133
93
197
136
94
78
106
67
137
76
183
146
85
123
175
94
96
94
106
121
80
172
85
69
69
69
69
149
104
123
102
145
74
87
112
107
156
117
112
109
85
97
112
197
72
152
143
119
145
163
87
87
118
119
156
119
111
122
145
91
99
87
80
117
89
143
152
127
69
52
107
132
93
87
80
119
109
107
88
136
91
120
113
146
80
99
78
99
96
133
111
102
89
107
74
91
90
106
148
96
119
98
80
146
107
101
123
91
69
78
72
69
175
94
197
154
91
117
89
160
146
120
175
128
74
154
111
134
133
172
102
120
72
120
75
106
78
91
80
76
136
151
93
115
123
132
122
128
83
69
87
118
130
175
88
121
69
99
80
94
151
74
121
66
76
120
69
110
88
119
126
100
69
99
87
137
119
102
120
110
129
166
99
80
123
129
107
80
122
123
175
102
80
119
103
89
69
175
128
69
122
67
145
96
94
102
69
101
90
99
78
54
107
119
80
123
154
113
72
119
69
151
60
80
118
100
121
112
133
137
101
76
154
93
94
91
128
127
122
129
78
76
106
107
155
126
127
80
83
76
100
69
131
131
80
151
104
155
112
155
69
82
144
131
120
82
201
87
110
109
103
164
155
155
126
118
78
117
78
85
78
74
69
136
80
106
75
109
174
99
106
133
131
106
88
100
119
144
120
197
136
117
110
96
131
87
78
127
87
109
102
148
80
131
129
89
114
76
100
76
132
76
69
66
126
164
127
69
80
140
146
83
115
88
69
95
68
76
80
113
120
127
94
127
117
93
80
80
115
91
80
80
164
75
76
140
69
131
80
117
101
131
95
89
163
87
69
101
134
69
122
78
136
78
148
107
127
121
78
131
121
119
80
94
103
88
78
69
110
66
107
87
91
90
113
111
119
121
142
110
90
154
199
154
99
69
127
111
78
174
110
119
99
88
76
88
80
149
96
127
114
126
120
121
127
87
127
155
122
87
123
89
129
80
76
93
102
91
87
156
124
119
76
76
69
69
123
72
80
100
134
155
131
120
123
134
110
78
99
90
156
78
97
119
80
117
113
94
69
76
132
131
99
119
76
112
69
110
94
155
114
138
104
69
80
127
111
78
128
93
87
112
124
80
127
80
131
127
88
164
131
103
118
96
82
78
83
80
183
112
121
76
104
78
111
69
135
115
118
120
87
120
132
87
132
87
87
80
120
78
72
115
78
74
102
78
109
128
109
113
149
99
109
78
175
85
119
136
88
66
156
132
144
104
117
122
106
134
80
102
74
135
107
126
119
80
121
154
109
82
109
78
74
111
185
94
76
54
119
103
106
69
106
156
74
122
120
89
89
88
156
95
69
118
94
80
101
131
99
78
143
89
69
69
87
98
128
114
72
87
75
89
120
134
80
125
82
131
175
80
76
117
109
112
59
126
113
78
113
80
87
80
83
111
111
80
107
80
128
175
80
103
153
109
107
157
143
94
69
69
76
89
78
69
99
80
156
112
66
87
72
107
136
113
117
93
80
118
87
72
91
175
96
69
153
128
146
113
140
83
128
117
71
74
87
72
119
119
118
87
118
107
88
120
88
54
69
87
110
112
155
113
120
88
103
83
78
80
76
111
80
106
101
78
123
80
80
136
54
113
107
129
154
104
110
87
163
120
120
109
80
119
135
76
69
76
80
87
83
93
110
69
98
127
69
80
109
80
151
119
80
88
80
81
127
128
80
80
119
106
156
80
91
119
120
130
101
103
87
91
175
96
87
156
143
87
145
137
175
56
69
159
112
134
156
130
121
106
80
88
72
66
76
131
137
80
144
74
78
140
136
76
91
108
85
104
128
78
107
140
100
80
103
99
80
88
172
114
106
112
94
95
87
87
69
93
97
89
120
121
131
69
87
102
154
87
72
150
164
120
112
154
75
111
83
54
113
176
80
69
128
185
69
52
109
100
110
131
71
119
106
113
132
120
136
89
132
125
175
96
87
69
99
89
128
113
90
98
69
128
95
68
120
76
43
69
100
87
99
104
88
137
137
87
131
87
80
131
149
85
89
128
89
80
94
87
104
88
87
69
54
155
66
76
80
80
147
111
107
69
116
114
80
69
82
80
110
89
107
75
138
84
133
80
149
80
78
102
119
129
131
138
151
87
96
101
78
99
159
121
137
94
67
80
143
122
69
137
102
131
101
100
117
101
95
99
131
87
80
121
69
89
175
107
93
87
106
96
115
80
141
119
137
141
80
76
78
74
114
120
54
124
69
128
144
156
100
120
103
74
99
110
88
128
112
109
134
155
146
76
146
89
88
93
177
99
111
89
71
69
93
126
115
72
118
129
87
80
128
155
76
64
116
93
119
127
80
94
154
80
69
113
78
121
80
66
126
58
119
99
69
197
136
80
88
144
154
76
80
93
156
95
131
102
106
99
107
63
132
140
110
128
175
94
120
67
87
74
107
78
72
108
72
88
69
187
117
122
80
87
100
119
94
197
76
136
154
128
101
101
119
155
104
89
106
76
155
76
69
142
104
87
144
80
89
119
69
94
131
87
187
117
80
105
151
101
89
78
96
101
80
80
124
107
91
139
129
87
152
94
107
131
87
69
76
143
69
87
113
97
140
120
155
148
125
109
161
78
113
104
69
116
90
80
80
64
72
83
130
71
175
137
113
87
89
78
103
136
197
90
110
114
199
152
111
107
157
123
80
151
104
156
120
183
140
125
136
76
76
69
110
69
154
92
118
87
197
104
80
78
111
76
111
87
121
110
109
122
78
87
93
115
127
121
107
90
134
80
69
63
199
175
80
96
136
99
98
144
110
122
110
80
92
80
78
155
115
76
89
137
121
187
87
91
82
54
80
76
96
94
119
76
94
87
121
98
96
128
104
80
78
94
131
119
59
93
154
164
91
119
121
69
91
156
68
172
87
104
87
122
69
80
151
128
100
83
120
145
69
79
107
129
121
88
80
82
95
88
80
112
87
88
89
101
89
80
162
148
91
76
88
94
100
121
120
127
78
88
76
117
110
96
127
88
88
92
119
78
80
155
155
93
69
109
110
75
121
91
148
119
102
110
102
201
80
99
175
79
128
85
133
122
76
156
80
84
80
102
80
87
96
80
121
120
175
125
96
107
154
80
79
100
175
106
88
76
101
156
128
80
56
140
52
146
100
80
140
151
131
120
69
128
100
104
128
183
126
93
109
98
107
80
132
87
94
106
154
87
98
88
102
88
87
119
89
80
74
145
113
112
148
122
80
175
107
69
109
85
110
106
117
121
104
134
156
78
117
80
78
156
85
140
124
129
109
80
75
56
71
92
114
80
80
134
89
139
89
94
105
111
131
175
109
89
43
119
83
94
52
121
80
107
119
197
87
135
138
157
87
107
80
183
123
78
105
119
85
110
88
138
120
130
80
96
87
87
87
109
131
128
114
146
156
174
125
97
121
197
142
136
89
109
80
87
80
84
120
122
72
87
119
154
87
160
101
140
134
117
69
109
80
104
145
110
175
167
76
111
119
121
85
107
76
89
69
80
119
100
126
90
87
136
69
78
175
78
122
78
76
156
145
89
69
99
80
89
98
118
134
76
112
78
69
109
76
137
121
69
119
134
106
127
78
102
120
85
96
78
87
110
80
99
76
101
115
174
123
93
136
80
146
136
155
146
128
131
118
96
107
69
134
80
80
122
99
121
78
109
122
99
78
80
78
87
108
140
128
136
80
107
80
69
56
133
69
110
96
119
72
103
72
119
131
85
185
95
102
104
138
109
155
96
92
80
109
116
43
74
124
118
69
69
140
142
111
109
163
92
110
95
80
120
103
79
78
154
63
199
104
80
130
119
80
107
54
74
104
131
101
80
80
175
88
119
106
78
63
103
137
111
197
100
93
162
120
150
156
120
119
147
76
118
80
69
151
76
78
101
112
69
112
131
127
96
102
76
119
131
80
83
68
80
141
87
110
72
113
80
80
86
104
112
119
128
104
134
80
133
107
76
140
87
146
144
69
93
99
116
175
119
110
76
120
69
113
83
80
151
87
149
106
81
120
127
80
89
80
76
85
112
87
109
109
87
79
76
119
72
54
87
119
87
75
76
109
114
92
87
101
78
88
76
80
128
115
80
91
89
95
93
80
99
78
111
89
113
107
100
118
121
104
83
102
110
76
131
74
169
127
76
110
76
87
76
78
106
78
154
107
80
154
119
109
43
136
80
117
156
80
78
128
107
142
123
114
100
112
104
84
124
89
117
112
154
131
95
79
127
156
80
131
110
88
134
56
76
87
80
124
76
97
152
69
117
104
99
129
136
76
118
94
109
88
100
118
91
109
80
76
95
165
119
136
134
100
128
76
98
87
107
99
140
120
146
177
96
80
115
71
119
74
94
113
93
104
78
110
80
90
88
107
107
72
69
69
131
120
114
94
140
69
69
156
67
132
175
107
197
143
116
146
104
144
80
74
134
88
69
116
106
89
58
128
80
155
70
119
110
87
88
139
163
109
101
79
80
164
126
76
154
111
52
82
130
128
87
121
106
93
95
159
87
96
110
148
74
119
87
186
93
66
80
80
164
101
131
82
101
80
175
155
147
107
78
112
85
80
82
78
102
107
106
110
147
165
112
115
156
101
163
66
94
144
111
151
113
106
99
89
80
76
175
112
134
116
43
73
136
110
82
101
72
121
114
116
117
109
76
78
85
76
98
111
98
144
88
115
71
80
100
175
71
60
156
117
99
69
160
120
78
175
113
91
80
120
82
93
94
96
120
134
114
94
121
131
120
80
76
94
52
131
148
99
97
199
112
69
117
99
138
123
113
136
119
139
89
109
163
90
116
102
87
76
91
74
91
78
134
88
52
101
128
101
126
85
87
88
76
175
136
95
56
156
119
114
69
83
101
99
136
99
80
158
76
76
89
99
87
117
136
117
69
69
80
93
133
69
59
138
80
80
80
96
69
101
69
97
120
119
113
74
120
143
117
163
69
87
80
80
160
93
78
87
160
80
69
110
89
102
103
104
87
103
112
181
128
67
80
96
88
163
111
96
94
90
87
107
76
66
76
72
110
94
80
175
78
91
54
119
101
89
120
81
67
109
87
107
115
72
87
69
80
104
101
115
79
109
172
110
107
80
99
78
154
131
106
149
130
69
72
88
87
78
94
104
107
175
83
79
119
106
154
88
110
69
111
197
107
87
88
84
89
102
102
89
69
99
103
85
201
112
80
69
99
121
88
78
106
132
80
80
136
69
121
119
89
91
87
87
109
76
155
110
76
101
72
69
120
80
114
175
98
119
119
101
80
76
85
121
79
113
145
117
80
140
89
69
119
59
104
91
145
76
78
119
89
94
95
126
78
148
174
118
113
166
99
91
109
76
74
52
54
114
103
80
79
110
119
124
69
76
87
69
117
130
131
92
148
91
136
138
119
136
131
132
119
136
120
88
75
76
154
63
118
155
76
80
132
93
106
59
120
122
126
69
104
78
151
154
80
76
127
163
78
80
80
69
87
140
69
154
104
108
87
140
106
99
90
121
126
91
79
96
93
92
107
80
88
91
69
131
98
197
119
128
72
75
122
89
78
99
118
143
174
69
97
117
156
101
107
80
126
131
118
151
109
109
201
106
97
80
117
97
69
114
69
119
94
78
131
91
121
93
157
43
94
199
83
145
106
87
89
69
92
89
87
134
131
132
91
80
89
96
56
69
107
151
112
111
80
112
137
96
69
123
125
175
52
119
76
119
69
78
131
78
80
143
101
107
143
120
169
135
89
107
201
69
130
70
112
146
102
52
102
154
174
88
140
110
109
117
56
88
130
99
69
80
69
78
154
83
76
121
87
110
56
123
106
136
73
152
111
137
151
143
93
152
120
118
81
118
137
109
104
94
67
136
175
112
165
147
117
122
69
80
87
69
87
148
124
126
99
110
91
72
113
85
136
115
105
140
85
109
106
78
87
102
108
78
163
80
118
98
102
141
121
148
143
94
102
76
115
117
110
87
130
78
150
110
107
107
119
155
133
88
121
74
112
80
156
119
143
87
96
69
124
131
69
69
123
114
120
113
115
121
101
128
175
91
142
150
101
117
88
136
103
89
93
128
80
88
110
91
87
91
80
110
87
89
78
107
64
94
110
145
84
69
87
114
124
119
131
104
107
59
130
128
80
107
80
69
80
66
80
87
157
94
91
80
69
154
87
80
52
80
122
151
120
128
112
131
123
151
150
91
72
175
100
91
56
80
69
69
108
80
100
89
69
88
97
119
129
119
78
105
142
90
129
91
69
93
89
163
145
103
101
111
104
130
80
130
80
109
159
131
107
76
89
111
90
87
120
80
97
109
145
80
69
118
98
94
83
160
104
169
80
110
115
118
119
91
101
93
76
106
100
130
118
127
112
64
108
80
78
120
69
92
107
126
154
122
87
112
54
94
119
154
100
110
77
69
80
80
87
94
129
76
91
78
109
113
128
125
76
91
125
117
78
130
106
69
130
114
131
107
139
78
69
120
59
115
155
56
83
54
87
111
113
110
69
89
80
150
107
156
60
78
183
112
80
126
69
78
93
80
104
201
78
99
110
90
119
99
100
69
78
89
131
71
121
107
101
155
80
107
166
121
111
87
104
134
98
72
69
113
80
87
99
87
110
89
123
89
76
73
97
148
109
87
130
183
99
95
67
109
119
175
78
165
118
80
80
108
124
129
120
125
80
107
156
120
154
95
80
115
114
89
95
109
81
130
105
117
111
69
119
136
113
87
69
87
110
88
105
156
80
101
88
164
71
119
86
136
115
98
107
113
136
89
90
119
154
80
89
95
82
144
80
69
103
124
101
131
117
83
60
154
52
94
69
119
101
104
134
113
98
93
105
106
145
121
93
102
154
128
80
83
156
69
103
132
106
80
118
76
82
148
110
129
111
119
99
94
143
133
104
90
193
80
117
145
113
143
185
93
69
143
99
78
87
156
135
80
99
94
87
69
80
100
131
83
154
109
109
87
78
150
96
136
134
129
72
113
153
76
119
117
80
119
78
80
107
87
133
80
112
133
80
128
103
95
89
78
121
110
126
145
111
78
78
80
125
69
80
93
117
154
69
104
148
117
156
112
54
88
80
146
147
82
110
154
120
154
81
95
69
110
120
94
121
129
72
102
121
140
83
71
119
89
134
115
99
175
134
175
78
104
83
175
114
117
118
110
80
148
91
96
155
145
100
113
96
174
76
129
69
89
72
155
78
76
99
114
175
129
107
119
90
79
56
75
80
100
91
80
100
117
69
83
98
102
80
140
99
102
154
80
118
109
94
140
78
140
138
80
104
107
76
69
80
136
105
134
107
127
138
85
175
89
130
99
165
89
80
120
88
69
112
119
134
128
76
121
154
69
110
100
69
80
83
131
54
99
132
120
119
105
187
131
175
143
113
128
66
73
124
54
113
134
80
152
110
92
145
80
82
128
88
100
69
71
69
94
98
108
69
106
95
104
151
143
114
91
52
151
90
136
133
75
127
126
121
122
100
199
121
137
151
67
94
54
126
128
147
74
140
168
120
102
106
87
130
121
127
52
80
80
80
159
69
121
90
68
113
120
175
106
76
84
109
87
69
80
87
87
89
87
86
97
80
123
134
120
80
119
109
104
156
144
185
201
128
87
80
197
137
98
92
98
154
96
88
94
94
117
154
133
79
85
106
79
93
119
58
172
69
111
92
114
75
121
80
80
156
129
107
124
92
97
149
163
93
131
110
69
66
175
69
132
157
88
134
107
152
130
140
183
76
107
121
78
93
80
138
197
119
75
138
151
159
114
118
127
79
94
96
151
82
92
101
145
114
197
109
88
80
137
160
110
112
132
183
131
154
131
102
78
136
88
131
121
123
101
164
106
110
140
54
109
96
85
69
140
107
110
69
124
106
78
109
181
80
109
131
141
120
132
110
127
151
90
106
75
132
126
121
154
110
80
133
71
156
99
109
122
121
80
72
154
76
82
72
113
131
69
146
69
74
78
111
154
80
104
74
80
139
120
140
128
95
175
74
145
145
104
80
80
93
121
69
87
106
91
93
101
112
121
72
80
94
121
54
106
72
154
175
103
76
87
166
104
80
121
87
87
87
122
106
145
136
159
156
85
104
69
69
128
80
96
119
119
99
88
89
80
148
119
136
95
88
80
91
75
72
102
106
99
69
76
76
80
87
87
76
80
155
134
120
104
150
101
99
143
103
72
140
129
101
80
120
126
117
80
69
80
74
80
83
94
87
96
74
111
109
91
72
115
69
106
96
72
122
155
87
80
80
80
131
76
69
99
108
95
104
69
129
110
134
154
128
80
104
67
121
144
101
131
140
133
69
89
109
80
134
85
99
80
69
175
143
87
76
137
147
154
111
95
96
78
80
69
120
175
114
58
68
106
128
80
117
108
67
88
199
104
78
64
78
87
112
74
114
107
80
109
199
156
119
87
88
80
120
155
128
56
88
78
115
171
69
117
78
175
69
83
104
80
87
97
83
136
120
96
106
137
101
113
111
151
117
78
143
106
107
93
103
89
107
109
122
80
156
96
118
103
117
80
76
106
107
128
96
118
96
81
106
104
69
69
58
110
175
88
93
113
110
121
106
66
122
131
175
120
201
87
94
78
106
121
106
122
80
110
106
119
94
69
54
98
76
107
69
117
106
106
119
109
78
80
90
128
80
110
90
156
87
131
111
120
87
78
121
87
143
139
78
93
117
115
52
110
129
152
142
123
106
155
106
121
117
137
95
108
56
162
99
78
78
134
102
110
96
119
107
148
106
69
80
87
193
110
69
96
155
69
80
127
80
69
102
109
78
74
87
152
80
88
97
69
136
109
96
154
80
94
69
176
113
82
94
121
69
92
144
72
85
80
156
156
101
78
136
120
69
91
69
80
141
113
111
87
87
68
113
132
74
110
120
93
89
69
102
91
137
152
69
134
115
148
43
163
87
102
88
127
120
87
87
95
104
78
115
89
69
124
112
78
124
185
82
87
169
95
101
89
120
87
87
84
69
78
121
107
118
106
83
69
127
93
80
78
150
131
106
160
128
69
99
130
100
136
78
99
52
94
114
121
76
128
91
96
102
104
127
75
94
69
134
83
109
119
87
69
89
138
158
115
72
88
101
80
99
104
124
134
78
119
83
130
69
106
72
163
99
119
122
67
138
155
136
80
105
107
69
95
137
134
134
99
80
119
119
120
112
99
89
181
109
137
122
97
123
119
76
145
54
94
109
79
99
107
118
144
95
109
120
100
121
83
69
101
59
134
107
79
69
175
105
110
69
87
156
110
122
52
80
115
99
134
80
74
131
140
175
80
99
69
63
78
127
160
76
132
91
107
122
91
80
109
119
88
96
119
119
80
114
72
112
69
88
107
119
59
138
98
98
127
128
109
154
99
69
109
85
87
120
98
119
73
112
85
107
120
138
118
118
88
100
76
69
104
118
93
175
131
82
121
129
69
110
76
110
148
134
90
153
119
122
107
80
102
80
95
134
69
123
162
93
140
111
175
78
143
88
107
128
115
109
89
87
148
136
119
138
145
123
91
107
69
143
185
74
106
96
83
93
105
127
99
76
78
118
79
119
102
121
80
134
78
78
95
78
128
69
124
76
96
121
129
69
197
100
131
147
110
135
115
127
129
110
99
120
151
88
78
80
106
117
103
100
134
78
80
90
94
111
76
136
102
129
96
80
104
119
99
78
111
90
115
80
152
166
74
123
113
146
119
76
80
119
74
57
102
165
124
93
79
77
80
78
118
87
112
104
87
72
104
127
112
144
128
156
145
80
91
97
140
80
100
102
114
94
78
104
67
78
76
104
87
102
96
128
134
54
120
154
111
75
93
134
106
80
100
91
78
76
127
101
119
75
164
119
131
94
67
103
110
80
69
75
125
112
106
102
87
176
80
76
175
101
175
175
66
160
99
88
109
99
128
74
89
119
80
52
111
156
102
74
174
87
112
107
109
101
88
128
69
80
119
119
94
80
156
121
89
80
142
107
92
104
76
72
107
110
69
143
80
96
87
122
119
119
76
87
155
104
69
130
93
60
110
123
78
114
72
107
72
69
69
69
113
101
80
69
163
74
197
111
100
104
93
104
101
69
99
97
175
136
72
107
154
110
176
109
101
87
101
116
69
80
75
111
169
79
108
94
69
104
91
112
110
92
95
96
69
128
76
110
146
115
68
106
100
69
127
131
120
93
120
101
130
124
131
131
112
60
80
93
156
115
98
112
131
126
69
120
119
155
64
106
175
94
121
128
128
80
72
113
142
69
110
96
136
147
145
99
52
90
129
69
107
110
129
104
69
87
160
158
151
104
76
109
72
98
69
160
99
111
69
126
76
69
80
112
89
67
100
195
120
122
80
127
175
93
119
110
93
132
150
80
52
134
119
197
128
134
99
104
175
88
118
69
102
117
110
80
156
137
101
89
80
110
108
137
119
69
78
105
72
88
106
123
131
109
80
109
78
151
76
119
76
99
78
92
131
99
80
94
64
117
131
107
133
132
140
111
94
94
87
155
174
156
87
106
154
134
140
120
78
91
118
95
78
145
130
107
128
111
110
102
109
80
114
103
112
199
80
111
100
151
120
69
127
87
123
110
129
88
119
124
114
155
120
113
90
127
79
88
110
121
78
122
76
132
89
80
154
107
140
117
107
76
101
128
91
175
164
102
126
119
80
82
76
87
99
107
90
104
112
91
117
66
154
80
154
155
96
115
80
88
82
64
106
78
76
109
83
78
104
136
69
78
163
106
131
95
120
113
113
90
119
104
107
68
109
43
78
88
76
69
76
80
170
117
69
127
80
94
107
91
80
69
128
136
80
175
104
118
78
119
128
95
94
131
99
110
109
101
119
154
122
69
99
90
109
118
96
43
87
80
115
136
80
80
119
148
107
94
69
80
93
113
119
104
144
119
80
166
127
109
111
99
99
123
163
80
72
143
81
110
133
122
69
95
94
120
78
149
113
69
107
104
80
132
119
80
154
116
89
66
120
119
74
94
89
93
136
80
91
93
110
102
105
80
69
197
94
95
146
80
106
134
87
120
78
140
83
78
64
78
124
102
175
76
85
96
119
120
151
104
88
107
113
80
91
130
124
80
80
99
76
99
99
89
76
87
91
80
119
80
103
125
80
175
74
78
112
118
69
142
109
154
98
133
76
123
78
69
127
72
115
122
94
126
93
143
149
197
78
127
76
69
87
82
147
154
128
80
96
119
146
101
129
76
99
80
69
117
90
96
97
91
101
89
93
99
134
88
111
80
121
78
119
107
176
90
109
146
95
87
145
88
114
175
72
80
131
83
96
131
94
113
155
120
97
175
69
80
124
69
136
76
107
69
69
87
78
165
153
93
83
121
106
127
80
102
175
123
69
76
85
114
128
64
158
156
128
164
69
106
87
140
113
106
120
80
102
69
113
163
107
96
89
99
126
169
120
80
103
128
123
99
110
78
69
109
80
76
89
134
87
66
101
104
103
69
88
90
99
134
119
91
117
116
133
54
110
115
121
88
80
104
119
96
89
87
156
151
63
69
80
154
151
119
78
78
118
119
69
88
80
107
113
163
120
117
131
92
100
155
87
69
140
112
83
120
121
72
109
120
107
154
89
110
89
76
88
130
121
80
106
94
72
120
96
54
69
76
124
110
93
80
89
154
120
107
72
99
75
110
94
106
120
76
52
106
109
88
134
93
113
134
127
96
72
52
108
136
149
99
111
136
93
109
113
122
83
80
141
76
80
138
94
120
156
110
85
80
112
127
120
78
132
76
127
119
104
163
80
109
80
80
80
99
69
80
117
116
128
80
149
131
76
140
69
133
109
94
110
80
128
89
103
78
134
111
175
133
183
91
134
83
80
95
117
104
67
118
147
93
69
128
87
87
174
81
99
123
136
69
78
78
152
153
152
69
87
94
76
128
114
56
76
54
69
43
72
91
160
197
197
124
72
128
128
115
129
80
80
69
129
126
121
75
119
136
94
93
108
120
121
176
154
88
99
69
80
117
99
80
96
78
67
109
96
154
94
150
155
156
129
94
120
71
69
166
76
80
143
80
143
128
145
91
85
82
54
120
95
78
69
78
119
72
91
80
118
107
80
76
78
83
64
78
66
80
122
80
119
80
107
69
136
131
160
154
106
75
88
134
87
69
154
93
121
52
88
73
87
96
160
126
87
151
87
69
88
119
100
99
171
66
97
120
175
75
112
143
175
107
129
107
107
114
129
112
88
123
149
150
106
126
103
80
91
119
104
74
80
81
123
136
88
107
83
103
146
100
72
99
174
80
159
94
74
93
54
122
66
98
183
175
109
112
78
105
129
104
122
87
99
119
54
117
109
175
72
78
135
120
123
114
134
175
101
167
107
117
119
89
101
88
78
106
119
52
127
80
117
63
129
123
99
122
80
127
78
69
110
119
119
85
120
117
156
109
128
160
127
163
131
144
120
134
96
124
129
120
107
140
94
117
83
111
76
127
100
74
78
80
112
102
89
74
103
93
123
87
113
166
93
115
119
155
80
78
87
96
69
156
69
80
69
72
155
43
88
97
125
137
122
109
101
109
85
85
69
102
69
68
76
169
87
101
144
88
111
87
119
95
116
122
88
87
76
154
52
124
136
109
88
118
79
135
80
72
128
104
115
110
117
54
150
110
80
124
80
78
80
107
208
114
99
80
69
134
211
123
137
175
96
128
144
112
107
80
155
124
119
106
134
201
87
99
175
88
87
106
80
121
87
69
80
109
107
80
126
112
93
124
78
97
111
155
69
110
87
69
80
72
80
100
145
99
80
76
175
89
96
128
127
80
93
104
104
99
80
130
140
80
120
101
117
78
134
138
134
137
69
122
94
98
157
118
104
134
124
146
76
89
163
78
89
120
109
111
146
125
69
117
69
95
69
56
69
89
102
113
119
148
69
119
154
69
72
80
160
106
94
87
113
144
125
185
156
76
131
118
94
136
103
175
94
76
96
104
151
107
69
121
76
175
128
163
73
197
94
92
154
72
126
123
104
85
136
116
69
69
106
95
85
154
69
69
88
88
91
118
70
104
100
183
120
116
87
80
96
175
100
54
100
104
74
69
88
163
78
134
73
73
117
99
69
78
146
89
126
109
98
74
69
69
69
118
120
106
96
75
162
111
76
107
131
110
107
156
121
114
154
144
175
136
62
120
119
128
69
123
159
104
68
121
98
114
78
89
128
80
109
128
120
95
94
155
120
107
128
125
87
136
88
147
80
99
104
95
54
146
88
197
120
87
148
132
109
151
52
101
107
69
85
156
102
80
91
131
89
80
163
85
90
112
76
96
131
175
76
101
99
138
128
80
126
137
126
109
137
99
54
110
80
106
110
131
153
88
82
96
110
112
120
80
110
80
133
74
101
94
91
111
87
80
99
119
87
109
128
93
88
85
76
118
88
142
146
80
80
119
89
78
94
80
80
152
117
146
91
94
110
126
147
87
88
96
95
119
109
82
107
106
85
78
127
131
94
69
109
78
106
80
163
78
154
129
85
148
131
69
138
87
87
94
94
121
185
69
119
88
109
154
72
69
110
133
114
155
89
118
110
111
80
80
110
106
143
80
120
69
76
125
128
109
104
52
85
119
115
119
87
78
112
120
96
158
87
126
73
155
117
122
112
111
134
110
94
119
93
69
121
94
78
96
160
104
109
89
119
54
107
175
105
134
127
78
92
74
117
69
83
82
112
88
109
118
88
83
76
93
69
74
69
83
103
99
94
80
100
80
121
117
125
90
128
76
80
69
117
88
117
111
87
80
146
93
99
129
119
109
88
140
132
120
154
164
104
87
69
71
80
115
69
69
109
120
110
69
120
87
56
157
127
100
133
66
145
80
72
110
80
78
107
89
100
154
94
89
88
125
134
80
80
69
113
119
87
78
113
74
43
99
119
97
126
132
80
140
88
120
162
107
145
119
76
89
80
119
109
145
197
140
72
85
87
80
87
76
78
113
120
119
110
80
87
107
80
117
156
108
135
87
78
118
64
127
121
78
109
69
64
122
151
83
168
128
136
132
80
69
104
90
109
107
129
101
96
78
87
120
72
75
76
107
122
124
83
119
100
160
134
119
74
85
78
88
134
89
112
106
121
119
155
110
75
76
84
131
68
155
135
101
99
154
80
128
119
107
87
80
121
114
139
74
128
119
138
124
80
163
126
124
80
56
78
98
109
94
156
87
72
69
136
80
125
99
120
101
110
101
80
56
156
78
75
124
174
76
69
76
156
100
85
99
76
88
78
80
121
72
129
175
153
76
130
175
93
120
78
99
80
131
80
117
136
96
112
155
78
164
87
156
104
112
85
87
69
78
129
87
80
109
120
146
128
80
56
80
110
87
132
87
137
163
80
80
136
89
102
122
140
111
106
129
80
87
78
156
90
99
98
76
197
89
128
151
66
87
69
131
80
72
76
96
113
131
93
140
69
87
52
119
125
146
116
100
134
107
117
83
104
88
164
121
100
54
149
80
124
60
140
100
90
93
84
117
134
76
91
115
74
80
109
114
117
117
119
131
80
119
93
119
110
80
80
112
80
145
149
185
94
102
120
154
64
80
115
133
155
76
63
78
108
69
140
54
143
69
99
113
117
87
137
89
131
119
186
130
80
136
80
151
81
91
128
107
54
103
78
69
137
197
150
107
107
136
84
119
81
121
80
142
140
110
69
93
140
120
160
69
101
80
128
76
101
102
79
136
111
87
109
119
76
119
151
99
78
122
136
107
83
102
131
102
66
87
89
80
93
87
69
102
87
104
133
118
107
78
104
127
163
80
79
71
69
87
140
69
71
91
76
99
101
87
104
99
73
94
131
87
156
101
109
99
138
80
175
106
175
136
140
69
107
69
109
92
78
54
104
174
125
97
119
72
153
127
67
103
87
121
80
101
88
99
69
120
99
127
84
128
120
98
109
109
54
94
151
76
136
137
81
87
96
80
107
129
78
169
94
76
175
82
93
149
69
69
99
101
121
131
110
145
92
164
128
56
78
76
87
174
93
122
128
87
95
80
107
120
115
154
88
111
71
136
88
120
54
180
128
175
80
80
104
129
120
154
92
114
114
78
120
99
125
80
69
92
96
69
155
118
76
69
154
87
52
109
72
87
134
94
117
115
87
105
80
110
88
91
141
106
120
80
117
112
166
155
80
80
113
124
76
113
103
103
155
91
80
99
155
89
145
107
83
80
69
72
87
52
144
78
156
175
78
87
67
72
175
96
72
112
127
104
97
80
119
155
69
113
121
100
106
115
106
92
80
99
119
113
87
80
132
80
78
164
209
132
123
88
112
140
109
76
118
117
107
90
107
107
106
145
109
164
120
85
113
127
130
140
80
80
76
90
123
137
126
87
78
114
131
116
107
140
99
69
128
134
112
69
103
80
138
138
142
69
78
80
110
112
69
91
64
87
130
94
52
86
114
69
138
121
69
80
69
117
113
88
56
69
107
76
175
101
140
128
106
174
136
67
89
160
164
110
128
80
76
111
79
101
78
112
89
80
116
85
156
80
127
154
134
140
80
101
78
123
78
80
127
109
119
117
175
80
133
104
113
160
75
136
163
72
139
119
69
117
59
185
78
111
69
101
80
120
69
121
66
106
128
119
115
128
138
136
101
89
110
94
118
148
175
99
80
107
87
81
103
132
106
84
96
54
80
136
109
98
66
54
118
72
138
101
120
175
69
107
169
120
118
101
115
145
69
69
74
119
99
87
121
92
120
80
136
119
80
128
93
102
90
107
91
155
155
104
129
140
43
80
119
85
79
151
69
89
138
117
120
147
78
134
87
119
151
156
127
119
102
112
59
96
130
104
80
134
104
103
164
146
78
136
89
121
164
67
136
138
80
119
93
96
101
87
80
128
69
111
106
156
154
107
120
69
157
80
140
115
80
155
181
130
78
100
136
100
107
87
89
112
175
121
88
175
80
139
109
112
148
76
152
94
120
107
78
72
118
134
94
124
88
151
114
110
125
80
120
119
80
119
80
113
109
136
80
82
80
72
100
80
114
141
84
89
140
91
94
69
101
93
175
106
76
178
128
110
131
110
52
121
54
94
117
109
52
113
80
69
155
72
136
87
90
107
137
80
197
107
125
109
106
107
101
175
159
80
146
91
129
69
175
88
131
119
63
78
69
129
99
136
83
69
56
156
121
117
102
99
76
78
87
143
74
87
87
67
80
76
104
91
69
72
104
94
69
120
72
197
78
43
74
148
130
112
80
96
99
109
100
119
80
112
78
126
78
175
119
104
80
163
80
132
93
104
119
118
78
119
80
145
127
87
101
156
106
80
155
78
112
54
164
109
75
110
72
113
128
78
92
130
106
163
124
93
136
76
132
91
69
147
142
80
126
148
101
89
121
117
143
56
134
120
102
105
78
129
81
69
76
175
75
119
154
80
169
154
110
115
94
56
81
175
89
69
132
80
119
120
93
87
80
112
94
112
157
87
80
104
131
102
76
96
151
83
154
87
123
94
140
156
80
110
80
119
102
181
119
74
156
91
116
96
88
163
156
128
150
88
110
69
87
145
113
93
78
104
87
80
101
96
96
151
120
110
87
87
160
89
104
175
107
80
107
111
110
141
76
154
130
112
132
80
128
66
115
123
69
92
69
120
114
80
76
80
80
101
134
154
80
87
138
76
87
125
66
95
89
112
67
81
106
118
133
88
136
94
119
136
89
87
95
104
153
78
85
154
102
80
121
197
94
76
154
89
119
87
87
131
175
131
80
113
69
80
76
131
80
91
131
89
169
99
85
121
175
101
117
74
104
109
74
112
134
89
89
140
76
122
71
183
89
69
107
169
163
120
95
78
94
134
143
69
74
80
94
102
129
82
78
64
119
54
119
80
73
69
80
80
114
117
112
74
128
137
166
175
80
119
109
119
136
117
111
110
85
100
146
80
80
119
89
99
80
134
69
87
83
88
78
83
78
209
91
80
128
94
69
69
91
109
154
142
98
78
93
107
131
104
80
71
94
80
113
91
113
80
88
151
99
131
103
107
117
154
96
128
138
100
107
94
78
74
96
134
69
80
100
83
175
101
110
111
89
115
140
87
128
78
103
133
100
99
140
104
100
82
119
85
88
91
91
103
80
80
94
76
107
76
78
134
120
108
134
128
69
88
137
133
59
137
118
94
80
89
147
144
101
69
69
124
107
79
119
107
80
78
107
73
119
79
128
99
90
128
120
175
78
78
78
155
156
117
120
99
69
110
94
96
91
69
129
87
185
80
72
137
104
119
104
128
101
67
122
87
136
80
93
69
82
111
101
78
149
154
149
99
99
152
103
110
104
197
147
80
89
140
89
174
177
110
87
121
54
83
158
141
107
76
147
99
97
118
87
116
142
93
128
197
114
163
146
76
128
87
87
131
128
109
122
96
87
77
134
106
85
54
88
197
126
136
80
69
80
134
120
69
103
175
154
131
127
118
83
127
122
96
80
109
67
76
78
136
199
87
107
80
104
94
91
87
80
136
78
131
87
92
115
114
102
121
88
147
69
163
137
175
69
127
127
146
136
128
69
76
97
78
87
125
80
76
128
152
87
99
76
113
80
131
99
148
130
87
156
72
79
92
99
149
99
74
81
154
156
76
72
145
54
83
91
91
69
115
93
69
72
99
129
113
107
107
118
88
119
96
52
87
68
88
93
78
69
149
96
69
104
107
76
75
93
80
120
89
109
123
121
78
123
185
88
150
112
99
156
76
110
64
52
96
92
67
164
87
95
88
87
85
90
141
118
131
146
93
89
91
98
96
117
143
91
99
113
99
97
129
110
106
120
80
109
163
137
113
91
87
152
67
76
101
104
93
132
133
158
80
87
78
144
122
160
89
99
88
109
143
127
144
88
99
103
136
69
69
99
78
107
127
69
134
80
154
128
87
76
106
98
157
107
118
128
104
94
76
88
148
111
160
80
80
66
89
69
79
80
96
146
110
63
78
94
121
86
176
96
115
75
107
69
69
136
175
76
98
80
109
87
94
90
69
107
119
76
128
100
56
56
89
145
92
148
131
100
105
111
117
100
88
69
168
111
76
145
87
69
76
80
87
89
80
131
119
80
140
78
118
122
104
98
197
109
106
80
113
69
143
138
147
90
155
76
67
93
113
80
107
80
133
87
113
69
80
96
105
90
127
88
128
122
112
147
94
155
134
87
69
93
99
94
76
109
76
69
156
107
131
123
87
78
109
151
104
134
87
93
71
109
87
109
121
76
110
69
90
175
119
112
109
79
119
69
113
90
101
175
131
118
104
107
138
100
127
78
101
76
131
146
134
110
126
100
154
172
154
118
112
197
80
117
137
76
91
131
110
69
100
99
140
72
78
134
101
76
72
174
79
80
115
80
119
150
106
67
78
174
134
102
69
91
80
128
87
110
94
112
164
78
151
118
87
69
197
114
69
94
69
131
80
137
69
80
109
99
83
88
112
128
126
103
87
119
118
140
131
52
117
80
140
106
140
103
163
69
76
106
117
134
132
99
121
119
101
113
119
90
107
88
183
154
87
151
120
129
78
145
121
129
119
154
91
118
79
107
113
98
80
107
80
120
80
130
88
66
78
106
80
87
151
129
89
69
133
103
80
87
134
105
80
76
130
109
114
120
112
80
119
80
76
93
144
119
134
78
150
127
112
121
175
126
96
43
128
89
109
104
120
152
72
121
104
123
85
76
175
119
105
118
154
81
87
78
128
96
88
104
90
124
96
129
119
111
101
156
110
78
81
80
110
107
128
122
118
94
128
96
58
124
142
134
131
91
80
110
80
80
93
76
137
160
106
76
105
80
113
74
138
75
69
175
156
78
156
88
56
113
118
131
109
109
117
131
80
69
106
107
111
175
69
72
163
80
80
128
69
93
185
121
88
117
93
87
97
85
151
107
78
144
76
104
109
119
113
78
148
80
137
88
197
118
93
78
109
93
89
104
124
138
78
80
80
121
155
146
102
104
80
89
113
89
107
131
123
76
109
117
117
106
145
69
87
106
145
175
175
112
136
93
80
80
94
78
94
119
201
121
104
100
80
80
92
81
95
80
120
78
97
88
123
80
66
141
112
133
112
88
78
145
113
43
163
72
138
145
74
109
72
88
74
87
111
76
96
174
143
156
69
80
130
137
87
80
115
94
80
134
87
101
89
87
132
201
154
110
110
109
94
137
120
151
151
136
121
142
132
85
115
107
93
76
142
155
145
112
112
56
112
146
150
151
108
99
139
87
109
175
109
96
76
122
91
76
128
175
79
69
154
175
136
156
123
87
128
83
140
93
80
117
88
78
69
101
134
80
104
69
146
78
134
156
136
140
80
114
54
101
80
80
56
97
88
134
136
144
130
134
106
69
140
84
99
74
165
107
96
94
154
137
148
69
112
89
147
154
94
136
90
109
136
128
87
80
76
140
121
88
112
85
119
78
76
69
119
52
145
87
106
109
72
146
135
87
76
80
112
80
127
112
78
76
147
69
109
87
120
110
80
133
126
112
155
91
87
99
112
181
101
197
211
80
123
119
106
119
80
95
131
72
58
128
146
129
91
106
109
156
80
107
98
120
121
156
87
119
181
110
138
80
76
69
130
78
88
87
143
146
80
72
156
88
80
92
104
78
147
83
107
94
120
69
144
74
140
96
80
155
91
73
145
122
80
112
83
79
54
136
107
124
118
80
69
151
137
78
74
69
114
120
96
69
128
71
78
87
69
82
120
96
125
69
150
119
154
76
113
82
119
147
130
110
112
145
104
89
96
94
94
129
76
120
87
83
56
69
119
96
104
80
80
80
175
100
144
113
80
109
157
113
78
157
127
102
114
175
205
78
155
120
87
76
136
89
80
88
93
66
109
89
131
119
157
126
80
107
87
199
134
69
76
91
106
54
109
93
140
102
117
102
80
136
109
134
91
78
137
69
99
111
88
74
78
164
119
110
95
87
94
69
94
80
91
87
93
94
89
183
91
119
63
175
101
69
78
139
97
121
87
101
150
155
112
78
103
76
80
143
79
82
120
109
80
96
114
72
110
120
155
113
134
78
80
78
99
131
73
94
94
108
80
140
156
151
80
147
92
110
87
154
112
136
126
106
115
136
88
86
117
134
80
93
83
134
80
80
119
72
137
140
104
109
69
52
88
76
69
131
175
104
197
69
78
136
140
128
110
117
98
120
69
122
99
69
117
120
127
83
80
93
91
88
52
175
107
100
80
98
93
87
85
109
89
107
151
107
80
69
156
123
106
79
103
199
76
96
81
175
129
127
76
102
69
114
98
52
79
94
80
136
146
83
75
131
89
104
120
138
80
78
175
89
76
124
66
43
175
83
131
76
154
134
136
80
69
68
76
172
112
132
87
88
120
80
128
80
143
153
119
124
78
120
131
87
69
99
78
76
59
118
107
127
110
102
54
134
54
129
164
91
110
77
111
119
76
154
80
91
161
121
94
148
80
175
78
137
110
69
69
101
119
122
54
80
111
123
56
80
91
92
111
93
120
88
80
102
115
91
130
97
69
88
87
87
89
54
87
101
59
136
119
72
106
115
175
87
80
134
69
52
90
88
72
128
175
54
109
94
83
109
106
91
87
159
136
87
85
69
103
151
69
85
78
87
156
107
164
91
89
80
77
119
145
72
107
140
69
93
144
121
80
94
87
76
110
112
52
119
107
119
137
154
78
102
98
109
148
80
131
80
72
68
80
76
109
75
96
151
80
106
99
91
107
69
93
82
56
109
87
78
89
87
94
96
87
78
110
96
118
133
134
106
106
80
87
96
119
120
128
80
187
146
90
89
80
146
174
112
125
134
52
137
111
92
133
80
94
120
80
102
89
140
96
107
78
76
123
76
96
104
69
80
140
145
120
54
131
201
110
89
96
155
78
119
106
83
137
80
91
76
87
121
100
69
136
156
113
175
91
76
117
109
134
80
76
112
100
131
113
69
76
183
121
136
164
80
201
80
109
106
113
93
175
71
87
175
111
111
87
74
128
154
103
119
120
157
143
116
141
69
69
87
110
112
94
161
69
115
107
155
165
64
60
74
152
112
88
80
119
95
69
89
133
136
104
87
132
145
99
140
147
91
112
96
69
162
140
78
119
43
104
149
72
119
131
99
93
163
69
151
80
94
100
89
91
120
165
115
131
121
59
80
109
87
107
80
109
69
116
76
117
109
102
155
76
121
69
131
79
106
90
104
112
90
91
152
87
115
87
76
110
76
96
128
93
78
78
119
119
89
107
132
83
69
174
118
99
80
119
99
76
130
78
113
113
115
80
99
127
107
69
58
104
109
134
80
78
130
154
113
131
96
72
126
99
107
119
80
111
95
156
122
136
83
78
154
128
80
91
126
74
69
93
85
76
103
91
134
78
83
72
87
95
114
155
128
83
76
115
80
80
79
87
89
87
109
99
69
76
66
120
136
101
71
113
76
73
99
87
113
132
175
148
83
120
145
162
78
128
117
136
120
117
66
88
121
88
82
80
80
94
101
107
106
138
76
78
76
89
69
90
119
128
94
80
88
197
109
87
93
113
69
67
128
118
89
103
104
94
123
74
159
72
126
106
124
97
96
155
104
76
69
99
112
76
78
136
96
83
107
94
72
78
104
132
94
69
87
94
155
69
117
109
136
146
129
145
80
69
69
69
124
135
67
113
87
80
115
85
102
119
175
150
151
129
52
112
97
112
85
134
69
123
95
107
107
104
140
95
80
85
87
119
106
128
72
112
130
104
136
117
80
101
128
117
76
69
104
154
89
124
104
94
197
118
56
103
110
110
52
161
109
76
69
121
159
143
71
87
88
125
109
128
140
155
87
80
87
80
110
119
146
99
125
104
128
124
143
117
113
99
127
80
137
87
69
82
109
80
69
164
84
80
120
64
140
102
80
78
120
76
69
148
110
88
163
106
183
76
123
119
69
80
119
107
112
109
79
80
175
88
100
156
89
69
83
144
125
80
134
94
76
80
78
104
175
156
119
104
82
76
119
69
69
98
98
129
88
66
119
80
102
74
93
69
104
122
69
78
76
109
83
87
68
120
119
80
80
87
155
120
109
69
118
88
147
111
78
155
151
107
140
156
96
106
78
174
114
72
164
100
133
69
123
107
80
124
120
99
69
93
163
80
89
151
93
107
199
175
99
104
69
134
54
131
87
154
128
131
112
131
155
153
128
88
98
175
101
118
107
99
87
134
94
130
99
99
99
174
52
110
93
78
54
71
137
131
119
76
87
130
95
74
69
75
103
69
94
103
78
69
94
102
78
80
171
106
89
100
133
90
104
155
106
109
75
119
110
131
94
99
69
125
89
134
154
96
121
106
88
123
142
80
113
145
105
107
69
102
69
165
175
165
71
127
95
195
140
113
143
145
88
109
175
120
93
80
140
74
148
80
94
147
114
88
126
120
107
89
113
80
137
76
132
133
69
80
175
78
121
131
64
123
96
121
155
76
87
129
143
126
69
197
102
69
76
159
87
113
80
94
145
69
87
144
78
85
181
152
88
110
98
98
146
102
156
83
87
120
90
93
80
175
80
93
106
146
99
78
103
94
81
121
69
120
131
87
156
91
136
120
145
80
119
87
151
122
80
52
99
87
112
80
69
111
112
80
131
80
119
89
78
119
120
99
113
69
96
90
69
115
90
87
113
142
56
69
110
154
155
119
109
100
96
86
125
109
151
106
80
163
143
101
92
155
110
118
74
100
69
87
155
108
78
134
120
82
120
80
78
92
114
109
87
69
113
94
87
132
117
57
123
98
121
43
96
104
99
101
99
127
76
135
80
119
112
128
109
151
91
113
76
107
153
76
78
78
137
75
54
69
132
78
197
103
121
103
69
74
110
74
106
54
145
99
56
145
123
80
164
120
108
127
130
119
99
175
98
109
69
56
154
160
154
88
95
109
52
69
115
66
69
111
87
101
120
89
75
124
91
69
54
124
80
110
201
117
118
107
119
175
146
104
80
111
74
91
87
69
118
87
69
134
154
80
137
89
112
126
88
128
123
109
150
69
80
120
69
87
99
69
131
101
71
124
77
181
142
175
99
91
145
90
144
78
156
121
109
126
93
109
80
83
154
100
156
101
197
119
159
121
78
136
69
118
122
131
109
141
119
52
43
99
128
166
112
114
119
103
85
119
69
119
113
79
80
137
128
124
96
175
87
87
142
154
76
134
163
142
100
80
119
88
117
106
162
110
151
121
144
69
80
88
125
94
131
103
98
88
145
119
74
115
122
122
143
111
87
151
104
91
80
75
73
119
69
120
128
135
69
67
141
87
120
64
119
100
87
154
156
104
145
80
121
80
128
88
128
114
75
76
112
113
78
118
146
80
151
136
104
72
80
128
83
140
156
175
143
197
83
107
87
123
69
145
92
88
140
107
107
163
80
94
163
119
151
120
121
112
163
96
76
100
154
187
87
119
94
120
87
155
91
112
91
107
80
82
109
107
73
107
72
123
69
155
69
80
106
145
80
69
100
91
156
175
72
185
131
118
175
156
96
69
69
117
142
78
80
69
111
90
69
155
83
80
140
102
113
69
122
155
143
128
119
69
143
99
152
147
69
136
175
106
128
78
52
69
121
131
120
145
112
92
156
76
119
160
126
69
128
141
76
111
151
80
69
69
145
68
144
94
131
121
119
197
80
89
104
54
127
120
54
134
96
120
80
145
130
69
159
136
120
126
154
117
88
83
119
69
120
102
118
151
74
166
104
132
85
175
126
66
119
88
80
112
69
87
80
122
76
117
69
80
122
119
89
119
69
83
88
99
104
155
121
154
93
110
128
107
108
171
80
80
77
88
142
80
117
99
82
80
120
43
103
120
80
102
101
128
94
140
107
79
131
101
175
117
151
115
137
127
99
109
110
106
101
140
94
128
93
117
120
110
109
76
137
89
109
85
89
119
144
102
86
87
106
143
136
69
136
99
67
69
89
119
89
152
90
151
78
126
87
79
128
127
119
106
123
116
85
80
87
88
118
139
80
133
88
100
134
140
151
156
89
174
104
80
80
114
120
66
80
56
136
107
120
76
69
69
106
80
115
80
85
76
69
119
72
140
69
140
69
69
94
119
93
88
89
154
136
80
95
71
104
124
94
115
109
126
87
60
127
100
100
121
112
126
110
104
112
118
138
91
87
113
87
82
89
70
69
151
72
80
76
155
80
110
99
119
152
144
56
101
106
147
119
78
80
136
76
96
111
87
156
94
80
87
134
110
69
155
80
76
80
110
89
122
109
133
134
100
96
154
87
142
80
134
89
104
109
197
163
124
87
129
112
121
71
96
98
119
87
112
117
88
130
69
110
104
78
147
94
76
131
140
111
144
138
87
102
78
76
154
100
107
87
88
121
147
119
154
96
144
87
54
94
160
131
97
106
143
146
69
118
87
154
134
136
73
113
88
112
110
104
99
147
72
80
121
104
87
140
101
72
103
115
128
136
155
109
136
69
101
93
134
101
109
124
164
85
89
74
137
88
134
80
87
107
94
76
120
101
136
163
154
129
80
197
82
128
147
145
176
93
175
110
74
117
93
98
54
133
150
120
155
175
117
144
110
93
103
122
87
76
118
100
78
128
148
80
80
99
78
102
90
95
76
146
136
76
104
117
109
99
102
89
93
124
124
122
96
115
76
116
106
119
80
76
87
87
107
69
78
107
107
100
100
137
109
137
99
93
152
82
80
107
142
136
69
80
136
128
98
87
118
52
104
69
175
68
71
104
142
121
104
100
101
52
90
100
143
112
110
110
104
164
171
113
76
109
115
107
155
100
69
88
99
120
79
119
140
107
101
144
157
56
110
54
183
133
96
87
69
107
100
144
87
63
80
121
101
89
99
185
103
69
136
72
107
155
131
85
121
78
69
119
76
80
94
91
154
110
86
115
131
117
69
94
128
69
75
78
143
156
104
80
107
77
83
85
124
137
175
156
74
54
147
76
78
78
111
94
109
110
78
99
83
80
87
98
80
175
128
110
97
69
110
78
115
80
94
90
87
118
154
119
154
110
107
87
80
133
141
52
111
128
120
91
110
59
72
104
137
118
165
109
132
197
106
82
87
134
80
80
94
87
119
113
115
131
131
152
156
93
69
94
114
128
91
113
151
78
128
102
132
111
113
100
56
112
133
78
113
110
142
80
154
120
156
69
154
89
158
127
156
82
151
69
146
78
78
91
87
87
87
73
87
117
94
74
113
80
129
107
120
123
94
123
154
80
134
75
80
87
119
43
119
115
119
163
94
112
88
87
131
107
104
163
99
128
148
78
88
134
107
96
83
66
87
109
69
69
128
56
104
107
128
80
72
80
175
134
74
119
175
95
152
154
91
91
76
163
106
83
80
63
128
96
98
147
87
118
125
78
107
80
158
110
121
115
156
162
88
74
69
76
116
113
78
101
80
72
121
88
89
132
152
100
100
88
106
187
94
128
118
147
154
109
80
111
149
156
118
136
93
76
96
76
99
111
155
80
140
88
99
111
140
128
143
113
113
78
76
99
80
156
123
119
134
91
162
54
119
69
119
154
147
131
121
80
120
54
70
123
199
69
78
119
85
80
74
120
78
93
109
94
88
82
88
117
91
94
93
111
91
175
72
99
87
69
60
79
128
142
96
96
128
151
119
93
93
76
87
117
89
197
85
80
80
80
76
117
104
114
99
87
150
109
106
110
103
110
69
69
110
111
136
104
103
78
120
96
136
175
89
142
98
74
80
78
107
143
64
122
102
144
163
69
129
80
104
143
87
101
140
107
119
154
69
134
110
69
80
137
87
156
88
109
93
69
131
120
155
112
117
80
106
87
88
78
80
136
106
89
80
96
99
128
115
80
54
166
160
154
144
67
144
127
54
128
69
107
69
69
113
115
80
76
126
86
162
143
96
146
169
139
94
72
121
77
119
110
126
82
118
69
107
152
164
175
118
92
78
112
117
197
87
72
54
124
69
121
102
197
131
157
83
112
106
80
128
106
120
74
113
89
136
147
69
115
112
80
54
102
90
101
151
128
104
101
54
69
139
99
107
56
156
104
144
131
155
120
152
154
145
88
88
127
106
54
175
69
197
80
83
124
87
89
80
69
136
78
120
99
101
123
123
119
103
87
131
69
72
132
115
175
151
89
78
121
98
115
155
197
68
88
152
80
80
154
78
117
91
104
80
134
119
76
131
69
143
118
72
92
106
134
78
74
88
102
120
108
78
104
118
109
87
109
120
117
116
119
97
107
89
143
127
76
88
69
107
88
137
151
89
99
104
131
119
174
88
131
124
91
107
96
89
114
120
78
109
93
131
80
147
149
128
66
79
87
119
197
93
109
128
69
80
119
161
99
100
99
107
69
106
197
85
87
156
89
87
93
156
92
94
117
78
80
111
140
59
76
134
124
94
98
121
126
106
80
110
120
115
107
80
111
139
102
120
115
52
110
155
162
79
121
131
83
104
69
140
135
119
101
106
148
83
80
107
158
115
148
78
74
174
128
144
69
87
89
76
94
80
78
117
139
91
107
121
163
76
130
80
69
80
76
130
80
110
140
129
87
78
88
100
87
69
109
87
114
113
140
80
76
79
101
132
90
113
134
98
71
109
107
66
112
78
80
99
123
143
119
78
78
84
43
119
78
78
104
80
110
114
93
80
87
80
54
107
113
106
109
164
156
131
99
92
93
102
88
76
151
85
80
83
119
87
76
117
93
133
71
69
80
75
99
102
82
130
99
120
76
145
156
80
87
87
80
134
87
91
118
101
87
80
134
172
124
101
118
87
120
121
145
91
87
124
93
80
110
89
80
129
104
96
104
112
114
101
69
144
69
113
106
83
87
69
129
164
110
99
128
120
131
120
154
109
96
88
122
120
131
109
102
76
201
75
175
69
88
130
156
72
107
106
199
183
117
110
140
76
140
98
119
109
90
112
120
85
141
80
137
155
69
175
120
76
94
107
99
80
127
69
160
137
131
109
88
175
156
136
101
183
107
73
112
115
152
152
107
88
100
80
72
101
98
80
162
89
154
134
78
125
95
113
69
78
102
72
94
125
83
72
106
56
93
69
112
85
88
97
87
88
67
152
120
83
109
80
120
114
113
81
69
117
95
109
76
84
117
131
99
69
128
117
143
145
72
117
107
69
126
127
128
76
140
96
117
162
104
145
78
99
80
94
78
87
76
138
119
138
136
130
83
201
160
110
134
109
113
69
93
93
69
87
119
120
78
80
96
43
56
140
126
107
112
94
166
119
54
69
163
85
106
123
69
69
113
130
121
201
107
119
128
119
67
87
175
87
144
85
93
69
98
72
115
144
91
104
165
88
96
125
76
137
112
74
107
78
99
96
78
113
76
72
115
130
137
118
131
78
80
71
103
109
56
72
105
104
101
69
69
137
69
80
100
80
163
119
134
107
113
88
134
103
87
124
92
80
129
145
163
103
85
154
115
91
113
98
72
185
75
131
126
110
107
132
74
99
87
80
128
160
135
96
119
87
88
94
131
78
76
80
143
125
81
185
175
106
80
132
100
115
80
94
112
149
80
156
107
78
164
87
119
154
89
76
95
80
114
156
105
76
80
88
76
80
157
123
110
103
72
80
76
108
115
80
123
80
108
134
169
114
134
154
100
126
119
175
119
93
80
92
76
104
74
94
107
80
72
175
89
121
87
69
81
93
115
121
107
80
151
75
78
145
72
80
120
124
112
178
69
131
78
107
112
138
83
69
102
100
134
96
88
107
140
92
102
69
118
154
80
123
98
96
128
125
78
56
88
175
131
106
175
78
140
151
78
134
110
161
76
80
119
119
131
117
108
111
117
140
128
153
76
112
175
126
112
136
128
87
151
69
78
93
166
114
131
74
106
112
175
80
176
146
143
80
76
99
88
85
80
157
101
78
111
70
85
104
73
136
128
161
87
132
154
96
122
102
77
80
109
80
80
154
134
99
152
136
128
96
87
99
114
151
80
175
78
130
75
175
66
145
90
134
128
154
133
69
117
112
137
76
94
99
119
133
109
104
99
125
78
129
63
101
69
112
132
80
72
115
64
89
98
83
67
113
151
134
83
94
78
113
115
119
80
82
77
93
120
151
88
91
69
107
69
134
101
72
83
92
145
110
69
114
131
106
112
111
101
85
104
80
148
86
104
43
62
83
119
79
104
85
76
124
107
87
87
106
110
119
94
126
80
143
94
111
64
60
163
102
78
87
110
103
109
113
74
80
93
100
92
67
80
76
145
72
146
88
60
76
175
96
80
174
69
43
175
74
59
113
175
75
80
120
91
156
151
119
128
92
132
118
113
87
110
69
118
99
101
87
56
78
127
131
119
80
80
76
76
92
89
144
110
69
143
132
174
107
91
147
80
74
98
76
102
106
144
133
54
128
56
88
80
113
136
96
175
144
80
101
127
69
54
99
151
160
136
80
80
127
89
117
94
78
155
100
133
94
119
143
87
120
106
120
80
69
111
126
98
127
104
119
120
88
69
69
80
87
145
69
121
145
80
92
80
69
136
89
122
99
78
78
80
88
80
78
109
69
119
151
111
174
67
134
76
101
107
112
121
154
80
84
102
122
107
115
69
89
101
128
131
99
72
120
96
96
87
87
130
121
127
99
151
78
104
93
104
107
121
74
145
69
87
146
91
119
89
80
128
113
119
107
94
137
143
101
78
76
80
137
88
110
89
119
89
126
124
134
133
197
142
78
102
95
99
80
69
108
69
110
87
149
91
76
145
69
92
104
80
119
96
91
78
69
76
111
101
69
120
69
98
150
144
132
76
154
123
99
78
136
161
78
105
80
99
72
82
107
80
110
140
146
154
80
88
69
175
128
153
79
138
101
80
112
175
78
162
128
187
113
72
131
101
69
197
91
157
88
80
69
99
89
175
157
110
80
113
87
104
76
80
154
104
148
163
117
121
136
99
76
52
80
87
197
95
112
104
83
145
89
104
72
134
80
80
145
124
154
130
121
102
136
136
91
124
117
108
80
87
91
93
80
197
141
90
69
76
87
96
76
69
85
87
175
175
104
80
69
69
130
88
107
72
120
138
169
87
87
91
93
91
99
148
72
95
144
128
69
131
113
138
69
113
131
140
100
176
102
121
137
112
145
113
130
78
113
69
120
163
109
164
56
163
94
72
69
98
80
126
107
120
80
147
113
56
154
93
69
120
69
121
118
109
89
164
103
110
93
113
99
107
109
108
136
69
80
104
146
160
106
78
80
117
109
115
78
147
106
99
43
95
152
81
115
154
87
69
103
119
69
79
120
137
76
106
117
144
127
106
73
66
121
107
183
119
134
147
120
91
146
94
128
80
80
110
120
80
69
69
117
99
117
109
113
76
134
69
83
174
108
99
127
128
164
112
110
119
78
89
128
199
119
109
78
72
69
109
80
80
94
98
80
177
123
146
126
59
112
67
69
140
113
89
87
69
112
109
197
90
106
89
156
128
91
131
165
121
183
112
90
98
110
145
76
151
95
76
80
116
129
107
78
69
113
119
78
80
126
82
73
89
129
112
88
115
79
107
78
107
127
106
87
140
72
99
104
110
79
134
106
119
94
80
140
127
76
201
107
91
67
147
88
163
54
76
119
76
69
128
87
129
69
91
121
209
118
109
147
98
148
72
69
80
110
101
78
96
117
150
140
146
79
69
96
136
88
151
110
109
83
103
80
91
123
80
110
69
112
154
127
80
154
136
119
104
111
78
87
69
72
140
109
76
163
109
115
91
103
69
138
111
100
78
145
100
136
157
154
96
140
69
80
91
117
160
121
120
141
80
128
100
94
136
128
133
147
72
100
144
74
145
156
99
86
89
147
123
113
137
104
201
109
115
88
109
134
142
119
117
106
117
163
80
128
80
52
152
91
112
54
76
119
109
104
107
104
69
78
76
94
103
80
125
102
73
93
163
110
175
74
128
80
119
76
89
144
72
103
151
78
56
129
71
72
72
69
175
87
121
109
133
99
197
80
113
119
121
125
87
96
78
88
52
87
127
183
69
124
134
199
118
78
80
175
133
71
87
117
83
54
120
109
119
78
76
75
87
69
69
89
142
110
152
128
150
109
107
140
80
93
69
113
78
122
76
112
121
76
119
99
69
117
142
119
115
87
113
175
90
89
78
175
78
150
117
98
89
78
80
175
126
199
110
69
115
140
89
155
69
111
111
88
110
80
123
119
114
120
80
78
76
69
119
100
91
87
106
119
117
91
69
110
119
89
87
134
126
80
69
88
117
114
120
78
136
144
79
101
97
91
80
87
134
69
131
113
69
69
146
128
113
72
78
87
80
72
119
149
80
78
78
121
90
76
106
98
69
104
69
89
117
113
80
114
93
92
80
131
99
112
112
92
98
148
155
111
117
104
107
175
181
76
121
131
78
56
95
69
118
123
69
95
78
110
76
121
69
80
80
175
102
113
140
140
101
128
136
107
149
80
151
134
174
197
121
100
69
69
154
56
131
128
156
118
80
89
119
94
128
106
142
87
104
169
153
89
88
80
80
130
106
56
93
146
169
128
175
137
78
85
71
134
118
69
115
107
78
79
144
160
101
197
76
78
69
120
93
148
134
80
120
120
88
118
76
99
136
109
152
120
140
110
94
69
94
110
104
107
105
80
134
88
175
43
119
99
91
80
76
69
154
88
175
104
104
88
80
88
120
83
132
149
80
169
80
87
80
115
112
113
131
88
86
73
79
106
107
140
56
119
145
85
91
72
80
78
87
66
93
125
166
80
163
151
80
120
110
125
102
120
71
99
104
99
56
197
118
118
154
101
195
111
120
69
144
175
142
87
78
134
89
106
89
80
78
126
131
136
106
69
110
88
80
87
175
89
136
119
78
99
100
102
120
107
185
107
136
152
156
134
118
106
146
88
75
105
119
76
119
109
76
78
88
78
143
69
164
91
117
175
116
107
80
78
101
76
89
80
74
119
113
69
119
107
149
89
114
175
88
93
134
69
98
115
69
107
89
127
76
114
80
99
77
80
134
86
119
74
134
108
107
88
80
143
140
118
155
104
119
118
183
93
119
76
80
80
118
69
131
101
159
119
69
143
104
140
107
82
89
172
151
112
146
74
87
119
93
107
100
147
76
113
125
127
93
130
114
80
71
152
69
117
151
80
112
123
102
121
88
93
164
80
93
76
110
117
79
128
137
80
109
69
94
94
88
76
78
174
156
109
77
104
107
80
80
175
107
94
127
175
152
131
134
129
121
175
123
124
118
78
101
106
175
76
131
175
78
89
87
96
88
142
120
128
106
122
111
69
137
80
99
147
87
100
165
76
134
83
89
107
67
74
131
151
99
126
144
80
109
109
120
76
151
118
109
96
111
117
120
96
139
80
80
119
175
112
122
117
90
110
175
131
69
136
93
112
102
88
164
118
72
100
162
119
146
87
80
109
154
80
154
106
100
151
72
58
98
140
80
140
118
80
112
96
154
100
101
137
91
93
69
128
94
69
99
134
106
104
80
111
78
87
107
87
117
102
152
101
114
107
182
74
150
94
174
72
151
141
86
69
155
90
161
109
117
90
100
175
54
95
69
129
77
140
87
87
112
110
87
156
74
110
160
80
108
111
87
147
122
183
80
72
143
120
88
94
80
99
93
131
106
136
120
112
131
154
136
184
157
121
133
99
107
78
99
69
117
121
109
84
109
121
117
140
102
97
72
107
119
119
131
134
127
117
113
111
88
81
78
109
98
110
134
52
112
56
94
99
88
72
114
71
99
69
111
122
134
136
175
98
107
74
145
134
52
121
111
111
109
112
72
94
94
134
91
78
119
136
80
112
156
136
69
89
127
96
117
99
86
113
87
89
113
69
95
129
140
83
71
69
80
56
56
91
119
110
106
108
115
80
98
117
88
69
152
96
99
109
113
149
69
132
88
136
107
98
128
174
119
94
71
87
56
102
115
120
91
87
82
78
137
124
79
110
119
123
164
80
101
133
130
130
54
140
69
149
118
123
78
134
64
87
151
97
140
151
130
163
78
118
92
80
76
78
118
69
80
92
78
102
77
90
112
88
111
80
127
78
124
69
76
87
95
101
104
80
107
66
175
80
127
143
109
136
66
76
114
81
112
80
128
78
132
119
127
74
107
145
79
130
87
94
175
113
164
103
119
115
113
120
99
78
133
159
80
74
78
87
78
78
136
107
131
197
90
156
136
123
76
101
89
158
160
107
127
107
80
123
104
149
104
131
145
119
104
154
80
127
91
113
113
163
127
96
76
69
66
74
113
92
80
119
78
87
93
69
78
63
185
132
107
90
78
148
175
160
89
133
83
128
146
119
100
121
124
95
78
87
107
96
131
175
128
78
128
69
164
95
85
129
94
133
156
85
125
113
101
112
102
120
115
113
119
69
114
145
119
93
78
87
74
87
99
154
103
80
84
154
69
90
112
88
78
78
175
88
72
119
146
85
155
80
154
131
119
76
113
107
76
78
78
97
80
119
122
148
80
87
112
120
113
109
153
110
94
67
111
127
88
117
131
127
109
80
93
72
78
78
149
74
74
100
149
100
120
80
89
83
97
96
119
106
75
175
115
87
107
151
107
76
98
110
127
54
107
119
80
100
76
102
71
80
156
80
88
104
119
100
96
119
78
104
90
128
87
86
140
91
131
111
69
137
101
156
118
78
87
123
80
201
91
96
80
112
141
127
66
89
114
143
174
103
69
103
86
80
109
69
87
99
69
129
127
87
118
130
60
101
87
80
135
121
88
118
199
87
110
96
136
78
115
77
80
104
154
133
91
131
78
82
151
175
78
96
137
87
108
72
117
93
113
131
117
78
119
89
128
150
128
109
88
175
119
119
69
90
69
94
87
119
121
124
87
103
60
124
132
69
89
86
97
123
80
140
94
104
80
69
136
133
78
121
93
151
72
85
117
80
111
136
69
103
89
101
143
199
79
107
120
128
80
85
102
107
104
157
113
84
78
134
110
119
111
140
136
78
138
77
155
89
119
111
52
117
134
120
76
121
56
83
128
143
113
157
106
94
107
80
113
80
91
89
154
174
119
91
110
117
91
156
91
69
136
52
119
126
107
110
69
152
107
114
120
101
89
66
72
87
131
100
109
187
124
94
104
120
165
69
80
85
102
54
96
104
69
154
74
117
107
134
78
145
87
118
143
133
87
52
109
80
117
126
76
118
109
94
108
174
90
131
52
155
78
137
149
52
99
87
80
136
76
160
163
92
111
131
110
76
69
102
96
197
113
78
111
134
94
64
93
174
151
103
69
128
107
113
140
104
136
77
132
119
104
89
154
134
54
160
96
127
125
90
106
110
110
111
127
87
87
134
117
117
88
121
89
109
110
183
100
140
138
79
80
87
87
113
72
104
52
128
155
91
69
119
87
87
148
107
127
91
120
80
128
103
96
87
172
103
99
105
123
99
76
80
96
99
130
87
128
154
80
110
128
155
114
129
129
106
131
121
87
134
111
119
112
117
102
125
120
85
113
80
122
78
76
74
154
93
151
107
101
124
120
156
87
120
127
80
78
78
119
87
89
111
102
140
131
93
94
87
107
113
89
132
89
93
160
96
99
108
89
119
74
109
140
89
96
139
117
76
98
155
87
133
69
135
134
80
175
101
120
80
103
109
114
120
128
128
107
87
148
72
175
129
132
87
94
87
84
80
74
98
76
80
175
80
113
94
104
87
126
155
155
142
102
76
80
137
175
104
99
134
72
106
79
159
69
80
106
111
78
174
109
155
164
150
88
151
99
115
72
67
80
113
131
110
95
80
102
110
94
78
199
64
87
109
63
126
197
120
175
153
69
105
94
128
88
147
143
87
69
113
146
99
76
69
89
72
145
101
163
164
112
76
113
87
156
151
107
147
80
87
145
73
64
78
101
110
87
93
100
109
175
66
87
78
76
69
69
127
94
185
139
76
80
109
101
87
80
76
124
112
132
99
95
152
87
107
109
131
80
138
76
100
116
155
110
151
109
155
130
78
156
104
80
144
174
119
89
107
78
89
112
91
87
175
66
76
101
154
129
112
128
117
119
96
99
69
134
88
124
101
93
96
112
124
103
95
143
131
127
127
91
89
102
126
120
96
69
80
125
155
76
80
79
131
80
76
124
99
101
87
80
63
119
175
88
140
111
120
107
144
140
106
140
120
64
109
76
78
134
144
80
143
181
119
104
100
74
107
106
87
119
143
80
143
99
74
94
83
181
76
90
69
110
110
56
119
75
78
126
131
89
89
102
87
127
72
80
91
123
98
136
121
112
107
94
111
148
119
136
96
69
117
110
69
152
88
106
110
94
109
80
76
106
92
121
104
132
69
91
96
109
112
155
107
119
72
129
94
145
99
156
113
111
139
80
169
95
109
110
125
134
94
133
69
72
69
80
137
98
91
151
121
64
107
140
163
134
118
76
128
87
125
126
175
127
104
92
91
113
87
123
145
88
82
113
88
148
85
164
89
123
78
113
87
152
100
112
76
89
69
87
107
144
163
109
87
156
102
72
111
134
154
76
87
136
80
69
69
113
134
112
87
134
80
134
99
89
80
152
114
94
97
108
56
69
80
88
120
140
151
106
148
140
158
107
91
106
78
114
120
99
130
109
93
89
80
129
151
80
128
80
140
129
110
80
93
115
112
80
113
106
121
101
43
75
113
118
107
128
137
90
136
107
140
119
143
154
88
120
134
80
121
119
76
80
130
76
154
148
54
175
87
102
78
80
209
133
114
120
128
137
69
99
107
148
115
160
121
91
109
175
69
109
122
52
155
108
107
107
87
99
76
154
163
110
175
174
80
101
82
80
102
78
117
69
131
78
123
83
69
109
116
107
95
106
89
72
115
102
93
128
145
120
80
103
140
87
137
92
76
120
76
87
120
109
69
197
103
91
109
80
148
134
109
69
107
175
99
78
52
117
78
136
125
92
101
87
110
76
84
156
117
76
101
99
96
144
128
87
117
121
128
112
58
75
111
151
122
76
119
124
120
136
132
89
197
80
72
69
151
104
113
117
101
72
87
153
93
81
85
107
87
96
123
56
131
88
163
119
111
96
128
89
104
101
89
78
121
87
109
80
93
107
80
106
69
104
87
91
129
69
146
116
112
131
131
76
69
106
100
78
119
117
80
80
120
87
78
127
89
121
119
79
93
74
119
87
78
97
78
88
79
109
110
101
175
104
80
136
56
113
120
69
80
80
140
67
175
134
197
119
100
80
95
130
119
94
119
87
174
99
140
128
175
102
117
91
154
123
110
56
95
87
117
76
74
118
110
91
148
101
112
115
89
120
88
115
80
136
78
117
127
113
122
148
89
80
76
158
107
104
76
60
87
104
80
101
131
98
78
120
69
139
127
85
104
90
154
69
92
138
164
88
199
88
155
126
103
109
54
76
156
104
101
69
174
80
175
91
56
113
163
119
93
113
78
69
109
80
101
80
80
112
89
110
54
78
78
100
143
120
82
99
138
101
112
89
90
131
99
175
80
139
122
111
119
128
131
131
104
54
69
88
122
80
142
69
138
128
43
107
69
127
107
94
136
99
124
140
127
88
102
154
88
74
80
107
80
101
110
69
88
69
120
78
99
113
94
106
117
67
85
76
117
80
102
119
80
72
87
88
154
126
123
107
117
155
122
164
74
148
156
91
113
102
94
71
87
98
163
156
140
113
52
160
113
117
151
68
98
91
134
94
91
110
105
63
80
128
107
107
78
101
145
96
104
89
80
128
99
96
134
80
87
154
88
101
102
120
67
109
112
106
99
130
115
103
136
78
156
76
119
109
116
80
151
82
135
175
120
87
72
87
78
69
130
80
107
102
154
155
151
109
87
124
128
101
52
86
175
98
117
96
109
119
175
156
107
87
93
136
80
154
148
117
76
93
74
130
119
144
90
80
127
151
118
109
102
96
99
75
96
160
80
99
83
80
80
103
76
80
166
112
69
154
120
69
124
52
164
94
112
128
100
99
83
93
91
136
176
163
80
93
69
114
107
72
196
94
130
99
156
80
148
101
106
80
141
87
87
197
72
69
107
74
113
155
78
117
119
104
87
201
134
199
69
87
131
72
118
78
113
110
126
87
121
94
80
80
80
106
80
69
87
88
106
76
113
76
127
72
78
99
82
134
87
76
101
87
74
131
78
104
79
140
87
148
112
112
87
128
175
69
120
181
106
107
131
119
69
114
131
100
98
109
143
76
78
92
78
119
113
107
80
76
69
174
128
126
143
69
141
121
87
117
69
117
87
94
119
54
89
56
209
117
134
94
54
87
131
89
123
183
123
99
89
143
110
102
117
76
87
113
120
104
80
119
71
109
80
76
69
69
79
136
119
69
80
68
126
134
140
69
97
91
69
199
76
111
197
80
136
129
164
104
69
117
116
80
155
111
99
83
140
69
119
96
145
151
133
69
76
157
197
104
96
80
93
102
87
147
69
78
88
106
93
118
130
120
120
120
120
136
94
100
100
197
87
83
134
140
133
154
103
121
91
118
146
54
69
87
111
120
76
98
69
147
134
80
162
126
82
174
109
76
119
109
109
109
156
79
89
94
96
98
111
134
115
88
129
110
89
56
175
107
90
134
152
102
73
111
106
88
126
78
111
109
99
175
67
113
124
89
95
88
119
80
69
102
110
87
140
115
113
107
109
88
124
99
93
113
154
87
89
110
92
112
89
115
143
72
72
114
76
106
106
69
140
175
146
89
111
128
110
89
69
156
78
113
154
87
159
136
156
119
134
76
83
185
89
87
143
117
103
123
154
123
69
54
72
159
113
80
69
133
82
95
151
127
118
154
111
134
123
78
80
106
98
90
78
52
122
129
93
122
91
117
115
107
52
110
197
80
69
101
89
109
120
130
136
119
91
78
119
69
175
175
81
115
154
89
87
117
92
131
106
106
101
110
128
88
115
121
119
98
111
128
154
103
87
163
107
140
152
54
122
80
143
130
100
154
74
104
123
83
91
96
120
113
131
54
139
93
88
85
76
78
94
80
175
80
96
78
199
109
131
80
99
43
120
106
151
106
82
127
128
132
106
117
117
139
80
76
146
129
102
106
120
80
107
87
72
80
76
156
75
110
109
113
74
93
72
87
69
89
69
110
121
78
88
106
149
99
69
101
197
197
106
140
119
69
119
111
90
107
80
74
88
111
76
91
87
100
87
131
128
78
80
113
88
80
122
91
89
96
106
136
126
87
57
76
160
89
91
197
142
99
131
80
113
99
131
91
120
178
128
78
107
154
80
80
98
110
131
80
80
154
66
83
148
66
117
85
121
154
69
91
107
197
120
69
87
84
104
120
130
69
87
80
119
124
81
175
120
93
76
185
129
121
175
126
140
123
136
87
43
136
149
136
113
119
110
72
110
69
162
133
136
76
128
99
128
120
87
118
70
87
69
56
175
99
80
147
101
99
80
120
154
175
64
166
80
149
128
118
93
80
96
149
74
80
149
128
80
129
110
78
80
91
132
124
136
154
111
110
80
108
88
109
134
111
89
88
134
156
95
136
96
78
93
110
145
96
87
56
109
119
109
119
76
54
110
131
76
133
107
85
107
80
115
111
129
78
84
157
107
91
69
113
110
131
64
74
74
175
69
89
119
127
76
96
127
76
121
113
76
127
121
99
175
87
69
128
133
130
93
80
99
74
137
130
91
197
94
92
78
154
94
107
134
80
110
87
131
120
169
99
155
80
89
78
117
125
54
120
87
95
99
123
67
119
80
121
128
104
107
83
146
175
127
104
74
80
111
88
117
87
120
111
69
101
107
110
119
99
80
87
106
135
76
88
72
110
105
69
114
107
72
137
87
109
112
134
73
122
69
80
121
118
106
110
69
78
119
90
127
106
89
115
66
104
80
80
126
119
125
74
75
73
121
113
138
120
134
155
146
89
80
93
109
80
110
78
96
76
122
197
112
114
128
128
154
127
78
94
76
88
97
110
78
113
127
62
107
127
99
131
78
154
128
76
88
81
123
87
148
128
63
72
80
121
122
140
149
78
90
164
96
99
127
117
113
91
72
69
121
140
121
76
109
104
93
110
114
108
96
88
143
107
89
58
99
111
175
67
79
81
88
76
96
109
110
106
144
106
104
91
129
72
133
106
154
106
128
72
128
69
67
136
123
112
99
117
76
56
101
140
114
83
72
80
136
134
83
106
150
138
136
113
113
136
120
80
101
94
94
94
88
140
112
66
136
112
172
69
123
134
69
80
94
117
131
119
80
76
132
80
175
69
126
78
87
80
134
150
80
128
128
113
88
66
89
80
69
137
88
118
96
114
80
104
69
80
69
132
102
128
78
129
80
72
130
69
69
145
54
123
76
132
98
80
109
81
76
72
72
174
76
87
72
56
131
102
80
113
131
107
91
118
80
143
80
143
119
128
132
131
117
139
118
87
107
161
89
110
155
74
175
104
104
122
85
99
101
69
121
109
87
101
103
78
197
134
127
124
137
89
156
75
175
76
183
136
112
87
124
72
80
154
110
175
69
87
80
154
145
104
94
151
91
132
148
134
104
163
93
91
146
94
120
145
94
88
58
76
118
140
181
76
137
88
99
104
117
88
127
125
112
69
69
107
80
87
99
113
177
103
110
88
80
91
103
106
209
154
80
69
120
128
76
121
132
78
103
128
67
89
69
145
78
52
140
80
155
87
94
87
112
69
94
89
112
136
130
137
104
120
78
145
78
121
90
119
103
85
111
92
119
128
95
110
112
127
109
76
91
104
175
78
121
136
141
119
89
92
78
88
87
94
134
131
128
88
85
125
86
112
117
88
72
80
151
80
103
54
110
78
120
93
123
121
111
80
120
115
88
69
115
96
127
94
78
114
69
80
87
80
76
114
118
69
101
143
132
117
154
87
107
76
110
121
71
123
111
80
87
74
80
94
80
108
52
114
96
69
96
104
76
104
88
69
80
110
143
82
69
134
131
128
80
107
110
112
69
80
108
112
69
130
140
80
143
71
88
91
136
74
144
69
80
69
119
76
71
117
104
100
69
104
107
107
99
94
69
117
96
123
100
117
106
89
142
80
106
110
134
80
154
112
134
156
120
95
126
72
101
80
102
69
76
102
109
131
104
92
90
106
94
154
80
136
87
103
115
109
87
80
145
126
145
125
92
107
80
124
104
76
138
154
120
80
142
88
94
98
95
106
144
78
114
197
112
109
69
140
96
121
110
101
154
78
119
94
80
136
140
169
131
115
117
94
151
80
140
94
154
109
128
131
109
105
80
52
76
80
133
105
140
95
120
87
94
80
59
69
87
104
125
118
101
80
169
145
104
86
101
106
103
76
155
72
175
87
156
89
136
93
69
112
107
145
98
101
154
140
99
122
154
69
99
106
91
128
72
94
125
136
78
69
140
76
94
119
134
56
87
72
175
152
80
94
78
124
117
175
120
117
92
117
120
147
155
145
119
69
174
178
183
69
124
78
69
76
143
154
80
140
119
88
136
101
175
119
75
108
106
69
99
120
110
80
110
119
114
109
69
127
197
149
80
149
120
112
140
69
119
80
119
69
69
96
80
128
74
110
124
94
107
89
56
134
76
52
80
128
120
88
110
89
87
140
113
80
160
72
162
80
121
136
119
80
99
146
99
80
112
99
111
88
136
78
66
78
91
101
74
115
134
89
94
119
69
83
94
104
175
174
148
87
93
140
144
113
109
109
95
80
117
138
106
74
52
100
72
148
144
103
69
78
71
109
122
94
121
119
119
112
96
104
91
97
89
175
164
121
118
76
143
119
155
118
91
154
142
87
93
96
120
155
93
101
113
108
121
109
128
85
87
80
87
155
89
69
106
119
107
127
78
90
154
107
99
78
97
154
152
101
136
136
94
121
157
91
71
72
130
93
92
110
139
143
87
128
88
106
109
130
110
133
104
120
89
69
117
75
129
80
148
115
127
96
138
69
69
87
88
137
102
125
94
69
82
89
110
197
92
69
104
89
163
128
114
128
118
72
80
119
128
104
112
140
89
123
80
87
136
80
80
99
129
80
154
137
109
122
92
99
125
107
131
129
69
121
90
112
175
88
115
119
113
80
56
106
109
69
120
69
128
80
110
100
140
140
120
101
67
126
134
163
106
123
80
89
110
129
102
110
74
140
101
154
87
125
175
102
153
69
112
104
69
90
87
80
87
99
78
88
113
88
119
99
106
136
64
68
89
89
155
93
78
128
87
136
87
183
131
87
88
96
87
135
130
77
93
80
78
130
91
126
99
107
119
85
109
78
69
73
69
74
102
122
85
119
78
87
121
117
126
129
112
87
69
133
134
136
140
129
183
106
151
80
117
112
157
99
175
134
120
113
175
154
107
151
87
140
134
131
100
155
63
119
67
87
151
100
127
130
97
78
151
156
128
151
120
119
69
120
134
117
80
106
96
124
119
119
101
89
78
153
119
175
56
76
155
109
76
69
101
115
94
162
100
128
115
72
102
156
83
107
67
199
85
115
128
89
149
119
80
88
111
163
130
94
110
78
72
104
99
111
87
99
119
99
114
110
155
126
119
128
80
78
101
69
85
69
102
148
69
101
107
111
118
129
80
122
76
88
159
80
99
119
120
104
136
94
94
119
80
175
90
90
96
76
154
76
99
69
121
79
103
113
140
89
69
80
78
72
119
171
113
128
80
100
136
69
118
128
128
77
152
120
148
106
116
56
109
87
96
119
52
78
127
112
112
149
69
104
69
154
96
119
118
93
91
130
133
175
119
78
104
101
164
54
124
100
99
164
107
109
80
115
87
72
67
136
69
118
131
148
136
76
119
115
76
138
56
75
69
140
109
78
99
94
87
88
102
69
80
112
87
80
109
76
88
131
80
95
132
119
116
132
154
96
78
131
54
99
106
112
43
80
104
108
66
80
175
181
107
175
91
131
111
101
80
162
80
107
125
104
91
118
109
80
76
109
104
87
120
78
95
121
76
120
119
175
138
172
127
131
110
154
146
149
130
90
104
93
121
96
131
107
69
201
99
76
156
137
110
89
113
85
147
129
136
130
106
119
181
121
72
114
90
175
164
89
109
72
101
155
100
60
140
145
102
87
119
136
78
80
145
148
134
137
100
89
137
154
87
59
106
128
107
101
87
108
76
136
80
137
76
80
76
114
175
181
87
120
87
116
111
151
103
89
87
80
141
166
80
104
78
96
107
80
128
102
119
100
110
109
94
113
101
80
80
102
92
119
134
105
120
80
80
107
102
148
76
69
59
69
90
80
151
67
76
69
104
140
94
83
151
99
76
104
101
80
104
107
78
90
160
69
91
87
106
121
78
130
76
104
69
117
87
93
72
110
88
187
88
119
111
87
78
54
99
69
104
80
109
171
81
87
113
139
93
136
85
138
88
88
69
99
52
80
199
78
80
175
132
88
108
160
78
128
80
125
110
76
172
109
128
116
85
80
109
85
75
91
132
76
87
80
134
69
69
72
112
87
125
140
157
78
134
140
119
74
87
104
99
75
110
131
99
99
103
104
78
76
74
95
82
127
69
175
120
107
133
94
91
108
87
111
91
120
80
119
131
83
156
76
154
144
154
87
112
78
128
107
78
76
145
110
92
91
119
175
89
143
112
80
103
119
119
115
69
119
107
89
128
121
99
107
78
87
80
115
197
134
87
121
122
120
86
107
156
88
127
76
99
78
80
197
156
80
124
80
120
92
100
183
89
99
128
119
149
76
140
78
119
74
69
87
120
120
75
134
106
74
87
147
174
69
128
107
80
86
175
122
80
131
75
109
52
115
122
107
87
112
69
80
76
119
78
109
94
91
140
107
140
78
118
125
99
119
142
117
80
76
137
69
107
117
69
151
130
110
96
151
109
62
175
127
69
95
56
87
69
120
101
131
175
132
100
134
91
87
149
120
134
80
76
54
54
143
123
113
78
93
80
119
151
80
120
128
106
114
85
133
147
136
78
107
83
127
157
80
87
155
175
78
91
99
80
175
117
112
128
80
120
111
76
100
88
133
118
95
106
147
140
101
87
110
175
78
119
137
99
144
113
78
78
112
120
88
154
151
118
92
117
142
121
123
96
118
96
154
102
74
83
150
69
67
156
112
80
78
88
119
128
128
162
78
146
94
88
90
93
78
144
133
144
136
140
147
100
54
103
117
107
155
106
94
87
119
125
95
113
96
120
109
78
93
88
114
80
76
112
201
119
72
151
94
69
67
107
80
165
134
67
140
119
130
199
104
69
87
87
69
174
121
106
110
87
109
69
85
54
104
69
80
130
133
98
88
145
99
120
146
146
181
128
134
76
80
122
68
87
78
154
121
99
80
99
114
52
78
78
72
153
175
80
145
143
76
127
77
120
137
175
118
120
120
134
104
104
124
74
89
91
124
96
136
88
94
120
87
129
112
175
109
52
175
69
72
87
154
175
112
80
107
126
81
90
126
94
80
160
85
111
117
125
128
147
78
87
108
100
151
71
117
112
175
98
52
164
107
120
88
166
152
69
110
156
69
147
76
96
109
87
88
90
99
104
89
72
110
80
123
175
154
109
76
106
110
69
96
81
105
183
120
80
83
89
67
100
128
88
52
107
69
121
69
160
140
89
136
80
80
145
67
91
150
117
136
75
54
113
151
101
131
128
131
106
91
87
66
112
69
110
163
115
101
69
106
85
99
93
113
133
54
145
69
93
89
99
154
197
87
89
134
116
103
114
134
143
94
113
87
93
115
136
89
120
130
139
80
129
119
69
72
119
95
123
134
78
106
80
80
120
84
103
112
87
140
134
147
83
106
113
96
89
117
80
123
151
128
117
124
109
126
141
110
88
137
93
83
119
69
95
125
156
131
88
101
80
89
80
76
106
164
94
99
109
96
140
134
121
80
74
164
134
110
141
112
151
131
110
78
131
118
52
113
174
100
69
110
104
87
122
87
85
117
95
118
87
142
117
176
124
120
151
88
127
133
134
107
107
124
121
120
143
119
93
80
96
99
102
90
107
52
87
69
110
80
80
89
102
80
133
69
87
104
80
78
154
124
102
80
80
99
80
130
100
93
159
69
104
52
109
107
78
78
78
119
69
102
77
78
80
113
120
69
144
163
80
78
128
104
122
87
151
89
146
106
88
69
109
101
93
133
104
114
101
143
110
99
80
107
72
107
149
94
117
63
78
54
102
117
99
143
78
175
78
69
96
89
92
145
146
76
92
128
106
54
94
80
87
136
146
148
122
80
80
72
128
89
76
111
76
165
104
99
69
96
80
143
69
64
174
43
67
119
80
129
92
128
115
127
137
111
137
80
69
74
78
69
155
87
199
80
90
74
113
107
120
169
120
96
88
140
106
149
87
117
66
75
128
109
127
129
93
80
69
89
113
115
87
80
85
76
96
94
128
69
91
121
106
56
107
92
76
100
197
156
88
131
113
175
87
113
119
120
76
131
137
128
121
140
87
145
189
72
76
102
119
104
131
80
63
117
114
117
119
78
128
102
69
163
114
118
69
151
80
101
99
104
52
92
199
160
143
80
104
87
101
87
88
121
112
157
136
156
80
88
76
119
101
87
87
78
78
106
118
109
78
110
121
69
145
107
101
178
144
121
85
119
69
144
93
112
99
76
121
128
88
95
94
111
76
126
88
117
133
154
74
140
69
91
69
119
80
197
103
87
110
108
69
154
163
91
78
54
131
120
148
80
87
109
80
91
69
87
89
146
126
112
78
166
112
130
102
174
136
80
112
69
101
144
136
140
144
104
94
113
95
107
106
69
127
119
78
114
87
69
131
107
193
124
80
99
96
120
140
155
136
69
120
76
120
88
90
107
78
87
118
99
101
106
69
91
123
104
102
131
80
83
113
101
88
108
99
88
106
92
80
89
76
94
63
78
59
139
104
80
114
85
111
91
119
136
120
59
91
120
78
113
149
110
109
110
140
80
127
110
119
101
87
120
78
104
80
103
101
140
112
91
72
145
97
162
111
109
76
78
143
89
80
69
80
156
119
91
96
89
107
100
81
146
160
153
80
117
109
78
152
87
131
60
134
120
69
122
119
76
87
109
134
154
128
101
122
112
136
134
93
101
122
72
87
83
85
78
125
110
69
112
69
87
90
156
119
77
109
175
129
136
91
128
130
143
112
91
95
140
88
163
109
103
108
197
118
71
119
78
69
120
132
69
76
89
80
119
69
78
98
95
128
119
125
80
126
78
107
72
102
80
134
128
110
108
69
140
110
54
175
69
155
76
151
101
78
102
109
132
72
89
128
78
164
159
88
120
54
175
54
80
80
199
149
106
152
177
87
87
96
76
87
201
133
88
146
122
52
69
93
121
127
88
100
115
102
91
66
119
120
88
80
93
107
121
143
76
69
74
95
156
119
80
112
88
78
80
128
80
156
123
175
100
145
148
80
87
99
175
111
87
78
106
145
109
136
78
69
143
128
113
121
175
146
120
76
76
80
78
90
141
69
99
95
80
140
126
99
94
114
67
72
78
109
144
154
93
78
99
106
92
145
185
76
107
83
154
72
125
88
74
128
80
117
165
72
132
69
121
80
114
143
111
156
76
128
92
121
185
72
140
113
98
96
76
76
110
104
156
118
125
97
118
128
94
101
95
131
146
87
80
94
113
69
99
98
93
104
154
80
151
119
87
103
137
96
99
94
87
95
101
114
80
132
98
78
69
97
129
99
175
119
88
93
123
144
107
131
87
115
129
93
87
107
87
94
110
80
94
91
76
94
72
80
99
72
74
76
109
99
69
197
131
175
94
112
80
126
76
127
76
88
80
120
88
109
145
80
80
89
120
72
76
102
110
76
109
99
80
76
154
76
128
146
143
99
118
104
99
128
69
122
197
76
54
87
112
93
117
175
89
93
78
152
72
106
107
56
130
155
163
143
132
88
54
139
85
187
100
112
115
120
151
78
117
127
101
94
175
80
100
102
95
80
87
140
102
72
106
134
88
128
72
123
80
112
92
170
156
127
104
71
172
121
89
96
117
120
62
91
98
138
80
151
93
117
120
81
87
54
87
104
99
187
87
97
133
102
118
83
163
90
119
114
94
76
121
88
154
117
132
89
67
88
123
87
134
101
123
80
80
107
105
93
151
69
67
120
96
100
147
69
130
80
80
63
80
100
154
80
140
119
128
131
110
159
87
109
131
185
91
87
107
133
121
76
83
93
98
93
112
80
89
94
134
144
76
95
88
72
131
104
96
90
124
80
100
106
69
78
69
147
78
134
109
133
107
123
77
119
154
95
154
117
144
87
90
96
175
69
145
106
109
104
140
88
68
103
113
151
110
83
183
118
88
99
175
69
76
69
117
126
76
169
155
142
87
109
87
107
114
101
78
111
78
89
120
89
128
80
111
110
76
119
69
118
163
96
199
93
56
69
154
72
136
142
155
101
94
80
95
120
91
119
80
107
76
76
96
119
80
147
117
102
145
121
112
120
163
106
89
69
83
80
102
99
118
148
80
85
80
62
80
88
123
129
80
81
101
136
78
54
121
74
80
80
72
113
69
131
101
120
144
97
119
87
110
87
118
82
128
82
154
88
76
43
112
69
113
111
80
142
110
94
104
107
148
94
88
98
109
128
87
137
80
120
96
80
104
72
112
87
106
154
108
69
185
76
80
117
69
112
150
121
90
69
94
103
88
75
124
76
118
69
85
146
78
80
100
88
78
129
131
105
80
107
183
143
87
99
80
97
110
183
89
88
149
86
119
114
164
110
104
96
78
101
117
109
147
104
106
154
134
101
87
54
121
93
110
147
87
140
103
80
88
78
121
106
123
145
93
117
89
163
80
99
128
166
119
80
54
88
80
106
96
164
110
119
175
80
78
94
120
147
127
107
85
123
76
80
59
136
124
88
107
107
142
134
116
69
118
106
106
107
140
88
106
84
69
102
142
67
134
119
144
91
110
72
102
109
87
136
106
136
113
69
99
109
80
145
120
131
59
87
78
104
69
175
118
119
120
143
117
175
100
87
175
140
85
80
69
100
76
156
75
113
150
100
87
80
111
114
107
112
109
113
140
155
121
128
78
164
89
87
88
87
121
69
127
87
148
119
80
148
115
134
76
143
87
78
131
132
69
133
131
78
138
80
69
115
94
175
155
88
156
131
76
136
74
69
126
91
109
89
87
102
136
156
69
106
142
120
130
80
87
80
106
80
93
101
99
92
76
117
130
119
87
100
104
120
69
125
128
99
99
99
76
120
136
87
104
78
76
120
175
137
131
115
109
88
120
104
93
87
79
52
88
101
175
96
80
94
88
140
100
96
59
164
194
91
67
163
75
80
126
78
58
85
69
87
117
96
163
78
91
109
148
120
69
76
143
69
154
87
112
138
78
99
102
175
69
136
78
54
156
93
69
87
43
112
127
125
68
175
60
74
123
110
69
95
173
114
80
147
90
72
121
125
125
113
76
107
119
88
136
110
106
80
127
69
119
78
91
78
121
117
93
112
107
80
52
151
67
112
107
69
124
107
133
86
106
117
89
78
89
91
69
87
185
87
107
112
54
131
119
89
78
143
121
113
120
76
101
140
56
109
76
94
107
145
112
79
94
96
131
134
106
136
119
79
115
69
129
120
101
78
127
80
104
85
128
69
96
136
69
94
74
76
82
94
137
113
69
107
113
88
90
136
78
95
90
162
156
120
107
127
102
69
69
78
175
95
69
87
118
91
142
69
172
143
133
80
78
120
85
87
64
87
131
78
87
115
93
80
87
131
199
104
118
121
106
78
72
110
69
80
118
64
128
109
88
104
110
87
128
128
109
151
89
154
101
78
106
137
102
80
110
76
134
146
52
87
91
155
131
99
56
118
106
80
80
89
175
106
120
146
69
67
69
107
110
101
146
136
104
101
89
154
69
111
132
80
87
94
137
77
159
109
146
145
80
107
129
109
100
80
89
80
102
140
88
87
131
120
99
69
87
78
148
80
76
80
107
175
80
107
98
175
80
80
134
64
78
110
103
101
99
154
101
120
112
89
144
144
91
140
92
141
87
96
102
102
69
156
69
133
97
69
94
69
54
107
100
88
69
136
96
151
156
107
119
87
52
113
91
52
96
85
72
119
141
151
112
145
154
69
127
154
80
80
101
128
176
69
110
175
107
155
115
137
80
52
120
115
119
89
114
88
127
80
136
90
120
91
88
197
80
175
119
101
78
139
100
108
80
69
80
126
85
113
69
83
80
119
163
87
154
89
157
111
78
74
197
98
122
134
67
107
134
88
143
87
109
152
85
100
87
107
56
127
80
73
91
154
99
80
76
72
97
175
102
72
78
134
80
88
119
75
132
110
109
99
128
129
104
93
104
99
119
130
68
137
69
119
109
131
80
145
120
93
87
76
104
80
126
69
96
131
94
96
106
113
142
56
136
175
128
110
110
78
96
80
102
80
98
181
119
69
96
163
117
88
111
101
96
88
80
86
140
148
155
109
120
128
115
109
106
54
96
140
94
101
87
163
135
79
76
93
119
148
95
91
185
120
89
136
120
120
76
131
101
43
78
117
102
96
152
87
87
142
134
134
113
137
134
106
101
109
120
78
87
94
121
69
85
110
118
56
125
118
101
109
69
163
93
118
69
154
117
111
88
128
113
143
88
150
174
121
78
90
78
80
140
121
123
117
69
104
80
131
117
101
115
80
96
110
100
120
110
110
199
87
113
113
90
87
128
208
80
80
80
69
69
131
142
99
89
120
107
100
134
120
94
106
69
122
133
80
115
88
94
127
104
93
134
78
87
80
114
134
69
123
80
194
131
120
121
87
119
104
90
154
93
89
137
156
106
154
69
56
148
164
106
80
99
139
80
119
76
114
123
80
138
80
69
156
88
138
87
78
80
175
102
79
81
95
119
128
102
100
175
69
151
137
156
151
136
87
109
75
146
80
120
120
136
69
128
123
78
119
110
56
69
80
80
121
110
103
57
107
80
87
154
107
80
108
107
137
96
162
76
88
134
101
146
69
74
76
78
107
114
69
160
131
103
104
80
107
119
91
110
80
94
145
93
80
122
67
78
88
177
78
106
197
107
93
131
100
127
153
113
69
124
57
115
108
80
80
111
69
87
76
101
117
143
80
91
121
80
111
96
107
119
118
80
80
166
69
140
76
69
107
118
69
104
69
119
111
146
123
124
69
88
87
80
98
76
136
175
76
88
120
76
101
69
78
78
110
150
76
110
175
99
155
69
102
78
120
88
110
138
94
129
109
111
109
110
175
87
59
73
80
146
128
119
85
87
90
52
72
99
142
90
106
69
57
146
119
151
69
107
52
69
90
109
163
102
69
80
56
130
57
110
181
69
106
115
102
101
140
110
76
87
80
130
136
124
140
128
82
71
136
107
87
117
57
83
78
80
102
91
117
93
76
115
72
161
106
158
169
114
93
74
142
80
107
121
113
93
129
115
103
197
119
119
56
95
137
120
80
113
117
78
159
72
80
175
112
91
106
99
154
76
80
155
76
76
99
113
164
80
145
99
136
94
100
104
100
80
119
117
148
88
118
118
130
80
118
102
146
76
99
76
80
69
69
87
80
119
110
123
87
83
174
87
114
76
145
138
110
110
76
136
78
69
113
131
102
96
154
119
88
107
159
94
151
104
119
119
127
101
154
56
119
72
87
149
80
154
101
107
69
78
116
165
82
156
106
132
119
69
121
126
118
199
88
104
129
156
155
111
122
85
88
80
80
107
131
156
80
152
121
175
78
107
80
78
80
87
96
112
122
74
136
87
69
163
69
120
80
175
80
140
128
94
121
106
54
144
140
151
96
93
101
119
76
69
149
80
124
112
136
98
89
80
128
69
175
175
121
131
80
175
151
87
80
107
113
80
115
76
115
88
137
89
112
68
175
119
120
107
52
69
72
162
91
117
110
80
115
155
174
142
89
147
112
185
110
99
78
99
68
80
112
80
110
54
95
136
88
52
94
76
120
125
151
110
88
87
99
87
129
108
129
78
90
76
172
175
80
100
94
76
136
100
78
120
145
107
80
175
149
85
120
104
133
128
104
121
76
197
115
113
78
80
132
102
89
106
96
76
72
118
139
109
136
127
115
119
76
80
140
113
113
137
146
54
82
118
97
109
104
112
85
197
120
119
71
120
80
99
102
140
71
78
87
110
83
89
116
128
133
76
110
99
93
89
115
129
109
60
119
80
107
93
80
80
87
87
175
120
112
139
106
94
69
112
99
107
120
72
136
110
128
135
110
99
93
66
90
54
84
72
163
148
69
80
124
113
78
88
69
43
80
69
80
197
60
80
114
128
78
154
91
149
123
80
80
76
69
110
117
87
197
142
118
155
88
115
121
120
107
102
113
117
107
113
130
151
89
134
137
172
76
162
123
142
110
107
79
136
115
103
78
113
88
80
72
136
120
127
83
81
136
164
119
120
94
127
82
80
136
74
87
54
93
156
69
122
89
76
96
85
136
128
76
117
121
89
113
128
115
80
112
154
199
76
100
147
87
175
140
80
78
69
110
89
128
99
143
128
99
101
132
59
76
69
87
109
80
69
80
113
76
80
94
120
75
185
107
113
109
101
85
90
111
134
112
80
99
102
187
80
155
131
151
95
163
88
80
119
99
129
131
110
119
80
111
128
147
146
94
94
110
89
128
154
78
112
91
108
120
69
79
87
76
140
67
120
117
87
94
137
133
80
80
151
135
102
142
87
110
104
78
72
80
152
139
102
133
154
120
107
56
112
113
69
138
78
99
138
87
131
156
122
76
132
123
87
80
79
76
72
100
78
82
102
131
118
93
146
117
69
107
137
97
92
155
155
54
69
119
125
127
154
78
78
127
118
109
74
99
99
87
86
83
144
89
94
77
120
94
147
112
75
110
110
113
84
87
127
72
89
134
78
110
78
76
87
119
124
101
113
100
80
93
134
126
107
111
197
80
87
99
197
155
83
136
99
94
145
115
119
117
119
88
156
76
119
130
106
69
133
78
54
118
100
76
120
69
78
88
110
175
80
74
101
133
75
175
111
197
87
87
97
92
96
72
109
107
131
100
117
154
105
104
76
78
88
113
69
87
99
111
119
136
69
120
146
103
106
126
91
88
111
54
119
160
197
88
80
80
101
131
76
113
111
88
154
122
81
125
133
136
120
91
95
80
80
72
163
128
112
83
80
117
134
120
117
80
117
87
119
119
152
128
134
119
87
132
98
131
146
87
69
111
103
103
129
80
85
111
82
111
96
134
101
115
72
155
143
199
69
152
89
94
131
69
104
138
163
104
76
87
110
85
120
80
85
85
69
181
87
136
132
197
107
78
118
140
120
112
80
71
102
88
129
91
151
80
69
136
124
89
80
107
110
143
115
110
87
93
127
87
154
96
98
69
87
81
76
69
78
101
80
125
149
120
140
155
154
163
90
96
87
151
87
99
140
119
78
93
95
106
155
80
121
80
143
87
120
110
126
149
136
87
88
102
69
69
76
154
102
127
87
120
118
121
84
199
67
84
119
119
106
119
69
117
148
154
132
74
80
93
124
72
85
87
89
144
120
115
79
111
78
145
80
75
117
145
87
80
136
103
132
94
69
122
74
107
154
133
69
134
54
115
107
100
102
54
119
93
99
119
107
160
145
91
119
89
98
80
80
69
123
127
101
113
103
89
164
152
80
101
69
99
145
154
145
136
197
88
76
117
127
121
80
80
91
89
80
80
87
104
134
93
88
78
146
130
154
72
78
174
121
104
76
121
122
80
99
90
87
126
72
154
143
80
80
69
126
178
160
154
107
99
93
80
92
156
134
80
80
128
140
69
197
78
144
122
78
110
119
133
73
110
91
80
94
76
80
85
107
122
142
96
94
109
90
87
82
113
94
80
124
128
80
119
69
120
87
120
102
101
131
78
154
88
76
88
108
69
78
69
209
154
78
87
125
141
87
102
99
43
121
119
80
66
88
100
134
119
124
102
97
145
140
112
113
107
110
104
88
106
117
107
93
94
68
80
80
136
102
101
107
88
96
87
64
94
89
76
94
88
131
78
78
80
90
107
147
104
128
93
93
80
69
145
69
110
201
109
109
154
121
59
69
94
115
80
110
69
113
76
93
69
114
87
160
156
164
59
175
103
85
100
132
66
94
145
76
119
140
52
156
69
78
83
127
84
88
99
95
122
72
83
107
88
94
175
113
88
80
81
95
136
121
97
104
141
76
119
154
132
103
67
87
197
76
91
133
109
72
87
69
134
96
122
97
103
132
72
127
88
54
87
122
99
197
106
67
175
121
106
87
80
119
119
94
175
130
78
129
154
102
140
155
106
76
74
175
112
107
113
164
116
119
76
138
87
69
148
87
121
134
132
120
98
80
69
52
94
99
92
126
112
80
136
104
93
136
117
89
119
69
107
94
107
88
69
132
128
113
107
151
110
69
147
88
99
96
99
143
69
69
101
58
112
78
131
163
80
201
134
134
87
111
96
110
113
78
149
76
152
80
69
119
123
126
128
88
158
136
163
69
99
128
187
100
118
87
156
90
83
78
163
132
137
112
175
114
89
110
76
101
96
99
153
96
111
138
175
98
126
101
80
78
69
116
85
80
90
113
145
131
117
128
174
87
120
83
69
137
74
87
145
121
75
116
115
99
119
87
69
80
80
78
96
113
101
78
133
63
126
69
146
113
101
90
116
110
109
112
114
69
99
83
102
112
134
140
94
149
99
121
122
78
96
96
64
69
119
80
96
149
89
104
67
80
72
117
103
136
87
113
80
69
76
78
156
104
80
134
99
109
69
69
59
109
69
129
132
147
85
93
91
140
69
117
78
110
98
177
71
117
87
137
163
80
69
145
117
120
120
83
107
128
112
80
87
93
80
91
52
118
131
80
143
117
72
80
69
121
178
94
73
119
120
69
88
80
106
95
107
100
113
100
67
89
119
151
175
82
97
118
89
119
114
154
91
76
87
74
90
120
120
121
80
109
94
137
99
109
119
87
69
123
113
124
151
121
76
106
164
181
80
126
72
80
136
76
100
132
88
91
90
87
122
112
109
69
156
136
126
109
80
107
156
69
109
80
139
93
83
117
78
58
96
153
149
175
104
89
127
81
154
137
43
54
69
120
127
78
140
94
101
100
120
140
128
87
64
155
111
76
130
175
88
87
94
154
174
120
69
69
54
143
85
77
136
117
169
128
138
76
154
119
151
138
79
118
85
87
87
99
89
107
87
121
104
119
110
76
120
96
88
149
135
93
112
165
112
71
87
112
127
102
67
119
99
54
81
104
118
94
76
142
93
166
110
80
59
88
69
118
90
89
79
78
69
59
56
89
113
106
104
80
81
69
69
72
154
120
119
134
113
131
163
120
105
109
107
100
140
140
80
76
117
113
78
119
87
94
107
107
79
104
106
52
94
134
111
100
119
76
164
118
87
110
72
128
156
99
138
96
75
104
109
176
109
88
109
99
88
76
122
87
99
120
106
76
120
199
102
93
131
78
110
69
72
87
99
130
109
76
101
185
80
80
96
109
110
78
172
89
122
120
146
69
89
123
150
175
122
90
128
75
159
136
127
95
110
107
139
119
104
97
98
80
124
67
107
99
120
119
95
69
134
111
59
139
175
98
96
127
80
93
110
93
141
87
82
72
106
112
110
72
66
80
130
72
122
78
78
96
80
87
76
69
80
128
80
87
87
88
87
117
197
117
107
132
106
80
89
102
106
89
123
134
87
43
118
118
96
87
125
111
174
83
117
78
89
74
69
137
87
89
76
154
112
117
85
69
109
128
43
88
118
89
78
113
88
112
151
103
87
157
117
78
69
76
154
82
119
76
131
69
145
136
102
154
59
128
175
88
119
175
119
117
197
76
155
69
110
175
104
101
156
104
107
93
121
80
148
163
76
140
89
76
138
85
99
89
119
131
116
151
94
76
89
80
146
123
106
88
95
83
119
78
120
123
107
134
119
127
96
91
95
87
88
119
80
43
87
76
69
103
156
156
97
106
121
43
92
142
120
114
93
149
120
68
113
80
113
107
89
111
80
106
109
99
174
72
124
133
76
145
155
106
151
119
93
134
134
90
100
80
129
96
69
124
78
102
128
74
164
154
104
107
78
99
130
100
114
154
72
119
69
87
139
117
107
134
80
163
175
107
78
91
80
80
149
87
69
117
163
94
80
72
78
78
104
163
79
43
95
110
80
174
118
92
85
88
118
101
117
154
94
59
126
80
104
78
80
96
69
85
94
104
138
69
175
163
118
117
111
119
120
99
93
129
76
121
80
78
115
156
89
110
96
175
69
113
107
154
119
101
83
113
114
76
111
131
78
109
87
132
157
66
117
93
80
110
94
181
109
94
119
76
120
120
79
122
126
116
114
100
91
54
107
115
87
109
120
69
145
88
149
92
87
121
120
131
82
111
154
98
93
80
85
135
131
99
74
106
87
78
100
145
133
125
98
106
136
96
119
78
113
117
165
197
96
197
88
120
74
129
93
76
93
87
160
72
74
87
100
119
146
181
104
156
174
93
78
140
69
172
114
134
115
107
140
107
88
120
88
111
123
69
136
101
98
94
156
80
89
100
76
95
154
69
134
131
111
154
113
136
80
123
80
140
72
98
138
100
108
145
80
112
109
76
88
70
164
116
131
119
80
69
76
123
89
91
69
121
93
155
88
169
87
155
131
78
134
156
82
110
94
94
104
80
106
122
88
120
103
57
128
80
87
80
197
155
101
104
131
129
74
111
96
106
80
115
120
107
69
128
132
175
79
128
152
98
89
119
76
131
113
120
96
93
98
104
69
121
67
72
111
100
83
197
164
145
109
163
108
110
154
127
152
174
209
99
80
99
117
69
148
87
74
152
129
69
87
152
74
112
131
80
78
119
80
125
87
80
83
94
91
111
166
87
128
78
69
80
76
134
93
156
117
109
107
78
88
91
120
43
88
125
119
69
122
85
117
164
134
156
117
197
112
107
125
69
175
122
85
85
117
80
86
117
185
80
96
78
104
110
87
96
109
72
111
80
80
98
121
94
88
107
144
120
76
74
154
104
88
164
132
119
54
93
120
93
154
80
175
197
157
76
80
112
99
107
110
69
131
103
119
96
149
136
80
92
117
120
137
132
69
119
83
131
96
160
110
87
72
130
69
80
137
92
128
119
120
144
87
112
83
80
91
69
95
175
69
119
163
80
78
59
74
78
110
88
132
73
96
80
134
154
154
80
146
80
106
76
131
76
80
115
72
109
107
95
119
69
78
122
87
138
163
110
145
109
106
128
76
174
90
175
109
76
89
89
69
115
129
161
87
88
85
87
76
89
107
138
119
118
76
111
76
113
75
157
106
109
108
119
80
105
80
80
175
87
93
80
156
69
52
122
82
103
135
87
107
91
106
137
120
123
121
127
154
106
69
104
107
87
119
78
109
151
80
88
151
122
69
102
80
87
105
87
99
133
90
100
85
69
85
69
147
87
80
107
76
80
119
100
72
80
69
99
69
91
80
72
93
106
134
178
76
118
85
142
104
100
141
107
97
69
80
143
85
121
99
117
72
69
117
80
98
69
119
105
146
87
127
102
69
133
121
87
109
162
101
69
112
136
88
56
100
69
110
80
88
109
153
93
136
119
106
89
110
176
174
87
102
101
103
120
128
67
128
78
78
168
89
102
72
78
175
109
152
175
175
72
80
119
54
110
134
130
144
124
89
116
109
117
94
156
80
148
133
107
99
77
131
80
106
87
78
134
89
69
69
118
88
80
74
134
115
90
128
112
115
138
69
76
78
69
100
54
130
100
110
148
116
93
74
81
134
87
99
88
143
69
76
99
87
69
80
69
87
87
199
69
112
88
175
119
69
127
102
102
143
143
74
69
168
79
126
99
99
161
154
80
87
100
145
102
101
109
88
112
79
91
154
103
128
99
112
69
72
110
85
160
112
57
112
80
100
106
104
92
145
99
111
136
104
80
147
142
127
102
80
134
80
175
126
131
80
87
106
91
136
80
80
175
109
76
127
104
80
174
155
95
125
69
98
125
103
131
140
67
107
112
69
118
110
119
99
88
147
105
117
99
69
146
87
88
85
91
64
97
151
91
126
72
80
134
63
146
89
91
118
88
76
87
72
69
80
107
147
93
87
69
107
127
157
69
88
69
107
91
156
109
119
121
69
96
131
185
54
174
101
119
134
197
83
117
154
140
115
120
107
156
89
114
99
96
175
76
88
78
69
131
73
128
159
43
119
96
88
104
131
101
69
102
76
82
143
63
67
172
78
162
78
136
74
82
121
80
156
134
94
99
106
175
119
94
119
88
80
74
87
139
79
131
99
113
97
138
164
136
80
69
78
81
128
138
121
104
78
163
103
76
112
121
119
80
89
116
101
90
121
96
110
106
121
89
78
76
69
109
80
102
88
76
80
104
113
137
137
69
131
138
104
113
134
71
78
121
69
110
80
69
112
113
123
89
136
89
87
118
163
69
164
80
121
76
76
78
80
102
123
66
118
76
151
137
80
138
98
120
131
121
69
101
87
76
69
126
52
175
87
111
78
114
67
69
154
156
146
136
98
52
76
89
80
107
142
154
119
175
110
87
80
99
136
92
101
128
91
109
128
94
114
90
115
119
72
118
155
126
82
106
119
78
109
121
113
119
104
69
80
110
119
134
66
78
100
176
124
101
80
107
136
121
76
87
80
163
122
110
88
131
120
118
156
122
114
69
131
76
125
89
103
104
107
146
78
123
106
95
102
121
102
108
138
94
117
106
75
82
106
112
128
145
127
140
150
69
114
154
142
156
120
87
80
69
97
128
121
154
93
99
80
109
107
146
121
107
119
104
104
87
88
95
69
80
151
80
80
156
88
96
136
69
99
127
175
120
87
99
80
140
87
69
69
90
156
137
136
80
175
150
112
175
119
87
78
144
80
89
175
87
76
87
115
146
83
132
120
112
107
119
67
110
89
80
80
99
158
94
129
134
87
76
110
117
154
150
125
80
131
93
80
136
76
93
87
80
78
67
143
69
140
85
101
80
89
89
110
146
123
63
110
98
119
128
87
110
93
115
85
74
152
99
174
99
109
111
69
148
127
98
183
119
103
117
80
88
163
109
112
103
120
158
93
78
156
147
113
87
113
108
153
90
117
80
114
89
124
78
69
91
113
130
118
127
137
80
143
69
76
99
78
52
109
101
136
113
121
69
111
69
107
126
76
107
56
131
87
121
93
128
101
104
143
128
80
88
76
115
105
117
68
119
127
175
78
54
94
153
112
68
136
69
165
128
80
108
126
101
69
96
76
149
72
93
137
80
122
69
117
80
107
69
88
67
107
98
141
138
94
108
115
110
101
134
88
107
83
69
69
80
112
134
85
95
76
113
87
117
117
80
74
109
101
90
134
75
54
75
95
121
67
94
121
76
78
107
94
87
80
131
140
128
110
113
89
80
137
113
76
110
87
102
113
89
78
94
115
140
106
128
80
134
79
112
112
120
120
69
117
94
129
69
100
109
120
93
197
104
175
69
199
99
87
95
125
107
130
106
103
78
165
80
197
119
119
87
108
72
90
119
136
87
96
94
80
106
80
110
156
104
76
162
132
78
107
110
67
98
93
114
103
52
123
138
88
69
89
111
115
83
132
90
93
114
119
115
78
69
136
85
128
88
123
163
99
154
129
93
145
78
99
67
107
94
115
160
92
89
69
87
43
94
96
69
138
119
154
156
85
175
89
72
131
120
76
112
96
96
74
121
85
112
94
104
80
117
78
107
146
109
119
134
154
164
107
117
154
98
94
102
87
80
112
119
107
98
121
133
99
104
78
89
69
80
91
151
73
123
54
87
76
76
71
120
129
112
91
121
88
128
119
96
103
64
57
93
69
99
96
185
111
120
72
128
143
89
104
52
95
80
80
89
69
133
78
134
87
87
69
96
80
87
126
94
74
109
155
107
93
120
87
69
107
72
82
78
103
113
117
127
123
80
120
114
72
81
154
123
130
118
69
101
151
107
76
78
118
81
119
99
146
87
80
80
69
80
131
89
175
95
76
98
80
117
117
76
69
43
115
131
99
107
69
129
127
91
110
111
76
92
78
82
78
69
131
80
121
185
99
87
131
154
99
87
155
111
80
119
76
54
110
66
124
72
89
110
80
120
99
120
112
91
134
80
104
133
151
104
78
80
67
136
113
130
87
52
126
103
106
76
87
136
78
80
87
175
102
110
107
87
132
69
149
89
120
119
101
76
105
154
112
121
52
76
87
115
119
106
113
69
119
115
145
91
80
158
175
78
163
80
85
87
174
109
80
127
117
100
120
142
71
81
117
86
145
78
145
80
119
151
97
158
69
111
121
87
89
175
80
69
117
100
109
101
151
80
80
78
80
197
88
71
102
87
69
164
104
104
154
90
163
113
87
150
104
124
145
87
80
58
114
101
54
87
88
149
94
117
95
69
69
87
172
114
113
69
69
106
80
80
110
120
128
69
131
104
97
103
89
91
110
80
111
128
74
119
80
80
80
78
132
122
121
119
140
88
137
94
102
117
80
52
107
87
90
110
131
89
123
134
69
111
113
121
106
117
80
159
101
80
96
91
80
124
137
93
106
121
126
147
69
91
101
72
112
119
52
80
74
101
89
80
117
134
115
110
122
119
87
134
78
125
114
72
110
88
74
69
113
142
131
113
119
76
94
107
108
131
129
106
120
103
80
93
78
69
164
156
112
113
154
107
164
100
72
43
80
104
93
80
119
133
112
119
99
69
124
78
87
57
78
74
143
69
151
104
76
119
131
99
128
78
95
93
78
131
128
69
117
91
120
130
94
89
80
128
107
94
88
143
128
119
166
156
126
154
89
99
160
109
101
87
114
127
153
122
87
75
110
85
91
86
154
109
133
99
158
80
143
88
88
91
136
87
102
119
120
114
109
118
118
110
98
154
183
95
80
104
92
115
114
109
128
140
156
95
94
88
69
106
80
88
87
112
76
119
112
112
109
80
162
69
52
109
131
78
107
100
174
78
91
87
88
130
110
56
69
82
87
122
54
164
80
127
95
67
123
88
175
123
113
118
131
152
94
185
102
80
109
104
118
95
83
132
69
87
80
117
160
145
87
79
80
154
119
85
112
78
112
76
52
121
113
102
154
67
134
78
120
109
151
54
80
105
75
115
91
80
154
106
89
136
156
119
99
119
69
74
69
110
88
87
107
52
93
110
128
89
80
110
119
52
124
146
114
119
87
78
120
136
89
138
131
87
114
64
144
87
88
131
78
81
101
152
123
106
106
69
69
78
78
118
163
126
113
91
69
52
88
136
104
69
123
132
109
69
69
120
124
113
130
69
101
111
69
106
80
103
96
117
99
76
122
128
125
88
137
72
76
94
89
119
80
106
145
54
76
140
80
78
111
163
156
78
115
127
78
80
113
94
88
76
197
43
107
74
80
181
69
72
80
152
88
88
104
138
146
69
87
72
129
69
155
100
134
128
43
80
106
80
156
87
127
117
69
116
89
126
154
107
145
116
129
58
118
119
175
69
140
120
82
80
101
52
96
113
199
110
117
69
111
104
52
91
174
114
115
80
90
78
95
54
78
96
87
69
117
90
80
111
146
69
89
110
67
78
151
88
69
87
150
72
112
102
93
163
80
69
154
175
72
109
69
120
99
87
106
107
79
102
56
96
87
119
161
76
193
122
87
109
140
160
134
146
120
128
69
78
122
164
93
148
110
144
137
110
77
123
113
91
107
107
82
175
80
104
69
112
120
71
98
80
175
112
98
136
118
69
174
57
176
87
120
54
87
147
88
80
114
130
101
114
74
94
155
120
121
69
80
99
121
113
76
148
76
146
155
96
85
89
69
175
69
121
94
103
100
92
120
121
132
128
78
120
165
80
146
76
122
113
137
107
115
87
80
91
119
101
109
80
76
89
78
80
93
109
131
117
119
94
126
64
80
126
112
89
128
102
82
119
144
88
112
136
142
69
94
76
52
129
87
153
104
102
154
80
90
69
140
91
145
78
99
175
98
104
102
175
74
127
72
156
92
136
121
80
120
74
147
156
102
183
109
85
87
69
104
88
149
80
94
120
99
85
89
104
157
87
128
114
120
141
114
201
86
76
85
80
128
78
78
118
117
109
106
80
121
150
120
101
76
162
67
104
111
87
67
127
69
83
117
113
104
83
121
69
80
102
123
98
90
112
69
80
104
69
130
80
69
183
150
83
80
78
136
163
107
104
76
69
80
94
113
109
120
69
78
160
128
154
67
67
117
101
80
104
69
80
69
54
155
83
120
89
109
126
67
80
166
113
106
98
187
121
171
81
115
106
128
80
163
69
80
129
175
99
113
69
102
80
137
75
121
76
70
101
102
143
69
94
83
69
76
101
109
85
143
112
106
80
109
128
128
104
109
83
133
80
175
124
94
101
120
140
126
145
54
99
156
89
69
111
109
89
185
72
174
142
89
80
106
69
69
175
114
80
80
69
130
119
118
92
76
80
112
111
172
118
57
119
91
128
78
141
172
89
136
104
128
69
80
129
109
85
106
58
87
86
104
154
132
69
69
124
60
119
78
120
129
67
130
107
197
106
80
114
80
109
131
94
62
127
106
120
96
98
119
155
177
107
131
109
102
104
154
126
80
110
87
156
76
94
80
128
151
119
78
156
78
166
76
128
117
103
120
85
122
85
110
66
175
87
80
146
120
87
117
102
148
100
90
141
134
120
100
69
99
140
128
90
67
126
67
109
68
72
156
101
121
88
134
104
133
99
99
80
120
144
78
80
76
78
98
113
87
54
64
76
111
114
74
78
144
112
88
74
102
113
99
96
80
80
80
112
89
98
74
121
121
140
100
118
76
128
76
104
155
152
136
128
164
107
80
56
142
156
117
88
117
111
155
76
116
71
107
128
134
76
134
121
154
121
151
146
134
80
78
104
123
123
69
80
115
119
106
93
107
88
87
109
109
119
106
93
120
94
140
91
137
175
151
152
128
54
93
119
76
136
88
119
104
100
79
119
80
88
120
69
52
54
80
101
128
119
102
119
78
99
120
98
103
116
80
87
72
90
134
100
80
83
110
113
144
151
131
72
77
121
146
109
89
100
80
93
76
69
100
54
196
69
107
75
143
113
78
121
131
111
131
128
69
137
175
85
113
99
115
89
140
152
78
118
58
134
69
96
80
121
97
88
69
99
154
107
113
78
145
118
112
163
100
69
80
123
93
103
111
113
80
56
69
118
79
69
76
127
89
138
154
119
88
109
90
69
142
123
120
79
80
136
175
89
109
131
93
64
92
106
109
80
69
117
95
87
160
69
127
80
154
117
96
134
119
87
113
117
136
106
93
175
54
76
166
89
80
87
119
69
120
80
101
134
124
92
145
137
114
96
110
146
113
100
76
83
114
112
87
144
80
117
85
103
175
87
141
97
76
95
136
106
89
139
117
99
75
110
80
164
100
89
76
129
121
87
107
140
80
121
122
104
75
96
88
88
107
110
156
111
112
64
136
119
175
109
87
103
80
103
113
80
99
78
146
81
52
76
119
76
120
87
94
67
75
78
88
92
146
76
127
72
87
169
144
97
72
140
113
113
117
83
111
56
100
87
109
120
78
131
111
92
103
91
99
121
104
78
163
151
69
85
80
114
121
109
107
154
88
78
80
128
80
150
57
80
54
136
109
128
110
127
128
78
143
104
136
78
140
154
79
103
119
69
154
133
174
96
155
85
175
127
99
93
88
107
99
101
128
120
145
131
181
104
80
136
138
78
121
147
106
69
154
69
69
109
76
69
94
69
76
134
69
107
154
154
54
175
175
110
78
104
197
109
76
140
164
80
54
118
175
90
95
91
123
78
101
131
76
74
154
76
94
100
175
88
128
80
80
134
88
87
78
69
110
80
114
94
106
140
96
136
119
69
140
93
69
93
89
175
90
113
95
80
164
128
69
78
154
104
132
87
119
119
89
117
69
69
98
175
99
129
99
89
112
52
69
123
145
136
94
144
80
110
54
109
107
151
107
121
88
140
130
115
127
117
110
80
166
142
91
136
81
197
128
107
78
94
69
122
127
69
145
52
80
112
89
88
86
88
80
155
80
120
94
88
88
99
91
76
128
106
119
96
119
87
104
100
69
117
88
80
76
95
91
94
96
87
87
74
129
128
52
137
100
138
87
52
99
76
80
107
110
80
78
154
85
96
106
99
78
99
129
69
94
78
126
113
109
105
97
128
129
106
99
80
102
140
87
87
69
129
95
109
56
109
78
109
145
98
162
130
80
116
105
124
96
78
106
113
109
69
122
162
140
119
78
76
78
78
75
99
89
96
134
157
131
109
130
127
69
78
76
127
99
104
126
87
76
153
120
140
107
96
110
109
98
95
124
83
145
99
87
126
88
111
101
71
102
87
196
69
87
121
87
134
185
107
74
84
143
106
80
127
89
78
76
93
72
74
94
78
70
98
100
119
87
113
52
120
115
121
104
119
120
130
88
80
127
110
99
95
129
80
88
110
136
117
132
114
141
136
104
131
143
138
110
114
74
175
96
109
78
113
80
80
145
108
121
91
88
110
106
89
131
175
96
121
80
163
111
80
109
76
109
127
43
117
83
64
128
147
104
80
80
119
107
134
119
151
124
175
74
134
69
80
134
96
118
108
136
146
89
80
94
78
69
80
80
154
89
109
96
148
78
119
78
154
78
131
76
88
120
101
154
155
128
69
64
112
90
128
136
131
80
175
154
69
93
107
98
104
164
89
163
120
69
101
69
109
106
175
76
76
109
156
80
110
115
163
102
69
76
134
99
113
106
136
98
106
127
122
156
114
99
75
104
120
128
145
102
102
119
134
73
76
93
87
107
102
140
106
146
113
69
118
144
69
80
83
113
104
148
89
80
89
80
69
87
112
80
150
107
69
123
123
100
88
72
96
138
99
130
114
107
127
128
99
87
134
95
99
87
131
148
113
137
155
80
129
74
87
121
96
80
107
78
69
145
69
88
140
100
80
107
76
85
113
88
58
94
103
89
63
107
119
110
119
78
82
101
121
88
155
88
100
154
92
69
111
120
82
107
110
118
133
107
112
123
87
199
69
151
119
52
154
124
134
126
96
66
80
140
111
87
96
80
52
80
176
109
72
111
104
175
136
99
120
107
76
56
58
87
175
106
78
103
126
88
81
108
145
107
117
88
69
78
104
110
101
104
197
158
106
122
107
123
119
90
89
164
119
78
76
89
134
80
109
88
121
87
114
112
109
100
115
89
145
80
136
131
120
93
69
93
94
80
102
107
123
80
101
128
109
131
175
104
128
101
164
69
101
75
64
120
89
107
88
100
147
104
143
113
52
128
106
104
94
99
118
69
80
96
136
154
94
157
151
115
72
87
64
133
71
69
104
104
75
143
156
128
127
99
69
107
142
148
83
197
117
127
151
88
89
81
78
112
83
102
101
124
76
69
83
93
156
95
69
82
80
128
67
76
118
93
54
100
88
113
128
69
104
66
94
69
120
52
119
92
69
155
175
74
128
64
114
136
80
70
69
164
74
174
87
56
134
143
76
85
80
75
115
109
76
128
87
80
120
112
175
137
99
99
94
90
128
93
95
76
148
79
103
89
106
58
88
154
74
93
188
125
80
110
197
94
157
122
113
138
91
125
82
87
120
109
113
151
80
107
136
119
78
54
93
94
154
104
76
151
69
96
78
121
164
154
72
76
109
130
99
128
88
93
109
89
104
119
120
142
99
130
156
145
78
96
100
209
118
71
97
56
76
127
137
94
131
94
91
78
87
120
110
151
120
175
154
121
52
104
94
109
118
76
120
140
156
117
89
78
52
175
92
87
119
76
106
93
109
126
109
101
109
78
118
121
93
128
128
81
156
94
80
156
110
97
112
80
117
154
107
128
106
136
118
104
88
140
101
89
150
69
104
69
80
101
99
119
69
87
197
100
117
78
113
91
109
119
131
175
89
121
128
72
115
120
89
80
113
93
96
123
80
69
92
107
93
87
80
119
87
175
183
107
151
175
76
151
76
88
69
69
110
140
72
76
138
107
69
73
52
199
78
117
119
99
110
69
143
58
88
164
102
80
117
79
178
119
97
88
80
144
89
120
109
175
76
162
109
88
134
133
72
104
151
127
107
78
115
76
80
93
69
68
153
104
80
96
76
114
107
110
93
110
69
159
115
88
135
109
87
164
69
92
126
110
71
134
134
90
89
104
140
124
155
80
88
172
91
89
124
89
69
114
128
127
119
146
96
143
117
172
69
131
143
107
106
93
115
109
124
101
141
145
103
94
137
99
84
131
109
121
82
99
80
83
115
121
160
101
87
52
107
71
127
72
116
87
140
112
64
75
85
156
101
76
80
76
103
99
136
69
89
87
120
76
69
166
133
131
102
78
75
165
69
175
80
156
120
80
154
134
113
121
110
115
98
80
122
91
78
120
80
187
156
107
103
75
106
80
104
92
128
78
78
69
160
115
145
119
101
119
72
114
87
120
175
131
100
104
104
117
92
127
121
69
132
87
151
78
156
115
78
76
87
87
134
109
54
89
52
93
121
106
140
175
56
140
90
84
80
128
121
134
52
154
134
95
154
80
128
120
122
154
131
104
102
66
93
80
123
140
129
124
69
76
87
91
80
152
69
96
102
104
134
120
100
99
115
72
87
155
145
104
100
69
110
92
89
133
87
106
80
74
90
154
87
106
137
104
88
87
89
80
122
99
82
88
106
124
87
109
88
80
95
138
113
175
134
120
80
120
144
80
80
80
76
80
99
113
175
98
107
83
113
88
130
76
80
69
121
80
52
163
120
69
87
78
146
127
155
121
82
76
140
154
109
69
100
120
156
119
88
76
101
136
69
154
164
146
92
128
134
80
80
111
52
93
130
91
125
67
104
174
128
128
175
175
87
78
109
88
80
88
131
69
120
54
80
156
102
110
89
147
125
107
144
175
114
120
121
124
89
85
128
118
129
118
87
100
140
110
76
102
145
85
100
87
155
110
93
78
52
119
89
99
69
121
147
69
197
63
107
129
116
109
72
140
137
130
102
148
80
69
174
99
136
89
69
154
128
119
90
69
96
140
175
94
69
104
129
89
98
78
78
100
175
175
184
83
134
80
101
98
89
72
175
89
80
97
109
118
156
85
118
94
120
129
94
78
99
121
175
94
69
89
95
76
112
82
140
111
107
113
101
80
114
85
69
119
119
99
80
121
107
197
76
119
145
80
175
155
162
128
101
119
68
102
87
115
87
72
119
102
136
104
112
117
128
133
136
119
85
69
121
80
85
110
69
93
103
146
187
69
111
96
151
66
57
142
138
69
119
69
160
117
136
120
107
120
74
69
105
101
145
118
101
175
117
87
54
137
76
119
104
197
96
125
93
124
123
107
87
52
127
126
119
89
76
101
80
99
175
76
80
84
87
76
85
111
120
133
80
69
104
109
121
80
80
131
78
115
136
80
80
96
98
76
107
76
119
118
80
125
71
88
112
80
129
110
72
80
120
72
89
129
132
96
119
136
134
102
69
80
102
156
89
113
67
69
134
115
143
99
163
137
137
164
146
93
121
106
80
80
119
123
117
95
88
80
141
156
120
78
154
134
113
76
123
69
155
78
87
80
106
80
76
115
113
102
99
72
87
87
120
69
117
109
80
128
121
83
140
127
69
117
78
99
138
76
90
88
101
54
194
69
112
175
128
76
96
127
119
89
128
104
139
63
107
149
101
74
136
88
75
120
78
131
94
136
144
166
125
90
109
87
144
90
69
175
100
93
71
134
119
109
109
56
109
80
107
88
76
119
87
91
134
137
109
117
69
80
98
117
66
103
89
127
76
78
69
134
140
79
90
87
56
123
131
80
80
80
120
136
95
95
76
74
115
80
121
126
107
76
109
80
181
69
80
80
74
69
154
69
123
54
137
91
43
100
136
78
120
96
67
128
156
96
106
127
87
102
159
115
80
166
107
121
134
120
96
87
89
96
74
107
115
126
126
80
175
103
119
160
113
78
119
98
66
127
126
119
138
96
120
100
175
109
93
120
83
175
154
107
106
120
88
160
76
154
91
119
66
123
96
93
119
80
111
69
94
120
114
134
109
130
101
94
103
78
148
69
69
104
101
78
101
146
112
121
80
131
119
101
99
88
96
137
89
142
126
94
78
127
96
80
112
80
80
88
83
87
69
115
74
133
118
78
119
125
104
54
120
80
134
117
197
103
82
131
154
175
78
92
76
107
127
107
121
175
52
125
76
94
113
105
107
106
151
66
140
119
89
89
175
128
89
117
80
67
69
76
101
54
111
117
69
185
110
114
113
185
76
88
99
87
94
113
175
116
89
120
113
142
123
69
105
163
155
136
76
133
154
126
93
119
69
99
154
144
112
131
69
96
101
87
72
80
91
122
156
75
156
101
96
56
80
111
197
117
101
88
118
83
87
72
76
132
94
142
76
136
109
112
120
118
76
91
114
104
109
142
127
113
120
96
144
87
59
106
101
151
132
102
113
102
69
116
113
140
88
80
78
143
128
149
87
121
134
121
174
88
124
145
69
87
113
146
156
87
89
104
87
89
88
88
113
76
69
87
100
175
139
79
78
76
73
56
99
92
132
54
106
76
80
54
146
78
76
154
101
119
159
163
75
197
121
128
69
154
162
162
88
121
116
74
106
54
119
150
110
112
123
99
75
129
99
131
109
131
140
99
111
106
107
88
136
165
52
94
99
78
80
78
107
69
75
94
76
115
80
137
119
78
112
69
74
119
69
175
116
128
96
120
128
88
88
144
131
98
118
85
98
175
78
120
100
102
140
119
134
94
151
115
129
95
103
127
111
132
69
80
129
79
106
78
107
78
118
89
98
67
110
106
75
87
107
136
74
132
69
185
80
113
91
78
72
64
156
96
130
152
85
80
120
110
121
137
119
112
80
140
116
87
120
81
148
87
109
88
99
90
110
80
128
103
172
85
69
125
88
104
175
113
122
155
76
80
130
175
78
94
115
74
157
87
64
118
154
160
78
164
114
107
148
101
79
120
93
136
72
69
169
89
78
163
91
109
141
69
87
102
133
115
101
201
80
178
116
128
75
110
91
90
131
76
119
99
87
127
93
78
66
87
80
43
130
67
143
131
175
88
101
134
93
146
89
140
126
123
69
156
187
169
143
88
57
78
151
80
72
83
78
80
136
91
163
164
117
96
69
85
78
99
126
78
88
125
43
146
104
109
144
137
127
80
106
80
87
80
160
120
104
78
112
175
151
92
69
109
134
102
156
103
131
109
80
119
54
80
72
140
104
120
64
120
110
69
141
175
183
128
93
69
69
106
102
78
143
69
128
103
175
87
130
83
94
156
80
143
101
94
74
172
120
175
110
148
121
69
197
163
76
52
89
148
109
102
63
159
80
128
132
143
83
175
109
154
111
97
91
93
80
106
74
122
163
85
80
69
134
76
96
175
88
143
80
128
104
80
144
120
111
87
74
76
114
99
99
91
141
154
142
78
199
112
133
94
87
80
166
78
78
164
98
130
87
155
67
140
119
97
91
154
197
166
74
67
109
78
106
93
52
110
100
83
88
76
59
93
80
129
142
140
78
89
80
120
99
87
128
109
106
124
68
87
106
115
148
154
69
140
78
151
127
106
91
111
80
101
143
164
89
125
120
102
87
79
72
78
118
96
54
109
160
87
117
112
87
69
130
76
80
201
78
89
120
149
130
151
101
104
87
197
80
103
89
104
143
162
96
69
119
85
117
104
87
93
146
128
80
76
119
69
104
78
52
133
122
114
134
83
80
129
145
69
99
80
80
96
150
104
107
107
119
154
116
128
142
98
80
101
120
76
76
69
122
80
78
75
69
69
88
80
120
89
101
105
99
124
134
69
144
80
76
137
175
96
93
122
140
117
124
79
201
76
91
69
135
140
129
89
72
120
130
137
107
121
69
142
126
104
113
80
76
107
62
87
72
117
129
78
172
69
76
145
119
104
87
130
157
113
93
123
69
99
76
80
123
87
123
72
56
138
73
119
121
110
54
153
120
80
100
72
113
78
115
119
69
103
80
112
154
119
101
76
89
76
131
80
109
126
89
80
155
80
91
155
107
87
82
94
119
151
80
123
90
109
106
111
69
76
80
78
90
155
137
85
110
160
88
145
99
78
91
91
162
80
95
120
80
114
80
103
76
67
69
80
128
136
74
137
69
89
101
88
95
87
87
80
96
90
99
121
175
117
89
123
72
78
187
150
74
79
109
87
183
175
78
120
120
78
183
69
80
69
140
80
120
110
183
119
91
151
76
128
120
155
75
91
76
139
69
139
114
52
76
119
132
123
110
128
108
109
120
87
83
127
75
109
101
80
80
101
107
126
80
119
105
109
79
104
114
175
127
80
102
93
121
140
88
112
129
133
183
59
69
154
109
175
105
80
69
128
119
120
87
96
121
94
129
128
110
66
94
91
98
96
133
126
121
104
112
175
115
127
97
119
87
87
163
94
78
76
69
85
91
101
60
144
134
175
120
151
154
151
83
155
69
104
109
76
181
146
93
93
129
93
146
78
80
69
78
99
78
80
154
56
109
69
138
80
121
120
92
100
107
185
71
181
87
80
91
105
69
128
88
69
112
183
93
76
137
107
74
76
109
106
146
98
78
83
113
152
120
121
199
128
78
135
163
145
136
97
125
76
126
78
112
99
75
98
102
88
133
112
126
64
148
127
111
113
99
107
80
152
102
76
110
109
124
87
69
80
156
160
185
106
92
93
154
87
69
106
87
80
127
126
175
107
112
89
69
94
107
132
117
134
96
141
121
120
82
78
95
118
119
95
99
134
67
88
76
80
111
134
93
128
78
76
132
153
69
175
80
126
117
122
128
87
88
126
103
95
88
87
110
154
104
67
112
80
89
104
151
110
69
119
140
121
76
93
122
108
172
97
80
85
80
140
99
110
78
128
128
88
87
90
104
80
99
92
90
124
119
123
87
92
124
89
87
96
128
69
102
124
92
89
120
136
104
146
112
102
139
133
99
80
120
115
89
80
132
109
94
197
121
134
121
58
111
88
107
80
115
76
186
88
127
99
69
118
107
120
129
100
159
131
89
80
69
88
106
187
69
56
69
96
127
119
119
96
72
87
89
78
52
128
124
89
87
80
93
106
75
87
106
101
158
69
74
78
80
115
145
94
87
144
129
102
99
142
87
118
104
80
127
109
127
104
79
110
119
201
119
151
156
80
88
88
69
119
133
88
76
123
107
114
80
80
99
113
94
85
68
111
89
83
175
109
119
89
122
80
69
99
154
80
69
127
101
80
101
98
69
108
120
117
154
140
54
88
140
80
87
118
136
88
69
115
110
107
80
92
119
80
146
136
93
106
115
92
107
85
66
134
94
117
80
94
78
88
134
113
131
109
80
67
87
89
137
133
131
151
78
84
56
134
69
79
104
127
201
80
94
89
121
129
99
80
93
109
114
154
112
87
107
88
69
118
93
119
127
171
175
147
119
116
72
120
69
91
106
123
76
96
137
69
89
122
90
80
69
100
82
183
117
99
137
118
119
101
154
87
69
102
131
128
135
69
120
129
95
87
82
89
67
94
128
70
133
136
175
87
86
87
120
128
69
80
109
119
78
117
76
126
106
133
76
119
87
121
78
120
146
87
72
104
67
119
130
88
145
110
127
69
128
119
80
69
69
112
132
89
120
87
87
151
110
102
99
120
80
80
134
128
80
94
175
89
164
120
109
109
80
76
103
151
69
76
115
87
175
78
151
104
96
121
98
147
133
85
175
83
109
162
90
69
80
80
150
91
107
201
113
107
131
152
163
112
69
54
120
136
128
87
80
112
136
93
76
85
56
175
119
136
69
76
119
147
151
69
134
119
175
159
106
134
116
131
115
87
76
139
158
71
128
175
54
148
67
80
103
128
69
107
69
147
197
87
166
115
108
78
122
127
80
101
76
144
154
69
88
114
169
115
89
123
78
78
123
117
57
80
88
72
93
120
43
93
131
78
197
85
125
128
144
98
120
106
56
126
69
134
111
164
128
140
80
74
99
109
87
165
110
87
130
88
96
72
154
137
108
80
69
88
145
93
104
69
117
131
103
80
136
119
110
80
144
109
120
114
88
119
102
76
99
104
155
130
146
69
76
107
95
146
69
130
120
118
72
69
111
156
146
119
154
89
99
87
120
145
69
88
69
58
120
118
120
85
146
69
100
69
87
87
113
87
119
78
175
104
122
74
124
80
56
93
96
134
120
88
80
120
87
107
87
89
54
122
104
106
201
118
107
156
154
104
107
106
136
110
120
107
112
121
156
69
134
128
126
76
74
94
140
119
87
120
109
96
109
146
100
72
87
69
119
110
133
80
67
119
119
117
101
80
112
78
128
92
119
80
134
110
125
56
119
119
111
121
68
126
80
127
95
80
80
144
156
80
119
72
60
87
128
103
85
143
82
94
101
119
68
69
94
164
132
80
87
83
175
113
80
130
87
120
80
131
175
126
69
89
69
107
118
127
78
74
119
80
102
147
56
121
128
56
80
104
109
80
80
138
128
120
102
80
107
83
102
96
110
128
69
85
54
136
87
71
117
85
69
87
137
129
94
104
69
106
109
89
79
69
80
121
106
88
78
94
91
134
109
99
120
114
181
80
117
76
197
109
80
69
120
79
175
151
143
121
119
96
111
118
128
69
101
136
109
80
95
112
141
74
80
183
107
134
148
96
152
82
141
120
109
80
119
117
68
137
96
52
112
72
76
138
76
76
80
69
102
113
69
88
140
152
72
91
132
154
114
147
120
119
124
81
119
93
113
76
119
113
80
87
66
69
76
92
91
76
131
128
107
83
87
92
115
187
93
78
151
145
91
110
152
151
76
140
95
87
146
87
143
109
94
128
69
104
78
88
112
120
107
153
90
119
110
78
114
128
69
75
116
129
111
126
128
177
154
87
74
131
107
108
56
154
122
80
69
76
69
120
78
107
98
103
87
161
69
131
109
120
76
78
104
102
199
119
87
132
78
86
122
78
163
197
119
69
69
94
98
113
128
146
102
80
80
94
106
114
80
151
85
81
111
87
89
139
159
118
99
91
113
80
89
113
94
80
96
137
113
136
108
101
72
100
118
85
134
122
80
80
110
76
78
155
80
132
58
145
76
99
118
151
119
174
88
111
120
112
78
140
69
131
76
107
112
118
146
119
83
78
98
146
119
127
104
80
98
78
89
114
131
89
87
120
80
137
125
76
89
99
124
69
76
125
140
148
69
89
89
120
120
105
87
78
119
78
93
110
64
69
112
88
134
133
154
120
78
197
131
69
91
129
113
91
119
69
96
80
140
154
99
163
80
101
128
69
128
90
101
93
93
99
128
80
164
117
154
99
80
80
131
175
134
69
154
78
93
119
87
110
69
88
91
134
87
119
127
143
80
93
175
106
143
119
69
89
148
99
72
134
134
154
120
131
107
87
160
99
112
109
110
128
56
69
87
119
83
94
80
114
86
69
89
80
119
80
110
88
87
69
126
133
104
56
88
69
99
110
118
154
128
91
113
123
109
136
87
94
69
183
146
76
99
52
163
122
78
137
140
85
87
94
96
136
69
113
140
154
137
114
85
130
113
90
109
101
80
52
69
119
76
78
69
132
69
104
69
99
103
101
197
80
114
113
126
69
124
124
99
85
69
155
69
119
69
140
94
80
88
93
92
123
80
87
154
126
96
72
80
120
154
102
156
87
163
119
91
197
120
52
151
110
78
129
78
102
141
132
89
128
128
121
80
76
67
102
85
139
106
154
67
93
128
109
60
197
106
80
127
56
78
78
69
87
134
174
100
69
80
80
119
101
43
128
68
119
76
69
122
175
128
122
115
85
95
119
102
104
76
119
136
144
98
104
130
109
93
130
93
87
112
148
80
109
87
123
118
119
109
110
155
105
80
78
106
99
76
71
88
96
56
76
80
120
151
69
88
91
140
69
78
132
69
93
64
146
144
152
79
121
133
87
89
80
175
130
72
183
124
105
94
69
101
160
136
107
133
106
175
117
80
105
69
67
78
80
175
132
154
106
76
69
134
104
87
69
80
128
92
80
87
72
71
159
88
96
87
80
88
140
95
120
85
102
166
99
175
104
147
85
122
175
109
115
88
88
108
110
143
101
104
128
118
117
74
133
76
155
106
99
107
98
104
88
85
69
119
80
78
100
99
83
122
118
136
136
95
80
87
56
87
82
136
87
154
117
87
128
106
94
120
145
134
134
69
80
136
121
128
93
175
104
89
93
105
73
72
127
78
126
156
88
89
89
151
80
89
134
80
110
88
101
144
80
83
136
78
110
115
120
175
72
131
151
113
64
82
98
56
80
165
85
113
120
63
99
78
136
69
78
128
127
114
119
97
104
107
109
145
170
101
156
121
82
102
83
110
111
85
101
85
80
118
119
151
127
174
72
107
80
151
78
120
109
175
69
101
94
76
78
118
151
110
80
158
80
69
128
141
126
80
120
137
163
56
109
146
134
140
94
111
102
96
127
159
66
172
134
89
66
128
154
89
87
76
69
78
128
104
80
140
56
117
54
122
78
117
91
110
69
131
113
114
72
126
109
80
109
76
91
107
89
106
163
93
96
83
89
69
89
89
80
78
112
83
78
76
113
89
87
119
117
140
143
80
98
76
78
88
119
78
109
56
101
113
69
78
176
134
133
87
104
100
69
87
69
106
76
144
120
69
80
91
155
187
69
92
107
175
80
126
138
69
69
138
123
118
78
136
87
75
76
147
120
128
128
69
78
72
134
110
134
99
110
52
80
69
83
107
64
107
76
110
156
154
69
94
80
156
124
78
78
199
80
103
76
154
129
107
143
99
119
119
91
87
132
72
74
122
125
112
164
121
112
123
88
101
66
78
76
115
76
109
163
99
113
99
69
76
134
145
76
74
129
99
89
98
118
101
87
78
92
87
98
112
155
78
98
101
91
120
107
87
93
87
115
154
120
128
83
121
94
136
78
164
80
154
151
107
69
100
107
138
76
118
151
52
104
96
99
76
94
119
72
120
123
43
119
107
157
142
99
93
76
121
113
80
115
107
80
110
145
154
69
113
88
52
144
112
197
107
120
88
136
156
137
128
119
126
66
160
147
98
99
89
120
76
133
120
115
78
117
136
80
69
142
201
78
112
76
102
106
94
75
114
80
110
99
69
89
146
111
143
119
94
89
140
121
74
148
76
100
78
124
157
72
137
87
109
134
121
117
160
121
155
110
131
87
131
80
131
102
118
95
90
155
120
87
113
117
117
121
107
78
109
128
80
69
137
100
109
89
150
140
69
134
112
145
102
112
104
80
157
121
100
80
136
181
80
80
85
155
87
110
119
107
122
52
106
156
109
117
107
88
91
87
149
82
69
117
54
121
119
87
149
118
134
109
118
107
99
56
88
127
89
163
160
120
121
96
130
79
172
105
76
75
103
78
147
100
78
106
66
80
78
120
175
129
111
81
101
138
137
78
154
154
110
87
80
96
76
165
171
112
76
69
107
52
96
99
114
119
83
115
112
95
76
113
178
80
76
80
87
112
120
99
80
43
86
107
121
121
149
78
91
76
128
143
145
118
124
142
163
93
133
80
115
128
107
117
120
119
99
119
87
103
60
78
93
201
69
154
93
140
110
151
80
80
87
140
91
93
103
76
93
117
124
155
88
129
106
85
99
137
98
99
134
163
78
146
80
124
95
104
197
69
102
120
121
122
87
101
119
94
78
164
132
72
82
88
103
80
85
121
89
129
80
117
100
80
102
156
134
119
150
124
128
80
103
128
127
125
130
140
76
136
90
92
105
125
99
128
154
120
78
96
87
134
54
75
151
81
110
121
109
90
123
90
144
134
156
119
120
66
78
104
146
76
120
110
120
125
104
69
131
78
80
140
80
127
80
87
87
107
87
146
154
132
152
75
101
156
69
131
175
80
80
126
69
140
86
107
120
94
130
120
104
106
80
119
78
96
100
119
144
98
99
87
120
112
78
69
81
113
80
175
74
110
156
120
115
76
154
128
102
131
175
131
103
102
119
69
123
76
103
96
175
79
76
154
76
123
109
80
120
145
112
76
94
113
69
174
93
99
74
98
80
143
154
143
106
104
105
110
154
128
114
80
87
80
80
115
119
88
104
76
69
137
148
80
89
151
80
146
130
119
154
201
127
121
174
104
143
80
94
128
134
140
80
140
96
101
73
145
69
126
90
160
52
85
154
69
89
143
109
99
111
80
76
100
134
74
85
112
69
119
78
69
123
152
78
89
89
78
138
91
99
154
74
80
69
80
136
104
83
72
87
94
96
56
120
80
106
119
120
106
52
94
124
131
107
68
91
143
120
82
99
111
113
96
136
69
125
110
131
95
99
69
118
134
80
117
134
89
102
101
128
79
110
69
107
67
94
112
137
136
151
91
74
119
154
78
162
145
87
109
127
152
66
56
96
148
128
110
155
87
69
100
183
119
105
109
76
76
160
110
107
90
75
126
145
87
88
151
119
87
56
144
117
112
74
181
104
89
109
78
64
78
92
91
120
153
118
74
69
99
107
175
88
143
106
43
110
78
76
80
156
101
118
142
134
70
76
129
151
76
88
80
134
95
93
120
69
146
112
145
88
160
120
126
175
54
78
69
80
153
122
69
134
123
147
89
80
143
124
124
138
114
120
113
72
134
128
104
112
154
88
87
120
121
108
103
69
93
118
109
84
143
80
88
119
87
104
60
89
156
95
175
87
155
142
82
113
94
80
166
107
80
80
89
76
140
69
101
89
154
87
121
142
80
104
109
112
175
78
136
128
80
127
140
163
111
164
110
52
107
131
100
134
131
121
125
110
80
137
80
110
197
80
156
148
189
69
88
113
112
110
54
175
106
119
175
117
120
87
52
69
98
117
147
78
104
76
103
107
138
117
109
100
117
76
127
87
69
85
78
87
121
91
131
123
59
80
109
87
78
115
102
128
76
112
119
80
76
114
80
121
96
87
125
69
91
128
96
99
101
90
79
88
106
125
99
155
76
121
108
133
87
109
69
93
155
164
137
109
116
80
78
155
76
94
118
89
78
115
85
87
146
113
114
80
117
107
106
89
67
76
89
181
121
128
129
136
88
106
128
69
94
78
117
134
197
87
175
80
88
118
93
110
118
102
112
152
140
150
115
119
91
106
69
101
146
117
137
104
107
89
78
109
146
80
153
91
146
106
76
175
127
128
120
136
76
197
107
72
119
143
54
87
118
76
80
87
136
87
69
69
92
120
197
197
80
89
156
104
182
80
107
138
107
78
125
78
113
113
120
112
69
89
154
144
78
54
99
76
136
154
155
87
74
80
68
88
144
130
175
143
109
115
186
104
64
129
80
175
163
125
109
121
140
80
155
123
103
111
134
72
126
69
87
89
107
116
71
140
94
69
114
74
130
128
94
64
99
94
80
90
129
80
78
82
56
66
107
80
114
154
130
78
88
133
94
103
88
115
80
87
128
87
106
117
72
72
99
140
98
110
175
69
78
107
87
88
140
113
123
112
112
87
91
127
80
148
130
78
197
94
117
80
136
89
69
113
89
136
153
100
120
80
89
107
99
67
74
124
127
102
118
149
111
119
143
69
134
80
95
92
130
92
72
80
119
146
69
121
121
78
99
142
89
93
107
174
80
56
80
102
131
87
80
80
83
102
69
69
111
98
121
92
161
142
91
199
128
78
89
96
94
93
108
69
111
127
69
132
95
120
153
115
112
148
91
83
131
80
69
175
107
80
128
69
52
80
132
109
107
170
87
54
80
80
78
96
109
111
124
128
146
99
119
122
175
155
69
54
154
83
153
151
129
87
120
78
119
109
110
95
112
103
87
122
119
136
76
110
78
92
89
68
106
144
69
96
94
98
88
101
110
69
128
94
131
112
123
85
124
94
69
64
112
69
69
107
104
89
79
80
118
109
148
93
80
113
69
145
112
121
43
96
106
88
74
93
151
164
72
104
129
80
120
136
74
107
80
91
76
151
78
86
82
117
151
69
137
94
54
130
119
126
175
78
80
107
76
89
106
56
99
113
131
134
80
80
101
89
87
125
87
74
116
127
56
151
76
104
56
121
96
112
117
151
87
74
76
82
80
72
109
106
87
107
107
136
112
69
69
124
124
88
113
103
157
80
107
118
80
97
107
131
104
99
99
72
93
87
100
110
69
109
69
110
103
69
78
133
119
87
137
87
117
90
106
155
144
140
88
104
153
119
120
140
96
136
91
82
121
91
74
104
69
52
113
130
97
69
127
63
128
69
150
160
101
68
78
128
101
131
110
80
137
69
122
77
78
90
109
162
91
119
138
117
94
156
80
134
110
67
93
92
108
78
112
110
128
112
111
69
76
88
69
102
80
80
80
112
152
69
78
89
118
104
93
89
80
80
129
139
99
93
111
109
126
93
74
72
96
72
95
89
115
69
164
109
119
97
123
123
76
164
166
106
104
135
111
87
175
127
88
69
88
132
80
102
137
95
133
160
140
80
152
69
73
119
78
154
151
151
88
52
87
54
122
110
93
87
120
134
95
111
117
87
92
99
148
121
76
113
119
197
127
94
113
69
87
76
148
119
144
139
78
134
78
78
119
136
124
80
148
76
112
120
100
109
104
109
112
109
69
165
89
165
103
131
90
73
72
87
156
131
87
80
121
123
100
134
78
85
127
126
131
43
69
110
120
106
91
120
123
69
131
69
119
175
117
97
127
87
146
129
76
68
98
80
88
76
80
120
120
80
163
102
89
69
127
124
93
99
111
109
101
114
143
136
69
175
80
80
127
137
88
121
110
124
69
82
123
93
94
87
101
175
85
94
119
148
125
112
104
175
123
69
154
154
108
91
104
121
175
96
115
131
114
69
154
93
107
134
120
87
107
112
117
90
107
99
123
93
175
120
120
99
136
163
78
163
69
112
128
69
104
154
135
109
87
78
137
107
136
115
146
69
156
127
80
108
91
107
96
118
119
106
101
113
121
103
142
128
121
132
153
57
163
118
124
83
117
80
126
94
78
145
106
80
80
127
79
115
133
106
128
80
94
117
76
138
92
119
87
110
132
54
90
131
101
110
120
117
52
109
128
99
113
113
112
138
76
80
151
76
82
107
91
95
72
134
154
122
87
76
156
122
107
159
134
99
87
138
69
76
69
115
69
101
90
87
98
143
148
112
123
106
106
87
88
89
136
80
103
120
109
80
80
142
101
80
120
99
117
108
78
80
76
99
120
88
107
109
93
143
116
128
175
110
124
175
69
119
109
119
75
126
128
89
80
175
122
69
121
76
78
151
99
87
78
148
95
110
76
72
66
107
78
96
120
104
197
80
93
131
129
143
100
69
87
154
80
151
80
87
175
145
139
89
107
79
54
98
107
117
99
136
88
94
103
174
87
80
80
135
119
133
107
87
110
119
69
136
121
69
88
104
156
154
78
142
151
76
74
119
88
87
78
103
80
87
185
69
119
113
88
156
100
72
89
67
80
128
96
128
120
93
54
110
78
94
146
113
103
175
96
132
128
76
126
69
165
83
197
96
87
69
128
99
119
134
157
109
80
146
87
90
95
148
120
96
134
80
175
94
94
93
92
154
154
80
80
94
126
119
140
89
56
69
103
106
76
80
121
148
78
119
119
119
136
87
75
88
119
94
93
154
82
85
96
92
128
111
76
110
88
69
150
115
69
80
136
78
100
109
69
84
102
80
102
104
154
80
123
110
107
72
106
104
163
69
111
128
117
106
101
107
110
134
93
72
128
118
151
118
119
129
69
78
131
85
109
80
88
88
122
110
69
120
80
119
140
89
80
99
88
110
117
99
110
80
78
100
72
95
111
80
91
69
83
94
119
155
140
82
87
87
134
69
175
128
80
69
153
107
69
92
69
142
106
92
98
152
175
175
110
69
69
110
95
174
103
100
74
144
104
127
134
113
145
78
131
134
110
201
160
52
93
103
71
106
107
97
151
69
162
145
117
111
102
101
147
148
106
69
102
96
110
106
119
87
151
104
80
124
78
89
94
80
87
94
93
96
69
107
104
99
81
81
170
120
121
120
119
110
103
92
87
72
119
121
88
100
102
70
78
72
76
99
128
78
54
156
203
104
118
99
154
110
72
102
128
80
80
56
100
113
99
105
91
85
145
100
80
157
99
98
99
80
106
80
109
122
87
140
107
80
110
94
114
119
67
120
80
128
115
76
72
91
104
99
87
122
134
133
114
134
116
134
80
107
175
85
117
76
80
136
69
113
107
113
128
117
76
119
64
94
69
101
80
80
133
74
136
69
75
95
124
101
87
156
185
69
114
175
76
89
103
56
80
64
140
145
121
127
115
129
72
99
104
87
128
79
99
101
114
92
69
69
96
94
74
66
197
89
78
175
113
80
119
76
113
85
120
111
80
83
80
73
129
88
69
80
101
100
133
112
101
88
107
120
140
106
127
101
133
89
181
124
112
94
87
101
74
109
117
142
95
90
71
154
145
89
122
78
69
69
69
140
129
78
151
85
110
104
99
112
136
87
134
73
60
88
85
108
88
110
78
131
144
126
118
175
74
80
89
152
106
74
89
110
106
96
99
155
80
88
137
117
80
87
126
80
76
104
80
121
78
100
183
100
80
79
72
80
99
75
101
90
99
80
143
149
113
80
113
134
134
88
100
145
87
128
69
109
129
201
78
149
165
74
109
110
60
129
109
121
175
80
111
67
87
107
64
101
88
109
74
83
159
88
127
142
76
121
98
88
154
98
119
121
113
75
104
120
94
150
80
134
122
147
95
87
107
91
100
87
127
129
154
131
148
99
131
120
89
88
123
175
154
88
67
91
134
89
69
66
80
175
138
96
76
80
69
120
99
137
109
80
78
78
76
78
80
110
156
154
163
80
113
118
128
175
136
136
69
124
133
140
114
152
96
100
87
197
121
154
76
78
82
145
99
87
130
87
78
87
80
87
82
80
110
148
69
123
165
106
118
69
136
80
78
134
109
94
88
99
72
136
121
197
151
140
153
80
104
112
157
119
99
119
74
118
88
150
74
78
120
85
134
133
107
105
78
139
69
134
104
131
69
155
131
99
119
80
69
110
98
121
109
151
74
80
54
164
69
87
106
127
106
134
76
80
89
85
76
54
126
80
109
140
112
80
111
100
109
110
110
80
121
115
69
94
69
78
77
87
85
156
120
69
175
107
134
80
127
131
80
89
102
69
136
71
154
76
80
87
120
120
112
94
154
76
104
117
125
141
151
128
80
100
139
69
96
80
123
88
113
136
76
94
80
167
105
96
163
87
131
99
90
175
66
140
80
78
153
76
128
89
80
80
111
141
197
131
175
79
78
119
121
80
109
160
80
80
119
163
156
94
102
111
102
87
89
94
69
89
69
113
115
69
135
104
118
99
134
156
78
169
121
52
154
76
154
111
136
119
80
94
135
66
100
101
91
140
111
165
72
80
140
181
87
197
133
106
80
102
144
52
120
121
120
80
119
99
69
89
64
85
80
88
74
157
116
120
110
87
128
104
197
147
110
80
74
94
156
69
175
93
119
120
146
120
152
133
136
93
151
120
175
118
131
80
116
87
80
99
128
78
94
91
109
136
98
80
102
137
72
162
106
80
134
80
140
155
158
69
123
106
80
175
137
78
96
69
143
183
87
104
80
80
69
80
120
127
87
89
80
129
96
124
194
106
80
100
85
99
76
120
78
175
109
159
209
87
140
88
88
128
93
80
133
94
147
110
119
162
99
78
127
80
80
127
78
80
156
76
143
83
87
96
69
124
102
107
80
123
132
69
183
80
94
109
120
100
131
154
113
80
125
110
120
109
142
128
54
72
163
137
89
120
155
80
84
69
69
124
104
163
82
131
103
95
156
69
69
131
94
107
69
130
120
94
100
89
127
154
197
106
187
134
91
99
144
115
69
87
101
86
119
143
155
96
97
121
165
155
187
107
145
88
134
175
155
104
121
114
128
125
119
99
155
78
125
69
69
122
133
151
107
144
80
98
136
69
131
98
80
89
146
121
87
90
107
140
87
136
136
87
119
106
109
111
79
133
120
80
87
119
175
113
131
94
164
80
69
74
148
126
74
99
69
69
87
96
109
69
93
87
133
134
107
134
80
130
128
117
120
93
99
106
76
69
85
87
120
80
156
135
91
104
119
90
132
121
128
114
99
67
113
146
119
80
87
120
105
110
99
87
88
88
144
109
109
111
59
123
123
134
78
98
140
140
95
109
91
78
145
78
113
120
76
155
88
155
76
87
128
80
134
146
109
119
78
94
102
117
156
124
76
87
131
109
54
149
69
107
87
128
88
78
88
76
117
80
111
133
80
89
80
80
74
76
152
147
88
95
76
95
80
109
148
98
145
100
102
80
80
102
94
104
69
90
80
76
94
80
104
80
107
67
83
100
152
107
74
128
94
164
146
110
69
183
69
80
127
156
119
87
87
175
128
80
120
131
136
118
155
72
69
69
76
95
80
137
145
59
83
97
78
80
88
93
111
120
133
101
136
99
133
114
101
130
104
107
113
94
110
93
104
58
147
80
76
105
105
104
80
80
96
106
112
148
88
160
87
87
76
119
80
126
69
164
137
136
118
81
69
142
139
88
100
78
185
121
80
83
80
111
76
80
86
112
112
104
87
68
78
107
83
96
69
151
74
117
160
155
140
123
69
154
127
43
136
134
95
122
127
109
125
98
104
155
76
148
94
78
93
92
78
99
109
76
120
71
109
96
131
91
107
120
69
149
107
142
125
69
120
80
120
131
69
144
87
89
88
69
107
93
131
69
52
125
112
119
117
149
107
151
90
89
118
69
89
121
120
143
103
89
80
88
96
128
87
78
114
136
76
157
143
146
69
99
119
69
133
88
80
87
146
66
88
80
140
80
80
80
142
69
99
118
103
80
130
175
109
74
119
136
80
101
84
74
126
119
80
154
76
87
89
137
107
175
126
156
100
80
80
91
74
81
87
124
154
122
115
155
123
120
117
54
128
69
80
78
199
103
123
91
102
113
126
91
123
98
67
118
88
127
96
102
107
109
136
76
118
72
80
110
128
93
100
134
155
116
67
120
120
91
175
99
107
99
99
150
99
67
69
89
197
110
91
69
118
91
108
76
80
72
101
117
52
111
175
144
69
196
89
103
93
74
131
107
104
69
72
91
172
94
128
93
89
120
134
72
66
146
80
69
69
102
78
114
119
120
132
87
78
112
92
113
69
94
69
80
76
114
131
128
120
114
87
99
100
98
119
83
120
100
128
144
132
109
80
87
113
76
110
142
89
69
156
87
91
122
146
100
126
132
104
119
110
80
137
88
69
69
131
120
107
78
69
119
89
78
107
88
106
176
54
80
113
87
95
69
91
154
80
117
134
127
120
123
140
85
67
110
201
78
87
78
112
130
110
80
122
121
120
69
80
87
115
76
78
118
56
90
71
127
110
95
72
105
137
101
87
69
80
138
212
76
80
87
110
72
187
80
125
147
109
142
148
128
156
174
136
101
110
76
126
80
164
120
69
54
80
134
109
93
69
115
91
125
134
89
80
127
111
127
134
76
80
97
80
175
109
96
87
78
52
197
95
69
80
103
107
76
98
140
95
80
93
197
102
104
114
117
121
145
80
80
89
101
110
112
80
101
87
109
78
79
119
150
76
148
69
87
120
90
107
78
59
78
69
127
80
69
94
80
89
115
108
117
100
151
183
78
102
106
91
69
76
139
112
174
127
80
175
111
99
121
87
80
99
143
78
89
80
78
88
115
151
94
148
90
128
102
80
102
106
130
128
69
99
82
117
145
109
80
103
80
80
83
96
90
107
106
175
87
134
87
113
99
99
112
71
87
72
127
87
154
107
117
89
126
128
80
127
172
175
181
87
80
69
80
109
133
136
69
90
69
126
156
99
87
102
119
69
154
78
80
69
119
131
87
72
76
54
112
175
93
99
101
96
80
93
83
163
109
110
114
72
100
100
136
87
87
120
154
76
120
112
74
80
87
75
80
91
106
69
87
87
94
71
134
143
88
78
154
136
137
84
74
154
87
163
110
69
67
131
69
80
121
119
69
175
118
120
109
54
120
69
99
90
124
115
76
89
128
75
122
91
93
69
99
109
80
151
76
94
143
89
144
80
131
112
156
80
54
87
118
107
130
89
109
56
87
67
134
89
126
201
96
104
107
101
87
99
69
119
87
101
137
131
111
131
87
146
76
69
104
121
73
60
126
94
128
117
153
145
113
94
76
136
91
122
137
120
120
83
113
156
96
121
119
146
101
112
87
128
100
109
96
78
143
72
87
106
110
111
140
80
80
90
176
109
201
128
54
72
63
175
124
76
88
117
87
80
87
109
76
101
102
94
110
78
165
124
64
106
121
94
101
80
69
117
159
127
78
87
72
72
145
131
88
94
87
123
75
78
80
103
98
93
82
94
166
101
52
124
160
80
76
89
72
117
58
119
60
80
115
69
80
146
78
87
99
97
195
107
106
117
52
131
95
109
128
80
117
80
119
76
69
183
133
93
72
69
154
56
143
81
104
120
114
93
131
131
80
164
80
156
134
156
85
131
109
74
87
87
76
101
112
119
107
146
122
112
114
136
139
94
80
93
120
74
128
149
120
109
150
147
156
154
132
109
132
78
80
175
99
159
87
78
76
69
81
128
175
80
132
128
131
119
146
90
89
139
85
132
113
80
109
199
119
146
78
80
120
104
87
160
67
56
131
69
131
102
85
118
105
181
88
80
113
106
75
120
102
98
134
131
80
93
197
78
121
164
197
99
69
89
97
88
78
106
69
95
74
83
109
156
107
156
108
58
95
89
101
155
146
83
78
110
92
116
146
175
164
72
80
104
94
117
163
144
121
116
69
137
152
78
156
118
163
101
119
80
124
80
155
107
140
98
104
69
85
104
104
100
107
89
122
69
120
156
54
164
157
76
80
138
137
83
134
113
76
88
131
135
94
90
52
107
87
127
102
99
69
71
132
110
91
80
75
72
142
85
112
120
113
120
80
139
127
137
104
107
78
80
87
110
101
102
156
108
94
76
80
135
80
142
128
93
72
80
87
134
80
158
87
103
117
113
137
155
129
104
74
80
97
68
151
79
77
130
76
80
108
76
109
117
80
96
106
80
76
97
93
126
175
101
123
80
80
114
101
102
109
109
69
95
76
96
115
163
129
154
111
156
117
144
85
80
87
78
109
117
88
80
80
95
175
78
140
111
107
144
87
92
113
88
107
91
120
87
80
69
126
52
78
155
136
109
133
69
107
133
134
92
80
108
136
88
105
69
93
76
169
121
109
142
103
107
164
112
113
78
66
76
117
91
80
91
156
96
109
81
76
78
104
109
120
89
113
95
99
138
93
111
76
121
80
137
152
80
131
131
69
82
69
147
107
89
85
78
120
87
104
111
80
109
133
101
132
107
96
136
66
91
79
104
139
175
80
110
143
134
106
124
78
72
117
69
111
119
75
127
117
76
197
69
189
140
69
80
76
99
114
89
78
175
92
178
76
71
87
88
72
126
69
112
119
80
94
93
124
82
155
155
103
152
91
97
151
69
80
110
94
69
109
131
80
78
89
77
91
150
122
76
119
128
116
119
107
113
136
69
144
89
94
136
116
120
68
115
103
154
119
151
96
91
69
88
146
98
134
125
107
99
85
67
109
133
76
88
128
127
80
69
101
122
88
127
116
90
76
131
181
109
67
119
113
201
127
96
131
124
80
120
137
76
145
120
89
175
109
116
164
131
119
148
76
91
76
119
101
151
110
119
111
109
75
134
69
125
113
101
80
73
80
124
132
76
124
109
85
107
131
151
110
72
119
88
69
80
154
125
120
69
69
107
80
119
100
113
110
130
69
83
127
119
154
146
104
96
80
131
88
88
89
175
120
114
99
135
87
119
94
102
119
102
99
88
67
102
80
78
112
144
69
109
69
161
69
110
94
119
119
143
156
74
99
145
120
87
104
87
109
94
150
69
107
115
107
89
67
73
118
147
111
113
87
87
113
132
69
72
156
69
74
118
94
106
91
122
74
80
113
122
96
95
113
96
137
120
69
87
93
69
78
112
74
85
114
88
69
113
175
201
109
121
87
72
78
175
89
101
110
126
96
110
87
87
83
133
59
100
119
96
87
126
80
87
94
104
78
136
90
69
155
164
145
90
97
143
121
119
102
90
138
80
76
147
175
80
92
119
128
87
151
72
149
76
122
69
110
118
120
69
72
85
56
117
117
88
169
107
69
69
93
151
99
82
93
91
80
87
80
87
76
69
80
101
154
148
52
175
175
140
106
69
94
136
96
78
135
75
80
101
120
128
128
145
118
121
109
166
78
95
78
134
110
56
115
104
88
137
112
134
120
69
148
76
120
87
120
120
107
134
74
124
109
95
93
125
72
128
136
134
119
88
110
69
165
82
87
107
104
73
97
98
93
79
120
90
80
126
121
94
87
145
96
128
124
75
140
152
76
103
89
117
197
99
115
89
83
92
113
76
97
120
94
68
96
69
82
78
102
78
80
78
111
164
119
78
118
72
87
69
119
57
157
117
99
89
107
80
104
76
120
103
104
106
69
109
87
109
107
159
89
80
59
143
95
109
112
130
83
113
76
137
155
109
69
69
113
95
120
120
109
99
119
132
77
136
112
106
110
96
123
80
131
120
101
163
74
116
119
140
131
99
133
120
175
118
69
80
131
89
101
75
74
71
100
113
112
121
80
156
84
93
145
143
76
98
104
110
104
76
89
131
99
99
84
74
126
69
72
183
80
127
119
137
119
110
87
103
71
87
175
144
88
118
160
106
181
78
140
78
112
120
155
58
126
93
119
87
92
144
88
79
89
113
88
122
165
106
67
88
197
175
80
145
87
127
76
136
88
119
109
110
112
94
130
93
78
88
98
133
122
68
183
96
119
119
118
175
69
120
175
131
138
197
76
76
69
134
106
138
103
102
108
120
80
114
121
87
130
120
113
123
133
126
78
93
124
197
107
113
189
72
102
116
112
87
127
133
80
102
104
113
90
76
88
87
127
107
88
144
104
87
85
111
92
78
164
99
197
78
134
111
107
82
72
140
185
69
136
133
80
157
72
87
85
120
104
98
89
123
127
118
87
57
131
131
94
165
94
107
151
118
69
119
103
154
88
112
76
132
94
131
140
72
81
115
67
101
154
106
119
88
136
78
134
76
87
155
103
174
110
87
69
113
89
146
78
140
183
113
133
72
104
113
131
87
98
175
99
197
78
94
89
121
69
76
80
91
99
52
133
94
132
141
109
114
144
87
88
59
78
98
80
78
87
131
102
93
140
80
78
80
91
80
99
154
144
99
99
69
94
131
80
163
56
88
137
106
101
79
88
141
88
140
110
154
112
133
52
131
154
151
112
69
115
134
82
104
99
64
88
80
129
117
108
76
69
163
119
99
98
107
80
112
146
87
109
89
118
105
87
81
93
94
78
127
122
80
109
93
110
119
99
96
151
98
163
138
80
96
87
95
80
116
136
113
66
110
120
104
78
69
80
86
112
122
154
123
87
82
94
54
99
78
110
99
90
87
111
87
94
128
121
87
54
91
80
140
117
102
175
103
137
72
76
89
128
107
69
131
76
72
87
175
109
69
154
104
109
134
80
163
78
87
87
69
80
107
98
76
118
99
111
104
89
91
54
99
88
123
115
121
127
69
119
121
118
120
85
121
101
93
78
109
80
82
87
52
69
151
87
120
152
104
107
120
87
154
78
74
139
96
104
113
110
101
78
89
101
154
139
80
113
82
119
80
112
88
56
80
76
106
83
121
143
78
89
71
95
110
69
69
89
87
150
117
76
87
104
56
104
118
109
146
164
72
87
72
92
118
107
155
72
114
129
131
110
118
114
112
122
117
175
83
96
99
137
52
52
127
69
145
88
117
120
107
136
88
69
155
99
120
69
106
132
136
96
94
121
156
112
155
103
175
113
87
154
107
139
102
69
175
73
69
94
163
89
76
115
100
111
95
107
80
155
89
99
69
131
76
137
110
108
80
136
69
175
153
78
117
119
138
112
104
140
128
79
134
120
119
115
98
80
87
143
75
119
119
80
56
123
102
112
87
88
175
155
176
122
95
69
156
113
52
89
78
105
112
99
142
107
131
176
80
80
129
112
107
112
91
156
152
54
80
146
80
115
80
78
91
98
117
131
119
56
102
85
91
106
96
121
164
119
89
99
110
154
124
140
80
120
91
80
156
124
76
80
69
197
80
78
128
88
115
80
94
147
117
117
88
141
120
80
76
112
110
137
93
112
89
88
131
73
90
201
69
89
120
154
77
122
122
111
152
127
92
110
128
128
78
111
80
80
155
154
102
103
121
121
93
93
117
156
69
107
145
109
111
109
129
140
131
121
91
124
107
138
54
107
78
109
93
72
78
107
151
80
88
120
78
175
119
76
136
91
125
128
128
118
106
98
83
57
113
126
107
144
87
151
174
124
76
54
87
100
134
109
163
102
104
99
154
72
113
69
118
151
69
75
143
83
138
69
69
99
69
94
154
136
107
127
95
106
110
115
94
104
152
100
101
128
85
134
54
156
154
94
96
101
99
118
107
138
110
96
87
88
197
112
109
79
100
136
80
107
175
78
76
146
78
80
69
107
88
99
117
142
108
78
131
81
100
86
107
56
115
115
64
115
101
87
101
115
72
69
69
88
140
123
76
174
164
119
174
110
78
105
80
133
93
54
99
96
120
69
87
106
119
155
126
106
88
107
120
140
72
91
107
94
115
80
80
87
69
185
72
106
80
99
123
74
78
118
126
107
119
97
123
95
94
109
129
132
136
121
80
112
109
113
140
155
88
99
95
114
163
138
197
117
155
106
85
131
121
129
76
105
110
76
66
109
89
134
94
113
56
80
125
120
87
72
116
120
78
109
111
100
106
106
116
120
78
153
69
142
115
76
113
143
93
117
107
76
107
110
80
120
134
100
109
80
119
76
69
78
77
67
98
88
122
143
113
66
94
101
92
89
98
54
175
69
147
148
107
80
119
134
88
119
112
151
148
80
140
104
99
76
87
144
88
89
69
93
156
101
120
80
80
112
80
78
114
129
121
66
197
94
175
76
136
69
94
110
130
136
83
94
80
69
151
145
80
158
103
80
80
120
76
96
154
102
67
117
103
69
134
87
154
78
104
69
106
112
106
109
80
54
121
94
104
52
96
113
119
146
91
111
80
66
78
87
78
80
118
80
80
199
94
89
80
109
64
89
143
128
136
197
92
95
108
74
163
117
78
134
117
140
119
154
121
96
64
117
117
84
109
95
120
112
89
76
98
99
87
74
87
78
83
135
117
106
87
85
74
80
110
88
78
118
93
146
112
109
136
109
80
113
87
91
87
139
136
93
82
91
80
78
80
73
91
99
72
104
165
116
156
95
124
78
86
123
69
151
52
119
130
143
80
110
107
166
116
92
80
111
122
99
69
88
102
119
134
110
91
66
106
121
93
156
104
93
147
108
88
90
78
113
136
119
99
69
73
80
77
146
120
120
171
71
99
87
72
125
111
71
94
127
100
101
127
76
87
107
106
123
118
80
80
80
80
107
110
109
69
150
175
80
121
69
110
69
69
120
87
113
136
113
80
165
87
151
106
56
145
100
175
120
124
126
135
58
128
80
104
78
119
66
110
96
171
88
80
87
109
69
119
57
107
140
134
156
83
126
140
80
60
144
76
88
95
125
145
94
78
119
87
119
103
140
112
80
106
96
109
120
118
140
92
133
98
155
118
120
107
114
87
113
175
69
104
151
106
78
142
89
67
104
96
87
197
96
115
102
83
175
113
69
117
98
78
115
112
52
78
56
102
80
76
118
80
124
131
154
80
113
85
111
175
94
76
78
69
121
147
110
112
117
69
87
121
96
96
127
127
83
154
135
87
120
112
99
83
115
84
80
150
151
130
78
94
72
119
110
87
165
96
145
120
110
80
175
85
89
99
80
102
76
122
120
128
120
125
69
104
97
78
88
146
54
78
120
101
99
76
76
128
117
76
121
138
113
80
92
127
106
110
149
72
94
128
122
82
80
94
100
73
175
128
115
82
119
83
142
106
127
143
118
102
80
155
144
78
164
78
107
122
90
76
137
82
93
119
114
80
137
96
134
78
112
100
82
83
69
161
120
116
118
117
143
87
103
87
120
85
144
93
107
135
80
69
160
110
102
76
90
121
138
78
76
131
106
56
80
89
140
59
89
197
127
72
111
72
100
139
72
75
115
145
80
93
101
87
144
96
119
69
100
119
80
154
87
87
107
100
80
107
80
100
119
113
72
88
74
114
194
155
114
127
101
136
116
133
137
78
159
144
104
118
119
156
175
154
128
147
76
128
106
88
93
91
128
93
59
80
119
151
80
163
156
87
99
80
101
111
109
112
146
94
54
103
120
151
80
119
88
131
69
160
80
109
125
104
89
84
118
119
151
74
81
101
89
128
119
106
121
156
104
87
60
87
167
56
106
72
123
165
122
132
89
80
80
69
119
66
80
101
119
133
91
120
69
137
140
85
111
69
133
76
119
69
121
101
137
80
117
101
83
105
125
106
131
137
131
93
122
69
120
93
98
94
134
124
120
107
93
102
99
134
88
87
80
134
154
131
156
140
110
99
131
75
73
91
117
97
181
89
106
76
104
109
144
150
103
157
89
93
76
140
96
87
87
122
102
69
115
150
113
131
79
95
127
175
121
131
154
107
123
80
87
89
107
102
118
87
129
175
140
109
119
136
95
127
78
132
69
80
118
123
94
69
99
74
73
102
134
69
118
85
154
120
72
131
113
128
102
64
94
107
119
109
107
120
94
117
78
150
130
128
120
102
174
99
109
166
120
124
78
99
127
69
106
94
154
88
69
194
99
187
99
119
175
121
125
121
117
109
78
111
87
69
119
115
147
199
87
88
76
107
89
80
166
139
82
91
126
76
87
102
56
87
88
137
76
69
134
80
80
151
150
109
91
104
80
87
154
175
114
69
197
69
118
128
71
118
132
80
118
160
133
89
134
104
119
156
112
110
121
143
136
94
128
119
125
54
151
128
82
148
143
128
120
99
119
69
146
80
107
163
69
114
92
110
104
95
104
76
80
87
112
156
82
126
132
100
122
69
128
78
115
98
100
80
172
101
101
134
96
93
106
124
60
114
56
80
125
91
120
164
106
83
113
87
94
121
106
106
93
107
110
94
91
134
117
143
54
87
80
96
87
80
120
87
127
120
120
76
104
128
109
119
120
91
87
76
122
130
116
69
150
78
192
149
106
110
69
69
69
103
79
123
112
125
123
123
71
146
94
87
94
94
113
59
162
85
93
163
100
131
109
119
69
91
91
201
119
156
145
110
110
69
154
87
140
80
80
99
136
110
112
76
154
87
142
142
127
80
115
197
132
106
89
187
136
84
103
72
99
109
88
109
78
155
110
80
110
80
94
101
88
141
100
94
72
88
69
109
76
154
120
54
69
149
113
134
76
120
137
89
69
100
80
137
138
128
110
107
116
89
104
76
124
128
88
96
69
131
87
80
121
91
175
117
126
89
136
87
134
131
89
123
100
136
138
118
197
130
75
127
183
121
131
104
80
117
122
136
155
119
119
79
117
119
76
119
112
74
114
115
121
88
106
78
125
78
69
144
106
87
142
72
83
116
109
69
78
87
104
80
147
102
94
87
121
101
81
80
181
104
106
140
80
155
87
110
107
181
119
128
112
103
128
136
107
69
160
80
83
80
129
89
66
146
129
76
89
151
106
80
137
120
109
175
138
128
175
69
102
112
156
148
113
151
148
80
69
128
69
118
134
119
110
69
128
109
129
107
89
109
120
100
141
80
93
112
131
102
119
78
101
98
101
114
175
175
132
149
94
99
54
119
120
114
87
109
176
99
99
87
154
115
100
145
132
140
113
113
80
80
120
88
156
87
80
76
119
82
102
76
136
87
95
124
155
102
54
69
146
80
134
175
103
175
117
119
117
80
69
102
146
122
103
76
153
97
131
117
72
185
107
87
80
99
119
78
74
106
114
110
127
76
128
80
134
87
69
78
68
136
156
163
117
80
134
80
80
76
96
156
136
175
69
160
137
128
69
69
113
128
118
174
76
118
109
104
144
80
87
144
121
91
113
128
101
99
94
69
69
80
78
131
121
163
121
154
154
162
111
107
166
154
91
74
109
101
140
201
67
118
89
119
183
69
197
69
80
91
120
106
122
118
153
105
104
114
134
112
93
113
113
101
69
88
109
87
145
87
161
94
54
111
137
80
78
88
109
96
140
120
102
69
105
126
74
88
113
87
87
175
100
148
54
78
130
183
118
85
104
103
94
100
136
106
80
126
92
80
107
136
120
140
80
109
107
78
99
128
103
106
78
130
100
72
136
95
81
157
101
87
80
76
107
103
69
131
89
154
114
90
110
52
90
120
114
127
102
83
119
78
131
120
144
87
104
80
72
134
83
80
110
107
99
78
69
130
159
91
109
114
135
80
151
109
76
78
80
80
123
78
80
80
107
118
69
112
87
74
112
136
121
88
85
115
164
144
69
95
78
175
78
110
197
155
80
91
183
64
104
76
80
87
87
101
150
94
122
136
71
87
72
80
76
87
107
76
80
99
140
154
156
78
79
87
69
80
154
94
119
131
113
128
109
156
106
80
69
143
69
80
69
110
104
117
128
109
87
94
78
85
63
123
79
96
107
88
80
82
171
134
56
128
175
151
93
72
106
134
119
94
104
91
120
56
120
125
120
155
109
78
131
139
195
102
69
102
69
78
132
69
104
118
69
93
109
87
89
94
140
109
69
78
94
120
128
78
69
56
90
124
78
80
88
72
163
76
113
120
104
80
88
153
85
72
89
119
85
134
148
107
129
183
119
91
102
69
197
136
154
130
107
80
89
69
133
99
136
76
115
54
119
117
154
72
142
104
87
104
140
80
197
155
142
116
128
107
128
116
163
76
175
121
88
109
118
111
88
93
120
87
175
117
86
87
80
120
114
107
125
52
87
115
127
69
109
134
109
104
127
151
88
107
147
124
134
86
163
119
175
121
151
115
121
137
81
127
94
95
80
54
89
120
110
87
156
133
76
201
87
102
130
83
104
72
93
78
152
107
134
120
80
104
118
131
96
106
88
74
75
119
132
113
106
100
107
112
76
128
111
164
56
69
175
78
120
93
98
109
123
96
172
115
154
128
99
80
108
72
106
80
91
91
146
186
130
90
68
102
99
71
78
66
89
110
146
104
130
101
163
58
152
54
117
147
81
91
107
101
109
104
107
118
96
113
127
145
91
124
114
104
76
94
136
109
110
69
128
76
104
99
107
97
80
112
110
129
114
151
136
175
80
143
88
69
80
76
80
80
107
131
96
110
89
87
109
128
107
80
69
80
129
88
127
76
78
104
76
94
109
127
69
110
111
69
120
96
104
154
80
120
117
100
72
120
138
110
71
94
109
87
69
117
94
85
69
93
112
148
69
101
131
98
80
80
93
140
119
80
106
95
78
96
94
133
91
89
201
156
94
87
103
80
113
112
113
111
80
69
77
100
117
109
76
102
134
112
131
103
68
135
143
60
112
117
113
158
80
119
80
107
107
115
93
121
80
143
108
184
78
69
128
116
80
80
121
56
131
87
172
111
110
175
154
67
132
104
129
112
80
76
120
114
54
119
131
123
119
80
78
109
78
93
80
101
107
107
113
93
102
94
155
112
155
80
69
132
80
79
80
121
106
69
98
128
123
140
127
143
87
124
69
58
78
117
83
147
119
108
121
109
80
109
112
106
69
78
140
78
136
113
128
54
104
110
107
120
54
69
120
143
106
90
80
128
95
69
128
80
85
80
96
100
118
136
74
150
69
109
120
120
69
145
104
78
92
106
147
107
80
89
76
150
93
120
113
139
134
121
205
127
127
99
100
104
94
80
69
72
76
110
101
94
109
87
145
120
117
121
128
69
151
121
135
76
89
63
117
106
80
69
120
123
89
87
54
84
80
100
107
120
91
155
74
64
138
120
91
69
131
120
132
130
133
117
90
144
107
64
99
95
73
69
54
80
114
97
80
76
87
72
113
80
73
104
121
54
99
89
87
76
197
118
148
74
80
163
80
106
88
87
124
99
143
69
107
85
120
110
107
162
156
137
72
155
80
107
126
127
131
89
136
107
106
120
76
106
80
128
80
117
131
107
103
76
78
80
94
72
163
175
85
87
87
151
144
119
87
73
76
148
71
110
85
94
131
121
93
112
72
116
87
87
99
83
113
56
117
69
87
91
94
144
101
124
151
90
140
110
93
122
80
119
95
90
110
125
87
89
148
156
54
80
119
89
106
164
80
117
103
87
117
87
121
107
69
111
83
126
116
127
69
98
89
107
80
93
115
97
112
119
136
201
106
120
140
106
110
148
151
94
82
134
98
128
143
119
119
115
80
102
113
130
80
96
107
88
111
155
76
91
91
134
109
102
87
87
127
123
145
89
128
114
134
112
87
107
106
96
175
122
106
73
183
109
104
121
95
69
87
140
69
106
78
139
96
80
80
107
95
128
69
156
134
143
80
134
104
118
149
102
78
69
120
119
54
100
155
144
69
80
121
109
119
117
117
113
87
130
104
133
117
154
93
156
154
110
87
87
121
43
87
69
100
83
110
88
106
80
56
69
94
151
69
56
96
69
93
101
104
78
131
58
109
80
78
78
175
125
54
154
144
93
123
112
131
80
88
156
117
96
119
154
93
132
75
107
69
134
162
113
57
89
106
130
94
83
101
80
67
80
91
129
79
80
134
99
94
85
127
175
114
131
88
120
80
115
54
101
76
80
79
87
114
83
80
141
88
157
154
118
96
164
72
140
134
129
107
110
119
89
69
91
54
69
56
80
155
99
162
156
81
164
80
148
113
78
120
88
96
87
119
120
104
104
110
120
122
93
107
104
99
146
100
73
107
113
74
96
128
54
154
94
69
80
112
101
67
87
128
146
106
111
76
80
106
109
117
131
80
80
181
80
107
58
156
87
80
69
134
124
128
64
127
95
133
92
101
109
120
125
85
114
129
120
131
94
80
76
122
112
93
152
76
197
87
118
136
80
87
96
144
100
93
104
80
96
131
130
80
119
114
96
80
76
107
78
76
69
112
106
78
80
78
104
110
162
118
121
134
107
78
109
69
88
78
134
117
142
72
146
69
134
54
159
85
87
101
64
69
121
89
130
104
76
78
115
87
138
104
95
78
120
106
87
80
117
80
126
112
197
175
69
146
102
120
58
100
107
112
109
125
119
138
94
100
99
80
101
128
78
89
69
87
78
74
100
99
155
120
156
109
100
187
93
76
74
151
128
95
110
69
99
152
64
126
87
94
107
88
114
78
88
145
102
140
92
175
78
100
107
106
140
69
96
99
80
124
143
156
136
126
185
76
87
100
114
80
94
120
125
81
143
175
80
69
138
143
69
151
124
132
129
113
122
71
121
120
140
143
185
146
78
155
113
106
113
91
120
92
113
123
166
100
102
56
140
71
130
93
128
145
93
80
119
128
78
109
118
96
69
119
104
93
175
120
108
67
99
136
93
87
69
88
87
90
87
80
72
81
145
119
90
99
148
155
99
155
88
151
126
69
87
152
99
78
80
87
126
80
116
197
111
72
96
97
143
78
151
87
106
135
175
99
118
79
134
125
99
87
78
67
120
80
160
80
155
80
96
87
133
69
101
67
130
78
69
93
105
74
80
76
182
87
134
117
175
139
106
175
56
80
82
76
171
99
70
128
134
111
88
96
78
136
155
120
69
104
72
118
82
78
80
119
75
106
80
85
156
80
124
89
101
183
175
143
101
156
87
98
113
87
110
101
136
107
151
137
143
80
69
119
78
136
109
130
154
133
80
157
129
75
119
146
89
137
78
87
110
135
112
69
80
99
87
102
74
128
113
87
78
119
69
109
160
94
154
74
78
117
121
74
123
69
69
128
89
106
152
76
106
107
71
156
140
89
146
133
134
123
111
133
128
131
56
101
151
121
80
74
209
98
109
117
146
148
87
88
154
75
96
80
115
154
93
76
91
71
133
80
131
127
118
69
137
96
78
117
93
121
108
69
123
100
142
85
99
76
160
69
106
96
94
87
110
129
80
106
120
118
111
147
80
88
119
89
109
87
93
131
172
87
123
66
113
140
100
151
66
109
88
89
119
155
110
80
91
80
134
118
88
187
146
146
78
78
88
99
112
99
70
110
69
89
121
117
99
89
89
69
160
106
80
54
52
78
88
197
69
80
127
142
138
118
154
69
107
82
156
76
78
100
76
120
127
69
122
87
91
148
139
126
72
103
54
89
100
134
89
146
122
69
106
80
119
78
69
80
87
94
122
78
54
113
93
128
113
88
69
89
85
69
128
87
115
102
122
94
93
80
119
102
109
87
76
89
72
146
78
104
127
80
165
175
76
106
98
96
98
151
104
141
94
163
119
104
91
104
80
91
128
175
187
134
109
69
131
93
155
80
80
69
87
96
127
76
113
119
80
113
157
87
112
93
122
131
99
99
111
99
143
80
119
154
80
93
143
140
106
75
138
110
143
102
120
119
197
140
87
121
82
91
76
120
96
121
87
89
69
131
78
175
78
106
79
97
108
175
87
88
80
111
78
163
98
96
136
87
96
93
136
121
69
72
80
67
114
117
76
52
69
128
76
69
142
74
130
140
104
75
107
80
77
76
90
119
119
112
94
89
197
74
111
76
80
114
103
87
128
78
98
83
91
159
110
56
93
69
88
85
78
117
175
142
80
88
106
122
120
69
69
93
104
110
156
73
80
118
93
54
87
111
139
95
108
154
119
118
126
107
80
131
117
131
87
197
106
101
104
77
81
104
156
78
119
155
90
78
176
80
127
107
80
110
99
69
99
156
106
117
123
113
124
136
154
127
131
91
89
129
106
108
113
185
118
93
175
89
82
91
76
107
117
89
197
76
136
80
142
157
118
81
96
90
117
107
95
146
145
146
132
156
112
175
120
69
89
156
112
89
69
69
136
78
144
102
94
119
121
148
154
117
88
98
87
128
110
110
93
119
88
114
146
146
119
118
128
78
112
94
118
69
163
87
102
162
136
80
89
76
149
107
175
134
197
143
141
131
120
76
117
117
110
154
104
119
136
109
87
136
74
87
109
99
80
119
134
111
175
145
112
123
146
144
87
72
69
128
76
87
132
151
121
94
136
52
80
98
121
109
109
153
93
95
129
87
111
128
91
80
107
175
120
201
99
78
66
154
128
128
80
107
69
145
54
94
109
102
76
143
117
128
78
92
93
99
78
131
151
119
175
69
133
104
69
60
99
109
120
164
80
114
69
95
69
99
87
80
119
87
146
80
94
110
93
83
80
120
149
107
120
94
143
74
140
112
145
134
129
94
79
142
156
145
154
80
68
142
175
54
110
74
107
87
76
121
110
99
156
96
80
104
110
99
87
120
104
69
100
123
78
60
121
102
135
120
87
107
76
113
175
69
78
156
131
106
106
72
118
80
134
109
137
99
96
118
78
128
128
116
78
78
175
69
80
107
134
83
129
107
134
121
154
113
174
110
119
113
175
89
100
120
119
185
88
88
148
80
146
128
135
128
115
145
122
80
93
54
99
96
112
76
112
107
112
104
99
122
164
72
123
169
101
151
117
94
154
87
94
122
163
117
69
143
112
131
102
90
133
99
164
74
76
76
80
87
69
110
112
128
98
69
144
91
76
137
111
78
89
80
89
110
175
78
163
87
134
128
114
146
80
106
78
111
155
123
58
113
69
80
146
58
175
175
87
129
87
69
76
156
85
80
112
120
88
69
72
80
69
122
81
140
145
120
96
88
136
104
121
72
76
69
137
109
124
88
74
98
181
154
87
106
154
156
104
120
78
117
146
75
100
74
134
80
137
80
111
121
125
87
131
134
102
163
87
86
131
145
163
175
120
76
130
93
82
108
69
96
85
100
140
87
78
136
172
141
88
104
127
107
67
80
110
93
119
113
150
107
87
113
140
132
131
131
101
140
89
78
80
128
94
107
87
85
136
109
88
78
85
105
88
119
80
93
106
69
85
110
88
129
72
78
119
80
112
140
163
96
80
113
119
96
69
104
100
81
107
69
59
78
80
69
119
106
115
106
100
88
147
153
93
154
89
89
121
88
97
136
87
96
106
80
87
69
124
85
112
80
101
155
122
145
117
122
121
112
89
87
89
69
118
69
80
145
80
134
94
101
78
87
163
131
80
119
112
156
98
75
106
82
118
153
80
143
99
75
104
113
106
136
80
148
88
54
101
87
69
94
89
162
83
121
73
121
110
113
119
117
129
107
78
128
72
90
106
154
111
69
175
91
129
175
101
76
85
78
121
69
129
80
79
107
93
89
136
155
114
80
101
80
112
106
76
110
115
93
105
137
76
120
88
91
144
87
120
88
113
89
93
69
94
117
43
94
118
129
128
136
56
119
78
140
140
99
52
78
120
127
175
80
113
69
78
143
80
102
88
155
80
120
94
76
67
175
126
155
74
96
107
127
99
89
93
164
136
119
95
106
118
52
109
80
171
154
96
151
123
106
81
74
78
76
87
138
119
69
136
132
124
136
87
114
60
78
156
122
87
87
111
76
126
151
69
80
154
155
174
102
118
102
134
113
177
109
119
78
101
117
76
87
76
152
122
138
154
102
76
80
85
96
94
52
206
135
90
120
114
80
88
72
75
94
145
131
113
148
87
87
99
93
78
80
89
175
87
88
151
72
111
78
80
120
155
145
128
69
88
154
119
128
94
72
78
87
69
76
113
136
90
128
74
154
69
116
120
117
122
72
104
145
136
103
76
136
80
87
175
128
54
112
69
74
164
76
152
52
111
120
87
87
80
90
99
107
138
120
99
111
154
76
56
88
72
134
106
106
147
147
165
88
117
54
94
119
84
54
89
99
99
144
72
107
87
113
69
135
131
161
108
109
80
101
89
90
93
78
110
102
145
69
76
113
78
121
91
78
80
115
98
89
120
80
140
156
187
106
99
142
156
87
80
107
109
163
78
69
137
72
151
119
144
69
155
56
95
111
69
117
119
94
113
143
164
111
64
120
89
80
111
123
106
102
104
76
69
140
99
99
154
87
80
151
122
112
104
76
113
134
109
104
52
90
106
118
104
163
113
87
119
109
69
80
74
143
69
119
69
147
118
89
74
91
76
197
93
69
69
143
78
109
136
69
112
87
91
87
78
88
94
96
119
80
69
148
108
117
131
120
108
80
78
159
156
93
175
80
126
110
79
69
151
99
69
164
101
177
93
175
95
104
85
68
123
131
128
103
88
80
121
107
117
99
67
147
72
140
83
69
107
115
129
119
110
121
120
69
164
189
112
110
87
120
92
121
69
96
113
80
71
137
77
69
87
98
80
87
121
152
136
88
96
138
76
103
107
120
154
101
111
133
138
80
131
134
127
87
87
156
101
74
91
138
163
119
117
95
83
78
111
134
128
94
104
90
122
108
80
74
93
155
88
99
116
89
88
132
101
54
72
107
101
107
118
117
113
114
91
119
104
107
134
183
114
101
89
93
130
137
107
120
147
76
80
142
93
145
88
117
91
137
88
112
80
112
115
104
87
145
163
113
100
74
76
95
175
89
117
112
69
133
140
156
87
113
110
80
151
69
122
112
125
78
80
175
104
94
80
128
64
85
69
80
76
102
108
131
76
104
147
90
87
92
104
99
74
106
80
134
106
80
67
91
80
69
80
69
80
87
136
129
76
78
165
107
104
78
169
93
117
76
137
154
146
98
112
120
121
87
132
120
104
128
78
123
109
141
119
120
78
80
122
122
112
123
98
107
111
52
110
91
138
97
94
99
98
175
57
69
121
80
110
91
100
120
211
80
128
87
80
94
110
134
128
108
99
69
72
87
96
106
92
94
122
69
106
99
80
128
120
131
87
87
140
99
100
80
172
131
154
80
76
175
104
111
113
175
96
156
132
89
74
87
80
80
123
100
133
146
69
133
99
113
84
148
211
181
151
114
131
102
183
107
103
79
175
106
85
163
132
175
181
113
54
102
106
120
120
128
123
124
160
76
126
78
107
87
119
78
134
143
87
118
85
80
78
107
126
106
136
80
183
97
114
129
98
94
89
107
163
91
133
136
137
80
120
129
103
94
92
178
43
94
137
72
56
117
161
140
54
72
78
80
76
90
131
120
69
88
119
80
136
80
128
114
119
101
101
78
96
56
106
151
112
112
102
138
107
104
123
151
116
99
78
128
98
89
89
114
89
107
79
121
83
139
78
151
69
136
115
102
89
69
126
106
74
72
104
72
79
104
73
94
56
94
88
114
115
117
120
126
137
122
80
100
80
120
76
80
88
78
128
69
119
80
87
80
154
145
104
72
123
69
74
117
74
147
75
109
69
131
140
69
107
119
110
124
117
69
69
111
78
94
158
80
128
100
136
113
151
89
142
113
183
69
115
148
75
117
69
183
87
154
87
122
69
150
89
164
80
134
80
94
129
131
134
174
132
88
121
164
88
119
136
89
76
112
99
94
121
88
119
102
122
118
134
78
91
154
117
163
172
131
96
100
80
126
120
110
121
88
111
69
116
80
72
69
120
76
106
80
93
124
151
78
72
119
104
100
69
118
120
88
84
72
175
107
109
96
126
215
88
113
69
131
131
126
99
112
175
78
80
134
91
69
87
78
158
175
60
137
85
134
130
71
121
69
76
89
72
94
132
110
122
110
181
76
127
115
106
110
109
80
102
80
141
130
76
76
134
76
96
151
93
131
76
88
69
80
69
80
130
151
94
142
96
94
75
102
104
102
69
123
91
118
109
78
143
69
121
87
80
183
80
152
56
80
163
54
111
160
80
59
88
121
143
106
163
197
145
115
154
121
78
102
163
52
87
88
80
80
89
96
193
134
130
101
126
119
71
69
94
80
122
130
107
134
80
112
128
134
78
120
80
89
89
127
43
154
110
183
63
174
89
136
69
80
85
134
142
56
89
145
74
134
69
99
120
80
128
88
106
111
76
69
197
76
94
96
69
109
89
90
107
157
76
107
133
154
54
120
78
143
142
155
136
112
99
117
134
175
103
76
128
80
54
129
99
106
151
76
112
80
107
107
119
123
119
128
104
128
78
111
120
120
111
151
148
128
119
194
94
89
150
88
118
112
133
76
148
87
72
107
164
72
107
119
104
87
110
76
112
134
120
87
122
134
155
76
87
109
107
114
104
85
57
119
111
71
78
80
121
99
106
80
135
69
146
123
79
79
136
110
80
101
80
120
99
91
197
96
94
52
87
155
99
78
94
80
143
125
140
101
69
89
77
121
106
104
99
121
106
93
119
76
76
122
76
131
110
78
119
88
112
93
131
80
185
89
150
154
106
144
107
69
83
82
117
100
107
69
87
136
64
76
72
104
76
151
87
197
127
74
56
119
116
79
112
110
155
69
80
69
96
80
56
69
96
110
87
183
157
120
80
80
83
112
151
106
129
67
120
148
80
89
76
107
125
113
78
54
72
96
155
105
127
128
78
119
80
102
128
92
151
143
143
119
145
74
69
107
142
154
78
87
76
80
122
66
80
120
175
87
89
69
162
134
87
123
114
114
80
72
112
69
120
83
175
87
131
143
107
109
98
85
107
136
181
69
80
89
69
124
69
131
88
54
87
80
99
120
80
80
80
69
113
119
109
119
80
109
78
146
124
130
181
89
69
87
69
137
118
88
100
101
89
136
118
109
103
107
89
120
100
95
114
69
105
97
88
151
107
76
136
138
156
87
88
101
96
101
112
76
113
120
181
110
69
82
69
131
72
116
87
106
120
117
136
87
94
76
130
165
148
141
80
130
69
99
120
102
64
90
99
134
122
126
59
52
107
122
80
156
209
143
99
69
127
72
69
107
91
89
99
156
80
87
107
151
121
69
119
80
87
87
89
136
80
69
94
80
156
87
76
111
110
111
87
156
164
136
119
114
110
143
201
80
175
131
151
75
80
111
104
106
90
127
107
119
113
107
80
72
119
107
78
120
129
71
80
102
99
88
151
117
106
80
52
136
59
93
69
137
87
85
87
109
154
154
183
94
80
99
99
87
80
80
175
98
131
136
59
119
107
80
99
174
113
129
88
94
156
110
80
163
109
110
94
112
71
154
112
87
99
119
95
102
128
80
152
80
99
123
127
87
88
125
72
102
80
76
105
128
130
76
69
80
115
52
156
78
54
76
110
89
96
121
104
107
69
105
128
111
106
151
104
78
138
93
72
91
143
121
100
106
87
89
133
122
109
87
142
87
52
104
156
156
69
119
91
110
98
72
123
96
104
103
82
76
91
120
126
163
160
87
109
149
58
107
112
73
78
78
106
111
69
104
116
90
99
56
175
74
165
99
80
78
120
88
93
108
72
162
119
139
67
119
131
80
120
80
105
80
113
113
99
111
121
95
80
114
92
66
74
153
88
111
121
99
69
104
76
67
89
154
69
98
43
101
129
110
124
124
80
201
110
43
109
121
100
124
120
72
69
69
78
78
150
75
99
110
89
87
174
119
76
113
87
174
148
99
130
117
125
128
78
87
183
99
175
83
127
145
121
175
113
120
104
131
205
123
133
119
145
127
69
104
69
133
117
156
199
100
83
115
110
128
110
119
106
94
74
112
136
93
82
80
99
140
154
110
163
140
88
156
123
148
91
71
85
175
83
118
93
69
104
96
78
54
104
98
80
130
117
89
144
134
76
121
134
104
118
146
104
69
109
146
95
130
112
88
110
69
78
87
99
146
72
105
164
155
109
100
99
175
102
175
64
130
76
110
175
80
69
113
110
100
121
121
119
43
121
104
82
80
136
80
93
143
99
80
118
111
113
109
93
96
104
88
97
149
87
78
69
110
94
80
175
143
63
96
119
119
80
104
111
111
102
120
85
110
88
119
107
104
124
87
119
80
96
130
106
119
87
69
143
69
80
80
106
175
126
57
124
99
80
87
113
106
156
89
131
107
109
122
133
109
96
134
109
137
197
120
150
94
125
80
69
120
163
101
80
119
69
120
69
104
71
107
80
72
145
126
107
134
156
69
127
107
98
76
181
89
119
104
80
82
119
69
80
129
155
130
78
69
134
78
109
106
111
136
146
176
113
115
133
74
89
87
134
94
72
98
107
72
76
91
76
134
80
80
94
80
136
98
85
89
106
154
201
87
154
96
80
93
96
87
72
63
121
98
69
133
132
140
109
134
88
74
109
120
128
114
133
87
129
109
132
82
89
140
175
99
56
106
197
76
80
120
72
87
99
66
88
181
99
99
199
69
69
129
113
110
117
69
128
96
89
80
92
78
136
78
117
128
74
117
74
136
99
126
104
108
119
154
88
87
78
96
107
73
134
80
139
136
91
72
109
140
115
93
104
95
89
80
69
137
70
109
110
156
126
91
144
57
66
140
114
87
112
79
115
69
91
145
93
80
106
78
128
136
69
118
136
123
78
131
78
69
99
91
101
110
87
56
66
87
130
87
119
80
78
74
132
131
146
138
87
119
112
138
87
69
128
164
99
101
99
104
128
80
66
76
93
155
103
80
101
109
100
69
77
127
107
87
89
78
89
155
121
110
100
94
80
163
56
80
109
120
163
104
111
127
154
90
80
69
78
110
152
101
121
107
74
74
93
78
87
105
119
127
79
119
72
175
109
107
88
106
136
104
109
80
93
69
80
122
133
110
76
152
87
154
140
95
124
95
92
80
110
85
122
119
64
78
127
110
134
125
115
71
133
69
114
87
136
98
109
136
118
108
80
140
89
104
83
131
91
119
126
105
69
80
71
76
93
126
78
175
91
94
113
138
100
69
54
123
115
80
125
197
116
136
124
63
136
69
107
69
163
107
131
94
111
201
85
94
91
69
175
78
80
133
136
73
76
80
78
75
80
144
91
101
94
52
130
114
76
74
91
107
89
58
84
129
154
102
97
113
87
88
114
96
143
80
131
115
95
136
128
87
119
114
88
99
147
121
98
183
126
80
88
132
95
54
56
87
119
99
115
88
120
148
123
119
104
69
83
69
114
114
155
72
119
94
88
112
117
89
87
78
119
199
115
78
175
69
83
89
109
89
142
154
76
101
131
120
69
93
69
80
86
120
69
109
69
110
151
111
80
129
143
90
138
121
113
107
107
121
109
120
80
78
88
76
126
147
106
52
80
115
109
128
104
112
85
80
128
146
91
131
112
151
94
129
80
126
89
87
88
87
87
126
59
197
119
99
96
156
52
121
76
72
171
107
156
142
89
126
87
76
89
74
140
98
80
143
119
145
142
111
175
89
87
99
106
121
114
107
97
76
87
109
72
89
69
124
69
109
110
106
112
175
80
80
103
106
120
125
109
87
89
123
80
80
117
71
119
111
134
95
203
76
102
99
87
130
149
78
80
109
80
93
95
156
119
175
101
99
134
163
113
69
87
87
69
88
121
125
74
163
113
175
160
115
69
101
154
120
159
85
137
109
66
99
113
127
93
111
80
57
94
101
69
80
79
155
74
96
105
131
90
78
117
109
120
79
154
112
76
88
101
140
67
128
98
87
128
151
101
69
88
118
128
98
115
134
128
112
122
80
92
80
108
175
131
127
109
163
99
175
90
69
80
117
94
117
163
105
107
127
76
163
162
143
143
87
143
92
131
120
107
76
123
80
76
80
123
80
119
67
128
89
101
147
120
133
106
100
154
155
87
147
87
134
154
76
88
154
69
133
113
78
69
69
100
107
76
107
87
69
107
76
155
80
111
101
112
78
130
76
78
93
124
107
66
163
140
145
176
78
67
134
106
122
140
86
101
69
131
64
80
78
118
109
101
80
104
81
88
76
128
131
101
80
121
94
120
118
86
87
102
110
156
111
128
80
89
99
146
69
106
175
80
154
121
75
91
94
121
78
130
137
74
143
80
104
78
134
127
80
115
120
78
107
141
101
87
69
154
82
99
107
133
156
78
80
117
97
80
69
87
134
80
121
119
137
79
78
109
59
69
102
138
78
88
87
87
112
150
175
160
109
133
102
151
134
137
155
80
110
76
101
100
133
79
120
109
118
113
156
129
99
69
112
80
154
119
43
73
120
110
89
76
125
104
110
89
85
120
113
80
104
76
113
101
140
87
107
121
100
138
103
119
122
121
85
94
128
122
94
94
80
69
75
93
69
94
103
125
94
69
88
162
109
118
80
130
112
74
96
80
117
101
69
80
69
127
83
72
130
80
80
135
69
132
126
106
117
80
106
94
72
96
102
131
89
128
88
126
69
119
165
80
183
121
187
141
76
156
114
102
94
126
140
80
80
72
142
137
69
177
76
69
80
94
121
112
72
78
99
93
80
52
90
120
105
112
110
146
119
109
151
140
146
111
126
87
78
80
88
104
106
98
72
85
112
87
187
131
144
163
115
118
136
117
119
80
104
80
91
69
119
138
146
152
96
103
109
143
80
56
87
72
120
76
99
123
80
156
76
93
96
125
147
155
89
128
110
201
150
128
76
80
132
69
100
72
119
143
117
80
119
93
76
112
88
123
110
120
80
99
99
128
121
147
110
106
130
114
69
185
113
136
88
130
146
164
140
136
69
99
80
80
80
78
98
120
72
83
69
80
104
151
158
69
112
76
113
80
136
80
72
122
140
131
113
109
95
136
91
119
85
76
169
133
78
89
107
68
136
100
69
133
164
175
106
80
90
78
85
69
121
109
101
157
126
90
151
94
67
120
111
107
80
119
78
80
123
101
125
121
134
80
129
52
118
136
100
56
76
80
107
128
72
148
104
99
131
72
69
78
129
89
94
104
67
110
69
106
69
109
185
156
107
121
87
78
119
128
113
102
100
128
74
88
121
100
140
117
89
74
131
113
127
54
72
80
99
108
136
74
91
111
80
89
134
122
129
101
119
78
106
92
133
134
88
131
80
80
123
131
115
126
92
140
154
118
164
76
78
80
71
146
104
120
110
119
109
106
69
107
91
125
78
80
119
99
120
87
107
101
80
118
80
80
104
111
120
154
114
169
90
114
87
80
125
110
154
110
88
69
88
143
133
119
89
87
96
87
135
69
122
94
155
102
87
83
106
102
69
114
100
69
88
163
130
99
128
113
69
80
78
124
156
123
109
90
75
42
105
69
93
106
107
88
163
119
80
52
135
89
119
100
154
136
80
88
87
140
83
107
119
182
43
72
118
80
85
69
140
175
174
119
110
80
78
135
69
121
95
115
118
140
128
117
134
106
91
109
175
99
85
98
109
101
122
67
154
144
93
85
144
130
80
96
154
97
137
104
131
82
126
100
87
69
85
90
104
107
69
96
69
80
122
122
72
131
175
112
119
148
201
87
143
111
96
104
141
99
122
69
155
183
94
78
113
69
119
137
82
78
137
85
90
114
109
137
102
80
72
106
120
126
145
78
163
67
89
136
126
87
80
99
155
106
80
76
76
122
74
150
119
136
87
136
121
126
117
87
128
72
106
175
76
136
107
74
155
88
78
109
112
127
94
87
96
106
138
77
120
131
106
124
100
138
133
155
83
87
128
111
99
109
90
140
80
76
69
94
100
76
101
80
122
125
117
76
76
109
124
76
139
74
101
80
98
154
164
88
109
121
112
117
72
109
74
89
80
93
89
76
121
92
100
83
146
84
164
87
113
87
127
111
69
138
93
80
54
153
56
134
80
101
67
128
126
103
109
80
52
125
88
137
110
80
145
80
134
128
120
95
82
88
99
143
88
119
83
74
87
73
116
115
109
67
131
119
106
94
156
89
80
87
138
112
112
60
106
69
110
128
197
106
83
92
117
130
127
100
87
151
87
102
94
136
136
76
87
80
90
127
123
87
78
154
125
80
154
80
89
109
87
80
99
87
92
128
78
120
133
115
131
146
80
90
128
169
129
154
66
150
99
54
109
78
138
134
79
103
121
104
120
137
106
69
120
147
81
69
80
163
109
88
66
128
89
80
86
174
197
69
76
87
80
215
142
128
89
72
79
102
69
94
175
72
120
122
154
106
151
112
163
104
118
104
69
110
74
117
85
133
117
155
120
93
111
106
122
69
106
117
73
143
76
154
74
175
78
107
112
89
87
111
151
72
118
131
119
99
76
91
165
118
129
137
166
80
122
156
82
80
78
91
89
134
143
91
120
87
133
110
87
79
120
117
119
80
74
126
197
69
95
175
175
80
117
157
117
160
109
91
88
69
136
89
56
99
52
63
175
99
94
109
67
59
136
110
89
80
114
78
107
86
112
99
87
113
76
101
117
78
160
129
125
115
150
78
80
155
92
122
122
107
80
131
117
169
63
69
107
72
93
87
110
122
69
110
156
97
117
85
89
175
107
110
145
137
76
87
89
104
66
113
106
125
91
153
106
154
94
109
109
69
80
96
80
116
80
102
109
140
125
144
106
99
136
87
72
121
87
116
63
89
136
54
122
83
146
96
151
72
96
112
146
72
80
117
151
90
103
54
69
120
118
78
156
69
128
134
155
98
80
113
80
87
106
154
78
80
164
80
89
199
101
102
111
134
104
162
99
67
124
128
76
151
87
80
80
103
110
117
87
107
80
78
109
175
113
114
155
128
119
138
88
121
76
106
89
90
132
87
87
187
76
69
145
197
181
146
93
147
83
157
89
78
79
110
140
136
69
113
104
78
123
92
100
96
93
164
76
78
100
140
69
121
74
87
85
119
87
80
56
87
69
175
120
88
140
124
154
88
102
99
121
58
99
120
119
131
88
87
89
106
64
109
138
88
94
104
69
118
121
111
127
76
134
143
88
80
175
117
109
89
80
69
90
163
175
92
104
142
78
106
76
104
128
128
78
119
175
89
80
69
122
77
112
111
80
95
80
120
119
131
78
131
149
127
74
151
120
122
94
87
89
110
102
143
80
80
107
120
106
103
100
156
101
104
69
100
131
94
107
96
120
123
137
118
78
130
136
93
87
103
92
125
181
103
69
93
88
87
101
140
107
76
80
140
87
113
69
80
130
155
120
140
96
95
107
76
102
109
110
103
117
118
100
80
119
104
121
80
90
112
43
69
137
72
69
114
80
85
87
98
109
107
81
69
76
59
80
147
119
123
100
199
91
89
69
69
103
128
92
175
120
106
102
80
136
80
88
78
140
107
87
164
99
84
100
93
155
110
80
69
199
43
117
80
89
125
125
110
175
154
85
120
127
89
110
89
122
101
137
102
100
118
142
142
121
110
121
74
66
89
150
75
76
67
119
175
100
131
101
117
104
78
97
123
107
80
76
113
129
156
174
174
74
80
128
125
80
102
87
134
80
164
125
102
69
119
96
128
94
93
132
120
52
155
78
147
96
85
107
89
128
80
104
119
80
80
110
80
115
126
175
94
89
175
119
52
121
134
164
94
90
72
155
113
122
107
156
89
80
96
136
175
127
140
149
112
111
113
69
126
118
96
109
156
69
143
136
119
119
78
136
69
80
120
80
144
97
115
80
109
89
71
88
119
160
117
69
78
80
128
89
94
155
78
80
107
80
111
69
91
96
166
143
119
153
114
89
59
160
117
69
156
106
78
130
120
148
89
80
132
69
54
72
110
78
80
113
98
142
112
93
104
76
109
96
128
101
90
146
89
76
106
134
154
94
94
106
174
76
119
69
140
72
112
137
94
150
72
128
128
156
80
88
76
87
86
112
81
133
115
146
154
131
164
80
136
80
80
156
118
156
72
103
99
89
175
119
112
99
96
110
103
110
92
87
93
134
80
93
131
80
80
154
80
80
109
109
87
77
81
104
89
72
175
119
69
175
99
127
89
54
74
110
107
132
122
137
89
147
106
139
106
123
91
72
67
129
156
100
66
96
109
164
83
80
104
88
175
69
169
80
130
131
117
106
122
76
136
54
90
97
128
89
175
175
120
149
140
114
107
104
87
113
111
136
80
134
106
76
78
93
80
146
134
72
110
85
134
80
95
122
80
78
126
80
98
107
72
85
109
76
56
96
80
109
140
107
80
86
90
80
113
80
107
89
80
133
69
87
93
87
96
78
131
76
104
76
141
69
107
102
111
83
87
88
124
137
109
80
119
69
127
68
76
88
112
134
74
99
88
94
128
85
100
80
78
78
76
93
78
102
156
122
136
92
175
111
123
197
106
136
80
129
120
76
80
76
89
134
87
88
119
154
83
107
146
72
148
54
89
81
110
103
120
127
119
136
89
119
87
156
136
69
127
87
103
52
111
80
78
107
137
69
78
83
80
99
87
74
163
101
80
87
115
131
111
119
87
79
123
138
109
90
112
94
54
80
88
87
80
126
128
82
109
122
87
74
96
96
151
90
92
126
90
80
93
104
151
121
87
156
72
69
85
113
119
128
87
72
175
126
155
87
69
106
102
69
107
94
76
87
114
156
117
106
52
85
132
94
120
136
151
138
175
107
76
69
93
76
126
87
83
83
197
156
80
154
80
110
74
80
69
117
80
85
154
131
95
120
175
119
183
99
137
80
69
74
110
152
118
119
88
154
102
76
164
106
52
102
78
136
147
159
111
136
161
106
109
133
112
102
116
110
93
64
137
80
69
99
95
109
107
110
117
99
76
78
93
52
75
76
120
80
99
85
104
87
72
129
119
72
74
78
127
128
69
110
101
72
80
121
144
151
160
80
80
140
155
136
80
113
155
80
122
131
74
154
99
103
104
136
76
69
80
101
128
113
83
154
136
117
115
132
80
152
87
136
69
155
99
113
80
87
89
107
156
69
138
69
181
119
104
87
132
74
104
136
110
78
90
197
99
143
78
151
175
113
87
78
80
69
98
113
80
89
115
80
154
121
56
99
122
117
69
80
88
96
120
119
80
175
87
113
80
127
92
128
69
80
136
133
80
119
115
105
127
99
127
119
87
128
69
52
121
143
119
85
123
88
106
80
87
107
136
160
69
135
151
69
132
160
95
87
99
145
96
117
80
137
197
91
96
135
87
107
72
178
117
76
136
69
96
72
107
69
107
120
87
87
119
106
122
114
109
99
76
109
156
74
87
138
91
89
154
101
146
80
80
131
94
76
80
124
120
134
74
93
72
80
120
113
133
97
72
69
144
72
130
140
109
101
102
109
120
80
69
155
101
69
64
78
138
96
95
107
120
104
78
113
97
109
104
130
87
91
133
104
127
66
110
94
113
52
81
74
80
113
156
101
144
89
89
76
80
112
75
131
126
78
128
143
104
113
72
122
114
87
79
120
131
138
107
89
117
128
98
87
100
80
99
142
79
72
80
156
144
119
134
87
134
113
132
106
113
154
114
114
101
146
98
117
69
107
103
141
154
99
78
76
80
67
78
107
121
80
119
80
72
69
99
102
72
85
126
99
78
76
96
104
126
149
131
69
80
148
80
69
117
119
76
154
78
87
123
144
104
114
117
156
87
117
131
80
82
69
160
119
119
80
113
89
120
120
71
80
91
69
69
134
140
76
78
103
89
76
69
78
175
99
80
99
148
124
126
103
80
78
94
131
88
69
80
109
119
110
89
112
175
145
129
106
103
103
72
121
93
96
72
121
90
121
78
78
76
80
69
107
93
154
120
66
87
69
109
122
101
181
109
154
76
154
175
97
174
80
69
140
87
107
98
74
111
89
112
69
175
96
87
120
80
136
118
119
112
98
116
136
72
128
164
110
80
92
80
75
197
76
87
130
156
119
100
128
125
137
72
107
102
89
87
80
125
96
101
93
87
91
69
143
87
119
110
142
87
145
147
69
156
109
117
76
140
131
91
120
128
69
166
69
120
81
88
78
100
106
91
89
80
127
151
128
91
175
80
96
150
99
90
69
89
108
76
107
122
102
175
133
89
120
89
93
134
160
122
134
54
94
128
80
107
110
69
76
93
154
148
134
134
67
122
131
201
110
161
78
129
76
128
80
143
99
134
128
56
154
76
175
69
69
87
93
104
93
88
112
144
126
80
88
122
85
87
88
107
119
107
133
167
69
154
92
66
107
85
175
151
132
154
69
117
80
89
64
80
110
113
87
124
89
104
110
93
128
157
147
120
120
99
87
115
110
163
156
66
131
87
89
123
90
72
110
93
128
89
69
102
73
103
68
87
109
124
134
88
137
80
87
87
76
87
69
132
99
76
160
127
95
80
120
127
76
128
93
109
119
101
99
160
132
80
78
69
118
80
87
88
113
187
151
132
69
132
123
101
120
87
85
76
91
104
136
72
69
80
80
133
91
121
78
114
91
69
131
90
163
151
142
129
131
80
95
164
120
114
110
120
128
201
146
151
127
140
128
69
80
145
69
79
88
78
94
128
103
101
82
75
97
72
88
69
98
119
120
80
76
80
88
64
87
104
114
175
143
99
201
72
109
142
66
78
87
155
84
100
95
74
118
119
163
146
102
145
80
175
109
93
140
96
90
104
67
156
89
76
106
129
106
102
120
100
80
119
155
87
69
78
87
104
117
69
80
88
96
69
125
113
143
119
131
56
85
156
101
69
112
76
117
85
169
120
146
117
87
147
72
87
156
144
127
126
78
140
151
163
110
60
126
116
93
121
175
69
114
76
120
201
99
80
92
88
80
87
91
88
100
120
78
119
91
109
94
76
107
135
120
78
87
120
109
127
106
110
120
80
99
121
88
66
78
123
87
110
107
130
137
129
134
93
80
69
121
114
69
54
69
69
59
102
76
119
132
90
69
112
87
120
114
91
94
128
87
130
87
87
154
106
166
76
52
76
87
110
114
89
134
54
119
164
117
76
80
118
195
115
149
119
80
175
104
120
164
113
87
107
117
91
80
69
92
87
109
76
101
114
99
103
69
72
118
131
78
88
113
119
85
127
80
156
113
98
89
176
119
134
156
60
69
106
117
100
102
144
87
110
56
96
107
58
76
83
80
113
69
78
128
139
120
161
92
101
109
80
95
80
151
119
113
69
89
78
69
113
185
128
175
137
76
119
76
125
122
94
175
107
87
83
175
175
91
76
175
95
110
99
83
85
123
93
72
68
82
52
64
145
96
149
137
165
43
80
155
80
80
115
91
143
112
69
96
119
85
142
80
147
107
59
101
76
154
80
80
80
117
106
60
112
69
88
96
69
156
119
121
69
94
105
80
106
80
80
78
111
197
118
66
136
121
138
115
117
110
137
94
69
88
93
80
199
113
121
99
123
72
107
76
107
84
121
87
99
120
136
72
54
80
78
114
129
110
154
78
93
121
104
164
80
80
69
95
140
122
119
164
120
119
80
105
87
107
109
164
120
87
128
159
89
128
127
151
69
128
151
120
78
91
157
124
120
131
80
69
151
104
144
128
134
88
69
147
87
142
91
80
162
78
96
120
174
69
87
118
76
109
99
96
110
83
131
101
137
89
87
72
80
127
109
119
174
87
119
91
78
91
99
78
128
87
80
69
152
144
113
87
119
159
136
136
80
69
83
69
93
78
83
80
115
60
91
69
58
94
104
107
90
111
137
88
183
107
148
80
119
87
66
76
125
93
134
88
91
85
147
163
156
145
80
141
74
88
151
113
87
80
107
151
86
80
121
83
99
94
80
100
79
90
134
134
127
87
110
80
89
114
88
162
78
110
121
69
85
87
80
78
94
119
172
119
99
100
106
152
117
137
146
80
76
76
100
136
134
125
150
87
107
109
78
69
113
146
78
91
111
87
134
76
146
138
119
80
128
94
102
110
73
98
74
69
85
101
93
99
115
78
117
91
144
134
130
76
155
80
93
56
174
114
88
143
57
80
119
106
119
81
69
97
131
89
78
134
91
76
117
175
110
118
109
69
137
80
155
107
110
107
80
117
109
121
120
72
111
151
104
96
43
183
110
119
69
60
127
95
102
78
109
131
133
118
87
118
127
112
67
72
121
107
134
76
83
128
106
101
87
144
131
72
99
201
130
66
156
128
78
80
76
128
87
102
113
120
150
85
99
94
89
78
80
117
107
80
107
164
69
175
151
88
80
85
117
201
119
146
99
99
122
131
80
146
197
78
69
175
131
142
80
90
130
147
78
69
78
69
156
148
85
151
119
69
126
80
95
78
142
85
119
112
113
112
56
72
113
96
80
154
120
80
69
88
110
106
106
80
99
76
138
112
125
115
175
94
124
87
113
99
80
104
197
140
113
76
87
80
90
119
120
199
107
112
119
69
93
87
76
82
101
99
80
155
123
175
78
143
78
131
110
129
142
89
58
69
93
107
145
88
118
137
56
94
151
93
144
80
94
89
80
109
130
69
64
119
132
80
83
101
120
119
102
94
143
110
78
128
99
121
72
119
71
110
118
119
80
128
118
197
127
141
87
104
119
176
134
76
109
99
98
78
69
159
119
102
137
134
120
76
80
145
79
139
121
76
69
136
131
156
96
80
169
109
115
111
136
115
80
76
114
113
124
125
88
175
162
110
107
78
140
59
88
125
107
130
120
89
90
131
175
87
87
80
114
123
78
76
104
99
87
69
156
87
175
87
125
87
129
131
99
156
175
119
88
138
131
96
80
119
140
97
154
136
76
104
100
69
96
129
126
94
80
113
119
101
112
91
127
152
160
183
109
146
132
120
130
102
99
123
117
175
115
100
136
107
113
96
104
143
69
109
103
107
80
107
87
82
99
69
76
114
152
110
93
107
107
89
109
163
118
99
124
74
89
146
175
131
140
56
101
115
119
175
72
197
154
134
110
100
156
110
141
97
113
54
80
102
59
98
120
149
76
66
117
112
80
90
119
131
133
104
128
87
96
112
80
109
120
78
116
107
80
104
80
72
175
80
94
69
119
76
89
74
120
80
72
156
74
119
145
107
151
178
69
83
104
99
120
78
201
80
121
135
104
80
136
110
69
69
101
52
124
59
142
103
78
111
109
162
98
70
150
98
96
100
69
121
80
165
80
99
175
76
88
155
163
80
119
120
110
127
140
72
119
69
73
88
112
56
113
112
137
74
60
109
62
135
145
113
145
117
58
143
72
136
94
137
175
119
100
89
124
175
197
69
107
89
146
87
107
80
106
129
134
80
130
99
122
76
75
69
107
156
104
93
197
87
107
123
80
113
113
69
175
69
94
124
123
99
90
96
102
108
77
118
76
130
76
134
72
116
76
89
113
155
118
132
112
104
101
110
71
201
95
119
126
78
72
110
58
121
69
85
145
138
105
187
80
128
134
67
132
150
87
100
112
101
136
72
104
121
140
87
83
88
134
89
131
132
78
80
163
149
99
143
85
74
99
131
89
140
120
88
83
94
127
148
80
109
131
69
124
82
80
64
120
152
73
72
80
84
80
111
89
106
80
69
101
107
88
140
115
69
67
121
91
69
57
154
154
85
201
69
101
78
95
131
87
104
72
119
124
100
87
154
123
140
175
148
94
104
69
91
94
133
110
151
91
140
140
95
107
112
107
74
69
155
69
137
76
152
105
78
80
78
85
113
87
87
154
143
107
79
139
115
69
87
112
83
80
101
114
87
104
87
84
93
83
69
102
98
88
154
106
76
56
87
106
137
122
104
99
80
103
119
80
115
121
80
106
80
89
134
96
79
89
136
174
133
80
80
185
76
76
76
87
60
79
87
129
68
119
104
117
125
118
106
78
54
126
123
94
197
107
109
52
123
134
69
104
99
87
69
80
69
117
87
66
146
154
130
88
164
112
78
187
78
128
110
87
128
69
101
56
102
134
128
69
123
91
69
101
117
80
87
63
72
80
172
106
78
87
72
94
105
91
116
119
78
120
107
88
129
151
117
87
88
80
148
82
80
110
118
115
127
80
106
104
80
80
137
131
122
56
73
119
89
69
126
87
88
107
69
100
201
114
128
80
102
127
66
101
146
89
80
183
110
146
124
99
107
175
88
80
87
109
93
115
144
126
110
120
127
175
91
75
162
112
96
113
76
134
78
85
91
69
175
78
89
131
69
76
128
107
121
69
183
96
87
91
88
101
76
107
78
107
54
102
60
78
99
100
78
69
69
99
136
69
78
69
75
156
78
52
76
126
156
123
80
119
79
80
121
109
136
76
75
78
134
91
80
80
80
80
94
95
99
76
120
134
59
151
114
137
109
122
75
143
160
138
107
88
95
69
91
113
156
91
175
111
72
137
88
94
110
69
106
78
79
52
87
154
157
88
99
121
120
76
88
151
145
69
110
103
80
138
74
87
83
87
138
69
119
154
87
88
69
76
69
131
119
78
154
80
149
94
162
89
104
96
126
105
119
89
88
80
91
69
64
83
78
106
96
106
72
112
132
119
69
93
169
68
127
123
114
119
146
80
89
154
106
112
111
107
80
120
134
175
87
104
69
78
88
108
106
85
96
131
99
140
133
120
201
107
151
99
102
80
91
154
134
87
80
93
136
154
151
69
72
87
96
109
69
70
80
69
80
76
96
110
77
112
118
140
140
153
109
140
58
59
131
78
98
80
154
80
90
91
94
76
80
122
110
141
101
126
82
85
128
79
112
154
91
87
104
72
146
88
85
71
118
69
120
87
160
80
154
89
175
78
134
133
98
111
52
85
76
124
151
115
181
72
78
76
128
154
78
166
113
139
100
88
115
115
104
99
91
132
89
155
87
128
89
134
72
109
104
78
74
69
131
88
121
99
75
76
128
87
121
80
69
175
80
128
184
134
99
109
126
109
80
69
143
123
69
140
126
76
85
121
110
79
80
52
104
87
91
101
78
75
67
80
69
99
76
87
93
117
109
131
118
120
112
79
78
79
174
93
94
80
121
123
80
80
107
140
127
80
123
78
104
117
87
175
152
69
131
80
106
110
80
80
76
120
151
172
77
89
52
118
87
76
155
126
175
83
199
99
69
163
69
121
101
80
112
121
69
111
88
115
129
169
76
154
56
104
106
76
101
93
137
131
106
89
88
52
85
69
76
112
155
80
87
119
91
132
52
76
99
91
99
89
106
125
87
77
92
69
110
153
163
87
150
131
80
80
112
87
199
106
107
94
113
69
124
164
133
104
100
106
148
118
91
119
102
78
134
107
89
128
87
109
80
118
134
123
141
80
94
88
76
152
69
91
175
163
109
102
160
88
201
131
106
79
69
90
87
94
104
120
80
78
99
118
130
132
87
113
96
78
88
110
153
69
119
156
76
88
132
99
91
126
90
113
119
93
78
104
72
151
113
155
80
111
131
78
106
142
124
80
68
78
88
197
104
80
154
113
146
80
175
175
107
110
98
104
87
97
136
99
88
85
110
103
76
69
76
80
165
143
80
73
76
123
115
118
154
135
107
87
78
130
120
112
110
88
76
137
93
69
87
101
120
69
109
76
91
145
99
131
80
128
137
121
117
99
88
80
155
197
140
59
128
80
98
133
109
80
175
76
121
80
88
91
69
151
120
107
100
87
91
80
106
69
80
122
118
82
114
76
107
94
80
120
94
87
102
80
107
96
127
187
197
88
119
95
74
106
100
69
109
118
80
80
80
127
99
145
102
130
120
74
80
92
131
80
69
56
102
104
183
131
101
154
134
80
96
109
91
157
88
131
78
115
162
119
99
94
91
110
74
146
76
147
93
92
89
93
88
88
102
113
91
93
78
76
127
69
94
87
80
78
140
163
175
78
96
87
106
154
138
101
94
95
87
131
69
83
130
113
78
110
131
100
76
78
69
69
106
72
79
54
104
108
87
116
76
104
82
107
88
131
119
131
89
129
123
98
88
109
88
69
104
130
52
87
109
93
174
96
166
94
78
119
119
69
69
96
97
155
96
87
128
109
69
80
102
101
104
110
103
174
80
102
136
96
120
155
96
107
80
111
56
134
94
121
120
146
81
93
157
131
140
107
134
94
120
74
76
117
147
132
142
106
119
154
52
69
80
144
101
136
166
128
175
134
139
106
56
129
69
110
87
87
69
119
80
136
145
155
109
80
80
163
81
127
108
143
121
80
89
80
156
88
90
100
151
140
110
134
111
119
120
119
85
88
80
163
80
117
87
76
70
143
140
109
69
150
87
135
119
78
106
88
88
79
151
89
155
112
87
91
95
115
78
78
139
89
120
89
147
124
112
80
99
140
131
128
155
80
110
80
56
140
110
117
80
59
88
134
76
140
80
112
78
110
120
129
99
181
80
76
118
110
101
112
80
104
96
89
199
88
85
80
107
78
122
138
114
130
164
134
154
127
111
69
89
112
114
54
76
155
134
93
103
99
209
123
66
71
91
66
96
91
101
131
117
107
69
103
106
111
64
54
119
80
95
120
163
88
132
78
89
94
69
76
72
80
103
111
78
80
124
121
81
104
80
166
88
112
154
69
87
136
90
88
93
98
119
175
78
176
69
119
120
54
140
140
157
117
148
87
80
155
102
91
127
104
76
163
98
137
120
90
107
120
92
80
119
82
91
101
110
120
80
131
95
69
78
123
130
95
82
93
91
123
80
95
91
175
114
96
120
131
96
144
140
138
107
89
136
80
56
120
109
146
91
103
74
90
76
128
69
120
94
54
141
66
69
104
154
120
123
107
64
123
96
69
107
87
80
121
82
150
134
69
143
124
119
76
120
78
93
107
125
108
144
119
114
110
67
107
99
89
80
151
87
69
126
131
80
96
143
80
117
101
119
137
134
80
133
80
125
69
80
107
91
92
119
101
113
104
110
120
134
85
128
113
104
52
54
99
121
94
107
131
161
59
60
144
89
89
72
113
107
128
91
122
145
128
140
128
110
89
141
56
143
69
143
85
136
69
97
104
80
80
120
140
145
64
78
131
87
117
119
164
54
197
69
88
78
107
104
148
96
74
154
175
117
80
112
94
80
138
80
89
95
87
112
112
87
75
148
89
125
156
120
87
138
78
145
69
132
110
120
119
72
54
78
125
104
127
156
80
102
154
80
93
111
109
128
107
109
109
142
134
91
123
60
112
148
154
93
80
87
93
98
131
169
123
119
201
78
131
99
87
136
69
102
104
64
76
122
80
114
123
133
80
99
114
101
126
80
80
131
88
109
109
129
109
99
78
136
107
144
111
119
117
107
80
120
54
80
115
78
69
96
145
133
101
89
78
113
98
151
76
112
148
183
131
69
74
84
99
134
79
93
113
80
175
80
69
82
107
69
89
175
60
109
54
123
89
113
113
67
81
80
99
89
112
162
91
154
76
78
78
187
154
113
123
132
83
107
163
96
80
91
101
87
76
69
175
94
91
126
120
78
163
80
109
69
80
72
107
88
156
111
119
146
119
74
69
164
78
140
107
151
69
96
134
154
94
113
154
112
73
119
78
109
69
99
69
121
111
130
99
69
101
160
107
175
69
78
106
88
136
109
101
146
120
104
147
107
119
80
158
88
99
76
80
119
103
80
128
118
131
95
151
109
109
127
76
78
98
78
109
93
131
95
90
76
72
88
90
145
128
120
87
131
101
151
90
120
127
69
80
52
102
163
112
69
131
151
76
87
98
138
134
134
85
106
129
122
78
128
134
163
80
72
75
111
117
69
110
78
69
118
99
74
98
119
89
99
80
153
78
126
69
112
175
94
78
69
87
54
133
112
119
112
69
75
96
91
121
87
104
106
131
109
54
197
119
93
120
112
115
88
76
87
121
114
78
107
101
98
69
80
80
149
92
155
197
99
99
131
116
155
115
131
100
87
106
118
121
52
122
89
78
102
83
73
80
158
103
119
140
107
128
90
93
156
67
72
96
76
93
99
87
150
111
88
154
151
131
140
88
69
91
175
117
119
113
90
119
113
52
78
90
109
64
154
66
175
104
98
83
87
101
110
153
119
80
133
87
113
116
69
96
123
120
110
88
153
74
99
154
96
146
76
91
69
201
63
122
199
99
96
76
122
117
126
127
112
114
117
119
89
117
112
87
94
106
80
113
137
136
54
76
112
78
138
145
103
93
131
83
73
140
69
163
52
117
166
80
133
54
131
128
136
102
94
121
69
78
76
99
54
80
175
128
107
100
87
128
107
72
128
87
165
87
67
69
87
160
78
110
132
145
89
102
127
119
87
120
117
128
145
111
90
78
80
104
111
126
80
131
94
56
80
80
104
90
80
120
78
154
93
174
76
80
136
80
118
69
121
90
80
103
137
128
100
80
99
137
85
83
89
78
142
110
88
106
88
109
197
118
64
72
52
185
174
88
106
89
68
125
122
140
113
91
112
134
131
134
94
119
120
137
128
80
149
125
156
91
136
162
175
131
96
69
146
156
96
80
80
121
145
80
80
121
88
155
109
110
76
147
107
125
99
139
88
106
123
116
120
96
99
175
143
160
84
124
88
102
197
134
118
82
105
72
80
113
80
103
99
93
128
76
87
146
112
175
104
91
120
80
119
99
69
87
69
122
85
106
151
120
109
96
80
113
120
80
120
94
119
87
118
89
128
107
69
76
119
89
99
137
78
116
80
87
69
76
94
78
157
68
119
82
78
117
74
175
109
121
69
156
118
98
80
134
106
138
102
135
80
87
80
112
110
120
110
88
97
80
163
164
76
119
128
151
117
127
96
99
93
91
87
87
131
114
93
129
107
115
107
110
93
140
116
134
110
134
109
85
80
100
66
80
127
146
197
87
72
131
69
80
75
106
128
123
121
76
151
120
118
66
69
93
125
76
109
109
91
89
144
96
99
80
90
151
54
80
118
88
101
99
101
56
91
134
89
100
107
56
164
154
128
156
88
80
147
78
175
80
105
78
183
102
87
107
107
197
80
54
128
102
72
118
99
149
106
80
120
175
107
136
80
93
91
121
154
72
100
126
54
112
128
160
131
119
99
80
137
96
87
145
111
113
113
131
87
78
151
119
106
69
109
87
120
91
93
138
130
69
80
56
80
114
152
80
107
71
115
69
80
72
130
79
88
87
78
117
94
80
102
78
93
114
122
175
56
94
80
80
130
119
78
78
69
80
121
120
129
76
134
87
72
80
58
89
112
69
104
67
80
120
107
96
109
104
97
110
117
97
88
87
129
67
85
141
67
154
197
69
130
116
76
145
155
145
102
92
137
101
76
154
69
175
112
119
119
87
103
102
95
138
128
144
117
80
131
119
69
89
56
72
113
132
148
106
78
88
146
137
88
154
98
112
78
87
69
88
104
112
131
119
120
97
160
106
175
107
175
99
107
104
122
85
112
134
43
119
148
175
119
128
111
107
120
101
106
136
69
129
132
146
80
127
120
56
57
91
128
123
119
151
163
154
101
87
136
69
128
80
94
109
111
80
110
73
109
88
175
119
94
94
99
197
119
80
130
104
119
174
130
104
89
155
92
89
76
117
100
89
109
137
72
108
127
107
109
85
151
155
78
101
128
197
101
130
72
80
136
69
117
76
115
121
93
120
85
181
93
100
78
79
80
120
85
136
161
69
120
107
107
72
175
110
119
89
59
69
94
78
75
80
120
159
91
109
129
152
71
118
112
162
124
158
87
128
146
147
143
138
133
98
121
64
112
96
121
79
80
78
110
112
163
114
106
103
78
76
155
69
134
175
130
136
77
114
112
120
183
122
80
104
113
80
52
134
156
83
80
120
92
101
93
110
87
88
90
87
119
153
128
99
119
125
69
78
155
137
164
76
163
149
154
100
110
146
89
133
119
119
126
93
78
69
119
138
115
172
148
104
109
100
136
132
116
107
94
69
80
101
87
58
85
121
119
120
64
90
100
99
76
87
89
110
88
119
76
72
69
136
164
85
94
120
78
120
119
114
154
98
69
93
119
111
119
123
130
122
123
140
89
145
197
101
69
80
134
132
91
155
144
87
107
134
84
69
78
107
120
159
96
80
104
69
80
151
74
102
94
94
93
87
80
156
78
119
119
112
163
107
69
131
132
119
134
64
124
136
89
89
131
120
78
69
119
124
140
72
80
143
72
110
109
80
43
120
76
101
78
115
96
112
135
87
101
69
125
82
85
117
58
69
96
175
140
125
143
111
121
111
183
78
87
156
89
87
94
108
78
78
118
134
136
71
72
109
80
94
156
69
114
183
80
136
112
92
78
139
80
72
109
142
80
95
80
151
119
134
107
81
102
144
101
115
69
94
78
78
80
74
119
175
127
71
120
87
137
87
89
123
137
88
134
69
128
80
78
145
79
131
69
109
110
126
163
120
101
89
140
129
66
117
136
100
113
111
72
80
110
87
162
69
111
76
87
117
109
113
91
64
109
101
107
175
78
111
161
113
113
106
87
94
107
87
94
136
145
87
128
69
68
134
88
126
133
78
90
67
116
106
112
126
69
107
117
120
144
82
120
131
76
69
69
79
109
104
87
107
99
119
102
85
80
123
94
127
69
69
78
104
137
109
78
151
117
103
80
87
125
112
134
131
69
89
160
87
117
71
80
76
154
155
109
128
94
87
103
76
78
82
120
99
118
155
109
111
80
131
149
76
113
107
80
151
107
74
118
175
99
111
142
107
148
120
91
91
80
174
104
76
123
107
106
80
175
156
80
93
160
119
104
169
110
172
76
69
76
143
75
136
69
78
102
151
126
76
115
101
121
74
80
119
102
94
110
119
154
56
119
120
119
120
131
109
91
102
69
80
148
88
112
120
101
69
72
99
94
107
118
107
69
87
74
121
90
112
69
78
119
104
144
175
146
90
146
58
120
107
80
118
89
119
80
87
109
91
109
119
118
69
152
110
87
72
81
175
78
136
76
96
69
120
99
121
111
126
80
80
183
89
71
110
56
88
78
138
101
52
155
107
104
143
175
92
69
175
97
138
104
72
97
76
107
106
87
112
98
120
127
89
90
119
142
109
78
69
98
87
70
80
83
95
197
136
118
80
87
43
154
72
199
74
69
109
128
99
154
106
89
102
80
106
134
107
102
93
88
109
130
120
89
130
75
93
136
78
151
99
78
80
159
140
109
130
128
89
134
80
110
117
117
78
141
118
197
156
146
154
144
87
88
119
130
127
80
128
137
139
98
78
80
123
107
91
72
76
120
100
126
140
80
80
78
78
129
109
121
104
89
89
121
113
125
136
124
100
100
123
74
86
87
141
88
95
175
129
87
112
116
115
119
100
176
144
95
82
127
87
90
127
137
121
90
80
100
80
80
161
151
69
69
101
100
136
183
119
99
78
88
174
107
66
112
94
117
113
91
118
101
120
69
80
117
127
146
80
175
174
98
88
87
88
83
132
112
136
112
183
80
78
154
107
96
94
94
78
90
96
80
121
128
88
145
113
109
113
78
80
120
69
128
80
120
137
99
80
85
119
107
87
107
147
76
175
80
80
104
82
88
144
86
69
80
88
106
89
80
112
119
88
146
91
93
52
104
140
80
140
87
80
109
156
78
69
100
126
43
119
164
69
78
121
107
109
101
88
185
97
120
120
105
89
104
147
101
120
95
113
99
89
83
88
69
94
80
88
130
87
71
128
112
76
80
80
110
102
54
69
121
69
93
76
67
78
88
110
175
69
60
109
163
80
111
115
80
145
87
131
103
119
94
71
111
89
104
112
109
56
92
124
72
96
87
107
80
89
89
81
119
131
124
99
106
85
120
96
79
149
156
107
137
95
127
124
74
69
143
201
118
98
111
156
115
69
84
98
94
110
106
100
154
115
111
102
76
87
103
113
76
111
91
100
146
115
72
138
136
90
126
102
88
87
151
171
128
113
162
112
80
109
155
78
75
76
119
92
74
102
138
102
143
76
118
117
91
110
56
80
96
99
96
103
69
146
88
145
76
67
150
56
95
150
117
101
95
100
107
119
99
78
76
87
121
56
109
88
91
96
72
80
112
132
148
93
134
69
80
69
66
126
156
113
134
112
54
78
144
107
76
69
93
140
151
91
145
106
76
91
54
107
109
116
128
133
143
108
93
110
134
87
128
75
99
128
80
113
152
81
87
125
136
87
80
80
80
119
80
117
87
136
118
154
103
124
176
108
66
110
93
80
100
118
76
78
85
72
120
131
83
127
69
76
143
99
187
94
140
95
154
183
69
107
74
112
69
134
109
133
140
91
94
164
89
119
154
109
87
120
76
120
94
136
150
107
89
87
87
156
75
122
148
122
74
120
80
126
80
69
121
76
80
89
91
128
115
101
134
109
156
146
121
121
114
59
88
72
96
111
101
114
98
89
110
102
107
136
99
175
88
154
97
112
95
170
69
69
99
76
94
140
104
102
95
136
96
120
91
80
87
132
109
145
60
72
88
124
107
87
125
136
118
99
80
86
89
74
85
101
87
69
104
72
87
106
58
80
121
95
121
113
106
127
151
69
119
145
111
199
143
112
197
167
100
110
104
175
117
92
69
69
136
89
111
88
94
120
185
69
139
106
107
117
79
87
97
93
99
89
89
120
89
83
120
87
136
80
103
80
119
79
76
120
96
80
76
113
94
101
56
175
119
95
106
142
96
152
146
80
88
119
95
93
99
109
119
87
80
80
119
140
111
123
80
101
94
76
120
89
103
78
111
102
78
80
154
104
104
72
69
107
54
112
113
136
128
109
63
114
131
121
121
114
128
119
80
107
131
175
175
107
145
102
133
112
156
83
128
136
117
80
100
85
99
89
197
52
156
69
118
128
69
94
127
78
76
121
119
69
69
120
80
120
80
69
78
80
197
120
112
87
73
91
93
79
69
92
80
101
78
161
117
87
76
151
127
126
80
76
134
80
101
101
199
164
80
113
69
113
118
76
73
83
76
89
80
160
124
164
57
93
118
128
197
76
137
74
79
87
109
132
104
72
154
78
112
101
197
126
76
101
96
115
76
80
80
75
98
78
136
85
69
119
76
72
91
117
111
110
94
69
72
112
131
199
80
107
127
125
54
67
164
120
107
80
91
101
75
175
76
126
117
78
78
87
123
152
91
124
69
109
127
175
85
80
96
89
74
112
80
96
80
94
150
80
104
80
74
63
78
78
93
88
113
104
197
140
102
69
152
91
134
121
78
176
175
107
145
80
128
118
90
87
114
80
139
80
108
113
75
107
128
83
99
128
89
110
140
91
114
110
121
80
110
88
120
80
89
102
69
143
115
109
98
98
163
120
104
69
144
87
107
126
106
87
112
69
120
140
164
143
95
80
140
104
95
87
144
75
126
144
154
100
111
136
120
119
112
175
87
87
117
136
80
166
89
104
76
136
76
69
89
102
143
77
80
134
56
79
80
153
99
121
91
127
89
87
87
105
150
120
67
89
142
104
107
107
131
69
107
80
89
104
88
134
123
96
128
107
156
107
54
119
197
94
104
106
69
78
102
83
89
52
76
72
151
78
80
114
101
76
154
120
157
106
106
93
80
136
140
134
78
88
107
101
87
106
87
120
96
151
80
89
175
69
80
128
100
117
197
88
69
78
76
140
102
113
94
52
110
119
99
110
80
80
128
104
117
145
175
109
139
110
93
107
117
120
87
52
69
160
127
80
110
89
96
117
111
117
69
69
120
87
88
156
76
64
120
107
107
140
78
80
88
109
128
83
90
96
123
89
93
119
133
80
113
107
119
107
80
143
94
115
112
107
117
101
130
143
80
76
87
161
140
58
93
89
84
74
80
89
69
152
69
126
101
98
148
119
155
113
78
130
107
119
122
76
52
119
154
151
140
80
104
78
60
69
111
80
73
120
78
103
69
120
118
159
112
164
117
130
128
72
78
83
88
69
149
99
80
117
126
135
140
104
107
76
66
123
140
107
121
76
96
87
122
119
107
159
88
126
146
164
119
126
80
93
175
133
73
130
59
127
109
107
91
89
118
109
136
126
156
110
138
136
115
107
107
113
113
78
109
69
64
99
74
185
154
128
119
76
119
117
121
101
134
87
80
97
121
119
87
118
150
107
145
112
134
80
52
94
98
121
113
100
69
91
43
80
82
74
112
89
88
56
69
128
80
87
72
69
98
106
149
125
101
154
57
80
67
69
80
87
69
127
106
136
128
137
88
76
94
137
104
104
83
54
154
95
98
146
136
146
126
112
88
76
99
107
95
154
136
85
69
69
54
116
78
80
118
113
87
163
69
80
117
104
128
123
119
187
104
80
109
175
80
88
104
87
122
87
69
215
136
80
142
93
119
78
104
72
122
76
80
80
64
113
109
117
87
123
69
88
146
103
95
93
107
107
80
138
76
92
118
78
99
118
88
120
99
74
112
154
78
76
119
175
54
103
72
136
106
121
89
115
87
94
69
137
126
101
80
166
175
151
130
124
145
137
107
154
110
119
69
54
154
110
80
80
97
80
119
131
120
78
80
93
93
120
85
104
80
88
144
80
80
127
119
121
128
101
138
138
69
117
123
106
155
114
110
69
88
69
87
107
80
119
183
112
74
128
120
110
133
76
137
101
80
155
197
94
154
96
96
128
136
175
90
145
175
118
89
69
88
128
72
129
80
121
78
119
109
106
104
69
121
135
96
138
69
89
69
199
94
95
97
69
175
80
107
69
123
134
128
95
80
120
72
76
109
100
76
69
140
106
94
134
93
119
99
69
80
199
175
128
85
89
120
129
118
85
54
129
109
125
80
136
112
162
118
102
56
106
185
148
107
142
87
99
162
107
155
151
131
154
80
80
127
80
136
91
119
89
88
152
87
152
99
120
107
76
134
106
143
87
69
99
80
101
121
175
87
98
87
128
100
96
117
99
91
102
43
87
118
109
175
76
80
54
117
92
175
80
68
107
151
125
76
109
125
139
88
80
156
54
89
153
175
72
129
103
116
91
109
78
119
69
101
108
69
147
94
107
74
116
76
163
119
123
82
76
72
137
197
98
69
80
120
93
89
67
127
135
140
143
78
74
83
110
82
197
102
96
112
64
120
78
60
69
76
69
85
133
151
120
69
128
76
111
69
119
109
72
120
142
107
87
110
175
80
92
87
114
107
146
129
94
124
69
76
56
141
95
87
78
112
96
93
101
131
89
80
78
89
99
80
87
85
96
109
119
80
104
136
151
126
154
87
87
76
109
80
172
101
80
130
87
121
114
127
80
80
69
88
119
114
107
80
131
104
69
80
175
102
69
134
138
58
80
110
104
120
128
69
76
175
85
181
175
131
117
120
89
87
127
104
131
72
79
76
99
134
146
74
80
78
83
87
115
104
110
155
99
80
92
104
67
80
78
72
137
154
120
79
113
109
156
107
85
142
199
83
101
118
74
78
154
107
80
107
128
80
111
77
64
120
126
94
146
140
136
112
136
116
145
80
102
54
110
129
175
134
183
110
95
71
74
136
94
107
69
93
80
146
100
119
117
76
171
132
140
85
76
113
115
75
138
88
85
119
133
80
88
120
113
69
80
104
80
69
113
120
120
76
76
127
120
156
96
69
67
69
110
99
93
129
110
93
156
110
109
108
131
108
69
157
94
112
154
113
79
136
110
94
110
87
175
107
131
159
69
109
85
88
120
145
113
72
117
163
96
126
109
80
147
82
69
107
181
72
97
113
80
125
106
175
175
134
76
90
127
74
140
89
87
91
105
88
128
117
72
126
88
136
136
101
103
80
69
115
110
120
93
87
185
78
120
122
120
156
76
107
136
120
69
75
87
54
107
119
144
174
124
80
104
95
98
129
155
134
76
101
138
151
89
115
121
75
69
80
128
74
80
145
110
69
154
85
162
109
69
123
193
114
154
147
78
54
162
117
118
109
119
154
87
89
94
67
137
137
78
76
120
100
146
76
76
110
88
69
148
56
118
117
112
78
112
126
122
131
127
94
132
133
126
69
74
134
109
87
175
72
87
100
146
163
93
78
155
151
76
89
120
96
87
149
133
120
100
110
72
104
74
134
131
80
91
69
99
119
119
119
78
104
120
155
91
76
75
181
115
76
105
112
137
106
106
110
88
93
115
134
120
69
119
99
118
175
89
88
74
119
146
72
69
117
127
131
121
94
118
118
76
110
69
118
74
76
87
103
87
52
87
78
80
102
127
69
87
85
151
89
66
89
186
101
113
67
107
128
98
69
115
114
72
93
110
69
78
89
88
95
69
76
100
80
138
154
89
108
134
119
126
110
114
118
151
71
142
140
119
80
69
110
196
117
76
76
131
87
143
131
149
126
77
151
127
83
78
89
119
141
99
76
127
114
76
140
109
109
119
106
69
69
124
69
76
117
117
177
106
69
87
124
119
76
88
69
93
88
106
164
89
114
106
132
78
128
113
80
88
87
134
90
87
111
106
122
80
110
127
147
124
120
175
119
121
99
132
89
131
122
80
74
120
80
130
140
88
119
119
88
121
69
140
59
106
66
148
131
119
87
96
128
69
127
78
78
112
128
119
117
79
113
56
93
80
109
70
117
131
102
124
80
136
126
109
106
89
120
110
76
98
109
140
109
78
119
106
125
107
134
76
94
119
80
99
87
116
126
117
117
99
69
114
101
69
128
80
95
83
99
87
117
52
102
146
145
97
136
108
88
142
117
92
80
110
128
80
80
117
155
78
101
114
87
100
93
109
127
78
134
89
103
87
78
145
72
72
88
148
96
129
136
145
72
78
88
107
110
80
72
80
104
67
88
109
114
76
80
107
69
92
112
69
140
117
67
69
108
128
119
128
131
154
125
120
111
115
83
131
80
89
56
94
137
175
83
88
78
136
98
109
120
69
117
80
136
151
134
81
106
119
140
102
119
106
82
100
76
127
106
119
132
54
80
88
58
76
99
109
131
72
113
109
69
121
78
155
78
146
91
143
99
69
104
107
93
92
80
107
104
175
104
131
112
69
94
87
109
74
89
125
96
69
154
127
155
134
76
120
136
88
126
152
76
126
102
163
136
88
78
113
197
121
99
80
164
78
85
80
99
72
109
76
80
69
87
87
109
88
91
82
120
114
87
87
110
69
175
140
124
84
88
88
175
72
155
80
107
80
164
107
151
89
91
111
132
60
110
103
80
69
124
154
123
104
100
85
104
157
119
76
110
140
86
134
93
160
90
162
145
107
104
78
156
72
88
96
100
111
85
76
80
120
71
117
94
127
81
118
164
175
103
119
94
88
120
96
101
99
163
113
76
113
76
89
80
109
132
107
69
117
79
88
89
145
100
166
128
145
136
138
127
131
87
110
109
83
80
134
132
89
69
107
154
85
103
80
69
156
89
162
87
142
75
164
112
69
104
139
124
137
80
103
78
120
122
123
105
185
80
80
110
78
78
120
136
137
156
140
80
131
128
109
85
69
110
104
120
175
93
109
131
117
120
69
54
107
52
105
80
124
119
137
94
114
109
88
141
93
197
183
131
69
83
131
145
128
117
118
100
87
131
119
87
146
131
87
78
74
139
119
197
134
78
76
101
107
130
118
113
87
109
89
128
121
75
103
175
88
133
76
99
96
80
109
107
183
83
74
78
137
72
155
101
72
118
69
106
154
93
88
117
169
119
156
79
110
87
69
80
111
104
107
88
96
99
78
69
107
103
126
80
80
163
104
87
128
106
93
128
146
89
80
96
69
117
119
89
160
87
117
78
87
151
122
89
104
155
113
106
80
111
91
76
109
181
146
162
125
142
83
85
80
76
87
120
119
83
89
54
69
93
93
83
123
87
78
113
77
78
69
101
124
79
90
175
132
119
118
71
82
136
112
69
119
136
114
78
111
97
91
131
76
128
83
128
80
69
94
110
69
119
107
87
85
169
78
133
87
129
113
128
145
96
76
78
106
143
102
96
72
128
56
109
104
133
132
110
120
128
103
119
87
107
104
91
107
80
134
87
140
156
100
80
131
175
80
111
126
69
136
101
175
149
78
91
80
119
69
72
99
87
52
94
163
112
109
107
137
107
93
136
120
131
117
109
144
155
88
140
131
113
106
120
100
88
115
99
136
110
109
94
87
87
103
89
127
128
110
131
118
121
83
80
112
110
92
69
96
127
89
115
80
117
78
106
116
109
118
120
89
94
185
116
69
106
93
76
76
69
54
75
129
123
109
115
140
74
119
120
121
174
140
64
199
119
110
158
66
87
64
81
80
69
138
109
89
80
101
131
76
122
150
111
67
123
118
110
92
101
87
106
78
119
89
144
69
87
133
119
136
91
166
80
80
69
137
119
156
76
96
67
110
80
155
80
76
80
83
69
94
119
115
76
142
119
56
143
108
117
80
87
87
109
128
113
80
140
69
69
69
106
112
146
110
94
128
87
131
104
134
69
80
146
153
101
112
128
72
119
87
148
87
78
99
93
128
128
140
197
69
103
175
91
80
80
80
54
145
136
123
69
69
201
104
131
68
59
175
175
119
80
129
96
112
134
52
66
94
80
127
91
121
69
140
118
72
121
80
69
111
85
128
87
153
69
119
90
88
76
74
112
80
69
112
120
96
99
151
119
80
120
94
81
141
72
80
106
99
124
143
89
107
111
76
140
152
155
80
113
132
104
110
131
117
151
80
76
164
134
124
112
94
80
69
96
80
100
107
96
100
93
109
110
106
80
109
149
123
175
96
87
80
99
80
113
124
80
140
89
154
119
143
121
134
87
148
69
115
96
72
106
90
113
134
87
115
76
88
107
120
174
56
142
107
117
118
112
80
104
91
106
106
64
76
107
109
87
124
74
164
120
163
134
160
80
138
69
56
107
160
72
78
130
88
80
119
121
96
69
137
110
87
80
128
135
120
74
56
101
181
104
78
110
89
108
94
91
120
66
136
94
69
110
136
87
56
69
139
87
115
87
88
124
157
126
113
109
76
72
79
127
118
93
76
197
80
69
120
113
52
78
100
120
58
114
96
90
120
69
93
110
137
85
121
104
80
132
69
121
149
80
99
93
69
87
104
88
80
94
87
93
128
128
130
93
112
98
125
94
105
136
72
80
75
181
133
119
154
112
128
109
174
100
73
96
77
156
107
90
106
129
119
109
175
146
104
147
59
87
80
146
119
120
74
108
113
96
140
104
163
132
106
113
209
127
99
106
69
88
78
95
147
83
124
69
88
121
175
75
87
142
119
56
146
103
80
106
119
96
94
85
74
117
123
69
119
147
87
76
114
81
90
98
121
152
69
117
100
156
80
122
69
76
117
90
69
58
134
101
122
124
137
89
136
109
128
106
94
101
112
90
197
120
87
69
107
99
128
160
175
78
154
101
88
156
112
175
69
88
118
119
108
107
122
102
56
69
94
175
80
119
69
94
76
136
69
93
128
69
104
92
110
128
114
87
100
71
66
90
117
124
108
93
91
125
111
116
113
87
118
83
120
130
80
106
129
94
82
79
69
78
54
183
145
89
87
93
101
91
88
134
69
80
110
96
111
98
56
118
67
96
151
118
146
71
106
119
175
66
78
160
80
100
109
148
96
106
93
150
103
90
76
183
136
119
154
80
74
138
134
140
140
80
80
112
155
89
80
106
120
107
93
130
78
80
107
107
151
112
76
128
143
117
118
117
43
145
154
107
147
54
71
69
76
128
99
74
80
175
117
121
69
155
111
76
87
72
98
128
103
95
80
91
154
134
127
113
136
78
95
88
133
56
78
119
58
119
136
120
93
58
120
111
94
112
113
103
69
87
138
131
87
66
69
94
155
92
94
119
121
99
66
127
88
93
113
74
118
106
103
120
154
106
112
78
113
140
175
80
128
102
69
112
113
119
110
128
84
67
120
75
121
52
156
80
98
101
166
74
69
162
91
76
88
113
69
119
73
78
94
144
134
108
110
131
133
100
74
131
197
123
121
119
87
91
80
142
126
88
87
80
155
128
152
107
64
88
113
80
116
128
134
80
83
104
106
166
69
87
119
154
183
85
181
103
69
76
87
103
127
99
131
94
148
136
80
119
128
93
136
120
69
120
109
134
142
132
87
80
93
119
102
78
151
91
74
95
87
94
94
85
80
54
112
146
81
140
76
75
130
103
78
89
69
119
80
95
101
113
87
80
110
66
133
100
90
78
143
110
177
93
85
66
121
89
126
156
101
80
119
96
154
127
111
143
139
85
69
87
80
120
107
121
83
155
72
174
99
90
87
104
80
175
78
69
133
92
79
69
128
87
116
69
147
102
175
148
69
131
120
140
69
93
99
99
74
69
127
107
94
106
76
86
112
163
155
156
176
175
144
96
122
80
89
88
80
94
83
89
91
123
80
122
120
76
155
156
69
118
121
107
78
201
115
94
124
89
119
113
144
99
115
128
109
152
76
133
93
154
118
69
103
121
99
148
118
139
100
78
99
94
69
91
56
121
137
113
89
120
118
69
154
80
132
109
68
172
99
78
113
80
114
124
121
154
110
175
156
175
80
69
154
100
89
125
128
110
121
110
118
78
134
76
128
94
119
137
138
115
78
88
93
85
120
54
136
78
87
72
117
107
87
120
76
85
104
125
156
114
110
155
115
87
130
112
145
80
83
96
80
102
122
156
90
109
117
91
80
69
109
120
120
69
132
175
156
131
79
111
69
69
154
78
80
121
74
147
120
76
151
129
94
155
80
104
127
201
94
69
136
119
109
93
175
156
154
80
89
122
94
112
89
114
143
101
114
121
112
77
175
100
78
80
110
79
87
150
113
69
107
155
56
91
105
119
139
69
145
69
72
80
110
171
87
69
110
75
164
80
104
80
89
76
58
69
89
69
136
137
69
78
131
78
96
128
154
120
106
111
109
140
80
146
87
78
101
80
64
87
104
99
80
87
89
104
110
76
136
145
121
121
99
78
96
96
175
175
100
93
124
128
80
175
107
99
80
154
120
93
88
140
76
137
131
120
99
81
102
69
93
136
117
99
128
117
119
121
117
78
80
112
154
110
78
104
120
93
80
111
121
114
87
99
151
147
110
80
130
69
137
75
128
145
85
83
112
80
105
87
101
100
175
76
124
56
175
177
109
113
119
131
121
80
107
100
143
109
151
102
132
80
66
80
93
88
134
104
119
87
93
121
109
187
95
89
112
102
134
72
132
110
60
89
164
80
78
89
143
134
69
76
109
119
154
96
138
106
80
107
87
88
69
78
175
80
87
122
91
87
87
131
131
80
109
97
90
147
155
83
90
107
93
115
89
125
80
114
82
123
88
69
122
104
85
90
94
130
69
80
85
156
120
123
72
95
87
74
69
113
120
112
123
96
94
91
78
80
89
76
80
104
98
151
87
78
87
107
99
120
154
76
78
121
107
69
80
139
88
94
69
117
107
104
93
101
119
109
127
88
72
109
124
121
101
72
154
90
87
94
128
69
72
121
115
99
72
80
104
78
147
145
110
136
120
119
88
111
80
80
175
69
110
147
153
89
139
134
106
175
69
87
72
69
121
80
100
175
111
119
119
80
72
87
108
66
93
103
156
128
134
107
147
89
72
67
151
69
151
80
199
60
175
113
54
125
127
108
109
87
89
87
80
119
151
76
117
146
90
112
127
106
146
107
124
72
76
88
134
154
76
99
119
80
72
85
140
87
80
90
105
149
101
76
78
88
91
146
98
94
91
126
136
128
135
69
145
112
80
99
145
69
104
110
87
127
137
89
144
122
107
119
71
56
120
59
76
54
91
157
78
134
175
115
134
72
113
102
80
130
197
175
109
119
134
91
128
139
89
162
154
56
110
130
93
131
87
104
89
134
126
88
122
119
107
106
104
89
80
78
80
95
130
155
153
93
111
175
104
123
106
98
155
121
88
106
72
87
87
89
112
116
109
106
69
131
133
100
121
109
117
120
80
101
80
96
131
78
109
91
69
76
72
52
56
119
106
187
104
128
94
145
125
80
100
76
88
87
131
80
78
112
136
56
118
83
69
128
69
99
175
69
118
175
78
90
76
96
89
159
156
80
110
120
104
107
96
89
80
80
150
166
128
106
139
163
145
80
80
132
90
147
155
175
109
95
111
88
121
78
175
83
119
78
101
116
107
81
87
78
88
149
145
175
99
56
99
119
122
97
109
69
118
89
143
109
99
78
143
120
72
107
128
69
99
69
113
139
72
80
69
88
69
74
110
117
106
99
76
125
107
99
154
96
89
136
107
101
135
118
94
119
113
75
175
54
106
69
106
101
69
175
151
79
96
101
160
136
87
94
133
56
96
69
101
92
96
149
120
87
76
99
112
109
175
89
125
110
154
111
134
100
96
87
119
88
107
112
136
144
174
99
121
69
58
96
106
85
87
115
78
123
96
146
140
152
209
140
76
104
87
121
98
137
107
89
113
43
87
80
113
63
128
67
80
124
140
140
71
90
104
138
83
54
109
126
66
88
69
130
129
159
109
114
87
96
144
119
93
75
142
160
129
86
69
119
126
88
146
104
99
78
104
96
140
109
134
80
107
144
101
111
143
121
122
75
187
80
121
155
128
120
154
72
104
144
143
100
72
72
72
95
106
74
94
122
119
136
93
109
78
107
87
69
80
107
80
102
87
52
83
66
131
175
91
106
140
87
80
109
80
139
143
137
124
109
71
104
93
80
121
80
104
113
175
163
69
109
130
113
72
117
109
131
110
120
133
121
80
106
155
128
93
115
127
80
87
119
140
175
118
107
78
69
128
131
111
59
54
119
69
102
99
127
161
56
145
155
87
80
146
113
149
102
151
76
106
69
156
109
76
99
79
82
117
154
127
120
109
138
140
109
137
197
87
80
72
127
91
114
80
156
106
99
76
90
156
82
130
88
87
122
165
140
121
133
69
138
154
126
96
88
76
93
76
133
124
52
90
98
89
121
101
122
80
108
154
126
122
69
98
115
107
107
80
78
97
88
131
140
66
110
76
109
69
87
138
91
91
120
87
69
87
119
128
80
175
94
83
104
100
183
69
69
129
69
145
76
80
69
73
99
107
80
138
147
134
89
115
78
119
115
101
134
120
119
131
160
174
147
74
131
78
80
54
88
95
134
121
80
136
98
72
131
175
103
99
126
181
99
111
91
99
96
94
110
141
102
128
76
99
87
119
75
107
165
80
69
75
119
101
123
128
146
160
151
138
69
80
104
156
85
80
69
107
104
131
80
133
166
106
80
128
101
80
97
122
96
85
80
131
89
117
78
109
110
89
114
118
122
89
126
101
107
95
94
109
69
129
135
81
78
102
78
133
89
76
105
113
69
134
107
175
96
104
89
132
155
197
76
107
69
93
128
91
93
78
99
175
96
99
119
120
88
154
87
59
119
91
94
78
114
134
120
110
103
89
80
102
69
88
151
80
99
67
89
151
121
136
113
123
80
88
69
154
120
112
140
76
94
52
69
101
87
126
78
154
122
90
104
112
80
115
154
103
69
111
87
107
121
122
128
102
76
88
119
119
125
93
120
145
134
102
80
78
103
114
69
109
106
117
118
109
91
56
78
88
93
145
95
69
123
125
157
133
163
181
119
99
107
98
89
99
96
119
128
122
119
94
100
136
122
117
78
113
102
89
88
107
69
128
115
107
80
100
134
80
140
113
69
78
107
115
146
96
99
69
78
125
78
104
69
113
80
92
60
146
128
80
101
127
120
69
122
113
106
69
136
150
69
121
76
109
131
85
56
120
89
99
107
93
80
98
109
126
109
100
71
76
126
78
110
137
74
106
87
78
125
104
56
163
146
80
69
73
76
119
120
156
80
110
94
102
118
80
80
154
154
107
99
174
74
69
125
69
115
80
127
156
115
111
121
60
109
110
87
101
108
118
185
89
69
76
132
72
137
121
146
94
88
107
93
136
93
78
78
148
151
76
99
87
145
89
83
80
94
94
175
99
87
71
87
150
137
120
80
115
120
154
112
78
78
164
88
56
88
197
113
80
96
154
69
89
106
117
117
87
99
116
94
144
113
175
69
159
103
78
94
112
99
128
151
90
87
112
142
113
109
104
104
78
80
128
80
113
94
201
69
146
160
131
120
155
120
99
64
80
58
114
123
104
87
69
69
54
69
87
119
119
175
96
134
146
87
130
120
136
94
76
109
78
88
69
113
145
69
100
80
119
119
106
109
78
99
93
110
87
116
69
106
143
66
88
98
56
56
138
120
72
83
151
80
87
177
109
105
127
175
100
104
117
120
173
76
79
103
88
119
87
80
108
83
124
156
96
133
121
60
118
78
131
143
122
118
94
87
67
123
76
76
127
145
124
138
104
156
99
100
89
152
103
87
88
80
88
136
138
109
69
88
197
117
154
82
78
123
88
101
137
78
104
72
114
157
69
69
118
96
145
72
101
121
76
113
109
93
131
69
87
115
201
131
88
109
92
146
80
134
87
134
91
69
113
104
151
80
112
91
151
89
85
83
56
109
43
107
175
69
72
80
69
119
54
74
52
121
66
72
110
87
69
54
94
130
80
91
175
120
96
103
82
107
120
78
78
154
177
112
117
121
76
128
97
78
129
145
175
94
128
93
156
106
80
126
113
99
152
109
120
132
164
74
151
114
88
109
69
88
83
119
143
117
89
109
156
69
104
134
147
69
88
107
78
88
72
125
94
96
87
91
54
154
59
94
114
150
80
140
92
128
120
85
118
74
88
87
80
112
80
120
78
78
94
82
153
69
87
87
110
69
82
99
136
96
97
69
69
151
120
54
87
159
107
87
109
162
122
54
118
80
124
78
131
110
130
137
115
78
112
83
157
69
197
160
67
119
80
114
63
119
72
127
102
128
175
78
69
102
112
102
96
80
80
154
137
136
106
69
121
136
120
76
95
80
104
69
75
52
134
104
72
93
106
123
145
78
123
109
136
121
78
75
80
136
120
119
76
95
112
89
111
76
91
78
120
85
128
145
133
93
80
175
74
99
69
117
137
119
93
96
110
106
145
156
116
87
69
93
78
99
107
89
88
109
101
76
117
127
89
120
107
93
128
146
98
174
113
109
80
134
100
69
126
99
119
156
85
131
149
87
119
73
69
154
43
73
87
99
85
78
120
113
145
111
126
99
128
144
123
78
120
104
114
78
102
72
71
130
87
175
78
76
83
160
69
119
154
166
67
106
117
145
99
80
69
78
69
121
80
87
69
119
87
69
87
113
113
109
133
95
80
134
159
107
129
113
103
101
146
152
138
80
94
132
75
87
96
117
76
155
131
115
142
76
106
136
76
88
88
120
80
125
80
74
80
80
101
78
89
80
118
133
99
93
121
175
96
80
118
80
104
80
117
102
106
99
118
87
92
150
117
80
69
119
119
118
104
119
102
80
80
87
107
112
157
110
69
112
87
113
76
103
112
155
161
112
145
134
87
78
74
74
128
112
89
120
78
119
122
80
131
134
99
140
155
93
80
109
132
106
187
131
121
197
143
80
101
93
69
96
76
76
79
131
80
91
83
101
99
121
80
118
80
85
136
80
114
108
104
104
109
121
99
94
101
56
72
124
105
107
87
154
72
107
80
107
116
88
80
107
80
151
117
115
69
66
119
162
89
99
99
137
120
106
87
69
107
122
83
104
123
71
119
89
175
128
159
88
111
90
156
80
175
56
69
72
100
140
68
76
69
100
155
144
146
199
110
76
94
120
87
154
87
78
99
104
119
87
120
110
60
107
113
106
134
146
137
72
100
131
80
112
69
93
88
154
166
110
114
83
121
76
109
96
113
76
136
124
127
107
80
120
69
136
132
156
80
133
80
178
145
119
117
117
80
87
66
120
80
160
69
78
78
88
131
78
80
89
107
52
96
109
110
127
101
119
156
98
100
118
120
123
163
119
119
175
80
120
69
100
154
99
136
163
175
137
132
64
66
113
128
154
106
72
121
68
119
128
155
104
79
91
88
100
69
103
122
83
141
89
111
117
140
89
106
105
122
93
151
74
104
89
169
101
80
114
69
83
52
78
89
72
86
142
175
87
109
123
83
110
76
111
104
106
151
131
90
87
174
155
56
78
80
166
156
104
78
76
106
154
163
82
119
80
99
120
80
80
107
91
69
196
154
69
69
121
97
124
129
99
127
96
80
76
104
78
80
80
64
135
119
100
78
128
76
69
128
114
74
136
118
121
88
151
124
75
94
80
79
93
128
96
113
136
78
89
142
54
155
122
92
133
119
99
117
154
80
106
125
118
117
111
117
154
154
128
91
128
91
56
97
94
133
128
121
85
114
69
90
88
109
87
108
143
78
112
116
131
201
104
80
142
117
140
76
80
80
91
69
94
120
69
156
154
80
87
120
87
145
69
101
94
124
104
120
156
117
78
107
90
197
107
101
110
87
118
89
131
154
197
87
181
80
164
131
120
147
136
85
87
175
130
123
83
104
87
151
148
120
99
43
80
119
76
80
124
80
87
80
80
117
69
152
81
119
136
181
118
134
96
119
80
119
117
91
143
80
78
86
115
98
149
87
80
69
87
84
181
72
88
69
106
140
94
87
124
87
69
80
147
87
91
107
118
149
119
80
69
131
197
80
69
80
148
120
107
52
104
132
102
108
87
87
107
94
76
102
69
151
52
129
80
154
110
175
54
115
109
94
127
54
133
72
69
134
87
88
123
175
97
91
91
115
134
58
113
87
89
69
92
69
69
87
80
140
117
90
69
99
149
112
66
80
145
80
102
87
85
107
90
87
148
115
175
106
87
107
104
96
109
127
146
80
131
151
116
120
89
99
117
78
78
78
175
133
106
88
107
143
103
126
117
123
143
72
69
147
52
87
87
83
82
76
151
117
89
107
110
80
104
128
76
69
100
149
148
83
118
136
76
69
103
88
101
136
93
89
88
121
116
88
143
101
95
69
120
76
102
102
69
152
94
107
107
118
157
108
85
134
103
119
128
104
175
132
106
93
119
120
145
139
119
115
121
131
156
90
114
76
148
120
70
148
119
69
120
106
113
107
101
69
114
110
118
107
87
94
120
100
69
76
80
152
131
129
120
164
106
78
123
117
107
134
129
99
89
143
80
154
113
100
148
140
78
87
119
89
78
124
120
71
75
136
119
162
156
113
87
109
57
94
164
98
137
80
119
107
74
80
146
58
95
87
87
112
87
91
56
121
73
66
197
175
125
163
109
119
91
69
105
100
88
123
76
119
128
107
111
88
136
80
88
69
113
81
87
94
100
156
107
111
154
80
66
64
133
197
106
91
154
82
120
134
73
109
80
80
113
76
121
78
119
144
76
72
175
175
107
89
99
80
102
52
144
91
56
94
115
94
69
87
69
109
76
64
76
85
101
103
99
136
87
90
89
156
87
119
83
78
144
87
69
72
89
112
76
80
80
124
128
87
110
121
69
136
91
138
92
76
87
119
120
87
78
76
99
69
144
119
119
134
83
90
197
78
100
155
101
78
106
69
69
80
120
101
88
140
89
102
111
80
121
104
119
143
94
127
101
117
126
99
107
88
95
87
78
131
52
43
148
69
132
128
91
104
166
76
117
110
117
99
114
69
99
147
99
109
110
80
143
127
80
156
119
78
117
117
175
134
94
107
124
52
124
78
92
78
129
83
76
128
122
109
87
162
69
106
144
78
69
101
101
80
99
104
128
148
74
87
134
140
130
128
128
120
136
134
112
109
100
130
78
76
69
115
121
129
131
80
142
121
109
76
80
197
147
112
80
138
107
128
152
121
119
93
76
69
69
154
78
73
109
76
156
94
120
124
95
89
117
99
156
78
128
113
108
80
106
101
174
68
175
119
88
95
110
76
99
151
114
133
107
107
155
110
132
110
123
87
131
76
117
132
152
117
69
112
125
122
113
78
66
103
126
130
201
109
134
78
130
76
119
78
151
101
99
106
120
113
82
128
87
119
78
94
117
69
69
138
109
106
107
119
107
131
95
80
93
117
99
107
146
80
80
137
99
80
122
120
128
101
124
123
100
89
99
69
80
80
93
119
101
148
124
127
119
185
127
79
146
69
96
109
54
107
72
81
119
80
106
121
128
122
66
115
96
152
74
133
80
99
69
107
157
54
67
69
147
69
175
89
90
91
128
80
52
146
130
119
156
94
134
80
99
96
95
69
110
110
87
156
78
110
154
131
141
80
122
113
156
116
91
119
208
123
78
112
76
76
141
69
76
107
145
117
113
107
108
94
119
69
95
175
109
131
88
87
118
92
175
76
78
80
136
104
89
117
117
98
76
95
107
111
146
87
117
69
99
100
122
89
80
100
107
76
69
119
107
107
94
83
91
155
109
76
155
127
147
99
121
109
80
120
94
80
160
94
175
128
146
83
99
131
107
133
118
98
119
134
99
99
82
76
71
156
99
94
121
67
131
88
87
137
131
119
117
124
103
78
145
113
119
134
80
76
112
80
80
76
134
169
66
105
69
104
128
79
64
110
108
160
78
114
94
80
92
104
91
96
107
115
109
89
83
129
151
107
107
164
69
98
131
87
106
119
87
175
128
88
137
146
175
102
166
130
96
89
134
119
130
113
76
107
63
99
140
78
164
122
107
127
87
107
74
118
175
54
122
63
81
121
120
117
78
131
113
67
69
146
120
154
160
133
113
88
94
156
101
152
75
80
136
107
102
121
151
99
134
98
69
153
117
76
80
141
114
156
96
78
88
112
78
88
101
158
115
99
74
156
104
155
156
92
152
78
74
80
67
155
80
137
87
162
69
91
78
121
156
175
128
69
69
117
76
117
78
69
154
152
152
155
80
115
154
110
111
87
83
121
94
78
78
76
129
69
88
120
119
69
56
156
95
117
80
93
109
120
80
124
99
110
101
125
163
154
80
88
140
175
80
103
104
113
143
197
72
136
122
69
80
154
115
102
94
94
96
151
105
117
113
120
134
80
88
126
143
131
101
76
114
78
99
109
52
119
78
109
98
101
99
181
94
87
175
142
119
80
148
92
102
87
131
89
112
101
127
87
117
155
89
85
66
110
80
57
107
126
123
76
85
119
87
120
87
115
89
80
80
54
163
96
133
123
175
69
110
111
83
88
128
80
127
99
144
69
134
80
100
144
67
131
137
93
128
78
137
122
110
126
78
151
96
78
109
140
95
72
88
78
125
80
99
89
100
80
183
155
76
126
80
99
69
108
89
83
113
54
136
118
126
52
93
111
118
104
119
163
156
92
134
119
121
100
134
154
131
93
69
89
151
119
118
99
93
86
115
107
118
80
114
94
109
87
134
71
75
93
146
113
87
136
118
102
120
107
107
111
112
154
110
80
128
72
78
76
110
88
76
106
121
120
154
126
114
88
90
69
98
87
56
69
124
69
143
63
118
100
134
106
101
148
87
133
95
57
103
104
146
76
94
76
113
175
132
104
67
154
72
89
80
93
76
106
149
137
76
152
140
87
102
87
72
113
134
79
94
69
146
132
87
146
87
131
136
109
79
79
94
71
69
87
141
87
136
145
116
82
75
97
128
107
154
82
107
121
76
113
99
67
113
127
128
114
87
136
134
78
87
119
76
99
109
69
164
82
119
89
76
119
78
101
185
128
83
107
94
89
99
111
88
87
78
165
52
72
85
117
69
72
129
147
106
74
76
151
76
112
119
110
138
89
87
80
148
90
80
138
104
109
71
128
78
66
82
72
80
99
80
107
107
106
114
131
175
88
87
80
74
85
117
92
87
96
80
104
80
175
123
69
129
109
103
87
154
197
78
154
87
91
82
119
76
76
52
102
87
201
71
134
88
87
80
113
154
154
82
131
151
80
80
94
145
96
91
80
123
136
134
124
131
100
110
110
102
101
175
98
131
140
96
156
175
171
119
91
100
120
144
104
131
155
82
93
205
69
120
119
102
133
69
165
114
69
136
120
107
154
87
159
93
103
82
185
96
116
94
80
160
88
76
78
117
100
106
121
89
132
95
154
69
64
114
69
93
151
118
155
137
106
119
104
72
201
78
121
126
115
90
101
76
136
142
78
52
111
80
94
89
76
119
87
67
128
122
119
98
138
136
113
76
88
134
129
76
148
137
126
120
72
79
89
109
87
78
112
87
110
123
107
102
52
85
80
71
74
80
154
80
124
136
109
119
89
107
63
87
69
119
89
120
154
80
87
106
89
93
91
113
82
109
80
87
103
91
89
109
110
67
101
119
140
164
126
102
105
128
163
87
89
110
93
96
76
88
91
123
132
119
87
140
76
72
106
120
69
87
154
134
52
91
130
96
155
99
76
112
144
142
103
154
109
134
118
69
106
72
119
88
163
136
78
175
89
104
147
151
85
156
87
98
76
136
143
69
88
148
113
89
90
98
94
93
154
106
69
80
94
101
82
112
162
175
59
137
93
134
78
140
78
114
87
89
72
114
56
128
175
172
59
106
112
128
110
101
149
114
130
128
140
134
122
69
134
117
132
120
106
79
80
69
125
99
96
163
120
154
80
121
103
175
128
146
140
106
89
119
154
143
105
138
93
144
96
76
110
73
69
123
94
134
69
99
69
128
128
52
88
70
128
126
94
131
131
87
76
43
93
117
136
131
87
151
120
100
76
154
113
128
93
156
175
76
87
154
143
117
90
110
87
117
88
137
119
69
93
69
114
95
88
119
155
80
80
76
77
109
85
154
95
134
111
80
87
101
99
101
140
78
100
119
88
91
99
154
158
72
87
87
91
175
118
93
88
109
111
109
131
52
88
128
129
131
88
133
80
136
93
69
80
113
94
76
115
175
56
52
80
69
73
122
94
80
82
152
80
106
128
124
110
117
76
80
165
56
145
112
127
154
94
128
107
120
123
78
105
119
169
78
76
80
85
93
119
117
78
104
140
91
78
99
101
126
136
101
93
145
109
79
106
104
104
129
117
140
136
76
88
57
134
137
106
120
120
87
98
80
148
99
118
80
112
76
101
72
162
130
93
99
163
156
99
69
121
103
135
159
113
89
99
87
56
151
69
82
121
199
107
88
165
136
134
117
87
92
94
118
141
128
148
120
104
96
151
93
136
99
63
69
69
171
98
88
52
80
101
69
121
69
110
109
78
87
104
102
89
113
69
154
106
118
96
78
69
81
69
74
89
87
107
92
69
80
113
131
76
140
130
154
132
69
74
101
139
99
89
115
69
88
119
162
128
69
113
77
107
102
80
99
104
80
107
118
117
69
89
69
119
147
69
99
80
155
131
52
104
104
85
151
139
80
134
175
88
123
145
140
122
76
135
138
146
131
160
131
112
88
99
115
115
120
76
104
117
110
138
95
124
109
99
175
69
127
137
80
78
78
119
108
72
76
117
128
123
164
134
87
69
137
91
163
128
87
140
97
127
174
128
160
87
109
132
127
102
69
76
104
97
142
80
119
112
88
122
80
107
69
78
87
94
185
73
197
131
89
120
124
146
93
112
80
123
107
80
116
69
95
146
100
115
112
145
102
151
74
67
80
110
101
107
52
122
96
164
91
109
156
115
123
43
123
87
87
115
106
92
123
140
110
80
69
104
102
113
131
120
105
154
116
94
87
138
106
80
69
119
99
119
80
113
83
149
107
101
93
69
95
120
107
107
69
96
155
118
131
111
87
159
127
87
121
69
96
74
80
121
52
129
88
174
121
80
78
90
125
72
119
112
56
134
139
128
106
78
87
83
88
104
76
113
134
97
129
94
121
120
110
144
139
119
98
151
112
112
77
92
71
104
87
87
109
148
78
154
88
76
117
69
114
158
127
131
119
107
88
76
107
87
69
128
115
131
115
136
121
54
76
69
128
96
104
102
78
99
107
80
69
74
69
99
69
111
80
119
107
98
69
106
106
113
114
125
91
120
109
140
80
72
76
131
99
134
120
145
118
109
145
69
98
140
103
80
87
123
128
130
69
89
78
111
80
108
118
103
80
80
69
80
117
94
80
106
80
123
80
102
107
121
120
154
76
144
92
80
156
137
91
156
69
99
107
119
89
100
107
133
69
80
120
69
100
119
98
123
80
197
134
120
72
110
144
131
78
123
128
94
100
89
68
127
104
138
93
90
91
78
100
111
142
155
95
102
98
115
72
93
104
136
118
80
69
135
90
104
80
155
133
175
99
126
87
140
127
80
78
93
64
106
80
89
80
106
69
80
69
156
80
96
155
113
95
72
125
59
114
59
80
95
119
114
114
98
197
69
140
146
136
115
131
101
88
111
119
117
94
120
150
87
102
76
145
80
112
118
87
113
87
109
175
103
112
102
76
120
136
69
67
142
85
89
69
74
78
134
95
136
76
88
74
69
127
89
128
80
134
146
113
91
72
96
131
94
127
91
113
69
111
93
87
80
146
80
67
78
119
136
83
82
128
127
95
107
96
183
87
69
78
97
88
154
87
138
120
115
76
96
80
78
80
85
106
154
109
87
119
104
72
117
110
140
114
43
134
127
94
88
78
67
54
101
83
85
156
78
83
80
72
66
109
89
99
164
76
112
187
121
80
121
136
87
197
110
78
151
120
130
128
109
113
145
123
117
141
69
104
129
175
87
87
172
76
109
87
175
209
146
78
113
151
136
120
85
80
99
109
119
139
118
100
69
94
134
109
118
96
104
87
94
76
145
127
134
78
89
133
93
107
80
69
99
69
82
80
89
119
78
110
109
80
78
87
114
124
76
127
119
69
155
80
111
109
134
94
52
78
107
87
99
85
88
69
172
126
100
145
85
121
107
98
134
120
76
80
104
107
163
69
80
76
100
87
54
140
119
78
138
129
87
78
118
102
98
127
183
110
139
94
154
199
80
69
69
94
143
98
154
69
88
69
85
163
143
87
88
71
80
181
107
121
76
143
145
106
174
80
89
154
89
127
69
80
109
104
59
119
69
136
150
99
89
58
74
113
93
119
80
80
93
78
156
87
80
108
143
107
175
90
150
146
119
138
69
80
146
95
127
87
87
111
136
69
111
103
89
128
80
111
140
76
133
83
136
80
74
101
83
110
114
76
109
197
89
122
78
109
120
119
87
103
94
69
120
93
76
80
126
131
94
175
175
80
64
99
67
69
116
196
134
94
76
85
80
85
104
118
143
100
121
152
99
113
99
99
69
175
160
117
97
69
76
130
150
80
80
104
109
76
132
120
88
117
121
83
69
126
106
127
87
52
117
110
121
76
113
102
114
155
76
87
107
90
128
76
79
92
147
78
93
131
57
128
183
107
69
175
69
101
106
155
88
104
94
80
87
69
74
197
118
103
120
69
109
111
140
104
98
163
69
132
75
136
82
119
156
155
111
106
96
56
103
174
160
54
136
87
134
140
78
137
90
119
119
85
90
89
69
127
103
80
137
67
172
69
76
87
175
129
121
76
120
144
125
109
87
100
87
120
127
104
79
88
103
99
119
123
128
66
119
94
111
80
76
80
197
69
120
122
96
91
109
99
99
56
95
144
144
99
90
140
93
107
109
76
88
119
124
78
112
87
80
120
112
94
118
119
138
161
133
96
80
123
119
80
138
89
125
82
119
87
87
107
109
118
80
88
119
163
148
111
69
139
163
102
104
78
119
175
114
121
93
80
156
147
120
102
43
134
143
119
116
128
80
104
201
52
100
154
72
117
110
107
88
120
127
160
91
115
80
109
120
151
107
138
91
87
105
127
158
209
104
87
72
110
69
80
89
160
154
88
88
110
88
80
89
69
69
80
118
161
89
181
136
118
87
87
59
144
123
110
107
126
104
70
69
80
140
72
88
123
69
175
119
57
69
106
78
69
80
100
74
132
149
201
128
131
91
82
83
80
142
66
99
91
120
99
91
82
137
138
80
99
106
132
109
102
113
72
89
87
54
80
115
87
94
114
87
113
94
52
76
154
78
151
80
89
154
78
112
69
85
104
83
142
128
128
78
108
197
128
87
136
87
121
99
88
143
127
96
84
119
88
164
69
164
154
80
113
80
64
125
72
107
67
78
175
183
95
152
56
109
118
78
88
94
78
94
138
107
150
100
115
156
94
120
78
98
69
122
119
79
58
127
87
76
84
80
155
143
102
79
78
118
76
107
124
80
145
80
175
87
96
93
115
80
89
155
113
121
201
112
101
128
99
78
99
106
127
113
78
104
134
89
101
89
119
56
118
175
175
107
85
104
80
112
52
123
54
181
94
156
87
78
128
132
93
87
112
112
69
156
77
155
76
119
78
99
76
72
119
120
83
78
104
69
155
72
80
156
145
108
110
94
69
120
120
155
87
93
113
87
101
102
175
107
118
119
127
91
119
121
160
104
131
130
109
106
107
107
134
87
94
72
138
67
80
118
80
85
85
136
96
118
143
78
87
175
99
175
156
143
124
91
136
54
136
88
69
75
52
137
133
75
119
155
67
101
80
119
95
91
80
112
147
106
112
101
80
109
146
87
58
107
69
81
121
104
78
125
106
80
109
119
87
122
107
154
113
96
87
109
94
87
60
87
134
140
134
80
87
121
89
54
99
101
113
100
80
113
94
100
87
154
110
107
117
109
69
75
98
80
88
88
174
107
128
119
121
119
76
128
80
110
78
116
95
91
78
123
111
122
156
69
127
80
85
88
95
130
69
89
80
99
101
175
125
127
94
80
81
103
99
93
118
105
80
107
107
80
91
128
78
93
99
80
134
69
103
146
94
71
109
111
197
121
106
85
154
94
110
78
69
143
138
102
120
127
98
109
117
67
96
112
175
98
109
155
138
136
96
109
107
185
58
115
80
89
52
88
119
104
175
117
101
104
54
98
100
104
80
104
162
146
88
80
106
109
131
105
82
126
133
82
175
109
80
120
110
52
73
104
52
143
107
76
138
109
88
80
54
80
84
120
78
156
143
69
106
72
117
127
80
80
120
76
112
69
143
151
131
80
69
122
98
99
71
113
145
97
139
80
106
54
109
119
117
121
72
94
88
70
67
155
114
100
75
109
82
69
69
113
76
128
120
114
110
104
119
175
78
78
113
43
131
69
131
71
146
145
110
80
164
69
96
54
119
106
101
69
110
120
141
132
78
76
87
102
151
113
96
120
78
137
164
128
136
136
155
80
98
74
134
92
76
140
94
107
94
119
138
107
133
121
123
150
155
107
80
140
121
93
154
69
129
79
94
121
143
69
99
111
106
56
98
113
69
136
121
91
125
80
80
94
164
113
175
118
107
156
151
133
69
54
91
96
109
166
78
93
131
117
128
106
69
91
136
163
80
95
123
123
76
119
88
147
91
100
104
157
125
147
155
104
127
89
117
87
103
175
143
107
119
131
91
113
88
89
127
80
116
69
154
136
78
79
99
101
97
52
111
69
83
94
87
154
76
126
69
133
119
94
52
140
143
119
119
83
118
197
128
88
58
123
109
80
94
69
131
148
110
95
78
175
80
165
101
101
115
120
69
90
89
112
69
52
81
92
133
140
106
80
76
197
69
148
163
120
80
87
89
109
138
154
69
100
78
107
156
151
89
78
97
129
80
80
131
93
192
119
87
83
80
136
110
157
120
136
93
103
113
131
80
136
78
93
163
163
69
80
76
130
95
129
109
131
197
69
128
120
107
69
69
111
80
68
119
111
78
116
97
80
76
56
175
112
109
156
82
187
69
69
88
100
87
146
131
111
69
92
115
133
110
131
76
140
91
99
125
119
134
57
69
105
133
117
104
69
157
69
69
123
54
175
87
112
111
100
52
76
76
97
133
104
76
96
80
106
106
136
67
144
113
109
140
113
76
136
106
151
131
106
87
134
111
120
154
80
80
80
133
83
95
163
102
80
123
150
118
143
163
165
109
86
131
154
87
197
76
104
106
117
94
101
56
121
80
109
117
88
52
108
59
101
80
140
148
54
116
87
69
120
93
109
148
110
80
87
56
120
155
72
87
87
90
93
76
80
139
166
93
69
169
107
119
119
145
155
63
130
122
69
146
120
87
75
109
120
78
88
133
126
84
78
125
80
154
87
102
76
101
113
100
121
80
96
88
109
69
80
112
106
154
113
156
132
109
92
95
104
76
154
140
121
69
131
101
110
80
87
52
164
175
116
115
148
88
98
120
119
104
93
163
69
101
136
119
134
111
107
128
119
136
69
111
85
96
121
120
80
140
140
142
94
104
93
91
117
117
69
107
108
120
111
143
128
102
197
99
96
80
137
119
110
120
97
121
140
114
91
56
80
144
85
127
101
78
87
165
144
63
69
80
123
91
129
181
102
107
120
100
109
88
69
109
87
138
146
129
119
76
87
127
115
110
109
72
104
115
156
150
107
174
87
76
128
100
99
75
113
126
154
100
90
116
177
110
169
111
78
111
146
147
80
100
132
110
89
69
93
125
78
127
164
72
93
74
79
82
121
69
109
128
143
102
75
106
150
113
175
94
80
124
69
89
91
160
76
94
76
100
104
88
79
98
52
128
85
69
83
94
78
83
93
95
80
136
142
140
156
69
151
141
78
131
134
89
142
104
125
75
126
99
80
138
69
93
72
74
117
107
80
136
59
108
109
143
69
128
79
120
112
121
104
78
106
80
160
90
80
59
80
154
80
76
152
80
76
78
197
80
107
91
69
138
69
102
101
57
78
80
104
120
69
128
94
87
112
81
98
54
140
96
73
112
102
130
54
121
73
75
118
146
69
114
78
163
119
128
112
87
117
80
119
69
87
99
146
87
80
80
78
131
76
121
100
56
172
87
107
106
91
155
114
143
144
113
118
197
121
83
164
78
96
87
80
120
78
102
80
87
104
103
69
80
124
110
175
73
104
80
125
80
87
114
127
120
124
114
72
112
87
69
115
119
121
80
154
109
76
72
100
80
136
113
120
80
155
80
172
91
175
69
130
137
165
95
154
127
101
69
143
101
123
134
69
148
123
197
80
95
69
80
137
128
149
154
119
133
136
99
133
173
211
136
100
154
153
54
190
76
87
89
122
140
69
69
88
110
112
89
135
111
100
134
115
54
82
52
100
101
106
119
115
112
147
113
146
128
121
89
101
140
86
107
134
106
112
112
87
117
89
76
72
111
175
109
102
146
119
69
143
109
148
120
80
148
99
80
151
69
109
107
80
119
91
87
119
100
132
134
114
118
106
69
112
120
94
181
131
120
106
80
155
90
154
109
85
146
139
117
80
151
54
66
101
114
88
80
117
150
76
152
102
132
102
120
175
114
96
80
76
88
78
80
69
80
69
80
72
130
102
154
148
152
64
151
80
109
76
110
117
149
137
91
87
96
76
72
80
85
194
134
174
69
90
120
76
76
129
107
153
80
128
69
87
89
140
95
111
107
136
87
100
80
85
87
145
128
91
124
110
156
69
69
80
131
143
87
74
111
117
88
54
110
80
69
56
69
137
120
140
87
156
136
88
119
76
88
164
80
87
80
94
178
100
113
72
76
87
109
127
76
78
107
118
164
89
96
76
89
76
87
99
110
175
69
54
88
80
127
120
72
113
93
69
118
87
80
80
81
98
94
80
78
134
117
162
120
166
131
119
131
69
80
85
91
91
104
87
69
76
110
103
83
136
112
107
114
146
129
112
78
80
109
163
209
162
80
78
77
102
125
104
107
80
80
197
176
101
52
174
155
109
74
69
98
52
88
175
128
175
123
83
136
87
80
117
80
126
181
134
101
131
104
78
90
107
96
92
163
121
74
101
128
52
79
127
110
69
104
86
85
101
80
130
72
163
87
183
119
160
66
106
67
105
107
141
123
99
87
69
104
114
99
69
80
134
131
69
107
88
109
140
128
109
128
125
154
116
104
103
88
80
93
88
76
146
69
87
76
131
87
104
119
90
99
104
113
87
69
80
119
121
115
95
102
156
114
98
136
80
91
93
175
146
197
140
69
69
107
136
128
69
109
150
73
151
76
117
115
115
108
106
74
100
90
152
80
80
106
112
115
183
74
107
119
66
146
136
102
114
128
101
109
106
154
183
76
69
69
52
114
175
140
119
114
128
175
156
78
107
119
72
140
99
117
90
140
80
128
69
117
120
142
120
89
85
129
110
87
121
154
96
80
119
114
87
80
83
137
54
155
123
112
136
101
127
119
96
85
89
112
69
103
80
132
78
87
107
175
113
122
91
117
95
110
109
197
136
87
133
87
133
103
58
100
78
122
80
131
131
94
164
88
154
102
97
131
78
104
109
80
133
95
107
155
118
99
76
72
119
96
135
78
87
69
69
106
80
147
144
101
154
83
166
95
72
115
109
175
119
89
137
110
76
95
127
104
88
108
99
78
114
69
80
127
100
117
82
90
117
156
89
82
134
80
80
80
94
80
102
54
175
101
80
96
80
120
153
69
69
110
78
80
131
133
102
127
117
80
72
104
72
80
102
101
113
120
89
76
136
143
156
115
166
111
95
93
175
107
109
133
69
120
69
99
131
76
117
69
102
99
99
101
96
94
155
69
145
80
175
78
106
104
152
199
146
128
87
141
114
155
69
106
59
99
87
143
149
125
123
134
80
80
98
69
175
145
68
96
90
81
150
120
69
87
89
78
109
54
127
69
106
128
128
137
118
71
60
131
128
69
133
100
107
146
87
103
134
80
88
78
109
109
85
117
117
106
99
109
197
90
155
56
128
175
139
69
151
151
55
133
102
106
72
88
91
102
119
123
117
104
123
76
136
89
149
109
80
136
131
100
97
69
134
69
72
87
91
117
100
89
114
134
88
69
69
76
120
69
142
69
87
106
136
80
87
100
110
99
78
125
174
99
125
104
115
78
87
106
58
120
87
78
109
93
76
87
80
137
121
76
85
82
155
101
89
89
164
99
156
123
101
97
83
69
87
98
140
91
118
128
94
87
113
80
76
128
74
154
114
106
120
132
117
89
93
60
117
69
127
87
76
119
132
80
100
75
120
119
100
80
143
128
85
154
88
107
96
137
107
151
106
69
88
120
128
80
145
138
138
94
90
76
99
87
116
88
80
80
175
78
134
100
83
146
104
128
117
110
152
128
80
43
85
80
88
131
83
106
110
81
104
128
112
107
87
87
104
78
119
107
69
113
137
80
107
104
72
140
117
102
99
80
118
122
94
154
69
121
119
96
93
102
94
169
159
131
76
199
143
91
69
100
87
134
87
94
109
117
148
58
80
187
131
72
88
80
128
100
147
116
162
118
113
89
119
87
139
78
89
154
136
163
89
105
94
107
131
175
93
104
88
131
128
69
110
104
93
175
99
154
119
80
80
119
69
148
161
126
127
56
169
87
120
107
123
87
134
80
90
76
132
107
115
80
63
131
87
127
76
120
94
154
120
90
76
107
120
110
99
89
69
120
87
155
87
104
110
113
76
140
69
101
78
103
69
115
89
128
72
128
79
124
96
147
140
76
110
52
112
80
152
80
128
69
112
109
119
121
80
129
164
175
156
113
100
80
80
69
69
69
110
122
104
52
137
69
76
111
69
87
136
72
134
89
80
110
90
107
145
69
80
144
69
117
71
121
121
69
175
88
137
85
76
87
156
128
136
130
69
76
86
109
103
136
110
99
118
120
88
112
143
76
118
121
71
124
109
93
80
88
75
110
111
115
69
119
129
113
175
132
87
52
155
80
145
69
88
109
72
111
100
148
139
146
121
93
146
80
106
78
154
76
101
106
88
87
69
154
156
76
90
83
87
74
138
89
154
95
117
87
76
84
101
52
123
80
76
63
114
136
148
76
99
80
94
101
112
69
85
119
145
73
104
124
80
94
175
134
113
156
89
123
109
175
136
136
114
76
124
92
78
113
93
83
114
78
145
69
120
74
110
78
115
89
72
131
105
107
153
87
89
80
137
87
99
69
127
119
109
102
76
111
133
76
78
109
93
80
197
117
89
107
80
109
76
112
77
120
87
128
52
128
89
87
69
78
90
93
183
69
76
130
124
80
119
78
135
76
87
140
94
128
125
82
137
141
163
76
80
107
89
115
117
104
163
76
59
91
69
69
78
106
119
100
72
130
89
89
80
108
96
118
83
151
80
151
87
151
96
93
87
129
94
104
88
69
80
104
67
91
122
78
81
96
140
87
104
71
88
112
101
89
88
92
78
96
129
89
80
107
89
154
99
80
78
112
79
92
85
72
56
109
54
89
122
197
76
104
87
69
136
80
69
112
69
78
118
87
89
119
91
80
119
127
113
99
83
81
123
126
175
119
154
56
151
78
69
161
141
101
75
156
69
112
136
201
128
99
87
87
117
115
90
69
120
84
134
91
154
58
87
154
106
87
127
78
131
107
99
69
114
110
69
134
69
112
69
134
112
112
110
175
78
114
106
71
69
114
121
74
54
87
89
80
76
155
89
94
96
134
140
64
128
93
113
87
164
91
119
107
154
87
133
78
80
91
112
94
106
87
54
111
110
76
69
59
121
76
136
110
80
87
80
99
87
110
102
78
123
85
154
108
120
162
81
111
69
118
90
128
100
104
185
91
101
131
128
76
85
121
147
87
75
146
114
120
140
89
106
120
104
112
76
74
121
87
90
83
69
96
83
69
106
92
117
139
117
78
54
119
119
156
111
183
111
138
85
89
147
94
110
137
128
119
110
80
128
69
106
155
80
78
85
107
94
154
116
90
134
114
108
124
110
113
121
115
119
129
94
88
76
118
131
104
69
99
120
69
69
80
106
166
103
56
140
87
111
175
69
69
72
112
101
96
197
122
165
99
78
134
113
201
80
83
80
69
93
128
89
115
102
119
175
115
81
120
110
72
136
136
107
123
74
87
78
151
119
87
120
80
91
78
87
74
109
93
119
78
113
118
69
104
156
80
115
69
136
107
181
117
151
155
94
107
80
89
134
144
149
54
95
69
69
80
78
88
113
99
160
128
110
121
175
140
60
128
109
69
131
69
99
52
147
72
80
96
141
76
117
104
110
133
201
124
121
87
104
60
96
105
80
80
119
111
88
80
90
109
109
112
76
109
138
76
87
107
54
109
87
114
103
110
80
77
128
172
133
175
89
118
101
85
114
69
128
95
78
99
76
151
80
125
163
136
119
143
134
69
52
162
80
80
143
140
76
152
99
134
107
107
78
79
107
69
69
175
163
102
121
119
69
85
192
118
107
78
109
102
88
95
87
100
87
138
97
111
123
74
91
88
132
134
120
99
109
89
93
113
102
136
104
117
69
87
69
87
87
76
76
74
111
124
64
119
112
175
121
99
110
89
87
117
119
99
95
151
128
143
119
163
134
104
87
139
119
76
93
69
52
119
96
154
89
117
175
88
127
115
128
154
95
103
107
160
119
160
133
94
106
80
121
80
97
126
60
69
84
103
110
101
98
121
154
112
119
80
110
80
174
129
138
128
66
76
109
120
155
143
110
112
80
129
114
126
78
118
107
78
119
80
80
156
72
119
126
106
110
119
133
124
91
113
96
69
137
121
78
88
100
101
75
69
114
119
69
174
112
121
69
87
93
120
133
120
149
119
129
118
89
120
110
101
87
96
94
52
96
106
109
119
156
96
88
87
117
109
113
73
105
74
115
110
121
80
149
154
80
99
131
78
88
69
142
89
100
89
91
120
112
80
76
76
174
69
80
91
109
115
145
83
87
131
69
88
89
119
136
94
107
137
156
133
107
123
109
69
183
80
112
87
95
91
80
69
69
175
87
97
120
119
76
197
54
120
175
74
115
102
135
162
99
140
101
99
138
69
147
100
107
128
95
52
94
66
76
128
69
154
69
93
95
88
69
76
83
100
134
95
78
100
132
54
154
91
89
69
80
88
76
133
90
104
74
134
107
101
113
118
113
134
76
124
72
154
164
78
169
127
90
89
120
76
80
151
82
99
154
131
104
138
126
128
113
164
128
80
124
69
136
87
80
91
87
145
87
121
69
80
117
121
197
128
93
78
78
109
120
162
80
110
145
81
102
56
120
89
120
94
87
101
83
80
175
133
85
87
78
74
89
80
101
176
75
83
94
133
119
130
99
91
134
111
104
112
112
108
130
133
94
143
76
140
89
152
76
102
145
87
96
96
142
100
103
106
99
80
150
106
80
96
109
101
69
54
78
97
110
102
154
106
87
154
89
78
146
91
135
163
106
93
104
154
134
91
120
54
78
76
127
89
110
69
160
80
148
76
119
76
129
131
134
121
80
106
134
145
87
128
76
107
153
69
78
111
52
127
80
69
154
93
131
100
69
94
142
80
98
72
87
138
78
156
78
154
87
120
109
80
87
128
132
151
101
104
110
83
69
138
69
133
87
118
76
66
123
137
78
129
141
104
76
76
91
118
88
197
120
80
175
112
146
120
142
119
139
104
94
80
134
110
78
117
89
131
52
74
80
123
69
72
136
87
112
175
69
72
115
76
69
87
145
72
143
136
133
135
131
131
74
80
80
87
69
163
94
143
121
69
96
84
57
109
78
90
113
85
127
98
87
113
109
130
91
69
106
87
129
107
132
80
106
129
121
78
82
155
69
99
183
72
80
110
111
147
123
80
126
96
148
115
56
80
122
91
89
96
136
88
151
91
69
134
149
103
89
93
119
134
134
76
76
79
101
56
101
151
140
72
94
89
101
82
69
82
96
71
122
80
118
130
151
161
76
74
104
136
93
72
83
120
80
128
124
138
110
80
109
104
73
144
157
100
136
127
128
69
155
95
106
80
137
80
142
154
112
134
128
128
138
110
93
136
131
113
102
88
164
75
89
115
75
154
127
138
80
111
130
78
100
113
89
109
134
80
102
109
80
117
148
101
119
90
126
129
105
99
117
199
126
80
126
76
91
69
115
80
134
90
121
143
109
130
136
80
100
78
103
91
89
120
123
69
93
107
119
113
128
93
88
126
185
78
112
80
140
72
135
154
94
80
78
66
76
117
79
113
69
120
96
72
89
74
120
76
117
128
69
118
76
80
80
87
110
78
69
131
118
87
103
134
140
80
120
104
152
96
75
117
56
131
134
104
80
104
119
75
119
80
104
80
117
87
94
91
80
76
119
120
154
146
107
69
152
80
80
117
90
117
80
93
119
121
129
144
89
121
133
78
87
125
119
120
143
72
118
80
110
102
107
128
99
104
112
106
175
52
136
143
107
119
95
89
102
103
78
148
78
93
131
110
110
114
54
131
89
69
122
80
120
119
107
96
94
75
91
76
87
113
143
80
127
120
72
155
87
69
64
69
134
98
80
122
80
80
112
69
141
149
77
107
175
128
80
76
133
134
119
138
145
76
88
69
112
109
91
118
95
90
136
110
80
99
115
129
137
111
121
138
93
121
111
78
54
74
146
120
74
80
140
113
74
165
80
80
91
69
69
137
117
140
69
80
113
110
78
83
71
76
94
121
85
69
87
80
128
76
87
133
136
76
94
140
185
110
128
69
91
69
119
87
121
113
89
133
87
113
88
138
119
147
145
138
119
69
119
96
155
69
52
119
117
143
99
101
164
88
87
80
128
80
69
122
80
89
93
124
91
93
138
119
134
88
104
87
131
99
101
78
118
66
109
156
104
104
154
146
87
172
87
199
80
189
92
69
43
80
102
74
166
106
80
69
151
99
78
88
128
174
113
72
69
105
117
80
118
76
87
131
143
128
94
99
134
122
56
54
111
80
175
100
88
163
128
175
106
120
120
108
80
148
89
106
145
69
141
56
88
146
94
83
69
119
78
136
119
69
93
80
128
102
121
93
137
72
106
197
80
102
128
117
129
144
120
110
109
69
97
114
175
89
115
109
146
131
71
69
80
110
69
128
119
69
109
91
166
78
134
78
99
117
140
58
127
132
67
136
69
109
148
74
94
160
154
99
121
157
74
72
109
101
88
78
119
99
132
208
130
134
95
122
112
110
69
80
101
80
117
80
94
94
143
123
141
104
109
104
92
122
117
109
76
93
83
112
87
113
89
56
91
80
136
104
93
107
95
125
114
155
141
80
106
100
100
109
80
78
87
78
139
76
91
102
93
134
87
134
69
93
131
119
123
128
113
106
120
72
91
96
113
166
112
119
89
104
120
106
118
80
119
122
100
101
128
88
128
140
91
89
76
80
140
78
72
112
76
119
76
175
120
175
185
147
211
78
94
78
89
155
76
82
87
107
80
80
175
100
109
107
69
140
111
124
175
154
93
143
120
88
69
116
113
80
131
76
109
66
76
130
128
119
106
99
69
134
54
78
104
111
151
128
90
69
131
155
80
175
87
112
124
134
129
119
76
80
69
117
119
80
80
181
85
87
119
80
87
76
78
138
156
88
156
98
88
109
136
119
69
122
118
128
157
131
104
131
136
119
205
119
43
92
110
99
171
71
119
120
92
112
77
91
80
130
69
72
111
147
82
142
94
142
110
120
136
100
74
155
94
132
139
128
160
136
69
93
122
78
145
120
88
102
93
109
119
89
126
101
121
69
98
93
149
107
78
123
121
150
88
154
101
149
80
131
100
155
52
121
80
80
85
89
76
106
80
121
94
101
76
88
175
100
104
137
107
76
110
109
96
113
199
81
43
130
113
96
125
80
80
80
117
140
131
100
111
76
95
143
129
78
104
96
146
107
175
119
87
130
120
80
175
78
109
146
187
112
117
87
80
111
94
93
142
74
133
147
134
147
91
80
102
81
110
111
109
104
85
119
123
116
107
133
136
87
80
153
76
146
100
89
43
76
151
106
120
131
52
129
132
69
76
66
140
74
107
145
80
120
72
129
78
87
78
87
103
100
80
128
112
87
95
119
74
152
80
69
118
89
128
100
106
99
151
114
87
67
80
154
148
197
119
111
175
136
163
87
88
107
120
79
100
156
94
69
69
107
117
132
118
175
80
80
132
125
152
80
96
87
120
69
183
107
130
103
80
95
156
164
99
106
114
106
156
99
131
102
69
154
128
105
175
94
143
175
122
111
80
175
80
154
128
175
156
136
175
87
151
175
99
151
155
96
110
96
87
69
163
119
80
69
87
136
91
80
91
80
78
113
93
88
102
127
80
80
78
93
74
124
118
80
88
172
52
88
154
82
72
119
187
80
154
99
107
118
96
80
104
197
80
80
140
150
78
74
115
157
137
106
134
156
100
136
156
154
140
118
131
112
109
136
117
129
89
119
78
174
80
133
175
78
94
109
74
73
94
146
87
137
175
128
94
94
80
87
63
115
99
110
109
118
99
154
69
94
85
120
129
63
80
66
87
117
107
123
145
128
69
94
76
175
159
145
175
130
98
91
120
123
74
85
93
87
107
80
119
117
92
146
89
106
113
114
146
88
43
121
91
76
175
132
138
140
76
83
136
155
174
102
93
89
93
91
111
132
91
123
128
80
109
107
126
91
78
102
87
175
160
166
74
119
80
93
69
99
78
146
90
114
94
96
109
109
43
122
87
69
116
90
89
132
113
107
76
88
169
104
122
75
121
93
156
91
109
69
89
87
87
110
93
197
93
76
88
164
89
80
83
76
113
150
104
129
80
89
131
95
89
175
128
100
118
83
119
199
119
119
155
128
107
136
134
115
119
101
87
74
139
74
106
119
107
87
169
109
69
110
163
80
138
89
120
91
124
109
98
100
80
145
80
99
123
128
128
137
76
94
130
56
175
95
69
109
107
94
113
87
80
107
114
83
136
113
113
87
69
80
150
123
120
75
105
175
107
129
113
76
128
113
117
69
197
114
107
88
147
131
87
99
113
99
93
140
114
69
83
122
99
80
113
101
89
99
80
165
143
82
120
119
109
134
139
128
121
87
160
80
114
120
136
80
69
175
115
101
146
88
102
87
154
96
119
120
133
154
110
106
106
118
112
80
111
80
131
100
123
78
69
107
79
80
98
80
137
129
113
136
111
143
87
80
94
201
155
83
160
90
122
115
69
69
87
80
94
87
109
80
174
106
101
80
148
76
151
102
83
80
120
80
120
145
80
88
78
174
78
123
117
128
121
80
100
129
197
78
134
91
109
69
52
89
112
93
78
113
79
122
60
104
69
102
120
121
85
94
69
111
183
74
76
131
102
105
108
80
134
89
90
56
112
133
140
80
85
91
140
87
112
85
131
127
113
94
113
104
129
125
175
88
143
69
78
128
177
113
137
146
80
122
78
80
104
151
104
94
69
147
93
95
134
134
148
69
56
130
118
118
58
94
136
149
78
123
136
80
93
99
98
76
131
102
72
87
89
120
104
115
118
113
117
148
83
78
99
74
134
96
145
129
69
116
104
91
122
118
106
94
101
120
87
131
104
69
119
107
164
132
104
155
136
104
69
134
107
144
88
144
136
118
113
154
80
88
102
118
56
115
88
99
74
121
197
152
72
80
80
76
116
124
109
74
137
132
96
107
117
76
154
97
121
69
197
142
60
175
109
104
102
100
119
80
87
119
197
72
100
99
160
145
140
175
88
69
127
118
119
147
80
154
94
83
127
126
130
107
87
97
99
112
79
80
142
94
118
79
113
95
112
73
92
134
89
76
133
120
69
142
69
88
93
80
76
91
60
85
117
57
136
107
109
87
122
80
130
119
143
80
87
119
76
154
80
143
69
145
85
155
199
52
80
136
175
76
85
69
163
76
78
87
110
88
120
80
120
117
80
90
154
80
151
80
175
131
197
69
88
80
175
79
78
131
111
107
113
157
165
136
80
118
107
76
109
85
127
103
107
80
69
113
163
126
119
107
118
81
175
80
80
43
119
107
72
67
87
129
157
96
158
69
74
80
183
125
119
56
102
127
121
128
138
117
72
72
117
78
56
78
103
87
120
115
122
119
88
118
155
107
101
94
101
89
118
101
111
107
78
80
112
76
112
119
91
85
140
102
93
146
69
80
69
69
169
140
122
67
54
76
69
99
137
112
88
130
80
93
120
154
64
78
67
80
120
87
69
109
148
112
74
89
87
101
80
127
87
119
121
154
69
157
106
128
136
123
175
175
80
100
99
107
118
154
175
110
80
76
69
123
123
100
80
121
151
95
78
120
85
119
121
197
87
122
80
104
120
103
95
76
80
101
163
76
122
87
74
80
209
149
164
134
134
69
89
91
88
119
101
155
88
107
94
113
134
79
94
71
118
123
96
80
114
89
101
80
148
94
99
95
104
91
76
87
113
80
80
100
143
120
155
88
69
119
115
76
107
131
100
142
95
111
107
80
109
69
152
118
87
107
87
78
156
78
88
119
104
126
109
76
80
107
103
94
80
151
154
154
144
72
120
88
119
120
69
93
89
87
69
80
121
69
43
144
119
112
80
136
96
147
122
69
87
143
80
81
154
72
80
82
52
76
92
107
99
119
134
89
52
80
175
108
80
96
117
112
104
73
145
89
144
127
69
109
96
119
78
113
87
87
108
93
126
175
136
88
80
132
78
80
89
120
134
95
129
131
109
109
115
137
98
76
111
67
80
147
107
83
123
59
154
150
117
70
156
160
115
107
111
141
117
175
69
87
59
99
132
76
85
113
101
133
80
145
93
99
80
128
157
128
98
117
80
175
119
197
79
156
95
102
82
124
96
75
72
78
80
80
80
100
77
110
64
63
75
136
151
122
109
120
110
149
69
69
80
123
89
109
145
72
124
128
67
164
74
87
80
103
69
64
119
99
85
157
64
80
76
80
171
88
119
156
127
118
116
119
104
156
87
138
107
80
69
138
87
136
78
78
175
127
80
99
52
140
107
80
103
154
129
133
87
87
78
133
94
143
113
90
124
78
69
88
80
197
114
146
99
154
137
91
133
72
78
107
109
107
89
155
99
87
98
131
113
91
76
101
117
88
156
94
112
122
131
95
109
119
91
72
104
95
69
120
109
69
110
80
146
94
109
139
88
69
113
76
106
121
78
80
137
91
92
134
80
89
54
119
124
80
99
127
91
88
128
139
99
87
58
76
117
89
81
107
110
96
132
111
136
81
72
129
138
99
87
80
75
69
151
54
78
102
120
99
101
98
109
151
56
134
69
119
141
87
87
76
64
140
92
72
119
80
69
141
114
109
146
147
94
117
87
117
110
80
103
135
100
122
123
117
71
117
106
111
121
133
118
109
144
125
120
89
119
76
92
154
75
143
83
83
102
80
120
119
76
175
78
76
98
87
91
94
175
69
93
133
125
147
118
119
175
74
137
127
78
115
69
113
123
67
110
110
121
109
95
76
81
76
102
120
165
96
101
115
110
122
175
134
199
126
78
76
74
154
107
110
119
128
117
155
94
85
69
92
119
94
109
78
113
140
69
112
69
85
113
111
169
93
69
89
80
93
86
98
85
121
154
80
69
104
74
117
89
69
113
140
132
69
121
187
175
123
87
129
80
118
87
101
69
114
153
94
135
119
120
109
75
152
134
85
76
80
163
72
156
119
155
80
120
69
99
121
69
117
145
80
142
185
80
142
76
69
89
101
76
87
132
120
110
163
110
93
136
127
114
80
113
78
156
117
121
69
89
91
69
109
137
104
88
107
106
107
128
124
76
80
54
134
80
136
80
137
80
69
87
69
69
80
77
80
76
132
80
121
131
119
100
76
80
69
120
74
126
110
112
119
129
90
67
124
72
87
94
118
81
87
87
101
78
69
89
93
52
80
102
119
80
122
78
88
93
117
121
120
131
87
197
91
80
80
120
110
113
163
113
117
80
119
93
140
69
107
94
114
89
76
157
111
76
87
89
94
69
121
201
110
94
100
106
111
119
88
104
99
161
172
175
154
145
134
131
82
155
88
56
80
95
87
102
94
146
145
80
87
120
138
69
153
146
80
93
145
148
116
80
102
78
80
146
91
115
80
113
110
95
112
119
109
121
87
80
104
95
69
118
101
140
145
140
140
83
122
136
80
154
139
87
138
94
96
80
87
101
120
80
113
130
99
127
140
80
106
104
87
107
59
128
88
125
104
163
141
96
205
80
80
142
124
94
88
89
88
115
93
80
107
123
80
96
83
104
87
92
92
136
128
140
89
137
154
134
91
131
69
104
76
134
119
85
133
120
80
76
151
94
115
113
76
89
111
169
109
110
94
87
128
109
94
111
76
148
104
113
100
121
172
114
93
111
128
113
69
72
107
78
78
120
105
87
175
119
152
109
88
43
136
87
80
126
133
121
90
114
116
99
107
162
128
80
89
80
87
104
90
94
121
88
127
88
120
156
78
118
119
128
172
112
120
83
157
93
175
85
154
69
74
72
119
126
134
136
201
103
117
132
80
104
80
111
87
113
104
87
87
119
80
91
87
76
76
175
88
119
80
69
128
89
52
125
156
106
78
69
54
112
76
119
82
69
154
80
80
100
87
140
112
107
107
103
118
134
107
87
122
107
80
94
87
151
74
138
80
99
99
79
85
90
175
155
133
104
88
89
103
140
156
117
154
99
101
131
75
94
74
99
88
153
73
80
197
88
155
145
124
127
80
94
120
80
96
80
128
109
81
109
136
133
120
115
162
112
112
106
88
91
101
76
109
106
56
91
80
152
205
124
101
78
126
88
80
119
87
120
131
76
93
80
80
76
110
85
110
104
156
78
151
76
118
78
59
166
120
80
107
137
109
101
109
88
87
128
122
115
134
162
107
119
120
80
120
112
87
76
154
118
80
137
100
91
129
69
138
91
116
128
113
88
96
199
87
134
76
103
76
127
69
69
59
94
129
128
117
67
80
80
104
80
128
133
134
109
113
66
80
175
109
102
89
156
109
69
80
118
138
76
96
133
87
129
154
154
122
114
80
120
126
91
89
145
99
120
104
107
52
136
123
137
163
149
131
66
80
144
112
96
99
56
140
115
104
113
87
91
87
175
99
127
106
100
113
162
155
133
128
136
154
113
134
183
69
97
120
76
155
131
107
67
90
76
58
89
69
134
83
80
129
112
130
107
93
85
119
69
150
101
119
136
194
154
99
104
94
69
120
88
106
96
136
113
54
78
80
122
80
187
143
201
82
162
113
111
199
113
74
85
137
89
78
85
69
110
78
197
71
87
99
80
174
87
106
175
80
130
98
110
87
72
132
91
87
147
138
92
113
69
95
109
106
130
136
197
151
109
58
76
174
99
69
76
87
107
111
130
94
120
89
72
154
78
155
69
99
78
88
136
93
56
155
101
88
175
109
89
88
59
87
102
80
93
80
127
133
103
109
128
112
69
69
119
140
94
132
134
134
89
105
145
87
101
76
114
113
110
100
89
76
140
102
72
155
75
54
114
119
133
112
96
109
43
148
99
107
111
118
72
93
133
87
151
80
104
136
152
80
93
99
78
137
80
52
197
76
119
74
80
119
137
107
143
117
80
175
156
76
96
69
86
140
154
94
110
95
114
78
112
119
69
87
87
151
112
69
92
89
175
80
109
88
109
109
119
104
80
72
72
80
94
105
101
96
137
127
89
90
78
146
69
104
78
74
119
119
87
133
149
112
72
67
85
106
93
76
80
85
83
94
107
128
164
141
80
89
87
127
117
99
120
99
107
80
78
136
93
72
134
111
92
144
119
145
110
154
56
78
87
72
76
117
136
78
91
139
93
128
131
136
80
154
113
106
91
140
94
104
52
94
118
155
107
96
110
88
174
69
120
127
87
120
120
100
82
114
80
80
144
143
106
117
54
111
78
88
154
89
138
80
83
122
174
120
104
114
119
69
87
197
76
154
113
72
109
91
80
67
63
72
115
164
81
131
91
120
90
78
154
142
43
69
124
108
100
107
112
89
54
93
69
149
117
80
80
69
80
87
89
126
124
101
175
76
133
78
106
109
127
110
78
140
109
130
137
146
107
136
100
78
112
96
110
133
80
117
85
109
87
88
154
160
92
87
101
96
120
96
154
69
103
163
119
100
120
66
87
115
80
151
88
152
80
78
119
124
103
118
76
119
117
93
129
87
83
117
153
69
119
76
140
130
87
80
112
175
52
120
150
128
131
87
80
66
56
74
58
72
119
106
156
160
147
117
157
93
80
120
88
148
100
155
96
69
97
136
141
52
88
130
136
111
89
143
76
85
154
120
111
80
89
74
76
80
54
103
163
119
107
126
69
130
75
78
80
80
80
131
120
109
76
69
104
80
112
138
142
163
80
71
155
88
132
139
185
113
76
104
95
75
110
72
107
106
99
103
85
87
192
100
138
83
102
80
82
96
140
120
80
120
78
162
100
98
94
99
163
80
89
89
136
69
83
118
113
119
172
103
69
87
88
124
110
104
106
112
107
199
107
102
80
136
138
88
144
69
95
173
71
80
120
80
110
143
119
144
88
104
85
102
98
79
123
134
99
114
88
76
120
118
121
154
181
109
119
88
69
121
128
131
120
87
107
131
107
162
123
104
120
88
80
120
91
120
80
71
69
121
69
80
107
137
88
175
59
142
87
156
106
120
80
106
76
145
89
93
164
120
80
56
197
69
82
119
127
69
126
113
131
93
172
110
136
88
88
88
120
106
71
73
87
127
72
99
79
147
94
78
112
108
128
181
78
118
74
164
87
88
89
83
87
87
148
80
69
76
112
89
133
117
119
84
69
122
60
80
106
131
76
107
82
120
104
58
98
119
121
120
80
133
76
91
121
94
109
89
175
110
175
87
120
175
131
89
88
69
154
109
101
118
78
117
78
109
113
95
106
148
112
132
101
56
148
125
144
104
72
95
96
110
121
88
121
76
122
121
98
119
107
76
110
175
87
123
56
88
104
134
54
114
99
80
152
85
82
73
87
107
69
98
106
156
92
124
116
90
118
80
87
80
120
88
96
120
110
154
155
87
175
166
94
145
102
124
119
94
140
101
119
91
111
110
80
123
99
76
76
136
119
175
60
69
146
69
100
131
156
106
112
80
99
137
127
140
106
99
80
103
93
119
112
93
121
88
131
104
154
76
107
107
151
80
72
119
154
154
140
89
123
93
57
89
109
129
69
136
128
80
141
100
99
140
154
80
149
80
87
94
132
132
80
175
88
119
90
113
92
52
76
128
76
91
119
82
163
109
59
118
89
97
69
91
119
91
115
119
80
104
89
99
78
109
69
89
120
69
83
112
80
137
154
72
76
117
76
85
100
91
120
127
90
197
140
72
113
154
87
78
140
69
124
80
78
69
80
152
117
76
93
106
87
140
103
142
104
128
54
85
121
121
154
87
80
101
98
69
101
80
107
76
141
119
90
78
99
119
106
142
88
82
110
122
140
69
101
87
93
128
89
114
87
73
80
69
80
93
78
91
87
102
85
106
121
80
87
93
87
89
99
154
78
122
80
120
69
140
155
78
110
134
104
102
162
146
99
87
88
85
131
90
109
69
69
103
75
104
172
99
128
107
96
80
129
94
133
76
101
127
69
94
109
75
72
134
89
128
78
80
119
151
123
88
119
169
136
93
79
87
87
94
114
89
84
129
136
80
52
93
104
97
102
69
80
155
120
119
117
119
117
104
96
98
74
126
101
140
119
90
99
109
161
59
143
156
116
89
107
120
105
112
137
91
69
110
88
72
99
69
90
72
87
78
107
106
91
88
114
113
132
76
145
66
80
87
95
80
137
87
74
146
78
120
69
147
121
80
74
133
96
90
156
123
83
121
87
134
107
111
113
104
87
137
106
147
69
115
127
175
107
197
82
107
175
126
106
85
104
104
119
89
115
110
87
110
119
69
76
80
69
80
131
80
99
91
69
138
69
106
136
71
69
85
119
102
107
87
128
109
144
137
146
162
131
107
78
136
97
119
131
58
107
87
113
103
76
120
143
80
89
87
118
78
169
127
143
148
69
137
82
107
69
131
110
130
201
107
80
87
97
78
129
87
98
93
99
140
146
87
87
128
87
109
153
143
131
69
88
69
87
144
43
69
87
133
80
109
87
106
69
93
138
80
69
87
112
131
85
119
80
103
90
92
136
88
100
112
99
175
109
113
88
96
133
154
106
96
80
110
148
113
148
160
78
80
69
80
160
112
117
95
107
128
128
100
112
115
72
146
117
88
122
89
69
138
155
128
131
103
87
88
72
76
69
156
98
76
124
144
154
80
111
140
139
151
72
112
98
156
119
87
87
154
118
69
137
121
60
169
96
143
79
133
118
100
94
69
69
130
84
104
95
136
134
148
145
132
99
95
118
78
111
119
120
104
149
109
78
134
110
174
154
163
69
131
120
164
56
109
107
86
80
91
128
109
175
80
91
106
78
163
89
136
155
183
127
124
78
128
78
106
138
121
88
89
130
75
73
93
120
116
107
54
174
163
169
76
89
78
119
69
112
174
111
94
104
113
80
71
123
88
82
128
95
78
134
69
172
69
122
76
69
87
87
80
80
131
85
125
147
109
87
102
128
109
138
156
134
78
99
128
88
99
127
163
134
140
69
119
120
108
87
122
145
115
72
76
104
119
76
79
87
69
80
127
60
80
111
108
76
106
175
131
80
107
128
109
134
134
69
80
72
175
175
137
146
104
140
134
151
112
110
175
78
154
99
119
90
69
80
117
131
91
56
118
141
140
132
104
136
131
120
157
117
87
148
89
100
88
80
107
82
80
147
104
136
120
88
113
98
128
148
123
102
79
76
104
136
119
141
69
96
104
76
119
175
104
129
134
102
133
107
94
138
69
75
93
154
120
160
130
159
74
74
99
120
151
90
87
176
138
87
106
88
78
150
56
175
80
136
66
80
69
146
131
111
89
80
63
104
72
76
80
149
69
136
94
107
139
72
91
87
80
104
107
80
69
120
75
124
143
76
155
132
150
154
116
120
85
104
119
69
137
127
181
69
148
69
117
103
87
133
80
159
80
69
154
140
69
74
88
78
116
88
78
100
76
129
197
103
76
76
127
126
126
76
78
129
119
69
89
112
175
78
69
92
56
119
128
124
118
76
94
94
107
80
102
120
175
74
125
114
141
164
117
78
197
104
80
147
201
99
117
54
136
76
119
109
139
119
78
121
156
80
90
128
99
156
80
91
109
121
88
56
69
78
69
99
96
107
120
131
72
52
106
118
80
199
143
69
151
87
100
94
87
90
106
127
145
80
120
119
104
94
124
128
106
110
107
126
80
80
78
60
104
78
111
130
119
69
115
76
128
136
104
54
175
119
100
93
99
112
140
107
88
93
87
118
78
89
56
89
117
76
166
159
104
69
118
80
145
89
76
138
137
88
119
175
94
78
117
127
112
69
106
83
80
98
100
137
91
107
128
138
142
156
96
93
78
97
76
125
94
115
117
119
134
94
99
88
66
76
119
101
163
138
78
85
148
80
88
164
99
100
69
91
104
109
116
175
74
129
109
109
136
128
83
87
115
109
169
76
85
107
104
89
118
69
74
119
121
80
94
101
160
118
110
145
106
69
87
72
78
175
78
72
107
69
78
133
87
80
107
119
154
136
104
78
101
99
74
80
164
117
96
87
154
131
87
103
109
133
95
110
78
100
109
107
115
154
164
124
69
74
90
99
107
97
99
82
136
88
80
136
117
88
155
127
181
123
113
74
133
120
76
74
164
80
140
97
130
128
112
83
79
145
106
117
54
129
104
131
121
131
155
144
136
78
93
163
79
69
148
118
92
123
119
119
78
120
80
74
76
98
101
95
146
102
94
147
140
78
78
91
100
104
56
121
80
107
113
113
87
80
80
127
96
109
120
100
83
107
80
107
117
114
107
130
80
99
175
57
120
87
87
107
106
113
118
102
101
95
88
80
119
122
143
91
69
109
69
107
76
104
113
87
101
124
80
134
136
131
154
100
87
197
96
80
156
110
134
126
94
75
115
121
126
128
151
98
154
175
117
69
110
81
101
80
100
137
110
100
99
120
128
74
111
127
127
119
87
126
114
88
110
87
156
164
134
113
107
141
107
89
104
140
85
146
88
108
94
80
52
154
80
67
120
72
111
107
130
156
156
155
119
80
100
122
71
112
197
94
117
69
154
146
76
89
128
164
185
74
104
72
94
80
74
117
127
87
121
155
87
109
151
112
113
119
119
102
120
101
54
80
138
144
134
107
80
121
107
123
83
138
87
117
98
98
76
69
69
155
106
80
121
80
178
132
69
126
113
143
96
87
78
69
94
115
85
112
107
131
144
156
101
117
175
121
136
163
184
121
126
151
115
69
127
81
111
76
94
104
80
154
109
94
67
134
52
94
79
139
110
131
80
80
104
88
111
109
106
80
88
78
129
129
78
157
133
80
122
80
128
95
119
80
147
54
134
69
96
111
105
122
104
147
93
111
78
116
143
141
89
110
102
72
74
69
131
80
114
74
149
69
109
107
80
175
87
78
106
80
80
133
131
101
94
89
80
156
80
134
123
98
80
72
76
76
137
89
87
122
80
145
129
157
119
156
78
160
88
88
76
80
69
104
93
112
99
87
87
115
56
80
63
107
76
101
112
80
69
71
104
155
152
96
121
151
129
78
80
175
76
197
78
74
91
128
72
110
145
88
119
125
136
128
80
128
112
69
85
78
109
115
132
107
88
69
80
89
114
78
120
100
132
80
86
80
115
113
69
69
69
102
172
100
120
130
106
80
78
127
117
101
175
120
111
99
128
90
80
69
104
142
126
110
115
101
82
112
87
80
80
52
119
146
91
78
54
124
78
54
76
110
78
113
76
69
138
74
91
159
154
87
155
52
169
133
175
163
107
120
79
154
119
87
128
90
110
201
112
74
80
87
79
104
80
71
104
163
136
129
95
107
122
72
78
112
58
69
124
128
87
52
80
94
99
118
54
147
69
89
138
121
137
123
104
88
76
131
143
88
85
175
87
74
133
69
83
83
88
88
118
85
143
118
199
120
197
80
94
80
127
154
134
89
57
144
89
174
69
112
78
134
76
80
134
88
87
91
80
124
98
89
154
80
72
87
87
80
78
102
102
133
199
136
80
91
69
127
112
76
69
89
111
120
94
89
119
78
88
76
176
119
123
94
87
99
80
56
87
59
154
93
88
87
117
175
80
101
146
175
117
156
175
185
93
119
101
118
138
89
69
138
164
80
120
119
78
80
88
80
109
99
107
126
69
89
137
143
69
101
78
102
134
99
131
136
72
69
88
94
175
99
110
94
103
91
151
80
76
87
69
79
153
72
155
202
80
56
76
119
120
78
175
100
80
101
121
101
132
99
90
113
113
88
131
109
69
119
120
107
104
119
155
151
114
209
69
99
76
126
165
181
80
83
119
97
100
80
109
106
131
110
121
76
126
99
69
76
82
110
87
128
102
87
102
79
80
69
128
80
83
80
121
76
175
136
100
129
80
90
112
122
76
132
163
94
156
148
100
126
72
183
120
127
145
129
93
156
154
73
175
124
145
136
120
104
126
163
86
94
94
174
146
112
97
87
76
156
144
80
112
101
104
117
123
119
89
78
72
80
115
143
154
81
87
128
43
133
119
122
119
136
111
88
88
69
128
136
87
107
80
128
94
128
80
100
128
106
109
120
82
76
111
140
96
96
66
175
130
164
120
119
66
80
119
117
117
114
113
151
121
80
82
52
85
87
127
164
87
64
109
76
113
111
54
119
148
80
99
89
109
120
80
104
71
142
56
119
102
125
78
83
99
120
131
147
154
99
109
131
142
80
118
80
83
80
109
76
80
80
153
78
128
116
82
85
78
140
107
127
109
110
154
109
124
69
87
78
80
88
132
94
87
106
140
119
126
89
78
74
131
83
87
98
74
137
88
120
128
99
128
148
106
107
131
72
109
134
89
80
128
92
120
93
107
107
98
88
127
141
152
146
118
134
118
93
56
80
102
99
175
69
94
119
138
101
76
136
76
118
98
154
102
91
64
143
119
107
52
76
89
113
93
155
69
119
140
85
76
181
109
69
80
146
87
80
131
74
93
85
90
155
154
105
118
122
93
119
69
74
80
123
93
154
88
123
80
110
80
110
79
114
138
160
83
72
80
89
87
69
103
136
98
112
85
89
107
113
136
119
76
76
111
112
83
134
107
130
121
133
78
80
119
107
99
175
93
134
104
52
64
112
76
104
175
115
120
106
175
159
76
144
109
72
88
98
69
157
110
89
107
87
89
52
124
87
119
69
104
113
110
149
126
127
137
78
95
108
124
109
123
103
69
151
69
109
69
128
131
94
167
64
110
96
88
131
119
114
89
93
93
127
154
94
79
80
80
90
114
76
197
69
118
106
109
96
80
112
74
115
91
130
139
208
175
87
87
153
140
197
88
109
96
175
89
92
113
119
110
175
102
101
94
69
123
78
88
110
78
123
87
113
69
68
54
112
87
130
146
199
93
131
99
92
80
93
146
109
74
111
88
109
117
96
76
88
56
90
121
117
95
88
100
119
87
146
140
131
99
96
154
197
160
183
140
104
134
60
120
127
153
151
74
119
80
93
101
80
80
97
82
99
102
120
97
81
110
87
175
69
154
163
80
69
99
76
78
162
151
64
110
89
77
131
140
83
94
93
88
129
57
90
101
104
99
80
121
80
54
142
115
77
72
96
109
93
150
69
110
83
164
87
93
103
119
93
112
87
129
116
85
144
91
72
143
87
76
82
88
111
113
91
69
119
139
133
130
78
110
130
89
115
87
115
78
80
78
111
129
110
82
75
129
119
87
76
74
131
119
149
80
127
140
136
80
136
80
109
69
94
100
95
106
116
121
66
80
74
77
140
117
120
117
110
119
102
125
109
80
117
135
88
99
69
136
112
78
112
151
63
110
69
80
87
164
94
87
110
69
85
69
89
64
106
93
89
69
175
78
118
135
107
76
120
69
113
87
87
105
105
88
147
120
119
107
109
154
112
106
71
109
94
132
74
108
111
87
160
154
95
78
69
121
119
113
118
67
175
72
125
99
54
163
87
96
76
95
80
117
69
90
110
102
72
100
80
151
76
118
154
76
96
75
120
66
133
94
106
91
140
103
72
111
69
78
116
115
155
136
104
80
112
89
107
78
121
155
80
104
133
107
100
95
80
113
110
137
85
126
87
56
117
91
110
93
134
113
109
175
78
107
80
99
89
117
115
138
151
77
96
110
94
136
87
103
121
69
118
80
71
87
54
80
69
80
80
143
80
165
156
120
107
121
108
81
120
80
102
164
123
87
144
76
102
145
94
157
119
85
76
76
58
94
94
151
80
104
118
114
85
76
138
80
88
89
119
161
80
140
106
106
72
154
80
72
140
104
99
151
75
112
99
112
74
111
115
112
99
152
69
101
162
76
175
78
109
175
136
110
87
110
78
120
113
78
143
76
69
80
87
119
119
119
80
128
76
80
107
140
80
133
151
129
76
69
80
111
76
126
131
131
69
69
69
58
104
69
107
76
87
174
175
175
165
155
166
80
87
80
93
80
163
119
69
96
131
145
111
87
69
118
129
164
98
137
156
102
154
123
175
118
120
80
54
117
104
107
113
80
154
145
137
131
74
76
93
101
120
101
54
76
80
87
104
175
80
137
87
76
134
88
94
143
88
134
199
113
132
162
134
130
66
112
88
148
111
87
197
151
113
58
69
111
91
151
112
164
101
183
164
56
113
107
112
140
93
132
85
136
96
156
80
155
175
121
120
74
117
140
80
127
89
110
54
114
121
109
88
96
109
109
69
125
79
104
134
76
156
112
164
87
124
119
69
137
76
88
99
88
78
121
175
107
134
197
69
106
80
174
97
69
96
95
197
80
78
128
130
93
78
80
175
134
78
98
87
105
96
136
101
148
131
78
88
107
151
197
134
85
94
87
117
109
69
64
93
154
78
91
109
101
120
144
134
91
134
83
133
155
154
82
91
91
113
133
76
78
132
76
151
87
94
74
88
123
107
114
110
80
175
80
80
88
154
128
116
131
73
94
99
160
109
76
187
90
143
106
134
136
78
120
78
107
144
80
56
134
76
89
80
90
175
99
69
126
89
136
80
74
80
108
143
87
120
114
76
132
93
93
154
87
144
76
118
69
144
94
157
74
120
134
120
117
83
74
88
146
81
107
109
119
88
52
145
154
76
128
113
71
57
111
72
108
121
113
88
137
78
93
128
96
134
127
78
175
87
174
80
80
174
78
154
80
145
85
119
109
119
175
115
120
110
123
112
80
149
117
134
120
113
112
122
78
142
96
119
115
109
80
76
106
107
123
99
80
74
107
83
128
76
131
94
110
80
175
113
174
102
119
155
174
136
78
80
107
80
87
131
80
154
69
115
112
117
96
128
119
94
99
156
175
99
175
99
175
106
140
174
121
76
95
128
89
99
151
101
67
107
134
119
56
74
80
105
116
78
67
118
89
56
136
120
101
121
101
127
120
94
76
112
119
124
72
114
63
113
88
154
101
154
119
131
123
68
95
100
80
119
113
54
69
113
69
104
209
104
134
146
89
110
124
69
78
128
115
87
119
123
99
110
119
117
80
52
80
120
163
111
76
98
175
106
76
137
119
154
56
119
128
105
146
123
140
99
99
119
155
111
96
128
99
88
81
120
100
88
80
87
107
140
114
107
136
154
80
68
80
109
118
69
174
107
94
134
101
96
87
129
94
74
122
107
94
85
161
144
69
151
80
121
114
117
112
69
80
174
128
74
94
69
124
69
99
151
119
109
91
119
87
171
87
69
119
136
93
101
90
75
135
114
85
107
80
80
117
76
88
80
98
87
87
80
143
81
109
107
80
92
69
151
114
121
175
87
104
122
69
72
69
89
76
80
141
71
113
112
75
136
56
143
102
88
107
175
107
107
80
102
199
137
80
154
119
134
119
107
95
106
112
69
83
96
75
89
78
136
81
115
134
76
119
124
87
122
78
121
134
91
88
89
125
58
74
67
69
111
122
147
103
100
154
163
78
131
99
89
72
107
136
163
67
144
69
94
115
80
76
118
80
76
87
80
89
185
134
111
146
122
130
154
80
181
99
154
69
78
121
112
115
78
109
148
80
118
89
76
99
104
120
105
98
130
119
156
87
128
63
98
59
84
140
87
118
100
96
140
68
87
72
109
164
109
136
112
121
119
104
131
97
99
107
100
120
175
109
119
140
117
80
137
119
89
94
80
120
126
94
116
100
69
67
98
94
73
80
94
95
134
80
113
123
43
130
146
133
113
103
118
89
89
115
87
80
78
134
80
117
121
78
87
112
107
80
89
99
120
128
146
80
142
111
152
140
96
119
80
91
94
145
128
93
113
98
145
89
176
69
99
125
95
140
90
106
90
121
109
143
69
100
122
119
122
106
109
75
72
80
126
76
105
89
156
113
95
128
128
120
143
90
106
80
111
110
69
67
175
95
164
101
87
197
107
76
99
140
121
104
151
107
139
122
80
96
118
93
115
92
83
130
100
80
69
74
134
69
127
136
88
120
69
69
87
90
80
119
121
159
80
119
69
69
100
156
80
136
102
154
80
130
91
119
134
80
88
94
134
119
154
150
81
78
88
139
69
98
156
80
109
69
120
155
144
74
87
146
119
109
130
153
132
121
128
89
76
121
72
69
131
102
113
87
89
142
52
110
94
69
103
74
69
134
92
94
114
107
88
78
66
136
54
78
183
134
154
94
52
126
106
80
121
88
128
76
69
110
126
129
100
138
129
69
80
80
80
98
154
113
174
123
115
94
143
148
114
85
102
80
169
107
69
52
96
87
140
136
143
141
89
69
87
124
156
163
154
102
87
78
197
104
143
153
113
52
134
69
197
164
96
117
137
69
87
128
106
110
110
102
93
99
76
78
107
107
138
131
80
97
115
127
87
112
107
76
69
101
146
87
80
97
102
142
145
140
80
54
99
115
113
80
116
131
136
119
183
98
69
76
123
146
113
59
80
115
74
88
80
147
144
115
87
80
121
99
201
197
143
99
106
80
121
146
112
80
80
159
95
112
106
112
114
127
89
78
153
102
126
111
113
80
69
87
101
101
88
78
136
83
197
164
69
110
116
89
143
76
156
122
94
102
87
107
87
128
69
112
93
96
103
102
87
103
134
124
96
128
118
80
85
148
109
69
113
128
76
69
110
95
136
69
72
166
69
123
131
107
143
80
100
69
132
99
110
72
106
109
121
74
94
106
104
93
137
134
142
144
80
163
69
69
85
96
76
107
78
115
76
87
175
136
80
74
137
102
140
94
94
111
163
76
74
85
113
80
96
80
137
163
131
118
131
112
91
76
128
43
87
138
96
128
52
124
69
72
133
76
101
80
99
99
146
90
142
131
104
133
76
117
89
84
69
125
162
134
122
128
131
80
128
109
118
127
92
110
140
104
114
139
97
76
118
78
99
119
115
71
144
75
95
78
100
119
80
74
175
137
90
80
123
72
69
89
112
78
123
134
145
100
119
133
150
115
80
160
96
183
110
120
94
133
80
69
127
69
126
54
118
69
100
91
90
76
131
78
72
76
151
126
93
116
120
69
108
107
154
109
154
89
104
115
76
128
130
101
69
99
69
76
76
127
131
109
93
101
69
183
114
154
124
119
69
126
99
103
99
74
111
118
160
101
69
108
143
110
80
67
121
87
119
117
119
101
76
80
94
80
134
76
110
109
118
99
99
155
126
197
96
197
172
109
128
175
144
98
119
125
145
98
69
90
128
99
110
69
175
101
75
76
120
91
87
93
87
69
96
175
140
127
76
80
89
119
80
88
116
89
121
92
76
72
133
109
120
106
95
106
127
76
147
59
163
113
87
152
54
69
78
72
78
129
123
93
76
76
110
104
136
78
80
69
154
93
126
147
134
118
174
163
102
115
92
101
119
122
89
54
100
87
76
163
123
80
74
87
183
174
103
121
154
88
106
102
140
164
117
138
175
69
110
106
154
80
183
156
102
137
130
69
80
110
109
96
83
97
52
130
115
69
80
93
80
107
156
121
110
175
92
120
110
112
69
76
87
80
87
69
107
78
184
131
87
80
80
69
99
131
103
102
93
76
119
119
60
71
171
183
101
134
87
111
124
96
109
80
155
80
140
128
115
155
101
80
97
133
145
94
175
80
80
113
128
146
78
88
106
76
80
104
175
104
76
106
144
107
119
136
94
140
106
106
91
133
119
69
110
156
99
111
127
109
128
154
89
156
43
54
113
78
80
80
80
107
128
118
68
117
89
76
154
99
103
152
88
122
133
109
85
116
76
89
121
78
82
87
114
94
119
138
92
106
140
52
98
154
134
69
93
69
132
118
80
80
76
69
121
117
113
87
80
110
83
139
113
125
155
80
128
134
129
93
72
78
118
76
107
99
128
118
111
80
138
113
106
133
159
109
69
155
175
96
54
74
131
89
78
80
124
155
99
156
80
145
121
80
110
96
140
89
82
96
174
79
127
109
91
169
155
78
99
165
88
76
117
120
107
151
87
127
91
69
94
175
64
97
68
54
72
132
89
119
80
72
120
64
87
165
109
134
105
155
129
151
120
69
136
69
52
110
119
133
137
131
137
119
80
87
104
132
130
87
110
76
124
69
131
121
80
90
89
100
122
175
119
119
88
87
156
120
124
113
142
147
72
134
137
151
88
79
93
78
99
96
89
88
94
142
80
130
74
94
126
128
80
72
118
102
79
128
100
165
69
67
90
103
93
80
100
69
106
150
82
79
69
134
80
109
89
74
109
94
101
69
79
85
43
145
96
113
119
136
110
69
119
111
85
80
162
143
105
91
89
151
114
67
81
133
99
112
101
80
99
111
93
69
95
69
137
117
80
100
120
155
121
136
67
121
118
120
187
114
87
129
151
151
66
120
102
118
133
101
78
107
80
87
137
131
69
80
99
69
160
69
197
76
89
87
80
101
63
154
122
114
91
80
71
101
147
175
54
145
94
87
80
156
96
126
147
175
89
121
128
92
101
110
94
76
95
160
92
134
131
120
74
66
97
85
142
109
145
89
123
89
100
131
99
96
94
107
93
151
175
69
74
99
131
106
138
109
175
87
78
112
89
137
96
80
145
76
99
136
132
119
87
123
140
76
86
130
121
83
76
80
96
136
110
113
80
103
134
119
88
80
80
104
128
80
134
67
85
104
119
101
138
80
88
69
78
117
149
144
120
91
125
120
88
125
175
76
80
120
175
80
108
109
89
151
87
82
134
88
80
175
80
75
175
130
115
99
159
175
147
101
119
120
78
135
125
130
101
87
78
134
88
140
100
127
131
100
76
154
119
107
103
96
120
79
103
127
138
91
208
78
117
100
111
113
74
136
143
155
142
114
66
87
87
87
120
68
143
80
85
137
93
134
88
115
99
160
155
115
113
128
90
137
117
76
80
80
80
147
119
67
134
95
80
88
121
87
80
160
87
120
80
78
110
87
151
151
132
87
94
116
106
101
88
107
54
80
119
174
93
143
85
114
156
118
102
87
100
145
148
113
175
152
104
112
80
85
89
89
141
136
106
147
80
131
114
69
124
134
143
91
87
72
175
92
99
110
152
96
72
110
88
120
145
131
99
69
134
96
111
117
78
123
152
80
91
91
76
113
134
87
43
84
131
121
117
110
118
69
156
145
104
144
153
87
142
113
131
111
119
114
56
101
87
79
91
147
123
175
119
102
69
80
69
110
80
175
69
103
110
100
99
78
113
93
119
120
119
91
156
89
100
69
96
89
88
72
86
54
95
109
114
159
88
75
107
87
80
99
94
119
102
120
154
99
60
110
83
93
69
111
109
87
197
69
102
129
93
127
175
125
89
94
104
93
82
101
85
74
128
63
80
99
69
102
94
113
99
76
154
78
80
111
121
78
175
160
119
87
121
145
99
87
135
99
99
104
87
78
103
142
117
88
80
102
80
96
110
80
94
174
112
129
136
169
156
109
116
87
95
80
115
137
119
119
88
123
131
91
114
174
89
94
80
112
136
69
110
72
145
101
109
156
136
197
128
57
78
118
80
120
89
103
96
88
69
113
137
69
69
143
104
141
69
109
80
121
78
112
125
90
199
140
74
88
121
175
158
99
106
107
88
90
138
175
80
95
80
117
163
124
120
186
164
120
112
96
152
94
145
69
140
131
78
194
78
145
58
80
104
91
169
136
69
146
104
120
137
101
145
106
127
154
63
93
178
98
76
117
78
131
99
174
76
120
102
120
107
154
91
89
134
137
100
127
87
128
78
80
174
80
98
106
80
74
148
109
87
140
137
137
125
112
134
157
76
78
113
138
150
98
128
131
81
80
143
134
80
131
78
80
140
128
88
113
197
159
197
120
74
80
76
119
80
128
69
128
140
94
80
93
80
95
155
107
77
109
197
120
107
146
102
88
76
87
87
69
151
80
139
80
69
78
88
101
121
94
128
106
114
69
76
117
111
102
175
129
119
80
119
134
146
88
78
112
94
103
59
80
175
104
89
119
98
90
113
80
69
119
107
96
99
63
132
183
72
175
146
103
160
174
156
146
106
80
118
87
76
94
128
103
153
128
72
150
131
109
80
102
154
132
109
130
137
134
92
107
119
122
80
82
145
87
76
80
89
80
118
76
118
124
151
74
123
148
119
134
102
80
123
107
87
87
52
72
153
78
78
120
154
80
69
109
117
132
175
69
87
131
106
76
69
96
113
142
80
109
69
125
112
112
87
108
87
69
91
120
69
91
150
98
125
76
80
91
80
52
117
81
87
76
127
120
128
107
154
126
69
124
130
117
129
80
89
164
154
95
136
78
128
80
85
87
69
156
107
115
118
106
80
162
106
107
107
74
69
157
118
87
88
88
107
78
87
117
154
131
80
164
69
140
144
136
91
156
69
110
134
129
99
115
121
74
93
94
69
124
140
107
118
80
80
101
78
96
54
131
118
101
75
121
94
140
175
120
72
87
112
124
134
128
131
107
175
76
89
126
72
156
106
101
112
69
123
124
119
103
96
113
78
102
154
109
129
110
156
95
57
76
121
91
126
119
95
78
69
105
115
151
117
110
66
80
78
136
78
107
80
175
80
137
109
137
104
100
117
91
160
110
104
91
130
82
92
113
109
132
69
88
76
89
110
87
87
67
116
123
80
69
69
109
66
99
146
107
89
127
112
109
80
176
95
87
187
145
117
76
128
109
117
131
110
111
94
101
80
74
82
119
131
69
78
88
94
125
80
80
128
69
89
69
117
80
80
201
60
110
137
94
128
106
115
88
101
76
119
140
101
87
153
151
175
109
119
140
156
99
114
87
74
75
128
154
143
107
134
85
80
80
117
87
140
83
52
104
110
113
92
100
122
137
88
131
144
80
72
145
81
110
118
89
69
117
76
164
158
110
106
115
106
118
94
80
129
69
128
119
93
163
91
101
140
177
119
80
80
107
157
121
112
175
140
116
119
154
101
87
165
88
90
93
80
94
69
94
82
119
80
113
145
88
88
119
99
142
69
137
52
80
146
76
78
151
109
82
91
100
89
109
69
106
80
148
89
103
151
156
121
83
113
87
113
87
82
69
80
156
119
130
151
144
131
128
80
69
120
119
104
119
74
101
87
69
69
121
133
115
116
99
118
95
80
89
76
140
123
114
101
80
94
128
118
141
91
109
91
80
121
113
96
119
80
109
87
106
87
110
118
120
80
80
122
120
96
128
72
56
155
128
81
87
147
174
136
96
120
149
92
120
128
154
76
131
123
80
110
98
111
119
90
87
107
145
151
110
175
136
126
148
107
99
85
54
117
197
113
99
181
104
76
99
94
119
104
87
145
87
69
100
96
69
88
129
154
110
115
74
88
111
138
97
96
110
69
69
104
110
121
99
73
74
113
164
72
69
107
88
110
114
89
100
112
175
106
87
113
93
88
199
76
121
88
80
119
78
88
112
119
131
144
107
107
99
128
120
78
146
93
119
80
80
107
145
54
104
175
78
133
119
87
175
69
80
122
107
80
130
99
118
101
80
96
155
98
175
134
80
80
132
78
56
104
109
88
99
103
151
104
144
80
69
119
134
52
120
136
80
103
85
109
87
128
87
175
78
74
136
80
117
121
72
69
106
80
85
119
175
134
76
69
137
76
147
145
80
103
100
76
151
175
112
140
74
120
151
94
91
102
75
94
80
133
129
80
113
137
155
80
87
134
80
83
113
82
69
87
69
175
87
69
80
72
89
80
120
80
131
81
80
121
112
88
80
128
113
72
130
101
63
97
89
156
87
110
109
122
90
74
175
134
69
69
78
91
89
91
72
69
93
166
100
79
140
132
99
156
120
121
69
120
90
116
80
89
112
104
127
175
67
80
126
125
76
119
127
76
159
201
93
143
118
115
99
69
94
148
75
117
123
119
120
131
126
87
157
155
104
114
115
154
146
144
67
54
69
124
74
147
133
85
96
76
128
78
120
130
80
106
117
87
111
101
154
181
96
117
90
78
95
87
69
117
91
181
80
80
155
123
113
74
98
164
87
107
109
110
114
107
148
134
156
137
156
124
117
88
69
80
112
166
80
113
140
79
54
94
106
78
103
140
95
99
175
80
52
131
141
119
78
72
72
87
175
154
127
101
138
136
199
130
73
119
80
76
137
82
163
104
137
145
98
100
114
128
99
72
101
140
106
106
112
80
80
130
89
83
69
137
88
107
142
140
148
80
102
76
121
110
103
80
118
78
101
67
126
146
156
115
66
154
156
89
69
69
87
76
74
93
129
117
107
154
112
107
135
130
91
88
120
74
110
128
117
91
81
80
79
120
87
107
118
79
87
111
101
152
112
80
99
69
127
54
80
80
90
95
100
128
111
69
140
104
124
105
110
129
87
109
116
87
124
69
111
106
155
72
144
100
83
99
79
76
113
72
125
109
155
86
122
151
113
83
111
145
120
78
117
80
119
128
107
127
117
136
69
69
87
52
127
54
147
100
88
100
80
78
146
88
157
107
106
154
154
92
80
110
160
88
91
143
72
88
128
89
87
87
88
104
106
98
91
106
67
111
99
163
111
128
80
81
127
99
69
140
117
85
85
88
134
93
139
74
96
91
64
80
80
110
128
71
112
120
94
69
80
109
102
68
137
112
80
140
72
102
119
78
133
136
107
76
101
59
94
103
72
119
125
147
114
107
128
120
87
121
87
76
140
143
56
124
125
69
142
155
149
109
113
94
117
56
94
84
117
105
80
102
156
69
115
119
131
66
156
197
88
85
52
89
80
87
111
134
134
96
119
96
107
100
56
90
82
118
78
109
91
112
126
80
124
104
76
119
149
119
122
112
99
82
112
78
104
112
80
117
123
54
136
64
74
107
74
95
100
113
121
109
54
92
104
99
137
80
80
69
112
91
94
110
56
104
87
80
148
106
106
92
67
101
78
126
118
156
119
156
78
89
131
154
80
92
80
119
142
109
98
69
146
119
109
94
114
109
104
110
104
117
151
107
84
69
80
94
117
112
87
72
95
88
109
145
78
131
99
80
69
80
88
94
87
120
156
99
43
114
110
85
128
124
120
140
175
80
69
72
106
119
87
144
144
133
87
89
136
162
106
80
95
136
110
163
109
104
80
106
110
119
93
99
123
60
128
137
134
175
75
115
92
76
78
87
87
175
109
102
112
147
80
145
89
99
132
118
109
93
119
69
109
69
134
80
76
137
94
112
67
132
118
121
151
87
87
123
132
88
133
78
114
78
140
80
120
113
116
114
88
83
133
119
123
156
69
117
82
151
141
151
112
145
123
80
163
80
154
69
72
119
76
122
99
120
69
90
80
115
126
69
107
143
80
104
104
137
68
119
87
146
89
92
76
109
154
88
76
175
74
99
146
131
114
87
119
78
107
121
96
113
129
72
80
99
76
76
80
114
80
96
104
109
134
197
156
128
146
175
126
117
87
99
89
134
111
87
112
119
69
123
94
99
120
164
91
99
89
112
136
126
107
107
121
76
97
80
69
137
89
109
126
89
128
82
74
162
72
109
138
101
145
104
157
111
72
128
89
150
101
122
88
142
126
72
58
108
96
104
136
87
197
80
92
142
59
143
146
83
104
128
124
134
119
69
96
99
117
101
99
91
154
103
69
80
174
144
134
107
67
128
99
103
87
101
121
99
121
95
80
111
128
118
93
89
94
156
120
87
147
82
175
119
74
87
95
137
87
69
107
107
94
127
103
123
99
160
106
69
87
103
154
95
56
110
151
106
82
99
69
80
113
69
80
104
106
85
159
107
156
74
88
89
100
82
134
87
104
125
111
119
124
72
100
159
110
131
88
78
66
107
134
127
128
120
79
144
96
69
90
87
91
120
83
87
99
110
123
120
117
135
78
109
85
131
131
120
69
57
115
80
89
185
146
100
101
89
109
110
111
76
80
148
143
72
80
106
80
88
85
78
128
80
131
60
72
99
121
110
113
67
106
121
58
155
133
143
95
151
120
94
109
110
103
197
94
52
117
96
101
69
148
103
146
104
103
89
134
151
120
80
136
101
109
76
107
96
87
120
107
116
114
93
87
156
113
136
80
122
104
128
136
144
104
74
87
183
96
80
82
125
99
87
151
156
89
125
52
107
109
87
80
114
159
151
120
107
114
148
93
101
169
119
76
119
80
87
69
80
107
83
96
155
148
133
140
97
104
88
125
91
104
126
112
76
128
117
101
52
63
124
104
69
102
106
133
119
74
137
119
175
128
80
116
56
111
163
137
145
69
87
129
99
141
128
135
69
108
111
119
100
80
78
93
122
119
109
76
110
153
76
126
89
120
89
93
104
103
82
111
109
109
125
78
76
69
80
120
112
66
109
120
99
159
72
69
103
133
109
88
80
80
136
87
99
85
107
144
69
87
110
95
156
93
129
113
120
120
69
90
69
107
130
89
96
89
87
99
175
74
78
145
76
99
101
197
110
93
69
69
140
160
121
89
128
72
143
112
79
67
64
154
178
80
119
140
175
56
97
88
137
88
131
156
126
80
146
115
52
132
123
109
197
54
120
74
113
80
115
119
143
52
104
134
114
149
52
69
107
131
69
69
69
110
69
121
102
121
92
122
140
89
78
85
80
88
87
100
94
103
78
96
103
119
76
88
98
103
118
69
107
118
107
118
105
69
118
80
58
76
87
78
143
92
119
115
125
69
137
112
193
80
136
154
128
117
94
109
100
106
132
72
72
137
201
80
104
136
140
156
89
75
99
121
94
69
106
96
197
110
112
88
102
107
76
143
76
106
148
151
145
117
80
128
97
78
148
126
87
181
69
102
107
116
69
110
100
69
112
115
96
88
89
72
120
96
133
113
91
80
175
101
80
102
109
80
114
99
145
151
154
103
107
175
149
108
102
163
84
106
107
128
80
133
154
54
92
119
80
76
121
130
131
78
150
80
152
104
156
80
118
87
69
80
199
72
89
140
136
127
146
87
89
133
118
76
87
80
120
80
154
120
112
96
115
119
80
52
80
147
87
144
126
120
86
113
76
146
99
75
112
76
93
112
88
76
87
128
76
174
146
129
91
101
89
124
78
95
112
52
85
113
110
103
143
103
119
54
131
148
131
128
74
120
69
104
106
107
175
107
129
80
85
115
129
99
99
69
163
114
135
155
88
114
108
134
121
80
87
137
69
139
78
69
106
87
140
133
122
74
76
154
87
88
87
102
87
80
121
127
109
78
118
93
102
110
128
97
80
94
197
120
107
119
80
123
106
147
119
99
78
78
175
79
113
107
106
78
106
110
99
119
89
104
113
102
153
110
112
80
80
80
78
98
95
80
93
129
103
69
123
87
107
96
102
93
80
119
107
132
175
104
125
80
112
175
80
120
98
80
67
120
110
107
131
80
109
87
133
85
107
136
131
80
76
69
87
146
85
118
117
115
69
69
78
80
99
69
69
94
119
87
119
78
54
76
99
150
69
164
114
147
82
80
91
72
114
111
66
94
93
139
94
123
91
146
136
80
148
99
142
72
87
169
66
96
136
69
175
131
71
138
156
115
67
78
56
112
115
52
54
132
87
197
132
97
93
175
100
127
131
119
93
109
110
115
143
156
104
87
120
151
76
106
95
133
138
87
151
174
94
98
52
103
195
106
155
136
119
95
78
85
69
129
99
131
107
97
78
89
136
80
134
80
134
140
128
110
147
69
78
120
91
78
128
76
113
69
88
144
80
72
69
162
110
102
96
175
138
156
107
69
131
154
69
87
119
91
131
119
111
80
164
119
102
146
113
110
87
101
80
76
69
56
119
120
102
78
134
109
69
78
88
109
117
112
106
175
156
69
117
93
75
125
121
163
69
132
87
183
169
122
103
90
110
54
130
72
80
125
128
155
113
109
103
154
94
88
153
151
99
110
78
93
107
114
155
131
140
109
128
110
155
109
87
148
127
137
113
117
197
89
94
131
80
136
72
78
69
106
110
80
177
104
117
80
164
102
143
76
114
72
102
114
107
106
117
143
140
69
80
116
96
104
52
123
111
74
145
139
155
85
123
80
151
80
107
96
100
151
80
136
110
119
163
135
87
124
101
102
67
114
132
107
138
131
78
88
87
127
120
101
117
111
76
155
108
93
136
197
78
76
107
106
143
88
78
94
109
128
87
80
107
116
99
115
94
80
113
128
119
104
88
163
80
128
122
79
187
112
132
80
80
90
154
120
138
85
94
87
76
144
140
156
154
133
140
115
99
107
89
129
119
102
78
54
169
127
83
119
136
80
89
124
107
98
113
119
80
96
107
140
109
101
98
112
147
87
157
99
122
90
69
102
165
100
93
66
80
94
69
89
87
43
76
107
109
136
80
99
101
94
69
131
104
136
140
196
109
160
117
107
101
76
128
107
187
69
123
78
100
118
147
107
147
121
99
103
88
148
80
111
80
123
151
138
134
94
91
146
144
116
89
87
107
80
134
95
78
181
114
117
123
106
111
69
112
175
119
128
102
95
183
76
119
129
96
76
155
100
151
80
175
80
93
143
116
97
76
88
80
87
134
79
78
79
134
87
142
134
69
151
92
138
163
120
164
69
156
146
80
144
144
80
128
137
127
144
107
151
163
88
87
114
106
109
120
111
89
175
69
120
80
120
72
80
78
69
92
128
101
52
154
146
118
69
103
163
123
96
80
93
76
131
88
76
88
69
80
107
112
146
91
88
80
80
113
175
140
103
114
69
80
120
154
91
116
145
89
134
71
112
159
104
77
89
143
89
120
69
99
130
72
69
98
134
119
138
95
154
154
87
80
109
87
75
52
123
120
88
163
137
75
96
119
69
69
121
89
72
88
120
120
115
101
125
134
132
80
56
80
80
107
83
154
107
88
104
76
138
69
139
120
86
120
63
80
106
80
107
120
118
80
99
107
128
69
121
91
76
175
122
199
145
106
100
69
109
117
120
80
101
109
87
123
134
85
154
118
174
121
107
104
76
111
134
91
128
119
102
132
151
80
123
88
69
78
78
87
124
78
120
80
136
80
91
141
69
78
102
87
74
88
134
109
100
69
141
93
137
111
117
136
131
112
107
177
76
69
131
88
106
100
80
104
181
113
185
76
92
80
110
105
89
69
117
109
80
107
131
82
107
80
89
127
154
91
119
54
87
154
127
89
119
133
83
136
125
133
76
122
107
159
97
69
121
89
112
132
69
87
78
106
88
125
102
121
88
117
120
96
119
134
134
110
120
197
109
69
75
125
64
78
99
171
69
89
163
154
76
95
96
150
96
175
106
104
94
72
54
69
109
137
88
115
107
131
87
78
69
96
80
146
95
175
122
140
100
148
89
52
99
91
181
109
80
87
100
95
130
78
78
87
112
78
80
127
79
107
134
119
128
131
54
100
146
120
85
85
104
102
107
114
119
106
52
87
68
75
89
109
78
134
114
128
76
101
104
100
110
90
147
87
74
112
110
104
81
112
146
76
76
175
69
80
81
80
94
69
100
112
68
102
78
131
105
127
109
93
89
125
154
89
87
96
104
115
114
54
110
102
89
134
94
69
111
99
154
131
93
117
78
119
132
111
175
140
134
156
104
158
126
108
96
80
131
78
163
128
96
104
187
112
127
151
80
175
109
76
69
107
104
156
94
80
52
99
87
69
76
117
90
137
140
69
101
69
109
101
121
69
110
80
89
109
156
78
112
107
94
91
197
80
107
111
76
100
88
126
130
106
137
78
107
87
80
43
128
87
98
128
110
128
72
128
132
107
54
80
78
93
128
107
99
43
87
166
66
90
163
80
91
111
76
80
109
136
105
80
72
94
106
85
111
121
91
119
76
78
78
131
69
107
102
68
87
141
117
83
69
110
151
133
96
87
162
67
107
80
74
155
80
197
97
120
102
131
110
78
87
102
94
124
110
102
82
106
52
142
80
100
175
89
136
78
113
87
107
91
82
75
99
80
120
106
118
121
74
94
107
151
131
80
136
69
88
98
94
79
128
145
110
122
87
131
119
101
126
81
119
113
128
78
69
69
144
121
143
106
153
99
175
118
117
109
164
80
128
87
128
107
117
90
94
121
136
126
105
89
69
109
199
87
109
87
143
102
109
104
117
118
120
95
109
136
110
133
156
136
98
87
134
70
124
72
113
145
110
150
146
143
156
94
78
80
105
85
76
91
80
148
72
139
96
80
111
101
72
87
120
80
119
78
129
80
93
131
163
131
80
106
69
69
110
130
109
131
126
112
88
100
111
76
69
69
81
128
151
99
163
156
153
145
183
132
76
115
133
57
87
78
76
127
78
76
110
140
107
72
87
72
96
59
88
56
76
111
93
118
126
154
74
154
88
132
80
69
91
88
113
174
68
130
93
89
124
157
106
106
112
72
90
80
129
110
80
104
127
87
162
146
91
88
87
117
136
154
107
137
110
103
169
163
87
121
139
85
89
127
134
80
140
56
69
80
109
76
128
118
121
117
80
109
106
69
107
78
107
78
100
148
122
141
162
81
121
154
80
150
74
115
94
127
174
87
109
69
69
87
111
131
106
76
139
100
91
140
76
104
93
91
100
119
118
140
100
80
104
78
113
96
69
126
175
96
113
107
137
95
174
91
107
145
133
111
101
128
75
78
172
140
80
172
197
147
113
111
96
88
112
87
87
87
87
146
94
101
151
120
95
123
103
157
104
99
112
78
141
54
87
156
118
154
116
148
87
104
119
107
110
57
88
119
89
131
69
154
131
80
156
73
72
80
129
76
131
187
80
129
136
110
119
101
104
59
154
109
199
43
133
96
69
96
147
76
94
107
80
117
136
80
69
162
131
117
67
167
72
80
80
175
92
99
89
110
119
74
128
96
104
88
155
109
89
88
94
64
114
132
113
131
147
80
107
113
134
69
174
87
99
149
138
88
135
115
106
69
120
102
87
103
92
78
100
85
121
94
136
78
87
89
175
88
80
117
78
71
121
157
97
136
69
140
128
156
128
128
75
111
117
136
162
54
145
119
80
105
127
80
128
197
119
149
94
87
153
87
95
100
102
80
175
107
116
175
80
147
151
76
127
145
143
111
80
69
117
177
76
118
143
43
160
69
73
110
120
142
69
197
96
136
111
98
123
156
88
114
96
72
78
88
109
110
78
80
113
138
96
112
129
59
120
87
110
80
101
80
80
151
95
107
119
106
89
87
100
107
78
112
154
96
136
76
139
80
69
85
124
87
118
52
137
102
69
128
87
132
138
100
109
128
154
80
104
109
76
111
59
90
120
112
76
99
107
96
80
163
84
99
119
76
110
88
52
75
111
120
114
131
112
87
78
120
163
120
111
117
78
78
112
80
110
121
71
100
142
78
69
122
133
104
136
76
80
151
175
100
109
102
69
175
121
69
80
80
80
69
56
102
76
197
69
109
87
80
116
63
155
146
127
127
87
145
162
133
131
87
136
89
132
108
99
120
106
197
87
175
110
59
69
87
69
124
91
100
91
123
120
131
148
144
128
78
146
76
69
96
119
121
80
107
109
126
142
88
119
60
134
118
52
137
80
128
87
136
140
69
100
151
69
85
128
78
85
80
76
119
94
128
52
80
119
147
102
137
76
104
132
156
101
76
69
137
185
123
96
80
69
133
102
112
110
87
110
54
80
76
115
76
117
87
121
147
120
144
76
127
155
120
88
112
87
100
150
98
147
106
137
88
78
117
120
154
69
117
68
119
87
69
157
109
166
72
88
107
175
96
56
88
80
89
123
74
87
142
78
120
103
138
89
118
78
109
130
185
118
78
72
134
121
120
134
80
137
118
86
172
78
80
77
87
87
137
69
99
132
115
169
146
128
85
145
80
137
126
69
120
102
89
106
106
80
107
91
76
101
146
89
148
126
128
80
102
151
93
124
120
106
124
109
98
117
132
69
80
169
175
156
85
113
88
136
56
164
87
98
101
69
199
91
87
69
143
100
91
156
89
138
133
154
76
89
69
120
138
94
80
78
101
120
175
85
127
98
54
59
104
54
156
106
88
80
114
80
154
69
80
104
103
96
109
76
113
94
80
96
116
91
175
136
80
99
87
145
111
52
126
74
129
147
94
122
120
80
81
105
112
108
82
109
154
90
100
102
132
78
82
76
80
80
186
56
76
92
131
87
100
104
164
140
90
64
80
114
110
96
131
107
128
111
93
175
123
99
78
74
135
69
96
80
129
80
128
178
76
109
96
116
87
111
76
78
104
78
130
81
119
155
80
87
94
88
145
117
87
119
131
67
119
99
115
102
103
178
69
85
80
109
76
99
131
78
80
110
94
116
120
71
106
128
156
115
146
201
131
109
124
101
128
78
87
74
122
109
106
155
87
87
137
120
107
88
110
80
87
54
110
154
99
87
80
67
78
79
151
146
87
110
164
69
161
120
71
99
91
80
89
43
144
143
118
155
113
119
148
88
113
78
73
72
121
80
87
151
72
91
94
80
90
197
78
80
69
175
96
78
78
120
106
80
80
67
72
103
107
116
99
102
76
89
80
96
69
85
197
113
120
107
154
164
87
69
118
126
98
67
80
113
69
128
93
76
72
76
113
158
151
69
75
107
119
154
113
128
93
145
69
91
175
132
97
80
121
154
155
144
87
117
163
101
93
91
72
134
137
87
128
82
69
146
88
69
93
107
103
138
105
103
130
122
105
87
87
136
113
140
87
107
99
121
145
121
80
109
72
110
146
90
69
64
154
87
87
122
147
126
109
147
128
78
145
76
69
156
91
107
87
181
78
78
149
99
160
72
108
104
72
138
119
125
76
80
142
93
132
128
69
87
109
175
127
146
101
74
115
156
113
94
80
134
112
175
107
80
140
110
156
78
87
76
78
87
91
80
159
91
72
80
163
104
115
106
89
146
136
94
69
80
80
102
80
128
93
89
119
142
103
131
109
107
162
80
134
112
78
66
80
69
69
102
111
99
91
94
72
89
197
160
120
175
100
88
136
117
197
166
80
111
121
83
146
88
56
112
112
120
113
80
109
98
69
94
107
78
130
157
142
109
156
109
107
142
95
113
156
131
104
175
99
99
117
126
78
80
146
67
156
137
109
140
160
110
93
130
134
136
114
104
137
80
111
123
120
102
84
76
134
85
79
175
94
102
121
102
87
120
69
71
154
110
121
133
120
69
99
93
104
80
66
103
115
111
134
115
95
87
115
123
120
156
123
113
85
120
74
104
74
80
78
120
69
115
101
131
76
87
92
72
76
120
175
148
134
88
131
80
129
119
104
56
122
92
119
140
76
99
76
99
91
104
116
77
115
148
93
106
106
80
105
148
93
104
134
80
69
142
110
199
114
136
147
88
79
122
119
91
107
78
134
104
91
69
93
72
69
69
76
80
114
110
111
134
78
126
69
74
131
109
156
80
72
110
155
89
115
132
153
93
76
111
67
72
101
80
128
148
80
67
126
127
67
120
80
78
80
101
143
80
87
154
79
78
111
107
111
99
117
69
80
106
120
80
143
87
123
118
130
154
120
121
121
98
169
106
114
87
93
131
80
117
120
80
120
143
154
147
175
164
113
136
175
93
76
107
109
133
76
102
87
115
122
88
113
100
103
156
54
154
69
99
78
114
130
60
131
119
146
76
154
60
115
74
130
87
87
166
111
100
80
145
87
134
69
181
127
109
100
80
80
175
94
128
107
89
91
80
136
87
128
175
78
128
103
78
119
128
69
87
140
120
87
147
88
143
132
106
98
123
87
144
78
120
123
135
120
72
87
128
104
69
69
110
107
63
182
154
120
117
129
104
80
80
119
69
80
80
125
91
66
126
120
109
74
97
121
79
144
128
163
119
151
110
110
121
78
129
138
181
72
127
99
80
78
52
78
69
143
163
154
122
105
89
110
104
134
76
106
88
157
164
89
69
106
101
76
80
109
85
80
80
120
80
132
131
138
107
163
99
133
98
87
69
126
76
131
164
94
138
93
104
118
76
163
69
80
101
69
80
143
87
110
137
120
126
144
78
107
76
151
80
54
107
80
67
87
87
121
87
83
54
117
67
112
69
128
64
107
121
114
151
90
96
122
120
88
87
113
113
175
120
209
109
163
76
96
110
152
85
99
76
99
87
125
76
154
119
79
94
96
93
93
131
69
94
88
76
154
119
106
96
80
80
119
137
96
69
56
147
102
121
80
119
151
119
109
147
79
134
74
78
131
110
93
94
109
87
87
124
101
52
101
120
104
185
94
117
151
72
109
54
98
109
109
89
69
110
92
89
117
78
155
91
52
114
78
112
94
113
119
124
119
69
95
108
99
80
79
104
78
115
143
99
121
80
99
66
112
94
76
126
69
80
106
76
112
76
121
101
78
78
96
78
80
113
119
151
104
156
127
100
117
119
99
69
140
163
93
154
69
80
69
128
96
129
120
140
101
124
147
132
133
175
78
87
99
107
100
80
87
201
88
145
78
143
154
76
127
67
69
74
120
109
76
156
78
101
154
140
110
78
114
84
99
175
133
91
119
97
118
88
154
78
151
120
86
87
132
132
86
94
115
92
106
111
86
96
69
102
94
197
152
107
175
63
80
105
99
175
156
174
87
69
87
78
132
131
87
91
69
109
72
104
76
74
118
121
104
96
94
136
112
104
197
145
69
133
122
100
94
87
80
121
87
78
107
154
80
98
129
119
96
121
155
114
91
94
93
128
137
100
89
119
94
151
69
78
115
120
159
115
122
88
73
197
107
93
106
131
130
85
73
102
197
111
89
110
76
94
121
152
163
52
103
119
116
156
74
134
59
128
128
160
132
175
72
92
78
100
72
69
87
80
136
80
80
119
112
89
76
74
80
85
142
87
93
156
128
69
102
93
148
99
141
72
103
95
78
148
69
128
95
87
140
142
94
100
130
104
175
87
80
121
91
136
150
116
88
140
76
126
91
76
119
87
80
122
134
69
113
52
107
88
124
140
123
80
154
87
153
103
131
80
94
94
119
82
94
101
75
78
87
69
128
151
80
121
120
76
80
99
93
131
119
64
144
111
107
72
124
127
87
76
69
157
80
78
85
89
114
156
175
187
157
78
126
99
72
107
116
98
131
74
151
91
89
147
97
120
128
155
78
149
119
128
119
126
166
120
80
71
119
87
76
101
87
109
175
89
72
106
72
76
82
91
107
112
146
145
80
69
140
88
106
76
115
111
124
129
89
91
134
101
142
76
76
104
98
99
125
175
80
136
120
148
96
123
87
111
144
107
69
151
95
118
78
69
107
74
140
119
76
80
132
107
76
156
123
110
114
121
160
76
199
100
130
80
76
74
121
80
122
121
121
76
156
76
74
88
69
128
80
69
151
104
154
78
72
69
107
107
101
89
80
74
104
89
76
87
69
145
100
103
113
174
131
134
93
113
67
88
76
102
75
199
113
69
69
133
88
76
137
78
87
146
101
80
120
151
80
104
96
151
83
124
111
69
113
111
154
88
64
137
134
148
112
94
109
106
69
107
76
69
107
80
85
175
154
128
69
126
85
175
72
90
107
80
140
91
126
117
90
142
109
119
119
122
120
78
118
109
76
131
74
89
80
69
139
101
76
154
80
119
93
88
72
80
87
69
119
87
131
78
123
76
113
109
119
126
80
69
101
102
99
107
85
128
96
69
72
130
145
118
154
155
135
78
74
121
199
94
78
80
119
120
87
87
124
175
88
78
90
97
127
66
52
80
133
124
148
127
116
99
120
121
99
145
87
80
123
69
105
101
87
128
185
151
76
87
74
117
155
83
120
145
162
121
119
69
156
80
88
89
123
114
76
131
108
132
101
80
114
107
92
97
158
102
99
107
137
136
80
76
88
109
78
85
150
80
146
72
88
119
109
72
78
80
80
87
87
80
159
128
151
87
132
72
99
113
97
56
118
175
103
113
128
107
69
142
132
87
155
115
97
76
131
117
72
72
112
134
154
128
132
129
110
154
162
131
72
80
80
87
80
93
85
85
69
78
155
151
88
120
122
87
91
156
107
72
87
146
175
117
76
88
69
69
119
115
149
121
114
72
80
107
80
111
108
136
174
100
121
89
148
123
95
146
140
164
111
140
109
115
107
56
80
126
99
126
113
80
96
175
129
154
52
154
134
110
106
111
131
86
124
72
72
52
119
71
80
146
78
69
134
96
91
115
128
134
106
129
156
145
113
123
128
120
175
87
136
88
102
74
157
81
162
94
146
112
118
80
89
80
137
97
110
106
63
94
90
90
76
99
99
107
137
69
114
52
148
110
89
106
90
80
109
78
78
85
175
100
134
89
80
104
117
101
76
146
120
107
87
119
154
69
134
197
98
132
133
106
151
80
91
78
175
89
94
56
88
101
87
146
78
103
150
130
87
80
76
115
89
87
111
87
72
109
197
76
80
80
93
140
124
79
120
93
112
152
99
91
128
89
150
66
119
80
71
119
94
98
80
112
177
83
119
143
80
80
94
109
146
69
113
66
129
108
99
78
80
175
151
83
140
96
96
80
117
113
155
175
138
149
114
112
72
156
80
147
113
94
102
91
119
80
129
80
80
163
174
143
117
140
91
87
138
151
129
137
141
80
97
73
59
56
112
120
104
96
122
122
69
151
128
78
88
94
113
175
94
76
197
132
119
118
120
94
87
87
129
117
87
69
145
117
146
69
72
113
94
115
111
132
83
110
78
80
111
78
106
121
75
107
69
177
116
88
80
82
69
69
119
69
98
69
118
109
90
136
99
113
113
92
116
140
52
78
111
144
175
88
88
72
96
99
87
117
69
107
79
144
89
133
80
91
78
56
121
115
83
113
135
121
76
112
80
74
87
80
154
81
175
94
100
89
69
121
67
114
80
100
80
131
86
74
163
80
116
134
120
117
76
76
112
87
80
69
104
89
87
113
69
78
134
69
197
94
181
88
69
137
75
175
89
110
90
94
132
87
154
78
154
125
120
136
122
99
123
129
175
91
94
94
93
120
101
76
152
130
109
94
181
106
93
87
83
119
74
88
93
88
89
82
99
72
78
127
109
80
80
69
72
69
101
67
175
122
111
109
75
119
127
69
201
103
183
96
80
125
88
78
80
87
119
69
93
113
94
85
96
78
76
87
181
134
88
75
138
119
117
69
69
66
107
105
132
80
78
144
59
107
119
90
119
66
113
78
117
156
140
125
81
109
80
185
116
114
69
107
128
91
175
126
115
117
69
96
82
120
80
111
164
154
123
127
92
109
89
80
151
107
197
129
57
120
89
69
83
69
93
52
91
116
80
154
151
149
131
109
89
130
134
186
155
104
151
85
121
87
119
143
110
131
75
80
109
43
89
113
122
110
156
94
78
133
118
87
146
98
145
94
163
104
148
118
120
136
67
106
120
110
138
89
119
78
163
69
87
80
101
131
107
143
116
74
54
91
78
76
113
174
109
100
106
54
143
120
78
69
119
133
112
120
91
124
87
109
69
94
121
144
121
143
76
93
147
120
119
113
126
95
125
130
69
136
117
134
107
154
181
108
78
78
95
67
85
124
132
122
151
87
100
138
147
155
59
154
125
95
99
89
87
69
134
80
78
96
78
80
131
109
69
74
99
118
117
76
166
76
67
89
90
89
76
132
120
100
87
111
154
73
69
130
106
92
100
136
95
80
80
78
80
134
88
107
93
114
160
106
154
154
110
80
112
69
109
122
107
88
116
132
140
120
69
69
112
87
104
78
90
92
110
80
120
80
131
80
119
43
87
110
88
93
119
143
87
118
93
145
94
69
110
78
89
87
165
111
76
54
130
76
121
114
80
154
99
80
175
128
119
134
136
156
125
128
87
69
121
119
87
102
69
119
117
136
103
119
160
80
111
76
151
87
56
74
101
81
124
151
154
96
80
78
154
131
109
134
140
88
83
183
80
145
96
175
72
137
120
141
103
154
85
91
109
94
82
109
93
166
101
103
74
175
69
104
158
118
110
156
109
150
104
93
79
121
80
71
94
134
145
119
122
69
101
80
95
75
120
152
110
80
131
111
78
151
112
108
120
87
143
120
87
140
117
146
119
111
113
112
131
88
80
80
120
87
78
175
126
128
97
69
175
80
125
140
175
91
132
141
142
140
113
80
106
175
136
132
54
91
100
112
136
89
156
96
109
69
78
109
78
89
80
106
140
69
134
109
94
80
175
69
104
124
113
175
120
67
69
93
101
69
91
138
124
133
101
120
80
175
112
76
76
164
103
142
90
118
127
78
88
104
95
140
99
115
136
130
69
84
69
104
155
75
148
145
78
119
76
136
104
76
137
101
175
78
77
103
69
160
104
114
120
78
87
78
64
74
110
138
72
76
83
136
124
104
80
111
80
134
163
133
112
80
119
92
164
85
90
80
120
101
76
133
175
116
87
94
175
93
80
175
154
117
105
80
80
76
181
119
88
99
114
80
136
109
80
69
134
152
93
117
76
119
132
91
113
162
162
80
113
197
131
69
101
120
145
128
76
69
94
145
83
175
110
69
88
128
99
102
134
87
80
155
117
83
111
107
107
80
69
208
78
94
136
109
87
76
134
109
115
131
119
156
89
125
96
85
75
155
72
78
154
67
78
104
120
87
146
96
114
148
80
110
120
117
110
106
154
129
163
140
91
131
100
98
134
94
94
76
106
154
88
76
109
131
83
111
109
128
151
175
99
104
80
80
126
98
88
128
122
96
156
69
197
121
125
131
92
131
151
131
99
57
87
95
118
197
112
80
69
107
113
119
113
107
146
136
122
69
151
68
136
160
94
129
119
117
80
88
120
43
88
148
124
104
119
93
113
88
87
78
112
94
106
89
102
110
56
96
156
94
122
80
67
110
87
80
78
154
99
110
69
128
99
88
87
95
80
89
92
79
110
103
107
80
109
80
80
83
175
76
150
140
161
106
122
103
102
100
89
78
87
113
82
119
58
78
76
121
69
87
78
56
87
151
69
136
109
94
113
127
118
113
119
101
99
117
156
107
90
95
94
88
115
91
121
87
183
113
107
120
107
112
124
89
127
128
108
107
76
152
87
78
110
66
111
175
80
156
137
121
155
140
75
76
117
156
96
163
85
69
157
81
101
134
119
69
136
146
76
107
146
108
113
96
113
80
106
80
98
69
78
80
76
78
88
121
140
129
118
76
69
78
134
69
78
120
103
120
142
93
80
96
91
121
131
96
80
142
128
113
69
87
120
150
101
156
76
111
129
117
100
197
43
118
137
78
98
76
80
74
87
88
54
113
128
76
144
101
142
140
82
155
94
79
67
76
156
147
98
105
123
87
100
143
156
112
130
76
91
121
74
101
107
112
94
89
134
78
175
118
145
80
88
80
97
119
90
154
93
163
43
96
102
78
163
114
87
98
80
131
115
112
153
166
93
54
139
80
80
80
87
119
140
76
134
87
119
146
78
93
78
69
128
89
109
90
75
69
102
72
112
122
78
87
119
121
145
78
78
151
128
117
163
80
147
131
94
127
76
137
113
163
113
69
119
111
69
136
134
163
117
78
88
99
87
80
69
119
88
107
89
123
129
114
128
142
164
76
80
90
72
90
76
134
131
76
99
131
131
134
187
130
109
129
69
119
101
197
128
132
140
131
76
136
69
175
114
128
107
93
99
89
106
119
69
95
102
85
66
197
102
80
169
145
117
113
69
80
69
74
121
52
67
175
175
69
113
89
87
197
140
80
140
151
127
111
104
80
156
80
94
102
80
120
174
121
134
117
123
120
119
120
197
117
125
69
197
80
67
142
134
110
131
83
128
128
94
69
99
98
117
113
136
80
78
93
154
131
148
104
110
91
119
80
78
102
102
164
136
68
128
137
96
100
102
121
71
85
138
95
96
110
80
140
80
117
136
98
110
87
119
110
153
155
64
100
88
130
175
115
88
119
154
117
133
113
69
88
136
76
102
69
113
100
69
100
89
97
94
119
119
99
69
106
69
132
80
134
80
121
78
133
72
118
117
139
79
74
69
56
149
69
131
132
107
93
80
137
115
107
126
101
197
69
119
120
131
106
99
124
110
80
115
129
122
128
102
82
76
69
69
117
110
87
88
94
80
109
85
72
112
106
74
127
163
157
107
78
54
94
149
43
119
111
131
124
80
106
109
75
107
127
156
151
119
117
91
81
60
87
88
114
69
87
99
87
109
148
87
89
54
101
80
80
127
79
122
78
96
121
87
154
72
134
124
80
94
91
69
113
104
80
94
114
76
70
78
110
72
147
109
94
175
96
107
157
120
135
93
93
113
104
76
140
107
97
120
114
69
94
117
140
80
108
185
131
80
110
131
87
107
76
76
87
80
80
138
136
96
78
144
110
114
119
67
78
120
100
89
89
72
96
72
176
181
88
110
114
76
57
141
69
87
130
151
160
132
60
165
67
120
156
80
138
89
104
129
140
132
128
119
93
104
69
115
186
126
119
96
80
128
109
96
148
147
98
96
109
69
138
78
73
121
109
120
58
95
80
80
87
114
87
78
155
120
117
67
80
80
96
104
119
131
175
141
101
80
137
110
119
123
134
80
148
148
110
107
128
175
89
154
96
143
156
87
94
96
96
69
80
107
113
87
121
78
96
76
102
107
118
154
78
69
69
96
78
92
87
155
87
69
120
135
80
78
157
83
155
69
149
154
145
119
75
106
94
87
80
128
80
132
189
110
106
110
108
140
119
76
87
87
119
71
119
154
109
76
72
175
99
107
96
80
104
109
74
106
88
112
121
120
146
152
80
93
127
119
122
146
140
101
78
132
111
154
88
101
91
100
142
87
69
107
69
130
175
95
112
102
117
107
164
110
115
78
102
103
87
99
119
91
106
96
110
76
160
136
89
163
128
89
99
80
147
69
91
85
154
138
93
165
99
143
72
69
175
117
106
102
66
124
69
175
104
87
133
69
87
80
131
78
80
69
89
120
99
69
74
80
118
104
87
87
87
121
111
197
107
104
78
82
69
69
87
135
154
88
80
99
128
156
83
102
80
148
151
123
88
124
201
169
100
119
89
75
76
126
105
80
78
69
107
175
175
133
78
155
80
121
85
73
88
113
128
69
106
104
126
107
87
87
136
91
78
78
134
129
79
74
118
78
76
109
124
80
80
69
72
80
104
102
69
143
106
105
142
120
103
74
54
149
128
104
113
88
102
89
163
155
120
117
109
122
69
69
90
107
144
143
117
80
126
109
110
98
107
96
94
149
80
134
132
69
74
123
78
78
156
110
118
114
123
69
82
100
63
119
113
144
69
87
183
136
131
69
78
80
129
98
156
91
101
164
121
88
138
146
175
137
76
154
112
87
127
120
87
100
112
99
143
102
74
69
150
100
83
148
109
122
92
104
56
128
124
125
124
119
93
80
109
87
132
154
120
132
154
138
110
73
96
99
69
79
99
66
119
87
80
131
72
80
132
69
107
100
119
102
134
72
67
103
104
109
69
164
163
119
76
89
107
79
76
80
102
107
136
89
154
74
156
54
87
94
126
96
88
117
117
86
101
100
69
92
131
120
88
155
54
88
151
69
136
96
87
138
104
67
69
107
106
109
96
104
71
143
92
106
125
107
89
76
69
104
87
76
69
80
88
93
87
80
91
64
90
69
99
102
91
128
94
94
87
80
103
158
96
113
90
185
146
124
81
108
93
169
140
80
109
92
117
117
128
131
80
119
64
129
110
58
110
120
140
152
156
67
136
80
137
140
90
69
74
154
160
93
78
74
80
83
88
80
117
156
80
76
121
69
101
115
117
137
87
132
147
145
87
80
100
128
119
69
69
125
101
120
166
113
89
120
101
87
175
88
107
109
132
107
89
80
69
118
109
87
93
74
136
110
95
88
106
80
154
104
80
107
80
88
107
110
78
52
69
78
80
101
80
119
69
69
80
69
107
83
111
80
162
109
151
148
118
109
104
116
87
131
137
76
131
98
155
127
76
69
140
107
92
69
94
101
134
88
120
85
120
156
140
99
69
94
88
80
115
155
175
80
92
174
93
121
152
80
120
175
174
92
107
159
154
76
134
107
100
131
100
87
98
106
99
140
145
127
154
107
109
136
80
94
87
100
113
149
94
142
88
91
90
158
102
110
80
76
75
140
72
107
147
114
134
101
157
126
136
80
104
121
101
110
92
100
111
137
107
80
80
80
69
80
102
128
69
137
136
119
80
151
113
113
87
164
74
69
85
88
76
91
87
76
101
110
96
99
126
109
142
59
87
185
93
89
106
78
120
143
69
107
126
128
78
119
183
83
80
113
78
80
119
69
87
80
99
117
104
123
119
175
95
72
92
83
94
133
163
138
121
107
85
126
95
120
85
121
113
88
107
103
74
82
80
83
91
98
85
69
80
90
155
155
122
88
87
120
127
80
175
91
116
80
140
104
129
69
94
69
80
62
115
155
118
83
128
123
132
80
104
120
117
138
89
146
165
76
100
121
109
128
94
124
80
113
163
83
136
101
69
112
151
175
152
99
69
183
109
140
78
104
126
89
69
78
85
109
85
80
74
146
119
115
75
96
152
134
119
103
69
121
150
110
75
113
111
115
136
165
69
94
156
99
69
114
100
110
101
117
69
122
93
92
96
87
144
113
136
136
58
104
87
95
163
106
175
118
56
113
69
69
119
111
140
118
80
69
69
89
92
119
101
60
83
99
88
128
155
88
120
106
175
76
98
175
120
111
117
119
72
93
94
80
82
110
91
128
153
151
136
121
100
119
145
118
87
110
87
52
80
75
54
139
128
109
104
80
140
175
97
133
56
145
80
80
120
95
110
80
119
89
154
94
104
95
69
81
119
117
80
94
137
104
119
89
120
107
117
156
134
91
127
79
120
127
130
129
54
137
154
69
156
80
100
133
140
102
102
80
83
148
101
117
80
106
120
78
56
99
78
119
69
76
95
89
109
69
107
105
115
114
80
145
87
88
121
160
106
121
131
80
76
132
73
137
76
54
120
119
76
151
126
99
117
80
137
121
80
69
94
96
71
71
137
80
133
69
138
69
64
87
145
110
156
117
120
106
104
107
121
80
69
89
149
88
87
124
122
87
80
87
127
138
134
93
121
175
128
85
56
120
107
90
80
80
143
148
78
175
134
156
101
106
69
107
79
120
91
85
89
197
91
113
156
87
131
90
140
109
109
119
88
78
82
134
78
69
80
113
123
69
119
87
80
74
99
72
110
78
78
131
156
80
99
112
69
100
114
112
87
80
69
94
76
78
137
90
104
121
52
72
72
111
175
119
89
87
120
106
117
76
95
156
120
99
110
106
78
112
119
80
102
174
119
110
76
114
78
76
80
155
52
119
110
89
121
163
197
69
80
151
69
80
88
153
127
69
175
125
93
117
120
160
106
128
106
111
141
134
69
148
110
111
106
112
147
128
123
136
78
128
128
121
43
164
115
87
121
87
78
119
69
106
89
80
130
100
175
155
141
80
69
94
107
99
87
126
96
109
110
129
102
118
56
154
80
123
87
120
89
145
153
64
69
87
117
69
147
80
175
175
151
120
113
78
78
130
155
94
113
107
74
78
156
128
88
120
98
138
97
117
91
69
85
109
156
96
107
134
69
101
73
165
122
122
148
87
138
89
164
84
101
121
104
71
104
115
67
80
54
100
126
94
128
109
89
140
87
143
120
148
78
102
98
112
89
140
89
131
140
119
136
107
112
138
113
106
74
107
109
121
78
115
108
113
121
112
69
69
107
140
76
111
175
99
104
175
153
69
147
80
59
107
88
119
69
104
87
91
80
118
113
91
121
78
131
89
99
154
155
113
80
112
175
54
134
127
89
143
120
89
118
107
136
175
80
183
107
76
76
69
92
134
140
136
107
80
155
121
111
117
109
74
127
99
131
128
110
114
145
88
122
72
78
96
102
144
80
105
102
119
80
87
113
117
72
93
78
88
146
133
121
87
80
120
80
140
119
119
90
88
136
56
185
159
119
120
69
109
91
124
120
145
88
96
108
91
80
76
102
66
87
155
80
134
128
76
98
118
175
106
117
137
85
83
106
129
80
110
56
78
136
117
145
109
122
109
101
109
76
89
107
156
89
163
95
156
151
98
154
129
107
83
80
71
127
163
137
88
69
69
80
104
140
109
109
131
99
134
113
143
91
145
181
127
76
130
163
125
130
102
120
139
57
142
87
99
117
69
93
100
110
94
147
80
146
72
67
117
78
121
64
80
104
87
78
74
197
56
56
72
88
60
154
134
121
91
148
80
85
110
122
99
128
93
127
118
91
98
69
118
119
76
115
108
99
106
137
80
89
87
69
83
90
90
56
87
197
112
66
69
163
131
82
87
155
104
130
121
99
163
151
99
94
109
175
80
118
113
104
125
80
121
138
54
78
120
104
104
56
80
76
87
138
99
146
175
78
131
121
119
91
156
111
155
94
99
106
89
121
69
119
121
88
104
52
93
88
54
119
134
85
154
106
78
107
106
160
151
99
125
107
113
111
104
128
109
156
85
95
156
80
136
120
96
57
69
185
123
69
151
94
116
89
132
104
119
129
76
69
69
175
73
87
87
69
160
87
160
113
107
175
102
81
135
101
69
175
80
106
83
159
155
151
98
67
112
99
132
120
80
118
75
138
58
127
197
147
163
117
83
52
94
148
78
109
109
69
128
118
74
80
80
111
80
134
154
128
88
88
109
120
119
146
107
80
92
87
115
80
112
136
128
87
87
118
69
128
87
106
87
80
143
87
87
69
76
119
163
127
78
151
119
78
104
197
80
80
69
152
121
125
80
112
88
107
69
120
114
154
78
156
107
121
110
69
116
60
76
102
119
154
76
175
92
113
98
87
87
104
102
74
109
155
154
85
128
80
148
119
110
93
175
133
104
144
106
87
149
186
107
91
96
69
163
88
80
174
154
80
117
78
126
164
72
134
104
87
120
101
100
98
76
87
163
133
175
83
80
109
100
99
185
76
76
69
136
76
78
134
128
136
109
197
164
113
109
126
76
138
157
127
132
95
78
140
100
59
171
74
107
87
88
87
69
91
131
89
120
185
107
69
105
96
124
54
69
90
93
112
127
175
80
140
76
56
109
69
110
100
135
102
99
145
80
83
115
197
88
175
118
113
69
134
80
69
80
78
123
67
131
74
156
89
88
127
92
87
76
143
72
152
140
122
78
102
118
100
96
99
60
104
119
119
148
54
128
132
145
136
148
106
89
101
120
76
74
79
89
140
91
87
119
133
69
69
144
156
147
120
94
131
69
107
112
99
80
134
80
69
131
94
88
76
124
99
91
99
106
130
94
82
80
106
102
80
127
107
80
120
128
133
110
117
100
67
81
153
78
99
153
182
78
72
145
127
125
87
94
128
164
140
146
131
120
141
117
92
126
80
134
96
124
96
141
144
139
160
175
87
80
121
125
151
72
80
107
120
52
144
128
128
76
136
66
111
80
134
107
107
109
146
201
157
87
94
101
100
78
56
105
163
96
104
124
89
78
76
80
99
128
119
76
175
151
119
80
147
136
67
89
117
106
107
118
155
80
120
127
150
120
72
114
142
69
131
72
76
124
151
93
151
110
129
128
127
76
163
69
110
120
137
80
137
94
138
145
80
80
112
102
120
92
87
76
87
107
114
103
80
104
80
123
120
69
140
78
134
107
78
96
76
140
89
110
69
91
98
69
118
156
94
185
128
107
80
96
74
93
113
98
115
174
118
122
106
96
102
127
112
69
99
80
76
107
43
89
115
94
80
80
96
139
89
119
102
100
175
54
145
116
142
89
72
99
80
115
80
78
78
107
132
59
76
133
119
140
132
155
112
99
80
91
101
155
181
119
102
127
118
122
119
152
100
107
107
63
88
106
80
175
114
69
139
69
120
98
175
87
117
115
87
128
96
143
69
69
102
130
71
136
110
69
72
115
104
134
80
94
132
88
133
154
107
87
69
142
144
119
72
69
127
163
93
56
78
164
107
112
120
119
74
103
155
59
79
80
80
103
118
146
113
80
69
117
52
76
56
69
197
87
131
87
101
106
99
96
78
131
76
85
69
76
76
136
126
109
87
87
106
103
133
107
112
148
150
106
119
107
106
156
106
118
69
110
87
78
112
79
96
69
117
78
76
83
91
74
88
121
76
87
88
69
87
87
117
106
80
120
69
80
93
88
88
134
128
160
96
117
132
119
88
80
72
72
80
156
67
81
123
118
129
156
113
107
136
104
78
119
164
88
112
95
131
137
60
92
106
107
67
123
94
110
181
87
80
69
80
122
134
96
127
122
60
137
132
152
72
87
110
102
99
80
111
52
113
112
115
79
69
114
175
102
150
164
136
87
154
43
120
150
87
54
106
80
88
80
104
52
94
96
119
85
99
120
59
109
128
139
125
106
120
197
138
133
138
121
95
155
69
134
87
75
87
115
123
112
104
106
128
128
114
80
184
76
103
80
99
88
175
78
156
137
104
120
109
85
111
78
72
136
133
76
108
112
120
89
69
144
88
115
76
80
117
113
155
96
87
69
175
102
112
87
120
91
99
78
117
119
76
175
118
96
155
153
162
87
134
110
76
108
69
104
72
89
156
154
94
100
69
69
185
165
116
80
72
113
80
140
128
69
119
71
133
69
88
136
78
119
87
111
112
144
72
146
145
67
76
154
94
94
137
87
80
79
74
120
69
119
76
109
134
71
126
154
94
134
78
121
175
120
88
129
76
117
111
87
98
69
80
128
80
80
131
69
128
96
87
80
183
79
69
107
83
129
73
144
69
98
102
118
175
106
120
101
94
136
99
205
80
120
80
131
99
123
120
145
144
111
140
80
120
137
146
100
174
101
110
107
89
80
110
126
117
102
106
66
89
96
69
121
123
154
80
120
130
72
151
149
104
117
160
120
118
114
76
76
87
128
93
149
186
88
115
120
147
105
76
132
80
87
113
121
68
139
114
69
72
78
69
78
83
80
78
107
131
88
101
80
112
120
104
116
83
95
130
119
76
99
80
54
90
122
107
99
156
110
80
136
104
81
100
80
120
126
72
99
122
80
76
125
159
119
91
99
118
112
78
72
94
80
99
101
153
114
121
106
121
107
117
87
154
96
99
140
124
142
119
147
106
156
124
151
78
163
74
69
96
83
87
114
87
80
115
181
76
109
99
91
154
96
175
120
119
80
120
94
154
136
89
156
132
122
154
64
111
96
128
107
121
69
100
143
83
151
154
80
76
95
107
76
107
80
69
87
110
119
111
106
78
78
154
122
110
112
104
88
129
100
72
112
121
112
119
100
126
122
113
134
174
93
75
134
76
129
87
127
103
120
151
117
161
77
69
76
69
175
107
89
145
164
99
111
118
80
95
110
115
72
93
76
112
80
175
104
107
113
91
87
80
102
151
80
89
90
119
103
107
94
78
85
175
80
129
83
76
175
80
89
112
78
69
119
78
111
79
113
140
117
128
87
102
99
87
93
151
99
128
118
146
80
78
149
119
80
94
197
79
111
56
66
139
52
120
56
52
69
80
199
104
80
76
99
76
136
74
88
88
95
76
98
122
79
88
91
80
110
89
101
127
90
166
89
128
78
119
73
110
147
137
113
89
87
154
76
78
107
94
76
131
162
80
95
122
121
113
110
69
107
69
76
78
87
72
117
93
146
76
93
163
94
78
154
106
92
87
99
118
166
140
88
56
121
154
157
52
79
90
101
101
107
78
78
80
67
131
121
94
146
86
127
78
154
132
94
94
129
107
137
78
80
136
151
163
201
107
154
118
93
92
93
117
89
87
102
119
143
80
118
131
162
69
197
128
114
75
90
57
121
76
80
108
134
106
100
106
82
131
137
154
114
80
54
154
122
102
99
74
136
197
89
69
69
151
88
132
80
117
118
85
91
76
93
69
96
85
107
96
80
104
146
127
119
80
80
69
76
89
91
87
107
89
109
80
80
102
99
120
78
69
175
117
106
119
149
140
94
119
120
86
143
109
87
115
122
89
69
136
145
56
118
80
137
87
69
80
126
155
72
80
69
113
88
72
140
131
72
131
52
175
106
128
91
107
131
143
164
76
107
113
159
67
80
93
125
134
146
134
69
80
160
91
69
89
101
121
80
143
115
88
74
175
113
123
69
80
82
106
85
175
134
162
80
69
96
87
128
102
69
76
78
142
128
99
175
143
163
56
87
94
94
127
100
89
88
111
54
105
102
115
78
80
76
162
80
175
106
136
131
87
144
169
131
107
111
119
115
149
102
87
64
103
112
78
128
151
94
76
54
110
126
114
80
92
129
93
139
134
75
175
88
80
99
137
102
110
128
130
87
128
76
99
96
197
111
136
102
127
107
98
109
119
123
72
89
175
141
88
88
99
199
103
138
154
154
127
108
80
175
78
100
113
94
128
69
119
87
101
110
119
119
124
72
163
99
117
83
76
69
72
69
98
175
115
178
87
94
80
136
114
140
127
69
80
134
124
136
78
76
118
69
76
91
127
119
145
102
80
89
87
134
89
119
120
127
175
99
145
109
113
146
74
107
74
78
96
142
110
134
87
76
76
87
91
128
117
128
87
128
80
138
101
80
114
121
118
120
88
125
80
101
77
80
77
89
175
128
74
80
76
85
106
140
107
89
107
69
101
80
88
87
112
123
110
69
104
156
121
76
87
104
104
127
142
67
106
99
143
93
136
109
87
80
76
88
119
94
99
94
134
120
143
156
119
92
103
69
147
69
78
154
107
87
69
114
156
156
127
87
123
87
80
78
119
96
146
146
131
128
111
154
116
93
104
112
54
92
117
99
108
102
74
128
121
197
78
92
113
197
78
128
122
80
85
69
78
99
101
81
115
123
101
101
112
87
145
136
99
93
106
160
69
91
69
80
155
105
94
157
90
95
80
116
141
151
94
113
156
119
115
169
91
120
119
102
101
80
133
107
69
129
148
134
72
142
54
197
80
134
104
89
155
120
109
78
128
136
147
128
109
69
127
87
130
117
87
119
80
112
69
104
136
76
99
73
154
92
87
100
69
95
94
80
76
134
96
175
131
96
69
106
125
100
131
148
131
76
67
117
93
115
107
93
149
69
76
80
78
96
143
76
96
88
80
52
110
131
110
80
128
87
128
110
69
120
120
110
69
175
145
112
149
88
155
101
106
69
143
158
104
89
112
155
78
80
79
201
79
80
120
123
175
88
144
69
138
78
119
109
87
78
76
43
133
104
103
174
136
119
116
69
100
90
76
78
78
137
128
119
109
140
104
89
96
52
89
96
64
78
74
113
107
69
131
197
156
137
154
84
106
128
87
99
82
151
96
106
103
94
80
96
115
68
112
106
99
112
119
124
147
71
136
156
80
87
120
89
107
120
88
135
104
102
89
174
175
89
111
72
132
87
118
151
151
88
110
104
73
58
78
76
120
115
89
103
100
107
114
106
140
80
99
134
94
113
76
117
175
71
154
134
69
109
122
100
112
80
94
107
120
104
154
85
89
89
93
89
101
54
89
80
100
91
76
107
109
183
109
93
76
80
80
120
90
151
88
54
142
148
99
76
107
111
76
87
78
99
69
164
107
175
197
80
76
137
131
146
120
136
157
80
87
93
110
89
115
140
52
132
81
116
69
175
114
95
87
109
87
122
136
117
80
136
80
128
69
100
100
119
197
107
88
78
155
78
80
134
94
131
90
119
103
71
69
78
107
87
119
140
102
129
66
72
109
107
99
93
76
69
119
52
128
100
69
80
197
128
80
90
102
128
141
78
78
122
80
99
112
108
110
92
80
89
118
134
122
67
175
83
136
119
119
112
69
129
80
96
80
118
52
171
89
141
124
133
134
89
133
154
123
121
80
88
99
80
80
89
69
71
112
129
69
80
143
151
117
107
134
100
78
119
104
156
69
88
85
112
69
76
99
102
69
88
101
185
99
76
74
99
107
87
197
119
109
197
80
137
154
146
140
112
154
118
76
93
60
175
87
104
148
107
131
87
106
95
96
163
80
134
69
69
114
96
78
69
69
80
78
80
189
94
117
120
112
91
90
52
130
89
73
87
113
102
131
154
155
87
120
119
101
128
127
95
69
87
145
74
132
155
119
163
100
88
99
78
87
69
94
96
118
80
93
185
154
72
91
96
74
163
106
151
117
145
113
132
133
118
78
91
117
109
164
117
102
116
164
76
120
119
76
123
87
93
56
156
88
121
143
140
96
89
133
91
155
127
68
114
146
96
75
69
111
118
76
87
99
87
174
100
134
92
80
113
114
87
107
88
88
123
88
116
91
129
120
131
80
136
72
121
89
111
121
107
75
175
87
110
104
87
52
69
80
76
87
107
106
94
151
107
107
69
87
110
69
110
110
154
89
87
80
112
140
67
119
80
120
114
118
74
69
120
76
160
175
76
120
109
105
127
101
72
105
132
129
78
103
137
88
156
175
80
131
104
136
87
119
175
129
128
69
87
115
157
100
119
94
95
83
89
80
76
99
80
89
94
80
69
80
88
113
114
169
87
94
102
80
143
154
120
117
119
99
88
147
80
88
96
80
131
76
116
69
123
148
140
119
131
80
59
151
120
74
91
157
122
119
101
101
197
91
69
164
121
87
101
114
69
96
75
89
90
119
95
109
80
100
76
117
78
94
100
104
140
131
110
112
89
104
88
122
115
93
99
80
175
104
143
80
80
80
70
175
124
89
144
98
83
120
156
134
80
88
75
133
89
128
89
76
158
113
104
88
111
124
155
72
175
134
101
120
103
72
69
112
185
137
69
136
144
69
154
89
134
87
97
76
99
109
122
118
118
123
151
75
76
150
89
88
129
106
133
107
73
109
109
69
69
118
90
73
75
78
80
80
132
78
156
131
104
175
80
80
104
67
80
156
128
76
164
142
117
99
80
104
122
137
78
132
54
118
145
78
163
127
100
175
80
94
78
123
101
131
128
119
76
175
113
115
93
128
76
104
71
71
107
106
127
155
143
113
76
93
72
106
140
107
76
69
71
94
89
127
76
113
96
197
88
175
114
104
78
107
120
120
76
131
63
128
69
126
128
169
96
120
80
119
155
101
109
87
154
156
78
112
80
137
144
78
80
96
114
63
96
113
82
109
128
128
88
91
111
80
56
109
95
102
126
153
87
132
118
117
140
80
87
94
119
74
69
69
112
80
114
156
94
67
120
54
80
80
88
69
118
107
89
128
120
130
136
128
110
80
134
52
76
78
104
175
93
92
106
118
93
71
120
71
113
119
88
80
175
100
94
85
119
131
104
120
83
87
76
119
94
157
115
79
113
127
78
133
126
76
99
101
128
80
109
134
105
153
76
162
161
83
88
79
80
163
175
127
69
107
114
92
89
101
63
143
90
107
140
76
69
164
125
142
109
99
120
80
80
119
109
144
87
83
119
69
89
43
113
117
91
81
156
175
130
114
104
69
115
67
175
69
118
131
160
143
69
131
110
136
76
88
69
140
119
99
160
124
87
88
119
123
80
119
201
69
107
132
130
128
134
88
114
99
93
164
120
175
112
74
74
96
103
153
121
104
126
123
67
72
102
109
78
119
130
116
129
106
109
156
140
197
199
84
87
89
91
134
104
87
140
122
187
93
72
112
126
83
109
76
80
129
143
115
109
80
69
136
102
99
80
54
175
109
93
119
118
52
89
76
119
76
106
119
94
155
90
76
133
69
113
109
90
69
85
94
164
80
109
127
112
88
110
120
111
69
80
69
84
118
78
87
104
120
88
119
69
76
121
127
134
119
143
132
80
54
156
94
91
174
156
87
156
87
78
110
80
76
66
60
90
80
89
132
181
80
74
120
110
69
89
104
80
109
134
122
80
80
69
110
127
98
79
94
136
78
175
175
106
107
87
120
110
123
108
68
76
119
89
80
154
175
145
99
96
107
132
87
174
154
134
121
69
128
117
118
88
74
69
110
78
76
156
87
123
174
119
109
152
80
96
92
155
80
89
136
89
88
80
119
104
113
119
106
99
109
66
110
111
103
100
89
104
97
89
130
102
133
138
120
88
134
131
175
76
76
123
78
69
120
151
72
100
129
107
71
113
72
136
76
100
107
80
74
109
80
154
87
118
75
175
151
87
69
102
126
80
107
128
145
78
89
80
115
91
78
151
138
102
69
129
166
94
94
112
120
78
104
117
132
99
106
127
83
69
74
115
109
127
69
89
78
72
98
155
114
118
52
119
145
106
136
99
134
88
91
88
102
66
75
128
96
122
164
109
93
130
157
69
119
116
144
176
137
119
138
131
132
164
107
80
118
127
69
74
99
87
71
89
139
142
88
79
99
113
154
78
78
82
87
136
72
100
111
91
80
80
101
87
76
104
155
127
113
87
158
110
141
89
104
145
80
78
63
103
115
69
153
122
115
114
66
175
90
155
103
163
140
109
121
110
128
119
88
102
129
156
87
56
77
121
90
99
154
88
103
175
130
164
134
102
113
119
104
119
80
104
107
69
120
131
76
119
104
120
107
102
128
111
106
66
165
87
69
69
80
93
80
82
109
110
119
117
69
155
83
138
119
109
96
76
69
80
83
100
96
92
100
97
175
117
141
129
80
113
89
113
88
120
103
120
174
80
72
119
74
128
106
94
69
120
58
87
148
120
131
136
69
80
57
91
108
98
78
136
136
80
89
89
69
87
120
59
101
118
113
119
131
72
88
78
162
78
69
85
153
175
113
80
71
80
93
122
69
128
87
72
69
119
88
80
52
78
143
114
89
80
146
117
87
80
151
115
121
100
125
80
143
78
91
107
130
85
107
109
96
111
134
86
69
80
104
69
80
138
154
98
110
109
74
132
145
115
87
60
111
118
175
143
128
155
89
94
114
197
87
87
93
99
99
109
156
155
87
87
89
67
69
128
130
154
112
151
80
131
107
175
95
87
99
109
83
69
146
99
95
79
100
119
94
109
54
107
120
52
154
115
128
98
197
69
69
99
154
136
115
107
152
56
114
143
60
88
197
89
113
93
80
74
76
155
74
156
155
89
80
102
123
104
100
151
56
90
147
119
99
175
91
80
122
109
125
151
87
99
118
154
155
106
52
106
128
91
89
80
91
95
112
111
72
119
67
100
120
78
80
109
79
120
175
76
128
175
174
125
119
98
92
80
93
69
78
95
43
76
80
76
110
129
43
99
88
127
119
88
109
87
168
104
128
77
104
80
102
56
89
104
88
106
89
125
87
120
118
112
69
165
131
144
87
80
80
87
152
128
140
80
144
165
131
123
194
89
96
115
87
131
78
119
129
121
52
108
152
69
113
99
91
100
89
76
91
87
80
119
72
69
120
80
79
76
87
145
72
151
96
56
93
87
80
87
164
80
148
116
122
100
117
156
87
107
120
80
69
151
93
80
69
132
154
104
118
103
114
102
129
87
88
119
119
120
104
133
93
118
115
98
119
117
87
113
142
131
88
71
117
137
99
87
93
120
107
145
93
159
69
149
126
69
128
163
107
87
128
126
134
107
155
83
140
89
117
94
163
97
166
93
94
103
52
72
107
69
129
128
80
52
154
63
69
80
130
80
75
69
155
113
76
157
124
118
152
99
201
107
103
121
89
120
99
80
163
94
134
94
80
115
95
128
100
146
94
80
107
127
69
83
117
104
102
137
143
132
144
144
59
110
104
106
99
185
149
117
112
78
115
86
125
96
87
109
93
201
76
78
80
128
96
100
124
112
76
120
128
175
120
157
69
128
78
80
110
104
175
110
144
69
76
54
74
89
80
80
103
175
69
69
142
128
87
80
127
69
107
119
140
104
80
78
128
110
104
123
154
134
175
156
72
80
75
80
112
134
122
78
175
59
96
69
76
109
88
80
120
155
95
121
114
76
98
97
76
77
74
122
119
197
87
80
121
197
148
80
133
101
89
137
69
125
148
87
80
175
115
96
136
69
80
121
72
104
69
75
113
117
88
142
87
104
94
63
88
104
69
110
74
72
134
156
106
76
120
110
154
132
111
80
87
76
78
78
113
129
78
167
80
111
139
52
154
69
128
104
106
94
155
94
69
124
122
43
154
76
72
80
89
149
94
175
80
174
114
78
85
107
197
99
76
166
120
80
117
128
110
140
80
120
76
76
197
91
95
88
117
173
175
119
96
102
102
113
69
76
120
140
80
120
122
54
88
95
78
78
78
87
88
98
87
107
93
107
93
87
127
128
78
99
78
76
137
150
72
134
87
80
103
80
69
94
123
118
107
69
113
87
137
89
78
197
142
78
60
183
100
145
89
127
76
87
80
107
69
151
94
107
128
52
80
100
197
116
67
107
101
69
99
132
127
155
88
69
94
87
83
109
113
95
107
119
109
148
93
90
80
101
69
88
131
117
69
153
78
132
183
152
106
144
80
83
80
127
151
80
120
87
163
101
75
107
157
89
106
85
129
137
132
123
106
127
101
80
110
127
66
80
121
114
56
67
96
146
136
98
113
111
143
67
104
119
93
111
76
92
140
114
76
87
114
144
119
107
100
155
107
78
114
99
89
93
162
94
107
99
78
119
58
105
117
88
126
104
93
76
146
185
80
80
43
185
107
90
104
78
54
54
100
120
91
88
69
94
122
101
156
149
120
119
115
154
138
69
111
175
114
146
130
119
142
80
94
69
80
137
112
104
106
78
125
143
76
69
112
107
110
93
107
131
69
119
59
101
80
103
94
59
126
128
208
109
112
118
66
109
134
146
149
58
110
54
131
88
101
98
112
175
76
102
120
134
80
110
87
140
112
128
102
94
87
99
123
199
134
110
80
87
106
197
87
109
131
164
143
80
99
79
98
72
115
134
89
134
91
121
107
80
120
80
99
109
146
122
113
112
111
106
78
88
187
96
69
134
89
69
123
78
78
120
137
123
157
163
87
156
127
71
99
94
110
68
80
121
100
89
87
80
87
69
175
106
54
120
118
158
89
110
101
78
127
155
72
154
80
56
147
72
140
80
80
102
155
138
80
80
142
80
107
175
140
89
90
111
69
120
109
60
69
156
154
72
67
167
119
127
208
105
128
94
145
110
78
79
80
76
76
87
80
175
119
76
106
74
140
89
123
99
78
100
129
80
78
69
69
87
89
80
94
117
76
128
96
79
201
156
91
100
126
113
89
174
131
175
95
107
111
104
112
115
80
94
115
119
82
80
155
115
69
80
80
71
87
80
80
99
87
131
106
112
120
148
122
92
120
69
126
118
106
89
107
87
85
107
113
80
80
151
56
94
69
78
80
78
109
80
80
131
156
117
143
107
155
157
175
96
140
74
95
115
92
109
80
88
88
197
119
130
76
87
106
93
99
107
123
106
69
165
94
76
93
156
102
87
154
184
104
117
78
133
87
94
128
85
175
106
154
72
102
76
100
88
80
146
117
120
113
104
87
149
140
78
91
69
69
79
112
104
121
155
146
154
155
109
100
89
94
87
128
123
87
120
88
108
95
154
146
201
80
69
155
146
146
140
78
174
74
134
146
71
87
119
131
130
119
113
93
91
78
155
87
87
131
89
71
183
100
113
104
80
120
98
88
154
87
108
69
152
87
69
118
96
69
78
129
67
80
78
76
100
80
104
119
78
78
86
88
106
156
175
175
102
132
87
131
119
117
80
80
141
94
119
93
127
91
154
171
82
174
83
96
93
76
119
120
164
94
119
85
120
109
164
126
88
113
125
99
112
87
88
69
89
120
117
119
69
106
69
101
131
91
109
69
136
137
80
76
69
87
69
117
88
80
69
131
104
57
78
134
87
119
91
75
98
101
89
148
175
131
131
133
80
136
131
74
80
181
146
146
128
88
127
72
130
99
43
69
69
76
126
101
78
78
104
80
93
89
114
132
80
104
80
100
99
126
69
69
162
94
110
145
120
109
120
69
52
161
143
112
87
119
107
75
96
117
175
101
80
111
121
69
109
154
140
156
119
80
109
100
121
69
78
121
87
117
107
156
112
76
113
100
85
98
106
80
80
119
128
147
141
126
116
175
96
99
185
110
109
72
113
140
80
76
80
154
119
76
123
80
80
69
88
87
98
145
104
80
144
80
112
80
126
97
101
110
87
80
151
80
75
73
197
128
106
110
76
119
154
76
104
80
175
87
100
88
123
80
123
197
121
155
89
156
72
96
87
109
175
166
117
78
155
140
151
80
87
89
69
85
76
127
128
78
135
89
103
107
89
113
147
76
110
76
113
107
112
128
104
131
118
101
119
69
87
97
80
154
94
119
107
88
108
122
78
87
56
75
87
81
126
116
134
88
91
109
76
104
94
137
69
107
116
80
108
121
120
80
79
80
96
105
80
110
80
162
117
96
106
52
75
89
87
107
101
80
90
80
117
107
87
69
118
80
118
128
106
151
182
91
156
87
117
106
99
155
101
148
80
88
154
131
72
87
89
130
112
107
183
118
87
148
123
103
163
88
99
127
96
94
142
124
117
112
88
136
89
79
133
78
80
69
87
69
134
80
120
117
85
120
96
113
69
133
96
117
106
100
89
131
78
106
69
110
119
96
106
128
80
123
80
121
127
112
117
104
99
94
128
72
94
78
109
128
69
78
119
121
69
76
56
115
94
113
91
115
80
83
209
69
91
78
75
109
139
82
128
78
52
111
114
69
56
80
164
119
125
99
107
80
90
83
110
147
155
98
128
80
94
175
113
104
94
134
98
124
80
72
128
117
69
54
137
123
102
69
107
69
93
119
128
104
76
69
76
140
138
83
52
140
102
110
94
119
102
121
124
107
121
78
128
73
145
109
104
99
88
91
107
132
75
129
87
69
119
201
148
137
54
54
109
140
119
104
95
92
150
75
89
107
136
112
74
106
145
141
104
74
136
87
80
109
175
134
111
110
119
80
74
69
75
87
89
126
105
88
99
156
115
88
76
155
119
94
114
109
201
128
78
89
107
139
175
76
127
112
109
69
104
109
119
131
145
120
108
119
87
120
93
94
148
148
136
69
129
116
120
94
187
76
120
103
94
197
107
121
95
80
102
90
56
76
112
89
109
85
88
111
121
119
43
88
110
85
99
69
76
76
76
151
80
117
109
103
94
134
69
96
95
175
69
104
159
183
80
134
115
104
102
73
119
100
82
130
69
100
87
76
80
87
131
117
78
78
104
152
69
69
95
136
120
104
107
132
78
116
96
79
119
122
156
69
107
147
113
87
66
138
140
138
91
112
122
76
134
111
102
94
93
123
175
104
80
89
78
125
94
93
123
85
185
69
134
115
80
83
80
115
87
107
80
78
159
69
110
120
119
80
115
118
114
164
99
130
66
131
89
88
132
120
69
100
134
80
131
114
88
106
106
107
69
121
87
131
119
103
107
132
106
154
99
69
74
119
91
147
125
140
96
123
113
140
144
169
127
89
85
175
137
143
94
197
66
127
175
175
103
175
78
120
95
59
69
122
94
128
72
80
94
137
112
89
89
137
80
133
101
56
140
94
123
140
78
69
99
123
76
175
107
162
76
93
87
114
80
72
128
89
78
111
87
118
80
101
52
133
154
80
140
90
148
103
197
145
127
107
78
92
89
120
80
94
157
175
80
94
133
130
88
80
137
154
69
87
101
119
145
83
201
154
119
142
111
118
91
101
80
86
79
101
112
99
146
78
88
127
93
88
129
127
109
69
121
87
79
143
126
128
121
128
80
128
128
96
105
154
104
76
87
82
93
69
69
147
104
91
140
127
131
69
137
93
72
145
100
96
123
119
136
78
116
140
175
149
124
117
69
112
91
88
67
120
135
107
169
80
201
75
104
164
72
69
88
83
143
107
78
78
79
154
133
80
67
113
69
115
123
175
115
69
100
89
106
89
69
69
109
137
69
116
127
80
87
136
76
115
134
72
108
109
112
79
115
119
136
78
66
128
72
78
101
119
120
76
99
115
144
143
112
156
74
76
136
140
126
140
69
134
80
69
117
94
91
121
69
119
144
111
69
99
107
117
102
92
69
119
95
109
140
69
59
114
87
76
69
120
185
99
76
142
100
69
102
69
93
146
103
127
175
138
107
99
69
123
125
89
80
175
106
152
122
119
76
69
111
87
89
103
122
106
108
72
197
113
104
67
99
99
119
98
94
87
116
78
76
69
102
121
154
132
104
145
93
134
95
107
81
77
109
87
74
52
111
175
106
117
112
131
150
131
120
100
103
79
93
82
105
137
166
69
123
76
138
89
131
69
122
80
175
107
91
84
144
96
80
80
138
69
83
71
136
110
80
101
121
93
112
102
69
66
109
76
102
88
197
104
155
69
137
76
156
92
146
115
142
155
76
96
122
120
52
154
108
69
154
80
108
63
99
76
109
93
115
104
112
110
83
156
132
109
80
80
136
110
104
69
107
150
87
85
138
76
108
134
91
87
99
119
89
120
87
104
98
81
87
120
95
199
137
175
94
88
98
76
71
71
99
148
169
96
133
132
109
99
97
131
123
80
93
172
107
80
102
118
134
78
119
100
96
80
78
80
175
93
117
150
80
125
136
99
72
87
80
69
88
76
149
134
89
154
74
80
183
111
54
154
136
118
64
119
155
79
93
128
131
156
80
80
112
119
156
113
128
94
74
109
148
76
76
123
136
101
132
128
88
116
101
106
128
76
69
103
91
118
110
52
132
92
110
94
80
140
110
128
131
107
76
56
145
109
69
146
94
164
117
165
91
83
104
103
155
78
87
80
101
69
98
115
155
111
90
120
118
110
76
111
69
99
74
153
107
156
120
143
110
113
134
88
91
155
83
103
52
115
84
74
96
106
69
128
96
140
101
78
74
140
163
91
131
118
90
131
96
156
80
93
101
119
58
154
124
128
121
148
117
60
87
100
121
122
52
69
114
120
80
114
117
88
86
151
103
87
88
76
88
154
80
114
131
155
96
94
112
87
76
98
107
151
87
112
106
131
145
125
82
69
113
140
121
117
52
124
129
117
131
175
80
88
87
118
80
72
69
78
155
154
78
102
69
104
100
76
121
121
107
118
114
134
119
80
116
78
69
66
82
78
69
99
175
107
119
80
114
136
99
122
69
149
134
54
76
93
91
106
121
87
96
109
121
80
117
112
71
128
60
93
142
134
88
133
125
88
118
88
130
89
131
175
110
209
116
156
78
80
69
69
95
74
85
88
69
168
131
208
129
69
78
93
89
156
136
87
104
104
99
146
128
123
74
72
106
131
106
138
100
120
120
69
169
99
136
69
109
120
87
106
98
114
82
101
85
119
89
127
119
118
175
96
139
92
100
107
121
104
99
107
64
91
99
87
107
127
80
119
87
78
127
140
98
43
100
87
150
154
63
158
76
119
82
94
96
87
92
134
123
99
151
136
120
145
181
131
197
74
69
72
146
83
64
156
99
88
107
96
91
113
74
99
102
137
78
121
145
121
132
117
87
181
106
87
136
93
104
181
119
123
117
120
56
115
146
99
72
101
69
110
54
69
89
78
112
156
150
156
87
111
85
87
118
96
120
89
76
104
142
80
71
151
89
120
87
91
128
76
106
69
80
106
120
136
69
128
113
102
69
88
140
80
80
106
43
107
117
69
94
107
151
69
98
76
114
121
151
175
133
78
119
80
72
131
117
88
144
95
109
152
69
89
120
107
59
99
80
54
107
120
119
80
78
87
115
69
137
106
115
128
110
92
108
78
80
88
117
69
103
105
118
102
140
107
83
80
76
128
99
113
72
123
88
110
174
108
155
99
78
91
82
87
74
94
121
87
96
87
88
110
140
83
118
148
95
156
78
106
72
94
156
69
120
80
87
151
122
133
72
72
80
91
76
120
91
87
78
94
160
105
117
93
78
96
131
113
181
113
107
139
89
124
115
69
82
110
107
161
114
120
60
80
110
119
107
89
78
96
115
164
74
109
166
94
121
99
121
93
107
128
94
76
69
99
88
110
80
76
69
159
125
175
64
76
111
100
69
99
89
174
72
85
119
117
80
111
94
85
56
74
175
99
99
69
138
175
69
80
99
72
80
88
69
80
111
80
80
129
87
88
112
67
118
80
131
144
143
142
95
69
80
147
96
140
88
175
69
140
75
90
106
121
134
155
131
82
127
80
122
76
87
96
117
162
146
102
145
171
119
175
124
144
76
99
85
94
135
116
136
72
148
123
197
109
82
112
127
128
160
136
80
101
96
113
69
127
107
109
110
156
93
69
162
94
120
119
131
104
131
80
101
110
119
89
136
117
78
124
108
123
78
120
80
102
154
175
76
56
121
125
110
123
127
83
151
110
94
80
124
129
148
131
156
76
175
102
98
64
74
136
79
80
94
76
103
106
115
98
107
104
80
134
100
72
149
75
88
119
103
143
140
87
163
101
138
78
80
88
80
69
87
114
80
175
78
78
74
87
138
92
80
69
127
197
87
124
78
89
121
107
107
144
106
69
78
120
80
111
91
143
142
107
120
80
96
114
113
155
131
94
154
121
85
69
175
128
120
115
136
112
85
78
146
114
106
89
52
174
143
79
76
72
121
154
175
69
160
107
52
109
87
123
101
131
174
111
131
197
111
123
104
130
91
154
78
110
78
103
88
117
136
122
79
95
69
101
137
201
92
176
107
174
119
113
155
104
69
155
93
145
111
98
78
136
133
69
120
71
80
119
93
83
87
59
69
118
99
69
154
74
66
69
136
87
121
87
146
130
84
197
119
134
78
83
106
80
106
128
76
199
80
172
140
121
69
76
120
80
94
111
87
115
78
124
122
100
76
126
147
102
87
119
80
128
58
138
131
92
88
87
102
89
139
69
155
174
107
103
78
87
78
121
113
82
74
89
89
95
78
102
78
96
106
128
164
80
143
101
128
123
154
69
69
80
164
151
126
76
87
74
155
69
80
69
139
80
113
80
124
72
154
129
155
104
87
80
71
106
104
69
88
76
128
117
126
139
136
128
115
107
69
109
74
80
87
98
76
87
87
76
110
176
96
104
88
131
94
96
99
87
119
69
85
127
76
107
138
88
104
69
119
69
73
90
127
85
69
131
68
110
104
98
76
124
110
102
80
69
120
137
80
90
120
69
114
89
110
134
118
76
109
131
148
80
96
162
123
175
85
104
67
99
129
156
89
199
52
117
96
119
151
109
151
69
78
112
175
111
119
80
79
149
149
121
128
112
111
130
96
151
138
106
146
102
123
102
103
69
90
101
69
87
110
181
126
175
94
110
146
79
118
87
110
122
99
99
87
88
119
69
140
89
143
175
155
72
113
69
88
78
76
78
110
128
76
119
118
106
95
99
120
154
88
100
120
89
131
102
128
76
69
154
119
76
151
88
118
112
52
80
136
122
175
140
98
110
69
69
131
100
80
69
87
78
88
89
134
94
137
145
110
52
156
80
120
95
88
69
60
106
94
119
122
69
132
113
205
69
88
151
154
67
120
134
209
80
106
140
117
76
89
111
151
78
89
96
58
129
103
106
150
80
155
80
136
76
69
135
126
156
76
149
80
97
100
99
112
134
156
69
175
96
128
87
83
69
92
76
85
119
154
69
80
100
132
152
76
96
124
87
76
151
169
175
99
106
99
104
90
136
110
88
120
87
67
134
109
101
109
128
69
104
109
89
69
121
113
119
125
93
92
80
151
136
126
123
175
95
121
175
80
78
110
80
89
117
109
103
82
96
109
87
112
94
148
96
69
91
127
69
123
106
93
87
76
104
104
80
146
136
80
73
129
104
58
72
91
107
69
132
100
128
146
76
113
104
136
99
148
89
155
127
83
54
89
80
175
119
128
102
87
89
69
71
112
89
87
87
127
72
134
119
142
69
109
107
107
93
58
199
96
89
151
197
69
88
69
126
113
111
89
76
80
78
175
110
72
110
163
154
117
102
109
106
105
91
125
79
119
134
163
76
154
80
131
90
107
69
69
89
100
93
69
89
118
209
69
78
94
80
80
80
119
151
112
122
129
135
104
107
151
145
69
128
88
88
78
85
85
137
69
80
142
69
138
197
67
145
151
69
128
104
138
80
88
89
80
90
110
104
127
85
107
107
116
107
160
76
89
130
52
76
109
130
155
94
109
78
80
69
152
134
52
85
140
154
89
99
175
107
112
103
104
88
147
114
88
107
151
100
104
69
114
155
119
107
119
118
140
76
78
119
147
122
99
87
54
80
76
76
89
147
80
82
86
172
102
147
107
87
80
175
120
154
109
96
109
175
87
138
69
101
86
76
154
103
133
106
96
112
99
117
101
103
103
80
80
54
78
134
80
106
175
185
83
130
120
117
125
127
96
96
151
147
83
160
56
99
109
116
107
76
106
54
103
87
175
132
69
78
73
109
154
80
144
124
121
128
123
106
90
76
94
131
106
78
107
94
96
76
102
137
154
127
72
69
82
69
164
112
102
136
87
166
78
149
127
101
76
99
113
94
69
131
95
121
197
76
87
56
136
78
56
78
99
163
110
92
155
69
89
120
175
71
93
94
87
120
132
72
83
78
80
99
68
128
69
175
151
142
87
160
80
80
155
147
110
199
91
86
80
101
80
79
113
73
64
80
76
80
115
127
103
80
99
107
120
95
107
156
134
69
154
174
91
93
88
134
128
109
163
138
80
82
89
58
80
175
109
72
98
115
104
89
134
80
87
133
114
73
95
110
106
99
109
112
106
148
112
119
119
72
69
130
80
91
146
117
126
102
120
96
112
113
101
146
89
107
140
80
74
155
101
74
175
54
140
128
80
87
117
146
80
145
71
175
69
94
137
87
95
128
85
164
91
127
87
112
117
80
89
80
131
120
113
174
132
82
110
72
102
95
154
134
99
151
130
52
78
94
69
112
69
87
87
112
126
117
67
69
136
101
143
87
90
140
146
104
113
109
83
76
123
113
99
124
104
109
145
76
120
131
87
116
134
109
127
90
87
154
160
87
139
98
69
89
101
132
104
63
113
164
175
87
136
145
81
115
136
76
127
69
85
120
115
175
117
87
54
119
109
114
80
109
56
120
72
78
104
121
69
122
89
131
80
110
142
72
76
163
69
91
127
132
154
113
132
69
85
129
80
80
91
80
112
94
67
140
87
69
109
104
69
91
64
96
126
54
69
151
113
78
113
106
76
109
78
147
91
95
160
128
119
109
69
120
76
140
134
110
43
119
78
68
87
88
79
181
175
113
80
111
99
89
52
76
121
72
129
74
125
100
165
133
106
87
87
69
78
112
106
66
100
80
69
99
85
113
80
107
87
120
120
78
80
117
128
136
110
100
143
110
175
141
78
112
80
137
140
140
114
80
91
113
109
91
121
119
69
69
80
101
57
43
78
131
152
90
100
133
189
163
69
138
72
83
76
69
109
69
128
119
143
154
76
80
63
87
121
107
155
138
76
88
127
120
130
88
80
94
101
69
115
78
80
93
136
125
117
80
87
127
78
153
120
164
99
148
94
118
104
124
187
129
140
54
151
140
112
125
114
119
111
96
138
102
57
79
145
113
78
118
104
136
87
120
76
128
104
78
117
79
78
80
87
76
87
80
94
99
99
91
89
125
113
91
128
119
103
78
146
140
101
143
107
113
127
87
124
69
76
126
99
93
69
126
93
94
165
119
152
109
78
90
87
83
113
108
120
119
78
128
122
90
136
117
91
118
201
107
117
102
78
80
117
119
114
87
88
149
138
52
128
88
107
91
100
104
113
76
80
69
113
146
112
67
54
96
125
126
151
94
137
90
85
131
114
114
94
111
80
104
88
86
91
87
162
78
99
154
80
163
117
72
69
160
178
109
100
72
175
97
128
87
76
155
99
143
94
88
136
117
143
163
78
134
107
69
76
119
126
91
85
128
156
137
127
91
80
66
80
101
76
78
113
121
78
126
80
98
76
141
130
69
54
156
140
175
104
76
175
72
75
80
102
72
130
94
175
78
117
106
94
119
76
76
134
134
80
154
76
87
117
136
107
106
69
128
69
94
151
80
160
120
128
120
117
146
109
131
87
89
93
69
87
80
80
148
107
54
142
104
106
76
69
89
69
63
113
107
113
109
140
118
124
120
196
148
155
104
77
69
72
76
134
89
119
103
126
74
84
125
87
67
163
106
117
102
118
80
103
128
160
91
78
108
67
91
175
104
156
106
80
52
80
110
99
80
124
79
95
134
128
109
69
80
89
154
154
78
81
128
76
138
80
80
78
69
100
149
93
129
145
69
75
80
121
128
80
174
126
101
150
175
110
110
115
80
89
107
99
132
109
115
103
169
121
97
110
87
154
95
137
140
127
98
139
112
120
88
153
138
156
125
103
88
119
82
75
175
76
80
120
164
103
127
94
94
106
89
107
69
127
80
100
128
109
121
69
88
76
106
117
183
78
87
119
98
87
112
69
123
113
133
134
80
76
80
115
96
146
80
100
90
104
113
89
95
107
109
104
112
118
73
78
72
154
80
114
101
80
149
131
120
104
137
72
87
123
89
80
120
112
87
78
129
84
119
66
145
186
69
102
138
120
113
99
107
69
123
69
90
100
127
119
134
85
80
54
67
119
94
128
99
87
128
56
149
137
93
107
117
128
134
126
89
64
92
143
78
78
131
121
187
87
80
111
80
80
127
134
155
106
121
91
87
106
43
69
74
134
110
115
112
85
107
123
93
98
104
120
140
80
66
103
134
134
105
78
107
124
87
67
120
107
94
43
120
124
99
102
136
87
134
115
69
89
156
120
123
134
96
157
78
78
91
121
120
117
178
109
107
87
80
113
148
69
126
80
78
130
106
119
60
80
128
112
100
82
120
119
76
69
80
78
87
87
106
80
80
72
130
90
89
151
119
106
80
104
108
54
117
139
151
79
138
109
64
80
131
141
94
127
175
110
109
121
128
104
94
101
109
100
101
142
114
75
128
119
74
111
98
95
147
119
126
118
136
78
72
154
101
164
148
185
80
75
87
156
94
153
87
86
80
80
69
128
80
125
93
119
145
126
175
109
83
134
69
132
80
87
81
88
139
144
98
85
96
101
130
134
89
99
199
135
74
134
109
80
109
87
87
120
103
101
80
96
106
197
128
94
87
112
85
80
94
94
145
116
128
76
80
89
134
132
78
112
154
175
101
132
99
76
80
113
99
80
80
134
72
130
80
87
80
133
94
127
69
134
119
93
78
129
88
72
163
64
104
99
69
102
93
175
119
101
94
154
117
98
134
64
107
181
90
64
69
136
131
107
91
78
94
80
121
161
76
93
158
76
80
87
147
118
67
114
98
69
54
112
89
69
88
87
113
69
102
89
109
109
115
137
119
94
100
96
96
87
52
99
106
88
85
83
117
87
80
121
151
80
104
117
120
140
87
110
134
113
85
95
107
140
67
76
160
118
89
175
96
175
111
151
88
69
102
137
88
183
106
175
128
80
109
145
150
151
127
86
87
123
140
147
126
78
69
56
78
112
76
87
137
100
136
69
80
88
135
115
154
80
135
102
52
78
104
151
117
78
145
128
169
101
69
120
72
76
122
123
120
72
147
113
83
120
78
78
148
92
80
78
88
96
102
81
80
154
154
80
112
74
126
96
126
175
88
80
132
69
87
134
157
128
113
151
153
87
99
100
157
60
87
127
78
67
154
143
89
102
99
75
117
207
104
104
113
145
76
121
102
120
151
87
69
128
185
80
120
93
94
106
92
80
69
76
69
80
118
75
93
88
120
80
112
96
151
138
92
91
94
80
111
88
69
72
102
69
107
119
129
112
89
104
110
87
69
107
93
131
112
119
110
128
110
77
88
107
115
87
197
76
52
93
103
78
74
88
109
134
160
99
205
130
114
134
80
119
120
147
163
89
69
158
145
110
121
117
99
107
106
80
128
80
151
155
104
94
107
88
54
159
151
124
80
76
102
67
131
69
128
80
118
80
93
109
128
90
124
151
132
129
93
197
146
80
80
78
76
128
76
89
164
107
128
94
169
116
113
119
100
175
101
76
107
69
127
94
43
93
78
94
107
96
205
107
80
120
80
123
78
69
72
102
151
80
69
87
163
76
128
119
154
56
120
80
128
80
130
123
109
148
112
56
94
109
79
80
87
93
80
154
117
128
83
67
100
145
78
138
88
85
175
87
127
120
78
126
96
128
123
127
156
100
72
107
91
69
137
90
104
115
116
145
148
116
107
89
150
128
175
103
85
123
119
163
122
87
87
69
80
96
134
80
87
78
121
87
108
102
87
175
69
93
101
85
111
107
94
69
132
91
78
91
138
159
127
103
201
156
174
151
69
144
110
87
115
81
108
99
151
122
78
119
87
134
76
76
143
80
59
74
139
69
94
69
120
104
82
110
154
56
96
96
127
78
120
183
80
104
131
114
76
103
96
137
175
150
87
136
93
118
69
78
121
99
88
109
154
175
87
112
76
99
147
91
101
88
100
121
151
87
131
80
102
66
104
122
146
175
75
76
117
104
127
134
119
143
80
197
99
131
104
80
91
104
131
122
131
98
175
114
89
119
121
73
131
113
69
121
142
112
100
85
128
69
54
123
120
99
134
89
175
83
101
104
119
94
197
128
69
80
90
106
121
56
90
80
93
60
118
147
69
110
107
209
134
117
106
128
100
183
128
134
115
175
120
119
120
52
69
78
126
76
106
118
80
87
197
111
147
78
78
107
130
120
66
89
69
142
145
83
92
98
80
109
80
162
99
109
112
89
115
107
56
128
119
100
119
80
100
76
99
69
104
54
78
94
83
89
75
120
109
104
113
111
76
78
175
118
157
89
119
114
121
120
121
87
87
89
69
76
118
80
123
87
88
96
109
121
154
123
91
187
107
119
136
114
139
104
87
123
77
154
106
103
110
109
107
154
113
144
88
69
121
96
107
92
131
99
56
96
103
80
141
114
78
104
87
98
126
136
118
78
80
131
91
149
119
175
80
130
76
120
136
104
142
101
91
80
96
92
78
124
145
99
80
69
154
74
82
80
67
69
87
87
75
89
88
101
156
96
123
109
69
131
94
91
76
69
87
69
144
69
69
119
109
131
94
159
152
119
88
80
106
76
80
72
106
134
106
56
120
119
132
80
119
69
80
126
89
111
128
107
69
69
88
69
123
111
134
120
76
86
136
80
54
99
140
122
112
100
156
185
119
64
144
77
112
78
189
113
67
128
108
60
116
107
117
121
134
115
94
155
96
104
112
78
119
78
101
80
128
143
80
142
101
88
130
94
156
175
141
147
108
109
120
126
69
140
119
80
113
110
69
153
72
113
119
111
102
80
112
140
87
80
113
146
107
89
96
101
93
86
146
99
128
113
123
126
92
146
74
78
69
146
87
118
100
94
104
136
78
112
109
146
87
97
89
72
119
104
69
148
43
104
149
130
87
123
80
93
106
76
121
58
76
142
83
134
94
72
145
197
117
115
140
119
119
91
105
109
87
140
54
107
119
88
69
89
101
89
92
119
109
157
69
142
87
80
64
94
156
56
126
125
87
66
109
117
128
155
99
88
151
72
143
109
69
80
132
87
147
132
144
69
78
154
80
78
80
107
91
69
119
76
185
86
129
69
69
78
96
72
120
78
138
95
87
99
88
117
78
76
120
122
119
89
80
99
109
80
115
118
43
127
93
101
136
80
69
91
104
56
87
75
156
94
85
119
133
69
69
134
99
110
145
82
175
107
140
114
110
120
113
122
129
154
76
113
87
134
100
99
154
124
87
154
148
89
80
56
134
129
113
101
137
119
87
110
94
137
99
119
112
112
114
93
100
126
91
120
69
103
69
91
104
107
176
154
140
156
107
128
80
93
92
76
89
74
175
120
78
119
120
89
69
130
104
141
78
91
75
146
75
80
112
78
117
87
155
87
82
94
156
85
88
91
111
69
112
78
94
127
128
80
85
143
76
78
99
112
95
69
87
80
129
119
99
69
94
156
169
94
80
72
94
103
187
106
78
134
155
88
80
104
83
114
119
132
92
133
69
89
69
69
96
121
175
121
104
80
54
76
144
154
107
100
118
154
107
87
109
80
126
116
100
114
143
134
127
101
99
122
137
94
134
124
117
201
171
151
106
155
97
94
154
128
78
78
69
121
130
136
110
128
175
110
134
128
157
107
76
80
72
78
78
87
102
140
118
73
91
95
156
80
175
94
87
69
130
156
118
145
104
69
119
94
122
100
96
106
130
94
127
102
88
138
130
94
119
74
104
106
101
107
102
175
107
98
101
120
136
128
143
80
87
83
160
78
74
58
134
151
175
54
88
120
111
140
115
151
121
131
69
98
160
99
127
112
112
146
76
78
85
88
87
80
88
89
111
107
89
131
71
197
87
119
155
69
134
117
94
104
117
98
133
80
151
154
155
69
150
112
140
112
69
121
72
111
163
187
149
80
87
181
80
78
76
112
134
109
88
111
154
99
78
116
128
76
102
88
79
136
69
132
88
174
58
109
88
197
87
103
94
82
114
80
109
134
74
94
56
99
140
112
112
119
67
120
86
78
130
140
185
124
125
98
156
80
123
144
110
88
88
96
76
80
69
119
109
101
152
101
154
155
143
119
121
101
109
110
120
174
87
104
172
69
99
109
110
83
120
99
110
72
175
76
100
104
99
113
96
154
127
83
118
136
119
115
110
87
145
107
94
69
74
56
131
104
90
78
89
88
88
78
80
74
80
119
69
131
69
87
76
145
78
154
80
78
110
89
197
99
80
80
69
93
148
104
120
120
101
71
89
130
94
151
106
80
125
69
157
107
43
83
119
128
111
152
177
76
128
143
87
154
110
54
101
91
110
100
80
154
113
109
147
145
78
128
56
197
76
114
154
128
78
107
86
118
108
99
197
100
106
144
80
80
156
140
76
128
110
66
76
93
128
110
100
119
43
166
124
123
87
119
69
163
121
93
99
94
64
113
145
138
96
80
80
120
117
101
155
96
107
135
88
140
175
116
89
113
145
87
121
119
119
134
91
59
80
128
83
102
117
80
80
110
112
113
134
163
80
91
121
69
154
83
116
112
193
104
89
119
87
120
136
148
119
109
197
119
174
76
160
112
145
88
88
127
127
80
78
98
101
87
80
117
106
137
131
127
83
151
102
166
107
93
175
69
134
120
146
78
106
74
99
78
87
121
128
128
197
148
69
94
120
69
88
183
116
181
80
119
153
85
101
83
127
102
89
119
59
137
112
80
68
134
89
119
80
104
197
116
109
113
143
76
108
87
87
76
109
130
120
76
132
138
154
88
127
197
138
140
125
112
86
136
111
122
88
111
129
87
88
115
83
146
132
87
94
136
87
109
114
94
133
111
52
129
69
101
174
109
72
87
128
72
122
69
101
80
109
109
113
104
101
90
197
87
197
155
114
78
69
89
112
88
99
93
111
69
87
113
78
120
164
122
113
104
112
137
102
80
87
69
106
110
106
74
128
120
175
154
72
96
122
69
154
125
87
119
129
106
103
113
128
91
108
119
110
119
129
99
123
87
119
109
140
71
98
129
109
79
136
107
104
80
52
175
99
80
134
80
104
118
152
69
80
175
104
120
143
91
157
69
111
78
98
131
80
106
115
174
106
136
154
121
72
83
76
69
80
69
80
129
132
97
149
80
102
106
90
133
151
76
76
68
87
128
119
134
66
119
113
118
94
99
125
88
88
134
80
128
101
175
94
76
126
64
111
90
87
101
136
122
98
120
87
140
89
107
78
76
85
175
134
166
69
112
99
87
165
80
144
107
80
115
175
109
69
97
101
78
69
93
98
60
147
78
107
89
122
133
154
79
121
66
89
120
129
87
69
78
109
128
96
106
104
88
98
107
87
107
120
78
80
107
136
133
76
80
100
107
145
123
117
66
122
54
110
87
153
69
101
101
143
143
80
119
110
140
43
96
80
129
106
80
69
96
67
136
92
87
110
80
175
78
93
78
54
80
146
71
132
78
111
123
155
110
132
85
80
76
78
52
121
136
112
147
164
97
76
80
119
140
80
152
113
99
93
150
113
80
99
109
72
69
148
137
96
132
111
162
96
69
59
78
106
91
67
69
75
78
119
101
78
76
91
93
137
104
140
87
134
95
78
69
90
76
54
128
88
69
117
76
80
115
115
121
175
76
154
82
107
95
78
85
69
125
121
67
112
156
107
88
80
131
69
80
111
69
76
115
131
148
116
100
102
87
95
131
131
76
80
175
107
96
104
134
80
80
88
162
91
113
74
100
78
89
110
60
78
131
115
80
113
175
95
99
136
104
154
94
99
134
98
119
100
90
136
128
105
104
136
115
137
109
104
87
85
87
97
132
72
145
75
78
66
83
128
110
107
69
100
87
83
96
151
106
131
80
162
69
94
78
89
80
107
163
87
80
78
94
80
131
118
76
128
74
89
80
140
136
59
106
69
138
131
87
80
127
80
80
109
120
150
87
109
100
115
157
88
107
137
121
76
69
80
197
126
107
76
131
128
115
56
69
100
119
104
80
102
69
76
136
149
109
79
69
78
131
126
69
119
145
98
69
112
145
107
110
145
67
141
80
56
80
119
54
127
87
74
133
143
80
123
121
106
100
120
117
72
90
107
110
69
87
80
175
73
87
94
128
82
95
87
104
78
78
128
80
113
120
130
94
110
91
118
139
87
87
117
136
104
85
163
143
121
154
100
116
104
101
127
85
72
80
113
174
106
110
104
115
84
86
114
88
106
129
89
154
68
104
76
100
76
147
52
154
128
154
131
87
175
114
145
165
163
126
106
164
80
120
85
78
175
75
143
100
93
187
106
89
69
149
69
90
96
69
126
69
154
99
72
128
91
76
87
80
154
111
93
64
155
99
69
140
80
76
142
107
187
110
112
136
112
82
154
88
91
92
115
126
155
88
136
136
128
183
78
156
76
143
52
157
80
87
79
143
66
81
104
72
120
127
107
140
87
54
79
78
132
117
174
78
119
140
87
69
89
87
119
113
78
76
90
95
76
91
130
96
117
80
134
87
134
80
175
99
156
106
102
89
78
102
80
106
165
73
80
99
59
117
88
119
129
154
128
69
76
78
100
175
119
94
99
87
69
145
140
119
100
136
69
125
110
122
74
95
107
120
136
135
150
76
93
104
102
128
80
101
76
76
131
69
119
94
80
80
175
80
80
63
97
110
101
113
96
76
156
80
72
80
140
87
91
91
127
136
76
78
140
69
113
118
136
78
107
99
100
89
107
76
128
131
76
113
83
109
165
113
80
130
76
106
72
94
111
127
69
155
97
96
157
80
82
99
83
69
103
146
87
146
133
119
166
134
128
134
102
100
88
88
59
107
131
91
128
165
197
99
74
106
69
134
96
134
136
87
120
78
151
151
109
76
69
89
89
146
117
89
111
87
72
128
81
107
93
69
118
112
156
130
80
118
147
123
95
121
69
69
80
156
66
117
87
134
93
120
154
80
102
80
68
91
115
131
78
83
80
80
76
69
154
87
95
87
87
113
101
134
128
85
82
94
76
113
137
131
175
122
95
140
87
69
91
108
80
80
83
118
111
164
149
81
87
88
87
175
115
102
87
128
106
80
80
117
128
100
100
117
80
80
134
88
76
87
84
113
104
122
90
111
148
52
74
112
80
100
72
106
128
80
104
154
134
76
110
78
113
66
89
87
99
154
154
112
89
69
134
116
134
80
116
96
134
155
80
69
98
111
119
110
69
197
107
145
89
135
145
117
119
54
112
72
119
131
115
69
113
80
151
76
136
80
87
127
115
154
91
69
155
89
115
96
111
113
69
106
79
43
104
134
56
80
120
87
71
60
125
112
80
69
69
94
87
178
163
80
80
148
89
119
87
118
80
78
91
106
74
128
104
69
123
56
131
93
113
94
148
89
107
94
117
116
117
109
78
175
144
96
163
80
154
54
80
145
106
107
114
129
107
54
121
117
88
78
99
69
104
131
69
127
111
69
76
122
112
128
120
96
80
87
112
112
76
74
107
66
114
99
69
119
128
93
141
136
197
80
119
111
76
87
88
131
100
72
133
52
103
89
78
106
131
109
96
69
76
94
112
75
134
66
118
89
88
197
102
87
124
78
130
183
72
54
80
90
89
90
76
110
69
136
93
110
89
94
90
120
133
148
82
106
89
106
84
197
100
134
110
69
90
110
88
155
100
89
76
156
146
128
69
140
109
144
166
99
131
152
129
115
69
88
94
80
112
157
98
91
134
60
119
85
131
110
113
118
110
80
136
130
130
114
102
100
156
94
117
132
77
145
59
117
102
110
69
151
131
88
87
153
78
69
119
88
154
91
112
104
156
87
111
136
80
78
208
85
78
120
145
145
109
89
93
126
80
121
128
96
67
147
109
118
69
127
80
118
69
100
78
80
80
106
144
108
106
117
113
131
100
94
109
80
121
136
110
150
99
110
80
80
130
128
87
107
104
164
197
92
115
78
209
94
87
80
101
127
103
80
69
87
123
131
80
89
132
136
74
101
80
80
113
93
134
91
78
164
96
110
140
89
140
87
87
123
87
114
121
110
140
107
80
104
78
83
112
99
117
80
124
75
93
80
131
112
69
96
78
80
132
133
69
142
110
117
87
119
121
150
54
97
112
93
121
80
69
125
128
78
107
69
80
154
120
136
94
123
90
80
90
140
107
119
133
80
134
94
111
120
69
169
183
132
78
128
121
109
119
84
93
80
90
119
136
131
107
69
106
94
113
106
89
87
127
119
78
99
136
149
120
119
80
98
87
54
148
136
164
76
91
64
76
80
149
119
99
76
96
96
103
87
69
93
75
94
69
104
109
76
113
69
90
83
69
109
154
87
115
151
156
87
119
154
108
141
112
76
107
100
87
174
88
69
80
87
113
88
69
80
111
80
80
134
163
154
80
104
99
117
78
83
67
80
87
81
175
154
69
109
101
119
99
154
80
102
106
79
80
106
152
128
131
99
80
94
80
152
105
134
137
82
109
69
117
126
117
162
80
123
119
76
54
197
89
80
113
134
91
119
91
115
110
112
156
199
175
134
133
87
97
125
128
74
100
54
106
117
76
131
115
93
199
88
109
93
137
115
110
139
96
131
122
144
80
76
106
175
110
122
63
96
80
72
100
69
151
107
119
72
115
80
109
112
128
111
107
80
80
102
101
105
90
74
101
109
92
72
124
136
154
127
96
148
121
96
175
106
126
76
80
80
134
131
110
128
155
94
80
69
52
74
111
104
94
131
130
85
89
102
134
90
69
84
76
93
96
127
119
80
99
136
102
148
136
43
123
146
69
72
81
80
120
91
89
117
117
99
76
75
94
106
112
100
131
78
54
154
119
131
72
69
69
80
109
74
121
154
100
127
90
92
119
88
110
110
100
80
99
205
88
104
108
122
155
78
131
80
115
113
111
89
52
164
155
102
118
80
72
99
135
88
128
78
140
87
133
128
90
78
64
54
155
78
89
113
151
76
119
92
80
146
109
78
116
110
80
87
54
94
126
91
92
146
139
154
117
95
69
109
124
163
88
100
111
124
129
80
118
87
72
99
56
76
121
89
80
67
119
197
94
99
156
121
104
87
76
112
69
78
131
87
141
113
96
164
99
119
80
112
118
94
106
119
76
102
91
80
87
117
156
89
120
110
69
87
118
80
127
69
128
76
92
106
128
138
119
129
136
119
99
78
132
80
107
146
98
134
87
131
116
142
80
104
74
87
72
145
89
100
99
69
134
96
181
175
134
99
175
78
157
169
119
112
96
74
142
69
121
143
69
76
118
102
90
100
120
164
130
76
68
124
72
154
134
92
87
138
131
80
121
76
122
87
115
101
154
66
64
76
87
119
107
80
69
74
107
109
146
88
80
87
88
107
138
156
140
88
120
69
91
117
106
80
96
104
80
124
72
144
118
118
134
120
87
69
78
135
128
112
125
106
152
197
121
66
78
128
96
110
103
119
134
128
143
156
99
121
134
67
69
115
131
110
87
69
92
76
112
94
149
127
100
80
146
80
99
120
119
110
52
119
81
91
106
151
99
78
78
111
80
129
80
117
78
151
131
109
128
129
88
88
111
119
79
43
104
76
89
124
87
120
127
136
89
120
54
100
131
76
54
93
99
136
110
80
87
77
143
128
156
155
78
113
98
122
119
95
76
80
109
143
101
54
101
101
125
87
144
59
76
143
115
89
133
78
69
109
93
197
69
103
78
128
131
80
80
67
125
88
109
104
120
178
72
108
126
69
80
184
104
87
111
107
88
175
80
151
83
110
123
122
113
76
99
94
100
154
91
100
119
106
80
114
120
154
75
137
82
130
112
120
110
67
120
124
128
121
80
99
76
175
149
112
155
165
111
80
183
103
120
52
80
89
75
154
76
91
114
106
127
88
77
145
69
74
101
101
117
80
101
78
122
119
54
78
107
72
120
78
125
90
109
144
143
164
95
152
87
107
88
130
107
74
106
89
78
131
108
69
69
80
165
89
85
79
79
60
69
99
72
83
162
87
87
102
124
160
90
128
93
104
119
78
138
119
123
109
83
80
130
146
87
104
162
162
163
101
109
94
139
85
175
94
108
117
103
80
89
106
113
93
96
91
140
80
131
136
107
123
74
78
148
69
134
115
69
87
102
154
69
136
99
102
80
86
115
88
128
140
101
108
99
163
107
110
76
108
94
139
112
116
99
112
155
71
128
117
91
154
76
71
107
109
129
111
89
72
106
135
136
88
106
121
137
110
69
87
146
138
106
110
95
69
123
124
103
69
94
66
89
69
114
107
107
87
87
107
107
175
145
111
79
80
93
52
99
119
100
87
114
80
99
52
100
112
96
106
156
155
148
134
145
137
154
128
163
69
143
78
133
134
131
130
80
69
89
109
175
80
101
87
133
140
80
82
99
82
80
76
175
106
145
87
115
80
94
109
80
72
137
89
131
128
197
115
163
155
80
80
110
54
127
129
74
79
80
105
99
69
80
80
154
104
98
121
84
107
107
111
96
59
76
120
154
104
84
147
119
131
145
72
76
88
78
74
93
110
116
126
129
169
119
124
172
155
112
69
119
136
112
80
133
134
109
92
82
78
78
76
185
121
134
138
99
119
69
104
169
197
96
69
143
80
140
175
88
147
76
112
197
78
113
69
120
119
82
87
140
146
117
109
111
138
115
106
76
72
81
76
107
130
197
120
143
120
113
120
116
107
89
72
128
175
109
119
119
130
104
80
100
197
97
110
76
118
140
106
112
124
94
151
114
112
119
209
94
69
111
73
128
94
111
74
110
117
162
74
112
130
104
154
154
99
109
121
83
78
133
67
156
78
69
67
80
113
87
74
74
118
118
137
69
113
120
89
76
100
80
80
72
78
76
69
163
113
145
80
115
89
116
107
166
80
102
80
69
100
136
130
132
93
104
103
73
128
120
102
96
74
151
126
80
106
163
69
119
143
131
161
80
88
116
80
91
175
119
174
76
69
93
91
78
143
167
69
127
80
104
104
120
160
66
126
80
87
99
87
76
128
107
117
143
140
68
88
105
80
115
80
87
156
156
119
107
94
110
109
197
74
87
43
131
69
69
82
76
87
87
80
101
155
69
175
80
99
175
104
103
124
126
80
119
145
89
129
101
125
121
142
106
110
122
131
76
110
175
78
88
69
119
175
88
146
102
72
123
91
113
97
102
54
87
96
144
131
69
87
76
130
83
80
80
110
87
69
108
89
120
172
128
80
89
106
166
78
110
156
76
110
95
99
72
109
113
69
89
104
117
163
154
103
109
78
69
99
175
83
145
156
157
109
121
78
136
163
120
119
119
112
102
164
107
103
138
114
80
59
136
94
163
112
81
115
113
87
117
93
87
91
119
71
101
88
119
123
132
94
120
78
76
83
160
156
87
87
106
106
69
80
155
69
69
85
78
128
89
113
92
126
69
74
72
87
140
87
91
121
80
78
80
154
107
91
120
106
119
76
154
156
96
99
123
160
148
134
119
144
160
121
121
69
119
114
110
104
132
91
110
155
80
185
88
121
97
89
128
174
132
136
160
160
87
123
154
111
87
114
121
104
154
127
131
58
138
131
175
146
126
113
87
100
93
128
109
148
146
100
119
163
128
128
63
87
120
76
69
72
117
151
114
80
122
133
126
118
127
88
69
124
117
80
78
125
80
136
69
115
111
90
88
95
80
162
119
110
129
80
105
69
115
93
87
175
87
107
148
108
119
78
117
121
140
134
131
58
144
164
93
134
120
81
137
100
119
87
69
80
108
97
104
175
104
89
154
125
92
89
201
119
99
87
56
111
112
94
175
87
87
107
97
112
98
78
94
120
69
80
137
80
87
93
88
91
94
110
80
111
76
87
87
109
110
120
139
109
120
93
71
96
52
56
175
113
106
114
183
134
72
87
129
127
104
134
93
117
111
120
91
92
91
94
74
113
91
133
134
80
125
163
112
96
163
72
127
175
69
69
101
78
80
151
175
113
112
93
76
67
110
80
69
110
109
69
73
80
91
156
69
175
102
78
107
147
133
147
119
80
107
133
154
108
76
134
96
89
85
120
136
147
80
156
76
120
76
156
69
72
118
120
80
52
112
69
76
87
64
87
104
99
95
120
78
181
109
119
172
119
78
146
98
120
76
76
69
124
83
87
76
169
106
87
78
80
80
154
130
155
174
106
128
94
136
80
80
128
54
89
100
99
124
87
148
155
129
123
99
89
155
114
142
119
80
79
80
172
113
99
69
131
134
121
138
76
109
54
125
69
78
88
144
80
149
113
96
119
80
101
90
119
69
89
91
107
110
78
125
120
117
88
87
120
118
110
91
80
90
99
140
76
94
104
134
94
117
107
99
94
79
138
103
104
78
75
80
80
88
145
80
102
98
140
69
112
80
136
110
136
80
104
88
78
104
89
99
110
80
110
88
130
91
117
109
137
119
129
104
106
80
88
89
102
110
96
117
85
78
69
106
111
104
110
120
140
80
80
97
80
76
78
87
89
87
80
110
109
160
127
149
87
99
114
175
140
88
136
87
134
146
74
113
80
73
155
100
125
94
87
108
82
128
119
137
119
120
175
86
131
131
80
69
78
80
109
67
88
143
129
101
122
117
83
85
66
58
72
120
93
155
156
146
104
107
100
107
76
78
117
106
155
175
109
69
146
80
74
134
74
126
78
110
94
160
118
99
128
99
122
119
107
87
143
80
69
117
98
76
101
80
102
156
142
154
67
104
149
75
112
106
117
118
87
119
119
128
152
120
205
111
52
164
151
78
94
175
69
120
109
69
151
69
110
113
96
87
124
148
115
69
87
140
136
98
87
89
56
106
69
82
101
80
104
128
101
80
119
101
154
69
52
43
94
108
138
112
154
100
56
121
155
56
134
120
120
85
107
69
56
109
100
104
101
154
80
94
101
92
133
107
93
175
72
131
102
76
52
107
93
76
131
109
119
163
80
165
75
69
113
106
95
106
126
157
87
101
121
56
87
151
178
78
88
134
87
106
109
117
80
121
87
175
71
110
56
146
133
133
89
134
106
102
156
91
89
75
99
109
95
117
155
143
80
119
87
120
69
131
96
68
87
76
120
78
137
117
80
128
101
59
78
89
118
73
80
128
167
112
80
124
101
83
119
88
119
120
107
95
78
148
111
76
69
131
102
154
69
112
80
76
143
163
119
101
76
80
80
87
52
111
94
134
99
79
78
134
93
128
131
107
101
91
107
80
156
109
72
69
143
110
127
69
115
121
83
106
129
94
149
80
175
98
56
163
106
146
130
69
101
77
175
120
109
106
101
139
69
128
93
142
110
87
74
175
89
80
80
132
128
143
69
93
109
113
76
106
95
104
127
110
119
93
80
115
151
128
119
76
72
139
80
87
85
175
107
69
137
80
102
92
93
80
94
76
87
69
67
201
94
80
117
87
78
87
125
104
80
123
63
146
95
80
78
122
52
164
120
83
134
69
94
87
88
155
83
87
76
107
118
69
100
78
128
155
156
78
97
135
89
78
69
175
126
175
80
119
140
107
88
88
136
90
114
93
104
126
131
137
119
80
91
94
111
117
140
104
122
137
156
114
169
109
125
90
90
78
78
101
80
131
197
92
112
131
87
120
79
69
85
80
99
80
137
94
76
140
155
128
120
69
94
78
128
107
142
89
104
154
119
118
125
87
119
87
111
156
80
111
131
95
85
78
109
120
99
146
115
107
137
100
76
114
97
96
160
123
164
90
107
87
76
80
175
83
129
80
163
114
119
89
100
123
112
123
85
96
87
155
113
102
134
106
101
111
110
107
80
83
155
183
102
185
69
78
80
88
76
116
69
120
134
131
119
104
67
71
69
64
175
107
110
165
128
80
147
96
144
80
69
109
154
140
69
101
69
63
97
100
80
106
80
78
121
78
156
78
88
119
78
80
78
119
187
140
89
88
104
67
102
136
76
69
103
98
69
106
120
87
119
88
122
87
183
136
155
80
80
87
81
120
125
87
154
76
87
102
80
175
130
87
109
124
135
134
80
83
91
87
89
75
110
66
143
158
146
94
72
90
101
126
88
175
155
69
69
96
118
113
87
104
76
80
93
107
78
107
109
56
106
69
102
78
103
119
128
99
114
123
80
69
111
96
91
126
43
156
95
93
113
100
146
110
72
72
94
127
88
72
134
78
118
83
76
101
80
75
154
98
76
97
163
101
80
89
129
121
80
87
78
96
136
183
78
136
159
80
88
69
117
87
95
110
155
72
101
122
69
91
100
96
56
128
107
102
87
148
119
88
80
73
139
120
95
99
91
73
107
87
87
94
109
136
64
126
69
89
120
118
133
124
107
113
113
125
76
69
150
69
104
195
69
131
154
78
69
115
112
136
168
76
114
80
106
131
88
90
91
119
144
106
79
78
78
175
143
126
114
69
162
134
80
87
92
80
131
69
130
115
137
88
152
99
74
80
69
145
93
109
115
105
94
93
52
129
120
125
126
137
110
175
80
74
69
96
123
78
88
87
69
116
197
119
69
130
117
175
114
94
128
78
89
110
99
69
99
80
88
161
111
88
140
126
80
80
154
116
136
80
119
119
80
80
99
78
69
72
66
201
107
69
99
89
115
134
88
99
99
90
88
80
136
119
139
78
120
105
69
79
88
94
78
69
110
117
72
118
101
119
128
147
76
123
121
131
130
78
107
109
88
88
78
78
89
87
78
106
76
154
69
151
128
119
107
107
94
123
160
72
83
126
120
143
151
107
80
140
75
107
99
94
175
89
124
78
69
78
134
136
110
69
80
175
93
109
106
119
129
106
78
131
75
120
121
69
112
93
96
80
99
128
124
156
91
66
94
106
117
80
85
120
72
103
75
112
94
106
69
91
175
59
115
124
78
154
80
125
89
69
96
80
83
78
100
127
164
142
101
72
80
101
74
89
91
119
93
132
75
149
94
104
123
151
78
80
69
82
99
88
80
119
129
106
107
160
78
87
120
96
78
64
115
87
89
143
69
69
133
69
134
100
67
78
154
96
87
80
175
89
56
78
89
87
57
54
148
88
149
106
160
80
73
102
86
87
86
128
138
122
80
80
74
140
102
110
120
93
120
110
130
154
87
74
80
136
80
104
76
132
120
199
125
118
69
113
92
94
87
94
80
107
80
83
96
82
175
136
94
99
123
80
66
82
69
80
123
118
80
75
136
80
78
99
87
154
126
74
91
109
88
155
128
94
76
94
175
121
157
130
122
145
87
121
120
83
78
122
69
87
80
87
80
136
100
87
87
176
88
104
119
156
76
87
197
69
80
109
93
175
80
80
131
126
69
69
68
94
80
106
197
120
80
145
110
114
130
78
69
94
74
96
121
87
138
127
108
94
164
126
95
141
71
87
88
134
80
119
103
140
76
134
128
132
172
116
87
131
107
72
69
69
109
156
112
79
69
110
107
136
76
120
69
88
146
103
148
107
155
87
96
80
113
113
106
106
181
110
131
99
87
74
90
114
94
88
130
104
99
141
103
109
113
154
116
101
128
107
117
143
120
99
130
119
69
118
80
69
78
112
80
175
122
99
148
98
94
75
91
104
109
88
80
75
114
154
146
87
80
115
131
127
117
98
69
87
77
80
127
104
121
67
126
76
127
91
98
87
112
87
165
64
91
87
119
144
109
109
121
177
112
134
113
119
128
97
155
99
69
140
175
78
80
81
75
69
110
146
72
174
80
107
119
76
118
122
112
76
78
100
78
185
87
78
109
129
106
101
127
54
197
94
43
193
76
93
146
88
109
120
91
80
78
121
131
120
117
139
101
137
113
148
82
128
80
107
101
80
80
90
102
130
117
120
109
78
80
107
99
137
69
76
145
74
119
107
119
102
78
113
175
69
72
106
121
140
103
140
80
124
66
76
80
91
76
125
85
99
87
72
89
69
89
80
143
83
143
132
87
84
89
78
107
89
160
80
78
111
89
96
89
122
109
56
99
150
123
151
82
99
85
80
52
151
80
100
69
78
107
99
124
69
134
99
99
111
140
107
89
76
128
197
72
101
87
101
72
89
60
78
88
78
113
80
87
106
101
107
78
104
89
113
76
43
76
118
140
132
82
127
112
149
88
102
94
109
100
102
104
128
112
117
78
146
100
95
52
52
134
143
72
99
80
69
88
119
197
69
78
69
104
80
80
156
78
52
117
119
107
80
109
90
78
94
88
99
69
99
156
110
107
131
80
103
69
87
80
100
80
175
69
78
87
120
115
85
120
78
140
146
133
95
99
78
78
78
76
69
120
96
121
87
80
120
109
138
116
95
145
80
119
94
116
80
123
80
80
197
144
147
89
146
99
107
94
134
80
119
175
119
87
78
78
119
76
98
87
80
87
136
99
80
87
87
151
99
158
87
93
89
111
74
94
120
80
140
80
119
121
76
127
87
76
113
132
164
76
197
80
107
164
78
96
94
129
80
137
88
110
136
82
83
87
104
82
99
124
154
84
80
99
89
69
87
78
110
115
127
106
110
69
102
102
100
128
134
157
77
172
153
134
88
86
109
113
106
94
131
114
154
97
96
124
145
128
175
101
94
146
79
121
131
88
80
137
102
124
92
140
78
69
88
69
80
76
80
80
80
89
91
138
119
154
91
78
148
78
54
112
78
149
110
160
133
54
59
156
87
107
93
76
100
87
121
119
74
163
80
124
164
69
52
52
156
80
88
134
76
90
94
131
69
112
78
98
175
80
69
80
112
89
89
78
113
136
112
112
124
174
137
87
80
91
175
116
154
147
156
88
96
100
112
127
157
107
154
148
80
122
99
72
152
113
89
69
109
111
88
120
112
76
119
100
78
162
96
175
80
86
91
109
96
145
87
80
104
63
87
154
176
123
69
67
145
76
87
197
120
118
87
90
119
129
95
76
94
88
197
137
76
96
88
137
80
120
83
149
101
69
102
89
119
72
69
80
128
138
121
80
69
116
80
120
98
101
120
113
129
108
98
99
155
69
87
78
154
78
113
99
88
140
128
96
89
87
117
148
144
111
89
80
156
140
120
122
100
123
54
102
138
121
78
110
102
88
107
112
80
155
128
92
104
136
121
83
174
78
126
131
128
87
100
76
109
93
76
112
112
76
80
87
107
63
141
109
72
87
87
101
155
146
73
136
80
111
80
143
113
91
109
136
106
120
104
120
175
88
133
110
115
143
74
104
80
80
138
87
78
73
126
80
122
87
133
152
94
110
76
56
120
119
69
87
69
107
78
87
128
151
99
91
155
107
119
150
60
84
101
120
99
124
68
80
118
69
145
69
114
93
69
96
107
120
106
72
119
94
69
83
69
124
87
82
123
76
67
127
153
89
89
69
197
106
114
147
67
137
95
89
76
87
104
83
83
98
76
175
58
175
80
110
85
87
110
80
197
114
83
108
88
175
94
92
140
69
89
105
111
128
76
136
76
144
94
91
107
129
119
80
91
80
96
139
106
86
69
106
153
128
106
119
102
77
121
99
90
132
88
113
109
122
80
140
110
104
113
169
80
104
104
120
98
118
131
118
76
99
131
183
76
197
107
110
175
72
88
128
118
108
175
80
80
112
145
119
80
64
69
100
69
140
118
119
80
99
128
164
134
120
103
110
140
98
128
109
69
146
91
96
144
129
144
80
99
123
87
113
128
87
78
113
87
104
109
109
144
109
43
82
80
121
161
78
130
87
100
107
110
69
109
181
80
136
120
68
93
131
104
162
136
96
80
69
112
137
90
118
154
87
139
56
145
91
78
74
58
80
110
80
87
80
80
139
69
119
69
154
89
106
128
130
134
163
111
112
146
80
157
52
94
78
110
123
88
92
80
88
118
98
143
152
175
80
142
80
119
88
136
116
76
69
110
113
197
94
102
119
106
140
80
87
93
88
141
104
97
175
116
80
80
89
80
101
69
101
145
80
123
89
78
175
52
109
80
72
78
121
56
109
114
107
119
107
114
80
102
80
69
117
120
136
78
119
111
104
140
80
128
175
88
147
98
76
85
115
143
74
80
80
175
124
104
203
69
109
96
87
160
163
110
144
80
87
101
78
127
80
101
129
106
78
197
145
69
115
109
69
96
146
72
72
107
88
110
136
76
109
175
94
127
80
154
175
130
104
93
72
134
80
154
109
80
66
110
148
80
99
128
199
140
106
102
72
112
106
120
144
67
78
106
80
99
112
69
69
145
145
122
113
201
80
72
195
127
80
117
87
80
126
90
91
140
146
156
87
78
163
117
146
143
96
87
155
78
107
87
134
69
67
154
85
137
165
69
151
148
106
154
197
117
107
136
95
69
87
101
112
96
102
109
56
79
163
120
80
157
76
80
119
52
69
163
120
87
87
109
102
146
107
99
120
76
96
87
107
136
110
117
146
89
87
67
99
69
104
69
134
80
87
76
98
100
147
87
113
102
75
89
76
66
144
80
69
175
112
80
87
75
104
132
156
94
88
89
96
56
134
90
56
107
155
96
107
131
115
157
183
92
119
128
115
95
94
156
106
104
142
102
80
129
74
119
93
87
134
78
74
67
76
136
80
87
74
153
128
151
129
118
99
80
185
88
107
128
54
164
120
101
106
76
76
73
131
119
106
80
78
115
67
145
78
111
110
78
127
114
109
109
94
85
69
76
197
127
112
154
99
87
156
78
104
80
87
152
138
110
104
163
105
119
67
69
80
109
93
126
82
99
113
118
94
107
67
134
121
94
145
175
88
106
69
93
151
120
143
114
120
153
78
88
117
78
78
152
160
76
69
80
109
67
103
99
69
111
142
104
153
80
101
120
74
154
69
114
69
129
128
164
80
72
76
163
114
119
80
80
80
99
138
127
128
197
107
94
121
78
114
69
134
69
145
76
88
87
130
88
121
155
118
69
69
88
163
76
80
93
95
134
144
93
156
132
90
89
76
151
102
89
174
197
98
83
80
140
117
125
175
107
136
155
119
141
120
117
120
160
119
52
90
128
147
106
107
69
119
134
87
80
94
128
197
89
107
104
89
110
129
99
120
112
134
106
175
119
134
162
87
160
156
151
80
87
103
159
69
144
69
154
94
154
87
92
161
88
110
54
89
80
76
72
119
121
66
143
165
130
157
134
147
80
110
102
96
58
87
124
156
87
69
115
78
117
100
121
141
103
114
83
101
87
164
89
109
114
144
107
99
138
119
120
119
67
69
109
127
158
175
149
80
122
124
131
80
94
132
102
122
151
134
83
69
106
93
109
175
152
130
119
132
88
82
128
74
69
154
131
112
113
79
104
107
137
122
111
78
103
69
67
119
88
119
69
120
104
109
149
93
110
132
80
92
136
121
69
116
115
87
73
111
127
68
118
104
159
156
79
72
113
87
80
127
78
104
133
130
78
113
186
144
143
94
134
134
156
80
155
93
91
101
110
128
116
140
88
103
100
88
117
119
137
80
69
69
101
120
104
101
78
164
121
160
80
95
115
87
131
106
104
136
113
80
100
129
113
80
112
93
104
123
118
102
118
128
110
120
147
152
113
99
107
69
109
148
119
127
140
120
101
146
104
113
87
120
148
119
93
197
78
165
96
81
63
116
100
155
107
147
94
118
110
78
157
101
112
106
91
76
92
118
72
119
160
109
110
69
117
69
96
161
107
80
107
80
120
71
107
122
119
126
89
155
82
99
146
120
152
175
142
78
163
134
88
72
80
82
69
80
87
175
80
140
103
117
110
120
52
87
54
117
129
156
119
103
80
88
98
109
91
54
135
64
94
175
134
101
80
201
110
80
76
87
118
164
90
160
87
134
89
136
102
74
106
110
93
74
96
78
127
136
80
107
125
113
93
80
66
114
137
80
88
140
114
175
113
118
146
121
145
101
115
131
80
80
121
119
117
134
76
109
87
87
142
101
105
78
151
143
89
87
131
78
158
142
151
133
141
68
140
112
77
111
119
80
175
119
102
67
85
199
69
103
147
121
103
90
76
149
104
94
94
80
112
134
94
87
80
112
119
87
87
131
78
104
99
89
67
80
120
119
76
80
69
85
102
148
80
117
137
118
80
87
128
120
93
131
108
80
124
114
94
175
69
154
94
80
85
88
74
76
89
78
100
154
119
126
78
106
118
72
78
80
104
121
75
140
87
156
162
87
133
69
143
109
99
89
117
69
107
87
90
80
164
155
91
80
56
87
114
139
87
113
155
74
91
78
148
175
97
107
56
87
163
144
91
119
112
80
85
114
66
124
43
78
87
128
112
69
165
69
112
76
156
143
131
144
69
119
52
89
74
113
78
117
52
87
121
120
105
80
78
103
92
93
102
80
156
115
96
102
157
69
72
80
120
94
123
104
142
99
78
109
145
80
83
176
119
43
145
147
97
156
54
52
69
57
117
88
128
136
104
140
150
113
110
90
76
87
83
117
82
109
96
80
96
129
152
99
74
69
87
109
80
131
69
175
113
154
87
128
154
74
113
126
134
93
80
155
128
109
72
72
146
88
134
80
115
78
121
73
76
109
175
163
88
115
80
93
88
144
151
139
125
107
83
72
118
150
120
155
151
66
85
94
154
127
109
90
154
99
111
92
91
89
113
137
101
156
69
119
109
99
83
88
76
139
73
95
78
69
80
157
136
87
122
95
64
79
108
58
155
119
72
102
102
131
137
116
119
80
98
54
101
107
132
145
87
106
85
113
175
136
154
94
164
110
92
143
76
119
107
120
76
113
91
154
121
95
100
106
80
130
124
74
104
79
76
74
156
156
123
93
76
87
80
89
110
76
76
80
88
95
56
69
145
155
110
87
131
120
128
174
69
116
128
87
93
78
76
91
69
69
120
175
143
98
113
80
78
156
126
89
73
54
130
138
101
94
128
144
113
109
110
118
89
102
76
93
89
178
88
118
114
108
120
112
107
109
76
69
149
112
96
78
69
104
72
159
80
69
95
163
109
89
110
94
175
120
181
88
74
85
134
197
87
154
156
88
76
175
144
175
78
66
100
151
104
197
80
117
112
151
80
128
118
138
175
155
99
88
122
92
115
87
133
143
104
145
122
143
87
74
69
74
91
134
146
163
89
106
109
80
78
80
91
83
156
118
120
69
88
89
133
119
140
117
80
147
120
54
96
119
175
90
74
83
89
76
93
102
80
122
157
87
89
147
76
120
132
80
52
101
93
128
78
116
110
54
146
146
88
54
102
121
104
137
78
93
78
93
155
87
99
102
87
109
88
110
112
93
145
119
78
94
109
80
112
87
72
121
107
109
109
126
74
175
155
117
104
54
78
155
162
87
154
175
109
154
129
87
120
69
90
89
125
113
140
130
134
99
54
89
154
118
80
99
100
119
97
80
124
133
176
136
134
69
113
88
100
76
100
109
87
88
78
90
93
131
87
91
117
122
98
160
87
121
175
115
75
113
151
75
147
157
163
134
151
87
112
174
69
80
78
107
144
72
80
101
107
132
164
43
69
115
99
64
122
112
76
80
110
99
175
78
127
99
117
88
107
119
106
126
101
119
113
127
96
76
147
109
155
80
116
78
89
69
80
110
101
69
59
69
121
80
110
80
99
96
151
104
120
87
90
127
134
69
119
80
106
183
109
99
93
69
101
80
80
69
112
72
121
136
88
149
76
107
80
119
131
104
80
154
87
79
116
125
80
104
76
69
69
145
119
120
101
96
106
96
151
88
132
131
69
78
144
126
106
87
132
87
93
111
67
93
87
121
87
127
69
109
90
99
79
68
118
63
119
139
81
106
80
175
110
80
69
85
93
142
91
76
69
131
119
80
107
126
87
151
103
94
131
89
88
89
160
153
119
58
118
103
128
92
128
90
128
80
69
107
76
97
72
89
99
133
113
154
69
112
80
106
94
166
113
118
120
125
165
140
199
124
72
80
131
74
107
100
100
87
110
89
131
80
109
127
124
156
115
73
69
105
80
96
88
76
71
112
120
105
102
80
107
94
131
119
76
109
107
131
104
136
67
128
140
142
72
104
117
146
155
69
87
175
131
164
136
132
92
117
112
109
131
138
78
80
83
87
111
93
134
153
148
107
80
104
119
131
126
107
103
131
80
126
101
72
102
100
87
94
94
154
126
94
119
122
120
140
87
122
69
175
117
109
101
87
130
154
130
121
149
69
134
60
72
136
113
80
75
80
94
153
90
144
80
128
103
131
113
76
129
89
110
145
175
112
128
80
76
80
124
88
119
52
118
155
87
69
156
89
119
136
120
120
110
80
54
127
87
80
127
104
131
79
80
132
74
156
121
83
100
80
109
80
80
98
80
136
80
174
88
106
175
175
94
156
119
69
89
175
119
127
140
57
146
72
78
134
172
118
78
128
87
71
89
106
101
148
95
78
141
87
80
125
134
175
56
85
78
163
78
87
99
94
80
88
100
119
69
99
175
80
80
88
69
59
113
163
94
120
163
112
87
78
95
175
87
80
89
111
107
80
121
80
87
93
109
120
69
118
102
112
104
115
69
80
69
80
144
72
80
78
133
133
111
100
131
164
72
78
78
108
83
105
99
175
131
80
88
104
79
137
72
87
80
69
160
119
110
141
81
112
155
126
106
129
128
156
93
81
80
154
120
99
117
96
97
175
87
92
88
88
175
112
142
104
125
80
151
114
78
76
101
101
87
88
119
88
165
106
87
101
119
90
112
87
179
91
87
106
83
106
166
109
79
106
80
175
113
107
109
172
78
140
121
107
112
87
162
133
78
87
89
84
109
129
129
117
56
156
76
80
108
69
119
106
121
99
72
80
87
175
175
75
154
104
57
151
80
122
87
111
106
69
58
79
156
132
119
85
56
57
87
78
93
98
84
94
156
117
89
138
117
94
119
101
87
155
64
140
99
118
76
100
83
89
77
110
82
149
80
96
87
102
154
199
110
141
140
131
80
87
102
119
175
128
107
110
83
107
163
156
107
120
150
201
151
142
147
157
110
134
134
88
80
76
78
88
120
56
126
92
74
156
69
110
96
120
120
106
69
107
88
113
175
139
104
154
87
97
134
128
133
88
147
97
155
76
80
132
76
157
43
69
112
86
78
80
74
98
80
69
69
83
69
104
99
120
107
90
147
82
197
76
150
126
106
78
96
119
94
87
119
107
154
88
99
99
99
129
116
111
104
119
81
69
119
199
85
90
127
88
127
121
96
91
72
118
117
80
89
119
120
87
145
153
151
80
93
87
120
143
156
121
109
99
110
115
171
87
91
84
113
93
201
78
134
166
69
113
99
93
123
129
93
80
72
80
80
72
54
87
120
82
76
128
107
119
187
69
123
94
128
87
54
120
78
105
104
106
121
175
87
92
74
114
112
155
120
78
117
130
78
121
92
176
76
122
79
89
80
76
76
119
101
132
87
139
99
157
77
69
94
87
101
140
89
112
124
107
118
78
69
114
136
54
87
187
127
59
56
151
164
89
111
117
147
135
148
69
163
126
129
93
112
80
78
87
131
111
78
100
128
147
125
76
106
93
175
87
76
126
118
96
169
112
80
112
110
119
69
87
169
147
117
79
56
183
117
79
153
152
89
111
113
156
79
113
75
119
80
99
80
87
80
88
87
82
148
164
175
124
111
93
114
99
69
56
75
102
103
129
130
156
104
134
102
76
78
129
80
97
112
119
131
87
87
78
95
101
156
136
78
111
120
94
172
78
80
113
157
127
67
121
111
127
140
121
80
133
95
141
101
111
120
78
87
113
88
134
120
107
104
88
134
140
129
69
119
155
172
150
88
142
126
145
54
125
120
69
87
106
156
102
103
128
110
80
154
93
175
76
113
110
110
78
136
136
80
165
72
91
130
152
69
119
93
131
197
183
90
75
52
133
96
147
80
80
112
115
137
72
56
80
122
67
89
89
119
78
151
106
136
87
175
122
80
80
105
143
175
106
128
109
80
76
147
80
124
159
154
127
115
76
69
98
121
69
148
87
154
94
107
100
128
69
110
136
80
126
80
88
163
88
107
94
94
87
151
76
115
80
197
76
150
95
141
128
144
76
104
131
58
99
80
87
128
78
78
69
87
78
143
119
119
76
111
80
142
87
107
121
151
150
175
99
87
93
78
69
72
156
106
136
130
122
113
76
119
76
96
109
85
76
102
172
76
175
175
123
145
110
85
72
106
101
87
165
94
127
85
128
69
110
133
83
105
69
119
118
124
169
128
52
56
132
89
76
113
67
93
120
116
102
80
98
127
76
80
156
175
69
94
52
130
92
80
146
96
144
154
80
93
107
118
154
134
67
93
136
87
121
151
91
109
136
119
85
89
128
164
138
100
89
99
156
123
125
88
145
111
163
120
111
80
85
117
175
117
117
105
140
128
87
89
89
134
158
120
112
101
76
146
175
109
118
110
127
80
148
80
78
163
103
113
69
82
78
99
109
69
78
89
80
76
140
119
69
172
87
125
107
143
100
124
106
99
107
76
87
80
76
72
98
102
104
96
76
78
72
114
76
80
122
107
145
80
72
99
146
80
120
104
87
115
132
114
69
128
80
123
127
89
127
76
78
80
74
88
127
89
136
76
137
120
125
144
131
78
87
114
121
136
150
141
92
54
78
103
74
144
104
104
120
80
137
80
102
95
110
136
94
100
87
78
78
128
127
69
99
119
84
117
89
142
107
90
76
138
78
88
52
148
72
93
80
136
104
104
96
69
128
76
156
80
131
119
106
133
93
119
108
157
110
69
88
80
110
94
100
130
105
119
109
87
124
69
72
80
80
104
108
144
108
87
52
146
99
80
104
110
117
131
106
84
87
117
76
128
156
106
154
96
119
114
69
89
154
98
104
76
151
134
130
117
76
117
154
119
94
106
197
94
101
150
154
99
128
87
102
131
164
69
69
163
76
157
99
119
123
87
108
131
117
105
69
75
80
96
99
94
70
69
172
128
106
154
178
88
128
142
131
128
132
88
131
138
107
78
87
87
120
69
187
106
80
123
128
152
102
107
208
76
88
54
88
93
80
52
107
80
80
69
76
69
69
107
136
151
136
130
129
87
87
68
95
154
134
119
76
125
101
120
136
128
80
155
140
87
93
91
69
87
123
76
75
73
82
113
154
140
94
69
69
118
87
111
104
80
147
72
80
69
80
104
69
151
117
93
106
71
122
91
72
88
79
100
89
69
107
118
76
69
119
69
143
93
120
143
88
72
136
80
108
154
78
74
102
111
69
87
88
80
109
134
120
115
136
130
76
85
133
78
140
136
103
175
118
88
102
87
69
119
134
96
67
71
154
137
127
106
116
87
98
122
126
89
106
106
155
110
96
72
89
94
78
87
114
128
87
97
102
106
74
93
113
122
136
76
118
100
136
87
138
78
107
109
126
91
88
201
110
134
159
104
81
122
96
87
78
128
102
80
154
52
54
78
121
119
107
52
124
88
72
93
110
89
71
83
80
119
136
76
131
111
80
115
169
117
149
118
78
144
143
133
155
163
98
145
113
90
99
80
121
110
112
72
107
68
127
69
87
80
149
99
96
69
107
110
114
76
114
91
147
129
79
81
52
110
143
80
84
119
120
78
101
80
119
93
106
110
80
89
197
96
102
197
99
102
119
175
154
113
100
78
109
100
93
69
122
123
104
89
120
88
94
79
58
128
132
103
94
78
69
136
104
56
89
96
118
91
155
151
175
140
96
87
140
104
87
109
185
87
80
109
119
121
72
86
80
136
128
78
69
128
80
83
87
124
54
69
102
120
151
101
87
121
115
87
113
93
80
132
87
155
104
175
91
104
87
87
80
71
87
82
142
120
175
85
80
107
91
107
156
97
76
80
99
151
69
196
56
87
88
111
134
80
78
76
100
116
119
131
110
117
127
99
100
163
140
140
119
87
132
129
85
88
110
69
157
99
152
140
92
58
117
197
78
109
96
119
140
121
69
117
110
104
154
109
107
154
80
122
69
119
124
110
104
148
99
80
97
93
104
125
90
80
120
96
154
80
117
74
103
127
87
113
69
142
95
78
96
94
84
112
87
136
69
88
89
94
66
69
78
104
95
106
92
130
137
128
84
72
112
169
78
69
134
88
110
107
163
89
80
80
123
78
76
119
154
69
107
197
91
87
119
123
80
117
67
104
87
112
119
88
82
112
69
89
175
99
93
154
155
115
103
69
69
96
134
88
78
156
107
57
109
101
136
76
56
138
111
78
100
69
120
69
113
76
113
102
69
107
80
154
93
88
109
154
100
120
119
83
160
69
129
54
162
80
100
69
151
164
109
125
134
56
154
119
104
43
131
119
117
131
174
133
102
92
91
56
108
88
154
131
99
163
164
80
89
142
110
110
119
129
93
99
155
80
87
87
56
136
128
163
130
104
109
88
100
85
139
175
99
120
63
78
114
155
78
136
128
94
80
80
145
128
80
80
121
69
104
89
131
126
80
52
96
101
109
93
76
164
88
154
104
100
130
104
80
103
107
80
125
94
80
69
69
76
90
99
88
93
76
76
80
145
69
124
175
126
146
126
106
89
117
94
87
104
131
145
120
80
76
160
87
80
161
69
76
131
139
95
52
101
109
112
80
161
99
106
76
130
96
107
154
164
138
110
125
134
118
87
69
109
94
131
107
69
88
120
80
76
130
80
87
197
87
93
104
72
88
101
145
144
136
87
216
124
121
87
163
92
80
115
80
80
90
78
119
149
122
104
139
69
76
79
187
156
102
134
89
54
91
107
80
128
80
155
109
101
57
89
128
102
143
93
164
78
71
80
119
116
80
129
123
128
107
69
80
69
105
78
109
80
104
107
175
101
99
81
69
69
91
128
69
76
93
112
166
94
113
134
121
114
127
99
83
104
154
136
127
88
80
87
109
128
54
127
112
102
131
130
80
109
83
69
93
119
124
109
127
76
125
87
154
122
64
80
109
131
76
80
94
69
127
88
134
115
104
110
76
56
146
154
103
69
103
78
52
69
128
154
109
70
95
69
79
132
125
119
131
69
121
73
71
69
146
96
146
120
69
69
140
109
175
54
110
74
136
117
111
100
72
87
91
104
140
103
126
145
80
78
117
67
88
76
126
144
164
113
94
80
94
100
118
74
143
87
109
143
103
113
80
128
99
174
133
80
131
69
119
127
97
175
87
80
80
78
115
107
178
131
78
122
150
197
138
110
115
115
69
107
78
130
128
117
99
134
87
87
69
162
163
89
76
80
87
80
133
69
154
88
119
93
69
113
145
119
126
114
88
69
80
143
120
87
128
102
87
71
76
143
127
175
80
119
87
107
127
96
109
95
87
119
88
99
96
197
69
144
76
104
175
80
119
74
103
106
99
146
112
93
80
110
151
106
96
76
98
69
69
155
85
56
109
72
154
76
74
69
69
117
120
92
80
102
94
148
155
87
113
109
104
146
126
80
83
69
197
92
80
131
87
110
95
72
66
109
113
152
89
87
89
120
94
87
139
118
88
76
106
77
120
121
125
69
69
72
119
87
72
144
113
91
80
78
112
151
99
120
99
88
154
120
59
143
89
69
87
164
106
104
101
96
78
87
87
88
78
145
87
106
69
80
119
75
89
64
107
112
66
118
91
159
154
128
143
109
56
161
78
197
131
89
98
131
112
145
69
115
78
85
91
119
69
145
96
114
134
54
76
96
69
109
132
76
80
131
87
74
137
146
72
69
115
82
76
120
80
149
134
159
101
156
157
94
87
104
149
120
87
69
75
99
128
87
111
69
89
139
91
155
100
175
80
115
87
113
120
78
123
134
76
121
112
76
117
80
154
95
183
175
146
119
82
80
95
153
115
147
126
80
134
80
78
99
136
119
80
104
54
104
52
156
88
117
69
109
131
92
80
69
129
112
139
83
128
87
95
80
80
120
56
110
74
78
74
94
71
80
91
80
102
126
69
139
113
78
80
87
175
69
88
155
89
156
99
80
85
74
99
130
125
99
87
140
138
161
72
88
140
89
96
119
97
110
78
122
119
142
102
112
96
102
134
128
130
199
78
118
87
100
69
80
99
89
112
87
80
113
78
104
113
87
99
114
128
83
69
151
126
110
80
80
80
88
87
74
151
125
102
69
140
112
115
52
128
91
80
78
140
78
69
60
141
136
119
134
69
144
123
76
88
80
106
158
87
138
80
54
151
115
80
80
76
76
124
99
94
113
134
125
94
134
106
69
134
103
143
56
104
80
101
92
154
69
128
143
143
80
119
91
99
107
119
114
96
175
69
83
98
72
154
127
133
119
129
131
174
83
175
115
144
80
80
76
80
147
80
120
91
80
127
69
83
106
80
52
140
144
69
128
120
120
131
88
114
143
120
90
69
98
106
69
154
69
117
72
97
160
69
154
87
76
128
128
89
99
87
58
128
162
136
120
140
122
76
122
87
87
94
120
197
67
88
69
78
106
80
111
80
76
87
80
121
197
52
114
75
136
96
113
140
69
69
99
128
125
69
106
43
76
99
69
80
104
97
108
99
76
96
107
80
80
115
113
112
175
107
154
121
83
160
69
87
119
96
177
166
96
156
119
99
154
54
115
118
69
127
136
109
69
144
197
83
59
69
99
115
72
80
110
81
80
119
90
80
80
211
175
91
87
131
88
88
99
80
87
107
76
136
160
117
121
69
80
93
78
128
106
164
113
80
80
96
113
157
126
134
114
155
124
134
89
131
144
87
128
96
88
146
87
127
115
80
115
114
120
69
94
175
88
136
76
74
80
98
136
134
80
58
136
197
120
140
80
130
59
80
78
76
59
151
78
99
113
107
137
110
71
104
113
100
155
140
54
80
113
78
69
88
99
110
89
150
94
64
107
144
96
119
78
117
104
107
106
80
124
175
72
69
145
107
72
124
56
66
72
164
78
54
99
99
128
131
80
91
80
128
122
87
174
156
69
98
75
159
72
99
109
101
128
123
88
78
126
76
126
125
80
69
78
185
99
136
163
117
119
75
107
87
80
143
169
129
92
145
87
154
128
99
175
122
69
80
114
156
69
141
121
119
157
128
87
197
119
104
90
118
80
100
110
88
116
112
151
118
110
120
84
112
76
89
69
115
155
130
140
131
78
80
136
117
90
107
52
128
119
136
80
75
99
113
156
104
119
145
80
92
156
87
98
131
88
67
94
137
101
87
69
99
76
80
74
88
99
69
113
136
136
80
87
101
87
54
89
80
78
158
111
80
107
69
110
87
82
136
56
117
104
126
93
128
101
156
109
120
87
69
74
78
106
110
87
120
56
94
88
69
152
131
100
69
76
78
127
127
74
175
155
185
72
128
80
126
118
78
174
154
78
119
118
89
80
148
175
76
175
131
141
100
127
87
136
87
80
75
122
130
107
157
147
121
91
136
116
85
106
120
142
80
132
96
122
69
126
80
72
174
76
69
100
98
89
80
89
69
80
79
175
136
107
110
109
114
87
131
80
109
89
87
118
146
95
91
119
89
131
107
78
114
123
154
124
120
136
98
104
52
99
79
87
155
96
88
118
98
66
129
123
89
140
183
112
119
78
110
121
136
87
155
128
99
94
137
80
96
121
146
101
140
149
87
120
109
96
187
85
87
87
78
120
112
154
78
120
118
124
54
130
80
111
99
76
69
88
80
89
151
128
138
154
69
68
93
156
175
110
124
140
87
113
52
114
78
148
123
140
94
145
109
112
154
98
88
119
91
127
197
129
88
76
94
149
160
122
110
99
120
97
110
91
109
87
138
112
129
120
60
69
137
127
76
104
115
69
114
87
87
96
127
128
146
120
88
96
78
154
115
95
54
69
107
108
80
104
88
140
89
148
138
104
87
157
69
175
147
119
96
74
99
69
69
156
78
69
100
117
175
118
80
87
120
96
69
85
100
89
163
78
175
106
69
94
125
95
128
76
69
128
76
72
107
147
156
78
69
146
121
113
56
88
128
85
163
69
74
73
110
114
197
140
132
91
108
106
136
80
87
94
157
87
69
137
74
88
78
174
151
69
80
109
107
132
76
94
128
115
126
117
107
94
128
107
111
76
120
106
145
69
112
93
187
175
120
109
134
78
132
80
93
93
74
119
80
66
80
118
137
87
110
100
111
89
116
120
76
128
69
120
121
76
69
146
121
80
64
112
121
87
60
76
94
151
98
82
67
83
74
121
80
69
74
119
85
78
130
67
98
87
69
95
113
93
76
91
69
93
130
100
164
113
144
119
117
80
101
118
106
119
115
119
72
69
154
94
83
146
80
102
80
104
121
155
110
105
87
69
87
85
90
80
80
136
86
120
78
87
130
69
117
99
100
88
175
76
187
126
146
66
103
134
88
71
135
137
111
80
73
104
80
121
106
137
114
78
102
110
104
94
137
137
112
87
109
156
119
197
132
72
140
96
119
137
113
85
119
72
99
69
80
197
78
91
123
76
89
110
162
128
197
66
87
112
80
64
128
162
119
113
76
138
87
145
69
110
72
52
139
78
87
151
140
155
176
93
76
88
155
150
99
80
56
124
120
78
109
76
76
87
128
80
76
163
91
87
81
92
140
114
76
112
78
100
76
78
93
74
96
78
69
72
140
118
67
80
118
100
122
145
92
127
78
54
119
54
102
94
105
66
80
64
137
69
157
102
110
96
132
80
63
75
96
80
114
69
69
121
143
93
109
52
138
112
119
100
117
102
80
96
93
115
119
102
110
141
91
120
137
132
94
126
69
140
52
88
121
120
119
98
88
76
106
96
87
91
80
109
90
80
87
148
151
99
101
104
76
93
76
93
118
128
157
78
177
78
87
76
69
106
76
80
103
94
136
52
117
156
101
80
99
114
151
81
76
96
76
121
102
78
159
111
119
96
80
68
88
113
125
88
73
101
88
136
76
71
69
96
119
76
113
69
69
112
124
197
119
80
154
128
134
112
137
119
153
76
119
109
120
87
121
69
84
120
82
76
111
107
113
148
121
91
82
100
109
127
156
56
87
106
79
156
122
89
69
183
96
80
93
136
126
43
69
121
138
199
80
89
175
105
139
118
78
131
174
106
123
102
80
133
83
146
111
72
175
76
115
85
75
136
91
112
175
103
120
72
80
117
69
69
74
87
88
126
130
107
122
122
69
94
75
132
89
107
88
94
136
69
154
117
102
145
67
113
146
146
75
80
89
127
197
119
122
131
118
91
145
152
140
107
140
64
68
175
143
87
80
121
104
113
120
127
56
156
87
185
69
148
104
87
87
104
69
94
112
87
112
94
136
87
152
127
120
76
197
107
128
122
78
87
83
109
92
108
110
134
134
80
76
97
110
79
119
156
112
125
72
128
123
131
85
96
111
92
69
93
76
76
90
121
120
78
141
152
119
94
103
78
100
80
154
80
76
107
102
127
113
76
119
140
145
88
96
85
87
164
80
69
59
78
112
87
113
129
104
120
120
87
119
77
69
140
69
99
124
88
66
71
111
103
80
111
89
175
54
67
58
95
76
94
117
145
80
78
94
82
175
93
87
88
131
154
131
145
80
107
85
52
69
88
120
131
108
110
142
80
109
104
91
140
96
80
78
144
143
110
154
76
107
141
80
175
115
94
183
80
125
110
126
101
78
88
114
138
76
155
155
134
175
93
87
89
117
87
120
87
94
151
88
197
128
91
102
86
118
128
101
74
102
80
94
149
110
54
89
99
109
80
69
80
91
119
88
126
166
88
69
80
74
79
69
140
87
72
154
76
87
93
119
119
97
80
92
71
100
146
69
101
133
83
102
120
104
127
129
112
56
99
80
69
74
102
76
136
111
155
145
76
80
100
94
120
132
91
120
69
121
104
120
132
66
151
102
106
69
72
94
131
69
69
103
145
120
85
136
110
119
150
64
155
131
146
131
87
107
69
154
96
73
87
98
80
130
119
81
107
125
197
80
104
76
121
80
90
160
80
175
76
117
134
87
107
96
108
101
64
151
101
117
122
112
136
72
78
88
92
113
128
90
128
154
94
106
104
91
129
102
120
76
147
119
107
144
147
133
111
88
107
107
104
74
127
113
131
94
76
109
89
105
91
80
76
114
95
78
78
110
106
98
145
128
89
76
56
106
93
89
80
113
103
155
154
142
124
127
128
107
69
102
119
83
127
114
87
130
76
174
119
83
127
102
197
99
131
166
104
124
118
113
72
157
112
125
78
86
69
133
88
175
69
107
120
94
112
131
78
130
107
69
105
106
96
143
63
80
79
146
85
89
80
104
93
134
167
99
124
80
111
78
152
69
107
127
58
109
125
174
149
154
80
131
125
121
175
94
56
69
69
95
137
127
87
79
109
69
148
107
146
146
69
112
87
132
81
90
67
128
63
90
155
113
119
123
144
59
155
106
69
137
80
80
165
128
80
100
133
107
126
131
100
121
134
124
101
145
148
78
108
113
137
197
94
133
134
110
117
151
110
91
80
52
78
72
112
112
120
155
95
72
89
69
83
101
138
80
52
142
89
127
137
128
120
80
107
164
112
163
89
104
76
120
87
69
136
120
75
156
74
109
134
175
154
87
76
99
78
121
102
174
131
79
85
109
69
80
93
107
142
155
127
140
109
145
140
119
126
121
121
96
69
72
88
90
132
134
104
76
100
146
112
160
175
87
122
110
156
74
87
99
109
101
80
94
88
78
100
140
185
69
99
175
91
138
141
154
54
149
88
146
112
107
54
78
119
78
118
74
175
84
69
122
124
87
108
90
85
121
112
136
123
102
144
87
118
87
66
80
88
106
132
106
120
123
128
143
78
138
143
154
78
52
138
119
92
69
111
85
136
151
87
78
109
80
145
107
134
95
146
150
181
101
128
78
96
80
102
69
126
72
80
96
115
94
87
163
91
112
107
52
112
121
120
156
121
69
69
117
69
80
155
107
80
99
161
120
101
96
108
104
139
80
117
69
142
117
107
69
121
147
119
88
76
78
93
131
72
80
121
106
101
142
43
89
123
110
80
88
135
134
99
85
117
101
100
80
94
112
88
140
109
119
136
98
147
89
92
87
91
103
131
145
154
107
76
86
69
69
136
117
54
56
69
80
76
110
80
96
69
113
80
69
118
54
134
107
114
94
87
146
110
132
140
197
96
72
76
69
80
153
67
69
140
175
122
153
87
151
120
80
143
98
107
78
76
128
111
128
123
120
127
131
74
112
98
136
104
92
111
69
88
136
130
80
100
136
109
181
76
72
119
175
78
78
107
93
76
199
144
136
94
69
140
136
69
85
120
90
69
109
91
103
78
95
131
80
124
89
95
78
67
69
78
142
174
156
94
114
76
102
128
76
100
94
120
120
59
102
120
89
69
119
94
69
83
80
148
175
80
136
80
115
106
80
102
76
163
89
80
88
89
80
110
69
90
69
76
69
175
115
175
87
114
107
96
128
99
87
80
90
127
72
69
133
118
80
113
76
120
69
175
104
80
142
91
122
87
134
101
87
78
88
69
106
131
137
76
104
123
129
120
99
94
109
104
132
54
72
178
124
100
113
76
113
80
112
87
151
69
117
69
80
155
127
120
128
69
80
52
107
99
101
146
175
127
101
143
109
95
120
80
128
80
91
87
109
79
69
106
80
69
117
81
74
120
76
76
151
95
87
175
87
102
56
54
76
99
95
119
120
101
131
120
102
155
83
108
112
101
92
121
181
69
120
69
105
119
101
80
69
181
87
76
87
175
69
69
87
69
120
197
74
107
121
127
109
98
107
117
67
71
131
112
140
130
119
201
54
80
152
76
127
89
107
112
161
93
109
112
78
92
129
119
119
119
76
120
88
99
135
99
104
154
120
80
94
146
108
103
163
118
100
54
69
80
72
181
119
109
103
78
93
80
112
107
76
117
100
107
80
78
76
119
201
74
78
78
182
155
106
119
69
115
175
147
89
140
76
69
113
102
87
76
130
80
128
151
119
98
107
135
142
114
144
99
144
54
134
122
96
89
103
100
120
71
121
120
127
96
134
109
116
143
109
90
69
121
104
143
80
119
43
101
72
104
99
106
142
69
145
157
104
59
196
119
133
101
78
125
140
64
69
109
108
110
99
128
109
114
127
69
110
154
128
134
110
69
80
131
89
128
106
127
69
115
156
69
117
87
129
78
103
146
52
79
131
80
93
89
83
76
169
80
69
107
78
78
119
124
110
89
102
80
78
90
136
85
121
156
99
80
89
131
76
115
115
78
82
69
131
88
87
96
110
155
126
72
79
76
151
121
146
125
128
131
52
69
69
89
138
121
80
87
76
94
119
102
110
118
118
119
121
95
113
72
154
109
109
120
120
69
86
69
143
88
72
110
175
87
164
106
113
101
120
93
122
96
80
106
104
66
74
80
154
56
90
124
109
118
112
121
72
89
119
144
85
110
78
128
130
148
117
119
140
115
120
76
89
76
76
106
106
78
109
122
87
103
104
88
71
120
138
69
175
138
80
94
138
76
76
80
87
80
181
78
119
78
115
133
132
105
128
87
93
87
100
136
94
156
147
72
117
119
115
105
128
96
136
122
125
80
78
109
124
72
74
164
74
80
76
91
94
94
117
153
78
99
111
99
76
103
77
143
142
119
119
133
83
117
137
99
175
119
80
140
142
89
106
102
80
90
110
121
112
80
93
89
69
89
106
78
149
80
111
174
121
139
137
69
69
115
152
80
110
94
78
78
119
75
151
87
69
80
145
109
144
88
107
139
107
121
117
128
87
186
87
140
94
69
111
72
156
137
114
113
91
120
107
99
107
159
99
110
129
72
69
119
155
113
82
112
163
143
80
93
76
113
121
80
87
78
94
104
137
148
54
85
107
104
78
57
80
112
127
113
80
109
131
175
93
78
155
107
80
58
87
69
78
163
160
96
103
103
123
114
66
102
87
134
107
107
113
115
133
114
71
93
96
183
113
109
80
73
140
175
118
120
87
132
119
164
93
101
98
43
80
69
136
127
80
91
110
80
91
78
111
110
128
150
131
125
68
91
98
114
69
154
121
128
148
80
175
119
123
80
113
119
80
133
113
148
80
100
155
69
120
103
136
157
91
154
69
96
107
76
64
138
54
155
152
112
83
80
130
144
80
148
107
135
110
117
80
110
148
199
117
87
56
105
76
93
74
115
125
113
117
127
154
131
101
90
128
197
163
110
96
154
128
106
109
150
128
109
69
91
117
114
134
94
109
116
114
110
154
107
144
98
119
132
128
93
140
78
113
123
124
119
105
127
87
121
80
154
69
75
121
155
134
93
107
69
161
109
85
99
97
91
130
80
110
131
128
158
110
99
110
151
106
87
87
134
98
129
114
69
133
117
117
71
93
136
125
112
99
88
124
106
134
85
87
154
80
69
87
80
121
94
106
112
107
84
155
96
119
185
130
89
89
109
87
94
131
95
78
76
102
87
85
154
137
87
106
106
87
69
156
145
88
80
91
88
69
136
78
101
96
128
80
69
80
129
54
175
128
94
80
129
100
127
105
154
115
100
151
95
110
104
94
102
131
80
117
128
72
120
164
63
137
126
69
83
80
146
136
112
108
66
128
126
69
119
89
56
128
125
146
127
144
104
77
106
69
72
80
128
99
88
175
123
131
88
80
119
152
146
72
120
78
89
110
69
67
113
131
100
110
151
105
69
76
112
89
107
78
146
131
151
76
102
79
119
121
115
109
128
166
197
127
129
67
110
185
69
120
134
80
163
132
117
105
104
120
96
119
69
106
131
162
87
52
107
67
121
106
197
175
181
118
109
80
72
109
94
128
91
121
109
134
69
80
69
89
109
76
99
126
125
171
117
129
124
78
78
74
87
91
107
157
119
101
104
52
179
98
122
78
78
72
155
107
122
131
104
69
111
111
126
69
89
98
69
115
134
87
128
89
76
108
80
69
78
102
100
52
69
80
85
69
80
94
120
164
76
115
120
69
93
94
136
175
137
111
78
80
128
80
69
102
54
79
80
132
119
80
127
94
119
87
69
147
78
140
116
119
79
150
131
74
120
90
105
69
126
115
69
128
93
111
113
69
148
131
80
121
74
83
107
89
197
102
110
109
114
140
58
102
69
107
69
104
174
122
106
78
76
119
93
131
82
88
120
80
78
89
175
78
119
104
110
138
104
78
80
136
163
80
120
144
133
125
80
131
101
183
87
80
134
121
71
93
78
80
107
87
146
99
88
139
80
154
80
59
175
162
143
115
80
58
89
135
155
134
59
72
93
100
99
80
140
88
75
134
119
107
113
95
80
69
72
110
56
80
131
151
175
99
80
117
98
80
109
147
88
78
113
113
199
68
89
128
146
106
100
99
69
99
69
120
124
80
69
117
80
181
69
104
111
120
59
105
157
96
115
69
80
87
156
121
102
89
80
98
127
78
137
130
140
76
120
114
99
114
99
69
93
121
91
98
89
126
145
76
78
136
94
147
80
76
69
101
102
104
183
78
134
101
88
80
197
115
134
107
106
125
127
93
123
94
100
83
69
155
94
118
117
80
154
89
131
128
87
88
69
130
97
97
77
110
91
120
72
87
120
137
109
87
143
129
104
144
80
143
54
128
69
69
80
140
109
137
115
156
95
124
101
148
131
92
72
104
94
92
109
80
89
80
83
96
125
119
87
87
69
106
98
89
102
112
80
175
106
118
119
154
96
129
156
122
69
94
96
148
80
154
80
80
94
102
80
111
111
144
123
110
146
145
87
69
113
133
117
166
76
140
110
121
75
88
112
88
131
110
93
78
124
80
117
151
127
88
89
69
119
87
100
175
183
99
99
109
93
131
129
107
131
104
99
85
80
76
109
98
69
80
87
94
131
93
117
114
124
91
87
147
140
113
88
175
94
76
115
91
96
99
120
123
80
79
136
113
91
96
83
117
87
102
89
123
159
155
140
80
87
69
89
117
100
78
133
136
155
112
67
122
80
89
69
175
107
96
100
104
157
125
140
134
95
80
80
80
67
78
131
110
56
78
106
99
99
104
138
69
119
112
136
119
78
126
88
79
127
119
119
69
106
88
99
66
107
127
87
151
124
110
104
78
119
94
142
94
140
87
113
80
119
197
80
120
88
144
80
128
199
119
175
99
155
136
119
127
56
78
96
78
69
119
69
122
128
154
134
54
102
145
107
119
81
117
119
136
145
129
91
80
119
89
120
131
80
89
109
69
107
87
88
137
74
174
106
148
143
91
118
129
72
98
125
101
107
120
74
109
147
80
69
56
99
69
166
175
131
130
102
119
87
89
80
96
76
88
96
156
119
87
93
88
76
88
148
120
87
151
80
104
114
80
119
101
154
163
123
77
100
80
143
129
99
113
122
54
88
112
109
91
115
104
97
115
150
80
66
78
69
104
76
93
80
96
175
145
106
72
80
119
73
120
78
88
94
129
136
172
83
104
80
72
139
104
146
121
87
143
106
106
87
84
138
87
134
154
111
109
181
80
96
72
164
56
128
118
115
123
121
175
123
94
69
107
122
107
124
43
88
117
99
148
87
87
96
81
92
106
76
107
154
88
85
113
156
78
94
127
78
121
147
154
112
99
99
154
121
123
66
140
156
69
80
56
88
78
169
175
114
95
80
99
154
80
110
109
118
99
134
136
121
101
76
129
78
93
112
101
87
79
175
69
127
72
137
163
76
72
126
95
114
74
87
166
93
156
120
127
154
115
71
172
146
109
69
154
120
154
107
112
174
136
134
69
119
175
110
105
108
106
110
156
166
80
96
78
117
145
89
85
98
85
140
76
94
118
109
76
72
93
122
80
110
154
128
69
80
142
136
78
140
120
80
101
87
80
89
94
93
76
96
80
80
112
76
80
78
151
76
120
97
112
154
128
94
130
123
72
87
136
136
71
74
113
85
76
106
175
87
107
107
119
76
81
114
89
78
54
160
175
93
157
148
89
89
126
78
134
110
155
91
54
136
134
159
69
147
111
140
137
164
101
68
117
119
155
80
94
96
116
107
152
69
99
119
74
87
120
140
72
146
124
125
118
99
109
175
144
78
96
160
94
104
195
169
87
99
87
69
72
78
154
113
87
80
76
154
110
80
107
82
76
74
76
74
150
119
76
152
87
83
80
80
88
106
69
56
145
87
125
75
134
136
76
149
131
93
187
95
99
106
92
129
104
112
123
88
145
107
113
102
83
95
144
119
80
128
149
87
69
155
93
89
91
80
117
96
99
100
142
160
145
113
89
72
76
76
113
87
128
89
103
110
69
99
89
122
155
87
76
69
69
110
110
117
109
83
78
87
76
119
74
76
115
163
118
129
80
137
78
112
107
90
72
105
78
145
76
136
136
119
100
163
103
111
130
175
69
80
104
69
80
99
69
80
96
127
146
102
98
80
158
109
76
99
119
128
69
174
96
101
131
80
117
120
140
175
60
122
118
145
136
100
155
122
80
57
151
121
109
153
104
102
152
109
99
52
127
145
119
89
80
104
107
43
87
130
88
119
72
112
85
175
104
101
80
87
80
87
94
117
110
163
74
64
69
128
111
122
165
130
154
134
106
93
68
137
71
128
69
146
80
69
80
128
175
117
76
197
96
91
76
85
120
128
117
123
78
113
131
69
117
175
78
87
129
85
106
117
145
103
92
43
78
141
69
76
69
175
75
78
128
93
109
107
111
76
94
120
151
101
56
113
78
197
78
151
69
148
89
80
69
69
100
97
205
87
80
102
129
78
107
125
128
99
108
86
175
147
76
144
119
91
91
88
131
66
93
112
151
76
69
112
121
123
125
80
117
197
78
136
93
89
117
88
109
80
93
109
96
101
113
80
110
106
101
120
120
109
87
136
99
119
126
175
165
106
52
85
134
88
143
87
153
96
106
95
76
209
174
69
100
197
89
52
87
76
104
151
117
76
76
74
131
141
154
80
134
80
78
101
109
145
80
87
72
107
118
88
175
109
101
88
80
118
135
69
128
160
127
90
104
76
162
119
80
128
80
112
78
115
102
43
154
89
87
98
87
84
69
163
78
131
69
85
144
125
127
100
60
80
113
80
80
101
117
69
72
107
87
76
110
93
124
123
78
82
174
123
117
78
119
83
142
78
80
99
119
54
80
106
87
76
120
127
87
116
111
126
144
95
129
99
79
92
124
133
136
156
100
69
69
133
87
101
78
78
106
109
140
74
80
131
126
106
166
103
112
103
109
84
69
69
91
108
112
75
74
163
69
89
87
120
175
139
103
87
99
139
92
155
126
119
96
99
80
155
128
104
78
93
164
72
91
121
122
155
134
56
109
126
87
106
120
115
103
78
101
111
80
95
80
185
88
80
110
126
152
130
106
130
92
76
134
85
100
143
96
86
120
80
87
102
88
63
124
106
106
75
109
78
107
92
88
80
117
80
78
76
81
43
131
88
111
78
76
109
107
104
80
76
110
88
79
83
136
124
175
119
89
94
123
156
149
141
152
128
80
76
112
82
78
143
52
175
93
87
93
104
121
76
109
72
181
99
93
107
134
78
120
80
74
72
131
99
84
80
85
102
80
75
124
110
106
117
123
122
175
87
134
52
130
85
175
80
69
98
88
163
128
140
101
102
104
141
154
78
88
102
74
109
121
71
101
69
87
134
80
92
156
106
69
128
91
137
117
120
85
140
119
107
54
98
72
137
88
56
89
101
43
94
83
106
87
87
116
110
114
156
76
69
117
79
102
123
156
87
87
89
119
87
69
128
99
119
197
121
80
88
120
107
131
147
132
128
76
80
54
94
124
183
69
76
78
137
69
175
147
87
69
175
163
155
100
72
99
87
154
122
110
72
143
124
80
80
80
78
120
111
104
127
76
104
146
134
145
80
78
104
141
72
151
151
116
94
93
128
119
80
95
124
87
96
80
115
120
122
128
107
80
89
83
101
165
88
88
107
201
97
107
82
156
88
89
78
110
93
113
93
72
125
128
137
116
101
112
131
87
146
149
117
66
101
143
138
78
107
112
43
143
111
94
96
107
120
80
83
69
146
80
73
80
175
101
76
69
143
109
144
175
139
151
136
119
54
136
128
120
88
151
119
145
88
89
197
104
87
90
123
125
110
80
78
78
148
183
66
98
117
80
106
175
126
101
151
123
123
87
76
100
132
69
78
69
80
88
134
80
103
104
163
88
117
72
78
76
134
93
77
115
78
99
121
80
134
155
94
67
148
151
78
69
137
113
109
123
87
102
54
88
134
99
89
134
79
87
105
114
69
120
69
74
89
72
69
102
81
80
109
80
85
90
74
56
131
69
119
80
175
78
136
69
78
78
140
75
119
92
175
118
82
69
99
144
67
123
78
113
94
106
69
146
75
95
87
110
109
66
109
94
100
166
74
90
69
128
87
128
87
175
104
93
120
110
94
80
119
69
76
87
81
137
199
78
94
106
72
123
133
116
128
96
95
83
119
132
109
175
143
80
76
115
121
175
134
125
78
107
112
88
154
128
112
123
119
122
79
99
87
80
88
69
102
129
107
104
153
156
119
96
80
119
124
118
124
185
107
87
151
78
80
109
71
99
69
128
134
87
129
76
119
154
91
175
72
76
88
96
155
128
88
95
107
78
154
69
76
175
89
144
67
119
72
146
95
80
108
76
87
72
101
121
80
185
144
64
88
88
88
130
92
106
104
96
80
78
91
94
119
121
69
80
100
69
80
104
101
154
69
162
116
78
90
78
69
154
134
132
88
197
127
107
94
119
102
87
63
66
83
119
121
80
76
82
88
128
120
122
87
103
94
136
113
78
109
88
123
69
106
76
71
87
93
91
78
106
97
88
119
89
112
117
80
80
157
80
100
120
99
123
78
80
122
74
69
104
120
175
63
110
69
119
102
119
72
131
52
158
87
101
154
151
109
89
127
80
131
136
153
113
175
91
108
106
69
128
80
138
111
89
78
120
90
94
174
80
82
142
118
168
110
117
78
163
78
110
88
69
67
146
114
72
151
94
114
136
69
110
69
92
78
89
109
78
129
104
88
104
83
120
76
85
89
87
120
128
156
89
80
87
154
115
91
115
78
87
145
129
155
107
78
111
104
56
201
109
115
78
114
106
114
98
80
118
93
140
89
88
119
80
91
102
101
136
78
82
151
89
133
117
80
124
80
124
134
101
94
197
89
143
107
113
121
119
117
120
113
85
80
69
144
69
120
113
76
123
120
131
76
97
111
121
89
136
134
106
164
87
80
87
80
110
143
131
108
101
117
106
80
119
175
109
52
120
91
89
120
99
80
74
102
117
130
164
99
131
100
88
175
99
106
109
69
72
134
106
99
64
154
156
78
115
144
87
75
120
106
87
69
117
133
80
99
88
156
149
151
134
99
88
87
69
93
143
103
90
102
69
154
69
145
87
111
76
120
87
107
76
117
205
80
119
72
140
87
127
98
100
85
138
69
139
87
80
80
78
67
69
69
102
110
163
114
117
128
106
87
128
54
96
100
92
156
85
80
96
91
110
105
100
119
112
154
54
156
120
104
136
102
78
69
103
193
87
118
101
99
174
89
147
119
69
75
154
88
85
102
80
140
76
69
78
163
94
106
110
113
115
101
80
85
91
112
155
96
104
151
167
104
118
175
119
89
104
120
69
56
158
151
119
87
76
76
80
152
101
131
80
110
109
80
78
110
72
93
142
102
104
69
106
149
90
124
95
87
117
134
120
124
109
156
76
94
124
99
76
52
119
82
76
80
138
131
76
99
120
175
118
69
102
89
80
110
87
143
78
127
116
94
107
94
130
72
140
125
85
80
169
117
151
75
123
106
119
80
69
80
80
99
134
99
78
76
103
113
54
129
80
154
120
107
100
69
109
106
78
155
107
131
131
163
91
69
80
110
80
91
123
98
113
72
78
89
112
83
106
123
142
99
124
69
121
101
54
62
90
69
81
183
62
140
80
119
76
85
122
85
102
99
120
146
78
90
145
80
106
125
169
83
91
104
197
156
69
110
134
69
120
101
118
80
80
69
93
88
90
87
121
120
89
67
109
143
127
75
101
126
78
69
94
118
154
71
149
95
109
107
103
147
111
80
80
164
88
114
125
95
159
126
80
80
69
128
94
99
76
98
107
69
76
75
80
113
127
80
80
60
119
137
128
127
138
107
119
130
80
117
85
91
88
146
80
92
91
119
96
96
96
87
108
116
103
106
110
113
80
141
105
125
111
174
134
197
100
113
81
87
72
71
143
94
143
96
80
148
164
91
117
151
52
157
78
128
119
72
80
138
140
145
80
133
64
106
80
80
110
52
119
89
134
119
80
131
197
76
110
102
121
68
121
126
76
101
69
106
156
67
125
201
197
153
69
120
108
87
76
69
119
87
93
94
111
69
87
69
131
106
106
197
175
101
89
132
100
56
110
69
104
70
95
127
175
138
78
155
88
69
72
80
107
87
88
148
187
154
95
121
87
106
145
114
127
163
109
89
76
197
56
74
88
72
113
80
96
88
69
90
154
100
133
121
72
87
113
119
88
106
80
107
112
96
96
87
104
107
93
110
95
164
131
111
59
102
156
112
110
67
76
147
118
72
177
117
74
67
72
112
98
89
117
109
151
163
162
117
73
69
127
87
148
78
75
148
146
69
100
123
78
120
74
131
87
88
112
96
56
89
130
127
187
87
197
131
120
104
80
155
164
69
94
167
103
166
94
90
110
87
114
163
135
69
72
111
59
106
143
107
102
80
67
69
93
123
69
89
93
86
80
69
113
154
114
112
175
80
88
100
85
120
104
115
104
87
69
89
119
112
128
134
69
120
76
82
96
85
80
88
144
128
114
87
85
70
81
137
163
150
91
134
76
154
146
174
96
119
119
145
140
80
118
80
107
143
131
134
149
131
112
118
69
80
99
137
121
93
143
113
134
80
163
110
89
144
74
101
131
87
134
69
69
69
80
99
143
100
56
80
127
80
125
128
151
110
88
69
114
134
76
78
156
117
69
94
94
96
69
80
165
78
157
56
91
80
102
74
76
99
87
87
54
130
87
112
113
124
80
107
75
118
101
94
136
69
175
120
80
104
87
108
109
115
88
90
155
119
69
117
154
175
101
101
110
145
89
163
80
102
107
120
80
146
91
69
181
99
76
66
91
87
119
121
109
107
185
76
54
93
164
134
76
163
148
120
89
137
78
118
104
154
105
99
80
82
80
157
115
129
80
89
87
128
85
82
148
69
143
154
120
114
89
119
115
112
117
101
87
69
79
140
78
119
69
69
94
106
122
58
145
128
94
69
109
197
165
80
72
175
102
89
96
92
89
80
74
89
129
54
78
109
85
78
80
157
111
57
156
80
95
131
103
137
76
88
52
93
120
110
147
78
112
154
104
122
76
175
119
69
104
120
147
148
122
89
85
69
134
108
120
89
109
89
136
87
118
113
117
100
112
109
125
112
156
88
80
100
113
129
156
91
89
155
114
99
80
103
118
78
80
130
80
127
117
82
155
166
137
128
158
106
143
80
100
109
120
95
76
80
134
110
102
115
100
121
111
87
130
119
88
99
175
87
106
117
176
69
106
78
140
107
175
43
78
120
107
115
99
113
143
92
93
134
76
131
86
99
69
107
95
150
97
87
128
69
80
96
114
134
139
80
69
113
175
69
109
87
104
106
130
83
64
78
104
69
64
147
115
56
140
87
96
104
87
69
73
87
119
114
102
117
76
69
119
109
154
76
156
124
88
89
90
156
140
143
78
119
80
78
76
131
131
112
91
80
102
90
80
130
112
106
120
69
90
115
121
99
118
87
78
119
119
121
114
119
154
123
156
104
69
134
128
164
78
76
54
151
76
138
78
72
117
69
104
145
130
76
89
157
122
111
159
120
87
142
80
87
80
199
87
87
91
149
119
119
69
120
69
119
100
157
98
120
155
110
152
87
94
122
151
101
103
146
78
78
109
151
107
131
121
99
110
113
69
87
119
93
75
88
110
118
148
80
99
154
117
80
131
90
92
131
117
84
197
79
80
108
94
175
43
54
67
120
136
120
100
76
155
96
94
69
124
123
69
89
131
145
80
144
90
80
96
75
104
99
80
128
78
80
109
120
155
140
78
78
127
56
89
93
137
87
99
124
112
82
91
71
69
93
80
128
107
106
156
80
94
97
72
85
98
115
93
83
69
69
76
100
98
110
96
130
140
87
78
148
134
121
84
85
127
77
119
117
162
112
87
76
87
76
80
121
129
128
94
72
132
87
131
96
69
80
93
112
80
94
104
119
94
104
76
124
76
99
155
106
145
87
90
74
129
66
117
80
174
101
112
88
117
120
128
120
124
144
120
78
100
76
52
117
92
82
89
197
114
58
107
80
118
131
80
120
175
89
101
89
87
64
162
154
103
80
129
76
174
69
106
209
89
69
112
87
78
112
80
90
94
124
151
80
122
145
85
120
156
104
69
99
100
82
69
107
80
56
128
118
123
60
87
104
110
69
103
127
120
109
112
54
185
78
90
76
72
112
175
78
119
88
120
109
99
69
146
121
88
113
96
119
96
163
109
69
87
160
119
78
120
115
78
97
78
118
132
136
74
72
98
113
175
142
98
93
104
104
115
56
68
101
109
88
93
93
164
156
78
119
102
103
69
43
102
112
102
80
90
80
109
109
121
94
151
76
123
175
80
74
69
80
110
93
165
72
96
95
88
110
152
76
111
120
87
76
80
103
80
78
91
96
103
119
184
87
69
147
75
69
93
175
119
119
136
89
103
80
117
84
140
119
119
92
87
114
151
129
119
155
156
109
131
80
93
138
99
78
78
118
109
154
122
130
109
120
144
145
154
95
80
111
175
197
106
79
87
110
95
99
111
109
78
69
69
117
119
120
108
69
76
120
87
89
80
91
69
89
112
175
99
99
81
113
118
128
109
98
147
99
100
118
142
72
58
90
155
93
98
106
154
132
87
115
119
111
99
134
91
80
133
94
127
120
120
101
94
76
96
148
110
87
108
101
91
69
109
69
87
94
119
80
97
76
112
100
151
80
134
146
136
129
52
135
69
80
93
87
88
82
117
77
88
95
109
98
91
104
96
125
94
110
72
78
109
117
106
69
92
121
80
110
140
113
166
103
111
122
103
102
166
120
136
69
69
156
89
112
78
132
101
89
104
119
80
83
127
128
96
87
80
69
119
76
101
109
69
175
104
88
137
113
69
119
107
109
175
93
144
69
130
157
134
102
120
109
114
130
108
85
145
96
56
131
112
119
119
69
64
129
69
148
178
154
107
80
113
80
124
114
155
119
78
69
100
69
54
96
88
80
87
118
115
119
163
76
104
112
54
87
87
96
148
118
80
151
80
80
151
78
120
131
88
80
80
80
116
117
172
93
175
93
123
76
164
87
80
87
123
110
154
95
69
74
76
80
107
91
119
69
119
76
92
119
76
66
140
91
146
69
52
88
127
139
102
128
78
126
115
106
96
156
155
104
107
69
69
185
90
110
69
110
80
87
175
80
69
103
95
107
80
126
69
93
128
87
81
69
80
81
80
107
80
59
126
80
114
129
109
87
56
115
74
69
119
123
110
91
129
80
119
140
69
74
104
113
104
109
99
114
95
114
115
109
76
100
80
123
78
95
128
88
134
107
78
72
69
112
80
104
126
72
94
155
80
136
154
87
101
94
80
85
156
80
80
119
78
175
87
156
120
107
154
153
109
146
141
117
110
175
101
88
80
128
107
78
98
131
140
109
121
127
78
72
140
101
80
93
119
100
100
105
197
56
87
80
151
78
96
110
72
76
80
127
106
87
136
69
144
80
69
76
98
102
124
144
69
96
101
76
95
185
119
87
78
74
54
140
93
69
100
119
162
150
108
109
95
133
148
150
87
78
69
119
128
118
124
91
140
164
112
143
89
127
156
110
84
90
109
156
109
78
78
109
121
134
112
134
131
120
85
156
113
74
107
93
69
93
117
88
121
128
71
174
78
87
80
117
80
88
98
72
80
107
69
115
99
163
105
120
69
87
141
142
96
54
128
175
164
93
113
154
154
134
119
131
91
88
128
113
142
121
111
133
156
101
147
166
114
109
175
143
72
76
140
99
88
125
76
137
104
149
54
96
78
111
110
114
85
87
111
80
156
109
96
108
121
119
80
117
76
101
85
81
154
83
76
199
139
80
78
133
132
154
80
137
107
76
87
78
101
121
156
80
148
127
115
134
99
107
69
87
91
96
107
134
118
120
145
137
94
90
110
138
133
69
107
134
71
124
175
85
80
141
199
87
99
123
120
134
91
128
112
69
121
138
74
91
72
69
95
72
89
87
114
87
102
71
154
123
80
126
80
175
100
127
78
88
73
74
54
93
109
104
122
181
134
52
80
120
107
109
78
80
82
101
69
74
102
74
125
145
136
72
120
76
95
89
110
80
80
106
118
69
80
80
119
155
111
107
126
107
80
99
175
78
80
80
72
89
78
109
98
137
121
90
80
96
94
120
99
136
91
93
66
156
137
80
156
145
87
119
122
69
129
119
94
89
150
118
72
78
118
91
174
80
80
140
146
165
119
104
85
76
87
137
69
127
137
127
43
80
138
76
157
115
123
87
119
96
80
149
78
78
99
156
119
88
140
69
155
86
99
89
121
118
113
76
78
146
91
69
89
197
126
94
154
99
76
74
104
175
54
119
104
89
120
54
110
123
106
88
80
145
72
69
93
104
69
143
163
78
88
94
112
80
137
89
136
96
111
107
93
69
107
76
104
101
94
128
128
87
140
148
103
84
94
72
80
155
106
156
88
147
119
72
75
107
80
115
164
52
142
129
72
66
155
122
99
72
94
91
94
190
100
89
69
101
121
94
100
175
100
78
133
155
81
101
139
149
80
101
80
69
175
128
154
91
159
91
119
111
90
60
119
155
87
155
89
87
137
78
54
80
66
123
164
94
121
69
120
134
175
94
80
64
101
120
146
56
69
106
80
89
109
131
95
131
76
146
76
88
117
104
99
119
102
156
145
80
94
175
107
98
88
69
164
156
87
76
123
88
111
80
96
131
94
109
72
101
128
80
89
107
122
117
97
144
126
132
91
163
87
88
120
80
76
87
78
154
52
94
104
150
109
99
133
72
76
137
134
120
145
94
54
117
96
87
99
69
87
96
74
135
78
90
99
93
131
127
97
69
81
104
141
52
128
183
127
94
104
123
69
116
117
78
109
98
87
164
119
95
125
175
69
121
117
69
107
80
101
69
88
175
109
88
150
78
66
110
78
81
127
127
112
115
133
87
111
104
80
88
130
120
89
137
131
96
132
117
87
93
100
107
69
119
144
83
69
69
160
99
110
114
69
76
99
69
122
66
126
78
88
77
154
131
122
108
80
80
117
116
143
112
125
156
92
74
129
123
69
89
88
69
115
91
104
80
69
89
87
83
109
121
101
87
175
101
112
83
76
69
110
90
199
80
96
80
120
120
146
111
118
80
109
86
89
141
109
131
175
120
138
107
104
160
120
119
80
89
110
104
52
120
121
76
123
87
83
136
91
80
199
175
93
156
160
78
89
140
122
78
145
153
119
94
128
54
54
131
138
78
80
134
72
119
107
175
153
80
129
130
69
128
76
128
161
146
102
145
99
175
83
96
127
87
78
95
165
154
69
119
151
99
78
117
109
89
134
76
73
90
88
80
80
123
175
144
154
89
82
102
127
59
72
112
154
75
111
110
100
87
92
103
155
146
87
156
76
69
109
127
76
113
110
78
164
146
118
112
154
155
69
126
99
143
130
94
152
69
111
86
98
98
96
134
97
78
80
154
101
96
136
81
124
78
84
95
117
164
114
103
89
95
110
101
87
59
197
100
175
131
100
78
109
87
119
80
103
119
128
175
120
87
87
120
80
100
136
101
83
70
69
131
77
154
127
107
78
69
120
95
114
91
109
134
76
156
133
175
80
175
137
102
154
54
109
80
107
121
76
136
100
119
147
154
113
88
69
91
80
87
96
100
98
72
123
72
104
80
121
88
80
69
93
137
160
78
151
80
107
76
151
91
146
140
88
104
128
112
87
106
131
69
76
85
80
88
104
69
78
93
115
155
164
127
120
81
107
99
104
80
91
91
72
103
111
91
119
76
120
131
80
72
126
69
91
181
128
142
115
117
197
109
152
109
72
76
72
110
52
80
89
78
109
80
78
132
99
112
136
120
76
109
130
110
103
100
136
87
80
93
155
110
88
143
109
121
127
114
110
69
154
96
175
78
123
120
80
78
83
150
121
145
76
175
80
93
75
106
58
78
175
175
119
88
96
154
87
69
111
69
118
110
87
93
87
151
113
92
78
111
140
80
107
118
99
120
76
183
110
87
78
80
123
142
95
76
80
87
67
69
96
109
87
113
80
117
134
80
80
120
131
101
89
80
69
126
102
122
131
120
131
80
52
83
91
94
88
158
85
80
104
87
107
89
101
121
143
109
69
175
89
78
140
80
93
52
100
80
88
131
88
116
107
151
107
76
128
111
76
78
106
143
110
102
106
127
89
94
119
87
56
102
122
175
181
78
69
176
98
79
77
91
80
114
69
128
87
97
156
76
89
88
88
99
183
128
69
88
96
121
120
101
69
153
90
101
69
117
69
104
122
76
99
87
85
174
76
69
54
117
110
80
136
174
120
126
80
122
102
154
69
119
88
85
82
104
78
98
92
130
127
99
110
128
112
128
94
99
120
89
87
93
130
126
56
80
175
103
111
113
136
69
56
95
90
114
129
104
78
113
120
72
101
164
88
120
76
121
134
109
106
155
134
106
89
84
215
115
78
98
112
104
69
194
99
130
101
131
154
96
145
80
69
131
78
88
136
79
106
136
154
107
175
131
80
88
174
91
117
69
87
163
114
119
134
94
96
76
114
80
119
78
151
69
101
78
160
196
119
136
72
100
101
136
93
101
56
76
69
119
134
120
104
122
78
99
69
85
87
118
137
87
112
88
96
76
152
72
92
123
87
174
118
107
69
83
93
80
56
149
116
91
80
101
136
119
117
88
120
89
80
113
130
89
102
80
126
90
69
59
88
139
143
96
104
85
96
80
106
156
114
69
80
148
52
115
126
78
117
119
76
109
126
150
120
110
133
78
43
80
151
118
106
91
80
96
69
117
88
98
102
131
91
80
72
127
151
119
87
175
106
106
125
127
69
112
117
127
69
141
96
143
121
94
109
120
175
107
106
83
100
175
80
94
101
137
120
156
72
107
112
103
119
90
111
99
69
125
69
113
80
87
128
80
76
175
201
76
80
110
112
183
110
143
106
128
62
87
89
155
145
128
78
197
99
94
76
157
94
103
76
154
91
74
106
93
78
175
69
119
87
87
78
120
136
118
156
134
99
91
101
109
154
128
100
110
107
109
149
80
54
87
66
80
82
131
69
137
107
119
154
82
69
99
94
79
72
80
107
80
134
87
101
106
140
119
54
163
154
132
117
67
54
119
98
114
148
107
128
69
156
153
134
139
87
156
96
104
107
106
94
118
92
67
98
132
119
89
148
80
101
69
111
67
80
103
129
92
104
131
140
83
80
78
80
111
175
107
155
82
80
107
82
154
164
95
74
131
78
123
107
99
103
87
147
119
80
120
108
104
146
118
107
89
69
120
95
119
72
120
129
120
80
69
94
85
126
94
140
76
76
163
102
69
151
148
87
143
98
95
76
143
87
95
87
80
80
174
140
88
119
136
140
119
89
88
96
111
134
113
115
88
159
136
126
88
106
120
99
151
113
174
78
100
145
80
138
76
80
151
69
74
157
89
56
130
75
120
72
78
106
74
146
59
114
79
104
80
99
78
95
156
76
76
69
87
54
69
137
127
110
80
102
120
128
93
113
107
147
112
174
96
157
136
87
128
119
75
92
80
175
124
109
80
96
100
111
88
88
106
164
87
113
69
109
76
119
54
122
129
87
128
76
78
116
76
130
109
149
89
136
109
134
121
87
88
91
107
76
87
89
102
126
78
120
76
133
112
140
134
69
99
88
80
87
89
87
175
52
128
93
114
115
69
134
104
133
123
75
80
144
148
78
89
80
120
57
136
117
69
107
160
88
119
121
106
94
131
128
117
113
78
128
110
107
69
136
69
69
69
120
80
93
109
87
88
80
160
111
112
136
60
175
94
105
119
184
121
120
117
80
109
80
147
107
87
80
102
136
132
103
151
133
175
119
111
69
137
69
78
142
80
120
110
102
110
131
72
143
142
87
76
92
134
91
106
120
87
197
149
113
76
108
120
113
93
87
133
197
76
88
144
112
118
76
80
78
120
117
69
69
101
115
102
126
197
80
110
120
94
175
89
104
98
107
93
90
120
122
78
131
145
90
89
90
87
89
156
54
87
106
107
69
79
88
131
87
87
107
114
87
87
132
127
83
80
99
175
89
109
56
80
99
112
121
143
80
80
104
131
88
80
87
98
120
110
100
129
131
154
109
111
163
108
76
173
93
110
69
106
122
69
91
107
119
111
102
123
80
119
104
127
125
97
175
105
109
142
69
91
89
80
74
85
94
69
146
69
91
140
175
159
107
69
69
115
76
136
87
109
104
89
58
79
89
99
87
96
134
52
128
82
120
66
76
109
115
175
69
121
131
72
109
187
103
91
54
136
154
83
94
56
87
80
121
125
78
108
78
106
131
109
60
80
76
78
155
114
87
146
131
99
69
137
43
54
124
103
139
117
123
104
89
86
87
128
181
154
80
109
76
119
82
88
134
109
148
95
142
112
78
125
106
121
109
120
87
197
121
99
111
80
80
80
156
109
100
78
155
89
119
132
118
113
83
197
120
104
81
118
63
128
69
80
93
78
104
151
107
87
101
127
76
136
175
54
80
80
106
92
87
122
152
69
121
82
129
71
103
175
76
133
69
102
121
164
102
72
121
69
119
94
113
197
78
106
76
91
69
94
80
117
119
110
89
121
78
54
137
134
134
69
73
122
88
134
95
80
80
129
119
78
151
88
154
69
160
128
78
79
140
87
69
104
93
89
120
101
119
87
115
104
120
116
80
115
92
69
80
80
85
78
131
82
163
80
80
94
119
136
91
67
96
80
119
94
152
85
93
125
80
78
128
98
68
76
154
120
115
88
52
107
128
103
76
101
82
78
163
123
93
174
107
75
89
69
69
94
119
109
154
117
130
80
119
54
120
134
113
140
122
154
121
130
76
69
107
107
136
80
91
115
87
137
106
80
69
134
87
93
177
151
100
175
66
85
102
119
156
85
147
107
175
120
99
156
80
107
126
116
87
80
78
116
87
138
88
102
111
137
101
100
69
144
67
72
115
69
134
119
124
88
127
119
95
118
126
110
80
94
156
109
69
151
131
80
87
97
76
132
134
175
99
87
78
69
72
126
59
87
131
80
136
69
100
119
107
107
80
110
138
145
87
99
94
121
123
80
69
101
87
87
76
103
80
128
80
80
113
80
175
110
128
156
87
114
123
69
99
99
91
78
144
136
109
80
124
95
124
80
88
131
52
100
80
69
91
119
72
128
134
74
91
125
114
174
68
104
120
107
109
109
151
104
127
96
87
137
102
101
163
104
94
95
101
197
104
76
157
99
136
114
67
69
87
121
87
119
128
80
151
93
114
137
120
140
133
101
109
140
133
155
84
136
107
175
80
123
88
151
64
82
128
117
106
87
160
126
78
174
156
78
104
119
88
156
102
109
74
136
80
76
117
93
119
100
164
107
88
162
80
96
103
87
80
174
94
87
64
127
175
140
94
140
76
131
132
136
154
149
69
104
136
80
123
142
100
155
117
109
87
78
102
114
78
76
109
112
118
154
80
69
119
80
78
80
69
151
69
95
69
102
134
154
88
112
114
91
114
119
142
91
107
156
88
69
102
147
110
83
74
69
94
69
128
87
121
94
102
135
123
54
109
127
122
75
87
69
98
69
119
78
78
119
114
156
148
80
69
76
157
76
69
106
155
109
119
69
80
94
91
78
102
80
89
154
80
72
175
82
201
80
80
146
76
132
91
119
112
76
113
94
114
94
121
133
109
137
197
56
69
80
108
76
106
76
122
201
107
119
119
104
52
151
156
137
98
75
87
134
154
175
120
155
119
151
69
109
128
126
107
69
108
78
121
74
83
119
69
110
76
107
107
128
131
107
115
80
151
175
117
88
116
154
87
80
69
121
155
76
76
109
76
94
82
106
100
133
121
98
120
93
101
87
101
96
100
133
89
113
87
124
59
132
114
87
128
152
66
140
80
107
148
69
146
150
115
80
80
89
157
120
69
146
118
107
93
89
119
89
145
163
100
144
97
105
78
136
52
154
111
109
119
128
114
134
78
119
136
66
110
92
89
69
143
124
103
87
91
140
163
174
76
164
119
74
133
120
114
113
80
72
109
154
109
101
134
98
148
78
146
54
136
106
175
134
128
85
134
96
105
78
111
111
119
94
145
88
91
76
125
140
85
96
88
87
175
87
89
137
78
140
142
148
80
124
69
87
136
100
143
103
163
112
80
69
120
157
119
96
115
109
54
112
174
69
110
80
58
69
109
174
80
69
148
78
107
69
58
99
111
130
80
155
80
88
54
119
86
85
121
106
82
89
160
94
110
137
99
120
94
69
136
113
69
78
111
175
74
119
154
121
78
75
80
90
119
69
80
134
69
142
104
102
100
110
75
80
102
136
144
120
110
88
75
54
80
90
197
88
87
93
80
128
80
94
97
80
94
80
80
132
121
123
134
93
134
69
101
82
76
121
109
99
123
131
122
80
80
74
197
80
87
175
80
126
82
78
80
106
111
104
52
96
96
175
91
127
60
132
78
152
52
80
87
95
76
144
90
94
109
143
154
76
101
89
120
65
69
69
118
155
102
160
136
118
96
175
118
119
89
56
89
93
85
120
136
69
123
80
127
80
127
87
138
60
118
112
80
88
80
80
119
76
88
201
151
80
121
118
109
73
88
87
89
82
154
174
72
69
94
91
175
112
136
87
80
54
96
106
134
115
78
78
146
80
78
113
87
66
108
88
69
151
58
88
131
113
185
117
140
80
87
126
89
80
88
155
58
69
79
69
163
154
78
175
124
117
91
109
138
80
95
119
119
76
115
85
120
103
89
87
130
76
128
89
72
133
43
183
163
99
80
87
100
91
128
100
125
155
91
120
124
92
121
80
119
155
154
113
99
76
67
124
128
128
118
136
127
119
126
128
154
109
69
80
72
96
137
110
136
89
78
109
128
165
136
98
126
80
121
72
127
108
85
119
119
104
75
127
122
121
54
115
80
154
80
109
104
54
78
107
87
74
107
127
94
87
99
119
96
151
104
119
100
84
121
113
134
80
115
102
101
117
117
155
119
109
127
104
78
106
121
138
132
87
119
128
145
114
86
101
104
102
99
130
129
99
78
117
145
76
128
69
175
163
119
52
93
69
80
128
155
72
76
119
131
93
101
137
102
174
83
175
100
146
76
69
136
119
76
89
119
98
175
88
76
109
91
129
131
99
74
79
80
197
163
120
87
120
120
120
159
72
128
99
74
119
102
76
69
96
123
100
138
111
54
175
99
94
57
76
80
99
88
117
151
121
132
69
131
74
101
99
78
91
117
69
137
78
95
72
121
197
69
101
109
127
104
106
104
116
106
80
78
121
120
126
80
120
119
119
63
131
125
154
87
72
119
87
156
109
120
172
83
119
120
109
69
197
121
134
107
143
102
137
82
106
76
107
169
136
115
95
113
112
76
140
73
78
93
74
165
150
157
88
80
154
131
80
78
146
119
115
76
88
121
115
96
110
107
119
80
66
128
78
122
99
89
121
129
80
163
80
69
43
54
124
59
99
107
58
99
89
80
93
69
112
121
106
80
71
106
155
120
88
78
175
123
93
96
87
131
56
144
88
101
152
119
154
120
87
90
123
113
78
117
100
54
69
54
89
87
129
98
74
87
125
69
72
76
80
119
90
140
80
80
106
163
102
76
72
104
109
111
108
102
80
89
115
181
80
80
99
69
107
120
113
120
110
110
72
101
87
107
127
125
71
137
94
87
76
88
75
120
117
78
78
72
145
80
87
95
95
69
176
101
119
60
113
72
91
80
127
80
91
143
76
100
146
78
132
109
69
80
147
74
154
69
106
118
130
116
92
88
101
89
76
75
146
98
95
109
93
128
88
101
137
104
126
106
69
76
87
80
87
90
118
69
120
99
110
80
156
76
107
138
136
101
43
83
121
120
69
78
102
131
76
87
94
154
87
130
96
76
43
197
98
156
121
96
52
117
106
115
69
110
112
151
85
80
78
109
104
119
80
110
76
67
104
130
80
113
197
87
141
88
80
93
80
113
85
87
76
87
106
78
76
107
112
69
110
69
154
120
107
136
128
130
69
104
106
126
131
69
89
183
76
72
87
120
146
78
113
131
112
131
100
119
140
87
140
156
115
126
117
147
200
120
74
69
76
127
149
104
138
183
110
107
69
80
118
110
69
144
131
146
69
120
98
109
104
128
80
145
119
107
181
175
128
85
88
85
69
80
113
175
113
107
113
96
144
93
104
74
120
87
156
136
99
98
102
94
199
94
112
124
112
88
88
110
72
78
147
99
140
87
115
117
125
87
109
80
101
96
120
67
54
102
99
154
100
80
89
88
128
100
101
128
109
154
102
113
107
69
101
144
80
166
154
136
89
110
113
113
99
96
82
129
106
74
125
74
102
87
99
69
109
87
80
85
104
69
121
148
78
148
96
120
94
69
87
99
121
156
73
111
155
120
128
109
102
78
126
80
125
153
101
80
69
99
122
66
87
151
69
122
80
101
69
106
80
123
87
113
117
106
99
133
151
120
95
80
80
74
119
78
87
99
78
80
69
119
96
89
96
96
132
84
126
72
121
163
80
54
80
85
122
54
80
128
100
93
88
94
106
146
56
120
127
119
80
123
150
69
80
146
120
156
102
87
87
175
69
76
128
111
114
137
59
85
104
76
131
128
154
101
100
94
76
76
109
101
95
78
80
129
134
80
79
145
97
96
147
163
76
114
119
87
134
123
88
150
102
151
155
111
92
122
109
106
107
137
109
74
96
126
88
109
101
197
132
150
88
60
80
197
106
107
154
69
128
117
69
91
131
70
92
93
117
119
100
80
120
87
140
136
110
81
80
145
113
99
185
131
78
69
107
78
80
144
129
91
109
91
104
153
69
100
69
69
126
87
140
145
134
110
102
109
137
103
80
121
147
69
80
119
106
107
75
115
71
102
80
76
80
80
87
94
112
87
174
145
78
102
103
128
93
69
117
157
69
117
67
107
96
124
116
78
66
109
131
107
102
126
98
113
69
56
132
112
76
94
72
109
113
121
137
88
118
123
112
69
128
164
87
56
99
80
112
76
99
118
75
135
123
125
114
72
119
155
80
96
156
89
103
88
199
131
135
106
87
69
95
80
148
69
89
80
108
69
87
128
102
96
80
87
80
116
91
88
109
91
78
126
72
80
78
94
154
169
104
72
118
109
104
125
80
127
69
80
80
88
110
119
101
160
117
164
76
88
76
131
93
80
113
92
126
121
115
87
136
195
138
87
100
120
85
69
69
120
80
104
74
93
80
128
91
120
129
74
134
128
78
110
76
112
143
96
149
155
111
99
134
74
153
74
127
145
155
201
87
110
80
69
92
123
76
129
175
108
145
148
106
98
88
104
109
101
106
69
156
100
121
99
80
80
109
164
113
89
110
113
91
80
117
89
80
183
174
130
119
91
144
100
78
56
119
103
115
75
108
83
76
118
110
78
123
69
120
151
103
143
88
152
136
111
148
104
142
78
175
103
99
76
67
94
103
111
96
69
125
76
140
74
101
80
80
80
120
69
90
80
89
121
113
107
156
172
119
149
69
143
87
130
69
107
117
93
69
76
120
136
152
69
102
96
125
88
78
101
80
117
87
76
117
133
93
129
113
76
69
110
122
109
175
80
87
155
84
118
107
78
89
197
93
78
79
164
92
136
123
143
134
77
110
106
99
101
69
120
106
88
105
101
197
69
80
69
76
87
87
99
96
69
83
99
185
94
125
107
101
78
87
120
122
119
79
127
91
92
137
100
175
129
95
109
123
120
107
136
143
100
99
101
96
120
174
99
88
120
102
128
72
98
163
147
78
76
151
76
111
120
101
88
69
94
140
76
78
78
76
145
107
87
56
147
80
78
88
151
99
68
100
154
133
119
80
98
68
98
69
119
109
76
117
82
131
93
72
87
69
96
91
88
83
119
154
120
112
80
87
87
118
52
119
121
144
89
80
145
80
114
74
88
110
121
103
136
80
80
128
113
121
80
88
110
136
119
80
110
106
87
185
54
101
87
106
121
137
80
80
119
131
128
113
94
80
78
143
75
119
124
69
69
96
100
93
114
110
87
87
130
117
87
154
147
69
93
73
80
100
109
69
119
131
120
69
100
88
80
145
148
149
80
97
104
122
54
76
69
99
78
106
156
119
72
67
93
131
91
129
87
144
74
128
143
69
88
127
67
104
99
118
112
80
137
93
110
111
69
69
163
125
146
107
52
72
87
120
119
94
80
146
76
74
132
156
128
69
175
106
122
72
113
100
117
85
76
88
69
101
94
137
69
95
121
155
119
99
87
143
94
69
154
120
119
117
124
87
136
81
136
122
112
80
99
132
74
131
99
99
76
143
121
72
79
99
72
119
87
81
113
80
93
110
80
162
128
129
100
90
124
119
76
78
87
69
93
89
96
80
95
107
69
156
94
99
71
110
78
87
175
69
119
90
89
114
140
113
80
66
119
52
115
139
104
54
89
137
128
110
185
164
93
93
175
78
130
110
69
69
131
127
113
199
120
80
162
155
102
87
75
133
85
112
109
87
122
80
99
69
120
120
88
117
156
54
128
134
78
96
69
76
89
104
99
145
136
72
140
175
124
114
183
54
120
87
80
78
78
88
136
119
87
113
94
175
175
69
85
109
116
109
156
87
152
112
128
69
96
80
76
87
88
87
87
101
54
120
119
76
109
93
121
102
123
111
91
128
69
120
127
152
66
128
134
115
155
80
76
76
80
90
94
131
95
117
54
121
116
104
119
96
175
119
90
139
69
155
104
151
67
172
80
136
117
88
109
175
152
135
114
104
106
76
148
78
118
101
111
78
134
116
80
118
148
90
106
119
78
89
77
174
145
78
113
128
136
138
160
131
133
91
112
134
175
113
128
93
80
80
156
87
120
91
76
99
107
131
80
156
89
113
151
119
54
147
80
99
80
143
89
88
142
80
56
106
52
107
56
127
111
154
87
89
69
120
129
78
136
89
80
112
154
99
89
107
119
85
151
87
80
69
107
131
69
83
113
117
95
80
80
123
80
153
94
72
117
80
96
78
54
72
119
87
99
136
87
102
69
72
78
94
92
120
91
80
156
89
87
80
109
114
84
80
76
118
119
112
156
119
115
131
162
109
155
123
93
80
197
101
140
54
94
160
80
76
156
121
67
78
88
113
76
96
112
87
82
113
115
127
74
157
127
69
96
119
87
127
80
74
71
140
201
119
107
119
89
160
79
121
94
120
117
75
104
69
146
123
107
148
120
197
80
88
100
76
85
104
145
102
93
97
102
76
74
104
87
87
100
88
136
134
71
111
183
72
73
140
69
97
76
146
72
131
94
80
146
133
93
90
129
75
147
73
80
78
131
78
183
93
109
80
164
80
69
104
105
69
69
128
154
87
140
134
76
154
165
107
114
80
100
93
119
121
164
176
107
112
114
80
80
93
91
120
181
80
115
115
107
130
80
119
106
113
69
89
80
78
154
114
105
140
89
175
78
126
60
110
124
88
80
80
149
78
138
120
87
74
80
107
113
120
120
99
111
122
87
96
104
110
155
120
151
120
121
96
111
156
150
74
119
106
89
93
175
138
154
133
54
56
76
104
134
117
99
106
109
94
69
128
97
78
69
107
54
69
87
111
109
148
119
120
164
102
87
109
157
137
125
84
80
91
136
131
91
89
138
80
90
110
164
102
110
104
123
148
151
122
99
129
106
88
156
146
94
126
113
145
129
150
85
120
80
175
78
88
102
141
126
116
151
87
80
79
98
66
83
99
139
129
119
92
99
69
80
110
119
144
69
87
87
109
113
123
99
137
69
56
78
119
118
173
171
119
94
80
89
104
76
107
96
111
146
80
79
101
74
69
99
138
89
106
122
110
128
107
154
131
76
69
124
76
89
156
69
123
163
76
154
119
105
54
145
133
107
117
94
147
76
80
69
80
89
78
80
105
119
159
175
175
101
171
52
92
104
87
101
80
93
82
153
119
185
99
69
87
69
88
197
175
157
121
66
121
201
101
69
78
113
80
140
131
94
92
69
136
104
78
157
144
110
201
43
92
101
104
80
107
99
80
137
54
119
80
59
76
119
76
163
78
98
147
115
98
94
156
52
69
104
92
115
88
136
89
119
120
89
89
175
52
128
151
102
78
118
74
80
128
148
128
112
104
52
126
80
160
88
71
69
128
99
111
153
87
169
126
134
69
80
163
76
69
131
133
130
76
123
104
119
87
151
131
99
74
72
185
76
115
99
128
106
91
160
110
80
151
123
131
69
157
126
99
69
107
134
96
174
134
76
94
154
172
99
72
58
119
122
152
93
87
96
87
101
80
87
197
141
78
88
112
147
89
80
146
106
118
80
87
118
76
118
110
109
175
85
112
80
91
127
69
107
162
109
104
88
74
93
144
113
128
104
113
107
112
106
106
80
119
154
142
78
127
104
110
83
121
163
141
76
117
111
80
102
80
154
117
78
120
120
134
131
78
118
119
99
98
80
94
128
118
152
113
137
103
101
100
87
92
80
132
100
91
125
109
107
89
171
133
88
116
97
126
74
69
80
118
69
76
130
94
80
117
99
71
137
140
69
121
136
120
146
101
127
118
64
154
80
113
117
119
107
127
72
166
117
163
87
105
131
69
56
141
113
100
59
80
71
54
107
130
80
87
104
80
69
69
88
67
121
102
88
119
80
80
89
157
109
152
89
87
78
66
123
145
119
119
107
99
120
140
89
131
76
120
85
104
76
64
79
90
134
128
127
78
113
88
88
125
69
102
175
108
119
114
134
89
80
87
131
104
154
80
74
140
122
143
80
112
120
117
119
113
121
201
69
69
118
88
106
87
80
154
72
76
99
183
69
109
126
119
156
148
121
88
85
76
117
80
136
121
71
76
148
101
80
123
72
163
91
113
129
106
80
80
80
110
98
52
77
80
127
52
125
76
80
74
69
87
132
120
80
119
52
112
120
87
87
156
76
69
110
85
110
117
76
87
102
107
96
112
148
183
72
90
93
88
117
146
100
64
67
117
128
87
112
104
69
119
87
120
69
175
93
118
85
80
87
72
175
78
69
78
117
89
114
156
54
117
165
155
129
151
78
72
131
155
118
72
93
103
128
76
112
187
52
155
69
87
84
73
101
137
52
113
131
99
76
93
124
43
107
87
80
88
175
93
80
91
113
88
80
69
131
119
154
104
137
87
114
128
146
80
102
78
154
149
78
76
104
107
175
112
120
103
91
69
109
129
69
129
124
98
122
107
74
80
107
181
62
80
107
130
102
131
76
120
136
113
100
88
89
137
78
80
80
87
76
63
64
110
101
162
87
96
104
94
88
97
136
156
97
154
69
95
140
113
93
104
85
78
113
136
154
69
78
104
72
118
69
69
112
126
74
121
78
56
74
59
69
126
72
69
120
131
93
107
118
101
76
119
92
80
197
76
94
183
114
80
104
69
117
115
101
91
160
113
91
100
52
137
80
149
87
87
149
74
122
109
72
80
146
52
128
127
130
54
87
95
122
163
96
93
76
74
144
106
72
127
93
78
101
56
119
175
117
99
147
121
76
122
138
116
119
78
87
107
80
132
145
147
104
131
88
109
103
90
107
119
151
172
69
145
136
56
95
69
80
130
113
99
104
102
163
160
89
145
78
128
119
107
89
70
69
162
154
81
72
77
155
119
137
101
99
128
80
131
118
156
175
122
43
89
100
91
69
87
78
89
94
91
110
123
136
93
107
76
96
113
94
155
130
69
73
134
80
80
69
87
108
125
107
80
118
104
119
75
141
163
129
80
144
107
69
96
136
199
107
80
99
78
94
74
118
102
72
94
99
143
56
74
90
120
101
104
146
94
80
157
134
138
80
121
80
87
126
82
131
113
107
76
115
121
78
119
114
157
128
110
134
91
104
131
80
69
72
133
69
78
134
106
96
90
120
156
93
96
92
109
78
115
88
110
113
110
87
117
155
66
110
163
90
54
94
80
123
76
69
80
147
134
99
111
129
197
175
116
87
80
106
169
95
87
94
134
71
80
80
78
88
76
137
112
100
118
121
69
101
94
118
80
120
150
80
69
131
98
117
102
43
137
99
91
121
76
107
110
52
94
78
83
78
76
128
80
78
74
120
109
140
112
83
87
156
80
148
132
80
89
158
78
85
78
109
96
58
99
104
163
131
56
155
127
76
88
69
185
76
99
125
129
80
95
110
92
126
69
128
140
163
129
76
137
94
80
106
156
76
109
126
98
92
80
148
94
94
148
66
169
105
185
118
131
69
107
175
76
80
54
91
87
80
80
74
52
71
113
132
94
89
109
99
121
101
107
68
128
119
112
78
104
123
80
89
101
67
79
58
92
117
76
138
80
96
69
119
106
96
110
134
104
154
89
121
136
80
137
112
78
80
78
117
141
72
147
89
104
95
69
101
130
78
81
85
69
131
163
121
80
148
127
120
151
144
52
80
80
140
102
151
80
104
87
69
80
90
114
117
69
78
136
78
96
80
153
175
107
131
94
117
175
99
78
78
78
114
138
78
151
103
140
80
137
56
151
91
154
89
136
88
137
93
145
154
118
117
119
69
69
149
89
175
176
43
83
80
91
106
93
151
80
107
128
94
151
107
104
111
78
140
88
74
114
199
66
80
113
112
113
80
52
104
64
99
81
113
142
119
134
121
112
106
109
77
143
69
89
89
101
132
89
102
87
96
112
87
85
175
120
106
106
128
94
134
120
134
175
99
117
106
146
54
113
76
120
145
146
74
151
107
112
42
80
80
119
162
87
112
86
154
56
89
88
95
74
76
95
76
69
107
163
132
88
69
151
93
151
127
82
140
52
88
113
89
140
109
56
110
95
99
120
132
119
69
109
67
175
87
115
89
80
69
111
136
106
113
87
112
119
98
78
80
87
140
112
106
136
87
132
79
75
87
129
137
152
115
164
175
156
78
82
79
87
69
120
69
120
148
136
107
132
97
69
136
87
80
71
137
154
104
121
128
87
107
143
80
94
93
87
80
69
72
89
87
128
121
99
120
87
112
78
112
164
76
199
154
134
137
156
117
107
88
117
120
175
83
80
80
120
131
122
88
175
97
111
87
145
80
76
110
104
128
107
91
99
111
88
128
172
146
94
134
76
132
98
117
156
78
125
69
89
109
129
136
154
114
78
107
154
69
87
117
127
80
88
142
119
80
107
143
147
90
80
80
124
99
83
109
121
110
148
119
69
151
89
209
131
64
87
69
156
80
87
54
119
119
173
98
87
132
119
119
169
120
80
175
160
80
69
106
119
127
87
107
121
94
89
72
69
103
76
160
117
104
94
112
100
110
136
71
113
138
128
69
120
80
122
52
91
175
150
109
63
112
106
72
83
87
80
126
88
100
121
102
91
113
115
123
93
67
69
78
87
107
69
117
131
100
110
122
121
103
89
163
120
97
76
175
121
106
134
142
150
99
112
107
80
175
82
91
107
80
92
155
107
68
76
136
178
76
99
115
93
89
95
120
137
137
129
63
126
140
88
80
121
76
106
113
106
109
87
131
113
175
111
122
118
98
164
155
99
135
133
89
136
112
80
127
107
134
136
151
138
52
102
72
127
80
101
80
131
119
121
134
99
132
175
176
99
117
94
75
122
88
155
56
96
117
140
115
88
69
80
107
104
151
80
96
115
137
111
69
120
91
91
93
93
197
109
69
80
150
80
117
102
112
99
140
139
109
109
91
57
126
119
75
130
91
133
101
78
159
76
120
147
54
113
85
99
110
67
78
104
78
69
121
175
76
90
106
69
87
80
104
80
110
117
80
138
134
69
140
76
143
80
155
99
163
164
126
119
142
78
109
69
80
107
91
121
132
118
104
87
87
88
66
87
72
121
54
69
88
104
106
69
80
154
128
118
88
119
69
136
128
80
110
119
122
120
82
156
69
89
80
80
109
133
83
109
110
109
112
172
146
133
127
143
113
131
120
119
80
118
106
80
151
107
130
98
142
181
94
80
94
76
78
127
124
101
110
109
144
136
87
99
99
80
130
68
157
99
154
80
134
98
106
97
104
113
87
131
87
136
124
185
91
101
113
108
102
120
74
91
88
106
133
127
69
69
80
152
120
76
99
130
87
87
145
106
67
107
87
106
92
127
99
147
96
107
145
93
109
117
112
78
117
143
152
102
106
87
99
97
163
106
130
93
120
118
137
119
103
95
76
93
89
121
94
130
156
99
69
127
108
80
102
82
120
120
80
116
128
113
100
96
136
93
93
80
154
118
163
63
120
85
138
151
67
115
104
94
80
209
88
197
80
201
106
78
76
99
112
148
112
140
87
87
156
119
69
147
89
80
80
74
80
175
117
106
104
114
119
156
69
87
69
120
76
71
104
100
80
144
116
87
121
54
109
69
105
76
106
110
117
95
103
119
146
69
115
132
128
197
137
175
69
128
96
80
74
101
87
94
123
76
69
80
80
80
137
78
107
138
99
76
113
155
80
76
80
131
143
91
90
138
69
107
107
80
69
148
137
88
107
71
118
80
99
134
95
79
123
69
69
134
101
110
78
116
106
85
80
109
132
78
80
101
110
197
72
74
87
96
80
80
128
54
113
109
87
112
87
69
134
134
103
119
69
93
78
143
115
156
129
76
119
156
80
114
113
67
74
109
106
69
94
131
197
74
112
124
78
107
133
113
109
121
127
111
99
163
111
143
68
87
96
126
72
76
98
172
110
120
80
80
91
79
80
106
128
87
110
155
69
69
100
130
80
87
96
124
134
94
94
80
118
87
107
92
140
72
89
112
138
136
103
127
94
148
120
131
94
123
109
80
87
93
125
106
102
156
106
143
175
80
88
78
114
103
100
69
174
119
107
87
149
107
99
127
140
69
106
78
94
69
93
111
88
107
146
106
127
83
130
107
64
106
100
109
89
87
102
93
69
109
140
175
59
111
89
132
80
82
101
107
69
183
83
88
98
56
136
89
90
120
95
100
112
121
93
69
117
146
112
117
73
111
154
112
154
99
78
78
150
88
89
130
163
119
80
76
78
120
125
76
128
185
136
145
101
91
131
114
94
109
76
119
93
119
129
69
129
99
127
156
78
144
118
85
106
128
77
93
87
100
112
88
95
100
107
134
59
130
82
146
119
156
136
107
88
110
108
99
87
134
80
91
80
112
128
146
103
155
80
76
96
113
118
137
100
110
69
163
120
101
175
93
78
119
89
154
98
104
107
131
154
106
78
69
96
94
123
104
151
87
99
106
128
69
69
134
101
154
121
69
163
119
134
69
113
93
69
115
67
112
175
80
111
76
136
164
144
120
76
100
157
69
123
124
79
58
130
94
123
85
114
134
154
87
89
109
150
78
69
99
117
125
141
104
87
119
102
147
94
120
100
155
89
76
115
94
131
99
113
139
109
87
150
164
121
199
69
78
78
125
100
106
107
106
74
78
127
163
110
110
96
201
121
110
107
107
91
80
102
123
109
69
80
69
76
110
96
86
69
80
91
134
112
124
120
162
113
119
87
94
88
72
69
80
122
69
109
88
114
80
69
110
111
94
118
145
88
106
69
112
156
56
114
57
69
120
99
88
69
83
128
80
94
117
117
60
80
87
78
80
125
93
80
74
113
69
78
91
69
148
181
127
69
136
101
87
76
109
88
101
175
107
87
96
201
140
113
129
148
99
80
80
54
69
72
98
69
145
134
146
101
155
69
160
89
76
81
80
69
80
80
104
122
134
112
70
119
69
127
114
76
82
113
91
89
88
99
106
80
102
112
135
149
121
136
69
80
108
87
90
131
76
90
107
120
160
120
129
140
140
123
119
74
52
87
82
120
54
87
94
146
80
52
146
134
102
78
69
136
78
78
93
84
164
80
119
88
136
121
80
80
208
175
110
139
76
87
120
136
69
211
56
96
146
80
119
101
87
128
78
147
106
87
96
89
73
119
104
136
80
113
101
113
88
76
100
119
69
145
89
94
54
155
127
146
86
80
134
134
91
94
115
106
156
102
94
138
80
128
187
93
156
119
78
80
99
120
175
107
69
80
54
87
107
80
80
63
78
99
101
153
106
80
69
95
96
134
112
80
76
76
101
87
72
99
76
87
110
80
109
89
128
181
78
88
90
76
154
107
131
146
102
127
137
106
76
115
120
69
79
126
113
151
128
122
80
80
110
102
56
107
155
80
129
78
174
112
149
119
104
112
89
78
120
76
163
151
143
106
71
56
96
175
130
107
76
85
106
130
76
120
69
69
119
110
69
80
94
78
113
85
140
147
89
107
107
76
131
113
80
82
131
78
128
88
154
144
156
83
147
155
94
94
155
76
113
124
121
109
94
153
93
80
120
76
115
80
104
136
66
119
118
128
69
131
94
106
131
110
93
128
104
106
93
89
69
175
89
129
101
99
117
93
129
123
146
106
110
101
80
134
64
123
151
110
120
94
150
100
101
64
107
79
138
79
175
131
104
89
99
72
69
110
69
69
118
69
146
80
91
199
91
106
120
101
69
136
91
137
148
101
129
145
205
69
56
123
123
145
72
90
96
112
113
144
69
113
76
110
74
88
135
80
100
128
140
109
121
110
112
89
134
175
80
107
124
156
100
80
107
80
80
107
104
178
131
69
115
54
119
155
80
80
148
72
87
89
120
122
163
88
91
139
69
103
115
74
146
113
133
78
127
118
101
154
72
175
119
89
104
96
87
52
69
205
154
131
138
56
80
78
80
85
104
128
128
142
87
97
201
126
115
121
76
104
127
151
175
78
156
52
106
119
140
79
108
109
69
144
197
104
69
126
54
99
172
96
151
54
105
66
146
175
82
117
72
69
94
80
95
119
117
108
151
104
151
89
91
137
56
146
110
80
158
107
101
141
119
110
78
131
94
129
87
72
80
121
133
143
54
108
69
113
100
96
87
80
114
112
154
121
89
99
130
109
87
167
124
81
90
69
128
164
118
107
154
156
69
112
132
118
103
158
134
118
166
95
96
80
134
119
80
92
83
80
134
69
120
69
88
149
80
111
64
115
94
114
88
74
146
80
163
124
140
88
119
197
137
117
69
131
87
110
146
93
107
80
87
120
88
138
76
114
102
175
72
69
67
132
131
69
69
102
109
106
100
76
91
87
93
72
72
90
76
89
103
119
107
166
107
90
134
69
144
78
84
107
99
136
107
96
76
141
69
146
120
197
69
131
67
134
80
67
175
117
126
131
106
69
56
88
78
91
78
88
115
146
101
119
93
76
80
75
104
98
78
130
144
78
140
80
104
175
172
117
137
78
150
112
133
80
78
76
148
85
88
137
155
110
80
68
76
87
124
87
100
106
93
72
160
80
76
87
69
147
120
80
134
80
72
104
112
80
76
133
119
87
78
52
80
124
87
69
106
88
136
80
174
157
124
140
131
99
128
102
72
111
129
103
87
109
106
145
114
124
119
87
114
136
74
131
94
136
104
131
76
78
123
80
142
80
136
127
77
71
76
128
148
80
147
152
75
94
96
133
87
87
144
134
80
66
76
129
134
69
114
113
104
67
71
109
87
127
99
76
120
134
106
80
80
110
128
87
78
106
120
131
76
128
138
69
127
99
93
134
99
99
114
118
120
104
72
91
102
121
175
113
144
113
96
129
80
110
69
117
120
95
110
99
175
119
80
69
78
151
100
89
94
93
165
112
80
93
107
76
89
88
154
125
119
80
119
107
78
120
97
136
118
154
120
117
154
89
140
80
113
99
145
69
94
56
138
126
101
87
171
69
80
112
69
109
138
175
106
87
54
107
175
80
130
93
107
74
146
136
106
89
88
89
76
102
80
72
121
80
103
96
94
134
87
112
76
56
121
120
128
107
119
88
80
80
87
76
118
107
85
107
80
81
92
87
97
94
131
80
58
117
80
138
137
83
83
113
146
129
99
175
87
197
87
112
113
146
100
106
87
112
69
87
109
73
91
94
74
76
131
76
119
80
99
87
118
99
109
117
109
107
110
108
89
124
119
73
76
78
126
120
132
123
156
80
143
140
80
78
78
140
126
76
161
80
197
143
88
107
95
112
78
111
126
136
113
99
69
149
111
130
76
136
101
143
67
88
80
109
137
109
175
80
103
112
134
98
153
106
59
114
109
117
93
106
197
107
78
113
76
69
122
99
121
80
123
127
148
136
127
150
106
101
80
152
107
99
121
128
78
100
121
107
96
155
80
87
109
134
104
146
104
120
154
147
154
128
69
126
175
107
80
74
143
119
99
113
80
107
93
80
93
87
69
100
78
85
134
165
117
135
154
164
107
121
155
95
128
115
87
80
106
69
117
95
104
120
124
175
79
88
89
113
88
80
175
80
94
78
80
96
83
120
80
160
69
78
140
128
107
85
72
96
88
76
69
119
94
94
106
76
112
78
131
54
80
120
99
87
90
143
153
94
113
93
156
87
126
109
123
131
120
120
98
113
93
145
109
137
69
94
134
80
115
107
119
134
117
133
74
78
125
94
88
97
102
119
118
117
137
80
83
87
96
72
151
87
102
112
76
119
104
120
91
101
80
87
78
87
80
78
113
154
189
144
151
156
107
120
147
107
93
150
119
78
158
112
110
92
88
80
128
117
115
101
69
87
134
89
123
91
121
104
56
134
99
129
155
69
101
77
116
175
69
128
106
85
144
89
104
76
156
120
152
123
109
154
78
161
89
109
123
119
99
83
118
110
94
111
93
175
101
92
128
109
140
87
74
106
80
80
175
80
80
106
128
164
72
69
104
87
175
131
94
107
174
128
134
94
93
104
149
121
114
102
69
78
120
131
175
120
89
119
111
89
126
76
85
119
146
87
101
126
91
104
146
197
112
114
107
76
80
131
118
85
154
154
93
128
99
80
69
69
54
160
80
104
118
143
80
96
119
197
119
136
52
69
175
155
110
142
69
89
96
109
127
133
112
109
94
96
189
88
80
107
80
175
43
90
80
151
120
89
110
88
102
69
113
131
110
160
91
93
136
107
87
156
104
112
119
90
103
88
87
113
93
101
129
78
121
80
78
109
80
93
69
71
120
118
80
88
119
98
109
78
76
109
101
109
80
131
96
80
80
69
91
80
69
78
136
120
72
115
154
87
96
127
80
110
90
109
85
143
109
175
180
101
76
112
80
75
117
87
80
120
89
85
106
80
104
109
80
113
75
116
157
80
87
87
80
58
159
104
110
76
91
142
88
74
91
147
150
119
111
96
52
131
129
145
69
163
52
124
117
140
106
144
140
120
76
154
178
151
69
69
121
87
107
80
130
118
92
69
80
175
69
54
69
103
134
107
76
119
87
128
69
87
78
110
110
104
87
101
131
118
72
54
119
76
163
100
94
119
96
96
69
118
99
78
143
74
123
122
87
128
129
133
132
80
69
87
117
119
143
71
110
80
83
96
52
175
69
92
74
90
106
99
123
78
175
107
102
78
69
126
87
130
124
93
151
106
118
80
121
130
87
80
199
88
69
116
56
106
89
93
137
131
110
69
115
80
109
94
119
175
122
122
73
94
107
88
122
123
138
72
102
142
102
112
132
124
91
95
92
88
128
80
80
79
142
101
95
101
133
82
74
112
80
69
136
101
121
93
124
80
110
146
89
88
134
123
77
76
99
140
101
87
109
110
117
136
112
154
134
152
119
94
128
129
80
132
142
110
117
74
95
102
175
175
131
117
126
117
69
112
99
113
131
94
154
78
126
145
121
136
80
102
83
109
106
80
72
89
79
151
80
136
72
121
113
95
107
109
76
99
69
138
87
102
80
104
43
139
94
80
69
114
152
69
87
76
69
120
104
120
140
154
119
100
83
89
87
122
104
78
69
88
113
113
96
69
152
69
74
78
112
109
69
94
101
69
87
67
69
96
85
147
69
105
152
136
93
110
131
117
175
80
85
156
69
121
119
136
123
106
80
102
95
104
52
124
144
94
69
80
113
128
119
99
89
131
164
72
126
123
112
160
156
80
76
175
174
69
119
106
155
87
143
100
161
119
109
69
155
92
80
87
82
119
99
88
89
129
94
175
82
136
146
102
197
155
99
89
154
146
80
104
112
119
79
111
112
120
106
88
142
94
187
175
99
81
69
69
134
109
99
175
120
197
107
72
158
154
76
102
147
109
91
118
99
123
74
76
145
175
78
67
89
126
131
87
94
128
101
122
134
92
109
94
69
120
154
89
76
152
106
149
121
52
161
88
110
106
119
132
121
164
110
78
103
87
140
67
144
118
154
112
132
99
128
99
107
106
121
111
151
139
104
117
75
80
121
123
112
69
145
124
121
155
72
124
75
76
109
145
107
125
80
78
88
174
117
54
87
78
175
174
87
137
89
154
69
89
104
109
130
175
80
116
91
104
113
131
76
130
141
78
148
127
80
87
69
101
74
120
102
80
76
99
74
79
80
144
117
104
100
154
80
85
67
76
99
163
121
140
78
94
109
81
80
87
97
87
154
134
120
106
96
112
134
146
122
69
117
128
89
87
74
91
85
76
119
80
131
103
94
54
120
132
80
107
89
54
96
95
93
80
154
118
69
152
87
154
113
76
76
81
54
119
88
109
89
104
104
98
119
140
80
100
134
118
76
121
99
60
112
80
76
80
112
114
138
102
134
92
120
69
87
66
91
89
113
133
117
89
80
124
80
80
78
87
87
69
119
80
105
100
106
87
145
89
172
76
80
123
76
93
128
127
106
106
78
126
143
115
88
136
175
88
69
90
154
117
159
131
129
74
89
91
109
93
106
85
131
148
155
69
128
131
80
76
110
80
99
87
144
114
112
78
69
109
69
87
72
122
112
197
137
93
147
132
116
80
112
114
101
89
155
69
120
69
80
104
107
89
88
140
115
123
128
140
87
69
87
80
114
110
112
197
85
120
127
151
175
80
106
107
112
78
89
78
69
96
69
107
69
117
91
109
76
115
109
138
56
130
119
87
88
80
171
66
74
69
163
164
113
154
96
101
83
159
85
93
72
155
121
131
97
137
87
128
87
119
156
110
91
109
76
175
175
119
130
78
117
134
78
106
94
155
151
155
103
128
72
155
119
64
141
148
87
146
88
80
121
78
80
156
157
80
139
99
80
145
175
111
110
114
158
109
175
129
160
156
119
139
134
143
162
131
99
73
107
109
113
140
155
93
69
80
87
134
69
107
67
151
144
131
119
106
151
87
110
87
88
197
129
145
68
76
120
90
76
78
175
129
88
80
93
69
104
117
123
89
69
80
69
118
120
136
156
101
113
140
119
89
109
162
109
56
87
110
129
120
120
118
111
113
74
104
125
80
150
164
107
110
78
94
119
72
67
80
78
102
175
128
156
113
80
75
100
119
74
99
69
82
78
69
123
87
76
82
99
145
109
80
99
107
59
80
92
69
132
89
117
163
74
83
72
86
197
117
110
76
94
151
119
175
104
74
83
87
91
102
82
100
89
66
185
94
52
78
87
91
104
110
122
99
74
80
126
131
153
122
119
127
104
119
107
119
124
99
163
150
151
89
154
104
100
175
111
119
117
107
164
154
164
82
64
109
89
113
93
104
129
122
76
134
112
75
78
152
112
131
148
140
114
106
87
126
142
112
80
112
110
118
117
91
139
131
156
109
74
94
106
119
69
76
120
184
101
137
99
117
154
157
112
106
145
117
78
156
80
104
89
119
85
107
72
128
78
128
109
96
80
119
69
89
175
104
69
121
84
80
69
72
90
125
107
119
175
80
80
78
117
96
76
118
78
69
148
160
120
107
138
146
80
137
205
104
128
80
103
69
80
87
156
124
94
94
69
69
69
109
118
154
146
72
117
109
127
175
87
137
107
146
104
126
72
87
154
69
131
52
134
85
99
43
80
107
94
128
72
87
69
152
162
102
116
113
123
128
146
114
76
120
127
80
146
78
99
117
78
92
151
99
119
134
118
87
107
88
119
117
121
109
81
78
122
87
84
137
72
80
100
107
101
52
56
134
119
138
76
128
69
124
85
131
120
140
151
84
80
99
175
155
99
76
136
120
83
117
94
72
69
93
129
136
131
178
107
154
80
69
93
56
110
128
154
156
120
78
100
151
89
110
119
197
131
99
120
120
128
89
89
69
76
145
101
139
126
69
155
76
145
129
107
87
160
85
136
109
156
93
89
106
69
156
88
76
138
104
114
162
146
155
109
69
78
69
78
119
121
109
106
128
85
120
118
99
69
91
149
78
89
111
69
72
96
80
155
126
76
104
112
140
118
117
125
156
121
69
104
111
134
104
131
69
69
109
175
106
87
69
88
80
103
136
92
76
87
91
127
153
104
144
113
136
78
80
131
98
143
162
74
123
128
131
66
149
85
85
121
104
88
69
129
82
69
80
123
69
113
69
96
110
87
117
89
160
59
91
76
78
85
151
52
163
84
76
112
136
97
78
174
104
89
89
87
43
80
99
106
80
134
132
69
127
64
80
92
144
87
80
87
78
112
174
93
80
110
140
132
87
121
69
103
76
112
76
134
205
131
121
69
120
117
164
175
93
87
75
117
82
74
125
113
72
99
128
146
78
91
93
89
126
136
143
155
123
164
120
169
80
69
140
137
103
137
154
174
99
69
93
100
69
110
121
87
94
76
163
76
110
136
112
151
56
136
105
175
115
123
119
175
110
74
134
99
107
147
100
76
80
98
78
143
107
197
80
78
106
91
99
69
117
117
120
94
82
119
98
69
69
128
135
107
111
76
118
75
80
87
146
93
174
151
126
132
87
89
92
151
126
143
113
169
80
154
106
127
114
69
123
94
78
131
100
136
88
150
94
114
89
120
69
56
119
69
95
82
185
89
99
94
78
80
110
88
69
88
104
99
126
123
117
87
72
69
151
78
109
69
104
54
123
123
156
126
103
101
80
109
119
69
119
78
145
121
123
96
87
112
80
106
142
94
131
107
69
69
80
185
80
175
112
108
68
88
80
136
163
80
74
107
106
90
82
123
197
103
107
104
67
76
115
151
127
101
69
106
106
117
155
112
175
99
136
99
119
142
57
120
127
119
143
58
143
69
140
88
154
134
99
76
69
87
99
100
72
128
80
128
140
113
124
134
120
110
89
100
90
69
130
83
156
201
69
107
119
131
175
76
56
117
119
154
124
162
87
97
111
156
76
107
80
156
121
110
63
145
140
87
98
80
98
128
120
110
110
120
87
76
145
69
94
80
94
137
80
136
104
139
107
85
143
120
94
128
129
69
109
69
78
87
101
76
78
89
122
85
109
119
76
99
54
154
94
74
119
131
152
120
156
163
175
121
113
104
90
89
69
76
154
99
107
115
107
119
128
117
124
130
119
87
134
72
74
69
112
175
69
90
120
78
75
96
120
132
107
96
78
89
148
103
143
130
75
166
140
91
139
43
165
69
80
174
69
165
69
80
154
78
154
183
117
175
124
128
119
156
75
80
186
80
76
96
127
130
110
101
136
87
69
109
163
80
81
87
80
122
88
120
78
113
94
120
119
135
109
97
124
80
119
78
52
95
107
69
87
143
99
87
92
69
130
88
69
134
119
94
69
69
91
72
101
76
145
72
69
120
80
87
76
78
106
78
91
78
128
88
99
80
100
91
118
110
69
72
78
97
146
112
126
132
99
80
107
118
145
137
144
102
113
124
88
76
128
117
85
78
114
87
69
101
93
119
125
129
119
128
125
110
69
112
152
131
155
142
94
94
78
76
80
69
91
128
126
116
140
197
106
87
112
175
104
106
93
106
95
125
89
69
78
78
128
89
119
163
122
95
163
155
116
141
122
71
131
94
119
128
87
107
114
120
120
126
109
123
85
69
91
71
89
74
101
80
98
113
93
87
113
114
89
109
64
87
164
119
76
91
132
123
72
76
69
87
177
183
131
89
88
116
110
105
110
128
80
146
87
87
128
87
89
120
131
121
114
120
131
78
87
78
175
137
110
89
140
107
141
127
125
94
136
156
80
111
126
69
155
185
90
149
88
80
104
146
104
100
119
52
128
114
72
107
88
76
80
98
154
122
116
109
76
69
119
128
80
78
128
80
69
78
98
103
80
78
109
87
101
119
80
134
113
136
73
89
124
128
134
80
127
120
130
78
118
72
112
69
119
94
151
80
89
80
134
152
136
134
69
134
69
123
69
94
109
93
154
69
69
78
104
109
201
90
78
76
109
110
87
121
112
80
72
120
97
88
119
80
87
63
66
69
102
145
66
118
128
74
134
80
146
128
107
134
80
66
100
52
83
143
83
115
69
80
93
118
120
78
106
72
105
118
87
128
145
88
110
113
80
68
120
136
96
91
101
155
132
56
104
104
69
156
131
106
101
87
113
72
118
69
99
96
132
123
69
78
125
153
149
112
151
103
98
94
146
109
154
137
136
132
87
88
155
94
87
160
83
156
114
87
119
146
175
193
76
120
104
80
114
119
94
128
96
119
123
136
163
148
206
120
156
93
110
95
136
152
183
69
87
76
80
94
71
91
93
140
88
148
87
122
69
87
107
148
117
120
87
107
145
95
94
99
64
145
183
88
122
69
87
92
74
88
111
136
146
127
80
164
52
80
148
145
98
90
112
80
80
64
104
121
170
94
140
76
109
120
134
96
110
119
88
137
69
111
99
145
125
111
120
89
109
109
80
80
153
67
107
76
117
69
120
104
120
107
103
97
145
69
78
142
88
94
69
87
117
89
69
107
54
101
103
106
107
80
89
146
90
104
96
117
123
112
76
67
148
87
131
102
145
127
102
110
138
80
121
112
124
87
126
99
67
104
128
136
80
80
160
76
64
88
137
87
106
58
140
144
99
148
103
116
78
151
138
113
80
109
102
140
99
121
123
72
117
109
110
140
80
110
106
80
120
80
87
106
78
145
148
80
74
94
80
111
109
119
152
93
76
125
80
94
107
99
120
80
133
145
76
107
54
112
80
147
69
80
52
137
175
94
113
83
120
76
117
100
104
151
52
109
118
151
80
126
99
111
69
114
78
91
66
181
111
69
78
88
134
66
80
112
106
76
175
112
96
130
96
69
146
76
76
99
80
76
154
117
149
107
131
102
96
123
91
120
110
128
144
94
122
91
69
121
132
78
81
117
124
69
93
147
76
102
80
95
93
69
80
113
80
175
136
103
109
100
95
78
133
69
133
88
87
100
80
134
119
156
175
85
92
92
80
105
106
91
80
69
78
99
69
116
80
98
87
88
154
80
133
146
131
94
69
175
99
113
112
54
103
96
120
52
109
89
185
89
110
120
109
118
144
119
114
106
107
80
100
103
106
109
175
181
175
98
87
76
87
93
93
119
134
120
78
107
54
115
119
122
69
72
113
102
78
99
99
87
131
69
160
132
91
87
119
134
136
122
69
107
120
102
111
119
87
154
69
136
112
66
69
80
128
99
154
154
76
110
126
124
112
80
94
91
93
132
69
101
67
78
87
97
127
78
153
80
107
107
122
111
80
80
78
128
110
109
78
110
106
113
149
152
169
109
128
118
122
80
88
166
137
72
69
80
104
115
96
87
107
80
76
80
69
78
150
80
108
199
156
128
143
119
80
175
119
109
127
121
145
102
78
117
142
130
58
99
109
124
107
91
69
68
128
69
133
69
136
100
133
155
96
128
113
76
111
124
131
134
80
107
109
155
116
72
138
69
99
128
80
112
128
76
59
205
98
152
82
113
175
117
81
78
87
58
120
119
112
139
71
187
146
89
140
154
137
120
82
160
80
150
156
183
79
175
119
72
138
122
119
75
106
87
155
97
80
80
104
87
80
69
156
87
133
80
54
102
80
101
54
104
72
69
78
92
88
102
119
138
133
117
104
85
111
88
102
80
127
137
78
105
76
156
88
78
78
98
94
147
110
93
57
119
102
175
76
99
175
83
87
85
80
140
91
156
80
103
106
128
156
128
125
132
138
131
76
80
69
156
132
175
154
104
112
76
56
93
71
94
74
117
130
75
160
80
107
80
89
120
80
111
149
163
94
90
82
115
69
107
143
99
113
146
87
130
78
154
88
98
85
102
78
131
113
91
111
113
102
80
80
56
88
146
124
88
87
74
80
69
132
102
90
119
119
128
80
128
116
98
120
96
109
128
76
175
114
112
69
80
80
106
112
175
89
114
56
80
80
107
129
148
131
76
109
119
91
151
83
143
121
107
140
100
99
136
109
141
88
164
76
99
93
78
80
93
94
87
112
175
88
175
76
109
91
89
76
133
78
80
134
106
56
87
74
112
69
124
80
118
109
118
80
140
160
80
119
155
89
120
99
89
110
86
107
78
140
156
69
174
120
78
160
112
76
75
88
136
80
69
87
148
110
128
119
69
156
118
80
87
120
175
87
121
154
121
87
93
76
87
91
119
162
162
128
93
69
102
100
117
137
112
80
79
138
80
80
87
87
140
148
80
78
148
126
144
107
92
101
142
106
112
80
114
88
92
99
103
146
175
154
67
123
109
76
89
110
117
109
119
59
52
131
87
118
127
154
88
121
126
154
91
107
72
104
109
87
80
131
109
201
128
76
80
80
127
120
119
72
64
69
80
58
89
153
64
119
147
87
119
128
115
113
95
101
76
175
69
175
128
147
114
72
144
128
113
98
69
109
72
87
175
101
69
120
106
122
80
69
143
99
109
123
98
109
92
197
140
112
96
88
101
163
123
98
87
56
174
91
102
83
120
160
80
121
80
78
85
72
112
197
134
154
69
120
102
157
107
88
76
155
54
148
127
116
107
64
132
109
144
69
148
106
88
154
87
114
76
72
119
146
131
150
80
134
119
69
88
102
76
90
93
96
110
107
91
99
142
104
111
144
136
122
92
98
140
175
107
99
107
54
78
80
102
98
113
71
89
80
127
87
113
132
154
76
107
110
185
69
94
128
76
89
131
111
118
80
107
96
140
147
114
123
69
126
80
80
130
102
131
163
122
134
87
76
101
104
98
156
88
69
56
197
96
152
116
107
107
95
119
109
80
88
94
134
78
120
69
52
76
120
99
78
122
164
107
196
136
104
107
117
90
99
93
94
154
80
131
107
103
93
67
78
128
106
121
121
76
69
116
113
69
165
175
126
112
99
72
131
78
94
80
123
95
155
80
99
67
69
175
112
119
140
80
122
128
87
64
155
120
93
80
100
79
110
175
94
107
122
94
76
155
81
128
152
69
113
148
118
117
87
102
88
69
115
154
127
78
112
54
78
94
106
95
111
78
76
109
76
118
83
99
94
52
157
157
107
76
109
88
201
80
78
169
139
87
144
130
80
94
89
88
67
127
80
54
64
80
120
69
134
115
91
109
110
69
88
141
115
154
74
109
91
69
163
119
80
81
79
103
166
87
109
80
109
89
98
91
175
128
121
115
130
88
76
72
88
56
80
76
92
78
102
164
88
98
154
148
131
120
94
87
103
87
114
83
140
80
107
140
99
140
129
87
112
156
87
104
99
87
80
97
140
88
80
100
57
140
99
87
109
105
140
79
88
197
109
120
56
78
159
76
140
138
131
163
127
91
156
175
121
125
120
80
72
96
147
152
83
119
110
80
131
96
175
151
69
78
90
80
92
110
136
154
94
80
87
119
87
89
69
87
95
99
76
54
197
69
87
95
104
121
87
69
156
96
69
143
95
89
107
99
117
109
127
58
80
120
93
115
123
147
137
72
52
126
92
106
80
133
110
113
64
99
56
88
106
91
119
135
71
94
64
112
109
103
136
110
69
119
96
107
99
104
80
97
126
83
80
111
85
95
107
93
124
80
80
149
127
80
165
99
163
80
155
120
98
100
113
89
134
67
69
123
78
151
117
134
107
79
128
76
95
80
88
76
98
72
166
99
74
88
89
89
128
109
103
89
80
127
138
145
87
88
94
151
99
121
69
87
85
129
87
78
69
72
87
87
112
69
99
122
146
100
76
131
90
96
80
76
76
119
107
142
104
64
101
88
76
140
197
118
89
143
145
126
80
80
107
117
111
151
88
93
83
127
69
76
87
155
197
123
117
109
163
113
78
118
76
88
154
138
131
95
120
69
111
104
114
161
78
52
115
52
83
106
80
101
88
72
76
121
88
140
85
104
132
153
90
175
87
113
104
169
76
128
175
69
163
52
115
151
107
80
96
99
69
107
93
100
107
80
52
69
72
155
120
117
123
131
148
91
76
106
127
77
69
142
80
166
150
117
88
78
72
113
148
75
89
91
80
136
146
107
103
107
80
80
109
121
201
128
132
127
106
101
76
117
104
78
99
117
69
69
115
96
109
148
92
69
131
101
87
133
104
89
89
69
89
90
119
88
107
87
59
100
54
113
107
113
119
107
101
107
94
80
120
109
146
131
87
80
197
142
117
88
123
145
154
107
88
69
125
116
121
74
80
76
71
119
104
87
78
100
87
78
78
73
127
106
110
103
137
119
94
113
69
181
91
112
94
76
102
76
165
95
146
201
99
116
106
87
172
154
109
125
154
122
89
144
87
155
79
118
100
100
69
110
144
87
87
109
88
99
156
106
117
69
174
88
110
140
69
175
69
197
89
76
87
137
175
118
80
160
127
120
96
136
115
60
88
102
60
151
99
80
109
52
119
71
89
154
126
85
60
124
172
137
119
80
104
121
76
94
77
134
109
103
87
80
128
107
91
140
131
110
100
52
172
107
80
101
87
72
107
91
78
136
113
80
110
89
73
96
134
69
78
136
134
117
142
76
94
112
175
80
122
80
69
124
121
175
120
154
137
63
69
107
69
112
110
175
57
82
164
79
93
74
89
101
175
197
95
88
141
107
100
78
120
156
87
129
160
76
80
109
156
69
114
79
138
85
88
136
96
136
122
131
136
89
110
80
127
80
52
112
130
136
69
128
95
163
137
148
118
110
67
94
85
109
115
94
88
113
89
88
122
87
110
88
140
109
104
90
175
102
117
69
121
136
197
92
96
156
86
121
160
80
89
89
120
137
128
98
87
131
105
78
80
120
177
87
94
110
91
82
121
154
80
112
93
52
87
102
151
143
119
134
156
101
132
87
118
80
69
106
76
72
80
117
82
131
110
100
88
140
87
143
175
60
175
117
72
164
80
76
120
126
175
121
78
121
80
99
89
93
101
102
106
132
90
143
130
120
112
113
80
119
123
175
80
110
134
80
83
148
90
69
69
146
131
123
80
87
94
137
104
111
80
128
80
87
119
88
99
178
154
139
80
80
134
110
94
120
94
80
99
117
69
84
107
88
52
151
151
80
119
121
133
156
69
78
137
80
164
89
104
100
94
99
109
156
75
119
69
78
72
125
104
107
85
104
76
99
69
95
88
146
104
93
96
156
88
78
145
109
111
99
154
123
88
80
136
140
120
87
89
127
131
132
83
107
140
92
72
69
56
110
99
83
103
76
136
123
109
110
80
54
87
76
104
87
120
80
120
63
131
80
82
88
104
110
131
104
112
94
104
104
72
94
153
115
64
120
154
160
128
91
91
80
155
113
99
117
123
80
143
107
80
120
80
54
104
80
80
116
87
106
175
118
78
140
104
148
87
143
134
175
80
109
152
83
75
119
89
113
96
69
74
69
93
94
100
121
67
117
136
78
75
120
72
43
52
148
154
131
87
112
129
80
154
74
76
99
93
156
80
98
76
80
137
85
72
113
115
88
164
131
66
175
99
80
109
80
66
69
122
76
83
113
96
52
150
99
98
113
80
88
69
89
153
112
145
80
80
138
129
175
89
110
87
197
128
69
120
119
80
79
119
113
119
90
156
128
80
78
87
91
199
96
125
78
107
174
154
129
134
110
128
109
93
94
80
131
80
133
176
146
78
69
72
88
107
83
87
117
107
69
109
102
142
113
58
96
89
76
69
89
85
122
131
121
134
96
134
76
132
119
91
80
69
144
124
143
69
110
87
80
80
66
94
122
132
80
175
119
101
175
111
154
156
127
69
133
118
80
94
104
80
197
129
113
134
156
80
90
164
73
106
113
87
78
56
121
96
87
154
78
115
69
124
87
69
137
134
87
78
54
128
94
96
101
175
134
113
110
69
72
113
87
69
80
80
91
131
156
118
90
76
56
78
99
72
119
69
128
127
69
69
74
175
154
142
199
143
69
136
96
136
133
101
54
157
119
106
87
112
56
96
161
91
98
72
88
118
80
94
133
119
52
106
82
112
181
87
146
120
119
107
80
137
69
104
80
82
131
154
69
75
116
80
85
134
134
87
81
69
134
102
110
78
80
90
106
132
140
122
102
112
146
54
115
76
164
69
104
117
87
78
138
98
131
151
154
159
69
151
72
99
113
69
120
107
119
67
147
69
104
103
119
78
104
110
107
76
99
96
80
110
104
72
87
144
80
83
103
104
134
76
99
78
107
102
106
80
140
137
103
85
78
94
91
145
148
104
108
87
78
76
86
87
133
87
131
110
64
121
112
128
116
120
43
119
107
91
155
90
111
99
78
154
99
87
88
175
120
120
146
76
80
131
78
99
106
150
80
87
165
80
141
96
148
94
96
130
119
118
89
88
115
106
98
128
127
120
137
67
119
102
88
120
127
69
69
95
127
92
83
88
112
114
85
78
128
80
98
120
83
80
69
111
94
110
76
125
76
80
54
110
147
154
137
76
87
118
69
110
69
99
116
94
107
128
80
72
72
197
128
103
60
88
76
120
159
72
91
91
74
147
100
111
133
99
52
143
156
118
80
76
128
69
104
87
91
110
60
69
160
107
76
102
154
102
106
127
88
107
121
175
78
120
87
69
128
197
110
80
89
87
163
154
121
112
106
87
115
122
69
107
80
107
131
100
141
96
80
89
80
121
80
92
94
109
140
100
110
104
113
129
119
69
112
72
69
80
134
120
128
97
100
127
59
106
112
101
118
110
112
69
164
108
114
112
126
121
106
89
76
141
88
140
80
120
93
118
101
69
120
118
120
76
136
98
87
87
120
115
96
136
94
85
126
123
131
110
94
175
108
74
109
153
91
117
72
91
108
119
154
111
148
144
89
99
80
197
128
80
122
107
87
76
110
126
165
113
74
78
134
69
102
136
80
104
138
120
71
88
106
125
155
136
80
78
107
140
80
136
107
87
117
91
128
69
94
69
175
138
175
87
131
87
88
155
101
118
136
87
118
120
123
119
104
138
87
69
175
80
71
80
197
96
110
80
151
112
175
76
76
78
181
103
78
134
89
102
82
104
69
137
113
120
103
69
99
104
142
128
76
88
128
78
69
80
52
144
69
78
72
112
130
72
138
103
130
163
183
113
82
80
89
76
121
80
106
87
112
143
76
151
106
109
79
143
110
136
131
87
91
69
115
101
104
126
162
121
143
120
80
154
80
175
80
56
94
87
113
80
129
95
78
69
80
80
76
144
80
134
78
144
151
175
90
87
159
88
175
102
102
166
78
122
80
80
138
146
78
69
154
136
78
83
107
162
94
80
117
114
89
69
117
110
132
87
142
124
94
112
87
116
87
148
126
109
99
87
76
80
114
132
77
152
119
154
134
104
69
69
109
72
140
82
43
174
143
107
194
80
140
80
76
156
113
79
87
74
111
72
134
128
140
100
76
107
76
74
114
125
122
96
107
115
121
78
109
107
128
86
94
149
126
78
80
110
96
127
151
74
128
78
80
101
80
110
130
69
88
69
115
90
112
92
91
107
132
131
152
142
104
106
143
80
69
97
88
101
120
112
113
154
104
119
120
89
163
69
120
80
118
131
80
99
106
187
80
76
172
80
126
89
80
86
123
92
80
89
142
69
113
137
87
98
88
151
106
118
80
76
59
175
142
78
89
88
121
155
98
89
69
87
84
114
131
113
87
76
119
154
125
117
107
84
163
175
80
89
72
120
69
121
138
100
121
104
109
120
93
89
110
88
126
93
106
142
91
150
72
104
140
100
92
98
102
161
124
121
134
128
106
147
116
131
110
87
88
112
69
161
109
91
125
110
120
102
87
115
77
95
80
69
134
126
80
110
140
109
87
69
72
86
117
130
80
64
104
134
76
78
76
101
155
88
78
119
130
101
107
80
96
140
126
119
111
138
119
80
144
87
76
85
175
85
175
69
104
117
76
93
183
152
119
104
76
99
136
69
78
119
80
94
120
131
80
76
107
111
102
81
154
96
93
80
88
114
122
128
138
119
100
130
52
154
117
78
129
94
88
78
82
83
120
67
76
142
113
109
131
94
76
80
80
112
88
106
125
131
67
123
175
106
119
106
97
87
128
111
120
118
96
69
120
119
144
91
119
120
76
145
69
87
100
126
120
131
167
143
75
76
80
76
69
140
71
121
96
121
80
100
85
113
89
87
99
83
85
88
125
69
117
136
80
98
96
87
144
91
112
140
140
120
201
175
88
94
69
107
138
93
175
80
110
101
80
80
137
76
122
125
112
121
106
69
138
117
107
110
146
109
91
142
110
119
110
106
121
99
80
96
117
140
80
185
123
74
73
92
69
140
69
80
148
148
111
94
69
163
87
117
76
80
155
147
100
80
137
87
87
72
80
69
113
136
156
104
103
80
89
116
115
119
155
107
91
88
119
78
87
74
89
125
128
133
87
110
113
92
145
144
94
102
126
84
104
78
121
106
99
87
147
96
144
128
99
78
69
144
76
99
112
90
157
112
107
102
118
56
80
110
154
69
87
87
109
69
136
109
111
88
89
96
112
113
90
69
130
175
93
75
131
52
72
138
165
152
80
118
74
126
104
99
80
102
76
89
89
80
94
109
80
119
151
80
137
80
83
131
71
82
146
116
87
106
88
88
137
126
76
185
69
120
102
76
98
93
93
76
113
80
104
89
145
78
136
109
80
80
155
106
104
99
174
163
111
146
136
118
88
59
128
78
79
136
87
142
89
151
80
128
110
80
76
120
129
146
121
128
69
145
107
131
119
80
67
107
94
85
118
69
154
90
127
80
59
119
90
111
107
128
99
69
94
115
87
54
76
142
120
72
143
120
89
129
147
121
76
80
91
92
120
120
85
87
127
155
98
151
107
134
124
93
99
131
131
117
121
52
119
76
72
89
85
81
111
131
80
120
111
72
136
80
113
66
128
160
78
85
113
150
145
80
104
151
76
69
91
83
78
131
89
151
66
113
80
80
155
148
83
109
82
131
80
133
149
94
80
80
119
136
96
118
128
72
69
80
93
109
110
126
87
120
145
87
136
69
110
119
90
114
80
56
134
111
145
83
69
110
94
114
131
155
149
163
43
80
139
122
123
129
134
111
111
80
120
122
76
99
164
145
94
175
87
88
99
151
72
107
134
119
69
98
106
112
87
174
119
145
99
109
83
136
121
151
96
78
104
72
93
100
76
88
164
113
109
164
119
104
142
79
119
106
80
131
155
87
106
69
78
122
160
109
72
80
87
119
121
76
110
78
93
91
93
78
69
112
136
120
140
131
89
67
80
107
120
115
76
110
56
79
141
113
109
132
83
128
121
80
151
107
110
87
109
87
100
107
117
85
134
91
87
175
113
136
69
85
108
93
88
140
181
143
78
110
117
122
69
110
127
87
93
69
109
136
112
87
114
104
87
134
110
91
83
80
175
93
108
88
87
78
72
88
78
107
78
78
175
120
106
130
96
181
134
69
127
109
136
87
103
87
69
117
80
85
119
109
174
96
175
103
129
72
128
104
145
155
94
78
112
80
175
175
91
123
154
96
80
110
133
128
151
87
175
100
76
119
76
142
112
109
99
88
72
99
145
104
131
101
123
118
76
111
167
110
106
137
119
146
119
121
89
144
80
94
52
75
113
118
80
107
104
136
87
88
87
131
110
143
109
120
163
76
150
197
115
118
74
115
122
115
105
134
75
87
99
100
107
119
76
95
101
175
88
85
119
175
76
80
121
76
69
69
120
103
164
129
96
107
99
134
175
78
98
118
124
114
80
120
141
54
124
123
66
88
101
197
154
107
76
80
143
89
88
80
109
131
87
106
97
88
107
80
93
52
87
107
94
113
69
150
111
130
117
87
115
107
185
80
76
101
110
87
80
73
78
99
94
145
113
197
128
117
139
72
59
80
72
154
69
80
119
66
142
110
114
123
162
113
101
71
133
90
127
163
118
80
127
93
80
69
144
111
121
91
134
69
143
125
128
127
69
103
80
122
104
154
145
127
69
153
81
163
120
90
106
129
98
152
80
103
129
99
134
120
94
128
146
145
88
121
137
183
156
104
131
122
89
197
117
123
80
59
89
116
132
155
78
80
142
175
93
99
119
72
80
128
134
99
107
88
154
131
100
146
89
96
78
163
71
104
88
99
144
143
122
135
69
107
69
111
117
147
69
146
78
102
114
76
80
130
148
118
175
80
121
79
127
122
109
175
107
96
99
100
183
123
112
101
119
69
131
112
76
140
102
99
175
115
99
69
80
56
87
76
85
102
90
87
175
79
43
152
120
141
99
99
104
118
126
140
99
128
71
80
148
87
80
107
145
120
134
140
175
80
85
117
154
69
88
160
143
142
43
126
107
71
89
107
106
96
78
129
154
78
116
77
78
80
118
121
69
43
94
96
80
136
123
91
145
99
85
69
120
109
74
181
80
89
78
174
74
147
69
100
110
175
175
156
110
87
69
197
64
89
107
98
87
99
80
80
72
96
78
88
74
129
154
76
76
78
115
78
107
127
151
92
116
120
112
142
120
80
106
80
80
123
87
157
88
111
135
78
99
156
161
103
89
132
80
162
119
73
106
117
114
106
129
103
118
73
91
76
100
99
120
99
72
69
119
74
81
80
113
92
197
69
118
114
96
57
105
136
129
127
109
107
72
78
76
80
87
143
145
99
87
76
175
80
78
121
109
118
128
104
89
199
136
70
120
69
97
121
80
56
125
76
119
119
140
82
85
120
69
119
131
106
151
87
151
127
93
111
104
112
91
94
103
113
127
104
145
104
78
80
121
154
102
101
131
99
83
142
54
99
113
147
79
119
69
78
119
69
80
80
117
80
140
107
59
80
76
100
74
101
119
185
127
115
128
80
72
140
92
126
88
99
87
128
133
87
156
113
89
73
87
106
103
137
115
56
80
100
128
145
107
155
163
89
135
90
154
133
175
106
100
142
160
127
80
119
112
197
136
110
118
88
155
128
208
78
76
97
119
136
119
112
78
144
78
111
134
127
154
52
85
69
107
146
117
134
92
134
113
100
115
87
157
151
120
151
78
114
87
117
69
119
80
80
120
118
56
91
69
107
98
197
80
121
80
121
80
164
80
120
76
69
69
113
85
107
77
69
109
106
137
174
96
149
91
60
69
120
87
90
78
116
80
43
56
125
111
145
114
151
155
80
156
69
107
94
151
110
175
119
126
127
96
156
94
104
95
122
101
96
113
106
91
69
76
133
109
69
185
118
99
104
69
83
119
128
125
69
69
183
75
69
80
78
78
87
80
175
102
104
89
78
69
130
160
88
119
117
144
80
110
87
121
96
109
112
107
76
131
80
110
197
90
151
72
80
94
78
107
197
118
135
76
113
127
139
121
105
78
137
131
113
76
129
82
112
110
107
104
80
109
69
154
80
89
94
91
88
86
132
80
119
98
69
107
82
101
93
78
109
69
127
80
86
134
101
154
151
122
120
78
101
80
113
78
80
137
125
78
131
146
187
76
103
80
122
111
99
94
140
90
69
67
90
99
107
112
109
119
115
127
76
69
141
98
157
146
137
183
87
80
87
110
143
109
106
80
79
120
119
79
91
78
117
107
78
175
78
127
80
113
113
135
99
127
120
89
76
87
80
138
78
119
87
69
100
128
145
89
122
113
80
78
114
175
123
113
175
127
126
78
131
125
87
112
94
72
80
175
109
119
69
80
96
114
147
134
80
109
80
114
80
121
131
74
151
172
69
112
87
80
140
99
112
93
80
69
93
197
155
87
104
134
80
88
94
78
196
114
104
120
148
112
80
119
136
155
89
156
150
69
76
97
123
80
99
144
69
164
114
96
134
151
85
166
132
131
109
140
155
137
80
95
144
133
106
110
90
134
69
59
69
106
92
150
146
94
146
76
69
106
136
87
121
101
74
145
105
73
119
163
183
136
136
76
99
160
126
113
125
175
96
146
89
175
99
121
127
121
87
103
76
80
145
120
76
107
134
69
75
120
127
100
99
90
112
121
117
141
143
165
119
107
79
119
87
97
87
69
99
69
89
80
80
89
76
64
94
96
142
85
119
80
121
106
110
175
123
140
175
87
80
127
120
79
99
150
154
107
104
147
91
121
64
107
87
120
118
121
110
119
107
175
80
106
69
80
99
184
120
88
113
87
91
119
96
120
129
136
69
156
96
166
95
96
99
78
144
131
106
112
85
69
134
80
154
131
104
156
139
115
160
93
90
137
75
74
143
87
71
80
109
69
140
111
113
88
107
137
175
134
78
87
107
107
69
151
90
132
126
80
129
88
118
154
119
113
109
112
88
91
67
69
56
103
146
76
111
89
128
96
154
78
80
89
136
107
87
112
87
80
131
69
104
119
69
69
187
112
136
112
120
87
123
87
104
134
107
80
119
79
102
175
120
109
76
92
80
148
90
137
83
107
137
66
122
133
134
56
120
80
124
80
111
156
80
170
91
148
146
54
98
110
88
110
109
97
109
122
109
136
106
106
96
156
69
78
69
93
119
124
80
131
80
93
87
127
69
128
103
140
156
100
102
159
72
75
148
136
80
112
91
118
144
52
79
92
113
128
71
99
100
107
109
96
107
117
78
69
133
101
175
139
110
175
72
93
110
117
93
148
87
124
106
140
154
69
119
156
101
140
94
72
80
122
121
58
99
104
151
83
127
123
103
76
93
132
91
119
87
75
99
80
88
128
121
69
80
80
94
69
118
87
66
140
118
166
80
140
118
127
128
140
113
134
80
91
119
131
89
80
140
106
76
80
99
102
80
113
107
105
183
87
80
154
110
52
112
157
107
78
69
117
94
111
154
132
132
87
119
128
96
69
140
149
106
117
103
160
80
96
98
99
94
150
176
87
104
140
94
78
109
87
121
150
94
121
89
76
95
69
132
99
113
145
78
104
78
80
74
69
69
72
109
175
114
90
69
87
134
115
78
80
96
128
121
120
69
110
80
155
131
118
80
115
69
197
96
155
88
104
155
163
131
80
140
110
175
124
85
116
80
161
117
69
123
107
69
76
91
89
78
96
108
137
134
93
147
72
96
119
108
69
102
93
106
100
131
109
80
104
76
82
116
134
83
103
80
87
114
69
119
99
72
125
133
99
99
119
154
69
87
120
99
69
79
136
103
132
80
90
121
119
69
80
80
114
134
106
112
140
93
106
87
113
120
144
152
80
94
197
69
175
85
104
131
147
145
76
115
80
104
80
120
87
87
137
69
155
80
79
78
118
100
137
154
134
69
127
154
146
127
91
107
175
136
199
121
199
104
109
140
88
78
80
156
80
93
80
109
199
69
183
120
80
95
78
133
177
136
136
118
131
78
69
120
122
52
72
129
134
76
151
100
109
43
78
113
69
128
120
114
128
128
58
100
113
136
88
106
106
144
107
110
76
112
80
92
133
94
105
66
69
78
69
80
119
121
107
115
69
96
69
99
80
120
88
80
87
175
89
69
90
94
121
130
117
117
89
136
107
87
121
76
147
76
69
69
87
69
88
119
137
80
143
96
117
104
122
106
69
69
147
197
76
146
112
134
79
80
141
95
80
80
121
116
87
133
155
100
119
68
117
80
125
96
63
96
80
52
76
156
133
110
91
104
43
143
80
96
69
151
80
93
80
99
127
95
109
107
89
56
56
114
69
89
131
118
80
76
120
108
121
69
120
144
153
115
112
76
69
69
107
78
99
108
96
118
113
98
68
102
119
69
140
99
132
71
69
183
127
119
119
72
88
74
76
109
69
107
96
148
155
75
69
176
69
104
156
89
112
87
89
99
117
87
74
110
91
80
129
91
127
121
134
106
156
120
118
112
125
112
120
100
69
106
112
78
69
80
96
94
134
154
136
161
69
87
107
91
120
136
89
118
159
43
99
107
104
76
115
80
78
88
106
159
122
80
86
87
140
76
94
69
107
127
120
119
101
73
144
113
117
80
101
56
72
102
106
155
76
87
104
132
91
125
106
76
118
113
110
175
111
80
80
80
87
117
131
115
101
142
69
145
140
175
88
80
80
67
120
98
162
83
107
109
101
78
69
100
115
127
120
80
69
123
154
107
120
151
143
102
109
109
95
69
80
89
80
131
78
102
156
107
116
88
154
88
117
115
133
111
99
76
87
80
80
87
104
103
99
80
72
104
78
113
121
89
105
197
69
76
148
116
98
68
67
103
104
145
75
154
98
80
136
96
128
129
87
117
76
112
114
99
82
165
102
129
76
87
131
121
76
99
80
119
80
67
119
102
111
88
118
101
141
134
87
76
90
111
111
76
60
124
115
98
93
80
149
80
103
144
102
89
80
72
80
87
117
78
104
80
106
78
81
103
120
74
102
169
85
80
69
201
120
83
87
92
69
83
102
132
138
101
134
132
124
78
106
102
69
102
185
154
69
103
128
94
85
78
76
197
101
80
87
76
151
86
104
94
121
74
57
85
118
102
150
80
151
87
128
128
94
67
146
106
74
154
134
154
113
164
80
78
127
131
128
96
121
69
85
99
130
80
197
102
128
134
88
119
112
174
58
116
156
110
102
129
106
175
80
87
104
88
119
69
90
127
143
93
120
78
91
163
134
118
80
76
113
109
134
151
94
89
93
124
118
91
89
101
80
100
80
80
87
122
120
154
152
54
93
209
99
80
80
126
99
101
127
134
183
78
78
175
155
80
154
156
87
121
87
94
69
99
98
93
134
74
110
143
79
96
78
104
102
78
72
85
111
76
159
119
120
109
104
131
72
134
103
104
174
111
148
87
69
104
80
100
128
121
120
98
102
75
78
87
160
111
80
80
124
151
71
143
80
67
69
88
113
91
93
131
107
93
100
89
120
154
151
109
87
119
128
106
76
140
146
100
117
131
69
115
83
107
80
120
111
160
172
149
117
143
69
143
120
80
104
113
181
76
76
143
85
85
96
145
110
104
87
69
109
143
109
69
80
98
66
140
115
119
128
112
145
117
166
76
131
69
103
131
137
94
211
78
80
91
123
80
119
99
99
102
145
69
147
146
164
112
175
64
99
134
120
107
132
174
119
155
94
128
174
100
80
107
80
80
69
88
97
88
156
199
106
76
87
119
86
110
88
89
118
78
94
87
76
107
185
43
90
88
78
101
91
69
128
107
104
88
132
119
117
145
106
175
80
107
154
151
100
111
87
72
175
94
122
88
87
74
91
72
100
101
78
69
121
122
115
140
131
129
152
92
136
152
136
69
127
80
89
80
112
107
155
73
104
110
107
69
117
80
115
96
151
104
91
144
115
120
120
80
78
52
128
83
151
127
122
151
80
57
92
135
112
69
175
106
80
127
102
67
109
69
111
76
76
63
110
69
178
126
121
121
69
52
117
87
143
124
136
145
78
96
113
115
78
69
90
96
126
78
175
175
52
106
121
82
93
121
69
95
69
99
139
94
109
155
146
69
151
119
94
122
169
90
72
80
164
119
147
98
134
110
107
89
109
69
80
174
89
80
99
154
91
69
80
107
120
134
123
91
151
119
109
128
54
80
76
128
136
99
123
165
72
105
119
69
87
89
126
128
119
119
101
115
99
120
114
75
115
76
118
80
88
110
99
87
122
106
80
69
98
115
126
81
94
100
120
72
69
120
144
138
76
91
145
121
113
127
121
115
95
107
134
102
80
157
109
56
155
99
87
78
78
69
94
88
80
93
142
155
82
127
98
106
104
99
69
99
115
64
80
101
127
117
112
119
111
155
93
78
183
56
134
54
119
137
110
87
85
126
79
137
79
80
80
88
98
127
197
80
112
146
155
87
69
89
89
82
122
155
99
101
130
69
107
69
127
56
131
140
80
78
88
80
93
106
76
106
112
69
175
128
69
172
52
87
95
175
109
88
69
109
175
72
129
103
89
143
153
109
115
83
107
153
88
113
156
110
94
89
88
80
76
78
80
115
110
199
88
80
110
80
110
80
119
164
128
160
91
71
124
100
87
175
143
131
89
151
140
116
88
87
132
160
87
94
103
94
95
89
120
110
147
78
80
80
127
111
78
175
95
154
119
67
94
104
120
113
119
76
80
102
78
121
119
130
80
120
163
110
54
80
103
128
78
117
127
91
136
99
104
78
152
175
183
122
122
80
106
117
80
80
151
94
80
112
130
91
111
96
183
137
134
76
69
101
148
114
107
107
99
109
76
119
131
80
145
72
110
87
87
83
96
77
80
94
87
99
96
69
109
52
69
154
75
69
80
128
140
58
140
171
80
80
140
78
120
110
87
112
85
133
94
93
175
106
80
69
94
164
123
154
98
118
80
102
117
115
156
69
138
99
94
87
128
80
113
140
121
119
116
88
104
52
109
72
136
154
72
88
96
54
132
78
99
90
69
78
94
136
78
72
119
99
89
88
76
120
57
76
131
87
127
110
87
99
99
76
87
155
154
76
74
69
120
89
87
80
119
110
109
80
80
80
112
89
130
115
175
111
74
144
146
140
69
74
132
112
104
120
54
160
147
78
69
131
148
88
105
119
96
98
110
107
78
78
106
107
120
197
80
88
144
119
89
109
99
93
104
112
96
115
115
106
136
88
115
128
131
78
79
154
128
118
145
127
148
120
88
85
100
80
89
89
87
118
153
78
156
104
197
129
106
74
76
80
135
143
67
100
131
148
43
66
76
80
69
88
120
113
154
85
131
116
128
107
109
98
161
91
96
118
140
136
127
175
128
150
117
175
69
119
99
156
143
94
89
149
83
88
148
118
111
80
80
104
137
99
107
80
154
96
89
120
78
120
105
99
69
99
99
147
119
78
106
88
99
87
96
106
87
109
154
146
112
69
145
107
95
80
155
88
118
104
156
102
94
94
80
163
120
104
109
99
120
121
154
131
78
121
80
118
138
80
88
133
112
76
78
87
109
56
94
110
119
99
96
80
156
152
73
141
78
110
80
76
107
80
119
91
131
69
172
99
80
87
109
72
113
52
113
120
118
109
117
69
109
163
85
87
83
134
145
95
138
134
69
134
115
76
109
100
117
154
72
88
119
120
80
76
64
80
155
94
72
76
99
197
129
107
80
100
120
117
109
146
163
96
197
160
88
128
94
56
100
113
114
175
122
89
80
166
80
87
76
87
132
143
175
127
99
90
69
89
76
80
103
109
63
80
120
107
117
145
99
100
112
127
80
69
80
106
128
87
80
106
78
88
110
80
80
76
80
90
88
118
87
56
154
78
96
165
109
52
52
157
74
117
119
96
76
80
93
112
99
96
99
87
78
80
69
91
80
119
154
121
56
129
80
79
69
114
117
126
89
102
80
80
69
114
119
76
175
69
87
123
140
104
94
69
172
166
124
128
141
87
97
91
69
80
144
137
73
113
113
105
117
134
80
109
132
163
91
106
99
90
78
120
43
151
102
89
133
142
102
118
134
116
78
126
148
80
80
121
59
97
155
91
100
88
87
89
83
60
139
149
80
134
78
154
156
93
174
147
130
140
119
76
76
69
81
154
100
78
128
107
103
106
140
127
126
87
80
174
104
130
120
83
114
76
119
80
112
156
74
137
78
68
120
149
134
107
90
129
89
117
72
119
101
122
72
87
99
151
80
76
80
69
117
99
199
119
175
90
115
77
111
112
58
119
103
78
76
78
144
164
144
54
83
134
120
98
69
106
80
120
121
69
76
109
120
127
80
113
78
95
197
113
106
107
88
120
69
75
141
134
104
119
107
69
103
114
80
80
94
102
56
43
136
78
113
146
104
111
133
102
109
69
96
74
144
80
156
144
106
154
98
88
72
197
175
147
60
87
109
148
125
106
76
127
197
131
146
80
134
78
125
148
91
111
104
87
72
80
112
134
88
164
100
80
80
175
80
95
80
87
119
96
131
140
120
69
80
120
71
106
138
72
94
117
80
56
80
103
156
154
102
110
132
109
120
120
122
119
106
83
80
88
119
104
142
115
112
69
143
123
113
76
119
87
78
78
117
67
76
128
78
103
146
130
89
119
101
80
120
125
74
142
131
87
146
91
78
69
69
96
136
78
78
97
69
112
73
80
76
78
171
156
80
119
80
69
87
69
69
98
133
69
108
100
154
80
74
107
103
127
175
109
118
59
148
72
88
102
175
52
80
154
52
112
127
80
88
80
109
152
121
121
153
106
168
56
156
132
59
163
100
83
149
113
87
114
52
87
87
99
87
78
117
165
134
87
127
127
161
80
104
88
69
95
145
145
175
119
72
95
134
122
199
164
76
69
164
119
87
100
110
128
125
163
114
105
107
120
113
80
72
69
80
99
69
80
72
127
154
94
99
87
114
87
134
133
89
112
128
91
136
112
90
87
80
145
80
69
108
79
93
130
158
140
140
175
69
82
120
78
87
136
175
113
114
98
96
119
113
78
128
82
113
80
101
119
160
130
69
87
69
166
120
90
119
93
120
91
99
121
76
99
110
80
69
74
104
74
69
124
134
69
119
80
151
136
128
110
128
129
171
88
54
76
80
91
96
129
128
131
52
114
102
199
88
104
126
120
102
80
76
94
148
119
52
139
72
136
93
69
80
109
107
120
88
80
80
114
145
146
130
72
69
136
101
114
187
154
175
120
93
119
101
69
69
88
85
89
133
100
107
123
80
89
128
152
87
137
99
78
69
94
83
80
99
106
119
197
96
71
154
113
131
112
69
89
121
104
78
102
164
154
69
93
136
89
69
87
89
90
187
94
88
125
78
69
80
134
99
117
101
123
119
181
155
117
85
69
172
80
102
155
88
111
128
80
111
115
119
69
68
104
88
146
117
107
114
120
94
100
80
119
134
87
129
156
106
118
112
113
72
134
88
80
163
90
89
137
101
122
107
134
89
89
96
80
88
154
69
93
126
91
80
71
134
69
154
72
87
110
128
113
101
78
156
91
54
113
136
147
89
117
80
72
101
119
80
126
93
128
118
78
106
69
149
69
136
140
129
118
109
89
87
76
80
117
121
94
155
175
120
69
106
54
140
102
121
112
56
67
110
52
56
181
138
163
67
156
163
106
110
102
163
87
69
155
119
106
87
114
80
78
121
175
76
78
114
87
107
80
93
78
112
101
52
128
165
117
110
76
94
78
130
119
141
145
80
76
181
87
67
113
140
78
128
155
142
94
74
43
136
82
175
99
145
83
99
80
106
121
80
197
56
106
88
155
115
89
78
80
133
140
152
120
75
100
138
135
183
142
104
154
155
87
98
78
165
163
97
109
136
175
78
163
78
76
106
69
69
100
56
128
78
106
67
80
128
132
69
102
130
149
148
109
69
99
89
76
146
133
76
117
117
112
111
102
119
119
107
143
115
128
99
80
119
119
197
76
80
117
115
114
86
80
93
113
69
129
131
89
112
154
134
99
80
169
103
87
87
90
155
103
113
134
111
84
197
151
97
138
52
107
80
143
156
87
69
80
126
52
136
87
96
70
69
104
69
87
80
149
80
147
94
100
52
120
114
100
147
124
96
101
112
68
76
92
142
69
96
94
78
143
87
133
134
69
128
120
107
107
143
56
80
129
78
96
117
69
82
117
110
99
106
136
131
104
120
94
78
73
123
69
87
85
59
175
110
129
80
69
118
120
93
94
93
96
112
69
107
80
56
102
147
106
88
150
83
141
123
64
122
69
103
120
80
124
145
69
166
115
78
76
69
76
80
102
100
76
59
90
175
80
104
98
54
127
147
63
120
74
120
69
140
145
74
69
78
87
144
106
118
69
102
87
80
110
119
115
87
89
164
127
151
88
69
124
115
136
175
69
80
107
122
103
134
116
91
96
113
132
80
121
87
69
87
110
118
91
87
153
100
129
151
124
128
81
121
93
105
146
74
120
163
163
128
89
89
175
74
78
89
119
88
119
78
89
88
112
140
69
80
115
151
76
154
89
56
99
99
110
99
120
156
112
88
80
76
148
131
76
95
120
140
120
101
93
93
119
106
109
151
88
128
155
80
96
175
128
112
78
128
126
104
87
109
127
155
119
179
175
117
78
72
80
165
146
80
98
133
89
160
145
99
76
89
119
80
154
83
90
89
119
154
69
74
106
80
69
89
126
136
75
93
119
78
154
87
90
100
100
88
120
112
94
106
93
110
59
110
83
154
152
93
69
78
87
99
85
126
119
123
123
88
151
97
91
87
99
91
91
86
78
74
99
91
80
69
96
85
128
139
78
120
119
54
76
143
69
120
80
80
154
197
100
110
119
74
127
58
69
80
80
94
69
80
127
64
93
69
80
120
119
132
100
80
134
127
76
104
69
100
78
76
123
134
80
151
128
82
138
119
175
74
109
104
110
154
88
92
114
166
78
80
118
136
80
99
106
52
155
52
107
88
101
153
89
154
110
120
88
74
133
72
103
85
117
94
154
103
133
102
117
103
123
119
107
80
66
108
69
140
117
121
107
175
113
107
124
119
121
80
140
80
132
110
99
114
128
142
80
56
78
69
120
111
109
145
113
122
91
164
148
91
106
156
119
54
109
80
99
89
128
92
151
109
69
93
113
136
78
119
78
123
90
56
69
69
154
118
102
130
120
124
102
69
134
160
113
109
117
136
89
80
87
89
69
163
154
129
96
52
110
72
91
131
80
129
122
80
119
75
113
85
137
175
69
134
98
94
183
126
134
128
132
76
72
99
136
94
99
106
128
107
105
52
166
64
80
90
139
162
84
69
106
133
69
89
166
80
102
138
98
113
69
87
128
85
81
131
80
99
87
75
88
108
69
76
134
120
56
120
88
134
127
121
80
88
80
80
91
98
80
78
69
121
151
107
80
131
101
88
90
125
131
87
146
94
74
69
76
109
121
109
69
143
103
78
118
87
80
104
80
69
136
144
136
160
87
111
97
147
112
80
155
107
87
69
78
123
107
119
170
91
138
107
125
80
104
56
104
163
66
80
87
94
90
128
80
96
154
89
136
76
143
121
101
112
80
89
105
134
116
64
140
124
145
57
58
120
69
137
83
74
90
154
91
69
106
102
119
80
172
131
136
136
83
144
107
140
118
71
134
91
80
70
106
80
111
121
136
175
119
66
88
72
121
136
151
114
112
92
87
88
120
131
80
119
80
89
137
119
101
80
78
104
120
69
69
64
96
119
119
80
108
112
76
104
69
175
129
87
78
111
43
87
122
128
119
76
90
76
69
163
95
120
113
91
119
121
104
106
111
79
128
87
80
109
110
113
131
131
113
125
124
110
96
117
136
80
120
102
161
119
109
76
110
102
95
134
91
72
117
78
82
69
76
92
76
95
100
124
119
130
74
78
78
161
89
89
120
99
52
128
119
100
104
154
88
121
87
69
76
80
87
133
76
151
63
107
123
90
93
120
80
147
94
123
80
115
87
78
54
126
128
69
154
69
69
69
71
103
95
109
134
99
90
113
92
131
163
101
119
78
98
154
69
69
102
131
105
112
78
166
107
80
98
88
111
78
70
78
140
140
120
88
98
87
136
76
94
80
110
108
107
104
80
87
145
124
175
93
80
175
117
76
134
88
197
69
78
113
94
112
87
80
112
154
77
99
117
80
94
95
80
117
99
154
114
116
87
80
128
96
93
99
96
78
175
69
107
118
120
94
156
91
113
80
89
89
115
100
54
120
164
87
72
89
76
80
80
94
153
80
175
119
76
145
80
127
155
85
123
119
100
83
119
96
110
87
78
121
120
91
104
80
153
85
122
124
131
69
127
74
140
133
69
145
99
78
95
136
104
113
119
98
74
160
101
80
133
89
102
87
113
112
143
76
84
80
110
138
78
67
69
119
128
72
154
146
146
88
94
175
121
106
150
94
87
99
87
88
98
69
113
124
43
92
174
80
54
72
106
74
73
138
91
151
119
57
72
72
76
114
136
69
80
74
131
119
95
103
119
87
96
54
154
69
104
121
128
91
145
143
111
74
112
78
106
114
129
130
133
128
91
69
129
87
134
134
118
69
83
120
124
80
102
87
98
89
111
80
151
130
148
72
133
105
69
80
113
111
107
119
130
156
117
56
111
117
156
87
69
88
75
128
74
137
69
104
92
93
52
119
89
99
137
110
69
110
113
127
88
76
163
163
93
143
104
75
99
87
78
106
96
128
102
156
119
122
106
128
119
43
101
85
80
120
160
112
69
89
78
69
80
89
99
120
156
78
93
102
95
80
96
106
106
176
131
116
94
108
129
76
107
76
80
113
94
69
101
121
120
143
117
140
98
120
94
119
118
130
111
80
80
120
151
151
43
145
114
95
114
157
87
85
137
165
74
80
98
99
80
87
82
87
69
163
69
80
107
124
78
113
93
119
80
93
93
107
120
107
119
117
88
164
156
181
119
147
120
101
79
122
122
52
134
69
96
80
115
69
137
102
125
69
119
76
76
95
134
113
110
76
72
89
164
69
79
76
69
93
80
155
119
89
179
69
88
154
99
96
158
114
107
109
119
76
134
131
80
69
94
148
94
69
134
174
52
104
80
119
69
128
104
110
91
165
78
128
131
122
80
80
69
120
106
120
130
93
115
93
113
60
175
121
76
119
197
76
125
80
107
111
96
96
111
116
104
103
142
164
110
69
142
69
80
80
91
91
66
82
164
120
112
76
131
156
78
122
143
112
140
106
129
87
112
109
128
122
107
110
87
94
107
93
109
175
122
124
83
76
203
105
106
78
94
175
119
136
72
97
80
133
119
119
106
80
87
99
143
135
134
137
111
116
119
76
123
154
119
124
94
72
129
154
87
154
136
83
96
120
82
82
107
93
99
69
72
85
128
64
175
87
83
137
119
128
120
59
128
141
80
72
71
86
80
69
76
115
78
80
143
119
85
69
99
131
89
99
54
169
88
96
175
97
107
69
76
80
80
96
99
59
78
88
57
136
110
78
147
119
107
154
136
88
122
109
120
128
103
128
119
87
185
93
127
69
154
175
94
121
69
154
163
92
81
132
115
88
144
134
96
107
163
110
140
59
80
78
99
69
162
96
76
120
120
78
166
119
137
69
100
80
119
136
54
80
93
76
117
115
107
93
175
118
78
154
93
69
69
112
140
80
151
127
109
142
107
70
119
122
69
136
121
110
163
87
117
98
129
121
100
78
80
109
113
126
106
69
175
151
96
76
119
111
78
156
197
56
78
130
93
112
156
96
80
92
128
80
129
88
107
128
113
107
94
114
119
99
107
87
128
128
107
110
137
78
154
87
100
120
80
119
87
144
85
117
134
147
132
131
109
133
117
87
124
132
136
107
113
128
127
144
91
114
80
80
80
155
104
160
148
78
143
165
76
141
113
114
154
107
119
106
78
154
142
96
85
131
93
87
85
80
160
69
77
76
123
109
80
78
131
109
89
95
106
87
110
104
59
69
87
112
66
146
69
181
129
163
128
117
96
106
76
87
109
157
76
93
69
128
106
110
119
115
115
109
126
120
98
112
120
87
110
156
104
89
140
101
107
120
113
101
78
94
107
78
69
175
119
80
99
101
52
80
101
175
80
107
143
112
103
76
91
80
69
144
120
123
93
87
116
76
101
106
78
103
128
96
76
80
145
76
69
163
83
107
119
76
132
103
96
87
120
142
106
156
83
110
117
169
90
175
107
91
72
78
76
78
97
109
80
89
154
116
80
69
87
99
98
119
97
124
155
151
88
76
131
99
98
78
131
185
151
181
92
74
106
147
119
76
121
74
56
106
154
77
96
175
127
80
137
69
110
175
79
76
128
78
80
91
107
80
87
154
80
109
120
76
80
104
93
130
76
131
89
96
142
80
113
80
69
94
69
175
104
128
118
109
69
104
134
100
69
174
80
76
119
125
119
114
58
131
83
140
88
110
76
120
148
92
56
146
132
78
175
107
149
66
79
60
89
77
128
119
98
113
131
156
72
89
169
156
118
87
80
99
100
99
134
165
82
140
131
109
108
114
125
101
89
117
100
80
134
80
76
175
87
141
162
124
80
154
87
109
120
72
87
119
94
68
100
119
89
78
154
122
156
101
111
110
94
136
107
89
112
109
82
112
104
78
99
107
107
119
160
69
120
74
80
92
107
110
93
76
72
104
87
69
78
133
81
112
152
145
88
97
89
110
72
94
124
130
109
154
88
80
104
80
128
99
88
87
69
126
148
78
112
101
87
94
80
154
76
78
113
109
119
91
175
67
130
131
125
113
76
87
122
88
116
110
150
120
119
134
109
69
119
78
76
119
107
88
76
157
91
115
121
113
154
148
80
132
120
143
94
128
96
129
82
138
80
96
89
88
102
175
110
104
76
87
125
123
115
69
136
120
120
100
89
52
106
94
104
111
140
128
154
87
174
136
185
80
87
67
113
164
112
103
72
121
154
154
197
156
140
154
56
134
99
113
119
107
76
133
176
111
113
164
107
76
163
78
112
104
93
54
91
80
89
87
131
127
78
109
124
88
119
164
43
80
99
75
174
104
106
87
128
130
95
121
107
134
128
69
83
201
87
154
104
78
155
109
130
76
100
74
174
100
95
146
107
109
87
67
174
162
107
80
93
143
69
117
152
109
99
80
89
99
154
123
119
80
104
80
78
78
119
109
122
84
113
69
93
97
121
95
84
114
88
88
110
127
161
126
163
71
69
52
120
122
109
88
146
94
104
109
69
76
120
78
91
119
110
69
87
114
91
80
106
72
152
78
80
146
117
109
98
94
87
89
94
140
152
119
123
69
80
78
140
83
112
110
130
80
131
175
76
109
110
143
128
90
97
80
104
104
128
69
146
69
94
94
95
115
119
150
69
121
80
127
99
109
143
103
109
80
80
138
93
107
103
104
107
76
109
80
131
128
134
94
122
64
175
100
80
69
101
87
117
161
78
90
94
115
80
113
110
54
87
145
69
175
113
136
134
155
72
175
106
78
126
80
107
107
69
88
119
125
117
129
69
138
89
120
157
133
134
110
76
96
80
109
174
174
103
209
78
99
78
74
101
128
81
87
69
88
76
89
138
69
134
130
66
107
91
107
131
121
131
132
119
93
148
122
87
151
134
107
88
69
175
66
69
99
80
69
122
118
134
119
78
94
74
69
140
112
90
107
127
127
107
93
115
106
87
91
197
88
76
94
131
174
112
155
87
83
54
75
117
123
100
69
163
106
154
100
163
99
146
139
103
87
56
133
69
69
80
114
83
89
109
119
99
149
112
78
56
87
54
156
110
112
114
80
94
109
52
87
88
106
88
101
76
99
88
79
114
131
76
54
119
152
150
88
69
109
74
122
69
80
87
109
54
140
103
115
52
113
151
80
78
99
69
151
119
109
121
82
69
121
80
101
156
114
122
76
83
100
111
80
140
94
97
69
78
111
88
80
95
145
164
128
108
54
132
76
89
117
87
144
112
98
175
93
80
156
89
127
72
126
128
80
174
72
75
102
113
134
108
119
76
96
87
149
96
106
174
154
109
87
80
162
137
110
98
87
154
163
72
72
69
157
43
110
69
80
154
175
175
93
101
98
143
80
146
87
156
99
95
138
74
128
105
87
152
69
115
128
109
78
78
140
94
119
175
110
88
88
112
175
109
110
88
107
122
175
124
69
69
110
78
71
109
76
139
52
120
116
69
122
91
118
137
69
80
87
197
74
119
175
94
72
110
76
154
80
104
54
106
144
130
107
102
93
80
76
117
99
69
69
87
117
110
80
123
175
138
94
126
113
119
96
76
83
141
133
100
133
96
154
88
136
118
69
109
164
80
72
94
125
120
101
94
111
80
69
76
128
80
131
87
106
103
99
80
128
78
101
127
85
132
136
131
76
152
156
199
99
104
74
54
117
154
87
76
78
117
80
78
69
145
118
87
87
89
113
66
79
80
85
117
109
87
104
128
107
133
101
54
96
151
80
80
88
72
80
80
134
104
137
115
126
69
129
197
87
89
78
155
93
120
96
95
105
154
88
76
131
87
124
88
96
117
136
80
80
104
94
99
145
109
110
142
183
87
158
99
96
56
109
110
155
129
80
77
123
109
175
99
157
80
129
120
67
88
119
69
80
76
140
89
104
84
69
175
113
137
80
131
107
136
67
131
88
93
156
122
74
80
126
80
69
134
120
131
78
118
113
137
175
109
131
164
103
104
78
121
56
106
129
140
127
72
113
87
92
104
147
69
72
144
69
122
76
110
110
113
78
80
104
119
101
134
93
87
102
137
119
174
80
105
78
71
122
104
80
80
107
78
74
72
78
124
121
80
129
80
131
109
119
78
197
132
79
123
96
106
69
123
132
78
127
113
175
69
88
133
100
110
130
148
74
119
76
107
113
109
88
99
74
89
122
120
164
78
143
78
59
154
78
139
87
80
131
91
137
124
175
54
109
107
110
110
119
100
124
87
87
80
140
107
93
76
128
87
111
199
117
54
117
117
82
118
109
84
151
99
58
64
115
131
134
88
101
96
109
146
125
148
127
118
119
85
119
69
154
80
127
123
74
144
109
155
88
93
114
69
78
120
156
80
128
151
80
80
148
85
122
87
154
119
89
146
121
134
128
112
128
89
93
87
140
130
99
183
112
112
151
118
94
96
59
197
69
101
106
96
110
74
115
144
131
121
99
111
119
104
102
74
72
67
80
129
80
78
109
145
175
146
128
78
99
89
109
136
93
125
125
113
88
96
80
90
52
108
89
104
109
80
136
102
128
76
96
78
85
197
143
117
88
56
88
114
154
134
64
119
136
133
78
80
119
96
119
120
175
80
99
78
83
69
175
80
120
120
72
95
95
101
69
116
87
122
128
109
94
146
88
128
117
102
120
87
99
155
133
124
112
88
94
88
157
107
112
76
99
133
89
85
163
89
56
144
94
87
101
106
100
97
94
119
154
69
78
75
144
159
163
80
87
80
154
66
175
106
117
113
67
99
78
117
126
107
126
113
120
106
199
103
129
87
119
137
163
80
72
104
120
134
119
137
122
117
98
109
156
115
137
91
136
78
109
123
99
91
88
105
110
145
117
129
199
175
131
82
140
114
76
87
80
87
72
124
76
107
54
129
137
129
143
117
121
90
80
136
128
80
80
110
100
156
143
109
107
80
154
131
117
136
121
69
199
87
127
87
100
130
89
108
69
94
175
101
87
69
101
129
113
106
106
87
113
94
69
119
100
80
83
146
155
119
76
80
155
110
105
175
154
128
80
119
129
92
134
80
131
154
80
151
76
134
112
119
80
94
174
78
147
69
80
129
111
80
54
119
94
110
98
120
54
76
172
76
131
151
175
87
98
114
150
76
69
131
123
82
132
123
101
155
107
108
99
119
146
74
76
92
116
92
88
87
134
69
119
112
107
136
123
76
93
80
127
88
110
104
115
130
115
78
120
117
155
88
197
155
69
156
106
93
140
106
88
119
113
106
199
121
154
169
131
78
128
87
76
104
131
104
112
66
76
102
107
112
88
100
128
92
72
85
126
69
54
115
141
87
156
163
102
126
119
111
119
85
156
78
124
99
107
134
85
80
99
120
69
149
126
137
93
69
115
80
72
67
104
120
93
126
109
153
131
113
94
117
155
121
89
118
72
83
101
119
115
107
87
76
138
140
119
124
87
43
99
156
89
87
108
93
69
101
115
164
80
70
80
80
110
107
145
112
69
105
119
140
114
112
112
131
78
76
175
109
119
85
75
106
125
87
80
134
118
88
100
93
96
145
88
123
112
152
107
78
78
69
149
110
154
87
89
87
80
107
123
58
100
80
92
147
114
113
76
145
175
80
80
117
96
119
119
128
98
107
80
87
93
113
103
69
114
131
106
127
122
106
114
149
119
96
117
109
175
99
69
87
146
122
74
85
80
72
83
94
69
69
124
151
119
175
92
95
80
56
107
128
133
142
151
130
104
121
87
99
140
109
144
75
99
78
109
82
107
87
145
140
54
103
88
91
88
87
155
126
131
78
95
130
127
76
117
78
69
93
175
112
117
87
128
74
117
93
129
54
147
103
104
119
155
89
131
87
151
121
127
56
132
99
114
123
120
98
114
103
75
80
120
90
86
100
88
147
122
136
69
77
110
93
88
175
129
72
140
112
101
154
109
154
85
140
111
96
107
113
78
156
99
91
91
138
80
164
87
150
69
85
91
122
66
117
110
80
93
98
78
69
87
54
89
88
80
116
154
137
132
104
80
69
99
78
134
151
99
131
139
174
112
119
60
69
116
57
69
89
140
143
88
101
146
76
83
175
155
156
80
102
104
75
87
80
138
80
120
102
127
120
88
94
96
80
131
99
112
124
132
164
93
69
88
175
113
107
76
80
100
144
72
94
85
94
119
80
52
175
140
80
131
130
134
133
137
121
78
122
103
78
89
72
119
107
80
87
127
69
87
74
69
80
87
99
78
153
140
105
163
148
140
76
139
99
130
99
71
185
90
87
136
127
85
80
111
112
76
197
117
69
140
78
131
94
113
109
107
122
119
89
109
175
87
69
88
80
174
80
106
87
113
104
183
126
127
130
121
69
152
80
130
147
69
93
114
69
141
80
139
137
96
117
113
163
80
124
114
132
54
121
132
69
113
147
140
136
119
120
80
128
92
78
112
110
110
80
80
104
117
80
69
100
131
106
80
134
154
76
78
107
76
87
118
90
154
99
132
56
131
119
93
128
153
69
96
99
93
69
123
163
143
78
69
99
185
97
105
77
72
136
91
80
58
76
90
80
76
128
119
133
67
134
76
80
83
175
110
69
76
103
128
138
69
93
94
69
80
146
144
87
89
141
76
85
87
164
78
197
147
80
76
116
69
98
87
90
80
117
87
124
104
83
70
133
69
69
175
99
69
87
69
107
95
87
102
118
145
128
97
126
69
87
88
87
106
93
111
197
80
67
92
162
78
80
124
121
151
119
175
78
133
89
76
121
111
88
56
136
137
94
175
85
107
109
106
80
78
119
102
88
80
87
96
104
119
99
77
143
156
78
80
113
136
94
107
88
67
66
130
98
136
69
94
100
117
156
110
76
120
94
104
88
69
133
114
142
80
52
95
131
99
69
107
69
109
93
155
119
69
66
82
99
93
113
109
89
54
88
78
147
113
156
172
80
59
175
96
89
87
98
76
128
76
69
69
106
80
106
137
80
120
104
87
155
160
156
107
117
151
107
151
80
134
71
104
76
121
110
78
90
83
119
94
148
183
110
67
94
110
127
176
153
72
118
99
91
114
138
72
80
69
87
132
93
138
87
118
144
80
78
175
76
87
130
94
80
107
69
96
118
128
87
101
136
54
89
98
134
138
175
56
115
83
96
112
76
147
110
131
99
136
154
119
151
128
134
69
113
136
109
104
87
121
85
107
136
83
91
66
80
114
93
69
136
107
80
69
164
104
87
96
104
105
104
76
96
121
110
175
109
155
129
80
95
109
123
110
89
87
137
87
54
114
103
101
144
119
112
88
78
102
106
87
74
136
133
175
107
124
123
87
76
115
120
131
67
106
113
87
80
78
115
104
140
115
140
148
87
88
69
88
111
136
106
128
102
154
119
88
109
66
82
90
87
156
113
80
121
127
87
72
76
154
132
113
78
88
87
107
122
107
76
137
143
96
107
89
113
93
175
152
106
109
88
100
117
121
120
102
106
87
110
105
69
69
104
76
147
89
147
121
80
164
94
96
80
80
69
99
103
118
69
106
69
92
187
199
140
87
128
78
113
112
95
100
76
88
92
87
156
123
95
120
117
113
89
90
106
54
101
69
69
111
119
120
120
91
142
88
127
158
80
109
98
88
148
110
93
183
99
112
102
101
104
143
113
103
131
119
115
78
115
122
87
96
97
109
163
107
120
101
89
90
93
72
72
98
109
112
119
76
107
67
78
69
78
96
116
112
80
96
140
109
140
80
108
131
96
109
109
112
131
119
76
125
111
185
107
89
76
110
82
81
119
80
75
117
54
78
91
143
156
110
87
164
110
111
74
80
156
91
89
120
110
69
104
78
99
137
89
76
80
78
100
80
114
136
136
120
76
131
106
138
79
69
78
93
87
163
93
110
175
80
87
145
69
147
163
155
111
56
134
88
140
138
64
132
69
148
76
76
76
76
175
111
117
125
165
126
146
80
69
101
131
118
113
107
85
104
120
107
94
109
78
104
92
66
99
121
109
132
187
107
90
66
121
88
107
140
69
102
108
148
78
99
80
101
123
201
175
89
106
122
155
106
117
156
135
103
78
124
128
151
76
52
120
88
119
87
69
131
87
69
125
103
154
94
80
93
120
96
136
66
69
143
96
110
111
121
107
154
118
96
115
140
128
78
131
115
80
110
175
69
89
96
87
122
117
107
113
175
127
95
98
69
96
87
125
107
128
99
113
72
80
101
119
117
112
154
127
80
94
199
90
109
121
76
117
119
87
123
56
69
131
87
91
163
151
80
100
120
88
59
119
124
110
69
80
115
155
119
175
137
113
85
80
92
136
76
121
116
111
85
148
112
80
69
94
93
80
76
110
78
78
132
88
87
117
111
123
109
120
96
80
87
67
80
102
101
112
120
80
80
120
137
175
187
96
151
88
145
134
107
109
96
87
103
134
117
52
144
104
118
97
94
148
129
78
110
145
109
72
99
133
151
154
123
138
88
76
110
151
131
118
154
88
118
80
107
88
89
92
67
118
110
175
99
107
147
122
134
72
83
69
87
120
154
70
114
117
80
73
128
127
69
125
80
100
80
112
115
96
99
87
177
120
153
175
120
134
199
131
107
119
89
78
129
119
118
128
52
175
150
69
127
137
69
69
85
113
89
72
133
154
118
181
99
119
78
94
129
99
127
93
106
109
106
96
112
120
154
93
109
134
128
107
119
98
80
128
109
107
199
94
79
154
87
69
107
99
93
118
163
147
128
69
118
75
103
87
163
107
104
133
175
110
93
76
147
74
52
71
88
140
96
94
143
78
80
127
94
80
164
137
138
154
175
124
80
197
76
78
102
74
132
127
83
93
93
75
69
111
80
69
119
78
197
127
107
119
83
69
112
69
143
76
152
80
78
91
104
164
117
87
78
120
90
101
80
90
119
96
96
87
154
69
91
94
96
88
111
69
138
173
121
80
80
144
115
128
106
87
106
104
102
156
78
129
100
81
110
149
102
69
101
122
100
81
88
117
164
134
69
129
137
104
154
87
88
112
110
131
88
175
145
80
78
94
140
175
145
117
107
90
78
133
88
99
76
174
69
155
143
80
153
43
104
120
98
96
199
147
88
175
101
102
137
83
100
117
102
54
102
161
54
136
69
128
94
93
112
148
133
109
99
175
128
104
89
98
75
69
119
119
88
160
87
102
118
149
104
109
80
99
130
109
134
91
122
96
87
101
93
155
78
101
100
130
80
80
119
124
94
91
127
96
134
118
117
97
78
73
91
87
100
150
110
69
80
147
76
120
98
80
98
156
89
111
107
78
88
93
94
83
140
96
75
134
80
140
69
69
56
72
134
107
78
144
137
80
197
104
85
110
69
69
94
111
113
140
157
115
127
76
110
106
112
78
80
131
155
91
87
175
107
80
117
120
109
134
113
109
148
75
80
88
69
95
80
104
114
80
93
122
101
134
112
94
113
126
94
87
175
74
100
96
131
69
113
80
94
120
115
113
136
90
125
145
72
69
76
91
98
87
109
87
143
119
83
143
94
96
143
54
125
109
105
136
96
76
197
130
166
124
87
127
78
122
94
69
52
112
148
78
130
93
88
80
85
119
118
91
117
149
111
164
112
120
143
69
127
107
127
146
54
87
175
76
106
111
120
98
130
109
88
122
69
80
102
94
151
112
92
134
175
140
88
80
94
140
127
78
161
136
175
93
76
80
87
125
54
80
101
135
80
107
103
87
103
151
83
76
96
154
113
109
43
94
87
106
123
118
120
119
69
93
138
160
122
76
63
80
117
79
101
112
80
107
80
80
98
120
85
73
79
96
85
106
80
78
143
100
154
109
54
80
78
74
78
117
169
110
148
89
76
109
119
114
76
80
80
154
69
119
152
119
114
96
119
117
140
163
138
145
100
111
87
78
175
117
96
78
73
109
88
80
119
119
92
102
123
197
122
87
79
89
78
114
124
96
120
156
88
88
104
118
69
132
83
69
120
80
119
112
131
69
80
106
80
88
134
107
98
113
154
165
97
156
107
112
69
110
201
80
100
87
69
166
90
113
80
96
88
113
128
119
69
107
102
96
130
99
119
130
80
95
115
71
87
75
69
107
152
114
99
76
80
69
52
100
69
146
119
80
83
114
80
78
76
72
88
124
69
87
166
69
128
163
114
120
113
104
113
80
132
69
155
80
76
104
140
124
87
157
78
163
104
76
175
136
80
175
69
80
197
113
136
103
131
127
91
69
151
102
109
95
132
89
80
106
76
83
128
150
87
79
109
89
78
127
164
80
134
140
76
110
117
96
69
90
156
156
103
129
91
152
128
67
80
78
129
88
75
146
110
121
153
101
143
80
137
146
80
152
164
174
149
216
76
87
97
152
120
134
87
111
140
93
80
72
156
52
102
105
69
117
87
138
119
87
113
154
120
78
78
101
197
156
119
107
80
104
94
155
109
76
107
80
128
99
90
76
131
66
106
89
76
144
85
52
80
175
111
175
89
148
125
87
123
98
64
106
99
106
96
185
89
101
99
76
154
129
69
94
146
197
155
87
80
120
156
80
169
84
126
78
148
164
147
113
69
69
120
80
74
118
147
107
91
56
116
76
93
151
110
73
154
120
80
96
120
89
113
78
112
80
151
129
120
112
88
119
124
100
117
99
164
163
147
119
110
142
78
120
131
90
103
72
124
136
145
152
91
102
104
109
66
151
102
128
122
119
185
43
146
94
122
109
162
74
155
118
87
76
137
110
119
127
118
119
115
148
99
109
119
160
87
175
69
94
126
117
69
122
175
103
69
87
119
69
78
80
83
80
113
121
121
80
69
76
87
88
85
133
117
81
121
154
100
72
78
104
163
69
156
78
73
74
159
80
122
112
76
154
67
72
87
88
76
154
87
59
110
87
137
91
63
80
120
175
80
95
104
110
106
136
89
80
54
56
79
87
69
136
155
82
78
90
69
169
157
99
139
101
130
88
177
87
76
141
93
115
102
78
120
128
80
99
118
104
89
117
138
80
85
69
69
119
126
113
112
88
76
69
76
125
101
102
131
94
100
85
56
141
175
101
88
154
145
80
72
89
76
91
123
125
57
76
126
80
161
118
64
128
69
140
128
103
110
78
133
94
87
155
113
80
69
119
115
69
117
143
111
69
131
91
80
104
142
69
128
121
87
149
78
87
130
156
126
112
109
136
106
94
128
99
128
69
96
69
76
96
129
119
69
99
106
109
76
145
87
121
69
80
101
136
78
80
99
150
67
119
121
120
165
124
78
116
109
76
76
119
94
69
165
145
175
80
175
117
109
78
88
127
102
81
133
80
112
101
134
146
109
146
109
69
178
135
82
117
69
106
107
105
59
132
123
110
145
104
124
175
109
103
140
80
155
89
80
122
109
117
94
85
123
69
52
76
80
156
60
111
80
113
87
80
175
98
52
175
100
110
76
85
76
111
145
131
112
99
175
151
110
91
116
85
120
119
74
69
113
117
154
93
114
143
146
78
107
101
76
96
136
87
131
123
129
175
104
80
80
144
76
76
119
120
94
106
117
87
154
150
187
94
112
160
101
118
107
136
121
133
89
93
94
106
80
137
91
120
69
175
106
88
136
80
69
81
99
76
114
99
116
76
113
93
121
80
119
80
89
87
80
101
109
91
87
174
175
113
117
88
88
76
156
78
87
127
106
80
126
119
131
114
76
120
76
80
197
128
78
102
113
72
122
175
154
76
136
76
137
80
117
120
119
80
86
99
96
133
78
112
150
99
72
86
83
127
128
92
52
128
87
110
92
88
69
113
78
154
114
79
80
71
142
78
76
121
80
121
81
109
175
87
136
112
80
101
197
128
69
163
116
95
69
124
78
85
88
69
134
111
69
119
77
175
128
175
106
87
80
117
109
101
93
197
118
113
131
69
80
112
133
156
118
56
96
76
145
133
80
88
128
85
101
88
155
80
87
69
96
127
87
131
113
96
80
128
102
89
99
94
140
131
118
67
109
78
101
94
151
128
126
66
82
175
99
82
85
175
124
76
148
132
69
92
128
99
104
80
129
80
129
127
91
56
78
109
101
87
109
74
106
71
79
159
69
117
80
105
111
124
76
120
94
73
99
96
201
148
78
69
78
69
94
90
104
87
87
91
104
160
113
101
147
165
100
197
119
87
115
67
135
104
96
72
102
119
134
74
100
111
76
119
80
76
78
87
154
113
80
110
87
110
148
82
85
100
158
124
145
99
91
136
72
98
87
132
76
58
78
69
119
119
76
144
128
99
107
126
76
76
116
87
154
76
127
111
94
69
109
80
103
107
110
151
120
117
146
80
76
156
107
141
101
98
98
80
91
96
69
93
74
131
83
197
132
107
164
112
197
94
102
163
94
89
80
105
154
154
78
93
102
78
123
134
69
78
128
99
125
169
120
109
89
129
80
119
93
115
87
76
197
105
103
131
107
69
98
107
135
119
160
89
119
99
121
99
104
72
133
99
56
115
98
134
152
96
89
112
128
107
87
157
119
129
87
107
107
69
109
52
162
69
107
126
130
126
93
66
133
132
110
100
121
109
133
80
88
106
74
112
107
78
95
54
94
81
103
74
164
69
87
80
110
106
140
131
76
80
80
157
107
72
89
89
102
154
111
89
205
108
66
87
143
137
130
104
83
163
117
67
80
76
76
111
138
94
94
110
131
185
78
107
78
59
119
106
121
117
69
110
197
175
76
140
153
147
100
128
136
82
109
128
78
132
87
79
78
87
104
83
106
131
142
80
104
100
175
120
80
112
128
139
78
87
109
155
69
87
78
199
143
94
119
87
120
147
145
107
120
80
80
110
134
163
76
87
140
93
117
76
150
136
80
113
120
89
87
80
89
87
94
144
151
110
175
90
175
72
119
74
76
88
120
89
56
67
134
149
93
159
80
120
87
76
97
175
131
76
148
120
175
52
139
122
84
94
101
119
136
156
114
88
88
96
69
140
120
54
117
143
154
106
116
99
80
115
87
80
109
111
80
93
130
94
94
83
87
134
131
112
136
76
146
110
80
106
156
79
80
80
119
87
103
183
104
112
72
134
74
85
160
113
102
69
80
69
119
88
119
94
76
106
69
80
110
116
134
164
56
140
119
107
69
132
76
100
175
115
119
102
134
72
79
88
156
110
96
83
104
138
115
155
137
99
119
88
69
111
125
54
89
113
111
107
67
88
78
174
155
69
120
134
156
69
144
125
54
152
112
122
112
128
78
88
80
80
87
80
80
76
76
183
102
140
95
175
101
76
126
154
80
80
110
110
95
94
151
137
80
92
145
140
102
87
72
104
96
83
69
80
69
120
145
110
88
87
93
87
137
140
106
201
107
76
93
98
69
118
126
97
126
87
119
76
140
119
109
69
88
69
197
87
105
87
185
43
148
69
96
92
54
129
119
87
149
117
87
94
80
140
115
119
107
94
90
181
106
88
69
87
106
87
69
91
76
87
102
101
102
91
56
99
78
89
80
69
121
111
154
72
76
156
94
128
171
80
134
87
93
104
102
78
87
99
115
125
129
113
80
100
87
117
129
108
137
156
80
175
119
74
127
157
128
95
78
110
117
122
139
120
52
120
80
94
110
87
101
99
109
76
78
132
100
175
120
151
175
120
69
94
87
120
163
104
131
185
107
76
99
146
144
164
128
143
102
101
109
74
106
120
118
84
111
175
129
112
78
101
66
120
121
87
89
175
87
103
120
147
155
52
76
75
151
119
110
56
114
113
134
109
136
78
175
93
120
156
98
67
80
131
123
113
52
119
110
121
154
144
115
132
80
102
165
78
119
87
151
69
103
69
149
75
94
64
140
78
119
165
88
80
102
138
78
85
80
69
104
175
104
126
89
111
118
78
113
95
94
112
64
87
78
76
80
75
94
117
106
80
111
78
74
164
78
151
80
131
119
118
120
122
121
175
69
93
131
73
89
120
163
113
80
163
93
117
87
152
109
130
154
121
92
87
106
80
128
113
78
124
78
134
117
91
78
101
120
106
96
157
153
89
104
87
128
134
78
151
107
131
109
87
155
145
91
99
133
87
106
107
107
156
154
90
93
113
112
101
88
69
72
91
120
100
90
94
88
69
89
131
154
76
80
87
117
113
134
96
119
89
110
80
74
107
121
103
134
78
80
109
69
88
119
120
78
63
119
102
120
80
107
90
131
91
52
143
67
88
80
93
137
116
69
146
131
89
109
80
119
175
132
87
98
117
85
88
78
154
134
78
113
106
56
96
74
87
88
78
68
150
69
80
128
80
136
56
87
132
159
80
78
123
154
72
93
93
138
113
104
124
115
71
94
153
97
102
87
131
69
131
93
79
185
154
108
80
130
101
118
143
145
89
89
67
123
72
68
154
99
175
95
87
87
117
128
78
109
147
98
107
113
146
87
114
69
76
131
120
150
100
69
97
88
181
133
197
87
99
110
140
80
197
87
79
106
121
149
95
80
103
57
156
80
117
102
80
109
197
110
113
116
152
111
87
107
69
113
119
109
93
163
94
80
114
137
76
79
113
134
121
117
140
145
126
114
103
131
94
76
126
151
119
80
99
129
107
80
100
87
140
100
199
107
78
98
106
85
114
94
113
72
113
111
80
140
134
87
54
142
124
80
102
122
147
107
80
87
100
120
99
175
100
69
80
83
112
82
151
80
101
110
133
87
94
140
107
87
76
122
74
146
72
149
121
107
120
119
69
121
87
109
58
69
145
128
148
131
175
78
80
130
155
69
117
122
154
121
64
87
101
87
80
75
74
124
52
74
76
111
136
90
80
90
87
80
114
107
134
111
154
127
107
165
80
100
111
131
164
80
154
110
130
87
109
80
156
80
88
131
139
115
52
107
137
83
76
109
99
123
181
78
88
87
135
112
110
150
88
122
93
138
138
109
126
183
121
106
76
77
106
80
174
87
109
110
111
114
102
117
76
110
121
54
80
137
122
69
95
119
69
175
119
115
138
91
175
109
74
121
88
78
110
143
80
134
107
143
80
119
140
120
120
134
106
78
92
152
91
76
140
87
80
137
69
108
90
104
94
119
118
146
87
129
78
120
80
72
90
69
76
67
107
154
93
80
134
112
78
69
121
147
127
99
76
75
75
155
69
142
87
104
89
154
99
99
110
106
117
136
76
112
114
118
119
76
110
126
110
154
134
148
120
69
104
69
147
64
80
131
78
148
119
87
80
119
123
160
93
108
175
80
111
80
112
76
80
147
122
127
131
100
101
80
112
175
119
128
76
111
121
96
154
112
64
89
102
94
78
98
156
132
101
110
113
119
115
69
80
72
93
72
197
115
99
80
52
169
104
128
76
87
112
106
108
87
69
96
133
80
93
96
76
115
93
129
77
80
115
72
96
69
78
141
69
52
130
80
113
93
120
97
96
131
88
156
117
106
87
71
89
69
80
75
151
74
88
176
95
201
97
98
91
104
147
120
136
127
95
88
87
137
107
124
106
136
147
156
117
112
83
131
90
52
96
80
107
88
96
80
121
80
93
113
80
72
80
69
87
110
134
88
110
134
94
131
69
152
134
112
89
148
144
134
69
130
143
91
99
87
109
67
113
81
128
106
69
155
69
140
78
74
110
175
104
115
80
88
145
100
99
76
99
137
120
119
155
80
103
56
111
109
94
122
155
83
89
80
109
78
197
81
118
120
121
113
128
93
156
83
111
103
130
128
124
97
67
110
119
164
103
80
144
113
127
128
128
92
69
139
80
101
140
131
110
167
107
124
109
118
155
69
89
112
136
140
76
89
87
101
94
69
104
118
112
69
69
87
90
122
104
69
197
80
145
43
90
115
163
104
80
89
106
100
104
102
104
78
108
163
67
74
87
69
107
76
115
112
140
110
106
102
137
66
89
156
88
88
69
80
80
143
140
109
132
73
69
101
107
92
76
67
110
199
96
134
84
128
156
134
52
121
93
88
80
69
87
114
69
128
104
120
71
117
132
131
111
94
80
69
148
87
80
174
129
83
80
74
118
80
89
142
109
114
101
134
69
117
148
148
115
87
136
76
155
78
99
94
119
156
109
98
72
118
80
91
110
143
144
72
136
76
120
107
120
80
137
119
107
119
133
79
132
101
134
163
109
166
94
134
69
78
128
111
112
80
98
134
90
111
87
145
85
80
87
131
69
128
89
119
72
94
75
87
99
129
87
88
69
69
175
110
115
131
78
82
154
80
129
151
92
148
164
106
80
136
71
80
91
80
107
96
104
154
85
107
118
148
156
128
151
72
90
80
54
119
117
80
74
78
122
197
99
80
94
119
153
154
87
95
80
129
80
107
75
80
132
76
69
80
99
105
102
110
87
175
111
151
117
102
93
94
99
99
80
112
201
95
122
69
89
110
154
103
89
120
100
125
102
134
104
177
175
126
131
109
156
99
130
80
73
69
162
114
89
156
99
78
104
80
78
83
154
85
69
104
125
80
93
134
136
107
69
101
99
87
139
154
80
52
154
74
117
80
122
77
106
109
115
123
119
128
155
140
88
59
99
99
69
58
119
121
88
104
109
78
107
130
119
124
69
113
133
88
115
116
110
80
156
140
89
144
102
130
133
85
131
76
112
151
100
104
131
78
166
99
89
76
134
107
131
54
108
133
81
76
102
87
85
119
76
90
146
72
87
154
97
96
74
157
141
120
88
128
142
89
118
143
90
106
112
93
114
69
78
80
128
69
88
76
117
119
137
56
120
95
142
66
102
156
109
87
117
131
100
123
69
120
131
87
155
121
99
76
106
96
78
82
94
106
146
96
69
119
101
154
156
99
145
144
80
74
87
89
101
175
100
128
78
120
125
92
99
87
99
78
121
128
115
74
80
66
78
78
100
94
155
56
69
101
119
99
90
130
140
111
101
175
114
109
134
132
146
69
112
101
113
106
113
93
121
92
151
175
80
120
80
78
94
72
127
80
147
94
58
87
80
110
148
132
87
102
72
117
109
106
93
120
69
69
121
154
132
138
76
120
123
74
87
137
163
93
69
118
155
107
119
93
98
80
56
88
93
88
98
144
78
80
104
64
99
128
99
121
181
136
132
121
100
80
105
76
101
99
72
87
80
89
128
89
76
102
110
119
104
80
114
118
85
88
113
134
113
107
93
69
172
89
99
110
113
87
156
80
150
104
69
114
80
175
130
107
99
88
157
89
109
131
99
155
78
59
175
99
101
134
128
115
147
78
119
69
76
175
118
113
120
129
99
103
80
138
119
134
127
107
199
156
69
197
67
69
80
115
101
160
155
72
72
121
78
87
87
119
107
72
147
110
132
123
115
175
72
72
94
106
148
104
140
102
93
89
89
78
119
164
80
69
85
79
98
107
110
94
117
88
104
104
71
125
112
52
128
71
56
100
76
131
80
80
104
103
78
109
69
119
90
111
94
89
138
130
95
72
132
99
175
106
89
80
112
80
132
76
131
117
113
164
125
122
99
101
80
137
131
163
105
87
109
136
145
80
72
83
113
76
143
69
67
64
110
88
69
69
120
54
69
162
87
87
126
96
163
131
117
87
87
93
145
87
120
163
87
120
136
69
89
76
69
88
119
104
59
96
175
119
113
136
120
117
80
119
101
119
132
110
157
69
69
108
109
98
156
93
96
127
146
80
120
160
121
80
104
69
93
134
87
120
128
69
101
119
148
114
95
160
87
80
87
131
121
136
87
131
128
112
108
96
126
197
87
104
74
72
103
147
107
68
119
52
104
151
100
185
109
80
163
134
80
87
156
80
96
87
114
113
105
99
80
69
107
83
95
110
100
140
101
80
79
99
103
123
107
120
58
134
80
69
101
132
137
94
76
101
175
89
104
87
78
153
80
154
69
80
74
141
99
76
113
136
118
140
85
137
92
99
111
140
143
88
87
87
132
69
107
80
151
136
76
104
72
130
96
154
89
127
80
93
175
78
78
110
74
101
83
111
52
87
109
109
94
174
119
117
136
54
113
127
80
102
118
69
89
88
80
98
103
78
145
109
137
121
78
87
115
66
128
120
101
69
142
197
151
117
76
136
110
87
78
85
133
82
95
69
69
121
92
120
71
100
144
125
99
69
59
69
69
151
89
123
93
87
144
154
74
181
102
80
119
134
125
155
144
149
130
80
118
78
69
131
131
101
139
114
175
120
91
80
103
134
97
106
109
89
56
87
56
89
89
102
77
106
106
104
121
87
112
128
119
87
128
76
67
72
133
118
155
89
154
80
87
99
107
163
137
109
87
144
56
80
120
110
101
76
83
98
120
43
141
96
109
89
80
69
129
151
80
69
175
107
102
127
154
121
80
69
78
120
145
52
85
140
80
69
92
89
96
89
128
110
85
102
120
140
107
107
120
69
129
81
110
111
147
69
155
102
107
130
107
93
69
69
156
147
77
125
175
80
162
78
155
130
119
78
109
109
165
110
69
155
109
91
88
138
120
83
131
112
69
107
121
78
124
52
181
52
80
80
156
69
88
76
107
99
138
69
155
87
71
80
175
99
122
80
109
101
146
100
112
80
107
107
124
116
84
156
106
107
133
80
77
133
110
87
94
137
175
151
109
107
121
90
114
80
76
79
140
162
98
163
128
66
78
107
78
69
175
148
95
91
175
119
99
78
150
119
122
54
154
119
128
155
175
158
101
136
96
69
119
94
80
87
113
156
85
69
145
67
69
109
94
80
131
119
117
116
136
80
136
76
153
115
110
100
102
175
69
152
136
120
164
151
175
174
87
113
123
126
56
104
112
134
112
119
119
134
80
117
107
87
52
76
157
76
97
127
151
80
106
88
69
80
110
142
123
99
87
71
115
89
160
120
69
72
87
88
110
91
99
52
120
147
69
107
70
126
89
128
76
76
175
109
92
89
80
69
76
94
118
110
87
69
112
134
104
102
163
98
95
80
88
85
110
96
96
66
106
121
69
90
87
101
175
136
88
78
101
100
123
88
106
69
74
87
80
89
110
124
132
137
121
99
80
80
76
122
127
69
76
113
141
107
107
119
95
97
72
64
123
88
107
111
107
88
113
121
107
99
87
87
156
87
117
187
153
110
145
78
128
82
89
107
69
80
78
118
110
104
197
147
114
119
72
87
128
69
74
120
123
156
107
96
152
131
153
134
87
126
120
97
106
106
134
104
80
126
69
90
87
80
154
87
106
131
69
88
88
111
75
119
106
154
145
56
104
113
93
87
117
80
91
80
83
91
80
80
110
78
87
80
72
89
94
110
78
80
154
100
101
94
56
89
72
101
94
101
60
78
117
134
95
76
95
119
98
80
117
114
87
80
87
103
136
110
87
162
104
69
110
76
87
69
72
94
130
80
76
90
172
154
145
78
144
66
107
109
144
68
91
154
122
131
156
69
112
87
139
164
107
87
80
78
175
126
101
145
80
175
54
52
110
147
118
87
134
185
112
138
151
56
80
145
128
76
93
87
69
185
80
175
96
154
112
82
74
107
124
80
175
59
104
117
89
129
120
107
69
43
98
147
134
128
80
107
89
128
124
123
129
110
92
69
117
89
76
120
102
75
122
119
120
114
128
101
120
69
127
137
88
117
94
132
151
89
140
89
99
134
99
69
128
124
128
69
69
79
113
52
120
82
92
134
78
118
123
87
109
80
107
80
94
110
119
76
148
104
154
112
69
131
110
89
87
106
80
137
175
102
77
52
52
109
136
78
63
101
76
125
144
74
110
106
175
163
107
93
97
87
175
72
118
101
104
113
112
69
119
175
100
76
78
175
175
175
103
79
134
104
69
72
151
74
134
74
107
94
80
120
69
137
76
91
69
107
80
112
100
80
72
120
76
154
139
89
71
88
78
78
87
120
117
150
107
107
114
153
94
122
85
115
144
104
69
78
95
122
104
69
140
89
80
154
119
78
131
76
67
146
154
92
69
120
119
69
102
74
121
153
87
76
130
89
106
127
148
133
78
81
72
137
175
101
113
110
115
69
101
111
108
149
72
120
137
115
110
140
106
76
54
72
121
89
99
141
76
174
107
113
164
80
125
87
111
110
121
91
69
93
71
133
80
101
93
69
54
99
96
104
78
125
174
94
74
151
94
136
78
80
122
96
69
112
80
64
71
94
106
102
128
78
91
101
89
126
118
80
183
137
89
175
113
78
175
164
87
109
138
69
132
78
119
87
76
129
115
80
75
164
127
149
154
64
88
52
119
98
95
80
155
128
128
78
69
136
78
145
154
76
69
79
80
69
143
112
126
97
140
195
91
87
126
107
74
119
80
94
104
80
133
119
76
143
54
167
67
69
96
91
160
140
80
104
89
134
80
155
52
99
129
154
96
128
151
119
175
109
145
87
119
121
121
137
87
119
119
107
111
136
80
125
151
175
123
89
154
163
69
69
101
70
76
87
110
175
174
87
88
100
91
104
88
151
94
96
101
94
101
149
106
119
107
68
107
154
91
80
126
117
120
149
112
87
120
130
96
78
93
104
120
121
121
80
175
56
130
110
107
88
107
69
118
80
138
131
82
131
69
100
121
121
117
94
87
75
157
99
80
88
69
85
109
85
78
88
136
132
134
160
80
188
80
80
88
121
115
136
111
80
43
74
151
140
72
163
88
117
131
69
103
146
91
89
78
67
131
88
156
104
54
143
75
87
111
156
145
87
69
89
126
80
113
97
91
134
109
129
80
109
69
162
69
94
67
74
69
152
52
136
76
197
105
69
136
59
87
93
52
120
115
109
91
96
76
78
126
127
89
80
87
76
130
80
102
52
52
120
111
78
69
106
109
109
155
78
128
128
107
130
69
101
99
101
107
69
76
141
87
133
69
74
121
112
87
87
95
54
100
87
99
156
69
99
115
119
87
75
131
69
121
113
79
117
119
154
110
72
128
118
80
119
134
133
140
69
119
130
80
69
87
76
88
54
156
114
69
151
87
78
69
129
104
67
175
142
113
119
80
119
104
72
89
89
131
87
80
154
93
79
69
110
155
183
80
129
80
132
67
88
93
69
106
69
127
80
83
80
80
122
121
118
69
143
75
154
140
78
76
159
87
69
67
69
99
69
89
83
69
117
117
128
78
120
140
113
80
90
128
69
130
120
156
120
155
100
118
76
107
175
107
88
195
119
83
85
80
199
112
132
76
79
107
96
87
161
128
94
79
87
143
104
56
121
164
69
89
87
106
110
95
69
99
89
69
80
101
107
107
99
128
106
145
93
104
175
56
119
148
99
96
183
96
114
157
106
121
76
76
136
131
99
106
96
120
131
120
131
119
120
56
134
118
127
92
66
155
131
83
128
69
121
100
88
69
99
111
113
148
121
113
69
109
197
154
87
109
54
93
86
115
69
143
159
69
153
175
119
80
93
119
106
111
104
175
89
75
87
175
72
145
78
128
87
136
124
156
86
156
78
148
156
118
143
174
114
69
212
132
147
72
119
93
78
80
116
104
136
134
100
120
87
122
82
88
87
154
151
100
136
122
76
128
80
134
67
132
117
108
120
54
109
74
151
69
80
87
106
120
110
52
137
69
69
128
98
109
78
146
89
72
89
127
110
114
151
146
72
121
54
71
112
87
74
112
100
201
78
104
134
80
113
76
148
121
152
78
107
175
87
138
71
145
146
72
133
140
123
175
109
145
95
123
66
100
102
176
126
80
125
164
80
126
76
107
120
80
99
131
140
119
154
114
80
99
80
80
80
169
100
99
125
78
145
89
87
119
72
109
89
111
142
120
107
87
78
93
96
123
115
87
94
104
91
80
133
110
113
123
87
99
137
128
94
109
74
137
76
128
76
144
107
151
110
148
146
80
96
120
80
81
131
128
78
101
108
125
103
120
175
93
92
117
148
80
93
107
75
133
69
56
101
80
69
119
110
105
140
112
107
80
95
82
120
112
128
119
107
129
87
121
153
87
98
120
120
101
128
80
127
102
88
185
107
72
94
112
106
117
80
136
67
148
109
136
109
128
109
119
151
145
76
154
79
110
82
154
83
130
69
151
107
151
76
145
154
76
78
119
136
88
174
80
89
132
114
113
78
91
89
78
89
119
104
148
151
119
107
83
134
69
128
114
142
101
129
131
149
131
69
104
107
78
120
129
119
80
72
137
124
83
144
140
125
78
156
80
69
78
78
117
76
101
69
94
136
80
151
107
199
120
154
175
78
92
143
80
52
67
100
94
80
106
154
78
155
69
151
87
94
102
74
120
121
151
100
147
107
107
131
119
80
80
104
69
103
121
128
124
87
115
80
99
69
54
107
89
66
52
76
136
124
131
110
85
111
67
117
71
119
87
104
87
94
123
78
78
78
91
87
146
129
107
119
136
80
86
113
124
111
118
93
89
69
146
108
145
115
87
103
87
107
78
104
112
72
87
185
56
78
110
112
122
106
129
69
119
103
99
93
76
69
112
85
121
113
113
69
110
117
104
128
112
119
134
80
80
57
128
98
157
117
56
80
99
69
175
69
76
149
132
87
112
90
134
87
109
129
91
106
121
89
124
134
101
89
82
54
109
126
69
69
88
112
69
74
87
175
114
69
109
126
100
112
98
109
69
82
146
109
110
110
119
114
90
118
112
134
93
93
128
69
117
110
69
111
80
69
101
87
67
145
87
93
120
118
117
131
80
52
76
72
87
143
96
69
72
80
127
67
104
78
120
80
69
106
80
134
131
102
121
87
94
56
90
107
175
94
88
109
119
98
120
52
58
69
93
154
97
142
129
83
109
81
82
80
153
134
136
128
140
87
175
78
119
107
81
91
98
80
88
110
79
80
117
111
113
126
127
119
89
78
89
106
69
54
154
120
88
154
69
156
90
131
112
69
145
104
72
124
80
87
78
129
119
76
137
123
96
109
125
156
83
89
89
118
114
80
87
80
115
134
79
101
127
56
163
103
114
130
172
89
100
95
174
87
90
78
122
69
101
79
80
104
80
74
107
151
166
104
56
122
113
104
117
119
100
134
98
80
80
67
80
89
137
69
69
80
78
97
131
99
69
104
76
60
155
69
145
69
127
109
151
117
92
88
146
96
169
128
74
175
89
106
69
93
87
115
73
79
121
120
69
78
199
69
69
107
145
101
80
99
120
87
102
107
124
80
91
72
110
112
87
69
79
89
175
114
109
91
87
134
69
119
72
118
119
101
103
112
155
147
123
132
112
69
110
151
143
102
154
106
69
96
87
107
80
85
147
119
94
101
96
85
107
78
99
119
158
147
69
87
113
80
72
175
94
92
86
66
175
69
103
127
72
101
104
99
199
120
136
141
124
101
114
63
113
128
154
94
79
94
99
69
120
117
88
117
87
151
156
101
137
120
69
128
131
89
114
81
80
93
148
134
142
97
94
93
56
88
118
128
154
119
113
109
87
112
69
78
106
69
106
80
126
76
85
155
69
89
82
80
119
75
127
80
103
94
85
87
105
88
104
128
131
155
89
121
97
144
80
88
120
143
106
78
143
126
146
175
126
72
109
107
88
59
120
69
120
139
121
110
99
72
88
118
147
87
162
126
120
58
56
69
64
107
113
120
101
76
87
154
106
175
140
185
126
110
78
80
80
85
154
102
69
89
119
69
75
131
109
83
119
93
112
84
132
143
119
150
76
175
119
89
112
80
107
102
78
150
115
69
87
88
146
144
80
91
130
154
146
92
99
80
172
128
107
91
171
110
69
120
109
91
124
119
69
87
80
119
57
115
120
56
78
104
106
151
106
87
117
80
107
81
151
103
125
80
154
104
117
152
99
78
119
103
93
175
100
96
128
111
107
80
137
160
109
130
78
107
128
116
72
87
54
119
113
80
110
121
104
122
152
155
89
128
197
119
119
78
117
110
78
95
69
76
98
76
98
121
104
89
99
107
136
140
163
76
76
101
100
80
82
154
69
76
109
175
104
109
151
87
78
69
99
119
90
128
102
69
80
80
114
136
175
69
127
175
78
128
108
96
112
149
104
87
106
140
120
80
87
80
128
80
99
118
56
151
79
80
104
155
106
119
96
121
69
145
72
120
175
87
154
151
128
101
120
158
76
140
128
132
169
100
80
119
76
64
145
154
117
74
78
122
99
80
143
107
98
100
114
110
106
165
99
78
154
54
107
106
152
112
140
117
99
87
176
100
154
66
69
109
69
98
71
134
118
76
103
119
131
128
106
175
163
111
87
93
106
88
113
175
92
93
128
89
110
101
132
109
69
155
104
175
112
80
81
95
113
140
175
94
78
83
128
75
95
118
69
122
148
118
80
128
69
136
183
117
89
76
69
99
152
118
95
113
127
101
117
101
98
120
134
121
94
197
93
104
114
104
87
72
69
80
131
69
128
113
99
127
91
134
69
108
88
94
91
117
152
87
175
69
127
69
87
96
78
111
76
120
76
69
122
75
107
80
128
128
131
114
109
89
69
119
72
96
81
109
104
87
69
93
80
116
90
43
131
78
87
120
163
175
89
94
136
151
69
101
175
94
94
147
175
80
80
106
80
112
151
155
120
112
129
117
52
80
164
54
108
71
78
120
89
131
122
112
145
43
119
175
89
126
110
72
107
156
110
80
95
137
69
74
99
67
89
124
112
154
80
145
155
80
99
128
101
76
154
88
87
76
143
99
145
94
78
124
80
120
110
157
131
151
94
109
174
120
107
131
87
96
143
185
109
87
146
74
128
122
100
75
107
127
119
52
72
119
156
103
133
154
99
156
154
107
94
102
80
99
86
175
117
101
134
131
149
175
115
118
87
52
122
126
76
127
175
131
85
113
94
120
124
79
66
132
106
88
134
131
99
121
107
114
109
96
93
74
130
56
97
163
69
121
128
119
152
146
69
104
72
85
119
96
88
69
128
78
127
96
78
99
143
69
54
129
80
87
131
135
134
103
163
118
109
201
78
69
99
133
119
85
113
110
104
114
100
154
69
181
94
80
94
80
67
101
90
100
80
159
69
80
76
111
131
110
94
104
83
98
94
119
94
69
98
89
155
117
90
146
123
91
54
128
69
146
174
119
129
149
80
78
85
93
120
100
92
110
94
80
85
110
128
58
156
63
102
148
122
107
121
74
162
101
141
152
130
120
94
126
137
72
89
108
86
145
89
131
140
111
128
63
69
110
129
137
89
109
80
85
149
118
120
88
121
119
140
87
92
87
137
110
142
115
107
119
175
123
113
120
136
154
155
91
130
94
79
115
76
76
76
88
119
111
101
99
106
151
76
99
80
113
175
80
107
109
107
140
102
154
99
175
104
80
76
91
122
85
78
113
69
141
121
69
101
87
175
104
106
80
129
119
96
119
143
144
88
80
119
67
94
105
163
110
90
99
78
107
117
108
153
69
87
88
154
111
94
89
93
69
88
80
107
104
138
130
146
150
115
119
91
107
80
71
178
80
169
88
80
118
130
89
72
145
73
80
91
101
87
129
113
68
91
143
66
113
87
78
130
88
106
100
89
137
145
64
69
175
138
154
80
120
110
156
108
118
172
69
140
99
107
134
110
111
110
97
101
71
107
89
117
91
136
106
78
128
119
43
91
106
154
96
89
102
175
136
119
88
107
126
80
96
148
205
118
69
124
80
72
69
76
101
88
109
89
146
84
80
118
80
100
110
131
76
148
101
72
137
117
120
123
80
137
112
74
95
87
107
129
147
109
154
154
126
82
124
152
78
131
120
106
113
154
112
69
109
74
175
76
69
119
140
174
135
78
88
144
72
76
94
119
99
87
133
134
104
111
87
146
54
140
97
69
58
102
197
80
119
123
78
94
136
76
108
54
118
141
74
91
107
104
76
72
110
83
69
149
174
99
76
101
143
106
104
143
69
85
69
119
79
125
138
84
128
69
120
121
123
91
114
197
140
174
76
117
96
140
108
120
148
99
80
87
137
52
89
69
119
99
113
78
121
96
128
87
91
130
109
82
104
78
163
118
175
96
87
94
119
54
128
128
140
72
158
76
74
156
80
140
95
103
121
89
85
154
137
165
134
78
76
113
101
80
94
68
69
131
154
78
80
102
87
102
109
80
80
109
128
169
100
89
156
119
54
128
154
76
96
99
124
95
73
111
80
148
87
131
127
113
69
92
80
146
96
104
117
156
131
69
94
93
146
69
56
118
76
106
121
120
99
107
110
112
87
120
112
121
128
76
103
122
125
59
172
87
78
107
72
100
151
78
129
52
80
119
118
119
90
104
100
123
113
151
76
122
104
156
95
163
106
78
80
119
130
101
162
88
136
119
106
159
80
112
183
80
174
89
83
99
96
80
100
89
87
76
80
110
141
156
88
91
94
101
69
78
78
78
93
78
118
69
102
80
136
99
101
144
54
111
83
88
87
147
69
156
80
117
112
90
120
154
80
73
78
76
80
69
95
104
94
96
127
106
99
127
175
90
69
163
89
103
112
175
107
96
96
78
90
197
110
175
75
76
99
126
156
114
87
67
112
94
187
87
112
174
134
98
109
119
93
102
155
114
112
136
154
85
90
110
154
88
86
126
115
99
62
112
99
80
134
128
136
88
72
96
52
106
69
82
80
120
87
69
69
134
69
129
101
80
78
106
134
119
69
151
100
96
114
117
145
77
87
112
151
146
87
94
114
144
69
78
88
69
112
154
125
101
125
76
78
80
106
91
175
109
64
94
69
144
87
91
99
69
134
80
113
175
136
93
137
118
69
94
72
126
164
108
175
119
120
87
134
96
111
69
89
99
104
136
127
109
72
104
110
116
76
101
75
105
137
119
52
122
108
163
140
161
99
69
80
108
131
92
134
102
69
134
175
72
115
52
146
87
64
163
110
119
175
118
93
101
104
93
166
83
130
110
114
87
109
109
119
93
123
104
111
174
91
109
85
69
76
128
80
87
139
99
164
80
140
128
91
99
107
155
72
66
87
78
119
76
69
178
87
52
113
87
79
69
126
96
146
106
114
94
88
102
106
112
94
76
76
78
80
140
134
80
96
72
66
72
117
146
76
85
77
93
80
80
80
56
90
69
175
165
87
80
78
110
69
80
175
69
91
66
87
109
151
80
123
69
119
82
96
109
69
85
80
113
104
74
88
127
154
100
117
93
78
99
88
116
94
80
76
80
110
127
80
117
87
91
78
136
117
93
96
175
88
88
88
107
114
71
128
78
69
69
56
134
76
164
130
69
69
151
85
69
101
107
137
80
69
74
123
76
107
129
89
101
113
163
152
137
66
90
94
109
85
109
148
78
87
109
136
201
87
69
115
119
78
111
98
93
121
88
140
88
69
94
89
119
131
104
90
69
175
109
92
119
83
156
112
114
91
69
117
134
85
175
80
69
119
75
144
154
128
117
172
93
97
103
76
145
69
80
94
122
88
150
96
132
96
107
143
104
107
101
175
89
131
80
117
183
95
146
95
107
94
80
154
128
78
96
92
181
155
80
104
74
88
63
128
119
85
107
164
80
140
93
80
129
121
106
91
125
99
163
76
92
78
56
93
183
134
151
131
110
87
122
156
92
93
120
128
94
107
96
76
87
99
145
138
69
80
87
140
157
119
101
69
43
94
108
88
90
71
87
131
78
97
104
88
87
80
69
106
106
80
80
148
87
85
104
126
87
139
182
119
131
76
110
80
76
94
96
105
104
132
96
133
150
117
72
86
164
129
107
123
98
175
82
120
201
80
123
69
101
75
87
91
100
83
99
54
165
142
89
80
197
78
140
120
69
127
106
80
146
107
120
154
110
69
80
78
89
112
78
87
115
101
80
101
104
108
99
118
144
78
129
87
117
155
130
140
166
52
60
78
80
118
102
174
107
119
117
120
94
96
156
80
94
92
143
120
107
183
106
128
105
94
104
131
154
119
52
94
107
80
80
136
93
102
134
134
110
110
110
99
89
128
144
69
107
110
98
103
151
104
76
80
98
88
154
97
80
146
80
164
109
109
82
87
72
123
117
144
78
78
88
174
128
154
106
103
101
128
80
52
107
75
141
118
76
89
80
69
87
95
98
66
99
96
98
155
80
140
69
148
72
119
121
80
119
119
67
118
72
89
144
140
76
78
80
110
88
78
106
74
80
54
112
78
104
80
113
89
124
164
89
69
97
104
128
118
145
66
89
85
112
121
121
131
95
88
99
128
69
197
88
84
109
138
76
107
107
80
144
100
96
54
110
73
93
89
80
108
76
85
129
107
74
91
88
151
130
120
112
122
137
121
87
107
112
121
100
78
72
100
148
69
122
138
78
154
80
104
140
80
89
87
96
66
121
155
129
144
56
80
78
119
60
110
76
111
92
87
87
69
107
98
105
69
118
94
151
128
119
110
69
134
156
90
80
156
120
108
78
78
157
80
98
117
106
82
130
134
80
89
93
96
154
103
121
78
95
175
80
117
69
109
201
69
162
80
80
148
89
107
136
78
83
88
154
89
83
87
78
89
100
98
87
80
87
126
128
119
99
96
80
155
66
107
89
80
91
114
106
119
109
154
185
107
109
144
74
96
80
175
72
175
52
72
89
78
78
142
91
89
136
183
119
103
120
154
72
80
112
94
128
175
88
170
66
89
138
57
126
142
123
88
64
104
93
197
78
78
80
156
75
147
80
69
69
128
72
79
69
106
69
87
131
117
99
69
93
100
76
128
69
175
119
64
156
128
148
106
80
116
112
110
104
113
115
123
175
114
80
85
89
88
89
89
78
69
94
89
107
88
75
87
87
88
76
88
137
154
110
154
118
112
130
128
185
80
131
78
94
128
80
119
89
113
94
101
74
88
175
87
107
75
139
107
106
120
107
104
99
69
104
119
82
131
146
98
115
94
103
78
94
166
80
83
80
80
89
87
74
120
76
92
135
136
80
69
74
87
96
87
72
117
128
199
80
85
88
66
126
94
54
60
94
88
132
76
136
56
119
66
76
78
87
80
87
89
69
180
99
94
93
119
131
122
107
117
76
130
137
175
154
98
109
131
80
56
90
183
80
88
187
100
85
99
142
154
69
119
89
128
99
107
78
175
137
110
109
89
93
129
76
99
114
96
134
80
112
102
72
91
87
163
78
127
102
88
120
80
120
112
80
120
136
80
87
113
100
93
102
66
101
79
89
96
119
136
87
197
87
119
130
107
131
57
125
122
119
157
87
74
121
56
87
119
120
144
124
89
73
134
109
156
80
131
107
54
110
136
113
78
101
89
136
78
123
175
145
145
69
120
109
119
107
78
106
69
145
80
113
175
80
69
123
148
93
69
145
128
131
119
89
134
72
123
90
109
89
66
80
69
132
134
101
87
114
95
110
109
163
107
94
154
87
102
119
69
136
80
113
88
121
122
76
139
109
69
128
120
123
88
155
78
109
156
90
62
89
119
139
117
88
69
106
78
197
78
89
155
96
164
112
94
131
54
67
104
66
90
80
76
141
69
79
54
140
121
80
106
197
127
76
129
123
72
101
103
112
90
143
89
87
78
175
152
183
114
80
73
89
119
103
141
78
136
117
110
69
101
76
133
106
125
80
154
193
122
92
109
82
107
107
76
120
148
131
130
76
69
69
101
102
78
110
161
91
114
69
119
80
109
121
93
80
119
127
96
153
107
92
143
76
111
116
74
104
69
136
88
69
114
129
145
69
74
95
142
69
120
88
164
56
104
91
115
54
120
93
134
160
93
96
76
120
124
106
76
148
152
80
85
128
117
109
164
119
109
151
81
130
118
80
110
69
107
66
64
111
124
69
109
131
69
134
131
72
111
111
175
124
111
134
118
109
123
143
86
69
98
87
119
93
73
89
136
117
151
69
117
99
95
107
72
80
104
175
107
87
56
96
78
94
117
80
137
76
156
111
95
87
78
131
119
69
74
156
135
94
78
90
128
126
102
121
125
93
156
85
132
69
78
72
119
107
87
76
99
136
101
185
136
102
163
107
103
94
107
146
118
136
69
107
132
60
104
155
88
120
74
101
122
96
78
102
78
109
67
79
99
140
98
102
209
112
143
98
66
74
87
106
54
140
175
78
121
159
154
80
69
175
120
148
86
121
76
76
74
136
72
74
134
78
123
140
154
87
102
138
93
87
144
129
164
163
122
123
113
80
155
130
76
95
94
112
120
121
80
119
72
69
72
107
183
100
110
139
127
85
66
100
149
76
103
78
94
112
94
163
96
136
175
155
80
76
76
76
123
127
72
119
163
130
143
120
69
80
107
74
99
99
87
163
94
131
102
131
136
107
56
80
120
72
106
119
151
103
74
76
121
87
110
120
88
156
109
129
80
80
76
125
123
104
121
119
80
69
110
112
99
120
155
100
94
127
121
154
156
78
197
89
76
115
96
95
107
73
80
80
117
76
76
130
95
181
155
103
142
78
133
143
79
80
80
119
109
156
175
67
152
87
137
100
154
134
91
89
111
80
80
146
99
91
154
116
69
129
69
129
119
115
121
154
133
120
154
93
119
89
127
117
78
147
113
117
156
154
107
134
96
136
134
76
88
66
154
157
136
127
119
104
80
134
94
151
134
107
78
109
88
80
139
88
197
76
138
78
101
144
197
143
72
132
125
72
109
148
110
110
104
121
101
106
74
134
43
99
98
134
67
150
91
104
88
156
78
124
72
128
93
69
88
113
102
197
129
78
80
107
95
88
137
112
121
76
113
94
74
64
119
80
69
69
113
80
80
93
91
79
111
111
78
78
74
120
110
130
106
128
120
116
112
88
100
96
87
122
109
94
80
124
80
134
88
183
72
140
89
120
103
117
96
52
69
100
119
76
107
102
87
76
111
156
78
80
119
137
175
124
183
87
113
111
154
127
64
107
174
175
72
197
145
80
80
163
104
120
74
175
128
84
109
87
120
147
106
91
76
104
80
88
102
91
83
115
144
76
119
151
139
79
169
110
69
78
81
80
69
117
112
80
69
104
114
107
87
72
87
145
72
112
121
175
80
131
101
151
104
87
140
120
148
88
123
69
157
164
52
110
146
160
92
83
76
155
88
98
80
98
131
87
156
128
117
201
105
83
141
130
69
159
123
119
119
87
176
98
94
69
175
148
80
76
123
78
69
52
80
99
117
134
69
101
69
151
78
122
87
107
78
129
80
111
120
110
87
90
111
100
133
136
106
80
91
80
130
69
152
107
87
101
102
159
120
89
127
93
123
120
128
117
104
137
80
74
96
108
78
85
80
69
100
113
121
88
101
174
100
127
128
120
118
72
175
149
80
111
132
89
100
76
87
72
128
78
105
126
107
141
131
87
141
116
87
128
80
115
110
137
119
136
143
96
154
112
116
144
159
80
122
145
52
175
80
76
149
102
69
87
79
140
69
110
88
80
93
82
118
110
110
56
101
113
94
142
80
112
125
52
80
189
129
78
88
107
67
72
96
78
154
87
120
101
93
80
96
132
93
80
90
73
91
78
69
129
124
176
155
80
130
156
144
101
88
74
109
96
103
120
100
69
99
100
138
111
78
80
80
69
117
80
80
94
69
80
72
117
197
134
128
147
122
107
93
113
113
140
68
140
120
134
69
120
183
69
87
119
151
169
80
100
87
94
69
125
125
119
95
78
120
82
87
82
80
183
101
151
122
111
122
136
69
151
119
87
108
128
98
154
102
125
144
109
106
155
197
78
119
113
56
80
109
119
89
96
89
134
87
87
154
124
209
88
114
148
96
85
94
128
113
115
120
80
87
131
125
119
113
87
80
156
145
92
68
76
88
106
69
166
114
99
154
80
69
74
106
136
102
128
129
158
156
100
137
80
78
130
88
117
163
139
120
69
88
78
78
79
130
110
175
80
112
124
120
80
175
134
132
120
143
110
154
89
113
90
101
108
136
138
76
110
76
154
143
113
69
127
98
140
109
78
129
136
94
106
80
99
69
116
110
80
97
56
128
107
114
106
66
69
155
90
80
153
72
128
119
87
136
103
69
113
100
71
78
126
69
106
107
142
72
78
121
154
149
148
85
80
140
80
164
101
119
104
89
69
143
175
109
115
80
80
123
136
154
137
58
54
106
80
146
112
154
91
80
76
121
56
109
154
85
89
95
74
141
136
156
107
69
66
64
54
69
94
87
131
154
173
137
101
80
102
110
113
119
134
80
120
72
120
119
76
159
151
52
76
119
72
69
128
107
98
78
106
69
151
107
101
134
145
80
155
74
125
151
90
76
133
113
93
87
199
78
98
107
120
119
89
59
88
80
111
131
103
118
125
147
134
52
143
78
78
110
154
120
69
156
82
74
80
103
92
76
126
142
148
87
122
123
78
145
140
109
142
80
99
101
112
87
94
121
94
197
115
129
122
78
109
156
76
107
131
107
121
91
76
43
154
88
117
87
138
96
137
96
69
80
76
144
121
113
134
106
185
87
107
58
89
71
98
112
112
88
92
134
124
76
185
151
104
146
69
130
78
87
52
75
150
90
80
98
81
96
100
87
154
80
80
104
140
121
111
146
80
101
110
120
94
128
121
118
121
120
99
69
125
107
112
85
87
130
115
100
138
107
104
78
109
72
80
163
112
120
87
110
91
101
83
160
97
102
76
175
113
100
88
90
133
117
69
80
69
84
128
102
120
99
101
80
119
136
122
119
154
165
130
104
134
120
99
75
110
73
102
161
93
106
109
69
107
76
106
102
43
78
115
118
117
85
156
175
128
104
131
54
142
120
154
74
73
117
117
114
120
59
120
100
146
69
76
72
110
127
81
80
74
78
80
185
73
87
110
175
87
120
148
74
151
111
107
72
88
133
76
119
88
137
80
147
88
134
131
163
92
119
87
107
108
69
134
80
78
71
69
134
96
80
80
128
155
112
154
99
88
80
107
140
76
87
85
87
110
169
88
107
87
79
139
80
111
119
69
148
80
120
119
172
96
175
119
119
117
69
69
128
83
175
133
113
96
80
99
130
163
120
88
80
103
156
54
112
93
69
136
91
43
120
88
73
91
80
80
110
113
136
136
138
92
117
94
95
83
89
121
76
90
54
83
136
95
124
69
90
87
80
89
175
85
111
99
88
115
154
91
115
94
152
104
91
88
69
156
71
111
104
156
146
120
142
80
175
108
131
69
128
107
87
72
134
99
126
123
88
80
131
69
175
114
154
98
120
104
87
175
69
128
121
104
76
127
96
134
112
174
76
209
80
122
154
89
115
126
151
121
87
79
119
99
75
88
131
80
107
83
122
94
107
131
80
109
117
109
78
101
131
155
91
82
100
76
143
143
166
80
140
106
151
93
128
80
133
134
136
107
124
117
119
131
119
88
122
76
119
88
128
136
94
80
125
69
52
111
76
128
80
105
83
93
109
100
148
69
104
69
99
80
150
93
175
69
94
96
78
93
94
80
76
122
87
121
80
88
126
140
88
76
158
115
120
85
115
114
134
80
147
87
78
148
94
72
110
140
123
91
80
98
56
67
131
80
152
91
88
80
80
54
160
119
109
80
106
131
103
128
164
103
69
106
143
106
146
117
114
153
117
114
140
116
103
96
117
97
78
80
101
110
107
121
76
112
80
134
56
93
80
152
138
101
81
144
197
119
122
114
89
89
105
140
80
80
104
87
134
107
142
69
143
69
119
138
110
76
96
78
81
80
89
69
80
154
122
111
161
181
120
106
80
78
149
123
112
83
69
109
74
91
80
97
104
121
76
128
119
130
140
78
72
137
95
156
76
136
112
112
164
125
102
99
121
88
120
109
119
80
121
151
110
107
72
199
96
102
80
102
107
101
175
99
85
92
118
78
88
74
154
80
144
118
106
104
60
140
93
125
76
94
69
94
175
52
89
145
163
87
100
80
115
166
89
69
76
161
140
163
137
133
120
132
76
87
69
89
104
78
140
80
104
104
169
90
104
69
91
107
175
144
119
83
124
112
88
183
120
115
87
137
119
154
120
134
132
94
80
89
114
140
74
91
87
110
105
78
106
112
201
116
140
52
69
94
135
85
199
94
94
76
107
130
98
74
131
80
95
132
113
80
120
114
76
125
127
175
89
101
87
80
132
76
104
175
145
94
102
89
83
175
119
156
94
80
96
185
93
85
106
160
94
76
119
76
95
121
96
80
151
75
120
80
136
67
90
175
59
69
76
117
146
74
99
109
91
134
123
113
94
146
94
74
107
87
76
76
104
95
141
52
68
175
79
119
104
197
104
129
106
68
101
106
107
69
78
109
154
125
124
69
96
109
120
131
106
87
95
76
119
107
107
88
88
104
80
88
175
87
131
91
109
100
80
113
118
99
104
91
72
117
107
181
146
99
113
107
43
119
104
71
80
52
69
99
88
107
78
117
113
69
157
154
121
101
96
103
80
137
106
89
87
88
87
121
107
93
134
107
69
104
129
132
94
114
69
112
124
87
85
69
87
128
87
80
131
99
102
85
120
102
138
78
119
96
88
112
143
132
144
136
69
159
130
142
123
134
128
156
80
80
137
133
88
130
127
120
104
89
99
131
114
109
154
166
133
117
121
121
80
120
106
74
119
76
151
116
87
134
78
121
185
72
151
80
99
76
120
89
99
151
109
85
131
69
68
95
107
137
143
132
93
92
125
145
72
91
156
125
92
76
76
106
145
78
111
96
126
113
89
131
119
109
89
118
74
117
127
76
209
87
76
137
119
142
164
115
149
67
88
163
110
165
118
197
80
99
69
113
69
157
78
151
115
143
175
118
87
87
59
88
123
118
113
69
85
72
128
119
121
143
96
80
76
98
76
115
99
112
127
95
120
99
87
149
125
106
128
109
148
96
80
120
101
102
133
112
91
128
134
120
145
124
76
62
110
103
147
76
88
94
80
132
117
100
128
74
162
113
107
94
137
78
130
106
117
132
117
107
100
69
87
89
120
175
80
54
119
100
128
109
54
163
114
76
136
72
69
104
91
145
94
109
123
78
89
164
154
69
118
114
120
199
69
132
143
117
109
69
107
87
80
106
110
129
78
147
102
52
119
119
175
155
78
119
95
154
120
146
96
142
129
142
87
78
107
72
134
169
87
81
85
117
90
128
80
131
158
80
105
74
106
106
94
110
103
72
94
120
126
88
146
102
103
76
72
128
88
112
54
195
136
94
121
89
69
94
76
90
113
93
80
115
78
95
107
80
118
76
119
66
96
68
87
78
80
121
128
101
92
109
113
119
110
109
133
175
104
153
175
119
104
80
120
64
72
87
74
175
154
87
88
96
107
134
110
69
96
110
127
143
145
120
80
93
78
119
103
132
84
103
89
69
117
91
80
128
87
107
80
76
110
96
93
151
122
136
80
99
154
69
175
93
137
123
97
69
130
93
120
118
80
154
80
110
91
87
117
85
69
112
80
148
87
54
88
110
133
91
112
101
154
101
137
80
201
181
76
143
119
80
162
87
126
75
107
76
110
99
147
104
79
89
80
137
76
107
104
106
119
106
104
119
120
136
134
73
69
78
137
118
146
132
131
175
82
96
97
69
89
119
128
120
119
144
104
80
83
113
138
114
145
78
146
87
119
175
68
156
56
115
80
78
78
76
83
132
74
89
88
121
94
123
75
80
119
121
164
104
131
88
52
130
152
96
107
80
127
126
136
88
107
76
104
136
128
88
69
119
109
119
109
120
56
122
174
78
83
134
120
80
119
199
118
127
120
120
160
80
154
136
147
87
87
175
95
72
119
101
88
120
76
120
163
64
139
94
89
110
77
134
118
139
69
113
82
72
141
103
69
67
143
127
131
89
85
79
69
115
87
131
96
138
138
100
148
121
99
157
124
69
102
99
80
89
87
132
164
120
175
117
93
175
131
80
69
106
87
144
96
87
80
89
104
80
125
107
112
145
87
91
87
73
88
69
118
80
87
127
119
93
80
113
78
69
69
69
175
99
102
80
199
89
95
138
60
89
185
209
110
172
69
120
80
137
85
72
88
142
131
78
80
87
128
117
123
131
91
175
88
106
94
106
106
142
64
87
156
91
87
85
128
85
119
121
110
76
117
111
93
111
132
88
91
72
131
119
120
154
87
138
123
88
76
101
69
106
69
113
152
76
59
74
82
132
102
104
69
96
72
160
106
125
52
93
155
101
89
80
78
102
69
140
87
134
80
90
120
78
133
76
140
69
155
109
69
88
100
160
128
106
146
109
76
78
119
120
89
112
134
125
117
81
113
74
80
138
94
104
112
119
76
128
120
94
145
117
87
95
87
67
134
140
128
79
145
102
80
137
117
69
126
128
56
121
76
69
69
163
80
112
99
100
136
148
76
106
113
150
120
107
80
113
152
133
88
126
75
56
112
95
138
67
104
120
132
87
54
80
87
117
156
133
119
113
85
119
130
152
80
126
69
149
121
154
104
99
103
119
101
59
80
104
113
155
75
133
89
80
80
106
113
117
99
66
127
136
128
99
121
80
76
119
104
115
106
78
106
76
118
119
117
78
78
110
146
119
76
52
137
80
89
72
175
131
99
80
116
107
131
155
80
105
130
87
80
145
80
84
93
106
147
128
134
94
151
128
141
104
134
146
92
96
119
94
120
134
89
117
78
80
69
54
89
123
99
133
80
118
80
69
80
122
112
151
104
69
143
127
119
100
129
109
131
87
121
128
95
89
121
69
117
147
93
92
118
151
69
89
143
120
151
163
101
87
78
78
121
118
94
78
80
78
91
154
69
154
90
127
100
119
108
120
109
107
112
104
83
82
175
143
101
83
69
140
93
110
113
78
76
87
146
121
87
127
102
80
155
75
145
108
64
99
112
87
125
93
80
80
118
82
106
83
54
111
120
138
75
155
96
107
98
78
119
117
131
95
91
64
147
112
80
111
119
80
60
78
74
67
106
111
88
123
78
112
113
69
117
80
78
80
94
110
89
142
85
148
69
69
113
110
122
69
110
104
82
124
104
137
128
78
136
76
100
96
82
127
94
120
130
159
72
102
134
134
99
101
120
155
127
88
154
80
175
69
87
112
87
121
117
99
117
119
89
102
78
99
121
119
131
130
92
165
71
94
79
131
71
107
112
95
52
68
154
80
146
69
119
95
119
175
119
96
124
108
87
56
90
110
117
90
115
80
101
109
110
211
119
175
79
175
76
89
91
104
136
107
154
161
69
160
103
138
76
164
110
109
80
154
87
80
74
111
126
107
78
140
107
136
110
117
80
166
72
109
80
80
63
89
80
132
78
119
88
107
58
78
133
112
93
107
137
69
131
145
87
107
155
95
98
90
175
128
104
69
82
156
80
128
87
121
131
157
87
136
79
80
127
175
106
69
111
93
134
117
134
175
87
104
74
107
106
128
144
126
128
89
110
72
88
129
183
74
126
174
87
113
119
115
78
76
146
102
92
87
66
69
121
117
118
106
107
128
115
165
175
106
87
82
143
76
107
94
134
107
109
78
69
102
115
117
80
121
119
80
115
118
175
87
119
131
69
143
78
69
107
113
112
71
93
88
163
80
99
101
78
112
69
165
89
120
112
69
125
120
95
80
99
94
87
156
107
102
69
110
157
117
120
141
154
87
104
127
78
193
89
108
109
99
131
124
69
69
69
80
80
156
113
119
92
76
95
124
89
94
128
80
94
69
142
80
54
128
112
78
72
91
129
80
107
69
76
89
136
151
107
72
107
108
109
112
81
69
56
134
110
117
87
80
133
80
107
111
136
78
115
115
129
87
130
66
123
99
150
102
110
174
127
69
78
165
97
137
103
133
80
72
121
151
80
148
128
85
110
58
76
78
102
155
103
150
120
155
117
151
78
149
162
150
80
87
88
79
135
110
201
104
143
92
157
133
80
80
129
122
80
132
131
121
89
110
175
112
144
87
109
80
120
94
80
109
87
66
87
138
120
80
69
144
117
78
117
73
69
133
69
99
118
88
54
120
123
122
80
153
146
69
153
88
134
87
100
80
112
156
142
156
102
114
72
108
154
80
131
151
88
107
120
140
78
113
139
154
146
119
94
88
78
112
76
106
78
123
136
93
119
80
118
162
101
80
109
119
109
123
99
113
174
140
119
147
119
78
154
80
89
90
158
143
104
69
87
92
119
119
69
76
106
80
119
94
99
128
119
128
102
95
151
99
146
128
160
134
154
69
137
80
101
122
99
154
114
83
87
143
128
69
52
72
199
107
107
124
129
94
138
80
71
119
104
109
140
149
87
78
87
119
87
81
80
131
99
80
93
116
143
116
87
99
175
101
80
69
80
136
119
107
146
197
155
133
128
119
164
130
76
80
93
89
154
103
82
88
131
99
101
107
76
123
142
114
96
89
83
151
126
78
76
78
119
122
119
88
120
121
69
99
109
110
94
93
109
104
107
119
134
88
115
75
107
76
122
110
143
160
175
128
89
80
99
128
89
110
110
43
124
88
80
132
134
69
109
151
82
109
125
101
76
107
144
78
140
80
136
91
125
85
123
107
90
80
115
78
131
80
119
76
113
162
164
76
151
134
125
69
160
80
146
163
54
145
123
140
69
119
128
80
80
90
146
106
76
67
120
107
87
87
54
119
157
128
84
78
103
91
118
101
124
154
159
121
76
126
146
87
98
107
107
94
163
128
106
119
104
85
123
121
114
78
140
89
101
155
69
72
175
155
80
107
72
69
69
172
105
128
154
94
114
78
145
90
69
146
128
120
107
89
87
142
89
87
93
78
69
155
72
80
80
91
110
72
80
102
102
81
163
87
89
80
205
80
88
85
89
106
181
78
93
151
107
96
119
119
119
148
93
119
91
87
147
72
149
127
117
98
121
117
110
96
136
114
154
127
120
92
112
134
80
69
101
112
69
157
69
78
69
74
136
52
87
80
99
109
69
66
163
115
155
80
69
109
125
80
132
88
111
56
175
111
134
79
107
76
78
134
154
113
120
134
143
156
155
123
113
121
78
86
80
163
80
175
121
80
93
69
80
121
94
80
163
119
72
99
73
104
94
72
134
101
88
119
164
76
197
107
107
101
52
114
136
128
80
76
87
87
73
87
118
107
143
136
115
56
119
107
92
80
94
90
136
99
126
145
100
141
76
80
156
80
120
159
108
87
87
99
136
92
160
87
96
93
115
87
175
76
117
121
175
69
76
104
128
80
183
100
87
75
87
146
78
109
195
74
99
88
142
145
164
69
120
120
120
97
106
187
120
154
127
128
99
132
123
104
106
117
122
88
78
116
77
109
137
89
140
80
80
175
104
118
76
96
175
87
138
112
89
87
122
87
74
113
137
78
113
78
122
123
69
73
69
98
91
107
134
115
128
104
54
69
119
91
124
120
86
78
107
78
164
93
175
69
101
134
78
98
80
122
80
109
89
80
69
93
111
106
154
119
69
120
78
112
110
80
120
84
120
197
80
124
140
119
107
116
134
58
76
74
91
69
117
128
117
87
143
88
80
99
69
140
126
96
98
72
80
56
175
109
54
80
91
80
80
99
113
87
109
88
80
104
110
120
80
119
112
122
100
69
130
93
134
140
138
131
99
113
69
99
113
140
111
140
89
114
74
145
124
134
80
110
163
80
79
89
70
80
94
69
149
137
137
76
128
80
52
119
110
99
107
119
151
107
135
113
136
103
153
80
102
85
107
123
120
133
128
107
81
82
113
125
127
72
96
99
101
88
163
110
80
87
93
80
123
87
119
72
69
89
107
111
94
96
113
121
101
107
146
96
69
113
69
117
87
110
110
72
163
175
112
107
87
106
101
114
110
98
76
155
175
64
109
76
205
148
117
115
154
138
80
88
135
104
110
134
88
151
169
142
104
140
131
102
90
80
120
109
136
69
97
103
95
69
131
119
76
153
128
69
156
132
106
120
119
128
84
76
114
85
121
94
140
94
121
76
96
152
129
93
89
144
80
72
134
69
154
80
151
138
160
79
94
104
120
94
136
175
96
159
82
120
111
72
106
78
80
109
147
72
140
175
152
107
112
115
106
87
145
96
69
93
133
109
175
120
115
136
154
120
110
80
88
120
102
80
98
74
123
113
89
76
80
113
78
76
155
137
99
113
69
74
80
75
131
106
111
69
88
106
132
75
93
80
120
143
87
137
120
119
120
80
128
106
104
109
94
126
56
107
78
142
140
175
138
130
110
115
88
197
90
76
126
113
99
78
127
89
133
151
154
106
128
134
154
84
101
102
78
104
111
123
104
134
88
175
87
87
134
175
134
134
118
78
94
136
91
163
123
134
76
160
128
89
128
117
113
117
120
87
76
72
119
136
77
94
80
119
87
87
155
80
43
118
106
122
93
69
91
146
113
121
152
73
87
114
88
119
78
107
100
106
112
137
69
76
80
74
119
80
69
102
117
69
120
69
124
115
151
87
88
88
120
197
154
87
154
87
113
85
121
154
152
145
85
94
117
129
69
78
76
78
80
69
144
115
154
69
88
155
109
69
125
113
120
93
108
96
91
56
103
175
144
69
69
54
107
129
146
91
87
115
69
99
80
80
80
144
126
111
69
113
80
69
137
120
89
117
75
120
99
107
149
113
74
154
88
69
78
94
118
120
80
157
87
119
69
69
133
60
89
54
129
78
99
111
87
79
77
144
154
85
101
141
132
93
117
90
128
102
125
119
143
89
72
52
78
160
76
52
154
121
100
113
114
147
127
138
136
80
87
87
88
78
103
126
88
80
120
156
117
69
87
93
89
92
88
131
78
111
78
119
112
110
87
109
94
76
128
93
113
101
136
149
119
132
134
104
111
76
106
69
156
80
120
76
80
110
160
110
82
69
63
80
82
195
124
120
94
78
78
80
155
119
78
131
78
132
90
90
114
119
101
102
78
121
120
156
83
174
150
113
67
117
78
80
105
101
197
87
136
141
69
115
106
80
89
160
88
93
96
80
155
134
99
78
80
104
88
110
107
103
146
88
127
108
72
111
166
121
110
128
157
90
149
78
80
114
81
183
144
103
120
94
141
80
104
148
89
83
119
138
76
90
89
118
76
89
119
92
83
85
87
140
90
69
93
107
127
175
107
113
113
144
76
93
93
103
103
129
90
87
80
59
99
181
80
112
120
80
155
131
120
94
156
109
71
107
154
120
154
120
145
88
128
69
98
137
69
76
128
124
78
69
109
143
69
67
197
119
60
110
128
128
106
69
132
140
127
140
119
119
109
131
98
127
72
97
76
76
102
114
67
80
131
74
135
110
87
80
128
94
69
87
76
126
80
66
69
119
146
114
69
140
87
155
104
124
134
87
123
89
91
94
120
197
121
155
93
101
134
80
113
80
116
147
76
87
152
87
69
128
106
117
131
131
94
154
145
99
87
120
91
94
110
122
175
133
94
69
144
107
175
151
128
78
82
88
107
104
87
72
151
107
119
90
136
185
78
118
119
76
134
121
171
69
112
87
142
78
140
113
87
142
87
96
113
69
67
134
93
87
76
69
112
185
69
136
120
101
119
93
63
119
127
113
128
120
127
80
80
80
87
109
102
76
95
96
103
80
118
120
99
81
69
114
109
80
99
109
76
80
104
147
98
67
134
112
56
94
138
98
80
167
95
104
131
74
43
93
197
76
80
80
80
93
186
76
83
69
93
74
109
69
179
136
131
119
80
104
69
72
94
76
143
89
87
107
69
104
143
89
121
88
109
81
69
103
127
136
87
87
56
110
75
80
69
124
76
104
85
76
103
123
99
155
119
80
82
154
132
145
80
94
117
134
127
155
96
72
95
80
106
128
117
131
72
78
121
83
117
80
63
80
57
76
121
110
120
80
154
87
103
155
104
120
140
120
127
69
154
127
112
67
119
131
76
103
87
80
109
132
104
117
89
87
163
148
80
151
96
164
88
80
110
94
112
119
118
103
69
101
94
151
112
88
89
100
87
72
78
113
43
85
136
108
138
69
80
110
80
112
120
107
154
89
80
96
78
80
96
69
123
114
127
156
94
110
66
87
110
123
134
109
122
131
119
151
96
104
106
140
128
132
94
107
78
111
175
69
80
100
106
78
175
78
108
156
97
89
87
87
78
155
107
96
76
142
117
77
80
153
142
146
119
134
87
102
120
89
86
131
69
69
151
78
104
89
124
134
100
76
88
150
95
128
128
134
69
119
110
69
163
82
118
82
131
152
119
96
93
74
141
154
130
88
91
90
88
69
128
87
114
56
76
122
175
54
126
87
99
119
88
52
54
76
148
124
126
113
95
80
109
88
120
118
88
134
140
82
110
103
110
120
89
119
89
181
136
74
120
80
140
130
156
69
157
156
88
80
96
126
124
146
139
137
120
110
127
80
102
106
120
117
76
156
196
80
93
120
80
87
126
69
157
93
69
141
102
154
76
154
109
99
78
74
134
124
124
136
140
163
110
129
80
72
126
80
148
56
119
72
69
155
99
76
69
93
88
144
110
85
151
92
131
69
80
57
111
91
126
107
68
97
113
88
137
94
112
151
80
141
121
87
134
100
109
99
175
151
107
140
154
82
89
87
107
115
175
126
110
138
164
69
78
113
92
78
69
64
117
95
78
109
109
143
96
87
117
72
80
136
93
87
99
122
156
69
154
102
128
163
112
154
155
115
131
155
100
136
75
80
155
134
103
128
154
101
99
74
118
145
99
115
136
109
127
80
71
72
121
100
154
119
133
94
92
82
140
99
119
125
80
80
119
83
119
175
118
181
139
127
121
114
109
91
56
156
142
116
87
78
154
89
104
110
107
103
67
80
87
80
156
96
118
116
100
164
119
144
80
85
131
102
80
107
88
143
111
119
79
154
128
87
87
119
150
56
80
87
88
63
92
95
78
94
78
140
109
144
175
83
102
78
80
113
107
109
155
148
131
56
83
107
91
131
89
103
123
107
80
70
66
163
97
69
78
119
76
126
119
88
131
69
195
67
119
113
78
199
96
54
69
87
69
80
123
111
80
78
97
90
117
54
120
87
156
78
102
106
108
131
118
69
106
137
112
109
131
120
119
109
101
117
74
120
72
136
69
88
80
121
99
80
118
131
87
78
76
154
99
144
178
69
197
111
101
145
146
99
80
145
128
104
99
149
88
69
94
78
149
80
111
109
136
90
175
94
120
134
121
140
113
69
80
76
175
147
163
94
76
88
69
116
90
69
88
95
133
80
110
76
80
174
95
132
58
98
131
109
145
151
120
88
94
101
155
69
136
136
76
119
97
136
87
76
100
96
104
72
80
152
106
106
80
99
69
80
123
87
87
163
97
80
89
87
110
85
109
114
107
163
89
154
82
188
175
80
91
119
103
80
131
129
114
134
128
87
80
100
134
117
127
78
80
193
130
149
112
105
94
131
128
117
175
80
69
104
115
157
148
146
125
160
120
99
99
141
113
52
68
121
80
78
78
76
102
80
100
101
133
140
80
104
119
72
128
154
121
125
69
175
58
113
106
152
76
119
80
107
87
88
123
109
88
111
146
69
128
107
130
98
128
120
99
59
76
146
110
164
87
199
138
137
119
121
92
72
106
76
140
154
146
93
197
72
156
141
136
69
146
137
69
104
134
87
109
119
100
87
119
117
78
76
131
113
89
94
89
74
106
113
156
134
144
56
119
57
76
127
66
94
99
106
94
197
80
107
119
98
119
131
78
93
72
78
94
137
96
88
106
80
112
150
148
87
80
95
163
119
91
69
67
78
140
69
136
91
87
89
154
143
127
106
154
80
185
112
87
90
69
60
94
136
93
123
138
120
95
115
107
112
89
96
193
69
103
78
76
117
112
69
160
106
104
80
155
101
114
85
80
76
107
128
87
119
104
107
146
144
80
69
110
134
69
138
80
87
80
114
89
69
69
118
115
72
88
87
80
113
119
52
99
112
131
107
75
93
120
131
87
103
124
87
76
118
95
97
99
68
101
154
109
78
149
142
130
80
78
109
113
119
131
80
117
109
71
78
80
82
114
80
133
78
91
106
201
82
146
78
112
125
104
80
102
128
136
43
111
136
119
109
78
110
59
120
78
131
69
119
112
120
80
120
102
79
89
80
93
87
102
107
137
146
76
87
134
128
96
110
89
156
82
69
185
80
147
80
110
142
87
80
79
107
89
151
151
132
128
82
169
103
112
112
75
89
126
106
122
80
130
69
161
109
89
75
112
127
78
130
81
80
106
76
71
148
150
107
94
101
131
80
76
155
102
112
78
87
102
147
89
69
128
117
80
120
80
87
76
169
130
56
78
197
107
201
112
104
146
87
109
76
114
120
155
69
69
129
80
120
94
87
87
117
103
138
80
95
143
110
128
80
74
134
124
89
76
102
89
78
97
175
89
76
78
80
69
87
76
88
96
72
56
93
91
106
122
107
163
52
100
151
131
80
100
118
66
104
154
76
123
94
127
172
128
120
128
119
88
137
69
119
56
104
114
175
94
80
107
94
58
132
128
91
121
78
90
78
117
72
83
91
124
71
175
76
69
89
80
107
131
101
54
111
76
146
110
93
133
154
78
120
136
120
80
95
120
87
104
69
87
143
78
131
99
87
194
80
56
107
87
89
88
99
129
154
133
131
113
66
99
80
102
119
76
88
82
131
80
74
134
157
128
143
128
156
120
52
140
87
91
175
69
127
69
102
129
126
78
112
109
80
136
97
113
113
87
78
72
119
136
121
87
127
136
80
87
127
80
132
80
126
88
127
106
127
120
119
127
156
125
120
70
102
107
87
87
131
80
104
118
91
101
78
136
174
43
73
128
99
54
99
136
80
137
96
128
109
112
80
103
76
121
90
78
76
80
109
87
80
80
197
58
99
75
80
87
187
87
99
83
110
106
152
109
157
138
123
112
128
89
89
78
147
89
66
85
107
106
117
80
88
131
117
96
98
110
131
156
98
85
104
154
124
80
80
87
122
69
87
124
121
69
96
105
166
175
75
69
99
94
80
136
78
119
136
185
104
100
92
128
99
126
119
82
94
154
113
89
128
87
107
76
119
80
80
138
80
76
114
94
112
88
80
69
91
109
107
136
78
76
134
96
88
155
69
76
121
76
175
154
148
88
87
87
144
197
125
80
101
80
144
117
85
107
106
117
96
119
112
69
96
92
134
78
156
112
78
109
107
175
88
80
116
80
118
103
92
76
100
140
88
80
100
128
109
131
107
88
109
74
78
130
126
92
134
104
121
80
85
82
88
115
80
134
110
69
80
87
76
69
137
137
94
129
87
76
120
94
87
85
80
85
127
74
81
147
107
96
72
126
80
117
160
69
69
78
52
101
134
69
80
103
193
133
160
78
90
76
88
140
174
157
175
163
119
124
117
150
67
101
80
131
80
128
139
80
164
91
154
64
94
69
132
69
146
102
74
128
128
175
80
175
100
89
154
96
66
78
88
102
78
88
114
74
131
80
112
80
119
64
124
119
119
109
102
56
109
88
172
54
80
136
119
84
80
154
123
116
93
117
128
78
102
115
120
96
87
76
106
120
78
87
107
80
94
175
109
89
69
153
115
85
152
74
138
76
76
112
114
101
104
154
111
128
112
108
96
154
76
102
72
113
76
80
137
129
175
78
69
69
130
105
96
95
87
99
160
101
102
131
119
74
88
128
104
69
154
99
80
120
114
69
74
109
69
151
90
100
80
100
128
154
88
69
126
126
74
72
76
69
80
149
117
117
84
80
80
128
78
105
52
88
120
151
140
76
82
100
87
154
69
88
109
138
118
155
119
66
175
103
112
69
107
80
93
134
99
107
80
111
117
80
109
69
54
119
93
112
119
69
54
116
142
136
119
87
80
69
80
128
104
99
110
88
109
103
119
123
72
87
143
95
107
69
94
137
80
54
69
154
96
119
141
119
175
85
69
87
66
88
128
137
113
56
140
69
128
58
106
91
118
88
113
121
106
113
69
128
87
183
115
85
116
107
69
110
119
87
103
54
96
68
80
115
120
157
113
104
78
93
99
102
105
78
89
164
106
136
113
94
93
86
155
161
128
119
104
52
104
88
119
154
105
95
78
87
104
151
104
104
103
199
131
115
69
88
119
109
89
123
104
136
107
83
54
80
69
89
119
80
87
90
119
146
80
69
197
106
97
104
128
164
69
102
74
104
147
137
54
121
110
106
85
76
76
87
133
104
80
78
76
111
101
91
127
102
69
80
146
98
137
140
128
109
160
163
89
111
146
87
96
92
129
69
80
84
164
94
97
107
90
118
52
104
87
69
80
124
54
110
80
69
90
80
88
90
102
91
90
114
156
126
201
90
128
136
69
89
111
104
102
87
80
137
87
118
132
175
62
76
69
109
119
87
114
114
95
110
119
81
112
78
80
120
104
122
137
78
57
117
128
119
90
78
76
130
120
80
110
80
121
127
121
83
134
73
104
118
123
116
87
129
112
118
80
72
54
90
151
87
118
80
111
95
118
69
90
76
171
119
154
101
130
121
145
85
103
90
80
85
43
107
134
152
69
54
119
88
155
69
144
75
102
153
87
152
145
72
80
101
132
78
106
69
89
113
168
131
92
75
114
104
136
109
157
128
78
88
88
151
118
140
80
107
148
130
92
54
109
69
80
80
122
197
84
90
155
163
76
133
100
119
146
151
106
80
69
80
92
134
101
69
121
107
76
154
88
78
80
156
131
131
134
69
87
72
52
99
76
125
89
96
80
145
118
102
85
118
43
80
104
87
67
80
99
87
144
119
140
80
102
74
113
92
78
140
119
156
54
129
119
69
111
175
101
87
144
76
130
121
72
136
142
148
78
76
110
87
135
94
113
66
87
110
119
110
107
154
80
120
116
71
107
96
118
74
131
175
128
120
136
119
80
145
104
121
72
138
103
106
148
106
88
119
87
88
69
102
107
119
110
148
133
128
104
80
104
154
131
117
148
109
110
124
98
100
144
119
87
112
99
99
69
137
78
100
154
156
146
69
78
87
130
115
74
87
140
114
80
106
129
89
145
128
131
69
187
113
128
151
96
87
100
74
94
104
107
119
76
122
145
159
94
106
80
87
99
102
80
109
94
114
80
119
133
76
76
80
151
72
131
174
132
97
119
69
134
109
99
76
160
107
147
88
120
96
69
128
112
94
76
175
120
69
99
117
134
109
106
113
89
107
145
134
76
72
148
75
82
87
128
144
107
140
109
106
87
69
129
89
83
136
69
147
128
87
132
177
112
87
128
87
175
94
109
87
80
129
134
128
99
114
130
96
98
128
111
131
152
76
122
74
148
69
87
87
120
120
107
54
67
52
108
125
112
69
106
143
125
87
89
94
89
95
113
120
89
130
96
144
72
86
151
156
63
148
112
101
175
154
112
100
99
154
158
96
111
132
130
80
78
112
143
141
120
87
152
156
72
88
106
175
175
134
80
181
94
80
139
156
72
155
88
102
91
163
119
107
119
89
69
96
54
91
85
142
136
88
112
96
112
80
121
69
80
87
87
113
102
109
103
114
127
137
89
128
132
120
76
69
69
76
71
74
103
136
111
96
124
131
87
175
80
121
122
94
69
133
151
73
80
128
133
54
111
106
138
142
80
88
80
52
80
76
93
110
80
52
104
174
165
139
109
88
109
94
82
80
87
90
119
107
80
124
80
134
87
117
122
89
134
119
112
134
107
98
132
119
104
137
109
151
137
123
69
80
101
94
174
140
134
72
91
99
100
80
88
69
156
76
112
112
69
79
109
91
96
76
87
76
87
78
104
95
154
80
78
76
83
101
164
80
87
71
80
99
104
164
92
76
78
136
102
112
154
78
146
94
78
145
67
119
80
107
80
120
137
97
79
76
124
77
187
127
118
123
119
159
112
127
104
76
120
124
69
87
76
175
97
120
114
80
112
89
151
119
80
114
96
175
75
76
82
116
134
106
201
83
121
74
151
91
80
78
126
140
101
118
96
154
113
99
143
87
109
109
78
87
137
80
87
80
69
106
68
134
100
121
74
78
96
99
125
175
112
87
120
148
118
109
109
119
76
100
76
43
145
88
76
162
80
120
87
67
88
80
54
117
69
69
82
78
144
87
91
99
129
94
80
119
137
78
122
80
88
89
148
80
144
89
125
119
87
141
110
80
78
87
122
54
147
156
154
78
197
80
128
103
175
197
175
101
197
87
89
80
96
87
90
165
109
132
76
85
67
80
160
148
94
101
69
87
52
75
137
74
69
93
87
128
140
76
69
80
99
147
115
99
154
87
93
80
104
122
91
74
96
127
155
185
99
127
163
106
123
78
97
108
69
72
99
155
76
118
136
75
127
74
76
109
112
101
137
117
87
78
115
72
80
104
80
87
122
110
197
72
80
72
120
117
140
89
175
115
74
119
164
135
145
107
94
175
81
108
87
163
67
99
112
129
94
87
96
116
99
120
112
80
87
143
118
94
175
175
85
83
130
144
69
56
156
69
156
123
136
76
110
175
145
94
88
119
113
155
80
156
132
101
118
69
64
101
78
87
102
103
69
78
103
101
136
89
154
94
140
157
175
69
128
87
119
143
119
106
63
113
156
52
136
106
69
78
114
106
121
74
155
94
118
121
106
105
148
83
87
117
76
129
99
156
80
72
99
80
117
72
104
116
102
69
74
119
112
148
140
71
120
104
76
87
163
72
136
117
133
201
131
107
52
87
119
110
111
106
152
164
103
69
113
136
118
127
128
80
113
143
159
78
151
96
85
116
89
80
119
96
99
119
94
69
78
87
124
120
155
74
69
89
175
130
99
114
78
199
80
145
119
151
74
123
90
113
106
78
93
117
98
69
80
74
80
112
85
80
69
127
80
143
99
107
119
91
119
154
117
124
110
99
78
154
87
87
154
79
151
107
175
117
117
127
96
136
109
109
99
175
88
108
127
74
107
78
104
87
78
122
66
76
87
104
91
100
119
138
69
93
106
156
197
87
143
94
112
97
147
146
128
140
93
121
141
69
94
72
130
89
80
124
83
69
160
78
114
109
131
78
76
104
58
104
58
71
87
87
91
76
80
72
95
91
99
107
96
120
80
126
69
185
99
141
108
72
107
80
93
87
86
123
120
112
153
123
154
72
116
76
110
66
119
89
83
85
80
87
89
109
155
80
113
99
112
134
80
112
145
106
93
78
69
126
183
147
127
69
76
89
87
100
133
89
99
80
117
76
114
80
104
102
110
54
76
117
154
136
107
80
138
78
80
124
169
127
119
80
131
99
117
106
139
201
88
69
134
80
101
94
126
67
76
149
128
89
80
124
98
98
79
132
142
109
156
78
69
128
127
119
126
109
80
157
91
121
197
96
151
91
136
130
123
134
89
78
151
69
197
72
104
137
68
85
80
117
94
87
197
102
87
106
107
109
69
134
89
120
127
175
110
120
67
107
69
78
110
110
146
83
111
104
93
102
134
83
136
134
175
175
78
102
80
134
80
106
88
69
76
74
134
113
122
109
117
80
120
94
80
111
91
87
136
104
69
134
98
120
134
142
154
119
140
80
113
52
109
75
125
87
111
117
69
107
152
128
69
106
131
99
121
126
69
101
96
99
156
144
123
136
136
175
113
131
69
138
153
185
118
78
143
117
85
107
136
154
132
146
76
89
80
111
72
145
108
102
123
121
104
148
137
134
69
80
109
175
109
80
81
95
85
104
69
151
113
87
131
154
144
102
99
134
136
105
119
52
69
134
78
104
160
206
131
78
74
69
154
175
80
106
154
69
128
123
106
122
151
80
80
106
63
59
138
96
123
112
67
119
106
69
175
100
136
121
76
107
151
123
120
72
102
215
93
52
76
69
140
87
151
117
117
69
89
120
175
99
123
94
69
126
115
81
149
149
110
88
155
78
111
175
115
100
72
117
141
112
85
54
69
97
76
93
136
87
112
103
101
80
175
80
175
93
69
140
106
110
129
156
132
96
148
119
119
110
104
156
125
125
80
117
87
136
76
87
94
72
96
64
99
78
197
151
71
108
110
80
107
75
119
126
74
104
121
197
80
72
78
87
87
154
117
52
80
152
76
74
132
79
78
80
91
69
134
130
87
175
128
76
83
129
88
101
131
99
80
103
87
121
136
80
88
85
90
117
101
91
101
106
80
90
87
151
69
96
87
114
78
112
88
91
119
80
174
121
128
107
155
106
76
96
76
76
118
80
87
112
80
93
175
115
114
69
93
154
145
118
69
99
122
107
175
89
88
120
120
155
76
87
80
75
151
80
75
107
150
136
69
88
99
156
95
54
69
107
122
113
134
145
118
85
156
99
102
175
72
110
82
120
94
106
94
126
133
140
88
113
115
109
87
102
87
104
110
122
79
80
112
94
121
120
142
136
175
96
127
69
134
127
80
118
112
94
120
113
76
117
106
85
74
78
119
80
80
101
76
72
122
121
83
107
118
136
52
110
106
78
76
113
54
163
119
156
80
96
87
133
134
88
110
94
76
100
123
99
106
76
155
80
87
78
71
114
119
119
136
99
117
145
69
99
56
80
133
87
128
120
110
162
80
131
80
88
78
136
175
80
85
87
69
80
106
80
76
175
186
96
130
54
138
81
164
104
80
78
154
80
127
131
69
80
121
80
151
183
164
175
56
99
147
69
54
108
147
164
90
115
111
112
80
78
89
107
112
72
80
76
104
118
87
78
146
80
69
119
74
109
164
76
136
81
80
87
89
111
136
78
78
69
69
152
69
136
89
87
112
145
94
181
98
156
87
107
78
87
69
80
78
96
155
80
88
164
119
145
143
108
120
174
176
104
120
96
89
133
88
111
157
109
103
93
87
165
145
120
102
71
78
94
106
102
107
103
69
154
156
109
80
78
110
134
118
103
134
99
89
68
91
145
80
113
127
96
80
93
81
80
107
73
78
80
97
80
54
94
95
89
128
82
99
96
85
76
120
134
89
122
136
80
76
72
142
69
80
67
76
113
69
151
87
107
145
106
78
69
76
142
121
117
115
98
69
156
117
69
110
128
99
109
80
87
109
69
128
91
128
76
89
133
93
133
104
95
99
107
78
69
99
54
156
137
85
132
121
69
80
88
93
89
104
87
87
94
131
80
69
113
74
80
101
107
175
109
151
52
80
94
107
117
89
94
89
69
72
87
117
120
109
110
119
154
80
69
72
119
76
129
89
78
91
185
76
107
149
115
175
107
43
109
69
98
175
107
109
136
101
138
86
76
175
120
127
91
154
100
78
80
69
80
83
109
126
67
87
99
89
119
78
110
101
122
76
93
101
64
80
131
140
106
114
80
102
69
69
101
150
109
110
155
52
76
75
106
94
111
104
87
64
99
83
117
156
94
123
54
69
104
99
118
109
106
155
121
101
123
124
128
89
94
154
88
143
115
56
134
83
98
64
119
80
89
80
82
87
95
104
76
140
80
115
136
85
69
76
93
87
93
106
80
72
76
80
128
88
69
76
69
103
125
69
69
121
69
80
134
78
172
83
82
106
119
122
80
197
100
87
136
69
72
71
87
110
169
80
163
185
119
99
80
140
125
117
74
136
154
145
75
91
90
112
69
197
169
116
155
118
144
87
80
100
88
80
99
85
76
98
75
74
78
132
120
160
124
114
201
80
87
92
96
169
145
67
100
140
146
87
109
89
107
76
99
88
109
69
117
87
119
76
69
99
131
90
76
100
87
97
56
73
113
117
114
80
69
69
112
80
140
80
112
126
101
106
80
84
118
111
101
175
128
122
91
75
87
117
118
115
82
78
95
160
117
110
175
117
128
147
121
127
80
131
69
80
83
76
109
78
154
175
127
104
91
78
80
102
137
89
110
69
112
99
99
157
85
130
78
69
122
128
136
156
69
80
133
92
80
69
131
136
128
127
129
120
80
96
144
175
156
143
54
128
136
109
120
119
76
127
78
80
69
69
111
102
80
128
107
80
93
87
142
80
121
128
102
149
80
76
128
124
99
154
54
163
88
119
148
87
80
137
114
69
83
105
117
80
78
136
74
78
87
120
87
69
175
112
104
121
124
140
94
78
151
80
117
104
80
106
95
121
99
87
69
76
115
119
99
107
69
82
80
91
96
143
69
101
155
118
119
74
155
109
134
69
109
83
87
110
127
54
100
76
120
76
134
101
151
89
73
123
76
71
89
115
72
134
113
80
82
154
175
74
72
131
105
96
152
128
79
69
71
201
69
120
88
137
106
69
80
175
87
80
110
107
119
80
109
118
147
175
123
140
101
106
155
58
80
80
140
163
88
98
131
138
119
83
128
78
121
85
69
87
67
117
119
137
89
121
87
75
197
64
80
89
69
88
72
131
88
117
148
107
181
80
99
52
80
88
100
95
136
78
96
112
131
129
80
103
69
136
154
78
88
56
106
107
147
203
117
201
121
78
92
127
98
122
99
83
124
127
153
74
98
118
119
175
107
109
66
154
123
80
93
105
91
99
114
76
118
89
111
137
114
106
128
76
69
120
112
89
87
109
76
102
127
88
87
131
149
175
80
123
99
52
104
87
80
80
118
72
120
98
67
115
148
155
147
74
104
119
120
117
94
154
94
103
80
87
138
110
119
69
130
107
112
76
69
112
89
128
156
124
78
143
110
88
138
91
124
113
107
112
80
141
80
151
117
154
72
72
69
72
87
93
99
154
119
75
85
56
109
148
69
174
78
76
156
152
137
109
156
137
144
146
107
96
166
80
131
88
96
119
118
122
138
83
113
82
118
100
80
76
83
113
128
69
120
93
90
119
106
94
69
119
131
119
93
72
82
69
109
80
143
87
87
87
119
88
150
87
120
120
112
148
80
110
80
175
76
80
112
136
107
110
123
113
119
80
114
75
82
107
109
154
91
151
123
150
107
144
111
104
80
131
162
104
112
119
126
78
80
154
100
87
88
69
69
145
138
107
75
111
80
112
109
78
110
134
154
129
133
156
175
148
56
122
109
87
69
199
92
94
69
106
144
106
78
151
127
112
136
107
43
104
119
69
88
99
78
69
162
89
142
87
102
121
175
129
80
155
105
113
174
143
197
76
132
138
92
79
87
107
79
78
99
103
151
113
121
127
131
78
95
76
120
123
96
87
91
108
80
135
175
99
80
121
93
127
187
113
106
83
57
101
113
175
80
175
69
139
154
106
101
52
76
119
118
80
104
117
152
78
120
88
80
106
197
118
121
151
120
71
113
131
112
150
69
125
107
80
120
71
107
93
109
131
117
98
80
107
109
122
142
104
110
80
156
102
110
80
91
109
127
80
140
69
120
121
109
101
151
76
133
146
87
87
155
93
120
155
94
119
87
152
69
107
156
143
74
121
140
115
113
69
89
121
119
80
107
104
89
131
75
109
106
120
102
88
80
80
91
87
110
93
126
99
94
148
145
128
120
119
113
69
88
110
140
124
106
78
121
145
146
151
71
69
112
93
117
134
175
101
94
151
93
71
91
93
89
73
100
88
120
128
96
85
95
104
87
117
131
80
100
69
118
137
107
120
84
78
110
138
69
117
157
115
107
87
102
143
80
130
69
129
133
86
101
52
76
89
144
119
72
64
89
106
76
76
107
67
104
99
69
104
99
113
100
106
95
88
107
80
80
117
109
117
80
128
113
106
83
80
120
148
100
107
52
107
154
91
103
128
90
69
104
87
99
87
72
158
128
119
80
99
75
69
160
120
103
106
122
109
114
78
115
95
96
120
123
105
112
87
110
91
113
122
99
69
104
112
109
87
109
96
69
80
80
107
109
126
104
156
154
111
104
155
87
78
97
72
143
146
96
126
43
102
162
112
109
80
101
163
110
76
156
118
80
80
107
88
134
140
138
134
91
87
154
128
132
110
126
120
113
69
89
136
127
154
80
155
87
69
93
119
138
80
104
96
69
91
118
80
94
98
69
104
120
76
69
175
80
164
102
120
99
148
151
128
130
78
136
87
109
134
94
114
94
119
118
164
145
80
60
93
117
101
82
70
74
132
80
148
175
99
85
120
147
76
80
117
107
93
85
119
146
128
83
132
58
165
176
106
94
136
52
133
107
80
98
107
110
154
109
71
102
88
145
113
119
119
130
122
76
138
76
101
99
64
121
117
119
71
99
102
72
69
103
164
156
93
117
134
118
96
78
143
89
90
148
120
69
69
147
151
99
149
88
94
77
85
75
69
163
121
110
100
80
91
80
107
134
151
119
123
80
110
94
87
101
69
107
119
95
175
117
87
104
162
72
75
89
76
111
56
154
109
129
121
99
69
128
76
89
131
113
106
69
152
69
79
78
154
119
87
197
153
74
67
78
109
134
105
139
76
78
120
175
80
111
69
120
104
91
109
76
145
87
175
83
110
106
96
69
134
131
88
80
102
78
80
76
80
156
123
130
88
108
137
80
94
66
69
88
119
102
118
89
140
148
121
84
69
143
69
87
121
96
110
104
87
103
94
143
76
98
101
91
80
99
71
118
97
130
69
78
80
124
112
94
100
119
95
175
133
89
148
103
72
80
78
102
56
106
78
156
69
128
120
107
85
108
94
121
80
102
76
81
126
88
155
80
127
110
154
80
131
78
117
156
113
87
136
120
144
96
80
78
117
78
114
129
148
147
96
78
151
119
92
131
78
101
88
87
117
106
102
80
151
136
52
143
146
78
120
69
102
78
99
102
116
69
145
90
93
88
112
80
86
121
80
162
110
109
76
144
99
117
201
87
147
129
110
78
154
109
93
87
93
94
123
80
107
118
137
156
104
87
96
155
93
128
76
131
139
98
163
101
80
93
136
69
119
89
175
87
78
119
134
102
89
144
133
80
87
109
99
110
76
56
87
54
113
146
125
113
130
123
80
113
128
89
102
69
69
175
199
91
104
154
155
175
136
75
69
76
151
117
87
92
80
88
77
136
76
95
72
109
117
156
106
76
52
76
78
174
78
78
131
127
94
54
85
134
80
117
156
128
109
99
76
103
69
93
129
131
119
80
115
129
175
140
89
124
112
80
101
80
128
52
132
54
89
80
79
107
101
145
80
175
89
131
85
140
117
88
136
91
132
127
137
104
131
80
139
74
80
121
111
87
127
87
106
69
79
69
69
117
193
163
87
130
111
134
90
80
80
100
88
107
106
104
100
128
113
93
111
187
110
69
69
80
137
122
76
106
80
130
137
119
143
93
76
89
99
146
123
177
123
148
154
127
131
103
86
131
113
80
91
90
154
162
103
91
107
110
80
94
148
90
54
146
118
119
132
101
92
69
149
136
80
110
155
89
119
100
87
69
124
94
79
56
91
80
113
113
120
131
52
130
92
160
154
109
119
145
107
83
93
95
54
172
134
163
80
101
112
69
107
110
99
107
123
72
83
67
130
109
128
94
92
146
80
72
98
101
69
183
94
115
69
183
131
148
80
199
94
74
120
91
120
80
58
111
72
119
119
177
120
78
56
164
144
76
93
133
87
87
71
175
119
159
106
117
110
141
78
155
69
144
80
114
76
80
87
128
107
58
119
69
175
71
165
87
91
96
97
89
151
131
109
94
69
76
52
88
79
107
114
87
76
52
69
119
129
112
118
105
112
116
149
78
119
96
99
52
109
88
110
85
106
121
107
83
106
154
106
148
80
80
134
119
175
76
121
96
153
69
69
111
197
85
99
114
80
134
123
120
151
113
154
120
67
96
144
155
155
102
82
120
96
87
69
69
93
80
131
108
69
94
175
128
78
149
112
110
93
110
80
163
129
82
130
88
85
87
119
140
104
69
88
107
154
131
87
87
197
175
111
122
119
126
102
131
138
80
87
107
76
96
155
95
147
106
87
134
86
78
67
87
111
117
104
151
78
153
75
133
124
146
110
138
87
80
133
76
128
102
111
87
94
100
131
80
96
108
87
79
104
107
80
78
134
111
118
95
123
145
94
106
99
120
89
87
123
67
111
115
87
136
133
132
113
155
88
144
88
109
131
130
101
115
99
119
127
140
109
151
66
78
134
109
87
80
128
74
80
67
69
98
87
119
76
99
112
107
154
80
80
80
113
115
118
109
104
87
96
119
113
69
113
72
89
120
107
99
127
69
114
66
130
78
66
96
175
80
94
132
78
120
175
121
80
80
113
78
141
149
78
94
85
128
155
74
71
112
78
78
80
119
78
78
104
91
134
163
122
89
89
107
93
103
85
100
78
124
88
89
93
69
69
69
89
88
84
94
119
91
80
69
117
80
66
128
80
99
102
101
80
88
74
69
80
133
110
152
80
89
110
104
111
122
151
76
80
126
121
110
117
159
78
88
94
96
80
69
89
138
64
110
80
107
91
76
119
80
155
151
78
72
160
136
96
69
122
119
95
80
137
133
87
112
69
99
132
85
134
76
134
69
146
80
69
111
69
94
163
104
87
123
69
91
175
87
126
89
146
72
119
80
128
99
69
115
81
80
76
109
122
80
99
157
113
87
69
102
114
118
69
146
175
72
112
137
87
88
80
154
113
113
72
114
80
96
110
136
91
89
149
130
130
117
80
117
90
96
119
109
88
96
148
154
156
80
107
102
92
113
92
126
108
106
88
120
94
80
80
82
76
137
109
88
43
107
122
106
80
120
119
78
87
80
119
103
114
114
110
90
88
126
78
103
136
94
138
89
120
78
69
76
93
121
80
99
87
88
80
121
95
80
95
119
197
66
90
94
96
88
160
128
87
93
80
98
94
128
95
98
128
87
119
80
121
90
89
146
145
106
80
148
59
94
203
146
87
87
87
127
107
147
94
96
175
107
112
154
80
56
89
108
76
155
80
136
88
112
102
99
91
93
119
140
88
140
127
94
102
89
107
107
140
80
72
109
78
101
101
87
160
69
87
74
69
106
119
124
119
99
88
151
109
78
107
69
128
104
74
120
128
123
138
185
108
119
78
199
99
130
76
74
120
134
160
93
88
119
117
127
85
119
69
93
107
106
125
78
69
110
107
91
109
106
54
69
131
91
117
91
134
184
76
78
106
92
94
69
54
154
134
96
140
110
128
60
110
78
69
79
88
80
174
127
100
136
104
154
129
86
134
144
140
78
76
78
102
69
80
114
69
129
107
80
175
89
87
86
52
74
105
69
91
119
80
102
80
199
154
97
85
127
96
78
80
69
92
87
87
181
175
130
99
121
111
78
175
99
87
123
115
87
112
130
101
52
142
124
68
119
125
80
104
96
160
94
89
80
104
104
154
131
95
110
80
80
94
175
89
128
119
109
69
81
66
91
154
119
109
172
108
88
106
94
98
112
91
141
197
123
110
88
94
88
137
69
110
54
76
175
104
109
96
185
87
95
112
125
119
107
87
121
89
124
112
143
120
134
106
66
88
89
78
87
110
112
102
128
112
88
80
154
98
109
93
85
88
69
161
111
69
110
147
128
99
93
52
146
128
115
156
66
169
96
100
74
160
60
78
79
80
76
118
156
100
154
117
69
96
156
120
89
151
69
152
85
80
74
119
107
97
75
175
106
100
91
76
138
120
140
91
109
133
69
106
136
140
136
101
132
128
150
80
88
69
197
114
76
145
95
117
113
78
80
107
80
76
73
76
80
83
136
126
110
110
54
78
175
63
130
147
87
149
107
113
108
112
103
94
71
80
104
109
78
89
69
80
69
133
128
94
101
96
90
80
197
146
80
80
75
80
151
107
72
113
136
118
104
104
54
78
116
99
107
140
80
154
94
80
78
76
122
81
116
93
164
76
128
93
197
59
130
99
155
175
117
69
69
154
156
91
80
120
112
87
78
91
140
88
94
94
110
87
64
134
99
75
110
106
111
80
80
133
109
137
110
154
80
128
175
87
119
124
124
79
114
155
87
88
127
101
136
99
94
175
124
175
78
87
111
69
119
146
93
80
111
104
87
133
109
100
87
69
69
87
78
95
85
69
88
69
128
146
56
43
62
117
163
76
109
101
59
72
121
69
76
69
124
83
107
102
136
110
103
125
85
113
101
134
87
175
152
197
89
132
99
120
115
122
124
88
142
169
113
155
121
80
80
151
93
138
72
111
76
113
112
175
137
101
56
87
76
69
80
113
72
90
54
115
103
67
76
99
123
156
175
133
104
99
148
197
78
106
122
100
69
90
80
133
74
120
76
101
120
106
89
120
69
94
94
118
120
72
107
80
119
128
165
104
69
119
56
106
164
138
69
156
91
121
121
151
78
80
122
140
56
79
69
175
54
92
129
96
96
176
102
172
80
87
76
110
82
120
107
134
109
78
107
110
88
133
128
113
98
109
127
76
87
115
132
110
113
69
87
69
96
87
145
106
80
76
123
99
140
121
101
98
100
96
199
127
89
69
80
130
123
156
101
87
129
128
118
80
80
107
128
76
117
107
104
128
93
151
69
95
154
140
72
155
69
120
80
80
76
99
101
154
117
93
80
110
118
107
90
140
128
123
76
69
88
56
136
80
103
72
88
56
96
93
91
96
76
87
174
99
163
154
96
80
74
69
112
99
80
76
110
89
133
128
102
79
117
87
76
69
120
78
101
117
69
120
80
81
156
87
107
80
87
87
120
126
121
134
87
90
134
165
80
99
115
142
87
164
101
120
132
52
80
125
109
99
89
126
69
117
134
69
93
80
113
76
109
126
112
85
151
90
78
116
89
80
76
89
119
197
107
102
120
131
175
172
69
88
67
52
120
80
89
89
96
80
80
119
69
87
110
130
185
87
117
175
163
72
43
69
90
111
119
164
102
138
137
89
83
101
98
92
115
80
91
83
94
76
120
118
136
85
197
128
154
134
69
148
130
80
87
87
197
178
106
80
156
87
126
98
78
78
72
141
80
111
175
69
87
80
69
78
87
156
79
88
109
127
72
74
197
106
80
59
120
109
142
122
111
109
96
92
126
111
121
175
78
88
88
88
174
85
87
102
88
113
159
120
72
83
77
137
134
80
134
119
80
136
91
88
106
107
88
149
151
56
120
93
145
111
117
110
71
91
107
115
138
90
74
69
98
152
78
129
69
69
78
106
112
92
69
155
84
96
115
78
134
122
80
89
128
120
78
120
96
93
143
119
152
128
126
111
117
117
102
131
69
91
127
131
155
134
87
154
154
87
97
85
69
80
96
171
143
195
139
80
156
120
117
80
87
78
128
142
88
54
164
89
88
94
78
112
119
113
175
69
69
87
118
94
121
87
80
107
111
89
87
80
102
134
128
154
80
52
74
106
131
89
80
69
112
87
136
103
126
107
90
107
78
106
110
98
144
201
115
117
99
76
88
101
94
80
140
80
91
76
85
107
126
128
107
107
75
99
88
80
107
127
131
91
84
120
87
80
78
174
113
99
175
138
122
76
104
69
91
80
72
100
183
128
80
80
72
121
96
118
102
107
97
80
129
119
146
77
69
119
52
88
112
134
100
76
119
154
80
74
104
91
80
76
122
94
142
88
87
158
164
83
109
141
118
93
82
121
102
135
155
80
132
140
83
94
137
80
131
69
133
129
143
78
112
101
131
76
80
109
88
100
93
109
147
94
113
79
98
119
80
131
121
154
113
119
132
80
138
94
150
172
93
87
133
100
93
94
76
107
117
141
79
120
82
121
94
80
111
120
90
175
87
118
88
80
87
156
140
69
76
112
78
141
78
89
96
77
98
110
97
142
87
80
125
95
146
87
134
99
111
129
95
143
119
111
163
76
87
102
59
120
92
112
93
121
80
93
76
89
111
87
119
93
102
89
96
119
119
87
87
104
107
101
157
115
80
120
76
43
72
120
80
54
154
69
56
110
103
98
175
140
90
94
98
110
80
127
80
136
80
143
76
104
76
87
148
87
76
99
76
91
95
152
52
112
138
99
120
138
136
76
92
151
119
104
80
72
121
72
156
123
111
104
80
80
78
162
93
72
106
94
119
110
87
129
78
109
69
125
120
90
90
87
80
87
140
90
52
103
113
113
80
107
78
83
109
112
156
80
87
93
134
128
115
108
69
72
91
78
78
89
112
117
145
175
72
120
120
94
85
91
69
110
91
113
80
106
120
125
104
99
201
128
110
101
107
120
123
94
76
75
95
80
80
115
119
75
69
69
131
52
117
163
87
101
175
134
93
88
115
104
69
74
75
121
80
69
76
127
107
147
80
135
122
104
131
114
93
87
97
117
106
132
120
133
120
119
88
175
75
154
122
92
156
123
109
106
120
136
93
109
80
67
69
113
154
98
120
133
87
91
96
58
125
112
109
88
77
92
76
69
107
93
69
100
76
157
117
106
131
101
80
87
96
85
88
94
103
131
106
131
117
69
80
134
132
87
80
107
112
105
120
87
80
131
127
174
127
111
111
95
107
96
89
107
154
156
117
185
124
101
78
120
128
80
80
156
104
121
88
107
113
67
145
80
143
136
99
64
154
56
96
78
156
76
68
140
98
85
125
80
92
128
80
80
104
120
143
69
128
156
87
72
144
135
104
93
120
75
131
80
107
123
154
87
89
165
67
164
119
143
88
69
94
102
131
78
120
69
146
120
119
69
144
119
112
81
70
80
74
52
121
80
146
92
119
121
122
94
80
69
87
120
131
107
109
197
151
145
121
94
99
87
129
107
69
118
100
110
68
115
99
88
112
96
130
87
175
87
119
196
100
95
69
76
74
82
69
88
76
114
201
127
78
80
99
104
100
113
87
76
143
88
78
43
128
121
94
76
109
107
76
93
99
78
92
89
155
52
151
175
76
106
76
154
94
120
136
74
80
101
78
175
80
128
115
113
150
126
72
64
109
87
80
124
80
85
124
80
87
109
107
80
102
100
80
80
88
112
154
80
126
87
87
113
69
104
104
110
99
126
110
100
120
91
78
74
76
112
69
155
118
69
134
76
88
178
89
131
76
69
76
109
117
102
76
175
136
82
89
146
156
154
76
128
106
121
94
134
136
102
101
120
138
80
80
69
82
119
123
76
80
153
76
120
56
80
118
127
132
89
120
107
126
133
175
94
88
78
123
120
121
147
112
137
103
136
137
141
109
76
96
114
91
99
106
106
148
69
131
143
131
134
76
103
87
120
136
78
80
118
80
145
112
120
144
162
107
117
137
106
123
91
107
74
88
128
101
119
123
119
101
134
74
136
111
54
94
160
80
76
80
131
119
120
113
87
80
69
96
75
97
132
118
117
69
118
69
80
175
74
117
124
80
80
69
69
148
119
143
197
145
80
175
69
127
76
83
136
82
82
96
102
151
109
69
101
124
113
59
95
69
111
90
88
119
123
89
121
128
56
95
155
111
87
154
156
119
80
80
76
129
154
76
72
69
79
149
117
80
88
72
78
113
131
135
186
115
80
112
94
156
154
112
109
140
80
69
88
98
80
109
201
97
87
106
101
110
119
104
111
118
122
93
88
80
72
137
84
94
106
87
78
104
78
100
99
69
69
77
80
119
117
183
123
107
100
123
102
155
72
104
69
80
144
80
131
119
69
69
52
87
106
115
80
130
87
110
99
79
80
175
76
92
104
69
140
76
104
156
197
123
76
94
155
109
99
107
134
107
148
52
125
76
163
124
80
122
146
126
85
78
104
80
124
52
69
54
69
72
119
109
119
126
113
117
87
80
157
87
139
78
80
130
93
121
69
112
163
78
137
175
111
121
101
113
145
87
87
120
123
119
107
162
97
94
80
102
80
112
119
92
175
87
69
127
96
107
107
175
111
107
109
146
96
100
88
137
144
93
142
115
89
89
99
80
117
91
88
121
88
87
123
88
113
120
118
80
134
88
110
127
132
111
89
117
91
88
175
91
175
124
146
137
93
89
80
126
98
136
118
96
127
197
78
120
102
100
105
154
163
93
101
101
100
118
148
80
68
140
175
89
69
169
127
103
98
110
87
75
69
106
148
166
175
129
197
92
134
118
126
69
126
69
119
94
138
99
107
119
87
94
107
130
137
101
186
128
134
146
56
107
134
119
138
88
127
85
72
88
87
142
119
151
115
87
147
99
69
107
197
69
140
94
113
52
89
54
69
69
89
160
133
88
93
102
76
99
59
89
118
80
154
156
119
107
103
100
119
83
106
101
140
69
78
74
88
87
174
154
87
78
118
130
160
80
74
138
118
136
115
69
94
95
100
154
120
101
78
80
76
128
100
52
93
96
107
142
80
128
54
103
80
112
52
128
107
136
121
106
130
83
72
76
119
174
72
69
87
112
78
119
80
132
111
87
95
52
80
100
123
117
102
91
99
90
118
109
76
131
78
140
90
175
119
113
127
88
96
102
100
80
99
69
156
107
88
154
76
52
93
76
78
119
119
69
121
88
111
96
89
88
69
76
87
87
94
73
119
80
78
140
117
143
106
131
164
78
120
107
69
87
78
120
80
120
115
95
151
94
76
99
128
91
128
97
121
103
114
113
119
89
80
96
121
129
79
175
112
127
69
80
175
81
115
81
87
142
80
91
147
119
156
107
100
118
87
69
109
94
80
52
80
80
109
111
87
102
106
78
87
82
109
148
69
128
67
120
99
151
69
69
175
151
181
187
96
72
117
113
106
99
157
99
126
80
134
71
78
109
80
123
122
99
87
109
60
156
110
175
128
87
87
85
142
115
108
128
128
69
150
76
122
113
85
88
154
162
81
91
80
112
80
120
203
134
80
59
80
80
71
140
110
120
54
60
56
120
88
146
125
121
100
87
147
137
147
88
151
99
94
110
87
109
69
80
139
134
90
107
54
80
128
175
104
95
93
96
69
115
85
74
90
87
80
87
106
119
80
119
80
112
80
120
96
104
126
80
199
91
80
174
66
119
106
120
124
76
100
175
151
80
69
78
80
114
117
109
116
128
54
87
76
80
56
142
110
145
120
116
80
119
143
111
120
112
106
106
131
87
80
116
175
197
128
75
106
110
54
80
101
131
76
87
83
85
117
121
74
74
68
115
78
121
109
109
95
69
80
115
87
104
183
117
95
115
107
80
94
131
138
96
115
93
145
132
69
142
152
93
88
156
94
88
99
139
88
71
131
69
69
72
66
140
78
79
160
80
121
120
102
72
124
109
120
110
92
96
99
107
121
117
145
183
110
151
133
54
102
117
111
175
76
110
113
147
140
78
89
164
102
175
56
76
151
52
52
121
74
114
78
88
71
83
69
89
89
99
135
75
104
95
104
130
77
145
94
109
159
174
88
151
127
102
69
134
147
113
112
82
133
113
96
69
158
104
52
69
165
64
78
66
128
107
92
111
69
91
119
69
80
107
130
89
109
76
155
91
79
80
119
124
144
87
175
54
69
115
82
120
96
120
80
127
79
175
80
107
121
100
145
96
80
63
76
71
135
80
91
85
99
76
112
109
135
121
100
120
80
72
76
56
145
121
52
154
112
160
76
120
78
128
118
72
131
88
93
104
91
175
98
115
112
95
154
145
88
104
103
127
117
143
117
122
145
69
131
69
128
80
91
80
101
119
69
56
79
95
88
102
114
94
69
101
124
112
112
81
93
136
153
137
128
117
106
113
69
72
91
88
120
81
128
102
137
104
89
150
128
151
145
80
197
156
107
96
78
118
91
120
85
154
80
122
96
119
69
89
88
123
129
93
89
151
80
112
119
64
79
104
116
96
85
72
99
123
119
87
78
107
90
69
78
69
130
78
78
99
112
78
91
80
132
69
80
175
177
146
85
99
69
95
80
52
87
115
90
122
108
120
132
80
121
76
100
120
103
127
122
175
90
78
88
119
151
121
163
151
107
69
80
186
118
121
123
101
110
147
88
109
117
99
80
96
69
128
91
93
124
69
195
132
154
148
103
75
115
120
88
78
121
80
112
90
141
119
155
98
74
131
114
100
87
114
79
104
87
128
72
69
101
76
121
127
131
156
107
152
72
102
119
69
136
80
76
94
82
69
69
87
76
126
106
91
126
87
69
151
120
127
104
132
99
80
80
96
76
119
144
106
87
144
87
87
144
80
83
94
110
66
151
107
112
121
92
74
80
88
76
119
119
113
91
101
80
101
127
183
126
138
115
110
139
101
87
109
78
88
175
76
99
81
76
80
152
120
128
76
72
114
164
98
80
136
136
107
138
89
80
178
115
115
94
119
156
95
134
103
133
121
89
105
78
78
89
118
56
137
71
115
197
87
88
153
201
60
215
104
107
175
121
121
121
89
118
131
118
91
101
101
156
106
96
131
147
107
174
78
185
91
122
86
67
114
78
146
93
136
64
145
87
98
74
78
119
131
76
80
69
69
89
152
69
105
107
128
83
69
104
76
175
129
166
128
88
140
133
96
146
80
156
110
119
69
94
121
101
143
80
131
80
136
80
87
56
117
87
107
99
131
98
95
99
91
99
78
73
71
118
147
137
120
72
154
69
93
56
69
113
134
119
84
81
94
80
80
104
134
96
78
112
69
98
149
78
94
119
94
76
82
87
85
136
104
69
88
85
119
98
107
87
128
102
126
118
119
79
69
136
80
155
120
80
120
87
110
114
80
175
120
76
87
181
87
118
142
109
139
104
128
80
72
87
129
87
110
78
107
93
78
121
94
93
132
99
175
112
94
78
114
93
54
107
145
94
147
101
69
76
136
117
96
80
72
132
88
88
69
119
136
104
146
117
78
119
80
119
93
127
141
128
133
175
67
78
107
115
175
150
69
113
142
89
69
196
99
94
91
113
78
127
87
152
121
105
78
76
76
121
109
78
93
142
88
155
54
110
69
91
119
142
69
107
58
94
80
101
119
110
115
128
147
76
113
80
125
69
128
150
110
142
100
124
69
128
145
82
87
76
98
143
80
69
154
98
85
88
131
131
54
87
115
87
105
163
71
143
88
115
101
80
124
76
143
120
95
140
81
87
131
104
96
102
111
80
87
80
82
87
52
115
104
104
80
76
104
109
96
78
100
120
112
151
85
64
80
110
125
112
113
99
96
76
80
107
126
94
87
127
118
96
99
140
80
118
109
120
74
128
116
80
76
91
113
54
145
89
174
144
118
121
126
106
83
80
177
107
78
177
89
80
140
69
156
113
102
109
94
106
120
113
95
89
131
59
91
120
80
89
87
128
52
136
120
118
165
78
148
87
99
99
96
78
160
88
117
107
121
87
78
68
164
69
87
93
93
128
79
99
93
80
175
121
120
121
107
88
99
80
104
67
113
117
159
89
87
78
109
122
156
80
131
104
89
69
115
91
69
112
155
69
81
183
101
153
119
115
140
163
151
120
109
98
155
124
87
97
130
78
131
126
112
69
80
82
99
75
87
118
76
106
137
111
163
89
82
76
111
103
113
119
109
74
88
155
131
109
69
80
88
95
105
122
94
117
98
156
92
122
175
141
98
80
99
154
155
152
121
89
78
66
76
129
109
110
94
93
74
112
80
76
80
104
52
80
94
78
209
105
123
169
69
140
78
106
101
106
76
146
78
99
101
101
80
80
89
124
107
110
104
152
80
87
88
80
122
141
80
87
93
134
110
69
143
95
99
155
84
124
80
99
83
119
101
107
117
62
80
96
63
87
107
129
197
175
144
80
120
107
137
96
93
128
113
154
80
151
69
89
80
94
96
148
113
122
159
87
87
138
80
94
112
104
85
80
111
106
154
66
114
99
119
74
78
139
119
122
52
69
95
80
80
80
156
119
147
80
85
155
69
104
155
117
117
69
54
107
78
111
187
166
91
80
74
146
144
76
87
107
105
76
87
104
76
164
146
107
86
76
131
80
104
128
64
106
87
92
79
175
69
117
123
99
80
175
128
119
77
142
119
80
94
76
175
117
88
69
121
150
99
128
118
94
109
103
175
155
110
90
123
131
134
108
113
98
117
67
126
78
78
128
199
154
110
94
107
123
78
68
107
118
103
78
84
154
175
151
72
154
109
117
121
74
87
80
80
110
80
89
90
112
69
76
174
137
183
121
112
104
90
99
69
69
153
101
107
115
54
119
81
128
107
124
123
119
119
118
146
80
107
80
117
113
109
96
155
128
120
88
69
69
87
124
110
52
136
121
107
107
87
69
110
88
107
120
175
156
87
100
99
91
107
117
99
88
75
113
99
99
175
87
88
134
72
102
96
113
102
76
130
107
69
99
103
69
69
74
113
87
122
69
87
69
183
93
69
101
80
143
69
99
117
102
94
103
119
80
110
101
141
87
85
80
106
80
113
120
134
110
129
80
110
81
119
131
69
157
106
85
102
89
99
104
134
69
107
96
69
148
69
89
76
54
120
107
59
140
114
109
151
111
119
107
131
118
79
69
121
111
123
80
91
122
89
130
126
78
151
201
103
113
140
87
80
87
117
130
87
114
99
80
80
144
101
78
120
52
66
133
130
87
154
93
69
104
69
104
76
94
100
99
110
74
94
69
69
80
87
69
85
137
172
87
144
89
117
119
151
130
92
96
80
69
118
129
69
143
80
78
69
94
107
129
91
69
136
103
87
74
174
76
89
78
76
120
106
154
69
82
72
134
136
101
96
76
89
87
109
87
88
56
107
129
89
155
155
80
91
157
153
94
89
107
121
121
99
69
116
80
140
54
136
113
175
118
107
131
175
88
93
104
108
69
164
87
119
72
80
131
127
89
88
88
128
113
69
121
116
175
87
87
119
69
69
111
80
88
109
175
80
54
145
142
88
134
80
94
120
96
112
89
145
80
74
175
69
148
101
96
115
101
136
76
143
134
187
68
138
76
100
127
128
89
138
107
175
87
146
110
112
119
87
130
119
76
72
95
69
131
107
80
126
159
82
134
87
131
99
109
143
91
104
102
80
76
157
58
90
164
109
133
88
69
69
106
87
104
95
92
112
104
102
111
80
154
94
94
80
56
87
80
107
102
87
126
154
111
128
91
115
96
69
89
133
110
110
117
135
96
128
97
160
131
125
117
69
121
114
93
102
80
130
136
155
104
101
119
133
88
156
106
131
117
106
119
140
120
111
116
87
114
156
74
95
112
69
117
156
69
80
155
120
106
174
89
113
72
106
120
85
52
89
80
120
94
133
94
76
106
114
127
156
67
185
136
175
134
102
149
85
87
122
103
93
96
109
136
118
78
122
119
64
127
100
181
87
87
112
120
69
145
107
175
69
56
130
87
80
90
85
97
87
52
133
76
117
149
128
91
174
92
88
140
114
115
154
85
110
112
172
110
111
87
149
69
95
89
111
119
175
59
104
124
120
104
107
69
137
88
109
127
197
102
119
101
119
109
99
163
115
156
117
87
69
69
131
80
69
99
112
107
114
88
88
110
109
154
147
113
134
80
116
117
88
94
132
105
94
91
106
150
80
129
76
137
113
87
156
69
136
119
110
121
140
119
131
113
110
80
119
89
183
76
67
109
80
102
117
175
134
120
82
80
107
94
147
146
89
80
155
90
75
120
128
119
136
118
80
112
91
101
87
109
147
128
117
78
95
87
151
108
60
87
159
76
87
120
145
80
119
113
69
91
95
146
76
119
123
131
115
175
150
69
119
120
92
133
113
69
156
117
107
100
69
107
151
69
121
93
69
72
90
78
119
71
78
85
181
136
78
107
113
113
119
127
76
69
126
78
79
87
83
107
124
116
100
110
80
99
76
80
91
134
175
149
153
160
96
63
80
80
88
151
114
119
128
117
80
128
131
132
101
107
69
80
128
117
134
133
80
130
78
100
87
114
89
80
80
80
117
140
128
93
69
87
120
162
123
111
78
67
69
106
80
128
175
115
96
109
142
154
153
136
87
90
137
175
99
87
80
94
74
119
145
69
112
102
146
141
87
119
58
87
118
69
138
119
91
112
151
115
87
175
144
99
149
89
144
106
81
87
78
176
146
80
89
110
109
96
106
109
69
85
100
133
128
87
91
119
138
158
101
94
54
120
88
145
85
69
76
150
119
84
69
169
115
175
87
94
140
89
96
89
87
67
109
140
137
78
107
69
156
67
109
154
80
134
154
101
140
69
119
103
81
104
144
80
131
95
102
76
100
131
73
146
144
80
80
102
136
201
74
72
120
80
121
128
104
80
96
110
128
100
131
83
122
143
87
69
102
69
111
96
144
52
140
127
93
164
109
155
94
134
131
80
201
98
82
125
69
97
140
130
121
80
80
160
120
88
197
140
87
89
128
109
98
80
109
69
69
87
76
87
76
76
110
78
99
80
89
104
122
80
123
87
78
109
84
80
79
106
128
80
87
87
80
109
78
151
104
99
118
88
163
112
80
119
141
78
78
110
106
89
115
175
87
80
88
117
82
87
78
114
69
144
156
69
56
87
78
120
121
111
69
115
112
181
99
99
115
107
82
137
106
69
68
80
101
76
107
69
109
136
92
69
138
126
109
99
69
128
109
142
80
113
88
96
162
78
175
58
89
99
109
87
132
76
109
134
131
154
144
128
133
103
80
54
137
88
76
109
78
106
107
109
141
81
96
136
89
151
114
147
43
119
90
80
149
120
87
76
145
72
69
197
109
92
138
94
112
122
141
74
108
91
52
56
136
78
112
68
131
119
79
120
132
134
119
131
175
128
146
78
102
152
78
113
76
69
80
109
119
127
118
119
74
112
112
88
102
94
84
109
99
147
69
130
117
76
129
106
122
90
132
89
111
98
99
99
76
104
67
119
96
69
88
93
138
78
78
58
175
111
99
69
97
96
76
136
125
104
106
104
122
119
87
91
80
117
137
88
107
79
100
69
69
69
76
155
106
154
69
119
113
136
80
80
115
119
78
85
107
100
127
80
76
80
143
99
88
54
75
100
131
88
80
69
69
117
119
183
89
78
87
110
76
197
110
91
125
119
69
109
109
175
76
142
87
128
110
151
109
126
120
78
144
114
120
108
71
88
69
108
76
93
114
106
115
96
140
110
143
109
76
121
87
89
110
87
128
85
96
79
154
80
134
117
119
76
104
163
69
76
85
89
94
175
87
94
110
117
76
94
99
87
107
102
83
88
72
69
124
94
101
69
80
96
72
99
145
120
145
88
119
99
141
80
89
151
106
80
103
94
209
78
128
115
80
67
90
120
120
132
69
115
99
119
87
102
101
120
137
80
69
59
78
87
77
131
165
154
80
130
163
155
76
99
76
83
78
128
119
160
88
107
96
125
131
78
69
110
105
108
103
113
98
88
101
119
142
76
110
90
128
148
165
155
156
69
119
108
136
119
72
85
151
69
43
111
172
69
131
112
99
117
89
76
90
111
154
74
107
128
144
104
66
137
104
155
201
80
134
137
54
187
120
80
106
80
94
115
146
76
82
88
127
89
69
76
107
99
52
67
127
92
91
109
80
135
80
119
79
134
87
107
197
74
137
80
56
69
110
76
131
73
121
120
122
56
91
140
128
163
109
78
113
151
117
78
63
100
158
112
199
69
94
133
87
119
89
80
69
80
147
99
72
114
80
52
140
69
113
76
128
154
106
128
128
128
109
126
123
109
120
89
115
109
96
127
80
74
75
175
102
119
119
119
104
87
96
133
156
120
136
80
80
89
132
114
88
99
128
201
78
157
78
115
69
109
76
94
119
124
109
145
107
101
134
106
134
140
87
76
96
98
88
80
100
116
76
140
154
106
115
165
78
136
69
123
76
92
108
107
125
175
165
146
134
87
140
80
95
87
137
154
80
69
76
156
69
128
175
89
147
94
154
197
104
153
112
80
128
89
117
133
110
80
137
90
106
116
104
87
112
80
129
87
43
151
89
107
94
96
89
104
88
93
111
111
126
80
69
155
80
145
87
89
137
117
119
88
115
92
72
80
109
69
109
80
120
97
155
78
165
94
137
118
146
76
80
113
87
109
79
131
128
127
72
128
88
99
94
175
115
119
113
154
87
166
87
122
148
112
80
185
175
175
132
140
80
87
146
78
76
78
119
120
120
87
56
67
121
113
80
78
99
130
102
78
119
128
69
99
140
66
99
89
117
154
131
89
110
101
127
131
43
87
76
110
69
59
89
149
129
104
78
116
128
107
123
69
120
119
56
83
152
134
69
111
73
112
130
80
175
69
80
69
104
119
109
80
128
80
132
135
88
69
120
80
91
127
129
116
140
124
80
140
80
132
94
140
99
121
66
78
76
142
139
113
104
69
88
119
69
140
87
154
94
128
135
69
144
98
119
69
113
107
103
104
83
101
146
78
146
96
134
148
79
109
141
122
106
106
107
69
156
113
155
143
124
80
103
110
154
85
92
117
80
103
96
155
109
121
129
96
88
136
107
75
135
156
74
56
87
56
152
103
69
136
95
98
134
102
85
137
80
96
99
120
172
163
78
80
84
128
68
78
80
78
120
131
78
99
113
129
140
76
74
96
104
136
69
96
76
78
197
175
112
94
151
149
140
58
76
185
59
118
121
54
103
110
78
95
52
117
120
129
131
120
131
109
80
130
109
76
143
155
126
71
137
56
115
99
91
121
99
73
130
117
112
59
80
99
102
87
121
43
88
128
94
104
174
110
133
106
94
136
157
78
127
154
94
80
129
134
134
76
88
163
130
99
96
139
101
62
85
101
169
69
82
106
78
123
144
128
96
80
112
135
69
57
108
104
107
127
69
154
120
80
175
101
100
88
94
144
110
145
155
111
69
78
74
119
92
87
113
120
129
113
152
120
134
104
120
78
156
175
68
99
78
136
88
80
117
155
99
120
142
80
128
69
140
80
92
117
87
117
92
146
102
120
144
143
140
91
105
107
88
58
124
154
90
96
87
129
80
160
136
56
103
78
149
87
101
133
109
151
160
131
76
125
133
133
175
104
133
89
137
80
85
67
96
119
69
95
98
72
109
76
116
52
90
69
93
128
54
87
143
72
94
99
128
127
69
125
124
111
69
136
88
136
121
91
115
69
197
131
111
156
91
155
88
107
118
118
134
120
69
80
109
52
118
91
76
99
101
131
80
128
87
112
135
69
154
119
115
121
113
110
169
117
87
155
69
67
134
136
131
95
100
69
87
175
175
106
115
90
106
69
134
94
151
114
118
78
89
175
125
125
175
128
108
119
113
140
107
113
149
72
69
120
80
83
175
137
90
117
80
80
175
80
106
89
80
104
107
128
136
100
117
119
80
119
94
128
126
110
74
151
111
69
93
80
117
80
88
83
103
69
134
93
76
110
69
69
119
131
131
87
101
93
94
80
76
59
112
93
94
87
113
80
104
85
150
107
87
76
138
75
72
80
73
130
122
99
80
110
117
89
178
73
110
73
119
118
69
80
131
71
111
78
101
69
140
175
115
111
79
156
94
87
119
85
96
107
95
101
80
78
114
154
80
120
121
125
140
110
109
118
81
131
80
134
154
94
76
78
78
117
118
80
69
80
140
69
119
52
151
137
151
123
154
109
80
80
78
78
78
175
69
69
134
101
113
69
120
69
131
91
129
134
120
80
134
132
119
110
146
156
87
131
134
154
121
129
175
87
132
103
115
117
131
81
140
175
113
122
119
113
80
76
86
119
76
117
120
80
148
120
128
99
80
102
95
80
69
146
106
133
119
144
89
80
155
119
175
89
175
89
94
154
111
143
56
100
107
107
101
69
87
115
80
128
80
56
81
134
117
120
93
101
74
137
128
90
102
136
135
156
136
94
114
120
117
101
91
78
139
136
89
119
120
89
150
87
167
133
124
91
155
99
127
79
119
121
119
52
152
87
80
89
120
149
133
89
94
80
151
113
69
120
110
127
87
135
78
94
185
97
183
69
69
108
110
78
76
154
87
96
89
151
156
76
102
129
129
141
93
119
76
69
80
103
128
52
69
99
104
72
118
128
76
107
101
156
80
107
136
197
128
175
89
111
88
100
138
109
71
133
99
128
146
120
117
76
80
76
109
76
156
82
118
80
142
87
109
100
78
154
156
175
107
78
109
87
97
109
175
87
120
125
76
87
121
138
124
124
80
185
102
87
80
76
119
78
120
120
123
118
78
87
93
88
156
128
109
175
121
78
137
110
131
80
89
69
96
77
60
76
69
122
134
104
142
69
151
132
104
102
122
155
126
74
75
134
80
129
119
104
99
80
143
80
140
89
109
120
69
128
101
154
80
80
92
80
113
154
103
131
160
69
110
117
112
90
90
154
80
135
118
75
134
120
119
109
69
98
76
107
92
106
137
88
128
96
107
112
134
69
137
128
76
69
120
154
66
104
98
117
74
87
117
163
66
144
78
91
80
102
103
112
110
154
107
142
137
52
80
130
195
101
76
109
164
89
123
95
121
104
88
52
175
52
118
146
121
103
79
69
69
99
105
121
116
99
109
119
69
56
74
115
104
126
87
78
123
89
96
83
93
134
116
129
127
94
89
91
110
121
113
119
56
146
175
69
69
76
78
156
100
144
120
120
154
102
113
162
89
76
137
117
85
142
108
121
175
113
122
131
140
111
113
117
110
96
99
148
58
137
117
143
106
89
69
128
140
127
143
155
87
88
152
118
127
87
128
98
132
110
120
128
118
175
115
80
101
111
80
99
209
52
112
104
78
107
149
104
166
108
163
88
69
107
80
120
109
87
80
113
146
109
119
175
172
76
128
118
56
80
151
154
115
59
69
130
87
110
78
78
78
154
112
99
112
137
172
80
69
155
119
130
146
120
69
64
106
118
87
72
128
72
87
80
134
134
85
80
88
96
72
109
106
119
121
156
146
83
152
94
129
63
111
87
93
136
154
122
154
52
122
120
110
109
94
67
154
115
112
96
120
100
120
80
129
87
80
107
104
197
137
174
101
78
138
75
89
145
69
87
75
117
117
136
110
154
66
111
120
151
155
110
99
136
131
76
66
69
164
80
107
112
69
181
175
69
86
114
104
118
76
117
165
143
110
107
69
100
76
89
131
129
122
105
99
78
106
69
175
123
119
119
175
131
129
72
87
100
102
128
120
56
99
175
123
80
117
87
80
148
175
175
175
52
169
155
75
157
136
123
107
88
117
83
156
89
82
56
151
73
117
136
96
102
80
107
137
118
87
134
69
121
105
80
80
178
107
103
102
111
140
123
91
131
110
117
147
88
88
109
66
120
80
209
78
107
80
155
71
80
114
87
80
120
107
126
92
122
109
72
164
118
119
120
175
128
80
78
101
87
88
164
54
139
116
67
80
69
147
163
154
119
80
93
122
88
137
100
93
87
69
89
72
88
54
78
125
80
69
136
113
117
99
79
132
103
69
69
69
146
163
76
117
104
99
76
78
71
121
156
118
114
52
126
91
109
89
80
107
127
107
124
110
87
163
78
120
118
154
102
154
151
78
119
115
137
88
111
80
69
76
69
119
156
128
98
94
108
120
136
140
85
157
197
78
118
72
97
64
120
95
119
76
99
87
90
69
93
133
80
76
138
96
175
80
126
96
91
91
94
130
118
156
88
80
87
80
153
88
95
94
69
114
69
99
93
94
127
122
102
152
106
104
91
155
85
128
76
94
137
134
120
75
128
150
76
72
125
119
107
125
175
129
119
94
140
76
175
69
96
96
81
59
154
69
110
76
74
124
99
117
155
156
134
72
114
94
96
138
80
128
80
143
87
80
124
69
80
72
107
119
76
80
98
156
83
89
108
127
85
87
69
109
109
120
131
69
131
122
156
112
109
80
69
120
121
80
82
117
136
150
168
88
117
89
120
117
87
133
175
89
80
144
69
134
154
69
87
154
90
131
109
120
88
87
106
93
80
117
78
72
88
76
69
110
140
80
76
155
69
78
76
91
145
80
128
69
107
122
99
72
110
163
80
96
99
80
111
88
80
99
80
197
94
56
128
89
161
102
109
128
113
131
103
109
79
80
88
71
99
117
91
121
112
69
101
131
101
80
109
80
117
80
88
88
163
163
96
125
128
74
69
69
117
163
66
113
120
87
95
89
99
140
109
126
87
69
134
99
107
113
92
129
87
117
90
102
93
160
69
90
89
119
134
76
100
156
69
114
97
183
113
113
78
119
151
76
78
126
150
89
120
137
105
106
87
118
121
175
148
80
99
175
144
87
94
100
100
154
148
99
69
98
78
112
89
101
136
78
140
57
68
107
131
136
142
59
95
118
69
78
119
117
114
127
109
154
104
94
133
197
80
94
87
107
120
99
99
148
124
114
97
93
128
118
69
136
106
76
120
131
128
145
165
139
116
69
115
129
109
110
101
128
85
67
128
164
74
146
66
104
99
78
76
80
106
94
76
119
140
69
112
145
107
87
67
117
73
109
154
146
69
67
80
78
96
87
76
76
110
93
96
76
128
119
136
113
104
160
80
80
175
80
175
64
80
78
114
69
72
99
145
120
91
52
110
103
146
87
128
95
164
164
119
100
78
85
71
117
104
124
175
69
136
63
140
95
69
87
87
120
69
75
96
145
102
113
144
80
87
69
175
136
128
93
80
119
109
119
133
101
134
132
122
120
113
76
80
80
101
115
85
93
154
79
89
104
90
120
150
91
124
80
136
127
85
105
82
100
134
78
72
88
89
87
101
52
156
99
82
82
80
142
56
87
151
104
96
76
107
69
129
80
69
131
72
101
127
69
104
100
136
76
78
120
100
155
59
80
181
154
80
133
87
106
104
69
101
108
124
80
88
96
128
94
121
119
119
80
88
94
160
76
91
87
119
144
69
155
78
87
89
175
64
119
109
88
119
126
104
87
133
123
80
120
80
132
130
134
97
121
115
107
148
56
76
100
146
97
155
80
91
122
119
101
128
107
87
136
89
94
78
87
104
93
107
66
136
69
74
99
95
156
126
175
199
175
77
125
87
96
137
128
104
134
91
89
89
119
111
88
105
152
119
54
101
89
78
154
136
175
119
133
76
119
69
79
77
154
80
78
103
119
78
92
120
137
87
102
95
80
134
110
69
77
98
91
85
78
80
76
119
112
144
123
102
121
134
123
136
88
119
140
166
112
108
144
93
131
110
199
72
85
109
78
140
94
76
120
74
80
54
104
63
131
102
69
106
69
83
197
140
87
90
117
87
119
148
87
98
88
88
127
140
76
119
102
92
80
72
78
89
136
80
72
93
109
120
80
154
94
136
130
76
118
110
87
151
140
134
110
120
76
80
132
119
98
99
110
120
69
128
80
148
112
100
69
100
99
78
107
91
69
155
91
104
52
155
88
80
87
119
76
112
141
156
127
80
80
78
122
87
69
140
175
110
82
151
94
122
142
140
113
102
88
117
154
126
143
110
96
74
52
101
89
78
101
117
52
87
82
131
115
208
80
94
87
120
115
96
80
69
88
146
119
152
80
111
54
80
197
112
69
96
122
93
108
93
69
163
126
117
116
125
111
69
78
143
175
131
106
159
71
146
117
71
93
78
78
112
88
80
137
99
156
91
74
140
111
95
110
107
90
133
117
87
81
94
87
146
87
116
91
136
115
130
78
121
98
87
69
152
87
80
133
129
128
60
148
98
80
107
107
106
117
98
131
118
88
80
110
119
119
68
94
78
80
93
107
80
69
80
69
113
106
128
99
80
119
153
107
87
89
66
121
165
136
80
80
80
117
78
107
80
106
156
154
115
139
103
121
78
113
119
119
78
80
73
119
119
78
147
121
119
69
80
76
80
109
109
89
166
106
69
80
80
69
174
80
78
110
101
88
69
89
107
150
107
107
139
87
136
166
131
172
78
119
112
107
107
114
136
115
131
110
109
138
80
97
80
119
99
75
120
88
80
120
117
111
135
139
89
101
99
154
80
87
110
104
164
101
120
80
69
156
87
154
149
119
78
69
99
118
69
99
140
89
88
94
79
80
80
113
156
130
52
109
103
145
98
151
85
87
80
52
110
80
160
131
129
133
87
96
147
80
175
112
66
138
78
107
80
87
119
106
87
154
104
87
87
94
94
119
69
80
113
134
109
78
94
69
90
127
89
58
155
115
69
130
120
154
80
89
115
89
131
69
109
154
87
109
97
121
89
76
131
71
80
90
131
78
107
110
69
94
89
94
146
125
112
136
116
83
80
104
85
78
118
115
69
148
100
93
197
91
123
69
80
131
143
56
94
140
126
56
130
114
110
109
134
107
154
82
80
80
80
101
138
67
88
156
129
78
154
80
109
80
98
112
71
154
69
104
99
128
76
156
143
128
80
76
88
69
72
78
137
154
80
80
85
56
80
109
56
120
54
85
120
175
89
145
129
87
112
104
197
146
75
121
131
163
72
136
136
152
116
93
78
88
128
80
121
102
120
80
156
72
177
97
87
131
101
128
60
175
106
54
125
174
80
154
175
104
90
154
107
102
115
99
140
134
76
103
90
91
106
69
104
119
128
131
88
120
69
90
88
74
113
129
151
69
120
90
136
114
120
122
69
85
85
94
131
94
175
80
121
88
148
119
76
116
110
67
164
120
131
87
94
80
94
137
106
80
152
133
69
88
115
172
106
112
69
80
132
137
99
87
115
163
111
89
69
119
80
80
99
100
155
69
104
102
120
110
87
197
154
56
143
80
119
174
110
109
129
109
96
76
88
145
78
80
78
119
128
80
99
106
89
78
76
69
76
78
114
119
99
96
93
115
72
87
80
125
154
145
69
119
102
87
98
79
134
154
119
136
120
123
154
89
107
107
78
132
126
163
134
69
80
136
146
109
84
100
151
93
117
89
113
154
110
102
78
78
115
76
132
91
154
78
104
138
98
109
113
78
56
121
110
140
142
93
130
107
101
151
91
115
80
145
52
109
81
100
58
140
119
80
128
96
78
84
83
121
76
124
80
78
118
175
120
99
100
127
80
131
105
96
78
69
164
163
115
80
101
101
120
80
87
134
80
121
125
88
100
136
174
80
140
114
87
87
98
76
91
175
129
89
123
93
156
76
69
76
154
80
78
96
87
148
87
80
89
155
114
156
78
170
110
75
140
104
69
175
128
91
72
120
110
72
87
104
80
107
104
156
100
72
119
185
74
120
87
99
129
154
175
72
138
123
80
79
131
128
154
89
93
159
128
120
131
134
95
87
89
119
106
117
119
137
69
136
89
69
78
144
87
99
87
87
117
99
93
76
129
79
87
91
131
93
72
112
138
93
69
80
69
156
143
111
97
120
80
87
109
163
89
136
107
69
88
80
80
145
80
69
69
69
107
100
117
95
151
87
140
80
99
111
83
175
89
82
164
88
87
107
115
110
124
104
87
137
78
76
58
89
146
134
80
154
91
124
99
88
131
157
69
104
175
136
121
56
174
137
121
131
154
72
99
120
87
146
69
101
149
165
95
76
69
56
115
91
90
54
76
136
118
175
119
120
78
99
110
43
122
102
100
110
122
91
78
119
87
111
115
132
78
124
102
107
146
90
112
101
88
128
112
119
104
99
87
130
93
107
89
110
111
80
107
100
131
87
102
80
143
109
142
122
80
80
107
132
73
136
118
157
152
69
154
69
136
99
175
74
115
80
87
69
99
118
87
82
175
85
67
80
99
113
109
69
175
134
80
69
153
94
78
113
102
118
88
69
109
134
69
119
69
109
140
67
76
138
137
149
80
120
96
110
94
116
127
69
131
101
125
80
82
101
92
74
107
72
95
96
155
136
80
163
107
144
110
99
181
131
121
137
80
137
97
107
106
71
94
175
69
140
103
107
110
102
76
134
140
80
146
96
76
133
69
118
80
119
88
87
164
89
129
87
131
131
120
133
107
76
104
70
78
80
107
137
128
103
117
69
104
67
87
96
54
78
107
148
123
90
144
175
131
96
113
121
101
121
104
88
69
114
110
143
88
134
76
93
155
137
72
69
69
117
140
128
76
145
120
80
64
131
106
99
197
134
102
87
69
102
110
69
107
87
80
110
96
87
107
80
110
117
103
151
69
112
106
105
80
104
99
76
129
76
165
68
136
88
120
79
137
103
115
80
101
69
138
82
81
117
134
78
87
140
109
78
110
95
87
56
89
87
104
94
69
76
120
131
78
69
143
106
90
107
122
69
56
78
118
80
74
80
154
67
88
69
98
125
92
81
78
154
117
122
59
101
146
110
147
99
123
109
119
87
122
80
175
88
78
95
87
136
163
74
117
74
157
99
150
147
160
66
93
156
107
63
107
76
110
80
54
59
152
96
119
77
111
80
137
119
67
118
127
93
112
120
78
92
99
174
145
80
94
104
128
119
88
43
152
80
78
110
78
123
69
87
132
93
122
73
183
119
143
154
89
144
175
148
123
94
128
121
69
135
107
100
118
118
90
80
155
102
119
88
107
163
163
82
79
107
54
88
95
83
119
144
85
123
154
140
119
140
120
134
136
175
88
76
99
87
104
85
108
117
142
90
107
134
87
76
109
156
181
128
63
175
78
87
175
69
82
80
133
107
95
72
78
88
100
132
104
111
76
89
95
88
155
99
197
133
80
94
121
73
107
99
80
106
122
128
80
113
121
80
134
145
88
83
96
137
156
109
164
110
54
69
94
175
175
107
133
69
80
154
119
87
113
76
89
89
107
100
112
132
80
136
104
80
98
69
107
107
120
127
126
118
89
155
77
154
103
78
80
110
113
150
117
111
88
82
80
87
154
76
87
69
80
69
152
113
54
119
123
72
80
137
119
129
99
67
131
99
121
100
69
128
109
165
114
75
127
69
80
114
102
87
76
114
156
76
127
94
130
72
127
125
113
169
128
78
88
93
90
80
93
106
69
76
120
98
165
118
78
66
99
154
96
136
126
187
69
95
91
79
80
93
119
113
140
104
102
107
89
134
110
43
151
101
175
156
120
73
83
119
201
99
91
69
151
80
110
130
133
110
107
133
145
148
147
154
99
110
129
104
152
175
76
80
88
80
155
141
112
52
99
72
113
74
140
118
72
80
91
134
80
175
78
128
128
87
155
197
120
94
87
101
69
87
93
100
128
127
69
68
69
78
102
118
101
87
87
80
99
174
150
124
113
138
69
166
69
72
100
110
96
69
89
90
125
114
80
89
113
106
110
80
72
69
111
128
78
134
136
88
149
83
129
99
96
106
112
140
92
69
95
80
124
110
125
156
120
89
89
163
138
80
78
87
78
87
130
99
104
69
102
143
134
88
119
69
100
99
135
60
94
80
56
128
147
109
146
112
123
78
113
117
88
69
69
87
98
120
109
128
107
120
87
136
119
91
112
106
107
80
80
76
111
96
133
120
129
80
131
101
95
123
115
119
134
59
126
78
87
94
78
151
117
72
107
134
87
101
125
99
150
146
156
123
78
80
145
89
119
76
151
131
80
117
83
87
110
117
67
76
111
81
113
153
120
118
110
100
111
136
107
146
110
78
151
91
119
119
72
74
123
129
93
87
185
80
104
131
110
78
124
64
130
110
124
94
113
175
156
120
69
156
91
100
94
69
69
89
106
105
155
134
102
136
69
118
114
160
72
69
92
175
174
156
80
149
88
155
89
80
151
113
89
87
78
120
69
112
120
151
121
104
76
72
98
120
54
106
100
71
148
134
89
132
119
117
90
137
74
128
76
119
146
69
110
131
126
163
88
104
96
80
123
175
159
96
121
76
87
131
123
103
134
80
69
94
146
150
145
106
91
156
117
130
80
84
136
85
119
99
112
103
107
131
154
69
108
120
78
99
98
137
106
69
69
154
120
80
73
121
78
134
111
80
54
197
69
174
102
120
66
80
121
110
80
69
143
84
69
146
120
137
80
100
52
69
136
143
69
104
76
157
99
87
175
78
87
129
83
69
78
142
58
181
110
76
148
118
128
147
155
93
102
76
94
125
87
94
136
136
175
72
109
119
166
104
110
99
88
80
43
140
110
80
133
88
132
91
87
94
74
81
136
129
76
69
78
106
156
113
136
74
69
137
78
87
80
154
78
121
117
115
66
104
93
69
87
72
69
106
146
78
145
104
113
87
130
80
110
96
110
75
56
156
120
71
111
104
118
110
91
143
85
142
110
87
113
103
152
136
122
90
89
125
100
175
134
119
80
104
122
104
80
69
76
89
107
197
113
98
113
144
104
96
78
199
98
128
128
154
87
88
78
95
76
110
174
143
149
118
102
76
96
137
80
89
132
110
69
106
80
74
68
87
72
72
87
110
74
109
80
76
94
85
155
91
129
93
77
209
96
113
112
86
106
89
86
136
101
120
100
175
78
104
80
69
126
154
143
52
118
80
96
69
118
120
119
76
69
80
109
92
120
87
157
89
80
115
111
140
69
103
115
119
183
185
100
78
114
52
108
80
121
107
163
80
128
128
123
117
137
155
120
93
90
87
89
106
113
175
109
107
91
100
160
120
128
120
93
136
88
96
156
79
128
103
92
94
175
76
106
110
104
110
120
106
107
107
105
146
136
72
118
99
91
121
58
78
76
78
120
78
92
112
104
125
80
106
127
155
119
69
96
159
89
175
118
137
99
146
124
100
106
119
104
90
117
76
59
154
128
69
99
80
132
140
78
122
74
80
80
113
113
136
87
122
148
106
126
56
80
100
118
67
140
127
76
78
126
81
107
135
80
78
109
130
139
76
102
69
80
88
99
80
69
118
141
156
78
182
69
126
142
104
120
96
69
100
119
104
72
54
80
113
91
119
80
120
127
120
112
91
137
119
72
121
80
74
88
78
69
109
139
155
148
94
79
69
80
69
163
124
120
69
111
78
117
56
134
143
96
94
78
155
80
89
119
125
150
90
122
87
140
78
93
80
197
136
78
112
128
91
66
175
78
104
85
69
80
154
119
106
103
101
99
115
136
92
143
67
85
110
152
174
90
107
88
101
73
76
101
127
94
85
110
78
80
109
87
91
111
119
52
84
76
96
76
131
148
99
140
85
119
120
175
146
76
80
147
69
78
99
76
101
140
137
69
129
122
80
95
91
197
109
80
120
56
126
128
134
81
112
155
103
119
66
82
109
80
137
91
145
107
117
136
175
110
101
85
87
118
88
165
88
93
131
163
64
151
113
151
115
185
151
121
89
78
52
69
89
104
101
106
60
158
131
134
134
117
101
114
97
83
162
94
110
110
104
106
118
80
197
148
112
129
107
69
80
131
69
109
69
78
80
111
160
120
76
126
104
80
125
132
101
69
80
193
83
110
164
144
99
80
80
119
80
130
76
80
147
119
84
80
87
80
83
78
80
103
102
115
154
151
123
113
76
103
78
87
88
114
80
76
148
104
89
103
80
120
137
109
69
78
124
119
93
122
107
78
101
93
69
100
147
95
69
93
115
118
69
80
56
102
59
119
91
90
93
106
122
148
119
107
91
146
138
131
76
69
119
193
74
131
121
96
109
108
96
155
87
102
80
127
114
80
60
123
138
80
80
113
121
94
66
117
104
151
123
140
93
106
96
80
91
111
92
69
94
134
80
80
69
76
146
175
160
88
100
119
78
69
93
101
69
154
69
89
99
155
137
103
96
80
107
102
175
76
145
104
128
112
69
144
87
91
94
56
94
107
120
80
110
121
93
93
100
76
89
109
80
80
102
121
197
80
95
156
80
120
113
72
76
69
128
126
120
155
129
88
94
119
99
80
52
122
146
76
110
133
106
140
72
127
110
76
94
154
87
123
88
87
88
106
120
107
56
80
121
80
78
106
117
120
87
146
128
121
102
80
120
135
106
136
136
106
95
117
80
146
96
119
96
111
117
120
154
76
119
119
119
131
80
99
75
117
76
136
104
120
91
117
69
106
121
145
130
102
117
87
72
128
175
110
98
43
140
119
119
56
145
124
109
107
87
93
113
149
113
69
169
105
69
80
119
136
121
91
145
87
72
69
80
80
91
88
164
119
119
124
99
69
69
88
122
128
120
104
91
137
124
101
52
175
87
93
175
78
117
89
92
101
85
110
94
94
113
122
113
43
137
100
101
96
78
123
154
88
69
76
113
134
91
78
175
134
76
127
140
58
96
57
148
104
78
103
137
130
119
87
96
140
128
155
109
80
69
110
175
110
89
80
80
100
144
88
81
90
80
115
52
102
88
154
107
119
175
136
121
119
99
119
145
155
71
80
88
78
87
80
120
131
108
75
119
143
123
125
110
91
133
87
147
120
112
185
109
124
58
137
52
124
92
134
89
128
150
123
109
160
64
76
87
57
113
162
69
56
110
83
109
69
80
160
89
137
79
113
160
101
94
78
145
142
73
123
140
127
110
96
80
87
80
145
52
85
134
133
106
69
112
113
69
151
69
80
156
80
72
128
81
76
78
119
80
114
78
103
136
110
98
138
69
80
88
69
94
84
78
113
154
130
88
162
99
119
80
89
78
124
99
119
69
152
119
54
113
128
80
112
80
121
114
69
138
87
120
130
99
99
80
119
76
154
116
87
164
148
76
118
128
197
96
133
94
94
126
109
80
129
144
88
106
140
76
128
120
69
102
78
80
136
118
76
175
149
109
80
80
123
100
76
88
160
113
119
118
107
74
163
124
99
72
85
87
121
90
116
78
92
69
112
80
145
69
140
134
96
90
110
103
120
139
96
119
137
72
93
91
160
137
174
94
140
112
134
104
69
134
80
106
128
154
118
78
90
94
109
80
143
89
80
154
107
94
78
121
138
137
94
91
171
69
119
148
80
151
119
69
91
87
78
149
144
107
128
109
72
121
58
80
110
111
71
156
134
85
85
99
101
87
144
101
76
137
136
100
109
91
118
175
69
104
107
69
72
103
102
161
126
69
80
110
175
69
119
152
72
94
80
146
78
59
72
128
119
87
87
80
87
64
78
104
128
87
175
89
59
68
119
120
76
119
80
85
69
57
149
127
118
140
121
115
137
80
80
91
90
137
112
138
109
175
104
100
89
154
80
197
89
122
78
102
127
80
163
175
125
93
133
69
119
80
96
113
118
69
117
109
100
78
106
76
140
104
69
163
131
91
80
91
132
99
91
132
151
151
83
82
120
175
88
104
69
119
127
76
104
87
174
112
175
54
131
80
117
118
104
122
78
126
67
78
187
76
111
114
118
83
80
103
78
79
80
154
69
85
109
120
102
80
69
109
79
87
88
123
121
92
175
121
120
80
78
156
96
87
98
80
122
117
122
115
154
109
99
87
113
107
121
128
115
90
59
119
80
148
148
101
119
69
89
75
96
109
69
147
164
80
128
154
100
131
121
152
69
143
85
76
117
112
80
87
98
60
183
134
76
120
69
80
94
87
148
181
107
109
69
89
145
101
59
87
131
104
109
129
99
96
108
128
156
80
82
100
69
119
104
130
120
89
119
78
115
80
106
106
109
87
137
120
93
139
93
60
80
144
120
148
131
104
78
112
121
80
117
119
164
107
118
78
52
165
112
121
148
87
87
80
69
69
54
129
87
67
130
69
151
80
97
123
80
83
94
205
87
82
78
119
100
144
151
137
134
109
69
79
60
109
80
76
80
136
92
102
107
69
67
93
109
113
69
104
78
141
98
131
76
90
99
174
107
99
93
79
119
199
85
78
101
175
69
156
87
146
121
130
93
87
98
104
126
76
107
125
80
159
107
136
128
111
183
107
91
88
163
120
155
78
175
156
69
80
80
76
76
105
124
52
148
93
80
69
140
85
93
123
56
94
80
76
76
67
117
88
69
120
94
69
69
88
69
150
111
94
162
112
121
131
90
80
120
69
130
76
122
175
89
76
102
118
114
69
107
88
160
128
100
105
107
138
56
80
122
93
80
81
88
109
52
145
87
69
73
103
154
108
78
175
146
102
130
76
132
146
89
107
111
117
89
91
175
69
120
69
78
175
132
80
69
80
138
143
100
113
128
134
91
113
140
80
91
138
130
197
117
102
43
73
74
126
109
96
119
82
100
121
99
144
98
96
78
109
94
174
69
120
111
125
121
145
165
66
197
72
57
163
128
107
69
99
103
106
117
75
80
145
72
136
124
80
87
114
117
107
154
136
76
96
89
78
113
110
112
119
110
120
99
69
89
87
138
89
117
80
95
118
99
69
76
106
119
128
126
159
128
98
110
90
87
80
136
110
120
104
123
113
93
72
103
90
103
148
131
124
76
96
111
69
140
89
69
145
91
102
104
99
119
131
133
87
123
89
117
76
90
110
131
119
102
101
109
85
69
78
120
89
117
109
154
119
122
131
99
107
164
141
106
76
89
121
117
106
78
128
76
122
105
140
109
110
128
78
175
131
87
107
99
80
140
79
89
87
109
69
89
121
140
114
80
80
136
145
175
112
69
120
132
78
137
163
88
123
197
98
110
120
123
164
102
88
107
136
131
91
69
84
114
80
102
76
138
121
119
91
80
96
91
69
89
102
80
109
72
69
76
78
100
112
112
130
136
118
114
102
80
109
96
113
109
107
107
104
151
154
80
109
88
146
174
102
80
133
150
69
78
87
69
109
78
127
80
134
113
56
67
76
88
69
78
56
113
169
96
76
69
72
72
141
80
106
175
80
89
148
87
78
122
163
88
52
175
120
111
134
154
91
211
88
151
113
102
174
100
155
110
95
104
89
151
69
104
80
110
136
154
80
76
52
145
96
78
113
112
152
120
83
92
117
72
105
78
120
110
88
175
151
96
76
151
69
125
140
185
87
69
88
85
106
78
82
112
199
69
110
80
119
110
143
122
156
128
165
99
80
140
72
88
101
87
107
96
106
91
80
99
72
174
94
174
88
69
120
117
102
89
175
111
181
88
104
95
138
99
80
80
89
185
83
110
106
121
80
52
120
92
201
133
94
120
109
89
134
103
105
126
58
96
80
76
91
124
146
108
69
165
104
107
114
88
99
106
134
138
100
127
109
128
89
147
96
143
101
159
120
56
96
94
119
134
103
137
109
104
69
129
126
80
80
112
93
95
76
102
107
124
91
107
113
76
111
120
157
134
80
175
80
78
114
109
103
107
127
80
110
162
100
109
54
174
94
106
134
107
127
121
80
121
92
80
119
87
69
69
131
118
175
56
71
80
131
138
110
69
112
90
181
78
121
87
80
143
139
155
89
76
105
100
64
66
118
56
119
126
94
131
75
72
109
143
100
73
88
122
64
128
128
175
119
109
131
78
76
69
94
89
146
88
146
100
119
109
80
131
143
88
96
64
102
72
110
80
69
119
197
169
119
69
134
119
130
71
110
69
136
117
80
107
112
120
93
117
181
112
114
69
175
110
74
127
129
163
103
74
119
122
78
145
89
94
115
89
81
99
80
115
69
104
78
128
134
95
80
119
137
150
156
87
138
87
137
120
146
76
134
76
155
80
78
99
118
129
119
110
120
183
80
109
102
56
156
59
112
104
151
121
154
106
128
87
119
121
99
138
78
101
141
120
87
98
80
136
169
98
89
113
121
91
109
67
139
85
93
54
122
87
141
131
85
119
127
127
89
99
127
132
121
69
76
56
128
176
104
78
143
69
143
78
76
121
151
151
96
174
78
87
110
102
118
88
120
169
89
80
117
130
83
87
72
80
201
122
83
69
151
140
148
166
114
131
109
69
149
129
89
101
133
113
123
113
120
80
143
152
87
78
146
80
106
137
108
99
155
78
113
75
151
99
128
88
80
148
76
132
99
117
174
88
87
119
91
89
80
175
83
155
57
101
95
119
143
137
92
128
69
156
126
69
77
104
78
87
112
107
103
134
74
110
138
163
113
72
118
87
104
143
109
69
80
78
136
80
155
96
120
145
156
113
119
127
99
175
175
89
175
78
122
52
154
69
104
151
110
114
72
93
83
87
144
117
87
131
128
140
76
157
83
133
106
69
131
69
155
101
101
94
175
80
93
105
80
145
146
94
76
52
123
121
80
130
112
79
113
109
88
72
128
69
78
119
93
156
96
78
119
111
87
131
79
76
99
80
69
78
126
109
90
106
80
149
95
94
109
98
139
119
128
107
93
112
87
128
83
125
69
96
143
80
87
80
140
175
83
71
102
90
103
152
102
106
91
78
136
144
76
110
104
76
100
90
99
80
90
93
94
136
138
88
87
72
72
128
72
78
102
93
69
80
78
154
94
103
140
143
43
107
148
109
87
76
154
178
113
108
175
140
174
119
186
126
91
69
119
121
120
134
101
119
72
78
96
153
43
124
56
87
118
138
75
106
119
87
80
81
121
128
147
129
147
72
69
99
115
89
122
115
100
142
133
151
142
128
110
76
109
122
69
133
116
96
95
146
117
109
134
132
120
90
93
175
120
175
74
87
43
80
134
80
120
94
120
109
107
138
72
87
110
91
119
89
106
69
129
107
131
99
128
79
104
78
117
111
156
91
80
152
127
112
136
99
140
119
88
113
69
122
54
80
134
66
128
94
144
137
113
99
133
87
78
80
118
133
69
130
82
131
149
80
132
119
69
66
89
125
128
147
107
87
80
145
113
144
154
132
154
96
116
103
88
82
76
155
136
130
68
87
103
96
117
89
119
128
80
107
80
107
112
87
80
197
154
104
128
114
175
102
163
118
104
136
89
80
185
69
134
154
78
69
131
80
99
128
76
111
113
86
83
119
82
91
112
80
93
101
112
87
71
175
78
130
119
76
144
106
74
87
106
87
78
87
166
87
119
80
104
162
121
156
142
134
96
85
91
122
120
75
133
110
106
175
91
88
109
110
175
120
80
80
161
90
118
143
163
100
87
89
87
175
128
78
119
163
83
92
117
69
175
128
100
80
80
109
183
54
82
154
88
181
113
128
109
158
78
115
109
151
120
80
76
118
80
76
87
121
109
111
79
88
69
93
89
104
99
154
94
112
85
120
80
80
91
87
76
113
141
80
89
72
96
123
138
69
115
76
101
112
96
98
107
85
69
134
163
146
138
80
80
96
99
76
69
118
94
116
124
80
136
184
87
110
110
109
83
108
125
117
78
94
122
117
104
100
109
69
99
93
72
87
78
175
197
128
75
78
94
154
88
80
83
103
197
89
69
120
107
117
78
78
109
125
66
58
105
107
120
120
76
113
69
69
145
121
80
113
69
99
87
78
113
89
87
56
108
109
98
99
129
72
89
114
80
89
108
87
79
96
69
78
95
87
80
119
197
76
99
140
140
87
78
163
154
134
128
89
136
92
89
69
88
145
93
89
75
110
69
79
80
130
80
75
106
140
72
100
107
175
102
127
144
104
89
88
107
54
87
97
120
120
99
128
119
91
96
80
90
69
110
155
90
107
80
134
107
69
88
82
88
150
80
54
69
82
111
144
156
146
80
88
99
80
89
129
154
102
107
119
99
123
154
80
78
99
110
80
90
151
114
109
100
103
154
89
108
107
72
100
76
80
80
102
76
69
110
78
140
129
155
69
91
118
87
175
120
69
69
76
123
74
80
74
131
100
112
151
154
93
122
87
115
80
133
80
139
99
54
106
113
123
113
148
88
120
87
80
103
101
69
109
99
74
124
88
109
115
98
111
80
111
164
142
87
138
115
164
94
156
99
119
89
52
96
78
172
80
91
88
96
101
117
154
154
76
131
117
174
78
160
87
76
79
147
52
88
110
78
78
93
58
74
78
87
175
78
76
80
175
89
133
78
131
128
69
128
104
80
107
80
112
76
103
110
127
95
106
120
76
154
111
110
107
128
123
113
99
88
136
144
147
80
117
104
140
100
111
97
69
114
156
101
80
88
69
110
98
100
110
123
175
87
74
165
95
93
76
140
90
151
119
87
137
87
155
107
161
121
87
146
118
156
140
69
93
124
136
69
138
128
93
98
197
121
117
87
97
119
144
126
118
78
166
97
80
146
129
163
94
110
89
128
174
78
112
113
124
80
114
69
117
103
183
101
69
150
148
126
134
112
120
98
126
76
99
101
143
113
119
86
72
104
96
87
126
110
69
101
109
76
111
71
68
80
136
117
87
91
73
75
69
106
110
69
126
147
156
125
95
99
69
74
119
98
80
106
110
69
145
136
133
143
111
130
79
197
85
59
117
86
105
136
80
107
129
79
132
90
87
73
100
107
66
94
80
106
87
106
145
152
69
119
54
134
80
83
156
94
93
144
87
114
117
197
113
58
89
165
154
78
87
111
151
107
121
96
165
78
83
131
113
120
125
136
80
91
134
69
56
76
122
69
109
112
140
101
123
107
155
112
110
73
87
100
88
164
80
69
80
134
74
128
78
107
101
143
88
91
107
111
69
112
96
80
89
121
155
76
69
76
75
78
149
120
144
120
87
99
122
107
76
101
118
72
106
119
185
98
78
169
85
103
72
89
95
159
102
140
76
130
112
87
128
80
78
121
99
136
93
136
80
80
107
83
120
145
97
140
81
80
104
80
115
133
96
113
80
109
160
107
69
119
117
69
120
122
126
109
123
133
78
87
156
120
67
69
75
94
72
117
74
54
78
107
110
80
91
80
107
146
125
128
163
183
175
128
80
69
109
54
134
88
80
94
131
134
104
164
113
106
118
136
113
96
134
91
69
72
52
96
119
80
86
128
161
136
102
90
119
107
112
85
129
80
197
118
94
94
76
110
106
104
114
76
109
153
115
174
126
81
120
106
109
130
123
117
79
118
121
72
130
87
155
131
144
106
80
88
107
112
119
80
79
69
80
80
162
107
124
113
111
183
154
82
80
138
142
175
106
79
80
75
113
136
69
133
138
89
76
96
174
120
119
95
138
131
94
131
148
104
134
95
134
104
88
80
147
72
80
131
119
76
78
103
143
80
76
99
145
120
154
114
118
117
80
156
175
81
112
107
147
144
151
101
75
87
80
78
97
164
89
142
87
80
72
119
96
69
129
78
99
106
82
76
69
80
127
133
101
156
113
72
106
76
110
96
99
80
99
138
120
69
134
69
101
103
89
107
79
80
121
69
88
112
68
175
52
87
80
152
69
151
128
89
161
69
127
151
115
104
136
107
80
76
80
71
120
124
69
136
69
80
69
94
175
109
78
94
72
78
71
104
127
120
80
132
123
76
80
99
131
69
75
106
69
175
89
88
114
146
96
80
119
122
147
154
72
67
76
80
80
160
85
119
91
80
120
136
128
122
112
134
120
87
80
89
69
129
80
113
120
76
155
113
117
87
93
107
89
87
101
147
150
128
72
80
126
72
67
164
76
128
134
76
68
129
90
117
154
102
104
119
107
94
128
69
78
78
130
160
78
121
56
128
102
97
136
80
69
75
112
131
136
131
120
70
86
89
95
109
80
99
93
110
69
119
131
134
175
120
100
109
90
79
164
92
78
165
107
175
78
112
94
101
128
80
119
146
69
87
89
131
104
107
81
140
83
105
99
91
80
124
100
134
142
143
87
87
89
110
74
92
80
99
119
132
88
78
78
124
106
80
154
96
80
120
125
92
76
69
101
97
131
74
121
71
131
99
126
78
112
75
120
83
81
76
102
154
75
88
147
156
117
78
119
112
104
100
120
80
136
172
175
154
80
70
76
151
79
107
72
76
156
127
78
88
104
144
79
132
78
92
175
69
111
121
69
120
72
91
80
88
59
98
93
119
118
113
80
78
80
118
78
119
103
74
137
80
78
110
175
134
66
120
118
154
130
110
79
76
104
69
132
181
132
139
57
78
88
175
115
98
120
69
78
144
140
120
106
116
104
80
87
95
107
84
119
140
94
125
151
59
69
76
148
104
78
89
80
106
132
111
106
128
107
134
118
76
69
188
109
113
66
104
80
101
112
99
72
153
80
78
199
148
76
76
124
69
76
162
154
136
107
80
119
88
137
154
87
123
100
122
87
119
148
80
109
101
101
80
197
69
80
110
95
197
165
104
130
87
118
129
88
144
122
80
80
163
83
102
143
159
106
119
69
150
106
107
120
160
87
174
101
143
78
163
90
73
80
89
115
132
125
154
136
114
117
80
90
71
87
54
154
93
109
88
107
80
118
92
107
175
69
80
119
72
80
147
163
87
118
87
93
69
133
135
96
110
148
87
128
98
107
146
119
164
115
117
123
109
87
131
69
121
169
125
94
99
80
72
128
106
117
155
128
69
87
109
97
119
152
104
80
144
69
146
67
54
164
121
107
88
134
131
79
128
73
101
141
100
130
174
104
140
111
108
131
143
69
106
119
148
78
69
134
78
122
80
134
63
136
99
136
99
136
106
175
94
119
132
161
113
120
177
107
128
69
120
113
76
104
78
128
119
112
151
107
108
80
137
56
175
113
68
78
99
99
117
72
74
119
128
94
101
120
87
80
118
89
69
54
156
78
108
154
130
72
143
100
72
69
117
124
80
85
111
159
156
80
87
59
106
110
87
52
94
104
113
154
99
151
131
74
90
88
78
76
111
162
130
78
78
102
151
91
107
156
122
153
74
76
154
52
147
78
136
126
154
96
104
131
108
150
201
80
90
112
76
75
95
74
110
119
119
120
80
95
106
78
69
87
118
108
109
120
102
119
113
76
69
121
101
151
147
69
80
113
69
80
131
69
72
69
85
69
128
91
80
145
125
118
99
109
119
69
78
78
90
112
137
127
154
89
127
134
80
118
69
128
155
120
127
164
74
152
125
164
95
156
114
163
98
201
92
140
96
69
99
78
129
96
80
80
74
155
93
103
107
78
121
145
88
89
72
142
100
127
120
88
80
164
69
197
90
117
94
89
87
134
97
87
78
117
100
137
96
134
106
69
140
137
69
106
94
87
136
89
109
80
69
205
120
164
87
54
150
56
141
80
140
119
86
85
123
175
107
88
96
66
131
74
89
156
95
125
87
102
81
110
78
69
99
106
138
125
89
101
85
99
128
113
69
117
117
100
80
119
85
107
131
118
129
106
105
134
80
84
110
126
120
136
101
80
82
154
145
101
119
93
137
118
124
118
119
131
127
87
109
91
137
78
92
142
91
72
78
94
99
87
138
118
104
113
88
120
94
154
75
144
76
106
143
134
121
87
96
133
163
107
100
91
72
119
163
80
98
88
183
110
110
89
69
124
165
69
91
130
104
71
119
80
148
78
120
113
80
140
134
87
52
89
121
137
121
69
136
80
131
120
120
155
88
113
130
100
175
121
96
115
111
118
80
104
80
175
122
78
123
121
114
87
120
82
140
76
87
96
83
104
154
80
107
94
107
88
89
87
88
140
113
69
98
76
163
95
100
78
74
80
136
69
145
122
124
81
78
87
80
128
88
115
128
69
120
172
128
123
92
113
127
104
136
175
113
64
82
107
93
74
56
117
106
85
69
80
69
109
80
89
69
127
110
76
119
80
133
197
87
78
119
121
87
118
80
93
109
85
140
127
140
197
107
110
160
155
93
69
87
120
87
80
131
109
119
94
103
124
87
89
175
85
175
90
175
80
118
90
95
63
88
113
80
63
109
127
85
78
94
80
100
113
87
97
74
106
156
104
154
99
66
88
125
175
78
163
154
136
87
137
74
99
119
109
147
89
59
76
78
78
102
95
80
163
87
133
134
130
78
131
80
91
119
145
115
72
80
80
156
88
140
69
91
76
87
69
89
107
144
77
69
88
115
88
69
69
100
88
136
69
129
89
87
78
88
115
130
80
124
106
122
102
99
87
89
114
120
120
112
71
82
131
151
101
128
52
93
87
88
87
120
78
69
131
75
146
114
92
99
78
140
112
89
131
89
74
127
114
131
107
96
88
118
77
154
151
119
69
69
92
96
110
94
91
119
119
68
131
121
78
138
102
175
76
78
83
94
92
75
101
94
78
52
92
107
120
122
80
69
87
87
110
144
154
72
175
80
78
107
69
148
119
90
98
69
127
76
83
74
155
136
131
109
156
101
131
113
64
97
76
140
99
160
87
107
96
121
82
154
87
102
144
107
148
72
72
76
165
136
120
78
118
87
175
140
117
110
56
95
106
154
91
80
115
156
107
197
154
76
120
154
87
80
63
128
134
54
87
122
137
128
120
120
90
76
142
163
104
156
120
137
87
106
74
80
80
114
126
115
93
89
115
134
87
80
134
145
120
54
106
107
136
115
75
69
115
89
119
152
119
137
87
102
106
145
134
104
142
87
115
54
107
96
87
175
117
156
107
120
107
113
87
102
144
106
117
114
107
149
197
91
88
123
87
87
113
69
145
104
154
142
99
52
69
78
104
93
74
123
124
69
128
157
130
89
96
152
88
101
120
107
69
137
115
76
52
76
109
122
109
88
85
43
131
128
88
110
113
90
109
130
56
69
118
110
80
127
113
74
97
181
80
58
115
106
52
125
69
102
97
106
69
199
80
96
128
133
101
107
144
98
76
94
100
118
119
119
125
80
155
94
119
72
96
78
128
131
136
80
96
106
133
87
110
88
69
76
123
109
69
175
143
131
111
89
87
80
80
69
110
88
87
52
165
137
69
78
103
69
123
107
157
67
139
101
80
95
75
117
113
121
93
157
134
88
54
80
128
178
162
111
104
151
87
93
76
89
151
123
80
80
107
136
107
80
156
123
76
100
94
94
107
69
120
100
156
110
52
105
72
132
102
91
119
140
113
94
147
110
88
106
109
78
109
69
78
98
89
101
89
154
134
101
154
79
111
120
112
76
80
90
134
88
80
147
165
96
197
69
109
102
76
128
109
144
115
196
101
102
100
156
166
131
149
120
80
69
138
107
89
122
109
99
80
140
109
136
121
110
112
163
122
137
69
122
118
99
99
101
99
109
147
52
156
90
116
123
72
127
110
56
69
76
152
87
69
104
104
120
163
69
117
131
119
87
107
156
87
88
69
103
134
122
109
131
114
120
154
112
93
72
175
155
128
143
85
143
95
80
113
109
115
78
93
94
79
93
130
89
127
80
121
175
156
76
113
154
149
111
107
110
113
72
163
115
69
89
107
118
143
78
71
115
117
85
187
78
144
131
138
69
117
163
104
110
117
107
72
96
74
131
83
163
155
80
80
131
90
175
87
87
94
138
145
133
69
78
115
78
121
66
113
110
69
163
69
156
118
120
78
69
88
80
131
136
80
83
78
154
101
98
128
71
175
112
87
119
76
100
80
80
122
120
152
118
113
154
76
133
76
71
88
148
120
148
149
72
69
80
156
131
134
94
110
80
161
69
112
89
95
143
102
136
107
129
124
101
119
78
72
93
121
120
175
102
87
59
115
119
154
56
87
90
141
83
109
119
69
69
95
80
87
69
76
94
72
129
94
87
154
107
80
67
175
146
121
80
96
89
88
153
113
113
114
78
80
83
93
96
87
79
117
110
107
94
97
201
101
80
93
109
133
156
149
72
87
87
131
96
87
120
117
91
137
106
89
101
112
107
80
121
52
128
80
89
56
156
115
80
100
124
110
80
183
80
80
80
119
69
160
104
87
69
127
99
131
107
69
175
96
102
108
140
126
110
123
76
93
93
111
174
119
146
112
136
87
175
69
109
101
104
102
126
96
119
80
102
80
89
88
99
109
175
120
80
71
110
110
69
175
165
144
104
121
117
80
87
109
106
157
117
128
175
112
134
71
133
99
72
80
89
64
175
98
109
115
106
78
110
128
80
121
147
101
175
93
80
87
104
87
99
76
94
80
175
105
96
175
91
75
99
80
118
69
80
102
138
69
156
104
69
99
154
95
76
110
155
163
174
88
124
89
54
78
140
136
92
175
90
89
140
144
91
138
128
80
60
99
117
69
59
117
120
120
124
107
128
128
76
69
76
104
80
114
140
64
117
120
109
110
69
119
76
172
74
156
157
69
91
174
183
197
164
87
89
132
130
110
131
87
109
122
143
93
197
145
146
80
80
54
134
83
80
133
131
113
89
174
131
122
69
93
80
72
69
89
110
113
107
105
52
69
88
111
80
120
88
56
76
109
135
100
74
120
69
80
134
107
87
197
113
102
109
114
97
88
107
96
99
113
149
153
145
111
120
56
120
128
69
133
78
80
99
106
118
83
95
94
87
69
101
165
80
91
133
117
80
78
133
175
119
100
120
91
66
110
107
110
127
115
100
155
80
132
94
80
128
78
128
111
172
116
157
101
76
156
114
80
78
109
109
76
126
109
99
132
119
156
99
76
74
110
131
80
113
132
101
107
144
113
121
155
135
80
118
140
99
87
175
118
78
156
112
69
78
131
112
87
69
76
85
91
110
76
110
69
124
119
120
69
69
113
72
148
93
122
80
124
54
129
110
69
99
132
107
152
126
63
119
102
131
101
79
80
112
138
131
94
107
93
88
138
87
80
78
111
119
130
69
132
69
143
91
121
94
124
157
87
121
59
153
80
111
104
87
87
121
123
89
123
112
137
89
74
140
96
117
185
121
74
78
104
113
155
80
152
78
136
80
115
91
93
107
76
109
110
107
156
74
144
101
143
122
161
175
106
175
120
80
175
155
69
107
119
120
98
146
119
127
143
69
54
80
109
102
104
78
115
78
119
99
140
109
134
110
87
69
104
121
162
78
80
80
109
128
93
69
114
144
78
112
110
110
110
78
126
69
118
89
151
87
87
98
197
109
117
91
52
92
91
80
69
99
78
78
131
69
78
120
96
110
134
120
137
76
134
69
145
132
78
104
134
80
107
104
115
94
144
143
102
152
94
95
74
89
153
109
175
142
56
88
69
78
92
130
69
78
67
69
121
88
131
128
80
108
111
103
134
128
120
99
176
119
78
87
74
128
76
164
99
78
80
103
155
96
112
132
106
76
80
134
125
109
80
80
120
106
109
87
110
127
154
74
147
98
146
113
134
88
69
113
90
174
175
78
126
119
127
121
94
88
87
140
163
69
120
129
80
54
127
104
76
100
69
114
121
174
79
154
106
89
87
109
103
154
100
102
121
106
125
80
121
138
96
80
146
80
154
80
134
172
149
76
89
56
127
132
107
69
128
76
107
156
128
89
121
104
106
99
151
156
79
82
107
175
87
106
110
136
132
201
59
87
109
88
154
132
78
94
80
128
100
78
80
121
78
155
80
123
99
154
87
101
183
76
127
72
52
118
52
93
175
119
69
80
78
78
107
144
154
69
78
100
136
104
112
154
69
101
106
108
163
127
78
126
85
80
110
88
80
104
67
131
134
78
130
122
123
145
110
80
83
94
75
75
114
78
149
106
76
128
113
80
80
147
114
120
112
175
76
148
87
110
112
87
121
113
113
106
102
122
183
100
93
104
120
107
128
134
91
80
80
91
78
163
103
79
91
101
110
154
70
123
78
99
88
151
89
69
85
104
80
110
110
80
78
69
78
106
99
127
106
156
183
109
104
79
93
154
102
69
132
120
98
119
69
69
119
69
99
76
69
56
96
119
140
72
76
113
99
99
134
80
137
94
52
133
127
151
107
140
95
154
148
133
146
87
89
128
101
64
138
78
89
80
129
160
80
80
128
80
85
101
151
85
128
141
80
80
107
87
197
148
104
104
126
80
148
98
197
119
151
74
67
106
115
138
104
183
120
107
98
69
72
107
153
80
93
106
78
181
54
109
89
164
150
128
80
74
126
125
134
80
148
146
78
149
79
130
117
111
78
69
78
88
72
102
117
71
166
126
118
76
80
175
104
89
99
120
128
80
76
127
80
80
117
177
69
136
69
137
78
69
109
134
120
99
130
126
80
102
175
89
146
105
183
132
79
117
80
114
107
111
119
76
99
107
131
152
131
87
123
104
113
98
128
80
175
131
102
74
101
98
113
154
110
82
109
106
69
69
94
136
95
102
80
63
74
69
76
69
80
80
104
162
113
149
131
155
175
121
107
69
88
83
157
99
76
90
80
113
143
93
130
102
119
69
137
64
80
87
80
125
80
146
104
105
110
66
140
137
104
78
106
119
85
112
99
197
98
129
76
104
69
76
132
96
124
127
131
154
69
112
119
80
164
69
124
78
99
132
105
102
76
107
101
72
90
69
94
128
120
156
107
175
110
127
128
113
104
88
69
107
72
131
67
136
123
69
100
102
80
119
111
141
199
80
72
110
154
117
115
162
74
90
67
124
69
78
119
88
93
114
163
99
106
140
79
119
94
107
107
154
119
119
80
113
69
83
128
125
124
119
120
107
66
72
123
113
133
107
78
110
104
72
197
112
112
94
140
89
102
101
87
76
134
89
113
76
91
130
128
120
146
83
69
80
107
72
80
117
88
148
113
104
164
136
79
99
93
131
121
91
117
154
98
140
120
100
106
89
69
153
87
80
100
89
131
185
143
93
80
101
117
147
175
131
78
99
113
104
79
107
69
66
123
104
69
122
174
78
123
108
78
76
120
114
160
145
92
119
126
66
104
78
117
117
69
119
156
120
175
100
143
76
98
109
107
137
69
109
111
92
134
67
101
110
104
104
87
121
93
63
93
95
118
93
123
79
109
154
101
147
175
80
100
87
72
80
132
122
94
197
99
120
134
104
151
80
89
54
78
114
78
93
117
78
120
87
113
131
107
74
99
144
88
150
164
102
78
94
149
69
128
109
139
155
172
119
80
156
96
71
92
209
110
78
87
91
104
91
175
93
67
93
120
104
89
131
132
69
94
78
81
121
175
96
120
93
175
93
119
76
148
148
87
104
78
99
90
131
76
140
74
154
99
156
56
93
80
80
128
80
80
94
104
120
143
100
135
156
112
124
128
87
113
85
156
175
117
69
128
80
140
87
91
95
93
104
80
76
116
80
89
97
64
87
109
113
148
103
69
132
93
111
118
164
174
99
156
120
69
56
76
104
121
164
110
137
136
129
88
75
76
78
136
107
76
111
120
147
94
132
133
92
88
113
87
115
119
118
119
163
101
137
88
81
72
197
88
84
119
146
119
131
69
125
199
121
69
128
144
88
87
123
87
136
107
78
89
80
82
88
151
178
122
90
102
109
89
80
117
80
154
105
121
175
98
91
80
89
69
111
89
113
166
87
148
134
136
141
76
162
78
154
118
114
69
137
52
91
78
120
113
136
110
87
137
87
109
66
78
144
128
130
76
109
99
119
93
185
80
152
78
118
151
112
131
113
87
136
178
131
136
107
107
63
89
80
120
95
94
132
142
113
153
151
116
80
72
131
107
109
111
112
109
135
82
69
76
134
69
76
120
151
107
123
87
69
106
80
89
126
114
87
121
119
106
54
114
92
154
134
69
120
164
69
69
119
154
80
98
80
54
80
87
114
91
163
103
104
92
101
125
69
100
111
119
123
131
95
137
107
87
88
118
89
109
124
87
88
103
124
131
134
128
91
117
127
128
137
87
126
120
121
112
76
93
95
78
95
112
102
90
71
88
197
95
89
122
160
80
112
142
91
88
88
93
69
110
88
133
87
123
155
101
100
107
91
119
69
78
156
160
156
88
80
96
80
87
90
80
140
99
78
88
87
60
76
69
90
112
76
101
101
133
84
102
89
90
80
115
67
78
151
146
98
119
74
107
82
76
80
80
89
91
69
143
99
175
69
80
156
87
122
197
165
78
143
143
93
88
104
132
94
71
94
174
131
80
74
67
175
129
129
69
88
142
133
120
89
139
138
127
119
78
100
80
110
88
83
154
78
154
148
131
128
129
85
80
76
119
80
88
87
87
128
125
90
101
67
107
97
160
131
139
112
94
88
94
154
76
147
89
123
128
94
88
91
69
120
107
154
80
142
85
110
80
109
175
175
76
163
119
151
98
107
78
134
175
94
117
187
94
43
154
87
112
159
175
122
91
153
78
56
105
117
119
107
69
119
78
58
156
98
120
87
102
109
99
130
87
133
129
111
80
68
117
78
156
78
151
87
110
160
89
58
69
88
80
56
69
119
78
136
94
113
99
109
98
137
120
109
93
88
107
109
96
76
88
76
83
91
43
82
78
138
142
94
128
110
157
143
110
104
175
104
71
128
154
69
134
120
110
133
87
118
72
69
134
146
181
110
87
78
87
54
80
143
151
87
104
107
80
109
169
127
129
88
76
155
110
117
104
96
72
59
128
105
138
91
185
100
127
88
69
88
119
99
74
107
121
151
69
69
88
106
100
96
122
113
126
148
109
156
72
120
91
106
109
80
201
69
87
120
119
112
134
134
106
78
93
93
133
87
89
155
102
146
136
100
93
120
126
149
94
66
72
88
110
101
111
136
99
139
80
93
130
67
80
80
99
80
129
131
76
80
119
121
127
117
185
119
88
185
146
121
154
69
99
85
93
120
110
109
69
83
89
177
129
166
99
120
78
79
87
76
85
94
123
143
113
154
120
102
146
131
105
119
111
163
89
80
56
76
63
80
99
122
78
87
119
96
134
93
114
128
96
69
83
80
112
101
69
80
114
133
119
169
80
69
110
69
80
156
128
69
69
94
120
115
118
56
163
133
80
119
109
197
127
72
80
117
197
140
127
126
69
122
148
80
56
66
101
95
87
87
199
138
155
92
178
89
140
88
169
123
87
154
119
91
98
80
122
120
87
120
87
174
96
78
109
117
175
109
197
91
176
99
69
110
126
80
107
104
91
140
148
76
99
94
91
80
91
100
76
78
144
113
101
100
76
56
76
96
129
87
71
118
52
119
120
93
72
79
87
127
99
118
106
85
120
123
150
78
109
123
174
136
76
80
103
69
80
108
131
129
104
76
76
80
78
143
128
146
69
155
130
101
86
117
80
76
78
119
117
148
107
118
97
87
90
89
100
118
101
197
106
136
145
131
120
96
87
104
80
121
76
80
121
119
84
83
71
96
110
107
69
122
151
52
80
87
113
90
163
76
94
102
175
119
119
154
145
87
130
115
76
78
129
80
154
89
78
120
112
127
89
78
99
80
121
154
119
134
69
80
87
111
138
78
133
80
80
111
78
120
154
133
78
87
121
82
69
102
116
140
69
176
89
81
146
121
120
75
87
76
43
78
119
102
89
98
115
78
114
80
89
91
69
87
96
120
56
113
107
93
104
89
119
148
106
89
106
175
87
99
76
98
87
127
119
92
95
69
87
96
157
119
85
76
60
80
147
117
128
69
87
52
109
120
104
138
136
175
72
106
119
88
136
68
147
69
136
113
80
56
94
131
69
99
81
100
127
154
175
128
109
156
127
122
76
89
54
112
96
95
90
88
67
130
136
80
69
114
132
96
112
183
104
122
162
106
69
80
136
75
116
160
90
140
69
156
156
95
147
103
145
69
174
104
114
110
140
74
106
106
96
102
80
107
144
78
96
119
69
78
154
87
69
114
99
154
112
72
160
144
135
93
96
107
120
72
151
113
154
88
115
80
74
69
88
109
100
87
123
88
80
102
120
69
137
83
78
176
209
83
86
110
75
156
88
175
128
89
52
80
117
72
52
93
175
52
78
87
93
121
112
76
104
85
82
110
93
89
80
119
174
95
78
66
52
104
110
91
52
128
119
119
134
141
137
78
78
117
109
110
119
69
117
80
107
109
80
132
156
120
110
87
88
117
102
78
78
78
87
163
134
162
94
87
87
119
140
120
87
69
113
118
89
119
106
92
69
87
142
99
183
119
132
136
128
156
80
69
76
110
80
80
119
119
57
69
153
131
101
110
80
154
117
128
80
120
118
119
155
145
175
125
128
74
87
72
109
94
78
88
145
83
109
88
140
92
134
143
87
134
88
144
74
128
114
175
69
111
76
89
164
151
127
78
175
80
113
90
131
80
154
74
196
136
78
85
113
98
123
155
105
124
136
131
76
115
87
104
69
156
132
119
56
175
99
103
83
63
67
134
74
78
88
78
154
80
112
119
67
78
163
78
85
133
119
175
155
69
163
143
122
89
125
72
80
121
117
156
89
154
154
78
113
119
87
128
80
93
121
96
109
76
69
151
85
54
103
136
74
110
80
136
105
136
98
91
87
76
78
80
95
97
69
175
155
111
69
80
156
94
76
76
69
154
80
72
120
153
78
78
155
175
115
110
149
114
89
69
107
84
89
87
69
99
110
109
120
69
94
116
78
80
80
175
164
80
69
216
101
78
128
76
76
78
142
76
104
112
197
120
80
80
87
80
72
68
69
104
80
78
75
107
103
69
87
128
116
69
80
79
69
85
123
80
175
91
113
107
113
87
52
116
127
103
104
155
140
104
106
69
85
128
72
76
119
121
131
78
76
80
175
76
69
136
80
105
113
175
108
76
131
89
124
136
119
109
87
80
119
78
76
129
69
93
113
118
89
69
110
141
109
69
76
130
69
144
108
134
107
76
128
119
148
87
118
95
89
126
87
76
110
89
80
78
80
69
67
134
107
78
148
143
175
74
69
80
64
175
80
115
69
92
125
80
110
144
88
93
115
174
80
103
109
109
80
109
80
118
154
74
145
112
101
69
107
103
128
119
136
114
119
68
76
107
101
119
76
87
117
140
89
151
111
197
123
87
109
72
80
76
118
127
175
113
80
99
126
98
101
69
71
94
85
110
124
69
106
69
114
88
117
216
126
137
87
69
85
80
80
96
174
93
134
106
134
79
151
154
87
113
143
131
107
119
131
117
82
83
93
117
175
101
91
156
119
57
157
110
175
93
134
128
119
80
99
120
88
116
80
120
79
96
122
120
149
109
87
80
197
94
128
107
123
78
94
80
109
156
91
58
110
151
120
131
87
119
119
112
145
93
87
98
87
72
80
80
56
123
99
126
110
142
69
98
109
88
99
88
120
118
119
122
104
122
140
56
69
129
80
197
76
106
100
109
69
120
120
139
107
119
148
93
136
76
128
120
87
94
96
97
112
128
169
72
131
103
87
95
88
134
105
126
114
101
101
122
95
80
100
104
111
54
72
87
143
80
100
69
128
121
134
76
129
119
78
113
106
91
128
113
154
87
80
121
140
119
91
91
123
76
129
164
69
80
128
74
76
118
144
80
160
115
59
197
69
87
143
112
94
120
107
80
134
69
117
99
178
87
78
154
88
128
126
112
78
92
78
117
156
150
71
104
57
80
87
149
193
95
74
142
88
119
102
129
103
66
175
145
115
80
120
133
120
91
99
78
121
78
87
72
82
102
145
136
151
80
145
89
110
89
68
69
100
89
80
109
109
152
110
78
91
107
119
72
71
147
112
80
69
101
88
78
120
93
136
120
69
80
128
73
125
72
101
123
134
69
59
154
74
85
78
96
154
76
115
69
127
87
138
112
134
175
106
87
124
94
108
80
70
123
120
197
64
93
93
89
110
76
87
86
87
80
80
110
64
105
107
107
80
120
90
80
80
101
76
79
148
119
101
76
122
76
87
87
96
119
72
107
104
87
120
76
87
107
118
154
110
89
80
43
88
88
148
94
52
99
69
127
96
93
110
69
69
110
115
72
69
88
80
88
80
80
201
102
122
80
110
122
133
140
82
78
114
132
155
87
99
120
80
104
115
80
71
120
87
87
128
87
160
87
86
110
80
104
120
77
112
175
134
78
121
76
160
96
119
113
162
144
80
74
94
69
80
93
152
88
67
72
102
80
56
133
76
76
112
131
131
72
99
122
107
149
115
80
105
140
78
134
140
99
96
109
80
76
134
96
119
118
109
78
103
141
72
78
144
153
79
136
122
119
76
151
107
74
128
69
99
87
114
109
140
80
85
76
164
78
131
129
104
80
120
85
115
146
121
69
120
128
111
154
120
107
101
74
131
114
110
134
154
107
80
96
106
151
98
94
121
155
107
88
131
107
69
165
128
107
99
109
119
78
69
101
109
155
133
76
100
106
99
76
98
149
138
145
108
145
80
76
69
163
74
87
119
107
80
110
101
133
95
131
104
90
78
162
80
76
80
89
69
76
103
151
87
111
201
130
154
76
107
112
93
80
105
128
90
80
80
142
80
131
164
112
69
121
76
107
103
137
89
88
120
148
128
99
112
119
80
112
126
119
132
168
147
156
175
136
89
94
80
87
120
128
94
54
88
76
81
155
109
107
126
104
109
80
105
156
89
59
120
69
79
111
102
80
121
175
175
121
91
137
102
89
113
98
91
57
123
107
80
81
104
128
89
72
94
103
69
104
145
100
110
100
80
89
136
114
109
136
78
143
107
69
95
130
88
87
85
138
110
133
69
107
90
93
156
119
104
121
69
76
127
106
113
80
98
85
136
128
114
76
99
133
54
74
112
96
80
93
156
66
89
69
69
78
104
142
109
69
106
102
69
87
76
131
174
109
87
80
136
94
122
74
67
115
119
169
117
140
88
80
154
140
126
72
122
151
121
107
106
78
108
76
103
80
118
92
150
89
69
91
115
93
69
119
91
89
107
120
122
94
134
101
80
87
87
93
94
107
136
112
91
124
119
131
52
69
72
90
175
89
107
89
148
123
87
102
80
111
89
120
130
56
87
197
88
112
134
118
88
80
123
115
80
89
117
131
69
143
76
107
74
83
69
80
154
80
88
76
145
78
107
118
101
88
136
110
119
165
120
175
145
76
87
80
76
118
175
104
143
120
103
146
107
69
75
136
134
88
80
113
111
76
136
160
164
197
69
87
89
96
76
102
69
110
114
175
154
99
121
197
113
80
128
96
78
92
110
110
111
76
120
87
107
101
104
75
128
100
110
129
80
89
52
91
104
76
76
100
121
134
87
131
88
175
132
123
123
76
93
108
80
154
80
69
110
134
72
176
119
78
155
92
78
69
104
76
83
66
164
114
118
78
114
69
54
76
96
131
111
80
83
131
87
134
127
80
90
76
93
87
130
52
104
78
76
68
99
132
113
143
80
151
114
117
123
78
140
121
69
117
69
100
76
136
109
111
127
93
80
69
126
125
95
88
99
79
92
165
128
88
118
80
125
119
175
128
130
131
123
78
128
86
98
87
129
69
112
85
94
89
117
120
128
72
104
143
104
91
78
69
107
127
119
112
88
88
156
152
106
139
107
134
69
127
128
155
87
118
119
134
87
89
80
155
89
87
156
129
104
127
117
88
87
106
119
102
115
87
87
121
89
97
129
87
117
76
129
69
69
130
99
69
146
88
69
145
117
89
107
154
129
100
80
101
80
83
110
120
76
94
96
95
95
136
131
160
146
128
174
94
146
134
185
128
197
76
87
87
126
78
99
80
145
113
143
67
136
110
128
107
91
111
76
130
176
69
107
93
154
111
99
88
90
118
80
117
69
113
133
157
107
143
101
114
69
110
107
114
119
72
117
74
120
117
104
69
43
163
107
113
128
80
115
76
78
80
112
112
64
154
146
128
115
80
110
76
121
80
107
99
89
116
97
154
78
118
94
117
136
111
78
88
99
164
80
80
120
87
117
107
92
119
109
96
78
64
105
112
119
52
94
103
104
74
78
76
69
134
97
80
78
89
107
122
87
54
126
91
76
175
94
94
104
69
118
72
99
78
112
87
80
89
181
88
76
108
76
114
94
91
197
93
111
113
69
93
111
144
140
104
173
113
91
140
175
69
76
101
119
76
69
149
110
112
80
156
120
80
114
80
78
128
133
104
134
78
119
157
72
137
85
109
78
69
140
87
80
106
102
164
113
69
142
98
199
91
91
96
67
72
111
94
140
141
104
90
119
135
87
100
87
140
72
128
133
117
137
69
109
128
95
176
151
78
94
109
80
101
110
114
69
80
119
87
80
69
104
110
94
82
80
67
98
69
155
119
69
175
121
76
138
107
132
52
80
91
116
110
69
183
99
80
76
103
113
131
87
111
114
118
120
96
164
80
91
122
104
87
151
120
151
120
109
106
146
142
91
76
104
110
137
137
94
80
106
109
99
88
140
121
175
134
93
117
78
87
128
72
109
122
102
80
80
80
134
103
119
152
75
72
135
98
128
122
69
91
127
113
80
121
102
103
88
128
86
107
121
74
119
80
89
118
72
69
87
94
120
129
152
109
156
80
80
114
114
100
118
80
155
101
140
114
106
110
151
111
101
69
121
89
76
94
156
90
78
74
87
122
63
148
119
102
112
72
130
136
119
164
84
175
69
69
127
76
146
80
78
88
82
121
107
88
76
110
112
113
146
136
138
52
118
140
78
87
109
106
76
87
124
119
148
136
100
107
78
103
154
93
110
137
86
56
183
115
106
124
107
122
89
87
89
125
121
127
78
156
137
80
122
160
66
156
80
128
129
138
104
112
87
78
107
66
175
109
132
87
162
89
87
78
87
130
90
83
98
140
76
78
119
69
99
120
138
109
90
105
120
156
106
69
107
80
78
89
132
80
122
78
108
93
102
80
78
87
134
128
76
69
137
93
197
99
88
88
119
80
69
80
111
199
76
76
128
78
107
138
94
156
136
99
87
80
104
76
96
78
85
110
96
110
106
103
148
103
134
119
107
126
80
69
113
121
120
147
112
120
101
100
120
80
127
78
163
76
78
88
75
137
175
78
69
157
175
126
123
69
69
81
96
90
78
132
80
107
69
154
96
69
154
110
104
80
69
81
88
72
78
181
80
78
175
119
137
76
80
95
87
80
137
69
117
114
97
110
66
78
73
111
93
102
80
107
119
134
119
112
88
106
156
54
183
76
80
102
76
136
108
197
67
131
109
104
76
87
78
115
165
121
118
128
125
104
126
89
107
76
128
143
87
109
111
123
91
153
134
94
158
152
69
110
87
74
76
151
107
125
97
135
136
120
57
112
110
154
127
121
69
76
78
78
69
122
101
119
96
119
78
156
100
64
70
159
137
99
99
67
72
101
79
92
113
156
78
143
122
129
91
85
146
76
119
111
76
80
69
87
136
123
154
137
76
113
94
88
77
142
88
97
69
115
98
119
133
154
164
75
154
110
80
144
52
137
110
110
119
120
128
107
54
78
120
52
174
122
140
88
121
78
119
119
104
154
78
86
133
120
124
78
80
89
87
107
101
131
85
54
80
92
120
76
80
104
72
109
120
109
151
89
115
64
90
94
119
69
69
150
69
146
126
175
98
154
75
111
111
87
80
142
100
156
120
156
119
152
112
107
138
76
91
89
163
80
138
114
140
171
106
87
117
89
151
166
89
78
116
156
88
72
80
155
155
80
80
75
118
56
115
101
132
69
145
80
88
149
118
103
165
78
134
88
91
54
112
175
132
104
80
89
80
72
96
80
93
78
80
100
77
199
145
123
113
115
119
110
151
115
128
69
119
99
80
154
201
87
118
141
134
105
95
89
89
88
119
103
121
156
101
85
78
87
90
99
106
124
142
132
117
113
99
160
121
115
104
122
100
120
80
100
78
94
80
94
156
129
113
78
92
91
119
128
98
120
88
69
103
80
89
99
104
92
106
80
87
140
106
69
109
87
113
112
112
99
110
104
145
82
146
175
89
113
136
130
127
69
93
69
145
89
96
94
117
89
119
80
125
109
128
64
80
197
106
87
154
87
148
118
134
76
154
121
85
155
80
80
87
87
69
121
119
120
119
120
175
120
141
80
94
128
120
80
175
175
119
107
101
154
137
104
147
89
175
99
99
120
113
87
120
121
111
97
109
127
80
133
85
78
87
101
76
73
80
100
123
76
131
89
128
74
147
114
79
96
87
114
132
134
122
56
175
120
110
113
106
89
78
131
111
78
80
109
88
122
74
101
104
52
77
157
106
123
122
122
154
72
119
75
87
87
130
98
175
98
76
124
156
120
96
166
71
128
129
91
91
67
122
154
130
127
76
99
87
88
67
110
147
94
69
106
121
66
118
100
120
104
88
124
147
121
99
87
119
78
145
126
91
69
54
106
91
119
154
76
84
107
112
87
109
115
88
64
143
118
78
80
175
69
112
103
100
106
146
112
115
128
119
100
110
128
52
103
76
93
156
118
76
91
128
136
197
104
102
80
107
87
75
87
58
90
99
80
109
94
107
89
83
84
96
88
140
136
117
80
91
93
99
165
87
130
91
94
95
92
69
106
87
87
85
87
69
96
131
69
109
197
131
87
119
121
96
176
99
92
85
78
121
111
93
117
118
89
121
110
89
80
145
175
69
113
137
69
104
134
72
163
43
119
80
103
175
114
98
209
127
90
175
111
91
80
69
106
117
78
146
76
123
99
145
140
69
145
83
80
99
78
103
91
69
113
87
59
69
80
129
89
96
69
123
151
80
75
69
136
107
93
87
103
80
69
102
69
87
146
76
164
102
91
90
76
74
80
80
145
131
120
120
107
109
80
153
80
64
78
87
120
113
89
94
69
123
84
120
94
136
156
100
78
122
201
117
88
143
69
69
120
110
67
69
142
140
78
72
85
146
87
131
80
104
113
127
130
69
101
88
87
127
107
116
124
112
109
175
113
129
89
80
120
103
87
89
120
115
163
86
78
123
111
120
85
106
129
94
90
149
120
86
124
109
146
90
69
76
88
113
143
80
54
123
80
130
78
63
78
72
121
130
114
151
54
94
85
124
121
144
113
120
109
104
54
88
90
130
135
113
109
114
74
131
134
94
76
93
117
79
106
96
78
128
52
99
80
107
76
82
130
92
134
119
87
98
100
104
106
106
119
175
87
69
129
113
78
80
107
151
106
139
87
80
67
87
98
138
112
96
87
80
91
69
121
76
86
125
128
146
114
175
80
139
121
102
52
113
185
80
64
79
93
99
107
85
175
154
54
63
128
83
79
156
80
89
87
106
98
120
69
106
127
102
117
89
78
136
127
162
120
85
150
154
108
123
159
131
69
76
91
128
76
56
69
80
120
136
80
169
102
99
110
153
126
63
109
57
98
99
112
109
80
87
83
120
138
69
91
80
88
130
100
76
80
76
96
85
91
136
88
52
151
107
87
148
101
131
140
87
54
67
144
78
104
67
128
110
74
113
80
72
109
117
120
104
69
100
121
91
76
107
156
72
131
140
75
69
87
109
94
112
87
110
94
56
78
78
149
128
107
80
94
69
175
145
174
104
80
80
96
146
80
124
102
109
99
76
80
89
153
106
155
112
131
76
114
94
88
89
113
80
119
112
156
71
151
134
134
78
126
93
69
145
93
107
76
109
69
88
126
128
143
117
75
120
96
145
136
119
88
103
114
123
102
107
54
136
151
145
79
107
132
87
103
89
113
69
110
112
69
99
75
87
197
69
78
78
109
118
76
110
101
85
136
106
175
100
151
99
89
131
117
100
129
102
80
94
119
88
78
80
80
161
80
54
115
122
93
69
114
69
72
67
109
80
118
165
136
100
137
136
119
132
134
80
118
110
69
89
91
72
136
118
87
80
175
121
87
52
80
147
87
151
79
89
154
80
133
143
54
88
102
110
102
132
156
120
102
87
106
131
119
131
107
69
139
94
107
76
119
144
94
80
113
94
107
124
107
106
113
162
112
99
77
109
107
89
144
125
80
85
163
74
154
54
104
101
94
105
69
197
138
95
91
69
76
103
80
112
131
80
98
131
125
164
78
88
117
109
136
75
100
113
120
89
155
69
87
197
69
148
87
85
87
69
80
80
101
128
112
109
163
87
119
140
102
107
145
99
128
133
78
85
151
103
87
110
113
110
78
101
89
131
175
94
160
111
101
94
80
166
52
58
142
94
113
87
56
101
80
120
80
94
78
128
131
76
121
125
134
127
110
100
141
111
120
110
76
80
78
83
121
123
88
80
83
120
93
120
72
80
102
109
126
123
87
56
76
82
107
181
97
87
128
109
119
122
78
106
115
123
114
110
104
78
88
107
76
69
146
80
89
94
76
153
103
69
80
72
52
104
80
135
119
143
110
119
106
101
120
72
136
91
69
73
93
137
140
86
89
85
127
88
121
90
119
127
163
139
116
84
155
120
121
78
88
137
80
69
159
102
154
69
100
139
107
80
80
102
137
151
155
128
110
80
119
76
175
122
96
80
88
72
87
109
119
88
93
69
93
78
109
43
101
80
80
110
136
80
83
89
43
122
59
109
112
69
78
72
91
57
174
69
120
113
82
146
87
87
119
87
109
80
122
69
80
93
76
43
76
64
52
76
72
148
72
99
96
128
83
118
80
197
98
140
107
121
102
175
146
154
67
108
85
133
119
128
126
69
88
131
78
134
109
126
113
154
115
101
69
91
130
107
100
110
80
146
120
74
113
128
174
107
80
107
88
111
137
80
139
114
69
119
131
128
142
87
95
106
72
91
142
80
91
69
114
111
118
94
74
87
113
80
113
76
128
148
80
98
78
125
152
107
119
93
76
97
89
132
131
151
80
80
97
100
102
80
80
78
132
102
85
72
154
119
120
91
121
138
89
99
93
78
109
76
69
136
128
87
88
102
78
140
101
152
116
59
80
87
95
87
95
123
52
76
119
175
69
108
120
88
76
80
66
121
128
87
69
109
109
107
111
122
128
78
88
165
99
124
112
106
196
100
90
106
87
147
106
80
99
71
120
80
59
89
99
76
117
125
112
120
69
104
120
136
110
154
112
133
85
83
119
103
131
124
69
160
151
116
119
82
119
106
102
146
99
125
165
131
88
154
85
130
119
127
136
102
175
69
87
175
154
110
120
74
96
107
119
80
119
122
175
96
98
87
78
87
146
72
43
122
127
76
175
96
109
87
78
80
136
99
87
90
125
131
120
106
118
139
109
112
113
54
108
101
103
100
75
131
146
76
114
143
155
151
76
140
144
128
76
107
123
110
87
52
107
110
146
90
175
80
100
74
74
76
80
136
115
74
107
139
102
117
126
120
110
101
89
157
123
109
69
104
106
128
104
69
199
155
118
128
83
175
69
121
123
114
99
119
80
94
174
80
69
87
52
80
69
95
136
107
126
162
87
104
96
140
96
107
96
133
91
58
104
63
78
76
106
87
144
117
107
69
128
132
72
80
133
72
69
127
78
69
110
101
108
78
135
152
107
80
150
58
105
160
104
146
110
107
197
123
89
140
123
110
156
131
94
142
110
144
72
119
119
102
80
121
115
101
150
137
80
102
110
119
76
119
86
87
89
129
146
175
122
134
81
118
107
80
79
175
66
117
69
94
69
114
80
80
116
119
120
87
147
80
96
175
80
163
143
80
150
104
128
99
99
113
114
127
69
102
91
130
104
76
88
155
137
145
120
151
86
112
114
111
91
130
119
69
87
126
99
87
69
94
110
94
88
127
129
82
165
80
69
69
80
87
140
59
94
87
99
113
90
100
80
130
120
104
149
113
87
74
103
120
88
120
114
80
91
151
126
121
103
106
87
84
140
115
187
76
94
140
100
121
94
128
83
87
58
120
89
134
90
112
74
69
120
100
76
80
145
103
145
56
74
88
104
80
130
69
120
99
77
106
104
145
109
69
106
72
80
92
104
131
72
89
89
102
76
89
119
99
134
178
69
94
99
139
166
90
117
156
74
69
92
143
122
128
72
113
104
197
183
115
131
88
96
69
120
78
76
78
162
106
107
67
140
102
125
109
155
106
82
121
140
185
126
102
121
74
90
106
134
93
128
157
103
129
80
107
144
131
106
185
137
110
144
87
154
146
72
128
151
128
110
155
71
69
78
90
112
102
145
121
80
112
80
76
99
117
95
74
143
152
120
117
76
96
121
80
120
154
112
88
128
118
96
104
129
112
80
114
82
130
99
128
78
76
78
183
100
125
85
137
145
69
108
87
69
93
72
142
67
134
69
88
76
99
120
110
66
109
69
134
69
111
69
95
113
147
107
72
69
109
166
89
99
145
124
130
130
76
123
154
87
156
119
91
197
118
115
95
91
90
106
113
80
83
69
80
92
80
56
107
124
87
104
80
102
99
148
80
80
76
72
73
125
80
163
125
95
94
78
131
69
122
137
87
109
112
106
72
80
128
69
174
118
120
119
76
86
162
80
91
76
69
175
136
104
80
111
109
119
163
117
136
107
93
69
82
69
134
80
146
151
74
80
90
127
76
144
145
119
72
122
79
69
130
102
129
126
115
117
68
87
112
56
76
78
109
72
91
110
156
93
175
136
91
119
174
87
107
117
129
126
56
89
69
113
115
112
66
113
130
76
80
87
69
92
96
82
100
54
102
107
164
119
102
115
124
140
146
103
88
175
89
89
69
78
87
80
76
185
123
151
80
104
90
112
110
69
79
106
99
123
72
125
80
120
131
110
90
69
145
76
94
156
72
54
80
104
104
92
134
66
114
74
122
83
69
128
56
106
144
123
80
80
78
125
96
156
101
144
69
94
115
145
129
127
154
163
89
94
144
91
112
103
60
100
99
101
114
93
87
54
107
146
106
141
91
102
107
100
80
136
130
106
101
94
91
175
110
80
129
199
119
164
74
128
140
174
104
128
197
93
128
127
93
119
134
95
121
99
134
69
154
112
148
127
103
87
121
85
102
93
89
80
80
175
111
151
119
140
80
110
127
103
123
134
52
52
156
78
183
163
80
118
132
119
175
72
99
80
126
59
73
151
116
98
175
87
80
69
159
155
119
155
93
117
110
76
99
117
87
67
87
107
79
112
80
83
80
87
112
175
96
87
102
155
54
103
80
120
128
126
72
95
132
108
148
113
72
175
149
96
73
87
52
125
146
120
107
76
91
52
69
104
119
184
135
104
79
133
117
80
183
138
156
69
114
80
120
78
110
54
106
201
120
140
78
119
111
123
122
54
128
82
80
80
115
93
155
156
111
100
175
74
106
119
152
115
76
136
155
87
101
69
71
78
75
94
127
131
99
76
111
160
95
94
87
107
115
108
91
69
106
82
117
136
87
136
175
87
143
76
80
80
87
60
117
102
132
94
132
143
120
107
91
111
88
154
69
92
130
80
121
107
118
134
129
69
103
110
119
76
113
109
99
57
151
103
69
108
99
77
90
136
104
107
109
112
87
94
108
110
56
104
78
88
96
93
119
136
80
117
124
106
155
119
121
80
146
69
89
80
106
137
108
183
68
83
85
78
60
127
102
82
107
93
88
94
142
102
68
143
80
116
108
162
78
175
107
158
107
121
119
199
52
136
87
113
106
96
78
113
80
69
78
69
87
161
89
105
76
109
183
121
80
93
117
69
154
154
102
100
181
80
80
91
87
87
91
164
145
105
78
199
80
163
131
71
89
106
87
137
73
69
155
154
93
72
87
80
109
75
102
87
89
111
76
103
63
74
137
157
80
119
175
117
145
130
146
80
100
80
80
87
80
74
175
104
134
83
80
126
128
175
87
87
78
118
99
80
110
94
119
156
76
137
134
76
76
87
124
90
69
69
138
89
69
107
115
126
76
118
106
104
94
69
80
127
146
154
76
72
127
119
106
80
129
117
117
146
120
80
145
106
104
175
102
148
121
120
168
134
142
90
69
164
69
69
87
117
122
120
143
169
104
80
136
87
103
82
187
69
85
87
152
87
120
136
175
87
87
126
118
127
139
144
172
93
131
80
95
102
113
67
76
120
104
142
125
64
83
76
96
117
99
175
83
110
118
69
80
96
129
169
76
69
126
112
100
163
112
175
87
76
78
155
66
98
67
64
80
148
101
152
88
175
79
109
87
119
113
149
99
75
114
109
112
132
83
144
138
86
78
91
98
76
109
69
102
118
88
87
74
78
120
147
76
78
122
127
119
69
78
128
99
69
80
80
130
154
104
175
121
156
116
106
80
74
98
87
93
109
109
94
94
131
118
164
106
76
129
111
109
80
111
183
87
112
119
87
69
115
152
120
118
101
93
102
69
78
109
80
130
85
80
88
155
95
76
113
69
122
74
109
107
129
119
154
96
96
101
79
109
117
80
154
101
80
112
69
112
144
111
52
76
110
107
117
80
81
99
105
76
151
131
133
80
87
91
115
78
88
119
87
74
154
155
127
91
104
125
114
110
119
109
125
104
91
119
69
54
90
99
109
135
104
43
89
113
94
129
79
82
80
78
136
119
119
72
102
80
120
154
96
123
69
119
78
76
96
87
54
114
76
127
78
56
87
72
150
115
143
80
80
97
68
112
98
78
78
118
91
140
154
67
90
151
101
197
147
100
89
136
128
89
130
129
197
93
133
76
103
154
120
69
104
72
93
78
110
164
131
119
87
100
107
101
69
89
72
89
102
69
82
115
119
80
122
104
121
128
128
118
91
115
129
54
120
148
106
111
107
112
69
147
90
110
80
106
120
99
78
107
183
108
76
93
107
119
174
80
117
109
129
175
85
128
87
87
134
143
80
110
113
117
78
113
107
118
128
107
80
93
109
120
52
140
96
78
134
87
87
119
142
88
93
119
136
54
67
104
56
175
93
106
111
117
119
151
110
94
110
99
85
107
110
118
99
104
69
119
78
133
78
69
95
78
99
152
99
175
92
134
121
144
72
155
175
106
197
104
80
120
89
96
69
87
89
119
135
120
94
154
80
78
87
87
129
93
117
132
88
114
106
85
125
107
110
140
79
119
141
142
136
124
90
76
110
126
87
107
121
107
127
69
94
174
80
69
79
106
175
87
135
85
155
80
113
133
43
115
156
123
91
136
146
156
154
83
107
87
52
88
80
125
80
109
128
150
72
152
120
106
106
123
69
136
75
104
102
80
69
119
117
96
125
56
125
137
87
87
156
197
80
128
96
58
131
81
117
88
123
71
71
78
78
78
109
163
78
134
56
155
107
87
72
99
143
90
106
136
78
99
117
154
107
74
164
104
80
67
136
98
155
132
109
156
127
80
91
78
80
109
107
69
181
143
140
168
94
78
113
94
102
80
88
174
69
94
131
131
175
80
109
94
87
117
109
154
75
98
80
85
83
76
114
148
175
143
115
181
138
87
76
106
94
109
120
72
87
110
80
92
80
109
54
132
87
113
74
136
154
88
128
78
134
101
80
74
119
72
79
76
67
88
69
123
79
69
122
87
80
113
149
131
128
94
54
105
89
107
96
100
69
69
94
69
94
151
78
121
140
128
134
64
69
148
175
119
107
69
87
104
133
116
164
134
78
69
69
69
100
72
105
129
99
69
115
80
87
174
121
154
128
80
121
88
140
88
115
103
120
69
119
130
106
80
117
120
131
140
116
117
143
150
86
94
91
100
106
119
72
83
102
76
112
131
69
80
113
87
80
94
80
127
101
87
107
87
113
106
109
121
111
107
106
112
114
119
90
88
85
80
107
78
93
185
107
175
106
82
118
88
91
69
106
121
110
88
69
136
99
110
113
107
145
56
118
102
52
69
89
119
59
134
79
76
111
69
107
114
103
69
95
140
143
119
143
145
52
154
100
109
122
133
92
80
92
88
88
119
76
80
156
60
95
87
74
134
63
78
104
83
165
80
146
131
121
120
80
80
130
91
69
92
80
83
80
122
93
126
80
88
197
108
72
76
154
72
175
80
98
161
127
72
62
76
142
78
69
99
101
133
80
151
175
96
127
87
137
99
64
72
120
91
163
132
121
52
69
80
113
149
162
140
69
80
80
140
78
80
60
136
91
136
94
87
112
69
60
123
102
76
88
89
110
126
156
69
102
93
80
117
136
80
80
130
110
119
99
69
147
156
80
160
149
107
131
107
119
54
127
106
143
145
145
88
144
80
87
114
154
155
131
78
107
80
128
78
80
120
134
175
164
76
121
111
103
88
80
113
69
80
137
89
88
148
110
102
102
69
114
174
116
131
69
134
120
72
96
197
76
87
120
80
78
89
104
160
120
120
99
96
119
127
89
93
134
144
87
76
136
115
104
140
69
154
106
69
83
67
78
128
99
72
112
134
121
127
87
131
54
110
114
72
156
91
87
119
85
76
111
98
104
117
78
69
175
98
120
69
118
119
163
80
154
87
128
174
110
76
139
117
80
69
87
131
80
105
79
175
109
115
89
69
87
156
95
163
153
144
109
131
88
163
155
52
96
87
134
110
80
148
80
110
80
117
109
96
80
121
87
104
104
118
93
96
87
119
80
109
78
115
119
117
96
127
80
120
113
115
106
87
121
109
107
117
129
87
133
87
119
129
122
104
94
54
69
69
131
87
137
54
80
164
116
69
175
99
72
75
143
117
95
128
136
80
94
100
96
125
72
104
80
134
118
60
94
156
122
119
111
80
80
121
131
94
175
76
117
107
83
116
104
90
95
146
78
176
146
113
99
76
74
88
87
125
78
122
78
154
80
79
151
87
99
154
150
117
106
74
144
103
78
88
52
80
134
104
98
132
110
78
87
111
107
69
89
80
154
136
145
78
64
120
162
99
121
175
89
69
120
114
80
115
80
114
156
78
155
144
109
77
154
83
80
76
131
101
80
154
91
71
69
86
175
112
125
69
148
87
80
136
128
163
80
107
96
87
91
197
164
113
114
129
132
172
114
113
156
121
113
119
76
80
119
126
78
117
80
64
88
72
94
130
120
131
101
164
99
109
90
87
163
78
76
68
126
114
97
97
131
183
101
138
118
136
119
78
99
69
94
118
94
78
69
69
89
110
80
91
71
76
89
118
69
99
106
123
154
80
69
87
69
127
156
119
134
93
99
52
113
72
93
120
143
140
135
99
131
113
112
94
89
109
116
93
63
69
119
87
104
103
60
87
91
72
87
127
134
164
67
78
76
78
111
80
118
134
187
69
78
99
159
140
175
76
88
80
175
80
98
111
128
94
155
120
89
76
91
87
120
107
69
87
163
52
148
76
94
82
76
80
100
115
122
155
111
87
76
119
111
120
155
136
82
107
94
95
114
60
129
87
121
156
87
101
89
80
96
139
94
80
91
156
80
107
78
114
80
84
175
93
54
118
116
69
94
94
124
69
113
80
88
175
114
107
96
140
90
197
175
104
113
107
89
112
69
110
107
91
76
109
80
107
94
69
143
76
117
80
87
156
72
69
76
80
81
134
69
112
87
140
174
69
76
80
104
121
69
146
131
87
154
109
155
89
115
98
111
101
87
80
128
78
124
87
98
112
138
128
80
119
117
52
69
99
120
143
75
114
80
135
199
175
80
79
134
92
140
126
96
104
138
117
76
96
96
101
76
119
130
107
84
69
114
128
80
100
128
96
125
96
117
96
131
99
165
124
110
124
99
135
98
121
43
74
117
120
142
76
175
120
89
131
87
129
88
187
87
87
91
96
110
78
133
120
107
74
109
140
91
122
137
142
76
143
76
72
52
78
126
134
69
80
88
75
114
89
96
121
76
88
96
99
69
89
96
145
95
123
89
107
91
82
112
151
131
78
131
87
87
137
76
79
123
201
164
152
106
110
76
130
146
134
76
69
128
68
111
101
91
96
78
78
122
85
72
134
80
175
110
121
119
123
145
85
87
80
74
175
68
69
197
74
82
106
143
113
156
76
145
83
106
107
150
94
99
166
110
136
98
97
104
117
90
110
99
168
115
152
122
148
91
80
94
80
117
66
185
107
185
131
131
88
155
96
66
155
124
66
96
151
69
144
79
119
71
66
128
80
119
109
118
145
78
80
121
69
156
130
163
43
123
112
112
91
146
149
128
78
135
76
122
94
95
69
69
92
109
144
87
87
107
120
155
140
92
113
90
175
120
89
93
115
103
131
122
120
149
152
127
114
89
112
167
110
127
119
43
93
120
155
121
109
76
117
138
69
149
69
137
124
120
89
87
88
137
150
102
79
99
175
118
137
104
176
175
121
91
126
166
112
122
76
94
94
117
80
58
94
123
78
99
134
43
80
134
121
60
131
130
154
58
107
109
128
109
103
88
80
80
96
133
114
101
78
112
128
107
201
98
80
111
88
85
69
91
74
151
69
76
134
159
127
134
175
155
132
92
69
78
107
175
154
94
107
120
131
110
133
69
96
74
66
69
120
83
136
80
87
87
80
98
107
175
172
136
83
78
166
92
102
80
98
140
154
87
174
119
80
112
100
88
112
99
122
74
69
69
119
114
155
80
99
131
152
104
69
203
119
91
128
69
175
80
99
114
175
88
130
164
87
77
80
197
117
154
140
109
113
120
119
83
107
94
134
145
128
78
76
175
107
69
99
183
69
85
134
107
113
128
89
125
131
91
97
76
74
117
94
112
109
146
131
85
175
110
106
87
107
154
91
110
111
111
119
131
121
175
72
145
82
121
156
120
93
127
108
107
80
99
127
85
109
128
69
67
72
89
88
54
89
112
52
137
121
137
69
69
106
121
78
76
110
80
133
137
88
69
128
117
120
80
124
107
129
80
101
128
87
67
69
72
127
89
88
120
94
117
115
129
76
80
121
80
95
78
109
136
107
150
146
105
74
136
148
80
78
72
123
163
85
93
129
75
79
89
87
136
155
80
164
137
175
117
175
115
99
78
124
89
132
78
107
164
139
134
95
197
128
158
91
155
114
160
175
112
126
154
122
94
98
94
135
69
111
80
113
104
76
115
99
143
107
110
76
121
92
96
111
69
106
118
78
163
78
95
146
134
97
129
113
88
122
74
52
110
157
123
96
96
76
112
133
154
87
113
69
126
78
78
164
80
87
141
104
119
152
80
132
101
87
80
111
80
104
154
175
119
107
94
89
80
69
96
95
110
121
80
154
72
153
99
81
175
69
137
99
87
129
106
82
99
127
197
78
151
79
146
110
175
128
130
111
121
175
132
106
128
104
175
155
78
121
134
80
111
87
109
121
119
102
78
96
112
80
147
89
104
175
97
56
78
120
103
80
93
148
111
110
110
151
80
79
78
134
106
157
69
134
183
119
131
88
140
145
121
76
99
91
133
85
110
52
140
134
155
74
80
80
156
99
75
124
104
99
111
99
87
107
80
130
80
76
140
99
134
69
78
69
80
145
113
112
101
119
156
119
100
99
126
175
80
201
128
98
90
80
94
69
64
76
99
76
102
58
94
107
106
90
110
197
93
69
78
94
149
131
112
126
131
104
116
120
96
99
117
145
100
187
152
89
154
104
76
175
120
128
109
99
80
88
87
134
99
67
119
134
163
80
78
80
127
115
85
88
121
107
144
137
78
80
119
157
164
113
87
78
76
107
79
106
97
86
74
126
112
107
144
76
113
109
154
80
69
120
100
115
149
123
78
109
134
140
80
89
163
142
69
132
117
110
134
113
142
125
80
72
93
113
69
127
96
99
107
163
112
52
72
72
95
101
132
154
94
89
128
83
102
119
153
80
102
106
122
78
72
151
110
94
101
78
91
109
120
101
78
129
133
76
151
133
95
132
137
154
151
69
68
87
89
66
120
128
131
119
80
104
123
120
89
69
69
76
156
80
123
104
74
107
94
112
80
122
99
140
87
119
156
164
80
118
109
197
145
87
78
74
131
64
72
197
147
136
163
128
154
73
100
93
142
112
151
90
90
87
136
96
120
117
129
101
117
99
128
175
121
115
93
72
99
111
80
106
123
126
99
80
107
155
80
80
59
80
109
69
78
175
121
115
76
80
57
134
113
169
110
88
112
78
107
80
87
160
72
80
69
91
78
146
89
80
128
126
104
80
80
209
112
133
99
117
114
151
87
146
88
100
76
109
101
143
78
106
123
151
111
107
94
88
91
133
137
80
122
80
89
107
97
123
101
157
75
96
85
119
107
96
118
110
107
104
74
118
154
87
89
114
136
112
138
69
104
80
200
106
80
104
93
199
149
80
141
151
112
107
128
127
151
78
136
87
142
80
127
80
69
128
136
153
99
94
120
197
76
116
123
122
126
119
156
119
110
96
120
94
87
124
115
80
98
117
43
93
112
52
131
64
80
110
80
146
128
93
151
110
76
104
74
80
117
151
110
94
90
80
175
76
120
137
109
108
154
69
94
104
159
149
80
99
54
114
104
154
69
151
128
76
64
155
110
119
174
99
149
115
107
119
86
131
109
95
80
88
91
137
89
113
80
56
88
152
110
175
56
175
128
131
80
103
96
87
88
121
104
101
136
146
88
146
117
120
114
80
119
164
109
127
108
72
80
69
93
144
117
94
107
98
121
76
137
128
155
69
91
121
80
80
88
172
140
129
87
80
67
110
140
87
154
96
104
80
110
174
152
96
143
87
147
76
69
76
78
145
78
69
71
117
74
69
155
87
120
160
87
80
103
80
119
69
80
87
71
99
88
110
136
154
102
131
87
52
119
113
87
69
72
119
144
148
72
106
89
74
142
52
187
144
87
72
140
78
88
68
93
112
119
114
151
119
120
76
106
121
107
118
127
107
120
123
101
117
140
75
156
156
128
123
96
78
87
87
126
66
120
98
88
95
120
78
113
72
133
154
79
121
92
98
129
80
106
136
54
96
87
89
145
78
94
121
71
132
87
175
72
119
174
78
85
128
106
87
89
113
80
76
69
72
73
75
80
80
120
137
98
114
134
76
145
128
76
135
104
106
107
91
96
109
135
69
126
112
76
119
159
175
101
80
69
102
131
103
128
126
123
109
119
145
109
76
76
69
112
87
143
96
78
104
79
87
106
76
175
80
124
175
109
145
83
121
114
54
69
134
89
87
128
112
101
128
80
133
107
107
132
87
69
136
123
75
114
175
147
100
119
197
71
91
121
112
131
93
124
120
87
154
120
122
76
67
156
106
94
117
87
97
88
148
128
69
154
120
69
133
99
113
123
87
131
110
113
85
124
58
52
104
83
78
136
117
78
120
142
154
69
154
134
155
87
152
78
136
101
113
99
106
89
69
113
83
78
126
100
72
160
78
80
80
80
115
93
93
87
154
98
99
95
175
80
126
106
119
88
115
72
88
68
136
75
71
107
120
80
156
115
109
107
78
99
94
56
101
87
69
99
123
69
140
118
164
75
74
110
133
76
118
110
126
88
69
125
107
131
154
106
117
80
80
109
130
104
143
87
106
136
87
76
72
94
155
72
69
150
181
89
110
80
154
120
110
119
155
79
87
54
76
120
120
87
80
69
80
154
122
126
121
93
98
122
95
137
130
91
130
80
142
151
197
104
80
76
76
96
109
99
112
163
109
98
87
88
113
115
99
87
123
88
113
106
100
72
69
110
88
69
87
88
88
94
96
100
72
154
80
96
121
80
110
116
133
78
76
124
89
138
132
83
114
54
83
112
102
72
155
122
116
134
146
69
111
80
105
113
91
57
115
80
80
96
74
145
78
113
114
119
154
142
80
87
110
156
156
59
87
76
87
43
96
117
89
77
136
118
109
80
128
99
108
163
146
117
137
111
80
76
69
85
155
165
83
58
164
128
148
104
101
144
69
80
74
159
89
100
69
151
129
69
127
104
130
78
154
136
95
159
114
72
71
80
119
80
88
74
78
78
89
151
131
197
85
128
104
108
155
119
102
134
121
131
154
102
146
69
138
91
83
110
69
80
144
112
109
69
89
147
154
87
102
101
102
109
154
80
144
128
100
144
76
76
107
88
99
78
72
76
140
43
120
99
67
154
87
80
80
111
137
96
161
181
145
93
134
91
112
89
119
69
80
94
175
69
99
114
106
69
143
93
78
80
136
87
54
91
102
96
100
154
69
129
144
69
102
99
128
140
117
80
81
80
121
109
88
76
117
93
120
78
88
78
72
106
89
113
99
121
69
110
117
88
136
154
87
142
80
107
145
94
87
87
69
87
109
136
87
69
80
175
71
99
76
115
72
131
80
95
80
103
147
89
69
156
131
80
154
80
80
128
69
113
111
80
146
102
154
80
114
80
107
118
154
117
74
119
110
101
87
147
63
117
149
127
110
80
69
119
99
126
119
78
101
99
80
110
80
80
117
80
88
102
106
75
101
80
80
119
104
80
155
175
113
147
154
133
134
80
78
104
78
71
163
87
101
99
78
67
154
85
78
145
100
75
128
54
113
131
162
104
110
130
137
114
118
94
123
154
92
80
154
72
80
91
98
120
117
112
80
119
88
85
144
109
85
162
69
80
87
78
141
80
138
80
88
99
109
78
112
80
104
172
93
96
81
154
59
91
94
194
106
120
163
94
107
140
72
78
146
113
120
109
92
169
120
142
114
115
122
107
125
155
142
109
100
109
109
108
78
157
124
87
118
140
84
80
89
83
112
91
94
94
69
175
80
124
175
93
109
136
136
104
100
91
135
107
131
96
121
78
140
113
78
102
120
94
90
102
83
108
185
110
114
92
78
104
146
120
96
74
125
80
121
119
107
80
113
118
104
87
154
88
119
151
99
105
114
110
164
93
94
146
121
78
127
94
80
125
83
80
122
175
78
154
80
156
107
96
101
96
78
109
121
91
107
93
117
131
99
186
154
72
156
69
118
175
78
88
91
91
80
175
91
106
80
89
80
201
110
112
87
80
60
87
99
136
106
159
78
54
131
80
76
98
113
197
120
143
88
137
80
90
123
85
127
93
109
113
166
117
78
93
87
126
154
91
78
128
177
96
119
111
69
80
80
117
119
80
69
102
89
52
110
96
119
142
107
131
154
163
175
102
136
130
129
119
78
101
109
83
87
76
69
119
113
80
76
99
81
175
79
80
106
106
78
117
127
100
137
116
121
87
117
103
145
80
69
91
117
100
163
112
100
69
138
110
85
99
78
97
113
76
106
104
148
98
132
80
123
106
112
134
101
94
109
110
143
131
106
106
136
74
82
137
78
78
82
115
89
111
117
115
101
128
115
163
63
102
145
128
137
154
69
115
124
80
136
151
69
128
114
119
81
151
76
99
136
144
137
120
80
144
88
54
154
108
108
80
131
72
80
136
126
87
87
87
76
69
91
136
125
106
110
107
69
87
120
80
110
109
91
80
94
136
166
175
144
94
110
128
78
88
122
52
54
89
132
69
125
80
122
69
134
150
109
96
89
122
88
78
154
69
76
152
80
112
89
143
94
72
89
76
87
145
136
99
87
112
80
69
88
76
125
69
87
110
104
80
76
107
100
117
144
117
89
99
126
91
81
96
100
165
83
154
175
118
127
104
100
69
106
92
88
147
112
92
93
175
43
83
59
56
80
91
104
175
119
140
140
125
89
88
154
80
110
96
114
72
115
119
128
99
101
119
100
78
76
76
99
78
89
120
80
94
76
76
143
99
80
76
99
80
119
87
152
78
80
78
54
119
146
83
80
151
89
113
120
69
134
102
104
138
100
82
169
156
99
78
69
78
69
134
80
118
119
128
163
80
101
111
88
96
123
78
43
169
131
56
102
118
148
76
69
78
93
98
145
154
125
102
69
106
57
199
156
113
101
109
78
87
94
160
169
115
64
123
119
136
89
87
150
120
89
110
155
80
175
88
88
69
100
78
136
80
69
132
131
76
72
80
89
87
119
117
164
176
113
80
43
140
89
87
80
111
123
99
148
80
107
93
93
89
154
80
140
87
80
115
119
104
113
139
78
122
131
82
107
149
114
154
80
119
99
127
94
101
104
95
92
90
91
80
136
78
89
111
89
105
88
107
154
110
147
80
56
66
87
87
78
127
99
174
137
137
87
85
76
85
99
197
119
104
108
78
78
159
78
108
140
106
99
76
78
113
154
80
117
104
99
133
54
80
107
119
110
69
76
154
145
143
99
151
80
80
114
79
95
134
118
119
125
56
135
128
104
109
128
119
80
120
88
79
78
137
69
113
97
78
91
121
111
128
136
134
133
52
95
91
78
95
155
166
72
69
132
87
160
101
100
76
154
78
83
123
111
89
96
87
112
88
145
87
175
107
127
97
78
163
111
69
95
90
156
120
119
80
110
111
74
125
150
108
99
78
107
88
89
130
154
120
80
89
78
74
160
102
121
97
94
119
110
76
120
133
128
145
120
93
76
156
122
154
67
69
54
96
80
91
89
93
201
151
118
133
119
164
93
80
133
80
69
76
122
87
129
72
89
106
149
94
138
122
134
137
58
128
175
137
121
101
132
145
69
181
73
80
91
89
123
91
127
91
80
163
93
89
102
110
121
115
134
80
91
107
163
76
93
104
89
137
98
113
87
80
69
123
113
87
88
112
78
87
76
92
112
99
109
147
76
88
109
143
88
112
153
76
87
91
69
80
99
165
107
138
87
113
106
89
69
80
127
140
119
85
118
75
133
131
69
128
126
115
107
132
94
103
150
83
156
80
131
99
120
134
151
156
101
153
95
54
89
109
103
121
141
76
87
80
79
76
78
88
75
69
129
166
107
117
154
146
104
117
87
95
85
120
93
112
76
137
72
90
128
95
80
99
117
52
76
102
171
69
151
128
131
175
123
98
99
71
131
76
102
80
91
127
88
107
104
122
78
94
197
154
103
52
122
120
93
131
131
88
100
76
101
120
127
101
181
124
99
69
128
112
80
80
156
128
104
82
174
121
82
89
121
91
80
154
119
107
121
87
76
119
104
104
87
91
197
76
140
89
115
128
107
111
124
125
74
80
59
69
69
109
119
111
76
156
101
142
110
69
154
133
59
133
96
119
106
94
69
94
54
136
134
99
87
96
146
151
134
107
113
80
127
136
69
136
119
143
94
98
119
120
144
136
119
99
107
69
128
97
136
80
154
144
90
146
145
80
127
87
119
152
122
136
89
159
69
78
140
100
91
87
69
104
125
56
104
100
127
146
127
121
94
69
130
74
99
104
104
109
164
78
107
128
107
97
66
96
163
111
69
164
69
69
132
106
106
87
89
107
120
175
110
117
93
80
137
96
197
56
154
90
95
163
69
114
128
78
71
88
87
91
88
164
80
104
110
73
117
115
136
109
106
87
136
78
78
156
122
115
90
98
118
148
80
99
80
69
87
87
127
101
112
129
102
120
104
140
85
89
72
123
102
148
136
114
127
109
91
76
107
106
114
131
120
112
112
72
80
134
124
92
94
89
117
88
106
80
145
110
113
106
175
107
80
117
93
93
123
90
76
87
88
156
84
76
117
123
75
88
101
120
76
96
151
99
148
199
119
109
80
69
97
126
147
80
120
134
69
87
108
87
143
128
134
100
140
109
80
78
112
146
85
140
87
119
154
117
107
112
59
94
172
106
80
76
113
69
123
88
119
103
93
69
52
209
78
164
72
87
119
118
104
89
147
146
125
164
115
74
112
78
132
98
113
80
89
76
119
133
80
159
175
93
85
80
106
87
154
95
94
109
155
197
80
144
94
76
87
69
143
74
68
89
134
128
80
94
134
87
74
108
69
125
56
117
134
99
109
94
80
175
75
88
101
175
140
175
97
156
106
88
146
104
75
123
87
121
91
80
146
104
88
72
154
69
88
139
119
175
91
106
96
120
109
134
99
91
52
91
82
76
99
115
106
118
137
74
109
99
154
160
85
106
69
110
165
175
130
87
72
134
69
106
78
101
127
107
91
72
109
154
120
80
127
56
148
107
80
136
88
106
156
121
100
148
154
126
79
80
119
163
137
94
109
85
132
154
119
104
72
144
118
56
146
102
73
99
99
102
95
69
76
123
93
68
58
130
106
75
76
104
131
88
78
87
145
88
90
154
152
110
137
78
142
94
104
146
75
104
69
91
134
136
110
128
111
104
128
115
72
156
85
117
89
142
80
109
78
85
87
115
101
127
71
107
114
99
125
69
163
72
85
119
80
69
99
122
69
78
67
104
149
153
96
115
76
80
114
80
106
115
69
69
121
69
80
133
138
127
72
106
111
85
87
134
127
87
156
126
113
154
80
175
52
98
119
85
87
90
99
136
76
128
156
93
87
107
78
91
136
89
181
69
125
170
87
120
99
80
80
117
113
98
154
87
112
80
76
58
132
106
87
107
80
78
123
109
126
129
100
102
108
80
78
106
93
107
80
151
91
133
89
137
119
111
107
58
80
88
128
145
112
164
69
80
99
110
107
128
89
117
149
185
101
111
111
83
156
99
140
114
76
109
74
128
128
85
102
111
80
69
98
80
81
109
87
145
80
112
106
95
110
78
80
120
120
100
120
110
176
114
116
140
89
116
137
87
120
88
96
133
107
119
131
112
76
119
97
95
100
103
154
107
69
91
89
107
113
99
121
197
150
100
145
54
113
154
148
72
156
174
128
129
102
99
87
87
54
87
110
113
76
87
56
69
69
120
106
131
136
128
99
131
136
69
136
119
116
91
80
88
80
118
123
146
120
76
99
115
76
80
84
156
117
98
104
107
113
72
99
76
80
142
111
80
54
107
107
107
97
110
82
69
114
80
123
56
76
87
175
56
175
119
54
120
128
89
134
80
117
87
145
128
128
151
76
80
135
121
120
52
72
96
87
112
87
133
78
76
134
90
122
68
155
80
136
119
69
123
80
175
120
92
69
87
78
86
69
69
58
107
81
134
102
87
109
100
115
183
87
106
69
107
126
69
122
87
80
119
89
134
79
107
102
117
69
163
127
110
106
140
119
81
87
101
80
94
66
59
111
72
69
109
80
127
112
101
69
117
87
107
76
127
89
128
157
130
112
134
69
117
134
117
75
146
128
95
91
94
87
130
119
87
111
74
104
104
72
94
119
113
125
99
175
154
80
74
175
98
69
87
154
94
154
80
118
87
87
91
119
108
94
80
197
119
112
113
146
76
87
99
128
72
93
90
126
100
109
130
80
143
80
88
160
120
155
174
154
101
89
80
80
106
96
113
71
144
88
69
69
119
99
106
78
112
69
110
163
80
91
99
87
87
163
101
109
110
160
94
127
109
87
107
104
88
132
136
96
115
89
138
133
149
157
137
130
69
145
93
107
154
76
81
89
80
81
99
96
69
89
83
123
122
115
105
120
86
106
106
134
119
131
78
86
145
131
106
59
92
121
107
144
109
94
80
131
79
115
87
121
88
90
143
72
119
69
90
96
163
78
89
161
103
130
80
88
197
99
147
76
89
136
114
104
69
175
107
102
172
156
136
69
136
154
124
78
69
93
115
157
110
118
131
164
131
131
145
101
107
76
175
103
154
156
101
87
133
109
151
120
89
106
114
132
107
93
136
197
113
87
146
94
136
72
128
154
115
111
104
98
121
80
102
114
52
78
119
119
181
125
93
76
128
134
76
199
140
146
122
128
80
152
72
52
71
89
122
120
72
69
80
120
113
96
69
93
111
74
78
78
156
163
121
165
151
120
120
91
134
144
109
78
140
157
112
113
99
119
75
138
107
154
118
119
69
151
87
136
69
76
114
78
74
128
117
88
89
78
85
73
69
115
126
140
72
121
52
175
69
128
94
93
94
140
80
76
110
92
175
113
144
146
113
96
89
83
156
95
76
110
174
76
109
168
143
80
154
109
80
80
116
109
76
66
128
119
174
142
96
106
142
78
91
87
93
111
67
110
164
113
115
118
126
110
56
93
69
146
80
123
112
142
54
128
104
69
107
78
109
80
76
128
106
80
69
87
128
78
115
76
76
123
80
80
101
113
113
80
69
88
89
88
104
120
79
105
94
124
87
119
136
80
119
88
110
127
59
109
103
76
80
145
133
72
103
145
69
108
129
107
107
110
83
175
85
106
76
112
83
71
78
128
88
156
69
72
129
72
97
115
78
104
78
69
153
147
99
87
113
183
124
91
112
114
103
80
145
79
76
80
133
134
93
120
118
95
143
134
133
72
109
69
145
131
153
74
128
130
119
175
104
155
76
103
202
80
93
146
109
87
76
80
69
154
155
96
130
94
80
106
115
121
80
141
146
140
102
136
93
155
112
88
119
106
155
134
87
80
109
111
131
91
136
94
130
140
146
104
80
175
109
104
76
87
160
124
120
117
89
108
72
72
131
80
136
147
100
69
107
134
120
109
54
143
76
78
107
117
59
87
114
109
76
197
110
81
76
125
99
148
147
154
131
146
94
128
143
99
79
105
136
96
52
69
137
54
119
69
122
134
121
78
69
102
110
64
109
76
105
89
95
139
140
76
75
119
69
78
127
78
87
75
89
106
113
155
85
89
89
150
80
80
137
113
78
89
69
92
92
107
154
90
80
121
87
128
80
151
72
106
80
72
87
78
54
80
154
154
143
127
143
148
95
78
136
110
80
68
133
87
164
107
118
69
142
96
87
151
92
102
131
138
118
88
87
107
78
145
109
100
88
119
98
134
123
143
133
137
146
109
112
88
69
110
158
76
109
94
76
69
156
67
106
78
80
88
175
89
69
75
175
80
164
43
113
80
151
92
155
78
107
99
140
113
88
120
112
69
112
109
120
85
104
136
80
104
80
74
126
69
112
69
87
94
140
69
96
134
96
87
137
132
128
121
126
69
197
99
99
120
87
98
136
82
132
183
174
115
87
87
155
80
128
93
104
78
109
153
138
101
87
110
123
115
107
118
122
88
117
87
120
133
100
152
87
99
89
120
128
133
87
109
112
137
80
111
87
137
101
89
80
80
76
88
110
175
145
99
87
67
140
127
80
69
69
118
87
103
80
109
89
112
85
131
128
87
94
95
162
157
80
80
112
154
117
100
128
89
132
113
69
197
85
91
187
76
131
107
88
119
123
91
120
67
114
78
85
131
122
175
127
118
80
113
79
80
94
72
122
58
78
140
69
109
69
109
83
69
89
135
80
78
155
120
93
69
96
121
69
110
109
97
151
131
78
82
80
80
88
69
93
113
123
56
87
80
134
156
76
128
111
80
71
111
110
117
87
104
117
87
69
112
110
100
78
91
88
102
131
146
99
80
129
106
197
80
78
78
107
106
88
133
120
91
87
100
80
78
95
76
137
115
76
94
136
80
164
121
175
76
107
136
68
113
89
83
72
156
96
116
85
118
151
89
114
96
129
69
87
113
102
110
126
132
87
87
154
107
95
80
107
107
74
101
129
63
102
99
126
69
199
87
109
69
69
122
151
78
69
69
102
112
89
78
106
83
80
114
140
78
137
109
69
96
72
112
83
69
79
114
151
89
76
131
87
197
107
102
89
117
93
146
127
121
149
121
93
145
106
109
127
110
89
80
110
113
128
107
136
140
87
107
69
76
72
111
119
80
110
91
151
110
78
112
153
87
80
107
72
155
137
89
126
100
98
107
80
138
107
118
136
80
128
78
80
120
54
91
148
94
130
84
120
119
88
175
69
80
147
122
140
90
124
89
80
78
80
80
108
69
97
95
140
106
43
94
185
102
90
120
102
74
83
89
135
72
104
89
69
126
114
145
104
89
147
155
89
113
119
80
117
87
78
134
69
145
89
151
185
76
99
80
99
156
73
78
76
208
109
122
154
123
91
56
101
83
121
80
146
175
148
148
199
80
87
131
87
91
69
91
80
109
69
121
112
119
85
146
128
109
128
134
140
87
67
80
89
132
134
69
72
96
110
118
69
99
145
80
169
107
145
75
137
80
69
119
93
88
69
88
109
106
143
120
120
136
93
93
109
87
133
113
136
121
110
109
100
78
99
100
175
120
137
120
78
69
100
80
106
91
103
125
145
87
83
107
120
72
76
110
95
78
93
197
80
132
121
91
95
147
104
69
119
127
117
97
119
112
89
111
128
101
107
80
80
112
116
56
129
94
101
80
123
76
43
102
94
102
89
159
80
107
75
94
120
104
119
119
110
157
163
120
104
78
80
99
121
129
143
166
103
122
80
96
78
80
54
121
54
89
76
101
127
130
56
93
123
99
114
120
116
106
110
122
156
109
109
103
110
107
76
128
156
54
80
96
107
111
197
106
123
99
133
175
183
78
164
133
165
110
128
94
175
103
124
91
80
148
72
119
140
119
69
140
120
68
69
68
154
140
132
88
122
127
96
164
78
85
95
87
134
69
121
120
81
175
80
89
98
119
80
52
128
120
69
99
72
102
69
89
145
100
122
87
94
54
120
76
69
189
80
69
128
87
118
109
117
98
76
78
101
138
107
136
140
69
164
76
80
197
163
101
111
127
112
80
111
54
124
94
103
87
146
74
69
175
128
149
144
95
129
111
88
56
154
107
160
80
80
76
92
120
96
120
69
128
112
138
78
117
43
126
69
175
94
126
93
119
95
149
89
107
76
99
87
131
148
89
80
119
80
66
162
117
96
72
125
87
78
109
76
80
87
164
102
96
90
99
138
107
87
160
80
95
175
83
79
87
99
78
111
85
72
99
72
164
147
87
76
122
156
153
80
119
120
106
94
154
80
56
69
113
101
94
113
161
107
78
156
88
136
164
56
107
119
121
96
112
78
80
122
109
94
160
110
154
69
82
74
171
132
107
90
80
175
106
69
80
80
99
78
114
78
140
120
80
131
122
78
80
116
99
140
102
78
71
123
175
80
76
113
72
120
120
164
136
88
123
112
83
80
83
175
118
111
119
118
80
76
80
113
123
69
96
131
135
88
106
124
69
136
88
127
110
169
109
109
132
80
175
88
69
111
80
80
96
85
111
104
122
80
144
145
154
156
137
120
80
87
120
80
96
89
111
54
117
115
151
136
122
107
106
102
80
54
109
80
95
102
131
69
88
120
174
163
76
120
117
88
120
111
138
91
131
147
120
120
118
136
80
129
80
140
128
100
102
137
130
151
69
131
129
69
75
109
84
80
128
147
113
72
80
93
87
80
136
101
91
156
69
69
80
147
119
80
107
132
119
175
122
69
110
128
112
88
110
113
109
83
107
86
154
88
109
88
142
119
69
121
178
66
119
69
99
129
165
99
145
136
69
119
78
117
119
185
127
87
83
54
87
119
87
80
80
117
80
125
107
111
146
69
69
76
118
156
155
107
128
126
82
176
87
143
117
99
96
87
72
100
126
93
69
120
78
119
145
71
99
91
74
156
91
79
104
101
87
175
120
165
127
112
128
89
140
111
163
117
75
125
163
88
67
80
126
107
112
199
189
90
87
102
103
80
126
117
80
101
119
80
78
96
78
94
78
104
90
151
102
78
112
78
156
78
109
56
113
131
92
131
120
118
87
154
123
91
117
88
76
110
101
135
99
127
109
177
69
80
145
114
107
144
131
69
88
80
69
120
110
117
69
128
110
78
87
56
54
99
88
87
134
101
64
130
96
89
107
136
87
114
78
54
99
69
107
151
122
91
110
87
127
132
112
75
69
69
154
128
111
78
129
107
140
80
89
112
76
106
80
78
117
120
87
80
113
119
156
119
100
66
80
160
69
90
154
98
112
69
69
131
117
113
107
80
136
154
69
87
179
102
94
140
151
120
160
87
83
128
104
69
78
134
76
128
94
138
134
80
80
127
117
197
100
166
119
83
103
89
99
85
126
88
106
89
130
163
131
78
96
120
102
69
133
115
127
104
109
111
76
78
87
110
100
64
99
88
127
78
87
156
85
56
80
89
80
80
120
115
119
87
118
87
109
76
143
119
69
129
128
142
76
155
118
106
85
99
107
139
107
175
123
94
96
150
105
87
110
134
76
88
80
80
151
133
155
94
76
109
101
175
87
89
143
82
110
78
145
113
152
155
119
154
154
175
76
154
197
69
110
130
136
104
130
80
66
69
102
89
87
78
94
197
137
128
102
109
69
127
106
109
90
69
80
87
69
140
107
87
89
175
101
107
80
110
91
96
148
100
114
103
107
85
134
113
104
102
109
99
94
96
134
110
117
94
175
131
106
131
129
109
66
69
106
128
80
87
145
145
128
129
74
123
121
67
118
80
78
121
69
69
134
82
72
163
110
129
103
107
121
106
120
69
104
76
112
91
118
121
137
120
92
87
154
80
93
136
89
69
131
80
154
99
80
76
120
99
85
80
107
121
76
69
81
100
141
175
113
69
148
69
121
80
87
107
87
80
109
147
93
128
117
166
124
115
136
69
107
121
69
128
137
80
102
93
134
122
111
159
131
140
110
120
107
101
163
111
106
69
93
132
69
69
128
78
87
159
106
80
129
107
106
43
101
69
122
87
119
94
115
136
107
96
90
119
119
69
80
110
112
153
69
69
78
119
89
119
76
104
80
80
87
117
111
78
109
72
74
101
107
122
147
165
101
106
120
78
89
112
125
72
104
78
78
93
95
102
69
131
128
107
107
52
143
80
122
144
127
98
69
78
151
115
104
175
113
80
81
131
128
87
69
80
110
64
109
106
81
80
88
93
115
106
90
112
66
130
128
54
99
85
69
102
76
94
104
76
67
136
107
120
80
136
164
78
107
88
124
112
121
131
132
69
107
164
72
100
107
52
78
88
197
87
155
94
78
69
69
112
155
105
118
80
102
69
121
78
131
120
80
107
126
102
89
175
52
79
88
80
149
69
121
69
87
110
130
69
148
78
98
175
113
69
69
87
120
76
87
128
97
80
80
87
80
127
111
78
120
78
127
87
105
155
76
120
106
80
87
95
76
110
175
69
119
120
145
155
120
115
106
119
87
118
114
119
121
131
146
109
138
80
101
119
69
154
98
102
110
160
124
136
197
90
104
104
143
109
88
103
76
69
66
80
78
78
137
163
107
156
80
175
80
107
121
69
106
96
147
125
126
76
145
144
72
107
85
80
115
144
150
124
128
133
118
89
80
78
80
69
140
201
80
88
116
69
140
78
68
174
76
87
87
85
69
94
80
91
137
64
88
82
100
163
109
67
119
78
76
87
119
125
96
144
140
80
76
102
115
98
156
106
69
78
69
66
87
74
106
102
150
143
80
94
80
88
109
100
120
154
83
82
91
82
119
87
119
106
80
78
80
117
80
91
89
80
80
127
148
107
109
106
117
163
103
74
80
113
117
132
152
69
124
103
160
101
118
163
131
124
183
80
119
88
121
69
78
140
177
131
87
130
123
80
109
76
78
120
99
91
88
120
121
107
140
75
69
101
197
94
104
80
156
78
89
78
52
154
80
101
56
113
155
69
155
116
118
145
99
88
80
133
113
143
76
69
174
123
147
80
74
128
110
107
187
80
131
93
123
106
175
154
96
60
110
87
67
69
156
128
89
131
69
98
175
109
87
107
88
128
119
80
140
106
163
73
93
43
78
100
155
80
120
76
153
80
128
80
145
76
118
199
158
106
69
90
143
89
134
69
97
80
74
75
80
120
151
69
119
94
78
72
108
109
56
69
175
127
91
110
87
78
88
99
94
118
69
118
69
69
90
98
109
74
107
136
112
131
89
101
116
121
69
90
96
113
109
76
115
120
89
111
80
119
117
148
80
43
136
175
69
127
109
155
87
115
156
108
129
111
99
78
136
87
69
82
119
107
82
104
112
133
79
175
158
76
94
148
134
78
131
74
127
143
119
78
106
69
99
67
133
104
175
87
125
120
125
146
103
137
125
157
56
83
94
110
83
145
110
107
72
101
80
127
76
90
163
83
113
107
52
134
111
69
104
78
125
69
119
144
76
69
106
133
78
94
129
113
89
107
109
72
109
101
87
160
148
111
106
96
106
69
113
88
100
94
80
76
128
143
69
120
78
80
90
101
140
76
175
91
175
64
118
104
87
89
121
78
109
181
140
92
93
80
80
123
80
148
154
175
154
114
105
78
80
106
145
100
175
80
174
154
69
96
136
113
120
91
128
119
115
94
76
78
175
87
112
93
71
129
80
130
69
96
76
87
134
80
102
88
76
119
140
121
110
69
136
76
85
89
101
54
80
128
120
121
113
106
175
116
88
102
91
93
90
80
74
87
120
185
147
146
69
83
121
80
138
175
80
87
98
150
88
69
88
85
154
78
119
107
124
106
120
108
128
104
76
134
103
119
88
152
80
106
120
120
146
156
69
113
120
121
69
110
142
134
87
92
117
115
102
69
175
92
54
80
91
112
100
103
73
102
76
72
132
127
69
95
100
69
100
88
107
69
119
115
175
87
69
100
93
111
119
155
123
156
90
111
87
154
80
80
137
80
130
97
80
78
124
120
134
94
121
80
69
94
91
80
128
74
144
103
94
152
126
175
112
154
80
119
109
79
196
98
69
89
128
78
101
137
89
144
88
107
87
69
80
120
78
90
119
87
120
175
104
156
138
119
197
134
152
154
78
97
69
93
93
145
120
87
127
103
111
175
118
127
96
108
117
94
106
96
78
143
60
76
124
121
109
127
85
133
80
146
140
98
102
98
80
95
107
106
69
112
128
121
112
124
111
120
71
104
160
175
80
156
69
138
72
104
90
69
104
72
175
97
175
74
118
131
87
109
165
119
136
106
115
107
119
151
155
106
121
105
58
97
112
128
123
151
130
105
119
96
80
100
69
107
87
117
74
112
122
69
89
107
79
100
110
80
109
148
78
132
106
114
131
88
89
85
156
94
87
131
128
119
120
113
74
136
175
123
103
88
121
80
88
78
119
102
78
140
109
111
175
181
80
69
54
125
117
103
131
111
154
120
101
119
135
117
67
104
121
156
134
87
140
80
91
78
130
101
136
125
158
69
56
113
78
175
89
115
96
132
136
119
120
140
135
119
80
93
119
149
69
120
99
144
136
102
99
197
76
90
87
152
156
107
117
124
138
121
94
119
91
136
110
131
115
91
108
80
119
117
154
94
140
87
103
78
76
84
69
66
96
88
111
166
88
80
82
129
116
137
83
154
122
175
120
110
80
154
94
80
69
72
138
120
121
104
69
123
143
109
146
87
76
106
78
112
164
69
129
151
72
85
107
89
69
155
92
117
151
114
101
134
120
79
93
157
88
76
102
115
99
96
72
80
128
136
99
102
121
135
120
69
130
93
120
122
121
107
117
107
101
164
93
80
100
197
54
136
145
87
107
136
115
99
69
131
87
69
78
78
80
93
128
89
93
80
76
113
104
134
43
52
128
106
122
112
100
128
69
69
106
128
80
163
127
126
115
76
197
69
137
100
69
119
104
115
127
113
107
119
102
156
145
96
106
99
185
134
112
87
105
112
104
87
63
69
85
99
114
105
103
109
108
78
80
175
59
145
82
125
132
78
91
185
80
140
87
107
122
113
142
140
54
85
76
85
69
69
87
80
175
134
91
131
80
148
123
121
132
117
89
111
133
113
143
80
88
127
76
126
114
175
69
69
154
100
121
80
111
96
134
175
120
120
121
124
119
128
106
201
106
138
151
113
141
115
117
112
120
80
69
122
148
76
80
78
121
120
126
69
110
110
109
110
103
128
80
134
120
112
69
71
114
80
85
107
146
134
89
109
77
86
80
107
128
140
156
120
52
117
76
99
88
136
80
80
90
97
87
76
156
93
72
89
107
201
110
174
121
98
183
175
111
91
121
106
154
143
146
99
110
135
119
175
104
52
117
133
117
109
69
78
80
140
189
119
69
76
114
146
126
80
145
121
91
155
141
56
154
113
199
78
118
66
145
140
94
92
128
176
110
78
99
132
69
76
64
94
108
99
145
175
94
106
80
80
87
76
54
87
76
88
69
113
109
87
107
87
99
160
123
137
131
116
99
130
89
119
80
126
175
88
133
148
120
120
119
160
151
88
87
109
89
78
113
104
120
113
109
151
109
100
69
120
88
58
175
107
115
120
131
136
113
143
109
106
91
155
78
69
85
79
69
73
100
112
80
145
128
146
99
78
73
155
107
197
88
90
133
80
109
140
108
96
72
85
124
87
156
127
156
148
115
108
103
94
93
106
99
89
99
88
96
169
119
131
119
96
119
118
80
94
110
69
86
124
113
122
117
94
76
120
96
113
113
147
80
137
175
155
143
104
80
149
69
100
87
87
145
134
87
80
120
80
74
94
94
84
94
91
119
88
112
113
119
125
107
79
80
69
87
115
134
78
107
113
120
120
80
130
89
122
97
91
102
112
101
141
93
112
119
114
113
66
109
112
87
146
69
87
120
90
99
120
78
131
118
101
111
69
175
78
138
131
129
64
87
87
76
128
140
145
120
142
197
69
99
104
136
90
109
75
113
93
76
92
80
113
93
175
119
143
101
80
140
136
80
131
104
78
54
85
80
88
163
94
88
106
121
128
119
67
112
69
115
90
104
119
87
95
118
154
109
78
114
165
128
94
136
127
114
138
206
80
118
94
85
140
134
197
96
138
113
140
99
107
139
110
156
115
117
69
139
80
176
66
175
113
131
109
104
80
140
60
89
80
78
140
52
91
151
115
74
112
154
175
164
119
98
157
152
134
107
199
126
121
136
99
119
165
96
130
99
114
80
67
80
80
113
163
175
110
94
147
124
96
126
99
76
107
60
102
72
108
88
68
86
87
108
124
94
113
85
111
147
69
76
119
154
76
155
109
80
175
146
127
120
112
154
127
96
128
69
138
178
69
140
114
54
80
93
109
85
78
111
115
76
80
181
115
102
124
80
69
138
72
93
106
83
109
140
119
87
124
80
133
100
93
120
76
69
99
150
80
69
128
154
89
197
136
107
117
136
131
102
91
87
87
88
78
175
94
76
163
89
143
88
117
121
104
74
160
83
94
67
100
126
97
197
120
121
154
94
137
69
146
120
134
123
57
80
118
113
119
117
131
76
109
118
67
87
78
90
140
186
52
102
175
175
94
109
88
76
94
118
174
123
133
78
102
69
76
156
128
80
75
72
107
66
99
132
78
152
96
154
106
98
80
131
120
109
101
73
134
175
154
119
96
135
69
80
96
140
69
100
109
154
101
100
145
76
117
122
137
104
127
89
169
94
109
91
80
148
117
88
78
91
96
121
120
54
110
104
110
175
97
106
115
119
126
160
136
54
138
80
96
154
94
143
80
111
109
80
92
122
106
109
67
74
88
112
80
101
157
67
99
104
121
103
119
134
133
78
78
87
52
76
85
175
93
69
96
69
90
96
163
69
155
117
80
154
109
104
164
157
155
99
76
69
136
106
110
69
123
142
78
106
74
88
150
95
131
76
94
113
88
102
99
109
106
156
148
87
78
101
91
87
78
80
156
101
119
107
156
147
99
99
72
113
97
96
115
123
134
154
197
172
99
93
76
113
76
128
146
80
69
122
153
78
93
104
90
101
101
156
112
82
113
78
110
56
122
60
136
111
69
80
98
114
121
87
107
120
175
145
87
121
145
78
106
80
78
94
102
87
88
78
187
124
69
78
107
165
120
80
76
110
73
69
93
117
112
94
87
76
115
166
69
100
80
54
72
175
119
95
80
131
66
115
80
131
88
129
163
152
99
91
95
187
107
119
131
80
72
111
127
109
97
121
154
149
154
69
95
93
69
137
109
134
102
122
89
94
69
93
80
93
93
154
56
80
107
119
138
91
72
89
147
131
94
78
146
88
87
69
76
80
60
69
69
76
118
72
130
88
152
89
68
75
111
151
80
146
102
175
82
154
148
114
96
96
69
136
74
100
128
69
109
140
104
72
52
69
87
128
112
197
78
82
153
96
69
128
72
119
78
107
87
114
84
121
80
99
113
119
72
59
76
123
138
128
88
123
110
122
88
153
157
78
85
59
72
142
161
80
69
87
78
128
98
94
134
138
104
102
107
107
87
107
155
80
87
79
80
87
130
146
107
101
117
80
175
80
106
122
199
115
118
101
155
106
107
123
119
80
72
128
136
128
87
107
69
122
100
80
69
142
94
85
119
110
69
96
106
78
76
127
146
100
154
107
119
140
94
88
69
122
80
78
68
136
80
76
91
78
88
99
128
80
99
87
120
87
89
121
113
145
106
102
131
102
110
122
104
113
94
109
110
80
69
109
163
89
136
107
84
71
154
94
138
143
85
163
110
66
77
80
87
126
78
154
110
109
57
118
94
90
146
96
79
88
72
145
112
77
122
158
74
119
107
174
119
58
117
136
175
93
108
80
119
80
82
134
142
99
72
80
111
102
69
96
80
119
111
92
87
114
100
109
87
98
76
107
110
80
78
159
69
80
85
113
108
87
80
156
69
78
96
87
78
78
138
87
80
85
78
155
80
87
76
187
74
69
140
113
88
97
76
175
143
78
80
88
160
197
156
120
138
109
121
79
137
134
69
80
147
69
89
110
52
117
80
128
114
133
76
136
69
101
80
163
80
78
71
75
138
80
164
99
172
80
93
118
99
80
88
142
120
151
100
104
87
94
104
148
97
100
132
85
101
104
75
84
52
104
78
87
114
117
80
113
133
111
69
60
69
101
175
109
87
67
96
80
117
104
75
112
80
138
71
120
89
140
80
114
131
122
175
146
80
99
160
89
119
107
88
106
110
95
151
112
69
89
104
103
116
128
104
113
132
110
123
107
96
134
80
114
69
156
108
78
54
93
96
107
102
92
99
80
120
181
119
88
112
134
136
80
100
138
78
101
105
123
94
154
90
127
111
56
120
143
87
85
79
104
79
164
96
137
121
69
107
128
120
69
59
89
94
140
108
96
106
120
162
76
101
101
66
102
94
56
74
107
118
78
147
142
121
94
78
199
120
107
150
99
110
119
113
163
69
101
76
69
102
103
80
80
93
69
88
80
112
107
113
117
104
87
137
163
134
113
175
151
113
131
80
69
91
138
94
102
87
143
119
96
106
128
88
120
121
87
137
128
117
78
96
87
102
106
107
155
102
106
85
134
110
88
112
136
136
93
76
120
114
80
154
88
78
112
139
107
69
99
147
91
131
166
113
175
89
80
155
87
80
83
80
93
127
80
128
104
76
80
141
100
134
69
159
104
156
115
119
130
107
145
104
110
80
107
132
154
146
110
107
109
76
78
111
79
154
69
80
71
78
140
126
99
127
120
187
76
140
99
94
104
91
119
88
89
96
94
87
114
78
87
89
89
120
90
107
121
113
67
80
69
103
127
76
95
99
112
89
115
100
121
99
120
91
80
104
99
76
127
69
115
137
102
156
93
110
152
104
150
106
80
69
119
128
99
89
109
99
83
69
99
72
136
87
80
164
87
88
80
128
112
107
131
79
87
117
134
76
121
89
88
78
74
127
76
64
117
76
76
155
104
199
93
69
107
122
72
117
119
118
69
80
78
185
117
169
125
134
96
76
130
120
80
89
80
87
134
106
129
102
80
106
80
102
106
115
80
74
92
136
87
151
72
106
121
174
110
104
80
146
126
175
121
162
91
113
80
80
94
209
132
69
69
119
95
85
109
99
78
113
127
106
119
111
96
155
82
69
69
80
87
107
80
110
87
104
76
143
110
107
87
140
113
87
83
97
72
76
101
129
69
80
99
69
121
149
138
87
145
96
149
114
144
88
57
102
128
163
89
127
80
69
143
78
93
107
102
92
112
114
78
175
121
124
131
121
87
143
117
79
175
127
79
154
69
76
130
96
156
140
89
69
163
108
69
78
104
154
81
106
144
114
112
74
76
115
106
197
115
80
133
64
97
80
123
110
74
119
78
69
78
112
69
117
80
69
138
93
99
64
110
110
80
118
94
143
154
80
76
113
113
187
120
69
101
183
80
80
98
121
121
100
69
113
120
80
110
72
163
74
104
87
119
95
92
78
99
102
106
106
117
119
117
69
128
126
113
64
144
143
117
154
96
80
52
87
162
99
80
87
154
156
80
83
95
100
141
76
89
78
121
164
119
119
109
81
69
91
107
127
80
118
109
94
101
112
154
102
120
134
93
76
78
151
80
107
113
76
93
143
80
110
89
99
96
92
111
107
125
107
80
129
52
101
110
78
91
160
54
100
115
69
136
107
162
120
87
87
90
71
79
83
114
151
146
140
76
88
113
76
56
175
116
118
109
101
151
92
104
94
114
56
139
121
80
102
125
87
87
147
64
88
87
96
127
76
102
80
155
87
130
127
138
107
80
56
90
69
137
59
136
97
120
131
69
93
98
128
104
80
134
130
80
79
111
80
110
94
106
80
90
109
150
80
109
93
69
136
154
76
136
120
69
69
117
119
144
87
112
145
99
137
78
69
80
164
80
109
94
80
99
101
66
142
69
88
146
109
134
156
74
128
80
119
82
78
76
142
94
109
94
119
54
165
104
134
107
154
120
76
96
101
78
81
71
89
87
103
92
136
118
56
64
64
93
100
93
122
76
69
58
100
112
69
77
117
104
136
99
84
69
76
93
54
107
80
78
100
89
110
164
80
107
58
71
103
120
154
140
112
87
85
72
75
69
160
130
154
82
166
78
82
76
120
80
69
96
83
125
69
87
80
69
78
87
137
101
119
122
102
114
69
112
87
94
164
69
175
69
69
155
80
107
80
157
126
80
93
98
69
105
69
80
87
154
115
112
106
121
89
78
163
175
153
91
113
136
136
148
93
154
107
80
101
129
90
111
137
104
155
112
115
69
69
108
115
142
117
69
98
74
96
120
112
156
72
80
89
107
69
121
142
76
71
175
87
104
82
102
117
120
80
106
110
122
110
110
110
107
107
137
123
93
114
80
80
80
87
80
117
157
78
98
87
94
128
120
85
119
74
117
118
131
106
69
120
147
80
118
95
96
79
87
94
80
85
151
109
87
119
80
94
80
106
95
89
151
69
156
80
110
66
76
132
134
107
101
141
83
83
78
107
87
136
185
109
119
88
107
120
128
80
87
78
96
109
106
75
175
119
72
151
127
115
76
199
110
128
69
163
98
69
120
80
99
87
85
78
124
72
80
119
78
100
164
128
123
136
99
78
67
74
107
124
80
131
138
103
103
154
94
136
94
78
99
88
99
109
112
144
80
69
133
107
163
93
85
69
78
78
137
110
69
136
76
80
131
131
131
79
99
115
164
109
109
109
99
80
125
104
112
114
104
117
69
103
69
99
69
134
104
93
150
124
127
109
94
140
154
157
89
87
90
90
76
175
128
144
91
123
76
99
87
79
95
89
91
112
121
120
138
154
134
80
80
151
130
107
124
52
121
156
69
102
150
80
80
106
69
69
104
80
87
94
107
136
94
128
124
164
85
169
122
72
156
69
164
80
91
121
107
103
175
85
80
52
113
69
88
163
103
119
69
119
134
151
57
114
154
99
69
146
154
87
115
136
82
80
120
159
110
106
150
148
54
118
82
80
78
74
136
119
80
155
80
107
151
92
66
76
92
117
126
120
69
154
124
89
93
134
90
69
72
78
78
133
76
156
99
87
101
80
175
69
99
99
117
93
87
129
87
87
104
128
156
106
119
94
80
104
175
72
154
80
110
121
87
112
107
113
78
69
76
114
80
87
119
76
127
96
108
114
78
88
80
88
152
80
69
89
80
144
76
107
79
91
98
88
80
102
91
100
110
128
82
89
109
89
54
110
89
107
113
99
119
78
148
144
116
81
132
80
115
124
131
140
130
119
96
119
88
80
80
83
94
134
87
131
131
157
107
144
124
85
118
54
119
104
132
143
185
119
69
74
80
134
103
168
131
110
87
87
96
156
107
89
99
101
122
119
80
104
115
67
127
72
88
136
121
120
142
148
118
88
94
154
76
145
69
87
131
175
88
69
98
115
127
76
69
78
127
72
89
76
136
131
80
175
92
107
174
142
78
80
145
52
100
120
109
117
142
107
94
94
151
130
76
80
102
98
175
96
104
109
102
134
80
197
154
80
69
76
107
69
138
89
127
80
138
140
125
78
154
87
88
87
74
131
174
89
87
122
122
78
137
127
119
185
103
69
109
84
69
108
96
74
143
131
88
69
99
121
154
94
69
120
136
88
156
136
112
99
52
80
131
88
101
69
151
76
80
87
115
128
80
78
113
108
120
80
111
100
131
105
164
146
56
119
93
76
112
93
109
78
101
107
155
79
89
72
69
78
80
117
119
122
103
132
125
87
151
154
76
104
125
79
103
152
69
215
78
107
88
52
136
69
82
96
88
145
94
109
80
156
99
131
76
76
89
139
80
110
56
175
76
102
151
175
140
104
141
112
136
78
101
76
76
119
69
66
154
62
175
107
109
103
80
90
72
136
120
112
83
107
104
85
69
87
88
155
109
127
80
69
134
155
78
156
143
105
80
109
99
80
91
174
138
140
92
133
67
121
140
64
80
92
117
100
81
154
136
105
115
152
103
147
112
109
175
76
126
69
120
109
120
98
79
101
76
69
197
72
137
69
80
91
110
80
130
80
69
69
89
136
185
129
115
128
72
87
97
119
133
76
80
108
78
87
98
107
147
115
84
78
137
131
89
72
78
118
78
76
123
88
113
134
146
128
106
72
164
76
103
175
80
93
157
80
175
110
180
87
117
175
102
72
69
128
113
175
120
95
88
109
175
99
119
52
90
93
106
134
87
78
69
140
100
94
56
119
140
132
102
105
137
80
103
119
69
113
117
120
114
120
72
80
67
129
87
78
88
119
56
69
91
104
111
80
94
60
72
81
136
128
146
113
82
121
119
87
154
131
80
151
69
129
124
109
181
146
94
99
81
80
120
121
104
160
85
103
87
197
142
121
118
136
69
106
112
156
72
80
115
107
89
76
107
106
149
132
96
119
131
119
162
118
133
109
106
160
131
104
115
80
90
120
85
156
69
147
99
70
111
69
80
43
71
131
78
69
76
84
91
118
122
80
106
140
127
134
95
104
101
88
123
155
72
118
100
135
52
140
111
163
132
98
120
116
72
85
119
167
197
96
80
102
102
121
101
69
134
112
119
76
80
120
91
117
128
69
58
99
111
69
100
102
126
129
164
76
69
69
154
121
143
151
93
76
106
145
69
52
138
169
99
141
110
115
87
99
119
100
112
78
163
85
150
197
107
93
133
83
76
88
109
72
68
88
80
72
102
100
104
110
131
93
100
76
95
121
175
128
133
120
80
119
119
132
151
124
135
78
83
122
107
121
83
76
69
109
154
80
99
147
95
87
87
119
115
100
138
115
76
93
69
75
76
69
80
76
117
87
104
119
64
197
99
122
143
119
146
80
80
153
78
146
69
85
99
164
123
76
52
80
175
127
133
129
124
156
80
54
116
151
118
96
78
110
110
80
136
56
83
156
146
180
113
110
87
143
81
78
127
115
88
175
88
88
100
134
115
69
80
88
121
121
156
101
78
80
128
76
95
117
104
87
123
75
113
118
175
99
154
109
175
69
107
141
69
119
80
87
72
64
107
80
69
120
93
121
102
87
80
119
128
120
154
94
69
69
131
91
86
96
113
107
95
96
94
80
120
172
155
80
99
102
131
69
88
131
87
110
119
128
154
90
112
136
96
149
104
155
120
104
52
74
80
83
180
156
123
56
99
112
85
118
80
89
133
72
133
89
114
197
117
76
80
87
88
112
92
111
113
69
72
163
67
148
111
100
96
120
120
111
117
99
69
66
104
102
154
127
80
103
122
126
69
163
157
78
120
99
87
174
78
120
88
69
88
119
145
164
89
80
86
115
80
80
88
56
110
145
80
102
119
101
76
107
89
80
85
94
69
117
99
136
87
127
113
118
163
134
128
109
109
125
118
89
127
88
87
124
101
94
76
127
185
110
81
83
86
96
76
129
69
107
96
154
80
112
132
78
165
185
126
80
90
103
76
119
87
130
107
131
108
164
69
110
120
131
69
78
90
108
74
140
69
81
54
80
148
119
87
164
126
125
120
69
136
54
80
120
120
72
96
107
88
137
154
145
136
175
100
103
132
80
126
76
151
99
110
94
142
156
154
103
136
69
87
80
98
78
93
105
118
123
100
83
69
99
146
76
136
69
102
175
124
148
121
136
123
154
72
134
120
111
157
69
74
144
106
69
148
120
107
106
52
125
151
119
116
97
91
134
148
69
124
99
197
143
140
107
78
68
99
131
160
52
112
87
132
130
110
121
89
95
78
156
80
108
94
128
129
106
119
74
138
94
66
56
126
69
149
197
156
69
112
99
113
69
72
120
147
142
87
123
115
128
87
88
175
69
94
96
96
117
88
155
80
71
54
74
91
87
126
111
131
109
87
79
109
109
88
119
145
69
76
80
83
69
88
196
124
104
130
78
107
57
175
140
94
130
78
103
142
201
128
78
107
130
120
101
76
112
106
98
154
154
78
99
113
94
142
118
91
125
98
80
154
78
143
72
67
109
140
128
54
82
178
154
69
72
72
122
100
175
80
80
114
124
146
119
119
99
78
137
131
76
107
78
78
174
152
52
133
96
74
87
69
69
87
121
201
52
87
78
59
76
145
104
69
120
107
101
123
78
89
120
104
162
88
99
134
106
99
93
78
137
87
76
167
119
128
127
134
69
87
93
110
67
69
130
69
88
78
134
155
92
101
80
94
121
89
80
80
113
163
69
113
105
131
134
109
140
71
103
83
102
197
88
87
155
74
69
88
74
120
78
128
87
112
78
110
119
107
90
80
87
120
124
120
87
118
110
105
113
113
119
75
140
96
137
108
119
134
110
112
106
80
89
111
115
80
106
115
175
144
117
134
80
90
145
54
56
110
175
69
96
140
150
128
104
131
121
110
78
80
104
131
78
78
76
124
109
106
137
115
87
181
80
120
100
80
79
119
164
103
107
160
100
134
128
88
91
80
87
69
76
94
145
156
88
109
100
146
82
99
109
123
107
69
136
103
90
80
52
90
119
125
131
162
101
100
128
83
127
80
176
96
130
93
94
136
69
109
87
89
136
157
175
101
80
91
87
93
72
80
69
142
102
69
107
126
102
115
94
87
80
69
94
78
52
107
95
147
134
112
78
134
148
68
120
128
100
54
154
121
69
128
109
127
117
134
154
119
107
106
133
78
163
176
94
94
80
131
80
64
93
110
117
109
121
87
52
110
88
100
69
114
183
68
88
80
110
117
87
122
156
88
74
88
143
171
116
76
69
124
80
56
87
169
150
69
87
80
75
80
121
75
69
138
86
78
99
120
76
76
76
160
124
102
111
118
80
80
89
175
95
134
128
52
120
126
89
122
69
107
69
175
104
107
111
117
88
78
155
78
120
115
151
83
134
127
155
137
127
134
117
132
111
145
90
107
120
80
94
100
95
80
80
100
143
111
104
57
175
96
175
96
146
143
154
91
109
79
100
104
130
111
99
209
52
60
86
110
99
96
80
128
76
136
127
102
148
126
110
148
72
126
107
109
104
99
96
87
106
72
72
126
103
134
80
153
88
155
104
113
69
69
109
106
145
126
94
147
137
66
134
105
127
92
94
110
163
114
118
69
69
148
80
145
156
106
130
80
80
122
76
199
88
154
100
104
80
110
143
119
76
88
110
89
96
78
112
154
120
98
69
140
87
121
80
78
69
69
116
99
107
131
151
133
80
69
156
114
154
118
137
72
94
120
119
146
74
107
109
98
80
156
151
127
117
120
119
107
71
100
87
93
76
80
80
96
104
54
88
154
88
95
144
163
120
74
130
104
76
75
72
132
121
118
164
52
76
101
67
88
131
136
78
143
60
80
78
134
106
78
117
172
92
113
112
150
80
76
112
119
107
69
154
131
160
138
69
113
107
100
76
76
107
105
106
87
80
91
85
69
134
146
131
69
74
82
78
72
85
106
99
79
112
119
156
142
89
133
96
72
107
189
78
69
156
151
115
169
52
162
121
80
97
80
87
107
76
64
127
111
122
143
114
85
80
91
126
119
96
140
110
109
94
120
101
83
87
119
150
104
104
89
72
119
54
111
130
120
106
199
106
99
121
89
113
137
78
99
154
87
151
150
80
115
135
94
132
119
109
94
76
99
110
69
110
87
154
106
107
87
72
124
131
129
119
88
103
102
175
175
89
69
80
94
163
94
80
99
107
118
146
154
69
85
93
89
155
131
78
59
107
199
71
79
80
52
107
146
69
109
117
154
87
87
133
99
86
95
54
78
84
94
101
137
78
88
109
76
88
140
84
113
94
76
97
138
110
99
91
163
134
132
80
74
52
131
76
88
134
109
69
89
107
89
103
130
80
143
87
123
88
134
96
87
175
119
120
121
128
107
113
78
175
87
117
132
88
83
80
121
151
154
110
134
115
175
79
74
104
43
107
109
78
174
76
121
102
91
107
113
100
120
99
91
80
114
175
122
129
129
119
118
136
99
80
120
134
99
119
109
107
89
80
79
112
76
69
109
175
69
100
54
76
96
93
78
91
128
132
135
119
99
87
94
80
120
120
112
105
69
134
69
89
141
135
156
52
144
96
80
91
117
156
140
69
183
72
76
80
72
99
100
96
71
107
170
78
75
124
75
132
96
87
73
91
175
175
99
69
104
96
93
91
109
174
123
76
154
69
132
76
119
120
114
111
80
91
120
60
107
87
89
95
80
119
85
145
80
119
69
110
140
140
88
133
96
122
93
99
99
99
93
106
155
140
107
87
78
119
89
80
137
88
163
72
160
74
74
69
143
76
74
106
107
164
109
107
80
123
89
122
80
175
91
80
120
87
117
87
102
113
131
107
80
119
109
197
118
80
120
78
125
69
92
93
110
76
107
175
78
80
76
90
119
69
52
106
119
80
90
97
145
93
99
101
93
78
110
72
137
107
175
76
69
149
119
69
91
109
92
80
109
69
134
108
87
120
87
126
107
101
98
69
69
124
119
155
87
146
114
80
54
78
117
123
88
101
155
93
69
76
154
151
80
117
151
88
100
117
127
83
101
87
54
94
87
80
131
143
127
91
124
109
85
134
80
104
78
69
96
201
120
87
137
90
113
152
142
88
147
143
112
127
102
87
126
131
80
131
148
119
131
128
87
80
76
72
131
119
90
80
109
143
107
80
69
94
117
101
78
124
109
80
106
122
119
119
115
110
80
175
117
112
125
131
138
152
107
87
131
117
140
88
125
128
56
154
80
69
115
175
99
69
116
78
54
107
121
69
111
80
100
76
87
107
66
97
89
78
69
119
100
89
87
69
99
76
87
113
101
99
80
75
88
106
134
76
112
123
69
88
71
117
87
151
134
80
72
106
148
76
139
131
107
115
90
142
128
98
136
112
69
109
109
126
76
87
133
78
175
175
121
175
197
100
102
88
120
183
114
134
87
130
87
125
87
141
155
74
128
175
83
64
174
136
113
175
88
107
76
146
136
145
126
106
135
72
114
76
102
96
99
121
80
104
83
80
102
67
52
88
93
69
91
121
96
96
94
118
118
99
80
146
121
88
76
91
80
71
113
80
117
118
109
91
74
80
66
128
89
123
76
89
154
123
119
112
83
121
92
99
89
80
136
96
88
154
76
122
87
126
90
89
121
69
155
96
125
89
78
94
130
106
99
80
154
153
151
134
73
83
99
80
104
87
69
87
139
113
101
153
131
85
113
109
69
112
89
143
106
69
127
145
121
80
149
121
160
109
80
69
155
136
133
84
140
72
119
88
124
138
114
78
128
119
128
110
75
107
69
90
80
76
106
73
88
112
80
69
131
112
69
78
136
93
121
76
103
80
76
121
69
121
69
106
91
95
69
110
101
69
101
145
119
78
106
80
101
119
90
80
76
80
89
133
118
128
112
69
118
142
78
90
117
88
69
134
127
80
80
110
107
80
76
163
103
80
76
129
174
109
114
85
80
87
103
87
94
154
87
140
87
136
69
151
112
88
80
119
136
101
80
80
146
72
72
80
96
122
80
133
78
69
102
69
110
160
78
76
123
128
138
56
76
71
89
88
110
112
87
76
69
80
138
78
111
107
110
87
109
154
90
78
128
109
91
107
101
60
100
93
87
76
95
145
76
76
119
89
89
104
164
85
148
76
74
125
120
80
109
69
152
136
85
155
117
87
120
116
133
141
78
128
93
197
69
80
126
66
128
94
76
88
134
143
89
143
103
197
109
83
120
87
59
94
119
107
147
76
130
129
93
104
76
110
69
114
120
80
155
98
140
128
112
69
93
78
150
66
80
154
69
80
76
87
74
78
75
159
108
122
94
136
137
106
133
151
137
118
80
71
76
78
158
137
113
133
76
76
96
112
106
106
122
87
106
75
128
78
96
115
118
78
89
136
106
109
80
59
110
87
87
78
109
106
145
123
74
96
76
69
100
69
80
94
96
69
80
128
107
125
80
101
72
107
113
87
103
99
74
119
107
163
88
96
78
125
114
137
69
120
87
78
69
91
99
69
87
64
89
125
136
172
88
99
123
90
124
131
91
154
137
101
106
109
78
114
123
121
93
56
72
134
140
89
104
127
118
104
87
132
109
119
134
90
122
72
130
148
119
80
76
99
80
78
107
128
120
197
174
88
136
128
69
131
156
76
89
97
91
69
102
119
93
78
80
117
69
112
89
98
78
87
100
127
96
154
127
107
174
69
140
78
136
110
107
88
162
110
76
69
136
93
155
80
111
123
106
119
99
87
164
175
76
69
88
54
69
201
112
154
87
131
94
124
128
118
93
99
88
129
121
89
78
83
163
112
80
76
69
78
78
69
115
85
94
158
123
148
80
183
104
122
112
88
107
99
134
80
106
139
67
169
119
107
104
109
69
122
93
69
99
118
97
69
76
80
78
107
107
128
72
87
52
80
94
87
181
119
69
94
139
175
83
128
109
107
80
94
85
107
155
76
80
91
120
92
119
136
87
104
138
104
119
132
104
69
109
80
134
69
154
69
78
111
140
141
67
140
119
120
156
142
151
128
69
118
140
134
88
80
137
100
88
132
183
128
154
104
101
147
110
78
81
86
151
175
54
129
103
93
109
119
136
174
88
80
143
76
175
83
154
126
152
89
88
121
98
91
123
69
72
103
74
87
80
119
119
83
150
80
71
129
145
93
121
109
197
91
134
154
43
123
80
69
69
80
117
98
69
130
88
152
69
161
87
163
137
126
89
129
154
103
120
76
69
85
80
111
109
140
117
137
107
69
113
205
78
69
183
143
117
103
163
132
80
166
87
113
103
119
80
106
128
69
93
109
94
154
114
69
89
160
80
75
121
56
102
146
175
104
87
124
86
110
113
69
136
154
91
175
101
80
87
54
80
76
54
80
69
199
136
134
89
120
80
119
175
80
87
87
76
115
134
88
69
148
136
118
140
128
80
68
146
174
119
120
107
78
119
109
127
88
76
72
76
80
113
80
99
87
107
88
87
78
88
96
117
120
98
117
78
106
76
189
134
80
101
147
154
80
78
85
87
169
155
81
94
119
112
90
121
120
69
72
106
113
144
89
96
152
43
137
96
84
80
157
87
72
121
129
134
154
128
138
80
148
109
104
136
120
119
64
104
69
69
80
76
106
91
85
80
103
112
140
136
154
90
78
132
87
80
118
67
113
119
87
88
87
52
80
107
102
154
133
72
100
115
125
155
159
154
87
130
94
136
112
69
83
150
91
154
111
136
96
99
156
96
58
120
107
106
87
121
74
151
119
113
90
110
128
78
94
119
67
127
110
130
107
64
120
80
143
128
128
103
80
96
131
106
88
154
151
96
94
110
136
120
78
116
80
109
76
151
76
117
109
160
154
132
72
163
93
78
107
156
96
127
94
103
56
118
175
99
175
88
107
88
89
108
93
113
154
166
94
69
112
66
69
67
136
76
151
90
80
107
76
101
88
131
106
121
78
119
80
60
87
136
80
113
79
99
104
121
113
109
175
120
78
112
80
140
175
87
69
78
88
120
83
69
78
80
80
88
126
99
131
130
138
112
121
69
175
142
107
76
133
80
69
69
120
112
74
146
121
137
52
119
107
119
80
99
101
79
88
69
104
132
143
121
122
88
80
52
131
113
106
174
174
128
107
110
110
121
87
115
147
87
127
52
104
117
183
111
76
54
83
104
154
140
69
130
129
118
100
130
54
54
72
89
85
80
99
69
80
80
154
143
121
91
117
82
119
119
69
129
94
147
131
87
145
119
94
119
63
99
121
72
69
104
76
137
152
137
85
102
69
175
80
113
138
119
149
80
80
78
163
155
80
87
174
72
154
54
95
119
147
66
113
78
80
83
127
103
81
125
155
100
111
133
78
43
69
119
113
104
99
93
132
83
76
115
110
87
69
88
74
117
113
119
110
172
110
136
100
106
69
128
140
175
119
112
96
54
78
75
121
175
91
80
144
93
78
143
159
109
89
139
80
151
140
87
69
117
87
80
94
112
78
112
69
131
151
87
175
131
94
80
80
127
74
127
93
80
69
115
134
124
94
142
140
106
110
81
106
104
127
113
78
101
140
121
88
99
133
87
136
148
96
151
120
127
106
154
117
123
148
118
93
107
113
59
113
80
83
67
156
69
151
99
80
87
87
69
94
140
141
111
69
120
118
93
155
108
80
99
136
87
118
113
114
110
60
78
128
80
106
117
88
78
98
153
119
130
60
78
112
118
128
54
140
133
126
163
109
175
69
120
101
153
117
80
99
133
82
107
126
101
157
143
118
106
98
79
78
131
99
96
175
107
72
128
104
155
101
113
134
101
87
78
88
87
76
80
76
109
104
66
69
153
119
104
102
71
94
129
114
94
126
129
85
78
89
118
137
72
80
131
76
78
104
85
107
120
78
110
80
106
69
76
112
107
154
80
119
143
80
93
80
76
87
89
69
76
67
147
80
115
71
102
109
107
163
67
111
107
154
119
78
87
150
132
112
117
69
103
154
80
99
72
104
154
126
156
163
80
136
80
151
69
78
117
111
157
91
98
101
64
69
110
78
110
109
138
148
76
78
69
89
87
99
78
69
148
88
185
109
80
79
111
144
119
154
54
106
80
110
118
69
111
87
73
114
156
115
80
69
109
88
110
117
80
122
123
146
163
131
102
134
201
78
151
127
73
126
99
154
80
153
127
89
74
98
74
96
69
89
76
106
164
69
88
122
96
127
109
109
134
80
106
76
87
52
64
107
117
109
80
80
175
69
78
112
92
127
91
131
95
142
111
113
95
143
110
96
85
106
89
87
154
87
104
172
87
112
85
99
96
147
109
83
87
107
104
107
175
110
69
120
201
136
110
99
80
150
120
128
127
106
85
120
80
80
113
119
119
107
151
94
76
115
120
76
69
89
120
98
174
99
120
93
78
80
69
172
69
163
129
131
121
88
101
122
106
119
66
125
80
110
76
145
110
112
119
129
112
103
141
124
78
69
87
112
69
72
107
147
121
128
137
175
95
96
80
120
94
128
80
76
94
140
89
76
131
87
69
154
87
128
80
134
126
76
91
135
78
76
134
76
99
146
87
69
87
69
107
78
131
119
80
133
118
154
99
80
163
64
52
69
87
80
118
175
154
119
66
107
104
140
88
137
103
99
89
143
174
150
138
155
91
104
91
160
78
110
153
80
143
132
113
129
91
129
163
136
99
126
69
104
146
104
103
197
58
127
93
120
130
93
92
83
159
111
80
142
102
76
164
109
72
134
127
104
121
101
78
93
76
130
69
163
78
134
112
93
85
126
76
99
119
68
87
126
175
88
86
69
76
69
117
85
121
201
119
80
175
107
131
88
137
73
113
54
104
163
151
125
80
110
66
102
120
76
87
151
127
76
76
67
121
104
145
52
169
89
175
94
43
96
69
131
113
130
102
131
118
154
78
80
72
99
80
123
111
106
104
76
69
110
76
120
140
87
116
154
78
117
121
112
80
79
107
69
72
134
69
80
110
143
134
127
87
87
69
94
149
72
127
128
80
119
109
78
91
98
134
88
64
80
151
184
126
128
149
83
78
89
99
151
109
87
149
140
125
121
109
137
66
127
128
69
74
154
104
78
106
80
99
110
107
106
96
80
88
87
104
125
175
69
85
79
109
154
145
148
120
113
93
136
131
87
178
71
87
132
124
114
69
69
76
78
123
97
119
137
88
117
104
87
131
163
87
119
78
131
87
119
78
129
81
136
140
135
126
80
154
80
57
91
101
72
99
120
69
110
107
121
136
102
69
69
128
87
90
80
101
69
87
144
80
117
139
52
80
155
175
72
69
101
78
107
91
155
95
87
106
89
117
113
119
165
69
128
72
72
85
115
140
95
80
89
140
138
89
109
112
76
139
95
119
90
109
131
80
80
106
119
144
80
175
134
122
100
76
94
143
80
80
101
77
69
69
87
78
85
69
121
96
99
107
78
146
143
138
131
80
69
69
93
69
94
80
80
87
107
127
128
93
87
94
91
90
99
110
113
106
106
89
107
69
113
87
152
134
119
78
78
151
119
69
164
80
175
78
183
136
80
151
78
117
110
88
74
121
120
154
87
112
114
106
64
72
120
94
89
138
147
80
109
104
148
87
87
96
110
88
155
120
76
73
91
175
87
83
113
64
175
123
119
80
124
87
93
128
136
174
73
87
109
127
85
128
94
138
107
148
137
126
59
197
66
89
66
125
72
120
91
156
69
104
80
163
106
155
175
80
112
119
76
68
115
85
134
145
111
101
124
111
138
120
91
69
98
140
136
145
146
105
146
117
78
128
96
94
110
108
74
89
125
96
136
85
93
80
99
138
107
75
109
137
81
148
110
117
80
82
103
119
175
91
76
144
119
107
122
104
89
123
87
88
80
160
120
133
107
78
78
89
154
143
72
78
88
154
87
176
112
126
87
149
69
107
89
112
103
175
118
87
92
151
122
175
101
80
116
101
128
136
122
128
87
72
121
112
89
76
136
72
133
89
115
80
88
131
126
87
131
154
72
109
127
128
110
119
111
76
87
132
112
124
155
100
85
122
101
110
94
134
57
143
106
80
81
121
134
74
66
82
69
76
89
94
69
121
124
76
72
80
67
69
100
104
103
87
88
113
69
80
88
117
96
110
99
145
87
139
102
69
72
98
88
175
134
80
94
149
130
80
94
126
113
69
64
88
87
134
115
69
74
93
109
67
87
120
78
112
110
113
122
111
201
89
146
120
87
119
134
88
107
94
197
91
137
157
96
102
106
187
91
91
107
153
98
128
154
76
69
121
104
80
166
100
94
101
69
106
140
88
117
80
87
76
91
80
183
80
138
164
74
153
88
112
133
100
151
150
93
99
104
134
99
78
101
146
165
69
78
121
69
181
80
87
80
52
72
92
122
87
69
112
119
137
133
85
62
76
83
78
107
69
120
124
146
91
93
146
103
100
88
137
80
80
91
69
175
154
197
106
166
84
99
89
117
113
69
69
94
109
101
121
99
163
107
128
80
78
95
69
95
101
88
69
80
131
136
175
88
119
69
119
80
113
120
119
164
69
109
75
136
98
80
78
89
159
87
141
151
117
69
118
175
102
126
89
107
89
95
76
69
113
80
80
141
128
96
155
80
119
140
80
140
130
76
197
69
80
137
111
119
127
60
84
122
140
133
76
101
69
76
112
93
175
74
80
103
76
144
116
151
110
123
146
123
89
99
107
69
117
80
72
123
88
80
76
76
143
109
156
120
88
104
83
140
80
78
107
87
110
117
109
117
88
91
69
80
172
130
112
114
80
109
69
119
118
87
107
185
87
88
114
82
142
80
67
76
89
125
99
78
54
107
113
87
152
69
128
73
130
119
85
154
76
85
193
54
69
120
87
80
112
80
155
133
99
136
109
110
104
88
99
110
106
99
87
109
88
80
140
89
122
154
175
95
154
112
76
123
80
85
122
130
142
162
69
126
117
69
109
175
57
72
122
93
80
52
106
119
107
56
81
93
130
107
131
91
78
69
101
69
113
160
82
88
87
107
121
79
151
107
113
99
85
151
107
137
119
104
128
175
82
136
102
175
93
136
78
69
126
69
74
107
111
117
87
140
89
147
87
119
91
148
101
88
151
155
156
80
156
140
80
96
148
99
108
134
128
99
120
118
199
107
76
80
56
120
101
175
114
78
99
112
106
89
99
120
106
69
91
154
78
76
133
120
54
52
52
87
94
110
94
72
104
89
137
120
80
75
78
112
104
72
96
126
121
131
104
93
75
115
87
119
75
80
117
127
111
114
132
121
120
140
80
160
121
80
175
89
120
80
54
119
107
154
140
104
80
80
164
175
113
69
88
127
69
119
101
111
119
87
94
95
87
90
109
94
64
121
117
101
175
80
163
69
140
76
64
91
78
99
120
136
80
76
136
146
126
93
80
128
119
120
104
107
76
72
140
149
115
78
96
66
128
80
130
118
136
101
131
80
78
99
80
80
96
100
124
96
80
89
128
155
78
117
131
120
80
107
162
80
103
136
74
102
147
113
89
88
94
80
154
110
143
72
80
76
118
136
96
76
112
121
110
67
80
69
129
128
174
56
72
90
136
69
112
119
141
107
110
72
89
118
147
96
93
127
107
76
89
88
110
80
120
175
80
89
145
142
107
118
87
88
78
154
137
85
52
113
78
123
69
69
120
156
113
121
127
101
146
96
69
105
63
127
100
152
67
109
100
87
54
121
119
79
80
123
72
109
119
131
120
119
119
69
79
88
111
94
125
139
80
56
113
116
87
103
109
100
104
80
88
175
120
99
104
81
69
156
99
132
127
120
80
95
94
110
78
113
92
76
74
99
78
87
130
121
88
199
90
107
128
101
92
134
78
141
80
113
69
94
124
105
131
114
92
69
110
110
73
97
155
93
145
109
113
110
93
78
124
154
69
68
136
69
87
134
151
109
109
83
111
87
110
80
80
64
125
92
91
175
113
78
88
137
112
115
88
102
148
80
76
112
99
96
116
99
155
128
109
87
76
127
58
119
76
76
87
80
123
80
105
80
157
78
69
76
88
95
134
156
96
134
76
90
72
76
88
175
136
78
183
69
120
104
100
104
146
124
69
115
87
94
76
109
90
110
87
134
94
80
109
131
141
99
126
80
98
118
69
156
98
197
87
112
117
128
52
156
69
78
121
134
134
109
80
120
69
104
136
152
146
80
101
78
78
93
113
119
80
156
80
95
99
122
148
138
69
102
72
72
79
152
106
160
128
143
126
151
145
153
121
119
93
111
114
83
87
80
91
117
126
126
80
89
164
107
80
92
157
111
128
80
129
140
93
119
147
114
100
154
124
175
89
90
134
121
113
87
93
109
156
113
80
114
110
99
117
155
87
119
113
117
69
107
78
120
183
99
160
76
102
85
155
93
89
59
69
126
80
69
117
54
80
72
128
129
144
96
112
150
112
104
78
134
138
154
137
156
130
69
145
157
85
156
78
114
69
201
143
156
140
111
80
96
57
128
104
102
152
85
43
101
115
119
80
113
99
85
120
80
119
102
121
96
100
87
131
80
118
80
197
144
136
145
131
120
87
131
115
80
100
98
110
89
87
54
114
103
113
80
112
80
131
93
78
88
129
117
78
155
131
91
87
109
134
106
74
109
87
100
123
112
80
80
133
93
69
96
67
91
79
134
159
134
145
107
69
87
120
90
66
72
101
121
54
89
99
76
134
69
76
129
69
129
140
129
143
66
120
83
123
76
80
128
76
110
181
78
128
89
88
93
134
123
124
113
103
112
92
156
123
100
103
107
101
128
104
181
107
69
109
97
115
95
175
119
175
69
175
118
119
154
87
183
118
88
94
154
76
100
101
110
89
152
93
130
80
119
128
131
145
62
72
106
54
142
85
72
106
69
104
97
90
106
120
126
99
56
92
96
110
88
175
109
112
80
72
109
80
95
75
69
99
87
121
107
155
119
93
78
78
155
120
76
119
119
79
163
120
111
118
127
80
99
177
103
117
101
131
152
90
106
107
134
154
109
90
151
151
73
102
71
95
106
94
95
67
76
154
87
131
69
113
69
87
76
69
99
113
142
103
101
146
144
113
100
107
94
137
136
141
119
72
111
106
69
141
69
156
93
80
119
102
69
78
77
87
69
69
131
127
113
175
118
129
80
175
111
80
139
87
76
156
80
96
122
76
175
99
78
134
109
175
126
88
76
110
100
76
154
126
76
89
104
78
110
125
99
146
107
99
69
80
97
66
93
103
89
69
169
85
140
197
82
69
127
92
89
133
80
113
119
112
96
80
88
99
149
106
110
175
120
112
125
118
69
139
152
121
128
128
126
117
69
113
106
154
80
121
107
178
152
72
120
69
113
128
172
120
90
91
119
128
134
151
76
145
121
113
113
67
84
87
87
127
164
80
54
69
156
85
96
129
80
87
175
107
128
104
69
94
151
99
107
114
69
87
135
101
155
117
109
201
140
94
123
117
80
67
128
94
96
149
96
88
201
196
107
76
104
104
99
78
99
125
80
72
85
120
80
175
131
54
76
95
76
87
143
175
150
102
125
107
69
197
126
75
120
120
78
76
107
72
175
76
161
89
133
109
107
199
106
129
119
175
76
106
111
67
80
80
148
131
104
111
145
103
110
129
106
142
80
109
80
80
99
95
144
76
117
118
133
156
106
136
85
78
89
120
155
78
144
104
87
164
87
122
78
91
119
134
106
110
102
78
134
122
89
94
69
130
163
80
82
140
81
89
109
76
127
54
43
116
89
86
145
131
151
121
69
69
88
80
183
136
154
119
101
156
80
74
145
80
107
89
103
120
90
175
94
156
134
110
80
124
199
101
89
107
107
85
145
64
69
107
106
100
126
163
80
78
114
112
76
110
136
134
131
72
101
112
106
123
80
102
154
121
87
96
129
99
69
101
134
72
102
106
104
154
89
123
74
124
80
101
104
80
98
80
89
114
96
110
76
109
88
108
106
95
120
43
143
102
120
107
85
119
79
107
113
120
87
131
87
116
52
96
72
96
76
119
76
102
109
106
146
69
151
175
112
106
136
101
175
101
107
187
154
97
101
69
126
79
69
88
69
91
136
175
156
197
118
136
76
114
113
106
119
99
69
117
58
113
78
109
82
87
78
199
197
121
128
82
87
91
88
76
121
117
96
145
80
90
115
119
113
119
163
72
112
89
80
150
71
140
107
95
120
99
72
119
94
80
88
78
130
89
109
76
104
87
76
80
69
96
91
114
186
104
87
121
80
94
183
78
82
91
119
73
122
128
69
80
94
89
126
69
80
129
74
136
137
117
69
89
104
127
114
148
128
80
120
67
112
94
175
112
78
72
91
199
100
106
136
96
80
80
136
120
104
91
119
96
139
128
114
78
96
175
114
87
69
69
99
157
119
104
80
78
101
113
87
78
72
97
76
163
123
85
199
107
89
91
96
94
128
99
113
109
80
80
104
125
111
111
91
88
112
76
79
103
107
80
127
119
121
76
147
104
96
156
119
69
131
52
87
85
87
140
109
90
96
119
119
131
80
85
175
80
122
155
89
69
94
80
78
69
88
80
124
91
134
107
99
96
156
131
82
120
72
87
175
155
107
87
80
52
197
94
75
104
91
154
94
109
175
74
107
69
146
80
89
113
136
80
136
87
119
91
78
58
131
101
87
78
78
115
80
111
154
80
72
43
113
80
101
83
175
69
119
154
72
96
76
72
80
164
80
107
80
54
106
125
87
140
69
118
87
134
110
128
119
80
107
87
155
109
108
113
81
80
128
88
119
115
94
151
129
106
128
111
54
109
81
69
82
69
175
89
76
107
78
69
69
99
156
99
112
76
96
154
80
52
110
112
72
104
80
99
100
78
80
104
165
76
69
156
115
108
72
120
106
128
80
125
119
107
140
64
80
160
117
147
100
120
144
112
183
80
89
110
145
69
76
93
119
127
109
140
136
88
52
175
154
87
114
163
147
163
96
111
209
87
102
107
134
120
69
69
121
133
119
112
87
54
80
72
100
74
87
156
76
101
107
122
69
107
147
88
80
58
69
187
101
74
140
110
119
100
151
119
132
109
96
112
154
72
80
88
80
80
87
94
69
129
94
197
74
110
153
112
185
129
109
91
99
127
134
156
113
156
95
99
183
175
99
82
122
120
80
140
120
197
136
87
69
123
87
112
131
80
114
146
117
175
156
149
109
78
102
120
96
163
136
93
60
164
134
96
76
94
89
101
151
94
91
155
89
144
92
197
76
121
69
96
119
143
137
80
69
131
69
94
80
78
137
115
96
78
177
69
76
131
87
156
119
110
69
128
156
107
117
140
106
134
107
96
99
94
98
89
157
80
114
136
100
109
78
104
88
87
104
114
175
111
96
87
87
129
113
128
80
116
78
175
174
111
101
91
78
154
94
69
145
93
130
87
87
140
80
156
79
80
128
102
80
54
119
94
69
102
78
119
119
122
54
132
96
78
97
73
154
83
95
154
89
121
56
155
76
110
83
107
82
95
136
145
88
127
141
128
80
66
78
119
101
155
93
120
87
119
76
156
100
120
80
69
102
154
128
110
154
142
132
91
80
88
125
144
75
145
126
76
112
118
93
88
128
78
80
69
110
87
137
136
87
107
91
76
154
69
119
105
154
160
131
114
120
76
141
87
79
96
93
119
154
96
69
87
85
69
113
87
76
56
76
89
78
72
141
78
151
109
155
80
112
87
88
116
69
89
78
83
95
87
133
69
69
126
80
74
69
76
175
69
80
128
96
130
80
207
93
113
87
150
144
129
166
154
96
98
85
128
74
101
154
52
119
80
89
162
134
107
69
93
80
80
118
156
130
110
120
123
154
84
115
100
87
88
69
120
107
80
113
174
69
128
145
69
113
69
107
102
69
127
106
155
85
140
69
80
140
107
89
113
122
130
145
134
87
133
104
136
88
119
94
154
54
99
107
98
80
122
74
110
113
69
87
43
201
151
157
80
155
121
94
134
136
94
87
138
118
96
80
69
164
110
94
69
112
78
121
76
113
90
197
88
91
104
76
78
132
174
112
136
69
155
100
94
78
87
91
94
107
107
80
128
117
102
94
78
74
144
140
80
113
133
58
90
69
99
124
76
111
72
106
69
66
110
109
98
175
107
91
126
78
146
93
66
127
118
157
119
80
134
72
110
78
115
175
110
88
87
86
102
120
78
76
197
94
75
128
172
80
140
76
131
120
119
175
107
148
144
93
106
197
113
113
78
80
113
72
100
136
54
76
80
155
100
78
138
98
110
128
142
67
52
80
87
69
128
99
113
165
113
76
104
136
80
76
88
101
94
134
81
131
138
106
80
69
175
80
134
113
69
128
109
102
154
80
154
87
94
76
129
96
76
155
128
199
96
98
112
80
80
74
80
121
146
69
113
107
78
164
76
119
76
80
127
74
129
80
102
76
76
120
169
99
149
132
82
107
197
69
94
60
106
161
106
99
151
69
96
120
69
76
92
109
103
78
87
120
84
113
110
52
80
69
96
124
100
71
99
69
81
154
109
120
154
133
88
101
104
94
87
148
117
80
142
138
83
78
113
157
87
110
88
69
154
113
69
127
128
117
144
91
78
155
52
69
120
78
80
151
99
101
87
119
175
74
114
89
87
103
101
128
109
112
56
146
78
120
134
151
88
114
107
76
130
156
147
76
133
110
120
121
80
89
74
99
199
97
75
110
80
69
175
94
87
78
79
119
118
122
126
89
102
119
175
126
127
89
134
116
107
71
121
69
80
78
83
76
109
93
107
111
131
168
119
69
80
120
80
120
85
69
136
78
109
96
80
78
130
150
87
119
102
140
82
76
85
131
80
94
109
107
128
128
78
91
121
141
197
74
113
134
76
89
156
117
99
74
87
130
54
96
131
157
107
85
94
76
90
90
101
127
76
99
145
155
136
106
128
113
78
87
72
145
175
107
52
134
120
162
115
99
94
119
74
113
197
80
76
150
140
113
69
78
131
80
154
78
140
99
163
112
54
59
78
112
185
93
147
130
69
89
78
69
113
156
101
69
112
93
52
127
110
142
80
100
69
87
54
99
151
91
121
132
80
122
120
105
69
91
69
140
83
120
119
93
115
130
128
80
110
87
181
74
74
126
57
69
104
109
103
163
80
99
131
156
69
109
99
126
89
82
100
96
131
104
80
88
117
80
81
69
92
120
128
69
80
80
155
89
78
56
93
133
133
87
56
69
147
63
100
163
72
94
118
107
107
117
145
80
87
113
69
154
87
80
102
94
94
76
76
80
99
94
119
126
101
175
80
134
88
76
69
109
69
80
117
115
83
96
107
174
131
154
98
138
119
121
78
128
118
103
110
76
76
106
107
140
92
80
66
134
183
107
107
110
101
109
107
121
142
103
72
75
117
80
72
87
88
96
106
121
99
144
109
100
152
80
101
129
92
120
91
69
90
87
128
56
155
76
99
128
127
145
89
89
117
74
110
154
69
94
76
67
87
120
93
78
153
101
76
96
92
87
163
87
106
107
197
137
88
87
76
69
85
110
90
101
99
112
119
78
101
103
144
130
103
78
104
121
80
80
127
120
96
134
121
118
124
156
110
127
144
113
112
103
136
155
156
127
137
80
107
69
99
118
78
88
131
134
87
109
93
146
76
72
107
106
87
137
134
106
88
94
80
131
175
118
72
121
78
131
72
89
76
99
140
106
104
96
106
107
87
154
96
69
80
90
117
91
100
69
175
104
69
175
69
109
104
80
178
78
103
104
99
153
114
128
66
142
109
88
78
107
86
109
175
87
78
165
98
131
132
80
111
126
104
69
127
87
127
99
76
118
106
76
127
154
154
94
117
93
107
112
69
121
107
112
99
143
154
119
80
107
106
93
87
175
89
87
69
136
69
148
154
69
89
78
145
131
80
80
56
89
113
107
80
175
120
128
76
119
131
83
86
142
96
120
131
69
155
120
106
80
78
80
69
78
122
145
69
115
52
128
99
120
117
78
127
69
113
120
78
165
90
106
175
80
119
78
151
80
76
74
109
69
99
114
150
93
87
68
111
87
134
69
113
89
115
106
123
96
69
100
80
72
107
121
120
87
145
80
66
88
156
131
95
119
69
88
89
96
128
68
201
133
107
114
66
163
174
79
113
102
80
98
160
140
89
94
136
112
80
80
80
104
175
74
89
78
122
154
87
109
74
104
128
102
87
103
175
138
81
80
80
107
118
120
87
120
64
104
128
76
87
123
69
78
123
128
98
131
132
76
76
160
54
71
69
117
89
83
157
80
80
134
80
155
88
115
140
87
69
104
121
107
54
72
134
80
121
127
92
83
118
54
117
104
43
143
99
127
111
104
76
127
123
82
135
78
175
128
76
83
154
181
89
117
125
128
94
130
57
119
131
80
119
76
77
75
108
87
137
43
91
89
124
118
80
131
87
69
144
69
107
117
72
72
136
66
164
93
120
119
113
120
80
95
80
87
112
120
136
78
107
120
101
107
151
143
88
120
102
99
121
87
69
120
67
69
72
99
91
119
112
98
145
107
63
89
120
69
87
120
76
109
78
160
166
123
104
109
54
76
100
80
85
109
102
102
128
136
107
88
80
107
118
98
89
72
119
177
78
90
113
128
95
120
68
102
122
87
91
76
87
80
113
96
54
93
68
110
133
80
120
87
93
90
118
104
69
113
128
99
76
154
99
76
76
145
85
106
80
107
155
80
56
111
107
128
154
131
69
110
69
197
136
112
80
80
100
140
83
113
78
94
119
134
54
139
130
80
122
111
74
78
80
114
117
113
145
175
80
129
78
107
145
110
142
69
89
172
80
101
128
113
78
76
117
94
90
69
119
109
82
109
175
76
122
89
69
122
90
94
80
107
85
156
80
69
118
76
131
110
76
110
74
109
99
88
85
119
119
107
80
91
76
116
102
128
96
89
113
107
117
144
113
69
103
134
76
108
146
133
56
69
134
113
124
101
118
125
175
89
99
121
98
123
91
112
174
125
107
78
78
94
121
133
109
110
76
104
79
78
76
78
109
130
78
112
107
85
87
135
107
102
80
94
163
54
69
69
69
80
69
96
128
80
52
87
107
87
89
133
145
76
80
69
119
111
101
87
85
128
77
88
80
69
140
124
76
98
103
94
80
129
69
89
117
151
124
163
80
116
178
107
78
80
122
101
124
153
128
111
131
185
119
88
76
121
112
78
76
175
88
175
99
156
87
106
87
94
155
54
99
112
95
121
90
74
104
87
117
120
80
133
136
109
109
69
119
124
110
78
87
87
121
163
109
94
163
154
100
134
102
137
134
85
106
107
183
119
121
79
88
69
87
117
120
69
134
152
131
111
89
87
69
131
69
109
83
129
78
166
114
103
89
140
91
101
106
164
120
159
74
114
131
93
130
67
99
78
129
78
96
107
72
88
119
76
52
69
94
148
93
83
98
54
141
140
78
80
78
104
146
154
120
131
56
54
87
69
74
185
108
146
99
107
156
85
94
78
89
69
118
160
105
76
80
69
76
74
143
101
171
76
121
113
110
87
109
69
69
78
120
88
141
54
134
128
156
121
72
105
145
113
88
117
98
69
99
90
157
112
54
117
96
107
69
69
87
76
119
131
151
100
201
110
69
80
161
67
165
80
128
140
109
80
69
106
52
80
81
109
99
128
87
78
93
87
120
80
88
93
107
91
122
89
119
100
124
110
140
131
103
75
156
140
146
197
119
78
72
121
102
128
163
128
119
87
87
109
78
156
102
89
156
93
98
76
175
140
145
99
87
74
197
80
80
80
107
112
90
119
101
175
88
80
80
69
82
109
119
104
93
78
131
80
87
172
87
72
128
69
143
130
197
88
107
80
87
94
99
122
69
69
104
197
107
119
131
137
88
125
76
69
87
76
119
99
136
76
106
66
128
118
80
96
154
155
119
114
106
143
81
89
151
54
175
69
118
119
104
93
95
175
69
76
119
104
87
74
146
91
80
101
80
83
106
78
83
121
104
127
105
87
128
66
76
99
124
80
148
96
87
134
80
80
145
87
87
87
136
78
85
138
104
80
90
76
76
107
78
88
73
147
69
72
88
99
69
79
175
78
52
76
117
215
121
98
80
76
64
142
110
107
101
150
80
94
103
129
139
128
121
119
104
110
119
113
89
96
96
120
129
131
133
156
128
87
133
136
131
96
117
94
80
91
136
143
120
69
146
127
87
94
117
165
89
115
115
94
115
69
80
74
110
110
91
89
94
80
88
103
107
104
175
88
153
188
136
88
127
78
131
109
118
93
197
155
197
104
126
72
80
93
88
143
99
69
131
137
52
109
106
101
143
56
86
74
56
175
85
69
151
85
99
87
112
91
69
154
94
96
121
88
109
136
104
118
80
80
111
128
132
87
88
164
78
109
94
118
75
54
110
80
78
94
128
69
80
88
131
136
88
104
87
87
87
131
52
87
90
76
94
112
87
56
119
78
112
113
88
85
93
102
134
80
78
85
69
115
109
116
125
155
69
76
119
128
119
138
88
95
100
87
43
107
113
88
74
144
101
115
121
76
80
116
163
80
118
122
156
87
119
104
76
132
109
124
96
87
114
69
175
133
89
89
54
143
80
78
88
137
91
119
175
56
138
119
69
175
80
197
93
73
100
80
52
96
80
69
126
93
85
118
107
76
99
93
69
199
111
142
140
93
109
85
102
80
76
91
80
125
162
124
76
107
110
111
87
103
128
105
69
129
69
69
119
81
138
134
91
145
117
80
163
97
80
93
80
85
128
113
110
172
76
113
110
129
72
119
123
175
128
100
110
80
120
132
96
119
72
154
102
83
69
76
109
128
109
87
88
91
101
107
69
131
69
80
136
111
103
117
126
75
76
155
69
140
74
58
112
77
80
160
81
112
80
100
147
120
89
117
88
80
78
132
78
98
95
80
76
148
104
142
175
109
72
94
117
69
80
92
143
76
106
63
110
175
128
154
114
95
81
87
80
69
87
114
107
107
78
102
110
137
99
87
113
87
76
80
155
93
87
82
127
112
87
72
92
130
119
69
185
119
89
175
96
155
132
95
56
164
121
80
96
78
123
93
116
114
93
96
99
143
122
129
112
110
78
66
154
155
100
54
96
122
76
94
69
87
154
148
93
125
150
91
154
116
106
101
78
73
109
99
134
106
130
76
126
154
66
69
94
94
100
91
110
78
80
56
107
87
85
127
101
120
175
178
59
106
127
101
80
131
121
110
121
80
155
110
94
78
113
123
88
56
140
102
131
69
131
169
151
71
175
139
69
148
102
100
197
120
69
107
71
68
120
128
197
112
86
120
80
96
80
76
134
183
102
91
134
89
80
157
140
96
136
140
107
81
122
72
109
56
85
125
87
106
154
145
135
52
93
113
76
128
89
78
113
101
103
136
120
103
93
80
76
121
137
80
125
80
118
103
54
71
78
73
154
145
52
96
64
162
109
106
87
117
81
88
76
109
69
103
131
69
83
80
90
69
111
88
80
146
152
113
121
92
80
87
165
80
154
126
175
110
131
156
74
137
140
110
197
151
106
83
128
93
127
105
115
69
69
94
101
89
152
122
69
127
119
78
86
109
128
58
154
78
119
93
126
87
85
66
151
80
117
113
78
87
128
136
155
113
88
114
80
138
107
89
87
140
89
119
111
181
197
157
107
101
103
78
140
88
109
80
90
162
96
138
128
69
95
87
175
154
79
155
99
69
154
119
107
80
101
143
120
119
134
72
87
136
154
107
119
72
119
163
83
156
80
131
87
89
88
78
80
97
175
87
72
119
101
113
93
80
109
99
110
87
119
104
89
145
99
140
131
128
94
128
80
96
113
109
154
104
96
80
58
96
130
118
145
151
69
112
107
102
80
100
163
80
110
72
106
74
72
175
87
88
76
121
82
124
85
148
151
175
83
136
69
103
104
94
93
131
75
80
113
76
130
69
76
64
92
199
89
76
121
161
100
72
78
136
90
120
127
88
94
107
175
150
89
163
146
96
89
154
175
74
101
87
91
106
125
80
205
136
80
80
125
155
110
133
104
106
96
99
70
104
128
149
123
201
88
75
114
132
121
79
72
94
107
107
154
175
114
106
69
80
128
80
130
76
103
104
148
80
78
112
87
134
54
148
69
80
78
106
80
106
109
101
126
104
151
80
156
140
88
143
69
88
76
93
118
106
90
154
127
128
69
80
104
72
80
104
96
115
189
76
80
140
119
94
80
106
122
128
99
72
56
69
80
131
136
109
87
106
156
78
131
134
94
154
128
72
156
146
78
99
104
119
88
153
101
101
119
76
111
69
99
146
80
99
119
86
93
156
72
87
113
91
88
76
87
122
107
120
107
140
69
93
80
76
76
83
94
87
57
80
127
124
110
91
89
76
175
99
92
69
101
54
80
43
119
114
80
80
80
90
110
89
146
87
155
175
78
107
94
154
151
114
107
80
123
78
138
67
108
99
127
89
89
105
94
64
102
174
142
104
100
69
175
52
154
103
94
112
88
154
120
69
78
69
109
110
175
120
120
140
87
146
94
80
136
69
103
154
95
114
154
106
68
99
98
109
147
119
67
69
94
91
93
78
93
112
80
87
88
76
80
101
69
89
150
72
111
121
87
106
71
156
100
94
102
94
113
127
128
69
94
91
133
94
69
109
87
96
80
112
87
87
111
106
128
89
85
148
119
93
99
109
64
197
99
175
93
88
90
88
113
155
134
87
91
87
69
101
115
133
137
165
63
88
69
88
77
108
80
87
87
76
80
91
117
72
90
103
120
80
69
87
151
123
129
112
88
69
118
136
155
120
80
136
109
52
131
78
154
87
113
69
78
111
117
197
134
134
91
94
136
76
80
101
113
91
72
160
117
197
69
175
175
80
153
86
107
129
131
89
148
140
130
69
112
120
174
131
154
74
72
151
112
135
117
134
136
74
104
78
94
93
58
74
94
87
119
175
66
97
131
92
87
107
176
85
76
58
152
106
175
87
88
124
136
101
145
88
94
89
78
143
78
109
122
78
137
76
175
80
156
76
159
80
137
87
52
119
100
94
69
101
175
100
154
103
146
128
156
80
154
72
117
93
134
126
155
69
121
88
88
88
80
123
120
175
69
103
114
106
80
77
120
93
98
88
52
133
101
175
156
112
78
87
132
146
187
124
109
80
128
74
74
72
78
80
115
119
69
78
99
72
119
139
163
109
76
134
88
119
119
104
128
156
63
80
131
99
80
76
119
67
197
69
136
72
119
78
120
120
83
82
175
85
89
92
115
99
109
134
104
69
134
141
104
87
117
123
80
131
98
52
94
129
80
69
104
69
123
127
69
131
106
163
163
126
87
76
99
130
106
133
134
120
145
80
74
106
69
80
101
129
164
131
178
80
76
120
88
154
69
144
78
89
89
80
93
76
151
105
129
128
87
111
78
134
160
120
115
155
102
185
99
117
101
151
69
87
107
69
107
115
115
93
119
91
112
69
109
140
119
80
92
87
101
181
100
80
80
69
99
71
120
90
76
122
69
76
132
151
136
87
80
80
95
174
99
69
96
76
102
80
80
134
151
99
166
87
136
181
88
43
76
131
175
128
109
134
80
69
107
87
90
101
154
104
89
69
93
86
76
102
120
94
117
78
96
69
133
91
69
78
154
109
94
112
115
155
109
109
134
107
117
145
121
78
120
82
102
119
141
71
147
76
140
121
94
89
134
119
99
113
109
93
96
107
136
93
136
183
79
91
114
128
97
87
69
104
120
175
123
137
107
94
136
114
127
63
67
101
59
110
154
156
72
78
87
72
127
78
127
122
91
115
56
89
130
78
154
93
80
124
87
145
83
114
112
80
87
107
91
106
134
114
151
88
136
113
103
58
76
107
94
120
121
69
119
80
103
154
133
93
93
123
76
134
95
110
111
81
78
156
101
110
124
80
76
120
101
115
78
106
175
126
128
80
174
163
113
146
86
89
106
83
120
123
119
115
80
102
69
87
97
143
119
94
98
109
93
127
128
109
175
151
151
69
131
119
105
96
69
100
129
78
175
87
172
80
91
134
122
67
87
134
89
78
94
134
85
100
164
154
76
124
91
142
87
136
85
93
75
80
76
69
87
109
113
149
89
82
136
117
146
96
72
103
87
96
85
136
181
122
57
87
142
99
99
175
129
100
197
78
87
117
131
94
102
83
160
117
114
52
78
119
87
176
89
87
119
119
83
128
52
150
87
78
126
109
88
93
113
197
128
152
104
120
80
69
88
76
89
80
69
76
102
99
119
145
90
121
90
80
107
110
69
107
128
80
146
154
120
74
119
134
107
69
132
110
112
115
99
132
136
154
78
101
78
115
117
120
78
88
80
129
154
67
121
100
91
163
74
113
109
74
104
111
147
93
87
140
69
134
106
131
118
72
121
96
108
112
120
115
75
134
69
76
143
99
87
87
201
154
132
94
72
93
151
107
138
69
156
163
104
113
197
76
118
96
199
80
85
134
130
155
78
119
99
111
132
121
76
90
102
69
67
87
78
72
119
131
128
106
104
110
69
112
175
76
76
120
154
113
104
101
76
128
94
94
127
128
113
109
113
136
120
87
107
91
56
76
87
88
80
69
76
80
106
80
99
72
87
119
111
80
76
76
106
117
152
155
112
119
99
121
104
85
107
88
112
112
87
119
154
103
124
106
69
103
76
156
72
80
132
98
83
74
66
112
87
140
87
80
122
76
134
80
78
88
104
151
142
131
98
138
69
92
106
69
109
109
131
108
107
87
89
89
111
175
145
56
80
109
94
87
80
90
81
76
151
185
103
80
91
94
101
126
132
175
155
100
154
94
107
79
94
76
116
143
99
183
113
175
74
151
176
197
99
111
80
158
107
69
87
113
187
67
80
114
99
119
123
80
153
60
134
99
134
118
154
81
138
54
120
94
93
120
102
109
107
150
101
107
146
80
88
154
80
74
121
67
144
87
106
107
95
87
69
104
115
132
88
94
128
72
154
96
93
89
110
132
145
155
107
100
127
103
125
91
78
136
131
185
79
78
126
104
134
112
132
119
117
120
117
80
81
156
78
76
121
100
104
140
90
110
80
80
156
129
136
76
117
74
112
131
112
111
99
140
69
156
113
52
96
125
151
87
99
131
134
155
107
137
75
175
72
88
99
89
88
185
107
143
80
129
153
123
69
134
72
118
76
111
87
126
94
122
110
102
109
119
85
80
95
99
147
127
119
154
111
85
78
132
120
183
138
184
145
74
148
109
89
87
69
119
124
154
147
106
156
123
127
151
80
110
114
175
91
80
150
134
138
137
78
87
149
74
96
140
99
163
107
80
121
131
89
134
98
80
78
119
66
136
80
110
107
98
111
66
78
134
132
164
69
127
106
129
117
119
110
156
113
99
127
107
140
88
137
69
87
96
96
78
89
176
87
110
106
166
154
80
127
112
118
131
89
99
175
89
78
109
123
76
80
154
93
117
78
113
69
110
172
80
138
156
175
88
69
85
94
76
101
80
175
134
112
75
140
101
155
89
94
120
80
178
60
63
54
97
148
134
87
129
69
104
165
75
120
121
117
123
69
87
69
134
107
112
128
80
107
155
76
127
128
115
133
80
76
69
156
154
72
87
91
150
117
74
132
156
78
99
87
117
107
110
89
120
163
80
119
171
66
109
151
120
94
97
134
197
145
89
148
151
162
107
72
69
129
89
141
113
124
91
114
80
69
80
99
78
135
78
74
136
134
43
110
109
43
154
136
121
106
154
155
127
92
69
76
79
115
69
78
159
134
80
80
80
162
111
102
134
117
187
91
130
117
140
197
181
102
87
76
104
137
156
82
119
128
80
104
115
117
112
99
71
162
80
136
96
88
141
134
96
56
87
56
96
134
153
134
72
94
136
78
128
90
87
87
120
72
97
101
74
175
93
154
52
88
197
83
89
80
91
92
96
131
87
69
128
94
69
148
80
99
107
80
72
69
105
87
113
111
69
119
87
109
89
91
152
129
129
117
107
120
171
133
175
160
128
99
100
106
134
140
110
110
76
124
106
120
113
136
123
154
76
113
81
186
76
154
107
140
80
109
120
76
123
80
97
76
131
95
130
109
119
80
107
99
110
72
130
69
91
107
122
80
91
118
87
119
74
99
80
163
134
80
102
101
113
183
76
87
117
139
87
107
129
78
78
178
128
67
106
99
113
124
107
102
89
104
80
69
96
109
175
144
162
80
76
76
104
129
69
121
74
85
153
81
102
155
117
112
69
121
69
175
117
78
119
143
64
101
80
80
75
89
80
129
72
87
69
80
122
134
119
80
94
87
93
78
112
78
89
95
94
99
164
69
88
80
101
111
107
156
116
166
140
132
132
99
132
143
137
147
156
156
88
103
102
76
78
106
121
145
69
58
80
80
80
79
117
79
107
69
69
88
107
131
110
106
122
80
117
125
110
52
131
87
117
126
91
76
175
120
120
87
74
119
117
119
154
78
87
87
136
113
100
106
89
101
66
126
156
133
128
96
128
117
78
109
99
120
90
174
94
134
197
88
76
154
134
94
72
155
89
110
98
127
97
107
106
54
76
134
134
80
80
83
80
154
87
87
87
78
112
78
74
119
107
100
87
88
76
72
80
69
80
205
78
132
107
119
93
93
107
69
106
80
104
91
93
69
112
128
103
109
147
54
89
88
114
69
56
131
96
120
43
165
154
71
69
80
119
175
72
94
95
96
69
78
60
111
175
88
101
133
99
107
101
56
69
76
69
81
80
109
69
80
107
95
106
99
154
92
107
187
118
109
120
128
106
78
91
122
113
174
138
106
100
89
120
80
145
131
123
187
112
87
78
69
112
144
160
88
76
109
115
110
93
87
122
71
124
115
69
112
99
69
99
80
128
128
89
155
145
119
78
99
87
72
105
99
89
56
134
80
91
115
90
100
76
80
143
80
76
181
115
82
141
52
134
89
128
89
121
68
140
88
80
80
143
104
59
80
120
119
75
127
163
83
76
91
104
116
99
80
131
99
117
103
175
117
80
136
87
56
122
175
151
156
78
94
130
69
89
163
114
113
107
130
160
143
78
92
84
129
101
94
91
106
118
112
96
87
127
80
76
126
78
111
120
121
137
115
131
154
72
80
99
132
80
69
120
104
76
133
89
125
119
88
113
89
59
111
99
91
80
54
93
136
121
74
85
82
73
80
110
76
94
113
110
90
73
138
169
104
175
72
154
121
83
102
76
94
131
115
80
72
139
99
84
66
156
76
87
109
113
154
103
76
156
96
85
110
88
95
144
136
89
105
120
143
69
78
87
197
99
58
117
109
83
140
66
163
117
131
80
107
78
69
87
151
69
83
78
143
137
155
80
109
89
78
69
121
107
119
99
66
88
57
119
132
140
119
112
119
114
113
74
80
76
75
80
89
91
80
78
175
106
162
99
116
154
69
120
110
78
109
137
69
111
88
156
72
101
130
69
146
68
111
94
96
80
140
83
69
87
151
89
91
87
96
145
80
69
154
87
104
140
80
143
93
120
128
96
138
80
80
163
134
87
80
74
88
119
81
131
69
78
110
89
119
69
98
128
166
76
109
79
69
166
118
73
100
89
56
98
87
126
112
122
197
72
101
71
156
136
122
94
80
69
131
80
87
108
137
115
76
87
91
133
140
130
113
154
97
156
56
120
156
119
76
95
104
155
128
101
140
94
91
131
76
142
69
80
101
144
99
136
88
74
87
92
146
101
111
66
156
89
112
144
69
136
113
78
118
121
69
69
128
100
157
56
74
96
140
80
89
80
120
117
120
87
134
72
175
134
93
114
113
107
93
137
69
87
155
107
88
69
154
116
112
80
109
80
135
91
110
106
103
80
74
80
154
118
119
136
80
95
187
119
151
130
119
148
80
95
119
106
74
110
118
76
131
117
119
93
72
144
88
120
74
90
142
119
107
197
117
175
136
98
120
86
146
99
78
87
91
80
60
101
87
137
146
154
131
112
80
134
134
107
107
89
69
185
69
69
69
104
87
88
155
132
136
119
87
96
117
117
136
175
94
156
78
121
112
121
80
119
109
109
106
111
43
43
80
109
121
88
80
69
143
144
99
80
94
144
111
69
119
121
157
133
69
137
151
155
87
88
123
89
122
119
54
95
74
90
76
118
76
120
80
96
78
87
96
89
119
124
78
76
105
107
87
75
107
88
76
99
80
156
69
69
104
110
134
143
87
103
108
107
96
145
89
69
107
143
110
157
156
104
101
163
100
112
107
104
104
80
80
139
137
155
136
89
125
131
125
140
107
80
76
126
122
154
66
109
115
56
78
119
134
132
127
132
118
152
87
136
110
113
74
121
102
117
85
87
120
109
80
117
123
114
104
114
94
89
112
93
112
80
125
107
69
104
96
52
80
80
93
109
136
89
154
87
105
87
124
56
69
80
119
80
69
148
95
142
131
124
145
76
66
76
128
110
99
119
94
149
80
154
128
102
69
148
175
119
89
145
76
154
94
101
136
116
103
80
89
137
80
112
91
131
107
150
163
89
111
98
181
114
75
95
100
91
76
128
125
76
151
78
80
89
69
113
88
123
134
119
81
80
134
106
91
76
43
80
90
136
89
165
117
107
104
72
120
119
129
109
94
74
112
78
119
128
92
59
69
163
128
80
163
109
99
89
67
74
93
75
120
146
87
151
128
154
125
69
117
88
54
88
131
104
156
115
111
131
87
134
126
106
172
89
119
175
107
134
140
72
122
133
69
111
156
134
78
156
139
52
142
107
110
96
120
80
155
80
94
52
154
119
87
72
142
131
87
124
138
151
80
99
156
140
102
69
91
134
80
69
80
151
96
136
88
69
120
76
154
80
101
128
147
99
138
71
109
80
73
74
76
128
64
74
109
78
115
136
115
67
78
80
87
80
109
154
101
106
69
136
143
128
107
143
79
133
94
100
147
117
107
120
88
122
101
96
146
69
104
110
76
127
87
111
59
117
90
134
89
98
80
69
119
119
132
69
101
107
107
80
146
145
88
78
78
102
119
175
132
110
71
104
89
100
155
154
119
119
142
94
83
78
107
82
110
93
87
155
128
74
110
88
110
99
131
175
106
56
69
78
124
88
114
75
118
87
110
131
104
147
74
71
107
100
76
99
109
89
110
166
142
163
80
121
119
66
88
121
107
109
117
78
117
74
89
91
93
164
109
98
113
100
104
175
110
69
152
74
91
175
154
69
124
134
131
111
104
143
113
80
138
102
89
72
88
99
69
129
63
119
69
80
118
134
136
94
128
80
121
87
128
113
54
80
89
175
88
136
80
69
80
135
109
138
123
80
88
136
136
110
140
117
91
69
117
85
127
131
172
103
120
80
127
76
124
120
109
78
89
78
120
148
111
76
102
113
94
78
80
69
106
80
118
69
109
78
151
76
140
140
96
69
69
120
101
117
69
137
197
76
127
117
94
101
68
105
117
80
175
203
54
137
104
89
121
132
121
140
113
69
69
80
74
80
124
80
104
82
119
80
107
137
67
145
82
93
93
69
66
127
145
136
80
78
103
109
115
110
78
148
119
121
90
131
102
67
80
69
78
175
100
69
147
88
80
110
89
107
76
113
104
110
101
88
104
121
76
140
99
99
107
78
134
131
104
172
76
160
119
103
90
140
76
117
89
123
76
54
110
87
104
80
88
95
119
123
87
128
76
69
99
80
127
143
80
76
88
156
146
100
122
199
197
90
87
131
80
56
106
115
80
118
150
115
109
107
101
101
69
83
56
77
201
89
130
103
119
134
104
76
72
111
75
146
69
112
99
80
136
72
111
57
80
102
88
69
93
144
145
78
69
77
128
78
80
131
80
69
156
121
123
112
118
80
132
91
197
99
110
96
78
119
98
99
144
123
165
152
80
107
80
107
69
101
79
141
69
69
100
139
175
91
59
76
80
64
87
69
80
73
95
78
155
80
134
96
96
64
120
132
88
69
76
71
114
74
136
175
106
115
93
90
104
113
87
93
120
127
127
80
99
104
80
164
152
120
95
144
140
140
175
89
100
112
78
134
87
121
72
138
80
75
144
98
140
121
96
69
136
118
109
154
99
111
95
140
110
115
113
78
131
123
144
109
101
140
165
110
80
69
119
132
83
97
109
104
108
127
110
69
80
76
91
76
119
80
97
110
69
120
80
58
111
112
102
69
106
80
93
96
76
80
164
78
114
89
54
78
146
80
109
134
175
87
54
146
127
143
66
69
83
78
151
110
120
107
118
164
115
80
96
113
138
101
92
143
107
56
145
109
89
78
119
80
83
131
101
175
112
126
155
133
88
127
109
93
154
88
69
128
80
86
121
102
83
88
117
87
151
103
95
113
131
69
69
120
116
145
113
115
118
132
121
54
155
99
136
99
80
89
69
144
113
119
89
90
67
114
100
111
89
136
127
102
88
69
69
104
95
175
155
109
113
121
101
120
121
155
117
138
138
74
72
80
80
146
88
76
109
154
80
146
122
71
122
100
163
175
93
111
118
109
76
119
66
131
69
72
175
128
87
80
109
131
80
119
118
91
107
154
87
109
114
80
74
80
85
102
119
76
87
80
79
80
175
119
137
157
138
165
85
78
136
69
81
85
109
80
133
95
131
69
114
80
128
103
93
95
69
106
80
69
56
83
134
140
98
121
80
104
86
87
110
111
54
89
120
52
146
124
121
110
134
155
130
80
128
88
146
175
64
88
139
121
91
109
87
76
175
140
97
69
104
132
121
119
96
80
150
69
176
133
68
69
83
87
128
175
107
157
117
118
125
127
109
148
80
109
76
128
79
91
146
175
134
119
109
118
104
94
80
111
117
80
101
87
109
85
107
156
128
127
113
78
128
69
80
162
121
114
110
78
128
119
156
113
83
104
80
96
109
113
150
120
119
93
80
155
87
119
120
56
109
117
110
99
187
98
78
131
80
140
80
85
115
99
115
119
134
76
88
100
69
115
133
118
145
56
118
76
107
88
106
107
88
102
91
140
80
102
102
93
107
118
131
101
52
66
115
175
119
146
54
119
183
52
80
87
69
175
118
89
76
112
78
104
80
69
135
181
140
118
154
133
143
127
87
69
69
118
131
80
133
74
155
132
78
147
107
80
120
72
69
129
89
175
69
104
107
87
156
154
109
98
66
154
69
163
109
155
109
91
96
87
80
112
107
54
112
121
93
104
132
72
80
114
114
127
107
110
129
96
88
90
104
94
87
109
110
76
66
75
172
69
118
76
109
131
80
107
87
101
117
88
80
146
66
181
120
80
110
106
80
90
87
90
78
154
80
80
88
104
140
80
88
86
99
99
119
129
69
119
96
78
76
76
78
54
78
121
151
119
113
78
150
72
80
113
87
80
78
87
124
85
94
69
155
157
128
90
70
112
115
139
127
156
159
175
119
80
56
93
100
54
87
119
137
96
72
88
136
104
121
76
114
104
148
67
80
110
72
69
117
96
69
120
117
107
110
72
110
80
109
73
83
110
140
140
155
76
88
121
94
104
136
93
136
76
99
89
69
69
109
134
115
122
89
78
88
126
175
100
80
103
106
74
80
128
56
101
143
76
122
99
99
175
99
88
119
79
134
87
59
130
75
94
69
89
80
104
80
184
129
69
145
80
154
131
128
117
197
144
72
203
95
91
93
145
109
72
125
69
69
142
106
151
136
93
115
185
134
137
104
106
163
101
96
114
119
121
96
89
127
144
136
80
141
93
81
80
123
143
97
111
69
80
115
154
172
156
80
151
102
64
80
127
107
103
79
160
95
127
131
100
76
58
132
103
76
121
78
78
100
119
164
80
80
87
104
95
80
72
90
156
69
64
78
154
87
56
103
156
112
103
120
72
164
107
138
76
76
126
118
95
169
87
72
136
87
102
145
143
76
80
88
72
100
99
110
76
111
112
105
140
152
76
88
107
120
101
102
128
145
155
128
160
147
76
134
87
175
154
197
115
121
89
156
120
80
80
94
110
52
130
80
89
164
80
78
69
94
107
96
145
102
72
67
104
76
67
112
69
88
101
154
160
130
76
87
91
140
128
95
101
152
148
132
80
119
69
144
117
95
201
121
76
131
156
110
109
88
106
96
106
73
99
175
101
124
128
109
78
78
100
96
175
104
87
148
99
88
105
104
175
151
88
89
140
80
107
69
99
102
82
100
80
80
114
112
96
93
88
81
102
93
87
128
120
101
155
157
54
102
157
121
114
119
154
119
140
122
164
114
91
91
145
136
111
147
104
93
109
146
133
112
78
69
100
99
80
124
89
102
98
156
99
117
80
120
107
137
66
80
80
119
83
96
127
80
119
76
134
121
119
88
136
151
148
76
134
136
80
94
88
87
109
104
143
131
80
67
123
154
197
93
106
119
96
175
58
184
111
99
78
197
128
80
99
80
88
105
127
103
101
90
103
128
119
112
118
78
83
78
126
78
124
154
74
120
94
122
69
121
52
120
115
136
94
99
120
88
112
104
175
154
120
80
134
87
130
90
104
109
80
80
104
175
69
104
85
120
143
129
96
101
119
90
91
121
103
87
113
69
123
79
69
120
134
148
80
120
87
146
87
88
92
80
98
115
108
75
120
72
133
144
80
129
115
155
153
115
119
119
90
87
110
74
151
69
72
150
100
101
87
119
73
54
175
147
107
80
149
87
136
69
132
126
106
137
122
88
54
128
143
80
76
123
96
79
163
151
76
136
99
71
117
110
131
87
172
143
123
143
103
87
120
112
78
69
66
72
112
136
72
69
99
73
128
126
69
112
101
80
104
137
109
85
72
93
133
99
131
100
94
104
94
95
80
74
118
69
111
119
130
175
111
123
91
120
100
87
134
115
120
119
151
67
197
91
125
130
104
89
114
154
128
149
156
63
147
131
94
119
143
74
80
87
139
106
78
177
78
132
69
58
69
109
80
89
78
110
113
76
108
80
120
102
107
93
87
78
78
69
109
104
135
69
52
110
91
172
89
78
165
84
73
80
93
94
117
91
99
175
110
162
95
119
127
99
80
117
113
126
69
123
118
99
144
145
107
120
93
117
93
175
137
78
101
94
104
72
96
146
76
88
80
123
120
104
157
80
87
91
80
76
94
110
69
145
88
165
60
140
95
110
119
163
82
80
97
158
114
78
87
93
80
120
123
118
80
69
129
120
95
76
85
87
54
69
99
131
80
89
104
99
119
154
154
124
175
156
87
140
119
121
69
89
112
156
118
148
80
80
137
56
146
83
89
99
133
102
109
80
145
85
93
185
117
95
133
109
111
89
189
109
154
80
67
83
80
120
113
131
156
78
118
63
99
69
99
78
89
136
156
106
99
119
160
100
111
88
104
93
175
80
111
131
133
104
123
93
78
120
134
119
143
175
144
80
106
137
124
92
87
143
85
151
69
144
80
76
69
117
142
89
112
100
87
87
125
127
154
69
76
97
89
103
118
109
89
175
82
107
125
102
88
76
133
88
80
109
119
114
154
154
197
76
143
90
143
52
133
92
111
134
128
87
88
109
107
90
121
69
131
110
133
110
115
69
80
80
109
134
103
140
89
80
119
114
110
177
120
119
172
92
141
113
69
106
125
104
88
80
80
107
154
74
80
119
156
156
76
90
94
95
89
99
122
90
149
121
71
56
106
89
90
87
119
80
104
119
123
138
135
80
69
107
151
144
157
146
128
88
127
115
104
114
109
197
99
139
88
103
87
151
86
69
111
80
131
92
183
118
197
89
197
137
113
119
155
80
80
69
109
137
161
104
97
87
87
89
90
116
87
87
151
109
109
186
119
99
89
156
103
94
121
78
80
80
80
76
88
120
119
106
128
197
97
112
102
101
104
109
89
106
138
96
69
127
109
154
134
121
131
80
145
80
78
69
82
119
117
76
134
128
156
127
141
69
72
120
80
99
74
151
109
74
111
133
112
114
72
76
104
158
106
140
88
104
106
76
81
155
95
78
138
131
76
87
99
154
140
89
128
54
93
91
134
143
115
101
103
72
80
134
81
134
85
136
154
74
156
154
94
119
88
98
80
109
99
87
116
93
94
69
91
127
126
80
80
80
60
86
80
110
131
75
80
91
87
80
154
117
80
132
128
108
69
87
113
100
87
76
90
90
122
52
112
69
128
159
87
88
132
128
101
119
112
87
153
100
109
126
72
118
74
69
80
126
136
142
78
78
96
93
91
155
131
99
93
89
146
76
119
64
99
128
113
72
107
89
56
68
69
87
106
134
88
134
72
136
69
112
138
87
110
118
112
80
137
136
150
69
120
175
98
59
96
113
59
163
134
140
94
165
119
87
121
134
129
110
69
99
89
68
87
76
78
78
136
121
88
87
121
125
107
131
109
87
76
163
80
110
101
120
87
69
56
80
87
153
136
99
69
80
121
87
80
88
79
146
117
101
72
83
92
144
73
69
154
102
80
88
134
127
76
99
119
127
154
110
131
131
109
104
87
69
88
83
94
87
56
43
137
128
137
102
140
107
72
134
134
80
96
78
138
69
54
56
52
56
143
155
72
76
80
183
110
101
136
87
92
109
72
80
123
88
69
175
107
83
156
109
87
101
71
80
68
78
140
72
120
137
72
132
109
154
97
143
120
74
69
113
144
69
151
80
156
123
98
136
58
69
109
144
78
87
109
100
115
80
78
76
80
144
163
127
87
140
102
87
111
80
100
54
109
111
151
59
100
134
114
72
69
91
174
131
109
96
120
80
56
98
82
92
101
69
69
56
112
125
163
151
81
151
74
69
94
113
199
90
100
104
76
134
88
87
89
113
80
109
87
117
78
175
122
101
94
104
80
128
154
134
109
175
80
110
98
69
94
80
128
120
89
121
128
140
108
111
141
100
132
70
141
80
76
114
67
100
138
76
107
91
88
149
119
127
96
80
89
151
106
127
113
76
56
87
67
72
69
92
107
175
78
76
112
80
106
69
100
154
137
110
67
78
120
85
144
120
89
100
113
69
113
152
74
69
69
128
140
101
112
151
80
95
104
118
119
99
103
171
79
110
145
131
78
100
104
119
94
72
83
73
112
78
118
76
83
128
120
104
96
149
131
56
94
117
132
148
147
88
87
86
121
118
84
69
121
94
117
136
109
83
107
78
88
103
92
119
119
43
80
127
127
114
104
107
138
155
83
128
154
134
80
80
175
113
98
128
119
125
114
70
76
104
78
120
87
88
86
69
80
120
80
117
97
94
69
80
123
120
72
128
69
80
130
123
164
156
106
103
109
109
125
94
106
88
96
114
56
165
119
95
134
82
68
56
128
112
52
105
43
75
137
78
76
108
175
131
151
120
128
154
164
76
144
127
139
205
94
153
89
90
136
89
99
78
121
107
80
91
94
94
119
119
124
76
88
96
93
98
156
80
89
134
80
142
104
95
59
82
69
140
94
101
112
54
112
96
130
107
80
80
80
118
109
142
121
69
119
89
87
87
69
144
120
87
109
88
87
109
107
130
80
137
120
154
117
101
52
76
154
131
128
83
69
83
140
78
119
120
98
103
69
93
136
140
104
156
128
101
119
52
80
120
140
76
100
72
85
166
119
78
87
117
112
99
109
72
106
137
119
136
85
87
131
109
175
118
88
71
80
52
127
175
105
149
99
154
151
80
87
123
109
175
123
76
76
72
104
69
100
101
64
134
127
91
76
127
80
54
123
99
87
87
99
89
177
136
112
89
87
110
155
155
96
80
78
87
107
136
87
119
91
112
83
104
117
80
87
82
91
110
108
99
149
146
99
90
82
134
135
69
107
119
52
69
115
95
121
69
133
80
94
80
134
107
109
117
151
88
154
117
75
89
102
76
175
80
111
119
126
72
80
80
99
72
131
146
145
80
128
73
175
73
145
107
80
93
80
146
136
100
136
80
144
118
140
87
100
110
109
85
69
88
107
80
100
119
87
111
87
119
133
80
43
113
111
107
163
155
76
78
154
69
134
154
136
163
78
89
155
69
88
94
80
138
80
91
95
128
86
80
88
72
69
109
104
154
149
80
88
109
91
175
90
69
156
106
85
80
58
105
110
107
80
119
113
69
130
76
119
80
107
98
104
87
133
72
141
136
81
76
78
108
185
138
99
120
80
98
175
136
109
80
87
80
112
85
78
122
52
117
97
69
76
102
81
80
112
127
136
69
118
78
102
73
95
112
135
127
130
125
94
120
69
89
152
95
74
102
104
115
95
126
165
72
143
129
120
89
155
80
76
155
78
128
59
80
151
134
111
106
75
78
111
99
120
138
155
87
90
121
146
88
56
76
52
115
93
115
78
91
80
87
69
88
110
89
94
121
80
87
95
136
69
80
88
99
69
147
110
80
78
104
76
115
80
154
117
145
80
99
69
126
175
104
89
81
109
120
80
134
80
156
145
122
89
56
99
80
120
120
94
108
130
119
148
72
127
160
166
76
80
101
136
91
134
101
73
54
93
69
131
122
95
80
60
94
96
80
76
178
164
117
79
91
108
109
131
80
80
78
120
98
93
80
76
69
69
77
76
145
80
59
111
109
134
76
154
122
140
96
76
80
197
175
125
80
127
140
87
85
121
136
110
69
107
175
109
94
109
120
80
129
133
109
110
106
69
109
127
113
136
85
163
69
197
99
78
164
78
154
79
87
57
197
102
97
139
69
102
107
80
99
69
76
90
76
166
76
83
80
119
113
69
131
155
43
145
100
115
147
197
115
134
107
93
97
80
115
99
134
134
131
136
69
154
122
69
119
93
80
101
130
94
106
100
69
132
87
109
109
147
88
78
138
113
108
58
128
110
156
136
80
92
120
78
155
140
175
175
69
131
68
136
194
78
80
102
85
155
133
113
80
134
78
136
88
106
121
135
112
96
80
71
120
86
115
127
60
88
91
80
88
94
99
121
128
136
120
96
137
77
107
76
113
80
105
144
89
96
128
102
145
69
155
85
89
78
133
103
129
107
154
119
67
123
175
100
120
89
80
120
104
107
132
74
88
80
119
100
82
78
120
107
99
96
100
109
80
89
80
69
43
99
112
175
60
110
140
99
121
160
88
96
72
137
85
163
120
145
90
87
107
125
175
111
93
69
151
135
134
103
87
73
100
80
86
89
78
108
80
127
87
119
78
107
151
103
121
121
80
69
69
89
69
137
85
146
134
91
107
121
80
120
146
163
118
93
91
80
131
88
111
78
117
131
76
131
85
101
92
94
91
56
89
160
107
69
110
89
80
140
87
69
94
80
146
69
134
107
175
69
142
101
101
122
88
69
113
78
96
78
80
175
175
88
80
107
172
112
119
98
89
155
83
183
120
146
110
87
87
121
128
52
121
102
146
154
95
93
103
117
69
127
74
131
69
93
77
97
88
90
102
95
80
152
52
164
102
99
76
87
78
148
106
101
85
76
89
101
91
119
93
76
87
76
104
87
106
127
151
119
146
140
201
110
136
145
155
80
102
88
122
78
106
162
69
128
88
69
103
93
80
107
106
154
87
116
78
156
69
77
89
69
89
82
109
136
69
118
134
118
125
78
94
109
128
108
94
119
111
92
123
101
94
128
127
117
136
99
88
54
80
107
119
148
165
93
110
80
80
90
119
74
76
154
80
142
80
87
111
183
137
143
98
78
87
93
114
80
101
175
135
100
69
91
134
125
134
102
80
106
106
120
110
121
87
154
78
150
104
76
175
148
72
80
117
107
117
175
136
80
128
112
113
137
43
88
106
98
126
93
137
126
133
69
76
95
58
78
175
102
72
123
109
112
134
87
111
141
107
131
118
136
99
140
108
172
120
115
121
85
107
79
107
106
107
109
80
175
166
96
131
136
94
56
134
107
151
126
132
121
87
109
163
143
134
110
96
64
72
107
117
106
131
78
80
119
94
85
152
153
120
131
111
166
140
102
101
127
69
69
87
156
110
88
52
100
121
106
92
72
87
87
140
120
80
124
80
80
127
148
69
110
87
137
107
80
78
76
89
52
110
89
155
71
110
69
88
154
102
80
151
107
115
98
69
157
119
69
80
145
127
136
78
85
137
123
91
120
107
177
154
76
145
109
98
109
78
106
88
99
110
82
113
109
87
80
67
109
128
140
107
117
131
69
136
136
122
142
76
169
120
119
151
120
76
85
107
88
127
67
64
76
103
80
162
120
94
57
87
94
99
133
128
107
119
147
110
78
154
87
120
140
72
104
107
140
91
94
78
132
142
138
146
77
78
76
175
175
54
99
87
148
94
120
52
80
94
112
144
134
106
117
109
78
175
136
100
56
80
93
93
69
126
54
147
89
93
115
80
127
69
109
106
87
122
121
100
58
93
109
197
87
109
126
87
94
120
76
54
128
152
145
69
88
140
85
127
109
169
135
160
154
107
163
111
154
80
75
133
80
115
116
102
80
123
87
126
80
85
80
119
119
69
78
88
76
119
100
93
133
143
156
121
87
131
145
120
117
155
76
112
90
136
82
89
85
118
164
70
104
88
102
154
89
80
96
69
69
79
128
75
102
109
186
80
183
94
118
147
143
99
69
80
69
93
136
74
155
99
76
80
119
146
161
80
176
80
124
106
76
105
87
143
101
93
69
89
109
98
128
128
107
80
143
87
131
69
76
119
154
107
128
120
87
87
142
103
87
146
106
136
160
122
107
104
119
146
87
69
113
99
105
117
79
78
109
134
99
78
110
98
80
183
89
124
85
117
119
89
76
78
122
103
101
104
144
154
181
85
88
146
128
78
76
87
107
99
80
91
96
80
91
91
146
175
87
99
131
74
117
102
91
149
76
134
135
52
156
120
80
113
78
126
110
89
130
100
111
89
69
87
79
129
183
78
87
111
69
98
89
98
103
113
142
111
131
80
78
119
100
88
107
131
78
85
80
112
110
131
144
127
124
87
104
120
69
80
139
89
59
69
174
80
102
120
101
86
87
90
113
163
93
78
95
85
134
80
133
87
88
88
88
121
107
140
78
175
109
116
69
127
92
94
87
131
80
103
133
103
78
110
120
126
83
69
89
79
117
88
175
110
121
129
134
137
78
151
175
83
72
175
140
154
80
137
110
125
116
122
69
85
80
102
120
155
144
87
104
78
130
132
117
76
117
121
80
98
75
88
82
69
106
69
87
117
104
80
156
156
131
78
124
156
113
69
103
129
150
96
117
151
69
100
94
80
137
88
106
149
80
73
52
96
109
85
88
123
174
69
146
79
96
80
74
69
183
128
89
143
107
80
119
93
103
69
96
89
109
73
80
104
120
128
106
109
66
80
108
111
151
163
78
139
138
110
80
101
80
89
128
169
69
106
121
89
78
94
118
126
125
109
114
98
137
112
111
151
87
76
136
109
72
96
98
104
127
87
140
131
156
85
119
174
72
59
144
69
128
136
130
136
96
199
76
130
102
151
139
158
80
131
128
159
197
138
104
89
113
118
115
108
69
87
128
69
102
146
109
131
152
143
154
88
163
117
87
83
80
106
145
103
110
103
118
108
87
128
69
98
80
129
119
78
109
87
120
69
163
123
78
110
113
109
156
69
109
69
87
144
87
147
135
110
69
113
134
107
114
134
69
56
87
96
117
94
88
120
121
127
94
136
59
88
80
91
93
129
142
117
146
131
123
115
155
99
71
80
102
145
127
83
78
121
106
80
89
122
112
148
136
78
83
128
126
131
128
112
88
112
76
189
134
109
94
76
175
80
107
151
63
74
127
107
134
106
80
69
99
175
126
82
140
199
80
164
105
109
127
136
146
80
110
129
78
118
133
94
128
131
69
80
115
174
80
117
69
89
95
128
104
112
54
134
156
122
74
136
131
69
71
111
88
112
99
76
117
113
95
87
76
80
175
91
67
113
110
139
110
131
109
80
107
94
103
132
89
163
106
119
85
104
107
52
80
208
129
119
101
101
80
76
177
156
79
72
123
80
87
80
175
160
99
104
76
85
119
133
91
69
154
62
87
96
83
80
136
140
155
102
56
80
88
154
69
136
80
164
89
118
69
156
96
80
128
136
113
66
93
117
80
147
76
56
134
87
72
134
87
99
87
115
88
120
96
89
94
102
144
78
80
80
201
104
117
107
90
74
78
136
120
74
91
111
72
122
96
121
87
123
78
128
121
110
80
197
132
154
145
94
109
87
117
80
114
87
112
100
69
107
78
119
110
101
136
80
152
103
136
129
109
109
80
151
82
150
109
52
103
94
137
140
80
88
83
78
78
119
69
52
69
131
106
88
89
136
98
183
128
164
89
115
94
107
110
174
72
151
121
63
78
145
97
127
106
124
88
99
104
119
131
78
175
69
136
87
69
118
107
114
54
83
80
147
119
145
101
93
163
140
88
119
194
102
43
120
78
52
131
101
148
94
87
134
91
103
107
113
88
72
129
127
71
78
107
69
119
134
76
83
87
80
52
74
96
123
110
100
69
88
80
110
140
87
101
128
197
128
119
112
72
113
69
120
109
121
106
69
117
75
154
136
163
80
136
128
90
140
115
112
140
99
120
102
107
109
110
164
140
164
94
116
96
140
146
151
175
87
87
140
76
80
151
93
109
52
134
94
76
95
175
154
114
127
119
111
80
88
143
101
110
115
80
169
120
133
131
127
106
76
67
157
107
159
120
99
178
69
127
94
101
123
107
151
88
87
124
107
69
91
146
78
174
87
107
140
87
89
118
102
107
79
119
156
156
87
89
87
120
121
111
87
94
80
94
87
163
96
80
140
146
80
119
107
83
120
100
108
126
89
120
109
144
52
156
91
121
102
76
101
113
58
110
88
90
140
129
128
144
90
76
69
134
96
76
154
163
149
112
129
107
115
80
109
76
157
156
66
175
83
76
67
80
119
119
97
88
123
107
133
76
109
96
87
88
119
119
154
110
119
92
78
112
154
122
96
144
119
74
88
80
119
151
99
69
197
119
76
87
154
119
175
110
120
127
76
85
123
67
76
85
89
72
87
175
69
80
123
99
72
91
76
175
76
54
78
199
111
80
96
110
78
103
162
120
175
131
152
120
143
69
80
106
104
69
112
114
140
165
101
72
96
120
54
69
88
129
80
76
43
80
128
91
80
88
120
107
112
138
112
151
80
80
104
80
110
131
87
102
141
75
94
80
137
115
100
104
151
113
78
64
110
58
110
87
128
69
140
112
76
99
133
90
95
72
87
85
132
117
113
72
104
120
74
107
119
72
124
78
96
107
100
120
69
136
80
125
93
87
177
125
119
183
80
117
76
80
109
142
71
80
93
121
131
60
181
111
128
141
183
69
101
52
96
96
154
76
128
54
80
145
109
119
80
145
136
129
80
110
109
132
69
85
90
175
126
107
140
107
87
99
129
113
99
119
92
113
99
98
87
137
102
156
76
138
109
106
122
93
136
99
111
104
69
76
75
99
106
83
89
94
146
129
156
54
120
136
99
80
112
101
134
94
167
161
80
152
119
119
120
75
106
80
69
128
128
115
80
68
80
80
110
119
128
80
69
94
87
130
162
104
104
115
106
147
99
104
80
78
88
128
69
87
94
160
92
113
76
111
100
80
102
109
140
197
78
54
89
154
69
107
90
148
96
137
122
76
85
87
145
154
112
128
117
106
80
80
134
134
89
71
109
69
144
128
130
119
126
80
99
86
126
121
89
43
89
146
120
76
92
197
69
136
140
80
87
80
100
134
134
119
76
88
87
136
119
154
113
78
147
96
138
80
154
128
107
145
78
94
107
121
104
56
121
114
74
80
54
80
109
76
143
117
71
85
136
119
156
119
76
99
96
109
80
120
93
174
125
80
99
114
91
156
89
117
120
121
103
113
80
147
94
122
78
140
71
87
113
139
119
175
110
76
112
85
128
88
122
96
80
95
102
94
121
160
93
197
101
69
78
67
80
136
56
131
164
98
117
64
88
197
99
85
155
174
69
80
129
102
96
80
175
120
154
99
142
113
145
76
131
69
112
78
110
80
117
69
107
72
76
129
126
114
136
164
120
118
120
120
134
104
151
95
72
89
115
113
76
88
94
90
131
91
122
69
67
153
128
80
78
146
110
163
110
96
128
78
76
69
117
94
76
87
91
79
110
131
69
134
108
56
115
91
69
126
122
124
123
56
154
110
110
74
144
114
112
80
80
121
111
134
106
88
128
102
71
80
69
78
146
119
119
104
69
159
75
92
109
110
88
72
79
69
123
96
122
99
118
175
88
137
80
80
87
74
95
80
109
74
96
128
80
80
102
126
175
56
94
97
136
154
136
131
110
101
69
120
109
124
54
94
155
104
111
80
131
96
142
121
89
78
115
99
99
175
94
120
69
97
143
136
91
80
117
69
112
87
89
106
131
110
131
78
91
89
113
80
175
74
69
144
107
121
175
156
181
154
120
96
131
155
89
90
175
120
88
118
93
110
101
80
113
99
109
131
154
80
134
113
87
119
101
101
155
78
87
131
76
163
114
72
79
154
85
91
102
69
109
68
133
80
74
98
100
74
124
93
109
93
52
95
96
87
122
118
78
87
80
100
80
76
80
121
125
100
80
164
138
122
86
103
109
80
124
117
155
142
89
69
76
103
113
112
145
76
134
175
80
145
109
80
127
87
127
64
156
116
112
66
181
80
80
145
78
76
119
89
110
163
136
63
78
92
174
74
93
107
118
118
91
66
93
196
122
88
69
131
99
83
120
104
88
157
80
80
77
106
119
104
91
111
121
133
72
119
136
91
101
110
88
126
153
87
93
140
126
76
141
165
154
69
85
109
69
54
87
85
106
147
110
137
143
148
107
87
120
95
76
103
102
156
87
69
127
118
110
72
67
128
90
103
54
109
95
119
164
112
206
175
144
87
117
117
131
110
69
130
43
120
126
131
137
130
109
105
93
69
91
104
139
72
80
80
93
111
154
117
89
127
109
66
69
131
94
94
147
88
85
107
147
132
125
160
91
155
87
149
69
134
154
120
124
123
80
146
78
175
80
127
80
151
80
136
89
149
78
142
121
134
156
87
127
54
129
102
69
145
74
127
79
122
134
105
129
95
75
121
72
99
69
93
141
69
78
137
98
80
113
80
87
119
107
89
175
104
78
155
78
106
136
69
94
78
107
128
105
87
155
69
120
97
175
131
54
76
157
130
94
120
72
80
110
120
154
43
76
76
107
106
128
139
80
122
151
107
69
114
160
154
128
74
69
132
98
113
74
117
88
146
76
140
72
80
107
154
99
104
104
75
137
119
80
151
138
89
128
99
125
107
93
134
174
78
114
175
103
76
147
102
163
107
94
87
87
112
109
97
102
93
87
93
87
128
119
106
107
87
92
73
119
67
119
122
63
197
117
80
124
114
138
54
89
107
80
128
69
88
145
80
104
109
132
174
101
113
76
71
67
165
69
107
197
72
78
112
76
123
117
144
122
117
126
82
124
110
80
175
80
145
109
78
93
87
107
134
144
80
107
139
104
134
96
99
128
102
69
87
99
156
127
76
79
136
109
94
134
121
87
78
154
120
98
146
150
87
69
106
86
107
63
66
104
78
78
76
128
80
80
175
119
175
127
111
111
110
110
113
122
154
114
90
90
175
99
52
132
81
113
94
78
109
88
103
80
80
104
82
87
113
92
136
69
82
175
87
76
129
112
128
76
128
107
69
89
120
127
123
93
93
109
86
101
78
104
69
93
87
91
69
78
87
144
122
109
99
76
129
98
133
130
78
76
87
104
69
109
69
146
87
128
123
199
99
102
69
112
120
119
89
93
115
133
154
156
109
89
131
109
113
43
103
78
121
152
197
56
99
76
82
80
78
151
76
64
76
88
80
113
101
145
121
80
64
94
69
80
175
112
162
140
118
133
110
80
130
120
175
76
102
154
144
87
119
95
78
87
120
115
100
127
63
164
119
80
78
156
129
110
106
119
144
78
107
72
93
102
76
83
101
87
142
93
156
92
79
94
151
133
125
76
164
87
119
128
131
54
88
115
88
115
117
164
76
82
123
197
109
87
118
138
113
106
89
132
126
119
145
126
80
156
153
131
69
94
102
114
120
99
120
92
91
99
134
113
119
101
82
80
136
134
88
197
120
80
80
101
113
123
72
102
111
67
151
88
85
87
134
93
107
102
109
88
101
95
131
103
87
109
93
99
144
102
101
56
69
143
120
99
112
154
128
134
133
76
87
92
120
87
144
143
132
174
141
104
69
80
128
128
119
117
117
72
144
78
162
58
93
72
117
76
99
88
101
93
134
107
143
107
107
80
110
96
87
121
80
89
136
131
88
124
76
89
78
83
119
78
136
119
80
69
148
78
107
80
78
80
129
99
127
95
87
109
80
108
106
90
145
76
72
78
132
87
85
115
120
111
99
93
156
89
137
169
96
117
107
197
88
121
137
152
109
107
75
54
69
112
78
102
80
83
95
133
181
140
99
94
80
78
93
140
94
109
99
155
104
52
78
166
114
85
90
117
160
69
103
133
124
87
137
151
87
70
143
91
112
83
82
89
120
143
79
93
80
80
131
131
140
136
201
93
88
100
144
99
95
110
76
119
154
140
118
140
128
169
89
128
165
80
140
80
76
103
128
128
127
87
100
156
104
69
107
75
131
87
76
175
80
160
123
120
99
148
80
120
52
85
76
80
121
87
89
144
99
88
121
121
117
76
101
106
148
115
107
183
100
69
160
80
110
75
121
76
175
80
104
87
126
138
78
88
80
139
194
133
82
103
75
128
78
80
93
87
87
80
126
74
159
109
128
81
93
151
99
115
134
88
146
76
119
104
87
164
87
80
112
142
119
169
91
128
80
114
133
78
110
120
126
80
107
69
118
80
119
113
104
145
154
111
102
69
98
119
113
106
141
124
69
146
76
108
117
120
144
110
156
104
104
136
88
121
126
97
114
148
69
175
145
112
91
123
80
140
52
127
119
104
103
134
80
93
72
89
119
110
101
78
113
80
151
69
114
124
109
69
116
88
128
69
80
156
87
69
109
110
96
91
95
106
99
103
94
120
110
87
146
100
187
159
88
99
117
119
74
110
112
88
134
76
80
96
102
158
73
106
134
101
123
116
154
87
163
162
199
175
114
90
96
80
136
134
118
127
130
117
151
117
134
104
85
175
119
111
112
126
118
69
128
163
151
95
103
83
89
87
176
174
100
94
175
109
102
103
78
101
132
80
109
89
100
88
151
118
87
107
100
129
120
120
115
81
115
56
76
144
185
120
120
120
101
104
119
145
74
87
199
123
119
87
156
140
72
120
90
112
92
127
107
175
74
75
90
100
113
78
110
78
137
138
89
106
119
75
80
90
106
147
110
119
136
136
119
107
110
98
107
145
87
78
128
74
144
90
80
131
127
128
120
107
69
129
146
197
69
72
76
120
66
98
80
95
59
87
69
185
124
94
89
120
151
91
146
87
78
52
80
87
94
99
89
106
102
121
72
69
119
87
110
80
80
80
123
89
80
108
136
134
197
54
78
175
101
80
88
128
69
164
128
148
99
114
114
99
119
101
93
112
119
106
118
131
75
132
115
119
131
109
117
84
88
110
118
89
155
104
120
154
120
67
114
83
120
87
130
78
109
154
131
144
80
119
97
121
78
156
88
122
52
161
109
113
78
71
99
56
126
69
100
109
108
106
109
94
98
115
114
106
104
117
119
87
76
155
110
105
93
76
83
99
74
80
131
126
115
76
69
54
94
117
125
104
114
80
80
88
76
100
107
175
92
88
80
92
80
154
91
112
131
133
126
80
89
109
80
137
119
104
151
80
146
85
119
120
95
157
102
120
72
90
80
109
132
114
78
136
120
80
80
74
87
69
96
119
155
92
80
143
145
112
89
131
104
76
107
175
109
107
100
134
78
99
122
69
107
94
109
69
132
175
124
107
69
145
136
69
79
80
110
169
120
94
101
76
94
80
80
78
80
119
137
144
154
92
151
106
80
134
95
99
140
163
106
131
80
80
162
116
94
112
99
76
69
146
148
94
113
108
91
76
66
129
154
156
95
87
82
99
89
130
92
100
162
140
127
107
107
110
146
88
110
52
104
95
140
88
80
96
122
111
163
146
104
80
80
102
154
130
175
126
91
72
80
115
88
72
87
121
96
88
110
72
128
87
134
80
133
113
119
80
80
169
145
78
114
145
117
99
133
90
104
128
89
101
89
101
88
107
100
80
103
145
69
132
106
129
117
109
103
118
136
181
78
80
99
114
114
80
87
90
113
80
74
121
131
201
98
85
127
90
88
128
124
122
91
88
80
87
94
107
105
104
120
94
131
114
69
149
120
134
78
114
113
120
72
99
87
78
87
131
72
80
156
119
72
104
71
91
125
76
129
78
69
85
82
69
107
140
78
94
87
78
78
127
106
101
101
75
99
102
76
69
115
69
76
115
121
104
119
89
85
113
197
87
119
134
72
128
94
85
97
120
120
144
175
116
120
159
78
128
87
119
93
94
154
130
131
109
162
112
116
133
67
154
119
120
120
89
120
87
154
117
197
89
69
52
126
123
119
78
100
106
80
140
110
78
131
136
85
87
126
88
120
175
90
88
119
107
81
93
96
69
125
143
85
120
145
94
78
125
80
155
120
136
106
121
82
80
134
94
123
120
107
72
83
146
87
78
113
157
80
87
88
109
91
80
107
183
119
76
128
80
142
99
80
101
120
154
109
137
99
114
80
126
56
104
90
155
175
105
164
111
80
154
78
154
87
91
74
156
169
131
112
93
80
96
114
111
131
121
89
87
163
166
106
109
175
69
140
109
106
117
80
104
133
69
80
80
120
128
127
113
93
118
125
118
106
140
83
134
129
89
54
119
130
131
112
80
83
121
120
104
87
145
91
80
109
130
129
113
104
128
129
118
134
100
128
69
85
80
85
107
82
175
106
141
80
128
106
134
101
134
104
99
95
93
119
80
94
110
76
87
106
118
74
80
131
127
80
69
88
56
82
112
117
80
87
87
72
78
69
80
115
88
110
123
109
151
140
102
109
107
121
80
99
83
155
127
109
115
56
104
120
128
69
78
129
74
119
163
128
130
87
98
142
96
91
91
109
154
155
140
122
69
148
54
63
76
78
131
140
169
89
102
134
128
112
91
175
88
78
91
112
115
63
69
115
101
80
144
69
136
136
92
80
123
78
127
109
76
175
56
125
94
131
87
112
91
78
145
72
134
175
104
88
93
76
80
94
128
96
101
82
80
76
120
102
80
151
110
110
78
117
119
80
112
127
118
126
102
121
99
133
152
121
94
69
59
130
110
72
87
88
114
102
110
69
87
87
111
155
154
131
131
119
104
69
58
80
154
91
123
80
80
154
80
144
123
76
74
130
163
197
94
135
146
131
175
85
87
119
134
69
102
131
75
54
137
100
103
145
104
85
134
197
87
80
140
126
78
89
125
111
121
178
80
104
112
56
117
118
100
87
78
127
109
156
76
80
103
76
99
94
117
143
85
128
87
80
113
93
120
106
114
153
80
94
80
100
112
112
115
90
104
76
87
186
107
69
99
109
145
120
68
107
115
69
128
110
92
121
52
88
131
147
80
99
78
89
80
107
120
80
142
113
126
134
80
94
133
101
96
120
75
75
95
95
140
76
106
87
78
133
100
80
119
106
56
78
87
86
154
87
121
87
101
87
119
69
120
134
88
78
91
154
76
80
82
69
119
140
123
75
95
87
89
105
146
115
120
119
104
87
91
96
98
164
80
78
109
69
123
54
101
89
94
100
107
131
117
104
106
78
115
111
113
120
96
106
123
80
120
95
115
130
92
114
112
106
112
80
117
154
80
69
117
115
78
107
112
80
125
109
96
112
94
87
109
111
118
69
155
107
87
102
82
94
111
110
78
120
152
83
69
120
113
120
128
106
84
104
128
111
96
116
105
74
146
160
107
56
120
107
99
69
136
156
103
113
131
144
131
92
88
119
104
128
95
155
93
80
99
123
95
183
80
78
80
78
56
121
128
124
148
120
104
122
80
80
80
103
119
96
74
69
107
134
118
80
71
96
95
134
111
175
91
90
80
149
67
118
78
89
97
106
199
124
78
136
134
104
120
89
157
118
87
88
78
78
80
92
100
88
96
140
124
69
83
138
113
87
136
80
110
119
99
111
106
87
133
140
117
100
136
120
110
107
87
131
129
154
90
69
140
87
125
89
81
142
78
82
94
109
89
80
75
138
124
74
104
129
119
152
128
113
80
94
94
115
127
112
156
80
80
87
69
119
69
79
121
138
115
156
115
107
94
99
91
87
80
80
89
99
136
117
136
101
109
104
106
122
78
129
107
101
88
106
56
164
87
133
109
164
154
99
197
99
165
119
103
123
146
87
175
128
127
107
113
94
100
78
119
97
80
131
158
113
79
145
94
126
82
80
128
97
115
103
110
87
138
129
197
80
69
146
80
88
95
181
119
57
140
119
115
114
69
88
80
80
121
156
123
78
127
78
148
94
175
104
99
155
120
78
119
78
80
69
115
197
144
151
85
124
155
76
107
98
78
107
80
103
92
128
175
77
69
140
87
83
76
132
87
80
78
81
74
106
67
128
119
122
83
109
132
154
80
69
156
114
80
152
88
131
95
87
121
128
134
119
78
76
113
78
109
78
114
80
156
80
64
71
110
117
128
80
110
78
132
99
76
80
108
87
69
85
78
115
150
72
119
106
59
104
69
133
109
132
140
87
69
87
108
80
80
99
84
109
144
78
80
88
69
78
89
80
117
109
175
69
123
80
80
151
150
128
80
134
80
93
121
205
130
121
96
89
99
140
154
120
96
129
117
136
113
136
69
112
155
93
80
54
91
151
110
69
91
127
56
141
91
123
94
110
109
78
90
89
136
96
80
69
101
152
119
119
94
185
128
80
110
119
69
85
110
119
122
81
181
115
80
156
80
69
78
175
164
89
69
56
76
94
128
80
109
126
99
156
118
126
164
129
113
80
127
93
92
127
76
69
118
78
120
112
92
69
69
143
80
101
80
78
125
76
140
156
112
67
134
130
112
74
121
113
164
107
97
132
80
164
99
140
87
120
135
52
151
122
178
97
94
88
104
136
109
175
91
127
127
126
119
128
150
80
99
80
99
101
69
91
146
87
94
106
130
101
94
148
197
132
93
119
143
69
156
136
99
94
107
125
119
117
106
123
111
144
88
136
80
110
121
146
114
137
131
126
80
159
69
146
104
154
102
96
123
76
88
119
83
136
121
87
109
127
140
139
104
78
69
69
76
96
156
106
87
80
69
90
107
69
119
120
93
109
128
118
119
95
149
122
101
78
131
69
85
119
151
73
80
80
129
112
69
169
134
92
98
101
174
94
88
123
78
88
101
104
143
124
114
134
114
88
80
143
80
76
104
88
74
76
72
148
69
106
101
80
119
80
120
109
120
119
78
137
80
134
106
134
136
154
76
80
99
90
138
78
80
119
72
175
96
80
102
107
129
123
102
120
112
165
76
80
83
104
113
143
80
80
121
69
175
98
78
117
101
94
100
80
69
87
107
109
93
117
69
129
154
112
115
157
101
85
149
78
107
126
115
69
199
80
87
69
113
76
80
140
121
142
119
96
120
69
66
80
121
132
102
128
120
74
104
139
80
132
90
117
135
80
134
80
127
78
54
93
69
119
99
121
80
113
145
136
117
104
130
74
120
89
87
87
87
146
118
78
95
119
139
83
88
72
137
80
137
78
102
137
89
123
101
148
155
134
76
76
67
99
89
156
154
87
76
69
80
69
91
104
89
80
137
175
98
120
96
100
113
110
93
122
83
110
88
172
150
163
80
111
93
87
88
101
199
104
128
197
134
120
80
98
112
102
94
100
104
104
113
80
72
119
117
109
66
104
130
103
85
69
148
69
80
112
156
85
150
88
104
107
80
144
52
197
134
117
88
72
90
89
175
72
175
92
144
96
59
91
109
87
102
108
140
89
80
107
54
87
80
103
80
151
137
69
109
110
183
80
160
93
78
107
89
121
112
78
67
164
122
80
94
110
102
114
154
54
111
201
78
80
111
102
175
100
136
91
131
80
103
87
69
155
166
99
54
128
75
89
88
154
101
154
78
142
102
130
74
69
113
101
76
163
112
80
101
152
76
82
75
69
54
146
88
90
52
78
66
166
74
132
117
134
90
131
121
78
104
127
131
134
113
124
107
87
197
128
145
56
106
87
144
96
136
119
99
140
113
80
124
108
54
111
104
74
109
80
87
122
175
106
75
83
89
117
187
88
119
107
78
78
69
54
123
71
151
111
155
128
119
134
166
183
69
114
69
72
69
116
113
138
76
149
126
79
137
92
119
101
80
107
72
94
87
102
94
126
80
69
159
89
109
175
78
102
90
131
114
197
136
76
140
113
89
104
87
96
87
89
120
110
80
107
100
76
63
80
71
100
107
130
76
101
138
93
76
110
164
107
87
122
129
99
96
72
104
110
78
113
146
143
58
156
109
127
83
74
90
107
136
107
107
144
69
93
74
76
80
89
99
109
110
178
108
89
154
156
113
117
151
71
69
117
136
69
69
134
94
87
140
80
78
80
142
122
54
145
90
119
98
112
131
128
118
104
87
96
121
142
160
107
145
131
87
128
131
72
76
75
119
87
154
123
110
110
99
99
78
80
91
87
119
129
107
74
143
87
115
59
137
134
80
80
106
140
87
80
101
80
110
112
80
78
175
94
95
87
69
151
120
123
160
106
82
125
145
95
99
108
127
158
143
131
148
143
106
88
146
80
175
102
199
140
80
128
146
124
93
131
52
56
140
130
94
106
114
80
69
197
88
80
149
69
133
69
80
136
104
134
151
127
131
121
104
120
128
91
85
113
104
154
87
93
64
88
154
110
88
69
89
89
74
73
119
100
80
78
136
100
144
109
114
87
175
80
121
160
75
119
165
85
106
154
80
80
87
89
85
78
106
76
97
163
156
119
111
76
121
83
77
64
69
110
72
87
91
43
106
76
145
76
72
90
87
154
137
74
113
112
185
118
80
104
69
107
78
119
76
95
174
160
58
74
80
160
89
76
94
104
134
87
78
161
155
69
175
102
113
117
69
105
108
80
78
104
76
87
106
110
113
80
143
98
87
138
87
134
119
80
164
78
102
89
69
80
174
148
154
109
134
128
117
114
131
80
104
52
129
134
134
115
68
103
160
163
93
76
112
98
79
121
107
80
159
107
143
128
119
121
106
115
91
124
78
185
78
80
90
113
80
87
122
80
97
134
134
66
132
123
148
115
119
69
101
138
87
88
80
106
134
101
69
99
107
154
69
103
127
114
114
81
87
123
130
110
94
82
120
72
80
146
154
80
76
121
155
83
176
76
137
87
107
162
132
128
117
80
92
100
104
153
119
74
136
163
74
87
123
87
104
94
118
121
145
148
69
133
148
94
127
120
116
93
129
128
83
146
128
78
129
110
118
100
107
90
113
78
54
112
89
121
99
87
145
119
136
92
69
94
80
54
69
82
113
76
134
80
128
137
54
178
114
96
89
119
120
98
80
85
85
104
74
124
99
134
69
99
134
88
121
175
142
163
99
102
101
76
146
131
128
78
69
80
154
127
129
163
106
136
143
54
114
117
89
43
109
96
80
154
89
145
72
117
120
130
132
125
80
121
78
100
104
78
109
120
76
69
134
199
91
87
75
134
119
106
135
93
87
96
160
104
87
104
104
126
87
181
106
112
166
136
104
80
76
69
84
76
110
149
86
89
126
88
121
56
152
87
80
111
154
86
137
137
78
80
99
117
120
94
115
154
83
119
92
99
118
119
80
136
136
80
129
78
124
118
139
89
88
78
83
80
127
80
136
92
106
164
94
88
111
69
136
69
76
121
104
111
134
78
69
87
169
80
117
107
114
175
121
76
134
76
106
80
151
117
111
76
112
87
87
79
91
154
140
106
138
112
98
156
88
88
131
175
71
85
83
101
69
103
114
145
112
155
69
104
88
112
145
76
72
52
121
89
136
89
107
107
147
109
76
145
107
138
109
78
137
121
112
103
92
95
147
91
120
72
122
69
106
156
80
134
117
109
101
144
75
80
121
131
76
80
145
69
136
78
78
132
87
138
92
174
138
80
74
87
121
107
163
110
83
181
154
93
93
123
96
72
144
95
80
109
80
128
151
128
102
78
96
194
99
72
76
64
122
104
109
107
151
106
99
161
96
78
119
93
101
115
99
89
97
155
101
165
88
131
74
99
66
102
136
80
164
80
175
67
118
67
154
107
103
80
109
103
94
54
106
120
143
106
112
154
99
78
145
99
85
128
80
154
99
77
99
119
154
78
69
87
156
66
112
164
98
106
99
88
114
131
102
142
76
88
107
87
130
113
100
127
118
107
139
154
69
142
82
80
66
106
54
101
156
107
69
69
69
69
91
118
151
102
100
107
106
125
117
69
145
146
115
109
96
115
104
91
138
136
87
82
119
76
107
114
87
87
104
80
107
163
88
131
130
109
89
103
69
78
76
117
96
109
151
99
69
120
138
132
89
80
138
89
80
112
132
123
87
54
80
175
69
82
110
125
156
125
83
156
110
133
69
120
69
56
78
100
112
151
121
87
91
76
166
96
175
209
89
69
120
120
99
78
175
80
113
79
83
87
119
144
80
85
80
69
137
94
113
136
140
113
76
69
151
128
114
88
67
127
106
132
119
140
80
91
148
163
89
80
80
69
107
123
148
80
107
79
147
106
128
69
96
104
106
94
100
87
109
54
156
80
80
99
69
145
104
133
76
76
131
88
80
107
102
101
154
69
187
127
76
87
107
174
106
117
131
93
76
83
128
101
109
125
110
99
130
89
76
88
80
113
87
119
94
99
99
76
76
78
119
132
91
106
78
125
135
94
112
87
75
163
69
175
140
130
154
120
100
112
69
175
102
122
109
104
99
106
156
80
115
82
132
69
99
136
83
84
89
127
103
72
103
106
69
52
129
100
104
95
93
119
89
69
106
88
121
72
119
80
131
110
131
98
110
154
120
117
91
144
104
112
107
110
52
85
127
113
76
91
123
120
140
80
80
112
100
120
120
69
76
96
106
69
69
67
94
141
105
104
156
143
121
107
76
87
69
87
162
78
89
107
82
69
98
146
69
175
174
105
106
143
135
80
175
102
127
80
121
175
78
80
104
104
80
87
148
99
82
131
102
109
107
109
87
80
69
58
136
145
131
107
175
140
181
175
104
155
93
156
80
102
90
114
83
120
175
174
127
88
119
88
87
78
72
122
69
143
80
69
80
101
91
76
87
94
154
175
91
108
145
110
120
107
72
78
81
80
140
155
109
76
114
87
87
125
80
163
87
118
110
145
129
119
156
111
107
108
140
140
69
175
128
152
94
96
98
80
80
89
120
69
79
76
109
80
102
145
80
105
87
71
134
80
134
94
73
107
128
87
80
80
156
69
79
140
89
108
119
155
69
144
112
142
93
52
154
94
80
75
68
138
111
88
156
87
99
129
98
80
152
104
54
80
175
80
175
69
140
101
94
96
139
120
88
175
120
106
151
72
114
105
78
185
91
104
126
175
101
119
110
80
117
154
87
72
87
78
83
82
80
118
94
80
151
89
90
131
88
80
154
59
83
96
87
123
151
94
145
88
76
154
102
72
112
80
115
130
82
80
156
69
85
80
89
58
134
87
80
56
111
74
136
128
80
69
107
120
78
87
72
99
116
140
69
88
175
78
99
89
99
175
89
99
112
90
121
80
128
69
113
117
112
109
154
106
109
54
93
80
78
110
78
80
134
97
87
144
80
69
76
175
87
80
74
128
72
80
115
129
120
76
129
96
93
87
146
106
89
99
69
115
119
106
127
80
175
136
80
98
104
103
111
131
100
91
80
52
76
94
132
78
80
108
121
89
135
93
93
80
118
143
69
80
120
80
101
136
107
104
109
120
96
72
146
197
100
80
87
121
110
121
76
66
131
114
128
126
80
121
119
87
88
91
154
69
175
80
43
106
69
107
98
134
52
104
114
110
87
140
140
104
106
120
155
80
94
76
56
128
101
136
100
119
119
74
92
89
87
106
148
174
115
69
156
124
117
78
157
109
123
88
117
169
95
102
76
160
75
121
84
83
101
94
174
140
82
157
127
127
101
150
80
76
80
121
117
93
146
80
128
89
122
67
154
138
91
76
89
91
80
112
91
175
69
83
133
69
87
92
96
113
155
147
112
87
101
87
69
80
69
87
120
89
156
69
80
119
116
80
175
56
154
128
110
112
99
143
78
88
111
52
87
120
110
80
80
87
93
94
78
89
120
140
101
80
106
88
134
80
94
125
117
181
166
56
209
103
128
151
174
69
87
171
123
125
92
119
80
121
89
72
69
87
87
104
96
76
110
99
94
109
78
128
142
69
78
149
120
76
125
69
96
69
119
69
134
80
69
72
136
104
111
63
96
121
78
108
80
67
132
80
87
69
106
128
69
154
63
88
119
89
99
128
96
128
106
143
79
72
154
113
110
126
107
69
124
81
133
132
87
79
109
87
80
69
80
129
154
92
57
80
69
154
96
113
80
114
126
87
69
69
69
93
197
163
76
89
128
119
85
76
72
117
145
154
125
129
87
175
107
143
116
91
78
120
103
175
87
100
78
119
80
88
154
80
130
106
107
109
104
93
52
119
112
140
111
175
103
69
143
86
88
76
87
133
69
85
80
117
90
155
100
120
93
104
106
155
94
145
131
136
110
69
151
128
128
135
117
80
80
119
113
96
136
147
103
128
76
89
140
69
106
128
93
84
80
120
78
80
91
144
88
81
138
134
128
96
106
69
69
89
87
138
88
136
54
138
69
110
90
69
93
89
117
166
128
80
74
120
80
80
127
122
131
136
99
96
175
69
102
134
112
140
120
120
77
78
80
52
132
113
117
155
117
99
78
91
106
154
110
120
104
72
87
69
128
120
102
87
126
166
89
94
113
144
87
107
118
88
80
76
85
115
102
119
137
127
76
137
87
80
129
107
69
154
142
111
124
110
87
85
79
80
109
120
143
100
69
154
113
128
131
76
125
76
112
69
80
69
120
154
140
96
101
69
87
91
78
118
69
91
156
156
99
68
78
137
127
54
107
121
160
88
96
83
78
80
69
155
117
76
87
88
98
88
102
125
89
66
103
103
151
107
128
102
80
119
76
140
175
72
120
146
80
94
74
95
78
115
89
109
134
87
108
117
118
107
175
157
94
119
107
118
80
111
113
78
175
129
80
120
78
128
122
88
112
99
119
78
88
146
103
115
99
54
106
80
76
151
155
91
96
88
96
78
76
123
64
119
166
102
87
69
80
81
121
107
123
74
110
98
124
87
79
160
132
80
113
102
141
87
69
78
136
119
154
128
69
80
140
183
131
76
120
151
69
103
136
101
128
110
152
97
145
69
114
118
126
78
99
104
175
134
80
112
88
130
69
128
79
77
117
123
80
99
155
66
76
52
115
87
113
88
89
107
126
67
102
104
69
152
119
117
78
134
87
100
78
102
123
128
146
87
94
101
136
127
80
76
112
120
76
165
85
80
99
134
66
113
137
56
90
120
54
127
147
121
76
118
76
104
114
124
89
166
135
131
80
131
69
80
80
90
78
69
92
74
78
78
96
54
142
67
136
80
93
69
172
197
99
147
107
136
144
76
132
113
121
113
135
88
78
107
119
156
99
78
69
69
174
80
68
71
52
88
154
145
128
78
69
100
140
125
69
122
110
80
88
80
101
121
96
160
87
69
95
106
87
106
154
101
87
104
110
90
136
78
69
124
120
90
78
80
117
128
133
80
102
103
94
127
121
163
156
122
132
112
88
94
110
74
101
69
121
76
110
143
72
163
69
78
159
78
88
54
121
100
87
136
128
140
175
89
69
103
120
87
155
160
120
119
125
143
78
107
80
128
80
98
143
131
107
91
69
99
131
111
89
87
117
107
99
93
117
128
87
102
106
93
77
117
128
128
111
137
80
76
80
69
163
43
134
110
110
113
107
125
76
136
156
112
146
96
93
88
119
106
148
111
100
74
89
52
129
72
92
89
119
69
144
104
82
133
69
105
109
96
76
110
117
71
93
96
134
107
175
79
156
67
131
94
89
95
89
69
109
76
149
146
197
117
143
117
119
101
117
80
56
98
121
100
175
78
111
96
69
156
148
78
93
122
91
103
104
107
119
175
78
111
80
109
143
76
175
76
110
109
91
94
122
69
110
74
137
114
109
80
80
64
107
99
78
115
149
76
169
94
110
78
80
148
83
146
69
119
175
118
137
106
80
110
110
83
76
72
72
72
76
157
87
125
84
134
110
113
101
69
89
76
72
106
132
133
80
106
69
87
99
113
76
89
110
126
164
102
121
82
123
107
113
91
112
136
151
84
106
106
88
93
72
197
89
54
78
149
134
110
69
140
153
69
106
96
175
87
80
113
87
111
197
94
87
82
69
134
197
151
160
69
80
93
69
87
91
134
111
119
78
78
128
118
74
134
54
85
118
175
109
69
133
175
107
124
101
128
66
178
80
134
93
76
117
88
140
121
88
175
78
136
94
69
107
117
115
89
175
175
121
151
80
69
107
146
69
69
72
146
78
136
99
89
129
80
101
80
81
109
148
69
94
98
75
107
87
123
197
131
143
121
131
147
93
132
88
80
120
107
80
100
151
93
99
88
175
89
69
80
145
87
112
76
78
118
69
92
96
197
107
91
104
126
110
72
175
163
175
80
140
94
78
59
110
96
201
160
135
195
134
94
74
69
80
143
110
120
121
67
109
163
119
99
89
106
108
87
113
150
88
78
99
74
87
95
143
87
134
114
154
93
113
163
144
115
76
117
117
151
127
143
80
69
88
114
114
86
94
175
119
150
78
69
154
69
137
102
146
80
76
136
146
80
137
80
69
94
99
107
69
152
78
78
110
76
175
175
99
69
93
118
125
76
98
88
109
87
136
103
117
80
103
80
78
128
80
127
128
136
107
99
154
185
131
115
96
117
164
87
102
96
76
80
154
121
110
156
129
88
85
134
146
120
130
125
78
78
78
89
120
119
104
120
104
109
89
110
120
143
78
130
91
96
88
149
152
103
80
87
148
117
83
112
80
134
69
134
106
102
74
101
174
128
128
112
104
185
126
52
109
68
88
99
114
99
120
80
76
88
123
91
111
69
104
155
76
106
109
145
124
99
94
76
175
78
119
87
98
107
113
89
83
131
78
94
80
127
87
99
126
80
120
101
74
125
140
175
137
104
69
112
77
76
119
161
145
87
106
69
71
121
75
113
120
122
120
209
72
69
87
80
94
87
104
116
81
119
109
120
80
101
94
69
101
89
111
128
96
100
80
175
102
117
120
175
87
69
165
129
120
69
109
121
142
110
110
80
75
80
159
80
80
96
124
107
140
164
98
197
94
107
110
134
87
121
129
99
80
175
140
94
128
95
90
117
77
147
80
76
80
94
127
78
94
63
81
156
144
99
109
78
145
76
91
80
130
110
127
93
76
151
99
175
75
119
134
80
80
89
119
80
76
78
93
110
118
155
123
72
91
67
101
102
73
175
87
79
134
101
107
118
140
99
112
122
130
93
106
72
78
138
88
94
112
89
130
98
110
119
138
69
93
66
175
69
175
175
69
93
131
131
88
143
43
136
80
154
91
154
112
127
106
76
108
157
80
76
80
142
136
147
101
121
99
99
91
119
143
80
134
78
69
87
121
126
69
95
95
107
113
69
136
134
120
104
94
76
90
175
119
124
89
127
69
96
119
54
87
80
110
80
110
83
119
108
175
80
124
106
127
124
66
128
87
109
121
69
87
88
74
54
87
95
154
146
113
87
88
81
80
75
60
110
78
110
94
135
74
175
106
109
120
151
80
106
116
110
52
72
80
95
120
120
94
87
80
147
90
80
80
117
156
69
86
106
119
88
107
120
110
87
151
80
120
109
80
131
103
94
130
134
93
94
94
97
69
76
119
82
123
141
80
102
127
162
117
121
69
69
74
87
109
78
78
106
154
80
142
93
145
86
130
155
78
89
113
87
144
139
52
78
132
125
88
175
89
103
96
140
107
117
76
99
85
101
101
87
69
101
123
151
132
128
91
171
71
102
131
85
88
111
155
76
143
69
87
109
93
69
117
80
88
111
76
111
119
69
146
117
81
120
120
112
156
76
141
120
69
175
127
74
76
80
94
120
98
104
145
99
119
87
69
175
106
80
122
107
124
76
89
76
125
92
104
85
89
78
109
74
87
76
80
78
66
122
104
137
76
78
74
69
99
79
156
122
88
121
119
73
111
80
54
87
80
119
130
87
106
69
107
136
88
56
93
91
69
116
101
97
69
94
72
89
67
87
69
128
71
197
76
162
134
131
119
91
76
128
136
96
105
120
76
92
136
136
69
147
76
137
154
87
101
118
134
130
133
80
54
133
93
99
147
91
130
80
134
87
109
80
197
128
153
80
119
89
101
89
128
112
80
80
124
110
129
121
69
195
143
80
102
69
148
148
121
78
110
87
94
94
78
87
128
112
94
127
144
91
101
80
105
154
89
126
156
154
69
128
131
69
78
122
120
123
156
76
67
120
122
60
100
109
83
159
127
80
94
134
88
99
78
95
94
118
80
80
110
106
69
125
90
87
85
128
129
127
145
134
80
89
80
136
69
76
112
87
124
80
83
111
110
91
164
155
80
95
164
103
119
95
138
120
154
139
94
87
136
131
78
109
67
107
154
69
74
123
91
68
78
166
134
106
117
140
69
89
94
91
110
109
91
137
111
112
117
143
94
155
111
140
113
113
69
89
76
119
64
110
158
152
131
106
97
112
115
110
69
175
133
69
69
80
112
110
64
162
109
87
80
87
140
119
140
80
80
78
87
111
136
124
110
134
87
149
142
80
122
131
118
52
80
155
101
98
119
69
131
100
91
151
90
134
142
119
143
98
72
89
154
154
120
88
118
138
109
127
129
144
110
139
78
113
99
102
175
78
87
69
80
172
126
153
76
96
124
134
89
112
104
96
197
127
52
175
154
107
143
80
103
117
80
114
87
121
123
74
96
69
80
78
74
54
63
89
120
175
81
91
88
87
80
119
94
85
76
87
78
69
89
96
96
156
136
80
80
107
127
147
107
127
99
136
80
103
89
119
93
92
136
74
72
78
80
164
96
80
80
110
74
100
94
109
114
106
54
113
94
101
113
69
107
111
76
175
112
85
99
80
131
94
71
108
118
151
95
80
134
76
109
96
80
85
119
119
87
117
80
120
183
101
101
69
93
90
71
112
114
75
175
106
118
94
121
80
203
99
69
125
140
120
154
139
69
150
131
209
110
88
119
91
93
104
94
96
69
101
136
128
116
91
110
96
131
103
130
136
64
132
99
106
93
154
89
69
101
175
95
163
74
117
80
117
126
69
143
87
107
89
76
175
140
174
76
78
119
97
113
80
107
120
154
124
117
80
78
69
52
76
99
117
88
107
85
87
133
132
102
80
175
113
99
133
74
114
80
71
72
143
85
201
197
143
87
111
80
93
84
106
87
104
107
89
154
87
69
128
114
80
128
75
80
111
69
91
76
110
148
160
76
78
155
117
80
101
140
52
133
93
69
109
96
122
119
76
148
69
85
107
52
83
133
87
87
117
120
106
78
74
88
74
69
134
175
76
136
123
99
110
119
82
76
100
52
79
80
88
175
114
76
89
96
69
97
126
125
100
131
110
91
80
69
93
115
147
131
92
106
151
87
80
112
102
78
121
88
126
94
69
118
117
80
110
80
113
78
119
87
80
76
80
80
110
128
134
163
113
119
78
104
80
119
80
82
131
143
106
154
95
88
151
107
69
118
113
108
95
197
107
90
120
185
143
146
123
80
136
109
74
80
96
80
122
69
111
88
89
69
78
134
126
86
174
60
155
156
133
107
87
80
119
175
151
128
76
80
92
78
163
69
131
89
146
99
69
104
72
169
80
172
103
120
113
134
119
143
80
121
106
80
100
94
101
154
117
181
90
112
109
113
90
175
87
109
118
122
87
199
122
151
78
99
126
80
99
146
54
76
67
88
110
80
132
154
69
80
107
100
134
93
163
115
194
138
154
131
113
124
79
136
121
78
107
88
78
201
69
91
153
134
80
69
69
140
80
73
54
87
76
78
151
99
116
109
138
122
92
155
104
154
80
120
89
106
96
78
69
104
78
96
87
80
96
74
107
154
78
105
69
110
115
56
80
109
103
107
88
131
87
154
80
172
112
108
175
78
131
128
69
91
100
123
159
77
99
123
143
136
78
89
118
122
89
147
155
100
130
155
76
80
105
72
80
152
136
164
120
175
80
151
99
58
89
101
169
69
72
69
114
89
99
52
117
115
122
107
80
99
119
76
93
144
149
129
113
104
95
71
147
107
109
163
99
117
107
89
72
98
107
87
118
101
58
115
128
137
102
76
119
209
146
109
88
154
78
56
76
154
183
142
110
69
127
124
95
67
78
95
76
69
137
148
107
156
85
78
96
134
93
123
83
69
172
110
107
110
120
102
120
136
164
145
108
80
107
146
175
107
136
80
122
136
76
80
78
163
120
119
120
80
87
85
128
69
149
114
80
104
155
94
97
107
93
93
87
106
87
151
78
94
69
80
106
197
89
122
118
52
162
113
98
101
104
114
89
149
91
80
88
181
104
96
80
76
114
96
112
78
88
69
78
110
80
87
80
113
119
95
175
136
87
76
113
94
89
174
106
99
140
72
99
123
94
121
141
120
112
208
112
110
99
110
122
197
117
119
148
121
197
142
76
76
69
107
123
110
113
121
76
155
80
52
121
130
156
92
100
101
78
118
136
83
96
80
143
135
87
99
75
156
197
99
120
128
85
99
107
110
132
87
151
80
88
120
113
201
83
87
120
136
164
140
136
91
80
155
69
140
54
175
131
112
148
156
133
112
72
151
99
110
119
132
80
103
101
99
69
120
113
78
107
197
110
58
115
110
69
89
156
127
134
76
119
96
78
136
93
102
87
64
105
148
131
163
69
87
54
175
87
175
101
80
80
120
175
136
101
72
175
100
88
69
69
69
76
121
76
91
111
120
69
109
148
85
109
116
156
63
148
84
145
110
76
107
157
91
118
87
119
87
136
175
112
99
88
87
106
69
110
80
96
97
166
112
78
102
87
140
78
106
107
112
104
67
56
143
104
69
80
114
91
69
94
80
104
80
69
151
166
140
78
69
76
101
107
131
78
87
69
54
87
151
113
140
96
104
80
128
80
87
68
93
112
96
76
80
107
95
91
80
80
131
119
80
156
121
117
164
76
132
124
80
80
88
148
138
79
114
80
80
80
137
102
114
136
107
87
102
80
111
80
87
94
79
76
69
124
76
91
119
112
107
78
94
110
114
119
99
111
131
85
56
145
107
101
78
111
72
69
109
155
76
106
145
163
126
87
151
137
87
69
69
175
69
164
132
69
131
69
80
113
151
120
56
127
112
111
110
114
101
119
69
175
107
101
121
109
107
109
116
106
89
107
122
129
80
155
80
80
128
85
175
184
109
146
99
78
57
94
93
94
109
93
109
164
106
80
80
76
83
87
78
91
140
110
130
117
69
94
90
163
104
159
69
69
106
107
52
88
154
80
69
166
87
136
118
78
83
142
155
58
67
101
80
69
170
89
76
82
117
91
103
175
87
138
99
98
149
93
118
76
56
109
80
156
74
175
117
132
138
80
101
154
110
91
80
101
99
76
164
119
104
114
74
88
85
118
76
120
89
104
155
123
133
77
96
80
128
74
89
119
112
72
69
80
54
76
78
80
119
136
87
87
78
94
103
164
73
152
119
94
120
87
136
80
115
98
67
130
107
145
109
88
100
134
132
205
78
76
120
69
80
121
69
69
72
106
134
80
140
175
124
110
171
91
175
106
76
122
119
110
117
156
92
110
113
80
128
109
69
144
143
99
175
78
52
132
78
90
96
80
88
76
59
121
110
80
148
69
144
135
87
87
115
78
80
56
80
175
80
116
80
155
106
107
120
80
93
76
107
74
118
199
154
118
72
52
69
96
80
137
96
137
54
99
78
93
120
125
94
156
80
88
166
128
87
104
85
85
114
87
151
102
121
119
119
104
87
126
153
120
114
79
163
119
80
105
109
114
111
121
113
114
107
133
76
104
174
128
52
175
156
109
89
89
128
113
78
115
199
119
76
111
160
114
80
119
113
69
80
120
111
106
98
156
88
76
69
87
154
76
120
80
69
80
80
113
128
79
128
152
87
87
124
87
115
99
80
87
112
151
56
78
100
120
138
80
151
117
80
80
110
74
69
74
106
119
134
174
110
69
119
104
147
76
109
69
138
147
89
94
103
106
94
90
110
136
130
111
104
80
80
94
104
80
80
103
112
107
152
120
80
87
60
104
104
147
175
151
154
197
95
80
93
59
109
79
80
121
93
94
66
151
76
68
120
88
90
69
110
89
96
134
122
107
113
93
90
91
88
109
197
156
100
125
145
69
88
78
105
88
104
115
117
175
136
106
174
80
89
93
183
72
131
110
112
119
78
87
79
138
67
181
80
109
131
140
72
86
156
112
98
54
93
80
127
69
100
79
126
83
119
121
81
87
107
154
95
143
136
85
72
124
80
121
78
73
120
174
99
144
113
69
134
135
163
87
74
78
78
148
131
80
114
43
98
166
80
110
69
156
120
91
98
128
183
131
54
54
76
112
85
199
120
120
64
131
121
155
95
80
87
90
148
114
137
131
139
109
126
140
119
132
89
120
119
137
94
132
80
69
67
76
99
123
150
129
101
80
69
131
154
96
160
80
93
73
89
89
54
151
88
117
99
110
85
69
87
101
139
111
154
78
131
132
111
172
101
114
78
80
74
119
97
69
115
120
88
120
111
76
103
115
121
88
69
136
128
99
140
119
127
112
69
155
60
74
155
85
107
147
109
131
69
88
83
148
88
89
110
80
115
88
89
97
89
80
113
120
88
80
163
151
56
69
90
109
96
131
77
76
80
96
101
92
80
69
136
156
128
123
123
80
110
106
111
117
118
87
134
175
85
95
134
59
136
93
114
94
115
100
111
76
140
107
144
100
134
80
89
138
155
121
115
74
81
80
89
109
143
136
175
87
141
111
115
102
89
138
109
128
101
136
110
110
134
104
87
145
137
94
146
72
120
109
78
88
83
66
126
139
155
151
52
128
131
120
140
92
80
175
145
96
140
72
113
94
80
76
80
69
114
128
80
111
67
136
113
119
144
126
175
85
75
94
80
72
113
76
146
87
154
89
119
78
76
114
80
156
80
56
88
90
135
121
104
131
85
106
136
156
91
134
80
140
107
101
166
69
79
80
155
126
127
78
80
104
106
87
119
107
95
76
117
126
88
71
136
69
181
89
94
141
104
69
135
87
154
110
158
76
154
128
121
111
139
154
144
135
69
68
120
110
87
74
160
146
109
119
69
115
87
69
87
131
146
83
119
101
92
69
94
80
101
143
89
110
69
93
107
112
66
133
201
58
98
56
72
96
104
99
144
69
183
89
99
131
117
122
86
175
134
98
115
87
91
117
69
175
118
137
76
163
185
99
63
80
87
80
78
69
151
78
80
76
82
87
54
87
77
78
101
80
129
87
87
99
102
136
119
69
114
80
107
87
148
109
120
101
154
90
121
74
153
99
90
100
119
112
109
87
80
87
80
120
136
121
80
109
78
120
91
154
76
109
175
80
133
120
67
69
100
104
131
89
124
87
74
120
122
197
175
78
76
79
118
113
95
89
87
72
79
89
76
152
144
88
78
88
91
101
80
102
89
183
131
117
112
122
87
155
92
155
94
52
89
109
146
82
68
81
107
102
131
92
157
181
124
69
138
83
88
69
74
137
156
80
102
150
69
94
56
128
69
131
110
128
88
94
69
76
128
133
140
109
69
110
76
130
113
52
92
87
160
107
87
101
104
117
106
63
85
75
136
78
69
89
145
151
118
118
123
104
69
131
80
94
172
146
69
122
136
81
108
119
83
128
80
99
147
119
98
125
147
100
106
80
121
95
80
76
57
152
119
140
43
142
80
114
131
94
85
108
93
134
115
118
96
82
80
142
126
124
43
89
175
88
80
57
121
119
80
78
142
131
80
146
133
78
103
131
152
83
132
100
130
119
87
67
140
114
117
87
163
169
91
112
76
117
99
69
80
138
52
76
72
96
119
112
144
76
175
85
99
93
89
185
172
69
111
112
96
131
95
110
136
94
121
131
110
75
77
80
128
107
80
156
87
80
125
107
94
76
79
78
85
75
117
90
174
164
93
172
156
80
154
80
74
78
76
96
138
80
104
89
131
79
96
93
87
112
119
101
80
82
112
94
80
145
80
163
175
146
124
101
131
69
107
99
117
134
66
80
175
101
174
80
167
104
87
123
187
117
143
123
85
69
127
156
94
102
114
78
69
113
69
175
122
81
111
80
75
156
69
94
93
142
93
115
136
89
76
129
136
80
145
87
100
54
76
106
120
93
89
80
80
110
56
80
125
133
152
100
76
113
149
148
126
175
52
89
175
178
110
72
134
87
102
156
106
187
94
107
76
136
106
118
115
151
88
76
89
75
69
96
134
118
104
209
94
147
104
78
80
80
121
107
117
97
106
83
100
69
120
52
136
134
120
117
106
175
129
54
144
120
87
154
78
76
120
104
175
80
101
143
89
80
197
110
87
94
96
81
69
110
99
107
117
80
69
69
104
154
109
156
87
88
114
123
138
110
109
99
82
113
152
80
126
107
88
118
121
92
87
111
79
69
120
142
78
80
87
81
104
134
78
94
138
78
109
154
107
111
106
69
128
122
197
80
87
97
96
120
80
156
78
69
72
56
80
96
112
87
138
123
113
79
87
136
175
80
108
147
80
104
107
154
121
78
69
113
92
106
142
69
96
80
102
163
197
87
127
72
69
54
72
80
74
106
69
88
150
96
90
140
83
128
110
110
142
72
120
69
87
128
107
117
103
107
144
113
129
69
77
154
125
69
94
96
104
154
69
110
78
80
154
120
100
87
52
123
56
119
114
104
89
80
78
80
89
175
67
175
134
134
146
91
69
140
121
131
107
166
149
106
76
128
79
76
175
134
78
154
155
131
88
109
120
78
80
127
106
151
107
121
117
164
114
140
99
128
146
126
72
80
88
201
175
156
118
80
134
128
148
115
109
148
109
80
88
69
131
69
119
104
69
80
87
76
172
54
96
66
117
69
136
87
79
89
93
148
87
87
143
145
85
124
154
81
128
89
121
69
117
76
175
96
87
154
125
80
87
124
76
126
132
111
102
99
118
52
119
69
76
126
136
80
101
126
80
90
140
154
123
88
95
121
110
52
122
102
125
88
163
80
102
149
126
131
128
92
94
91
52
93
98
106
80
140
197
180
175
76
82
122
83
93
118
106
107
143
106
76
175
186
80
107
76
104
110
78
69
87
79
80
102
111
119
131
130
99
94
78
92
122
69
128
87
87
145
83
136
84
78
97
140
80
119
163
175
130
125
88
96
94
69
119
94
123
122
93
175
56
175
89
107
156
157
145
91
123
80
129
87
87
69
67
134
56
164
128
89
133
146
82
122
117
69
93
83
175
67
94
129
99
163
80
131
117
119
87
112
128
76
107
87
91
110
99
93
80
154
69
69
75
114
134
80
110
72
75
80
107
104
104
159
56
136
89
99
80
54
134
106
154
102
134
134
102
90
78
119
147
128
166
134
119
126
120
80
112
69
69
82
147
146
89
81
146
96
129
73
80
94
89
89
129
93
104
76
80
125
100
87
87
96
119
114
103
74
110
121
156
115
119
120
88
107
131
145
137
119
122
125
101
52
87
142
121
80
78
112
130
74
154
59
175
80
110
93
93
80
128
96
94
104
80
104
125
74
64
119
110
138
118
107
156
148
69
107
143
112
156
152
88
111
146
104
100
142
89
146
74
154
88
131
72
114
131
146
145
94
99
85
90
99
102
69
87
95
119
110
90
142
107
71
175
120
85
155
155
123
197
131
131
140
78
64
110
85
122
66
135
121
110
74
110
176
104
137
140
69
85
87
144
69
142
80
120
145
112
87
80
54
117
80
172
100
72
110
69
87
109
101
131
114
101
106
92
102
119
120
151
119
175
80
80
190
123
94
136
76
114
94
145
93
80
155
68
79
82
80
88
145
76
68
118
120
184
87
78
205
111
108
95
86
116
179
107
80
117
120
117
151
106
69
113
101
137
121
120
117
120
122
87
128
134
120
78
136
96
161
104
114
148
101
80
69
87
121
80
123
80
100
119
80
69
93
127
118
94
83
87
154
87
189
71
128
80
85
89
87
137
76
87
90
69
137
118
121
87
69
124
98
115
76
87
140
123
154
145
119
197
76
131
123
151
118
106
119
104
154
85
121
94
69
128
76
76
121
69
113
62
146
120
76
120
94
87
154
79
99
74
101
88
103
114
109
82
93
146
110
87
113
76
134
120
101
163
134
80
109
109
100
76
76
112
69
92
175
144
149
71
99
112
96
80
54
89
88
113
118
76
80
69
69
118
67
154
78
118
109
110
154
137
69
120
122
146
89
134
69
117
94
120
106
80
139
121
109
62
156
93
120
109
102
112
89
131
93
76
111
114
78
93
99
109
109
72
90
74
147
112
93
201
142
125
121
110
121
67
137
76
174
69
110
154
72
94
120
136
117
101
80
96
150
128
128
67
95
69
85
123
136
85
146
181
175
134
175
78
100
69
107
74
119
69
69
118
96
163
74
87
175
108
133
82
128
106
74
75
69
107
102
125
69
107
69
76
130
97
106
128
126
107
197
80
154
119
99
135
82
175
113
111
69
91
88
78
101
91
146
90
92
78
107
132
122
102
77
144
154
78
112
119
89
76
99
111
111
107
103
72
132
109
83
87
80
66
98
113
127
78
88
109
104
111
69
76
119
118
95
106
197
128
101
153
87
80
98
143
89
197
80
69
103
134
99
98
64
104
121
96
107
106
72
80
89
151
78
146
80
107
116
78
78
76
156
122
175
76
128
138
145
152
69
99
128
101
99
140
122
80
106
114
125
69
78
43
151
117
80
119
74
175
91
87
80
101
99
80
105
92
155
69
107
78
88
117
105
134
76
104
88
80
143
133
144
154
156
93
117
109
91
80
136
69
91
91
122
87
205
56
69
148
93
132
98
128
69
118
119
80
160
93
99
93
128
131
140
156
127
101
67
99
120
110
80
80
197
107
128
69
76
129
69
109
175
102
107
78
140
89
117
91
140
151
89
80
134
154
93
78
96
185
99
79
56
109
87
69
80
134
107
136
78
139
146
120
80
158
54
145
69
83
120
85
132
116
78
82
148
87
115
150
110
78
80
132
126
69
112
91
145
110
91
106
74
90
94
121
87
111
103
102
131
137
80
120
97
121
83
80
98
118
89
199
96
106
87
185
117
69
102
112
79
103
118
118
80
115
94
144
151
80
106
101
107
106
99
96
90
72
110
96
163
67
134
56
87
107
100
114
102
69
96
88
148
142
128
115
71
155
80
99
109
69
79
101
121
109
89
120
80
110
91
131
96
80
93
140
118
80
97
110
110
119
58
93
132
122
78
91
146
69
145
183
110
120
140
69
100
98
117
69
69
87
66
98
69
80
88
76
76
79
101
93
185
99
122
89
78
69
155
110
76
148
80
156
87
197
69
125
171
112
54
155
123
80
76
107
120
76
91
109
80
158
73
104
69
143
90
109
122
69
108
80
78
139
134
69
109
109
87
154
109
80
128
80
80
155
64
104
112
89
67
80
80
114
132
102
97
104
154
104
95
94
74
119
69
87
137
90
120
101
99
118
137
197
123
119
94
131
87
68
87
137
155
143
136
115
119
87
128
69
76
130
69
107
140
148
88
74
119
76
83
109
136
145
80
78
147
131
117
100
151
114
147
93
69
154
76
109
109
87
117
110
121
87
151
85
118
169
43
80
64
109
75
107
69
119
138
117
134
137
87
177
175
137
83
56
104
80
127
71
100
96
80
78
159
110
119
110
72
120
155
88
96
80
107
132
142
88
118
156
136
118
78
80
70
91
134
113
118
80
151
106
119
156
137
117
83
93
145
115
151
88
80
128
104
104
91
175
95
89
146
119
147
128
80
109
119
100
78
96
169
134
131
91
151
136
60
69
69
69
137
107
96
105
114
80
80
87
144
116
79
120
89
69
91
43
138
113
96
52
144
184
80
117
133
115
131
92
143
136
131
103
197
80
100
80
151
134
120
146
110
175
127
64
96
118
72
85
80
136
154
69
121
116
103
122
119
80
80
107
121
109
127
115
101
78
123
114
119
58
96
69
197
80
129
69
93
117
175
120
78
137
133
78
140
80
175
172
120
94
107
78
138
128
109
80
85
121
151
80
155
120
138
80
72
106
160
133
155
87
112
94
76
185
72
69
69
147
109
85
115
69
88
201
127
146
89
169
89
94
100
110
155
88
112
147
143
99
123
117
87
76
112
144
80
69
80
87
88
69
112
120
142
104
145
78
72
175
103
131
74
106
111
127
155
115
104
96
80
112
78
175
120
119
156
101
98
128
80
136
121
136
89
87
97
127
94
56
140
94
69
69
100
100
107
151
69
114
96
130
63
115
148
131
102
154
114
107
102
69
128
69
109
175
134
76
91
134
94
106
76
76
112
74
115
94
80
108
136
83
69
99
76
118
83
99
138
80
133
76
107
72
122
106
88
138
123
80
96
113
93
110
110
89
107
104
89
121
175
119
87
69
96
80
110
122
130
109
101
145
128
141
98
121
69
89
151
69
107
105
145
127
145
80
91
69
87
63
197
156
56
121
114
127
146
85
72
110
96
157
69
110
74
154
76
69
119
151
111
54
118
97
119
152
110
133
117
125
99
54
110
110
140
72
166
163
87
91
101
90
126
76
78
119
99
87
83
144
101
64
120
118
122
104
54
112
81
163
147
155
120
122
88
88
113
118
85
156
127
88
69
79
98
114
109
109
87
78
63
156
78
80
78
119
96
107
93
80
94
104
69
147
69
145
97
80
129
78
199
109
154
112
109
155
134
163
112
109
93
80
133
80
78
76
121
97
87
132
110
90
111
153
69
112
76
74
131
142
136
69
71
78
79
108
69
148
141
138
118
87
91
87
106
115
79
97
143
120
87
69
99
69
74
78
131
114
80
76
102
136
88
96
69
78
144
135
120
143
80
109
162
100
117
166
80
160
80
118
106
78
145
136
120
94
144
148
140
128
95
154
78
80
52
119
80
78
79
69
69
78
76
74
76
149
90
94
163
111
70
99
157
120
82
122
78
78
69
87
169
120
151
114
91
112
96
52
110
135
91
80
137
87
95
103
197
94
67
72
80
94
83
137
107
83
163
107
52
72
127
69
120
119
80
59
74
127
88
131
100
87
69
69
155
144
72
119
107
99
121
114
110
154
100
80
151
93
91
54
80
91
122
54
101
163
96
125
80
69
76
91
186
99
154
119
156
101
101
87
96
151
89
69
80
107
78
80
107
91
133
114
113
110
106
128
151
104
117
100
69
80
68
118
80
106
83
148
131
93
99
99
150
80
107
115
96
137
127
95
88
128
119
156
131
87
112
69
109
131
94
133
126
80
123
80
85
110
82
120
75
78
91
88
104
131
79
155
80
89
101
128
160
91
82
127
78
146
104
141
69
78
106
113
94
131
154
130
88
174
76
76
120
76
103
99
126
122
110
110
99
174
76
109
52
80
139
151
107
93
122
80
100
124
69
110
131
120
80
113
104
89
80
78
104
128
76
131
175
119
80
69
114
160
118
154
106
144
80
74
142
80
104
137
78
104
115
104
76
60
128
107
54
102
109
114
90
146
119
69
69
76
113
76
127
151
149
76
101
89
112
78
78
102
183
130
91
78
99
111
107
89
120
104
111
97
110
163
120
154
96
99
89
75
151
134
93
94
136
94
96
126
80
136
72
117
175
104
75
75
102
69
147
83
69
80
128
131
174
131
129
147
90
121
58
127
175
118
78
87
88
127
78
137
69
76
156
127
160
103
107
120
127
94
100
80
78
68
125
100
100
117
89
128
80
163
156
163
76
94
116
67
74
80
117
76
72
89
80
99
136
119
138
131
87
136
140
106
80
105
69
156
112
143
151
76
121
175
69
69
113
89
107
91
114
96
69
114
56
155
143
134
114
80
69
156
131
157
104
88
119
109
121
104
142
175
104
115
144
148
100
100
137
87
120
87
128
87
80
109
88
80
69
124
155
52
128
95
69
76
112
154
122
144
120
68
69
69
112
78
107
108
128
127
119
139
134
80
152
72
69
175
93
106
124
117
131
101
136
111
94
155
69
56
99
95
112
78
159
134
107
175
80
89
87
148
117
134
101
127
76
140
128
96
76
107
88
99
110
137
120
99
119
133
100
151
89
80
101
136
120
74
99
91
76
149
115
69
80
120
130
160
118
87
78
94
143
66
87
131
120
56
80
101
106
76
113
88
121
136
78
175
174
101
100
122
114
56
69
160
80
87
113
80
114
60
94
43
94
101
78
80
144
88
87
137
85
141
176
80
123
140
69
80
100
69
110
52
104
69
89
129
121
85
89
136
117
84
80
89
189
123
126
80
117
56
85
128
67
78
80
80
151
100
131
119
74
114
134
117
127
104
87
52
119
146
131
78
174
143
56
69
120
54
154
145
83
90
106
119
128
123
80
117
155
113
69
87
155
157
101
94
89
96
96
76
60
69
132
72
109
98
80
128
101
120
56
152
101
87
80
155
69
124
80
197
101
136
80
76
95
80
132
113
69
100
140
143
111
146
69
76
113
155
91
147
143
69
123
88
87
113
72
74
69
102
153
155
112
131
110
105
95
162
119
80
56
88
117
80
80
54
120
118
120
72
78
72
120
106
140
162
76
154
94
118
99
175
113
146
119
145
111
74
112
98
74
112
131
120
76
112
91
128
56
80
60
113
89
56
197
76
96
146
112
139
107
128
93
72
175
80
112
80
80
116
114
136
124
87
66
102
101
132
69
87
132
156
89
112
102
69
132
91
63
116
140
131
113
69
197
87
113
80
76
54
104
89
69
133
107
104
69
110
69
107
140
74
81
95
76
99
102
101
80
119
111
130
76
78
145
82
112
88
66
175
104
187
80
110
89
137
133
100
98
127
145
69
87
76
104
76
76
94
122
82
154
69
113
121
136
119
69
95
138
59
133
66
87
117
69
115
119
80
88
123
118
87
88
119
175
122
66
148
76
111
87
151
133
138
80
89
76
89
128
119
74
87
92
76
118
150
99
72
80
106
72
126
76
129
110
82
140
136
76
140
87
145
69
87
107
80
154
69
119
99
78
120
80
89
128
80
106
94
80
107
72
123
156
175
80
89
155
175
88
82
110
122
72
89
94
119
69
124
147
117
134
120
85
112
91
144
78
119
88
154
176
147
69
59
101
108
94
88
99
145
117
154
124
106
136
80
76
136
109
77
69
100
134
93
116
87
106
81
106
80
78
94
155
96
74
106
75
76
119
78
152
76
87
83
128
134
134
120
121
73
87
91
110
80
78
76
146
101
113
136
85
94
106
114
152
125
147
160
103
131
72
154
85
145
80
69
111
142
78
98
120
103
112
127
124
95
109
76
95
93
96
131
97
96
69
124
72
131
105
127
131
120
87
110
145
87
69
91
135
121
93
89
69
80
94
119
72
175
156
56
130
157
91
131
123
128
77
128
80
78
96
101
96
87
183
109
117
88
97
101
59
87
80
80
84
69
151
175
120
131
72
156
131
101
99
75
112
99
146
94
80
80
117
107
89
76
87
128
69
80
107
87
87
121
71
119
120
134
89
134
113
120
66
79
140
175
109
131
119
109
89
64
87
87
101
131
119
136
72
68
156
151
92
80
141
97
69
95
68
137
175
107
72
64
175
88
88
119
80
119
69
183
80
123
101
80
116
106
119
121
87
89
91
98
131
78
122
89
94
165
124
76
99
80
107
121
85
111
56
88
100
94
104
80
96
88
106
98
154
87
87
91
79
147
151
72
164
136
99
154
104
131
137
156
60
109
59
52
112
154
95
107
107
121
154
88
115
74
80
100
87
54
103
110
69
80
87
87
175
69
102
120
111
89
78
89
175
113
72
99
80
80
175
118
102
98
89
76
131
143
113
104
101
79
89
122
128
119
87
100
121
87
106
119
127
102
154
80
80
78
118
121
52
164
125
101
145
115
69
80
87
113
69
136
131
145
145
87
140
140
88
127
80
120
181
83
118
119
89
106
80
110
120
128
80
154
123
100
126
80
80
134
88
197
90
97
119
78
76
98
69
72
69
109
164
76
91
155
146
115
113
120
85
69
103
120
69
80
96
78
133
88
136
107
114
69
89
76
110
74
92
115
80
80
97
85
93
126
83
107
78
76
87
88
119
94
130
94
69
130
93
87
80
93
115
117
118
128
111
87
76
175
89
56
197
107
124
80
107
106
72
104
120
134
69
174
175
136
120
72
155
117
88
155
93
123
111
145
78
78
80
164
164
99
96
76
151
104
119
95
109
87
120
199
87
76
119
89
86
76
145
107
145
119
114
87
109
85
87
69
80
132
69
109
88
154
67
121
130
104
144
151
80
175
129
106
121
100
80
119
197
107
101
69
114
128
145
144
109
99
165
154
93
97
111
131
146
109
83
113
156
104
128
90
113
154
121
175
80
139
175
99
110
116
140
145
87
98
106
107
136
146
174
110
120
76
69
87
117
101
80
112
93
104
160
165
94
119
94
72
87
160
148
147
80
175
80
80
117
127
69
71
106
88
121
95
119
76
113
152
78
107
110
175
78
94
140
98
69
80
71
122
78
131
95
155
99
80
69
87
120
74
76
144
144
139
172
100
82
74
93
119
79
134
136
141
116
145
87
91
80
119
130
74
69
108
87
87
185
87
129
144
80
91
56
127
76
104
88
89
69
76
71
76
123
121
110
151
110
175
96
101
121
69
123
80
123
80
197
137
142
93
153
127
56
88
88
80
149
80
76
87
80
80
155
183
80
99
76
123
128
110
113
100
113
76
117
117
131
110
87
154
99
133
87
119
160
109
142
76
125
120
89
130
128
103
102
112
80
76
76
113
110
87
100
99
69
164
91
109
130
119
129
87
140
107
175
80
175
129
107
128
175
69
72
76
120
109
80
69
123
69
175
87
93
128
89
87
91
134
154
101
152
98
109
80
89
69
80
112
102
121
153
104
104
99
69
125
87
72
69
69
128
100
164
115
120
78
107
74
94
101
143
148
159
119
69
69
80
94
140
54
120
99
89
122
159
121
147
154
113
110
156
69
80
127
69
125
120
120
69
80
111
118
127
136
132
137
151
152
67
69
69
124
119
121
145
56
107
146
128
69
113
107
120
110
145
43
116
64
76
104
110
87
166
106
87
104
142
99
69
111
87
130
112
141
80
138
112
63
157
76
76
109
107
78
131
87
94
80
94
78
118
159
87
96
164
148
67
149
128
80
118
72
122
120
87
87
69
151
114
127
144
161
69
87
119
123
187
88
112
98
128
95
67
119
129
128
76
89
114
128
113
113
63
134
163
87
114
137
120
123
87
80
134
96
80
106
69
87
140
119
64
128
98
76
119
96
80
78
104
76
131
134
114
94
107
80
117
119
155
99
156
94
103
135
97
175
109
91
80
152
80
120
63
88
69
69
123
115
106
87
118
118
76
96
131
104
52
69
93
156
128
76
78
80
128
87
80
64
113
106
119
71
109
52
112
76
99
69
145
80
115
107
56
123
129
99
78
156
89
76
89
80
76
119
129
106
104
69
87
118
87
142
78
91
133
120
80
111
120
90
88
113
72
87
80
99
136
87
102
130
143
113
80
80
113
120
130
76
87
127
131
101
80
162
69
183
54
139
128
88
80
80
119
107
197
94
154
78
154
94
72
80
110
78
128
119
96
144
64
69
128
134
110
120
136
87
96
140
130
80
140
102
124
120
78
69
98
113
131
175
87
69
109
128
89
110
80
80
104
83
117
149
76
99
148
126
67
124
81
123
109
52
88
80
88
124
101
86
103
80
87
87
127
76
130
94
151
154
155
114
78
119
88
93
132
80
120
69
80
134
183
119
87
106
134
76
120
80
80
117
175
120
151
120
89
163
107
80
96
94
93
87
83
110
103
69
64
115
107
96
153
80
132
120
119
80
69
119
87
76
134
121
119
175
72
154
109
102
149
100
127
97
112
140
101
127
88
69
76
80
93
69
102
121
117
111
72
74
95
90
121
133
107
101
141
80
80
145
134
132
136
119
112
89
54
69
80
87
59
126
91
52
99
72
78
154
87
104
128
109
69
124
128
109
154
118
78
117
157
110
96
69
89
69
134
134
102
99
76
137
80
135
82
146
110
112
124
89
80
134
74
151
95
97
141
112
133
98
109
140
142
87
174
148
80
123
66
99
100
78
78
69
72
78
120
168
120
93
120
154
89
121
162
108
113
129
80
78
120
175
111
80
157
115
175
155
134
89
134
110
120
93
140
122
109
80
69
100
94
93
133
69
72
78
88
112
175
85
107
131
93
107
89
76
122
89
80
112
93
91
87
80
111
121
106
80
150
99
119
78
112
87
146
127
155
118
149
175
118
80
69
67
115
96
91
101
128
107
120
156
128
175
139
109
68
103
117
164
102
121
101
136
80
108
80
155
78
114
145
69
148
111
76
99
163
94
128
140
114
109
106
87
137
121
80
126
181
67
87
94
110
69
93
114
142
79
107
119
123
69
126
96
87
74
119
91
133
69
154
156
145
80
80
142
112
151
175
143
76
98
141
96
85
80
60
137
87
83
155
119
80
107
138
123
87
136
156
175
89
87
163
66
83
140
140
132
106
76
164
154
130
119
155
145
140
96
154
136
76
80
80
106
76
107
136
165
87
128
156
93
164
88
56
79
64
120
91
160
138
87
120
94
93
117
94
118
155
94
174
116
122
144
119
113
69
107
131
101
129
87
122
94
140
78
157
76
132
144
100
80
88
69
67
106
87
76
119
101
128
143
64
163
128
80
54
76
112
114
88
162
83
121
54
121
74
109
104
117
174
88
121
109
163
121
131
83
109
175
103
140
141
110
67
163
197
54
98
125
78
117
87
69
104
125
116
89
120
140
80
106
128
69
80
113
94
93
140
120
146
80
85
140
146
122
128
80
80
80
96
99
78
151
80
112
76
69
80
56
142
117
69
83
159
111
80
80
87
197
87
151
122
88
131
99
107
121
138
74
104
133
197
111
100
109
146
123
95
52
87
130
96
104
69
109
209
153
76
107
69
144
175
101
156
88
144
110
128
131
134
100
76
197
138
72
99
133
101
118
107
76
125
54
134
143
120
128
107
142
80
136
160
96
110
134
52
175
106
106
102
116
69
108
59
109
80
130
120
107
87
78
118
99
150
104
99
69
74
78
105
101
78
80
95
87
76
121
80
66
103
78
78
117
106
114
112
109
151
151
116
155
175
56
119
124
90
68
104
136
83
145
120
80
93
99
110
99
119
54
76
87
100
113
154
89
80
106
78
128
80
128
80
87
122
76
114
96
85
69
110
76
120
58
91
118
111
93
54
87
78
128
69
119
111
107
104
99
69
80
85
118
103
96
99
134
76
131
120
76
89
133
132
119
87
104
132
142
119
106
123
94
114
96
69
82
88
98
172
160
97
80
89
80
113
175
175
99
154
143
99
112
69
107
85
117
76
78
43
154
118
78
76
72
128
87
119
133
76
128
119
87
107
119
80
69
56
80
164
83
119
93
74
125
104
72
147
89
99
119
80
96
102
80
114
74
146
80
76
94
117
104
69
120
128
73
99
114
80
69
80
87
76
92
114
129
161
119
113
151
107
110
80
120
78
63
150
129
131
74
87
125
126
91
87
89
110
119
124
85
137
99
76
145
131
89
113
80
130
136
127
125
88
91
85
89
87
52
166
120
127
133
128
69
164
80
87
106
99
102
151
99
131
69
124
136
116
175
148
118
72
80
104
189
117
89
69
89
112
128
197
93
73
148
93
119
106
197
69
100
134
155
78
118
175
112
76
80
149
94
120
69
117
136
80
107
128
115
76
63
119
52
76
150
94
87
156
119
116
154
80
91
87
88
72
72
109
175
122
96
145
164
110
113
119
107
98
164
119
124
148
112
76
142
117
96
155
141
148
155
134
80
149
128
160
69
80
95
115
78
93
146
103
104
175
119
89
104
88
111
175
110
133
107
173
93
133
146
127
154
118
104
116
118
80
78
145
69
106
120
114
109
90
93
69
134
118
78
96
87
126
80
119
133
114
91
94
80
201
119
76
106
100
123
155
112
80
85
117
124
76
92
118
80
101
208
122
110
87
80
110
64
197
105
111
78
90
100
115
78
140
120
80
80
109
121
155
69
119
151
75
126
120
96
89
112
80
114
129
78
106
117
134
80
101
96
78
163
146
110
80
78
80
101
78
134
76
122
181
154
119
154
155
134
147
197
110
98
67
120
110
155
127
142
128
99
80
107
97
183
87
99
101
124
201
138
94
126
91
109
91
156
175
120
80
68
69
134
106
74
145
101
69
154
87
110
132
82
142
78
123
175
127
126
98
107
140
80
100
107
118
114
107
88
69
119
69
136
175
146
116
140
87
129
136
89
101
115
96
80
90
122
107
141
175
144
119
114
119
94
88
96
102
143
163
78
80
94
99
89
124
73
107
131
109
115
155
83
109
128
99
87
69
112
94
175
113
119
92
69
78
102
87
110
87
107
183
120
97
136
95
152
131
80
120
80
104
84
175
83
107
94
121
100
110
89
89
71
104
113
93
153
120
110
120
145
185
130
78
80
100
145
114
87
96
80
145
130
131
80
79
99
80
56
136
104
88
120
87
128
120
112
120
76
78
119
130
96
115
91
89
117
94
151
115
175
72
83
54
154
90
137
134
69
100
125
154
52
140
80
80
80
89
87
136
76
78
87
109
120
103
80
78
148
99
94
115
139
80
80
90
88
97
115
151
80
72
69
134
131
98
72
54
56
76
80
58
96
94
137
76
176
145
119
148
109
151
99
78
74
69
119
80
181
128
115
100
119
69
74
89
109
91
127
119
88
119
156
43
118
106
110
122
116
87
76
140
87
109
121
131
131
151
143
137
119
73
183
136
87
122
128
89
119
83
109
163
154
69
64
120
121
136
80
87
137
124
90
136
99
104
91
80
141
87
120
136
112
76
117
72
106
154
119
80
97
175
88
114
133
197
114
93
175
175
165
107
76
54
134
175
60
148
87
77
110
142
100
89
134
128
88
110
91
121
80
80
76
104
86
119
83
99
83
151
99
80
80
98
128
99
69
109
135
145
80
93
87
69
78
104
52
124
89
80
106
86
60
151
76
110
144
128
127
76
104
120
94
117
80
74
69
156
114
119
155
113
185
80
120
91
69
119
93
80
78
99
69
52
78
156
136
74
120
69
99
80
121
67
80
72
146
93
97
88
89
119
112
146
117
69
109
155
96
91
154
166
119
89
128
107
87
113
91
131
93
110
80
128
76
126
131
134
96
113
87
72
72
134
128
101
69
107
78
117
133
119
116
102
119
110
79
69
87
137
107
69
113
136
121
120
80
76
130
147
69
76
161
101
88
78
74
145
136
75
127
160
78
139
78
78
96
154
78
121
99
64
117
156
76
145
121
112
136
80
111
164
79
134
136
91
122
103
101
69
99
112
164
96
54
107
109
80
104
136
78
80
120
66
80
89
107
80
80
95
106
130
114
79
80
111
114
155
159
134
54
71
131
115
146
123
104
99
78
155
52
109
78
150
127
95
145
80
104
80
106
97
80
126
97
58
128
121
74
95
164
120
88
107
123
141
85
117
95
120
107
76
93
110
109
80
119
125
143
136
130
121
107
118
93
69
125
88
138
128
80
169
154
110
140
140
169
117
165
69
80
89
72
137
137
131
129
99
121
78
91
153
107
87
90
120
121
111
120
146
99
99
96
111
93
93
88
101
80
137
109
128
129
88
69
164
109
78
106
93
155
80
87
109
64
67
93
103
140
72
101
87
116
88
104
102
110
69
118
89
89
69
129
80
154
76
87
145
107
101
88
134
99
172
109
69
98
132
69
69
102
87
87
87
104
107
130
104
138
154
52
140
87
80
87
106
80
176
89
125
136
69
131
120
87
80
76
157
146
90
80
163
156
111
138
69
114
93
74
54
134
103
87
120
111
107
54
80
111
99
128
122
96
93
78
151
83
121
104
111
120
163
78
104
78
129
128
87
98
101
187
163
78
104
134
122
131
175
80
104
161
69
109
101
91
111
108
83
104
134
115
66
96
154
110
85
96
138
134
80
80
101
122
78
172
91
117
130
118
156
127
59
160
99
107
118
88
118
120
102
107
87
128
99
116
113
80
96
131
87
69
93
125
121
87
80
93
54
107
100
88
69
133
80
175
159
87
96
83
131
163
80
111
117
129
91
131
69
144
109
112
110
134
119
113
175
100
119
93
149
69
78
98
76
93
128
69
113
102
120
94
92
107
175
121
69
175
119
164
130
134
113
122
107
106
113
87
80
91
93
69
157
89
121
154
95
136
119
101
80
99
130
128
94
164
75
87
101
99
97
102
144
148
83
69
175
85
69
128
131
107
164
56
76
80
69
76
89
137
117
121
106
76
81
122
132
78
111
96
99
135
120
72
69
96
123
112
123
150
87
175
76
156
127
128
106
121
134
78
88
156
146
99
140
118
174
154
151
69
142
80
136
59
120
89
80
151
126
154
94
120
136
101
101
175
87
113
99
131
96
69
89
128
94
120
183
112
149
164
80
140
107
96
80
109
80
131
175
151
175
92
175
87
75
122
102
80
165
80
127
95
80
119
119
78
138
110
80
117
124
98
138
94
110
80
69
111
105
132
110
150
175
104
107
107
99
128
132
121
107
80
91
69
133
80
164
120
80
136
155
93
85
111
174
155
159
69
98
128
99
93
113
119
58
87
128
109
106
114
54
121
131
100
107
69
140
106
80
132
78
123
76
87
154
144
163
107
78
80
91
89
69
115
108
130
107
112
100
131
99
69
117
89
93
121
90
127
98
125
107
112
156
78
142
113
140
99
137
102
142
119
119
121
93
119
175
89
78
77
143
99
136
69
72
156
83
89
93
69
117
98
104
153
80
147
114
113
110
80
67
111
100
131
90
99
78
154
116
171
123
85
134
80
166
80
93
175
80
75
69
94
106
69
122
119
114
87
81
96
125
117
80
85
66
137
113
156
131
138
69
141
80
110
110
126
133
80
92
69
110
92
100
78
80
101
119
111
156
128
80
113
76
94
80
197
156
152
99
112
119
117
54
54
119
100
69
78
128
137
69
133
80
80
123
144
113
80
142
78
88
104
80
109
96
148
69
78
131
96
116
120
78
119
80
115
87
197
154
52
100
123
117
107
100
106
127
80
154
154
112
116
93
107
89
125
80
128
80
120
126
78
114
120
149
138
104
132
95
120
104
76
90
111
98
87
69
99
87
82
102
76
132
80
107
54
87
160
100
104
107
110
99
107
136
80
151
106
134
76
119
156
76
127
128
101
138
76
159
87
69
74
174
102
87
110
74
117
99
120
80
96
83
156
112
155
128
101
85
105
113
121
137
69
136
112
87
56
67
111
197
68
84
149
145
87
112
94
89
124
114
78
91
98
76
100
121
78
121
110
121
128
104
87
128
89
69
105
80
118
138
78
104
78
72
120
113
106
153
80
78
78
87
107
106
80
151
113
80
80
104
69
80
111
107
94
78
54
87
80
122
138
98
69
153
69
117
137
96
139
118
98
69
76
109
154
168
120
124
110
152
69
110
91
78
108
163
129
69
85
110
107
80
156
80
101
136
123
127
106
100
76
115
151
88
76
175
147
52
158
94
87
133
85
80
72
131
69
96
125
69
88
143
96
119
151
76
113
148
102
81
90
99
96
87
128
106
76
120
90
69
106
109
112
96
102
96
114
110
109
80
96
119
112
80
80
109
120
117
154
107
80
80
128
163
104
136
106
112
93
89
145
62
77
88
120
145
80
122
143
133
117
148
166
120
136
101
69
161
140
69
76
175
120
102
100
113
120
102
175
146
136
80
64
80
80
166
76
106
80
94
99
78
109
107
85
80
76
56
117
52
118
106
120
131
87
78
142
87
69
72
176
104
89
101
121
80
72
88
99
80
120
175
82
124
109
73
91
76
120
134
84
78
107
92
142
117
129
128
75
83
107
87
93
126
87
52
80
94
80
109
107
136
109
175
100
85
119
111
130
111
113
126
124
100
197
89
154
76
165
131
155
115
157
80
80
125
80
70
141
78
175
78
101
114
110
79
95
69
94
93
80
154
69
103
113
107
83
145
111
87
143
111
142
102
108
76
112
136
89
76
88
69
111
175
118
148
93
69
152
88
146
80
92
147
107
142
121
85
151
110
96
175
112
126
87
120
108
74
127
87
110
77
88
80
112
87
91
91
94
161
109
72
93
87
130
96
89
99
104
131
78
88
80
134
121
52
89
144
74
80
120
87
175
69
146
100
127
80
122
201
118
85
71
151
101
92
69
69
157
76
119
78
89
78
71
87
101
109
74
76
112
100
134
89
119
154
52
103
140
89
117
131
99
88
52
76
102
115
88
69
125
76
110
125
110
96
66
121
72
118
101
75
76
75
117
80
78
78
154
69
148
93
127
128
101
88
115
128
123
69
126
87
74
128
141
80
113
88
76
76
103
154
152
104
72
99
113
118
96
54
64
140
156
107
127
60
131
155
148
160
126
134
147
54
137
72
72
80
175
102
145
122
176
76
69
82
87
132
102
80
99
148
120
78
107
118
90
100
69
85
80
134
137
78
75
140
96
98
54
131
69
115
107
94
87
113
140
69
119
94
126
94
151
69
104
117
113
99
98
80
120
122
76
109
111
80
87
104
89
80
69
99
120
69
89
76
129
128
122
80
100
135
80
76
90
79
72
154
69
123
78
175
69
131
154
145
87
133
80
95
175
175
116
80
123
136
100
103
106
175
89
110
130
71
113
87
90
120
109
76
91
80
56
110
154
111
82
76
155
87
128
80
80
69
93
141
80
80
128
174
120
80
56
118
117
55
117
175
109
158
72
122
78
127
67
128
128
133
119
122
66
101
69
106
97
69
93
137
129
110
105
131
118
119
101
69
69
197
80
146
56
134
99
111
124
69
60
119
107
87
134
119
80
79
87
87
72
80
118
99
85
104
125
89
137
111
121
69
132
127
113
116
71
89
89
78
113
104
100
90
76
90
83
153
94
76
162
151
123
142
131
76
144
123
119
110
163
94
91
102
154
78
78
120
80
120
116
74
80
197
94
128
80
140
183
106
72
151
69
112
133
124
140
113
69
156
69
110
73
69
118
96
94
163
69
175
80
98
82
175
127
80
126
92
89
128
107
175
56
147
69
80
111
85
151
145
111
69
66
99
120
120
127
112
78
83
76
78
102
132
80
102
124
123
119
108
76
140
69
120
69
156
88
96
127
197
93
151
112
154
119
78
136
80
110
68
56
123
80
69
78
107
124
132
99
151
69
72
129
94
76
175
80
96
43
69
199
197
175
76
78
106
80
154
128
94
134
89
87
122
78
87
87
121
104
78
87
113
80
107
78
76
54
111
82
85
109
87
109
96
120
80
69
100
154
80
119
87
89
128
80
147
103
137
126
128
111
88
116
163
151
104
147
99
154
69
87
131
118
78
74
205
99
134
120
145
89
69
140
107
115
76
107
108
80
80
80
76
110
99
142
112
107
131
88
120
155
133
89
88
76
69
126
125
69
78
162
111
75
120
123
119
119
120
60
52
146
88
88
66
138
67
120
128
82
134
87
72
78
120
120
141
94
107
78
121
82
80
87
104
107
120
99
134
80
175
119
111
134
114
80
154
175
80
143
115
115
140
148
69
120
80
136
94
52
104
120
89
101
72
74
175
118
124
99
104
103
144
84
52
128
126
76
78
128
88
139
87
119
74
113
56
110
144
103
72
145
78
80
121
78
128
148
154
110
88
80
183
95
87
110
113
126
121
99
119
148
119
120
72
80
138
101
100
87
128
128
108
76
136
74
104
143
128
107
103
69
110
107
113
69
87
131
119
60
115
119
107
72
110
80
52
89
115
76
113
87
114
91
78
92
126
69
87
94
113
91
123
80
89
145
134
118
130
80
93
69
113
80
130
76
147
122
154
69
78
80
69
115
151
120
175
80
143
87
78
69
93
118
131
104
111
80
76
145
119
69
128
87
101
80
76
109
125
69
80
67
111
91
110
119
109
95
69
96
117
99
80
78
111
88
169
59
128
110
89
69
109
197
54
119
76
69
131
94
128
78
107
120
123
87
89
123
72
104
104
80
96
88
91
130
76
80
109
119
93
148
117
73
120
120
122
117
107
128
80
87
117
112
76
95
121
90
83
76
89
97
127
69
80
113
120
134
141
69
112
137
131
113
80
80
122
119
124
78
69
87
85
76
78
99
147
100
154
93
91
120
54
88
69
140
107
175
80
102
69
121
52
154
119
80
132
144
89
69
72
103
111
69
99
142
54
119
111
72
127
133
110
134
93
80
69
80
185
117
112
91
85
95
60
134
123
94
96
69
199
159
96
148
120
89
130
96
93
76
117
119
79
120
131
123
93
101
119
110
126
128
163
88
131
104
128
154
126
123
119
128
101
128
87
80
100
83
85
118
98
101
152
156
138
75
96
107
100
76
96
78
110
80
109
199
76
83
102
78
80
134
127
88
131
87
107
166
78
113
134
91
80
76
119
102
131
119
88
151
69
108
164
52
132
80
99
104
110
129
123
72
110
74
107
80
104
147
128
80
89
120
109
87
102
69
76
120
151
74
69
151
103
96
129
134
69
80
99
93
90
134
134
134
88
106
79
74
138
181
69
69
80
101
88
112
137
80
69
113
80
74
76
118
107
120
175
80
80
175
76
73
78
99
94
80
78
80
124
80
148
96
102
78
118
104
80
110
69
99
156
80
107
128
80
96
137
134
112
109
97
74
156
123
109
87
120
43
119
127
81
94
197
119
116
94
91
104
87
88
124
87
156
143
80
111
156
128
135
126
107
107
110
127
164
107
100
175
109
94
52
131
175
88
74
87
80
63
104
87
76
110
93
69
140
87
87
107
148
113
56
110
102
151
99
123
100
72
93
95
143
120
90
94
69
119
43
80
80
119
78
92
76
80
63
113
132
107
83
137
93
119
87
104
100
78
74
114
113
104
87
122
91
112
80
78
155
87
91
76
80
147
80
131
78
175
52
104
87
80
156
87
132
76
69
76
69
87
140
140
137
121
67
122
80
69
120
112
84
175
91
85
111
119
136
96
80
109
80
144
136
102
133
112
112
80
52
85
87
134
111
78
86
100
80
78
96
93
94
99
146
175
110
93
92
119
75
69
199
140
89
113
117
91
87
165
93
80
88
80
76
87
121
69
99
119
112
133
197
93
136
88
140
134
122
152
128
110
104
119
85
123
99
140
80
129
134
154
87
160
130
98
76
137
93
76
87
149
150
137
94
102
99
119
94
131
147
76
131
78
69
52
84
120
164
107
131
102
74
73
111
80
136
74
120
72
112
78
109
114
80
155
123
133
69
121
154
76
87
127
69
140
134
80
120
163
144
148
80
93
80
121
113
91
54
58
123
80
147
131
120
163
120
154
74
132
121
117
102
69
108
69
88
117
86
69
69
89
197
109
124
80
100
80
69
105
156
78
101
80
143
118
78
175
69
109
80
128
90
92
120
94
99
82
78
131
111
155
117
111
144
154
85
87
127
99
119
78
107
140
87
128
128
94
80
69
88
106
148
78
67
69
80
88
134
121
87
76
76
80
131
83
69
132
119
80
117
115
111
52
71
125
139
104
98
88
80
113
63
160
78
99
127
87
67
175
175
96
76
85
122
120
92
92
96
118
78
69
76
124
121
74
76
124
174
87
78
92
78
80
155
112
90
76
175
145
138
110
115
146
98
114
174
155
146
127
80
121
85
136
78
155
87
80
112
99
100
126
72
88
118
78
106
111
121
169
151
111
103
104
94
117
74
91
77
101
82
89
78
76
88
119
76
78
128
89
80
80
80
112
89
140
87
115
136
80
87
73
118
108
78
109
80
107
120
140
100
154
69
99
117
87
117
137
122
78
110
80
148
128
87
100
175
156
78
69
118
114
87
115
122
201
96
76
93
69
87
80
119
119
92
155
69
94
80
113
124
155
94
87
160
120
78
92
88
80
90
80
125
134
124
99
126
87
78
96
92
78
136
78
54
89
122
69
95
89
120
87
141
140
137
58
185
99
87
78
87
163
95
78
69
72
99
103
109
107
98
121
121
197
109
80
69
154
76
94
106
73
110
109
121
72
113
106
122
121
77
175
52
85
69
69
119
117
69
69
94
130
156
155
125
87
106
134
85
69
160
107
80
80
136
107
69
87
69
67
52
126
110
124
109
107
94
80
143
132
110
136
197
175
124
183
175
110
89
118
80
76
76
80
120
119
100
126
148
69
87
156
96
90
100
69
163
94
87
115
147
122
122
126
121
74
76
87
175
94
81
114
69
78
131
106
98
105
175
119
102
120
69
94
109
80
109
87
131
163
123
131
134
78
93
78
145
132
120
69
154
69
42
80
101
81
96
83
147
119
95
110
76
100
119
89
140
93
110
73
69
116
76
151
78
98
90
78
197
69
197
87
197
120
110
156
87
107
89
94
69
76
126
119
67
67
181
152
120
76
85
69
107
197
87
107
164
87
93
119
69
175
140
112
121
148
74
69
106
88
80
110
158
69
80
103
94
87
87
103
163
103
91
72
156
80
131
69
110
87
104
145
89
78
134
82
95
80
99
140
90
137
128
106
98
205
90
80
121
120
89
126
127
99
99
56
107
100
88
89
138
128
88
120
64
114
78
136
69
117
72
88
156
78
99
72
76
161
94
106
140
88
119
69
76
107
80
146
76
152
152
76
128
128
92
87
96
107
72
132
107
117
116
88
129
100
69
115
80
150
106
156
119
91
104
104
154
109
78
174
175
102
80
109
87
54
160
107
89
141
155
95
121
80
76
72
67
87
185
109
89
64
43
175
122
111
113
52
87
95
87
72
69
92
59
104
148
148
80
126
69
87
96
94
78
85
88
129
95
78
109
99
109
78
91
175
127
76
155
52
80
130
69
117
132
154
112
104
79
140
76
89
175
87
115
134
77
104
78
124
78
54
118
69
100
102
76
69
101
86
80
69
94
149
98
115
117
145
83
64
95
80
69
165
80
135
94
113
126
144
78
104
76
125
144
125
78
52
131
88
128
72
117
131
99
69
197
131
69
68
163
155
113
129
69
107
108
125
99
106
128
43
69
80
131
69
94
123
76
104
106
78
97
78
112
121
110
119
110
120
78
69
121
172
76
43
131
52
139
78
80
87
117
131
83
87
80
80
79
134
93
118
131
116
128
80
137
104
95
164
99
110
80
89
110
69
88
126
87
134
79
89
151
91
197
117
107
140
96
155
80
112
127
146
78
76
119
106
119
109
120
155
112
131
69
99
69
88
134
122
89
129
101
80
120
81
114
120
120
87
78
66
193
119
95
95
107
112
128
137
128
128
87
78
80
109
112
100
162
67
69
154
126
107
106
76
69
87
78
131
82
91
119
165
87
147
69
100
75
72
78
93
87
87
109
140
131
87
80
131
88
89
107
128
103
134
123
115
91
106
112
43
87
127
100
117
89
78
154
87
154
69
92
146
109
80
102
69
80
140
80
87
94
78
110
89
69
104
120
174
120
136
87
93
134
100
111
93
99
119
80
69
111
175
104
92
117
78
189
148
125
89
112
80
175
52
142
102
113
103
72
89
95
69
133
76
94
108
76
72
94
69
110
88
127
163
87
76
69
80
107
100
107
105
121
102
146
98
76
85
128
131
128
175
76
89
87
43
128
96
69
93
110
104
142
81
90
128
91
67
89
85
121
121
143
110
140
79
93
78
124
96
128
125
134
69
88
117
117
147
69
161
107
163
128
136
151
175
80
76
87
76
112
89
69
76
134
100
128
157
117
80
135
94
102
72
163
72
118
69
90
107
83
140
107
197
88
95
106
157
109
92
118
154
114
80
109
175
76
121
89
96
116
131
88
104
95
95
72
88
104
174
72
150
104
124
117
78
87
94
115
87
52
101
104
106
78
101
102
87
80
74
178
103
91
69
181
78
89
80
104
111
133
119
148
87
87
87
104
152
136
110
69
109
80
80
153
127
140
103
69
69
106
134
80
74
101
80
151
113
111
69
93
121
87
133
87
81
127
72
155
118
94
120
117
80
120
153
181
116
106
134
96
93
87
67
80
109
99
89
175
114
80
104
101
94
137
111
128
75
109
117
115
103
88
67
76
115
78
112
91
109
104
114
136
121
80
87
110
134
114
137
139
120
98
69
122
76
80
102
133
104
101
85
94
137
85
120
80
175
80
121
120
113
115
78
80
78
138
120
99
100
91
109
72
95
103
104
164
131
87
80
76
114
125
100
119
128
80
120
92
134
107
69
154
72
130
106
87
72
140
103
107
123
163
80
87
100
175
181
69
120
112
201
69
88
175
80
80
136
76
118
132
115
89
109
119
117
80
140
131
109
94
152
175
97
136
99
155
87
145
130
110
113
78
82
156
80
80
197
137
169
154
99
78
95
96
111
101
78
140
80
88
78
110
78
156
110
99
74
137
134
69
134
136
79
107
112
69
85
78
121
99
154
69
120
119
150
125
72
76
102
147
77
72
101
140
87
80
96
121
151
136
153
69
78
110
74
102
85
127
119
94
99
87
87
115
140
186
102
80
80
129
120
97
69
94
136
104
93
110
107
88
119
115
74
163
175
88
72
117
197
125
119
80
77
101
145
119
107
107
154
114
123
175
113
107
83
120
76
72
119
119
109
115
80
106
78
94
69
97
69
175
80
99
119
87
80
67
43
94
129
129
117
80
69
85
131
69
119
106
85
99
154
133
78
119
111
79
156
132
72
80
136
156
52
175
120
69
136
122
80
75
88
145
134
80
156
87
78
101
145
120
89
69
121
80
119
126
78
134
101
113
102
106
128
147
76
128
132
78
79
119
101
52
88
78
80
175
154
109
112
140
156
107
116
69
80
88
89
102
131
110
78
83
74
143
80
79
154
118
69
128
80
145
151
109
109
113
78
117
128
89
130
87
119
80
99
131
99
87
87
80
177
73
80
113
94
142
121
83
106
100
89
122
146
75
121
80
156
83
111
163
100
160
80
93
93
112
87
80
123
120
111
117
131
56
110
120
117
154
119
134
78
113
66
80
78
87
76
194
104
103
69
43
104
113
102
89
136
140
129
69
88
88
80
115
134
69
129
107
151
101
111
136
87
159
197
60
112
91
80
137
130
69
131
71
104
72
94
163
128
75
145
89
145
74
122
89
136
136
133
69
102
149
56
175
88
80
76
89
91
74
89
137
80
90
89
106
69
140
119
106
80
122
94
69
110
122
83
78
115
96
127
110
107
119
67
83
175
80
69
80
93
137
109
114
69
128
123
86
104
87
175
87
119
125
151
88
101
121
117
101
87
150
164
119
174
140
120
114
104
116
124
72
80
181
90
120
97
80
107
123
110
83
76
122
87
136
69
110
193
91
150
110
56
120
69
106
78
58
157
54
80
119
126
112
75
87
175
106
80
211
107
92
129
119
131
120
109
110
80
87
171
115
156
69
174
155
110
52
107
80
124
95
78
129
109
87
117
122
147
80
136
109
72
89
117
69
88
131
76
112
88
151
119
88
94
74
78
133
80
124
59
128
76
131
154
109
105
87
112
197
152
95
76
111
76
123
72
110
113
114
102
96
136
52
94
81
80
138
109
82
120
80
106
183
145
87
89
112
88
155
106
90
128
76
151
80
107
103
76
144
99
112
88
132
118
109
175
111
78
72
151
113
99
126
94
107
87
87
143
87
80
103
94
107
76
91
99
134
133
85
134
119
131
89
117
113
80
118
143
136
148
117
88
109
134
120
151
156
104
112
69
104
101
144
112
93
134
103
87
110
87
80
69
128
74
72
125
75
90
112
85
147
145
78
175
119
119
145
119
89
112
80
151
88
91
98
78
111
175
120
128
76
69
159
80
109
91
87
67
80
92
87
148
88
99
91
147
155
118
80
87
123
69
107
107
154
99
156
99
80
175
133
98
148
80
154
80
163
99
119
123
134
115
80
110
136
148
66
91
69
155
102
100
100
88
111
119
119
114
80
70
67
80
74
87
88
69
69
89
59
151
93
91
131
158
88
110
91
110
69
140
113
80
67
113
80
158
89
106
140
80
91
76
187
59
134
87
127
111
93
114
95
113
78
119
151
119
78
130
85
127
133
69
87
87
110
109
148
100
69
105
137
87
80
107
81
107
72
72
87
104
94
87
111
87
90
69
123
106
104
74
111
148
87
76
83
100
110
87
117
80
174
128
156
154
69
80
94
88
112
122
120
156
134
119
114
76
83
124
82
87
72
97
120
93
131
106
108
130
96
151
69
163
54
78
129
110
54
128
155
118
120
102
136
87
112
145
117
89
90
69
76
80
80
87
99
76
104
114
123
69
87
106
80
72
95
72
78
164
95
118
160
152
142
126
142
78
71
80
113
91
88
87
91
69
146
78
69
87
116
162
120
91
68
117
100
120
78
100
118
66
87
82
103
155
118
80
80
136
80
80
80
72
126
104
149
93
103
140
163
80
132
94
98
76
87
125
155
145
87
90
119
87
131
69
112
137
72
114
143
74
112
156
78
154
80
76
176
148
175
113
96
94
135
101
127
156
119
80
69
154
102
132
89
101
156
69
96
154
101
119
201
125
80
111
80
131
118
197
69
100
112
125
56
140
154
124
88
107
74
69
87
163
141
128
82
69
110
101
133
78
80
119
121
76
132
107
120
107
80
83
104
93
76
69
56
130
131
107
89
76
80
113
80
66
140
109
69
80
184
87
175
175
112
119
80
78
119
163
87
69
144
80
72
114
80
145
117
119
107
80
52
106
145
69
69
85
129
102
115
160
101
78
72
89
79
163
119
141
76
154
92
124
76
104
110
80
80
94
80
147
120
104
106
119
94
78
96
93
100
163
136
96
174
76
145
52
80
128
87
80
80
123
118
119
112
94
107
154
109
140
119
107
89
58
88
171
80
104
154
183
71
80
175
110
134
69
145
159
93
87
69
154
91
76
118
103
110
104
80
130
77
87
151
114
79
69
119
125
95
94
100
136
74
69
96
120
69
96
175
163
136
102
128
93
100
79
120
93
78
87
96
110
84
175
106
127
116
112
88
88
80
106
174
177
119
127
87
131
136
67
130
97
104
127
152
69
89
80
130
94
140
97
174
93
122
59
131
111
87
104
109
134
78
69
93
102
197
109
119
80
91
156
102
118
58
137
80
166
115
69
56
115
112
80
107
90
94
107
54
87
137
139
101
96
134
153
118
87
117
80
89
95
127
80
69
69
87
80
80
107
155
76
88
93
101
119
78
74
73
88
131
124
117
87
183
109
112
118
128
69
128
113
109
114
72
117
127
88
69
110
121
104
102
82
78
175
94
107
130
54
69
100
144
88
94
120
78
87
78
141
113
128
80
89
101
103
78
69
119
102
69
128
76
151
88
104
128
144
110
93
107
89
69
101
80
80
90
90
119
157
105
69
69
104
128
76
105
68
154
88
79
154
114
82
80
113
89
80
43
148
89
94
113
80
143
99
123
90
175
107
124
156
104
69
99
113
52
72
133
76
109
136
163
69
154
69
134
96
94
109
138
154
115
154
118
124
73
80
69
85
134
107
138
80
52
151
136
69
88
119
114
80
111
79
154
87
78
80
121
99
86
72
156
104
156
80
80
69
106
107
87
155
131
107
127
80
138
78
87
175
128
112
52
119
85
76
83
106
78
76
91
88
112
164
119
78
80
91
69
78
156
134
129
120
152
89
96
111
81
88
127
80
93
104
77
126
96
125
121
88
89
128
131
69
84
104
107
97
153
93
146
87
69
98
159
112
113
120
87
67
113
54
142
104
175
99
69
91
88
117
128
127
99
90
120
57
123
117
80
119
69
140
69
119
78
59
96
80
80
123
109
113
69
128
112
130
106
89
119
99
80
83
107
110
87
78
89
104
116
155
87
134
103
98
101
106
91
89
199
89
69
109
99
120
80
137
136
177
74
74
89
78
110
80
69
100
94
160
107
107
54
88
99
80
93
76
175
149
104
80
79
109
78
129
88
101
107
88
78
120
89
76
109
165
80
69
118
94
117
106
152
135
80
87
87
103
136
119
128
140
69
178
106
147
89
109
101
69
76
67
154
134
114
69
78
77
74
109
136
126
85
78
80
156
159
99
109
85
87
87
87
87
108
89
136
76
69
136
90
99
87
112
120
132
120
85
113
109
69
118
52
146
134
119
100
93
78
201
110
114
129
80
157
140
209
80
140
89
87
145
80
110
78
52
80
78
128
98
80
76
164
119
78
78
131
126
69
125
120
89
138
175
119
117
69
93
104
124
91
126
107
136
78
99
140
109
88
143
111
155
156
175
76
113
104
118
127
69
136
88
82
119
108
74
114
69
80
60
72
175
90
118
88
121
80
72
87
107
129
175
120
109
87
123
80
113
137
101
69
76
112
120
80
136
156
80
108
64
112
88
129
80
155
136
146
109
99
124
101
88
101
131
94
69
76
88
80
88
99
152
127
143
78
160
175
89
154
92
119
155
122
104
80
119
147
144
80
91
69
143
76
100
74
131
104
160
76
120
69
120
140
96
128
154
128
100
87
95
91
150
100
71
98
87
129
80
117
78
128
80
118
72
112
129
119
107
88
102
121
80
75
87
99
125
106
87
115
199
69
83
125
87
89
94
85
104
106
87
121
128
80
121
80
151
88
144
76
88
156
80
74
117
101
87
108
154
155
69
112
59
104
78
72
82
107
120
140
197
145
164
107
119
159
117
147
69
134
154
78
59
69
119
99
80
145
69
67
88
106
130
72
188
110
69
107
88
119
122
154
115
78
93
175
129
80
112
106
131
72
110
88
77
155
111
107
104
151
131
69
156
69
134
80
111
121
132
106
80
88
119
140
85
87
136
124
80
128
57
76
75
88
112
80
107
146
136
151
90
93
134
87
119
101
117
121
113
128
131
80
131
174
69
113
85
131
154
80
83
115
111
152
94
136
100
114
69
78
117
126
151
69
102
113
72
137
103
107
159
89
87
74
76
133
87
78
143
57
154
104
76
109
151
88
90
128
91
87
80
106
114
64
80
69
91
69
209
85
108
112
78
91
127
145
82
80
79
107
78
197
185
85
117
138
121
118
154
109
121
109
146
99
96
149
110
78
159
69
199
101
96
104
114
100
74
131
107
96
86
116
88
80
94
88
80
110
88
167
69
154
163
100
88
83
100
130
88
174
113
104
78
80
74
172
119
145
67
94
109
95
80
76
112
131
101
111
140
136
106
163
96
113
134
80
156
80
80
80
118
121
88
119
91
123
94
75
106
176
115
80
104
89
66
110
83
183
121
146
120
89
103
117
110
80
128
101
109
119
152
76
106
111
99
125
76
95
79
87
90
80
100
69
78
104
69
155
154
197
152
87
89
111
94
165
103
90
80
92
89
132
102
88
136
87
43
72
78
119
161
131
111
99
109
110
107
90
89
78
69
117
99
89
111
99
80
107
82
80
87
123
112
116
112
78
80
78
142
121
96
197
87
158
78
109
131
121
152
144
106
154
136
94
80
89
92
106
128
174
113
114
80
133
66
67
126
114
175
87
104
130
87
120
109
98
114
69
175
113
112
96
76
78
134
93
74
80
113
102
134
119
69
120
157
87
78
175
89
98
122
52
76
88
106
118
80
156
151
175
107
72
131
72
69
151
145
111
143
175
80
175
126
78
69
128
114
111
87
151
119
95
143
104
91
127
85
155
109
76
69
151
92
88
128
119
69
88
156
71
118
119
161
76
131
126
87
43
121
126
118
71
145
112
75
87
109
101
96
98
69
120
181
94
126
76
72
109
156
175
85
80
106
88
92
121
151
144
87
123
88
133
80
95
125
96
155
151
120
117
135
144
88
69
78
126
145
69
69
126
118
99
130
147
169
54
78
80
175
69
128
80
95
118
87
121
78
124
74
106
126
201
104
88
122
59
165
120
76
69
89
76
134
91
80
117
79
94
106
107
175
175
94
120
157
78
154
112
107
94
79
154
106
91
104
148
69
80
144
106
69
96
121
175
76
147
80
144
107
112
89
79
113
118
112
114
118
78
88
107
106
133
85
99
109
128
120
109
88
99
113
87
128
69
112
72
74
134
126
74
80
60
80
104
151
112
128
121
124
78
151
117
112
122
154
87
145
99
100
103
123
76
109
154
94
130
110
139
69
149
137
87
181
88
90
112
88
102
131
134
140
79
87
102
54
123
107
136
75
62
80
122
106
76
80
174
128
80
102
69
78
89
69
110
69
116
96
88
160
91
69
154
96
94
91
127
69
114
124
100
140
126
121
113
80
104
81
81
85
110
137
58
88
143
69
107
102
87
111
80
87
113
119
119
78
69
154
76
106
80
100
106
87
109
175
87
126
113
89
80
88
137
122
131
115
101
146
123
154
110
120
128
155
72
84
128
140
99
94
90
120
76
82
151
92
87
119
140
52
80
102
88
87
154
154
76
131
121
96
149
140
120
101
89
209
69
121
102
155
119
119
109
99
92
121
118
69
69
78
87
119
69
127
89
74
149
155
80
93
117
69
142
109
86
113
114
75
148
72
93
78
94
87
69
149
165
154
129
95
99
95
79
132
69
136
87
87
69
119
144
95
87
115
113
136
128
69
151
128
94
107
134
110
121
69
80
120
80
93
88
155
107
109
140
115
187
96
104
99
121
89
72
110
76
120
67
80
183
128
156
69
93
93
111
148
110
106
197
175
80
137
158
128
76
121
102
120
80
112
83
80
164
95
127
104
156
104
163
132
134
99
164
80
83
80
87
172
87
104
174
76
54
123
113
112
80
99
124
104
73
121
109
133
131
119
95
151
119
80
76
80
74
95
83
169
128
141
128
117
106
175
88
69
107
146
110
80
145
140
87
102
72
119
69
88
76
132
130
106
126
154
69
135
80
88
80
130
80
175
126
87
130
100
69
72
52
169
93
80
96
69
175
116
92
109
116
129
85
76
76
113
113
80
106
102
69
175
104
115
80
99
175
92
106
142
136
133
128
80
72
87
72
128
124
99
68
103
106
130
76
93
136
80
138
131
69
88
104
87
80
85
121
119
102
115
175
87
119
113
175
169
80
151
87
72
107
92
74
146
175
78
112
95
120
80
56
87
131
80
117
69
106
120
80
54
112
146
80
78
89
112
87
80
146
117
80
107
91
146
101
91
106
71
134
88
58
107
80
58
43
72
119
165
113
76
175
80
119
100
69
109
85
113
88
76
174
117
94
126
80
122
69
76
126
69
154
72
69
76
87
78
76
104
142
166
143
69
140
93
143
121
69
110
120
52
87
154
175
149
80
80
205
129
155
175
128
120
80
107
87
74
69
121
128
93
130
146
104
94
129
99
80
96
99
104
95
81
119
96
104
76
124
126
80
85
80
131
109
101
119
134
99
130
76
78
136
197
69
69
131
93
111
69
93
89
93
72
94
112
110
109
115
99
124
140
134
89
113
131
131
124
110
78
69
124
136
107
82
96
87
120
126
69
134
120
113
134
76
112
110
80
71
176
80
107
107
113
76
80
137
95
132
52
120
110
93
140
80
112
100
66
197
128
91
145
113
94
121
175
69
109
69
69
114
54
80
121
109
131
76
106
78
140
69
129
80
89
154
185
120
110
102
78
87
85
74
96
155
115
87
104
174
120
115
120
56
137
119
120
197
80
119
80
156
175
135
87
80
118
80
133
107
119
197
80
139
134
115
99
102
96
85
140
93
106
146
69
153
124
87
108
127
107
181
121
103
151
78
87
69
201
120
119
107
96
76
80
83
105
76
121
88
154
76
56
79
146
126
111
164
119
118
160
91
89
133
111
120
160
134
102
88
80
175
134
119
131
113
119
99
175
145
132
69
119
94
104
110
78
83
80
148
66
121
80
101
113
118
96
197
78
176
69
162
80
145
69
89
140
87
94
122
130
110
140
88
101
100
69
120
108
96
109
106
91
162
121
101
160
88
175
56
87
145
101
143
87
80
106
181
64
123
111
120
175
163
119
102
131
120
52
90
131
154
160
76
102
118
103
85
72
112
83
106
157
89
115
94
94
93
109
142
100
134
119
76
93
128
88
94
87
165
117
94
54
127
98
112
106
119
69
107
69
87
151
119
156
113
115
71
163
88
110
76
151
154
112
137
106
74
101
103
80
146
106
97
122
69
83
80
109
110
76
137
140
128
143
69
154
131
106
102
71
117
93
91
69
120
88
131
80
138
76
88
201
74
112
113
96
154
120
119
121
80
103
78
72
59
151
150
78
79
88
85
69
88
155
96
80
112
91
69
101
134
80
137
80
89
89
154
122
80
106
96
114
128
129
78
126
175
106
72
163
79
99
76
138
109
87
98
134
94
94
64
143
87
131
109
131
94
154
130
69
87
119
54
54
128
143
78
134
114
113
69
80
121
85
154
122
113
108
144
119
110
118
80
94
127
120
78
76
155
107
140
89
150
69
89
74
88
136
96
89
69
69
152
130
104
54
93
117
110
69
80
80
106
94
80
129
131
74
78
76
89
121
134
93
130
119
119
128
69
109
105
78
137
80
84
63
80
133
93
66
148
78
100
99
76
69
113
69
163
80
80
151
175
99
154
123
128
80
97
88
106
136
94
163
80
150
120
121
78
156
119
104
128
80
120
110
89
80
131
69
114
111
155
97
99
125
119
82
56
84
152
82
80
121
99
72
155
80
72
128
91
78
79
80
82
142
110
76
87
120
140
156
119
80
80
93
110
100
109
120
75
109
89
146
123
119
93
111
166
120
131
76
149
156
197
96
121
139
87
119
115
130
76
121
101
156
114
104
119
199
107
76
69
109
69
69
137
131
124
76
157
145
69
85
89
119
74
132
74
110
122
88
119
89
72
172
80
74
166
80
101
94
90
110
128
76
88
175
102
80
102
120
131
162
80
110
101
134
80
128
126
78
99
138
136
155
107
107
121
120
69
107
88
87
109
120
89
96
154
88
154
134
119
107
92
80
89
80
131
102
154
107
75
113
87
87
107
89
109
95
89
96
72
98
127
80
121
89
123
110
127
123
155
120
69
87
80
89
106
80
109
89
80
149
78
89
155
111
106
67
124
128
114
88
74
106
131
96
76
99
67
85
115
127
78
113
133
130
87
119
175
69
80
106
69
72
106
69
83
123
131
101
113
109
109
109
107
88
112
80
140
131
76
78
87
104
154
80
76
128
125
88
107
67
76
177
76
67
120
85
76
69
148
80
58
140
104
72
128
80
175
101
89
118
119
80
107
128
76
123
126
80
93
69
156
120
78
78
67
136
134
80
175
128
88
103
63
146
175
76
174
107
133
103
91
74
128
113
131
69
89
76
164
74
108
117
119
163
133
110
122
95
131
140
81
160
118
139
134
117
153
87
103
107
134
145
43
99
110
119
94
85
80
89
76
87
94
78
96
119
106
140
137
102
90
78
120
87
120
136
98
120
88
154
113
99
89
160
74
148
82
87
151
80
96
87
80
197
128
163
95
107
125
119
141
143
104
87
156
80
80
154
147
94
120
80
80
80
151
85
128
52
76
101
104
175
131
127
134
154
80
89
120
143
118
107
69
69
102
151
80
91
79
149
93
78
126
122
87
87
113
175
78
120
94
130
89
136
121
78
163
109
74
121
59
72
175
137
109
114
151
92
101
175
119
87
95
75
95
134
80
164
78
156
87
71
69
122
76
151
134
154
148
69
128
98
136
80
120
76
120
143
120
94
119
109
121
87
109
116
87
88
154
124
98
101
117
107
147
120
145
80
102
74
60
185
155
88
80
122
119
88
85
69
110
64
113
80
80
69
80
153
102
128
118
89
80
91
125
80
136
98
76
78
107
121
112
78
121
142
109
69
81
80
123
144
76
155
110
80
110
87
119
120
120
126
102
90
99
89
175
126
144
73
94
83
165
163
88
87
136
103
121
80
115
75
57
165
110
114
154
152
140
78
120
120
106
91
80
88
92
123
96
72
154
52
78
122
129
136
80
134
109
103
98
94
120
99
103
121
197
104
109
109
80
100
116
69
119
113
121
155
99
78
80
137
122
120
99
80
98
96
69
113
74
148
131
112
110
153
106
144
76
102
160
80
114
95
131
143
104
78
80
110
76
89
138
119
97
153
87
87
80
69
94
112
110
80
80
80
93
78
76
80
122
78
87
69
120
110
140
78
123
69
99
104
78
87
119
102
113
80
69
102
109
78
72
93
174
117
136
119
69
80
87
78
78
121
69
151
89
132
197
96
98
69
175
102
112
109
95
75
87
80
101
119
140
136
80
153
118
145
132
94
69
121
97
143
128
110
92
67
125
76
86
80
76
92
99
82
56
119
111
113
106
131
148
117
102
119
118
140
87
69
136
120
129
80
107
134
94
109
127
88
93
147
109
106
197
163
88
160
107
105
99
156
103
80
107
99
80
106
54
106
88
78
80
107
154
133
85
73
114
141
129
106
119
114
120
80
124
163
87
94
154
80
72
80
109
78
106
118
79
119
78
80
154
80
131
149
131
92
142
131
69
112
74
108
111
111
131
141
119
112
112
107
82
78
94
88
101
102
106
163
102
104
99
69
145
93
93
120
140
115
136
99
112
87
69
89
131
80
114
154
80
80
119
156
69
143
129
121
131
87
89
102
72
99
109
160
106
119
80
175
80
87
129
108
174
197
110
54
104
99
165
69
80
112
126
120
87
131
76
124
91
87
89
85
149
88
80
94
87
136
119
87
80
89
69
95
130
89
113
136
130
152
175
140
121
120
92
101
80
104
128
112
128
160
120
120
123
174
87
59
89
78
103
75
69
110
115
131
80
93
69
120
107
120
94
80
89
90
52
72
137
87
106
123
119
120
128
131
88
78
163
110
74
91
78
89
89
158
113
88
149
69
67
152
80
80
69
127
80
133
107
69
96
78
69
69
94
137
136
162
69
80
156
118
85
122
125
175
80
126
100
128
154
136
147
103
174
98
137
156
175
88
75
87
127
104
128
69
118
121
89
120
136
100
144
99
89
147
80
99
114
131
80
69
69
88
121
112
155
175
101
112
80
83
137
112
110
72
101
43
175
87
120
101
110
136
175
78
118
128
96
99
69
175
101
113
80
87
104
76
133
107
88
136
109
76
175
156
89
63
99
101
80
72
151
76
69
134
83
112
80
101
88
72
131
94
99
80
134
78
154
89
113
123
116
124
124
132
43
80
69
119
87
137
120
104
126
69
87
96
94
175
140
154
174
107
74
129
84
120
92
134
67
80
56
94
76
106
80
140
112
175
131
76
121
138
69
169
128
107
76
72
96
69
112
124
95
80
94
76
128
175
110
94
106
119
175
155
80
80
85
118
113
87
118
140
131
175
80
133
121
164
175
78
94
197
80
113
107
123
80
142
147
96
115
118
119
154
189
119
78
121
134
93
76
96
93
87
88
72
124
107
155
76
114
80
87
96
142
101
92
69
78
146
131
156
69
119
121
116
151
172
118
148
156
99
98
80
98
140
175
109
69
114
121
132
124
69
99
69
175
107
80
93
64
67
99
96
154
87
120
71
120
134
131
116
128
82
112
74
163
119
94
128
119
154
113
88
115
69
80
69
82
126
87
87
120
52
155
75
127
105
80
105
107
163
93
88
112
133
143
91
129
154
130
104
123
154
104
114
104
93
80
140
64
113
146
80
91
107
88
112
78
155
74
109
152
117
94
134
69
136
76
175
106
99
119
80
59
136
80
138
101
122
96
155
69
106
109
109
69
56
95
80
91
117
69
80
96
98
69
136
93
174
87
101
121
128
175
87
80
96
134
54
80
89
140
43
95
88
88
98
130
92
128
80
106
88
87
90
154
91
146
155
131
88
94
112
76
76
109
137
151
140
119
187
102
121
112
169
103
80
134
72
87
132
94
131
89
94
131
113
80
54
88
69
137
80
76
80
128
95
75
101
132
69
87
96
119
91
152
106
57
150
99
96
124
136
118
78
69
69
76
119
93
88
119
74
91
85
146
87
72
155
111
138
138
146
151
80
151
96
79
111
80
175
80
152
107
88
80
121
107
156
76
78
102
80
104
89
94
175
133
109
100
72
106
120
110
90
151
58
156
98
69
94
128
129
93
137
124
127
96
201
119
109
116
127
93
148
163
78
96
95
91
101
81
78
113
120
72
87
89
85
91
76
87
69
146
162
131
128
197
94
78
80
69
162
69
99
145
76
142
78
83
122
119
107
109
118
78
72
72
99
89
133
87
116
175
120
87
121
78
78
98
128
87
126
119
80
140
76
74
69
69
102
175
142
146
115
128
164
110
112
110
118
43
127
131
76
125
94
56
128
80
104
93
88
123
185
94
52
160
88
78
111
87
103
74
120
88
72
121
96
43
145
93
118
78
144
138
80
99
99
155
105
78
106
109
124
181
119
93
112
119
80
103
112
54
80
80
175
93
120
131
97
108
94
71
90
127
183
96
88
154
134
97
106
156
104
131
78
148
88
107
78
76
123
69
175
90
107
127
87
166
90
118
107
88
135
137
87
93
77
76
87
69
128
175
144
109
67
143
83
100
109
104
175
116
87
99
52
118
83
88
96
85
156
72
110
123
94
121
120
140
99
121
107
131
136
154
96
119
72
99
69
111
76
101
72
78
144
69
117
114
85
145
119
94
74
93
78
80
131
74
109
78
111
115
155
78
140
104
154
80
104
80
89
109
148
155
88
79
157
89
128
69
80
87
131
107
110
151
93
140
87
125
107
112
154
201
101
93
125
126
131
128
127
136
128
69
109
83
127
96
91
127
89
115
134
102
80
101
125
152
96
78
131
87
107
128
69
150
76
87
78
166
127
154
99
134
131
63
80
119
152
119
119
128
127
80
96
123
94
164
94
69
154
87
80
94
128
87
88
136
80
119
151
96
78
134
155
80
80
116
134
90
88
111
91
147
118
78
80
131
93
111
107
120
117
94
136
133
120
80
91
99
105
99
129
129
110
149
109
93
104
78
136
147
58
109
113
88
69
87
78
102
80
117
128
87
67
80
142
110
94
127
87
151
129
109
97
117
113
133
116
109
69
87
131
76
80
119
80
78
140
106
78
154
97
115
99
125
126
136
72
80
69
125
93
78
120
114
128
87
106
128
89
113
80
197
75
142
132
103
107
101
80
128
131
162
96
125
140
94
137
107
74
80
72
152
117
125
69
69
121
122
109
197
110
101
119
136
79
112
107
136
148
80
138
80
127
120
139
76
93
76
142
110
85
163
154
87
78
150
69
154
107
80
160
80
80
121
80
128
106
58
120
87
106
140
69
84
58
80
129
113
94
72
119
132
87
107
111
93
109
76
104
136
87
130
80
126
73
94
99
89
93
78
127
145
80
69
155
128
128
196
69
110
104
133
176
85
75
89
114
78
112
80
117
140
87
104
76
81
115
107
97
73
112
98
114
76
78
101
96
151
119
88
96
69
136
74
143
175
76
94
80
123
132
154
99
80
101
87
75
146
98
147
106
69
131
94
69
175
94
144
121
121
66
79
100
99
74
69
94
85
124
165
111
94
201
175
114
99
82
76
108
131
138
110
155
95
80
87
85
106
109
133
119
87
85
94
80
138
99
140
80
99
162
135
80
80
144
117
156
113
155
87
112
76
87
143
113
89
130
136
93
76
99
80
80
117
107
96
87
121
113
80
102
127
80
71
80
145
106
118
101
52
155
120
122
76
102
74
93
156
72
94
74
130
52
109
111
79
140
87
76
132
113
100
197
92
155
81
134
72
138
54
97
76
128
56
80
80
76
76
128
121
80
113
123
146
91
120
74
101
121
111
110
80
80
76
78
87
130
146
99
76
89
76
140
87
147
147
137
76
78
88
118
69
134
88
69
130
69
153
78
127
127
104
80
146
120
80
102
106
128
140
131
76
120
94
69
87
110
96
81
144
76
115
89
119
118
117
94
128
137
143
69
80
80
69
127
77
96
123
93
143
113
197
113
119
80
69
88
124
78
86
80
80
136
112
69
93
110
117
78
109
69
94
91
119
111
80
80
146
155
167
75
96
87
133
101
63
137
158
88
113
117
76
119
89
80
146
69
175
95
127
76
76
145
80
122
73
125
80
78
125
154
128
160
94
130
155
164
133
95
136
134
107
76
88
80
101
76
166
119
148
110
106
130
139
121
76
89
83
101
78
120
80
125
171
112
148
80
119
162
92
99
69
85
91
106
99
78
90
88
69
91
69
69
87
69
107
134
87
134
119
136
74
94
121
103
151
129
124
80
87
84
94
89
74
78
154
80
100
126
80
132
113
109
117
117
99
98
87
119
120
94
137
120
64
125
130
80
104
154
69
69
134
134
96
104
137
151
112
69
175
78
69
118
93
122
107
156
135
76
163
94
69
76
111
154
90
78
154
105
109
123
69
149
52
99
69
76
110
142
78
113
115
127
149
174
68
80
120
107
104
94
175
120
83
116
93
78
110
98
175
96
96
123
103
88
136
148
91
121
78
96
145
121
88
78
122
136
95
78
145
169
88
128
87
143
76
127
89
146
80
133
69
76
117
109
80
91
88
119
85
155
118
98
129
142
80
83
120
128
151
104
94
78
101
90
87
87
78
89
93
109
52
83
80
111
110
91
89
69
106
120
109
88
118
67
88
80
89
118
121
91
80
152
80
153
142
139
89
69
105
88
80
69
106
101
104
94
106
100
107
78
151
140
83
138
80
159
107
94
106
80
99
119
78
109
110
131
160
134
80
146
89
152
119
99
85
103
111
122
87
110
107
106
72
82
113
80
98
85
118
78
78
80
100
119
111
131
143
100
107
87
116
80
88
99
131
78
93
63
134
106
100
69
117
175
154
163
101
127
131
109
108
82
80
80
124
87
109
120
80
154
88
120
175
136
80
101
138
93
136
110
199
104
143
118
160
120
146
96
94
128
54
78
146
72
80
109
102
145
112
87
99
104
117
99
121
128
145
95
152
120
80
119
88
81
111
121
52
107
85
43
129
129
194
109
88
114
121
154
89
143
78
80
137
93
132
69
89
80
85
123
175
94
91
130
127
100
110
121
132
110
133
100
96
94
80
87
80
80
89
110
91
121
89
118
90
85
197
129
69
96
67
118
136
107
132
91
107
101
87
95
83
104
127
146
66
108
109
113
69
104
121
104
54
127
114
76
80
129
110
119
147
119
134
119
69
93
183
93
113
80
118
140
154
90
69
102
120
115
109
120
132
164
80
80
121
115
80
102
90
78
95
76
134
134
104
101
78
102
87
141
80
118
80
119
185
78
69
117
54
120
74
121
52
143
127
78
109
163
95
119
119
78
72
144
163
160
72
183
126
106
130
91
151
124
129
123
131
146
87
80
102
161
87
76
134
87
131
72
80
99
141
107
76
80
72
80
154
87
119
175
87
106
101
89
69
94
103
147
88
175
99
99
76
111
116
76
111
110
110
78
87
143
80
120
149
120
112
78
111
183
69
80
134
199
175
92
120
112
99
83
128
76
119
89
113
102
154
72
121
154
101
80
87
131
99
52
80
175
80
89
69
122
81
98
119
121
80
132
95
134
137
89
76
78
114
132
123
88
112
107
76
132
87
114
160
78
145
134
94
91
128
120
104
92
132
69
131
93
106
149
175
131
125
130
104
128
80
80
99
117
80
197
89
69
93
92
92
127
69
89
100
130
118
128
132
146
71
154
96
128
97
88
132
93
52
99
104
172
87
80
87
110
128
110
91
99
109
94
80
113
112
99
109
87
76
88
201
102
99
174
83
84
110
154
69
78
72
67
80
52
109
136
74
131
78
99
87
110
78
128
106
136
74
107
120
93
96
99
164
80
130
80
122
128
80
89
72
88
80
69
88
89
89
78
155
95
134
109
52
114
118
164
89
137
64
154
91
107
93
76
69
71
155
87
116
80
80
89
69
80
156
136
92
128
88
80
80
94
76
164
80
91
80
123
128
112
134
96
99
69
72
131
106
77
78
105
125
106
80
78
80
80
87
78
141
69
118
76
94
88
72
107
94
133
88
67
154
80
96
87
90
102
80
127
128
154
96
109
122
80
94
110
80
145
80
89
137
85
160
76
146
115
107
117
69
140
129
69
109
152
69
112
88
154
129
80
69
107
117
80
78
131
104
69
119
151
83
164
130
104
134
113
99
99
151
69
159
76
116
121
78
90
72
124
161
183
89
100
102
154
99
134
69
64
78
120
99
69
114
140
104
60
93
80
134
96
175
145
154
89
119
69
82
74
89
100
175
120
119
78
162
78
80
78
122
80
72
91
76
99
178
113
140
119
69
172
121
93
78
69
64
113
72
106
120
94
80
119
121
148
136
94
121
109
136
118
76
89
93
88
80
163
107
106
107
99
88
112
132
107
84
129
74
75
76
181
80
96
154
80
104
78
90
134
107
128
88
80
78
152
119
101
110
107
122
120
119
80
129
87
111
100
119
113
101
106
76
117
94
163
181
80
88
87
145
100
56
155
103
119
146
139
131
87
133
154
80
76
130
109
69
76
78
129
79
98
76
69
76
121
80
104
175
143
125
93
80
92
98
120
67
136
154
146
78
113
156
145
175
88
151
89
80
80
115
112
133
100
117
88
110
69
152
151
106
80
80
172
120
74
102
93
99
138
54
126
89
80
136
131
80
99
101
99
110
80
99
106
115
69
82
119
69
137
76
98
125
135
120
87
128
175
115
87
107
118
110
120
134
88
119
76
80
80
99
96
78
76
94
69
146
120
112
113
151
113
152
91
124
107
120
96
105
94
69
107
89
59
149
96
87
88
89
136
115
120
112
99
109
101
80
117
121
87
78
107
78
145
109
152
119
69
87
104
108
101
69
80
76
120
119
88
99
87
76
69
119
74
106
121
80
175
66
155
69
78
154
69
119
119
142
69
112
136
164
146
78
111
126
80
119
93
130
120
175
118
128
124
144
69
94
90
123
94
104
83
72
54
76
119
131
96
101
112
138
121
96
117
94
110
166
99
112
88
140
78
69
128
80
110
101
107
69
160
111
164
87
125
120
106
69
119
128
95
89
99
69
94
69
175
89
72
144
69
132
54
137
93
175
156
134
197
155
109
54
151
76
121
175
175
122
109
131
94
80
78
69
124
89
87
89
80
69
115
69
80
80
139
80
76
110
185
69
154
134
85
107
80
156
121
134
133
78
120
156
80
78
125
43
100
101
80
119
69
89
76
111
80
160
87
112
91
121
120
187
119
69
112
154
132
112
140
152
98
151
148
131
93
99
81
109
96
112
93
87
67
69
78
197
100
99
113
69
80
80
88
114
140
95
97
69
78
128
78
121
80
76
131
88
98
88
155
124
101
128
121
197
80
119
146
82
166
110
128
145
117
54
131
134
107
175
102
124
130
83
102
88
78
119
115
106
107
113
134
107
193
100
110
109
112
95
109
119
119
99
80
87
90
80
140
176
120
78
80
99
74
80
52
152
80
103
92
106
131
111
197
96
155
91
76
72
99
147
88
78
131
110
54
142
117
89
83
137
106
80
96
88
72
87
80
174
69
94
115
140
113
128
89
119
118
109
83
103
96
143
76
80
87
129
136
137
80
80
69
80
112
129
87
129
69
80
76
106
101
144
112
154
120
94
144
92
69
69
119
122
121
95
80
128
76
123
197
72
88
110
88
107
121
69
76
115
128
121
93
130
156
113
147
79
107
130
102
112
87
79
80
137
81
110
90
99
80
76
106
143
78
128
80
119
138
80
117
128
69
78
108
112
113
113
83
131
80
66
56
110
87
110
90
123
133
79
150
120
80
80
108
91
87
111
69
89
99
115
166
88
134
127
107
132
175
107
107
80
120
69
155
123
109
118
151
153
76
151
85
100
119
197
136
136
175
106
72
72
175
91
87
120
109
99
96
134
89
69
89
76
78
88
121
80
69
119
76
94
82
146
88
87
87
148
151
78
87
117
84
64
78
109
123
72
95
146
143
91
138
109
143
80
136
107
58
99
80
131
54
69
99
150
80
80
134
94
87
119
78
124
78
79
80
131
113
88
99
77
89
155
117
113
119
119
72
123
145
119
128
69
104
80
54
80
87
99
137
147
85
76
151
80
87
138
174
91
136
96
104
89
118
139
154
109
100
110
121
94
119
72
113
80
134
154
131
132
79
147
76
76
69
136
121
80
98
133
119
105
80
120
80
117
91
106
114
107
111
79
110
115
136
114
81
80
66
91
136
109
130
134
82
110
140
78
58
146
54
85
69
87
80
120
95
117
99
156
151
98
43
76
80
117
197
131
95
78
78
80
54
107
88
87
80
76
69
80
130
69
76
99
72
123
112
107
82
89
111
107
119
80
89
80
72
78
89
88
87
101
150
112
147
78
80
69
69
110
80
126
155
91
117
107
128
112
78
76
88
80
89
112
76
96
156
104
76
96
105
126
80
119
87
72
141
78
136
140
129
131
76
103
96
81
69
175
175
87
151
72
64
75
134
175
96
99
85
113
102
80
87
175
106
102
145
104
175
93
115
78
76
122
162
132
197
106
103
76
118
69
196
113
137
54
144
107
121
80
87
137
99
76
80
94
80
120
151
80
124
133
128
89
107
101
56
146
145
106
132
134
72
119
80
95
78
151
128
118
106
106
99
88
69
76
85
128
122
155
174
103
123
94
146
144
69
99
117
147
104
174
98
80
121
119
82
109
78
120
69
72
128
93
87
114
110
119
122
130
97
76
81
146
107
93
52
78
79
78
156
107
69
120
81
100
112
130
104
163
131
158
148
74
134
110
195
91
117
99
144
120
154
94
119
91
102
78
109
101
101
87
89
80
78
112
80
152
106
80
76
146
129
137
110
140
82
124
78
153
128
153
89
104
99
120
175
109
119
142
136
78
91
72
151
87
78
69
87
69
164
119
88
107
104
99
125
80
141
78
85
76
88
163
145
121
83
94
94
120
104
80
88
80
73
99
107
69
120
80
71
129
80
113
89
92
85
91
94
101
109
99
137
92
111
76
92
145
97
95
82
99
78
106
99
91
127
87
127
94
93
74
94
128
63
197
131
69
109
119
87
102
78
106
88
76
102
117
120
82
101
94
69
99
142
94
120
154
174
119
131
143
80
141
55
133
142
110
76
78
109
149
131
148
78
80
156
102
109
69
159
183
103
79
176
111
114
72
134
123
99
114
88
115
128
107
117
120
93
88
117
104
80
99
107
119
69
109
140
100
96
80
201
110
113
87
89
130
90
102
122
69
121
71
117
106
132
110
152
82
114
96
110
87
80
110
145
56
126
109
80
114
69
206
104
119
119
120
119
87
99
175
119
118
101
134
117
142
76
78
95
127
136
75
89
152
132
131
80
124
134
80
151
72
88
119
80
107
108
119
80
121
110
119
104
103
119
80
115
76
131
69
109
99
72
119
120
123
58
140
115
109
80
110
119
76
69
119
111
102
80
69
137
131
112
100
138
113
80
72
85
92
76
121
130
76
80
96
140
69
133
125
80
161
99
186
104
80
154
106
87
140
87
83
80
54
109
127
116
145
113
74
117
101
197
83
121
107
112
122
99
69
78
80
92
110
120
72
123
106
88
119
155
120
139
64
107
155
164
99
120
130
133
133
80
104
67
175
54
96
43
126
69
69
169
160
66
69
100
197
94
72
155
151
76
161
134
52
103
142
112
80
80
80
66
107
96
128
68
155
146
93
111
155
131
119
89
114
138
88
95
96
87
78
155
119
126
120
78
80
120
69
110
114
131
80
74
54
115
156
120
76
136
92
131
104
107
120
109
128
69
137
121
199
101
80
116
119
124
113
143
76
99
89
69
104
156
95
80
106
127
113
118
69
119
137
118
106
87
148
119
67
146
88
175
89
93
69
197
111
88
87
118
93
148
118
107
121
136
110
87
67
122
110
90
76
110
119
69
121
72
121
107
155
72
144
91
80
76
145
76
88
69
80
69
107
128
109
133
54
197
99
96
80
113
175
104
88
88
120
69
76
110
89
131
88
93
112
107
125
54
175
94
96
80
142
78
138
120
115
137
52
96
80
185
144
126
175
175
107
94
69
102
76
92
121
69
80
129
80
88
69
85
78
90
78
76
110
138
109
80
64
102
89
89
93
63
93
80
69
66
121
69
124
87
80
95
91
69
120
131
96
91
78
56
106
156
91
100
151
119
80
77
121
146
69
52
140
119
154
128
80
78
79
89
103
119
76
81
80
109
74
176
100
85
88
113
121
121
113
155
128
121
80
80
134
94
76
69
120
197
117
131
128
80
87
76
87
80
69
140
91
54
150
104
120
80
113
95
101
87
129
86
109
80
97
128
76
78
69
69
87
99
128
87
105
125
80
76
136
96
80
78
80
122
140
112
96
100
69
94
87
110
87
99
109
118
197
94
54
109
155
78
119
52
140
80
80
92
104
80
94
107
112
76
92
119
76
119
69
96
156
80
88
54
120
89
147
80
117
99
113
99
106
148
118
154
106
136
96
119
69
140
124
175
106
80
146
69
155
101
89
111
80
116
104
54
87
99
58
110
107
78
109
43
154
69
80
80
106
73
127
80
89
134
83
80
156
94
134
88
156
175
96
54
133
135
157
85
89
89
102
133
122
128
96
101
143
181
94
107
72
118
78
74
78
131
99
119
118
114
117
85
186
109
137
99
69
89
87
86
110
74
76
119
76
166
88
78
128
157
66
100
134
113
78
164
117
136
104
125
175
109
128
104
87
175
116
111
107
101
78
80
117
72
107
121
115
72
100
120
127
120
99
157
87
80
88
117
107
119
175
80
112
52
142
156
142
88
76
152
78
110
163
107
109
101
113
69
112
154
104
106
80
96
120
137
128
69
83
104
72
87
125
127
197
85
149
130
101
146
154
107
120
69
87
78
123
107
122
119
79
78
102
89
128
128
80
119
154
157
78
80
80
118
136
110
119
157
76
119
87
118
99
106
100
88
142
94
113
135
96
128
74
120
175
120
80
99
112
129
175
131
113
100
128
142
143
57
106
76
128
140
103
129
67
94
133
76
107
69
153
78
155
78
104
82
108
112
87
99
82
113
76
136
150
100
140
140
147
117
69
120
128
80
154
113
140
102
122
80
69
119
125
66
154
113
93
104
99
127
72
101
101
105
93
127
89
122
155
99
110
66
78
80
108
71
102
82
88
85
80
80
137
66
127
54
143
99
80
110
123
128
103
113
69
69
76
87
137
112
120
111
145
134
119
125
134
123
163
87
151
80
80
95
102
72
175
69
175
87
87
108
99
120
114
80
174
146
88
125
144
136
121
127
126
98
119
99
88
146
114
131
163
89
175
117
80
145
88
104
101
78
119
112
80
72
110
120
80
80
87
119
67
98
74
106
92
80
80
80
52
127
107
143
103
115
87
89
134
66
131
72
69
69
99
80
119
94
175
93
76
99
157
69
100
100
127
78
94
107
144
112
105
78
80
80
137
107
69
103
80
119
134
128
175
59
160
72
113
103
126
69
109
125
69
82
80
131
94
69
99
79
121
66
90
123
114
83
142
135
124
125
105
94
109
132
96
127
129
115
85
148
56
88
134
110
99
123
80
119
71
109
58
115
114
69
97
150
163
87
80
120
145
79
99
76
127
75
120
111
112
113
67
121
85
145
124
87
119
141
88
130
154
80
90
112
96
78
109
121
87
128
80
117
112
103
151
69
107
87
119
131
119
128
160
92
64
103
77
95
96
148
109
87
69
134
130
102
110
87
175
128
69
150
107
75
119
85
80
128
89
83
123
85
80
110
145
80
141
134
87
118
140
104
138
101
106
104
107
119
56
85
93
92
80
126
138
104
69
72
80
136
80
56
93
75
76
156
120
121
175
104
80
157
122
120
76
136
43
88
130
175
112
87
149
185
149
85
115
78
113
79
128
72
122
80
127
124
87
88
145
121
80
133
119
140
76
112
155
78
96
109
175
81
72
78
144
100
99
128
175
140
52
113
120
109
94
144
85
145
91
136
101
80
69
134
110
98
143
67
78
113
78
69
107
197
106
94
76
123
94
69
131
175
78
109
175
91
100
69
74
114
54
80
151
142
69
88
120
80
80
175
109
107
105
128
163
171
175
64
89
54
131
102
127
89
107
78
87
162
85
96
164
100
110
69
69
69
211
88
80
163
89
156
93
87
103
120
175
78
69
117
78
78
118
134
76
128
95
120
87
72
132
132
76
149
170
80
140
104
109
76
104
54
112
69
133
146
80
98
109
131
175
110
125
115
123
76
83
80
69
155
80
76
88
129
74
80
113
95
87
136
80
127
121
88
88
107
80
144
185
69
151
109
78
107
120
110
54
69
72
52
76
100
80
134
199
107
129
69
117
108
131
117
128
151
119
128
162
72
72
110
128
119
148
99
80
113
104
87
145
80
154
95
112
78
107
120
146
114
90
117
107
69
80
112
131
78
80
80
144
153
134
90
101
87
69
129
76
154
76
110
136
114
80
100
121
117
106
93
98
113
131
113
146
88
80
197
87
124
106
128
77
134
95
141
87
156
88
142
163
96
99
146
131
145
126
76
94
119
133
110
120
88
76
69
76
111
80
120
95
80
126
144
69
80
133
141
88
94
110
88
107
109
144
75
90
94
103
87
153
54
78
59
54
100
164
87
112
91
87
78
119
96
156
109
98
119
99
87
133
91
88
140
132
114
87
88
112
107
197
140
78
78
75
52
103
183
93
87
112
135
80
120
79
99
112
89
119
90
110
87
60
114
94
131
87
154
131
98
151
154
88
128
120
89
109
76
80
98
104
133
143
146
80
128
89
110
133
80
130
80
91
154
175
73
69
78
93
110
115
85
140
94
136
96
96
134
119
197
80
112
117
134
118
98
120
69
76
89
115
69
120
117
90
131
120
83
89
100
99
85
69
133
103
165
87
69
87
78
119
110
109
112
115
134
93
175
120
89
137
76
69
95
118
120
97
100
89
125
120
126
76
128
69
107
106
99
123
127
137
120
113
112
85
99
175
128
155
93
136
115
104
78
128
59
104
134
87
64
94
120
175
130
110
121
150
72
113
73
122
69
124
183
69
112
106
164
69
93
122
120
80
134
175
112
155
141
80
119
107
93
87
72
175
99
91
154
69
102
76
69
87
119
72
151
132
135
96
121
121
107
128
172
80
78
100
115
80
94
113
131
120
124
69
96
102
69
80
140
124
117
183
121
129
67
101
76
136
85
69
167
76
80
155
109
140
80
110
80
118
109
112
124
69
69
101
88
69
80
80
93
69
80
103
154
88
69
103
72
109
124
117
91
101
134
76
80
147
127
78
114
125
78
74
69
118
107
101
151
76
143
99
87
139
134
138
150
148
114
87
124
160
80
106
76
164
102
80
88
126
136
160
113
80
127
183
104
136
125
80
89
119
134
52
132
99
151
94
197
136
113
99
109
72
69
87
89
78
128
156
58
69
58
52
76
76
118
119
87
112
118
119
107
104
144
80
52
101
119
134
127
175
126
91
56
94
120
85
103
107
159
100
69
121
69
87
119
126
127
80
175
80
119
99
118
78
76
88
87
80
69
54
89
166
134
107
119
80
80
119
54
136
134
83
130
106
91
80
63
156
89
56
148
175
150
69
129
76
72
69
52
175
143
142
106
74
137
134
114
72
175
100
131
69
136
132
87
80
87
119
142
111
137
144
78
120
76
119
87
98
94
120
127
178
88
95
72
106
127
134
99
79
94
116
104
102
126
80
103
197
119
114
107
111
107
104
59
120
76
80
100
69
99
80
94
96
92
76
154
89
113
114
94
87
175
80
69
87
99
130
152
119
92
80
80
63
80
169
136
94
136
106
58
137
72
80
80
113
119
109
80
80
121
76
138
104
120
91
138
109
78
72
154
110
82
144
100
175
103
156
155
96
69
129
140
109
69
101
82
110
80
120
72
76
80
90
88
80
112
87
64
99
54
147
165
123
83
143
78
154
106
80
124
79
138
111
76
132
85
109
78
69
175
69
94
99
99
128
54
121
119
87
135
119
69
78
150
119
87
82
156
80
52
154
120
131
131
100
88
78
56
91
80
104
115
76
88
175
120
102
94
88
69
54
141
94
80
128
109
78
94
78
102
119
126
175
88
80
80
76
118
80
75
100
87
80
82
121
56
80
137
125
103
147
106
89
100
119
130
80
106
128
155
121
154
85
90
119
89
88
109
119
136
140
119
68
94
116
128
69
80
106
79
78
76
80
130
102
162
121
69
54
121
99
109
134
197
127
54
80
58
114
104
80
147
69
52
98
156
78
143
106
107
114
52
80
54
111
77
97
69
118
91
89
101
69
110
76
70
80
78
87
101
99
118
133
114
120
87
140
87
127
175
87
109
155
87
43
169
52
128
154
107
133
95
88
78
80
80
121
91
80
106
87
119
151
101
140
80
101
143
121
94
96
128
76
98
69
149
75
127
98
125
131
76
69
104
69
155
109
67
120
87
52
59
101
127
87
114
127
145
172
154
69
183
80
72
76
111
77
67
90
112
69
102
80
80
91
78
80
94
43
93
80
119
99
106
69
163
147
111
136
121
97
106
88
80
89
175
91
156
131
116
92
92
116
149
52
114
156
117
167
69
94
120
131
78
117
112
99
163
119
113
102
120
120
118
80
88
175
139
121
145
87
152
145
94
119
80
66
80
78
110
156
87
120
129
96
78
120
156
69
88
131
94
67
80
113
93
129
112
154
69
114
94
122
78
98
119
117
134
119
69
156
66
75
91
89
120
113
69
76
69
85
154
80
107
146
69
80
127
87
80
140
80
163
69
137
91
123
119
82
80
120
126
95
80
78
88
74
87
96
157
116
87
120
81
107
156
69
137
131
117
114
120
104
131
175
88
131
120
118
87
106
128
104
80
92
80
78
69
88
175
136
102
78
126
94
88
69
113
69
134
72
109
80
128
78
91
69
89
112
74
109
110
107
90
107
132
80
164
129
71
79
96
118
106
74
86
80
111
92
95
110
113
104
144
69
80
76
127
174
114
156
93
127
108
67
87
80
83
138
69
117
69
163
78
132
164
78
94
122
67
54
54
175
131
165
136
154
183
73
141
123
131
54
109
112
80
118
80
117
143
80
80
115
128
90
80
89
78
96
78
87
80
72
74
134
101
78
78
78
156
129
67
163
162
75
106
175
112
110
109
120
146
96
148
87
131
120
122
128
88
89
80
72
109
112
145
164
94
57
125
80
106
136
80
127
66
140
120
145
103
89
121
80
136
121
80
79
115
174
80
109
96
134
69
87
99
100
154
134
148
109
145
69
163
78
121
68
88
94
72
128
76
69
78
87
80
72
101
79
175
131
80
119
146
93
99
69
113
138
112
69
153
110
101
94
87
152
69
90
127
100
175
67
89
100
56
74
99
151
138
91
115
155
174
110
78
94
107
112
84
52
76
151
103
108
89
102
80
163
87
58
120
163
102
151
130
91
107
102
118
113
101
74
104
151
54
96
91
104
72
107
101
162
110
78
131
69
95
87
122
89
69
104
136
96
120
117
102
83
151
117
131
96
97
63
69
76
147
154
87
96
80
120
115
69
134
87
136
69
76
119
102
124
119
133
78
148
78
80
112
124
96
123
113
141
69
107
113
87
163
152
156
94
80
137
136
127
129
89
124
76
120
87
134
109
121
185
134
149
87
99
96
74
104
138
155
109
69
123
110
130
113
76
144
146
93
73
78
98
128
123
69
56
88
103
124
138
126
131
58
80
92
110
79
87
115
76
99
81
110
96
124
56
76
69
128
133
113
87
117
85
87
119
95
112
127
78
99
76
174
154
100
119
69
120
102
117
145
96
109
107
83
99
104
115
69
94
76
143
101
151
162
92
97
115
119
80
54
132
89
80
80
152
80
72
80
80
89
130
164
87
185
88
154
76
80
144
99
89
118
165
80
119
165
117
115
152
83
120
154
87
94
147
132
52
134
175
76
143
117
111
80
99
107
80
122
175
91
120
72
175
89
114
80
113
114
150
110
134
69
104
163
111
174
101
166
64
133
89
89
89
107
128
165
75
156
69
131
152
97
131
136
102
100
69
128
121
69
54
164
136
69
67
148
87
175
100
87
120
109
110
120
88
156
98
87
80
80
106
93
185
130
69
101
80
175
107
85
101
72
120
112
96
135
69
145
78
120
112
165
75
66
83
78
155
69
74
80
72
127
133
93
104
142
76
138
197
145
154
78
74
80
126
128
155
109
100
107
87
103
154
69
110
147
69
145
104
87
120
132
99
154
106
175
100
102
81
145
121
56
126
123
134
91
117
85
64
120
107
134
80
95
156
87
80
78
80
99
111
147
76
119
110
80
104
107
91
159
87
134
143
110
143
93
76
84
106
80
112
109
100
114
80
98
111
76
140
128
107
69
88
100
159
101
154
89
88
101
69
143
69
69
110
110
123
89
146
80
94
115
80
147
94
154
68
175
80
143
91
94
119
93
113
131
106
106
119
87
132
87
80
134
80
88
89
120
175
154
145
121
80
129
69
89
163
132
72
120
146
150
148
122
100
115
74
80
134
129
78
109
91
93
136
183
128
131
122
69
72
122
76
114
100
80
93
130
97
80
91
120
59
115
134
126
89
98
69
118
106
130
76
154
99
112
80
87
140
122
87
87
78
120
80
80
113
93
108
94
163
126
89
76
128
185
69
69
99
147
113
67
96
72
76
181
87
107
103
67
154
76
128
80
43
69
100
175
80
79
54
78
176
116
110
150
80
126
118
101
120
106
148
75
113
69
88
74
85
148
99
107
106
80
121
128
175
110
76
89
143
80
104
143
80
80
104
94
151
74
87
119
76
94
109
87
137
80
69
111
80
76
124
74
89
94
123
122
78
78
129
94
129
52
108
69
87
72
72
144
118
125
99
154
72
69
82
89
133
112
94
102
174
119
78
106
154
134
80
114
113
124
154
91
119
112
76
78
154
72
80
110
83
52
131
80
119
120
76
128
108
80
91
109
87
104
130
87
66
164
107
197
111
131
78
109
76
107
151
96
66
140
140
89
69
110
133
154
155
163
79
87
72
197
64
85
69
153
136
95
118
69
107
119
76
94
124
87
80
71
140
118
114
76
87
152
76
94
87
166
87
69
69
156
64
80
98
80
111
101
98
80
143
117
117
101
87
175
126
114
69
160
69
144
90
127
107
120
54
80
154
87
78
100
90
69
100
126
69
87
96
109
89
76
82
101
142
119
175
140
89
78
69
154
76
69
87
122
151
119
149
76
119
85
96
99
107
78
119
91
64
87
80
69
127
80
98
136
137
107
76
80
100
100
110
83
152
85
124
121
127
69
62
99
136
137
130
110
69
131
133
110
80
69
78
175
112
80
119
54
80
88
87
131
121
100
129
80
87
120
104
101
157
153
127
80
87
93
69
137
88
96
78
56
93
105
80
99
80
107
123
54
80
119
95
115
155
97
120
144
106
87
80
144
107
97
76
110
154
121
43
76
107
76
109
136
89
76
115
78
80
119
94
87
87
88
145
105
76
122
104
122
76
96
72
125
76
87
91
102
145
128
76
126
127
69
175
107
80
107
104
90
119
139
85
118
56
80
107
153
66
94
69
80
104
107
71
89
87
69
78
175
146
96
145
136
142
100
101
146
76
69
136
127
128
110
132
140
90
78
151
154
123
131
76
93
120
154
115
154
175
78
126
136
66
99
89
146
71
96
101
99
136
118
88
63
100
154
112
64
146
68
69
154
83
69
69
119
93
74
107
93
81
72
112
72
87
155
67
106
87
96
69
109
87
147
99
118
92
95
79
185
112
145
113
177
140
113
69
90
80
88
132
120
43
87
76
64
83
88
104
110
130
76
69
88
58
76
117
56
119
76
135
91
78
88
120
125
69
78
120
89
154
67
107
103
120
128
119
69
140
124
121
69
199
120
87
131
114
136
175
88
76
96
88
87
87
78
110
150
136
132
103
78
117
122
138
119
119
199
94
143
119
112
125
103
99
106
153
135
89
64
114
106
80
163
124
107
104
74
153
78
88
69
136
52
76
78
80
109
96
106
103
66
69
107
147
145
121
154
68
87
119
123
121
154
87
89
175
104
197
107
112
172
89
110
89
80
164
76
74
134
80
80
126
92
207
120
104
130
128
111
80
80
87
91
69
113
117
102
89
107
69
87
119
109
140
128
136
97
69
117
115
131
109
107
78
52
69
110
100
126
89
187
104
87
102
105
91
132
133
80
94
80
69
175
72
78
109
153
82
89
99
128
103
80
131
100
113
101
102
54
113
80
89
100
136
85
111
119
78
118
131
98
89
158
156
113
94
113
69
78
72
109
127
104
76
116
69
120
71
98
154
118
155
107
80
80
112
183
137
89
135
121
72
80
99
147
140
76
99
87
72
88
151
78
109
117
149
101
151
131
78
94
89
111
68
120
80
117
119
88
72
134
80
136
110
87
118
76
175
99
127
96
107
78
120
91
94
197
80
67
120
89
131
80
121
109
102
69
128
115
110
129
87
131
69
80
117
111
113
52
94
69
69
83
96
101
130
151
123
99
119
107
120
93
99
142
99
102
72
134
112
69
144
142
80
101
143
80
109
146
140
92
128
175
144
144
127
52
107
103
107
143
112
109
99
131
146
144
76
76
118
89
154
199
110
140
137
109
88
80
76
89
113
88
91
106
118
80
119
110
147
120
90
94
155
109
74
99
114
127
76
78
95
137
174
112
102
94
113
110
74
80
133
80
147
128
140
168
151
136
140
87
89
80
110
119
110
120
94
69
150
140
52
109
154
119
125
71
52
80
97
76
164
101
96
87
110
127
87
80
80
58
131
74
80
73
90
69
85
117
87
80
120
87
135
134
80
78
99
74
76
81
121
127
117
142
121
121
152
100
135
73
156
99
104
94
137
174
140
134
89
136
76
154
115
175
72
88
85
114
111
93
152
76
80
117
74
145
140
95
76
119
126
54
144
132
156
109
69
110
80
137
74
160
108
136
96
94
87
152
91
116
175
78
154
78
69
96
127
109
136
93
146
80
83
119
119
80
88
78
122
69
144
104
94
143
95
78
108
128
197
111
96
76
83
101
175
131
137
150
154
87
87
88
78
72
115
90
132
143
54
160
152
69
101
107
119
175
119
119
85
116
104
131
154
80
80
110
110
103
133
88
87
118
128
99
99
107
99
123
148
109
94
128
69
78
146
87
121
52
107
98
107
197
69
119
107
91
174
122
76
147
69
69
88
109
101
87
89
119
145
148
80
117
75
69
76
103
72
66
154
124
104
78
117
76
96
175
96
112
87
88
69
109
102
122
80
131
69
117
134
119
99
114
76
120
80
78
127
69
80
117
121
69
83
76
69
69
151
122
80
128
72
69
71
120
133
76
121
112
88
96
57
118
90
121
124
60
99
101
80
117
54
90
99
67
91
69
127
128
80
78
107
120
54
88
72
104
106
175
80
85
107
100
69
87
119
136
93
89
96
89
120
114
69
80
69
91
122
69
93
76
126
113
128
89
145
90
156
105
103
121
119
137
87
122
93
123
80
136
131
79
110
89
131
108
136
69
121
80
80
90
140
80
120
66
119
91
169
60
156
98
117
87
136
89
101
80
78
175
110
118
119
80
112
85
121
141
93
82
107
95
69
80
83
76
110
129
83
89
88
93
156
103
95
69
88
69
69
130
119
153
69
113
89
126
154
102
89
110
154
93
80
83
109
175
91
97
109
175
85
89
123
80
120
175
134
109
148
146
123
78
76
76
123
69
106
124
69
122
69
91
69
88
98
96
174
80
104
120
89
69
88
107
134
146
124
99
197
90
164
88
109
69
104
74
119
109
132
80
110
148
80
106
96
94
106
89
110
156
97
134
117
109
87
69
99
118
134
99
54
110
107
87
106
197
43
110
155
134
63
87
109
94
99
106
87
96
119
93
197
69
129
75
43
131
76
93
78
80
110
102
87
88
94
71
131
95
148
94
88
109
87
163
93
69
90
154
128
132
76
128
121
107
136
72
125
114
87
123
110
89
122
88
80
121
93
122
99
134
156
110
91
128
123
120
58
154
122
175
154
133
91
119
76
80
73
78
111
78
93
128
87
87
72
104
156
140
69
117
78
87
128
99
154
76
88
113
76
127
110
136
107
120
85
128
120
74
119
140
157
104
120
85
80
78
79
119
110
148
120
133
142
144
121
93
69
115
145
157
72
154
156
134
78
99
128
104
99
69
78
87
151
142
90
114
154
80
100
135
76
87
110
112
97
87
106
101
169
119
99
69
127
72
106
115
117
112
143
107
101
80
87
110
87
99
103
122
68
134
88
131
106
112
123
80
89
139
76
121
110
104
146
109
96
120
174
155
121
102
88
78
89
80
155
175
127
136
78
69
87
89
175
117
106
156
71
69
103
69
110
89
52
128
88
172
112
69
129
123
69
88
72
120
120
93
78
76
125
118
107
107
130
127
94
85
86
136
80
128
75
87
110
87
115
117
80
103
106
90
96
107
76
125
80
80
156
86
119
74
80
85
94
120
89
112
150
88
69
187
94
99
78
106
107
80
98
183
96
155
117
120
140
136
88
119
109
104
117
124
87
73
129
175
107
52
117
88
110
78
74
115
140
128
69
82
80
117
117
131
128
75
62
87
138
87
107
120
130
73
175
102
80
199
78
101
197
140
155
120
106
107
43
89
154
119
114
76
197
119
119
131
113
128
78
69
119
81
69
102
163
120
121
80
75
154
80
69
154
154
76
99
75
120
79
181
80
134
101
111
69
96
109
80
80
151
78
80
78
145
109
164
111
101
111
154
118
110
56
134
110
110
105
56
87
143
94
104
165
95
136
87
106
143
109
134
134
145
120
175
80
93
88
76
149
106
131
158
130
78
142
72
99
76
78
146
93
107
109
78
80
115
106
136
76
94
122
75
129
80
119
143
144
94
128
121
118
154
101
131
89
107
78
97
129
175
154
103
131
114
52
120
80
146
120
140
175
89
80
83
69
122
69
117
98
74
91
146
115
87
97
69
107
69
54
110
122
111
129
87
128
137
76
80
104
103
130
87
143
114
87
129
80
117
119
110
120
110
108
88
69
80
134
106
76
146
88
134
119
95
88
85
127
120
104
109
66
80
94
100
69
93
127
120
128
101
79
154
156
87
80
113
197
110
110
43
68
156
127
103
175
128
157
76
86
78
87
122
94
117
80
80
121
102
110
127
69
117
96
87
197
127
156
80
80
80
106
143
103
94
155
76
78
107
93
80
80
104
115
69
104
96
91
123
91
119
149
120
75
119
89
156
151
140
104
80
175
63
197
118
111
110
78
69
104
131
101
69
114
120
175
76
83
127
136
76
113
138
132
103
89
72
134
109
112
127
113
78
96
131
73
110
139
85
80
80
130
101
96
69
69
128
52
119
175
80
110
110
99
109
80
89
78
66
137
111
91
69
78
112
93
134
87
69
104
96
101
163
73
69
173
107
109
76
119
134
118
112
80
117
120
78
87
80
52
164
79
80
76
112
110
109
69
120
140
80
128
140
123
59
106
87
132
107
120
128
99
79
132
80
84
109
93
111
74
164
136
88
94
87
103
133
119
88
117
107
85
142
151
88
104
87
125
104
115
66
95
145
120
117
126
89
132
197
119
137
118
80
74
121
132
76
136
138
99
79
69
136
112
134
80
132
69
157
76
151
119
58
56
69
80
111
94
119
86
76
69
113
126
175
88
146
124
110
126
69
143
87
78
91
94
99
80
172
87
85
88
106
106
117
76
52
80
91
99
98
138
118
80
127
94
107
69
113
76
80
112
72
99
80
78
152
80
118
80
156
112
156
120
72
132
99
99
91
117
113
164
119
91
106
102
87
87
106
100
185
133
136
69
134
104
119
160
175
113
94
80
199
69
52
134
138
174
89
129
105
69
122
175
110
109
76
103
90
119
119
93
127
43
89
154
85
102
175
89
78
94
72
132
130
80
78
93
120
121
137
87
56
155
105
104
127
89
197
83
73
114
88
119
110
72
80
119
69
59
71
120
80
99
99
127
90
107
76
91
96
125
134
91
76
94
96
78
101
97
76
122
78
86
120
137
102
80
56
89
80
110
106
76
114
136
69
130
113
80
106
131
87
89
117
94
121
125
113
88
88
140
118
95
110
163
110
96
80
80
69
88
119
107
88
99
96
118
88
151
128
69
87
126
56
197
78
145
73
126
89
127
125
126
117
95
121
106
119
85
80
91
69
128
99
128
89
69
69
160
109
164
67
123
80
59
69
69
104
175
76
69
69
89
71
150
175
80
126
128
67
56
78
119
69
86
111
101
56
90
154
109
89
69
76
59
175
79
147
69
126
74
87
120
117
143
102
78
100
113
74
78
125
134
88
154
91
137
72
113
112
119
125
69
154
136
143
80
85
52
93
89
136
92
156
109
117
100
143
76
123
119
145
175
144
120
58
87
69
146
83
138
162
123
88
110
107
68
132
98
74
132
69
80
104
87
156
76
107
124
80
108
81
123
69
104
112
87
181
121
76
80
138
113
120
54
107
97
154
76
89
95
94
87
128
120
87
105
96
69
104
104
96
89
112
143
88
117
131
106
127
102
154
142
82
134
117
140
143
84
120
133
104
96
125
109
124
78
78
80
110
138
162
80
58
152
113
76
80
52
80
99
107
69
117
54
112
185
80
89
126
126
59
145
134
87
69
109
151
197
52
103
89
130
93
110
175
67
78
138
80
76
113
87
154
131
133
118
87
103
151
175
80
104
74
100
96
89
91
79
128
106
107
87
125
122
110
183
69
87
120
80
119
78
69
91
88
78
80
87
183
102
114
80
111
87
100
151
88
120
127
99
91
121
134
81
80
83
149
97
93
154
80
111
91
93
175
80
118
96
178
94
88
143
120
96
66
119
89
120
95
87
151
80
140
69
113
78
69
136
72
143
80
69
129
177
112
90
80
132
123
101
80
136
72
143
72
126
87
113
156
96
125
127
129
104
92
165
103
121
88
66
175
76
141
69
87
175
111
69
80
104
100
94
131
87
78
110
80
80
99
80
115
80
119
78
76
80
139
129
56
80
79
136
128
114
154
127
119
69
106
138
115
104
128
106
94
78
155
59
78
76
134
127
96
94
131
104
78
80
99
129
133
107
119
107
69
119
156
78
109
69
134
117
80
125
113
69
143
122
109
113
127
128
109
76
113
129
99
88
127
107
69
119
126
110
89
78
113
175
118
87
115
134
128
102
99
121
69
121
175
80
100
80
69
91
80
160
78
118
138
119
80
87
126
185
80
79
101
74
94
79
175
69
76
118
120
87
125
78
155
147
69
56
119
98
107
78
107
78
107
128
136
120
80
130
87
128
95
91
91
94
147
80
69
107
76
87
84
127
80
150
78
150
72
89
124
151
106
144
101
104
131
154
80
94
110
91
83
80
94
88
98
95
103
82
110
134
117
148
87
69
80
89
93
58
126
80
87
88
87
80
123
91
80
119
164
136
43
118
120
78
109
131
119
113
107
67
94
155
104
145
128
120
98
163
69
163
98
136
88
155
78
124
93
131
80
121
106
78
56
154
107
155
154
104
121
88
152
71
76
104
114
151
69
139
80
88
69
89
119
94
99
72
107
137
78
171
80
110
93
121
130
131
102
175
132
110
120
93
125
131
118
87
89
89
80
115
109
130
80
128
175
110
122
152
74
131
80
94
69
91
112
106
104
91
154
80
129
80
112
112
80
117
136
87
125
140
132
67
80
117
80
78
115
80
96
93
87
72
132
160
146
99
78
175
134
109
110
75
88
122
115
80
43
105
87
124
128
69
122
80
76
146
66
134
76
52
80
151
93
120
143
109
91
123
76
80
88
72
131
120
99
85
71
100
102
134
156
80
117
134
106
80
134
80
99
88
110
98
101
78
91
80
91
118
117
163
80
112
113
154
103
110
143
197
128
94
87
131
115
131
71
80
80
94
80
78
120
107
95
121
103
156
134
113
91
169
173
162
97
80
110
106
107
96
109
76
120
56
85
148
145
121
119
136
82
136
106
118
88
136
119
72
80
76
110
138
109
94
112
52
109
110
134
80
99
83
84
87
64
80
78
87
107
88
128
69
115
109
98
115
154
72
134
72
113
119
69
112
121
78
120
80
80
88
113
107
91
157
85
106
169
175
88
68
128
94
69
116
99
85
183
155
131
110
76
158
136
69
109
126
128
109
78
69
90
127
141
129
197
80
88
128
123
106
137
71
118
80
69
103
88
143
115
128
125
88
113
80
99
154
72
104
140
98
133
120
175
131
101
112
119
43
99
69
97
109
120
75
88
72
89
127
156
146
98
69
175
107
74
112
104
87
148
97
98
90
181
88
126
100
165
139
80
110
134
89
134
106
120
155
119
96
123
154
69
93
142
85
84
104
76
124
56
117
129
152
109
98
107
100
80
88
114
80
123
143
128
144
101
120
112
128
119
87
121
138
109
93
110
98
148
122
89
119
119
106
94
113
78
100
112
76
118
158
123
175
69
101
78
84
124
88
90
183
80
163
78
78
107
103
76
80
109
87
85
87
78
85
93
121
87
129
112
69
160
89
93
89
114
127
131
94
69
52
112
141
125
100
93
95
156
131
93
92
87
106
76
76
78
88
110
197
80
113
109
78
124
85
155
101
136
101
98
118
132
112
106
80
99
107
78
152
88
121
128
199
69
166
136
95
114
80
87
94
140
120
146
132
80
78
119
88
78
43
89
112
101
143
87
69
120
84
140
141
99
80
104
133
149
123
90
134
109
99
80
94
111
106
69
175
131
91
109
134
76
102
160
128
78
147
142
118
72
110
104
94
69
128
80
164
117
76
94
121
151
109
87
156
87
104
140
96
95
154
130
89
80
93
136
121
110
59
94
122
131
128
90
112
107
119
151
76
154
101
137
134
99
69
99
141
144
197
110
71
125
87
107
136
154
118
128
136
106
69
87
79
145
69
123
101
87
155
122
132
88
140
101
128
109
80
60
89
87
80
94
99
106
136
118
128
94
121
121
96
78
80
80
128
175
95
127
88
78
87
175
80
125
140
87
154
78
107
110
90
69
124
100
80
115
128
163
80
69
111
78
155
120
87
106
142
69
107
88
72
91
120
102
95
90
110
107
162
145
140
153
113
76
96
119
80
119
72
137
89
93
107
120
104
78
117
109
134
143
119
82
81
115
130
106
158
87
76
175
110
94
96
109
201
93
140
156
156
112
76
155
101
87
72
87
92
117
117
100
123
113
148
130
72
87
69
133
133
127
88
113
107
89
99
80
119
148
101
95
131
76
78
80
88
94
121
80
154
134
127
140
155
80
75
72
96
119
154
88
80
126
80
76
87
174
99
128
69
107
93
109
115
80
80
121
80
154
92
72
94
80
83
197
88
80
112
76
128
112
151
155
76
80
104
121
111
155
88
98
80
112
117
69
78
109
137
107
115
137
109
88
90
88
175
92
52
175
69
107
98
69
87
172
76
112
117
120
151
128
76
115
80
87
163
185
91
101
76
94
143
175
121
104
199
131
87
145
136
101
80
104
120
88
126
122
116
91
112
87
131
80
129
175
80
104
93
69
78
99
154
94
136
87
69
80
75
128
119
114
154
112
95
96
102
143
155
80
87
69
107
87
155
155
66
76
69
175
80
91
116
80
110
147
163
130
75
80
80
134
67
145
134
78
87
89
80
78
143
136
99
104
148
105
89
87
119
100
101
109
100
111
115
112
129
93
104
102
197
113
134
88
131
164
124
80
76
134
175
87
104
155
80
76
80
163
80
80
112
99
87
89
151
93
78
124
128
88
110
124
91
76
99
113
154
119
103
119
69
87
76
83
175
80
99
197
136
128
88
87
110
76
124
144
112
80
73
82
80
156
93
131
97
74
69
119
117
63
69
90
76
89
87
108
82
160
110
69
79
117
93
119
94
130
69
109
69
197
147
80
69
91
87
119
86
119
68
99
69
83
140
136
69
128
102
157
109
69
185
80
78
133
112
76
87
110
133
131
87
136
83
140
69
76
87
69
140
117
134
155
113
120
119
78
100
109
109
107
99
85
67
75
88
143
80
117
107
117
151
78
87
72
92
142
69
146
93
91
132
151
128
147
64
111
80
139
124
88
96
181
76
134
78
85
96
119
104
88
94
69
103
109
88
93
103
119
133
107
69
110
148
87
154
98
152
148
78
140
76
96
102
136
80
130
104
54
128
87
80
130
197
72
142
71
120
164
154
87
126
132
131
120
121
107
96
128
154
131
74
175
128
100
92
108
113
114
105
96
87
117
54
100
56
138
87
101
68
87
91
154
80
133
110
91
106
80
137
146
144
125
127
120
83
99
96
133
134
148
111
82
128
120
110
80
128
119
110
121
124
122
99
185
104
149
78
119
74
87
100
109
54
113
74
58
120
91
201
83
119
117
129
76
76
111
156
90
101
87
94
78
99
80
69
69
120
99
119
72
87
124
80
128
145
69
69
130
89
80
89
72
119
119
80
69
100
73
128
128
117
78
80
164
100
87
80
111
80
80
130
72
103
80
98
165
128
136
69
76
100
78
69
118
174
130
87
56
87
117
127
187
87
128
69
128
80
128
197
78
110
115
146
78
98
69
69
127
141
106
112
54
94
109
109
90
115
85
106
80
110
131
80
69
120
134
90
106
128
76
166
119
154
124
113
80
113
118
111
87
87
109
80
69
106
123
143
80
160
71
80
120
76
80
121
177
115
80
87
134
76
121
94
78
104
58
120
69
107
89
109
78
169
76
120
117
118
163
110
146
161
96
56
80
110
175
69
80
113
73
76
107
101
111
113
80
166
175
146
156
69
136
89
115
117
111
94
104
80
80
107
96
109
80
138
94
94
88
80
69
76
112
121
85
99
87
147
106
76
126
69
107
175
101
52
128
91
106
113
91
175
112
92
175
104
128
69
151
134
76
99
101
141
151
134
66
147
72
124
96
136
180
87
76
87
80
96
99
76
99
175
134
94
109
134
80
85
197
107
91
80
88
76
87
89
131
137
110
80
101
69
134
107
96
87
78
104
97
102
154
93
152
87
154
106
87
107
175
157
100
136
87
95
130
110
78
136
94
78
113
121
56
88
102
72
91
175
83
83
109
134
116
119
110
119
119
83
90
69
72
141
94
78
120
80
120
93
72
69
120
121
120
140
100
163
76
99
109
119
159
127
107
145
69
154
110
86
90
90
136
107
134
94
154
96
69
78
89
96
91
69
76
120
175
80
110
85
119
69
110
87
83
148
69
112
80
121
109
104
69
120
124
106
69
114
85
54
106
96
107
104
93
120
110
98
89
119
94
123
100
134
111
156
119
94
104
175
69
120
56
136
85
99
80
127
88
134
136
129
154
119
80
144
80
87
99
147
107
76
87
119
156
99
104
115
80
93
99
94
79
120
114
85
122
87
181
120
87
80
151
85
69
95
128
81
109
80
163
107
86
88
151
181
117
80
120
119
97
80
131
80
123
83
104
109
89
43
94
115
69
128
100
87
107
69
101
175
94
113
107
112
88
152
88
113
142
105
114
91
122
110
80
69
93
80
87
107
104
138
136
119
98
94
78
89
163
87
116
69
102
80
128
112
96
113
128
158
76
101
131
156
80
102
106
128
112
90
112
156
146
72
131
69
72
100
134
74
137
111
123
134
89
154
106
69
148
104
110
91
80
163
155
115
119
109
120
69
75
69
159
136
78
80
101
95
93
131
137
117
105
87
156
160
91
90
87
163
106
95
69
93
76
100
63
87
110
96
137
56
93
99
88
140
85
108
71
128
119
104
69
130
79
99
112
78
78
80
71
101
72
107
109
136
145
76
88
80
143
93
134
104
121
140
151
69
134
80
97
94
175
111
122
120
107
109
107
81
69
80
69
87
91
99
154
134
119
75
113
123
112
118
156
156
113
69
151
82
107
113
156
120
107
85
94
73
100
115
110
112
80
114
118
163
78
120
78
146
80
86
80
80
104
109
76
107
78
134
74
122
99
120
92
125
151
87
113
91
69
85
199
110
175
80
80
87
132
197
115
87
80
99
155
126
80
155
69
87
99
153
127
64
134
69
78
69
80
110
110
128
89
56
80
80
54
56
115
94
110
131
117
133
138
119
102
90
131
105
102
119
114
136
84
89
143
113
169
119
112
128
113
72
88
145
134
110
155
93
144
96
80
110
175
155
155
114
112
119
172
119
122
80
163
87
101
76
80
136
69
80
90
107
134
154
119
88
146
96
94
151
156
121
116
128
80
104
113
107
104
155
96
108
142
106
87
91
99
94
120
129
80
78
89
99
114
85
144
89
175
69
91
147
118
128
90
87
76
107
106
140
154
151
80
78
148
113
87
79
109
94
88
83
99
131
80
166
95
119
155
80
119
93
112
76
118
96
112
80
74
111
131
76
119
69
122
83
111
104
120
107
109
146
87
69
101
88
120
109
110
197
74
119
119
155
120
112
69
94
117
136
124
89
119
121
89
80
106
119
113
91
88
80
99
133
146
181
69
80
104
100
109
117
106
69
69
120
104
146
136
99
109
119
69
96
177
163
89
85
107
107
99
113
110
80
125
72
156
78
120
121
93
69
137
97
99
109
69
76
78
56
137
128
87
147
94
104
93
88
72
115
128
120
74
136
128
78
146
199
119
120
101
67
102
96
132
101
109
74
96
101
69
117
94
99
107
54
99
154
139
107
93
99
172
106
155
147
157
72
104
109
110
107
100
147
132
106
87
127
87
110
69
90
100
80
93
113
155
88
106
52
89
144
94
72
121
74
69
80
69
85
147
113
131
89
87
143
83
69
90
89
120
156
117
117
156
94
73
69
137
175
156
136
104
87
121
69
120
90
87
80
118
127
116
64
95
127
113
94
94
136
93
87
183
69
117
87
102
89
54
99
93
88
133
122
94
111
94
80
69
175
109
89
143
156
104
139
154
80
73
122
109
64
120
128
133
75
119
72
112
54
110
80
142
58
110
106
75
175
89
87
94
120
120
89
143
146
89
69
119
88
126
106
80
117
91
80
134
118
113
148
78
80
79
197
134
81
136
106
99
161
80
99
69
87
78
69
99
87
123
101
131
89
99
143
69
80
141
76
155
120
120
140
163
94
101
111
122
113
88
89
140
133
82
93
69
120
136
109
99
106
154
78
113
99
78
79
114
106
87
128
80
106
132
99
102
197
87
125
80
52
80
183
127
80
175
116
56
164
85
164
87
87
87
110
69
75
144
119
117
151
151
175
139
126
175
140
112
157
69
80
175
143
110
66
119
106
76
124
136
76
111
153
113
156
131
101
175
87
91
78
147
137
129
110
91
124
72
80
116
78
115
74
129
120
87
130
110
69
145
117
119
69
88
135
96
69
138
107
110
60
88
120
58
106
107
119
113
96
76
131
54
102
59
163
111
76
64
154
109
69
85
94
102
131
119
69
109
80
119
87
87
66
123
183
109
80
145
116
109
175
87
89
93
80
138
110
89
154
153
119
115
175
104
83
121
104
131
95
130
156
128
69
175
151
175
107
76
109
93
80
114
134
63
119
130
118
134
114
89
69
137
85
52
76
149
102
80
115
110
174
140
153
111
117
88
146
80
91
76
136
88
116
123
111
128
106
123
109
43
74
100
116
78
107
91
83
78
99
99
183
88
88
145
156
136
107
87
76
89
129
76
128
98
69
117
98
163
76
96
110
142
102
125
109
101
80
164
107
90
85
109
101
119
76
100
154
160
119
59
116
80
87
119
52
74
89
110
143
91
80
69
87
80
80
128
106
87
136
73
80
115
76
69
104
131
131
101
100
101
129
128
111
115
154
137
136
148
80
172
107
74
69
124
59
72
80
78
117
76
145
145
106
107
89
159
109
88
106
77
127
102
87
169
110
128
118
89
128
141
163
76
109
131
119
109
95
118
99
136
120
60
164
94
174
72
72
117
88
99
113
87
80
83
119
119
80
91
120
76
75
69
114
140
123
56
143
156
116
123
120
119
119
130
157
146
110
128
87
101
109
99
79
109
164
80
54
85
93
110
69
125
134
140
56
114
72
94
80
69
101
122
119
96
106
72
69
112
134
124
87
69
94
119
137
166
80
69
69
137
60
131
54
185
143
115
74
138
80
174
80
80
121
78
112
175
87
90
120
79
80
78
87
128
117
119
78
115
120
91
114
154
136
66
110
91
89
80
155
85
69
69
78
136
109
145
80
107
132
80
80
109
69
179
146
112
120
76
89
87
80
72
64
80
69
113
100
87
120
94
79
80
78
80
172
185
138
104
69
148
67
88
71
131
155
136
132
87
87
127
175
76
109
83
117
66
69
120
54
121
102
103
54
128
121
119
87
122
129
126
111
124
123
101
94
113
88
122
74
175
72
69
117
78
76
80
110
117
175
98
87
74
119
102
106
99
101
89
140
80
110
110
88
136
94
87
69
87
109
110
104
122
80
132
117
107
141
89
80
119
125
76
78
69
127
69
155
74
88
94
80
66
154
140
104
95
107
100
131
197
94
120
89
113
114
107
154
134
149
102
134
119
140
69
128
178
175
128
80
140
87
120
141
107
96
112
69
154
76
117
117
113
80
122
93
87
127
77
107
102
104
175
69
89
69
96
98
96
69
118
72
101
140
69
99
155
131
56
156
80
104
94
80
118
147
78
148
119
93
131
89
78
111
99
87
156
94
106
69
96
143
110
132
94
120
107
69
114
154
174
98
109
132
78
112
175
113
96
111
80
125
136
110
80
74
103
94
127
75
76
96
131
94
156
87
175
80
91
87
137
114
156
156
106
71
69
89
149
112
56
69
103
90
120
87
69
155
145
148
109
118
100
119
118
87
134
113
69
118
98
118
69
160
99
76
80
122
80
83
156
106
132
131
69
109
92
101
80
131
76
87
88
137
80
137
89
99
109
132
93
128
154
80
143
78
120
117
107
112
185
119
119
129
72
80
95
69
87
87
52
107
108
69
167
112
143
110
96
128
117
96
131
95
145
78
122
136
60
93
107
76
76
143
132
131
175
109
80
107
82
115
119
91
126
147
128
87
107
129
175
107
99
152
120
136
117
139
133
114
80
151
69
69
94
124
89
136
146
94
87
69
145
67
69
88
113
83
153
113
146
201
136
110
69
106
83
209
135
113
80
163
78
98
102
99
136
98
71
127
109
118
89
120
151
80
69
87
100
109
99
80
74
95
80
99
80
123
140
101
100
100
80
69
54
172
52
152
111
106
154
80
80
118
89
121
80
80
82
110
104
99
107
91
69
76
101
111
67
151
76
131
93
149
59
80
90
121
104
154
116
87
163
99
134
121
89
175
115
112
130
103
80
107
118
126
120
69
128
131
69
67
110
99
146
90
175
124
154
78
120
126
69
176
93
134
119
84
98
109
78
80
125
106
164
80
89
88
201
54
128
120
80
123
99
113
110
97
78
110
52
86
117
91
119
154
123
80
117
110
78
76
74
80
77
118
117
80
136
89
78
130
80
76
80
129
110
126
140
85
117
80
117
80
90
80
154
115
69
80
72
100
117
120
119
80
122
132
155
101
125
88
78
102
104
111
127
69
175
89
136
76
79
79
72
99
113
156
93
133
109
108
87
104
109
128
113
80
113
87
106
78
64
154
129
93
140
87
100
102
154
120
87
87
80
88
85
111
67
81
89
80
146
121
140
85
91
119
109
80
89
69
96
54
109
87
142
89
199
90
131
140
123
175
113
117
126
154
99
113
143
115
102
102
113
134
91
95
80
80
110
130
52
95
88
67
80
99
87
87
145
134
91
96
104
100
69
175
109
87
80
78
136
130
104
128
76
99
89
109
131
80
98
155
58
127
127
88
164
197
76
80
128
114
119
156
106
88
134
100
118
209
109
106
147
69
80
118
156
115
112
69
88
160
90
69
175
80
99
69
87
176
103
109
80
117
87
151
94
78
80
96
123
78
175
119
75
111
80
104
137
87
116
175
140
78
69
76
80
121
80
69
87
98
88
75
74
113
69
112
119
104
103
146
94
109
63
76
54
134
154
104
78
83
120
134
118
69
134
84
130
156
119
89
132
94
107
88
120
123
122
104
85
88
89
88
128
102
119
91
101
104
85
69
109
154
80
127
154
110
116
133
131
113
80
106
106
146
98
128
128
107
89
80
89
132
119
117
96
98
83
185
149
128
128
85
120
78
101
89
175
69
128
76
111
154
89
76
75
99
69
112
183
93
78
175
109
69
69
78
80
143
106
175
91
75
69
69
137
104
85
117
69
120
89
76
80
72
134
72
156
119
134
164
120
110
104
91
93
80
91
69
100
94
69
92
197
155
115
78
99
118
87
110
76
110
93
87
164
80
131
131
106
115
101
84
94
104
78
120
131
137
119
104
119
165
83
110
99
94
89
109
114
91
155
69
113
96
104
101
80
178
80
112
91
110
80
104
131
99
107
110
134
69
69
80
201
75
87
112
110
67
93
88
52
160
99
151
106
101
60
171
90
103
80
105
137
141
69
147
128
87
80
144
164
111
56
87
160
151
114
78
116
80
108
175
136
175
85
110
119
136
54
107
137
99
80
72
131
106
80
156
119
95
107
66
120
89
76
135
78
134
58
87
140
146
116
102
99
56
107
87
154
110
120
119
144
128
128
162
181
99
172
112
69
76
78
94
94
78
109
123
137
111
156
104
76
76
87
80
124
113
95
107
175
99
106
146
100
94
127
119
80
58
71
113
136
90
89
133
69
76
88
87
104
54
156
128
99
87
141
78
69
85
127
136
78
120
103
99
156
131
119
109
82
93
122
104
102
69
114
120
104
91
122
152
91
76
120
124
109
92
119
155
124
119
132
110
80
80
180
107
128
87
137
72
129
43
104
88
109
101
88
85
107
109
80
66
107
117
85
137
89
88
139
69
78
127
96
154
175
80
93
187
69
80
137
80
107
78
96
110
101
114
91
67
123
69
101
111
69
80
134
99
126
78
88
124
123
76
71
136
175
131
113
69
138
100
91
107
108
80
120
95
117
66
111
111
101
122
87
69
148
160
136
101
120
119
95
97
99
73
93
81
88
156
89
113
80
145
109
87
121
78
101
157
164
134
75
93
101
107
145
117
88
163
111
131
80
135
88
52
106
89
54
117
100
81
143
110
92
78
140
154
112
156
104
121
129
69
69
151
88
78
146
136
80
99
43
140
85
87
54
119
119
127
136
175
82
69
163
94
85
69
80
74
76
128
78
155
136
128
94
154
107
93
115
106
128
119
128
145
104
110
78
104
118
164
175
112
72
121
94
87
131
134
119
107
106
72
108
112
93
146
88
127
133
154
64
94
69
111
100
156
66
127
119
77
104
112
114
80
80
146
80
131
76
119
116
94
130
143
80
185
138
145
134
83
79
132
78
76
140
113
82
143
134
69
120
56
151
102
199
128
154
78
154
112
93
137
151
72
93
111
110
140
87
117
93
137
107
74
74
80
175
126
144
160
76
113
90
151
82
96
118
89
69
76
175
87
94
128
109
80
175
72
88
80
164
74
98
80
129
78
76
107
87
94
160
142
119
76
78
143
121
119
165
104
80
115
152
75
109
166
153
104
120
69
72
136
156
151
69
69
94
109
119
128
80
81
109
80
101
80
78
136
69
185
91
121
69
67
146
134
159
88
69
78
72
88
119
119
87
80
133
145
69
120
147
79
85
187
80
109
78
69
110
87
90
63
146
110
100
72
75
69
145
136
154
155
74
69
154
163
136
114
93
80
76
151
69
78
107
156
80
107
110
85
155
88
119
94
76
112
120
80
108
102
87
123
108
69
80
146
87
199
76
80
112
126
161
76
99
140
54
91
67
76
96
78
72
113
94
118
155
201
76
80
90
69
59
88
106
154
112
76
166
136
82
54
69
75
69
134
128
69
163
113
187
172
136
127
87
78
175
113
69
76
154
121
175
78
109
112
113
69
131
56
151
80
100
110
110
113
154
80
137
118
121
80
118
89
119
111
80
96
148
129
85
99
143
72
87
102
78
110
122
80
137
107
94
115
120
74
124
87
80
120
99
106
134
99
109
78
106
69
85
69
140
100
87
87
130
88
187
78
102
76
87
151
112
162
99
120
117
76
99
85
78
121
78
80
76
175
131
94
101
101
80
142
104
106
72
119
69
87
101
151
160
128
76
80
69
80
98
138
76
109
132
174
59
78
78
89
78
121
54
153
137
156
94
80
107
109
144
113
107
72
72
87
84
99
109
175
94
112
75
107
124
100
109
175
74
154
143
110
76
88
72
138
90
146
69
101
120
137
126
80
164
115
69
87
114
139
80
99
140
87
88
80
112
103
94
111
88
161
107
78
94
85
76
76
117
69
123
80
154
89
69
110
69
131
69
156
111
69
155
107
64
127
136
90
89
110
76
110
157
89
94
140
149
122
107
99
175
107
87
129
78
90
52
80
131
154
109
109
89
80
103
139
75
102
87
64
92
120
136
101
94
101
156
82
111
80
89
69
119
154
69
134
89
113
103
119
111
129
122
165
69
119
88
80
122
76
154
144
131
143
54
120
107
69
74
125
119
134
197
93
82
131
94
78
74
80
111
149
132
69
148
124
117
140
113
73
131
146
118
119
119
133
120
89
80
140
112
164
87
115
74
87
87
119
113
119
132
102
118
134
177
119
85
93
78
69
106
76
96
107
118
127
100
87
85
69
80
105
113
69
109
117
54
104
109
107
132
87
154
120
69
76
137
137
164
87
80
115
78
131
125
126
93
119
148
151
122
129
122
113
88
60
89
142
93
107
136
90
80
197
115
129
104
85
100
163
93
78
94
154
85
107
80
128
134
109
100
131
99
121
154
78
109
113
64
88
100
69
115
102
80
146
99
130
104
80
109
76
158
145
119
80
152
118
87
72
139
69
154
101
101
109
146
83
128
128
104
112
80
117
72
120
80
80
52
140
69
175
80
129
107
120
78
134
126
115
80
94
129
110
82
107
117
111
112
69
94
101
183
112
117
154
185
80
89
83
89
80
80
137
69
72
119
78
78
80
118
75
123
69
78
175
69
114
78
80
69
175
142
123
76
142
129
147
106
127
101
114
79
94
87
76
136
120
111
128
109
121
78
80
120
109
69
69
128
131
88
106
145
119
88
145
80
67
113
155
110
91
62
89
163
100
114
113
69
126
80
136
146
117
78
94
94
98
76
106
131
110
101
80
110
80
134
120
117
137
124
94
60
125
92
137
66
120
90
87
88
85
91
113
128
87
74
125
56
80
96
120
94
109
85
105
91
114
88
119
76
110
114
89
78
94
87
106
93
120
117
155
85
80
89
80
96
69
119
121
110
58
69
80
88
115
72
89
72
151
78
175
80
104
121
109
87
80
94
110
128
76
54
80
87
127
87
69
99
97
76
76
93
90
134
99
69
96
72
108
117
76
149
54
80
80
89
116
80
78
95
69
80
69
138
129
143
69
89
94
119
93
88
102
80
93
93
80
78
145
75
69
76
107
154
162
113
80
73
99
155
87
113
175
76
175
80
99
76
60
127
147
163
109
131
72
140
123
142
151
128
133
103
80
175
81
156
106
87
118
76
76
80
66
120
128
131
103
69
106
93
85
69
112
132
94
80
109
76
121
114
104
69
95
117
117
78
134
79
166
131
52
94
134
134
96
78
104
94
120
52
76
124
87
155
106
116
78
76
72
69
155
117
89
69
87
99
112
113
132
123
113
52
91
52
78
133
87
111
151
113
197
73
107
108
88
102
154
72
114
141
104
73
56
151
109
107
100
119
63
87
127
131
78
76
121
120
141
149
72
115
74
95
118
110
94
129
91
90
144
175
163
80
163
69
95
69
146
87
69
156
72
109
128
118
110
80
119
101
115
105
96
69
101
114
94
140
80
146
99
146
80
151
111
107
78
100
101
155
64
94
76
119
94
96
80
140
78
83
69
90
146
87
88
74
128
85
85
80
138
69
96
69
76
89
100
136
154
123
123
131
88
120
119
145
106
80
91
127
87
80
96
122
69
147
145
102
80
87
133
80
78
131
117
134
140
80
118
94
164
113
88
69
117
96
106
151
80
88
111
69
76
163
78
140
106
201
123
66
76
183
119
87
74
106
103
154
99
115
78
117
87
76
127
128
131
91
106
80
154
88
76
80
163
78
102
163
149
110
80
138
117
129
80
133
111
99
93
104
94
101
107
80
156
123
76
124
104
67
155
137
80
69
80
114
88
121
94
87
78
83
175
154
124
105
106
80
130
171
113
140
117
59
89
92
88
104
142
87
87
100
172
194
93
93
74
138
134
98
128
108
93
183
148
69
174
101
107
110
80
156
80
115
69
76
113
110
109
153
72
93
69
144
151
154
121
101
137
115
69
69
116
78
107
80
78
93
80
136
147
91
152
89
128
137
78
78
93
132
134
141
106
120
106
136
146
122
101
125
106
78
78
132
113
80
67
174
68
106
85
76
136
133
127
88
76
155
76
75
153
93
89
91
76
87
121
69
69
76
146
72
110
151
93
78
93
128
76
154
96
151
76
127
113
120
128
100
93
69
76
107
128
89
117
112
87
120
110
76
147
122
153
88
107
90
118
126
154
119
154
90
69
54
78
175
69
101
140
80
110
89
122
133
154
80
69
113
136
163
80
134
98
75
80
129
154
108
134
113
109
110
118
96
109
92
52
128
87
87
76
113
131
121
69
131
91
59
155
66
183
103
89
155
76
140
80
154
130
113
110
153
80
130
80
127
201
104
80
102
78
104
119
106
80
127
104
179
160
162
76
113
106
95
118
88
104
127
60
114
119
126
56
128
89
120
111
56
104
69
175
123
112
162
93
136
107
110
134
69
152
87
146
100
113
110
94
113
155
87
147
89
99
80
88
69
88
80
185
110
89
96
138
121
71
87
87
112
131
118
120
154
131
109
103
67
147
106
107
78
142
141
130
117
76
117
154
126
88
108
89
109
121
94
197
104
87
78
89
110
80
80
120
69
112
75
87
78
88
80
87
112
86
80
140
76
124
137
87
149
154
94
118
150
101
89
71
80
163
107
128
80
101
69
146
80
121
84
80
110
99
117
80
111
80
93
164
154
99
101
131
69
88
104
81
94
134
164
132
52
183
88
80
143
154
79
94
104
126
112
88
140
206
99
119
71
85
120
163
69
164
116
82
83
154
113
160
83
54
69
103
64
150
119
60
120
52
109
113
120
178
199
76
93
120
80
69
89
130
120
99
74
87
72
64
183
107
87
69
104
78
106
82
175
134
80
89
87
118
69
80
54
67
117
87
197
96
106
124
80
156
94
80
80
140
74
87
120
96
100
43
100
78
121
80
136
127
103
80
78
119
78
87
72
134
127
78
96
124
154
146
134
113
140
123
125
69
120
69
80
175
119
109
128
120
137
113
131
99
156
109
109
109
122
110
109
119
85
154
69
128
127
175
134
106
85
114
80
88
76
92
153
80
80
87
120
94
113
82
93
99
78
102
80
119
150
121
99
69
132
141
145
94
137
69
88
103
156
69
128
80
128
76
117
120
69
142
76
107
99
69
116
102
117
114
69
129
104
128
131
94
91
156
76
111
113
69
99
78
136
128
87
145
128
127
140
119
136
127
123
89
153
123
103
119
123
175
80
72
69
99
131
143
124
87
69
87
93
67
76
110
99
175
134
119
87
80
136
131
107
113
151
43
175
126
126
154
120
80
156
156
76
89
89
88
76
80
160
72
107
102
89
110
155
78
94
70
69
80
80
158
56
87
120
101
99
69
80
127
163
94
112
147
110
69
80
117
107
69
88
110
110
91
69
121
119
197
96
165
126
154
87
94
128
107
69
109
120
154
80
80
80
111
127
85
78
119
104
131
119
91
112
137
76
130
84
92
96
119
92
99
93
130
99
142
88
109
141
80
104
80
143
154
89
80
110
101
119
75
115
67
143
111
76
96
76
163
103
156
87
93
87
110
117
107
106
123
80
76
80
95
79
69
120
136
43
119
126
78
78
72
99
112
89
91
199
119
175
107
80
93
120
120
108
87
78
89
120
43
117
117
115
164
87
86
122
100
104
135
100
100
175
133
89
104
128
93
119
127
103
76
120
89
142
87
94
88
136
104
89
87
137
181
76
104
96
115
93
112
118
107
114
106
69
143
80
80
93
87
94
119
80
111
83
112
134
141
43
90
128
111
87
121
147
114
90
126
143
76
80
125
80
103
146
80
151
126
76
82
115
102
134
128
131
136
112
102
110
104
89
163
80
175
101
110
88
87
140
80
69
133
111
107
88
120
99
119
110
145
111
110
87
104
78
67
80
154
119
80
175
91
116
76
154
127
76
85
138
69
102
69
122
133
146
88
80
126
169
99
148
112
123
89
100
98
113
122
73
56
134
74
113
156
112
69
109
54
119
89
119
100
111
109
163
80
80
165
118
105
120
160
151
87
69
199
96
128
109
138
155
89
164
76
140
109
80
140
133
68
56
136
133
109
78
110
112
106
119
109
127
87
89
76
119
93
124
52
154
96
88
110
131
102
109
88
155
94
64
127
154
104
131
120
120
106
104
95
112
89
100
120
69
69
80
76
110
76
90
119
103
113
119
85
119
110
76
100
156
69
86
80
152
86
101
99
121
138
119
121
118
105
78
185
136
78
107
88
118
118
83
120
131
111
89
138
94
124
74
154
69
100
156
80
119
54
183
99
143
106
52
110
134
136
111
104
109
99
90
97
107
74
146
91
80
88
103
69
127
106
152
78
137
145
104
140
69
95
175
120
93
76
139
89
85
154
89
69
91
117
119
151
154
148
96
87
134
87
54
128
109
134
127
122
94
72
76
132
128
95
87
115
129
58
78
112
76
69
101
69
52
80
87
107
107
119
121
117
74
107
89
155
136
87
134
129
80
78
72
134
117
134
100
89
69
94
87
106
76
76
91
76
102
130
140
78
76
78
132
80
92
102
100
185
154
136
127
54
111
134
87
132
87
154
134
90
100
146
120
131
126
78
80
113
154
126
136
43
80
99
104
78
99
119
114
85
147
101
106
130
147
138
89
134
76
87
140
104
107
110
69
98
80
87
114
172
155
80
93
80
123
145
131
117
80
175
101
90
89
121
82
110
136
43
175
54
56
95
78
135
97
112
104
127
115
69
127
112
72
75
76
69
96
119
121
142
112
93
80
80
87
80
52
60
60
141
88
128
131
99
72
85
103
78
131
131
80
107
133
151
151
74
73
104
54
78
88
80
148
120
140
87
74
113
87
80
74
156
141
126
130
152
89
107
134
98
76
120
155
114
183
156
78
95
80
94
80
113
119
106
89
80
123
154
93
76
69
95
119
88
80
112
80
101
197
87
102
122
140
131
110
109
163
78
92
94
154
117
143
98
89
83
175
98
69
155
117
76
88
78
87
71
104
108
93
118
87
154
120
104
126
80
121
69
80
119
56
95
80
74
69
117
78
69
80
136
115
105
183
171
197
88
82
98
107
119
118
107
113
137
101
97
144
69
88
87
125
68
80
129
80
80
160
89
69
104
136
87
87
43
104
89
127
110
106
91
115
107
155
93
80
80
137
109
78
117
104
163
80
88
151
87
175
85
80
165
87
152
107
99
154
74
80
88
104
104
140
93
78
114
120
56
118
107
71
101
123
126
99
146
83
109
56
99
112
69
88
104
119
80
154
144
118
112
123
169
148
94
174
134
69
78
117
99
164
201
94
119
79
115
131
90
69
96
88
80
114
107
104
76
110
69
99
80
110
118
87
139
78
115
74
100
69
112
87
78
80
87
106
150
155
136
123
54
95
90
197
123
72
106
117
128
89
87
83
136
93
134
109
69
106
80
136
126
113
115
83
99
119
151
87
76
113
80
101
107
138
109
83
104
78
80
98
93
174
58
107
118
118
101
110
201
87
121
136
113
117
56
132
98
91
76
147
88
112
107
136
209
56
72
76
69
110
110
101
80
90
100
122
88
94
133
177
80
131
76
72
145
174
80
113
104
147
110
91
69
89
153
94
154
69
87
76
134
154
69
153
183
111
115
87
80
108
87
52
69
127
118
143
119
156
115
155
74
107
115
117
80
106
117
80
78
80
106
104
110
197
79
69
134
119
80
119
174
78
106
117
90
96
105
88
110
74
117
128
85
128
106
69
91
76
76
131
71
113
87
94
103
154
103
119
134
123
141
154
89
136
104
54
78
82
151
69
149
100
124
197
89
80
134
80
102
109
89
120
197
78
155
80
76
103
99
113
99
116
120
102
131
127
113
76
127
80
140
69
80
156
86
118
91
80
69
107
109
110
120
136
131
78
101
78
135
76
112
88
69
83
71
107
80
80
120
78
91
80
174
80
80
101
80
69
199
154
99
69
102
80
125
122
103
99
150
128
145
69
80
76
140
117
102
90
80
100
137
115
137
140
101
136
78
52
83
78
88
69
85
54
136
66
75
134
80
109
101
110
88
156
93
127
80
80
147
146
120
76
107
101
134
114
80
131
91
93
143
80
88
88
87
186
143
52
69
80
201
85
141
89
109
119
118
74
69
153
69
80
151
131
136
80
123
78
148
117
138
78
123
123
101
131
78
75
102
109
88
104
43
87
80
155
125
80
96
163
155
80
160
136
95
145
130
134
111
91
69
155
116
106
131
69
174
147
87
134
85
175
122
87
119
69
69
74
127
121
76
100
119
113
119
90
131
66
141
107
119
106
79
80
78
147
89
154
78
104
130
93
145
67
80
74
130
120
157
60
80
69
127
78
117
125
79
120
66
80
80
120
109
133
106
127
80
88
164
127
115
72
104
127
99
108
89
96
104
107
117
197
67
69
163
110
154
138
123
76
161
111
80
128
152
80
103
106
118
104
129
143
164
125
119
91
96
155
155
76
69
80
80
78
89
100
128
80
119
156
87
101
85
80
80
52
80
151
112
76
99
137
56
80
156
102
117
69
106
89
120
123
94
52
90
107
87
76
119
93
106
80
93
145
80
94
69
136
99
110
148
136
82
131
87
72
94
109
124
119
82
89
75
80
92
102
69
106
139
93
74
76
69
96
88
109
136
87
80
69
91
131
137
78
160
87
131
128
151
56
69
88
106
67
110
120
110
114
69
87
175
78
87
88
89
76
123
121
175
87
89
129
154
127
120
69
106
144
134
128
131
99
107
136
147
96
181
119
117
147
174
115
96
111
115
87
114
119
78
112
68
175
76
106
115
143
89
115
75
99
140
78
119
125
94
113
87
194
163
78
172
110
165
80
80
76
119
100
118
120
104
110
144
76
106
88
76
74
115
94
76
117
80
76
175
69
110
95
69
120
78
175
144
83
132
156
132
80
94
123
107
88
156
163
134
129
166
119
80
119
121
69
102
85
115
124
115
166
103
175
110
100
120
112
154
87
87
118
87
80
112
91
87
69
109
60
99
100
112
119
69
147
132
109
96
96
128
156
109
119
107
166
91
88
100
87
140
148
197
76
138
151
80
112
69
116
75
76
94
118
117
138
59
137
160
156
100
119
80
153
97
112
119
80
69
101
95
165
183
175
128
56
83
87
76
88
107
156
69
113
110
54
78
131
103
107
104
91
139
106
69
134
80
76
121
111
149
96
76
87
87
76
140
117
99
57
115
68
91
102
136
69
118
134
107
87
69
93
154
99
103
163
78
117
69
88
126
90
112
87
104
131
175
85
69
146
87
99
134
129
118
80
87
175
119
143
136
187
66
80
80
69
69
69
87
87
91
120
92
99
74
137
176
63
82
78
72
126
80
152
163
76
102
96
66
87
104
95
93
91
88
88
99
197
118
84
144
130
99
80
69
87
80
98
120
154
69
99
90
110
119
101
90
126
123
56
120
69
76
80
104
80
69
106
72
102
80
69
131
120
118
78
102
117
88
89
80
117
156
137
140
80
106
69
89
128
75
120
104
88
141
87
127
128
96
118
52
54
166
87
159
196
169
165
107
88
128
123
107
175
80
101
127
52
90
171
94
72
131
117
119
80
144
80
136
107
122
112
140
117
120
88
156
86
117
137
120
128
111
52
104
114
76
82
76
96
76
78
78
96
118
115
89
150
185
114
78
149
80
69
141
80
80
127
107
215
80
87
148
69
88
69
121
69
130
143
154
160
80
69
101
115
115
90
107
69
175
109
104
104
69
111
115
183
80
76
88
164
137
137
163
76
156
119
80
88
130
69
102
100
128
80
123
105
98
119
175
80
95
80
73
110
93
43
78
197
100
89
105
89
163
69
123
132
78
113
88
94
175
147
77
54
115
136
99
94
154
91
151
112
99
104
89
94
127
112
69
96
76
120
95
54
131
97
124
99
130
69
69
111
89
131
118
69
99
136
85
136
89
72
129
99
96
122
96
119
154
78
138
111
156
127
94
119
87
197
132
89
54
107
131
87
130
89
113
94
58
97
72
78
103
80
118
69
120
100
117
152
99
69
88
133
80
85
56
63
69
134
69
172
90
96
103
100
154
147
134
79
146
121
100
76
125
151
69
72
76
99
144
145
110
78
119
100
154
102
98
101
64
87
106
132
112
126
115
122
131
87
99
129
151
131
98
93
64
183
146
93
99
120
69
80
209
106
69
137
163
91
145
160
101
136
76
76
78
118
122
75
128
119
197
80
110
93
107
52
136
120
66
119
100
175
134
96
74
96
128
66
66
99
87
176
76
151
123
67
118
136
66
89
84
107
151
154
118
110
127
187
122
136
71
132
113
197
80
119
141
87
152
128
104
76
136
94
89
80
197
134
78
78
105
121
148
80
134
134
119
107
69
69
119
118
71
110
153
89
92
119
80
76
76
145
69
76
89
87
74
123
113
88
110
74
146
107
117
109
101
128
157
69
155
76
133
69
164
100
107
90
78
64
99
131
99
107
60
131
112
78
106
175
164
91
95
79
140
109
155
117
69
126
67
87
80
175
136
80
88
120
102
71
113
133
96
97
69
111
143
94
185
101
145
105
69
134
155
87
80
66
106
87
69
89
107
133
140
80
82
154
121
88
84
121
107
141
87
80
93
103
91
87
91
96
78
80
96
160
76
147
69
99
99
69
93
88
99
154
80
78
101
75
91
92
97
118
75
107
112
74
120
87
104
107
199
100
76
148
153
173
104
69
110
60
117
87
99
97
136
78
112
69
69
110
94
156
72
85
120
175
121
121
103
120
123
91
151
89
121
112
155
95
78
96
80
121
119
78
119
100
120
69
80
131
102
107
83
109
160
121
103
144
78
128
110
129
85
100
94
72
87
121
175
160
99
119
87
134
89
141
104
140
109
101
69
103
128
178
129
80
106
52
110
93
69
80
125
76
98
107
117
69
138
76
88
93
154
80
83
69
154
93
80
137
146
153
60
148
131
72
88
112
104
80
80
80
175
136
143
69
151
69
85
78
99
87
107
80
100
90
175
95
151
100
138
127
175
110
118
110
136
122
123
69
121
136
134
120
80
113
92
107
85
78
76
131
119
128
94
80
80
85
134
85
145
135
104
69
80
76
52
160
89
104
88
69
131
89
122
109
102
115
94
127
100
117
110
76
113
87
115
56
80
136
76
117
107
144
95
104
88
76
117
72
76
69
94
99
89
146
154
88
107
76
119
72
140
93
136
124
78
109
118
73
128
99
144
89
156
88
175
115
119
93
99
201
87
136
78
136
69
95
130
125
69
119
88
102
120
109
72
78
95
69
99
197
80
108
109
89
116
80
102
156
111
67
91
136
76
136
74
144
104
78
156
107
119
104
131
151
78
101
89
132
110
78
130
74
74
76
93
154
130
147
82
80
132
64
87
151
125
112
67
69
128
107
76
69
67
102
128
197
156
72
78
137
93
160
80
87
134
67
128
72
83
121
140
99
148
80
96
80
111
124
139
145
80
129
103
101
91
80
104
127
52
112
94
52
149
75
80
56
98
88
101
76
134
107
118
117
93
110
135
72
151
71
111
92
121
156
124
76
94
156
110
119
89
95
78
80
133
54
113
88
78
111
69
94
163
122
104
88
104
95
127
69
100
131
100
80
85
134
80
174
80
69
78
99
69
72
89
68
175
101
75
106
88
102
136
155
106
159
120
96
155
88
136
87
87
85
132
102
112
153
146
138
88
76
95
89
113
87
80
89
94
88
117
115
80
107
69
89
80
134
85
96
120
78
89
88
107
117
175
99
146
72
112
80
122
83
110
97
80
154
121
100
111
163
87
155
155
87
112
87
85
99
140
154
87
87
119
106
117
118
107
121
148
72
52
115
91
94
143
175
136
106
154
69
76
87
129
87
123
119
99
80
94
76
109
155
88
80
69
110
107
156
144
72
104
80
104
69
100
110
112
120
80
87
116
76
80
110
99
56
137
94
175
156
69
132
110
99
104
80
175
126
88
123
197
80
80
197
117
69
121
91
107
102
80
137
140
80
72
144
120
80
72
134
94
122
99
163
109
117
100
88
104
107
209
128
115
131
100
79
87
88
78
87
154
99
112
69
104
98
128
80
102
98
96
80
164
175
111
133
119
71
132
76
69
96
69
118
140
119
125
83
197
89
80
83
160
120
54
104
137
104
88
123
80
151
109
87
127
71
93
107
66
82
151
111
138
69
80
132
145
140
111
121
123
110
126
94
74
197
80
121
133
199
104
87
174
117
83
133
107
143
89
159
126
110
126
134
140
95
80
89
120
118
93
123
80
74
69
109
199
119
92
80
76
109
107
186
181
154
118
112
89
120
163
114
121
93
109
69
66
93
145
134
99
112
145
106
154
148
88
100
128
175
76
119
76
106
78
106
68
129
69
94
119
99
128
119
139
52
90
69
185
80
109
89
96
88
136
142
86
98
99
78
52
110
94
118
175
102
89
119
80
80
107
89
104
132
128
93
107
121
87
109
80
95
96
101
106
123
91
87
130
101
119
154
116
137
119
158
69
80
102
136
102
101
110
80
87
69
138
152
112
119
89
88
120
127
196
154
85
116
104
136
119
89
113
103
114
154
166
136
155
89
110
119
98
74
69
78
115
134
174
68
140
98
80
94
130
110
78
145
76
142
89
78
112
69
119
112
80
113
119
147
76
89
72
96
78
115
150
99
69
91
94
68
197
119
151
111
89
134
82
89
109
107
131
137
130
163
99
74
78
162
121
83
72
136
151
117
80
89
87
104
143
107
69
107
112
80
154
141
69
95
120
72
88
119
115
95
144
156
115
124
98
91
69
89
154
130
88
80
87
56
80
54
99
88
118
88
117
89
127
107
140
134
71
126
66
69
87
106
140
174
130
140
155
106
112
54
80
96
158
101
130
164
154
74
80
148
104
80
112
69
119
110
95
154
123
103
88
87
80
80
80
69
175
109
110
97
78
76
52
89
156
121
121
197
112
115
154
113
87
99
93
92
78
117
118
181
96
80
129
87
102
138
107
99
91
127
118
123
154
118
193
115
119
98
126
109
111
119
131
80
80
172
80
136
119
117
99
91
117
143
88
151
94
91
89
74
69
139
109
69
80
87
187
87
96
128
99
114
140
80
76
67
88
88
120
113
56
119
91
80
129
125
145
156
140
128
69
148
122
151
175
87
69
119
117
140
76
88
97
80
72
88
81
122
91
175
87
113
80
89
94
72
87
105
110
119
107
117
80
87
72
69
109
109
111
104
119
78
104
163
131
108
93
69
88
90
115
92
80
117
69
72
96
156
74
107
121
117
119
119
76
91
69
112
74
143
201
69
80
148
110
80
115
145
98
140
78
80
120
140
100
68
69
90
140
62
154
96
106
120
95
76
104
109
80
128
107
154
83
110
69
69
136
69
121
153
134
78
115
104
154
88
134
166
78
69
109
120
69
69
101
92
107
116
107
116
123
76
121
107
102
106
114
69
157
94
87
126
83
69
127
142
155
75
69
129
87
72
140
93
110
146
80
98
110
96
107
155
76
163
140
104
106
80
154
86
99
87
78
119
175
102
80
78
120
146
140
52
80
107
69
107
142
104
107
133
197
107
117
104
120
134
80
99
128
118
87
69
104
76
128
76
69
102
197
127
119
69
98
110
89
93
80
93
128
174
131
78
101
64
72
100
87
78
80
97
80
96
118
88
122
96
78
152
123
93
92
76
111
94
89
118
134
107
128
109
54
118
117
89
69
69
157
143
87
69
78
102
145
86
120
136
118
107
78
99
112
91
99
76
113
109
80
80
144
127
110
87
143
156
99
69
94
118
96
101
121
111
110
99
104
113
140
71
102
80
69
154
100
155
69
157
110
154
90
69
95
58
74
87
93
87
94
151
52
119
136
120
146
79
147
119
134
78
94
80
93
110
80
119
136
99
123
107
69
117
80
154
119
76
79
87
119
117
98
120
103
99
127
106
175
91
96
110
87
119
69
69
109
131
107
99
96
80
110
131
119
83
136
100
89
118
72
80
197
140
111
69
91
106
90
78
155
128
102
154
80
157
97
113
156
92
96
140
154
162
96
109
78
131
83
93
76
119
111
88
131
108
112
102
154
66
107
87
119
139
118
66
85
100
120
69
136
101
117
92
175
128
96
151
96
174
174
93
94
197
109
113
80
90
87
93
136
156
69
76
125
59
98
90
69
175
137
163
111
119
80
110
89
131
89
80
99
89
101
104
128
133
107
112
80
163
87
146
136
185
171
96
69
72
85
89
126
123
72
80
69
69
136
113
80
154
120
124
107
115
69
123
140
99
87
154
87
78
119
94
74
80
123
109
76
109
102
107
101
121
123
69
109
105
116
154
80
120
88
164
91
66
110
80
91
128
107
69
72
199
99
87
87
117
184
103
94
136
80
144
172
89
144
102
95
88
136
104
89
119
119
80
121
94
109
72
164
78
131
78
69
197
140
131
122
137
171
120
69
120
133
76
136
54
91
69
123
72
106
124
144
155
80
154
104
197
101
136
112
140
91
137
96
69
109
78
89
87
96
83
108
69
90
125
80
59
117
155
112
96
128
95
125
76
120
69
183
80
80
137
94
113
102
94
109
80
95
113
80
80
97
109
111
99
76
154
69
163
136
131
107
76
133
80
109
140
146
128
142
94
127
113
125
107
95
104
78
89
139
69
156
109
87
127
100
80
59
100
120
104
69
110
93
119
197
92
80
78
72
111
119
93
69
99
140
121
104
109
87
123
117
69
87
138
76
78
135
87
69
80
64
119
106
136
138
88
80
78
69
80
128
131
157
80
131
85
66
122
109
104
115
107
87
140
94
112
52
78
76
69
121
112
72
99
76
136
165
154
140
136
128
107
76
93
78
135
94
156
119
93
127
181
87
122
91
99
78
78
86
122
107
127
80
103
74
124
126
69
76
69
102
113
69
88
99
100
122
120
140
54
201
74
99
122
78
66
128
99
69
109
119
128
121
97
80
119
96
104
109
111
134
123
166
142
134
109
115
88
122
78
145
128
123
199
131
104
120
88
89
154
76
80
99
86
52
112
111
149
124
94
109
146
87
154
88
69
129
106
113
80
106
80
114
105
80
128
80
85
151
89
76
102
154
199
76
90
97
102
69
134
69
128
119
95
78
106
129
132
155
59
114
80
149
131
104
88
80
175
87
146
101
134
89
154
123
69
89
140
54
109
74
80
88
118
131
147
104
108
88
134
175
112
113
138
82
88
128
151
113
69
69
79
110
156
133
135
72
110
156
88
69
78
76
87
98
140
128
117
80
43
91
143
139
99
89
145
110
120
139
195
175
118
120
89
114
87
88
128
143
91
134
122
107
117
88
156
90
109
83
69
128
69
120
114
80
88
132
111
134
175
123
94
87
154
98
140
78
75
128
94
78
154
101
145
126
133
99
119
104
69
87
107
43
99
80
197
101
76
130
174
106
132
101
115
93
117
120
138
113
76
87
98
102
117
99
163
87
80
78
88
120
136
115
80
197
134
107
97
107
107
87
87
106
93
136
86
104
109
163
183
87
112
156
80
155
118
156
80
91
76
119
99
107
76
80
123
142
96
175
93
144
78
74
69
128
79
136
137
80
115
119
101
172
154
111
175
89
80
74
109
87
78
78
113
91
126
102
106
123
96
128
69
89
96
146
175
110
98
69
164
146
112
119
94
93
110
89
110
141
76
94
88
76
146
147
143
118
107
109
74
197
115
99
138
117
80
74
80
80
87
147
88
99
138
100
80
66
114
113
66
69
106
112
75
158
117
76
117
67
80
106
122
121
88
79
80
120
140
78
103
137
76
102
145
115
52
119
149
96
80
119
75
118
59
80
76
72
155
99
128
119
128
78
112
99
89
69
119
120
112
100
69
69
112
80
91
114
104
114
96
117
78
85
99
76
136
151
89
175
80
93
117
140
120
111
98
154
120
80
136
137
109
100
69
76
129
69
78
155
74
80
119
115
76
128
68
76
124
87
106
74
112
91
90
131
142
88
128
130
108
99
128
114
69
87
111
122
119
96
89
78
101
123
120
93
78
100
154
139
99
104
60
109
119
69
80
199
80
95
174
80
89
104
162
130
85
156
87
130
100
118
87
104
121
150
120
88
89
88
120
158
119
101
99
69
140
69
72
83
157
104
78
78
120
94
69
133
104
120
120
122
80
126
78
164
154
71
175
94
155
126
69
122
151
76
104
119
92
69
89
99
138
96
140
111
120
107
111
110
113
69
69
143
145
99
125
87
122
104
118
147
125
141
54
98
197
79
104
119
94
80
183
141
74
175
117
80
187
69
87
119
126
125
88
78
137
63
78
145
83
91
80
56
69
76
118
118
115
80
120
78
109
138
69
80
122
107
113
56
87
130
119
87
106
145
89
69
80
164
69
110
137
98
69
127
142
134
104
69
121
154
80
72
145
187
110
80
69
132
131
119
84
128
98
98
107
87
107
130
102
101
119
96
143
72
133
90
96
72
152
80
94
80
128
85
80
123
94
69
136
114
91
104
175
87
158
102
80
123
76
132
120
134
119
121
75
88
80
93
127
141
100
80
121
119
105
145
88
131
80
113
69
119
107
127
76
140
102
69
69
82
94
69
69
109
132
87
80
80
80
156
117
69
88
76
148
145
85
64
69
176
99
87
110
93
138
162
164
69
78
99
175
76
175
80
119
80
183
153
91
59
76
120
85
89
107
88
117
115
94
94
103
140
72
69
119
128
103
93
107
96
123
118
151
87
80
119
78
120
90
80
108
91
102
119
78
107
136
76
69
69
80
76
69
76
120
75
120
162
106
104
120
78
119
113
87
76
110
80
104
89
197
99
177
101
134
107
137
69
175
78
74
140
67
76
104
121
110
112
142
121
78
94
94
131
85
69
137
76
113
102
87
144
91
154
120
69
129
80
80
64
79
107
100
149
115
88
87
74
80
89
103
99
69
127
138
83
103
90
109
112
85
93
89
54
85
120
87
94
116
205
78
76
94
112
89
119
199
87
91
94
76
80
101
89
69
75
69
58
78
112
148
94
87
121
103
96
139
85
143
131
107
99
69
133
93
91
131
163
80
83
78
92
145
110
99
102
107
101
85
70
90
80
153
110
122
76
106
113
104
114
115
78
76
89
126
117
76
88
117
94
111
151
128
74
89
175
154
80
89
80
78
123
111
128
78
96
85
99
100
80
139
178
80
89
119
98
90
154
104
124
81
96
97
136
175
80
140
154
147
99
69
110
119
98
99
131
80
52
134
52
111
78
109
105
130
69
80
143
80
118
107
175
110
122
88
76
96
111
106
120
130
92
93
117
97
80
76
140
146
154
66
104
163
111
120
85
80
91
98
78
78
119
78
88
80
67
154
120
69
131
119
69
131
78
99
69
74
114
117
107
104
80
101
127
76
87
126
73
175
69
133
80
94
147
145
80
80
85
78
76
96
127
76
73
107
109
80
95
111
90
119
117
175
91
87
103
87
104
96
124
69
80
78
87
93
89
69
80
114
100
106
94
96
88
80
80
69
76
69
96
144
110
147
95
113
127
146
107
128
103
104
140
107
138
69
80
131
96
137
122
72
76
76
94
113
133
101
69
107
106
76
135
93
76
107
119
88
97
144
175
155
78
89
87
76
131
97
91
71
79
122
79
123
106
80
87
113
91
89
113
80
76
143
87
67
119
131
119
175
106
91
163
166
72
74
175
154
43
119
92
119
117
110
122
111
82
112
76
134
128
107
154
87
122
104
87
134
119
80
80
120
96
80
131
91
156
89
84
99
113
140
80
106
148
67
120
119
107
113
96
155
175
174
119
67
145
141
111
69
99
68
128
119
122
80
82
137
113
131
137
93
72
110
104
146
123
78
101
87
138
89
123
82
140
69
126
175
69
127
154
110
144
64
129
122
114
109
154
80
144
80
128
126
87
69
110
113
127
76
97
128
137
109
175
80
69
87
78
109
151
76
164
91
123
101
69
69
89
187
105
119
131
106
136
160
90
78
134
124
80
101
112
66
107
134
78
79
109
109
156
134
109
80
115
138
160
123
103
175
75
87
144
69
147
152
75
69
146
69
133
93
121
81
89
78
87
106
87
131
122
98
129
120
80
89
83
91
118
162
69
151
117
113
175
102
106
136
98
127
76
131
52
78
94
88
120
116
127
102
149
117
80
68
69
152
93
96
104
112
133
151
78
131
80
80
101
80
103
69
69
145
118
69
150
76
110
89
80
74
80
83
99
88
78
92
76
76
100
80
133
145
80
163
197
106
124
93
93
78
83
119
69
99
175
152
147
112
78
106
185
118
96
197
83
91
100
113
80
106
69
80
114
83
104
52
80
89
131
131
111
69
146
119
89
100
102
69
89
117
131
154
72
154
152
123
174
187
116
80
80
104
43
85
119
106
85
137
131
130
69
76
80
107
119
85
43
99
142
69
80
87
78
72
69
80
87
101
94
136
71
114
94
76
72
113
96
137
76
99
138
85
80
197
113
80
78
119
70
118
89
112
134
131
110
83
78
107
107
69
80
83
113
78
122
102
76
106
143
115
80
80
154
131
120
107
80
154
156
74
87
97
132
69
113
69
119
117
112
80
83
69
73
118
104
106
76
154
175
80
134
140
119
156
109
112
76
140
117
88
113
82
114
117
78
64
201
80
74
118
113
142
150
99
58
121
104
143
112
80
134
137
69
80
112
175
163
76
80
117
162
89
82
163
119
123
118
76
80
110
67
87
109
101
115
69
69
143
114
120
90
119
142
95
151
123
154
110
117
87
106
123
87
166
183
89
146
83
181
175
100
120
78
136
78
158
119
119
99
117
140
78
131
110
142
131
147
110
107
154
54
120
101
109
146
121
69
131
109
69
113
120
106
88
99
102
156
80
87
156
90
80
78
76
80
175
80
80
128
174
107
133
164
106
69
154
117
76
128
148
78
101
69
143
88
140
121
143
118
156
136
78
120
80
76
138
119
136
102
52
199
120
151
143
140
119
96
93
69
99
126
78
156
130
85
76
91
145
169
114
99
114
87
155
156
88
136
149
107
87
119
155
81
69
91
69
99
113
115
72
118
69
145
99
128
118
136
127
128
115
107
76
82
100
166
80
60
115
131
93
96
88
151
91
138
92
181
58
138
131
87
121
69
69
130
104
183
78
118
95
146
93
120
111
113
120
131
76
107
87
96
112
106
153
76
152
93
87
89
102
122
106
56
69
120
151
94
80
66
122
69
129
119
122
104
106
99
93
89
87
78
130
58
80
139
87
87
113
78
94
72
99
147
89
107
113
91
112
99
197
83
149
117
71
92
95
88
78
87
69
113
174
87
67
148
80
119
147
67
126
87
69
87
76
103
88
128
156
69
137
107
120
124
119
72
88
128
69
91
110
112
69
107
185
175
90
121
110
164
106
72
112
147
107
74
93
54
197
163
174
165
113
131
119
74
91
130
113
87
99
87
91
69
120
88
80
80
118
56
95
119
155
141
100
89
80
88
102
60
104
144
104
88
116
119
128
128
128
131
154
197
131
142
111
96
119
80
85
146
52
120
97
80
97
126
107
134
119
148
88
80
105
88
69
78
115
78
112
121
151
76
163
76
97
94
73
145
91
205
69
148
94
52
127
80
89
96
106
154
110
72
175
120
134
119
112
102
69
121
117
87
69
117
102
80
146
76
123
120
69
136
163
115
80
80
91
87
128
112
116
91
122
118
80
90
119
83
120
69
80
80
72
104
158
80
154
101
107
133
133
175
156
78
148
119
125
69
99
72
145
110
118
111
87
80
56
72
76
112
138
124
123
69
112
76
119
110
76
119
115
87
96
175
101
197
87
80
80
78
99
128
88
120
175
132
78
109
110
119
110
132
115
137
79
78
91
154
80
80
95
76
119
78
76
69
108
66
145
96
80
128
114
117
175
99
78
107
119
66
139
80
128
107
109
110
69
145
155
78
134
120
80
127
94
69
96
136
122
163
115
80
110
110
131
90
88
128
110
85
80
134
140
89
128
87
154
118
118
136
126
146
199
126
89
112
154
160
113
87
154
76
93
57
155
69
106
80
134
151
76
82
57
120
107
107
121
78
80
94
163
83
102
115
93
143
123
147
157
123
113
78
80
154
87
80
69
107
136
124
120
52
122
111
78
121
93
80
98
69
156
120
151
131
103
78
80
89
101
109
107
94
80
73
107
87
110
117
87
142
76
95
149
128
88
112
199
156
131
154
104
89
56
141
156
135
87
89
80
145
69
107
143
154
154
75
121
94
113
131
152
76
98
99
116
116
96
52
114
175
121
54
117
87
69
78
136
140
93
197
123
107
109
145
120
138
93
87
88
120
88
94
93
94
160
66
56
119
133
54
127
74
112
157
80
78
185
99
68
122
171
120
87
175
162
128
111
87
94
119
113
106
120
169
88
107
89
127
128
175
59
181
122
148
95
106
112
91
105
101
110
94
185
119
119
147
69
43
80
76
127
131
82
67
130
113
89
78
107
85
113
76
174
108
87
69
76
145
120
136
93
69
69
108
79
80
69
80
106
101
129
103
102
87
133
76
120
100
116
126
87
88
69
76
129
69
113
104
124
81
151
87
151
137
134
143
135
80
96
136
101
69
69
119
128
175
88
80
88
93
76
110
101
115
89
174
110
104
131
139
120
104
136
80
69
95
164
125
122
131
151
164
154
80
87
106
102
129
128
88
80
146
120
94
156
80
128
147
120
163
128
70
85
126
115
108
99
128
109
163
69
107
67
141
71
80
107
80
143
140
99
131
69
109
74
122
110
124
72
119
106
154
101
76
126
94
131
128
80
120
128
96
187
149
114
91
99
54
94
112
106
94
143
97
104
93
134
80
117
119
69
104
102
115
102
108
130
109
174
175
109
100
101
118
80
88
130
116
80
80
139
121
106
175
76
78
80
110
92
107
114
98
78
76
76
76
69
106
152
57
80
80
175
69
113
87
88
154
78
119
69
78
87
126
80
96
76
103
89
140
124
98
69
69
140
133
154
146
134
87
127
124
69
88
118
76
185
110
89
146
146
107
107
72
96
134
83
162
95
68
156
78
129
120
147
102
120
101
122
110
163
164
126
112
99
80
164
136
119
141
69
99
78
74
169
120
69
66
69
102
111
122
93
132
80
128
78
151
142
87
144
93
119
89
87
156
98
120
99
119
113
139
114
113
110
80
85
69
128
163
110
128
139
140
120
107
126
136
88
69
78
66
110
134
128
78
87
120
151
87
129
69
107
131
124
110
138
133
78
156
69
128
110
80
126
87
80
102
94
148
127
120
136
120
117
164
94
134
80
151
85
91
118
69
154
165
59
99
78
80
113
95
107
133
56
154
140
181
108
99
80
146
126
121
72
155
80
83
109
69
80
69
104
103
131
121
80
130
69
114
119
112
143
123
121
127
76
94
124
80
80
69
69
69
110
89
106
121
80
91
52
69
134
163
80
71
120
101
119
110
96
103
120
86
133
110
80
78
117
106
76
72
109
128
80
103
80
90
88
134
116
80
136
80
107
129
121
80
93
69
80
96
93
78
136
132
82
78
87
93
87
165
164
85
127
152
130
104
96
63
97
156
69
80
102
80
102
119
119
80
69
85
119
69
101
131
110
175
72
69
88
59
69
87
141
91
104
80
88
131
131
140
129
106
107
119
154
88
99
58
134
134
89
91
76
154
111
89
107
80
109
72
90
151
85
106
89
87
123
80
112
174
78
92
132
78
56
87
80
119
130
103
175
121
76
136
87
187
80
112
121
77
80
94
95
87
69
95
154
80
87
107
69
115
133
112
171
109
109
115
151
152
94
197
154
80
111
164
121
87
69
155
164
91
87
109
103
89
93
95
87
100
109
89
85
104
129
129
94
95
114
89
112
121
136
104
122
109
84
175
147
109
109
138
89
118
134
143
80
127
76
80
145
54
69
113
127
111
78
136
99
76
127
124
106
145
107
80
120
146
89
119
78
87
94
99
88
118
146
78
88
84
128
69
69
129
80
126
107
160
154
107
137
110
69
76
140
76
154
69
172
87
78
144
74
81
102
80
134
120
69
146
88
99
110
80
117
87
120
156
137
99
163
103
104
127
76
89
87
197
93
134
91
79
66
131
201
117
156
154
164
67
123
99
132
87
106
107
119
80
52
87
87
87
175
127
144
107
89
89
107
113
101
147
175
74
73
83
80
161
112
87
183
75
72
78
69
80
131
78
107
89
155
96
107
91
80
76
80
112
120
80
72
103
113
119
94
110
69
69
106
80
164
175
80
80
89
102
121
136
117
111
107
96
106
138
104
69
96
131
121
127
99
123
69
80
101
155
101
106
143
134
69
99
92
120
137
96
134
124
106
104
128
69
116
145
115
54
72
101
80
96
93
109
95
104
119
82
95
197
52
132
107
175
77
43
87
117
117
153
159
119
80
112
94
122
94
72
69
92
130
121
74
94
119
107
69
154
100
56
69
77
148
101
96
140
119
80
119
80
175
125
121
132
120
92
175
150
133
91
127
119
101
87
111
99
131
109
118
134
162
80
94
119
111
88
120
124
89
104
112
113
87
76
88
66
115
154
72
127
119
93
119
80
87
80
101
121
117
99
99
96
88
91
154
110
131
137
69
78
78
131
109
137
78
78
128
128
94
160
122
125
156
69
110
54
107
137
117
98
131
88
108
54
104
143
69
74
69
134
154
114
98
97
109
80
93
122
120
154
120
93
118
80
111
114
154
113
80
120
87
113
99
74
105
160
76
83
122
66
117
69
117
121
101
128
52
102
163
110
132
112
104
109
145
130
136
74
174
143
90
114
121
88
112
156
156
134
80
152
112
87
74
136
120
155
135
125
78
133
101
129
88
112
91
72
94
107
133
154
99
99
80
94
118
143
120
80
96
79
69
76
69
130
154
134
91
112
112
136
121
76
109
109
132
101
89
122
105
148
199
78
94
72
78
154
110
80
160
105
131
120
72
115
112
83
131
93
121
72
80
80
126
174
94
119
80
119
93
69
147
133
80
69
113
108
85
78
115
119
78
120
67
72
106
120
174
131
104
181
110
106
108
148
120
88
54
146
109
80
109
54
156
69
96
119
115
114
100
183
119
89
87
154
69
118
107
90
134
89
64
114
115
100
87
107
96
175
154
89
117
78
80
145
87
150
134
99
88
87
124
79
90
197
107
114
76
87
101
103
99
110
113
94
175
201
104
128
69
102
83
89
83
119
119
76
122
148
80
99
108
175
76
137
119
140
154
87
93
150
140
96
94
89
120
110
153
152
54
87
91
134
93
93
110
78
139
109
137
109
115
109
106
69
69
99
78
69
72
80
100
111
119
131
69
119
114
156
69
77
106
82
96
137
136
119
120
87
87
80
69
151
126
151
96
94
94
100
99
93
128
133
197
120
78
114
107
78
54
78
117
104
89
101
165
172
119
69
99
107
87
129
69
52
94
69
119
88
99
119
175
69
104
162
113
107
101
78
107
78
120
104
78
99
169
134
88
80
78
78
101
109
109
78
98
119
100
69
72
118
76
69
103
69
74
120
112
100
197
158
132
69
119
94
94
145
78
121
114
134
110
56
89
89
110
104
90
137
183
90
128
94
87
43
177
69
106
175
72
122
80
133
76
114
69
156
76
114
134
121
117
78
106
69
87
88
78
87
80
107
115
72
95
80
78
107
113
102
76
117
119
99
87
161
129
105
80
120
96
87
76
109
113
78
146
87
145
75
93
120
80
123
156
112
104
128
174
131
107
112
76
80
159
87
80
78
107
101
69
119
128
131
122
102
130
119
104
80
89
126
118
154
148
126
113
123
163
143
113
119
120
120
87
43
104
119
154
120
89
99
139
151
80
69
89
80
135
89
148
119
111
80
69
94
101
89
80
134
66
69
78
109
134
94
145
149
80
144
104
119
87
76
118
131
80
76
112
74
160
133
122
76
197
94
87
155
98
76
99
118
80
118
104
120
69
109
89
115
60
145
87
134
107
80
162
80
82
123
78
126
118
157
72
119
80
151
87
80
80
102
121
136
80
107
201
69
69
147
197
69
94
175
115
197
119
140
89
69
72
54
98
78
74
66
72
126
157
160
109
110
94
145
96
183
151
131
126
71
66
80
78
136
69
102
128
128
131
88
64
82
164
128
197
80
120
78
136
80
127
183
151
113
115
80
85
154
87
131
140
113
118
151
78
151
89
134
69
119
97
52
113
80
72
125
87
52
99
54
80
109
77
119
155
72
113
69
119
69
156
107
88
76
80
136
142
93
80
127
79
91
80
76
89
120
80
159
121
88
80
165
78
79
175
74
121
88
89
137
88
67
117
120
131
151
172
90
80
106
72
89
105
154
69
109
80
80
110
103
101
151
113
87
88
163
113
100
95
83
126
112
143
89
69
67
108
69
80
85
80
107
127
154
136
69
106
96
110
107
106
104
197
119
78
119
58
88
69
71
156
90
127
174
80
106
126
113
72
68
156
69
104
165
87
151
98
89
111
87
126
113
99
106
113
197
64
143
103
89
113
175
101
117
197
152
95
163
87
96
99
94
80
72
64
120
87
69
69
114
69
80
134
107
80
118
80
156
93
80
72
115
151
111
52
154
93
101
103
160
120
93
69
131
114
98
119
72
87
107
69
144
109
78
94
96
132
104
69
78
125
91
118
119
107
96
101
101
113
107
72
78
108
56
154
175
72
87
101
111
107
112
90
78
156
106
69
85
87
117
130
95
197
175
138
156
143
148
128
80
78
69
89
79
94
121
78
112
185
103
119
102
87
119
104
112
101
129
58
143
89
154
56
104
128
124
87
109
96
118
109
80
109
107
87
72
112
69
96
87
90
100
113
87
162
119
76
78
93
76
136
175
96
109
88
88
114
69
113
80
78
80
96
85
107
85
80
120
69
78
140
140
118
121
80
104
156
78
102
143
122
64
80
81
134
175
175
137
133
113
113
104
115
80
80
89
76
140
80
72
115
120
92
87
132
139
154
91
54
87
76
147
93
72
103
121
110
112
80
130
109
76
91
75
119
80
104
120
120
74
80
93
107
103
136
96
76
69
106
112
134
121
175
150
87
66
154
74
118
131
119
80
127
119
101
76
119
119
87
85
89
80
154
89
154
104
69
175
120
107
69
136
82
76
87
151
80
111
133
69
92
88
105
134
132
107
98
104
175
78
101
120
156
90
80
163
154
156
197
119
104
103
102
87
111
80
88
119
98
128
88
76
110
109
87
161
106
101
93
99
106
136
110
136
172
107
102
74
113
83
97
104
106
115
88
89
134
80
121
120
119
112
69
83
102
140
120
115
87
69
83
103
69
69
72
78
105
112
94
119
74
64
104
140
120
175
87
56
86
99
120
93
78
136
80
106
94
128
83
131
119
117
117
100
87
72
69
84
134
128
134
118
131
89
83
101
78
134
67
80
88
133
103
112
78
160
99
119
80
78
93
69
111
76
148
87
52
69
96
119
69
85
154
133
101
125
109
123
87
136
79
69
119
85
106
119
100
117
87
108
102
80
43
131
76
175
93
98
102
122
89
69
95
87
87
115
144
113
86
87
80
80
142
151
181
91
87
120
80
134
135
197
108
175
95
102
142
89
126
151
175
90
69
175
137
67
119
121
114
98
99
80
90
118
155
104
146
80
152
87
112
110
121
109
52
100
103
43
69
131
144
113
80
109
99
113
128
110
72
98
80
123
92
99
89
88
107
80
175
118
131
52
104
126
134
83
175
110
120
92
151
156
154
144
106
57
109
101
128
185
71
78
120
89
129
102
146
77
183
123
106
80
156
87
114
120
148
80
156
144
89
156
120
112
115
107
134
120
69
92
109
83
120
92
150
114
98
80
112
78
78
110
134
69
110
112
114
94
107
59
107
133
130
78
119
91
119
124
146
110
94
80
111
69
69
175
109
133
150
103
147
110
96
140
90
80
69
88
112
128
69
99
121
99
82
87
87
119
88
146
76
99
80
85
137
87
147
66
78
119
76
80
99
87
131
132
181
130
77
146
148
88
87
132
113
112
136
98
69
104
123
111
90
69
80
76
78
94
110
87
107
71
76
56
80
94
69
110
74
93
69
126
155
80
104
93
87
152
133
80
81
107
69
111
85
94
94
94
123
175
106
73
80
145
154
130
113
99
89
120
78
107
134
100
136
99
107
80
126
81
134
134
88
69
78
102
128
56
169
106
52
175
100
140
138
90
160
52
85
78
175
99
96
66
102
119
163
106
128
76
80
124
83
130
112
149
54
103
118
111
80
111
104
107
80
115
151
52
80
154
54
110
66
175
128
119
111
135
110
100
93
80
104
80
175
111
123
78
102
201
78
88
78
110
78
87
119
83
91
121
151
99
154
76
117
117
131
100
76
80
72
83
69
101
80
134
106
153
172
87
69
92
93
78
109
88
69
93
91
121
99
151
123
43
74
118
121
110
120
104
133
99
131
121
185
69
102
140
80
128
72
137
145
80
104
80
74
121
112
160
75
76
116
133
89
78
90
156
80
80
99
118
146
134
94
154
87
110
94
108
104
87
94
94
66
99
89
54
132
87
136
76
140
78
103
80
113
127
75
69
94
175
111
120
97
69
76
80
69
96
119
72
174
80
69
89
98
109
76
80
87
107
108
153
124
117
93
115
74
112
69
122
175
76
175
63
107
91
181
93
128
197
119
80
151
112
130
175
81
127
120
80
154
156
163
99
72
80
127
69
149
120
76
117
78
147
112
80
66
106
78
87
78
69
197
97
95
118
134
134
80
129
123
130
76
80
58
197
122
105
102
87
134
130
107
88
88
128
109
69
87
91
113
121
133
99
90
88
96
147
69
69
78
106
80
96
80
107
98
151
87
119
107
154
99
114
154
76
80
69
87
54
93
114
76
104
175
154
69
80
177
110
121
87
80
54
172
128
99
120
100
117
69
160
87
94
197
94
88
80
69
80
69
88
93
69
95
126
69
74
185
119
78
135
107
175
119
133
90
120
69
80
85
98
68
136
99
107
87
80
181
128
80
122
128
96
128
72
175
89
80
122
88
100
69
80
119
157
155
89
80
83
175
165
121
119
107
123
154
93
80
147
106
150
80
80
87
96
74
80
78
156
99
87
80
129
118
164
98
124
87
85
104
130
64
156
78
153
80
150
131
76
130
142
93
99
83
142
78
145
76
197
121
80
137
89
76
69
131
138
88
175
128
118
72
101
80
80
152
90
85
78
78
72
94
92
102
91
120
151
89
69
87
88
120
155
175
117
83
154
88
80
100
101
69
106
87
56
115
105
69
126
76
99
120
104
76
151
174
87
148
78
89
175
111
151
122
128
125
154
136
181
87
69
91
124
128
69
127
136
87
74
140
88
69
117
93
72
130
72
88
132
153
76
91
111
96
85
157
113
69
123
76
115
123
88
99
69
128
80
135
156
116
110
103
114
156
69
94
104
88
127
129
95
93
99
76
88
96
151
119
106
80
107
80
94
66
109
101
104
107
72
144
66
109
69
94
122
175
134
123
87
101
78
76
80
96
69
124
87
137
80
89
145
120
107
80
99
59
88
88
119
165
94
93
76
151
89
120
101
76
91
175
88
106
76
140
112
87
91
69
102
96
107
176
132
94
132
104
82
69
151
134
121
78
94
102
109
96
122
130
95
80
69
87
78
109
80
134
197
113
125
100
87
110
87
76
88
88
175
69
113
94
133
80
54
126
98
147
139
103
75
117
146
175
140
80
104
128
94
93
87
78
112
69
197
91
120
134
119
116
152
124
87
175
94
95
69
87
104
96
80
93
131
76
107
115
99
115
112
117
80
80
80
120
154
87
134
131
107
147
87
197
133
69
159
107
87
163
131
85
93
128
83
102
58
119
141
80
89
143
109
146
107
156
69
120
154
148
119
109
136
151
93
76
74
88
56
119
78
145
73
104
76
76
132
156
148
112
134
96
69
136
78
136
143
148
69
93
121
106
101
87
89
128
102
112
66
125
175
135
94
93
96
152
88
102
100
74
78
85
140
120
88
113
119
128
96
99
117
119
132
87
104
111
80
105
88
126
113
119
103
69
111
109
63
154
143
71
69
107
80
80
80
94
163
151
148
69
133
136
104
85
107
94
80
117
85
131
89
80
85
89
166
119
80
117
80
104
87
151
117
128
160
87
91
71
120
111
87
120
117
119
107
69
74
107
43
60
114
108
101
120
121
83
87
108
111
131
96
69
144
120
133
134
80
98
80
108
124
87
110
154
110
69
151
140
131
80
78
95
165
91
69
140
100
117
79
103
118
76
115
82
80
104
113
109
83
87
121
110
102
131
89
72
104
94
80
94
155
117
156
106
99
80
88
69
102
145
119
96
136
109
119
146
128
87
94
148
121
152
43
133
142
87
89
134
152
106
76
120
101
80
74
121
91
127
155
96
94
82
80
154
154
141
80
137
76
102
154
120
104
78
136
175
107
87
112
144
80
87
91
118
105
80
87
117
106
80
120
82
113
91
94
143
121
117
140
69
88
154
122
69
109
89
95
119
140
155
107
128
157
144
110
102
95
100
80
121
69
109
197
91
93
80
89
80
78
74
162
87
112
76
69
197
116
104
98
107
69
152
91
93
121
94
165
128
119
118
106
155
119
123
94
69
175
128
99
66
89
76
96
80
83
155
110
156
114
119
90
87
74
60
78
123
69
93
132
154
140
113
130
80
71
80
78
107
106
109
120
108
72
110
87
120
78
109
78
88
117
101
107
175
78
175
117
89
155
69
95
117
107
111
102
146
72
155
80
117
121
161
78
88
80
78
69
88
145
80
87
154
147
88
88
99
175
76
140
69
89
69
154
151
107
140
80
69
107
76
116
140
100
152
80
124
80
119
95
109
137
87
80
128
112
96
109
80
78
69
87
117
99
112
113
104
78
98
102
132
128
94
91
136
87
104
112
95
110
89
87
130
128
76
122
99
112
129
80
174
112
99
78
140
152
107
87
147
107
78
117
67
80
69
72
99
99
110
114
136
72
96
134
107
88
121
72
133
127
64
107
109
83
88
88
146
69
106
172
80
113
132
78
128
88
99
109
118
122
69
105
120
163
69
88
120
117
149
128
76
93
75
145
115
87
155
104
131
88
128
128
94
139
69
76
99
114
137
114
76
87
113
128
100
78
78
88
106
117
140
108
43
89
87
88
104
80
88
99
112
138
69
76
112
89
121
80
99
154
87
90
137
116
69
106
126
91
69
80
183
116
80
111
163
75
100
80
69
80
88
148
134
69
112
94
80
163
80
109
175
87
126
122
89
72
117
128
140
87
78
111
156
175
112
119
119
69
68
155
131
120
104
119
80
154
107
119
69
101
69
94
89
154
112
80
127
78
151
69
143
110
155
161
117
113
122
76
69
78
156
118
194
76
154
119
87
77
101
78
72
152
136
114
89
129
43
107
125
143
110
119
112
80
80
134
80
155
75
82
62
108
142
80
96
76
85
137
155
87
110
94
109
80
117
69
162
143
116
121
122
110
85
131
105
72
145
89
109
110
97
84
91
128
76
80
137
101
87
137
90
78
95
106
175
151
156
69
103
114
156
118
63
120
69
66
98
112
140
87
103
56
143
104
121
117
121
112
120
131
148
136
52
125
126
107
76
109
80
78
100
110
93
67
89
120
175
96
104
140
80
132
80
128
123
154
107
69
104
148
101
78
69
124
69
80
112
78
106
128
80
72
43
106
120
117
130
110
119
120
66
137
74
96
119
69
113
78
137
82
87
74
133
80
107
85
69
127
87
76
148
113
197
107
71
107
88
69
144
89
113
113
145
54
146
121
109
105
110
76
117
154
119
187
132
88
80
199
103
123
96
98
80
80
78
92
80
72
114
63
145
80
87
121
87
67
109
141
106
96
148
137
122
69
131
80
69
88
87
99
87
89
107
72
87
96
69
134
129
163
93
120
128
131
154
119
89
83
78
109
131
141
103
93
69
128
106
129
69
136
60
197
127
151
137
103
88
104
89
143
69
87
140
155
197
106
109
112
69
121
107
114
76
85
99
72
90
151
54
107
80
118
114
120
154
136
76
78
100
119
126
113
80
88
69
155
78
120
80
154
128
138
78
128
101
197
104
91
123
69
74
80
52
69
89
110
107
131
78
131
74
122
119
128
136
95
79
74
80
119
87
197
106
112
144
76
69
142
119
148
138
89
175
138
148
106
78
125
99
95
85
143
72
96
89
107
128
143
144
118
132
98
158
137
119
115
87
80
113
124
154
80
156
99
73
79
85
95
80
101
69
139
78
128
121
128
103
107
109
107
101
82
72
127
78
104
76
87
142
88
98
78
80
81
145
99
134
163
126
93
114
67
72
113
124
121
109
80
87
114
113
69
56
80
140
120
99
75
99
76
95
87
120
120
120
154
113
122
85
87
127
118
98
137
142
137
87
145
95
110
128
103
91
121
76
128
106
88
107
69
78
76
114
101
94
69
154
104
131
87
118
83
106
69
107
175
79
92
102
120
76
109
87
99
102
108
80
69
102
163
146
107
109
76
85
76
96
78
154
108
120
106
107
111
114
96
175
98
74
99
128
118
109
92
110
121
69
136
96
74
138
134
78
94
120
129
100
89
96
106
201
109
151
143
129
154
123
155
109
106
87
78
144
112
78
112
148
110
151
109
88
169
80
128
90
69
119
134
69
78
80
117
120
69
80
91
87
78
121
96
119
93
76
109
88
87
69
106
91
72
88
69
134
88
107
54
69
121
80
199
89
67
110
156
113
110
109
109
80
66
90
131
136
128
148
112
96
91
80
118
88
183
151
104
87
78
87
113
161
80
94
120
114
175
131
117
137
125
105
80
148
99
72
78
119
117
56
128
111
108
118
100
99
94
104
87
80
78
80
109
76
80
128
117
185
108
130
99
113
115
119
129
80
80
121
91
117
89
69
109
75
119
123
69
98
116
63
110
136
87
104
112
106
151
87
87
107
120
96
126
80
101
69
91
60
76
106
107
100
107
112
134
112
134
94
85
69
94
54
113
71
69
127
110
67
120
174
107
76
99
72
76
96
111
136
112
88
141
109
124
69
159
78
175
88
158
131
106
107
135
151
89
163
127
94
175
76
106
76
80
83
103
127
163
88
132
83
121
69
52
78
119
148
57
148
96
117
118
143
100
157
76
175
127
69
69
163
119
163
128
71
69
69
72
145
169
69
120
120
87
101
117
69
175
117
87
140
114
128
72
90
109
74
91
109
104
143
88
118
95
80
88
67
129
175
88
143
106
80
89
73
76
136
80
87
123
107
164
145
136
107
88
120
74
80
78
120
76
101
76
67
121
69
137
110
91
120
119
80
110
120
109
133
96
91
114
113
131
80
151
112
99
197
69
69
72
79
99
134
136
107
103
107
109
140
87
87
120
122
126
99
91
117
185
156
88
99
109
99
127
88
107
140
96
102
99
140
59
128
140
124
145
87
117
69
79
136
80
69
69
127
69
69
128
113
80
154
87
76
76
90
128
56
99
119
94
128
87
74
87
133
119
87
80
67
119
80
106
154
74
80
111
104
131
107
78
69
136
96
60
74
69
78
80
112
145
76
69
54
197
110
113
80
74
100
88
93
88
114
106
130
80
131
131
120
80
152
153
154
78
78
137
88
74
120
99
87
80
142
72
72
120
99
69
143
110
69
94
113
114
67
87
69
163
127
98
122
69
110
74
126
80
93
156
89
122
123
54
95
115
127
101
87
103
127
136
140
106
131
160
80
121
117
183
119
110
98
93
115
112
88
120
76
112
85
129
76
87
56
120
78
80
88
127
113
97
78
80
146
174
112
99
134
111
96
54
168
128
80
120
69
121
89
136
164
78
72
143
76
107
100
140
128
119
100
75
131
147
91
80
88
136
80
99
69
121
101
80
89
120
140
140
79
162
126
107
107
128
172
146
80
87
197
154
143
76
80
115
96
114
131
126
88
72
94
127
151
155
87
95
75
101
154
142
136
75
140
104
104
122
69
88
88
99
80
155
135
175
80
78
69
113
87
125
160
69
74
115
78
95
106
64
138
134
136
120
98
124
80
107
145
88
80
80
76
88
87
122
101
76
121
100
134
102
121
130
136
99
103
127
113
156
89
127
88
156
88
88
76
87
154
109
119
83
151
85
103
69
69
101
90
113
134
107
119
109
120
83
88
69
54
136
80
113
100
154
76
76
150
98
110
69
89
138
99
75
140
121
72
154
78
131
102
69
151
137
102
52
130
90
152
78
102
175
114
136
89
87
120
139
121
156
94
155
87
122
110
154
102
121
120
78
127
96
119
111
128
78
52
197
163
143
115
110
78
134
87
134
76
121
88
156
69
119
93
109
83
83
93
117
69
110
69
97
80
151
104
126
76
80
78
111
80
76
99
109
78
127
171
122
69
119
56
175
69
80
76
119
157
132
99
54
120
144
67
114
123
126
96
146
111
99
74
120
78
136
96
94
69
80
88
88
112
140
115
80
93
112
59
98
95
197
107
69
80
128
121
56
116
87
152
132
123
82
132
156
89
136
72
110
88
69
118
80
110
89
106
117
67
89
107
156
111
102
77
110
76
78
107
119
130
77
100
87
76
111
128
112
80
87
137
80
109
109
80
108
80
80
151
135
129
83
78
72
108
80
136
69
69
80
94
87
120
119
117
114
133
163
69
63
131
89
101
137
80
80
106
94
110
72
113
109
78
76
83
140
101
80
105
148
80
134
69
87
69
78
63
156
146
142
80
117
104
100
69
134
91
87
107
123
82
76
104
130
74
99
99
80
76
132
69
88
110
99
76
175
131
111
88
117
112
94
87
110
94
67
99
87
69
104
117
184
174
109
75
134
113
56
76
87
89
116
106
143
80
78
154
141
69
111
154
69
117
114
131
107
144
69
136
69
88
69
78
75
145
100
93
154
76
94
80
127
118
119
162
76
115
94
100
76
69
146
110
69
120
138
89
132
136
72
82
69
154
120
114
78
199
91
119
106
109
156
149
85
94
130
88
78
90
79
80
119
127
74
78
93
78
85
80
106
131
109
100
156
128
156
91
87
131
88
88
78
119
155
175
69
144
88
128
121
76
154
125
80
94
87
80
96
136
197
87
169
90
99
136
140
109
87
87
80
131
120
78
154
131
89
119
120
136
69
80
136
105
123
128
120
101
142
107
110
123
110
80
67
107
80
172
76
138
101
87
120
114
99
175
80
163
78
120
145
88
80
93
68
80
94
87
93
100
140
119
88
154
177
145
80
69
43
164
123
148
99
151
87
87
109
127
116
100
78
131
135
111
159
115
88
92
117
102
108
145
140
80
201
94
87
151
89
112
185
119
127
148
120
76
69
139
120
87
98
118
136
101
112
73
175
110
145
121
87
119
69
109
129
131
136
129
107
92
87
80
56
110
93
144
69
112
87
89
120
127
175
69
144
89
136
106
102
76
80
52
137
80
107
106
80
136
89
69
110
120
115
103
56
69
116
139
80
112
116
104
87
117
69
69
80
80
87
109
101
119
107
87
155
110
154
80
128
88
94
89
97
109
76
113
124
115
88
143
80
80
117
52
99
80
69
87
119
95
107
94
109
102
125
80
76
89
56
120
121
93
93
145
124
145
87
89
94
88
109
78
88
118
111
89
89
63
113
131
126
76
52
116
87
99
134
163
128
80
149
138
101
80
54
163
155
128
129
83
78
110
80
163
121
64
104
87
91
120
90
78
91
151
76
118
117
113
80
119
88
107
145
128
129
80
134
101
107
109
120
130
164
80
175
107
69
99
126
131
153
91
94
69
60
82
163
111
93
106
110
146
115
87
80
92
119
106
93
107
136
94
78
99
76
94
115
128
175
108
69
117
101
78
80
154
120
120
80
104
80
107
88
87
54
138
127
140
78
99
154
166
119
67
92
119
113
155
119
156
117
145
109
197
136
105
94
106
119
63
96
83
135
124
120
102
101
148
83
128
113
140
122
87
80
129
119
125
89
74
88
69
91
111
107
80
103
197
78
131
88
136
124
93
78
104
156
69
80
144
80
104
79
87
88
141
99
143
125
99
128
112
69
93
69
84
126
148
175
99
137
124
87
80
80
128
121
69
134
87
100
166
80
87
100
140
131
91
88
121
102
99
111
76
131
99
107
131
106
106
80
107
104
104
127
133
136
143
99
92
130
156
92
80
131
119
111
109
69
78
113
164
88
91
99
80
87
89
119
102
136
94
87
73
80
134
131
120
87
80
134
128
119
120
69
126
99
87
151
91
89
88
114
117
127
69
75
136
69
89
87
87
117
104
99
94
110
121
68
66
78
76
76
110
76
69
164
136
80
96
144
78
99
127
87
93
99
80
99
151
88
78
109
107
80
80
90
121
100
131
88
189
99
80
112
120
104
88
151
128
87
78
99
154
83
134
87
80
93
87
136
59
113
148
111
83
121
76
151
117
78
113
87
93
127
102
146
120
88
110
124
128
69
78
120
107
52
139
87
94
80
156
91
78
78
87
80
155
69
117
76
94
152
69
110
94
88
87
171
54
104
85
123
133
56
127
96
131
107
78
99
124
76
144
99
102
69
118
164
115
106
132
69
144
89
76
175
137
100
199
148
93
69
127
119
119
87
138
104
154
154
114
122
93
106
113
107
80
135
115
155
96
196
91
76
90
102
175
131
154
134
134
146
91
132
54
131
101
95
96
111
174
54
92
142
72
149
80
121
132
87
52
80
130
71
140
76
150
110
107
81
67
114
80
126
96
93
131
107
87
69
60
114
140
131
80
80
99
87
126
104
120
69
94
80
78
96
94
114
99
104
91
69
100
78
136
72
87
80
87
76
156
76
80
88
158
97
88
107
54
130
119
69
96
131
166
93
52
69
107
104
138
106
88
113
121
88
120
114
115
136
107
109
99
101
118
175
87
69
131
110
128
90
103
87
72
156
137
115
118
80
76
119
197
91
76
110
128
80
110
119
150
118
76
119
94
80
89
175
197
148
164
81
80
130
115
119
99
107
89
107
149
78
127
76
138
175
80
69
145
80
113
106
134
113
88
85
99
120
72
136
134
56
101
69
83
64
156
101
69
148
99
155
136
76
80
113
106
128
80
107
175
106
96
99
87
119
71
175
131
87
154
156
72
69
112
87
113
69
69
118
146
94
125
69
115
123
104
69
154
76
127
69
88
78
91
69
87
89
69
144
128
107
156
76
151
69
99
87
88
127
77
87
141
99
67
112
111
153
71
87
94
95
119
99
111
119
120
80
52
80
99
106
107
87
101
101
109
119
87
80
136
107
148
119
74
119
175
131
119
107
130
66
89
107
176
69
120
80
156
100
124
144
109
98
72
80
101
128
174
146
120
120
89
124
132
74
80
110
98
87
78
94
76
103
121
163
111
85
154
69
88
78
165
112
117
132
89
152
119
76
87
112
106
88
112
129
146
125
99
89
72
119
69
107
99
87
75
101
130
104
175
69
101
95
120
87
118
99
56
80
162
69
138
99
80
122
172
78
66
113
134
128
74
143
106
110
103
119
185
69
72
80
133
123
76
78
69
89
154
80
76
89
76
107
128
91
88
78
60
120
100
115
95
89
110
87
80
88
64
76
106
96
145
137
69
69
151
89
69
140
109
80
120
119
69
93
88
117
112
88
89
79
102
142
87
80
104
123
127
117
96
128
126
81
72
71
113
113
71
128
107
143
155
94
78
78
59
111
80
72
54
80
154
120
134
103
78
103
113
117
125
80
80
175
134
130
151
156
121
89
109
126
83
59
52
156
78
94
109
88
80
69
88
112
156
93
99
94
110
131
133
112
148
151
87
106
127
80
131
79
122
155
78
78
95
89
113
94
113
90
163
107
79
94
76
102
89
80
197
117
134
99
107
79
78
69
163
80
125
119
69
125
156
76
110
106
104
128
80
136
67
154
94
78
118
80
80
73
69
94
116
88
85
78
117
80
157
120
87
101
120
78
52
97
82
115
119
93
90
106
98
80
106
80
140
69
80
102
95
120
131
120
114
93
124
110
131
107
74
109
111
159
101
107
114
129
119
114
69
132
104
76
76
89
69
104
93
106
89
128
154
79
106
80
67
96
128
119
127
117
90
121
69
91
99
69
139
197
155
80
105
99
80
80
117
80
100
117
128
156
114
69
78
121
78
76
112
152
131
114
113
69
69
52
112
91
89
120
137
140
69
119
99
127
152
80
138
76
163
80
127
127
96
111
119
78
123
69
110
163
89
89
60
94
113
106
109
80
113
201
119
120
87
175
113
87
76
134
120
87
105
88
96
91
134
109
110
69
101
89
120
80
88
124
89
90
80
107
175
74
131
161
115
74
112
68
78
52
94
87
101
114
80
97
134
88
124
98
80
103
155
133
87
112
109
128
113
143
109
80
127
133
96
119
131
102
117
72
89
57
109
131
115
107
128
136
140
151
124
119
157
148
69
119
69
77
138
75
69
96
122
163
80
119
74
102
74
76
126
137
120
89
88
80
175
80
154
155
87
94
80
133
112
113
87
119
78
120
91
83
139
145
80
119
92
80
111
98
126
120
112
81
175
136
80
100
96
112
149
59
146
110
96
78
69
74
148
89
129
91
137
80
72
150
101
69
128
71
135
54
80
89
141
89
119
103
174
99
109
107
87
119
76
142
109
111
137
91
140
109
69
91
157
88
119
43
80
101
175
107
69
80
72
120
111
128
76
102
119
69
151
78
88
187
87
88
87
185
80
107
69
105
108
69
104
118
129
68
93
72
71
107
80
80
123
99
80
134
89
131
117
104
113
79
121
78
78
106
148
128
85
122
117
88
119
99
118
93
91
122
79
90
121
113
112
113
102
156
133
72
80
104
87
128
112
94
88
121
69
137
80
112
98
123
91
80
76
94
91
69
59
69
136
69
78
122
128
91
104
130
87
52
124
121
76
110
88
80
119
76
112
78
69
120
111
175
91
89
115
89
120
99
64
119
94
123
100
96
123
121
112
115
88
128
106
93
83
131
107
78
73
148
93
113
76
107
88
74
87
69
94
78
118
136
88
82
115
110
94
99
119
88
73
134
80
93
90
140
140
89
151
107
185
102
151
117
75
106
123
80
152
128
136
117
80
137
156
69
80
76
88
88
93
85
91
112
99
125
101
107
119
80
69
136
119
120
148
78
78
88
151
78
162
128
175
96
94
121
99
94
164
140
126
94
155
117
99
146
80
83
107
93
89
99
154
98
80
74
72
88
101
106
115
119
94
175
144
151
74
174
78
151
136
54
69
72
134
154
128
92
107
87
118
120
128
112
91
83
155
78
76
127
94
91
131
115
101
106
74
132
85
134
154
104
88
80
115
107
93
128
120
130
74
80
138
102
107
146
117
120
107
106
145
119
111
141
137
67
131
130
56
175
99
149
122
80
91
92
80
106
87
76
185
140
93
85
201
78
93
88
80
54
120
148
138
156
90
54
72
151
90
69
58
131
119
127
103
69
76
136
69
102
85
87
69
109
110
151
125
101
120
74
76
88
69
104
87
78
69
99
128
150
117
140
145
78
80
67
128
88
119
91
112
82
115
164
120
128
136
106
78
136
77
136
175
154
72
119
78
64
89
69
69
123
121
111
141
74
99
141
80
91
76
117
80
130
143
73
132
152
123
154
120
151
128
103
69
76
175
142
110
114
155
85
115
69
108
83
78
123
175
92
93
92
76
153
76
104
124
99
92
76
115
100
72
89
111
88
85
91
112
78
95
143
94
87
136
131
95
175
88
197
80
109
80
107
154
137
120
99
131
117
175
131
79
87
94
103
112
99
69
104
175
143
80
71
130
80
128
94
80
69
136
131
76
119
67
133
69
107
67
76
54
82
128
93
109
183
112
142
131
156
118
96
88
104
107
90
93
78
138
95
117
136
98
112
113
88
76
151
80
89
146
131
148
97
160
100
146
56
107
127
76
145
154
121
134
123
80
80
111
104
98
114
109
96
80
80
148
54
145
76
100
124
58
107
106
129
104
87
115
119
119
76
88
83
69
114
119
87
106
87
94
160
85
88
78
99
109
78
76
154
175
80
92
134
122
90
154
134
80
87
130
113
139
155
119
127
80
120
107
80
69
87
101
127
85
143
76
69
97
89
74
118
138
128
78
147
90
92
146
91
156
80
99
136
88
119
80
78
52
92
120
113
107
111
90
78
87
93
183
111
123
126
131
66
90
131
141
113
176
144
88
150
117
83
118
94
76
115
118
69
140
87
109
114
106
131
78
123
132
54
136
107
119
175
85
96
80
69
80
146
76
80
133
112
98
109
154
132
91
80
128
106
120
132
87
128
147
80
112
78
154
77
80
151
74
131
88
154
74
52
175
120
106
118
104
87
115
72
76
85
95
80
90
75
96
109
87
85
151
69
156
54
98
72
89
87
137
78
115
69
119
88
96
197
156
151
120
100
104
93
120
80
69
72
99
87
100
143
119
63
69
104
87
124
94
116
140
69
93
155
100
112
140
152
130
156
140
99
80
145
97
76
164
154
78
97
109
56
87
156
72
119
120
80
69
84
113
87
109
88
120
100
83
175
90
66
94
121
90
85
69
83
69
112
88
87
78
95
102
116
69
87
128
109
101
131
127
82
93
78
119
106
69
87
128
107
119
174
89
120
80
76
136
132
78
69
88
175
175
117
78
134
197
100
88
82
80
187
88
169
80
102
123
78
99
60
99
102
85
87
109
94
113
113
69
87
80
72
142
119
113
88
80
118
121
69
113
134
76
80
69
80
100
119
119
72
145
148
83
151
148
81
156
89
117
119
199
118
88
87
87
107
119
79
197
152
134
101
131
80
148
128
174
107
136
109
80
93
111
88
89
76
128
101
128
145
120
69
80
109
99
132
64
113
60
136
120
137
109
78
76
154
151
66
112
56
87
88
157
112
104
74
156
125
69
175
109
151
80
87
80
149
87
80
80
143
69
110
69
120
78
69
69
129
106
131
80
95
148
109
133
106
145
76
94
117
78
72
144
87
154
120
90
128
104
125
100
119
100
100
80
107
93
126
80
100
78
162
96
69
175
120
134
120
119
69
76
112
80
80
152
80
136
155
87
83
119
145
120
88
143
154
124
76
149
133
94
144
130
110
149
156
99
156
155
124
126
69
69
87
69
94
106
80
83
80
120
93
151
154
104
117
94
91
89
80
101
93
107
80
80
109
80
160
99
123
69
143
130
151
89
76
175
112
119
130
151
105
121
99
144
107
93
128
101
93
103
80
136
147
43
123
87
181
117
134
120
69
88
119
90
113
147
69
76
113
122
73
89
80
110
80
175
155
117
111
80
94
80
94
80
102
112
89
69
152
119
88
80
80
69
128
154
74
102
119
123
113
110
78
89
137
80
143
54
94
69
69
63
113
109
175
102
92
69
89
114
145
76
110
72
75
85
127
78
124
91
117
153
93
128
102
137
92
81
136
151
69
76
87
80
151
119
113
106
59
93
156
69
117
87
197
131
118
93
119
93
109
164
78
80
103
88
101
76
122
93
80
119
109
102
52
89
101
138
78
76
119
108
118
121
118
119
131
104
156
80
96
145
119
88
123
107
89
95
121
80
76
155
137
138
80
156
109
103
80
76
115
151
87
128
80
140
89
103
69
106
127
78
78
155
76
123
152
69
175
115
136
106
119
199
117
136
97
91
129
162
101
78
119
111
76
92
93
109
99
80
101
175
78
69
66
121
80
107
72
83
88
69
142
154
123
119
95
89
139
69
120
80
133
101
107
119
119
99
58
119
112
199
144
154
136
96
80
113
80
143
144
72
78
124
142
126
103
85
175
88
121
138
80
119
145
87
136
128
80
140
123
103
98
148
110
102
108
172
131
163
163
107
80
87
106
91
72
72
71
88
80
114
96
145
72
76
94
125
117
175
69
93
121
80
175
87
134
99
117
87
146
112
99
52
69
121
138
134
138
69
71
109
127
128
99
119
109
118
199
85
136
122
95
101
87
80
69
163
92
127
127
101
106
166
88
76
106
76
133
99
143
98
120
147
69
109
100
112
80
106
111
80
54
82
134
69
120
73
87
115
197
154
103
87
119
69
64
76
95
76
123
116
76
80
115
144
139
69
87
88
80
85
104
58
88
87
78
154
80
126
109
78
117
89
101
112
120
81
131
75
73
114
123
107
175
148
144
175
130
123
76
107
145
101
78
183
80
96
128
99
197
87
131
107
107
69
69
107
131
79
175
80
128
111
69
115
94
120
127
69
80
119
169
94
69
106
120
112
80
108
128
94
93
95
91
106
102
118
114
94
128
119
80
100
104
69
139
134
52
69
76
101
120
76
119
107
69
175
121
99
88
121
143
119
130
67
80
119
154
145
89
82
90
111
87
146
183
88
78
90
78
96
80
104
56
69
109
82
83
112
133
151
72
109
100
115
119
127
109
69
69
111
94
69
80
144
80
91
111
74
121
85
69
69
110
137
134
126
110
111
76
87
131
140
91
169
92
89
80
80
96
77
69
87
104
113
164
120
175
69
99
107
72
100
69
137
107
148
145
114
72
80
80
89
89
68
76
175
110
80
94
124
136
99
143
136
76
87
94
94
80
144
161
102
107
89
114
76
185
56
113
80
91
80
134
101
69
69
130
156
121
145
156
136
75
133
94
74
43
105
96
110
88
107
146
179
121
102
100
115
67
87
197
132
107
121
112
134
104
175
98
68
104
174
94
120
140
69
119
84
80
80
74
87
110
139
69
113
80
110
99
74
145
112
88
69
111
136
120
155
126
73
80
89
104
91
99
80
87
147
87
99
114
80
175
147
79
76
197
122
69
92
80
88
155
136
142
120
128
89
154
139
153
123
106
76
119
128
120
78
128
99
69
97
119
101
109
69
80
154
76
76
131
69
69
126
76
76
80
78
146
124
148
155
129
73
109
107
76
72
140
43
78
87
106
88
87
112
120
111
124
94
93
57
110
100
87
99
130
80
120
58
78
87
114
119
90
99
109
109
99
102
113
143
54
121
88
87
89
64
129
169
154
76
94
139
124
91
78
123
112
78
80
160
104
96
101
154
93
125
89
86
80
85
96
112
142
113
125
124
112
112
197
89
109
87
130
80
78
89
89
129
69
194
156
130
100
78
76
114
128
115
107
197
118
96
130
114
69
104
56
104
91
126
87
54
87
148
197
175
91
147
157
113
87
112
122
87
89
131
175
112
56
96
74
117
106
97
102
155
97
102
80
80
122
156
116
98
78
156
78
100
151
128
99
100
99
156
145
75
106
113
76
151
152
92
106
137
69
117
123
117
98
160
138
107
154
80
109
152
106
91
93
107
93
141
129
87
127
107
102
72
112
103
126
87
80
120
99
78
76
112
112
119
80
99
80
102
99
106
78
137
89
87
175
111
74
54
85
75
78
76
121
137
154
80
113
149
113
175
80
69
132
134
100
119
142
78
94
134
107
99
119
158
75
107
102
118
152
145
113
80
85
88
110
156
80
123
69
66
96
78
156
80
110
115
113
117
80
110
72
123
119
56
146
114
110
87
88
121
107
127
120
96
123
175
155
175
76
99
152
138
148
93
113
76
143
121
119
99
103
87
80
66
115
56
80
106
157
150
76
78
156
121
124
138
163
103
91
118
78
106
107
96
108
69
149
89
69
80
137
107
80
81
94
91
74
117
69
101
99
93
78
141
131
197
76
109
127
154
99
106
156
120
175
140
155
117
80
75
138
69
113
118
113
109
104
136
160
141
120
142
112
120
112
76
154
80
102
69
175
78
108
111
96
134
69
120
146
104
89
120
62
129
78
72
120
80
151
69
114
175
97
78
64
107
80
88
109
76
87
80
121
81
76
153
119
83
128
147
87
69
99
92
109
119
143
131
197
176
104
107
175
136
156
69
87
76
95
109
72
109
123
156
87
87
83
118
80
69
131
201
80
80
100
100
104
145
183
143
143
121
72
57
121
124
69
78
96
69
69
80
144
97
87
88
76
107
52
106
110
85
130
100
102
85
107
74
147
54
76
134
95
94
111
107
107
72
163
94
128
112
120
80
87
113
88
131
114
80
113
80
119
131
117
80
76
91
128
78
88
120
107
56
89
141
109
129
56
99
119
91
112
101
102
139
54
108
121
69
97
69
66
78
85
78
131
80
80
95
80
87
69
74
59
73
134
80
94
147
91
80
109
91
107
76
120
110
125
164
107
146
114
87
122
77
52
138
107
80
107
107
80
136
87
131
134
69
107
94
69
72
103
128
94
137
119
99
91
175
80
154
154
76
72
120
134
99
80
96
80
110
80
146
107
69
109
141
119
80
140
109
120
111
69
107
113
116
146
99
131
136
146
88
100
89
128
130
142
160
80
97
103
115
185
71
93
89
117
76
110
72
122
128
161
129
80
88
117
115
89
82
120
93
64
80
120
118
111
132
183
121
80
78
175
89
87
109
74
120
117
154
174
131
111
80
69
111
76
123
96
72
76
110
149
99
136
107
148
111
143
76
107
100
175
104
106
113
74
166
112
128
92
136
110
87
69
80
185
76
76
121
125
129
88
149
129
133
123
99
174
52
117
80
91
60
88
91
100
76
76
87
128
120
133
130
163
76
69
107
80
78
76
107
112
76
142
76
110
120
80
107
69
183
91
80
118
95
88
88
136
92
109
102
94
109
72
108
127
83
100
109
72
110
69
120
128
99
110
111
107
201
150
80
69
103
127
76
80
143
80
119
106
87
80
156
143
134
75
115
127
155
102
94
110
106
107
69
130
136
80
130
54
154
122
96
80
102
99
99
175
69
80
138
197
131
116
69
78
76
137
97
106
168
76
101
109
89
98
113
120
80
125
113
80
69
120
106
99
151
117
64
88
54
111
76
161
89
88
119
101
121
91
132
80
96
80
163
78
87
84
75
94
138
107
80
88
80
145
107
104
69
69
102
113
107
69
69
75
89
175
112
154
104
175
56
64
88
86
87
74
120
113
115
80
109
126
112
120
109
78
120
112
94
146
100
80
80
133
174
85
109
99
91
80
194
80
69
113
93
69
175
76
123
156
120
149
107
138
80
80
69
111
87
96
93
99
119
112
113
129
175
80
128
85
64
114
154
155
111
131
71
93
69
106
99
156
132
54
69
109
129
88
117
131
96
75
99
113
128
107
126
99
56
95
122
99
119
113
125
78
120
147
80
109
136
139
80
126
88
156
52
67
136
69
69
99
143
76
99
95
120
78
78
107
132
76
107
119
89
126
80
76
121
95
115
107
130
128
107
91
120
109
101
91
121
112
93
144
72
107
117
96
119
87
87
120
107
139
89
131
199
151
102
69
156
88
99
106
112
96
99
136
151
117
100
87
114
131
134
80
148
69
109
119
107
76
104
80
121
119
164
124
148
122
87
90
69
89
78
140
76
110
117
157
163
69
102
78
78
87
80
107
151
67
156
102
156
66
69
80
120
156
128
145
104
163
80
149
120
119
85
110
102
163
69
80
123
152
117
99
112
112
102
90
72
109
69
69
118
88
88
87
163
155
131
96
137
88
78
140
104
64
154
122
175
156
108
119
80
80
111
160
87
69
80
83
93
94
128
93
144
104
131
88
87
82
101
80
103
94
99
110
58
80
139
147
127
134
145
133
102
128
76
88
138
119
87
125
100
87
100
149
110
93
128
131
76
80
160
138
156
199
101
78
69
112
89
69
77
72
80
154
85
80
117
90
114
119
110
133
114
155
150
87
69
80
87
88
54
102
80
68
112
119
114
107
91
138
94
69
113
94
80
80
114
87
109
88
99
113
93
88
96
80
111
76
69
119
99
78
104
74
83
131
74
98
111
80
99
175
117
101
128
142
119
107
58
156
113
120
80
104
99
156
132
110
117
120
76
87
69
81
87
114
80
115
154
93
117
80
113
146
121
78
80
110
128
151
121
127
96
121
87
80
117
100
129
107
80
69
155
66
107
69
151
96
80
87
151
123
151
109
175
120
125
87
93
116
103
69
80
107
98
63
56
87
130
69
100
80
88
103
94
76
83
131
155
154
124
94
71
102
113
80
140
106
100
128
156
102
106
139
64
156
131
91
78
69
109
113
89
134
107
75
113
123
93
87
89
75
80
83
103
101
130
87
82
145
69
119
127
72
175
87
129
87
106
104
110
99
163
119
97
96
175
76
87
99
103
154
99
138
101
69
69
117
94
134
52
128
72
94
140
78
102
124
123
87
87
90
78
96
131
101
64
107
101
69
161
128
108
119
88
107
112
87
120
152
109
111
119
140
124
76
119
145
146
69
175
128
101
131
116
52
131
143
174
43
137
156
131
164
137
88
78
98
138
104
107
101
128
101
101
80
80
89
156
131
110
118
80
119
145
131
109
144
69
119
99
145
104
141
163
52
109
175
156
175
72
152
136
115
54
119
73
89
96
107
128
113
80
147
69
132
89
69
80
69
136
131
80
93
127
97
54
113
104
142
92
88
87
107
111
69
141
152
87
110
87
146
94
88
167
54
93
80
140
80
87
87
120
80
124
89
78
186
136
119
136
148
93
66
69
88
133
69
102
56
109
80
156
106
72
76
121
119
120
73
137
120
117
126
109
153
137
143
78
175
98
145
94
76
110
80
201
115
104
133
76
130
131
119
69
69
107
80
78
96
121
101
69
90
115
157
151
128
145
138
80
109
106
107
88
113
80
91
76
131
113
76
58
112
80
128
96
96
85
132
76
116
69
102
142
108
87
89
123
117
114
110
124
119
80
123
112
80
87
93
109
120
104
87
119
131
120
80
155
94
80
87
119
87
112
79
104
83
116
99
121
142
120
69
119
95
85
126
127
134
87
67
134
120
164
172
114
69
98
85
166
69
58
102
88
164
127
89
69
112
114
154
69
89
104
96
161
112
80
69
80
76
152
69
128
56
156
175
72
97
187
154
163
92
90
89
131
124
110
94
136
117
120
106
80
150
116
106
132
69
104
128
80
80
80
137
121
123
128
121
130
110
80
91
172
96
106
80
100
111
110
156
94
183
88
115
134
119
119
119
121
67
143
88
120
104
80
69
175
80
89
175
80
133
76
175
89
137
85
88
69
80
147
123
130
120
56
99
99
100
126
140
69
151
76
156
87
110
69
93
115
93
87
78
90
121
145
89
175
106
54
106
80
112
87
111
120
120
112
112
121
124
197
115
72
117
88
82
136
121
109
88
124
117
101
108
91
141
93
87
76
80
157
87
95
92
87
69
94
154
72
111
76
74
175
104
80
121
69
154
151
90
80
99
134
71
89
80
85
174
112
113
76
101
119
104
78
107
81
93
120
156
164
80
129
87
145
96
120
92
88
88
99
148
94
103
129
104
127
52
123
144
136
114
145
129
96
80
145
74
124
120
91
127
96
172
96
87
80
126
109
93
78
160
83
90
107
74
199
104
76
93
114
154
154
175
69
128
115
88
87
85
91
80
103
136
76
80
132
80
82
69
110
104
120
88
100
140
76
112
87
89
80
175
87
98
78
140
80
119
78
80
140
99
163
107
76
94
78
72
76
88
162
87
119
109
128
126
69
120
131
69
104
156
106
80
75
155
119
155
123
154
121
124
80
80
126
127
118
63
119
67
110
89
83
175
119
131
131
96
145
56
131
87
69
78
80
85
142
127
88
93
99
127
148
87
128
197
82
152
119
83
91
145
76
86
109
100
139
120
80
107
185
163
76
78
69
109
110
76
132
76
78
125
112
91
143
151
69
106
117
67
93
136
80
125
175
80
69
85
155
120
88
162
131
162
75
78
87
119
74
103
119
87
151
78
115
105
80
80
120
101
126
108
80
90
69
137
88
183
88
162
122
80
126
119
83
181
107
121
87
117
201
107
113
101
80
98
127
120
98
76
134
134
151
106
129
133
102
78
112
158
117
151
81
101
131
143
174
101
154
67
89
113
93
119
181
88
104
118
117
131
80
106
76
127
78
134
131
69
78
121
87
150
80
140
109
75
141
101
143
113
69
87
154
99
104
125
78
99
157
69
110
127
69
80
95
80
163
67
130
137
93
95
128
87
120
57
68
99
78
121
146
56
78
81
76
56
78
102
117
80
119
52
142
115
107
99
99
201
156
113
80
94
69
80
88
80
120
129
113
76
113
133
154
104
77
88
101
115
109
151
118
119
129
94
109
127
88
128
72
99
85
156
89
69
111
120
89
90
52
121
54
88
100
87
101
78
121
99
93
80
88
109
69
69
121
201
143
52
80
54
87
104
100
101
120
107
83
99
114
76
74
109
138
89
87
107
90
119
88
155
137
120
133
112
69
91
100
69
104
99
113
115
122
151
101
109
136
112
143
124
145
172
120
120
66
69
121
80
78
143
80
125
120
83
175
124
129
69
76
54
160
175
140
102
100
118
80
112
123
120
121
80
155
89
128
67
119
76
95
80
120
54
119
76
151
117
144
80
134
134
119
115
91
69
100
123
112
87
84
74
89
129
87
156
78
52
91
129
110
90
104
109
107
78
89
80
166
114
109
136
132
106
76
151
66
107
87
121
120
109
131
89
80
120
127
78
112
95
162
78
117
80
144
43
76
80
129
127
80
117
145
78
78
66
120
127
80
136
69
76
122
127
104
88
151
88
118
91
140
118
110
120
78
94
130
134
78
155
109
80
107
134
156
110
146
101
106
151
74
95
80
147
69
98
87
87
148
69
121
69
155
119
154
145
125
88
175
121
140
114
94
143
89
99
69
74
145
107
69
104
78
140
88
72
128
145
117
83
83
95
104
78
99
115
106
110
111
131
99
72
123
99
102
118
125
89
89
148
175
69
102
93
76
72
134
104
107
113
103
75
117
132
107
82
119
109
76
175
197
131
56
72
80
119
118
117
127
110
126
131
91
106
138
78
94
109
96
80
157
99
93
56
155
58
120
150
99
132
69
154
148
148
120
97
128
176
122
113
107
119
121
76
52
106
99
109
174
134
115
104
156
78
144
95
119
162
121
119
110
96
93
69
154
124
89
131
91
117
112
175
119
106
113
85
104
85
126
80
75
104
133
152
89
93
140
87
83
87
80
74
82
129
154
136
76
99
93
175
101
87
99
101
143
107
152
162
120
136
132
106
128
125
156
93
96
92
73
80
113
99
120
89
110
148
76
140
110
64
119
87
80
80
148
104
69
107
143
78
89
134
74
108
119
118
54
112
128
106
138
78
69
87
120
87
69
76
94
87
197
148
91
69
88
56
80
67
106
125
175
100
80
147
136
91
69
56
80
76
101
112
147
195
93
52
175
119
69
146
110
74
104
146
123
71
136
88
109
185
69
152
99
93
88
119
113
80
76
80
175
80
80
109
155
71
107
57
88
158
54
157
109
87
145
69
87
115
78
155
119
133
117
69
145
99
74
91
125
114
91
106
69
87
119
143
128
112
93
80
69
69
96
101
119
134
136
60
74
186
134
69
112
94
87
126
107
128
104
83
132
110
97
164
64
121
101
78
120
78
104
104
106
175
101
78
175
112
119
129
90
123
81
140
69
98
125
90
94
133
123
131
119
107
109
154
99
76
109
80
134
121
106
154
87
133
90
80
69
54
134
87
96
124
156
110
78
127
117
80
87
107
116
69
91
69
109
80
107
88
110
101
114
136
76
87
110
69
80
52
72
149
134
142
80
94
114
120
96
117
80
154
159
136
110
175
107
69
87
80
89
134
89
110
115
83
80
110
87
67
69
111
154
101
87
101
88
128
88
87
146
155
80
87
69
145
78
146
154
156
78
122
69
78
88
87
147
80
134
80
76
69
69
80
91
80
108
69
143
83
131
154
88
99
156
80
97
69
109
90
78
102
104
151
128
104
94
136
128
156
121
109
120
121
131
107
116
79
120
102
120
119
87
107
139
102
87
131
88
149
154
91
93
71
73
78
175
134
64
134
109
110
69
133
136
107
127
117
151
69
76
88
113
131
136
103
155
99
154
152
109
78
78
114
80
128
156
81
111
104
69
96
80
126
98
80
126
112
119
120
134
117
72
112
69
174
72
119
56
145
156
150
120
175
175
88
80
154
99
69
163
110
92
94
89
118
72
107
119
76
82
110
160
74
104
151
109
119
79
93
93
78
156
93
113
119
197
104
122
138
134
197
67
136
120
98
138
145
69
99
131
175
98
136
154
69
151
127
120
60
88
174
87
101
138
99
74
85
94
116
97
115
89
93
88
89
78
90
122
175
120
97
134
146
80
98
156
69
101
175
120
109
105
104
89
56
121
107
91
104
112
134
142
72
100
72
69
108
76
91
154
112
123
83
87
80
88
112
98
104
91
117
99
112
99
133
80
90
109
102
87
54
134
120
110
72
72
92
128
87
119
101
134
107
78
69
104
94
68
99
154
87
109
163
85
80
76
106
99
100
76
134
87
66
78
89
103
78
88
137
78
82
88
110
104
163
131
79
80
128
69
151
89
109
126
94
80
127
121
111
76
163
154
59
87
148
94
139
96
87
106
128
158
155
109
76
115
151
136
112
80
78
148
67
69
117
115
89
134
152
78
87
91
100
94
80
131
130
72
154
88
80
140
111
69
69
154
117
120
99
156
130
80
140
110
80
106
119
126
175
136
117
103
69
107
142
107
98
72
72
88
104
136
125
137
119
124
110
76
127
87
128
156
154
100
87
113
110
80
120
117
136
120
78
118
175
156
134
131
100
96
151
76
87
76
164
119
104
109
87
141
80
80
72
87
69
145
109
115
134
96
80
117
107
109
154
87
119
144
87
138
80
103
128
109
162
123
69
87
131
87
111
104
116
69
133
69
99
107
110
155
113
166
135
94
91
111
87
69
144
94
80
94
147
106
109
76
128
175
121
175
165
76
107
95
87
89
159
151
80
56
197
106
155
72
134
104
110
78
102
107
160
87
123
80
94
85
128
73
72
140
129
100
109
137
78
119
69
105
99
154
80
141
106
91
129
123
134
106
93
69
90
94
80
69
80
94
145
72
128
76
103
80
76
80
138
91
128
88
69
110
78
154
171
69
94
99
137
119
102
119
143
130
85
88
106
149
78
102
134
80
90
91
78
63
110
172
102
151
144
87
140
119
89
118
155
69
116
76
69
133
109
101
80
88
80
120
104
185
69
128
136
155
54
69
69
87
80
107
134
88
80
89
140
69
121
88
87
150
91
80
107
85
79
80
127
104
120
102
88
94
97
136
115
54
104
121
109
88
89
93
87
116
74
111
130
106
146
136
102
163
113
114
96
108
175
117
107
132
78
107
125
163
95
69
78
118
88
151
154
128
99
131
80
96
131
78
111
52
87
143
161
58
109
93
109
126
129
136
152
99
113
123
94
100
133
131
96
80
127
121
69
95
156
141
143
109
76
69
120
128
109
136
156
102
136
110
137
52
128
120
143
164
112
134
110
103
175
80
106
80
128
91
104
80
113
96
120
109
127
69
80
94
121
89
110
110
102
76
147
80
69
109
163
96
112
109
67
149
113
59
85
76
156
138
120
147
88
102
89
90
138
78
69
175
80
107
78
52
133
63
98
83
114
183
120
112
154
76
136
104
123
107
140
76
96
80
91
80
96
113
122
79
89
80
121
121
93
93
126
74
199
95
127
75
117
99
148
146
87
123
89
80
69
197
134
131
69
175
69
128
87
154
77
96
117
109
90
69
175
110
96
98
72
197
181
91
80
103
109
109
80
89
120
94
85
69
137
80
162
72
128
96
114
69
89
88
153
121
97
88
175
110
112
136
197
75
112
89
175
80
109
93
80
134
80
129
127
63
164
88
94
88
89
106
137
121
58
87
106
136
69
78
52
76
89
89
88
87
94
80
71
80
154
101
119
140
69
120
93
93
111
111
80
80
123
116
78
64
126
111
124
117
131
106
109
174
118
87
113
131
69
128
91
107
156
88
134
87
164
156
139
105
160
56
128
134
99
130
129
110
80
75
95
80
80
99
69
136
69
52
128
87
175
87
113
69
104
76
87
119
130
136
56
100
82
107
76
124
103
128
94
72
99
120
69
143
80
106
90
107
156
117
76
100
89
185
136
131
94
93
175
69
94
175
98
94
80
72
104
166
106
119
72
163
118
120
110
154
98
123
103
107
120
107
106
69
80
87
144
69
145
94
86
119
119
87
69
78
136
126
151
109
102
87
103
80
121
174
90
78
185
119
129
123
106
175
121
74
80
164
128
118
80
78
69
69
133
85
78
117
151
131
106
136
100
78
118
131
175
122
119
132
105
197
104
100
115
101
87
108
99
99
121
80
157
116
96
89
96
134
81
78
177
69
80
76
91
131
131
131
109
100
94
76
88
197
85
122
76
89
114
113
112
120
76
91
80
136
87
88
90
91
91
129
134
119
109
174
169
175
75
107
76
136
131
150
134
119
107
146
78
76
155
154
131
159
94
74
107
139
122
56
147
80
124
109
89
83
128
88
78
120
115
125
87
87
151
105
76
162
119
75
69
69
79
94
99
151
101
107
83
87
121
121
71
76
142
88
87
119
107
143
87
156
115
80
80
127
120
80
153
88
151
103
175
99
136
112
128
156
76
160
138
129
151
106
120
76
127
143
80
121
111
94
140
78
120
96
136
80
80
91
76
156
69
87
163
69
88
88
76
151
112
107
74
80
113
69
94
98
154
93
119
120
119
117
96
106
74
94
94
80
131
120
197
69
69
119
69
91
88
116
117
69
72
99
98
76
56
80
69
93
80
101
150
106
94
107
140
83
175
127
116
115
118
88
159
76
151
128
80
74
107
69
112
152
72
163
107
131
80
87
109
78
93
166
128
100
91
94
94
112
119
120
85
89
133
91
140
43
74
73
94
115
107
154
80
144
131
156
197
93
154
87
137
69
106
69
121
87
143
102
89
76
117
110
89
143
60
112
112
96
154
87
80
89
175
132
95
140
78
143
103
110
117
125
89
69
134
156
172
94
163
137
69
87
175
121
76
88
88
78
130
101
80
94
59
87
99
113
131
87
144
134
76
172
113
69
138
131
72
146
69
98
145
87
87
120
113
120
106
54
111
87
118
87
120
112
137
91
89
72
139
155
80
80
81
118
76
134
131
87
94
128
96
85
152
101
133
171
130
66
110
147
106
69
137
182
119
104
154
123
104
121
131
78
129
153
136
145
143
74
154
88
87
98
91
80
78
88
137
80
117
104
111
104
101
69
174
84
87
104
87
125
78
92
134
134
87
88
119
115
104
112
80
121
117
80
94
83
134
89
119
109
122
131
197
172
121
97
129
69
104
119
94
69
99
84
111
109
90
154
136
100
152
128
126
103
80
98
112
128
97
69
80
109
56
74
128
145
154
131
69
124
142
209
156
126
69
69
110
140
114
146
83
87
112
88
91
72
139
131
137
69
80
128
80
80
80
87
117
151
101
162
71
119
136
119
78
89
90
109
52
98
78
140
97
120
119
155
104
99
87
121
97
87
94
69
155
91
128
92
117
149
52
140
87
140
134
143
89
80
87
120
76
96
94
127
69
89
164
136
131
138
109
156
87
134
107
122
112
117
132
96
69
87
69
93
156
89
137
132
69
128
80
121
76
185
80
136
120
128
95
113
94
110
80
175
136
183
76
185
121
140
88
134
119
115
100
119
111
108
87
150
197
87
110
130
197
109
101
134
93
197
69
94
78
68
96
120
146
54
134
119
101
99
109
113
85
80
131
125
88
107
137
140
107
63
54
134
76
80
89
80
69
76
132
119
78
128
87
76
143
87
76
119
81
76
78
123
87
85
121
106
95
197
103
99
91
82
137
117
140
91
140
78
89
80
80
78
80
72
149
110
107
80
103
113
89
80
136
106
80
71
87
69
169
90
115
102
115
119
59
104
120
85
87
146
70
74
72
106
69
109
156
142
69
131
78
197
134
80
132
83
99
93
104
54
131
69
113
112
94
133
95
175
69
111
160
128
54
78
117
111
87
133
163
89
104
156
132
117
171
136
82
88
109
100
80
122
155
109
88
94
104
134
134
89
72
81
87
87
144
152
80
89
137
52
134
113
81
78
134
154
111
80
106
127
87
149
87
87
91
87
157
151
106
114
94
69
133
134
151
107
111
155
52
119
105
175
69
140
107
154
136
109
109
151
80
114
99
109
74
131
95
123
88
101
93
112
104
99
154
146
87
119
112
96
69
112
110
111
88
117
107
80
69
127
113
93
123
87
80
113
110
100
102
109
69
80
128
120
93
82
121
83
117
128
78
119
119
79
104
119
71
105
69
120
104
119
134
67
69
123
117
76
95
87
130
164
89
80
76
146
138
156
93
175
99
99
117
66
89
134
110
118
174
76
119
76
63
92
78
114
88
87
78
80
80
69
92
112
120
78
160
142
114
146
137
98
80
83
78
93
106
93
108
106
85
87
119
74
164
97
118
107
80
119
95
126
175
119
134
103
91
106
98
91
80
75
107
134
66
101
96
110
81
80
76
67
98
82
87
69
60
69
141
120
119
104
90
133
75
94
76
69
89
114
80
131
83
56
120
107
103
107
120
107
175
74
166
138
152
120
88
121
131
125
133
116
107
99
104
97
109
93
145
80
69
175
100
120
102
87
67
132
100
69
132
110
76
134
80
102
135
107
69
83
112
127
137
124
87
145
133
107
78
69
134
109
128
131
197
87
89
76
76
76
134
175
87
146
69
147
80
109
76
80
157
80
80
119
71
75
109
146
80
90
116
80
117
80
80
129
80
109
118
120
91
97
143
94
100
93
137
80
69
81
109
69
83
94
117
96
74
78
183
123
98
155
96
80
148
122
87
109
118
69
111
133
91
136
135
121
154
124
145
104
80
88
109
108
123
87
127
140
154
52
78
99
69
76
78
104
128
112
87
139
101
118
76
156
64
69
110
155
137
175
69
113
146
123
43
121
133
116
133
126
143
80
88
110
120
76
120
69
130
79
141
75
93
97
154
118
68
87
143
123
89
95
134
69
94
129
78
76
121
88
78
104
122
99
105
137
103
52
167
93
97
119
99
126
69
134
101
119
69
131
120
118
151
109
80
155
93
117
86
103
80
128
89
91
101
118
69
127
154
119
128
80
175
80
128
117
120
88
94
107
92
87
124
74
136
80
135
129
88
88
89
113
175
69
116
129
69
78
163
112
69
76
104
77
109
75
197
134
209
119
140
127
72
85
91
112
120
133
80
112
93
104
127
175
101
112
175
69
69
112
88
132
87
88
107
88
107
76
109
120
78
109
87
88
119
76
118
80
69
181
98
80
140
132
104
80
80
128
112
91
140
128
148
140
107
69
78
80
91
120
116
112
119
76
121
115
94
110
90
133
80
76
128
154
94
100
113
112
99
69
78
78
107
85
124
107
146
136
147
155
69
140
151
72
80
77
91
96
80
136
110
85
78
89
155
122
110
101
161
136
110
72
122
117
136
154
114
88
78
91
175
128
89
94
113
136
78
56
80
134
78
80
105
102
92
72
119
99
144
43
107
69
87
136
120
118
104
80
139
137
69
112
76
131
118
110
69
114
87
133
69
89
76
69
88
101
137
148
80
76
102
107
64
156
87
95
69
94
69
73
144
90
126
80
88
69
134
94
107
94
120
107
109
119
85
76
109
109
69
54
122
128
136
119
97
127
162
78
119
96
175
109
133
121
89
80
104
123
107
106
113
129
99
175
80
91
78
107
72
131
131
82
87
131
120
134
106
109
95
107
96
104
120
127
99
128
174
87
137
101
131
64
92
155
121
145
102
69
154
83
122
76
76
99
69
78
113
126
91
80
80
69
76
93
120
154
137
88
120
83
87
107
140
90
91
106
136
134
165
107
112
73
140
87
91
94
80
120
151
112
111
85
129
165
72
100
69
69
117
164
87
156
80
119
93
126
84
121
119
199
154
80
110
121
113
99
152
87
87
72
109
93
119
112
88
121
131
154
74
143
80
117
76
94
88
113
104
69
89
134
120
113
78
175
126
154
43
91
120
121
133
93
120
163
69
78
120
128
130
69
134
80
92
151
136
131
87
122
106
78
156
109
96
124
69
94
117
104
99
110
131
80
156
131
143
85
119
123
87
100
69
175
119
119
136
175
136
69
108
120
111
76
109
64
120
122
120
91
136
69
80
96
76
83
100
128
126
87
80
127
87
99
89
155
113
72
101
118
90
91
161
52
107
134
114
107
119
74
125
87
99
87
72
106
144
102
69
80
99
69
134
143
76
94
154
144
175
129
80
164
85
74
164
127
78
136
138
93
80
118
107
78
114
69
120
104
123
181
131
72
114
120
104
148
80
69
74
69
69
68
120
122
175
82
80
122
78
107
110
78
128
104
110
96
78
80
87
99
149
109
156
80
107
99
94
56
122
97
127
134
56
80
76
96
87
115
101
130
102
80
138
119
137
95
87
209
136
123
80
163
120
87
87
175
96
76
92
87
140
146
161
142
80
140
56
121
121
104
71
151
120
107
87
114
69
128
99
103
69
80
174
115
137
80
128
128
60
117
175
81
98
89
78
94
99
88
106
113
129
134
69
76
79
104
88
132
118
52
130
119
93
94
91
154
145
153
89
80
87
74
78
119
120
154
136
129
134
112
90
119
56
88
107
87
109
130
109
152
74
100
107
80
125
109
120
80
140
69
155
73
69
69
88
78
87
98
76
80
104
131
175
69
85
119
93
127
80
69
71
128
91
72
103
69
69
144
83
157
80
176
128
69
104
67
87
72
120
93
120
137
69
66
87
69
69
76
140
129
136
69
128
129
137
67
137
131
117
93
119
109
87
88
91
151
164
107
172
87
89
71
111
119
131
106
77
76
119
43
112
78
80
78
89
119
69
113
203
124
89
72
149
118
104
107
98
89
94
119
136
106
76
58
107
151
88
175
69
72
80
76
78
122
134
78
100
113
76
114
109
102
102
137
145
121
101
127
101
100
152
90
72
69
96
80
119
175
78
119
89
84
78
136
136
197
121
69
69
107
140
69
136
145
66
88
110
69
140
88
69
69
76
118
131
85
80
80
59
99
128
88
104
102
89
93
74
120
131
120
119
136
76
95
175
78
110
76
96
119
80
80
97
156
103
92
164
78
80
145
79
129
94
80
43
185
91
119
109
137
117
102
106
136
89
118
109
122
83
98
119
120
67
134
80
76
94
88
126
69
113
134
74
115
119
80
110
80
118
106
123
163
69
115
101
151
121
80
143
76
122
64
80
88
133
136
151
120
80
126
67
89
96
96
107
107
99
69
87
106
78
111
80
154
78
137
87
88
104
109
93
107
141
52
107
121
99
136
78
96
88
100
137
80
106
80
90
87
151
100
155
83
90
114
72
80
67
151
83
112
99
107
110
56
94
134
175
80
175
127
52
175
120
93
94
146
102
94
130
132
128
52
76
175
113
123
183
119
119
89
131
132
88
94
103
69
145
89
130
120
110
64
150
74
128
151
148
164
108
140
80
85
103
80
89
145
134
134
69
76
78
172
148
157
96
148
153
79
110
178
111
197
78
80
146
120
69
121
67
119
110
98
121
110
156
115
117
120
151
95
80
111
151
125
131
119
103
197
121
163
109
87
76
80
69
80
175
80
69
112
94
119
145
80
93
118
131
123
120
109
78
119
163
106
151
80
134
163
125
99
110
56
136
140
99
121
144
99
106
68
122
69
102
128
117
80
107
131
76
120
175
122
52
112
119
124
140
110
143
78
87
118
199
131
136
76
80
125
87
109
133
107
126
99
145
128
120
106
69
112
138
76
87
87
87
76
75
130
163
99
107
99
94
78
80
104
91
175
91
87
80
85
87
141
79
136
115
117
99
94
104
113
93
88
123
69
91
80
85
102
136
155
107
128
147
146
119
119
118
175
88
89
80
156
118
80
103
87
80
69
107
52
67
132
155
103
120
131
140
109
175
69
132
69
80
76
114
175
80
106
131
117
130
91
67
118
80
105
150
137
93
102
154
140
69
78
103
133
76
172
149
121
69
104
82
56
128
193
94
175
99
83
117
106
119
128
99
52
120
104
100
117
69
154
99
87
90
87
119
131
69
89
119
78
119
76
152
112
144
80
101
136
87
114
75
152
134
74
104
80
78
134
109
136
133
69
102
87
155
119
147
80
155
104
79
131
80
142
197
69
103
87
62
104
119
100
121
104
146
115
93
156
109
69
147
119
72
131
175
66
89
102
149
119
176
87
117
80
79
106
102
112
143
93
124
78
112
107
76
91
80
89
89
76
197
175
80
154
80
78
113
159
106
107
175
88
113
106
80
159
132
101
80
140
78
80
54
103
69
151
110
67
87
154
131
117
127
150
75
69
85
69
80
132
87
123
80
66
99
91
134
111
78
120
94
111
80
94
145
104
88
88
148
76
119
130
78
80
107
114
94
80
80
156
121
54
134
104
69
163
80
80
95
72
154
98
134
197
89
89
94
131
76
143
145
112
99
115
156
90
118
78
104
76
69
106
80
101
107
87
112
146
69
78
76
87
106
76
151
69
69
77
89
104
134
156
126
87
56
122
80
58
80
95
106
115
118
157
110
154
54
131
80
82
86
95
108
69
175
69
127
106
87
94
74
102
80
89
80
119
69
80
109
117
87
134
119
151
154
87
119
69
110
128
88
107
148
119
89
107
140
76
89
124
143
127
140
151
117
80
80
74
69
136
80
91
87
90
131
112
99
78
78
106
109
94
104
113
69
89
78
134
122
89
76
163
112
134
119
100
90
72
87
153
101
69
80
120
87
118
93
82
88
130
100
67
69
121
112
163
78
76
136
77
72
89
134
147
69
99
80
120
143
93
115
85
80
87
69
69
124
119
80
127
107
112
154
87
69
164
117
85
197
69
140
107
69
80
76
69
99
185
125
106
100
69
101
80
109
88
109
117
80
96
119
93
80
123
130
154
86
120
137
139
96
83
131
83
111
101
99
112
144
121
149
82
87
95
80
125
83
101
80
101
121
104
91
109
100
95
80
115
72
156
78
134
94
107
136
76
89
87
87
80
113
136
76
172
96
115
113
115
80
115
91
80
122
80
118
80
112
119
118
142
87
107
175
106
110
131
102
140
136
123
119
120
69
99
94
199
155
104
143
69
130
80
69
89
106
79
128
132
114
113
215
91
107
78
68
115
72
140
137
43
97
146
96
69
156
80
183
110
102
121
113
112
87
80
107
69
69
80
76
140
129
121
91
138
93
78
117
100
117
96
128
109
78
131
122
88
99
54
78
85
118
83
107
87
146
87
88
113
137
78
69
87
88
95
78
121
57
81
132
96
87
72
60
54
91
136
80
112
80
83
107
89
92
80
80
80
120
118
91
69
78
80
126
119
138
88
87
79
155
145
128
175
75
115
141
131
99
197
69
85
130
99
88
110
80
156
69
136
76
181
128
128
43
156
108
136
88
80
134
109
110
76
88
121
78
76
133
113
153
155
80
134
128
152
64
151
87
164
95
163
148
79
163
87
135
117
132
164
175
115
128
80
100
124
114
132
100
142
146
113
119
92
90
137
197
76
80
72
136
145
151
117
104
92
94
109
107
152
85
78
146
154
154
78
131
156
90
54
88
80
78
154
96
111
80
95
134
156
128
89
115
94
106
109
99
117
110
120
83
102
113
78
80
110
90
119
107
52
102
175
115
121
146
175
102
78
80
89
109
80
112
166
175
104
99
119
102
117
110
103
78
90
105
85
185
107
110
101
118
122
117
69
104
143
129
128
106
134
118
89
88
78
75
114
131
140
106
112
162
135
111
76
125
119
56
163
175
76
69
97
164
121
80
94
131
69
56
76
151
78
103
80
104
98
117
71
90
164
109
80
113
74
89
79
88
104
83
156
136
95
80
151
71
155
128
140
78
74
155
119
104
140
76
78
80
111
75
69
69
130
169
81
69
80
80
74
76
113
137
73
106
165
101
104
81
93
78
87
76
80
91
87
68
83
66
119
109
125
117
113
112
100
56
117
69
177
112
43
80
95
138
74
110
154
111
154
89
113
147
151
148
142
121
109
80
110
69
102
107
80
121
91
80
140
92
69
139
102
78
87
142
54
101
80
147
76
91
175
80
110
96
134
146
128
197
100
87
69
110
155
54
120
72
138
90
93
110
87
67
147
90
107
115
131
131
99
54
80
106
80
128
119
80
119
77
117
87
99
100
148
119
119
128
162
110
78
69
69
69
76
151
125
163
56
136
72
88
151
155
88
80
80
128
72
155
87
99
113
129
143
69
119
91
146
80
72
197
87
123
125
165
80
151
88
69
91
87
114
120
107
104
97
109
137
155
80
128
111
122
133
80
120
76
74
106
113
183
142
110
117
112
117
112
146
121
145
160
129
119
76
94
69
76
197
109
69
113
107
121
69
87
124
82
100
139
134
87
80
122
175
125
72
175
120
117
120
87
119
107
80
150
119
72
101
120
120
87
94
107
137
117
131
92
197
149
112
122
109
175
197
119
119
89
124
74
138
128
128
109
92
80
114
111
80
121
128
126
110
80
146
89
188
59
90
89
132
120
133
87
172
89
80
117
141
146
94
96
76
127
160
69
54
197
203
69
69
88
76
69
156
88
76
107
80
107
125
128
146
175
119
89
115
110
104
146
136
151
68
80
132
86
56
151
109
119
80
109
72
151
110
80
80
93
155
78
72
175
69
155
128
78
62
131
132
95
137
102
137
80
138
175
80
106
74
119
76
87
103
76
175
146
88
70
87
94
87
119
163
165
76
80
113
72
93
146
80
109
155
154
103
119
106
69
69
149
88
69
106
80
120
133
85
145
69
54
140
91
175
156
80
88
112
205
74
119
131
87
89
101
140
80
122
113
74
92
101
87
151
112
134
113
155
76
123
76
102
52
78
110
80
106
87
111
101
80
118
80
74
72
104
124
75
94
143
67
109
79
82
99
104
103
112
80
76
121
80
126
109
121
157
175
120
151
108
107
123
88
118
128
119
87
156
98
175
85
96
80
78
146
93
71
163
80
126
136
112
117
128
88
121
75
107
151
128
93
106
149
58
120
145
76
119
99
80
122
122
134
74
131
52
112
197
113
78
89
82
120
109
154
100
181
63
76
119
80
128
112
88
87
145
72
100
115
103
78
83
132
106
129
76
115
92
137
109
69
121
96
94
150
87
133
68
93
119
78
163
78
123
116
99
119
72
156
157
111
109
134
87
136
119
91
69
80
95
102
87
72
175
155
99
78
88
76
76
78
101
120
98
106
78
128
76
119
119
43
80
100
104
107
52
120
72
93
122
104
80
120
100
69
154
90
93
102
128
80
104
151
107
96
136
104
85
95
140
107
133
80
107
72
89
93
56
100
120
107
109
120
150
144
43
164
110
107
143
119
131
137
106
87
88
137
95
69
112
80
165
84
76
114
119
100
163
78
139
94
197
52
132
155
97
91
110
79
69
112
88
88
137
165
99
96
137
80
103
100
69
80
95
164
121
151
134
60
89
87
80
125
76
112
98
175
93
89
155
93
89
140
87
151
88
111
128
89
94
154
118
89
123
121
106
131
80
127
104
121
64
104
112
107
77
112
175
99
80
120
113
100
96
80
136
69
104
109
121
69
107
96
76
149
103
112
54
99
99
80
92
80
145
119
78
146
156
152
104
128
115
107
95
136
123
99
79
88
89
118
175
100
137
128
80
93
107
131
113
131
93
117
101
87
101
76
112
78
93
78
76
95
151
144
122
87
129
78
90
133
120
80
109
69
104
136
137
128
87
80
106
94
88
125
132
115
85
94
151
120
127
131
125
164
128
128
69
138
119
80
79
88
203
93
163
119
111
80
149
127
130
123
110
94
147
101
98
114
85
131
121
109
151
72
69
124
83
102
88
103
89
123
91
148
116
99
78
124
102
99
81
99
69
76
140
74
72
149
82
80
78
100
87
56
128
137
145
78
69
106
109
95
80
80
131
168
90
80
151
91
78
156
183
79
122
80
107
113
80
80
163
113
136
107
122
120
93
132
136
118
110
80
132
128
74
104
106
140
111
83
104
118
113
109
155
76
140
98
143
146
69
121
89
106
136
69
80
148
134
54
107
120
131
54
113
69
137
78
112
103
72
87
52
87
80
69
169
100
82
80
89
80
80
91
130
103
94
103
115
99
119
80
109
67
115
69
104
119
148
87
133
109
78
146
174
104
54
110
109
121
104
95
76
128
128
111
119
123
147
79
117
69
144
69
122
72
111
100
74
115
80
107
80
136
64
122
115
69
131
90
119
52
90
169
119
69
96
175
69
80
69
69
109
107
113
69
120
110
129
155
76
110
85
89
80
127
104
109
181
112
89
175
69
140
99
80
136
117
115
118
154
197
163
107
54
87
66
136
118
89
74
76
101
80
157
89
89
146
142
145
87
120
101
136
185
115
134
99
100
154
175
154
154
76
120
69
112
73
197
56
137
137
100
91
69
110
128
88
72
88
102
69
80
113
99
154
128
119
80
69
120
78
113
80
107
93
87
119
110
142
110
95
151
78
120
90
80
136
104
87
117
108
110
156
120
111
144
128
78
197
128
156
94
52
87
134
74
69
110
80
74
131
69
90
137
131
144
76
109
131
89
109
151
121
64
155
89
69
128
88
109
69
199
175
107
112
164
96
78
99
126
152
102
104
80
91
134
72
119
127
91
78
137
78
154
78
152
107
83
52
69
72
119
128
69
76
140
76
155
106
119
197
96
69
117
185
127
111
138
80
76
93
87
146
123
118
154
197
109
154
110
156
109
94
89
78
120
112
78
72
120
87
80
140
131
156
69
114
76
107
73
87
106
89
143
119
106
76
100
85
69
140
87
155
74
99
80
81
94
93
80
89
69
89
80
71
67
99
175
160
124
78
77
74
140
120
69
112
113
80
118
164
114
59
120
100
104
143
134
106
88
110
89
101
128
120
131
127
109
107
109
87
85
91
99
133
120
69
113
95
76
120
87
111
80
141
110
131
99
132
100
143
69
122
52
199
87
80
107
156
81
117
97
76
119
124
89
128
123
112
119
122
128
80
94
69
110
88
101
140
88
76
163
121
138
92
146
113
155
88
112
78
80
136
175
121
118
80
128
163
201
134
54
110
113
104
87
164
129
69
110
89
100
126
164
130
117
104
80
96
150
160
80
87
106
122
80
76
102
72
87
155
80
113
54
121
180
122
121
133
136
87
99
121
90
94
80
89
109
154
156
80
99
118
89
121
137
54
80
127
80
111
128
69
89
84
87
78
142
143
80
175
100
174
69
87
110
76
126
94
119
87
79
148
131
173
146
117
106
137
70
88
123
102
80
104
117
106
111
69
110
85
80
134
107
69
175
101
78
92
78
69
94
128
78
107
153
87
87
91
107
131
129
109
106
129
69
85
80
94
85
93
69
154
87
122
72
87
120
78
140
106
181
96
155
85
183
132
127
120
112
136
140
122
112
69
118
80
69
93
126
105
80
107
120
119
69
137
111
101
110
106
98
119
69
106
78
101
140
148
140
131
110
143
145
140
112
85
106
107
89
80
109
160
136
72
98
175
87
136
83
69
161
124
88
104
163
99
87
101
80
131
132
118
83
96
109
100
99
117
175
78
120
89
94
95
87
117
80
106
151
85
78
154
117
175
86
94
151
87
97
119
109
106
80
131
154
80
119
98
54
131
123
76
69
120
151
121
68
69
121
107
69
76
114
93
100
80
107
88
114
80
140
144
80
102
110
107
112
112
91
91
60
99
95
85
121
116
127
175
125
117
80
131
76
89
69
120
118
87
69
94
85
164
78
126
123
78
119
113
154
120
100
89
76
120
69
69
80
75
69
69
104
56
87
110
125
76
88
119
109
121
71
87
117
93
110
78
104
130
97
112
91
88
80
110
89
147
104
136
76
157
136
87
117
104
128
80
100
174
80
156
156
115
102
143
102
93
121
107
124
90
154
96
80
91
117
95
89
117
87
113
111
128
78
72
80
88
93
72
87
89
154
80
159
80
93
155
129
136
120
111
74
80
69
87
76
91
94
69
56
175
119
164
118
106
125
109
89
102
78
110
126
146
111
109
69
136
144
107
169
96
116
106
91
78
109
106
93
120
131
87
91
107
120
52
108
175
120
104
69
100
122
175
87
118
155
105
108
80
76
148
80
98
88
134
166
119
197
69
160
107
106
52
109
87
109
69
76
106
63
93
120
84
69
132
112
140
78
110
155
154
154
100
129
78
72
131
74
154
101
122
93
154
119
121
120
88
139
114
78
104
113
119
93
102
131
110
197
109
72
103
80
80
92
107
106
197
103
124
120
121
87
119
76
94
136
91
85
66
119
78
87
110
140
87
74
93
121
80
125
131
94
136
104
88
114
119
78
101
78
106
109
140
78
69
154
111
80
80
113
107
87
108
123
52
163
94
88
100
95
69
113
91
106
148
63
76
74
98
156
119
136
140
94
155
91
66
93
83
93
160
122
119
109
156
107
187
80
118
118
137
120
124
152
94
109
109
119
94
82
80
104
127
88
76
87
114
142
119
141
156
113
96
89
101
119
88
137
175
89
103
85
89
80
154
104
104
127
76
152
87
89
155
127
155
113
131
109
80
88
69
87
102
75
107
88
131
78
76
95
76
94
112
64
91
197
88
56
117
117
154
177
89
150
107
128
127
106
183
113
94
156
76
115
115
156
87
109
91
115
143
80
112
87
78
94
104
97
140
89
140
87
72
69
154
91
69
110
80
71
69
119
99
129
144
87
69
136
154
94
111
76
140
155
99
56
120
175
87
145
71
98
87
145
120
87
82
104
63
92
149
69
76
136
69
127
91
145
132
130
111
80
78
110
147
128
103
175
145
109
94
92
118
140
116
80
107
69
110
76
112
88
128
76
83
54
110
128
76
127
80
107
123
99
175
130
156
80
80
138
114
93
154
111
126
109
103
88
107
134
132
76
142
151
94
80
106
91
115
129
132
140
130
140
154
116
98
114
76
107
102
155
104
155
87
128
73
133
83
72
76
69
151
80
87
175
112
64
95
151
99
154
117
145
80
125
175
175
146
154
100
83
131
87
107
110
175
121
107
72
101
67
106
136
78
156
139
76
76
93
54
112
117
132
76
153
88
107
72
131
56
151
99
96
109
161
93
80
116
154
127
87
69
117
87
69
54
175
154
87
163
89
87
119
155
87
123
152
104
125
99
162
134
109
151
78
104
139
138
107
154
78
99
175
131
150
110
120
94
121
121
140
93
119
104
172
107
129
117
93
87
99
102
102
87
156
143
134
107
156
146
99
89
54
145
87
87
107
154
78
136
117
69
175
84
128
119
113
110
94
148
110
106
137
118
109
93
156
127
76
88
155
120
58
111
80
112
109
95
154
52
98
119
64
73
119
99
139
156
87
113
99
140
89
93
107
147
89
112
99
140
91
107
127
83
134
64
69
87
87
112
76
119
109
115
122
107
64
87
112
138
69
87
114
118
107
78
120
94
148
115
87
80
127
137
76
152
89
80
146
134
87
115
119
164
66
86
124
155
69
125
80
74
100
72
112
78
80
87
110
148
150
87
133
87
43
137
136
107
69
95
69
77
66
66
93
80
104
107
78
107
163
164
109
154
123
67
106
69
127
87
87
69
154
117
80
187
116
64
134
107
91
150
76
74
133
117
96
113
72
155
78
87
107
95
199
215
87
110
99
136
120
52
99
69
110
107
148
119
131
129
76
119
104
128
120
80
120
95
87
128
107
78
120
80
94
93
80
87
102
144
199
132
108
115
194
115
69
126
107
154
80
72
76
110
197
128
104
131
119
119
79
136
113
99
119
140
126
104
107
80
54
157
197
116
109
146
113
99
87
152
123
121
78
151
88
80
104
113
94
103
117
86
157
100
69
143
69
155
92
91
156
80
124
125
72
103
80
80
117
74
159
156
78
131
110
119
99
80
91
127
94
103
78
128
183
151
80
126
94
175
175
87
119
85
71
151
80
102
147
76
144
78
119
69
183
122
102
69
142
78
157
156
110
134
69
128
154
96
106
119
92
144
72
78
110
104
99
107
78
110
117
101
119
132
96
120
123
69
99
127
145
83
80
94
95
75
136
96
130
80
119
134
83
99
69
80
56
80
177
112
88
102
116
78
80
131
122
94
90
103
133
88
124
69
89
183
153
90
154
80
80
88
163
76
87
76
102
98
88
90
119
91
80
107
78
162
107
88
110
88
109
135
107
119
94
114
69
78
69
142
183
87
107
144
141
83
197
110
76
137
126
151
118
129
92
87
119
119
157
75
119
122
66
119
110
69
154
52
80
94
145
137
131
151
83
87
146
140
78
100
131
162
76
132
119
144
67
118
145
69
102
93
151
160
69
118
94
93
85
80
95
104
106
109
94
76
128
122
154
80
76
146
140
80
85
128
97
153
87
110
87
76
119
107
78
104
56
76
95
72
76
87
110
101
124
59
117
91
107
120
175
175
120
67
73
69
94
121
68
89
120
121
88
128
87
52
113
80
74
69
80
131
88
85
76
115
111
91
80
69
128
124
140
94
78
91
102
122
78
129
104
104
175
94
117
69
80
113
89
120
113
99
175
104
119
87
69
69
76
112
175
134
128
87
112
114
90
95
91
104
110
76
80
131
156
78
78
69
164
154
114
76
155
102
109
150
87
146
101
78
119
120
114
119
52
116
107
126
111
69
144
137
127
119
147
107
197
109
151
94
89
100
89
126
69
121
88
137
144
133
113
101
156
80
124
93
145
72
109
131
104
74
148
132
58
154
100
109
99
78
121
128
102
134
91
88
175
104
96
69
112
88
104
80
110
110
78
130
69
107
78
107
104
112
128
80
143
109
119
93
99
122
80
147
120
88
69
146
128
80
87
156
69
80
69
69
69
69
74
103
72
90
148
102
80
76
83
163
80
69
80
107
83
131
111
112
69
93
90
80
69
104
99
151
94
101
107
88
89
87
88
147
129
119
110
101
116
88
150
69
93
121
148
80
125
106
175
80
93
113
82
87
175
118
69
80
112
134
80
117
69
104
119
145
120
119
128
111
80
74
80
117
122
133
116
80
123
69
69
87
100
89
80
154
88
128
113
93
85
127
113
145
147
80
101
96
163
89
95
58
89
106
125
104
97
110
111
76
72
130
76
119
69
99
78
102
122
69
175
69
127
129
78
132
98
108
119
76
122
113
87
76
107
87
80
143
91
146
72
152
80
94
98
76
164
107
80
99
54
134
106
160
69
80
69
107
128
112
112
80
87
123
69
80
185
121
104
93
88
54
111
72
137
127
67
121
143
87
111
119
119
104
119
106
78
175
128
100
69
137
118
82
152
90
106
80
76
87
120
110
76
117
99
93
127
80
155
93
211
131
99
137
120
76
93
110
130
113
80
109
131
111
143
101
89
89
102
69
109
76
69
88
66
74
199
109
123
76
80
120
155
69
96
69
69
96
141
123
143
131
144
78
154
132
78
101
64
106
80
147
119
133
80
99
87
121
119
130
119
80
107
146
175
121
87
149
115
77
107
80
69
128
102
142
102
164
107
76
107
126
110
120
151
155
134
87
132
79
144
119
107
119
89
93
97
54
63
107
69
125
127
80
114
119
119
80
69
113
120
91
87
80
134
98
80
120
143
111
120
112
54
145
72
82
80
56
74
113
80
87
136
175
69
80
120
96
106
93
154
119
87
101
164
54
104
72
106
78
90
109
85
56
121
89
145
88
123
87
68
109
117
136
119
69
78
89
87
78
145
201
80
94
74
117
80
120
76
144
131
155
69
80
156
72
83
119
76
155
109
76
118
120
117
154
107
146
132
69
98
120
98
154
137
80
69
175
104
127
99
107
145
152
76
130
80
80
76
160
107
116
103
103
187
115
103
102
85
80
106
99
109
175
127
69
127
109
116
91
121
91
91
80
89
130
105
130
94
69
120
164
69
100
102
76
114
124
127
90
122
130
149
80
136
134
100
99
156
72
66
98
131
69
144
99
123
124
88
80
126
110
92
185
137
119
121
80
89
134
147
148
147
138
110
119
109
112
111
110
130
78
85
54
175
79
197
163
101
75
108
89
136
103
136
78
137
100
80
127
80
89
80
64
104
128
94
104
124
101
69
129
140
106
118
75
134
77
69
134
76
98
137
92
132
103
132
76
107
117
78
123
110
74
99
118
163
110
56
143
110
114
78
87
174
110
80
80
78
125
132
112
112
80
120
110
95
107
80
136
80
93
134
101
83
134
99
114
88
152
110
74
87
52
69
109
109
99
154
96
117
102
107
107
120
80
88
119
88
88
96
104
102
163
128
134
119
107
126
110
109
99
127
89
72
78
114
87
175
113
126
117
95
147
80
112
87
82
134
85
90
129
106
71
76
99
110
78
197
96
128
99
73
174
78
110
110
95
106
127
143
201
154
134
93
160
74
80
74
120
113
175
80
134
91
69
136
64
80
76
146
91
74
112
128
136
75
111
88
69
127
82
164
120
147
146
119
80
154
109
154
91
113
119
80
87
78
104
175
99
160
107
121
69
69
89
130
78
175
154
80
115
86
110
131
67
140
69
80
93
64
124
116
112
121
103
119
101
52
87
87
96
128
98
93
119
117
67
118
78
119
76
121
87
69
120
113
52
78
78
112
95
100
101
109
69
102
120
100
101
90
69
113
145
80
147
69
113
93
76
147
120
154
69
103
69
103
76
99
88
132
187
144
85
112
128
80
88
119
91
143
89
74
175
107
112
93
175
113
54
112
123
110
127
175
88
87
91
74
112
69
119
96
80
156
120
154
83
88
82
87
123
91
113
95
143
60
118
99
69
91
123
111
107
117
69
140
82
76
175
120
112
102
139
94
143
114
120
90
121
87
91
123
80
69
80
150
88
89
80
122
91
92
148
80
82
87
69
175
175
82
174
152
104
94
154
154
87
91
118
106
110
164
94
154
145
98
56
103
92
87
72
107
197
100
119
106
89
76
160
87
155
130
142
104
134
78
94
78
145
93
89
160
79
82
80
74
89
128
87
106
174
175
69
76
71
161
88
126
143
134
99
137
160
128
128
100
80
156
136
93
148
135
96
155
121
95
117
80
73
102
129
76
107
104
87
175
121
89
69
127
78
106
144
99
80
72
94
101
80
103
128
75
88
148
117
139
80
151
80
125
136
128
149
78
129
99
69
119
56
72
67
118
185
109
103
120
94
99
87
130
80
89
80
109
113
69
134
116
128
76
76
109
96
43
119
123
92
106
80
162
114
80
120
54
175
75
156
111
89
155
106
87
197
134
76
109
105
117
119
78
67
80
69
97
80
52
80
118
110
145
87
99
100
126
72
76
102
89
91
56
151
197
93
111
109
83
69
80
175
130
93
113
146
121
117
80
126
69
78
100
109
85
100
134
128
119
127
136
86
56
87
80
88
99
87
128
89
90
119
134
155
103
134
83
69
127
87
90
134
110
80
69
104
113
80
69
114
78
174
120
118
88
99
69
136
80
124
90
132
121
93
117
134
115
89
109
91
156
115
107
124
104
85
100
78
72
98
57
78
175
83
79
120
122
54
107
119
123
112
83
87
113
84
117
78
156
120
80
102
93
88
110
97
88
102
133
127
106
80
128
99
149
111
91
99
64
143
43
109
146
132
69
103
83
143
104
126
94
120
175
121
128
69
87
97
123
94
78
104
140
87
156
119
78
80
89
175
93
99
134
131
156
155
94
87
110
99
119
76
78
118
69
142
128
134
95
111
106
181
54
80
69
80
69
175
155
140
94
136
114
140
123
95
117
103
80
89
107
156
169
89
112
174
151
134
66
101
85
102
120
87
117
94
151
90
109
102
109
121
80
120
73
185
144
119
104
156
100
100
76
121
121
96
145
88
80
156
80
80
80
128
112
108
120
119
103
154
119
127
131
119
120
96
114
120
101
110
87
122
81
76
134
93
120
154
87
150
88
113
121
197
120
121
157
110
122
87
124
101
129
154
78
74
89
76
127
78
104
91
133
80
94
76
123
81
96
80
96
76
137
78
78
99
134
89
120
197
134
142
125
120
54
151
85
76
80
94
130
95
76
129
154
129
80
87
54
74
99
94
69
123
120
80
99
163
147
122
89
71
117
112
154
89
89
73
68
145
140
115
103
78
69
78
72
83
88
89
125
134
127
119
85
155
155
80
120
72
78
147
175
147
175
84
119
136
69
154
131
175
94
130
80
116
72
80
140
128
136
154
69
121
76
153
92
101
89
109
78
129
146
72
137
132
136
156
78
80
91
69
106
54
78
106
110
119
80
126
128
93
156
76
90
127
78
140
87
140
140
106
104
76
94
106
69
78
101
72
126
87
123
80
107
80
112
154
164
106
69
56
95
52
107
100
97
121
94
111
101
154
122
89
69
124
69
120
58
131
154
109
115
100
117
92
52
110
106
76
87
148
120
89
104
132
101
91
137
110
88
104
69
79
79
131
95
149
103
107
78
175
132
59
164
88
76
118
111
121
69
79
89
99
134
92
80
73
78
129
80
129
78
101
66
78
80
115
87
110
87
99
144
69
78
80
116
99
104
114
125
128
114
121
154
89
128
121
114
99
175
96
95
69
77
118
80
127
110
76
80
87
80
72
113
99
69
136
80
78
64
119
147
138
120
76
112
136
137
89
69
95
134
119
69
122
85
74
157
90
163
146
132
199
112
134
72
80
160
101
99
147
64
144
80
119
121
76
136
114
109
110
128
80
80
87
144
109
132
67
96
99
119
110
155
66
132
119
112
87
119
87
88
146
174
128
114
109
154
69
95
118
89
127
99
72
197
120
107
154
80
101
94
129
121
90
69
160
69
80
120
64
96
118
66
129
69
127
69
122
119
152
128
132
76
99
145
85
76
69
113
127
104
145
80
76
156
96
101
93
99
80
60
106
163
118
110
175
104
90
131
103
92
87
139
76
115
99
116
120
89
69
102
128
119
69
99
104
119
147
91
87
57
154
87
121
91
78
154
76
112
87
113
78
80
80
156
94
194
78
136
82
87
197
69
131
108
118
89
141
112
76
197
113
89
110
80
107
91
85
121
107
98
114
110
110
98
119
80
140
80
120
69
174
120
165
52
78
69
109
139
69
131
197
116
69
104
100
76
69
80
154
78
99
127
142
117
124
148
79
145
72
128
89
69
87
132
75
129
89
100
111
80
80
153
106
76
119
80
78
69
94
80
175
175
76
80
88
80
95
87
106
118
137
118
175
69
134
78
121
56
136
128
110
119
144
144
80
52
69
87
151
113
96
88
119
94
69
74
174
156
104
73
75
127
74
89
175
136
80
128
122
146
89
69
99
102
111
143
56
118
76
110
99
109
99
121
91
115
89
89
80
80
138
155
80
76
100
100
118
76
89
76
133
76
87
141
175
100
81
80
94
104
96
95
106
87
96
90
87
116
76
76
88
121
155
132
103
110
103
80
110
132
71
69
123
104
124
109
56
98
94
119
76
115
123
54
115
75
99
131
101
120
107
102
110
83
175
117
132
78
64
107
143
109
110
110
69
103
89
130
96
91
102
136
197
127
78
58
156
99
149
80
131
104
80
119
98
154
119
92
112
80
119
69
107
112
109
109
72
80
107
81
106
80
112
80
78
131
88
80
154
78
76
119
87
69
88
109
160
80
116
118
130
124
131
154
72
91
90
144
94
134
110
76
136
89
72
124
110
78
67
56
69
163
69
52
78
80
89
164
151
175
87
64
134
175
89
99
87
117
136
152
92
107
147
72
75
80
109
110
152
94
88
119
104
119
69
176
101
154
119
149
94
97
121
100
96
117
85
140
89
72
136
99
89
175
78
89
89
139
54
100
126
120
131
110
120
162
88
80
94
99
95
117
131
154
80
69
143
112
99
91
95
80
78
106
80
56
69
197
89
80
130
100
67
69
87
134
131
98
99
106
103
109
119
69
124
87
128
129
86
113
126
91
113
104
80
111
80
119
102
110
87
94
119
119
144
110
99
127
134
197
175
119
115
87
106
123
119
136
127
137
80
110
128
80
107
121
100
123
96
107
136
80
107
139
195
140
69
147
102
52
111
119
145
62
90
87
96
90
121
121
87
99
109
74
78
79
110
100
151
122
76
111
80
175
99
90
134
119
175
78
110
83
134
78
99
113
99
136
104
175
163
157
100
94
109
78
87
76
121
119
76
76
75
107
129
88
127
123
136
147
119
134
54
132
120
107
69
72
156
89
154
80
154
69
85
164
147
121
56
126
155
120
123
88
112
90
80
98
81
112
113
69
151
117
154
69
121
87
69
120
103
80
121
134
76
76
151
140
78
154
69
103
80
54
129
80
80
87
137
106
90
130
101
120
87
72
153
69
145
64
99
76
116
80
83
69
77
101
69
88
87
107
93
110
153
104
80
87
104
138
106
122
155
147
80
87
69
87
136
117
112
102
80
134
93
133
93
146
76
124
79
69
80
87
78
112
69
80
78
107
109
78
104
175
76
76
84
70
150
99
72
69
78
88
112
128
110
119
80
172
148
131
175
80
87
89
107
171
106
117
80
89
69
80
120
114
134
122
164
69
87
64
120
69
171
87
110
129
78
80
131
115
94
127
66
76
88
80
69
96
80
87
80
96
99
110
97
110
78
125
88
99
94
154
101
87
111
114
121
132
117
122
113
128
132
104
76
87
43
102
76
99
104
120
80
87
99
81
87
128
115
72
69
94
87
93
121
140
78
85
87
109
96
80
87
129
88
129
87
111
103
154
113
154
175
76
134
96
88
130
87
100
98
78
64
120
69
197
72
87
121
94
117
103
106
107
104
76
175
69
107
54
122
109
80
152
137
97
78
94
107
80
95
83
80
132
126
78
80
115
78
69
71
140
88
113
155
78
106
91
75
109
43
154
106
87
130
76
113
128
69
110
99
89
80
131
112
119
197
163
114
88
117
121
118
120
111
101
85
79
110
119
110
76
74
107
107
90
69
120
107
87
102
106
127
104
118
101
99
69
99
157
119
99
130
160
86
82
104
126
94
109
151
124
69
119
130
175
86
109
76
113
155
175
107
134
110
76
112
120
93
104
146
96
151
126
80
100
111
156
78
197
119
72
109
66
104
154
142
123
80
76
75
83
87
118
120
106
160
119
88
107
146
109
80
76
136
116
83
100
156
76
104
80
110
144
78
89
175
122
109
88
110
76
120
77
80
80
111
72
98
80
54
72
156
69
88
137
113
111
104
69
78
117
96
68
156
78
69
80
69
104
199
80
94
155
78
132
90
82
107
84
87
91
76
109
107
124
52
130
74
140
101
123
69
96
122
112
87
94
69
116
134
120
82
98
78
163
163
140
159
102
93
96
69
117
98
161
92
99
119
135
114
154
78
56
78
80
122
131
120
93
54
120
69
128
72
76
102
136
128
123
80
78
131
80
88
87
116
131
91
99
127
104
146
163
120
72
78
110
69
78
115
175
96
101
69
122
96
94
124
110
159
88
80
92
69
100
80
107
78
109
131
75
85
69
107
80
78
120
54
136
80
69
80
89
80
82
197
167
134
100
80
123
113
160
107
80
119
87
146
87
80
85
72
104
156
69
147
80
69
66
93
122
128
107
60
110
119
93
59
131
88
72
156
43
155
164
76
103
76
104
87
82
118
96
143
88
74
69
115
117
135
120
76
116
76
110
109
89
67
166
80
130
94
128
163
137
125
90
99
106
78
128
131
143
181
134
110
69
151
60
78
54
144
80
89
134
111
78
111
107
112
109
100
144
89
69
126
106
119
122
79
138
69
69
122
69
80
134
76
114
89
129
72
95
78
88
89
96
110
99
115
146
80
89
111
128
69
80
119
89
130
140
144
117
69
129
87
123
119
117
117
128
158
119
129
80
144
81
107
63
69
134
117
128
80
120
112
72
76
156
103
78
69
76
121
78
56
134
87
96
80
87
131
114
130
113
131
75
136
102
80
79
91
120
94
103
90
145
119
149
121
137
72
112
87
80
52
134
118
160
120
89
154
121
107
119
155
80
109
100
137
143
87
80
115
181
52
72
80
117
80
160
94
146
119
110
183
85
80
131
112
82
140
111
80
113
125
118
128
54
155
197
87
121
62
126
197
117
88
67
74
52
94
80
103
109
143
175
128
112
149
77
121
119
101
80
132
127
106
69
175
119
160
89
69
107
123
120
128
94
99
94
119
125
127
123
87
82
117
76
119
132
96
88
69
75
69
56
154
119
154
158
96
52
103
121
121
127
99
113
120
120
95
76
87
146
137
88
151
115
107
95
155
118
96
91
95
94
85
107
111
94
120
120
72
89
92
73
131
76
140
127
134
119
175
118
76
69
87
64
88
80
151
76
148
75
102
103
70
150
102
150
119
54
89
80
110
69
104
121
106
119
199
128
111
175
87
73
104
112
69
78
101
80
97
72
115
76
97
120
101
88
104
76
154
163
78
80
129
89
175
91
76
76
101
85
118
69
125
56
187
143
134
86
69
118
100
129
134
104
124
99
142
74
78
157
87
121
136
54
128
58
109
106
123
101
104
175
89
93
109
154
111
87
175
96
78
101
119
154
88
111
140
140
78
104
111
105
118
175
155
133
142
76
52
117
128
78
78
80
69
112
199
106
78
97
90
79
104
120
106
107
115
89
95
80
106
108
155
80
102
114
103
110
134
87
78
106
151
98
163
103
94
71
101
80
93
141
80
101
119
92
89
103
103
99
69
104
136
88
76
96
69
143
69
88
85
117
197
88
134
89
160
94
87
112
103
91
93
140
85
88
89
80
94
89
93
112
109
80
95
138
69
112
72
89
107
76
74
76
133
117
181
96
149
111
152
74
115
139
80
92
78
154
95
136
117
183
154
109
104
121
136
110
181
69
76
85
107
127
117
143
119
101
143
76
120
125
148
54
94
91
83
120
130
89
127
117
106
187
110
99
89
128
136
69
69
154
122
78
52
137
111
118
110
87
106
89
127
69
69
120
154
94
128
80
94
103
155
128
79
154
133
54
57
69
93
127
72
115
78
121
80
134
83
163
125
69
130
134
145
69
91
146
175
131
111
128
87
134
80
93
117
98
119
85
79
93
93
76
80
82
119
43
89
85
99
106
87
149
87
141
80
109
94
138
80
112
86
112
85
69
112
102
88
54
153
156
80
104
80
89
123
106
115
104
107
56
112
119
101
80
89
77
127
130
74
131
154
110
146
122
94
87
175
85
114
69
93
120
136
69
128
76
117
121
110
120
88
154
76
88
99
127
76
69
72
104
100
104
119
88
80
117
146
120
175
123
80
175
54
107
69
80
104
128
109
88
106
101
123
94
78
104
80
69
104
78
80
92
109
58
124
56
69
140
69
76
72
89
64
106
120
105
197
63
69
118
118
175
130
97
73
83
121
99
141
60
80
91
155
117
43
155
89
148
110
96
89
94
66
83
139
92
156
110
128
80
88
93
134
160
87
110
126
121
79
107
109
88
85
112
129
122
136
88
78
78
144
130
154
101
69
106
149
131
80
106
87
87
78
119
100
131
176
121
128
121
89
83
96
80
183
138
102
87
87
130
78
106
69
163
79
113
181
107
92
80
87
56
130
69
80
129
78
154
91
139
102
99
155
143
102
107
154
69
87
156
80
132
126
89
64
87
155
145
107
64
106
80
107
107
80
76
126
110
143
88
110
189
69
136
99
124
87
128
175
74
131
89
112
154
120
147
91
99
134
175
113
101
85
128
87
76
106
143
117
93
130
122
117
76
107
124
120
148
91
96
104
103
94
117
69
99
89
107
80
76
57
80
82
154
154
145
140
172
104
106
89
83
119
88
110
87
96
161
74
130
54
109
138
99
166
102
76
75
80
109
107
101
78
80
97
88
109
88
107
118
80
169
96
104
69
155
87
133
107
141
102
175
106
56
169
99
88
76
107
69
118
134
107
118
167
112
78
87
107
128
119
87
106
87
87
131
99
80
106
122
154
145
151
174
106
91
72
80
56
94
185
110
88
120
127
140
123
144
99
104
118
127
147
76
43
76
145
80
80
78
140
109
78
107
88
134
99
136
96
131
80
94
139
89
78
114
119
126
155
136
134
76
94
108
69
160
76
68
154
136
94
102
78
129
87
106
89
120
128
109
56
96
110
52
80
101
114
106
118
89
80
69
164
109
89
80
74
153
80
89
118
106
78
88
131
91
100
117
107
115
72
115
83
146
78
60
76
106
100
163
91
80
121
120
110
93
69
93
88
71
117
131
136
100
122
76
107
129
74
80
89
151
109
91
100
69
104
78
104
117
96
85
146
64
72
102
87
134
172
80
117
89
54
101
129
108
128
131
119
72
69
109
107
136
69
110
69
125
78
119
85
87
151
106
128
175
76
69
87
96
120
112
80
54
116
97
155
118
80
80
102
56
107
104
114
54
84
93
99
83
125
98
87
119
115
151
106
110
100
88
117
72
78
52
80
197
78
174
77
96
123
69
89
111
69
151
95
78
56
101
78
83
57
92
87
120
136
110
93
148
100
71
76
94
80
76
112
137
90
76
156
85
78
155
122
87
88
123
121
121
115
150
136
178
162
69
131
134
72
155
52
143
69
80
78
131
119
87
76
155
87
74
117
104
87
76
101
69
95
120
107
113
80
92
69
137
93
80
88
82
121
143
143
94
103
136
94
117
100
114
163
109
175
69
76
63
107
104
111
113
131
131
142
103
69
104
99
76
72
79
120
74
151
134
144
69
80
102
106
80
80
76
67
99
121
127
128
74
119
130
94
88
88
134
74
175
72
109
157
107
78
136
68
105
89
87
127
123
154
130
111
122
94
109
69
137
89
87
113
126
119
94
134
101
80
93
131
119
107
164
101
137
94
94
128
137
87
88
154
69
102
110
181
80
145
160
106
85
91
88
183
102
109
69
129
80
127
145
91
154
104
119
118
58
101
56
69
113
112
80
72
80
110
87
122
100
163
80
128
146
90
117
109
102
69
104
155
150
101
121
82
110
124
106
121
106
56
64
69
150
129
80
146
89
155
80
83
124
118
123
72
69
105
89
72
146
80
116
113
159
107
69
119
69
93
128
110
92
87
129
135
152
140
80
99
69
110
136
134
156
144
89
78
88
197
91
69
78
69
121
136
119
79
117
54
86
76
69
119
133
119
152
91
83
69
100
88
69
80
89
121
145
89
104
90
197
96
143
89
117
151
160
116
99
137
118
78
106
119
118
140
156
107
76
120
174
69
91
80
175
82
76
134
95
83
106
79
80
74
109
115
126
76
148
122
99
80
104
174
121
93
88
80
148
82
75
199
110
100
132
69
123
116
113
80
134
99
119
80
113
162
119
76
54
140
121
183
78
112
162
99
93
69
96
88
140
137
115
131
88
106
163
131
125
63
195
109
99
69
109
69
116
92
131
87
109
84
52
155
52
109
96
120
101
119
98
163
120
104
76
87
119
90
85
140
76
124
73
69
120
122
52
69
109
120
111
72
109
88
76
80
112
133
101
120
89
123
69
69
138
111
80
69
56
80
157
74
113
76
78
128
137
78
80
93
80
99
115
76
69
80
127
89
72
145
78
80
76
95
72
156
101
128
173
134
87
103
80
88
136
52
91
102
134
123
94
163
87
127
157
87
156
69
126
72
143
164
85
64
128
80
119
69
95
80
80
94
94
121
92
132
80
114
95
103
136
165
163
78
92
109
124
161
154
80
132
120
75
125
111
109
80
110
76
121
147
69
69
89
93
88
74
163
100
146
80
136
131
95
113
52
87
93
109
99
115
95
69
87
130
127
91
80
119
119
88
134
69
87
73
142
80
121
110
102
89
69
85
99
144
106
102
87
136
131
69
134
78
93
69
109
78
127
134
119
72
93
80
82
69
126
85
72
142
156
104
80
108
80
114
80
130
100
88
98
94
119
127
159
159
80
156
88
154
156
93
80
86
119
126
119
160
80
111
131
72
117
104
85
80
87
104
148
108
162
94
101
128
69
175
87
91
69
94
199
76
136
137
152
54
107
106
128
69
128
80
83
131
87
74
91
126
104
131
120
126
80
123
85
116
94
80
127
148
157
56
78
96
87
96
87
160
80
85
113
80
143
128
137
112
88
56
119
154
80
88
80
146
52
131
78
89
98
117
99
119
134
101
159
89
81
119
160
100
69
136
82
69
110
149
87
109
131
136
96
120
142
103
122
94
114
88
80
88
124
78
99
99
80
69
92
87
69
125
128
138
160
94
117
88
150
100
79
60
110
69
80
136
118
140
107
112
89
78
183
155
80
52
112
78
97
72
151
88
96
112
94
111
154
86
80
76
120
78
72
185
74
88
80
89
85
111
132
175
122
69
92
106
80
80
146
121
118
89
133
197
109
114
94
197
95
120
88
64
99
110
145
136
80
66
76
154
78
107
107
78
117
146
88
104
107
88
87
99
122
125
145
131
83
95
78
69
86
119
80
154
112
87
112
101
52
87
60
159
104
114
87
146
89
80
115
175
102
137
91
87
106
119
80
120
121
107
91
99
100
78
120
88
88
131
143
88
94
134
134
102
123
163
107
80
78
52
144
69
99
113
129
154
117
80
133
131
107
110
69
104
104
94
159
69
91
69
121
104
107
72
89
163
78
139
154
69
141
127
107
106
116
76
88
175
87
107
78
137
74
80
144
110
85
111
116
122
80
80
164
120
187
113
87
72
118
69
78
94
110
109
78
117
87
99
69
80
69
72
72
80
113
98
112
104
112
134
80
87
97
115
69
155
109
104
80
128
136
87
83
69
76
76
80
131
69
146
72
112
145
117
87
93
80
121
87
148
119
107
94
72
138
128
88
80
87
96
142
107
87
115
143
124
93
123
103
89
113
127
52
140
150
197
93
96
54
99
116
96
109
101
78
166
60
110
94
145
143
136
97
140
132
165
130
128
132
80
88
72
164
157
159
98
124
145
100
76
164
80
114
144
69
54
94
98
87
118
76
124
80
149
106
131
112
134
104
76
197
83
88
87
197
76
75
136
91
110
72
97
88
151
154
80
109
85
155
87
157
97
96
183
134
93
87
134
126
69
141
109
127
209
74
69
76
112
94
111
99
116
101
80
136
132
78
107
69
94
80
140
120
76
87
134
138
137
211
136
110
80
107
107
78
80
78
52
107
74
115
119
101
136
78
137
94
90
87
128
154
93
88
69
76
98
93
80
175
85
147
100
80
154
80
80
111
88
114
80
91
107
110
113
137
100
80
80
80
119
141
92
108
107
122
76
109
91
175
69
43
119
122
137
146
143
175
175
80
197
69
105
80
163
156
109
85
111
143
80
140
122
98
143
56
76
69
87
110
69
156
120
101
80
120
69
87
90
69
147
93
128
131
113
80
87
111
145
78
117
112
99
73
73
101
80
136
104
110
80
89
78
116
109
69
85
147
115
69
88
94
121
88
69
147
69
164
130
109
107
91
134
69
87
114
163
122
119
93
122
80
80
201
156
99
106
93
78
130
104
120
85
75
175
106
125
134
96
123
93
72
119
69
119
165
78
129
152
101
74
138
128
116
102
155
109
107
134
109
72
108
154
88
120
160
99
140
76
140
69
52
112
104
103
104
80
64
106
109
154
140
72
107
112
69
74
105
80
154
87
99
91
89
80
107
140
112
87
100
128
172
126
82
69
107
107
119
118
89
112
91
128
89
85
99
80
91
120
69
140
121
88
145
89
78
119
115
110
164
99
85
101
128
107
80
78
92
80
76
118
67
85
125
132
164
124
110
120
116
87
90
95
93
69
175
99
125
119
99
145
109
132
107
112
80
87
118
72
109
83
175
69
69
136
76
109
119
155
116
175
94
156
166
98
118
123
69
78
76
87
64
98
71
72
80
131
76
56
80
80
119
142
76
98
94
80
128
164
145
154
115
76
135
108
100
78
119
78
109
109
78
95
74
75
134
106
133
197
133
154
120
83
80
69
107
131
113
102
79
93
107
63
140
114
78
104
83
69
69
107
121
80
163
119
89
87
76
99
112
96
155
142
88
72
175
119
118
76
109
93
102
119
54
146
120
128
155
107
94
82
101
80
80
80
145
121
106
152
80
155
175
111
83
118
175
101
125
76
110
104
136
136
140
75
137
169
113
136
197
126
80
107
85
103
87
104
111
119
85
117
69
111
75
175
111
54
112
69
69
80
80
54
162
88
96
87
151
80
143
104
69
139
76
82
164
68
108
140
88
120
102
109
151
74
104
91
115
117
80
142
69
80
140
56
137
54
87
101
111
76
69
163
126
118
96
83
99
80
165
146
69
92
128
96
94
93
140
151
78
136
69
146
78
76
87
129
127
109
80
160
129
119
120
122
175
72
105
105
89
132
70
75
134
137
164
128
69
97
148
116
160
183
114
69
79
76
114
151
150
80
80
72
69
94
103
99
91
143
134
102
134
155
75
69
69
75
117
121
89
99
92
183
87
155
199
119
134
185
115
137
174
119
106
91
109
151
145
91
103
76
113
87
80
85
73
156
76
80
105
123
88
80
126
85
80
72
80
115
88
137
131
110
141
88
87
107
80
72
85
69
145
120
89
99
94
90
109
155
137
142
104
165
80
115
105
163
110
88
87
115
109
119
69
69
152
102
80
113
109
69
120
131
89
69
119
58
78
131
143
94
78
85
107
94
90
129
175
108
69
69
119
89
156
98
131
92
140
76
126
98
104
113
163
69
80
54
128
116
112
52
100
118
78
117
117
80
69
104
120
109
54
107
97
113
78
107
109
96
71
144
125
110
80
100
134
118
137
52
155
87
78
98
72
93
120
87
85
137
138
120
131
154
69
78
201
151
91
175
150
78
119
119
126
52
131
80
72
52
78
82
153
69
136
69
102
154
101
117
119
79
119
107
150
115
69
96
74
111
74
76
52
175
83
69
88
108
127
80
69
80
69
118
87
80
72
98
80
85
117
75
102
78
155
54
153
151
69
138
76
120
161
140
69
96
113
80
76
87
110
154
107
80
127
119
80
80
122
71
147
122
102
80
187
87
128
138
174
158
112
69
103
114
151
78
74
82
120
69
107
148
113
88
175
157
146
140
138
112
87
76
98
140
69
123
107
134
127
52
76
151
122
80
80
134
119
129
124
74
69
144
126
121
76
136
119
132
93
69
80
43
82
80
80
56
134
103
78
123
104
163
131
89
134
69
136
119
145
164
131
69
78
127
99
90
69
146
69
146
76
80
80
80
85
80
154
97
136
73
99
104
134
81
89
78
96
115
137
91
80
199
128
93
119
89
106
87
104
134
104
93
136
110
112
131
80
92
149
114
85
111
78
151
127
85
89
78
78
134
128
89
80
106
104
80
144
101
104
76
69
131
90
78
121
54
117
80
87
120
80
76
72
142
96
88
78
115
109
134
87
100
109
119
80
69
91
80
115
69
175
80
154
101
201
148
80
80
80
72
120
76
154
144
88
130
98
110
155
69
54
80
78
131
143
117
87
76
88
96
147
87
154
76
120
64
119
101
101
155
87
120
154
99
69
88
104
80
76
77
74
119
90
85
110
133
109
122
120
78
76
122
109
93
175
96
74
121
154
87
69
74
121
148
80
99
112
80
94
114
119
110
107
156
87
96
107
87
70
101
139
164
113
134
121
125
110
103
141
80
120
54
146
114
112
101
80
123
89
69
94
98
80
175
154
171
143
89
112
133
80
112
69
113
76
131
128
106
69
134
115
113
114
174
80
78
43
109
88
151
69
115
78
83
101
103
126
122
69
90
111
163
80
80
149
129
128
111
80
80
88
175
113
112
52
117
121
113
104
115
110
79
93
80
124
72
128
60
102
134
110
110
73
88
99
69
78
69
156
74
127
82
95
133
87
85
147
114
69
91
69
134
69
80
58
94
156
154
175
78
121
155
90
117
136
131
112
98
131
100
154
89
128
126
109
99
90
118
99
80
85
146
136
151
80
107
111
131
111
129
107
78
98
134
87
72
148
99
87
109
156
86
89
93
129
104
87
126
104
146
89
131
118
131
85
88
69
140
101
67
87
90
80
107
142
89
97
80
120
80
89
69
151
80
85
87
94
127
71
74
80
175
112
118
59
163
99
109
88
118
76
113
88
99
107
96
69
128
131
135
74
153
155
87
131
72
128
136
80
88
106
80
140
181
95
69
120
72
125
99
126
80
133
80
91
119
96
120
155
145
125
127
121
165
176
151
98
154
110
106
140
89
69
78
110
78
69
110
88
115
122
110
43
108
109
131
69
118
80
64
137
144
104
88
72
99
106
152
109
73
154
88
113
131
101
100
103
141
107
87
89
80
80
78
109
131
91
69
113
87
109
97
43
104
172
175
76
63
154
78
87
120
94
78
96
71
119
80
139
107
132
144
88
125
78
145
96
56
92
67
85
87
114
87
104
91
99
129
117
175
76
99
78
78
83
127
124
80
90
80
80
80
87
121
175
78
87
151
145
131
109
72
78
110
100
149
126
136
140
93
69
113
134
175
120
87
104
66
84
78
125
92
130
87
104
78
126
119
81
177
110
118
143
146
76
54
106
140
117
151
117
59
98
201
154
93
117
140
113
87
71
154
113
118
128
186
93
120
91
94
128
96
74
102
106
101
74
102
104
103
104
128
197
160
129
114
119
119
104
117
111
120
74
104
143
99
76
88
103
95
88
185
113
161
197
133
123
199
112
138
88
149
119
121
112
156
76
128
76
154
100
140
95
80
105
163
163
156
131
121
76
69
80
87
96
140
82
107
113
147
109
114
148
113
94
119
144
101
154
131
87
110
77
110
124
80
106
80
87
136
78
80
69
107
132
80
80
118
74
87
89
80
103
80
175
89
154
72
78
146
85
76
128
69
121
130
87
78
82
99
154
104
80
87
154
92
110
74
112
87
125
146
102
112
107
80
80
104
128
136
87
69
69
80
83
78
89
69
126
74
85
140
107
90
87
94
146
137
54
144
78
80
103
87
175
96
78
117
95
76
75
52
110
131
151
113
102
69
154
79
112
151
140
78
64
99
109
197
78
99
175
93
155
90
163
113
107
114
76
114
128
112
113
63
87
52
106
80
69
69
88
109
76
90
76
113
87
175
72
151
106
129
120
78
164
87
96
149
98
114
80
122
98
175
76
201
80
69
80
164
128
140
95
80
56
175
69
80
119
145
175
89
128
120
197
75
149
121
76
90
101
80
102
115
117
89
69
90
69
124
91
201
91
68
107
76
78
118
114
129
96
120
134
138
88
67
111
120
101
99
122
99
69
76
87
76
143
93
93
130
151
69
104
80
72
87
69
155
112
76
112
83
76
148
69
76
91
85
131
68
80
95
87
114
166
80
109
120
115
134
116
76
80
76
99
80
133
146
94
129
71
164
104
93
136
137
78
69
116
81
80
113
120
69
145
145
52
80
110
104
119
109
77
102
87
83
119
112
121
176
140
110
94
69
155
83
107
78
143
87
145
123
69
89
113
146
89
106
117
92
123
88
110
126
154
119
115
87
76
80
122
100
131
112
151
151
164
76
80
133
96
52
96
101
80
147
114
87
69
124
78
107
175
140
78
54
89
94
76
156
138
104
94
138
72
96
88
87
119
119
96
109
109
120
105
80
112
183
87
76
79
104
117
83
127
76
87
125
128
107
87
94
78
112
127
72
107
94
63
113
104
107
160
69
113
94
74
88
80
87
113
117
146
80
137
106
154
56
91
136
156
93
125
146
140
117
93
134
87
104
67
120
136
120
156
96
80
72
80
100
163
123
67
112
66
102
109
114
119
110
175
120
121
69
156
89
100
144
89
143
111
132
113
149
87
87
147
78
78
69
68
143
136
128
128
95
91
80
128
94
199
123
127
112
91
130
87
136
88
181
130
76
175
87
93
69
117
117
153
91
106
80
175
110
98
100
121
154
113
128
117
110
80
131
80
127
99
136
143
88
73
109
115
111
80
118
127
87
119
126
137
123
76
80
144
131
74
107
117
71
76
120
175
121
122
119
104
120
69
104
77
107
175
79
69
88
107
69
69
80
163
96
69
138
131
99
156
89
69
140
146
201
178
69
67
156
102
88
131
88
89
98
119
159
156
66
112
149
109
164
120
156
91
69
121
128
181
76
76
80
69
80
93
80
78
76
121
104
119
78
115
75
87
117
69
136
99
83
118
148
69
120
54
87
143
103
133
160
156
137
117
181
69
72
107
163
80
175
98
91
118
119
113
133
118
88
96
80
143
151
119
106
113
103
128
88
104
103
100
104
93
80
92
80
129
71
120
89
85
107
134
88
69
109
80
106
104
123
132
80
132
145
76
117
69
104
94
110
89
134
113
122
119
109
102
120
91
129
107
80
115
114
155
134
122
99
94
105
88
80
87
87
103
120
88
88
128
100
136
80
123
183
91
96
119
80
123
138
106
121
72
137
132
89
69
164
159
134
80
88
121
128
109
121
104
80
131
101
107
69
107
94
78
91
107
124
79
112
80
128
151
68
120
112
102
69
87
127
74
120
117
106
127
72
99
121
110
91
87
101
112
99
88
74
104
106
69
76
114
107
155
136
128
119
197
75
154
93
88
119
113
134
126
84
134
93
69
88
123
78
175
89
80
80
119
111
89
93
106
112
102
109
176
94
104
80
119
101
87
172
201
115
80
115
121
94
175
87
101
110
119
100
52
145
99
88
121
109
100
52
80
113
94
107
151
110
135
76
96
87
104
134
197
149
131
112
119
78
120
104
80
109
75
99
69
138
100
197
80
128
119
80
112
120
104
98
150
107
81
102
104
119
69
100
138
133
74
121
141
140
138
80
69
175
52
175
122
122
80
87
88
154
136
87
197
121
197
80
112
91
112
143
164
131
115
137
103
131
78
151
88
116
87
89
175
120
74
110
120
109
117
80
80
76
115
140
69
131
54
80
96
104
93
88
101
101
96
87
136
143
154
89
69
119
80
87
209
88
76
74
104
175
87
110
175
82
114
87
127
134
109
119
162
69
59
91
91
128
69
90
80
110
112
78
103
87
91
103
69
104
104
113
140
69
201
112
151
140
136
82
137
103
131
99
87
119
102
128
100
80
118
94
119
134
78
88
119
119
80
76
85
69
102
59
80
154
131
80
102
101
130
129
107
121
99
112
155
122
119
80
94
106
96
110
101
69
69
112
175
113
52
121
94
151
78
119
97
113
101
152
122
88
80
121
78
129
145
69
107
54
79
80
132
88
87
107
72
125
117
112
109
68
69
76
87
76
72
109
110
67
96
175
79
90
85
56
140
136
197
89
80
90
78
107
119
123
154
137
69
112
121
134
69
96
78
87
102
125
126
119
80
69
80
123
99
134
127
133
76
80
119
156
101
111
76
118
94
86
132
160
89
87
106
131
94
78
175
94
149
107
78
80
128
80
87
109
80
89
151
119
96
79
152
128
104
128
69
81
80
119
69
87
56
75
83
136
124
145
154
120
96
80
80
93
107
80
124
87
118
151
118
69
109
151
131
122
54
99
78
69
72
118
118
105
146
141
132
88
109
69
110
88
69
83
134
87
155
110
76
91
89
80
114
155
91
140
113
175
72
87
154
106
85
118
131
87
52
80
88
94
76
133
94
106
156
131
69
118
87
109
82
95
58
87
110
131
120
54
138
151
123
130
95
165
197
150
76
94
87
59
80
109
81
43
107
91
69
131
78
80
111
102
80
69
89
79
69
76
117
163
141
103
128
152
96
128
87
112
113
94
124
136
113
121
79
84
99
113
76
87
145
128
144
79
80
109
80
80
80
134
144
69
78
74
107
80
134
54
91
127
114
119
143
128
67
87
136
80
118
72
126
145
132
121
67
133
71
83
119
120
76
88
89
79
114
175
98
87
129
100
112
69
147
118
107
78
119
183
122
120
78
137
69
80
104
87
80
104
89
175
85
106
96
56
69
165
88
83
175
119
143
107
96
139
76
154
78
78
87
112
132
95
69
104
80
88
153
104
143
113
134
91
148
99
86
175
175
110
99
103
119
113
154
155
109
156
107
140
154
122
92
85
89
85
121
94
117
101
102
66
107
80
98
94
80
87
117
88
99
80
134
128
163
80
80
175
72
128
82
69
81
112
138
89
119
156
175
113
134
143
100
107
90
145
96
88
99
121
96
80
148
112
119
79
99
80
120
111
87
69
146
99
115
145
117
72
115
78
85
75
110
121
133
107
113
57
144
87
112
148
89
101
97
113
121
88
76
69
120
99
141
175
117
113
96
80
127
115
79
119
183
128
128
140
115
87
120
157
136
69
197
94
146
106
87
136
106
80
175
132
69
93
78
69
69
175
91
107
140
95
87
104
69
134
142
130
113
80
87
87
104
102
78
72
72
103
89
111
76
104
78
183
148
128
103
80
106
75
69
109
121
119
80
78
103
99
78
110
86
76
104
89
87
98
137
118
160
107
93
193
76
87
129
103
85
99
78
80
80
95
161
120
52
107
111
76
127
118
80
80
128
128
136
98
129
109
125
87
102
148
119
66
143
117
99
76
83
66
125
87
123
154
99
90
95
164
89
80
110
69
107
117
113
99
67
107
107
127
87
69
119
82
52
88
175
69
117
69
113
76
175
69
134
87
147
89
80
123
112
118
163
175
127
119
88
107
147
106
80
102
69
99
99
119
69
78
134
64
54
146
69
128
157
140
91
88
89
69
175
119
112
109
126
128
197
80
87
74
109
52
88
120
175
80
126
128
69
80
131
80
80
106
69
119
87
171
76
80
104
78
99
175
183
104
80
81
113
69
87
76
96
99
109
89
87
136
89
115
80
137
80
154
113
109
107
109
134
145
80
120
154
118
80
43
80
78
94
80
87
76
69
80
80
122
137
94
100
88
85
129
121
131
105
56
102
115
102
99
72
80
119
110
107
103
102
98
134
99
131
72
88
80
78
99
131
101
121
83
78
119
107
87
109
152
83
121
106
118
95
86
52
72
82
104
119
151
105
151
95
69
120
132
74
72
88
69
124
110
121
124
100
119
99
146
133
96
120
110
89
117
117
121
80
113
114
130
102
140
175
101
104
80
183
131
80
110
104
99
76
95
94
93
120
92
99
101
117
94
80
87
143
75
122
69
107
119
78
78
156
69
78
69
126
85
54
109
91
101
90
99
143
121
118
100
126
76
95
199
76
117
88
71
131
162
117
154
76
107
158
123
78
118
152
111
69
88
63
106
80
104
69
78
80
147
104
119
124
83
90
124
107
93
87
107
86
56
78
119
93
102
119
119
109
197
52
114
69
88
177
111
80
89
128
76
122
166
174
104
76
76
76
87
150
104
119
72
74
111
91
78
119
69
87
154
183
107
88
80
118
100
80
89
69
164
104
76
80
87
69
74
128
95
74
89
80
78
148
96
88
94
79
87
76
69
156
87
109
87
76
80
120
134
131
154
52
79
127
88
172
114
96
80
89
89
155
87
151
140
120
131
128
120
87
140
197
87
118
88
120
107
94
80
99
134
109
99
143
69
131
163
175
78
101
109
96
146
131
104
120
156
136
57
121
69
78
119
85
69
175
138
140
175
87
156
80
91
78
104
121
117
112
134
80
66
78
154
124
80
163
129
101
104
75
80
111
104
72
106
125
91
80
143
69
43
136
71
88
52
119
113
94
80
124
153
95
72
87
75
156
130
107
97
109
80
111
138
148
80
155
69
101
96
69
94
80
93
107
69
69
69
131
96
107
96
89
87
78
88
74
123
87
69
80
111
78
183
156
128
126
78
114
125
119
104
126
175
118
110
72
109
95
95
131
117
99
107
118
93
78
111
52
164
80
131
107
181
131
128
133
69
80
89
107
80
91
87
133
102
197
122
166
96
80
69
131
89
132
78
128
136
82
113
131
106
140
134
69
120
122
197
69
145
129
145
80
102
118
104
146
96
137
154
136
52
109
118
163
119
128
120
107
69
113
78
97
106
66
131
116
137
147
94
175
87
187
109
119
154
91
120
69
127
76
121
133
154
102
69
103
133
106
76
69
107
107
83
121
166
142
87
156
146
85
69
131
115
119
74
110
69
106
127
96
120
69
136
201
94
102
151
76
119
64
119
80
107
126
117
80
80
69
82
119
80
80
88
102
146
87
89
154
109
118
118
69
88
109
76
111
111
118
146
90
67
194
119
131
87
107
98
80
175
94
94
84
114
120
74
104
117
80
78
175
146
140
121
134
52
80
87
117
154
117
175
80
103
80
116
113
68
133
110
90
80
87
175
76
94
175
156
69
103
120
113
106
112
197
91
94
74
146
132
115
127
94
137
78
107
113
83
110
140
163
99
149
102
128
78
80
93
110
175
75
69
134
87
165
132
102
80
80
131
175
151
78
87
107
151
122
119
157
80
100
87
134
88
161
125
112
196
78
97
92
134
56
154
80
80
125
120
83
76
83
88
120
164
95
136
115
76
80
136
80
120
78
89
115
78
108
151
162
89
76
72
99
69
74
128
127
99
109
84
89
125
120
110
90
154
80
126
145
119
69
169
125
52
85
113
69
88
91
66
101
108
105
89
80
69
102
92
87
69
122
87
134
80
91
80
72
88
106
107
119
99
130
72
87
72
119
121
74
98
74
80
147
125
163
113
69
127
111
87
107
121
103
72
76
140
120
69
80
91
86
116
151
155
69
80
119
140
123
98
115
88
66
80
79
56
69
96
175
80
143
136
69
114
52
99
107
78
120
140
76
78
96
79
112
56
101
128
140
75
74
80
113
80
104
109
120
133
101
74
120
60
120
69
107
142
69
82
104
128
69
175
87
103
93
115
175
127
104
130
76
80
104
85
69
183
110
78
124
74
104
87
118
76
109
80
110
117
87
118
140
127
132
85
113
175
78
69
80
80
78
80
175
95
94
78
127
80
124
120
136
134
75
148
151
133
104
97
111
87
113
76
80
155
74
106
104
181
87
107
69
87
74
78
87
104
107
120
134
107
130
54
160
91
107
43
71
80
139
99
72
98
126
88
93
93
113
145
119
117
69
102
109
100
94
96
91
70
99
144
143
96
196
136
107
72
107
80
80
88
69
110
127
94
102
104
113
72
106
134
145
104
100
120
110
94
122
76
69
87
69
96
66
80
69
69
99
129
87
160
137
78
69
120
88
140
116
96
80
87
74
104
163
112
119
137
156
146
100
120
60
169
99
43
69
78
128
96
69
154
120
80
80
145
128
98
160
100
78
100
121
106
140
122
78
107
88
88
147
98
164
156
197
119
101
113
80
89
183
118
67
164
104
155
118
116
164
78
112
87
121
102
80
136
119
80
80
91
131
80
164
80
104
80
151
128
69
163
78
113
123
121
96
143
128
121
83
94
104
107
174
56
87
118
119
107
101
119
123
104
80
134
78
80
104
91
120
94
155
80
99
78
175
143
106
151
80
90
60
164
80
87
143
145
87
98
104
155
112
103
88
107
88
120
104
128
69
107
99
94
99
80
76
106
89
128
109
86
78
89
128
69
136
79
83
111
110
100
89
78
56
80
95
80
87
87
156
78
117
80
80
109
146
102
122
140
110
130
90
136
154
101
94
175
112
136
80
56
199
88
118
80
59
128
164
94
80
69
136
175
97
107
69
80
89
85
106
103
88
128
110
137
175
54
76
112
154
119
121
87
56
87
85
87
67
115
99
117
74
104
137
88
69
94
80
80
113
118
112
160
139
90
175
102
101
78
78
145
134
100
118
52
107
99
141
99
141
143
129
89
96
88
80
72
120
110
133
175
161
197
175
71
102
128
128
80
175
119
135
151
100
175
78
78
140
118
80
130
69
80
150
110
69
107
118
87
111
87
80
87
106
115
110
100
75
87
89
88
154
78
107
111
73
155
74
69
109
145
136
109
107
96
119
153
64
120
78
110
99
80
76
149
91
88
108
142
122
126
119
115
147
56
89
91
98
109
80
102
118
129
76
93
128
74
72
175
96
107
154
111
107
76
88
104
80
87
108
71
104
121
142
115
133
143
91
107
107
76
140
66
69
104
107
120
87
95
80
112
131
83
155
131
69
85
88
99
162
128
91
80
119
119
101
108
80
124
109
132
78
128
88
76
69
76
80
128
120
135
69
117
79
95
109
101
119
89
69
56
69
120
87
69
78
131
155
186
76
106
88
80
127
80
166
89
110
80
113
122
154
136
76
56
175
127
80
199
69
128
99
117
72
99
122
147
80
56
87
71
109
115
90
100
106
115
107
102
100
143
87
102
121
124
80
88
120
69
74
136
69
154
109
175
80
104
107
131
134
119
106
119
80
74
140
98
110
104
69
120
175
201
104
122
121
101
66
148
80
115
155
163
89
134
119
151
88
138
83
113
80
127
87
69
76
78
109
96
109
154
99
134
78
160
76
154
80
85
56
155
119
144
85
75
87
80
103
97
69
172
87
80
87
92
131
59
72
88
88
107
109
89
80
101
76
87
100
107
116
117
112
102
130
132
109
175
131
96
74
80
102
136
119
92
64
123
87
121
136
116
116
80
110
155
146
90
91
106
76
88
107
175
101
72
115
120
128
131
134
80
131
102
125
80
128
117
109
74
171
88
109
78
80
133
120
172
69
96
140
95
156
76
128
133
123
80
80
78
127
131
90
59
131
113
69
110
107
119
116
80
87
80
127
131
119
119
69
80
69
151
106
52
107
72
163
80
119
94
96
132
69
183
134
58
87
110
104
114
143
69
109
125
78
76
122
174
106
133
101
109
94
110
175
197
91
156
52
175
79
117
80
119
122
163
146
110
125
131
110
72
121
154
78
107
121
128
121
113
145
76
117
119
97
142
113
89
112
120
99
87
72
107
92
99
131
99
140
69
69
162
154
134
52
120
90
89
106
90
59
115
91
101
125
88
129
110
154
100
157
155
93
89
122
78
119
110
87
107
101
119
83
69
76
104
69
69
109
86
101
75
72
89
80
67
133
144
127
76
103
147
100
76
147
107
96
78
99
118
146
113
88
88
115
117
99
69
156
132
120
113
134
148
175
93
107
79
88
121
100
69
78
107
78
76
85
111
89
89
119
80
128
87
175
136
118
75
111
111
80
76
123
88
78
162
88
117
80
97
69
117
69
117
100
126
54
110
121
69
160
164
148
154
109
143
112
174
110
80
74
124
120
80
107
120
69
134
107
113
76
110
80
123
115
69
69
133
114
107
69
122
89
72
102
109
128
117
94
102
92
104
115
98
89
87
146
131
100
133
75
152
175
80
56
69
114
119
117
80
92
78
95
136
103
117
82
148
119
99
99
73
112
69
107
80
134
104
144
113
76
87
80
144
92
83
99
120
74
78
112
175
130
89
131
130
117
93
112
69
115
110
87
152
72
80
140
94
112
120
80
87
127
134
69
69
119
107
72
110
83
122
76
154
128
140
102
107
164
113
89
146
106
52
117
147
69
76
134
76
75
148
88
122
94
74
120
149
138
145
96
80
124
52
58
76
111
69
80
115
69
106
145
80
67
103
111
175
94
115
107
134
141
88
175
88
119
80
154
117
136
105
120
140
80
80
57
117
69
72
121
91
80
76
151
76
154
90
156
90
69
175
72
112
146
119
78
127
80
146
69
113
87
119
80
109
87
145
78
154
90
134
178
119
118
143
120
80
134
140
89
80
69
113
130
88
123
111
76
109
88
127
118
99
119
104
84
90
155
104
136
102
111
80
109
110
209
121
85
143
93
140
63
78
69
89
127
76
107
112
120
110
89
109
76
121
99
114
76
87
128
78
78
99
74
80
112
112
52
169
78
117
134
95
128
87
128
94
87
96
93
71
107
87
143
91
154
78
43
69
121
80
69
102
112
118
134
109
156
156
80
133
84
80
80
175
87
152
69
112
100
99
99
101
92
118
54
74
137
104
131
83
78
107
155
88
137
80
110
109
80
145
60
88
93
128
133
85
119
121
107
110
78
81
99
76
127
100
52
154
107
87
112
52
120
134
148
109
131
87
156
80
100
80
80
122
117
80
99
162
134
78
199
98
74
156
105
98
147
100
80
125
140
80
128
78
140
74
78
124
100
69
154
91
123
88
120
119
69
103
104
115
201
120
154
154
85
78
107
94
88
98
110
89
69
113
94
175
80
127
69
101
69
84
107
78
183
107
104
175
115
74
87
88
67
60
155
197
119
142
144
87
74
111
89
80
121
109
88
105
87
131
123
107
175
119
112
187
69
88
88
128
119
120
137
166
123
115
66
80
80
80
110
136
78
134
117
128
154
94
80
126
99
123
91
118
154
101
90
149
155
100
142
78
104
43
87
76
119
119
134
94
80
140
70
121
69
155
76
163
138
104
87
131
113
69
88
120
118
136
87
155
69
83
79
104
88
154
52
124
131
64
80
124
88
80
175
175
113
107
119
80
80
56
99
163
113
74
138
72
111
127
119
94
113
108
136
115
131
87
136
109
197
98
91
87
122
117
88
69
87
136
80
159
107
89
111
120
128
87
85
87
99
121
80
85
120
90
97
121
99
96
118
104
134
132
125
106
99
175
154
175
87
87
107
109
172
121
113
148
130
119
143
87
78
120
54
135
54
99
106
160
94
118
107
85
87
72
121
72
136
110
109
69
43
87
104
106
100
110
96
80
87
123
122
117
74
134
74
175
111
78
78
119
80
121
76
95
112
88
69
134
94
87
155
80
94
69
80
78
80
137
106
152
74
160
127
80
175
118
78
119
109
106
128
84
94
95
154
59
127
106
110
78
129
95
78
102
99
88
154
110
102
122
107
117
134
69
120
104
151
152
110
119
126
113
126
169
126
137
94
85
134
107
119
76
99
175
118
75
145
130
72
135
113
197
80
143
112
69
115
74
152
69
78
69
103
72
100
149
79
69
103
69
85
80
126
140
107
131
156
80
163
143
121
88
109
94
106
101
120
87
73
118
89
110
80
78
136
99
102
136
115
104
159
104
115
149
72
80
69
101
156
140
145
69
104
135
102
175
101
117
115
93
72
106
127
80
139
52
78
93
151
106
119
156
69
69
87
175
119
87
87
114
99
120
154
89
174
121
80
92
113
80
78
78
80
71
119
119
87
102
156
93
99
110
87
94
100
119
81
120
87
87
109
78
109
71
131
109
111
69
137
150
107
69
131
129
132
111
100
121
111
69
155
197
139
127
99
134
121
69
119
80
134
156
88
120
106
144
96
129
156
80
134
201
76
156
78
69
78
113
109
116
128
85
134
98
117
145
100
69
136
80
160
107
76
82
99
118
67
107
79
162
87
80
117
52
144
83
102
136
160
154
62
89
118
124
73
80
138
78
140
146
80
136
142
97
100
119
123
201
88
156
115
85
117
69
76
134
56
120
106
80
80
129
154
72
112
127
129
122
154
79
104
107
88
118
107
107
80
54
89
120
175
76
94
132
175
118
78
63
136
136
113
72
116
80
136
127
112
69
138
131
78
107
160
106
99
136
78
154
118
134
107
69
107
87
78
118
99
80
78
136
128
91
98
78
117
154
136
60
97
138
128
119
43
99
136
109
78
100
144
114
116
109
131
155
151
134
104
94
99
141
129
120
72
92
183
67
76
99
101
101
121
110
159
76
97
87
175
139
76
119
78
80
80
120
89
99
87
119
104
76
90
118
87
74
52
131
175
69
136
87
88
99
94
93
143
72
69
156
87
128
80
93
83
106
76
87
104
109
129
71
127
89
119
96
107
107
154
78
94
112
69
145
99
80
80
69
148
96
69
201
78
113
89
69
90
83
78
80
106
72
76
89
120
104
133
89
124
78
113
80
99
109
94
102
105
151
133
94
69
88
80
101
113
115
148
128
54
113
127
134
80
69
73
142
112
146
91
197
52
113
100
143
152
113
128
123
109
121
72
89
110
131
99
87
69
78
111
175
69
133
96
119
99
78
120
80
69
109
195
104
87
140
99
76
143
104
83
134
101
69
69
91
131
76
118
136
107
112
164
110
91
131
64
149
83
120
136
123
151
69
94
67
121
80
87
87
118
123
102
145
88
97
143
88
113
136
69
99
91
152
89
154
74
80
90
88
144
121
112
143
93
80
69
109
80
113
87
87
66
156
80
128
128
156
87
111
88
107
134
80
175
100
197
69
107
99
80
72
137
116
94
78
154
125
143
80
96
78
54
69
156
80
69
112
104
58
78
106
69
88
121
94
175
117
76
131
94
117
175
89
110
131
131
76
102
150
74
99
132
120
137
115
129
113
88
69
146
125
197
89
69
95
126
175
69
100
145
148
87
120
76
110
106
94
87
80
119
77
96
88
122
118
133
94
115
127
154
117
88
113
78
64
119
98
93
103
78
80
127
56
85
160
94
69
80
120
80
94
163
94
88
127
99
136
79
80
101
129
101
94
109
113
156
126
74
119
80
83
113
111
78
139
104
80
143
117
122
99
69
120
78
175
89
151
79
112
89
114
120
78
101
72
56
112
107
76
95
88
76
69
121
76
78
119
119
82
151
115
99
164
104
143
103
123
80
98
52
52
69
80
54
138
89
80
104
154
107
120
112
107
126
54
104
78
154
155
125
62
69
87
136
80
93
153
93
101
80
80
96
156
106
115
69
80
131
113
87
85
106
109
118
98
128
149
174
80
113
78
93
120
106
119
128
104
107
78
131
121
121
134
76
107
120
150
131
87
98
90
112
99
78
105
128
113
104
110
131
98
88
93
87
128
96
148
43
69
98
101
107
117
80
89
56
64
145
52
156
94
175
144
80
119
58
113
138
144
78
133
69
119
104
78
89
175
96
100
87
109
99
99
127
76
69
69
78
142
134
156
96
69
75
112
144
69
120
117
76
111
88
156
43
80
80
106
121
145
89
78
111
104
113
89
143
99
76
157
118
199
93
79
69
113
119
117
136
117
183
118
120
140
69
118
76
80
99
107
110
151
113
87
151
80
134
89
80
68
101
130
107
130
120
96
197
175
78
97
56
160
120
107
129
112
143
110
87
112
106
69
107
76
87
102
109
87
78
74
88
58
78
109
52
69
87
105
101
76
107
175
116
148
78
69
107
80
54
126
78
87
52
100
69
140
130
136
104
89
76
109
54
80
127
107
120
80
94
101
134
87
119
80
109
76
87
85
91
104
103
80
80
89
80
99
120
127
72
102
72
96
107
107
112
143
78
76
96
109
88
80
128
118
112
89
104
69
154
136
107
67
87
69
76
110
109
174
94
56
91
111
80
66
78
80
106
88
140
80
83
96
80
110
95
140
175
175
101
114
106
197
69
120
112
127
120
104
154
89
121
99
118
85
121
132
109
74
106
142
101
110
76
163
52
118
125
113
107
128
132
137
95
99
112
103
92
121
90
89
115
90
154
152
74
78
127
119
160
156
119
175
69
96
101
138
163
94
109
94
89
99
42
93
69
63
93
128
109
64
83
126
120
69
109
109
110
154
145
128
78
163
80
107
80
145
106
56
134
126
80
107
76
80
78
121
104
89
89
109
172
133
80
114
115
118
153
164
113
68
117
98
69
114
164
82
107
120
120
128
140
76
96
87
119
87
90
80
69
151
121
134
123
115
69
76
76
146
145
148
163
69
88
134
80
89
80
94
156
88
131
175
98
144
76
80
154
128
134
128
127
175
120
89
106
120
130
110
43
78
94
121
149
69
104
87
107
201
78
174
83
133
139
94
80
87
104
87
110
127
107
95
123
110
116
80
80
144
113
93
116
131
96
175
80
115
112
78
106
136
80
78
80
106
154
87
156
154
69
52
151
78
76
153
107
96
78
114
117
69
80
121
119
76
69
154
146
148
80
144
106
87
193
99
107
90
76
110
154
80
102
71
76
109
87
69
88
72
101
97
109
117
154
116
120
130
69
119
107
122
117
99
175
123
74
104
87
120
54
156
112
113
96
122
127
80
99
69
78
143
78
106
91
121
99
92
105
106
110
138
76
69
127
129
120
152
147
87
80
160
85
76
104
80
69
113
126
107
151
87
131
89
119
101
119
109
103
107
98
76
76
88
69
127
158
91
152
119
78
60
124
58
88
101
156
89
69
80
121
122
126
136
111
145
89
94
109
109
107
134
132
80
54
79
95
63
88
87
92
80
80
64
103
87
87
155
72
175
107
138
119
88
69
116
87
109
69
93
121
116
209
154
87
87
99
87
147
136
119
119
96
117
110
78
109
101
102
126
79
87
121
69
78
165
69
76
103
69
126
119
69
111
175
99
72
120
89
117
148
80
104
80
100
115
76
149
76
149
76
128
52
113
121
76
112
80
87
115
88
102
164
96
132
69
99
110
134
94
76
120
59
98
107
93
121
163
197
69
104
106
115
152
59
76
72
136
142
72
80
106
119
80
118
78
130
121
78
119
113
88
120
156
128
106
99
123
104
107
175
80
117
88
103
68
80
92
154
74
69
94
129
78
127
115
112
126
80
134
109
136
80
54
127
92
109
115
127
106
90
75
94
101
119
165
175
129
89
78
147
101
119
69
88
120
100
69
130
130
154
107
175
76
138
109
91
128
87
119
87
139
174
78
101
106
119
151
106
91
89
87
134
102
69
92
76
171
136
122
102
78
118
99
99
85
80
128
54
93
80
175
174
111
118
164
100
136
89
134
156
127
69
175
89
80
88
110
85
69
54
145
128
117
164
154
102
112
91
175
126
78
123
141
128
118
140
134
91
69
78
79
101
108
89
99
72
151
145
69
127
67
101
120
104
117
110
94
90
121
69
88
120
125
87
79
69
87
111
78
72
123
163
113
89
99
133
69
129
136
165
113
69
107
80
101
148
101
87
72
100
78
197
117
122
78
124
113
69
194
69
128
80
85
122
87
52
137
112
119
113
107
104
127
66
156
93
107
120
146
69
80
69
74
72
119
124
156
80
138
113
80
145
54
84
118
126
124
94
121
117
126
120
106
99
157
78
87
107
87
131
87
74
119
101
80
106
87
134
174
72
154
144
109
87
78
136
155
74
119
94
117
138
67
66
103
151
87
78
106
132
90
113
71
100
91
80
144
119
99
87
94
119
99
72
74
78
163
87
116
80
94
107
118
72
90
118
119
163
90
140
92
80
109
100
110
108
78
126
154
127
76
76
80
142
153
160
90
83
130
87
89
107
80
134
130
78
127
140
93
131
146
58
119
110
80
120
107
131
100
107
124
100
131
97
126
87
119
118
72
110
132
154
107
111
119
102
119
137
101
127
80
69
113
85
76
119
89
43
183
134
104
87
123
101
140
114
87
80
87
107
89
154
94
127
94
93
107
76
117
80
104
80
174
129
152
112
128
118
119
154
201
148
112
102
115
117
108
96
154
112
78
140
109
110
101
157
121
122
78
106
87
69
76
76
125
117
117
69
136
160
163
69
119
101
87
78
54
87
80
80
143
75
69
100
110
87
119
134
136
104
139
109
109
82
87
110
103
117
104
112
80
109
132
113
80
143
128
136
129
106
75
85
120
89
121
80
127
155
131
80
127
80
108
128
126
78
106
80
172
87
93
69
69
146
137
93
109
80
117
83
119
76
138
52
76
107
175
134
104
109
69
67
101
89
60
66
80
106
110
120
155
69
80
87
80
110
91
110
88
114
81
94
132
164
106
114
69
145
154
80
72
88
121
78
101
120
88
126
90
102
102
113
80
78
133
123
172
101
107
74
63
145
110
143
91
69
169
59
151
76
154
101
143
114
75
127
80
109
136
80
103
151
80
120
69
78
122
80
133
162
69
91
120
110
94
104
113
87
154
109
117
101
155
96
104
137
121
130
80
72
87
137
127
69
88
93
64
121
56
92
110
118
60
78
87
57
78
72
104
95
108
119
118
156
94
107
76
150
123
140
115
78
126
151
78
197
94
113
127
119
78
87
78
124
117
69
78
72
128
88
99
87
143
131
80
99
128
119
69
73
94
138
113
82
85
94
89
106
143
93
94
80
80
109
174
90
69
151
118
115
80
131
87
87
155
93
121
119
102
120
119
118
113
114
154
109
102
80
107
85
116
166
76
76
137
80
67
93
92
72
146
131
142
78
76
80
107
88
122
101
110
94
94
140
82
80
76
72
80
151
101
89
104
137
80
115
126
107
94
110
110
128
119
83
111
174
94
69
121
117
94
69
74
120
155
105
115
106
107
112
134
95
87
87
67
72
119
80
92
80
106
112
68
104
107
156
110
98
93
118
106
121
117
102
155
94
69
82
87
125
107
78
99
107
94
89
79
133
125
131
110
148
89
125
69
147
155
76
134
87
80
101
119
69
121
69
99
109
115
140
76
88
94
162
117
69
131
80
146
80
78
78
137
104
164
106
121
113
141
121
93
156
175
82
87
129
120
54
132
74
123
66
110
76
136
134
76
175
80
80
139
156
136
58
84
98
115
80
69
69
107
128
132
91
136
102
72
69
120
154
78
69
88
85
112
76
78
118
94
114
52
106
138
69
80
128
197
127
107
99
69
118
119
120
69
88
119
90
140
100
107
95
87
127
127
128
154
76
69
99
197
107
139
88
146
101
155
140
69
132
94
69
69
69
175
93
57
119
115
110
109
145
119
174
107
112
98
126
78
99
110
74
119
107
140
74
148
110
88
124
109
133
104
80
155
134
86
143
58
87
136
134
78
146
78
120
80
69
116
114
85
80
94
107
107
64
131
121
80
80
87
78
142
84
87
145
83
117
128
129
80
111
78
75
88
80
175
87
150
161
75
151
104
87
76
80
154
69
128
116
131
69
113
100
88
129
129
76
117
128
85
92
80
93
132
90
80
137
91
101
69
104
99
121
93
139
72
60
52
80
117
145
100
59
113
119
80
96
78
80
136
119
117
85
80
85
128
115
138
128
137
80
96
74
121
69
113
69
113
143
102
152
143
136
107
89
129
122
119
76
78
76
113
69
175
88
137
93
85
74
76
69
121
99
69
143
105
85
84
76
113
78
87
88
75
80
107
91
128
80
128
121
128
72
99
154
100
80
80
104
67
73
87
118
56
109
99
119
151
151
109
128
91
119
107
94
87
106
117
113
134
136
175
93
111
132
145
164
137
99
132
74
82
118
93
69
110
69
106
147
92
106
69
80
80
154
80
114
69
80
76
197
96
175
80
136
96
155
88
112
104
197
121
126
54
72
100
78
99
122
104
72
96
119
122
83
99
99
76
76
66
107
100
62
109
77
99
128
91
89
116
136
117
138
87
138
119
103
83
107
69
166
111
69
88
87
145
85
72
99
89
104
136
112
150
119
88
124
156
78
101
120
76
154
118
154
175
119
79
89
80
124
80
96
102
156
126
129
106
120
130
126
197
78
76
76
107
148
131
109
197
115
137
128
94
59
140
128
130
130
131
120
102
151
89
138
119
117
93
69
80
154
134
59
120
78
104
74
91
122
112
108
84
94
118
99
123
175
107
123
76
121
72
104
112
83
132
119
151
118
89
120
155
154
107
119
54
131
127
85
109
119
154
151
175
99
146
95
69
145
101
88
94
145
131
109
129
54
130
121
87
69
107
79
99
89
111
99
131
78
72
147
162
78
72
175
102
113
91
132
88
110
136
108
128
110
135
94
126
171
69
69
114
151
103
118
99
76
98
117
121
122
93
69
155
140
87
156
119
154
108
68
69
109
107
95
69
119
106
100
137
131
83
82
93
80
104
94
120
95
101
78
101
120
115
112
79
124
116
56
119
69
140
87
52
138
127
76
73
120
123
128
88
80
119
124
72
104
80
99
58
64
80
134
175
117
137
107
128
103
103
101
143
176
151
87
99
80
69
74
121
107
102
159
148
69
120
175
91
87
76
89
112
129
80
112
87
107
142
123
99
119
148
132
125
66
112
80
78
80
112
94
113
107
56
128
155
175
103
89
87
121
112
137
94
87
87
121
155
145
98
106
130
109
112
113
104
117
175
87
87
129
109
128
106
166
142
127
80
124
121
101
110
111
109
93
137
68
95
120
107
135
107
76
64
118
134
110
181
80
87
76
119
130
104
144
109
76
80
100
155
112
72
87
118
99
87
76
80
69
104
100
163
197
133
114
121
82
117
76
96
151
116
102
93
87
159
112
81
112
96
142
199
76
87
91
119
78
69
76
102
100
82
54
101
114
128
76
88
111
87
156
92
113
89
136
102
82
112
108
117
83
100
89
101
107
128
100
96
122
138
80
107
146
112
121
155
56
130
146
154
102
80
69
119
131
80
85
109
106
91
119
76
90
109
78
140
136
109
144
119
106
69
99
100
111
119
175
119
114
106
121
112
99
80
69
69
114
154
98
80
75
71
134
151
87
76
163
107
92
119
128
117
140
89
80
172
80
128
120
119
93
85
91
102
109
183
80
96
110
78
154
120
72
95
131
93
151
69
128
87
116
56
142
197
80
122
175
93
162
87
126
78
117
136
100
91
120
109
107
77
89
110
99
151
93
78
87
80
134
117
72
76
187
96
78
110
148
69
87
76
109
106
69
122
80
101
101
102
89
147
121
72
104
120
134
123
78
136
106
88
93
112
88
80
114
72
118
197
76
128
135
101
78
152
99
76
87
120
69
93
87
106
96
154
80
148
137
128
112
88
129
69
80
132
136
69
106
142
69
109
135
107
130
133
80
138
103
94
86
80
132
89
159
87
80
148
120
142
156
69
87
80
69
75
126
115
109
103
143
76
80
92
78
112
128
69
76
120
112
149
154
87
99
112
87
96
54
121
197
107
129
87
120
109
156
139
134
104
174
111
73
131
76
76
110
102
110
72
121
93
175
69
87
102
93
76
76
174
79
127
82
88
175
76
121
120
115
69
115
169
141
76
149
80
157
164
74
78
145
76
79
100
69
88
87
76
69
72
80
151
103
175
143
72
87
114
134
143
107
130
80
92
78
112
110
87
134
104
66
129
54
95
120
80
101
85
119
154
80
69
134
119
113
174
115
127
147
120
88
101
154
106
150
122
118
72
69
118
69
149
163
119
131
137
164
113
197
120
120
72
101
83
80
111
145
111
74
93
103
121
97
87
89
100
120
93
93
69
78
106
108
120
102
80
87
129
89
69
128
69
110
148
107
87
80
78
80
123
113
120
117
78
66
125
89
88
80
95
118
87
72
107
140
99
99
87
69
104
100
148
80
159
69
110
118
80
147
64
91
120
133
85
113
149
119
80
175
187
155
110
128
119
145
80
88
76
104
155
126
54
123
145
126
183
88
102
102
109
88
84
199
83
88
76
134
80
66
92
134
118
107
64
80
107
151
113
162
104
69
109
118
148
143
54
122
119
80
96
80
156
140
122
74
151
89
144
119
80
66
72
106
175
80
119
69
115
108
156
109
102
120
101
136
52
140
96
80
87
76
119
87
146
132
115
63
87
120
109
80
78
96
100
54
112
99
137
146
148
154
78
109
119
109
109
80
145
121
156
97
80
69
59
78
80
93
104
69
127
80
80
82
115
94
110
76
127
57
132
87
114
94
154
75
145
119
76
117
96
121
145
104
136
120
87
69
94
117
76
151
119
71
81
110
73
96
133
144
66
87
98
104
83
98
89
91
129
85
159
87
120
117
99
114
109
183
110
69
104
101
119
127
87
72
72
119
107
80
104
83
87
107
123
100
73
132
80
68
163
131
132
145
119
172
123
175
76
72
88
54
127
69
130
136
125
104
124
87
111
88
140
106
80
110
175
112
151
80
146
78
80
94
76
76
69
87
162
120
80
147
71
104
89
121
106
134
136
122
119
91
80
129
123
111
121
109
99
76
56
163
115
175
127
100
144
142
128
134
88
120
88
83
68
119
122
129
156
114
80
114
67
92
109
118
72
127
80
67
154
163
144
126
78
99
106
119
69
131
119
136
104
156
115
72
102
78
93
80
87
201
76
119
99
156
90
130
87
88
151
76
74
87
74
128
67
197
136
177
119
89
148
80
69
134
78
89
156
127
100
136
85
106
94
106
134
120
98
129
59
147
153
76
110
93
99
99
122
87
80
89
96
85
59
74
112
120
119
143
164
93
120
120
91
140
87
85
119
131
134
104
144
131
115
125
151
57
88
127
88
164
147
107
94
87
92
90
80
101
127
142
89
109
120
119
106
172
87
83
93
80
134
80
104
154
106
156
101
114
72
145
110
112
94
175
43
124
108
87
76
117
111
93
106
134
106
54
80
96
78
80
96
80
163
114
69
72
89
103
162
101
91
73
117
117
98
128
94
69
119
131
93
140
166
111
164
109
113
140
78
88
197
112
130
80
107
111
107
162
110
118
58
128
137
117
110
85
88
96
115
69
109
164
106
102
132
96
94
110
99
123
85
175
110
154
80
99
201
127
129
148
155
175
99
89
109
80
107
112
69
91
119
99
80
128
103
85
103
90
148
118
129
163
94
106
149
87
117
133
130
131
54
107
113
106
91
132
166
139
118
90
52
181
107
67
107
76
102
109
110
107
99
111
129
94
87
72
87
112
87
112
109
87
142
139
80
72
110
74
106
101
145
78
118
102
164
175
76
155
109
137
69
119
156
101
131
125
89
89
87
120
131
119
109
175
90
69
67
87
130
83
103
145
80
92
156
137
143
76
43
96
124
154
69
87
76
116
107
104
125
95
56
89
101
110
119
145
148
67
107
116
107
66
97
111
131
89
109
107
69
112
164
91
127
103
115
134
144
127
155
131
134
134
87
110
145
80
69
78
143
80
121
96
128
104
111
80
175
151
140
133
104
151
104
147
76
78
121
104
88
123
134
87
175
80
76
109
111
136
94
52
160
92
80
99
107
80
72
56
88
72
133
113
69
76
90
76
76
112
69
104
87
76
118
69
83
64
199
76
134
102
119
147
119
145
69
72
100
121
167
127
132
131
162
134
118
126
123
76
201
137
99
73
197
78
80
103
145
76
98
96
110
69
175
89
164
110
124
116
78
80
128
119
88
78
99
56
120
72
125
122
134
99
128
83
120
110
99
88
119
116
87
82
156
111
99
89
154
115
66
96
151
80
105
78
197
69
69
121
69
107
93
145
69
110
103
91
87
144
94
192
80
76
109
151
80
89
78
78
128
107
118
98
87
109
120
92
157
69
80
100
119
78
136
110
98
52
140
69
69
60
197
111
69
80
89
119
80
155
104
122
118
99
133
80
98
79
96
80
107
87
69
91
88
126
117
110
118
106
131
145
69
163
149
63
98
129
121
100
117
96
80
94
78
72
128
110
85
107
127
185
87
120
87
98
88
54
129
197
119
127
110
76
95
58
72
119
119
106
119
89
78
119
110
88
114
120
126
80
154
107
152
96
113
105
80
120
112
94
88
69
94
80
119
103
85
135
136
112
88
104
100
154
80
99
73
69
87
80
107
156
122
146
99
99
74
140
107
72
136
112
80
88
112
131
99
128
140
69
108
80
118
135
113
99
165
152
106
110
112
154
52
107
92
80
74
88
133
119
110
69
148
73
87
87
76
115
106
152
146
69
125
98
128
134
134
80
128
108
104
89
105
97
80
71
80
107
96
88
199
117
121
99
78
76
80
136
129
129
132
69
43
80
104
121
123
106
96
69
78
115
80
69
119
76
138
175
127
80
136
144
80
69
77
197
155
130
87
112
93
140
175
131
124
69
91
99
87
96
119
156
80
121
88
99
87
74
131
147
139
110
133
156
163
113
52
78
125
76
120
113
119
159
94
128
100
87
72
87
76
94
88
69
76
117
197
131
90
92
109
121
106
114
119
80
136
101
75
89
148
175
72
155
115
80
154
137
129
80
78
80
121
69
106
138
113
89
160
78
86
97
79
72
80
94
131
102
80
115
136
69
94
143
104
64
87
80
110
69
91
111
175
80
155
94
110
89
120
93
80
112
76
112
89
88
104
80
113
80
154
103
106
88
93
89
140
91
96
154
85
124
145
96
107
69
143
101
80
146
76
100
99
118
120
88
52
91
104
124
69
69
175
80
117
120
129
87
121
98
156
87
144
110
151
137
87
144
127
154
99
107
164
121
109
52
129
113
131
117
107
104
123
72
109
88
137
87
69
69
117
69
69
110
113
117
76
120
89
127
78
109
71
107
78
147
121
155
92
118
109
110
56
128
140
136
114
100
87
78
52
54
76
76
123
110
93
106
126
99
119
157
119
69
79
102
78
103
89
120
113
128
93
107
88
69
80
76
144
146
174
107
103
85
112
116
120
91
125
146
96
120
78
127
94
87
197
132
76
175
69
121
76
114
151
71
124
93
88
84
103
113
119
119
89
60
54
76
88
96
87
133
112
80
90
69
148
80
109
163
69
118
120
109
100
80
134
109
111
107
209
87
106
119
80
80
74
94
98
104
94
76
106
125
75
89
99
145
64
99
164
135
99
111
112
128
127
90
56
80
120
102
123
124
104
69
159
88
122
134
89
94
130
113
69
197
128
138
100
94
114
128
126
87
122
89
76
131
113
128
128
89
94
115
101
140
155
92
98
123
154
107
88
120
78
104
133
69
121
94
140
121
69
154
98
149
78
120
78
131
131
94
136
80
78
164
120
80
123
109
80
106
69
119
74
119
80
52
95
90
80
80
119
73
76
120
102
94
157
80
80
133
87
127
103
87
161
112
112
154
78
151
76
95
115
134
88
76
128
134
83
107
69
164
80
120
87
166
73
146
147
72
112
152
107
156
89
94
101
72
87
87
76
78
107
107
69
174
124
99
80
134
134
69
93
124
80
120
78
76
80
140
122
119
80
98
136
52
147
78
130
80
101
69
121
87
100
87
125
151
98
144
119
154
80
104
54
106
116
119
83
69
94
115
74
69
101
129
174
103
69
98
110
87
154
155
69
119
99
91
80
136
128
78
163
102
80
133
78
102
154
126
67
69
94
127
69
115
94
107
69
157
80
78
120
105
99
129
145
174
87
151
109
69
155
80
81
102
119
125
120
148
175
107
102
118
110
107
101
80
110
121
85
69
117
118
78
126
80
134
88
119
107
93
154
124
109
108
89
156
87
134
156
119
87
80
92
147
99
76
87
124
74
100
107
94
89
121
68
80
69
76
113
115
120
87
78
80
143
134
197
122
80
113
101
69
155
78
89
127
89
80
93
110
71
162
120
96
98
154
150
94
96
106
127
76
128
72
69
120
118
101
112
80
138
107
67
140
56
99
122
155
147
113
109
80
127
78
152
110
109
124
80
88
136
130
131
125
80
128
80
101
99
122
151
112
128
74
109
128
140
116
117
123
96
115
100
95
56
138
89
78
107
100
140
74
80
132
90
117
119
78
122
112
100
85
106
69
74
150
80
137
125
136
136
117
97
91
107
107
69
107
88
103
109
162
112
115
197
143
89
121
114
69
82
119
96
96
151
72
96
123
80
80
74
128
134
72
69
80
110
136
112
76
87
140
117
103
106
120
98
80
80
119
109
121
154
109
80
91
131
69
138
128
80
112
101
54
98
94
128
155
69
125
153
69
80
78
109
107
197
113
122
131
95
114
90
88
89
122
76
119
117
112
125
80
114
80
119
104
76
115
104
146
136
175
88
82
87
99
168
85
71
119
91
115
128
76
80
111
154
69
76
113
88
87
175
76
113
111
69
80
93
130
72
113
69
119
151
99
92
80
80
87
107
114
76
80
107
197
110
89
154
82
134
122
120
110
119
76
122
172
107
134
110
84
102
76
114
60
107
140
143
79
126
80
128
94
125
96
117
151
87
113
78
89
115
82
56
83
76
121
131
117
122
69
136
91
136
146
43
63
78
172
87
100
154
115
119
80
110
120
43
134
92
163
91
119
78
169
154
110
165
80
117
76
128
120
175
82
68
69
92
89
80
80
114
80
122
127
69
146
109
140
74
137
134
155
119
95
107
80
76
80
113
106
119
85
117
139
175
88
78
128
109
128
132
120
109
95
124
78
120
80
101
80
111
136
197
197
92
106
110
118
119
80
119
117
119
109
137
104
131
91
127
121
107
99
88
129
136
76
93
73
131
69
114
130
120
75
72
69
135
89
130
197
132
99
69
123
175
80
76
78
87
175
119
109
140
154
152
114
99
69
123
145
76
76
120
95
127
97
175
88
112
130
88
104
101
107
88
147
74
106
175
110
107
155
87
89
90
69
120
107
140
64
101
143
159
66
95
132
136
118
67
115
146
85
143
104
85
54
76
121
151
87
98
74
121
175
87
89
43
78
128
88
129
87
80
80
175
131
69
187
144
162
110
112
109
69
141
146
72
112
76
88
120
90
185
175
136
136
112
88
175
102
120
91
72
80
104
76
80
146
69
94
119
112
106
124
113
120
72
91
162
69
130
58
109
109
69
69
131
80
88
107
69
107
133
76
174
133
100
96
96
103
104
80
72
130
117
80
152
94
104
109
103
144
92
80
115
79
118
117
99
110
109
118
78
87
163
78
78
174
76
72
104
93
88
107
121
85
73
119
69
80
88
130
112
104
142
94
106
74
110
80
78
74
133
110
151
128
123
107
81
99
76
97
103
149
120
102
94
175
76
87
107
78
67
91
175
80
107
154
80
110
52
104
93
111
187
115
69
80
156
140
112
128
90
69
87
82
118
54
140
107
115
109
116
80
163
186
156
80
94
197
87
110
119
118
131
80
69
132
136
117
131
72
139
117
76
76
72
155
101
88
113
162
99
127
87
105
72
117
136
146
174
121
97
107
140
94
80
141
88
149
114
66
113
87
104
72
112
99
143
80
91
78
87
114
121
76
87
80
130
88
107
160
80
78
134
111
122
151
123
93
69
102
117
95
81
85
112
112
110
80
67
110
151
52
104
96
128
54
76
163
88
69
80
136
80
145
69
80
148
107
87
93
109
69
103
80
137
128
118
109
97
174
78
76
113
94
99
69
151
118
119
120
119
115
88
106
69
69
60
101
52
69
80
102
93
80
175
139
69
131
87
94
74
87
80
78
154
73
111
78
80
83
76
76
137
80
69
110
133
103
132
69
91
120
87
119
100
134
163
122
112
85
64
120
131
139
164
76
131
89
69
87
106
69
64
66
155
88
95
87
110
111
107
94
120
109
110
69
150
162
107
128
130
79
125
78
109
154
87
60
54
120
76
79
137
54
75
89
131
156
124
94
124
175
134
169
107
175
72
175
131
119
69
117
122
96
110
127
126
78
117
199
107
57
80
107
78
94
111
120
80
120
89
176
117
155
154
80
136
85
117
113
91
203
115
102
56
52
74
113
94
127
130
128
133
78
139
104
129
134
78
89
114
132
106
69
80
82
101
109
101
145
99
74
119
80
69
77
87
111
69
76
98
121
88
76
83
76
109
78
123
76
91
78
52
69
120
117
151
114
80
80
112
76
112
98
122
69
52
82
183
88
175
99
143
111
69
96
118
76
75
87
119
119
164
118
96
101
107
99
109
160
119
80
156
87
72
115
148
88
67
117
130
52
87
102
154
116
85
87
83
80
88
72
78
115
87
69
124
138
69
78
69
125
109
69
71
113
78
91
138
94
134
103
104
74
89
54
99
106
80
91
89
90
155
175
80
128
94
87
145
99
130
80
80
80
75
121
110
148
144
80
119
80
183
147
80
87
104
69
69
114
80
88
69
138
72
128
113
130
92
69
132
80
87
133
69
160
78
69
103
106
95
80
99
123
143
109
87
177
69
72
121
156
94
160
90
121
69
120
134
106
89
100
175
78
118
119
74
128
80
120
88
145
78
114
110
113
114
80
145
97
80
80
156
120
88
100
96
124
80
94
87
101
100
140
126
107
85
74
67
151
78
87
140
54
127
114
79
147
94
76
69
128
87
136
131
87
175
104
80
137
138
87
103
72
145
56
121
80
137
113
95
197
148
119
69
88
95
119
87
72
128
89
110
113
135
119
128
163
93
101
69
119
118
104
110
156
121
109
88
128
80
112
119
69
102
72
131
69
120
80
120
76
126
76
91
128
119
85
136
106
120
154
144
124
122
131
52
80
197
137
120
201
105
175
106
76
87
80
88
69
110
74
126
87
69
91
101
155
154
94
69
131
93
101
91
72
109
175
56
82
119
72
78
107
76
126
83
69
80
172
93
69
109
120
88
140
109
94
96
163
108
99
59
87
137
107
104
121
137
120
115
109
107
80
113
104
89
90
80
106
136
117
72
97
155
107
154
154
117
85
143
89
110
94
88
107
87
117
81
76
72
104
83
101
93
110
132
106
75
101
102
127
101
67
101
109
118
91
121
107
71
145
88
106
69
100
76
85
101
142
69
89
128
87
127
126
131
80
126
136
76
96
114
54
76
134
80
93
69
119
126
110
76
119
94
88
132
99
146
112
80
120
88
117
117
79
187
80
111
78
94
91
67
175
132
101
93
107
99
154
77
78
94
113
93
104
145
119
154
175
109
80
106
111
88
94
107
134
80
128
124
87
132
93
80
128
111
72
69
76
78
197
67
78
163
147
132
80
132
113
94
113
113
113
148
83
175
69
54
57
115
84
78
128
125
131
113
140
132
155
131
110
111
160
136
129
151
151
117
118
125
102
95
72
68
111
156
91
88
72
146
69
136
54
87
88
88
128
76
164
150
141
143
127
87
69
127
78
54
104
137
124
119
88
109
156
138
69
87
149
96
92
78
122
72
94
151
145
142
112
156
98
69
89
76
133
93
88
109
107
111
78
87
143
107
80
63
128
122
118
96
85
136
110
94
96
154
89
80
140
119
63
69
75
87
118
119
69
89
131
69
69
96
76
78
163
154
80
106
56
114
154
106
142
88
140
156
76
175
87
80
183
111
136
134
101
117
120
134
112
124
69
120
76
76
120
104
78
109
134
69
80
113
94
87
87
94
136
151
155
96
100
117
102
76
120
124
98
106
127
72
156
76
95
87
78
110
130
78
124
69
97
69
107
80
113
96
107
99
69
95
89
80
155
131
99
89
69
105
69
154
85
142
106
154
169
145
111
134
151
94
110
87
134
97
87
129
87
66
111
122
149
174
96
130
69
69
88
102
104
139
69
146
146
80
69
76
128
131
95
88
106
164
91
109
115
80
100
69
80
52
120
113
76
56
133
128
143
85
128
109
59
87
137
69
128
111
119
104
117
134
175
119
99
78
136
112
133
80
78
80
87
107
187
99
133
116
87
113
80
104
96
113
136
99
117
181
80
119
78
122
131
133
88
107
94
88
174
72
152
109
69
78
103
120
103
80
85
143
94
120
80
106
80
78
80
99
75
175
102
154
80
154
139
80
156
85
187
134
80
136
104
54
88
119
119
135
175
128
80
94
99
72
108
110
131
99
88
80
75
73
109
76
80
154
76
156
92
96
111
80
85
80
80
140
110
131
175
128
119
79
93
69
157
144
80
88
82
113
120
95
85
78
117
69
87
96
197
195
79
102
78
113
72
158
88
111
78
88
87
146
88
88
87
130
151
102
143
117
54
128
89
122
131
175
153
112
107
99
175
80
119
131
117
117
140
128
94
104
76
155
88
93
110
87
104
80
175
126
102
156
133
99
69
89
94
107
80
91
128
147
160
88
56
118
185
94
175
154
99
76
119
127
99
99
175
78
83
110
106
80
146
120
69
87
87
109
111
76
76
169
69
144
69
142
74
111
134
110
109
43
77
80
183
88
151
175
54
91
75
119
132
175
148
155
199
76
136
76
94
110
134
74
154
69
78
69
124
117
89
145
52
107
93
121
156
80
115
107
112
94
80
154
121
80
96
137
76
140
126
91
134
120
110
166
113
87
164
56
110
54
123
76
197
120
91
140
80
148
99
82
156
129
76
131
107
107
110
141
75
83
126
114
80
69
111
91
71
120
132
88
144
80
201
92
80
69
109
121
66
137
151
119
85
87
87
145
156
125
148
154
120
94
89
94
154
74
146
133
175
43
66
113
87
87
97
99
124
151
109
69
110
112
104
127
126
88
80
69
99
104
69
93
130
121
67
107
85
89
80
153
80
128
63
119
110
87
76
110
80
74
100
88
169
93
128
155
87
131
76
126
115
197
107
78
129
80
69
114
124
128
72
109
163
175
80
183
137
164
89
132
174
109
117
107
96
96
91
83
69
80
88
128
96
97
128
102
122
78
129
114
72
109
123
109
69
106
134
121
151
107
66
104
104
103
148
80
118
78
69
87
112
80
131
76
169
69
154
105
85
138
78
126
106
89
80
72
67
95
100
151
88
148
144
87
83
87
87
76
94
106
56
116
156
85
112
128
69
88
117
78
91
98
141
113
103
151
151
80
113
104
81
94
102
80
175
80
130
137
111
64
88
130
144
80
136
93
103
154
155
80
120
131
90
143
90
90
104
83
80
127
88
136
121
87
177
69
164
156
99
99
88
174
99
130
88
81
107
87
69
80
131
78
106
105
140
118
81
101
106
80
80
112
109
80
106
106
87
151
104
89
111
79
143
78
106
87
152
80
113
137
76
87
109
69
115
113
94
113
90
76
131
78
109
85
117
87
118
99
89
131
107
175
80
99
119
110
94
147
69
112
80
54
94
87
104
80
115
155
85
138
80
69
85
109
80
80
85
132
100
80
89
94
85
89
74
136
175
119
56
109
119
154
107
154
99
157
87
72
80
122
131
119
87
80
69
104
128
76
76
138
132
80
78
155
151
100
102
104
117
69
112
124
127
99
99
138
113
131
72
80
93
147
118
80
131
78
80
132
74
127
69
72
109
87
93
117
117
78
133
109
82
87
128
87
90
76
110
76
80
89
146
156
76
92
126
107
88
71
89
120
157
125
114
129
87
76
80
121
136
89
69
175
110
98
148
120
104
107
95
111
80
87
151
116
128
117
95
104
75
76
77
89
80
80
109
80
126
126
78
109
96
96
54
107
118
115
99
80
87
83
78
80
111
112
121
80
109
197
87
97
124
80
160
80
133
94
121
93
156
120
76
121
134
69
112
99
120
152
106
112
103
143
97
80
76
69
103
78
103
128
99
89
140
163
128
175
80
155
154
80
106
107
119
107
66
93
131
152
100
107
136
80
143
127
94
154
87
113
104
76
128
80
115
80
106
119
119
106
102
131
76
104
131
80
82
113
69
131
89
131
106
87
119
87
155
119
119
131
154
172
131
87
143
152
72
119
76
120
89
154
101
80
117
115
76
76
109
175
154
175
89
117
116
137
80
88
92
87
118
138
69
106
154
88
146
96
80
83
160
117
124
147
80
175
99
157
120
124
197
80
131
76
164
175
111
130
154
83
78
78
94
95
125
78
64
78
108
128
109
147
136
97
87
110
140
163
128
78
95
155
132
88
109
141
88
107
88
87
87
80
99
119
108
69
107
80
126
136
107
90
104
99
82
121
88
99
69
145
118
95
80
103
80
72
130
69
94
164
117
124
69
87
80
138
119
147
87
88
71
76
98
120
143
123
69
104
80
89
102
154
107
127
154
134
80
106
69
132
87
175
56
166
56
87
107
87
103
91
120
75
145
59
119
115
80
69
87
90
80
117
125
111
85
99
69
134
152
127
113
64
69
85
113
154
113
69
69
118
129
113
101
87
104
96
155
80
96
94
121
149
69
120
136
76
145
80
131
124
120
78
113
136
106
128
80
163
118
107
83
113
94
132
69
69
66
101
132
87
127
87
95
95
128
117
121
80
69
76
87
76
76
78
107
126
88
88
69
109
80
69
78
96
120
95
69
102
100
74
78
56
129
87
91
155
128
140
109
120
87
94
80
74
106
159
79
117
137
78
67
99
103
110
87
88
118
80
119
112
120
113
94
137
123
106
151
94
80
175
118
96
138
112
101
126
112
172
119
163
136
99
67
123
120
69
106
83
108
87
88
120
128
136
89
102
96
131
119
100
98
143
127
134
133
121
87
107
118
125
109
107
78
80
87
113
80
134
88
89
87
80
104
87
102
78
118
78
80
82
87
66
120
72
157
175
120
76
93
134
163
123
175
155
117
110
122
121
119
143
76
84
118
64
80
79
107
114
111
128
76
98
80
113
89
89
134
78
80
78
88
133
69
119
132
103
128
75
89
164
148
123
106
131
78
120
148
98
87
128
125
106
80
136
128
112
120
104
67
197
69
110
69
100
128
78
96
115
98
89
67
80
121
110
197
129
163
69
138
87
78
89
127
197
146
131
101
197
72
154
117
166
57
154
74
89
91
96
107
69
109
82
87
101
154
106
155
87
80
110
80
134
72
78
95
104
94
73
127
113
107
98
80
72
120
87
101
74
87
88
120
109
89
80
109
126
96
144
144
126
80
80
109
96
141
118
120
98
160
117
98
112
74
129
109
111
80
111
152
78
80
144
76
106
69
134
175
72
183
130
96
175
59
67
106
113
115
78
67
99
67
80
108
109
54
163
119
115
119
120
78
133
110
76
128
122
119
155
88
104
144
78
54
128
120
99
76
92
106
93
64
138
164
78
106
69
109
150
114
107
80
146
87
147
133
142
90
80
87
110
128
69
107
146
78
135
89
140
151
142
76
119
154
104
107
80
99
136
127
69
94
142
76
87
80
99
113
133
74
119
93
101
155
64
120
93
106
110
146
69
80
76
125
121
120
156
104
106
80
94
175
109
127
148
88
124
109
76
89
89
76
142
69
128
146
177
114
107
128
107
87
72
122
69
115
116
119
134
69
140
128
136
106
94
89
101
76
112
115
107
88
85
127
136
99
172
158
128
136
155
89
106
112
89
174
147
80
99
82
76
79
113
80
72
139
81
155
69
131
89
82
138
172
85
122
76
87
109
151
91
123
107
133
96
76
120
134
66
137
89
133
103
83
156
80
131
99
119
127
80
78
69
132
175
74
134
136
89
59
74
125
119
134
119
112
90
107
120
94
136
154
140
80
80
160
156
163
119
69
69
119
78
155
88
69
75
69
201
145
91
115
77
155
119
69
87
109
103
85
136
91
69
94
100
102
131
112
163
119
88
121
69
141
89
143
69
130
156
128
87
80
99
154
89
131
197
87
121
103
104
109
120
76
104
87
89
94
54
157
142
114
107
80
115
154
139
80
156
94
104
151
87
147
137
76
106
162
69
79
80
87
148
119
121
128
143
123
80
87
100
136
110
80
72
72
114
178
74
94
141
131
101
80
91
139
87
75
120
125
69
175
94
77
117
69
80
155
133
69
80
97
128
99
74
90
112
72
121
112
101
69
143
141
93
126
89
147
76
103
121
113
114
131
104
136
103
154
103
80
119
119
111
119
131
72
137
162
175
109
104
59
76
67
102
116
107
104
126
127
175
127
99
87
80
114
69
78
107
120
97
104
99
109
74
97
87
113
80
147
154
104
155
107
107
89
106
149
134
80
76
80
80
58
104
104
134
115
148
134
151
131
80
108
69
109
103
87
58
113
156
155
134
83
121
144
116
78
102
131
94
107
76
141
80
87
69
72
69
93
151
175
119
121
117
109
69
106
156
122
131
156
141
87
137
197
119
92
108
76
128
98
90
147
94
89
78
93
69
131
175
89
99
148
118
120
107
128
99
106
130
93
123
145
76
72
56
145
137
76
54
120
114
140
102
126
93
175
140
128
69
134
132
76
139
183
78
104
136
128
109
104
143
137
80
88
107
134
87
143
120
140
120
136
80
136
174
87
80
91
69
76
131
175
99
64
106
98
106
108
144
87
80
100
80
106
96
128
106
123
85
106
78
102
132
87
107
129
174
136
80
80
69
120
131
129
64
109
156
72
152
131
107
104
110
72
80
125
127
131
80
80
88
69
81
117
76
127
175
164
134
123
110
147
75
175
87
110
69
130
156
107
93
121
172
76
119
126
104
69
141
104
95
52
80
155
109
119
94
120
87
154
129
123
175
155
80
119
117
144
104
152
137
146
103
197
132
112
144
80
99
148
128
87
120
110
80
121
120
72
146
151
128
99
104
78
87
136
197
87
97
143
111
94
91
119
174
89
146
94
88
175
89
94
76
109
140
78
93
164
113
85
94
113
107
54
78
94
87
109
112
130
76
89
183
80
58
156
52
79
78
87
169
107
113
140
80
131
130
109
100
56
124
87
120
107
131
69
153
85
109
104
128
95
140
110
119
80
151
144
93
156
118
78
115
121
91
71
133
59
120
121
119
80
78
134
89
124
128
115
123
76
80
109
99
87
128
87
69
113
107
86
80
54
107
74
69
101
100
151
90
145
54
120
107
107
131
129
97
107
78
96
143
69
101
128
156
69
119
72
85
87
160
87
78
148
174
96
113
80
113
66
69
123
78
73
130
102
91
72
117
93
69
87
119
89
80
129
110
80
80
87
83
105
69
80
130
83
80
109
112
78
107
114
69
136
110
107
68
133
131
130
97
80
90
163
124
163
107
142
80
110
117
80
56
102
91
111
78
111
120
94
109
126
91
113
78
140
175
115
131
84
78
87
119
130
144
95
80
119
97
87
97
80
94
118
175
105
82
80
100
105
166
69
91
78
104
89
78
85
69
113
72
138
136
104
124
89
117
78
80
76
146
128
75
87
96
80
113
80
145
101
109
107
80
78
175
52
93
115
87
82
88
160
154
127
76
98
80
85
116
129
113
140
109
87
121
103
80
100
80
96
120
64
69
87
99
136
104
109
174
72
80
119
128
80
88
116
118
52
133
107
101
155
140
114
82
151
110
69
104
148
94
132
107
74
69
76
104
132
187
88
109
175
101
129
78
80
69
144
103
76
107
107
109
150
142
52
199
74
136
69
103
105
80
88
117
107
101
130
91
98
119
160
88
78
175
183
128
72
144
96
129
125
120
87
80
78
76
128
80
150
99
99
96
107
99
90
91
87
89
146
112
131
120
92
112
75
101
128
106
117
101
106
115
110
99
95
103
98
113
78
147
132
151
110
128
117
107
80
133
111
166
155
92
76
120
104
74
145
156
74
56
72
126
104
166
78
160
78
113
136
76
64
78
80
52
117
69
74
116
78
69
119
80
80
76
72
69
120
131
116
83
80
80
140
76
113
127
80
93
69
99
69
156
99
132
80
80
181
155
107
136
119
110
106
197
149
99
119
110
87
114
127
146
106
148
52
78
118
114
99
91
110
86
124
175
96
96
150
156
76
110
66
93
102
111
78
109
124
80
78
128
78
80
142
107
146
120
110
102
131
110
119
118
103
109
199
69
97
88
80
121
85
79
117
80
69
121
174
69
87
145
113
123
78
112
80
69
89
88
119
80
75
136
110
128
80
147
136
106
197
117
156
101
94
137
89
134
110
88
78
150
76
174
117
108
99
80
52
88
120
119
103
74
89
93
78
104
149
102
110
74
87
69
147
96
110
91
76
137
175
119
80
197
87
87
93
119
78
76
80
72
69
87
151
157
110
112
97
107
132
128
122
102
94
122
132
132
80
78
143
96
72
93
80
154
163
116
94
120
80
87
92
115
78
99
107
87
113
104
69
121
85
119
87
103
104
76
95
99
104
85
104
136
113
119
87
138
151
85
123
119
85
120
98
128
72
80
80
106
107
99
138
147
154
117
69
52
128
69
87
113
140
96
76
87
157
154
87
104
80
87
106
95
101
139
87
128
131
113
109
54
69
120
114
80
80
80
101
93
91
109
101
74
119
131
154
74
80
101
87
80
119
141
104
76
80
113
101
96
99
127
110
76
139
126
104
69
145
88
187
79
123
115
88
104
102
80
78
128
89
113
74
155
78
87
66
129
120
175
69
147
136
76
76
112
150
80
89
125
118
123
78
149
110
151
88
197
87
121
87
91
88
74
109
93
119
110
89
56
72
128
156
104
125
93
84
119
80
131
69
69
80
105
102
108
140
100
87
69
78
107
140
88
120
122
69
80
102
136
80
154
140
79
109
120
121
89
94
115
76
152
101
145
88
85
78
87
140
78
87
98
104
117
69
89
89
160
119
133
118
72
101
112
76
175
56
154
133
85
95
147
119
76
117
120
96
175
98
80
117
89
105
85
120
88
80
137
88
104
80
120
80
151
142
69
99
109
94
117
133
110
82
128
78
175
80
110
80
154
197
80
140
112
110
143
102
69
76
98
114
98
185
158
80
96
128
80
95
197
99
80
74
69
133
89
146
119
107
106
128
115
107
78
152
112
109
111
87
78
151
132
80
155
94
99
82
69
116
146
128
85
128
143
124
136
80
112
113
181
87
69
89
183
126
91
142
114
112
106
69
78
109
56
80
115
154
114
153
154
89
112
119
156
77
125
80
115
115
110
113
87
78
80
80
80
154
80
69
69
112
72
80
131
120
106
152
87
105
56
107
72
80
110
107
113
88
138
69
132
119
137
80
151
144
82
80
174
108
87
112
109
90
114
87
123
126
104
106
109
80
112
101
52
113
147
197
154
78
120
112
115
134
106
125
101
134
118
87
122
78
120
78
156
107
174
78
56
87
83
69
56
93
79
119
87
92
69
117
175
92
75
87
78
118
78
99
97
155
156
102
93
96
82
120
80
80
93
87
111
71
118
114
85
69
102
107
100
99
69
97
76
94
156
118
88
88
94
80
156
72
96
100
80
89
103
151
95
123
120
175
120
110
76
87
72
135
123
124
134
96
72
101
126
96
99
119
101
80
154
98
117
85
128
175
163
151
77
87
76
126
136
104
85
80
87
120
93
92
99
109
114
106
76
119
79
104
138
69
123
136
71
80
87
117
115
126
158
118
110
185
185
69
80
83
140
97
69
90
175
69
72
107
91
87
155
98
112
107
174
94
109
136
128
87
109
197
80
126
94
129
69
66
128
107
129
149
145
78
97
148
140
80
132
125
119
136
100
85
80
104
99
94
78
64
80
119
136
83
123
78
115
111
154
113
164
143
107
128
76
126
69
127
80
107
104
120
87
71
94
76
101
110
136
78
109
69
107
69
119
136
111
87
121
140
80
140
128
107
154
118
80
122
120
143
106
69
120
89
80
69
131
87
88
107
131
90
78
163
78
104
131
143
134
120
103
140
59
80
114
115
87
80
113
80
127
106
109
69
69
102
156
78
88
114
88
104
76
101
110
85
154
113
88
155
154
93
128
88
87
87
119
154
169
121
106
99
121
100
76
107
146
175
76
88
175
120
87
123
101
140
107
175
131
91
80
72
143
185
120
109
134
43
128
69
79
134
91
123
72
99
99
69
131
78
110
80
110
106
56
78
106
93
134
175
187
131
112
85
88
141
94
104
80
78
140
128
128
94
174
151
78
126
100
103
154
78
94
77
129
129
78
85
103
126
110
123
151
110
78
126
80
123
121
94
113
96
131
197
130
95
87
133
69
134
80
150
80
106
115
111
87
76
147
72
102
106
94
107
71
155
132
131
160
76
130
52
69
87
120
124
134
72
87
151
80
80
76
136
120
63
136
120
136
78
146
126
162
103
101
117
146
110
112
139
80
110
103
127
156
136
109
69
148
80
85
93
101
95
85
89
96
196
110
112
136
76
120
118
136
119
133
153
76
106
129
96
119
118
87
150
88
174
56
131
197
127
155
88
76
76
87
100
157
197
87
82
113
87
154
106
88
145
104
110
197
138
91
78
155
101
140
98
128
148
104
107
104
128
112
80
118
117
69
57
69
89
80
102
89
111
74
88
120
119
87
76
154
175
82
149
146
90
69
71
80
126
110
104
115
80
163
93
143
80
148
127
109
128
100
128
107
106
85
137
132
197
88
125
104
115
174
110
78
76
127
175
114
109
78
105
152
103
87
90
69
80
87
96
142
96
69
99
175
88
113
87
185
175
112
99
78
94
126
105
124
94
107
69
80
109
136
110
107
119
128
78
106
56
80
89
69
101
76
102
144
88
148
122
166
69
113
100
80
160
94
118
80
80
72
76
81
80
113
78
72
88
80
136
121
156
128
111
118
175
90
104
151
165
147
94
80
156
110
69
54
166
99
69
72
68
76
155
80
148
95
135
67
88
119
76
107
143
94
87
78
138
87
154
128
129
112
99
84
74
75
156
80
69
69
103
91
175
130
80
88
87
69
163
100
99
110
89
88
83
134
99
131
69
104
78
98
152
80
93
85
109
160
107
99
76
153
106
80
115
93
80
127
69
100
80
95
109
104
131
149
146
152
80
122
110
56
185
151
80
175
128
152
99
87
112
126
116
80
63
120
169
101
140
121
144
107
119
118
80
110
120
69
136
155
115
88
126
154
175
80
99
104
54
109
97
78
131
76
78
154
78
155
93
104
175
152
78
87
119
120
87
109
109
145
154
98
76
127
87
118
87
100
99
57
126
76
112
103
80
80
69
162
140
119
128
80
76
107
85
106
131
105
80
96
80
101
119
76
110
76
87
107
87
127
106
91
136
80
117
87
72
78
122
175
67
69
80
87
88
104
89
117
110
80
103
110
69
67
119
43
155
101
87
118
104
113
128
87
80
52
140
149
87
99
69
107
117
136
175
94
107
78
87
126
154
76
164
110
136
154
154
59
76
80
89
144
99
110
155
83
78
91
137
128
80
99
72
118
80
87
78
69
69
75
133
117
119
122
140
117
106
87
133
131
175
87
121
79
112
134
128
118
94
181
175
143
93
80
119
125
71
79
69
78
88
112
97
140
109
127
146
87
78
101
156
69
69
89
69
112
84
88
110
71
140
91
113
126
98
95
83
176
152
67
100
96
80
187
119
102
98
117
163
94
122
156
88
89
121
72
119
131
112
181
147
127
76
80
89
123
69
124
94
88
154
109
120
72
117
66
175
76
110
112
119
79
69
87
96
102
88
99
134
128
88
94
93
91
69
89
175
112
91
116
78
94
140
140
78
89
76
69
157
69
75
78
93
107
69
80
134
54
107
187
69
80
87
154
119
76
113
89
128
113
99
90
128
93
69
110
131
76
129
110
95
144
103
106
175
175
78
128
80
56
94
67
144
104
94
175
69
99
136
90
131
102
111
88
112
58
124
140
110
87
152
95
94
120
163
104
76
138
87
131
164
87
69
80
141
121
43
155
130
76
88
106
133
104
74
76
110
166
113
151
112
154
87
118
100
147
149
133
99
107
120
140
96
107
117
136
80
112
95
107
93
99
120
87
128
78
129
90
76
94
96
87
136
69
69
134
94
75
94
87
94
146
154
54
104
149
150
155
76
98
95
112
174
153
80
119
85
87
128
109
78
140
69
69
69
115
143
110
99
76
69
107
119
89
79
87
113
72
95
93
140
76
104
69
102
76
85
101
159
140
102
54
129
80
107
118
76
106
66
80
121
132
99
147
109
96
102
106
197
110
87
99
72
113
111
110
96
78
63
131
119
69
99
94
117
80
102
131
103
78
163
106
111
80
131
69
140
91
119
122
108
112
120
144
74
160
107
136
154
99
145
56
80
76
136
99
89
99
119
87
140
132
80
120
80
72
129
101
87
89
72
87
156
134
96
98
95
80
91
52
69
90
64
80
90
122
76
93
76
80
124
131
110
91
69
136
117
96
94
106
91
107
76
80
69
80
69
131
126
140
72
105
88
84
132
106
92
69
94
120
119
110
122
95
156
106
133
120
109
138
123
80
87
80
109
128
119
82
103
122
128
87
128
97
101
119
105
88
80
69
100
78
72
89
80
144
154
88
120
117
128
72
87
87
78
69
88
160
128
163
83
107
106
112
78
93
113
112
197
164
52
64
156
80
80
151
123
175
104
80
112
124
154
118
87
106
74
80
69
100
93
123
175
89
102
132
117
59
147
148
109
69
122
96
103
92
109
146
165
107
112
76
110
87
99
128
134
175
69
131
72
120
69
134
76
71
137
197
99
162
107
72
102
135
87
111
101
87
101
119
103
72
72
113
109
101
82
110
119
113
91
66
193
96
80
96
119
87
155
110
79
80
98
87
166
89
59
89
106
88
119
109
134
129
116
109
128
155
76
80
136
163
69
113
99
72
107
157
80
113
80
69
121
87
135
87
96
123
113
123
136
163
96
78
107
78
119
101
52
136
109
79
76
69
128
56
104
101
101
127
138
106
163
79
52
141
119
154
113
108
103
154
80
90
160
92
126
102
69
120
119
117
92
132
68
69
87
109
78
78
87
199
102
87
80
155
76
110
104
78
163
76
78
69
117
99
164
78
166
144
136
127
112
110
110
120
201
80
89
157
107
102
113
137
118
80
80
87
96
136
175
137
83
110
80
117
154
76
69
117
69
88
81
112
109
80
107
54
99
78
121
175
102
112
136
151
102
132
117
80
91
63
145
87
110
73
102
155
104
87
119
116
69
87
109
88
80
94
68
197
101
132
136
88
87
78
93
100
137
109
66
52
115
118
128
80
68
81
174
163
69
140
78
128
102
88
154
69
151
99
54
69
107
100
123
75
107
76
134
119
89
160
80
111
69
93
175
78
120
107
73
128
91
80
116
129
89
56
112
175
76
69
80
95
107
80
118
88
99
145
92
87
87
79
76
106
69
107
56
79
69
78
87
119
144
99
110
82
134
104
52
155
109
114
109
69
118
80
80
80
138
151
43
89
87
88
124
87
120
119
113
107
96
197
76
109
136
175
107
124
69
132
76
80
143
134
106
128
69
88
87
69
86
154
98
76
151
80
155
106
183
114
145
153
90
80
137
79
136
133
156
126
71
104
116
78
107
80
91
120
120
136
155
113
154
87
82
107
107
109
134
115
149
74
112
119
144
109
131
69
99
69
69
112
159
93
74
115
72
109
76
175
95
72
80
107
109
155
110
80
175
109
103
140
76
64
96
106
121
54
155
104
136
117
112
119
93
154
145
52
80
100
94
144
128
121
85
72
93
154
69
160
119
69
123
140
87
130
76
90
175
183
117
85
89
76
69
119
117
174
105
76
156
99
130
146
109
131
85
93
54
66
71
52
93
78
117
163
89
175
87
80
95
89
88
146
154
76
80
164
119
69
72
72
131
113
69
74
85
144
69
88
80
140
103
112
102
76
107
69
90
119
114
80
181
99
118
136
103
80
76
78
69
76
100
80
106
112
98
80
156
146
137
174
100
154
96
128
117
102
146
85
120
110
119
96
76
72
99
104
109
92
131
80
69
99
104
91
69
117
56
94
183
138
120
87
143
175
85
94
91
138
73
163
83
110
79
112
69
115
82
144
80
107
155
99
101
147
121
121
93
89
89
85
130
110
76
110
98
89
87
93
193
151
122
80
128
175
120
89
109
97
90
125
175
140
145
113
131
121
137
154
88
107
151
69
104
88
80
119
68
110
112
104
147
118
122
197
137
78
89
69
74
107
97
120
144
74
143
80
109
80
87
120
90
133
78
106
76
99
124
119
87
146
145
87
140
76
43
96
146
80
163
151
136
54
80
143
120
140
72
78
56
101
88
109
118
99
107
152
156
106
128
92
99
154
87
87
98
91
80
79
106
68
124
76
124
154
107
114
88
76
91
129
104
98
121
109
132
146
80
80
108
73
103
95
103
76
79
101
103
121
99
72
118
110
76
109
69
69
99
131
99
156
93
139
80
99
194
76
87
103
94
95
96
120
185
120
124
80
119
174
175
80
80
117
119
101
120
129
80
98
104
89
109
124
99
146
83
106
87
107
154
154
94
115
119
132
91
107
87
94
119
66
131
175
69
80
72
128
97
139
100
94
94
118
138
119
91
133
114
98
69
138
117
80
119
154
67
69
118
102
87
115
69
128
93
101
119
80
109
94
197
146
150
85
129
156
69
94
78
154
136
161
87
103
102
155
67
88
122
113
56
134
101
90
133
126
72
134
114
112
174
80
89
76
80
117
94
76
189
175
113
80
131
137
158
120
88
101
80
69
113
78
128
136
83
110
136
67
154
80
175
106
121
80
136
121
80
124
127
96
120
115
140
154
149
119
69
78
89
69
91
134
91
128
54
142
109
109
107
104
120
76
132
119
76
152
88
59
69
78
80
113
76
109
91
80
76
106
140
121
109
64
183
154
89
78
107
88
175
119
99
83
133
107
121
107
56
199
94
92
132
69
69
117
117
69
137
85
80
89
98
69
109
134
79
115
123
119
104
216
80
104
69
113
89
144
151
99
143
107
106
106
80
89
121
104
131
93
151
93
131
78
80
118
110
112
117
137
132
69
115
126
119
107
114
80
158
69
80
99
127
151
119
99
140
89
157
87
106
76
115
89
88
87
99
172
80
128
83
100
138
83
67
110
76
106
115
114
120
91
154
80
101
148
71
119
69
113
90
140
128
110
120
76
169
136
93
106
110
71
133
152
174
87
156
93
140
120
112
94
87
117
78
82
88
119
69
102
87
90
148
154
107
78
141
110
119
117
75
155
69
127
117
69
104
72
78
144
131
128
143
123
94
113
80
130
147
130
54
143
89
96
88
80
97
131
69
43
119
104
80
110
195
87
145
88
141
157
87
111
83
87
74
122
134
151
67
128
175
112
78
80
80
72
107
111
96
104
127
110
66
119
175
119
107
69
119
117
157
60
76
148
88
108
119
54
183
113
121
98
87
159
154
95
69
72
146
134
80
107
89
160
131
126
175
149
68
87
68
97
107
140
69
118
110
72
78
54
99
112
107
108
66
107
80
112
109
96
76
119
69
69
54
117
99
54
101
154
100
83
88
126
87
76
88
163
110
114
89
69
88
80
87
109
94
128
80
175
102
132
109
99
98
131
138
154
80
147
93
121
93
96
156
80
113
107
109
88
128
117
83
126
69
64
121
87
98
156
130
143
80
106
69
78
87
110
80
137
80
80
103
76
73
80
119
69
110
110
138
123
91
123
175
182
112
155
69
132
107
69
88
124
131
109
87
69
155
68
155
113
113
110
87
100
111
150
140
110
101
122
89
80
109
101
82
102
107
128
78
78
133
63
146
209
120
69
125
78
138
119
181
137
117
80
69
99
95
121
175
78
148
127
69
134
56
93
145
137
85
110
175
175
88
56
112
90
104
88
78
90
69
168
155
110
72
120
128
127
99
96
107
110
134
87
56
126
155
80
136
112
107
87
121
107
76
113
126
134
113
95
120
163
95
76
128
131
88
76
87
128
150
58
88
156
69
134
128
76
80
129
52
76
123
89
87
76
130
163
154
101
114
145
156
106
111
104
80
110
187
102
88
94
103
88
89
145
154
78
87
88
80
154
113
69
76
148
134
91
109
73
123
122
115
142
113
175
94
102
69
72
132
96
69
111
163
152
113
144
175
95
126
151
127
78
80
164
175
88
143
99
69
138
69
81
151
89
72
134
131
111
107
80
78
109
104
69
99
120
78
117
121
145
199
76
94
146
76
105
94
78
89
136
80
134
104
157
69
128
99
96
80
125
120
52
127
89
87
157
87
118
128
78
136
78
131
71
80
101
80
121
145
80
72
69
115
89
83
100
197
112
124
120
99
134
181
78
112
107
134
120
69
78
131
74
138
153
130
175
80
81
151
175
128
107
66
120
140
89
109
94
107
94
106
72
122
89
121
87
106
107
107
98
80
102
115
69
102
103
155
96
88
113
69
108
93
109
94
94
119
94
126
129
112
114
91
140
76
87
85
118
78
104
76
156
80
80
178
80
88
175
104
141
127
127
76
111
128
80
140
78
156
80
107
119
57
133
115
93
119
99
87
133
96
83
76
93
102
132
138
80
145
125
95
148
132
89
113
147
120
118
99
160
103
69
76
72
131
87
69
164
80
145
75
69
118
78
94
72
72
106
136
129
109
69
183
116
69
98
143
135
134
103
140
87
122
120
175
151
103
145
121
155
69
140
107
69
94
133
80
56
154
154
76
130
110
109
112
119
154
109
136
90
107
118
104
132
120
119
91
119
128
98
80
122
87
106
138
91
111
146
78
91
76
80
106
163
88
103
119
76
87
160
80
108
96
100
76
175
69
80
154
131
96
80
99
140
100
72
110
87
127
111
117
87
138
105
88
59
80
122
87
99
91
143
128
103
72
126
66
120
155
89
91
80
138
91
174
80
102
107
78
113
89
89
128
119
117
76
146
87
107
127
156
91
148
69
142
112
110
119
143
89
197
93
119
164
87
118
97
120
174
119
92
72
105
91
89
88
99
126
107
89
119
107
127
69
72
133
125
120
43
156
163
201
103
119
87
94
90
98
136
69
89
119
88
126
118
121
94
113
121
87
87
92
69
78
155
109
126
109
110
87
156
102
110
76
99
96
134
69
156
117
87
107
99
146
104
154
124
80
154
87
114
96
54
104
146
96
100
154
129
108
87
110
87
143
96
140
87
89
106
148
127
117
100
197
106
80
113
80
131
93
125
69
146
90
136
197
76
87
115
175
175
87
101
104
92
100
129
78
69
80
157
117
143
80
117
80
88
119
102
109
89
87
143
54
78
133
76
74
80
113
80
76
107
145
128
96
126
112
69
131
76
82
138
102
134
75
117
101
96
143
78
98
52
135
119
89
163
175
87
105
149
64
78
80
79
80
80
74
156
72
104
127
146
78
107
103
88
87
72
89
119
80
98
160
75
122
117
126
88
76
119
156
138
69
156
101
119
115
199
89
80
128
140
165
140
88
140
87
143
60
114
87
119
91
95
69
80
165
91
121
84
115
76
69
102
117
96
147
83
136
116
117
109
117
102
102
76
52
147
177
130
80
76
121
76
43
149
131
54
80
93
80
74
96
117
107
78
99
87
151
120
120
74
112
89
128
80
118
67
87
109
80
87
87
154
196
136
90
87
144
76
175
88
110
80
151
88
132
132
111
120
107
113
112
110
100
87
69
154
106
72
175
95
156
119
78
104
54
98
122
80
100
155
131
113
66
119
63
125
87
99
69
120
156
119
76
72
128
107
89
123
107
109
93
128
107
154
80
78
175
67
80
89
89
54
79
76
137
87
145
76
87
68
201
101
101
80
99
114
108
96
132
107
125
93
159
164
119
69
134
143
121
107
87
100
76
121
124
100
87
155
128
58
121
128
121
76
93
117
154
80
104
91
138
143
117
107
76
125
143
80
78
87
80
110
154
138
69
120
80
118
163
87
77
136
155
130
96
78
175
144
80
124
115
80
175
69
89
80
104
121
54
69
144
120
80
175
80
113
151
113
80
131
170
131
74
143
124
119
91
134
113
99
87
99
111
69
99
154
80
154
124
89
71
87
119
80
106
134
80
134
87
121
69
134
76
72
76
76
163
95
75
120
69
146
89
121
73
99
76
163
115
110
91
110
87
133
119
120
80
133
93
78
124
140
80
119
74
76
80
109
128
113
103
73
119
80
99
78
109
93
89
111
43
104
95
112
108
122
88
72
80
87
113
104
69
145
155
112
78
94
100
72
78
131
87
80
80
132
113
99
69
69
197
122
134
109
72
80
43
67
98
106
110
107
94
88
155
136
120
155
86
88
72
87
113
76
155
156
80
81
88
71
136
134
80
197
137
127
72
78
93
112
153
85
116
102
69
140
175
93
101
69
101
151
88
66
127
99
110
122
125
78
69
127
154
107
72
89
87
91
104
99
160
130
118
101
69
80
88
76
122
96
148
106
140
121
138
119
112
153
103
102
80
96
78
109
109
110
94
111
162
175
80
132
120
125
76
120
119
111
80
110
107
110
72
109
112
80
120
156
175
156
87
52
99
148
104
128
93
152
147
143
154
100
73
80
109
101
125
54
78
80
147
80
110
117
175
94
113
96
124
128
102
140
120
94
75
96
91
145
99
90
87
127
175
128
160
89
131
166
93
120
66
69
104
188
87
89
167
80
52
90
152
78
87
142
69
118
66
117
74
76
127
104
121
80
69
79
78
79
121
132
88
64
174
72
89
124
107
78
76
88
109
126
181
120
154
89
133
110
88
94
87
119
94
134
154
163
80
110
197
110
121
88
109
110
120
91
113
94
111
76
101
106
128
136
146
169
115
69
54
132
123
107
78
155
69
110
80
87
107
137
128
95
166
89
121
99
148
107
175
69
110
104
76
76
80
96
78
130
127
69
93
181
118
69
74
120
125
88
163
104
120
104
102
69
78
99
117
124
88
102
124
164
87
205
145
175
130
175
118
110
107
76
120
80
132
78
87
89
80
78
93
128
94
80
83
155
120
66
69
80
126
94
69
102
80
91
78
80
136
82
127
69
69
80
155
101
104
154
94
78
113
112
102
89
123
118
87
76
104
80
69
131
80
131
122
56
99
145
88
128
80
120
119
107
132
89
154
120
104
72
155
57
91
80
80
117
131
119
120
127
78
99
110
154
87
119
120
120
110
72
197
96
89
92
89
123
112
107
110
89
120
83
80
69
80
123
151
120
175
123
82
113
136
75
78
76
80
69
111
120
67
80
81
89
109
101
69
78
87
109
107
117
69
110
93
121
138
113
119
89
147
78
80
88
141
119
80
80
109
87
82
119
87
162
73
88
78
76
131
83
78
87
66
131
175
181
106
119
136
129
101
163
118
107
128
115
80
106
87
94
80
69
119
80
112
162
151
147
54
97
69
148
143
151
115
164
80
78
128
99
107
89
101
134
95
206
134
87
85
166
52
172
94
120
80
156
128
76
99
69
100
127
78
72
98
80
156
69
98
94
78
88
128
101
107
113
102
96
87
88
87
107
134
109
122
91
76
125
132
134
87
99
74
163
67
134
71
129
131
100
127
175
87
118
160
137
78
109
98
90
80
110
94
134
88
109
119
109
130
94
88
120
128
111
118
140
90
89
56
69
156
54
72
175
69
93
113
134
87
111
116
128
143
149
100
78
76
80
80
75
94
94
109
102
88
100
69
107
79
66
137
107
107
94
74
88
102
155
119
69
154
100
104
119
147
78
43
52
72
80
93
71
80
104
144
88
131
87
114
151
93
136
114
111
99
136
119
128
99
120
104
89
80
136
92
96
104
128
95
87
94
93
104
72
80
104
88
113
121
197
69
88
154
101
98
109
128
69
164
69
112
126
104
136
119
119
76
140
67
80
175
80
72
76
113
160
115
143
141
120
100
100
87
80
80
119
119
126
100
93
163
119
91
141
174
91
140
94
108
118
175
114
114
87
90
94
80
52
84
87
115
109
69
98
109
119
69
78
112
80
66
112
120
80
117
119
93
89
80
109
80
80
134
155
91
80
87
56
69
146
199
80
72
119
106
101
120
69
110
89
123
87
80
80
89
87
119
106
164
146
109
106
175
123
80
80
155
72
103
88
111
99
121
118
101
107
107
114
148
122
78
154
122
99
76
89
128
99
69
143
126
81
84
104
87
72
52
151
119
148
133
80
122
88
110
154
80
111
88
154
89
103
71
78
185
52
80
80
97
115
78
77
80
112
175
89
147
175
98
120
197
87
154
69
91
78
104
87
155
128
99
77
166
121
154
104
122
80
119
175
92
76
78
134
91
144
128
80
134
98
104
78
76
82
117
88
160
134
94
87
120
109
69
87
175
115
123
89
80
89
104
72
80
118
95
128
99
136
175
89
175
88
156
94
127
104
69
76
155
124
78
69
82
52
115
107
74
164
164
104
128
101
69
75
72
94
74
133
75
69
134
88
107
150
74
113
156
80
99
114
128
120
151
83
127
87
80
172
114
131
156
115
140
121
131
80
163
162
69
96
89
114
117
57
148
120
107
120
101
121
110
76
56
140
109
166
80
59
101
78
54
117
119
124
91
60
78
78
95
118
126
80
69
72
91
76
175
87
162
88
175
133
112
134
104
80
107
54
78
80
134
154
85
72
146
151
120
69
84
69
91
136
126
109
119
126
96
80
74
74
69
79
69
64
94
69
99
147
94
98
52
158
89
91
128
68
80
80
128
93
151
137
119
127
82
80
121
67
80
80
120
141
108
109
128
119
56
116
69
75
136
69
131
154
110
199
80
155
91
69
113
104
163
69
80
175
69
182
122
119
157
69
120
95
88
76
111
140
82
107
97
128
89
118
89
113
87
76
102
109
69
78
143
119
181
157
154
155
163
102
120
137
87
113
78
80
80
127
72
99
101
66
124
86
110
113
100
122
107
93
69
78
89
106
94
102
87
76
119
174
107
142
80
94
199
82
131
143
76
80
129
126
52
89
140
107
119
118
75
117
52
78
110
126
96
107
137
107
107
111
113
89
100
147
82
106
183
80
80
128
107
169
151
120
87
96
127
87
154
102
80
87
127
78
142
124
128
94
115
120
152
108
120
69
112
134
101
72
99
72
111
121
123
152
128
81
142
69
107
141
175
154
110
87
145
89
64
69
128
151
76
82
123
69
147
127
80
109
120
99
136
101
145
107
94
109
76
121
115
140
88
145
107
154
128
104
87
52
92
115
56
119
113
114
156
129
129
99
69
146
138
89
101
87
121
69
142
113
120
140
131
75
78
107
128
64
79
99
93
109
105
161
80
99
78
102
101
145
87
137
107
105
154
82
110
106
76
164
69
151
101
107
102
120
112
118
78
90
93
66
72
90
156
94
113
88
106
101
75
137
58
126
107
114
110
85
107
136
99
143
142
118
127
95
99
80
72
109
80
72
136
121
94
156
134
89
127
120
90
69
119
98
87
107
130
75
123
91
132
155
60
91
134
89
87
109
76
54
102
101
163
197
76
107
110
87
121
93
80
164
109
107
80
87
78
113
137
112
109
96
120
175
89
123
89
69
164
100
87
121
127
140
128
97
106
119
117
78
87
120
119
197
128
69
109
66
122
102
113
88
93
87
69
187
146
80
76
78
99
108
94
69
92
174
106
156
93
76
140
129
101
54
84
134
54
134
80
103
121
136
110
111
69
87
183
122
146
95
72
87
87
56
66
97
72
132
133
151
115
126
139
76
69
87
83
100
87
88
107
69
106
126
114
80
112
126
80
128
99
87
69
110
90
151
119
91
140
175
89
112
134
149
128
69
80
128
106
102
159
94
151
129
90
89
155
90
91
80
109
80
87
96
144
80
80
78
102
106
101
99
104
80
74
54
111
121
145
78
129
96
96
69
104
156
114
69
69
134
87
78
93
104
156
69
80
80
97
197
113
107
78
87
121
96
136
104
107
145
155
136
131
76
175
107
121
107
128
164
100
124
151
121
121
52
87
91
69
43
97
101
120
116
120
111
106
120
80
88
69
175
90
156
121
101
91
69
112
129
76
136
95
78
110
93
76
162
145
113
166
78
120
76
90
89
87
100
99
99
80
88
80
72
87
123
134
113
118
91
119
71
63
109
155
120
80
119
136
125
146
163
72
99
156
185
75
103
175
98
88
69
111
109
113
113
131
112
118
136
118
140
123
163
93
154
110
175
104
106
109
80
75
164
163
126
163
120
107
94
80
99
76
154
100
126
104
129
89
72
80
66
76
164
100
69
99
80
103
113
94
119
73
127
52
110
148
149
98
67
80
183
91
89
112
78
91
102
151
114
106
129
56
104
117
112
82
90
78
103
78
100
105
116
87
137
127
75
109
64
69
118
120
69
69
64
56
106
76
69
130
128
144
102
112
81
94
175
75
85
147
80
107
76
99
77
133
127
57
87
94
127
106
89
93
119
80
143
69
154
89
134
97
88
76
109
90
119
150
99
134
130
83
132
102
88
87
154
119
111
69
89
74
68
154
89
100
154
80
117
107
71
80
154
80
110
92
113
139
128
94
109
93
69
78
96
107
146
138
87
107
148
87
136
128
73
140
128
131
87
87
78
69
76
93
110
114
104
104
120
175
96
128
110
109
119
74
127
115
116
119
127
113
69
126
121
96
100
134
104
131
106
78
137
69
110
113
144
155
128
78
117
78
80
69
137
140
107
106
83
69
119
80
146
87
154
113
128
87
80
199
109
106
175
123
175
156
130
112
106
78
99
85
76
117
118
104
117
76
87
99
156
69
119
175
102
150
110
122
76
154
109
154
87
91
155
89
80
80
93
133
83
114
80
88
127
76
82
80
118
131
107
148
80
80
80
67
85
69
78
111
87
150
89
117
134
80
91
175
80
85
106
109
87
109
94
128
80
183
136
122
130
80
80
111
109
99
85
80
116
74
95
140
126
112
113
93
143
109
96
94
87
66
117
154
89
96
103
102
146
80
80
133
71
83
117
88
127
74
60
87
76
67
76
109
131
69
76
175
89
129
76
119
111
80
175
105
131
78
119
145
131
143
112
118
121
113
128
119
155
80
137
87
80
107
69
143
93
146
79
121
117
80
131
69
87
143
87
183
89
85
117
94
143
128
80
119
130
78
134
85
94
115
110
78
80
72
148
109
151
132
74
80
119
89
119
100
80
151
113
147
151
101
69
115
107
136
96
107
88
101
99
113
107
104
102
76
76
90
133
127
140
72
128
107
80
138
86
109
96
82
52
89
131
118
76
52
120
91
91
76
98
154
117
104
69
152
112
54
80
110
128
125
152
175
140
175
87
112
169
99
104
96
87
91
100
113
126
121
99
95
87
145
69
80
175
122
128
76
99
69
128
146
87
69
80
87
99
122
69
131
96
109
80
109
131
172
124
113
129
80
79
69
137
80
102
87
119
99
80
143
80
82
143
135
114
113
96
101
130
95
69
87
69
80
159
89
74
147
89
121
72
99
89
183
96
96
140
106
143
110
80
156
85
106
79
118
76
114
93
114
163
87
134
87
99
117
106
104
109
66
174
155
101
151
88
109
69
129
80
164
88
146
43
102
94
97
87
183
127
54
87
76
54
146
149
128
95
134
87
95
154
80
139
159
112
80
88
96
78
113
109
100
112
100
94
69
119
118
126
87
87
112
164
119
109
112
94
118
140
123
123
89
76
85
149
76
93
80
142
69
104
131
113
119
75
127
134
80
76
128
122
89
165
131
87
127
116
112
76
104
58
69
76
87
91
64
134
117
119
90
144
113
94
117
93
87
80
89
134
80
109
80
87
128
126
134
69
78
91
78
99
54
89
154
143
107
80
76
115
113
89
112
131
107
78
107
107
137
112
154
160
80
85
76
78
116
99
100
69
69
119
97
155
76
119
111
69
64
109
75
74
69
118
175
85
142
106
148
94
120
66
88
107
87
121
143
156
76
112
121
80
80
175
76
94
80
69
80
78
94
151
82
106
100
175
113
140
145
115
104
184
134
87
155
76
96
69
74
67
113
136
89
113
109
76
89
97
134
143
110
109
121
80
99
106
106
99
78
80
76
119
80
84
100
94
80
106
76
69
80
149
100
99
113
80
87
121
80
127
80
80
69
80
87
104
119
120
99
94
137
67
128
87
121
192
119
76
131
69
80
77
76
99
87
183
101
155
129
88
94
76
106
112
80
87
80
96
103
87
69
113
142
134
175
107
107
118
89
93
80
162
69
131
119
74
154
69
80
187
99
80
80
107
69
87
109
150
76
102
88
118
110
69
113
103
104
107
131
142
148
89
93
154
94
94
128
110
69
143
156
101
138
101
154
99
140
110
119
131
69
146
175
69
78
109
151
155
144
102
122
117
87
151
52
120
88
120
175
125
69
122
122
137
99
109
134
80
144
94
107
110
106
131
153
80
121
175
87
111
94
80
94
137
106
111
78
163
128
152
80
106
134
107
117
69
98
99
95
106
99
99
69
69
134
119
156
201
69
76
147
124
75
89
121
91
78
76
78
110
91
78
78
106
155
91
137
101
69
100
122
72
91
96
120
126
52
91
58
117
80
102
100
87
131
143
145
89
136
88
99
133
133
80
154
132
80
119
127
80
54
128
112
183
69
83
107
121
109
88
80
78
78
80
87
78
106
110
69
163
76
80
74
195
109
148
76
76
115
57
134
154
96
126
89
154
154
109
106
136
69
69
92
104
127
118
80
80
175
133
76
80
118
142
119
83
100
120
120
131
133
69
103
109
72
88
75
160
100
69
72
118
155
103
122
211
80
148
120
85
109
175
140
76
103
100
114
145
72
120
80
100
101
67
163
109
109
69
80
69
80
94
80
69
99
109
138
87
69
201
69
78
121
80
156
120
120
147
69
76
96
154
80
109
157
175
128
130
107
69
156
54
88
76
111
93
110
150
120
69
95
72
81
109
94
145
115
80
80
120
130
138
69
128
99
120
113
94
123
131
119
133
128
142
106
93
78
87
87
72
78
121
87
80
76
69
69
93
52
116
93
131
76
102
108
97
107
154
110
141
120
118
89
135
78
80
110
99
143
119
154
89
104
120
76
197
78
69
67
110
164
112
148
133
72
139
94
174
132
69
91
101
91
117
187
87
99
78
151
78
102
133
69
87
87
110
76
99
95
76
106
144
87
104
109
115
93
108
99
151
93
110
76
94
69
145
128
132
136
120
82
91
155
107
143
101
91
99
78
127
113
80
76
107
54
143
96
119
109
156
115
156
143
107
143
114
69
74
106
175
78
175
106
74
76
69
89
119
93
69
88
74
75
87
94
119
102
80
136
147
92
74
60
80
69
132
91
93
80
132
134
143
127
117
117
80
99
145
115
100
87
69
107
155
120
80
116
120
120
52
91
69
88
125
155
151
110
54
175
123
80
98
119
128
140
114
69
121
89
69
122
80
117
109
121
91
175
91
76
162
69
56
88
89
78
154
91
109
76
80
163
113
153
117
87
133
79
69
123
119
69
136
109
98
127
80
119
175
136
87
83
80
143
94
111
110
87
78
80
84
80
107
94
137
88
128
161
131
69
66
54
125
151
163
72
90
69
101
110
121
119
69
146
94
131
72
113
93
149
91
80
171
113
76
140
69
90
100
69
197
136
109
119
129
106
79
103
131
136
123
164
78
128
131
74
128
80
80
128
54
102
155
140
120
163
52
123
94
54
87
71
80
154
146
131
88
115
96
78
137
175
93
163
78
56
125
80
113
80
129
125
145
115
175
95
110
140
104
131
128
80
128
132
147
118
69
146
107
154
69
113
138
114
122
156
126
88
110
80
91
117
175
129
75
94
103
113
91
127
80
121
175
147
58
43
114
89
96
104
165
56
76
144
87
69
107
89
110
78
174
115
76
94
93
138
96
71
80
72
109
89
131
69
98
113
59
134
69
114
107
89
69
108
78
155
102
80
88
131
118
120
175
143
136
92
80
132
113
82
107
87
98
96
104
87
72
125
112
103
80
156
127
110
99
116
66
107
87
137
69
78
103
105
119
80
69
110
78
110
117
80
112
128
128
197
174
78
89
98
76
89
128
58
175
69
80
111
112
131
78
109
142
159
52
89
137
121
175
141
164
166
155
94
101
88
174
97
154
89
80
101
88
175
131
80
131
89
126
131
129
119
66
94
93
58
99
110
69
175
69
88
85
128
80
71
82
96
113
133
76
69
109
120
120
124
78
107
111
140
69
118
80
80
175
128
110
80
120
69
89
129
111
115
100
98
99
137
88
69
119
128
87
131
74
91
80
78
107
80
117
143
143
143
76
166
93
69
128
103
87
136
101
107
69
80
152
119
69
124
76
154
129
80
94
140
69
121
156
87
77
88
89
106
112
107
117
80
88
123
110
131
107
131
113
142
183
175
69
94
101
155
100
115
115
74
136
89
140
134
118
128
110
131
87
109
119
104
78
131
69
134
138
107
80
104
140
78
136
175
80
116
69
132
72
91
76
107
69
69
107
109
154
120
76
164
133
175
87
91
128
120
151
66
83
131
109
124
90
110
71
175
72
112
112
111
78
102
117
83
87
87
107
117
131
69
122
80
136
69
74
154
87
132
144
119
117
103
96
76
88
88
96
80
154
154
90
91
100
126
140
109
99
145
107
113
69
78
85
110
80
151
88
103
94
124
120
140
112
91
124
131
67
85
88
91
87
78
127
78
88
175
69
120
73
100
99
103
69
78
110
96
87
92
114
121
146
78
72
146
52
69
112
140
118
146
76
140
94
102
127
113
102
138
109
72
119
137
98
101
120
60
132
175
69
111
111
85
92
134
102
104
107
82
119
91
71
80
124
112
85
88
154
130
121
117
114
80
69
72
99
85
89
119
89
122
119
156
113
77
136
108
162
69
80
112
79
135
133
148
69
140
111
69
110
104
80
112
74
69
120
155
144
78
72
78
142
112
89
127
52
69
124
87
87
110
102
109
141
150
175
130
120
95
131
109
152
109
87
127
110
87
87
107
114
120
107
88
87
106
127
163
93
88
91
102
147
131
78
69
155
75
145
91
107
140
124
106
125
88
151
56
107
163
112
91
94
76
76
69
90
69
91
112
76
91
100
80
109
121
104
107
56
73
121
127
151
120
110
138
175
134
175
80
110
93
130
76
119
69
87
138
82
101
80
96
76
115
87
165
106
87
133
80
107
99
80
94
89
76
121
120
87
89
72
78
107
154
110
110
92
120
119
121
78
120
104
117
107
93
74
134
96
68
128
93
117
163
91
75
78
88
80
99
106
52
83
87
128
89
155
106
113
80
80
94
140
80
155
72
91
120
137
54
107
133
80
121
105
90
88
115
109
137
88
121
151
94
106
54
89
197
98
94
175
91
150
119
146
80
100
119
80
134
69
87
147
90
137
69
80
78
89
174
87
110
78
115
127
94
72
148
80
113
85
88
67
72
109
145
104
131
81
104
151
148
106
154
98
99
78
119
78
99
126
93
78
74
109
121
69
117
81
107
80
78
88
80
88
80
87
103
66
87
89
128
117
139
104
96
131
74
88
117
106
80
89
80
91
56
69
109
138
119
110
97
89
83
174
151
119
91
144
121
118
67
109
140
120
100
94
54
80
138
103
175
119
146
154
79
80
80
99
69
98
76
69
104
120
75
175
119
121
52
87
119
136
155
88
89
162
107
155
146
100
69
115
152
120
122
69
115
109
138
96
131
104
80
83
87
162
83
89
136
87
172
54
88
107
117
72
72
119
78
120
143
100
80
140
76
123
91
127
69
80
110
153
87
110
140
151
83
131
113
91
87
89
98
140
145
101
95
175
134
109
126
117
76
148
118
99
89
121
134
89
79
89
154
101
134
148
89
96
113
145
76
133
115
54
69
94
110
177
76
87
123
69
127
107
98
121
119
69
81
102
101
87
113
160
106
120
74
110
96
114
104
74
110
87
93
87
76
134
93
54
143
113
88
88
80
96
80
146
109
80
118
87
80
129
107
119
97
64
85
132
94
87
110
132
143
145
115
146
80
72
87
175
76
130
134
131
69
80
109
131
75
106
90
125
128
69
175
174
101
87
87
164
120
80
80
197
105
69
113
87
131
111
80
119
107
128
109
117
106
104
120
109
169
99
110
78
120
109
109
109
69
80
78
124
91
134
147
115
109
121
69
99
116
142
115
78
103
122
113
162
152
100
96
80
151
106
88
104
94
76
125
106
80
107
96
175
133
87
130
69
117
88
87
156
98
110
89
183
87
69
153
87
128
175
102
80
103
80
99
69
155
128
100
80
132
89
85
138
88
154
109
109
134
111
156
74
76
78
120
118
67
112
107
110
56
76
84
156
106
136
156
94
101
118
80
80
106
146
110
93
163
165
111
89
106
115
82
95
116
155
197
107
133
87
111
74
76
88
78
134
94
174
117
80
120
88
152
106
80
131
88
147
104
124
159
132
69
74
154
128
113
109
76
93
138
75
108
175
90
80
93
151
90
99
78
117
80
117
156
151
87
66
113
127
54
58
73
131
118
106
103
154
109
69
128
110
72
106
88
99
85
81
137
69
113
129
80
120
115
88
197
151
135
80
118
54
80
182
118
133
54
85
80
69
131
69
117
128
111
69
124
100
88
145
103
80
76
113
104
88
128
107
144
71
104
96
59
154
120
146
148
107
158
134
54
87
102
99
78
69
69
93
67
78
97
85
89
76
119
183
119
88
76
151
87
52
104
102
101
133
134
101
136
120
72
127
91
121
99
69
80
96
87
107
87
60
155
128
117
87
157
119
120
87
75
67
131
155
76
114
94
145
119
119
79
157
69
163
112
137
74
99
137
90
99
127
88
106
75
151
104
78
128
127
80
91
93
131
76
151
95
123
104
96
141
83
108
109
80
111
143
104
113
155
117
86
69
89
80
76
93
101
163
80
201
83
131
117
99
88
69
72
116
104
134
78
197
109
124
94
80
80
94
69
144
175
110
175
80
69
95
107
119
152
80
143
80
104
151
99
80
149
143
100
79
56
93
78
76
131
109
154
113
119
114
69
157
112
80
109
88
155
63
127
93
112
76
93
102
89
132
69
87
87
137
100
114
152
137
175
107
83
107
119
185
124
131
131
115
80
146
80
80
69
74
99
118
102
94
116
88
92
113
102
139
117
78
124
127
69
107
120
123
87
69
80
81
99
120
80
154
113
72
118
76
78
89
100
93
145
122
78
74
76
94
134
80
95
136
175
80
151
80
69
107
110
87
112
80
121
175
109
70
72
69
128
120
136
131
76
80
209
124
120
107
93
123
93
81
130
130
94
156
112
91
112
87
130
89
78
112
114
175
175
71
69
78
154
156
164
87
151
151
74
157
122
117
80
109
114
115
174
143
88
80
69
128
80
87
128
117
104
72
107
123
54
52
113
83
87
94
67
80
74
110
80
79
76
140
54
113
76
69
85
110
119
124
80
99
85
106
110
120
69
69
131
107
144
93
88
104
131
72
80
69
134
112
121
128
160
89
117
69
175
72
87
125
117
87
113
111
107
143
109
133
106
76
76
76
155
126
78
100
154
76
99
128
154
69
69
110
146
109
121
120
151
120
121
88
147
69
90
175
134
175
119
93
106
80
114
101
134
133
101
87
98
115
102
113
119
126
121
120
85
76
80
80
69
99
111
106
109
120
80
88
80
96
78
162
80
135
113
89
128
78
54
106
104
148
125
74
91
197
80
94
66
80
104
87
78
80
69
100
96
120
80
78
95
89
93
69
89
132
134
134
175
69
101
80
69
117
74
69
78
122
74
99
101
148
78
64
66
119
76
80
94
85
119
78
87
118
148
80
96
104
154
77
124
78
43
134
143
129
69
99
111
99
128
111
140
96
74
136
78
72
107
76
88
107
155
197
104
69
102
67
80
139
129
87
197
131
121
120
103
107
163
72
80
112
172
80
69
96
80
107
112
129
76
96
87
154
107
87
72
80
80
113
175
121
78
76
131
91
154
90
76
103
145
80
80
80
134
103
91
164
120
98
69
111
102
175
106
151
112
80
76
87
118
175
95
76
72
115
110
121
69
131
57
117
112
101
76
197
110
154
106
78
138
99
80
119
110
87
69
119
87
155
132
80
154
137
119
87
118
117
88
156
137
111
100
140
76
123
78
102
80
102
80
114
81
139
96
121
69
123
107
85
169
76
119
122
175
110
87
124
104
96
95
138
87
128
54
108
89
110
123
72
80
73
118
80
87
114
104
145
91
107
72
137
151
162
110
127
109
112
114
121
76
80
87
161
80
154
93
175
138
175
76
114
80
149
119
119
119
109
103
83
100
126
133
80
72
72
71
104
76
187
112
104
103
123
104
120
140
128
87
136
101
113
106
89
98
114
87
120
148
69
91
139
154
114
105
87
121
87
95
90
137
99
104
104
142
80
120
128
110
74
109
109
154
131
115
118
104
112
87
69
79
115
69
100
99
80
69
131
107
69
80
119
80
103
106
106
136
127
91
120
88
70
69
104
98
112
80
88
143
80
163
90
75
54
156
87
130
117
108
64
87
160
140
169
117
76
76
83
80
119
107
139
89
132
103
88
69
104
142
113
89
78
76
66
110
152
113
80
121
80
122
99
107
69
87
129
80
117
105
106
141
158
69
197
124
143
125
90
78
124
80
69
110
197
120
80
83
80
166
100
114
43
80
106
80
115
76
120
166
98
151
103
113
140
78
209
60
175
80
115
134
104
87
133
127
156
134
106
101
89
120
113
142
69
118
87
80
80
146
112
110
154
112
69
92
117
91
112
123
154
96
174
88
106
95
145
90
152
104
87
100
85
88
147
69
87
112
76
78
80
59
128
78
122
87
110
101
102
102
145
109
69
69
107
112
80
69
128
136
76
89
78
109
144
132
161
155
69
164
119
120
76
69
98
80
74
143
120
72
69
89
78
99
117
54
79
80
69
134
69
145
97
104
87
80
89
72
100
175
127
80
93
104
89
80
128
131
76
110
69
104
69
52
175
52
134
80
113
162
126
97
91
149
78
134
87
76
80
115
113
82
94
54
66
134
95
80
76
80
69
119
113
85
72
114
76
137
118
89
129
131
80
133
156
76
99
76
96
69
161
193
197
131
174
118
120
106
113
101
106
98
140
199
139
134
94
136
106
128
99
112
151
118
107
98
106
94
107
124
120
52
94
109
87
80
99
103
149
111
76
87
152
103
118
119
69
100
151
80
101
103
69
125
119
94
109
75
76
121
80
117
87
119
93
104
87
128
109
93
101
117
78
119
78
111
87
139
128
129
136
78
117
80
107
109
116
154
140
130
76
119
80
69
87
87
165
143
119
80
95
80
80
98
175
139
104
177
110
120
80
100
108
128
80
69
121
87
140
148
88
78
120
146
104
156
102
172
151
110
78
83
67
88
169
89
80
128
120
175
119
138
94
80
68
113
80
134
107
87
155
69
80
87
85
80
88
122
104
141
120
69
80
163
175
154
78
103
88
76
109
119
146
73
107
76
120
80
160
78
136
69
120
133
78
106
80
128
143
108
119
76
78
154
175
93
83
159
87
131
85
155
120
78
120
94
120
114
99
99
72
78
111
99
155
155
127
112
134
175
69
127
102
80
133
141
122
54
87
107
78
87
69
78
95
76
74
147
98
175
80
101
109
80
122
78
111
43
82
123
52
112
106
154
110
69
96
76
52
80
80
69
174
76
107
69
88
139
185
119
87
69
99
137
132
117
102
175
118
143
119
106
129
125
175
80
96
96
78
89
80
113
91
116
94
116
74
87
80
141
85
119
122
102
82
76
101
87
87
102
116
118
83
75
128
89
124
104
87
69
154
76
134
163
100
69
121
104
128
128
78
78
175
104
78
120
78
94
110
136
120
89
80
94
94
76
94
87
197
64
148
69
69
80
117
69
97
87
52
87
92
131
146
112
128
119
69
76
80
93
163
119
93
114
119
98
94
88
106
69
80
100
131
155
80
67
205
134
69
120
88
131
72
95
107
122
133
107
43
145
113
100
123
112
124
134
175
127
88
87
43
87
113
80
124
102
134
126
128
131
185
121
96
151
146
127
106
80
69
87
87
122
88
96
69
101
93
89
143
96
78
106
76
76
69
88
156
94
89
119
98
76
89
69
101
103
76
80
94
99
69
128
74
124
109
88
175
78
91
114
127
76
89
175
120
154
140
74
138
104
95
69
94
113
122
110
156
78
104
80
136
175
134
63
74
69
64
134
111
130
136
95
128
85
119
78
175
128
78
175
117
96
110
101
106
89
69
136
94
80
104
69
95
87
69
175
74
87
94
116
80
107
111
112
80
89
76
99
104
143
78
80
130
154
112
88
128
107
154
128
100
117
129
112
88
120
54
130
107
110
110
144
165
71
99
94
145
115
107
120
87
56
99
156
87
136
86
89
133
76
119
131
102
88
72
139
67
118
138
91
128
80
82
154
128
154
130
69
99
138
80
87
92
78
154
144
52
98
143
87
101
120
195
89
147
104
90
154
67
93
88
54
147
128
119
87
84
138
107
114
135
80
131
80
87
110
96
116
151
107
110
80
137
87
100
76
101
120
128
69
98
130
80
137
80
100
144
137
69
69
112
69
72
96
112
69
146
90
127
145
197
106
88
121
88
80
78
154
80
119
78
106
140
54
119
94
72
131
110
76
80
69
99
136
76
78
197
122
89
99
90
136
109
149
69
136
143
76
109
99
143
92
69
107
87
91
69
80
137
139
199
151
134
72
78
90
69
69
102
106
93
174
107
132
181
69
110
78
76
76
119
131
165
80
113
88
143
112
100
140
107
101
89
102
71
186
175
119
92
107
119
120
113
78
134
174
52
69
148
80
52
107
121
76
134
112
133
69
131
122
80
109
92
154
127
119
126
117
88
143
87
109
80
146
120
132
115
124
80
106
80
69
96
129
163
119
147
134
118
119
154
111
101
88
74
89
87
85
137
88
80
175
66
112
120
69
102
78
72
130
143
85
107
128
80
87
122
128
80
120
107
113
134
87
60
96
154
134
132
197
70
104
78
146
113
54
110
136
89
183
143
136
112
113
114
123
102
118
116
95
131
113
132
102
118
120
141
128
80
110
132
175
76
89
175
88
132
152
122
125
85
74
80
96
197
164
154
122
134
154
76
88
146
89
126
69
156
96
107
136
101
52
156
140
106
80
120
80
156
107
130
67
89
80
54
87
107
119
76
117
43
78
80
134
154
80
164
110
87
69
59
100
77
89
80
143
131
69
78
116
119
121
114
137
104
80
151
115
116
78
161
156
87
87
67
76
116
147
96
122
124
120
109
143
115
112
119
94
154
87
110
88
69
99
79
89
87
69
88
121
175
131
87
157
119
76
118
74
80
100
78
72
157
80
120
112
94
76
137
94
109
80
131
114
87
54
140
107
107
136
121
117
96
121
87
88
69
69
78
72
94
87
94
113
103
91
93
91
75
80
155
83
120
100
100
119
69
121
94
99
82
74
139
78
69
119
136
153
80
118
120
174
120
122
117
90
87
69
108
109
110
152
106
122
69
125
80
153
80
113
175
75
69
69
103
201
56
197
130
194
124
131
117
131
175
109
129
76
79
87
87
150
127
110
76
94
76
90
74
136
80
96
69
96
87
128
128
102
117
131
99
156
72
154
107
94
119
101
102
117
80
118
117
100
113
122
87
69
69
117
197
116
109
96
118
117
107
121
88
94
160
97
69
110
119
76
117
115
120
69
130
117
78
85
177
114
110
69
89
74
163
154
107
89
128
94
90
120
111
102
99
175
91
96
87
80
95
60
131
100
152
80
59
94
155
120
90
120
101
155
164
96
54
131
80
99
78
121
144
113
131
69
72
80
91
74
199
91
109
156
113
88
106
145
99
82
69
80
123
74
97
104
120
76
142
76
89
155
69
124
129
69
154
106
87
74
164
152
112
112
130
134
96
164
78
134
179
74
128
97
68
80
83
69
107
110
175
76
128
152
118
80
99
80
98
98
54
105
143
67
136
197
72
178
151
107
80
118
80
104
72
107
80
112
76
71
111
68
110
115
64
123
199
78
160
78
107
155
160
110
151
97
69
100
136
131
121
132
89
109
169
120
124
117
73
52
100
102
80
101
121
69
120
69
90
145
95
154
78
111
94
154
88
83
169
133
90
107
130
93
94
131
69
164
155
96
131
117
83
90
128
110
107
104
87
76
123
175
76
120
151
72
88
88
106
131
117
100
69
128
78
69
150
87
104
111
100
93
80
100
106
99
120
114
76
119
69
89
93
107
92
104
100
154
169
101
155
156
156
118
101
172
69
108
96
76
80
107
116
109
69
177
104
128
76
80
120
94
100
149
138
77
146
119
87
147
56
87
90
165
143
100
91
175
150
87
120
120
78
120
123
80
109
105
197
131
80
109
175
133
69
159
93
124
90
101
103
156
127
128
76
128
136
129
87
119
128
100
69
130
69
106
69
120
80
175
128
99
87
113
127
57
94
110
80
106
98
80
99
115
185
94
83
107
106
109
156
92
76
156
80
80
133
103
52
150
80
113
104
92
88
145
76
106
114
93
91
197
157
80
121
110
93
87
137
126
98
88
127
146
151
156
118
163
119
124
119
119
54
98
107
72
174
109
58
69
127
164
102
80
87
78
89
110
117
96
104
128
96
106
119
88
100
122
131
136
185
90
131
163
148
121
113
154
175
106
87
88
110
126
69
78
94
106
128
121
69
95
134
115
88
169
154
120
74
163
43
156
80
110
80
54
90
175
112
133
119
87
72
133
124
136
107
141
155
119
107
156
94
151
78
101
87
144
163
80
80
87
101
103
54
109
102
66
197
88
96
80
146
154
69
80
109
130
102
131
99
69
78
147
109
96
106
127
72
110
156
163
104
113
122
111
69
110
80
154
85
166
82
128
69
106
90
100
100
78
175
137
104
134
72
99
74
154
106
91
133
149
107
119
80
119
114
94
102
89
89
95
77
146
76
160
117
118
148
145
183
80
107
126
139
60
107
151
106
74
69
138
109
163
146
110
113
107
151
120
99
99
99
119
91
102
110
120
80
120
88
80
128
87
87
163
175
99
72
129
175
110
69
87
151
87
143
106
80
103
140
93
69
110
78
144
123
97
131
90
109
94
156
154
125
106
119
87
74
134
128
120
69
106
69
76
146
78
134
175
80
78
87
135
154
154
96
78
102
119
104
88
80
151
91
89
119
134
76
90
121
80
89
98
109
110
69
83
136
85
154
134
106
80
87
76
85
146
80
85
85
76
101
174
69
69
88
100
76
132
80
125
88
120
85
134
94
80
119
69
136
87
87
87
87
69
72
175
136
80
106
69
123
87
99
127
120
120
80
91
107
78
69
76
99
87
78
117
175
145
113
102
96
120
147
155
100
160
123
117
76
78
95
127
78
101
88
54
80
166
99
103
80
102
117
116
78
78
119
150
87
117
171
117
85
80
117
66
78
111
126
87
146
144
127
83
132
80
80
78
110
88
80
69
175
87
163
102
78
126
69
123
137
121
89
123
80
94
80
106
136
114
91
125
78
69
131
134
75
148
106
151
80
75
106
102
120
76
69
152
130
122
81
120
52
78
111
87
80
109
108
72
156
70
119
74
82
79
131
146
67
121
69
111
120
134
121
87
110
112
80
67
110
119
102
96
56
98
109
115
109
74
138
87
93
76
112
122
76
107
106
112
85
160
141
154
134
101
91
69
100
121
89
80
113
175
80
113
88
112
110
96
175
43
113
123
93
125
89
106
119
126
80
59
152
74
72
131
90
131
85
96
72
104
175
99
107
82
82
121
89
78
78
129
87
127
104
76
136
68
87
120
83
140
89
114
107
80
169
85
56
120
114
120
91
94
99
82
117
155
69
151
128
117
112
79
113
110
131
153
130
107
64
69
96
78
54
76
99
101
129
88
113
102
156
93
80
91
109
91
121
103
164
110
159
122
94
140
140
90
87
119
78
85
183
134
120
177
78
115
140
121
78
112
94
123
78
94
56
130
127
131
156
117
69
99
78
104
87
119
128
80
109
80
185
94
76
74
120
94
80
109
80
69
80
91
92
82
110
108
69
72
131
69
100
175
112
69
150
100
95
119
69
72
116
88
74
112
123
126
123
89
172
175
114
83
110
123
155
69
102
87
89
96
114
183
80
127
103
163
138
80
107
80
113
120
80
89
87
109
69
120
143
87
78
126
109
99
88
112
111
81
85
121
72
96
108
89
201
120
87
150
128
75
76
69
107
102
94
91
145
89
119
143
146
92
90
151
94
80
80
69
156
138
106
85
52
117
90
101
80
69
119
69
96
93
76
80
143
120
120
80
78
107
56
119
76
102
121
93
164
109
110
175
94
131
88
80
107
148
122
69
91
140
107
88
69
80
156
102
99
111
80
102
154
165
57
119
126
138
87
131
100
175
151
117
78
131
88
69
156
136
80
103
106
88
89
120
122
147
120
123
107
95
78
133
154
129
91
128
99
75
52
157
78
83
147
148
115
87
104
145
88
112
90
76
154
76
116
80
124
102
145
107
106
110
89
106
82
101
151
117
102
156
120
118
145
122
113
123
117
89
88
112
136
93
80
89
88
136
137
136
128
80
69
131
121
107
101
159
138
120
101
123
54
99
114
106
101
98
87
103
80
78
87
120
119
80
127
117
107
69
133
89
94
109
154
69
56
119
156
106
112
100
120
78
93
138
109
78
109
66
69
142
128
76
156
78
128
96
56
104
94
83
87
80
80
76
175
145
87
154
105
154
103
96
69
128
80
109
175
140
95
119
171
78
140
97
119
120
115
99
87
157
120
74
124
107
76
155
156
89
72
78
76
80
130
119
99
80
87
69
95
87
80
91
88
104
155
137
76
78
78
78
128
115
127
113
138
69
76
76
107
87
119
145
88
175
143
95
121
99
118
96
72
120
128
93
134
119
89
132
119
88
91
88
109
76
88
138
88
69
76
99
175
87
107
147
154
80
87
69
128
169
156
87
134
131
80
76
114
127
127
151
113
119
110
134
112
87
80
175
147
80
95
107
88
96
80
89
144
88
175
116
66
69
130
117
132
120
66
106
199
78
103
128
126
139
95
96
52
69
80
52
110
69
131
78
127
87
87
176
96
112
117
102
112
72
146
104
106
144
119
128
133
80
128
100
109
119
118
80
78
80
87
121
54
136
99
119
100
90
88
59
133
117
175
111
106
88
52
103
123
101
111
78
138
80
109
96
75
115
134
120
156
115
80
183
154
155
99
99
148
80
195
134
128
102
94
88
156
137
87
115
139
133
69
109
80
144
124
80
128
88
120
137
123
67
99
80
123
121
126
78
121
54
78
97
125
121
92
134
132
116
99
94
108
92
78
85
74
93
154
152
131
121
69
125
128
69
124
99
69
118
111
69
78
87
87
119
113
98
199
109
95
156
126
104
89
76
104
121
111
197
80
140
131
80
146
69
64
140
96
76
119
107
112
74
99
54
155
153
137
115
75
127
80
128
107
113
69
104
69
152
110
43
69
109
110
94
69
174
120
120
154
69
102
120
123
69
104
76
88
76
112
96
78
88
128
85
89
128
109
76
123
94
109
82
119
99
107
119
87
87
110
101
119
64
109
83
76
80
56
76
87
54
128
80
113
102
96
146
121
89
155
117
98
69
69
80
156
55
80
76
90
117
69
140
104
80
107
156
119
69
164
106
118
76
175
99
127
113
136
128
109
110
120
78
134
99
76
146
119
140
64
98
94
119
121
133
127
80
156
88
80
99
80
129
154
136
106
106
69
163
80
142
119
97
43
140
90
138
118
80
119
99
69
151
103
150
127
84
101
87
132
89
122
84
80
57
72
78
155
80
140
113
87
69
137
85
80
131
102
80
94
93
126
93
95
104
114
131
133
154
100
87
118
78
88
175
92
80
89
78
87
113
80
73
151
131
106
87
97
114
120
59
76
88
92
110
52
155
131
94
117
106
76
91
89
89
165
156
80
69
78
143
69
175
120
118
131
160
69
78
117
78
101
197
185
69
106
80
80
80
132
80
181
87
90
148
80
88
90
76
85
104
87
114
155
94
115
151
112
89
94
121
158
76
78
131
78
120
78
103
110
87
99
122
86
96
127
100
134
78
100
100
105
88
78
164
101
87
121
113
98
132
146
78
113
107
126
74
129
69
69
103
104
80
110
93
119
120
187
98
120
110
78
139
132
104
87
55
64
131
80
137
112
89
90
90
100
128
96
148
69
133
120
80
142
175
85
138
89
54
128
74
88
80
80
69
119
120
76
80
87
120
100
103
146
136
154
88
164
107
130
142
106
74
69
112
120
87
99
99
94
106
87
85
154
85
115
88
52
160
89
149
80
111
201
104
109
110
101
120
80
107
140
106
80
80
129
74
80
94
78
91
175
197
71
99
104
136
134
137
143
96
183
80
80
87
107
80
121
94
89
123
128
104
105
138
119
119
131
128
163
72
101
103
154
134
119
134
128
119
74
132
72
91
145
80
80
99
172
117
92
107
80
102
80
151
129
99
175
104
126
83
109
109
154
119
78
87
120
119
113
94
163
104
164
78
95
119
138
69
87
99
175
72
94
113
80
74
145
96
120
100
121
94
154
134
101
80
189
160
66
162
112
69
110
151
155
123
76
80
80
132
82
87
128
100
90
119
87
140
111
136
107
88
89
140
101
119
123
128
102
69
151
87
88
135
133
122
87
91
69
69
89
69
147
96
146
156
175
109
175
78
83
117
107
113
80
126
119
136
107
128
87
123
117
113
123
156
82
91
110
114
140
99
69
96
107
91
126
109
81
137
121
69
151
120
117
166
80
148
88
110
104
118
80
80
131
109
136
104
115
126
80
140
80
112
156
94
102
87
114
69
113
110
96
119
107
106
140
93
87
119
106
94
78
78
175
78
87
93
99
99
107
101
136
134
69
137
76
76
87
104
115
91
94
87
117
113
156
132
127
88
120
80
74
91
140
80
78
134
129
117
74
123
76
80
80
79
88
87
113
119
78
115
107
136
80
87
175
137
52
136
80
67
76
112
111
80
122
128
118
78
196
87
134
80
99
87
105
106
87
76
76
95
112
90
69
103
109
80
115
138
134
175
109
78
145
109
89
145
88
112
155
94
89
102
52
156
118
76
74
107
107
92
69
155
95
197
80
80
133
175
107
140
69
110
128
136
69
69
52
148
87
113
112
122
115
97
78
113
113
164
80
109
120
69
76
116
76
127
87
115
106
96
80
109
98
80
134
114
159
101
125
162
80
113
185
58
175
88
123
89
89
201
120
98
96
80
104
115
134
99
126
117
113
119
91
156
109
145
90
156
131
80
80
54
76
76
130
82
175
134
112
69
96
78
100
87
85
88
67
78
121
106
131
78
87
88
131
107
119
108
122
69
83
131
69
88
112
80
163
89
109
80
106
107
78
80
117
88
54
54
88
88
103
80
133
67
149
130
110
87
144
144
113
76
93
69
69
121
128
80
154
133
80
141
89
155
71
92
96
100
60
155
134
154
80
88
107
110
74
120
94
80
107
80
136
129
140
80
101
76
75
107
114
128
132
113
80
130
69
80
99
87
112
113
99
121
54
119
69
109
100
113
76
87
107
99
80
100
54
116
76
76
60
117
122
56
129
111
92
95
111
76
79
69
93
82
115
129
89
79
87
104
78
117
113
89
94
69
118
76
127
111
95
112
69
80
74
106
91
128
54
133
87
119
129
175
95
119
80
127
109
197
104
88
69
104
81
69
128
99
69
175
80
134
99
87
110
106
80
185
85
117
136
119
114
134
155
80
69
99
129
98
80
197
85
154
80
94
156
120
93
162
93
69
155
113
74
130
56
107
109
163
80
106
120
106
80
103
43
80
109
101
74
107
146
96
121
131
138
111
152
89
115
110
143
118
102
69
87
103
88
93
143
89
52
54
123
87
88
134
119
100
76
87
91
104
69
149
96
118
111
78
83
87
120
80
119
110
96
120
136
143
109
106
155
120
83
175
128
87
131
124
108
76
119
98
110
155
94
78
146
56
93
146
117
131
89
72
98
91
104
76
87
134
106
87
87
87
80
117
76
104
151
78
80
107
66
99
69
69
120
120
137
140
110
147
80
102
119
87
80
155
99
69
69
145
93
163
113
101
110
126
160
127
107
156
107
105
143
104
123
109
93
76
100
143
94
87
145
75
100
66
67
113
121
156
74
127
69
76
66
154
79
101
137
120
197
134
43
56
140
124
155
91
122
110
85
127
80
98
96
136
151
123
132
111
175
110
77
69
159
90
134
69
83
107
109
138
127
107
117
89
76
104
138
120
89
80
143
101
69
78
69
69
64
87
64
122
136
139
175
66
119
120
89
139
56
133
87
72
136
110
95
132
96
119
120
89
95
80
164
69
104
76
112
134
118
163
85
80
115
114
69
125
82
43
80
174
131
156
124
128
136
136
164
87
89
154
89
130
101
101
143
122
87
80
120
146
175
87
147
146
99
82
78
106
140
87
69
99
120
92
132
114
80
104
87
94
104
119
175
76
99
115
127
76
91
154
80
133
101
76
78
120
95
80
133
102
104
164
145
114
107
146
69
91
93
151
118
80
104
107
80
197
163
163
100
100
152
130
128
154
80
89
87
111
94
87
115
69
120
69
132
134
94
80
157
80
87
120
80
78
155
75
87
76
99
160
104
87
119
105
120
162
80
128
112
114
113
185
132
96
98
66
93
87
154
164
131
127
72
75
106
69
147
76
123
88
138
107
123
155
69
78
104
120
123
146
106
69
145
69
128
103
197
101
93
120
58
112
137
132
120
99
127
174
106
101
99
136
145
95
69
72
100
109
91
94
79
133
76
107
69
76
87
87
69
80
109
80
122
95
52
69
43
124
80
197
135
158
111
148
109
99
90
71
156
69
99
54
127
128
69
107
125
69
175
99
122
117
119
134
132
119
112
113
94
100
63
72
72
80
115
88
69
76
137
199
85
91
80
175
102
83
186
137
117
88
164
107
91
94
93
136
197
139
130
144
152
120
120
122
147
69
118
140
80
76
107
118
80
130
122
85
87
175
104
131
146
56
131
58
113
123
69
104
137
82
115
88
101
119
139
128
171
89
145
123
95
113
172
101
177
197
70
148
87
80
78
119
117
89
107
156
76
76
116
102
88
117
78
134
110
80
113
96
94
76
134
120
130
80
87
120
91
94
69
119
79
175
96
114
164
113
69
128
87
52
114
156
135
140
119
110
80
78
72
154
76
99
128
143
124
114
118
175
97
87
117
133
175
69
119
109
162
113
76
121
107
105
69
99
80
78
78
80
93
154
80
81
80
80
58
103
114
78
181
128
113
93
126
98
71
88
52
132
69
119
93
83
71
100
120
175
144
151
134
67
52
96
102
124
126
134
89
94
102
175
88
143
80
103
87
131
120
126
96
56
128
128
113
89
78
143
113
93
175
43
119
104
78
107
104
74
104
98
120
104
106
107
94
80
69
83
119
145
156
89
119
87
134
89
102
154
127
152
107
136
89
89
101
127
121
181
134
76
117
91
115
88
80
93
149
134
74
145
87
99
93
105
78
126
74
69
94
117
80
109
136
114
118
120
109
80
153
90
120
80
74
122
73
80
175
80
156
121
163
76
87
94
107
127
87
123
140
109
96
54
94
100
121
76
131
80
87
78
101
85
155
99
136
92
76
109
101
78
149
102
93
91
112
129
160
100
85
134
89
106
113
98
155
121
76
155
80
87
118
120
103
106
120
80
78
102
119
94
127
150
114
119
120
96
69
98
102
152
102
130
124
76
113
128
93
87
128
148
115
149
101
94
106
138
88
96
140
151
104
118
130
120
128
143
133
111
80
87
139
118
110
115
144
80
117
121
175
137
107
133
85
69
197
76
76
69
69
155
80
119
91
128
80
76
91
114
106
100
69
143
74
109
107
88
132
112
146
136
100
132
69
94
74
113
148
183
130
78
155
144
125
90
69
69
106
121
127
120
104
121
88
143
80
120
156
112
79
134
116
109
186
88
76
201
71
134
85
121
101
106
128
110
87
59
69
88
94
154
128
80
114
102
80
164
107
125
137
80
155
197
80
78
85
88
80
116
128
146
112
110
93
120
109
69
123
88
69
78
119
89
103
87
80
152
118
140
80
80
102
78
69
85
108
89
69
96
76
154
119
115
91
131
80
131
120
91
96
115
143
128
177
87
145
102
118
123
175
69
143
162
115
78
80
144
197
106
80
88
93
80
120
69
147
80
94
147
115
157
145
69
79
72
131
140
109
107
127
115
79
72
119
142
87
96
165
85
156
69
54
80
72
121
150
133
107
148
106
87
67
88
69
89
99
125
80
80
84
87
102
145
78
114
69
93
152
131
109
69
74
78
118
100
134
155
118
101
88
113
134
75
106
165
96
121
128
163
110
69
102
117
76
83
89
102
119
80
136
122
109
128
146
162
131
75
80
107
104
109
80
130
119
90
69
76
104
124
78
134
155
80
103
113
119
127
98
83
134
77
131
131
69
89
131
94
110
163
66
104
110
113
52
76
158
69
109
69
89
118
104
120
91
80
73
80
154
163
80
80
114
80
169
175
88
99
107
130
151
120
126
91
118
54
110
69
105
91
133
89
131
107
119
137
127
87
117
69
118
94
85
125
122
129
145
136
85
90
91
69
121
69
80
133
136
157
121
132
96
54
94
85
94
99
119
69
169
131
97
107
87
126
80
106
159
186
138
69
137
85
117
87
141
143
89
128
98
106
52
80
127
100
76
80
146
89
89
76
117
68
103
67
102
106
123
88
99
101
119
80
155
175
115
112
137
87
126
142
124
104
100
129
109
96
100
102
78
136
80
119
135
127
100
64
125
100
152
80
89
74
117
120
134
109
98
146
99
104
120
95
112
95
80
71
78
80
118
78
88
80
139
164
76
80
108
121
87
80
131
69
94
91
109
109
86
144
88
80
66
151
93
94
152
141
120
140
76
54
119
119
109
104
101
78
96
94
100
102
109
119
87
154
78
74
109
101
120
107
54
89
134
99
156
94
126
118
69
85
106
80
87
87
43
79
72
87
128
124
142
80
69
54
134
100
148
115
90
119
95
87
119
140
43
76
54
100
91
119
129
96
78
101
69
95
119
69
92
120
109
127
78
110
107
175
88
96
80
124
155
80
69
89
106
59
87
94
119
109
134
69
108
109
156
109
102
155
118
129
110
123
106
209
110
69
88
72
106
112
127
134
89
78
72
80
112
110
103
80
102
124
72
84
78
114
91
91
146
54
96
153
106
109
56
77
120
64
104
101
69
89
87
110
158
78
94
197
169
80
90
138
117
125
90
93
113
89
136
115
72
147
119
69
134
80
113
72
145
69
128
109
80
96
151
121
80
87
102
111
80
152
137
153
107
109
74
119
127
121
156
109
91
69
92
96
113
132
108
88
69
69
136
76
110
83
127
162
88
185
80
107
80
100
144
95
69
137
78
104
104
138
93
88
91
143
146
94
107
128
89
57
111
56
107
72
94
72
72
80
99
87
99
80
87
138
91
85
87
87
121
91
146
175
148
113
88
89
151
72
127
131
69
80
101
93
145
87
117
52
91
72
69
114
119
120
103
109
160
181
100
78
76
69
91
122
80
59
175
85
94
94
72
89
140
125
69
119
87
87
133
60
106
109
99
128
106
109
134
133
107
155
80
175
125
78
118
148
85
91
93
136
133
133
109
89
80
116
140
72
138
83
175
156
85
120
93
80
58
76
128
146
102
134
99
69
181
99
120
137
119
85
155
118
123
78
154
134
69
133
78
156
80
110
80
122
113
121
121
154
168
99
164
129
120
110
69
73
89
123
78
91
93
87
93
155
80
80
80
110
80
78
107
68
160
87
88
54
93
146
121
89
120
119
69
88
80
107
120
134
69
80
110
80
131
76
94
93
104
109
119
76
134
149
93
140
154
116
92
87
76
148
137
118
123
137
106
69
121
119
115
112
98
95
80
175
99
80
87
60
87
69
69
125
128
69
94
100
181
88
96
88
78
99
80
73
88
87
69
119
87
109
143
130
87
120
93
80
130
120
89
93
89
76
113
154
99
96
121
154
105
76
151
120
102
74
90
89
127
120
87
96
81
60
69
112
88
115
199
151
146
80
76
115
136
109
80
69
140
118
145
76
76
71
99
147
87
106
156
143
137
121
75
126
134
80
109
95
87
122
72
72
93
88
137
134
115
175
104
111
123
121
74
80
89
160
120
80
80
121
83
69
110
120
121
92
156
112
152
89
140
96
78
128
126
101
127
76
73
111
122
69
197
95
109
109
52
136
69
155
119
87
90
76
76
106
201
69
72
101
117
96
128
101
109
114
78
43
152
96
123
89
100
123
92
89
76
87
119
140
80
85
175
75
74
109
80
154
124
166
143
109
93
110
102
74
80
104
140
110
106
87
76
134
131
78
74
99
69
118
76
104
131
110
80
93
76
87
109
107
76
76
80
80
43
69
89
85
120
113
91
87
129
93
109
110
140
123
156
110
165
69
87
125
69
134
89
175
80
90
152
99
111
175
118
101
80
76
143
120
98
156
102
88
145
69
107
78
133
110
119
99
109
69
143
78
76
144
78
72
134
151
139
78
156
164
96
127
115
134
130
197
109
157
87
120
133
57
109
85
102
91
112
148
183
69
150
76
175
69
72
113
119
80
69
93
145
89
110
80
142
138
120
125
78
80
123
80
155
103
87
87
97
137
78
99
69
76
126
87
154
96
85
96
122
107
101
134
69
126
102
94
126
154
65
80
111
120
78
68
78
91
140
112
69
136
130
118
78
104
107
110
69
74
153
64
164
79
76
117
175
156
87
80
129
52
91
78
113
110
152
136
63
80
113
78
197
82
121
69
125
107
119
80
95
79
154
106
175
131
80
91
89
128
123
97
113
69
117
88
80
72
102
78
94
120
104
69
115
131
146
64
128
140
128
95
98
82
80
100
113
140
124
64
89
78
124
121
80
154
99
175
155
89
128
112
119
148
118
175
140
125
175
93
92
110
105
87
96
111
149
145
101
106
111
104
95
126
76
94
66
81
76
175
43
103
87
126
108
154
80
78
134
122
113
85
69
127
127
95
75
103
112
105
72
76
119
89
119
102
114
83
80
152
144
102
98
85
72
120
94
78
80
107
111
102
175
96
80
123
89
77
54
88
69
69
76
125
120
87
110
155
163
128
103
101
155
80
94
146
154
72
154
91
110
74
89
43
106
87
94
154
98
131
121
80
80
93
154
106
59
80
106
124
145
115
140
87
67
117
120
92
104
69
125
78
169
96
80
104
114
113
87
94
103
128
117
110
93
83
80
72
80
149
113
127
90
120
87
152
80
131
136
129
96
164
146
60
54
154
80
76
119
122
87
80
111
121
122
90
96
111
119
87
119
52
69
54
54
69
69
99
112
80
87
88
113
96
97
117
133
87
94
109
88
175
76
78
87
136
64
80
106
78
93
80
128
94
93
113
80
83
78
101
147
134
102
109
106
69
127
91
118
109
69
134
52
43
110
120
69
106
110
100
152
80
93
80
171
110
135
125
117
110
69
80
103
113
80
80
156
154
119
175
94
89
63
85
121
104
120
155
87
107
68
74
113
177
99
59
156
99
95
88
105
120
101
87
72
74
78
103
78
134
127
85
145
99
78
78
80
107
77
111
159
91
76
80
118
101
120
106
110
115
119
94
52
156
112
103
88
107
106
69
80
120
80
145
78
102
140
145
56
137
91
136
107
107
94
80
98
96
132
76
114
121
69
128
89
80
88
77
127
111
114
99
121
101
156
154
75
82
188
102
107
117
80
119
97
114
102
164
148
69
108
69
69
160
114
78
110
87
119
117
110
76
128
142
128
69
150
80
110
128
117
91
87
156
119
110
110
145
104
151
197
80
111
175
76
80
94
87
112
122
113
80
157
144
135
72
88
100
119
78
175
121
119
99
107
93
85
103
114
72
66
80
111
115
126
78
121
71
108
79
113
128
110
148
102
87
80
175
69
91
88
76
153
134
101
130
107
94
94
89
75
94
97
201
88
128
119
69
69
87
134
78
155
54
76
69
74
87
74
105
112
107
119
89
78
110
98
156
145
121
97
121
69
101
99
119
104
78
98
128
97
113
101
175
129
104
116
107
117
94
80
69
78
69
87
78
74
107
162
104
80
110
106
107
88
87
72
96
91
155
87
88
78
143
88
112
126
99
123
104
88
88
154
112
151
80
138
121
119
87
88
119
114
142
105
58
125
122
136
126
87
88
101
127
132
80
149
111
69
79
176
87
69
119
80
54
72
137
80
69
80
175
130
121
87
66
124
119
174
93
79
121
78
113
76
76
140
102
106
128
111
87
107
143
111
78
71
136
85
121
88
69
80
69
80
106
124
142
148
120
52
89
69
117
68
117
107
76
80
147
160
103
69
69
80
69
78
56
151
80
95
76
78
78
121
54
112
72
78
93
141
145
69
147
104
110
197
104
76
80
154
133
109
88
119
158
78
80
123
80
111
76
52
78
123
141
99
119
132
79
144
76
150
148
107
141
107
88
76
76
76
93
117
69
113
160
69
117
80
114
69
129
69
76
103
91
89
80
136
115
166
100
80
76
143
116
121
143
69
127
112
131
145
160
153
140
112
131
144
80
69
79
117
69
99
118
69
91
80
43
160
69
100
127
109
127
88
89
78
96
125
120
80
66
87
138
137
80
97
54
155
140
175
100
59
99
69
197
139
121
118
112
126
85
80
87
94
76
89
129
60
120
130
87
117
80
119
119
69
94
89
87
197
92
106
154
80
130
113
144
128
113
54
76
156
107
69
94
130
99
144
88
98
100
128
129
87
69
88
80
80
72
140
87
110
87
69
54
76
119
80
117
87
131
104
108
96
89
87
64
69
90
80
80
113
110
127
80
89
94
117
57
56
171
119
78
72
109
120
121
72
52
136
83
118
154
95
89
131
187
78
76
89
78
93
87
109
134
119
140
78
71
72
123
80
110
128
69
148
78
106
116
99
72
87
69
104
89
130
90
106
80
80
69
119
130
59
87
100
56
99
89
91
69
80
109
69
113
98
99
88
76
137
80
80
128
93
156
175
140
72
104
93
69
133
75
169
129
117
99
94
80
118
174
116
121
69
111
112
76
82
91
96
80
69
109
111
69
163
99
175
151
121
175
133
96
124
72
78
87
142
175
69
80
128
76
146
113
127
109
175
137
94
124
99
88
52
147
88
91
69
80
88
88
119
69
148
93
80
120
123
127
107
69
118
74
89
109
148
80
151
80
96
134
138
87
78
99
98
114
107
104
83
94
109
148
107
88
106
107
126
128
118
151
147
76
80
146
120
166
113
80
140
103
125
140
80
115
154
72
94
78
118
69
80
91
101
114
114
87
139
128
69
154
112
145
78
80
80
91
164
103
140
80
69
120
175
85
128
175
69
54
130
72
69
76
124
87
43
104
120
78
109
140
175
121
112
126
56
96
76
129
101
137
104
134
148
109
85
129
69
54
109
72
72
85
91
94
74
136
99
80
72
111
80
134
115
127
123
112
175
104
72
80
99
110
80
89
146
52
91
154
76
140
163
154
80
95
175
125
88
131
128
119
142
125
69
117
122
112
99
69
76
125
138
84
76
134
154
88
76
74
78
113
110
163
95
88
78
106
93
114
111
134
136
67
104
127
101
78
68
137
78
156
76
107
119
69
103
134
94
144
175
93
109
154
157
106
52
80
87
100
156
80
155
123
128
100
82
69
106
72
89
76
130
69
120
87
85
87
110
119
175
119
107
96
87
66
80
91
160
112
104
78
89
78
131
149
88
151
101
67
80
100
107
80
95
107
132
106
103
155
69
80
80
80
94
175
154
154
83
119
141
125
140
88
89
138
100
137
118
106
113
80
128
76
52
97
76
142
154
69
107
175
147
99
155
99
85
93
160
76
138
127
80
100
87
87
152
54
107
80
91
78
80
104
64
69
105
133
106
126
75
67
69
134
127
82
128
87
87
119
56
76
87
80
120
143
143
120
66
89
107
112
131
80
103
80
120
52
94
87
88
128
114
78
107
102
78
112
88
154
88
72
114
109
101
104
80
155
111
100
88
120
54
92
78
75
102
87
164
164
118
101
81
153
106
107
154
140
110
80
146
111
69
103
120
85
154
76
137
80
152
100
80
87
117
120
87
96
80
69
121
112
124
151
117
69
146
113
106
113
69
78
109
69
88
100
104
116
121
154
121
100
89
69
120
128
78
129
161
67
69
69
69
126
103
85
99
136
66
76
107
80
122
94
106
87
91
128
99
119
76
137
143
99
122
156
115
72
156
166
94
87
197
120
156
119
112
91
140
113
108
123
117
76
80
69
110
156
154
76
69
154
108
87
148
80
80
117
80
151
113
144
151
69
69
76
136
58
128
113
109
89
131
107
94
102
181
169
109
80
87
66
80
54
108
78
80
80
78
69
156
87
147
85
136
130
157
88
160
134
78
138
138
80
90
90
145
140
119
122
131
87
110
98
104
120
80
76
89
80
121
104
69
117
102
175
80
94
80
66
69
85
87
144
131
98
69
120
109
119
100
98
80
80
100
78
102
113
78
94
120
99
107
110
140
68
143
131
64
119
89
88
137
101
69
106
107
72
128
94
81
131
118
99
120
129
80
185
75
142
112
129
112
134
88
78
80
127
80
99
130
83
147
157
104
140
80
120
87
93
80
107
69
78
106
113
80
121
80
147
111
84
76
119
115
91
119
80
95
80
78
80
106
69
175
82
144
102
72
85
99
151
80
109
117
104
115
122
89
80
113
106
85
199
90
111
85
94
110
94
83
183
99
134
69
93
80
72
94
69
128
121
89
104
149
175
56
66
76
78
93
96
69
145
69
112
113
104
125
113
78
108
93
56
154
133
156
103
89
121
117
72
80
69
69
80
128
134
66
80
94
64
80
111
118
117
96
134
88
110
118
104
96
102
122
140
87
87
112
128
128
80
91
88
88
122
106
120
113
164
128
78
109
93
99
69
111
144
134
69
201
112
131
69
113
148
104
76
80
156
76
88
123
78
89
80
103
69
88
140
157
155
104
133
95
134
197
87
69
80
76
86
76
78
131
93
88
175
127
111
180
107
80
128
93
151
80
101
101
169
104
103
107
122
104
106
119
152
109
87
80
72
107
119
80
107
99
89
110
87
56
199
88
72
78
119
83
80
113
136
128
76
101
87
80
109
80
143
151
151
76
99
110
106
99
88
108
138
148
76
76
69
80
72
88
117
104
101
69
80
133
151
121
69
106
107
69
80
118
88
136
119
128
78
136
134
78
99
106
136
80
126
80
99
106
98
116
103
78
120
112
90
117
125
78
87
106
75
115
140
107
140
110
107
76
129
125
94
134
119
175
132
123
123
80
89
113
69
110
151
107
134
159
106
99
144
134
94
80
75
156
89
85
99
120
76
63
103
109
113
76
99
120
98
80
197
89
121
107
93
149
72
118
119
69
99
128
133
89
89
119
121
87
113
78
146
98
94
128
78
120
82
111
107
128
100
76
87
78
76
80
122
127
80
175
175
69
110
109
72
138
88
128
109
177
111
163
78
80
84
90
87
95
87
107
80
120
80
93
175
87
52
69
72
96
69
91
143
133
80
133
101
110
134
113
69
88
80
96
162
137
91
69
95
90
164
118
78
89
124
56
131
69
80
96
95
128
82
115
155
99
125
87
136
131
74
119
148
85
107
96
78
126
76
69
87
69
95
80
155
69
99
52
91
114
80
110
87
99
99
87
119
115
117
99
88
119
59
88
76
120
142
83
89
110
107
109
80
93
146
94
146
94
115
147
85
111
78
125
119
80
102
101
113
120
126
80
120
123
121
137
134
98
119
175
136
121
120
128
89
89
88
145
118
87
120
80
85
110
72
140
75
117
76
78
110
80
82
80
151
104
107
91
136
76
129
72
144
120
102
119
110
80
131
52
155
124
69
79
103
94
174
117
126
106
119
72
69
87
95
80
69
112
80
88
106
109
112
117
117
132
88
110
89
56
134
197
111
95
175
119
107
80
80
146
140
88
113
105
85
93
109
117
134
93
72
112
80
106
175
93
108
96
93
94
120
148
80
154
112
69
103
99
147
130
164
80
107
156
88
64
128
88
145
96
111
69
156
80
94
112
94
175
136
197
98
183
124
80
80
106
121
120
72
106
76
144
80
114
107
113
95
127
94
110
76
93
80
175
80
120
175
112
82
115
80
120
121
104
136
78
76
110
102
149
69
128
143
94
78
107
74
107
179
83
108
88
78
107
102
131
94
115
90
101
137
162
69
107
54
106
148
111
128
69
89
134
120
197
103
102
131
119
89
145
78
102
136
175
119
128
113
118
54
99
102
140
69
107
140
140
120
115
175
96
80
127
80
119
82
146
111
106
111
71
106
74
74
129
124
106
146
119
120
145
134
154
80
107
118
96
106
101
132
87
132
122
197
106
80
96
154
64
76
164
197
178
110
87
78
69
156
54
123
120
119
133
87
126
140
76
136
127
76
74
145
110
80
154
163
80
127
145
119
119
78
120
119
141
104
59
52
69
80
137
87
140
117
101
102
104
74
119
106
114
118
107
66
88
132
196
113
119
111
114
120
111
131
102
111
107
69
73
107
152
122
119
113
109
80
75
80
120
87
110
87
154
87
128
94
96
69
120
175
151
116
136
134
123
194
106
120
80
89
76
140
58
106
197
137
80
69
107
119
124
89
124
99
101
69
88
114
91
52
147
110
89
128
80
80
109
120
124
69
136
109
69
106
113
181
140
107
96
91
75
69
140
88
174
140
83
113
102
103
95
88
120
111
102
172
106
80
80
103
69
183
96
94
108
152
134
140
151
69
77
56
121
133
112
89
90
87
88
129
154
87
101
151
98
107
126
136
156
129
129
116
80
76
157
78
137
72
98
119
96
100
87
146
94
114
69
78
52
78
106
109
102
102
137
113
69
133
67
154
114
142
156
115
144
136
154
80
140
127
144
127
121
130
76
106
96
109
128
80
104
87
72
112
110
99
142
123
96
143
97
113
94
120
83
92
122
80
136
93
175
185
107
131
117
110
123
87
107
82
87
128
94
107
88
119
140
74
136
99
119
109
172
119
140
94
92
106
125
89
139
69
134
87
101
80
87
74
91
119
148
69
80
157
152
80
88
74
132
81
101
80
115
118
128
120
110
137
85
147
102
124
87
107
129
96
109
91
129
145
101
99
152
119
121
95
105
78
82
119
113
80
69
78
80
138
119
112
87
71
80
175
174
163
88
116
123
112
99
126
87
140
125
74
119
128
136
155
101
103
111
78
103
109
126
201
79
96
110
109
121
128
201
72
69
80
99
88
113
112
110
175
115
152
149
119
80
164
160
69
68
134
119
106
134
80
136
163
88
87
72
140
128
69
80
110
124
89
87
76
78
87
72
99
54
80
93
108
76
80
94
114
88
91
129
80
154
163
115
76
94
100
93
143
117
83
183
151
96
104
94
114
157
146
87
76
118
112
94
127
107
152
127
99
110
110
80
87
76
43
159
88
76
109
80
69
137
43
94
69
175
140
115
118
76
150
91
99
69
79
101
130
154
115
95
123
87
76
87
175
119
80
87
107
175
101
93
96
119
110
113
95
69
143
197
128
80
96
99
119
87
94
88
105
107
83
109
118
87
93
80
119
69
136
199
114
99
76
125
76
78
201
69
126
89
117
83
104
83
131
85
80
78
119
122
67
87
102
117
132
99
130
143
95
85
87
104
109
146
138
94
80
102
80
80
110
156
93
87
111
120
95
143
154
134
110
78
109
114
89
160
78
104
76
104
89
148
104
106
96
100
69
134
121
125
87
78
119
67
120
81
69
54
119
80
88
96
163
76
69
99
76
109
155
121
102
132
69
134
128
89
64
115
110
110
74
80
56
118
121
69
80
121
69
76
88
115
151
75
106
69
80
107
159
78
155
99
89
114
126
99
119
69
141
140
98
158
156
78
112
102
52
174
129
88
96
151
69
134
83
129
99
102
91
93
144
154
96
127
78
106
117
80
101
119
90
80
120
80
136
94
104
115
87
123
124
87
96
114
136
134
80
100
134
88
91
175
78
132
54
80
183
146
154
115
118
80
89
125
136
124
119
69
103
100
72
110
101
132
121
139
128
78
69
140
72
107
106
136
59
112
95
121
91
110
107
119
117
117
72
136
107
136
92
69
114
100
120
59
88
96
78
120
78
77
102
78
119
109
151
110
69
122
134
114
99
133
87
131
69
78
117
83
145
106
143
119
154
69
80
91
105
175
74
169
69
92
133
74
127
122
104
100
110
138
120
120
145
137
95
76
72
106
114
133
80
78
94
94
93
78
121
131
126
94
136
69
104
69
99
121
106
121
98
80
69
93
91
78
92
109
126
124
156
122
197
80
101
89
113
148
99
119
98
103
132
104
94
79
80
133
128
91
85
134
171
125
113
126
89
82
145
106
88
101
67
80
122
113
104
128
99
94
93
107
106
113
111
91
128
113
69
88
154
69
126
151
78
76
130
100
87
117
104
80
197
93
94
80
143
78
99
136
104
140
147
141
119
181
128
110
106
127
113
104
115
80
137
119
104
106
78
129
106
110
64
89
96
89
124
106
113
151
96
128
150
98
93
120
121
69
72
76
154
128
174
137
101
93
74
120
137
151
107
76
76
140
76
76
78
120
109
109
110
120
132
102
175
121
69
143
80
89
119
119
125
78
69
151
134
88
76
58
128
131
164
120
69
160
93
134
151
76
100
69
131
146
164
89
93
87
117
107
95
119
80
80
152
143
119
112
175
78
132
76
69
67
108
89
107
131
131
109
89
154
56
106
96
103
163
93
123
92
112
91
118
76
90
112
94
109
132
115
52
93
119
87
101
87
72
87
88
74
104
89
100
102
127
175
88
80
119
110
120
110
71
87
88
113
109
109
76
110
155
133
107
98
120
121
112
137
94
80
154
80
143
54
75
127
91
89
128
80
175
87
117
98
146
83
123
87
80
126
87
121
131
112
89
69
80
91
110
112
151
78
80
74
109
134
88
87
80
107
73
101
104
106
144
128
80
131
120
94
115
136
137
112
104
87
87
109
80
132
117
100
156
100
175
106
146
66
138
91
138
69
54
99
105
113
136
119
113
101
80
146
136
137
119
149
76
106
119
120
93
121
87
85
87
87
74
110
52
99
64
87
76
79
96
128
88
133
151
92
119
100
127
185
78
110
109
114
110
110
109
80
76
121
82
103
134
102
80
69
181
133
104
83
115
126
97
69
99
134
138
119
137
137
115
74
131
100
122
76
163
94
118
76
99
106
76
91
69
80
135
82
175
110
69
118
80
78
80
76
76
107
115
76
69
104
130
136
160
78
87
93
125
80
128
91
175
80
95
59
69
77
136
110
164
175
103
138
136
149
98
175
56
128
113
87
80
99
85
74
99
80
80
155
121
137
142
174
54
80
99
181
80
124
155
69
119
102
94
164
145
87
85
107
126
107
87
175
107
119
94
119
113
109
94
103
106
175
120
120
130
88
94
123
87
156
103
109
140
89
110
175
119
99
91
143
104
119
109
131
107
144
69
99
117
87
120
104
100
122
104
201
175
143
113
87
151
130
119
93
88
123
80
69
101
126
128
76
153
110
80
118
138
137
117
133
92
136
82
143
110
128
131
107
130
72
75
107
78
142
107
106
113
69
106
127
88
120
146
94
89
134
87
125
94
120
136
144
90
129
69
89
175
104
136
131
107
80
120
155
93
120
80
126
115
99
69
96
119
99
98
85
128
151
175
136
115
78
133
128
147
89
69
78
120
69
119
107
106
94
113
87
54
121
71
120
52
113
99
107
122
102
76
136
101
69
95
90
94
94
163
85
71
120
136
130
120
72
175
91
96
87
76
69
112
57
82
120
78
78
107
121
142
175
117
78
135
77
134
80
94
76
121
78
80
150
134
109
109
52
104
69
78
148
134
140
80
76
94
134
87
120
52
143
96
110
98
67
74
80
163
80
80
80
100
81
106
117
119
156
89
112
110
151
96
104
199
140
80
78
106
113
80
100
87
72
102
78
69
69
85
90
94
104
134
123
130
78
110
98
127
89
93
197
54
103
119
147
127
132
69
134
89
97
120
120
88
125
94
94
80
111
80
76
88
121
122
69
78
56
93
121
147
109
138
87
69
154
69
112
123
87
102
175
88
197
175
103
80
87
80
87
69
147
97
87
78
106
108
71
87
124
129
75
80
93
120
99
69
154
69
86
93
98
104
120
144
101
151
72
107
80
138
132
124
120
67
174
119
69
75
128
117
109
121
112
107
72
175
80
69
87
131
151
120
131
106
121
148
93
78
93
102
87
156
145
122
108
156
128
93
93
175
58
87
87
91
90
72
103
126
128
154
134
59
59
96
69
141
85
147
120
56
129
109
116
88
69
80
128
109
114
144
69
96
89
104
145
91
155
118
96
76
88
89
87
172
136
69
79
131
121
120
76
175
128
148
146
129
111
160
73
90
131
69
137
75
109
87
136
140
87
133
98
67
99
102
140
136
128
120
87
107
119
80
111
69
88
54
117
52
154
128
136
56
94
122
109
91
64
156
112
117
119
69
76
141
67
76
104
103
87
175
76
79
91
54
88
128
151
110
137
106
107
134
96
54
128
74
94
76
80
74
91
88
155
175
54
80
78
121
94
80
134
119
111
104
119
197
78
136
92
128
143
127
78
69
62
58
151
175
76
80
154
165
132
122
78
110
95
112
58
119
119
80
154
111
197
80
76
99
143
197
156
109
113
118
197
169
128
154
152
80
144
54
88
64
78
85
125
69
80
113
136
82
87
99
124
146
54
127
142
100
121
90
109
91
94
107
80
128
115
113
80
80
72
132
109
104
87
94
72
143
175
164
109
87
112
94
88
127
152
126
80
94
76
87
91
138
72
148
88
146
122
99
67
148
71
78
80
66
119
87
138
80
80
88
72
89
124
99
139
133
87
156
126
78
110
108
105
119
80
78
94
110
76
113
112
136
78
88
80
69
140
52
69
104
94
109
113
90
175
96
78
160
113
95
80
132
79
69
145
119
119
91
93
176
175
129
163
89
134
72
128
80
89
69
96
93
109
151
76
155
93
154
164
80
69
128
130
87
112
102
87
140
99
102
87
134
117
69
106
75
111
69
93
88
144
76
129
72
80
59
149
128
154
129
95
110
118
143
59
119
99
68
115
80
127
69
140
99
104
69
82
140
122
140
121
136
110
95
80
120
99
75
80
129
154
109
89
72
80
69
151
69
67
143
119
80
101
118
100
90
80
72
74
134
69
43
128
88
89
100
151
106
128
119
120
80
69
69
146
80
137
106
107
76
147
148
80
143
102
69
114
128
78
112
107
80
132
88
197
78
69
134
91
120
162
94
143
153
87
72
87
164
131
93
148
87
138
115
113
201
93
130
103
146
78
74
80
78
112
160
76
80
76
131
201
101
69
106
120
148
120
112
107
121
88
166
136
119
117
80
121
91
104
99
107
154
197
88
76
114
109
69
52
117
161
91
104
118
104
130
72
117
110
119
43
174
100
101
79
157
76
80
128
72
131
87
169
145
87
109
107
106
76
156
164
160
145
181
76
156
121
124
80
80
120
128
121
72
117
69
88
93
136
117
163
88
111
124
80
58
87
85
155
131
125
123
151
125
122
87
52
152
89
118
128
87
90
123
87
99
197
137
80
107
72
69
112
133
112
69
87
69
69
140
80
80
89
83
109
106
131
134
82
52
91
102
104
125
118
75
112
174
115
148
155
114
87
118
80
126
69
76
89
96
119
126
86
119
147
80
76
80
131
134
76
120
117
143
110
101
80
69
76
102
88
102
120
99
93
83
109
69
100
114
80
140
80
109
75
100
64
79
88
107
112
117
81
76
102
126
113
140
87
121
154
121
127
106
79
129
107
69
106
154
175
113
87
107
76
91
120
69
80
119
98
205
85
107
109
109
87
69
88
87
163
104
107
76
76
59
72
83
56
80
89
94
89
69
78
80
69
80
131
69
163
132
138
114
109
130
110
76
76
69
116
128
76
101
69
120
131
137
88
123
99
175
119
69
138
96
69
88
121
106
120
80
76
69
78
69
104
82
142
120
69
175
101
154
95
69
104
80
183
107
109
106
115
104
80
134
92
160
96
121
117
119
69
54
69
110
75
69
164
91
83
109
54
119
74
69
80
76
80
80
80
79
78
119
52
106
93
148
80
80
110
134
58
87
119
69
80
119
98
122
99
126
156
107
72
80
99
87
88
75
95
89
116
137
104
132
117
79
119
149
110
78
76
131
60
87
148
107
139
54
118
69
154
112
143
112
89
79
87
90
110
131
80
80
88
136
107
155
107
78
130
126
69
80
122
80
129
121
76
52
77
80
182
122
87
72
104
69
59
80
69
95
87
69
127
154
119
80
107
106
80
105
143
107
64
107
76
113
121
174
69
56
82
111
78
122
93
74
110
76
117
80
93
54
175
89
56
115
128
181
90
161
78
80
159
104
107
80
78
69
78
121
111
175
130
76
120
110
54
107
120
74
87
100
104
156
83
120
137
79
126
109
106
110
94
69
120
76
72
87
100
104
121
80
122
100
131
69
43
104
95
118
104
128
105
145
159
103
98
119
152
85
87
90
140
74
99
76
127
115
136
134
134
118
78
142
99
72
69
126
69
115
100
117
69
91
134
93
80
69
109
80
185
130
69
101
88
67
72
154
78
163
94
164
76
138
88
113
69
132
88
119
78
99
118
175
110
69
99
109
92
80
118
89
79
104
152
99
62
80
154
175
201
187
80
128
151
80
91
67
113
104
102
151
136
175
175
165
121
128
119
88
128
104
78
94
119
99
114
143
87
120
109
163
113
106
69
76
117
69
69
101
108
69
80
128
88
69
152
80
69
109
106
111
69
117
87
143
95
76
99
68
120
162
152
96
69
118
197
107
155
123
76
88
72
89
154
100
201
137
120
136
78
93
74
80
72
109
131
87
75
80
114
119
118
80
107
109
127
87
115
101
129
175
131
78
140
80
137
124
80
125
117
64
129
156
174
113
151
113
131
69
88
80
175
99
99
69
78
91
69
148
146
89
104
113
122
109
140
94
128
69
127
148
87
104
124
175
114
89
87
127
94
67
127
87
140
78
127
80
99
119
119
109
88
96
90
78
117
89
80
87
54
115
153
98
110
109
78
78
102
126
52
100
87
99
72
181
87
76
94
123
104
199
69
149
107
174
107
146
104
87
76
93
87
79
148
155
109
102
102
102
124
98
150
133
69
92
112
78
175
121
87
128
99
83
154
154
107
69
128
140
118
78
56
96
89
69
80
76
97
99
76
147
118
101
103
156
94
74
124
93
175
80
99
99
175
113
69
80
67
99
69
119
69
99
136
78
87
76
115
174
103
80
132
80
104
101
123
94
120
88
128
87
80
76
96
140
87
69
80
103
102
107
88
129
89
69
128
113
120
80
107
175
138
89
93
99
88
59
81
94
109
87
76
120
128
76
183
94
82
144
105
87
104
94
159
131
78
109
117
155
99
94
85
99
118
103
113
175
136
94
83
119
83
69
88
56
78
139
114
119
88
69
78
117
156
175
94
114
118
119
69
163
121
162
118
110
109
94
134
149
117
110
74
128
75
145
137
120
94
89
88
113
102
69
148
88
97
146
119
99
104
109
136
94
80
74
76
80
69
107
87
96
103
109
108
89
87
74
111
69
121
154
96
54
106
112
78
79
117
76
96
94
119
121
132
87
107
107
93
80
99
125
101
132
89
119
54
110
80
74
78
138
163
87
115
147
87
76
119
134
109
72
116
109
85
128
69
119
87
122
69
87
96
120
56
147
131
106
110
125
91
76
109
155
201
80
80
69
111
80
128
104
122
110
76
134
89
72
114
82
69
109
119
150
116
120
126
91
120
98
119
136
80
76
88
117
106
137
136
98
101
119
118
76
126
156
80
132
114
95
104
67
76
130
91
115
137
135
197
155
113
69
78
118
69
54
162
107
130
129
121
128
118
106
95
89
74
66
123
130
80
118
154
78
95
104
69
121
91
80
136
139
87
110
80
185
75
95
150
140
108
175
183
120
78
69
119
144
120
78
112
104
138
155
120
88
75
205
80
56
114
129
91
140
87
136
69
91
72
80
88
113
69
175
78
75
102
106
80
88
90
112
143
78
148
99
130
136
151
78
109
124
143
128
89
137
102
163
69
85
83
111
112
120
80
156
89
89
43
99
145
87
197
148
134
103
108
101
80
99
114
148
76
56
137
128
103
113
79
69
197
74
131
89
148
121
80
119
69
107
150
117
76
74
114
151
101
80
175
96
101
146
121
131
78
80
140
63
116
80
80
122
130
80
102
175
123
124
69
69
126
99
100
147
149
80
155
86
112
116
112
112
102
197
91
154
99
113
60
69
117
88
128
105
80
115
128
111
142
164
74
81
73
101
146
152
146
120
72
120
129
76
130
142
80
117
103
85
76
111
94
175
69
56
82
121
91
80
87
84
80
80
107
91
110
109
148
69
201
69
126
154
136
134
88
152
103
121
80
100
107
107
90
107
80
89
96
78
183
175
151
106
123
104
96
100
87
181
136
110
52
129
88
110
87
152
99
64
107
129
80
75
69
134
89
76
110
134
154
151
78
155
121
69
144
147
91
56
110
68
54
138
119
113
93
134
80
80
106
107
96
91
78
130
140
87
106
69
83
86
94
78
84
104
88
107
110
80
114
119
115
89
151
160
107
137
110
69
80
132
101
78
115
107
172
119
72
154
91
154
121
80
107
87
69
84
145
78
118
78
111
69
134
113
80
122
76
69
91
118
104
175
81
140
132
99
69
129
119
131
99
111
56
95
74
80
110
136
80
54
90
80
147
141
107
132
141
93
119
134
102
119
80
76
83
107
125
128
127
109
140
160
106
78
80
154
89
85
54
79
128
101
43
69
134
108
88
80
80
164
151
136
116
85
102
80
154
114
145
95
99
80
81
175
175
69
78
144
69
80
151
124
128
107
156
80
54
76
117
159
120
148
125
119
88
164
106
154
80
76
120
102
72
128
82
160
131
131
87
98
93
72
106
124
87
119
119
78
88
174
146
115
181
104
120
93
109
112
69
119
95
117
90
69
159
104
117
91
43
87
119
99
89
104
76
121
127
90
87
88
101
88
87
125
107
154
89
127
175
113
52
101
123
69
120
132
149
134
106
127
119
142
100
76
118
112
69
148
76
69
129
105
80
52
119
75
131
137
88
108
69
163
146
76
119
69
119
180
78
109
69
52
69
76
69
115
174
145
112
76
104
87
129
127
72
175
87
78
110
78
95
112
131
87
93
93
114
89
156
80
69
154
121
124
88
72
114
78
80
107
94
121
147
151
105
87
128
109
127
113
136
174
127
108
131
99
81
123
131
148
117
122
120
107
76
175
76
119
119
78
199
126
107
143
74
76
107
133
97
107
134
80
101
155
80
52
82
93
80
89
147
131
93
75
142
94
107
110
97
136
115
66
119
89
140
87
100
166
80
130
121
80
175
94
143
104
91
109
175
119
74
113
78
78
131
122
99
145
87
140
99
136
113
110
74
88
154
80
103
109
80
163
118
132
151
99
93
106
181
83
171
80
87
112
156
78
107
80
80
124
125
151
69
103
90
181
107
110
145
151
152
112
80
144
69
80
83
175
89
93
87
101
89
112
107
121
96
175
109
131
80
104
69
117
85
87
128
110
88
89
122
114
80
88
107
118
76
117
111
88
134
84
138
150
102
69
115
94
113
98
175
138
113
113
112
110
137
130
125
80
119
75
87
175
80
78
134
110
175
102
143
129
122
93
107
78
139
110
140
112
80
80
140
80
94
103
120
154
128
87
104
132
172
146
174
103
69
80
145
128
92
112
120
121
80
76
116
156
78
123
121
107
136
197
100
74
76
106
115
69
120
88
99
98
69
127
87
140
140
91
115
95
128
119
72
121
121
135
96
148
104
72
201
134
78
113
94
131
151
117
185
117
140
78
165
69
104
152
156
122
94
127
78
128
101
113
88
54
76
109
94
131
78
100
88
82
107
156
92
78
117
128
64
80
107
101
175
154
120
107
120
140
85
43
137
76
74
78
76
107
127
121
112
87
84
109
142
138
107
120
59
93
131
100
88
98
113
129
117
109
156
91
121
94
94
163
87
94
128
75
148
69
128
128
166
115
113
105
99
140
72
197
83
106
94
80
129
159
144
111
143
119
175
101
144
88
91
115
85
85
115
99
69
80
144
151
174
68
78
54
103
75
66
164
80
119
114
87
109
136
119
78
112
87
76
76
95
87
89
80
88
52
129
94
80
127
87
95
118
104
114
76
69
113
110
101
117
107
121
104
76
91
85
107
166
89
104
100
126
110
94
113
89
69
197
93
69
199
76
175
120
109
67
110
176
148
83
85
93
127
146
69
112
69
99
156
69
78
151
80
67
126
126
113
89
87
80
119
112
122
117
104
118
104
175
81
115
69
128
110
107
88
69
74
122
110
174
118
106
116
112
109
97
74
99
121
110
109
154
112
112
69
107
144
132
78
112
114
69
102
109
94
145
54
107
90
114
185
118
107
143
110
107
91
107
107
80
102
80
160
121
69
102
94
98
69
154
69
76
94
135
103
146
89
154
87
110
101
133
175
129
56
69
72
89
155
128
121
119
101
88
89
85
100
128
155
127
76
80
117
81
81
99
120
91
129
80
72
87
80
141
126
96
121
149
80
80
127
134
96
99
99
145
114
112
114
78
154
128
129
134
131
80
94
69
120
100
99
80
112
140
137
88
128
96
119
72
69
104
146
110
117
96
87
69
99
87
108
131
69
162
92
110
134
80
121
87
107
80
94
119
164
88
140
128
96
83
80
83
43
87
69
99
80
146
123
136
99
88
87
120
99
155
136
66
87
113
124
69
88
92
110
109
69
118
64
127
129
154
110
96
75
119
87
127
119
118
145
110
72
87
119
175
80
78
80
199
108
76
96
79
107
130
69
107
119
56
107
112
80
69
69
87
197
43
66
109
108
147
131
144
124
104
69
99
97
119
134
136
72
52
75
69
131
69
76
119
107
106
110
109
104
83
166
151
87
144
80
114
80
88
121
131
76
80
129
89
87
105
154
131
69
109
69
119
110
119
143
83
104
72
141
74
78
110
56
175
88
80
99
111
113
59
158
96
91
80
108
139
99
79
141
144
111
128
72
163
154
123
106
89
121
155
162
85
137
94
88
85
102
87
80
124
80
80
118
127
69
52
100
160
76
133
140
69
90
94
112
87
174
80
93
73
112
128
85
130
76
110
43
80
76
69
131
103
119
151
140
96
69
80
56
155
146
99
131
90
151
125
115
103
148
59
80
101
130
109
119
105
166
121
94
120
117
156
100
103
107
146
97
93
69
70
112
121
52
99
78
76
175
76
93
80
119
133
119
112
119
134
80
144
80
112
128
103
112
91
111
85
120
88
161
149
118
69
115
124
43
69
127
80
116
107
104
87
114
109
79
72
133
78
119
122
117
78
155
69
128
152
131
139
111
137
56
87
120
76
100
89
66
102
129
156
149
89
154
98
115
197
136
80
80
72
92
134
154
137
80
87
141
107
104
93
175
140
72
87
101
131
136
107
119
127
119
115
112
109
149
112
149
130
120
120
72
80
96
78
128
107
76
93
69
69
69
78
69
94
98
110
154
80
119
106
141
137
98
98
121
88
152
69
101
120
87
175
43
122
131
100
101
69
135
109
69
97
73
64
154
120
87
87
66
110
78
89
89
102
140
80
80
128
69
80
120
52
69
87
113
90
154
54
112
140
119
107
104
99
106
112
119
93
80
120
88
87
69
80
109
100
72
138
106
119
69
102
140
76
69
94
115
96
78
87
115
115
197
87
140
87
69
69
151
85
102
127
80
69
69
175
123
80
94
69
69
69
112
122
156
156
104
101
80
127
154
91
154
58
140
87
128
184
76
89
134
140
102
185
80
103
69
99
80
113
119
87
154
113
87
123
112
124
98
173
101
80
119
199
96
80
107
107
97
91
115
130
69
80
123
112
75
85
72
114
80
136
187
69
133
156
140
87
144
95
133
119
78
119
128
69
78
87
89
183
114
108
96
105
99
128
121
78
69
69
78
76
107
104
88
78
94
101
87
110
113
96
83
137
128
112
69
156
87
98
112
175
106
112
87
69
131
94
88
126
150
64
69
110
136
69
157
99
175
93
80
99
175
69
138
72
136
144
128
175
132
155
86
111
72
79
129
94
88
174
140
76
78
136
154
74
156
69
78
68
80
149
107
131
75
72
87
54
115
157
80
94
107
77
104
87
113
155
89
106
76
129
123
76
119
164
78
93
80
117
137
119
172
119
99
154
130
87
107
154
92
119
115
69
119
107
122
84
94
96
104
169
99
93
127
74
78
43
107
107
155
99
54
91
80
87
78
76
111
109
99
72
112
116
118
107
98
99
126
163
144
121
112
145
90
116
69
89
144
143
120
96
119
88
76
104
145
197
175
69
118
87
78
134
80
102
110
175
85
119
87
69
85
111
93
56
120
144
99
89
107
160
119
69
94
80
102
104
151
92
56
110
105
94
109
106
102
80
76
80
129
164
136
75
69
80
76
119
127
78
155
173
69
87
94
80
134
144
128
107
89
104
95
69
134
69
111
164
104
111
117
99
153
124
112
110
117
66
83
101
128
102
120
127
133
122
98
80
141
119
99
154
87
145
87
87
117
110
69
99
102
76
110
119
72
128
85
43
141
83
140
87
148
175
87
155
69
128
120
98
187
103
151
99
95
102
56
101
103
80
163
94
132
100
94
106
174
69
127
104
96
79
126
82
175
131
79
137
120
99
95
75
111
76
102
94
119
91
150
172
107
144
52
154
90
102
127
119
155
185
134
137
175
69
174
121
80
95
110
126
80
69
136
69
132
151
88
131
131
126
175
87
115
129
157
96
110
137
122
76
134
135
80
175
130
119
88
118
91
69
99
101
140
72
89
183
83
99
104
69
78
88
112
112
106
156
96
80
87
78
111
115
102
120
113
156
121
132
87
120
131
142
79
94
113
90
128
100
89
128
93
76
69
123
119
107
114
102
102
136
87
75
175
92
87
87
110
72
78
136
163
99
107
132
80
78
121
76
107
89
131
113
79
111
108
154
96
126
120
72
126
197
121
151
121
126
102
69
89
78
155
78
74
80
112
69
91
98
112
94
107
80
76
72
197
69
174
119
100
85
87
123
78
95
113
197
88
175
132
94
99
134
91
76
155
124
87
89
115
88
103
118
145
87
69
99
154
106
139
112
103
111
74
91
87
69
80
99
131
69
131
123
97
112
93
78
133
87
113
100
80
74
104
117
175
72
120
109
106
107
121
146
89
106
127
175
106
148
76
109
137
76
78
99
101
99
68
89
78
127
152
175
155
131
94
69
131
171
148
119
106
154
89
94
96
114
113
80
96
72
79
96
112
109
128
80
93
69
127
136
76
120
100
101
199
80
109
59
121
148
109
150
140
117
107
67
76
79
126
134
80
133
71
88
148
134
133
101
98
110
123
132
69
112
142
121
74
126
131
109
76
129
96
56
113
157
138
84
136
76
76
154
122
124
107
80
87
164
187
78
99
69
164
76
101
112
74
118
110
112
76
68
101
73
138
96
80
143
67
97
110
112
164
78
76
114
78
80
120
119
80
89
99
156
185
133
121
87
106
76
83
128
166
69
69
80
156
64
80
134
59
101
134
85
83
119
88
127
89
59
72
113
76
118
107
104
110
81
69
114
69
110
123
134
88
134
138
156
107
147
125
58
69
127
131
80
175
118
66
129
100
80
88
80
105
80
136
80
155
99
99
140
120
195
147
107
185
78
69
101
76
163
128
108
117
117
136
145
151
107
169
103
136
136
74
91
128
134
120
98
85
134
76
78
117
80
175
136
143
76
101
122
146
110
80
127
91
110
93
80
69
128
106
175
110
151
80
78
89
73
133
98
136
69
89
94
78
134
78
88
87
90
109
88
69
67
197
78
85
78
148
78
110
175
95
145
124
128
113
80
107
124
132
122
156
89
76
91
125
119
115
121
89
89
146
80
112
87
148
69
78
102
88
106
120
117
127
76
123
102
132
89
122
127
124
106
123
110
80
104
112
85
97
72
86
197
104
101
175
126
78
130
87
87
161
107
76
104
151
88
154
78
136
119
131
88
76
93
76
143
175
106
102
140
112
87
150
110
82
113
95
122
94
124
112
87
76
112
128
87
102
76
88
114
164
136
107
154
122
154
113
145
78
76
107
138
80
107
80
150
131
96
80
80
72
136
123
69
110
69
93
101
175
69
95
109
149
104
112
136
152
80
119
110
69
120
126
132
106
98
109
80
115
154
114
120
85
124
89
156
97
134
133
134
157
69
132
76
127
80
121
117
120
99
99
101
87
121
151
107
101
90
113
159
102
69
120
87
99
87
103
109
80
154
119
154
99
87
154
128
124
94
102
125
94
69
120
113
155
134
101
109
87
120
181
87
125
128
165
163
104
146
131
140
171
134
145
102
87
104
136
80
69
102
129
131
119
78
96
69
115
68
88
120
80
119
149
78
76
109
78
155
102
88
135
131
145
80
104
99
122
78
90
107
80
113
88
57
123
139
119
120
107
76
136
129
91
157
127
145
132
100
127
80
117
104
99
162
101
174
72
175
123
113
93
146
76
98
121
95
128
146
94
145
103
75
141
88
85
113
121
128
99
87
91
110
76
93
102
94
104
109
69
148
74
130
76
89
124
108
151
80
107
154
197
119
112
89
109
76
80
91
101
110
128
119
78
127
56
110
128
110
79
76
120
129
67
125
78
164
80
144
78
115
128
113
85
88
74
136
119
108
157
109
119
76
89
119
117
99
113
78
109
99
163
144
89
52
112
121
128
80
87
76
121
120
132
112
80
156
69
94
90
129
156
113
80
149
80
78
130
77
107
69
109
107
92
146
119
69
104
175
175
103
135
54
76
110
113
140
175
80
76
111
109
141
112
106
119
104
80
119
117
99
80
120
154
83
80
119
87
76
147
119
181
145
138
87
104
163
154
66
89
119
102
72
121
128
80
119
107
127
122
87
209
80
74
119
134
80
99
131
69
94
110
106
116
111
175
119
89
101
95
87
136
66
94
171
139
107
107
128
155
119
56
135
95
155
98
110
154
128
80
85
146
101
160
131
112
197
71
99
76
110
87
76
114
155
77
112
154
91
117
111
104
119
76
89
117
80
197
132
152
112
163
99
114
99
111
88
150
107
124
52
176
89
105
94
166
69
143
175
128
56
80
128
121
54
114
130
79
80
96
91
100
197
80
64
162
78
120
121
94
104
127
76
95
69
155
96
69
105
78
90
154
123
123
136
134
69
78
113
112
99
94
111
127
139
136
69
131
119
134
154
76
120
52
87
96
107
75
87
125
119
195
58
140
118
69
175
87
87
93
154
162
107
126
87
109
136
131
107
154
105
80
78
99
117
146
156
107
120
154
156
175
78
91
178
76
69
107
128
146
119
134
131
99
107
69
87
74
115
80
78
101
99
162
72
52
99
128
89
109
89
155
76
69
109
99
69
87
123
52
54
128
109
156
120
159
138
128
80
76
134
80
87
151
120
135
131
144
155
76
113
78
120
78
119
80
115
112
163
133
91
107
100
107
88
96
89
89
87
87
114
113
123
80
136
76
172
117
87
70
137
131
114
113
89
120
136
175
104
69
78
87
91
123
103
114
120
197
80
131
101
80
157
87
87
113
134
95
175
110
90
99
94
133
112
78
76
112
136
78
94
137
87
80
145
119
93
143
78
155
80
101
128
78
135
67
67
114
86
99
82
80
156
127
119
74
56
78
69
67
76
78
113
112
199
106
87
154
76
80
80
120
131
87
107
104
87
80
126
101
101
130
76
156
128
71
130
52
107
87
95
125
101
154
69
72
82
80
101
80
111
87
93
121
101
89
104
117
127
109
89
94
132
78
135
78
87
99
137
89
128
121
90
175
154
85
101
197
175
67
109
203
136
77
91
78
117
98
80
114
118
119
92
145
136
147
136
84
197
154
119
56
89
109
106
80
163
197
80
112
72
78
175
89
110
80
119
67
100
80
114
151
96
87
76
102
104
91
80
201
96
111
127
115
110
109
94
136
155
103
107
126
58
107
104
72
148
119
131
76
95
128
175
76
80
163
78
109
175
54
78
88
74
113
72
175
87
76
74
69
60
118
117
128
88
147
151
144
52
119
80
145
143
80
144
115
88
76
140
80
52
69
154
87
94
92
85
107
74
91
117
96
69
147
118
80
102
112
99
154
87
66
88
164
136
151
66
153
99
91
145
103
119
118
78
145
197
89
113
157
54
114
110
125
124
140
151
82
95
64
80
175
80
78
96
91
119
154
76
106
69
134
78
147
73
78
87
102
78
107
148
76
119
52
81
149
91
95
132
89
87
128
119
175
119
114
127
155
199
108
140
80
69
152
78
141
80
121
116
104
111
175
56
127
126
133
108
137
119
87
151
101
110
104
66
197
155
129
75
140
99
156
69
72
114
137
128
88
121
199
87
134
94
99
80
106
146
80
110
128
175
113
120
93
121
69
99
132
155
69
69
82
164
69
93
162
69
80
69
112
71
100
84
74
138
152
131
99
111
102
87
107
110
69
163
87
80
126
175
89
99
175
121
114
136
154
92
80
120
118
100
74
135
122
185
93
77
101
199
154
123
109
80
140
110
99
110
105
69
93
69
99
96
133
88
100
117
68
93
89
72
69
121
66
69
127
69
69
112
87
69
120
119
121
89
78
140
133
75
110
76
119
124
88
197
175
112
154
112
78
87
87
175
94
112
136
69
80
113
197
145
131
110
69
127
115
99
123
80
94
83
72
101
110
140
89
164
141
91
100
99
146
87
104
69
99
146
80
119
80
187
137
87
140
118
69
103
76
114
123
80
120
85
151
87
118
54
56
134
52
66
78
114
107
145
109
89
128
76
107
87
134
128
113
100
89
75
156
104
87
121
69
164
140
56
149
113
125
120
89
72
140
120
72
80
76
120
107
154
98
80
99
103
114
143
125
72
120
160
72
107
129
156
137
119
119
69
69
91
130
80
110
100
119
106
43
83
111
110
68
89
80
80
123
76
74
120
151
82
124
74
80
106
91
117
88
128
80
69
94
88
134
119
123
128
52
69
80
103
107
88
98
156
90
80
112
89
93
131
63
63
164
118
127
119
118
111
96
87
80
131
97
75
121
119
96
89
76
87
107
125
54
71
106
107
63
115
98
120
146
120
110
74
107
82
199
89
175
88
105
120
142
92
86
87
87
134
144
78
138
113
125
104
78
128
131
69
119
80
99
110
67
76
155
123
80
76
100
87
69
92
123
131
119
69
133
138
109
69
119
128
122
69
123
141
99
131
93
120
119
128
109
119
150
154
106
114
175
175
69
83
175
108
93
80
150
69
131
78
80
69
144
69
94
129
56
100
87
124
80
76
105
79
132
43
123
128
110
133
151
91
94
128
117
128
110
107
115
107
81
115
128
93
89
98
142
78
101
72
121
67
151
129
137
118
109
69
157
76
74
80
131
140
122
89
99
69
80
69
151
80
80
98
111
101
134
155
79
175
69
69
128
107
155
101
87
78
131
88
72
130
111
93
137
113
149
134
99
128
154
103
103
77
76
109
95
87
133
69
127
78
119
104
126
66
94
127
76
157
136
94
130
162
120
69
67
156
106
117
94
146
104
154
175
67
98
113
80
175
80
76
121
134
120
107
128
90
138
107
145
69
122
151
80
92
87
69
94
76
80
101
85
76
115
59
111
80
201
112
151
96
120
136
127
107
134
122
118
136
99
136
107
79
87
154
117
69
121
102
76
76
121
80
144
90
181
131
197
121
78
69
134
69
117
89
91
87
124
140
131
69
106
113
92
102
175
115
95
120
120
78
177
87
80
99
88
137
89
66
69
87
175
120
80
102
78
69
137
106
155
111
111
69
112
69
78
80
185
119
157
113
93
101
114
134
146
80
69
87
69
69
120
128
96
101
122
80
80
117
107
69
96
69
78
72
74
98
89
131
139
104
101
69
151
120
121
156
69
121
107
80
94
126
101
145
78
120
80
162
100
199
69
111
123
136
123
118
136
87
43
128
151
76
129
140
99
112
150
140
72
78
106
96
69
112
106
69
83
80
104
94
109
102
107
78
118
80
69
147
80
128
115
114
80
152
110
80
72
132
74
72
76
82
76
146
80
56
114
146
128
129
109
131
102
101
112
146
93
112
80
146
120
127
91
74
120
100
128
74
87
136
115
71
125
118
85
80
96
94
95
154
115
80
112
117
69
128
137
107
99
100
76
127
113
142
98
69
120
104
52
119
71
127
175
107
128
69
78
120
110
99
140
175
90
78
112
69
172
118
117
94
101
78
120
89
93
158
88
151
80
151
89
120
144
142
132
122
121
125
76
154
114
80
136
113
106
72
89
104
105
119
123
112
99
78
89
89
106
69
143
122
112
96
115
80
183
89
175
76
176
88
87
98
133
69
109
69
87
130
155
107
145
95
115
154
154
104
109
80
72
67
120
121
127
118
54
175
82
80
120
154
91
128
118
99
102
106
142
110
127
91
87
69
120
74
94
175
87
87
69
183
120
87
94
69
124
94
126
104
131
110
89
110
96
99
128
130
104
164
76
154
80
149
154
175
127
80
76
85
117
145
106
106
76
120
96
96
199
76
76
175
131
128
107
175
112
87
69
117
127
109
87
78
106
138
87
119
80
73
78
69
87
106
148
117
72
110
91
87
76
99
69
96
87
155
110
119
111
60
85
94
79
87
102
99
94
106
67
101
94
99
96
80
78
78
155
106
107
113
91
75
171
101
112
143
114
76
74
106
114
104
87
98
175
141
148
99
123
112
143
80
128
89
91
66
154
110
123
69
132
123
88
151
69
197
104
174
119
163
69
120
117
134
109
69
121
114
120
96
107
79
131
134
87
91
80
69
94
94
144
109
107
85
107
80
152
146
89
76
108
78
136
56
80
101
120
117
78
85
111
90
104
148
87
69
134
87
121
129
64
76
114
89
129
119
119
107
89
80
153
75
120
72
120
115
69
126
131
69
69
117
136
76
69
99
166
145
76
160
80
134
137
120
105
102
78
78
80
99
79
82
124
73
175
169
94
87
111
72
112
75
96
80
54
101
76
163
136
76
106
104
132
112
151
101
104
109
78
78
136
133
115
125
119
87
87
128
117
69
107
107
128
88
88
110
107
69
89
113
80
128
156
99
106
163
127
201
201
136
107
156
87
118
109
127
93
136
152
92
110
80
101
119
69
80
94
76
132
174
80
130
93
69
99
148
120
137
106
115
128
116
113
104
145
134
76
76
69
80
128
121
154
89
69
130
124
132
131
78
80
100
110
109
128
104
110
69
80
110
94
118
128
197
129
128
88
78
69
118
74
127
76
87
58
120
110
102
107
128
98
99
67
154
66
134
136
120
80
106
160
120
69
88
139
107
104
106
117
91
115
117
130
120
87
140
128
78
136
121
80
115
94
123
78
80
54
107
114
78
131
142
143
183
100
148
83
88
107
56
80
87
80
80
104
82
78
93
87
69
120
93
151
145
107
100
131
72
175
120
76
128
112
146
115
197
116
80
148
110
120
175
113
113
174
87
136
160
102
154
82
119
54
87
73
107
80
117
175
185
138
124
87
113
104
118
89
113
124
87
117
137
76
91
137
140
133
138
69
80
72
102
122
95
144
140
94
151
145
112
107
90
147
121
131
120
69
56
93
75
127
85
96
69
128
85
150
117
89
120
119
175
113
89
164
111
75
128
75
115
80
94
112
78
114
87
154
89
94
186
104
87
119
174
89
155
80
80
104
80
94
163
156
87
87
69
104
197
197
99
80
169
136
140
89
81
80
72
102
144
114
102
104
95
122
87
120
109
122
96
138
76
123
64
121
80
104
109
113
94
134
69
78
119
78
126
109
106
163
104
110
97
136
69
113
67
146
140
78
83
69
121
96
82
69
128
87
119
119
112
122
76
116
119
83
91
76
97
80
76
76
112
142
91
197
89
154
121
69
133
88
145
80
144
121
87
122
95
120
80
128
130
127
80
69
87
128
76
80
81
101
131
104
64
52
131
72
132
152
80
107
166
107
94
109
119
163
87
109
128
119
107
121
104
99
52
175
80
87
75
76
80
93
134
69
122
93
76
139
137
97
87
76
119
54
89
140
80
92
119
107
143
145
54
87
155
171
163
119
126
143
115
87
109
96
76
75
131
80
142
96
78
133
134
93
80
80
80
119
107
52
131
87
107
82
54
140
69
117
119
96
80
172
107
175
76
128
134
110
89
109
126
106
93
118
138
134
87
140
154
80
120
87
95
155
112
124
124
99
112
98
161
115
116
102
76
80
119
144
80
121
74
113
91
165
106
88
80
88
145
140
128
80
175
117
118
88
151
88
101
87
197
133
114
76
69
78
69
80
87
145
197
99
99
107
129
78
93
76
89
96
151
87
118
87
69
99
121
175
112
80
119
71
96
119
80
124
137
89
155
87
120
92
94
124
80
80
148
119
99
101
113
60
99
197
93
87
88
155
123
76
88
95
78
54
154
104
94
99
67
78
94
107
120
141
87
76
136
115
106
119
131
110
148
151
149
74
69
89
120
78
87
121
91
126
103
117
107
128
119
78
76
94
87
119
89
121
69
119
153
208
54
76
69
72
154
112
80
187
143
106
130
117
96
76
84
163
88
91
120
125
80
87
87
131
101
80
89
80
74
102
96
80
107
72
154
69
114
164
111
102
145
107
113
80
113
111
87
78
137
106
163
87
78
103
87
175
165
121
76
175
80
103
114
72
152
107
134
89
128
151
78
144
107
143
123
117
76
72
109
175
119
99
100
123
96
76
98
113
52
80
80
99
107
99
185
120
112
120
80
80
125
110
128
92
104
101
121
87
94
108
209
175
56
121
104
106
80
80
80
88
78
98
92
80
140
146
121
74
74
119
121
83
105
127
54
80
117
69
88
90
69
121
109
136
69
101
117
123
129
98
145
94
114
126
99
107
137
119
106
138
143
164
133
131
67
56
91
119
76
119
67
80
69
90
102
109
120
136
76
132
80
121
110
102
69
107
143
69
175
99
156
66
96
87
94
80
130
110
69
116
148
104
95
112
43
132
197
72
100
126
88
72
89
152
142
80
82
120
93
96
88
74
175
127
72
89
100
52
54
87
130
110
109
151
131
88
93
103
175
104
99
80
107
112
80
136
69
80
119
175
78
101
110
69
85
88
80
113
99
121
69
156
163
154
80
79
175
99
54
76
107
94
87
69
119
72
101
91
117
87
99
111
145
156
96
69
89
100
99
80
95
89
128
80
114
69
104
160
69
107
123
88
154
197
76
76
87
54
104
117
67
135
93
128
123
120
87
109
78
80
150
116
103
78
113
135
104
107
69
78
80
127
129
155
136
87
108
107
69
136
152
72
125
101
121
79
93
121
107
138
96
107
88
100
119
87
149
80
106
76
118
140
131
118
127
102
124
174
69
113
175
102
169
128
94
87
127
88
123
59
111
88
69
101
87
109
140
134
127
146
72
89
113
155
137
69
101
124
78
69
94
96
99
102
52
69
107
107
69
140
74
118
116
175
128
114
106
78
143
113
80
69
69
101
151
91
120
119
136
88
119
151
80
96
111
104
107
87
60
143
154
131
94
89
132
101
150
110
99
104
88
109
104
91
87
80
107
90
80
134
72
69
93
133
175
80
106
201
154
96
154
154
78
78
120
141
80
209
157
109
89
104
78
88
87
100
88
119
69
92
123
80
111
128
66
89
166
87
107
96
74
99
87
120
87
69
93
98
119
69
143
117
99
94
160
119
92
119
80
147
154
88
97
76
91
175
146
136
174
132
100
106
128
104
145
93
99
87
87
64
80
104
88
69
99
76
94
94
52
175
89
69
119
201
151
88
87
109
69
80
174
120
101
72
118
88
119
103
114
131
71
137
107
95
143
104
156
117
78
119
93
155
124
96
69
117
120
119
187
154
121
98
69
119
56
101
151
118
136
145
73
99
175
59
149
155
160
104
76
119
89
117
127
89
80
113
121
98
72
80
121
70
106
120
117
80
104
120
80
100
69
99
107
120
80
76
89
115
128
80
134
72
118
121
133
145
89
183
91
119
69
91
80
118
143
112
119
133
99
78
143
110
115
119
175
69
144
94
96
107
85
120
69
160
175
107
110
72
80
90
94
68
113
80
127
112
119
107
181
155
93
134
178
175
129
80
134
145
69
107
119
106
121
63
99
79
76
110
113
69
151
131
185
54
113
76
140
125
143
99
117
80
82
69
107
80
78
75
119
150
87
69
138
80
56
89
71
142
102
120
95
185
67
117
145
113
69
163
78
149
94
76
146
99
69
80
105
156
54
72
76
131
107
99
115
164
76
72
136
151
107
130
116
88
138
119
119
69
69
119
100
69
138
82
87
88
96
146
91
113
145
60
135
76
80
110
69
119
76
80
89
142
171
120
150
113
80
137
96
127
94
113
106
94
76
154
154
106
80
69
119
112
122
163
156
58
175
80
175
78
117
130
93
94
99
141
197
127
101
87
76
107
69
69
54
110
114
106
107
113
119
151
115
89
91
123
116
123
93
123
156
78
80
52
96
69
133
139
121
127
89
181
99
122
125
91
143
136
99
104
69
110
87
123
78
121
119
88
69
99
119
76
147
80
69
121
146
111
80
155
140
136
72
140
102
109
99
109
64
74
175
80
106
104
71
99
185
80
76
117
131
147
145
128
99
96
131
144
76
85
89
95
120
97
80
156
89
138
112
183
106
147
96
136
89
103
118
117
155
87
83
119
88
109
87
67
163
122
72
136
80
154
69
121
175
78
87
78
131
175
96
109
72
94
69
85
104
76
80
110
69
87
78
128
160
76
119
111
78
78
100
94
117
80
143
91
52
87
130
69
129
104
99
69
87
80
88
94
125
128
131
112
116
117
76
80
106
87
78
72
72
140
99
87
90
114
110
119
174
144
104
99
99
76
120
117
76
128
72
145
96
89
96
126
151
87
89
156
175
115
113
115
56
93
88
144
69
109
80
140
106
117
119
99
136
83
69
148
131
114
120
80
52
109
154
117
128
87
78
89
136
120
96
146
80
78
78
99
119
104
109
94
87
143
67
197
80
76
119
109
105
76
71
94
87
80
76
109
80
109
117
72
114
76
134
107
72
80
112
120
110
197
128
128
127
80
119
87
96
100
78
121
114
128
131
155
145
154
122
111
99
67
80
97
140
145
101
114
76
80
185
128
181
99
71
163
78
78
113
154
80
89
118
88
78
80
121
119
128
128
137
120
92
78
106
87
113
80
80
130
87
80
95
80
119
109
87
148
110
155
106
175
140
174
72
175
76
121
80
91
120
80
91
87
128
119
121
138
69
103
56
148
69
77
91
103
121
99
109
102
181
89
151
113
76
148
74
104
148
89
120
154
110
74
120
122
91
72
54
125
121
113
72
76
118
155
94
69
87
80
130
117
137
122
87
110
109
120
148
131
131
82
97
113
72
112
133
137
80
152
112
83
175
103
87
100
149
88
134
80
94
80
88
113
69
175
154
89
175
69
92
80
117
112
97
102
104
174
122
93
117
129
175
154
87
123
163
122
87
74
94
69
121
119
175
145
69
154
100
134
78
142
143
121
110
88
80
136
109
93
107
91
106
121
69
60
141
118
100
125
100
174
80
104
96
76
154
94
155
120
199
106
163
176
52
80
137
100
76
69
81
69
124
99
69
121
109
69
104
64
154
106
100
113
147
87
72
85
78
80
203
127
119
76
119
80
110
114
123
107
129
88
87
76
131
93
100
89
87
106
78
119
115
68
110
107
150
96
103
87
115
118
131
102
120
96
94
76
80
128
185
117
115
123
89
128
113
76
163
110
87
78
143
115
69
146
175
76
150
126
128
128
129
105
88
121
90
128
78
59
91
197
140
100
100
93
120
144
89
69
89
76
135
87
83
110
78
134
52
84
109
99
72
92
109
69
105
128
138
132
107
120
131
89
154
74
140
89
145
150
119
197
143
159
119
89
131
87
76
78
127
107
150
175
80
94
72
131
112
128
132
76
78
80
154
163
121
107
124
109
72
134
143
175
69
113
78
134
140
93
79
130
94
93
115
119
115
101
118
197
87
109
88
80
89
128
69
175
137
80
155
125
151
136
154
102
133
93
201
107
121
104
76
129
119
101
99
90
80
78
80
80
87
80
91
93
102
147
69
54
181
104
121
107
131
138
88
88
147
80
64
112
127
163
99
147
137
69
137
123
113
78
106
90
80
117
102
115
80
87
107
78
119
80
118
78
171
131
120
80
80
115
102
119
155
122
69
134
87
121
128
129
109
132
76
87
134
136
175
94
119
133
119
129
102
81
54
91
76
74
69
110
88
119
109
76
148
154
131
98
96
134
93
119
107
103
130
88
101
87
107
79
107
94
80
107
105
80
69
109
69
201
75
80
164
119
103
160
149
56
69
87
120
80
93
87
88
93
175
113
80
120
128
76
88
107
127
75
94
137
118
105
134
146
89
109
69
110
131
119
69
80
102
88
129
109
122
131
99
80
78
121
110
81
134
76
100
124
109
68
109
87
107
76
80
114
111
69
136
87
76
98
80
108
78
105
80
88
99
137
110
82
136
80
154
102
80
69
125
75
121
154
94
85
136
78
163
117
118
145
100
113
110
187
57
69
87
93
119
87
59
131
140
144
99
104
78
154
197
96
117
107
103
83
93
95
78
136
107
69
119
138
127
80
80
86
54
106
116
120
90
110
52
119
76
89
76
119
106
147
130
132
54
94
72
80
89
153
69
100
128
69
101
146
103
69
155
133
80
86
183
69
80
104
131
85
156
78
56
148
69
205
107
175
129
164
120
69
136
93
109
96
143
66
80
101
78
69
109
87
89
99
119
117
102
119
197
121
113
78
78
97
76
88
136
120
102
88
156
89
148
94
113
151
175
131
104
155
107
131
140
97
108
101
69
118
78
112
128
118
92
94
128
157
99
80
100
110
80
87
109
137
88
91
174
128
133
78
126
107
181
142
76
76
88
59
80
128
131
136
107
166
75
209
128
99
92
119
175
90
103
117
103
69
121
127
146
127
134
175
110
136
89
129
197
80
80
123
99
91
88
175
94
181
134
69
175
107
127
76
95
171
72
80
133
69
93
108
100
175
73
91
128
131
119
80
119
102
78
88
140
127
43
134
107
80
124
72
186
80
89
160
129
96
88
166
103
76
132
102
91
96
156
69
116
175
96
134
78
91
109
144
96
112
80
104
146
135
157
80
87
87
78
78
88
121
118
91
106
106
78
115
78
93
86
131
136
84
117
113
113
127
67
87
69
163
109
85
69
87
119
91
104
69
56
117
102
80
123
100
117
69
176
165
80
103
99
128
122
93
85
99
119
87
122
76
121
87
112
106
87
87
69
54
183
119
129
152
54
64
80
109
154
89
114
69
88
76
120
131
78
69
109
78
69
119
69
78
128
87
140
115
76
87
132
112
156
80
69
107
109
96
106
87
175
119
154
136
69
80
76
110
127
78
156
88
109
94
99
136
87
143
69
91
99
129
109
87
106
92
183
99
69
100
164
106
107
72
76
101
69
87
96
87
99
89
104
114
101
89
69
87
101
80
76
155
113
131
69
89
128
117
124
96
88
119
109
78
120
106
76
103
87
118
175
76
132
148
102
120
119
101
80
88
123
69
137
128
80
120
166
131
80
138
107
80
69
69
88
85
112
107
127
138
104
52
109
73
89
154
80
91
112
69
99
83
80
109
87
93
121
87
94
72
80
131
99
85
104
99
94
99
134
101
66
88
127
119
80
104
117
80
154
115
72
107
80
71
106
128
112
129
87
104
80
93
87
104
69
94
88
128
136
110
120
110
103
76
113
131
88
69
80
134
80
119
109
95
81
74
109
88
104
166
137
107
177
54
87
94
102
107
163
69
113
89
87
94
69
79
97
82
102
78
78
107
78
69
107
66
80
87
110
88
127
102
108
111
133
154
56
119
107
151
110
136
111
87
81
154
189
78
87
130
91
80
78
147
80
80
117
85
112
99
99
91
67
129
115
134
100
80
104
145
69
99
113
107
73
80
109
118
93
152
110
123
115
104
152
52
118
128
119
78
146
88
107
88
85
121
110
115
100
144
88
110
76
82
69
162
69
107
89
85
118
80
134
94
87
119
143
101
80
148
76
143
69
69
150
69
78
99
123
79
76
128
113
104
104
95
88
162
71
76
134
124
80
76
69
106
87
111
80
99
80
136
69
119
145
93
197
197
130
111
134
76
127
112
80
108
140
112
160
154
154
109
154
87
94
124
107
102
80
129
87
56
72
117
131
80
66
94
82
104
69
99
121
119
78
116
151
117
78
52
118
131
109
78
80
87
82
120
43
110
78
89
106
80
96
87
76
117
118
78
78
80
175
134
78
69
113
69
138
88
110
154
80
87
78
80
87
80
87
94
119
80
175
80
106
127
118
128
80
80
93
154
133
108
131
72
80
96
78
107
131
136
89
107
100
99
127
97
69
94
104
80
93
119
80
124
123
94
197
107
109
88
136
197
111
128
113
86
76
78
78
120
80
82
157
99
72
104
136
137
80
121
69
67
132
79
112
98
120
123
96
78
95
109
119
122
80
104
128
93
80
165
154
76
72
136
68
99
101
93
99
80
93
140
175
129
80
110
137
137
109
197
77
96
88
110
122
78
175
151
128
69
130
107
120
72
110
80
156
131
83
78
72
106
78
145
85
87
90
115
94
91
98
69
99
80
85
156
80
80
99
87
96
87
140
114
119
113
78
125
118
69
69
128
122
88
69
118
154
172
91
80
134
163
128
69
96
87
126
76
121
96
76
106
120
115
115
110
73
96
154
74
117
109
131
87
87
80
175
112
115
99
99
136
80
80
85
115
113
94
78
69
76
98
93
111
80
134
88
155
157
101
88
78
120
103
186
186
78
131
99
155
76
69
106
115
137
148
89
119
91
136
175
108
113
131
151
122
80
145
101
72
119
99
101
69
101
119
122
87
69
109
77
96
54
87
69
107
154
118
88
76
113
141
69
155
92
69
99
117
156
199
112
80
148
127
136
87
174
79
78
96
80
99
156
131
69
113
156
163
109
87
175
143
174
110
197
72
93
147
121
99
136
140
109
118
119
106
87
82
109
176
87
126
91
137
69
58
155
93
113
78
64
109
87
134
118
87
93
69
74
175
140
196
87
74
133
69
69
131
120
69
123
69
119
144
106
110
127
89
87
107
108
112
175
151
78
69
89
92
117
112
151
80
101
78
175
89
87
118
76
104
156
80
80
118
132
119
123
91
67
118
106
57
120
137
140
89
119
94
158
134
151
99
114
136
154
183
93
96
99
87
164
134
87
120
117
104
128
80
119
56
87
113
62
69
85
91
96
100
76
143
43
85
80
127
69
96
91
88
119
87
209
119
164
117
131
69
80
117
69
140
99
106
149
104
175
88
68
80
104
76
131
120
137
72
99
76
155
119
109
131
99
80
102
155
134
114
112
113
78
113
154
185
159
93
122
120
164
69
89
113
69
110
107
104
87
80
134
101
78
114
80
110
119
128
91
106
131
72
110
76
107
80
69
111
110
118
87
87
78
154
83
156
121
103
87
78
107
89
80
109
136
134
76
120
112
123
78
118
60
82
128
99
175
80
80
69
72
144
121
72
87
175
99
74
118
137
64
110
78
80
120
131
128
112
80
87
120
78
136
91
97
138
156
64
54
88
162
78
87
76
76
153
109
78
119
89
140
80
111
56
111
69
163
75
93
120
87
131
119
119
87
112
177
54
105
151
66
131
114
156
197
72
100
129
80
146
96
78
136
112
91
123
169
87
80
72
69
154
126
129
112
118
69
80
132
95
197
118
89
197
111
80
115
101
101
129
119
91
117
76
79
78
52
101
104
100
109
72
115
72
154
163
148
154
150
100
82
119
89
100
149
129
89
110
111
122
78
88
148
80
83
151
155
162
91
128
120
107
145
116
107
109
52
112
113
119
89
116
112
80
122
87
109
85
104
69
128
80
59
132
88
43
104
120
123
119
85
131
117
120
117
69
113
155
52
154
143
118
76
78
131
74
87
69
80
87
134
107
146
88
125
85
88
154
134
123
117
78
87
123
130
137
60
102
132
93
102
80
124
140
126
107
72
99
89
109
69
80
120
69
109
89
69
90
120
107
102
66
122
120
169
109
78
78
104
80
154
101
121
128
87
78
102
96
118
121
54
175
164
58
82
136
133
114
149
101
69
107
128
90
154
107
154
129
78
99
43
43
120
122
134
156
110
114
128
154
100
154
112
126
117
109
81
126
112
175
85
88
133
66
150
121
89
88
106
151
92
94
116
88
119
113
106
87
127
150
140
87
100
131
105
129
69
111
69
107
154
137
80
80
152
120
136
104
69
133
80
54
155
101
120
201
174
88
175
89
75
169
94
138
112
107
121
127
126
132
69
76
143
110
78
99
102
102
121
104
69
155
117
109
69
80
76
93
116
98
78
90
154
121
100
110
140
89
151
76
154
101
88
69
99
87
109
160
85
87
108
72
118
145
80
80
123
109
88
154
128
100
83
107
87
128
87
100
72
154
80
80
52
160
76
145
144
94
80
85
118
157
124
100
85
175
121
76
120
102
126
127
184
78
69
91
114
76
87
102
124
121
94
150
154
129
96
87
134
83
175
120
109
125
72
94
69
76
78
164
117
136
110
110
93
88
154
140
69
117
69
98
120
69
93
113
101
87
117
80
131
132
99
136
69
125
89
119
156
79
76
80
64
69
99
120
151
153
69
119
122
87
186
99
129
89
127
54
123
128
119
97
76
80
134
69
94
133
69
155
120
74
128
110
175
112
78
130
140
69
78
100
119
93
94
110
98
160
146
133
104
94
69
101
175
143
78
107
172
120
140
89
104
128
89
137
120
147
69
134
102
175
137
151
67
80
87
147
113
113
87
93
94
80
76
76
151
150
101
155
80
101
66
76
119
121
99
69
128
119
56
117
83
87
109
110
87
175
69
116
108
135
99
107
69
137
110
163
102
69
69
151
113
78
150
103
107
88
133
78
76
123
97
101
113
74
105
175
80
107
113
146
106
118
80
112
128
80
131
88
128
69
113
54
122
156
76
107
121
99
130
150
128
113
134
81
145
69
76
102
72
69
164
92
174
123
93
94
147
96
54
80
80
110
72
128
87
96
155
109
112
106
148
121
78
143
102
83
115
111
103
121
90
58
154
117
80
80
76
106
146
136
128
175
78
87
78
122
175
130
131
101
116
126
102
125
137
99
72
117
151
181
110
80
80
151
144
138
113
88
80
78
95
94
87
87
87
80
80
90
118
99
147
78
135
78
72
88
76
119
175
183
114
69
155
69
155
105
80
144
78
99
104
80
107
80
88
80
146
155
76
128
94
133
106
74
80
121
107
147
69
104
76
121
76
76
87
69
69
60
87
78
106
106
154
124
131
99
99
69
78
89
91
107
91
104
109
81
143
106
106
110
136
69
143
111
134
92
94
151
197
76
94
80
89
81
87
130
199
120
183
113
59
98
156
133
119
101
106
80
116
152
102
85
125
87
103
80
131
80
69
87
110
89
109
80
106
119
104
136
96
80
89
80
115
80
101
106
119
94
114
69
76
76
140
115
145
78
114
69
69
136
76
80
102
146
140
131
56
120
94
68
76
138
117
117
93
96
113
87
80
93
69
81
126
69
80
119
103
109
108
109
120
69
56
133
68
121
119
66
175
119
89
94
69
96
119
94
54
94
164
69
120
107
107
120
80
69
87
155
140
67
109
87
69
80
98
76
89
80
106
101
108
87
138
141
136
143
88
93
134
127
104
136
58
90
103
58
153
66
104
76
99
76
83
94
122
101
128
154
107
141
94
178
99
102
110
69
113
126
96
140
148
78
140
91
64
75
78
155
71
94
100
143
155
129
93
80
120
144
99
88
106
99
128
43
75
69
131
154
115
107
107
185
93
80
95
152
69
175
88
145
143
126
110
121
139
88
76
75
140
128
127
86
69
80
99
111
110
78
120
87
72
144
133
121
151
123
69
69
101
128
93
131
80
89
99
155
119
80
128
151
137
112
100
78
104
80
69
105
96
91
175
152
131
113
102
147
175
100
80
78
80
175
80
115
120
100
68
88
133
119
90
78
148
80
67
72
103
78
135
127
100
128
131
52
110
94
87
123
124
66
91
104
131
69
72
144
87
142
128
118
154
80
104
117
96
89
120
89
114
140
119
88
103
110
96
131
94
76
130
199
69
99
119
94
69
121
69
78
69
109
99
124
69
102
136
88
132
69
131
102
137
99
156
74
119
96
101
111
73
88
134
69
78
96
94
175
93
127
97
107
118
114
69
151
80
80
125
76
80
120
90
145
128
134
111
73
107
131
88
154
80
150
78
136
174
78
127
80
109
115
87
76
141
73
138
89
69
93
134
80
87
80
72
112
127
88
154
96
78
144
87
139
66
95
93
119
112
52
119
124
94
106
121
117
132
175
91
140
150
80
89
125
52
94
118
121
104
121
145
137
146
109
97
99
96
120
72
69
91
69
99
147
151
52
76
89
136
163
118
69
109
69
137
99
131
156
52
163
80
101
126
113
112
140
96
75
89
124
151
106
162
94
80
93
120
78
93
139
69
72
69
122
80
110
69
134
157
138
98
89
130
69
89
164
104
124
88
109
91
129
120
78
97
109
94
136
76
183
110
73
109
80
181
121
80
78
139
110
112
78
107
82
72
57
113
107
154
128
91
175
128
119
78
56
156
121
80
69
112
69
74
69
93
117
175
130
119
175
114
96
109
103
69
88
98
108
78
137
128
88
151
81
145
106
76
128
97
134
101
103
96
82
87
69
175
129
88
106
107
82
163
85
114
85
80
76
132
73
87
152
128
164
102
132
123
119
105
75
107
119
99
78
78
67
80
120
80
118
94
154
69
80
110
74
67
72
89
175
125
78
107
69
175
80
119
88
93
76
109
137
104
107
92
122
119
121
140
109
137
109
87
82
89
130
143
80
102
123
91
78
120
120
113
108
104
119
144
52
87
112
138
151
67
128
153
80
114
125
58
88
80
112
106
154
154
160
107
96
69
80
93
136
156
126
54
106
85
89
106
104
102
103
52
129
109
96
137
119
119
83
93
78
69
126
119
94
52
129
78
136
156
125
110
157
136
194
88
105
80
89
69
91
76
88
80
80
164
102
120
134
140
88
131
80
143
80
154
149
72
90
120
144
117
95
107
126
87
87
67
104
80
112
155
76
109
131
163
89
80
88
89
113
112
95
119
115
100
88
107
134
94
80
145
91
121
154
87
152
128
78
140
68
78
94
66
87
151
88
120
116
103
118
95
107
136
99
128
164
76
133
98
99
69
69
90
76
93
103
107
175
149
86
78
89
103
80
69
87
132
120
120
136
78
157
164
69
128
112
151
126
132
137
117
78
69
109
146
106
121
120
156
56
79
112
128
69
69
112
80
121
118
120
80
136
129
98
102
118
75
95
76
103
130
88
80
145
89
106
114
101
87
93
115
69
96
94
91
140
107
80
84
60
119
72
131
83
56
91
110
99
120
127
114
121
87
120
148
76
111
183
79
107
134
143
80
91
98
78
89
88
140
91
87
96
112
146
93
134
123
72
96
76
101
149
110
69
136
101
94
117
114
69
154
87
121
128
154
69
80
137
78
69
99
114
110
117
106
69
107
91
87
120
94
107
85
78
76
128
69
69
119
93
76
78
80
67
118
97
88
74
112
139
91
105
74
107
142
89
145
120
76
79
136
119
63
143
113
128
91
152
113
80
69
112
120
181
92
90
96
69
128
128
128
99
74
78
175
117
80
91
129
85
94
138
175
107
131
87
69
113
67
80
52
143
102
56
69
80
99
80
112
54
106
112
181
78
140
128
151
52
130
52
145
174
151
111
110
119
88
89
78
96
118
109
91
108
114
103
138
140
110
155
83
63
123
85
107
89
150
120
69
128
134
80
151
78
78
81
109
99
107
69
110
134
136
151
128
109
136
80
110
78
101
165
82
57
125
117
80
101
103
136
93
124
93
136
88
82
80
80
94
80
128
131
69
134
154
128
76
88
80
113
175
80
96
107
144
120
95
69
104
132
69
112
93
69
120
134
91
121
95
138
134
151
78
82
100
91
122
92
118
113
118
120
74
112
154
137
126
80
119
101
149
123
133
76
69
109
130
87
72
145
89
87
54
88
69
80
128
93
91
97
165
69
120
140
120
76
100
93
54
88
120
99
106
131
93
209
76
76
89
175
85
101
69
74
122
69
94
110
121
106
112
109
58
80
129
119
69
155
110
69
117
87
87
80
80
147
142
80
78
151
94
130
80
66
140
69
99
78
109
94
128
69
146
79
72
89
189
127
119
82
154
123
87
113
76
193
114
89
126
106
134
110
156
80
155
93
154
93
109
94
106
132
75
80
134
151
100
152
154
104
109
106
127
137
69
128
145
76
99
88
103
134
69
148
119
80
104
69
93
118
144
120
117
54
144
69
120
99
137
175
88
175
101
78
118
98
99
88
94
141
80
80
78
80
121
107
140
130
128
69
56
117
80
78
80
160
85
114
69
107
134
105
76
140
175
93
78
87
54
80
69
128
162
76
136
99
146
134
78
91
151
124
175
80
94
99
115
80
121
93
99
101
119
145
119
149
89
96
120
80
141
109
87
80
98
135
87
87
175
54
127
78
80
119
114
140
132
111
76
69
92
87
93
92
95
95
113
140
120
79
64
95
133
119
107
118
54
123
133
117
147
121
131
80
113
107
116
127
80
109
146
56
80
175
80
106
60
91
119
76
79
163
109
80
72
93
175
154
80
119
127
109
80
132
175
120
138
118
72
175
80
69
197
119
69
67
146
72
95
78
87
80
134
91
136
120
120
134
127
91
130
52
87
96
80
107
93
96
69
69
80
85
113
148
133
112
87
69
72
78
136
127
87
78
79
175
69
134
72
94
145
102
98
87
106
104
128
74
113
120
87
136
175
80
87
114
165
145
113
106
69
104
121
137
110
134
110
119
89
120
43
52
117
113
109
122
72
155
88
69
117
127
56
122
136
163
101
123
95
104
147
100
143
78
80
69
133
107
96
194
144
106
136
76
118
117
80
175
103
155
143
78
87
97
118
175
100
99
109
175
56
101
111
123
92
154
117
113
106
104
88
64
94
140
78
146
148
90
143
127
112
156
43
136
120
164
110
146
110
80
72
119
66
136
106
76
96
72
156
165
118
131
91
91
119
101
75
136
109
106
119
80
130
108
85
87
74
144
99
112
112
71
177
131
155
106
90
87
107
83
155
128
119
112
140
93
120
119
131
93
174
134
95
76
78
101
96
109
54
74
145
137
76
110
87
69
112
136
175
83
114
78
134
80
156
109
130
112
80
78
80
72
109
71
106
76
157
69
87
85
87
118
112
103
74
140
163
112
67
100
87
133
140
74
154
128
99
85
87
80
99
133
80
101
175
93
154
134
69
74
67
127
101
129
126
140
115
129
76
107
94
150
119
103
141
76
127
69
115
110
116
109
87
99
181
154
106
69
119
80
146
57
88
94
134
96
120
89
85
89
100
113
128
93
87
151
137
80
154
99
87
78
90
152
121
152
101
175
95
99
80
77
91
80
139
129
197
80
69
154
174
123
136
163
96
89
88
99
139
54
110
125
80
80
80
175
72
118
126
115
88
163
163
67
88
163
98
96
122
137
128
175
118
85
120
100
88
98
128
56
107
76
79
154
88
122
160
87
76
174
137
172
175
155
127
87
74
111
69
144
78
107
175
80
112
99
88
76
163
146
110
163
127
117
60
91
128
69
107
101
96
159
88
106
64
96
74
111
76
93
69
89
151
160
87
78
100
137
115
119
52
150
72
155
142
118
80
142
140
96
96
154
69
123
69
69
157
99
154
155
128
74
118
80
80
151
131
95
78
111
113
67
154
128
101
80
110
121
199
104
78
154
119
133
129
102
94
99
96
128
91
76
100
166
106
120
88
127
128
113
80
107
176
78
74
78
78
78
69
107
94
87
78
88
154
89
71
121
169
52
98
98
80
105
87
127
91
91
111
96
80
119
107
80
102
133
89
143
130
69
69
90
163
117
69
109
99
91
145
107
119
140
120
119
99
103
74
87
80
83
113
102
66
100
95
69
96
67
85
87
120
183
74
123
99
69
156
119
89
104
126
110
87
52
95
92
86
111
106
130
128
160
128
96
113
117
56
155
91
104
111
121
137
69
140
120
94
76
102
137
154
82
143
146
115
78
122
147
69
82
78
133
80
109
107
154
107
107
140
163
86
76
154
143
128
87
122
109
76
128
84
163
152
72
123
128
80
120
99
109
121
76
80
80
160
89
116
121
112
109
117
106
111
143
123
80
113
80
101
87
88
104
89
119
107
78
122
148
154
127
120
140
127
107
43
121
136
80
72
98
156
80
93
90
80
94
137
175
85
119
128
80
120
80
106
78
116
175
122
134
120
120
80
148
78
74
136
88
97
76
72
155
76
123
104
111
76
114
78
78
91
105
163
82
78
127
119
93
72
131
174
126
143
67
78
175
127
119
127
145
78
126
69
121
69
72
113
75
161
43
146
54
105
142
109
88
138
146
71
69
128
88
69
128
72
78
143
95
131
109
87
175
109
52
95
120
80
128
87
87
119
127
88
80
80
154
80
87
127
175
104
98
104
88
112
80
72
175
69
85
78
120
95
120
80
134
96
94
148
93
106
197
110
80
104
94
100
154
100
120
88
87
119
175
80
107
75
104
136
77
80
69
78
69
97
119
80
107
120
121
84
104
91
101
52
80
92
120
80
159
94
103
99
100
64
145
120
78
73
99
110
119
110
140
131
119
87
163
87
131
106
106
91
54
140
127
87
133
112
72
76
154
87
175
164
69
76
112
76
163
87
87
78
127
69
88
72
88
87
122
175
92
146
69
120
128
103
124
74
143
74
113
80
67
120
96
79
56
134
72
140
87
106
80
52
114
69
80
94
89
88
80
117
134
122
111
102
78
78
106
121
175
142
119
88
145
96
72
54
155
69
152
104
117
105
112
160
94
87
159
93
133
94
88
80
69
154
175
63
106
121
96
113
80
120
113
131
107
69
80
80
90
146
100
99
72
100
122
104
134
119
102
106
111
128
109
107
80
91
89
124
148
80
80
85
112
79
131
123
69
78
110
136
103
83
144
104
117
130
85
136
76
151
120
175
144
69
131
152
68
117
91
112
72
137
156
93
106
101
94
93
112
140
113
115
104
131
111
164
142
128
126
63
113
116
120
120
131
172
69
112
134
89
99
93
87
106
80
122
133
107
99
164
69
85
151
133
96
133
154
106
124
57
128
154
119
78
94
119
120
136
131
116
56
99
114
91
156
80
106
101
133
126
80
101
155
80
75
106
69
116
80
88
134
85
93
76
80
111
80
73
147
115
80
88
119
69
89
82
80
87
80
80
52
78
76
126
140
87
102
78
134
115
134
80
110
130
80
134
114
84
99
80
119
124
57
54
131
87
109
134
88
103
163
83
80
163
110
109
100
175
85
98
80
110
181
164
88
71
89
106
144
76
80
69
91
90
86
78
130
101
107
110
119
139
94
76
111
80
69
109
130
120
69
115
87
87
122
90
113
127
154
132
127
117
93
80
121
106
93
134
69
149
142
83
104
103
80
80
146
76
141
89
160
117
72
117
137
69
151
137
93
102
56
89
102
175
118
120
183
131
154
118
104
93
155
76
143
117
99
56
87
123
87
89
110
121
88
162
128
137
144
112
117
69
107
119
136
80
59
131
80
90
96
102
95
122
69
69
87
118
85
128
113
117
80
118
113
78
76
82
69
98
99
69
76
119
98
83
146
80
107
107
130
119
104
69
109
94
80
110
128
148
101
91
146
160
93
56
85
91
107
99
88
120
113
175
78
127
142
69
102
88
69
54
175
54
111
123
128
59
99
80
99
87
87
131
85
147
114
94
101
112
92
107
76
79
138
154
89
107
144
115
128
175
135
112
120
129
106
151
113
104
87
113
93
79
80
151
69
107
59
145
175
110
197
129
76
109
80
80
76
113
119
73
90
155
89
69
89
89
72
88
69
90
76
80
121
133
95
96
127
80
104
175
69
147
103
88
128
104
127
98
110
89
112
104
78
120
80
136
104
69
139
69
104
175
185
80
141
76
54
87
80
132
69
112
76
131
87
91
166
143
104
117
138
83
80
76
98
126
119
87
120
88
78
156
122
80
102
148
131
69
80
96
107
75
108
80
80
91
69
175
120
69
154
76
88
106
87
103
78
151
80
112
88
111
83
87
52
154
107
92
80
133
100
113
146
115
72
126
197
69
100
99
69
131
120
119
106
112
67
80
103
72
80
76
78
136
92
80
110
80
107
106
93
104
123
80
83
104
115
67
197
113
88
121
119
159
76
125
88
127
107
87
74
52
151
99
80
87
197
107
72
107
116
175
113
76
69
143
98
69
113
75
95
112
121
100
120
95
106
80
99
69
80
88
69
115
175
69
56
93
136
148
175
134
107
88
152
76
101
175
98
78
104
110
117
121
131
121
98
98
134
80
117
76
80
113
120
99
80
127
123
91
93
88
88
74
80
88
87
83
123
154
119
91
143
110
69
88
119
197
112
80
144
112
87
120
130
155
100
66
99
110
76
96
80
80
103
148
76
127
69
127
124
80
119
87
66
80
96
112
87
69
117
115
80
169
94
80
115
155
143
76
127
76
91
72
114
140
116
107
119
69
131
80
117
54
159
74
110
90
131
75
131
78
134
78
133
88
66
136
115
120
80
156
77
148
110
127
159
156
80
133
104
110
145
87
80
129
146
69
87
78
112
79
94
80
197
120
69
175
107
110
103
117
197
69
106
128
69
59
148
131
132
124
148
129
155
76
87
80
140
93
137
78
72
151
175
151
133
93
76
89
110
88
120
79
83
165
89
153
136
156
120
128
147
131
95
96
109
80
119
128
94
52
99
80
64
128
79
104
97
120
151
175
147
88
128
54
80
99
90
76
69
90
69
104
80
100
88
69
120
87
99
134
102
89
136
154
133
107
78
54
138
127
87
113
69
134
88
76
133
52
72
87
128
87
160
113
107
146
142
87
87
80
136
131
175
174
80
117
185
133
112
95
69
75
127
80
138
151
89
87
110
110
112
88
110
128
69
174
109
121
140
88
119
145
107
96
52
147
107
103
94
120
147
93
134
115
128
154
173
56
43
128
104
95
140
109
96
145
144
69
113
175
175
174
106
142
80
80
99
72
69
69
93
101
94
128
110
87
99
91
79
89
72
80
87
94
69
70
80
89
89
110
98
109
106
100
59
88
104
147
80
66
113
145
69
87
104
78
110
94
74
98
78
76
74
89
91
129
103
87
78
89
153
114
107
72
80
151
80
127
110
117
120
106
69
99
107
87
99
175
106
119
134
78
113
80
72
131
149
74
69
117
69
85
78
134
126
104
107
69
133
110
175
100
92
128
76
113
134
155
104
129
112
112
103
91
99
76
74
114
124
174
99
140
111
129
121
117
79
140
80
131
52
104
80
80
121
94
80
130
95
120
88
87
94
119
52
119
52
66
137
104
112
125
94
99
101
131
150
99
128
87
123
109
104
87
87
149
102
96
113
99
136
123
143
109
76
69
129
122
80
87
122
93
89
78
87
80
89
88
181
110
72
99
94
119
125
93
105
98
107
94
80
133
176
96
119
155
113
166
80
76
87
119
128
80
109
80
112
79
87
91
69
80
155
120
101
99
111
88
115
175
106
119
78
76
69
80
132
129
75
89
150
85
124
110
101
154
108
120
69
138
80
93
134
140
69
88
78
87
156
96
96
80
99
82
151
129
72
128
119
123
91
102
109
67
109
69
154
80
80
80
69
119
80
119
90
145
154
131
89
113
80
148
115
69
89
83
131
129
69
148
129
128
119
143
85
121
76
74
120
197
99
123
113
66
104
109
101
144
175
52
80
89
101
119
107
76
74
80
91
98
89
96
69
126
121
85
127
72
107
106
112
118
110
107
72
80
118
133
106
68
69
88
54
119
67
109
112
104
132
107
104
69
80
74
175
107
66
116
110
143
149
76
80
109
154
80
87
120
76
78
107
111
131
117
76
104
136
134
106
175
106
69
59
76
89
163
118
80
164
99
82
58
72
128
175
52
163
74
134
110
119
63
99
69
136
52
110
80
113
143
78
80
101
114
175
101
142
87
152
120
80
69
76
120
149
117
114
69
87
52
72
109
102
72
123
157
114
117
112
109
119
140
80
112
89
110
109
103
128
124
106
43
118
87
80
148
72
154
134
183
80
96
88
60
106
76
92
75
69
76
130
93
99
154
101
144
87
109
130
124
104
72
138
88
113
99
87
69
87
101
80
126
120
122
109
94
80
87
69
69
154
78
104
127
85
110
80
119
125
110
87
87
123
87
152
131
78
89
80
88
111
74
103
93
87
163
120
142
114
99
78
87
88
79
80
87
131
151
155
109
126
93
128
101
136
104
154
83
121
197
89
88
120
80
123
127
80
73
69
151
91
104
43
151
109
131
109
87
80
119
121
87
75
54
95
137
57
151
78
69
147
138
76
107
87
107
80
120
69
123
144
172
117
102
99
111
93
80
124
69
78
64
128
87
175
175
104
96
115
56
80
78
132
109
151
149
102
101
111
152
141
119
104
164
69
93
76
144
104
104
175
134
75
146
89
131
100
128
124
89
138
131
91
123
154
111
54
83
134
131
87
88
80
120
107
89
131
87
88
56
138
87
144
107
118
91
119
123
106
146
149
143
69
94
101
101
154
85
77
60
121
96
91
87
118
94
127
126
80
80
89
89
72
145
122
87
96
72
140
113
104
80
93
138
91
72
107
128
72
94
69
113
120
142
74
134
87
137
87
103
113
109
106
110
83
115
111
69
89
155
69
76
88
76
69
129
134
140
163
125
93
94
137
94
73
112
140
176
157
127
147
140
117
134
142
164
93
175
117
80
87
151
87
99
128
91
87
133
87
99
117
130
150
134
130
100
99
129
96
105
165
80
80
80
107
83
95
80
107
74
151
76
74
107
113
128
118
145
154
126
113
104
102
69
78
93
98
69
106
94
87
155
80
69
111
100
119
110
87
96
112
131
175
107
80
69
69
109
143
94
87
155
54
99
209
131
76
125
87
69
147
69
94
134
110
107
169
80
101
151
104
111
112
128
112
76
155
119
87
90
75
74
138
74
89
109
133
106
80
131
142
107
146
119
80
87
107
113
117
120
153
73
148
131
111
120
140
125
131
79
134
78
99
78
126
120
106
115
80
113
109
145
114
87
119
156
54
87
103
76
76
134
102
114
99
143
87
80
113
104
85
69
109
69
56
78
87
78
72
80
151
90
54
80
69
123
88
80
121
69
107
175
109
88
151
68
104
103
111
101
154
156
175
155
88
99
75
126
155
115
171
128
123
121
112
144
175
156
128
132
80
94
172
141
119
166
122
54
140
88
69
69
114
119
133
158
69
96
110
87
109
87
119
114
132
80
54
104
89
175
91
165
140
101
99
156
80
197
60
60
81
93
149
80
117
131
136
107
69
110
79
78
134
107
160
54
156
126
96
76
103
122
78
87
103
109
137
88
87
78
119
154
94
99
76
88
80
99
120
80
172
88
95
133
85
80
106
69
114
103
104
69
69
172
72
90
142
60
110
123
115
134
87
117
69
80
85
82
115
80
162
80
69
80
94
64
106
96
93
146
121
76
78
136
54
154
128
101
91
134
127
107
131
93
109
156
124
91
134
136
84
120
78
134
112
120
97
115
78
87
126
87
131
154
94
137
80
96
72
119
87
52
128
87
115
95
107
80
69
109
119
112
76
151
69
143
84
133
107
103
107
99
138
112
60
139
87
74
146
104
100
104
119
152
134
113
87
123
131
69
89
175
120
145
107
94
87
80
80
156
80
89
112
80
93
88
83
91
131
69
69
117
75
128
94
144
80
150
103
106
79
109
100
107
69
69
132
98
119
107
107
144
128
110
106
69
109
80
78
197
84
113
109
153
160
94
111
155
117
102
102
131
156
155
119
94
112
99
106
99
80
76
111
110
103
141
119
79
87
69
76
151
80
80
154
75
87
80
149
126
131
125
109
76
91
87
100
88
88
153
140
110
134
175
175
93
69
96
69
154
172
101
163
80
111
96
151
80
177
117
88
80
120
80
146
154
69
172
69
77
69
87
91
175
162
128
87
94
137
80
98
137
120
106
69
140
117
120
121
104
187
78
96
142
146
151
141
91
69
154
91
80
140
103
80
175
113
88
69
100
104
131
119
112
102
89
117
72
80
120
69
96
76
104
103
87
80
119
102
127
96
115
175
98
80
154
69
69
99
56
119
104
112
135
120
119
175
115
87
69
99
128
107
80
89
100
85
88
104
76
146
156
107
125
72
95
113
129
155
120
89
121
72
110
69
113
101
121
104
151
119
128
154
123
78
175
93
132
93
154
80
101
72
134
88
80
156
98
120
126
78
64
121
110
154
134
125
111
82
110
175
72
89
106
52
69
143
83
131
175
80
71
132
128
88
104
113
110
121
183
110
156
80
118
71
111
76
78
140
119
105
99
134
87
116
123
109
91
96
94
127
119
154
93
92
155
154
87
80
99
113
115
128
80
142
197
107
92
91
110
79
175
121
74
90
104
76
78
104
69
76
69
147
98
119
76
104
162
80
80
121
100
151
69
80
117
151
115
91
147
69
109
80
91
104
80
83
131
129
163
96
143
80
89
78
104
106
88
120
80
88
157
80
69
69
120
69
88
111
131
113
94
197
80
88
99
119
87
149
175
80
112
120
83
76
76
72
131
76
69
80
199
78
80
87
76
117
117
99
75
140
156
119
96
119
88
80
140
99
98
92
120
52
137
109
125
69
109
106
69
101
99
106
117
109
91
154
69
84
76
80
89
120
163
78
145
109
93
88
121
117
75
99
119
87
139
80
112
69
101
80
111
156
89
87
126
87
117
131
90
104
105
80
156
107
80
128
126
69
101
111
75
59
111
118
107
117
92
69
127
72
131
142
134
89
119
123
131
109
99
80
156
74
138
115
104
80
135
89
80
95
94
69
128
156
101
69
113
151
120
80
99
137
159
87
43
103
175
93
101
107
94
99
78
69
152
108
175
154
88
132
87
87
99
103
104
120
118
88
99
112
87
110
80
174
119
72
68
87
68
87
101
52
69
69
78
80
80
69
69
130
129
85
87
69
128
87
175
119
102
102
85
113
87
78
91
101
93
113
69
80
119
121
112
111
58
109
115
126
110
110
120
119
159
113
91
147
175
97
136
76
151
76
90
96
155
80
94
128
88
120
123
95
151
91
87
75
69
120
128
69
93
80
104
120
123
87
89
197
127
137
80
93
43
122
92
80
69
80
98
78
80
76
103
157
119
122
83
111
108
145
80
80
104
69
119
119
175
87
157
120
127
80
80
119
89
103
143
144
79
104
123
140
150
72
69
110
106
84
120
143
144
99
140
87
86
82
154
145
111
88
119
58
87
76
119
152
116
76
93
119
197
114
154
91
164
94
102
107
101
155
107
80
93
109
181
122
93
123
76
123
120
99
72
175
99
113
80
102
72
175
80
116
80
117
87
119
99
67
80
88
175
76
78
154
104
104
120
136
120
69
104
146
76
120
138
91
96
175
69
87
150
131
87
113
88
140
103
74
155
69
76
76
80
87
175
76
114
131
146
113
107
100
76
120
128
114
109
110
115
125
128
69
87
128
101
88
101
90
98
88
118
104
112
107
128
80
134
120
110
107
120
80
99
120
123
199
72
89
197
101
80
103
117
175
125
109
80
72
93
140
106
91
76
80
114
127
69
110
106
154
132
75
130
99
107
89
94
80
155
85
78
66
102
87
89
96
154
118
87
91
89
69
197
69
100
93
94
103
78
78
78
129
99
54
113
107
127
96
89
141
149
109
90
80
101
78
137
87
87
96
90
128
78
131
131
99
99
80
124
102
115
120
147
152
128
91
114
64
80
80
94
80
104
157
93
142
87
156
72
166
71
102
89
80
131
106
69
146
78
88
120
69
175
69
60
139
151
111
119
109
107
78
88
85
78
80
91
117
140
104
90
71
123
169
120
123
197
89
105
107
169
111
94
104
78
88
124
196
110
175
57
80
175
91
71
43
109
103
80
128
80
126
143
130
76
76
78
175
120
78
118
78
72
72
87
106
177
116
119
90
134
104
88
105
91
52
137
72
138
94
88
83
80
134
138
129
104
150
66
87
85
100
87
69
130
88
119
52
106
78
94
157
121
136
106
99
95
127
130
76
107
94
197
164
80
69
88
80
87
107
78
119
131
136
175
102
78
80
128
128
131
78
109
87
117
71
80
131
69
175
119
137
185
121
91
121
112
131
93
110
90
58
123
87
87
139
113
157
112
113
69
137
88
107
159
132
80
107
87
87
111
119
113
85
88
115
124
96
91
87
87
59
89
143
157
69
154
120
111
154
107
78
99
79
96
154
107
78
175
89
113
111
145
102
135
130
113
104
87
89
78
136
133
109
69
120
110
102
197
80
175
80
112
76
88
76
114
115
102
110
69
76
107
164
136
164
93
132
175
109
128
103
115
117
89
133
148
128
146
155
76
122
91
80
69
141
54
70
69
119
80
137
107
87
69
122
80
96
107
101
80
101
80
104
113
114
128
98
52
154
145
70
103
64
112
111
107
69
80
122
113
87
78
90
74
78
93
109
164
102
121
78
89
113
115
116
116
145
96
69
131
107
107
180
69
162
80
99
94
99
144
110
140
52
131
128
80
85
101
120
110
75
201
90
201
74
74
119
144
76
174
174
136
156
110
119
124
83
128
127
154
99
143
87
84
117
118
69
148
82
114
120
87
109
101
87
80
78
69
106
128
126
128
112
85
137
128
135
111
94
82
119
87
80
113
92
80
104
154
133
165
82
80
88
123
95
130
100
100
80
102
75
163
103
118
99
113
99
152
87
54
90
99
110
83
107
120
128
80
137
99
96
104
108
72
109
155
119
118
82
128
99
88
88
143
88
144
136
80
133
113
128
91
106
112
88
109
80
142
93
94
100
69
107
115
175
136
80
123
117
120
105
56
121
131
69
118
103
115
109
114
78
183
106
89
127
119
142
69
80
107
117
69
69
122
76
122
71
88
177
118
112
69
98
69
143
89
113
107
128
87
120
95
96
98
83
99
109
92
135
69
111
101
131
128
72
111
69
95
101
85
78
69
87
163
69
76
123
116
136
120
80
119
169
78
137
119
63
76
110
112
80
101
78
96
87
80
154
94
134
101
76
87
90
81
106
67
76
102
161
94
96
80
113
113
74
95
78
109
80
104
109
131
197
117
175
128
76
95
130
113
117
121
99
54
121
103
166
175
138
121
211
90
155
157
78
78
107
109
78
124
119
119
121
154
80
127
126
89
100
140
109
109
89
134
98
107
71
145
43
87
121
104
110
109
119
183
109
69
136
80
160
110
88
137
127
201
87
76
78
87
56
69
99
117
88
109
69
99
155
131
119
115
148
123
121
110
150
107
91
88
146
110
147
120
80
100
76
80
120
80
96
109
163
155
119
136
132
201
88
152
94
89
102
94
122
80
80
80
121
76
69
102
101
120
99
120
87
119
117
80
84
96
209
90
87
120
120
120
108
128
131
69
78
140
89
87
92
136
74
128
119
163
118
118
69
91
125
107
122
80
84
89
95
106
133
144
78
122
75
110
120
69
69
125
60
69
91
154
131
94
76
157
80
90
74
134
96
127
137
72
183
120
88
87
109
136
119
87
107
111
96
96
107
110
154
146
99
91
96
111
118
133
131
110
175
111
74
106
79
118
43
106
114
96
72
107
88
87
114
147
151
136
126
91
80
110
112
93
120
87
107
134
69
131
128
80
87
140
159
88
103
111
80
81
89
146
110
94
140
145
146
120
151
74
138
74
156
69
75
107
80
111
121
91
128
64
76
80
90
153
93
76
120
127
143
125
80
140
126
129
116
54
110
80
124
80
101
80
99
106
94
91
120
110
100
107
146
114
101
94
78
76
88
69
109
113
128
76
90
91
119
144
149
133
85
80
89
127
119
124
84
120
127
154
69
117
80
87
103
101
111
99
104
121
163
101
94
78
87
94
76
120
88
96
80
107
94
155
146
175
94
140
77
150
90
126
69
166
87
162
85
83
107
105
107
80
145
120
122
132
119
128
152
118
175
115
143
136
107
146
128
88
69
87
80
93
136
120
128
78
80
104
160
75
112
76
140
119
128
185
128
110
131
76
130
119
144
76
104
77
78
78
87
80
99
110
156
197
169
109
80
80
129
80
121
135
80
100
69
157
143
82
136
111
80
143
119
145
123
43
128
107
103
119
136
120
87
120
78
69
127
104
69
92
80
80
104
54
123
115
145
120
131
69
80
87
99
75
82
69
80
137
104
108
54
89
131
112
120
119
117
121
75
147
90
128
80
101
89
109
109
87
54
134
91
78
80
99
80
103
136
106
91
88
98
201
131
152
89
112
118
86
106
89
76
116
128
148
80
150
72
54
174
74
90
128
69
89
107
132
104
128
80
69
172
76
69
119
73
112
76
138
80
69
136
95
64
136
128
172
94
128
185
80
80
99
133
96
125
107
111
91
163
119
66
157
115
96
69
131
156
201
104
126
136
109
87
68
115
110
117
160
99
87
112
175
119
104
80
80
101
126
80
98
140
134
78
88
87
119
104
43
136
104
80
100
115
94
87
150
132
137
88
175
134
144
145
120
80
107
69
113
145
89
94
72
113
80
76
131
154
154
87
146
109
78
145
78
93
80
109
92
80
113
136
72
120
146
178
76
151
104
101
78
87
128
80
131
75
90
80
99
91
163
88
136
76
74
107
80
133
106
89
86
199
69
126
80
74
76
128
101
54
99
103
76
107
66
80
104
78
76
104
80
122
104
175
121
69
107
113
106
160
56
136
108
96
154
131
87
94
91
74
87
107
117
106
107
127
69
80
120
112
187
87
107
89
142
132
165
93
76
87
69
73
118
87
99
175
110
109
76
69
101
100
199
119
148
93
80
101
77
120
154
185
119
104
123
104
197
87
165
124
100
69
118
69
69
77
69
132
66
87
164
76
93
72
87
80
75
69
113
88
175
80
128
99
87
197
80
89
80
101
143
76
133
118
118
128
138
131
69
109
201
94
114
144
66
69
87
135
75
107
122
80
117
106
87
86
103
125
96
133
94
101
88
138
123
160
120
83
74
141
69
107
73
112
90
76
80
99
142
76
106
78
94
175
69
80
112
88
150
80
113
148
80
127
136
114
80
131
93
132
77
87
112
69
140
151
108
144
144
80
104
80
90
76
128
94
56
95
156
119
146
80
66
132
94
109
54
104
197
69
106
106
106
134
101
148
74
97
80
93
127
160
87
167
128
118
96
80
93
82
119
110
98
88
94
100
87
117
69
104
99
133
118
107
69
80
80
138
102
110
128
94
118
134
80
80
69
80
134
127
69
128
69
197
101
114
130
121
197
120
87
134
88
69
87
94
88
119
156
76
78
110
94
120
80
109
112
111
111
110
109
175
80
146
72
93
146
107
109
64
69
137
132
94
78
95
104
80
80
149
110
137
175
117
80
151
73
52
59
90
128
69
119
78
80
75
156
58
80
109
129
156
80
83
69
118
109
54
95
84
156
78
80
78
147
155
114
96
119
80
117
154
78
80
174
119
85
175
69
85
99
120
107
109
87
76
115
80
78
80
87
54
82
174
111
140
76
154
72
136
78
52
69
88
151
123
80
82
137
117
106
94
94
75
100
83
175
89
129
93
128
88
106
72
69
109
151
76
122
93
109
69
80
87
145
79
80
107
99
90
96
157
120
121
107
89
108
94
72
95
142
112
69
133
110
107
90
119
125
76
87
117
131
131
79
78
117
69
109
159
117
83
159
78
128
69
76
128
137
117
128
156
120
94
110
154
143
103
133
69
69
119
80
136
99
104
147
145
152
110
117
106
154
175
129
137
69
99
98
130
69
106
130
106
69
125
115
113
80
74
69
79
74
99
128
59
123
43
134
155
122
99
99
80
117
72
88
156
73
97
113
82
59
146
100
156
87
69
89
74
134
109
71
181
197
102
111
121
117
87
110
54
94
69
106
114
107
99
119
139
151
99
175
120
122
110
109
156
119
76
80
106
122
155
169
104
87
80
151
89
106
80
121
66
91
69
80
69
146
125
145
94
163
87
90
100
80
121
69
67
88
144
115
88
102
104
121
140
88
120
119
119
104
119
142
112
80
112
140
120
117
109
88
115
154
119
100
88
140
126
76
72
60
128
91
120
80
91
74
80
112
118
111
80
75
69
87
87
121
91
99
87
157
109
69
100
155
88
93
59
119
156
163
96
183
103
118
106
137
80
76
89
128
107
87
88
88
113
69
95
87
78
78
73
100
104
102
78
99
87
101
130
78
95
119
120
80
121
99
80
117
127
96
127
88
88
80
72
69
76
150
154
120
80
109
106
107
132
76
56
121
107
75
114
106
80
111
175
149
175
85
131
80
87
163
112
109
80
94
78
76
171
112
155
54
120
87
121
80
87
79
80
197
80
174
72
131
134
94
83
88
76
88
69
95
78
91
72
87
121
99
95
78
121
159
128
69
106
107
87
94
100
104
107
69
101
160
111
76
138
112
78
123
76
107
114
100
78
129
130
54
117
120
78
147
80
127
128
83
80
80
69
142
99
76
109
143
101
80
120
114
96
140
99
108
201
106
88
110
130
87
104
80
113
87
89
119
88
87
119
67
104
78
145
87
87
117
69
128
88
119
76
87
75
93
164
133
117
123
112
158
96
96
131
131
154
88
125
54
69
88
87
101
110
88
100
122
122
91
145
72
94
126
76
172
107
121
98
94
107
175
120
110
95
69
138
80
80
105
112
172
117
127
59
151
151
110
109
146
80
154
54
78
80
101
67
103
69
107
136
78
129
94
118
80
99
80
80
78
209
98
128
163
140
115
144
109
134
76
127
104
107
175
69
80
101
106
76
89
54
148
80
99
80
128
119
102
108
151
67
120
133
87
147
98
66
154
52
102
94
128
197
145
101
109
89
80
116
102
165
87
120
160
183
87
83
142
84
142
131
100
94
78
148
99
140
91
175
98
88
151
69
199
69
115
131
104
131
119
121
87
107
78
120
156
87
121
88
151
91
136
121
98
154
119
88
91
145
91
128
133
120
90
102
74
69
110
128
87
145
76
101
76
129
80
101
87
172
121
71
139
127
145
104
89
91
128
71
52
128
197
131
94
151
120
87
80
136
139
131
72
118
69
121
104
199
136
94
120
106
136
69
127
78
101
69
112
117
187
131
119
69
137
129
69
107
119
119
99
76
118
149
96
124
113
125
132
112
93
121
99
80
119
99
121
140
98
90
76
66
101
69
134
119
115
107
183
130
131
80
75
99
69
78
175
118
108
76
119
118
128
127
100
121
140
126
78
111
111
104
123
80
69
152
163
69
96
106
69
69
117
119
110
119
156
72
76
69
78
124
104
80
175
94
115
76
71
107
160
152
94
80
80
154
145
96
79
95
119
80
113
142
69
88
107
113
121
80
145
113
107
88
72
156
43
87
54
93
106
121
99
96
163
107
155
94
102
69
122
96
69
136
99
195
110
154
120
78
123
121
98
145
87
87
90
125
80
103
140
132
76
127
76
87
144
106
209
69
149
80
100
78
130
80
74
80
87
140
99
78
119
114
85
99
99
117
76
113
72
109
163
104
80
80
122
148
80
156
80
131
69
123
151
119
93
136
109
126
99
155
134
69
156
91
113
88
89
197
156
95
100
76
82
113
80
80
104
119
110
74
80
87
142
96
122
130
139
99
123
117
56
156
96
87
122
104
78
125
128
154
80
154
131
114
156
134
134
96
127
120
80
76
131
69
112
88
80
122
93
87
175
54
80
151
69
88
72
69
128
145
131
69
104
120
111
72
101
99
98
76
155
136
89
170
43
126
120
175
80
151
76
83
117
102
156
154
80
76
80
69
81
102
83
119
78
104
71
69
80
154
117
103
101
110
172
119
69
78
91
150
69
80
146
75
145
78
144
80
89
99
80
133
131
76
175
83
107
72
78
87
121
158
154
87
69
127
110
124
105
112
119
136
91
99
116
107
125
85
94
88
119
80
107
69
120
121
98
119
69
88
146
69
110
175
138
100
181
80
98
52
142
136
91
201
89
89
164
110
76
69
73
121
117
81
129
78
120
154
107
96
107
76
89
87
69
131
133
80
93
69
131
80
78
140
76
107
78
69
87
128
100
162
78
111
102
76
127
127
78
113
111
120
93
69
54
193
175
123
122
78
80
94
109
86
69
145
71
113
106
101
119
69
91
122
93
125
94
80
144
175
78
99
88
119
80
78
90
69
147
136
112
80
117
119
93
113
80
197
89
91
106
77
112
80
132
151
89
88
87
132
128
100
128
124
102
89
93
107
104
115
131
115
119
113
131
74
80
128
107
83
107
137
69
103
110
78
113
69
119
67
80
87
110
156
140
175
93
154
138
43
89
80
113
117
94
147
87
69
87
69
101
110
78
88
107
103
73
76
83
71
99
78
117
89
80
83
73
125
128
162
88
156
110
127
89
69
146
102
122
113
122
69
100
154
95
111
116
89
119
91
101
154
76
80
183
132
129
130
104
72
132
136
113
69
155
108
69
129
58
88
119
101
107
72
101
121
132
80
88
87
117
119
99
119
89
80
69
117
163
130
89
127
69
88
99
117
109
109
109
101
131
117
87
106
78
99
134
102
103
154
136
138
104
124
151
155
155
54
80
91
136
107
91
80
118
117
125
115
95
95
78
85
111
144
137
89
56
110
109
78
87
88
76
120
71
69
76
52
106
56
129
156
131
80
120
132
94
106
69
155
94
174
95
144
95
197
76
129
120
140
107
112
109
100
80
76
76
90
156
93
118
94
107
134
111
80
87
71
99
112
120
56
175
69
80
121
87
133
56
78
92
78
96
87
76
87
156
165
107
172
87
80
146
101
129
117
99
121
107
52
156
111
107
121
79
87
162
108
87
120
80
94
80
163
131
122
148
93
107
145
117
104
102
88
80
113
107
107
78
52
94
107
88
169
175
88
102
78
156
106
112
110
104
95
175
117
119
146
72
69
77
88
175
102
110
102
169
128
175
147
96
151
109
136
175
118
112
109
80
112
131
54
110
150
109
80
128
160
93
154
78
146
121
110
119
118
85
128
137
131
93
64
74
110
119
119
88
113
94
160
175
106
80
112
87
94
133
81
112
102
87
94
102
137
95
69
69
141
80
76
157
56
109
126
69
69
130
78
120
121
94
113
174
129
80
131
101
138
76
123
137
101
104
88
88
104
104
155
122
97
113
140
107
83
80
129
56
69
145
112
109
80
121
93
110
69
110
154
88
78
91
76
87
90
87
94
111
133
116
94
107
111
150
138
80
74
79
104
104
155
80
134
87
120
116
163
71
119
87
113
127
117
137
76
129
69
69
80
80
111
118
99
78
83
69
143
156
69
128
97
111
88
136
114
69
118
74
83
105
119
120
79
110
91
87
97
156
128
69
156
78
135
134
80
119
110
115
80
69
87
129
119
115
80
128
98
78
87
172
110
132
128
88
76
76
74
129
78
79
172
88
109
93
69
94
78
197
80
127
109
69
143
99
99
128
107
107
127
114
69
103
144
131
110
72
120
138
80
69
80
132
94
111
104
92
105
134
155
99
118
88
110
66
95
141
87
118
98
74
96
98
67
74
91
67
107
126
110
106
58
85
109
126
80
93
87
163
175
89
121
104
137
76
71
80
127
88
76
76
105
89
134
69
120
96
69
137
87
115
80
143
87
79
151
78
75
78
130
89
164
119
119
111
111
87
106
74
94
150
80
102
87
114
76
72
135
141
87
114
163
104
87
156
107
109
56
119
112
99
151
106
119
120
145
103
101
107
80
140
80
78
156
101
134
87
110
119
110
110
136
52
72
118
123
69
88
99
99
89
80
133
121
107
118
80
78
138
110
123
140
80
119
175
71
80
107
87
166
146
172
88
142
80
89
99
78
80
136
140
128
106
175
80
127
156
109
128
110
123
106
121
140
95
78
71
96
205
80
109
87
99
140
101
98
80
90
94
142
108
155
117
118
120
100
111
80
152
164
63
80
175
163
197
74
175
83
128
88
89
175
155
87
137
154
98
104
69
102
74
91
107
59
105
144
94
127
138
134
112
110
96
126
72
92
140
122
112
133
109
98
99
160
138
133
115
87
106
76
132
154
181
72
106
69
120
197
119
69
107
76
118
80
71
109
89
128
71
78
133
76
78
162
87
109
74
80
67
111
134
110
83
94
130
142
80
69
99
107
110
120
69
159
175
88
69
141
139
128
78
107
122
90
69
130
76
43
69
69
88
155
119
113
100
110
155
175
52
69
129
78
154
80
113
80
197
144
107
78
89
54
201
83
106
80
110
160
113
123
118
154
94
131
89
131
112
78
76
73
107
121
176
94
143
74
88
87
114
130
94
119
163
94
91
146
135
96
69
121
91
110
120
78
107
94
143
80
128
88
76
155
94
89
114
110
136
143
88
80
101
154
87
87
96
99
74
91
113
120
82
100
69
175
145
93
87
117
87
120
97
120
76
52
89
104
101
113
119
78
94
94
58
122
145
79
129
78
128
127
169
69
121
101
119
87
80
88
78
100
128
96
100
160
92
119
85
94
128
155
117
99
69
94
164
137
69
128
87
121
69
88
69
80
128
80
133
123
129
144
121
72
154
69
124
80
72
52
109
107
181
113
124
110
145
78
60
143
88
197
99
80
78
115
125
92
118
131
69
112
76
125
67
69
76
143
89
78
74
128
138
163
112
123
87
102
101
83
78
69
102
131
175
140
112
107
80
119
131
99
99
98
146
78
124
85
52
175
108
80
77
120
119
83
72
80
69
155
89
115
130
107
124
69
104
96
124
88
111
107
78
80
87
102
109
112
93
119
126
69
80
109
88
119
76
140
107
133
122
80
133
112
80
121
157
80
80
143
87
107
99
110
126
93
107
83
80
134
74
111
113
163
101
80
119
119
101
80
154
80
106
154
94
157
81
128
134
69
109
89
120
78
93
140
102
69
88
76
85
87
107
69
69
136
80
138
118
89
143
87
154
127
155
152
136
119
93
160
112
110
78
116
83
80
136
134
89
85
78
87
157
126
174
80
134
94
109
88
131
88
92
113
134
87
143
87
102
154
106
103
76
104
119
119
120
151
160
69
87
102
80
113
107
80
94
69
100
162
121
85
131
118
100
126
119
135
89
129
81
146
119
109
87
197
124
145
103
148
96
106
120
88
107
69
54
98
156
69
107
80
143
80
127
131
102
69
101
78
94
96
69
73
101
100
138
98
114
69
150
80
144
87
109
80
113
69
88
80
77
76
125
87
120
102
197
174
103
91
74
114
87
121
73
88
100
103
86
175
131
119
94
80
119
89
82
122
80
81
101
116
78
128
69
76
76
80
110
80
80
91
80
87
112
131
87
107
87
96
117
103
145
125
80
117
121
154
160
80
80
129
146
131
105
109
109
64
78
69
72
130
87
134
153
146
131
131
80
120
101
116
110
104
84
80
103
89
76
76
80
111
88
69
87
87
175
87
136
87
101
140
87
160
126
109
140
109
76
153
121
78
117
126
80
107
109
78
145
69
139
140
100
99
73
106
89
146
124
80
112
76
151
104
68
54
116
88
78
106
70
149
103
87
120
121
120
126
99
78
80
118
87
113
120
107
134
115
92
128
163
89
113
89
128
80
89
121
111
121
181
110
127
102
96
155
108
79
100
99
160
69
107
87
87
104
95
76
69
119
52
54
156
111
83
143
135
69
134
98
154
88
69
104
88
156
80
69
105
123
121
156
110
119
140
80
136
166
112
87
102
104
116
132
95
80
175
113
80
76
100
76
76
156
69
80
79
56
128
119
80
134
121
80
99
88
69
131
86
76
91
76
131
80
69
137
121
134
78
96
80
175
87
100
80
151
197
136
144
111
69
148
110
112
94
99
94
69
137
76
87
87
99
90
76
80
87
123
119
80
85
85
131
87
106
101
56
140
87
140
119
107
57
120
106
80
123
119
107
76
80
110
108
100
164
87
125
133
96
87
106
132
72
121
99
123
104
104
102
99
69
134
116
201
129
69
66
99
87
146
147
94
119
119
104
94
80
119
101
127
141
69
127
76
80
121
197
78
153
80
120
80
89
80
129
83
56
76
72
127
174
155
80
102
111
80
82
89
109
131
144
87
112
78
80
147
60
60
80
101
91
69
95
175
88
80
109
107
92
71
56
80
78
99
109
84
125
134
113
69
126
120
140
69
104
120
80
74
125
113
174
99
120
175
80
201
134
120
126
107
78
140
80
155
89
74
108
76
87
104
85
147
143
80
120
78
119
156
155
89
106
78
87
80
174
78
122
109
90
69
89
154
100
128
128
72
107
160
89
124
102
69
99
80
93
115
54
118
107
104
119
164
118
87
85
144
108
128
58
80
107
76
128
74
90
111
136
69
91
126
76
136
69
93
114
98
104
83
126
85
87
96
112
196
64
131
80
183
134
76
76
135
88
126
80
134
69
121
140
88
131
92
138
102
80
69
120
80
137
153
96
148
100
185
120
69
107
113
94
63
89
85
147
134
94
80
80
90
131
103
80
80
95
69
119
91
94
78
120
131
163
80
78
131
72
88
80
76
69
52
89
147
93
78
96
156
107
140
93
80
69
120
80
199
119
91
93
118
88
80
76
112
104
101
136
127
93
107
119
76
85
76
128
152
87
54
140
76
93
150
101
104
72
97
66
76
128
114
119
175
130
76
80
83
80
76
80
136
88
98
112
111
101
131
78
114
113
69
87
89
153
78
66
197
76
76
119
71
71
175
175
175
133
95
127
101
128
80
140
87
134
95
110
120
76
119
69
119
104
80
146
93
80
134
140
78
175
110
101
78
80
104
120
86
117
154
69
110
140
106
94
143
168
110
97
68
100
87
104
88
87
109
87
115
119
103
101
75
109
155
59
85
121
94
114
110
140
78
121
78
129
128
175
95
89
66
132
117
102
80
106
78
99
76
127
96
92
155
88
67
76
112
74
121
103
80
72
96
78
146
78
101
113
156
91
115
117
197
115
95
87
74
110
122
118
140
101
80
96
147
87
128
63
69
69
119
94
136
103
93
146
146
134
117
106
123
76
114
183
108
89
80
120
159
156
123
109
93
109
143
115
154
119
109
175
122
153
78
102
163
94
116
76
128
120
98
104
80
145
99
144
110
134
125
88
112
96
131
85
69
76
91
107
119
120
75
109
128
106
119
131
69
57
109
153
109
117
87
88
110
132
69
96
87
93
113
120
101
111
98
136
102
79
151
69
109
134
87
64
110
128
120
129
87
100
80
99
80
156
72
69
102
176
154
150
109
137
120
106
118
110
147
154
89
83
155
120
104
93
94
69
80
104
120
113
115
88
121
121
88
99
146
80
119
120
60
94
140
136
63
91
93
131
43
113
76
120
66
59
111
119
92
139
116
136
131
69
147
69
117
69
80
118
155
103
120
69
78
104
128
100
94
96
56
140
90
74
151
80
87
164
76
174
131
80
78
119
76
88
80
163
80
140
88
80
133
69
110
95
96
119
122
99
141
104
120
112
132
78
106
89
176
136
153
125
80
172
87
119
128
134
80
69
131
100
120
102
96
69
76
110
83
128
66
109
80
110
120
150
110
131
80
109
86
103
104
94
140
88
137
114
128
80
175
92
114
121
99
133
94
89
80
69
147
174
122
129
119
131
76
104
128
110
119
154
115
119
87
94
100
93
145
79
106
107
162
93
145
109
94
171
120
166
94
139
146
78
131
76
101
127
156
94
80
80
69
132
89
120
92
175
78
76
144
99
145
88
136
67
113
113
122
80
94
80
87
157
148
151
107
127
122
102
80
121
78
98
144
101
88
67
115
78
134
76
115
144
118
93
155
60
126
89
87
113
78
152
85
111
76
119
119
69
87
132
114
87
80
113
123
99
73
160
69
145
127
131
88
80
91
80
87
175
107
110
156
85
131
100
120
90
136
164
78
119
107
78
69
134
76
154
124
80
132
99
119
99
138
104
54
134
110
101
87
136
69
88
107
148
119
147
67
114
148
185
112
80
114
92
109
143
91
156
104
104
175
155
115
128
69
133
99
96
56
154
175
107
124
78
107
102
147
134
121
156
89
149
136
80
66
107
130
107
100
94
129
174
80
107
100
99
80
89
80
87
151
127
88
127
106
91
80
100
69
112
102
104
91
89
85
87
80
56
76
199
151
123
94
116
105
128
87
96
94
78
120
175
118
175
80
85
89
88
128
69
107
110
175
124
59
109
64
110
102
104
119
78
136
78
130
109
80
96
120
128
118
136
138
120
69
118
78
109
132
106
119
80
148
104
69
76
175
80
156
119
78
87
80
106
145
69
109
117
107
131
76
99
96
80
78
197
119
127
54
115
113
91
120
52
100
119
121
140
156
76
120
87
68
107
66
131
64
126
88
138
78
94
112
134
112
146
142
78
72
96
102
97
102
109
89
150
175
183
145
82
87
93
120
88
120
111
121
128
107
87
119
104
95
110
96
117
92
72
96
80
76
69
80
87
93
112
90
99
107
69
136
114
121
69
163
90
93
99
90
107
87
104
120
128
114
66
151
78
146
89
56
56
112
140
120
76
115
76
104
156
74
106
101
89
136
80
92
110
140
140
113
163
104
75
142
71
123
89
201
68
140
90
134
131
87
160
80
78
99
88
89
121
145
69
98
87
113
133
130
127
69
151
114
99
95
93
80
69
76
80
83
155
122
69
110
93
85
99
87
121
94
69
54
89
131
115
69
96
69
76
137
78
91
119
99
87
78
88
80
156
154
102
99
88
78
145
80
120
72
69
128
162
88
69
156
77
140
99
120
144
109
69
91
80
174
76
111
107
129
137
80
76
175
91
114
118
166
87
69
99
119
95
115
94
81
159
131
76
107
87
117
90
187
87
76
107
140
80
128
136
80
174
151
102
113
120
69
52
104
120
87
120
152
118
154
117
95
80
64
52
143
107
80
155
85
101
78
175
104
107
138
119
72
69
80
109
197
99
89
99
98
99
74
52
78
87
122
74
174
121
119
69
121
155
121
69
121
134
87
111
140
69
147
105
80
105
69
119
80
88
79
128
119
110
155
78
128
117
87
128
109
166
137
119
85
80
91
119
121
131
80
69
52
87
78
83
95
80
107
123
175
72
73
132
136
52
87
104
110
117
87
139
102
133
69
76
76
115
156
87
80
81
124
124
69
117
109
80
121
99
128
110
72
75
75
87
87
76
94
181
104
131
69
91
132
154
129
119
175
89
143
98
107
166
62
80
109
76
76
78
111
72
109
134
125
132
80
104
106
119
135
54
156
104
85
89
140
187
80
113
140
94
166
80
120
80
117
118
80
129
76
142
87
87
120
100
156
134
134
175
87
154
128
174
138
148
106
83
88
121
139
83
91
156
119
140
112
87
85
156
80
74
85
117
106
78
101
56
102
120
89
121
94
104
76
96
87
109
120
175
98
137
58
82
80
109
131
67
80
155
133
96
130
130
134
112
80
139
109
58
114
80
69
80
89
160
69
87
73
175
88
106
69
71
115
106
101
127
76
90
86
154
76
89
132
69
145
101
99
95
79
89
175
118
174
94
183
101
109
106
119
154
90
87
80
69
131
100
111
117
107
166
78
96
76
175
155
89
100
104
80
131
110
80
76
126
127
90
94
76
98
112
151
66
69
100
80
104
136
93
76
93
80
87
77
110
85
72
93
146
130
164
60
148
109
99
76
127
175
58
138
87
80
75
108
76
138
80
131
93
97
107
78
128
103
69
148
71
123
93
93
52
89
91
120
127
89
87
107
78
140
144
107
76
72
82
67
90
87
89
120
131
107
97
82
87
91
76
94
128
78
111
69
74
80
80
156
119
87
110
60
156
69
134
119
102
89
127
155
69
107
69
88
90
85
119
112
67
80
87
80
149
109
119
155
80
154
96
78
134
87
56
107
155
106
114
118
78
126
87
89
128
56
85
88
91
87
119
109
125
113
69
72
126
92
197
91
111
76
141
134
85
100
107
155
67
76
147
141
143
88
134
69
156
107
69
80
137
136
67
199
93
69
94
119
133
96
152
87
111
121
137
145
80
138
69
90
129
94
111
104
154
122
89
88
100
74
87
114
101
78
80
80
175
134
96
112
185
76
89
69
145
93
87
87
132
104
163
91
88
69
104
87
150
110
131
89
87
99
165
80
169
87
127
60
76
131
76
127
78
104
43
134
134
119
107
112
93
113
72
69
96
103
119
89
112
109
87
124
112
109
129
117
76
119
91
133
74
88
87
197
113
117
74
100
130
80
112
99
154
69
96
114
113
69
110
69
176
89
118
69
90
130
99
134
100
117
131
109
114
111
88
144
134
69
52
113
131
130
109
120
89
109
119
110
143
199
69
89
156
128
67
164
80
129
91
119
136
183
107
129
94
134
144
102
69
113
119
136
112
96
146
80
72
102
107
120
109
93
146
69
107
175
80
159
72
52
113
130
87
69
80
128
134
125
78
113
79
99
101
87
127
125
90
154
120
87
119
197
130
80
197
94
120
117
99
87
67
155
121
76
123
87
78
98
80
76
116
72
110
104
72
76
90
76
80
128
128
140
111
102
80
56
94
127
96
147
80
126
88
80
78
95
109
163
83
107
87
99
76
82
104
128
125
56
93
69
127
104
118
150
171
88
122
102
109
69
155
87
104
112
87
148
120
125
87
130
125
109
121
88
128
80
128
95
115
136
52
76
95
175
69
113
156
197
110
78
113
87
145
79
69
155
106
115
121
80
110
137
80
109
109
120
98
85
94
119
145
69
114
112
95
111
131
71
96
95
183
121
112
154
60
93
148
148
94
119
121
80
94
80
119
76
96
104
107
106
94
88
106
104
78
120
131
80
137
69
100
71
118
165
148
89
110
99
136
156
118
72
155
99
72
79
152
126
89
120
80
156
87
67
96
175
128
111
69
175
88
97
69
136
54
93
112
140
134
80
120
155
134
78
93
125
112
95
88
76
87
107
150
146
151
120
93
99
80
107
140
69
163
89
120
99
107
69
113
87
114
128
67
134
56
121
95
89
131
80
164
112
160
87
110
155
87
102
138
94
78
69
87
149
138
157
137
80
56
119
101
107
131
172
94
117
69
121
107
78
129
125
78
72
118
93
95
120
154
136
85
106
121
69
137
107
111
109
96
127
120
78
119
121
100
111
120
69
126
76
78
80
112
97
157
58
76
123
92
121
119
163
128
80
152
154
80
52
85
87
197
134
127
99
76
74
109
175
59
128
114
88
156
102
111
121
119
69
109
89
82
87
80
80
97
120
113
80
129
118
110
154
164
131
93
78
96
80
143
89
58
92
128
178
110
95
120
86
78
91
101
113
99
160
131
175
149
85
103
155
100
89
106
43
126
110
121
88
137
96
69
154
156
122
80
153
72
67
123
115
112
69
69
133
160
91
99
113
72
89
87
111
98
113
88
134
108
143
96
140
69
128
93
67
66
134
109
74
109
69
78
177
89
111
147
98
101
87
112
104
54
123
128
78
101
69
120
106
99
86
87
119
78
80
69
101
128
78
106
93
76
102
107
69
133
95
43
80
145
74
149
107
146
104
156
104
105
131
128
100
199
88
87
109
138
96
125
107
83
87
93
134
160
76
148
92
115
78
99
108
99
114
93
72
118
156
197
163
143
80
80
115
80
95
59
60
132
87
175
115
76
72
133
103
107
112
89
56
175
118
122
54
94
120
110
80
94
122
80
143
90
80
76
118
98
78
80
73
163
88
93
156
69
69
143
199
112
145
106
43
201
109
88
117
129
104
118
78
110
87
110
112
76
103
162
87
101
116
85
104
109
80
80
76
116
88
113
89
93
153
121
89
121
74
78
75
87
95
155
78
138
56
76
78
80
92
110
163
136
88
121
80
175
92
99
107
156
113
101
69
136
143
87
109
155
120
87
130
80
109
94
119
87
78
100
80
120
144
175
56
181
78
76
93
119
97
110
109
136
175
88
94
131
69
100
144
69
109
67
112
118
87
128
78
130
175
107
76
154
132
100
76
85
80
87
138
107
107
69
107
121
134
119
147
132
134
101
87
104
71
78
128
78
89
106
69
104
80
107
115
56
69
107
76
144
155
114
113
121
136
156
89
88
80
99
109
133
119
69
107
141
138
80
106
87
89
91
69
73
113
98
131
117
87
109
82
87
80
148
136
80
99
156
88
154
88
93
89
92
122
66
102
89
125
78
80
99
134
74
115
80
107
80
79
154
94
78
80
135
106
109
91
87
69
74
152
76
119
137
185
151
76
134
67
72
101
72
80
89
84
69
137
130
69
110
78
82
99
71
136
80
128
80
87
78
128
151
113
101
95
69
110
164
69
156
69
144
112
87
120
80
154
56
119
91
69
87
117
75
128
88
154
123
107
151
140
104
80
91
129
107
74
43
101
80
134
76
103
76
143
78
80
92
85
155
114
120
127
110
78
128
119
145
175
175
104
134
76
127
96
78
72
69
69
131
99
101
100
69
128
120
69
72
98
102
152
114
137
87
175
154
154
76
119
104
97
100
88
56
87
91
123
102
87
102
123
128
80
117
154
109
67
175
85
99
94
115
102
76
175
120
102
63
197
109
87
127
88
162
99
89
80
78
136
110
185
95
128
110
93
99
88
127
156
93
94
78
87
128
91
43
123
156
110
87
201
69
144
83
87
162
175
120
106
120
129
91
143
80
89
117
99
80
102
87
85
136
118
78
119
86
136
69
97
131
128
125
76
131
197
175
120
80
157
99
105
175
119
120
121
80
151
95
93
197
78
87
112
146
52
152
107
54
87
80
136
76
155
126
119
143
122
99
100
96
120
154
107
121
122
93
119
157
54
209
104
98
85
54
134
134
117
122
88
131
94
58
128
175
100
72
95
133
87
69
127
137
80
69
115
79
148
159
43
79
89
99
126
115
128
113
98
96
104
76
79
100
119
89
89
110
128
88
131
127
93
109
154
140
69
109
79
85
133
80
117
83
127
113
91
129
91
114
78
96
82
80
69
102
137
52
118
109
107
120
116
74
128
76
106
96
69
98
104
80
119
69
109
80
87
134
69
76
83
129
144
74
109
99
69
73
131
89
80
67
157
112
199
88
109
78
119
96
148
54
121
133
78
124
109
91
85
80
122
81
78
94
96
78
134
122
128
126
103
112
151
120
128
80
119
80
119
69
117
99
119
183
72
89
136
94
136
153
88
102
175
97
101
52
107
126
85
154
131
69
145
109
76
120
99
100
112
94
106
146
64
111
128
137
108
163
104
120
120
174
101
78
67
72
72
69
124
130
80
117
156
147
107
69
115
88
80
97
154
127
80
80
181
156
154
110
123
121
78
130
110
143
131
187
140
69
121
175
126
91
107
137
101
101
134
83
80
132
87
112
78
154
99
116
80
103
91
127
162
107
120
87
174
78
76
166
119
175
104
94
127
97
85
176
104
164
96
134
136
87
140
126
145
130
197
134
132
123
134
54
149
76
76
87
172
183
119
189
87
80
69
120
115
172
154
131
43
97
119
140
113
175
87
89
151
76
78
88
87
69
83
163
99
99
113
109
121
119
52
103
128
143
92
130
119
156
132
104
76
80
69
94
73
80
166
111
80
118
76
140
124
83
122
104
80
120
145
78
112
89
80
108
150
144
89
119
91
89
167
131
109
117
101
137
109
83
87
82
78
120
54
95
69
115
67
87
121
76
78
146
104
99
69
87
144
93
126
69
133
120
78
152
176
80
117
74
151
164
117
130
90
122
185
147
93
105
87
110
109
87
79
134
69
72
101
140
119
134
80
69
52
95
143
95
156
106
143
43
80
109
117
156
69
107
119
99
175
64
87
80
155
80
108
120
146
106
74
69
156
127
76
155
54
109
121
109
120
120
88
97
78
121
104
109
128
119
134
98
107
140
131
86
134
94
75
144
63
118
175
133
93
112
122
80
119
63
112
109
122
120
128
125
151
99
76
120
43
154
90
148
109
104
101
104
160
119
124
138
127
59
113
113
139
148
69
112
80
66
139
89
131
124
89
90
119
69
123
110
136
76
76
78
131
199
128
72
74
148
104
117
146
114
91
120
69
140
78
119
54
134
124
110
110
78
96
150
187
72
80
114
96
136
88
80
148
99
162
136
121
89
107
142
125
175
104
119
136
69
154
197
111
145
94
104
175
80
96
105
80
72
197
106
52
127
131
201
98
113
110
131
124
113
78
160
76
110
110
142
80
124
72
143
69
119
94
80
128
76
83
134
87
118
118
137
175
80
89
104
80
80
89
144
137
104
154
110
129
120
115
87
117
172
56
87
80
136
115
67
138
111
109
148
67
80
114
120
136
171
96
120
122
153
100
91
88
83
160
154
80
172
80
104
121
102
121
126
161
150
134
93
87
72
131
88
119
67
80
94
137
107
121
137
98
63
148
72
93
201
119
163
87
52
99
76
94
104
131
118
68
120
140
106
54
74
69
112
110
112
69
145
69
99
115
83
91
96
69
129
89
69
107
181
59
101
80
154
111
80
87
93
140
91
130
131
111
78
91
104
89
83
148
115
69
69
111
78
87
139
140
155
131
99
144
80
73
91
80
81
101
88
155
156
156
76
119
80
121
74
100
69
119
109
94
152
78
68
80
76
154
175
89
113
92
133
127
75
80
80
106
156
76
104
144
156
175
113
69
64
67
133
110
118
101
78
80
96
52
136
106
133
148
111
80
76
112
90
69
89
112
110
83
133
80
163
80
112
91
112
175
131
183
78
112
113
119
134
122
138
149
99
104
128
76
154
113
69
94
151
139
139
143
78
133
89
105
125
80
119
137
100
76
124
117
80
99
132
80
154
54
96
100
80
94
136
119
91
142
112
151
119
54
69
87
112
87
106
112
109
120
120
90
80
113
143
136
72
52
66
80
80
133
69
122
85
111
147
115
69
89
134
172
120
79
131
163
101
124
71
145
113
140
121
76
150
69
107
107
121
125
128
93
82
83
164
80
85
157
80
80
109
87
69
56
113
92
74
140
69
121
94
136
144
120
132
93
91
87
80
69
72
99
114
134
106
132
117
80
163
86
80
136
137
138
109
93
102
110
76
107
117
113
87
181
117
80
128
175
72
72
80
114
76
126
69
125
163
99
52
80
128
99
69
76
146
66
87
99
76
145
82
119
100
89
154
88
140
141
116
119
80
126
111
96
107
80
81
131
185
155
69
136
134
128
95
78
109
78
111
156
120
76
103
87
100
99
87
87
87
72
144
80
106
91
136
87
104
137
120
107
103
87
102
88
134
133
69
134
110
88
93
80
136
74
118
127
119
82
78
156
69
112
80
175
107
78
80
94
106
142
81
79
81
66
86
157
96
80
52
114
113
78
98
156
54
120
106
139
106
88
124
87
69
69
88
107
104
111
89
69
134
140
80
89
99
83
164
119
132
120
96
99
132
146
106
89
143
104
88
80
80
136
71
100
88
74
87
80
154
197
99
100
80
76
71
78
131
75
140
155
152
106
94
78
108
133
112
54
69
90
80
142
69
154
94
134
134
138
80
145
72
120
81
99
113
113
131
131
80
175
109
80
171
146
112
125
80
107
155
119
110
87
69
80
119
80
87
117
128
69
123
89
131
132
112
162
133
134
72
113
117
139
69
110
93
109
117
137
52
89
104
125
136
76
119
88
108
128
113
63
137
107
80
99
140
98
82
99
75
155
154
89
126
87
111
142
76
101
76
91
154
119
110
175
80
89
138
72
90
123
104
87
97
93
119
85
80
82
89
93
162
120
106
109
148
152
87
72
78
78
74
80
56
103
78
169
69
110
149
52
105
109
88
111
80
120
119
156
80
119
103
68
100
134
117
125
108
87
107
98
107
124
104
117
120
146
80
76
104
69
95
80
67
145
143
85
113
134
151
89
120
155
175
159
80
87
111
87
78
107
66
96
79
140
128
131
110
94
96
117
89
78
91
107
147
59
80
127
80
197
87
103
80
88
107
114
80
164
69
110
136
99
100
197
107
127
104
152
165
120
67
136
164
144
116
93
94
59
152
80
95
125
115
69
43
87
69
122
69
99
107
90
119
66
69
107
93
86
76
59
156
87
78
130
89
141
120
69
97
80
116
90
80
104
132
69
121
175
87
78
87
88
87
128
80
89
82
121
103
78
156
110
128
94
69
131
78
87
99
80
87
117
111
150
127
88
128
114
154
93
107
128
87
97
110
109
87
112
99
107
127
154
141
89
100
107
151
109
90
80
120
144
87
131
138
80
82
93
113
197
88
76
80
94
80
93
69
154
69
87
76
69
128
74
93
80
107
87
69
80
89
87
117
120
99
135
175
69
106
91
134
89
80
104
197
121
88
122
80
128
69
144
78
105
148
85
120
109
104
80
121
115
116
100
138
72
74
75
80
144
106
109
91
67
82
127
54
154
69
87
113
102
91
134
88
69
87
72
87
63
80
120
102
109
110
108
69
80
89
112
85
82
90
107
72
118
157
136
119
87
107
87
130
80
104
112
136
104
109
76
76
103
121
52
89
101
121
80
95
69
69
87
72
122
132
69
87
78
98
106
78
80
128
197
74
85
59
175
106
104
79
80
88
129
122
163
115
109
93
127
120
113
136
128
104
91
154
154
96
69
127
128
103
101
107
120
83
96
96
99
144
119
118
151
76
154
75
107
106
87
113
80
128
87
153
76
101
101
80
72
113
107
128
144
89
98
154
100
89
78
87
80
127
128
88
102
110
121
120
175
127
69
101
143
93
122
111
156
140
132
109
128
87
107
78
101
123
78
111
78
80
109
110
128
119
93
148
99
98
83
76
148
117
156
99
146
140
107
82
103
174
91
131
108
134
102
87
124
108
104
69
80
130
96
89
156
87
149
140
144
116
90
118
111
69
146
60
115
76
140
111
140
140
112
122
67
64
134
89
174
72
78
69
66
154
94
75
78
76
69
101
104
120
93
112
128
133
145
80
80
107
128
140
87
137
81
197
113
128
147
101
132
87
119
104
94
72
83
87
143
134
106
143
81
99
99
109
69
86
99
115
151
99
132
136
90
113
80
100
133
88
89
109
131
149
125
103
175
80
69
76
137
81
99
78
107
80
80
87
154
134
130
87
99
89
119
110
96
69
107
157
85
87
99
99
154
80
154
104
87
69
140
169
104
119
69
143
113
132
66
99
117
137
104
106
101
94
76
103
154
88
69
131
80
52
78
137
139
96
69
95
100
80
69
80
72
129
75
155
94
132
87
80
87
91
100
150
111
199
80
107
161
104
80
154
90
63
134
123
120
154
100
120
122
115
120
94
148
106
75
119
163
80
78
125
181
101
54
105
83
154
134
94
89
156
132
91
99
132
87
154
76
69
106
115
80
104
101
68
139
121
76
156
72
128
106
163
152
131
119
80
117
136
76
93
136
78
69
149
131
94
77
83
120
106
109
119
58
125
145
94
89
104
74
80
99
136
143
78
107
69
87
122
123
112
119
69
111
73
107
113
113
113
94
154
76
85
104
69
134
80
82
99
134
69
99
112
140
80
80
80
154
131
69
99
111
120
89
102
80
119
80
100
74
107
175
107
128
129
154
147
72
111
151
76
78
98
85
69
116
78
151
87
69
139
91
110
106
88
134
104
69
119
138
132
109
121
110
128
76
74
98
121
91
144
69
111
105
116
119
117
119
122
69
121
80
109
112
88
78
69
87
163
85
92
80
69
78
83
148
88
169
100
144
155
95
106
94
119
80
80
134
69
69
131
131
69
87
98
100
90
110
81
74
90
121
81
76
54
154
80
87
102
88
80
98
106
136
115
114
121
80
175
107
78
151
54
98
91
106
78
78
101
107
78
182
72
115
104
74
93
69
102
69
107
89
59
136
111
117
134
141
107
43
93
69
94
112
59
78
72
95
119
69
140
105
93
110
128
109
127
80
76
69
136
102
75
117
109
132
69
121
146
89
92
76
113
144
156
78
114
106
113
89
80
166
112
134
154
137
91
131
80
93
134
143
87
103
80
154
93
115
163
110
136
74
80
116
78
89
127
154
59
101
140
93
136
54
118
76
124
115
122
139
94
78
154
87
78
109
89
123
75
164
93
120
74
134
104
96
89
154
78
69
88
102
141
80
91
80
109
76
136
89
117
136
112
120
89
93
175
80
80
80
80
88
143
74
122
87
148
121
112
84
74
134
78
88
74
145
117
164
43
83
69
88
155
69
137
87
130
80
109
106
107
134
107
110
80
69
171
110
120
125
104
69
125
69
112
101
90
151
76
89
113
94
128
80
78
131
155
151
93
89
68
155
154
80
112
115
136
119
128
54
138
76
80
107
164
175
128
85
150
121
108
136
124
76
160
128
75
89
87
92
111
136
72
56
128
78
120
181
110
69
156
134
136
80
58
101
91
87
80
78
156
94
69
141
106
69
76
93
137
78
80
127
80
99
119
91
118
133
175
134
78
183
133
112
69
140
59
68
80
135
102
99
120
155
88
87
100
75
120
52
72
120
69
52
131
80
69
101
88
121
76
145
85
80
69
106
107
87
151
88
80
85
80
122
99
119
164
144
76
89
87
107
93
136
89
124
80
110
69
76
85
58
119
126
118
104
112
88
82
129
175
88
80
89
87
109
119
110
98
113
135
137
83
52
107
80
148
87
119
85
129
117
197
139
76
106
69
154
91
181
126
128
118
87
120
98
131
52
99
78
112
90
87
151
69
146
114
136
174
76
91
199
94
128
105
152
134
72
106
94
87
106
113
89
88
83
120
69
120
87
121
129
89
107
106
95
131
76
111
104
112
145
72
92
122
87
59
155
131
89
69
120
87
87
89
93
112
154
97
125
150
152
80
120
119
121
85
140
112
69
119
54
78
69
120
113
110
147
80
110
134
89
117
93
109
99
123
160
96
99
76
138
128
201
100
54
78
128
99
69
77
112
140
131
100
109
113
100
80
80
132
117
87
199
101
80
76
69
80
120
119
81
104
106
78
98
72
175
127
120
84
175
80
99
72
134
69
119
104
88
104
154
119
92
197
136
66
175
166
133
145
88
89
80
99
125
81
118
139
121
80
114
96
82
100
124
89
131
110
131
187
91
136
142
90
94
122
148
136
52
175
121
80
102
175
69
87
109
153
76
78
69
80
114
119
107
78
99
78
154
121
69
113
140
107
109
146
71
83
131
155
80
107
76
76
87
115
88
96
117
110
69
107
110
69
152
118
106
115
78
99
94
80
80
140
98
80
88
175
157
117
87
69
98
141
93
99
108
87
155
78
106
67
146
136
87
140
119
80
133
134
140
102
80
87
80
183
101
136
80
123
162
80
146
120
118
175
80
93
119
112
197
69
78
87
134
107
131
76
107
132
76
128
76
52
129
60
106
80
113
96
163
127
99
89
110
123
117
119
120
95
163
96
78
113
154
106
174
80
155
88
91
107
88
98
69
131
151
115
88
74
80
78
52
127
99
100
101
101
88
110
116
102
132
106
118
108
99
117
111
106
113
78
146
99
175
72
80
120
78
52
88
136
107
94
107
69
106
88
119
127
151
154
117
90
107
69
90
92
76
91
78
69
72
113
52
109
124
115
107
80
91
87
156
91
185
83
119
155
113
109
109
183
76
87
78
136
80
113
144
119
110
110
85
119
96
154
94
78
118
127
78
80
106
145
107
109
69
118
164
131
71
101
104
87
162
74
94
88
119
104
69
113
69
87
91
107
80
94
144
175
133
66
76
119
109
87
80
80
128
69
87
155
145
152
78
120
120
80
66
93
93
93
113
197
99
78
94
112
80
106
76
69
114
136
78
89
140
106
125
76
107
119
78
107
91
96
78
116
93
94
113
69
69
110
93
92
85
80
131
127
137
76
117
78
99
69
99
119
83
136
80
88
117
137
94
80
134
80
69
107
87
122
104
74
149
120
87
76
120
80
106
120
119
127
93
115
88
122
92
69
74
121
76
129
113
80
96
103
69
156
91
107
119
122
151
164
96
137
76
129
107
102
197
113
94
80
119
109
112
107
128
107
98
137
113
151
85
128
143
69
120
121
94
151
136
113
143
127
92
132
72
99
80
69
69
78
154
78
122
107
101
156
80
103
116
80
89
136
80
76
130
121
122
76
164
99
137
119
76
76
101
107
120
136
80
163
112
127
165
104
80
131
123
101
100
106
78
93
102
155
57
91
100
113
69
111
136
120
154
115
100
110
69
118
121
80
120
80
76
120
60
69
110
106
94
115
72
80
119
156
69
98
76
109
88
122
131
78
90
120
98
69
99
91
74
154
80
69
117
118
131
107
87
154
114
142
145
94
107
133
87
109
66
128
164
103
107
69
151
104
98
107
121
101
121
172
88
76
117
54
120
87
85
104
177
119
107
78
150
115
112
74
94
80
76
152
107
60
197
119
78
66
94
98
93
163
155
79
102
80
78
123
120
87
76
117
78
128
80
80
80
120
134
99
169
106
131
101
91
120
145
80
87
88
110
79
94
175
123
156
109
104
89
80
88
181
138
101
120
117
69
88
119
113
114
154
119
127
99
156
92
102
156
78
69
73
113
78
69
103
122
69
132
78
119
119
156
124
80
137
128
114
104
92
107
136
145
136
76
119
157
69
113
64
107
115
102
87
175
80
175
69
90
102
87
109
117
128
106
119
128
110
109
112
145
121
74
69
175
80
80
69
154
80
143
140
104
134
137
78
113
78
112
93
76
110
78
148
119
137
197
69
107
160
128
136
104
89
121
142
80
72
175
117
112
121
108
151
87
75
87
101
119
60
117
94
165
155
85
143
72
125
151
93
140
127
95
64
89
126
87
80
112
69
94
69
80
145
134
117
72
68
80
80
97
93
123
102
99
115
118
87
134
69
87
156
100
112
94
110
113
154
115
80
122
128
110
87
146
128
110
115
121
80
87
145
127
78
119
74
144
126
80
102
122
115
87
136
89
69
132
88
69
80
119
175
94
116
80
107
145
80
197
120
72
69
94
80
78
78
69
104
126
107
89
80
99
103
88
141
143
99
99
104
94
54
120
116
107
76
98
96
127
54
88
128
156
83
80
74
82
87
131
88
151
94
120
131
122
89
98
128
127
130
113
102
123
109
69
69
76
119
78
94
80
100
120
104
80
121
143
94
91
87
172
69
79
122
91
97
118
156
154
94
119
78
84
112
78
126
119
100
89
143
78
104
94
80
88
128
94
80
80
143
117
137
151
94
112
129
72
141
85
126
76
100
109
80
120
80
78
89
96
109
172
76
112
79
143
87
80
99
119
119
76
107
80
111
113
154
154
123
75
113
83
154
117
148
131
98
99
199
88
84
119
99
101
80
87
151
143
109
94
104
114
85
117
143
69
130
150
93
109
109
87
107
87
94
88
154
78
69
69
146
96
104
80
78
83
63
112
107
166
99
52
78
175
90
127
100
112
113
87
87
120
197
99
109
98
113
128
104
90
94
137
78
96
79
107
119
76
155
101
175
100
89
107
154
138
93
131
69
119
120
78
54
87
120
126
141
69
89
127
87
140
123
111
54
134
148
146
117
120
91
140
156
128
134
123
117
110
154
69
69
87
137
120
76
73
118
43
98
100
154
80
69
89
76
80
117
88
139
113
115
104
146
100
94
111
120
80
72
78
138
72
90
72
69
78
87
43
132
120
74
100
69
106
131
88
163
96
126
154
124
155
115
132
80
137
156
126
89
89
91
107
75
201
156
119
93
128
110
147
91
110
88
72
60
137
154
139
117
99
72
120
76
69
174
133
107
140
156
96
99
75
154
142
89
80
91
133
87
109
112
78
106
113
76
76
145
76
96
128
88
69
76
134
99
88
123
137
100
78
162
117
122
138
76
107
52
130
125
80
136
109
127
80
148
110
82
80
87
131
80
127
107
88
103
145
87
125
130
80
133
140
132
85
127
124
109
93
75
134
122
88
197
120
104
113
115
99
80
127
126
120
119
143
117
143
78
69
115
74
87
78
81
120
113
107
149
109
118
156
91
140
72
119
175
88
101
137
87
122
80
94
154
147
94
115
131
134
124
175
96
120
85
122
134
94
76
74
80
117
80
120
69
94
131
104
119
89
91
76
120
91
76
149
80
102
76
111
114
75
101
120
118
136
120
113
64
104
78
72
178
78
72
80
88
69
145
78
80
80
74
99
113
106
89
146
99
147
128
94
119
87
66
87
109
117
80
96
87
118
64
76
99
87
134
122
104
76
78
104
96
68
96
169
68
103
76
137
146
67
98
163
88
97
142
187
143
93
79
99
92
128
130
66
71
95
120
66
107
69
107
94
107
138
107
120
101
80
79
80
87
78
101
85
120
120
134
52
107
106
110
106
87
152
76
130
118
43
94
108
116
74
118
154
84
183
72
88
197
175
54
141
103
99
80
80
183
134
69
74
154
89
88
78
80
175
87
87
80
151
94
119
89
69
155
69
104
107
72
111
110
154
78
134
99
107
113
78
56
74
96
133
112
174
86
128
158
115
169
175
117
144
107
154
56
67
156
92
75
119
82
114
112
132
164
120
78
69
94
137
90
155
156
89
69
87
128
69
156
80
105
120
69
78
124
72
88
151
89
119
158
91
88
114
71
83
75
108
75
156
113
136
52
138
104
114
88
54
136
80
78
89
69
88
80
120
88
121
134
62
109
80
99
140
101
121
80
101
99
121
117
76
148
140
69
87
120
80
76
128
80
123
117
110
110
93
118
104
69
119
129
91
80
90
115
117
80
74
154
96
145
149
167
120
94
95
87
99
107
98
113
80
175
76
80
110
74
91
80
93
80
143
80
89
69
114
120
165
136
109
120
115
52
119
159
81
80
99
101
98
89
100
151
154
127
76
83
119
122
133
107
99
72
143
154
156
88
175
133
119
105
155
80
134
69
154
88
111
99
82
117
79
80
88
84
90
163
98
115
76
95
93
112
110
78
104
104
80
175
88
155
154
155
80
119
82
154
112
109
118
99
119
89
137
104
97
80
88
104
110
117
131
80
119
87
96
102
109
87
78
119
118
87
87
137
78
91
113
95
52
90
78
145
117
89
129
69
127
101
93
100
79
155
131
101
80
128
109
105
111
137
69
145
99
69
106
83
114
76
154
126
80
67
87
143
106
107
136
128
161
52
89
69
95
161
163
129
96
154
78
142
110
136
80
154
113
174
80
134
72
163
69
69
78
197
78
157
134
76
128
76
124
69
160
185
131
76
124
93
80
122
69
150
121
128
155
87
76
80
91
131
86
119
69
140
127
111
87
155
136
91
117
117
94
140
103
113
99
153
106
76
117
89
78
104
145
96
104
72
107
96
69
154
58
87
156
144
128
142
119
141
121
91
89
119
88
104
115
69
124
124
87
120
114
80
92
117
72
93
106
131
133
69
56
69
114
157
78
125
109
119
80
87
125
89
111
80
93
156
109
112
127
69
166
120
121
175
88
104
43
102
80
115
127
117
89
107
111
136
80
127
197
89
109
119
129
72
119
106
119
151
76
107
87
199
112
119
130
89
120
111
128
107
76
87
56
94
80
72
142
140
80
104
133
72
132
123
80
121
80
69
136
107
134
64
121
134
121
90
83
116
89
115
88
137
113
96
197
131
67
175
153
156
80
88
143
87
145
132
76
94
109
115
69
137
120
127
119
149
88
109
127
108
129
80
120
80
74
103
155
87
120
110
101
110
140
80
69
98
133
109
80
93
112
134
105
205
78
104
69
129
129
87
87
199
87
111
197
151
113
199
146
87
71
79
115
147
121
107
115
78
89
80
175
97
134
78
131
56
78
163
80
107
120
93
112
80
121
128
78
121
106
74
126
118
103
160
140
175
139
128
105
107
113
80
98
54
91
80
122
127
91
58
110
87
89
76
83
151
78
69
98
100
69
172
87
107
74
75
89
80
166
83
69
69
87
133
71
131
69
131
122
128
76
72
110
81
63
91
69
117
104
115
89
78
78
138
175
88
103
155
163
76
124
120
80
69
69
106
98
130
69
80
119
107
74
140
132
154
91
93
89
76
145
76
76
69
109
102
107
120
121
93
176
100
149
157
80
112
74
104
101
151
80
80
80
113
133
112
80
66
89
78
80
72
133
94
109
91
154
111
129
145
102
119
90
128
96
78
113
78
156
80
109
154
76
154
85
89
106
126
144
131
107
110
151
80
104
132
80
76
156
157
117
76
136
87
56
106
145
114
131
89
100
90
96
109
97
99
69
85
104
87
104
146
175
87
80
89
134
146
76
91
69
76
121
113
104
143
107
119
99
69
80
80
78
88
80
121
112
54
141
113
129
91
175
98
111
118
107
118
94
73
132
59
146
67
134
69
94
94
80
121
129
136
120
128
99
80
149
69
117
100
175
93
89
102
94
104
93
156
121
88
66
69
181
76
69
134
80
78
146
78
72
146
93
127
99
80
106
104
154
94
80
87
146
175
134
107
69
76
140
94
56
117
67
132
89
69
93
89
139
69
69
78
121
119
123
91
125
80
119
107
113
80
201
78
123
148
88
69
147
69
76
83
113
89
96
88
96
115
109
152
97
94
143
154
113
113
163
112
91
86
128
107
148
117
147
127
88
112
130
107
124
56
85
132
80
90
80
76
109
134
71
123
119
129
88
174
163
80
91
115
131
117
119
145
66
69
120
54
147
119
78
129
107
116
121
169
88
133
117
99
114
69
156
107
137
80
136
89
93
119
80
114
106
77
131
145
88
134
156
110
93
78
91
72
96
136
110
126
156
83
128
117
69
99
154
122
137
101
164
76
132
87
169
113
101
72
78
72
80
119
80
140
87
69
69
107
140
100
69
91
102
96
130
134
109
106
129
80
80
154
109
143
104
83
76
80
117
80
127
69
91
52
87
106
90
128
99
80
76
100
146
129
94
148
100
87
111
125
91
108
153
119
101
129
87
76
163
107
131
155
93
60
127
52
133
120
85
121
80
106
175
100
127
80
100
147
80
147
80
118
78
80
90
154
150
110
196
80
83
89
149
76
142
124
110
120
110
115
83
120
118
80
123
102
80
110
80
104
135
121
119
136
106
69
88
131
93
137
123
87
123
166
123
107
76
75
96
122
91
87
119
69
104
121
175
43
69
80
137
93
120
133
87
95
113
87
119
145
91
120
78
175
96
78
113
110
120
174
117
110
130
99
52
76
94
90
110
87
94
52
129
107
110
80
78
99
87
129
78
91
117
128
69
197
69
95
141
134
99
72
145
155
113
175
114
150
106
115
117
87
174
52
89
120
104
79
85
156
104
154
106
74
87
107
119
114
147
127
76
100
56
148
63
145
119
89
91
76
111
194
98
134
93
78
128
76
101
76
80
87
111
76
114
102
83
87
120
100
80
131
107
80
100
91
76
104
88
201
154
117
89
108
56
96
154
183
75
157
197
175
88
174
118
156
131
69
80
88
80
127
119
119
78
112
91
140
145
100
80
111
115
95
88
74
87
88
80
87
88
151
134
89
92
107
88
90
69
94
151
144
76
80
109
163
154
183
80
94
89
69
137
83
76
96
127
80
73
117
119
109
78
102
74
139
175
87
197
104
111
120
90
131
94
101
87
76
78
80
109
164
69
76
70
87
96
111
73
63
109
131
80
76
72
120
197
102
87
156
127
79
54
78
100
89
145
175
107
78
98
107
154
80
119
80
69
76
129
125
131
114
136
76
93
197
69
124
154
140
100
137
89
109
183
154
87
57
104
87
134
163
112
134
131
87
80
119
67
120
76
114
85
123
87
153
113
145
69
123
107
69
117
109
101
87
118
89
52
109
80
121
119
78
87
112
119
89
114
96
120
119
74
126
87
76
109
109
136
80
156
80
96
119
76
99
88
93
76
151
78
99
98
94
80
74
121
114
118
123
87
100
107
96
69
128
88
113
80
80
120
56
76
119
110
80
146
87
80
142
88
112
101
78
90
76
151
155
78
101
119
88
102
126
120
80
80
119
69
93
113
128
115
80
114
100
87
78
80
131
80
87
91
76
172
125
85
128
96
104
95
106
116
144
131
120
88
81
69
69
102
69
69
69
91
80
87
96
80
109
80
156
99
80
115
121
119
110
175
197
68
110
87
114
80
106
78
87
128
69
175
111
80
115
80
119
138
128
88
106
134
110
54
119
120
120
85
87
119
83
137
160
94
78
107
104
88
91
54
183
95
100
107
106
96
160
117
119
88
69
132
105
89
159
127
127
112
140
100
88
149
146
78
89
74
91
110
80
104
80
111
80
100
73
91
100
87
128
117
101
89
76
97
89
199
56
72
127
92
69
129
89
113
115
80
69
67
79
78
118
115
131
80
175
117
101
80
102
89
138
144
143
154
107
120
106
102
112
94
89
120
175
146
115
85
131
123
98
96
96
80
69
146
80
121
78
127
112
103
94
104
72
56
134
128
136
129
121
134
113
78
121
106
80
108
132
118
88
102
89
89
76
91
113
134
87
78
136
84
80
93
128
130
76
160
69
113
172
99
90
80
85
175
69
145
88
120
96
69
121
175
89
95
130
112
148
79
118
119
120
126
87
175
52
121
128
155
126
92
80
100
100
94
66
120
54
87
152
87
175
80
147
80
76
99
107
80
126
89
194
119
124
89
106
119
76
69
83
85
76
79
80
136
92
80
131
78
107
126
111
112
96
82
119
118
72
134
145
94
111
154
83
122
151
94
76
120
79
99
96
139
94
93
150
69
106
154
109
54
154
76
72
89
97
107
82
76
113
120
107
89
68
80
100
120
74
107
87
97
102
142
80
78
69
100
56
120
123
88
104
143
88
88
97
136
87
104
122
91
119
101
80
106
197
155
151
117
116
156
74
69
89
76
114
93
128
117
125
144
119
99
118
136
87
94
104
143
105
99
160
96
95
136
133
94
87
131
115
134
100
80
114
97
140
76
78
71
146
147
102
130
74
89
80
76
140
76
94
80
125
131
106
122
80
120
151
100
136
135
120
87
82
76
101
103
67
85
120
114
67
109
154
104
121
128
76
119
67
131
134
91
78
80
118
111
109
117
131
152
119
138
129
126
75
56
69
83
87
76
110
132
117
105
74
78
110
92
99
151
127
160
117
69
128
109
131
136
144
125
109
89
76
109
89
89
175
76
118
52
126
89
104
140
163
159
137
89
106
175
145
91
172
175
104
107
89
88
72
69
146
78
89
110
134
140
98
115
94
172
94
99
73
95
107
100
109
101
69
87
101
100
99
101
88
89
70
102
160
136
96
133
114
128
122
140
109
107
109
152
69
113
90
76
89
109
119
107
146
107
97
154
94
120
72
96
80
128
87
85
160
127
76
121
110
88
69
93
109
69
119
120
115
120
89
151
80
128
163
133
91
87
101
109
131
119
94
110
78
87
110
69
133
104
108
91
145
88
91
119
140
83
75
154
67
78
74
78
109
110
128
87
69
82
79
134
80
76
106
83
69
136
155
163
67
131
120
78
154
99
109
152
91
78
109
54
99
147
56
109
119
104
73
114
163
87
154
109
69
64
119
154
144
119
121
145
95
119
101
107
87
110
117
107
149
104
69
80
115
87
106
136
134
99
127
80
107
103
76
102
43
94
85
80
98
145
145
144
82
96
130
136
174
175
175
100
110
100
137
163
119
134
69
109
67
87
98
128
154
113
80
106
137
155
74
78
144
156
87
80
85
72
156
93
120
104
137
120
101
76
104
124
80
80
56
175
82
74
100
128
140
87
94
113
87
80
109
67
197
63
98
78
78
112
88
128
107
157
93
103
80
145
156
155
80
89
79
185
80
78
128
112
155
112
126
148
112
99
80
76
128
131
54
87
76
119
109
165
119
94
125
146
166
154
76
151
90
113
123
78
141
87
104
133
78
83
127
132
102
80
59
129
102
126
69
74
89
127
75
104
80
175
87
110
80
101
78
143
89
124
134
162
164
76
130
175
115
117
75
93
94
96
78
125
137
111
163
110
80
69
130
94
80
165
111
111
101
69
122
100
117
122
143
69
156
76
128
76
137
119
134
104
128
78
154
110
98
115
88
131
52
91
80
80
104
119
122
80
102
162
80
106
88
115
146
109
175
107
97
52
117
128
80
107
87
87
80
106
87
110
72
134
110
80
174
69
110
69
91
120
76
110
93
91
69
156
109
69
107
69
147
99
52
76
80
52
114
69
99
115
160
69
128
164
100
69
109
103
80
100
131
99
99
131
96
104
76
175
82
72
80
87
100
69
106
112
100
89
170
146
175
78
80
108
89
80
87
166
76
90
116
175
69
183
127
132
78
69
78
106
73
80
69
72
128
185
120
140
126
156
78
126
111
107
119
121
80
87
146
69
136
78
162
132
80
131
80
132
131
100
147
127
100
101
80
102
110
69
90
80
202
80
110
115
52
78
113
109
124
113
112
87
132
72
88
69
153
69
91
69
98
72
107
94
94
89
69
149
60
117
154
134
109
171
76
174
121
154
111
76
87
100
166
120
154
146
99
110
93
72
141
78
107
69
80
128
91
120
87
131
147
80
150
78
78
151
88
76
80
80
109
91
127
101
164
164
74
121
113
69
87
83
84
99
119
175
109
137
143
136
69
119
72
87
101
78
78
89
134
90
112
130
90
83
109
88
128
148
80
96
125
154
88
155
183
104
127
80
80
88
80
175
119
56
99
56
99
102
140
52
75
99
72
78
116
134
89
103
197
64
100
131
87
125
131
80
123
94
155
87
93
107
104
91
69
121
69
83
89
175
121
107
78
76
78
94
117
109
128
80
154
91
100
112
72
109
118
101
139
112
69
98
101
94
137
119
80
74
107
128
126
67
87
69
119
124
130
69
109
115
102
140
88
99
96
106
88
145
137
131
137
117
77
122
88
112
87
80
107
154
110
107
103
89
100
157
72
160
103
76
76
69
80
211
140
76
69
76
91
155
109
69
103
76
115
101
104
131
87
64
131
76
151
131
87
94
69
87
159
119
185
87
63
87
89
154
72
140
112
156
107
175
109
155
69
69
80
152
155
146
90
76
149
91
134
178
113
93
78
140
80
136
121
101
154
80
98
69
110
76
106
94
134
85
106
88
102
120
72
120
87
103
137
119
80
88
72
90
111
113
100
76
87
80
175
127
124
76
148
106
155
155
109
90
90
114
87
102
69
78
129
134
85
69
72
78
69
143
156
107
143
76
110
88
106
136
89
128
107
96
80
104
119
106
94
105
155
129
69
91
120
122
129
92
89
146
109
106
136
112
69
76
107
109
87
117
142
140
69
72
140
120
91
75
106
104
75
197
88
69
109
174
87
94
69
109
120
100
120
137
85
119
104
106
93
119
99
137
75
140
66
78
87
91
85
80
80
160
78
66
131
113
72
115
91
76
120
136
111
97
125
69
71
127
78
113
125
78
115
80
76
160
80
80
154
128
130
89
128
80
161
121
134
93
151
155
69
128
80
99
76
113
111
155
102
88
117
99
93
96
123
123
154
111
104
155
99
120
80
176
67
144
76
69
175
175
87
74
90
109
109
156
80
80
80
91
69
87
78
138
90
87
119
80
100
140
154
156
143
136
106
69
107
130
131
119
80
107
85
67
108
98
141
99
164
86
88
113
96
79
78
122
119
128
131
88
126
93
208
112
104
80
78
64
115
86
76
154
174
78
90
102
69
175
78
80
97
69
119
80
146
82
80
105
94
103
106
96
59
118
78
99
87
72
106
106
134
131
69
120
174
100
136
107
154
126
112
80
113
122
76
69
156
123
87
119
87
134
164
85
100
106
164
76
78
100
113
52
84
199
117
131
101
145
100
91
120
72
131
120
80
149
88
119
122
80
80
155
118
120
80
199
88
88
98
117
96
69
156
131
78
99
132
145
75
87
100
127
88
75
127
175
144
146
69
69
93
96
85
131
117
96
133
100
126
109
155
85
131
148
76
113
121
97
88
95
163
80
80
119
143
83
117
156
80
127
127
76
104
155
136
110
106
69
175
128
99
134
128
78
134
54
107
119
107
111
72
131
112
103
109
126
87
128
115
67
69
69
106
119
80
92
138
71
113
69
160
112
137
176
146
106
109
69
94
99
81
72
144
140
101
103
163
76
112
98
128
147
124
175
115
140
197
110
69
119
127
78
94
112
101
119
131
155
128
153
97
106
115
92
89
80
89
69
113
105
80
187
128
69
80
151
74
80
112
69
137
118
128
104
75
76
91
100
71
141
80
121
111
90
145
74
113
52
69
98
54
120
75
117
123
130
143
78
119
87
119
100
175
134
156
78
106
78
104
186
128
96
106
124
102
54
134
111
80
88
119
123
87
113
100
89
113
121
154
99
160
91
137
80
153
74
115
80
134
88
80
87
185
154
114
119
131
78
107
134
76
117
78
88
80
128
87
83
125
93
69
98
117
80
101
102
96
110
69
80
87
109
69
197
136
78
80
52
106
151
140
100
94
54
93
127
110
52
80
69
136
74
147
94
80
87
80
94
69
112
74
113
120
107
140
69
128
120
80
78
120
74
88
174
78
83
143
69
107
80
152
102
78
78
69
54
76
99
109
78
69
69
120
80
147
131
78
95
137
80
175
110
76
138
118
91
159
69
119
69
76
120
94
87
143
154
80
136
93
69
78
69
87
110
147
78
144
76
122
69
82
134
93
91
99
119
93
85
119
144
143
117
106
102
151
121
107
80
52
134
102
78
119
144
56
99
120
117
175
76
102
110
99
78
80
78
143
69
101
97
94
128
101
132
175
83
115
112
75
151
160
98
78
99
99
142
112
80
80
88
52
107
148
90
54
120
154
98
115
98
110
69
175
110
97
113
136
69
94
93
146
149
69
80
118
134
151
90
106
175
139
80
99
69
118
69
115
125
96
90
115
99
80
89
119
151
78
88
99
80
175
175
98
118
88
93
80
126
148
79
109
154
137
88
54
80
96
164
80
91
128
136
72
131
115
175
69
143
88
99
93
155
160
80
71
126
151
163
74
109
100
96
107
85
137
99
78
80
197
80
98
80
117
72
115
89
117
64
88
78
118
175
112
54
134
76
154
121
174
100
80
76
80
78
72
120
87
175
79
87
119
69
120
88
69
80
93
66
80
131
154
69
129
136
131
87
80
156
107
91
120
80
96
111
66
175
94
160
72
122
119
183
120
175
73
80
121
147
104
133
90
109
87
118
97
175
87
131
99
117
59
104
114
110
114
107
175
80
119
72
175
107
96
69
113
128
117
154
58
126
87
119
69
88
87
137
95
109
76
130
122
74
156
121
69
107
121
152
142
112
120
76
112
175
117
112
137
56
102
107
87
106
119
128
127
78
148
133
121
67
113
142
95
160
107
156
74
80
78
144
119
127
118
128
82
69
107
138
67
117
134
139
80
149
99
76
128
150
117
80
174
96
92
102
108
112
125
80
143
136
66
109
125
144
121
94
110
197
120
134
120
155
110
54
114
76
69
101
93
91
113
134
120
69
119
98
104
148
76
76
76
175
109
87
137
78
88
137
95
107
80
76
80
96
98
99
80
80
98
80
109
112
69
107
78
54
87
119
109
99
76
123
154
113
69
62
69
94
143
107
90
85
120
128
121
76
122
80
104
69
102
87
140
80
110
163
121
94
74
87
80
69
90
100
102
131
130
80
74
101
74
64
109
69
92
71
155
107
100
110
80
119
87
74
119
129
115
87
185
151
140
112
89
78
118
126
89
109
92
69
87
110
93
156
69
95
120
80
80
122
127
154
87
111
72
110
97
112
175
80
93
119
80
100
104
119
175
123
127
87
80
160
120
119
120
120
143
151
99
76
112
129
95
110
68
124
78
120
143
109
82
117
69
136
76
99
76
91
127
132
118
130
84
92
140
76
87
78
133
127
89
117
94
69
52
118
112
109
80
136
124
69
94
69
69
94
107
93
154
156
131
128
106
100
201
112
115
89
113
69
110
122
156
80
120
113
110
131
52
105
127
85
69
98
131
137
118
89
110
108
169
123
116
88
80
78
100
117
98
175
78
109
80
72
69
94
135
69
69
100
130
88
120
120
137
119
113
69
80
98
80
175
94
69
135
101
107
56
88
80
120
87
111
136
100
154
100
72
69
119
109
80
137
111
80
128
114
87
110
163
118
99
91
188
80
80
69
80
69
69
131
96
94
95
60
87
99
76
80
80
97
76
121
80
99
94
93
80
121
128
89
69
87
88
134
88
80
92
120
80
76
166
119
78
112
69
76
54
80
101
106
104
87
69
79
99
72
146
136
93
109
119
127
126
69
90
123
85
79
119
121
72
127
110
80
80
178
121
95
119
80
63
146
153
87
80
131
151
112
80
76
90
66
73
69
87
78
120
160
136
89
102
112
128
94
131
78
96
175
103
104
87
106
87
67
85
120
106
94
100
80
78
140
80
80
107
89
185
120
175
103
89
69
80
169
88
154
117
143
107
116
151
80
87
103
89
127
78
175
120
104
89
89
140
151
154
58
80
80
103
155
87
147
102
121
111
80
118
144
106
120
134
106
80
119
78
115
69
175
80
142
110
156
109
80
79
155
76
78
78
128
80
87
89
132
176
95
78
80
117
134
120
111
72
140
109
113
85
102
126
104
138
43
136
120
112
164
109
78
119
175
80
120
134
68
136
160
69
85
78
96
76
102
134
89
91
99
78
80
121
80
131
137
79
136
138
80
96
76
156
117
113
80
91
132
76
132
134
87
80
69
104
101
119
118
96
69
80
78
152
110
87
76
121
118
131
69
69
107
107
76
122
88
80
153
78
69
128
80
119
88
119
80
107
94
69
107
148
183
74
162
109
140
80
89
89
102
89
133
109
119
119
72
124
104
94
102
136
123
93
107
106
74
101
113
72
144
52
131
134
125
52
98
102
87
72
107
99
131
80
87
56
94
136
149
128
117
134
106
165
94
109
136
80
109
80
80
129
141
87
76
87
115
106
80
140
107
108
126
107
128
90
69
150
145
117
69
91
97
118
89
123
88
87
155
133
103
96
183
88
80
99
154
87
136
101
107
156
130
98
99
92
90
119
91
120
69
128
85
140
96
102
107
155
60
88
69
115
148
119
121
80
72
121
110
88
119
69
68
119
163
94
147
154
150
137
91
67
121
106
137
85
120
150
104
80
113
128
122
80
134
117
120
85
69
119
159
110
69
100
95
154
92
106
196
87
111
72
131
107
106
120
106
89
113
122
132
92
111
69
94
104
88
69
69
87
113
78
80
128
123
120
94
146
163
89
107
93
80
199
78
87
87
136
147
134
85
63
151
137
94
128
162
78
105
93
80
113
147
91
78
147
117
87
126
98
69
120
107
108
121
109
112
157
98
118
80
91
123
134
113
81
119
121
69
115
113
110
195
120
80
80
107
78
99
145
117
137
209
66
99
72
87
134
80
140
80
89
136
76
131
131
76
109
147
120
102
154
126
87
134
148
128
83
138
93
88
72
132
95
80
80
77
69
120
145
89
87
80
89
143
74
147
153
69
117
117
175
156
87
99
156
99
87
107
101
96
120
74
199
111
209
80
88
69
104
71
59
109
89
80
96
101
83
122
80
144
80
88
87
145
106
133
109
80
115
101
88
197
105
101
54
175
85
134
99
76
112
137
109
78
80
80
80
115
130
163
83
57
134
80
197
76
117
80
110
175
120
80
76
126
123
116
119
149
79
117
94
95
109
80
118
93
127
129
80
80
98
131
109
101
150
69
87
119
54
88
94
117
107
72
128
149
94
78
106
118
96
83
78
109
142
78
127
89
119
132
132
175
43
94
78
112
128
114
132
93
117
87
76
151
106
87
119
107
87
69
54
78
72
121
52
82
113
148
91
80
119
126
129
145
69
93
99
80
104
113
69
128
175
63
113
87
80
119
104
109
86
119
119
112
80
87
80
151
69
76
69
66
80
150
88
175
120
127
89
80
108
110
100
69
119
104
155
80
76
117
109
93
154
156
105
127
69
80
106
113
95
87
56
80
78
137
104
137
78
102
113
109
99
120
88
117
43
80
145
69
91
107
109
100
69
115
134
102
87
87
89
123
140
80
76
136
94
127
107
75
96
69
134
123
80
123
156
107
124
117
91
74
89
69
109
187
117
54
104
113
76
104
74
140
94
99
69
99
120
137
101
95
101
109
54
69
69
74
76
104
94
101
69
118
119
76
103
76
78
100
113
52
104
76
79
107
128
69
112
126
68
80
165
120
72
69
70
80
137
126
127
118
156
94
175
96
52
183
94
154
113
113
59
73
76
76
119
146
109
120
82
64
76
78
166
109
69
71
80
94
64
87
112
120
72
113
205
87
75
88
175
52
81
120
80
106
87
74
134
133
88
119
87
99
149
169
89
119
88
138
78
80
109
118
68
69
91
136
78
128
102
76
69
104
72
101
69
117
69
87
71
114
109
69
144
109
123
95
89
112
128
162
76
54
91
113
69
69
113
125
135
101
117
69
139
133
107
104
145
107
88
121
60
76
102
56
87
110
97
110
107
147
69
80
126
78
93
87
80
113
76
99
131
87
76
88
121
131
106
119
112
94
150
100
132
119
101
129
69
130
69
69
151
87
112
89
121
136
131
88
80
156
114
107
80
99
119
109
120
87
134
111
115
115
95
99
145
69
87
69
135
187
109
106
80
80
87
121
107
69
106
126
87
113
107
155
109
98
69
106
146
104
56
119
85
80
76
76
149
140
128
80
92
79
87
94
119
92
119
124
87
72
69
140
80
104
111
75
119
160
120
56
136
197
102
73
54
162
104
69
91
74
145
89
110
91
87
83
69
80
154
136
119
89
115
96
89
87
111
100
80
183
69
76
101
87
69
69
76
80
128
78
120
154
78
109
76
129
153
125
76
175
69
80
117
78
69
112
80
119
69
119
78
146
110
106
78
95
136
124
80
106
116
140
69
138
165
104
99
87
99
88
69
185
88
117
114
115
72
78
136
69
102
75
69
121
121
119
119
87
156
183
112
131
106
105
76
98
107
197
54
131
80
91
110
111
107
112
90
81
99
99
80
110
76
119
110
93
160
104
80
132
80
117
69
120
119
69
72
73
67
69
96
89
72
89
69
175
93
119
101
80
78
67
67
136
107
136
78
96
85
144
143
93
80
89
93
106
87
78
102
132
69
80
106
91
107
69
115
76
82
120
80
114
80
163
136
87
121
87
87
131
140
115
174
163
113
131
132
100
151
85
154
69
144
120
124
117
114
73
153
119
111
76
136
99
110
69
124
131
107
137
142
101
94
101
86
72
92
93
114
154
80
81
91
80
76
94
119
74
76
94
75
134
76
76
102
112
74
119
120
140
136
80
69
146
100
103
52
128
126
119
80
110
151
87
120
175
69
94
72
132
118
149
99
106
76
99
118
140
66
164
69
118
155
151
197
156
118
88
117
69
143
120
118
113
110
80
134
118
78
110
83
80
106
90
93
99
112
154
151
102
140
52
137
104
118
131
91
175
123
69
111
119
120
76
78
107
96
112
80
121
175
128
69
69
52
119
128
85
128
87
109
76
99
136
69
110
74
56
154
113
156
96
154
122
114
100
163
91
151
105
149
113
87
128
156
69
197
94
148
120
175
69
146
89
104
91
89
154
101
80
77
88
56
156
88
120
67
149
88
80
79
60
123
122
94
131
117
154
109
122
78
89
80
138
95
113
143
89
69
119
119
94
136
88
98
106
72
128
78
139
93
124
91
89
157
87
83
85
80
119
155
94
87
76
126
154
80
91
113
120
87
110
132
69
106
104
69
80
80
80
143
114
69
78
91
69
109
115
147
128
155
89
83
201
68
162
157
76
123
104
118
94
129
112
76
103
69
136
96
109
117
88
132
143
106
131
114
109
104
52
76
87
80
83
76
104
78
119
87
87
119
94
76
112
107
100
93
175
112
80
69
85
119
121
120
131
122
76
59
71
96
76
120
119
100
94
80
92
78
106
134
96
111
76
109
110
120
100
144
123
107
128
90
175
78
120
142
175
114
137
136
76
54
88
80
91
193
151
120
166
124
79
128
89
147
68
119
89
94
116
76
183
78
134
154
119
74
80
72
87
69
120
74
158
155
109
69
175
88
96
175
118
83
106
109
90
98
99
121
91
87
54
154
90
109
119
140
80
60
131
119
85
136
76
115
72
110
197
138
83
120
197
100
87
132
76
117
142
52
75
185
146
80
138
76
56
75
140
155
136
136
106
125
123
111
78
88
90
121
76
69
91
94
78
74
122
128
119
132
154
136
69
78
197
104
78
69
69
121
117
72
144
80
157
134
95
101
78
175
99
175
80
107
121
117
147
117
80
106
145
163
88
112
153
131
120
120
80
110
79
69
69
105
115
105
120
175
123
106
111
147
78
112
163
52
112
128
101
127
56
80
71
102
109
76
80
123
119
151
115
133
107
132
122
101
121
106
87
87
107
163
87
120
121
115
129
80
56
69
66
74
106
131
140
66
93
90
63
131
80
69
69
174
120
126
134
107
69
94
80
164
91
119
129
140
85
80
126
109
72
87
87
110
117
117
125
80
106
69
106
175
69
114
91
145
73
129
87
100
87
104
112
56
99
78
154
96
129
69
102
110
100
72
78
80
156
99
80
52
80
87
101
90
78
109
93
128
78
143
69
132
132
107
94
100
76
99
90
108
69
117
111
78
106
88
91
120
119
104
115
80
128
69
107
94
80
89
144
110
118
78
137
91
102
128
96
123
133
91
72
121
121
107
134
95
100
69
80
114
119
69
69
80
119
124
136
91
103
142
94
160
120
150
80
107
102
120
136
82
59
144
91
201
119
155
99
85
82
104
67
114
76
128
82
87
76
122
98
89
120
156
114
112
115
74
105
78
148
72
107
154
80
87
88
89
78
78
112
155
96
87
155
122
130
107
114
103
69
76
145
94
120
155
113
120
121
146
137
78
175
107
175
80
78
69
75
79
126
99
83
118
109
134
69
99
102
141
143
80
114
124
140
110
80
103
67
120
87
96
119
82
129
78
119
136
157
117
69
99
69
102
136
80
76
101
136
92
90
125
99
131
104
133
147
76
72
111
109
107
121
158
89
95
94
132
123
87
145
136
134
80
136
104
87
107
78
132
102
78
69
59
133
76
94
112
84
100
56
197
136
145
94
156
56
143
145
93
122
134
148
108
134
147
94
87
88
76
128
120
56
84
81
121
119
87
140
87
111
154
128
99
172
117
78
104
154
87
90
69
78
113
99
102
109
87
109
163
157
76
136
99
72
88
76
123
120
127
87
91
78
63
143
128
80
175
99
156
109
117
100
101
69
102
140
102
180
131
130
69
123
87
175
91
107
72
100
187
128
76
88
152
78
69
94
80
69
164
121
85
82
96
78
116
131
76
80
163
81
69
80
118
59
109
91
135
76
107
69
117
52
145
110
156
125
118
120
154
91
175
134
189
107
121
128
109
85
131
87
112
115
75
89
78
69
80
74
131
83
80
137
82
156
113
76
154
80
111
80
88
94
75
56
74
128
109
120
80
114
87
129
69
69
80
143
81
102
80
116
95
155
181
140
145
88
127
78
107
80
89
107
100
127
115
145
80
109
80
157
76
87
107
175
69
110
151
120
88
164
80
80
80
120
140
117
94
127
89
80
128
78
76
197
72
140
76
94
113
69
76
102
115
91
119
134
91
128
87
107
164
119
99
80
103
101
120
114
100
120
146
88
93
88
109
72
89
146
79
154
134
69
78
103
116
134
76
128
175
106
156
130
130
119
121
123
89
79
99
69
92
119
80
95
87
67
99
100
91
78
76
80
106
76
117
99
87
130
156
127
107
128
106
78
117
69
76
74
74
99
89
76
155
106
155
79
78
80
132
119
102
94
104
123
151
92
80
146
110
100
96
160
98
80
91
78
82
154
71
99
137
112
89
69
107
115
80
87
100
119
127
69
86
100
119
120
78
136
121
164
87
156
69
106
109
123
87
117
144
109
107
80
80
109
139
184
123
151
83
144
107
96
100
80
100
112
80
118
131
119
85
110
54
128
96
94
72
69
87
74
119
136
126
120
163
156
128
82
141
80
110
101
91
156
79
134
74
124
100
117
100
175
174
79
93
112
72
151
127
109
80
146
78
52
119
85
113
107
132
119
76
106
95
197
121
138
136
131
99
90
69
122
120
110
112
91
128
93
80
88
140
103
80
111
113
144
96
175
131
145
87
99
155
117
78
69
80
134
143
88
113
175
121
80
175
113
122
89
140
136
80
79
153
93
93
80
69
120
76
140
93
78
155
74
69
139
91
162
76
109
87
120
108
79
106
80
80
72
111
69
130
69
80
80
110
99
148
116
76
110
72
115
121
69
99
109
102
114
106
120
130
201
87
101
85
87
107
131
88
101
126
99
126
131
94
106
120
119
80
136
87
136
54
87
107
87
52
80
137
78
85
155
87
87
164
117
119
94
144
69
87
69
93
127
114
121
102
122
107
80
127
88
120
102
127
121
152
119
154
119
72
121
82
78
122
147
157
130
120
164
99
73
120
79
100
128
78
69
98
146
114
83
140
103
117
90
136
90
104
169
100
128
88
127
74
76
80
126
69
115
148
94
113
121
104
107
80
102
118
93
137
120
80
78
106
157
120
121
106
136
96
96
148
144
76
94
100
107
81
80
120
125
89
131
76
175
87
92
78
116
113
143
130
154
75
143
87
127
117
80
80
128
93
154
151
69
112
94
76
152
117
120
69
119
127
101
80
165
156
197
181
75
83
126
87
118
102
89
78
143
79
101
91
107
119
107
96
113
78
72
128
76
201
155
101
69
52
76
54
101
91
93
121
72
117
174
69
109
78
87
74
194
132
76
107
87
80
105
112
93
69
76
88
98
98
52
121
87
76
128
80
74
154
78
52
76
73
87
111
144
120
122
89
100
121
80
80
102
95
96
134
106
109
131
80
87
101
155
156
109
137
76
128
111
99
131
80
80
87
89
99
104
99
85
98
154
80
106
128
99
118
110
146
154
76
101
80
114
175
199
75
99
110
117
91
136
72
129
119
94
112
80
76
99
142
98
109
150
80
78
156
145
118
127
87
90
69
88
87
154
151
99
80
128
119
81
125
52
69
80
80
160
69
78
80
78
164
178
69
89
118
91
151
124
115
94
144
118
129
72
79
129
85
119
98
80
197
76
80
99
92
110
92
114
101
76
104
137
131
80
80
80
73
76
94
100
123
119
154
88
130
121
72
69
146
81
120
69
124
88
140
110
131
80
88
119
121
88
124
109
88
80
107
127
107
78
131
83
88
69
87
111
69
78
90
131
138
89
154
136
99
113
93
69
124
80
84
146
103
145
108
137
117
83
78
122
155
102
80
127
134
128
117
69
106
89
140
69
137
92
145
121
94
154
69
89
69
158
87
120
74
117
151
109
132
119
112
80
99
151
76
156
103
82
59
87
69
121
143
145
154
80
133
71
99
100
69
121
88
104
160
87
64
121
76
151
139
109
80
89
85
43
93
113
99
87
155
132
88
87
174
101
140
94
106
197
80
129
119
80
85
80
82
67
151
129
76
140
92
153
192
126
109
126
120
69
69
92
103
102
134
88
122
78
107
118
154
98
102
76
175
124
69
134
87
87
88
100
96
150
130
120
69
72
119
120
109
69
149
134
128
148
140
104
151
110
128
89
127
134
75
94
175
147
175
87
95
80
67
119
115
110
142
85
140
90
103
99
131
72
90
126
112
107
87
52
136
146
109
119
99
116
144
145
94
80
87
121
149
156
122
175
94
112
98
80
96
154
113
156
128
67
164
111
113
107
93
78
87
116
112
89
87
70
98
100
126
105
107
110
120
156
78
131
121
89
80
52
117
110
136
113
69
125
74
134
87
98
119
110
99
133
87
113
101
148
87
94
109
119
84
163
100
87
107
155
78
104
72
83
87
119
69
94
120
80
69
78
102
146
197
93
78
76
151
80
78
80
91
76
119
85
121
148
80
131
146
69
88
88
80
69
88
114
96
100
80
72
96
85
160
122
122
76
89
131
69
120
115
188
80
97
80
91
90
87
110
69
91
120
101
68
88
69
85
183
96
120
89
156
147
78
145
87
112
80
154
134
139
175
140
147
93
80
142
115
175
175
159
126
131
87
69
80
78
96
99
132
76
111
156
115
103
117
52
80
98
96
69
63
95
80
91
94
95
133
131
131
149
80
109
80
83
85
69
112
54
122
76
80
102
104
78
111
54
78
136
78
99
87
156
129
90
76
109
105
110
154
118
175
144
69
175
120
136
85
101
140
76
109
43
150
107
137
119
87
80
111
154
123
106
152
95
64
155
112
104
88
103
100
76
87
175
87
99
128
175
197
102
96
80
91
87
102
80
131
87
175
69
132
89
80
80
160
104
43
124
81
152
141
87
109
121
54
69
115
89
115
54
144
89
123
144
69
138
87
142
118
104
136
113
128
128
112
163
80
131
69
163
69
43
107
122
115
156
121
78
147
140
134
128
131
80
76
80
133
76
72
123
113
80
112
94
122
91
151
115
102
148
75
76
106
134
56
140
120
87
89
117
76
76
147
101
117
151
97
117
86
80
153
175
75
109
154
131
80
104
121
128
69
52
104
197
115
104
120
115
69
111
80
120
175
154
142
82
117
140
137
80
69
43
97
76
80
136
94
133
54
97
83
93
99
132
112
154
76
94
120
87
156
155
72
80
78
80
131
93
131
110
76
107
76
76
85
125
126
136
102
119
154
117
174
131
120
80
69
122
137
72
113
74
121
78
89
107
106
91
56
126
128
123
87
96
91
102
147
95
118
80
52
72
126
113
118
94
110
89
109
43
132
159
117
80
69
80
88
136
111
136
127
72
106
107
104
96
87
136
154
91
69
69
69
110
80
117
78
78
144
69
87
133
103
119
125
80
76
88
87
122
120
118
104
76
120
90
89
69
69
100
154
69
80
87
104
118
106
98
156
69
132
91
74
104
112
78
119
80
110
83
85
52
99
100
103
101
189
107
56
119
125
94
78
120
100
59
175
187
103
69
96
125
154
155
114
106
99
109
89
87
76
80
99
69
151
154
83
80
129
132
163
85
154
119
100
128
74
76
59
166
76
89
80
80
129
128
76
155
107
133
114
76
78
80
120
107
104
117
76
69
143
87
174
76
104
119
69
140
93
72
69
181
185
155
83
151
80
78
76
118
78
121
76
117
119
89
69
101
102
175
94
54
108
99
80
121
93
121
78
80
163
104
94
71
83
76
130
108
150
59
93
106
112
197
69
175
107
110
87
155
155
89
88
69
112
100
69
89
128
95
134
127
72
96
163
113
109
90
123
78
133
130
106
116
54
95
109
108
130
93
96
89
123
93
100
87
104
74
93
83
69
119
154
103
156
143
76
98
153
117
99
99
109
88
89
140
119
111
149
120
121
144
144
54
154
163
154
128
74
162
80
94
131
120
120
80
128
134
69
111
103
100
96
56
94
128
103
156
69
80
110
90
98
102
137
154
78
94
109
78
118
137
140
132
93
197
80
151
104
140
69
119
110
88
162
91
90
107
78
197
120
80
139
132
119
69
131
87
80
69
82
82
83
111
140
96
80
89
128
180
104
99
95
119
56
110
88
77
147
68
113
112
110
115
148
90
120
72
153
119
69
131
120
78
86
69
121
147
87
121
132
80
99
120
89
134
119
109
138
69
119
75
130
100
112
113
118
87
74
96
96
154
76
128
80
80
137
93
69
72
151
125
90
107
99
137
99
74
110
140
174
154
128
80
128
97
136
83
98
90
79
59
138
154
152
175
109
152
116
154
80
120
76
91
80
83
89
112
85
105
97
87
142
87
75
110
109
90
56
115
82
151
157
87
109
107
113
110
80
78
76
87
126
88
114
110
80
87
101
80
80
82
103
76
122
78
106
54
52
69
69
80
119
113
126
76
139
134
136
119
147
115
80
87
154
80
128
131
112
75
121
87
103
93
69
80
80
146
69
88
112
136
120
69
109
98
74
134
149
138
175
69
137
146
101
136
160
117
127
136
104
80
147
156
87
140
133
59
113
89
120
78
120
122
99
146
69
158
104
110
90
113
140
107
197
100
88
140
150
69
87
114
80
124
106
99
172
107
134
112
111
116
143
87
92
68
85
78
76
144
90
142
93
163
99
124
78
119
107
78
69
43
72
136
83
89
100
122
134
78
208
100
117
87
119
146
112
80
155
87
154
80
93
118
93
128
136
69
104
113
76
127
183
78
72
109
52
128
99
144
104
130
119
163
69
72
78
105
91
110
56
128
80
136
69
78
161
85
80
106
155
76
88
163
106
113
119
71
129
183
134
76
163
138
76
100
96
148
140
109
88
80
107
110
110
156
104
144
52
72
119
124
125
80
126
101
118
175
88
119
129
94
128
135
138
155
93
94
129
136
119
96
123
52
83
106
87
101
128
154
52
119
120
118
126
197
54
107
98
78
69
119
87
107
118
127
72
80
103
197
74
91
113
120
127
99
146
128
52
107
124
83
72
138
128
120
143
69
118
79
80
89
83
69
94
87
76
75
87
87
69
76
54
99
80
108
78
96
80
59
123
115
104
69
151
120
109
87
154
146
98
116
102
117
143
69
66
101
69
131
132
72
43
138
76
85
69
120
144
80
80
93
90
120
133
148
101
118
132
72
69
80
152
69
127
191
80
154
102
87
78
72
136
76
72
89
154
76
126
89
100
118
131
112
69
107
154
69
80
123
118
109
119
110
115
87
101
78
85
93
80
119
76
120
74
76
100
119
96
107
175
89
175
88
139
80
155
87
76
144
135
76
78
128
69
143
76
69
156
80
163
133
64
78
112
123
140
94
140
143
143
76
114
112
118
175
112
122
120
120
79
102
94
113
115
115
101
114
175
104
100
101
128
69
96
137
137
197
113
118
156
76
79
69
80
156
119
76
128
93
90
76
175
131
181
112
197
109
187
201
166
110
80
54
94
104
69
129
125
125
80
93
80
156
154
127
71
76
120
107
78
69
120
80
137
94
162
98
119
87
80
137
123
60
136
149
128
136
93
197
83
84
154
106
78
156
110
96
146
119
87
99
154
95
104
52
113
80
80
160
136
128
116
52
89
126
118
113
159
99
109
78
107
91
72
80
88
126
78
79
85
72
69
104
119
92
175
121
148
80
107
110
80
69
87
194
114
143
152
123
102
87
131
96
175
119
104
134
195
100
52
76
127
99
119
140
126
113
90
143
127
177
83
130
147
121
80
140
109
106
101
126
111
78
109
136
112
122
146
102
74
119
69
80
87
96
169
76
89
120
116
109
104
156
136
117
89
104
89
121
111
87
134
154
93
83
91
87
68
74
130
89
115
69
102
87
80
87
80
69
109
155
93
155
136
151
78
69
79
121
110
129
152
130
94
104
199
69
78
54
69
149
154
151
96
100
78
110
89
80
94
152
104
89
125
154
119
78
127
88
120
68
54
183
127
87
165
80
115
87
87
85
134
137
106
69
82
134
110
110
107
63
87
69
100
90
89
144
117
119
69
136
69
80
110
82
143
85
102
103
119
69
138
120
104
143
132
76
89
80
78
196
87
140
120
69
76
175
151
106
110
148
99
76
137
96
121
154
104
113
82
78
131
103
154
99
107
89
111
89
78
115
75
94
69
87
80
80
140
144
80
119
94
88
69
92
93
80
133
80
133
78
90
115
69
74
95
103
78
145
124
175
140
121
175
110
115
99
72
102
113
126
126
69
80
95
199
113
113
137
154
137
80
152
120
145
103
69
142
96
85
107
76
80
106
52
107
69
85
67
113
118
178
134
113
78
80
157
109
80
54
141
107
88
143
133
116
117
119
93
109
117
69
82
145
124
80
80
156
78
94
69
111
121
139
76
76
80
110
121
99
69
96
69
76
106
89
106
116
80
142
79
78
136
156
69
131
156
101
88
107
96
151
106
134
153
87
151
69
80
140
109
109
109
94
106
69
197
83
131
138
109
120
90
95
78
63
80
110
136
101
128
99
136
88
99
74
99
80
93
175
87
94
78
146
89
80
93
154
80
197
175
72
99
99
124
136
154
155
107
69
115
87
111
91
102
69
120
130
104
106
72
104
72
120
197
104
98
139
104
127
119
80
93
104
119
160
106
117
106
69
133
99
52
96
78
129
113
155
113
99
80
119
140
69
127
139
93
87
174
110
87
107
91
134
137
110
74
76
145
104
113
110
107
80
161
87
88
80
113
118
93
107
95
69
128
68
110
76
80
76
52
76
106
78
145
197
101
52
107
112
80
109
119
101
87
99
119
101
97
97
78
67
95
154
131
72
87
109
131
89
107
154
148
59
136
148
78
74
69
121
93
121
87
136
137
107
109
76
87
154
80
69
156
132
121
99
117
128
95
87
149
117
107
80
127
80
101
87
119
87
69
54
78
123
120
136
119
76
147
69
93
99
99
74
151
175
122
120
108
99
117
101
69
60
172
87
163
123
85
69
93
106
76
69
98
88
69
163
94
96
76
155
54
156
109
80
78
102
118
107
113
138
93
117
99
94
120
127
106
80
108
107
163
94
88
119
69
99
80
87
69
87
90
80
96
91
107
78
133
78
154
156
119
101
140
119
80
120
78
119
80
104
83
74
94
66
121
109
154
94
94
87
80
126
155
69
76
69
96
107
120
117
128
159
80
83
75
98
127
78
69
69
72
102
66
67
169
154
80
131
140
102
80
78
96
69
78
87
155
95
72
110
104
131
199
80
155
129
175
119
144
127
119
80
110
99
99
104
197
87
91
72
78
99
127
131
72
109
107
105
100
80
78
113
121
78
131
102
119
85
136
80
80
112
110
104
80
87
80
97
136
117
163
119
78
80
107
149
96
69
80
113
141
122
101
128
94
144
94
197
110
109
99
94
69
80
136
87
155
114
164
121
72
131
76
111
74
91
113
87
83
132
102
140
80
80
105
80
80
175
78
101
110
110
80
87
120
140
78
117
101
80
78
80
139
152
89
125
91
124
96
87
74
93
123
80
128
94
140
164
76
76
136
69
175
67
149
107
69
93
94
103
120
107
101
69
107
104
120
93
85
164
119
119
76
83
101
115
95
69
99
117
95
80
120
112
69
121
100
69
132
110
175
154
101
119
80
133
89
149
89
80
96
154
118
107
151
73
88
87
104
136
83
120
123
107
113
80
80
119
110
146
128
69
110
52
121
89
106
133
99
175
88
69
67
80
134
69
87
87
175
80
87
79
80
113
87
89
78
89
102
120
136
143
153
154
117
75
52
119
111
91
102
69
115
87
110
123
128
80
112
69
119
69
74
104
145
80
154
113
140
107
152
121
104
69
155
99
140
59
102
88
128
89
117
80
94
113
127
87
54
119
152
109
69
87
119
130
129
87
187
154
147
80
113
128
113
66
101
101
80
78
197
69
80
93
80
109
80
85
128
69
96
87
128
99
85
87
78
77
119
114
91
141
80
149
107
120
93
131
99
121
175
175
80
140
59
130
138
151
80
69
136
80
109
131
80
80
106
87
136
78
69
94
107
99
83
117
93
78
90
72
69
74
145
104
80
114
138
90
120
119
87
90
80
130
69
88
110
80
162
76
87
89
99
88
107
110
109
92
80
72
69
88
69
88
143
72
115
87
132
114
99
174
96
127
143
100
89
119
80
140
119
88
69
181
114
87
78
78
99
131
80
114
151
88
100
101
140
119
113
68
129
120
172
140
120
121
125
146
103
118
69
89
69
98
152
99
114
128
69
107
59
117
103
87
133
134
128
119
119
80
128
85
66
75
103
80
98
89
133
159
107
69
71
132
132
115
119
99
88
194
79
89
89
132
99
75
104
72
107
175
69
83
87
144
95
87
154
131
111
93
120
66
80
93
107
96
124
136
128
112
128
164
78
112
121
94
174
98
117
80
99
100
52
117
110
109
138
91
88
87
113
115
134
89
72
89
77
87
99
76
126
83
154
94
150
99
59
107
110
80
112
156
137
130
80
99
117
156
78
150
106
142
96
103
107
148
100
113
148
104
99
52
54
154
113
128
144
74
131
128
82
96
69
78
175
121
134
104
92
56
148
69
85
120
80
89
69
120
119
117
127
112
112
147
143
54
102
120
103
96
115
175
104
76
128
154
110
87
163
87
145
110
140
126
115
80
134
131
104
87
76
117
87
146
155
93
77
87
135
96
113
102
80
80
145
163
89
89
133
88
95
120
80
98
54
80
110
121
80
80
107
80
52
156
141
88
112
106
119
119
183
78
95
101
128
80
144
110
110
69
147
94
134
52
175
101
110
123
88
43
147
69
63
121
69
87
80
88
109
109
114
69
104
113
112
128
100
131
104
118
80
131
134
54
134
131
151
107
89
74
94
69
163
72
96
88
56
132
163
89
135
69
117
96
109
83
143
89
111
127
113
99
109
72
99
76
76
85
104
69
109
76
120
119
164
99
80
107
80
96
94
102
134
80
69
76
107
87
87
124
123
141
129
96
117
90
101
56
128
87
88
80
121
106
120
105
107
112
151
139
91
118
69
99
74
95
88
87
76
131
110
113
69
88
67
87
151
102
138
89
69
95
89
78
93
80
80
158
130
87
126
118
174
175
134
128
109
137
113
160
197
87
69
119
79
155
67
80
101
160
109
119
88
101
151
80
87
76
104
110
131
80
128
109
126
149
132
96
166
113
103
87
137
78
69
104
175
88
120
87
109
119
113
75
120
88
116
69
115
106
169
118
175
148
69
127
119
120
99
69
80
112
115
131
106
80
111
109
80
109
52
121
66
120
156
121
119
125
126
87
80
143
78
80
89
134
113
131
78
69
101
83
121
91
112
134
138
106
80
116
89
146
160
96
100
112
103
154
99
82
87
76
124
83
122
164
88
106
85
69
140
101
89
155
127
72
87
155
88
120
175
129
100
175
154
87
146
87
128
88
120
96
99
146
80
69
136
110
112
88
78
127
52
100
127
209
134
119
136
145
87
80
110
100
69
104
140
69
117
126
98
127
69
97
127
121
131
197
76
80
87
93
138
126
69
80
80
110
116
69
119
76
118
87
80
120
78
197
120
94
69
154
96
107
93
119
145
138
134
78
83
54
136
52
80
94
69
127
99
80
119
120
87
82
104
69
57
92
91
151
103
64
111
119
147
102
160
69
175
89
76
103
89
131
109
136
78
80
95
109
104
99
104
120
107
175
99
80
130
119
69
80
122
99
109
82
72
175
43
66
117
80
118
125
113
94
115
80
98
87
76
116
91
80
181
156
106
66
136
142
87
174
78
76
80
115
111
88
155
69
95
96
96
136
154
112
119
80
72
103
78
89
69
164
119
78
106
120
76
175
123
106
96
117
143
139
79
101
89
144
94
122
145
163
69
97
69
92
107
87
99
178
93
126
96
99
136
149
119
111
52
154
117
99
112
199
119
164
146
106
116
88
78
113
89
132
69
88
123
103
88
111
104
147
72
164
85
88
118
119
107
101
111
93
93
119
113
104
69
74
99
113
93
132
140
69
140
120
155
80
154
113
144
113
154
119
131
78
130
64
106
166
80
175
119
96
98
108
175
150
91
95
140
87
74
120
126
154
120
107
133
172
115
111
71
145
80
88
128
156
116
87
155
87
83
106
125
87
102
107
140
101
197
119
69
80
88
88
153
201
175
175
69
80
113
163
76
156
151
131
110
117
96
80
154
100
144
103
137
129
80
54
187
120
80
69
131
78
120
56
80
106
92
146
134
134
123
130
83
154
75
154
99
78
123
140
72
88
121
76
80
66
112
76
112
147
69
112
103
54
122
120
80
89
89
124
151
91
123
107
89
90
88
107
134
106
103
69
175
134
85
87
80
136
113
134
87
114
126
80
69
81
88
76
137
122
89
81
59
106
119
85
96
74
126
118
80
76
127
80
107
113
135
175
87
96
134
96
92
106
112
175
163
76
80
152
119
175
107
175
120
100
119
119
131
101
104
154
96
80
90
134
101
131
114
90
76
175
99
97
78
100
131
106
148
119
68
89
136
78
109
98
112
69
114
106
111
69
85
90
158
156
94
85
119
104
83
112
121
136
69
105
128
91
103
183
79
80
91
80
123
69
104
100
131
127
134
120
128
78
80
102
80
121
136
129
122
175
110
87
117
125
88
87
118
78
80
76
75
94
72
107
154
163
94
104
106
99
112
99
78
80
163
76
91
115
89
88
137
81
99
120
80
126
80
148
128
132
78
107
89
123
107
72
80
131
119
145
99
87
112
96
72
187
82
197
175
148
122
137
148
112
69
155
154
85
80
72
91
78
140
64
91
99
110
134
107
104
95
106
69
83
175
94
109
126
87
69
111
76
99
109
80
107
156
85
87
132
87
120
78
76
118
155
76
146
78
91
76
175
120
127
69
69
80
117
78
136
80
80
113
87
142
122
100
139
105
80
138
121
145
156
99
69
69
126
110
112
76
128
72
54
169
99
107
124
147
104
56
87
103
107
80
112
107
127
94
162
120
154
94
80
121
88
124
110
69
140
69
84
80
137
104
127
105
156
120
107
98
106
69
155
143
128
122
120
85
109
129
69
134
87
104
109
112
98
121
135
98
128
114
107
197
89
103
87
113
166
134
125
104
69
175
93
78
89
80
102
123
128
99
100
127
140
120
110
90
88
94
72
112
111
119
120
114
72
129
181
143
80
100
106
132
80
129
80
91
106
80
157
94
92
119
63
134
89
80
197
66
157
99
88
99
151
119
80
109
87
69
175
76
128
69
89
81
120
119
145
128
120
104
107
120
91
102
93
88
134
79
128
89
163
119
106
91
175
131
93
87
106
133
80
80
94
78
89
119
52
150
94
69
76
154
72
136
91
89
80
101
107
80
109
174
143
103
94
104
132
93
102
112
88
72
149
99
75
112
166
163
104
120
78
94
129
128
113
80
97
175
129
96
153
88
117
81
82
56
80
154
80
139
110
118
147
112
80
143
113
91
87
87
93
123
91
76
102
109
76
87
107
69
87
115
99
80
72
80
133
107
78
119
72
88
104
110
128
117
76
132
134
88
103
154
88
101
119
54
91
69
164
69
154
141
132
143
81
123
69
119
94
78
143
119
106
154
80
143
88
106
113
119
87
80
124
133
110
110
74
131
89
175
83
69
132
176
87
175
130
112
76
107
69
119
87
99
140
75
99
131
150
145
94
80
140
69
80
137
99
69
119
94
151
106
117
106
80
87
99
54
145
54
76
127
89
110
99
118
96
104
136
154
56
94
111
134
175
80
80
89
174
163
80
154
124
98
80
104
110
112
136
88
69
79
69
119
112
129
80
87
104
120
96
76
139
87
59
108
56
87
145
120
97
209
76
94
99
76
76
154
80
154
80
163
87
89
54
136
100
146
131
106
110
145
91
105
99
99
77
80
119
82
145
107
118
140
103
119
89
87
115
107
120
119
118
87
94
120
146
138
131
69
92
110
87
83
100
78
80
85
74
78
80
56
85
76
127
109
127
175
147
197
130
80
69
120
129
98
54
109
128
100
118
124
101
120
128
117
76
111
140
113
101
154
126
87
69
175
91
175
75
87
136
106
154
119
128
88
109
101
69
81
148
121
92
69
160
151
83
146
119
107
67
80
96
101
107
80
82
114
144
125
120
98
72
119
114
134
197
78
145
103
117
79
118
95
98
76
119
128
80
107
136
131
106
87
130
91
74
75
72
78
75
87
140
131
80
131
132
112
78
80
136
88
95
153
88
155
136
94
56
96
113
143
137
69
85
78
80
69
119
80
120
110
111
100
175
114
153
76
128
117
79
79
175
126
79
76
106
106
111
106
120
72
113
112
87
72
103
80
117
69
87
100
80
131
80
134
106
119
134
109
104
114
94
137
72
89
85
87
120
66
99
128
78
91
107
126
145
72
143
102
129
119
88
163
151
156
100
102
94
80
78
128
128
154
54
78
98
96
78
120
110
74
154
153
116
80
119
72
83
148
94
81
80
163
112
110
88
122
119
69
119
78
87
92
99
87
123
85
131
107
78
91
80
109
78
69
127
147
126
89
118
96
114
94
80
119
154
147
119
94
80
110
76
80
80
83
69
91
142
145
87
80
108
127
80
76
112
117
130
154
96
144
148
101
99
104
119
80
99
109
102
120
151
87
133
118
87
117
110
109
78
128
88
145
87
137
78
93
54
120
54
120
80
104
111
80
87
175
175
164
80
78
88
148
78
136
156
112
78
91
128
88
69
94
91
87
107
69
52
80
69
146
117
76
69
134
96
89
94
136
83
80
80
120
80
74
69
69
88
81
156
80
80
93
134
151
136
74
140
121
104
80
102
126
132
154
175
90
89
56
85
104
83
69
87
92
80
112
175
89
63
126
108
104
88
154
69
107
94
176
80
104
78
64
102
69
76
115
72
137
148
80
80
119
52
120
76
119
150
156
123
120
80
93
78
156
155
80
78
119
54
124
95
151
58
109
95
80
120
155
69
130
163
91
107
156
126
76
109
99
102
107
120
80
69
119
121
76
74
124
69
78
176
87
72
101
89
95
80
113
102
99
115
74
89
99
136
112
104
80
136
113
96
80
109
110
150
93
81
119
74
73
69
107
128
134
155
96
130
103
128
107
80
131
126
126
122
87
67
103
103
69
103
69
74
69
175
80
80
117
72
96
89
93
87
76
80
101
69
117
103
83
87
175
128
98
126
72
107
110
85
131
140
139
112
128
95
96
87
156
119
87
80
87
135
154
109
127
145
121
140
134
69
120
69
102
129
145
78
94
119
91
52
96
74
54
87
134
165
130
107
138
120
115
110
112
125
80
97
80
101
107
69
197
89
99
185
114
120
134
107
69
76
90
97
72
143
109
156
96
136
74
110
80
131
107
94
119
107
102
150
69
197
112
102
131
69
119
80
154
163
113
69
156
119
129
80
80
137
102
154
154
80
104
138
72
130
80
89
128
122
93
60
80
145
96
80
117
103
80
175
97
69
94
175
134
152
107
74
88
175
134
90
94
109
80
175
120
129
88
83
175
78
117
94
94
88
78
87
99
137
89
69
90
155
99
87
119
112
87
153
72
99
175
196
107
103
76
96
87
107
91
80
160
94
181
54
88
80
86
104
102
78
96
134
137
137
145
145
78
112
80
96
81
154
104
106
78
76
52
74
145
118
80
129
87
76
125
136
109
99
107
137
104
121
99
128
125
98
80
107
80
88
115
133
106
107
127
110
88
117
80
113
112
80
69
120
130
88
83
113
107
145
124
91
52
129
137
74
144
143
104
75
142
96
56
128
76
59
85
73
80
76
116
99
120
87
56
76
76
109
130
146
123
69
113
89
143
74
80
78
80
154
56
123
113
58
88
91
110
99
69
128
76
138
101
87
128
134
132
136
67
71
94
112
119
143
64
117
89
111
127
80
109
69
80
101
76
80
78
162
80
116
88
132
145
154
80
103
80
113
96
151
93
164
80
69
166
80
69
125
110
80
99
116
115
153
106
163
120
100
80
129
80
103
109
78
92
175
149
175
107
87
112
78
120
99
123
87
76
96
133
128
107
76
150
111
87
113
76
69
87
101
107
69
109
99
78
129
129
106
89
56
80
127
158
151
69
114
110
58
143
69
83
118
89
126
156
112
58
78
99
71
82
76
119
143
76
85
121
132
120
76
164
94
131
87
69
115
80
69
152
80
90
72
111
52
87
87
112
100
93
136
128
87
106
128
129
69
78
127
96
151
69
93
156
96
175
132
80
80
123
127
80
120
112
102
96
69
106
100
111
123
140
104
163
175
134
96
126
89
120
80
136
151
151
67
145
147
80
69
67
96
131
107
84
60
120
94
69
80
134
64
118
104
69
92
134
76
87
123
106
80
89
115
94
109
80
69
80
119
93
93
112
119
98
69
69
99
76
54
118
93
92
87
88
114
93
123
87
109
75
91
125
99
87
88
113
112
101
136
87
72
107
109
101
122
119
74
121
94
101
119
109
110
80
163
54
87
104
123
91
87
104
87
71
91
104
74
59
128
69
112
99
124
112
136
69
78
113
129
69
80
80
74
103
109
74
156
99
113
151
122
107
154
80
76
91
154
80
76
107
115
124
111
151
80
115
201
106
74
113
107
76
127
154
175
104
144
133
101
175
104
143
107
76
154
78
87
117
120
91
154
96
140
80
80
78
100
129
196
112
79
117
117
78
143
106
113
156
164
101
93
96
131
82
131
113
137
87
114
134
109
140
114
141
78
99
127
107
87
154
69
76
105
120
66
134
76
99
99
104
124
107
132
104
106
104
69
121
85
126
66
125
76
109
124
147
110
106
69
90
69
120
78
134
138
96
69
112
118
154
109
89
128
88
119
78
117
104
155
80
132
117
76
80
121
100
94
128
146
115
52
89
69
99
76
100
87
147
69
56
54
118
148
76
99
80
104
72
87
107
109
128
117
106
156
106
164
155
112
80
97
72
153
131
115
43
118
89
174
174
117
88
80
107
154
131
89
80
128
80
80
137
197
118
136
154
109
99
114
80
78
120
156
111
89
128
99
89
107
107
119
127
131
72
76
151
112
119
87
69
117
106
98
121
94
109
69
107
151
117
52
109
76
72
133
74
93
52
145
89
115
83
109
101
147
72
175
99
112
145
107
80
140
142
54
56
199
155
72
94
136
146
134
114
88
109
96
67
136
121
87
96
146
109
91
80
95
76
93
120
102
118
76
80
102
144
89
90
80
120
64
88
199
121
69
96
134
78
119
107
107
109
67
109
96
118
85
87
74
99
88
101
69
87
148
104
80
78
178
119
80
76
76
121
94
109
69
72
80
119
150
122
156
67
80
131
157
69
119
160
80
78
95
121
96
127
110
127
101
80
110
119
118
133
109
88
128
69
93
123
89
151
122
74
129
69
131
69
52
125
89
145
114
96
125
69
87
91
87
121
88
121
74
113
93
79
88
99
93
115
72
80
144
80
80
78
100
107
117
69
87
119
125
80
107
147
89
99
89
131
209
77
106
69
89
56
136
136
133
130
99
126
107
128
99
89
69
110
98
69
72
76
99
98
156
144
100
114
121
138
80
155
69
69
110
91
80
142
156
80
72
87
95
75
96
107
64
121
112
154
88
128
149
113
88
60
89
124
102
78
154
80
111
106
104
93
89
148
154
103
122
148
99
95
124
128
95
106
69
76
80
73
145
64
87
89
99
99
127
112
69
93
145
77
139
154
52
126
112
90
122
126
94
74
99
117
137
121
106
166
69
93
101
87
136
122
151
80
110
121
87
80
80
174
78
101
88
88
101
122
100
139
110
136
137
91
80
66
137
165
134
143
80
72
142
78
81
113
145
85
130
119
132
119
89
161
136
89
112
119
80
78
110
151
87
86
131
52
117
100
127
155
100
107
107
136
175
121
175
146
145
89
78
69
113
80
57
154
123
88
120
80
140
134
145
76
159
112
78
99
54
78
128
89
121
91
89
154
104
128
93
72
120
80
99
143
107
112
118
69
107
175
87
102
52
126
87
130
127
98
93
136
120
94
95
140
128
69
131
80
90
87
131
175
69
78
95
131
76
80
80
76
120
129
80
111
117
85
96
113
175
128
88
102
54
76
131
76
93
96
78
66
91
124
156
120
96
145
87
110
90
119
56
99
119
87
95
175
87
60
134
68
104
69
134
54
69
160
69
74
156
80
69
164
115
160
143
175
106
106
80
80
103
89
106
125
87
80
119
76
142
199
123
117
99
87
80
154
154
140
154
175
156
175
126
85
117
99
78
100
128
99
106
69
78
120
80
174
69
78
80
107
69
119
163
91
75
93
150
99
120
111
113
98
121
112
175
69
175
107
80
101
80
127
43
109
104
69
130
69
102
99
136
72
83
134
110
115
134
91
131
78
141
98
121
126
76
87
78
88
72
112
197
106
69
119
158
107
175
80
80
87
175
94
109
79
113
109
93
143
79
154
154
93
93
113
130
119
80
122
97
80
175
99
85
74
117
84
110
109
150
89
126
76
110
113
110
117
89
72
119
140
75
87
145
91
52
92
118
68
78
128
140
110
89
76
69
80
128
155
125
91
136
88
131
127
134
119
58
111
115
52
72
69
80
175
109
118
99
110
152
80
76
80
80
121
114
117
100
80
85
78
94
99
78
89
98
83
136
101
143
76
96
88
150
165
69
95
80
89
78
76
120
136
94
69
94
123
69
78
57
110
87
106
154
112
129
89
154
90
120
109
136
185
93
139
120
78
76
80
132
145
80
69
104
83
69
121
187
69
80
99
102
120
124
157
80
80
69
175
122
107
113
139
88
107
103
115
130
88
69
80
136
105
156
80
95
87
155
163
87
69
80
109
72
87
155
154
69
125
110
107
126
132
104
87
78
69
102
119
123
129
80
115
126
107
85
123
147
80
83
81
124
80
117
113
87
137
119
197
92
134
69
130
80
76
132
85
140
107
80
80
116
80
124
80
87
136
78
117
110
109
131
87
76
88
142
79
99
69
87
80
66
88
147
76
154
152
104
140
99
120
88
91
87
78
88
147
156
69
136
80
78
100
103
128
145
117
119
154
56
175
142
128
107
120
131
80
79
59
130
117
78
72
119
83
100
102
80
183
69
110
160
99
60
106
87
74
69
82
118
88
124
136
154
99
117
80
119
76
89
140
71
106
145
69
104
67
80
137
104
72
128
120
128
54
104
89
87
124
151
127
71
91
115
175
123
80
120
99
134
117
43
118
144
68
87
109
78
98
80
156
106
143
106
127
95
71
64
109
130
104
78
104
148
86
131
114
107
72
101
102
174
121
78
178
69
197
123
69
83
80
100
80
140
102
67
175
114
100
69
137
80
124
175
151
79
197
69
69
113
97
94
88
98
94
175
69
101
150
117
107
87
102
101
92
89
78
109
113
145
76
54
154
69
79
113
104
76
123
100
175
88
126
80
80
94
93
69
103
80
87
113
117
90
138
134
124
119
120
94
112
95
89
119
102
175
154
69
120
87
132
140
118
99
120
121
92
80
87
83
94
88
93
87
89
99
101
107
103
89
106
87
151
107
54
63
94
102
84
88
144
143
124
129
144
69
111
74
78
166
106
74
76
93
54
64
80
154
136
87
69
120
112
97
107
79
187
99
59
89
131
122
80
103
133
113
174
111
78
123
119
69
54
69
151
80
155
136
175
80
92
91
89
131
106
102
156
78
125
94
136
131
105
87
154
111
164
76
133
69
106
163
119
132
76
88
107
69
80
99
115
136
143
80
91
131
164
88
80
94
78
107
131
111
69
136
109
73
154
145
68
134
93
147
89
106
94
78
69
107
87
130
175
117
166
80
91
119
101
76
110
80
87
87
197
119
175
164
74
104
101
119
197
131
111
100
120
128
130
121
89
113
88
75
78
112
78
101
146
80
113
99
94
76
101
145
56
97
107
133
75
118
87
96
80
159
175
78
106
114
93
106
99
147
154
118
128
78
112
78
95
96
155
80
110
120
80
80
89
71
115
137
145
123
84
125
52
118
118
124
124
117
87
80
76
94
91
80
109
201
83
78
119
87
101
106
78
89
54
69
112
68
110
110
164
140
112
102
69
109
104
106
109
153
116
136
80
175
72
148
102
78
138
76
121
115
134
94
69
76
112
136
98
133
89
87
150
89
78
69
69
199
122
90
88
127
155
136
88
146
96
99
99
78
87
106
91
121
113
99
80
99
72
75
101
89
99
106
80
155
120
76
111
136
88
95
156
175
156
124
113
119
90
155
120
114
89
144
94
107
109
87
107
93
107
120
106
83
103
117
97
128
72
93
110
110
76
69
101
134
110
74
80
108
88
87
78
125
155
106
91
78
164
112
116
123
88
109
87
87
145
118
120
64
164
91
121
87
123
151
131
163
80
110
113
101
104
124
69
99
129
148
158
69
78
110
129
88
114
117
115
109
60
66
124
89
80
69
96
120
115
85
87
94
113
163
121
116
78
69
110
87
126
175
96
78
127
93
79
146
120
84
88
76
112
87
96
115
114
69
90
85
151
156
69
119
76
163
94
109
111
88
119
88
122
93
72
88
88
110
109
76
85
54
164
138
112
87
163
131
148
156
69
166
89
121
80
78
89
95
104
115
120
133
96
137
126
80
127
79
112
92
155
96
94
111
113
106
175
94
163
131
91
69
152
123
76
88
119
119
87
122
69
107
117
89
80
124
106
128
78
94
74
89
78
135
122
76
152
129
52
155
148
140
87
107
154
90
87
135
94
101
87
111
95
80
119
185
58
87
120
107
119
104
104
52
89
78
122
131
102
128
102
76
175
76
80
110
156
69
80
145
109
117
130
117
69
94
80
78
128
154
133
109
199
43
113
82
80
111
94
106
154
109
128
107
175
104
140
83
80
87
94
128
102
123
87
101
83
72
87
69
151
87
69
89
78
89
157
131
116
78
56
111
104
111
140
120
109
138
120
104
155
88
94
87
89
119
96
69
93
146
76
101
128
119
78
130
149
99
99
128
74
110
78
112
157
136
87
76
78
89
94
80
87
101
78
104
197
109
76
85
104
94
199
128
75
99
95
118
104
107
85
118
99
80
120
110
88
143
128
184
175
111
116
102
87
69
80
76
118
132
156
110
88
109
153
107
113
96
89
88
140
109
78
91
87
80
76
93
107
104
201
126
80
114
132
126
107
106
122
121
93
88
96
109
112
175
127
84
194
111
113
157
154
131
72
148
114
91
74
80
126
69
108
74
125
119
159
74
91
94
109
94
119
119
118
110
99
125
71
175
93
52
88
151
104
107
120
131
131
99
148
101
160
76
90
154
113
64
109
69
128
76
99
145
99
94
128
112
112
128
96
95
111
106
80
163
120
145
120
80
87
119
119
154
87
69
126
112
102
105
99
93
132
80
69
98
106
76
84
119
136
133
120
118
80
99
74
122
74
117
80
80
128
80
86
120
131
74
119
123
111
78
80
106
132
93
163
69
137
127
128
89
94
113
128
89
108
80
80
74
111
76
164
90
120
138
147
128
131
119
110
76
69
87
80
163
104
93
136
102
119
110
69
87
104
128
52
96
94
72
88
107
119
68
113
85
95
128
80
157
126
79
134
107
119
100
124
154
94
120
119
69
134
56
175
155
143
110
80
102
118
133
118
124
110
54
120
156
69
148
83
94
117
117
138
93
88
166
118
105
154
92
119
119
133
134
111
124
143
69
122
87
126
82
99
69
109
128
120
119
101
175
69
78
69
69
80
69
80
80
80
117
127
85
104
119
76
131
90
128
99
100
113
78
154
155
103
100
69
181
88
89
80
106
175
120
119
131
120
115
76
119
78
107
155
80
131
69
90
132
88
154
136
113
87
131
154
72
120
98
140
78
88
110
89
69
107
131
117
107
110
107
146
145
154
116
125
128
170
92
154
134
74
87
140
84
87
83
144
127
91
90
76
80
163
120
96
94
115
113
97
94
80
94
120
131
76
130
131
80
137
76
84
87
99
106
123
108
155
106
134
80
73
199
185
78
134
128
87
154
106
93
83
99
144
136
93
90
64
76
87
147
89
128
109
155
80
151
87
118
69
87
91
96
175
80
76
87
94
154
69
83
80
87
146
145
80
88
143
118
162
80
75
117
69
57
69
175
107
154
83
129
85
110
93
119
88
121
136
119
175
119
119
80
72
120
97
89
120
76
80
107
101
137
129
115
91
85
128
69
156
78
146
76
122
122
80
120
80
130
80
107
111
155
88
135
106
87
155
86
133
76
99
66
100
113
127
72
115
109
175
155
119
151
156
185
111
80
73
98
69
94
94
123
89
66
121
52
134
80
128
134
78
85
100
178
80
107
111
109
69
87
54
91
93
131
89
87
109
106
156
99
102
110
141
56
131
87
107
146
113
115
102
164
143
150
88
154
145
137
152
156
104
80
93
74
104
74
80
91
131
76
78
104
113
143
125
102
80
162
120
109
106
132
109
72
72
56
74
131
140
119
87
197
69
91
94
96
133
69
78
67
88
69
163
100
107
115
111
131
175
107
76
131
129
115
107
148
96
133
87
109
88
78
139
119
80
156
99
76
92
80
87
99
85
133
69
87
74
69
87
121
94
87
112
93
82
93
88
117
110
101
80
89
127
83
90
169
131
93
94
151
78
120
79
76
80
113
85
88
115
102
80
85
114
88
175
131
93
88
69
143
80
84
119
134
120
69
125
88
83
83
156
129
113
89
80
154
76
143
125
88
155
96
119
80
121
100
76
134
94
112
78
106
106
112
96
80
134
119
78
118
91
156
111
87
76
137
104
88
104
90
99
197
89
138
154
99
128
89
120
132
107
104
154
80
79
114
201
78
121
112
66
76
87
69
129
87
96
146
133
111
91
52
151
121
69
69
136
87
73
89
83
120
76
96
129
156
175
119
80
99
87
143
145
197
87
136
80
111
197
88
128
109
151
128
103
80
80
107
134
101
43
88
80
76
78
136
143
93
69
69
142
151
54
107
76
91
120
118
78
80
120
146
128
78
78
69
80
127
78
119
80
110
94
87
74
114
107
109
175
126
197
132
88
122
104
82
112
88
69
89
100
134
80
68
134
93
87
146
134
122
93
144
82
122
76
54
104
94
113
69
69
107
80
102
162
69
113
109
109
113
76
109
102
106
127
128
88
116
80
134
141
75
117
78
88
69
152
88
101
115
78
95
120
148
99
76
105
124
142
80
69
112
76
175
181
118
69
143
78
96
128
127
137
80
117
109
120
109
80
69
93
87
133
121
143
99
181
119
136
72
75
106
107
110
137
80
56
80
117
121
140
145
127
185
120
160
89
60
69
80
144
80
119
111
129
112
89
80
89
120
132
87
136
76
148
109
134
71
91
78
140
135
149
89
121
96
155
69
117
94
78
68
56
152
80
100
69
85
109
87
94
78
132
174
136
119
110
147
79
69
140
134
133
79
159
87
56
56
108
110
128
156
69
89
125
66
73
86
78
134
72
130
134
109
104
129
113
88
99
96
80
131
87
69
78
80
78
111
80
78
104
112
80
80
119
85
99
136
72
99
69
117
144
119
143
119
106
89
138
102
150
174
96
107
145
144
144
89
122
89
163
88
96
175
89
56
88
107
144
89
93
145
111
112
72
132
88
72
67
101
80
117
72
197
175
109
102
105
107
99
130
99
88
164
146
76
80
89
69
88
104
64
136
124
104
127
71
69
103
136
97
122
148
139
129
69
115
197
78
83
164
76
88
159
80
163
133
127
54
54
154
98
174
154
93
80
80
117
119
89
110
138
119
107
109
120
114
117
78
88
99
87
87
155
112
174
121
91
66
52
80
109
76
112
132
89
69
76
99
72
112
175
85
120
78
140
110
129
119
100
154
109
119
98
94
99
102
107
197
98
142
80
87
101
155
96
87
197
78
76
125
91
151
43
80
164
107
72
127
94
94
80
174
136
143
136
80
128
120
69
80
115
126
132
88
131
43
92
72
143
72
148
89
138
67
94
87
80
96
123
78
87
101
175
147
83
128
78
101
143
83
90
74
107
128
137
87
99
78
92
131
89
128
98
107
183
82
104
88
78
80
66
69
127
69
117
123
89
97
136
80
91
87
87
87
137
154
147
69
112
121
102
107
118
147
163
93
89
80
175
143
69
109
128
119
128
112
145
131
152
90
78
89
132
125
88
154
140
115
69
103
90
148
140
93
106
72
117
87
117
94
164
118
154
93
154
89
197
88
88
76
124
78
87
101
98
78
175
156
119
76
105
136
69
119
69
146
102
59
109
113
76
114
134
127
124
80
80
80
101
115
80
114
156
93
125
110
122
150
108
120
109
100
94
69
78
69
87
141
134
95
87
96
74
72
120
80
85
121
132
102
87
112
80
104
124
109
136
78
119
120
90
106
124
166
88
87
131
69
80
89
136
69
109
109
140
69
80
130
110
76
205
109
80
126
87
56
79
128
164
91
197
152
125
106
80
197
120
80
69
155
56
69
106
85
93
101
120
94
89
101
149
117
76
94
72
85
101
80
93
119
95
136
78
80
95
96
94
91
74
134
80
174
96
140
121
136
112
78
151
125
69
134
106
72
76
166
113
128
95
92
111
69
146
107
87
154
76
69
112
156
114
128
175
117
69
155
88
109
149
197
105
125
106
56
99
83
76
92
94
87
155
120
152
103
93
128
113
136
123
72
118
109
112
96
154
140
83
129
110
134
140
69
91
94
88
87
52
98
80
111
80
155
80
113
78
78
125
155
69
105
76
107
87
68
52
119
69
69
69
78
69
162
73
101
72
80
88
148
117
71
124
112
109
111
83
106
80
43
109
87
43
80
100
87
117
85
128
72
72
106
72
123
133
136
80
88
104
80
97
69
69
104
80
175
118
104
69
120
138
119
175
78
78
155
110
147
99
78
104
99
121
80
93
120
132
98
80
112
197
76
112
75
94
120
119
93
91
121
99
107
126
197
112
131
141
96
112
185
84
80
142
76
85
69
97
134
130
105
109
80
134
119
144
80
127
76
104
145
103
145
102
69
76
56
80
120
78
93
120
120
91
93
122
80
107
87
120
120
74
143
43
132
72
107
120
114
87
69
169
95
100
102
104
109
91
85
69
151
79
199
136
100
157
146
78
83
117
104
80
95
82
80
121
104
130
123
118
120
87
156
134
121
80
122
101
137
134
80
52
127
83
80
136
127
78
89
136
80
69
136
89
80
78
99
117
76
154
120
113
119
125
144
69
69
101
121
101
153
101
121
87
69
111
164
121
110
175
127
99
111
89
144
155
138
120
149
99
107
78
80
155
107
76
131
87
69
80
118
87
138
112
164
74
128
74
113
105
80
113
181
97
155
111
136
136
155
175
99
147
80
87
131
80
87
69
101
119
109
135
87
74
88
175
69
99
76
94
79
69
112
134
71
69
122
66
78
145
87
101
111
87
101
128
98
107
104
128
104
107
69
138
80
69
131
131
120
89
110
86
119
109
120
99
94
74
164
119
69
78
112
145
80
104
76
74
95
146
156
110
69
127
112
88
80
88
69
154
76
78
94
76
102
69
121
80
148
69
71
119
107
155
69
119
119
172
96
69
111
88
107
69
86
76
78
69
154
43
80
101
69
109
122
94
100
78
88
120
80
96
74
80
136
175
69
121
175
107
101
83
107
93
153
115
69
174
156
102
69
143
112
156
160
95
116
87
80
89
80
129
197
87
80
134
147
78
89
103
80
78
69
163
131
103
134
133
122
112
141
121
130
80
87
89
106
83
143
86
80
136
43
80
138
123
174
80
80
76
112
134
175
80
87
156
80
104
107
104
104
94
69
118
107
107
128
72
69
154
87
80
76
119
156
129
119
140
115
80
112
124
119
99
80
137
89
110
154
133
133
104
91
175
98
95
117
88
137
101
121
130
76
69
151
87
86
144
96
112
87
129
175
103
109
154
89
99
110
175
80
96
89
114
117
112
94
151
125
87
91
140
119
175
102
69
175
110
143
87
99
119
104
94
106
175
87
80
89
155
78
107
183
155
93
106
81
101
128
168
131
89
74
80
85
119
151
96
109
85
80
137
144
94
155
175
112
87
119
76
87
88
80
75
117
119
128
78
128
68
87
106
89
107
128
87
175
108
147
146
130
109
91
145
154
132
120
145
109
78
89
89
115
80
111
95
72
69
80
150
120
197
128
83
120
140
88
149
80
87
130
94
86
69
156
109
94
78
175
115
113
107
140
85
87
175
119
80
89
69
103
80
114
96
80
96
155
120
89
107
107
145
148
99
69
78
121
80
106
111
98
136
91
76
106
69
89
87
113
56
80
131
154
78
113
115
88
69
118
95
119
113
110
126
102
112
80
80
117
131
128
87
93
97
78
69
113
126
119
80
78
69
152
107
80
99
87
96
119
169
75
87
123
156
76
151
54
119
87
151
80
109
144
76
126
109
80
96
80
69
92
113
80
134
103
134
131
85
137
114
101
126
96
69
175
83
103
140
80
74
88
155
95
121
126
88
107
124
69
98
64
121
97
80
80
80
69
96
130
143
80
89
69
80
80
87
150
69
88
87
69
138
104
120
110
120
110
79
69
81
124
107
160
152
136
148
109
107
89
75
69
109
78
111
110
121
90
112
155
127
91
120
76
102
69
136
104
85
76
130
113
80
113
134
119
113
120
107
128
93
120
109
121
102
127
95
74
76
94
128
132
104
93
69
74
150
99
69
103
158
129
175
123
96
100
123
88
101
112
80
69
88
137
130
99
149
131
163
122
119
109
143
93
90
107
155
121
80
119
99
93
101
87
66
69
122
102
80
69
104
88
52
148
115
80
121
117
119
69
95
112
117
80
102
151
68
121
154
145
113
131
120
93
96
94
60
87
99
94
80
85
64
87
69
95
77
88
131
148
118
107
85
199
80
100
76
110
155
163
56
80
121
137
113
72
99
89
124
106
120
69
89
96
121
143
69
140
164
145
132
131
74
118
126
80
137
115
78
110
111
121
164
142
92
80
69
114
99
80
78
121
117
120
121
155
79
80
98
78
98
98
138
52
118
92
131
80
120
137
80
87
112
147
109
154
112
89
128
74
120
124
79
104
107
106
69
145
140
80
175
125
69
119
80
143
142
120
99
128
125
119
156
131
78
140
69
107
136
111
80
100
166
110
80
52
93
89
101
120
105
133
43
146
91
73
152
80
129
117
136
89
87
140
80
148
105
143
78
104
123
94
88
72
69
112
80
121
134
69
110
87
113
135
148
78
175
175
120
99
137
111
87
114
87
80
133
128
112
93
120
132
120
109
89
56
110
76
100
134
133
139
80
98
76
111
108
78
169
80
87
175
80
102
175
157
120
127
156
110
100
76
107
120
104
72
163
136
140
119
94
197
76
91
163
151
108
89
80
154
78
123
128
126
148
109
119
69
88
99
88
154
140
93
109
124
156
150
76
122
107
116
136
85
78
125
74
76
80
118
80
117
101
72
69
80
89
116
69
119
106
89
146
71
59
123
106
163
106
69
155
100
106
87
117
52
93
156
109
56
136
131
128
143
66
76
91
93
78
72
87
78
131
134
85
69
112
83
80
174
123
99
132
143
116
162
104
110
69
109
80
87
95
83
102
117
90
80
123
76
95
102
183
114
69
101
153
54
127
120
89
80
134
93
145
93
80
74
110
112
94
131
111
111
87
109
107
80
87
209
128
174
66
95
80
151
80
104
96
145
104
134
123
120
98
175
162
144
154
99
107
104
155
118
111
78
57
143
155
107
82
106
128
107
69
197
74
88
56
87
175
94
157
76
197
160
106
156
136
80
81
163
64
109
107
119
69
80
85
175
87
154
128
90
84
152
121
76
134
52
128
156
108
96
110
110
78
157
80
113
109
126
95
87
98
131
54
175
87
80
117
80
101
121
118
106
120
106
78
131
117
100
147
69
113
76
74
149
94
94
76
106
112
164
153
154
91
134
154
140
88
87
72
125
76
87
88
99
80
87
121
94
69
76
87
120
78
114
89
151
69
123
75
119
119
160
147
67
155
112
156
130
69
89
94
111
87
80
129
87
125
112
88
101
103
88
104
76
110
100
69
120
118
127
124
80
121
113
128
102
75
119
138
197
58
114
93
119
125
163
197
127
78
54
110
117
120
72
116
120
93
87
90
95
125
146
99
96
87
76
117
106
133
89
111
94
129
111
69
136
81
113
117
117
106
117
92
100
123
136
144
119
107
138
130
93
80
88
156
80
80
110
134
66
102
78
60
163
147
94
76
74
91
155
132
128
115
88
128
87
76
91
165
69
101
122
89
136
125
121
149
137
138
81
104
139
99
94
95
107
52
104
69
114
160
183
134
152
69
99
130
175
117
119
119
80
74
119
107
97
175
76
104
121
134
75
128
116
181
175
80
76
176
120
118
107
163
140
78
175
95
109
69
120
131
120
114
97
87
116
52
89
80
80
80
120
155
113
91
119
109
133
64
88
87
124
94
93
110
93
101
80
154
52
131
76
125
109
117
76
77
106
78
90
110
113
119
131
80
76
113
136
101
95
99
175
146
96
175
94
69
94
100
95
74
81
166
94
143
69
106
149
119
143
67
72
74
80
134
94
125
175
132
122
133
151
124
106
101
132
78
148
87
118
79
80
105
101
140
69
71
128
119
125
69
120
164
134
137
122
52
88
136
127
80
185
103
69
80
94
95
151
80
69
134
120
80
69
56
96
119
89
80
104
87
80
88
120
80
114
117
89
154
129
76
94
88
80
105
113
201
101
110
122
89
130
94
74
90
85
80
78
143
131
88
95
140
96
100
87
102
164
69
136
123
69
127
74
107
69
175
120
136
80
80
87
115
151
120
136
160
80
69
69
80
151
69
130
87
80
88
52
123
92
165
131
69
104
138
103
175
120
102
122
80
80
87
88
111
69
80
120
156
91
76
162
111
129
140
115
56
69
54
122
87
88
154
88
122
107
87
91
151
127
109
90
159
146
112
126
120
79
104
78
151
76
107
106
109
52
112
93
163
109
89
103
96
104
96
90
137
76
117
119
99
119
138
94
136
103
136
96
146
145
83
156
107
94
115
69
120
87
93
80
121
87
87
118
124
109
87
160
91
78
99
123
99
117
94
101
119
101
104
113
131
130
85
84
142
155
94
87
78
69
114
130
69
80
87
82
126
78
58
113
92
91
78
93
131
75
114
80
144
114
164
80
110
121
151
140
69
96
89
74
128
96
183
135
162
109
88
146
104
69
76
69
99
93
109
78
119
106
100
76
69
95
107
77
125
197
110
117
103
174
89
117
54
155
169
93
83
103
87
99
72
85
89
107
156
87
58
94
78
76
175
115
80
143
120
80
99
69
69
69
89
117
138
120
83
94
80
175
122
85
99
78
104
117
99
89
120
78
110
118
128
87
94
91
69
78
140
115
78
76
145
80
80
87
104
155
110
69
87
119
103
99
130
89
80
89
78
114
94
66
87
136
197
121
69
85
127
80
126
119
91
112
78
72
80
69
69
113
146
93
120
80
102
106
80
80
79
126
89
104
80
60
56
125
156
87
93
134
142
80
78
80
88
120
156
125
85
185
136
80
94
80
94
130
107
120
88
133
119
93
89
115
115
76
72
80
149
99
78
80
76
107
117
118
129
133
100
80
119
113
117
118
85
151
78
128
156
80
110
69
104
121
73
110
94
87
80
175
163
94
175
83
93
87
123
138
109
144
54
137
78
69
94
154
115
69
100
80
101
76
96
115
114
99
108
79
154
123
84
106
54
80
78
80
74
110
58
76
69
119
99
76
75
78
175
80
81
76
87
87
103
69
99
122
69
99
110
76
91
120
181
117
183
119
175
110
117
104
69
103
114
120
110
156
74
88
197
136
131
120
118
104
151
113
113
76
99
78
87
87
89
87
175
76
112
111
79
136
113
110
88
78
79
76
151
82
119
117
113
101
183
76
125
118
150
88
76
107
110
85
112
160
145
69
69
89
147
104
109
123
120
156
69
60
157
113
79
69
91
174
117
113
100
197
136
69
197
78
93
94
88
87
120
109
148
101
154
80
117
151
69
151
67
107
76
69
121
110
80
164
79
119
123
72
69
80
110
165
123
75
87
91
123
101
118
72
69
78
133
126
89
80
80
80
110
92
78
78
144
91
115
78
122
83
87
112
125
128
87
112
98
110
121
130
143
133
87
142
185
117
201
78
175
121
76
69
80
76
112
81
95
69
175
90
175
119
80
128
175
154
135
154
109
132
106
72
146
104
127
72
99
90
123
80
132
87
164
95
82
171
91
88
78
115
175
128
106
76
101
110
76
74
98
113
114
111
74
116
98
117
107
87
76
131
119
109
87
76
89
119
78
76
69
111
124
119
154
115
72
126
127
106
78
111
117
113
76
104
69
96
119
87
80
117
80
126
80
148
129
69
136
136
78
117
93
99
69
69
107
88
100
135
107
118
76
197
106
118
69
80
121
107
146
107
120
99
109
94
112
101
69
64
87
97
104
74
80
69
152
72
80
80
197
89
154
129
162
99
120
76
109
120
72
127
69
120
106
99
120
164
164
114
89
136
150
128
136
142
175
138
80
118
119
115
80
80
96
97
128
78
142
134
156
111
126
160
131
112
78
72
82
109
131
80
113
104
80
114
94
80
99
112
123
134
154
85
102
116
142
154
146
123
63
109
129
87
109
137
56
120
80
175
80
87
91
154
78
134
109
129
69
175
72
120
78
66
80
127
106
80
176
145
78
91
163
107
56
122
80
175
110
52
156
134
72
96
175
166
80
87
118
123
106
109
133
132
119
128
164
137
125
175
91
67
107
112
151
94
138
102
89
74
175
80
197
112
99
119
110
145
195
140
131
96
76
151
131
101
119
143
110
205
74
107
131
87
64
80
181
156
116
156
76
134
134
159
112
110
106
104
120
89
163
107
105
94
94
145
115
140
91
119
100
80
151
79
87
136
111
87
110
109
54
112
106
94
111
121
143
115
124
76
103
94
52
104
119
87
78
109
119
75
120
80
76
118
137
158
154
147
119
175
153
103
130
69
151
131
88
52
131
87
175
113
142
158
54
175
78
117
124
80
103
121
94
125
120
120
109
99
69
110
80
122
78
93
115
80
118
87
94
118
80
104
119
91
93
110
91
119
88
89
124
82
136
120
99
114
91
121
151
72
78
80
69
69
88
80
69
119
110
88
109
78
150
56
143
134
69
107
76
155
69
146
74
128
80
89
78
121
154
75
101
69
89
121
117
151
164
89
127
87
91
175
102
164
131
75
125
101
69
117
118
107
197
106
111
119
144
88
133
124
156
128
128
116
154
119
80
87
109
132
80
113
80
88
106
80
80
126
119
76
154
131
90
88
96
130
112
154
82
76
119
91
119
52
113
80
118
96
104
159
91
101
152
127
69
69
69
98
120
161
80
110
80
76
126
109
80
174
102
107
98
99
148
88
117
115
80
79
75
104
69
66
78
185
112
89
99
58
140
88
146
137
134
82
108
76
119
107
63
119
163
137
85
137
117
160
100
80
82
76
99
95
131
69
115
78
106
148
104
94
78
104
101
127
134
110
91
78
123
71
163
92
87
117
156
127
92
76
90
126
80
126
108
78
56
89
131
76
122
72
120
175
107
120
80
150
101
128
113
137
109
148
110
110
88
119
78
113
155
83
54
103
99
79
69
125
103
107
76
136
92
80
80
88
131
154
69
99
124
145
52
69
175
159
109
93
118
119
80
69
140
175
119
89
132
154
101
175
90
79
104
111
87
78
133
99
175
54
125
140
119
69
94
128
78
106
75
87
175
110
91
80
98
94
90
154
131
87
131
109
119
87
89
74
76
94
91
110
175
69
67
112
136
103
89
93
128
80
89
103
80
126
126
143
149
82
161
154
80
118
100
136
134
154
114
78
111
136
69
83
71
133
118
58
56
110
109
150
96
136
111
79
89
69
107
134
87
123
76
54
155
71
69
104
89
138
76
135
113
140
154
133
110
89
121
134
94
112
80
117
107
119
110
80
100
140
144
93
140
80
113
89
92
133
100
136
88
76
131
85
106
77
88
120
94
111
140
106
74
128
107
159
119
105
181
101
154
119
93
99
80
80
120
80
114
90
88
94
144
154
163
131
113
89
159
80
121
87
119
129
129
91
80
77
91
54
97
109
125
85
115
80
131
107
128
52
133
106
155
94
117
78
120
113
126
133
100
119
76
78
99
145
111
147
140
111
137
104
104
152
119
80
108
108
115
88
118
79
106
104
95
69
97
104
137
86
87
119
106
119
74
117
93
185
94
88
146
69
89
80
73
112
80
169
89
156
93
93
169
122
197
91
163
88
103
109
69
117
69
113
85
56
87
152
74
104
147
103
128
145
108
78
80
143
127
117
175
99
103
80
69
96
128
102
131
80
113
87
113
113
114
89
201
197
87
115
143
97
127
94
74
88
93
138
166
102
120
117
76
69
97
140
141
87
99
109
72
80
181
118
80
106
80
104
101
157
76
115
112
117
121
78
110
78
130
102
163
94
78
120
80
94
145
80
80
104
120
80
115
113
107
80
69
87
131
163
88
91
163
78
109
76
126
69
76
134
100
110
102
128
80
106
156
124
137
112
60
87
137
149
155
85
87
147
80
137
54
80
121
76
85
104
123
107
87
110
120
88
78
107
143
80
64
66
96
145
94
87
87
88
127
129
145
80
131
128
88
100
94
114
80
148
112
101
89
121
156
69
87
117
101
109
80
141
74
90
119
131
152
127
80
131
101
140
87
91
140
115
83
110
164
83
93
74
79
140
78
117
140
69
87
64
79
76
163
80
145
129
147
94
96
60
119
69
89
71
163
91
115
107
119
123
85
112
117
151
63
74
89
98
102
96
87
80
109
69
123
109
143
154
69
175
76
136
100
151
87
80
94
95
151
114
80
96
116
88
152
69
121
83
154
129
130
156
129
119
132
154
183
104
90
72
99
134
147
120
151
143
175
128
87
130
105
107
71
104
60
94
111
175
107
120
80
75
80
124
122
63
133
76
64
113
69
87
119
113
80
128
100
127
78
76
78
128
122
80
89
136
80
131
82
76
99
95
87
119
126
114
80
132
133
89
120
69
80
181
93
118
69
119
56
104
78
109
69
107
107
56
121
107
119
117
175
102
136
95
76
101
121
85
74
87
143
78
142
128
109
90
91
139
126
135
80
107
131
124
69
113
109
78
69
144
107
89
127
156
113
119
109
69
163
80
122
109
74
94
107
127
120
76
87
156
119
76
69
115
66
94
175
114
98
80
96
69
131
114
163
154
103
69
120
140
103
80
91
128
152
99
52
91
125
160
80
109
78
96
113
107
69
76
112
136
103
72
131
76
98
106
112
75
43
144
106
90
80
89
64
78
114
76
87
87
120
134
76
107
88
67
58
54
119
119
69
91
110
80
76
87
128
121
100
78
155
91
88
69
119
106
147
131
121
69
76
109
83
89
90
100
91
89
82
80
185
128
88
146
67
78
175
132
137
95
76
99
110
69
131
80
116
80
69
87
87
88
73
112
120
94
111
138
87
80
111
69
87
124
85
122
88
117
87
98
106
54
118
69
89
85
120
142
83
110
185
126
119
93
107
112
80
88
80
134
120
104
89
87
163
107
119
88
80
160
54
100
121
126
128
69
131
76
80
101
87
112
73
144
76
78
96
82
69
128
154
144
87
119
165
129
119
93
52
96
78
113
74
80
89
117
78
43
117
78
88
76
107
109
69
175
92
111
134
146
111
113
96
74
156
175
110
110
175
69
89
78
131
69
87
117
94
154
87
109
109
91
85
74
127
156
136
69
153
80
80
89
104
104
99
174
117
76
164
76
76
78
80
132
110
142
155
110
69
144
111
154
54
72
131
193
74
134
112
138
72
111
80
107
128
107
100
72
134
94
109
72
88
88
155
83
76
69
85
87
69
102
87
157
78
108
106
67
103
80
123
74
88
78
92
80
87
78
117
102
201
110
120
117
133
68
87
54
130
101
56
72
133
100
186
87
69
128
93
69
89
69
144
102
77
119
178
80
69
119
122
115
76
120
119
69
80
100
115
80
75
164
78
96
87
101
80
88
96
126
127
57
119
112
151
121
99
163
143
128
66
125
89
113
69
91
100
91
92
176
80
85
138
78
99
91
113
174
195
156
147
107
69
87
94
120
69
132
87
122
56
76
78
157
80
118
80
106
132
103
109
118
80
80
80
152
154
106
119
78
99
120
102
101
107
80
163
115
131
111
76
89
87
91
133
154
164
126
72
68
125
99
155
76
76
78
147
71
175
131
138
92
146
113
107
128
175
69
88
128
88
133
117
134
114
143
113
136
119
69
132
107
119
134
43
106
101
88
113
114
104
120
69
73
85
94
69
78
124
157
91
80
185
131
95
114
85
119
136
71
95
115
148
119
80
54
175
102
134
107
131
80
87
107
69
93
99
164
72
124
102
87
54
122
87
120
126
69
104
69
69
166
82
99
106
92
143
126
94
183
80
163
121
112
153
89
143
117
104
170
105
175
117
97
106
101
113
80
175
104
107
69
175
119
113
127
175
88
113
103
88
163
139
90
107
76
151
131
100
76
110
175
78
112
80
74
141
112
119
89
87
80
78
121
80
115
89
131
110
148
143
119
155
166
112
112
119
101
115
137
156
72
80
87
156
80
146
140
127
125
85
117
106
164
110
106
87
197
87
76
99
128
131
87
94
128
199
82
89
197
93
69
113
99
106
119
69
78
120
91
80
112
174
107
201
91
69
114
109
82
75
80
76
137
106
101
89
81
87
164
80
93
88
140
109
88
151
137
118
94
117
80
69
78
69
69
89
96
88
85
96
178
95
91
155
107
112
69
63
80
98
73
128
121
160
76
149
102
98
175
80
143
152
69
150
82
142
119
144
120
123
76
72
69
146
131
114
117
87
89
94
109
119
76
126
87
151
136
149
76
127
88
80
175
72
82
87
117
102
117
112
87
72
93
80
87
72
93
107
80
119
119
80
72
69
88
175
156
137
87
87
80
111
140
106
109
78
92
138
106
107
115
106
117
93
54
99
93
80
78
104
114
80
80
69
66
102
120
52
94
117
119
88
175
43
100
130
197
117
80
106
126
69
108
78
119
163
134
76
109
80
80
144
104
69
159
104
112
76
94
99
125
119
76
102
76
134
109
82
80
131
132
69
76
106
69
109
78
117
96
151
89
80
76
88
131
140
119
75
105
185
185
133
69
154
175
175
130
113
129
109
76
100
69
76
93
96
143
93
88
75
87
113
89
109
119
130
76
121
76
109
175
85
80
128
79
129
121
80
120
147
119
87
80
131
125
56
197
87
101
80
69
69
98
95
107
130
89
101
69
140
104
120
145
113
104
133
104
80
80
128
56
127
78
98
56
119
78
108
154
90
69
128
145
131
120
90
74
87
108
76
69
109
85
130
94
72
82
197
78
183
80
98
136
112
99
80
76
94
80
163
74
93
117
101
119
118
83
136
90
119
80
169
54
72
152
87
100
124
76
87
121
80
145
93
78
136
136
80
69
80
94
80
69
120
134
120
66
95
175
91
69
144
92
101
100
156
129
107
69
120
197
100
80
89
100
101
112
99
89
80
132
90
69
119
122
128
111
149
102
136
145
119
89
114
94
83
99
121
110
109
148
182
80
69
87
155
113
69
95
142
103
109
156
123
109
89
209
96
107
91
64
80
112
197
115
69
80
117
93
108
92
67
117
140
87
80
136
69
103
74
109
87
107
87
148
112
87
119
148
121
125
142
69
151
74
151
151
89
69
104
102
88
154
52
175
80
138
78
80
120
78
107
69
88
87
156
148
151
87
110
134
119
118
164
134
128
101
80
101
134
69
177
102
144
113
119
107
124
90
136
96
80
118
85
87
104
96
76
121
89
102
99
52
112
76
88
102
111
131
69
106
113
156
199
80
146
113
96
91
93
54
89
88
136
87
99
175
80
93
128
52
120
150
175
95
144
69
69
127
63
79
119
107
109
119
112
131
80
80
80
80
69
89
110
119
118
119
72
69
155
99
57
145
80
96
113
114
92
110
143
119
56
69
106
197
119
131
78
140
175
76
110
185
117
83
69
109
104
106
93
87
99
131
80
122
151
102
107
102
104
103
154
120
146
119
56
71
101
152
80
146
89
56
175
141
78
80
78
69
104
97
110
100
175
109
101
76
119
115
99
69
120
101
131
88
78
87
80
125
87
127
87
113
114
87
110
117
93
119
163
99
80
122
80
95
132
69
113
109
87
78
145
78
52
73
118
100
89
96
119
142
88
97
94
106
107
162
156
111
80
97
100
89
73
98
174
76
76
78
123
106
175
175
119
99
94
110
76
109
69
88
118
171
74
123
88
76
69
145
103
140
117
119
140
80
143
78
88
119
115
114
99
96
80
110
112
107
175
80
131
140
76
112
175
85
78
89
99
69
91
114
88
89
119
111
89
94
142
118
85
96
136
119
117
104
80
80
95
72
93
87
197
146
129
113
131
104
78
133
69
116
197
80
97
148
80
128
166
104
112
95
117
143
87
109
134
94
128
106
120
156
76
119
76
80
134
147
130
96
99
131
114
99
154
128
78
164
123
56
119
110
76
147
97
121
69
102
143
146
126
175
94
175
103
80
122
123
163
80
110
114
163
89
104
106
78
109
134
94
175
119
74
119
100
52
80
78
74
111
151
117
126
119
136
131
74
88
94
120
127
89
76
114
106
145
139
114
160
87
107
80
140
56
119
80
99
151
133
110
120
88
119
76
106
116
132
72
76
140
80
76
88
120
140
100
119
80
129
80
101
121
68
109
201
117
93
154
120
175
106
76
113
175
94
163
130
80
124
114
105
119
121
52
71
119
194
76
113
69
87
119
103
87
56
141
165
71
123
77
94
69
69
101
154
74
154
123
88
147
123
88
112
120
121
102
94
125
156
131
87
119
99
117
119
52
85
125
90
175
69
113
120
119
128
112
104
136
136
52
69
89
69
119
113
130
120
127
114
80
101
122
156
91
175
117
127
120
175
120
93
151
87
102
80
110
110
104
78
87
56
76
119
87
119
112
80
163
80
78
80
100
76
80
113
80
104
201
89
134
120
80
93
72
109
137
76
106
98
104
110
76
118
85
120
117
69
80
74
131
120
127
101
120
88
118
186
120
141
69
154
76
121
120
69
159
122
100
87
115
87
147
110
143
104
80
131
86
87
88
80
107
110
123
119
175
89
156
121
74
81
89
94
80
162
148
101
74
80
93
138
91
117
134
69
99
99
169
140
80
133
87
121
107
142
100
80
102
121
80
69
140
109
118
80
119
109
119
104
118
156
80
91
88
99
115
110
110
59
197
69
145
100
160
80
76
78
163
103
94
119
69
87
175
89
126
175
78
121
175
112
69
69
69
133
87
134
89
102
110
120
96
86
134
175
87
90
74
98
78
43
127
106
110
120
123
88
76
118
131
119
87
134
110
87
122
87
137
99
131
109
56
54
83
119
117
89
156
52
58
154
69
105
92
103
69
88
80
107
76
120
120
76
78
69
52
104
109
117
175
96
128
134
69
96
69
197
89
113
151
99
87
80
99
145
103
156
155
127
69
121
116
121
72
101
123
78
130
121
197
99
107
109
80
97
76
43
69
69
127
131
93
91
87
123
80
156
69
121
67
114
120
140
145
124
76
134
69
119
93
69
113
146
90
112
87
199
96
117
151
94
77
164
87
106
117
87
89
60
94
87
117
87
69
129
118
87
88
160
80
106
104
90
80
99
136
69
109
74
87
85
117
80
109
109
113
87
147
175
107
92
96
106
119
131
134
82
144
82
163
80
89
107
119
72
134
145
150
119
117
110
113
109
88
130
96
152
119
78
91
89
118
141
107
74
110
133
89
148
58
63
104
134
78
118
111
82
130
78
54
89
162
115
69
119
121
114
121
118
58
88
80
160
104
183
118
80
113
78
99
69
69
80
104
99
80
80
80
140
94
154
106
133
131
101
113
151
156
138
80
94
109
69
90
81
136
76
157
102
80
80
175
83
80
76
69
119
91
187
78
175
69
107
98
112
131
66
99
88
112
86
100
107
119
88
80
121
124
85
111
80
124
80
78
78
155
161
123
120
80
67
126
102
131
69
75
87
83
181
110
71
78
87
156
121
151
95
80
187
154
94
72
109
87
67
136
69
120
154
110
87
80
183
89
78
128
99
118
117
85
152
78
69
87
107
104
122
95
104
131
98
80
152
103
124
120
122
92
76
64
80
93
175
140
175
74
89
69
104
78
87
154
110
121
113
197
102
119
109
87
155
119
88
125
153
104
67
43
72
80
80
134
115
160
107
156
175
78
136
112
108
137
78
138
80
155
119
117
69
113
156
104
115
120
121
175
101
87
80
87
120
78
178
145
104
80
69
75
80
121
78
106
78
72
117
80
69
95
137
113
88
99
140
107
72
109
80
114
69
175
69
69
197
133
175
69
137
163
137
87
80
81
129
87
120
175
120
183
80
109
76
87
115
128
80
110
119
130
122
111
129
80
145
94
112
99
118
74
144
91
171
115
87
87
69
80
69
121
104
84
128
80
177
88
78
104
99
43
175
88
115
67
91
163
106
80
116
76
76
78
87
80
80
85
87
88
87
123
128
128
99
99
140
104
87
76
136
120
113
121
119
109
175
87
72
160
78
80
128
125
109
74
113
147
119
154
87
119
143
104
97
81
94
87
151
139
100
69
89
111
76
87
112
136
155
109
145
126
106
155
119
113
112
131
166
197
121
80
128
119
80
88
197
102
69
121
87
175
107
130
127
118
131
122
99
76
136
88
101
107
88
69
80
79
87
175
118
117
87
104
165
118
89
106
101
89
119
74
117
87
81
197
118
80
123
101
99
72
69
117
155
98
52
120
76
109
106
126
88
75
81
101
119
89
110
102
156
134
69
128
134
136
155
100
89
76
175
88
92
119
107
106
112
80
143
175
120
69
110
80
89
69
118
138
88
80
139
87
103
87
175
128
103
119
134
94
129
102
117
119
118
127
78
119
80
134
120
140
69
115
69
94
106
78
103
131
143
102
80
75
119
110
136
76
113
132
113
80
80
87
96
99
56
110
126
101
145
95
151
69
120
140
88
94
98
136
88
178
94
127
104
80
87
104
80
131
87
101
127
119
134
131
114
88
113
89
69
175
87
78
77
71
56
113
74
80
71
109
94
80
76
96
91
87
92
120
89
113
78
156
88
78
110
96
89
148
80
121
134
78
89
91
110
128
175
87
91
137
76
93
88
81
106
120
136
119
175
89
87
80
76
69
119
89
88
110
109
85
105
69
114
133
128
76
115
139
69
83
107
120
89
112
78
110
85
201
127
87
78
82
136
74
121
166
120
99
132
112
87
88
164
201
69
69
76
116
160
99
81
80
78
123
126
151
109
121
109
154
76
93
142
107
101
91
84
113
87
132
132
151
113
76
120
136
132
80
131
76
124
123
104
119
127
72
119
96
80
99
78
132
135
94
96
82
88
110
99
122
115
120
83
109
99
197
76
151
154
99
99
69
121
69
93
80
154
101
80
120
69
123
134
78
87
90
56
144
155
124
133
78
127
120
82
130
80
69
76
80
96
69
80
92
128
143
99
109
120
56
88
152
134
80
66
110
74
87
81
80
130
99
87
88
137
131
88
78
101
109
120
99
113
98
80
78
129
119
109
80
80
99
69
155
89
101
162
99
76
54
119
78
144
69
91
136
59
69
151
115
85
155
78
80
80
88
133
87
148
175
104
164
147
80
181
118
80
152
56
78
118
80
104
107
133
128
131
76
136
111
109
104
111
87
136
123
83
87
119
156
80
103
104
128
133
76
96
109
69
96
80
137
109
107
89
58
156
89
103
96
154
152
96
99
76
136
71
87
80
99
155
132
157
137
99
115
102
69
99
121
76
88
88
140
69
113
90
98
101
76
120
76
128
100
93
110
72
91
113
134
132
118
94
132
96
52
69
107
121
87
197
93
69
109
133
123
69
76
73
116
119
147
87
78
76
140
131
131
156
80
100
93
80
109
113
71
113
88
121
90
78
80
69
127
69
119
154
87
133
80
80
140
123
107
143
80
112
90
54
119
101
139
80
112
69
107
118
151
94
80
75
84
119
106
107
106
87
110
106
112
72
120
87
89
99
129
88
76
75
154
78
104
80
76
121
104
160
106
112
76
128
83
118
120
80
80
69
76
78
114
74
96
106
106
100
90
148
76
72
104
154
119
78
69
72
93
140
69
117
78
110
74
87
56
104
69
131
129
94
112
79
90
129
136
88
78
137
114
54
175
76
80
107
107
111
142
92
134
148
137
113
129
85
69
87
126
130
78
114
91
69
149
118
71
108
114
117
106
94
80
64
108
136
101
99
151
80
105
72
69
99
151
128
80
133
101
104
120
117
113
156
69
115
209
118
75
120
120
128
112
94
87
125
80
120
87
99
96
120
152
78
109
120
80
132
143
88
59
102
137
87
101
99
143
94
113
131
123
98
115
128
110
54
100
87
73
120
88
76
80
119
157
172
59
88
101
132
80
91
175
90
59
87
68
76
136
87
114
89
107
96
121
122
107
69
154
104
165
69
80
69
87
87
78
140
52
52
119
122
105
78
124
124
100
110
80
79
69
121
160
78
72
69
69
113
80
106
69
69
78
104
72
89
78
69
151
109
126
172
69
87
78
91
197
86
89
151
111
105
136
136
106
78
132
148
123
120
134
162
112
76
69
59
80
107
85
150
140
76
107
69
111
99
110
116
80
93
89
76
130
67
112
98
126
69
80
154
108
87
99
117
121
133
80
96
88
79
146
112
104
126
136
152
89
163
88
80
80
109
110
80
80
140
126
72
134
116
131
100
119
153
80
134
83
117
76
138
87
88
90
87
121
80
72
155
80
175
131
196
76
107
95
119
87
99
52
101
128
80
80
88
120
112
69
119
119
96
80
106
76
116
80
58
80
86
104
175
117
139
164
136
104
131
78
185
103
140
138
85
128
69
80
76
124
102
80
119
117
69
120
115
141
112
93
112
197
103
156
103
87
129
87
69
80
137
124
56
104
107
107
107
69
121
118
80
136
143
122
104
72
120
89
119
111
91
105
107
118
123
174
109
80
117
122
128
69
95
93
89
92
111
131
136
96
72
151
89
101
119
131
109
137
151
154
80
101
90
102
119
56
78
78
119
89
128
101
106
92
76
96
78
134
68
154
129
98
107
175
114
78
109
163
146
168
156
72
117
76
100
132
130
87
94
94
175
80
116
81
95
127
130
128
121
146
108
78
139
95
137
106
87
94
127
111
107
69
164
156
104
76
123
107
56
69
119
80
104
127
138
88
72
107
119
130
69
107
99
54
119
119
140
123
111
137
121
80
76
114
69
175
67
108
175
120
119
163
94
69
102
68
80
122
80
94
88
134
119
121
52
175
80
128
158
197
87
76
119
109
137
130
110
140
107
83
96
115
80
110
88
101
80
80
83
89
113
132
156
175
113
92
83
112
101
101
76
89
121
78
134
76
78
95
87
104
96
102
134
93
131
136
91
76
76
140
88
89
69
104
112
94
120
73
91
80
154
94
87
144
80
150
109
147
69
154
76
52
80
175
113
128
78
163
106
145
99
110
151
119
73
80
148
76
151
125
93
131
87
154
76
75
133
99
124
82
80
94
71
76
147
96
69
175
106
96
99
76
89
98
94
113
145
183
164
80
123
164
99
80
89
145
107
69
136
87
131
110
136
73
113
140
96
154
80
69
87
119
130
74
78
74
112
97
80
89
134
106
128
120
87
87
119
80
128
102
103
115
69
115
175
80
80
128
80
54
94
80
89
80
149
162
87
118
128
80
165
102
136
127
66
175
106
78
140
109
110
99
175
113
129
131
69
96
106
109
85
87
124
137
76
120
103
117
96
87
102
107
121
76
78
80
85
80
112
88
120
113
99
72
134
154
112
94
85
54
99
117
128
113
80
93
90
121
72
88
139
102
147
72
99
78
80
88
88
87
131
123
110
80
121
142
87
58
74
118
112
134
69
145
80
163
95
80
76
127
93
93
93
136
69
119
79
54
113
130
72
87
82
131
140
176
102
54
80
138
145
87
89
74
116
71
43
76
133
78
80
102
80
94
128
156
101
69
120
69
118
69
78
146
95
137
127
110
99
88
101
145
87
143
87
156
120
112
69
104
89
54
98
155
76
137
72
110
87
119
119
80
99
78
58
130
80
86
80
80
120
100
130
147
76
119
80
87
67
117
69
134
89
123
80
143
151
145
141
132
87
89
131
120
52
80
108
76
125
155
215
80
144
120
80
94
138
80
78
197
143
79
76
107
83
107
80
197
151
80
119
115
129
154
131
93
69
175
134
43
87
76
78
96
120
99
80
183
109
163
98
76
78
89
134
99
89
80
114
76
99
138
144
98
96
175
131
121
112
118
93
113
103
163
163
115
79
106
72
104
66
197
99
151
181
117
143
87
80
119
110
119
76
93
106
126
98
72
80
199
83
117
78
148
150
137
85
94
80
119
117
107
85
106
69
110
70
128
78
94
145
80
113
133
136
111
76
127
101
80
120
131
136
110
100
78
111
104
131
89
107
126
56
87
102
147
96
156
120
103
155
80
130
69
123
119
126
137
123
80
127
110
69
109
90
80
88
78
88
76
144
87
94
116
89
76
109
94
102
87
113
115
112
120
88
118
123
163
120
87
122
114
87
102
111
119
123
117
69
107
114
72
156
64
99
80
80
78
130
115
134
106
87
96
113
89
85
120
87
175
68
115
69
83
79
88
117
80
99
183
130
99
88
69
131
123
76
93
110
197
52
89
118
122
121
143
43
69
137
131
93
89
69
69
117
105
90
69
113
78
117
155
90
96
80
129
172
106
131
120
124
80
151
79
105
104
90
163
132
111
134
74
197
72
128
80
110
104
142
107
100
112
134
127
110
72
110
133
127
155
89
152
136
128
174
94
81
69
148
76
72
104
150
69
127
104
92
130
69
155
145
134
142
69
113
74
74
91
136
99
52
88
88
100
87
140
88
69
80
87
145
130
118
82
76
74
119
69
197
102
59
69
106
99
100
69
121
142
138
127
80
134
90
78
87
76
52
134
119
76
104
80
169
80
69
87
69
105
172
110
74
119
128
90
111
69
96
100
69
120
126
76
78
89
69
87
89
158
69
103
163
71
74
106
100
87
80
108
131
118
118
117
87
96
117
88
178
175
114
56
133
121
117
101
80
106
67
96
80
80
129
60
134
117
82
113
94
76
88
109
201
85
88
72
154
143
76
175
109
154
112
140
119
60
83
104
117
121
131
136
154
162
99
107
87
91
128
98
125
80
83
90
105
134
78
76
87
89
128
87
69
94
93
88
175
110
130
140
181
85
103
102
124
130
89
114
134
80
78
147
69
111
148
87
88
69
119
104
175
122
89
141
109
76
128
87
120
121
87
127
80
110
80
144
154
98
122
145
94
106
162
126
106
122
120
76
128
74
175
91
95
69
78
93
115
154
107
136
99
117
128
102
82
114
83
91
91
125
109
106
96
59
144
119
69
119
100
104
107
86
76
69
155
112
99
88
156
104
93
136
128
154
145
80
107
69
69
109
80
162
74
138
91
112
96
151
135
144
144
69
154
100
69
134
74
80
101
113
142
163
123
114
128
93
94
152
80
115
76
76
119
105
80
175
102
122
136
99
87
106
106
89
80
116
172
162
205
118
107
87
80
102
117
150
78
132
119
175
78
78
110
101
145
80
137
130
119
80
80
80
131
69
80
142
76
131
133
107
106
127
120
128
84
104
96
156
87
76
109
119
115
80
104
175
163
64
54
128
82
78
140
87
80
102
140
139
78
132
121
69
104
112
66
150
88
199
101
110
87
85
56
102
87
76
148
113
128
89
80
132
100
120
99
93
155
175
93
148
106
151
76
137
122
83
139
78
80
109
107
89
119
136
109
89
120
134
88
131
120
78
76
151
78
71
59
69
78
201
113
89
88
85
143
111
134
131
87
117
92
104
71
134
154
87
80
87
100
145
69
80
80
77
80
143
119
197
119
128
108
88
155
111
151
69
151
99
69
106
122
76
109
78
87
80
69
69
94
78
121
69
99
113
99
133
119
120
163
88
108
78
64
78
74
110
140
95
109
96
127
151
120
110
66
80
128
88
175
96
100
153
69
157
175
69
80
109
93
87
110
121
110
87
74
60
124
107
98
109
85
43
75
117
104
87
89
107
137
148
76
128
106
157
124
148
80
119
88
125
128
88
83
79
95
117
128
140
99
69
134
141
112
78
76
112
88
125
87
128
76
96
119
126
112
104
106
138
107
54
88
107
123
119
154
119
80
82
140
76
113
136
98
75
175
106
99
76
101
131
140
96
80
175
183
119
101
109
107
128
106
87
87
140
93
78
143
133
119
88
80
106
80
76
76
56
69
109
133
80
106
83
123
136
96
64
154
122
80
80
69
74
88
136
76
151
132
104
199
87
104
67
78
132
78
69
151
80
87
121
76
119
145
120
74
119
144
144
80
123
80
80
78
67
137
94
132
69
175
89
132
151
109
80
128
76
120
85
104
104
118
144
76
107
78
69
110
80
78
119
99
115
94
69
119
94
80
91
128
172
59
102
76
123
156
127
54
201
78
69
117
94
133
104
111
146
115
72
102
69
148
146
144
78
117
122
72
106
93
121
134
136
154
80
80
100
87
81
109
69
119
87
156
134
58
69
76
131
175
80
87
90
132
80
79
175
117
120
100
121
175
90
80
134
142
119
74
78
90
113
175
127
119
121
88
128
114
94
69
67
208
96
175
156
136
131
87
87
154
119
102
133
133
89
123
134
137
96
103
175
54
155
78
82
76
99
97
85
99
132
110
80
137
109
197
114
119
80
78
119
134
118
69
144
69
155
109
137
80
104
137
96
112
146
69
120
76
82
69
144
119
160
175
126
165
91
87
127
67
67
175
139
91
80
72
110
122
82
102
78
113
174
80
129
80
85
91
78
94
43
76
111
72
112
136
106
107
98
133
69
136
163
80
89
104
71
209
93
104
155
80
89
175
69
107
117
110
106
63
118
80
69
80
114
75
80
107
93
106
74
103
100
127
80
100
102
96
99
164
80
78
87
97
80
116
96
106
146
94
134
154
78
94
119
83
132
136
104
89
122
133
209
118
90
78
131
151
119
87
127
80
72
127
80
154
80
155
72
113
146
156
167
145
152
163
164
106
103
69
88
154
119
74
151
109
140
114
88
71
113
89
109
59
78
134
119
103
149
108
92
109
122
106
85
94
80
117
199
80
146
140
88
69
78
121
117
80
95
89
102
72
100
153
54
121
63
133
125
88
80
156
74
83
148
72
80
69
107
94
82
80
84
154
69
104
80
76
100
123
87
107
112
156
128
115
175
82
76
79
121
69
78
119
123
147
78
121
123
106
123
80
131
174
87
69
69
146
92
139
99
69
89
78
110
87
128
80
78
92
115
121
119
122
90
78
127
175
119
90
121
94
103
154
119
113
120
74
160
78
92
69
96
117
101
74
151
80
78
78
138
138
91
101
94
88
88
154
85
87
112
72
111
76
128
106
76
95
74
80
81
78
104
100
127
64
104
76
121
80
156
80
128
80
127
109
99
122
104
119
113
121
91
113
113
151
93
95
93
157
89
140
119
71
80
121
120
101
125
114
67
76
80
119
128
87
89
121
120
80
85
80
99
98
119
80
113
146
99
154
110
62
121
78
109
122
141
69
87
154
82
69
112
128
145
152
119
185
52
123
121
118
69
109
74
76
110
99
78
162
89
72
107
80
80
117
120
87
72
87
120
148
144
136
69
115
109
80
54
124
140
72
123
58
69
174
80
103
130
75
111
126
154
110
118
69
80
155
69
117
126
131
93
128
69
185
114
80
185
131
102
174
69
80
104
117
56
78
85
98
80
99
154
80
93
99
94
123
78
124
120
87
98
96
98
175
96
94
67
126
114
58
69
104
79
111
113
109
69
87
78
148
132
117
79
119
138
80
80
136
69
93
127
85
169
150
91
119
142
120
87
164
127
107
102
107
155
117
80
175
93
126
43
172
143
197
132
80
131
91
163
118
76
106
112
80
83
107
133
80
72
54
80
127
147
131
74
95
104
110
116
85
76
87
76
93
122
119
88
197
107
118
120
112
115
103
119
115
78
109
82
88
76
131
134
127
119
81
110
149
121
146
119
98
109
87
87
76
102
78
128
107
69
80
80
114
162
118
112
69
135
146
69
146
147
100
88
60
127
89
158
112
94
133
80
87
80
69
133
89
115
80
151
146
104
80
112
118
120
93
79
127
110
69
88
134
80
104
80
107
119
136
87
72
107
106
119
99
155
101
117
110
78
175
69
96
133
155
69
88
93
107
112
118
78
80
87
118
133
72
106
110
118
80
69
197
80
79
88
56
137
100
119
76
151
137
106
85
94
80
119
80
89
80
83
91
85
101
109
119
80
94
104
154
197
73
93
175
126
96
107
78
138
134
109
88
137
123
119
128
76
89
101
69
132
103
72
140
80
113
154
80
94
95
112
80
64
88
90
121
114
104
84
120
125
113
109
117
175
87
114
128
96
154
134
78
88
120
76
100
81
109
69
88
107
80
118
134
109
100
114
72
80
118
80
94
134
74
76
109
129
103
137
67
114
91
117
94
113
119
152
118
134
100
96
110
91
96
100
69
137
69
131
102
69
136
109
79
125
155
112
106
98
107
77
109
113
163
146
78
80
154
91
164
89
143
151
156
156
89
107
128
122
94
107
78
116
155
121
146
119
136
89
91
128
103
87
156
151
117
69
118
140
110
112
104
60
87
88
150
87
80
96
129
94
130
117
197
75
148
108
137
99
133
74
69
93
113
90
154
52
149
120
123
96
78
73
107
64
118
69
179
98
101
89
181
94
104
110
76
87
104
67
144
156
87
80
107
112
99
67
175
107
78
107
87
92
85
83
104
104
107
69
152
98
115
154
102
95
59
104
78
88
198
102
100
110
87
86
111
154
175
140
91
142
119
119
88
119
69
144
80
131
87
107
134
100
93
112
76
99
151
121
129
43
156
169
154
87
102
92
109
87
175
91
80
165
66
175
119
88
104
128
80
96
131
78
119
151
76
94
126
80
114
100
143
151
107
108
140
201
156
109
120
101
80
150
120
104
93
99
107
111
85
80
69
131
134
155
136
119
93
85
87
142
66
131
93
133
107
185
76
87
69
175
120
99
167
99
118
109
126
87
111
109
107
80
109
136
93
136
118
87
166
132
80
92
87
115
74
80
80
128
126
103
80
108
112
118
112
147
89
82
76
54
107
128
136
80
88
79
89
69
78
107
144
122
87
175
83
131
81
91
76
80
74
80
155
155
114
121
111
83
134
115
88
146
101
113
99
117
129
92
80
128
104
155
120
124
67
122
109
110
128
69
107
78
136
110
127
128
119
94
69
131
87
99
117
135
80
140
101
67
150
80
82
85
91
189
94
87
131
115
122
103
80
145
111
140
128
101
133
80
121
175
87
69
110
69
149
161
72
91
109
133
140
119
156
128
96
87
69
197
76
104
154
82
80
154
107
69
110
134
56
82
115
91
120
156
79
89
89
80
128
119
76
78
137
143
69
78
154
107
113
132
93
69
133
131
69
145
109
76
80
102
80
125
73
93
99
94
140
76
69
94
103
67
89
94
120
80
107
169
156
69
112
115
94
104
91
69
69
106
80
80
130
76
100
127
151
69
88
119
69
113
109
69
96
94
120
78
119
185
129
80
87
114
150
109
122
104
92
78
127
80
80
144
101
69
107
74
148
115
88
131
128
104
160
120
56
87
77
93
80
128
96
175
145
131
151
133
106
80
119
119
96
119
142
66
130
73
81
129
69
136
127
90
93
80
121
121
85
89
89
175
94
99
85
63
87
97
74
112
143
80
109
110
125
93
118
82
111
136
115
148
132
129
103
175
106
110
69
80
99
107
154
114
151
120
127
69
113
178
88
126
128
137
69
80
80
76
96
67
128
105
107
94
83
110
101
80
69
104
115
88
80
99
72
94
69
86
80
72
80
69
110
142
72
127
80
110
150
76
136
87
69
110
106
89
78
119
87
130
76
69
121
113
43
72
144
80
81
109
88
132
69
69
109
80
76
87
134
88
117
94
128
96
89
134
120
137
63
128
80
128
110
72
123
88
97
127
80
69
93
80
78
64
128
136
117
85
72
144
80
83
80
134
175
87
99
174
107
78
69
119
113
80
151
80
197
80
134
110
94
118
89
89
104
80
96
99
80
69
108
86
147
104
127
113
78
69
89
136
74
107
130
175
143
100
76
112
119
113
78
104
94
103
80
107
80
82
91
88
69
78
121
134
127
85
126
120
69
113
106
80
94
119
114
88
140
155
112
209
106
89
134
103
175
92
69
80
69
113
80
106
69
85
122
96
137
76
69
52
89
84
134
143
145
87
100
78
119
80
107
128
89
112
123
100
93
76
87
110
88
106
119
80
109
120
144
93
76
157
104
156
107
134
151
143
152
140
69
128
156
130
106
199
90
89
99
118
129
131
100
120
76
117
80
92
72
197
80
140
104
156
87
80
69
69
78
123
69
92
131
131
128
144
123
100
69
76
151
91
82
106
89
78
102
128
113
96
117
87
111
119
128
148
64
56
43
134
92
80
94
165
80
80
120
92
118
110
119
87
89
110
107
88
69
119
175
175
97
109
78
88
101
88
95
154
79
148
69
64
131
118
86
87
87
87
107
117
76
99
120
69
117
99
110
88
99
111
183
80
78
131
56
89
76
123
120
121
99
134
154
76
76
80
116
175
100
88
134
91
87
87
89
155
118
119
146
80
69
96
140
110
88
80
94
73
121
101
106
137
146
111
80
119
99
95
70
99
102
98
155
96
109
136
119
103
138
122
162
80
89
107
72
121
124
145
69
104
89
131
104
101
121
78
120
110
108
104
156
72
197
123
69
117
80
99
127
178
133
157
69
90
87
78
88
109
80
87
69
95
145
87
94
76
151
90
72
125
99
120
112
143
87
134
110
109
80
76
149
80
113
78
69
92
99
76
94
89
107
98
76
106
99
114
156
118
154
80
69
156
166
128
127
87
121
183
80
109
144
164
112
117
107
79
88
107
80
140
131
94
88
112
107
87
117
151
76
127
100
145
106
105
78
144
80
111
99
100
85
148
126
88
66
144
114
118
110
87
85
66
89
89
124
80
106
80
85
100
107
85
126
120
112
148
120
89
128
140
144
80
175
122
174
154
140
85
100
145
88
93
136
72
89
80
175
112
80
88
153
165
160
129
82
71
105
115
87
94
88
106
72
94
69
131
104
69
112
74
89
88
124
78
69
87
181
130
66
94
89
78
118
140
134
92
87
100
69
122
122
144
76
122
111
69
121
69
109
131
112
80
91
80
128
154
102
140
76
146
154
87
120
87
104
117
87
54
136
94
130
157
134
145
80
74
121
125
137
85
128
128
80
154
128
104
72
109
156
89
76
124
78
107
80
104
89
106
102
113
96
117
86
104
87
120
80
76
146
96
143
87
144
117
127
78
119
87
130
134
66
69
80
120
78
78
87
107
129
110
154
89
175
115
112
119
98
146
99
101
99
136
69
128
78
91
121
87
115
115
156
100
69
142
69
119
121
136
85
146
76
102
178
89
183
78
78
133
148
69
148
90
175
106
80
80
160
100
120
163
89
131
109
122
85
175
104
92
80
127
107
175
87
56
120
88
126
128
103
80
131
96
69
128
78
94
106
115
87
162
115
93
155
78
85
69
54
133
89
122
80
88
111
146
69
119
115
80
80
134
85
131
54
92
175
102
142
89
175
71
128
144
110
107
58
74
113
107
76
78
134
109
109
83
109
80
114
84
134
156
87
89
87
80
156
89
133
120
133
69
133
122
57
112
137
183
59
121
69
154
69
106
69
89
118
59
89
134
87
148
116
134
78
80
78
126
131
116
87
88
107
89
132
80
89
80
155
131
118
80
82
147
197
80
78
107
80
103
131
131
108
121
78
80
115
131
80
93
69
80
80
94
120
112
71
96
100
120
111
83
111
103
105
56
74
127
87
98
104
119
85
43
78
183
94
101
87
80
140
89
119
88
119
119
132
94
131
106
104
78
109
123
151
158
157
69
140
110
197
69
108
79
91
142
109
69
54
104
78
113
80
69
123
87
69
140
175
118
131
80
76
150
106
87
89
54
85
121
142
154
110
74
175
72
88
143
80
80
149
80
89
87
56
197
128
80
107
76
118
130
89
128
85
120
140
52
102
99
119
76
94
134
113
80
69
130
111
185
156
80
153
96
78
134
131
122
75
197
78
43
112
123
164
137
122
111
80
107
99
99
183
89
85
120
114
102
131
144
80
99
105
120
69
119
80
100
117
87
137
164
101
110
119
88
76
149
93
85
126
123
80
118
78
80
91
88
95
87
88
104
107
128
82
113
111
154
101
136
56
107
107
80
92
78
114
143
116
91
73
113
69
119
125
69
121
98
155
119
100
121
66
80
126
69
136
108
91
107
121
104
76
99
88
69
104
107
72
137
112
121
127
136
145
87
69
122
110
69
122
67
121
103
76
93
101
136
88
134
87
71
74
120
80
69
85
119
54
114
120
54
74
128
119
151
102
93
99
91
69
87
80
78
120
80
76
99
69
108
154
156
103
115
96
69
112
120
112
80
94
69
121
77
113
149
146
72
131
110
80
79
69
78
111
155
156
156
87
87
128
92
139
163
153
69
93
131
156
128
136
115
96
80
115
69
108
81
69
134
106
100
113
110
100
129
69
94
103
121
121
116
133
121
109
146
152
131
120
119
69
140
175
140
106
163
80
110
78
85
89
119
69
131
87
59
140
101
87
142
123
80
78
93
99
107
107
127
43
104
72
109
157
119
80
151
155
174
80
131
78
78
99
80
69
136
87
148
104
94
138
69
83
80
136
113
87
101
146
183
127
80
93
69
96
121
115
71
156
119
115
110
69
113
119
135
117
106
80
122
109
104
87
88
175
116
136
111
69
140
52
117
131
80
78
97
129
119
131
175
107
120
101
69
137
148
80
141
69
96
93
109
107
182
138
197
78
132
71
69
76
104
94
120
107
163
78
117
91
69
128
88
131
80
99
107
201
121
134
136
76
80
146
80
104
69
112
80
98
107
89
93
85
115
82
88
151
114
117
144
111
118
114
80
76
56
150
136
113
119
175
110
69
154
109
118
52
134
87
67
69
121
78
118
140
96
74
107
112
74
175
87
99
102
96
80
89
96
103
111
80
69
97
175
80
146
119
140
69
112
113
131
104
99
126
197
142
102
122
131
56
81
69
137
154
69
107
79
80
117
69
159
72
94
129
114
96
120
148
69
137
131
93
87
94
80
156
99
91
80
135
133
109
144
80
99
120
87
83
132
117
81
72
128
88
104
69
137
109
72
136
99
137
163
85
58
91
136
78
94
112
149
85
151
119
112
80
197
136
134
137
110
94
197
154
136
69
119
75
74
113
107
120
110
121
89
80
102
117
89
78
75
115
80
76
134
120
117
113
89
96
119
111
166
175
97
113
69
107
104
154
99
117
92
137
109
88
76
104
109
78
69
78
154
80
69
78
144
145
118
80
126
80
132
125
72
87
160
141
89
99
136
78
72
147
91
71
76
136
90
78
154
175
155
110
134
94
113
94
83
156
164
78
131
107
115
155
137
118
78
94
80
113
127
76
78
143
78
147
124
69
104
119
117
146
120
78
89
80
126
148
137
99
107
128
102
104
74
154
88
69
92
80
128
129
114
106
106
134
117
78
87
113
128
164
134
89
83
128
117
119
113
80
131
96
80
148
121
138
88
80
155
69
82
69
87
80
78
117
130
156
89
69
96
127
183
131
80
128
80
87
96
86
58
104
82
119
175
85
109
76
119
131
80
121
158
80
134
69
120
76
103
80
187
66
143
155
99
112
76
87
150
127
78
72
82
78
80
175
88
95
99
85
94
107
117
107
175
89
122
106
88
134
76
80
114
130
78
163
150
145
112
106
69
98
80
80
151
87
93
74
120
105
131
119
99
69
114
89
124
83
175
128
72
133
83
127
106
156
69
106
56
80
110
93
80
199
155
80
76
109
107
82
74
72
129
128
155
155
89
92
87
113
137
76
148
120
93
76
54
127
69
76
95
85
87
76
126
83
76
146
130
120
57
121
163
165
99
120
99
89
164
71
197
76
175
80
106
74
76
110
69
89
80
69
78
52
104
119
69
95
87
152
74
110
69
80
109
80
90
109
78
154
87
109
175
133
143
80
112
106
134
117
120
155
84
148
69
114
117
103
163
117
76
98
114
102
134
136
110
164
109
100
112
181
109
119
133
69
72
79
125
163
80
87
127
126
116
88
134
130
79
74
74
145
197
69
69
94
89
58
117
60
56
95
80
56
101
74
121
106
122
89
113
104
124
67
102
152
169
115
112
117
96
80
102
99
107
115
94
69
56
69
78
123
134
94
156
114
88
118
88
78
91
85
80
88
69
80
127
114
80
107
69
143
120
175
104
117
128
122
98
120
107
76
121
96
89
112
101
130
73
78
95
137
107
66
127
80
137
91
79
76
107
92
122
120
52
119
87
85
145
78
169
106
83
93
81
164
87
104
80
136
163
93
85
122
109
115
69
146
69
133
129
164
107
74
175
131
80
175
79
155
80
88
121
78
78
69
85
95
88
141
91
115
197
79
147
113
89
175
80
129
118
138
154
76
123
107
87
122
72
124
75
156
122
69
80
98
102
154
80
140
119
128
143
119
119
126
73
93
88
85
138
80
80
127
69
78
118
197
154
152
104
136
67
80
76
136
69
88
69
99
134
80
152
76
114
71
99
183
69
78
87
127
66
133
83
100
154
99
82
154
156
107
156
80
107
121
127
107
72
162
115
129
94
102
78
136
140
136
165
118
79
90
130
128
107
131
69
106
78
80
119
142
140
147
120
69
87
69
87
71
83
124
89
77
129
147
174
124
120
69
80
138
78
110
66
137
110
78
80
154
151
101
76
95
87
103
80
152
91
80
117
78
156
69
103
160
121
137
88
93
87
89
143
78
134
80
99
69
87
104
104
138
128
69
80
88
99
76
134
88
87
131
109
127
129
126
164
99
89
136
113
144
94
76
155
136
80
123
143
151
101
99
106
123
80
165
80
104
78
121
69
91
80
181
121
118
112
56
69
104
106
80
78
165
154
69
96
80
112
72
117
111
89
134
130
109
80
103
131
76
136
106
111
69
146
94
59
79
122
102
72
136
154
119
91
80
109
136
120
117
148
107
69
80
69
111
76
104
94
80
110
120
74
165
110
69
140
106
128
136
76
119
94
78
69
107
156
175
69
78
90
78
71
197
148
95
154
89
94
78
85
94
78
119
175
106
139
136
78
76
69
131
69
102
80
69
102
93
107
94
76
69
104
88
99
87
87
120
164
115
87
163
117
58
69
69
131
83
112
119
119
159
89
118
120
90
126
201
80
78
109
108
69
72
142
69
144
67
69
69
118
175
118
119
148
114
146
69
78
136
72
197
130
133
87
125
146
80
132
128
80
134
69
175
114
133
156
87
134
94
102
88
120
80
80
78
146
138
89
69
127
87
121
101
89
151
106
87
52
110
80
94
69
103
143
119
127
75
87
103
69
117
80
175
107
76
128
125
88
143
89
129
80
80
175
131
94
165
121
175
143
107
134
69
121
80
128
80
151
164
136
121
93
119
104
104
75
134
87
140
149
93
78
93
111
76
87
93
68
120
115
94
94
199
110
78
106
136
72
117
116
101
87
110
201
117
134
112
96
151
175
114
78
67
52
54
76
87
122
118
104
104
103
120
91
123
100
151
81
151
83
164
112
90
197
126
118
160
93
69
140
94
151
106
121
151
158
78
80
147
166
127
126
78
88
144
80
107
69
127
122
90
80
107
116
107
72
136
80
69
119
131
120
121
148
72
145
127
69
98
89
146
81
87
121
117
87
56
101
89
140
158
137
78
54
99
81
128
111
69
126
87
87
134
99
142
87
117
80
119
112
109
125
155
93
91
72
76
80
87
142
103
89
124
80
117
211
156
96
102
146
87
80
154
87
107
140
145
110
87
160
88
103
89
146
86
93
89
69
96
88
157
119
105
132
130
80
96
78
121
120
100
158
120
143
90
107
85
78
74
92
152
121
88
119
118
175
80
175
153
78
131
101
94
69
85
136
80
107
80
96
88
107
110
99
119
85
119
95
93
129
163
128
136
172
43
129
78
183
110
52
83
87
98
96
80
203
102
144
88
87
103
197
175
131
89
80
113
69
102
163
109
69
69
88
99
120
122
80
121
83
136
69
137
131
78
80
209
80
148
119
69
156
88
119
93
144
80
80
95
76
142
80
111
88
134
117
54
80
155
91
69
89
134
164
76
112
70
67
80
174
138
104
109
125
114
119
78
102
97
117
76
95
106
107
69
121
134
126
69
118
112
78
113
175
69
98
119
104
175
112
153
92
97
87
134
72
103
80
52
107
87
76
122
118
109
110
80
80
155
80
142
154
144
91
80
88
131
93
128
100
94
78
80
76
123
64
122
66
96
122
110
120
69
93
199
80
113
89
134
80
117
126
93
87
112
136
88
156
175
80
69
120
107
111
127
87
99
120
80
138
120
134
120
107
112
91
89
119
99
115
142
110
69
103
52
67
96
117
118
107
130
136
147
87
117
74
109
80
145
125
144
120
69
78
101
54
183
69
117
118
129
78
130
175
117
113
89
134
164
134
52
88
148
92
128
99
76
117
131
76
87
100
175
72
56
96
115
131
156
96
148
120
155
74
151
79
121
119
110
123
78
120
111
112
112
136
154
88
160
99
80
92
175
151
66
85
106
102
111
89
130
128
69
80
107
163
100
66
123
138
112
102
69
93
118
155
151
96
93
95
103
123
175
140
119
87
136
157
80
121
175
78
78
80
128
142
107
152
92
78
87
102
102
166
99
98
69
76
140
88
154
78
117
103
156
83
104
143
80
72
59
99
112
69
43
76
134
122
106
103
156
107
162
175
126
76
72
76
134
119
87
92
87
88
91
67
80
129
143
119
94
126
128
154
94
106
100
78
78
80
76
84
85
62
136
94
96
106
98
131
74
119
102
69
156
80
120
88
96
76
155
109
174
130
99
98
80
107
109
91
122
80
115
89
91
93
131
139
121
128
125
87
101
80
80
69
80
140
108
111
106
165
67
80
85
144
124
94
88
87
69
106
88
76
94
104
172
71
129
137
113
117
87
107
179
87
91
69
120
118
80
69
69
80
121
43
78
69
109
110
99
95
151
147
195
107
137
88
69
74
111
125
181
197
89
69
117
69
80
69
87
81
164
69
120
74
118
69
113
138
80
127
69
151
72
87
109
121
72
124
91
119
87
155
87
155
136
95
96
78
119
90
80
87
73
163
80
113
135
80
76
125
128
79
151
156
72
76
76
85
96
69
155
78
154
82
89
74
94
88
78
156
142
136
136
134
81
96
197
137
154
69
80
127
154
140
113
104
120
88
99
109
78
103
102
69
136
119
80
115
78
112
100
89
72
96
107
114
145
78
87
80
128
66
89
112
95
56
101
133
159
69
118
151
119
82
136
78
104
136
154
76
143
104
90
73
114
128
69
138
151
87
98
139
163
110
94
79
69
94
80
109
94
69
68
76
117
78
113
132
80
74
85
87
79
134
89
153
80
174
80
91
113
175
121
133
119
133
87
145
120
150
151
69
73
146
80
75
99
140
175
94
113
121
112
114
164
80
69
108
91
119
80
119
76
87
69
162
76
127
88
97
78
121
140
110
66
175
76
106
94
76
56
146
107
72
100
69
109
78
120
69
52
148
88
69
83
69
87
76
54
121
69
87
98
119
99
131
83
84
64
151
71
101
124
69
69
94
101
80
128
119
88
175
135
107
76
73
175
156
80
76
87
136
132
127
99
129
75
94
106
100
106
151
112
78
88
80
72
117
168
156
87
75
156
109
76
74
100
71
109
111
136
87
99
88
124
128
102
69
147
93
104
99
145
129
99
80
154
54
122
123
79
148
107
80
111
120
120
141
69
54
116
80
128
87
109
119
109
74
88
120
88
80
143
126
113
96
78
96
80
80
131
165
43
122
94
143
91
172
91
93
112
155
80
87
145
76
69
87
80
120
80
80
80
119
111
99
134
117
146
76
87
80
109
78
132
107
89
87
89
78
120
129
76
140
140
132
118
79
78
117
109
174
100
147
161
78
80
115
154
109
110
165
89
128
80
90
110
120
100
69
99
119
110
80
80
76
114
80
58
130
128
130
149
114
120
136
140
78
102
107
125
78
88
145
131
80
80
119
91
80
155
98
80
80
79
76
110
121
105
80
117
99
87
197
71
120
175
76
96
80
67
87
153
103
175
93
144
126
75
103
133
69
151
80
139
80
99
174
186
80
107
80
69
102
69
56
121
76
59
109
127
69
121
185
78
120
88
93
52
87
78
113
175
80
174
76
56
107
69
92
78
83
99
151
69
107
80
127
197
85
180
129
109
77
131
94
76
166
69
120
175
69
112
101
119
91
94
144
109
80
78
92
69
99
129
107
118
87
112
146
119
128
93
111
89
140
122
78
111
93
175
80
99
83
110
123
95
107
149
117
131
96
131
148
126
126
80
144
128
155
87
110
80
175
94
107
80
197
104
72
78
132
76
99
72
102
127
69
147
102
100
80
155
126
154
175
59
100
69
80
131
115
113
64
94
145
147
85
99
78
134
112
113
69
118
80
134
89
80
69
79
119
106
105
88
110
112
175
71
110
118
128
80
72
87
116
93
82
102
110
89
80
175
54
87
94
122
80
127
89
112
101
69
110
124
87
136
112
127
80
132
56
69
121
93
94
126
162
107
128
88
128
88
93
94
112
100
117
108
69
115
72
96
128
127
78
110
80
119
88
94
131
104
88
147
118
103
104
100
128
94
118
135
69
69
78
69
78
117
80
103
109
74
121
114
112
72
87
102
136
118
88
140
54
101
80
91
120
127
138
134
133
110
175
69
94
99
54
131
43
115
80
67
156
140
120
78
76
87
80
175
153
76
120
85
154
76
80
102
111
106
73
144
83
78
76
139
85
136
112
131
111
69
101
119
91
56
78
121
104
99
197
52
99
80
102
112
88
148
146
96
128
127
64
104
59
78
102
89
69
125
148
136
43
126
95
72
99
87
140
142
99
97
80
126
119
174
80
175
80
80
87
124
69
113
78
80
52
113
138
156
74
151
80
99
163
111
132
120
96
91
107
89
66
78
121
134
119
151
89
122
128
103
116
85
78
119
69
163
187
119
88
87
133
69
80
121
140
116
80
112
145
80
110
119
93
82
86
69
156
127
69
157
80
145
99
98
89
107
93
117
175
96
134
161
124
104
169
131
95
54
69
107
76
80
76
118
99
201
80
69
106
69
159
114
78
87
143
120
104
113
134
69
109
69
119
79
143
69
69
109
69
76
87
78
96
133
112
90
164
156
110
197
120
93
88
80
81
109
124
76
80
110
68
94
72
93
87
178
80
106
110
87
96
144
128
85
80
80
106
145
143
140
175
76
151
130
92
91
107
117
112
67
105
69
94
71
175
129
120
60
87
148
76
109
101
80
114
76
175
136
69
82
78
83
99
87
197
80
91
80
154
139
136
107
72
99
80
89
89
87
80
77
121
154
76
72
110
83
155
103
104
87
156
76
122
132
119
94
101
121
113
111
87
129
106
101
85
134
69
88
117
72
110
87
136
124
127
88
119
101
140
121
90
78
80
175
87
156
119
94
76
99
122
99
72
80
154
69
100
117
110
102
118
115
126
110
197
127
87
90
119
80
131
156
80
80
56
72
133
54
69
52
109
146
76
76
156
111
129
127
130
115
87
114
69
104
72
80
104
89
69
85
119
87
80
96
110
110
139
137
112
138
115
76
114
143
91
116
80
88
118
117
110
156
138
110
69
104
100
78
112
128
118
140
121
99
133
156
120
103
138
117
76
94
76
87
99
60
143
80
87
156
120
140
89
128
136
99
151
95
80
78
137
107
89
80
80
147
113
120
100
80
95
175
71
152
122
87
85
95
88
107
93
136
87
118
136
104
119
56
129
115
93
94
87
91
157
76
124
74
113
155
99
155
134
136
134
88
137
88
52
78
118
112
155
113
154
154
120
103
85
155
106
103
69
156
99
175
134
101
104
91
78
175
89
72
111
78
80
121
127
175
78
90
80
87
78
119
76
147
114
157
80
121
52
110
69
154
136
138
76
201
108
85
151
125
87
164
109
125
96
121
88
160
127
108
100
134
72
72
91
80
109
99
76
76
112
119
98
67
116
96
95
112
109
104
80
87
145
134
109
112
76
100
128
112
108
120
78
107
151
147
124
87
127
80
68
100
67
114
104
102
112
76
78
175
148
56
76
88
69
109
155
88
107
143
109
128
74
107
107
76
99
120
72
175
128
114
110
79
112
113
96
136
131
120
131
104
80
69
80
54
119
52
133
76
88
111
163
89
131
94
87
96
151
93
121
80
66
78
92
163
107
93
87
148
142
113
79
120
129
128
136
127
136
121
80
93
101
89
157
121
69
69
87
75
102
113
117
52
140
52
80
87
122
107
78
67
78
56
119
69
121
80
108
93
89
80
122
110
130
80
119
123
175
119
136
94
88
80
102
156
89
87
145
114
80
54
110
123
89
87
138
94
119
131
132
137
150
102
197
80
133
69
130
80
103
69
132
94
111
69
72
80
54
80
134
163
99
93
73
72
69
80
76
156
115
109
76
87
110
89
134
126
145
108
87
80
111
75
78
101
80
131
94
155
138
80
127
98
107
74
115
88
112
133
88
144
117
98
140
96
148
113
111
166
69
119
117
163
80
96
136
94
94
69
69
105
76
124
109
137
137
125
119
70
88
154
169
87
108
69
80
114
92
131
150
114
101
174
135
120
113
96
109
88
80
110
80
93
131
106
175
154
80
131
143
127
99
88
91
80
52
94
150
85
100
72
91
94
101
109
104
76
95
88
78
69
100
118
80
140
76
72
121
91
99
156
87
147
87
94
80
99
94
111
156
104
88
112
56
100
152
119
88
94
145
72
99
142
104
102
89
131
113
197
104
96
118
69
146
197
73
172
87
80
119
83
99
72
94
64
91
197
43
138
89
111
125
101
94
112
80
156
87
91
99
102
69
87
107
143
126
107
159
88
104
76
78
148
105
80
43
114
89
76
121
54
128
99
136
107
79
110
91
69
197
154
69
96
145
140
107
107
80
121
129
104
121
78
88
87
72
117
99
156
101
93
131
155
140
89
144
117
113
159
120
96
109
80
69
107
127
95
107
147
118
130
113
104
80
97
78
101
89
87
93
69
122
119
78
134
119
78
80
107
120
69
128
143
119
80
131
80
81
94
90
129
80
100
120
99
154
107
107
175
111
80
93
69
131
96
80
120
87
110
128
52
94
197
69
163
43
151
78
113
107
104
134
123
129
128
95
155
93
101
109
92
122
63
80
120
141
80
154
54
80
155
66
69
102
107
199
87
134
122
69
109
111
58
125
95
87
113
134
120
78
76
112
118
89
107
78
112
54
133
74
88
112
107
163
140
155
87
80
76
140
142
123
110
120
91
88
120
110
128
136
80
143
128
64
106
130
69
88
80
107
128
119
80
87
128
87
80
118
101
107
121
76
93
69
80
128
136
80
175
99
112
56
128
111
122
151
87
150
153
88
146
149
128
119
87
109
77
69
80
131
113
80
104
99
81
76
109
87
119
102
128
69
112
80
110
121
78
122
87
109
155
80
129
94
124
120
80
142
100
99
125
174
113
80
78
80
64
175
64
99
99
100
89
130
122
87
126
141
87
72
106
131
156
80
136
87
142
117
100
117
78
128
126
120
145
114
163
107
143
136
72
93
90
78
75
131
140
117
88
185
89
79
109
110
96
52
148
87
103
101
113
119
120
107
122
101
132
89
69
78
117
76
69
74
197
102
87
106
80
80
134
76
94
87
96
110
117
80
154
78
120
131
80
115
120
117
56
81
112
91
119
93
87
56
141
69
151
69
103
147
121
119
124
134
109
105
93
119
109
88
138
109
120
121
144
175
69
106
130
76
78
80
88
130
102
83
69
127
74
143
90
124
118
107
131
78
118
93
94
101
117
80
90
120
113
175
145
96
69
110
94
78
80
72
119
103
187
143
69
72
93
118
140
119
155
104
164
69
122
52
76
154
112
75
80
103
87
69
162
136
140
136
58
156
100
89
115
94
100
120
103
80
106
119
91
91
88
90
121
80
88
157
56
128
89
160
43
93
122
110
76
93
102
120
120
85
91
116
88
94
88
97
91
80
174
90
80
78
114
154
89
110
84
197
110
136
80
74
89
88
102
137
125
56
154
151
187
68
116
80
151
176
99
54
90
102
118
112
101
175
109
134
154
154
113
54
151
80
83
104
109
80
80
54
96
109
99
120
137
107
136
101
87
88
80
151
117
80
120
97
121
107
71
88
130
80
119
138
121
80
103
87
96
197
103
80
89
199
78
140
127
121
156
121
72
76
96
121
69
76
131
96
131
119
99
110
78
99
131
102
78
69
72
69
99
118
69
128
80
92
111
87
87
137
93
69
145
87
80
128
122
87
103
83
76
120
110
96
81
69
80
85
122
78
80
119
76
136
101
56
69
111
74
80
56
80
143
87
109
124
102
95
80
126
54
145
69
115
134
143
125
80
80
110
104
121
131
87
56
119
89
119
76
107
69
54
128
80
131
117
154
76
87
99
85
80
76
156
91
87
138
54
99
83
80
133
142
86
90
91
129
107
107
132
76
87
125
80
99
69
76
87
119
80
88
175
80
69
151
69
69
136
121
88
87
78
128
96
72
197
114
93
159
69
78
150
80
87
88
107
110
154
64
95
120
110
121
106
144
131
76
69
91
153
120
117
109
80
91
145
128
140
104
79
54
80
107
155
99
124
76
115
119
90
99
148
112
99
76
69
95
155
80
87
99
132
109
98
83
88
87
155
136
107
80
112
74
149
102
117
89
69
88
134
96
102
94
88
110
80
76
121
80
90
112
145
113
197
112
92
120
156
113
119
109
118
80
80
80
107
109
126
78
139
133
96
139
115
127
121
175
76
87
69
154
121
101
128
99
95
59
134
111
131
154
93
112
154
85
78
80
56
115
118
125
112
109
104
80
76
120
183
166
128
76
78
93
147
132
175
77
72
146
88
151
78
128
113
175
107
80
134
76
69
92
130
89
88
102
134
83
128
114
154
134
123
197
78
78
69
82
112
112
110
100
120
138
114
110
162
89
178
111
127
96
88
136
73
133
88
80
154
102
147
94
87
136
68
99
160
112
129
104
78
69
80
119
85
101
94
163
99
160
118
129
59
72
127
94
148
115
113
138
109
80
155
91
107
94
106
110
80
89
91
122
91
128
164
87
101
122
117
117
117
120
106
115
80
76
128
104
154
109
87
104
102
76
134
107
96
94
83
125
102
99
109
95
87
87
71
175
69
96
72
80
136
114
76
69
78
76
88
100
87
92
125
151
176
101
205
105
74
94
79
106
160
175
80
80
119
146
87
121
113
119
125
154
110
69
93
87
126
132
120
88
146
102
141
89
76
151
81
78
158
76
154
93
151
134
80
101
131
120
85
121
96
107
98
66
80
133
115
133
114
199
120
77
104
110
87
78
131
67
80
76
87
69
80
112
175
131
69
145
76
137
104
145
137
87
136
131
135
104
117
80
80
113
89
144
89
185
111
123
76
175
155
76
54
76
120
177
111
119
101
128
113
121
126
145
93
143
146
69
88
80
107
148
102
143
117
87
85
107
78
117
149
128
117
197
91
99
78
69
43
103
87
106
141
131
110
150
87
80
76
69
154
120
154
99
88
92
183
76
99
117
119
155
87
89
154
88
88
140
112
155
80
102
153
69
89
100
66
128
136
118
104
115
128
109
80
143
102
80
94
99
154
111
93
116
76
91
119
131
154
78
78
106
80
110
79
140
78
107
112
68
76
102
131
94
109
109
119
91
126
119
69
99
80
88
95
91
111
128
133
120
125
151
122
106
107
122
129
72
197
80
128
88
102
58
107
156
94
154
108
69
132
80
144
156
144
105
107
117
113
151
78
87
197
106
100
106
87
92
72
69
85
93
109
87
83
72
118
76
107
112
154
92
95
111
126
119
128
106
128
94
93
175
175
162
80
102
88
104
89
104
94
95
74
146
89
104
101
72
94
80
152
119
78
156
74
164
80
87
59
148
43
80
152
85
117
131
121
193
121
80
76
110
150
80
131
140
74
106
128
112
129
134
91
85
80
119
120
116
115
100
146
155
118
175
120
72
76
103
98
108
131
76
121
69
140
80
80
88
100
69
104
99
78
130
93
95
106
89
131
119
104
120
98
87
147
80
76
97
100
156
136
119
106
106
78
95
87
56
76
80
112
94
157
131
110
175
88
141
109
106
76
152
123
91
119
74
93
72
119
69
80
74
80
118
145
127
145
69
121
68
99
72
82
156
102
96
140
89
114
73
100
76
120
75
106
140
104
110
126
96
69
69
140
99
89
101
94
152
113
69
112
87
69
127
60
163
121
119
140
154
106
156
107
69
111
95
117
134
127
134
128
131
96
137
80
119
69
137
88
68
78
99
66
80
128
89
76
110
109
93
119
175
107
151
80
118
80
89
107
72
110
78
117
80
78
120
80
154
89
96
174
137
121
94
151
87
72
129
99
87
160
102
80
101
74
94
94
103
94
80
99
175
72
108
80
88
156
121
72
103
107
100
103
69
154
118
80
94
89
96
69
151
136
140
69
90
98
134
96
121
94
88
102
122
197
69
156
87
121
102
69
112
74
76
94
92
88
115
83
134
152
121
80
104
155
130
155
69
69
137
80
116
106
107
82
175
89
88
93
88
111
154
78
138
131
78
80
138
80
117
76
94
80
87
111
153
69
117
103
78
154
89
144
97
85
121
143
109
80
175
121
156
174
98
117
69
117
113
152
104
175
107
87
88
76
76
94
80
97
101
144
128
151
132
140
78
102
143
112
76
80
78
101
88
116
153
110
104
132
145
109
124
130
83
87
69
104
107
99
95
140
93
87
140
154
112
80
144
69
175
124
132
69
143
85
52
78
131
118
87
131
96
118
110
99
87
72
78
78
128
89
120
78
133
134
69
155
142
131
116
139
69
52
83
156
109
87
100
100
118
140
110
80
107
111
87
72
129
158
96
87
87
69
80
138
125
88
88
107
163
115
120
110
109
122
99
153
89
137
88
87
115
110
76
134
141
131
87
141
56
74
153
104
133
87
88
119
120
109
80
107
92
74
117
91
88
76
183
69
128
80
89
175
76
154
87
69
107
128
119
76
83
80
124
127
116
87
116
155
119
132
99
87
94
90
88
80
88
151
78
128
103
119
152
131
108
148
132
126
155
90
111
80
128
100
87
69
89
91
134
69
106
76
91
119
120
124
131
87
117
80
125
69
156
60
120
155
163
87
99
141
69
113
120
113
128
69
110
110
131
110
143
78
145
122
94
118
152
80
143
80
78
121
109
80
69
149
175
94
80
157
120
140
89
148
136
78
80
156
76
109
104
134
146
140
74
122
76
122
126
140
100
91
156
76
78
87
56
137
89
76
175
78
88
111
126
82
91
87
114
128
112
119
87
69
93
151
112
119
79
89
88
175
94
181
120
140
78
107
75
113
120
119
78
136
87
80
123
117
76
174
78
120
136
76
87
115
113
69
89
80
142
78
174
69
148
106
165
100
158
113
147
117
99
145
151
109
91
129
110
66
78
89
113
156
118
74
121
107
87
80
69
110
93
113
108
132
146
88
126
104
147
60
109
76
107
74
100
78
99
99
85
143
67
120
90
76
80
137
80
112
107
93
143
87
87
94
144
197
133
87
132
87
80
54
163
66
69
87
125
94
120
78
76
131
107
107
85
123
109
118
132
113
89
128
121
124
107
80
137
123
136
99
80
175
87
145
137
80
99
80
117
137
138
64
121
160
127
113
118
110
110
69
76
69
111
131
147
69
76
138
89
119
100
69
164
87
131
145
119
80
58
82
66
119
165
165
136
72
127
74
100
150
88
101
123
156
102
117
80
80
115
109
107
98
151
101
149
113
87
76
103
80
69
78
80
104
118
58
107
94
88
80
87
114
140
112
78
80
80
109
76
124
134
120
109
155
126
100
63
69
69
76
124
80
80
80
119
93
104
185
120
197
88
69
80
69
145
78
132
120
175
89
120
175
140
119
75
94
154
76
104
78
115
87
128
155
99
119
120
133
110
124
140
119
75
93
136
69
69
112
127
80
122
155
162
78
78
117
80
124
156
155
151
137
133
69
72
98
102
119
128
114
80
120
80
127
112
129
134
94
151
109
92
116
118
94
138
146
88
106
116
154
119
80
80
89
69
94
107
100
107
80
80
98
91
80
88
187
99
140
69
146
66
131
74
125
121
113
80
103
80
78
69
145
80
129
146
113
113
76
76
69
136
164
154
143
140
110
147
122
102
169
80
58
87
69
89
99
99
96
88
69
76
104
80
80
163
76
80
80
111
117
136
112
146
124
101
101
115
133
89
146
109
175
111
92
109
154
80
80
104
93
106
156
107
69
106
88
131
158
99
131
89
128
95
175
104
80
122
69
111
69
131
130
119
88
102
135
120
107
118
54
69
89
128
148
107
128
115
93
88
143
69
90
56
80
58
69
76
156
80
112
94
136
114
143
69
174
120
120
122
114
132
87
78
98
60
89
80
76
80
133
108
69
123
69
175
99
95
75
106
139
94
69
87
104
80
80
147
197
128
154
156
118
83
80
137
100
80
113
134
131
143
155
72
112
93
80
80
78
87
88
97
120
134
80
151
107
72
145
109
110
72
94
106
94
123
197
163
85
83
128
110
125
92
100
130
154
110
140
141
52
107
89
87
107
80
109
149
136
69
99
76
87
160
128
102
101
89
110
80
123
101
113
109
114
146
119
98
182
143
140
102
110
93
76
107
99
76
110
72
78
133
111
136
131
163
136
132
119
78
87
69
87
54
122
99
113
80
69
127
119
133
113
160
197
131
119
159
109
143
120
82
118
112
102
114
110
90
136
175
78
91
93
93
80
104
89
80
80
118
54
96
120
109
113
120
68
146
69
175
147
88
94
156
155
52
119
87
139
154
78
78
128
134
104
119
69
117
80
69
154
114
69
107
146
143
155
141
72
103
197
95
118
85
69
104
91
113
80
101
134
87
115
89
108
73
99
76
106
74
106
120
87
69
128
85
89
136
154
87
107
69
136
154
137
117
128
87
134
154
88
119
156
87
147
117
146
110
121
121
133
121
126
136
88
100
94
90
76
128
78
145
80
107
88
110
87
120
103
102
63
109
114
80
76
109
94
80
103
102
69
69
54
143
106
106
78
137
134
129
102
110
187
140
118
134
120
132
77
78
100
134
102
69
88
106
117
74
124
110
76
152
155
69
111
56
118
68
112
104
99
69
74
80
120
87
129
71
76
112
87
52
117
128
154
105
87
106
175
155
80
113
119
100
87
136
123
99
119
83
43
106
106
118
122
164
99
128
80
98
160
93
110
172
84
107
73
80
118
67
129
151
99
80
87
95
121
117
152
80
94
117
108
157
71
94
78
85
69
133
87
123
91
99
119
147
131
76
111
94
120
80
69
67
69
110
121
87
100
123
154
119
155
126
52
185
80
69
89
72
114
104
155
175
163
106
85
76
80
107
88
80
69
63
103
94
118
119
133
87
107
156
109
96
144
76
107
80
95
87
57
106
69
69
69
112
89
163
111
80
154
126
143
152
175
128
107
89
131
145
128
151
103
138
127
120
69
160
124
104
144
128
76
80
128
99
101
90
52
107
106
83
106
197
99
100
72
80
120
84
80
132
85
112
154
106
69
132
69
80
112
78
101
85
155
138
80
100
165
80
71
134
166
105
154
107
137
80
78
89
154
107
148
113
126
87
88
129
89
54
128
119
114
117
118
119
127
80
78
69
87
96
126
136
112
154
54
75
69
82
136
109
80
125
134
52
132
134
102
89
78
87
76
197
166
128
109
71
161
129
94
76
134
124
87
128
112
99
87
106
120
69
151
113
134
128
98
69
119
119
93
103
78
110
78
154
69
103
89
121
119
107
175
124
181
87
128
110
85
92
123
154
74
80
142
101
128
75
72
143
131
120
139
64
107
81
69
90
120
109
85
175
112
109
76
112
120
91
76
78
127
87
95
90
69
94
131
78
121
121
69
142
80
100
133
93
145
107
92
76
118
69
89
151
175
89
80
122
112
69
136
79
66
153
98
87
137
93
146
85
69
112
151
69
78
110
64
101
110
127
78
110
78
114
80
119
183
80
78
80
160
166
74
128
89
117
78
99
127
104
80
136
69
106
69
125
104
110
83
118
87
78
146
122
78
123
87
88
154
88
78
123
76
87
80
76
69
76
82
119
120
80
166
128
99
137
80
120
102
88
94
99
137
79
156
76
118
87
78
128
52
164
104
98
109
69
134
131
69
137
114
104
174
102
76
114
107
99
120
88
132
145
118
119
76
88
69
136
118
56
76
64
119
117
138
121
199
80
87
80
80
108
106
89
128
94
96
100
136
103
145
140
58
156
100
87
91
117
137
104
101
121
175
140
87
112
163
78
119
80
119
72
128
96
99
93
120
119
99
52
129
124
93
122
120
80
67
80
112
153
87
127
133
69
131
101
146
78
108
80
93
143
102
176
76
95
76
56
78
123
117
128
126
75
94
120
126
124
120
175
137
88
151
119
69
121
87
101
138
80
69
83
93
111
69
89
132
69
136
72
87
95
109
154
175
80
104
94
69
87
105
109
102
104
130
93
142
197
175
76
112
112
83
133
88
133
127
100
87
131
107
134
80
69
87
91
130
128
112
119
77
126
119
91
106
106
129
66
156
138
108
134
99
94
136
84
113
155
151
131
102
78
80
88
107
129
78
119
146
88
87
87
76
131
73
119
87
94
151
87
69
98
87
94
111
80
99
147
107
93
69
119
154
151
127
69
175
130
119
83
91
106
120
133
87
80
140
163
80
119
95
78
78
113
87
87
80
117
78
82
100
137
120
120
72
52
119
163
76
93
99
136
80
107
43
166
119
109
185
101
111
199
101
112
72
69
88
111
131
113
69
201
104
96
78
78
76
69
123
69
69
146
175
80
94
80
154
110
120
112
94
119
149
54
127
169
154
119
107
130
109
72
80
80
119
69
119
95
150
128
101
80
144
112
117
109
87
102
128
75
96
83
110
76
120
145
85
101
112
123
43
87
121
52
162
78
91
99
126
110
98
117
99
144
138
101
154
78
96
126
80
87
109
104
134
69
121
128
104
130
89
67
67
175
80
127
69
99
175
131
67
94
131
112
80
134
110
72
134
107
148
117
76
94
94
122
80
100
134
175
67
76
154
113
80
128
80
99
87
136
52
165
143
111
109
128
80
110
163
166
80
127
140
98
149
76
140
151
101
80
75
120
118
117
89
175
117
128
78
120
145
119
106
96
91
136
197
113
121
76
80
109
98
108
87
109
90
145
175
120
74
119
119
76
127
69
156
127
128
152
136
87
88
74
80
118
110
91
82
119
83
96
197
133
143
78
136
97
104
109
110
155
117
93
106
43
88
76
119
143
93
80
117
127
133
110
80
128
123
80
120
148
117
94
133
175
69
56
100
129
128
74
144
126
119
95
118
99
126
115
87
88
88
76
107
80
117
130
143
143
76
99
98
87
93
93
69
76
100
113
112
127
109
127
83
110
121
106
107
89
76
132
80
76
159
101
156
80
117
87
134
87
112
69
137
87
107
109
128
88
131
107
52
88
120
137
94
164
131
87
117
120
80
104
106
109
136
165
88
69
113
156
128
80
90
73
123
119
131
69
112
78
132
107
155
91
72
87
112
69
151
111
87
128
112
80
106
120
101
154
112
56
117
126
89
72
80
121
52
87
144
137
78
109
111
110
129
87
134
94
67
95
121
87
151
134
91
118
118
85
87
119
110
78
69
120
119
87
145
120
78
71
95
80
120
147
109
110
80
121
92
137
140
80
87
100
69
88
87
175
100
74
72
101
118
95
99
75
109
80
89
52
154
76
107
119
93
147
54
69
76
79
121
117
94
104
134
89
108
88
80
144
134
103
154
101
76
131
110
71
132
149
68
78
74
120
69
87
156
85
78
89
102
131
164
72
148
109
107
199
107
141
131
121
60
120
75
87
95
87
69
109
113
76
76
116
101
96
80
80
144
78
137
89
175
63
103
69
101
136
96
120
80
76
89
109
74
133
110
85
101
78
118
113
107
117
107
56
87
112
119
99
126
87
155
131
131
95
115
137
85
125
89
136
112
78
76
80
146
85
96
104
98
119
128
59
78
56
60
117
74
130
183
160
111
122
101
119
64
94
118
80
69
101
76
90
186
76
119
101
134
69
117
94
111
108
100
104
112
87
109
175
169
87
182
88
119
94
175
66
129
69
99
154
121
76
121
155
82
78
80
122
69
120
99
103
104
175
113
128
78
69
175
78
111
114
140
146
104
113
87
99
110
112
103
119
87
132
76
144
69
140
119
156
66
197
148
130
64
80
78
94
121
121
60
87
154
69
138
76
78
113
119
148
78
117
146
175
63
89
80
80
102
96
120
67
156
69
80
116
101
54
112
80
110
93
80
155
94
80
87
118
87
131
90
138
131
80
64
121
78
87
139
93
147
106
80
112
121
87
90
69
91
115
87
97
95
67
197
88
90
80
76
93
99
54
119
175
88
69
120
66
102
91
125
111
82
80
100
107
107
87
78
119
89
114
136
93
117
120
69
120
87
109
80
80
151
78
94
101
103
87
104
140
108
60
88
117
80
90
88
134
89
69
149
69
129
80
120
199
112
104
72
104
146
119
120
145
80
69
112
78
93
89
175
104
87
152
152
80
163
76
151
101
175
118
69
124
43
141
89
154
128
76
96
132
101
67
80
129
78
104
177
133
69
80
157
66
129
75
79
87
113
93
80
110
110
165
79
101
136
76
94
147
95
105
80
72
91
74
80
74
130
100
156
154
117
80
80
154
99
78
78
80
69
100
69
78
109
147
93
132
157
121
103
119
175
138
89
75
69
140
160
77
99
107
123
110
154
128
93
136
87
134
80
69
96
93
96
90
110
96
111
109
150
89
69
107
123
122
199
100
140
93
101
74
81
123
126
69
59
128
94
147
94
119
54
102
83
101
87
107
78
78
109
56
148
138
152
137
154
154
97
110
105
134
94
148
147
197
119
107
154
76
115
88
87
124
107
138
52
156
154
123
155
106
137
99
87
69
87
125
78
93
120
78
106
80
87
148
107
119
56
120
96
69
122
156
146
69
87
43
145
141
98
119
136
69
110
102
134
154
117
115
111
119
78
121
101
113
106
79
129
148
89
100
69
106
122
109
85
140
80
76
112
104
109
165
99
80
107
80
127
109
93
78
88
120
69
94
175
66
107
119
91
79
89
117
69
64
111
78
128
69
88
112
107
69
79
69
104
87
154
99
154
112
69
80
108
110
99
83
107
117
98
129
104
115
109
94
150
125
102
112
107
78
63
133
106
156
88
115
67
104
156
120
119
93
76
170
137
134
87
156
140
107
95
80
69
87
94
91
136
147
145
118
127
183
93
150
104
91
131
127
115
75
96
94
111
87
115
137
107
80
119
151
109
101
102
107
76
91
153
95
104
128
112
136
107
137
110
94
87
88
80
119
88
150
88
107
94
151
164
125
154
95
69
136
107
100
134
159
120
71
72
78
156
92
69
78
76
152
107
76
100
132
89
88
145
98
131
91
175
89
113
64
80
96
72
79
119
107
127
69
110
113
122
119
99
136
134
119
83
80
119
82
128
85
80
89
128
199
56
80
79
145
134
98
78
120
80
80
119
131
72
80
54
102
78
117
76
129
69
72
141
96
89
215
69
80
111
120
72
88
137
119
121
109
101
102
119
69
93
95
132
94
119
58
121
201
175
69
54
125
158
109
123
104
80
88
94
74
74
109
99
69
93
117
119
69
139
78
113
56
122
106
87
121
96
76
166
94
153
102
120
104
145
78
104
131
140
80
131
87
80
78
123
125
143
163
124
113
87
86
142
98
155
87
136
149
128
128
93
101
87
132
119
80
69
136
96
84
120
80
100
120
69
145
69
133
118
110
109
80
123
120
80
128
142
99
120
66
109
112
89
165
93
156
171
175
143
109
118
67
145
76
109
101
99
69
91
122
136
70
199
56
148
87
87
88
100
94
117
134
131
88
87
154
121
105
183
69
109
119
136
164
91
107
80
109
87
107
80
129
172
69
118
89
80
91
132
89
121
114
80
109
88
69
80
120
88
103
131
107
93
69
57
137
69
138
113
154
154
151
154
96
139
122
112
112
94
96
69
149
102
110
140
120
154
119
127
80
94
69
107
123
66
125
106
127
140
119
96
117
144
76
80
113
164
99
76
85
175
76
128
76
85
96
89
156
154
88
125
125
154
119
187
150
80
113
201
83
109
80
122
100
93
80
94
110
112
127
78
175
112
69
96
87
94
121
80
129
98
143
141
109
76
78
81
107
88
107
174
110
136
80
102
116
112
80
88
99
112
69
69
133
113
136
119
115
129
81
69
122
96
110
63
109
88
122
80
150
131
76
72
69
76
80
94
57
119
138
107
119
59
123
120
117
131
69
102
80
80
78
118
89
100
104
155
78
107
135
113
74
110
89
78
181
171
126
83
99
87
156
120
92
140
69
87
119
112
97
80
109
156
175
89
169
154
154
107
136
97
155
80
79
54
73
115
69
123
100
134
108
87
80
154
80
69
89
92
128
143
121
141
78
111
100
122
155
78
143
92
89
72
76
148
87
94
165
99
109
134
111
128
84
98
80
110
69
99
109
147
76
88
118
95
130
93
107
99
83
155
80
131
146
114
80
92
87
143
115
134
119
99
123
69
74
78
113
107
156
123
134
91
134
120
80
134
107
126
69
94
117
121
174
78
69
76
88
96
154
121
78
87
120
80
110
131
80
104
117
111
140
155
136
156
99
78
134
109
76
134
87
208
80
80
99
145
80
154
127
127
94
69
66
78
72
96
89
142
197
102
56
132
104
122
63
118
100
128
72
126
80
140
134
118
52
78
131
76
69
110
118
116
101
80
140
76
72
145
105
78
104
122
94
66
125
138
87
72
136
109
111
87
101
111
72
111
74
87
197
137
107
120
197
107
175
104
80
102
89
91
121
128
69
175
72
84
148
104
100
151
69
80
94
121
54
121
84
144
95
175
96
66
134
104
155
134
107
149
151
80
87
94
80
83
131
93
80
128
76
57
85
127
175
87
131
132
121
134
127
85
113
151
120
127
119
120
104
91
78
99
87
80
156
88
85
80
107
78
128
106
99
93
90
78
94
119
146
156
148
106
109
80
175
88
163
130
78
78
89
154
78
74
89
91
76
109
119
69
91
94
69
109
103
87
111
119
94
90
80
87
99
121
136
129
187
120
91
145
93
128
69
80
69
66
130
66
119
169
116
121
107
142
80
79
80
80
119
69
87
69
159
90
80
124
76
140
183
99
125
152
109
197
89
80
175
76
78
134
79
134
159
99
93
125
119
121
128
132
78
69
88
74
94
78
93
87
60
124
69
135
71
113
154
99
121
157
80
120
151
120
140
91
162
100
117
121
110
102
89
175
156
163
126
117
87
138
91
66
105
91
90
72
78
100
113
137
80
96
109
151
132
146
87
76
80
69
106
126
137
78
114
134
88
76
80
87
134
75
80
96
163
106
52
110
80
127
113
139
71
69
136
128
88
119
135
155
107
134
88
87
152
134
123
104
138
134
68
69
140
93
69
127
175
166
90
80
148
116
69
80
109
106
167
146
129
87
80
154
106
127
90
96
113
128
117
118
121
148
128
80
127
43
119
121
110
133
107
87
175
144
87
109
110
109
156
72
128
114
102
154
101
125
96
87
111
80
155
75
80
89
175
154
106
69
110
157
108
69
115
107
102
69
108
78
76
99
151
114
87
96
69
107
94
76
119
109
115
175
80
69
151
69
175
109
122
91
93
155
164
102
75
102
87
175
131
87
131
95
113
87
78
111
148
98
99
109
69
85
112
123
138
80
157
80
112
87
87
99
137
118
121
106
74
80
85
134
80
175
126
117
185
87
54
69
99
88
71
56
94
76
109
139
79
80
102
78
105
112
106
151
154
175
87
120
113
102
128
126
99
101
87
175
154
145
119
154
74
128
78
120
133
129
128
107
147
120
69
91
105
87
128
131
119
130
83
87
109
80
145
131
104
119
109
80
107
107
82
125
88
109
80
80
72
80
78
154
140
162
151
121
106
118
101
69
100
155
131
134
69
121
93
89
77
69
121
89
107
175
69
69
59
175
76
107
154
76
117
156
138
126
120
87
111
78
88
102
99
89
84
78
80
187
100
119
156
175
74
92
94
119
120
80
136
119
156
80
93
156
163
154
80
69
155
118
124
76
63
69
80
96
129
69
92
120
94
127
84
64
56
95
79
127
128
83
80
76
99
99
118
87
130
140
109
129
197
93
93
127
107
128
80
112
137
124
66
134
76
110
157
93
85
89
113
154
69
78
78
106
88
98
95
69
89
121
118
94
125
69
80
131
124
99
75
123
74
155
169
131
199
121
126
83
69
147
76
96
104
88
117
87
136
115
69
99
69
121
107
121
94
89
127
111
113
110
88
76
87
121
82
107
75
78
80
93
128
80
76
100
95
125
119
156
106
113
80
119
98
110
99
143
109
123
54
112
74
111
94
96
90
107
107
83
183
93
109
104
96
121
80
174
118
112
119
134
89
78
154
78
102
78
130
133
138
121
69
118
72
95
85
117
147
72
101
102
119
119
127
96
69
140
128
175
69
58
147
175
163
99
119
92
87
88
121
103
80
112
154
142
95
90
154
102
109
89
78
127
112
87
76
72
145
94
134
122
131
107
96
120
80
102
78
152
76
74
112
148
119
139
78
99
92
118
110
95
118
124
88
69
137
164
76
69
113
72
156
76
76
69
140
91
127
78
98
107
87
78
175
111
87
120
80
92
69
89
120
88
89
130
95
164
78
87
78
107
120
156
158
197
88
82
56
78
72
93
69
197
87
175
135
78
80
69
99
106
120
72
68
98
140
76
123
152
125
129
155
63
94
96
87
119
170
80
120
87
122
80
117
129
80
80
88
128
91
110
69
76
89
88
134
78
69
114
99
121
88
109
125
111
113
69
76
87
111
91
144
113
67
100
136
140
89
119
119
56
87
131
109
93
96
87
87
133
123
103
80
71
107
115
109
145
69
137
76
76
136
111
87
127
100
119
118
174
151
89
91
87
54
163
78
69
119
119
69
83
119
112
69
74
96
147
90
88
130
80
120
80
80
78
66
90
117
104
147
109
129
93
154
122
99
102
154
93
119
76
137
111
75
113
109
121
128
136
154
111
124
80
90
88
101
66
88
109
109
76
147
175
79
78
144
67
67
121
78
72
80
104
100
109
150
129
76
145
91
129
128
151
120
104
80
117
113
143
154
80
87
130
110
175
78
100
87
80
89
79
122
72
80
120
146
87
131
109
160
128
101
140
78
117
119
99
140
146
113
93
85
104
95
129
54
116
128
104
77
151
85
128
143
117
88
52
69
121
137
112
76
87
122
95
88
145
109
89
163
131
85
141
94
133
119
137
93
120
72
80
131
113
80
69
147
126
137
82
94
69
88
112
110
110
78
69
90
88
109
197
88
100
118
96
120
78
69
88
131
139
96
119
116
101
131
125
87
113
119
99
78
87
93
134
69
96
140
80
54
64
113
88
147
114
129
96
104
106
78
87
83
78
106
131
80
119
89
119
91
89
110
80
74
104
69
82
80
85
118
80
64
119
105
104
146
110
140
148
113
80
160
69
136
142
140
114
121
108
119
76
127
89
85
69
111
89
104
110
117
69
69
197
96
107
72
197
80
175
119
136
85
146
121
109
157
107
78
80
89
164
121
79
128
91
69
100
139
140
80
124
151
165
175
100
76
82
151
164
76
101
123
87
81
88
147
95
127
120
94
87
154
120
152
89
197
161
76
85
119
87
88
136
88
76
99
119
80
128
112
134
131
78
120
88
60
80
113
110
175
154
78
128
87
93
121
80
99
69
76
176
134
113
122
76
119
74
154
145
93
175
54
80
64
76
69
145
99
143
87
143
131
80
112
119
73
87
88
131
69
127
99
100
162
91
148
104
74
71
78
87
90
87
151
128
145
69
154
74
118
114
147
136
119
109
119
119
69
69
74
161
112
85
64
93
76
152
79
131
99
120
87
107
123
91
118
74
123
69
100
76
93
94
78
88
54
154
155
143
119
89
89
88
69
80
88
85
69
134
69
74
96
95
96
89
87
78
78
99
127
109
95
154
88
72
149
106
96
95
80
98
54
120
124
137
80
128
120
94
72
117
87
117
128
80
104
88
111
175
69
143
137
145
154
76
101
140
127
107
69
101
95
109
69
76
91
121
121
96
123
87
107
141
119
69
119
114
80
148
72
109
94
69
78
134
107
69
125
80
72
132
114
104
145
140
89
99
175
154
79
114
117
113
106
69
144
134
154
119
127
56
69
69
113
115
104
69
94
122
87
80
117
101
120
140
154
136
83
109
154
94
93
93
156
127
93
119
78
163
163
172
119
146
119
69
106
105
143
120
120
78
106
140
107
111
80
155
175
101
136
111
78
113
164
78
113
56
104
101
99
98
128
146
115
87
88
78
157
80
56
107
79
80
99
96
181
136
118
126
107
79
89
52
141
98
88
54
87
119
121
164
143
69
99
109
131
80
99
72
80
91
80
175
118
109
69
99
96
91
87
91
98
76
88
126
134
121
85
109
156
83
89
91
80
101
136
102
106
80
118
110
112
145
87
117
80
197
110
127
99
155
87
122
80
176
94
154
72
138
143
143
89
175
69
101
108
54
144
109
91
87
89
109
143
109
80
52
76
87
119
80
78
69
97
110
109
148
120
120
69
151
140
93
69
120
102
115
121
128
119
80
80
171
136
137
89
87
112
154
134
80
120
121
109
142
80
76
119
83
120
110
80
129
137
143
112
109
132
119
113
134
99
89
107
80
120
81
136
91
90
71
99
113
144
128
130
100
104
172
93
94
154
87
109
131
104
120
147
105
88
80
113
119
89
87
80
109
96
119
91
69
80
103
131
93
164
131
104
155
96
78
146
120
78
101
107
107
80
137
154
126
137
80
72
76
89
110
163
69
89
102
69
117
74
80
104
69
104
120
151
92
78
154
110
72
135
134
151
119
69
122
146
69
128
137
113
147
97
136
113
112
91
111
127
119
118
130
140
89
88
88
94
118
93
148
111
80
110
78
69
145
103
146
188
112
69
112
112
131
98
94
154
122
87
94
89
107
104
98
88
120
131
117
76
99
87
154
94
134
131
78
74
80
80
149
69
134
118
113
87
109
120
69
107
80
134
118
69
115
120
137
151
83
155
95
147
80
122
94
144
120
100
163
93
100
76
89
88
120
106
81
112
98
110
107
69
99
106
102
80
110
80
128
87
113
67
91
136
88
121
109
78
109
52
124
88
94
80
109
107
93
107
175
113
80
76
83
127
87
93
175
89
106
79
136
111
148
91
87
119
136
110
80
102
129
134
112
80
154
128
131
80
78
101
157
99
98
66
107
129
101
89
147
101
89
155
112
118
88
120
78
147
141
93
175
115
136
56
69
112
104
109
125
87
114
118
87
80
118
93
154
139
80
140
183
76
121
80
128
104
175
124
132
115
154
91
115
119
128
67
89
126
112
100
115
94
102
69
123
76
88
147
109
118
80
149
111
151
69
89
102
143
120
135
87
99
131
98
80
111
78
104
124
93
131
103
69
85
80
56
101
109
80
104
134
80
130
117
76
151
100
87
120
83
110
76
80
163
121
99
89
76
89
155
76
127
88
84
78
136
107
128
137
93
80
99
101
87
131
107
67
93
98
156
99
88
96
72
119
72
69
80
94
99
175
87
89
72
134
87
87
91
110
134
114
80
109
93
128
87
141
96
152
201
124
78
129
95
97
134
69
112
174
107
54
52
199
69
69
87
144
120
115
109
126
110
118
151
80
128
69
74
119
137
136
90
89
80
91
154
101
72
117
69
78
133
80
147
164
91
72
78
131
89
78
80
78
127
104
80
150
116
88
133
120
136
87
97
80
155
80
106
118
136
107
122
110
87
140
147
80
78
119
146
154
72
80
112
94
124
110
93
69
106
119
76
145
80
76
130
85
52
175
112
197
136
126
120
197
89
151
140
78
110
54
108
175
126
151
122
74
101
89
121
69
125
69
80
106
96
164
108
119
137
88
56
100
88
95
148
145
148
197
161
72
121
143
124
89
127
88
128
80
72
121
99
80
136
80
101
88
132
109
43
69
131
155
74
94
91
104
151
80
124
87
126
100
80
129
124
111
69
141
175
120
96
88
76
94
80
131
143
118
94
197
111
78
136
78
107
72
67
87
99
94
119
110
106
80
107
91
119
151
128
156
174
137
76
88
159
76
106
123
78
104
75
78
87
88
140
140
101
175
85
80
91
95
80
113
80
76
102
87
66
163
80
114
131
137
147
122
117
120
128
127
69
83
76
154
117
114
132
151
76
72
80
78
112
119
113
78
110
76
80
85
80
69
154
107
67
80
118
130
90
80
80
80
154
69
89
120
107
60
132
101
108
155
115
175
64
151
175
109
69
107
91
119
87
80
58
103
101
80
80
117
126
145
94
101
114
87
101
56
121
117
175
78
69
120
76
111
137
99
117
88
83
128
89
99
80
127
119
76
154
90
121
80
115
120
132
112
125
110
136
87
99
88
74
122
89
172
114
69
80
109
79
128
146
93
119
106
69
80
94
89
120
123
115
120
96
134
69
80
69
69
151
78
145
128
137
175
137
69
87
102
73
94
89
99
132
69
87
72
72
136
119
94
121
69
143
121
147
115
80
134
115
133
117
115
85
72
131
72
115
99
119
137
93
119
121
80
77
109
175
69
142
100
80
66
86
87
76
157
101
87
85
93
119
129
194
76
153
96
131
175
76
102
80
54
99
80
128
134
78
146
112
143
107
126
80
117
95
85
90
59
117
181
140
80
96
146
197
88
138
119
175
80
104
102
94
43
119
131
83
69
127
120
145
69
69
78
117
80
60
151
136
128
155
69
128
94
102
115
80
117
89
87
79
87
82
120
87
124
128
102
119
100
74
87
197
58
197
94
69
89
113
147
89
69
79
137
159
74
113
112
107
89
109
107
96
107
80
69
128
197
78
136
87
109
113
93
92
136
72
96
56
78
127
156
54
118
120
125
136
92
80
66
69
137
69
99
80
89
69
99
111
100
145
113
138
76
78
96
80
138
109
117
107
99
69
163
199
115
69
122
143
80
125
87
156
122
107
175
76
93
120
69
121
91
120
120
96
109
80
92
144
77
76
146
69
54
107
54
94
78
78
117
118
72
118
117
134
104
80
197
109
81
110
91
93
128
110
87
75
104
69
88
151
197
99
130
102
156
91
120
52
175
122
76
110
79
172
90
99
96
113
164
103
107
87
80
69
78
152
134
134
76
156
143
155
72
87
111
87
115
157
72
163
137
109
153
96
131
113
116
88
156
113
139
100
80
120
89
113
94
99
119
106
76
92
115
132
192
100
102
181
156
94
87
112
113
106
104
69
127
74
106
127
107
111
80
80
78
99
52
110
96
127
148
119
99
154
72
94
114
78
80
197
80
122
143
76
95
104
80
134
120
134
103
80
99
134
133
119
78
107
79
80
163
107
78
90
78
123
52
94
99
80
87
154
109
76
131
78
154
111
63
136
120
107
119
125
124
102
128
87
109
80
69
121
115
120
121
88
80
76
95
79
138
128
83
69
123
100
60
120
157
116
69
104
94
154
119
70
107
74
109
154
112
101
85
109
96
93
128
128
111
80
105
80
154
122
80
126
110
107
76
80
156
132
140
78
123
131
69
119
81
113
69
110
63
104
119
104
110
163
110
163
100
78
133
87
87
90
136
69
120
128
100
111
107
119
91
90
155
126
99
133
119
80
92
87
140
118
78
109
119
113
76
80
80
80
67
87
87
126
131
82
156
108
89
78
103
115
69
115
102
130
102
69
120
122
144
88
76
80
120
78
80
121
127
54
133
175
120
129
154
92
114
76
128
143
58
71
87
117
80
164
56
101
56
99
80
119
119
64
113
69
96
144
104
120
119
131
150
106
126
105
122
127
80
74
166
160
64
142
80
78
87
124
175
74
96
99
105
197
74
109
102
104
174
100
121
124
80
69
76
87
87
89
107
118
100
121
80
122
87
129
88
80
89
137
140
78
87
122
99
119
74
175
54
175
80
117
80
110
148
134
152
101
87
126
106
112
118
69
68
103
124
131
119
142
129
175
112
80
80
72
134
78
87
67
69
80
143
79
88
103
87
87
128
131
79
104
87
120
99
80
150
109
113
69
146
117
69
78
76
81
69
89
119
80
111
76
78
78
69
155
134
140
127
93
88
96
112
69
76
154
129
80
197
75
113
99
99
78
111
104
136
80
120
136
134
93
128
117
80
154
94
96
131
106
102
99
107
69
60
85
155
72
151
155
175
101
96
99
69
76
113
96
80
163
98
127
80
109
87
88
80
72
91
83
119
112
83
87
134
91
88
93
76
160
115
76
134
128
67
129
138
89
115
88
187
79
87
146
119
85
69
56
143
106
134
119
112
131
72
137
116
111
104
133
72
154
154
80
119
128
94
89
151
83
78
107
69
105
175
73
107
148
154
112
91
120
88
80
87
80
86
148
104
109
112
88
140
97
91
64
69
89
115
71
112
78
101
76
125
69
87
96
85
154
154
141
94
76
103
54
156
129
97
87
69
197
69
128
93
89
76
69
87
80
107
128
72
78
73
88
128
155
72
89
107
116
119
118
69
120
93
197
101
106
88
93
109
87
115
69
116
162
101
87
109
131
117
89
111
125
144
57
107
113
109
76
112
107
82
126
155
117
109
80
87
119
76
175
75
87
155
117
76
76
122
76
143
80
101
69
80
91
94
98
69
87
76
119
93
122
78
114
118
136
110
99
69
117
123
131
117
80
117
80
87
145
69
127
80
156
93
87
78
80
125
87
89
105
89
151
89
108
107
107
93
130
117
80
96
74
69
109
80
102
128
107
111
80
67
93
128
98
94
80
96
78
110
148
87
104
137
94
72
69
54
140
136
120
117
120
92
102
107
131
94
69
88
112
87
87
100
109
98
99
80
87
140
80
117
76
91
117
76
88
117
67
91
78
88
143
123
127
137
78
74
96
80
127
120
80
140
94
76
123
111
76
154
101
100
87
129
69
88
76
154
111
128
134
64
79
105
120
72
88
82
143
89
83
143
175
91
78
69
90
87
155
78
76
106
85
69
99
119
74
154
120
121
146
108
119
106
80
80
56
197
121
78
94
118
115
104
148
87
87
102
117
69
132
102
88
78
128
121
118
69
101
93
91
131
87
147
99
120
119
104
98
110
124
146
114
117
120
72
80
78
94
71
148
148
120
123
54
96
103
165
76
110
99
69
136
69
115
96
122
98
143
107
89
130
174
156
69
100
175
109
54
113
103
110
127
88
155
107
156
76
89
107
120
88
128
128
76
87
104
130
69
93
103
96
91
87
175
106
105
78
69
133
52
99
119
89
111
119
87
99
131
155
72
93
80
88
69
72
154
119
69
136
80
80
109
94
175
140
107
80
106
76
134
93
80
133
131
107
151
107
103
121
144
78
174
143
121
163
69
174
112
136
88
128
78
96
80
130
80
131
78
101
92
89
122
78
141
140
43
109
104
88
89
74
125
93
131
175
107
80
143
94
52
72
104
101
58
72
107
94
117
138
134
89
87
160
104
118
112
155
89
104
69
119
97
129
69
104
96
74
78
155
78
93
79
117
123
95
87
143
100
89
175
115
76
150
69
87
114
93
71
120
110
99
80
112
76
94
93
106
133
119
76
157
80
117
80
88
88
121
69
107
76
78
87
139
72
100
128
98
89
76
107
140
87
113
80
156
87
118
136
76
80
175
83
87
71
82
109
88
69
119
107
52
140
98
148
109
151
95
78
80
69
67
156
161
107
118
69
69
136
131
120
107
121
150
80
76
76
150
80
104
99
143
104
155
104
76
78
119
174
96
166
83
107
111
138
107
54
111
127
132
136
80
76
133
128
100
151
69
80
87
82
111
69
112
93
80
134
72
109
146
99
90
72
197
78
67
87
107
142
87
56
80
99
125
87
114
103
155
175
120
121
117
93
111
69
110
88
94
117
130
71
145
187
122
88
151
120
73
119
116
101
90
80
82
115
120
74
102
106
69
80
80
87
96
106
72
78
164
148
122
93
175
69
75
94
90
69
91
124
104
99
122
115
119
106
121
175
78
94
117
110
147
151
64
88
128
109
82
88
69
63
106
80
146
89
124
147
80
87
146
140
99
131
94
80
107
80
121
93
98
131
160
130
80
103
92
120
82
123
114
69
107
69
101
76
87
110
69
175
78
69
123
80
120
43
175
143
107
110
103
131
69
174
175
96
76
63
59
74
91
133
69
142
131
101
112
87
93
123
104
80
87
121
104
140
100
93
76
87
87
144
112
80
104
85
94
112
76
195
156
162
134
109
120
106
128
88
107
94
74
98
151
103
117
120
98
119
175
91
93
80
80
146
68
110
109
131
88
111
151
119
80
80
146
156
52
54
175
146
107
80
88
125
131
91
113
154
43
175
66
113
72
129
108
119
123
109
80
121
120
106
76
138
201
94
134
156
76
120
163
103
104
69
88
134
132
99
87
110
107
197
91
76
151
163
76
78
128
96
88
88
88
112
88
74
120
128
93
128
123
127
119
106
72
118
131
69
136
91
160
96
115
69
101
117
72
69
141
87
140
119
80
94
124
132
121
78
113
163
112
130
96
134
119
107
111
69
87
90
78
79
69
134
80
181
82
122
164
104
81
69
175
88
116
91
56
87
116
94
97
83
76
136
175
142
169
118
100
164
120
107
56
175
76
107
76
102
67
104
98
134
87
94
121
76
128
131
117
88
54
112
112
74
72
96
132
110
83
120
136
110
183
143
95
104
119
152
119
123
89
107
69
121
174
112
137
113
103
118
89
109
76
104
136
72
154
120
72
93
160
78
122
131
136
99
96
82
113
89
118
80
114
143
101
110
69
87
87
118
136
131
85
134
69
76
175
175
129
89
80
149
121
117
91
122
119
133
88
142
87
134
127
72
67
125
154
115
137
113
124
60
128
74
69
69
76
97
121
82
119
78
110
133
151
94
143
85
156
80
197
127
80
80
78
128
112
113
80
136
107
96
99
88
101
80
125
125
104
114
64
99
129
80
104
87
107
113
76
120
80
80
175
69
157
88
105
123
137
120
120
119
75
69
80
101
88
117
95
108
96
99
88
80
115
115
128
140
52
155
80
101
99
121
69
150
148
140
85
76
131
183
131
119
125
120
77
88
85
109
91
142
162
103
119
157
163
156
105
136
104
93
76
112
69
99
69
140
101
69
90
113
175
134
112
78
69
134
85
136
175
126
91
78
80
80
140
175
154
130
94
127
154
87
99
80
175
76
156
99
102
99
94
76
78
78
175
122
128
99
56
93
80
78
88
155
76
98
72
107
76
87
113
56
99
82
100
69
119
94
69
114
142
116
117
107
112
120
136
109
113
174
63
99
120
119
162
128
118
94
69
183
110
107
120
140
121
141
52
72
145
123
76
156
136
104
89
94
110
120
104
107
99
131
110
93
69
99
163
87
144
80
164
93
99
96
64
110
80
121
185
76
85
80
160
69
97
133
147
78
140
128
88
88
87
87
88
76
121
87
128
100
80
128
122
137
111
102
92
112
87
138
89
91
154
69
94
107
156
151
117
105
80
120
129
76
80
127
134
69
103
80
110
147
76
95
107
87
81
69
134
107
74
69
154
175
128
125
107
120
93
107
127
99
80
134
131
102
93
128
106
78
103
69
110
197
107
87
112
93
101
132
128
120
106
120
152
139
149
76
147
87
151
136
118
54
69
128
149
120
150
118
123
87
87
93
106
101
90
94
69
148
94
111
69
113
124
69
118
76
106
99
108
78
120
110
95
119
99
112
83
116
75
148
106
100
80
116
118
99
175
175
88
127
76
121
143
140
112
107
120
120
119
89
80
117
118
94
80
175
110
137
93
130
78
133
120
120
125
69
99
118
134
98
120
76
86
112
74
129
151
132
103
110
96
146
74
69
102
134
151
111
134
58
126
143
121
109
80
121
197
80
89
78
102
121
107
166
123
149
80
96
96
156
69
69
120
121
72
136
99
43
156
113
209
56
69
107
94
80
121
102
80
174
102
128
80
103
181
113
117
175
69
99
146
142
154
118
80
76
78
100
140
156
71
69
78
133
99
134
122
79
106
136
87
99
96
107
110
107
107
127
121
112
111
137
76
122
78
187
99
69
156
129
120
87
151
96
121
103
78
156
69
76
134
78
140
78
107
118
69
157
87
89
112
120
78
107
110
95
102
119
72
124
88
94
87
72
154
112
128
105
100
72
135
67
54
80
80
72
80
76
75
80
93
106
69
67
80
125
148
89
52
118
90
120
87
147
69
87
127
110
78
155
66
59
106
151
154
102
88
80
113
112
131
144
56
156
120
129
69
78
78
76
119
101
131
80
150
107
121
72
85
139
117
82
88
85
156
107
67
85
89
100
122
94
115
137
87
110
107
113
98
112
99
78
143
69
160
110
68
107
76
120
80
91
147
107
95
87
165
78
69
56
80
111
133
92
199
129
76
145
109
78
104
78
108
127
76
134
96
73
110
89
78
115
95
72
102
126
122
133
85
114
120
110
80
82
90
85
90
128
134
110
80
80
100
115
73
91
87
88
80
76
99
85
148
74
112
144
117
90
103
154
89
99
76
145
124
88
118
197
78
94
72
103
78
98
107
113
69
78
128
80
99
87
80
69
88
131
146
137
154
117
113
111
80
117
93
104
124
78
72
175
43
119
104
89
113
115
80
89
87
87
119
156
69
99
128
104
88
69
147
101
134
155
148
101
160
163
87
69
102
106
164
175
109
106
120
155
156
80
106
163
78
52
78
96
66
110
76
87
105
101
130
73
99
93
113
114
89
83
140
118
78
80
87
111
59
134
164
52
119
80
80
107
110
120
175
87
140
145
104
112
87
129
76
151
80
106
155
87
90
80
54
88
119
197
104
83
80
98
76
119
69
76
119
154
88
187
140
145
78
89
130
80
87
163
76
82
80
88
78
78
109
87
119
52
115
112
67
152
100
98
143
107
80
111
80
136
119
112
123
89
109
96
89
80
90
175
108
137
123
117
78
80
78
87
74
119
101
87
143
88
80
146
120
94
66
112
106
132
107
88
87
87
78
123
122
102
118
118
117
113
120
107
104
117
87
147
107
96
107
118
121
138
174
76
146
80
99
137
87
156
92
155
78
80
91
87
105
80
105
87
165
120
140
187
99
136
117
87
144
131
94
67
128
127
76
120
88
168
91
185
99
149
74
119
154
146
150
76
80
57
104
104
90
155
80
93
69
149
140
113
147
134
151
112
134
125
56
110
163
69
80
69
143
88
114
104
83
115
126
87
87
80
123
85
120
113
76
143
80
80
80
115
94
78
69
107
132
117
80
107
89
78
88
126
72
75
107
151
109
109
140
80
109
80
128
115
115
89
154
87
140
88
150
132
126
102
87
80
87
87
106
80
69
76
78
128
69
148
138
78
80
87
80
72
79
107
107
96
87
72
106
56
76
78
164
69
76
175
121
158
78
56
78
143
78
76
88
150
109
80
107
105
74
174
148
107
75
146
175
117
59
140
127
85
109
96
118
163
107
107
133
119
155
80
78
103
76
89
134
140
54
122
118
107
154
115
87
113
69
109
76
52
106
57
151
109
64
163
112
69
87
78
76
120
105
112
126
118
107
151
122
69
77
80
80
106
69
87
69
87
78
76
145
131
87
87
131
112
117
64
80
119
146
150
126
80
102
121
69
126
56
119
100
99
128
73
99
112
104
119
123
183
80
120
98
160
136
151
89
140
85
124
78
93
101
148
112
80
123
98
156
137
93
52
136
69
125
99
164
56
109
119
140
156
80
112
119
112
59
87
119
110
80
69
69
102
140
146
72
119
76
88
69
54
126
175
108
69
109
107
140
87
57
80
111
76
80
117
117
121
69
78
109
136
103
110
80
175
154
99
99
175
94
114
90
119
87
107
103
140
126
151
145
69
181
94
128
88
185
111
120
201
117
175
87
74
112
112
88
134
100
76
111
197
138
109
163
80
144
87
163
76
136
78
69
111
85
140
128
120
143
112
104
120
80
156
106
99
96
131
104
79
76
101
120
112
69
183
103
109
87
132
117
87
78
120
102
131
78
136
93
89
87
78
109
80
101
185
69
89
99
150
148
133
156
90
151
131
93
85
87
131
80
96
69
199
137
88
141
136
87
80
92
98
126
78
114
80
175
140
109
117
52
128
119
115
131
78
131
78
145
88
175
69
100
93
91
147
147
83
104
69
80
87
117
104
106
118
78
113
76
117
98
96
152
85
96
145
76
104
87
107
136
94
96
74
69
156
87
131
119
85
75
175
119
163
104
121
101
104
120
78
125
74
110
125
92
112
103
120
175
69
144
95
63
76
91
89
121
76
83
98
102
80
54
154
147
99
104
101
87
69
54
69
93
160
155
152
109
112
52
76
153
102
96
119
80
78
138
95
115
120
121
69
136
119
72
76
142
100
151
146
103
112
125
78
87
134
74
136
87
151
99
94
128
128
113
69
69
82
76
104
125
106
78
110
119
118
155
80
120
146
126
175
137
118
175
125
121
106
76
72
175
78
94
83
78
72
111
69
78
117
154
87
80
93
100
126
94
106
108
154
116
94
96
109
104
104
136
96
69
134
120
99
120
96
89
129
131
88
80
80
134
151
151
146
56
88
80
89
125
117
99
85
76
87
114
156
94
111
92
74
120
67
128
80
126
163
80
155
100
95
126
127
110
80
92
94
87
69
107
89
151
85
130
104
80
85
97
87
107
96
102
146
183
100
151
175
175
111
106
130
115
118
69
67
80
114
151
110
69
69
112
100
82
118
119
69
134
90
120
66
94
164
114
83
119
197
119
107
175
128
82
106
140
131
142
93
163
136
88
80
99
87
153
130
80
106
99
78
80
115
138
74
197
113
78
78
87
78
128
119
107
78
121
96
146
99
91
175
78
84
136
129
102
72
128
102
110
107
88
136
80
106
123
87
78
96
120
90
135
80
115
101
163
154
110
145
99
126
104
69
113
93
117
76
119
99
175
128
109
94
121
131
129
121
89
100
78
69
124
88
104
72
111
203
155
91
115
157
76
78
67
147
80
89
156
128
72
80
128
119
113
78
89
88
91
80
136
101
104
131
137
119
151
91
103
74
90
94
104
94
120
76
69
96
106
149
110
80
89
120
104
89
69
93
128
169
76
96
134
102
88
144
102
117
108
99
118
95
109
106
106
118
136
91
126
130
134
89
119
69
88
109
117
87
69
99
144
80
78
154
134
134
107
146
104
104
160
149
72
126
154
83
100
137
72
155
80
175
68
87
102
113
106
76
78
119
145
80
109
197
87
146
88
144
88
140
93
132
120
87
151
80
101
69
103
99
87
80
93
93
156
120
80
88
131
93
120
127
80
93
101
91
87
120
110
118
80
80
119
145
69
148
85
100
162
80
110
80
140
154
89
88
145
54
78
104
127
91
93
80
80
106
87
96
107
117
75
104
85
157
112
109
99
80
80
69
156
145
94
113
122
98
131
80
74
78
119
78
133
72
80
118
90
125
89
111
101
101
96
116
87
91
137
92
137
80
109
94
175
134
76
118
197
90
76
95
76
113
99
125
69
89
69
106
69
69
69
78
69
69
90
67
109
119
106
69
115
144
119
88
142
69
106
87
87
112
122
119
175
115
110
185
175
102
105
121
87
76
99
89
154
135
132
96
117
101
123
120
118
78
78
78
69
121
132
109
88
136
167
128
98
88
91
131
119
69
138
74
87
117
109
80
113
127
124
128
125
131
120
69
106
136
148
126
136
175
88
134
108
112
119
87
130
89
154
115
80
119
119
98
132
110
140
94
85
106
69
137
69
80
89
69
111
108
120
89
78
104
109
129
119
89
78
83
166
136
104
52
114
109
104
89
88
59
151
109
83
66
160
80
102
96
121
123
110
160
130
74
185
54
144
175
100
100
169
98
136
91
100
87
78
109
123
94
119
80
76
99
107
80
72
126
80
91
99
134
102
110
120
137
107
163
122
94
71
102
136
120
89
115
102
128
87
76
89
69
99
119
90
107
93
126
78
104
94
121
76
107
103
143
78
128
80
126
112
131
88
79
94
165
144
175
106
138
138
181
128
131
78
74
90
136
120
77
119
119
134
118
116
80
87
93
150
114
64
87
119
142
100
119
119
80
119
140
88
125
72
93
122
80
164
113
127
67
98
132
117
107
149
113
120
96
69
107
104
121
128
145
124
120
74
151
121
104
120
87
80
111
101
136
87
76
154
155
93
109
110
104
154
122
111
72
125
80
80
128
104
80
75
133
101
117
94
169
76
69
109
78
69
87
90
69
115
148
115
69
76
69
99
128
107
128
67
80
87
60
93
143
110
134
78
131
128
101
69
69
109
134
80
87
80
96
144
151
80
146
121
79
115
76
80
97
175
136
146
110
133
80
197
52
100
80
118
69
101
87
74
93
80
100
107
104
67
87
89
69
80
80
80
76
121
97
80
91
131
80
76
120
69
114
76
107
134
88
88
78
154
62
80
52
95
95
119
119
72
119
80
143
155
101
139
89
80
112
95
80
139
129
69
91
78
133
69
85
80
133
101
69
100
123
145
91
107
87
154
88
119
175
93
69
69
99
92
117
80
110
154
113
97
69
113
112
116
80
120
132
131
66
69
89
69
128
151
113
102
118
95
89
68
105
88
80
109
80
119
134
134
121
75
110
117
135
120
121
99
89
72
152
76
88
80
121
119
96
131
107
113
99
145
87
107
145
89
80
80
80
154
140
131
120
115
88
89
80
122
122
101
93
133
76
89
89
117
109
103
123
69
118
119
80
113
88
73
119
199
76
114
134
120
139
80
119
83
101
133
80
89
112
101
121
90
76
43
163
71
119
69
89
144
120
76
85
109
80
80
69
72
109
123
131
76
69
76
112
130
107
93
114
104
71
69
80
107
106
115
78
80
128
80
104
136
156
80
106
175
134
69
84
92
72
80
106
128
163
125
76
76
76
145
145
156
80
99
154
111
109
80
87
80
80
155
84
128
127
81
121
80
155
90
118
146
76
99
80
147
109
75
69
93
103
57
76
134
54
94
78
96
144
197
154
72
75
82
69
69
176
89
111
151
152
80
91
166
128
112
137
100
78
69
119
120
76
83
93
128
119
114
95
154
121
136
87
108
93
92
112
69
80
78
136
113
155
59
85
128
80
155
80
96
121
115
104
118
148
52
137
102
80
116
155
151
132
119
119
94
88
155
78
110
113
124
175
80
153
95
93
174
84
72
163
113
85
130
85
109
127
74
89
175
154
110
93
90
117
87
96
119
127
102
104
123
153
106
101
102
131
136
87
80
136
143
80
89
93
117
110
80
93
88
88
117
99
107
102
80
103
69
87
101
94
109
76
80
115
107
101
164
128
146
88
155
119
115
131
52
74
52
99
130
76
126
67
89
134
132
111
69
120
114
155
154
80
109
108
87
106
72
82
159
134
88
64
87
120
127
140
153
80
134
156
140
69
111
169
101
80
80
78
78
151
113
143
128
106
87
138
69
109
80
76
103
72
115
80
114
175
107
109
113
56
131
187
87
78
106
120
106
117
136
92
120
164
94
127
175
89
118
87
80
80
96
87
93
156
64
143
66
174
140
155
54
110
69
114
137
134
93
88
85
80
76
121
100
118
88
149
131
80
72
99
88
113
95
119
116
56
78
133
104
70
93
78
93
135
80
120
132
56
89
140
104
143
145
89
143
87
67
118
92
126
113
69
99
80
201
154
107
110
99
130
94
100
80
80
80
68
120
89
120
69
87
76
80
140
134
76
76
88
145
100
115
128
119
78
85
88
80
85
87
78
124
113
120
143
52
118
175
104
90
91
99
80
108
72
80
117
106
103
80
90
95
58
80
107
76
96
78
138
146
99
102
99
119
156
163
78
115
80
107
80
128
122
80
89
80
121
106
175
107
75
87
69
78
132
110
104
76
100
94
136
126
106
101
102
111
74
76
74
107
81
154
87
82
151
140
145
113
69
134
113
122
151
89
122
82
80
69
101
120
110
197
69
94
87
127
87
88
72
122
69
110
106
119
133
93
84
76
99
150
87
114
137
71
139
175
80
112
80
80
106
96
106
124
73
125
131
69
137
94
134
119
102
109
131
133
76
80
116
151
99
127
106
69
121
95
80
69
112
80
92
143
175
134
137
122
122
93
132
154
107
115
52
78
80
80
87
78
118
96
101
96
104
120
149
92
145
80
102
89
118
87
78
80
69
106
69
151
127
82
85
136
140
87
110
120
106
134
140
102
100
76
95
120
91
144
78
113
80
59
143
148
128
96
154
157
104
98
76
107
104
107
160
80
78
87
83
143
106
69
109
106
137
91
136
106
175
107
131
140
110
80
110
56
107
85
72
106
110
102
156
94
136
76
116
72
121
117
74
93
76
144
78
121
79
120
72
106
104
127
115
99
74
100
127
91
88
155
102
174
134
106
72
80
87
175
104
113
147
124
157
99
197
123
87
128
80
80
80
112
122
82
146
136
136
93
123
63
89
100
78
112
102
43
129
94
78
99
151
156
106
99
101
75
80
118
78
123
59
121
112
136
120
90
155
120
112
149
88
69
104
94
112
76
90
113
118
102
106
87
107
98
136
145
80
87
145
154
82
140
117
99
69
87
197
127
106
130
87
101
134
134
119
106
134
88
56
96
118
125
94
94
144
119
107
93
138
54
163
56
78
142
93
120
110
128
127
119
164
101
119
134
124
104
94
80
76
80
69
145
131
78
136
100
116
117
69
146
71
92
121
172
120
127
80
119
137
120
109
119
121
78
80
80
87
100
110
128
160
131
99
69
126
98
89
87
113
89
120
120
114
89
71
87
95
88
152
80
129
69
154
78
95
87
118
87
94
124
119
144
91
141
80
101
100
68
110
74
151
75
73
72
114
69
115
121
69
78
83
103
80
149
130
87
130
81
120
78
175
141
150
109
87
87
109
93
185
99
87
104
72
69
95
121
56
80
118
88
106
131
138
90
110
87
103
99
154
104
78
76
101
74
76
69
99
69
66
102
120
156
154
156
78
74
91
120
80
103
146
95
119
87
89
132
124
104
85
118
145
94
145
54
116
175
106
100
66
110
78
107
151
113
56
63
119
78
171
99
113
125
58
104
120
104
80
122
104
82
80
112
104
134
98
113
80
119
80
80
96
119
148
100
76
93
78
91
120
69
69
69
151
100
102
155
78
175
120
80
134
81
93
133
120
88
99
140
154
136
67
94
136
87
80
89
122
115
78
129
97
131
137
104
88
91
101
102
78
78
154
100
129
101
109
80
142
89
115
80
52
101
103
142
100
80
80
146
92
82
143
120
72
60
144
76
101
177
79
119
120
151
120
162
93
107
120
97
69
124
131
134
101
126
134
122
76
175
56
136
140
104
102
69
119
127
80
114
144
107
80
89
78
115
76
100
99
69
96
144
131
69
76
120
133
146
99
69
118
154
87
80
107
90
125
112
125
102
124
126
91
88
54
151
154
80
122
112
129
122
80
117
117
80
92
130
140
154
155
126
123
76
98
72
140
120
128
83
113
135
110
143
78
105
150
149
106
69
120
120
136
90
110
197
156
80
154
136
140
104
117
106
76
96
163
69
80
117
105
101
119
113
80
175
121
79
98
106
76
127
185
127
196
78
101
75
141
84
117
130
87
80
72
154
146
76
91
80
69
76
80
118
175
101
181
110
111
127
128
142
160
69
76
83
92
107
169
160
76
116
128
119
99
115
113
67
119
76
80
80
74
130
78
76
109
140
151
126
106
85
96
80
88
78
89
131
145
136
107
101
69
100
114
80
113
129
87
99
111
69
85
100
122
131
72
125
96
102
80
91
88
90
143
78
127
129
113
107
177
140
99
87
69
140
109
111
133
56
175
56
114
96
119
169
69
132
119
89
175
106
97
123
80
154
80
106
114
145
74
146
80
118
69
107
156
87
80
71
112
132
119
121
121
98
117
69
69
52
94
85
92
113
82
140
119
90
76
136
92
134
121
116
142
101
104
107
134
128
128
124
91
126
69
69
69
76
136
69
134
151
69
82
80
112
136
134
80
126
99
143
94
142
144
154
99
78
104
107
71
64
137
136
80
54
80
147
78
145
99
94
83
163
131
125
131
106
80
69
110
113
150
111
139
128
131
130
119
87
134
69
175
76
80
76
80
82
80
138
120
80
99
69
99
93
96
80
147
90
163
130
113
80
69
109
80
80
105
154
100
80
87
54
120
96
80
119
100
76
175
94
116
118
120
147
120
91
155
151
128
140
80
96
121
107
172
107
87
99
87
154
106
113
117
175
103
142
71
93
120
124
128
138
112
136
106
109
112
75
93
76
80
87
117
124
87
141
123
80
76
156
138
100
156
122
69
80
76
78
157
122
89
78
151
110
78
52
123
102
99
76
107
118
96
102
104
91
112
100
138
80
74
103
112
94
80
80
154
127
119
121
87
128
131
109
80
87
87
66
76
84
69
80
156
106
98
136
95
69
93
134
99
101
132
96
106
109
136
104
69
120
74
80
113
115
106
81
143
120
131
110
101
143
127
107
85
128
155
76
118
164
126
123
117
127
120
69
118
89
78
115
102
87
119
80
136
114
115
89
89
131
119
113
105
72
128
124
88
93
80
115
199
116
110
154
129
107
112
145
78
113
131
69
77
80
80
88
109
80
80
145
107
94
64
160
80
137
104
80
121
101
78
87
121
80
104
128
107
119
120
134
175
80
120
91
101
69
78
69
78
141
121
101
120
69
69
119
59
120
154
142
136
78
125
148
130
88
80
175
87
112
128
91
114
114
125
106
128
153
111
107
124
137
121
93
80
175
113
110
134
101
127
107
136
145
127
124
127
96
87
117
112
102
85
131
130
78
120
89
120
99
80
128
83
72
127
100
183
99
112
140
92
148
72
118
127
164
128
154
99
140
145
101
160
69
127
76
113
80
89
114
80
112
119
154
80
174
88
128
93
104
197
87
89
125
136
151
119
67
140
78
109
80
91
115
110
154
99
78
115
80
78
74
112
87
133
136
110
183
125
140
99
140
106
133
76
57
121
140
67
78
69
98
142
118
154
102
110
95
120
78
87
93
76
163
76
118
80
118
78
69
56
107
76
104
121
110
119
145
175
69
120
96
143
134
144
141
132
118
76
120
78
90
99
80
133
123
110
119
104
93
76
94
103
78
101
174
128
80
120
104
69
88
136
127
76
132
67
72
93
185
83
154
156
78
69
69
119
57
99
87
107
93
87
87
69
96
146
94
151
69
104
72
128
107
80
100
123
133
101
74
88
91
175
159
136
127
119
100
132
78
69
185
131
146
99
104
88
76
88
109
78
74
76
116
131
78
74
95
87
119
175
129
87
129
154
140
101
106
94
140
89
98
120
87
54
69
155
93
120
126
69
131
80
155
197
107
110
117
69
104
163
72
134
197
120
78
139
93
101
76
73
91
113
87
154
126
128
113
134
110
107
140
80
87
82
99
119
109
74
141
117
147
57
80
87
120
112
148
127
95
140
119
69
115
107
99
109
110
78
76
123
92
69
128
162
119
155
140
80
112
132
110
96
80
115
117
123
72
91
174
88
136
145
89
69
94
80
154
119
120
175
107
101
78
156
128
101
155
87
102
163
115
151
111
164
80
150
91
131
95
197
139
148
66
104
107
87
119
109
151
76
54
78
83
90
156
91
156
87
109
187
89
119
67
87
164
80
129
78
89
95
154
80
115
43
94
80
137
112
89
96
106
128
100
93
54
128
101
75
120
127
109
113
120
88
183
107
138
100
99
113
109
154
78
139
110
76
69
104
88
99
107
134
175
88
76
146
95
69
87
156
80
155
107
69
112
137
137
128
90
99
76
108
69
97
103
150
96
113
124
102
79
142
155
76
117
80
140
117
87
76
69
80
69
80
113
100
69
112
109
102
87
107
74
163
136
99
120
104
114
106
80
141
111
96
127
80
118
88
119
69
82
156
69
112
80
107
87
80
72
66
131
97
127
121
120
54
82
76
121
96
151
146
87
114
127
103
69
80
131
80
69
156
96
128
74
87
94
91
156
131
145
87
96
78
119
118
76
69
118
91
136
103
119
109
76
106
80
120
83
125
145
101
69
88
130
175
80
119
107
78
134
78
90
163
89
95
171
132
104
99
69
107
80
110
199
140
145
99
94
119
98
88
74
132
100
118
80
69
80
80
69
66
163
147
80
88
122
95
123
76
78
93
94
99
155
124
122
100
87
52
87
118
80
98
103
122
120
121
134
128
156
67
87
119
87
80
69
88
76
151
98
129
102
150
116
122
110
69
92
102
139
94
181
92
87
119
73
88
69
67
121
76
178
85
132
109
113
113
87
113
88
69
69
93
109
54
134
91
76
87
120
80
115
87
107
175
137
107
76
128
121
76
80
124
134
94
116
127
87
101
87
76
76
111
119
67
106
78
120
97
117
72
93
148
89
99
136
99
144
133
117
94
107
87
142
120
160
144
128
88
72
137
111
80
85
87
131
87
98
136
164
90
109
119
175
66
94
128
113
131
119
78
119
103
98
74
93
137
89
121
94
72
117
90
134
80
154
85
100
134
107
67
151
144
104
164
107
128
80
100
127
67
149
128
99
76
112
96
127
80
69
104
69
112
80
136
127
156
103
69
183
104
136
96
128
69
107
119
77
88
108
97
80
69
154
154
140
143
172
133
123
71
81
104
89
106
80
121
112
134
131
99
69
72
69
80
137
97
89
118
110
95
80
106
80
163
107
79
96
119
80
100
91
112
78
89
131
69
69
114
140
69
119
69
134
154
128
94
145
156
109
89
102
120
94
106
83
123
113
100
71
114
92
131
118
131
110
80
104
88
111
136
57
83
104
96
131
69
71
89
112
72
131
87
59
78
80
80
140
88
88
69
76
96
69
131
88
153
69
80
64
107
80
128
54
78
119
87
156
56
154
110
78
100
148
175
99
56
130
69
80
69
54
119
64
110
78
84
110
104
102
175
154
72
87
143
56
78
98
146
127
131
89
102
69
79
101
162
87
99
72
113
91
94
115
119
87
112
85
69
86
80
87
79
118
99
69
115
80
112
80
90
112
85
76
80
106
136
124
82
109
126
114
89
104
78
111
111
134
124
143
111
69
100
119
124
76
76
87
87
112
136
104
131
152
94
134
175
76
99
154
111
197
119
107
154
111
109
75
69
90
99
72
152
174
78
106
113
175
96
120
131
79
80
124
80
76
91
148
120
80
93
87
99
131
87
74
117
87
94
89
156
94
113
131
140
87
156
78
80
175
76
120
137
127
74
76
69
147
69
78
69
109
80
69
69
100
74
94
90
81
130
117
151
104
75
88
78
151
107
76
136
66
91
80
154
80
119
132
74
88
127
119
76
76
122
69
76
104
154
154
120
87
99
110
80
99
87
106
175
80
133
136
96
90
80
128
151
101
130
100
121
136
118
89
88
111
124
88
112
107
91
80
113
89
134
127
128
128
131
69
117
116
71
86
89
87
130
143
119
112
56
74
79
80
98
88
74
117
75
143
76
74
107
117
120
76
120
132
120
102
80
112
128
89
109
127
175
95
80
140
56
69
69
150
69
144
92
121
94
111
100
107
130
94
136
127
78
163
89
197
89
109
175
86
104
89
96
110
115
87
100
76
91
87
89
96
80
122
80
87
175
91
80
107
76
87
136
91
80
80
143
117
132
80
91
95
78
94
146
156
80
109
99
109
89
96
119
87
106
103
156
87
137
154
102
88
131
119
123
69
71
99
43
87
175
107
107
88
91
72
112
69
120
78
107
115
134
134
100
104
97
80
120
119
105
72
89
110
118
143
148
107
128
125
99
89
118
163
68
119
144
171
126
87
93
136
78
127
104
102
107
99
108
80
78
155
110
91
80
88
119
89
97
80
140
101
100
117
80
131
134
87
69
88
101
197
155
87
101
117
74
144
89
121
137
175
119
69
78
102
136
85
87
113
113
105
72
110
132
88
100
156
91
111
121
111
109
94
57
80
138
114
107
75
78
154
93
107
104
72
69
158
90
90
145
107
89
143
119
116
69
136
72
145
64
87
131
120
99
101
104
80
110
121
69
87
78
108
120
155
105
101
119
124
109
111
69
60
69
78
78
64
117
89
146
185
134
80
127
147
125
90
87
80
107
87
84
136
110
78
132
109
155
74
69
89
87
119
110
69
87
91
183
78
98
89
86
113
156
149
78
119
157
100
154
88
80
87
76
94
89
112
80
143
80
79
112
109
80
94
78
115
145
91
89
108
124
160
72
71
112
154
87
90
197
89
69
87
88
136
69
98
54
83
87
155
78
69
157
129
113
93
110
140
99
80
94
78
106
89
131
109
73
137
69
136
107
111
91
127
76
131
110
60
175
128
131
113
138
104
89
144
113
117
129
125
87
96
159
134
112
107
76
69
175
147
115
67
99
111
119
117
138
76
80
107
72
80
96
69
69
112
97
109
78
109
125
101
131
88
89
80
134
128
87
80
118
120
157
110
160
156
43
78
107
74
137
147
98
69
169
89
175
89
169
127
197
151
134
54
120
54
81
94
69
80
126
91
183
119
113
137
114
99
120
126
107
80
88
153
64
93
100
80
123
87
134
112
99
122
90
79
130
110
112
145
118
72
201
109
119
117
104
113
110
107
80
80
175
78
99
56
134
126
99
69
121
112
107
88
115
117
103
119
80
76
121
119
133
112
69
69
80
144
175
69
113
122
80
145
136
99
69
76
103
141
128
88
91
94
56
156
89
175
107
131
128
115
175
121
87
87
101
154
156
103
136
91
104
80
140
91
72
106
87
123
175
110
134
145
69
118
119
133
154
110
104
112
80
145
88
78
159
119
72
160
80
80
104
104
69
124
80
127
112
69
121
69
151
85
80
99
120
110
54
119
172
107
56
101
126
140
78
134
116
87
113
87
115
87
111
75
89
140
93
72
120
69
129
141
110
118
80
80
122
87
101
119
120
115
87
100
109
76
101
87
105
110
87
163
107
99
72
131
106
69
112
69
80
88
99
121
151
103
121
69
76
88
69
76
95
175
121
117
163
69
69
80
119
128
119
80
54
43
78
56
80
140
119
66
72
156
120
144
175
80
101
93
131
89
124
99
135
133
137
76
89
78
139
69
87
134
119
86
80
69
140
138
134
100
148
133
136
101
98
99
80
89
121
112
121
149
102
76
89
107
96
151
166
106
142
67
76
87
82
133
93
172
120
89
113
88
143
119
52
87
91
99
69
106
78
131
87
78
80
80
82
117
110
113
134
100
78
80
85
154
107
124
58
87
107
93
109
80
83
155
67
142
107
80
59
93
76
155
118
95
88
146
69
52
124
140
197
80
79
154
164
78
114
80
69
113
69
80
94
109
112
80
98
118
128
121
155
144
80
112
86
88
140
126
76
96
114
52
78
111
136
103
113
80
78
91
175
121
82
121
138
97
136
136
75
72
128
124
104
145
105
69
93
72
66
154
109
89
147
69
112
124
85
78
121
78
135
110
111
136
130
127
175
133
107
69
99
181
87
163
106
99
76
120
154
114
115
102
80
130
120
89
104
91
151
102
79
92
59
145
71
113
113
102
108
58
87
69
102
72
127
151
80
113
105
93
91
107
91
128
138
113
129
154
109
175
69
87
72
90
87
91
154
138
72
104
43
76
104
102
99
155
69
78
107
110
88
94
134
148
76
120
88
133
72
129
100
88
80
131
92
130
75
93
106
111
183
98
69
112
96
101
80
111
72
76
69
109
113
106
197
110
91
163
87
52
87
146
99
128
131
74
107
83
133
109
71
138
80
78
130
107
59
175
107
175
91
78
80
87
119
72
99
107
163
156
120
120
130
104
114
111
159
106
87
119
80
151
154
117
80
117
94
110
143
88
109
100
76
78
149
87
69
124
69
125
120
128
124
130
110
80
80
128
80
89
157
113
120
106
154
95
119
100
78
80
78
119
146
137
100
113
156
102
128
94
69
121
139
107
96
94
120
197
131
133
99
155
110
139
117
148
56
99
106
87
112
154
76
105
99
156
94
87
69
130
98
80
172
93
87
209
107
104
80
128
88
175
94
119
87
110
91
80
69
142
78
136
197
80
87
93
128
80
107
129
136
156
119
80
143
120
92
69
87
75
127
78
91
80
69
163
93
93
104
88
117
134
59
126
69
91
52
89
102
56
97
117
128
73
107
88
111
102
91
131
137
134
94
97
88
87
136
117
121
87
79
131
80
94
83
124
87
106
58
155
128
80
87
80
197
128
185
93
131
104
148
103
102
56
76
80
110
109
66
87
80
107
156
82
133
80
88
119
93
101
121
80
119
102
78
99
69
110
106
76
104
122
128
78
101
119
128
119
69
89
109
117
155
185
119
111
72
87
121
106
127
120
76
80
78
155
102
140
107
78
129
120
110
94
99
175
87
89
106
72
76
100
95
98
87
106
134
127
80
131
102
119
107
99
80
43
151
144
96
67
103
110
120
95
102
52
175
120
114
107
72
80
101
83
151
89
78
54
152
100
58
154
175
87
117
119
175
154
69
111
106
54
80
91
72
126
128
76
122
67
111
119
69
170
154
175
148
89
151
87
161
105
104
100
76
80
69
82
175
120
199
156
69
120
114
72
72
94
87
100
114
114
110
117
125
146
119
140
181
135
134
120
109
76
104
129
87
134
117
103
133
120
154
119
99
87
120
78
91
80
128
106
112
146
96
140
80
134
76
119
127
155
74
87
101
99
109
69
101
123
175
117
80
134
80
78
96
71
136
104
154
87
90
117
93
101
78
112
150
127
175
102
80
126
67
148
78
154
175
94
114
136
120
175
172
95
123
80
112
107
80
121
134
69
143
120
96
111
69
99
146
91
151
69
87
146
123
69
71
88
69
118
102
131
88
98
110
72
88
155
59
118
110
120
140
131
78
92
81
154
111
69
117
80
80
64
101
145
101
87
88
69
120
151
81
104
87
143
58
111
108
69
78
115
54
67
80
76
57
80
87
120
67
109
81
127
131
69
145
118
80
122
153
201
83
100
69
91
159
80
78
80
80
89
137
126
112
93
69
101
88
126
154
117
106
94
95
115
80
80
91
80
76
134
104
134
145
134
124
83
113
69
146
72
87
80
76
119
117
76
132
112
96
74
76
120
110
146
52
87
91
80
127
43
88
64
94
121
197
113
129
154
136
155
201
131
96
85
80
87
69
99
142
80
82
89
119
164
128
131
134
88
119
128
197
87
88
119
101
110
98
127
115
112
94
117
121
69
76
76
115
112
78
119
125
89
76
113
101
93
103
133
72
155
87
78
88
64
134
52
160
116
143
112
138
104
80
156
117
78
144
78
114
106
80
112
102
122
104
119
120
107
151
146
107
121
140
92
69
89
136
131
69
54
149
112
117
87
156
76
126
93
137
78
113
134
88
74
121
155
74
143
94
197
96
100
80
117
119
80
119
80
96
103
78
99
123
131
78
136
78
76
109
73
119
88
90
74
87
146
130
87
120
74
175
119
64
137
113
76
111
119
80
89
131
155
99
100
80
102
112
127
78
92
106
69
127
80
52
184
69
112
80
132
87
110
111
69
131
111
69
143
89
197
110
80
102
170
89
96
76
93
104
110
109
134
110
78
82
96
111
69
119
93
78
89
87
100
80
87
128
99
109
78
109
119
165
69
144
87
87
69
128
103
80
78
100
80
99
156
134
145
152
93
69
54
127
109
131
72
175
69
114
94
80
140
99
151
80
175
104
87
107
80
93
121
175
80
117
107
130
175
69
119
104
107
102
121
69
80
104
76
120
133
80
131
104
116
183
117
52
140
119
78
69
87
96
150
119
126
69
128
118
78
131
114
103
126
80
76
107
119
140
76
80
134
80
105
152
131
89
106
91
92
74
80
128
114
96
127
140
87
69
89
74
97
103
87
77
89
99
104
94
87
69
125
117
96
175
86
183
146
183
87
136
90
120
88
124
156
79
103
133
80
154
121
98
175
129
69
120
111
118
87
114
90
113
120
88
80
148
89
120
106
113
128
80
72
125
106
78
143
80
122
83
117
78
78
143
120
83
113
136
131
110
120
87
131
85
150
119
155
155
99
54
140
113
78
88
120
107
79
119
66
76
54
80
106
75
80
69
120
107
121
99
77
134
80
116
99
74
155
134
117
110
174
78
112
82
107
104
120
146
80
74
109
117
76
74
87
106
75
107
119
80
89
139
185
99
109
131
68
83
87
130
148
99
106
100
76
87
80
120
113
87
134
100
94
111
128
54
126
99
72
120
87
80
103
125
145
96
145
119
119
115
80
80
116
112
78
119
72
138
111
91
110
104
163
103
111
78
106
96
102
109
89
80
119
156
117
127
93
103
120
128
104
123
134
69
87
95
104
69
120
93
121
80
172
127
137
97
99
152
131
78
80
130
140
69
107
79
109
78
80
101
148
138
76
109
137
121
175
80
80
80
78
136
146
94
128
95
160
87
133
72
88
80
103
99
72
106
137
107
121
80
80
74
127
114
112
78
175
100
128
83
117
119
110
76
80
80
123
76
120
80
120
96
66
180
107
87
87
187
90
151
76
102
76
80
131
175
52
78
90
106
72
135
59
82
101
156
94
162
175
176
113
126
121
155
94
109
91
56
154
89
120
69
128
130
105
78
80
128
69
115
175
112
66
157
101
150
119
76
120
78
69
69
102
140
106
88
121
69
106
106
96
146
80
64
43
94
93
118
87
140
115
163
120
140
104
181
154
88
114
132
128
134
137
87
136
109
76
107
140
121
132
80
128
72
117
134
136
175
76
135
128
141
80
78
101
83
151
99
69
165
132
99
129
107
89
106
69
93
132
137
109
80
93
119
88
172
154
119
165
87
80
94
128
107
163
154
75
120
74
118
150
79
54
111
82
139
140
122
130
113
109
66
115
104
80
119
103
146
137
111
78
76
107
87
90
80
94
117
136
79
72
72
122
99
78
80
78
96
88
112
150
108
102
121
115
106
69
80
120
109
78
99
69
94
92
69
142
80
163
112
140
134
100
80
78
87
151
76
54
69
99
69
110
110
90
127
90
83
133
107
78
80
128
119
187
99
151
87
72
154
112
124
69
119
88
143
71
83
69
87
113
80
80
93
121
137
119
67
69
87
144
111
120
154
96
106
151
101
87
69
146
131
113
80
88
124
119
151
96
130
89
140
80
162
107
121
89
122
80
132
66
83
113
133
174
126
134
113
87
117
119
106
69
133
87
94
154
124
76
146
93
124
110
134
96
124
111
119
99
80
119
119
105
119
156
74
104
69
154
69
69
69
89
109
159
72
131
96
67
137
101
80
128
80
80
78
91
120
80
69
81
69
76
87
69
79
131
122
76
76
128
115
113
80
154
122
69
164
156
104
69
104
80
138
148
78
155
89
88
101
56
197
111
175
94
120
72
185
121
54
156
94
116
93
143
132
136
76
154
110
76
140
154
89
119
160
130
85
120
94
120
131
113
107
76
99
131
111
80
88
88
147
155
76
155
69
80
174
143
106
112
69
183
80
69
128
91
87
91
93
155
177
89
69
171
151
80
99
80
112
148
105
154
87
100
154
102
126
128
127
100
126
80
80
136
140
197
106
80
67
78
107
110
139
81
134
92
90
136
156
80
120
118
134
72
82
64
117
175
85
106
144
175
156
154
95
128
163
72
87
114
118
89
72
116
119
69
199
175
154
76
155
122
88
121
96
131
140
96
91
107
69
112
93
87
106
79
119
87
136
80
126
121
122
93
106
95
88
138
103
54
93
125
113
160
99
78
80
109
85
112
87
78
126
80
136
139
104
120
101
111
130
80
87
175
117
82
76
124
160
126
95
90
152
169
133
69
149
123
175
99
89
119
102
144
88
89
107
80
87
96
110
107
128
107
101
80
110
157
175
78
89
76
117
80
140
112
103
101
136
88
106
80
118
127
78
80
91
87
76
96
140
63
136
76
95
109
134
140
138
108
119
104
121
52
121
87
69
54
67
154
119
66
104
80
169
92
178
98
99
102
78
102
157
52
137
93
106
122
147
119
120
141
103
119
69
78
107
115
87
80
89
76
101
158
69
146
124
69
69
121
80
102
110
115
96
76
175
132
119
148
154
128
106
85
94
104
139
197
76
127
88
80
104
208
106
69
119
131
149
82
151
107
73
165
110
140
87
75
99
99
85
116
88
140
103
128
134
80
87
106
152
155
110
92
128
120
104
123
94
138
95
115
71
138
89
124
96
104
78
144
98
120
112
117
119
78
110
141
128
133
107
182
67
83
69
69
69
99
156
110
128
128
94
151
101
106
121
121
164
150
52
104
119
56
99
80
109
94
76
185
100
80
93
94
175
118
154
128
128
155
106
101
69
107
128
100
80
115
78
111
107
106
128
80
56
113
119
156
80
111
83
115
95
73
87
88
145
121
87
91
116
126
187
109
69
76
100
80
80
110
174
88
78
89
118
87
69
69
138
137
137
99
80
151
113
94
88
87
69
98
69
118
106
100
208
80
160
152
69
118
69
99
109
150
109
115
69
91
101
80
155
131
112
87
76
99
87
107
102
137
75
142
88
88
89
69
117
117
80
78
52
78
109
69
89
80
94
119
97
140
107
69
154
87
67
120
78
156
115
52
104
134
72
102
109
128
130
118
69
119
185
80
154
155
94
78
77
121
120
80
119
120
128
104
181
175
118
87
93
133
80
123
143
145
99
138
97
119
89
88
151
100
94
78
133
133
143
109
87
52
160
93
80
69
76
119
120
54
133
89
136
107
80
107
96
87
156
69
69
164
80
118
89
80
89
80
128
80
136
110
120
94
80
87
154
127
75
74
99
124
101
109
102
97
87
80
69
110
115
119
100
69
100
148
117
107
87
145
85
174
113
120
80
69
66
54
133
148
80
69
80
174
120
93
66
72
148
175
146
140
140
94
126
175
69
87
93
126
93
131
104
96
175
109
125
94
161
104
109
54
101
89
76
109
114
127
137
112
119
74
130
69
104
154
74
87
80
121
123
89
142
93
102
94
119
80
121
76
87
80
80
92
117
108
89
175
119
80
119
110
52
199
91
102
165
85
104
67
118
78
92
122
87
155
76
80
114
119
93
136
72
69
76
120
154
132
106
69
128
80
102
106
137
94
94
91
78
109
76
87
116
128
128
73
69
91
93
112
80
97
80
75
69
109
75
93
76
107
76
145
74
98
80
156
115
120
197
175
67
78
72
151
103
121
119
174
80
76
136
69
71
151
69
83
69
88
134
142
128
80
88
76
87
79
110
145
114
92
76
99
106
123
80
128
69
145
87
155
101
110
155
69
83
120
133
162
110
128
80
131
72
87
201
66
175
128
80
102
93
127
147
71
78
88
134
136
69
134
110
88
54
111
63
136
85
92
69
128
87
112
91
102
69
121
54
145
93
113
80
164
126
72
94
80
69
89
113
104
89
117
102
80
121
76
157
69
121
128
87
76
126
95
72
87
83
102
92
87
76
94
119
125
102
119
140
69
87
99
80
113
99
80
164
83
96
93
78
87
43
128
80
87
107
64
152
119
64
78
140
64
122
89
72
78
119
109
104
93
122
106
89
118
155
106
116
107
166
116
119
112
72
127
109
69
175
111
120
119
103
128
107
146
69
119
126
155
75
124
129
128
110
103
104
146
109
144
87
117
58
69
155
131
102
119
78
119
120
135
144
146
69
54
103
114
175
118
125
136
94
124
92
117
88
81
88
137
119
64
119
87
134
107
197
99
113
133
123
107
127
89
143
56
69
100
87
144
132
89
145
136
107
76
156
120
151
72
120
120
118
87
80
69
76
119
122
88
109
94
90
76
74
105
87
87
89
94
69
107
110
109
88
72
98
126
118
129
107
147
109
122
145
117
107
127
98
131
104
80
154
94
132
83
104
99
110
106
87
121
143
76
120
121
108
119
154
63
126
90
99
99
121
80
127
69
80
87
145
109
104
80
93
78
114
76
125
163
87
91
91
119
88
104
104
121
142
175
100
99
120
125
91
52
91
89
94
80
80
72
78
87
80
140
175
74
109
146
74
150
137
94
115
145
107
117
93
80
103
130
105
146
121
125
107
110
115
109
134
76
89
80
87
80
87
80
87
117
67
107
80
80
87
154
155
106
126
143
98
54
80
87
80
69
128
78
85
78
156
109
89
107
99
143
129
112
80
94
141
96
94
90
87
80
109
121
78
102
121
112
118
118
120
87
147
130
127
99
80
113
138
110
124
134
80
199
115
99
80
124
87
112
120
117
69
99
120
60
175
110
67
114
72
137
156
111
90
137
106
101
148
98
121
52
123
119
99
111
93
155
154
80
110
72
119
119
121
175
87
120
154
138
119
80
101
95
91
134
99
175
54
155
137
116
143
127
109
175
95
110
78
105
133
101
132
94
174
76
90
120
112
143
119
106
72
88
131
72
98
153
154
134
121
88
163
123
91
80
94
113
80
76
155
83
91
109
80
80
87
80
76
137
111
88
120
146
113
117
104
114
89
143
175
80
106
72
113
154
74
101
127
129
106
99
203
80
76
134
54
75
174
87
145
87
102
127
80
93
110
106
80
129
120
121
102
120
99
80
120
155
89
99
96
107
69
43
84
87
83
89
130
87
76
98
91
93
115
151
103
136
114
106
197
76
79
120
52
76
94
99
119
110
76
149
88
89
107
107
120
78
72
80
145
124
83
104
122
186
134
69
164
175
80
94
119
43
80
87
104
74
128
87
124
144
136
110
121
110
72
80
89
115
80
69
80
118
72
69
175
106
87
121
87
134
89
110
156
80
93
113
125
175
110
140
78
80
80
175
69
197
109
78
87
100
119
113
175
130
111
101
87
123
80
93
107
82
119
80
136
107
104
91
128
63
87
96
89
69
78
128
76
138
83
104
92
99
104
76
69
74
87
111
127
88
120
80
128
80
94
91
89
104
117
139
154
80
78
76
75
78
80
103
96
80
120
107
109
96
175
104
117
197
111
120
76
143
80
150
78
80
93
110
120
74
138
106
80
107
110
110
120
110
107
144
117
80
80
93
72
144
112
107
127
60
110
80
88
69
109
69
154
80
78
113
58
112
154
140
78
78
136
106
80
121
104
156
69
69
136
78
126
80
100
134
88
87
94
127
106
154
99
78
140
67
99
60
80
119
133
90
72
113
103
94
155
178
104
78
119
119
154
143
94
127
136
120
113
135
175
123
199
122
98
80
112
106
125
129
88
78
89
100
89
99
147
119
119
146
179
136
69
78
120
78
78
80
121
80
107
88
136
119
76
110
78
78
85
90
80
134
120
134
124
112
129
148
130
80
59
80
89
91
78
82
101
69
174
71
74
132
109
90
117
92
82
56
136
134
80
156
112
91
109
91
93
107
85
158
124
107
80
93
122
80
75
116
119
120
107
96
148
117
101
132
107
154
72
120
113
104
80
71
96
119
90
110
172
163
78
87
154
154
128
76
121
75
131
156
99
120
118
52
103
54
89
121
90
163
128
117
109
52
54
87
80
80
133
116
93
69
136
108
133
69
78
80
120
120
79
69
93
121
95
149
175
154
175
87
113
107
78
72
100
147
151
95
156
163
80
113
146
99
80
96
107
57
140
89
80
80
121
151
56
154
80
102
130
155
185
74
80
132
67
96
81
114
94
72
99
147
143
80
154
107
128
119
106
80
151
89
69
80
136
74
119
140
175
120
91
154
105
82
112
87
78
100
151
90
131
134
87
181
87
163
69
89
80
121
121
118
80
80
110
83
165
52
104
80
110
183
91
106
111
109
102
131
101
56
78
87
72
118
120
157
69
140
106
154
89
116
119
100
130
78
99
67
99
174
108
71
76
119
113
133
119
130
121
89
69
87
89
142
76
96
79
110
66
94
69
115
99
120
146
93
96
69
52
106
154
155
69
111
155
76
80
104
136
104
78
112
142
169
69
76
69
137
119
100
123
99
89
87
76
113
80
134
175
136
69
107
107
112
99
119
159
78
66
101
128
120
106
74
137
144
100
110
117
98
92
87
89
87
85
93
148
115
164
117
78
76
154
175
99
69
89
143
126
100
136
80
80
144
110
69
119
114
172
102
94
156
91
96
113
89
80
117
107
104
136
119
117
54
138
124
78
102
125
122
112
78
109
135
106
117
141
87
80
76
129
93
80
122
187
96
80
98
78
91
155
104
103
146
127
76
94
87
80
146
78
134
80
88
120
78
137
99
72
107
90
119
70
147
124
107
80
132
146
80
80
151
69
87
151
107
78
119
80
69
107
72
54
197
98
114
69
93
80
120
131
139
131
150
107
87
76
109
109
85
78
142
80
69
83
93
93
87
148
112
151
148
91
80
80
69
80
154
80
71
120
154
78
104
93
136
101
125
109
119
54
114
119
43
175
127
102
78
69
128
131
101
91
130
106
69
93
101
124
123
109
113
124
134
129
122
101
80
115
76
141
163
80
78
151
106
176
104
115
128
76
80
128
130
104
124
80
130
119
143
93
104
137
111
89
146
74
110
91
68
80
78
72
94
67
128
54
74
154
154
168
154
100
199
96
119
144
89
80
120
80
148
160
87
197
102
136
78
112
109
87
134
91
109
80
119
137
138
80
146
155
112
174
56
197
103
121
100
91
119
143
111
56
80
97
131
99
113
120
107
80
80
78
69
163
104
109
95
116
113
92
82
105
137
126
76
107
163
119
120
131
131
69
119
99
119
137
52
112
89
142
107
140
73
88
100
80
87
104
157
131
80
175
118
131
137
80
109
130
163
89
69
134
99
80
137
91
110
162
80
89
92
104
201
89
121
138
80
93
147
132
80
148
120
88
76
120
89
80
135
93
106
175
107
134
128
97
69
107
109
175
87
69
112
78
89
87
88
104
137
117
118
155
119
106
137
80
92
109
147
197
88
94
93
80
99
101
76
104
101
134
130
90
209
56
125
85
119
120
148
88
93
80
154
93
54
71
106
66
89
80
62
117
52
134
117
127
87
120
117
131
99
107
69
133
80
95
119
93
131
69
156
75
76
111
101
154
137
94
80
118
95
78
87
91
154
87
110
99
112
128
106
109
87
119
52
150
140
111
76
122
85
96
59
80
137
175
80
80
128
76
98
83
84
151
54
78
129
69
101
169
76
78
99
119
107
91
161
145
89
106
76
177
131
125
119
76
96
152
199
87
80
119
106
94
112
80
98
80
134
119
151
94
121
80
88
122
76
143
164
107
87
43
57
110
136
90
76
80
136
67
119
133
99
110
87
101
104
93
80
103
107
94
52
94
90
107
88
93
110
74
80
136
80
136
112
69
80
123
110
80
130
96
80
80
83
97
133
107
78
120
87
88
69
87
128
118
140
138
76
113
80
154
111
89
69
119
155
121
127
118
76
76
78
144
87
127
87
143
107
146
109
154
120
76
113
98
88
74
80
197
136
156
109
113
80
76
134
129
110
100
94
126
131
87
76
106
151
175
66
112
109
88
137
89
113
124
86
113
56
91
80
109
91
183
80
105
114
119
101
87
69
82
156
89
87
129
76
69
175
152
137
69
130
96
80
150
69
78
69
87
78
119
69
64
103
91
90
114
115
96
80
93
91
69
85
96
88
69
80
107
136
69
143
88
111
156
76
101
87
154
148
129
147
112
147
108
140
80
88
136
54
74
107
78
197
93
80
74
88
113
144
120
120
106
80
78
156
140
100
109
80
72
114
87
118
131
163
88
175
126
93
109
131
138
115
89
152
85
109
139
119
95
144
87
117
80
87
52
117
104
106
80
94
136
93
76
114
163
160
174
81
109
120
121
106
120
134
109
94
106
135
115
121
133
78
69
99
129
175
94
80
77
87
150
87
100
147
136
71
87
175
74
80
54
119
96
128
78
107
155
76
99
175
123
169
91
105
78
121
82
133
69
114
127
87
122
73
96
126
175
104
155
85
119
146
96
199
89
115
163
80
87
136
99
163
119
120
83
74
107
136
134
164
98
130
78
80
106
89
73
175
80
112
151
127
131
139
144
104
116
88
108
127
145
106
149
158
80
109
69
87
155
78
119
174
78
87
56
197
87
112
128
57
69
109
115
59
114
80
131
134
98
106
87
109
117
110
80
126
76
131
69
119
128
128
117
138
93
120
140
102
129
104
83
114
156
118
69
80
128
93
114
140
69
151
52
89
163
119
69
91
146
100
134
69
119
93
79
99
69
154
100
110
156
134
119
85
136
99
69
106
156
144
140
94
99
87
80
80
76
134
197
93
107
123
121
69
80
142
106
91
175
82
95
119
95
107
134
120
119
128
119
69
156
109
121
54
80
76
87
175
154
76
103
99
76
136
69
145
115
85
87
69
94
119
89
96
171
127
74
150
151
118
78
72
140
88
76
69
80
144
69
80
111
134
54
106
80
154
87
134
137
87
104
69
164
176
56
94
109
160
100
112
89
131
118
119
131
107
100
87
89
94
87
128
88
155
101
91
175
87
169
113
96
110
74
138
131
99
80
134
69
137
98
63
76
76
106
134
112
69
114
127
89
69
80
80
100
142
119
136
124
119
107
83
175
113
128
80
88
119
89
150
99
78
106
128
169
56
69
109
185
127
100
154
197
99
93
72
93
102
106
151
126
123
103
156
88
119
131
80
67
110
145
76
106
69
120
109
134
116
88
69
80
80
104
121
87
98
54
64
80
119
128
80
151
175
126
96
119
93
164
106
80
89
107
146
76
106
131
76
80
150
100
119
156
130
129
54
131
78
91
101
98
99
109
121
120
106
111
107
102
117
79
129
80
69
117
146
101
78
120
80
119
89
80
131
95
110
163
80
113
121
155
106
119
113
95
143
69
80
117
116
93
91
119
151
93
104
94
85
87
94
68
119
99
109
93
89
69
82
128
154
89
111
136
93
154
94
142
133
128
155
112
107
127
64
54
113
131
88
164
104
78
99
78
156
122
119
118
89
72
112
117
80
80
108
107
105
60
80
143
103
175
132
104
95
143
140
120
101
93
96
69
85
130
58
106
80
87
78
187
77
87
88
89
78
87
69
80
76
76
120
162
80
98
108
100
91
91
69
107
74
76
120
91
80
88
119
175
69
153
145
136
88
99
127
97
154
121
121
154
118
134
120
104
140
123
82
75
147
76
80
105
112
76
104
80
76
114
141
151
120
109
100
154
114
156
80
174
164
101
175
148
110
104
76
142
69
118
89
115
81
72
128
111
92
147
155
124
76
111
100
129
154
101
128
91
90
96
175
80
87
122
64
131
136
98
120
87
113
146
134
87
163
128
110
87
96
154
76
132
128
93
78
52
140
99
93
87
104
106
117
69
119
131
94
69
138
124
72
52
164
131
143
121
87
52
99
89
162
110
136
89
146
82
87
156
88
111
129
130
105
58
113
98
69
109
99
119
117
125
197
120
131
120
120
136
123
122
104
134
201
66
85
69
112
80
107
106
175
148
140
143
118
106
87
91
80
126
72
132
54
111
52
80
78
87
134
115
130
76
69
76
90
88
127
114
99
72
85
78
140
140
75
99
110
102
134
102
78
120
58
154
154
175
72
105
93
140
73
88
85
107
143
86
110
76
156
91
106
74
89
120
99
107
80
131
127
121
155
140
78
88
80
109
133
118
185
106
89
115
76
119
87
107
100
80
137
87
69
107
72
80
82
149
112
144
79
107
101
107
107
80
54
98
89
69
156
141
88
120
101
90
80
99
163
80
175
109
103
76
87
80
151
112
76
81
181
69
107
130
72
76
111
107
69
136
126
120
100
80
89
128
106
115
114
78
112
74
107
119
80
145
169
131
114
74
78
90
91
112
154
108
78
80
76
80
113
102
109
56
94
80
72
101
119
87
134
119
99
110
133
110
99
109
125
126
133
151
121
80
110
117
163
121
90
109
90
88
151
175
119
127
175
128
106
111
118
136
134
103
80
154
127
112
73
64
74
78
76
99
143
78
88
136
69
132
80
97
117
151
80
78
128
104
109
87
102
103
91
89
88
134
115
107
119
120
80
69
152
128
117
79
101
78
162
143
154
99
78
69
76
69
87
151
113
110
117
54
104
107
80
106
69
95
102
144
143
109
99
120
113
80
155
148
76
117
100
72
114
93
175
103
120
80
133
175
131
113
128
118
131
138
115
99
74
110
80
107
138
69
126
109
140
102
80
121
106
119
69
128
93
131
102
90
78
154
116
87
78
107
72
87
111
93
76
69
117
128
95
107
80
174
92
154
156
126
100
112
113
100
74
94
106
110
154
80
87
102
87
80
131
132
107
131
88
87
72
130
109
119
120
143
133
84
74
138
80
88
80
119
131
96
133
103
87
72
95
119
69
80
72
197
112
79
107
102
119
109
119
69
112
76
159
82
103
69
104
96
136
128
80
175
127
93
103
163
117
100
78
80
118
100
43
89
98
89
98
119
175
103
101
169
146
104
78
78
87
87
131
131
68
69
101
123
131
197
128
90
94
69
139
106
72
110
151
99
104
80
96
135
117
151
78
120
101
80
96
54
80
80
127
110
76
69
128
72
109
134
128
69
148
128
119
112
112
119
136
175
91
91
74
176
80
124
101
91
100
69
109
101
104
98
142
80
87
88
106
63
80
102
74
81
125
100
154
78
90
94
87
147
96
72
104
89
136
95
69
199
88
110
58
75
197
197
87
76
121
85
128
120
78
69
154
131
148
121
102
132
87
130
89
80
69
136
72
107
107
108
154
80
134
130
88
83
90
122
78
69
80
158
99
80
76
90
197
156
107
156
96
94
151
74
119
106
99
109
164
113
88
130
90
89
142
145
69
136
72
99
78
80
87
156
107
115
107
102
72
69
104
97
80
76
118
107
159
110
128
56
80
107
133
113
56
69
66
80
115
140
143
77
80
175
119
88
88
148
74
118
104
93
113
87
117
121
110
103
94
154
112
115
69
123
156
154
69
78
80
144
201
97
86
118
89
99
89
175
82
99
143
155
75
89
69
119
101
76
72
72
146
119
80
102
169
83
76
129
99
87
88
100
91
88
69
87
109
162
118
87
80
87
107
85
54
102
122
90
125
102
112
110
52
78
80
67
90
88
87
101
88
107
72
137
120
109
101
88
101
129
175
99
113
145
112
132
157
69
94
130
128
142
121
139
76
89
148
112
134
109
119
110
120
112
111
130
80
154
130
79
134
69
80
89
139
54
158
120
116
86
175
89
147
160
119
107
134
99
81
69
78
123
119
69
160
88
181
143
107
69
110
69
93
94
185
104
72
175
74
78
154
69
95
157
137
80
107
87
99
43
118
98
66
80
64
80
76
80
87
158
163
80
96
131
74
100
175
154
90
114
90
89
94
52
89
111
102
78
69
96
101
145
99
78
172
137
89
106
107
78
136
111
69
127
154
145
88
147
131
81
111
96
95
87
85
69
80
95
132
128
80
106
76
80
113
93
102
88
103
94
205
119
69
76
130
189
93
120
123
80
112
120
141
139
137
115
89
124
128
105
69
117
125
175
151
118
93
113
101
118
54
140
119
138
129
113
143
80
93
101
69
144
76
91
134
109
122
80
122
112
69
126
119
109
64
94
143
118
156
94
58
89
100
102
98
107
78
87
112
56
143
181
80
80
120
133
78
131
88
156
128
128
80
103
85
105
140
155
69
100
113
133
87
80
133
113
80
111
127
197
122
140
109
134
165
99
54
109
87
155
137
109
96
110
120
96
76
148
72
151
79
151
76
120
79
129
99
133
99
144
107
120
137
56
72
117
80
126
69
107
83
101
89
92
80
80
113
175
109
136
140
107
76
99
131
109
131
117
106
156
78
160
80
52
117
119
69
112
110
104
106
91
137
101
119
175
128
117
99
78
148
72
101
136
80
118
155
109
154
80
102
155
72
144
99
88
119
82
113
110
114
87
112
76
143
80
134
94
110
121
93
122
107
59
71
113
126
105
119
80
174
129
94
128
131
96
114
175
117
69
106
76
74
87
146
133
91
72
134
102
151
119
94
78
107
67
127
124
131
110
88
127
79
119
89
199
131
107
80
197
66
120
93
197
121
124
73
94
128
120
121
90
91
91
120
155
93
87
80
102
118
89
94
111
121
107
102
169
127
121
151
74
113
69
131
109
136
96
80
110
140
93
78
99
121
156
102
87
136
140
141
140
118
80
94
56
120
93
101
128
87
81
80
69
156
131
174
119
131
87
107
69
118
131
106
72
91
73
89
104
154
88
163
134
151
114
142
156
80
76
101
72
122
96
107
118
54
155
175
104
79
127
118
134
84
101
89
90
89
96
109
96
111
84
121
52
79
69
69
80
76
72
80
80
106
125
154
72
131
87
119
131
163
52
87
92
117
157
80
88
118
137
121
119
154
76
131
69
67
69
96
80
151
120
110
123
103
69
52
99
94
72
52
140
160
157
135
72
114
154
144
154
154
88
80
152
107
69
69
94
94
144
183
126
102
67
98
74
117
80
183
72
80
131
119
69
106
69
136
124
90
89
156
106
121
72
104
157
94
89
126
104
175
80
134
150
128
98
100
89
72
82
88
110
76
128
67
103
79
56
121
52
123
99
80
143
78
80
112
79
129
117
69
78
72
115
78
117
79
69
135
93
124
101
175
76
80
122
106
128
100
89
137
87
112
102
143
156
66
127
80
69
85
89
140
136
154
87
109
80
121
87
58
107
125
80
94
127
109
132
130
81
89
155
133
107
88
95
109
122
134
80
117
87
117
109
131
78
72
88
56
109
119
87
114
69
100
123
123
96
131
76
89
69
110
104
69
141
59
129
129
110
113
85
88
118
78
87
113
109
154
72
87
151
134
120
80
91
104
136
118
149
71
145
130
76
105
131
151
164
87
104
113
156
85
112
108
106
107
103
162
69
87
69
80
69
120
111
145
118
128
76
107
87
89
134
154
88
121
76
119
91
104
120
91
54
113
80
76
69
80
150
146
184
89
78
83
89
128
69
72
87
121
78
80
156
142
78
80
117
138
119
175
69
106
145
93
75
80
94
116
110
94
98
131
113
82
96
69
96
69
121
76
117
140
80
175
109
127
94
109
151
93
69
128
185
98
131
78
127
114
148
69
146
89
90
52
69
112
56
72
156
136
69
131
80
120
145
107
78
98
85
104
80
76
106
95
119
72
94
101
110
119
80
69
111
91
69
151
78
69
128
69
93
74
156
80
106
80
113
112
115
52
100
81
175
122
80
64
107
87
80
128
125
78
89
118
156
138
78
102
54
90
117
87
109
117
78
151
120
100
73
90
136
128
76
140
131
156
127
110
88
96
155
91
104
137
78
101
78
134
112
124
128
80
113
85
115
118
132
125
186
87
136
103
93
113
123
126
120
96
137
80
80
140
80
128
88
76
100
107
118
69
104
175
134
114
94
127
113
134
125
126
127
155
99
93
80
136
120
106
181
125
112
85
87
155
114
80
155
171
113
128
107
76
155
69
109
89
103
87
87
87
72
114
69
148
87
89
110
140
160
120
156
91
119
89
103
167
145
69
140
80
85
107
154
99
89
72
107
151
140
78
128
107
87
154
148
76
80
88
72
136
114
130
69
138
64
80
80
80
107
78
100
69
104
80
146
87
110
104
69
119
112
130
109
57
175
117
109
146
93
102
155
96
93
79
111
134
143
80
119
130
69
109
117
118
114
110
140
97
78
154
104
96
80
151
154
83
136
113
119
72
120
163
78
76
120
155
151
76
96
121
96
109
115
154
145
127
115
89
80
117
79
121
52
80
154
127
119
132
175
94
85
76
114
127
69
121
133
129
95
165
69
99
69
80
88
83
112
150
145
54
107
143
131
76
101
109
88
104
138
197
135
169
156
83
93
156
127
76
115
154
107
80
100
69
102
131
107
87
94
76
80
122
92
109
118
69
129
99
102
69
163
129
78
69
90
87
87
112
134
72
104
107
99
94
128
126
115
107
80
102
124
152
112
119
175
125
146
80
149
104
175
88
52
154
79
120
69
80
91
110
69
138
69
76
134
144
163
107
124
175
175
106
154
93
156
125
104
80
136
104
104
100
125
89
69
107
69
69
109
69
88
80
142
106
99
106
109
91
118
89
94
131
112
80
69
163
90
72
80
94
99
95
102
175
99
99
87
69
136
113
147
160
102
76
120
102
80
88
134
99
118
96
148
110
137
107
89
154
69
69
69
152
134
75
69
104
72
132
140
140
88
89
129
136
106
122
89
83
109
97
122
99
136
69
66
80
80
143
74
94
124
142
76
112
87
128
85
119
110
140
96
80
116
117
80
140
128
93
197
80
119
154
114
140
93
57
87
78
131
112
74
174
166
72
151
136
131
82
80
123
136
97
76
87
76
107
101
87
87
120
104
128
87
98
183
52
74
88
137
96
54
122
114
154
131
106
117
101
85
136
52
69
87
151
78
106
99
128
80
131
76
91
140
64
109
78
128
94
155
80
140
136
115
115
55
87
81
130
154
96
85
76
69
112
98
134
95
99
197
143
80
92
113
118
102
156
117
43
102
72
87
69
69
134
148
130
134
197
87
72
175
74
83
163
197
99
88
136
110
132
136
76
80
122
113
130
88
128
76
96
110
130
140
93
72
103
95
128
83
104
175
120
80
94
100
108
69
101
75
69
131
79
119
126
91
154
102
136
78
133
103
87
93
107
131
80
147
175
100
110
109
112
87
143
69
93
113
98
106
106
126
87
87
107
130
104
120
94
107
94
99
146
109
112
63
115
71
121
119
69
43
128
109
87
78
197
85
92
106
69
80
128
102
146
93
76
109
128
137
150
99
102
120
131
99
80
76
69
98
151
121
114
136
112
91
107
151
80
156
76
152
112
74
101
143
111
80
106
99
109
89
89
76
89
87
57
76
131
119
106
114
143
175
80
99
128
127
96
80
72
99
99
156
130
56
93
127
107
69
113
119
98
74
76
89
112
134
132
136
76
52
119
103
88
112
105
43
118
87
76
56
94
80
102
80
120
183
117
155
87
106
76
76
104
69
130
92
96
137
145
119
80
175
121
96
104
85
143
80
93
88
80
137
87
72
72
72
91
88
87
109
119
104
56
69
134
78
133
91
133
133
175
89
72
66
80
122
80
72
117
117
107
109
96
109
117
195
83
83
80
104
158
107
131
72
128
80
119
80
76
76
103
136
110
106
108
119
104
96
75
127
96
144
69
128
78
109
88
118
72
95
151
72
208
72
104
148
80
197
80
197
94
128
145
107
88
76
83
155
99
80
89
124
87
87
164
174
125
142
109
112
107
96
72
126
98
106
80
130
132
151
134
114
89
69
107
69
144
89
69
131
150
131
93
107
80
175
78
104
120
112
104
154
79
139
162
76
120
128
129
99
142
79
69
94
148
145
131
52
89
99
76
89
144
101
107
121
75
109
87
106
80
87
142
123
69
149
78
69
72
154
78
69
72
139
87
80
69
99
67
117
87
74
80
174
131
69
76
142
78
106
103
128
87
125
99
175
114
69
110
93
66
76
87
59
99
80
78
110
119
122
109
69
151
128
118
87
110
107
142
97
164
133
110
156
157
74
99
110
80
115
174
109
76
163
119
134
131
134
87
120
157
103
104
178
137
119
89
130
83
113
104
56
102
134
108
79
91
90
78
126
102
106
99
129
175
119
151
88
154
131
76
88
129
104
175
80
134
128
141
69
93
99
154
109
124
80
175
69
110
112
69
91
132
80
83
163
69
80
113
151
112
123
146
99
78
140
94
110
80
77
160
128
113
154
89
109
131
93
74
87
87
130
99
78
120
69
107
128
155
87
160
141
136
69
143
69
76
130
144
87
128
119
121
164
87
69
96
80
110
54
87
87
91
78
136
135
87
119
140
112
112
89
88
87
93
154
115
115
72
85
129
89
88
80
78
111
144
72
118
175
120
56
72
89
113
100
123
113
88
127
87
136
112
76
136
76
155
120
80
93
69
96
91
93
130
104
104
110
197
89
80
107
100
109
80
100
88
112
69
87
109
117
134
99
154
78
115
77
88
134
98
52
80
69
154
87
110
106
144
80
98
175
152
54
89
80
102
120
87
119
112
145
120
80
99
109
143
85
87
78
88
87
99
112
100
93
83
69
118
121
97
80
54
131
117
163
112
80
127
109
82
78
78
136
106
89
80
106
127
80
91
117
94
89
112
52
87
80
128
89
144
120
107
107
91
106
150
80
174
77
80
76
104
85
145
113
103
92
140
98
148
120
122
87
112
88
99
112
118
123
119
112
93
145
91
112
76
136
68
90
69
83
78
78
118
110
88
99
76
82
75
117
89
74
99
100
69
107
43
140
115
115
145
197
78
127
117
93
72
115
87
80
175
87
138
117
121
80
78
120
80
175
129
115
80
175
128
104
125
95
106
59
148
89
102
102
142
162
142
96
76
142
104
88
117
108
72
101
56
106
123
136
134
120
134
175
69
120
130
80
197
83
128
78
102
120
89
80
69
101
131
112
110
99
76
128
74
95
96
80
78
127
130
197
80
69
99
92
78
113
110
120
120
78
102
131
107
136
78
87
138
89
113
175
159
83
154
109
165
121
94
120
104
87
118
91
126
120
99
99
117
134
140
111
84
102
107
94
80
80
69
99
103
119
80
69
110
137
78
140
78
125
95
66
83
98
111
110
69
118
128
127
69
133
74
129
94
90
128
107
92
80
123
115
142
131
110
109
137
154
175
142
88
69
113
104
128
94
88
69
80
87
89
137
80
197
88
78
87
129
119
151
83
164
118
131
135
78
119
111
94
99
71
80
54
78
140
109
78
114
82
102
94
89
98
122
111
99
94
154
89
99
78
76
119
128
155
75
131
76
87
148
101
69
99
93
145
132
120
80
133
80
110
72
100
89
92
89
80
102
137
76
112
130
118
69
69
110
103
101
120
155
119
104
78
89
101
119
111
104
80
87
75
69
120
80
78
103
69
80
69
109
106
104
130
117
69
93
131
89
121
120
110
43
78
121
82
101
83
113
76
93
88
96
118
88
80
87
113
94
156
89
131
145
122
119
119
121
94
100
119
110
109
112
80
146
137
94
107
72
103
90
69
94
124
72
76
99
69
117
78
154
146
80
156
146
154
70
93
109
80
110
108
143
91
76
80
109
175
78
128
129
80
87
120
163
106
175
136
85
120
78
113
97
112
78
155
156
156
175
88
87
54
93
102
99
124
131
96
128
130
107
123
136
93
102
120
112
119
175
175
80
100
119
117
87
130
120
175
107
99
76
87
52
136
129
162
163
128
119
128
136
90
138
124
87
109
142
101
92
130
197
100
160
131
90
138
119
93
74
96
109
110
91
89
99
95
80
124
89
83
121
120
96
93
102
76
122
146
106
75
79
93
113
79
96
98
96
76
92
151
93
197
99
160
125
69
101
119
69
80
107
112
52
94
93
98
80
69
109
80
80
151
103
159
128
117
76
118
80
98
185
127
87
72
134
69
127
108
150
129
80
101
103
146
128
112
128
72
126
154
78
75
57
80
99
129
80
91
119
136
100
89
137
175
87
74
88
175
120
107
117
89
80
90
111
107
83
119
80
97
103
132
69
80
102
78
143
155
127
128
87
74
88
110
110
201
138
78
87
112
107
124
82
134
201
101
128
154
67
72
76
112
94
154
146
154
169
136
80
87
96
175
197
78
98
133
79
80
92
120
136
80
137
136
102
113
109
122
87
119
107
96
101
80
109
102
87
90
103
146
94
121
95
119
89
107
72
78
80
156
94
126
102
124
118
69
119
89
124
137
87
132
95
120
111
58
164
144
80
127
69
99
76
87
80
78
87
89
111
87
93
132
97
137
87
110
99
156
130
82
80
94
106
117
91
104
163
119
99
69
104
95
95
120
93
130
118
94
113
155
87
78
88
76
175
146
52
96
119
119
78
80
155
136
88
163
112
80
129
113
176
117
107
134
81
69
115
54
88
156
110
87
78
88
120
106
75
91
148
137
80
78
69
104
119
88
72
119
78
164
80
69
104
109
69
69
134
101
80
109
91
107
89
78
196
122
115
109
148
80
106
155
107
101
98
56
109
119
78
78
118
111
119
88
120
100
88
152
119
88
113
110
107
128
109
197
80
106
87
103
141
94
69
181
121
119
98
90
104
80
89
89
87
164
87
128
156
80
109
146
134
113
94
175
156
154
131
104
99
89
87
107
87
87
72
52
80
197
76
134
76
107
156
197
69
120
140
111
119
136
74
69
185
128
140
96
157
102
80
96
74
154
146
87
78
74
92
94
127
111
120
76
94
100
121
87
114
154
106
77
112
80
93
92
159
71
90
111
69
154
94
54
132
129
89
117
98
134
137
120
96
109
121
154
136
76
117
85
99
156
116
144
80
109
76
86
78
175
76
91
107
118
183
98
134
99
69
101
156
80
116
89
136
98
74
76
69
118
125
107
118
90
76
128
69
156
120
60
135
74
115
137
76
121
78
143
120
119
91
125
134
174
69
134
68
78
100
110
107
88
136
69
94
80
149
76
127
90
121
130
111
109
110
122
120
197
103
80
119
78
119
149
100
79
115
87
94
99
95
121
117
120
95
112
128
93
94
69
138
165
87
69
107
158
109
140
78
69
94
145
87
74
119
95
132
80
134
79
63
76
163
119
128
106
104
109
96
151
153
103
156
99
107
89
69
80
87
80
114
56
82
129
104
147
69
64
102
80
69
115
120
69
88
156
112
137
145
94
78
162
82
89
136
100
123
99
98
163
99
122
110
113
109
107
119
66
137
175
162
136
134
157
103
107
164
94
157
119
111
128
89
128
110
76
76
91
119
115
78
56
87
159
133
104
151
89
93
69
146
89
120
87
164
103
89
69
94
131
88
71
126
102
119
80
109
112
78
88
115
136
80
93
103
107
99
138
115
96
78
54
113
76
134
91
83
120
114
66
127
73
175
99
119
140
72
124
148
80
134
102
113
109
163
163
78
119
130
99
89
113
96
97
80
102
104
54
54
143
154
152
128
106
110
143
82
72
146
107
57
138
129
107
110
69
175
80
113
98
110
131
99
79
133
83
164
175
98
128
104
140
113
120
154
93
175
197
122
102
137
85
83
129
113
87
87
78
101
104
99
128
87
114
89
175
131
128
80
91
136
76
155
76
87
80
94
136
146
76
95
104
89
158
126
82
69
86
74
80
93
87
128
109
88
99
111
80
80
80
112
80
89
69
134
175
92
133
90
100
163
111
131
69
118
137
109
117
78
134
79
87
104
119
69
111
88
128
110
69
143
93
83
76
80
147
104
78
114
102
60
83
99
101
116
121
110
87
106
163
93
88
102
121
113
80
87
166
134
147
193
121
90
78
120
131
128
151
117
88
128
123
73
149
119
74
72
96
76
80
87
88
87
120
94
130
119
106
71
132
107
119
76
69
78
98
174
132
119
99
110
99
110
119
69
91
69
104
82
78
80
71
69
56
119
104
175
119
100
197
89
56
78
78
79
148
94
94
95
146
136
128
134
78
116
104
124
102
102
88
131
117
119
211
89
87
93
93
86
164
175
131
88
85
80
120
131
154
69
113
72
80
87
95
69
72
80
143
140
99
113
103
102
119
113
98
69
160
110
93
201
76
69
136
113
123
99
130
110
72
69
67
52
89
78
87
106
94
117
80
72
136
175
80
78
87
175
164
148
95
120
72
181
90
80
119
123
69
121
145
102
92
112
89
91
156
151
96
87
137
94
101
101
78
107
69
154
99
78
67
115
80
144
99
136
128
96
99
69
80
114
132
74
124
80
87
76
106
95
128
138
119
113
69
89
154
131
80
128
80
140
133
125
74
128
102
128
140
126
72
128
72
197
96
85
102
91
91
74
151
119
125
80
117
56
134
121
87
104
80
54
136
80
90
136
78
173
128
90
69
142
58
136
89
197
87
183
91
109
65
98
89
93
87
69
82
160
107
57
96
100
125
87
94
78
110
69
109
114
163
121
88
101
154
111
71
133
156
136
80
120
94
89
94
91
69
80
136
131
112
87
118
141
118
94
80
94
89
71
128
82
94
80
69
78
109
72
93
124
102
175
115
54
97
87
69
104
136
80
111
156
150
100
128
80
80
80
131
121
90
123
174
87
99
121
123
80
115
123
175
96
66
113
80
94
78
108
87
69
67
113
104
148
82
113
151
87
78
150
69
80
99
107
149
174
112
113
96
104
77
72
117
108
104
80
131
75
127
78
80
136
88
76
72
117
80
145
69
156
186
101
69
129
80
100
69
80
78
131
132
87
117
121
104
70
136
94
87
93
147
78
89
109
87
82
196
80
201
100
76
59
163
138
56
148
69
87
80
121
120
156
128
136
69
120
96
99
156
80
119
93
146
146
99
80
89
107
79
175
99
109
69
96
109
78
88
175
127
93
93
85
113
69
76
69
69
138
117
175
128
125
157
72
78
149
121
80
93
145
80
148
87
127
88
79
120
106
90
129
106
99
151
80
80
56
101
175
99
103
104
106
113
95
91
89
78
152
78
80
89
134
131
136
133
102
121
106
80
112
107
80
94
78
153
175
93
175
88
129
94
76
106
140
99
143
120
76
145
64
76
76
112
76
76
201
102
56
142
113
76
115
134
154
120
175
175
80
76
146
101
76
88
80
72
123
109
146
119
89
89
102
90
112
132
78
133
154
80
197
117
119
85
83
131
80
80
78
78
80
69
69
109
131
74
87
75
137
122
160
175
69
134
63
101
80
132
88
119
102
147
101
151
88
80
120
87
93
89
133
136
76
128
102
74
80
119
88
72
80
125
87
92
78
96
137
87
80
69
128
128
119
74
76
80
199
134
78
94
125
174
156
93
120
150
87
126
111
126
124
76
102
121
121
84
80
52
85
96
96
80
128
43
118
127
154
76
146
127
131
87
136
80
117
122
120
111
78
107
107
121
119
78
56
78
69
106
106
154
87
126
69
91
87
154
100
121
74
90
132
98
80
87
56
140
106
69
80
80
98
104
80
110
126
121
154
80
128
88
80
76
43
112
165
132
56
76
80
102
109
104
104
128
59
137
199
88
99
154
151
93
132
119
88
85
101
76
177
74
98
96
58
112
107
100
148
108
79
119
88
80
101
80
126
111
130
122
69
113
100
132
78
72
99
54
146
54
175
143
63
136
112
109
87
97
69
87
142
76
78
119
134
69
52
80
69
121
52
152
133
107
80
85
126
80
80
67
119
119
151
69
80
144
125
74
163
78
102
122
183
94
72
87
73
104
87
88
78
99
69
90
175
80
69
91
154
122
127
88
109
131
122
140
88
111
106
76
88
69
74
56
87
80
121
76
137
146
71
145
121
87
140
154
140
127
109
123
148
58
69
109
119
137
69
76
146
119
79
146
69
102
101
131
112
120
119
99
119
177
110
123
64
69
76
119
72
75
104
76
80
128
137
87
109
88
80
80
112
111
87
102
80
175
119
76
128
113
94
87
69
107
88
90
148
136
136
87
96
94
87
67
80
172
80
80
87
121
150
106
113
112
118
90
100
106
94
87
110
138
104
54
76
137
113
150
145
79
78
80
93
87
185
133
157
110
94
143
78
146
156
95
110
123
109
129
149
74
133
99
103
76
111
146
96
120
120
118
88
94
100
69
128
100
129
132
91
140
78
101
59
78
119
88
101
80
154
80
118
95
90
72
162
145
104
101
80
140
122
156
110
124
103
107
69
144
80
95
94
110
119
138
89
52
74
106
106
134
128
127
80
115
80
162
100
126
121
137
80
101
119
140
87
52
76
87
88
87
107
76
92
113
88
69
121
102
128
115
130
115
145
109
132
86
104
63
127
76
72
101
155
77
112
80
80
128
52
113
104
131
128
80
94
114
91
164
120
99
109
78
76
175
98
124
87
88
89
94
89
78
78
69
80
87
119
76
99
80
126
104
78
138
134
157
109
99
147
197
117
127
80
98
99
106
119
98
83
69
128
107
129
43
103
87
157
79
138
87
104
95
87
102
80
107
87
128
140
126
104
78
113
78
76
75
89
118
98
151
43
112
87
93
134
102
80
121
104
106
140
80
119
76
93
197
76
120
76
149
56
106
80
128
93
124
83
69
104
99
159
96
164
101
88
78
80
103
125
107
175
89
113
150
172
92
88
118
119
112
109
109
154
106
110
119
93
99
76
164
131
91
72
117
145
175
91
137
119
72
120
87
52
104
119
134
141
112
96
113
76
138
131
99
142
88
78
120
108
69
133
130
83
196
100
128
115
99
94
118
66
87
189
118
154
156
104
110
94
87
89
80
128
137
69
123
89
122
104
120
139
78
93
80
69
103
80
117
121
80
132
137
69
80
99
101
107
131
124
76
125
76
43
76
76
96
69
89
181
128
110
76
109
117
80
69
80
108
88
119
80
119
80
129
129
87
80
100
88
88
89
54
57
98
67
90
131
107
89
69
160
128
109
144
56
128
69
109
175
107
114
78
149
52
99
140
78
96
103
119
138
69
102
69
128
69
80
76
101
154
120
69
78
141
81
155
119
87
76
131
102
69
69
145
80
115
131
76
107
124
107
137
120
69
83
120
169
148
142
134
119
104
80
110
69
119
94
102
74
131
96
134
151
154
107
80
134
103
80
104
140
144
160
121
73
145
91
74
114
69
69
82
128
128
80
130
119
94
121
83
69
80
76
175
140
80
160
98
89
124
126
80
90
137
94
120
109
122
119
115
154
134
175
74
116
99
88
140
80
107
80
136
121
69
109
76
69
137
121
149
81
99
69
69
106
69
69
80
69
94
85
69
136
132
87
133
74
94
89
131
128
79
150
99
93
175
78
155
109
100
80
78
87
137
163
127
117
164
126
209
95
102
82
89
80
80
160
78
136
43
109
126
121
133
94
166
87
111
165
76
99
69
137
78
123
78
110
69
80
80
100
124
78
101
120
89
80
80
113
109
80
140
96
89
137
119
110
111
87
90
80
90
96
137
109
143
73
98
106
80
101
142
136
112
111
121
113
69
89
120
117
109
121
175
99
175
95
80
89
69
148
89
102
145
112
69
111
128
56
93
114
155
107
146
78
54
73
93
112
107
99
143
138
131
103
98
157
69
117
88
43
54
72
99
128
99
80
88
159
106
72
104
76
124
97
78
80
127
154
140
69
107
154
117
157
76
120
100
109
72
98
76
89
117
134
96
76
80
121
91
140
69
87
76
89
100
172
175
121
104
112
94
80
69
131
69
119
67
93
133
88
123
99
128
80
107
128
107
107
133
52
76
116
110
89
139
91
69
101
117
107
93
94
147
69
128
69
109
112
136
102
83
91
141
69
80
69
69
77
80
154
106
78
109
76
104
72
119
156
80
131
93
175
110
143
107
93
128
85
67
69
76
98
107
88
128
122
64
80
175
134
69
158
64
110
119
80
96
148
87
43
112
99
89
104
102
151
89
89
69
164
109
175
102
94
169
93
154
80
112
113
127
133
152
118
110
107
134
112
69
83
102
133
95
131
114
129
151
126
80
80
104
67
72
80
72
119
96
66
113
88
80
119
121
145
115
99
119
101
85
156
117
100
87
87
80
129
80
163
154
110
131
102
123
120
128
79
80
89
139
154
120
106
96
175
125
131
91
117
88
115
93
119
118
109
197
106
94
112
148
126
138
66
94
76
69
63
60
163
143
93
119
80
94
72
80
80
88
197
100
99
107
90
197
94
80
102
80
107
128
95
94
107
156
100
119
111
113
127
120
111
91
76
113
87
89
128
89
78
94
128
83
119
137
80
80
101
89
119
109
99
122
69
72
118
112
69
109
93
76
134
87
80
92
119
121
93
88
117
104
128
113
80
131
140
104
104
69
130
148
112
109
101
89
143
85
76
139
118
110
107
122
79
175
148
87
164
88
113
78
87
97
109
128
78
146
71
80
109
174
84
101
80
69
104
69
98
175
69
103
140
164
128
118
96
52
133
80
119
52
174
112
75
116
80
104
132
99
99
103
83
76
99
76
120
96
87
149
129
96
106
80
63
68
143
104
102
109
145
119
107
175
80
80
101
134
151
95
119
138
89
128
80
80
80
80
72
87
119
109
80
110
69
99
145
107
99
129
87
80
104
154
174
120
140
72
88
154
122
129
134
99
120
140
120
78
80
96
82
69
136
80
119
86
111
80
113
102
155
78
156
110
134
72
72
74
131
78
92
109
130
115
156
175
146
110
126
175
165
93
130
80
74
93
128
107
80
127
80
76
117
126
96
208
163
92
99
99
138
140
99
123
88
131
119
69
88
69
87
67
157
80
119
140
52
123
100
164
96
100
111
143
81
139
93
76
69
113
80
87
96
69
117
120
102
69
109
87
118
93
80
95
128
99
87
69
91
69
136
69
78
115
102
69
128
101
107
113
81
93
119
99
69
72
131
78
52
78
119
69
102
78
90
113
96
119
80
110
108
128
99
69
87
111
54
103
52
93
69
127
87
131
156
93
87
110
91
112
140
154
117
72
175
147
124
87
87
175
146
87
148
107
97
76
109
123
137
78
69
136
88
128
67
52
100
101
94
71
78
69
142
121
138
89
87
146
121
163
116
69
80
80
93
69
151
69
144
67
92
78
87
69
110
88
69
131
113
106
97
120
197
75
76
121
95
112
80
79
80
69
127
80
127
88
99
107
78
76
185
78
92
109
99
82
43
128
113
80
105
76
95
102
164
173
94
90
131
164
128
87
80
121
121
89
149
104
163
129
137
80
94
99
103
110
109
93
131
104
88
62
120
98
119
76
201
87
119
101
108
134
80
99
159
109
107
154
94
110
69
113
120
105
99
103
80
120
120
87
78
120
110
117
106
88
107
113
104
80
136
99
80
154
88
43
95
91
151
131
76
122
110
145
101
76
80
103
109
80
109
120
69
128
130
88
128
76
137
104
175
123
78
69
90
107
97
99
88
91
108
78
87
117
119
87
152
80
156
109
88
159
147
129
128
82
120
80
98
110
99
94
194
120
110
112
140
106
129
87
131
80
109
156
94
69
114
156
122
109
163
99
80
80
78
183
152
105
75
119
118
114
131
117
80
67
120
112
78
103
112
89
52
137
145
129
90
100
123
103
134
80
89
80
96
140
80
119
119
84
175
131
129
146
136
85
107
131
78
94
89
76
107
69
117
181
74
113
103
133
58
78
80
148
96
137
119
127
67
149
69
96
133
103
78
99
119
74
140
87
154
136
76
117
100
133
117
175
113
88
121
118
111
121
54
127
128
104
52
76
99
111
120
119
89
89
136
95
132
127
95
109
80
106
76
143
148
143
110
113
87
134
119
199
99
113
88
99
114
69
69
122
136
94
74
109
146
126
119
76
101
69
74
136
69
127
114
102
80
118
123
80
117
80
87
99
106
119
96
88
128
146
174
111
128
114
85
89
96
99
78
104
109
131
94
103
114
114
58
104
91
93
69
99
99
118
119
89
80
154
94
78
120
106
109
154
104
81
80
128
82
134
101
99
80
134
156
175
93
80
131
124
119
123
197
94
129
119
121
156
88
151
88
120
80
155
87
132
163
118
69
78
117
125
120
146
151
87
128
175
93
109
121
113
117
80
76
159
69
118
94
80
109
118
128
149
69
120
119
94
80
101
96
154
120
99
101
54
72
115
120
195
104
75
121
80
119
117
76
113
89
69
103
121
78
52
69
87
136
125
131
108
112
128
81
127
155
78
96
113
74
66
87
92
107
87
96
80
80
54
87
119
136
104
175
90
166
156
99
87
94
69
113
141
110
107
154
117
121
80
69
80
130
113
142
104
109
109
94
106
80
145
113
54
80
69
137
106
105
52
128
175
110
113
175
119
109
121
89
89
165
89
118
87
78
153
105
119
131
140
164
93
122
93
127
136
98
95
163
87
87
80
140
80
164
128
78
133
74
80
152
131
128
100
131
155
98
156
76
69
175
112
121
147
87
183
82
85
93
87
137
175
94
93
80
88
69
121
128
115
68
147
98
87
113
131
99
58
138
69
106
78
126
107
80
104
175
138
88
131
99
151
136
88
109
63
112
118
125
100
80
151
80
120
99
120
69
111
132
105
101
137
152
94
128
95
174
152
87
175
104
107
76
80
91
114
92
120
83
197
136
87
76
93
175
107
64
90
122
136
176
109
104
92
98
119
56
78
69
119
106
157
109
93
82
79
92
80
88
119
136
88
115
80
87
137
122
117
102
112
110
87
72
80
132
140
94
151
104
85
131
69
69
137
114
87
80
106
102
102
110
113
100
89
153
106
155
104
137
96
85
93
124
121
76
120
117
130
175
109
106
85
111
164
93
134
89
167
96
69
80
157
91
69
110
148
99
137
69
112
101
104
136
87
100
94
129
80
87
155
96
134
69
110
120
107
80
142
78
103
119
80
72
78
169
136
143
87
69
69
120
80
102
94
104
80
197
134
80
69
151
75
105
83
80
175
112
123
108
162
115
148
107
106
96
117
69
80
89
130
93
107
69
166
175
119
102
122
80
107
80
115
76
140
107
154
80
119
137
201
162
110
126
119
78
80
99
69
69
120
146
96
76
76
151
99
76
151
52
80
96
142
80
56
119
112
187
154
58
123
76
140
107
76
199
80
109
124
126
86
96
109
99
125
131
118
113
128
140
119
80
80
134
69
80
140
104
197
107
80
80
113
197
130
94
163
136
136
87
99
164
118
123
205
69
72
78
109
131
80
74
126
128
134
54
102
67
96
69
80
132
74
94
110
119
142
69
87
104
76
94
100
87
43
106
80
128
145
80
80
157
80
197
54
80
87
80
140
143
115
69
113
138
87
91
109
69
140
109
174
154
80
94
120
107
146
69
93
114
109
150
120
98
69
88
80
69
151
197
104
136
107
118
136
155
88
78
69
104
136
102
148
96
119
154
99
102
107
104
147
110
78
52
156
126
104
76
98
125
130
175
115
106
154
113
163
83
66
128
92
127
101
88
120
74
88
88
69
163
131
159
151
131
80
154
93
99
106
80
146
128
150
54
78
121
106
107
80
104
101
80
90
175
115
89
80
64
76
79
78
107
76
98
163
117
128
120
69
103
154
165
69
110
127
78
78
128
120
102
85
120
85
109
78
99
80
99
151
94
102
84
109
107
199
113
109
106
76
85
76
95
87
117
106
69
106
128
107
90
69
111
75
76
104
63
74
120
145
80
81
138
107
69
120
146
126
151
209
164
80
80
78
94
141
140
93
156
72
120
58
115
107
124
107
117
78
106
79
192
87
69
80
91
119
113
155
78
138
94
181
120
69
87
110
87
134
88
88
110
80
94
54
117
99
74
109
80
87
89
72
69
80
105
80
120
169
87
96
128
80
120
120
93
102
99
79
69
205
87
110
134
87
87
59
80
156
197
127
144
80
83
174
63
131
131
80
128
73
122
115
119
143
102
106
171
104
96
74
121
107
103
72
164
112
102
115
114
137
69
111
128
152
164
80
101
72
175
96
136
104
78
120
146
123
99
110
121
175
113
110
197
89
120
99
75
121
87
106
88
128
91
137
120
131
115
156
64
149
132
152
112
113
93
80
88
76
118
120
112
133
103
154
128
76
150
85
122
123
72
143
174
149
109
101
69
112
91
80
119
76
119
102
87
140
93
70
99
85
69
87
112
69
117
109
112
72
119
197
119
88
146
148
78
78
96
80
80
120
110
52
69
76
104
113
69
129
157
162
151
109
131
203
88
68
93
87
131
69
154
163
109
86
119
91
80
107
134
107
88
99
89
52
69
76
78
139
85
78
120
94
99
99
115
199
81
88
80
107
76
119
87
80
89
102
76
85
90
88
197
144
72
100
140
160
123
90
102
163
69
98
104
105
113
43
76
143
89
121
119
92
104
101
76
129
74
69
164
80
75
88
131
72
69
79
146
95
80
175
118
135
88
131
56
54
110
95
80
116
116
87
69
127
156
69
88
87
131
64
64
80
94
130
80
85
145
88
83
89
157
121
102
175
115
208
129
103
80
131
88
79
99
128
119
119
120
89
119
124
131
80
76
88
78
104
122
127
69
98
72
72
110
69
128
157
96
136
78
154
121
94
151
109
80
157
148
79
145
136
76
128
113
113
89
80
104
76
64
146
110
109
134
109
107
94
110
175
89
148
80
121
67
125
126
80
156
164
69
90
80
80
154
156
69
144
201
105
152
110
160
120
144
78
74
87
112
131
69
146
134
91
111
128
147
69
80
136
127
120
174
108
106
125
140
110
118
104
175
93
80
76
113
104
154
119
156
104
99
175
109
87
76
115
117
134
139
115
95
89
175
124
88
80
119
118
130
164
119
115
110
88
91
94
87
80
126
151
69
112
52
160
76
104
104
94
121
115
112
101
128
69
93
137
137
121
99
155
110
175
110
80
119
69
128
104
78
69
80
119
94
107
96
104
87
110
175
89
103
88
175
87
93
80
137
87
156
132
128
127
89
93
157
117
137
124
74
162
110
128
120
156
87
76
69
124
80
121
83
74
118
113
137
78
163
89
80
80
112
126
96
156
133
103
128
117
91
87
119
119
94
71
115
80
101
132
88
116
80
140
117
89
183
87
162
64
69
107
106
109
136
156
134
76
120
94
128
87
87
87
104
80
91
118
76
80
94
107
83
99
127
112
115
127
80
121
139
121
87
139
151
88
54
68
109
96
100
69
106
137
154
74
119
69
130
87
56
93
87
76
117
76
69
78
109
131
76
132
117
117
76
110
109
112
154
76
126
146
140
89
91
120
66
101
69
120
91
69
56
119
74
93
128
78
94
118
169
88
96
128
110
128
83
78
89
101
85
69
86
155
114
56
137
117
137
119
154
104
108
128
113
131
78
107
96
80
89
107
92
110
119
175
120
120
155
95
106
78
104
141
80
117
108
114
113
69
148
137
154
78
120
76
69
136
109
130
110
115
165
80
106
159
119
112
114
87
69
106
69
138
91
124
99
134
66
89
124
76
120
99
69
80
69
106
78
88
76
74
118
76
156
85
101
104
83
106
113
134
131
113
80
85
175
98
163
128
175
99
111
69
119
117
104
103
80
87
147
76
120
78
109
69
123
175
87
112
93
151
107
112
155
80
94
94
76
95
76
80
134
120
75
107
151
116
165
88
87
76
134
136
85
101
157
94
154
117
134
99
91
129
105
112
92
69
104
134
148
110
120
75
72
91
80
74
96
173
103
76
69
127
151
85
113
125
72
87
72
175
107
79
92
89
106
96
136
76
69
94
143
80
145
85
94
87
76
155
145
130
78
69
69
72
83
105
87
136
117
123
126
104
171
91
64
86
85
110
78
86
119
56
89
80
72
73
93
76
154
43
58
99
87
143
109
110
99
67
142
81
69
80
140
134
87
115
131
110
121
131
93
175
76
109
99
99
88
154
154
119
126
121
125
100
110
107
93
121
90
80
93
85
89
88
123
126
69
72
110
109
78
169
140
154
107
112
102
76
80
69
80
88
76
89
151
145
128
56
138
76
155
80
78
80
128
60
114
88
76
121
136
133
131
87
90
129
118
128
109
76
106
113
83
107
156
80
140
146
76
88
110
131
93
117
175
52
69
119
104
197
76
118
87
80
140
107
154
80
134
83
94
99
147
117
69
69
152
80
158
139
87
113
91
113
69
127
78
120
119
128
110
107
100
109
119
99
96
134
113
156
119
89
154
195
143
94
183
64
112
133
103
129
69
119
76
107
138
95
107
88
133
119
94
132
120
106
110
152
138
43
159
76
80
103
107
78
124
87
54
126
130
112
119
197
76
126
100
131
104
87
111
104
87
87
88
84
134
175
175
78
131
107
80
93
107
148
89
120
96
99
109
69
109
120
128
78
80
78
118
76
80
69
87
60
85
146
78
87
82
110
85
87
92
132
128
119
93
80
87
121
115
83
123
96
109
137
80
93
154
67
69
94
109
80
115
133
119
120
78
107
113
76
82
91
175
114
137
76
109
130
99
78
165
128
128
114
101
80
119
171
76
99
127
104
118
88
99
143
60
111
117
94
128
99
124
94
152
76
80
92
114
154
197
76
78
104
129
67
166
134
81
130
175
76
88
154
99
134
139
75
152
87
62
83
78
76
87
112
96
91
152
102
69
99
80
80
100
80
113
69
59
143
118
99
111
132
142
131
52
130
197
78
80
57
69
88
136
151
76
83
131
98
107
137
63
80
129
145
142
93
139
80
109
78
140
136
76
129
78
72
118
87
93
102
76
69
146
106
136
89
134
113
117
112
89
109
87
117
67
76
83
169
122
74
128
127
174
87
94
91
76
154
164
99
115
80
138
148
78
69
128
113
80
128
120
120
69
123
110
69
80
111
111
72
100
104
109
112
69
107
101
175
99
109
113
99
80
136
89
109
88
87
99
98
132
69
162
93
107
126
106
107
112
106
143
113
110
94
117
87
138
155
99
143
120
128
131
128
101
130
155
69
91
185
106
91
120
74
88
87
175
94
109
128
69
117
127
137
89
183
76
87
197
78
103
121
78
93
87
127
87
110
131
154
110
86
76
109
101
140
115
119
96
118
80
110
90
119
128
85
99
87
144
78
142
131
71
134
110
164
99
153
155
91
80
87
117
120
109
80
132
80
91
110
177
128
119
110
99
114
104
69
132
117
69
119
136
96
118
69
131
87
121
78
69
119
114
128
155
87
127
154
109
123
137
80
80
104
117
145
131
69
90
119
183
69
80
80
175
69
106
118
120
136
99
115
88
169
155
80
115
152
87
109
128
110
131
88
80
91
94
91
107
140
91
80
112
174
69
124
106
145
80
120
74
121
52
76
80
79
101
72
87
122
115
157
87
107
71
154
123
103
78
101
96
94
107
145
69
88
64
83
121
163
121
80
85
156
129
121
91
80
78
120
69
119
141
129
175
107
88
96
113
83
69
114
89
78
94
129
101
121
99
80
78
69
114
99
106
107
136
87
84
95
80
128
80
76
87
99
113
127
144
160
183
134
140
99
138
94
134
109
120
155
106
74
101
107
69
128
80
72
120
92
99
103
101
118
137
134
109
104
78
89
88
90
69
99
151
78
102
197
60
128
76
56
80
78
175
78
125
123
87
107
89
138
104
119
95
80
131
103
87
99
154
142
157
86
76
80
106
197
93
78
134
136
78
94
87
183
109
123
127
126
146
122
110
104
69
76
72
115
92
107
128
69
107
107
76
133
78
80
87
138
110
100
154
88
154
156
76
80
66
109
128
154
140
104
110
122
78
102
102
110
129
112
113
87
140
119
121
88
122
140
80
87
82
126
151
67
132
104
88
56
109
94
107
56
127
113
152
52
129
109
114
155
96
112
88
69
89
104
117
136
101
87
88
56
197
93
43
80
78
145
118
80
87
78
110
140
121
80
87
93
102
69
56
163
87
118
137
123
136
76
72
145
107
104
78
76
91
101
163
99
107
78
72
113
87
156
131
91
85
80
175
132
78
175
87
113
87
60
80
88
91
121
106
80
80
80
91
130
78
106
103
89
119
87
164
109
93
96
103
109
118
175
79
146
107
76
155
121
101
98
89
155
128
80
80
100
151
52
106
74
90
78
85
80
90
142
101
69
87
100
109
97
89
117
101
107
93
95
87
156
80
154
80
114
107
76
119
112
113
149
131
69
107
142
69
115
113
74
80
100
72
99
129
91
110
91
80
104
87
80
117
96
122
69
110
80
117
63
145
80
69
129
69
87
104
145
134
201
75
150
88
94
80
91
133
80
78
91
129
88
93
107
117
76
96
78
87
121
110
197
87
110
175
104
119
94
131
76
175
102
80
117
113
175
134
137
89
104
176
118
121
122
155
155
80
111
56
145
78
94
90
109
74
126
69
110
128
155
104
76
115
69
103
162
197
106
76
110
101
89
146
129
120
157
66
87
125
94
127
103
147
91
109
74
78
119
102
83
155
95
89
90
87
80
175
107
88
123
119
122
154
134
87
76
96
119
136
132
155
119
85
128
149
88
197
101
78
112
80
87
78
119
166
145
80
136
146
113
150
107
159
94
120
99
62
124
155
120
97
119
131
82
145
69
139
106
156
106
69
94
128
175
52
94
78
128
199
98
87
119
110
174
151
79
151
110
87
94
175
145
127
69
74
100
114
174
96
80
80
109
111
80
102
76
169
76
99
101
102
69
99
72
136
128
90
154
93
94
127
121
131
120
123
107
78
93
102
145
128
78
128
124
69
98
164
67
117
78
80
94
87
94
88
87
112
126
130
134
121
197
103
119
112
80
85
67
109
148
154
69
78
122
107
87
69
95
80
96
119
78
154
148
99
89
131
160
131
90
123
89
129
95
79
144
109
131
113
78
80
109
91
119
122
78
83
80
69
104
111
101
116
81
138
94
101
87
87
80
87
118
80
107
89
132
95
181
146
117
89
163
110
116
146
89
76
126
93
131
74
80
89
78
119
71
59
85
78
154
75
67
197
80
76
175
79
80
168
111
133
113
137
160
72
99
104
113
109
154
128
88
154
74
121
76
80
132
135
78
121
99
106
109
197
154
118
120
110
76
131
137
106
103
143
99
146
136
72
89
120
175
117
93
117
104
88
94
69
118
78
112
58
137
175
80
109
76
104
109
103
80
80
89
91
112
106
107
94
120
80
131
123
102
130
130
120
120
80
83
89
107
136
117
116
89
107
95
87
197
96
110
164
69
83
164
154
80
82
81
120
119
91
96
52
69
120
78
144
106
99
130
99
151
131
144
76
78
197
107
113
131
80
152
69
76
119
93
155
109
98
102
107
116
98
141
126
128
112
104
87
114
80
89
150
119
80
87
80
89
104
134
149
88
69
99
146
72
90
69
109
149
140
136
76
80
76
76
76
87
201
156
87
73
56
119
118
69
164
87
120
118
146
88
87
94
109
183
89
140
187
119
94
80
80
117
146
197
69
79
101
69
72
107
136
76
69
130
72
144
80
106
146
80
69
122
87
89
121
88
197
85
106
113
90
119
95
104
106
88
69
154
76
109
128
69
80
76
124
81
62
87
74
87
83
80
76
120
131
102
87
80
100
80
69
107
72
95
92
119
102
99
69
140
109
54
146
107
102
68
149
80
87
69
136
110
156
129
80
154
113
89
128
90
121
89
103
126
164
126
100
116
99
80
76
112
101
69
88
113
101
108
69
142
104
101
164
88
99
74
69
58
101
77
54
72
76
80
131
151
80
72
107
120
138
80
85
102
143
52
109
149
119
175
120
120
120
69
175
78
94
120
80
74
122
128
79
80
100
72
121
99
142
107
154
144
72
99
128
187
90
117
197
92
87
154
120
71
80
106
119
76
76
109
109
80
126
52
154
92
76
87
128
120
91
100
118
154
69
76
87
107
154
103
115
88
117
96
78
88
80
99
122
78
134
109
76
87
102
175
78
69
80
151
156
93
69
91
94
110
111
71
80
111
78
80
91
89
80
94
110
152
153
121
109
71
123
134
102
98
110
83
118
185
72
80
80
121
119
143
147
110
107
87
111
128
69
110
80
121
93
151
104
89
69
69
54
108
109
96
136
185
108
138
69
110
131
145
78
80
124
80
80
97
115
79
115
78
56
80
78
156
117
94
164
128
119
120
91
144
119
94
121
98
109
80
94
78
96
76
101
136
183
76
121
127
137
156
101
76
112
76
135
99
111
115
89
126
140
93
101
126
69
80
107
160
103
117
94
86
126
80
118
72
87
149
110
121
119
68
127
156
107
124
122
110
109
95
121
146
107
106
87
80
163
120
93
119
140
87
175
110
163
128
120
99
56
160
96
122
99
134
161
93
136
162
102
80
98
134
128
78
102
121
80
149
169
157
80
101
80
99
107
107
163
80
119
175
88
137
56
138
128
148
76
140
128
72
69
119
69
69
75
78
112
113
125
80
74
144
107
108
107
75
111
112
131
91
89
96
69
78
127
89
136
87
69
132
199
113
145
96
136
128
119
122
91
134
79
89
119
74
80
103
154
74
69
155
156
128
111
124
80
76
112
112
67
131
109
106
80
120
78
80
123
80
91
69
91
89
76
120
80
76
76
120
144
91
113
115
99
78
80
175
136
76
163
89
118
91
91
112
69
76
93
128
89
134
142
87
87
175
92
156
103
121
99
80
137
106
80
185
78
80
80
116
78
54
69
136
80
175
121
69
148
124
119
166
76
88
115
78
80
119
119
87
83
140
131
87
118
197
71
94
99
80
128
80
69
80
118
90
83
69
80
89
70
136
122
102
74
82
129
89
69
92
76
151
127
87
80
90
119
87
134
101
87
102
113
80
80
89
74
119
113
138
110
104
117
116
128
95
129
128
107
185
189
96
117
87
94
117
164
82
66
134
87
89
67
156
91
99
111
110
104
175
118
163
101
93
139
126
119
147
154
163
69
118
110
91
87
88
76
104
80
136
129
132
80
56
112
96
156
158
87
76
52
122
117
54
102
96
113
106
113
80
131
137
107
143
80
69
107
69
76
69
142
99
104
80
76
109
119
101
106
126
101
121
119
58
113
132
109
80
63
101
80
119
119
128
107
88
76
143
118
106
106
76
78
78
155
69
69
140
99
160
136
89
69
185
80
119
129
155
87
43
114
57
120
154
80
89
104
156
148
78
120
117
121
111
131
80
132
146
69
123
78
96
89
134
118
88
96
151
72
80
111
122
80
104
145
80
92
126
136
80
89
98
126
91
119
154
114
138
113
92
69
78
169
140
90
91
128
104
87
108
52
133
69
175
144
120
93
121
87
89
121
120
87
117
69
137
183
118
87
69
113
119
155
137
80
75
93
110
80
154
94
137
154
87
140
119
197
87
76
87
76
151
117
69
80
144
80
99
142
80
133
80
147
84
89
119
164
150
154
128
93
90
125
72
88
135
79
99
78
119
128
67
120
89
143
88
80
124
108
67
78
107
95
152
59
80
127
120
147
107
102
151
106
78
108
80
102
88
124
94
118
99
119
94
201
80
95
103
140
94
80
136
72
131
85
112
69
121
199
102
104
154
142
109
124
142
106
80
69
69
69
154
155
80
134
52
69
67
111
127
78
88
147
84
91
99
148
197
87
126
69
134
120
80
98
96
152
72
128
98
148
129
142
149
103
147
78
78
174
102
96
120
87
88
111
69
151
127
83
88
72
87
112
69
177
74
119
154
76
139
100
72
131
56
69
134
126
118
100
75
119
107
114
87
92
142
110
107
72
69
117
119
94
80
155
121
163
110
110
76
64
87
115
107
155
69
104
79
123
88
69
88
76
106
80
80
80
132
119
199
71
153
107
66
95
120
104
136
89
101
130
97
112
104
131
136
93
80
175
110
94
76
95
110
69
128
174
69
142
90
129
94
69
104
109
69
78
106
69
120
118
145
102
129
93
80
110
150
99
111
80
117
80
140
134
80
106
87
87
119
93
94
121
134
140
69
80
117
80
99
89
83
78
77
96
91
109
151
121
103
89
138
175
110
87
101
89
99
69
104
154
107
120
69
117
169
94
71
129
84
104
74
107
87
78
78
131
87
87
176
110
137
115
111
80
117
151
87
106
155
99
80
76
109
121
76
155
88
147
87
104
89
112
69
113
99
107
76
102
87
154
106
76
122
105
138
116
131
94
120
90
155
80
133
133
78
121
85
175
121
100
69
131
88
144
80
143
69
185
69
88
106
136
110
109
107
104
154
111
99
85
130
108
69
80
78
99
89
154
153
88
109
74
99
106
99
101
87
87
162
163
117
78
78
110
94
93
76
119
154
103
78
175
88
181
101
102
123
69
130
87
127
78
87
120
78
75
115
69
114
99
175
119
69
78
148
107
138
126
92
140
96
69
80
91
121
136
175
87
89
108
123
99
80
104
109
107
146
119
99
112
78
106
69
117
80
99
107
69
94
96
54
52
66
80
80
78
120
69
99
118
104
157
69
156
197
95
146
136
87
134
135
85
148
91
76
140
69
134
107
121
52
175
94
148
129
69
105
140
128
109
127
94
78
107
69
94
78
85
96
110
131
89
111
78
199
110
120
106
99
100
69
154
106
138
72
69
93
91
109
131
152
109
130
134
89
94
175
98
98
85
117
100
164
112
80
80
110
175
130
76
80
80
87
88
60
107
111
76
117
127
109
72
106
110
120
111
72
107
128
94
155
76
175
124
117
134
101
76
94
69
69
87
96
120
90
89
99
145
69
134
140
92
78
117
122
93
78
120
121
146
159
94
80
85
175
76
121
118
120
88
121
110
127
154
102
69
76
93
88
80
87
96
69
78
113
80
124
91
91
102
114
90
80
117
76
134
132
69
87
155
154
109
113
56
120
78
69
131
171
59
69
75
80
119
87
72
88
76
103
100
119
71
107
99
118
114
93
76
128
129
99
89
89
137
88
162
119
69
76
130
82
109
76
123
56
119
76
110
125
156
83
84
76
92
87
87
154
131
76
94
95
102
80
101
97
128
138
119
134
144
164
110
87
69
80
69
113
93
103
95
83
138
80
76
87
115
106
78
94
102
99
80
132
103
99
76
119
150
113
118
115
137
78
69
80
80
118
69
152
108
155
104
102
98
128
160
115
114
76
78
101
106
85
151
88
83
154
87
127
80
113
109
81
112
101
128
91
111
156
69
69
97
80
94
175
69
80
113
56
99
69
69
72
69
88
98
121
76
155
98
118
121
127
86
143
144
76
87
73
115
104
72
126
94
99
118
89
111
109
80
80
99
119
107
120
111
80
69
114
80
117
155
69
93
95
87
76
113
98
87
69
175
123
93
123
126
88
119
56
113
80
80
113
110
140
106
87
110
147
87
119
102
76
100
66
156
76
126
120
140
140
104
113
136
94
135
112
151
154
72
146
99
107
139
107
194
78
131
142
148
134
66
112
74
77
102
87
128
197
82
130
152
133
85
76
90
94
87
76
107
80
88
145
99
101
93
54
113
79
140
116
98
107
69
72
100
162
129
97
136
151
90
89
89
175
59
87
136
87
139
99
150
128
113
69
113
96
76
111
94
175
123
80
120
139
69
78
80
76
67
122
113
95
80
87
118
122
78
112
104
113
110
110
145
100
134
129
113
156
113
89
94
127
96
69
128
140
104
111
90
137
74
140
80
175
120
121
112
98
110
110
80
138
78
87
120
87
85
54
108
134
113
138
76
113
107
114
106
115
80
111
123
87
107
91
107
119
130
123
120
126
120
69
111
80
119
108
120
80
85
95
74
87
52
76
80
101
107
88
163
69
88
119
113
69
75
80
80
107
80
72
143
120
110
57
80
156
74
127
96
58
151
80
128
79
80
78
104
118
89
117
136
80
80
109
56
80
112
113
72
144
121
197
104
96
99
119
80
102
130
124
113
135
85
121
69
104
134
127
149
80
104
76
56
110
102
88
127
101
156
144
118
90
156
151
58
80
91
130
106
123
136
154
156
119
126
118
156
76
80
88
69
132
132
104
136
117
87
142
95
92
112
147
125
77
140
101
90
151
111
151
137
111
133
117
103
131
80
72
88
134
89
130
107
69
156
78
87
69
109
153
80
76
99
119
87
78
67
176
96
109
140
99
126
129
80
78
96
110
72
78
138
134
99
80
121
152
114
107
175
109
66
95
87
120
121
69
114
80
99
160
104
132
127
133
97
103
72
80
68
122
112
172
114
109
137
134
76
112
106
169
156
87
106
85
98
80
120
92
106
148
175
175
85
126
100
110
109
151
157
69
94
156
104
92
169
99
106
122
111
136
154
87
76
91
87
96
154
131
101
78
97
87
110
68
136
141
87
96
140
111
94
96
150
89
128
120
72
80
164
88
87
91
82
69
117
129
162
88
114
85
153
76
120
120
72
80
104
87
83
97
96
59
83
54
155
68
123
174
134
96
149
169
69
141
94
87
152
99
80
78
78
83
80
75
78
197
54
110
109
87
115
72
87
117
76
144
69
117
109
78
94
123
80
80
91
110
128
123
94
98
164
80
102
94
131
120
138
107
69
88
137
82
120
127
134
82
89
90
69
78
175
126
109
83
76
156
80
96
78
156
88
88
113
80
80
80
166
147
107
127
91
80
87
43
131
78
80
107
117
107
122
80
175
120
121
142
72
156
111
43
96
136
119
99
99
80
80
78
87
175
96
120
80
69
98
127
118
94
80
87
92
118
91
69
106
120
134
88
110
136
110
106
100
110
69
110
87
123
88
123
69
88
98
119
79
80
107
111
175
199
91
156
69
102
114
157
118
120
104
80
130
87
175
144
129
107
89
89
120
128
130
130
80
87
69
72
128
118
108
148
93
69
110
78
155
69
145
91
175
121
102
154
87
113
94
174
175
120
87
120
119
105
80
153
109
88
69
128
99
87
80
126
185
152
66
144
119
80
156
93
112
93
101
128
105
98
80
69
78
108
109
155
103
120
88
95
113
75
144
80
87
69
175
137
164
131
117
143
175
69
127
87
80
76
104
107
69
54
107
156
101
133
69
75
113
119
119
136
111
104
122
150
78
80
197
107
109
194
88
119
80
183
107
130
89
80
109
63
132
115
159
87
90
144
134
133
96
175
69
80
99
136
95
114
69
113
131
76
139
121
89
107
196
108
106
109
78
129
89
69
119
107
131
106
88
175
110
87
110
78
85
197
106
128
104
126
103
119
80
87
89
125
99
140
109
79
120
87
80
154
80
127
72
74
87
69
94
104
119
151
107
91
120
80
80
101
175
107
105
78
93
91
87
119
120
119
83
97
80
113
149
128
140
127
96
111
147
118
132
89
71
80
121
78
99
76
95
163
128
76
80
114
112
147
87
82
95
127
76
89
137
120
183
96
123
131
153
119
131
76
158
80
151
113
80
131
128
119
134
197
130
72
99
80
163
78
120
80
76
183
131
98
87
119
89
76
123
144
120
107
78
119
87
68
145
74
131
175
118
87
80
114
71
119
120
112
121
78
134
103
80
83
134
109
92
113
113
69
115
138
147
145
72
106
117
151
111
78
76
91
128
121
76
122
109
144
103
109
87
112
67
128
122
110
93
106
78
99
134
79
143
74
101
101
101
166
119
163
197
104
136
113
121
69
69
120
120
140
107
76
80
74
159
76
163
76
106
156
98
71
117
96
175
109
99
124
121
104
69
113
82
119
87
123
78
93
89
116
102
80
102
80
80
89
111
89
128
127
78
148
175
81
80
129
109
69
93
172
137
131
117
151
120
122
134
120
112
79
91
134
94
94
175
117
128
117
84
88
80
78
80
133
110
89
131
120
140
128
121
197
161
120
134
111
121
76
94
88
113
78
80
121
201
72
126
128
143
76
54
80
93
143
94
67
74
78
137
122
76
131
76
124
101
104
138
136
120
103
106
108
104
109
87
120
91
156
80
80
127
109
85
118
103
80
92
93
80
136
126
78
78
78
106
94
80
106
123
134
98
138
126
99
94
118
124
80
112
76
120
119
120
91
112
67
114
148
120
87
131
129
56
87
69
91
82
151
119
80
146
98
90
109
99
89
94
78
136
83
128
116
146
155
69
131
107
106
85
114
80
131
113
140
80
78
82
120
149
140
112
121
140
88
175
72
87
129
87
80
78
75
69
76
88
120
154
80
89
128
80
96
80
102
197
118
95
76
153
102
119
69
160
94
120
181
112
150
80
94
122
106
143
87
119
80
106
88
87
128
80
145
103
89
89
183
140
125
175
127
134
78
150
78
145
124
117
197
87
96
106
119
146
69
102
102
109
134
119
89
81
110
111
113
143
69
115
113
175
74
104
103
121
160
107
118
87
128
119
116
102
151
69
140
88
89
106
122
94
78
101
94
89
99
80
197
112
118
132
99
72
87
94
140
119
154
80
174
102
69
93
98
87
99
78
128
64
76
72
126
87
128
122
126
128
134
74
78
87
152
80
80
103
110
122
109
155
111
54
109
94
88
99
72
134
124
80
88
80
127
87
119
112
166
79
117
69
121
104
88
78
66
122
73
140
78
69
88
152
77
175
79
156
69
115
156
102
107
156
197
95
69
87
76
76
56
136
87
80
144
119
112
74
128
132
145
115
112
76
134
137
125
119
76
133
80
137
89
100
111
151
76
92
163
85
109
94
111
89
138
125
91
79
87
112
77
69
80
78
80
79
130
80
137
111
54
101
116
117
84
118
88
80
137
132
99
175
80
106
95
78
69
143
113
99
138
80
132
129
112
102
148
119
87
117
98
69
109
66
75
95
78
136
154
95
99
80
72
120
76
87
89
129
98
80
69
87
112
76
131
157
99
87
117
102
52
151
56
119
94
80
102
104
69
137
109
76
78
69
85
80
99
137
81
104
99
95
99
121
80
92
162
136
80
131
59
93
151
124
89
87
94
156
157
128
102
80
117
112
146
76
154
113
156
110
107
124
96
175
115
121
80
96
87
103
76
88
76
110
119
89
163
99
72
136
80
80
128
93
106
172
123
121
80
80
145
72
127
76
120
72
76
87
112
102
118
88
125
104
80
106
155
121
80
76
91
69
104
104
94
119
99
102
80
174
156
109
82
90
129
80
82
74
123
78
134
127
110
80
128
99
76
175
131
136
96
145
91
93
130
88
175
94
87
151
156
80
136
74
80
80
76
130
120
121
85
69
151
89
87
142
75
105
124
80
91
107
80
144
69
107
88
78
136
102
87
80
120
120
80
163
78
99
134
56
99
110
80
80
120
67
72
108
118
76
88
140
69
111
80
113
80
127
72
82
87
132
176
88
103
117
103
197
80
107
110
117
87
87
80
105
143
137
109
92
78
154
144
98
140
130
128
159
75
102
122
117
130
93
91
120
60
69
129
106
72
112
88
87
81
154
71
161
69
101
114
163
175
140
107
80
112
120
128
101
69
137
136
89
78
128
69
119
75
153
89
89
94
96
106
104
126
72
69
78
102
169
114
110
88
80
89
94
72
117
80
72
128
132
118
121
140
80
128
76
56
113
99
112
59
140
78
107
175
87
110
133
134
83
107
93
85
78
76
94
110
93
107
78
78
94
102
112
130
106
156
163
110
52
99
80
129
100
122
111
106
89
87
156
121
74
101
80
93
110
120
90
75
105
146
85
153
131
197
69
69
88
124
92
151
110
80
80
175
94
89
175
131
80
131
148
78
89
80
155
80
88
110
72
105
117
120
120
71
103
152
172
85
96
155
197
107
79
99
91
140
85
197
151
154
148
129
120
115
113
117
80
121
80
125
89
87
76
109
89
128
121
80
89
87
96
69
146
85
87
80
135
126
80
107
95
94
79
156
107
140
103
107
87
151
96
80
102
128
131
107
89
88
76
94
119
119
143
66
114
104
181
99
87
80
120
89
69
109
112
74
185
43
104
155
104
87
152
110
110
109
146
109
84
134
75
144
184
87
74
153
80
71
114
109
144
176
87
101
126
149
133
150
69
100
80
114
91
126
69
87
120
96
146
87
80
185
160
121
104
178
155
128
80
80
89
110
99
76
114
101
115
87
100
110
80
89
125
78
126
96
78
88
103
80
81
119
156
120
69
112
80
143
134
109
99
127
88
118
109
119
124
102
69
110
156
80
99
135
69
94
72
76
124
69
69
144
56
123
59
107
163
80
88
110
78
115
118
181
123
113
114
57
104
140
71
119
136
99
145
128
134
130
131
113
93
99
72
113
109
137
80
101
78
163
144
128
66
43
117
110
80
94
69
104
80
91
69
80
94
119
100
80
94
85
136
155
166
115
80
109
107
175
85
118
98
80
114
160
96
104
88
76
106
163
106
80
93
107
99
75
69
117
128
80
80
133
119
57
97
80
119
123
138
87
69
100
78
138
79
111
120
54
131
96
147
136
77
87
56
137
103
87
76
80
71
113
117
80
80
94
69
134
123
124
143
126
80
120
117
175
113
118
137
88
110
78
106
124
94
121
143
87
96
110
106
154
104
101
119
94
69
94
110
69
113
80
119
88
78
122
112
80
175
87
120
160
113
80
76
115
96
78
80
154
101
119
155
123
121
110
155
88
143
74
102
112
117
67
101
78
94
96
79
80
109
131
106
109
141
120
109
119
119
137
109
91
69
43
69
156
107
80
175
138
131
120
102
140
127
120
110
80
162
72
175
69
197
75
69
80
112
89
87
111
136
80
117
121
76
120
116
127
106
87
132
120
126
121
136
134
70
87
104
80
197
134
102
87
80
108
117
80
87
80
69
121
59
99
117
139
142
109
78
117
114
148
89
109
120
110
142
52
103
112
94
140
56
120
109
113
93
90
115
80
107
121
80
99
132
99
176
123
80
112
79
115
69
76
151
121
112
90
69
134
80
80
95
80
112
121
78
74
141
117
84
105
128
75
69
69
78
87
100
117
91
100
96
119
72
78
147
155
109
110
68
109
175
119
152
118
113
175
111
87
80
115
127
107
112
69
128
151
69
162
106
108
128
117
104
69
101
80
107
82
80
79
138
80
175
89
88
154
117
94
100
107
88
109
94
100
112
85
80
156
109
164
52
131
87
78
101
149
87
110
80
69
138
150
80
80
96
120
127
95
151
95
160
87
80
89
114
99
121
130
175
132
87
118
80
106
127
127
87
85
103
92
145
88
69
90
133
154
120
88
130
78
127
110
110
110
87
67
115
111
69
160
134
105
156
95
69
175
110
137
101
155
143
76
98
80
80
102
85
103
163
80
104
101
139
102
107
99
99
111
127
94
128
151
140
92
80
116
69
143
104
107
108
113
175
122
99
88
135
75
128
121
160
91
120
107
140
78
88
107
140
96
136
128
69
80
82
124
119
69
112
56
151
109
78
183
114
125
113
100
88
110
88
69
120
69
128
139
120
121
80
87
175
72
104
155
146
128
87
161
175
119
80
89
87
72
87
80
83
76
87
115
102
113
129
124
58
140
156
175
131
122
175
136
127
99
56
122
76
135
76
67
131
117
96
110
118
88
94
76
107
128
154
80
78
94
197
154
96
100
106
85
69
72
107
89
131
56
80
69
154
88
114
112
106
120
107
98
87
164
113
119
72
88
69
80
99
87
76
72
89
99
120
138
74
127
120
72
101
104
78
106
87
66
131
106
99
97
155
119
131
72
113
154
93
109
94
80
129
95
87
98
112
80
99
69
111
99
104
100
100
63
134
164
137
101
155
93
131
145
117
109
107
107
91
115
100
121
130
104
163
80
131
136
121
87
88
96
72
76
112
107
156
162
87
129
152
100
141
117
89
101
78
69
120
88
99
199
119
163
122
114
76
69
132
121
109
114
69
76
120
145
165
110
58
131
104
94
80
78
89
99
87
74
75
96
109
201
80
96
137
127
80
156
120
117
119
78
103
56
115
88
107
109
113
87
72
80
91
89
109
80
88
89
69
109
120
69
78
136
104
130
137
99
77
105
107
131
80
138
96
132
118
78
109
87
88
80
109
129
138
119
96
122
78
74
148
120
125
159
91
81
111
69
142
99
128
135
121
109
115
90
69
100
99
170
63
124
109
175
87
107
118
113
137
154
69
67
154
125
94
78
120
69
129
103
80
75
129
87
81
78
131
78
117
78
107
118
104
69
142
80
119
58
89
110
76
69
175
87
100
132
74
104
121
97
96
123
197
74
148
76
127
87
90
134
132
152
106
144
145
103
99
76
78
148
80
130
89
107
144
128
91
87
112
111
76
91
140
69
119
119
76
175
138
69
89
181
138
99
145
80
99
156
115
88
99
122
97
156
94
128
87
80
156
87
121
80
80
100
73
87
74
87
88
128
111
109
197
80
107
154
87
98
132
89
69
107
99
88
140
102
163
109
114
66
94
113
78
69
153
56
154
118
120
119
120
156
69
80
109
107
126
125
69
69
144
74
72
74
71
80
93
80
106
119
112
110
80
107
76
91
101
80
121
104
87
99
101
78
80
120
94
136
80
109
128
94
132
102
132
120
96
99
121
69
109
71
99
119
109
181
113
131
145
88
126
98
154
87
174
167
140
114
112
106
80
186
99
77
113
83
107
128
78
74
88
89
104
69
87
107
69
137
108
156
145
209
80
78
87
124
154
58
109
80
102
154
120
96
69
148
112
117
76
111
135
78
142
103
101
94
119
121
69
76
80
80
87
100
106
123
95
122
69
140
126
136
89
107
119
112
91
155
69
113
104
80
153
80
110
107
119
80
129
82
87
106
78
67
93
124
93
113
78
172
134
107
121
113
80
99
76
136
52
87
131
113
56
76
119
80
97
87
54
106
80
101
110
119
129
130
91
87
78
80
128
101
88
115
138
56
69
117
81
109
88
88
78
69
104
134
80
121
140
92
87
114
80
58
110
119
197
69
88
127
117
118
110
78
154
91
133
103
166
119
106
91
56
128
169
99
76
87
164
129
69
93
106
91
136
90
154
76
124
94
76
118
118
76
121
129
89
87
137
127
104
88
128
78
209
78
115
91
119
89
128
119
120
57
175
120
110
154
121
154
110
110
69
154
80
106
199
101
103
110
76
78
80
109
132
131
88
93
117
103
145
72
69
151
97
91
96
106
103
67
102
147
112
78
72
106
140
107
76
80
112
167
74
145
175
140
74
99
131
120
165
78
119
116
152
96
80
102
85
75
117
102
88
150
100
138
117
117
80
80
119
76
94
101
175
110
101
119
123
145
175
107
88
108
121
140
71
124
83
111
118
107
162
80
107
81
120
121
156
88
77
125
103
112
92
87
98
111
104
87
78
69
131
121
80
136
75
94
76
76
155
119
126
163
156
80
107
137
119
69
54
80
89
144
170
154
71
87
121
85
113
128
80
125
74
175
106
134
69
93
115
128
154
121
69
117
93
107
96
137
145
121
78
92
99
80
175
88
154
121
96
89
132
199
80
76
120
145
89
111
119
140
78
169
117
121
142
98
126
117
104
109
120
72
90
128
88
163
107
104
123
81
120
161
164
175
120
152
93
93
91
96
140
137
139
91
127
109
80
96
109
80
69
93
80
94
109
197
126
54
144
139
131
76
121
66
69
87
143
106
80
129
151
99
76
88
80
145
76
88
80
81
126
120
69
80
175
157
88
131
69
91
67
151
144
107
109
113
117
52
80
120
119
139
125
109
78
127
80
154
72
113
78
111
107
163
137
72
103
117
94
126
146
117
112
94
110
117
64
69
139
104
120
101
104
140
80
107
131
156
94
120
115
106
54
95
87
103
80
154
119
112
148
95
87
93
82
94
115
92
76
131
147
93
94
106
72
69
80
175
78
99
69
153
107
135
175
112
110
78
56
69
80
138
108
66
131
93
136
154
69
131
132
87
153
119
109
140
104
88
109
74
119
160
113
93
148
93
89
69
131
87
112
80
112
129
142
137
119
101
131
83
90
88
145
154
76
96
67
78
117
88
102
174
107
95
89
80
115
92
89
78
67
197
69
94
80
121
120
99
89
120
131
100
136
80
108
116
74
104
88
127
113
99
99
152
127
91
87
85
197
76
107
78
80
54
80
109
101
78
113
121
131
143
119
120
113
89
89
86
134
88
99
131
128
128
82
109
88
118
138
110
106
145
184
125
96
90
78
197
99
80
107
131
164
80
101
121
120
175
146
150
99
88
151
126
94
131
92
127
106
110
89
127
69
99
121
120
120
87
101
87
102
110
112
79
94
133
166
69
111
67
91
91
166
69
128
109
87
76
69
96
138
87
112
96
98
123
76
120
100
93
83
80
80
89
76
69
80
175
107
151
131
104
90
80
123
80
131
163
91
93
80
154
148
119
79
80
82
96
151
56
118
98
80
102
104
69
131
129
78
72
115
155
75
141
175
87
59
69
136
78
157
107
117
96
137
89
123
122
87
101
136
106
89
85
69
80
96
78
69
138
98
78
78
129
143
69
131
138
80
175
89
93
90
111
110
76
136
113
82
148
109
102
88
54
147
120
69
113
109
104
112
101
110
99
131
87
93
80
80
85
175
93
69
152
137
96
104
72
175
80
104
80
136
93
155
80
151
78
151
100
93
104
91
109
78
181
93
100
113
136
127
112
134
107
69
88
80
80
112
91
130
109
93
78
111
181
120
94
110
75
69
136
93
80
154
93
80
117
102
119
144
93
99
119
76
138
79
80
140
146
76
78
106
119
80
137
99
136
113
152
94
112
102
160
128
80
131
119
76
76
116
104
106
119
101
104
120
142
106
80
165
69
146
175
143
104
132
117
72
117
96
104
87
91
69
69
140
131
183
80
107
128
78
107
110
88
124
145
102
100
99
156
156
98
69
140
120
128
115
106
110
69
99
119
119
69
122
112
175
138
118
69
76
85
104
149
155
93
72
99
94
43
132
197
87
163
123
116
89
155
72
78
75
132
97
136
69
138
80
89
131
125
128
87
80
101
112
88
80
121
197
56
101
72
131
89
128
94
117
76
126
110
87
72
110
93
137
112
119
119
102
69
118
109
103
87
88
113
175
76
78
87
134
87
87
104
109
74
137
119
111
99
87
69
52
197
109
88
85
91
78
96
96
165
120
184
140
112
154
92
80
119
88
89
94
80
69
63
131
91
121
142
132
76
76
175
120
93
94
201
93
69
155
106
134
116
63
80
76
89
89
120
132
104
137
93
156
123
74
117
133
106
136
69
131
82
113
87
83
78
54
52
91
148
99
127
72
99
152
87
199
80
176
80
119
144
113
175
131
153
73
112
151
59
154
105
80
107
87
131
113
88
158
146
140
175
110
99
119
69
126
87
140
92
87
66
136
67
122
80
88
89
103
59
104
137
107
122
87
145
131
101
133
69
76
94
127
123
109
104
80
105
148
72
130
101
129
120
120
69
89
110
94
117
120
112
52
165
147
134
156
145
69
119
113
128
118
151
76
80
157
119
95
69
87
87
125
101
100
91
143
119
156
120
107
54
125
119
75
111
80
136
130
130
150
107
93
69
99
119
91
99
87
99
76
128
138
109
122
72
63
143
83
87
106
141
69
59
76
87
110
109
113
115
78
148
69
138
99
89
117
164
143
110
115
78
145
76
147
87
91
175
136
99
112
125
171
116
119
76
87
154
119
107
188
137
80
69
92
155
116
80
110
127
155
137
119
113
99
83
89
128
102
110
120
76
154
103
175
78
165
127
56
78
151
175
118
72
120
98
125
146
94
69
131
92
89
117
118
115
82
113
109
80
76
102
69
102
113
90
115
74
80
107
80
128
52
134
54
87
72
99
85
58
104
109
69
89
67
132
175
101
103
128
112
175
96
136
121
78
110
175
120
80
91
155
111
125
128
96
87
69
120
99
80
134
89
128
107
69
93
197
102
89
114
120
115
78
79
87
110
101
80
69
123
119
181
119
154
121
104
83
69
119
106
113
151
134
80
101
89
104
87
76
98
133
89
106
110
80
69
107
80
80
113
121
109
121
80
88
133
75
80
154
100
183
143
119
112
123
118
118
137
107
113
118
117
127
120
80
64
116
76
97
175
80
89
145
104
91
119
90
122
112
92
107
87
117
130
104
136
136
59
87
123
117
101
104
106
90
69
88
87
69
88
89
69
110
80
109
87
126
113
87
72
136
94
69
66
86
111
78
110
76
119
134
126
107
91
127
80
107
128
76
89
69
80
106
107
123
101
91
69
103
74
80
110
69
145
101
82
127
159
106
135
107
101
78
80
201
120
72
58
136
101
94
69
116
104
151
78
95
76
80
103
100
69
121
163
111
99
88
103
92
150
138
78
87
110
93
131
121
87
122
80
92
90
129
111
154
100
104
175
72
91
126
112
175
164
80
69
87
79
79
111
137
69
199
87
130
85
158
114
113
119
144
69
163
80
101
76
132
94
112
78
93
131
110
99
104
165
99
80
143
109
80
163
94
125
76
140
89
76
80
69
80
143
148
89
116
80
80
197
175
78
119
88
110
127
117
69
197
110
114
59
76
72
78
98
140
110
99
76
131
136
91
197
152
119
85
127
80
76
143
80
104
96
153
78
69
78
199
120
119
110
111
80
145
91
95
94
127
69
201
156
160
66
76
133
124
52
80
76
119
121
96
121
163
134
125
106
102
114
154
129
148
156
124
98
71
80
113
80
87
89
80
80
80
95
43
104
163
76
96
126
87
82
91
110
80
89
154
69
152
113
113
76
91
91
136
163
156
115
187
103
110
134
76
92
110
80
94
76
80
156
69
69
88
145
107
154
87
81
75
88
88
128
80
117
102
80
93
154
115
130
68
76
175
102
118
76
111
68
114
136
137
120
136
133
81
78
137
146
120
154
114
79
69
109
110
89
110
114
69
128
148
118
69
78
94
88
154
90
80
68
80
78
78
154
87
150
96
136
78
99
113
101
83
96
80
82
155
80
164
117
144
113
140
122
113
119
145
136
87
78
123
69
52
72
78
112
128
126
102
113
122
99
120
134
151
103
69
89
101
156
107
130
175
100
76
125
80
175
69
69
58
130
88
136
94
69
106
80
118
101
102
127
91
89
113
120
107
130
113
117
111
132
118
125
102
154
98
126
127
137
118
124
130
112
146
78
109
93
100
87
128
80
88
119
79
93
54
208
102
132
110
99
107
100
69
119
96
103
146
102
138
119
94
118
140
116
140
136
119
69
79
175
162
69
128
148
99
64
153
108
128
72
114
96
99
143
119
128
101
85
128
52
80
76
80
125
87
87
76
129
117
94
119
89
145
98
85
164
69
94
102
112
138
99
88
80
113
107
104
120
110
94
94
80
148
87
125
80
163
136
76
128
69
80
87
90
89
56
88
128
146
85
104
75
165
124
142
129
99
114
87
80
85
56
159
104
99
80
88
66
80
90
115
69
128
95
80
76
80
87
120
128
87
87
80
91
112
127
197
105
117
160
80
154
93
146
155
109
136
80
80
80
54
134
72
156
97
125
102
112
148
95
98
93
100
78
76
109
43
69
123
78
80
69
80
76
80
78
107
123
102
119
89
52
142
141
76
94
146
142
160
122
102
123
140
141
99
67
155
172
183
88
96
110
133
123
94
107
107
119
113
99
110
69
144
99
131
93
151
147
119
157
152
78
117
131
152
96
81
80
128
96
81
145
156
87
69
134
110
80
80
80
120
145
79
175
146
96
154
93
112
120
101
87
69
99
112
121
80
129
181
69
69
102
100
119
87
93
78
95
80
87
76
92
99
99
76
87
120
99
69
80
133
91
80
131
142
129
154
89
80
121
88
146
99
118
94
69
76
110
101
136
175
164
109
99
118
120
80
78
76
119
69
80
154
69
80
89
99
94
164
138
134
95
137
128
119
99
93
80
76
100
122
136
66
80
96
99
175
134
156
107
87
156
69
72
94
69
69
175
100
83
123
89
87
80
175
148
118
175
181
93
56
96
126
100
89
90
115
93
69
89
109
87
80
154
99
100
80
119
106
136
94
110
175
69
78
122
80
80
106
145
175
78
87
59
107
140
150
120
100
143
99
69
80
76
154
175
59
78
154
134
69
144
110
131
116
100
52
122
106
113
106
78
137
126
69
119
93
101
109
76
72
69
121
104
69
80
133
99
88
99
134
87
155
85
76
80
80
91
87
197
89
87
142
134
104
119
88
56
121
103
78
126
88
131
163
148
123
156
80
88
119
121
80
132
78
74
140
175
80
74
98
131
108
78
80
99
106
80
80
155
88
96
98
85
117
163
121
134
122
143
95
130
107
106
128
76
124
73
135
69
76
87
100
144
172
99
132
104
80
76
96
85
145
107
80
154
107
87
78
126
134
87
69
175
138
88
69
94
120
54
117
120
111
87
104
113
120
107
79
87
72
78
80
155
123
87
117
69
104
85
107
69
120
158
99
94
197
99
86
88
74
76
87
80
88
80
123
128
121
117
138
85
89
107
80
138
106
183
76
104
119
120
142
175
124
80
78
124
89
175
138
94
122
119
80
87
144
119
120
123
140
114
109
166
131
73
174
87
82
148
101
69
197
80
114
103
163
114
99
113
100
133
74
107
154
125
75
99
128
80
80
169
117
69
169
145
82
96
145
95
103
88
119
117
107
74
88
126
69
87
69
110
156
128
114
112
175
69
69
122
102
78
151
112
94
100
75
131
80
104
87
137
78
80
133
76
99
89
80
175
73
80
104
133
104
112
109
117
119
94
107
89
140
89
119
88
156
90
122
138
110
78
175
110
77
137
82
107
92
119
154
69
99
119
80
89
111
152
72
115
69
78
110
119
134
175
154
80
80
80
69
54
93
72
93
120
129
71
106
111
109
136
136
119
91
88
117
69
80
97
94
87
80
175
94
80
101
154
87
109
89
120
175
102
119
123
160
154
87
80
99
110
197
69
85
127
112
112
80
112
113
98
106
78
52
120
114
136
69
136
88
136
99
69
100
76
80
80
69
91
78
80
69
158
69
80
72
69
124
100
88
154
115
110
80
69
95
69
78
106
69
93
114
121
74
158
118
69
87
52
78
69
157
156
66
87
80
175
80
64
112
96
120
107
94
119
162
123
113
100
87
76
117
69
106
69
109
87
106
69
89
98
100
92
104
69
89
136
123
99
120
52
92
89
80
76
119
155
89
137
104
78
87
76
104
69
120
69
91
103
107
129
128
102
109
132
133
69
88
142
74
197
80
101
120
106
99
94
80
109
132
147
91
126
78
78
154
80
131
138
106
110
96
175
69
78
119
120
115
94
84
103
145
69
116
113
117
54
69
56
118
88
148
129
80
120
175
134
123
115
75
78
76
87
80
109
175
94
150
90
121
94
134
96
149
130
121
104
99
175
80
78
78
76
153
78
76
119
74
109
111
120
120
89
91
137
174
95
142
69
96
80
87
122
67
87
80
137
69
101
91
197
119
87
76
69
125
88
99
106
69
80
72
95
69
175
112
85
99
69
151
121
69
112
88
93
99
95
115
132
119
80
63
72
106
104
109
94
87
87
56
119
172
91
78
78
185
145
110
133
80
136
102
96
102
69
94
175
155
120
64
154
89
122
120
72
78
58
175
144
147
119
69
88
117
136
109
199
175
146
93
76
104
96
67
88
96
87
99
95
87
97
120
101
121
121
76
129
109
87
112
146
106
87
80
106
102
89
107
155
76
100
104
59
95
134
99
76
121
120
80
156
100
136
96
122
197
151
69
99
54
114
87
175
125
80
155
79
107
80
100
199
175
76
130
113
112
156
155
128
69
72
80
52
88
80
115
76
128
80
76
131
88
69
87
102
110
96
110
94
187
154
80
107
152
80
88
72
88
74
90
131
78
99
176
109
93
69
163
72
69
80
118
96
98
95
154
164
163
125
52
109
87
68
133
175
91
107
96
125
106
131
143
80
104
69
78
88
69
104
89
175
80
156
69
138
107
72
89
74
100
60
156
117
69
60
80
78
78
72
175
102
163
80
110
163
69
112
131
138
121
120
94
90
119
80
107
94
80
151
78
89
122
94
146
76
80
156
80
111
66
69
181
163
104
88
78
78
91
134
96
93
118
69
81
80
111
111
175
95
119
116
134
115
115
89
152
93
109
121
110
157
121
106
128
76
122
177
119
105
87
137
122
80
89
78
94
121
95
73
124
154
117
79
140
80
103
120
69
107
120
143
80
80
119
93
76
132
154
111
118
79
98
117
119
76
94
140
109
120
56
121
80
119
155
136
94
175
119
137
106
120
117
80
80
133
78
128
130
89
80
170
80
120
136
123
69
116
151
154
87
78
107
129
163
83
75
80
117
76
119
78
155
126
80
74
80
120
78
137
80
175
80
88
113
87
113
76
105
115
104
78
72
125
153
75
107
128
78
69
94
82
102
76
93
112
133
87
67
87
123
151
69
100
141
82
95
157
54
131
80
113
175
118
107
56
43
111
87
145
102
131
121
137
69
151
88
99
58
94
94
69
112
94
80
131
101
120
107
80
69
85
99
94
80
101
109
120
122
120
155
151
93
80
76
69
94
126
102
118
131
125
120
95
87
143
87
52
128
83
90
133
88
155
175
71
76
131
77
140
87
119
110
69
181
134
52
107
118
131
138
80
87
118
80
103
146
80
99
121
113
69
87
99
121
119
110
78
88
131
107
134
119
128
110
76
80
148
95
132
141
110
125
69
163
88
90
113
90
78
110
93
88
99
143
142
136
82
147
143
87
90
104
146
69
109
110
152
106
119
119
118
69
143
109
131
110
110
69
106
85
111
105
134
85
128
119
119
111
78
175
115
75
87
99
69
80
129
69
80
142
80
78
80
95
69
80
117
110
109
104
197
174
128
80
115
87
112
89
121
111
144
148
128
78
119
123
78
69
128
129
112
215
80
124
103
119
76
126
109
120
80
69
104
100
107
107
107
136
129
129
183
88
43
80
120
133
78
88
115
160
128
73
146
88
74
91
110
80
119
137
96
89
69
103
96
121
161
93
98
112
118
85
82
131
126
74
76
154
116
87
138
197
88
88
79
52
94
96
134
117
166
113
110
110
78
78
154
76
78
96
88
133
69
95
134
80
84
80
120
88
109
76
66
80
175
80
124
133
119
91
109
113
121
144
172
113
131
111
87
80
112
80
69
56
89
114
113
136
134
80
93
197
155
87
123
195
87
87
76
88
100
99
113
197
111
76
69
107
127
143
99
72
99
105
87
85
127
96
123
164
87
139
136
94
110
90
93
113
107
151
139
69
114
87
76
82
119
85
74
80
109
75
96
113
160
74
87
165
94
98
80
119
148
133
87
80
131
90
127
96
116
156
107
136
128
100
114
88
54
110
69
96
141
91
120
87
87
125
128
97
140
69
117
69
196
175
100
116
67
127
78
125
106
88
119
132
94
181
85
107
100
73
76
69
92
137
88
156
165
74
104
83
125
109
122
112
113
102
128
123
121
133
69
76
99
88
119
117
113
154
91
80
120
125
163
69
122
93
175
130
109
142
80
72
69
155
126
99
104
87
87
120
107
67
78
132
111
89
136
101
91
128
132
89
169
110
80
131
156
87
71
80
175
76
88
119
99
89
187
136
110
118
175
101
155
80
160
112
121
113
151
162
156
80
94
110
80
79
107
80
99
87
134
164
117
124
175
76
109
74
131
96
98
93
78
148
122
154
73
78
80
149
135
142
59
112
80
87
151
103
74
176
67
98
88
78
138
72
120
145
131
131
122
72
69
69
56
73
133
88
109
131
113
134
117
114
162
69
127
76
113
96
143
80
96
119
114
114
128
87
80
127
87
76
80
123
119
104
120
80
136
152
131
150
110
87
69
124
88
69
78
69
107
125
102
78
197
127
88
76
92
89
78
69
120
78
134
112
146
119
128
126
80
95
115
108
83
90
100
96
134
138
113
113
96
165
99
120
133
99
76
69
78
138
96
69
113
109
72
78
96
87
107
83
118
131
156
96
76
152
69
56
80
128
76
69
107
120
87
122
80
93
72
165
119
107
99
143
73
78
153
116
110
104
106
128
163
134
80
119
88
121
101
103
134
154
105
104
122
112
52
128
155
107
113
143
110
78
155
155
106
99
137
181
114
156
137
97
78
76
108
107
175
123
131
69
175
89
121
107
118
128
134
88
111
122
86
101
120
90
110
79
72
148
115
163
118
126
124
114
52
63
87
69
112
123
134
75
115
99
115
115
88
128
69
106
121
60
118
134
106
113
108
117
69
131
69
138
88
87
175
166
89
119
175
87
139
124
89
104
76
87
88
128
89
113
137
76
110
69
94
121
89
88
105
94
117
78
140
69
76
104
98
122
98
103
76
130
89
115
90
88
110
134
80
80
80
88
162
93
80
110
143
78
69
125
146
110
117
89
201
96
115
96
131
103
80
93
99
80
92
91
93
119
175
69
107
74
110
125
80
113
99
99
102
139
128
78
78
138
80
69
119
69
114
69
72
152
52
146
128
101
69
126
175
60
89
80
99
111
98
74
123
69
80
107
156
69
80
155
80
88
104
101
120
138
129
154
127
122
114
94
151
80
82
69
105
43
54
125
69
88
99
69
127
154
99
99
93
175
130
94
89
131
136
174
107
79
108
76
87
80
107
76
130
80
175
121
134
154
155
106
109
113
94
106
52
87
91
94
132
80
89
87
87
154
100
197
130
94
76
80
149
109
99
122
52
96
78
109
109
73
140
67
77
80
78
80
78
80
54
140
94
101
154
82
138
94
147
127
111
107
150
197
138
127
94
107
106
101
119
119
80
120
122
120
138
131
119
91
120
91
136
121
69
76
144
80
133
112
78
72
156
80
160
163
175
119
80
96
88
121
197
92
69
80
104
56
140
119
94
88
121
140
110
113
92
114
87
152
94
137
164
85
87
107
111
120
139
120
69
76
120
78
140
69
175
111
91
146
164
119
154
78
80
119
78
89
128
163
87
175
131
90
127
69
99
93
154
140
80
154
87
155
127
131
115
69
69
129
76
56
58
154
106
76
140
69
137
156
87
118
87
80
69
88
76
134
154
80
88
69
155
121
80
111
99
76
156
98
125
113
121
128
117
140
52
121
103
69
69
107
150
76
119
96
107
87
155
118
80
129
122
101
128
80
82
107
152
112
154
128
136
104
154
87
87
134
140
106
75
80
199
120
146
80
87
54
145
91
154
119
131
69
78
69
63
95
99
90
80
85
109
131
69
156
107
54
125
154
118
118
103
89
154
151
114
123
88
89
119
103
78
123
131
144
89
80
104
123
112
69
132
96
104
131
132
109
87
69
145
89
80
129
140
107
99
124
115
94
88
82
99
122
124
119
123
90
95
87
80
92
149
80
80
83
155
114
127
120
119
141
140
109
100
175
124
137
87
87
135
52
57
69
134
88
80
106
75
106
175
76
80
87
123
118
112
54
89
80
127
197
69
154
91
102
69
80
99
67
69
87
80
72
118
87
59
69
169
114
89
114
80
121
80
80
148
117
189
106
56
76
80
174
103
99
95
110
96
87
119
109
87
128
99
94
136
93
69
111
69
107
96
132
164
131
78
78
78
107
96
112
76
112
175
102
80
101
87
107
141
78
104
130
120
143
71
94
88
106
80
106
113
76
104
69
87
178
119
146
118
129
109
123
129
74
119
107
87
80
129
163
116
121
113
135
113
98
112
93
146
87
78
110
76
102
145
110
89
80
109
122
150
99
95
112
128
83
135
87
113
78
112
87
148
147
80
95
80
154
147
109
123
78
106
88
94
94
110
88
107
74
114
78
107
144
121
101
127
126
69
74
107
102
134
80
139
154
69
79
109
88
155
79
80
69
121
118
113
121
129
92
78
131
121
87
87
154
94
80
78
124
94
134
107
113
80
102
105
134
103
102
120
136
69
78
104
111
89
93
80
69
114
117
131
155
119
80
94
83
112
72
78
78
72
154
78
110
106
67
109
89
175
77
120
87
101
80
93
87
79
67
118
56
152
72
64
132
87
131
80
144
110
76
154
70
113
136
136
76
76
156
80
104
149
76
134
88
154
106
80
69
56
107
121
87
79
72
87
56
102
140
93
148
80
141
94
80
119
106
87
107
126
99
120
175
80
110
82
119
119
118
143
94
80
69
78
102
103
69
87
114
87
74
87
80
72
76
156
100
56
78
112
115
110
138
209
69
72
80
69
127
128
95
131
99
80
106
94
100
69
121
129
87
80
90
120
87
93
118
110
112
102
76
107
89
120
78
88
155
80
80
87
80
149
69
76
52
120
76
120
63
80
75
136
175
94
120
87
131
115
88
104
52
121
72
82
119
145
128
150
128
106
166
119
69
113
123
140
76
69
56
69
80
119
134
132
88
140
106
120
113
124
134
121
80
156
76
136
89
165
118
80
78
110
112
119
88
74
69
135
145
98
69
134
109
88
75
109
153
155
130
69
87
76
154
92
91
119
78
137
127
151
154
134
175
104
80
137
90
104
69
80
93
78
125
112
104
123
110
88
120
123
107
145
99
52
113
99
91
96
69
142
74
119
101
69
121
72
120
87
110
74
69
80
80
80
128
78
54
124
69
109
106
110
109
76
111
89
120
120
106
155
80
120
119
102
118
99
69
76
93
104
132
101
131
113
80
69
151
137
72
87
109
122
80
111
67
146
103
88
128
93
146
76
80
147
69
140
66
121
74
119
146
126
128
57
119
99
107
80
128
69
136
56
108
80
131
80
54
123
110
80
76
80
80
88
126
144
89
87
69
99
94
56
156
134
128
78
110
99
107
124
169
150
127
132
96
119
75
140
104
102
80
149
88
80
69
87
104
131
104
74
142
90
163
118
87
74
110
114
59
106
104
87
142
129
120
140
80
95
117
148
107
144
94
96
69
90
94
82
80
76
120
88
90
87
136
80
93
74
128
121
155
126
136
140
87
143
80
132
137
93
128
139
129
138
137
155
87
106
74
52
127
175
112
143
85
80
80
155
154
89
140
76
69
93
137
154
175
107
66
95
121
117
178
80
67
120
69
171
197
146
134
100
76
80
107
87
78
90
137
129
112
93
84
138
175
156
89
119
114
74
109
116
74
94
94
113
96
130
80
72
88
134
80
156
136
96
134
120
131
87
175
162
120
175
128
130
175
72
142
78
128
128
151
148
187
80
104
133
97
104
94
110
156
54
87
72
112
121
117
74
156
122
132
133
80
145
119
69
141
75
88
139
107
78
109
80
109
89
96
110
146
103
122
93
94
84
80
89
87
197
132
80
112
90
109
87
88
120
101
69
104
119
108
136
104
101
107
119
80
52
107
80
69
69
100
80
101
99
94
110
119
156
151
175
134
80
122
109
80
127
89
78
80
80
109
131
209
140
145
95
130
127
142
128
80
72
69
101
90
136
95
121
92
87
175
111
107
156
175
100
155
79
54
110
94
80
107
104
76
119
134
80
80
112
80
109
69
58
112
91
91
109
94
78
114
114
115
116
119
91
75
78
104
112
98
97
87
107
78
131
137
106
89
109
136
76
154
117
74
136
76
80
89
132
128
94
120
128
128
126
104
74
128
107
103
121
124
78
99
98
72
85
99
80
114
124
160
88
117
130
101
89
151
175
175
76
157
71
121
97
69
116
80
69
137
87
96
69
113
112
106
118
101
143
69
99
89
151
123
99
76
78
76
69
87
91
110
131
69
69
121
78
80
104
76
128
92
94
122
88
106
88
67
67
87
85
125
117
92
107
136
127
93
76
69
113
151
95
94
100
109
89
134
131
110
90
134
69
163
103
80
80
88
69
76
151
69
151
109
128
85
69
91
122
117
102
103
132
143
72
125
87
111
120
134
145
88
78
94
74
69
80
163
99
163
80
74
95
110
96
87
76
146
174
69
101
110
134
106
120
148
159
80
87
80
78
130
126
72
93
97
120
175
78
104
111
91
80
76
101
145
124
96
91
101
119
128
78
120
175
93
83
80
80
109
119
89
69
78
80
107
76
130
91
160
134
103
128
160
79
133
140
136
128
72
99
151
69
156
78
102
119
52
155
69
175
78
130
178
156
87
74
72
76
110
78
102
87
76
99
87
76
90
67
69
126
91
122
69
78
164
199
119
118
128
80
111
89
119
75
72
146
181
115
106
69
76
147
109
78
131
125
67
150
119
76
134
131
69
78
107
109
69
80
175
127
93
88
69
160
122
121
96
93
175
140
87
110
80
126
94
154
113
100
119
109
69
80
43
112
120
80
56
80
109
121
80
145
89
80
98
99
76
76
113
83
120
71
69
111
144
76
147
99
175
134
109
121
100
152
149
127
87
43
72
145
80
80
185
100
112
80
109
98
100
136
107
112
117
115
197
120
121
103
69
111
69
109
119
129
120
69
94
100
69
111
99
52
94
101
128
154
131
199
107
129
101
120
99
140
88
124
131
132
88
117
99
69
87
89
67
80
89
76
103
78
155
74
128
147
69
80
69
106
114
148
69
101
99
69
131
72
113
135
163
154
146
69
110
97
120
76
69
69
175
75
76
66
78
80
80
130
74
113
156
88
120
104
69
109
76
119
69
85
121
128
105
109
154
80
136
131
103
136
109
99
104
78
140
54
128
117
94
101
69
109
120
118
80
80
78
106
102
89
133
94
78
112
100
69
175
162
107
119
80
137
144
128
69
143
96
117
88
117
112
113
101
124
140
93
128
107
74
117
101
116
92
129
54
122
100
124
93
149
154
128
107
120
69
88
76
98
111
123
118
78
107
80
112
109
80
69
87
107
119
91
136
145
100
177
104
121
89
117
80
108
59
104
195
90
148
80
78
119
143
107
145
112
74
87
109
94
76
93
92
98
137
113
148
128
78
72
124
112
140
80
89
78
99
98
154
147
81
181
69
72
106
69
80
124
69
128
91
87
110
100
69
76
120
87
93
81
122
80
76
119
80
87
113
78
109
91
69
150
121
93
96
136
122
76
80
134
111
80
52
80
76
80
89
80
76
152
80
83
119
85
96
114
87
88
56
90
69
110
92
89
87
122
78
118
91
136
103
117
136
80
122
69
96
76
69
78
76
93
72
99
80
140
113
80
69
99
72
119
88
69
100
107
151
109
78
87
140
110
80
80
115
76
81
99
119
80
126
93
87
134
89
108
155
119
128
80
80
69
100
121
69
132
78
148
128
83
94
154
106
80
80
156
129
113
80
71
99
113
80
156
74
122
130
100
70
80
80
99
67
117
95
129
154
69
78
88
107
94
131
119
80
118
102
80
69
87
72
100
120
107
60
76
99
69
144
87
119
124
72
100
95
93
89
99
77
76
69
148
69
113
133
108
128
118
73
78
151
67
87
99
102
93
69
93
78
80
125
94
69
99
144
59
87
137
67
146
105
110
80
136
80
69
136
129
78
80
88
156
148
94
87
89
127
88
166
88
80
110
112
102
107
96
119
104
110
80
110
151
148
86
99
67
100
87
156
155
122
76
78
103
126
175
109
88
132
117
138
80
117
79
148
120
162
109
129
80
114
87
99
78
95
94
69
121
102
69
108
112
80
146
88
94
126
80
118
156
78
69
80
106
106
101
80
119
100
136
94
117
104
120
146
69
164
80
169
75
91
120
89
156
80
103
89
76
131
52
120
87
142
175
102
118
69
88
143
118
88
109
94
99
154
111
156
138
149
76
94
128
72
115
99
90
94
175
102
115
127
109
76
157
104
120
104
93
131
56
154
85
118
134
183
119
100
80
89
156
151
120
69
76
146
87
95
72
110
98
72
52
76
112
80
91
96
146
81
87
78
124
111
78
76
78
109
69
151
112
131
120
101
169
114
78
78
158
107
93
103
80
137
76
197
175
113
78
136
83
80
76
102
56
119
107
119
104
107
99
79
129
72
109
78
144
145
76
85
69
154
63
128
80
102
101
87
87
101
114
99
69
99
140
109
154
169
78
129
85
93
131
109
80
117
102
67
92
76
74
110
102
175
187
163
104
109
77
98
96
76
128
85
110
131
101
185
94
96
87
89
75
67
154
181
93
121
199
99
100
172
136
56
72
76
80
107
69
87
136
106
106
122
120
87
197
109
106
90
120
175
52
109
154
117
175
117
80
101
93
93
107
160
88
149
101
96
76
107
76
80
69
131
76
69
117
74
143
93
145
78
80
112
85
80
104
116
78
124
54
69
185
87
76
145
62
72
78
104
96
80
80
75
97
87
138
140
139
72
94
119
107
175
117
137
76
93
117
74
107
164
104
80
112
80
87
88
112
144
126
69
128
69
59
104
81
69
153
120
76
102
89
93
112
115
121
117
102
64
136
110
101
100
118
118
106
139
143
69
95
102
129
110
80
83
117
74
83
114
144
89
115
107
99
152
91
199
151
139
100
147
152
120
95
146
101
107
121
80
80
89
74
91
145
113
128
80
78
74
69
95
80
69
121
107
84
154
148
96
156
99
175
80
133
107
80
109
119
87
106
137
107
99
80
64
109
152
137
154
146
104
118
78
73
88
76
119
80
120
122
134
116
154
154
111
74
107
66
136
147
69
100
98
96
119
69
66
88
87
113
98
96
107
175
87
112
108
89
145
138
87
122
136
156
69
101
134
149
76
175
93
129
155
104
69
74
122
120
109
101
94
102
94
113
156
146
94
145
123
120
69
134
129
80
195
106
78
80
201
140
119
80
137
99
96
99
197
69
88
80
89
106
87
178
96
96
89
99
80
169
111
107
68
78
133
78
78
119
87
88
85
107
110
152
71
96
80
67
119
102
93
145
93
76
80
54
126
69
94
126
68
80
107
80
94
98
64
143
80
57
76
175
154
129
96
69
121
113
69
129
99
119
97
136
88
162
126
69
85
80
118
69
69
52
58
78
119
140
155
107
131
89
80
133
119
76
101
94
109
106
80
43
87
110
120
120
106
85
76
110
78
69
95
123
56
175
109
120
103
78
89
87
140
121
104
101
104
80
134
175
124
127
106
109
80
74
69
69
128
132
139
74
88
99
120
136
175
118
76
78
43
74
83
154
112
147
134
80
152
117
115
78
126
80
80
69
94
120
89
96
80
78
107
126
104
137
99
88
63
80
125
123
117
101
87
80
87
115
106
76
136
119
136
80
157
151
78
69
64
106
121
80
99
109
99
87
175
145
98
80
87
119
110
79
135
79
155
125
118
140
93
91
92
87
89
120
76
110
103
123
80
52
76
102
106
102
87
146
91
154
137
101
80
143
120
108
87
107
119
69
203
92
129
80
135
121
151
76
79
121
54
128
69
80
103
99
108
69
87
112
186
80
117
152
183
99
76
134
136
128
78
80
106
114
126
69
69
98
94
87
99
80
108
76
69
120
87
110
78
150
160
140
120
91
78
134
119
137
163
93
87
106
129
83
127
95
67
104
121
123
113
83
91
69
93
140
163
123
87
175
106
75
117
100
80
69
133
118
115
140
102
109
99
119
112
87
100
111
74
101
156
134
110
117
114
138
152
91
54
52
80
88
121
110
134
69
74
69
69
128
94
137
76
111
143
87
80
107
89
136
99
91
102
80
127
127
106
69
103
72
123
165
90
112
98
94
112
96
80
87
128
93
89
69
99
120
79
69
160
124
92
94
98
122
128
197
120
76
98
97
156
103
154
69
110
80
110
80
118
119
69
81
154
155
154
113
72
107
73
109
163
108
102
174
69
69
152
175
109
215
88
99
69
52
77
149
69
75
156
112
78
95
69
127
137
99
124
111
96
127
74
69
87
154
93
69
155
137
107
129
76
174
175
89
78
69
146
111
134
112
78
119
143
175
107
79
63
156
109
52
119
134
112
98
69
134
85
143
128
104
137
119
87
131
120
54
175
76
109
59
80
78
93
128
96
122
96
69
175
156
185
120
156
94
159
91
138
146
93
89
80
69
157
119
87
90
119
154
119
107
75
87
126
175
131
80
119
134
76
131
87
104
89
89
140
134
136
139
119
140
88
100
131
74
76
126
134
128
134
111
80
113
94
69
119
109
119
99
56
115
136
131
136
137
99
115
119
74
155
133
117
80
107
146
175
94
71
80
117
80
80
104
75
80
87
142
128
83
69
80
99
89
152
109
103
119
131
163
93
87
80
79
69
154
86
109
130
111
111
107
91
93
78
123
99
69
89
117
106
69
87
88
110
89
145
110
94
81
143
88
126
163
52
109
43
139
80
76
120
137
120
137
104
69
69
107
83
107
154
80
163
102
140
105
87
101
95
64
157
87
90
80
131
59
107
120
85
146
119
52
80
134
110
117
154
124
134
72
119
69
69
175
117
107
80
94
121
82
104
69
154
164
123
96
108
132
122
78
107
79
122
146
117
72
117
115
119
88
123
109
136
136
118
99
83
104
131
113
80
125
106
90
136
69
119
119
76
160
72
78
80
107
119
119
111
69
93
119
157
74
120
83
121
101
112
80
138
87
78
120
111
78
80
130
104
82
132
115
169
72
80
69
59
67
80
89
80
96
80
126
88
80
137
89
96
76
113
96
121
80
104
87
119
104
100
121
150
102
78
69
87
119
54
117
115
104
85
89
69
128
109
137
132
113
69
121
74
164
138
97
107
113
89
123
80
80
145
140
117
131
117
133
102
122
88
110
93
126
52
104
127
128
94
128
197
146
139
156
69
140
96
78
96
79
123
109
69
96
69
121
80
72
96
89
91
137
80
107
80
80
109
87
87
85
123
107
156
69
119
80
172
80
89
133
94
137
158
132
87
134
109
78
104
80
113
69
125
80
69
120
115
88
110
128
112
80
88
113
89
123
69
142
106
78
147
99
94
108
119
94
148
118
119
69
74
146
102
72
151
119
106
181
123
78
72
123
131
89
121
75
103
152
98
124
80
157
107
134
118
94
121
80
80
124
107
121
128
172
98
115
117
93
110
87
89
57
93
89
99
136
66
87
159
112
72
128
140
156
101
117
105
128
165
120
103
85
54
76
114
122
122
156
114
76
105
113
95
156
78
89
122
134
69
112
52
121
105
156
78
99
113
119
177
131
92
133
101
127
80
72
99
117
93
80
102
69
69
87
133
80
138
147
164
163
100
197
109
67
109
152
78
143
156
101
112
89
76
154
136
155
85
90
80
119
117
74
69
80
115
88
97
87
87
156
119
69
87
105
69
127
140
112
109
78
87
113
103
110
134
80
78
115
85
87
101
152
115
78
69
107
118
128
69
109
94
140
163
87
109
151
134
96
114
98
107
118
116
80
175
110
115
94
87
59
89
72
129
99
119
109
91
100
73
95
148
106
133
175
80
69
87
80
80
151
91
74
56
119
106
109
131
125
80
98
119
73
69
151
115
128
78
98
103
98
102
106
73
123
183
120
183
89
69
87
101
155
140
107
69
103
154
84
80
112
78
68
137
99
80
163
115
93
155
85
117
106
150
91
134
128
72
75
85
137
114
117
106
78
87
69
89
87
132
107
71
78
120
175
87
156
88
109
110
119
87
87
114
87
69
129
103
122
122
76
132
99
113
151
126
155
120
122
104
52
119
117
78
112
91
121
134
80
109
106
80
175
69
89
135
87
121
131
71
181
99
104
112
64
128
136
110
76
85
119
76
80
108
102
112
131
99
78
106
129
52
103
87
78
94
97
136
72
107
109
140
85
113
89
134
155
112
69
80
95
147
83
96
80
94
128
120
135
78
197
113
119
154
119
104
80
133
175
74
80
142
88
80
120
121
154
99
111
144
96
80
81
106
98
69
121
110
121
87
126
89
175
74
89
78
163
117
127
100
107
104
99
91
133
129
197
72
72
128
76
93
136
137
69
72
111
71
145
87
131
80
52
133
120
93
197
101
138
104
107
126
89
172
146
131
164
104
157
120
80
78
78
87
146
78
88
119
131
88
134
103
103
97
161
89
134
120
122
112
52
109
142
131
78
78
146
78
78
76
54
125
80
99
109
131
138
96
152
99
128
71
164
78
109
69
95
128
80
106
88
69
114
79
150
78
131
94
97
87
69
87
99
117
109
133
89
72
121
110
80
109
69
113
164
69
88
120
132
111
143
54
97
134
151
107
112
127
119
69
110
107
110
93
117
99
93
172
80
112
104
124
80
89
117
140
144
104
140
151
54
91
89
120
121
126
120
112
80
119
69
78
98
83
119
119
101
80
69
52
110
126
103
159
76
74
119
132
101
127
156
80
166
115
99
164
107
87
93
54
134
80
78
162
117
136
156
64
83
54
106
87
90
134
154
95
97
107
156
88
120
109
119
104
88
121
92
76
106
43
134
78
80
115
116
75
115
75
76
126
74
80
69
69
43
113
69
113
69
76
134
107
74
80
96
123
87
110
69
83
107
178
69
80
120
69
93
104
197
131
129
119
80
121
87
102
80
87
93
109
175
89
125
113
209
92
105
107
87
69
68
197
87
52
87
125
98
80
110
92
142
56
155
120
156
154
117
128
119
103
91
166
76
87
175
109
134
114
74
120
118
128
99
109
96
69
112
98
89
114
109
113
80
120
99
145
78
109
76
66
69
127
80
118
87
78
87
122
80
130
144
88
69
112
125
117
107
134
112
119
87
102
67
80
69
144
197
143
80
136
163
109
69
78
133
92
141
107
78
69
80
94
155
175
115
87
54
99
114
119
131
109
69
182
87
112
155
119
119
89
89
85
145
99
148
80
78
121
72
99
123
76
146
78
80
69
99
123
120
154
110
80
132
105
86
107
76
127
116
128
110
72
111
129
126
134
80
87
80
88
87
145
135
138
118
119
134
88
78
87
85
78
126
76
121
140
112
107
87
78
77
69
129
69
91
121
117
119
132
148
104
83
96
129
156
78
69
52
104
90
80
108
87
69
102
93
99
89
85
109
128
175
76
69
80
72
124
127
117
52
88
96
128
118
78
69
155
72
107
100
76
76
133
123
169
118
110
93
126
146
69
80
136
156
94
68
80
87
113
88
80
110
104
87
80
138
112
96
90
87
145
74
76
102
69
119
108
134
136
80
136
93
78
80
138
143
80
175
106
134
94
69
94
69
127
112
115
91
96
69
119
88
100
80
106
87
107
88
69
85
143
114
78
56
52
128
110
120
80
106
132
76
107
141
136
120
163
111
69
114
110
74
89
98
127
102
110
69
69
120
69
129
121
101
69
69
56
140
106
113
76
93
87
93
175
137
135
126
110
110
69
80
91
72
99
137
119
87
89
114
72
89
79
91
112
115
199
121
80
102
142
126
82
117
125
197
142
121
69
121
78
134
125
137
78
151
154
121
114
107
111
154
104
80
134
107
94
76
93
99
69
108
87
127
76
87
130
113
118
107
91
69
125
135
117
101
113
110
107
89
163
80
109
76
87
154
108
106
129
155
106
120
164
72
115
72
120
114
87
69
110
137
80
76
64
141
67
88
124
131
141
69
117
101
76
76
118
149
106
72
87
110
119
111
96
136
124
106
109
185
122
102
111
87
101
150
110
117
99
78
80
131
99
122
117
119
119
80
87
79
106
131
102
100
109
104
80
92
78
112
78
78
87
69
72
186
78
76
109
71
80
118
52
78
118
71
127
89
76
88
119
88
127
69
94
101
72
110
88
184
119
121
76
112
127
87
140
84
140
122
156
103
119
119
110
114
107
151
73
107
154
87
89
76
140
87
112
120
150
69
119
154
87
91
87
87
111
151
69
128
156
89
120
120
69
92
99
136
91
69
127
101
99
138
120
93
80
119
91
151
109
83
173
94
175
87
64
156
115
175
87
96
80
67
88
80
122
110
148
146
69
91
90
54
69
119
91
114
91
95
143
60
80
89
151
81
80
156
140
88
165
83
94
88
90
144
109
113
80
141
82
72
175
119
112
87
121
59
99
87
99
80
99
133
111
117
96
125
109
99
80
100
69
103
131
88
117
175
151
102
104
96
149
99
119
88
156
76
93
119
94
136
154
109
113
87
104
113
134
141
96
72
76
174
98
69
115
113
151
97
109
126
133
80
69
80
72
79
115
163
71
85
69
166
110
80
113
117
96
99
105
112
126
78
76
101
69
143
107
115
83
136
80
100
117
112
134
99
89
69
124
133
99
154
121
88
58
91
118
113
140
106
72
104
100
88
96
140
97
76
104
162
78
121
80
87
128
87
118
80
59
101
76
111
134
93
69
86
136
80
140
156
128
115
146
154
89
89
93
92
69
120
78
130
154
170
69
80
175
94
80
79
107
136
110
104
107
145
79
148
128
90
120
99
80
94
111
102
87
69
121
96
80
80
107
80
119
113
92
78
118
140
106
78
144
107
187
143
134
107
140
120
112
93
69
118
111
66
153
79
74
92
154
128
78
74
179
78
119
154
152
104
147
119
138
69
98
101
155
108
101
98
80
117
104
147
112
80
89
52
197
87
78
119
116
99
121
145
80
85
115
80
106
80
112
138
94
76
80
83
104
94
71
109
144
157
78
150
91
119
134
69
119
87
69
134
109
80
87
128
80
120
80
80
90
89
76
154
106
132
112
134
122
69
112
110
89
54
80
89
104
174
107
99
112
72
98
107
111
104
129
99
99
80
54
69
82
74
151
130
94
117
119
120
134
131
120
87
107
127
115
87
128
120
76
114
96
99
72
131
88
134
119
85
140
136
69
96
78
106
110
109
120
115
94
91
107
99
109
175
148
110
90
118
172
119
56
127
148
151
85
113
88
136
94
80
109
80
63
175
72
97
163
78
87
76
99
113
134
128
89
101
78
81
132
106
80
113
120
78
69
69
89
76
87
103
124
88
199
80
153
113
107
96
130
106
110
80
145
76
80
103
117
94
131
163
69
80
52
124
120
101
83
112
149
95
107
146
69
140
91
94
111
104
183
85
80
143
89
112
130
52
80
109
146
144
139
121
136
89
106
102
125
87
91
99
107
126
120
106
76
183
112
87
122
82
110
72
111
87
94
74
88
93
88
118
89
87
137
127
80
134
80
69
112
69
106
126
78
106
69
126
80
147
113
110
81
76
69
56
155
127
93
100
175
109
69
127
87
80
74
169
103
104
76
88
118
80
109
69
74
110
107
66
143
105
80
80
128
111
80
80
156
107
72
85
197
114
112
121
130
110
136
128
147
151
140
107
128
69
175
120
102
120
140
144
154
80
119
106
119
130
143
99
80
89
124
94
71
69
80
74
96
80
107
119
96
74
120
78
89
106
122
120
69
80
163
87
112
80
128
69
156
88
131
93
121
142
104
128
74
126
69
114
109
107
66
78
106
80
87
109
126
80
106
76
69
136
87
119
80
78
140
121
134
80
94
107
76
105
127
125
95
80
131
134
78
87
126
72
136
146
118
80
78
109
87
63
91
113
56
128
94
94
154
90
87
101
104
129
125
99
78
183
101
119
145
93
154
90
87
87
123
87
154
80
87
78
201
69
113
80
102
129
136
128
109
134
175
76
122
87
89
146
109
80
93
107
90
69
164
113
142
126
111
64
99
136
110
88
110
155
69
54
89
107
91
117
130
103
80
80
71
120
80
134
87
96
120
109
127
119
54
96
87
119
104
72
115
137
99
137
69
87
93
72
80
175
154
69
175
111
69
94
153
129
91
104
110
113
164
112
112
137
88
69
89
113
79
80
93
113
175
175
132
111
143
132
112
81
116
87
78
82
107
132
142
99
131
75
69
69
87
83
197
128
109
119
126
142
140
124
69
107
107
121
96
99
89
136
111
113
126
78
100
118
82
91
88
148
130
83
106
80
80
107
54
87
80
93
199
117
89
88
96
89
131
78
120
98
118
121
118
78
54
94
87
87
154
93
87
80
134
126
128
91
94
99
78
85
131
128
76
149
80
87
112
99
80
175
109
99
96
151
75
115
119
187
132
128
113
155
113
126
136
74
88
109
109
81
107
117
120
151
127
120
197
97
175
143
99
94
113
87
82
119
117
136
144
98
107
102
115
98
120
122
128
76
129
119
107
107
165
91
88
87
107
110
110
165
80
123
120
80
69
97
112
105
81
128
87
89
88
93
71
117
87
131
80
110
89
134
127
197
122
120
86
87
56
119
71
69
95
110
121
156
172
119
155
144
113
74
69
107
118
149
76
69
69
114
80
131
88
106
154
134
133
120
124
102
110
110
97
87
115
80
154
69
164
114
88
87
107
95
121
117
95
69
140
127
119
94
90
94
154
69
119
72
80
115
95
72
67
80
89
74
95
76
155
112
54
85
78
138
109
69
117
155
94
100
88
69
127
112
43
99
108
92
69
145
95
78
107
82
174
113
137
104
96
100
119
91
154
112
87
87
94
129
112
107
80
120
87
52
118
89
104
64
109
87
109
107
116
91
156
80
89
120
118
140
87
80
87
93
155
94
74
69
69
80
87
146
164
115
128
131
88
112
88
117
66
71
69
113
85
131
147
103
131
147
120
76
132
106
174
141
95
137
129
142
76
78
163
122
78
175
87
80
72
137
104
69
136
151
97
143
110
110
79
76
78
101
69
119
113
89
125
114
107
80
90
134
127
114
107
122
69
120
124
109
118
89
101
74
90
120
107
110
127
104
119
85
87
112
144
89
76
101
88
160
154
80
183
54
100
76
109
78
94
124
69
119
110
104
91
95
63
78
129
94
80
133
101
80
88
94
136
107
201
89
78
93
80
122
94
175
56
90
104
78
94
116
94
127
87
145
87
106
80
88
197
107
87
67
120
58
78
175
128
69
96
107
80
80
88
175
175
106
104
93
78
106
112
78
107
88
94
134
119
78
92
80
142
146
78
56
96
119
94
74
113
91
99
134
88
96
72
107
96
80
99
136
94
80
121
102
145
108
104
154
147
69
132
128
121
101
96
104
130
80
147
76
78
111
87
100
89
64
118
119
87
80
67
123
93
116
128
131
80
113
78
119
78
69
172
100
144
87
69
134
69
76
87
92
133
107
93
87
136
93
120
111
100
127
98
102
80
102
87
78
134
119
120
113
139
80
76
69
131
89
87
197
76
78
125
119
117
88
69
78
119
151
69
175
76
94
118
115
119
153
111
151
113
83
121
107
120
72
123
145
78
131
131
80
89
78
111
78
121
69
136
87
80
121
110
94
90
113
122
72
131
131
87
163
149
101
54
104
89
56
181
169
104
144
118
99
122
78
91
151
150
126
76
178
109
181
120
76
130
130
80
144
119
78
92
154
154
69
69
103
80
80
107
146
145
64
163
137
120
111
143
127
69
87
175
87
87
94
163
136
104
197
80
98
70
128
124
107
78
110
175
58
76
120
54
118
136
131
94
71
80
56
54
109
101
89
88
79
78
80
108
143
82
121
87
88
69
121
107
69
80
119
78
110
110
83
154
87
131
154
72
99
69
163
69
164
92
89
80
80
132
91
119
68
151
79
84
117
110
134
98
119
96
146
104
164
87
119
123
85
146
80
78
118
163
120
69
89
78
43
101
80
121
99
76
104
80
93
99
128
107
113
127
103
119
140
72
107
113
80
104
91
101
72
89
87
69
110
110
96
80
107
94
99
151
69
156
76
155
89
80
104
127
63
109
119
94
142
79
145
106
130
101
128
56
144
85
106
185
87
96
80
69
112
69
100
99
107
102
96
91
121
136
107
119
52
126
106
154
87
137
164
136
93
111
83
92
114
144
78
109
128
146
87
114
135
74
91
104
119
146
109
114
52
110
175
80
93
132
88
93
69
146
115
118
91
152
107
107
110
52
99
145
128
54
80
131
153
78
112
87
94
146
96
76
96
80
155
93
74
145
80
99
78
112
78
72
87
85
175
120
109
69
121
109
121
121
91
119
80
69
108
76
201
154
78
72
66
114
91
110
154
124
76
96
99
96
172
110
87
69
152
71
52
84
104
69
80
88
102
89
80
93
87
125
151
102
80
69
143
130
88
69
126
145
80
121
99
133
171
69
87
80
74
90
137
94
106
87
72
111
120
80
69
119
131
69
88
80
153
128
160
106
145
91
95
128
118
120
140
152
119
99
104
151
151
69
134
101
87
106
93
119
143
96
100
88
87
143
128
87
149
143
94
89
99
69
94
156
113
87
150
145
128
80
78
66
124
126
146
175
91
87
87
126
147
69
102
112
110
120
117
131
76
151
122
80
127
146
118
85
78
154
89
80
144
128
118
76
80
80
118
201
154
106
107
159
78
156
118
117
137
102
131
78
87
109
95
136
78
115
133
93
80
97
68
91
99
120
130
175
151
102
76
109
128
88
107
84
90
160
144
139
146
119
110
78
128
104
69
102
80
175
136
121
109
105
78
101
54
124
156
87
107
175
69
104
78
87
69
120
82
87
87
76
110
80
90
120
69
113
80
161
89
175
123
80
134
140
80
136
104
92
118
107
52
129
127
56
74
88
80
146
91
94
52
69
157
120
197
149
134
69
78
129
80
69
118
78
119
78
117
74
69
87
89
104
109
104
103
82
118
120
93
87
80
99
87
71
69
99
115
134
117
117
104
101
197
94
148
80
95
104
120
96
92
94
57
87
87
134
94
128
116
99
99
79
88
148
76
114
123
69
134
76
120
80
175
118
154
107
80
128
127
119
127
144
68
87
80
88
78
85
185
110
69
134
126
101
118
91
109
131
69
69
80
87
109
120
91
119
69
69
107
88
69
87
87
95
120
154
69
128
76
69
132
69
156
91
87
69
72
122
197
122
131
80
80
69
99
80
119
125
67
137
142
88
69
104
163
80
122
74
156
92
43
69
82
76
128
156
69
76
152
78
115
113
113
157
56
96
94
89
101
109
108
133
80
69
132
128
104
114
156
162
73
143
117
146
80
69
69
123
99
80
118
91
91
175
78
114
76
72
145
87
72
107
96
112
75
87
99
78
80
154
69
111
111
88
74
76
119
82
56
104
138
148
132
83
117
150
76
205
103
107
78
88
138
154
154
69
106
104
104
156
120
107
162
130
69
104
134
122
79
123
134
88
80
87
88
72
109
87
87
106
101
155
111
100
147
137
91
69
169
80
78
69
88
137
160
99
92
104
101
83
102
107
80
76
106
80
115
147
175
143
87
119
107
84
134
159
107
93
87
87
87
91
106
100
134
114
151
111
115
69
84
117
119
100
142
80
183
109
78
67
201
149
72
107
100
119
69
121
149
134
128
87
93
197
103
134
80
134
91
52
135
72
111
66
103
101
106
69
101
80
96
126
136
96
103
80
142
136
94
99
93
110
87
99
99
128
104
87
119
134
87
109
120
120
154
88
106
80
128
121
117
127
94
110
107
95
111
89
78
59
88
69
112
87
134
88
147
107
155
74
111
119
150
126
120
135
140
127
121
85
140
145
87
112
175
122
140
109
140
87
88
79
89
87
69
128
209
102
101
100
109
128
110
117
123
80
88
80
80
69
110
88
80
119
99
90
134
150
113
69
145
97
120
69
104
91
76
123
155
119
109
94
94
69
153
139
131
101
75
91
69
118
69
128
76
94
109
94
93
131
98
80
104
122
145
94
80
132
76
143
78
106
80
119
99
110
156
134
77
112
119
69
122
69
126
101
69
94
145
69
78
91
94
69
154
110
107
111
94
121
76
72
119
143
100
87
71
136
151
110
179
142
87
82
119
94
80
78
197
92
120
160
134
115
76
94
93
122
126
174
146
154
115
80
87
80
138
54
123
109
94
80
110
185
78
99
75
119
141
94
78
87
201
119
103
106
91
87
128
94
115
102
118
67
132
74
88
118
78
154
128
98
96
128
76
79
139
78
121
113
89
80
95
80
106
90
94
145
131
121
107
112
95
106
118
78
69
102
110
99
104
119
110
69
101
99
93
76
117
128
119
78
80
80
101
69
87
128
113
107
107
96
87
96
117
119
121
99
138
80
109
111
109
75
78
87
87
69
54
148
91
119
69
143
109
78
175
87
183
110
69
96
109
67
145
155
80
107
101
119
87
154
69
90
132
117
100
114
71
136
121
146
121
116
118
80
112
124
106
69
119
69
72
111
88
175
89
151
175
81
102
109
120
91
80
69
94
117
106
94
114
104
128
130
111
71
109
80
155
99
120
80
78
176
130
80
155
87
111
69
76
110
115
121
185
108
154
88
124
87
134
102
80
121
72
100
99
156
87
156
106
146
114
115
120
166
130
129
78
137
85
121
89
106
117
78
87
78
172
142
164
127
69
69
87
146
134
54
131
175
129
118
85
134
78
69
135
89
156
175
69
69
99
120
110
78
134
134
68
69
69
140
119
197
131
99
69
76
140
143
76
109
122
72
94
106
74
80
87
90
138
154
140
78
96
119
87
99
154
121
155
151
87
115
99
101
131
115
117
72
126
124
69
73
94
109
94
110
113
87
69
164
80
111
89
93
56
111
72
119
136
163
160
87
85
103
140
175
76
109
69
82
79
127
87
87
147
131
102
72
156
155
136
69
134
106
91
156
84
104
99
99
96
119
76
156
121
130
146
140
63
80
95
89
151
120
81
88
140
94
156
80
107
137
84
107
133
154
98
78
125
96
119
136
76
78
92
196
56
113
119
89
74
113
89
128
69
80
76
66
131
119
114
69
131
94
110
122
69
151
126
109
80
120
101
102
169
76
109
87
140
80
126
112
197
69
95
88
107
109
78
137
136
128
138
132
72
120
153
126
76
136
88
112
117
100
128
88
117
76
72
131
67
80
154
127
127
72
90
76
129
90
98
172
156
118
118
76
131
87
99
175
76
120
119
113
160
83
113
93
155
69
175
140
117
109
117
95
131
89
107
125
107
78
112
80
87
197
94
89
79
118
80
109
89
106
131
87
123
107
197
140
95
80
69
74
136
121
112
78
74
98
128
117
78
78
110
78
147
131
119
106
80
133
120
107
140
119
117
119
201
80
175
80
107
93
87
199
88
166
104
119
185
144
69
69
86
74
110
136
130
107
78
161
78
99
87
123
100
96
131
78
74
93
117
86
136
85
89
129
151
91
121
94
136
99
78
69
122
88
80
89
115
76
124
76
117
87
54
78
78
147
181
133
89
104
125
156
129
78
80
99
91
112
76
78
107
119
115
148
119
72
112
69
103
86
121
107
131
128
108
116
80
132
87
104
80
121
137
128
69
106
80
119
78
137
106
78
119
69
155
197
80
113
120
80
66
118
133
60
131
93
110
128
80
80
93
146
126
121
69
134
87
155
83
163
79
80
148
116
87
128
96
89
91
156
126
91
136
62
54
76
76
118
145
128
187
114
43
113
94
56
115
145
109
122
98
80
80
80
139
76
80
69
134
80
102
109
87
82
80
87
155
93
100
80
91
94
102
99
109
100
126
175
137
175
78
114
107
78
90
93
183
78
89
149
120
74
146
130
133
99
174
67
110
72
140
155
102
121
88
120
134
162
52
88
134
128
54
106
69
115
110
128
131
80
123
149
137
131
87
87
69
87
122
106
69
175
110
92
126
80
89
118
121
122
93
72
78
79
88
159
96
131
88
99
69
69
85
94
110
72
80
80
109
130
109
56
92
87
94
96
174
148
124
107
80
88
80
129
84
68
118
99
85
136
112
87
119
80
89
136
117
89
140
80
78
183
101
104
113
144
89
154
94
68
69
100
102
130
153
107
80
107
128
140
122
93
106
80
109
134
103
107
80
104
78
80
89
104
140
130
95
93
137
118
87
102
156
99
121
112
140
104
99
87
103
110
156
148
175
131
120
122
127
135
104
128
151
106
164
175
76
63
131
104
121
156
89
140
69
66
120
80
102
136
113
101
151
88
134
90
134
127
110
80
104
96
80
104
107
58
95
91
107
80
91
72
69
112
103
71
120
113
94
80
146
96
155
89
89
94
74
80
110
69
102
80
94
119
136
69
113
120
122
80
80
130
80
92
69
107
106
174
128
155
99
116
89
88
88
80
121
87
80
113
69
134
125
78
66
107
76
117
78
76
137
76
111
134
91
163
119
134
56
88
80
63
112
106
89
106
96
92
109
130
100
107
125
129
88
109
154
107
107
87
114
99
99
154
112
112
78
107
137
89
80
88
131
151
72
119
106
87
52
84
122
69
117
120
69
121
113
110
90
88
98
94
89
80
69
69
128
95
69
112
80
87
158
76
91
94
155
80
80
56
80
111
76
93
91
76
119
76
120
78
137
87
115
93
94
80
119
80
80
80
175
154
104
111
119
69
74
87
54
94
91
109
80
95
80
102
141
106
140
99
91
76
110
83
80
110
115
120
172
80
66
76
106
76
80
126
106
72
103
69
165
88
148
99
96
100
178
78
87
88
83
175
107
74
80
76
109
107
125
112
129
88
101
120
91
120
102
107
93
100
127
148
114
78
115
54
80
78
145
89
112
174
87
76
107
105
80
54
120
121
130
78
87
87
54
134
121
118
80
80
197
74
80
102
112
89
99
72
80
88
91
133
113
79
137
140
88
80
88
107
137
110
193
119
87
136
80
107
99
69
109
109
69
151
80
74
80
113
129
131
80
76
117
146
121
175
113
90
137
107
112
119
137
175
174
121
128
110
99
76
107
76
110
106
106
164
89
140
87
142
132
80
152
87
87
110
80
104
102
154
109
110
131
88
89
110
150
117
154
96
80
76
107
116
90
154
69
107
148
89
56
80
140
136
87
87
104
105
78
162
91
95
73
80
101
54
114
110
69
111
109
131
106
80
88
78
80
197
96
56
91
154
76
91
96
117
69
80
132
91
128
145
117
129
69
147
98
181
105
99
125
119
80
99
78
104
130
128
127
67
93
99
66
136
72
89
122
89
80
112
103
121
109
118
152
85
78
80
119
69
132
102
156
93
156
131
135
185
122
104
101
155
52
80
127
78
156
83
144
102
127
119
154
109
121
87
123
89
117
138
113
117
89
78
125
119
117
122
113
154
117
58
122
106
119
140
69
120
88
131
69
87
69
120
69
75
80
96
104
83
69
100
69
75
122
72
87
137
80
110
110
89
101
75
63
120
87
120
119
103
121
71
102
87
83
120
154
110
122
78
74
93
87
96
114
134
120
99
88
119
91
103
157
99
78
106
175
59
119
109
72
80
95
126
119
113
80
101
137
80
175
131
69
120
154
107
95
80
110
67
130
76
69
91
94
71
87
78
120
85
133
197
133
78
69
81
81
130
109
120
93
78
85
80
101
94
87
145
96
76
110
201
119
76
101
119
120
133
72
91
72
59
94
106
163
74
80
76
107
80
116
113
69
69
152
114
145
64
109
80
80
108
80
87
91
85
119
156
104
99
69
114
112
144
109
74
119
88
85
119
94
87
89
80
129
151
69
89
131
125
80
96
155
80
87
125
113
95
94
81
78
80
143
80
74
118
131
88
94
99
110
76
136
134
85
107
119
100
80
56
87
76
95
93
131
73
104
43
80
80
93
120
52
96
156
127
104
154
52
80
104
136
78
100
69
69
128
119
94
102
197
145
69
118
123
88
134
88
87
115
69
142
85
104
82
104
121
138
154
118
76
100
143
120
97
110
89
52
110
52
154
58
136
117
74
123
136
131
119
115
136
117
120
78
74
133
80
96
126
175
89
124
91
119
117
155
87
74
114
76
143
89
73
155
106
123
71
69
75
79
80
101
101
140
140
112
76
80
128
100
112
111
131
136
91
56
125
114
128
137
101
101
80
145
134
43
174
87
122
96
83
123
69
43
96
119
143
160
90
154
149
136
136
93
197
126
130
104
99
107
164
87
72
91
121
148
152
87
134
80
76
69
118
78
114
175
128
80
89
69
80
102
122
139
85
110
106
78
128
109
121
87
119
95
69
89
106
105
76
175
112
72
78
107
119
52
166
117
76
92
96
158
120
187
87
80
80
80
134
174
76
78
110
119
59
80
110
80
133
72
93
128
160
80
76
110
127
103
106
72
117
133
117
103
78
88
150
155
80
80
80
67
122
87
129
80
69
76
76
54
99
114
155
80
99
80
78
89
89
140
89
154
104
133
152
88
99
101
74
78
69
87
120
146
69
87
112
154
154
80
132
99
123
74
146
136
89
112
154
94
111
76
78
136
78
156
110
76
101
78
125
74
87
134
69
80
102
151
163
131
106
133
120
102
162
72
69
110
95
146
69
129
97
76
80
121
100
99
156
89
80
134
69
72
113
78
181
120
119
97
183
80
127
67
80
106
109
69
118
69
119
119
128
80
175
69
80
128
76
110
88
69
99
118
72
123
87
69
121
136
94
144
108
104
120
102
121
100
110
118
69
106
119
93
94
103
111
137
197
140
69
89
80
199
112
54
131
103
143
85
120
145
85
89
103
80
140
69
154
127
78
155
107
197
69
148
69
101
128
129
112
128
87
52
76
132
89
106
112
135
108
43
110
134
78
137
63
83
175
69
80
88
114
134
95
69
99
124
149
101
100
140
85
69
131
128
120
74
93
87
123
140
80
78
76
137
54
118
69
76
109
94
87
110
120
94
98
163
71
104
145
87
104
71
119
60
88
69
87
101
80
80
118
138
69
78
110
156
69
114
101
110
166
88
112
54
146
144
165
80
81
133
69
186
89
78
88
138
110
85
113
96
85
83
120
69
80
87
128
140
90
151
90
127
140
120
76
94
101
197
109
92
78
119
69
125
52
83
90
80
124
107
113
109
129
85
137
67
120
119
93
151
82
122
95
127
76
74
80
56
138
76
106
89
92
113
95
75
140
78
165
151
74
76
64
131
69
107
78
140
128
106
69
76
126
136
87
88
88
107
117
96
84
137
155
73
99
109
72
130
87
91
110
87
142
80
113
87
140
124
54
69
92
114
69
80
122
76
87
117
123
107
106
88
106
69
147
75
119
87
74
120
175
79
101
113
118
72
80
88
106
66
197
91
85
109
109
117
80
110
69
121
117
143
69
99
175
96
145
152
129
87
109
87
80
122
93
80
104
143
151
94
96
69
89
76
123
106
107
124
121
80
136
119
215
78
175
87
154
121
78
87
114
80
99
80
114
112
88
88
154
78
108
80
113
102
181
163
119
87
175
88
70
77
78
102
80
91
142
109
111
99
120
112
80
138
80
96
125
99
69
87
143
87
96
136
69
148
115
87
175
130
72
114
113
143
94
113
104
115
108
107
89
138
88
136
119
120
80
80
110
131
105
76
141
111
104
71
155
85
94
140
99
109
148
145
80
175
80
69
91
89
80
160
111
71
78
175
183
80
148
113
136
120
111
87
107
95
94
119
87
82
69
120
80
134
131
80
110
104
185
100
69
52
154
69
112
119
106
107
100
80
115
119
72
80
93
109
69
80
143
91
88
87
94
107
110
69
138
97
75
80
107
128
69
112
69
80
131
130
80
175
122
119
175
94
137
164
123
110
87
120
90
155
120
94
117
115
144
78
89
119
76
121
80
114
100
154
130
107
116
80
137
140
120
87
114
146
109
120
113
69
127
96
75
155
112
80
111
130
80
78
151
76
134
89
134
114
120
94
120
91
85
101
119
148
80
80
104
111
115
101
83
133
56
103
175
99
107
93
119
94
119
107
119
101
123
96
112
106
119
112
140
118
175
88
78
89
126
123
123
119
77
142
99
89
139
163
155
107
89
107
78
92
99
134
183
123
118
64
78
112
98
125
113
130
43
107
104
69
99
90
80
120
87
99
119
109
120
115
69
134
89
143
100
94
136
69
199
143
54
142
120
118
96
122
80
72
88
87
143
129
101
151
108
94
80
114
69
175
136
117
128
109
99
72
54
116
75
120
164
144
88
109
80
96
134
69
102
83
133
91
120
140
109
144
106
151
69
76
103
175
88
118
124
69
104
94
94
132
121
115
134
120
126
67
80
128
99
129
110
118
125
119
130
102
128
75
118
80
78
107
76
128
87
74
120
69
69
145
146
119
136
134
112
88
183
64
66
96
120
175
87
137
108
85
128
101
142
85
90
89
129
97
99
119
78
109
175
80
80
107
78
72
104
145
113
120
112
72
80
115
105
76
80
88
69
109
117
197
120
153
197
154
114
91
78
87
98
72
114
120
52
56
131
107
117
76
93
138
89
72
69
132
69
110
87
136
69
99
69
80
114
121
156
146
104
118
93
54
80
112
83
80
72
74
94
87
123
117
119
78
101
54
69
104
87
78
106
78
154
69
78
103
92
93
154
122
69
127
106
156
95
95
99
124
80
114
54
95
120
91
120
134
154
131
58
123
129
121
80
131
175
153
85
136
96
80
103
106
101
133
88
94
128
128
119
69
99
101
80
107
126
115
128
74
79
99
52
129
129
149
119
128
154
79
119
80
121
131
163
69
148
134
112
88
80
99
127
134
138
175
115
83
117
197
131
69
155
121
134
54
164
104
69
110
113
94
80
64
119
119
91
121
131
100
119
94
119
117
149
80
131
91
66
106
93
106
181
110
87
163
110
141
69
120
54
102
104
94
74
100
99
104
69
80
91
134
94
113
88
107
76
120
76
121
79
124
97
69
99
43
126
112
144
114
69
88
102
148
94
80
132
88
136
128
109
114
69
129
128
125
156
69
69
111
89
110
153
109
175
104
119
80
74
87
119
59
80
125
127
137
138
107
131
140
102
127
93
123
91
69
117
80
88
105
117
175
78
151
124
80
69
72
123
94
99
80
119
69
127
104
163
69
80
72
72
78
120
74
102
69
154
128
80
76
112
119
80
175
89
78
80
163
87
136
102
131
107
80
163
91
89
124
117
140
93
143
71
69
96
99
88
80
78
151
149
78
157
89
95
117
87
118
76
151
125
134
83
89
119
99
69
80
69
76
154
103
81
76
110
78
93
155
69
94
69
120
75
154
74
134
163
145
102
88
95
115
134
152
109
83
96
80
109
107
113
69
185
136
122
110
119
69
101
97
99
88
87
109
175
134
87
89
90
87
145
72
99
54
75
94
78
89
119
85
69
135
115
117
99
175
73
118
89
133
90
87
103
69
152
76
52
121
146
94
75
69
120
112
122
94
89
78
92
110
185
119
99
80
80
85
134
74
103
129
140
107
80
134
80
69
134
125
145
137
69
130
113
91
99
106
127
78
144
69
154
132
95
112
90
187
162
94
118
144
84
113
144
121
72
155
128
94
128
145
104
124
175
80
120
96
85
106
80
143
110
123
128
80
91
80
120
155
94
113
120
111
69
136
104
134
93
169
69
89
163
72
88
175
107
69
124
112
74
106
127
89
80
78
114
109
120
120
107
98
197
151
163
120
69
87
163
109
69
102
78
80
115
80
136
110
117
89
111
115
136
122
102
117
69
80
110
144
78
78
150
120
78
107
113
124
174
113
174
69
93
125
87
104
78
148
94
99
154
130
125
125
127
80
119
87
80
72
92
69
135
109
80
146
89
187
90
80
69
80
128
131
94
80
56
106
72
110
80
110
59
197
121
101
74
101
126
89
117
52
134
80
109
101
69
102
87
91
112
128
80
131
163
139
128
127
106
121
121
112
145
120
69
66
128
80
64
123
93
107
119
175
106
114
82
154
151
120
66
148
87
125
140
154
104
99
117
102
119
76
131
113
71
74
163
107
176
164
82
67
107
109
104
166
85
74
113
120
104
185
90
134
109
80
120
91
67
80
99
98
88
125
76
78
113
87
106
115
76
106
155
80
174
88
88
80
87
128
117
75
136
87
142
121
106
140
119
80
148
97
128
128
78
207
91
128
133
99
112
146
101
69
96
125
72
123
94
128
175
107
117
99
104
106
122
119
91
140
99
80
69
106
197
80
109
78
175
99
69
102
80
133
116
78
151
113
69
113
113
87
87
91
121
128
99
76
97
80
81
145
66
106
93
69
94
87
89
66
88
89
77
89
148
88
106
154
88
76
74
78
69
94
93
136
89
93
110
86
100
76
85
134
80
118
88
69
94
85
133
146
119
107
64
126
102
80
106
76
67
106
78
89
76
69
100
104
137
119
94
69
87
80
76
69
122
76
140
117
82
106
142
87
76
134
59
128
88
89
131
137
175
130
143
110
80
98
113
100
87
104
119
127
87
125
99
85
78
127
132
101
136
87
120
88
140
69
80
102
80
145
122
113
208
113
94
128
106
111
111
88
104
109
120
106
100
76
127
118
146
117
85
69
76
78
69
155
110
121
128
104
120
104
146
120
145
88
98
110
130
115
126
80
80
175
101
87
122
139
100
140
156
120
100
56
54
131
119
120
162
69
69
100
87
136
88
95
80
107
154
115
91
92
107
88
113
73
138
76
154
80
89
80
117
90
80
80
80
92
72
121
151
124
69
69
78
102
78
90
109
136
78
69
107
124
81
127
123
96
95
80
94
154
76
126
109
136
124
101
106
69
69
132
101
92
87
121
104
155
82
134
159
87
145
175
96
112
104
121
89
139
132
88
54
120
131
88
69
98
146
185
197
69
103
87
120
99
69
76
56
89
121
159
78
52
138
140
201
89
119
78
80
69
127
119
89
120
133
119
175
163
148
156
116
197
78
127
87
87
133
128
100
67
115
77
136
87
109
69
119
69
88
94
109
119
126
80
131
126
87
104
91
142
118
155
93
69
140
120
103
122
88
100
127
81
91
119
93
87
146
80
153
87
134
69
99
128
101
80
130
112
165
76
52
99
87
140
134
102
69
105
107
131
107
121
94
157
120
76
104
127
80
43
87
109
107
119
100
146
127
100
88
119
78
163
103
152
132
80
78
106
87
127
87
69
104
80
93
76
89
80
146
80
136
175
109
114
113
80
89
108
92
101
67
69
175
80
93
91
175
175
76
69
123
76
80
175
54
140
114
125
107
104
93
80
76
132
72
110
87
115
144
93
99
156
80
88
122
121
164
98
154
99
119
160
76
115
113
149
185
105
80
119
69
109
80
94
84
74
138
133
119
131
107
85
80
120
64
143
128
89
121
119
126
69
144
127
123
87
80
93
93
156
143
107
160
104
131
79
111
112
132
113
121
113
80
137
88
156
104
77
151
89
110
104
87
107
181
91
147
175
76
174
120
127
107
117
127
134
80
110
175
163
96
174
125
75
99
119
162
131
134
88
106
80
119
93
93
90
197
99
120
79
154
118
112
88
88
118
117
146
76
117
106
76
134
131
146
113
156
93
120
80
125
160
76
112
126
106
100
80
78
129
76
97
96
69
69
98
90
112
89
78
105
109
87
134
87
69
54
99
109
110
94
72
88
106
80
54
94
54
154
155
80
89
83
72
80
107
99
106
78
69
69
74
93
111
78
110
140
75
69
146
156
127
120
87
181
130
87
93
106
88
96
103
89
113
91
95
103
156
128
99
164
107
88
96
107
76
80
78
119
80
69
76
96
166
99
136
106
121
123
101
101
121
134
127
76
137
100
69
72
154
94
102
72
103
99
72
138
80
87
184
114
136
137
88
68
89
80
108
80
87
148
140
154
96
136
72
126
95
99
111
154
100
85
128
113
157
80
90
87
89
80
76
131
175
164
155
88
78
119
94
111
109
149
80
69
80
134
116
96
100
89
95
160
102
127
76
113
120
52
126
78
156
120
115
89
119
107
80
175
121
109
101
120
93
96
112
83
109
100
104
152
54
80
126
80
131
146
93
93
136
107
143
107
95
112
112
128
95
138
151
162
109
80
79
87
112
119
90
115
113
156
175
69
80
56
88
145
128
109
134
131
88
147
136
117
99
72
80
63
80
94
80
80
107
110
88
107
183
72
87
93
78
96
113
140
104
153
120
80
175
106
121
134
119
52
89
87
76
80
107
119
113
83
74
119
87
79
88
120
146
175
97
120
94
76
131
125
106
129
128
80
119
80
106
99
156
69
90
99
78
122
133
78
80
54
156
83
120
80
154
76
101
115
154
155
87
128
94
69
123
94
104
110
183
140
139
136
126
107
87
126
112
87
117
78
54
110
80
113
117
87
110
85
110
108
110
148
127
86
74
78
76
64
102
69
88
98
80
132
99
121
69
80
78
78
118
93
113
95
106
152
155
78
87
80
114
69
76
78
151
140
112
115
117
129
78
74
69
87
137
78
99
96
134
175
90
109
91
156
136
69
104
78
93
87
88
175
151
89
117
102
151
134
93
136
145
127
120
91
80
154
119
154
88
92
121
133
141
102
98
96
66
163
104
137
76
142
107
80
96
121
175
104
109
134
123
120
56
93
107
75
112
93
76
109
87
136
76
88
134
94
136
87
96
76
57
110
87
107
119
109
97
128
127
80
87
80
136
76
112
129
110
113
111
87
80
87
78
142
102
102
93
74
69
78
88
94
76
89
69
107
125
80
88
96
109
151
106
69
123
87
94
98
104
175
146
106
107
89
127
78
87
121
123
80
151
134
99
69
138
76
128
140
162
78
143
153
175
94
68
74
97
119
131
87
112
160
133
120
128
120
74
87
80
175
88
113
80
96
69
87
136
69
52
114
106
138
133
72
115
112
130
175
82
69
136
81
120
66
80
127
69
91
112
80
79
80
104
119
113
88
107
127
99
144
119
134
94
69
72
115
80
69
119
128
116
87
78
119
82
136
175
134
132
69
69
148
140
76
91
76
134
87
80
72
118
66
93
140
136
78
107
120
143
80
102
110
56
101
72
79
149
88
154
117
133
127
154
109
99
70
69
142
80
128
154
69
78
128
88
96
102
80
87
127
67
100
78
69
103
87
93
91
76
136
127
106
69
88
101
74
52
125
78
164
154
99
118
88
134
119
78
80
88
85
126
160
94
80
134
60
76
74
80
104
80
109
120
153
87
120
91
69
138
185
109
91
99
156
96
134
147
138
131
113
80
118
119
117
76
110
137
78
137
69
69
80
136
87
117
119
109
91
111
87
72
130
54
76
154
185
137
120
89
124
85
116
154
120
99
69
89
78
154
80
114
80
87
134
110
104
140
71
136
80
54
80
131
109
112
69
88
89
80
144
91
99
80
94
72
91
107
76
136
146
110
87
106
89
96
88
113
128
125
84
102
91
134
110
117
156
175
79
76
112
100
140
80
91
64
87
105
102
174
87
62
52
110
95
110
101
87
97
82
101
119
119
69
184
120
106
109
112
110
109
138
146
148
120
145
131
108
78
69
128
137
80
176
163
80
110
94
69
174
80
109
131
112
143
120
89
152
76
110
108
136
136
120
143
131
88
105
146
114
79
80
117
99
113
119
145
119
101
121
86
99
80
72
69
77
118
76
69
109
163
130
76
148
175
90
117
87
80
78
82
107
128
96
69
76
99
83
79
78
119
169
131
107
87
140
87
137
87
128
128
89
76
80
106
115
112
175
197
87
143
89
93
136
107
111
156
89
80
95
88
87
175
88
117
128
94
69
80
119
142
93
120
154
60
112
69
87
78
126
96
129
127
112
78
80
109
74
127
73
147
112
80
128
80
93
76
154
175
120
107
164
114
88
80
119
156
107
69
119
120
99
76
112
160
80
119
87
129
107
112
120
87
111
80
151
120
104
112
69
128
96
110
99
87
145
91
76
147
69
87
137
136
117
76
94
69
123
127
106
175
80
80
66
80
113
78
148
125
69
87
114
69
92
73
95
107
96
175
123
96
87
91
151
80
140
140
114
106
116
88
80
164
89
101
95
144
92
78
120
126
69
117
145
80
155
113
136
101
104
87
130
80
134
85
59
108
89
91
156
118
69
115
89
128
72
76
80
88
109
132
93
111
76
83
80
110
80
128
76
109
122
99
80
60
76
115
98
119
137
148
75
93
107
72
83
76
134
90
88
71
151
80
88
133
113
76
57
163
120
121
56
138
88
111
93
106
85
111
107
154
107
99
147
98
80
87
185
98
113
110
140
100
163
76
122
114
72
69
92
89
80
143
139
69
111
127
152
97
118
113
111
104
74
175
74
156
133
130
131
67
114
112
117
43
169
113
172
119
80
76
110
117
88
120
88
99
109
127
140
128
151
80
79
117
151
118
121
69
120
78
69
128
107
109
86
124
87
169
136
110
103
116
99
99
80
136
127
104
156
136
119
112
107
91
175
128
165
89
152
88
80
96
87
91
145
121
128
144
113
110
109
138
69
74
120
119
162
90
151
76
154
112
80
131
69
127
142
126
154
56
175
154
197
150
69
99
96
69
90
108
113
151
151
88
80
89
80
78
118
120
78
120
102
95
99
80
144
105
143
145
69
72
110
119
154
121
76
69
151
122
123
128
94
120
121
69
88
92
126
130
112
76
140
145
69
95
99
102
156
165
134
137
96
117
106
156
99
80
99
110
96
76
109
107
93
148
111
185
154
143
88
175
88
157
109
94
89
109
106
89
128
80
99
110
69
87
151
97
63
147
131
128
78
100
112
95
120
90
131
80
98
146
78
76
119
106
89
124
105
110
110
131
156
98
80
78
113
107
74
69
80
175
71
87
113
121
113
74
78
80
76
160
123
120
176
119
116
104
156
116
87
110
110
128
123
96
78
91
88
89
85
111
106
145
82
148
69
78
83
78
111
69
137
80
96
80
87
197
88
156
76
111
119
140
94
160
76
110
145
119
155
87
117
89
119
76
131
87
93
78
106
153
144
137
80
128
107
80
128
125
91
117
125
163
117
155
113
88
88
126
85
80
80
107
111
139
76
80
162
124
87
85
100
52
80
114
81
106
104
117
69
109
78
106
73
69
91
120
110
127
134
128
154
138
88
156
82
88
110
88
76
93
112
94
130
131
83
154
78
151
89
134
80
109
69
78
134
91
136
91
106
111
119
144
139
135
110
156
69
107
120
154
110
112
140
69
119
156
52
93
109
56
89
80
109
145
111
118
139
144
117
122
109
96
108
88
104
69
87
66
80
104
79
91
110
99
78
175
69
78
69
69
117
117
103
132
121
56
76
131
96
154
90
106
109
140
80
76
110
75
76
96
164
93
137
78
107
197
175
116
80
102
69
64
94
117
80
128
110
83
89
78
69
84
91
87
110
80
138
132
94
117
125
87
112
117
183
110
128
155
132
108
136
126
80
117
164
101
87
118
104
154
122
175
181
122
119
76
87
109
103
85
94
52
113
121
144
130
140
125
117
69
96
78
107
78
87
155
98
87
159
110
80
78
150
109
123
89
88
104
136
101
205
69
120
109
128
103
127
79
87
80
112
82
110
127
101
110
88
110
112
117
72
80
155
156
118
107
154
123
133
131
109
67
109
101
85
69
121
157
104
131
126
69
72
80
94
69
136
95
145
175
117
80
83
80
154
123
122
120
105
146
99
154
88
68
109
89
117
108
77
80
89
109
112
89
69
175
154
93
79
83
134
114
109
107
87
117
126
119
88
76
76
87
89
109
113
136
78
119
209
99
181
154
151
101
69
104
75
69
91
155
126
117
131
120
109
101
84
64
140
152
80
89
154
93
98
93
151
136
69
80
117
89
107
78
78
73
69
100
102
121
82
80
64
104
110
94
69
78
140
119
197
69
69
121
82
80
80
89
120
112
119
140
75
101
112
109
74
69
88
89
56
87
85
110
104
154
155
98
148
112
154
80
80
69
87
119
80
107
76
90
87
80
80
156
87
136
89
76
72
113
80
130
104
87
54
89
110
78
93
120
87
107
52
130
114
120
80
80
89
93
127
113
126
96
82
75
95
154
67
137
94
165
132
107
69
175
112
117
120
74
69
106
54
78
138
93
106
128
91
164
80
101
76
104
120
147
132
114
96
86
93
87
148
127
76
64
155
78
109
139
197
129
140
85
140
109
107
118
129
87
140
127
78
154
85
174
109
144
110
137
131
136
151
69
154
81
102
80
120
80
124
113
78
156
154
89
155
101
119
119
89
76
99
119
87
140
154
96
148
80
97
72
87
112
72
101
78
69
131
131
123
102
117
143
88
140
87
126
89
90
114
72
104
120
156
80
87
78
127
89
107
132
197
107
102
69
109
128
99
146
69
100
128
107
101
101
119
80
80
197
186
109
76
94
93
122
172
100
87
76
118
126
131
88
120
136
102
140
80
133
124
69
118
99
88
87
119
78
111
104
120
78
111
85
112
87
143
87
154
175
136
110
115
117
140
152
79
103
119
110
134
119
69
136
122
54
118
109
72
76
122
134
107
106
89
131
134
152
80
145
109
163
89
117
96
175
125
94
119
87
113
113
112
121
130
88
121
175
132
80
104
132
128
80
117
80
87
76
197
80
113
71
136
100
97
110
91
99
175
149
118
185
87
91
80
87
76
78
80
72
137
128
106
88
80
124
78
76
78
102
89
155
69
119
143
75
130
76
78
111
134
110
154
127
109
118
96
74
109
80
97
119
78
130
175
126
80
80
136
80
111
102
152
87
154
101
146
91
118
76
80
175
104
94
80
197
100
92
76
129
137
109
175
107
87
99
85
78
93
74
80
93
154
87
197
74
116
102
66
89
76
105
80
52
151
103
90
73
80
113
80
81
128
136
175
175
93
154
69
78
80
104
113
69
78
69
95
80
69
94
130
121
154
71
99
119
76
96
88
80
87
114
160
181
89
120
128
94
128
86
126
110
106
122
76
100
107
134
164
74
99
95
87
80
154
112
201
103
163
169
89
165
151
98
106
147
74
140
144
124
72
175
78
85
104
87
119
71
102
75
94
107
106
171
132
78
103
107
136
117
155
76
128
87
145
80
107
80
100
79
115
78
126
99
69
98
144
145
80
80
88
87
131
109
91
120
119
76
107
121
110
116
80
174
74
165
52
154
103
96
161
133
154
52
155
54
138
88
80
66
88
112
87
80
140
85
129
132
76
129
112
114
91
110
136
136
110
120
69
122
101
74
94
181
85
114
71
91
151
112
104
69
87
80
120
124
151
71
80
85
92
208
110
80
121
104
118
164
78
69
104
161
137
83
104
107
74
138
122
87
88
108
114
76
72
132
127
109
80
76
78
126
100
119
87
80
96
129
78
103
94
156
134
175
80
69
128
154
80
136
76
109
133
156
69
94
69
91
99
155
107
72
143
74
80
80
85
95
66
134
139
119
201
151
134
197
128
151
88
89
80
88
69
75
80
197
143
166
80
110
52
87
94
94
78
110
91
119
104
117
140
76
96
78
128
87
56
96
87
122
115
107
154
175
100
73
69
187
87
80
69
122
100
80
107
95
100
129
87
89
72
107
64
121
153
109
122
94
80
131
156
78
96
122
94
93
78
181
80
114
88
104
95
104
72
155
96
139
151
80
80
78
128
103
104
59
136
101
120
186
75
118
80
116
101
88
85
102
106
110
117
110
134
124
76
94
96
120
72
130
76
110
100
118
128
111
69
116
146
115
99
120
93
80
80
80
152
120
104
88
110
102
119
120
131
80
130
133
59
131
83
120
93
101
128
110
89
78
94
69
119
80
75
80
59
80
114
96
87
104
136
157
109
91
111
69
116
58
80
117
134
94
110
131
80
89
80
76
122
87
78
121
120
43
87
114
78
75
87
119
136
54
110
96
80
104
94
84
87
113
91
85
52
120
107
115
63
117
76
85
94
69
78
94
72
155
119
102
175
113
69
119
136
118
98
119
128
69
87
121
74
113
80
117
69
113
80
131
76
80
87
72
101
87
154
87
96
78
110
89
128
75
124
146
156
77
76
111
83
87
95
126
69
83
113
107
91
102
78
69
106
119
91
119
69
127
98
100
118
193
131
154
175
118
72
175
120
106
76
133
91
88
115
174
119
94
91
76
83
80
164
90
119
120
102
145
96
81
101
72
151
87
113
99
94
120
110
100
149
80
112
80
145
125
99
104
120
102
143
88
117
96
140
88
144
98
128
80
80
127
120
89
103
87
107
109
91
102
101
147
106
97
69
119
118
93
76
119
80
119
102
197
76
74
197
80
119
90
107
91
131
88
80
78
109
69
100
80
78
69
137
80
110
73
113
95
107
151
146
78
87
132
107
175
80
136
76
117
69
117
99
78
105
88
88
109
113
138
76
72
69
91
109
117
80
189
90
91
102
119
110
145
121
129
80
52
76
98
80
89
89
134
119
104
89
112
89
123
80
87
83
119
80
107
129
197
151
175
119
87
80
140
126
163
117
88
119
56
154
80
131
80
94
76
74
90
101
156
122
78
89
100
107
134
131
131
109
119
71
150
76
83
118
132
121
64
101
87
100
143
87
80
120
52
120
82
128
110
107
107
78
75
69
102
195
109
91
69
89
69
78
106
93
197
94
136
78
119
123
106
76
80
87
149
76
90
101
182
78
72
108
87
103
173
140
78
135
152
129
75
113
164
124
130
80
76
111
143
120
140
132
54
128
96
160
80
175
94
106
109
104
52
161
78
76
93
99
197
175
129
120
109
72
69
119
96
131
114
52
93
154
100
156
123
80
136
109
71
94
95
99
81
43
72
102
113
80
72
109
80
100
159
106
111
81
87
76
91
136
145
113
122
93
101
120
126
152
109
80
87
110
117
155
140
116
132
100
119
151
128
83
91
69
154
78
108
139
99
104
106
77
175
80
78
80
56
52
99
78
97
80
80
72
80
76
102
110
121
112
197
119
107
89
93
78
114
124
88
133
67
80
199
103
111
87
80
152
69
157
131
104
121
91
148
106
108
87
69
102
56
89
152
69
79
134
72
126
80
83
91
120
72
76
99
79
75
119
80
74
100
154
103
145
121
78
74
142
52
128
136
85
164
117
110
120
125
108
107
126
88
78
80
133
94
143
83
78
131
101
124
93
120
101
87
146
80
134
119
107
74
80
155
122
103
155
71
103
119
95
80
134
54
126
76
88
78
145
120
136
76
69
152
89
64
99
145
76
69
175
133
69
69
113
121
112
80
78
105
76
56
112
112
156
82
74
94
109
183
154
155
120
110
95
128
91
94
93
87
156
123
107
72
80
69
114
104
140
72
152
112
129
69
76
112
69
90
56
137
134
80
78
137
133
87
80
145
54
80
144
102
76
120
107
143
124
152
118
93
103
96
185
145
96
99
80
106
91
131
128
123
80
69
154
148
119
121
108
76
80
118
103
76
43
124
80
92
72
54
125
104
106
96
128
96
175
102
119
83
69
124
69
160
88
72
88
133
117
80
131
134
72
134
87
128
80
80
78
118
137
197
114
87
89
86
133
99
111
102
113
80
164
154
175
113
143
163
88
156
96
121
120
119
115
94
80
78
148
185
107
175
96
169
175
131
166
93
106
78
80
144
113
99
119
91
110
89
175
175
99
127
131
72
80
109
120
107
120
69
89
76
75
124
121
89
175
134
125
128
148
154
80
146
94
119
154
80
76
137
87
118
69
140
113
89
113
175
153
128
132
109
116
126
80
87
125
72
69
87
164
128
80
109
76
69
107
126
78
106
80
57
132
76
104
69
112
106
69
120
112
110
169
91
128
127
74
87
165
136
90
128
91
175
69
98
80
101
80
120
85
91
154
99
78
145
121
78
87
100
59
78
80
72
121
87
120
116
131
79
80
156
99
107
69
102
99
87
112
95
87
104
123
76
85
155
102
104
89
80
175
136
154
106
80
128
74
89
117
76
52
101
175
104
102
128
64
78
117
96
107
110
104
69
106
136
115
102
114
80
87
69
175
104
69
80
166
69
100
82
107
88
155
99
128
80
133
74
87
110
107
89
115
120
56
102
107
110
119
88
111
123
117
83
69
137
109
80
80
130
122
131
140
119
69
99
90
100
80
131
98
165
76
91
59
119
90
87
119
112
99
117
124
107
94
69
87
138
121
118
117
88
164
146
124
76
80
56
104
109
175
175
80
110
80
90
175
121
136
87
76
92
121
88
146
117
78
66
88
156
77
153
112
80
160
56
148
69
112
98
76
140
99
76
183
76
157
82
80
119
119
91
99
166
112
107
163
119
118
113
112
91
183
69
89
175
82
151
92
88
114
80
199
131
145
88
87
120
69
78
159
120
131
80
80
69
69
80
90
119
146
121
164
69
117
87
133
80
122
87
89
151
156
99
76
139
72
78
72
175
87
106
78
164
91
67
54
89
100
88
69
119
75
129
119
111
137
110
89
119
56
80
112
104
137
106
59
112
80
151
119
87
111
88
104
107
69
111
76
176
94
127
78
129
80
167
154
92
107
104
87
148
108
72
109
69
131
107
151
118
128
110
80
89
72
109
96
137
126
69
80
114
104
110
134
89
54
72
143
99
111
119
117
117
69
165
119
124
85
104
88
133
108
100
160
126
151
89
80
119
101
69
114
95
87
131
109
106
90
117
156
59
104
76
123
69
115
154
111
106
80
128
76
102
101
95
103
107
109
156
110
104
76
76
154
93
80
175
52
78
120
99
147
175
143
110
136
101
69
72
131
106
126
78
119
91
69
87
99
87
99
100
94
101
80
175
78
118
139
120
124
80
89
155
121
113
125
140
155
78
120
69
80
89
120
104
74
87
87
80
125
137
104
96
80
121
128
94
115
80
128
101
131
93
120
115
128
136
54
128
80
88
121
80
69
78
119
102
110
132
136
109
136
93
164
154
76
118
138
151
80
134
74
163
52
99
69
104
99
166
43
156
151
80
123
87
134
107
112
106
109
118
96
80
87
124
131
131
89
107
76
136
109
142
69
158
151
151
118
141
101
56
136
154
76
89
136
118
125
80
152
140
131
107
136
89
110
157
114
99
80
69
67
113
69
91
78
120
113
126
141
112
107
109
154
110
78
76
131
112
109
112
43
136
118
154
54
76
80
117
80
89
94
80
134
80
80
128
174
145
145
119
89
72
140
82
111
56
117
107
91
80
119
197
87
106
88
91
76
104
113
88
67
109
119
94
89
134
106
78
91
88
74
125
69
87
72
123
101
112
69
156
128
76
88
128
110
52
91
140
80
181
80
95
91
162
96
120
145
96
72
123
134
69
95
125
159
90
80
80
94
156
81
101
114
156
144
80
122
94
115
80
78
156
80
91
87
111
112
80
87
87
122
129
125
131
146
76
119
89
93
110
118
121
97
89
99
80
80
88
113
87
110
99
88
83
197
87
94
69
69
123
87
112
96
76
109
175
163
151
69
76
109
69
72
112
107
134
123
89
130
111
118
78
107
88
114
124
72
154
92
102
78
143
66
80
89
80
126
93
83
89
83
56
120
134
156
94
78
85
72
78
144
78
103
80
133
78
131
148
138
114
109
69
80
146
93
120
94
69
88
77
76
78
117
72
112
43
79
143
123
85
157
87
107
134
141
132
78
91
104
93
88
119
134
96
80
69
107
102
120
58
102
107
69
104
110
67
102
124
175
80
102
74
87
83
119
119
78
87
99
140
120
80
78
78
66
154
80
117
104
76
106
78
87
87
113
128
99
140
152
138
88
155
136
94
140
127
109
80
87
142
146
107
88
121
118
80
103
93
197
73
122
78
96
94
136
151
79
156
80
145
151
69
109
80
88
74
80
87
80
99
127
110
118
121
187
78
102
107
88
127
113
130
121
80
78
101
130
148
112
109
109
80
128
131
82
175
114
113
107
95
84
143
112
69
69
69
101
88
122
80
144
122
52
112
107
186
107
94
145
126
114
107
69
113
118
97
69
94
78
76
119
78
87
120
117
88
100
108
110
103
136
80
69
69
114
107
76
113
74
92
121
110
88
69
163
83
109
129
80
85
69
72
112
78
76
137
110
101
107
90
109
115
87
118
104
56
132
113
78
107
113
102
129
146
108
136
116
132
130
69
111
69
127
106
119
83
127
71
90
80
127
80
133
110
118
121
120
107
119
57
76
96
154
99
145
117
174
125
97
113
134
121
78
115
119
99
127
83
76
126
134
96
76
119
76
146
94
175
100
128
140
128
83
54
82
54
117
72
75
134
124
76
123
117
120
87
89
86
120
89
151
74
154
69
88
76
119
157
121
78
80
175
88
87
134
69
119
120
145
140
98
107
149
104
132
123
89
80
106
107
163
109
109
130
80
87
72
93
109
74
58
80
136
80
199
110
131
109
88
131
104
78
118
125
88
145
96
138
54
187
69
80
52
150
76
197
119
91
156
155
69
112
124
92
151
80
109
89
151
117
87
78
128
113
104
134
114
80
109
88
145
80
112
131
124
87
87
69
94
128
113
154
99
144
80
72
95
80
106
121
93
87
123
164
67
102
107
156
128
72
88
80
155
80
119
94
95
120
175
99
71
113
142
107
94
99
56
69
80
136
101
78
201
76
80
72
187
87
52
114
91
91
104
100
118
109
103
151
107
133
80
93
101
143
72
155
88
155
137
175
72
99
106
137
113
123
76
69
111
154
163
111
107
87
87
98
120
116
112
125
87
106
132
124
96
136
112
110
78
94
87
83
88
100
80
78
93
115
107
146
96
133
117
78
69
87
134
99
134
107
131
140
87
78
127
101
52
131
148
136
114
80
80
146
101
112
140
132
69
43
115
134
91
111
156
156
88
76
96
122
76
101
101
109
128
133
102
139
119
78
110
104
86
103
99
93
69
104
107
130
132
78
83
119
116
175
88
102
95
90
69
52
89
148
95
128
80
129
175
106
124
124
107
134
163
54
127
113
197
88
69
80
76
114
112
95
120
76
197
72
155
54
134
101
74
96
102
121
136
106
76
133
76
199
120
117
122
69
72
88
87
110
87
106
76
80
99
119
94
87
56
72
163
78
107
78
80
87
134
117
148
83
163
80
76
116
69
119
96
120
78
96
83
80
151
69
80
113
80
96
127
110
155
80
104
80
111
102
115
119
112
117
149
151
95
80
80
85
76
112
94
153
104
151
119
94
94
154
87
80
117
111
131
69
73
146
145
80
99
80
69
87
101
66
155
85
104
94
128
132
94
119
154
80
128
128
119
126
118
174
160
89
131
106
160
174
119
140
143
76
110
147
176
174
140
110
146
89
76
78
117
104
110
121
146
80
119
80
82
87
145
109
117
111
143
119
154
80
87
74
93
71
125
112
136
160
154
128
89
128
104
107
175
83
87
151
161
80
78
154
99
75
147
76
110
104
78
69
102
175
80
110
76
127
72
117
108
76
158
130
88
87
54
110
120
134
80
157
109
109
128
93
72
76
87
185
153
87
83
69
56
69
101
107
76
99
114
96
104
87
101
120
128
93
96
88
69
80
138
130
117
87
69
113
171
155
75
87
80
69
78
120
80
136
87
175
69
76
75
89
145
114
118
101
151
80
82
74
92
69
120
69
127
80
87
91
56
155
138
93
129
69
107
197
119
82
69
128
112
160
124
69
133
123
72
88
101
89
106
140
79
133
127
72
147
114
69
107
87
69
148
117
109
69
154
109
134
78
122
109
87
75
69
87
80
175
120
107
78
156
101
134
117
89
136
83
89
136
92
147
149
80
103
119
131
78
79
80
111
112
106
93
131
96
124
143
99
157
80
94
183
154
78
116
139
94
130
122
99
121
136
141
54
80
115
148
89
109
69
131
92
80
113
106
78
94
94
111
131
100
120
80
90
103
88
99
104
130
80
78
106
106
104
113
120
94
118
88
175
94
85
80
76
76
110
83
89
99
110
87
80
76
151
88
175
102
76
146
110
147
164
107
121
147
101
100
96
116
115
54
80
131
78
115
154
101
115
128
111
134
52
154
80
121
140
117
100
89
95
88
105
80
154
103
115
91
76
87
56
154
74
122
119
112
197
117
128
78
91
72
125
88
122
130
128
112
117
76
174
116
80
109
120
175
154
140
112
87
137
128
80
155
104
109
119
80
80
69
120
134
80
87
121
114
109
75
106
148
92
114
91
119
121
81
146
115
104
152
111
99
104
99
75
85
154
106
56
75
99
120
106
76
76
111
156
80
87
143
108
109
99
99
69
151
113
80
76
80
80
119
110
128
156
112
120
106
197
111
135
78
131
94
78
156
106
107
127
72
119
104
71
87
128
76
87
134
69
99
128
155
94
76
119
100
77
80
96
119
154
123
107
132
78
107
155
145
79
119
91
80
144
80
100
174
76
88
112
109
99
119
199
116
160
69
109
116
120
154
119
134
78
142
91
78
87
69
107
90
144
119
80
88
52
155
76
197
119
113
78
128
96
134
107
129
175
105
80
88
87
100
87
114
67
91
109
69
87
119
80
175
120
97
117
121
140
89
140
127
110
56
109
134
109
113
100
78
151
124
126
87
130
156
134
73
107
90
80
109
110
95
78
96
114
175
107
80
87
120
89
52
131
90
174
140
71
143
119
132
113
112
142
114
99
101
148
80
75
75
150
88
119
88
108
135
80
111
124
99
98
89
94
80
76
96
69
197
131
106
118
79
128
131
116
72
102
80
89
69
87
83
85
80
119
127
72
101
121
76
80
197
69
137
145
76
119
131
68
88
101
119
156
142
125
115
148
102
116
56
107
43
76
59
130
155
133
106
119
107
146
117
74
89
91
118
93
109
109
109
87
156
117
88
87
154
113
87
80
136
137
118
52
110
99
138
93
110
154
154
80
76
99
76
69
119
121
147
111
140
88
69
106
111
89
136
69
93
103
120
87
43
113
87
124
175
90
141
140
146
93
113
183
80
87
69
107
87
69
114
117
146
101
78
91
215
78
148
106
106
106
127
117
109
145
80
197
120
89
139
106
107
129
140
87
209
145
142
112
114
69
69
93
145
80
121
121
80
74
109
149
78
128
156
106
147
69
115
124
82
94
175
129
85
94
134
88
87
88
69
147
112
142
156
136
118
119
114
109
88
106
150
94
67
107
93
120
112
137
128
109
114
118
175
172
112
78
120
136
82
58
146
121
80
80
69
110
134
111
92
126
120
80
128
112
125
133
134
153
121
136
95
93
112
76
114
152
80
121
156
156
80
74
102
80
107
106
69
87
140
106
120
140
80
111
120
87
69
80
80
80
101
69
76
119
94
110
134
107
154
87
80
104
54
141
106
69
87
118
80
121
80
175
116
156
112
78
99
131
126
78
80
80
146
96
136
134
80
75
88
138
93
99
87
156
80
107
82
101
101
80
134
78
145
154
121
110
85
119
94
118
85
111
109
116
163
94
69
88
85
99
154
74
141
134
87
120
93
134
76
140
101
111
156
109
129
100
87
88
107
106
88
134
134
81
146
78
76
97
107
129
73
128
112
114
128
88
87
95
95
143
109
69
144
151
114
99
104
154
117
91
175
87
134
125
143
78
69
106
157
104
114
94
80
119
121
80
87
88
104
97
131
80
116
156
95
69
80
104
56
104
56
68
118
96
151
80
109
146
156
87
74
120
100
64
80
69
119
107
76
103
78
120
89
133
74
109
106
80
120
126
130
128
78
128
120
197
83
101
107
87
109
112
56
151
108
175
97
154
156
127
54
102
99
111
87
138
145
78
155
119
99
128
88
102
101
113
104
109
76
69
80
80
131
72
162
120
145
87
88
87
87
174
69
77
110
99
136
127
96
122
69
148
119
80
107
43
80
115
158
54
87
143
93
112
52
107
122
119
175
90
80
118
74
107
128
132
93
121
103
94
131
90
99
56
94
134
83
93
117
87
69
78
154
80
78
72
117
106
136
87
118
88
152
128
107
136
78
163
90
137
74
78
79
131
156
149
85
85
71
128
144
123
87
114
80
93
76
112
67
85
76
88
104
93
175
111
110
80
87
123
77
175
78
109
69
139
74
66
151
104
69
141
104
119
94
96
88
120
80
101
123
89
74
154
104
134
43
80
155
89
121
119
76
72
112
144
120
78
126
99
109
89
88
69
128
104
123
119
117
159
69
106
80
100
104
111
78
80
113
89
110
137
94
96
154
129
80
74
80
94
137
87
119
74
137
91
81
152
80
117
132
96
119
80
107
52
121
80
102
197
80
117
74
52
72
124
96
136
69
52
123
121
107
76
87
120
69
127
151
102
129
122
156
90
87
76
121
112
76
78
80
78
82
69
156
209
69
80
131
87
80
123
102
175
123
119
126
117
135
143
134
113
113
110
91
78
85
94
119
197
154
78
94
78
142
80
95
151
123
87
113
201
155
78
118
120
109
119
129
131
121
164
52
94
99
119
99
119
80
80
124
104
94
74
175
125
154
85
110
54
52
128
120
98
175
156
106
144
134
197
69
99
69
87
80
88
96
80
87
145
99
87
99
80
144
78
91
154
94
160
69
99
154
118
117
143
154
119
99
166
80
69
54
119
101
119
109
197
150
98
143
151
128
80
166
119
111
69
72
120
118
134
107
92
69
89
118
95
69
151
80
107
176
92
87
69
129
95
89
129
134
99
78
78
80
89
112
131
169
107
81
89
154
69
93
92
95
78
95
154
99
113
76
149
69
80
132
93
88
111
78
80
52
69
104
113
109
124
107
128
105
146
80
76
88
146
163
82
145
148
106
78
126
120
87
88
155
80
98
69
106
83
143
106
144
69
119
113
59
134
175
69
96
80
107
80
87
113
119
109
69
119
118
94
87
102
120
74
76
91
91
56
121
128
101
88
88
118
69
87
89
85
197
104
94
80
120
95
69
133
126
128
110
59
151
154
76
89
87
140
130
69
106
115
119
96
103
80
69
199
75
76
69
66
94
113
88
107
115
89
87
129
80
69
80
56
54
132
73
131
102
69
110
104
89
154
123
69
138
87
120
107
109
115
85
104
80
80
120
175
94
131
87
100
69
132
79
88
72
91
69
156
137
80
99
120
80
88
104
69
155
78
132
120
78
107
72
131
164
94
94
124
119
80
60
69
69
128
128
99
78
69
79
139
110
127
80
76
80
82
155
98
124
89
88
56
80
56
80
128
83
112
128
91
78
80
76
127
80
120
117
99
142
148
136
129
93
103
85
90
103
71
186
80
99
80
151
100
113
80
113
80
155
80
107
140
132
133
156
95
109
143
107
134
183
137
89
87
147
80
69
102
112
130
119
137
69
87
131
119
90
76
78
113
101
105
138
119
78
87
103
88
107
54
94
120
89
94
119
108
140
129
69
74
138
52
154
87
87
124
126
99
107
59
156
175
80
101
100
80
93
119
104
87
117
113
83
142
99
151
127
134
109
69
127
154
87
100
109
74
118
134
69
94
78
69
164
93
80
104
80
93
112
123
140
128
197
104
102
78
150
175
100
104
118
89
154
68
80
80
140
74
113
99
89
113
69
96
89
99
144
123
117
87
100
76
121
102
88
121
109
175
175
175
146
175
80
119
80
101
134
76
119
106
99
106
107
87
119
143
104
117
93
87
66
126
112
113
128
174
95
78
159
80
87
128
110
97
69
84
54
69
76
110
110
113
72
69
127
80
69
119
113
74
121
69
80
126
119
146
136
96
101
123
119
56
175
80
137
127
80
76
121
103
145
124
145
114
80
118
147
78
88
134
80
106
120
154
118
69
91
104
74
87
78
148
134
109
90
103
123
128
139
156
54
103
151
140
95
91
148
78
94
75
154
156
150
89
175
96
80
117
109
134
137
76
126
120
111
88
89
95
72
108
78
139
94
137
72
103
127
128
80
80
130
112
69
93
83
101
80
91
91
80
99
104
128
99
87
130
107
103
106
156
87
80
102
148
87
184
134
87
69
113
175
119
78
112
143
76
80
67
163
69
104
113
94
80
80
127
119
172
127
88
69
76
119
93
80
87
106
128
85
93
87
120
83
119
80
90
155
85
115
78
110
104
96
94
111
124
99
161
64
54
119
80
76
74
87
80
119
93
131
140
99
80
112
87
101
80
131
69
119
91
80
80
106
87
128
174
105
120
71
134
76
102
78
125
78
155
80
146
134
80
175
124
131
155
94
87
83
80
88
100
196
76
136
96
129
79
121
72
87
117
123
147
80
80
95
121
98
125
175
121
133
69
52
99
175
197
80
119
134
87
148
106
77
85
89
128
118
80
96
100
80
96
64
96
87
169
99
101
94
89
119
74
120
87
80
52
151
101
78
140
89
80
185
80
83
136
74
112
125
88
80
120
74
131
130
115
128
94
146
80
69
78
84
118
118
66
93
119
91
112
91
94
132
119
94
69
140
80
112
102
118
112
132
156
80
197
76
85
80
85
91
88
81
72
103
89
140
76
93
69
88
67
72
117
80
76
83
102
80
103
104
78
88
102
117
69
87
54
119
159
109
54
57
74
123
120
114
113
138
89
197
113
80
76
124
109
88
136
120
125
104
99
87
175
125
101
78
120
69
146
110
69
94
119
94
137
80
101
131
111
111
163
136
99
69
110
136
91
140
113
83
119
107
103
115
87
83
110
87
87
113
106
102
104
80
148
104
78
109
142
100
120
80
74
110
69
76
77
110
69
99
54
80
69
90
138
106
159
140
189
106
119
87
93
104
135
154
76
129
124
107
107
120
147
104
199
119
94
79
97
134
118
69
78
80
119
162
111
72
119
69
43
124
112
91
132
175
151
96
98
114
107
129
132
79
154
88
78
54
106
133
80
91
72
151
107
69
87
80
67
136
143
80
115
69
118
96
113
78
99
91
90
128
94
87
145
137
80
91
107
136
88
136
74
88
103
69
154
74
121
154
197
149
88
110
113
119
115
126
76
87
94
120
83
92
162
112
89
83
66
147
69
80
109
110
93
76
94
101
99
120
155
91
136
131
137
67
78
119
92
146
115
80
76
101
87
110
151
94
144
133
175
60
122
87
89
80
119
110
105
90
151
95
110
104
132
96
52
125
175
121
80
120
87
74
134
107
115
78
128
96
85
134
90
99
87
157
107
106
83
79
157
107
119
163
100
80
155
174
104
87
120
87
87
138
175
156
76
120
175
87
134
89
102
209
78
164
89
119
120
109
64
80
106
128
69
80
80
107
126
85
69
131
75
78
80
117
140
106
91
113
93
128
58
69
104
183
119
87
78
115
133
131
128
80
78
175
78
63
73
80
119
69
138
120
122
88
87
118
146
80
118
112
89
67
149
107
94
107
140
91
76
114
110
185
69
154
87
101
122
136
113
129
120
87
69
145
101
174
175
120
129
96
112
91
122
109
99
148
145
119
123
144
123
91
119
83
89
145
89
120
100
80
52
140
100
120
69
83
87
91
144
114
156
128
104
95
52
87
145
125
69
80
109
158
143
145
69
132
164
93
140
69
93
109
98
78
69
104
128
99
83
175
165
75
87
163
126
94
88
99
78
115
54
106
120
78
106
160
111
103
165
87
119
120
81
131
106
87
128
101
113
110
98
152
76
154
78
172
97
76
130
119
85
100
122
136
113
107
143
119
74
83
94
118
80
120
156
144
80
89
88
127
115
113
103
85
76
87
131
143
102
102
106
76
142
76
116
104
125
110
82
87
152
120
109
175
56
140
107
100
102
120
113
80
154
95
110
85
175
104
99
187
107
120
69
78
143
89
107
88
110
88
96
119
67
155
128
138
134
155
101
113
110
205
145
154
139
76
197
87
96
112
175
129
76
93
106
69
107
114
183
85
67
89
80
137
69
133
134
80
124
88
80
148
119
131
87
98
209
75
135
107
88
87
109
88
141
131
104
80
123
87
94
91
137
69
154
143
163
140
106
106
104
78
119
90
69
128
113
89
107
83
107
125
151
124
112
64
84
80
80
80
94
119
104
80
75
132
75
99
96
80
96
88
87
151
137
78
96
119
106
152
76
78
131
111
91
103
80
87
125
163
106
136
69
87
121
138
104
113
120
74
119
111
72
110
87
80
136
115
156
78
76
162
128
69
85
127
80
104
107
93
94
122
102
88
106
117
124
175
58
117
121
89
76
85
138
134
140
69
155
80
87
93
69
110
82
131
148
121
125
95
155
89
175
80
102
109
74
112
80
69
136
78
93
104
120
83
76
107
69
107
76
80
109
95
99
207
107
69
95
108
154
80
154
94
154
82
128
78
133
101
89
54
160
107
140
80
128
80
78
89
69
72
103
69
80
113
91
72
146
80
115
94
117
120
95
114
120
112
99
80
110
70
88
69
79
115
80
59
109
119
103
66
136
107
95
121
80
143
112
106
136
100
80
129
110
175
94
140
112
99
99
67
120
175
113
74
113
87
83
101
133
71
113
117
99
112
69
89
76
134
125
155
154
80
123
80
72
69
76
119
156
103
67
80
67
80
88
121
172
112
117
156
103
126
69
122
131
121
110
126
109
132
85
92
69
101
154
112
80
154
110
107
111
94
151
76
99
155
69
102
80
78
136
79
87
125
98
76
69
109
106
98
106
110
119
87
117
119
156
126
80
143
163
72
112
144
183
100
164
101
69
147
107
75
121
174
74
149
127
114
147
154
136
120
119
119
104
155
104
145
87
109
134
134
120
76
143
87
72
127
128
120
119
104
80
80
80
110
134
80
119
105
87
156
78
128
89
112
80
120
118
164
80
69
106
121
82
102
88
102
131
126
130
103
76
87
124
120
98
89
119
152
63
166
149
128
185
67
112
158
67
115
90
160
119
118
88
128
185
88
69
133
69
156
94
109
87
69
107
101
101
118
78
104
104
128
120
96
132
52
130
72
109
80
175
69
88
76
163
119
119
80
94
82
109
159
80
87
85
120
136
88
69
119
80
115
93
108
89
69
56
120
113
69
80
144
69
97
146
107
154
91
89
80
91
69
162
106
106
69
146
120
154
91
152
94
110
112
119
85
123
93
120
174
137
123
94
80
92
127
134
127
103
154
102
91
143
100
142
142
115
76
95
69
89
99
122
88
87
89
87
69
120
80
80
89
124
89
94
143
63
69
80
69
76
76
72
88
80
107
87
110
71
99
102
116
115
82
186
118
133
98
112
80
69
155
117
115
109
111
101
175
131
69
120
128
78
130
52
106
136
143
43
69
160
80
128
104
89
107
117
112
120
209
96
92
96
80
87
131
88
141
85
154
128
106
54
80
67
76
72
106
95
76
69
121
52
133
115
94
111
136
104
113
155
120
90
94
117
76
107
160
94
154
115
112
103
109
69
117
100
111
107
151
131
100
158
87
101
80
120
96
83
116
129
154
164
120
114
96
175
109
80
121
99
98
119
113
76
80
134
69
117
80
84
145
124
74
91
76
80
109
110
99
125
94
104
96
76
131
88
125
69
73
155
82
107
162
76
201
88
96
83
156
159
121
75
80
76
181
87
89
54
94
164
101
74
102
109
134
120
69
80
89
93
152
124
112
107
64
111
103
112
80
175
138
129
128
127
131
130
102
80
92
102
56
104
90
107
54
156
156
100
92
119
80
74
80
129
145
67
117
87
131
139
133
87
114
148
118
151
69
107
78
99
144
151
104
80
119
102
85
87
76
124
78
109
155
103
106
69
143
132
94
149
127
80
154
69
163
80
78
94
69
80
100
119
76
166
69
128
69
104
142
52
88
149
134
78
91
107
107
163
99
154
145
117
197
101
80
175
80
104
117
119
108
146
87
117
119
107
87
159
43
69
89
80
119
80
87
80
119
88
80
80
148
90
128
69
94
150
87
114
119
78
80
93
76
140
90
79
136
197
147
128
113
140
99
69
69
72
104
76
76
137
87
78
69
54
69
122
111
147
160
109
109
69
78
83
121
110
121
80
76
80
72
71
175
76
76
80
69
121
78
96
80
81
99
136
124
109
110
125
109
122
94
64
104
76
64
80
121
137
69
144
92
142
146
154
186
117
78
120
52
96
80
103
197
121
94
134
162
80
88
145
119
88
82
85
103
72
128
87
107
78
104
113
88
78
155
122
78
96
69
67
83
87
110
151
110
117
110
104
72
134
54
154
93
177
108
80
139
119
136
151
101
134
160
104
150
94
87
146
181
118
110
120
106
100
69
94
56
119
129
120
69
120
175
93
98
89
151
122
80
69
115
119
78
80
96
102
164
95
76
120
94
80
85
160
145
78
52
197
72
117
144
78
118
80
120
144
104
80
137
136
143
126
138
100
91
69
90
87
119
87
106
76
80
105
67
104
110
87
88
120
157
80
127
99
109
143
78
103
76
156
52
109
117
80
92
80
126
93
145
134
93
156
64
102
69
88
90
129
94
140
87
87
151
72
52
80
131
119
102
110
115
148
150
119
80
88
93
121
110
89
175
78
128
121
118
74
76
137
92
80
87
146
148
110
127
175
69
87
66
89
87
87
163
112
107
115
94
80
116
102
104
156
109
76
91
78
109
131
134
197
137
80
130
111
136
153
90
119
99
122
163
76
119
128
151
154
80
69
119
107
151
91
99
119
82
110
150
88
149
115
79
101
132
128
72
154
91
117
80
120
107
107
80
113
75
80
89
120
130
97
147
80
144
183
120
109
80
69
183
96
99
89
106
80
80
93
101
93
175
175
119
126
157
76
102
117
136
89
107
87
115
146
115
118
140
102
134
84
88
76
110
154
96
97
102
104
172
88
80
117
78
152
96
78
136
117
104
68
140
137
78
100
127
120
101
127
136
151
72
120
88
155
164
79
121
94
125
80
119
109
52
144
80
107
112
109
99
89
120
127
72
80
85
107
69
78
110
69
94
104
134
76
156
121
181
99
74
94
100
128
127
136
88
88
87
114
69
148
76
110
96
140
88
101
80
128
123
121
92
175
83
104
128
99
69
104
175
69
93
119
107
69
164
128
80
114
91
76
88
87
112
97
78
123
85
172
121
104
69
197
112
112
87
80
99
156
67
100
175
106
134
80
150
80
116
146
114
156
117
115
155
117
100
80
104
99
94
88
148
93
76
69
78
119
78
133
117
98
120
99
120
161
120
87
174
52
91
142
125
115
87
131
80
78
136
72
54
78
99
185
115
81
109
107
146
78
89
156
99
80
76
203
138
83
69
101
197
109
120
76
116
100
128
80
69
120
78
113
80
87
101
89
147
110
99
104
80
148
104
78
132
84
92
126
121
119
118
85
175
109
110
86
116
148
111
126
112
142
116
117
154
93
126
89
117
119
117
136
119
111
54
153
80
117
146
127
59
110
87
69
78
94
91
117
69
112
154
120
126
120
139
107
72
80
88
117
80
97
80
99
52
100
76
100
76
138
149
78
86
99
67
90
147
140
107
93
109
69
111
94
99
121
88
119
118
52
78
127
124
76
146
69
136
80
76
143
156
95
119
175
96
66
107
80
78
102
102
87
85
83
69
99
69
94
98
80
87
104
80
112
78
109
78
163
136
104
79
69
69
102
85
154
142
87
80
80
143
76
175
155
165
154
80
155
87
88
72
69
97
150
143
110
99
80
69
101
76
121
160
91
106
80
120
104
110
87
136
103
148
140
89
94
109
104
151
107
109
57
117
143
175
154
69
154
109
103
148
80
183
126
87
52
94
69
127
121
131
64
175
99
101
120
87
80
78
175
129
95
76
134
134
76
127
80
80
140
107
78
87
69
107
80
112
69
69
74
80
99
100
151
119
106
80
96
121
87
87
80
80
80
109
160
92
100
99
117
113
88
80
96
134
69
69
120
100
88
100
78
80
155
183
119
129
104
78
119
80
109
154
127
106
80
94
175
128
87
123
69
64
140
80
106
109
90
73
80
120
80
121
183
145
123
135
120
155
131
87
119
174
69
123
80
110
106
134
107
80
81
80
128
119
175
99
110
175
128
88
101
127
96
94
115
156
146
80
88
85
106
69
95
69
152
118
119
93
121
79
80
144
72
103
136
87
136
109
175
115
128
138
107
104
133
67
67
91
127
66
119
94
93
126
166
119
91
156
105
54
123
88
52
120
66
121
136
128
69
131
107
110
118
67
136
69
99
98
120
156
119
117
69
76
76
134
118
120
175
106
104
79
99
138
93
154
131
136
114
128
155
78
121
154
149
109
107
101
83
95
134
128
128
120
76
80
142
93
136
69
76
123
110
78
112
119
99
85
129
89
149
100
69
107
117
119
71
115
132
151
110
127
80
134
151
80
151
109
134
69
107
187
154
143
101
101
87
89
172
120
110
77
86
155
121
118
121
80
97
118
122
99
110
111
136
80
142
95
132
109
160
132
80
81
87
115
72
128
74
131
89
119
69
103
117
145
52
87
80
115
132
78
107
110
69
99
117
119
69
100
161
124
80
74
100
132
87
74
140
145
104
118
106
80
76
110
107
120
93
131
87
76
131
72
125
151
104
76
130
127
93
109
78
106
107
145
109
88
87
151
131
78
154
145
104
128
120
95
109
136
80
120
133
132
64
89
80
112
133
131
88
120
80
78
116
99
111
136
117
84
104
140
119
69
89
112
175
148
74
120
87
118
91
120
157
87
88
80
87
87
194
126
80
119
175
147
110
105
107
109
78
138
138
76
102
69
108
118
122
95
88
87
93
95
151
113
91
80
157
88
107
175
197
80
144
91
146
120
104
119
94
91
165
113
137
107
84
69
78
106
103
187
69
140
96
96
125
69
80
80
69
122
136
98
104
178
107
72
58
115
80
117
99
89
106
110
108
131
134
160
72
99
155
93
128
128
57
122
121
108
169
94
69
104
116
96
120
80
126
154
110
89
175
164
78
117
87
103
78
92
140
94
85
101
99
128
120
126
100
156
175
131
78
82
78
117
100
75
90
110
106
158
54
131
134
104
118
80
69
110
145
104
120
112
96
57
105
117
100
87
100
101
127
121
78
119
78
136
112
76
131
127
119
109
85
90
131
69
94
76
89
94
114
80
101
100
72
76
88
101
80
132
110
174
80
121
105
151
80
111
78
72
88
155
69
99
154
80
143
78
76
80
187
109
106
80
120
69
139
136
100
141
96
80
102
107
119
80
126
74
69
69
110
114
117
96
76
115
121
87
87
99
69
138
134
121
78
123
126
94
136
106
118
110
175
128
100
134
76
107
99
94
102
102
175
155
119
104
91
131
87
166
69
126
187
99
99
72
80
125
119
99
132
96
87
119
127
132
112
69
80
76
136
98
72
108
80
78
110
121
109
107
127
134
117
119
79
103
133
154
80
151
110
175
69
175
69
154
69
154
67
75
121
87
102
154
121
112
77
111
175
122
154
88
146
156
167
69
134
175
78
69
87
143
121
160
106
175
88
80
115
130
132
52
69
124
91
100
115
94
78
128
90
89
69
80
69
160
103
52
143
82
76
69
87
136
115
69
95
88
119
88
139
119
120
114
78
129
94
163
113
131
69
69
80
163
115
98
166
76
183
123
80
183
131
88
78
78
110
69
104
199
88
56
201
97
124
123
133
87
103
125
89
119
102
93
80
80
72
69
120
80
92
87
120
76
94
89
156
107
136
87
114
80
118
80
138
69
78
130
88
107
131
175
107
104
54
131
127
110
143
111
110
119
119
94
175
129
131
155
120
128
104
102
120
80
121
89
131
80
160
107
103
107
103
129
90
151
124
98
80
162
104
115
76
107
100
88
88
140
76
89
154
80
80
100
94
104
122
87
139
119
93
69
123
78
131
69
137
94
137
119
107
74
94
140
80
76
80
83
121
131
106
78
151
98
63
155
87
90
87
113
111
94
69
76
89
69
89
129
107
76
88
131
128
78
76
78
104
100
107
127
115
80
155
80
141
104
132
78
87
89
134
109
74
76
101
112
91
85
80
109
163
72
77
101
78
103
72
121
69
80
87
107
107
155
76
57
99
78
69
113
107
107
109
80
131
74
113
128
109
110
119
154
154
131
69
104
109
56
101
119
150
89
80
106
74
117
110
109
57
78
96
106
69
119
120
132
69
126
94
69
109
80
91
56
52
140
129
118
187
101
106
131
140
78
99
142
78
131
111
143
175
80
95
69
197
117
109
94
112
134
145
126
91
69
119
80
133
137
121
87
104
134
80
175
119
131
78
109
154
87
106
78
67
104
91
122
163
79
98
80
112
94
131
54
69
120
87
148
113
131
85
121
84
94
98
74
74
138
67
81
87
121
145
85
120
143
87
101
87
104
69
87
104
134
76
69
69
131
80
54
128
72
88
94
103
88
95
121
76
109
117
134
89
78
175
104
136
128
120
69
57
128
142
104
128
133
174
163
69
72
80
123
119
87
78
76
112
151
150
113
80
78
99
119
80
175
112
131
80
155
127
146
110
185
133
69
88
99
128
131
88
135
99
133
69
78
96
80
113
197
87
92
91
74
89
154
103
80
120
177
93
85
78
87
106
94
69
141
131
69
84
88
175
183
131
80
76
69
80
110
154
110
104
78
69
107
127
134
110
118
120
112
101
80
69
107
112
80
66
118
69
85
80
106
69
112
155
145
107
114
78
119
85
123
88
106
69
76
174
103
104
87
76
80
119
144
78
74
78
197
80
80
87
128
98
121
104
94
113
78
87
114
117
118
112
90
118
69
113
92
88
158
88
124
164
107
104
76
128
69
87
109
120
104
127
136
99
69
93
69
99
52
115
54
107
152
76
112
76
120
94
119
136
76
80
83
131
138
99
72
54
116
98
66
100
186
149
107
133
76
69
69
93
156
79
107
106
92
140
127
69
87
131
88
91
80
100
87
58
117
127
136
80
60
87
117
89
78
91
107
136
106
86
95
118
88
112
107
87
76
110
80
109
75
88
80
80
101
69
197
96
123
122
89
120
138
54
118
76
146
78
205
136
156
136
141
56
150
85
120
100
80
164
76
126
137
107
90
118
140
88
92
87
74
127
56
134
118
101
120
89
80
72
107
123
134
78
83
52
143
109
140
96
69
106
69
119
78
69
95
104
69
76
156
121
97
69
109
78
101
107
88
96
54
76
175
96
69
89
172
96
175
80
99
107
108
123
76
123
69
80
80
76
76
131
69
74
140
145
89
107
141
99
185
96
125
80
120
154
80
76
138
154
74
72
87
128
99
158
106
80
115
101
120
113
91
94
104
80
100
128
133
107
140
127
160
76
99
80
102
110
92
87
162
79
126
99
83
104
83
121
119
120
72
69
119
131
107
175
144
80
99
80
110
80
174
118
99
134
120
63
69
112
108
106
122
126
120
112
87
101
113
112
149
122
69
118
56
150
128
81
89
137
78
113
87
89
69
174
110
76
88
112
154
130
107
69
78
89
52
119
89
80
136
74
113
115
72
99
91
107
154
88
94
126
98
164
117
80
94
85
93
131
143
107
147
88
89
60
80
88
131
69
87
103
89
91
109
140
95
64
120
111
136
113
52
72
128
84
101
109
106
80
118
166
172
127
80
89
92
87
87
121
78
80
109
145
90
106
72
56
154
91
90
121
80
101
76
93
76
140
86
88
78
72
145
136
80
94
120
95
80
115
69
106
87
78
98
120
80
80
123
87
52
91
114
107
119
76
80
154
43
80
110
106
91
80
124
60
81
130
94
91
129
114
78
80
146
87
89
74
156
156
110
127
93
137
91
154
80
94
112
137
175
124
89
109
76
175
150
69
99
69
87
164
117
69
107
104
105
109
93
93
80
109
114
96
87
99
124
119
104
80
124
128
128
136
199
99
128
115
106
80
120
93
102
93
132
69
131
127
74
154
156
76
109
155
122
106
97
110
76
113
80
134
96
122
150
131
78
127
175
89
76
106
99
114
137
127
85
89
79
104
111
92
99
112
92
120
80
127
134
111
92
80
74
80
69
131
110
114
126
74
85
80
120
104
56
74
175
174
148
131
114
136
88
175
69
127
121
123
82
98
113
71
123
99
72
146
163
99
80
54
155
80
134
69
114
141
69
101
89
103
110
134
110
54
80
115
123
114
80
90
69
148
104
104
158
83
120
78
88
125
139
197
138
102
87
99
103
151
120
69
72
109
98
91
140
146
114
136
102
127
100
134
113
119
80
150
129
164
75
107
131
156
94
142
120
119
69
85
80
80
87
80
96
116
107
139
154
107
80
120
80
126
98
76
80
107
175
106
166
96
96
99
43
120
88
114
145
88
142
133
87
104
109
131
92
69
69
121
111
154
69
137
91
131
106
156
93
130
101
146
154
99
114
113
69
85
78
119
121
109
117
106
87
80
107
145
110
147
102
128
109
119
52
104
64
154
127
136
140
96
88
90
183
119
43
115
119
111
175
131
132
106
199
80
72
112
148
106
118
108
134
87
113
106
148
63
80
54
99
80
80
76
107
80
134
94
107
94
69
80
144
100
107
78
163
67
143
76
91
131
119
107
134
94
140
106
110
82
117
100
78
87
76
151
112
125
93
54
128
152
112
76
107
87
119
128
121
76
143
69
98
107
145
132
148
174
119
80
110
96
76
88
93
151
96
104
69
119
121
99
87
95
144
80
135
99
111
80
128
80
103
140
114
76
102
95
93
156
128
107
136
69
88
175
91
112
123
154
123
87
69
128
89
80
107
131
80
52
119
151
154
78
78
102
119
113
134
132
76
136
118
78
78
99
119
142
91
80
94
106
80
87
104
121
122
78
67
110
72
90
116
129
80
80
94
123
147
154
80
69
57
175
87
82
120
154
95
146
148
94
52
69
93
99
151
109
101
121
102
87
130
124
69
90
87
111
76
79
120
104
154
110
147
102
106
78
128
116
133
88
88
83
99
96
157
113
131
80
95
118
159
124
104
82
78
52
142
158
85
145
69
80
88
87
116
156
112
134
118
95
109
119
69
134
106
80
89
112
110
152
69
75
110
116
143
96
156
110
164
69
103
88
132
128
99
78
102
93
129
90
145
90
113
120
80
148
175
137
72
119
80
112
130
137
119
116
112
87
87
91
128
91
69
128
78
81
97
104
127
113
197
76
102
118
87
100
117
112
119
155
54
95
113
108
107
104
122
67
107
69
152
101
130
96
156
80
43
130
134
99
113
72
126
96
137
102
90
143
91
87
131
109
113
107
114
109
69
112
140
183
107
69
92
69
80
145
100
140
80
76
110
80
76
119
101
140
120
78
94
110
95
102
80
72
99
103
121
80
105
56
132
138
119
78
101
104
112
148
151
68
109
112
101
102
144
120
114
110
88
128
94
78
113
69
120
104
125
93
95
146
80
93
104
131
119
119
145
90
140
72
80
92
89
174
110
106
125
80
139
146
120
96
140
80
89
115
141
79
155
111
99
155
93
72
131
110
128
66
129
79
109
117
80
175
124
145
80
80
144
112
117
123
88
87
107
185
72
57
80
78
133
90
77
100
87
114
154
146
115
88
122
115
143
109
80
89
88
115
76
145
93
128
80
87
145
156
91
107
120
100
113
80
117
101
76
87
80
111
164
120
175
87
137
136
161
80
74
106
84
120
80
87
67
152
69
80
69
85
97
140
80
151
80
87
164
93
90
135
143
80
101
96
84
123
151
155
109
90
117
138
78
69
88
143
100
157
89
71
98
109
98
166
131
104
134
106
76
76
175
95
156
197
69
89
165
119
119
102
114
123
80
110
80
127
85
109
100
114
80
156
175
89
111
80
76
117
118
146
104
110
142
175
125
136
96
104
69
94
85
85
130
127
131
74
134
104
132
89
80
120
80
92
104
116
102
93
110
157
69
126
117
109
91
78
102
144
134
166
101
76
118
89
128
80
87
80
78
80
133
127
99
101
76
103
156
163
136
160
76
154
156
174
121
91
83
94
113
126
106
119
87
80
83
131
80
175
80
99
102
76
87
136
118
94
76
94
80
109
134
80
125
117
110
160
112
147
86
80
74
129
80
137
80
80
82
99
109
120
130
93
54
137
67
90
117
96
111
103
128
78
99
66
121
136
78
148
133
107
80
80
107
101
78
90
80
99
97
96
122
78
80
113
98
140
132
69
106
90
69
128
91
110
104
43
128
101
69
89
155
110
72
128
69
89
80
113
146
154
154
128
156
78
69
87
110
154
138
87
103
69
80
93
118
78
89
154
121
112
88
151
104
87
101
113
75
136
96
145
126
127
94
69
69
132
154
149
123
69
113
109
102
107
136
88
89
134
78
106
90
121
121
120
118
99
120
201
76
106
85
112
136
132
121
136
102
88
155
119
118
110
155
80
119
120
78
87
87
124
125
151
174
87
121
80
112
104
119
69
109
92
115
109
134
120
89
74
104
119
120
69
76
105
89
132
118
114
106
78
154
94
66
72
127
115
78
158
93
87
155
134
87
106
110
134
133
137
107
136
118
78
120
107
80
113
54
120
93
130
69
91
130
93
149
156
69
99
120
136
99
107
87
114
174
106
87
69
141
99
118
132
183
76
87
106
117
154
89
43
126
43
143
95
90
100
69
107
119
107
60
109
87
119
78
89
69
164
91
80
113
69
160
113
94
119
155
72
110
136
76
72
120
69
110
156
94
88
117
88
72
79
59
151
143
88
156
80
80
115
154
91
93
111
103
120
132
104
176
127
119
88
88
71
88
175
154
76
119
121
109
113
136
108
117
154
131
104
154
89
88
146
103
80
124
88
195
69
93
96
113
110
144
80
80
107
140
87
87
73
175
136
80
112
112
144
97
52
110
134
110
80
175
107
126
121
93
175
69
127
128
183
137
80
119
87
118
112
126
80
76
97
80
107
172
80
115
106
43
107
106
106
112
69
128
102
100
154
87
104
99
121
94
78
76
119
128
87
121
100
99
85
112
82
120
102
119
94
128
113
83
80
91
140
69
140
54
69
69
113
109
146
143
137
66
80
117
114
91
108
124
151
119
110
137
144
126
78
76
99
107
78
175
76
80
75
145
76
96
113
78
69
104
86
93
89
80
87
154
96
123
120
78
175
98
119
82
152
100
82
80
94
113
120
107
87
74
78
175
87
120
112
139
91
127
91
106
137
108
104
76
136
82
79
107
89
52
128
109
175
96
125
91
104
80
121
93
102
175
78
110
117
80
78
126
119
80
72
175
199
104
145
78
69
103
105
87
78
155
87
134
107
128
142
104
94
110
120
80
106
143
114
109
88
69
87
54
80
99
76
156
175
101
107
93
99
80
99
119
105
80
91
113
88
87
101
80
148
97
76
80
110
99
78
163
104
92
119
93
109
75
103
57
112
113
109
134
127
109
99
88
76
119
80
118
95
164
151
154
128
104
117
80
69
107
69
90
125
66
93
145
127
175
83
107
111
69
52
119
80
89
76
87
136
120
134
145
118
106
125
163
69
89
154
130
138
121
113
88
164
106
69
98
69
107
137
120
69
80
120
80
72
122
128
109
88
106
88
79
80
111
94
76
113
69
80
80
134
80
80
67
87
80
127
107
89
106
74
119
119
106
80
123
99
151
120
111
69
135
117
150
72
141
143
148
94
163
106
144
201
107
175
94
119
112
128
59
106
87
132
80
87
57
67
104
87
68
98
109
85
90
96
80
91
80
155
112
136
76
74
132
78
127
154
69
89
164
113
134
110
72
88
128
112
78
145
119
94
109
95
142
127
134
106
89
154
91
154
120
154
155
153
128
162
105
80
156
111
138
69
94
113
155
101
82
78
103
138
102
120
87
113
154
91
89
76
113
80
80
100
83
109
109
76
80
143
67
69
110
76
117
80
128
97
54
109
52
112
131
99
76
126
131
94
74
107
72
75
69
69
78
145
145
114
145
146
127
120
128
80
113
107
96
127
79
69
69
132
90
151
56
87
69
93
80
116
121
147
138
76
115
136
104
128
109
121
107
80
87
110
99
113
100
144
92
109
80
93
72
136
108
78
112
80
90
91
107
147
69
102
91
159
72
123
154
131
146
78
119
123
123
72
69
87
140
156
114
66
145
83
145
115
87
121
119
69
80
197
139
120
104
88
127
143
85
131
74
107
116
91
127
111
111
85
83
109
140
197
137
88
80
134
87
91
138
119
69
118
78
80
87
151
78
88
71
197
98
163
93
131
115
113
183
88
117
117
80
119
157
76
134
104
91
72
155
125
80
87
101
80
115
69
145
163
127
165
72
117
89
130
154
78
91
76
81
96
80
187
130
69
85
106
80
119
133
175
80
69
119
87
112
104
80
69
175
69
155
93
146
126
106
154
120
124
106
76
86
104
76
109
164
72
76
89
110
145
128
120
103
103
119
76
98
87
78
87
69
52
91
102
113
133
80
76
80
76
78
118
117
54
93
80
119
87
79
143
94
76
96
85
69
67
119
80
80
109
74
89
154
80
88
101
144
78
106
95
69
99
128
74
54
98
140
93
121
72
151
112
111
120
138
119
111
123
115
131
75
78
87
80
71
126
106
80
148
155
101
131
118
119
80
122
80
69
93
99
131
157
136
119
136
52
69
131
107
69
116
143
145
72
109
120
110
144
128
112
131
93
79
69
134
120
120
66
101
87
80
76
120
122
72
128
136
145
102
104
120
87
109
88
123
84
72
80
138
78
64
95
106
130
94
136
60
80
87
69
115
151
69
107
80
131
120
83
154
87
74
107
101
100
128
80
134
119
154
119
120
121
105
147
80
87
104
128
98
131
52
93
134
80
104
119
76
164
164
117
146
153
88
143
120
119
103
113
69
142
117
136
120
136
121
76
94
134
118
80
94
54
154
147
166
163
80
175
175
146
104
64
109
120
99
110
128
120
149
111
80
74
121
111
120
67
54
147
143
109
80
117
85
114
119
126
118
113
76
119
154
101
87
80
148
74
164
80
89
163
107
82
69
146
101
148
99
120
94
84
90
89
101
111
93
80
91
113
107
99
106
87
120
43
110
92
78
139
88
80
87
87
69
148
157
102
110
157
78
78
106
87
106
136
118
106
131
76
125
80
154
94
128
148
137
175
143
93
95
113
136
80
80
107
80
130
69
72
107
132
72
80
104
176
52
151
87
89
144
117
95
102
134
78
88
174
107
115
120
110
136
80
78
94
80
122
80
106
113
69
167
117
107
119
197
96
100
83
68
108
118
117
121
80
101
80
121
60
69
129
89
80
87
128
78
107
117
136
59
76
72
175
121
147
113
69
80
78
154
88
197
131
201
156
120
80
112
80
154
91
99
119
76
66
175
110
140
52
78
156
87
104
117
69
110
128
141
145
80
144
78
88
69
69
137
157
122
110
102
102
98
93
155
78
127
80
74
131
106
134
122
80
69
85
113
115
102
164
130
106
112
78
88
69
154
118
80
128
87
83
120
87
67
104
72
124
164
120
69
120
100
80
97
121
140
93
154
94
133
175
91
99
175
112
108
108
76
128
99
76
148
80
76
175
121
134
133
69
113
80
89
123
94
151
127
76
99
125
120
121
137
110
125
79
72
87
107
91
90
80
119
106
109
107
99
131
140
114
113
100
113
89
128
101
89
142
69
99
136
104
124
163
128
138
104
89
137
113
143
118
136
93
99
69
88
69
121
85
87
78
123
107
157
80
110
165
128
99
76
99
101
80
89
89
120
76
126
88
154
143
102
101
80
121
101
72
85
72
52
104
109
87
140
134
131
110
76
117
89
120
119
80
113
148
136
76
69
80
109
153
101
185
98
107
128
83
126
175
96
91
69
56
103
107
80
112
110
128
136
69
138
99
87
143
76
82
110
109
78
131
85
78
140
92
119
119
146
99
119
119
131
137
120
128
136
87
140
107
119
43
174
77
120
102
78
80
124
99
87
43
129
152
121
107
140
93
119
113
105
121
140
89
185
98
140
119
71
121
119
80
120
127
110
91
54
104
157
145
128
64
87
110
69
156
110
121
69
111
113
126
69
185
162
199
103
162
69
109
112
80
93
80
114
80
80
137
107
99
143
136
141
127
69
78
89
132
54
145
63
145
105
119
87
94
110
76
99
80
112
78
80
138
110
80
155
52
120
102
69
78
69
117
80
143
54
94
107
127
94
175
94
126
137
154
107
94
91
107
120
100
154
148
156
52
117
78
96
175
80
80
121
80
80
99
119
120
199
87
101
128
120
154
107
138
87
123
137
109
148
74
125
134
85
134
175
80
78
166
109
107
60
155
140
156
175
69
134
76
78
78
117
154
111
96
82
128
76
144
197
109
121
125
177
72
164
146
88
117
80
110
100
87
146
114
131
76
96
110
102
85
143
96
69
89
101
74
80
78
113
162
90
102
117
120
104
112
77
59
185
73
113
113
72
80
137
80
78
99
110
172
80
131
78
98
152
78
101
107
86
112
151
69
117
115
80
107
52
88
89
117
154
80
136
127
112
124
88
72
78
72
128
78
155
91
66
76
107
129
128
154
128
69
56
99
102
76
132
89
76
69
134
121
137
102
104
109
128
111
115
69
87
87
87
84
98
99
169
142
88
107
156
76
111
145
103
135
136
128
78
117
76
119
112
80
69
102
128
118
115
123
126
130
88
109
70
89
69
116
175
107
77
80
107
69
115
91
120
52
118
94
90
76
109
110
88
154
80
88
140
116
104
128
69
99
130
142
119
127
123
98
75
78
102
99
155
76
128
119
119
80
119
107
123
104
89
115
128
175
107
76
122
112
124
136
119
134
78
119
76
93
110
121
118
136
101
104
110
127
95
88
107
122
157
157
89
178
87
87
144
169
152
128
88
131
129
76
76
151
148
72
136
110
117
56
141
124
137
91
101
124
94
138
80
76
89
175
80
101
80
72
87
133
107
88
87
69
67
133
122
155
143
54
102
137
144
83
120
125
119
92
99
132
94
119
87
94
74
80
78
111
137
76
121
91
144
154
110
128
79
78
95
74
107
119
99
124
175
87
80
143
69
119
91
143
87
80
117
87
93
56
76
110
117
93
80
145
80
122
63
80
112
76
117
119
121
101
112
114
142
110
76
128
78
66
69
69
123
94
89
80
87
68
151
138
139
79
80
143
78
111
76
69
80
110
87
107
129
94
69
113
87
80
117
99
119
134
143
175
133
178
80
99
56
104
112
69
110
114
76
123
132
131
131
129
155
147
135
129
154
69
110
69
89
80
104
121
136
119
130
120
52
107
87
187
85
140
72
78
150
80
69
109
88
80
119
154
83
175
116
111
69
93
80
80
126
69
80
103
126
128
74
87
96
69
154
94
126
78
78
80
80
87
109
109
136
154
80
69
69
107
154
119
131
136
128
120
83
118
103
137
163
80
136
83
80
69
146
109
96
99
59
76
80
88
107
91
106
121
136
110
115
107
80
135
85
76
119
140
87
109
72
69
80
88
80
154
121
80
67
72
88
201
129
96
69
138
154
74
86
131
128
134
80
89
59
119
91
110
124
98
146
76
69
136
99
78
112
69
146
80
76
174
88
91
102
157
113
103
101
80
99
175
96
156
69
109
92
134
87
72
120
117
76
109
133
102
199
88
80
113
129
54
128
126
139
107
107
80
119
69
175
155
91
94
80
122
76
80
125
113
78
122
69
119
76
119
102
120
85
89
89
88
137
99
113
85
80
134
175
85
130
109
93
120
123
87
113
69
119
136
113
69
78
136
87
93
175
97
119
89
113
118
136
69
80
110
80
181
119
127
119
119
164
111
107
144
136
99
134
127
131
154
87
89
109
137
85
150
101
104
144
80
87
76
92
88
103
94
107
109
100
118
101
87
130
134
89
91
114
154
91
99
103
110
99
113
69
90
69
99
143
113
113
130
111
111
100
93
175
148
80
148
130
136
80
89
145
129
131
166
136
134
80
119
78
80
69
106
126
141
199
72
175
104
80
87
175
120
107
69
69
90
78
99
43
80
99
89
92
88
104
127
87
114
101
105
80
83
69
150
119
175
109
104
111
78
104
116
121
109
98
80
93
120
109
107
72
111
80
118
140
69
154
72
80
64
160
77
76
80
101
148
145
78
99
93
99
87
121
109
163
130
86
80
119
69
94
115
89
82
175
89
130
69
104
113
78
129
69
155
63
75
94
80
121
115
69
87
149
69
80
91
69
175
121
80
69
113
76
78
80
110
68
74
104
101
107
93
106
78
185
113
136
93
71
106
154
80
99
69
93
80
140
156
102
114
99
80
69
106
145
101
146
87
113
80
131
76
126
88
154
69
95
80
106
94
128
69
100
107
81
78
98
117
148
74
128
98
69
73
69
123
146
78
157
112
69
87
111
94
111
112
94
107
52
96
106
112
107
87
120
91
155
92
80
140
94
90
155
100
91
150
134
138
129
116
113
94
78
69
80
56
148
89
99
107
56
96
134
120
97
98
116
80
94
104
103
113
137
73
99
69
118
75
128
145
134
74
203
151
80
96
106
199
69
136
89
107
69
80
147
78
85
96
113
112
127
147
172
119
124
96
80
112
78
69
142
87
106
128
124
209
119
117
106
96
140
94
98
95
110
119
87
80
119
134
101
69
100
69
128
101
113
134
80
117
69
69
78
87
69
80
119
175
118
78
76
148
74
98
117
117
137
142
175
106
76
80
151
121
80
80
125
87
90
80
103
110
109
140
151
125
140
154
111
106
129
155
126
151
89
155
98
85
78
85
52
79
99
155
102
69
106
140
88
134
88
133
69
78
78
112
118
88
90
122
95
119
80
114
69
113
76
121
76
92
128
104
80
131
99
113
113
78
117
80
80
112
154
72
99
81
140
114
146
69
126
163
88
119
80
119
92
137
134
80
80
127
100
104
80
78
69
76
169
68
78
97
109
80
131
101
80
156
80
155
80
78
100
174
76
119
107
111
69
134
90
154
127
126
120
91
69
112
78
96
116
85
125
151
72
78
106
149
106
119
101
87
99
101
102
121
96
80
80
67
103
120
144
56
119
80
115
109
99
100
114
80
87
102
101
197
149
72
129
120
123
79
114
110
154
69
140
121
145
94
83
80
128
89
101
69
134
111
89
80
76
80
105
84
80
90
80
87
78
95
78
99
87
187
112
52
128
117
69
119
72
88
134
140
78
69
96
87
66
76
87
120
111
80
175
104
91
121
80
110
119
109
94
164
69
140
80
122
99
128
87
80
107
85
78
69
104
87
101
88
123
138
94
132
120
109
111
69
152
147
132
141
91
87
123
90
69
80
100
106
124
99
88
133
115
106
100
69
80
80
152
114
127
87
101
134
99
115
123
80
101
57
80
135
91
97
163
89
109
136
175
106
127
119
107
76
93
106
156
107
160
80
104
128
67
88
76
87
89
128
80
111
119
118
101
78
121
151
89
104
80
127
80
154
106
80
103
110
142
119
87
80
91
144
80
83
90
87
87
91
119
101
128
88
69
77
76
119
147
185
78
80
110
80
87
80
110
107
128
104
157
90
107
107
89
94
109
143
121
122
76
87
103
114
151
120
121
145
136
69
93
85
120
121
136
101
87
80
110
109
112
104
107
126
197
197
122
199
69
107
93
72
141
78
154
76
87
197
80
80
175
87
76
80
69
128
154
126
69
126
91
95
127
78
161
119
94
96
88
87
140
87
91
117
83
83
101
163
94
78
80
102
78
91
133
116
87
80
80
101
131
120
163
112
125
104
89
80
69
115
118
74
130
87
109
106
119
128
89
156
147
80
78
104
102
80
136
164
78
119
175
80
154
79
131
197
172
54
134
160
131
78
119
107
127
129
99
128
140
113
106
154
96
69
203
106
76
115
78
111
69
99
110
166
103
111
140
118
72
91
94
137
119
117
69
136
132
80
72
78
93
95
106
94
52
89
100
104
197
101
152
148
143
79
175
130
117
137
125
74
134
88
113
69
151
69
114
80
80
106
76
146
108
140
120
157
172
175
119
88
155
69
145
130
142
106
142
154
113
80
130
166
129
155
80
88
56
87
69
120
87
69
110
134
164
59
92
72
104
88
120
140
107
89
139
69
154
124
87
87
80
141
109
119
134
146
88
118
107
117
106
88
88
109
151
102
87
105
69
163
89
119
94
106
94
78
104
90
93
87
111
89
87
155
94
56
162
187
127
128
54
102
107
60
119
163
87
119
157
94
113
89
79
88
103
93
91
80
96
80
87
91
87
80
154
80
69
111
113
117
110
109
172
96
89
80
118
137
76
136
163
108
131
104
88
69
69
112
99
120
110
107
135
78
91
175
113
146
109
132
91
98
118
127
128
108
80
110
174
171
69
109
91
201
76
66
80
110
69
96
130
181
118
110
76
146
117
69
164
87
98
69
80
76
99
80
126
93
99
155
89
136
80
59
163
137
148
82
134
89
124
119
69
90
114
144
121
80
115
76
72
43
143
80
101
121
134
175
193
163
107
52
94
175
106
74
96
83
69
52
76
89
104
107
83
98
154
112
155
76
99
109
69
156
201
152
111
80
107
121
91
80
54
128
123
76
154
147
69
128
89
136
145
103
136
96
127
131
113
94
131
101
72
78
123
104
89
71
132
69
69
128
126
69
99
163
119
87
125
164
88
155
150
128
85
99
96
145
94
154
120
120
80
78
74
181
69
93
128
87
120
100
107
80
69
113
133
136
90
137
164
139
76
110
140
128
80
115
106
80
99
80
117
113
104
143
129
155
78
156
175
141
89
151
80
88
127
104
120
175
141
80
87
88
120
155
131
100
110
134
175
83
54
71
128
119
94
131
112
76
102
115
120
99
130
87
134
74
87
52
134
157
145
101
69
101
85
80
119
83
99
115
134
164
80
76
197
113
97
101
120
120
96
90
78
94
123
54
110
76
153
80
96
120
155
88
93
128
104
80
85
78
85
69
102
99
93
78
101
69
87
155
98
104
79
160
88
136
132
96
122
85
91
128
52
80
154
126
145
148
149
197
197
96
78
69
78
134
120
87
109
89
80
137
113
100
80
181
175
88
175
75
76
76
80
118
63
72
88
94
119
109
80
69
124
156
107
76
99
175
43
113
80
80
123
109
80
132
126
107
76
141
107
56
107
110
124
69
88
119
109
157
127
78
69
96
111
107
106
131
72
121
91
76
69
78
66
93
69
155
88
74
102
131
117
80
107
151
118
96
142
120
137
105
137
160
69
80
80
103
89
130
119
87
88
74
175
69
140
75
89
114
120
122
119
95
126
87
69
99
94
151
93
93
112
69
76
126
54
106
103
69
134
119
147
72
107
113
72
120
111
120
107
127
119
118
94
93
68
172
110
78
118
69
95
175
121
131
109
88
137
120
117
88
119
121
88
88
78
109
119
92
164
134
176
99
69
119
76
76
69
112
80
80
59
115
140
128
78
88
119
78
122
68
57
80
145
76
43
120
83
99
80
147
156
107
87
106
69
88
175
132
88
99
79
78
69
100
69
143
78
118
121
109
81
69
122
99
154
123
140
87
119
107
69
112
117
80
87
99
117
76
102
100
123
185
169
175
69
197
89
78
128
151
91
74
119
59
128
138
91
94
76
169
124
99
132
155
80
118
163
102
69
128
119
185
91
106
139
76
80
113
87
88
79
140
108
116
131
189
93
99
128
78
125
131
145
120
89
174
92
91
96
89
94
131
110
89
87
94
87
52
103
105
89
101
121
87
96
120
99
76
89
78
154
116
80
129
54
156
140
80
80
149
88
87
80
109
124
80
117
93
120
151
131
69
156
90
106
80
92
69
133
85
101
120
80
69
117
80
76
67
118
66
140
95
146
69
175
145
115
128
60
93
96
87
99
102
120
132
131
110
142
80
129
125
96
88
118
155
89
129
155
87
43
114
109
80
107
78
69
109
102
115
120
88
152
115
87
80
133
124
112
87
72
146
100
80
155
71
111
132
119
136
79
107
69
80
138
144
85
115
126
145
69
108
96
105
120
106
80
74
77
199
131
91
92
148
69
107
141
136
94
76
72
130
88
64
76
152
88
109
102
107
154
89
78
104
87
76
149
79
80
99
99
69
146
111
154
113
110
80
87
93
155
91
80
94
121
100
118
69
120
80
106
175
93
130
75
117
146
75
84
56
107
92
124
80
125
76
87
95
103
119
99
96
100
91
112
123
88
80
131
76
160
78
147
100
117
120
87
149
69
103
80
154
124
119
137
101
87
95
76
156
156
133
151
148
106
120
96
84
112
151
87
87
107
96
155
93
151
121
107
119
126
52
119
88
69
134
104
117
107
87
80
80
142
139
88
80
145
94
102
76
107
78
73
115
89
87
80
78
88
111
103
122
76
163
116
80
80
80
103
78
122
140
126
120
88
80
89
120
99
110
115
80
52
80
175
120
104
96
146
128
80
76
107
99
80
107
106
84
120
126
98
93
87
126
120
112
104
103
128
137
187
113
155
119
127
104
80
80
154
75
155
119
78
120
128
87
68
78
106
78
80
175
80
123
72
93
90
177
89
87
127
164
103
99
78
69
110
130
76
91
124
80
113
87
78
75
133
99
126
94
134
130
145
95
104
156
133
144
69
151
92
109
101
142
112
106
128
136
80
140
122
114
121
78
109
138
129
93
139
54
80
138
76
175
104
120
136
96
74
88
77
109
87
64
93
87
117
80
87
107
117
75
113
154
87
131
119
99
113
93
87
118
93
104
128
72
76
69
78
162
74
88
164
109
80
140
140
67
113
109
96
94
87
117
88
111
79
78
120
131
120
131
131
69
76
183
185
126
110
128
112
124
115
154
43
104
107
124
120
128
136
74
72
89
89
69
111
115
104
115
175
111
80
88
99
124
136
99
69
94
80
112
78
94
78
80
109
156
197
89
69
146
69
117
136
80
98
66
87
128
87
76
112
119
102
80
111
100
69
187
96
101
107
56
154
148
76
88
151
109
156
104
197
134
149
80
119
175
155
76
93
127
103
117
98
76
114
80
175
119
119
80
89
93
145
112
115
197
106
107
138
115
82
128
121
91
80
122
80
78
132
123
106
76
111
99
76
119
154
123
145
140
123
99
109
120
197
156
157
137
103
78
90
117
60
128
80
109
111
104
87
80
90
120
154
134
130
110
88
128
152
88
72
123
134
60
137
69
74
81
54
72
156
80
138
181
69
136
59
112
156
99
114
87
107
129
115
43
126
94
118
111
76
126
107
72
119
109
80
80
71
125
110
131
199
93
119
87
128
119
92
76
151
125
119
54
99
93
87
95
110
127
121
151
87
104
104
87
76
128
94
144
87
72
99
88
99
89
131
89
99
80
111
69
81
69
78
80
78
142
134
119
104
76
112
117
106
76
93
100
76
104
87
114
128
112
54
110
89
80
119
154
104
120
175
107
95
89
88
88
128
116
123
150
76
129
104
107
121
69
80
87
76
87
87
72
139
128
90
72
109
76
86
88
58
115
118
113
150
69
135
136
80
80
103
154
119
163
154
164
137
116
80
76
101
87
120
78
54
72
85
76
63
85
99
96
87
80
128
87
107
107
104
100
110
90
76
81
80
80
78
128
181
111
78
76
98
80
99
146
104
120
156
143
106
87
175
82
110
146
175
119
136
69
95
56
134
119
87
107
72
69
56
116
175
122
78
66
69
102
88
95
146
108
133
162
87
151
104
144
110
60
128
69
120
151
69
87
88
140
154
155
78
104
119
105
89
87
104
97
109
76
69
101
105
80
103
131
112
140
114
119
164
145
113
118
115
80
80
151
164
99
119
74
127
80
144
88
59
80
151
119
146
148
96
56
89
94
144
146
79
110
115
134
76
87
136
69
131
88
126
113
72
106
80
93
80
100
80
95
131
91
110
154
78
119
72
101
43
137
88
109
110
133
174
52
103
117
72
118
54
69
94
80
110
107
109
134
94
78
76
199
72
101
96
63
88
114
105
152
64
128
175
69
119
157
80
80
80
122
127
151
78
80
94
78
91
123
142
99
137
152
69
122
140
88
75
75
69
134
112
128
123
94
175
109
151
134
104
99
164
107
172
134
93
107
80
76
94
111
154
96
99
107
155
80
72
107
136
120
121
107
128
119
69
94
67
132
91
91
98
127
116
80
88
80
80
131
96
128
104
127
108
123
124
94
74
124
109
83
175
109
76
109
93
69
110
110
69
87
109
117
156
175
136
110
69
90
151
110
120
102
127
69
137
175
154
94
117
107
119
102
79
145
156
89
109
156
136
80
111
113
133
95
154
99
113
54
164
120
90
99
175
127
100
82
156
109
100
100
78
197
115
175
175
117
89
148
155
96
80
89
119
129
56
113
94
106
87
154
73
119
122
122
107
124
99
89
88
87
94
78
114
197
107
95
110
91
80
102
93
72
133
122
145
68
69
156
120
96
110
104
117
101
92
80
119
69
102
118
80
54
110
69
109
104
99
121
59
136
74
156
85
76
131
106
175
87
99
119
87
72
119
89
88
112
91
128
69
89
74
69
85
69
80
111
120
80
107
136
96
136
83
139
123
128
88
148
93
80
109
80
116
121
122
96
109
107
100
78
78
93
106
80
151
78
103
114
113
143
130
80
151
78
80
183
117
117
159
120
175
101
78
100
109
134
99
80
79
80
148
56
121
69
111
119
71
121
120
148
103
78
111
80
110
89
119
76
76
94
128
89
78
106
121
79
107
69
156
104
122
185
123
89
107
120
99
111
80
76
88
80
130
199
109
123
75
175
87
69
78
136
118
96
101
80
87
110
76
52
80
148
119
82
74
145
106
134
129
76
94
87
133
118
128
94
102
94
144
125
109
121
80
87
107
99
119
91
88
120
140
78
169
87
120
149
110
163
83
131
87
160
75
99
118
99
99
131
153
175
87
80
109
78
100
104
52
99
104
80
123
119
88
107
106
80
69
96
173
76
77
69
93
89
68
78
84
89
80
120
80
165
100
99
90
112
80
80
89
113
121
104
56
197
76
117
87
80
131
75
119
144
56
80
80
103
120
76
71
89
154
104
176
80
131
117
69
88
120
83
68
113
69
80
72
140
106
113
150
89
87
137
106
120
154
104
120
136
76
80
104
113
120
119
112
88
114
121
122
155
107
166
163
89
69
112
80
123
76
64
69
99
154
88
72
101
87
145
80
132
80
87
54
109
94
72
136
87
175
80
80
106
96
156
99
113
104
56
111
107
125
110
119
80
69
112
121
100
145
111
87
76
54
110
80
80
119
72
67
131
87
98
134
109
143
89
80
76
90
141
52
129
80
148
110
143
104
89
74
92
110
146
88
52
76
131
106
80
113
121
121
80
85
128
87
106
126
134
117
113
154
91
114
80
88
80
99
175
88
132
113
120
121
144
93
111
96
126
146
80
87
187
99
127
146
113
69
80
88
78
69
154
102
87
146
72
74
175
82
127
174
119
101
87
133
100
99
96
123
101
88
139
68
69
93
181
100
80
148
94
101
136
80
94
87
109
90
118
74
114
140
136
80
80
119
88
105
123
69
156
107
69
130
117
104
106
134
136
94
120
100
64
140
72
113
145
119
78
121
175
103
86
76
79
96
74
87
90
115
113
96
151
87
109
156
197
76
175
69
78
113
113
123
78
78
93
144
109
175
82
119
117
72
87
101
112
102
69
99
152
74
120
69
80
96
113
122
78
133
72
80
119
130
69
121
74
89
129
118
99
87
102
94
104
80
80
68
102
154
107
101
80
118
109
99
89
80
109
76
209
120
88
104
137
89
99
99
87
76
121
79
100
155
107
154
80
110
122
177
107
80
80
163
118
99
69
197
84
69
87
197
78
69
99
124
120
119
87
119
129
142
69
100
96
129
80
128
76
114
131
76
134
109
156
145
106
64
111
109
146
122
108
106
56
115
110
69
118
69
67
80
121
91
87
54
56
89
98
56
78
99
99
80
54
64
77
146
80
87
72
76
113
95
117
96
78
124
109
76
131
154
119
112
91
157
106
99
99
154
112
115
155
127
137
89
101
85
80
80
106
164
87
76
104
89
127
93
131
72
69
89
76
99
117
122
136
154
94
115
80
103
94
91
80
153
120
87
96
87
117
148
135
101
69
76
140
175
91
78
54
69
94
80
120
78
107
82
94
99
54
112
102
149
119
115
112
80
121
88
94
69
124
106
124
122
87
68
80
163
119
110
69
100
175
80
121
99
109
130
96
118
107
193
104
111
119
120
164
123
108
175
96
155
107
119
107
96
107
69
80
78
153
69
54
69
107
87
114
114
78
120
56
130
175
120
90
58
131
82
72
78
120
80
128
100
113
76
131
154
69
80
154
72
87
120
72
80
134
76
72
87
88
113
92
69
126
175
98
129
74
69
80
118
126
113
91
145
73
115
118
124
80
145
197
91
93
117
98
106
82
80
69
80
107
174
100
121
127
131
154
76
118
117
69
87
137
93
78
120
175
101
52
54
103
80
100
89
69
92
80
88
113
147
97
96
69
160
126
80
132
104
144
72
109
106
119
54
69
143
87
52
128
89
150
136
131
151
99
69
66
175
76
69
118
131
80
133
69
119
87
141
96
86
113
97
120
155
80
80
79
69
80
103
89
115
89
197
99
164
83
87
107
113
110
106
88
76
91
183
145
110
117
120
80
156
89
154
109
110
101
80
69
104
104
110
89
144
108
140
109
80
111
119
83
175
80
109
112
139
174
96
69
88
197
127
144
165
96
88
121
119
143
91
113
105
128
99
69
91
172
164
67
102
80
128
110
175
80
154
109
109
78
76
76
99
197
111
151
102
163
80
76
85
118
171
139
80
103
69
69
126
138
154
89
120
126
150
160
87
119
81
54
87
78
142
69
119
154
91
123
72
76
87
72
69
131
101
99
93
133
97
80
69
122
137
109
129
113
181
79
110
88
149
107
100
87
197
102
80
101
93
163
94
118
134
96
110
119
164
80
139
112
119
120
93
76
120
119
54
107
107
91
133
112
175
88
119
164
80
113
134
175
76
136
82
76
69
86
72
197
69
151
107
69
128
101
108
114
121
87
137
69
101
183
89
119
69
106
175
151
136
119
120
96
154
121
153
156
120
164
129
80
106
69
109
91
127
132
175
178
102
78
156
80
99
126
153
119
119
92
96
78
107
69
64
107
104
144
80
102
89
112
80
119
80
80
91
69
197
80
113
119
69
87
75
113
140
101
80
80
136
69
106
128
80
102
110
104
87
94
119
92
102
80
99
100
78
153
131
72
109
98
136
93
80
119
117
90
52
78
69
80
131
119
111
89
94
106
91
85
115
137
120
103
134
78
164
89
80
141
122
115
72
54
134
111
96
99
197
134
101
110
121
85
113
117
151
69
155
72
130
128
76
92
91
69
96
120
151
76
134
78
91
72
117
139
67
76
117
119
111
146
147
175
93
147
80
110
119
89
115
87
144
193
69
144
89
131
79
113
93
112
71
197
95
163
78
88
66
166
107
88
69
142
80
134
78
56
113
175
80
163
94
80
155
146
151
69
147
80
80
107
87
85
76
131
88
52
96
197
117
76
91
134
132
54
69
148
54
85
77
119
78
93
136
80
78
80
69
88
148
72
88
127
151
125
119
69
80
128
101
94
103
92
185
120
69
137
151
151
80
80
98
95
80
121
119
97
78
106
134
90
80
106
95
88
102
76
133
144
89
75
123
128
113
118
118
145
124
154
95
131
117
127
124
90
74
54
57
110
89
96
54
69
78
131
99
80
99
154
134
78
78
78
69
82
99
52
88
80
85
199
104
125
80
117
157
134
54
115
129
82
175
113
96
99
80
54
121
130
69
87
113
134
175
148
175
122
95
126
91
120
74
80
78
85
69
175
89
197
119
140
66
78
154
63
87
83
164
117
78
142
145
111
101
123
100
112
117
75
124
87
88
175
72
69
123
90
99
175
94
93
148
89
54
107
88
117
99
154
78
164
54
174
134
101
69
76
80
109
101
106
132
109
112
165
80
148
156
94
131
92
133
88
87
99
120
138
110
143
106
108
120
102
145
69
147
78
122
83
121
87
124
120
98
69
80
169
80
142
138
119
112
154
80
134
128
143
80
100
88
136
76
154
96
101
109
133
99
88
75
60
120
72
88
131
89
118
101
76
94
128
112
69
154
131
78
132
120
143
85
134
152
91
136
147
43
128
91
76
95
175
104
101
112
96
107
89
121
69
119
88
93
106
127
117
101
175
80
128
94
76
151
71
78
94
109
93
136
87
100
64
109
70
103
52
94
126
121
80
63
72
121
134
123
121
120
80
127
129
88
121
80
112
96
66
145
99
85
154
91
136
69
129
155
155
97
121
69
104
80
91
114
96
107
99
78
144
107
94
121
127
134
136
76
107
117
69
87
87
88
52
117
155
136
89
89
197
69
119
175
87
137
87
143
159
112
136
96
72
82
146
87
110
175
78
87
72
80
96
69
77
126
85
134
121
71
146
110
163
129
107
108
52
101
56
151
131
154
104
175
109
80
147
69
52
144
87
69
132
104
76
130
87
109
119
94
106
120
119
80
80
120
117
76
125
154
100
152
92
80
88
72
94
93
131
112
127
87
119
76
104
69
88
96
104
110
91
113
76
87
94
117
117
87
69
69
128
96
119
134
80
113
110
144
121
138
148
80
69
88
96
72
69
67
76
69
121
133
131
88
99
87
80
133
127
80
115
120
110
91
135
125
132
69
109
141
137
100
151
107
76
69
78
96
88
101
136
83
87
83
107
78
112
122
119
56
132
138
99
175
99
79
99
134
96
147
104
96
94
128
109
130
115
124
87
91
107
78
87
80
80
87
112
119
78
78
73
80
134
123
111
80
185
117
94
80
94
78
80
154
148
87
94
87
94
91
113
140
88
96
106
89
120
80
115
123
96
118
109
80
94
56
76
98
146
105
111
79
107
102
69
83
107
103
109
130
87
119
117
80
85
43
85
175
137
78
74
80
138
156
78
110
132
80
80
93
134
101
119
106
122
80
111
90
87
69
158
80
156
101
99
80
74
172
104
87
58
83
101
107
129
101
94
150
119
112
114
119
110
102
162
89
119
69
118
120
80
96
131
159
128
113
76
76
74
80
68
107
87
152
106
99
118
87
129
88
119
77
99
125
97
119
98
154
94
109
120
128
88
140
87
80
80
111
144
175
131
87
109
123
88
54
120
110
112
104
87
110
151
104
131
127
91
140
100
175
154
85
129
165
94
72
109
88
93
110
69
121
109
100
136
108
115
87
127
104
87
111
146
107
136
100
76
78
175
154
76
104
74
183
78
124
135
128
75
100
119
93
109
69
96
101
115
147
69
136
76
109
154
72
78
137
80
118
156
99
131
120
80
128
78
154
76
101
151
80
133
113
115
79
102
80
76
54
147
88
104
133
106
183
105
78
106
102
99
149
102
78
97
88
138
106
154
94
76
107
72
165
134
80
94
172
109
151
102
112
72
136
80
175
77
80
128
76
140
110
87
160
107
94
96
155
78
66
80
69
108
99
78
146
69
119
103
138
154
175
71
80
69
108
104
163
148
120
76
89
134
69
88
160
136
72
76
120
104
89
118
134
113
132
106
155
80
103
130
110
78
164
106
88
119
87
147
110
69
99
99
100
106
163
80
128
110
121
147
147
76
85
136
89
164
103
107
91
64
140
86
174
119
104
80
93
69
106
131
89
126
80
107
60
80
104
107
80
80
87
128
80
175
134
156
162
107
72
111
80
82
78
87
117
69
67
156
78
107
94
69
151
74
128
94
104
113
160
102
121
155
89
80
148
79
94
89
113
128
160
109
126
113
139
126
174
80
136
145
154
106
119
120
78
97
96
92
69
103
106
69
101
128
112
102
76
120
78
69
103
113
96
104
123
69
69
89
78
156
127
87
119
93
122
98
93
113
175
155
94
69
76
117
106
114
69
69
108
115
78
87
140
87
64
69
78
90
101
155
101
102
146
80
69
112
95
136
59
163
76
72
164
132
76
87
134
154
107
83
131
125
155
89
84
94
94
54
96
104
109
69
136
120
100
187
87
134
197
88
119
105
69
130
126
123
104
128
88
121
69
96
80
106
128
127
80
106
109
99
119
91
100
95
99
137
175
175
156
88
99
110
89
90
142
144
80
134
69
134
155
69
90
109
80
97
130
69
151
94
52
96
74
94
101
88
78
121
145
80
80
80
109
118
52
109
87
91
146
79
82
89
83
154
80
89
80
129
72
104
78
74
100
78
103
123
112
85
146
100
113
78
80
78
69
138
80
89
87
99
112
95
154
119
99
101
80
151
161
102
80
76
175
74
80
104
107
169
87
83
88
114
80
80
80
163
72
96
80
76
118
126
89
166
76
119
87
175
137
80
78
96
114
134
69
69
69
76
96
69
92
76
121
72
142
115
128
107
87
69
106
175
109
115
93
115
74
132
56
74
108
109
87
109
124
152
123
94
94
87
136
93
120
136
85
83
54
102
69
78
67
89
111
69
94
85
140
163
107
69
131
103
101
100
129
87
101
128
69
107
132
80
121
80
80
128
91
132
69
96
72
160
80
169
67
134
136
109
89
133
99
76
134
166
119
67
93
131
104
80
121
87
85
138
99
130
87
101
128
110
107
89
96
134
72
151
66
69
120
80
90
52
118
88
138
76
147
80
104
119
80
109
87
118
152
156
78
80
97
140
87
110
148
140
99
119
142
143
80
109
69
107
103
76
118
69
101
147
94
101
156
88
121
112
106
56
134
151
121
78
144
94
99
121
78
109
139
123
121
80
112
99
80
150
114
110
125
112
94
107
197
172
110
123
76
69
136
94
140
174
80
88
106
69
113
122
124
87
160
112
43
80
110
175
80
91
128
69
111
177
101
90
117
175
131
127
80
78
69
80
80
69
111
120
76
75
104
119
126
119
88
80
124
95
113
134
111
100
93
176
145
121
87
104
140
69
119
69
106
101
128
104
89
88
111
111
197
105
101
150
69
87
134
80
69
71
106
88
87
69
131
78
80
93
69
119
114
120
69
79
72
134
130
85
74
140
104
87
120
137
87
148
96
128
76
113
154
120
80
94
84
147
78
91
136
138
134
150
154
122
80
80
52
96
52
87
128
111
52
69
151
76
112
87
96
151
78
101
86
80
80
127
102
109
110
104
128
80
175
109
145
137
88
156
109
106
94
110
145
80
122
107
109
80
94
127
151
140
127
117
69
82
131
99
119
136
121
107
133
132
199
143
109
117
124
88
87
155
119
110
79
87
117
175
145
104
76
124
116
80
161
80
114
85
119
124
73
94
69
155
83
88
144
107
67
76
69
151
96
151
136
132
112
127
85
122
116
119
101
117
109
78
119
99
87
88
89
100
136
120
101
76
177
80
56
91
80
107
80
87
128
120
92
146
72
137
107
152
93
80
78
80
131
107
156
112
109
139
146
91
80
122
80
177
113
98
124
99
107
78
106
52
128
89
197
87
69
128
120
117
136
155
104
95
78
133
111
117
175
164
85
54
175
132
87
89
112
127
145
58
80
93
100
119
95
117
109
181
148
136
78
120
72
113
93
115
165
151
118
140
80
89
123
85
96
134
91
106
175
154
80
101
80
87
166
92
80
69
89
113
106
80
69
109
87
96
123
52
96
126
78
120
78
120
104
110
120
78
78
97
136
134
126
67
122
88
156
95
117
80
111
117
104
78
154
69
78
209
117
88
93
85
112
92
107
100
175
76
128
76
85
140
175
82
109
80
96
121
131
128
89
120
88
131
93
77
108
54
147
127
116
144
109
87
89
124
80
60
175
131
77
76
139
109
91
94
80
75
87
69
111
78
118
137
144
69
93
69
79
101
133
80
183
78
128
78
94
80
106
129
87
117
120
78
78
80
128
107
107
76
104
80
154
123
132
111
80
112
166
106
109
83
87
107
127
110
96
76
80
119
95
80
78
149
136
104
130
144
120
201
72
100
78
175
109
119
99
94
80
146
88
110
76
120
67
80
80
89
126
108
111
92
87
87
80
103
107
80
111
156
106
197
80
72
115
154
183
104
69
118
108
128
69
98
175
80
88
84
113
166
136
91
98
91
74
69
127
109
80
87
134
151
145
96
107
69
87
131
147
128
137
113
88
164
103
110
106
119
163
156
105
78
89
99
79
112
101
136
129
103
69
80
175
72
107
134
99
133
163
102
110
69
56
112
76
111
154
156
134
78
126
162
78
107
69
119
154
89
134
98
89
121
101
110
87
69
98
80
143
87
139
110
76
87
91
80
111
107
106
125
138
89
112
69
131
102
119
94
99
101
80
131
113
107
109
94
88
69
96
76
113
87
80
136
102
69
93
125
124
104
80
119
175
78
131
87
155
121
69
128
118
96
112
115
91
110
106
87
87
119
102
80
69
164
117
56
78
81
69
99
89
136
136
138
119
80
116
83
120
101
104
134
120
128
134
109
156
52
114
130
69
80
131
74
80
120
58
137
120
91
87
112
68
69
154
74
93
103
72
74
80
155
52
109
104
109
88
91
109
119
76
69
120
131
154
93
107
109
80
144
130
120
69
120
122
115
87
118
80
80
119
96
85
152
131
109
160
93
106
134
96
113
107
87
113
120
89
112
104
75
69
140
92
154
106
126
136
91
96
106
185
123
123
87
119
74
110
87
131
78
76
76
154
78
110
147
163
80
102
80
99
156
69
43
96
96
83
106
72
154
80
69
69
175
78
87
94
87
96
102
130
144
80
64
114
93
54
106
136
117
115
76
69
123
56
94
130
106
101
115
119
144
95
121
80
78
112
140
199
76
80
94
113
110
80
95
111
107
80
110
109
111
90
80
80
122
134
118
107
88
94
102
117
112
127
111
72
197
88
80
120
87
87
78
89
161
175
92
69
144
160
103
99
78
129
119
154
80
89
136
131
91
117
72
95
87
128
119
107
86
58
88
134
69
69
136
72
145
80
175
87
154
137
96
102
69
120
80
116
102
112
78
145
134
120
87
87
136
76
63
76
130
117
99
133
87
116
78
93
69
76
106
90
93
142
121
121
78
123
76
78
80
120
80
134
107
80
78
72
60
96
85
118
155
99
148
107
78
80
119
114
56
82
112
52
87
187
127
94
69
131
52
113
103
106
76
140
163
88
87
59
140
146
80
96
121
76
175
175
121
76
119
76
140
76
69
59
69
69
79
69
136
94
121
109
54
79
80
107
116
197
78
156
134
106
90
164
175
80
107
88
122
100
99
151
87
96
100
106
120
97
131
99
172
126
130
112
98
88
121
76
99
74
130
76
121
103
139
175
96
71
99
142
99
156
137
69
69
90
85
115
110
120
128
93
80
67
132
99
109
164
69
64
88
138
132
154
78
111
131
95
128
71
131
74
80
83
69
98
130
105
76
97
119
130
80
99
112
111
131
109
134
101
110
69
128
137
136
148
140
99
145
78
91
94
79
80
89
129
136
137
88
113
99
114
101
120
106
154
87
111
69
90
80
103
187
132
101
80
91
80
199
101
69
69
96
114
119
137
134
162
122
94
120
104
120
160
94
119
132
69
74
79
155
86
134
129
69
82
117
87
99
99
106
67
107
175
136
78
99
93
66
80
107
122
120
83
78
120
89
99
113
88
80
120
107
119
66
127
89
107
128
119
69
99
127
100
104
80
69
150
99
87
107
80
94
117
78
102
80
87
89
110
175
181
66
89
69
87
131
138
140
183
117
109
88
106
174
109
99
112
132
129
88
140
146
99
69
81
102
120
144
119
148
80
131
69
69
146
154
95
87
127
88
110
87
78
102
136
113
121
73
80
80
54
124
119
76
80
98
104
69
175
94
96
112
136
146
87
147
136
129
87
99
99
151
120
133
163
175
110
123
119
138
104
88
132
118
123
133
127
109
85
82
82
149
77
110
90
91
118
77
93
175
100
88
128
149
87
125
72
91
101
87
109
175
64
156
106
144
78
88
88
107
88
74
93
78
69
175
78
104
104
112
87
99
80
76
96
147
78
87
151
54
145
82
121
99
120
73
78
87
123
109
110
80
54
134
107
132
43
54
117
99
99
88
106
203
80
114
87
106
85
78
69
110
140
136
101
206
100
82
140
89
76
96
80
72
136
111
118
88
101
78
128
151
69
87
120
118
131
154
125
72
98
56
134
69
117
134
113
91
101
69
142
174
96
87
88
100
88
120
128
87
137
109
96
88
164
100
80
164
140
76
69
107
78
64
118
119
66
78
69
69
76
56
169
89
185
107
80
88
82
89
121
197
112
129
119
121
69
120
69
76
131
156
181
175
80
147
106
88
140
148
99
110
134
127
91
80
80
111
197
69
64
96
87
140
72
111
75
119
112
75
69
80
103
197
88
80
120
105
71
90
128
87
91
187
87
80
87
80
129
91
140
78
80
109
69
78
107
81
87
54
71
69
117
110
110
179
209
130
87
140
80
115
86
107
115
162
80
89
119
104
136
115
120
106
110
153
80
43
101
87
74
80
91
109
197
110
69
108
87
94
123
117
142
80
120
126
145
78
124
119
100
105
120
80
80
54
87
151
99
76
54
89
104
128
89
95
137
110
67
87
76
119
123
136
87
128
92
80
78
69
76
130
76
74
183
99
80
78
175
137
76
91
88
154
132
83
110
109
154
121
69
126
80
69
175
95
109
112
107
88
110
69
111
120
69
90
80
80
80
74
95
69
107
118
80
69
131
80
136
80
94
137
143
52
143
120
155
87
87
114
80
104
106
87
101
107
88
175
109
123
89
109
76
96
76
76
117
64
131
88
121
69
197
136
114
167
80
80
106
80
119
78
94
151
104
74
117
154
130
163
68
154
133
78
156
106
119
130
89
90
178
163
43
93
80
183
80
115
136
118
89
88
80
151
156
88
69
69
139
80
138
69
97
76
72
107
127
125
120
78
76
136
87
123
71
113
135
69
157
113
71
80
113
197
117
138
119
80
110
90
162
94
122
134
80
119
94
101
78
105
136
69
80
69
110
80
113
146
169
101
75
88
101
136
126
175
142
143
155
83
104
143
211
78
136
128
69
109
104
128
125
119
99
128
71
153
80
88
89
145
80
56
106
121
88
175
197
145
69
121
95
102
57
104
111
112
80
128
117
104
121
69
100
104
69
122
121
69
137
78
69
87
69
166
111
142
121
69
131
78
69
131
122
155
85
75
134
82
87
109
80
69
121
78
151
93
76
119
119
144
98
122
121
111
128
69
107
131
54
87
120
66
136
78
89
78
156
136
99
86
78
112
123
69
132
140
89
129
76
134
127
76
69
145
102
103
90
80
87
118
125
69
128
85
145
98
148
67
160
110
140
88
102
163
120
128
128
69
89
80
104
69
154
100
156
69
89
87
54
80
99
141
80
166
104
109
74
102
87
134
69
78
95
80
110
88
102
127
128
80
80
129
87
123
119
59
52
69
80
119
151
148
113
100
113
80
129
80
128
146
134
87
147
119
101
103
119
146
134
75
104
110
82
112
95
96
153
80
110
120
115
80
109
71
120
87
69
163
87
136
69
87
76
83
121
56
69
134
91
136
128
69
80
155
89
69
104
80
110
106
80
115
106
119
119
129
80
130
78
99
87
110
90
97
67
102
94
156
140
80
80
175
119
107
119
114
76
140
104
101
156
131
130
131
99
122
69
155
133
79
102
118
88
80
142
59
106
132
120
132
119
72
99
131
110
117
69
109
107
139
129
99
110
106
107
69
85
121
129
197
79
175
107
80
110
121
131
117
74
134
82
121
123
104
79
91
80
68
76
78
115
119
76
87
80
107
79
99
120
127
103
88
75
98
128
110
89
109
116
118
69
74
131
128
80
80
147
106
104
102
143
128
106
76
119
80
87
119
129
106
80
122
137
156
111
74
134
140
83
128
119
78
119
69
69
143
96
151
143
151
104
91
87
80
107
80
122
63
80
154
108
138
107
72
93
154
109
162
94
78
90
78
119
109
78
137
99
154
145
122
98
87
128
120
87
69
155
140
106
101
128
94
94
56
94
151
80
152
96
91
113
175
154
120
94
88
78
68
80
111
137
99
78
100
99
114
96
148
87
199
100
107
106
89
76
85
83
146
89
76
140
71
197
103
107
87
163
131
195
140
115
76
116
183
126
107
93
125
107
94
80
151
143
69
156
99
107
119
93
120
88
80
108
85
120
112
113
134
151
101
76
110
154
136
76
76
116
126
128
121
69
115
69
69
87
134
140
117
153
156
128
69
103
99
154
134
100
80
75
102
128
80
78
78
91
94
87
83
72
80
103
78
80
119
128
156
146
56
156
64
91
175
119
80
80
96
119
80
88
119
129
80
99
78
197
78
82
140
119
56
90
93
80
99
156
87
120
74
102
96
88
140
80
110
151
87
120
126
91
80
127
155
120
122
80
106
113
90
123
136
154
134
121
140
90
120
102
137
91
94
148
129
80
106
76
69
109
89
97
128
83
91
87
80
81
114
109
120
72
156
89
122
88
94
133
130
80
127
99
134
119
71
109
76
110
89
109
134
80
78
132
143
98
128
120
79
75
164
107
80
110
54
87
88
103
154
119
112
64
131
112
154
120
102
80
134
120
74
69
131
104
174
107
146
103
100
103
67
85
107
106
145
111
96
87
146
136
143
91
154
79
80
83
101
80
117
69
76
69
143
99
87
121
88
114
87
152
69
137
80
74
93
118
154
72
130
94
119
128
119
76
140
133
74
114
128
139
98
94
123
131
128
116
107
78
120
96
69
99
100
87
145
120
142
136
84
120
106
120
155
64
104
111
89
105
154
126
119
83
131
106
99
80
107
87
121
96
80
78
110
104
78
175
112
140
87
78
78
128
111
69
72
163
123
146
73
96
69
117
80
96
85
95
74
197
144
121
69
154
133
130
119
107
128
69
82
101
133
80
106
201
80
112
80
102
162
160
101
83
88
80
117
150
74
124
96
99
119
96
78
96
155
78
101
95
120
87
69
157
76
78
154
78
119
156
104
83
80
128
119
131
109
80
107
80
78
114
80
143
69
87
120
120
140
80
124
138
127
154
69
120
98
78
104
69
126
153
147
127
69
69
134
107
175
104
80
121
85
135
94
104
85
115
87
69
115
88
100
87
87
76
97
69
69
109
105
143
63
107
156
85
107
100
156
119
120
99
145
88
138
85
110
104
106
129
110
80
72
106
130
157
52
120
100
128
206
143
99
52
126
132
133
115
99
91
75
112
118
94
114
75
130
104
76
122
129
121
80
146
76
130
89
127
69
95
140
66
127
111
117
72
72
116
87
102
99
76
91
120
78
78
95
127
119
119
134
119
146
91
155
87
177
80
150
128
89
199
88
115
89
79
151
176
73
88
119
85
140
87
121
151
88
96
119
72
80
100
78
71
87
136
99
102
69
80
166
174
69
109
183
78
80
113
144
81
155
144
140
76
78
102
76
100
134
121
149
101
175
132
80
109
117
80
113
107
125
119
154
76
131
201
104
127
102
106
91
126
120
96
175
69
110
76
80
145
154
87
80
83
94
113
106
126
99
122
110
134
80
131
176
133
56
80
77
152
88
92
107
138
104
93
125
117
75
120
90
149
89
80
80
156
119
143
175
197
175
87
56
80
69
121
89
89
112
112
140
109
80
175
163
60
134
69
122
109
111
136
80
131
126
119
99
185
76
74
123
134
80
76
140
102
148
80
123
80
80
69
80
87
69
140
68
154
128
147
54
89
80
130
165
69
111
80
80
155
118
140
76
87
87
119
107
80
112
96
69
126
113
78
109
127
88
154
111
69
66
80
134
96
122
112
92
107
127
148
107
80
89
109
136
154
136
175
87
69
124
123
80
90
104
78
165
117
140
108
128
80
122
121
112
123
137
80
122
154
101
151
154
76
80
102
78
96
78
100
109
106
80
110
120
117
100
120
88
80
87
175
143
117
52
80
93
90
114
88
131
151
107
147
113
69
52
136
52
83
72
120
85
119
117
87
119
96
159
85
102
110
113
143
109
163
175
136
66
129
166
80
78
54
69
197
108
119
88
80
80
97
88
113
129
78
128
154
80
151
103
104
154
123
106
120
73
101
76
121
85
87
104
87
52
87
96
88
114
85
88
80
127
199
151
113
80
103
133
137
119
91
136
147
107
87
145
104
151
156
108
91
134
80
134
85
127
104
99
69
99
175
101
152
80
69
91
181
76
104
126
102
121
109
98
119
99
97
108
107
107
72
127
74
89
185
175
163
109
113
69
113
87
136
111
113
118
98
132
93
94
80
169
69
69
103
104
128
104
87
88
104
86
80
80
120
74
69
104
109
175
110
64
175
119
163
93
101
169
141
72
99
71
199
148
76
80
76
88
111
175
107
102
128
122
147
104
76
142
123
106
120
76
107
109
99
106
119
117
109
80
120
139
80
133
69
80
123
120
159
137
69
119
93
76
131
83
103
90
149
141
132
87
128
106
101
128
80
69
154
87
121
134
137
127
78
69
100
101
92
69
145
154
80
118
80
81
154
88
92
113
154
175
118
123
77
101
76
134
72
113
121
97
155
83
119
104
78
106
120
72
154
76
100
101
121
106
128
88
119
127
175
97
119
98
108
126
87
119
72
63
69
80
96
85
80
120
175
99
119
80
130
134
115
120
107
87
88
119
88
155
94
107
169
88
92
122
91
117
88
114
87
80
101
80
131
99
156
107
91
80
89
104
134
109
114
80
119
115
131
98
104
136
147
102
72
122
96
119
119
137
128
92
119
76
131
95
81
98
94
72
76
125
92
87
107
134
107
134
58
69
164
78
100
101
123
80
125
100
69
69
80
107
85
107
109
121
129
112
78
90
78
123
104
183
74
94
120
134
143
134
69
128
129
112
125
87
69
78
154
90
78
78
131
76
100
87
109
104
124
78
145
66
74
96
134
120
80
102
101
98
96
54
93
127
89
83
69
126
134
112
87
113
80
109
142
80
133
87
145
131
103
112
120
80
87
80
143
164
121
112
93
54
74
134
130
144
113
135
80
91
126
80
152
80
106
69
67
175
69
87
87
112
80
101
66
71
140
181
129
99
43
87
80
121
80
98
89
52
175
117
109
100
72
130
113
121
125
80
101
73
80
95
80
130
123
117
110
155
120
93
78
103
76
82
78
87
113
161
78
108
80
197
119
80
130
140
99
105
134
88
100
78
143
130
138
87
120
103
146
99
104
122
119
84
113
80
80
175
140
99
113
109
91
123
175
76
89
91
112
76
91
197
80
120
112
160
119
81
133
78
119
149
106
146
130
69
76
130
151
85
116
104
76
117
84
80
137
120
150
113
80
112
72
160
93
175
94
151
111
131
110
78
88
80
113
152
117
118
122
113
117
72
111
113
119
78
113
69
181
121
88
115
129
100
91
101
141
167
69
101
58
138
76
71
67
144
120
156
78
56
93
136
87
119
78
95
68
133
87
72
113
137
103
127
113
110
130
100
109
175
107
99
128
93
144
134
106
119
133
69
96
129
78
85
156
144
89
145
96
87
116
104
113
137
106
80
101
72
175
121
134
162
80
88
133
69
106
69
106
87
126
128
94
76
89
100
104
174
80
88
80
78
160
80
54
99
76
118
74
130
120
93
113
95
78
94
76
163
136
143
147
159
101
199
107
140
113
109
92
154
120
94
107
91
136
69
155
115
104
113
106
151
99
87
87
142
110
54
69
107
131
78
98
160
93
99
80
140
87
99
69
151
104
80
123
101
119
136
118
120
99
96
80
80
121
58
80
175
164
113
107
132
78
63
99
185
74
113
69
69
114
131
92
76
119
197
87
185
120
69
89
80
101
68
134
131
136
128
75
126
80
94
95
128
80
96
155
87
111
80
120
126
107
82
120
109
128
76
145
119
163
119
98
109
96
119
74
131
144
115
127
88
69
104
80
107
80
69
54
113
69
87
131
114
154
149
197
113
104
80
136
99
94
94
89
99
87
69
106
80
80
91
175
175
141
73
148
80
110
87
80
110
89
78
87
82
111
110
136
156
56
89
151
74
131
80
96
111
78
134
114
145
118
109
76
98
131
93
89
89
78
87
76
94
94
172
109
137
151
82
69
174
80
164
87
119
94
87
201
134
101
107
119
107
112
94
121
120
112
80
76
119
154
104
164
69
101
79
118
136
108
79
69
121
109
121
78
78
110
87
76
52
89
99
120
118
87
121
96
43
107
98
80
151
78
109
69
93
78
128
175
107
196
74
80
119
113
128
69
109
78
140
112
134
80
107
69
96
80
83
87
78
80
137
154
76
88
94
136
100
69
87
110
130
120
67
154
76
118
78
69
110
135
75
104
76
69
147
99
123
54
69
87
69
116
87
123
94
94
87
101
83
113
103
119
119
88
88
100
106
80
96
76
94
186
131
69
130
154
96
151
89
69
130
137
69
87
94
72
90
163
58
146
69
129
117
101
196
134
112
78
103
94
116
136
87
120
164
102
131
69
83
109
101
134
87
131
122
94
134
80
125
119
107
108
69
99
96
94
76
96
87
87
76
69
43
115
128
80
95
95
78
80
94
121
118
80
110
119
94
116
126
80
100
163
89
175
71
69
121
111
87
72
76
80
99
80
106
80
99
69
80
80
80
163
97
121
160
118
143
57
124
133
87
76
119
89
80
81
175
102
136
137
80
87
87
134
80
80
155
131
87
112
114
137
156
99
76
128
123
79
144
90
154
197
74
133
69
146
154
122
83
175
104
83
107
78
117
109
121
94
151
76
119
110
87
163
125
144
80
99
69
80
140
69
172
169
99
75
106
76
81
94
109
128
95
131
80
128
166
89
78
72
112
160
128
119
94
175
98
107
107
89
111
87
80
119
154
134
101
156
91
69
111
187
151
96
123
76
80
144
56
78
111
80
131
134
155
72
80
120
56
101
80
97
81
120
102
152
137
155
132
144
69
76
124
59
143
121
122
80
121
69
78
98
107
165
107
52
107
197
66
112
163
87
127
102
111
93
56
78
78
88
94
87
54
92
103
131
80
101
80
88
130
112
80
88
134
112
136
118
148
146
85
120
121
136
107
100
133
99
120
175
73
175
138
87
52
178
69
100
74
96
114
137
128
80
136
110
93
80
72
106
146
115
107
175
78
78
121
128
87
104
134
76
78
129
136
120
201
154
137
106
69
99
76
87
80
111
120
93
107
119
99
111
154
123
92
106
113
78
69
154
80
80
80
112
87
87
111
119
80
80
145
83
74
95
120
68
81
111
143
82
148
69
88
129
89
109
69
87
87
78
156
145
69
106
127
110
117
135
76
138
119
122
199
69
69
110
59
76
102
115
93
124
104
91
146
67
78
119
157
87
178
92
106
69
110
113
109
88
120
78
143
104
117
100
90
72
122
80
95
113
93
101
110
185
76
136
117
119
89
99
91
151
134
128
73
119
149
69
94
143
113
100
54
128
103
74
74
124
87
88
131
107
109
107
56
140
95
156
99
87
76
58
121
128
87
154
120
100
80
175
89
107
147
91
130
136
129
133
68
130
145
99
117
87
74
79
128
121
107
76
87
119
76
136
134
118
117
110
69
69
79
76
90
140
80
80
136
99
120
129
131
107
107
69
76
94
137
89
131
100
128
133
56
120
83
107
93
72
110
108
150
123
99
76
140
83
118
96
89
89
69
80
112
121
117
124
83
137
133
124
69
129
113
92
110
99
117
69
69
140
113
54
134
131
78
104
80
114
96
54
134
69
72
106
107
107
88
112
120
91
54
103
80
101
88
99
56
56
69
71
134
141
80
127
120
101
115
119
125
128
174
83
87
91
69
72
124
113
123
124
134
88
175
72
128
88
113
52
88
76
149
66
89
87
117
99
119
99
87
164
78
69
136
91
112
129
94
69
145
211
78
69
197
127
104
137
120
87
147
87
80
139
69
106
87
123
97
121
134
139
85
140
93
131
76
119
89
69
91
175
113
151
87
119
69
92
134
107
88
138
90
175
109
155
87
72
110
164
156
98
106
137
143
69
72
127
112
121
78
113
156
137
80
107
146
140
154
119
76
78
96
124
120
129
128
127
93
104
131
87
80
100
119
201
140
78
87
115
80
83
94
119
96
76
89
121
80
94
57
112
96
122
156
72
88
78
80
76
87
119
78
138
80
104
94
117
145
96
78
131
90
110
102
80
119
106
69
69
155
80
72
127
56
76
93
83
113
99
78
107
87
69
114
154
129
161
89
76
87
92
129
103
114
145
118
156
137
102
124
106
152
128
104
175
72
131
155
59
113
109
102
87
175
104
89
72
89
89
80
103
128
69
139
111
69
125
110
126
76
137
80
131
93
137
115
101
75
80
175
100
134
148
76
69
79
91
76
119
80
136
120
69
94
122
80
95
126
108
80
99
88
122
69
104
69
80
119
93
96
120
124
76
128
69
117
138
109
113
118
80
175
69
56
183
106
104
69
96
63
88
115
103
145
113
121
80
69
76
78
80
123
133
87
104
143
115
131
69
72
87
72
154
122
88
88
89
113
117
87
54
80
78
107
155
163
123
156
121
113
82
104
143
118
183
85
104
89
106
87
93
127
88
104
69
72
144
109
78
87
93
106
134
99
155
80
87
89
82
69
119
134
163
87
93
69
96
69
156
100
69
101
117
112
143
69
101
69
120
94
88
175
82
74
85
107
99
136
72
80
57
80
78
90
127
100
102
127
121
69
116
96
120
166
87
104
116
147
128
199
69
107
163
80
109
93
115
134
156
155
88
119
156
74
154
120
131
119
81
74
80
127
94
56
87
89
149
102
119
156
119
127
113
175
79
199
78
146
175
106
80
145
83
121
106
96
69
106
143
115
145
69
99
80
87
99
69
113
151
72
88
91
96
117
106
69
101
119
151
82
120
68
113
96
131
114
139
109
209
108
104
78
91
72
80
67
109
76
149
138
52
155
69
78
80
87
164
88
106
156
85
85
52
76
100
66
69
119
120
120
128
121
78
87
119
140
120
125
89
137
127
119
87
100
76
164
120
109
94
175
113
113
94
134
110
78
110
134
144
74
85
126
69
92
113
155
107
92
137
145
89
106
80
52
89
82
124
87
93
137
99
110
124
97
54
175
127
69
87
110
139
201
115
169
69
131
107
80
120
117
93
102
101
139
174
146
69
131
93
69
114
80
94
102
107
80
85
134
69
91
154
133
136
116
104
107
69
69
107
109
87
74
88
117
134
183
156
72
109
133
103
175
80
113
76
163
78
80
89
90
131
140
80
96
90
91
94
151
85
101
78
113
80
133
83
54
152
114
142
80
87
69
66
103
104
87
88
107
151
87
80
69
99
82
80
110
80
115
136
78
108
106
128
117
80
114
87
134
103
99
132
80
87
89
85
138
80
103
80
119
136
101
107
89
152
80
69
131
56
76
78
109
93
88
109
99
119
128
101
154
119
120
175
121
100
69
156
54
118
80
90
108
107
117
101
80
197
132
80
128
87
163
54
140
87
107
88
131
88
118
120
129
100
110
146
101
94
157
110
140
112
87
175
137
121
52
111
136
131
175
87
112
69
69
119
145
101
143
87
113
134
56
80
148
67
93
74
114
156
89
156
126
85
107
88
98
69
101
69
133
110
107
99
147
107
127
98
175
91
101
99
87
107
154
80
99
128
89
114
80
131
89
145
107
120
69
140
96
131
95
80
69
175
110
107
87
92
131
133
122
87
78
80
93
83
113
106
156
122
102
102
126
109
105
94
80
87
137
103
104
131
148
175
136
100
99
122
107
149
81
99
109
133
119
96
80
87
80
151
99
123
99
119
96
110
118
80
76
120
107
109
145
101
109
95
131
76
52
76
99
76
134
129
134
120
78
99
74
88
52
93
96
122
110
76
102
87
80
163
98
142
78
147
74
156
98
148
69
123
69
154
151
109
150
156
114
107
80
142
117
87
124
154
93
128
80
107
76
120
104
87
69
121
76
94
163
124
103
89
80
113
114
93
107
140
154
119
175
56
80
120
64
88
77
89
145
99
85
120
119
113
151
95
119
154
131
67
121
107
66
113
143
108
89
80
201
154
125
119
109
67
94
128
119
85
69
94
185
154
80
69
78
105
78
89
175
94
136
76
102
103
80
114
120
78
175
146
99
80
137
125
94
71
120
110
133
80
136
114
117
175
108
145
94
152
99
154
107
80
85
151
117
104
110
134
106
110
123
109
115
175
107
123
80
175
106
175
164
89
125
120
88
80
125
103
119
145
87
155
80
87
98
87
93
143
88
102
134
120
113
119
143
94
96
107
88
128
148
99
118
99
76
79
149
110
99
89
69
90
138
163
110
131
56
76
112
107
90
78
78
69
111
87
87
155
144
77
118
145
119
155
56
87
131
80
111
107
56
93
107
87
152
133
67
127
121
138
69
56
106
131
101
128
80
104
156
111
76
78
154
119
107
130
89
69
43
96
87
163
193
69
91
98
127
99
96
104
178
132
80
122
99
117
88
87
119
175
118
154
125
123
113
88
89
74
80
111
153
99
134
88
107
76
78
131
140
128
107
87
110
98
122
117
175
120
99
116
99
69
94
154
69
154
107
80
93
94
123
150
72
106
117
71
80
99
117
107
104
110
115
88
87
80
117
121
54
163
80
104
175
110
74
143
143
76
69
119
134
114
149
181
98
85
137
87
99
91
91
110
107
119
127
103
107
120
102
69
104
109
88
96
69
121
131
76
108
113
94
125
69
143
144
113
76
100
197
76
120
80
205
103
136
120
87
85
130
106
101
122
183
69
163
69
82
99
104
143
80
113
152
138
96
136
137
183
126
131
63
78
129
175
199
74
76
129
155
175
147
87
69
56
78
106
113
69
114
93
148
151
120
147
74
106
100
100
119
78
110
91
93
66
80
136
73
118
120
121
108
78
106
76
131
76
107
78
100
71
98
76
80
163
93
126
175
87
134
110
88
101
89
80
78
104
80
127
99
87
122
88
94
122
149
78
117
106
121
54
88
108
76
80
119
98
109
160
75
52
113
113
99
78
110
123
109
148
80
91
74
91
96
127
96
76
94
133
117
101
113
93
118
78
69
89
134
98
80
87
125
100
119
72
151
72
87
76
120
99
123
123
89
90
95
136
80
80
80
100
76
113
98
69
128
113
117
159
120
154
80
109
94
152
120
78
73
101
69
154
119
197
78
110
119
144
137
199
101
128
88
137
136
107
87
59
136
80
94
87
43
145
107
104
136
69
118
120
96
120
57
162
94
102
142
143
98
69
128
107
117
151
94
93
107
100
119
106
109
78
118
119
89
76
107
69
175
94
142
110
78
140
69
144
88
80
136
137
80
154
98
131
117
164
72
128
94
136
197
145
136
145
80
82
120
99
94
108
109
73
154
87
94
89
140
118
102
128
69
146
104
122
143
120
76
130
134
94
146
69
185
56
129
78
130
87
104
117
128
78
87
116
109
56
88
69
96
69
93
119
80
113
129
80
89
109
99
130
175
92
154
87
193
90
104
145
54
95
137
126
81
107
131
154
82
154
121
76
122
75
80
96
87
147
100
78
89
120
113
80
88
134
80
96
156
80
90
80
95
105
87
175
174
78
209
69
80
99
134
132
149
95
101
117
121
87
92
119
80
150
87
125
128
107
106
126
106
166
80
115
78
83
69
108
78
134
109
118
96
84
129
108
80
105
96
83
93
117
93
111
93
85
88
88
96
110
69
80
69
175
96
151
89
89
110
67
125
104
143
89
107
120
131
130
76
88
112
99
93
118
74
120
80
139
112
91
64
78
121
79
175
163
164
87
137
175
101
133
124
112
134
76
78
134
87
88
69
136
87
128
130
69
72
175
119
87
94
128
120
106
56
128
88
87
67
56
139
94
80
129
89
140
117
136
69
111
107
175
94
101
78
109
89
69
90
80
80
148
76
138
154
120
69
130
52
99
134
69
147
99
84
121
138
112
99
117
96
94
155
80
115
151
94
140
109
109
163
69
87
66
151
131
112
87
99
128
87
89
76
81
134
117
98
69
164
54
197
110
156
131
64
150
100
91
151
109
80
110
133
80
80
121
175
128
76
69
148
101
99
107
109
89
96
69
114
100
80
121
111
75
87
76
69
99
87
113
120
111
90
104
87
199
87
74
165
127
155
131
56
94
99
127
117
121
67
69
150
56
88
154
134
197
119
112
76
119
136
98
117
54
137
165
83
85
72
146
76
125
119
99
137
67
154
99
93
87
107
92
54
87
107
175
76
80
119
94
78
69
197
80
93
154
102
104
89
76
119
90
93
142
109
125
69
87
128
89
98
79
110
112
109
109
117
104
69
119
83
112
74
85
134
151
138
88
107
80
129
101
163
80
78
131
80
137
128
79
175
140
80
89
79
96
80
102
99
78
108
76
106
80
106
117
119
99
69
72
78
89
75
164
69
134
87
98
87
89
88
80
104
90
123
129
96
102
128
106
106
72
78
121
76
112
120
107
69
87
110
87
137
158
120
117
81
43
119
144
72
107
85
115
91
106
80
183
80
89
121
197
111
87
102
78
79
120
80
183
113
129
121
114
109
154
113
109
175
114
96
121
121
69
133
111
94
122
73
78
121
80
131
80
100
107
97
154
106
136
134
107
80
107
183
69
106
93
128
197
121
104
94
56
109
88
83
104
80
149
99
88
80
109
113
131
69
140
119
112
82
101
87
74
116
118
113
142
123
93
80
94
104
88
86
113
94
143
121
128
113
89
112
80
136
154
69
143
122
75
140
80
69
93
118
80
103
106
142
117
88
115
151
128
93
85
126
90
119
54
91
113
87
89
95
78
103
121
87
109
78
101
109
87
151
104
102
140
89
69
90
77
140
88
74
103
98
64
115
69
91
103
175
99
69
127
80
107
76
80
106
90
175
128
110
110
113
109
197
67
87
119
120
140
119
99
80
102
76
151
145
131
95
115
59
99
88
120
115
106
122
154
133
66
127
66
128
103
93
78
117
79
156
117
123
98
163
107
91
78
87
80
78
185
72
87
136
114
156
172
120
109
80
80
83
100
80
76
106
80
99
84
89
156
76
107
109
74
89
137
120
72
67
76
101
128
114
130
91
89
80
94
89
109
54
175
123
112
80
107
69
111
132
155
69
72
95
121
80
93
112
140
99
114
88
175
77
76
89
69
138
87
69
80
121
127
69
134
151
101
104
100
69
131
116
69
87
87
175
107
99
80
88
107
99
133
131
132
100
96
67
87
136
104
106
129
80
113
101
69
151
78
99
129
157
121
88
197
155
175
87
106
80
87
88
101
150
120
102
120
133
107
117
120
117
107
87
87
126
99
69
85
128
96
69
121
76
98
162
126
111
152
59
72
175
146
76
104
80
175
175
106
90
79
94
114
113
88
74
69
121
78
69
154
121
109
121
199
88
87
69
80
87
99
134
88
119
117
72
134
140
119
82
187
146
101
126
111
74
78
69
79
119
134
112
78
160
78
78
80
87
128
78
154
80
175
107
201
108
80
121
112
121
85
78
109
143
52
87
130
93
151
88
174
108
128
96
109
88
88
112
146
134
76
131
185
104
89
74
80
140
175
109
160
112
69
163
156
91
159
78
87
66
88
98
80
80
127
118
80
78
80
156
76
120
134
106
99
118
83
99
71
117
121
176
112
106
91
123
106
104
175
134
76
87
56
101
90
118
106
134
154
88
80
127
151
156
111
80
109
103
209
100
113
137
89
52
76
106
130
101
99
101
107
83
80
120
107
107
101
104
156
175
80
112
80
91
155
59
99
80
88
80
129
133
120
138
144
83
115
131
88
112
94
94
52
137
74
104
141
80
87
102
150
119
90
95
111
130
52
119
155
121
76
76
113
107
87
143
115
80
78
87
88
175
112
64
80
78
82
99
125
84
96
69
124
76
74
78
93
69
80
85
80
69
137
147
175
80
78
69
107
93
119
146
143
146
107
119
117
128
85
103
69
129
125
80
88
87
117
69
102
119
136
147
110
133
117
114
76
165
154
76
105
128
87
80
156
131
122
120
104
175
69
124
87
78
139
87
87
69
136
106
92
71
75
156
128
76
104
100
101
88
120
89
93
155
93
120
136
80
72
69
112
135
119
78
154
80
72
76
155
119
110
134
120
151
104
76
107
96
96
116
114
76
80
95
76
90
85
175
134
120
90
119
77
109
88
90
69
87
152
130
175
117
76
110
91
114
107
140
112
79
109
80
120
109
128
80
123
115
72
99
89
117
78
164
107
131
143
73
98
103
131
90
80
74
131
95
80
123
80
156
100
92
93
80
100
72
71
76
119
71
142
134
137
69
99
72
146
78
112
175
136
117
119
123
78
69
137
80
80
91
127
112
69
146
78
69
128
111
107
96
80
119
102
146
88
205
69
101
69
82
88
69
156
106
106
127
110
175
109
151
76
110
119
93
151
175
69
72
109
91
80
150
156
101
87
80
103
109
128
89
119
113
109
87
131
87
109
102
175
93
132
78
82
162
126
120
93
154
128
117
121
88
89
118
78
88
107
100
88
130
88
69
74
140
69
109
119
43
128
77
109
122
63
106
132
87
80
78
87
109
154
74
120
141
137
72
66
109
52
106
88
109
101
123
99
137
76
97
96
129
69
130
71
80
163
80
93
197
100
128
80
102
133
94
69
95
113
111
90
119
119
78
72
88
69
69
76
120
119
95
136
175
139
99
131
80
108
76
74
114
80
80
123
156
76
91
119
163
107
103
69
156
80
121
117
76
89
74
111
144
120
88
101
80
137
109
85
83
119
104
119
160
110
54
132
83
101
138
78
99
87
76
80
120
119
139
112
80
100
98
104
164
117
111
43
94
117
69
92
43
141
88
52
138
115
136
146
127
145
76
78
87
119
87
147
100
87
103
97
107
90
134
87
80
155
113
87
164
175
72
87
69
119
132
199
126
145
87
119
131
126
85
174
175
80
69
140
74
80
136
155
128
128
109
128
102
104
156
113
85
145
150
117
146
98
140
137
163
97
127
117
67
80
69
107
76
78
69
69
175
128
108
89
88
113
95
145
107
80
98
119
154
93
70
89
80
117
140
69
157
118
87
175
118
120
121
110
99
110
80
127
78
112
96
136
114
83
80
69
113
83
72
89
106
80
175
87
142
120
119
110
145
197
78
69
80
76
110
89
151
90
107
120
78
126
80
69
56
99
80
80
80
134
80
133
89
134
107
107
138
121
107
80
76
85
87
131
85
117
123
107
105
52
136
175
175
154
129
80
99
112
94
128
130
64
58
140
119
106
131
80
80
113
110
80
69
92
96
145
83
109
77
110
121
99
99
89
101
56
87
134
166
186
76
95
78
117
93
69
107
139
54
112
90
75
88
69
93
80
107
69
151
157
110
96
82
88
93
80
147
119
74
120
80
80
69
185
95
110
78
96
78
145
52
89
117
104
154
157
100
104
130
105
69
101
69
90
88
117
86
85
128
131
106
83
144
119
94
175
112
117
99
145
69
89
103
69
69
106
154
136
76
94
66
69
76
128
134
160
162
110
82
102
111
131
156
80
80
154
104
177
69
79
87
148
96
76
154
87
80
128
67
79
94
104
89
76
112
195
154
142
88
88
140
89
88
67
78
78
120
91
99
122
77
78
80
111
76
88
80
69
115
107
69
80
87
130
85
99
91
99
128
106
87
125
72
80
101
80
154
87
181
114
54
52
110
69
80
54
114
89
175
127
112
57
138
107
107
69
95
80
120
80
130
131
69
144
76
59
147
107
69
107
110
91
80
143
69
119
74
78
106
80
69
107
72
96
125
89
75
126
69
98
115
69
94
133
129
94
80
155
80
57
72
118
123
85
80
98
69
76
110
163
72
124
92
106
87
80
131
117
75
98
120
129
78
89
110
80
76
111
76
88
78
117
104
120
120
128
149
87
76
78
99
69
80
140
78
104
185
96
119
151
109
140
125
80
87
87
176
80
113
109
141
88
89
121
85
91
69
101
104
85
80
99
80
67
94
136
121
119
154
92
78
110
110
175
69
117
131
87
78
127
69
107
126
134
72
69
146
99
80
69
140
52
94
69
87
90
183
89
119
89
78
80
100
96
93
52
140
156
74
101
113
160
113
145
90
124
69
154
80
197
151
101
91
88
201
83
93
92
107
89
120
136
80
96
120
80
78
89
89
83
83
123
106
145
103
119
140
117
104
121
126
69
107
164
120
128
133
91
76
99
104
76
139
131
69
67
113
97
85
106
74
147
91
96
119
72
127
95
69
117
99
54
80
109
80
87
116
52
80
98
91
117
160
87
107
88
82
102
80
96
80
69
126
134
91
99
134
90
113
117
155
172
128
69
113
87
88
129
148
89
121
88
101
113
101
112
157
54
87
112
82
80
117
78
72
131
134
106
76
122
115
104
88
76
175
92
104
143
76
124
121
130
145
87
67
73
98
90
87
88
155
154
142
87
128
155
69
119
104
117
101
136
80
144
136
80
80
80
166
106
160
87
134
156
119
127
120
76
130
121
80
99
94
109
104
134
129
154
54
145
110
87
174
89
104
160
131
96
122
120
175
153
136
89
88
131
107
78
88
78
175
100
106
136
147
89
119
140
69
158
138
111
101
89
112
80
156
67
119
59
80
80
120
76
88
80
128
129
121
85
80
94
120
152
107
76
80
111
112
151
124
119
78
128
175
107
69
96
52
80
111
87
99
100
94
140
154
163
80
78
80
135
104
69
69
113
117
43
154
93
124
72
87
110
78
78
117
156
80
79
89
131
176
109
124
80
127
136
56
107
80
101
82
160
80
80
78
106
96
183
88
80
87
88
120
84
94
106
119
78
185
134
103
151
145
94
94
137
128
87
96
96
69
94
106
78
69
123
79
136
89
83
72
114
117
144
103
94
86
78
99
143
69
134
127
87
99
88
131
98
137
88
79
80
96
78
110
119
117
109
95
128
128
156
119
100
107
185
69
107
80
90
72
80
75
119
162
87
69
77
104
136
69
113
121
87
92
85
166
133
69
128
99
69
80
130
115
100
80
119
56
69
109
90
103
91
120
78
122
112
118
155
127
117
100
151
99
100
72
88
87
136
80
120
111
80
56
154
52
126
80
143
139
120
119
80
131
69
87
69
110
99
83
151
72
81
107
174
131
100
78
93
90
80
133
103
103
80
78
96
88
78
94
109
52
112
80
100
78
113
110
109
80
94
110
149
133
134
129
187
83
56
87
127
74
110
84
69
88
85
115
103
56
113
80
107
109
110
119
154
122
89
134
111
80
109
121
78
175
104
107
211
94
128
128
111
140
72
154
94
87
110
143
122
87
78
94
112
128
99
69
78
76
69
78
145
87
145
135
122
130
124
78
69
134
141
80
134
89
80
80
87
98
82
93
118
136
120
151
87
87
108
145
124
54
69
80
99
85
99
104
78
83
109
132
80
107
93
110
82
74
56
76
76
96
107
154
89
143
69
124
145
107
128
136
78
113
154
120
117
186
99
110
109
107
76
115
94
164
128
85
80
80
78
125
153
59
91
105
110
80
91
134
120
94
94
80
83
121
134
107
78
128
131
80
80
131
107
118
107
80
104
185
121
94
69
146
80
80
69
106
109
74
146
131
76
74
80
109
88
131
117
109
94
109
52
107
150
96
114
187
108
87
52
85
115
128
108
120
112
80
109
67
112
94
117
88
87
138
120
80
69
80
187
122
121
136
87
166
69
134
98
107
91
156
54
87
99
69
102
80
56
106
133
127
128
111
110
113
88
78
125
119
98
98
121
87
69
73
147
109
127
138
145
114
107
76
112
160
87
114
69
123
93
151
76
80
80
155
127
156
119
136
107
98
93
76
69
109
64
129
101
154
131
102
89
110
89
112
183
123
124
98
69
175
120
112
78
80
164
56
80
154
136
80
93
105
95
154
120
121
99
96
123
121
85
113
78
72
154
64
80
69
163
143
87
147
136
151
154
136
99
89
69
131
123
87
100
162
133
119
120
100
143
89
103
123
80
80
106
143
110
76
154
121
85
99
128
113
110
99
134
80
109
136
101
69
79
80
197
90
127
113
146
76
148
112
120
119
94
107
78
76
131
160
102
126
154
120
107
118
69
126
175
148
117
104
87
175
80
69
87
89
76
87
121
115
78
87
87
140
109
76
89
80
134
129
146
54
131
78
118
88
72
109
87
80
72
78
161
111
94
95
93
87
175
54
134
125
120
145
78
76
91
94
128
80
154
78
76
106
100
80
104
104
102
161
131
120
121
134
54
119
88
105
140
69
64
120
87
93
156
119
72
80
54
94
78
88
91
136
88
107
92
146
131
154
74
97
119
115
128
132
69
74
112
88
130
80
76
123
154
91
76
151
128
128
187
91
85
109
88
143
66
80
80
78
78
99
87
94
110
144
87
112
80
88
148
112
87
109
94
88
147
107
128
136
80
80
119
88
78
150
194
136
110
154
109
119
72
92
154
104
77
106
156
87
119
154
107
111
122
108
114
93
121
78
134
69
69
145
80
110
80
104
119
87
80
94
69
69
119
80
96
76
76
175
94
76
106
133
107
136
88
110
94
125
87
136
154
131
113
69
93
151
122
109
69
117
114
183
112
99
123
88
76
89
52
87
76
131
80
90
154
80
89
76
175
175
60
118
107
107
76
80
109
80
140
121
69
143
138
54
52
121
80
134
106
118
79
54
134
123
104
201
120
110
90
110
175
80
109
137
87
101
96
96
80
74
140
129
99
99
118
80
164
148
117
127
136
87
110
106
110
115
142
120
95
134
121
120
124
94
145
113
69
100
99
94
101
89
54
145
146
80
154
106
80
148
113
150
150
80
69
177
134
133
57
69
108
175
96
117
80
106
152
87
110
138
154
109
87
87
152
185
87
99
69
76
115
76
117
154
64
94
80
87
107
54
56
120
94
75
88
128
84
124
99
69
104
54
106
96
164
88
174
85
109
127
118
156
92
119
117
96
140
78
87
151
129
81
152
120
132
94
107
103
175
112
60
166
90
111
127
113
106
76
103
93
154
107
120
136
175
79
124
154
123
132
164
123
69
87
56
80
87
95
129
80
110
87
110
80
157
156
96
56
76
137
107
80
101
124
122
56
96
154
107
69
95
94
110
80
125
80
87
102
99
92
91
142
175
164
118
119
129
112
85
110
69
131
131
93
94
93
69
107
122
114
76
85
128
109
95
143
106
129
109
140
43
78
128
199
67
99
160
69
93
120
150
162
136
76
76
66
101
108
80
126
107
74
145
119
140
110
99
88
80
80
89
146
69
78
102
117
88
69
113
80
87
128
56
129
154
115
131
104
153
197
92
107
69
121
87
95
114
80
80
128
106
96
101
99
105
69
95
143
107
127
66
80
72
131
116
111
120
91
188
144
78
110
124
102
120
101
99
117
87
73
125
122
106
92
69
80
119
76
87
80
69
98
80
131
81
75
96
136
94
96
108
89
117
80
104
127
94
52
96
104
119
99
156
111
102
69
60
85
99
106
142
69
102
87
113
80
116
89
107
69
80
127
127
87
94
104
69
143
78
111
87
104
89
100
87
80
197
74
88
197
111
88
106
110
71
96
80
119
120
128
88
197
101
88
90
119
87
175
119
124
81
87
69
120
88
82
94
106
87
80
181
115
154
118
144
157
52
58
122
72
88
69
106
91
80
76
133
151
99
69
91
121
80
83
99
109
129
117
78
126
80
136
69
80
151
112
64
88
101
94
105
118
113
107
69
145
69
93
151
197
80
117
89
99
149
76
154
91
138
106
87
163
99
114
99
80
94
88
80
90
52
75
80
102
111
87
80
80
79
154
56
110
117
113
98
120
110
136
133
118
110
140
79
119
143
124
72
117
136
76
82
152
118
69
176
148
75
69
76
78
104
137
78
106
122
102
102
120
78
80
80
113
146
87
88
122
136
128
127
142
137
106
143
87
155
175
95
114
118
121
73
93
106
99
56
131
130
97
100
107
74
133
117
110
69
131
76
92
175
148
54
120
113
78
121
110
80
119
80
110
126
146
74
111
155
94
100
93
76
152
119
88
151
80
134
99
168
80
128
71
69
136
93
115
74
96
111
76
155
91
80
156
88
154
87
140
91
175
76
116
125
95
88
99
109
76
80
107
80
111
76
119
119
122
110
142
129
89
120
124
106
148
119
104
107
109
88
96
82
71
152
78
120
127
131
146
138
117
54
78
80
94
104
164
106
175
113
87
69
119
145
151
96
54
155
93
82
119
136
151
128
78
131
127
89
88
107
155
115
124
79
175
112
117
89
161
54
99
140
76
130
110
67
95
78
76
80
162
109
54
123
110
78
104
104
109
86
117
121
106
76
164
80
187
89
120
133
104
147
119
104
175
133
52
93
156
76
119
83
120
72
92
143
93
80
107
87
154
108
103
80
89
127
73
197
140
131
103
163
109
140
131
80
95
102
66
154
136
95
78
107
106
156
76
121
74
88
80
117
71
97
69
87
89
80
90
138
156
120
75
110
122
155
87
64
175
110
119
83
125
174
91
76
157
106
80
127
175
130
115
87
52
76
69
175
120
128
94
131
95
80
114
69
109
117
119
104
128
80
88
121
112
128
87
104
80
124
131
88
144
163
87
110
117
131
121
92
92
162
148
107
137
134
115
155
128
80
126
78
113
80
83
131
107
140
121
54
154
87
134
137
79
154
110
80
121
134
117
112
101
87
110
87
89
69
94
134
87
69
89
69
118
80
80
78
128
80
78
72
76
88
71
110
100
134
118
76
106
156
117
80
88
125
124
128
175
87
113
152
114
67
110
93
83
87
107
154
69
98
106
80
119
88
80
104
96
117
150
104
80
87
131
87
76
140
113
80
90
171
80
54
89
121
96
87
115
122
119
106
120
87
93
106
54
54
80
80
87
121
151
115
69
69
112
98
114
69
160
99
88
156
140
76
136
140
94
129
111
94
120
121
112
80
90
78
151
113
109
87
122
134
69
87
106
69
112
163
91
130
154
87
91
153
121
136
128
119
85
78
107
113
78
94
89
104
69
113
100
75
119
104
103
87
100
120
91
111
115
69
133
107
88
160
134
174
112
69
76
123
78
99
71
89
73
107
69
87
72
69
69
76
152
137
133
148
117
152
175
93
64
83
154
80
89
83
69
106
69
76
120
128
136
103
154
80
89
74
96
133
80
166
80
98
90
124
104
87
87
127
169
110
72
76
148
115
89
99
137
175
137
131
155
139
96
137
134
114
113
59
135
83
96
89
89
107
136
129
100
119
107
123
134
109
80
69
76
69
88
107
78
107
93
80
106
153
143
131
120
121
109
80
93
148
89
87
94
120
127
155
93
148
113
101
102
106
79
63
89
121
137
121
99
120
80
78
80
78
146
72
69
78
103
111
87
131
107
154
83
72
109
151
80
69
99
197
106
121
110
88
128
80
76
98
120
94
78
112
69
111
131
175
120
118
120
98
134
72
80
112
154
90
78
181
197
99
80
100
121
80
106
104
86
98
155
113
78
97
69
76
128
128
107
106
69
69
156
80
175
76
104
87
87
112
78
95
99
80
111
107
80
151
119
128
175
118
111
110
94
136
69
121
100
117
148
134
160
79
91
119
93
128
146
175
80
134
197
119
120
98
78
93
87
124
89
80
136
107
128
69
96
52
88
98
118
100
107
131
122
110
80
109
69
96
118
172
143
120
80
52
80
80
76
80
131
52
76
151
109
80
81
87
134
128
140
155
78
78
76
80
106
121
83
79
156
112
54
140
102
138
76
99
78
140
94
87
120
56
120
123
114
163
127
151
78
121
69
80
136
125
121
121
156
119
72
94
125
94
116
114
175
115
114
119
186
162
163
155
130
94
127
69
128
75
99
80
100
99
86
83
128
96
92
107
72
76
109
111
80
117
107
120
93
80
120
164
119
78
128
175
101
111
171
80
98
109
85
151
154
127
80
54
205
107
122
52
71
52
83
137
104
159
131
125
69
114
89
145
145
69
100
136
99
76
137
119
117
104
99
93
114
80
107
80
78
83
96
175
85
94
80
87
112
94
121
112
125
78
164
113
89
98
89
80
80
80
69
54
102
117
72
127
76
100
118
120
76
102
84
87
120
109
109
98
57
78
112
94
136
80
91
87
137
107
118
69
74
87
107
80
89
119
69
83
111
87
172
96
80
80
80
76
155
78
54
76
80
78
146
131
113
82
69
140
76
151
145
72
156
67
119
69
154
80
103
87
156
131
76
103
143
165
131
109
78
69
80
112
113
87
117
99
110
145
131
122
110
127
128
110
69
100
76
137
126
113
130
80
107
113
145
117
131
99
117
91
99
87
105
69
80
104
102
152
155
155
121
72
175
76
134
130
107
114
72
99
118
83
91
104
107
69
101
80
89
80
69
88
134
64
129
80
74
152
120
163
114
80
80
88
80
113
143
69
80
79
151
91
107
115
94
174
97
117
115
101
92
80
80
89
80
87
123
175
76
103
151
115
128
76
72
69
80
80
80
94
128
104
91
154
103
96
136
140
80
104
117
91
113
52
110
126
80
76
79
137
72
107
64
175
128
139
104
75
148
87
133
140
120
116
106
94
88
121
80
111
69
92
104
114
107
154
76
126
156
131
88
80
69
91
78
93
151
105
74
69
66
94
82
89
78
91
109
81
101
146
107
138
87
137
89
107
87
148
101
178
78
175
107
128
155
69
128
176
89
72
80
100
121
175
80
83
78
145
72
69
87
80
136
99
87
112
118
69
69
119
120
105
93
109
112
99
175
92
120
101
113
69
199
136
110
109
74
90
101
69
164
94
121
144
80
119
93
72
163
80
127
117
156
69
105
52
83
114
134
72
56
113
85
93
155
120
85
79
78
125
117
66
154
101
107
107
121
52
136
98
185
109
120
151
109
43
119
83
91
156
106
106
76
154
118
80
114
80
78
119
103
99
69
87
69
152
163
80
141
143
89
89
169
76
109
156
69
102
69
156
78
90
154
175
115
72
76
72
119
120
134
140
80
99
104
119
155
80
109
137
131
69
156
142
126
102
93
93
107
87
80
118
80
128
54
72
80
75
175
131
121
128
76
95
156
114
80
52
87
134
128
110
87
130
107
121
91
96
102
115
136
156
69
80
113
99
135
88
87
123
197
154
88
112
128
114
117
79
83
80
118
80
109
106
69
87
88
109
80
137
154
155
78
80
145
76
110
128
151
69
147
100
146
121
99
107
131
126
124
80
99
67
119
175
121
66
93
153
96
80
76
97
131
64
73
199
72
121
69
76
106
128
76
80
101
104
76
122
152
99
69
197
80
88
94
155
156
121
109
151
119
69
137
96
96
87
78
76
94
112
107
128
175
145
108
74
154
128
105
78
119
119
43
83
89
76
76
122
102
91
107
99
126
131
120
82
128
120
175
124
110
157
114
98
107
120
105
69
67
151
109
120
71
89
128
120
69
80
87
111
143
119
112
69
80
147
119
87
69
197
134
175
87
69
102
87
78
76
148
85
96
107
127
80
90
175
164
111
149
116
80
113
80
100
52
74
80
145
119
115
130
87
80
76
87
134
80
121
131
93
113
100
76
119
162
95
132
107
84
87
110
75
110
87
175
89
156
87
117
97
101
98
139
138
113
80
128
80
118
107
89
146
137
93
156
131
126
175
119
99
80
123
101
69
76
87
118
92
78
69
147
140
185
156
52
88
117
131
140
109
101
100
128
102
106
96
69
117
120
109
106
123
110
161
94
69
66
69
52
143
69
117
134
69
152
209
109
87
88
93
78
78
156
69
119
133
79
80
110
78
134
64
78
85
96
69
101
122
155
121
87
111
127
93
114
69
122
107
69
134
108
175
151
119
69
95
90
78
138
128
75
129
64
156
83
174
88
69
139
123
99
156
69
175
80
127
104
109
128
170
126
109
154
78
106
136
64
174
107
111
106
156
105
131
154
110
69
175
154
119
130
139
80
185
87
77
76
134
150
88
78
128
98
96
100
80
133
69
89
118
119
108
119
154
113
80
89
89
87
67
106
109
89
80
72
119
97
151
101
185
119
89
80
166
99
126
113
175
133
89
72
114
78
89
92
78
120
89
101
54
76
120
162
110
110
134
126
156
93
93
148
102
80
125
144
94
131
107
130
104
88
87
69
100
134
76
122
98
80
120
175
92
94
156
133
96
78
87
143
82
136
110
88
143
107
114
76
134
78
78
80
140
76
88
69
131
80
120
96
100
80
183
77
111
126
68
137
92
100
56
155
78
112
104
108
110
78
130
106
115
104
76
64
93
104
121
99
93
96
123
151
94
133
141
87
69
98
88
119
96
96
75
87
80
107
78
101
92
96
142
80
99
80
85
85
76
96
94
88
78
76
112
118
90
85
136
120
67
78
76
119
144
80
109
107
78
131
93
147
107
78
80
89
151
101
104
94
107
75
69
117
123
69
114
119
69
118
121
147
101
79
78
118
72
76
80
138
133
155
110
59
69
82
178
104
69
129
160
64
88
117
134
175
80
80
160
76
147
109
78
89
124
136
80
175
98
110
103
118
138
106
145
80
78
99
118
125
162
145
129
89
76
107
80
149
134
89
113
115
78
88
110
67
72
132
52
133
155
152
89
74
76
154
183
108
80
108
69
104
88
99
112
80
87
120
154
80
134
72
153
87
107
102
128
69
100
113
136
140
80
112
89
80
130
110
93
78
106
107
156
69
137
116
130
105
87
109
80
73
72
111
107
136
91
133
71
110
154
78
118
80
121
104
146
99
52
68
78
110
99
132
79
110
88
69
98
126
121
102
101
128
131
131
106
87
76
87
110
134
69
81
69
127
83
147
95
98
52
136
101
134
76
107
136
94
93
99
87
107
74
119
93
80
115
109
69
109
154
80
149
151
69
134
136
175
78
87
73
91
121
85
119
109
106
80
129
155
106
52
76
97
113
110
119
88
120
127
68
109
109
151
88
119
78
104
148
99
107
107
72
109
119
107
127
93
125
104
91
69
169
156
107
111
151
80
99
87
109
76
76
76
69
106
128
109
80
156
136
80
94
76
78
154
76
75
127
68
104
109
124
175
100
154
138
113
91
151
80
99
164
122
136
112
134
113
95
117
107
78
80
119
113
115
117
146
129
102
83
107
91
80
87
131
103
80
120
100
123
114
127
89
94
175
72
100
106
94
110
107
91
119
94
80
106
69
109
114
197
111
88
80
80
128
121
76
87
78
154
113
109
140
87
87
112
56
119
107
87
96
80
93
94
110
117
69
156
141
175
120
116
145
91
123
69
130
163
80
113
88
107
87
163
89
154
134
134
75
112
110
155
93
86
120
119
69
110
138
174
94
80
76
132
92
140
80
112
88
69
125
151
115
76
140
111
175
94
120
102
72
187
80
90
89
105
54
119
134
158
121
76
101
114
133
87
80
121
101
52
119
121
56
78
87
69
119
175
138
74
160
131
106
52
103
155
131
56
90
144
76
76
78
119
126
88
144
110
69
101
125
149
117
160
96
113
99
118
87
86
164
110
69
121
131
112
120
146
121
121
119
102
119
80
52
133
113
107
131
154
159
118
109
109
114
102
83
128
110
123
76
88
80
128
131
196
131
109
117
120
112
78
153
133
131
76
69
130
113
97
112
134
93
114
199
80
89
80
134
80
69
76
91
83
104
66
95
111
112
101
91
140
69
111
69
91
88
119
75
107
106
78
69
93
121
112
104
137
69
99
113
137
164
95
80
80
115
80
156
180
174
169
69
99
123
76
74
154
80
100
119
110
155
119
87
133
96
106
82
97
171
117
112
91
121
69
122
185
107
96
87
110
88
152
59
121
132
109
130
151
87
142
123
85
193
113
119
116
131
113
110
163
115
79
87
96
107
80
102
149
117
107
101
74
137
134
146
154
108
130
72
69
94
83
138
85
101
129
126
101
134
131
126
87
146
110
78
104
80
90
112
69
80
88
121
119
98
59
80
106
137
121
91
52
85
124
96
80
137
154
154
99
99
87
128
54
122
85
124
80
95
93
66
107
163
68
101
138
110
118
119
80
99
75
164
101
96
69
128
80
106
89
111
87
87
155
130
144
92
175
141
102
78
80
99
131
201
112
69
106
86
106
94
96
78
100
119
135
117
120
143
56
79
80
163
104
134
131
96
107
76
87
151
157
99
100
113
104
118
82
80
110
121
80
130
120
107
93
76
117
110
60
116
76
92
148
52
160
114
80
94
117
137
109
64
131
43
99
117
78
102
107
54
117
80
131
69
72
134
111
137
79
121
89
87
94
83
124
205
80
158
142
142
76
76
80
157
123
87
118
80
87
69
146
131
94
107
91
119
119
102
80
123
102
94
72
93
175
120
120
100
119
80
93
119
122
128
147
94
100
103
163
72
69
158
99
163
102
78
101
109
85
181
143
152
83
95
121
134
118
69
80
54
109
175
145
88
76
69
119
120
107
115
120
161
87
155
140
75
87
79
127
99
113
120
145
80
94
59
99
93
148
132
136
119
110
64
120
72
145
69
119
114
69
116
156
101
146
108
87
120
89
106
106
134
87
156
80
94
108
96
101
115
157
119
110
155
110
132
80
78
96
78
111
76
128
119
76
156
74
96
133
126
128
91
114
108
117
151
87
99
87
87
112
69
78
155
87
102
93
83
104
80
88
136
69
90
98
69
118
96
121
102
87
87
107
87
111
118
123
98
110
107
147
109
76
117
96
179
94
157
140
87
69
197
76
110
132
88
94
140
197
104
89
76
99
136
120
80
155
87
129
162
80
99
136
149
119
107
80
87
70
119
74
80
69
137
175
80
96
67
91
93
119
69
111
72
96
137
76
112
79
69
154
111
69
99
87
76
117
126
131
78
83
175
106
90
112
96
99
109
72
131
151
140
76
124
74
126
175
109
89
104
110
148
93
82
151
117
89
78
80
86
69
151
122
156
124
96
140
104
93
111
119
87
152
160
87
113
150
56
87
157
80
138
80
106
72
137
77
128
132
106
140
151
69
79
87
106
175
99
150
93
80
112
128
78
73
88
140
80
110
99
134
114
119
69
87
144
112
87
127
76
105
102
78
118
158
109
115
142
80
129
80
78
89
136
136
110
89
88
120
98
78
120
114
80
87
88
81
93
78
94
76
110
109
109
78
80
119
78
140
98
99
120
126
87
56
109
80
120
121
109
87
118
74
112
103
87
126
94
123
133
138
134
87
121
87
108
115
69
131
107
80
71
162
76
120
132
89
117
78
134
117
110
113
88
175
143
155
110
80
181
87
78
112
80
77
175
93
69
162
106
74
147
94
95
76
155
99
102
121
109
183
120
131
69
75
94
71
69
148
117
118
102
154
105
115
99
140
94
120
128
96
150
102
99
156
107
80
107
107
107
80
87
87
80
92
113
89
175
87
154
80
94
87
103
134
118
64
118
101
78
114
121
119
140
112
144
114
87
109
114
142
88
185
107
155
103
69
80
115
76
134
86
163
72
88
111
151
136
107
104
80
113
83
76
69
186
67
74
76
87
87
128
84
141
107
150
74
69
89
91
70
105
76
80
87
140
175
82
69
119
112
145
175
78
130
69
163
120
69
120
92
157
121
76
134
75
69
120
120
80
123
76
154
69
79
132
76
117
100
120
88
89
88
69
156
64
99
152
119
97
80
93
106
96
109
128
114
121
141
100
181
80
69
69
67
175
87
99
197
112
74
118
90
197
90
69
165
119
80
143
118
87
67
117
104
88
104
154
78
66
175
94
105
80
69
116
78
130
156
154
160
88
80
115
92
119
88
119
109
143
128
78
129
103
146
87
80
107
76
107
80
69
76
181
109
94
104
146
78
74
80
89
141
80
155
131
127
119
112
118
106
114
104
120
120
87
110
80
90
107
121
115
121
111
80
133
157
119
83
197
101
100
54
78
79
110
148
138
120
69
147
175
134
120
91
88
120
155
80
127
76
89
78
107
119
136
88
132
175
107
87
119
104
163
80
75
113
117
128
163
136
88
93
100
76
96
92
108
114
99
69
109
91
112
81
110
118
119
148
101
102
117
183
129
78
80
100
119
80
163
119
143
69
69
80
144
74
80
87
122
175
94
104
136
120
93
74
131
110
89
140
119
119
153
64
149
89
87
78
94
78
94
89
124
87
197
120
119
69
112
123
80
156
134
76
80
96
175
55
95
109
148
122
138
109
178
69
79
121
131
69
95
87
58
110
142
100
117
141
151
80
76
80
109
78
115
102
101
98
140
117
106
150
119
72
142
78
104
103
134
78
69
78
89
89
54
87
138
76
69
71
89
104
107
109
154
175
80
130
152
84
183
154
80
87
91
90
131
157
114
89
128
111
74
68
117
128
113
102
112
88
136
96
175
81
112
174
164
76
107
76
119
119
123
88
78
80
106
113
128
80
121
80
91
64
76
128
105
99
146
118
54
74
114
175
104
140
72
129
110
102
81
133
134
79
97
82
69
91
101
76
154
154
94
105
156
89
104
111
102
76
54
87
120
91
91
145
131
87
119
120
99
134
102
87
110
80
119
106
94
175
137
91
145
154
91
106
94
148
119
145
104
87
99
154
119
87
133
114
119
69
96
123
97
107
154
69
87
109
106
76
99
113
69
92
76
96
78
87
125
166
121
144
109
80
109
160
110
115
138
137
74
80
97
80
128
140
88
137
43
89
93
76
69
119
99
69
154
74
111
80
128
113
116
160
80
124
87
134
71
87
101
90
119
120
113
120
88
181
80
62
119
151
99
80
145
150
127
69
80
112
112
104
80
76
88
69
155
76
187
91
146
136
110
109
80
69
87
154
127
69
134
136
80
175
80
89
78
174
89
155
135
123
119
113
115
107
69
89
121
88
154
78
59
101
128
144
128
113
126
107
134
138
130
175
147
80
98
88
87
104
115
96
138
129
113
69
90
119
155
134
69
72
80
80
69
80
69
101
121
99
89
137
113
175
98
154
121
87
126
138
76
156
121
120
88
163
136
130
83
98
129
133
93
87
71
99
80
117
88
119
185
78
69
131
76
80
138
101
96
100
134
166
127
80
102
104
74
80
152
101
128
117
119
56
85
69
127
136
94
101
56
109
117
78
92
69
118
104
83
100
106
78
80
119
119
134
72
91
87
154
140
107
80
134
76
151
80
112
80
120
104
109
100
119
69
85
105
175
87
113
99
129
95
88
87
87
76
87
72
95
100
154
67
76
157
69
69
98
120
90
119
134
134
76
188
131
113
101
142
109
112
124
96
80
72
107
146
95
104
69
134
163
117
93
88
120
88
120
96
136
83
104
69
80
136
128
88
128
141
136
76
134
69
126
94
121
93
43
96
136
145
94
136
110
80
175
80
120
120
69
138
175
76
117
197
107
111
119
69
79
94
137
76
88
110
149
137
143
175
80
113
93
110
113
96
107
120
112
100
76
80
76
69
116
160
114
67
163
147
145
85
151
91
127
80
201
106
115
112
91
76
175
112
72
137
157
87
122
96
128
104
133
103
82
107
80
115
148
134
145
80
60
128
106
110
69
87
54
74
80
80
100
110
101
98
151
181
111
119
87
94
128
73
129
112
112
78
94
99
87
72
110
175
94
128
107
113
78
102
119
87
80
89
119
69
80
120
80
72
99
122
103
149
78
122
88
80
107
127
109
134
52
111
78
76
136
92
131
119
80
97
124
80
144
146
69
87
128
67
133
99
119
106
80
154
106
80
93
54
78
120
137
72
69
81
71
93
119
87
101
87
120
127
54
87
107
145
104
106
76
89
137
105
104
107
134
108
91
164
69
175
119
85
175
128
88
137
121
145
107
120
58
80
106
140
127
69
67
111
108
156
83
155
156
120
80
129
104
119
110
154
109
110
109
80
72
74
80
109
80
143
119
91
94
110
128
69
136
89
76
112
153
109
93
80
69
92
160
197
85
121
175
118
113
94
80
110
112
91
88
91
80
128
154
151
99
148
122
110
143
91
76
93
119
128
144
120
185
69
115
99
149
94
78
150
140
142
131
93
134
144
156
83
89
115
69
134
175
120
145
156
151
175
109
110
69
80
175
156
80
76
124
89
117
78
80
80
82
149
88
138
103
119
56
91
83
130
78
165
120
138
129
128
160
143
91
136
154
122
119
87
69
120
69
128
117
78
76
82
76
121
143
99
90
76
80
86
80
78
129
172
154
127
80
115
118
106
88
155
80
69
121
162
125
78
114
91
113
120
154
76
121
73
109
117
109
87
128
80
88
109
110
93
110
143
80
72
74
69
130
161
91
124
96
89
104
140
69
117
155
136
112
120
119
80
95
52
136
72
136
80
107
91
175
134
87
106
119
76
76
74
78
143
76
99
119
119
145
107
128
102
78
88
104
80
107
76
129
54
129
148
144
175
83
119
88
88
121
197
76
87
163
117
88
69
85
175
119
88
102
74
76
101
119
76
89
96
80
123
169
151
85
58
144
88
120
136
181
151
89
80
95
109
130
115
78
107
80
89
128
130
134
119
125
109
160
104
109
109
156
69
148
69
120
93
120
93
148
128
72
131
120
109
69
175
117
87
76
119
134
134
128
69
158
108
89
148
120
106
131
109
69
106
106
94
175
122
76
118
72
140
113
119
175
120
72
106
115
132
104
106
107
134
78
154
128
78
91
127
132
145
126
143
119
117
156
78
145
127
108
67
130
145
131
156
197
101
137
155
69
76
99
72
143
174
155
80
140
165
69
78
109
143
87
166
105
99
104
80
78
80
101
80
121
87
132
142
69
91
175
119
201
98
107
88
96
109
147
140
80
156
99
68
92
87
151
134
109
110
151
113
74
78
116
120
118
145
134
129
187
128
164
175
99
102
118
120
87
69
69
128
112
165
80
90
142
90
93
132
117
108
80
163
174
117
99
134
185
151
87
87
90
119
133
88
78
120
128
110
69
154
78
121
69
175
109
80
154
121
151
109
80
78
102
96
108
110
141
100
112
69
87
74
87
89
80
149
96
127
67
99
128
98
93
156
102
119
181
119
115
123
120
54
69
54
69
80
146
82
87
78
87
80
69
112
147
147
109
112
104
87
120
197
113
127
80
136
56
76
80
97
117
102
113
187
110
83
109
123
69
101
87
134
104
87
110
87
125
102
69
82
69
141
76
99
117
64
136
117
137
54
80
71
209
87
69
109
139
121
100
93
113
78
57
54
156
94
88
136
97
117
156
114
54
71
76
80
107
87
109
122
101
136
116
139
69
126
98
154
96
99
88
87
112
154
110
93
121
127
120
102
117
136
119
103
99
107
157
112
144
69
138
127
75
110
69
134
76
100
88
87
115
94
118
79
80
145
132
88
89
119
117
113
154
106
122
159
120
119
135
83
119
109
115
117
89
136
72
78
87
119
109
151
120
78
114
76
91
75
127
181
99
100
106
134
163
104
125
80
149
76
99
87
79
118
67
69
88
80
111
99
80
76
119
148
76
118
101
102
72
69
89
95
110
106
107
57
131
107
154
76
72
124
149
80
107
94
80
110
87
54
100
110
54
107
87
89
78
73
120
107
94
115
107
96
119
156
80
103
135
78
102
145
164
109
96
96
154
88
76
107
107
145
92
120
76
120
136
130
119
91
175
112
151
106
134
88
76
69
121
74
119
134
93
110
69
113
93
74
76
135
119
69
120
102
114
128
148
72
154
103
99
130
107
74
59
110
107
80
72
69
80
87
80
122
110
80
56
76
80
126
156
69
119
107
104
69
104
113
90
77
96
133
78
103
118
95
80
120
154
98
69
134
104
85
69
117
109
87
146
132
78
107
106
119
169
112
80
134
70
80
95
69
134
78
75
113
74
99
87
145
89
93
145
123
141
99
106
88
80
66
69
81
113
143
114
122
140
119
80
80
136
93
99
89
117
112
153
72
107
78
107
98
122
175
69
146
93
78
69
131
111
96
104
115
69
148
87
87
141
99
120
157
94
187
117
78
78
147
88
69
107
78
140
74
102
78
116
109
78
150
87
69
72
128
132
153
122
121
80
119
88
76
120
129
128
93
69
78
102
156
125
69
175
109
72
78
107
152
72
80
80
94
131
104
151
80
67
87
72
107
122
129
99
156
88
141
93
88
94
115
131
175
76
144
76
127
164
122
131
80
78
80
144
87
69
141
178
87
94
119
134
154
104
80
164
88
128
142
69
114
130
95
99
106
85
110
80
144
87
147
80
121
101
76
87
128
109
175
102
78
154
87
98
76
83
132
140
128
78
76
78
94
107
80
80
69
133
106
80
119
138
78
145
176
120
64
156
107
94
107
104
138
94
87
159
163
59
71
102
80
96
140
136
80
142
113
115
131
115
52
78
151
110
119
69
110
89
96
69
120
178
94
160
174
109
107
129
69
64
136
99
83
89
132
155
118
95
78
145
175
128
113
111
146
80
124
94
93
83
91
107
76
138
140
112
209
121
99
154
151
147
80
54
159
163
76
87
175
80
120
117
72
80
125
145
80
80
131
172
96
94
181
105
131
145
72
57
77
79
80
78
142
94
105
88
98
87
113
89
158
197
64
111
100
106
109
120
152
187
78
160
92
120
114
103
107
134
72
175
88
120
93
128
71
107
87
80
81
93
121
76
131
164
107
88
140
96
131
88
106
163
148
96
80
106
134
80
175
80
121
127
87
92
119
93
78
78
103
89
154
88
120
89
175
94
107
116
111
141
121
132
107
117
148
76
121
110
80
80
109
76
106
122
106
102
107
90
126
82
87
119
175
104
123
80
117
140
107
111
78
88
119
80
80
91
109
72
94
111
52
117
80
79
106
78
175
80
149
106
76
121
137
134
115
136
109
145
107
78
67
120
131
78
118
105
87
124
72
89
138
66
135
146
109
121
80
69
110
155
130
107
72
104
59
106
109
59
89
137
129
154
75
129
80
156
129
113
143
84
106
142
80
159
144
89
134
69
126
154
157
80
69
85
52
90
84
175
80
130
94
129
74
76
147
78
152
102
101
114
87
104
87
93
148
128
129
87
96
87
119
101
80
102
135
199
104
130
154
87
125
136
151
136
69
78
129
126
60
136
181
93
121
76
69
154
132
56
56
78
195
129
107
72
88
115
130
154
80
133
92
143
107
87
123
78
90
98
107
115
104
140
120
112
146
80
107
107
136
110
197
100
78
124
141
121
110
85
117
88
87
175
99
120
74
122
80
106
107
98
131
92
120
127
128
89
98
110
72
68
78
87
122
119
71
144
76
76
69
72
87
126
112
69
80
88
91
78
89
101
172
109
117
100
91
166
89
78
74
130
111
100
149
88
119
143
115
115
121
93
87
89
136
93
96
69
112
114
84
154
160
96
175
154
94
128
69
197
185
137
64
111
69
76
115
120
101
78
119
197
117
78
114
96
76
93
91
166
111
109
80
93
175
87
149
138
83
96
136
136
154
113
175
112
99
94
80
101
78
129
140
94
83
111
163
80
87
128
166
106
76
69
80
78
109
96
118
136
138
104
122
126
80
149
96
83
69
209
86
74
156
148
104
115
113
118
118
76
91
76
98
80
106
151
163
126
101
78
97
127
109
155
80
197
165
69
113
102
122
126
82
143
76
112
101
131
56
107
69
136
156
100
175
169
76
88
69
80
113
121
148
88
90
95
164
76
68
126
137
124
136
131
107
101
156
143
156
78
154
122
88
113
123
94
113
175
96
88
175
76
123
88
58
60
80
140
97
88
88
164
137
126
76
89
175
83
88
119
121
131
115
104
115
136
148
91
80
69
120
59
80
137
119
80
109
99
124
174
122
183
103
143
82
100
101
104
131
80
76
94
87
80
93
137
134
127
67
104
78
87
109
118
69
110
132
131
89
104
104
201
99
125
81
106
134
106
111
121
112
76
94
109
99
109
164
120
101
114
98
178
80
89
69
175
134
78
69
100
69
95
201
69
108
104
104
128
87
82
101
175
102
96
84
145
72
100
156
119
104
128
54
87
91
128
109
93
128
155
120
154
69
88
119
138
90
151
157
106
128
138
80
143
80
120
138
87
160
122
175
118
56
119
95
87
80
87
80
156
56
87
87
109
96
93
175
127
88
67
137
80
115
69
112
87
134
82
130
127
134
113
140
81
96
114
117
175
124
118
120
80
80
124
151
130
93
99
78
175
107
76
138
152
112
107
78
96
132
102
72
94
87
104
145
80
80
88
137
117
136
76
120
136
107
80
152
73
128
98
110
89
80
120
88
154
59
155
96
124
137
131
126
80
87
125
155
151
119
112
104
87
110
80
78
134
69
141
103
90
69
133
118
80
118
127
128
131
186
151
128
106
104
127
105
54
120
96
97
69
88
143
87
101
90
108
131
90
154
121
69
63
131
93
96
81
76
153
76
69
107
101
76
80
171
99
134
97
114
69
119
122
80
78
183
96
120
136
130
69
156
69
78
121
126
151
155
69
119
74
87
78
88
134
96
111
147
93
103
52
140
76
78
76
78
69
131
107
93
102
136
120
114
80
76
121
120
107
74
109
72
87
119
119
60
143
95
181
135
117
109
80
99
83
120
113
88
128
89
104
76
80
119
127
116
98
120
119
113
106
119
80
78
112
76
69
91
143
80
130
127
93
93
87
99
115
131
76
95
107
127
154
69
138
140
104
43
76
100
80
126
79
151
109
80
91
135
106
113
185
93
103
99
119
115
67
106
113
145
115
89
123
87
107
66
117
143
129
74
87
68
94
134
165
131
80
80
107
129
136
131
67
155
114
128
112
80
83
69
145
69
99
121
119
90
102
156
131
106
131
72
83
113
140
134
101
131
102
131
80
69
129
164
125
154
75
139
136
103
69
127
78
119
80
145
115
120
102
120
59
76
101
175
98
131
103
80
107
87
89
78
119
83
120
117
185
94
66
121
75
175
132
134
121
175
119
69
134
154
126
183
94
132
69
156
80
91
181
156
99
122
80
86
99
85
80
76
164
109
94
69
104
115
197
89
106
78
128
151
80
85
104
88
175
175
154
118
136
87
76
119
112
137
74
72
80
109
110
80
117
113
169
113
109
134
132
88
69
119
131
87
131
144
94
69
69
78
127
69
87
138
93
69
123
134
92
80
87
88
79
94
113
129
76
87
128
141
106
175
125
69
74
98
113
99
76
140
119
114
69
90
76
80
123
107
115
87
72
115
78
124
143
104
95
80
93
87
87
162
56
101
91
144
99
83
74
69
119
89
80
89
117
107
113
102
134
120
96
76
151
80
124
78
151
89
110
80
76
110
132
80
96
111
52
91
109
145
76
106
107
153
128
78
132
116
76
117
104
80
115
128
108
118
120
69
151
119
108
80
115
69
80
114
128
140
91
146
109
79
87
181
54
97
128
87
128
153
80
89
91
87
117
148
113
91
120
144
72
76
195
97
114
78
151
101
87
93
93
69
118
104
104
75
89
120
122
56
112
78
104
175
120
175
104
104
88
120
117
156
88
69
87
136
69
154
83
115
95
128
120
89
78
85
134
76
126
78
107
104
69
54
80
120
137
106
121
102
83
80
80
94
86
76
151
138
128
104
138
127
89
110
79
186
137
74
78
118
86
132
87
78
120
115
126
110
95
109
120
52
56
91
136
91
76
80
100
114
87
183
146
86
80
127
69
121
80
99
199
80
115
69
106
137
156
69
108
91
119
152
104
109
72
69
119
128
118
80
156
119
121
127
124
118
112
76
80
87
119
120
134
136
91
144
163
136
91
76
174
75
151
112
80
76
99
113
109
109
122
110
106
106
131
120
87
128
107
79
152
121
87
96
113
143
69
100
132
69
145
79
183
74
100
175
142
94
106
102
120
69
89
109
54
185
78
69
100
99
69
75
144
60
138
109
137
87
142
107
99
114
78
141
117
95
117
76
125
136
128
43
211
131
76
80
112
78
151
118
69
78
132
94
113
120
127
104
140
80
80
139
109
93
95
160
114
128
101
100
149
76
117
72
80
154
120
128
106
75
69
107
69
129
96
126
119
94
102
54
124
140
76
76
181
78
85
120
100
80
88
80
128
83
80
131
72
154
69
104
117
125
80
78
80
134
163
115
94
108
75
175
69
137
82
128
86
69
136
69
123
115
118
69
123
109
78
87
115
110
174
80
85
107
56
74
80
90
132
107
80
76
102
175
118
80
87
131
140
148
119
107
119
143
97
154
105
154
76
126
99
80
128
148
107
87
80
106
69
146
157
76
76
104
128
155
110
117
89
52
80
88
78
142
112
102
88
169
69
114
72
119
120
181
94
103
128
69
78
54
85
183
88
140
76
131
88
136
113
140
164
117
128
88
43
116
125
119
110
104
120
104
80
80
104
112
78
141
69
109
131
88
113
87
101
97
78
154
153
93
136
104
69
175
91
163
199
98
118
77
101
131
128
128
69
211
78
175
134
76
72
66
120
110
87
99
128
101
78
154
119
119
146
121
76
78
103
85
80
128
149
106
146
90
78
109
125
154
110
110
106
140
115
136
80
107
118
69
60
96
197
80
101
199
87
120
119
120
119
95
107
69
110
85
136
106
80
109
147
128
69
138
155
133
95
93
64
88
117
93
104
152
94
148
112
120
145
80
69
156
109
69
167
104
80
151
95
90
175
121
99
76
100
112
112
78
85
94
56
80
78
80
95
131
137
154
118
80
104
142
88
90
69
76
54
92
87
85
78
107
78
76
175
119
145
80
154
87
117
104
100
89
127
94
156
121
128
120
120
75
101
78
101
119
136
66
118
125
107
52
140
96
166
91
101
93
131
156
134
76
91
113
94
87
140
78
76
128
163
120
152
119
88
69
87
107
85
137
127
94
114
87
69
76
95
165
126
109
89
87
98
163
117
136
156
69
76
133
91
98
154
80
95
76
72
78
78
69
101
175
119
94
102
94
109
132
78
112
175
69
102
122
72
138
143
145
64
87
101
119
112
113
113
175
128
160
100
79
78
88
88
76
145
110
109
89
94
85
171
134
199
102
52
137
124
138
103
99
112
88
119
108
163
69
69
175
92
111
110
66
107
144
71
197
80
125
78
109
118
89
119
87
140
94
119
119
113
111
69
119
87
128
99
80
145
120
125
119
99
70
89
69
154
100
78
120
121
101
94
80
107
129
85
94
80
94
76
112
145
121
69
88
120
76
140
118
127
99
110
88
155
80
134
112
85
90
160
59
121
87
99
88
110
119
99
209
78
110
110
120
117
127
102
174
175
136
113
76
119
101
129
175
94
96
87
120
80
101
121
160
121
155
127
156
144
67
105
106
201
78
111
90
103
90
80
89
91
93
137
80
80
120
123
149
56
88
80
80
129
116
78
166
113
119
119
69
69
128
80
146
133
89
93
72
85
76
54
78
175
89
138
131
110
128
87
99
74
67
113
89
109
76
87
96
80
52
91
99
109
144
100
89
74
104
69
80
101
71
80
69
164
54
152
76
78
151
100
144
111
80
99
103
155
107
111
175
145
56
199
163
140
175
89
98
69
86
106
119
66
94
98
121
128
69
80
175
185
128
126
89
120
156
78
76
76
80
87
124
99
69
89
87
123
54
109
87
136
91
106
96
87
80
109
104
78
110
87
83
148
104
109
69
96
56
148
115
129
89
89
113
115
106
85
108
119
151
155
64
89
80
115
119
119
131
109
74
93
119
74
140
100
91
140
72
85
78
99
80
78
142
73
112
76
69
154
87
111
99
104
88
119
117
120
120
120
132
117
154
140
52
118
87
162
145
78
95
106
76
69
88
69
151
156
69
76
99
80
115
99
156
150
175
143
104
145
110
107
154
117
88
134
109
156
88
80
87
83
72
74
56
128
175
63
104
75
80
69
136
78
90
116
128
96
69
121
162
120
99
78
74
88
134
76
84
175
133
69
67
87
69
99
87
124
72
76
69
90
87
118
69
93
127
150
96
103
185
80
112
69
76
92
91
150
80
85
88
127
127
80
153
125
127
155
99
89
93
88
80
89
114
69
118
102
69
117
97
117
142
117
69
69
143
113
109
96
112
151
99
156
137
107
120
131
175
87
80
80
87
120
128
127
119
101
120
110
109
80
139
93
100
99
185
128
76
88
127
174
71
160
109
174
102
146
80
78
93
107
127
129
84
163
69
89
96
54
120
69
199
119
87
72
144
156
80
80
185
69
131
154
91
154
92
154
121
101
133
87
145
197
69
90
117
76
117
123
111
89
175
106
115
118
110
175
93
91
85
67
69
146
107
154
80
80
69
117
104
80
184
91
94
138
110
87
76
154
113
80
154
87
80
126
88
69
88
88
78
93
94
87
197
117
100
146
127
96
80
102
78
147
80
117
91
117
80
111
136
72
151
109
148
69
96
78
91
99
100
54
93
78
69
80
143
154
156
119
126
103
123
80
121
94
121
106
172
68
99
121
88
98
117
130
104
145
87
164
95
142
68
71
75
87
156
112
123
89
154
88
94
124
78
80
85
131
100
145
119
128
107
145
199
80
120
76
90
114
91
113
155
103
88
128
120
105
102
122
120
80
113
78
88
76
79
80
142
69
128
76
69
74
100
139
80
154
107
163
95
69
103
107
83
69
88
130
146
72
111
107
122
165
80
175
142
76
85
98
111
131
87
143
69
105
89
98
74
175
80
197
95
123
69
106
78
117
154
109
88
134
132
128
148
76
144
87
80
76
102
87
121
94
154
121
64
119
171
197
109
80
142
54
117
115
72
174
151
92
100
56
99
104
126
101
78
109
110
72
95
106
113
175
145
113
90
87
69
99
78
129
100
172
137
119
119
140
107
136
83
159
197
78
140
128
96
104
113
164
80
120
54
78
96
123
183
111
80
107
128
107
120
76
133
95
107
110
151
108
72
89
100
88
164
99
80
83
89
80
85
80
69
130
102
80
114
149
95
133
131
80
118
78
106
56
80
83
80
143
110
115
114
120
113
134
80
107
175
95
117
87
76
115
154
128
100
80
121
144
83
119
120
91
152
56
80
132
78
78
121
88
79
113
94
88
69
109
156
99
80
76
197
64
203
139
114
120
76
102
154
121
87
80
120
113
163
134
66
93
104
136
83
156
123
175
148
56
88
93
107
90
76
110
69
138
121
54
134
133
149
156
80
164
59
80
76
90
154
85
120
91
75
76
110
139
113
175
80
80
80
175
72
156
129
131
69
137
136
164
136
69
88
74
89
132
69
131
69
80
104
71
111
134
80
74
136
154
130
98
112
90
111
81
140
97
100
78
134
80
54
116
106
87
87
126
119
106
128
80
128
79
175
93
100
96
69
78
80
99
145
125
95
92
89
138
104
129
147
87
87
141
69
119
130
80
69
52
80
70
131
111
113
132
145
107
145
109
68
110
103
110
69
87
129
87
140
76
131
95
116
89
107
127
85
104
69
165
78
107
136
129
110
154
69
87
54
69
93
122
104
120
107
96
112
54
112
69
115
69
87
119
135
80
76
78
88
111
111
94
164
154
129
80
121
130
76
73
78
133
106
76
125
100
137
112
84
78
129
134
54
101
140
80
89
95
87
76
111
109
154
79
78
101
87
54
66
93
89
77
120
120
199
112
94
118
138
103
129
106
99
80
87
125
112
131
112
133
120
89
123
107
96
80
69
119
54
76
133
90
154
109
80
155
88
131
175
124
99
95
121
80
80
125
127
115
102
119
93
80
154
89
183
80
76
110
80
89
95
110
76
99
82
91
78
155
114
175
87
134
75
80
112
112
120
69
120
80
157
99
78
175
84
175
151
110
127
80
80
89
69
143
78
72
96
107
124
120
52
88
100
133
128
99
87
101
155
134
113
131
127
120
102
80
80
137
151
109
100
69
127
78
78
106
143
119
123
154
112
138
125
94
76
111
95
124
119
78
69
101
126
80
197
133
82
156
126
155
136
94
80
122
69
119
87
91
145
101
104
111
123
111
69
111
78
99
78
119
76
152
151
90
78
88
69
96
68
109
92
124
131
113
99
134
120
146
175
69
78
124
144
82
80
82
109
80
114
163
88
117
80
96
134
87
140
69
143
122
107
106
54
79
128
156
106
113
80
72
87
134
69
119
107
83
80
155
104
138
116
107
72
100
137
78
120
78
80
93
111
80
104
78
111
76
113
117
108
80
133
78
132
175
137
112
87
132
107
80
78
121
87
117
121
110
66
83
80
78
80
127
52
123
147
105
78
109
99
94
117
78
88
69
78
78
80
109
69
52
134
74
91
94
111
106
85
109
157
94
156
99
127
67
80
133
67
107
88
128
109
107
64
107
76
71
94
87
99
87
130
78
115
115
80
157
78
104
154
98
109
120
98
142
129
98
94
149
99
131
107
125
88
127
119
115
87
100
134
108
69
110
84
119
64
87
94
69
155
183
140
118
113
102
91
69
110
76
94
199
174
80
88
101
148
136
69
156
165
76
134
109
90
107
87
112
154
69
174
116
78
92
110
128
95
120
140
134
109
120
76
134
99
134
88
87
143
76
112
121
69
115
114
134
80
93
78
72
80
146
154
197
88
107
100
93
140
114
82
107
197
109
165
151
120
87
120
78
102
106
82
128
107
128
98
132
80
128
111
131
103
85
131
93
67
88
100
95
154
104
159
104
107
106
117
52
69
64
88
101
76
134
137
80
121
100
94
80
110
96
80
131
104
120
69
76
79
69
96
99
113
80
81
151
136
78
136
142
146
101
174
130
163
80
69
154
85
98
156
122
78
100
113
175
89
131
76
136
116
69
114
94
69
87
94
110
116
69
131
87
91
69
91
201
72
80
91
109
101
110
120
155
76
123
78
197
76
69
118
87
134
76
136
128
90
120
118
87
104
93
112
112
120
120
69
80
80
146
175
110
117
154
106
105
145
79
89
78
69
121
118
69
94
76
131
115
110
87
128
109
101
175
120
95
127
93
94
80
114
64
66
120
175
80
129
129
112
58
94
110
87
118
93
52
69
120
177
151
110
104
80
134
69
87
199
100
99
126
143
123
154
153
117
117
75
76
69
107
134
136
152
87
106
131
113
101
95
113
69
100
104
68
54
114
113
143
89
109
72
87
106
117
122
88
163
106
128
89
122
76
128
76
120
123
67
99
69
111
118
88
131
162
68
78
82
106
109
175
120
127
89
152
156
94
119
103
107
160
124
80
80
94
130
69
111
80
71
131
80
87
136
85
88
78
137
93
87
78
130
106
164
119
69
88
69
110
111
64
80
80
123
155
87
175
69
112
104
93
116
100
72
156
74
72
127
111
72
93
80
154
88
93
119
94
98
109
87
87
80
104
76
112
87
69
78
73
110
118
69
78
114
90
126
140
131
79
72
69
118
131
76
80
69
134
75
115
163
80
99
99
78
78
80
96
124
110
163
130
88
107
69
90
120
88
122
124
112
69
145
122
80
175
120
56
117
78
100
74
107
120
126
94
83
106
80
69
87
122
112
155
109
136
175
109
148
113
69
80
99
125
123
85
93
117
134
69
157
89
134
88
94
69
85
78
88
163
133
87
91
87
52
78
120
154
93
103
80
80
79
148
156
131
126
69
121
69
76
72
78
92
98
78
86
126
66
91
87
80
87
69
131
130
160
110
115
83
126
147
156
94
76
67
145
87
141
99
104
93
107
87
126
128
145
80
121
175
146
119
128
107
128
117
112
140
80
80
57
109
143
122
69
117
163
69
102
104
78
89
69
69
76
98
79
69
107
87
69
109
174
107
99
77
72
54
96
120
153
119
74
80
119
69
147
80
104
80
64
96
115
56
117
124
114
54
87
197
125
164
137
157
110
87
107
128
76
69
197
144
101
128
109
91
88
71
156
154
164
120
78
80
72
127
183
87
114
79
68
107
87
146
104
140
126
123
134
87
110
130
99
101
76
120
120
102
69
146
88
87
91
99
124
89
151
106
175
69
115
131
134
86
94
101
96
129
80
110
108
113
112
175
103
197
113
87
80
69
89
119
122
56
152
69
74
112
136
80
183
80
124
154
86
143
107
120
145
89
124
107
113
76
109
128
69
130
104
87
78
76
110
94
121
76
154
99
101
108
119
120
80
69
128
141
111
83
113
76
81
134
131
86
183
164
85
80
78
109
54
87
127
110
72
72
112
128
109
136
121
128
126
110
80
80
76
78
88
123
197
127
155
104
76
96
152
113
74
119
81
103
197
72
136
117
128
110
151
104
85
109
154
128
93
80
131
107
105
110
104
156
69
87
87
110
136
136
85
174
69
123
113
103
90
156
136
91
117
69
76
58
87
121
89
94
80
76
121
80
80
89
105
76
99
76
87
133
56
101
132
101
157
117
87
183
91
76
80
74
87
183
91
120
120
80
89
111
85
76
89
128
155
138
69
78
105
93
113
142
113
119
100
154
160
80
103
106
199
120
78
106
134
183
88
78
87
111
69
128
126
83
94
68
136
76
69
121
128
152
112
135
87
96
76
76
128
156
69
80
106
93
136
119
93
123
136
59
87
113
69
172
113
136
153
126
80
95
117
175
128
109
80
69
87
118
185
103
150
134
154
77
113
80
76
136
102
87
69
76
134
121
80
74
140
80
74
112
125
75
123
112
114
80
119
156
69
155
109
114
96
123
95
69
127
80
131
113
128
83
136
91
151
122
134
117
110
119
154
82
101
174
160
140
80
80
128
99
80
64
99
96
131
120
175
120
87
127
120
89
69
76
134
78
183
119
72
72
113
110
76
121
91
104
98
104
99
132
151
76
90
114
126
172
98
52
76
85
72
121
89
83
99
69
90
110
93
132
93
111
121
80
120
162
136
87
118
80
175
87
93
174
154
58
156
80
101
88
52
110
175
83
94
71
80
127
148
80
76
174
98
180
69
104
78
89
78
128
106
87
112
74
99
81
69
103
154
74
117
88
80
88
88
96
138
110
88
128
80
112
121
110
100
105
112
80
80
111
76
110
155
80
102
99
83
76
93
103
76
95
119
69
155
120
156
120
152
99
156
87
169
99
109
69
115
91
74
120
163
127
109
56
69
88
78
132
67
69
121
69
109
69
82
120
99
78
93
144
122
136
113
187
69
89
101
87
100
119
123
89
76
134
80
148
69
108
119
127
102
134
72
120
175
69
54
147
123
76
146
69
106
140
140
111
174
175
129
171
93
87
69
80
151
80
80
113
76
107
83
85
87
99
107
96
151
127
99
102
169
134
164
89
87
140
136
108
119
124
118
69
88
101
74
122
175
111
69
136
179
72
76
76
72
102
175
165
117
99
80
69
88
156
54
128
175
121
136
126
126
89
76
148
77
140
83
121
87
113
96
163
155
116
104
134
72
197
97
163
130
96
175
160
80
80
108
113
88
174
109
111
109
94
80
56
91
52
96
148
120
130
80
93
104
106
76
152
119
56
72
75
96
121
132
128
151
106
87
107
87
104
104
119
122
76
80
164
155
89
156
154
78
69
124
154
154
125
133
59
160
94
114
126
121
88
78
126
80
130
69
119
138
119
118
121
135
112
151
93
69
89
110
107
80
117
87
107
78
154
102
94
134
106
154
80
76
78
181
118
96
78
83
96
88
89
80
119
87
125
68
80
110
117
74
80
90
80
91
154
63
80
115
69
107
151
69
74
69
140
85
148
74
94
111
69
102
118
115
147
76
94
133
131
149
102
119
80
110
88
67
131
114
150
87
96
88
134
127
136
113
69
193
90
76
104
98
106
133
80
107
69
122
136
154
151
140
114
122
80
115
80
94
121
113
96
78
87
187
87
113
80
128
146
110
69
114
130
101
80
154
109
91
118
80
83
102
164
106
69
76
80
88
144
100
123
140
120
106
106
144
197
130
119
125
131
78
80
157
80
127
110
87
69
151
143
91
80
145
134
96
112
114
96
88
160
92
183
99
80
134
69
163
85
122
89
57
166
113
144
80
111
154
109
87
87
107
133
119
90
175
90
101
69
106
75
132
106
87
175
107
71
119
113
152
110
87
69
132
117
109
135
69
78
111
129
69
113
56
79
106
112
80
133
155
117
80
87
88
119
80
117
149
142
80
93
80
88
110
109
87
146
113
87
121
88
88
128
129
111
85
72
80
134
99
112
87
156
72
76
82
140
88
89
100
79
110
154
69
110
76
154
140
87
69
121
128
80
143
78
69
197
163
87
104
90
76
78
80
110
110
83
113
98
156
128
119
117
104
197
80
112
89
131
82
109
107
74
113
94
151
79
157
102
154
78
117
76
101
99
88
94
106
103
136
137
80
83
139
94
99
107
78
93
162
140
103
104
104
115
127
117
87
175
109
187
111
80
147
87
80
76
94
175
197
114
91
128
76
120
69
119
43
138
110
109
69
156
69
128
131
101
93
147
118
87
128
101
76
118
90
112
80
69
100
116
116
101
89
131
127
111
117
67
80
52
80
172
119
72
109
80
155
80
80
97
88
67
69
80
155
106
99
69
102
88
109
150
81
169
87
94
80
98
87
154
101
131
69
98
95
134
109
155
107
107
88
69
52
138
124
142
71
78
69
102
112
98
134
153
76
140
119
119
103
71
76
76
72
145
138
101
175
52
90
112
123
115
110
94
104
120
154
144
69
104
154
102
129
131
107
69
109
133
134
54
103
104
82
153
119
120
174
175
111
121
106
69
93
121
138
128
120
107
112
87
78
76
110
121
129
94
52
87
104
95
118
115
122
128
80
94
76
175
88
78
106
109
80
87
120
87
78
107
80
133
66
94
80
104
68
197
93
100
87
80
54
101
80
154
152
88
120
78
88
148
128
99
131
132
119
87
78
99
88
162
118
78
100
87
131
127
76
137
127
80
78
109
72
156
93
110
151
119
78
128
76
69
110
128
69
89
124
69
111
80
99
76
118
69
121
91
94
99
91
80
76
90
103
111
119
155
80
134
129
175
107
90
69
183
147
136
69
181
87
132
100
109
110
109
197
111
120
104
80
87
54
156
143
128
101
99
105
140
175
142
197
78
87
119
114
69
94
137
164
123
121
87
87
87
136
155
87
122
85
99
88
107
110
76
120
136
175
118
151
109
87
151
94
134
110
88
80
88
107
76
87
122
100
122
122
88
120
72
102
99
149
128
72
146
80
87
134
80
106
112
69
104
166
155
197
71
93
89
69
136
85
125
80
69
131
113
80
100
80
107
84
80
113
112
128
69
87
98
140
54
91
69
56
69
120
87
89
69
112
69
54
151
146
90
69
156
78
87
69
197
131
140
80
116
95
87
74
85
106
119
119
94
133
67
69
131
78
90
122
104
117
102
156
80
87
89
138
166
187
69
69
95
146
80
154
119
89
139
109
69
106
80
120
87
155
112
80
175
78
89
82
107
128
91
80
69
114
69
52
80
96
126
107
175
69
72
80
106
135
120
120
118
80
140
80
111
80
156
146
125
127
69
197
133
104
134
197
69
124
78
93
129
107
94
109
69
91
80
107
91
89
144
90
76
99
80
112
154
83
87
99
99
154
80
88
83
71
64
76
99
140
78
112
151
106
93
134
52
110
120
99
134
83
80
145
163
93
79
143
78
152
78
146
89
107
94
147
153
175
123
199
112
105
134
88
155
117
99
126
104
136
119
100
131
92
114
56
91
76
82
165
87
68
96
109
122
71
138
156
95
145
114
96
115
137
142
145
138
151
131
87
69
115
113
80
100
89
93
78
124
67
163
88
175
160
111
104
144
118
127
83
78
99
69
69
163
114
148
136
136
80
87
155
117
89
164
156
110
80
121
166
112
110
106
87
106
128
85
121
80
131
128
106
99
122
154
117
88
199
156
120
113
88
123
140
93
152
119
107
76
154
69
197
113
119
107
101
119
98
80
134
80
101
126
88
119
80
137
148
78
87
82
144
91
107
137
69
147
114
83
115
161
87
78
139
91
128
104
99
128
100
104
99
106
121
83
150
119
120
87
101
111
85
110
78
103
128
120
80
83
109
107
136
80
132
83
110
147
127
78
78
121
110
88
154
121
69
52
92
143
100
78
175
87
80
78
80
69
87
69
137
119
69
109
72
80
93
72
106
80
52
154
76
99
156
69
163
140
145
117
110
78
142
100
69
120
172
99
87
145
119
151
99
111
112
91
121
93
76
56
107
72
69
87
69
145
120
142
76
80
175
175
92
80
104
76
100
96
43
82
100
85
163
85
121
85
78
99
124
87
80
136
94
101
115
115
83
175
155
69
72
88
152
147
69
87
104
122
69
177
134
109
88
113
100
67
104
80
129
119
52
119
91
88
69
131
117
112
164
119
69
165
102
93
126
87
98
109
99
93
90
117
69
112
87
80
103
127
107
83
107
118
146
80
76
69
87
122
140
114
78
140
105
74
98
94
80
102
69
128
122
91
95
99
134
88
110
158
80
85
96
97
104
131
74
136
160
152
155
69
117
118
119
107
76
119
94
175
69
99
111
80
78
119
106
99
87
118
128
125
151
154
78
106
69
80
119
87
126
122
80
132
133
119
123
113
115
89
108
96
80
121
106
105
114
80
102
117
133
185
120
102
137
95
111
155
59
80
102
101
78
80
74
123
110
152
112
139
79
128
87
87
111
84
87
85
148
140
99
106
129
95
99
131
181
100
113
154
89
88
104
142
140
88
119
127
80
96
154
88
80
74
87
101
100
87
127
76
91
101
144
104
138
88
183
115
69
145
89
131
110
156
103
99
151
112
143
115
128
83
113
89
80
128
118
175
199
131
96
146
147
110
131
153
119
96
94
106
125
80
136
117
110
123
115
107
107
80
78
69
114
111
100
69
76
130
197
121
102
119
134
135
99
104
175
52
76
72
104
69
122
165
69
69
147
110
89
155
119
69
69
119
119
87
80
104
78
83
142
115
119
148
127
85
131
167
122
95
117
99
80
134
114
156
80
80
64
80
111
104
89
67
132
89
76
109
98
87
63
87
142
128
130
119
80
76
136
107
88
80
154
87
80
78
110
92
110
130
132
80
58
101
154
132
73
85
106
94
109
128
69
120
76
137
96
120
119
74
76
175
80
108
69
123
76
80
118
80
175
113
197
123
107
76
144
87
136
80
94
144
128
120
96
163
118
117
107
92
119
93
136
79
151
115
95
106
104
145
132
78
154
156
89
120
72
80
117
107
197
128
124
69
113
154
108
99
122
94
96
80
114
104
76
143
108
95
140
98
146
106
96
78
96
91
78
136
76
69
91
107
80
113
110
89
119
82
114
78
131
111
78
107
109
99
106
106
120
99
87
91
85
89
128
96
119
109
128
128
82
93
122
197
120
104
99
69
78
128
99
153
152
113
142
107
107
122
80
89
69
129
106
148
107
141
121
130
140
94
78
83
146
80
80
137
113
80
82
76
94
87
80
76
146
89
109
64
128
156
145
89
69
109
164
119
76
146
104
183
154
88
69
87
87
107
87
119
57
69
69
110
109
80
113
115
78
146
102
92
89
76
92
109
101
104
89
54
119
119
112
94
140
116
87
175
129
162
69
154
106
136
156
76
79
98
67
111
87
52
87
88
124
94
118
106
80
76
101
80
76
175
100
148
69
58
115
69
94
80
78
115
85
64
147
76
105
117
114
79
140
56
80
151
105
154
80
115
130
133
92
87
93
130
154
78
128
128
91
139
82
107
108
89
133
112
138
107
56
88
69
112
113
80
109
155
119
171
102
90
69
107
130
134
83
100
131
78
78
163
140
76
141
156
109
58
99
90
175
69
112
80
110
80
120
101
128
74
113
54
87
185
132
110
103
109
128
154
134
160
89
175
102
105
93
76
110
69
106
76
107
78
120
172
128
164
107
121
99
98
155
76
119
119
78
123
78
87
99
74
87
119
87
87
69
90
104
87
140
132
124
78
142
125
94
101
127
110
100
110
136
56
93
104
117
156
91
118
119
89
120
97
154
144
78
187
85
69
117
126
132
69
69
142
107
101
136
136
109
119
83
76
99
87
123
103
113
96
143
78
154
108
134
80
121
87
99
80
69
121
80
197
72
128
133
69
79
163
112
175
83
92
74
104
136
160
128
76
79
126
78
80
87
175
140
69
87
103
156
154
86
76
123
91
124
80
91
107
88
87
67
120
107
80
93
114
95
106
143
78
93
69
119
119
76
69
185
87
80
156
83
155
134
91
99
75
76
67
87
123
94
94
106
136
144
131
127
89
111
104
110
109
118
76
142
72
110
87
131
87
52
120
114
100
143
78
155
78
78
69
87
130
87
154
113
69
87
85
54
147
111
87
78
69
112
78
117
119
69
101
138
74
105
114
86
155
166
88
110
80
109
88
107
117
117
156
87
146
106
72
117
102
55
87
108
119
91
106
99
87
80
89
80
91
72
80
88
106
120
113
120
140
109
80
43
131
100
66
90
80
80
121
136
186
108
99
154
81
102
69
127
87
80
103
122
119
154
147
99
76
126
104
137
92
122
134
132
163
78
80
99
78
130
146
87
121
113
80
87
99
80
72
93
175
78
72
120
145
80
112
107
112
74
104
71
69
89
93
80
76
131
134
155
80
111
120
85
101
127
120
72
131
85
78
64
78
120
112
102
125
100
98
114
126
52
96
119
113
115
80
76
99
121
80
107
119
78
101
104
89
145
117
119
80
80
134
80
132
118
148
111
94
181
136
144
69
120
142
175
98
96
96
80
80
107
119
94
119
106
136
105
72
157
120
85
137
115
132
112
165
78
69
128
139
88
88
136
140
76
99
80
136
94
87
127
69
73
154
99
74
118
149
159
147
123
79
76
101
104
109
124
101
133
140
99
120
54
83
80
87
76
56
140
121
78
115
120
155
129
113
101
171
162
69
113
154
124
155
118
54
78
175
88
78
121
109
68
102
113
112
120
121
109
87
151
209
69
85
175
144
87
122
175
131
78
110
107
114
90
121
128
130
107
88
90
71
56
78
155
80
78
104
123
76
80
112
97
76
78
69
143
69
96
94
154
175
94
88
110
96
87
91
118
72
117
76
121
125
156
154
96
52
119
94
91
120
164
113
110
104
117
99
119
69
87
69
87
119
74
80
169
104
87
121
120
121
130
83
56
130
80
101
72
87
128
146
144
89
156
104
76
69
109
69
78
134
78
131
110
66
160
112
102
76
93
128
127
80
115
104
122
69
130
117
76
141
122
127
80
102
87
117
134
143
103
90
100
123
56
106
80
59
129
106
102
126
123
87
119
106
80
117
129
127
79
87
110
78
69
99
78
118
127
150
67
76
128
87
124
136
73
112
88
78
107
122
140
99
133
88
91
87
107
58
122
96
87
109
132
96
107
80
89
73
112
117
80
76
110
175
75
119
80
43
109
107
83
89
107
80
136
93
155
56
78
197
140
120
154
119
96
80
78
93
103
120
117
127
109
155
108
136
101
76
89
95
122
69
110
118
133
87
113
116
110
107
164
120
122
119
136
78
112
76
99
103
79
80
113
80
113
153
101
123
89
90
99
88
146
100
72
69
75
94
87
163
107
123
80
121
94
119
121
110
116
80
95
87
80
94
80
136
164
80
113
130
99
78
80
78
94
89
87
175
128
99
69
78
69
114
185
104
89
120
106
175
114
80
69
131
104
113
136
80
120
69
80
69
141
156
87
77
98
115
104
69
119
148
175
95
69
114
121
140
117
80
80
101
80
151
109
69
98
163
80
154
80
134
87
109
151
145
88
159
104
80
109
156
80
82
115
133
102
80
120
98
80
80
80
68
97
114
78
145
148
109
124
130
144
163
91
101
102
130
109
94
69
109
115
94
99
127
107
137
138
102
93
140
164
89
128
88
99
69
106
94
54
93
69
80
69
110
128
85
80
151
99
127
69
128
80
107
92
134
80
85
145
94
76
111
114
112
113
98
112
134
74
128
128
91
131
134
109
100
52
88
69
76
106
91
118
155
69
83
76
71
154
80
97
80
63
78
74
88
80
101
92
78
98
113
94
118
69
43
98
110
197
69
119
154
197
107
125
102
128
88
69
94
140
69
125
175
80
69
113
69
107
131
197
88
131
121
136
69
121
117
100
93
120
128
128
154
163
69
93
88
56
151
88
69
101
120
175
109
99
145
99
101
128
69
69
76
107
147
163
78
107
114
107
106
80
114
140
99
113
120
119
129
109
119
95
87
123
69
72
72
120
106
109
87
87
156
60
91
107
99
87
136
185
80
80
69
110
111
175
80
121
129
103
78
132
140
87
128
80
109
106
88
121
154
80
124
104
117
128
69
58
87
87
88
109
69
115
119
119
94
89
103
144
129
69
120
69
107
69
120
120
197
140
76
76
119
52
106
80
76
124
121
109
95
134
106
93
123
117
124
112
114
119
89
132
81
120
69
85
106
76
114
89
87
87
94
99
147
78
151
52
120
102
115
110
69
146
99
121
134
95
118
118
117
118
114
80
88
104
154
120
69
80
80
130
80
129
95
96
80
111
74
69
78
87
132
110
197
88
120
101
106
113
107
80
106
148
87
134
163
76
121
80
94
67
82
69
109
80
147
119
79
106
85
146
119
96
69
76
117
106
119
76
80
69
109
80
130
78
101
114
162
130
87
89
93
87
120
127
128
108
155
117
80
111
69
139
96
130
76
91
113
88
109
89
80
144
128
175
109
78
74
117
132
119
131
69
88
78
125
175
151
73
124
96
99
79
109
93
72
108
119
74
143
96
76
78
93
197
87
104
69
76
80
101
107
107
105
175
149
140
69
91
121
88
122
72
72
89
115
107
138
69
118
120
69
112
128
83
87
71
78
64
114
90
113
137
128
154
100
69
156
151
109
88
136
80
106
103
80
76
87
112
57
109
77
73
134
117
120
132
110
69
96
115
118
94
172
164
165
140
112
104
88
109
104
54
103
152
99
108
99
104
131
94
145
99
136
152
127
72
99
69
83
76
80
69
163
121
113
91
69
156
76
91
91
80
131
163
93
143
106
119
107
69
117
118
99
138
80
109
109
87
69
137
99
128
90
121
94
126
69
94
71
128
112
125
106
157
175
72
111
117
119
87
166
76
75
69
78
101
134
164
100
116
94
154
96
102
134
78
76
120
136
137
74
120
155
80
162
119
80
115
67
76
78
104
104
138
88
112
71
102
120
109
74
80
90
140
119
100
69
117
107
94
69
175
89
118
76
54
80
154
128
145
94
120
115
122
87
80
120
69
119
119
117
87
110
128
80
118
140
89
78
197
98
122
125
94
80
117
78
105
133
80
107
123
125
119
91
129
83
67
87
87
107
106
87
153
94
89
69
87
118
69
197
99
104
103
157
69
107
69
107
87
86
89
91
101
101
123
160
114
91
118
132
83
76
114
69
126
122
69
80
119
155
87
96
88
117
122
91
123
134
69
155
131
54
119
115
76
109
107
118
175
175
80
80
82
119
144
127
99
117
118
107
69
110
112
78
103
80
120
72
106
87
120
126
97
132
90
133
89
123
113
100
175
96
69
199
93
112
109
120
104
80
147
69
162
122
87
106
56
78
121
69
117
156
155
93
131
183
69
112
140
114
100
99
155
113
72
112
94
69
69
87
94
133
131
112
119
93
156
150
152
112
107
127
94
155
103
78
154
114
80
80
93
125
87
175
89
110
127
80
126
156
92
99
77
69
110
109
80
109
137
155
120
128
107
115
80
140
100
104
69
123
76
175
106
148
107
112
120
80
109
96
106
109
78
139
150
163
119
87
89
89
118
69
172
133
104
103
69
164
109
72
83
43
72
136
106
151
76
109
118
56
113
114
52
154
113
80
89
120
102
120
72
131
43
104
99
93
88
128
164
128
99
145
199
80
59
93
112
116
69
94
71
141
69
78
54
146
71
69
110
99
87
100
139
96
80
91
87
129
66
87
64
94
120
101
134
106
80
89
78
76
118
154
156
133
95
175
69
109
134
80
128
148
140
136
72
112
120
122
151
113
72
99
156
154
140
104
82
172
102
99
94
137
80
114
110
197
52
119
80
145
95
115
154
72
133
88
93
148
78
69
76
87
113
78
67
128
128
87
163
178
125
92
195
72
80
99
66
128
127
115
99
93
80
78
94
89
90
76
69
80
109
117
80
66
154
117
69
80
106
69
94
80
114
89
119
136
143
121
74
113
106
80
155
113
120
119
69
78
93
119
120
155
99
134
100
96
209
120
107
95
76
155
93
145
158
80
56
102
134
80
120
92
99
91
107
104
89
109
110
134
80
114
143
154
72
111
89
59
152
80
102
119
107
80
69
88
74
52
117
154
93
129
152
83
89
139
80
80
120
118
138
100
156
124
75
80
110
118
72
114
121
175
54
88
88
87
106
154
80
129
87
127
127
128
155
118
107
104
106
146
110
146
69
87
144
134
136
95
80
132
133
82
72
155
120
107
117
115
99
121
113
56
130
118
137
128
91
76
136
96
120
156
80
78
76
123
139
118
87
115
117
76
73
80
144
145
174
76
140
156
124
101
106
72
43
119
83
88
99
120
163
87
110
90
88
112
101
111
76
112
104
76
80
181
80
140
93
88
69
103
175
145
121
120
109
69
91
69
175
89
87
201
107
99
113
80
100
67
88
132
136
109
119
120
78
69
111
78
80
162
112
87
146
89
144
119
120
89
69
76
93
114
89
69
112
134
175
130
136
146
148
76
175
87
148
80
66
145
159
78
131
121
69
80
160
94
76
111
107
93
125
74
58
89
117
118
72
163
69
85
106
119
128
125
80
134
119
162
134
101
117
113
140
110
69
69
80
64
119
119
80
88
155
112
76
72
143
152
155
119
112
104
88
152
121
150
83
80
132
119
67
101
78
69
80
76
185
201
146
121
126
93
124
73
146
118
113
113
87
134
69
132
175
54
117
140
134
137
80
119
80
120
80
91
99
120
154
94
115
80
80
99
91
89
80
134
98
80
111
120
110
96
91
93
176
121
94
78
141
76
111
119
143
134
120
138
80
155
69
115
67
126
87
69
119
96
154
87
69
128
107
111
96
175
87
94
152
90
43
83
66
151
140
106
80
69
152
79
115
74
175
74
78
117
89
81
118
99
126
93
136
52
110
126
78
93
87
113
106
137
72
143
94
69
130
118
114
107
160
107
130
69
140
76
69
93
110
75
99
122
120
129
80
148
99
80
87
91
80
106
88
125
87
80
123
80
152
72
85
80
96
76
91
106
101
80
89
93
117
126
83
128
92
102
93
76
93
96
95
89
128
88
78
117
132
88
128
113
140
72
107
89
87
209
101
79
78
69
82
85
152
87
206
52
99
80
121
59
113
78
76
128
128
100
88
163
83
91
69
112
132
121
78
111
69
154
54
109
119
68
130
103
87
106
99
60
110
111
109
80
69
125
132
102
89
106
128
155
197
139
117
160
80
69
113
128
87
112
163
120
112
113
72
129
128
109
118
108
107
113
102
91
109
76
128
91
94
113
120
115
156
154
66
110
81
145
120
67
150
136
96
69
197
110
54
80
107
93
87
82
80
136
52
80
121
155
78
69
98
129
80
88
175
112
121
76
80
114
103
69
94
74
104
122
151
80
120
102
80
108
154
161
93
117
80
69
148
109
175
104
110
125
120
80
111
107
131
117
69
172
78
76
122
112
80
117
80
94
145
155
107
80
175
174
117
69
126
83
106
72
117
80
107
151
112
66
92
120
106
88
69
80
87
103
71
78
112
112
56
90
56
89
124
89
83
117
109
111
155
88
69
98
131
103
99
80
175
80
141
119
131
109
134
164
67
110
117
110
89
76
152
69
78
119
88
104
76
113
120
119
101
134
131
134
172
76
80
146
88
72
126
117
94
76
93
76
93
98
74
129
109
70
87
93
76
117
72
100
87
76
109
80
76
87
142
147
72
107
69
175
121
93
87
67
87
67
76
112
113
86
175
110
104
74
113
83
121
109
163
91
94
112
95
125
120
163
115
115
109
121
69
69
110
111
136
154
93
76
80
107
88
109
87
151
80
154
120
107
76
129
91
54
89
69
104
120
131
175
121
78
89
76
123
106
88
113
78
119
104
78
185
131
99
117
89
113
140
123
72
69
132
146
106
71
76
197
131
117
93
120
92
66
109
87
89
112
119
99
154
76
74
106
109
78
69
148
102
69
104
99
128
99
121
140
136
89
143
94
109
117
87
69
90
119
97
140
131
120
109
69
94
78
110
76
59
99
87
111
90
76
94
134
119
69
91
160
76
113
201
137
78
121
112
94
114
88
101
120
99
156
134
76
111
111
104
78
88
117
147
117
136
118
136
119
130
78
109
110
90
142
117
136
101
156
128
106
78
148
78
124
104
138
72
164
159
201
111
119
99
154
103
155
76
89
117
69
78
98
120
85
146
102
133
109
72
54
91
69
75
197
123
80
109
131
118
111
120
150
197
156
89
76
197
109
121
88
133
78
107
80
80
100
138
151
99
151
119
115
79
125
91
148
91
87
67
99
120
81
76
110
69
137
96
112
160
64
56
69
91
104
136
80
76
114
124
123
93
91
103
88
197
145
121
146
78
93
69
56
159
131
119
78
94
144
78
115
75
87
145
121
117
88
87
91
87
109
136
102
69
85
110
54
104
69
85
109
187
112
91
114
117
93
78
85
78
101
88
110
135
88
76
91
96
99
74
106
164
80
76
80
104
69
149
120
94
85
141
111
80
79
120
155
76
126
112
87
89
175
68
87
87
72
76
89
163
76
99
94
136
71
88
88
91
72
83
87
103
78
104
152
154
110
80
101
69
94
54
56
69
69
118
94
113
80
78
96
134
120
119
93
59
88
76
87
151
80
125
136
88
94
114
140
135
85
69
69
146
147
109
175
99
115
112
163
120
69
112
78
69
78
69
89
87
104
78
80
88
80
107
109
99
85
131
80
102
99
175
128
156
109
187
119
87
104
110
98
151
87
123
163
88
118
138
136
109
131
119
69
72
119
67
69
89
69
134
138
69
69
80
133
78
69
154
153
175
69
78
121
104
101
111
99
69
76
107
76
175
75
104
106
131
98
134
149
143
136
54
144
123
76
152
80
136
140
148
78
128
87
89
83
107
163
121
169
85
130
166
128
105
111
80
121
109
69
106
143
76
120
124
152
110
78
119
110
175
96
133
140
95
147
116
154
72
95
95
78
112
95
134
69
72
123
165
81
111
156
103
121
121
88
93
136
118
175
80
99
115
52
119
110
119
54
90
69
143
129
69
80
96
87
95
155
100
106
120
125
87
90
119
131
88
151
87
136
110
119
69
144
99
107
99
120
107
77
69
88
69
87
197
175
183
156
96
143
102
140
88
126
113
80
76
102
93
126
80
144
107
120
111
85
123
80
80
118
80
119
78
78
80
197
140
76
117
89
125
127
125
87
130
93
76
113
137
56
146
69
76
69
87
80
138
75
110
106
83
148
104
117
163
120
69
100
72
120
87
122
90
126
84
69
114
96
156
128
96
75
114
175
201
78
117
98
90
90
160
143
123
104
164
131
80
104
120
154
163
154
92
96
71
111
131
127
128
80
106
69
69
120
144
101
109
69
80
96
119
148
106
128
69
154
80
114
107
106
152
94
80
146
98
91
120
154
87
78
101
171
76
119
78
79
102
69
87
156
87
175
109
69
93
99
113
83
112
89
98
99
76
107
133
155
76
80
113
74
175
120
87
119
131
115
107
76
134
119
117
133
88
103
128
129
72
95
128
115
156
128
134
144
89
80
69
109
79
99
154
121
69
69
87
156
78
80
146
125
72
76
107
102
136
162
80
116
87
118
80
136
164
169
87
108
80
132
65
89
93
87
90
104
69
156
67
54
87
78
113
136
120
80
119
76
80
76
133
89
99
76
80
104
88
112
107
118
113
91
71
108
145
111
107
110
133
102
102
134
134
80
125
88
95
87
80
85
74
91
89
96
76
133
109
119
109
89
88
138
138
80
117
116
169
91
80
99
102
154
99
69
137
137
87
80
146
80
76
131
110
99
84
156
93
107
80
125
132
99
109
87
160
69
102
120
80
117
87
134
82
93
74
93
91
145
99
88
128
120
155
111
133
121
113
115
80
100
83
88
120
150
73
131
80
93
112
91
119
80
135
197
109
119
127
119
69
87
175
119
76
134
85
69
128
78
145
130
131
69
137
133
80
69
156
139
106
109
129
120
154
80
174
87
175
133
183
141
80
106
99
103
80
120
154
119
100
133
127
96
101
117
102
128
111
80
130
99
106
80
111
119
94
89
109
80
88
90
113
157
113
93
54
146
54
112
143
78
163
80
80
93
78
129
104
87
133
94
136
87
107
80
91
121
69
80
80
69
128
118
52
128
118
111
125
106
107
91
102
145
107
56
80
175
148
69
88
91
175
156
138
151
140
115
93
122
78
120
87
159
78
134
52
120
106
56
99
80
76
96
142
76
162
100
101
80
103
129
119
112
124
78
89
80
144
119
124
154
133
124
99
132
89
69
80
96
102
95
76
163
115
89
102
80
69
154
97
148
124
110
76
156
147
118
107
111
78
144
101
88
71
117
88
120
69
99
78
160
78
163
122
91
87
107
76
113
128
120
124
72
89
80
112
87
119
99
92
119
80
119
60
130
156
150
155
134
98
80
181
102
183
121
110
121
119
80
145
115
76
80
122
80
134
92
125
80
100
154
141
78
91
78
80
127
107
69
121
107
93
131
128
127
121
113
80
107
80
119
96
78
80
137
119
89
134
78
76
120
100
69
147
120
88
106
113
150
127
80
128
102
136
128
175
110
143
119
80
107
89
197
91
102
119
156
122
154
110
113
146
80
123
175
80
80
113
76
80
76
107
123
143
119
80
128
117
80
52
154
146
123
133
89
130
69
114
87
74
87
104
104
110
133
80
133
88
74
164
119
78
154
102
78
87
69
134
80
110
110
131
134
88
76
148
144
134
99
69
80
87
87
104
175
156
107
101
80
54
99
120
99
102
88
119
152
83
87
154
72
119
84
137
120
119
93
132
96
69
111
76
107
175
106
175
175
127
95
88
136
156
138
106
109
117
135
122
63
89
84
119
98
145
88
125
107
154
99
100
80
128
131
153
163
112
141
80
59
128
124
100
76
54
80
89
78
147
98
80
104
131
113
132
110
121
145
114
130
118
121
100
151
167
110
122
88
89
98
69
99
205
76
94
127
87
69
149
165
94
138
78
89
109
80
106
69
80
121
154
86
80
118
144
80
111
116
140
52
89
80
102
185
91
102
103
106
85
174
107
109
100
80
101
147
96
120
94
109
136
139
156
109
119
87
120
110
69
54
112
102
54
112
102
94
92
69
110
99
110
134
116
69
114
96
88
151
131
87
120
69
78
66
127
113
69
80
80
109
80
126
128
122
148
69
119
89
127
95
99
128
175
114
89
107
92
74
150
145
80
87
140
100
87
89
100
80
109
151
161
103
127
100
163
67
80
115
97
201
112
95
120
110
136
175
136
87
106
104
110
75
88
80
106
128
128
119
91
78
120
64
134
80
111
78
74
80
117
138
87
102
104
93
128
80
74
87
146
175
119
89
80
101
159
80
104
78
175
69
80
134
138
89
101
91
159
80
66
134
114
64
197
131
93
109
119
163
156
112
142
80
87
96
104
54
76
109
96
175
80
124
94
85
110
147
107
113
137
124
80
78
87
90
155
148
109
134
88
88
164
164
154
122
197
131
105
102
80
125
151
144
58
91
88
121
69
80
154
128
76
140
133
128
73
163
120
117
121
89
80
138
76
119
69
78
131
118
87
69
118
102
80
114
78
110
80
56
69
136
87
94
154
94
99
78
116
83
134
78
160
117
104
80
80
87
106
133
107
96
102
162
120
156
75
87
102
87
156
99
80
87
119
102
89
79
156
101
175
78
172
91
109
88
78
80
133
80
145
123
104
88
127
132
148
80
69
175
92
89
113
143
87
99
117
106
144
78
72
127
80
80
69
76
105
80
126
52
112
102
113
89
93
134
85
72
87
94
88
151
112
128
118
152
87
102
197
99
80
110
113
80
110
128
121
114
126
94
110
109
132
88
69
140
69
80
121
89
88
80
132
175
111
74
87
101
151
104
72
119
96
60
121
117
120
136
175
145
175
134
134
101
82
110
87
134
80
163
117
119
67
69
56
83
80
93
104
76
133
87
115
76
120
127
69
102
54
76
134
110
123
78
91
94
102
80
114
93
99
69
131
110
80
119
136
99
121
144
107
99
98
82
78
156
83
94
123
103
113
117
88
88
155
75
126
128
127
58
156
91
131
56
69
87
106
175
119
67
152
94
107
64
78
121
127
128
91
169
67
110
76
80
151
119
94
157
72
119
80
80
162
78
153
142
114
118
114
74
112
155
107
120
148
76
74
102
133
80
136
121
146
143
87
74
136
175
83
106
80
69
76
154
121
96
137
183
80
110
115
69
80
128
88
120
112
79
107
128
69
89
205
128
119
80
80
126
90
136
155
54
140
99
76
112
93
124
131
119
107
87
155
69
69
104
96
88
91
175
78
115
76
99
119
69
104
104
69
99
99
96
148
76
111
136
87
128
117
80
146
140
156
164
98
127
87
78
154
87
140
107
69
93
69
154
121
112
119
87
112
80
80
87
80
64
52
132
80
128
80
113
114
69
121
154
128
101
88
146
76
106
140
99
131
109
99
154
122
136
125
100
201
119
110
104
89
134
119
94
126
96
85
142
124
122
104
164
125
147
72
127
111
112
76
155
93
96
100
122
130
81
94
117
140
140
129
99
80
99
69
80
80
104
110
80
80
59
67
78
87
154
155
76
113
78
110
120
69
199
85
72
136
88
99
78
102
80
181
130
89
128
104
85
151
102
88
136
69
56
116
99
101
76
87
155
114
128
130
67
82
80
134
88
89
134
120
80
87
104
88
110
107
56
108
99
164
113
69
115
136
69
199
93
88
113
177
103
104
78
85
109
147
106
94
98
64
106
131
87
132
80
104
116
156
52
125
95
119
120
96
130
155
56
138
100
120
106
128
111
85
120
172
136
104
102
91
120
78
172
131
151
78
101
130
164
131
95
63
175
143
87
131
154
121
107
69
69
100
89
80
80
87
114
121
87
85
96
80
154
151
113
110
107
119
67
87
109
87
145
139
175
106
123
106
138
56
89
96
72
183
98
84
120
117
121
154
91
85
92
113
87
156
121
68
117
107
96
122
164
119
155
98
119
101
104
89
98
119
85
175
88
81
99
85
80
136
80
99
151
134
154
128
104
107
119
80
69
110
107
69
89
126
72
98
72
110
76
94
128
52
104
93
80
102
99
72
120
90
76
88
98
110
111
94
71
104
72
80
87
100
80
131
71
151
109
107
101
78
87
128
109
110
91
136
117
119
113
147
119
89
79
148
106
87
70
106
112
127
156
89
136
156
124
114
109
54
80
175
87
107
80
128
88
43
100
140
131
123
107
104
201
197
132
140
154
133
126
76
140
134
80
87
69
119
110
137
87
136
154
131
69
140
69
99
114
129
110
94
120
80
91
88
93
107
154
54
125
152
117
150
175
128
93
89
156
78
151
88
81
69
69
128
158
117
93
69
111
72
107
120
80
110
185
104
119
139
96
140
89
117
104
128
138
130
120
69
118
71
156
119
119
120
174
132
96
109
148
128
128
80
112
96
80
43
110
106
137
69
80
110
121
80
154
110
119
80
69
113
89
147
74
175
112
104
94
87
87
52
175
69
104
149
69
103
136
69
139
76
74
134
75
43
117
107
187
69
109
88
79
69
69
110
150
122
88
76
76
76
137
93
94
100
80
112
120
155
83
113
114
54
69
87
103
82
107
119
99
85
154
97
76
93
120
101
175
131
106
119
112
94
127
136
175
154
154
154
88
113
76
128
94
138
146
149
123
75
131
80
80
187
87
147
94
106
69
156
101
75
76
98
113
73
107
64
120
80
76
143
74
152
69
119
139
76
69
106
140
101
131
69
85
69
134
101
87
78
80
148
154
97
69
110
114
80
141
66
80
143
140
99
147
115
103
80
100
95
70
131
80
54
78
87
133
103
90
52
76
72
174
125
157
133
175
88
102
137
112
165
137
76
130
78
102
98
93
106
76
94
103
69
72
87
87
69
134
115
80
94
169
151
110
78
80
76
85
87
175
67
118
103
115
164
100
118
109
132
120
131
112
156
102
201
74
87
154
119
127
87
76
156
72
69
106
69
134
82
80
57
85
93
69
80
80
118
166
87
78
80
155
80
88
175
110
94
197
101
114
155
109
98
119
75
69
77
125
128
87
131
94
109
154
76
87
80
119
69
101
131
87
100
88
78
88
80
94
89
95
123
129
80
103
96
80
160
93
176
104
85
101
109
88
122
69
69
72
69
85
72
121
154
123
134
71
104
89
122
134
80
113
107
64
133
120
119
137
123
87
119
76
110
146
83
92
80
76
175
132
107
88
109
124
79
107
89
131
114
78
139
93
115
113
91
82
72
94
69
104
87
72
89
69
117
94
147
112
112
89
80
128
146
80
125
80
138
119
87
56
104
78
94
97
100
85
93
123
76
90
113
119
144
96
87
78
119
80
83
85
130
75
63
87
56
72
128
155
107
92
154
119
120
88
123
94
125
134
80
118
103
119
80
175
121
140
52
101
109
52
112
76
78
87
69
199
96
94
132
128
74
76
104
76
110
78
80
157
80
97
134
87
163
121
80
78
154
102
148
131
115
145
110
119
87
155
126
117
80
138
98
58
120
145
112
76
99
119
154
136
85
71
69
117
78
119
136
104
78
124
145
164
138
142
145
107
76
107
122
83
128
87
151
147
107
101
76
102
120
94
120
119
147
107
87
80
153
85
175
102
78
76
87
119
80
94
101
87
79
104
197
100
94
80
132
199
123
119
114
80
104
146
114
100
107
143
109
81
78
110
80
80
154
144
134
120
87
72
88
159
131
93
80
80
107
87
128
73
95
87
99
87
103
121
78
69
109
78
99
94
93
78
93
115
52
132
69
131
113
132
154
130
102
136
159
129
126
80
154
80
138
72
119
88
132
107
72
119
102
72
103
138
92
147
80
127
78
109
105
87
80
157
80
80
151
80
72
87
111
72
104
80
63
156
104
80
146
116
80
101
110
109
138
107
87
164
94
81
119
78
127
69
99
154
68
203
80
129
117
135
80
117
146
131
121
74
107
87
80
129
119
140
69
113
123
99
163
72
199
103
131
85
99
112
93
109
114
74
129
91
120
111
88
75
119
118
109
136
86
78
123
134
112
119
98
156
113
101
52
109
144
131
113
67
112
71
94
107
69
80
78
145
88
106
76
156
80
101
147
119
119
175
144
96
69
85
112
106
79
87
123
164
78
102
107
109
99
78
107
68
80
80
155
114
148
69
131
148
87
80
87
95
104
110
102
76
152
106
132
197
107
80
120
148
72
121
52
80
100
174
74
187
99
128
78
69
131
107
104
87
104
125
128
117
74
137
80
106
82
110
87
80
89
69
103
93
91
89
110
174
74
99
88
93
120
127
119
93
154
121
130
112
52
80
106
107
156
138
103
163
109
69
158
154
108
78
131
117
87
112
136
103
101
118
183
119
109
69
104
80
101
89
80
80
78
120
66
80
120
147
74
87
54
102
128
69
134
80
84
96
128
87
104
92
127
104
197
89
136
69
100
87
169
106
136
139
138
129
156
209
199
132
107
78
109
117
175
106
115
87
80
89
113
101
78
54
131
104
78
88
121
76
97
75
95
130
147
144
154
121
80
78
113
132
87
78
140
76
175
120
106
163
104
64
127
69
124
99
183
95
111
154
133
72
88
114
145
78
104
91
87
95
67
132
110
151
119
119
132
109
88
92
120
103
89
87
78
113
120
58
85
121
121
87
175
109
137
129
132
80
175
77
138
112
106
107
80
115
89
69
140
145
133
89
117
82
80
87
69
136
119
83
80
136
102
117
133
80
80
78
102
154
87
120
120
112
149
119
121
97
139
74
110
80
87
67
78
128
134
102
131
69
175
94
120
69
76
69
93
136
119
133
52
128
109
165
69
74
87
110
120
126
88
93
97
88
94
100
80
80
143
104
98
88
87
141
69
78
203
93
134
94
140
103
132
80
54
140
81
91
143
110
83
74
128
101
88
109
128
69
92
69
157
110
87
80
121
126
87
122
80
96
88
69
126
111
80
93
133
74
175
73
95
154
112
137
67
197
69
100
78
150
104
56
110
99
131
80
94
156
121
54
93
80
98
72
93
107
94
106
88
128
175
119
73
69
128
69
163
101
80
69
121
82
99
155
87
67
175
69
104
89
110
121
72
136
107
56
69
197
134
76
90
141
109
106
66
103
163
96
76
111
83
89
164
122
94
145
74
89
89
69
98
118
110
104
52
74
126
87
124
164
136
115
107
96
123
92
72
122
90
76
94
146
91
89
131
128
197
150
124
112
131
103
72
78
96
114
69
80
123
140
90
89
109
134
113
80
141
87
107
69
117
69
78
112
109
89
133
114
137
121
64
89
107
143
94
99
129
56
69
137
69
111
99
148
115
119
101
147
133
43
113
80
76
112
80
131
119
175
119
121
87
148
123
175
89
134
87
43
74
74
127
95
94
127
151
74
87
120
80
43
107
124
96
76
124
87
102
128
87
78
107
140
72
98
134
153
89
76
74
93
109
109
79
107
69
145
117
122
122
109
107
128
121
152
123
145
87
132
156
89
146
80
94
69
52
106
107
159
121
96
88
94
137
121
158
78
156
88
146
133
120
76
112
78
72
95
136
58
69
99
122
142
63
127
98
78
128
95
87
129
107
120
119
72
80
91
85
75
197
87
163
80
127
128
88
106
107
117
87
119
104
185
145
140
74
107
140
99
175
111
120
98
149
131
69
151
143
69
69
134
156
43
87
66
131
87
121
89
76
109
143
69
154
67
79
133
115
96
78
66
104
90
69
82
88
76
87
69
106
175
73
121
80
156
164
87
109
120
82
110
154
99
101
112
103
69
107
119
105
175
91
101
152
80
69
72
109
120
127
118
126
90
125
110
175
94
136
108
102
101
89
80
100
131
140
69
98
80
106
76
125
80
113
80
147
99
119
174
112
117
106
128
69
118
107
148
69
112
140
127
69
134
113
80
80
105
117
123
115
106
100
56
54
112
80
107
128
119
175
87
91
74
138
119
101
110
99
136
80
119
78
154
119
98
75
110
110
80
89
94
94
112
74
142
78
107
120
78
98
107
69
107
118
101
101
85
96
107
122
128
120
117
80
98
93
151
112
155
76
80
103
96
76
102
43
156
111
80
146
136
100
118
169
155
69
87
151
123
151
91
144
136
134
92
107
80
94
118
133
67
107
157
76
76
175
107
88
56
144
137
87
80
91
76
197
108
154
107
116
99
68
117
69
119
154
109
119
166
101
128
80
196
107
163
87
122
119
76
122
80
108
163
199
128
85
151
117
64
163
131
56
78
119
132
94
80
69
80
136
110
154
107
74
175
154
78
156
120
134
151
131
88
110
112
102
106
163
131
144
139
108
109
128
134
129
112
80
163
139
155
63
109
99
120
76
69
87
95
60
106
69
120
121
104
87
114
101
107
128
110
80
109
85
80
89
175
131
104
74
99
72
121
136
105
146
119
119
104
174
127
69
57
54
120
69
103
83
110
71
106
109
154
87
69
69
95
126
156
119
131
127
69
110
130
197
111
146
80
101
80
88
88
78
128
69
127
87
80
59
113
109
80
63
88
121
140
90
76
89
113
78
109
76
143
87
197
89
80
76
105
101
119
109
177
120
112
87
56
154
137
89
80
105
112
131
73
89
120
80
78
106
121
91
106
121
112
175
118
120
155
78
98
101
142
120
80
119
109
76
175
69
104
80
102
120
119
109
100
96
199
197
69
80
78
103
98
76
97
87
103
69
74
95
132
80
76
138
154
104
106
78
114
90
87
82
157
78
99
100
129
147
87
154
73
83
109
76
103
66
136
120
119
99
80
154
119
89
80
127
107
113
78
106
69
112
140
58
89
104
128
96
90
101
89
132
82
110
119
69
94
104
91
72
104
88
96
108
88
155
126
115
117
112
147
91
120
102
80
136
69
69
142
88
121
87
129
76
116
128
128
157
131
121
159
76
132
60
97
124
122
121
95
127
136
104
92
121
136
125
87
120
100
75
80
110
110
104
164
125
69
89
129
56
104
101
144
78
80
75
121
119
132
124
69
112
106
183
131
80
111
128
194
100
137
78
109
163
136
78
109
119
91
81
154
113
54
119
80
134
136
93
155
88
63
87
87
119
104
109
101
106
149
93
104
113
104
121
119
89
75
87
72
115
69
76
78
74
112
80
117
125
88
80
54
109
110
133
102
107
113
120
76
127
107
87
148
109
126
128
128
101
136
99
78
88
121
109
119
131
80
99
144
160
160
85
89
117
120
141
76
106
74
117
96
143
91
69
99
96
78
119
87
131
118
76
80
78
99
135
110
175
113
123
127
117
127
74
159
96
69
131
113
110
121
64
69
96
76
102
197
121
154
162
175
123
107
89
100
78
131
89
93
90
66
146
94
111
140
147
119
80
113
99
154
94
80
99
69
115
104
107
106
101
143
131
120
127
120
89
80
112
113
110
80
140
154
128
106
142
117
103
146
120
69
89
90
64
90
107
80
154
90
154
80
107
119
87
145
121
69
96
104
87
109
104
153
121
87
76
89
91
88
88
69
136
100
85
109
85
174
197
80
119
52
99
183
101
132
104
104
78
136
102
175
94
115
104
110
151
103
110
95
126
99
154
89
76
154
128
154
131
107
104
132
94
100
110
134
115
120
121
134
99
154
175
175
197
130
94
120
80
94
146
121
142
89
185
75
96
78
71
76
125
154
128
107
79
175
154
88
162
112
95
127
96
91
113
88
88
154
87
107
82
112
52
91
76
119
143
132
93
118
83
121
80
88
125
102
134
72
69
121
69
76
134
99
106
78
78
131
111
128
78
107
101
183
85
78
130
146
122
109
98
80
131
58
119
131
80
175
163
150
143
106
109
112
96
154
78
109
107
95
89
80
100
117
74
119
99
72
91
67
80
112
148
127
52
120
94
80
133
137
92
74
119
155
80
131
143
113
78
115
89
87
80
107
85
69
86
80
88
117
88
72
140
119
74
87
52
82
96
113
69
72
146
113
87
89
128
113
136
90
145
103
99
78
107
106
69
76
92
87
114
80
78
78
112
91
88
69
123
72
147
128
104
80
69
106
88
130
73
109
85
110
166
114
102
112
74
151
121
133
121
124
95
80
89
154
109
94
119
169
76
88
80
102
91
177
146
112
106
129
120
104
80
164
145
63
85
104
88
80
96
76
110
105
133
99
119
94
78
99
89
83
106
127
117
101
136
125
89
144
67
52
99
117
99
110
107
166
80
119
88
91
56
136
156
127
80
93
85
76
71
76
127
122
99
140
80
142
69
155
161
69
117
113
99
93
91
107
175
107
128
143
110
146
80
128
69
109
145
175
76
79
96
87
80
110
76
102
175
113
99
106
80
80
137
103
118
140
128
106
155
163
76
120
109
83
142
69
164
157
197
91
111
72
89
96
90
118
154
199
104
71
69
152
91
148
151
74
110
69
87
80
76
98
52
110
71
80
102
163
129
111
69
152
121
106
88
175
103
80
100
76
99
89
98
107
87
150
148
88
78
120
73
102
105
87
80
131
120
103
107
69
72
88
80
98
94
96
107
80
89
144
126
98
89
69
105
119
80
83
110
91
96
106
101
94
80
104
137
98
80
121
120
89
135
87
87
94
80
134
76
140
118
117
69
107
76
137
80
110
88
80
109
80
94
92
104
96
137
80
71
80
80
92
74
109
80
78
56
151
89
117
95
80
97
117
76
79
112
152
120
121
118
85
134
88
124
197
91
104
121
125
69
154
201
136
76
87
88
104
121
83
137
74
110
69
115
80
122
69
119
128
80
117
80
146
115
69
116
70
76
147
156
115
120
80
69
148
126
140
93
110
80
99
143
106
93
72
87
80
119
136
76
96
140
145
76
100
118
98
123
69
171
80
78
94
107
80
121
88
78
157
146
69
86
117
88
85
130
154
107
156
80
120
110
91
102
122
154
94
83
154
89
120
123
76
111
132
107
117
89
69
87
80
80
78
106
121
103
63
89
78
134
69
112
78
120
100
89
71
154
88
87
87
96
88
128
80
111
107
111
93
75
110
76
107
109
115
151
94
142
88
169
104
67
130
126
120
117
175
124
91
107
115
76
87
88
69
136
96
78
67
80
80
104
93
119
144
69
106
163
134
80
109
113
120
101
101
80
79
119
123
148
89
96
122
109
136
120
197
78
69
102
118
109
128
96
110
147
93
123
141
69
120
90
174
85
120
52
121
103
94
120
106
80
163
76
96
110
76
134
69
112
128
113
136
80
74
119
197
74
118
150
151
91
78
123
158
154
80
97
69
138
98
103
116
69
87
131
88
131
88
119
117
101
121
138
123
79
115
83
69
120
120
174
107
161
91
107
69
151
175
162
119
94
80
120
80
87
117
82
127
104
131
132
83
87
80
106
197
119
96
69
82
89
146
127
110
69
69
91
75
93
109
94
137
80
96
134
87
86
109
63
123
131
120
131
100
87
69
85
103
113
69
115
150
43
119
152
69
80
140
113
101
106
66
156
80
73
117
73
163
80
112
79
153
95
183
155
71
54
93
80
69
107
92
145
175
138
69
78
80
108
94
126
112
134
56
89
95
133
175
100
133
117
120
106
175
78
80
115
146
151
134
80
99
174
87
125
80
80
85
78
93
83
102
87
129
101
119
164
96
99
134
89
120
120
115
100
119
120
69
94
94
151
153
72
113
93
89
104
80
126
105
119
76
87
85
144
78
99
72
121
121
119
127
93
74
110
88
130
72
88
132
72
88
99
87
131
94
120
107
80
96
78
97
121
88
102
93
119
69
129
148
122
126
106
114
80
145
120
80
134
93
119
121
132
128
103
115
87
69
100
72
69
101
80
73
157
78
89
69
128
123
80
107
85
164
99
151
119
146
120
104
104
172
136
83
131
124
69
131
99
152
134
68
121
164
80
127
131
80
87
109
69
80
91
101
118
118
72
133
110
115
87
126
123
134
93
80
118
112
94
52
67
78
80
87
151
101
107
57
78
109
107
87
88
88
107
155
152
113
120
98
80
125
85
78
120
87
78
85
107
106
100
112
87
126
146
197
52
156
107
70
112
175
115
66
119
110
87
88
90
93
108
112
64
78
119
54
95
122
87
87
81
134
80
125
125
80
128
153
137
136
80
80
131
132
111
131
91
89
126
106
78
110
93
90
113
111
74
113
106
80
126
128
99
113
80
93
119
87
96
78
151
104
102
152
109
104
89
72
155
112
126
128
118
93
144
91
92
112
127
81
117
134
129
58
118
118
89
107
69
175
76
142
76
128
92
122
111
175
91
128
104
69
80
120
111
80
88
85
89
163
80
74
154
106
154
132
121
145
164
126
148
161
117
54
54
98
110
120
69
78
87
102
131
78
93
122
76
101
118
87
80
73
121
175
93
128
117
175
76
69
163
80
58
80
109
175
87
74
113
88
137
156
123
120
163
99
80
87
120
69
147
155
91
117
141
87
80
136
59
78
87
127
69
101
122
82
107
133
141
134
91
69
132
114
87
160
107
120
88
74
107
127
95
154
106
72
111
56
80
136
155
93
69
99
106
119
69
75
78
112
69
106
99
99
101
103
114
149
104
125
151
117
89
103
69
131
80
110
80
52
78
159
131
68
60
76
89
101
94
112
80
107
109
96
120
154
143
101
154
185
144
109
114
80
119
138
100
143
163
107
80
69
69
119
119
72
176
87
116
69
88
107
78
76
88
114
134
162
93
169
117
116
80
141
137
128
86
154
151
69
185
104
115
76
155
123
93
127
95
80
99
155
140
123
74
119
88
74
98
109
69
97
69
110
151
76
78
100
80
76
80
69
78
91
110
94
89
155
74
80
145
89
108
112
96
87
150
122
104
78
69
101
127
102
126
110
78
88
175
69
69
156
109
69
92
112
96
153
127
83
112
69
146
144
91
88
103
69
107
93
106
110
80
141
130
117
120
88
80
110
117
134
80
120
114
146
80
111
137
179
109
89
174
134
69
122
76
109
58
148
78
96
119
69
89
117
155
96
104
74
88
88
108
69
102
91
123
136
80
99
97
107
80
154
78
136
93
80
119
93
72
104
100
90
102
76
126
69
149
69
112
93
197
78
132
69
114
106
105
110
91
140
78
163
122
102
113
148
94
119
154
145
151
106
127
132
138
128
68
119
97
69
154
76
126
94
121
136
80
107
80
89
69
83
105
112
99
78
90
78
107
78
87
76
162
120
164
127
88
110
95
94
156
72
80
139
89
69
96
139
110
70
107
86
119
80
96
116
74
128
127
175
58
76
197
88
89
127
164
110
69
117
80
124
69
128
91
76
158
111
69
175
104
72
147
91
56
78
69
128
118
87
106
197
105
85
130
128
123
89
107
126
80
138
89
98
96
87
90
131
104
98
166
88
76
175
209
138
96
117
102
80
151
74
136
91
95
54
80
118
127
87
94
76
71
69
80
87
131
157
104
104
205
146
121
131
94
109
69
69
81
144
175
125
137
121
76
106
175
90
151
110
131
111
145
148
88
143
96
88
101
109
111
130
118
89
56
120
54
56
154
69
140
91
109
87
156
145
80
121
120
74
104
112
128
78
93
106
136
134
129
126
69
80
110
87
100
79
75
122
109
99
152
107
80
78
113
95
161
117
69
127
76
87
128
117
129
110
78
80
89
140
106
85
52
140
154
105
100
121
174
130
128
85
154
120
181
96
99
80
87
110
119
109
78
133
82
128
72
101
108
85
80
116
99
78
128
110
87
132
134
110
80
175
43
157
119
119
119
72
96
89
88
78
80
87
80
141
127
91
120
114
110
96
155
146
112
78
164
80
140
96
155
117
89
110
143
80
101
79
119
106
151
100
96
87
107
91
85
120
119
78
100
135
175
57
69
104
117
106
151
146
113
135
145
88
119
129
69
104
106
131
137
118
68
120
164
119
151
134
120
110
80
43
117
134
154
54
89
89
175
87
107
80
78
125
110
121
119
107
126
101
139
142
154
99
162
115
80
78
69
103
117
197
112
80
87
147
91
78
107
133
87
57
87
107
69
112
95
113
99
54
100
69
136
104
114
147
151
80
72
107
138
126
154
71
121
129
138
96
87
109
134
128
99
72
87
175
99
80
128
128
109
175
155
119
107
80
79
109
99
118
95
89
163
155
87
127
80
87
80
92
148
119
112
80
95
154
94
110
107
94
76
76
122
83
89
96
80
69
122
136
101
80
80
106
69
122
67
99
69
140
94
80
69
59
131
120
136
160
80
134
108
85
96
120
111
69
120
117
94
78
105
69
80
87
80
89
119
113
129
80
69
80
85
119
76
120
80
69
116
128
134
91
119
85
92
177
99
69
76
101
87
103
127
80
52
99
136
121
140
59
87
148
101
87
69
127
93
64
104
85
128
125
135
120
109
80
59
119
90
88
74
98
132
87
104
197
80
87
117
121
69
101
103
127
101
104
85
153
114
69
174
90
69
162
69
69
94
94
116
102
147
119
80
89
175
126
87
109
119
140
120
172
96
136
110
69
128
78
120
89
78
68
54
125
113
72
174
76
117
91
130
80
127
133
73
54
133
78
147
112
150
147
78
89
112
112
137
164
175
106
69
111
119
80
87
113
56
151
91
87
109
76
80
112
151
80
91
129
69
87
118
127
109
89
125
109
127
78
96
102
121
76
128
91
125
94
137
112
78
80
127
76
96
94
101
113
95
99
118
93
134
117
133
107
87
140
67
146
78
107
110
132
76
119
69
140
91
76
112
129
76
121
87
122
127
106
150
89
87
123
91
131
80
143
132
156
87
101
136
111
90
80
114
88
76
95
87
69
133
117
113
115
119
96
145
94
80
80
80
163
157
98
175
107
72
137
175
175
121
106
72
116
119
94
99
91
88
115
87
80
131
155
80
130
83
114
153
134
87
91
130
94
165
109
130
134
171
139
136
119
54
79
136
78
125
151
152
87
109
115
175
197
119
99
157
78
154
175
114
90
128
144
79
69
69
197
78
85
117
90
119
93
197
90
175
87
122
106
131
90
129
117
111
72
67
78
112
108
78
88
138
98
128
134
80
113
197
175
107
120
101
92
109
112
69
69
96
69
90
143
80
115
131
90
152
80
69
87
163
52
79
80
143
134
87
106
94
80
134
78
83
185
131
106
112
78
136
76
94
125
109
89
69
109
90
119
111
104
102
131
87
137
71
175
126
78
76
128
80
108
80
96
174
126
150
99
80
112
112
127
135
147
78
117
78
105
156
99
133
78
163
128
78
125
85
169
117
152
67
107
91
69
164
145
120
119
163
80
88
78
122
74
145
117
80
102
89
110
93
88
115
63
154
69
154
125
107
78
88
151
106
197
96
87
92
87
91
74
102
117
88
140
82
136
106
109
87
156
175
104
104
119
80
119
136
69
147
120
87
76
129
119
109
76
156
107
174
85
109
89
94
141
133
110
128
90
126
91
96
117
87
119
110
91
113
87
88
124
121
119
94
111
96
131
80
112
157
136
72
132
121
69
126
156
69
158
141
128
90
146
80
110
153
148
117
145
128
118
88
175
112
124
119
117
78
197
80
104
121
95
78
121
67
99
88
87
88
164
133
137
128
104
151
88
107
122
89
128
197
120
197
127
79
88
110
78
80
140
56
143
133
119
134
99
114
74
109
145
123
80
140
76
112
76
119
93
78
93
117
119
119
72
80
98
88
80
175
130
98
106
76
99
88
175
78
87
101
119
101
80
144
109
128
69
119
136
85
119
87
155
99
125
155
140
164
132
106
110
76
69
94
107
137
156
78
165
83
77
89
78
69
111
100
69
154
80
109
77
156
123
99
78
112
91
85
79
93
133
87
69
148
96
152
130
80
99
69
80
113
103
119
131
99
88
78
111
102
80
80
87
80
78
54
104
144
147
152
109
125
127
78
80
80
99
88
107
138
73
80
80
134
104
54
104
128
129
93
87
123
175
78
69
107
110
141
141
43
128
78
127
112
113
128
109
144
136
107
87
107
108
128
113
79
96
99
110
116
113
80
69
69
79
134
56
76
140
78
128
183
143
121
87
129
52
104
76
154
83
143
72
107
119
78
132
80
136
115
93
69
128
109
69
117
74
80
88
91
109
119
124
87
69
146
88
132
133
99
113
93
106
69
72
107
76
154
178
107
112
122
80
134
80
132
122
58
146
137
80
119
93
110
72
104
78
117
118
128
151
175
69
69
80
113
119
95
156
154
110
104
80
107
99
131
128
109
93
80
90
93
120
109
197
156
92
99
90
91
136
52
111
76
156
134
114
119
88
130
87
85
118
80
89
76
110
87
163
107
52
156
89
78
119
127
121
119
78
120
69
78
88
111
155
87
88
76
150
107
95
156
128
69
69
80
76
119
102
119
54
151
128
83
108
84
80
140
74
96
146
101
162
93
76
80
107
88
107
96
96
52
109
96
140
121
117
88
100
88
132
110
87
104
80
69
94
109
99
120
87
175
80
109
166
80
89
69
117
120
80
112
80
89
112
97
112
80
95
106
89
91
155
106
103
94
175
139
80
69
78
116
88
87
88
146
73
101
118
118
110
78
121
69
124
87
136
102
144
69
99
88
175
80
104
117
102
104
154
89
143
127
78
99
178
106
148
69
201
69
106
197
98
95
109
80
111
56
129
97
113
110
125
52
175
72
155
122
80
80
132
119
83
78
52
107
82
120
99
110
109
78
69
137
99
128
92
136
80
107
121
80
109
113
80
140
119
69
123
77
90
142
96
131
80
89
87
95
119
93
89
153
87
107
137
95
115
111
100
120
100
133
106
111
87
155
120
124
89
93
76
88
164
197
112
142
112
143
89
107
94
116
164
80
110
83
115
155
197
78
76
111
80
80
110
102
94
92
78
69
113
138
113
73
99
122
119
91
102
99
72
163
154
89
80
128
129
112
111
52
197
137
121
110
89
80
106
69
121
52
119
80
87
85
87
100
110
106
123
79
187
89
80
126
99
109
78
121
175
106
95
78
185
101
136
128
96
134
114
94
91
158
86
143
94
107
175
119
93
109
124
132
104
143
113
59
120
80
104
89
88
117
80
123
122
88
120
99
76
101
138
112
80
107
80
76
131
93
76
117
119
93
96
119
119
67
143
128
80
78
99
74
69
58
115
106
131
136
140
110
94
101
109
145
131
119
131
153
134
101
115
80
120
69
145
52
151
56
122
110
121
124
74
85
110
78
87
89
149
122
91
80
101
121
113
52
104
87
109
109
80
107
85
78
155
71
140
121
75
87
111
140
112
134
110
115
69
137
78
78
80
119
175
89
114
72
108
104
80
76
90
93
74
121
121
52
96
69
128
112
184
98
79
91
87
111
146
90
110
163
144
80
90
112
72
90
165
122
197
78
91
88
101
119
112
80
100
116
66
96
43
131
56
106
120
88
80
67
99
117
76
80
80
87
78
140
175
120
120
154
154
154
119
110
185
96
128
80
144
94
120
109
100
119
120
99
154
90
69
95
75
104
119
69
85
100
69
123
136
80
88
145
69
114
78
197
80
95
115
146
104
110
86
111
145
119
92
99
110
87
110
80
117
107
183
78
88
74
72
127
87
69
107
121
78
109
143
137
76
76
60
69
107
163
76
69
128
87
120
80
107
116
110
119
131
119
69
69
120
89
88
113
109
80
108
93
107
64
128
144
108
80
76
116
69
78
99
80
151
127
121
66
134
94
54
78
78
113
69
69
102
93
72
80
144
54
132
117
144
119
72
134
130
119
187
79
69
89
113
126
76
127
91
88
154
201
123
90
99
69
117
112
93
138
126
76
80
201
87
151
88
90
76
80
88
92
96
175
96
80
175
107
126
147
100
127
78
92
99
78
154
102
118
113
110
76
76
120
95
80
80
87
94
144
142
89
76
137
87
131
78
136
87
122
151
69
152
107
72
107
129
144
146
107
106
100
166
74
87
69
175
69
130
148
85
89
69
69
140
120
132
94
82
117
64
111
78
101
78
99
54
175
164
175
72
43
154
78
69
85
128
80
112
69
93
52
121
154
91
90
121
119
87
175
128
146
102
98
193
76
137
110
94
78
98
69
102
122
108
154
109
163
94
76
121
56
175
43
94
109
117
69
121
113
154
72
166
56
107
78
76
117
76
109
117
112
120
94
80
76
107
145
152
67
149
69
112
69
96
120
76
78
107
113
99
104
142
99
112
91
161
78
147
69
106
80
98
69
80
69
91
134
91
197
119
166
69
75
107
156
155
81
113
94
94
120
119
145
116
109
161
52
95
120
85
154
94
120
99
109
117
80
87
128
127
151
91
131
102
114
76
136
94
148
78
109
87
78
87
69
106
80
115
113
93
156
112
108
136
119
109
96
82
78
87
112
146
117
96
80
94
78
110
76
195
80
101
166
104
139
87
80
87
88
116
93
132
156
175
125
91
117
113
175
76
85
96
87
110
124
80
80
94
134
131
201
85
109
88
175
102
95
80
94
143
175
94
87
78
120
110
88
140
154
78
89
76
101
93
66
153
136
88
123
73
160
89
83
131
127
69
80
113
110
175
109
165
115
76
94
76
121
78
94
78
76
109
121
78
78
134
74
88
197
78
94
138
106
150
120
146
87
102
88
120
80
69
80
122
131
175
110
82
107
90
104
136
64
154
102
101
99
99
88
154
80
72
78
131
106
149
120
120
117
110
78
150
137
87
155
110
154
80
123
100
83
133
80
129
145
175
153
104
54
175
147
74
128
83
132
131
185
80
112
136
172
128
87
91
131
88
160
147
120
94
74
131
99
102
78
157
121
99
100
103
117
101
93
103
80
80
87
109
121
123
109
144
76
113
80
148
69
94
88
89
94
79
91
87
80
56
104
88
76
133
99
80
156
148
60
152
69
104
80
127
93
155
69
89
98
119
107
119
87
154
187
104
175
115
80
131
87
175
129
197
104
71
96
125
74
96
80
97
74
87
104
109
146
107
175
81
117
124
109
140
89
76
104
176
109
78
109
83
104
133
78
112
107
94
91
91
107
155
94
69
120
88
121
106
69
74
122
146
80
89
89
121
69
80
93
140
94
96
166
99
54
143
117
66
134
123
103
69
150
89
98
64
143
85
114
120
56
124
80
69
115
89
112
165
69
93
131
80
80
88
128
118
78
88
131
124
104
76
85
154
133
109
118
106
90
113
155
80
135
110
89
74
143
72
75
85
76
136
80
142
119
131
130
95
80
119
94
59
146
164
148
119
109
69
82
110
121
146
54
109
107
119
122
69
69
136
155
80
90
80
87
90
119
201
69
93
140
104
131
110
127
119
52
87
78
176
99
80
138
93
90
122
80
146
144
99
102
104
100
121
78
120
76
154
154
69
101
69
80
131
82
112
96
115
133
71
91
93
117
120
69
120
63
90
133
123
104
88
80
109
109
74
136
99
126
80
80
101
80
163
135
132
114
80
119
103
151
89
74
119
69
80
138
139
54
107
135
106
72
69
146
118
74
80
80
94
145
78
76
129
80
104
119
87
102
156
128
114
96
127
96
80
78
99
69
89
72
154
122
119
131
137
120
131
109
87
107
175
74
125
76
124
69
107
93
96
54
119
88
155
120
80
113
80
111
87
110
94
123
129
154
124
107
98
78
89
104
80
109
111
154
136
107
87
98
80
103
87
99
99
99
76
76
66
119
118
68
137
120
87
100
106
119
136
156
99
113
69
127
175
98
128
145
163
140
80
132
76
154
80
124
104
142
119
69
108
119
69
78
78
138
117
120
128
136
87
162
154
140
107
117
89
175
112
111
104
78
163
83
131
80
112
116
118
89
147
83
78
80
94
87
54
69
113
121
76
67
134
99
108
76
80
107
83
80
120
123
80
104
119
110
120
78
120
128
85
87
126
111
72
154
154
132
88
155
106
175
147
154
138
80
117
117
69
136
120
134
78
127
69
93
160
117
112
120
183
120
93
69
154
128
95
120
87
100
98
122
78
78
151
148
106
78
95
127
110
110
106
80
145
99
119
100
56
151
109
129
133
105
100
104
119
76
89
103
122
145
99
143
130
119
112
88
80
94
121
114
109
109
123
88
119
120
155
151
110
87
120
113
140
104
87
54
106
109
137
152
89
78
134
120
105
154
154
57
78
120
146
56
101
205
80
111
74
104
137
107
113
88
80
66
148
69
128
80
99
121
69
175
87
89
127
87
82
56
109
127
67
76
80
134
119
122
156
69
52
85
129
119
97
154
107
120
156
143
88
87
59
133
137
147
92
78
92
112
123
99
107
78
80
154
74
69
93
96
80
80
111
59
128
175
109
175
106
140
96
99
85
112
134
175
104
99
104
119
85
72
89
125
81
113
113
131
80
80
145
107
85
85
76
69
101
121
74
113
94
57
109
129
175
134
80
110
69
69
90
120
98
109
94
72
112
75
112
84
76
76
120
137
156
112
128
119
72
122
93
140
93
175
80
109
69
115
99
131
156
80
113
163
151
99
101
175
109
127
118
77
157
80
155
143
128
103
131
87
119
69
80
116
156
78
107
56
76
109
106
78
131
124
109
115
87
122
125
89
93
75
69
111
82
70
148
69
101
87
144
80
121
74
87
126
109
102
110
107
108
89
101
124
104
89
80
125
79
99
175
107
181
80
69
175
69
197
93
88
80
140
111
89
123
134
174
108
80
115
80
88
112
142
104
99
80
131
111
84
102
90
117
66
102
90
128
74
101
90
128
120
109
110
115
117
74
87
113
78
107
151
74
143
112
127
128
114
104
94
88
99
80
120
110
129
76
87
100
82
88
43
99
72
93
127
76
92
80
117
69
201
108
87
117
128
109
69
119
69
96
106
134
122
113
175
103
121
133
78
78
74
76
126
80
87
73
69
134
136
143
87
130
95
106
78
117
156
132
78
124
82
109
125
67
98
100
90
107
97
131
69
99
127
155
72
52
102
136
132
80
145
120
97
131
103
78
103
89
87
87
87
89
119
132
154
100
118
106
128
63
119
175
149
118
89
117
123
91
117
127
80
117
78
56
80
68
80
185
121
131
99
138
80
104
169
126
87
69
93
174
80
83
69
104
76
96
104
85
144
110
106
146
163
103
91
88
124
88
107
88
104
78
99
151
154
155
132
155
52
134
123
128
69
104
96
154
76
43
113
128
149
136
69
87
132
69
78
175
119
146
164
94
120
175
77
99
150
119
152
80
93
87
120
154
76
93
80
96
119
128
113
149
140
197
115
146
99
78
43
117
107
151
117
125
119
76
93
118
69
118
69
112
101
69
153
69
89
112
114
107
74
87
109
106
136
76
78
146
76
76
158
140
80
79
69
175
91
99
76
119
128
122
91
119
72
101
152
163
80
154
106
102
93
145
107
140
154
102
131
107
76
72
114
99
80
134
154
119
80
89
110
175
80
113
80
119
145
189
134
75
78
109
59
80
96
131
100
86
87
151
99
101
89
76
117
151
87
89
100
118
89
99
80
136
183
148
80
80
80
90
107
128
113
126
164
80
120
80
72
133
120
56
120
82
143
134
94
99
100
113
166
106
100
106
78
78
104
76
119
58
114
133
121
123
113
89
78
113
135
94
93
119
87
120
80
130
69
56
128
87
197
80
76
122
90
119
52
99
110
76
175
106
72
94
151
69
160
120
197
88
96
80
119
120
134
80
131
116
101
87
175
146
163
107
145
110
94
69
99
104
85
140
69
155
54
131
88
80
91
97
110
108
134
69
97
142
100
185
121
115
69
78
127
134
101
119
75
69
96
143
119
88
114
69
128
119
127
52
94
162
87
95
80
124
93
103
140
89
131
146
84
80
83
69
69
88
87
122
80
155
160
140
131
100
109
118
80
85
119
136
187
69
76
74
117
76
101
94
98
69
119
78
107
115
126
119
80
129
104
110
99
72
93
144
144
80
102
94
80
125
110
95
112
94
76
152
87
87
123
78
113
80
76
118
94
69
183
153
93
174
87
80
133
117
146
150
122
78
80
64
131
157
119
74
128
119
117
69
93
117
69
136
75
76
101
69
90
69
120
87
82
121
117
154
78
87
140
78
99
104
145
145
136
129
156
90
101
122
123
90
87
197
144
109
145
165
96
114
80
78
148
154
52
52
73
136
76
99
164
112
126
119
78
80
111
105
85
95
128
93
95
112
93
106
109
80
74
118
111
133
114
89
76
80
130
80
80
133
119
107
134
121
108
129
59
76
98
69
109
78
110
54
98
100
146
118
80
71
106
76
102
87
128
93
111
94
119
80
111
89
117
111
119
91
99
75
112
163
94
103
120
112
128
69
107
121
96
109
119
104
80
69
78
80
120
80
119
93
80
69
69
99
99
91
91
120
155
87
114
69
56
149
76
80
131
126
94
110
128
80
143
69
120
197
104
134
102
174
82
118
109
54
119
175
107
69
76
76
99
93
114
93
80
87
117
74
175
136
87
69
54
134
129
107
76
111
88
80
80
52
107
117
114
126
117
107
68
100
80
80
94
80
80
58
69
146
127
119
146
117
75
58
78
72
120
96
75
94
145
101
99
76
152
69
131
80
89
128
161
119
106
88
77
121
133
131
95
68
125
83
89
108
119
163
87
134
140
69
80
128
58
92
104
106
120
122
76
148
76
76
126
92
140
94
110
76
117
163
112
75
78
151
90
107
59
74
113
104
104
85
99
80
133
59
120
80
89
120
52
132
157
106
99
137
113
72
99
151
80
101
127
69
155
107
99
76
114
85
148
151
91
145
78
121
116
72
175
131
52
80
113
107
109
80
99
128
109
134
120
106
79
123
122
79
87
111
121
109
82
147
128
108
69
106
128
54
136
69
140
137
52
87
90
137
128
87
121
131
101
102
89
76
69
128
85
126
94
80
80
113
123
69
102
148
176
119
107
69
100
112
69
131
112
143
87
134
95
154
183
115
115
94
54
124
101
145
78
140
78
107
120
102
80
110
150
80
87
160
127
116
87
133
112
68
127
82
80
154
88
74
120
148
175
93
187
114
80
136
128
175
76
154
93
163
88
98
76
121
104
69
120
132
146
155
114
78
104
80
110
87
110
102
104
128
99
124
78
69
80
155
130
135
95
72
152
87
89
119
80
80
69
117
69
78
152
160
93
114
80
87
154
124
120
119
134
105
112
145
136
143
148
69
69
128
121
78
76
87
143
119
111
121
118
123
101
128
117
80
78
109
78
88
122
132
80
89
93
87
128
119
106
87
104
120
110
201
136
172
146
120
69
113
121
110
115
140
183
156
88
117
90
75
69
76
102
114
160
69
119
145
87
80
52
110
89
197
146
87
156
101
76
89
83
124
80
69
175
106
121
121
137
114
96
99
107
110
69
133
80
134
98
96
111
69
120
111
121
151
69
69
69
107
78
93
156
52
66
111
137
158
156
91
78
104
118
87
94
88
69
76
131
135
80
107
78
91
110
154
73
132
175
115
87
112
147
103
101
107
54
154
125
72
136
113
154
87
89
78
134
113
104
175
115
197
110
119
80
112
103
158
75
121
129
76
137
80
80
112
108
111
78
81
80
80
87
100
69
69
71
128
126
88
74
69
87
104
118
80
128
131
110
101
175
99
146
151
80
87
121
106
130
115
80
89
94
107
121
148
109
88
119
136
154
104
133
114
129
175
76
76
99
119
120
109
69
110
109
76
107
82
99
117
154
110
72
113
127
155
109
102
109
83
112
113
169
115
75
80
101
120
80
115
69
124
156
197
99
95
69
72
117
80
163
115
107
80
69
60
80
71
102
78
119
119
88
111
156
134
95
117
124
74
138
159
112
71
99
100
80
91
69
120
99
117
109
110
80
106
80
123
87
98
89
78
101
152
136
76
136
110
114
125
140
78
64
136
146
129
103
69
80
175
69
69
80
69
80
92
120
120
134
99
197
89
76
119
76
76
80
110
110
201
97
144
128
122
102
107
106
107
94
126
80
128
72
129
80
113
96
119
146
80
99
145
121
121
102
91
118
99
103
78
89
89
80
119
136
94
120
113
131
160
113
87
115
104
80
104
80
175
113
69
128
87
109
140
69
99
136
155
96
105
94
175
88
66
130
72
137
119
131
121
83
134
134
83
107
87
129
109
119
93
87
115
69
95
128
154
122
113
175
87
132
96
183
100
82
175
89
109
175
87
67
76
88
109
121
114
101
119
154
151
128
113
124
110
56
119
94
52
88
137
151
115
174
88
80
118
106
88
112
148
130
143
133
43
80
106
100
106
69
154
93
122
197
138
80
43
76
113
99
87
76
69
175
72
127
80
131
104
151
136
76
90
72
147
80
112
156
83
80
80
69
88
146
111
111
106
156
69
175
91
102
64
94
79
134
80
66
151
104
100
197
95
69
175
94
103
101
134
127
88
119
89
102
78
109
138
140
131
121
90
108
43
155
124
98
78
72
103
73
112
136
74
120
69
128
92
85
87
78
69
124
119
80
126
154
76
54
78
54
106
91
156
94
146
52
72
137
80
69
99
69
87
95
174
67
80
85
138
119
138
121
140
114
96
80
107
76
90
68
113
80
110
104
80
80
131
134
107
87
78
54
87
138
107
99
63
69
121
113
127
78
122
76
120
109
119
93
93
113
127
96
94
76
117
87
96
87
76
131
91
146
113
93
78
154
112
111
69
136
87
109
117
128
71
145
140
75
107
78
131
106
98
152
201
82
101
80
121
104
78
96
175
77
94
87
81
113
113
94
64
54
175
106
93
112
134
117
90
119
140
99
80
85
115
95
80
142
104
134
122
94
113
175
72
163
125
130
114
97
110
109
78
106
69
136
94
91
91
146
110
80
134
78
80
136
76
119
119
104
78
78
63
107
119
69
125
72
67
127
127
160
80
154
80
69
104
69
114
72
78
88
145
89
120
107
76
141
143
113
128
120
106
87
156
135
110
120
80
127
119
69
101
96
107
52
107
111
134
142
117
88
131
106
123
107
87
150
144
99
87
106
93
112
117
128
163
148
84
99
107
117
92
109
101
137
175
104
112
78
143
109
100
76
131
124
120
158
113
66
110
72
88
87
69
80
199
88
131
106
126
128
109
106
91
142
69
110
127
107
69
119
94
94
137
121
76
154
78
54
119
89
88
156
87
102
95
114
117
72
78
115
78
69
120
98
110
115
99
75
151
82
104
159
100
76
59
140
133
107
115
155
156
175
99
140
107
104
88
88
113
94
85
86
54
126
88
107
163
145
69
120
94
80
110
74
78
124
103
78
93
128
78
175
197
69
80
119
130
54
175
174
80
99
113
89
128
128
107
93
101
96
64
106
128
104
154
96
100
87
96
64
151
133
156
119
109
87
110
78
110
161
115
72
87
89
106
87
163
80
119
78
69
109
92
175
94
74
197
75
130
89
69
80
54
110
99
128
134
80
163
83
163
130
149
100
80
82
88
155
112
79
107
78
138
174
132
76
127
91
89
160
131
56
109
154
87
88
76
94
69
69
80
109
107
102
137
136
106
121
118
106
69
120
87
128
131
54
89
85
156
71
157
96
80
113
89
155
128
127
80
110
85
136
197
138
69
102
118
118
114
114
153
146
86
66
112
120
138
91
119
74
199
80
80
112
80
89
144
93
69
131
83
80
96
118
106
87
110
119
72
101
131
101
132
185
131
111
66
101
69
123
174
91
175
140
96
80
148
175
144
106
76
95
72
80
76
74
151
175
121
56
128
143
146
69
126
104
88
94
129
156
175
115
104
88
121
119
80
87
134
80
136
88
94
69
106
95
78
119
133
80
76
140
123
126
69
96
80
99
69
88
89
151
85
120
127
148
94
128
74
109
139
80
110
121
140
80
87
145
175
69
120
120
54
132
120
106
89
93
183
80
112
136
201
124
138
94
183
145
112
85
161
69
111
118
87
83
94
96
74
98
156
91
69
185
80
148
136
113
131
76
166
94
175
106
175
117
94
140
91
80
99
80
82
134
138
120
160
88
69
113
129
120
105
122
119
119
87
120
87
97
87
136
109
87
136
80
90
69
145
69
89
151
137
148
107
76
103
56
75
78
128
113
129
78
132
93
94
136
128
94
131
80
131
107
99
110
104
76
197
167
80
145
52
98
68
197
88
91
87
80
87
129
113
109
110
107
151
100
102
106
88
69
93
154
76
115
88
93
88
147
102
111
154
78
134
64
69
104
163
137
60
145
98
132
69
93
80
115
119
160
117
143
121
151
140
111
100
129
113
69
183
69
69
94
136
114
119
142
127
98
87
106
113
69
88
109
137
128
95
107
155
109
80
134
87
137
87
110
144
129
88
91
80
121
120
100
43
155
80
87
115
118
163
76
88
163
69
153
87
119
121
124
89
80
92
134
100
69
162
137
175
80
101
106
112
88
88
69
140
120
107
168
96
128
88
54
96
111
80
147
78
69
126
54
69
120
69
145
96
122
129
135
80
80
126
155
76
107
104
87
80
107
107
69
127
140
105
78
88
76
197
111
69
154
85
118
107
145
120
148
93
69
120
120
175
139
122
175
81
152
114
112
155
147
76
69
72
119
115
89
104
126
119
87
178
88
85
96
96
97
88
175
159
84
78
89
87
137
106
89
87
175
185
80
80
67
119
151
80
106
56
88
78
134
136
93
88
163
111
69
80
107
107
172
113
155
99
127
77
87
60
122
99
74
76
76
76
128
164
88
175
69
156
52
78
69
156
136
124
109
140
109
52
123
107
101
106
134
145
154
87
136
131
197
78
88
69
114
88
85
80
112
80
101
175
134
155
85
102
90
91
95
116
110
85
107
119
129
80
160
80
80
76
82
111
93
78
141
78
93
135
69
107
209
146
120
155
80
80
136
128
154
197
80
82
109
87
75
128
80
131
103
113
78
110
138
119
88
88
112
99
136
109
94
90
127
148
142
97
140
117
120
131
118
175
175
99
104
113
129
54
154
126
131
158
119
107
52
119
129
140
109
109
80
100
127
156
99
123
127
78
131
137
136
80
100
69
131
80
88
78
127
163
134
118
79
104
103
87
69
137
100
80
99
99
80
145
80
80
79
69
78
83
120
138
54
113
80
154
99
96
80
125
113
118
163
162
80
80
197
175
80
131
118
69
80
113
69
89
154
109
100
120
129
154
107
103
132
76
128
147
87
89
69
99
118
69
95
133
101
69
78
59
69
107
97
100
87
119
133
82
120
128
75
101
78
95
74
87
115
88
119
69
131
94
95
76
120
128
89
91
128
115
87
100
127
121
96
187
109
95
98
109
128
107
126
88
88
143
111
134
126
80
80
120
76
136
69
107
76
120
120
95
115
87
106
97
80
69
73
146
94
99
101
107
128
87
123
69
78
94
78
110
119
121
111
133
148
76
148
104
111
76
69
175
154
107
129
154
134
111
69
74
85
131
147
83
80
107
111
80
115
69
117
156
120
145
110
145
130
155
109
118
117
134
131
127
113
102
110
110
120
80
69
113
80
163
90
87
115
94
106
78
56
76
104
118
148
101
163
107
75
76
113
121
80
175
80
119
128
175
164
128
69
130
69
113
99
92
96
163
78
117
69
80
76
117
80
113
163
134
119
88
119
126
107
88
144
118
89
99
106
107
76
80
94
80
134
88
56
93
127
101
132
72
121
104
75
107
175
93
175
76
114
80
104
106
110
132
111
102
78
120
133
155
119
90
104
83
125
69
134
69
122
125
72
119
128
69
87
80
78
69
80
66
69
127
83
154
108
99
80
197
78
102
93
113
120
139
80
69
107
76
121
209
112
82
119
104
89
172
128
121
90
138
156
126
87
78
69
80
88
69
175
107
145
136
197
143
69
91
69
111
123
140
139
80
159
156
80
87
128
56
99
87
111
88
69
93
109
69
69
101
137
112
64
112
69
123
119
109
137
102
112
155
163
88
174
54
140
121
76
69
109
88
78
87
91
104
78
91
76
155
133
94
117
109
69
43
94
135
94
96
183
131
156
137
160
122
106
100
106
76
101
69
80
80
109
87
113
115
165
69
175
91
89
102
93
98
119
130
93
69
175
69
117
87
80
87
106
119
165
78
69
109
145
87
154
88
80
136
128
197
136
68
109
68
112
69
87
107
135
72
97
120
69
69
122
109
197
78
138
54
87
154
120
103
80
86
89
108
158
130
82
69
74
154
156
128
69
100
74
76
134
94
100
80
56
126
87
89
69
131
102
88
67
69
78
56
78
154
74
93
101
134
132
134
78
98
101
109
120
112
109
147
83
80
154
104
107
157
104
120
142
88
106
109
69
54
87
87
133
122
121
145
197
80
112
87
87
131
95
161
115
78
160
113
78
69
143
102
95
98
119
128
56
85
154
126
69
88
78
76
169
96
88
69
93
102
120
155
69
110
89
111
110
131
80
89
94
98
134
155
163
80
72
145
113
107
94
102
88
144
107
89
119
80
130
69
76
78
78
175
74
91
134
80
126
107
99
140
95
78
118
113
117
113
175
128
146
64
76
133
124
80
69
104
156
80
80
124
119
81
101
156
116
120
89
95
106
112
69
117
94
89
119
104
76
89
56
96
145
146
76
107
95
113
115
143
69
54
107
87
80
106
96
96
78
87
145
69
80
98
93
113
120
85
64
69
120
175
98
154
129
91
145
78
107
120
154
120
99
80
102
73
89
78
118
69
117
89
94
87
89
175
120
80
94
153
96
110
124
119
151
119
148
154
99
78
107
93
72
100
118
80
107
103
80
103
119
57
113
115
121
80
80
80
169
103
111
104
107
99
90
69
88
80
94
87
80
80
94
76
69
122
121
130
201
103
166
80
80
120
163
81
127
108
113
87
102
100
121
120
94
157
104
98
136
101
123
140
102
78
155
95
140
89
56
126
155
107
118
175
66
122
69
130
104
110
72
80
69
119
97
156
56
156
113
155
131
104
156
151
104
111
127
117
85
120
117
75
88
134
85
87
78
120
131
120
88
72
78
88
89
104
128
119
140
151
136
91
115
99
101
99
165
89
166
112
54
102
203
102
80
123
94
69
98
119
186
111
80
69
69
117
107
113
128
154
72
120
127
100
160
80
97
129
89
88
155
67
80
112
175
109
128
88
113
148
110
110
118
117
122
64
100
99
128
99
104
197
119
83
81
139
69
80
74
118
120
118
152
131
93
132
91
95
80
100
99
113
137
154
106
117
140
91
138
104
87
113
88
136
107
87
102
69
80
110
146
69
116
164
175
111
94
87
115
80
67
69
78
160
69
117
140
87
107
95
107
60
80
134
109
80
132
109
72
90
201
128
80
80
78
107
130
96
120
125
106
89
164
99
88
118
127
63
155
78
68
69
119
83
131
99
131
83
108
96
69
101
87
78
91
87
87
106
119
119
104
164
112
128
142
87
113
85
136
149
88
77
80
132
60
117
113
139
78
127
69
80
163
78
87
109
175
87
87
69
119
113
69
107
125
121
120
80
112
72
80
119
175
97
110
78
144
101
147
76
155
106
126
87
104
162
69
117
80
140
87
80
140
54
160
69
104
78
127
78
76
105
113
137
117
106
76
80
175
69
130
136
128
117
151
116
134
109
80
197
88
128
175
131
183
79
164
134
110
104
103
140
80
113
107
112
69
162
87
127
119
88
107
91
151
69
136
87
145
93
79
108
128
134
112
117
112
119
109
69
87
138
123
110
89
84
108
140
140
104
121
89
91
152
117
111
136
97
145
156
143
80
120
96
87
103
80
79
97
121
118
113
80
138
80
150
107
87
92
117
96
124
121
78
119
78
99
69
117
100
129
72
80
88
80
93
69
109
127
123
128
93
137
146
156
76
107
114
100
54
134
100
85
156
96
118
80
122
120
80
80
134
54
69
89
69
130
94
135
197
114
52
96
87
115
94
110
96
113
127
123
93
80
133
118
87
155
137
80
140
120
156
76
97
156
171
69
94
157
94
99
154
118
123
117
115
131
151
197
126
101
78
104
104
110
72
120
106
69
121
114
88
87
88
112
111
90
104
104
58
78
128
80
155
99
87
146
111
197
88
78
93
126
78
127
119
136
120
104
80
119
107
99
109
69
87
156
59
115
119
80
128
67
94
80
99
102
99
126
148
120
69
80
87
87
93
79
69
143
140
107
134
115
80
107
100
121
92
154
76
69
102
64
106
121
144
115
106
76
110
113
80
134
76
94
76
119
84
174
111
69
76
148
94
101
128
104
156
109
132
136
87
69
115
144
152
122
175
76
112
114
58
98
120
128
78
102
132
88
134
120
128
134
80
133
128
130
148
151
80
110
107
126
112
94
95
110
120
73
119
72
94
78
134
66
78
94
78
107
72
92
107
87
78
76
87
102
87
96
80
107
80
74
169
107
88
127
154
87
96
106
88
69
101
78
103
80
110
131
132
154
134
64
106
80
113
78
130
80
152
148
76
107
137
140
78
117
115
112
154
78
154
77
120
96
146
76
104
132
105
119
151
76
76
102
69
136
73
87
143
88
121
88
100
121
109
165
151
87
119
131
156
154
175
131
62
127
175
56
100
82
107
145
102
96
111
106
88
80
91
87
103
80
72
69
127
175
163
136
107
106
113
93
130
137
109
54
119
80
149
128
96
68
85
87
80
117
136
123
113
69
54
175
132
133
69
80
129
131
80
99
87
197
142
121
98
120
183
69
134
108
134
140
68
78
128
140
151
87
87
80
121
93
78
108
90
91
115
88
78
80
151
128
109
69
106
83
76
96
132
88
120
162
175
89
92
80
103
156
110
154
101
87
119
87
69
83
87
69
152
136
151
80
80
80
110
89
122
69
78
88
76
68
78
94
82
69
122
68
119
89
175
156
85
80
164
78
99
165
103
119
107
160
78
80
78
119
117
69
76
90
76
99
147
175
117
80
99
145
120
72
128
69
104
136
94
69
156
87
130
80
107
113
120
92
78
78
93
111
87
80
88
175
119
121
78
112
140
76
120
104
124
80
175
100
140
112
119
69
136
87
175
121
112
106
151
100
69
106
90
110
181
112
139
139
124
97
117
154
127
79
87
87
88
137
137
119
151
110
134
134
90
100
138
85
76
110
107
95
143
93
119
118
154
80
72
149
127
113
154
91
125
148
151
140
120
147
112
76
87
156
80
69
78
120
76
80
82
93
102
103
119
94
104
148
81
175
94
96
78
147
128
69
80
123
80
128
124
139
117
140
80
98
109
162
69
69
87
100
118
58
151
95
69
92
100
123
96
87
99
107
62
80
73
133
97
134
101
136
80
96
151
102
72
83
58
76
76
69
107
118
126
120
99
106
123
120
69
128
154
144
96
119
119
126
154
80
121
82
94
109
203
80
137
102
145
104
89
78
80
119
143
123
136
80
111
134
93
89
88
144
120
134
197
104
102
121
104
78
80
128
69
140
76
110
160
104
113
156
156
119
145
99
88
80
130
127
99
128
69
99
146
80
76
69
144
87
59
69
111
100
85
80
118
87
109
107
163
112
89
98
43
90
136
95
107
154
129
99
120
133
148
163
96
134
112
69
107
107
143
80
69
88
128
56
79
128
106
130
78
165
76
100
76
117
80
80
89
117
94
80
107
116
134
144
160
100
88
78
137
76
117
94
99
125
119
136
66
90
149
76
99
155
94
113
161
83
119
96
125
98
104
120
136
80
69
109
99
80
114
103
78
129
74
175
175
104
76
110
146
76
110
119
91
166
81
72
110
80
139
117
160
151
114
69
120
102
121
74
99
80
119
154
183
85
126
106
80
89
78
154
146
80
108
143
107
74
99
80
87
163
197
110
113
90
107
106
104
80
69
119
76
93
125
89
166
119
69
69
128
69
74
69
78
114
80
96
149
156
119
109
76
100
95
100
103
80
90
94
88
127
131
129
136
128
95
71
122
90
80
112
119
69
154
131
87
122
86
99
101
89
85
96
69
113
80
106
69
75
80
88
133
131
121
80
131
72
111
128
78
94
87
94
132
148
116
99
120
85
87
80
69
117
89
154
119
120
110
88
87
79
72
88
104
83
94
175
172
107
109
105
76
94
105
128
88
107
154
119
87
130
90
132
127
136
142
80
119
80
87
80
76
93
69
54
69
79
76
80
131
104
117
132
126
54
155
113
119
99
122
109
87
149
89
90
155
87
93
80
111
113
76
115
80
69
128
156
117
124
132
151
69
43
78
105
108
94
99
119
102
119
113
157
119
52
66
83
136
99
120
121
76
175
80
157
78
138
69
110
117
89
122
127
80
120
106
118
146
91
122
99
128
69
132
89
80
197
128
120
91
118
120
121
125
88
131
119
107
156
132
69
69
104
100
69
78
100
111
78
119
85
62
72
80
109
87
74
104
69
97
143
118
72
107
80
126
93
133
80
103
107
119
146
114
98
165
133
163
74
83
89
140
69
76
103
87
130
107
64
128
118
136
80
120
72
175
76
69
155
175
94
156
66
156
120
112
101
99
74
69
175
123
113
107
132
141
140
107
113
120
78
119
80
148
174
165
109
87
99
145
109
120
85
80
60
80
131
114
104
155
79
120
119
106
119
80
80
109
120
94
154
116
87
162
110
175
89
120
128
106
76
78
83
118
80
94
82
69
80
115
154
154
99
71
120
155
102
103
107
80
94
107
54
69
151
120
130
131
154
121
136
80
89
130
77
69
110
66
113
154
156
113
76
121
181
69
64
119
109
147
52
164
100
119
171
128
67
99
109
134
150
56
85
155
154
135
133
117
110
87
80
80
112
76
175
78
126
175
69
123
87
109
75
74
111
110
58
83
127
69
76
116
197
89
78
80
80
175
120
133
99
104
102
108
69
145
78
128
96
128
69
109
110
104
117
87
104
80
80
74
120
112
147
201
101
87
82
136
56
175
110
80
64
87
140
166
197
140
147
78
125
111
94
107
94
118
89
69
80
106
149
87
199
127
137
175
80
69
154
87
127
103
87
69
94
76
119
87
144
88
99
136
107
88
87
110
87
117
78
154
125
74
107
133
89
80
119
89
87
69
156
66
83
88
178
69
107
78
93
78
145
80
109
80
127
80
130
163
116
175
80
104
69
78
130
119
119
106
76
101
79
72
153
140
127
106
84
201
148
83
134
88
89
78
128
54
122
109
143
78
136
76
58
128
69
131
127
80
130
108
69
83
74
87
131
124
126
80
111
88
91
140
175
128
80
80
78
78
76
119
78
109
111
140
92
146
96
109
151
69
175
80
80
109
129
119
75
126
100
128
87
121
91
101
103
124
100
85
83
155
108
80
133
98
74
120
124
87
80
125
102
159
83
69
151
80
99
120
95
117
141
93
110
152
99
69
120
109
120
106
99
120
52
78
119
80
80
72
101
69
119
119
145
175
136
155
121
155
93
175
117
88
131
87
175
110
116
109
83
88
175
69
185
76
139
104
183
74
69
80
72
121
88
110
80
174
134
148
89
102
135
90
110
112
100
187
87
107
126
80
113
83
121
69
131
90
69
88
132
140
54
91
127
124
151
121
101
105
100
109
106
93
101
113
109
97
121
69
69
80
72
100
88
138
120
80
100
113
69
88
69
133
122
99
78
119
119
80
140
96
112
112
69
136
74
140
111
60
106
99
72
88
111
129
69
119
72
107
128
115
67
80
69
69
107
78
69
154
112
127
69
94
90
93
131
102
80
90
87
119
120
80
70
103
117
87
96
118
126
114
114
75
120
94
110
132
89
117
78
113
101
69
118
87
68
132
69
76
154
102
157
128
57
106
117
88
76
145
128
109
100
102
109
156
90
175
80
80
80
115
69
87
109
120
136
80
69
103
80
151
106
105
76
94
70
103
83
145
126
156
197
151
125
119
67
91
146
54
175
125
128
76
103
113
57
134
99
107
183
80
80
96
103
183
132
76
175
138
120
156
87
113
88
43
87
146
80
88
131
122
185
89
126
72
87
72
69
134
136
103
154
98
69
83
129
88
69
148
157
104
82
136
115
109
136
106
150
87
175
128
113
117
121
111
139
125
151
80
72
79
52
87
74
78
93
94
152
134
80
106
131
134
175
118
76
64
69
156
148
88
83
69
120
156
157
91
134
80
109
109
97
197
112
110
134
123
119
80
92
127
100
93
69
134
112
90
80
91
87
128
113
43
99
66
106
69
136
112
76
101
74
129
132
146
69
80
80
96
136
89
113
80
129
109
85
87
89
85
87
104
106
87
102
136
138
197
69
136
174
59
144
126
160
93
79
87
69
121
69
118
143
143
107
119
56
83
78
91
80
120
114
87
89
78
74
82
113
78
128
69
79
92
93
69
109
80
107
102
94
109
90
123
112
123
110
76
87
80
58
120
99
94
89
108
91
67
136
120
175
69
78
127
154
80
104
76
98
165
119
163
134
90
100
113
126
101
101
96
197
124
85
140
109
90
155
107
80
54
85
110
101
156
80
119
160
128
142
88
80
128
87
87
120
78
117
119
132
80
140
138
66
124
119
155
131
78
130
128
146
72
148
120
145
69
133
99
163
103
140
104
134
106
69
156
120
104
85
140
175
87
107
91
72
101
175
115
76
109
88
78
133
85
87
69
80
106
74
88
74
146
102
137
112
122
110
107
80
52
134
104
94
134
69
98
109
155
120
118
80
99
107
149
95
104
106
94
115
52
104
120
102
124
69
107
121
89
94
97
87
120
60
69
115
121
104
175
69
80
80
120
88
96
119
89
136
164
78
76
89
69
108
120
149
78
80
120
80
128
93
154
78
96
80
106
128
80
127
87
76
107
69
101
151
106
140
80
136
164
80
93
88
99
111
126
78
110
106
90
76
102
91
106
87
83
87
99
154
80
92
69
80
69
117
131
72
175
94
74
80
157
163
107
175
80
76
110
128
197
87
76
115
110
89
155
103
85
102
104
80
123
127
75
94
107
111
101
112
96
120
119
127
88
147
111
129
78
119
183
103
80
136
125
197
95
80
119
85
56
119
76
115
95
145
89
52
128
78
119
150
80
174
114
133
88
101
54
120
80
92
157
58
100
123
107
95
120
154
136
54
99
80
97
96
81
88
80
155
80
93
107
96
117
98
80
104
107
69
174
76
137
87
80
109
92
152
117
106
123
115
107
100
107
111
101
106
80
93
78
104
76
119
101
87
120
99
95
80
67
109
72
83
121
112
102
89
72
130
117
118
120
110
109
163
85
136
137
143
144
100
83
120
87
80
104
87
103
121
111
102
134
154
115
119
107
87
132
69
107
72
72
147
69
119
128
72
87
98
119
76
100
156
120
144
94
123
102
110
151
91
128
148
102
85
129
91
149
154
80
110
114
99
95
94
126
109
112
154
80
140
78
106
87
107
127
164
175
119
80
99
93
94
113
143
118
87
107
119
80
104
110
87
93
104
120
122
80
88
80
137
56
77
102
101
110
106
157
69
130
91
133
100
87
93
130
120
94
94
76
133
126
113
80
176
144
101
124
78
69
128
76
134
111
94
136
107
134
147
104
102
91
95
175
113
99
109
116
128
96
90
76
69
96
94
181
134
69
96
134
80
119
151
101
106
92
80
100
106
119
91
78
98
89
80
147
88
80
104
94
109
69
107
78
121
164
100
175
100
128
145
72
176
87
69
83
163
100
95
128
76
175
120
76
140
132
87
163
143
80
76
69
80
80
94
78
92
137
101
121
121
128
95
131
169
117
136
136
99
199
154
106
71
76
128
120
89
100
114
110
89
72
76
120
94
80
90
69
80
87
110
69
79
96
76
94
83
110
118
105
150
157
76
124
69
145
175
154
54
93
130
154
94
76
110
90
87
131
76
96
78
80
100
118
99
76
175
128
82
80
80
127
89
80
156
120
89
85
66
80
85
101
155
100
89
93
80
72
80
123
107
69
87
109
71
80
75
140
127
134
80
174
54
120
113
99
107
72
115
151
69
131
103
140
109
89
109
155
96
69
113
99
110
80
120
96
128
148
114
80
67
69
80
120
107
155
78
104
78
80
76
76
106
68
113
93
127
103
134
148
111
111
69
107
79
69
109
100
87
128
120
80
78
84
128
143
133
109
174
91
87
89
43
85
136
137
175
132
60
146
76
69
116
126
54
78
78
93
76
80
119
85
94
112
110
112
87
78
80
164
78
135
74
128
52
109
120
115
109
56
80
107
117
78
131
133
112
85
112
76
78
87
87
128
107
76
104
67
121
110
72
66
99
69
87
99
76
120
154
130
69
128
123
156
76
131
78
107
128
136
69
71
106
115
133
134
151
154
78
99
136
80
54
110
87
128
120
69
80
93
110
102
109
124
69
78
134
93
93
93
123
128
121
119
134
120
160
89
136
88
104
64
88
106
76
121
80
156
109
76
101
130
154
146
83
104
129
111
110
80
78
88
147
131
109
112
82
119
91
104
123
100
136
86
110
107
69
69
112
207
69
133
76
89
129
112
75
136
151
94
134
174
87
125
94
72
118
209
138
130
121
80
128
69
103
89
136
87
109
78
85
169
87
89
109
94
87
181
119
69
80
131
143
89
116
133
80
118
94
142
72
119
89
80
96
148
54
80
91
103
87
66
117
116
117
87
142
101
120
134
106
110
107
80
140
78
143
137
102
160
120
120
80
98
104
69
107
175
134
80
96
80
119
175
87
120
150
80
126
109
75
163
80
133
78
163
87
91
117
91
88
76
69
197
134
80
185
175
75
93
104
97
110
101
112
122
88
93
112
76
117
119
117
74
162
67
128
80
119
121
54
139
145
115
78
155
115
80
112
91
80
175
69
119
105
118
187
112
116
76
121
114
98
140
80
151
156
134
80
69
148
134
110
128
117
110
90
120
119
120
155
156
154
93
87
87
119
76
134
102
101
88
106
76
134
78
82
98
147
153
128
87
88
112
99
127
120
112
127
119
80
87
151
96
80
78
121
69
69
76
137
155
129
107
85
112
94
110
154
87
128
125
85
93
119
103
80
52
89
109
91
115
104
91
99
118
110
119
139
175
113
74
105
88
106
121
68
146
80
91
69
76
133
123
78
140
93
139
175
91
154
104
112
120
134
104
92
99
155
183
88
85
88
131
78
139
148
109
152
93
78
93
153
78
103
155
120
90
88
80
136
76
99
102
134
106
76
90
76
140
67
78
100
150
150
174
121
140
80
99
87
119
150
123
119
94
120
96
78
80
175
163
52
133
98
134
78
115
120
80
76
143
137
156
128
76
72
64
69
54
72
129
154
137
145
175
164
91
122
89
93
183
121
199
107
103
74
87
99
87
136
96
94
121
89
128
69
109
97
142
101
100
172
104
69
80
79
99
124
78
76
80
69
109
112
100
117
156
128
107
80
69
197
112
129
155
87
128
107
116
69
69
80
102
78
101
127
115
132
94
134
151
87
96
83
177
75
89
90
142
80
137
134
107
120
140
83
101
63
69
126
119
162
130
93
69
69
93
78
122
116
69
107
119
117
107
127
119
110
110
87
104
80
78
145
131
80
112
76
106
133
76
74
118
109
164
94
102
69
119
154
156
119
143
131
66
136
156
85
74
114
69
72
119
109
118
94
72
136
107
174
80
145
96
103
109
120
128
89
80
92
119
69
120
129
155
87
113
113
80
69
183
117
76
107
110
133
107
113
102
143
120
154
100
106
111
120
58
89
119
128
76
90
140
69
81
101
150
122
154
120
80
122
87
132
120
80
95
110
102
69
88
123
101
129
133
111
88
87
87
91
107
83
156
100
80
120
131
113
69
69
133
80
137
163
78
107
99
126
119
166
111
115
80
94
89
88
87
113
134
96
174
69
163
175
69
134
113
109
123
131
134
197
100
80
107
136
94
87
76
80
80
112
106
66
112
156
101
84
128
107
93
136
94
78
119
56
69
145
80
104
76
147
77
120
175
96
96
94
82
137
67
72
76
154
93
152
100
76
87
88
112
72
128
100
94
150
107
117
115
120
120
120
175
163
136
75
87
166
89
78
78
112
123
154
128
128
76
128
122
108
69
69
78
104
117
69
113
120
120
94
69
95
144
136
131
99
69
147
83
106
128
162
151
80
115
80
144
88
104
72
118
78
169
87
101
114
97
101
152
102
107
90
113
100
76
101
134
80
113
78
94
80
120
87
80
121
80
78
69
131
154
69
110
84
80
143
137
111
92
109
119
104
69
134
134
80
140
163
119
104
80
80
101
99
87
78
113
82
88
69
69
114
95
83
91
89
87
131
80
106
80
96
74
69
99
111
117
87
106
148
98
120
132
107
122
164
165
82
128
181
76
78
112
120
96
84
136
201
128
111
109
72
80
164
123
119
119
131
118
156
154
113
154
119
138
43
76
69
72
103
52
94
137
119
131
93
107
185
101
122
94
80
75
125
94
149
69
119
94
78
69
78
129
98
107
124
72
114
120
94
155
76
76
94
74
82
121
148
87
58
87
81
146
175
199
120
99
100
104
120
128
106
69
112
69
201
119
115
69
146
89
119
146
128
119
107
94
128
147
90
109
120
164
72
126
69
97
120
86
175
78
150
123
187
60
110
106
80
69
119
174
130
91
156
72
101
85
76
78
121
123
80
91
101
113
85
121
76
111
107
52
169
134
109
136
69
120
183
87
113
103
128
145
80
111
107
78
74
121
175
101
69
140
151
128
123
101
110
162
120
155
69
69
69
72
197
74
121
87
131
93
69
115
140
140
85
99
80
93
159
95
128
117
96
123
156
96
131
82
152
80
120
99
89
80
148
117
106
87
113
103
95
113
144
80
104
80
108
134
73
100
109
63
88
136
131
136
201
104
114
117
52
94
119
134
78
80
128
80
52
95
69
87
127
110
145
94
96
85
80
101
131
101
89
87
96
80
136
52
80
96
128
78
89
78
145
147
87
104
101
121
80
148
88
87
119
69
78
151
80
128
80
72
74
76
116
80
80
175
100
69
124
131
151
91
99
83
131
107
104
82
113
99
100
76
89
69
87
89
109
114
80
69
128
117
155
99
78
126
117
109
78
106
131
98
106
118
134
101
95
164
69
117
94
142
134
98
80
136
122
130
78
74
151
87
175
56
52
116
78
181
76
87
69
110
80
76
118
69
80
151
137
94
147
123
94
122
109
129
131
78
123
87
104
99
72
164
125
69
137
151
145
78
83
133
91
78
98
80
88
79
146
78
72
76
80
101
134
100
69
128
181
124
69
78
100
80
118
106
131
175
156
88
118
76
127
118
151
137
131
78
155
90
175
110
69
88
103
110
89
54
80
69
110
114
115
131
87
96
78
157
78
122
128
95
80
77
138
54
119
100
80
69
102
109
205
115
69
94
101
140
120
78
76
99
133
100
134
91
122
128
89
106
121
107
197
69
107
197
104
80
67
69
76
85
88
87
79
80
78
98
129
80
102
104
100
66
80
90
94
129
79
88
147
89
154
59
128
78
136
74
120
120
133
80
140
80
96
131
78
89
76
80
72
72
117
78
132
117
123
181
121
93
121
87
143
152
69
151
163
68
155
80
69
69
112
197
102
110
117
54
69
94
109
152
69
95
120
91
197
104
162
88
96
87
107
93
78
144
117
83
136
122
137
120
87
118
118
110
111
92
100
69
114
128
73
109
115
119
56
93
174
80
87
91
154
89
127
67
175
124
107
127
96
139
123
137
89
163
146
89
120
99
114
80
137
69
131
87
118
122
83
140
80
103
143
93
89
144
80
132
119
134
154
87
91
95
98
104
72
111
67
121
80
156
69
131
72
166
89
109
87
134
101
91
87
69
154
69
87
156
114
76
76
80
71
85
78
93
163
140
89
151
69
88
87
183
119
145
56
87
76
110
98
127
94
136
87
83
138
89
110
155
80
121
87
94
107
94
101
88
90
164
80
89
111
119
113
66
72
119
124
108
54
93
80
93
80
96
154
101
129
108
87
74
142
138
126
95
163
91
97
69
52
104
80
129
107
72
74
80
87
76
80
88
93
100
106
120
78
78
69
80
78
110
80
113
93
91
78
80
132
114
94
128
86
118
87
159
149
80
123
72
120
100
72
80
155
94
101
93
134
175
136
83
100
119
78
87
72
113
197
101
80
146
110
98
131
89
69
134
99
140
76
76
110
107
123
80
89
87
138
197
78
111
123
110
69
145
79
174
99
88
78
104
94
94
80
72
134
112
104
116
136
89
93
132
119
58
115
121
106
69
154
78
101
115
76
147
145
109
109
113
80
109
150
72
72
72
78
114
146
98
119
80
80
92
68
89
89
94
140
128
89
138
76
175
76
80
175
154
80
101
120
109
80
87
107
87
87
96
59
90
121
119
146
162
93
154
69
101
99
69
90
123
101
80
69
122
74
87
69
54
146
148
80
82
121
113
107
109
106
113
129
108
110
151
69
138
88
69
127
88
96
94
130
133
145
107
94
79
113
80
87
128
117
120
113
132
80
136
115
76
69
76
138
80
156
103
113
185
107
78
87
112
130
149
76
99
134
175
80
119
128
156
117
77
96
69
106
155
144
134
72
107
76
117
87
155
99
108
80
109
129
54
131
150
122
131
109
147
115
112
94
154
110
154
83
80
94
72
131
134
164
94
76
95
106
59
80
136
75
109
52
104
106
117
74
78
91
149
120
109
80
109
116
87
78
110
117
91
144
111
127
145
99
91
149
80
94
80
80
128
118
95
128
89
96
87
175
115
80
145
78
119
83
100
136
128
143
140
140
165
78
110
113
78
69
72
78
119
80
101
199
142
89
93
151
74
119
88
94
119
112
132
69
121
112
136
80
69
82
99
43
131
76
90
110
127
87
156
76
134
113
92
84
88
80
99
151
109
94
94
175
98
148
96
154
107
96
149
69
96
115
175
109
123
116
78
175
201
154
76
78
107
79
100
127
78
136
80
69
120
120
117
80
93
147
136
106
107
94
69
88
165
124
119
78
109
94
102
121
69
175
101
111
197
130
110
128
80
112
110
109
117
93
99
110
99
181
101
80
139
110
89
83
110
93
94
78
145
87
54
88
72
120
71
104
69
80
128
80
69
145
88
109
69
100
120
91
69
175
136
111
80
121
119
164
144
90
69
79
145
99
107
102
88
88
80
79
109
153
134
164
98
69
76
154
113
56
80
87
131
87
132
117
131
80
169
87
80
137
96
96
102
93
121
133
109
123
197
87
145
120
109
114
154
87
134
113
96
102
128
119
74
75
98
131
131
119
144
172
112
119
163
102
111
80
80
131
88
88
69
107
76
104
80
80
134
64
78
124
127
141
140
120
132
99
107
93
128
155
69
107
78
104
106
109
54
175
101
99
52
105
71
87
175
87
96
151
80
80
131
130
59
78
96
142
80
112
107
136
146
80
118
69
80
112
88
197
140
52
85
90
106
80
104
101
69
104
127
92
123
98
117
80
87
88
80
80
100
119
106
109
107
91
99
134
128
107
107
103
54
117
175
156
76
126
106
94
132
80
119
107
69
78
103
115
80
106
76
174
80
109
121
76
127
187
117
104
111
104
113
82
163
78
89
107
110
104
128
128
56
101
80
136
150
80
83
128
80
112
137
175
68
85
87
80
93
146
69
110
131
80
104
136
146
130
80
115
89
140
131
90
146
109
175
76
102
176
136
102
106
140
99
209
101
143
80
80
154
130
197
94
69
109
80
80
175
103
89
145
69
119
99
106
66
104
106
80
91
80
69
52
137
143
93
78
80
80
151
94
80
69
106
69
153
120
80
106
89
69
150
80
121
133
166
88
83
102
54
150
127
124
124
93
78
129
87
115
112
118
143
87
103
80
80
140
120
134
133
100
114
106
113
76
80
99
69
119
80
136
69
101
131
119
101
113
176
92
133
72
52
175
109
123
134
96
76
54
121
106
120
80
69
69
69
87
109
80
76
146
109
146
100
120
133
76
78
80
137
175
137
121
120
80
87
87
118
119
131
76
155
132
164
120
89
78
94
94
143
88
146
94
120
80
93
112
113
85
121
56
120
155
101
178
131
132
67
80
120
132
123
155
74
174
154
119
89
88
78
118
134
69
78
114
80
103
78
175
145
107
156
87
112
131
128
145
111
156
137
175
109
112
78
130
80
121
80
113
99
88
100
109
91
95
121
112
99
74
78
89
110
119
118
176
107
175
78
113
141
69
87
82
88
155
119
89
146
134
106
127
92
111
66
73
76
113
72
88
134
87
138
118
175
87
102
134
119
166
121
129
109
144
88
111
132
155
107
138
80
128
87
64
69
116
78
57
155
87
87
128
117
101
99
87
103
115
134
120
205
113
143
69
140
89
85
109
107
119
119
80
136
93
88
106
69
78
87
121
88
109
80
146
83
76
155
94
87
76
69
99
80
127
128
131
120
120
78
151
87
80
87
89
151
124
104
93
122
127
78
69
106
75
113
63
123
113
134
43
93
152
107
104
101
110
88
100
148
69
114
80
69
72
102
126
134
110
104
104
83
96
78
161
72
136
104
125
78
93
72
134
119
146
197
138
146
124
154
134
140
89
91
78
115
120
102
87
156
123
96
80
151
93
140
130
95
83
87
175
104
121
134
128
164
113
91
95
78
87
123
104
126
137
119
96
54
69
154
99
80
129
80
75
89
80
76
110
146
119
80
80
100
110
99
112
94
151
95
105
131
78
94
119
113
102
119
103
121
97
144
167
100
143
132
136
80
76
118
89
110
100
93
147
80
121
83
107
160
137
163
135
120
107
115
87
175
128
69
87
112
136
69
110
80
96
110
96
127
122
112
144
107
69
119
89
89
132
147
154
80
157
91
105
146
99
104
128
87
120
129
88
139
80
119
75
99
112
91
144
109
109
64
154
93
124
69
80
117
99
88
99
80
122
99
76
80
106
88
128
120
151
80
80
116
78
111
112
87
87
69
109
163
78
164
131
69
78
54
72
120
99
120
78
132
154
96
154
96
78
125
181
116
69
86
148
123
87
113
113
162
59
115
87
96
103
144
87
164
83
80
123
140
87
99
163
144
80
59
89
76
121
94
112
99
88
118
78
85
140
136
87
107
102
80
109
126
79
120
93
103
103
175
90
117
80
95
148
67
97
87
80
114
120
120
99
78
165
87
88
107
69
98
87
113
136
118
76
88
154
88
69
120
56
78
102
87
130
136
102
87
88
121
110
76
150
88
137
62
88
73
126
78
78
119
140
131
110
80
149
119
125
121
120
88
187
118
151
115
115
64
69
80
134
104
129
154
145
66
104
112
43
69
154
96
119
87
129
103
155
69
69
148
80
99
125
107
104
196
79
109
150
115
154
69
87
88
80
129
78
98
143
175
156
132
131
89
72
69
111
80
107
107
96
80
109
80
136
69
94
120
104
106
78
102
69
77
80
137
104
69
118
98
134
106
63
87
87
87
75
78
76
91
136
94
103
156
144
120
110
113
112
87
92
93
88
175
120
80
82
120
119
94
201
121
94
175
131
123
137
101
104
94
110
104
119
112
69
76
111
143
80
89
121
134
154
69
132
148
109
91
80
129
87
69
80
110
155
89
156
124
101
112
119
80
72
142
78
80
197
144
101
147
99
111
128
76
80
78
131
100
76
80
69
69
82
99
72
115
87
88
109
128
80
76
118
99
69
98
128
91
96
136
154
99
69
99
201
82
106
110
110
150
119
85
164
88
129
96
92
91
133
69
109
174
78
112
145
112
87
133
154
69
89
89
64
112
120
99
106
175
154
80
109
99
83
121
120
80
69
119
110
121
80
156
97
72
95
129
64
122
118
120
131
109
98
209
76
69
102
69
101
106
80
88
120
119
94
136
109
69
80
80
131
88
128
76
76
99
128
106
80
80
175
112
156
110
69
93
87
110
113
129
106
104
117
69
78
104
88
183
99
120
128
126
69
120
103
101
99
125
63
95
142
131
72
80
113
109
120
121
143
140
106
127
175
121
151
88
131
175
99
80
80
69
59
78
71
85
120
155
87
113
101
131
56
106
80
113
78
97
89
88
131
78
69
87
133
152
80
94
79
85
105
109
80
104
145
80
89
102
80
69
166
120
136
91
128
117
96
116
76
134
91
107
80
80
99
67
155
79
99
94
110
112
134
146
80
80
75
66
110
118
69
156
88
107
126
106
88
156
117
82
80
72
138
107
120
88
127
99
134
106
72
110
83
87
80
93
87
109
94
88
87
76
69
80
79
111
80
69
137
80
141
72
90
126
97
142
78
80
80
114
74
85
132
92
149
54
85
117
85
96
72
69
101
115
72
175
132
96
104
78
74
99
165
110
151
106
121
96
74
88
112
54
52
112
80
140
91
110
131
89
119
88
110
136
106
114
96
91
107
104
110
69
76
127
119
54
175
110
93
96
156
145
87
124
175
89
109
117
120
83
89
69
76
147
175
107
89
141
109
69
80
133
72
80
136
78
111
120
197
109
78
104
69
90
120
112
69
127
94
60
136
99
128
80
101
80
127
91
121
126
156
80
69
88
125
113
104
128
73
87
76
110
93
88
119
152
80
119
99
99
95
136
117
88
76
94
67
119
154
69
115
76
175
131
78
173
80
69
80
72
69
112
133
175
76
162
69
69
69
112
80
88
69
80
119
69
94
134
120
80
175
80
78
79
113
94
69
93
119
131
140
76
89
72
76
52
149
156
156
94
140
113
110
88
87
69
175
143
88
104
103
119
110
87
76
197
104
175
69
105
88
69
114
117
106
156
137
123
107
87
152
102
69
142
87
133
140
121
163
134
100
96
100
60
104
80
89
154
120
128
119
121
133
103
175
88
124
95
106
197
110
154
87
197
76
119
69
186
156
80
109
69
100
90
116
118
119
119
119
127
151
107
69
117
119
87
145
78
89
89
128
134
133
117
93
109
100
132
123
107
120
96
99
119
197
128
87
64
122
80
94
118
111
117
87
127
122
78
146
136
76
87
80
106
107
69
112
110
112
69
88
123
78
99
107
104
78
80
159
94
123
114
164
87
102
87
115
89
107
136
145
120
88
80
93
89
102
78
93
147
133
80
78
94
106
151
72
112
76
126
101
145
81
115
120
78
76
100
94
129
100
87
100
69
143
87
88
83
117
175
72
78
107
88
118
140
104
120
102
78
154
131
98
110
99
80
164
89
87
162
89
76
128
110
63
128
94
89
110
91
155
94
106
89
178
99
119
69
144
117
134
115
88
101
87
127
103
102
85
76
111
96
80
54
126
134
89
96
91
117
117
103
106
80
94
138
132
80
83
109
72
126
69
69
114
119
120
114
113
136
159
90
78
120
69
76
182
115
123
63
76
136
109
104
128
88
76
109
106
164
119
121
155
80
76
80
96
151
89
181
72
117
175
102
144
102
111
95
145
76
175
120
143
128
74
87
134
166
128
80
132
136
197
80
148
156
87
107
120
89
125
114
69
78
119
92
69
96
80
149
145
67
78
100
56
80
54
156
165
128
114
136
111
96
163
82
69
120
80
134
125
69
107
147
101
110
123
119
107
94
100
87
109
118
96
175
74
72
133
95
76
80
86
69
109
154
69
132
106
120
103
118
62
66
129
78
95
137
80
103
115
80
93
80
78
110
154
52
89
126
143
115
57
137
69
78
106
123
130
78
136
118
80
80
154
72
154
100
175
89
111
105
119
175
119
107
95
104
74
91
137
80
58
78
134
96
155
183
99
163
197
89
133
76
84
130
80
108
120
128
153
91
72
138
104
78
120
175
145
94
121
67
146
70
108
78
137
120
58
90
76
175
76
99
109
137
76
131
112
132
80
80
91
80
163
87
94
88
114
85
87
154
107
52
128
130
128
123
99
87
155
87
104
80
78
89
163
122
104
94
87
199
154
106
69
112
101
146
69
80
80
112
80
72
148
93
97
106
115
89
117
121
101
171
87
131
107
82
89
99
69
106
113
87
76
137
175
94
87
69
132
74
131
87
155
94
89
113
69
109
123
136
111
156
121
128
78
154
154
116
94
80
76
132
101
106
164
87
102
99
85
88
122
83
87
153
120
89
164
135
120
78
142
122
209
87
72
132
120
64
104
124
102
119
95
140
119
88
94
69
118
93
110
201
120
80
69
100
87
83
119
81
76
114
78
69
72
87
147
106
94
82
143
155
115
155
100
185
197
130
131
120
120
69
120
133
154
122
85
80
152
107
106
80
155
80
163
69
128
175
69
120
76
87
160
152
145
174
83
88
90
80
78
154
167
154
123
121
175
123
89
137
107
163
128
99
155
134
155
88
120
83
69
102
69
175
115
76
175
69
103
96
82
100
151
119
63
69
134
96
128
155
80
56
122
69
120
157
72
117
151
148
80
129
136
98
127
128
80
131
104
164
69
88
78
72
69
151
104
72
118
137
128
98
103
120
76
94
52
119
67
108
156
80
52
76
87
113
119
54
87
137
124
103
109
74
151
150
69
136
111
69
80
96
115
110
80
83
116
58
109
78
100
87
78
69
94
103
154
134
87
105
69
80
69
83
155
151
54
119
119
138
99
110
91
174
144
87
102
114
131
82
136
66
56
69
80
87
107
136
76
112
80
52
69
104
101
99
103
109
88
94
77
139
111
80
118
78
131
80
106
87
133
78
120
143
145
72
81
80
154
68
112
90
101
128
80
154
76
58
69
128
104
120
80
137
107
80
80
147
110
144
119
76
74
117
74
127
144
69
87
147
80
95
112
104
69
148
104
80
64
81
89
99
140
111
109
110
99
88
110
175
164
156
110
123
164
88
109
117
113
80
131
107
134
140
66
52
72
131
80
163
175
111
115
98
104
139
125
66
80
93
83
69
93
104
76
80
120
102
76
76
52
52
69
93
112
109
99
109
78
131
78
129
155
76
80
144
144
209
104
136
119
155
88
69
64
102
76
134
89
72
69
155
119
121
164
72
101
128
151
175
79
156
107
87
94
174
76
108
87
98
80
155
89
120
131
122
112
118
54
80
136
80
80
80
104
69
77
54
118
99
69
156
83
131
109
106
114
85
121
83
156
161
69
109
124
146
156
120
136
119
88
78
93
160
87
91
107
153
87
87
117
127
155
69
72
78
69
159
78
118
57
120
104
96
137
76
131
124
80
72
90
94
69
80
113
87
107
80
109
99
155
87
119
87
143
69
80
174
124
175
69
113
111
118
120
100
128
106
139
109
109
106
136
122
131
93
99
88
115
119
126
155
88
80
140
123
56
85
90
76
87
109
119
69
115
109
80
145
94
94
78
80
107
92
120
96
54
110
80
145
80
107
113
100
126
80
114
175
105
166
58
121
83
96
43
87
76
74
133
94
119
78
63
119
113
69
120
88
145
127
87
110
143
136
104
104
88
62
136
80
116
118
123
77
106
94
76
131
78
69
109
86
175
128
69
99
89
80
107
103
113
56
109
87
87
163
107
99
108
99
72
80
123
80
103
66
84
151
137
80
111
150
107
116
127
76
88
78
117
78
95
112
94
78
99
118
106
136
106
118
92
138
128
152
117
106
92
125
164
87
89
69
127
78
155
156
175
120
111
96
76
88
110
72
174
151
134
75
93
106
115
82
91
111
80
93
173
107
127
126
93
69
87
104
109
112
91
109
101
119
128
124
128
80
87
132
154
107
131
119
69
108
106
175
69
105
87
72
146
119
69
163
78
134
128
96
93
56
131
134
185
80
118
113
78
110
75
80
156
78
106
100
97
187
138
197
80
96
115
76
93
104
78
140
91
59
79
74
90
128
107
120
133
56
110
163
102
125
136
155
80
71
88
80
140
56
109
124
107
175
72
72
69
74
69
137
72
117
142
103
104
180
88
102
139
105
84
118
69
76
91
96
97
78
88
87
87
69
78
87
63
80
109
80
125
117
128
131
119
96
128
174
80
92
74
87
69
124
185
120
80
101
78
97
80
80
131
106
80
109
69
93
119
153
155
78
151
69
119
133
140
88
99
117
69
59
94
69
58
151
134
145
109
103
83
103
127
107
118
69
117
104
112
140
144
102
69
80
99
95
54
96
78
52
69
185
76
87
69
69
104
76
121
151
100
117
142
102
89
93
105
101
83
69
175
155
101
113
154
149
131
102
94
134
112
69
89
95
52
93
140
197
119
124
91
119
69
80
112
69
121
137
116
80
76
107
94
109
100
106
110
156
89
197
133
99
136
78
197
155
185
120
113
124
89
140
98
117
127
107
67
78
101
148
93
156
76
175
94
80
76
111
96
137
175
109
151
140
80
76
162
127
95
78
80
94
115
104
83
87
94
154
109
80
76
116
102
152
134
89
103
106
139
78
119
69
107
74
109
145
107
76
76
74
106
76
197
118
130
87
94
94
111
87
89
98
87
69
80
74
76
87
145
140
136
88
120
110
147
107
100
56
197
80
88
112
88
71
134
54
111
119
93
93
104
79
110
87
99
146
111
154
95
131
107
52
109
121
100
78
175
140
110
115
80
101
43
120
121
163
110
129
69
120
99
120
127
69
103
121
131
109
91
99
163
78
99
87
156
87
72
80
79
69
56
136
138
80
90
94
80
83
126
120
124
69
118
107
139
80
119
87
69
112
78
94
87
80
122
109
120
131
101
87
76
85
52
79
154
72
80
52
136
110
52
80
106
99
129
107
122
99
113
80
72
89
78
126
126
129
102
151
93
93
91
147
164
109
78
120
84
76
69
175
115
142
128
69
146
89
119
120
133
113
92
104
94
154
136
148
69
89
140
94
128
80
117
99
101
99
120
103
93
68
91
96
83
73
85
87
118
76
69
119
121
127
133
99
131
80
95
80
113
85
83
126
80
128
83
119
107
175
93
69
111
128
107
95
147
98
103
69
119
80
87
104
76
121
75
134
85
121
119
152
175
87
43
91
104
87
52
109
78
104
154
69
125
155
154
131
72
74
130
69
104
107
85
94
87
78
163
175
147
109
80
98
115
94
146
128
78
93
79
88
117
109
85
91
136
181
102
107
124
116
136
117
120
154
175
87
54
111
104
88
78
119
91
161
143
74
109
80
113
157
109
107
80
88
80
146
98
69
133
87
80
160
201
74
124
154
76
101
82
94
103
76
134
66
134
114
137
110
127
93
87
175
106
69
120
130
130
148
94
134
112
144
96
80
107
107
54
87
155
69
121
76
82
131
80
100
80
98
110
128
89
87
52
107
64
71
107
111
94
90
154
134
131
127
77
145
104
203
78
175
69
143
123
76
64
124
77
175
102
109
131
89
147
107
120
94
131
80
137
106
118
128
69
84
102
69
136
80
117
110
80
76
95
69
99
115
119
69
88
120
114
92
129
80
88
154
148
134
88
199
139
100
69
120
54
54
99
80
100
155
78
128
89
100
75
154
118
88
119
78
154
106
101
136
133
128
110
98
134
80
134
121
119
101
88
150
88
120
91
97
123
118
80
105
155
128
120
119
126
96
156
98
109
106
123
54
76
91
148
113
108
109
87
104
80
80
80
119
124
74
80
95
113
76
159
142
87
83
76
145
124
128
96
69
155
56
82
127
80
129
149
80
120
80
117
89
69
140
126
78
76
164
87
91
119
160
134
93
120
98
139
144
69
120
78
98
106
151
164
103
94
119
107
56
54
97
127
134
134
150
99
69
99
133
136
186
91
69
88
87
83
123
99
54
134
83
149
76
129
144
109
129
59
88
91
93
104
121
69
88
76
92
83
76
80
132
89
138
87
162
80
102
148
87
80
156
98
163
107
201
136
122
137
93
69
78
87
132
133
143
69
106
87
92
66
138
80
128
134
114
91
96
69
89
85
76
69
87
101
140
175
107
69
76
194
163
78
107
147
109
109
107
128
154
117
87
79
52
136
109
69
155
109
93
99
103
63
121
116
94
119
69
106
112
101
78
119
69
114
89
93
127
106
69
87
150
152
94
134
106
127
93
80
74
83
87
82
153
69
98
96
76
112
122
118
88
127
78
69
124
74
123
119
120
58
107
87
101
87
128
127
74
140
99
69
93
80
78
105
162
131
107
103
87
94
95
153
87
125
120
110
104
126
76
139
118
69
80
110
141
123
120
116
100
103
88
123
76
73
87
128
83
80
112
201
80
100
121
125
85
134
197
106
135
155
113
93
93
114
76
83
124
121
101
154
104
107
80
80
94
80
101
96
134
155
111
113
121
102
116
175
126
94
107
69
91
155
52
117
115
118
69
121
146
87
69
101
128
93
131
69
166
117
90
92
107
128
109
157
127
88
120
99
128
110
175
80
78
78
79
110
69
132
74
131
119
80
109
112
98
134
94
80
119
129
91
145
119
78
150
80
156
131
122
119
119
69
107
89
117
137
93
69
76
72
80
87
69
167
89
126
121
140
175
109
80
117
110
112
123
155
111
110
136
96
80
106
80
68
104
74
72
69
99
86
69
151
80
78
136
134
120
112
154
88
80
148
76
134
89
89
82
137
154
101
131
91
128
175
80
54
163
78
123
124
85
143
199
80
138
59
94
80
69
115
87
109
138
90
119
119
157
102
87
125
69
72
80
128
156
95
139
144
99
112
120
107
94
78
126
149
109
151
144
80
90
110
81
156
132
82
88
151
128
100
147
155
64
91
175
110
137
73
131
136
88
54
80
117
148
74
72
106
80
89
87
119
138
104
123
107
175
106
104
113
156
94
136
88
66
134
150
87
80
148
107
119
69
197
69
76
76
88
119
80
87
131
90
133
115
97
112
95
95
104
139
80
112
69
115
54
118
87
85
76
111
115
103
106
133
75
72
87
140
80
103
80
106
148
89
80
112
122
154
80
54
134
43
74
78
94
99
175
125
69
123
112
78
105
104
107
104
93
93
110
104
97
94
60
111
142
197
87
130
102
88
98
131
112
106
104
82
54
72
112
157
94
144
80
163
87
76
154
106
208
93
69
131
116
135
98
155
175
69
122
96
80
163
72
118
152
88
145
140
120
125
52
99
80
87
84
119
80
78
156
120
88
80
78
104
76
152
87
145
119
129
87
92
80
106
76
69
87
116
119
142
118
69
99
67
80
107
122
66
109
109
137
106
119
134
76
115
88
164
119
109
127
78
128
80
132
93
160
110
138
69
124
94
104
112
117
128
155
104
80
106
121
154
117
113
110
155
74
125
154
98
99
97
125
140
109
78
98
80
80
118
85
134
98
88
145
80
109
78
133
102
52
115
119
80
78
113
79
137
146
142
119
99
174
101
137
104
118
106
160
69
85
87
107
92
90
175
109
119
101
80
174
80
78
109
156
187
94
74
139
91
130
93
156
74
163
134
113
69
88
87
104
80
79
147
80
172
119
80
80
75
80
99
88
131
104
67
197
151
136
101
104
122
69
88
72
131
120
110
57
109
113
99
87
135
105
136
89
78
201
137
103
119
78
107
56
129
148
69
69
121
89
172
174
88
140
109
136
112
119
93
107
131
96
120
134
89
98
80
76
80
95
112
117
133
140
74
124
132
107
151
110
109
137
60
113
111
111
88
69
155
69
105
80
76
112
131
80
156
107
69
87
131
69
146
80
92
106
80
71
93
110
80
110
88
152
121
80
83
156
119
74
113
87
117
174
131
78
69
119
175
112
93
119
120
91
85
87
145
88
120
72
76
80
76
121
69
57
148
81
146
66
72
122
151
87
80
91
175
163
120
79
128
107
132
120
118
89
69
74
95
155
81
183
107
113
80
146
80
156
90
154
80
76
80
175
56
127
74
111
140
115
131
129
132
140
88
78
113
80
175
126
84
130
123
111
80
101
137
82
107
96
140
111
78
113
109
106
131
87
128
143
120
80
155
154
88
114
164
121
151
80
76
102
107
109
109
110
163
107
78
154
56
80
88
156
88
66
127
174
154
78
129
164
154
56
78
87
131
175
163
127
163
80
80
115
78
104
122
110
80
69
136
107
148
91
113
117
119
52
121
100
80
197
110
120
87
106
99
175
106
134
121
87
144
89
101
80
154
101
56
94
118
120
104
154
104
133
85
117
150
132
111
89
76
69
94
95
69
76
115
66
87
156
160
69
72
85
157
69
131
156
87
136
67
107
75
76
102
80
60
89
69
80
163
154
56
93
160
69
110
164
197
104
164
160
78
54
117
76
90
156
144
120
74
106
76
104
85
122
148
115
120
134
87
197
109
76
106
105
119
121
109
120
94
72
104
78
79
69
112
123
175
119
121
106
145
118
80
145
110
114
148
105
108
80
76
119
80
115
80
156
147
112
183
90
78
87
112
112
99
80
126
112
128
166
72
69
78
113
63
66
87
160
124
99
119
128
80
69
112
87
89
126
87
136
106
87
69
128
90
106
119
85
69
118
69
121
104
197
136
104
106
108
69
197
78
80
113
76
91
80
78
94
120
74
80
140
100
127
154
58
89
107
134
164
85
74
69
72
126
92
80
175
88
80
175
104
151
89
69
90
69
88
119
89
80
120
98
115
120
156
80
152
96
96
94
147
113
110
89
114
160
106
175
113
113
132
120
174
126
199
157
119
163
146
78
80
85
91
140
120
69
69
87
157
80
134
89
99
108
87
159
87
122
106
109
76
97
156
107
145
121
109
119
141
90
80
154
94
104
112
154
126
80
80
112
99
54
93
152
119
134
128
87
119
119
69
197
88
104
76
80
175
113
80
80
197
88
56
74
94
80
119
115
128
69
109
80
85
99
56
131
87
80
80
104
99
66
136
157
140
80
109
76
81
79
148
99
132
87
78
122
101
93
169
74
99
111
120
72
107
91
106
94
131
69
88
69
92
149
128
93
101
136
119
85
88
80
145
99
87
80
87
117
146
74
80
78
111
175
136
80
135
69
96
154
138
80
110
72
138
156
104
197
125
155
156
85
150
78
119
83
125
153
142
110
94
56
114
136
138
109
164
60
83
127
197
80
133
80
74
156
94
80
80
87
96
112
80
80
87
156
72
114
80
80
91
87
91
163
100
99
88
69
178
76
88
87
78
115
120
100
110
66
138
63
87
80
90
89
109
67
57
74
112
107
154
145
93
109
133
88
88
76
170
87
96
151
115
144
76
130
72
128
104
107
111
93
109
94
88
94
197
88
119
134
59
120
101
119
111
80
88
78
93
69
128
78
99
78
80
87
144
113
69
131
99
131
106
72
156
52
119
106
126
124
66
132
119
72
78
69
126
134
106
136
69
93
92
120
78
67
80
87
147
129
98
69
154
154
72
76
73
156
156
54
121
104
88
125
107
128
143
176
63
92
139
80
80
69
87
101
120
145
80
145
131
141
90
95
56
75
138
97
101
140
120
88
80
140
117
143
72
80
80
94
80
102
161
82
126
94
80
130
109
144
111
80
122
154
110
140
170
88
99
87
64
69
102
109
87
166
80
111
148
109
69
80
175
108
54
175
96
110
119
131
78
119
128
140
166
137
87
100
81
136
175
120
52
104
140
187
80
69
128
69
101
131
107
91
69
91
128
52
80
69
119
153
90
88
134
129
118
69
69
85
144
101
96
104
96
104
140
67
121
154
89
69
96
89
120
126
69
69
76
107
75
83
69
145
144
151
121
162
69
151
69
119
112
104
152
111
72
80
155
134
66
154
110
101
80
87
89
166
130
69
140
80
94
80
94
132
156
109
80
146
112
88
131
99
72
107
127
75
145
78
96
145
137
99
93
69
94
76
94
80
94
112
110
89
76
117
154
69
115
132
113
99
114
106
154
127
69
78
106
80
119
133
78
91
199
69
156
145
128
101
76
140
137
109
75
87
174
88
80
110
120
145
88
76
110
134
119
127
133
147
67
52
90
80
78
161
114
160
148
94
136
80
78
69
110
151
88
121
115
80
107
110
87
104
80
136
78
109
120
78
154
80
123
120
119
122
96
117
142
117
151
132
98
96
109
88
154
109
96
94
120
109
80
89
145
133
132
102
112
99
107
175
110
117
88
80
96
113
154
102
119
97
96
107
91
148
99
94
96
80
178
147
175
87
82
94
121
69
106
69
121
69
117
88
123
133
115
107
80
80
91
155
109
111
128
66
121
104
106
121
122
185
109
101
80
146
134
76
156
99
146
152
80
80
80
79
114
107
131
102
106
110
88
76
111
99
69
80
120
95
76
130
120
98
85
69
80
80
112
120
104
123
80
119
110
131
96
99
72
80
123
151
119
103
154
87
78
88
112
174
102
120
69
87
119
99
83
113
131
121
76
69
78
85
107
130
76
119
83
138
107
101
87
128
91
106
109
129
80
69
109
80
128
114
80
76
96
74
153
119
115
136
69
99
93
155
78
137
163
128
155
80
87
176
91
131
80
78
110
89
96
69
133
122
113
69
80
80
98
137
100
145
131
80
107
145
156
100
122
124
80
94
91
128
109
91
78
197
120
59
144
89
131
118
69
107
123
114
92
76
94
113
145
88
90
128
138
80
119
104
131
80
175
106
175
80
78
113
149
72
54
103
79
120
117
128
155
76
96
78
124
117
60
99
54
76
112
127
131
88
96
89
99
93
52
104
197
156
99
120
115
96
154
69
131
80
140
71
76
99
66
78
76
78
87
121
120
85
87
76
91
69
80
94
139
136
69
78
76
136
107
94
88
197
110
132
96
76
110
164
136
106
76
119
87
175
69
54
135
108
87
123
117
94
121
76
97
121
155
154
92
136
108
93
176
119
69
98
140
112
108
131
94
155
69
120
101
87
80
80
104
119
69
99
87
94
90
104
126
80
156
163
175
79
80
123
94
120
112
154
87
80
163
160
122
98
69
112
80
128
118
102
84
162
120
101
69
107
137
144
164
131
120
123
113
131
113
123
122
117
99
90
120
107
121
80
80
163
154
104
94
78
140
122
113
78
69
112
100
72
149
88
87
140
110
145
76
109
93
68
136
106
80
136
127
76
129
88
117
175
124
75
138
104
110
149
101
140
91
74
120
94
137
133
93
165
131
89
156
96
107
88
88
104
110
88
88
72
87
104
126
112
122
109
169
100
107
110
137
100
96
69
127
151
181
127
100
140
199
80
134
75
87
104
106
80
96
148
78
140
69
96
80
69
80
87
128
128
131
76
99
76
80
149
126
89
119
121
76
87
78
80
95
52
78
119
80
102
106
76
101
97
90
80
87
121
93
125
80
127
144
107
80
112
128
151
114
77
123
128
110
119
89
133
112
102
52
100
134
80
120
80
80
100
72
95
137
81
80
136
88
54
109
146
99
197
74
80
101
119
78
160
80
79
112
158
134
110
155
134
147
119
117
78
80
75
99
120
109
114
156
156
97
129
133
156
175
121
99
80
120
52
119
154
183
117
97
106
101
80
87
80
148
80
125
102
93
164
119
106
69
95
119
201
80
124
67
134
69
128
69
106
120
95
123
91
76
87
134
151
175
77
136
69
95
96
145
94
118
94
123
66
93
197
163
99
66
69
117
89
163
80
100
119
69
69
78
80
80
94
134
163
87
83
114
78
126
127
69
90
109
80
101
78
128
80
128
154
110
101
78
76
120
105
80
119
159
74
183
87
96
128
109
88
71
69
96
106
80
141
109
80
119
94
121
69
122
76
100
131
107
156
78
94
156
89
134
76
78
128
106
151
80
56
87
109
69
113
87
85
87
119
112
175
88
87
149
52
147
99
114
78
147
130
94
75
119
109
106
107
87
94
137
164
68
183
121
94
69
109
110
96
69
146
175
104
98
88
120
91
89
94
91
56
85
136
78
69
103
99
154
89
99
78
94
150
127
122
109
131
76
78
96
137
101
95
128
54
80
80
140
80
119
95
197
58
67
117
128
69
134
78
85
80
60
123
80
114
106
80
76
72
102
107
78
121
76
99
104
107
69
128
96
80
127
88
138
197
174
114
87
164
101
74
139
104
87
93
102
96
76
103
76
110
175
126
80
109
88
80
140
80
107
80
175
106
107
87
69
93
91
54
143
96
74
73
117
185
148
88
136
104
99
99
101
87
126
145
131
109
175
119
113
100
87
94
109
100
105
125
107
98
119
175
175
88
94
130
69
87
69
119
90
69
146
80
80
92
93
134
69
89
146
80
88
106
76
152
88
104
80
76
163
138
104
120
101
106
118
91
76
113
110
103
72
137
107
151
144
99
128
102
90
134
144
104
80
101
149
126
121
174
172
80
121
80
129
137
78
120
114
154
84
80
143
94
131
144
116
111
87
90
165
114
144
119
109
88
109
131
99
69
107
80
126
128
73
155
119
69
126
119
117
104
131
120
154
89
119
87
154
87
94
69
169
111
163
103
136
128
87
96
94
115
124
110
137
69
155
80
87
120
87
164
72
144
142
101
72
92
140
137
95
136
120
138
112
107
128
131
113
88
80
164
89
69
111
111
98
111
92
103
69
78
132
72
118
87
99
88
151
143
88
72
69
80
134
119
80
113
99
88
80
155
102
69
119
130
94
82
91
69
154
140
75
89
54
100
159
93
95
133
69
80
87
117
103
89
120
104
80
56
134
120
133
87
175
87
78
89
117
69
80
127
69
80
160
96
99
154
80
102
120
80
103
91
76
54
69
154
112
107
126
109
120
131
119
115
69
69
154
87
96
93
164
134
72
107
91
72
134
88
69
90
197
78
135
112
134
104
80
140
56
183
93
136
154
76
197
112
89
72
97
78
122
151
106
107
66
106
115
208
72
76
80
67
99
80
85
80
93
95
131
72
75
93
164
69
119
43
99
69
97
151
80
126
87
100
124
119
96
106
80
67
154
103
69
99
85
85
106
135
76
201
154
120
104
99
98
113
119
72
123
90
159
69
89
151
152
93
69
130
59
43
78
87
89
130
93
121
175
102
119
119
89
107
119
121
72
101
76
136
107
101
69
80
88
104
88
113
142
80
134
132
80
139
109
93
201
80
119
121
69
107
120
69
87
87
133
120
96
126
52
69
156
175
87
153
133
131
95
107
107
117
78
93
120
119
76
107
138
134
118
87
119
78
123
122
128
136
98
87
94
78
87
145
106
73
93
123
114
126
80
142
69
110
175
80
101
102
69
157
52
80
137
82
76
106
87
106
69
93
107
197
100
104
87
76
69
134
122
128
160
87
156
99
104
104
76
80
138
69
80
197
87
122
63
159
120
199
95
128
79
109
110
154
101
140
145
120
118
110
80
119
80
78
87
80
134
109
120
69
69
175
99
106
115
123
99
140
109
123
117
145
88
106
87
99
104
132
88
93
76
66
80
80
112
87
107
89
115
88
147
113
87
123
101
80
117
107
85
147
139
112
80
123
87
105
144
128
69
75
107
95
129
72
117
147
76
107
104
80
87
134
80
96
83
97
78
88
77
72
154
74
69
76
94
99
76
113
107
107
94
124
80
110
113
148
126
131
77
92
87
119
99
106
80
72
104
126
119
143
87
80
69
54
128
107
107
128
78
175
141
87
72
80
93
160
78
87
102
78
174
119
140
199
148
120
94
66
130
109
69
94
174
119
80
88
76
76
110
107
54
151
88
154
85
160
102
99
98
129
134
154
113
123
103
156
112
100
119
93
136
125
66
146
126
106
85
67
89
88
120
85
175
69
137
94
123
121
119
87
142
106
85
119
94
122
154
103
112
123
69
69
125
119
87
145
119
97
164
107
137
99
132
107
72
54
148
117
76
74
118
129
148
122
80
110
99
97
174
109
119
72
136
95
78
96
134
76
115
80
69
80
80
122
152
131
80
96
104
72
136
151
107
134
72
136
69
126
134
109
52
128
121
83
106
52
112
128
120
104
118
126
154
76
54
56
131
101
80
127
80
110
72
131
166
169
140
151
120
80
69
120
122
120
130
107
78
121
91
104
80
76
127
87
118
111
175
87
120
80
109
87
80
110
121
94
100
101
78
91
107
136
94
76
80
80
69
78
69
195
154
85
151
128
80
88
87
80
60
80
75
93
90
78
92
85
154
112
99
133
72
106
92
80
142
78
76
111
80
103
76
56
97
80
76
89
56
108
87
110
43
120
93
104
74
87
174
99
136
87
109
69
110
79
143
78
80
134
89
80
52
175
136
154
88
74
76
94
119
69
94
94
102
80
103
75
147
76
80
76
131
112
109
145
129
163
87
126
144
121
93
113
151
131
89
88
111
69
163
69
109
94
95
69
106
66
136
80
96
122
76
69
69
80
78
78
83
132
92
121
80
109
87
94
80
80
106
87
113
107
106
78
151
136
117
110
100
80
78
127
93
131
74
108
89
129
107
136
147
85
117
88
120
120
76
156
76
120
117
128
197
151
132
101
80
94
56
132
87
73
127
129
120
118
76
131
95
99
87
80
132
109
72
117
93
104
76
69
85
102
80
69
175
127
128
197
110
99
118
94
102
197
87
89
155
80
69
80
82
107
128
123
101
128
89
201
114
120
85
107
87
69
147
94
76
99
154
99
122
88
80
96
145
83
115
104
83
132
89
96
163
104
71
138
107
80
80
99
78
146
96
161
130
134
164
101
120
128
114
88
111
74
109
80
109
72
89
113
80
80
104
113
67
92
87
80
130
94
88
93
87
119
87
119
129
131
69
147
134
80
119
59
107
121
87
87
122
85
88
113
126
120
78
72
156
93
142
175
72
107
94
72
155
115
101
117
119
69
80
107
110
115
88
76
69
91
156
88
80
99
109
72
93
189
104
175
87
76
107
120
175
183
93
80
117
128
134
80
102
129
96
76
119
103
109
107
123
120
99
120
140
54
107
63
110
128
136
107
87
107
91
80
146
109
87
175
118
133
151
86
101
69
80
80
87
76
151
111
91
80
88
102
137
94
80
80
88
99
99
87
87
89
133
76
69
131
87
80
88
84
89
137
174
78
120
92
119
94
103
120
99
88
131
162
111
80
145
104
143
109
116
103
154
122
43
107
96
99
88
134
88
85
91
80
99
114
134
88
137
93
137
80
110
122
183
175
78
89
91
119
72
109
80
80
94
93
118
87
148
94
122
69
209
164
106
76
96
94
164
126
109
133
106
69
100
78
121
104
89
78
101
80
79
87
69
114
88
94
112
94
95
69
175
120
120
69
76
107
78
134
75
117
72
74
69
174
87
54
69
94
152
118
80
69
89
128
87
101
146
151
109
127
89
148
94
100
78
89
111
120
52
109
119
85
143
76
69
154
104
88
80
101
154
80
112
94
72
93
136
101
106
89
138
69
101
122
89
154
69
106
80
76
106
175
80
137
113
64
102
154
88
80
131
120
92
157
120
80
87
69
163
67
133
124
106
120
106
81
127
88
69
104
87
125
97
136
175
101
100
151
78
119
114
69
131
54
175
104
114
142
106
78
91
69
76
96
134
69
56
117
119
127
89
94
112
163
119
82
151
80
134
136
120
93
76
69
126
88
69
87
95
119
119
155
78
80
69
107
140
80
113
94
78
134
78
102
143
124
143
59
134
128
92
140
119
76
128
163
69
80
54
138
154
92
99
162
71
52
175
76
64
90
140
123
100
140
76
128
140
104
194
131
69
145
110
87
102
127
107
69
150
131
95
78
113
76
95
111
128
73
153
91
144
98
102
107
146
76
80
89
118
89
80
101
119
69
80
89
94
75
119
78
71
123
148
72
109
87
89
87
199
93
131
78
136
112
80
156
103
109
120
129
98
102
99
72
118
87
78
87
136
76
115
160
87
120
69
128
109
126
122
96
69
164
106
54
162
73
111
83
89
87
110
85
64
163
69
96
78
102
80
78
78
72
88
98
128
154
94
76
80
74
107
96
128
78
137
104
129
89
80
119
175
117
88
69
111
118
76
104
117
143
93
95
72
134
69
101
175
83
93
83
175
60
134
80
89
131
119
109
92
80
163
136
80
87
120
76
96
69
72
80
153
109
131
133
120
109
80
69
80
121
80
87
69
112
98
89
175
145
110
88
155
82
119
92
69
112
109
80
96
80
126
115
132
111
59
80
107
163
69
118
80
122
102
115
145
104
98
146
107
80
124
109
80
116
146
104
104
163
54
91
165
142
69
110
101
163
88
116
123
76
131
119
97
69
120
106
100
99
154
80
87
75
140
83
96
87
98
107
52
134
76
69
75
147
107
99
197
78
120
143
133
131
113
91
78
69
107
128
160
82
113
183
80
94
117
107
99
113
107
76
175
100
80
94
103
120
133
156
94
149
107
83
128
80
144
120
101
106
127
94
136
92
80
121
156
154
85
107
89
119
119
128
56
112
76
121
96
136
109
197
156
121
151
75
140
90
106
94
80
137
99
80
134
112
106
69
110
87
132
112
80
92
111
87
69
120
88
146
94
175
118
107
73
69
88
66
154
124
80
69
107
107
95
127
127
136
103
163
155
127
155
80
80
74
69
150
77
157
110
78
110
87
110
99
69
69
175
89
107
103
94
80
110
113
175
87
133
88
99
94
121
88
102
72
134
146
78
80
197
115
111
121
120
78
69
166
107
131
127
80
175
145
113
138
69
80
78
104
154
104
78
119
93
87
90
89
95
114
69
113
69
76
80
76
112
140
60
133
120
99
120
69
87
113
80
69
171
112
93
107
146
87
88
147
134
107
159
137
94
166
160
119
88
109
110
94
80
120
120
140
100
155
80
175
82
96
88
127
80
52
119
89
78
154
120
119
85
78
87
80
129
96
109
110
87
109
154
119
52
106
185
90
87
136
123
115
88
127
128
78
112
91
69
134
69
147
104
95
91
63
69
104
136
80
80
69
69
69
91
107
134
128
99
69
69
119
87
93
87
80
113
136
129
113
103
131
145
80
69
120
88
67
88
98
136
111
69
69
87
107
155
108
80
89
142
88
102
80
103
118
112
69
107
78
54
76
109
148
128
106
87
140
92
175
174
162
174
107
82
156
98
131
107
103
43
78
175
87
131
80
111
87
80
142
80
69
106
113
153
119
104
120
133
122
140
85
89
126
144
121
87
132
118
78
89
128
88
74
92
78
94
101
69
109
112
109
124
93
95
78
72
160
78
89
80
69
87
85
100
172
95
87
136
128
76
151
71
175
80
80
112
128
129
110
131
83
100
117
69
113
99
87
120
94
197
96
87
133
72
141
134
175
88
69
54
134
67
114
145
80
175
96
145
94
80
85
145
110
117
109
151
124
101
152
104
104
199
89
109
82
78
151
98
91
97
132
69
74
76
89
129
128
144
152
104
91
110
131
88
107
109
69
43
76
92
111
80
119
109
122
100
119
69
106
78
121
116
139
119
94
201
106
52
91
119
104
136
113
66
154
69
67
138
109
106
93
113
98
76
102
172
136
127
69
152
163
80
107
123
96
107
128
80
76
156
104
87
138
87
154
103
129
85
94
106
161
78
87
93
87
96
88
67
109
76
104
56
69
80
108
133
119
87
94
143
87
139
111
106
120
128
154
133
87
115
143
77
118
76
185
117
109
106
109
123
155
130
73
89
89
80
163
154
127
128
75
134
137
134
114
140
74
107
99
89
112
132
84
118
110
120
151
124
127
83
69
130
117
101
124
78
69
98
75
88
80
76
155
165
99
52
91
74
175
113
137
140
69
83
96
85
94
107
98
119
88
145
107
94
129
112
111
99
92
137
134
69
76
96
80
120
109
105
118
80
146
133
80
127
127
52
113
134
99
88
163
143
52
52
105
75
90
114
87
106
175
99
71
105
69
136
131
157
101
138
69
136
76
155
129
69
76
128
150
89
128
110
174
89
119
102
78
69
125
107
52
89
155
80
99
80
151
80
78
88
96
98
119
69
99
90
147
178
69
80
144
99
145
113
80
80
94
80
136
94
113
95
72
107
69
107
80
80
112
68
88
134
154
63
119
175
69
98
129
66
112
102
131
120
89
111
175
151
119
80
107
148
78
137
113
87
102
66
81
134
128
109
74
87
116
71
43
72
80
74
134
121
101
95
79
69
76
120
104
78
106
87
117
80
136
79
155
120
80
69
136
82
95
72
131
85
136
56
128
104
161
93
52
80
125
91
80
78
111
126
119
99
152
82
52
119
91
96
69
94
94
69
107
52
103
124
93
160
88
107
94
80
94
78
98
99
110
130
113
113
109
166
119
88
101
87
201
121
94
76
78
88
112
109
69
120
119
104
107
98
91
151
69
174
101
129
109
78
96
109
74
140
122
76
80
91
110
101
94
78
105
136
121
69
137
119
119
80
107
104
132
69
87
119
112
80
104
110
112
205
54
106
67
141
148
96
91
134
100
136
120
131
87
109
101
78
128
136
108
110
69
56
128
80
89
69
143
98
87
178
123
137
127
80
87
72
80
118
120
107
146
78
118
120
78
127
88
109
131
119
121
102
122
119
72
119
142
80
96
175
120
131
110
94
118
136
80
138
89
99
117
187
76
112
119
125
148
92
121
146
118
109
60
175
144
85
69
78
119
87
80
127
134
56
132
69
111
136
112
117
80
151
81
119
112
126
110
88
80
94
136
119
148
95
117
128
109
69
69
126
136
136
78
160
113
98
136
128
147
82
78
136
103
88
142
80
52
103
102
89
78
119
120
78
154
74
117
107
121
100
115
87
111
101
109
78
96
104
69
76
126
104
111
117
80
90
144
117
89
107
151
85
110
121
88
154
175
87
113
100
183
147
126
103
101
113
123
145
113
72
119
126
107
102
80
104
88
149
80
175
107
183
175
99
130
105
120
126
120
120
94
117
88
91
93
76
144
154
112
107
109
69
56
56
72
93
91
78
150
120
100
145
76
80
75
91
80
113
43
74
78
87
90
108
81
102
90
74
164
94
113
113
90
69
96
142
87
156
115
91
99
117
131
164
72
96
91
99
76
109
154
80
112
56
122
145
56
56
160
101
69
82
80
125
134
72
107
107
133
96
75
87
128
99
137
136
155
80
137
69
104
144
119
69
87
99
141
76
126
117
83
54
67
144
151
136
102
69
91
54
136
54
87
80
154
140
111
87
87
112
56
127
126
69
143
119
101
140
143
107
102
80
80
85
117
119
101
80
115
128
143
76
120
95
67
110
88
151
87
89
128
157
110
101
107
87
124
72
87
85
110
197
119
96
120
69
91
99
103
80
99
96
110
88
112
129
85
93
104
136
146
106
80
63
78
89
80
140
80
127
134
96
114
67
87
85
87
94
175
43
156
99
76
80
109
80
114
120
95
104
109
74
155
134
117
113
143
101
154
108
118
134
75
142
125
74
93
94
106
87
124
87
69
119
120
88
151
88
56
107
93
88
116
159
106
89
87
100
91
119
80
80
102
112
142
80
174
154
128
71
99
124
76
130
148
100
140
119
138
88
155
100
109
87
87
154
91
120
104
87
99
128
95
201
107
87
162
111
113
80
76
108
69
100
150
113
107
154
131
69
119
128
107
154
106
52
52
175
120
80
128
128
154
119
69
136
94
99
145
101
76
119
126
164
91
106
185
107
100
80
96
80
145
113
119
126
107
175
96
80
85
109
155
87
76
96
109
148
163
80
139
109
96
87
131
98
84
155
125
108
154
121
111
89
154
122
113
100
121
102
120
80
209
119
175
102
148
138
78
97
80
120
156
78
201
54
96
56
76
91
104
87
85
118
88
87
122
80
87
133
87
155
155
91
151
69
119
78
183
98
154
145
148
94
123
139
80
98
101
175
80
87
156
130
80
69
76
93
80
69
80
145
118
87
175
107
107
69
137
120
90
80
100
62
87
80
99
104
147
80
87
123
87
59
111
100
99
156
131
69
99
119
142
174
110
66
91
112
69
122
80
80
80
76
110
87
201
126
162
100
119
72
119
109
119
104
146
119
121
102
111
93
154
69
117
135
99
144
89
69
118
127
88
148
145
109
78
83
87
104
78
128
155
128
107
95
80
119
136
117
120
109
93
134
138
102
199
78
99
107
80
83
136
108
110
92
96
119
150
108
101
175
87
128
96
87
112
110
69
144
137
114
120
119
124
92
80
115
143
84
127
151
80
102
94
163
119
74
88
154
87
201
76
104
107
73
136
83
76
119
164
95
106
69
69
106
64
102
87
94
107
111
94
111
99
99
101
89
94
102
134
57
128
177
111
106
128
69
147
96
92
172
80
112
75
111
127
117
93
78
175
96
148
69
95
117
96
88
94
113
78
101
64
106
78
147
91
94
93
54
146
104
87
89
96
94
87
107
104
95
106
99
128
126
107
89
117
85
83
67
80
69
78
106
136
94
110
89
107
71
76
119
69
127
78
112
127
119
69
117
80
87
86
80
106
69
96
128
76
102
154
80
131
91
72
83
104
107
107
76
66
139
172
163
148
76
80
175
113
69
89
132
94
74
99
80
69
157
152
109
87
76
119
133
69
99
106
94
78
74
136
78
114
59
96
76
110
126
57
121
119
85
99
116
76
134
100
169
119
78
175
131
74
88
143
81
115
142
69
88
118
78
99
93
107
169
89
102
87
130
152
43
92
80
72
136
94
80
120
152
164
131
119
99
97
69
98
120
104
83
69
112
69
113
54
43
80
138
174
89
160
52
69
69
104
160
69
54
112
154
80
69
87
89
69
88
156
125
76
74
90
175
175
91
145
121
72
88
69
80
112
112
110
67
80
88
121
92
81
137
82
134
196
102
87
146
148
87
100
134
96
94
117
69
69
102
80
80
121
97
135
69
94
74
156
87
80
146
98
142
88
131
106
120
154
69
91
52
140
120
93
75
133
157
99
113
69
112
54
148
87
117
118
80
88
154
133
69
154
75
154
89
141
91
127
107
56
129
98
99
74
120
134
105
83
72
54
94
164
104
78
110
175
175
120
87
69
80
119
78
76
133
69
118
103
120
157
87
112
112
142
96
163
52
104
74
113
78
152
80
151
126
98
154
76
124
87
119
183
107
199
145
69
175
125
96
128
80
104
80
69
110
148
94
134
89
114
143
79
87
101
78
119
155
78
80
78
127
128
80
74
93
80
80
111
69
134
94
110
105
76
151
138
105
80
80
78
54
155
104
69
122
74
119
154
78
146
109
117
107
121
175
126
87
88
118
131
142
88
134
88
88
119
69
140
96
122
119
133
89
115
135
109
97
154
151
91
78
110
76
80
117
90
87
111
128
109
126
120
87
89
110
80
143
112
107
89
78
89
115
110
110
107
119
152
72
122
87
80
94
90
140
76
88
133
78
105
119
107
85
107
112
151
156
89
89
96
131
80
52
76
107
117
76
69
76
112
80
71
136
106
69
107
154
118
83
127
119
98
80
82
80
72
120
88
162
95
83
80
154
60
123
88
141
89
94
104
86
175
76
155
87
159
56
88
112
115
146
76
128
156
106
148
87
88
121
80
137
149
87
134
87
76
80
107
102
80
147
76
123
69
87
109
163
80
72
76
119
88
87
134
117
80
80
104
89
57
80
137
106
110
122
72
145
56
122
163
87
117
121
115
69
92
119
90
76
112
111
175
80
78
87
144
109
128
89
112
120
113
163
91
74
113
138
69
121
121
91
136
139
69
94
164
143
103
175
82
80
76
123
104
154
104
88
80
85
154
85
74
80
139
113
120
107
119
56
112
106
78
177
131
76
120
103
80
72
109
128
99
185
96
120
78
156
87
78
154
69
93
52
101
107
80
88
143
72
84
111
94
80
175
164
138
72
113
87
123
128
95
102
164
114
100
76
78
83
78
140
139
92
80
104
120
72
85
107
87
100
144
72
107
88
88
107
76
89
89
107
120
109
68
88
136
69
104
117
56
91
80
118
164
100
87
69
113
96
117
57
80
87
90
114
104
119
96
87
121
111
80
76
155
94
93
136
144
78
91
78
100
80
138
80
80
92
78
131
81
89
154
199
78
80
87
100
150
54
154
119
154
120
134
76
106
88
87
67
169
100
91
120
69
121
113
87
69
136
110
110
181
119
109
117
121
69
128
110
140
107
97
109
73
107
76
88
134
80
174
151
127
74
148
90
155
117
101
76
131
122
76
99
80
91
87
80
120
112
128
102
107
99
116
72
95
87
80
162
90
119
150
119
110
109
106
113
108
112
126
129
140
175
146
43
91
91
95
80
100
112
163
128
155
122
104
156
110
155
147
80
143
106
94
74
112
104
96
131
153
131
89
110
94
162
52
119
76
175
69
71
72
122
80
104
155
128
151
93
69
88
96
131
99
156
76
154
120
99
79
80
80
99
123
76
175
172
89
88
93
93
104
132
101
130
127
109
138
71
138
87
119
70
83
117
72
174
110
98
100
87
107
112
106
155
131
76
146
178
94
78
91
157
87
124
113
156
76
80
80
69
120
121
152
94
93
132
174
109
119
109
119
116
76
128
76
155
94
107
124
80
154
165
84
145
117
138
127
56
80
134
119
133
137
119
175
80
80
96
91
89
106
87
76
80
120
69
151
94
151
111
78
111
107
114
125
163
80
133
138
100
76
117
69
80
156
101
121
103
89
100
90
80
113
69
69
43
69
80
88
74
131
146
132
80
154
117
134
134
78
69
110
91
156
133
52
80
79
109
126
69
88
91
78
78
127
111
109
89
99
79
83
136
92
109
117
80
136
164
76
122
120
93
76
72
140
110
163
129
78
138
126
94
80
80
72
118
87
110
160
80
110
78
76
107
121
77
98
120
107
197
91
151
78
90
121
112
107
119
80
144
72
109
92
76
80
75
99
133
76
110
98
106
155
104
80
119
107
107
116
110
91
114
69
78
128
76
134
69
69
87
146
80
139
109
138
127
140
120
78
85
78
117
142
82
98
80
128
122
116
80
110
112
78
87
79
118
74
136
197
76
76
66
140
104
80
99
127
112
96
88
130
80
118
156
87
141
152
155
69
139
69
112
98
69
88
78
120
109
113
78
158
146
96
145
76
145
142
80
131
123
201
121
101
111
80
143
137
96
78
112
113
87
77
80
89
134
114
99
69
100
103
154
76
76
136
130
114
69
137
154
80
156
130
133
101
80
83
98
101
121
138
78
106
140
130
112
104
88
91
112
201
183
80
109
105
119
151
76
76
87
80
80
93
89
159
94
99
114
88
56
87
87
118
94
80
99
103
80
80
104
76
164
127
76
119
148
78
90
80
96
104
94
80
109
69
74
89
109
93
75
59
54
80
93
117
127
93
121
80
78
110
94
141
95
74
130
118
111
76
117
128
56
131
80
163
87
87
99
154
89
73
96
127
80
89
102
76
109
80
82
154
82
115
123
69
80
120
69
121
107
102
101
80
91
136
87
104
95
197
87
111
101
60
103
78
154
98
94
72
64
104
69
77
56
188
72
99
136
151
60
110
112
117
104
154
69
91
67
113
106
96
151
107
78
93
69
87
99
91
106
114
110
120
119
88
80
69
110
96
140
69
106
131
103
78
99
80
92
127
175
124
91
144
137
87
139
121
109
76
128
120
133
131
119
164
69
130
97
88
142
69
113
185
138
75
119
69
133
125
142
106
87
95
110
106
89
105
154
107
127
64
154
143
146
100
128
128
113
138
109
99
101
121
114
199
134
80
110
80
112
80
175
96
119
125
117
113
147
78
87
89
134
107
88
154
52
94
175
69
74
128
76
151
101
69
120
88
81
69
154
54
145
98
88
107
80
104
154
88
128
97
159
69
94
169
143
80
119
56
69
155
120
113
91
80
154
140
85
119
69
124
136
109
127
95
94
69
93
112
132
78
89
89
89
93
175
120
87
114
119
111
136
85
119
106
69
87
113
87
101
146
93
101
120
91
146
84
175
121
174
99
89
146
126
93
131
109
136
128
78
128
107
90
107
136
90
88
87
80
130
78
155
89
113
93
88
69
91
130
94
122
141
88
146
121
122
67
91
69
100
124
146
86
83
87
83
97
138
131
80
114
156
105
154
126
119
96
78
112
110
160
155
106
116
80
140
80
143
136
106
116
127
76
74
84
101
136
118
96
164
80
69
80
120
120
159
101
128
133
80
80
119
113
69
147
72
89
80
82
154
94
112
99
100
96
109
110
95
56
181
89
91
69
142
107
156
175
112
110
122
90
91
102
76
128
80
129
102
128
69
110
76
131
166
107
109
153
127
94
99
109
123
109
76
90
72
130
106
154
96
107
124
79
88
156
59
96
106
87
99
76
119
110
183
156
107
140
133
69
136
113
175
109
97
109
120
113
87
83
123
80
175
87
97
69
137
138
76
108
138
80
89
118
111
156
108
113
69
136
71
109
89
94
93
89
113
174
76
119
94
131
107
69
107
82
175
117
76
104
87
80
99
107
121
123
114
80
112
103
145
87
154
107
115
136
91
108
88
120
114
104
104
124
83
99
136
131
88
128
183
156
80
106
118
87
120
92
64
87
106
99
136
122
110
69
146
127
107
107
151
107
69
80
85
85
92
99
85
115
137
119
119
99
131
103
97
107
54
94
136
100
131
199
134
74
113
138
106
83
69
94
136
74
110
109
151
76
128
80
80
93
56
103
140
103
87
80
80
136
118
69
145
78
96
80
134
110
153
95
136
117
109
54
87
101
87
129
110
127
141
101
75
78
160
127
69
69
96
155
175
106
78
87
78
156
122
80
76
139
118
88
122
103
136
69
163
78
106
117
156
117
95
94
107
137
175
117
128
117
78
110
124
93
87
113
98
127
78
139
88
104
83
120
119
104
119
146
89
154
87
199
94
104
120
94
106
102
89
117
87
119
107
69
80
87
78
93
69
127
78
94
79
99
94
80
104
80
107
134
117
131
121
121
137
107
175
100
164
106
78
101
106
78
120
88
118
87
154
63
93
80
143
134
80
112
120
118
80
64
104
112
100
151
94
74
148
99
120
120
145
80
107
89
76
115
102
117
69
87
69
80
152
154
85
69
78
151
134
143
110
69
154
96
80
93
69
81
175
118
85
147
119
109
124
92
121
107
126
113
175
93
52
145
112
76
155
107
145
64
109
93
119
69
99
93
94
52
104
94
120
115
54
109
93
175
121
80
175
120
167
93
88
117
89
143
128
76
89
88
81
151
80
128
99
101
141
117
78
78
66
134
110
87
76
166
69
100
80
183
120
109
154
106
69
110
126
130
88
107
134
110
74
119
117
134
132
107
101
129
104
136
80
199
119
89
75
69
88
80
88
154
112
88
131
76
152
88
125
101
89
151
114
128
114
80
113
138
107
106
80
119
109
80
151
136
88
118
120
154
85
93
76
140
109
72
88
156
136
85
154
151
169
166
175
91
80
92
67
89
99
72
106
90
135
80
78
131
128
113
104
78
104
69
156
162
197
106
128
98
52
102
85
114
128
99
100
126
80
80
172
109
93
124
162
52
120
80
69
88
80
76
120
100
69
148
78
91
124
69
121
101
69
87
78
153
78
72
69
79
99
87
128
80
76
92
129
104
69
165
80
63
118
117
102
94
110
54
121
76
69
107
136
130
69
137
119
101
120
111
64
113
104
72
109
69
107
97
102
136
118
80
152
76
133
102
93
72
78
80
115
76
107
126
87
134
100
72
134
145
112
102
155
156
80
115
117
175
117
80
125
132
78
119
100
72
94
89
69
87
109
136
120
78
111
111
93
69
136
67
150
72
87
80
69
175
69
80
109
80
155
78
69
145
175
88
95
99
109
144
130
142
118
76
197
72
151
115
104
107
110
129
87
114
104
131
147
76
103
147
102
76
104
123
93
94
88
93
102
96
107
93
71
137
119
74
80
99
155
69
130
80
114
75
87
145
164
80
144
96
76
72
56
69
127
128
88
93
106
78
80
131
145
91
143
114
78
78
69
112
175
101
80
143
43
91
76
76
175
142
80
89
94
80
155
78
112
88
100
140
119
80
88
95
85
109
76
127
78
129
69
144
175
76
127
75
123
102
89
101
112
109
107
114
91
80
104
128
101
80
69
69
121
88
131
197
69
67
119
142
112
106
111
87
69
80
131
78
80
117
128
127
69
89
69
80
128
96
148
107
69
119
52
119
87
88
127
101
107
80
103
118
107
119
156
103
121
69
72
109
134
155
109
87
150
69
72
78
147
101
115
122
120
72
156
69
80
80
154
85
69
88
109
175
134
140
80
80
80
76
115
87
112
126
89
108
143
119
111
69
109
162
54
80
78
78
76
175
104
155
68
94
117
132
154
69
113
136
89
94
162
76
136
128
78
107
91
120
143
75
93
126
72
69
72
80
111
119
145
80
162
138
96
69
138
181
85
80
69
163
89
101
66
174
163
86
117
102
140
118
114
76
99
78
96
78
154
78
67
80
128
140
80
154
112
102
119
123
80
52
80
163
104
110
175
121
69
131
56
106
91
80
60
104
79
93
87
155
88
59
162
110
137
135
110
175
43
118
120
117
128
136
78
99
104
156
125
120
80
69
87
143
124
113
99
119
80
154
109
119
69
89
137
80
147
175
104
149
69
104
103
52
119
67
103
89
110
98
85
69
96
119
69
129
83
110
154
80
87
110
183
109
69
89
111
140
69
69
119
107
140
134
138
119
84
76
113
78
118
76
128
154
87
76
87
113
69
152
107
118
128
140
87
78
89
148
107
127
111
123
154
91
113
80
88
52
154
119
109
134
76
99
144
117
94
69
111
129
80
89
107
120
120
80
87
117
121
104
136
197
107
76
69
69
174
76
87
154
119
121
104
120
76
72
80
130
163
175
74
104
137
91
80
131
89
119
89
140
88
148
114
80
107
160
143
113
88
124
109
96
131
109
120
98
96
87
107
106
96
109
103
80
109
76
113
78
175
93
118
78
80
54
122
89
94
106
146
88
120
201
154
151
116
152
101
122
130
111
94
185
119
91
119
129
69
128
106
67
104
88
104
134
96
118
88
136
91
175
119
134
197
87
80
106
183
133
110
102
87
185
164
80
96
157
114
71
132
199
107
106
87
88
64
107
69
112
140
143
69
118
110
57
80
128
106
91
120
89
119
99
123
75
89
94
120
140
78
119
100
175
84
69
107
83
109
88
111
134
102
128
107
76
94
87
101
115
175
94
156
78
111
88
175
80
80
87
107
78
123
113
130
151
100
121
76
107
151
87
136
72
87
128
107
69
80
88
87
128
76
87
134
69
87
134
91
96
93
109
54
99
119
115
112
98
104
127
91
120
94
79
87
88
87
76
121
115
110
145
119
175
87
134
69
181
153
78
102
52
80
76
72
104
137
80
104
209
87
119
127
120
155
145
87
88
91
69
110
108
136
80
145
119
76
175
69
146
128
97
80
100
95
115
136
76
87
154
102
102
69
131
148
152
82
113
120
120
80
69
114
160
116
80
91
119
124
110
76
131
43
117
72
72
76
116
80
120
88
163
146
76
80
131
109
69
69
150
113
127
106
112
99
134
113
129
117
76
80
136
85
96
78
118
88
151
135
119
87
123
99
80
91
121
59
136
115
87
87
154
96
117
94
156
115
83
69
169
154
119
78
87
92
137
87
120
120
98
115
125
127
80
133
69
93
78
87
119
74
80
78
107
110
112
116
93
117
80
80
90
81
148
175
104
94
54
93
181
112
159
197
80
89
137
69
137
99
78
132
137
166
107
88
120
90
136
76
87
119
69
109
109
87
78
115
141
103
121
155
140
136
78
120
121
80
123
120
78
96
102
121
80
54
69
89
76
80
101
106
69
115
136
107
107
74
76
117
103
154
80
133
132
124
164
175
92
80
80
117
102
69
94
76
127
155
77
156
102
129
123
145
119
93
83
111
154
121
140
119
111
69
85
120
148
137
160
98
127
54
101
156
154
109
174
90
125
104
119
156
99
174
114
115
102
124
114
80
99
130
104
87
101
80
101
80
89
106
93
117
76
97
87
93
119
110
78
94
134
145
120
136
120
85
117
160
115
89
117
96
69
109
154
111
88
128
106
87
140
121
76
175
89
119
154
80
119
69
106
82
80
81
137
78
78
175
80
122
115
119
93
120
80
74
107
88
120
133
136
109
148
126
88
83
88
98
56
85
201
113
96
80
87
93
121
118
140
92
120
100
78
80
72
122
69
110
96
75
128
95
85
80
96
152
87
125
54
136
91
69
153
156
80
78
66
87
126
103
78
80
134
143
131
146
69
144
54
112
93
146
97
78
136
174
101
87
54
76
117
124
78
175
161
104
130
113
76
99
127
152
85
127
98
69
132
80
117
56
155
82
101
68
149
175
72
156
105
80
80
80
80
76
148
201
120
145
104
108
149
133
80
136
89
110
136
123
76
106
103
78
102
115
89
124
124
109
80
110
115
80
99
154
87
64
95
93
106
69
120
85
71
140
120
109
69
99
120
156
197
114
110
157
78
102
111
80
89
131
80
80
90
96
118
79
138
58
69
78
80
93
164
142
87
114
94
85
80
101
77
54
70
199
69
119
119
113
97
119
69
123
72
94
80
94
69
78
54
69
109
109
75
94
80
175
69
106
78
72
134
113
80
103
89
131
155
52
80
118
69
145
78
146
69
91
87
69
94
88
80
89
74
154
155
93
80
114
167
69
175
76
123
80
164
80
102
109
82
120
120
119
89
120
110
78
123
153
162
119
110
80
96
80
72
79
133
100
143
93
60
155
106
89
78
115
155
107
99
69
110
117
118
114
163
88
132
93
175
175
80
99
120
69
137
91
124
197
137
123
109
54
80
112
109
80
131
126
69
80
120
80
128
119
119
78
99
79
67
136
113
75
69
80
169
67
66
114
80
69
107
99
131
95
69
85
88
119
69
107
156
169
134
80
128
87
164
122
152
101
107
132
80
129
87
69
88
80
142
66
90
147
80
134
107
120
99
112
99
133
164
144
136
136
90
128
94
113
85
80
134
125
120
160
69
110
79
148
133
85
99
139
109
69
80
69
126
92
197
80
175
93
96
88
114
134
87
116
80
119
104
107
87
102
104
120
134
175
112
88
88
80
69
87
91
126
94
114
107
80
126
137
131
127
54
111
175
155
54
128
75
131
142
104
78
158
103
87
106
99
175
79
115
111
80
115
90
78
107
80
67
117
88
69
125
111
145
140
113
52
106
103
89
87
104
72
87
99
76
80
160
151
54
127
109
119
131
80
71
93
154
88
100
89
124
69
120
99
100
121
80
151
123
106
89
154
120
145
104
87
80
67
94
78
107
127
146
93
121
119
76
104
72
154
99
94
88
69
78
94
132
127
99
102
109
131
128
80
119
175
175
131
108
147
119
94
111
103
119
128
127
76
88
109
95
119
138
112
117
80
119
142
112
134
69
104
104
87
122
66
151
72
72
96
104
118
101
151
134
93
175
134
80
56
103
54
140
147
80
118
117
66
197
59
121
111
72
80
106
156
131
117
113
175
99
89
78
115
154
94
69
98
118
101
110
107
78
122
112
78
110
87
87
133
130
89
78
143
87
109
103
131
80
114
80
80
76
127
119
80
185
69
121
154
98
69
164
87
91
129
69
92
134
78
100
69
102
154
80
131
101
80
87
69
111
151
69
113
87
69
101
117
118
131
78
80
88
76
109
159
148
106
157
96
80
78
155
116
101
57
131
112
104
146
122
113
69
175
142
154
145
67
103
106
72
80
121
85
131
109
94
92
106
79
80
123
113
113
80
92
54
137
121
103
148
87
87
136
128
119
69
117
147
156
101
124
162
69
88
119
140
131
66
79
90
152
99
109
89
145
96
119
104
120
96
80
72
104
97
119
96
136
106
87
103
112
109
101
129
154
87
119
136
117
69
111
114
101
87
101
80
156
94
89
88
121
114
111
101
89
74
100
109
89
78
106
87
82
143
101
110
118
127
110
156
89
121
76
82
73
119
97
119
122
197
88
107
67
52
87
107
72
92
72
175
102
112
110
79
96
119
131
80
127
117
96
76
113
107
89
154
66
80
143
72
106
78
128
67
93
134
175
117
54
113
93
89
75
72
154
80
106
69
148
75
76
87
87
127
52
106
145
175
99
82
119
133
91
132
95
93
95
113
122
93
52
201
128
120
99
106
134
78
121
76
87
131
119
120
78
80
87
92
92
106
111
97
136
109
124
118
151
148
80
131
147
76
119
118
154
69
80
60
137
78
132
175
52
119
88
102
90
66
64
93
140
69
117
119
69
98
80
93
69
113
133
150
80
80
118
54
115
76
87
110
108
112
52
121
91
113
91
154
109
87
110
58
76
87
128
102
120
145
102
82
119
104
80
142
113
114
69
98
76
95
197
130
99
94
137
54
115
69
80
155
81
101
72
106
88
87
96
120
69
102
87
122
103
88
89
107
66
131
133
66
141
115
80
101
97
80
134
103
121
90
87
111
78
95
80
131
106
119
197
127
175
80
69
69
169
114
119
99
96
78
151
87
133
133
110
103
162
74
69
56
74
155
95
119
111
120
136
110
163
128
134
154
112
101
87
78
134
96
139
145
121
101
128
124
113
88
73
72
72
145
78
175
128
104
69
131
106
73
129
69
93
136
115
87
80
80
69
52
108
112
111
129
122
94
131
131
120
109
110
100
110
103
88
138
156
90
109
101
98
93
91
87
115
130
111
79
87
145
120
80
154
93
155
126
130
99
52
69
109
54
91
100
131
82
90
93
78
99
101
175
119
145
122
78
151
80
102
52
151
87
89
114
102
97
94
54
93
132
106
123
69
94
78
87
138
155
69
120
175
76
117
175
89
80
69
74
80
83
80
116
72
80
130
94
124
85
69
136
151
64
69
88
115
118
94
119
100
80
108
119
80
107
80
93
93
113
69
137
82
91
83
80
96
80
107
80
140
130
100
120
88
82
124
74
115
80
80
117
104
80
107
87
131
125
113
120
102
107
130
107
136
112
88
128
127
106
80
124
110
107
98
95
135
111
60
101
69
69
69
109
72
100
85
69
136
60
94
110
117
166
66
69
133
101
120
69
76
103
146
80
87
140
72
78
119
56
134
148
136
110
76
87
111
80
72
107
140
103
107
112
108
101
80
88
143
87
69
134
112
163
107
93
109
96
106
69
89
72
89
101
89
183
136
80
151
80
100
87
138
52
69
120
80
99
100
72
43
78
96
69
112
175
108
96
79
136
72
132
136
69
72
89
111
75
110
130
76
69
107
80
80
56
99
146
140
78
69
126
107
149
87
156
110
80
109
120
52
120
126
130
99
74
80
106
88
111
117
134
79
90
69
113
99
147
94
133
94
112
80
80
81
101
101
121
89
111
76
88
112
80
85
146
114
133
99
145
76
138
69
78
80
123
140
130
88
106
124
110
101
143
154
156
134
110
91
94
99
69
80
66
87
104
77
96
104
78
112
69
119
131
145
106
112
137
69
99
112
69
146
119
154
80
83
119
106
74
88
78
94
119
69
76
124
94
76
94
117
163
72
78
88
92
154
109
88
107
139
83
144
104
69
132
78
131
72
80
88
101
163
87
140
128
104
101
136
71
87
85
100
131
80
72
110
87
76
131
133
119
75
128
130
76
136
134
121
154
121
123
89
146
127
110
103
165
99
94
72
80
127
106
87
119
151
119
93
80
76
95
121
104
97
128
99
121
121
139
110
80
136
78
129
108
101
99
130
155
151
120
104
104
134
98
115
109
124
119
115
99
106
88
119
144
143
89
113
104
54
111
134
107
86
130
100
78
69
121
107
89
80
133
80
74
140
87
154
78
94
78
88
80
158
109
175
138
109
67
72
110
99
162
145
113
122
120
76
119
76
96
120
120
67
104
128
119
76
164
99
124
124
175
115
79
115
87
69
119
113
99
131
143
88
115
138
150
134
76
95
80
100
109
78
106
116
175
87
87
145
91
69
80
113
69
154
126
69
69
156
88
78
89
128
128
107
111
72
90
104
94
103
156
112
115
139
163
96
123
112
87
87
100
76
69
91
80
127
107
107
117
108
112
96
83
69
80
131
80
76
76
136
78
154
69
104
78
140
80
127
132
131
107
104
115
111
112
99
78
154
112
80
134
106
94
69
76
128
78
151
88
122
114
118
99
145
99
89
76
94
124
112
78
58
109
113
71
78
96
120
60
110
122
91
88
128
175
80
114
174
80
117
123
110
141
91
154
160
116
87
90
72
94
131
115
156
102
127
164
131
120
119
69
69
76
152
72
78
113
69
109
91
139
112
72
130
118
99
109
94
209
107
133
78
109
88
156
99
76
85
110
52
87
109
145
125
117
145
140
76
96
136
150
90
80
110
104
86
133
94
69
119
131
136
80
112
100
132
123
110
66
126
76
120
80
110
80
107
89
98
98
97
142
175
100
175
89
87
91
95
117
109
136
94
128
99
92
152
156
146
102
91
80
127
56
123
132
154
103
80
94
74
69
136
136
90
80
87
72
94
85
91
80
89
78
121
69
134
112
133
87
69
125
88
151
109
69
80
69
140
109
114
117
119
72
72
69
81
78
119
135
128
95
109
101
111
148
156
76
80
69
94
128
82
131
106
137
140
93
74
106
54
76
129
80
87
80
154
163
63
80
122
76
99
119
78
114
181
163
155
175
117
106
119
87
83
118
76
78
80
89
109
69
80
82
62
89
91
119
137
69
131
175
67
109
54
121
91
122
175
69
69
64
103
172
120
87
129
107
111
119
90
80
120
80
156
78
112
119
163
128
78
69
134
117
99
110
98
140
97
110
80
106
80
80
128
134
85
85
156
120
75
78
109
154
80
146
76
52
125
134
111
72
69
117
107
69
134
107
134
88
78
113
72
144
122
119
111
96
52
95
113
102
80
120
151
88
143
80
109
126
109
137
69
127
115
155
111
110
58
121
109
148
78
99
119
76
120
76
80
87
80
69
94
56
209
69
87
175
87
130
78
75
84
69
69
80
87
136
107
89
59
76
80
88
106
147
150
79
113
120
119
161
69
63
80
120
101
154
111
121
80
80
118
88
89
69
166
76
88
107
118
128
117
78
69
120
78
76
137
94
156
104
154
74
146
123
80
120
199
64
85
127
120
80
117
172
117
140
139
140
120
151
80
121
75
80
74
100
132
155
76
110
102
102
129
181
109
126
106
80
94
124
96
80
183
144
128
90
78
175
156
69
69
145
80
175
112
163
80
144
106
83
128
101
93
80
122
143
134
183
99
119
110
82
103
80
109
107
74
121
111
142
131
93
117
80
56
121
76
154
76
104
91
87
121
86
69
154
101
117
117
119
145
139
74
93
104
116
134
172
163
144
119
109
59
175
140
106
88
88
99
94
105
94
123
117
76
89
80
126
75
120
68
102
87
74
114
87
112
109
101
78
116
90
136
100
56
94
80
69
100
69
142
127
72
115
96
67
142
78
75
143
118
91
145
130
101
111
112
119
90
95
119
93
133
145
135
157
69
69
132
111
119
96
114
67
80
96
110
151
89
128
76
106
112
88
64
76
113
209
109
54
94
87
87
87
69
96
80
80
118
120
66
129
106
56
71
79
109
117
110
101
88
175
88
118
144
105
87
69
79
114
96
112
98
125
107
136
104
92
114
56
163
69
101
136
107
89
134
140
128
87
54
136
114
114
104
137
99
87
120
120
134
128
112
76
78
117
99
115
87
80
69
71
80
93
127
103
148
164
80
94
104
78
118
119
119
157
78
121
107
95
121
89
79
80
80
105
108
59
115
80
88
104
105
69
112
117
88
110
118
107
128
78
69
80
56
96
156
125
175
133
94
118
163
110
110
69
82
80
69
106
100
54
94
78
111
88
67
75
110
106
82
100
79
119
137
100
78
100
125
95
121
88
149
72
121
120
115
87
87
74
154
89
76
107
169
109
86
120
128
95
130
69
101
79
99
96
117
76
121
123
115
124
78
119
126
136
197
90
88
136
94
94
69
80
119
96
110
72
160
110
101
107
140
96
76
72
101
119
104
148
155
107
128
138
101
111
69
175
123
125
164
154
143
95
80
72
87
100
117
66
98
156
91
119
78
66
80
122
96
120
52
93
109
154
119
78
111
69
134
107
145
101
104
110
93
107
72
102
87
95
137
122
100
113
76
87
98
102
99
104
87
133
91
87
80
80
89
130
80
69
76
145
120
145
197
126
85
76
120
113
88
69
99
134
127
109
87
103
106
76
156
78
92
115
85
121
89
56
175
121
147
76
78
71
121
94
105
144
69
102
157
80
134
72
96
76
163
80
122
156
161
122
78
141
88
76
106
139
69
89
76
111
109
91
155
94
97
54
91
69
107
163
137
175
134
52
102
154
106
103
99
80
110
136
69
69
91
128
136
80
87
80
76
134
109
197
127
136
126
87
128
69
94
119
140
89
134
120
122
107
120
141
187
78
96
137
137
124
136
112
78
110
72
76
128
119
111
106
120
101
128
94
77
69
197
76
110
80
137
80
107
91
113
157
150
146
140
80
102
120
110
127
136
197
103
120
99
125
96
76
76
80
134
136
131
137
111
147
96
78
80
106
95
104
94
78
87
107
91
101
120
154
69
87
143
112
151
113
123
106
147
119
152
69
80
148
69
97
140
80
86
133
197
122
120
154
87
175
87
76
57
122
132
148
56
110
146
129
69
87
146
80
106
125
156
112
78
109
175
96
125
87
136
103
166
154
74
80
80
80
76
175
106
94
113
76
78
82
88
94
69
145
117
99
93
145
155
127
145
133
69
121
89
80
78
147
69
136
119
88
107
72
89
149
128
94
93
87
80
120
185
95
128
111
127
121
119
126
89
109
126
151
104
113
144
100
126
114
123
69
79
143
76
175
120
153
152
70
113
89
119
113
151
175
175
105
113
120
90
99
98
113
117
120
145
88
146
80
128
107
121
104
163
145
80
107
143
95
128
104
97
107
114
106
71
79
93
96
141
81
117
99
93
88
72
155
142
140
102
72
131
110
83
80
130
175
120
74
115
80
110
120
72
80
118
80
126
112
129
85
109
96
132
69
199
80
101
151
160
143
72
81
123
95
106
69
69
112
98
175
120
137
69
140
117
128
99
112
129
162
80
78
110
63
116
126
129
101
89
128
163
80
101
136
122
131
69
84
87
89
80
156
120
87
73
87
80
118
151
162
134
88
103
104
127
122
93
137
80
88
89
96
138
160
69
80
80
106
75
87
94
126
80
109
175
163
104
74
78
90
71
87
136
80
147
96
145
120
113
175
104
101
107
94
128
134
69
107
175
100
109
187
69
80
123
113
84
119
112
91
107
87
114
80
119
122
76
100
74
112
128
72
107
128
69
94
69
52
93
121
99
163
112
99
69
81
102
104
69
151
107
76
126
89
155
69
80
88
69
96
117
142
114
76
80
113
127
175
69
76
91
80
107
78
76
78
76
104
102
69
77
99
96
127
131
74
155
120
119
94
137
110
87
128
69
139
56
148
113
85
87
80
109
110
87
80
78
96
85
91
110
154
80
102
91
80
110
69
80
80
59
80
134
117
78
113
89
88
146
119
104
128
69
89
94
128
78
80
138
93
157
137
117
106
76
87
109
104
69
110
74
69
76
88
103
91
112
128
111
120
88
99
118
128
104
96
113
76
94
113
121
120
119
122
119
80
89
117
102
78
80
103
73
76
113
85
120
69
137
69
69
125
175
152
134
134
154
131
102
69
69
175
94
111
87
87
69
80
87
134
88
109
113
123
88
99
120
55
78
80
94
71
107
80
83
136
93
106
109
118
140
116
89
120
101
150
156
146
121
87
80
172
128
137
95
112
78
107
80
94
80
54
101
96
110
119
52
80
120
107
175
99
112
103
110
69
160
146
187
96
141
80
134
140
146
88
90
156
151
89
151
119
80
76
96
108
80
94
58
131
89
134
113
120
144
124
94
130
112
80
87
110
129
106
69
112
87
83
98
69
104
97
128
90
90
97
107
135
112
151
118
69
89
69
87
163
110
124
136
88
120
54
69
163
85
76
82
157
66
89
107
69
117
80
80
69
163
91
94
115
80
154
142
90
175
52
78
175
136
99
76
69
155
104
88
88
136
119
69
80
109
103
89
80
119
148
121
114
69
87
169
76
80
115
127
106
117
80
69
100
87
87
113
124
128
131
165
80
87
127
87
94
103
183
139
119
156
121
121
76
72
85
80
156
138
197
112
101
172
80
58
141
117
69
80
156
87
69
101
117
126
142
111
103
108
120
104
137
138
67
69
107
78
91
143
106
156
128
122
78
109
93
112
113
107
125
155
74
120
69
78
120
186
109
162
80
112
156
109
78
123
120
104
91
88
69
78
142
129
126
76
72
106
137
91
165
117
138
134
105
134
123
87
99
114
197
124
110
69
151
95
85
139
91
111
111
80
80
140
124
130
134
128
113
78
85
132
112
98
80
87
121
109
52
107
101
116
115
93
111
76
154
143
164
87
93
183
128
80
83
87
78
122
67
76
96
153
78
150
113
87
80
107
106
67
175
113
175
52
80
91
154
91
72
69
78
119
127
88
113
80
109
154
106
69
80
56
80
122
69
120
107
201
109
72
197
112
197
69
116
72
120
80
148
80
96
103
89
134
80
88
87
113
134
78
131
109
89
80
78
69
89
106
127
72
128
105
128
76
101
96
151
102
93
102
85
112
128
122
107
80
89
129
126
137
112
83
135
96
119
110
69
130
156
128
115
80
154
128
93
52
130
78
134
78
78
88
121
133
52
52
87
87
93
69
128
87
59
148
101
92
115
106
122
114
80
132
151
100
121
110
126
80
121
87
87
103
69
54
104
152
151
74
145
80
132
114
128
109
80
145
80
121
117
145
175
116
80
109
74
154
107
115
89
69
105
119
100
96
163
175
82
87
109
119
106
104
87
154
80
96
87
126
109
52
87
154
76
110
94
112
101
87
185
140
154
175
177
118
121
148
117
107
72
119
117
87
121
72
54
72
119
103
74
74
119
89
136
87
135
79
80
133
107
69
110
69
109
122
69
121
94
76
69
58
102
100
83
72
132
69
146
104
119
99
56
60
131
69
87
78
76
120
76
112
118
98
88
72
87
87
76
136
133
110
87
76
89
87
90
83
157
69
127
151
133
131
78
78
80
94
76
80
136
69
79
58
96
128
75
121
110
80
107
112
96
139
117
75
118
133
91
78
129
94
119
79
75
89
74
76
80
154
122
89
110
69
137
105
76
149
69
100
127
80
140
151
149
146
128
154
80
111
117
91
120
107
75
83
80
154
131
54
87
89
87
100
114
78
76
124
69
101
120
80
78
84
143
119
126
107
80
107
111
69
128
107
107
87
78
129
76
100
129
69
129
93
88
69
165
107
114
134
128
76
89
69
101
87
128
113
115
156
69
91
129
137
115
155
113
69
101
87
78
121
104
128
121
94
99
89
187
94
71
54
125
113
143
121
85
101
69
99
118
112
119
166
107
112
107
119
94
130
175
104
83
88
69
93
131
131
136
102
102
117
134
76
87
109
107
76
89
82
160
88
136
76
123
54
91
80
73
71
107
143
117
140
104
124
69
89
119
112
119
134
133
76
87
88
90
175
128
88
91
114
113
134
72
111
137
112
80
69
111
80
69
161
127
137
99
54
80
103
116
109
119
94
78
112
129
116
96
119
149
80
107
142
109
69
175
121
131
120
88
72
91
141
80
94
104
96
109
163
112
115
76
87
119
129
88
69
127
104
87
110
80
80
94
106
78
123
91
110
78
80
71
127
85
59
91
131
120
131
100
175
93
80
69
134
111
121
78
138
112
112
56
134
148
96
117
147
80
113
107
148
131
138
99
52
157
80
69
104
87
111
133
105
148
160
163
143
69
107
134
93
88
111
69
127
101
136
121
80
78
66
107
80
128
125
95
101
91
89
67
110
78
69
92
144
197
128
76
111
131
72
187
80
154
152
175
102
140
104
87
87
155
72
63
175
80
114
117
175
124
72
56
107
111
76
151
142
88
69
72
112
113
119
127
102
80
87
128
136
121
137
119
130
78
80
91
129
94
100
87
155
56
197
74
93
76
93
133
87
107
139
87
117
118
91
66
66
87
89
123
80
93
102
88
80
113
118
126
126
194
94
87
88
104
98
148
87
137
110
87
80
104
131
82
102
145
87
131
89
114
85
113
118
80
72
146
128
80
113
102
80
80
88
59
107
76
78
102
122
75
90
137
130
87
119
80
137
98
131
107
119
100
146
112
80
69
156
88
130
119
104
155
106
59
76
139
89
102
72
175
120
78
109
106
92
74
69
119
101
101
175
107
121
151
110
88
151
162
89
80
103
123
119
122
101
106
93
121
89
127
151
121
130
113
103
74
85
87
146
80
69
87
87
154
155
69
114
103
114
104
141
107
136
112
87
87
87
80
102
74
163
72
118
78
100
85
117
76
197
147
88
76
87
154
80
119
69
123
100
175
75
104
119
114
131
143
78
76
76
80
72
126
104
158
99
115
120
115
69
80
128
72
197
156
69
175
136
155
80
129
93
123
93
89
136
127
80
199
154
98
125
43
72
76
120
76
99
201
156
76
87
75
120
119
69
82
156
119
129
72
95
87
89
154
69
120
136
115
78
78
80
63
76
76
131
163
120
151
148
109
80
89
99
119
130
72
76
67
106
119
87
134
88
123
115
140
96
154
113
121
88
66
120
87
154
104
123
107
113
89
142
114
215
87
99
67
80
74
69
99
115
117
54
117
89
87
100
119
119
123
121
109
82
134
101
95
78
117
80
76
148
119
99
115
87
69
134
122
92
146
76
106
201
80
81
121
69
81
100
104
156
166
70
62
78
131
106
131
78
127
123
145
136
93
140
120
132
76
102
105
146
80
80
109
185
106
80
134
69
123
154
80
102
115
107
108
80
96
78
88
176
114
80
185
117
110
120
115
78
183
69
72
78
69
99
106
80
113
96
181
80
104
79
123
145
118
117
80
72
183
156
174
120
93
119
78
113
80
89
69
84
76
102
103
87
99
136
151
175
117
114
154
124
109
80
157
120
111
146
121
101
69
145
83
144
80
68
91
117
80
107
107
144
109
104
120
80
154
143
96
136
110
136
76
99
133
80
110
87
78
91
125
87
77
152
127
99
111
136
85
89
78
121
121
134
87
80
100
107
69
76
137
151
107
104
134
137
155
87
69
126
114
134
104
163
154
154
140
120
112
175
76
127
104
54
76
72
80
52
120
140
89
88
102
120
92
78
100
80
112
80
154
69
126
110
104
107
126
89
109
87
91
129
69
146
90
128
117
122
109
69
99
143
107
143
113
85
76
96
117
142
69
101
69
80
104
76
119
136
125
111
72
84
88
156
69
102
69
69
87
115
97
99
145
124
197
89
94
131
88
80
69
78
137
175
175
72
132
106
87
121
131
107
69
106
110
119
87
147
197
131
156
80
99
103
78
119
112
85
118
94
80
106
69
122
85
78
134
116
131
69
128
107
89
155
122
133
88
73
169
106
96
145
113
119
126
125
80
126
119
88
123
80
80
136
135
120
120
80
129
105
128
89
120
72
87
137
156
122
154
137
87
76
175
110
155
120
140
79
101
80
94
80
152
69
63
112
93
78
94
106
78
117
134
140
119
80
80
79
74
83
119
78
108
119
128
94
80
152
119
118
175
69
110
69
122
87
88
119
120
80
160
103
119
118
80
99
126
134
84
83
80
111
121
92
174
80
120
131
81
175
80
129
72
118
119
151
56
132
128
117
144
90
88
69
101
120
106
137
76
124
79
69
94
110
76
96
128
72
104
148
115
175
80
99
120
131
64
104
126
76
69
78
144
82
78
106
104
145
87
88
80
88
114
80
109
72
120
112
106
123
175
183
89
147
134
43
87
94
117
89
134
155
123
80
81
197
80
87
66
151
74
107
67
119
87
82
80
124
110
100
73
80
106
80
94
85
109
97
98
138
109
123
78
76
100
80
152
114
175
85
144
175
107
76
104
99
87
133
87
88
87
175
123
118
142
80
83
131
87
110
78
80
80
113
88
99
119
143
147
69
114
80
56
145
78
121
69
75
87
134
175
163
69
89
67
52
119
110
91
80
175
117
94
76
121
120
99
112
94
110
78
78
156
87
94
87
69
87
185
164
80
99
110
126
128
128
94
93
136
69
78
79
91
87
106
89
59
78
87
112
155
142
122
136
80
69
80
80
119
69
96
109
128
154
104
143
111
100
100
88
120
112
112
128
93
141
136
80
114
136
111
148
175
54
106
89
102
115
80
157
101
113
100
120
127
80
87
138
94
89
92
99
88
106
136
154
117
101
107
104
66
174
160
80
90
87
129
148
89
69
104
78
80
80
159
112
69
118
80
120
175
95
72
158
201
121
121
54
124
197
94
120
67
78
69
134
69
94
80
80
197
132
80
110
72
80
154
125
107
69
87
78
118
78
109
110
95
154
120
175
157
119
136
106
109
99
90
121
102
109
125
106
88
97
143
163
131
56
98
175
78
91
87
131
87
119
69
69
113
121
94
78
119
136
126
106
69
104
120
87
94
103
68
154
80
106
109
119
154
147
121
87
72
71
136
120
56
120
80
110
109
95
130
72
99
117
101
114
72
78
87
169
87
102
113
114
151
80
127
102
151
155
110
76
119
80
72
80
54
102
109
97
126
76
115
117
119
131
119
138
110
93
148
130
104
109
80
80
80
115
95
136
87
122
134
126
122
121
115
78
62
69
76
98
52
146
113
74
80
154
89
175
110
107
155
76
87
102
98
78
119
76
127
110
123
155
80
91
87
87
96
123
112
187
96
54
144
175
80
74
80
83
76
89
76
112
54
107
109
69
83
127
78
59
197
80
80
56
131
69
111
118
94
69
129
110
76
131
89
175
52
104
69
95
94
89
136
120
67
76
123
109
107
78
107
131
83
69
152
107
89
78
201
105
78
95
69
89
121
101
107
85
104
89
127
76
138
96
183
80
109
76
103
89
89
146
123
99
89
112
136
99
91
131
72
133
85
69
92
119
91
79
103
111
109
69
120
69
197
158
131
80
154
80
80
80
69
133
120
107
164
154
183
122
76
80
76
121
128
117
145
136
175
76
78
174
105
76
87
91
69
80
69
166
151
80
104
96
82
140
115
88
74
144
100
87
66
72
100
69
99
76
76
87
66
86
146
119
87
105
128
69
89
138
78
72
92
96
80
91
120
88
52
119
80
80
101
79
78
106
80
136
80
107
104
101
128
86
87
115
90
111
111
137
69
136
91
107
128
131
100
103
126
107
76
107
113
106
112
166
123
139
78
87
119
90
115
89
131
91
175
142
142
175
94
56
128
115
120
153
99
113
83
119
185
78
82
100
88
78
175
96
175
120
89
128
136
119
87
128
76
131
138
104
94
125
129
115
54
115
112
78
85
120
64
80
80
128
197
78
80
98
69
113
95
87
143
109
102
94
124
99
112
89
58
113
76
107
101
144
137
115
118
121
75
80
95
92
131
120
99
121
75
133
88
143
76
78
118
78
123
146
120
69
109
76
69
80
80
148
80
88
80
100
96
56
99
80
76
175
140
119
80
128
69
128
78
129
88
136
89
123
80
96
80
109
84
136
154
76
59
151
78
194
69
74
80
101
69
72
131
131
87
121
80
136
68
154
76
126
80
63
124
141
80
78
106
154
94
136
69
69
126
140
80
78
125
109
143
80
83
134
117
80
67
74
143
128
122
181
120
76
134
87
114
76
112
121
123
175
138
107
76
126
113
128
149
101
160
99
87
107
80
79
98
136
117
136
75
92
115
88
93
132
80
117
120
104
43
122
119
91
134
101
87
128
43
120
106
107
119
87
136
89
134
99
117
119
126
89
78
100
69
87
87
66
143
78
94
148
98
143
80
78
141
82
110
101
76
110
118
80
143
183
76
78
121
69
78
128
69
88
112
88
183
69
83
119
117
116
109
78
69
175
175
80
87
76
140
162
109
80
163
76
117
76
112
90
121
111
117
175
89
88
118
87
107
103
149
93
101
78
80
54
43
66
110
175
89
80
71
125
118
69
100
72
96
69
154
80
99
99
108
119
139
119
120
103
141
88
94
76
146
76
154
100
126
78
175
118
87
74
112
69
96
104
94
156
134
87
119
88
88
132
110
69
94
94
136
154
124
106
94
101
107
111
80
110
120
64
120
69
119
127
160
78
80
119
80
87
76
124
134
111
76
104
93
89
117
101
149
85
129
141
147
134
87
120
80
127
109
130
93
111
106
89
80
149
110
69
80
124
94
145
80
93
102
160
76
57
175
82
128
95
89
84
80
132
197
104
136
98
109
117
156
113
80
146
88
107
119
126
133
131
94
113
121
184
72
87
88
175
109
93
151
156
136
94
137
106
69
80
80
163
197
107
147
69
175
134
154
89
78
109
120
113
94
140
121
66
154
123
69
80
145
118
80
109
76
80
76
78
144
127
146
93
120
107
112
181
75
102
128
99
94
69
78
143
115
119
110
123
88
85
119
169
110
131
106
175
99
122
80
94
140
107
87
107
121
56
69
117
96
140
116
98
120
120
89
80
75
94
124
122
89
64
131
102
123
80
120
120
80
154
155
120
107
72
95
130
91
67
104
157
143
78
175
94
110
83
118
91
83
76
56
80
80
117
118
197
78
80
110
110
127
119
72
123
112
120
120
143
59
69
87
80
109
166
143
175
72
136
138
78
120
123
89
113
185
118
120
118
121
92
104
110
151
110
80
92
85
80
69
117
69
128
115
140
54
151
114
110
129
119
76
69
80
110
85
101
89
83
119
119
153
87
136
112
104
95
156
76
87
80
78
99
145
69
80
69
76
87
76
113
89
77
107
76
119
99
87
110
113
76
111
124
79
69
145
120
197
87
91
112
117
119
134
93
145
93
118
147
76
131
124
151
87
69
87
197
99
91
113
92
123
124
136
136
134
87
128
130
144
164
136
133
107
111
43
148
151
110
119
111
69
85
105
128
73
163
109
80
87
117
89
83
87
154
110
138
120
136
119
151
69
80
76
117
85
85
110
175
126
96
156
123
138
97
154
144
132
87
145
120
137
96
163
107
154
150
107
146
199
110
100
148
107
76
78
60
151
76
175
99
102
110
111
87
113
54
154
141
107
109
140
78
99
99
68
80
154
175
110
76
75
96
128
199
152
106
126
115
80
169
88
151
128
109
123
82
157
80
164
112
78
72
134
175
156
132
119
119
117
175
90
155
133
69
175
80
96
107
121
156
69
80
107
131
99
107
88
96
69
121
69
78
103
96
137
175
129
119
114
80
117
91
76
107
87
78
69
99
113
78
69
87
92
80
67
78
106
87
107
88
79
128
119
64
83
109
80
140
89
87
91
123
136
109
94
93
80
130
146
154
178
110
80
94
66
69
78
175
175
78
129
144
134
87
107
78
89
166
96
164
78
80
147
54
114
119
76
112
93
128
119
82
161
109
175
107
153
113
80
87
80
103
104
91
96
99
154
142
87
163
112
117
69
185
120
110
96
96
134
122
119
119
96
146
74
80
80
87
69
88
119
94
175
120
88
114
131
111
154
109
106
88
76
80
122
69
56
54
88
121
106
96
80
87
91
93
119
91
127
80
80
175
69
67
113
88
88
81
104
80
96
127
76
96
103
71
110
107
187
120
90
80
151
80
126
101
115
80
87
136
87
150
80
80
94
87
127
102
85
138
80
99
113
67
101
128
76
100
98
128
75
137
83
88
69
136
119
107
145
80
107
59
104
107
78
107
119
131
80
88
110
94
116
91
119
136
113
89
106
91
137
63
80
128
93
81
127
91
80
143
117
78
72
113
76
94
150
72
115
88
76
54
154
163
140
80
96
113
107
94
69
117
175
72
119
118
99
130
109
109
106
80
109
107
176
154
109
69
80
80
109
123
99
123
112
153
163
102
137
127
69
69
103
162
123
131
82
78
119
87
199
80
137
129
140
78
78
89
93
76
175
109
72
113
96
99
78
72
104
89
154
93
126
101
78
89
99
80
69
80
133
185
67
80
76
144
121
69
100
156
136
69
164
115
72
120
155
109
144
132
87
76
128
111
89
145
152
88
99
87
175
107
155
142
78
75
78
78
100
136
98
89
117
112
80
92
87
155
112
129
78
78
119
134
75
133
117
134
113
115
96
154
99
118
99
93
76
105
80
163
152
76
154
160
87
88
121
72
67
94
118
171
54
118
109
80
101
104
140
109
76
107
100
102
120
143
113
107
144
154
164
80
109
131
113
138
89
81
78
129
120
87
146
85
87
175
74
154
110
99
80
78
118
115
142
78
96
144
94
197
126
88
76
122
89
121
147
128
69
107
163
52
114
78
132
80
96
115
106
72
89
54
151
121
69
134
98
54
107
83
80
78
117
156
137
88
148
115
107
131
88
193
175
104
96
75
99
78
120
96
80
90
66
143
175
151
80
120
80
89
98
80
104
74
114
114
142
127
57
107
131
78
136
149
94
146
87
128
78
78
112
133
76
136
136
107
154
69
85
127
129
156
80
69
119
109
98
80
151
112
155
115
128
107
80
119
76
89
154
96
94
145
123
80
78
119
181
143
93
76
112
108
89
69
197
101
154
80
148
134
76
76
69
80
107
112
80
109
78
80
78
69
120
151
88
111
106
80
80
134
106
110
89
98
87
110
175
80
141
106
152
112
133
121
121
128
87
106
101
107
128
136
101
104
136
104
87
106
86
151
162
123
69
113
112
141
88
119
124
69
96
102
129
137
102
76
54
175
112
160
199
87
129
117
56
119
89
146
156
106
138
87
82
122
116
71
96
119
130
69
154
94
128
67
126
128
87
117
82
112
76
76
91
80
69
80
119
154
80
127
80
104
106
131
157
93
102
107
107
93
88
113
78
156
132
69
75
146
87
133
131
164
80
69
143
147
56
114
155
113
118
113
106
93
88
119
69
94
118
76
110
199
80
121
91
151
119
57
105
118
114
129
151
101
107
94
127
87
112
89
72
118
89
94
117
127
163
157
95
166
149
69
80
114
76
119
134
100
147
97
78
138
87
183
119
139
89
128
151
79
118
93
109
175
78
100
110
148
73
149
138
101
145
121
111
93
147
96
132
78
175
67
120
76
128
52
93
134
99
119
137
76
91
104
114
112
87
106
78
113
82
175
124
89
134
106
122
78
87
99
113
174
110
115
88
78
96
96
118
136
162
137
154
76
109
130
119
154
76
91
91
69
110
130
119
102
117
80
143
120
87
87
52
146
82
166
88
149
107
120
120
119
119
105
72
109
104
151
130
102
93
100
87
88
109
119
80
131
78
122
119
89
119
69
136
125
128
69
80
136
128
72
96
109
85
145
107
154
148
95
80
175
143
54
88
91
146
134
156
107
71
106
78
167
133
158
110
149
143
80
69
96
78
76
74
134
78
127
87
76
94
119
76
89
119
80
74
148
76
110
145
96
136
73
149
98
107
78
67
89
43
75
89
127
117
100
78
148
82
80
175
112
126
100
101
78
139
72
120
79
91
104
143
68
75
103
113
80
76
103
87
127
120
106
101
95
93
96
136
144
107
76
104
109
143
106
76
109
128
103
116
134
119
164
69
72
136
63
112
120
141
99
80
140
114
117
136
104
78
69
59
100
106
80
136
89
87
94
181
160
119
121
99
89
110
127
175
80
120
85
87
120
106
112
87
153
69
130
96
117
147
113
87
112
74
69
76
87
130
99
151
129
52
76
52
112
126
93
98
72
85
172
58
118
175
78
91
93
117
112
162
134
107
69
101
95
56
69
155
175
80
162
80
149
98
134
88
87
145
109
104
94
94
95
80
120
110
119
79
69
175
87
96
154
69
99
197
69
78
112
122
78
120
119
117
69
144
101
148
87
117
175
175
127
132
119
144
88
99
121
108
134
103
87
163
113
78
119
151
140
80
115
138
89
98
99
104
148
83
80
154
123
103
94
80
72
80
126
80
76
101
87
121
155
98
102
99
166
80
132
92
78
80
58
131
64
89
57
126
114
124
106
157
119
128
151
69
101
127
100
93
76
102
134
94
101
107
76
136
154
109
175
102
95
129
106
119
156
136
119
121
75
76
119
69
69
154
114
89
101
76
95
175
107
72
118
87
148
130
110
119
69
140
80
124
100
138
80
128
80
107
93
115
107
92
156
106
150
166
80
96
114
52
116
107
69
136
76
69
109
136
88
95
141
72
155
126
69
76
110
99
87
69
103
66
123
94
91
137
128
121
136
199
136
80
112
80
78
91
101
154
69
119
93
145
112
99
126
127
161
69
69
110
109
125
175
121
80
88
137
88
104
96
79
164
69
103
76
75
75
71
130
87
95
114
146
133
128
78
177
78
131
117
122
96
120
134
83
110
172
102
146
140
92
83
121
148
96
134
175
87
89
99
154
147
117
115
100
78
80
123
119
119
133
69
99
126
74
144
100
112
197
64
69
106
89
113
111
94
134
119
96
80
75
122
89
154
117
85
87
149
136
112
94
88
98
109
103
87
143
139
125
154
101
122
132
100
136
127
83
107
72
69
156
69
93
100
137
78
87
104
149
115
97
119
118
96
121
99
125
79
104
102
144
80
87
107
92
71
78
98
120
154
94
83
132
154
127
88
96
80
120
78
72
111
69
95
107
117
101
120
80
109
119
88
109
106
117
147
99
154
88
99
140
197
69
122
122
91
80
145
119
118
69
101
80
94
100
157
155
74
112
143
94
124
88
99
79
96
54
87
129
110
54
67
76
91
72
82
87
154
142
103
90
92
78
129
107
91
120
98
69
135
78
72
135
121
131
161
76
80
85
128
54
122
107
141
115
69
136
131
120
136
91
108
133
145
126
84
123
110
120
121
166
94
127
69
140
76
78
76
109
137
103
136
87
80
80
90
99
140
175
69
128
147
99
131
110
76
80
117
80
148
151
87
69
106
117
80
118
131
117
85
72
117
52
175
130
80
94
183
112
119
69
119
69
152
80
80
87
76
101
136
78
112
197
80
175
112
126
77
101
80
95
93
96
113
104
127
177
76
106
89
80
121
91
136
119
99
120
78
113
151
117
80
90
104
126
136
163
147
83
72
133
118
119
101
93
113
72
154
87
130
175
107
154
119
120
69
137
113
89
129
119
89
134
131
54
80
117
131
134
105
115
112
98
107
113
83
78
88
76
121
101
81
121
108
56
127
147
66
117
80
80
163
108
69
120
125
128
99
69
80
80
98
147
151
119
145
138
122
127
76
120
97
156
76
118
134
120
107
80
106
118
94
122
175
80
134
91
132
109
117
106
83
96
76
117
88
88
91
74
143
87
90
106
80
105
89
89
72
110
90
80
134
115
90
124
96
76
87
134
78
89
72
136
69
119
90
92
197
119
76
69
80
112
56
132
128
120
117
92
136
99
75
80
117
87
110
101
146
140
58
106
67
117
143
147
99
120
93
131
136
101
154
154
94
101
96
80
76
128
127
154
144
145
127
87
133
69
107
175
87
120
121
102
107
101
69
102
69
84
107
151
88
129
93
80
98
90
94
88
160
79
187
120
87
131
154
136
123
89
112
108
78
99
98
69
129
80
99
128
80
74
113
69
91
78
131
92
78
80
106
151
109
96
89
93
119
111
106
80
174
85
125
80
145
96
72
119
115
69
69
75
80
74
93
80
94
104
99
56
87
56
58
154
87
69
118
78
121
99
104
119
89
67
91
79
88
74
131
134
111
140
88
120
89
87
83
69
114
76
109
76
118
69
93
133
87
89
69
90
76
107
76
119
78
107
94
104
183
106
138
128
123
78
110
121
123
87
112
128
99
113
175
120
165
115
107
100
117
67
163
131
80
131
135
88
137
155
143
107
100
101
154
148
91
78
125
142
100
125
107
87
100
144
74
80
107
131
75
127
117
69
128
56
69
120
104
146
175
106
69
154
128
197
146
104
139
119
108
121
89
107
112
166
175
69
120
91
92
156
76
80
115
95
119
133
91
69
87
120
128
80
88
109
89
87
107
69
69
94
197
128
88
72
66
87
130
148
73
131
175
128
80
89
120
88
80
145
69
94
119
112
69
129
93
109
117
80
136
69
169
76
142
74
183
169
80
107
150
147
78
119
87
76
174
76
115
78
138
138
101
91
110
76
140
135
154
151
126
78
98
78
152
78
92
69
98
80
110
78
128
114
134
127
119
69
110
113
98
137
76
156
163
87
119
100
78
106
52
144
148
109
119
88
119
52
78
120
118
136
87
140
99
72
87
146
118
87
145
120
76
127
117
80
94
74
78
113
56
109
120
69
156
122
94
120
108
115
107
140
136
120
109
87
67
69
108
119
101
122
143
80
99
69
91
120
94
94
78
121
123
119
120
91
142
91
119
140
52
87
85
75
147
106
111
95
140
91
146
112
80
137
69
80
130
106
69
72
120
76
140
69
89
197
155
110
91
78
94
131
69
80
80
88
115
128
110
91
109
72
69
112
138
87
175
101
148
199
127
139
154
134
97
121
52
99
134
80
110
91
143
201
98
119
118
74
99
112
94
104
100
126
88
117
89
156
139
119
118
56
97
122
128
112
69
85
69
120
115
119
164
104
69
89
119
110
146
80
69
118
80
137
81
109
110
137
69
159
80
103
69
133
76
107
107
154
78
87
143
52
79
117
76
69
134
80
128
146
120
80
93
89
106
69
106
103
128
109
80
134
96
95
197
78
152
102
109
112
74
64
79
96
139
72
145
106
96
152
122
99
117
140
102
123
76
80
80
114
121
72
132
80
76
78
153
145
96
135
64
87
87
74
120
121
84
80
128
102
91
82
69
87
85
121
89
119
101
115
80
90
136
124
104
107
101
69
76
76
146
101
78
110
72
154
101
109
117
160
78
92
128
101
145
136
107
143
96
128
120
89
121
108
128
80
72
121
128
150
69
121
109
107
175
104
69
96
88
119
99
110
80
107
154
114
146
88
127
80
107
160
107
112
76
123
114
87
80
131
129
109
87
75
110
99
148
175
80
88
107
119
146
78
80
91
146
76
91
88
102
104
120
110
87
120
131
107
99
121
83
99
123
76
151
124
107
109
164
100
110
175
115
76
128
63
94
134
175
136
123
94
151
76
73
145
163
119
143
152
79
69
119
105
119
69
69
101
136
110
64
100
112
156
113
120
111
108
104
127
94
78
136
154
133
143
104
88
104
131
152
77
69
134
88
89
75
76
87
107
94
99
142
119
90
89
147
76
58
54
121
78
151
162
93
134
113
124
107
117
130
113
68
123
151
119
183
69
134
106
94
91
123
83
78
90
156
98
94
115
106
99
79
96
93
75
94
145
69
103
103
126
80
103
136
94
112
129
146
80
120
117
80
69
151
89
120
149
109
76
78
106
134
154
110
80
106
88
107
107
111
126
78
106
89
96
93
154
130
89
141
104
115
87
99
117
78
144
121
54
69
87
89
99
117
87
112
126
114
146
148
145
99
69
117
109
109
134
87
112
87
106
87
136
127
175
91
80
194
88
88
66
146
88
120
99
80
88
117
117
109
107
87
94
146
102
140
102
85
91
78
138
132
69
109
69
69
104
106
99
134
78
120
102
146
144
94
136
88
132
102
113
76
134
131
197
109
90
145
177
120
111
112
94
69
128
87
54
78
72
69
108
88
91
69
134
80
133
108
156
88
88
89
110
160
156
132
72
69
94
155
99
99
88
134
106
69
114
72
102
110
140
107
80
129
80
78
117
98
80
112
148
119
88
78
106
124
80
128
80
146
88
119
67
94
69
80
112
130
113
99
99
69
88
149
72
93
120
163
80
94
106
154
127
106
109
76
175
154
69
91
98
54
112
78
124
119
93
140
141
119
69
96
142
88
162
76
175
120
131
99
69
80
87
78
112
127
131
58
134
69
125
109
89
116
121
87
69
75
125
154
78
96
119
87
102
80
131
131
99
156
91
80
80
87
154
76
69
94
93
69
98
112
134
76
89
76
80
120
89
110
69
114
87
87
75
94
87
80
116
106
140
69
112
87
78
73
129
80
99
175
99
175
72
131
80
151
131
154
85
80
80
120
69
66
94
144
125
101
154
89
107
69
127
175
80
154
143
80
74
127
78
128
85
119
117
69
95
74
101
112
87
121
80
90
80
102
146
52
83
109
92
146
158
109
75
92
117
120
151
72
107
124
119
110
90
78
123
80
164
118
131
113
75
101
88
121
134
138
71
114
125
80
119
148
120
103
145
110
94
87
121
137
175
64
110
67
69
109
43
87
80
104
156
72
119
148
150
154
106
106
102
94
78
141
121
119
154
118
109
94
78
104
69
91
138
72
101
81
69
115
156
164
134
138
175
174
175
122
91
103
109
69
109
99
69
96
104
88
76
54
117
90
109
99
66
89
113
89
90
120
121
87
142
78
89
155
96
94
88
156
106
80
154
120
128
128
80
156
80
95
54
94
107
118
106
104
107
111
118
78
69
89
113
142
160
76
119
88
87
78
114
156
76
76
120
114
144
120
120
60
99
109
87
128
104
130
107
106
81
117
146
89
101
112
127
156
69
120
101
71
83
96
76
111
106
160
145
56
96
78
109
87
102
69
154
110
92
104
102
197
69
80
99
112
122
110
94
101
83
129
72
128
72
154
104
116
152
80
110
88
80
109
144
140
69
156
137
82
90
175
106
80
113
87
99
114
143
80
119
143
121
89
87
154
106
114
82
87
109
96
72
100
89
75
134
94
88
80
123
132
80
93
110
117
87
106
72
107
194
107
87
112
197
88
78
93
87
122
109
69
114
75
78
88
79
69
131
80
74
88
105
117
77
56
137
76
87
80
52
87
80
104
87
108
92
106
125
118
80
85
88
107
76
87
69
101
133
76
164
69
154
82
119
110
99
80
134
117
87
111
85
78
110
74
126
90
87
89
83
107
119
89
117
151
76
87
80
128
94
74
80
136
132
87
69
93
77
94
100
119
72
88
76
92
117
111
115
120
175
142
94
87
112
119
156
120
107
79
80
123
88
100
156
175
175
137
107
74
157
95
80
123
113
80
137
78
98
95
90
155
101
109
156
119
108
85
109
106
163
175
76
119
118
119
118
78
145
112
119
154
80
106
128
137
69
109
150
80
76
138
93
183
110
95
76
67
127
80
113
197
89
148
120
96
80
107
87
118
69
131
146
120
156
110
85
80
140
78
109
89
93
107
78
80
113
69
125
139
87
117
69
154
135
104
87
175
115
80
113
104
100
111
87
96
80
102
96
93
80
140
88
136
119
94
107
87
117
128
115
110
140
101
100
87
120
88
90
71
107
94
110
75
102
80
104
72
113
69
80
175
141
99
111
98
130
80
162
110
100
118
90
69
165
136
119
154
83
110
145
78
143
69
127
135
76
148
122
119
110
76
111
120
106
151
89
106
118
88
72
107
85
148
119
154
92
69
136
104
128
82
120
93
105
74
175
127
78
120
100
114
69
64
144
149
78
135
107
166
115
120
151
94
67
125
88
175
136
99
120
163
69
78
107
92
78
106
80
99
58
107
143
119
138
95
80
151
91
107
185
80
88
80
96
113
113
76
83
143
69
151
132
78
113
80
134
136
194
127
69
56
109
101
104
80
119
69
85
120
153
127
76
96
104
103
110
87
87
102
69
94
104
131
152
80
131
76
76
88
92
163
96
78
69
78
118
110
146
98
134
96
102
69
118
80
105
76
100
54
89
154
104
136
145
107
88
143
80
96
72
96
88
69
169
124
138
183
80
52
78
76
114
112
150
85
201
72
87
97
76
131
74
64
87
74
109
162
80
90
87
88
117
78
131
97
104
174
119
107
166
134
110
94
107
134
119
78
96
101
132
175
80
52
69
137
125
80
128
88
105
131
154
132
82
80
78
154
175
76
69
113
76
69
96
113
101
85
80
117
69
91
78
91
128
127
126
117
88
109
89
148
104
74
115
127
69
114
88
163
80
131
121
94
107
119
76
141
95
72
90
69
69
91
99
80
156
104
109
100
109
109
110
96
91
80
156
110
151
87
88
130
89
80
94
117
85
96
94
118
72
130
89
76
136
154
95
88
91
175
80
72
151
78
87
80
175
115
113
69
158
102
88
80
133
98
83
80
87
69
154
80
131
122
101
140
80
109
110
89
120
84
117
146
107
87
113
136
134
120
99
117
80
109
76
99
99
151
56
133
69
76
93
80
156
80
80
85
104
110
94
87
80
110
96
134
134
69
124
76
69
83
83
88
69
154
72
124
109
69
66
163
113
123
52
119
140
80
103
135
126
91
94
137
93
154
69
176
140
76
80
78
80
137
101
94
112
143
76
78
141
175
69
163
110
80
119
123
87
72
69
94
78
137
80
88
110
121
99
86
85
102
143
89
107
76
101
93
127
80
175
121
67
69
78
72
83
74
78
140
94
186
78
124
103
75
80
109
54
145
142
99
104
93
80
80
80
83
91
69
69
104
88
99
76
78
100
80
87
87
80
69
146
120
109
94
80
54
131
80
104
112
78
80
69
127
162
69
140
69
129
112
76
110
112
89
104
89
155
117
120
151
104
107
87
101
156
110
88
93
131
104
80
109
154
154
119
130
94
80
131
113
136
64
134
69
78
146
128
80
80
107
76
165
113
103
105
124
109
87
197
87
87
91
87
136
78
113
121
80
76
136
154
89
105
142
128
139
85
88
67
89
76
69
83
143
99
87
106
124
95
126
145
110
88
86
164
69
144
127
80
90
95
69
91
104
134
99
144
101
155
119
99
114
106
80
148
125
87
69
93
99
99
99
174
80
83
93
100
134
137
98
80
120
57
106
69
106
67
84
80
107
163
76
112
106
120
78
94
78
80
83
115
136
93
107
76
165
76
109
94
175
96
56
121
87
157
101
172
119
117
80
151
88
115
151
130
175
112
119
112
104
155
80
117
89
154
78
89
80
80
88
78
112
113
107
74
117
151
80
120
74
76
131
76
80
90
197
151
80
52
175
88
104
104
107
99
80
108
117
69
78
197
78
52
75
111
131
69
113
94
154
74
113
69
117
69
144
89
120
89
197
134
171
112
96
69
136
110
137
123
157
69
115
136
93
144
141
69
54
134
78
123
69
121
117
122
110
80
108
121
119
110
99
80
126
87
93
169
69
123
104
74
69
107
80
150
132
154
132
129
78
154
69
69
69
91
109
96
72
80
69
87
89
69
124
87
87
76
80
66
115
83
94
100
76
91
103
156
80
128
89
69
164
69
107
101
164
131
146
99
127
88
93
122
69
69
80
107
80
149
80
120
78
109
117
155
64
69
117
88
69
106
87
131
121
107
73
128
94
117
83
152
147
93
106
109
117
126
144
156
107
98
87
80
103
87
87
87
126
69
145
110
109
116
56
69
87
117
80
148
89
129
144
52
88
83
69
112
80
89
72
115
88
134
92
132
152
163
87
120
69
69
80
107
119
140
134
100
131
80
87
156
56
54
96
117
90
80
117
76
119
113
128
106
104
78
112
80
96
102
110
133
154
66
69
69
132
101
107
72
69
134
78
171
69
175
69
109
80
72
94
158
131
76
93
76
121
99
93
151
74
89
155
115
104
43
76
69
175
124
78
80
96
89
119
76
83
125
135
155
120
138
80
119
76
101
128
155
120
127
72
111
80
80
127
89
76
96
175
107
136
136
106
69
94
79
127
58
113
94
148
88
131
88
106
101
151
120
117
80
154
121
156
126
110
124
110
96
111
72
131
128
94
148
131
118
96
201
69
157
80
88
102
151
154
131
140
112
120
175
120
71
117
74
131
80
72
110
117
146
142
69
157
80
123
80
69
99
80
89
117
80
96
110
96
146
105
109
119
154
78
145
91
87
197
56
115
117
69
109
123
78
136
107
78
94
115
72
111
118
98
69
129
78
80
80
104
74
89
147
76
107
159
154
80
69
101
109
87
142
126
136
96
110
134
78
93
119
80
76
96
197
131
175
90
117
119
109
154
113
94
69
108
94
113
88
138
111
131
156
155
87
69
122
83
117
88
110
94
104
156
105
80
80
99
78
125
107
120
197
134
87
120
118
59
102
136
129
106
94
88
52
80
120
142
117
92
146
86
69
100
110
117
87
128
87
100
82
110
157
103
87
106
69
117
147
132
106
175
113
110
128
107
87
197
69
121
79
99
147
69
107
109
131
95
144
99
201
69
57
87
87
69
94
79
76
140
89
136
163
120
80
88
127
78
123
64
160
80
94
54
112
140
143
87
99
143
155
129
93
120
145
113
74
119
137
92
120
101
107
107
134
94
104
89
118
134
80
89
119
121
74
43
91
122
69
78
78
80
72
128
69
128
175
164
76
110
104
105
76
99
120
107
142
67
140
112
87
78
80
85
69
120
175
107
81
109
136
117
128
113
96
78
175
117
97
95
92
119
84
164
174
115
99
80
128
126
102
156
165
148
151
104
143
91
99
144
96
87
132
80
151
112
113
69
131
119
93
119
136
131
96
76
134
72
140
80
119
93
104
119
175
134
140
117
110
71
112
131
160
119
148
136
69
87
72
80
88
197
201
78
93
90
72
154
144
94
76
107
215
82
102
139
130
120
122
112
76
58
128
114
134
175
174
87
143
99
80
107
104
91
119
107
74
154
104
106
136
104
106
87
99
89
78
137
74
87
78
96
88
128
76
154
109
106
175
76
117
136
107
91
76
109
136
113
149
83
87
142
85
80
137
139
101
80
185
80
151
134
80
151
85
69
104
154
107
106
118
69
104
99
131
90
89
134
126
128
69
99
87
197
136
89
175
87
100
109
69
122
127
115
77
150
112
91
89
140
94
69
91
82
80
69
89
52
69
117
175
120
128
139
89
123
102
133
74
84
122
109
112
89
118
147
121
140
87
122
128
113
148
100
69
76
88
69
80
93
119
117
87
132
154
101
69
128
145
115
120
108
94
128
147
140
97
88
79
95
140
76
119
101
119
94
174
69
80
80
88
143
120
128
77
76
121
119
80
95
128
136
127
115
104
175
87
137
91
80
102
101
80
175
74
69
93
154
78
118
104
106
143
175
107
163
155
94
95
87
133
88
87
154
152
136
155
141
96
119
136
69
87
87
93
166
128
137
175
194
99
110
78
151
119
117
69
117
103
110
69
78
113
98
109
123
111
80
82
156
106
118
154
151
88
101
102
87
136
93
74
90
96
159
175
145
87
109
80
126
147
111
117
157
69
132
131
120
147
134
130
98
99
71
119
160
87
63
119
76
69
87
145
110
121
118
89
81
80
111
119
185
79
131
133
80
78
140
117
197
197
94
93
88
99
149
113
175
60
89
148
116
69
91
151
88
117
69
154
154
80
134
120
197
99
76
136
156
113
94
121
72
117
113
113
80
151
81
66
127
99
128
142
80
94
80
127
110
119
82
132
80
54
91
87
72
133
74
109
69
64
78
96
109
156
69
119
154
197
68
105
145
80
96
124
76
145
119
69
88
121
80
119
106
80
143
100
102
144
80
69
140
88
87
94
100
94
99
104
130
112
69
143
117
102
88
175
131
89
104
128
85
85
74
74
136
80
138
80
80
76
78
93
119
139
84
78
112
128
120
69
80
118
151
121
69
109
148
136
132
126
99
94
93
90
111
146
143
74
114
109
89
69
146
88
109
112
154
119
83
69
119
135
93
111
111
109
105
54
91
69
96
71
130
152
150
151
91
69
104
71
80
128
107
107
120
87
95
102
137
119
175
117
106
120
96
154
126
174
87
99
80
98
76
113
197
80
103
97
69
78
52
136
120
80
121
93
78
80
89
80
127
118
125
124
120
78
103
104
88
131
147
110
88
80
137
121
74
99
104
89
148
78
104
132
87
90
106
80
80
80
80
87
138
69
99
117
112
109
134
76
87
94
66
128
128
121
150
91
128
175
80
156
74
96
87
104
164
93
119
119
89
175
69
117
76
103
134
106
80
164
106
101
115
128
102
146
175
175
175
110
175
69
153
145
107
80
69
87
148
102
106
92
123
127
91
134
138
83
124
146
151
175
127
78
143
89
92
116
119
94
106
115
69
165
112
87
137
101
120
80
96
80
96
89
78
74
136
175
78
137
110
123
107
109
71
156
131
129
119
95
66
56
96
110
120
146
123
110
119
201
76
78
106
124
82
175
110
113
87
134
119
147
134
87
129
113
128
160
118
107
99
80
118
78
128
80
80
74
77
150
152
123
112
188
110
107
99
127
119
109
124
175
93
115
151
100
127
76
100
88
162
80
78
58
141
102
185
115
76
101
80
208
119
99
94
73
128
87
89
126
80
69
175
90
154
80
104
85
80
75
72
155
125
117
96
128
67
120
117
84
125
94
131
110
100
69
80
111
96
93
119
88
123
112
83
89
96
112
120
88
98
127
174
156
111
76
80
156
100
80
112
117
76
158
156
142
101
154
153
128
80
109
52
136
69
147
87
109
121
128
82
128
58
127
130
102
69
107
80
104
99
80
80
101
128
121
80
134
175
113
87
197
136
119
78
87
69
197
160
89
73
83
78
87
90
136
95
119
197
128
111
89
83
90
102
111
110
128
80
120
145
119
96
141
80
103
88
78
143
140
73
132
119
101
74
110
113
89
80
78
126
91
146
111
94
109
76
117
82
117
80
178
88
124
121
175
94
131
119
96
175
175
119
103
80
89
69
69
99
137
76
78
134
89
69
146
145
119
78
96
120
146
137
76
52
88
76
80
127
88
89
112
86
113
98
126
80
80
69
160
119
88
104
87
151
99
78
54
99
131
111
141
87
69
87
87
175
87
113
148
117
67
100
118
94
146
131
136
127
100
154
128
111
145
154
111
76
80
100
147
91
69
64
133
110
94
76
110
154
72
154
127
115
80
87
157
73
134
125
99
123
134
69
80
107
80
149
120
88
123
94
90
87
154
100
110
80
93
89
69
69
101
104
128
152
80
107
76
76
133
69
109
127
80
106
111
87
114
129
131
89
89
107
118
80
118
103
80
76
124
131
54
107
155
115
156
79
109
122
89
100
92
138
80
118
109
175
154
89
89
78
143
128
102
66
69
110
85
113
126
135
99
82
175
76
78
123
113
78
87
88
88
154
142
137
88
151
69
120
87
87
148
76
128
115
66
110
139
100
109
111
80
63
69
69
175
108
80
99
150
75
110
124
134
113
87
175
79
102
113
76
93
106
117
102
74
121
80
78
69
76
155
107
107
86
134
116
80
80
120
109
107
59
107
78
68
134
69
89
167
136
104
87
107
82
80
113
99
120
80
136
132
109
112
94
140
134
87
101
89
149
58
143
134
110
78
117
87
67
107
78
121
113
119
121
69
94
74
76
80
131
121
138
99
121
112
76
108
106
154
129
127
104
119
133
140
43
100
103
148
80
77
83
80
110
117
69
83
144
102
147
175
80
99
92
110
87
88
80
128
107
72
131
118
140
109
87
87
79
78
117
128
128
112
145
151
147
118
107
71
128
76
117
175
133
91
112
76
80
80
80
130
134
154
98
134
107
87
134
96
106
69
145
110
98
121
134
72
98
106
115
88
134
119
80
125
52
71
93
175
140
119
139
104
131
136
89
56
94
80
118
87
69
124
80
85
80
131
145
175
106
112
119
78
145
151
80
87
148
110
96
79
83
113
126
67
107
69
120
96
116
79
109
110
113
80
110
118
72
123
120
78
94
117
124
106
136
104
162
96
107
93
107
130
72
111
88
90
126
80
129
56
106
69
124
175
89
91
140
106
175
116
144
128
175
141
143
98
78
110
115
80
130
94
99
100
56
163
69
119
106
117
174
151
87
69
104
156
87
123
69
83
98
154
163
88
137
59
129
87
127
112
142
134
175
112
94
69
107
154
152
110
89
128
80
99
136
88
140
100
114
76
80
110
87
146
136
133
151
114
99
78
99
128
112
80
80
76
120
91
108
88
127
106
109
110
197
80
98
115
80
87
154
91
120
76
128
93
107
134
104
69
69
67
80
131
54
80
80
76
103
129
78
69
101
43
104
107
116
94
113
78
128
103
128
72
135
107
94
75
66
132
115
85
113
80
118
154
163
80
94
107
155
154
87
89
172
87
140
197
119
151
151
69
87
78
107
157
110
80
91
118
102
106
87
144
121
63
76
69
80
80
80
87
104
145
175
124
127
128
99
159
136
76
69
76
117
136
164
140
56
131
80
113
120
88
107
119
88
110
108
175
56
76
101
106
80
74
140
80
110
80
126
69
109
175
69
128
109
111
132
109
93
84
78
99
102
119
107
119
87
175
96
76
113
128
76
154
91
128
76
120
175
74
156
101
128
78
147
102
69
147
87
154
78
80
104
146
96
78
107
110
107
91
120
120
109
80
89
160
119
106
78
63
115
102
128
80
89
101
106
110
80
119
76
104
143
147
89
136
109
112
134
107
197
78
140
120
109
66
76
99
113
106
109
80
107
112
69
129
121
117
94
127
107
87
90
102
117
129
120
87
132
131
111
125
125
89
112
112
134
94
128
102
78
87
156
137
107
78
130
87
154
83
120
80
67
78
60
150
87
69
80
119
91
117
82
106
102
78
76
88
154
145
66
109
79
88
99
119
69
87
142
91
80
76
109
88
74
93
102
103
80
99
147
94
122
87
110
89
125
85
131
93
76
107
155
107
146
84
106
102
146
79
128
87
80
121
80
133
152
131
93
123
78
87
113
187
69
127
109
88
159
80
117
156
103
138
112
80
80
122
151
131
121
197
165
104
85
112
128
112
121
125
112
107
134
74
175
122
80
122
84
82
123
117
52
100
131
69
96
88
54
67
136
104
120
128
80
131
131
80
102
76
118
117
109
136
72
78
80
138
100
78
96
80
136
136
119
160
143
88
125
140
107
119
107
117
147
145
156
54
126
88
136
107
78
103
85
128
100
175
137
110
160
115
113
140
140
98
141
134
138
69
75
134
122
143
78
80
97
138
98
95
52
136
91
148
154
78
80
85
107
128
80
113
106
79
87
114
64
107
88
104
69
154
138
149
93
112
87
56
95
120
78
76
87
124
66
118
78
80
197
120
119
94
90
87
69
130
87
127
88
197
80
100
69
141
145
104
112
136
119
69
104
104
80
88
69
91
154
132
162
120
83
99
80
95
128
93
88
88
80
91
114
120
99
110
121
127
78
125
119
80
76
145
89
103
134
85
69
69
78
131
88
80
82
136
91
88
151
80
152
140
78
117
67
133
80
140
106
117
113
80
141
132
72
60
115
115
69
122
90
109
89
140
115
137
131
120
136
78
154
175
87
80
140
96
69
69
80
91
136
87
69
175
107
69
117
150
111
72
132
115
69
121
74
69
121
175
123
91
128
104
100
175
115
137
99
98
125
127
94
95
127
85
80
52
78
118
119
76
102
121
114
107
104
175
119
125
54
163
83
103
131
109
80
69
125
80
118
80
93
69
123
163
83
163
109
140
115
69
148
126
130
110
120
107
76
80
100
80
117
78
88
116
137
164
103
80
145
140
107
69
69
102
99
54
80
89
85
87
124
131
121
87
149
139
80
115
121
134
107
43
80
69
163
132
107
94
145
80
128
120
155
93
78
112
108
120
69
76
71
90
87
159
136
106
175
121
126
175
163
87
69
69
76
76
69
119
120
121
154
69
174
131
69
117
86
199
69
109
117
69
124
120
154
201
125
134
156
127
102
69
109
109
107
108
129
69
120
80
89
76
74
88
131
87
69
131
107
117
81
99
82
83
97
156
117
133
69
112
86
95
151
76
69
88
122
132
122
119
80
78
64
66
107
119
87
87
140
69
110
80
131
80
87
125
76
80
80
87
76
124
125
69
56
93
97
90
117
99
92
183
133
72
98
66
76
157
197
101
87
110
54
99
80
155
76
109
69
80
78
69
85
156
102
80
110
76
88
128
136
156
80
131
93
87
112
104
175
72
85
119
80
80
87
175
102
80
76
80
98
80
99
80
102
107
80
128
119
120
117
176
87
80
80
120
99
175
150
64
80
78
69
131
87
98
97
175
156
137
69
87
80
140
106
93
99
80
43
90
84
186
107
144
69
76
153
172
148
87
52
80
131
128
109
72
58
80
195
104
103
107
67
93
159
147
80
129
88
109
101
90
139
154
72
137
107
175
103
93
80
85
69
132
139
101
94
76
128
93
149
54
175
99
121
175
78
91
76
92
136
54
76
76
105
197
145
197
106
69
69
86
119
78
136
88
131
127
80
78
74
76
80
186
64
76
160
119
80
110
102
93
80
111
94
64
108
69
87
78
163
107
109
144
78
142
135
119
80
116
88
96
128
133
96
87
88
107
119
114
94
134
101
76
109
197
117
78
112
108
76
88
115
101
120
111
119
72
172
129
69
156
118
138
111
124
113
104
117
78
69
74
93
107
99
87
80
161
87
93
69
76
83
106
146
110
104
119
113
106
141
104
99
109
107
113
120
197
96
134
69
119
80
109
174
128
89
110
74
120
98
118
136
109
88
163
120
131
119
76
87
123
145
101
127
69
79
125
117
56
128
94
109
114
94
120
136
162
72
87
88
107
131
69
119
127
133
91
175
129
127
160
136
90
78
90
78
93
80
197
133
67
133
69
114
78
130
110
76
91
90
99
140
98
99
121
69
131
76
102
80
76
109
101
130
119
155
116
52
88
107
175
119
132
102
69
80
138
100
54
123
69
69
100
78
89
93
80
94
119
99
118
117
119
134
183
87
88
76
154
87
91
78
134
110
78
94
119
112
54
76
119
88
80
151
69
87
72
80
88
120
154
109
119
109
117
175
111
76
119
139
121
80
197
113
120
144
142
131
87
112
146
138
150
91
80
89
110
69
120
134
87
121
76
89
76
133
126
88
175
69
76
69
91
109
91
165
117
76
99
122
69
103
58
89
87
117
78
153
87
80
79
78
78
109
96
109
109
131
85
183
87
78
96
145
107
123
87
80
95
89
109
114
69
130
133
80
117
104
112
80
133
78
109
80
152
120
67
104
72
96
131
132
87
78
96
110
131
156
69
115
69
147
97
82
91
132
120
109
88
109
80
129
106
103
128
140
80
107
80
143
80
91
121
117
127
169
74
128
137
129
115
165
76
80
79
132
129
100
120
111
107
141
140
155
80
54
78
69
78
80
108
144
156
120
80
102
110
109
151
94
109
54
114
69
134
96
87
135
78
128
76
74
117
80
93
175
121
107
93
123
110
109
107
76
74
121
100
69
104
123
78
52
114
110
108
152
175
121
80
96
78
127
54
132
88
120
80
131
145
120
75
100
80
90
100
87
78
119
117
112
89
87
82
138
99
80
108
88
88
80
119
142
78
76
109
95
87
133
91
76
101
102
119
183
80
80
101
126
87
154
127
54
69
106
80
89
107
80
113
113
106
88
115
87
118
132
155
121
69
201
67
52
87
119
120
91
103
102
91
78
109
135
137
76
97
98
76
89
68
137
143
119
201
89
137
113
110
104
119
69
138
118
109
128
197
76
119
80
142
89
102
87
112
78
89
136
69
101
69
175
136
171
176
80
128
139
72
54
80
75
87
154
120
120
113
142
89
94
71
80
99
78
111
109
83
80
119
78
120
137
119
175
88
87
87
175
69
115
124
69
104
109
117
134
80
119
122
112
119
66
88
107
154
118
91
80
118
87
101
107
54
96
87
128
76
85
80
106
121
117
80
112
127
87
123
175
80
119
87
89
128
80
80
105
175
75
120
69
136
140
110
113
88
106
154
91
109
113
96
109
74
80
118
124
87
109
128
155
113
155
113
152
111
76
76
87
87
103
155
78
87
128
94
89
87
114
85
91
69
87
126
133
160
78
119
99
87
106
74
69
69
101
124
80
80
119
87
154
87
120
80
112
106
109
90
58
122
197
104
80
111
149
101
117
119
94
99
155
88
43
107
122
111
69
91
133
129
80
107
106
94
109
146
131
131
119
119
93
93
126
148
69
78
80
113
80
98
123
185
80
144
109
104
147
91
145
146
115
69
94
117
69
80
54
99
80
74
123
109
76
91
86
127
88
122
119
107
181
64
76
88
148
77
80
89
80
118
132
149
113
127
69
107
99
76
103
102
119
81
117
147
120
133
101
138
98
120
106
118
52
123
87
98
99
185
136
100
110
151
126
76
69
119
80
128
106
120
85
80
120
151
76
122
106
89
78
140
104
175
78
174
175
107
109
93
99
87
69
80
134
93
92
136
140
145
111
78
102
69
145
140
140
119
88
115
136
183
199
175
111
69
107
160
107
118
87
128
156
69
104
127
78
106
72
110
78
79
122
99
106
156
100
119
87
76
124
54
154
107
118
94
91
115
69
128
110
94
142
112
113
115
112
125
87
128
110
69
131
76
89
154
110
78
87
147
87
105
109
109
124
120
80
87
148
129
76
91
197
69
89
109
87
88
92
109
115
161
99
88
69
118
80
111
112
109
119
149
152
154
119
69
149
99
120
56
100
128
154
112
76
122
138
162
54
120
128
114
110
197
76
80
69
67
99
109
175
87
80
113
99
134
131
123
72
87
120
134
69
154
83
99
131
78
74
128
145
122
115
148
80
69
124
67
88
144
119
128
183
80
104
101
69
118
126
89
109
120
91
76
132
94
157
107
128
156
94
87
119
76
72
110
78
115
93
72
102
78
76
128
87
78
107
96
69
144
76
175
144
120
121
76
183
80
101
128
67
123
80
76
69
134
87
119
96
155
134
175
134
119
107
94
94
113
99
147
78
109
107
154
80
143
54
140
131
87
78
80
79
155
136
123
128
87
91
126
88
102
89
110
122
78
99
62
89
89
113
106
97
80
80
103
121
197
133
120
69
137
94
87
94
94
119
91
117
140
90
91
69
89
169
113
113
60
69
99
107
76
69
137
89
145
143
154
91
131
76
93
87
109
79
129
104
114
109
64
78
84
134
118
121
118
157
143
154
197
69
88
143
78
107
118
154
109
157
146
76
144
120
69
76
101
76
127
99
140
106
140
88
110
106
130
104
88
87
82
127
87
94
69
117
111
107
120
107
127
71
63
69
89
69
140
154
110
80
89
131
151
110
86
113
80
156
138
89
76
69
89
69
140
91
130
78
107
142
140
103
117
90
78
80
72
122
87
103
69
106
120
118
104
142
119
160
154
141
175
113
120
91
127
121
131
175
87
183
102
163
110
80
129
154
136
88
109
115
97
69
69
134
123
143
126
96
85
102
74
146
154
100
69
69
99
137
91
111
99
119
94
91
100
128
76
112
131
175
80
80
89
80
139
135
80
74
132
119
117
156
138
101
69
137
175
78
87
111
131
69
54
80
131
147
116
112
146
119
119
69
121
99
88
87
112
87
130
148
70
102
52
136
197
107
72
110
99
76
113
199
156
80
69
112
136
76
94
163
120
92
110
76
144
69
111
85
76
125
89
119
88
123
92
121
119
67
128
126
134
142
89
131
126
119
96
88
88
129
106
56
163
80
87
80
69
93
78
69
98
102
107
89
104
140
147
175
104
123
128
102
69
113
110
151
69
129
156
154
113
154
151
156
96
107
120
104
93
59
72
76
101
156
104
150
111
85
156
120
132
126
99
85
121
78
136
85
69
97
111
197
121
87
175
104
111
114
136
154
80
187
102
113
147
109
80
114
80
113
90
123
78
136
132
64
80
131
76
117
94
128
94
110
151
114
123
79
76
91
120
110
84
157
114
117
151
97
119
127
96
69
143
138
115
82
124
197
122
156
69
143
141
66
123
80
120
102
120
136
120
93
69
99
72
80
136
89
143
80
116
116
89
87
84
52
118
129
71
101
56
111
80
87
106
132
142
98
118
127
69
106
91
52
114
80
134
128
69
93
69
144
101
122
136
109
52
83
107
94
111
99
78
89
120
175
100
131
119
164
106
99
197
107
76
91
107
76
76
119
78
80
122
155
87
141
80
152
104
85
123
99
88
71
69
80
119
128
113
160
69
109
121
119
80
99
141
93
73
78
159
112
83
113
89
122
134
112
141
101
106
132
119
76
134
80
122
78
97
94
95
54
127
155
165
152
88
134
94
89
123
88
112
73
78
151
96
88
133
80
119
80
123
110
76
120
119
94
82
154
88
99
131
118
78
69
151
109
74
78
93
76
109
175
144
88
118
58
164
145
78
58
78
56
173
68
93
151
74
109
164
93
139
69
107
87
117
128
144
83
113
134
67
69
136
96
128
78
87
154
183
110
78
90
103
103
69
140
144
119
111
107
144
134
94
109
164
80
74
175
118
69
107
94
175
87
99
72
110
138
155
87
131
93
80
140
136
140
71
110
175
106
115
129
113
78
114
78
72
117
126
112
151
132
108
175
99
132
119
76
199
82
91
98
109
96
89
103
111
117
89
88
163
103
78
134
126
76
154
83
131
80
139
57
119
80
117
76
120
69
156
100
129
115
129
100
116
69
99
88
119
78
99
81
111
156
134
87
76
155
101
114
109
80
177
154
71
80
89
93
117
98
72
89
103
83
148
87
132
102
78
197
110
109
88
80
78
69
102
119
113
113
101
144
201
123
87
131
67
124
90
109
88
87
80
54
72
119
126
76
134
136
87
121
69
91
115
76
88
78
118
89
142
127
156
88
136
136
131
69
155
131
87
197
72
130
99
76
115
119
106
52
93
69
67
69
94
74
99
102
114
140
72
81
111
87
87
129
69
88
80
107
76
69
113
82
101
109
101
69
119
96
155
87
137
80
133
69
100
105
104
137
69
87
69
52
72
113
69
87
131
94
120
121
76
78
76
127
83
115
94
143
123
69
128
148
106
99
69
78
154
130
109
119
113
94
95
90
107
91
73
102
101
114
80
78
120
121
137
117
100
72
88
112
104
117
130
114
80
127
43
69
74
103
87
89
101
104
128
80
80
117
91
119
69
87
116
89
80
69
140
69
76
52
128
100
107
88
110
115
119
130
80
111
137
125
91
119
69
102
131
76
88
151
120
69
93
119
88
96
132
110
127
94
69
80
120
72
145
175
74
80
175
117
165
119
164
69
80
134
99
80
99
133
102
80
87
100
119
88
119
133
94
109
114
110
107
119
131
151
80
80
69
88
127
76
101
94
120
128
101
121
185
109
110
119
154
109
87
119
96
87
89
80
107
106
137
99
78
113
111
107
121
90
99
106
124
80
99
87
80
138
101
83
93
140
157
88
120
80
69
89
142
78
78
80
87
87
104
76
72
78
119
155
110
154
120
87
119
104
87
129
80
104
128
99
94
116
137
72
197
104
93
96
78
143
107
160
113
74
85
76
80
69
87
109
118
69
96
117
111
162
89
126
154
117
138
80
78
121
151
131
151
126
107
136
122
78
80
144
136
133
119
89
69
101
107
80
133
110
74
109
153
69
69
88
91
91
113
132
119
137
69
80
69
69
106
137
148
76
80
144
112
87
79
89
98
80
99
88
78
116
69
80
117
87
87
92
154
94
110
87
78
106
183
69
121
85
114
80
80
101
80
130
87
85
131
114
89
69
114
109
78
150
119
69
128
88
107
114
80
99
95
112
113
80
175
104
131
98
76
151
118
87
80
78
69
75
131
80
143
80
67
121
140
119
119
130
106
119
118
126
164
95
90
119
109
175
89
87
69
80
80
164
148
115
78
119
88
104
80
78
56
146
94
120
91
80
69
136
85
119
134
162
78
80
96
144
52
59
52
131
118
96
54
137
154
148
147
128
76
128
52
109
156
89
67
123
94
74
134
94
164
131
87
88
136
87
106
118
163
110
69
54
88
148
94
98
56
81
112
72
69
154
143
69
119
87
136
87
156
107
119
127
149
89
74
69
80
107
147
84
72
69
114
99
145
80
132
87
156
106
137
128
76
117
106
87
69
118
107
128
121
87
117
163
110
175
131
115
114
121
143
123
99
127
117
72
120
87
146
83
143
104
80
130
86
146
197
83
101
88
76
80
88
107
175
88
88
89
106
69
69
113
107
66
87
80
87
121
80
119
146
87
96
175
130
120
129
79
109
104
136
117
107
125
75
112
85
143
146
106
147
142
123
105
174
99
111
69
136
134
105
66
101
90
76
99
154
115
80
72
80
112
121
114
175
80
80
128
137
99
74
121
163
78
136
119
82
99
127
69
166
132
125
123
154
96
123
100
140
69
131
111
106
128
89
82
76
78
74
96
76
110
80
68
129
95
123
74
140
107
80
175
80
159
109
56
146
69
101
86
117
124
76
107
111
175
69
69
113
154
130
106
126
110
109
87
112
174
82
100
78
56
147
134
89
99
91
78
87
154
109
80
90
67
175
111
64
111
87
99
76
99
113
69
136
152
104
154
155
92
109
78
122
115
80
129
175
99
80
96
128
87
107
136
56
209
106
78
113
201
87
134
155
127
118
107
87
132
104
91
78
135
115
154
103
93
99
154
109
80
152
175
128
75
69
131
88
137
107
142
112
113
69
69
164
58
150
89
89
112
156
148
76
109
69
134
151
69
104
72
151
123
78
144
95
129
88
150
89
76
113
96
89
69
78
60
76
100
152
103
121
144
69
85
120
128
117
80
124
80
154
147
95
80
80
118
76
120
128
127
78
122
69
80
79
81
140
94
94
87
69
69
119
136
141
155
197
115
87
96
94
88
134
110
134
80
110
120
69
119
121
76
113
119
120
102
69
120
93
87
112
104
175
117
89
120
120
155
80
88
93
80
140
93
123
187
74
110
143
78
163
87
94
113
120
107
131
109
88
80
78
96
121
131
80
52
118
116
152
120
162
124
96
110
102
87
164
82
87
94
72
96
165
76
100
96
123
163
103
93
128
87
136
87
78
87
128
136
107
83
148
197
82
76
140
106
111
69
114
154
78
76
90
129
151
154
107
80
120
136
129
78
72
115
129
122
85
115
80
93
111
91
155
96
104
117
89
130
127
118
109
137
87
118
138
52
80
138
107
110
58
69
110
88
107
119
119
72
89
119
114
80
119
101
74
74
119
119
80
109
124
138
96
78
80
104
67
87
95
109
169
78
120
119
80
79
172
69
80
110
82
118
128
87
80
145
99
120
94
80
76
119
69
87
119
120
181
80
69
69
99
69
109
119
69
118
93
99
103
94
112
115
133
87
117
122
88
80
107
119
110
128
134
154
155
105
69
69
100
93
87
110
169
128
104
54
109
106
90
110
152
69
85
81
91
164
183
115
117
107
107
120
58
72
152
120
80
89
76
119
119
110
119
113
118
119
134
101
81
80
69
151
106
119
72
76
67
119
72
90
102
78
121
88
76
94
56
126
197
80
114
132
155
131
101
185
109
136
80
151
78
87
78
119
80
69
128
69
147
154
119
106
108
110
83
111
114
69
84
100
80
121
134
76
78
154
75
128
99
201
125
109
57
114
102
87
93
72
80
80
110
102
107
187
69
120
88
74
101
88
69
120
199
76
69
107
76
157
155
109
113
93
102
94
69
128
85
128
174
82
69
112
92
163
106
88
133
119
88
85
119
101
118
175
80
175
80
138
144
129
93
101
80
91
81
109
149
113
120
128
94
89
122
100
164
149
131
78
120
123
80
91
87
119
134
175
146
120
87
90
197
78
158
175
94
197
117
148
99
69
150
85
110
164
132
99
78
76
128
127
153
163
80
107
85
144
94
83
119
143
95
52
128
80
110
154
102
120
135
80
90
69
99
142
119
99
80
111
87
69
94
89
119
115
134
80
197
128
76
109
121
69
80
102
154
54
165
107
140
99
78
149
131
59
76
183
128
85
136
119
76
106
78
99
80
80
175
104
152
76
76
117
99
162
117
104
137
127
120
103
69
98
76
82
87
131
80
87
64
67
123
132
109
120
114
112
140
80
76
113
103
164
93
93
107
88
89
119
99
88
94
80
111
100
80
106
103
107
58
85
95
78
130
80
130
112
119
117
101
69
94
90
98
96
107
134
121
93
136
130
122
80
137
72
52
174
110
124
117
104
122
134
174
85
97
112
130
78
107
78
107
106
109
80
119
104
78
109
163
69
175
94
113
131
93
93
133
132
102
94
137
69
80
154
104
87
109
91
58
78
69
119
87
128
54
69
76
80
107
117
119
72
183
110
145
157
101
154
118
94
117
129
107
76
63
120
54
66
152
112
118
131
128
119
94
73
100
136
76
106
80
154
85
99
136
110
164
54
103
96
107
78
80
175
56
101
107
95
110
136
69
120
80
80
110
80
86
131
104
80
52
107
128
85
100
106
78
91
151
111
94
123
99
80
147
94
129
100
83
87
139
117
124
126
104
69
80
154
175
72
154
107
85
110
139
119
141
118
118
197
69
80
155
102
80
74
175
76
129
119
113
76
78
76
75
111
97
136
140
127
140
114
80
128
94
155
98
69
78
91
87
175
104
114
119
80
87
155
85
95
181
107
78
56
76
74
157
69
80
175
118
107
104
104
136
88
138
80
109
107
106
142
94
152
155
134
82
131
119
69
69
138
89
106
43
136
148
104
131
91
88
103
126
120
118
110
175
94
90
104
80
76
109
96
134
140
80
69
120
80
89
114
93
66
137
69
119
69
107
119
145
52
154
131
104
139
103
78
102
80
87
115
119
127
87
111
133
133
88
107
175
69
101
145
106
156
83
209
119
130
125
96
87
171
103
80
140
120
80
74
197
136
99
69
69
109
131
69
108
99
109
136
69
110
117
69
120
119
88
137
69
121
76
97
72
110
120
129
128
143
120
130
99
105
129
101
138
165
80
69
110
69
80
147
105
80
134
79
93
99
109
119
138
128
87
99
129
80
143
80
104
96
136
93
112
73
128
94
69
111
137
91
118
95
164
71
87
88
96
151
156
143
120
126
78
100
106
69
106
151
104
155
111
74
100
87
101
108
69
110
144
146
97
110
112
96
109
119
69
87
151
102
109
57
99
123
163
103
98
148
136
120
106
110
69
134
107
136
94
111
132
92
122
59
104
133
121
91
96
146
122
83
78
121
125
83
109
117
83
118
94
91
82
78
79
104
133
69
80
88
69
124
128
100
76
128
80
56
87
131
78
109
147
162
78
62
119
121
88
119
131
111
95
107
120
127
146
119
76
110
78
80
103
83
100
99
87
96
140
78
98
134
175
80
146
69
113
80
199
72
151
87
113
144
151
110
120
121
102
69
112
119
134
112
80
80
80
124
107
91
107
128
110
93
69
89
117
89
151
104
142
131
99
154
123
69
80
89
106
131
127
134
80
74
156
123
78
175
101
74
129
100
78
123
137
52
133
146
162
109
127
69
88
80
138
110
76
121
87
136
78
103
148
128
109
120
91
52
84
99
159
143
96
132
128
106
108
80
136
96
154
107
128
125
197
144
128
85
93
123
74
72
98
68
69
89
148
104
111
164
76
76
107
87
91
109
121
109
114
69
112
89
93
156
80
151
80
175
80
111
129
175
134
80
87
148
69
91
113
106
106
175
109
166
78
93
156
99
123
155
96
88
69
69
142
102
154
113
80
102
80
96
112
145
104
104
117
151
112
99
72
80
90
123
88
140
107
72
131
80
112
66
140
74
80
134
88
117
101
106
106
115
87
111
99
129
128
101
87
136
129
120
145
172
140
80
76
123
121
80
112
95
101
88
52
136
133
81
94
109
111
126
113
87
100
156
91
126
120
129
100
94
128
126
121
101
154
128
69
197
109
195
111
154
122
126
96
96
70
74
79
175
80
111
80
60
43
76
132
91
101
121
95
107
69
93
136
119
106
132
140
69
89
89
72
76
80
80
130
98
99
135
109
95
69
100
88
93
76
91
128
69
73
106
93
54
54
134
117
80
185
69
76
110
127
96
145
88
119
109
64
76
136
146
119
54
106
119
121
119
99
133
88
78
101
76
175
96
125
140
118
69
117
80
74
69
164
109
91
87
90
151
78
76
139
130
69
133
78
145
166
87
127
130
119
151
113
112
112
112
89
83
131
100
137
91
113
80
115
80
121
101
119
69
107
91
154
104
72
80
118
142
143
150
69
72
87
131
131
128
80
114
113
94
104
104
69
78
101
80
136
80
80
87
69
72
104
78
83
121
136
113
96
128
80
73
88
116
99
164
164
60
72
137
107
69
156
145
56
91
104
117
80
76
80
109
80
136
87
72
140
107
60
80
121
175
106
142
110
147
109
142
95
78
64
78
78
78
88
98
134
64
96
134
121
128
134
126
94
85
118
80
69
69
87
106
91
101
159
175
106
69
88
133
163
120
89
107
80
96
134
107
175
131
142
69
66
128
106
124
117
87
101
95
109
121
94
87
128
125
80
101
113
118
113
96
99
128
127
134
109
127
121
82
88
126
90
125
89
149
106
119
113
107
120
134
80
123
151
137
100
72
87
69
97
80
98
56
137
91
80
80
119
101
72
119
76
69
102
152
165
89
76
72
119
76
144
69
69
104
126
120
101
99
98
89
126
87
87
104
71
137
99
148
154
72
91
78
126
175
78
128
111
99
136
85
74
87
95
134
98
80
141
72
54
154
112
128
115
153
119
80
154
126
111
134
175
76
88
151
146
118
80
119
118
119
107
78
80
129
119
115
69
78
110
95
91
80
88
80
78
116
76
113
80
99
103
166
80
118
119
80
152
104
113
80
96
193
150
102
124
132
144
100
101
80
107
157
93
87
101
131
78
120
119
96
117
88
113
69
76
83
88
69
74
106
117
96
109
80
69
103
155
151
140
128
80
133
104
80
66
72
164
113
120
82
89
80
107
74
109
80
131
76
76
134
181
100
69
52
113
94
199
87
87
54
157
104
67
93
109
76
136
96
94
110
87
76
80
80
76
101
117
115
121
102
119
69
80
175
108
116
145
101
156
120
83
108
125
120
103
104
107
69
78
149
76
106
113
80
89
56
80
80
80
69
175
109
121
156
88
110
128
123
78
52
116
80
93
109
69
140
138
99
69
175
94
109
163
87
159
78
154
72
107
94
146
132
134
99
85
76
108
79
154
117
80
88
91
80
106
147
78
160
120
127
109
129
175
91
87
119
141
93
96
69
88
69
110
119
120
119
131
80
175
107
154
94
76
134
183
103
57
94
87
115
109
110
111
69
69
78
99
78
69
99
80
69
56
108
174
87
111
67
101
91
88
137
76
72
87
106
119
69
74
89
76
144
166
110
80
99
136
78
71
155
109
156
88
120
131
112
99
78
111
119
54
120
132
155
91
98
69
69
139
56
136
119
87
130
130
54
109
69
175
91
121
69
111
80
130
175
119
69
119
121
110
120
109
129
100
125
197
76
87
69
89
87
197
119
175
64
100
103
77
80
111
94
87
136
88
69
87
83
117
151
131
96
104
117
129
69
113
163
140
76
80
106
87
122
197
80
76
174
72
124
52
94
109
56
113
111
122
91
87
126
80
80
110
154
69
159
77
138
80
87
99
154
76
154
88
93
91
128
121
121
96
158
134
69
144
100
131
87
131
104
143
140
175
140
144
140
127
120
175
76
140
136
137
120
175
120
76
93
127
99
106
78
121
95
131
153
154
113
76
69
143
92
78
91
118
154
153
80
124
120
99
135
107
80
116
128
113
94
146
124
122
80
100
87
118
112
156
69
126
114
110
94
107
120
128
87
130
87
136
107
143
110
92
136
128
103
103
137
69
155
128
132
78
126
80
91
133
104
80
120
154
113
113
106
119
155
112
89
54
112
131
107
80
133
117
110
151
113
99
94
149
120
80
69
151
80
128
80
80
87
110
121
150
160
78
103
107
80
136
176
134
69
87
137
91
110
80
88
104
128
69
110
77
96
107
114
136
78
76
119
136
72
80
80
89
101
94
87
175
128
111
89
131
72
94
88
109
76
100
78
80
107
175
72
69
58
94
110
128
87
78
128
96
110
69
107
80
128
92
87
157
132
69
76
76
156
99
100
140
93
140
156
88
162
78
76
117
134
145
54
134
69
76
72
99
151
75
82
112
81
100
69
116
78
54
80
74
69
136
117
108
156
69
98
99
119
69
132
122
43
66
78
107
143
114
156
80
69
101
80
136
76
80
80
112
87
121
91
80
76
154
69
114
109
69
83
109
117
140
113
103
91
78
117
154
93
120
99
154
102
122
107
78
94
143
94
95
139
104
80
88
100
76
114
76
80
146
120
127
119
72
106
154
80
104
103
112
124
121
78
94
78
94
116
98
72
136
136
128
154
136
120
80
89
76
124
93
136
116
106
87
96
110
145
80
78
146
78
87
163
100
175
87
121
133
120
74
89
100
78
109
66
106
101
106
88
80
74
78
183
195
78
88
128
183
119
54
155
160
87
78
99
140
76
92
91
87
69
91
79
120
84
175
131
102
140
69
79
128
69
78
119
93
119
144
134
78
90
88
80
72
83
113
87
152
83
140
87
88
107
87
96
100
119
67
111
159
87
129
139
78
120
88
155
80
80
131
124
164
80
106
119
152
82
80
146
121
87
147
157
88
82
136
80
115
110
102
80
156
128
138
128
80
142
120
79
127
80
114
110
118
80
136
94
78
196
72
107
134
101
80
110
98
138
96
154
80
119
74
110
121
124
80
125
109
72
131
87
125
100
142
76
117
94
80
72
94
145
98
112
76
180
131
98
175
94
154
118
101
148
136
123
136
107
142
163
80
113
80
106
126
151
124
120
105
129
145
106
124
83
115
128
135
128
117
99
163
101
85
95
89
89
107
135
107
120
76
58
151
93
108
95
156
99
115
80
60
103
89
124
119
113
74
93
100
58
87
123
74
156
110
87
117
69
131
78
117
127
106
80
125
146
128
136
111
107
146
87
72
115
79
83
80
88
52
112
80
119
87
131
89
69
128
93
123
80
118
119
76
90
112
104
133
102
121
115
78
107
120
85
98
80
76
113
123
101
69
135
109
78
87
100
95
104
88
74
83
136
114
123
120
106
76
109
71
91
116
117
69
96
120
117
80
76
107
133
88
43
123
90
87
175
80
52
88
76
76
117
69
69
88
131
153
91
87
119
106
102
100
80
131
155
69
120
78
154
120
106
104
134
122
115
94
136
85
109
93
69
112
117
122
119
128
69
82
127
134
134
117
137
128
109
104
175
122
71
106
79
102
103
72
103
123
76
131
144
136
140
134
115
111
80
89
99
80
131
130
120
157
143
69
80
112
76
87
132
154
107
124
80
69
165
115
90
151
95
138
115
153
110
154
54
134
109
112
89
107
76
80
77
131
154
140
109
82
136
120
155
169
80
80
75
76
87
99
99
93
166
99
107
78
74
72
114
119
136
136
78
80
78
134
80
152
92
132
100
86
43
80
109
127
99
151
126
132
110
93
87
85
69
123
121
80
102
109
113
117
165
80
154
152
172
112
80
91
69
69
140
112
166
120
130
69
78
104
79
136
136
104
94
76
163
113
80
56
69
96
94
80
151
54
130
93
69
120
120
102
99
113
87
72
95
94
117
127
78
139
156
104
116
69
104
119
101
128
89
89
111
120
138
74
133
78
95
132
125
104
106
80
128
150
68
69
117
69
80
93
104
64
94
99
121
80
54
76
121
112
140
80
146
109
109
94
95
88
175
140
87
54
80
160
175
160
72
127
69
110
175
134
121
69
99
72
120
105
104
107
66
107
83
89
80
101
121
107
84
146
78
91
72
82
89
133
130
136
144
106
140
140
125
78
154
109
96
154
133
112
118
64
107
101
80
117
87
80
123
116
168
78
114
80
80
96
156
143
121
102
160
154
80
119
131
135
119
69
175
183
111
80
155
85
96
87
78
122
95
111
69
120
118
94
121
114
83
76
201
120
95
80
106
98
164
144
78
109
85
52
151
80
83
73
113
80
90
131
78
134
151
80
56
140
99
150
131
156
119
80
87
107
78
123
85
107
127
175
131
127
69
71
87
117
154
87
69
78
120
78
107
125
82
71
128
98
69
114
88
156
163
131
84
136
123
80
80
113
110
122
76
91
76
78
197
143
110
98
119
88
122
69
160
117
107
116
154
163
163
145
93
69
89
175
134
113
156
87
80
114
93
87
133
106
87
69
91
80
128
140
89
78
175
80
80
128
136
76
80
87
82
128
134
72
91
136
137
156
74
94
123
131
88
110
156
76
56
141
69
119
96
69
91
100
119
99
117
131
66
87
101
69
154
107
109
80
101
118
87
100
80
72
89
96
80
80
69
120
113
100
106
80
103
67
99
118
175
79
154
89
128
80
106
80
120
131
174
117
74
119
80
87
131
117
104
144
95
155
125
128
87
113
74
107
80
115
174
128
131
175
87
69
119
89
76
78
90
99
164
69
93
117
151
123
133
175
125
119
94
108
69
52
111
87
54
185
69
104
78
64
121
154
106
120
131
87
134
81
178
80
105
126
69
76
67
120
134
69
94
110
150
69
111
78
122
80
101
69
109
104
120
103
99
140
89
80
69
99
78
96
99
107
78
80
165
114
135
69
154
133
73
134
78
120
147
91
120
138
120
128
140
106
185
131
111
92
99
102
96
78
89
72
144
80
92
148
175
60
69
134
128
106
78
111
164
95
109
109
147
75
134
115
133
112
88
99
132
151
102
87
118
111
120
143
128
76
111
156
120
118
87
131
99
94
96
80
52
69
117
162
88
74
107
63
138
88
94
76
125
93
103
120
132
74
144
80
80
93
99
151
140
83
78
114
101
102
69
114
134
85
134
104
104
87
69
89
104
155
94
80
117
155
131
104
130
94
126
131
101
137
92
120
118
199
72
197
78
54
87
87
94
80
80
189
90
132
197
66
104
117
76
151
113
69
74
137
80
146
113
87
87
159
134
110
69
54
87
160
102
69
109
80
106
107
115
87
141
108
80
140
80
115
107
91
76
69
87
76
109
88
127
96
88
99
114
75
87
80
153
136
78
140
119
91
69
126
78
88
78
78
107
175
78
146
119
142
76
175
77
78
131
66
109
119
125
127
147
176
160
79
107
59
106
111
107
80
112
93
131
127
136
99
76
96
129
78
93
94
90
104
197
85
74
121
140
107
116
98
82
77
93
88
145
131
149
89
93
82
155
64
128
94
91
80
89
164
111
109
151
107
112
117
76
78
89
140
175
114
113
80
175
78
79
175
154
57
104
80
106
166
101
87
113
107
114
162
145
101
130
120
111
92
122
87
69
113
122
96
89
119
154
106
134
110
114
94
54
87
69
76
113
144
118
89
131
104
132
91
115
90
113
103
121
119
90
131
110
107
99
119
77
126
92
136
177
114
117
52
151
112
52
156
87
129
87
109
149
154
111
72
175
148
137
131
93
131
69
121
134
175
85
135
94
76
80
148
82
72
146
80
76
104
156
120
80
112
156
87
87
85
132
106
89
119
99
126
95
137
78
82
54
100
115
120
152
120
104
185
69
120
154
93
126
88
67
87
87
117
96
88
112
87
99
63
91
119
89
76
80
80
117
131
134
126
149
80
112
142
80
106
144
78
76
133
69
66
148
134
96
116
83
175
87
134
118
96
106
115
122
69
174
78
112
99
120
119
76
80
107
145
106
121
74
122
78
89
59
197
78
121
80
107
89
91
119
100
89
69
93
98
142
87
136
87
99
85
99
69
109
99
93
88
128
79
143
87
95
76
76
130
146
78
154
112
107
120
78
144
175
94
69
119
195
153
156
100
99
88
118
175
76
89
117
59
94
172
69
76
100
131
107
106
54
128
101
69
146
100
87
113
122
69
111
119
140
107
150
82
83
137
93
88
121
120
110
122
69
97
89
107
76
129
76
112
120
130
185
78
156
151
132
89
52
76
78
123
90
69
145
117
114
68
112
128
88
88
102
129
104
91
98
175
175
93
99
101
78
92
117
69
98
164
69
82
109
106
117
128
174
76
115
78
119
78
131
126
123
132
123
93
95
94
120
80
99
104
119
80
95
128
104
197
133
87
67
72
80
136
151
104
69
91
99
99
56
103
120
109
175
72
99
87
56
74
76
74
69
103
94
123
89
175
94
110
73
54
80
90
66
56
121
127
95
102
136
121
115
99
136
197
117
154
116
128
69
184
76
85
163
93
131
122
146
99
93
121
91
88
136
96
80
126
76
80
88
80
87
80
123
76
69
72
101
144
104
107
80
87
136
115
131
87
67
140
111
101
69
152
107
80
120
88
143
141
74
128
174
175
107
119
123
102
69
132
73
80
90
104
98
80
88
118
181
110
132
80
136
129
88
117
132
85
69
136
87
181
120
75
87
104
175
72
69
54
128
88
103
104
85
88
91
87
118
127
69
71
110
174
147
99
89
121
69
70
112
113
109
101
89
117
87
88
149
120
123
80
152
121
88
63
80
88
88
152
114
91
78
131
143
117
197
104
117
114
121
87
100
131
138
133
76
143
167
87
153
96
115
87
175
138
85
154
112
124
131
140
110
175
117
128
80
74
88
113
165
109
103
77
89
107
96
114
162
109
136
102
110
69
193
94
60
80
119
89
136
100
166
87
117
148
136
109
126
123
101
72
107
122
82
76
94
119
88
107
106
131
110
110
78
113
131
151
120
60
69
165
117
155
144
109
89
106
83
78
91
120
110
141
104
76
183
69
111
87
80
87
69
128
94
76
87
76
130
66
80
134
111
92
175
95
80
94
83
106
107
69
69
106
154
78
93
148
69
101
69
92
89
151
107
52
117
119
128
93
151
80
107
66
107
76
120
93
107
87
146
117
89
140
163
134
85
107
127
197
120
129
175
138
143
99
75
120
80
128
112
144
100
175
197
183
120
67
80
104
131
80
109
174
68
94
87
104
155
107
117
138
133
94
128
94
120
99
87
102
153
197
107
149
80
83
95
98
134
138
80
78
156
137
134
80
169
80
94
143
120
137
67
89
96
69
76
109
109
119
131
96
78
80
83
72
155
80
175
134
94
120
104
112
87
148
95
101
94
109
91
145
183
109
120
147
135
120
98
175
92
85
80
109
181
83
140
69
128
119
128
69
87
72
107
120
145
127
91
87
119
104
78
96
89
78
136
130
104
113
102
110
131
93
101
88
136
134
74
104
67
88
94
99
104
80
113
129
97
175
117
197
72
80
110
104
69
100
87
98
120
120
117
109
80
100
113
113
82
140
87
69
130
141
106
116
99
88
113
134
74
133
124
114
128
98
76
109
128
112
134
175
123
88
68
154
106
87
118
145
118
147
102
80
72
69
85
90
88
109
150
120
121
151
104
115
76
119
104
87
91
78
88
140
129
87
105
89
94
78
121
106
104
99
86
127
109
99
91
76
110
144
93
69
117
143
76
138
76
107
80
151
56
113
100
96
136
69
137
113
128
78
104
128
131
128
104
84
133
94
110
102
88
99
92
131
89
87
117
64
140
151
109
91
93
113
163
96
88
99
80
142
86
69
117
80
131
80
110
83
131
80
69
160
69
96
115
163
110
74
80
80
76
69
130
80
107
154
94
140
112
120
119
136
76
197
110
114
64
78
74
94
131
97
80
172
154
110
136
89
88
69
91
93
80
119
113
109
88
110
96
88
151
127
98
156
95
149
122
93
93
94
78
107
111
69
160
93
76
136
104
127
89
87
94
107
132
80
128
89
151
88
156
128
149
175
119
80
87
111
75
99
154
72
155
80
76
143
113
80
109
129
146
102
123
93
112
103
109
107
128
151
91
148
136
98
80
175
119
64
111
120
72
119
110
128
95
80
110
134
128
93
120
175
80
104
83
143
120
136
69
130
117
72
99
127
107
121
89
87
129
134
87
112
118
80
119
121
133
101
127
78
80
134
146
87
123
128
87
113
134
80
113
130
124
145
76
76
117
87
128
119
69
163
109
80
140
156
136
67
138
113
78
99
99
88
54
154
144
131
154
110
87
78
131
118
94
72
99
183
99
69
116
76
124
126
113
80
155
117
88
117
111
118
101
80
94
89
103
80
128
120
119
93
107
110
140
69
115
131
117
104
164
154
94
148
69
93
164
126
174
110
80
154
154
87
134
113
121
107
112
54
127
69
102
69
136
97
143
80
104
132
72
76
100
120
117
104
113
143
112
96
80
96
175
104
128
76
87
107
69
76
101
119
78
76
120
193
87
69
102
132
197
68
166
84
163
85
111
116
64
154
78
71
136
69
151
78
128
104
104
80
76
99
126
119
80
76
128
78
129
76
154
131
183
52
128
125
116
103
80
69
112
83
88
131
121
69
211
156
71
78
80
146
119
154
100
69
174
134
111
95
76
128
120
69
80
154
93
103
76
154
118
163
80
80
156
54
147
123
110
175
121
80
72
78
100
155
101
76
75
115
80
92
127
80
94
87
121
124
115
76
155
146
127
113
133
144
114
160
80
76
155
76
128
102
80
123
79
107
91
88
110
99
123
113
91
95
174
69
129
83
89
84
90
76
127
148
60
155
136
110
80
96
80
91
73
149
134
124
109
151
87
104
88
154
131
131
121
101
99
88
104
80
80
115
163
87
154
162
79
131
144
99
112
93
116
128
87
163
111
83
91
93
199
137
72
145
90
110
76
120
72
87
120
76
103
87
80
85
85
99
133
199
154
99
120
128
78
104
142
175
121
80
80
174
175
104
78
119
132
119
90
113
60
96
148
80
109
107
94
78
94
110
119
78
56
69
87
87
94
96
99
87
103
137
66
119
127
122
107
130
80
121
107
120
92
121
85
69
67
84
126
99
104
156
66
99
164
96
175
107
128
99
100
89
152
88
82
119
140
87
87
54
91
69
134
112
87
175
79
106
107
119
121
80
160
136
88
127
95
109
76
154
125
94
69
118
110
163
85
104
103
78
109
72
127
120
87
76
109
124
71
69
145
117
145
88
93
162
96
99
146
87
113
91
120
96
69
78
80
80
101
80
120
110
98
151
80
104
131
154
131
107
109
87
165
83
90
119
126
125
146
113
80
119
87
87
88
88
181
99
122
113
175
156
143
69
98
88
69
76
66
59
147
76
133
96
56
76
120
107
69
107
102
80
106
89
93
120
80
143
133
93
109
110
85
144
88
155
87
120
140
78
134
82
80
154
131
54
175
142
123
145
99
106
72
87
95
160
100
69
136
69
57
80
119
96
120
131
175
76
152
90
146
111
80
94
102
91
87
108
99
133
96
88
88
143
99
99
160
183
69
94
101
107
162
66
101
80
107
128
80
110
91
69
130
174
134
89
69
87
145
175
80
88
117
101
80
199
52
133
93
94
181
110
136
109
87
78
122
80
153
136
103
117
94
148
101
87
112
136
88
117
106
89
111
156
80
87
72
109
175
111
102
94
88
119
101
76
88
107
69
112
88
96
98
69
154
82
163
112
95
87
177
80
131
113
99
119
69
150
148
100
106
134
175
99
115
69
99
72
119
110
74
89
175
76
91
118
76
128
126
76
156
78
89
80
152
156
80
89
120
145
102
154
88
72
87
110
79
113
89
96
117
73
83
94
119
110
110
78
80
151
87
83
123
109
72
88
144
109
143
99
120
69
85
175
118
93
80
136
69
89
88
175
72
90
145
106
110
150
107
117
76
151
102
123
107
106
102
122
147
80
94
104
151
118
89
89
100
154
119
145
110
102
144
72
78
139
169
133
80
175
137
110
128
93
159
138
80
80
69
163
151
110
106
175
69
68
140
99
113
66
88
89
199
100
156
93
87
118
78
95
126
197
140
64
89
154
136
72
78
113
107
54
197
69
69
138
92
93
106
69
87
69
106
117
175
157
76
92
145
85
71
52
78
69
116
152
132
52
103
145
144
88
134
119
136
101
132
161
133
181
102
84
99
52
99
79
76
78
87
175
130
80
96
80
106
88
119
88
112
112
89
106
94
115
78
174
80
69
126
133
89
111
104
74
137
94
147
94
78
88
129
128
87
117
99
147
109
80
85
89
134
114
128
130
87
120
76
78
131
147
140
126
101
115
107
93
115
107
158
56
119
93
126
149
185
128
147
136
113
88
74
72
164
120
69
128
104
87
52
80
69
69
111
78
94
69
80
104
134
160
120
88
80
138
143
93
80
92
119
87
119
101
76
156
75
87
112
111
142
90
138
99
99
107
69
119
74
129
64
183
110
76
109
175
79
128
93
88
154
88
80
101
126
76
128
118
76
80
144
136
80
154
89
76
88
154
200
134
111
80
52
128
107
147
185
140
112
89
80
93
113
89
175
93
169
83
99
107
80
76
67
66
152
136
78
156
78
119
109
101
160
87
117
56
131
143
80
116
92
69
107
80
140
78
118
85
71
175
87
115
140
125
196
101
69
85
131
113
96
148
93
120
80
69
128
78
136
130
78
155
175
76
104
172
80
103
78
80
109
113
123
96
82
76
87
110
89
95
99
90
113
93
126
93
164
118
154
114
178
99
80
99
101
174
87
120
156
80
91
138
113
69
121
87
80
112
117
80
101
119
78
104
110
69
123
80
109
102
114
114
119
163
107
76
109
112
72
94
72
156
72
175
80
85
175
131
122
131
99
69
154
140
78
134
112
119
69
69
87
90
78
123
80
80
80
107
154
89
134
106
119
87
121
109
72
83
89
107
97
174
90
151
114
120
121
89
80
117
80
80
119
131
120
80
128
104
78
80
72
142
72
96
112
119
164
117
85
143
156
71
56
109
91
144
110
110
163
147
131
69
76
166
107
82
119
128
91
141
140
162
131
80
159
175
152
125
80
120
52
80
102
95
116
127
117
80
114
128
93
107
107
110
88
155
120
69
76
154
133
69
78
132
117
75
87
102
80
101
134
155
138
121
80
69
118
175
109
80
80
151
100
99
139
78
80
121
115
134
87
122
123
80
107
104
96
69
94
131
120
69
128
143
134
69
106
142
80
73
110
83
122
119
99
119
80
72
117
99
151
108
69
85
143
63
104
112
106
87
148
161
125
78
131
89
107
141
97
94
99
107
116
80
76
154
156
89
146
124
119
80
80
76
127
121
110
43
89
85
114
113
89
110
80
78
156
175
78
100
69
87
142
91
137
80
69
105
142
142
137
69
120
54
136
104
134
80
110
147
154
109
138
80
106
76
121
106
104
80
154
80
78
72
80
100
142
115
80
114
80
126
154
157
109
145
96
72
145
120
71
69
72
174
99
93
120
114
130
121
69
69
104
88
106
87
88
69
88
59
119
119
80
93
110
86
109
124
69
80
78
99
114
126
80
117
86
175
71
88
76
80
52
94
102
104
175
93
81
118
69
73
144
123
104
128
164
122
113
134
92
109
78
119
75
80
94
142
146
163
155
110
107
133
80
106
66
156
69
78
64
91
110
121
123
175
94
130
87
109
197
109
141
89
114
69
118
95
94
105
131
97
89
156
78
128
95
101
107
78
72
141
143
96
80
80
103
88
80
89
136
75
119
91
121
99
107
78
89
121
80
156
130
89
123
127
102
93
73
134
193
94
119
43
106
115
175
87
113
187
106
88
106
134
80
89
89
117
76
142
69
78
109
110
125
98
69
89
94
126
121
175
142
106
69
80
103
175
151
69
69
100
76
91
80
113
111
128
96
78
154
119
107
80
78
120
108
69
76
118
104
113
71
99
80
89
54
166
72
76
54
69
69
82
123
113
119
80
69
163
87
74
119
69
125
120
56
124
86
125
121
155
114
87
88
119
107
76
80
76
72
56
132
121
131
164
109
80
74
102
104
128
107
87
80
43
69
154
76
82
140
75
113
108
100
123
78
78
138
142
98
72
114
80
78
87
69
104
78
69
80
87
78
76
87
106
109
78
109
76
127
87
140
90
142
137
154
87
117
56
171
80
69
114
80
121
127
76
123
94
124
109
89
83
126
80
99
163
83
109
88
104
119
119
123
146
128
94
69
78
151
76
140
123
119
69
123
87
92
166
138
76
120
78
76
104
107
87
78
80
52
83
96
93
120
102
124
78
87
106
152
102
115
99
80
109
127
76
68
80
78
119
140
69
152
114
88
152
87
76
155
66
69
140
80
88
69
126
88
102
80
155
119
78
196
163
119
154
69
197
110
112
119
87
107
145
69
175
99
99
93
87
110
99
93
91
78
97
57
148
74
147
85
201
100
121
107
197
97
98
76
100
89
113
175
119
100
94
80
76
137
67
119
106
119
80
175
108
76
89
137
69
157
69
113
117
62
87
91
155
111
99
76
101
80
102
107
120
122
134
108
78
121
76
80
80
67
120
95
78
183
76
109
128
175
99
119
94
97
69
89
52
155
111
69
69
118
121
117
107
87
197
115
91
161
69
106
138
96
94
136
111
89
80
148
112
85
120
130
120
117
78
69
119
100
69
99
101
137
78
69
169
80
88
78
128
89
135
88
78
78
69
93
69
68
69
144
87
126
121
131
199
163
76
94
78
99
76
119
80
88
93
131
112
128
133
102
122
76
80
87
87
78
106
134
69
80
133
107
74
54
119
199
80
142
107
94
100
111
128
99
106
128
126
88
107
134
80
137
96
102
89
101
93
116
136
106
154
118
121
131
151
78
107
144
106
154
199
152
118
76
43
120
85
69
156
128
138
146
80
69
155
80
143
112
118
133
87
110
52
69
136
131
92
143
133
120
85
120
88
93
130
151
110
113
136
87
66
76
87
82
100
81
119
187
137
80
78
104
69
89
95
109
72
113
69
69
94
69
119
133
136
69
142
80
88
197
104
69
137
131
100
110
99
120
123
139
90
69
90
110
142
109
110
89
129
107
69
80
131
129
69
115
110
80
107
76
125
153
72
89
69
80
89
103
146
69
149
117
107
107
84
119
107
80
78
80
121
128
124
140
80
80
52
109
80
151
85
88
79
162
74
131
87
115
71
136
121
80
76
119
147
91
69
69
106
163
85
120
101
112
138
99
117
88
136
125
76
131
129
94
93
78
107
140
78
119
100
89
89
76
80
154
78
80
89
72
93
120
80
154
87
99
79
181
109
152
80
87
155
142
128
156
94
89
124
88
87
92
140
133
63
81
72
77
109
164
76
91
91
101
89
93
107
134
175
136
88
131
78
94
80
154
107
126
69
88
94
139
80
152
88
58
155
128
72
104
148
102
127
110
154
80
78
110
76
87
63
99
112
110
117
74
110
102
107
80
197
72
87
163
120
69
91
76
108
107
131
154
99
101
87
74
88
104
76
117
80
104
107
93
91
85
156
110
106
128
92
69
112
91
111
87
119
144
145
140
80
119
163
87
80
175
67
107
80
130
164
130
117
76
127
174
146
69
89
131
143
134
175
69
141
88
83
151
106
76
88
87
128
125
88
106
121
78
96
123
94
98
137
112
89
87
118
111
113
94
80
163
151
117
80
119
103
109
108
85
76
83
163
109
155
151
73
154
102
99
120
106
88
75
88
120
91
78
157
136
74
60
104
183
90
96
94
163
109
98
99
87
76
89
154
123
120
110
78
76
148
80
162
119
102
96
164
97
113
113
155
120
127
94
52
113
109
125
90
113
175
135
89
94
87
90
103
91
72
145
102
83
113
175
153
118
163
80
85
149
99
80
79
131
64
136
80
80
94
147
134
111
132
88
156
92
109
132
91
113
104
101
127
113
78
90
80
87
80
118
106
197
120
89
80
72
64
72
150
89
59
119
89
134
113
120
112
174
76
83
108
154
96
69
154
82
119
80
85
94
116
103
142
154
100
129
101
130
114
69
128
117
92
119
112
119
123
128
69
107
109
93
93
78
128
138
69
160
72
142
76
119
111
43
76
154
78
104
100
128
80
148
99
54
90
155
94
111
169
99
130
78
93
117
91
119
118
140
133
113
52
110
122
134
113
106
76
119
91
144
131
87
80
109
120
87
110
69
175
107
96
80
104
131
154
80
111
69
136
106
120
94
147
119
185
100
117
136
83
95
156
127
114
110
113
96
87
76
102
80
80
69
72
106
56
117
119
89
111
107
120
85
76
78
107
115
148
89
98
94
93
56
87
129
113
171
131
145
125
120
134
69
107
99
79
120
100
154
99
134
84
67
119
54
131
119
134
52
88
160
89
107
110
140
79
80
120
129
123
148
94
80
108
104
175
104
69
122
134
119
72
69
69
120
151
171
154
99
91
54
155
80
74
85
89
183
117
100
69
132
109
95
119
104
146
134
69
120
137
123
80
80
80
140
100
80
78
114
129
117
123
119
80
117
52
103
87
80
120
99
131
88
80
80
145
183
162
112
52
155
104
119
110
93
175
121
87
80
106
107
163
78
138
145
72
76
119
78
96
87
121
104
78
123
67
140
80
93
131
107
131
154
89
111
102
87
195
155
87
74
94
76
113
175
174
94
83
87
89
115
146
132
128
87
69
96
107
80
123
145
138
140
115
107
89
80
83
113
88
87
124
128
83
93
54
69
128
127
118
137
154
100
104
54
88
128
107
97
132
109
119
43
80
174
96
76
69
78
66
80
88
118
80
66
84
66
67
82
136
80
163
128
128
127
88
76
59
114
113
147
69
101
117
109
93
88
89
85
93
126
101
69
85
52
111
80
80
93
91
82
101
131
98
102
76
67
175
89
175
69
154
69
107
78
80
78
93
138
113
80
95
122
113
106
129
69
146
128
76
119
128
82
76
154
80
160
60
151
137
120
85
121
103
154
155
80
102
106
111
69
80
121
130
170
124
110
107
80
87
114
110
87
134
106
92
181
80
92
129
102
72
119
93
76
197
134
131
121
151
148
175
94
120
75
80
87
110
136
107
143
156
156
80
117
78
89
106
72
175
75
80
136
69
147
146
76
140
101
87
107
163
101
105
95
94
83
80
111
90
134
88
140
100
119
78
145
131
132
137
116
80
131
78
88
119
140
69
89
90
99
160
174
130
122
82
104
110
114
148
147
69
114
80
54
87
76
140
80
81
166
69
115
175
131
140
72
155
76
145
80
99
119
102
85
76
145
99
94
88
118
96
80
87
96
112
119
69
115
103
96
94
80
128
80
79
151
80
156
125
154
80
128
99
110
112
88
99
102
76
93
107
123
136
80
128
89
118
96
76
89
113
101
114
119
164
98
197
111
87
78
117
128
127
72
142
154
78
142
163
89
92
183
96
128
132
119
91
160
77
113
92
119
121
181
102
110
120
94
121
99
109
128
87
166
132
126
127
79
127
117
109
100
109
83
110
100
107
128
69
140
108
100
80
93
157
136
131
120
87
106
67
133
134
100
87
99
130
110
94
133
98
119
106
89
154
69
101
80
93
122
78
64
72
128
146
99
119
111
144
148
80
76
119
106
119
80
151
54
69
83
69
185
69
139
111
89
128
164
104
128
106
80
120
136
132
69
117
151
80
76
78
76
107
80
56
69
133
89
109
197
115
110
120
80
106
187
102
141
110
74
75
120
107
93
119
123
80
69
52
117
154
87
76
103
162
78
80
122
91
124
106
152
121
107
140
69
156
69
115
126
137
118
119
80
110
102
69
133
155
80
76
72
163
136
80
122
99
80
78
76
52
128
66
107
128
69
175
72
133
140
138
154
140
151
94
80
80
89
99
134
78
129
134
88
78
146
152
175
164
132
69
76
148
110
94
172
104
56
95
80
74
69
128
101
124
106
76
93
145
151
119
113
91
89
91
80
108
113
107
80
107
101
93
69
122
80
69
115
88
93
119
174
69
85
112
123
144
151
83
99
110
114
101
87
78
93
69
76
149
54
89
98
140
107
80
119
140
119
90
88
99
104
80
80
96
143
150
116
113
78
109
130
127
151
87
103
112
76
164
110
94
151
89
121
175
80
131
148
104
107
93
69
177
107
151
110
142
100
99
80
87
79
115
131
93
99
80
80
76
74
96
151
76
112
80
72
143
110
154
175
76
120
89
118
88
107
67
88
69
78
123
87
56
121
72
96
121
155
80
76
80
110
94
118
119
146
178
110
78
52
102
118
114
69
124
148
110
76
87
106
107
87
76
94
101
56
130
152
80
76
54
106
149
131
69
151
69
109
87
80
80
115
123
113
87
144
89
87
146
87
101
107
76
96
114
106
85
137
124
119
118
69
93
107
74
128
91
127
109
145
89
151
136
131
143
94
56
137
69
54
96
134
108
78
114
72
146
74
77
197
129
62
69
117
120
80
107
109
69
104
100
102
130
80
119
80
120
175
119
155
89
120
111
123
199
100
164
69
107
197
88
151
88
69
95
99
121
115
93
134
90
104
78
78
87
102
143
137
100
103
99
112
66
126
89
114
87
69
99
103
164
112
80
129
82
104
80
119
78
103
120
94
89
79
96
99
101
175
100
134
83
104
134
69
154
140
177
120
127
121
80
103
119
136
117
131
104
134
54
69
175
100
120
72
114
116
128
99
175
136
106
107
80
87
128
110
110
156
95
181
113
163
103
91
69
100
124
89
101
109
87
93
123
126
123
119
125
107
104
109
175
148
122
111
87
122
130
137
113
107
99
87
94
104
76
80
98
145
95
142
107
148
74
78
119
153
160
155
112
96
88
83
99
81
137
108
126
78
109
144
127
113
69
69
128
94
119
148
136
76
69
105
116
76
134
80
109
76
98
124
80
175
128
80
89
76
93
87
152
105
96
128
120
134
74
156
117
80
113
72
90
88
119
127
131
80
80
93
79
163
138
63
101
114
164
134
134
89
154
78
156
63
80
94
129
175
78
112
100
175
81
76
187
87
94
99
156
153
87
78
119
118
69
115
56
83
87
76
96
80
70
136
72
76
96
101
82
111
78
69
96
79
88
155
78
112
120
107
87
87
119
102
112
134
136
89
85
80
121
163
107
69
95
119
150
139
197
158
99
161
87
104
104
128
80
115
147
131
86
109
138
104
110
114
175
87
87
85
80
145
175
136
128
151
98
119
80
119
85
101
106
78
101
153
128
66
116
115
158
153
134
74
153
131
88
147
54
138
78
76
154
138
78
69
69
78
94
106
108
122
80
69
103
151
66
69
71
112
144
69
88
78
117
134
113
89
112
89
83
165
151
140
72
118
119
66
69
57
69
107
80
56
136
90
111
120
78
119
92
154
80
96
147
96
101
80
119
85
99
87
197
120
131
146
76
96
72
128
175
64
96
43
94
135
78
89
86
107
121
70
80
95
119
85
78
130
114
69
80
99
99
96
89
72
78
88
197
141
201
156
101
88
90
139
99
80
90
99
134
197
125
119
136
136
88
93
87
164
107
89
96
134
117
89
98
80
117
112
154
89
100
119
104
124
122
142
128
80
75
141
120
157
80
126
99
88
136
119
88
113
83
88
91
111
87
137
80
87
128
72
72
79
130
80
121
120
175
115
87
69
96
76
80
78
78
134
136
123
78
156
141
82
99
80
69
110
131
88
98
175
69
120
104
153
97
98
80
80
121
117
87
119
129
140
118
136
100
80
145
78
69
123
88
89
140
110
66
76
80
99
80
99
87
72
106
69
120
175
124
115
128
69
96
148
114
127
72
85
69
118
107
88
76
76
87
93
69
76
104
96
87
88
121
136
87
80
119
106
134
80
69
103
115
72
80
98
99
131
119
120
119
129
69
76
120
94
57
106
80
76
104
133
128
80
94
111
107
80
88
96
99
120
74
69
121
129
96
119
96
106
113
79
80
80
76
142
109
106
126
129
88
64
59
69
121
117
87
124
96
99
109
107
145
134
103
112
80
145
138
120
175
147
130
120
131
151
76
88
94
78
80
130
99
96
69
56
83
138
127
69
146
80
87
83
80
74
102
120
137
87
64
138
93
134
147
78
85
80
78
80
69
151
78
110
119
80
94
88
183
87
109
104
110
96
72
155
160
54
140
80
76
85
150
150
87
145
68
163
80
94
121
143
137
113
175
80
76
99
43
80
154
104
175
66
100
80
123
109
118
76
152
99
80
128
103
100
80
101
80
133
80
69
129
113
105
134
87
119
105
175
123
121
175
120
174
121
122
76
120
104
128
119
69
110
183
92
69
131
130
80
118
74
88
132
134
119
88
175
107
107
69
67
114
89
103
80
43
134
87
152
112
143
133
148
89
156
88
96
88
185
80
99
56
95
76
80
100
136
82
119
76
122
143
120
76
69
52
94
121
109
112
96
91
80
89
113
69
175
76
112
80
76
122
129
124
80
106
151
106
101
94
78
69
157
92
100
85
104
113
93
147
76
109
91
160
151
101
128
121
154
99
101
155
99
136
87
152
72
125
83
127
69
121
197
72
151
80
115
155
118
117
76
109
102
102
95
71
80
99
161
139
74
98
94
107
117
128
88
87
78
92
118
80
80
80
128
109
89
69
93
119
151
69
69
110
120
124
119
99
118
76
80
54
90
124
105
69
80
95
131
100
143
118
104
76
104
104
106
142
98
98
113
76
90
87
113
68
166
152
120
71
102
154
96
68
75
107
154
88
69
118
94
197
89
133
76
157
76
104
96
89
80
118
73
69
107
99
89
89
120
111
69
86
109
69
145
80
125
78
103
134
66
175
119
102
80
128
152
121
119
80
93
197
66
72
78
76
136
78
95
82
114
76
97
91
72
136
91
120
128
149
80
175
120
89
143
149
138
87
69
100
98
132
134
136
151
81
107
120
101
181
80
131
110
52
133
107
114
120
83
78
175
141
80
87
87
153
97
91
151
83
109
112
56
69
80
111
107
80
175
164
92
96
128
66
127
88
100
112
76
107
87
130
154
111
80
80
119
99
101
99
104
137
154
81
148
145
109
120
175
105
100
104
76
69
80
87
109
113
123
120
80
104
80
119
99
80
138
80
76
94
144
106
156
71
94
165
130
99
130
119
117
91
91
197
87
95
99
88
78
106
122
140
129
112
95
142
102
101
113
107
142
78
94
72
76
107
80
76
81
151
85
110
126
114
87
88
109
115
115
110
115
164
94
98
88
94
80
131
99
162
80
123
100
109
91
163
143
169
95
140
97
110
115
99
99
87
125
111
115
125
101
134
96
110
120
100
149
88
175
117
80
78
88
134
128
87
106
89
94
147
92
104
89
78
120
101
144
131
163
104
122
88
131
91
112
87
88
119
69
94
87
69
69
146
58
131
69
128
175
71
120
93
119
102
80
69
76
76
106
95
121
107
107
102
145
105
94
131
109
108
76
119
156
88
117
80
69
120
121
119
69
74
146
98
87
111
127
96
69
134
74
183
119
104
85
78
87
119
80
120
104
69
89
76
175
113
115
76
149
78
89
91
119
87
94
172
134
103
121
114
80
107
78
110
78
120
104
78
80
120
80
104
106
131
69
69
140
99
109
106
80
96
119
197
69
80
69
151
109
151
52
54
87
126
160
151
106
115
119
76
154
143
89
104
137
80
156
110
94
107
99
150
154
175
164
119
52
143
146
112
80
69
80
80
107
110
100
80
76
120
116
110
58
131
87
80
80
88
143
181
131
79
119
80
115
69
143
106
134
127
80
56
80
140
71
146
120
135
80
69
103
131
114
127
145
119
119
110
120
78
159
127
122
107
107
78
134
103
120
137
78
101
80
87
99
94
101
69
117
120
80
113
76
87
145
156
80
87
109
93
119
85
85
76
107
69
147
93
98
128
69
80
80
122
119
76
80
99
122
78
94
145
137
156
131
120
154
72
80
100
52
156
119
175
146
52
104
127
87
96
104
104
79
139
114
121
110
117
110
101
52
87
107
119
121
119
134
110
133
144
80
102
91
140
175
80
103
89
172
114
93
143
134
72
119
69
175
93
87
69
72
94
87
89
118
80
127
94
76
104
120
128
76
80
131
134
132
69
72
69
80
69
110
113
80
80
80
156
141
89
112
58
80
96
128
140
117
107
155
106
100
128
150
120
69
131
118
76
172
128
87
118
69
98
128
72
87
109
87
125
118
109
87
119
155
137
133
110
120
94
122
69
87
69
93
117
119
107
88
109
106
131
89
87
79
132
84
104
131
66
79
95
113
130
88
69
98
80
104
117
121
119
103
111
80
113
107
80
69
126
175
109
88
90
163
109
78
163
113
120
78
130
112
78
131
76
120
154
128
156
109
93
87
83
119
107
154
91
88
87
121
104
120
90
197
119
131
78
117
136
110
87
118
87
185
87
69
124
78
123
115
96
156
155
101
164
89
88
69
76
77
109
69
80
104
112
136
106
175
121
126
157
80
76
130
121
128
154
87
120
82
146
101
90
110
163
118
175
175
104
69
110
78
129
87
52
146
148
115
95
136
109
121
88
101
131
80
115
91
72
78
113
99
134
80
124
82
93
106
123
107
134
132
154
138
104
154
56
101
108
72
69
99
119
130
132
119
99
109
128
106
101
113
115
151
88
131
96
91
115
109
205
87
136
100
117
79
72
131
92
109
120
107
95
81
107
119
113
174
78
80
99
106
64
91
128
89
69
141
112
95
69
107
74
110
113
103
131
76
137
119
154
69
110
89
111
109
104
71
72
143
110
155
119
101
128
181
109
138
94
88
100
76
64
87
143
104
123
87
110
96
121
110
69
132
125
114
69
80
156
108
109
80
197
93
96
107
78
143
130
113
89
94
74
76
80
80
72
99
87
69
121
69
100
89
100
88
117
112
106
154
80
69
80
143
130
134
78
160
138
89
113
69
75
88
128
117
134
89
87
52
80
119
83
135
121
89
154
78
106
80
175
88
80
98
120
112
93
154
119
156
96
96
120
72
80
120
155
145
129
136
197
69
92
69
94
87
80
109
120
74
141
54
93
78
123
107
119
103
89
107
85
134
119
69
80
110
125
80
88
120
138
175
94
145
145
90
89
175
132
104
87
80
78
121
109
110
69
131
67
80
122
110
72
76
78
93
112
69
154
113
69
104
52
128
101
117
197
76
197
197
174
128
69
154
87
131
119
171
137
121
87
76
69
69
146
102
104
125
140
83
142
96
121
96
80
54
117
109
128
156
109
54
69
136
110
112
114
120
95
134
87
89
74
87
136
145
121
72
152
90
122
100
118
93
117
130
93
98
122
91
101
91
114
175
140
120
175
69
80
78
154
88
113
121
145
76
69
117
85
120
177
59
78
90
80
99
132
143
69
119
156
89
83
99
110
140
80
78
148
140
72
110
80
131
101
151
110
110
134
100
69
80
87
87
69
93
118
115
95
78
80
163
93
163
111
87
156
91
78
135
124
104
133
91
69
117
106
76
87
69
96
80
80
124
109
111
120
63
78
106
146
156
83
75
127
94
105
54
69
106
160
114
114
150
119
117
119
103
134
113
103
158
128
117
122
107
72
114
112
156
78
80
82
78
69
119
54
96
113
89
87
88
80
78
139
111
76
80
69
133
78
135
90
146
99
104
75
128
88
197
92
93
85
72
163
60
133
110
69
80
112
117
97
88
76
140
117
101
136
100
130
103
98
89
80
98
99
108
109
152
147
98
113
100
103
144
102
114
100
87
109
155
99
74
69
94
80
52
136
145
106
120
90
149
174
136
69
99
101
99
104
116
82
117
109
119
69
124
91
100
87
87
197
78
197
100
80
78
96
76
96
80
110
175
99
76
104
99
123
91
78
119
88
115
119
57
138
69
109
146
80
80
88
89
78
78
120
78
197
112
99
76
99
156
99
107
94
117
68
110
87
88
135
78
104
88
121
87
133
80
69
192
76
145
101
174
126
164
122
111
87
136
80
76
87
88
91
118
99
89
113
103
96
110
107
119
126
112
129
154
69
122
131
87
174
125
88
122
69
94
54
104
93
90
72
76
78
94
104
199
81
126
121
91
140
137
80
131
119
115
145
101
120
85
69
78
120
80
113
106
113
76
156
100
80
94
78
123
132
111
136
80
87
131
78
110
143
127
69
80
72
104
187
80
97
56
118
87
78
111
80
146
87
94
111
87
95
104
107
87
113
145
128
91
69
80
76
87
142
69
154
87
137
89
99
96
112
85
106
98
141
78
80
131
90
80
72
123
88
102
87
43
89
123
80
101
121
89
91
80
154
107
69
128
120
151
93
96
128
101
175
94
136
106
43
126
69
99
120
94
78
112
119
117
146
88
121
107
76
95
69
145
169
83
80
91
140
80
80
118
80
117
87
95
195
136
69
72
87
59
94
124
80
110
112
113
104
122
121
134
94
175
80
160
181
80
72
69
99
77
131
131
113
101
80
114
69
88
87
109
89
76
99
99
133
91
74
80
75
80
78
164
112
157
91
74
151
99
151
85
69
140
76
76
87
109
108
120
52
80
69
96
78
119
124
91
101
128
52
90
117
143
76
119
80
87
113
87
175
83
89
151
93
146
174
80
124
146
77
107
89
94
101
155
124
87
113
96
94
129
169
80
147
104
136
140
122
99
197
87
69
119
92
54
143
156
73
99
104
197
119
119
111
69
106
150
72
140
127
162
151
123
146
102
127
78
175
109
95
113
131
76
154
124
76
69
148
121
175
99
140
80
121
114
137
78
121
134
88
80
88
134
175
128
88
183
190
163
89
80
110
112
101
134
85
119
163
91
106
80
76
87
136
80
140
136
69
69
112
119
136
127
80
127
102
127
106
120
155
131
164
89
85
99
107
80
78
90
87
69
94
69
147
69
80
118
69
121
119
101
117
146
199
103
80
122
83
69
140
76
117
89
76
115
67
102
131
81
119
87
175
117
85
93
69
119
107
109
78
163
111
80
128
120
102
88
107
121
121
69
112
56
80
175
94
110
69
67
151
80
80
94
67
121
149
98
146
107
91
80
123
69
75
111
104
103
109
103
76
69
104
152
94
69
128
87
89
154
106
126
56
104
76
132
102
69
128
151
128
131
120
142
135
106
104
175
91
94
107
132
80
69
85
76
118
103
121
113
69
93
98
69
94
169
128
118
80
100
154
69
74
201
83
87
76
91
78
122
122
80
113
80
94
54
119
69
119
72
131
87
90
106
79
175
101
120
110
76
128
80
106
87
175
154
99
69
80
143
144
102
80
88
94
114
117
89
104
80
106
106
113
145
132
123
107
107
131
80
52
175
95
154
69
97
96
95
121
140
76
78
99
87
112
163
80
197
132
59
87
69
69
66
78
87
146
109
80
141
80
134
89
76
103
80
127
109
80
117
119
175
78
89
129
138
112
94
175
88
130
109
80
98
109
140
69
126
80
115
88
115
91
80
107
119
80
78
132
88
118
91
131
78
114
131
80
69
197
156
101
87
164
154
183
118
78
117
78
78
80
78
118
111
76
156
88
136
87
87
121
88
136
140
80
109
109
127
110
69
107
154
130
120
129
80
105
106
131
115
78
126
119
144
82
69
117
80
102
99
197
72
90
175
89
135
89
127
107
88
133
109
99
119
113
69
90
96
127
106
119
69
110
110
80
151
117
102
110
109
154
112
126
125
111
123
107
120
155
128
97
91
119
80
107
79
106
99
80
124
99
91
113
133
133
197
76
78
80
137
131
96
132
72
86
80
126
94
97
140
87
156
151
67
127
69
154
52
125
69
87
69
122
175
127
119
185
128
143
99
98
80
102
122
120
99
110
109
136
119
80
78
82
107
87
120
119
69
88
161
94
80
69
88
175
78
156
122
69
100
78
69
88
113
88
140
80
102
72
111
99
106
139
69
157
126
107
90
105
110
87
73
104
66
159
104
121
69
87
153
123
76
109
80
114
141
154
87
118
76
127
89
134
69
87
126
92
121
104
87
87
94
154
104
68
175
114
93
87
69
119
120
91
119
69
76
136
117
88
74
113
76
87
99
118
76
107
133
130
120
89
123
69
88
99
131
73
80
69
122
110
158
136
66
68
87
141
127
162
98
56
87
87
68
147
80
121
153
72
69
78
106
69
175
95
112
131
106
79
67
89
101
154
94
134
87
87
76
124
140
80
109
76
112
112
80
117
106
80
128
69
128
120
91
88
101
99
121
104
43
96
107
83
154
128
78
69
80
80
69
78
87
133
88
175
106
120
137
88
70
175
69
110
99
155
128
120
101
175
155
115
52
87
80
69
134
100
110
136
118
130
87
88
107
94
91
76
115
106
74
107
113
131
87
163
78
154
138
148
90
104
69
134
140
80
72
131
93
136
114
88
119
99
74
76
76
69
87
119
112
72
183
109
72
118
181
80
76
76
118
117
60
73
143
72
140
147
143
134
78
123
101
76
87
78
80
134
83
160
117
80
80
99
156
123
69
101
131
131
87
145
89
131
119
80
137
110
93
112
78
74
80
80
81
69
105
163
136
89
150
80
128
69
69
69
134
96
143
158
52
76
148
87
69
89
87
109
120
69
197
175
80
78
88
121
140
104
136
91
199
72
109
116
69
72
133
78
69
113
92
119
119
93
118
148
140
111
169
110
89
80
132
69
76
123
76
109
87
155
80
104
93
119
76
156
97
119
131
134
80
142
91
137
121
136
134
119
120
76
128
99
123
151
117
134
96
100
129
80
74
111
106
127
135
80
99
89
100
120
122
134
72
78
119
92
99
54
111
138
110
123
136
87
93
140
69
80
86
106
128
69
82
89
54
120
80
87
151
128
115
151
64
120
80
77
197
110
96
143
87
134
148
56
69
120
80
76
87
80
78
95
118
104
151
94
135
74
128
113
142
87
69
124
99
72
102
91
80
106
104
151
69
98
154
122
93
119
76
76
80
156
87
109
199
110
96
98
69
107
106
159
146
101
133
128
69
112
112
91
147
134
122
101
94
87
83
66
201
113
76
89
69
80
109
114
163
76
130
74
106
80
78
66
112
80
119
145
85
117
133
80
87
69
80
163
87
154
123
124
67
76
78
69
114
110
156
156
120
99
147
80
69
80
109
87
110
76
78
88
124
84
146
78
52
80
89
87
93
120
154
89
78
84
133
132
104
80
109
93
114
107
78
118
69
87
155
87
87
106
130
119
113
119
132
69
175
164
137
138
80
131
113
87
134
109
112
80
114
78
69
95
89
78
121
115
89
141
129
72
106
124
125
91
101
107
72
130
136
138
131
125
131
78
128
197
148
110
123
111
128
128
90
89
156
136
102
101
87
129
87
154
78
109
104
76
175
76
69
128
111
110
91
66
104
100
100
134
98
54
119
78
69
87
136
145
69
75
119
123
98
140
175
112
143
154
94
140
80
106
107
156
133
76
109
129
87
80
96
145
131
125
127
71
80
107
117
89
80
143
43
80
87
80
118
112
162
120
121
80
131
110
106
130
111
92
104
154
78
98
69
87
133
92
123
143
149
107
127
154
124
96
69
107
89
52
76
78
109
80
109
80
98
124
132
107
90
80
160
99
87
144
163
131
85
80
76
71
93
121
76
119
94
118
88
90
107
85
175
104
76
172
76
102
96
91
145
76
134
110
123
93
119
119
115
92
80
80
77
80
175
101
125
123
120
118
104
93
69
137
175
110
104
95
54
87
92
89
87
91
120
80
147
129
80
87
154
83
101
89
80
124
117
85
76
99
109
126
80
197
106
96
130
147
106
80
76
72
93
112
175
107
76
154
101
136
117
120
99
87
133
175
78
154
155
104
147
110
86
102
81
91
80
114
113
89
52
72
111
125
102
69
122
80
87
162
78
76
163
110
117
88
107
88
119
128
101
197
138
121
76
114
122
106
136
124
89
110
123
109
69
89
113
101
59
69
78
119
110
154
145
80
145
140
87
93
78
119
109
85
80
130
208
93
113
72
69
109
54
69
107
110
136
110
104
78
117
69
96
115
66
104
89
127
154
114
130
89
131
69
199
119
80
172
64
112
76
119
130
113
89
136
83
85
154
76
89
104
128
134
132
113
106
69
80
118
124
128
127
69
132
104
120
99
108
86
180
78
88
93
175
175
123
181
159
78
117
104
54
151
89
87
105
96
69
160
69
128
151
169
131
78
76
128
120
156
113
113
103
54
76
100
87
95
122
88
131
86
109
89
99
76
93
85
121
107
72
119
129
175
74
149
80
119
175
107
129
175
69
151
54
78
83
121
112
123
93
128
154
89
89
107
120
113
100
69
80
87
155
149
76
134
99
78
111
129
88
121
140
69
92
109
80
72
99
69
91
107
69
107
113
88
68
114
80
80
126
110
87
96
56
107
126
93
52
88
121
149
69
120
76
89
96
102
87
80
112
101
89
162
109
119
78
43
91
104
52
64
175
88
78
175
80
72
112
110
91
117
144
101
59
54
156
102
125
87
98
96
115
76
69
131
76
178
89
156
157
80
78
69
128
103
78
99
91
99
76
76
110
110
164
117
87
82
136
78
80
154
109
100
52
64
154
104
78
69
115
82
92
94
162
80
118
78
119
134
76
119
101
132
120
94
88
72
80
89
69
84
130
83
132
160
93
130
141
83
120
111
111
126
136
54
118
94
197
125
100
109
88
80
130
99
104
109
163
80
143
117
139
175
76
128
113
85
88
183
80
113
108
113
104
107
91
124
94
155
124
128
76
99
119
160
82
76
123
126
72
115
111
101
146
166
80
94
120
69
107
119
131
122
107
89
76
78
80
104
175
83
110
140
76
111
78
110
111
80
117
76
132
111
94
157
98
119
103
88
87
107
164
80
75
76
99
76
119
109
134
76
80
88
183
117
87
160
120
104
78
133
124
92
143
69
72
75
122
117
154
145
78
144
88
80
89
109
119
156
79
78
146
54
169
89
69
111
120
102
117
64
128
85
104
80
104
154
132
132
160
110
93
69
88
137
136
109
136
69
78
126
155
104
114
151
141
84
106
113
134
106
80
175
76
69
150
132
127
91
80
113
114
113
112
154
88
106
89
52
88
91
129
131
106
80
78
74
175
128
119
118
84
78
71
76
80
115
117
165
114
69
140
69
109
100
113
154
73
134
91
69
66
160
52
90
151
79
56
133
120
132
121
91
91
75
121
175
69
110
56
94
129
85
99
99
138
119
76
112
79
69
80
93
69
80
131
80
144
76
63
118
96
101
102
154
95
94
118
80
106
143
134
80
69
80
175
76
128
133
80
99
119
101
83
94
151
107
69
69
69
88
94
129
80
127
106
131
83
131
81
76
80
82
130
80
118
112
106
78
101
88
120
117
105
93
121
102
80
54
80
119
80
80
88
106
174
119
93
94
142
136
80
160
66
80
96
136
147
197
68
97
131
80
132
121
113
107
132
107
138
95
107
80
80
87
128
163
101
110
99
134
87
96
78
156
99
197
78
74
85
114
69
143
96
165
91
131
78
87
108
94
120
131
52
99
112
78
80
99
114
110
78
94
133
80
120
119
91
111
175
117
111
110
99
107
99
156
80
109
121
56
88
69
91
120
123
124
99
126
154
96
109
78
80
155
187
80
139
122
106
80
101
154
135
136
96
76
120
110
138
78
85
80
80
94
112
110
80
134
69
80
110
156
104
85
88
80
148
175
87
101
120
107
90
119
114
159
111
127
131
96
175
154
76
69
69
98
80
115
128
69
94
125
140
156
120
120
85
76
80
149
91
68
64
76
111
94
87
156
156
101
99
88
146
148
119
88
127
89
131
91
145
66
119
82
98
98
117
78
154
131
156
136
118
69
107
175
111
76
138
73
153
146
128
96
85
99
104
120
91
128
110
110
119
90
142
78
113
107
78
120
80
119
185
134
90
88
52
134
104
93
80
80
136
93
140
136
80
130
89
100
99
175
118
43
78
110
127
120
128
80
117
154
109
87
87
69
96
106
80
120
117
104
140
69
126
80
101
110
80
76
99
103
136
209
107
94
128
69
95
172
99
80
175
58
76
93
101
100
72
132
145
76
107
100
140
95
120
88
86
100
76
110
69
106
162
78
130
154
146
78
123
109
80
80
122
78
98
94
137
183
130
178
156
106
79
90
106
78
156
99
120
85
69
136
145
89
175
80
120
121
87
102
121
69
133
80
94
80
80
126
76
121
103
146
69
80
75
75
127
87
115
108
122
68
80
106
159
110
117
93
113
118
94
102
131
100
130
80
116
111
69
154
110
117
117
94
100
121
96
88
80
94
106
131
78
175
95
99
90
79
118
102
87
80
69
134
111
93
144
104
93
87
109
89
104
144
118
80
99
128
94
172
57
106
76
155
128
167
175
99
107
93
119
132
164
126
80
80
123
116
131
113
111
101
112
76
119
127
69
106
74
93
138
156
137
122
119
125
95
151
87
154
78
87
120
128
164
123
97
154
106
90
112
163
120
106
117
128
134
93
104
107
122
89
69
123
128
69
69
113
113
94
123
69
127
87
155
209
146
80
94
72
154
164
78
150
129
69
92
197
102
76
76
102
120
136
105
139
69
113
148
87
72
153
166
122
89
162
108
78
120
109
69
90
68
136
96
119
80
175
93
175
140
69
136
154
94
87
134
147
76
80
150
131
156
98
88
101
145
69
154
69
120
69
87
90
68
91
101
107
111
143
134
142
121
72
137
80
154
80
140
118
104
107
112
78
81
117
114
120
71
156
104
175
69
93
113
138
185
75
69
89
164
109
120
163
80
80
80
67
99
80
87
111
88
119
106
172
91
195
128
151
140
155
121
88
113
94
141
54
125
87
154
72
144
109
80
102
132
87
128
54
79
136
78
142
95
120
102
123
119
141
82
80
122
163
64
69
99
148
76
107
98
89
131
78
145
80
151
87
78
80
106
80
89
94
80
117
107
120
100
80
102
87
80
80
155
120
156
69
113
69
155
69
85
127
101
69
89
163
69
107
87
123
104
69
130
135
107
119
88
113
80
135
172
75
69
81
78
115
69
112
131
87
78
163
134
120
175
78
154
94
106
106
101
80
114
127
117
70
99
119
101
80
88
101
95
140
131
78
80
99
120
125
43
172
88
85
154
109
104
154
91
80
80
87
106
183
87
54
80
89
56
89
134
98
52
60
76
69
76
133
99
110
75
154
94
126
102
69
120
140
124
122
104
107
80
69
87
108
80
43
88
54
128
147
122
106
112
118
109
116
134
119
91
145
88
87
127
117
156
164
87
201
134
93
87
87
87
121
139
130
137
72
88
155
85
69
128
124
107
103
69
146
156
74
101
69
74
80
107
107
87
123
71
69
117
124
80
80
93
119
101
69
78
80
99
154
87
76
123
134
119
88
102
128
76
69
132
107
112
80
113
107
69
78
87
100
78
113
89
119
67
80
126
87
112
104
134
127
178
106
106
87
118
89
99
93
96
69
154
80
109
110
80
115
92
143
93
69
70
77
131
107
95
83
58
54
72
100
87
142
119
104
64
149
115
98
78
146
119
121
69
107
87
74
80
112
121
104
80
161
106
83
69
131
181
69
104
69
111
87
78
205
112
106
110
80
137
72
88
114
107
69
154
92
147
154
140
100
107
126
163
79
94
69
105
110
124
87
87
76
155
197
131
80
109
99
120
91
87
114
163
132
80
154
109
60
134
76
104
121
128
69
119
154
106
166
78
149
82
76
117
128
88
120
87
118
89
78
80
54
143
111
99
156
94
69
80
109
80
134
67
128
117
131
175
88
80
136
80
85
76
132
117
106
76
138
89
155
185
104
71
101
99
87
87
110
128
104
117
163
155
120
87
131
125
160
78
99
115
112
69
181
101
154
136
56
156
87
98
155
80
104
185
76
174
131
163
80
109
104
107
69
104
113
113
112
155
100
120
80
155
114
145
72
197
80
80
101
80
91
87
115
94
56
83
175
109
132
134
76
123
116
112
80
91
89
99
91
130
120
125
120
120
120
110
69
78
106
100
120
99
109
114
154
52
80
78
126
101
111
150
119
88
83
69
115
74
78
158
78
130
102
78
94
87
133
89
117
85
78
123
153
175
56
99
127
85
76
87
152
88
106
107
87
99
69
91
80
132
131
126
89
145
109
80
134
80
80
119
128
91
118
99
69
145
101
118
87
112
151
175
120
72
69
103
113
138
116
80
79
80
52
110
160
99
102
101
80
89
80
69
78
112
104
113
59
119
76
138
145
72
140
113
129
91
85
175
69
78
112
72
119
138
144
175
175
76
144
89
146
103
87
78
78
119
147
107
99
107
117
152
91
101
93
85
110
69
93
80
88
69
197
88
163
100
76
80
88
87
69
76
140
97
96
120
132
80
114
85
78
88
69
201
88
101
120
134
94
67
54
113
90
120
88
92
154
107
99
120
76
69
112
140
80
101
140
82
136
80
80
69
124
80
80
80
110
78
154
85
120
181
80
128
123
112
97
88
78
102
131
69
140
95
98
94
123
166
124
72
80
69
138
150
80
121
69
120
119
154
110
69
80
76
76
137
128
88
137
122
136
58
74
69
91
134
120
136
110
132
134
94
74
119
109
69
128
174
78
83
54
137
102
109
69
111
69
80
119
80
109
115
163
128
98
82
76
88
80
107
133
164
52
166
126
87
76
155
199
80
80
80
140
155
90
89
110
69
58
76
78
69
115
85
175
104
91
117
121
103
87
69
155
117
69
115
80
149
131
113
99
123
175
110
96
80
95
111
76
102
80
80
76
121
69
56
85
56
78
117
109
95
107
101
94
118
93
110
133
118
77
102
80
88
119
121
100
134
122
72
87
120
138
107
94
102
100
175
56
80
107
126
119
133
93
121
143
88
93
112
107
96
120
103
154
120
126
156
80
136
88
80
107
124
111
149
113
93
100
99
74
87
134
102
91
118
78
120
69
96
156
119
69
96
76
96
128
120
127
58
102
80
146
76
104
87
80
66
89
120
120
66
102
69
137
87
120
76
129
87
89
87
121
106
164
116
104
136
80
87
133
120
136
69
69
69
121
139
144
88
117
112
80
80
69
151
169
83
129
150
128
80
100
74
126
120
69
54
80
112
88
128
154
106
88
79
197
144
104
106
119
103
69
154
96
160
137
136
145
140
151
134
101
112
136
109
155
74
60
80
115
80
87
104
89
120
164
80
105
89
117
138
146
69
78
126
75
144
125
123
69
134
152
117
118
109
135
110
132
114
90
88
78
154
99
91
136
154
56
88
134
124
126
138
76
98
175
148
119
144
123
107
121
82
104
136
87
80
143
134
78
104
99
74
125
72
87
72
76
91
119
139
80
175
175
143
119
121
127
79
78
120
87
134
126
90
168
136
99
156
94
119
140
114
80
80
97
119
109
107
145
109
80
119
80
69
112
146
88
71
106
91
76
72
110
175
132
72
87
104
89
104
80
181
121
98
117
114
83
94
87
128
120
117
136
147
154
57
121
107
89
144
80
118
101
139
140
107
119
123
91
104
147
136
140
138
131
103
138
119
145
163
115
80
172
88
102
197
136
113
125
80
89
129
80
148
120
174
107
87
112
80
108
114
127
155
94
72
136
60
94
156
156
141
90
76
102
91
119
154
101
72
109
56
101
69
94
99
118
163
69
76
113
120
154
80
121
175
157
87
137
121
90
86
136
163
74
113
104
80
123
119
112
120
165
94
121
127
69
106
87
72
96
136
154
112
88
80
87
108
80
148
67
87
83
146
66
67
101
109
107
114
115
103
56
97
80
126
87
95
110
69
89
85
121
175
119
121
102
89
127
88
115
69
128
144
80
80
175
131
134
80
128
121
145
197
125
125
80
185
146
131
110
120
114
69
148
94
115
69
201
134
56
114
87
99
110
121
155
153
69
154
157
99
145
106
69
118
114
175
104
69
140
104
154
112
57
80
131
146
92
197
80
127
112
82
120
101
124
85
117
134
197
100
115
69
94
60
151
155
78
76
119
88
119
112
91
101
80
87
76
80
69
135
151
110
94
111
163
100
155
128
109
175
87
162
111
115
138
89
80
197
72
134
80
120
76
155
89
78
131
88
80
140
69
80
90
164
175
98
129
140
89
131
120
137
96
87
121
119
118
106
137
121
120
88
101
90
89
109
147
100
80
147
87
118
94
122
120
117
102
74
85
152
80
80
80
106
94
151
69
137
124
100
102
93
60
106
134
94
52
93
124
89
54
109
100
109
125
78
103
80
155
112
117
88
115
197
94
112
175
131
127
137
120
128
95
136
82
119
106
133
119
113
107
69
52
116
121
145
76
80
87
80
155
87
151
88
128
113
69
136
106
113
80
109
137
120
80
103
76
89
80
67
88
175
69
69
118
119
111
99
125
94
80
90
91
145
94
87
129
88
147
119
113
99
105
110
94
104
128
119
80
88
117
185
122
78
80
69
118
109
87
93
119
144
87
143
151
137
163
89
99
104
92
115
78
76
112
76
94
181
69
96
175
137
131
87
109
96
78
128
120
69
106
132
80
87
102
131
72
78
104
137
78
99
99
110
102
58
107
110
132
87
80
165
115
151
94
87
129
119
89
117
109
149
69
90
72
131
80
80
134
119
175
112
139
101
107
89
118
118
92
94
100
69
114
80
85
119
76
130
80
85
69
101
94
90
76
106
74
91
125
101
154
103
127
111
74
137
137
131
156
76
80
100
128
87
80
131
87
104
110
109
101
80
120
76
130
115
104
115
80
163
136
69
130
104
112
94
121
155
88
154
148
109
87
166
118
164
87
127
129
109
156
66
122
118
89
52
78
136
88
131
120
125
80
93
156
156
69
107
89
89
115
117
110
109
121
155
72
59
76
136
87
112
140
64
89
69
119
165
126
69
110
99
67
43
88
76
76
121
145
154
112
155
106
78
109
93
88
80
106
148
101
146
118
113
120
69
156
88
76
80
74
123
155
125
201
131
54
131
131
74
110
121
87
94
125
83
77
144
138
88
131
128
104
88
80
76
112
52
69
80
100
91
112
114
92
98
80
99
72
87
56
91
108
52
118
91
146
99
69
95
96
103
175
136
126
187
96
128
128
80
140
109
120
80
109
130
134
175
113
72
74
69
80
85
134
120
169
96
109
112
163
143
99
80
100
181
109
99
101
146
102
93
103
94
134
164
151
69
84
69
181
80
74
88
93
87
156
99
99
100
120
119
104
131
145
129
101
136
56
128
80
88
63
69
120
104
99
78
87
98
93
155
100
119
155
119
119
67
130
85
80
87
140
80
104
120
69
120
80
197
80
164
146
163
163
87
106
197
151
137
69
151
121
94
112
122
63
111
120
104
115
76
100
101
87
156
59
101
112
107
104
125
76
69
108
106
78
80
133
76
137
69
93
120
99
80
113
68
110
83
143
164
87
123
80
185
116
197
132
111
94
80
143
89
91
98
102
91
69
93
78
133
117
121
205
146
106
109
112
185
144
69
80
87
80
71
145
69
92
88
69
96
111
132
96
80
80
129
80
89
69
142
101
52
175
126
127
119
104
75
69
93
132
82
104
160
154
85
67
119
74
124
78
96
80
113
69
129
87
101
118
56
80
145
101
137
76
89
115
119
78
136
109
87
69
69
117
88
87
114
145
74
119
126
69
106
134
175
119
162
87
56
103
145
80
88
164
88
80
126
175
110
83
96
107
121
80
109
78
128
146
89
80
94
74
78
80
87
87
56
138
80
74
69
78
185
117
112
119
131
88
150
69
78
98
151
104
54
115
91
96
85
80
113
117
99
134
122
199
122
156
78
87
80
89
80
101
87
154
118
122
109
106
110
80
87
119
79
175
69
112
132
87
100
56
111
106
80
78
136
69
88
78
80
154
87
93
146
94
175
76
107
83
145
80
122
113
109
148
143
69
69
127
80
104
110
137
120
99
104
126
157
140
80
155
136
94
99
88
96
91
115
110
100
155
96
93
121
164
110
89
148
80
78
112
80
72
76
107
99
118
80
106
69
118
87
78
117
80
117
79
102
118
87
52
80
110
163
69
117
87
101
110
69
143
169
71
147
78
113
87
112
140
104
131
110
69
100
110
72
94
99
89
96
52
106
175
106
99
101
80
76
88
87
93
88
123
54
80
72
85
80
76
69
52
87
150
175
144
87
94
121
76
164
69
140
126
76
99
104
119
107
120
154
95
115
94
93
91
80
78
80
94
145
107
120
154
120
96
87
129
126
79
120
197
128
181
78
52
69
130
76
80
102
105
130
175
119
137
113
89
127
130
109
67
104
80
136
113
109
110
117
78
130
110
119
101
89
107
107
104
93
89
94
119
197
76
120
106
80
87
122
78
107
90
120
78
112
78
127
93
99
123
57
131
87
87
84
78
100
88
150
123
175
100
136
80
94
69
69
175
140
89
93
87
78
54
94
94
155
133
107
78
85
69
151
80
101
76
89
104
100
154
117
88
91
134
113
119
87
120
94
80
151
140
142
90
76
138
99
78
52
140
80
102
139
80
69
119
78
143
109
101
146
136
93
117
72
154
134
156
175
87
92
124
144
106
88
117
145
102
78
121
110
128
108
131
88
119
129
80
78
92
87
155
87
134
107
103
128
76
175
54
100
80
136
106
101
83
121
76
112
93
92
78
78
72
155
109
106
117
154
114
78
87
93
143
99
78
118
96
80
94
76
80
146
99
99
110
144
54
72
132
93
69
107
78
100
154
98
155
118
137
89
110
100
89
94
80
96
103
80
132
80
87
69
80
88
76
146
133
56
120
80
153
93
76
71
85
99
72
128
87
69
89
69
109
171
68
107
147
140
151
82
155
81
154
128
91
110
76
153
80
111
93
109
104
112
121
89
85
110
107
76
107
99
93
138
157
155
147
76
52
124
119
119
103
52
168
69
105
103
78
113
69
113
74
52
109
140
94
80
109
69
166
110
95
120
120
164
175
80
79
89
119
88
93
85
87
96
154
52
113
80
87
78
94
112
109
136
97
76
118
149
69
72
93
80
118
87
88
80
80
124
67
106
98
134
146
110
164
111
52
76
87
120
113
89
142
78
87
109
129
109
119
134
80
120
91
119
66
89
107
72
80
112
80
76
78
142
108
96
113
56
104
120
102
149
130
122
76
72
110
139
87
52
175
197
127
76
80
94
154
107
88
111
88
108
94
80
154
100
109
93
107
76
146
119
128
76
164
112
154
90
127
90
78
87
106
136
116
78
149
80
120
69
74
149
106
118
80
109
110
154
88
164
157
89
103
119
103
120
124
87
127
133
109
69
127
112
156
88
127
121
119
120
76
133
151
81
104
88
72
95
87
78
64
69
80
92
106
140
72
131
131
131
101
103
110
69
69
155
87
87
106
112
80
136
136
84
75
69
174
136
104
137
118
128
140
148
88
87
88
146
156
124
144
111
134
69
134
102
88
113
128
78
63
94
80
128
104
119
89
76
69
113
121
118
80
116
119
80
112
87
80
88
154
147
110
69
114
107
183
146
87
69
124
134
146
110
116
139
78
101
94
128
69
121
97
94
104
132
110
107
120
94
69
110
131
80
80
88
117
121
103
140
67
110
91
100
76
128
136
121
122
86
107
69
120
69
119
108
83
80
102
154
157
102
76
95
107
138
80
69
121
78
69
199
87
76
92
69
52
114
106
143
88
76
69
94
111
106
106
69
102
103
114
145
76
134
125
80
69
66
87
110
91
72
121
88
89
120
128
76
73
69
120
119
123
103
88
131
175
109
89
78
76
156
123
163
140
175
89
56
136
127
87
93
74
76
80
142
120
69
123
80
96
153
76
113
106
156
151
80
143
118
107
140
113
121
121
137
104
129
164
69
115
154
102
107
154
119
119
121
87
94
118
94
87
88
118
109
69
72
72
69
169
157
121
80
88
89
69
89
134
91
128
124
93
76
79
120
76
98
121
100
54
119
76
113
152
155
175
78
109
87
115
151
94
109
102
131
69
76
86
85
112
79
69
96
143
80
69
80
130
76
121
76
74
89
127
117
104
161
151
154
134
143
151
137
69
110
87
88
67
87
152
112
89
78
106
121
100
175
122
107
117
93
175
89
175
123
96
143
80
80
69
87
119
93
69
111
109
94
94
133
119
156
54
94
154
175
99
80
87
80
90
89
117
96
80
119
88
78
72
172
76
72
175
174
80
156
69
107
119
154
96
105
99
169
119
109
155
129
142
98
106
154
105
143
163
110
80
138
64
118
106
94
74
131
96
96
96
76
107
154
150
107
88
150
119
80
112
76
120
109
90
87
144
78
101
52
80
119
111
88
128
106
88
96
119
93
94
69
118
89
119
175
156
119
89
95
134
78
140
93
102
72
114
110
83
84
83
99
134
78
101
80
110
136
83
132
94
87
87
54
80
140
95
126
121
164
97
137
89
56
110
112
67
106
76
78
80
80
104
72
107
120
69
99
69
145
104
120
75
104
96
110
119
118
72
78
69
93
113
118
107
122
154
175
118
80
124
129
79
89
117
66
112
80
129
76
106
126
111
100
98
107
119
119
69
117
111
109
89
96
87
155
97
87
109
175
154
123
91
85
87
128
89
107
67
93
129
141
136
69
148
43
80
109
113
111
78
69
94
79
106
69
150
69
87
84
150
163
99
80
80
107
107
110
114
134
80
94
80
119
128
78
62
54
114
96
154
78
87
136
69
78
87
81
118
104
69
131
134
88
119
69
80
145
94
107
91
74
88
109
113
93
146
140
108
79
106
110
112
83
96
100
125
78
90
154
98
136
93
101
128
119
76
86
123
76
136
136
175
183
135
145
52
109
89
87
94
114
87
151
197
140
58
80
119
145
146
140
142
87
140
131
136
80
121
131
154
122
69
120
80
103
80
104
142
43
113
80
96
183
148
175
125
113
109
69
126
120
118
69
117
96
124
80
96
121
145
136
74
126
79
128
54
89
94
142
172
89
109
76
154
152
113
112
118
103
93
54
175
136
124
79
110
76
80
76
117
101
146
78
89
197
52
87
119
76
87
113
146
80
100
96
175
128
107
110
75
159
117
106
113
121
145
138
120
136
109
102
69
115
106
132
107
80
89
117
112
80
76
89
104
143
121
151
56
87
87
122
111
80
145
102
163
110
88
69
128
74
109
80
91
109
101
67
80
175
80
183
129
80
72
94
175
56
119
121
87
148
132
80
80
78
90
124
80
127
94
125
111
80
69
99
101
76
117
120
102
115
106
121
87
69
125
112
69
101
72
137
72
76
88
89
80
73
99
94
74
107
80
76
129
120
151
69
133
88
82
128
82
112
136
164
87
56
102
93
69
132
106
110
98
163
83
155
136
106
178
80
175
87
131
101
116
98
117
110
78
106
146
119
128
69
69
140
69
145
137
72
122
78
154
109
175
110
110
117
145
151
99
146
107
87
91
80
109
151
122
155
100
127
89
151
69
131
119
104
69
104
119
117
137
78
100
54
106
115
72
78
94
121
80
87
126
104
52
76
114
134
119
115
109
104
119
76
88
78
78
88
112
71
69
166
145
80
52
110
124
117
76
115
122
113
107
69
80
99
160
102
92
109
174
148
95
143
96
76
110
87
131
141
89
80
101
54
88
121
87
80
128
128
124
85
80
80
163
123
107
104
111
120
80
96
90
97
175
92
96
82
145
69
140
104
107
96
69
104
120
104
99
114
66
199
106
119
103
199
80
72
80
94
78
95
118
104
138
131
69
88
80
94
72
164
126
80
83
80
128
112
126
107
123
110
87
109
85
130
180
107
105
148
87
104
118
126
80
108
120
126
78
119
147
78
97
145
72
121
94
146
160
78
119
156
104
109
94
74
164
133
104
175
69
78
101
80
121
106
92
175
56
151
110
97
80
100
106
109
78
121
156
69
100
128
78
79
107
87
120
140
111
166
110
127
110
154
117
83
120
112
74
96
103
101
98
109
122
201
162
106
87
102
76
110
95
69
104
109
154
74
69
110
81
131
133
148
78
106
120
100
131
100
85
120
108
166
94
111
121
123
129
121
87
89
131
52
80
80
104
99
72
75
133
88
122
72
137
142
109
90
109
78
118
113
74
107
101
89
126
101
80
93
94
174
163
96
87
73
92
102
80
94
142
80
80
136
151
140
116
96
78
77
80
102
165
89
154
128
129
125
122
78
101
113
160
64
69
98
52
156
80
80
131
197
138
165
131
121
78
74
110
63
146
134
120
99
94
99
118
124
80
85
73
119
130
107
147
163
102
54
175
72
156
94
144
175
67
107
164
90
91
96
106
128
88
110
131
132
99
87
87
80
145
137
75
69
88
126
104
102
76
78
80
91
78
126
72
134
112
107
128
80
128
93
69
96
76
101
126
100
128
114
82
107
87
80
106
78
175
72
95
89
101
91
131
80
154
120
91
80
69
71
94
76
80
80
80
89
78
106
91
156
78
111
103
111
106
87
75
88
87
131
126
74
98
90
115
87
117
130
111
137
128
112
107
111
128
95
88
80
112
93
76
80
115
166
107
119
93
134
120
121
92
131
87
78
58
69
112
87
133
88
102
91
91
76
101
136
119
154
109
93
76
66
80
154
78
126
146
80
72
69
128
134
103
127
112
69
111
69
197
143
147
174
87
181
88
78
80
119
155
89
131
145
93
120
164
80
69
153
96
147
127
107
129
118
76
72
107
80
69
87
78
131
95
69
69
100
89
87
118
116
80
119
87
128
99
89
69
80
80
110
110
145
163
78
100
78
80
110
87
82
147
59
130
111
56
102
80
124
101
154
120
121
108
85
109
87
119
128
154
137
106
125
96
104
59
153
74
111
87
111
117
87
154
80
134
100
90
69
74
80
120
110
80
131
126
96
78
96
107
148
147
128
175
69
87
98
94
80
78
119
69
147
72
115
74
175
94
69
76
69
76
135
69
90
69
120
69
80
153
151
69
76
110
140
156
88
78
150
107
76
88
87
138
143
66
128
120
107
94
69
128
113
72
78
156
146
54
66
175
136
87
107
94
88
115
88
128
111
131
151
175
197
94
112
103
137
80
110
69
134
175
87
109
76
69
104
87
102
91
150
69
93
100
109
79
89
121
103
118
143
72
154
106
109
118
109
110
131
93
129
74
107
82
109
91
110
110
80
113
89
83
128
131
151
138
139
96
114
96
102
80
121
120
154
69
80
94
109
96
87
81
54
78
154
127
85
121
78
75
87
110
106
164
148
106
133
114
83
100
69
60
73
98
93
157
155
89
69
69
109
144
66
69
175
87
83
120
155
113
134
69
76
130
110
117
120
154
88
197
117
110
94
76
117
88
78
76
100
131
80
87
121
78
174
116
120
76
99
142
104
102
136
73
111
69
119
126
99
80
100
134
78
134
121
115
80
87
93
89
107
78
78
137
76
101
155
122
69
117
104
80
90
128
106
109
175
136
80
87
54
118
113
101
80
69
98
76
94
119
87
108
107
110
123
119
128
80
120
174
174
91
112
88
99
106
112
102
80
122
109
94
115
88
131
120
69
124
160
107
75
131
69
91
78
145
80
125
103
95
119
99
93
109
121
163
99
137
78
64
72
74
76
104
89
123
137
107
69
87
106
100
80
87
91
119
96
80
103
80
127
120
122
136
136
118
120
128
128
119
137
143
58
88
89
140
78
95
107
88
99
154
98
113
99
66
87
76
118
112
163
160
110
89
78
72
54
141
80
89
123
128
111
80
101
119
67
54
64
76
146
125
154
121
107
129
69
87
114
95
134
76
54
119
131
78
114
80
88
134
93
151
80
151
69
80
83
155
121
87
96
109
107
110
80
87
95
93
120
113
89
107
93
80
110
69
87
199
69
129
72
80
111
104
112
151
134
69
88
112
91
69
121
88
99
151
102
106
132
175
129
79
80
93
80
127
175
76
155
87
102
163
69
110
128
76
88
69
152
69
155
120
80
78
120
144
144
85
87
107
116
54
69
85
185
94
94
74
118
72
151
96
110
87
69
155
128
80
93
74
109
110
93
80
69
128
101
63
143
171
195
99
145
76
112
111
80
72
101
104
96
96
80
54
109
78
107
90
88
99
107
80
155
93
79
80
80
112
93
80
109
95
104
137
69
101
92
80
107
127
112
129
93
76
115
80
101
80
94
153
175
126
52
151
96
106
128
126
123
148
113
87
76
74
76
120
80
151
66
120
126
108
137
100
90
147
100
69
76
154
94
80
118
174
93
69
113
127
132
130
100
72
87
107
99
89
110
99
69
100
89
99
131
136
129
74
119
131
56
99
109
107
155
80
125
78
91
148
95
120
90
111
134
74
112
85
69
93
122
156
151
152
80
140
163
109
185
117
74
139
120
91
148
144
80
126
76
103
96
110
143
151
72
163
131
128
121
118
117
85
95
134
100
89
115
157
156
72
54
114
109
69
106
74
87
106
99
80
67
96
156
149
75
100
147
99
114
56
80
107
76
155
80
131
82
131
131
126
131
110
87
113
127
155
126
119
162
107
131
69
143
87
87
107
114
75
120
122
88
104
88
91
80
89
69
123
136
101
143
107
131
80
134
106
134
112
99
83
128
69
154
175
84
166
117
76
140
140
128
117
107
120
89
109
80
135
104
110
69
110
78
80
104
151
114
199
52
151
152
131
109
143
76
56
94
115
118
87
84
130
80
76
74
181
101
199
73
87
78
87
158
106
141
117
78
56
80
91
116
106
69
175
116
145
119
129
80
98
158
76
137
67
109
112
101
80
103
76
101
76
150
69
139
129
106
197
83
99
67
80
122
129
151
137
128
122
131
87
99
154
89
123
91
145
122
89
123
107
68
91
69
108
72
150
54
113
78
69
104
80
164
107
119
80
128
96
99
80
126
77
100
82
115
80
137
114
172
112
83
82
111
155
69
154
120
106
66
119
175
154
89
87
90
80
54
69
69
133
103
80
94
87
94
94
110
130
131
76
87
175
154
143
128
69
120
172
113
175
69
127
134
80
102
140
119
134
175
128
80
96
110
76
134
43
124
56
78
142
76
98
88
145
121
69
94
151
130
119
138
94
52
101
104
78
119
131
75
136
69
95
80
101
119
97
69
131
69
99
175
112
197
96
107
87
76
78
144
118
78
80
119
103
113
120
155
154
156
108
113
80
165
104
115
76
116
52
119
118
155
136
124
130
121
98
137
128
111
163
101
80
54
111
80
201
89
114
111
108
122
72
128
80
80
128
146
69
96
99
120
120
67
68
91
78
164
140
58
88
106
80
94
93
156
69
131
117
91
69
67
85
137
89
107
76
106
91
119
131
100
151
125
69
111
107
107
83
109
134
112
80
201
137
88
127
83
110
91
106
136
106
120
128
154
125
109
76
85
99
175
107
121
78
93
136
131
119
139
99
79
136
103
111
76
76
69
99
134
124
91
87
107
116
101
128
69
89
114
78
78
110
131
87
87
80
124
152
115
121
143
159
103
106
157
142
80
128
104
141
95
80
76
107
103
99
101
110
120
160
103
115
134
54
140
103
112
80
154
140
133
119
111
93
87
64
80
183
112
69
80
87
80
117
80
123
76
140
69
137
138
122
69
107
175
121
69
163
78
94
136
134
91
107
157
80
99
80
80
136
80
125
90
110
104
143
97
134
111
185
122
103
111
107
128
67
87
172
142
69
175
155
69
87
113
104
80
100
133
69
148
126
94
87
81
115
93
112
132
137
164
156
87
96
120
54
133
78
107
69
69
102
120
69
128
127
128
134
163
109
109
76
93
79
88
99
146
76
136
88
96
127
109
112
76
101
120
78
175
99
148
107
145
78
160
88
101
89
80
128
111
112
94
69
59
118
175
130
102
80
98
118
101
89
163
99
69
137
94
74
80
107
129
127
112
147
151
99
140
110
111
123
56
69
80
148
104
73
155
102
109
87
88
69
175
120
88
80
110
123
76
58
136
89
131
128
93
78
144
156
119
137
113
92
156
87
175
131
102
80
94
111
69
107
125
127
119
154
89
154
121
154
128
120
140
126
121
136
128
138
128
109
91
107
122
175
66
109
99
129
69
151
175
128
164
175
107
155
114
96
56
183
146
79
154
114
117
99
175
80
118
111
80
75
74
78
112
119
123
69
120
95
175
69
154
109
96
89
93
109
96
100
119
108
54
104
162
137
99
78
154
127
81
69
56
135
118
144
115
110
107
112
115
71
80
104
102
93
118
131
107
111
130
148
87
152
127
140
69
146
52
127
80
78
83
136
63
128
115
87
112
114
120
111
98
69
126
96
111
114
133
76
120
145
118
87
87
91
106
128
69
128
104
80
88
94
76
109
93
124
122
69
80
154
183
80
181
69
175
126
69
107
111
120
146
93
126
119
89
121
57
112
88
144
69
99
130
87
131
120
78
121
87
52
88
99
75
102
128
74
134
138
93
113
106
99
113
80
120
197
144
131
90
80
107
94
101
107
69
113
91
96
129
132
54
54
139
80
90
105
107
131
78
163
135
131
87
99
110
87
99
112
122
76
121
89
102
87
125
99
99
72
130
93
154
94
163
129
134
75
133
175
120
89
96
88
156
71
99
110
117
68
73
146
140
80
155
132
142
106
107
54
185
78
142
122
119
107
151
119
150
74
80
129
109
145
76
127
146
76
78
74
155
138
76
74
154
184
78
104
175
75
118
109
136
130
93
120
87
152
115
100
134
128
111
80
94
89
140
80
106
116
106
78
92
106
80
128
138
142
91
89
119
85
93
143
132
174
132
80
132
96
133
69
98
128
133
175
113
156
54
160
76
78
82
88
102
120
99
104
80
87
78
133
124
101
93
56
119
120
96
107
118
114
90
52
54
136
88
43
104
87
94
87
63
78
107
144
89
151
146
131
52
137
142
80
120
72
132
111
83
87
148
119
69
105
69
76
78
98
118
80
80
109
141
78
87
197
197
87
87
106
175
109
80
94
87
69
69
120
80
144
156
69
147
80
148
145
146
85
78
162
112
119
119
166
197
89
132
123
76
99
110
125
104
80
120
100
89
76
76
89
147
94
69
69
100
119
109
175
114
75
88
100
111
172
115
128
134
80
94
56
119
69
80
104
83
93
91
110
102
131
56
144
80
99
80
101
106
93
74
163
69
87
68
54
90
80
80
100
80
115
110
89
94
154
120
114
87
91
87
131
130
102
91
80
80
127
101
78
118
84
80
69
149
93
76
123
141
80
72
120
119
107
118
163
102
129
76
76
130
87
91
121
78
87
144
71
132
80
131
129
136
136
89
152
138
110
69
63
69
66
107
110
97
80
117
113
106
142
123
106
156
80
87
117
199
85
156
101
80
113
152
80
115
126
54
70
99
69
55
107
76
117
67
83
114
80
102
144
197
64
54
128
76
114
110
89
88
156
104
175
99
95
109
74
80
120
148
104
69
130
78
128
98
137
76
144
121
165
123
116
110
80
74
164
93
123
84
78
106
131
80
94
92
87
152
69
146
87
69
120
121
163
140
93
89
103
80
131
154
78
87
88
128
93
78
80
81
152
91
78
74
127
110
183
120
110
87
69
93
115
80
106
81
154
124
145
120
89
164
158
80
80
132
113
102
140
52
101
54
154
127
126
160
151
69
101
123
129
80
114
72
91
107
145
80
89
134
80
100
87
93
164
80
88
104
159
88
76
76
123
56
94
72
87
107
146
197
128
87
74
152
118
113
87
112
83
69
121
80
70
88
89
101
88
131
117
99
154
109
126
82
78
185
153
95
88
119
119
140
124
78
78
160
156
111
156
69
160
98
115
163
78
78
154
99
111
69
138
110
113
96
96
136
108
109
88
94
80
54
134
99
102
80
94
138
120
69
94
80
78
96
107
80
126
93
80
80
136
128
115
128
137
126
89
96
78
80
80
163
85
142
86
69
104
64
93
109
110
67
80
91
96
93
88
80
89
156
56
123
93
93
88
175
80
164
91
128
54
88
103
100
104
94
156
110
80
128
129
120
134
142
109
123
107
112
69
131
89
80
101
115
96
87
80
78
110
119
71
80
144
96
54
108
137
76
117
134
87
137
104
87
87
109
181
107
155
144
148
91
87
69
104
89
78
154
122
119
106
150
109
80
94
109
91
141
107
80
80
87
54
119
91
95
69
141
83
115
129
103
100
69
107
137
88
122
94
123
122
72
78
128
78
66
176
171
109
175
67
141
69
132
69
78
154
175
136
99
128
80
107
69
99
90
80
99
140
91
107
113
107
119
87
101
128
69
69
100
156
113
87
107
107
80
154
154
88
106
54
107
201
80
93
142
107
87
115
136
119
107
80
87
90
150
130
181
109
52
67
119
136
121
119
76
104
127
76
113
164
140
87
87
57
134
94
133
93
113
85
127
96
126
77
119
157
122
105
78
112
174
152
93
89
159
101
78
107
134
111
155
151
145
163
89
87
87
107
106
154
99
122
87
76
104
118
93
91
134
87
169
90
89
118
99
137
149
69
129
80
88
93
69
82
80
127
121
100
143
134
93
120
95
117
165
115
69
130
80
117
117
76
69
115
138
83
144
140
89
123
69
95
136
110
132
112
87
119
102
133
110
96
87
80
102
109
106
87
80
107
96
153
106
134
80
175
92
102
142
93
87
150
127
107
121
124
133
71
174
78
80
87
93
72
99
175
111
56
91
78
120
120
163
121
151
126
117
119
140
120
117
52
69
69
54
80
80
88
126
112
69
163
106
77
78
80
105
54
175
112
133
78
76
134
118
134
119
124
113
74
120
106
80
91
156
107
128
94
80
99
78
76
151
89
93
175
121
91
140
118
90
128
119
127
80
156
83
124
154
131
78
98
128
89
69
94
155
113
80
107
113
109
109
156
119
96
108
52
96
129
126
145
74
113
87
71
76
102
197
99
115
52
146
140
102
126
125
128
89
83
88
87
112
87
80
164
119
87
108
68
117
80
134
87
94
151
131
123
131
155
107
72
113
76
87
92
69
131
146
163
120
94
148
110
156
100
72
154
154
93
78
101
120
78
87
110
142
96
119
69
147
133
109
99
76
112
69
96
128
113
99
87
138
69
99
114
118
91
145
115
131
87
127
87
120
153
80
128
95
154
104
88
128
76
82
96
123
138
127
136
128
127
80
92
85
154
121
85
128
80
91
69
104
157
163
93
151
175
136
87
175
78
87
144
74
87
88
78
100
160
80
127
94
88
109
120
156
148
117
128
77
96
99
130
72
175
135
109
122
127
121
94
175
116
69
99
87
122
76
147
87
75
120
145
59
104
80
96
89
76
128
85
104
112
124
80
94
139
56
64
76
72
119
121
80
130
126
155
109
144
115
130
78
99
76
78
109
87
120
138
154
128
99
122
77
106
69
80
69
78
80
80
155
94
76
119
107
148
114
123
119
110
136
119
102
175
104
85
54
87
96
89
87
69
43
78
94
154
82
96
110
69
107
66
80
78
81
118
80
109
80
102
155
98
100
175
120
120
69
87
112
175
78
67
127
95
102
102
131
104
77
131
134
87
94
93
201
123
93
85
104
76
153
69
75
79
151
74
99
80
155
80
110
106
99
127
76
121
156
154
120
109
88
94
111
74
64
118
67
100
120
119
127
94
156
143
137
131
144
80
129
80
119
96
109
76
161
91
160
107
113
96
80
80
89
72
129
139
69
142
103
120
80
78
112
117
110
132
74
133
102
43
78
104
124
94
119
134
164
136
141
76
121
112
145
72
96
72
199
118
78
80
80
72
96
88
85
104
131
130
80
76
87
156
87
147
78
84
91
69
63
157
107
76
80
99
78
80
93
69
146
156
107
114
151
101
106
107
80
94
43
117
127
52
123
80
59
78
91
87
175
74
93
94
131
122
101
124
128
106
112
93
95
80
87
69
172
69
140
103
99
106
78
107
89
131
126
150
72
128
99
74
89
87
127
91
165
52
78
103
104
95
107
118
121
92
117
93
80
119
131
95
99
165
109
127
132
80
88
154
83
113
151
159
165
106
100
151
154
79
174
99
76
94
93
131
143
106
114
72
112
160
145
107
187
138
134
76
80
89
104
121
69
106
121
153
120
104
120
129
116
78
87
77
197
95
119
82
131
175
136
79
104
99
134
99
115
109
99
117
130
127
149
79
150
101
69
98
89
131
134
100
137
73
115
151
107
80
76
175
122
85
87
197
112
80
154
76
145
87
164
83
143
79
88
146
59
123
126
80
80
87
146
93
87
114
80
143
87
110
119
79
107
101
109
140
105
134
117
144
78
69
129
85
69
80
80
120
118
106
87
110
121
156
109
118
80
99
89
104
89
105
93
87
175
69
119
69
112
100
140
80
80
111
111
123
183
78
127
136
109
95
132
107
120
87
102
103
69
72
104
76
72
94
128
112
76
143
118
94
156
76
76
80
114
80
181
98
91
117
107
89
86
80
72
140
112
69
54
80
69
132
131
76
143
80
43
94
117
136
110
143
120
92
85
112
111
87
134
113
129
87
80
80
119
76
96
72
76
82
130
75
89
131
128
69
72
80
117
78
141
118
175
157
197
76
89
89
94
126
121
106
88
104
165
154
80
126
80
136
80
92
69
175
80
175
94
81
133
60
72
134
89
87
74
113
76
76
107
80
103
99
80
76
100
129
175
96
106
80
102
109
130
96
69
76
87
82
136
72
93
78
80
88
69
80
163
155
129
76
80
109
110
84
107
107
136
58
89
80
99
88
120
80
120
154
102
130
133
87
137
112
109
113
107
107
120
100
155
94
104
182
72
102
106
120
67
201
101
175
80
76
72
163
117
78
83
147
76
101
117
74
91
134
74
169
74
95
164
113
106
130
110
175
86
119
142
110
175
199
80
110
119
117
120
74
112
69
175
87
80
115
101
123
144
80
175
100
69
114
104
86
120
80
80
104
76
83
95
119
80
76
69
102
175
80
74
99
93
175
128
121
125
87
156
78
110
54
112
69
146
80
119
89
80
89
175
143
157
109
145
106
124
154
119
123
87
124
76
120
80
69
101
129
69
52
144
107
109
113
80
93
114
112
101
64
134
87
154
80
110
99
54
128
80
69
82
78
107
69
94
78
99
80
74
99
129
69
110
80
107
133
87
91
156
104
112
166
107
98
89
87
120
95
142
95
80
80
141
199
80
80
137
106
102
107
120
113
67
134
87
181
100
87
85
78
71
69
110
113
117
111
146
64
104
114
119
107
76
88
66
120
80
122
165
69
154
78
128
78
113
99
123
82
110
80
107
93
111
95
89
118
69
143
113
96
59
114
87
91
80
52
111
74
132
76
110
101
118
163
119
80
107
120
120
80
103
80
151
78
135
94
78
197
126
104
151
106
124
113
107
136
91
88
80
80
80
110
80
150
69
131
113
87
126
121
63
72
80
103
94
72
109
148
99
80
76
127
107
90
134
104
121
90
80
80
121
99
113
130
175
129
99
93
69
87
130
91
89
87
101
113
105
197
197
95
107
78
128
78
67
107
88
99
78
132
78
87
110
148
146
119
151
110
115
172
88
69
113
112
107
143
52
145
127
128
109
110
101
80
164
119
175
119
78
134
109
78
133
111
137
107
92
134
129
148
80
76
89
131
107
113
107
134
87
80
72
145
87
69
58
80
93
101
155
78
87
83
112
80
99
154
85
109
128
107
88
119
80
159
97
111
78
67
67
126
104
69
151
93
121
69
98
163
120
156
79
56
81
131
88
69
104
102
89
80
99
79
119
128
72
78
78
162
69
69
78
112
176
131
107
145
128
80
156
66
75
197
88
120
151
94
91
79
69
69
79
69
155
80
75
107
128
80
76
136
69
143
89
78
107
96
78
95
112
96
128
69
175
101
175
134
87
87
136
69
109
119
110
120
80
130
69
134
80
96
80
74
85
136
93
74
109
109
93
80
124
54
163
78
69
69
94
119
102
87
132
122
91
69
175
87
110
69
87
96
122
99
136
88
91
72
124
77
107
80
137
144
197
109
108
85
148
69
91
102
87
154
88
119
112
129
76
119
106
115
89
96
137
143
109
175
145
76
99
93
85
122
138
134
172
112
89
90
52
132
120
175
135
89
110
78
159
157
199
129
111
134
54
111
69
107
109
72
76
89
80
120
80
113
107
136
72
78
121
76
100
163
110
134
90
117
121
78
105
69
93
80
106
91
128
120
72
107
93
64
132
78
131
56
100
143
98
91
115
106
76
88
151
67
107
80
154
76
69
136
136
112
121
87
106
80
87
101
127
76
80
121
128
56
74
140
87
103
79
74
130
75
100
120
120
80
131
126
128
54
69
81
87
69
107
87
124
112
73
72
59
69
122
119
78
102
76
143
94
69
63
108
80
82
100
119
126
104
112
175
136
93
133
156
72
109
145
80
100
90
68
149
80
80
120
106
162
89
129
100
121
85
118
121
94
151
109
140
119
93
54
91
101
78
91
127
89
103
76
146
116
181
105
80
110
138
107
101
69
103
110
52
119
122
130
112
125
107
95
113
138
69
103
146
76
69
156
120
174
111
80
88
80
85
136
119
117
125
160
111
85
74
76
119
69
80
88
107
142
125
90
119
83
164
155
69
154
146
109
119
88
80
97
163
113
113
80
117
183
87
100
144
100
103
79
124
151
106
117
117
78
69
80
136
80
79
80
87
89
78
66
119
89
87
111
72
80
103
114
128
76
78
80
120
128
102
121
137
183
74
101
106
91
131
76
113
119
119
74
175
128
142
110
136
127
90
117
79
78
121
101
93
136
80
175
102
113
197
94
128
94
117
122
140
127
72
127
143
89
80
80
128
130
94
108
87
119
119
69
104
146
156
87
98
76
119
80
102
80
69
76
79
136
144
98
104
87
78
78
90
123
76
134
119
43
136
112
156
69
80
120
126
76
119
107
100
87
128
154
99
154
94
101
69
119
115
133
78
119
129
148
80
154
69
110
80
104
175
89
99
140
94
98
96
93
88
99
129
131
94
130
128
170
100
120
99
80
145
119
98
155
163
69
96
113
110
118
175
110
107
110
104
155
109
109
132
114
130
112
105
117
82
88
89
103
113
114
111
104
86
110
100
88
69
106
148
69
90
95
111
120
80
137
155
101
72
69
80
89
66
151
110
110
85
115
113
90
109
119
78
136
80
83
96
124
163
143
156
54
69
120
197
69
64
175
56
131
106
88
129
155
135
156
140
197
122
80
132
91
107
102
64
154
87
80
80
107
71
137
94
98
91
115
88
112
120
115
80
72
80
83
128
147
104
76
149
117
142
94
93
101
128
78
129
91
80
102
78
54
115
69
78
78
151
89
130
134
76
134
69
119
88
76
126
122
80
104
69
110
94
87
106
91
80
121
114
95
85
166
69
74
95
99
80
115
136
93
147
125
120
96
66
154
69
81
78
94
197
154
80
152
78
98
103
74
160
118
109
128
101
72
80
109
109
112
88
90
155
95
87
140
156
76
118
120
181
101
91
155
183
107
83
113
78
115
127
94
76
87
110
151
87
140
80
101
80
76
109
72
140
116
144
99
127
157
98
78
137
79
178
69
78
197
85
109
80
125
56
80
120
112
119
93
110
95
145
111
101
54
88
156
131
119
80
119
72
175
176
99
121
175
67
94
89
119
148
117
175
56
97
54
87
80
117
118
56
78
152
109
89
76
143
69
103
80
72
52
156
80
119
80
112
54
124
175
104
129
76
100
80
122
148
69
78
99
117
52
87
155
89
87
72
117
119
87
152
125
117
69
110
80
107
56
80
139
112
154
101
107
107
143
96
99
96
69
73
76
133
119
109
89
128
109
67
119
113
107
87
64
124
133
78
107
163
122
89
63
113
69
128
138
80
148
69
113
72
99
69
151
136
151
112
85
148
121
154
137
93
69
69
112
78
131
110
143
110
109
110
189
69
109
80
89
125
80
99
87
88
80
91
149
72
69
78
107
151
128
59
93
80
88
166
64
108
134
89
104
80
109
128
136
119
94
113
87
93
80
71
69
146
128
74
128
142
80
87
78
72
106
182
76
120
76
135
117
121
80
76
117
122
80
107
155
108
107
119
69
78
141
131
80
80
175
96
75
67
88
87
140
109
134
76
134
107
141
69
87
114
80
109
201
94
96
93
88
113
101
68
130
136
131
69
80
199
69
155
87
132
69
154
80
74
69
159
107
109
88
52
88
87
175
69
87
134
175
148
76
87
138
78
96
119
93
97
87
143
87
115
127
109
106
99
80
43
69
175
69
80
69
140
120
118
72
89
112
156
69
94
122
147
106
119
80
175
96
111
69
76
99
152
154
119
87
99
89
109
88
117
128
156
69
99
69
88
69
120
104
69
128
119
90
96
135
52
134
112
99
143
80
155
100
80
80
144
122
109
80
146
120
54
72
119
76
110
164
87
93
88
109
100
69
155
148
120
131
143
72
201
95
80
134
154
104
110
79
78
150
144
69
122
136
141
119
150
145
88
94
76
123
132
88
154
83
99
76
109
78
131
116
78
110
130
76
103
109
80
117
80
101
54
145
109
80
146
94
116
119
132
67
80
72
66
181
95
80
154
131
76
88
87
155
76
145
109
197
85
66
69
87
107
78
110
75
110
137
80
100
110
96
127
175
107
87
78
144
58
88
155
95
109
71
78
151
109
109
160
97
101
89
100
76
94
88
95
175
72
87
126
87
133
72
117
78
87
72
80
78
96
149
85
128
145
104
110
95
151
99
87
88
113
94
118
85
101
105
78
107
109
69
124
69
119
155
87
129
142
101
85
111
80
160
93
159
134
151
84
78
52
99
81
134
76
121
101
80
136
113
147
142
136
122
174
99
114
80
96
109
89
78
87
99
87
96
69
93
166
130
114
99
78
87
117
69
115
69
125
74
87
69
115
130
105
175
100
113
134
107
107
121
94
99
83
164
130
106
107
99
78
96
96
80
76
114
126
124
80
89
96
87
88
150
87
110
80
89
106
115
80
93
80
128
119
123
134
122
82
175
121
104
119
142
92
107
90
76
69
80
131
126
88
101
128
119
121
94
111
150
74
94
136
94
121
80
133
111
148
132
80
136
154
154
158
94
128
78
131
156
128
94
74
109
76
85
112
150
111
100
118
72
123
142
112
101
102
134
131
119
110
66
128
96
74
95
54
93
110
121
128
115
90
110
60
80
123
110
145
80
117
110
100
148
106
119
107
124
76
109
112
144
136
115
131
88
98
101
155
99
106
88
110
88
80
134
64
82
64
99
69
98
156
82
112
54
128
175
154
136
102
69
88
102
146
89
154
104
117
113
153
87
80
104
136
119
130
104
107
107
138
80
96
80
64
76
72
54
107
78
79
147
74
101
140
111
99
99
76
78
131
99
144
131
80
89
131
113
80
150
72
80
107
78
79
85
72
118
79
80
88
135
76
94
67
99
87
72
80
99
77
145
175
156
80
70
112
91
124
154
54
87
69
75
69
66
134
100
72
155
88
87
102
134
128
123
156
121
80
100
102
99
99
104
78
91
87
69
98
164
80
80
136
94
87
103
146
159
155
153
81
197
80
89
99
123
80
96
127
99
126
131
107
146
120
120
107
111
72
52
106
80
69
69
121
112
152
90
72
156
140
146
107
74
87
69
94
121
133
78
90
151
87
112
110
134
94
86
115
76
87
125
104
106
87
80
134
105
90
93
154
109
106
105
119
87
99
117
98
80
66
80
117
175
151
87
104
152
85
136
108
122
109
101
146
80
69
144
120
85
77
129
114
119
156
112
107
135
122
96
99
144
52
72
120
128
80
100
121
71
134
175
87
163
128
117
151
157
76
104
155
101
99
76
115
106
103
87
76
80
80
71
155
122
76
130
88
138
128
100
112
121
164
109
69
119
80
43
132
151
164
104
76
137
107
91
175
113
96
80
99
87
87
106
122
86
117
157
80
140
106
100
131
88
60
95
107
119
87
131
96
131
111
118
107
142
115
54
109
69
139
67
69
89
85
134
158
129
80
110
82
163
153
118
151
155
119
78
145
112
60
152
80
67
100
107
98
104
153
89
153
101
128
89
106
110
69
163
78
146
52
78
134
126
87
99
169
143
143
142
99
96
78
133
115
148
69
76
111
72
143
128
100
87
134
114
100
101
80
88
101
69
99
107
112
78
96
87
101
121
74
91
85
90
122
89
76
93
93
104
71
88
80
107
87
96
131
87
154
69
111
78
121
85
87
109
119
175
127
121
110
87
102
78
108
127
119
124
114
155
130
94
69
79
156
87
136
124
106
80
175
69
128
87
155
131
144
99
91
127
80
80
147
136
110
87
78
89
108
80
157
156
74
119
128
102
106
94
87
157
54
131
69
81
91
72
128
75
98
145
43
102
119
119
84
131
94
78
73
119
56
93
96
76
175
127
122
89
155
140
110
101
80
102
52
87
101
99
69
69
69
131
78
151
128
80
78
121
109
140
117
115
93
123
80
121
88
119
104
113
74
109
89
118
133
80
157
115
99
107
131
80
107
90
153
89
183
80
107
94
74
120
107
119
117
109
96
131
90
114
124
69
154
113
69
69
121
183
114
69
131
78
89
80
104
154
90
143
144
140
99
80
143
88
99
146
94
99
93
151
110
91
153
93
67
69
146
131
89
106
112
80
91
86
64
117
109
79
56
147
162
80
125
69
121
76
78
69
87
80
119
69
99
104
87
111
109
124
175
64
95
69
155
151
88
89
127
136
107
142
90
54
80
132
107
78
109
78
169
80
80
80
89
87
103
88
83
79
99
197
87
80
95
78
136
130
128
69
134
88
81
121
88
80
140
112
94
101
96
139
118
175
69
79
80
107
197
80
93
89
131
121
138
127
102
66
96
101
89
84
97
165
119
80
87
80
120
54
95
105
88
127
119
64
164
96
112
96
110
122
80
120
152
119
88
109
78
140
120
83
93
120
119
80
89
96
69
87
76
133
94
43
79
76
93
106
157
56
100
94
98
154
156
100
67
100
110
79
88
80
134
110
87
119
148
78
143
104
76
96
76
63
148
118
94
87
109
154
106
199
54
133
106
136
80
151
116
129
120
143
118
134
69
134
128
87
111
117
101
139
143
119
88
169
80
121
110
76
99
197
112
69
54
107
128
106
78
120
102
106
99
88
140
107
80
118
80
119
107
105
139
90
88
151
156
134
67
69
87
115
94
104
134
76
100
122
139
64
125
90
109
89
121
129
128
138
109
96
144
144
78
129
120
127
122
78
121
94
109
91
147
94
104
174
104
128
127
125
91
64
85
151
78
80
79
117
87
175
113
143
85
78
106
175
119
96
80
96
107
140
94
87
117
74
113
110
80
94
102
175
131
94
78
87
140
87
119
88
76
92
154
69
87
138
128
69
123
120
87
119
149
177
119
128
119
110
129
102
66
98
90
127
121
80
95
74
118
76
88
87
137
120
157
140
121
96
80
107
95
69
114
154
99
76
72
151
74
128
102
80
128
142
80
118
78
175
76
117
128
87
119
140
104
113
114
88
185
87
69
117
73
72
72
110
155
88
80
117
93
109
127
106
100
110
80
119
119
76
80
156
107
56
147
119
80
137
96
69
110
104
144
112
120
52
118
80
129
54
136
58
80
110
80
63
92
80
107
85
87
104
155
109
137
94
121
111
154
143
143
129
98
106
69
146
163
92
113
129
52
82
103
69
147
69
80
76
119
120
102
119
90
127
117
78
126
87
83
96
163
80
80
144
100
69
105
100
121
119
117
87
69
156
99
80
72
78
98
80
88
104
119
157
78
87
101
82
154
87
93
98
103
104
131
87
94
117
99
120
80
117
99
117
139
69
102
175
80
93
155
66
117
151
101
154
96
127
83
76
109
80
88
101
69
201
80
99
181
119
80
78
154
109
80
140
87
98
154
136
134
80
80
107
106
67
106
106
107
175
131
87
76
88
123
116
137
106
110
92
88
87
72
88
151
175
151
131
98
78
72
117
117
117
106
99
134
122
87
146
69
96
197
107
164
128
101
146
140
155
185
132
129
89
122
96
54
128
89
107
99
80
108
85
103
104
99
80
80
90
80
154
114
110
98
176
122
128
80
94
122
146
159
71
148
99
89
78
115
181
101
67
119
157
119
99
74
111
72
156
87
150
151
92
102
119
76
88
69
80
101
80
71
127
102
133
156
175
106
80
85
89
80
152
52
128
160
99
87
136
76
120
121
115
71
80
107
80
113
154
88
134
142
104
143
91
194
119
129
127
71
99
110
69
67
140
79
136
80
99
106
112
76
137
139
175
66
80
88
132
125
125
94
87
80
72
148
107
59
197
112
80
101
87
115
80
76
197
69
140
80
56
100
56
96
91
134
87
128
116
99
164
105
76
131
69
80
93
110
66
80
80
127
120
136
113
156
73
123
148
69
76
87
107
80
113
109
174
80
104
109
107
120
74
102
119
89
109
87
78
94
96
120
121
88
69
128
87
134
151
89
155
144
181
101
89
154
132
78
119
71
78
160
161
131
69
69
76
83
150
90
92
111
134
121
131
76
76
152
83
66
134
79
96
113
69
120
114
69
52
93
131
91
88
91
142
109
146
80
78
127
146
141
76
94
120
137
155
83
101
91
104
104
80
79
130
121
94
175
87
126
136
80
107
134
156
199
162
118
115
112
197
119
154
102
151
107
159
113
115
138
102
113
114
147
127
102
117
119
80
122
140
121
76
74
69
93
109
72
78
87
94
99
104
124
95
197
127
92
80
78
88
175
107
128
111
99
138
143
154
172
94
88
94
120
76
145
69
107
104
164
119
143
80
120
152
69
164
98
133
106
175
87
132
99
91
77
118
69
141
87
145
92
87
131
110
163
130
89
82
87
93
151
94
80
94
118
80
89
87
119
72
99
151
89
91
123
155
120
80
129
69
92
80
56
88
114
87
136
69
87
127
59
122
131
120
52
104
127
99
88
156
154
114
80
69
107
69
89
106
143
69
76
134
90
80
90
109
80
76
69
107
64
104
107
87
131
102
58
69
80
112
119
80
85
121
151
119
107
131
122
128
69
124
94
113
126
52
99
120
80
127
89
78
106
87
94
91
127
76
104
76
87
69
107
143
80
148
187
104
119
175
82
87
87
107
90
89
109
112
110
128
95
107
132
69
128
96
78
69
109
140
80
85
104
80
117
119
80
119
134
155
87
69
128
128
120
96
107
80
175
110
69
78
78
120
91
76
76
99
88
87
142
154
120
87
78
69
80
80
148
78
69
156
119
145
87
107
104
80
74
128
106
119
149
117
93
142
110
146
154
96
87
111
73
154
172
109
112
157
125
134
69
119
143
104
119
136
98
142
78
132
149
78
128
69
85
107
80
76
185
43
80
128
107
169
78
120
117
109
78
107
107
201
80
80
69
78
87
110
106
72
99
94
87
78
76
69
85
117
87
69
109
82
69
132
69
175
151
134
119
104
150
43
147
155
91
78
119
109
76
132
80
119
107
87
76
136
80
63
119
128
78
119
146
76
175
109
128
126
99
123
76
127
126
120
91
80
69
106
69
86
69
91
56
152
100
93
112
107
117
133
77
69
117
147
128
72
103
54
89
69
80
110
57
109
104
80
139
154
52
69
69
128
134
126
119
106
106
91
91
109
106
80
85
126
109
128
119
101
103
91
126
184
128
137
93
64
89
89
121
99
121
99
94
126
119
89
69
128
104
125
69
120
107
154
120
119
107
80
78
69
120
119
117
130
120
136
88
99
109
155
107
80
87
131
94
155
154
94
120
146
174
104
78
76
101
78
175
114
80
69
88
52
129
146
145
120
119
110
128
76
69
72
89
151
88
163
131
131
90
88
76
118
113
95
68
120
130
87
78
113
106
99
154
87
136
56
163
141
74
69
80
119
120
99
163
197
109
88
120
127
175
76
99
87
78
69
87
52
111
93
183
99
89
98
78
128
54
66
184
119
119
123
97
94
114
56
99
80
69
95
52
69
103
78
99
56
152
87
91
111
112
117
175
137
106
134
76
88
130
114
78
80
89
87
80
76
76
101
80
101
101
102
175
78
80
112
154
155
76
114
127
120
107
113
78
69
78
134
87
80
134
56
114
87
93
80
89
137
85
128
162
87
73
78
109
69
107
94
154
91
141
146
132
137
69
80
128
69
89
120
85
132
87
130
110
69
104
136
96
123
92
107
107
119
69
109
128
113
107
119
69
98
128
144
175
87
94
155
102
142
89
137
127
154
80
88
131
72
104
120
80
119
184
96
88
155
95
119
101
117
80
107
106
123
87
102
145
83
131
88
123
119
109
107
110
80
74
69
126
143
118
156
73
121
80
128
159
89
80
140
88
128
119
156
98
88
117
69
80
175
112
94
108
93
87
108
82
106
82
113
164
175
104
139
96
80
102
151
144
120
73
69
56
94
80
87
136
112
136
91
76
67
80
69
131
106
107
173
89
43
121
112
104
56
76
89
93
137
80
133
87
118
78
80
91
199
80
131
76
147
147
95
120
76
127
99
89
85
156
185
146
69
76
80
156
69
76
87
131
69
80
107
146
76
91
146
101
113
112
118
126
119
88
115
140
80
89
69
66
88
134
127
69
128
110
111
79
80
112
97
125
92
113
80
99
100
133
95
134
110
72
164
134
107
71
164
143
101
136
88
133
78
123
80
106
88
78
76
80
87
72
69
124
101
85
64
71
80
106
120
69
151
74
74
96
140
80
76
78
82
76
124
100
140
80
100
154
80
98
95
122
99
106
91
109
80
121
137
120
99
80
75
91
107
133
155
146
76
140
111
119
156
124
120
115
120
121
74
84
110
197
80
175
99
109
93
80
117
69
110
80
104
106
76
69
111
87
100
129
93
95
134
99
69
120
76
69
158
76
111
83
75
76
128
80
80
131
87
94
109
107
128
54
119
125
124
80
88
85
80
90
52
76
151
80
131
154
104
69
175
69
74
113
115
110
154
92
155
125
120
119
69
119
89
120
93
43
128
109
156
80
87
78
78
69
111
88
95
87
88
69
88
105
154
96
143
107
201
119
146
83
134
89
140
115
56
87
149
197
102
181
112
101
83
76
110
107
114
85
69
112
78
146
175
128
94
109
119
160
134
69
122
120
156
106
98
175
128
119
69
87
107
89
134
74
83
88
144
118
154
80
102
197
74
88
72
136
154
101
99
90
87
129
100
79
80
82
69
80
143
96
119
146
110
100
82
120
197
118
109
106
175
136
80
76
106
140
78
138
155
85
131
150
109
69
78
122
102
67
119
124
95
69
144
76
87
112
69
89
99
78
89
112
125
80
80
103
131
76
114
64
87
80
121
99
109
87
117
87
128
197
69
72
119
140
76
120
87
187
78
117
175
143
88
130
112
80
130
80
145
107
94
72
52
119
131
107
80
140
128
93
144
123
129
92
123
154
87
102
160
117
69
67
114
87
80
115
113
98
119
145
107
99
136
69
118
87
125
99
88
120
149
87
146
156
94
154
121
100
69
93
145
106
154
132
156
91
87
107
54
163
80
78
176
94
151
107
98
102
110
112
175
86
131
72
109
99
93
72
120
78
66
87
164
119
78
87
143
119
174
80
89
94
94
127
78
88
109
151
84
119
102
96
137
80
110
120
121
87
131
120
90
69
121
107
95
136
163
98
85
94
121
87
112
76
175
76
71
69
132
86
96
151
80
154
128
134
76
109
137
80
155
52
54
163
111
108
80
88
89
104
131
76
91
104
87
113
72
128
96
88
145
175
152
154
69
96
99
80
89
140
69
140
131
172
87
151
80
136
136
80
91
151
76
122
115
99
118
99
101
80
133
156
87
113
146
145
76
85
104
110
128
76
88
111
87
67
80
147
88
80
144
69
156
87
76
78
107
175
120
112
156
112
120
102
84
97
106
52
69
102
82
90
93
76
102
113
83
89
140
80
109
90
80
80
74
88
87
146
68
128
120
128
121
112
88
124
130
76
101
150
146
154
127
106
160
107
149
94
69
119
87
54
89
76
74
80
154
78
128
163
90
183
67
54
107
43
93
138
134
112
91
80
144
101
67
54
80
128
107
80
119
175
117
68
128
99
82
76
96
149
100
115
89
111
56
128
74
131
120
79
113
80
107
112
113
78
138
96
104
101
69
100
197
107
197
144
80
96
94
119
95
83
149
101
126
78
159
154
128
131
132
87
137
80
80
138
197
117
156
162
69
102
111
110
72
104
83
124
142
91
107
72
134
83
111
80
137
163
128
154
80
152
140
96
78
106
139
80
156
67
118
104
107
128
89
87
118
76
139
133
175
99
93
69
109
85
87
94
123
154
119
79
113
109
87
138
94
118
123
175
91
136
89
134
109
89
112
118
119
96
80
144
112
169
197
136
99
138
89
69
146
72
122
112
69
133
76
72
91
80
69
154
78
102
113
99
157
69
110
101
131
72
84
127
78
107
149
121
87
125
143
136
110
100
124
101
80
106
78
72
79
110
72
107
104
120
165
119
92
106
121
43
113
74
113
96
69
175
78
154
107
88
83
99
127
128
107
131
156
127
112
69
98
175
78
113
88
96
101
102
89
78
146
93
72
124
123
101
104
117
130
67
96
88
106
107
80
72
78
80
119
80
104
66
124
87
91
72
128
74
80
107
80
69
160
107
119
124
156
127
144
175
69
104
143
102
106
93
124
97
80
69
121
134
69
85
117
148
87
120
69
93
80
69
109
144
78
69
138
110
155
163
89
87
113
85
144
104
122
115
118
43
69
72
197
136
91
80
101
136
108
88
91
82
89
94
118
99
117
126
124
175
78
93
136
156
80
69
112
82
156
110
114
104
131
155
87
151
117
94
140
111
80
175
52
66
69
111
119
130
156
76
131
184
120
104
80
125
137
102
106
80
120
120
160
101
126
175
69
159
80
80
98
95
104
115
151
122
164
94
76
102
128
94
145
175
143
117
114
80
143
120
155
137
152
117
110
95
87
96
66
146
99
91
104
113
110
146
103
113
69
69
96
151
87
54
107
131
175
94
93
151
120
78
100
140
128
120
92
134
78
96
128
111
143
80
78
80
126
98
78
88
127
104
123
104
101
174
93
72
122
148
76
80
104
126
69
140
109
54
69
97
121
107
120
69
72
80
93
69
80
113
120
155
91
175
69
125
80
56
119
119
87
151
93
78
91
104
134
96
79
113
109
76
119
107
88
59
89
128
80
78
181
74
199
99
120
131
145
80
88
107
121
78
94
148
79
102
129
119
120
195
74
110
69
74
76
94
111
74
113
109
136
69
76
94
93
137
175
69
119
82
101
147
91
87
80
123
136
69
69
110
80
136
73
126
91
78
80
69
104
209
89
87
96
87
120
154
104
117
87
129
109
80
87
136
89
156
152
113
137
69
100
80
95
115
110
118
96
113
134
136
89
76
160
78
113
58
136
118
124
87
103
102
80
80
106
139
99
100
89
120
72
101
110
93
66
140
64
76
104
76
111
149
72
87
131
80
88
120
109
80
88
96
111
74
104
128
102
112
117
128
80
128
197
132
78
144
143
87
161
131
69
52
136
197
80
128
87
146
155
76
56
118
80
106
87
119
69
94
107
80
131
112
85
133
87
78
131
73
69
76
78
99
99
102
120
116
103
120
110
113
98
80
115
119
126
146
106
101
87
107
119
154
131
127
91
131
104
117
98
76
87
157
87
113
114
89
78
112
110
97
69
90
80
91
88
87
78
148
80
151
130
145
119
80
107
43
100
96
103
85
134
76
130
142
127
134
107
107
87
80
107
110
102
120
120
112
72
74
110
151
100
78
153
89
128
80
119
175
107
88
80
78
91
175
66
120
52
93
88
134
87
75
87
80
79
110
85
128
142
156
121
160
197
154
104
128
89
110
87
105
134
143
76
120
80
78
109
120
120
69
147
69
96
80
127
87
78
87
130
69
58
88
139
80
104
109
132
128
140
103
98
148
130
126
120
80
78
64
94
107
92
69
124
148
117
121
91
93
125
87
108
82
128
69
134
87
90
88
104
106
87
74
120
80
118
88
80
92
165
119
88
107
117
134
147
137
126
69
78
128
87
203
54
110
136
110
109
173
99
80
120
52
115
78
78
143
78
120
80
164
69
91
69
164
131
60
80
127
121
94
94
113
164
94
83
88
163
117
142
154
121
80
69
76
151
185
128
154
104
76
122
75
87
102
89
87
154
69
94
106
71
69
88
197
76
94
97
137
132
102
80
104
80
175
131
99
139
87
136
197
116
134
132
128
66
96
124
69
76
175
100
102
87
69
109
52
76
110
67
76
120
175
132
107
175
52
114
136
72
80
87
87
133
76
78
69
54
145
151
85
117
175
80
158
54
124
72
107
117
74
93
161
110
94
69
74
93
136
145
107
69
100
69
115
76
80
80
56
87
118
140
94
105
132
127
80
80
76
113
107
76
87
76
127
127
80
88
150
107
129
121
119
72
104
80
107
136
76
104
91
162
124
120
145
54
104
125
119
71
121
71
119
69
60
136
69
150
88
104
134
74
117
78
119
99
165
78
72
121
80
103
140
129
80
124
157
90
127
142
109
99
80
68
80
69
78
110
80
112
78
80
78
69
101
104
43
151
78
104
119
140
85
106
120
76
80
80
78
101
145
106
121
87
120
127
99
76
78
117
119
112
99
134
101
106
127
99
128
104
99
128
76
122
95
109
106
54
74
72
93
109
147
154
78
109
69
141
145
88
197
75
137
69
151
156
154
110
151
142
130
143
140
80
101
69
107
78
156
89
69
102
80
94
158
88
88
148
89
101
85
72
131
93
138
89
88
80
93
76
87
113
85
138
119
143
89
145
69
119
76
78
87
107
140
80
119
121
143
54
85
115
81
87
69
154
91
78
88
133
129
106
99
109
152
96
126
109
106
113
123
146
80
80
99
52
96
119
60
128
107
107
107
109
129
109
110
91
94
110
197
119
87
141
54
163
119
134
131
119
80
106
54
69
87
117
60
89
87
113
52
69
197
80
120
104
107
80
76
110
74
69
76
78
54
119
152
150
153
128
80
109
109
80
71
137
69
80
117
143
78
101
52
80
80
137
104
80
54
89
87
120
87
59
154
96
94
80
80
69
156
88
132
92
123
80
106
136
69
69
163
132
78
137
120
113
69
105
69
106
132
99
126
78
154
94
78
69
76
136
86
107
127
74
143
99
76
131
160
132
76
69
119
69
98
146
93
95
123
163
78
121
112
94
107
116
100
87
118
143
80
110
120
156
72
69
121
83
134
124
80
117
118
110
117
104
93
76
109
98
76
102
69
137
127
80
154
110
128
78
136
109
121
131
126
107
165
95
122
154
106
129
114
143
121
69
69
93
99
69
76
78
109
76
169
93
117
91
154
87
112
88
71
109
109
112
87
88
99
99
78
106
88
94
154
163
148
102
119
101
99
71
136
110
119
68
72
93
131
103
76
140
109
139
128
120
112
117
127
69
175
99
134
80
78
76
119
175
78
80
144
94
163
165
78
76
127
111
87
134
154
87
76
120
137
104
80
93
93
137
95
118
102
110
88
88
120
80
140
106
96
117
80
126
69
80
99
138
111
69
121
121
99
118
175
166
121
72
146
104
80
117
78
124
110
110
121
76
87
91
197
72
129
80
96
106
107
117
80
107
78
120
96
69
120
102
136
88
134
136
80
87
54
78
76
90
69
78
175
112
103
110
106
123
112
88
119
107
99
93
78
80
94
90
76
80
100
131
91
111
115
175
76
80
105
76
80
137
69
107
106
101
156
80
125
80
151
151
87
100
88
128
119
151
87
80
139
149
106
114
78
76
152
75
78
80
113
109
152
87
131
69
121
133
115
87
111
157
175
101
134
101
80
80
88
121
80
78
78
116
110
96
93
128
133
123
80
208
126
85
145
77
102
113
69
66
143
131
87
122
76
145
175
128
172
107
119
143
78
136
104
175
103
80
93
127
175
43
80
164
201
99
96
76
93
91
69
99
96
125
148
87
128
119
89
100
95
69
134
93
151
52
69
134
76
130
94
100
83
100
163
82
88
163
64
88
181
73
147
124
123
125
87
143
64
121
127
87
130
74
91
78
101
69
111
106
134
87
99
80
69
175
80
120
122
163
80
72
110
113
91
60
75
87
120
80
154
76
107
80
72
104
87
87
133
107
128
127
80
119
104
131
113
93
87
128
120
154
71
91
80
69
76
106
80
93
174
73
98
142
120
109
101
82
94
69
85
80
102
76
107
91
175
126
69
89
151
80
131
76
101
74
140
106
76
91
80
121
85
104
80
75
96
120
125
154
113
52
80
134
78
121
118
69
80
115
99
145
122
107
76
95
80
136
120
120
83
96
143
83
163
117
54
111
120
80
99
109
118
144
151
80
178
142
127
151
136
111
119
88
68
132
131
126
108
77
111
104
80
72
89
69
120
108
109
78
80
96
93
126
132
80
75
98
78
99
104
69
78
80
87
87
113
80
91
95
99
87
74
136
69
101
121
89
119
88
66
69
175
85
139
78
113
110
128
79
66
175
69
78
197
106
91
103
118
121
134
98
93
101
140
106
146
127
145
147
131
123
82
115
120
133
87
69
115
69
88
103
89
121
119
156
69
109
78
119
102
156
126
96
69
109
134
69
101
175
136
119
69
133
80
120
80
100
78
63
134
148
144
117
161
100
133
76
121
110
114
125
95
112
72
129
76
78
93
113
107
113
113
76
112
156
121
99
106
99
80
118
74
175
120
128
80
185
74
113
79
140
146
101
80
121
52
90
87
123
110
128
113
106
89
99
100
80
87
78
104
78
128
143
94
114
80
107
105
69
154
144
76
52
128
129
80
118
69
78
66
86
105
150
54
69
151
120
128
145
91
175
105
113
121
152
123
104
113
117
89
69
127
128
94
76
78
88
154
90
94
54
119
151
87
69
87
147
102
120
99
113
89
94
111
69
106
80
88
93
90
69
113
69
87
120
87
76
131
144
133
120
87
117
104
87
80
99
156
78
147
103
140
76
78
106
175
52
129
80
89
99
87
164
175
135
78
87
100
154
124
175
80
67
69
107
152
121
80
105
148
134
197
66
120
89
155
93
164
76
69
78
76
72
76
106
130
155
80
120
69
98
93
175
114
80
52
80
98
123
69
110
123
147
94
146
94
152
80
163
175
88
197
101
140
80
99
93
78
126
85
69
69
130
120
87
87
72
87
80
175
80
101
87
93
110
129
151
99
80
119
119
117
119
111
117
69
134
69
126
138
120
85
70
95
136
119
132
96
89
125
131
111
155
120
131
134
67
93
110
80
76
87
69
140
107
94
110
115
119
140
124
94
175
99
98
69
80
118
80
96
119
96
175
144
95
101
78
101
120
85
88
111
128
80
100
125
112
128
78
119
95
88
87
72
76
136
119
78
110
128
88
58
87
72
87
89
123
52
80
80
122
96
120
148
88
80
73
145
101
87
99
69
117
87
119
110
87
133
99
91
103
120
75
146
80
132
107
113
205
91
87
78
87
154
87
121
123
157
56
110
110
149
91
106
89
142
118
69
109
185
136
109
119
54
87
108
115
133
113
146
131
78
175
76
117
80
145
154
119
99
69
102
134
117
76
89
142
119
80
119
120
78
85
88
110
119
87
104
99
119
90
125
96
80
103
78
113
123
185
54
80
140
104
166
100
91
128
69
128
197
109
96
76
113
69
80
91
89
131
94
96
101
99
111
121
80
128
132
54
102
73
128
76
69
97
78
143
69
87
80
96
80
79
78
131
146
128
86
69
96
113
143
127
66
99
172
76
80
87
165
76
121
85
122
113
132
120
125
106
124
55
119
80
87
76
69
106
149
109
109
128
76
91
93
156
175
78
93
69
88
112
107
80
80
144
125
80
113
143
78
91
73
120
76
104
121
91
110
117
96
76
135
110
101
137
78
101
169
109
175
107
78
102
101
106
69
130
93
108
80
88
119
128
154
109
183
128
109
119
144
136
118
109
78
88
137
154
85
121
134
80
131
120
78
87
84
111
80
109
117
121
99
78
69
128
94
107
78
69
119
76
69
80
117
112
94
96
119
69
131
120
93
80
106
87
78
132
109
91
128
107
79
121
78
85
99
69
88
154
146
119
144
110
95
87
145
124
75
97
134
102
103
201
197
123
89
80
112
118
120
120
80
80
76
99
134
134
101
92
106
107
96
76
117
76
156
140
121
148
69
87
94
106
67
136
80
69
145
94
117
119
150
119
91
99
94
76
117
78
119
119
124
113
145
99
88
69
133
147
186
69
95
80
131
78
109
87
63
115
117
99
78
80
121
78
157
128
115
80
157
103
87
110
87
80
149
118
69
80
134
99
104
79
148
150
119
76
87
69
141
139
125
111
134
199
139
94
129
119
169
107
83
96
101
127
156
83
140
164
69
94
113
138
134
112
69
120
87
125
152
117
89
119
76
126
56
155
69
108
146
85
163
101
129
52
69
98
121
154
87
130
163
78
123
175
76
129
169
95
140
88
148
80
87
143
89
69
110
129
124
91
119
78
78
128
94
110
131
143
101
175
121
104
80
107
126
110
115
163
123
107
143
104
88
98
88
69
78
54
175
117
106
109
64
156
141
99
134
80
136
133
121
113
69
131
121
104
80
123
82
175
134
119
52
197
154
146
91
98
121
62
100
147
103
122
101
72
121
106
80
87
74
87
112
103
128
88
121
119
113
120
160
164
69
80
142
148
98
149
120
94
80
111
111
78
60
140
54
131
140
88
121
106
110
80
114
117
117
94
121
107
87
138
104
80
99
104
85
151
120
126
76
120
154
134
69
87
146
123
72
140
72
127
101
138
151
111
123
87
87
103
78
118
154
128
126
116
183
69
80
64
76
186
121
120
147
107
120
113
80
74
82
148
143
72
69
80
132
118
78
134
88
129
129
109
146
107
112
76
112
112
69
144
104
133
157
103
119
69
114
140
110
121
105
71
80
123
103
119
107
78
80
175
163
82
119
156
128
134
154
113
119
96
76
145
87
112
124
81
75
106
91
93
111
89
78
107
89
113
81
106
145
107
137
164
80
174
156
175
80
69
69
120
88
154
127
153
154
76
101
108
127
126
134
104
103
154
120
66
87
69
80
107
76
154
126
80
124
144
128
69
197
114
128
76
122
89
110
158
69
136
119
78
127
149
98
103
64
87
145
54
126
95
85
109
69
120
69
80
87
163
175
80
80
134
133
88
129
197
96
95
130
143
91
128
102
78
76
85
88
69
118
109
85
119
101
76
133
113
76
131
78
94
54
115
136
128
124
146
128
146
131
69
103
107
89
96
74
87
80
174
115
110
95
87
154
134
72
76
102
87
128
83
119
76
101
69
87
144
120
111
91
115
110
151
108
115
120
78
131
76
174
126
89
106
142
133
72
80
132
163
148
136
78
104
80
174
121
76
154
169
129
80
69
114
80
80
138
116
119
80
117
76
145
99
99
175
94
197
86
107
91
93
69
94
105
142
78
103
87
72
69
59
72
80
88
111
197
69
175
134
156
143
175
88
132
88
88
80
119
76
142
87
120
157
107
144
136
69
76
136
114
89
104
107
132
89
126
80
122
118
113
156
134
80
107
99
99
143
104
108
107
97
112
94
101
121
64
76
69
87
113
131
96
124
80
99
107
100
80
80
82
95
80
119
113
110
78
133
94
80
134
132
163
128
99
134
128
95
76
100
134
98
115
135
80
155
72
88
74
78
160
134
76
134
113
88
104
78
99
93
146
119
134
87
113
69
69
119
150
128
144
89
133
72
154
119
93
118
87
93
196
103
89
121
69
119
76
88
80
87
87
88
117
123
88
94
69
160
115
130
114
74
98
91
87
102
104
76
143
88
78
83
117
121
117
149
119
69
97
69
82
121
100
104
123
119
100
120
115
150
154
52
110
154
145
112
91
102
110
106
175
106
113
72
80
112
80
83
80
107
136
201
76
102
111
121
125
134
169
187
119
90
88
110
78
99
131
69
119
178
145
205
128
125
104
95
131
119
128
107
117
71
119
62
123
152
127
92
151
104
80
89
76
131
96
118
80
169
96
69
175
133
54
119
128
94
109
94
80
99
118
58
76
80
128
80
87
87
83
80
131
155
119
80
87
96
80
108
124
132
117
138
140
118
138
56
110
111
80
111
93
175
101
145
175
78
113
107
110
80
106
110
104
52
80
83
88
80
143
82
99
164
76
126
75
101
100
131
116
98
145
99
93
80
94
90
94
140
69
138
112
119
126
175
97
100
94
87
93
52
124
101
175
96
134
133
127
80
88
155
79
78
107
132
96
111
104
69
121
106
119
78
110
184
155
118
90
88
100
80
125
111
109
128
109
89
110
138
119
110
69
127
133
175
118
82
87
69
89
142
76
112
142
154
97
112
79
58
80
109
91
119
101
69
120
134
80
110
99
121
115
54
96
87
106
95
104
52
69
76
111
154
72
136
106
110
110
156
93
107
197
136
160
69
92
152
109
104
102
106
93
123
80
154
76
132
175
76
119
80
80
87
148
104
155
69
74
133
81
87
112
120
91
104
175
87
166
120
89
107
89
122
69
121
101
109
76
107
142
113
119
107
114
99
88
127
88
122
146
80
119
104
54
197
142
130
76
106
92
89
157
76
79
54
110
110
121
122
169
76
100
128
132
131
76
78
112
103
88
104
102
151
119
96
101
151
121
80
107
80
120
119
80
128
115
72
80
79
140
118
175
64
143
117
169
87
101
99
101
69
112
76
96
140
80
121
100
69
119
175
113
119
85
66
86
156
113
134
87
104
80
69
136
96
80
69
74
131
69
69
118
78
80
124
127
68
137
110
74
99
118
110
106
114
78
87
74
106
119
131
101
156
118
126
104
146
72
100
110
120
136
100
128
118
80
80
76
131
80
95
105
87
104
116
91
120
78
115
75
146
141
76
110
71
153
80
78
156
80
69
183
128
112
72
78
125
74
120
134
80
123
80
117
56
124
119
88
99
107
197
91
117
56
71
140
99
56
103
76
175
80
78
87
78
69
155
112
122
87
131
91
163
94
135
133
120
54
101
122
102
148
80
94
155
102
130
112
147
126
89
107
112
69
112
97
106
80
72
59
76
109
154
91
109
175
90
99
120
84
94
128
134
151
106
79
99
80
148
69
64
109
94
109
80
123
158
72
83
120
113
120
80
88
122
89
128
108
69
149
151
76
93
106
121
112
110
119
85
129
89
119
137
132
90
118
126
99
88
87
99
72
94
131
96
127
109
98
69
107
92
92
154
76
120
135
71
99
88
111
120
69
154
102
164
156
80
109
107
134
80
89
110
96
155
175
80
100
110
130
174
78
69
111
143
60
80
119
163
90
118
136
175
67
72
137
106
80
111
120
106
98
141
120
78
127
119
93
80
96
80
137
121
151
112
75
80
78
199
136
67
103
151
155
107
151
69
122
99
136
101
110
89
89
143
137
69
94
201
143
139
101
154
78
110
112
87
130
128
144
123
89
75
112
126
146
94
74
69
123
80
119
78
90
106
87
69
120
74
98
94
63
114
113
88
74
88
127
99
99
80
69
163
103
87
82
120
69
82
87
130
123
89
128
99
94
118
69
131
118
80
89
94
140
89
136
104
87
96
130
189
131
72
152
134
151
132
119
107
100
137
109
78
69
128
113
127
94
69
136
113
136
106
64
126
175
99
175
156
162
120
124
128
93
80
119
96
120
110
106
78
107
130
81
112
120
80
87
151
56
92
111
129
140
101
87
156
128
87
72
146
134
137
66
121
76
115
101
90
54
156
106
134
66
146
110
175
107
87
76
76
88
69
112
78
197
122
80
89
119
107
94
106
89
75
88
87
69
169
120
89
72
131
132
131
87
153
63
69
95
159
136
76
80
78
154
147
89
87
131
80
100
54
107
80
133
88
87
128
106
80
98
85
113
69
74
81
121
133
133
140
87
165
80
121
90
106
127
126
100
127
99
101
69
130
76
87
110
146
83
112
106
75
91
80
109
175
68
78
151
125
134
80
131
118
78
74
88
109
119
138
98
99
69
120
156
69
94
138
76
93
156
104
80
112
151
82
109
109
106
107
101
138
125
185
90
105
183
175
80
166
151
197
109
43
145
99
76
78
109
166
96
123
120
117
80
78
93
120
92
151
66
104
133
78
119
136
80
175
80
74
87
72
107
129
54
88
140
161
160
87
107
72
102
78
78
113
138
102
60
83
64
107
80
109
172
106
113
80
115
80
159
69
76
113
201
107
88
109
147
146
90
109
77
80
78
134
72
101
76
181
89
96
68
144
91
109
87
104
100
127
54
119
131
88
72
76
80
103
129
146
87
99
88
163
85
118
94
72
80
114
126
76
206
94
94
80
79
119
110
127
120
114
112
99
153
156
102
118
144
107
91
154
112
92
156
110
131
120
128
87
119
99
69
154
99
69
90
107
69
80
136
72
89
109
107
134
80
101
78
90
78
119
110
80
119
78
76
119
80
69
89
119
143
87
99
118
89
69
134
69
143
161
140
100
101
110
79
111
133
80
80
164
140
87
136
69
78
80
154
175
131
89
101
99
127
156
80
101
78
107
128
106
174
98
96
114
100
80
72
155
129
164
111
69
128
132
149
88
93
120
96
164
52
69
103
117
118
80
138
113
72
78
114
91
114
154
140
101
156
119
80
78
90
109
109
69
140
80
144
134
78
121
131
106
69
112
175
121
102
152
69
80
87
89
106
120
69
127
117
104
87
101
117
94
128
119
87
121
106
132
113
96
118
109
78
80
78
82
136
150
86
175
76
80
72
87
57
87
118
147
114
99
137
183
99
69
104
76
152
69
199
95
89
136
101
94
87
115
132
106
94
136
76
88
110
131
181
78
104
160
112
157
88
136
80
98
120
78
67
113
134
127
120
134
197
101
104
126
80
106
93
87
134
175
119
119
94
109
67
124
154
101
75
154
128
87
88
146
104
154
155
148
80
115
69
128
80
80
107
154
69
100
72
109
69
93
143
133
119
124
120
80
157
151
87
110
123
136
101
54
163
124
119
76
102
78
128
91
175
114
87
120
119
152
89
113
86
91
134
76
120
161
122
87
89
142
117
104
150
161
80
58
117
117
113
89
76
80
120
120
155
80
117
119
125
106
106
112
69
91
154
102
109
119
156
104
79
69
154
106
89
107
106
69
88
140
136
174
145
119
69
72
94
69
120
80
76
100
76
76
175
96
120
135
56
111
137
89
147
103
99
129
119
147
74
100
88
120
107
105
98
119
87
119
88
69
155
80
119
67
154
78
80
157
157
76
101
69
175
120
80
80
144
95
76
104
95
110
100
132
96
120
88
69
117
124
113
115
156
114
122
132
80
121
99
131
94
175
69
119
80
83
156
90
87
69
89
60
127
88
85
89
80
120
91
123
113
102
183
103
102
72
163
100
72
109
100
78
111
103
151
76
80
138
104
128
99
144
136
122
67
89
111
94
72
106
78
104
121
140
128
113
85
76
69
154
154
113
114
118
143
137
89
94
126
60
76
125
100
109
154
75
156
113
106
121
80
151
80
80
69
107
156
138
143
87
115
80
91
76
72
87
106
78
80
107
69
80
89
95
88
87
76
148
80
131
88
80
118
94
130
106
96
120
87
119
91
56
76
76
99
105
87
78
74
83
131
142
128
102
130
151
85
157
120
134
94
197
107
140
87
88
115
148
99
78
115
90
137
99
85
131
87
69
78
126
107
88
172
146
106
95
74
109
120
69
119
76
109
154
81
87
89
87
140
148
78
109
74
109
98
109
112
144
119
119
103
80
113
76
98
120
114
121
109
103
80
131
80
87
78
140
164
43
114
69
75
104
99
120
80
88
134
101
69
151
78
88
94
69
142
89
78
100
96
109
69
106
80
138
144
151
99
111
148
109
78
111
115
127
81
80
94
87
87
119
104
140
151
52
99
91
120
88
128
107
128
128
93
128
69
98
119
114
69
98
127
91
175
131
87
101
85
87
163
89
119
109
155
107
128
146
126
107
69
69
119
102
78
134
134
99
85
88
106
118
87
76
127
101
117
113
129
78
131
136
104
91
132
122
99
104
78
76
140
88
106
76
69
110
69
106
101
119
120
121
141
120
104
106
78
87
76
197
69
169
153
160
87
69
107
104
119
117
154
107
80
85
151
134
143
99
138
78
116
67
69
74
87
104
99
115
134
69
107
157
96
78
69
137
91
112
105
80
93
76
98
94
106
57
120
104
155
80
131
127
154
104
114
127
94
117
101
117
69
113
69
78
88
119
120
133
140
131
91
96
149
107
89
201
85
93
163
121
175
80
164
94
87
80
74
148
83
69
119
80
97
80
83
78
107
89
119
131
89
78
154
123
99
129
85
119
72
69
76
99
151
119
115
136
94
115
88
107
89
100
59
120
134
157
154
80
125
80
154
107
122
69
128
106
136
87
76
76
123
69
104
110
110
111
72
128
69
141
78
151
69
120
117
183
69
69
155
94
94
101
75
106
121
157
117
130
80
115
119
69
126
112
101
78
87
112
94
56
109
163
143
72
80
160
107
119
52
143
102
154
69
136
89
123
87
152
90
69
80
89
72
120
119
111
175
88
69
99
175
143
118
78
76
136
106
197
118
95
114
76
99
109
99
78
124
94
163
118
113
76
140
195
71
92
90
89
133
119
69
134
78
143
127
69
102
88
59
156
94
115
119
127
87
107
90
128
104
110
117
80
136
131
69
56
110
102
87
60
72
89
87
80
80
102
96
143
160
80
76
156
87
145
74
114
114
117
95
104
88
93
106
128
142
78
80
54
123
91
147
76
78
156
131
140
120
107
96
118
76
69
99
113
69
80
104
72
121
69
155
60
88
94
138
80
146
93
154
69
112
87
89
110
94
69
78
78
59
113
107
76
128
175
72
88
109
128
80
129
127
87
108
76
156
175
95
123
69
69
74
89
160
72
149
131
152
87
78
87
174
80
69
116
94
87
87
107
98
87
90
118
80
74
75
87
52
196
163
72
145
112
80
118
98
119
197
102
197
128
98
80
145
80
104
78
80
122
80
80
127
88
100
130
133
101
111
78
93
130
101
103
78
126
80
119
91
112
54
116
128
113
96
121
80
134
121
90
92
80
93
154
144
91
129
69
80
87
80
136
134
69
76
103
101
112
122
102
154
81
82
120
78
122
89
80
197
76
67
82
119
113
106
96
93
79
99
174
120
128
106
119
104
88
98
87
96
209
118
91
97
90
109
128
154
107
135
69
95
121
114
94
69
69
155
111
109
110
110
91
99
80
99
121
128
89
163
67
106
106
107
80
138
145
119
112
78
175
149
118
150
94
89
107
78
69
76
131
69
78
143
136
154
113
82
106
94
89
52
120
110
69
80
80
88
99
78
80
151
137
93
80
94
73
76
154
69
80
69
175
69
72
154
69
175
76
156
78
75
89
72
121
103
93
76
94
87
76
134
120
154
154
115
99
80
89
110
199
156
88
100
76
121
109
131
109
69
107
56
94
75
69
110
76
80
88
78
109
78
88
144
134
131
120
110
87
140
104
87
69
80
78
104
106
67
69
118
119
120
117
94
76
82
93
113
119
122
81
92
80
69
87
128
120
121
97
87
99
87
151
78
156
78
119
134
91
72
119
102
88
137
89
122
100
181
113
117
175
87
96
124
94
99
80
113
88
78
80
78
88
85
89
96
142
112
75
69
80
147
69
111
95
104
148
140
128
109
130
156
143
117
88
119
87
87
118
78
88
76
109
72
155
94
145
91
131
94
66
122
113
123
107
109
129
80
160
175
175
116
201
119
109
114
143
113
155
175
76
117
118
115
104
87
104
81
155
106
72
76
89
78
138
131
117
107
87
156
119
74
52
80
152
96
126
114
104
110
127
99
69
119
87
149
144
80
69
110
126
89
102
100
114
94
119
119
120
69
89
110
111
97
80
80
78
69
91
137
78
107
119
76
76
112
133
122
103
76
89
101
95
134
115
80
69
89
106
78
107
119
128
103
136
95
73
69
96
69
80
76
80
80
117
80
87
110
69
134
102
95
109
120
82
119
112
133
100
78
78
115
155
134
146
175
121
181
175
69
85
140
105
118
132
144
116
124
69
80
151
135
88
136
80
113
69
90
80
80
120
130
119
100
104
110
125
80
117
69
113
134
100
131
85
148
101
114
131
99
120
106
181
120
99
107
110
117
72
69
115
122
76
80
172
127
102
101
120
56
94
80
197
137
66
128
80
69
69
72
80
76
83
83
78
69
91
80
81
154
80
129
111
87
175
140
77
134
144
54
148
69
154
140
78
87
130
54
128
140
134
76
140
80
94
93
107
115
112
175
141
69
120
69
80
165
66
159
147
99
80
80
164
131
140
136
110
96
150
114
85
106
116
80
89
154
94
148
69
109
110
81
112
74
129
80
88
69
69
136
201
109
117
69
154
72
87
131
78
91
144
69
164
175
80
145
124
138
144
110
107
127
80
89
130
93
83
106
88
148
112
110
76
121
69
147
100
80
99
69
112
69
97
124
69
80
121
114
197
128
113
69
89
125
80
154
106
114
88
54
104
163
119
110
86
79
156
80
87
80
80
111
121
91
80
80
143
94
112
121
113
69
80
81
80
199
160
101
115
89
107
128
154
151
69
93
114
109
79
93
94
112
87
101
100
126
99
80
136
80
89
107
127
110
161
43
131
145
109
106
90
141
137
175
87
131
122
54
142
94
80
91
80
94
154
60
69
76
85
121
138
110
89
76
80
72
112
103
93
76
144
121
66
129
120
106
94
69
127
76
101
104
114
119
92
107
69
123
78
140
80
99
115
76
107
123
137
52
100
140
76
80
96
80
156
126
197
137
101
80
88
80
128
149
181
138
89
69
121
114
120
106
78
114
80
119
88
80
113
131
109
67
87
134
87
76
128
147
138
158
110
130
117
80
106
80
136
76
69
119
119
145
107
69
97
157
130
82
119
78
109
109
69
145
80
139
112
104
87
131
120
104
72
120
130
69
80
110
85
76
94
57
114
128
110
43
69
109
138
43
43
99
92
107
112
54
88
148
121
134
91
89
101
62
96
75
64
119
131
137
134
87
103
80
87
183
154
87
90
127
76
107
151
72
109
94
93
52
72
134
43
116
69
89
69
88
75
78
128
175
135
78
119
98
56
87
85
59
76
69
108
78
66
74
121
93
88
94
109
76
128
128
80
151
80
128
111
136
128
72
111
109
74
156
118
99
110
69
99
88
119
143
106
113
87
91
106
72
107
162
101
151
69
87
95
88
123
96
99
76
69
197
134
94
147
131
120
119
140
107
76
141
112
95
117
89
112
120
118
93
110
80
104
130
76
119
54
119
113
69
80
69
175
76
112
72
67
137
113
151
104
80
123
87
99
143
110
136
119
87
119
104
78
88
147
175
69
107
94
146
143
87
130
91
106
76
107
76
177
104
175
113
87
80
83
99
87
78
80
106
106
88
80
120
80
112
69
96
94
69
143
104
94
123
113
113
175
75
127
69
175
113
103
115
140
78
123
123
87
119
106
85
69
96
72
89
107
135
149
174
130
120
119
52
145
121
115
132
67
117
108
108
108
109
87
66
106
117
80
80
96
80
112
80
136
113
80
90
119
155
87
201
107
66
104
154
80
143
117
106
119
139
143
127
80
138
119
133
106
72
131
76
85
113
88
128
119
109
157
94
120
78
138
60
69
112
101
137
136
140
87
80
107
126
118
144
104
154
107
109
67
110
155
80
80
56
108
123
99
88
107
107
96
80
120
119
76
145
80
143
166
124
78
121
66
143
89
80
98
74
136
80
136
163
119
91
107
106
128
109
111
43
110
74
99
134
121
83
76
119
127
54
154
87
117
120
133
76
120
150
126
121
149
118
114
67
128
128
80
196
71
122
146
134
146
69
109
99
87
77
113
80
103
76
99
78
118
91
80
80
87
99
137
80
99
119
76
91
91
111
134
120
90
69
130
76
91
125
78
69
102
136
101
80
89
119
79
96
136
87
90
131
114
87
111
80
92
109
106
78
127
94
139
107
74
69
101
107
150
76
100
139
80
72
87
87
119
80
122
136
119
80
87
136
118
80
96
93
157
136
89
163
87
109
67
54
80
120
91
104
110
107
156
119
98
107
94
72
76
128
80
144
107
78
87
144
94
88
100
78
76
197
92
68
132
75
111
125
80
89
138
101
94
119
126
175
64
181
78
80
83
129
89
134
94
109
87
88
160
71
83
89
112
109
76
119
109
52
128
113
93
106
80
78
120
101
112
93
79
127
103
99
118
106
119
136
112
80
91
87
78
136
93
82
87
76
87
54
113
130
103
152
89
77
93
130
136
125
154
84
107
52
106
72
117
178
140
109
98
71
80
129
100
118
96
91
98
142
120
151
58
72
115
79
163
144
76
104
76
99
102
78
119
120
106
127
80
128
121
85
136
87
100
130
130
120
76
99
79
69
148
133
80
89
175
78
154
103
110
106
134
119
115
146
84
69
175
128
52
94
165
80
69
123
140
82
94
88
107
116
109
134
120
68
136
130
118
97
80
96
93
59
76
69
74
110
104
109
87
143
136
128
107
126
93
81
101
130
94
87
76
80
119
119
100
119
119
94
69
112
154
94
78
94
80
87
127
155
87
113
151
126
136
107
119
52
80
128
131
124
107
166
175
69
106
109
76
130
104
131
109
119
92
119
78
143
164
174
78
141
83
69
102
128
110
115
121
124
88
107
133
175
106
76
91
96
87
119
175
132
96
80
94
69
133
80
80
155
128
130
93
69
76
69
113
118
124
103
83
69
113
76
80
113
72
87
113
80
113
76
69
175
156
107
66
120
95
175
89
121
94
140
104
137
154
155
99
104
87
118
106
130
80
106
72
154
154
110
89
121
69
69
100
80
152
114
160
146
94
162
72
67
78
99
88
94
128
106
119
76
113
69
96
120
94
118
87
99
96
99
80
131
115
69
69
82
94
128
72
121
69
185
74
76
80
66
121
78
67
144
101
89
82
95
154
132
155
78
67
78
80
115
75
134
69
156
91
144
163
99
100
75
181
134
80
69
69
120
80
114
43
54
151
102
118
118
162
69
117
101
145
54
78
114
88
58
156
134
85
80
80
80
87
107
119
80
141
99
80
80
134
80
87
140
83
80
113
104
156
154
90
101
59
69
80
164
89
162
156
119
99
107
110
147
127
99
156
87
119
80
98
127
79
131
109
146
128
78
87
80
89
102
74
117
87
99
94
113
93
91
110
157
76
80
128
113
163
99
199
123
96
175
161
125
52
107
76
103
80
127
76
69
97
166
128
134
80
136
110
111
91
76
80
156
69
78
154
76
87
93
96
76
87
135
69
128
78
93
132
109
71
175
175
121
122
131
76
93
124
155
69
80
78
134
104
88
147
88
80
69
78
80
137
114
80
127
140
110
155
118
80
110
69
87
138
91
87
69
89
83
80
155
152
72
88
76
94
87
197
121
95
144
119
136
110
113
93
93
145
69
101
80
80
69
110
76
72
140
134
76
145
78
88
175
80
94
107
88
87
87
85
109
94
113
76
99
165
120
105
120
122
76
110
94
87
80
154
106
76
110
117
78
134
78
74
122
87
122
89
134
121
154
106
78
136
69
69
114
87
132
91
80
128
98
117
69
146
80
127
154
118
93
94
114
87
120
99
131
120
131
126
125
125
73
69
69
151
75
75
111
78
119
169
54
80
94
69
175
148
69
87
99
140
80
89
74
80
112
78
98
87
80
140
80
80
143
98
114
134
83
93
80
128
100
80
101
103
131
118
102
80
69
119
169
131
95
116
69
93
80
129
148
87
99
76
52
118
80
121
145
96
127
175
107
116
122
197
85
74
80
80
107
88
107
76
78
78
69
94
78
104
76
78
69
143
69
121
147
88
87
137
128
69
91
138
80
117
69
120
102
156
136
146
58
89
110
146
134
76
69
104
119
87
69
82
80
100
163
119
112
101
106
175
109
120
175
126
90
154
69
127
91
111
144
107
99
72
87
78
98
137
111
83
154
104
96
80
96
119
89
102
154
88
113
66
128
88
82
80
80
87
101
104
91
80
87
132
160
95
80
72
129
67
155
119
122
76
87
78
131
103
91
121
86
128
69
148
101
69
87
113
175
121
131
154
59
102
111
74
155
80
118
125
80
156
78
115
137
82
147
107
78
69
119
163
80
143
78
94
96
99
69
80
112
93
80
112
76
78
119
87
107
111
106
80
110
101
117
175
76
80
72
99
80
107
106
99
99
102
109
113
69
99
69
117
107
113
52
80
164
140
123
131
120
93
123
156
104
80
145
87
123
89
117
156
120
147
134
199
78
109
140
113
91
101
64
52
99
103
59
136
110
134
69
121
106
69
110
113
78
129
110
144
105
102
91
78
72
119
106
88
76
98
80
66
124
174
109
112
114
116
78
162
78
121
59
80
80
175
99
127
106
129
80
154
112
74
126
140
175
78
78
72
162
80
96
154
90
91
152
161
88
114
80
175
144
76
87
104
134
156
76
146
121
106
118
107
76
99
104
109
115
112
100
142
89
156
126
80
88
87
76
101
88
119
74
66
140
89
93
133
80
197
80
106
52
120
144
95
131
104
52
94
89
144
76
98
152
118
101
112
134
104
101
122
112
96
80
98
135
87
112
99
119
109
104
89
102
93
90
139
69
197
76
181
103
56
115
105
131
127
80
120
109
79
87
154
78
99
124
87
112
69
78
120
87
110
89
80
63
155
175
99
123
95
148
116
85
87
80
148
69
80
110
80
137
115
127
128
54
117
116
80
155
52
91
76
102
72
144
130
74
87
69
124
90
163
89
69
80
154
128
94
93
72
158
100
80
104
83
87
102
94
80
87
88
175
125
72
133
104
99
104
109
98
91
94
197
197
112
109
121
89
201
99
120
96
69
96
88
154
94
144
119
76
69
122
123
112
121
80
123
81
69
76
125
111
131
104
80
59
107
77
101
108
127
101
69
69
95
97
107
78
99
114
80
137
175
72
80
118
87
78
143
99
99
120
129
143
163
104
147
107
96
91
128
87
144
110
145
154
143
92
197
52
156
136
101
69
108
109
136
175
95
164
158
85
65
57
147
87
122
127
72
126
120
78
86
87
119
76
163
100
120
93
108
88
112
69
131
101
78
80
95
87
76
134
69
118
99
80
109
90
69
68
146
89
138
88
146
117
107
136
110
74
151
106
101
163
131
81
52
106
117
144
90
76
119
66
96
106
120
87
175
83
72
136
175
122
80
87
120
78
122
80
110
128
124
113
66
107
91
155
87
157
80
69
80
113
100
104
87
119
88
115
197
112
128
87
133
80
149
100
175
111
142
155
131
145
80
119
145
91
121
120
162
69
87
72
89
87
99
127
52
99
100
80
109
91
87
145
75
138
138
154
137
110
78
80
85
138
78
93
197
88
110
109
76
89
72
69
69
140
113
99
80
76
85
69
110
56
87
128
104
103
97
78
69
121
113
94
117
119
96
143
76
128
74
78
140
80
104
131
80
111
90
119
69
69
80
109
116
80
124
119
112
102
104
163
87
80
103
120
88
154
150
88
94
69
76
151
78
111
91
138
80
154
96
99
131
69
120
100
102
80
151
126
128
109
94
140
102
119
175
78
125
69
80
107
100
119
69
143
94
146
106
69
94
154
69
120
92
69
119
107
137
77
113
110
72
164
80
99
185
101
80
155
104
163
143
134
54
75
80
80
144
76
43
118
113
78
109
119
112
81
197
107
134
164
66
80
76
100
78
109
69
119
107
124
80
101
99
99
89
88
84
107
105
117
89
87
69
85
129
72
72
110
109
121
56
76
120
76
104
118
87
69
107
76
175
100
80
155
145
136
80
133
56
76
121
89
117
129
80
80
136
87
76
104
175
91
106
91
113
107
104
120
80
174
54
80
119
120
101
90
156
113
88
113
80
80
72
110
88
74
69
106
94
118
82
132
83
96
123
76
69
69
119
118
69
69
131
106
54
96
154
78
64
69
103
136
122
94
96
109
119
74
107
122
89
87
100
121
134
76
72
119
90
131
69
89
87
89
80
87
88
72
194
127
69
91
123
156
76
140
74
83
129
131
123
72
102
103
107
90
136
102
106
94
122
69
119
172
154
117
183
151
79
80
119
78
94
83
136
96
83
99
155
113
134
135
95
79
76
107
146
87
113
88
69
117
163
88
91
119
80
175
150
99
87
87
140
111
100
69
56
86
99
116
111
137
109
156
120
107
128
134
60
121
94
110
76
78
131
54
93
111
87
120
148
124
82
146
119
106
107
115
101
110
102
78
85
153
87
54
87
128
69
80
131
123
109
88
119
75
128
113
91
136
119
96
87
131
88
69
96
76
102
142
118
109
197
117
80
76
129
69
80
132
154
115
101
107
154
160
137
131
56
68
101
109
143
136
147
56
67
78
72
87
88
113
87
69
118
69
121
76
74
99
152
83
146
116
78
69
117
88
113
131
99
111
74
197
59
80
99
78
78
157
89
98
89
75
154
88
88
80
74
80
104
89
89
104
155
129
69
80
140
115
80
78
76
80
155
132
175
110
80
146
91
80
83
91
52
83
146
109
146
69
155
138
134
123
83
76
80
102
74
76
107
69
117
137
54
80
80
93
80
97
88
107
88
123
104
136
76
128
117
134
95
104
91
80
76
96
74
108
109
136
109
72
128
98
106
80
125
87
162
71
138
74
98
76
120
89
89
59
80
111
134
137
106
99
122
134
52
141
110
87
137
151
76
69
117
69
117
154
89
69
76
135
99
96
80
69
76
140
89
107
107
42
110
128
91
111
131
113
101
97
109
119
131
110
128
169
133
118
101
136
110
96
122
87
107
112
134
119
144
147
100
87
121
80
117
107
96
80
77
117
120
107
102
70
110
96
110
80
72
80
134
99
92
145
80
112
80
147
69
131
79
104
75
119
108
154
106
69
119
101
120
140
76
121
197
140
69
54
107
75
80
111
151
99
72
87
93
87
108
99
69
110
110
78
76
81
165
72
99
128
136
91
72
78
76
99
87
99
80
74
108
72
72
109
87
134
80
80
136
199
113
146
106
80
69
101
76
69
76
112
104
121
121
109
112
128
87
104
80
99
142
99
128
92
72
88
107
76
81
87
74
127
89
122
124
102
123
110
94
128
109
99
52
94
141
78
121
118
118
107
132
76
80
128
69
93
140
93
85
87
119
110
86
146
175
101
64
156
153
67
87
155
110
94
91
131
128
117
156
88
80
93
93
146
87
102
124
87
99
69
119
156
145
128
82
102
134
87
74
67
87
155
80
154
76
175
108
113
119
153
87
74
89
100
78
69
83
94
120
175
72
109
80
151
85
156
78
140
76
117
87
91
126
119
160
76
78
120
107
96
107
69
148
141
78
69
131
89
54
78
69
76
117
88
110
145
80
80
80
109
94
89
79
69
114
101
118
102
80
80
117
98
102
87
99
76
99
175
87
69
87
136
69
131
87
69
131
72
87
119
104
134
137
110
69
69
80
76
119
89
107
72
113
79
119
109
120
104
80
76
117
117
114
137
80
117
102
76
72
88
78
121
79
134
75
124
104
118
110
87
119
163
77
157
76
197
119
87
151
89
88
76
89
106
76
112
147
80
96
106
131
101
69
128
87
106
80
120
80
72
72
106
140
80
87
91
159
80
106
98
78
128
87
85
89
89
69
143
101
99
102
122
122
80
80
80
80
101
100
80
94
114
80
109
82
104
151
83
80
115
88
115
151
80
94
101
119
80
87
115
69
80
119
79
131
80
87
119
69
150
174
141
141
146
87
130
58
76
148
87
131
101
80
113
89
156
156
131
121
119
123
175
140
75
78
89
89
71
87
164
175
109
100
69
100
78
106
80
123
80
110
87
97
54
88
69
107
87
115
113
117
88
69
98
76
72
122
80
78
111
117
56
56
120
106
136
146
94
106
93
57
163
78
69
197
197
80
78
78
136
80
113
99
80
80
83
109
89
175
117
76
76
87
138
96
114
127
80
119
89
120
83
78
183
88
110
87
131
80
80
99
123
78
110
197
87
76
108
78
80
69
124
106
122
175
113
69
120
121
126
107
80
106
88
145
94
121
80
131
106
52
113
136
136
120
69
104
80
115
119
72
76
76
78
142
87
156
125
126
103
80
85
104
72
118
54
69
104
140
137
117
127
87
69
156
80
101
120
80
87
90
76
76
93
118
137
120
129
54
142
69
104
56
113
72
94
123
120
80
109
54
174
126
78
120
106
107
89
110
134
131
69
94
80
78
76
74
136
197
69
141
89
93
94
140
140
131
154
175
126
76
117
120
110
109
110
69
121
93
69
153
88
166
90
88
85
113
103
119
124
74
82
122
102
119
201
163
151
134
69
56
88
113
76
80
69
110
156
146
89
72
154
87
79
107
169
121
174
113
162
154
69
119
102
99
72
93
72
87
107
80
90
134
104
69
130
150
87
101
89
96
110
91
110
102
143
80
137
54
115
78
119
78
101
89
76
131
102
80
163
76
80
69
88
96
154
82
145
117
102
156
105
88
106
69
87
109
117
69
146
166
80
118
99
87
88
69
145
74
114
107
146
131
103
112
77
127
76
83
80
154
146
126
90
111
69
80
72
113
107
80
128
102
127
79
78
69
134
102
101
89
90
140
76
113
71
132
123
106
108
76
72
82
80
142
126
154
93
145
140
93
120
131
56
91
80
87
109
107
87
94
80
69
69
128
78
101
74
115
142
87
80
146
91
121
69
154
124
163
174
69
112
129
156
120
87
104
78
163
94
69
156
56
110
175
119
114
69
85
163
151
117
78
119
131
91
121
104
80
80
145
87
69
104
89
88
87
43
146
69
69
119
60
144
94
88
126
144
122
138
69
69
99
131
78
98
74
80
127
175
96
80
144
119
87
134
117
69
119
79
132
178
119
52
134
146
104
78
93
89
64
109
154
128
119
87
83
76
154
125
131
118
101
104
124
69
89
107
88
123
131
187
76
129
137
136
100
127
136
67
154
112
78
87
151
87
132
107
134
155
57
85
94
155
110
83
91
117
120
96
98
80
154
88
78
134
109
69
78
152
68
104
99
112
69
88
95
109
148
197
128
144
106
87
175
90
145
126
134
112
87
175
119
76
72
96
140
78
98
80
69
78
94
121
110
89
69
76
96
52
132
109
94
95
119
91
80
128
54
123
145
136
82
89
164
110
110
132
144
79
95
89
156
133
80
78
175
105
123
155
80
107
115
88
80
154
78
76
110
91
88
87
78
120
97
69
89
114
134
154
113
104
130
163
52
116
150
155
120
127
87
132
128
52
100
109
120
74
75
76
76
152
80
118
175
128
76
78
129
87
148
127
150
87
90
87
91
99
69
119
185
161
197
136
78
175
98
93
128
78
151
120
197
74
129
119
146
69
140
129
78
125
91
117
94
80
99
80
119
87
80
138
109
87
100
140
187
86
120
88
54
85
93
103
131
80
129
106
124
93
174
76
100
99
104
76
78
117
80
80
127
87
131
92
128
121
93
94
97
101
113
93
138
138
165
114
119
83
76
104
69
80
154
174
69
75
128
189
78
119
100
96
119
148
107
133
80
76
110
78
80
89
93
78
99
91
156
110
134
117
75
78
138
107
151
120
76
69
90
131
106
89
129
73
120
80
69
80
109
56
52
134
109
140
130
80
104
94
128
101
71
83
136
88
105
75
123
71
131
72
94
151
88
87
69
93
94
72
163
127
121
102
118
146
126
121
120
76
111
69
156
115
110
129
131
94
134
174
197
94
80
99
113
80
80
121
88
134
118
114
88
128
112
69
87
80
120
76
154
114
99
96
117
67
69
175
108
88
114
118
117
88
69
69
126
80
76
140
134
69
80
99
113
92
69
134
97
109
119
93
106
127
143
134
99
89
110
101
98
145
176
142
80
131
69
69
106
104
119
135
197
115
99
86
136
138
80
77
124
64
106
127
96
151
89
91
127
103
107
126
117
105
118
117
69
123
136
85
136
87
108
78
133
107
80
129
121
106
128
126
131
128
163
130
175
154
117
94
78
78
107
87
162
88
107
112
144
154
99
121
101
87
120
100
76
137
139
119
119
88
122
80
142
101
69
111
119
106
142
100
101
155
101
87
121
109
133
107
78
71
43
128
121
102
80
142
109
80
113
171
76
109
80
118
99
102
175
68
155
87
110
112
69
107
131
154
96
136
81
87
119
115
174
78
54
123
106
78
90
120
106
141
163
107
69
88
64
157
117
93
87
104
101
142
80
119
107
137
111
54
80
80
87
127
87
95
143
96
117
134
88
128
120
134
115
134
137
142
83
106
101
127
60
134
146
119
123
69
69
76
109
129
152
107
104
107
147
102
107
83
133
155
93
80
119
87
80
149
100
84
175
131
146
78
88
155
106
72
133
122
120
146
91
148
120
113
115
100
121
87
138
93
115
78
121
129
80
145
79
175
80
129
85
88
69
140
78
69
143
175
162
143
100
136
104
88
197
154
140
125
199
112
104
118
119
153
97
154
69
74
121
93
138
130
89
110
87
136
83
124
69
93
89
156
76
100
112
187
76
80
76
69
110
123
76
131
154
76
107
106
163
109
107
106
117
76
113
94
78
154
138
112
80
120
93
99
140
119
101
76
115
69
175
115
69
99
76
78
69
80
85
169
110
89
199
117
110
89
154
52
88
87
128
99
93
58
100
89
94
76
80
101
74
134
154
120
107
126
76
69
146
69
120
76
102
127
56
91
78
122
87
94
121
113
87
71
135
93
123
88
175
76
130
106
128
99
94
69
126
69
119
127
100
101
93
116
133
104
105
104
131
78
136
85
136
69
69
94
143
151
97
78
96
134
93
133
136
140
151
119
101
109
108
156
110
69
138
69
64
162
113
90
69
107
110
112
122
185
78
119
121
156
109
66
93
117
151
133
96
120
80
85
147
88
128
52
163
142
121
169
80
160
128
126
131
72
147
80
96
120
93
80
93
69
122
106
80
89
69
111
136
69
109
117
112
119
80
131
96
91
87
113
114
88
134
140
80
78
54
93
76
69
54
143
107
119
94
101
78
80
91
99
148
124
75
100
110
154
104
112
163
91
87
76
94
113
113
69
119
120
109
88
151
106
87
169
148
101
80
137
126
128
119
112
123
175
87
106
87
87
155
199
113
121
84
102
132
128
76
69
145
131
96
147
162
132
122
120
98
148
78
138
76
99
120
155
123
120
78
80
120
63
80
122
74
155
97
89
175
107
76
69
140
112
151
104
76
78
119
67
88
92
129
110
131
102
120
78
101
75
83
106
88
67
201
84
145
88
116
123
102
98
145
71
88
119
69
119
90
69
101
78
96
162
148
95
80
146
106
78
99
120
161
88
78
155
91
94
87
80
120
118
97
83
94
120
156
115
95
111
165
155
92
146
76
80
99
85
100
131
104
154
174
82
87
110
88
107
115
110
117
87
80
87
72
106
117
144
113
110
103
130
87
98
85
54
137
80
72
143
99
94
113
164
96
105
121
124
100
142
69
187
140
99
80
118
128
87
163
124
79
117
76
100
96
69
134
197
91
52
87
121
201
106
93
148
148
118
78
93
74
128
121
128
119
69
137
99
130
99
128
52
87
78
122
134
94
99
104
175
69
159
104
107
69
110
146
107
151
80
145
87
136
124
76
67
90
154
99
137
172
129
114
64
117
83
102
96
96
155
109
106
69
96
140
114
175
98
101
112
76
78
87
78
104
118
120
129
137
98
80
124
43
100
115
175
151
120
145
120
86
99
95
110
104
151
137
175
78
118
110
114
134
80
118
154
181
127
131
69
113
88
119
155
78
146
129
69
145
90
114
74
115
128
137
130
89
99
89
96
104
117
134
115
128
80
175
93
107
106
120
80
117
118
81
80
109
78
90
109
175
103
112
107
76
163
106
154
104
131
126
87
137
120
89
112
106
141
113
89
146
123
114
110
163
69
121
154
104
120
80
80
110
130
80
75
87
125
112
80
87
69
120
88
171
74
121
80
146
119
72
71
72
120
64
106
119
69
69
95
69
76
129
80
117
104
124
134
87
146
69
69
146
84
145
87
94
110
91
130
156
73
89
106
80
104
118
141
126
137
80
90
69
106
106
88
80
80
129
104
107
109
91
117
72
120
146
78
66
69
109
96
128
134
150
115
80
119
52
136
75
90
197
119
111
101
87
87
125
94
109
156
104
155
132
81
129
99
148
72
88
164
134
123
87
119
112
94
135
110
80
78
88
156
134
145
119
187
78
96
79
90
119
88
74
99
90
80
117
80
96
122
103
87
115
99
140
101
87
119
119
87
52
87
78
94
99
148
94
119
99
155
143
134
74
54
126
108
128
104
151
94
80
120
156
98
163
123
113
133
80
110
89
69
136
133
91
122
96
99
119
56
119
175
78
99
94
82
101
98
137
175
80
58
87
69
76
119
130
156
119
99
78
131
57
136
69
80
80
76
114
107
88
112
148
76
104
89
128
85
117
96
67
94
107
110
94
78
142
100
129
115
72
101
154
100
102
119
117
134
117
114
137
115
156
104
71
107
120
163
78
134
112
128
103
131
110
119
98
80
120
93
128
124
87
94
163
144
120
80
110
119
99
95
121
110
128
102
82
106
120
63
94
76
94
96
123
118
80
94
69
129
101
80
116
131
106
78
69
89
91
197
109
115
69
54
131
120
89
87
69
107
70
120
80
116
87
64
142
136
80
118
109
112
69
80
142
138
117
143
106
108
123
89
76
69
69
96
131
104
119
119
87
102
69
89
183
131
120
90
125
69
69
122
94
69
155
175
101
114
133
91
76
132
87
98
69
78
129
114
113
80
80
87
112
119
144
183
107
120
101
197
76
133
72
87
164
162
76
111
109
175
197
96
69
136
107
69
100
165
88
78
145
94
146
91
133
148
89
129
69
80
107
80
107
94
69
160
107
78
72
107
155
154
121
80
154
114
101
106
148
109
175
72
129
87
102
110
107
131
78
69
90
54
93
85
69
100
52
80
80
80
88
140
76
120
106
129
88
84
80
120
155
156
109
95
88
105
140
91
78
140
87
76
78
89
74
80
112
93
99
119
115
102
80
117
87
96
104
137
165
80
78
69
127
72
103
125
96
69
91
107
90
107
88
151
111
88
114
96
80
128
106
175
120
114
137
83
130
107
128
112
90
69
164
85
113
78
106
137
166
117
78
150
149
87
93
89
93
80
185
117
74
141
116
154
111
87
98
69
78
76
140
102
69
116
104
120
80
99
73
96
151
124
87
69
127
88
163
88
119
87
120
119
85
131
119
175
154
115
87
87
99
76
115
143
80
90
76
87
69
109
121
90
96
87
93
99
80
154
137
75
145
69
78
103
69
80
85
110
175
107
58
69
145
80
114
92
122
132
127
133
91
89
87
136
119
154
120
78
69
91
80
89
98
165
107
134
156
95
142
136
128
80
183
106
137
71
88
134
133
118
130
138
118
131
119
80
80
91
128
93
62
134
110
88
99
197
164
165
197
69
163
131
136
174
109
91
145
131
93
93
69
87
155
154
94
109
123
121
197
80
117
88
157
131
132
99
127
91
115
75
93
163
80
120
151
124
163
120
123
120
78
87
131
115
131
131
134
118
69
106
109
137
97
80
87
87
109
137
132
128
154
116
82
111
54
132
89
122
120
87
103
107
128
80
80
126
94
163
87
78
80
146
80
119
115
80
117
129
91
100
113
112
134
67
154
87
123
76
87
133
89
106
103
150
91
100
155
156
84
85
76
119
130
151
175
80
132
96
114
117
128
72
88
110
146
101
87
119
185
110
142
127
106
156
91
127
91
69
113
69
115
116
130
118
128
80
104
143
113
113
76
113
93
159
93
107
126
69
164
69
128
113
80
138
78
69
155
140
118
69
87
169
137
123
88
103
87
74
87
87
140
93
69
96
78
132
94
103
96
87
76
131
69
100
154
76
80
172
113
89
80
63
89
88
174
120
87
89
74
96
151
96
175
197
69
78
140
115
110
99
72
89
149
119
175
102
119
106
144
68
104
78
118
102
148
156
120
69
78
145
119
72
133
140
91
100
88
69
89
90
104
69
96
112
80
78
67
111
88
144
117
107
95
69
175
76
144
110
98
154
107
119
93
80
69
142
142
80
78
114
96
63
100
69
69
119
197
89
78
88
66
99
88
75
122
113
112
69
103
104
100
175
78
119
117
109
76
85
155
118
101
120
109
75
88
137
126
74
95
118
106
80
69
151
84
72
87
96
91
69
85
93
69
156
80
160
124
120
80
121
89
140
119
88
91
174
69
156
87
96
197
80
121
80
123
123
140
96
199
134
113
88
69
156
120
115
128
96
95
105
143
154
121
113
104
80
140
100
104
69
101
107
79
88
72
80
140
78
76
99
88
169
69
78
156
154
119
76
110
112
102
103
80
75
103
69
120
129
120
80
110
112
89
131
72
152
154
136
114
115
175
126
147
91
175
93
95
113
89
159
69
124
83
112
122
113
164
125
131
80
155
43
148
144
155
80
154
160
136
127
88
120
75
112
88
122
79
69
102
156
131
137
102
133
69
124
93
80
82
147
129
110
130
103
99
110
69
54
134
156
87
99
69
76
106
75
148
99
69
100
101
98
151
76
160
93
99
106
119
72
107
80
94
91
119
89
156
87
175
120
110
96
107
76
151
201
80
89
107
139
140
74
128
80
90
110
127
100
87
58
104
79
78
136
91
123
130
197
64
136
80
58
76
88
106
71
120
118
107
72
109
141
80
119
120
88
92
108
100
120
83
113
109
111
106
80
111
80
80
99
91
109
107
69
134
80
127
97
79
80
69
183
76
90
152
137
130
78
119
78
78
104
163
120
78
74
104
134
110
78
146
120
87
119
87
119
79
93
137
117
88
201
92
87
107
89
114
109
56
76
72
106
83
119
148
175
175
121
76
69
136
134
87
144
106
114
128
111
78
79
134
112
107
113
52
94
119
115
81
80
76
111
120
78
76
128
128
104
94
104
109
107
88
132
131
72
94
187
155
123
87
140
87
115
123
156
88
120
122
137
107
78
94
138
137
102
154
113
137
139
92
155
128
152
113
85
121
154
99
80
127
97
120
104
146
126
119
92
117
152
155
119
76
101
76
136
123
150
80
156
105
80
109
97
76
120
78
117
78
54
72
104
134
82
107
75
147
80
164
76
143
117
158
116
115
136
80
99
106
107
80
102
87
87
150
128
72
123
69
93
87
110
94
80
80
181
114
107
87
112
87
78
131
119
96
156
108
87
106
109
115
117
74
118
93
120
78
139
135
175
163
119
119
156
80
85
78
89
140
87
109
110
134
106
104
111
110
112
119
76
87
140
94
97
69
56
119
100
109
69
134
140
82
78
154
175
107
140
89
76
175
118
104
69
76
123
78
111
118
69
76
120
118
124
76
96
136
81
80
155
96
76
128
101
89
80
104
154
119
99
137
80
80
69
89
136
100
117
106
93
87
104
95
102
95
110
163
88
109
69
113
87
59
156
112
151
126
143
76
76
94
102
69
121
107
80
72
201
87
155
80
83
80
132
80
120
154
134
119
99
69
90
69
94
109
130
87
80
93
80
96
112
87
56
72
151
131
117
174
121
100
145
108
128
148
130
80
69
107
134
83
163
69
118
163
87
128
101
151
102
106
119
128
93
133
102
78
107
74
87
134
85
156
87
112
106
88
79
153
126
109
80
119
125
80
106
100
121
80
136
155
87
95
129
98
87
98
98
109
117
94
91
89
156
76
109
112
107
151
154
144
107
43
80
57
199
107
134
144
78
136
89
107
72
107
110
118
154
78
69
127
75
107
107
91
156
52
101
88
69
102
76
128
90
140
119
100
80
99
109
110
88
99
175
130
69
146
69
80
113
80
96
69
59
120
172
105
166
133
151
137
123
78
88
104
107
136
94
78
95
60
106
120
129
111
87
89
102
134
110
109
109
74
88
87
69
136
99
151
69
125
156
131
175
87
147
89
154
175
156
110
175
104
205
110
69
149
120
69
87
96
104
154
175
96
54
134
89
197
88
164
127
78
104
105
90
97
127
121
119
112
76
115
69
74
143
89
80
78
154
69
79
127
120
151
127
88
100
175
80
80
117
124
88
76
120
102
101
121
72
131
80
128
123
107
80
77
104
119
102
99
174
119
151
143
83
78
110
109
115
109
109
120
80
96
78
119
101
147
127
80
83
97
56
109
111
175
67
107
76
133
82
118
64
104
76
127
127
80
76
175
85
106
120
73
101
69
93
80
85
106
119
111
78
109
82
128
104
119
120
103
115
94
104
156
104
96
128
78
96
118
91
137
43
80
118
154
103
101
125
109
119
68
78
107
99
88
115
91
96
94
69
76
138
113
201
54
115
80
62
96
109
175
147
113
80
76
197
132
175
119
93
109
147
74
80
96
94
121
107
112
152
106
78
100
151
88
88
57
52
127
148
87
89
125
154
76
83
87
87
115
111
113
113
80
76
72
120
114
127
71
93
102
156
140
150
119
138
85
69
54
107
80
140
117
89
78
120
139
76
124
80
87
166
155
130
126
93
117
123
87
164
134
120
136
146
131
96
118
131
156
76
158
169
107
175
129
117
89
163
78
144
69
145
154
87
101
101
78
104
87
78
111
102
128
118
109
101
69
80
83
109
76
155
110
72
109
120
110
78
67
94
99
129
110
140
80
96
85
58
109
112
90
121
119
80
111
175
99
115
78
89
103
91
128
155
80
89
95
76
80
87
101
78
101
118
80
154
150
91
119
100
72
69
126
112
80
78
122
140
88
80
78
109
112
130
134
147
110
155
78
109
119
133
125
88
87
129
88
156
111
117
148
104
76
140
102
99
90
69
205
127
128
124
126
96
112
93
141
127
154
175
140
109
80
163
128
54
117
169
125
134
85
113
88
109
78
89
52
111
107
79
145
110
140
83
58
120
94
128
80
112
80
155
72
120
87
110
69
107
71
175
111
118
120
102
127
69
118
78
126
80
149
96
92
93
196
162
69
69
80
154
110
148
83
112
117
106
120
72
76
145
88
132
154
130
96
89
78
102
101
115
69
73
147
132
96
153
120
136
80
104
107
151
122
105
104
125
89
91
72
69
96
118
153
78
89
74
74
87
89
109
107
80
112
154
95
144
80
105
154
88
104
115
76
201
80
136
102
88
155
88
97
122
154
156
131
156
91
43
120
110
149
88
87
138
74
115
121
85
64
119
131
84
80
99
123
145
76
120
146
103
163
86
80
102
146
143
87
110
87
143
119
85
121
106
93
89
96
80
89
143
93
121
78
140
94
131
133
99
78
80
140
87
87
103
127
119
175
82
131
113
100
117
140
107
101
134
72
123
80
113
119
100
119
80
80
52
80
72
110
154
99
87
107
69
154
75
94
136
134
94
110
87
152
80
99
151
161
87
69
54
107
197
140
156
88
104
89
113
87
197
146
69
72
133
76
93
120
100
134
106
111
80
154
107
199
119
109
116
154
71
109
109
119
69
123
89
197
95
107
134
151
80
99
88
100
69
87
174
94
97
80
134
136
165
131
80
52
52
80
80
69
128
144
87
151
148
109
107
110
160
142
93
154
95
112
78
146
129
154
147
83
143
70
80
164
80
98
87
151
112
103
87
147
102
107
80
138
88
109
88
109
85
175
80
140
80
175
128
69
151
157
74
66
175
113
118
148
86
89
109
100
86
128
134
117
80
76
126
171
107
69
76
67
76
143
85
82
106
111
96
107
165
100
94
95
85
87
76
125
107
112
80
80
136
82
106
69
107
78
95
69
123
182
95
43
107
129
88
88
145
113
80
80
118
78
137
109
120
150
164
126
113
107
69
76
80
136
80
74
109
131
87
80
80
76
104
119
74
107
84
87
136
80
101
64
98
87
114
69
69
69
156
69
114
107
112
78
110
175
121
126
80
76
120
87
91
76
110
76
146
72
79
69
104
175
59
69
80
87
163
89
103
76
76
93
107
87
128
78
134
107
78
137
150
116
104
119
80
107
181
102
73
151
94
91
80
94
43
101
139
80
175
101
145
146
131
129
74
154
91
156
79
104
133
102
104
79
137
80
80
106
103
112
76
117
100
163
119
109
126
151
106
140
120
131
117
101
69
83
134
111
110
101
99
80
102
126
156
107
144
82
88
88
80
80
107
95
103
80
104
113
120
92
89
121
96
74
131
128
91
88
87
90
166
124
113
141
83
88
96
109
111
119
104
127
106
54
69
87
120
76
78
101
89
78
76
156
130
128
140
80
59
109
99
138
142
88
76
85
197
80
118
167
119
76
78
126
80
80
121
69
132
111
134
154
76
96
91
98
80
175
69
78
80
69
106
60
110
154
114
91
99
91
115
109
81
94
157
87
111
87
104
117
126
76
96
107
121
122
87
104
148
127
113
99
156
78
145
104
118
80
134
100
106
88
80
122
106
129
113
72
154
80
74
133
110
111
101
99
126
107
137
121
87
106
169
87
86
120
66
82
145
120
106
76
59
109
124
107
78
80
87
154
72
100
119
69
106
112
87
172
149
97
76
99
109
80
99
101
69
108
106
142
128
151
95
164
78
81
127
87
80
72
120
119
107
101
88
109
69
148
197
69
140
76
100
78
113
112
87
112
121
90
89
72
155
152
80
99
72
175
120
80
69
69
74
157
134
104
119
80
80
115
197
74
69
151
132
74
102
134
80
120
76
103
106
80
74
110
75
90
80
99
199
93
85
128
79
147
152
80
197
120
110
140
115
119
128
80
120
80
87
52
121
130
120
96
127
79
144
174
136
110
131
74
154
79
72
102
120
132
132
69
107
129
82
87
120
106
115
114
112
104
128
175
143
67
129
78
128
164
99
118
129
199
56
88
80
80
69
113
87
140
120
74
125
117
87
81
125
138
155
160
122
123
122
69
104
155
95
128
138
144
129
87
175
143
114
151
109
119
123
164
103
119
121
134
131
80
69
68
69
80
78
132
148
69
119
69
124
80
155
175
148
118
101
80
74
120
76
163
76
69
89
96
117
87
88
76
111
145
104
100
112
114
111
113
90
118
64
110
96
80
113
78
146
143
101
144
111
78
106
120
54
74
157
64
107
100
121
122
87
106
106
102
69
93
80
93
78
100
119
114
91
127
100
119
140
122
126
154
94
75
91
119
80
88
80
114
107
72
69
150
183
110
164
98
76
128
129
112
104
117
119
72
100
134
69
128
104
166
76
128
175
110
113
96
195
151
120
80
76
80
116
132
128
136
72
94
101
128
121
113
137
164
106
145
136
109
121
87
80
80
132
80
96
156
151
80
69
154
54
127
87
113
120
100
118
95
95
69
113
80
89
78
80
165
94
183
108
69
122
160
87
112
100
101
109
125
113
58
78
175
80
148
132
138
88
80
101
143
147
88
118
138
146
155
121
128
80
70
69
69
88
195
89
131
78
76
157
132
106
126
121
80
80
121
148
156
121
87
80
80
80
96
80
69
74
175
136
112
87
109
100
66
175
69
72
136
156
99
76
197
76
110
175
113
80
74
144
80
101
181
122
76
151
95
151
175
106
119
197
132
80
155
115
114
80
69
89
136
80
83
175
106
113
121
131
88
80
80
120
101
78
109
69
72
121
164
79
146
76
76
119
154
69
109
134
117
111
103
124
52
116
69
120
74
76
120
197
80
69
130
127
80
80
110
111
56
94
69
107
54
104
95
109
99
134
72
88
63
69
107
138
80
134
119
128
163
90
99
197
125
76
54
109
91
115
151
175
106
102
89
87
156
131
80
115
69
119
90
76
130
152
151
78
110
80
76
126
122
136
103
109
87
80
87
140
94
154
94
146
88
127
120
115
144
128
90
104
71
89
107
98
117
139
109
80
94
104
80
119
148
87
101
166
87
128
100
121
156
113
66
99
134
148
87
128
94
87
155
108
101
99
119
89
118
165
160
163
175
101
69
127
89
80
117
106
106
120
123
112
122
111
80
129
75
80
80
118
54
88
88
129
78
110
78
87
80
89
131
79
69
131
69
117
101
74
119
135
123
80
120
80
115
69
56
99
128
124
136
80
156
69
128
100
164
119
87
83
123
156
149
71
93
89
101
145
80
80
120
76
122
104
175
69
104
87
152
119
104
107
139
99
76
92
117
123
134
118
80
69
88
80
69
100
110
137
74
76
103
111
80
82
87
80
95
124
93
112
78
134
76
69
163
110
156
78
117
78
104
94
154
76
101
80
80
112
128
117
88
102
119
69
109
103
99
69
58
78
69
88
151
140
113
102
107
89
99
88
80
156
99
115
119
76
96
78
93
109
187
140
154
103
145
80
80
118
80
113
119
156
88
104
120
112
120
110
98
93
145
119
149
99
131
125
77
72
100
175
74
69
89
87
145
56
128
101
115
89
134
129
85
67
143
93
78
106
80
80
80
64
78
54
80
87
120
134
93
72
69
89
109
128
96
80
76
159
146
83
137
109
201
68
85
72
120
113
175
110
80
131
128
106
106
117
72
80
98
104
78
121
118
83
118
127
96
155
106
87
109
162
133
164
106
101
118
98
80
94
122
66
80
121
151
69
129
149
88
109
74
125
103
88
97
89
106
136
99
120
80
117
87
129
87
136
80
67
78
77
112
100
120
111
120
99
66
107
109
118
76
104
96
107
56
120
120
163
110
175
107
69
127
76
80
76
88
69
119
88
118
80
113
87
133
175
134
87
87
114
95
142
139
101
69
130
175
101
152
69
113
80
90
154
81
69
111
80
72
94
119
131
56
87
87
96
99
155
129
155
116
69
78
128
109
80
89
110
99
157
99
78
154
119
136
120
134
104
87
56
80
69
76
69
99
91
155
76
69
126
130
69
125
89
131
78
140
121
110
120
94
69
113
93
99
101
120
96
131
131
138
78
88
88
136
102
154
132
99
153
80
69
175
87
80
93
104
69
56
117
118
101
87
119
99
144
78
139
122
154
67
156
80
80
80
103
126
165
66
136
80
101
119
93
131
76
146
87
91
87
80
131
119
142
98
125
140
137
97
97
100
80
154
80
107
76
106
89
141
145
117
125
80
76
125
121
119
133
95
87
80
91
105
87
80
76
156
109
104
80
76
123
149
155
125
99
80
119
94
99
110
91
143
88
95
87
128
85
76
127
118
146
150
131
133
90
67
89
102
80
69
52
129
123
101
146
151
175
172
127
151
56
96
131
118
104
80
175
110
110
116
132
106
43
119
144
78
101
80
131
88
125
80
69
130
140
134
80
119
154
150
107
112
107
127
114
124
89
92
119
83
88
80
91
131
101
95
80
148
104
89
57
99
154
88
154
164
69
69
91
128
76
96
113
144
80
74
138
80
99
175
89
66
119
69
93
78
111
69
121
71
121
103
120
107
118
69
175
127
110
99
110
98
80
76
80
115
72
164
185
119
115
142
74
121
87
102
56
142
120
154
175
147
78
133
144
100
136
131
121
187
128
113
136
69
71
106
139
110
119
85
80
78
147
93
105
103
69
175
88
99
90
148
80
72
78
69
76
82
80
125
111
93
119
119
80
151
76
121
69
80
147
133
99
107
154
72
78
155
90
121
109
114
100
125
104
102
201
80
76
71
113
119
107
69
89
140
69
76
175
134
131
91
175
96
109
72
103
80
128
107
89
89
129
175
59
145
119
149
119
80
107
120
134
99
67
126
72
78
113
197
197
146
115
109
107
80
103
89
99
110
76
88
120
87
127
117
91
122
80
143
110
148
89
80
59
86
121
97
112
105
80
134
127
107
123
131
80
87
89
91
107
64
78
120
80
118
154
120
80
80
69
80
112
78
132
69
91
80
131
109
162
197
80
121
103
109
101
155
91
128
112
111
126
76
63
138
94
52
72
115
69
94
54
163
89
123
106
80
89
125
111
104
119
85
80
78
185
92
112
104
131
78
136
69
76
119
139
101
89
147
93
103
111
72
174
87
136
134
136
79
74
80
69
80
72
128
107
106
80
121
145
88
140
119
136
128
131
175
163
112
133
130
148
80
131
101
109
80
80
163
104
69
107
80
175
115
175
90
102
69
175
161
87
78
91
89
87
144
96
75
80
104
80
72
99
197
91
72
128
85
119
156
143
74
154
91
99
80
87
69
145
105
78
89
76
155
114
117
145
126
112
82
72
102
120
156
120
87
110
94
143
98
87
155
119
114
74
103
78
103
127
146
151
113
88
80
109
91
99
133
143
89
109
76
122
113
69
80
94
85
80
128
137
110
54
80
121
80
110
90
101
72
74
109
104
104
119
106
113
113
148
121
132
135
96
80
144
146
117
80
69
69
156
94
131
154
129
93
69
156
76
88
124
107
80
99
72
110
109
96
87
156
80
96
175
109
110
93
69
157
93
175
107
119
175
104
87
117
119
80
69
113
103
155
121
109
154
140
69
66
139
131
112
80
128
154
74
160
125
134
78
120
142
80
136
93
106
128
90
119
99
155
113
112
179
106
136
141
110
80
80
120
128
76
109
89
96
74
73
113
78
151
76
120
93
107
114
108
102
76
80
114
87
69
99
96
163
96
74
81
69
131
146
92
120
69
73
96
145
76
103
94
144
105
143
175
127
154
121
87
108
141
175
106
103
154
129
136
107
54
197
74
199
87
93
112
66
69
123
146
76
88
175
80
80
137
64
78
52
136
76
69
99
121
119
78
78
120
87
96
94
98
78
106
92
113
87
72
144
75
95
87
97
104
95
80
129
117
69
141
94
136
106
148
175
76
78
82
105
123
69
119
72
111
102
80
142
100
87
156
69
107
72
72
130
80
69
107
80
96
80
76
95
80
109
72
88
142
126
89
89
118
131
133
89
120
119
151
123
150
111
80
69
133
76
140
72
89
96
88
89
128
132
69
95
76
112
69
138
119
99
69
155
107
95
106
80
154
154
121
119
87
140
143
99
109
128
103
146
69
128
96
89
120
150
66
80
145
76
123
78
120
78
127
88
165
82
125
80
80
52
78
69
126
166
109
69
175
156
110
87
137
137
130
80
144
122
69
111
94
93
72
112
96
87
80
144
145
69
147
128
74
134
74
103
91
145
107
96
119
90
111
69
87
62
131
100
94
148
111
111
117
69
78
89
113
94
119
133
93
87
94
175
110
136
72
69
80
119
117
164
109
99
77
78
109
118
171
175
69
122
101
135
156
131
94
80
80
110
80
69
135
119
119
128
136
69
151
104
69
154
87
119
107
54
123
156
154
100
83
118
89
74
106
128
123
117
80
120
184
110
154
69
102
94
94
130
101
69
91
78
163
119
64
80
127
118
126
111
122
80
97
69
79
131
80
128
121
175
76
154
78
165
140
136
125
87
131
154
110
80
101
69
136
90
125
163
132
78
124
107
99
109
85
146
155
115
112
69
132
133
134
69
69
80
110
140
163
117
136
109
120
99
104
107
159
80
137
197
104
93
175
109
118
80
76
163
94
88
137
113
118
102
76
119
140
114
67
113
96
104
67
155
93
175
126
130
132
100
124
78
154
91
87
93
121
136
78
154
69
87
118
52
112
120
158
69
93
80
69
69
117
91
121
99
76
99
80
95
156
128
104
94
69
120
117
118
88
128
75
56
80
83
87
109
86
96
89
166
94
102
175
72
89
117
154
111
87
174
159
130
88
109
175
78
143
80
80
80
121
104
89
120
126
117
76
69
87
69
91
110
175
128
94
80
156
89
80
181
121
78
96
138
138
107
52
137
119
127
80
113
81
109
67
110
102
99
117
175
119
95
52
175
72
120
113
148
119
156
91
106
99
100
103
87
106
99
109
120
128
115
110
96
64
152
110
135
76
99
121
92
80
93
109
85
88
79
69
119
89
114
148
115
75
134
69
56
127
165
155
57
56
130
131
93
113
89
175
87
69
110
132
113
112
78
106
87
78
112
121
78
67
80
156
106
104
87
113
117
113
94
104
127
215
78
102
66
78
110
134
101
145
80
104
99
80
81
127
107
197
144
143
119
70
119
78
76
109
75
115
134
121
114
99
121
76
134
76
87
145
126
136
80
69
115
90
76
104
100
80
94
117
91
101
137
72
109
114
78
140
131
89
156
110
113
93
112
100
56
107
128
69
110
127
102
95
148
102
111
155
78
101
69
89
98
133
106
107
128
88
80
132
97
69
120
117
140
91
99
54
187
154
111
110
102
133
114
144
175
119
80
150
118
112
80
109
82
89
80
78
139
72
76
128
98
78
110
164
99
79
112
78
80
89
99
69
85
78
80
80
89
131
74
112
136
128
69
94
78
94
99
175
112
156
107
99
148
87
93
155
116
122
111
121
137
123
117
113
80
88
128
88
75
126
109
107
175
103
101
80
122
101
147
102
169
69
102
128
121
88
86
94
121
146
140
131
125
78
76
110
127
69
88
119
94
104
119
118
151
80
80
163
119
142
87
167
69
104
131
88
85
145
134
69
76
108
88
122
99
87
125
100
69
164
142
89
69
76
118
96
112
119
99
80
154
128
94
75
123
197
154
131
69
114
119
121
78
87
80
175
142
131
122
122
115
119
112
128
126
120
69
69
80
94
87
76
174
122
80
130
124
131
80
128
142
106
78
119
80
110
121
89
172
69
197
120
137
101
76
128
103
156
134
113
131
80
143
155
164
122
110
83
111
163
99
134
94
80
99
151
103
96
102
128
83
76
110
80
60
112
105
89
102
119
134
69
147
104
129
128
104
156
111
143
89
68
128
122
84
152
80
151
78
132
144
80
93
109
80
94
80
137
91
148
87
120
155
163
122
88
80
129
87
156
145
154
143
151
120
93
124
43
99
119
107
175
115
68
103
157
87
123
71
87
93
103
140
143
140
107
144
76
79
80
99
80
80
103
99
89
115
118
155
175
76
109
88
80
94
88
109
76
89
164
121
92
112
94
104
101
80
101
120
104
78
94
119
99
93
107
78
128
99
85
87
136
74
87
99
52
69
54
101
151
78
120
124
101
69
85
99
118
80
104
128
172
100
134
76
80
101
108
79
89
87
131
111
185
147
112
128
90
89
76
160
103
100
80
94
91
101
66
175
76
78
127
69
164
107
69
120
126
72
107
80
89
109
155
118
58
78
83
63
106
130
69
69
87
101
80
80
88
101
175
93
78
154
93
80
80
87
78
136
112
147
106
87
76
80
100
134
91
87
69
76
121
98
181
69
72
121
87
136
154
120
127
92
146
107
110
115
72
156
87
69
74
137
87
99
87
91
155
80
175
146
56
108
76
78
107
134
69
145
74
96
101
93
88
107
88
117
88
80
134
69
80
163
91
128
118
90
80
87
127
110
69
120
78
104
87
80
98
88
175
56
89
109
106
181
156
114
78
74
89
112
140
87
119
78
127
103
83
89
102
127
99
109
76
127
155
103
113
128
87
142
88
129
99
80
80
72
175
80
110
175
80
74
120
76
142
101
122
160
87
118
87
69
175
80
126
106
95
114
87
121
98
85
99
88
100
69
146
138
136
69
134
162
96
96
96
109
76
178
175
154
76
109
80
154
107
136
131
87
112
131
78
76
72
137
69
69
175
131
69
104
76
127
80
78
131
113
69
119
87
124
134
54
136
85
69
119
118
131
87
106
112
87
80
105
56
80
133
131
80
104
110
136
163
156
80
106
80
87
117
69
78
78
123
76
108
134
99
88
87
172
69
76
113
78
79
107
119
76
71
184
110
106
133
111
86
67
93
106
120
128
69
78
85
107
69
107
78
78
80
80
69
69
82
93
69
69
118
140
74
76
80
82
69
123
99
126
146
56
120
99
88
67
106
113
125
75
78
154
136
120
142
89
136
128
104
76
117
80
95
80
130
110
106
80
76
96
108
156
124
80
76
155
174
110
110
94
69
131
78
80
99
102
118
100
78
123
175
94
80
80
102
154
121
91
89
87
113
183
104
78
136
130
127
69
92
101
112
154
80
150
69
169
128
89
95
119
69
76
80
76
99
56
128
87
76
78
103
144
87
59
121
113
52
89
145
109
94
128
80
76
119
95
95
76
76
109
101
129
72
80
90
69
117
72
99
98
130
110
175
52
78
122
99
128
117
175
148
80
88
140
89
146
104
78
78
95
85
94
64
119
115
87
78
121
101
80
101
98
76
80
107
76
148
104
80
119
128
79
114
96
87
130
78
87
83
76
80
146
79
140
56
155
134
110
147
113
80
87
140
111
101
120
119
76
118
80
125
69
119
107
141
137
80
95
98
154
78
107
94
93
87
96
102
68
69
109
80
69
131
119
155
121
109
100
87
75
138
131
101
80
155
119
93
156
80
119
69
137
104
151
80
43
128
54
69
134
117
95
113
80
76
154
123
154
118
109
99
69
80
154
80
129
123
136
93
135
125
113
100
104
108
89
102
175
110
69
87
69
99
154
89
87
138
117
140
54
80
80
80
110
99
54
80
80
115
78
143
72
107
54
134
104
132
121
130
121
87
131
89
148
91
96
169
87
140
117
87
120
109
120
136
78
69
80
109
99
99
134
43
72
175
76
78
76
76
151
99
135
96
80
72
94
113
122
69
54
91
69
76
197
87
89
99
120
156
127
132
76
115
128
175
80
80
111
119
148
101
134
76
78
175
112
111
143
99
76
78
106
80
58
102
136
79
78
80
129
101
120
89
136
89
112
80
93
140
107
128
161
69
110
127
76
98
78
94
80
69
72
78
80
99
109
119
119
107
109
88
110
143
80
118
100
94
139
69
130
169
93
129
129
69
76
112
88
112
78
140
115
89
156
76
80
97
94
101
117
112
150
147
85
109
72
87
85
80
80
76
119
74
76
104
54
69
119
126
107
112
56
81
82
76
74
131
142
80
43
164
76
120
76
106
101
69
111
110
78
128
109
69
113
76
137
96
94
175
107
87
88
92
111
82
118
78
121
156
87
137
69
128
128
118
132
87
107
197
88
125
139
131
131
108
118
128
104
132
119
94
89
109
81
98
69
80
123
154
76
69
85
64
80
96
110
69
80
127
142
120
112
143
87
109
91
120
85
119
88
80
110
166
87
110
69
96
119
80
113
106
74
114
94
80
154
199
133
122
76
94
87
115
156
77
69
107
89
94
146
110
118
101
80
82
101
119
99
102
73
109
145
114
64
99
146
56
76
69
151
133
78
137
132
69
174
96
106
134
151
104
69
107
151
112
134
69
107
78
117
80
120
155
124
124
121
199
104
109
109
78
128
127
78
81
102
112
98
123
110
94
126
100
80
130
185
69
93
106
110
96
119
87
69
64
94
115
137
132
69
52
147
134
64
136
80
80
132
69
121
93
80
129
145
91
102
88
163
85
107
74
69
69
144
100
87
107
119
102
156
84
113
54
134
78
88
109
60
83
78
80
201
131
91
78
119
87
80
80
76
76
102
78
63
72
107
120
128
136
149
81
76
121
76
76
108
117
87
126
134
80
121
109
175
80
91
87
131
106
120
88
119
110
121
119
102
107
91
175
137
128
160
76
113
87
100
52
113
74
54
78
89
78
78
103
88
112
69
92
56
94
112
78
151
87
69
78
80
113
107
66
86
111
197
131
114
76
140
89
96
107
92
127
146
107
54
89
85
120
175
72
128
96
137
89
119
107
87
112
89
107
83
118
185
96
99
156
64
123
80
138
140
128
154
101
118
94
102
114
126
85
78
87
92
121
69
56
69
99
84
100
107
79
112
183
141
87
87
148
69
84
80
136
136
87
144
147
69
155
100
181
146
94
146
106
80
109
80
88
114
78
132
43
127
69
75
119
69
115
78
112
87
107
78
99
165
115
129
69
116
163
119
110
87
197
149
113
181
123
80
109
122
88
78
78
99
43
78
89
119
109
128
121
96
99
136
113
109
136
72
87
80
115
99
76
109
175
76
139
125
88
201
91
78
110
174
175
113
129
109
80
76
78
59
142
117
72
119
151
115
99
134
107
99
69
102
128
169
91
80
166
175
111
80
69
94
123
117
96
74
129
87
87
147
117
99
110
120
175
93
87
76
110
93
80
80
117
187
124
80
164
117
128
93
80
120
78
80
74
91
151
69
72
80
125
89
155
90
88
69
129
106
91
56
69
120
119
99
121
87
69
127
111
120
88
156
106
117
175
78
69
74
80
81
96
197
88
80
116
104
90
127
69
122
80
76
99
78
90
143
43
72
106
80
121
126
83
104
89
125
80
80
87
124
102
101
121
89
87
91
107
104
69
56
69
140
69
80
73
117
145
117
78
80
88
117
111
109
106
94
107
163
80
69
128
72
146
84
88
119
133
112
78
154
89
177
91
88
112
136
72
104
135
114
120
52
80
69
109
56
80
52
112
120
111
87
111
111
69
66
88
113
109
87
123
123
137
78
104
131
118
147
129
91
116
114
69
107
85
94
88
125
80
133
76
143
119
131
96
87
66
112
87
80
76
117
107
109
129
197
149
80
145
154
146
87
80
122
87
78
69
72
155
87
94
89
91
131
160
94
80
94
80
175
130
76
69
104
141
92
76
143
80
69
66
120
106
134
88
144
154
155
134
91
147
72
80
163
119
96
125
147
118
69
87
69
87
141
120
69
136
120
76
87
177
131
154
119
123
90
109
115
106
104
80
107
131
69
147
96
95
78
92
140
178
112
149
119
115
164
128
99
72
128
83
107
80
110
89
69
92
119
95
121
69
99
80
122
146
154
89
107
99
119
93
123
112
78
74
113
67
112
153
156
117
94
102
157
175
80
109
131
107
131
109
156
128
104
109
109
128
80
151
83
106
76
113
133
187
69
80
158
157
132
105
112
131
88
80
69
96
142
113
109
106
69
154
128
121
54
145
72
137
143
100
136
112
88
72
88
76
66
78
87
87
124
76
102
107
181
107
155
154
128
75
76
140
129
121
100
69
166
174
69
126
120
102
80
90
80
69
119
69
117
117
119
100
144
69
78
91
119
99
131
128
89
147
87
126
106
128
119
76
94
122
80
78
78
69
133
126
106
87
162
111
118
157
151
69
115
104
129
99
156
43
74
119
114
76
111
80
122
143
83
110
90
131
107
94
119
43
107
76
72
156
103
127
87
85
146
87
106
134
54
76
114
76
80
132
140
74
109
89
99
87
134
69
132
76
93
129
69
145
154
87
104
78
95
120
76
80
175
120
120
113
135
69
91
69
99
80
76
104
56
133
114
80
87
130
80
94
136
52
120
131
137
134
80
69
155
99
112
69
85
146
89
122
123
123
78
128
87
124
120
144
131
137
119
119
145
119
74
80
150
52
80
136
152
138
129
164
74
116
131
156
99
140
134
151
87
93
87
136
99
71
82
129
146
107
69
119
96
89
131
99
69
87
133
115
89
78
80
85
54
153
78
80
101
94
100
107
80
112
80
106
175
56
133
117
148
120
80
151
147
119
94
96
80
122
60
127
72
78
80
163
104
136
69
69
130
96
123
115
154
78
110
146
154
131
140
112
76
104
80
89
154
107
100
69
109
89
94
72
78
112
113
88
74
69
95
83
80
87
126
74
102
156
78
69
54
93
106
154
119
151
138
119
95
154
106
99
117
136
137
54
113
154
78
54
153
115
174
136
80
99
119
69
134
78
131
175
122
87
66
149
80
106
146
80
78
131
107
78
148
163
93
151
134
106
99
133
96
94
94
164
104
89
69
104
157
128
104
91
125
98
87
89
173
109
78
128
75
85
124
118
128
123
100
99
80
76
122
83
155
131
111
99
150
106
131
130
113
76
120
78
160
80
78
152
69
119
117
120
78
197
117
156
69
134
121
107
80
141
108
99
83
89
107
154
117
163
116
128
85
93
137
76
91
110
94
87
80
128
104
72
87
120
125
112
124
175
69
134
69
151
98
72
123
87
110
164
111
89
104
80
93
94
128
175
124
147
99
113
111
78
98
121
78
110
99
134
103
127
72
143
80
80
69
87
87
138
69
74
80
154
127
119
94
140
87
104
108
78
89
76
72
80
75
106
93
99
80
106
94
120
88
110
69
102
73
80
78
69
101
95
154
163
119
80
94
117
107
175
128
106
96
94
94
145
119
110
144
93
106
87
58
88
110
183
104
146
112
80
89
104
145
97
69
97
94
124
127
78
54
124
119
92
119
78
119
91
88
69
80
102
102
149
54
117
80
91
117
69
128
92
107
74
87
85
94
107
78
96
120
78
131
102
74
119
104
80
93
109
60
111
91
154
103
124
156
109
107
127
87
104
108
69
69
119
163
91
197
79
78
102
95
87
76
119
88
87
127
80
76
124
87
118
197
109
87
104
89
66
104
121
109
91
156
140
131
76
151
110
117
100
127
133
69
153
109
109
119
120
106
103
80
175
120
152
80
84
80
134
117
120
107
90
99
175
119
149
80
164
69
102
123
112
150
99
112
80
114
74
109
86
89
163
93
74
80
101
80
106
121
131
78
80
80
163
80
136
137
94
119
80
147
109
119
146
119
102
87
80
72
155
112
94
118
104
148
92
107
87
147
78
130
156
134
54
69
82
112
127
80
175
134
131
74
106
85
108
121
147
123
100
88
120
109
111
109
69
148
118
97
136
119
114
94
99
122
80
143
87
156
110
76
119
87
69
134
109
93
89
101
82
89
128
134
119
66
146
118
94
119
129
134
80
121
87
134
97
143
78
115
104
155
87
80
85
124
78
107
75
197
100
120
111
134
115
142
120
88
80
93
109
124
80
138
85
127
89
56
87
75
127
87
99
109
113
119
78
88
85
109
69
103
87
152
69
172
120
122
101
117
103
106
123
99
119
144
148
89
94
87
121
140
136
121
137
117
119
144
152
128
87
117
128
88
172
131
87
94
131
114
109
137
87
98
80
80
125
138
154
80
128
143
69
126
128
175
76
78
102
117
114
76
87
137
79
74
109
143
117
121
87
110
141
119
56
87
145
101
148
125
76
76
98
88
76
128
149
106
89
72
110
78
84
111
94
74
138
72
69
134
76
120
93
98
119
83
107
121
133
140
87
94
122
120
102
100
94
69
109
87
52
115
197
78
78
104
109
156
104
99
69
93
128
119
175
121
69
109
83
91
136
142
101
120
109
144
80
122
88
80
78
124
143
109
137
93
128
156
143
80
120
135
127
101
74
99
139
145
140
91
99
80
114
99
76
116
80
94
134
87
124
80
156
128
54
119
128
91
119
80
140
187
183
52
128
123
107
99
140
80
67
104
111
151
69
107
142
89
117
140
106
109
106
131
134
133
80
164
115
85
120
69
110
117
109
89
147
74
89
56
104
91
118
88
76
74
83
154
89
127
155
143
87
69
72
138
79
69
128
77
80
104
107
112
96
76
107
131
107
152
154
59
154
80
164
156
87
103
72
91
119
115
69
89
80
114
104
80
113
107
43
105
69
85
92
107
80
76
162
163
76
93
69
76
132
102
101
124
128
69
107
136
94
143
69
76
82
110
107
52
163
80
113
99
92
87
133
144
113
121
158
120
87
120
122
88
151
135
113
111
69
142
88
134
197
134
112
69
69
156
87
119
69
114
80
88
111
128
100
99
88
145
80
88
72
119
143
92
68
110
107
103
129
78
183
88
109
102
120
87
69
123
134
94
106
187
78
69
66
115
118
87
96
69
69
113
64
88
78
136
81
54
88
85
80
100
87
121
72
102
122
110
120
110
80
69
80
94
69
120
109
80
89
160
127
94
87
109
99
69
107
175
107
78
72
99
148
126
111
69
132
128
96
72
117
99
131
94
71
102
142
130
79
119
99
85
113
96
139
116
69
125
197
156
122
145
134
95
127
80
94
88
78
133
139
107
129
80
99
91
80
115
144
152
138
78
163
89
104
134
82
117
93
60
151
119
155
76
122
175
115
106
69
88
100
64
104
87
91
143
110
146
110
54
157
110
124
148
144
119
123
111
130
76
112
78
152
120
144
88
100
117
99
80
69
126
74
148
69
96
150
104
127
101
78
104
145
102
72
99
94
106
78
76
155
155
120
127
102
140
175
78
80
76
133
99
99
99
151
110
118
87
76
175
131
101
78
76
120
69
88
76
146
121
117
116
138
154
76
80
76
89
80
110
56
119
140
96
90
119
100
80
107
146
87
76
140
94
80
118
72
94
148
128
92
164
122
80
87
56
69
124
107
175
102
69
134
80
104
124
144
141
115
78
95
120
78
99
85
104
113
117
114
96
120
76
79
175
89
78
96
119
85
119
114
113
107
112
106
119
109
134
170
74
80
76
69
139
87
97
107
134
88
136
160
146
90
106
110
87
154
115
80
107
175
137
155
78
154
76
113
99
94
54
140
96
154
78
87
120
120
165
102
80
197
155
79
128
145
107
98
89
69
113
141
119
80
110
80
80
80
113
121
126
104
102
128
113
95
136
88
136
141
136
87
77
119
89
69
74
197
99
137
78
97
154
112
124
146
112
96
121
96
118
122
155
145
89
131
150
150
117
120
136
74
113
54
131
203
107
199
88
95
56
94
115
128
109
113
94
80
110
112
197
95
88
104
56
136
153
154
87
142
72
72
75
99
104
80
123
136
107
134
137
76
118
118
74
151
154
138
112
113
73
110
136
93
69
153
127
118
76
148
131
128
85
93
83
175
69
80
91
130
80
74
89
116
131
140
156
99
76
118
163
121
131
109
115
121
87
148
87
147
89
69
71
199
120
82
145
128
76
142
117
87
69
89
94
71
80
74
119
154
80
149
131
143
72
127
175
99
145
118
88
89
132
125
175
96
120
175
113
80
89
80
131
154
120
112
104
80
74
121
120
69
131
69
76
100
43
113
154
124
124
140
109
106
96
120
90
80
169
136
68
76
80
109
69
99
119
140
80
156
99
134
94
122
120
87
159
100
77
80
120
72
131
110
76
88
119
80
119
80
125
143
88
74
87
128
78
80
127
113
71
144
76
67
160
134
110
99
155
69
140
80
105
80
112
197
163
136
141
80
74
106
91
106
80
134
114
107
140
120
101
131
93
69
151
73
175
117
87
104
76
118
76
90
126
109
138
80
69
80
95
87
101
76
80
141
132
110
112
121
88
197
80
156
106
185
123
97
175
69
80
109
140
106
76
78
119
80
140
138
91
118
78
149
69
131
113
152
120
87
80
69
80
88
85
119
112
87
76
128
155
69
74
87
175
107
100
91
156
69
72
175
163
78
75
78
121
117
69
134
117
118
118
76
111
120
76
94
66
101
68
107
118
89
92
72
80
110
115
128
119
94
152
87
84
110
145
120
76
127
89
80
133
119
69
54
155
80
142
156
119
76
96
87
76
164
117
137
120
76
80
176
104
78
154
112
69
98
119
113
155
80
80
87
144
78
80
174
80
83
87
87
80
69
99
94
185
119
140
80
80
88
74
79
146
117
101
83
145
134
80
115
66
175
80
109
114
91
64
146
140
111
69
104
113
121
128
136
118
76
176
94
110
113
164
87
96
136
123
78
155
134
80
101
80
113
73
69
137
94
93
88
54
119
110
83
76
88
127
93
87
79
69
71
136
131
88
87
96
112
126
104
156
111
127
134
93
115
69
78
76
183
120
110
197
103
69
131
80
124
99
156
119
73
148
69
69
94
127
96
146
136
75
76
99
76
143
93
136
76
66
80
109
125
89
139
91
79
80
85
119
128
99
99
131
66
107
88
54
106
104
79
121
121
69
94
142
76
140
89
87
82
88
76
119
69
88
54
52
154
104
76
134
128
87
144
157
103
78
85
69
80
162
109
154
148
103
98
119
134
80
113
120
144
140
64
112
121
76
94
107
94
87
80
69
130
80
199
163
143
69
106
104
127
104
197
120
131
80
99
131
74
147
123
175
69
107
96
80
104
154
144
83
102
111
99
120
87
107
87
119
80
110
118
119
54
113
99
101
136
72
126
110
104
76
93
119
79
89
117
80
145
111
140
119
111
148
92
99
106
143
116
115
154
96
110
78
76
140
110
120
117
101
154
76
105
91
101
145
96
76
96
175
80
136
148
87
78
154
107
88
104
78
127
110
74
136
114
87
94
156
69
134
104
87
119
185
80
89
76
104
127
140
175
109
87
133
118
114
164
79
101
156
87
88
52
94
78
80
102
151
82
164
152
144
99
104
122
148
72
80
136
80
76
101
71
79
201
111
120
106
76
90
110
145
76
95
109
107
80
129
92
131
199
136
69
132
76
111
88
154
122
78
87
92
94
80
78
102
131
89
80
76
117
80
131
80
136
80
87
88
94
88
80
78
109
160
93
109
143
159
142
80
155
134
124
183
140
125
78
78
154
107
128
88
88
132
89
89
136
107
100
109
106
80
80
69
131
87
99
114
134
87
92
110
69
99
107
89
74
100
78
78
145
76
69
119
133
69
76
107
106
73
107
114
98
80
91
104
80
96
96
106
119
124
69
119
76
109
78
72
95
98
130
154
128
78
106
132
99
88
146
109
95
94
111
66
110
78
109
126
81
88
80
93
104
100
107
122
111
80
151
110
119
69
100
136
118
105
112
81
117
80
78
87
197
69
117
96
101
153
107
155
119
134
199
99
92
133
98
99
80
134
123
109
95
109
89
120
127
69
127
107
111
131
99
85
154
83
144
149
104
143
98
122
89
79
78
129
136
100
87
107
139
121
83
94
72
128
137
80
78
80
88
90
107
76
80
129
76
93
78
99
74
126
69
75
77
69
138
89
116
128
78
78
137
75
54
74
88
110
80
88
106
117
113
107
69
96
104
78
94
103
94
96
80
91
88
80
88
136
107
87
80
175
107
146
78
99
68
58
104
134
93
128
107
80
119
109
76
130
72
76
99
74
114
80
110
134
99
102
69
136
89
145
145
88
145
114
174
175
72
145
109
126
87
80
54
119
122
87
142
126
94
106
109
128
94
164
112
80
154
113
118
76
133
80
122
120
80
94
93
79
117
140
128
76
95
160
115
69
136
120
80
121
75
69
153
150
69
94
80
155
124
174
110
76
114
83
89
127
67
89
69
80
99
136
54
94
52
142
78
92
107
137
134
94
87
80
82
93
99
76
125
69
120
140
128
119
126
121
131
69
91
134
136
100
109
96
107
107
134
109
78
54
136
107
92
136
183
78
133
92
109
56
119
87
94
151
112
104
80
80
98
101
66
86
155
128
78
84
78
120
137
131
78
72
112
117
69
80
119
99
76
80
89
75
119
114
72
128
80
94
89
120
139
197
117
107
76
87
120
74
80
163
88
128
80
145
89
69
117
136
80
69
87
156
134
103
69
113
153
80
140
69
69
143
131
147
96
76
131
74
80
78
136
108
84
163
54
69
163
92
120
92
76
85
126
148
175
154
146
131
89
76
80
155
109
120
88
93
52
93
80
119
155
131
78
75
155
69
147
103
183
91
107
99
80
93
74
87
107
132
104
80
121
85
91
87
138
128
80
99
69
151
131
175
174
110
106
120
109
128
175
83
89
117
147
101
100
146
117
81
78
120
80
96
76
163
138
107
140
87
94
85
118
136
131
110
128
76
111
110
126
96
106
87
118
117
109
106
125
155
106
87
127
154
99
87
78
128
85
152
128
163
96
125
112
162
96
89
152
119
117
69
87
121
107
113
120
137
94
197
89
146
52
97
131
78
102
112
80
88
69
80
90
165
110
119
76
104
78
112
102
100
101
119
109
69
122
100
135
120
113
146
78
106
117
155
52
164
130
90
129
119
134
126
133
80
80
80
120
134
151
137
127
112
154
99
121
78
88
101
69
107
69
119
76
118
88
80
113
80
118
127
74
80
113
121
92
75
103
154
88
97
76
142
123
148
96
109
91
80
107
69
104
109
113
80
112
124
78
181
115
79
78
104
72
197
133
89
119
72
74
68
80
126
80
104
80
137
118
120
100
156
54
154
69
69
52
85
87
66
159
69
96
139
72
134
147
80
89
94
80
104
68
83
69
89
106
94
99
109
83
107
99
95
80
87
87
134
80
137
69
80
107
106
69
78
80
99
109
107
87
80
69
151
110
89
94
107
93
127
98
69
164
107
80
126
119
119
140
80
76
80
128
95
89
138
122
69
197
99
147
120
93
104
140
197
59
140
156
88
78
72
112
82
119
91
120
72
78
119
80
80
151
94
88
85
110
107
80
119
134
116
136
102
89
78
66
110
175
120
93
121
72
78
97
87
137
155
99
78
151
68
110
140
98
107
130
114
109
137
115
100
89
120
149
136
110
88
90
57
117
111
69
82
131
109
79
95
115
102
132
106
80
96
109
78
118
147
111
78
154
113
80
76
128
136
80
113
104
123
76
138
96
94
104
100
100
83
128
69
69
146
146
166
106
121
140
80
94
125
133
69
85
109
104
112
78
85
119
175
100
117
134
116
137
69
99
164
98
120
80
80
89
120
79
80
52
80
69
85
76
80
80
99
88
76
108
63
80
120
132
69
110
102
93
99
69
77
102
162
76
100
136
129
102
115
118
145
154
69
76
80
131
78
107
83
102
77
131
80
80
90
157
99
120
113
99
111
76
72
94
89
100
94
80
74
88
101
78
120
175
102
121
99
104
136
69
171
90
148
80
128
129
99
73
87
107
151
81
87
107
129
69
145
143
89
112
94
197
156
102
80
142
109
134
69
156
89
98
76
90
80
100
69
145
88
156
52
156
75
99
76
119
80
151
175
88
145
82
155
125
93
117
63
125
93
181
69
96
117
80
69
118
87
138
140
117
88
69
76
102
118
112
80
74
141
101
112
92
74
145
102
140
111
160
106
134
117
80
126
109
143
109
134
81
76
119
143
136
87
99
93
120
95
119
121
120
99
69
101
163
101
131
154
136
140
120
97
142
113
87
102
88
151
121
120
66
154
120
78
87
162
92
99
88
133
99
64
136
112
74
151
87
131
120
112
165
72
97
90
140
117
106
80
73
110
109
128
119
128
116
123
105
107
117
84
104
78
164
76
96
85
109
67
69
121
126
74
80
69
87
130
148
74
96
164
78
99
69
126
69
118
147
119
87
76
120
131
143
89
86
183
87
76
128
117
116
110
87
128
127
112
115
143
140
146
146
140
125
147
112
69
117
137
76
136
112
111
102
94
89
96
131
109
134
87
135
134
108
185
118
120
133
104
104
72
80
89
80
134
126
110
126
134
109
119
127
106
122
154
78
115
98
121
129
110
80
94
104
109
128
112
148
78
76
78
112
119
91
102
185
133
115
87
78
117
129
136
134
80
112
119
101
143
121
80
69
109
156
69
78
92
122
136
98
69
110
128
93
117
106
185
93
118
80
126
69
120
80
106
155
72
89
117
113
108
103
88
119
88
183
143
113
110
146
109
118
131
69
115
76
106
104
155
119
111
69
80
130
151
107
100
122
91
155
102
102
99
102
87
119
119
94
134
104
69
76
134
99
131
74
127
144
119
120
120
172
80
119
74
80
96
128
75
80
87
111
78
128
134
113
140
69
125
114
69
78
181
99
103
87
119
82
78
104
76
166
99
116
107
109
175
119
101
69
107
138
92
107
128
143
69
120
132
87
147
93
93
119
99
112
69
76
95
102
114
143
96
99
80
106
113
119
119
145
146
164
74
88
123
102
104
136
122
145
94
130
72
78
151
138
115
91
103
76
72
93
88
78
87
80
120
69
110
119
151
121
76
69
156
100
69
175
197
112
121
119
101
109
69
197
69
78
119
131
76
114
80
136
80
110
120
143
130
175
101
109
99
156
107
175
117
69
120
156
106
137
128
95
80
87
69
110
134
146
175
133
80
122
78
164
128
94
80
110
79
69
78
91
120
111
71
117
136
76
78
133
76
43
100
117
147
69
99
132
94
69
127
119
107
69
94
109
76
124
113
125
137
101
104
87
174
117
131
104
80
163
52
78
119
76
88
109
87
87
87
175
87
156
76
197
107
163
80
88
80
80
124
140
72
151
107
87
87
148
80
120
119
117
143
144
80
107
146
176
80
105
89
78
156
96
90
181
148
93
134
145
86
79
147
54
103
136
89
146
69
146
136
99
127
93
145
175
133
90
100
98
78
72
69
128
78
134
76
94
138
87
79
134
80
69
148
106
122
114
154
165
142
95
80
136
118
147
131
96
76
175
87
110
117
120
113
121
123
111
126
119
76
134
103
69
100
80
120
80
151
80
76
93
97
88
80
148
87
114
118
119
183
87
119
102
88
111
151
80
91
126
149
175
69
124
83
96
141
140
87
100
86
175
130
58
91
128
96
120
85
139
69
133
100
125
109
131
83
87
120
109
56
128
94
128
120
121
119
119
152
95
118
69
74
80
175
139
90
145
113
119
131
145
89
155
78
146
83
110
107
80
52
96
129
175
120
88
89
71
141
98
89
73
144
101
143
175
151
80
87
80
87
120
106
152
85
94
72
119
87
131
129
95
137
80
102
128
80
148
100
148
121
91
80
71
76
79
127
100
69
120
80
119
140
126
106
111
175
127
174
80
156
136
109
80
69
88
138
109
93
160
98
128
110
100
69
107
69
124
136
69
68
151
175
110
69
106
95
87
110
56
137
54
145
109
88
109
75
127
89
78
87
100
155
101
106
147
76
156
197
90
72
69
166
76
69
80
109
110
119
103
111
121
117
142
106
116
120
107
94
124
80
122
80
77
146
137
99
80
94
113
69
121
93
129
99
145
175
136
78
144
119
104
123
101
99
134
83
95
96
136
96
131
80
107
155
142
69
121
97
128
136
146
69
134
88
89
74
140
94
118
87
89
92
134
111
76
172
156
87
120
120
78
80
147
82
110
107
118
131
87
91
134
137
119
162
92
110
99
72
89
129
80
121
115
101
69
69
107
80
74
87
151
76
129
80
87
127
114
76
76
72
74
100
185
98
80
124
115
82
89
78
129
78
112
136
134
83
69
155
104
100
87
136
128
107
120
101
74
197
94
96
144
125
102
80
87
154
95
145
69
109
78
87
162
128
87
69
154
129
165
128
89
76
115
115
88
80
156
96
74
100
114
127
91
103
142
87
119
87
145
80
80
155
134
140
103
111
114
109
146
89
118
52
152
76
80
80
125
83
80
90
112
131
80
120
74
54
76
154
69
117
137
69
111
72
69
117
87
102
102
140
93
69
99
106
121
69
69
78
109
67
80
101
154
69
111
199
69
69
78
67
121
94
69
175
154
114
78
133
112
140
114
140
99
90
109
101
131
143
155
87
175
94
96
181
88
175
103
132
80
89
91
69
113
82
119
140
125
94
102
128
130
110
163
93
80
69
69
117
80
111
85
120
110
126
121
126
87
134
134
93
89
116
125
80
109
94
80
176
101
111
119
104
80
107
76
72
120
99
109
78
80
146
79
69
144
154
159
74
89
118
121
92
94
129
104
197
152
87
80
69
69
128
80
106
109
111
131
106
69
99
76
52
151
117
80
100
85
120
154
112
127
69
93
83
119
58
85
79
80
52
119
89
113
104
151
89
119
120
102
80
140
106
128
136
80
143
78
85
89
88
95
94
123
78
79
94
76
76
140
69
75
154
125
89
140
90
87
88
137
89
69
119
80
54
114
175
76
56
134
69
88
120
131
95
102
99
120
87
115
109
80
128
72
120
80
78
152
106
76
102
175
92
78
117
160
78
120
132
89
160
88
89
156
78
71
80
96
134
152
99
163
107
156
106
135
175
80
76
93
163
85
197
76
109
113
93
155
99
102
124
99
164
119
112
80
69
137
87
112
109
67
94
154
75
149
64
69
80
165
80
76
150
104
80
96
155
76
136
78
197
118
80
94
125
87
122
69
112
175
87
130
111
160
115
122
117
76
106
89
99
72
109
88
94
120
76
131
120
146
134
134
102
107
114
80
106
145
94
107
134
126
152
88
76
59
175
64
121
130
142
109
87
107
119
127
78
120
91
107
134
107
104
127
95
142
128
69
80
108
87
89
101
80
93
152
110
136
120
80
136
80
83
149
76
125
82
164
85
139
100
121
80
149
120
110
72
76
110
112
113
87
103
88
128
130
138
146
119
133
102
85
155
165
89
85
117
54
91
88
72
126
87
78
80
133
131
87
69
69
101
144
79
78
79
127
80
87
108
69
87
87
99
103
128
107
80
106
121
160
113
187
131
69
88
122
80
101
80
106
111
91
89
87
106
110
106
78
88
101
88
87
136
134
154
78
152
162
80
90
80
127
110
69
145
121
155
131
71
110
126
87
99
117
117
120
99
147
76
163
133
96
76
78
110
117
101
69
99
134
97
113
104
156
88
120
175
99
69
96
165
140
76
94
120
128
87
54
143
76
121
107
80
92
161
80
80
80
85
100
131
54
88
120
83
89
104
69
122
121
87
127
154
113
143
197
69
74
80
75
110
151
94
80
136
156
119
102
106
87
143
121
108
69
94
137
93
91
99
78
68
112
117
151
175
109
174
162
80
137
80
88
69
103
121
83
128
145
87
88
80
121
80
108
122
87
136
111
122
177
132
115
128
94
129
80
106
132
117
115
54
110
69
80
107
185
123
124
119
80
83
150
76
109
80
95
144
111
82
87
69
134
137
80
76
89
137
87
95
126
131
89
119
115
118
107
94
58
92
89
113
88
101
69
91
85
154
110
157
89
76
183
52
113
120
102
104
142
121
87
121
43
87
169
151
88
80
118
101
107
69
103
120
69
76
107
69
131
175
88
140
120
122
103
123
130
109
120
106
120
122
52
94
87
107
111
67
120
78
80
94
149
99
114
108
110
175
76
80
76
99
137
151
154
144
54
69
156
69
95
100
122
76
134
126
104
133
98
115
69
76
80
69
91
80
101
69
78
87
142
144
72
157
144
106
119
125
99
76
94
122
131
147
80
88
78
69
113
107
95
82
140
54
80
111
128
93
131
80
119
175
102
69
122
120
164
79
102
87
111
74
117
136
102
78
121
147
80
78
132
109
140
125
96
107
113
69
76
95
80
134
89
154
69
146
104
112
87
104
102
98
87
157
104
145
131
131
101
104
69
78
114
95
96
102
109
69
98
89
95
94
93
83
103
103
126
106
107
101
80
76
101
164
104
104
130
96
110
113
88
111
136
137
117
123
80
69
134
71
152
69
69
169
119
100
175
136
69
85
136
152
78
93
154
102
69
138
74
129
76
69
146
69
127
105
69
87
107
107
171
106
98
151
197
126
142
117
121
90
76
119
69
112
112
127
81
96
134
137
76
137
69
76
100
119
145
74
110
106
80
69
76
137
76
69
98
124
149
76
119
99
87
128
131
78
76
78
121
141
107
128
60
124
80
80
69
74
78
87
78
111
126
145
76
106
96
76
134
104
94
78
96
102
88
69
80
119
154
104
119
106
110
106
72
76
142
69
131
134
69
127
79
102
103
78
112
80
69
163
124
90
126
67
80
69
128
134
87
109
135
87
101
114
69
136
97
73
87
87
91
80
133
72
78
69
137
69
80
156
71
80
153
120
113
80
120
80
80
116
183
80
87
157
105
78
175
175
88
197
80
114
112
111
96
133
69
99
87
82
94
143
119
145
115
108
114
140
163
128
99
119
138
119
82
185
69
119
144
101
101
80
106
67
113
96
80
59
69
128
102
129
123
88
78
104
69
72
140
147
76
113
87
78
87
131
66
80
102
145
60
128
95
98
157
183
119
113
54
76
124
113
104
143
134
120
134
82
131
115
107
76
102
54
87
107
80
106
146
110
155
91
78
72
87
163
101
43
164
78
76
80
101
80
114
80
107
76
85
103
132
174
140
113
110
76
121
88
134
109
91
80
119
122
87
69
134
96
111
151
107
123
80
79
131
87
156
91
142
185
117
76
114
144
101
134
175
175
201
76
136
87
156
54
128
79
121
118
132
109
90
80
72
150
119
156
73
87
127
87
122
69
134
80
102
66
120
117
120
126
98
151
80
87
163
110
112
66
52
76
131
120
80
80
87
52
87
128
78
106
113
137
80
134
151
94
87
80
146
125
126
78
66
181
125
87
66
101
128
103
80
69
120
102
99
145
93
125
150
131
110
80
134
76
144
94
134
80
154
119
118
163
72
80
102
125
80
106
91
69
104
153
133
113
115
118
104
85
117
128
87
113
107
203
126
103
130
80
106
160
85
80
134
88
101
87
134
96
54
90
121
88
78
92
134
139
113
85
91
163
119
119
76
87
118
145
145
80
99
124
120
175
150
96
95
131
134
102
132
104
123
110
119
134
146
93
93
86
98
91
95
103
93
94
106
131
112
120
110
69
76
120
87
87
79
109
131
143
147
72
100
88
76
98
80
117
100
89
126
156
107
76
69
118
109
185
87
131
149
88
76
112
110
103
151
69
59
102
78
80
115
87
87
87
201
94
72
143
116
99
78
87
80
94
159
137
110
91
56
123
106
95
119
116
136
119
80
76
78
78
56
120
88
119
118
140
89
149
103
139
106
95
78
110
89
54
119
127
99
72
69
140
88
122
75
106
94
121
120
114
69
102
133
80
69
94
103
107
118
163
119
92
76
104
106
127
69
121
80
80
80
129
133
76
91
119
120
92
175
154
88
113
106
143
87
107
78
128
108
126
99
119
76
154
88
97
149
134
88
144
117
76
163
142
146
79
78
145
152
148
127
152
121
106
119
130
54
89
91
116
78
78
72
83
107
104
118
94
104
89
121
106
119
69
85
96
69
131
110
119
99
140
64
76
91
85
99
69
111
96
107
76
92
122
121
80
79
108
75
114
107
120
69
107
77
126
117
96
93
125
154
72
107
101
148
109
80
121
101
106
156
197
69
143
124
132
104
91
175
99
161
197
87
79
91
112
119
95
146
127
144
80
80
76
128
119
122
181
106
117
142
104
128
123
151
80
69
69
117
69
87
136
90
76
94
136
134
78
137
112
104
119
151
89
197
69
80
121
137
78
87
72
131
177
147
76
69
134
73
117
88
110
87
117
119
128
69
156
80
175
117
155
110
52
101
140
88
101
112
76
155
121
130
126
87
117
91
123
98
136
89
92
113
123
74
130
120
90
110
80
110
110
43
89
54
88
69
78
163
111
100
137
107
127
101
80
115
107
103
101
89
149
174
159
69
89
186
137
146
175
72
101
111
80
106
128
92
136
69
136
72
93
140
145
74
107
134
109
69
83
121
110
87
120
98
57
87
101
90
76
72
140
75
85
82
128
181
101
80
155
87
113
119
88
82
83
111
136
197
54
106
94
76
76
79
67
116
69
134
99
74
99
107
116
102
114
74
89
104
122
80
91
175
154
103
101
145
187
178
125
85
103
116
120
76
106
123
119
80
107
76
117
88
136
156
79
133
151
134
106
107
87
120
80
120
143
121
107
102
76
130
115
92
145
71
88
143
107
132
140
96
69
80
80
85
151
164
80
80
150
116
112
114
119
80
69
144
104
99
145
109
154
72
85
103
140
138
128
96
67
104
76
98
101
132
93
175
72
175
120
80
118
100
99
83
83
102
56
136
106
106
99
130
111
87
138
94
134
76
78
134
104
69
175
80
163
80
116
102
119
101
119
129
117
69
96
163
73
146
93
78
66
143
104
117
138
80
119
108
94
133
106
163
133
117
87
96
175
78
100
107
119
109
71
121
197
52
43
110
113
99
69
128
88
78
147
104
78
87
87
121
129
163
43
140
132
136
87
80
110
80
75
78
102
113
127
83
119
69
105
143
133
78
121
144
115
69
69
88
134
69
69
119
74
160
56
89
149
76
76
129
76
124
66
52
141
69
102
101
117
118
136
139
155
52
110
110
111
79
99
94
94
101
128
76
80
114
119
140
118
83
87
131
52
103
83
134
175
78
175
120
83
151
88
80
76
154
74
67
67
110
54
114
87
80
117
113
69
105
137
145
112
74
136
106
197
56
74
69
54
117
87
143
69
175
81
104
101
120
89
102
125
69
102
69
87
120
118
83
110
121
113
146
76
123
96
78
69
164
80
78
87
119
197
143
154
132
128
133
78
58
153
76
120
123
95
91
175
87
78
80
122
123
110
94
128
107
155
139
76
117
88
133
99
118
129
104
103
80
108
52
69
69
137
140
102
156
121
88
80
93
112
110
69
107
155
80
146
43
104
80
80
69
125
87
151
116
87
80
124
159
106
117
69
85
76
132
112
136
110
80
76
135
112
136
155
66
110
76
153
102
147
137
79
102
76
102
119
99
80
136
155
128
78
85
87
88
43
80
110
117
69
94
175
123
94
76
78
87
132
175
87
80
85
80
98
130
123
98
156
104
152
78
86
96
87
89
69
69
184
88
76
79
131
80
110
121
80
80
80
101
175
76
76
89
87
79
69
120
124
80
118
109
96
98
131
137
110
71
109
117
86
125
69
134
107
69
69
52
106
151
87
87
144
126
116
119
91
88
174
175
146
69
107
128
114
90
89
99
134
112
147
119
119
121
78
117
119
141
89
163
87
112
104
175
87
76
132
110
119
111
88
69
79
119
96
78
121
99
69
69
73
137
108
93
102
76
127
156
69
99
107
85
138
109
123
83
72
99
199
76
149
122
120
128
88
106
175
124
69
120
99
80
83
125
80
69
90
154
136
101
117
80
80
95
104
140
96
103
93
76
76
75
112
67
87
120
87
76
131
78
100
95
121
99
90
69
87
127
78
107
109
69
74
119
131
78
74
164
155
102
132
122
155
58
175
175
80
90
103
69
94
94
113
137
69
83
119
89
60
80
80
100
155
79
163
96
155
94
104
89
94
96
121
119
87
69
62
107
78
93
87
98
120
127
101
87
117
115
106
137
69
104
96
76
93
139
120
109
80
119
69
122
113
134
104
88
98
80
80
87
106
160
76
94
119
154
130
142
155
113
134
97
127
127
96
103
123
106
100
57
119
123
117
114
119
104
96
90
76
131
128
87
117
99
93
120
94
87
140
94
93
107
80
160
89
87
80
82
127
80
100
94
86
130
110
185
74
78
114
80
165
80
106
89
94
76
120
146
104
111
69
154
147
52
78
69
89
74
93
131
76
174
94
78
89
131
123
76
143
135
110
175
126
71
78
120
112
112
104
78
127
87
72
81
129
175
90
119
155
78
154
76
54
69
197
175
87
117
107
100
163
80
128
80
128
89
107
107
106
89
80
87
63
80
134
76
123
112
107
131
76
101
80
112
160
140
67
134
93
140
100
80
99
106
87
92
119
175
111
89
73
137
87
174
89
69
119
131
69
152
119
95
114
80
137
146
71
76
113
87
80
54
103
69
119
85
74
156
76
125
120
137
80
105
101
112
88
122
91
87
121
137
76
87
113
96
147
72
89
89
80
88
145
109
105
98
125
76
98
159
76
117
121
76
175
131
122
107
120
99
106
128
162
99
103
107
80
76
59
85
112
154
104
100
115
155
69
106
136
128
120
119
127
151
72
101
82
113
169
119
93
90
80
94
80
54
103
155
150
119
126
78
76
87
134
119
145
106
121
146
87
131
80
87
78
78
197
64
119
89
80
76
107
109
99
175
156
104
128
123
88
80
85
80
88
80
102
131
165
163
95
113
130
151
99
69
122
209
79
119
88
89
89
77
136
140
107
107
96
87
156
99
87
93
109
78
102
120
128
139
128
80
162
80
88
154
97
104
86
87
95
120
80
104
94
144
142
126
103
88
119
144
104
106
136
107
112
129
103
112
94
160
76
95
127
128
128
88
117
76
153
164
80
76
175
154
129
120
88
72
162
118
169
94
87
69
118
91
80
74
80
88
134
78
131
119
69
101
102
69
113
99
91
115
54
94
76
111
119
115
119
109
56
136
76
89
112
69
116
69
115
107
194
69
87
123
136
69
155
124
119
80
80
128
115
69
119
88
112
151
175
120
67
117
72
67
69
140
201
155
136
76
87
124
146
127
74
98
120
121
75
98
98
107
140
74
88
155
121
85
209
87
134
152
148
133
102
89
52
112
155
78
87
110
115
89
120
126
154
112
69
72
69
107
142
69
142
92
69
80
93
131
69
72
80
74
114
148
69
138
113
134
163
76
151
120
111
156
127
101
101
56
80
80
80
148
94
87
109
124
99
74
88
78
80
80
150
112
117
134
69
155
72
91
80
76
78
88
72
87
144
58
154
76
107
88
100
101
113
76
69
72
52
127
99
93
78
109
127
120
87
142
145
132
78
108
123
105
120
148
87
87
69
94
109
76
69
69
72
88
175
78
181
76
93
136
80
78
76
69
121
109
78
54
94
69
122
118
87
78
91
79
100
123
102
87
117
135
110
74
131
80
113
106
91
87
154
121
113
119
110
146
78
80
199
80
69
118
128
126
127
80
110
117
93
103
119
69
87
109
119
78
88
69
111
107
93
119
101
104
131
80
78
117
151
98
143
123
104
199
95
100
104
76
87
104
107
113
72
91
120
137
80
119
78
91
134
99
175
124
154
134
88
128
118
114
80
119
69
83
73
88
87
87
66
80
66
80
87
80
91
118
78
175
124
87
117
137
119
76
69
69
166
128
122
113
99
83
89
131
110
183
89
99
151
80
175
103
122
134
128
80
69
131
79
148
121
87
136
114
78
91
143
76
80
96
147
93
106
91
89
69
112
107
80
154
109
102
80
72
106
136
80
140
110
106
117
154
120
99
134
121
133
78
80
106
119
87
52
91
119
89
130
88
138
131
110
88
107
134
145
146
107
118
119
76
130
128
163
128
134
106
93
71
69
80
110
119
175
111
76
175
96
140
114
94
93
68
109
109
88
127
117
131
106
109
104
91
106
78
136
73
78
87
110
126
80
138
154
94
156
109
130
59
109
119
117
91
87
144
87
87
88
175
101
87
163
121
145
73
76
112
134
99
104
136
84
113
93
89
54
54
104
76
107
87
72
131
87
106
83
87
140
134
99
69
78
98
104
112
109
89
149
175
98
111
106
140
155
175
119
76
76
127
95
69
143
110
76
78
129
69
136
83
125
69
175
107
140
175
120
54
104
112
96
114
91
82
120
117
109
120
87
119
78
107
155
43
175
85
151
106
104
81
80
80
89
78
138
110
109
87
155
120
100
104
80
68
112
119
145
80
132
136
145
69
112
80
201
78
69
80
80
88
99
132
87
88
131
131
76
87
99
88
117
87
99
145
121
92
136
135
113
87
97
120
104
140
96
91
76
104
107
69
120
121
119
63
80
92
134
112
88
72
110
78
88
78
91
107
80
76
78
72
80
93
80
128
74
76
115
109
107
109
175
175
113
94
69
104
69
69
93
156
87
131
102
71
87
119
120
147
94
80
102
106
80
136
154
183
120
107
106
113
123
106
128
80
96
88
134
148
69
59
94
80
100
164
80
94
90
143
52
109
120
101
110
69
78
148
76
89
102
143
106
110
97
119
137
74
93
80
92
78
94
136
106
88
131
87
93
98
128
74
80
175
74
131
152
52
101
119
110
68
80
120
76
110
122
69
80
121
107
100
107
110
151
69
127
90
152
111
109
157
69
128
120
115
103
52
174
89
87
80
95
80
96
135
161
175
104
88
120
126
78
117
74
69
78
101
117
119
96
140
146
107
99
69
107
197
136
69
93
69
76
147
128
138
109
126
110
154
87
152
80
107
69
136
119
95
67
43
80
87
80
87
87
80
132
80
91
80
85
89
104
130
104
174
120
63
134
154
69
88
140
80
103
117
139
134
175
143
126
145
107
131
71
95
121
143
72
127
69
80
52
69
119
88
87
56
97
103
105
110
93
154
120
112
81
76
109
143
175
91
123
106
123
74
134
138
87
175
114
91
134
96
119
137
133
95
119
142
109
80
78
145
80
89
181
109
76
69
93
80
134
128
117
148
80
69
80
134
69
52
197
103
80
106
117
90
107
80
69
156
74
174
99
140
148
80
69
112
89
96
87
118
106
72
94
87
88
78
87
136
87
129
111
109
72
121
124
134
91
169
98
120
87
99
72
87
157
131
122
171
131
78
133
104
128
80
74
78
54
144
131
89
103
175
121
128
109
113
107
100
69
132
78
137
92
99
163
152
94
94
69
80
88
110
80
131
102
87
64
76
115
128
120
136
80
112
104
74
134
64
109
76
119
115
67
118
106
151
175
106
131
156
154
72
100
80
74
145
79
125
69
199
139
104
155
131
87
88
111
131
99
104
134
107
96
104
94
76
80
80
80
176
117
124
175
119
78
94
154
107
136
117
85
199
88
175
74
146
80
157
124
125
120
111
76
76
69
89
151
93
72
75
115
78
52
121
110
80
71
88
67
93
69
125
165
112
72
91
93
74
134
80
155
86
128
136
69
69
109
136
137
136
104
78
128
117
120
108
93
120
119
100
114
136
119
80
111
76
98
129
96
69
78
123
69
140
151
69
160
119
197
94
108
80
80
87
129
154
69
105
72
121
54
80
88
119
122
109
115
69
175
115
109
89
99
120
120
102
119
119
80
124
113
78
87
121
59
110
119
107
91
101
54
128
78
101
75
80
137
87
120
88
69
79
87
118
106
69
136
137
141
134
136
87
89
69
154
78
181
131
183
123
80
69
78
95
54
69
102
80
132
99
104
161
102
137
76
78
52
112
119
76
131
112
74
128
82
80
85
156
80
116
131
118
52
119
115
96
76
128
137
175
80
101
78
149
94
117
52
69
133
122
87
143
128
119
113
80
197
132
163
78
69
78
133
72
134
125
126
94
80
98
141
87
106
128
91
112
68
121
106
114
104
120
99
110
109
104
156
143
157
58
99
95
87
77
149
93
66
107
145
117
87
76
94
136
52
58
122
155
88
74
69
69
80
131
88
59
131
120
99
106
80
80
87
115
63
58
113
88
109
172
112
102
104
93
80
112
87
131
78
116
104
120
91
76
107
120
164
107
144
78
100
102
74
99
138
117
69
102
99
80
91
69
111
134
69
131
147
80
87
87
72
76
87
134
80
96
127
87
89
78
80
131
151
129
80
154
69
113
101
133
122
66
102
123
118
154
110
78
69
52
99
117
80
78
145
106
54
76
102
106
69
175
93
163
110
108
138
115
110
128
110
87
106
154
162
80
78
89
99
91
91
118
110
131
137
81
43
87
72
128
69
80
119
136
113
102
121
134
87
80
72
91
76
107
151
94
103
110
132
151
100
94
197
69
87
175
104
104
93
87
118
94
156
96
94
113
96
96
101
95
76
80
154
155
129
89
110
134
163
69
117
80
77
80
143
69
91
115
111
136
175
80
107
119
107
94
87
76
96
94
145
101
101
99
106
126
148
93
165
119
110
69
80
87
128
134
120
101
69
80
137
108
78
69
146
112
175
80
155
119
76
140
128
119
143
150
81
106
69
123
104
87
80
129
155
111
129
124
137
94
104
90
105
126
69
119
69
121
69
122
133
91
80
80
117
80
104
87
60
115
64
77
117
138
114
93
131
128
100
117
98
99
120
140
80
88
80
129
113
89
80
80
131
109
78
136
128
131
119
110
69
102
175
133
136
126
157
124
80
108
175
78
103
139
119
123
131
80
87
99
74
175
69
117
148
99
120
88
90
80
121
132
147
138
94
80
80
77
144
112
117
110
119
99
54
73
124
83
117
155
145
125
96
69
87
76
113
101
126
100
156
199
127
106
104
80
80
91
155
83
133
105
163
80
156
118
94
120
80
101
175
107
56
107
76
78
80
146
81
93
76
121
122
140
110
136
120
117
106
131
120
111
126
100
110
104
89
129
113
99
94
126
69
127
113
127
175
118
106
99
104
107
69
120
140
117
80
78
86
133
100
43
96
94
118
128
134
151
157
127
91
131
78
87
96
76
79
93
80
133
88
52
119
154
113
134
94
64
104
95
102
79
85
146
148
80
80
75
80
172
100
80
129
101
151
111
106
112
89
154
76
112
87
97
104
115
156
100
64
114
124
175
134
143
80
126
80
52
101
172
113
72
128
94
120
104
175
72
80
87
109
80
80
148
69
101
107
43
63
69
80
140
137
69
80
80
56
43
78
110
132
78
90
119
88
151
100
138
101
120
69
129
80
101
88
136
137
96
175
56
101
103
144
156
80
100
69
147
121
96
78
117
80
120
103
89
193
72
174
99
154
88
116
107
127
122
72
130
93
69
69
109
101
197
113
117
80
140
76
116
87
69
107
87
124
80
76
87
90
140
87
87
121
127
129
66
120
88
69
138
119
114
87
99
109
197
69
106
93
80
119
78
127
151
91
80
89
78
106
120
72
107
129
104
137
80
93
88
127
145
69
138
90
87
109
107
88
80
193
101
119
178
123
155
128
94
101
87
76
76
146
162
91
94
123
153
123
117
113
94
69
91
120
123
119
134
120
54
73
75
121
175
101
199
93
78
102
83
95
94
113
52
43
107
80
107
72
146
93
71
112
129
113
118
80
88
76
91
131
80
75
111
78
101
107
147
93
52
80
80
130
174
69
80
131
118
95
78
107
69
101
118
69
131
134
69
102
76
118
120
109
80
76
128
96
80
113
102
113
147
71
87
96
119
107
78
78
78
157
80
87
96
78
69
78
106
80
93
89
164
72
69
73
82
99
128
93
67
90
119
78
87
143
136
136
78
117
89
69
92
117
110
136
78
100
80
121
69
112
154
137
138
69
113
114
94
104
69
80
119
74
128
76
91
107
157
74
129
107
109
98
163
148
119
90
133
163
80
154
80
113
100
142
146
140
60
124
95
130
94
117
73
76
128
151
69
69
52
118
151
95
98
69
102
71
109
91
117
175
121
146
84
163
134
131
78
107
80
110
76
74
93
158
99
69
81
94
76
76
115
154
143
80
100
128
140
154
113
114
80
80
76
121
95
76
80
154
63
78
124
69
88
80
80
122
104
110
80
117
89
110
120
76
117
52
76
119
58
119
119
117
99
110
127
96
69
99
78
119
83
109
56
119
147
76
131
127
105
107
100
87
69
111
69
119
119
110
100
96
80
72
115
54
96
69
87
155
163
91
113
80
128
100
87
76
78
89
115
116
69
151
80
93
87
91
121
136
131
138
87
107
72
76
101
69
134
69
99
136
110
69
80
131
93
143
121
132
92
79
72
80
136
110
80
93
99
125
134
101
90
117
80
69
78
64
109
120
120
124
88
93
76
175
56
113
134
80
146
106
89
76
80
129
154
104
148
111
116
80
69
118
120
126
87
91
128
78
99
143
89
83
80
95
52
66
144
80
117
119
128
87
134
102
104
136
152
69
89
87
69
123
81
121
101
119
88
95
111
152
118
91
60
90
160
88
136
83
69
89
87
151
94
87
69
74
88
119
69
132
106
99
137
80
102
134
100
115
128
78
88
107
99
94
80
94
103
83
107
98
120
80
140
118
118
78
95
137
111
144
145
76
107
145
175
76
115
130
80
144
175
136
80
69
90
89
151
131
128
175
89
124
107
88
119
69
151
80
99
120
131
133
131
94
130
80
165
98
106
80
89
87
201
120
90
76
80
119
117
109
134
104
110
121
69
154
89
69
140
119
69
100
139
98
87
120
74
99
77
94
101
100
87
74
54
87
117
201
112
88
93
78
67
99
112
128
128
104
73
131
80
80
143
129
199
154
91
78
120
174
127
113
69
80
80
87
154
103
118
197
82
99
119
89
197
94
119
88
129
156
80
67
107
104
99
119
56
128
101
136
74
112
92
122
175
78
128
94
121
80
123
87
154
99
113
99
80
88
69
88
134
80
80
109
78
131
85
96
99
88
80
89
99
80
67
110
119
93
106
128
80
86
197
126
107
75
96
124
119
131
107
128
106
91
76
88
119
128
122
113
129
154
98
134
117
87
54
163
88
151
79
134
128
80
106
69
132
69
130
69
83
102
80
155
56
95
97
120
123
175
78
93
87
101
96
99
124
144
128
140
100
119
140
99
125
115
96
136
145
91
108
88
139
99
69
101
99
88
76
103
99
98
133
54
124
140
120
162
90
142
91
71
175
138
126
140
94
136
87
92
72
80
136
80
91
80
146
134
74
104
121
134
113
88
79
69
175
112
87
78
131
100
95
133
93
96
113
145
89
88
125
88
111
112
134
89
114
116
104
69
151
124
76
80
175
87
81
75
112
175
93
119
85
69
72
131
110
120
110
104
115
88
112
137
78
149
99
120
80
87
117
140
76
87
136
113
115
142
120
123
134
99
121
80
80
109
87
88
155
143
82
142
154
99
90
144
131
76
169
136
129
69
69
151
128
98
112
117
72
77
119
155
91
80
91
52
151
78
136
99
69
95
156
143
89
144
197
107
167
69
113
96
80
120
80
138
67
99
76
74
112
140
120
162
119
112
97
80
80
113
134
155
87
137
101
128
91
54
69
96
92
107
80
146
146
121
119
109
96
185
87
87
94
112
111
174
87
87
197
110
80
89
110
134
121
120
69
138
67
99
160
119
99
109
76
69
140
88
101
119
104
104
108
87
115
80
94
106
78
167
89
54
107
120
114
131
155
128
106
138
80
78
78
137
80
174
74
64
69
137
110
155
106
101
144
120
96
175
143
164
69
67
140
163
114
78
75
87
91
99
88
68
87
114
110
112
110
110
105
131
121
74
69
155
86
128
140
104
102
133
146
91
111
126
52
160
91
56
80
130
107
99
95
110
68
98
116
99
119
88
131
89
140
101
94
56
78
134
152
69
150
79
107
125
100
76
128
146
120
140
96
87
93
117
93
128
76
154
78
110
133
147
69
115
129
85
156
87
88
100
104
80
72
131
127
78
69
145
96
89
107
131
80
102
127
115
137
154
151
100
91
80
114
131
107
80
110
121
143
116
76
87
80
89
123
127
76
121
88
174
131
98
121
104
112
120
80
76
133
124
110
90
151
78
134
106
165
80
80
87
117
78
134
100
78
76
111
115
112
80
124
85
131
120
119
148
157
100
134
153
128
80
100
117
113
78
119
155
157
76
78
175
89
121
104
156
80
76
120
100
69
87
127
76
80
80
80
101
115
129
94
69
93
89
114
69
158
80
87
115
87
122
106
94
117
91
80
134
115
113
104
109
72
109
110
96
136
91
87
80
80
148
80
69
78
109
112
78
89
154
87
87
80
101
154
89
96
76
119
110
197
75
87
151
89
89
52
130
69
134
112
78
69
69
90
78
156
128
96
83
112
69
136
118
99
85
120
197
99
120
161
128
94
119
78
76
94
105
197
175
111
122
80
89
89
80
80
76
94
118
87
166
79
69
73
87
148
128
115
136
69
87
69
121
58
82
115
72
110
109
119
127
112
156
80
164
88
136
80
75
136
118
128
110
121
113
197
175
126
128
148
87
106
88
121
87
72
118
80
87
80
160
110
129
119
134
110
78
69
117
80
76
80
167
91
106
131
124
89
67
101
138
118
85
136
119
103
99
104
93
63
78
80
125
122
80
140
57
80
80
175
109
120
90
131
107
104
69
96
69
58
114
69
89
87
127
187
80
94
120
52
151
113
87
69
106
175
80
104
80
155
76
130
125
99
69
94
52
169
79
74
141
156
154
104
76
69
98
113
69
155
74
80
123
126
76
128
87
140
109
78
106
88
69
128
136
102
80
78
110
117
100
134
69
69
122
113
175
67
119
144
96
121
175
93
74
164
87
87
69
131
119
101
91
78
137
99
201
183
140
118
155
120
69
119
174
89
88
102
125
80
72
80
72
120
151
74
113
151
103
97
175
115
104
87
118
87
96
80
148
107
99
87
76
106
76
104
117
79
121
120
136
78
131
127
76
102
80
149
128
110
99
80
80
104
132
154
117
87
143
80
107
85
126
106
110
110
80
69
80
80
101
120
155
87
145
118
197
166
146
80
100
122
199
99
102
95
131
80
118
112
69
88
151
77
115
149
96
94
136
95
154
78
93
107
69
156
104
127
67
99
121
76
89
104
113
132
74
99
88
69
112
121
133
80
93
98
119
121
80
197
181
99
108
138
146
119
138
87
144
114
79
80
94
69
122
80
89
69
112
145
76
80
122
88
124
157
124
82
76
87
127
69
87
80
178
136
160
129
109
119
106
80
125
106
98
78
109
131
140
83
154
117
54
131
119
96
154
74
144
96
140
118
87
130
119
175
120
107
111
113
80
69
88
175
69
128
154
92
78
174
153
88
90
123
95
60
95
143
107
133
99
76
90
98
72
121
175
87
150
110
99
175
164
113
106
80
69
140
104
69
80
146
156
107
148
128
93
90
80
75
87
128
120
76
89
136
64
119
103
87
175
137
113
69
117
107
80
106
94
121
172
115
183
80
74
107
67
103
104
96
89
131
76
80
120
69
143
121
197
122
76
98
115
136
87
146
99
80
134
80
80
197
92
67
112
66
89
87
80
129
109
104
96
88
78
80
78
136
89
100
119
91
124
87
107
56
94
134
107
106
120
91
101
80
109
106
87
78
120
199
87
118
126
113
130
89
101
130
117
94
96
156
151
146
128
151
134
111
156
154
67
197
107
109
76
87
136
115
155
114
87
104
76
87
127
75
69
78
106
154
120
133
117
87
85
112
87
117
80
72
140
80
89
124
113
148
154
88
76
80
88
174
95
80
88
85
78
78
104
118
168
175
80
83
201
69
156
128
125
74
121
87
110
76
104
80
129
88
140
121
143
89
78
128
80
148
123
52
199
80
120
154
100
80
156
87
113
136
136
87
110
78
78
131
88
88
87
80
106
112
134
122
100
87
131
83
54
113
96
181
121
120
83
127
102
84
63
122
143
102
120
94
136
80
74
76
109
88
124
107
120
78
89
80
104
106
110
100
164
80
80
78
85
163
143
91
88
116
126
142
80
94
74
88
109
156
69
83
121
114
69
121
120
175
119
110
115
80
124
85
156
136
99
118
111
87
137
112
98
107
76
69
104
78
102
80
131
104
127
128
105
76
123
80
118
136
106
107
124
112
79
95
99
125
127
69
175
163
80
132
143
104
119
99
52
95
163
69
88
98
124
153
111
80
76
69
87
136
112
144
120
109
185
164
76
104
78
90
78
120
87
69
94
118
128
104
69
112
123
100
127
102
88
87
175
80
128
156
109
139
76
175
104
154
99
80
160
130
115
69
137
148
78
87
106
128
89
130
78
89
94
80
113
154
109
109
110
106
99
175
82
99
104
80
80
69
63
117
109
128
69
69
87
94
140
69
122
52
113
69
120
148
122
101
110
154
134
114
132
129
119
113
110
80
80
111
80
69
78
72
121
153
83
107
88
109
107
80
145
76
78
76
103
80
156
58
88
73
119
90
175
151
116
124
150
128
88
140
152
100
73
52
95
113
80
80
102
100
163
76
89
69
151
83
87
97
69
78
131
98
96
145
88
134
87
127
129
93
56
99
72
154
119
107
81
110
120
88
121
134
120
128
134
163
69
165
113
80
102
66
92
124
99
120
106
78
98
106
104
89
96
127
95
99
99
89
135
80
68
104
112
89
141
79
93
94
69
69
123
137
113
121
89
122
119
82
144
103
74
128
69
89
122
119
88
127
87
131
174
109
85
112
80
80
108
140
128
99
80
80
120
69
131
110
98
66
175
78
120
102
52
120
96
67
87
127
197
109
66
107
91
128
118
76
120
88
96
113
154
93
119
131
80
54
52
100
154
87
92
99
56
80
112
88
106
69
106
112
103
85
151
80
72
94
134
145
76
143
93
78
142
112
113
154
107
83
96
78
101
113
111
60
174
160
60
69
117
120
83
69
152
71
140
80
119
78
87
90
107
76
175
160
122
128
102
107
75
76
69
129
117
80
87
148
80
120
155
69
155
94
134
129
85
76
175
78
104
80
109
88
69
110
88
87
128
89
87
69
87
87
107
115
112
78
76
109
154
80
89
152
69
129
131
136
52
87
80
115
80
132
89
137
123
114
116
83
85
100
69
80
74
104
80
95
100
67
151
110
80
118
185
104
107
117
78
72
136
87
115
76
103
140
94
118
69
113
83
99
69
92
76
80
120
151
54
80
111
74
94
66
80
109
69
80
109
94
76
119
193
116
69
122
75
160
118
74
90
137
84
107
146
143
87
151
85
87
87
131
107
112
123
112
174
76
100
154
120
87
154
176
115
74
113
107
108
89
143
78
69
83
89
80
69
76
117
163
95
107
119
163
153
85
140
107
194
72
76
93
114
89
58
134
139
94
136
80
142
89
76
201
69
88
127
147
76
128
57
69
126
109
119
155
76
72
121
88
88
72
94
106
77
131
80
89
140
89
110
96
78
112
69
148
96
80
69
142
104
175
199
117
106
138
118
127
153
93
94
209
104
89
93
134
85
80
89
104
146
76
117
87
131
99
106
87
119
133
94
67
156
54
121
80
89
140
136
123
107
104
134
148
94
130
146
91
156
140
80
78
107
85
87
87
85
123
159
117
78
80
136
80
80
104
119
78
154
78
105
99
88
96
96
89
101
80
99
197
107
78
174
127
95
113
106
89
109
120
88
146
112
91
80
91
78
151
137
88
109
151
165
101
80
117
113
106
137
156
137
154
112
96
107
104
54
85
126
143
80
101
88
113
137
134
113
78
106
104
73
111
156
87
118
124
76
117
106
121
121
106
127
93
126
120
74
128
107
80
72
75
107
102
78
148
120
155
145
155
102
138
95
78
136
82
117
102
80
69
43
121
111
88
69
136
113
74
74
120
100
94
128
106
175
114
99
106
87
110
97
78
144
80
87
119
124
161
137
118
80
111
59
87
83
107
197
88
93
99
116
136
175
109
137
88
118
93
78
129
56
136
104
117
92
156
103
133
94
96
80
80
99
99
69
121
93
112
85
69
81
154
96
109
87
69
94
128
69
80
80
107
120
91
133
91
87
140
90
119
69
123
96
91
117
175
59
69
107
151
80
87
144
91
124
128
69
82
147
104
92
120
126
115
112
78
137
119
197
127
128
153
135
98
54
118
99
76
94
107
90
133
93
88
96
134
128
99
152
80
80
99
78
93
89
113
109
95
69
160
107
152
76
164
80
76
106
129
80
80
109
69
93
175
87
76
151
110
117
154
76
122
104
80
126
91
155
156
80
81
112
175
175
136
74
112
100
117
164
78
175
60
114
76
80
120
87
155
130
102
120
80
125
151
149
120
104
128
96
78
126
87
156
69
119
131
148
69
102
131
175
130
137
115
132
151
89
76
148
52
119
112
120
72
89
67
72
112
172
121
109
76
103
76
119
89
88
80
74
154
175
69
119
112
96
175
111
145
143
76
111
110
120
134
66
102
80
128
76
100
134
132
127
140
95
89
112
69
110
69
120
80
167
89
137
144
119
148
87
112
80
107
128
107
100
175
145
99
76
136
127
129
106
115
88
73
140
75
80
94
154
121
76
96
87
69
93
76
72
83
96
106
88
76
100
136
101
113
129
122
88
69
197
86
114
88
104
136
87
106
152
95
88
89
80
120
175
78
109
150
117
119
76
123
110
136
154
87
132
175
155
132
88
125
117
91
154
75
80
125
76
149
80
89
56
76
98
143
89
139
154
115
80
112
80
118
128
139
93
121
80
100
131
121
99
69
74
76
164
121
123
100
107
87
76
127
132
119
104
123
101
99
87
107
80
110
94
128
104
156
138
80
67
117
109
80
100
112
119
128
94
143
76
104
119
93
90
76
93
127
80
80
89
78
69
80
140
128
156
64
54
92
124
106
119
134
149
119
69
80
69
54
136
80
159
128
99
150
154
106
120
80
137
109
69
121
134
146
78
149
104
74
78
117
129
90
157
120
80
93
88
99
107
114
80
164
126
163
175
130
106
111
106
99
72
54
87
155
104
88
175
78
120
88
104
144
95
121
143
80
87
171
109
120
125
154
88
107
125
139
78
80
117
100
69
131
128
94
123
99
94
74
80
183
117
76
91
87
96
100
115
104
153
88
94
98
69
74
89
127
122
90
98
118
136
80
76
120
119
110
80
117
93
140
80
94
107
88
107
112
134
137
99
106
72
151
104
111
72
100
100
118
151
134
96
132
156
111
87
88
148
121
66
101
78
69
80
99
80
89
68
74
78
127
69
112
80
112
113
93
143
186
67
89
104
124
56
95
80
131
147
145
87
154
88
121
133
80
163
87
69
120
128
87
175
87
69
87
134
69
117
128
119
93
88
100
128
68
88
69
93
67
160
123
97
120
161
80
197
110
110
94
69
74
58
87
89
104
94
98
89
56
76
80
197
69
91
69
80
175
72
54
120
78
80
82
121
72
95
80
69
118
101
104
156
89
67
107
78
175
130
102
103
127
131
99
76
156
69
83
80
91
119
101
111
110
128
151
89
126
120
120
76
56
89
89
163
69
76
99
80
98
80
95
111
79
98
106
143
80
80
89
80
143
127
69
120
69
85
76
106
120
77
57
103
95
88
110
148
99
104
87
88
87
119
119
135
78
100
88
78
152
144
93
127
126
119
155
157
150
88
154
80
175
112
90
118
94
106
110
96
113
131
88
151
99
106
54
87
119
120
52
80
99
78
69
126
120
146
160
101
154
137
110
110
95
146
78
76
126
104
111
87
69
78
78
82
88
145
120
110
117
90
164
75
76
94
163
80
175
197
146
104
130
117
131
76
69
80
123
80
107
102
134
121
72
120
119
96
69
175
74
99
118
119
174
107
117
115
101
78
87
76
119
110
100
67
76
69
110
106
115
66
87
78
142
109
80
69
118
99
94
85
94
70
175
92
142
128
89
97
69
80
69
74
69
66
109
89
78
88
141
87
111
96
154
137
69
89
76
175
175
110
69
154
84
111
151
110
132
121
110
160
120
140
154
119
148
112
105
87
103
126
121
84
150
80
110
107
66
112
130
78
131
80
104
99
107
80
107
134
102
93
110
98
100
152
80
76
152
80
161
96
78
126
102
69
128
110
121
145
80
85
109
99
129
78
102
119
104
59
104
87
104
107
116
89
76
110
109
109
87
134
99
69
74
85
137
120
87
80
69
128
119
112
76
76
80
124
197
145
140
69
94
109
117
155
120
100
93
85
79
87
80
123
107
107
88
209
78
131
110
134
146
175
78
98
101
80
164
93
104
90
121
76
107
153
122
56
69
128
76
146
102
96
89
142
106
140
115
69
127
99
155
156
85
121
89
69
99
119
134
78
78
69
164
80
78
109
109
175
80
76
94
43
101
80
99
104
80
83
135
151
122
90
137
126
107
109
94
69
68
175
106
69
123
87
110
94
133
87
104
69
99
112
109
78
164
154
110
104
136
123
89
107
96
64
129
80
175
69
176
99
107
72
120
149
92
123
80
76
72
159
80
134
107
154
107
75
99
89
120
80
80
130
101
102
120
89
91
80
175
91
74
122
128
92
103
111
52
87
134
80
136
138
111
115
107
93
99
80
80
94
80
96
126
197
134
145
154
78
109
91
96
94
131
54
113
69
99
175
52
80
117
121
110
127
89
149
87
123
131
76
80
105
80
114
87
67
154
106
146
88
69
88
69
88
78
104
76
56
119
165
80
78
69
119
102
78
74
88
80
132
80
121
87
107
93
98
72
112
91
154
94
69
127
72
111
80
107
97
78
76
76
155
80
146
69
114
76
151
143
67
109
87
81
80
156
114
183
155
89
87
80
87
94
152
118
99
102
104
87
108
151
72
101
140
78
76
155
94
88
146
76
126
126
109
137
96
117
75
87
117
129
88
80
170
80
118
151
106
100
119
94
80
111
88
89
88
109
88
100
97
151
67
145
117
91
110
113
93
74
107
93
80
72
80
107
175
112
150
156
122
69
93
69
76
143
96
120
197
81
54
107
164
80
116
124
126
136
106
80
63
76
100
96
109
76
69
127
175
102
67
85
117
111
101
175
120
110
80
117
130
149
124
56
128
120
123
144
109
82
126
80
178
145
88
183
69
69
114
121
87
137
69
76
87
117
181
120
87
90
136
69
93
114
130
109
95
151
120
130
90
112
100
87
69
134
76
119
107
99
119
141
56
128
122
104
116
117
109
80
133
99
94
80
109
110
140
81
87
117
174
90
66
145
111
80
99
120
154
110
120
155
87
107
114
69
64
80
99
117
140
90
146
99
87
136
69
80
79
121
93
99
141
110
87
89
154
76
128
143
80
139
87
146
94
119
107
96
116
136
151
106
110
89
119
112
128
128
131
119
87
128
96
125
95
78
128
120
136
128
92
78
96
121
113
113
87
106
109
117
175
100
115
109
85
78
128
87
76
146
110
154
87
136
69
83
84
128
93
112
80
91
136
110
95
106
115
74
151
109
147
133
88
136
87
117
170
91
95
124
112
80
80
69
151
76
69
146
156
145
72
133
128
98
94
96
109
153
93
106
80
79
87
112
101
175
75
102
78
79
104
128
104
87
100
155
107
69
87
121
117
69
125
174
109
94
96
127
103
124
64
120
128
137
164
94
120
117
107
128
156
93
80
145
175
140
119
110
137
78
131
104
118
119
119
79
113
102
157
104
174
107
147
136
92
62
93
80
124
116
118
151
99
120
153
76
118
148
114
88
87
112
120
109
78
78
84
197
131
109
120
106
140
128
154
199
112
66
87
94
87
103
80
177
137
127
94
131
80
96
80
99
151
114
73
87
107
80
64
134
87
100
76
100
100
137
87
67
175
98
102
197
91
43
94
175
74
93
87
119
127
80
94
54
112
76
118
74
87
130
127
99
76
69
97
125
160
94
94
113
121
69
76
78
76
87
69
99
106
110
67
80
76
91
110
106
103
80
107
117
72
92
146
110
95
119
80
98
87
136
145
107
107
134
78
115
76
99
89
98
107
127
93
160
91
69
104
54
92
93
80
78
136
80
95
100
104
69
54
101
159
113
87
120
87
98
98
123
96
146
115
76
128
78
154
93
69
122
56
80
93
93
101
119
147
80
140
69
118
163
143
93
80
139
89
69
92
96
87
87
87
74
110
175
78
155
145
152
77
118
175
69
95
104
104
134
80
76
76
80
108
121
181
87
71
152
80
127
54
119
69
80
119
87
163
110
109
115
99
109
69
80
83
157
107
106
118
136
71
72
123
131
87
155
118
80
155
72
154
80
87
144
110
54
174
80
147
80
118
126
124
119
127
87
112
116
110
101
98
89
80
118
102
69
140
123
80
78
128
110
94
134
107
76
93
76
110
138
76
99
99
74
110
69
80
197
75
119
80
144
113
80
78
78
69
80
62
126
74
125
72
78
78
76
133
80
117
80
80
79
109
69
129
133
69
75
144
87
76
87
151
78
87
99
133
54
126
109
112
131
79
80
94
80
137
151
109
160
112
104
115
160
80
93
69
146
104
116
87
96
90
79
136
112
118
119
69
124
84
147
134
56
43
80
80
87
151
118
140
100
43
69
121
103
100
72
87
56
69
107
76
120
89
93
78
89
64
130
55
80
120
131
113
89
80
148
80
80
83
128
69
121
123
91
104
104
97
80
122
104
134
175
152
119
160
52
82
110
120
58
52
78
141
90
119
69
59
175
120
94
89
115
120
118
132
120
60
134
80
96
108
110
110
80
69
87
80
119
175
120
134
109
103
178
136
185
107
113
96
78
56
123
80
118
87
69
96
134
80
154
105
78
93
130
107
121
78
119
69
94
154
94
175
69
136
163
80
69
69
131
127
69
129
107
172
154
110
208
156
94
96
76
101
87
92
87
148
117
103
175
101
112
69
87
78
69
163
109
115
78
80
78
80
76
89
127
124
119
80
154
119
115
120
136
143
106
93
80
134
120
85
93
101
80
160
80
120
89
78
117
131
69
80
109
94
128
91
88
69
129
128
80
88
79
72
175
101
88
110
78
80
80
134
120
109
80
96
131
78
88
151
99
69
54
156
138
123
104
72
92
175
80
109
69
91
115
102
78
113
107
76
69
80
132
143
83
109
74
78
134
87
69
99
136
121
146
128
131
99
128
105
96
174
104
121
132
109
76
88
126
120
99
93
80
110
156
87
102
154
80
98
140
128
88
154
133
163
87
138
125
109
128
99
119
128
155
69
109
54
102
175
90
90
69
87
110
107
146
120
121
153
142
128
112
121
119
112
100
126
113
88
140
128
109
151
109
119
91
76
90
75
106
141
119
95
89
142
69
159
88
54
94
96
144
119
118
146
76
183
109
107
94
80
80
104
110
130
94
140
82
94
148
92
91
164
109
149
140
155
96
123
98
138
88
99
54
87
80
131
109
134
129
94
175
199
116
93
120
145
125
87
78
104
101
117
164
118
140
110
80
119
99
91
75
113
80
80
154
115
100
183
88
156
96
175
107
67
112
80
78
78
119
118
111
155
138
69
136
120
83
80
117
122
102
95
122
175
118
76
112
99
89
102
144
92
112
123
69
124
110
162
119
80
112
88
120
114
126
90
133
119
74
78
115
69
119
154
99
137
117
129
131
115
88
175
72
54
54
104
80
78
80
175
107
121
142
111
176
89
120
131
80
154
155
143
80
88
109
116
82
131
76
136
136
121
109
130
80
119
78
72
54
148
75
80
80
155
113
69
98
88
94
158
90
76
75
136
96
104
138
69
85
124
80
114
80
90
80
78
118
120
131
88
87
121
131
78
140
134
128
72
56
127
156
120
107
112
83
76
72
87
119
72
87
87
117
94
113
114
141
94
149
117
128
143
69
108
142
90
87
80
134
75
109
113
89
103
120
105
99
85
140
93
69
96
148
175
139
76
131
113
80
87
88
92
80
113
69
96
98
121
127
69
88
80
140
74
87
118
94
69
78
155
89
141
136
80
94
122
112
80
120
74
156
87
175
105
79
119
131
150
101
104
78
156
113
87
113
69
104
106
197
129
87
113
87
107
74
87
80
94
94
151
129
151
119
88
97
87
89
99
126
99
76
78
142
69
80
125
116
100
107
120
90
128
155
80
80
118
107
109
143
80
69
91
69
120
175
74
109
67
87
109
120
82
78
87
128
107
152
137
125
135
107
131
76
112
117
80
117
83
134
101
163
87
143
87
131
104
197
127
106
145
87
131
78
85
89
102
137
127
197
89
85
91
100
100
100
80
121
80
151
128
89
117
131
111
94
102
114
102
76
94
80
102
154
175
74
80
87
117
155
82
112
113
107
136
111
80
154
80
109
129
102
87
97
69
85
69
69
126
69
80
76
87
88
165
137
104
94
88
94
71
78
112
80
112
74
119
101
69
87
119
99
109
125
80
104
131
101
56
87
149
87
67
136
107
175
121
107
78
80
69
110
111
151
102
80
110
118
88
76
107
119
118
109
100
175
107
87
110
82
80
120
76
131
74
134
155
106
78
69
95
134
130
80
102
120
76
133
134
115
106
99
131
88
80
80
87
72
126
98
80
185
43
69
117
80
106
129
148
109
136
83
69
150
108
92
80
87
76
142
119
95
87
69
119
96
119
125
78
197
87
79
72
80
74
72
137
87
156
69
107
115
119
118
104
156
69
106
80
183
152
93
96
155
76
109
104
116
100
156
113
69
145
80
120
100
138
90
130
80
87
119
109
73
59
94
197
84
93
88
121
69
149
110
89
76
93
67
89
109
197
154
88
80
104
140
80
148
87
163
104
134
76
113
133
120
175
87
80
94
76
113
75
137
80
74
94
128
106
118
137
145
87
129
107
122
78
109
80
107
99
83
69
128
110
118
111
160
72
102
69
76
93
146
138
118
113
119
120
80
114
114
89
151
87
163
69
120
119
78
88
119
136
104
69
69
109
89
134
120
133
108
137
106
119
69
120
104
80
144
163
119
78
134
76
69
128
108
80
201
76
142
81
121
80
119
75
123
106
117
89
69
118
76
131
69
163
72
106
80
76
93
87
74
156
94
128
87
117
84
99
66
99
120
92
94
119
121
109
156
103
93
99
69
123
120
124
109
87
109
175
85
109
87
76
105
78
87
91
69
104
93
69
88
146
107
119
121
120
52
87
96
87
124
58
115
120
148
142
129
123
154
99
144
114
86
199
121
118
114
110
76
126
128
80
118
136
120
76
89
69
113
134
80
81
175
143
94
69
145
106
74
90
90
160
96
150
160
69
145
125
99
166
141
78
117
104
145
119
90
119
96
88
121
71
85
80
156
102
106
90
80
118
69
144
89
94
117
69
119
64
87
140
80
80
80
101
111
80
134
152
80
87
76
52
162
114
78
80
97
131
103
114
76
80
111
175
157
66
123
175
119
140
60
90
185
136
119
136
76
120
78
147
112
80
109
76
111
80
96
115
107
89
83
119
100
87
80
102
151
72
128
119
80
111
72
80
126
78
155
80
109
91
95
80
109
154
72
107
87
104
128
148
136
101
80
100
128
109
96
87
99
107
107
137
76
98
69
107
120
78
128
154
69
132
117
100
88
76
82
80
76
145
156
87
197
69
64
69
69
56
88
91
69
80
80
80
76
87
101
140
87
146
156
88
69
134
80
106
134
115
136
69
100
80
120
76
101
124
88
107
109
99
136
104
112
119
174
80
109
143
78
94
112
76
92
80
104
109
128
76
129
127
88
80
163
89
91
80
80
125
120
96
126
99
107
72
80
197
76
69
91
78
107
102
175
78
136
154
80
109
109
93
174
110
107
157
82
87
127
128
109
81
56
59
112
80
110
76
110
144
114
78
127
120
117
93
100
185
169
104
69
137
119
69
78
99
120
117
87
163
94
100
80
87
123
80
107
104
72
185
90
69
72
80
112
140
85
80
120
113
78
97
109
80
93
119
63
110
78
128
167
146
80
175
52
152
119
120
120
129
120
80
118
80
128
106
96
132
87
120
113
88
118
111
72
80
113
130
174
142
69
100
107
104
154
80
102
175
176
109
154
91
80
107
134
134
87
69
69
92
128
94
80
88
112
87
78
87
78
102
123
85
99
80
117
69
154
72
130
87
175
81
69
91
69
136
110
100
80
69
129
128
133
72
72
154
130
94
123
131
112
80
96
72
80
136
144
134
106
94
151
74
88
165
69
110
128
80
107
69
112
94
128
69
134
100
89
76
121
156
128
89
151
80
151
124
99
101
122
108
121
76
142
80
128
146
136
119
102
78
72
80
107
155
85
154
113
143
68
156
69
72
83
69
88
144
166
69
91
121
128
146
142
175
72
104
160
99
129
117
147
69
118
69
85
69
143
76
119
69
101
109
154
68
110
80
76
175
120
128
80
80
78
79
123
104
87
119
78
122
175
131
109
72
120
106
135
154
80
102
134
117
120
104
74
69
175
78
93
109
145
87
160
136
131
69
80
131
106
80
94
80
69
88
89
164
102
87
101
87
89
78
96
128
120
153
183
119
102
145
102
111
78
109
89
89
148
93
57
137
80
137
72
101
111
99
87
89
80
154
154
110
80
151
104
119
58
140
134
43
131
163
107
81
71
78
92
128
132
90
134
102
120
124
87
113
76
175
104
121
197
69
96
112
111
101
69
74
69
156
76
80
69
69
88
121
106
111
87
119
102
91
80
163
117
80
128
136
122
107
88
69
104
88
102
128
87
140
88
119
87
111
88
137
101
156
107
87
112
89
117
75
82
140
99
82
159
163
113
80
120
87
148
175
76
69
107
107
131
134
110
78
120
76
132
154
100
112
87
73
199
89
69
101
78
88
88
104
89
87
66
175
132
72
76
87
80
97
134
164
109
80
145
88
69
121
156
100
149
120
122
80
100
95
117
113
87
119
112
131
149
106
69
109
69
69
71
76
88
69
78
119
101
154
127
80
107
121
123
121
109
72
93
119
120
109
128
120
109
154
109
119
146
91
64
112
101
102
87
165
117
94
119
69
78
102
109
56
107
110
121
117
134
138
90
117
144
80
80
88
126
145
112
80
197
120
80
83
106
104
89
146
96
104
87
119
131
114
128
122
127
99
140
111
102
87
80
118
113
102
85
199
69
120
69
99
152
69
154
80
119
96
154
80
128
69
169
109
136
90
155
91
134
132
114
109
120
104
119
90
119
91
103
54
126
133
121
90
114
112
96
89
87
134
89
111
104
131
87
109
111
155
89
127
152
76
101
88
80
110
106
106
80
83
80
117
124
69
146
52
79
89
124
119
83
111
107
156
106
78
132
96
149
78
89
69
100
80
89
96
78
110
87
160
66
80
142
112
197
90
96
78
76
97
80
137
87
87
117
69
80
187
122
145
114
128
140
175
116
76
153
57
80
117
94
85
102
107
137
102
111
88
76
76
77
101
112
76
102
72
93
93
106
80
75
136
132
99
110
69
154
112
128
123
80
111
119
117
69
109
119
91
197
145
82
128
80
76
109
134
69
93
175
126
119
147
80
69
85
121
134
97
69
86
110
159
92
93
88
142
80
145
90
80
88
78
87
111
67
154
114
110
69
119
175
52
137
80
145
76
124
118
143
91
80
175
111
94
141
69
107
107
114
143
99
119
96
123
87
148
104
156
98
131
109
104
119
80
72
175
175
144
80
109
107
69
118
130
131
102
117
80
114
54
54
128
119
78
67
128
76
163
119
145
131
69
69
154
104
131
119
104
131
109
76
128
94
80
163
78
76
113
115
99
80
87
76
117
69
142
143
76
143
80
121
69
136
111
91
101
79
138
52
120
69
104
146
95
69
177
109
155
113
80
69
140
201
80
149
197
119
122
138
54
91
80
90
94
80
154
78
104
132
80
136
91
109
160
96
115
152
93
109
115
143
145
107
107
87
117
128
121
145
106
52
80
88
80
119
123
99
144
113
69
119
94
102
88
87
102
140
183
95
109
106
69
151
171
117
80
78
107
145
87
107
69
120
74
154
99
174
76
89
54
94
105
146
69
113
126
69
102
100
69
80
88
136
165
116
117
107
78
80
87
172
85
136
107
91
69
109
99
106
119
52
110
99
128
80
76
119
122
112
94
107
120
69
87
89
125
78
80
80
94
109
156
90
123
119
89
87
107
101
78
112
110
109
102
121
110
145
89
114
154
154
163
76
106
156
99
126
197
76
83
162
131
78
123
110
156
117
124
119
74
85
101
82
96
69
144
106
72
140
88
120
89
113
154
110
118
128
91
120
117
87
174
93
127
113
75
105
76
114
149
120
80
112
107
175
187
175
120
80
85
80
101
56
127
109
80
162
110
69
94
99
71
119
112
121
87
134
87
91
113
69
99
72
106
94
87
54
110
107
75
54
80
154
80
110
140
94
115
76
76
52
80
82
78
103
133
94
69
76
83
148
76
119
101
163
71
89
91
87
107
78
160
114
156
121
111
121
91
110
81
134
138
140
119
69
104
99
76
155
181
101
83
140
114
95
100
136
93
104
91
119
85
145
58
96
91
121
88
98
78
154
131
131
90
112
85
122
110
69
78
127
54
102
93
100
98
110
69
134
88
80
72
154
175
169
131
126
80
137
133
112
118
84
106
69
106
114
80
94
115
104
88
152
93
143
69
80
76
111
76
136
90
88
96
104
80
54
91
152
111
78
110
154
80
128
80
91
86
157
76
54
80
76
98
98
136
78
128
85
137
76
122
134
83
94
162
175
69
118
83
113
52
162
69
79
134
78
120
80
88
99
164
112
74
107
69
64
128
120
119
88
114
96
76
76
76
107
69
110
175
113
54
76
97
151
105
117
144
80
87
91
120
100
119
107
120
106
175
76
128
72
56
120
154
87
119
128
147
144
82
99
80
72
140
184
109
197
74
110
117
80
136
116
88
78
124
80
54
76
131
128
131
94
106
111
72
88
136
142
112
175
52
110
114
145
94
140
145
106
118
99
69
121
146
174
89
121
120
164
118
128
91
107
94
106
80
107
100
111
120
87
78
131
117
120
78
197
154
69
110
163
128
96
107
127
85
99
156
137
106
96
66
128
88
80
102
134
104
67
129
80
80
69
107
119
78
99
157
183
91
155
104
129
69
134
80
102
119
106
121
66
153
104
175
110
101
80
142
74
110
69
80
117
138
96
137
87
69
76
146
89
99
106
209
163
175
119
56
80
86
118
128
121
102
95
120
80
109
69
119
124
93
91
110
97
80
82
94
140
134
133
145
112
43
88
88
80
85
106
80
175
78
112
131
69
87
109
120
175
52
80
72
106
136
114
98
76
115
89
104
87
90
80
80
76
76
52
78
128
118
99
151
151
133
163
105
154
102
172
120
114
175
106
99
69
89
67
113
92
80
69
99
69
80
163
87
93
134
137
119
90
102
154
79
140
132
80
124
113
156
89
110
96
137
80
102
78
69
128
69
98
117
94
128
104
80
78
80
113
181
112
128
72
134
144
127
72
52
109
156
126
119
104
140
87
80
150
76
175
104
101
87
79
89
111
78
134
85
129
164
76
90
87
107
80
94
89
143
112
72
90
109
78
148
133
99
136
111
109
120
78
116
145
74
97
78
52
96
80
78
69
69
64
87
80
69
110
134
151
72
87
128
80
80
131
96
128
78
153
134
130
99
130
123
110
135
129
117
104
131
94
76
114
87
114
117
134
156
119
163
87
145
87
128
88
110
140
106
80
139
117
157
108
87
100
80
78
79
88
128
104
130
128
129
103
104
99
69
71
109
120
120
140
107
80
69
111
76
54
80
69
104
71
118
126
120
175
117
129
78
99
52
169
88
78
69
69
124
80
113
80
80
155
129
103
54
93
88
87
95
87
78
78
119
109
101
69
80
110
78
128
155
77
69
156
100
155
56
72
80
132
87
120
125
76
108
113
107
104
106
93
57
110
129
69
69
112
126
143
118
112
52
120
101
104
158
80
127
87
100
80
120
121
93
109
94
197
80
109
69
80
110
164
143
113
75
121
136
56
154
106
80
120
88
101
80
89
133
148
150
80
100
150
76
80
94
80
106
76
100
124
75
136
112
134
136
122
120
125
94
76
76
105
90
74
91
92
109
56
78
106
118
77
59
69
201
69
80
129
91
143
110
69
80
181
99
154
104
76
88
128
127
120
80
148
98
118
143
143
112
117
122
140
90
120
69
156
128
72
92
87
85
112
120
69
91
101
120
82
136
88
126
80
95
90
80
87
128
112
128
122
121
87
144
69
94
155
79
129
125
169
106
69
129
89
78
68
87
80
119
127
109
138
85
94
155
80
119
93
140
110
69
80
94
109
119
118
112
80
119
131
175
88
91
119
113
148
87
164
80
151
72
74
107
156
115
117
163
91
134
131
115
155
104
121
66
67
77
137
142
154
82
74
69
107
157
88
119
89
155
129
197
107
119
87
69
99
76
82
80
80
94
185
88
156
69
107
107
86
80
99
128
129
124
115
151
80
88
131
109
105
88
175
133
110
134
99
107
132
141
106
91
121
136
125
87
88
69
76
136
76
88
109
88
88
110
107
69
131
93
93
87
154
134
87
154
117
147
76
78
89
134
88
134
69
130
66
72
59
78
87
119
76
69
113
89
80
88
125
103
88
101
154
94
93
52
114
106
124
88
164
87
99
111
120
69
69
138
145
122
154
151
120
107
175
78
178
93
74
110
130
140
87
80
158
175
113
137
104
111
140
95
150
81
119
119
151
149
88
126
80
107
156
175
69
109
122
175
69
89
117
80
80
76
113
80
72
120
106
67
74
90
110
107
69
102
117
78
80
99
94
80
72
97
101
76
80
104
77
149
155
82
111
96
110
78
125
117
101
107
127
138
154
99
100
93
69
119
100
143
106
69
136
98
106
107
90
104
147
101
99
74
128
162
102
100
109
131
78
148
139
83
80
134
90
67
88
120
69
169
119
128
126
106
69
175
89
161
80
107
87
143
76
121
107
88
74
95
117
69
80
125
124
107
175
107
78
142
112
69
119
72
110
145
109
76
108
151
54
80
171
85
94
118
93
78
120
133
80
76
69
108
128
69
66
74
78
121
163
103
104
56
69
154
131
80
121
69
89
76
80
80
121
120
125
157
89
58
94
89
140
109
91
107
124
119
158
106
140
88
154
175
143
123
146
78
102
110
101
56
76
119
87
76
121
69
100
78
80
102
106
118
128
94
93
106
119
78
159
92
80
197
80
137
175
93
142
107
76
85
80
109
174
130
137
111
140
119
69
69
131
139
136
115
102
91
89
99
155
101
94
119
69
121
72
128
136
69
76
83
101
166
80
80
127
123
83
133
87
118
80
120
129
107
115
89
128
78
89
80
78
80
119
128
78
119
87
99
96
104
78
136
99
145
209
95
147
112
149
94
78
95
82
122
112
52
128
110
102
87
127
147
116
197
106
107
130
76
100
125
101
110
98
106
71
89
120
104
123
106
119
88
69
118
107
109
88
137
87
133
96
80
89
69
74
107
147
87
80
84
95
119
101
112
94
76
120
89
152
166
121
93
132
69
104
89
90
72
103
113
156
80
76
137
100
80
121
120
93
106
134
69
119
138
87
80
163
91
87
175
106
87
172
77
201
107
118
118
121
107
93
76
121
128
146
78
88
72
91
52
175
85
91
99
125
175
87
100
73
101
88
107
78
104
175
138
74
94
76
160
69
69
115
160
78
76
87
99
110
107
134
131
163
144
96
131
56
73
100
72
111
56
113
123
87
83
101
94
87
119
119
109
99
66
80
80
82
118
111
131
123
107
93
119
115
155
126
145
121
123
175
148
80
104
109
115
112
87
107
89
84
69
143
111
110
161
107
111
122
134
103
76
107
117
119
99
120
136
69
87
43
117
100
151
59
69
131
87
87
174
80
146
115
78
81
117
77
80
158
148
131
133
91
43
54
121
78
87
85
128
93
79
80
146
137
112
104
74
56
80
195
115
74
120
114
149
99
87
87
94
87
69
112
69
195
99
87
110
154
131
128
80
90
127
80
111
175
155
109
80
156
56
87
99
104
69
74
128
138
87
111
107
80
72
109
127
151
85
88
96
80
136
145
104
128
69
94
101
109
122
123
117
104
120
113
115
154
175
187
155
119
69
52
79
69
146
136
106
94
94
96
99
103
151
111
87
115
156
106
93
80
80
91
88
52
134
80
121
120
80
120
80
119
152
112
136
78
80
75
92
76
80
109
103
149
94
120
89
119
197
80
129
121
120
89
101
76
110
154
106
119
177
103
69
112
162
154
133
118
131
78
91
99
82
80
141
80
93
93
69
138
87
106
140
121
117
107
89
80
107
130
175
101
128
78
175
122
109
119
111
117
175
128
95
126
109
69
56
78
159
89
156
133
100
175
129
120
66
78
125
146
110
119
111
96
113
154
107
120
175
151
109
78
87
175
76
87
94
54
56
163
72
67
58
136
131
109
88
127
88
72
94
131
76
109
111
156
87
156
122
101
127
102
110
74
109
78
175
85
69
146
120
87
120
99
128
89
78
72
128
115
90
88
78
107
112
87
87
119
147
132
107
71
80
93
130
76
119
88
102
80
99
175
110
127
187
121
89
88
76
90
155
71
127
83
143
143
120
126
78
89
160
97
86
87
87
152
106
96
91
126
80
67
87
81
89
133
109
175
96
119
121
156
104
100
101
134
140
94
87
104
75
152
142
145
157
111
69
143
69
72
69
101
109
145
128
106
69
118
114
103
136
112
85
89
148
69
94
120
126
175
112
80
143
100
87
78
136
136
87
127
136
78
176
99
98
119
154
120
76
129
104
120
107
76
78
114
117
131
117
76
78
119
80
87
80
145
111
132
120
128
175
89
78
72
69
107
74
130
80
117
93
92
115
122
123
134
127
76
89
106
126
151
87
73
119
80
69
119
106
80
175
140
175
120
138
111
80
107
122
164
80
110
94
96
159
136
100
88
104
107
104
114
156
132
123
111
112
165
119
127
72
156
119
78
115
107
109
93
104
99
69
88
78
71
69
107
113
104
110
80
123
80
145
123
97
140
119
94
122
88
69
80
71
99
98
175
151
66
69
126
128
123
78
87
104
75
76
94
119
93
154
98
93
80
109
88
80
136
80
89
69
148
132
98
100
91
79
87
134
149
155
107
78
110
75
69
69
131
131
112
95
89
142
76
175
113
93
78
157
98
80
109
155
109
116
131
122
119
88
107
145
99
106
131
136
69
125
122
128
80
80
80
99
98
96
185
131
161
140
80
117
69
88
113
80
90
80
120
109
109
145
131
103
159
89
124
118
120
87
138
126
93
143
88
80
87
80
69
119
67
120
174
107
76
85
52
163
148
146
159
80
87
113
128
138
87
156
72
69
78
109
80
133
136
78
80
145
100
110
134
94
122
69
156
72
128
107
106
131
114
91
120
54
156
69
145
112
78
197
128
93
144
121
110
110
83
100
130
134
93
69
114
101
104
67
66
163
87
80
80
199
132
127
107
134
155
98
106
140
98
115
78
104
154
89
59
148
100
126
80
118
94
120
164
119
80
87
94
110
123
130
141
120
101
144
78
121
119
100
142
69
150
99
52
120
80
129
87
143
71
73
181
197
131
73
104
136
82
142
138
147
80
119
69
137
91
107
109
111
122
104
110
78
104
152
87
120
76
91
117
109
128
128
160
121
104
117
80
106
124
127
69
119
80
94
69
80
112
87
132
128
124
75
80
145
110
120
89
63
82
76
76
117
103
89
137
87
80
90
69
117
107
163
69
128
80
122
88
103
87
154
113
120
118
138
72
99
76
128
104
131
112
80
119
110
58
66
175
120
107
104
152
87
94
78
83
69
87
138
112
145
186
96
69
99
80
117
117
136
127
111
136
127
120
142
60
78
94
151
99
106
76
127
118
120
54
101
78
137
138
87
131
113
80
75
163
80
87
199
83
103
56
105
159
69
104
111
146
100
164
98
110
107
120
110
95
76
115
117
175
119
80
120
104
118
128
146
156
87
69
101
89
76
197
87
156
87
80
117
96
87
129
100
100
80
117
119
154
132
115
150
74
197
96
120
110
100
93
91
119
81
145
107
69
69
131
111
136
131
99
154
108
69
118
69
78
156
104
148
89
78
99
80
175
117
135
101
115
144
119
123
115
119
124
89
102
126
101
69
87
69
130
103
101
69
88
128
119
89
80
79
109
69
109
156
119
80
80
78
80
119
106
88
76
175
155
131
109
88
134
143
80
118
79
138
76
120
121
137
76
140
83
107
136
64
151
78
88
146
131
99
69
89
76
107
128
88
163
148
183
140
87
108
171
112
110
128
71
72
98
107
109
76
101
56
96
128
80
93
79
69
109
99
112
123
54
87
66
175
85
88
109
87
88
76
121
67
107
91
119
144
117
101
156
128
80
94
164
123
134
143
157
154
104
120
116
156
82
87
136
175
119
122
69
131
115
76
154
87
120
94
127
79
78
80
107
89
80
76
110
76
120
87
78
80
69
121
93
93
94
128
69
78
131
111
93
143
120
134
141
69
82
110
154
69
69
100
80
69
88
98
144
163
156
118
83
136
127
104
99
120
146
93
142
69
87
160
69
91
156
107
89
88
106
80
114
80
187
152
80
94
175
120
110
120
197
92
78
119
80
94
69
156
76
101
87
175
116
117
128
100
119
131
138
76
78
94
76
94
133
110
76
128
115
113
123
77
87
130
69
69
131
131
80
80
133
88
155
154
99
56
56
106
69
130
122
133
88
107
121
56
108
94
118
99
88
111
76
76
121
121
76
119
145
115
128
113
80
125
99
127
131
54
145
116
87
110
112
93
102
107
134
74
87
175
85
120
131
88
112
128
110
155
99
80
74
109
72
181
120
104
104
199
99
101
156
163
136
140
106
93
87
87
154
143
89
69
121
96
54
128
109
78
139
119
80
110
134
88
199
76
93
101
102
119
183
145
98
123
80
201
67
101
183
76
141
142
69
69
101
99
76
80
56
69
76
80
150
93
80
143
99
111
103
91
143
69
154
99
95
123
114
75
78
175
74
89
119
125
155
113
131
95
140
92
102
78
78
134
118
155
120
119
107
74
98
88
80
80
134
80
137
134
93
82
134
98
104
80
197
106
113
101
154
107
107
128
104
56
162
128
96
82
102
80
87
107
90
91
136
72
96
137
107
102
69
109
142
119
94
99
80
121
96
88
52
140
52
80
43
76
88
87
119
134
156
122
89
101
128
74
78
114
93
80
95
134
78
93
146
93
102
69
127
122
106
69
69
136
87
163
80
117
76
104
87
110
67
80
125
119
98
95
69
69
93
76
78
126
109
154
69
72
76
130
119
136
52
69
131
136
159
107
85
148
113
99
78
107
133
80
83
101
69
112
80
120
80
109
156
152
104
88
99
93
78
151
116
69
76
89
87
201
147
136
143
87
84
112
157
78
117
87
140
99
99
128
80
119
87
154
88
132
140
107
155
100
105
134
102
95
80
112
126
110
80
69
126
88
80
181
89
109
110
107
74
69
164
88
74
69
87
157
117
124
110
96
74
143
127
72
81
96
118
123
138
72
118
155
102
87
147
128
63
130
87
156
99
80
145
153
78
134
106
118
114
52
155
89
94
100
102
112
100
113
87
83
107
98
91
127
197
69
87
120
80
119
103
113
94
90
107
120
52
80
142
93
87
114
126
148
175
175
163
125
80
164
94
117
118
120
128
128
130
109
120
80
113
83
87
100
80
115
146
75
89
110
106
87
76
105
110
115
102
151
119
88
109
56
110
80
74
94
120
139
80
91
133
69
119
120
93
124
95
66
110
69
94
99
72
80
99
88
88
80
107
120
120
71
69
63
197
133
113
165
154
43
104
99
69
89
109
106
89
80
154
134
160
117
157
89
134
175
52
91
90
154
138
80
136
143
69
143
52
62
114
93
87
69
69
108
59
131
127
80
80
76
87
69
110
135
115
113
143
80
136
110
89
164
119
114
82
69
54
175
96
78
87
119
115
78
89
80
96
80
115
121
101
187
72
85
80
80
152
152
101
74
119
160
109
122
80
120
119
125
80
145
72
110
89
110
54
74
87
99
87
88
102
119
140
87
143
101
127
80
117
134
104
114
110
96
137
87
146
154
140
142
117
164
96
145
76
106
52
150
87
115
127
142
165
89
156
175
133
87
120
101
117
134
87
125
102
69
88
76
132
87
78
91
88
104
109
89
102
98
144
145
109
115
155
172
78
106
67
160
107
96
72
111
160
87
52
107
144
110
144
136
107
127
185
80
87
150
69
129
109
78
120
72
89
91
98
76
149
155
107
140
69
80
96
138
97
80
118
88
104
72
158
154
69
154
91
163
43
104
88
112
54
76
100
120
137
96
117
104
69
114
72
88
109
69
94
107
140
99
87
80
80
80
69
64
78
156
65
112
140
94
80
154
131
101
109
120
89
118
147
89
134
154
68
96
76
106
78
72
120
109
175
119
69
138
119
85
80
94
131
106
128
165
95
69
113
109
109
56
69
84
69
69
80
128
59
78
120
89
95
121
112
83
80
69
54
82
106
131
122
140
85
144
69
78
72
54
118
69
175
163
113
99
80
78
107
129
103
112
127
109
120
107
87
119
110
80
103
148
80
156
66
101
106
96
120
101
141
85
154
78
175
87
80
89
80
136
69
107
143
134
104
96
136
58
107
69
143
199
72
76
128
99
128
87
127
127
87
96
175
120
80
151
76
88
151
120
80
60
94
114
154
72
80
80
103
93
109
127
149
110
130
80
157
76
90
88
80
94
112
80
67
80
96
87
118
134
197
111
142
119
175
128
103
126
135
80
80
89
110
69
118
87
78
130
119
136
142
132
88
81
112
69
122
115
144
87
69
117
101
69
80
106
134
98
56
80
125
107
83
103
123
119
131
120
117
150
99
119
74
123
133
83
137
100
128
78
80
94
125
110
131
100
109
113
87
80
107
72
78
87
115
107
88
78
69
87
87
99
131
125
134
160
111
79
78
143
87
134
80
134
101
134
83
69
175
97
69
95
80
80
112
120
124
111
131
129
148
116
120
87
99
136
94
128
56
117
80
119
104
139
112
89
69
113
128
153
69
80
99
99
119
76
139
105
93
78
118
95
100
115
108
90
124
100
151
80
112
101
69
197
87
109
69
78
113
99
137
106
88
109
76
96
155
156
119
72
155
130
69
110
90
120
107
119
69
101
88
99
99
93
128
94
94
88
115
69
101
80
80
156
91
80
185
122
128
80
108
175
78
87
78
119
175
90
128
107
117
98
79
100
119
117
100
120
71
144
117
128
69
120
146
71
94
117
124
67
154
121
87
107
110
89
109
175
119
114
131
131
110
119
131
98
96
94
118
110
96
175
104
106
112
88
121
121
87
99
127
111
92
69
148
78
80
110
72
156
117
108
142
114
91
154
101
119
95
118
104
115
64
154
141
138
87
135
106
80
113
125
116
175
121
103
89
154
107
99
121
76
142
88
111
128
80
54
117
82
95
121
102
89
69
94
103
107
120
159
78
92
109
76
52
105
106
78
80
85
75
88
106
69
99
87
154
175
107
99
155
110
100
104
104
175
112
142
98
109
175
80
104
147
118
80
118
96
136
155
114
89
151
76
128
110
153
78
94
82
94
89
126
67
101
119
109
54
78
133
75
136
143
134
107
94
72
121
87
128
85
86
128
78
98
75
69
99
156
67
119
145
163
80
163
92
138
175
106
94
72
175
80
144
133
183
78
175
133
80
76
94
120
75
43
136
80
62
96
80
109
120
87
80
93
153
119
90
72
140
69
78
140
54
88
107
69
114
69
87
99
131
110
80
143
69
78
150
69
78
94
89
69
148
69
128
87
76
93
77
93
81
69
144
197
96
104
87
142
175
154
103
143
91
94
85
128
101
117
160
95
88
121
87
88
122
128
135
119
143
87
119
80
94
89
147
66
104
151
80
110
92
96
106
107
100
156
83
119
109
69
87
80
120
88
87
117
143
80
99
119
102
119
71
163
128
80
60
80
137
185
87
88
107
111
140
120
74
93
76
78
87
69
80
138
127
113
110
103
87
119
80
155
72
96
140
104
111
110
127
100
99
80
80
82
130
164
87
106
119
145
107
145
78
85
94
156
87
74
101
136
69
89
76
100
131
117
146
127
78
107
125
89
99
71
104
76
76
99
69
163
175
131
52
80
143
111
82
119
78
156
157
72
106
119
117
82
76
95
89
126
93
69
119
80
76
112
94
80
79
109
78
72
109
101
119
106
91
102
143
156
52
120
100
78
78
104
78
79
133
96
78
148
69
119
78
107
87
101
107
117
80
139
108
76
126
87
151
78
84
80
112
111
112
175
78
99
57
104
101
87
74
78
119
97
137
76
78
80
90
87
117
69
58
109
96
119
134
68
71
117
122
72
89
106
131
104
106
131
104
71
80
175
83
197
89
72
87
101
102
76
119
69
98
114
112
107
120
154
99
131
145
104
79
119
115
69
94
143
120
110
113
109
147
83
136
106
140
97
76
89
96
76
163
85
78
80
89
78
129
80
128
74
80
88
145
114
69
111
120
80
118
102
81
78
175
112
111
72
69
90
151
102
120
98
80
76
119
126
104
78
136
88
101
89
121
102
91
185
69
128
67
146
69
96
96
127
89
112
110
100
117
126
107
151
87
96
74
78
119
163
115
155
87
145
78
109
82
78
69
112
199
106
120
109
99
69
105
59
144
99
156
52
69
102
78
72
104
88
89
118
114
86
69
113
140
146
74
151
92
93
97
87
154
85
138
119
87
78
73
113
102
119
103
130
69
150
69
88
76
89
154
80
69
107
131
85
104
106
145
137
94
76
119
78
88
117
119
128
89
87
142
80
72
74
87
107
80
66
88
133
136
136
111
69
89
80
54
78
77
87
90
134
69
69
99
80
121
138
72
119
94
78
119
120
87
87
146
106
110
155
99
69
119
72
112
145
137
112
119
128
69
91
120
115
93
132
109
71
81
140
138
101
78
128
87
87
145
88
69
95
96
119
133
136
120
118
91
100
119
69
120
94
69
99
94
69
69
86
130
120
127
113
154
174
54
82
111
91
128
80
131
80
130
69
137
146
147
72
80
117
88
70
99
107
154
129
120
78
80
63
72
87
96
199
122
110
109
139
80
154
119
88
78
76
96
107
94
118
89
78
118
101
93
92
69
87
128
127
94
120
151
69
114
136
119
129
96
78
87
117
118
104
104
121
87
117
69
155
177
120
132
113
114
124
114
140
108
117
80
119
140
94
69
137
72
154
107
121
82
78
112
106
120
120
117
85
69
119
89
87
78
121
130
69
85
80
104
89
142
156
134
80
78
80
136
107
117
114
121
119
79
80
140
78
131
115
99
83
89
87
123
74
116
96
136
80
85
80
76
87
94
76
78
72
99
69
76
134
80
63
87
174
54
139
153
82
87
93
99
91
156
80
80
100
136
125
104
98
119
78
76
154
118
121
96
78
132
80
88
95
104
93
120
76
127
140
109
128
131
145
71
69
69
107
69
175
87
96
80
114
93
72
112
107
106
88
120
91
69
144
147
69
175
69
109
76
143
122
104
99
118
110
99
128
80
126
124
151
143
121
94
118
69
93
99
80
101
89
104
89
145
87
87
72
105
112
136
107
89
80
119
102
118
80
85
133
110
89
120
156
119
102
156
99
80
106
96
112
107
120
137
126
69
80
125
54
107
211
103
107
76
87
142
183
80
131
107
87
120
78
76
80
132
78
94
134
78
69
120
109
154
104
43
66
128
108
74
101
134
80
72
110
120
139
88
69
147
74
127
102
125
80
76
69
97
117
91
119
154
69
128
106
109
113
117
127
69
155
140
121
109
151
126
119
131
145
80
99
87
140
101
94
116
115
148
80
120
113
98
175
107
115
94
109
115
80
78
132
128
80
197
76
106
103
106
88
112
138
121
121
71
137
100
76
80
78
174
83
127
90
100
107
80
88
119
78
87
175
117
175
121
69
117
89
92
107
119
131
107
80
107
80
109
140
150
76
164
93
99
78
107
69
140
104
102
80
78
95
105
109
107
117
195
87
127
63
117
80
109
179
117
76
107
74
69
79
81
80
87
82
105
151
110
139
101
113
80
85
121
80
128
80
69
87
80
106
109
91
78
151
146
94
148
88
127
119
99
156
106
99
154
96
144
71
142
69
74
89
175
118
119
144
154
94
78
78
87
82
128
117
91
134
87
74
112
64
99
139
67
140
78
154
67
94
93
144
89
133
100
94
181
94
104
111
154
101
99
94
115
142
106
106
109
151
69
69
117
155
160
164
110
94
94
72
93
131
87
123
156
110
120
119
133
175
81
76
136
69
89
94
104
119
76
131
140
52
151
103
76
116
120
131
86
80
76
113
197
93
126
109
104
76
119
69
156
80
76
109
74
109
175
199
80
74
129
93
156
119
154
84
123
145
107
117
131
96
119
137
140
114
91
79
104
146
80
113
137
91
176
109
100
134
149
85
80
150
100
80
76
75
116
137
106
78
175
134
156
73
134
101
69
85
205
151
102
136
107
101
109
107
136
93
155
175
137
88
80
80
74
80
69
106
117
99
119
133
90
133
128
156
119
120
175
80
87
78
76
110
133
80
102
101
155
117
52
111
127
96
93
120
80
97
133
87
117
107
83
119
106
117
151
86
175
69
92
89
91
99
128
148
127
113
99
146
104
69
197
76
97
92
87
154
83
119
111
131
134
153
85
78
129
87
155
98
101
80
54
119
153
93
80
175
92
113
78
89
80
92
59
119
99
134
66
121
142
99
121
72
101
154
87
87
88
104
106
151
154
95
120
151
131
87
175
78
100
113
69
89
120
148
109
104
119
104
80
76
79
147
130
78
140
107
87
107
57
94
128
100
137
117
148
87
99
87
107
145
120
144
163
140
116
151
128
88
99
136
74
91
87
94
94
76
136
80
125
88
78
87
102
153
89
80
56
94
63
67
110
112
71
98
93
78
96
104
75
136
76
147
96
120
131
197
94
119
129
148
156
78
122
80
128
137
136
130
85
137
120
95
78
95
115
113
90
164
88
134
101
103
100
101
102
54
136
154
91
69
128
125
155
80
108
128
109
111
89
96
118
106
154
129
76
117
80
79
69
101
80
128
110
94
127
80
80
136
128
121
69
78
99
74
80
75
104
74
154
93
98
126
145
120
130
101
142
89
101
120
122
154
94
142
93
67
114
145
96
156
110
91
152
80
102
107
163
64
134
108
125
89
147
127
115
69
96
69
87
124
76
88
129
80
131
87
136
89
101
113
88
118
75
69
67
119
113
72
176
124
131
80
69
133
76
80
69
76
91
151
93
134
115
69
109
80
80
80
56
80
119
78
175
163
131
96
80
111
107
78
107
84
80
140
123
78
69
94
93
147
87
84
102
80
163
130
80
183
146
103
89
87
121
77
95
184
112
67
156
94
154
76
72
78
130
136
156
102
69
102
88
119
87
111
115
132
100
134
136
80
87
129
72
122
93
106
149
87
146
76
69
159
104
100
154
111
91
140
79
110
78
93
72
111
94
142
114
87
175
91
175
87
119
128
87
144
129
80
110
172
123
69
109
88
80
130
114
119
154
133
154
104
76
91
80
99
119
80
69
128
102
107
94
99
107
100
156
122
99
104
87
119
138
69
104
78
102
138
112
107
120
117
112
85
104
69
82
112
87
131
88
89
80
121
104
63
76
128
118
58
56
89
96
109
138
104
110
69
143
87
72
140
124
121
88
76
115
52
69
99
43
162
76
125
69
80
164
54
120
140
76
136
121
154
72
109
119
154
101
152
126
78
67
78
110
80
94
131
94
107
94
56
80
106
117
89
79
80
125
157
151
99
99
134
128
134
160
91
79
92
109
121
95
96
120
175
117
80
155
87
137
78
104
102
83
143
123
97
95
129
135
107
151
154
120
78
99
151
109
110
78
111
132
76
132
175
78
74
99
125
137
100
121
76
80
102
122
154
69
69
134
106
76
131
143
76
154
69
151
78
87
138
154
104
106
67
100
87
69
158
95
109
134
128
136
85
94
114
78
107
127
54
120
74
87
67
82
141
80
78
78
128
113
74
120
116
76
101
112
68
107
119
93
74
96
80
140
78
118
140
94
128
88
92
69
52
80
107
80
69
54
117
76
80
128
113
101
121
174
83
140
95
124
80
78
69
52
140
110
136
106
154
117
162
117
127
99
96
119
74
136
127
80
128
106
91
102
154
75
96
89
154
175
163
95
138
107
97
115
101
107
101
89
69
64
67
119
80
78
99
111
174
59
87
80
119
75
78
99
80
143
91
132
69
116
175
115
162
98
78
99
113
69
117
144
85
155
80
131
146
120
156
103
146
88
127
82
134
69
134
85
80
91
130
69
80
128
120
76
136
80
110
146
112
175
131
147
101
71
109
119
75
175
106
80
78
183
78
155
149
127
76
72
121
129
80
80
136
69
152
121
137
79
155
99
79
113
181
154
82
80
147
80
80
122
96
85
110
83
85
78
100
122
122
103
80
148
87
164
120
119
154
80
102
87
104
131
104
93
101
120
122
123
111
58
166
104
136
93
74
128
87
66
80
87
175
80
94
137
98
69
175
80
109
112
123
87
94
80
155
124
175
104
143
114
131
80
156
92
156
88
94
101
121
131
93
87
76
102
136
118
80
175
87
74
111
155
76
107
78
134
100
84
87
101
136
107
99
113
76
146
139
165
131
69
117
175
115
111
128
106
113
69
88
88
101
80
85
128
119
114
80
113
94
87
128
56
120
146
104
95
58
69
80
128
87
111
107
197
165
80
119
113
74
80
154
145
87
101
83
115
69
133
107
100
80
99
182
85
89
76
109
110
175
106
172
94
80
76
114
99
99
111
74
78
122
87
101
112
87
112
91
69
137
156
140
126
175
69
89
120
59
106
122
87
87
102
123
87
104
115
134
101
133
134
88
69
94
80
102
128
105
119
126
99
145
106
69
69
140
139
78
136
69
175
76
96
165
112
76
69
76
101
119
102
128
112
131
80
143
106
69
111
88
131
104
113
147
104
134
140
123
87
107
74
109
175
128
76
120
85
151
94
80
109
131
74
90
107
93
152
93
128
175
106
69
175
164
80
88
100
88
110
110
106
78
91
76
119
94
96
74
175
80
145
134
109
76
123
115
117
134
87
76
113
112
156
88
62
151
117
110
107
72
77
74
145
104
80
99
94
175
146
74
183
86
103
80
93
89
145
175
80
113
124
87
87
138
84
94
76
113
144
128
69
87
79
134
69
110
76
140
96
81
120
80
90
89
88
87
147
78
94
99
87
128
88
99
80
87
134
101
118
111
119
175
106
93
123
99
175
119
128
93
71
110
143
80
69
72
164
80
113
126
76
113
133
67
119
131
106
115
128
102
132
128
80
76
96
175
120
107
128
122
52
143
93
128
134
120
175
91
94
120
121
147
110
87
98
104
93
103
121
161
110
120
80
107
131
80
102
140
140
113
117
76
78
132
114
76
151
80
172
117
119
172
123
69
181
87
151
71
120
85
83
80
67
97
72
106
87
120
99
95
87
149
88
110
72
140
109
156
120
127
101
87
80
102
69
80
76
134
151
128
126
98
166
87
155
121
88
131
148
148
77
99
120
78
67
60
143
134
118
91
78
152
117
140
109
85
98
154
88
52
104
151
117
134
117
155
75
124
60
67
110
94
87
151
89
99
76
131
115
88
96
69
88
87
175
113
149
69
119
94
106
66
151
145
151
117
93
116
154
80
69
97
72
175
92
99
115
69
197
147
132
104
80
76
128
107
69
166
100
69
82
94
134
122
80
110
80
90
100
87
119
72
127
76
101
126
107
154
154
122
115
121
119
85
94
101
146
109
87
104
110
113
114
89
140
83
87
137
119
128
83
69
141
107
169
67
99
72
130
76
97
96
103
54
106
69
117
124
154
154
88
132
138
154
92
80
91
163
106
101
87
137
78
83
133
69
96
121
74
110
104
75
80
72
122
87
144
80
126
76
69
94
100
74
78
101
94
88
80
113
128
104
76
123
100
121
59
54
87
132
117
119
121
119
74
119
94
91
87
106
100
114
107
124
80
116
97
130
104
127
160
103
134
149
87
89
88
69
119
94
134
76
154
78
197
121
119
52
163
109
131
136
111
82
93
89
78
112
93
122
120
115
120
160
121
140
131
119
102
101
128
78
134
74
80
106
87
136
113
121
109
76
155
87
66
94
142
122
94
175
121
134
87
128
123
144
83
121
140
76
119
175
197
131
87
179
138
99
175
108
69
105
72
124
103
99
99
110
80
151
94
87
99
120
117
134
94
128
169
89
110
115
67
93
96
80
129
145
158
120
156
80
128
107
78
120
101
109
136
89
101
131
111
156
111
133
115
99
150
103
91
129
69
144
75
88
113
87
80
113
120
76
76
91
118
71
75
83
136
69
121
104
131
146
155
160
84
80
54
156
69
136
107
106
134
76
209
80
80
126
115
150
106
121
102
111
111
111
87
100
120
197
106
72
74
64
129
80
178
93
140
125
88
118
80
107
69
101
80
69
80
138
78
69
52
128
94
151
102
148
103
126
76
76
111
54
76
132
154
96
89
111
115
89
163
110
145
107
132
74
80
118
120
96
100
130
104
69
147
107
133
120
103
114
140
137
149
92
155
87
91
143
69
107
106
80
121
107
104
80
126
122
91
128
151
154
127
67
110
146
80
100
88
76
99
112
112
69
78
113
113
121
154
119
99
69
128
139
69
87
163
76
172
78
128
76
151
89
123
74
76
69
78
128
63
175
85
87
99
148
134
69
102
80
119
78
154
88
80
127
131
78
103
87
93
175
101
98
94
80
139
99
80
98
130
141
106
43
132
185
91
163
80
75
69
73
87
133
76
113
107
80
69
87
52
74
69
120
113
76
78
76
128
95
169
92
79
154
69
131
83
78
69
156
145
113
88
78
87
80
69
118
69
80
52
133
142
98
110
87
107
80
122
156
136
69
113
130
136
133
100
66
155
78
94
102
78
52
80
87
72
163
99
80
99
120
89
128
87
175
114
80
175
144
113
120
146
172
136
102
74
88
76
121
80
175
71
111
80
88
117
106
202
69
119
113
101
101
154
103
117
129
69
99
175
80
101
104
132
60
80
119
145
110
136
96
126
78
106
118
87
119
107
99
80
140
175
80
119
87
72
145
112
155
101
78
117
69
80
101
82
76
91
69
181
136
74
87
110
99
113
80
93
90
80
134
113
99
172
127
87
80
87
125
123
128
87
76
98
148
80
76
124
119
155
87
127
69
72
107
128
69
143
96
113
76
121
101
87
76
87
91
76
140
175
80
107
69
130
133
78
87
175
88
124
174
67
80
78
118
130
123
80
153
125
102
157
107
123
76
67
101
76
107
83
67
69
144
175
154
115
78
129
100
120
110
107
146
107
74
80
107
131
69
118
137
54
136
107
76
119
146
107
80
112
74
119
183
93
119
140
133
102
90
82
119
152
106
119
111
114
88
100
69
80
89
87
89
197
88
125
131
114
80
154
94
69
85
69
101
146
123
96
122
119
143
107
80
110
128
115
128
113
175
80
118
110
72
89
75
146
80
131
69
69
148
63
43
85
80
127
90
85
66
87
140
88
102
80
99
78
80
78
88
131
78
69
113
104
69
115
72
78
98
97
85
121
112
80
101
76
100
91
175
95
113
147
156
148
100
100
107
175
107
128
109
93
99
72
78
98
118
138
112
88
87
110
72
88
145
144
98
88
88
87
85
69
128
80
109
151
138
94
139
107
80
121
89
80
80
69
89
80
111
80
117
107
101
128
113
106
111
91
88
96
69
99
134
83
100
69
108
76
125
87
117
72
110
131
56
104
110
154
80
76
91
117
96
80
121
69
89
134
69
107
175
96
104
128
127
85
119
112
80
72
120
96
128
72
117
80
107
131
107
109
120
154
80
131
132
123
128
99
145
80
87
104
52
94
148
137
128
110
87
187
151
115
147
129
102
54
88
155
119
69
112
128
87
118
80
89
120
201
80
80
134
87
78
128
80
118
76
52
131
101
93
94
96
118
88
76
110
74
76
98
74
134
69
80
113
113
76
140
124
146
102
131
80
69
87
131
146
114
105
80
106
74
93
148
127
137
80
143
76
150
54
100
112
141
80
92
99
112
80
80
154
92
109
56
118
78
96
96
131
113
175
110
80
69
54
137
108
119
129
127
80
76
54
125
127
119
175
87
154
120
103
76
88
80
128
80
69
128
76
76
69
90
82
88
199
128
197
107
127
72
76
175
122
120
87
107
115
114
175
69
172
89
119
100
87
67
69
69
137
110
140
121
106
100
83
88
69
104
100
175
69
85
156
155
128
69
69
69
113
80
89
85
89
155
87
88
143
185
76
69
113
144
72
69
185
76
76
80
110
120
121
155
146
119
102
92
175
154
110
83
81
160
69
121
113
93
69
128
175
134
133
69
96
78
80
80
112
106
113
172
131
109
80
85
154
69
135
91
69
69
121
134
92
74
69
151
56
136
125
69
94
148
99
104
80
80
197
119
106
128
103
88
88
175
131
89
129
54
103
119
131
112
69
175
87
121
78
52
89
84
131
117
154
78
96
102
140
88
120
75
110
80
109
90
80
133
78
101
87
76
69
99
72
87
93
133
76
100
79
107
107
175
100
87
140
104
128
121
91
119
54
115
100
109
69
112
72
156
163
130
69
103
149
117
78
78
69
130
110
119
93
69
91
80
151
99
145
113
130
97
80
87
97
106
88
128
125
106
113
56
72
97
87
78
68
99
80
96
126
164
110
88
154
110
80
175
107
120
80
94
119
156
93
76
56
135
87
75
110
129
128
69
107
118
110
117
117
103
151
118
69
87
107
100
110
80
69
127
140
80
106
136
119
134
183
75
100
89
109
154
107
136
107
115
69
104
133
80
83
102
199
87
124
93
175
155
91
134
94
112
107
115
102
134
102
103
80
128
136
87
166
78
131
134
120
87
69
121
72
80
104
119
154
80
120
79
80
104
101
137
80
151
117
76
69
117
120
121
80
87
164
136
64
197
72
52
107
117
134
69
80
110
175
98
133
76
87
175
76
85
121
107
80
114
80
87
120
132
93
111
80
80
149
106
162
155
175
95
94
142
87
94
91
131
95
100
154
95
78
69
60
111
69
91
103
169
151
99
155
111
69
119
88
119
121
106
146
119
124
137
136
140
83
156
103
155
100
156
67
112
140
89
77
113
79
80
93
89
115
80
99
104
106
78
69
76
134
111
56
80
107
99
137
72
109
113
159
74
67
89
69
106
128
104
99
88
80
90
56
117
96
117
201
114
80
80
136
146
92
79
78
99
128
104
119
76
100
116
87
121
140
73
154
121
174
96
120
110
80
133
69
93
134
69
64
76
103
69
87
172
104
100
80
80
117
107
155
93
64
120
80
128
80
88
96
97
119
87
118
72
89
64
96
89
175
109
78
175
107
87
129
80
94
119
160
136
69
122
112
72
115
101
120
113
95
89
109
106
103
114
143
87
136
76
88
80
111
80
128
80
117
83
93
119
94
145
119
128
112
80
140
88
110
116
69
78
94
122
117
69
76
187
56
83
137
67
88
80
80
109
134
121
140
122
145
69
148
78
109
128
128
134
72
87
159
175
78
106
129
136
69
80
80
128
75
117
52
117
76
120
69
102
85
124
73
69
124
59
100
102
107
113
197
93
140
69
69
54
119
110
76
94
136
126
129
113
78
76
85
103
147
76
102
99
52
117
69
130
69
123
74
120
95
112
111
89
120
113
110
89
128
154
185
143
134
104
83
87
123
142
80
175
80
96
197
128
89
155
88
120
126
98
82
69
128
109
80
69
69
69
76
74
100
119
80
93
120
72
106
102
80
110
118
155
128
128
99
87
57
117
93
108
87
112
96
136
151
78
69
93
80
127
69
69
69
102
129
80
136
115
147
154
80
69
104
122
104
175
72
80
112
119
144
120
107
172
72
124
113
80
134
175
69
112
78
121
80
134
147
123
87
119
69
101
69
80
69
175
113
102
67
137
120
80
120
109
96
109
151
76
78
109
107
94
104
120
87
85
87
80
80
165
94
104
80
146
110
118
80
69
101
121
164
87
111
76
56
139
104
128
156
104
88
132
121
52
111
91
91
109
136
120
85
112
78
100
66
95
76
95
89
111
106
67
112
107
82
74
72
90
136
87
69
80
175
69
147
119
69
110
80
80
129
119
165
76
112
80
145
93
140
96
127
143
78
69
156
54
78
107
112
95
80
95
102
80
92
76
80
111
90
163
136
74
56
160
80
160
163
98
80
121
96
107
91
127
155
80
111
88
100
136
102
119
132
87
85
111
139
69
120
80
80
80
143
110
76
117
119
90
123
99
146
98
87
69
99
52
87
69
87
112
175
109
99
76
103
69
101
80
87
72
69
111
76
69
120
76
183
128
112
133
88
119
87
69
115
69
150
88
80
126
201
134
107
54
54
101
117
87
109
143
69
94
96
80
54
118
131
87
97
111
104
91
87
148
136
128
162
52
120
115
143
87
76
120
87
80
98
110
120
107
156
78
89
119
136
115
136
111
101
43
87
75
154
175
80
115
52
107
175
174
128
93
119
88
175
143
66
112
80
69
131
80
87
80
131
80
106
88
103
125
120
80
118
183
80
106
76
113
129
99
147
124
89
102
151
132
80
122
107
86
117
80
119
121
83
69
106
86
109
56
78
115
66
136
162
111
110
80
91
88
80
121
140
155
80
89
69
100
128
129
87
148
69
114
76
163
123
102
147
99
113
69
52
119
99
56
75
120
69
106
152
78
78
95
103
96
113
109
78
84
146
106
119
95
134
74
69
136
131
100
175
69
119
100
124
117
113
115
80
80
88
104
107
140
79
76
169
119
93
120
134
143
75
132
156
131
118
94
80
78
96
69
92
80
148
102
90
134
156
92
80
102
99
96
87
69
76
112
78
107
107
101
98
69
85
205
115
119
88
138
172
119
94
134
106
80
119
163
94
89
88
131
164
80
69
127
78
113
56
104
88
121
56
80
88
115
80
106
119
120
80
108
154
88
143
109
120
156
137
197
128
156
54
117
100
119
175
128
109
140
158
87
119
107
69
88
88
175
151
132
80
131
124
87
119
76
80
67
119
136
109
76
80
140
76
78
115
69
98
155
78
152
89
100
80
72
151
201
91
155
128
128
138
164
80
76
104
60
128
134
89
80
93
119
136
131
94
78
113
156
107
69
127
78
88
136
125
134
119
78
96
76
117
101
119
87
119
102
117
110
130
96
108
80
136
130
96
114
94
157
78
121
83
93
69
80
78
107
130
88
120
80
84
99
127
80
80
110
101
76
64
123
80
102
80
94
88
76
104
131
76
120
124
93
78
136
87
69
87
136
119
113
94
154
100
115
183
87
89
85
94
155
136
110
113
127
99
115
96
100
122
98
107
66
80
112
122
150
151
125
83
131
128
60
93
114
120
108
114
95
111
95
104
151
132
133
95
80
94
99
87
150
93
69
104
94
126
113
129
80
175
76
105
118
119
74
136
67
98
147
88
69
88
112
137
146
66
69
169
111
136
89
89
134
103
118
130
93
108
88
94
150
109
93
107
88
80
147
106
125
69
130
82
78
87
145
80
148
68
138
119
88
134
78
52
107
113
80
96
111
106
142
81
117
78
86
52
58
100
142
111
89
128
96
111
91
128
93
107
80
131
74
107
103
112
113
119
143
118
120
69
117
74
88
100
117
114
79
99
120
119
69
199
128
101
93
88
136
163
147
80
121
175
109
119
78
91
80
87
94
110
96
76
107
69
110
94
104
89
76
113
76
87
106
154
121
109
78
153
151
80
101
103
119
110
115
117
127
87
99
119
60
109
94
128
124
80
124
146
80
89
137
128
60
103
134
110
110
107
137
78
138
120
101
107
80
110
80
92
130
162
156
133
87
106
104
69
101
125
74
99
118
93
127
156
76
104
80
83
146
119
76
76
76
69
125
129
116
103
131
143
80
88
76
87
77
163
94
88
120
111
88
151
114
108
145
113
110
99
154
107
80
117
80
79
177
121
115
87
85
89
80
109
109
89
110
120
175
78
119
120
80
154
102
126
69
141
93
112
147
120
69
123
110
103
138
146
93
109
109
64
117
104
166
94
78
80
127
88
80
87
128
110
119
104
120
80
69
80
181
80
87
72
109
106
87
140
93
74
110
144
80
84
111
125
85
95
80
102
122
104
87
134
89
110
121
89
119
94
69
70
142
88
101
113
113
59
80
131
119
146
106
154
140
107
140
147
120
119
76
175
91
110
129
156
126
79
69
100
110
81
111
74
78
99
112
120
102
84
119
110
89
139
94
121
107
85
104
102
72
101
69
117
160
98
131
115
170
87
197
119
143
129
54
123
109
138
78
97
128
69
69
76
66
109
99
117
165
197
69
96
199
104
93
137
94
113
108
69
122
136
69
87
80
119
129
72
129
69
95
111
80
72
128
83
74
78
112
122
155
91
85
157
128
67
78
175
119
113
132
66
91
76
102
155
100
117
121
98
109
76
101
145
81
119
119
119
119
120
88
56
80
128
109
94
110
76
93
101
153
154
54
154
87
80
175
113
72
80
80
137
136
66
52
88
147
87
137
87
126
174
52
175
134
80
69
80
123
69
115
116
136
124
127
154
136
117
95
120
127
101
76
138
96
145
80
132
104
124
80
109
99
80
74
155
115
95
80
107
92
128
144
88
118
121
128
87
109
132
111
136
183
166
76
124
109
119
106
148
94
80
125
91
109
103
91
80
156
116
131
80
120
107
131
116
80
80
80
100
100
108
69
69
155
94
134
102
100
78
43
76
69
133
128
138
142
110
54
99
152
178
175
64
175
80
128
133
151
125
69
94
111
179
99
69
96
110
76
120
74
80
155
78
111
91
83
121
76
87
87
107
91
157
78
80
119
87
78
69
119
89
113
82
128
117
107
80
69
99
69
110
107
134
89
140
110
209
101
69
78
78
102
156
89
117
80
160
147
146
118
133
112
94
118
94
174
133
87
76
106
130
113
76
80
175
140
89
114
201
103
110
140
76
78
96
151
69
94
115
102
175
101
140
131
155
122
113
106
102
98
136
87
99
89
96
107
80
113
128
132
87
85
119
56
80
114
96
111
89
87
117
69
117
72
112
100
99
88
151
76
72
76
163
119
148
87
151
128
67
69
166
123
155
114
144
122
128
69
80
96
122
201
80
80
119
87
115
112
101
69
151
123
174
126
99
154
120
69
85
93
151
119
80
175
109
87
92
109
87
109
75
147
80
112
78
139
76
111
158
80
149
89
136
147
85
87
122
112
76
88
104
149
87
117
117
146
120
87
113
69
129
64
114
87
110
76
160
80
121
87
120
82
82
87
121
96
138
78
104
154
93
164
89
74
78
99
89
109
128
107
69
87
80
69
87
106
76
67
154
104
132
76
69
101
134
78
80
151
121
146
69
120
66
78
94
52
117
107
127
149
76
88
154
80
128
156
104
119
128
85
87
164
119
87
140
80
149
151
119
110
88
113
110
60
137
111
90
101
101
72
123
114
93
93
78
78
187
137
94
137
89
120
154
121
58
95
56
87
154
119
69
69
99
119
117
79
76
69
120
89
111
115
127
115
124
69
101
56
129
109
155
90
109
119
197
100
94
93
109
113
134
94
113
126
69
94
199
80
96
78
71
138
90
54
80
137
134
88
120
89
102
163
69
76
78
120
91
109
106
117
96
78
80
94
128
101
80
81
131
133
113
123
52
146
78
126
137
126
80
95
96
72
74
94
136
121
78
147
131
115
90
52
100
78
136
119
112
78
149
101
132
155
121
72
80
107
115
112
148
119
91
201
93
106
126
110
116
126
78
175
106
138
124
164
134
80
96
94
83
175
83
136
87
80
95
132
60
106
103
126
88
119
97
87
90
127
94
69
69
130
78
69
119
78
93
91
107
80
151
115
155
117
79
102
88
87
140
76
69
106
88
124
119
109
59
121
121
89
111
78
78
91
121
89
154
129
85
93
129
127
104
134
122
89
154
146
78
80
90
80
89
101
75
99
124
99
140
91
78
111
98
118
111
76
175
78
87
106
99
91
119
154
69
140
109
67
143
128
99
76
80
108
119
155
80
69
124
163
69
113
54
88
90
145
106
164
90
69
110
78
121
119
95
85
78
99
110
95
104
109
80
88
69
120
120
87
89
104
145
78
87
99
107
80
69
104
93
119
111
102
154
88
78
101
80
121
146
80
120
52
112
122
119
89
137
107
150
87
91
174
158
115
112
95
78
96
69
69
87
104
121
126
112
134
130
122
113
106
106
80
72
67
72
156
120
69
121
80
96
43
146
87
118
80
106
109
119
69
101
78
94
80
131
120
84
78
78
106
99
99
157
76
154
69
89
112
122
127
89
89
114
74
119
93
89
52
119
76
112
123
80
118
69
94
112
83
136
156
126
197
72
144
101
104
133
119
175
76
106
109
150
78
121
131
128
69
127
120
109
94
80
104
150
76
78
89
80
110
112
88
80
111
119
80
80
80
73
69
112
80
76
136
145
111
78
110
67
89
97
76
74
114
103
113
126
69
107
110
123
154
127
69
87
124
88
115
112
80
93
76
80
80
155
87
121
85
69
87
80
75
175
113
102
95
72
93
164
85
80
140
116
100
106
119
112
151
118
113
100
132
113
107
140
89
87
43
121
120
100
96
156
148
94
128
98
90
111
155
146
99
69
164
140
113
185
80
120
93
154
107
80
52
88
137
94
123
99
109
94
69
76
120
69
87
110
87
131
80
110
80
111
165
101
112
87
96
124
76
121
88
74
150
120
126
83
144
85
96
56
114
109
103
111
76
106
80
80
90
87
106
87
112
76
103
104
120
74
80
112
164
95
54
127
99
120
64
144
107
102
103
87
162
92
163
91
88
66
54
87
154
94
128
131
89
80
133
80
87
131
93
96
98
69
137
80
94
127
148
54
93
99
104
119
87
119
87
69
109
110
131
87
96
103
145
104
114
78
117
97
87
78
99
104
146
79
104
87
76
92
76
121
101
111
134
119
109
140
117
74
69
88
115
136
175
94
109
121
120
136
99
101
78
149
154
134
78
99
80
80
113
78
121
80
114
129
69
100
131
54
43
134
117
89
94
80
175
107
141
152
122
114
76
118
78
63
100
87
117
100
146
131
87
94
143
110
120
94
156
141
80
118
95
96
88
197
128
85
113
104
120
113
69
119
95
79
88
138
96
104
78
110
99
121
76
93
80
118
93
123
145
151
169
103
87
80
78
106
101
112
72
154
113
80
176
126
162
94
80
134
69
80
132
80
78
80
105
119
109
80
114
119
88
134
112
76
88
133
80
80
112
115
74
87
110
126
151
69
83
120
136
92
80
118
104
104
76
116
78
89
69
115
76
119
89
126
101
175
100
69
197
104
119
156
109
85
125
75
94
165
80
117
54
99
109
109
137
113
106
159
88
52
94
87
157
89
133
69
87
69
106
154
153
106
109
144
69
130
128
99
80
87
102
52
151
119
80
156
54
75
104
197
91
89
156
119
80
154
99
147
69
109
145
103
91
154
89
136
74
75
69
119
114
88
78
119
119
136
111
80
112
69
69
102
132
91
100
104
109
72
99
78
60
120
98
156
96
140
76
99
76
102
134
80
93
113
78
122
71
107
104
89
197
87
119
137
88
156
175
43
89
177
102
78
163
127
80
80
87
52
80
157
80
99
134
89
121
116
94
104
80
99
80
122
128
117
128
103
113
72
140
89
107
113
76
54
131
72
151
96
134
80
119
197
128
88
126
101
78
96
124
119
69
109
122
69
89
90
86
95
82
52
146
56
80
119
132
69
54
128
140
74
78
155
86
96
69
114
76
164
136
125
80
144
109
80
149
153
80
69
115
128
120
80
93
131
72
104
112
110
119
87
87
115
87
104
69
137
133
110
80
94
113
175
99
112
106
140
128
64
85
119
80
89
120
110
89
136
69
113
80
78
126
175
154
87
80
90
115
107
93
127
160
80
85
69
118
136
113
119
92
175
197
150
92
111
163
134
72
72
156
95
151
136
110
78
127
93
101
154
145
131
115
80
69
114
157
107
80
54
118
128
137
99
104
99
80
110
109
122
151
107
76
175
69
69
151
119
83
100
67
154
131
132
104
101
87
89
69
76
89
69
80
69
110
76
201
111
76
107
115
131
107
128
110
131
120
110
109
74
94
109
72
139
76
114
101
69
140
80
131
87
121
66
69
151
64
121
128
100
156
80
115
69
80
80
102
100
87
201
113
201
72
87
72
102
78
134
78
137
74
52
112
120
113
121
124
96
76
93
100
128
78
78
137
80
117
119
92
78
134
69
52
112
117
69
87
120
120
112
88
102
87
110
107
120
119
109
131
110
99
133
89
93
89
169
99
69
90
95
121
112
142
80
80
80
80
104
122
76
175
117
80
78
128
72
89
80
134
72
52
106
101
87
140
80
87
119
115
107
119
99
83
80
120
80
87
104
117
137
110
175
78
80
129
108
119
119
175
114
113
100
54
95
80
69
132
117
156
94
106
120
80
120
83
101
128
85
78
136
69
125
121
80
69
111
76
123
69
83
107
118
69
87
92
110
128
147
69
76
152
133
54
69
119
106
134
102
145
73
92
119
119
114
87
43
69
127
106
78
83
119
69
148
72
76
89
87
83
76
174
117
121
175
106
164
87
77
99
136
119
104
111
78
80
103
87
107
133
80
117
122
160
91
97
155
132
93
175
123
137
87
74
77
101
131
80
131
82
112
101
125
134
89
118
131
119
91
141
95
109
120
102
69
69
149
108
136
94
131
67
43
134
72
87
99
69
93
75
155
119
197
80
54
121
78
112
119
78
80
94
69
76
143
109
87
89
80
88
154
76
102
111
80
146
148
112
134
154
80
85
101
109
76
109
102
93
89
107
120
69
156
100
131
76
93
100
121
131
94
80
119
115
76
131
120
89
92
107
120
76
72
69
73
52
101
87
123
175
88
107
96
154
111
98
80
119
109
199
137
117
89
69
87
78
110
100
88
89
87
122
99
80
69
120
58
69
133
164
140
104
110
138
122
85
82
75
100
80
112
68
126
52
93
110
78
89
154
69
150
115
79
128
64
145
117
56
137
125
100
69
78
161
69
93
113
121
107
137
123
117
78
129
114
76
131
91
56
131
78
119
93
80
123
127
76
99
69
129
129
112
185
69
137
152
78
110
80
130
122
78
79
101
128
119
127
140
98
107
110
80
93
121
117
80
109
131
106
110
75
87
74
162
78
175
121
94
169
75
89
107
107
142
69
83
93
110
128
119
76
54
162
76
117
131
76
124
120
184
87
69
118
127
144
132
155
127
96
87
114
96
88
76
69
87
176
136
103
91
109
104
78
120
107
119
100
99
118
109
111
183
154
121
139
83
88
131
116
87
76
151
169
143
134
80
56
80
82
91
78
91
87
52
112
101
130
87
99
80
111
156
99
131
69
88
72
78
119
89
69
155
150
76
54
151
117
110
152
76
69
80
122
112
94
110
149
87
96
154
80
87
99
80
87
89
152
131
80
112
78
87
80
130
78
89
151
92
78
107
107
87
131
75
175
88
133
69
80
201
80
130
99
80
134
125
101
131
69
163
57
78
89
131
88
89
111
102
156
69
145
104
94
56
175
69
137
129
80
107
54
119
151
76
91
102
137
96
114
72
80
133
94
80
104
95
69
117
134
154
93
91
140
121
131
118
59
128
123
120
87
88
122
109
113
99
89
110
143
87
69
119
80
87
91
112
104
119
136
116
107
87
119
112
109
69
54
137
128
104
107
69
175
69
117
118
100
102
91
83
117
89
115
113
73
69
120
80
134
78
69
91
66
130
88
89
80
115
80
100
113
80
89
154
197
119
69
99
128
121
87
115
127
92
119
79
122
95
87
125
119
87
175
52
123
78
134
120
209
87
118
89
80
80
72
97
106
114
93
87
80
94
153
91
156
80
120
147
160
128
80
54
89
66
114
69
80
69
121
129
123
123
56
110
107
122
80
72
69
101
80
101
88
100
88
175
134
175
97
76
122
175
145
90
80
91
115
87
140
78
121
76
99
99
87
102
109
72
93
87
156
85
126
69
94
69
119
91
145
121
121
118
91
76
83
136
101
80
176
107
80
107
94
104
80
110
76
86
87
98
85
120
93
140
99
152
120
155
67
106
58
124
103
87
98
131
88
120
88
87
69
89
140
76
117
80
109
93
126
134
101
88
75
115
78
87
89
175
128
138
72
106
88
99
133
107
104
120
121
138
69
94
128
104
120
156
69
89
87
152
112
127
164
119
78
96
109
140
69
142
155
106
128
109
78
110
80
52
131
87
73
80
80
87
104
120
199
88
80
69
131
151
107
87
122
111
69
67
112
111
78
104
99
112
128
89
80
89
122
87
137
103
118
76
91
76
109
107
93
75
126
88
114
72
148
128
98
80
87
113
155
121
104
88
69
92
87
87
76
118
115
146
89
80
106
162
164
175
114
80
110
119
76
146
124
140
106
117
90
155
96
88
93
80
80
120
134
88
87
69
90
91
119
110
197
94
112
76
100
157
85
69
106
128
54
149
69
91
87
88
94
76
151
96
154
156
119
156
131
80
93
118
76
87
109
101
106
68
197
106
121
85
110
102
74
101
101
101
109
69
117
104
130
130
101
116
71
154
80
136
69
128
78
136
78
153
119
135
101
127
120
80
74
110
154
89
69
76
137
69
99
140
54
117
96
69
109
101
80
154
154
99
91
123
76
148
69
121
120
76
80
107
175
80
80
110
80
119
78
69
199
95
106
94
134
87
120
119
156
80
76
113
156
78
130
146
107
128
99
136
106
126
72
157
149
136
89
129
69
79
68
76
100
80
149
80
151
150
119
112
166
120
94
69
112
76
124
93
78
93
121
99
119
63
109
151
155
178
129
132
54
160
141
99
87
88
112
110
78
72
78
128
90
80
87
106
88
69
76
87
89
69
97
88
85
80
93
88
80
121
91
124
157
123
89
154
90
110
69
124
134
54
113
130
94
128
157
76
175
130
175
134
80
143
54
88
118
119
80
134
69
80
148
164
76
175
80
80
163
154
88
80
131
80
134
89
109
119
107
99
132
115
80
87
86
69
134
148
99
152
69
87
80
81
110
144
99
175
128
132
56
127
109
106
80
91
197
89
132
113
103
119
145
121
69
68
78
80
131
69
144
120
126
88
76
52
116
111
89
95
201
109
91
128
115
109
80
67
80
151
78
109
104
102
111
87
127
109
80
127
80
129
134
80
82
52
152
175
146
100
80
124
69
82
112
113
56
75
67
152
116
87
136
109
117
88
93
97
83
118
151
78
101
124
80
83
76
78
131
76
93
76
72
80
87
99
134
136
76
107
121
94
58
164
78
140
83
128
119
102
104
121
80
128
89
56
80
69
136
96
89
113
118
156
85
80
69
106
69
94
80
72
115
145
87
118
54
69
131
106
120
148
88
106
109
119
80
80
72
146
110
104
122
107
88
64
77
89
54
140
146
154
107
56
70
115
123
110
136
113
80
69
142
90
123
160
88
88
119
160
69
107
80
87
80
87
91
112
102
112
99
175
87
69
107
87
76
80
116
201
125
94
69
140
127
155
78
124
98
105
106
109
76
197
140
72
76
121
76
128
69
106
76
95
80
133
117
113
79
76
87
119
69
129
87
101
100
106
112
69
119
79
120
78
69
142
94
154
80
141
102
73
104
119
98
128
89
66
102
106
89
156
100
92
115
99
127
113
120
76
172
127
117
80
187
111
110
131
93
69
80
80
175
124
95
89
88
128
175
96
101
131
56
80
134
154
119
178
76
121
114
91
85
199
69
87
99
128
128
90
129
75
91
136
88
120
104
152
106
60
163
95
151
69
101
76
197
105
120
69
94
131
88
130
88
115
87
175
117
121
91
119
183
94
78
120
197
117
80
116
57
110
123
111
126
117
74
119
124
80
89
120
99
76
80
131
94
78
110
76
80
131
134
136
80
156
80
175
156
87
140
117
175
136
90
119
69
78
89
87
93
143
127
107
175
89
138
183
154
124
69
87
80
74
140
74
119
145
76
119
88
80
110
75
113
169
137
121
99
113
143
146
119
110
80
82
76
131
80
54
119
155
69
101
87
107
68
100
54
103
175
93
93
160
140
107
121
75
87
99
56
121
128
129
163
85
154
107
71
88
119
134
69
99
87
132
80
129
119
78
98
120
71
87
119
114
94
112
118
119
116
66
149
99
69
97
105
113
127
163
99
101
127
119
119
151
120
88
105
175
147
74
109
80
154
110
78
85
125
76
80
52
69
99
124
69
88
106
66
121
94
80
122
118
119
121
138
96
178
134
128
67
69
104
80
122
72
87
80
85
88
104
117
104
69
90
54
54
87
147
67
145
87
89
101
103
137
78
107
121
98
121
124
89
148
71
119
93
87
134
87
122
132
112
93
197
140
72
140
130
56
145
120
154
140
136
93
175
100
181
126
94
131
138
113
87
120
119
165
108
118
80
90
140
126
107
69
100
120
78
69
126
156
110
125
99
143
106
80
100
99
96
127
113
119
128
69
156
102
78
149
89
90
80
95
136
77
99
89
114
74
174
69
87
76
86
91
89
80
102
123
164
169
114
131
107
117
77
145
69
103
90
121
138
119
80
109
120
94
109
109
87
88
124
150
118
97
67
94
80
115
131
74
151
87
90
99
97
101
122
134
104
106
119
54
106
131
136
77
123
113
104
80
175
99
175
128
115
147
64
69
104
109
69
78
100
103
80
135
85
138
111
80
134
69
124
78
119
96
136
155
122
136
140
80
93
117
74
99
91
155
181
104
109
143
110
117
118
87
119
94
112
112
104
99
99
54
100
120
106
119
87
69
80
126
130
96
87
96
80
96
143
78
154
109
76
75
120
87
112
101
76
126
163
81
87
119
187
69
94
121
69
201
69
109
123
104
142
106
76
80
96
76
87
140
98
94
88
117
89
87
154
93
104
88
119
109
99
134
76
119
80
110
115
103
126
80
120
122
72
69
82
137
109
121
117
129
175
120
175
156
87
122
119
69
140
92
136
96
118
69
54
109
115
121
149
87
80
96
169
128
120
66
96
76
107
109
114
113
112
140
88
110
52
76
56
78
89
79
80
126
99
110
140
105
78
69
136
146
93
80
127
107
94
74
92
94
87
99
140
89
87
87
95
140
80
52
88
80
87
74
128
151
69
131
154
69
91
142
146
143
175
93
121
69
164
111
128
80
77
174
104
124
120
80
78
196
119
107
143
154
101
175
69
80
134
78
57
120
80
88
117
90
134
54
122
80
88
117
82
80
145
88
107
128
85
121
76
54
91
110
109
85
150
85
175
136
109
159
164
64
107
80
88
104
148
107
134
80
78
113
103
78
83
103
123
113
120
127
80
80
155
93
78
102
87
87
78
94
99
150
94
58
113
79
91
69
174
126
106
105
64
104
114
115
76
155
89
87
163
69
121
154
163
128
156
175
130
140
87
82
101
55
110
128
86
80
126
133
103
137
80
124
102
100
106
54
78
69
116
110
107
107
144
144
69
106
101
123
78
104
88
88
122
87
112
100
197
87
134
122
82
94
183
87
93
107
80
121
98
72
131
75
89
99
119
96
164
109
90
110
74
95
80
69
88
114
69
52
96
140
121
80
133
141
122
122
74
185
78
99
89
101
115
143
175
69
87
101
156
112
175
144
186
88
102
163
76
89
43
87
121
76
69
87
124
88
120
125
117
80
125
78
136
80
94
93
119
87
64
76
119
94
78
88
107
78
89
146
126
85
120
145
120
72
185
136
197
106
102
103
87
123
128
129
56
96
76
112
69
80
85
134
76
69
104
115
76
185
89
74
175
106
69
96
116
69
69
107
72
80
84
122
156
66
131
99
154
69
135
121
130
99
80
69
110
183
68
121
80
114
131
78
154
69
117
96
67
87
83
137
110
113
74
127
187
93
121
140
112
110
121
121
91
187
93
129
128
87
74
69
119
175
83
69
174
57
110
104
91
75
115
144
69
90
87
69
69
152
94
101
119
130
145
69
56
140
87
124
110
138
126
78
104
66
102
87
101
148
98
72
156
111
78
125
80
131
119
143
112
113
87
90
76
120
120
120
87
87
127
142
113
111
78
121
76
175
175
80
124
94
97
147
80
120
128
78
134
87
127
80
110
83
110
136
100
80
103
104
78
120
98
67
119
66
113
96
117
132
94
104
76
99
128
175
183
112
115
120
121
175
107
129
54
76
134
122
128
106
113
94
154
80
69
107
80
109
102
80
69
43
101
69
96
89
101
155
128
76
154
85
117
85
140
69
78
87
96
197
104
94
94
69
112
87
91
109
79
107
117
69
106
56
120
96
83
128
151
59
43
74
153
102
107
89
174
110
193
130
137
88
106
74
150
80
107
97
175
54
79
109
109
108
108
176
91
104
80
160
100
175
78
156
120
138
118
124
140
52
99
100
76
110
127
87
80
78
197
113
197
104
89
80
80
113
136
78
71
117
69
94
69
131
124
80
94
85
101
96
107
78
87
80
163
80
69
87
113
76
109
80
117
67
72
109
69
129
83
123
104
69
96
92
112
87
140
118
80
87
81
128
91
131
134
124
113
69
76
138
69
114
76
185
120
88
91
78
111
78
87
54
69
69
64
149
87
154
96
155
120
87
106
88
85
128
99
89
102
76
133
91
80
175
106
89
80
87
78
94
110
95
137
164
109
132
125
131
85
74
74
87
114
80
149
107
107
80
124
147
93
104
87
174
145
78
121
143
144
117
99
106
162
117
138
103
87
107
99
142
102
74
140
87
76
109
54
99
119
96
99
117
151
69
143
94
131
58
104
126
171
118
113
107
76
131
101
119
109
66
134
90
120
110
92
80
76
69
131
81
151
103
131
111
78
150
120
87
52
99
101
54
107
146
94
66
177
166
119
140
87
96
99
105
156
90
93
88
52
98
78
92
165
151
94
80
69
129
91
69
80
154
91
175
114
87
78
115
87
139
136
118
89
85
112
156
52
145
56
118
183
87
96
78
99
80
119
163
78
80
163
110
80
80
119
99
164
154
95
175
76
76
109
185
175
120
80
136
106
106
114
89
87
94
155
152
89
80
121
145
83
154
80
163
80
154
120
69
113
131
102
56
140
80
69
96
76
116
101
136
110
119
104
99
82
112
123
146
80
119
183
155
88
119
159
71
102
120
118
117
99
112
99
94
100
95
132
103
197
80
120
69
137
85
87
140
94
113
101
54
99
154
111
115
109
80
75
136
88
166
89
80
128
128
69
94
99
91
138
113
163
60
76
91
69
80
121
69
106
80
64
128
112
80
156
107
136
107
169
117
93
78
80
104
56
107
99
80
88
154
69
149
69
88
95
78
135
80
83
151
135
117
113
74
100
69
136
85
136
80
80
128
134
83
102
119
129
56
95
127
69
80
119
74
72
99
128
112
112
94
122
99
183
89
119
119
79
74
96
137
127
120
112
117
69
174
109
128
114
160
80
175
69
113
78
120
99
132
95
115
115
69
99
114
107
110
87
146
80
121
137
112
99
103
43
155
131
69
109
131
69
93
87
87
134
69
69
74
119
69
88
56
111
78
80
109
78
135
94
120
52
128
99
99
201
87
99
87
94
80
69
156
67
59
87
139
119
197
124
80
76
80
132
80
80
123
93
164
112
107
80
69
75
74
107
162
124
134
107
92
94
121
99
91
126
72
101
83
175
69
120
103
56
107
78
72
87
66
80
69
104
91
120
126
80
83
118
101
128
80
101
69
174
149
78
155
69
145
69
69
106
109
123
76
119
101
118
127
151
87
91
109
101
121
80
98
115
83
120
100
97
155
127
91
127
80
91
109
119
80
145
154
87
54
109
127
87
58
156
119
72
67
99
91
119
148
112
69
99
137
99
110
99
154
119
80
85
112
154
120
80
89
154
154
72
102
118
101
153
87
87
72
59
69
121
105
131
136
78
102
154
104
151
106
69
76
95
110
172
128
135
145
148
83
101
54
88
129
102
171
80
76
116
80
107
88
89
122
106
131
175
111
117
69
157
164
80
80
80
100
87
76
69
104
91
125
69
118
80
110
119
110
104
113
126
136
151
99
110
78
99
159
76
87
85
119
80
89
104
117
112
92
96
163
89
120
92
132
78
197
90
76
137
76
166
119
89
93
119
67
110
120
85
58
119
128
100
199
52
129
80
76
69
130
80
118
134
106
92
87
172
148
146
152
137
127
80
54
109
87
120
90
69
80
121
122
43
95
175
199
112
100
69
69
120
154
156
125
127
165
104
99
80
80
54
93
134
119
71
80
128
119
94
120
71
85
92
140
120
100
74
175
78
134
175
80
120
109
76
73
76
103
138
112
122
128
76
99
134
112
91
119
96
76
154
106
104
107
128
85
154
80
59
94
102
87
132
87
110
72
117
89
98
97
114
87
118
131
89
136
78
87
128
83
85
86
127
136
114
106
111
88
104
76
78
119
121
93
109
153
120
96
94
87
88
79
104
118
99
56
96
78
89
155
107
121
142
139
87
145
102
94
126
88
135
107
80
78
107
87
93
69
93
54
164
117
80
201
80
169
107
100
69
148
88
94
94
107
92
99
100
72
87
175
120
85
128
175
76
175
149
115
80
123
72
91
112
80
149
90
88
80
175
93
80
93
197
96
87
121
88
110
87
74
117
156
124
136
89
76
175
72
112
87
87
112
76
87
88
146
109
90
123
95
181
160
99
87
115
119
97
89
98
80
69
89
136
124
99
112
136
138
112
149
79
93
136
112
74
78
74
99
88
95
107
80
107
80
113
78
127
88
94
107
99
87
96
126
69
99
87
116
82
102
112
89
89
106
117
89
69
87
69
80
117
107
80
175
126
96
89
69
69
54
90
110
107
162
115
113
69
155
80
87
104
80
120
159
175
118
126
121
136
89
115
99
80
76
136
89
99
101
78
87
119
76
131
76
69
88
148
76
106
69
64
99
94
98
80
87
83
107
104
83
119
131
80
155
133
197
75
100
87
89
122
111
80
43
89
134
96
93
78
129
134
88
97
69
87
93
82
92
101
109
78
80
147
52
109
119
144
103
163
117
91
112
104
87
106
80
111
136
197
88
96
136
155
133
119
93
99
91
80
154
112
79
118
112
143
119
54
69
80
131
80
123
134
102
131
146
106
87
120
107
119
154
137
140
101
143
112
120
113
151
118
152
113
79
151
94
80
104
109
118
94
169
89
119
112
80
69
88
99
128
69
112
156
102
109
181
88
90
80
123
80
104
69
121
97
136
77
114
69
78
143
142
154
175
78
148
162
127
115
73
94
80
102
78
126
153
67
69
88
127
138
129
121
104
80
64
74
109
79
134
100
69
69
121
80
101
78
119
76
54
108
119
87
169
107
107
148
112
81
130
126
102
69
89
131
103
87
75
112
80
94
87
131
109
110
144
87
103
128
78
117
98
75
147
91
120
104
130
134
69
163
87
80
126
121
125
132
69
101
150
103
91
74
89
73
131
104
163
94
69
102
118
125
133
88
156
110
137
118
132
109
106
87
69
144
80
87
113
99
82
78
76
87
155
105
102
78
105
56
69
87
134
109
99
145
119
136
106
93
78
152
145
78
107
87
76
78
69
78
136
108
93
155
89
154
124
131
148
71
111
162
151
145
89
87
78
71
107
118
94
99
87
78
87
119
127
72
146
119
113
155
120
80
131
97
119
110
158
119
140
123
89
75
110
80
89
80
106
91
80
125
117
120
136
106
78
78
167
69
199
78
89
69
54
133
94
69
69
175
103
144
131
80
89
87
74
129
87
137
74
88
69
91
107
69
87
80
106
89
157
76
72
109
151
166
87
99
119
104
165
102
107
109
72
76
43
89
118
96
120
76
175
134
76
143
137
85
78
64
154
76
150
96
87
142
69
110
120
107
76
80
133
111
76
77
107
107
102
52
141
69
80
89
104
69
131
110
83
100
162
154
119
110
100
113
122
147
134
100
96
154
129
116
69
80
80
76
154
118
103
131
102
127
87
131
80
69
120
80
106
150
99
209
175
88
80
93
136
93
99
120
137
165
121
87
160
80
80
80
96
80
152
80
131
69
154
107
82
72
87
78
67
107
68
119
111
110
96
117
88
96
103
78
120
118
136
99
99
108
175
110
132
137
75
89
99
69
175
78
124
89
88
69
78
113
175
127
131
80
91
80
175
78
106
95
117
107
156
83
80
131
93
101
94
121
96
80
110
80
157
87
69
126
69
119
72
134
144
131
72
97
107
82
136
133
122
151
117
134
103
80
95
114
109
99
76
78
131
94
99
118
87
131
80
117
80
115
160
144
88
147
87
103
197
76
109
83
96
126
69
93
126
128
106
122
124
104
131
101
113
52
106
96
94
120
106
109
67
144
109
100
162
88
87
128
83
69
93
95
76
87
132
117
163
149
110
159
197
80
79
119
76
97
151
155
98
187
132
52
128
109
69
106
89
96
60
107
107
69
100
104
87
119
94
115
128
94
96
113
112
123
88
87
110
80
128
115
102
136
111
93
94
69
87
110
110
117
80
69
88
114
69
78
120
72
88
94
157
98
80
54
112
128
119
69
78
108
87
89
110
157
150
117
98
93
128
134
96
80
153
102
127
89
69
52
136
121
134
91
127
156
87
76
110
78
93
124
175
100
127
103
154
119
89
175
197
76
81
111
128
80
96
154
121
74
87
76
146
134
87
85
101
87
78
143
91
80
119
118
69
112
123
91
69
149
137
69
96
107
121
120
94
89
94
87
119
117
156
111
95
96
71
107
128
86
59
99
78
174
187
88
76
163
87
78
88
113
69
140
130
109
119
119
102
76
52
107
76
94
136
76
121
88
148
101
94
76
126
107
78
69
78
109
80
197
80
199
147
104
101
80
181
187
106
175
78
76
78
197
83
114
69
83
87
80
112
69
83
76
76
174
87
94
119
99
94
69
145
151
112
85
109
112
74
104
119
175
104
151
87
138
109
181
80
119
101
88
96
164
93
128
100
122
102
78
89
67
154
154
175
142
135
106
76
102
96
52
76
107
87
89
107
69
82
69
138
111
108
107
112
87
117
125
85
133
119
76
122
69
119
119
78
101
136
95
83
96
88
80
127
126
72
71
145
126
175
80
117
80
87
104
181
69
121
113
69
69
87
155
69
131
109
87
76
97
118
76
122
144
74
89
103
128
96
97
97
129
128
88
76
104
146
107
87
52
139
80
142
69
132
134
78
56
114
80
120
146
131
78
78
152
122
79
134
76
99
101
76
119
104
121
69
96
103
122
106
74
91
87
104
72
69
43
56
94
121
109
69
99
80
197
121
117
119
112
197
78
109
119
111
121
96
133
156
131
98
110
80
72
115
79
74
102
68
69
104
119
197
78
95
116
89
109
101
197
86
120
128
52
94
69
69
109
69
172
93
120
175
87
120
87
110
69
140
145
80
69
104
91
117
117
88
98
76
76
76
99
121
144
106
109
166
119
69
156
76
140
115
119
99
73
57
131
89
85
195
80
76
56
52
175
78
197
80
91
106
119
106
101
169
166
96
87
119
133
88
94
85
109
137
93
74
175
99
112
87
76
73
87
128
95
80
120
156
145
100
136
127
124
119
78
69
88
89
119
68
111
164
128
96
82
78
118
134
52
131
89
101
94
143
80
136
154
129
121
134
88
93
140
88
107
125
154
148
109
154
69
80
113
94
156
78
72
102
119
89
76
74
110
131
76
80
115
134
87
78
109
92
119
128
110
109
90
78
201
199
127
136
156
128
69
78
99
139
154
83
140
154
136
111
148
93
76
80
118
68
131
93
119
80
76
87
101
56
119
80
69
78
120
94
119
118
128
78
123
91
157
99
112
120
76
112
82
94
137
69
121
128
109
148
76
76
129
110
121
89
117
80
74
145
155
76
120
69
89
94
94
91
119
99
151
106
119
110
175
112
109
155
101
101
121
122
129
96
128
87
87
75
103
102
197
69
120
115
110
155
54
76
108
80
117
112
154
119
95
96
80
78
109
102
136
87
75
93
128
140
113
113
134
136
160
111
119
175
66
155
76
78
127
74
78
110
99
104
69
109
127
121
69
76
93
112
87
78
88
87
69
106
88
98
87
121
110
112
87
89
129
124
109
80
80
133
56
54
87
80
151
84
80
99
97
128
87
99
77
104
100
79
67
115
100
74
69
112
106
80
91
153
106
95
166
69
100
87
76
154
132
73
118
91
109
122
80
56
80
56
80
87
164
80
106
88
131
87
107
80
132
91
121
161
88
119
153
102
101
120
93
76
133
93
120
76
108
155
69
80
128
69
64
94
131
87
72
106
121
90
78
137
100
80
110
109
104
123
129
76
89
78
113
117
151
119
69
185
93
117
56
112
152
88
80
108
69
89
131
120
94
102
72
140
94
119
76
127
89
119
107
119
89
94
87
80
99
103
104
136
67
109
160
118
89
54
94
91
88
156
123
197
96
87
69
125
134
80
80
120
143
87
115
122
103
122
78
201
112
90
113
155
78
146
80
80
154
101
107
175
90
101
87
133
102
117
134
109
88
146
91
116
96
79
140
89
94
175
87
108
87
106
119
85
80
78
69
69
62
154
89
88
87
54
86
100
93
68
43
93
143
124
106
146
100
78
148
127
72
117
89
197
99
76
99
175
76
117
99
95
80
80
107
99
98
71
87
145
100
115
103
89
92
69
120
117
106
92
112
76
154
91
93
78
81
96
175
80
134
134
87
82
129
156
154
76
112
78
123
68
80
120
154
95
89
99
80
95
144
106
94
80
126
76
94
68
108
108
80
107
76
78
69
82
121
151
110
174
138
99
91
88
143
123
85
89
56
112
128
106
112
90
104
121
154
110
87
76
87
109
101
92
131
107
89
104
94
122
106
133
134
130
136
139
90
109
116
102
67
125
128
103
69
52
140
148
97
120
95
130
87
93
119
78
115
109
154
175
84
128
76
128
76
69
163
166
76
93
94
69
96
120
121
76
80
89
97
109
76
80
80
156
146
82
83
92
52
109
131
163
80
92
100
113
91
69
99
112
107
107
119
104
80
91
164
88
154
56
149
78
80
117
98
76
155
76
171
85
109
80
156
69
117
112
84
102
72
80
91
134
74
100
110
98
142
69
100
78
175
175
80
121
54
96
88
106
93
118
102
107
102
117
119
152
111
106
131
92
125
148
88
152
121
126
88
89
151
141
96
112
75
95
103
69
54
111
151
88
78
91
155
52
87
107
142
107
87
126
81
99
80
85
131
87
130
175
100
136
143
132
89
94
76
69
126
80
140
63
119
126
140
143
94
136
52
111
76
160
69
124
120
80
99
104
164
94
80
136
132
175
175
140
110
128
166
78
102
131
78
110
80
87
155
120
89
140
110
110
69
99
157
116
80
149
107
80
111
109
183
201
127
80
99
136
80
69
133
87
108
122
154
117
76
131
107
78
118
108
120
69
78
134
106
72
99
76
52
118
118
94
76
73
119
69
69
87
88
99
125
138
78
120
80
92
69
80
100
119
150
101
131
151
145
80
115
104
110
121
69
128
142
103
164
164
75
83
112
119
80
151
87
79
93
88
102
80
69
105
67
87
91
72
175
89
119
106
91
134
94
76
154
52
89
69
137
106
104
96
89
155
120
80
114
120
106
80
140
75
80
99
90
85
148
143
72
104
141
88
143
87
197
108
175
103
107
82
96
107
80
131
101
112
91
80
128
131
80
89
117
136
151
87
134
121
91
109
87
136
80
80
99
79
88
110
121
89
92
80
113
93
87
143
109
72
69
76
147
69
104
197
93
80
143
120
128
134
56
69
104
56
118
106
69
43
118
114
120
83
80
89
133
136
87
69
87
72
113
129
113
120
128
148
69
120
155
88
80
106
110
88
76
136
94
80
69
155
101
102
117
155
106
78
113
114
80
99
72
100
101
145
98
88
163
72
111
82
75
95
133
89
89
54
140
117
87
107
80
126
80
118
106
76
104
76
52
76
67
140
69
102
73
72
107
102
91
111
87
78
131
101
148
83
134
80
80
93
143
143
99
80
78
119
83
99
57
80
127
106
136
122
56
56
72
99
148
85
96
146
136
76
126
199
79
163
90
109
100
134
156
76
81
91
131
140
142
99
119
154
117
78
87
72
113
162
131
78
113
80
60
80
90
169
80
110
78
87
175
104
80
113
100
154
87
74
78
104
80
121
109
69
111
64
80
72
79
120
137
54
76
99
112
87
120
80
143
43
76
155
117
80
87
106
112
146
117
127
87
78
94
72
52
118
88
120
159
119
113
106
119
154
88
151
101
131
117
79
114
135
107
89
88
80
107
69
69
127
69
154
108
103
96
128
175
103
76
88
78
127
69
121
138
87
94
72
98
136
156
134
109
124
87
118
87
127
79
118
92
143
80
78
89
154
88
87
107
76
155
98
69
80
72
121
89
164
136
101
104
175
156
131
112
136
121
133
93
71
76
175
78
99
76
137
197
163
154
135
74
76
102
80
94
75
110
113
101
107
88
130
80
94
76
119
107
69
154
78
69
109
120
87
69
120
80
87
138
80
101
80
93
120
80
69
80
147
142
136
143
87
169
107
89
128
98
80
76
69
96
88
99
110
183
78
99
117
104
148
121
112
117
156
112
80
80
82
93
94
131
87
76
140
117
119
104
113
143
85
127
109
80
66
121
102
80
115
99
140
73
131
110
128
88
89
101
88
72
93
125
131
111
66
76
175
117
69
134
114
69
144
69
88
88
107
155
119
88
87
79
140
74
120
130
76
99
150
109
104
80
197
78
78
107
43
100
134
154
69
99
80
96
82
110
80
106
93
114
88
110
80
130
78
76
94
98
120
99
80
126
109
120
94
145
91
120
120
131
74
87
69
115
119
129
87
117
78
120
88
148
80
117
131
80
80
164
78
142
116
88
123
98
129
89
110
112
132
74
113
80
69
126
126
78
108
113
131
119
89
120
91
141
113
78
110
74
121
87
90
78
88
88
80
100
117
174
76
92
110
90
80
87
185
118
140
96
88
87
115
107
199
89
80
107
99
156
78
87
129
73
112
93
134
164
119
159
89
69
80
121
76
78
147
69
110
72
91
155
125
139
121
69
117
85
76
74
120
151
54
128
134
77
120
145
80
90
160
95
80
134
80
116
88
78
82
156
114
66
175
109
68
154
151
72
98
140
57
119
82
76
129
69
155
69
124
60
120
83
131
106
52
185
131
101
83
135
131
69
69
80
110
76
112
94
100
98
154
121
181
100
66
96
144
69
78
114
134
117
156
91
120
76
80
120
94
124
100
149
87
111
69
117
119
127
101
80
120
113
43
146
155
154
74
69
78
120
121
155
78
107
120
125
104
89
110
122
78
119
111
76
73
128
88
175
78
91
155
110
111
128
69
80
110
132
83
69
93
80
87
80
69
128
69
147
85
76
111
137
69
78
144
104
91
133
156
52
129
81
155
56
87
133
175
92
99
154
80
52
88
63
110
85
87
80
134
146
109
78
89
109
175
127
58
104
76
72
126
136
87
87
124
56
104
87
72
91
74
140
107
118
107
90
128
140
69
109
69
80
83
96
106
183
69
95
156
69
94
74
112
78
80
123
128
52
140
107
120
80
89
80
140
114
120
106
134
131
117
95
93
82
95
136
119
148
78
87
101
197
110
99
100
96
123
113
109
80
120
118
183
136
121
99
96
118
78
152
104
155
80
82
52
72
94
121
56
107
101
106
134
89
104
94
96
131
69
80
69
131
91
155
119
184
99
107
78
155
112
93
151
80
126
107
104
136
164
78
127
76
102
106
89
100
154
134
99
131
76
83
110
99
145
87
151
169
137
140
80
93
124
80
119
119
112
148
72
87
91
99
140
149
74
114
197
96
69
122
127
108
80
87
100
69
107
148
197
88
80
107
139
104
87
69
87
155
87
166
69
120
78
128
101
106
91
96
80
107
121
126
78
80
80
94
132
117
109
71
197
85
160
80
123
103
175
78
110
89
145
141
87
102
107
201
107
118
78
76
209
131
99
175
69
115
107
129
189
76
136
119
131
87
133
137
138
176
76
110
80
121
138
145
90
107
135
78
114
87
75
80
88
74
120
78
183
95
154
75
114
134
131
163
163
78
128
89
211
93
76
107
124
56
76
67
69
115
146
106
56
127
95
107
113
163
110
132
175
80
114
109
119
85
121
133
110
175
89
76
112
79
148
56
175
80
151
123
80
80
80
140
124
185
100
93
80
155
80
75
112
110
131
80
92
80
96
89
78
107
56
109
146
119
87
69
110
101
109
109
106
175
87
87
100
76
87
83
80
81
111
100
82
87
102
58
103
76
80
76
137
56
73
80
76
94
119
69
101
123
156
80
175
69
127
163
78
98
80
80
78
175
76
92
156
67
155
104
125
78
76
80
87
127
111
143
78
104
80
104
138
128
117
104
99
80
145
115
126
52
91
119
93
110
136
80
119
52
75
95
100
175
128
120
119
120
99
110
104
87
107
109
56
91
102
80
107
60
88
109
115
68
155
86
124
78
78
146
136
140
124
104
145
78
145
109
80
143
124
76
113
145
89
154
145
110
90
91
66
126
143
120
96
128
78
80
120
80
89
76
69
89
118
80
72
121
69
78
169
87
82
76
94
156
120
156
112
131
72
106
128
72
113
165
69
52
106
106
87
70
76
76
92
69
72
72
175
76
118
72
82
99
114
80
104
101
119
128
120
146
107
78
197
78
80
69
76
88
175
125
87
107
74
140
155
80
69
103
90
91
93
99
80
154
91
119
117
69
92
109
127
80
74
154
131
69
94
100
107
134
76
80
92
94
66
101
122
109
175
94
201
78
78
69
135
93
110
112
80
76
76
91
122
103
154
110
141
109
80
96
175
124
76
111
138
128
123
106
94
80
98
76
74
131
111
76
143
120
107
99
110
111
118
89
106
117
129
88
113
88
100
87
120
78
83
96
137
80
155
80
106
80
101
142
96
199
85
109
87
106
80
98
80
78
74
89
146
110
64
100
94
100
119
80
133
76
104
199
175
78
80
80
121
115
120
85
91
128
95
128
120
106
76
128
103
80
89
147
69
96
127
107
107
112
154
117
157
119
119
150
153
78
87
69
103
150
93
162
92
115
163
119
101
136
112
155
87
87
94
110
80
81
80
115
87
76
80
69
85
131
151
108
115
111
74
104
120
83
107
89
104
141
136
80
99
107
120
127
127
105
107
117
78
97
133
125
145
112
104
121
185
99
134
160
108
119
69
69
99
117
119
89
130
107
109
121
131
122
76
118
99
115
120
100
80
80
69
80
91
117
83
80
74
120
126
80
169
113
94
121
99
129
199
154
89
113
93
114
104
201
69
80
109
111
123
123
80
107
148
80
154
64
123
94
102
133
112
80
121
119
128
114
87
78
111
76
146
89
78
128
119
69
80
119
151
72
128
138
134
118
119
151
149
99
78
109
54
76
109
69
143
131
175
117
134
87
128
102
120
78
161
100
113
43
115
91
86
87
110
106
89
108
78
80
143
146
68
106
118
85
131
87
104
107
94
96
94
125
126
106
99
101
76
108
80
109
143
80
94
155
54
88
175
89
118
100
131
72
109
83
71
80
121
54
131
72
88
83
113
148
136
117
88
69
87
142
94
69
134
67
80
102
87
110
89
110
145
110
128
120
141
76
80
110
88
147
118
117
93
154
69
93
80
126
121
87
69
136
88
89
92
109
101
104
78
96
101
99
80
119
84
119
106
76
80
148
105
148
148
106
122
89
197
115
80
69
88
120
96
87
90
95
154
101
87
91
109
136
121
127
154
104
138
76
138
83
93
104
120
69
54
154
87
88
124
109
99
76
69
102
99
89
109
78
174
148
72
88
80
87
69
72
54
90
201
72
127
185
93
80
107
112
94
92
154
119
78
103
126
175
110
107
107
72
106
112
154
149
80
69
74
143
87
94
136
187
58
181
74
137
80
98
80
119
156
114
91
80
145
111
134
80
137
104
185
69
109
80
151
69
90
80
110
80
90
79
115
128
76
76
95
110
120
83
78
110
88
80
118
107
110
145
123
80
107
151
136
87
142
80
121
69
97
149
89
110
112
69
80
74
120
80
107
119
87
126
83
78
104
89
112
80
69
133
88
85
54
80
101
80
87
164
127
103
85
88
128
164
87
112
116
87
72
104
119
56
99
104
148
131
155
118
131
99
54
74
109
96
119
69
102
81
126
87
111
138
154
66
80
131
90
99
91
130
80
80
107
101
116
78
106
80
76
160
102
80
74
78
94
94
69
140
112
87
69
80
104
104
112
109
54
93
74
175
87
160
79
93
104
156
104
154
52
89
87
143
78
87
66
104
134
130
94
119
80
143
109
164
100
110
134
107
122
76
69
129
107
102
88
99
112
104
83
112
98
100
106
134
80
163
111
95
103
99
80
116
132
99
199
119
76
80
114
139
96
99
89
128
104
118
113
129
151
43
110
80
56
107
106
69
120
80
89
69
107
76
96
115
71
78
154
102
122
69
54
102
126
119
80
121
119
136
145
197
100
197
136
119
140
106
78
69
76
106
121
78
114
80
87
69
88
75
69
143
120
87
155
76
76
134
137
124
54
122
175
78
106
88
89
111
122
107
112
117
80
85
96
72
158
109
94
134
94
80
88
120
109
89
131
102
76
102
97
87
93
80
175
110
88
101
127
72
107
195
80
100
112
99
69
96
134
175
143
76
80
80
103
80
109
114
155
94
98
80
88
94
89
107
136
144
114
100
95
80
123
118
87
75
174
119
164
159
99
126
80
80
78
121
60
78
56
69
74
68
89
162
87
119
80
109
76
123
127
106
96
123
80
106
100
129
78
128
109
128
114
120
87
117
174
175
102
54
99
160
69
156
110
52
155
146
134
103
69
145
80
117
80
94
123
107
129
107
131
110
141
150
90
78
100
128
156
113
80
100
83
90
112
187
112
117
120
76
102
146
156
149
96
78
69
127
120
120
101
139
106
107
93
76
120
111
87
102
87
136
89
87
92
106
79
116
76
124
99
76
76
113
80
90
125
117
148
127
151
102
69
68
160
99
126
118
96
89
80
88
69
156
111
120
96
88
71
115
117
107
112
117
69
120
80
80
146
154
87
120
109
111
179
94
118
174
169
109
80
131
119
88
59
155
120
78
96
87
164
78
119
87
80
175
80
154
100
156
130
155
87
142
119
120
90
101
122
99
131
146
120
96
131
113
93
78
163
91
121
107
85
117
99
119
118
128
145
89
187
120
80
87
96
106
139
79
95
121
129
110
78
80
140
72
69
76
89
156
175
156
52
78
80
171
76
79
104
152
69
141
118
89
92
80
115
160
132
112
109
131
94
87
156
87
106
85
80
165
64
69
117
137
138
87
119
111
80
107
154
139
112
106
69
74
94
108
134
154
122
80
69
156
66
134
87
146
82
99
149
58
115
75
87
94
74
133
85
128
69
119
109
87
175
117
126
80
99
95
109
73
67
95
140
131
115
131
88
104
108
134
78
80
130
137
109
114
69
140
119
114
76
78
117
175
87
88
120
87
109
133
78
77
87
113
136
121
88
69
81
87
117
106
80
78
154
107
88
78
120
113
99
98
164
89
96
134
78
110
87
120
69
89
197
120
94
134
104
183
119
79
151
80
120
74
85
107
111
88
109
87
123
80
88
118
134
125
112
89
143
43
119
139
164
128
136
94
151
122
101
88
52
134
119
80
99
110
99
89
80
117
107
181
101
148
146
134
76
98
104
76
72
80
112
127
99
69
113
133
110
99
99
119
203
134
74
156
99
107
69
68
103
89
107
121
119
88
131
112
146
88
91
80
109
76
87
110
80
93
73
138
96
130
112
197
112
104
78
121
148
80
73
122
112
80
94
80
126
119
109
69
174
155
91
120
112
118
118
78
131
78
128
118
147
87
109
76
87
125
69
87
110
72
132
121
169
110
163
121
76
80
119
128
99
58
106
123
89
154
127
135
69
122
144
112
136
76
90
126
126
87
107
78
148
145
137
78
78
69
88
107
76
80
88
76
101
83
123
119
110
91
145
112
101
182
129
144
87
87
119
119
205
187
137
80
93
119
136
140
93
76
128
100
96
133
78
52
121
130
124
119
80
59
81
99
104
93
104
115
69
87
109
96
100
119
104
175
100
69
74
175
99
80
131
80
120
87
134
98
107
140
69
197
69
69
144
89
134
197
119
74
80
143
110
94
143
125
127
130
87
109
103
72
69
66
134
118
94
87
175
69
87
85
72
133
92
114
107
120
121
103
99
52
119
143
128
107
80
69
76
119
88
69
75
122
164
133
101
122
154
69
87
87
119
87
56
69
131
72
87
107
96
115
87
144
154
80
122
94
146
134
197
128
146
133
119
163
152
99
131
89
78
127
126
96
88
138
121
87
80
143
69
119
78
94
119
176
111
80
94
111
149
118
69
125
76
101
79
80
87
69
80
99
134
56
121
146
87
143
80
80
87
113
128
76
151
143
68
78
56
69
91
76
82
109
130
74
126
78
88
133
112
175
136
69
123
131
80
199
80
133
110
117
148
80
102
89
87
110
131
76
112
80
79
126
80
90
113
135
85
69
56
129
100
120
90
111
97
74
120
121
87
121
115
146
80
92
80
69
104
106
128
110
91
94
197
110
106
136
115
81
146
107
80
136
80
151
114
119
122
154
74
78
127
69
96
80
95
86
106
147
94
197
69
139
78
69
79
78
101
79
110
80
78
124
69
88
106
83
78
134
90
156
114
101
115
136
107
117
109
89
99
88
80
110
87
109
91
93
126
156
88
74
72
78
80
103
119
69
112
106
78
131
107
91
99
87
69
199
113
94
80
94
119
132
87
109
80
76
140
101
175
141
117
69
85
106
134
174
87
117
80
80
69
133
121
107
84
133
89
121
85
92
138
119
69
80
76
110
104
105
161
80
121
111
89
112
67
113
136
72
130
118
101
64
89
155
110
115
159
88
154
80
109
99
95
96
93
103
131
154
89
80
119
112
124
87
119
115
118
144
67
148
113
107
106
121
72
88
118
87
119
175
101
78
80
78
155
78
71
80
119
96
100
112
76
156
89
94
99
76
91
78
124
80
80
69
129
85
119
136
95
166
94
110
80
76
127
69
67
130
69
74
76
146
93
82
78
80
94
94
69
131
155
158
99
104
155
138
146
97
156
113
88
69
133
134
140
80
145
143
159
88
69
102
91
118
75
64
120
93
72
134
175
88
119
174
89
120
74
78
175
79
80
72
69
106
74
155
76
78
151
112
69
106
69
69
78
137
89
72
108
146
175
120
69
128
99
85
136
109
197
151
136
150
79
52
197
89
113
106
73
72
72
96
119
78
99
80
155
98
140
101
99
149
80
98
84
80
101
85
120
111
156
128
120
119
100
113
201
131
98
136
118
78
109
140
93
88
140
74
113
80
140
154
163
141
136
80
147
109
89
130
122
91
155
111
91
78
69
69
126
137
91
107
140
97
112
107
113
87
119
83
114
107
99
78
89
140
80
125
113
90
80
117
106
110
109
91
112
146
151
120
80
89
174
148
69
137
69
80
113
127
175
109
130
107
120
88
88
124
76
163
151
74
99
58
101
81
96
135
106
88
151
151
76
120
74
93
78
107
82
78
156
175
119
92
154
136
76
158
109
85
93
78
80
113
69
124
126
80
140
72
76
80
66
120
117
89
118
120
115
80
69
88
110
154
87
153
43
88
138
125
99
105
119
72
54
78
136
175
117
112
127
131
73
56
142
80
131
78
148
157
137
125
118
76
60
69
175
172
136
133
78
58
175
104
87
117
146
69
102
110
76
140
80
118
69
107
149
104
88
172
86
77
123
109
98
124
87
78
131
107
145
135
78
119
109
94
97
119
87
112
127
43
134
130
100
104
128
117
154
58
97
108
69
99
104
116
104
97
119
99
137
96
156
175
80
87
69
78
69
115
80
104
131
63
109
201
74
175
94
125
128
80
80
107
93
69
69
104
130
95
80
96
58
80
124
80
80
136
89
143
79
154
69
147
88
151
134
99
87
156
120
134
80
121
126
88
101
140
72
89
149
88
72
80
80
92
154
137
69
91
94
118
69
144
107
128
119
64
69
94
145
78
134
106
144
105
69
104
156
107
87
54
88
78
97
92
134
136
174
69
115
80
98
127
134
104
106
120
154
87
109
80
87
69
121
127
87
124
104
99
69
123
75
112
128
80
87
80
94
115
76
107
87
164
156
80
107
69
98
125
156
128
109
119
76
94
109
82
120
88
95
82
113
80
99
69
177
120
76
119
69
114
164
76
119
134
76
69
87
128
99
110
154
128
110
117
122
154
78
137
120
143
96
85
139
146
69
175
87
154
80
120
154
118
128
80
107
128
87
80
89
73
131
69
82
76
80
109
134
102
144
92
76
99
151
120
128
120
85
145
88
118
80
131
117
56
163
75
134
114
163
163
74
174
107
76
97
175
76
95
122
78
96
93
123
87
123
87
156
131
76
99
89
76
94
197
107
94
142
104
69
89
76
80
122
147
122
94
95
76
151
88
54
120
99
134
122
80
96
78
109
107
78
78
163
125
124
87
175
96
89
175
72
78
131
72
154
115
134
78
88
87
175
137
120
120
75
136
96
154
80
58
80
69
78
114
134
164
178
175
78
110
108
187
72
54
121
75
89
80
90
92
126
83
92
110
95
69
155
54
138
156
78
54
106
72
131
103
143
146
107
76
87
96
93
52
154
119
81
146
97
125
88
128
156
54
128
72
80
163
136
88
67
143
100
99
80
146
83
76
94
121
156
137
164
74
175
78
97
89
69
128
80
125
69
120
166
91
189
100
122
107
209
120
127
120
155
109
131
110
119
126
134
123
138
80
101
87
80
80
88
127
136
137
93
119
85
87
175
75
95
69
116
109
119
54
94
121
112
122
107
69
69
113
90
93
110
87
87
80
131
90
131
56
152
76
72
120
140
109
134
87
119
76
118
109
110
101
117
140
85
101
94
131
68
102
93
85
69
120
154
113
151
99
73
76
72
110
163
113
96
69
106
80
107
106
117
111
155
80
140
113
101
104
80
110
101
120
149
163
52
69
90
121
128
163
132
93
106
138
89
80
72
145
154
106
89
117
94
76
136
80
80
111
105
146
104
156
132
115
77
102
66
156
76
87
91
104
112
94
99
71
83
109
138
106
120
78
155
102
76
121
136
133
197
113
80
136
96
69
80
154
124
78
109
88
163
99
64
123
69
93
175
121
128
80
99
63
76
150
92
90
117
107
88
143
74
101
83
78
78
136
69
101
151
113
154
80
79
174
54
197
76
104
175
80
145
78
80
124
156
129
136
112
104
76
66
80
88
68
144
109
76
88
89
127
57
140
136
120
80
124
88
106
77
102
87
78
82
124
80
109
107
80
67
101
104
72
87
80
80
77
94
99
87
142
80
94
87
79
91
80
87
121
146
145
148
155
175
119
119
77
137
122
143
119
117
102
72
126
69
84
80
80
64
78
69
164
66
128
128
123
194
102
69
134
156
96
94
78
119
140
115
114
104
69
102
69
94
175
58
111
69
115
123
94
102
129
117
106
104
137
105
80
163
80
57
99
133
87
144
99
111
129
107
112
78
111
136
96
151
109
154
149
80
137
69
93
87
43
59
88
93
110
80
69
146
54
102
146
89
102
76
94
93
106
107
109
69
106
197
111
87
127
120
87
96
97
136
78
101
87
89
74
117
134
80
120
80
87
120
140
72
94
80
95
67
128
197
69
109
136
78
80
72
88
107
54
102
94
94
96
76
120
156
119
101
142
99
87
80
52
118
109
102
125
87
78
132
127
146
119
136
106
175
106
115
140
175
197
113
69
119
87
93
107
73
76
94
127
134
154
104
133
94
125
151
78
80
88
69
96
113
99
80
76
131
80
112
80
183
104
88
174
99
71
136
98
72
80
69
119
79
68
78
80
94
136
154
118
125
94
140
91
89
93
80
66
183
124
106
107
88
115
132
107
71
88
69
76
88
89
172
76
119
87
99
147
113
107
80
137
114
80
72
76
140
95
128
89
155
78
127
89
88
85
156
69
121
89
96
166
119
139
69
99
88
148
85
58
137
67
69
80
69
107
80
115
120
94
156
112
119
80
138
134
89
128
99
128
112
67
106
101
120
109
80
78
121
87
185
80
80
121
164
89
76
109
113
80
118
96
76
120
88
113
73
162
80
124
78
69
125
71
72
113
106
87
115
69
104
82
107
99
93
140
69
93
75
91
107
96
78
90
162
68
69
104
96
103
69
115
154
80
69
80
74
94
89
129
79
80
164
113
101
91
54
109
76
96
139
162
175
112
96
118
109
89
88
129
120
110
118
134
78
78
69
94
111
72
112
87
112
197
109
104
78
149
89
71
119
157
120
87
91
96
112
151
80
131
119
129
120
164
69
128
175
103
156
82
146
154
110
128
111
110
94
80
151
78
128
87
119
166
87
94
135
120
87
115
120
107
110
112
76
175
87
85
104
149
120
90
110
119
103
80
119
54
136
175
122
80
94
155
80
128
151
113
155
156
175
175
69
80
68
89
140
69
86
94
89
74
145
155
85
80
156
136
91
109
56
107
128
104
162
109
93
80
174
94
101
94
100
125
76
110
106
119
90
72
69
56
80
69
86
80
144
54
88
89
120
160
197
134
138
175
93
69
69
80
151
69
140
69
110
107
157
131
87
89
87
93
80
102
87
88
87
120
76
80
181
103
80
148
87
99
119
120
163
80
76
128
147
109
89
89
96
80
78
146
154
140
78
78
108
123
89
175
126
154
87
199
132
89
69
103
88
87
82
93
101
78
156
147
78
154
112
66
113
78
107
69
112
106
142
144
151
175
93
89
124
129
110
104
151
143
118
80
128
119
175
43
156
69
90
131
114
122
154
101
133
89
115
119
121
155
82
135
80
99
163
148
127
111
154
121
115
132
71
136
116
129
88
80
94
78
80
88
69
121
94
155
125
130
131
78
69
89
175
99
88
71
103
69
105
102
80
87
121
78
102
184
140
74
132
80
87
87
88
128
119
153
76
117
80
119
154
156
181
68
87
95
197
91
175
119
80
91
69
155
115
134
144
127
110
132
72
109
80
80
89
107
122
130
76
75
119
91
91
76
175
69
132
128
110
69
104
151
137
76
100
52
80
112
120
109
156
102
102
154
88
91
114
69
106
88
136
154
78
122
146
80
136
87
87
119
80
78
102
154
101
151
118
106
117
145
116
134
114
87
113
109
94
101
117
107
91
78
80
110
100
87
96
126
136
119
155
128
87
80
117
94
119
120
131
106
102
72
107
80
93
131
136
89
109
154
118
117
87
175
172
80
76
107
107
109
78
91
156
113
156
94
87
132
119
106
175
88
85
91
80
80
104
128
80
99
175
78
140
110
88
145
87
95
54
94
124
92
145
136
88
78
117
112
69
80
130
175
125
133
87
80
69
67
113
87
119
113
69
99
80
69
165
94
78
80
146
164
154
145
141
114
76
150
120
112
78
63
110
96
122
108
69
133
87
112
138
76
69
69
165
128
78
109
153
115
119
80
80
130
136
131
108
69
87
197
98
69
104
69
80
175
76
80
80
119
140
80
103
129
56
97
142
146
130
126
89
112
76
104
183
128
78
87
85
136
89
136
89
76
80
175
102
79
78
77
69
115
87
99
76
80
104
91
109
152
116
147
102
99
91
93
119
85
80
80
128
76
52
160
91
88
87
76
138
114
154
155
109
69
192
164
87
94
76
93
131
76
80
94
119
121
115
107
131
99
88
87
67
80
118
76
155
80
106
87
69
155
87
87
154
91
175
102
107
124
146
87
77
130
151
69
164
120
80
112
140
98
99
78
134
120
144
72
201
94
121
104
120
151
96
117
72
80
106
103
76
111
119
154
103
104
76
92
120
99
136
128
117
119
154
69
56
80
128
111
72
89
76
175
127
94
54
80
199
87
52
69
121
155
69
88
78
120
140
80
78
98
58
109
89
80
91
82
93
155
93
89
154
107
109
119
119
76
113
119
89
157
154
114
140
120
102
144
69
146
87
112
175
78
91
119
115
101
121
72
127
131
117
111
143
76
114
119
173
121
87
106
156
80
163
103
83
91
91
88
76
52
87
130
85
96
119
99
80
87
150
76
110
69
78
69
128
107
107
130
136
54
156
90
169
69
127
94
80
91
64
119
112
80
197
175
102
119
80
90
128
119
69
80
88
196
89
98
119
87
163
94
110
80
107
92
215
78
154
106
112
97
94
104
87
107
147
80
104
80
163
80
80
80
94
148
88
137
87
128
175
76
144
99
109
96
100
126
76
197
129
134
99
78
136
80
121
126
107
88
112
119
72
74
91
145
88
85
120
111
128
78
109
105
78
43
160
100
183
78
69
107
78
143
118
114
71
132
78
111
119
83
155
115
107
163
175
96
80
69
146
87
74
104
69
139
129
129
99
163
99
69
69
131
78
83
120
128
69
119
74
149
136
156
87
113
69
83
89
154
106
52
123
99
163
105
69
88
154
155
156
78
80
126
113
110
112
96
87
80
110
118
94
87
99
101
75
91
99
102
69
78
119
114
110
80
69
69
80
175
97
80
131
90
78
106
118
69
113
163
78
91
127
76
69
87
88
78
52
89
109
100
101
106
120
88
80
92
76
104
78
175
117
72
119
127
69
72
117
125
76
83
112
126
69
128
69
118
75
156
85
80
117
109
78
85
98
110
152
72
136
117
102
115
140
74
76
95
75
106
71
119
78
80
96
110
87
87
88
131
126
111
144
76
80
69
175
177
104
117
89
80
132
140
154
122
155
155
80
102
89
96
89
99
109
72
101
67
138
80
145
74
69
80
102
91
133
104
148
150
94
78
104
80
56
126
87
138
102
87
72
89
80
100
78
130
120
172
43
110
175
113
123
121
145
128
156
71
78
104
69
131
89
117
118
80
94
88
154
89
80
87
89
99
94
126
78
56
155
78
134
128
107
105
88
154
110
96
94
89
69
120
69
77
111
72
120
69
181
99
137
89
175
128
85
80
78
122
91
69
113
136
109
69
76
72
92
154
123
80
78
76
71
80
160
104
111
69
117
80
121
127
78
104
140
69
85
89
80
80
132
80
174
80
85
80
67
108
121
99
76
83
56
112
157
52
69
106
156
69
109
121
78
78
121
110
150
111
119
80
107
99
155
175
131
97
80
80
140
181
83
156
76
165
121
93
107
90
76
146
80
124
118
78
94
126
107
107
121
111
121
155
80
80
175
103
152
78
175
91
144
137
87
72
104
80
147
87
119
94
80
155
94
128
101
175
85
115
119
146
127
128
154
102
43
137
75
72
110
87
120
175
63
80
160
131
110
127
87
140
87
113
137
83
145
119
109
175
76
132
76
66
140
102
136
80
72
129
147
104
120
118
87
69
88
88
69
104
140
80
109
78
113
102
129
131
107
119
56
67
85
127
138
90
119
99
54
52
69
106
80
80
94
69
87
117
100
130
69
80
94
107
88
90
113
74
69
91
122
130
119
78
94
78
69
156
119
119
134
74
134
76
131
197
75
131
87
78
88
107
99
90
134
87
126
128
120
132
127
69
101
128
97
85
130
87
88
99
102
183
128
109
114
110
107
69
152
145
145
56
87
69
94
101
128
109
186
72
183
150
136
69
101
108
43
78
106
80
78
85
102
150
87
101
121
69
69
107
80
118
99
80
88
68
146
94
94
95
80
174
69
154
78
129
119
136
136
93
93
75
80
54
101
77
87
127
115
101
140
80
75
80
119
154
127
195
96
94
80
104
136
110
128
94
132
76
156
114
154
137
80
151
112
128
156
101
112
89
80
87
109
128
69
72
134
107
153
112
88
86
151
90
106
60
107
107
119
99
78
127
99
197
52
154
119
80
146
69
80
76
120
100
94
104
136
106
156
93
88
99
128
54
132
76
106
111
88
151
78
94
109
106
103
93
118
94
89
76
87
76
88
88
80
112
95
90
197
56
88
96
110
117
78
163
107
146
175
93
78
52
94
99
87
74
154
94
138
120
78
175
43
90
85
80
52
115
80
85
107
176
123
118
95
76
80
137
145
110
83
92
156
112
119
80
64
154
103
96
85
128
117
185
102
72
199
134
88
87
80
174
109
122
74
80
126
83
90
72
96
128
156
126
147
94
105
146
94
136
80
134
126
201
88
103
69
78
107
104
175
107
110
94
76
88
105
78
92
126
91
134
128
87
101
154
102
43
121
103
132
78
134
112
140
119
93
102
89
80
140
140
134
96
112
110
72
175
90
99
110
119
80
136
87
69
54
124
122
76
122
88
80
78
155
79
138
72
138
69
122
66
69
128
80
120
119
140
80
110
109
80
75
110
97
96
76
103
76
119
87
142
122
80
81
131
120
96
72
163
80
88
80
69
87
74
89
117
88
113
96
121
117
54
132
109
129
126
181
72
72
124
99
121
59
88
156
117
129
69
120
76
76
154
89
78
104
166
150
119
137
76
78
156
93
134
106
88
113
99
131
164
62
69
75
134
79
85
80
142
103
79
87
120
87
140
101
94
154
88
148
80
101
154
80
89
149
120
69
146
133
176
80
128
76
118
163
96
128
94
80
134
78
104
137
78
69
128
120
104
131
164
80
106
147
69
140
110
128
120
87
78
101
120
72
151
109
165
52
140
116
137
139
113
145
89
76
87
88
166
113
151
123
112
121
122
175
62
107
80
128
87
92
156
80
80
69
91
125
76
93
100
76
101
102
119
67
93
78
110
157
94
147
89
158
119
56
91
175
146
94
76
75
103
94
100
117
172
69
122
89
172
88
87
87
88
88
140
69
162
76
91
93
108
178
107
78
89
76
80
94
122
103
80
94
143
111
112
165
76
104
88
69
128
128
87
156
128
106
114
156
109
96
119
115
140
119
69
137
78
80
102
95
76
175
117
89
165
80
99
107
69
120
80
80
112
79
72
122
89
122
69
104
152
154
107
80
76
80
113
78
117
151
69
169
119
187
69
54
121
74
113
134
132
98
128
102
74
119
132
74
83
155
121
134
136
87
104
125
69
89
134
76
119
74
59
69
95
128
87
112
102
119
134
78
69
151
130
148
131
87
151
56
103
134
80
112
78
160
109
142
85
147
117
80
80
134
120
73
175
88
139
102
155
145
66
136
43
69
123
79
146
114
120
120
89
88
175
75
110
134
54
78
99
100
140
69
111
111
80
122
121
131
118
104
119
148
87
120
93
100
109
100
56
78
85
131
110
87
87
80
99
113
78
86
120
90
93
78
160
124
58
95
175
112
156
146
80
79
71
137
169
142
87
74
76
79
113
76
117
74
83
155
78
80
120
128
134
123
131
94
110
131
88
155
80
72
52
106
80
78
121
93
123
107
94
54
99
69
146
75
80
127
66
128
103
88
54
120
121
106
87
119
111
113
69
175
115
114
148
80
87
109
107
100
80
88
106
69
73
114
144
144
91
106
133
150
94
140
76
110
90
120
78
98
128
78
69
97
80
144
123
69
119
96
130
92
114
136
80
141
99
80
80
94
104
134
78
169
89
110
52
128
69
72
80
101
75
88
79
101
80
120
88
127
88
110
125
78
78
99
80
126
122
175
113
104
78
107
56
101
136
119
156
136
156
113
80
89
88
129
129
140
102
110
199
119
117
140
144
69
89
109
95
140
76
107
154
87
121
91
137
148
102
69
163
115
112
69
69
80
107
74
93
114
206
114
109
142
175
187
119
185
128
69
112
109
101
76
143
94
110
91
91
87
123
136
143
109
95
106
140
80
87
165
106
101
127
126
197
119
131
154
109
120
115
136
112
80
91
120
119
76
103
88
99
93
96
154
99
87
109
106
149
79
120
90
140
69
117
92
134
69
128
175
80
129
87
119
104
80
175
121
107
91
72
87
78
112
134
80
93
136
78
175
148
143
139
78
134
175
108
67
80
159
97
78
78
107
161
95
121
110
120
80
131
73
120
72
143
175
80
89
99
119
91
102
132
117
119
145
100
102
80
106
72
143
121
119
145
76
99
136
103
87
80
76
98
131
163
78
109
156
107
147
80
104
80
69
87
131
80
137
113
69
88
104
80
119
94
99
115
69
89
76
131
115
134
86
80
69
142
101
120
110
78
87
134
175
147
88
94
151
87
78
87
183
120
69
80
87
156
134
87
69
87
80
110
96
83
112
128
80
136
83
69
106
134
110
155
82
80
54
143
155
197
89
119
69
69
80
124
129
96
83
151
187
119
134
88
142
155
128
106
183
146
120
99
94
87
130
87
148
87
89
91
72
140
133
78
133
131
102
80
80
157
88
137
126
69
122
107
107
155
94
83
87
87
101
108
91
106
107
80
69
155
140
98
119
79
69
107
149
64
119
72
146
83
119
137
120
140
71
101
87
119
74
95
87
59
95
87
117
57
131
78
175
109
80
148
85
124
88
110
134
124
151
71
117
91
112
89
128
80
106
120
90
102
110
132
100
176
128
175
113
69
151
69
106
109
92
151
80
78
134
148
117
156
69
98
99
85
106
80
94
119
114
155
69
154
69
125
74
126
115
104
83
126
119
118
76
128
140
140
80
112
119
104
102
102
87
80
87
69
143
134
76
75
115
103
131
85
80
71
119
119
85
102
91
175
119
87
80
80
102
80
101
69
99
80
80
104
80
119
80
172
128
96
155
128
107
119
138
88
134
80
87
87
95
66
87
154
104
80
112
128
69
137
52
134
69
97
66
76
167
80
97
99
104
102
140
107
80
154
120
163
199
119
127
125
118
137
139
118
197
80
156
89
154
69
128
130
109
43
115
143
96
134
126
99
118
78
88
143
151
99
115
123
80
80
78
78
114
128
69
113
120
106
69
52
201
80
154
162
164
87
69
158
110
154
115
130
175
127
80
93
69
95
122
94
136
121
131
87
86
110
132
175
69
118
163
197
54
116
117
88
169
132
88
89
109
154
69
91
110
109
76
156
75
78
80
93
143
69
87
87
120
146
134
121
124
109
69
173
118
175
69
107
106
122
137
91
76
134
146
117
93
80
80
113
132
91
132
154
151
100
128
107
80
89
96
87
93
80
99
80
152
114
113
110
156
71
112
80
87
155
80
112
165
88
128
109
93
109
78
91
124
134
144
87
131
60
80
83
106
82
94
175
120
120
145
103
87
99
90
115
132
128
76
87
125
145
89
131
78
110
88
126
119
72
134
89
125
69
63
87
56
122
79
69
80
80
96
106
88
163
155
54
148
52
131
112
109
162
175
128
166
52
88
80
113
123
69
106
54
96
94
106
107
103
110
128
133
67
116
104
93
91
148
134
76
98
96
109
103
80
114
120
107
175
121
149
56
80
124
87
119
110
96
87
155
104
154
115
128
107
99
107
98
91
69
120
151
76
94
114
89
69
96
69
121
118
102
117
175
69
98
91
80
159
123
64
156
87
128
172
118
80
197
155
76
106
154
74
89
80
76
114
117
93
76
101
115
119
114
96
109
114
155
87
98
113
99
120
83
80
67
79
137
134
76
80
145
107
69
112
120
175
99
69
148
72
154
69
137
106
91
110
87
143
132
154
154
151
69
96
110
80
101
85
80
119
69
76
106
82
98
72
87
109
128
123
121
102
154
76
107
80
165
99
127
134
43
80
92
175
87
69
140
91
67
89
154
128
130
106
118
136
119
136
69
117
152
174
106
155
103
134
122
107
117
69
96
52
107
143
143
59
78
181
89
115
88
118
86
96
99
87
128
98
175
88
145
104
93
140
87
93
137
69
106
113
113
95
74
129
87
88
93
82
93
175
97
118
91
148
72
69
178
140
129
100
99
99
110
157
151
123
115
69
109
118
101
87
107
120
94
80
143
154
80
94
124
93
89
201
100
91
69
129
95
91
80
93
80
78
151
102
157
88
125
93
119
118
107
140
130
80
119
101
154
163
110
113
119
107
94
78
117
119
118
80
76
118
127
175
93
71
99
123
103
131
69
109
74
124
120
107
80
120
99
80
80
154
118
78
94
136
72
121
76
87
78
102
100
106
145
126
87
197
69
74
185
152
175
92
137
136
80
104
136
76
104
131
54
185
69
106
120
69
87
128
80
123
112
119
137
76
177
80
120
123
69
56
94
91
92
87
72
74
94
80
93
142
136
97
80
107
80
128
185
84
90
107
80
87
156
151
94
80
69
99
129
112
99
144
125
80
69
69
110
106
78
121
104
120
80
106
132
107
131
80
115
120
59
81
100
164
128
93
154
78
124
90
154
67
128
103
136
110
102
106
87
88
88
113
157
80
87
89
118
78
120
80
100
109
147
78
120
83
119
80
97
143
87
100
136
110
119
87
156
123
120
143
130
99
125
126
120
93
69
130
109
83
93
128
69
69
69
118
164
132
93
69
106
175
56
110
81
89
76
96
80
111
69
102
69
102
87
88
119
112
99
107
102
146
99
90
120
80
104
160
78
87
107
67
87
113
110
121
156
78
88
78
133
130
125
155
156
144
52
127
87
136
69
88
107
89
112
83
151
107
138
148
89
69
96
87
130
122
113
151
171
147
80
101
66
112
120
80
69
98
109
128
122
117
120
80
76
80
94
120
78
143
126
94
106
197
104
109
69
100
69
99
153
128
87
88
107
89
154
99
81
76
110
76
78
104
98
102
121
117
109
76
76
87
69
199
144
80
88
76
74
115
80
88
97
156
101
88
113
89
109
119
87
56
109
120
91
197
103
104
63
98
112
100
110
136
72
134
137
104
80
87
72
140
109
104
107
119
123
160
127
54
134
104
89
140
106
72
89
80
120
69
137
109
101
114
76
113
80
99
89
119
69
148
151
131
128
163
131
78
78
87
80
109
69
104
101
104
90
145
69
78
106
43
96
129
146
154
88
106
52
121
119
87
133
100
73
80
140
87
96
93
128
94
128
59
175
163
95
112
177
105
125
69
128
98
109
96
106
119
107
145
110
80
175
88
87
115
175
72
172
117
107
89
112
110
80
80
145
97
136
175
80
136
102
69
100
140
120
119
155
98
128
110
94
93
102
83
112
119
113
78
87
99
80
148
139
87
94
87
102
78
137
80
69
78
93
136
124
93
126
122
172
136
80
156
130
107
143
112
103
105
175
151
119
110
69
121
128
124
112
113
119
199
113
151
127
107
94
119
80
96
107
111
140
69
80
87
101
137
128
110
123
121
131
69
155
130
95
120
102
106
80
146
137
110
100
69
66
174
156
96
78
118
140
175
77
126
87
69
64
149
69
126
132
76
118
87
111
107
113
80
137
113
69
80
160
94
72
131
199
80
94
175
87
89
87
69
72
52
78
76
136
78
120
89
140
110
80
80
88
154
119
80
154
104
175
107
131
104
87
109
127
102
75
126
72
66
112
108
76
108
76
156
132
139
126
56
103
106
80
63
131
115
72
87
117
175
83
76
175
80
98
69
93
106
89
78
83
80
120
101
148
109
120
122
83
91
69
99
76
120
100
68
54
112
132
96
152
99
89
83
88
109
154
93
102
156
87
109
94
134
121
122
80
109
119
91
197
69
137
117
74
117
125
85
69
100
108
80
88
127
181
119
96
153
80
80
69
143
152
121
154
76
95
78
76
88
119
110
156
69
89
85
80
88
122
131
80
87
175
163
99
110
100
76
112
94
76
125
106
107
101
128
164
117
175
92
136
104
130
104
113
59
99
120
154
76
125
175
99
113
154
102
110
142
100
119
88
145
78
128
78
156
88
118
98
131
72
88
131
152
102
80
102
96
116
119
117
69
69
96
69
71
80
156
133
89
80
80
164
95
69
111
129
119
91
69
119
154
128
106
106
67
92
69
90
80
118
80
149
109
85
78
107
124
122
80
106
87
99
197
104
120
80
185
101
113
80
98
69
78
128
154
82
80
150
99
134
129
80
93
135
69
121
112
107
52
128
129
113
133
118
115
148
80
160
93
67
54
87
172
109
80
122
72
87
100
136
106
99
113
104
197
89
69
112
83
67
76
120
130
89
76
94
130
96
99
148
78
145
104
85
119
91
131
80
106
94
106
67
113
165
94
136
154
80
175
63
107
93
79
96
91
74
80
164
56
66
117
107
99
69
197
121
92
80
78
85
98
90
94
117
146
85
122
154
144
89
131
80
131
91
197
124
139
87
109
105
80
88
87
80
122
104
156
72
121
174
93
123
107
80
147
108
112
151
154
113
80
90
93
142
131
145
98
122
87
123
99
88
88
80
54
88
197
72
175
124
104
175
175
146
152
104
110
107
197
154
78
183
160
87
137
136
69
175
112
104
131
137
75
109
109
112
107
130
69
78
122
145
112
130
99
132
76
156
89
87
69
134
175
155
76
107
110
137
80
126
110
104
163
107
89
80
79
128
93
117
78
69
120
78
69
122
89
199
134
91
80
88
131
112
148
76
120
129
156
73
90
76
104
185
69
79
92
94
144
140
118
143
95
121
132
126
76
80
88
98
98
76
117
117
131
175
110
114
88
92
89
56
137
97
110
102
99
122
150
166
112
80
175
107
113
66
87
52
93
107
128
112
89
69
101
102
89
78
78
149
122
102
60
96
76
104
124
107
100
80
119
109
95
87
78
128
110
133
113
128
87
102
80
80
140
113
95
88
166
125
106
102
128
109
102
111
172
174
110
107
69
120
163
88
128
69
88
119
120
119
136
161
107
99
148
135
101
87
119
132
95
108
69
54
113
69
109
93
122
156
69
119
91
118
125
94
117
109
99
87
87
119
201
95
109
129
107
97
98
80
114
78
100
107
154
128
113
186
69
76
110
76
91
169
59
79
101
83
128
87
87
99
79
106
130
112
111
139
104
134
89
112
80
147
80
116
134
134
96
175
92
74
197
131
140
80
80
155
80
80
147
119
76
104
156
88
111
96
78
87
67
82
101
139
88
132
88
122
80
177
110
80
163
76
88
121
80
107
102
175
175
69
127
99
128
156
143
123
78
100
69
88
80
91
128
119
69
96
76
89
107
104
117
129
98
155
111
103
69
80
148
78
117
69
117
88
140
88
96
104
80
76
104
130
43
78
89
98
87
76
110
89
166
89
80
144
140
56
119
107
89
123
125
98
87
130
89
117
80
122
107
112
94
140
137
83
52
113
165
113
80
90
139
94
103
127
89
119
99
80
83
121
111
121
88
107
80
104
69
175
166
76
99
99
155
128
106
134
80
80
76
113
117
128
136
98
74
103
102
78
80
111
154
103
78
89
88
136
106
184
98
99
134
69
64
141
76
148
89
104
175
72
80
121
91
107
111
122
88
80
114
80
199
119
107
87
134
69
96
96
76
140
78
127
88
134
117
135
80
80
80
97
88
154
100
176
104
89
87
122
175
94
80
150
87
99
183
91
88
102
93
175
181
136
85
78
76
127
111
107
136
78
154
89
142
151
76
84
156
72
54
160
94
119
91
80
175
113
66
100
156
134
137
140
109
78
69
95
69
80
72
154
93
78
120
131
119
64
90
91
87
80
69
114
127
129
127
69
99
79
90
104
80
199
175
94
80
126
94
118
88
76
107
76
156
140
69
76
140
54
106
119
85
98
145
136
151
117
69
85
72
76
128
119
122
78
67
103
76
80
154
136
137
121
87
62
101
147
69
80
152
92
74
149
80
78
146
100
80
110
137
114
100
78
183
99
78
175
74
118
144
131
98
175
96
83
99
119
79
110
69
175
132
105
80
88
126
87
114
76
140
71
104
104
122
140
78
134
132
197
145
93
117
76
76
113
88
85
88
113
114
69
94
122
112
69
99
118
76
117
88
105
80
43
124
163
106
140
93
120
175
163
60
128
94
83
127
132
142
80
117
105
76
121
140
106
69
157
69
85
106
107
87
119
138
131
78
109
93
93
76
80
113
154
142
80
123
69
69
99
108
69
87
69
110
94
95
104
102
120
136
109
80
146
112
107
114
120
85
119
54
140
119
112
158
106
181
80
123
175
136
64
83
94
69
83
111
92
154
127
88
126
57
96
156
119
124
80
93
72
69
121
128
79
124
128
76
110
117
54
80
93
154
102
93
94
94
94
128
90
87
78
87
69
80
99
80
138
112
80
80
80
79
142
78
119
128
107
90
78
121
100
69
78
128
80
80
80
131
114
87
107
136
115
156
80
91
94
91
89
91
117
107
175
60
119
155
93
76
122
72
154
119
99
113
197
87
87
109
121
69
52
131
181
174
115
140
109
52
114
123
87
76
118
106
99
175
119
56
120
110
80
80
126
94
154
94
136
80
121
109
104
97
106
78
155
80
163
79
76
187
156
110
88
87
137
106
102
71
99
140
127
95
104
78
175
117
99
79
96
164
95
100
69
94
151
109
76
109
87
69
127
78
102
148
110
88
129
109
109
115
89
110
117
118
91
133
134
136
76
125
94
146
131
72
137
95
107
157
148
114
93
164
88
197
93
69
131
156
117
94
156
114
72
93
126
87
87
143
54
122
87
157
122
100
99
80
85
157
80
178
136
155
151
89
120
69
128
80
119
100
87
91
118
99
175
120
110
80
118
140
87
128
132
128
89
76
69
112
113
69
107
154
72
114
138
80
78
112
94
72
117
151
127
109
162
110
117
102
109
117
109
69
154
154
110
109
120
117
80
106
140
85
113
101
89
76
76
109
87
80
94
80
140
109
83
153
137
163
134
76
137
132
108
150
64
109
134
121
94
80
93
146
80
87
82
103
69
80
82
155
144
120
69
175
155
136
120
131
89
109
109
116
109
94
69
118
117
96
107
121
83
149
103
78
96
152
72
120
80
128
120
109
87
136
80
140
91
76
102
96
143
172
124
91
87
175
88
108
99
123
117
76
133
134
87
102
69
132
69
80
98
112
117
91
90
115
80
113
80
118
87
80
76
80
146
209
95
103
118
100
60
109
81
127
154
154
129
106
154
85
88
128
114
94
104
109
112
72
193
102
87
107
66
107
82
120
174
87
73
134
58
123
169
131
118
148
140
119
106
115
75
87
118
101
108
98
143
69
74
137
163
80
69
131
125
100
80
136
80
145
110
137
80
89
97
129
80
85
75
175
78
119
113
107
78
94
90
127
87
154
89
112
131
69
96
131
113
131
110
140
96
130
78
112
144
154
76
87
69
151
89
78
94
76
101
87
106
76
155
78
113
100
118
91
54
112
131
136
72
95
80
175
87
69
78
110
82
69
82
78
136
154
80
128
124
113
82
101
101
122
107
120
154
121
131
117
69
80
128
109
128
118
96
80
76
133
134
80
90
104
126
119
93
156
113
94
124
83
80
146
78
136
102
155
69
88
87
112
128
78
156
126
104
127
110
134
99
120
118
104
174
87
137
89
43
119
102
94
121
106
78
113
104
128
94
113
76
126
69
115
110
107
87
141
156
71
80
209
87
87
119
89
197
133
120
106
72
147
78
143
151
175
87
109
74
93
106
129
110
80
121
103
128
146
106
69
107
80
107
94
127
99
160
74
131
175
106
143
93
83
100
145
140
101
80
78
172
87
80
169
131
68
155
76
69
151
175
69
172
126
94
156
89
89
120
164
201
91
76
72
69
123
83
106
74
126
80
197
141
101
99
91
121
110
104
87
104
88
80
126
136
80
135
94
95
93
80
88
121
118
87
140
78
78
66
85
78
96
91
101
123
94
74
121
76
80
117
69
101
96
131
80
139
80
99
96
97
121
158
109
76
69
136
109
80
175
165
101
106
175
87
129
104
87
96
148
111
104
197
132
78
94
120
69
127
133
99
94
114
113
87
72
116
137
134
72
89
82
155
76
96
156
117
114
95
112
100
151
88
81
80
140
78
96
69
174
69
130
99
102
123
89
56
80
128
58
137
123
143
74
69
89
98
75
80
154
52
102
99
174
154
169
69
93
80
107
103
197
140
132
91
88
186
80
131
69
102
136
145
106
88
112
88
119
66
164
119
129
72
119
94
121
93
104
151
119
104
90
128
104
80
145
63
80
89
115
91
89
197
80
69
122
107
83
131
128
80
59
147
163
78
80
111
110
119
54
85
111
80
101
99
94
118
101
78
99
128
93
100
76
76
96
83
110
128
107
129
75
147
134
87
175
100
99
120
114
145
80
80
100
127
74
154
92
123
76
80
89
54
69
136
123
88
94
76
145
54
80
97
94
79
78
109
119
69
119
108
87
146
119
78
67
134
131
101
155
199
174
78
64
155
175
123
69
85
95
106
156
78
59
150
119
136
93
89
80
120
137
104
80
106
79
88
80
142
90
120
115
156
80
83
80
99
91
96
79
54
199
80
121
94
156
177
94
159
125
99
94
78
94
80
117
131
111
69
69
80
120
87
100
157
128
104
101
121
94
109
99
76
69
134
88
80
76
95
83
76
148
96
157
69
101
143
118
99
140
119
101
110
69
98
69
76
76
87
109
102
78
175
115
119
69
94
136
120
69
107
72
99
69
69
80
136
72
197
78
104
115
89
101
106
69
156
76
175
119
102
69
87
69
107
144
107
143
116
94
124
134
136
93
85
154
123
91
96
69
121
69
109
131
136
155
109
132
110
69
119
56
69
119
69
151
132
113
109
136
69
110
116
82
87
117
109
127
119
197
106
136
81
175
75
112
128
101
102
88
76
130
80
120
91
100
80
125
101
197
134
80
71
106
183
117
80
88
69
92
102
87
140
78
117
152
124
80
110
113
156
43
121
69
52
69
101
80
127
128
76
101
119
71
119
137
72
107
89
110
136
119
80
69
124
113
69
104
43
69
83
96
78
199
60
120
120
163
154
76
80
119
126
80
120
69
175
106
80
104
80
110
131
152
128
95
113
91
78
114
140
69
109
123
137
157
132
69
106
89
104
69
155
105
181
140
80
80
128
80
104
145
120
79
78
134
110
107
84
96
80
89
132
128
96
103
143
118
94
116
156
74
128
110
87
69
80
54
43
88
76
120
102
129
107
106
101
69
120
128
69
110
146
121
76
128
123
175
136
120
133
110
119
109
114
76
91
131
155
52
87
117
102
136
111
76
93
78
113
96
80
95
175
91
78
128
76
87
99
96
106
114
85
150
112
96
95
78
101
95
110
78
101
139
110
76
78
177
78
117
100
112
118
80
128
128
95
189
127
76
80
90
59
82
96
128
108
87
123
80
80
117
82
116
119
117
91
125
125
146
146
76
89
78
128
89
94
87
43
121
110
84
107
112
78
69
87
78
110
197
95
154
96
96
106
87
133
120
134
79
76
69
113
94
126
89
93
87
80
106
131
88
80
110
140
116
87
69
124
87
140
85
119
84
96
88
80
93
80
131
76
150
80
119
151
69
123
123
118
72
136
130
117
80
76
94
87
117
136
85
112
175
78
128
72
109
110
162
99
120
112
74
151
122
76
131
136
156
130
80
143
131
195
80
151
99
99
110
132
92
136
80
80
119
138
99
83
165
89
154
100
86
109
91
104
96
134
76
69
94
95
156
52
80
69
99
99
120
94
111
105
75
80
130
76
119
80
99
115
110
151
120
110
181
88
110
112
80
145
148
94
146
155
151
121
151
82
106
175
89
78
107
69
109
76
147
88
76
99
87
115
143
80
43
197
109
197
76
100
137
72
77
119
80
118
101
120
94
90
69
78
134
156
107
132
98
136
154
132
154
136
134
129
132
87
69
128
127
72
133
74
130
107
80
112
72
92
126
80
120
119
130
98
98
112
78
108
96
91
127
105
96
73
128
154
88
94
155
185
54
110
87
156
87
137
99
63
59
120
67
98
119
87
80
87
151
113
80
54
111
113
119
159
87
121
109
80
91
78
111
67
134
78
72
87
72
76
117
110
87
69
91
59
69
95
94
76
120
54
117
136
67
128
119
146
75
136
111
131
130
80
104
119
128
154
154
124
80
87
107
143
108
87
120
111
110
78
120
117
88
80
80
80
121
80
107
109
87
149
102
110
119
60
127
69
78
78
89
89
141
69
80
80
123
87
88
87
88
96
111
78
156
155
87
110
109
112
128
133
131
140
175
183
137
78
94
197
87
80
122
146
127
106
98
127
126
101
93
125
73
102
54
128
117
134
119
78
80
122
87
85
87
91
112
156
78
76
80
115
137
175
123
99
106
131
72
128
102
143
87
104
120
126
69
124
99
197
87
110
129
104
119
69
114
78
108
93
89
115
151
114
88
94
107
69
130
76
101
76
110
132
88
120
137
91
137
69
87
80
69
93
102
76
151
120
107
120
89
94
131
156
80
134
106
56
152
87
99
124
78
169
143
107
76
154
163
99
96
174
110
137
94
88
106
80
69
74
109
87
154
122
76
89
119
112
76
124
197
98
76
69
81
117
134
66
80
175
175
127
113
101
69
126
76
143
137
109
80
163
114
78
94
155
128
74
119
115
110
104
104
197
120
113
154
52
98
80
119
92
94
115
133
128
69
102
88
78
121
95
72
153
163
88
120
67
80
79
119
111
93
110
120
178
90
124
122
154
79
112
54
80
133
94
87
101
164
119
91
154
120
69
149
140
90
164
80
117
104
80
96
69
102
101
76
69
140
88
112
160
85
175
112
89
93
109
85
69
145
113
102
87
155
107
131
83
110
155
87
80
142
119
87
145
144
155
76
122
151
69
78
89
118
101
138
110
91
130
118
126
128
105
85
78
107
90
141
104
175
94
78
59
82
126
151
148
87
175
106
112
116
72
80
154
99
114
76
128
89
93
118
119
80
140
96
88
128
99
119
128
89
131
91
96
104
144
120
87
94
69
94
94
150
151
69
109
88
80
165
78
118
119
110
123
58
80
79
175
117
52
99
72
105
80
201
96
78
91
128
87
109
117
134
134
76
117
78
93
87
106
197
82
96
88
78
99
154
94
100
115
118
100
109
115
131
88
99
101
74
115
134
80
120
76
89
133
80
119
90
80
175
78
117
175
114
69
107
151
76
104
69
82
111
142
88
99
87
104
80
128
103
112
94
122
89
133
120
76
127
99
69
80
69
133
144
117
91
166
144
69
105
87
125
78
69
80
100
103
80
67
96
80
83
175
119
103
131
98
125
96
88
113
115
156
110
80
87
94
87
134
69
99
156
80
80
121
67
69
137
112
69
152
85
128
123
87
80
113
80
137
69
118
110
110
112
109
153
76
154
52
137
80
89
109
91
100
88
80
78
136
93
99
69
87
93
118
151
144
106
119
113
126
154
76
120
107
88
110
88
152
104
121
106
104
169
80
112
80
99
112
87
87
72
78
107
54
97
80
154
76
133
80
144
140
99
78
144
82
164
69
119
75
89
69
78
67
87
113
120
112
69
69
143
140
118
112
87
121
78
104
183
163
93
107
88
88
102
82
106
69
104
76
114
76
113
123
117
107
156
69
120
141
111
175
89
155
87
121
96
72
104
76
107
89
154
100
69
69
107
129
197
107
91
124
99
120
119
80
101
88
89
145
121
120
78
119
107
143
121
131
109
87
90
115
147
80
94
99
69
131
89
155
80
146
120
127
82
140
69
112
78
75
110
69
120
119
107
115
113
137
120
78
101
72
139
163
110
80
131
128
156
102
80
121
110
140
81
132
120
76
157
89
130
78
120
128
131
103
69
154
80
127
112
128
99
80
110
151
160
100
88
130
76
112
175
69
67
110
163
89
66
160
128
156
78
103
122
109
89
154
80
91
98
131
80
88
156
145
117
104
104
99
104
137
120
122
102
59
69
123
107
127
139
107
143
128
152
87
100
128
69
69
107
96
69
71
116
87
78
175
130
175
114
106
144
175
80
129
109
80
74
137
102
54
93
155
128
187
151
80
80
113
79
85
155
110
80
181
69
80
111
91
146
85
98
76
99
106
69
107
163
127
80
80
106
87
134
109
201
80
110
164
80
72
117
102
79
90
69
117
121
101
138
69
115
80
109
69
112
120
78
121
132
119
129
87
110
143
119
117
112
145
69
80
156
120
89
87
69
99
133
120
101
119
109
116
129
107
148
154
80
94
74
93
88
131
76
127
129
87
69
110
119
97
69
143
127
151
91
72
100
145
106
100
112
80
114
82
103
69
83
113
98
121
119
112
100
140
104
137
124
128
98
90
120
156
79
151
135
130
101
110
142
154
76
78
78
129
114
143
154
175
197
119
113
87
104
110
96
155
112
102
94
197
88
69
103
103
78
80
175
69
66
87
129
88
120
115
90
96
81
56
110
56
126
134
72
56
104
103
79
130
101
136
118
106
119
100
93
87
117
119
78
102
69
94
69
95
78
87
80
74
128
90
80
120
134
131
119
155
80
69
139
120
100
99
201
94
112
97
54
74
109
138
126
122
80
88
119
92
113
93
88
69
87
127
69
96
78
154
121
80
117
146
107
74
110
93
104
136
128
147
150
111
100
103
99
109
100
196
106
80
107
161
101
87
94
69
89
107
93
104
139
149
80
69
160
126
113
78
201
87
85
164
127
96
111
117
163
124
80
72
99
155
121
89
80
80
80
82
129
175
137
124
56
76
130
80
133
66
88
106
109
93
87
119
107
100
80
74
106
120
185
82
112
129
69
96
72
87
133
109
160
99
106
133
165
109
80
215
140
119
107
69
80
89
99
96
109
110
69
120
74
137
138
82
69
99
80
99
103
96
107
99
126
119
119
117
109
89
128
120
114
120
115
56
95
152
91
137
69
67
94
80
78
80
80
103
89
119
109
73
129
113
117
88
78
112
92
91
113
99
151
155
159
156
112
69
87
130
120
101
78
88
87
153
99
117
136
149
119
127
137
78
117
74
72
76
69
154
154
100
118
126
107
114
121
80
69
97
130
123
156
130
199
80
142
111
136
127
91
76
91
80
172
133
147
72
119
141
69
169
87
71
96
109
102
80
69
54
131
120
76
104
80
127
134
123
121
110
111
87
117
120
143
98
89
101
93
85
87
69
160
163
78
108
175
75
107
106
93
178
119
80
85
60
87
80
120
93
187
89
80
69
93
154
120
75
82
80
69
78
154
87
143
78
154
83
56
120
109
137
74
91
74
76
107
94
107
96
94
107
128
89
111
155
109
78
105
175
112
122
75
137
69
141
106
102
80
156
78
199
113
123
79
104
87
81
99
144
54
120
109
145
88
69
101
109
80
80
122
78
80
99
110
99
155
69
110
128
72
137
95
63
92
104
124
112
118
77
183
164
130
119
118
85
119
133
109
118
140
100
69
120
69
80
106
127
80
52
113
121
113
80
124
145
101
101
126
154
140
89
93
157
76
80
69
80
80
120
113
113
87
140
128
87
82
89
136
69
134
94
126
109
78
143
109
132
106
142
76
199
76
119
113
137
76
128
101
80
197
94
113
155
96
93
76
87
89
172
115
80
125
137
99
115
80
74
80
66
110
107
126
78
75
80
69
113
143
76
87
140
136
154
93
87
154
69
130
96
59
78
104
91
144
85
69
150
76
151
79
107
129
154
125
154
72
90
91
110
134
100
122
80
100
149
119
79
69
80
56
69
89
146
78
69
131
54
118
101
78
85
60
106
127
80
85
107
85
112
80
164
143
140
107
114
104
113
137
102
87
80
93
76
128
78
140
119
69
113
141
164
80
118
131
107
128
87
120
104
151
87
76
126
110
92
123
92
91
105
154
78
78
69
89
156
121
69
69
97
131
128
78
80
156
109
80
119
139
128
110
152
87
113
96
99
134
133
136
80
78
89
118
91
80
96
127
88
116
87
137
131
96
76
80
69
76
76
91
102
107
107
102
101
104
157
140
113
76
148
78
87
78
78
104
123
133
126
109
115
88
174
80
117
88
98
126
106
128
127
151
110
78
121
109
80
79
120
140
107
128
163
69
138
109
106
146
112
101
85
110
75
144
100
120
154
165
161
80
148
76
78
131
115
185
121
130
69
151
124
101
69
104
72
69
52
69
95
106
93
76
135
140
100
85
160
107
87
134
87
107
87
153
78
147
175
80
150
120
109
107
114
107
80
80
69
80
121
76
113
118
132
107
112
89
155
120
110
94
87
98
154
104
154
154
78
126
112
89
137
141
89
111
104
119
80
172
113
80
127
113
76
87
80
80
110
119
80
93
87
110
80
52
69
89
101
90
69
114
104
69
83
69
119
109
87
75
100
130
128
102
88
91
87
80
126
123
113
144
80
80
119
142
129
93
88
107
100
52
69
128
123
78
145
76
80
87
124
103
109
102
99
126
76
116
107
127
83
76
165
77
138
93
99
165
119
72
113
120
103
149
155
110
109
94
69
80
90
146
89
69
91
78
120
88
138
104
87
64
106
117
109
94
88
114
201
76
121
163
69
112
87
60
151
80
127
155
87
117
78
76
119
157
148
52
80
87
164
111
148
117
128
93
144
89
121
120
112
87
126
155
156
71
69
78
136
136
136
93
83
156
120
133
83
141
98
101
78
87
88
94
100
120
175
112
128
128
69
69
76
88
116
140
87
69
112
106
107
80
80
154
115
76
85
52
88
119
109
106
175
87
69
130
151
103
89
98
148
54
110
80
134
101
109
87
106
175
96
81
128
106
102
104
69
136
85
102
120
99
126
103
155
69
154
80
156
80
100
88
91
119
113
112
87
69
104
109
100
80
117
93
145
69
69
119
102
109
79
80
120
104
104
79
56
121
69
199
121
88
80
76
118
154
163
102
81
78
110
114
94
98
80
126
69
105
146
129
75
74
107
69
69
69
69
89
107
80
72
76
89
112
88
87
95
123
156
120
156
99
80
89
69
166
76
164
99
80
87
127
76
113
175
117
69
112
151
87
134
130
133
119
109
114
104
80
121
176
137
84
115
91
78
164
127
76
69
109
67
85
128
87
79
107
104
104
120
67
151
122
118
83
136
92
88
121
175
136
140
114
80
152
74
67
91
112
80
109
80
94
120
122
99
69
136
101
119
95
111
121
127
134
91
83
93
87
119
80
76
69
72
78
139
66
76
67
72
69
146
151
115
80
115
116
128
148
78
69
104
106
128
72
100
102
96
121
80
80
151
187
175
78
160
134
118
117
75
87
155
96
88
128
80
80
104
96
104
83
79
76
113
122
78
72
154
78
136
110
175
107
52
145
120
131
130
80
125
99
75
121
121
92
104
71
83
181
91
99
146
119
102
175
82
123
104
175
122
113
91
80
110
114
140
56
144
99
95
78
87
79
107
106
131
113
164
104
99
89
82
113
143
175
128
94
99
117
85
76
145
117
96
103
122
127
109
80
80
76
154
87
104
120
126
98
131
133
87
175
128
107
109
99
131
133
66
120
131
93
133
89
110
69
120
120
134
125
103
115
127
87
122
69
80
94
117
101
101
164
90
76
122
133
78
122
98
124
138
80
87
175
134
154
126
80
169
80
90
69
100
96
128
72
100
76
110
155
82
112
163
141
106
89
80
104
166
104
104
110
147
87
130
118
87
104
129
89
143
62
146
133
136
117
106
131
117
109
156
144
128
80
122
131
69
69
197
131
69
102
111
146
123
143
121
87
102
80
107
140
119
175
106
78
72
106
105
80
90
91
132
121
87
74
128
87
99
87
128
79
118
94
128
87
120
76
175
110
115
80
69
78
109
72
80
69
72
131
119
136
102
94
69
130
129
93
121
96
162
76
163
76
101
69
80
115
107
82
131
175
151
197
119
141
69
119
131
69
87
104
120
146
123
112
121
117
112
134
110
132
131
80
94
127
80
83
104
154
78
72
143
104
94
98
80
52
93
80
80
101
118
119
96
119
85
131
130
90
69
74
140
89
143
175
127
80
98
78
129
119
100
107
100
80
78
104
119
80
87
80
88
80
78
56
119
132
144
99
89
80
131
109
144
76
110
175
175
108
122
96
93
120
80
76
135
139
64
136
99
104
104
136
113
175
128
69
114
109
101
131
154
128
131
80
109
108
87
119
197
78
112
74
56
151
74
163
69
128
154
88
88
125
78
123
166
143
120
76
111
155
126
43
109
154
119
88
110
56
113
87
80
92
82
89
114
95
94
113
75
150
96
95
102
104
164
92
78
76
155
136
106
106
88
69
93
117
126
121
91
147
69
56
87
113
97
78
107
175
80
136
107
72
133
174
100
115
76
145
89
94
112
127
94
119
95
69
80
154
155
83
80
80
106
80
142
154
93
122
128
156
75
80
69
97
113
104
136
99
69
106
163
69
106
148
164
80
110
109
80
185
145
144
56
87
132
120
147
94
119
96
59
110
91
69
94
107
113
80
104
93
80
78
160
78
119
154
117
88
78
126
136
135
56
96
99
80
80
119
87
147
93
151
79
98
94
131
101
120
118
89
120
145
105
117
119
107
124
69
87
109
117
151
118
197
80
80
149
101
120
97
78
109
143
96
109
94
185
95
109
78
56
89
109
87
156
119
136
137
123
120
136
175
101
86
132
121
106
155
163
80
118
127
107
89
96
69
120
122
113
154
99
87
103
120
83
82
80
110
134
85
139
114
80
113
117
161
78
143
197
120
146
69
104
117
80
155
127
137
111
107
134
102
106
110
121
146
69
76
94
99
80
115
115
123
80
121
72
87
197
69
112
113
117
152
99
69
117
104
113
119
155
146
121
78
106
136
119
69
85
69
94
106
94
91
119
85
97
89
96
76
115
164
160
72
99
104
107
123
119
80
106
118
88
87
94
117
122
85
117
93
80
120
74
113
131
119
87
79
93
136
146
115
93
78
117
87
124
69
78
80
126
107
89
76
128
91
109
107
80
120
76
99
89
113
143
106
119
78
95
94
80
87
150
136
162
112
117
80
106
91
76
96
78
120
72
174
154
99
112
94
175
90
133
154
120
136
78
102
155
156
118
164
137
76
87
119
69
91
72
104
132
105
110
112
120
199
96
83
130
78
80
87
93
102
146
109
88
83
156
118
80
85
134
89
80
109
144
134
175
104
80
89
112
94
119
91
80
138
175
161
78
157
175
76
113
73
121
98
112
74
78
96
78
77
104
80
56
130
106
95
123
107
120
80
79
111
74
136
100
107
123
154
106
121
147
98
119
128
140
69
56
80
119
76
88
68
88
144
120
94
114
109
78
76
112
164
145
93
107
80
94
96
76
95
69
94
76
143
106
128
87
120
106
96
89
80
147
80
134
118
133
121
199
80
112
127
151
163
119
132
76
80
95
109
78
134
101
87
103
140
89
100
88
129
111
79
136
129
136
87
131
87
187
136
96
100
160
110
120
128
113
91
76
127
69
126
136
199
100
79
90
69
114
69
163
83
80
94
94
79
109
102
94
67
121
87
89
69
117
99
128
122
94
102
87
74
66
71
85
134
102
101
69
89
99
128
131
121
54
80
83
119
197
142
119
113
89
107
122
143
64
117
129
82
94
110
87
83
111
128
80
182
121
108
100
129
109
96
176
56
87
156
163
164
106
104
96
129
151
131
72
156
134
124
88
80
78
107
66
88
89
81
94
80
117
66
114
197
119
138
123
83
89
104
107
74
112
154
154
156
69
94
80
83
119
100
106
140
71
113
80
121
78
119
119
98
137
78
109
119
108
72
101
115
80
80
117
80
69
134
128
119
111
148
109
80
89
107
104
69
69
102
69
69
78
138
117
88
136
107
134
128
80
140
107
78
92
80
134
78
140
122
102
120
100
129
120
131
115
117
78
145
120
132
69
76
80
120
112
106
78
69
85
78
136
85
117
99
121
104
132
69
101
87
145
76
119
129
95
115
129
117
101
80
78
156
80
80
89
155
106
197
114
140
174
93
72
197
78
52
102
137
81
126
185
117
72
127
58
90
78
119
151
69
94
104
132
90
104
104
111
109
134
93
110
78
107
130
79
164
155
109
106
78
106
69
80
92
56
103
197
138
122
80
87
112
162
145
111
174
110
134
96
117
126
87
78
128
90
123
110
80
94
144
136
85
87
151
143
132
107
154
58
117
110
110
128
80
52
175
109
78
64
146
139
136
120
80
88
72
104
72
120
145
88
120
54
93
74
119
80
80
94
88
110
99
185
96
118
116
89
78
69
78
88
110
101
69
99
76
143
119
112
76
110
133
125
102
131
160
134
74
69
94
74
107
121
78
120
109
94
119
162
115
78
80
76
72
80
104
126
120
119
106
122
74
76
72
66
133
134
175
43
73
137
87
106
80
87
88
95
76
80
109
143
117
130
72
164
81
183
69
106
121
80
80
89
87
122
107
175
109
80
199
159
109
56
87
100
112
137
100
78
154
147
145
203
175
140
107
129
119
165
107
143
122
80
78
124
78
69
132
92
160
107
131
113
109
87
140
69
78
112
136
80
160
136
120
144
94
89
126
80
162
112
120
94
145
118
112
197
128
72
119
175
78
75
116
110
120
85
104
112
120
107
90
121
74
89
130
66
115
119
99
99
80
120
99
87
80
154
78
185
76
154
78
86
99
74
69
69
152
120
89
96
104
107
132
96
137
106
111
100
107
146
151
109
113
106
88
87
115
64
106
96
175
74
121
80
106
80
89
134
128
69
106
113
127
146
80
134
148
151
119
111
90
78
104
104
80
95
127
102
98
136
105
146
102
122
156
99
80
119
133
80
101
102
136
104
76
162
89
91
78
119
132
156
115
140
88
113
155
164
131
102
100
120
87
78
131
146
131
109
80
118
134
113
107
148
134
87
107
69
94
80
112
104
87
94
100
79
76
123
89
96
43
98
110
175
93
89
121
80
109
109
71
69
100
80
113
88
127
164
98
106
69
112
102
79
102
103
117
80
123
100
147
103
126
76
166
80
78
76
74
104
154
107
80
113
156
86
101
101
119
80
101
78
69
126
78
119
117
156
94
93
99
154
103
156
88
111
72
80
130
143
109
69
91
111
80
121
94
76
80
80
85
94
119
78
76
141
87
69
143
138
113
99
68
164
164
107
78
76
119
160
69
127
96
134
92
123
126
90
136
93
99
74
138
119
66
121
154
120
107
109
101
109
117
197
72
85
104
69
80
158
175
76
58
118
72
115
58
119
112
87
153
83
111
136
161
80
76
148
80
130
85
87
100
92
74
80
125
161
78
74
111
87
137
114
94
117
52
87
140
83
78
87
141
110
124
120
164
197
113
113
120
88
88
80
134
96
119
80
94
114
87
136
87
58
102
69
126
137
117
80
91
99
175
87
88
107
108
155
99
87
120
110
87
131
155
128
74
54
103
151
142
145
80
94
163
69
106
103
102
78
197
128
107
112
119
93
103
109
155
113
80
140
119
77
56
87
80
80
80
87
73
112
57
175
120
126
76
104
120
145
101
74
69
144
80
78
183
79
128
148
87
69
109
177
140
126
120
90
127
83
80
56
96
142
112
115
99
161
100
112
91
136
80
101
93
154
113
85
117
121
119
123
91
121
116
100
175
137
76
175
87
143
154
126
113
107
140
139
89
88
80
89
106
121
101
80
126
110
125
78
89
163
56
78
125
109
101
83
91
66
89
76
88
118
89
54
88
149
120
132
136
181
113
121
69
171
69
140
80
88
62
149
94
124
197
154
56
140
80
80
78
66
177
197
67
80
107
117
96
104
102
104
87
110
145
133
127
142
106
89
94
87
135
89
94
92
75
107
97
119
143
154
80
143
110
80
106
99
91
164
96
152
145
91
80
87
134
123
124
85
69
76
119
159
92
121
69
95
89
80
93
52
112
74
187
88
110
87
74
80
109
143
88
154
109
175
129
119
87
181
83
88
103
175
80
80
106
120
124
136
150
108
88
150
69
87
134
155
69
142
153
80
54
121
80
108
123
175
122
80
113
80
88
87
91
105
106
80
112
72
146
104
87
113
119
69
99
69
67
134
148
131
121
80
84
175
101
54
137
111
120
112
76
136
128
52
106
76
123
151
64
72
87
101
140
126
89
95
140
131
123
127
93
134
144
114
89
69
54
175
107
115
99
80
95
80
76
128
112
96
85
135
103
69
96
136
82
78
94
154
174
120
79
80
132
87
101
107
121
104
87
83
140
69
80
110
76
119
69
147
132
120
201
117
175
145
154
180
111
80
176
134
69
87
127
121
98
106
80
138
69
175
127
155
134
120
99
160
114
148
128
74
123
131
150
69
103
100
155
129
117
115
130
76
151
119
154
136
69
72
93
76
145
69
90
152
85
143
94
109
80
72
126
88
102
163
78
116
110
117
69
79
134
155
96
136
80
76
80
100
80
98
106
151
104
136
80
52
87
124
163
78
78
80
135
127
87
144
155
80
66
199
112
121
121
80
66
87
126
78
155
80
101
69
134
136
91
76
131
69
87
106
120
139
80
169
124
109
123
80
117
136
86
121
134
163
87
66
88
69
101
133
131
107
87
119
76
112
129
104
175
76
109
107
100
101
120
134
117
117
104
88
76
83
102
164
145
119
80
99
130
69
98
80
89
80
138
98
52
130
164
76
102
69
133
93
113
80
76
77
88
131
106
119
124
131
114
130
118
78
74
76
154
69
92
134
156
91
69
128
109
80
80
78
145
88
110
76
119
87
58
60
119
89
69
58
76
152
121
69
80
110
103
145
76
131
78
137
118
149
154
137
114
69
69
88
120
164
119
104
87
106
118
112
71
102
80
197
127
78
76
89
104
100
76
87
104
107
80
56
72
76
120
102
201
134
175
134
110
93
119
87
136
137
119
187
164
148
76
69
155
111
87
105
89
89
69
113
117
120
107
112
95
107
69
80
151
69
109
78
114
131
69
103
56
102
92
145
101
113
97
128
132
104
138
117
72
87
94
131
76
98
88
80
76
131
69
97
99
76
91
101
78
80
110
131
113
103
89
80
94
76
109
138
125
87
72
87
83
120
80
95
121
118
80
147
130
94
69
89
87
97
116
99
102
56
100
85
151
69
78
109
113
76
125
113
80
70
104
94
130
120
100
80
144
134
142
155
69
107
124
80
150
107
80
152
151
107
120
112
99
67
134
87
74
111
76
93
94
128
89
109
87
87
91
128
96
115
164
119
113
160
115
99
125
87
110
80
131
115
80
87
89
106
157
104
88
80
72
101
54
109
109
110
113
120
98
77
88
197
127
156
107
119
134
131
109
128
121
163
117
165
144
87
87
69
99
100
72
110
76
156
94
130
131
118
125
109
125
104
104
134
87
87
137
69
94
138
80
69
136
72
93
112
96
120
143
98
87
87
69
69
78
80
120
155
96
175
165
85
122
121
80
134
109
89
109
104
85
118
120
121
111
128
72
111
119
89
98
80
68
163
99
69
69
118
89
96
91
78
69
95
94
119
111
102
137
107
131
78
107
175
99
56
79
87
80
78
75
151
128
87
128
156
150
69
119
58
96
146
145
132
135
113
87
93
67
109
78
155
107
87
175
128
107
102
76
94
69
69
88
97
106
80
119
107
107
94
101
144
80
94
85
93
127
109
151
98
88
78
197
107
87
93
185
101
80
93
80
74
119
87
89
116
80
95
87
94
80
83
54
78
80
107
69
119
98
110
87
138
67
78
160
121
80
128
181
120
112
72
87
151
113
52
88
69
101
78
134
107
118
96
119
92
110
80
80
80
120
143
78
107
99
128
175
69
142
117
110
80
129
143
121
127
123
106
80
80
175
80
117
132
175
66
101
101
109
165
84
78
104
78
60
76
96
110
138
151
120
119
81
69
129
132
78
148
69
76
134
108
54
156
106
157
78
104
143
104
140
72
87
76
120
76
89
104
119
115
122
89
74
52
140
80
154
80
88
128
69
124
72
80
128
146
54
154
88
88
110
119
75
106
163
109
142
106
104
94
87
80
93
78
113
114
115
128
88
64
101
106
110
111
110
73
92
150
116
135
115
106
100
97
99
95
107
80
87
100
89
128
140
117
76
69
72
155
130
72
92
72
112
89
88
145
67
78
88
72
91
94
96
139
110
80
79
132
80
120
121
80
131
76
101
96
106
83
126
96
120
69
109
120
145
99
87
109
124
69
78
95
89
119
123
78
74
119
128
69
128
121
187
93
112
125
76
80
100
99
138
140
106
113
76
109
78
80
92
128
108
93
113
102
74
112
69
89
146
69
83
134
93
109
100
147
117
101
78
151
80
78
187
112
80
66
117
109
124
175
93
166
112
138
125
66
119
75
113
87
78
120
104
80
119
56
94
162
63
87
72
80
154
89
78
72
110
157
71
98
162
96
69
139
175
80
94
120
99
119
111
83
78
102
80
127
96
117
78
137
119
88
87
119
69
76
131
176
91
107
155
197
104
115
119
100
125
107
79
76
82
155
69
131
158
88
107
89
117
104
100
155
80
117
80
107
78
119
69
111
123
69
90
80
89
88
64
135
100
93
119
136
80
80
94
99
87
144
107
85
69
69
113
128
87
74
78
144
87
78
121
72
128
164
87
101
99
146
69
134
102
119
76
136
64
82
137
94
120
121
69
78
120
145
140
87
78
102
52
119
131
141
106
88
88
142
80
80
122
128
119
106
69
114
76
89
69
110
80
96
96
91
80
87
118
120
97
80
89
89
140
89
94
80
104
151
101
80
88
132
147
72
84
124
125
137
109
113
134
113
128
69
76
119
80
102
80
147
76
107
88
68
90
93
90
101
156
174
159
94
107
106
125
113
147
87
99
80
109
120
160
156
69
119
140
129
79
113
119
104
127
158
75
99
134
121
120
83
163
128
134
93
69
88
80
119
87
131
78
76
142
80
78
112
96
56
107
69
107
104
79
109
92
80
107
98
88
89
63
52
91
93
156
69
133
69
80
154
130
90
76
134
154
119
162
69
143
91
140
109
197
54
119
109
104
63
72
87
151
76
99
113
104
89
113
119
102
69
69
119
94
107
95
113
83
99
122
157
143
117
150
109
102
114
134
89
140
119
99
107
95
88
102
87
119
109
93
97
151
140
89
134
112
99
69
160
150
199
88
111
80
131
80
134
91
134
104
76
145
101
76
148
69
164
137
80
92
99
76
80
89
120
99
126
175
87
87
115
158
81
87
80
95
128
77
101
120
144
128
128
80
94
66
94
107
109
146
80
87
114
80
93
94
88
74
72
80
102
156
107
154
75
118
112
78
106
126
80
154
128
80
102
64
127
107
149
80
78
56
150
113
80
69
100
163
131
73
160
72
69
81
136
131
80
110
113
52
113
89
87
80
125
137
107
112
118
76
100
104
106
68
76
119
120
54
80
96
110
117
119
75
160
174
75
78
100
112
80
56
117
71
99
56
69
110
145
131
85
115
131
99
110
89
80
175
54
100
119
145
163
80
96
131
93
80
175
117
123
109
115
109
94
106
79
107
80
120
80
107
162
126
69
114
74
146
87
128
43
78
106
80
78
89
128
122
89
110
99
93
96
138
113
125
148
133
72
78
154
88
156
76
185
107
74
136
164
128
104
76
109
117
107
106
129
69
75
80
69
88
146
80
160
117
78
156
125
119
121
169
134
87
66
79
69
78
117
80
104
134
105
80
78
80
144
90
129
102
98
144
80
78
158
99
89
80
156
107
107
78
126
137
69
109
88
69
113
83
119
129
151
101
112
94
133
73
109
107
146
175
175
89
89
119
156
82
120
175
109
143
128
112
124
88
95
199
76
94
99
80
75
92
111
76
128
137
96
80
80
175
76
175
95
162
197
69
69
75
87
120
132
118
102
66
91
75
52
80
109
112
89
93
93
104
119
99
81
175
93
148
142
76
174
94
89
69
87
69
107
80
94
78
99
80
87
91
115
111
130
109
101
88
110
120
80
133
101
147
60
69
99
185
122
74
76
151
154
139
134
129
122
107
94
110
80
72
156
103
156
80
120
110
81
113
117
80
43
104
110
69
79
154
95
123
88
90
129
121
162
87
56
136
54
136
117
117
107
145
123
99
137
121
112
80
110
124
109
157
140
89
76
73
87
78
68
128
148
87
87
80
80
110
119
80
117
79
108
99
110
69
122
148
111
138
104
142
147
106
138
100
128
72
114
134
178
78
69
153
69
117
131
89
112
52
87
80
124
107
76
134
80
67
87
117
169
187
75
83
87
155
148
98
87
128
110
128
153
109
69
94
120
112
122
56
80
69
72
120
56
128
88
91
96
136
96
126
81
104
120
197
119
124
96
133
85
117
86
122
94
80
69
80
99
134
154
78
119
131
112
110
78
146
58
102
89
54
137
133
101
80
119
139
107
99
126
78
74
146
91
96
137
114
91
89
134
117
91
76
114
100
81
101
106
69
76
120
89
118
69
106
128
80
100
78
143
113
107
154
94
75
78
123
94
93
115
54
150
174
127
151
109
142
139
151
107
54
78
69
106
119
127
56
154
109
80
119
154
151
120
69
175
93
72
106
78
80
137
102
134
91
79
97
132
87
120
117
155
92
111
69
85
87
85
72
113
137
109
122
54
96
156
87
136
197
69
69
100
85
132
107
91
87
123
60
94
87
74
148
121
95
93
128
96
120
59
76
76
143
93
96
145
80
88
98
111
126
76
80
95
80
112
87
103
104
57
93
122
109
110
90
69
109
102
115
69
183
94
175
87
76
94
130
80
102
154
88
69
80
83
119
76
119
88
80
87
148
80
145
122
103
80
125
69
74
101
90
116
128
106
113
79
87
80
130
128
107
99
112
69
110
119
143
110
119
155
175
95
66
89
120
131
99
69
111
134
76
80
110
80
80
115
79
138
134
69
104
74
107
119
120
148
78
88
101
88
131
99
69
131
69
69
80
115
117
99
78
69
111
109
107
109
110
107
134
108
128
171
91
112
80
54
99
120
80
112
76
89
96
147
76
140
107
76
113
141
102
99
123
126
74
87
199
66
94
107
160
94
104
115
151
120
152
117
100
126
76
175
96
119
116
154
89
76
93
75
88
117
114
82
80
88
87
128
88
85
107
122
80
78
88
143
119
109
106
165
89
89
119
72
87
93
164
82
156
80
80
114
104
123
99
128
109
72
87
114
120
155
117
155
185
119
69
155
151
72
107
131
121
88
101
120
110
72
140
76
112
89
89
112
134
114
156
148
93
93
133
127
114
80
80
80
127
102
119
113
69
120
119
80
103
99
69
62
93
123
78
69
104
95
109
120
87
175
164
125
93
56
112
93
76
89
93
72
107
124
67
69
140
106
84
76
154
154
88
87
54
104
109
118
101
80
101
87
85
80
93
68
87
107
140
109
128
126
137
69
175
154
131
177
78
120
69
87
114
119
87
120
81
109
114
69
112
79
136
93
104
123
119
106
163
100
91
69
69
111
187
76
107
110
69
87
122
128
107
122
175
113
72
74
124
136
96
124
107
78
75
87
120
129
123
133
99
87
104
136
101
69
69
69
154
130
121
155
101
128
76
101
120
76
64
76
80
144
154
76
104
56
109
69
89
87
88
155
134
78
101
87
131
87
114
83
151
76
109
106
159
87
124
91
127
137
131
80
98
115
94
69
112
103
106
129
104
113
134
136
121
110
117
69
101
78
107
113
89
136
87
56
80
69
90
113
144
104
143
87
89
112
160
136
100
80
91
69
69
150
69
69
121
128
80
83
76
119
78
139
54
101
131
104
89
77
110
72
93
150
151
96
140
209
109
128
69
140
87
80
119
145
159
117
80
104
128
128
128
163
89
75
160
89
119
123
69
119
128
137
120
175
130
117
134
85
175
92
91
151
131
80
103
131
91
131
80
119
67
80
117
144
121
78
80
97
69
78
151
123
124
120
129
94
80
113
85
87
112
80
76
80
133
125
89
82
154
128
113
156
78
120
120
76
80
91
54
94
72
90
96
127
80
113
72
130
103
76
88
87
85
109
156
69
140
69
76
115
128
80
128
117
128
94
125
69
120
99
121
69
90
120
124
80
102
107
185
80
56
76
111
80
117
102
119
69
69
76
102
110
80
76
111
128
136
159
109
85
69
76
69
137
97
54
69
80
110
69
120
107
80
108
107
136
154
118
129
104
175
85
80
98
99
72
107
99
147
160
75
140
107
126
175
123
154
93
85
123
90
123
104
96
69
90
134
103
69
78
87
122
88
69
134
80
143
115
99
69
94
117
109
98
96
93
71
103
88
98
119
87
104
120
80
78
107
87
130
120
99
91
69
128
156
134
76
78
76
69
113
85
99
128
127
131
107
175
87
104
125
112
126
78
175
94
80
93
89
111
119
99
54
87
136
175
76
89
109
97
76
126
113
92
91
112
140
148
91
107
107
95
162
89
101
78
119
96
154
69
73
111
119
120
106
87
92
101
93
99
133
131
120
66
121
119
155
145
43
89
155
89
101
100
154
87
94
98
93
148
87
88
88
85
102
136
76
119
78
164
87
164
78
144
106
131
96
69
113
147
78
74
128
134
156
104
94
100
140
175
76
87
128
72
119
85
113
69
119
93
126
197
110
115
91
107
78
118
148
119
76
140
76
120
93
146
110
143
119
80
122
96
76
78
80
137
143
99
137
69
110
109
197
93
69
78
75
140
134
69
112
56
143
89
119
110
142
154
120
144
151
83
125
76
80
80
146
80
107
154
113
87
56
120
106
127
117
106
76
76
119
120
142
145
109
93
90
80
106
120
76
88
88
163
89
68
74
122
114
69
94
93
136
121
151
163
155
78
96
78
143
91
72
76
113
80
87
137
125
92
76
98
74
94
117
197
117
96
69
69
134
174
137
80
120
78
119
102
80
99
101
78
113
109
72
80
133
133
107
100
101
76
69
107
80
119
109
129
69
87
142
78
103
78
69
87
134
140
76
101
80
119
82
56
76
175
74
72
69
112
83
102
123
113
78
78
69
110
69
120
104
76
69
127
76
129
140
80
52
80
78
99
131
101
78
175
119
80
87
199
88
118
63
78
143
93
76
80
112
101
154
80
175
119
89
69
80
157
128
115
116
72
80
146
117
132
110
155
89
78
145
118
69
119
104
120
130
94
119
142
126
150
115
110
71
128
113
160
140
99
87
123
80
175
64
87
52
175
78
101
74
110
91
106
151
91
154
108
146
86
86
117
78
154
93
80
78
69
109
156
88
93
120
127
126
128
88
79
93
109
110
80
92
79
130
69
87
69
133
146
75
80
149
134
88
99
100
80
90
127
119
88
69
80
110
99
175
78
87
76
99
128
89
134
98
154
143
115
174
72
113
69
121
59
76
54
136
80
89
101
111
76
154
109
112
126
76
94
114
133
128
88
96
76
107
110
133
88
101
76
102
100
104
78
69
119
131
181
183
123
78
175
80
130
87
80
80
95
75
91
133
136
117
162
131
137
163
119
80
94
89
87
116
96
87
99
140
123
117
80
72
130
145
75
88
128
123
59
102
78
94
101
106
131
97
80
99
90
80
102
127
151
125
110
76
66
78
127
107
142
138
80
119
74
121
104
102
76
78
69
104
141
83
119
136
80
98
137
156
130
70
154
160
78
126
99
78
100
112
106
155
166
80
80
98
107
107
98
119
120
80
69
87
69
78
132
80
119
109
109
94
132
113
201
113
104
146
78
113
78
72
107
87
76
78
119
104
90
89
94
94
91
110
145
99
88
107
80
175
78
126
148
69
77
69
110
108
116
164
76
69
138
80
107
79
80
76
89
144
87
160
137
80
156
111
91
123
87
69
87
69
95
78
133
52
93
128
74
119
145
103
117
119
80
80
115
107
76
80
68
80
106
120
95
126
99
80
118
80
111
100
69
111
165
76
144
174
147
96
85
132
101
175
156
106
87
99
72
69
69
94
100
118
96
110
102
133
134
89
87
103
83
124
175
138
110
76
80
97
69
113
165
80
69
101
113
89
118
113
78
88
72
78
175
145
101
121
80
113
87
79
69
159
123
96
76
110
78
134
129
80
120
101
120
99
85
96
106
138
87
104
140
143
134
183
72
120
90
80
96
120
163
119
118
121
156
119
102
142
140
96
102
175
99
136
69
113
107
80
93
132
121
156
145
103
89
101
79
175
98
78
133
85
69
87
96
131
80
99
85
131
69
121
137
154
143
175
89
89
88
69
137
100
104
132
78
69
113
90
78
76
69
78
101
118
109
154
72
79
52
78
80
128
124
72
103
110
98
88
104
94
202
123
118
175
89
80
76
106
144
175
78
87
78
78
123
64
157
76
80
80
121
197
174
101
72
119
99
60
106
87
56
76
113
109
80
117
91
110
119
69
112
76
115
97
128
69
109
89
88
104
92
94
113
87
121
117
88
162
165
113
104
78
78
54
147
93
101
58
74
78
113
92
165
76
72
151
112
119
121
69
118
129
111
110
99
113
69
80
112
104
69
106
98
89
72
139
140
128
101
69
88
99
76
99
134
140
119
145
139
154
93
101
93
175
76
146
92
143
87
78
83
96
132
72
97
69
87
148
54
76
80
153
118
109
88
114
54
164
80
102
85
76
102
154
76
80
99
159
121
101
140
80
135
88
117
120
148
80
149
148
136
69
78
141
107
111
113
134
106
115
144
78
134
72
98
75
128
93
107
80
197
114
113
143
76
150
92
69
99
104
80
106
104
147
163
80
109
113
113
106
119
104
80
80
127
99
109
96
91
72
129
56
92
121
81
119
71
88
145
160
106
120
89
80
154
174
146
80
112
110
119
155
88
178
145
136
110
106
183
80
154
74
126
80
80
95
85
98
104
89
69
132
115
197
104
69
69
127
112
121
87
76
69
69
145
115
86
115
120
66
104
105
95
112
87
80
87
136
96
112
72
80
52
78
113
175
87
69
108
104
78
107
99
94
88
155
104
120
89
66
112
93
106
112
109
120
67
119
89
76
100
80
78
120
120
104
104
89
80
80
69
147
175
160
118
78
151
115
154
164
80
80
85
107
119
79
131
137
101
69
72
80
98
97
151
80
107
72
87
69
78
124
94
151
80
107
160
129
113
87
123
124
103
76
80
146
87
131
107
124
78
107
74
131
78
144
119
99
75
88
96
104
80
134
69
156
156
120
80
175
80
106
85
120
135
127
83
78
69
151
90
136
109
91
74
113
76
80
78
110
120
104
155
100
80
78
94
113
134
80
94
110
87
93
58
99
80
69
122
96
80
136
131
128
120
111
69
80
76
142
99
93
121
93
115
142
76
135
87
116
115
87
121
89
76
93
118
80
87
151
128
111
69
74
76
134
80
76
54
110
162
106
121
87
90
128
120
103
143
120
100
145
101
96
110
113
76
69
175
72
89
78
119
120
163
71
95
130
122
117
112
152
69
100
107
128
120
101
56
117
85
85
109
126
87
69
89
69
86
110
80
106
80
109
112
76
69
140
112
80
140
154
145
80
109
113
107
69
106
153
54
115
76
78
87
88
88
110
87
96
80
69
127
88
80
128
80
76
105
76
201
101
147
120
76
74
119
127
98
126
134
87
69
132
76
94
121
83
131
87
136
119
134
106
120
133
147
102
151
99
112
104
76
134
69
66
119
67
99
117
101
115
85
113
80
128
169
80
93
76
52
139
104
80
119
87
74
80
120
128
99
175
106
131
94
156
110
106
66
120
80
78
148
110
157
88
69
129
175
84
145
164
94
119
110
110
87
76
92
80
87
107
88
91
89
59
76
93
134
153
156
101
98
154
109
72
96
80
93
87
101
83
138
115
136
175
73
136
118
87
136
159
131
120
94
137
130
163
83
126
131
95
90
93
119
87
115
107
106
147
80
128
155
87
110
74
175
72
69
97
122
151
175
174
134
88
72
69
94
156
76
116
100
120
136
87
154
143
76
102
104
120
106
119
86
133
175
162
69
101
119
95
127
103
78
96
99
80
89
111
140
80
69
157
141
94
76
175
99
106
94
80
144
123
76
80
78
97
69
80
107
145
54
120
120
78
78
123
91
111
87
103
90
60
98
109
69
69
143
131
98
107
176
117
144
124
120
118
120
64
121
91
117
69
127
66
119
107
106
69
74
52
80
69
151
118
69
64
88
96
129
152
132
89
80
119
80
75
80
119
104
80
120
88
101
143
112
95
134
87
121
107
145
119
87
87
89
74
146
87
80
78
90
118
136
91
87
72
100
94
118
88
130
69
124
91
96
78
80
69
128
151
119
102
119
128
121
76
119
52
98
93
108
122
89
155
83
113
121
157
128
69
78
106
140
119
87
175
87
80
113
175
149
145
128
72
144
114
113
89
69
151
80
166
80
106
110
80
80
89
148
114
131
43
125
102
126
108
159
107
134
113
183
162
176
78
107
120
148
69
115
116
159
52
127
128
197
92
127
142
89
113
76
85
80
69
118
129
137
87
92
96
116
79
96
69
74
124
197
87
117
134
136
132
155
80
154
145
131
76
88
134
155
151
87
112
119
119
141
120
72
140
80
154
69
140
80
128
155
119
54
127
78
123
127
124
134
76
112
156
68
54
104
149
131
80
106
78
118
136
93
43
69
126
155
175
120
155
106
101
75
125
80
78
87
145
129
151
89
115
76
100
94
131
102
69
94
56
96
130
122
123
80
137
122
151
154
131
155
100
93
58
117
99
80
93
147
80
80
89
143
144
80
99
106
94
112
84
85
69
69
80
56
134
102
87
56
78
94
80
152
80
156
117
96
127
72
87
89
154
69
93
85
66
109
154
108
175
80
112
120
119
118
85
163
89
104
128
134
113
80
139
80
69
127
98
76
127
90
76
76
145
164
143
170
181
69
96
113
156
76
121
108
88
107
80
93
119
80
137
145
78
104
91
132
80
141
120
137
80
76
127
80
147
154
78
104
80
94
108
104
123
80
89
137
67
107
119
134
82
117
197
112
89
151
131
96
58
120
136
80
136
126
69
85
154
120
151
125
174
96
124
71
95
112
123
155
76
103
69
80
128
113
143
120
96
138
120
142
87
76
109
111
81
106
67
78
88
100
151
140
76
134
115
119
93
134
80
175
126
126
129
102
83
94
109
66
104
164
88
119
164
136
102
120
125
127
88
69
69
91
89
94
67
93
109
133
144
155
72
66
128
98
110
110
175
100
76
109
141
144
129
128
91
89
91
90
151
95
145
96
99
162
69
118
72
137
88
150
122
143
69
80
118
156
99
87
151
119
78
96
60
123
59
80
134
106
91
78
54
133
110
76
69
112
115
119
94
104
134
117
175
119
144
89
160
82
101
78
80
69
139
110
114
88
87
118
109
110
140
80
63
80
123
156
104
160
118
137
69
144
103
76
134
163
87
80
127
69
107
78
187
109
124
113
111
72
152
136
112
54
88
107
80
134
114
87
78
130
132
181
99
69
97
96
98
124
80
80
154
112
209
140
110
133
80
138
76
96
175
105
97
104
106
67
78
126
163
89
145
121
78
175
134
197
133
109
81
120
80
76
201
109
116
69
107
94
128
119
80
78
114
102
88
175
121
66
73
100
85
91
80
94
123
76
87
113
119
157
156
92
107
136
98
107
106
113
80
87
90
114
123
101
115
101
69
136
91
64
87
126
118
140
104
80
80
129
80
115
80
120
74
119
131
69
120
120
118
131
128
114
131
118
131
107
99
151
131
87
134
101
129
54
154
107
80
80
122
119
109
117
154
154
107
101
130
113
87
121
69
109
93
76
95
130
80
109
69
91
144
80
119
128
136
76
131
151
69
121
120
76
102
80
80
94
69
104
85
99
94
69
95
118
52
101
93
118
113
131
109
76
91
78
69
197
80
69
104
76
79
52
135
126
95
69
130
113
83
94
80
85
125
151
138
86
134
119
73
197
107
93
78
107
130
87
87
67
89
104
120
80
137
121
88
110
87
131
166
130
69
148
136
133
80
111
98
102
89
175
103
80
140
87
145
87
98
127
76
104
72
160
69
63
122
111
108
69
80
132
104
155
135
124
112
143
144
69
89
69
72
80
143
76
151
139
96
89
83
140
134
56
105
116
74
68
69
93
113
118
155
78
89
76
120
175
88
100
60
154
115
113
89
91
119
100
78
76
78
115
128
120
110
160
80
93
111
98
69
119
140
88
116
107
103
69
122
156
90
134
121
69
174
131
155
120
69
175
43
78
140
134
109
80
66
120
164
107
139
127
115
119
107
112
113
183
98
80
69
88
152
88
127
76
120
131
87
109
151
129
76
73
175
102
106
117
142
80
175
69
94
93
69
102
143
132
116
76
94
80
80
103
78
197
126
103
121
129
102
76
110
69
69
87
120
128
109
131
100
99
99
125
89
111
74
134
113
69
128
78
87
137
88
101
110
112
120
133
118
110
145
69
133
127
87
94
69
151
78
69
87
69
76
98
146
69
122
156
80
69
109
95
78
136
111
80
151
124
90
128
69
99
87
87
94
80
129
137
80
96
149
100
88
54
119
104
167
88
89
76
109
154
154
80
131
155
136
76
97
127
136
129
112
140
109
56
88
112
78
68
78
69
114
76
106
87
199
80
88
96
43
87
94
99
69
104
154
85
94
119
113
111
80
80
78
118
93
113
76
104
94
151
140
89
92
80
82
93
56
175
102
83
94
87
100
125
101
80
88
139
74
138
80
136
75
110
113
151
112
68
99
54
116
156
155
134
90
72
128
205
99
100
133
113
113
95
87
93
96
88
131
103
160
130
119
69
175
78
189
154
125
78
128
80
89
80
80
115
127
163
119
99
129
172
119
69
69
91
128
88
114
54
87
149
107
119
100
99
103
120
93
89
127
89
69
120
64
126
126
101
137
76
99
122
117
120
155
139
84
125
131
74
78
171
91
80
107
104
87
154
130
104
54
87
83
69
89
92
154
78
88
69
72
121
90
118
126
132
144
104
145
127
151
106
94
80
80
52
112
101
54
106
134
110
113
80
74
130
122
190
69
137
56
87
78
106
104
66
76
80
136
69
128
119
127
128
119
80
172
78
120
91
163
78
69
80
172
121
101
80
69
100
121
88
106
80
78
131
76
175
80
76
136
115
60
99
92
105
118
122
87
107
116
107
96
132
87
143
80
80
95
109
110
131
112
107
151
122
101
82
119
80
140
94
175
75
58
78
110
99
104
154
123
93
163
175
156
109
99
145
111
101
78
127
172
151
120
99
56
69
80
75
122
117
175
109
127
92
114
69
130
80
146
175
130
175
106
110
80
113
163
128
119
117
107
71
73
144
91
156
99
123
139
79
73
103
113
96
80
89
130
66
69
80
161
80
120
117
136
106
98
76
112
94
185
128
88
152
99
104
99
69
95
175
118
117
87
69
94
89
121
85
119
109
80
118
113
69
89
128
76
97
175
130
126
99
78
91
107
89
107
121
93
111
121
69
80
106
141
87
121
104
88
121
80
131
80
87
90
175
113
154
91
91
64
178
76
135
80
119
76
121
123
118
43
69
140
130
87
112
88
112
119
107
95
197
131
102
76
98
133
99
54
108
89
80
175
87
175
90
137
80
160
78
124
57
134
94
114
154
148
90
120
119
104
154
115
106
101
69
107
85
96
80
97
124
80
104
197
90
96
101
119
197
104
117
80
156
131
87
87
107
87
110
127
69
109
106
87
52
121
102
76
112
99
115
155
121
117
69
82
163
74
154
121
80
156
69
95
125
80
80
114
100
132
131
94
76
117
107
120
134
80
69
118
103
141
110
76
107
176
107
148
124
80
126
106
114
107
127
140
117
134
111
107
76
83
79
80
144
87
111
80
100
139
87
89
175
69
96
151
69
107
78
54
69
110
111
78
197
100
130
130
94
69
69
119
146
107
112
146
78
80
117
126
78
111
87
83
78
100
76
74
78
76
120
99
175
148
120
136
110
80
154
175
131
80
87
146
175
77
139
69
80
99
137
104
120
89
124
80
80
81
111
79
155
140
154
146
91
80
119
87
94
76
109
85
78
121
155
100
112
92
97
80
80
128
144
136
131
115
134
106
88
120
99
100
80
150
151
69
156
72
69
103
112
93
154
119
76
69
110
109
132
115
119
152
112
80
155
94
113
131
107
109
78
96
122
80
88
163
130
94
101
78
87
80
112
88
128
130
112
104
119
110
76
87
52
67
101
78
92
76
69
69
82
175
94
131
119
69
154
145
80
94
127
96
100
136
76
110
121
99
93
124
117
56
78
89
163
99
87
103
87
80
145
87
107
118
97
106
83
146
96
126
115
87
69
69
101
162
116
91
75
140
103
120
71
54
80
107
89
78
94
118
80
110
87
78
154
102
107
95
87
109
164
118
85
93
145
87
99
89
175
117
94
113
128
80
125
136
80
80
79
87
112
134
146
123
78
154
104
80
118
154
91
121
52
76
110
94
69
69
69
114
175
78
94
154
185
109
112
80
156
91
131
164
113
134
117
102
78
78
78
89
118
129
80
102
110
80
145
197
110
109
119
89
121
175
106
78
100
69
126
118
91
120
82
148
140
111
113
101
134
143
107
80
87
92
78
88
128
69
87
126
76
197
64
110
113
69
91
119
175
160
175
117
110
76
99
101
122
110
76
136
104
175
203
154
69
79
104
69
96
113
80
110
80
91
89
153
154
85
119
152
128
199
175
108
118
131
105
76
64
163
56
95
87
104
138
89
102
154
102
143
72
76
59
104
119
110
72
87
80
109
93
76
110
87
107
146
154
80
104
111
107
128
109
85
124
184
87
80
69
94
80
126
116
131
76
104
128
80
120
111
197
155
101
95
116
121
88
127
157
91
151
88
99
78
119
91
119
80
120
115
72
80
78
175
66
129
74
125
93
109
80
76
101
60
110
144
108
128
94
110
107
113
139
120
79
96
69
133
110
87
94
96
131
74
119
80
104
119
128
133
110
102
133
121
93
80
99
151
128
163
146
78
85
78
69
73
129
134
120
88
89
80
175
69
134
110
119
109
117
145
69
136
110
99
93
163
78
163
119
100
102
80
80
69
144
67
129
160
137
127
88
110
117
197
87
119
80
94
69
114
98
118
87
96
103
117
76
110
138
111
93
121
89
104
87
128
76
94
120
107
87
80
96
80
156
120
95
87
87
150
127
94
145
85
84
80
54
109
123
154
128
112
145
74
138
127
142
76
110
80
100
175
94
110
156
110
69
124
99
85
93
106
132
75
93
78
80
175
87
106
76
114
87
58
120
117
86
101
54
125
101
110
140
75
69
56
110
89
134
119
163
80
96
175
197
80
87
76
151
107
72
87
119
80
118
76
143
120
120
72
99
106
119
69
87
154
111
201
145
142
116
157
137
123
136
138
80
94
128
120
66
155
145
80
80
128
197
107
87
80
140
124
134
140
146
87
139
133
69
78
106
106
99
159
88
122
160
74
93
104
136
99
80
121
154
89
131
57
159
116
157
69
87
78
69
118
115
128
102
87
136
89
80
80
111
136
87
183
147
69
117
98
80
140
80
154
109
114
128
80
52
103
69
69
119
102
134
112
89
107
87
117
133
80
175
80
52
90
163
128
80
106
87
69
69
115
120
155
128
80
127
69
199
93
134
112
118
124
140
107
98
81
54
122
100
78
91
89
129
163
120
90
76
134
118
100
163
136
76
120
82
114
146
94
120
83
87
131
89
113
104
146
209
160
96
115
87
75
134
79
145
100
108
104
113
87
88
80
91
111
88
136
157
122
183
69
116
109
69
52
157
96
94
80
56
107
107
138
104
80
102
109
155
76
112
80
108
175
175
87
110
107
94
78
87
121
80
76
78
104
109
197
120
88
69
87
80
118
154
112
104
131
87
69
76
134
73
76
119
69
87
80
156
99
85
110
76
138
82
107
128
99
154
117
100
87
108
120
88
154
91
80
107
80
121
76
52
134
93
78
122
149
155
80
136
120
126
52
113
72
131
119
136
116
94
149
146
131
96
148
128
69
119
69
72
56
146
78
89
80
87
69
119
94
69
131
74
91
54
88
89
106
94
80
69
113
113
133
140
80
122
76
134
98
87
131
126
162
80
127
89
120
70
117
102
107
101
109
85
140
103
130
104
104
66
123
138
78
148
110
138
67
76
80
117
109
85
136
151
134
111
69
90
93
118
151
108
80
175
185
88
106
80
95
156
78
183
106
120
72
144
88
113
102
69
80
148
140
117
102
141
137
111
93
111
120
52
92
80
69
113
121
71
158
107
106
119
83
107
80
72
110
106
137
80
69
120
123
134
119
132
120
80
120
89
72
106
128
87
89
80
76
104
119
91
144
96
106
109
108
89
133
90
197
59
113
93
80
120
87
107
95
74
154
93
129
103
154
144
128
112
134
94
132
69
119
69
72
78
76
154
109
101
88
52
93
69
88
93
119
114
83
107
145
110
106
104
87
132
154
118
78
87
80
69
109
127
114
109
96
106
136
80
78
159
163
119
148
119
133
104
76
133
134
87
118
128
149
143
124
136
78
94
126
152
67
128
163
137
119
64
87
128
89
94
151
103
108
80
92
76
107
88
80
112
77
120
74
93
93
87
137
78
199
76
197
113
127
197
72
163
94
98
80
143
94
132
132
120
156
110
133
92
110
134
156
136
128
107
100
128
88
103
119
160
122
130
80
119
126
154
121
125
120
89
117
78
76
120
69
80
78
99
88
165
147
76
80
145
87
80
69
156
106
69
152
102
78
111
85
102
95
69
80
100
99
69
117
66
80
120
121
108
131
106
175
137
140
109
117
88
125
127
80
126
87
86
121
128
134
95
145
110
143
69
96
93
138
99
119
118
122
94
146
156
96
148
117
197
69
111
121
104
80
76
128
156
175
69
140
155
136
151
127
181
152
93
102
106
136
101
109
118
64
90
118
205
99
78
105
124
93
76
119
113
99
152
104
110
76
107
194
131
131
78
99
104
113
87
118
123
119
174
88
93
98
134
140
154
69
82
69
78
114
76
107
119
197
121
43
89
120
114
99
79
84
102
119
93
118
164
108
102
137
132
99
175
85
108
52
112
100
78
93
137
69
69
175
88
119
109
88
134
131
108
128
97
147
72
86
104
87
135
94
93
109
78
154
72
104
76
119
195
95
88
138
142
119
121
145
109
119
78
197
76
69
84
80
104
175
78
107
152
147
80
112
54
107
89
120
76
80
69
85
76
69
78
132
146
160
99
197
133
99
141
121
112
140
98
87
107
96
43
109
123
109
80
114
115
107
69
107
120
97
155
69
159
80
102
122
59
76
83
110
107
175
69
76
80
104
93
82
69
175
103
75
106
129
131
107
127
143
66
78
99
120
119
69
175
80
158
140
112
80
89
140
103
154
85
121
80
94
146
80
106
89
140
76
94
175
97
127
119
70
88
104
90
89
134
160
54
78
112
80
103
80
57
78
74
119
131
85
157
136
122
172
169
80
133
104
80
76
87
117
94
132
101
111
95
197
67
141
120
69
82
75
155
107
87
119
69
132
93
76
88
43
175
80
120
112
175
76
80
58
102
123
156
101
175
94
136
134
128
89
115
80
175
151
120
127
120
100
76
87
145
164
160
94
69
109
156
109
133
87
107
122
76
99
152
106
115
120
116
113
140
86
166
80
69
131
88
128
140
87
120
83
119
87
106
127
112
87
121
118
76
136
69
78
131
121
82
140
76
126
80
95
119
154
118
111
197
85
80
119
169
107
89
94
127
93
87
115
83
56
80
134
128
80
87
87
154
128
99
116
87
76
141
91
100
134
88
197
117
43
69
114
136
80
107
107
76
109
114
76
69
87
113
137
87
107
145
87
140
87
110
123
79
112
69
76
103
83
131
118
52
107
151
144
122
64
122
69
69
80
107
93
69
107
119
87
88
80
99
156
69
99
129
120
107
115
87
109
106
101
68
116
119
72
80
104
119
142
87
119
151
80
76
140
69
145
87
72
137
104
80
131
129
94
87
109
124
102
119
181
100
79
112
105
80
131
76
94
119
94
95
92
151
107
80
87
85
87
94
137
137
99
58
54
76
84
88
99
76
99
100
101
119
136
91
102
119
121
121
140
89
131
80
136
181
76
140
109
151
115
106
72
144
153
88
151
145
110
69
104
118
110
169
113
118
132
87
89
112
107
103
155
85
69
119
111
88
120
88
94
85
109
145
120
140
69
69
130
100
133
107
119
94
96
118
140
67
175
91
113
78
80
119
131
71
83
119
111
107
136
100
143
129
80
128
134
76
69
145
134
91
156
93
96
69
89
89
116
76
140
175
69
69
88
109
78
69
101
120
147
76
174
78
93
105
151
80
123
52
139
114
109
69
80
93
119
131
136
91
89
78
91
151
112
94
155
128
78
78
87
106
128
163
115
101
80
114
104
69
183
98
126
87
121
72
109
79
69
144
154
128
96
56
88
185
112
148
72
76
87
89
104
120
54
113
136
102
80
128
87
91
118
91
69
107
101
76
87
69
78
121
80
127
148
137
136
107
122
56
97
56
110
76
85
92
69
175
110
151
107
87
54
115
88
80
78
85
120
101
107
88
131
76
186
130
83
127
113
85
131
120
93
80
141
83
122
126
154
145
78
87
131
175
78
88
69
110
101
80
106
89
85
110
69
128
108
99
76
95
78
140
131
117
78
134
69
154
101
81
93
111
80
69
130
87
87
76
110
119
87
80
54
109
146
129
118
69
80
74
103
94
154
89
80
160
80
112
69
80
125
151
98
119
78
154
80
101
117
140
111
151
145
87
140
132
90
155
120
102
128
102
111
87
143
80
107
154
151
80
76
128
80
120
78
111
117
175
89
78
87
120
95
87
128
87
93
89
76
92
93
120
75
93
102
119
128
145
111
69
87
78
136
80
120
113
80
106
122
142
87
127
148
115
115
175
147
110
87
74
80
72
78
87
106
112
89
109
80
109
98
78
98
134
78
120
93
128
131
123
103
157
88
146
163
87
174
69
148
80
69
78
88
106
119
87
131
76
88
76
175
80
103
93
121
87
76
98
175
79
150
147
78
129
90
72
114
122
87
54
74
142
52
78
107
76
99
78
134
57
82
137
83
90
126
106
110
116
80
119
80
148
118
94
100
123
108
120
71
78
88
80
156
128
80
80
145
107
147
104
164
96
127
78
72
91
95
76
107
130
76
96
113
125
94
110
142
74
102
88
80
99
78
87
137
120
89
117
80
107
103
72
119
128
114
54
114
154
69
140
154
54
87
69
133
104
87
80
69
69
107
99
69
106
80
109
76
107
88
69
119
101
109
144
90
56
80
87
110
119
119
133
113
76
112
69
88
113
145
101
119
72
112
99
148
87
56
80
69
131
78
117
121
119
72
106
107
149
69
89
96
87
107
174
78
79
201
156
131
114
66
117
156
110
80
109
119
70
127
154
69
89
154
83
78
80
123
154
131
123
69
69
107
89
160
141
69
80
127
83
184
102
80
80
136
117
67
117
76
104
101
94
119
140
69
104
69
97
140
119
102
106
115
128
106
110
91
128
76
80
175
69
127
99
69
87
119
80
123
89
99
109
94
138
80
89
163
104
87
87
146
112
154
94
80
106
119
104
101
115
101
174
175
82
165
99
87
100
80
154
80
128
87
131
80
76
117
69
112
119
80
138
113
80
147
118
121
80
106
128
109
101
125
121
72
108
87
123
175
89
150
128
163
120
113
101
99
87
128
118
121
72
120
52
131
134
99
69
102
101
69
93
71
151
109
174
69
138
154
80
113
155
148
113
87
119
132
78
151
147
95
150
89
74
102
76
150
102
80
131
135
164
76
94
119
130
69
56
110
99
126
136
114
116
116
43
75
56
75
104
109
106
93
107
130
69
93
87
142
128
52
80
151
112
94
143
71
72
134
138
146
87
72
100
94
99
69
101
128
154
94
93
108
140
111
120
80
69
175
112
109
52
120
130
80
80
87
89
120
80
101
87
123
76
125
109
76
131
145
69
120
123
96
69
80
91
134
134
136
60
89
107
90
197
69
106
69
127
121
156
98
110
88
113
78
134
78
69
87
78
80
155
115
133
72
133
107
107
120
56
88
80
154
80
69
115
123
117
80
123
119
114
87
96
87
69
140
131
134
104
114
131
89
129
80
121
68
82
126
75
80
102
112
156
78
131
129
87
69
120
153
74
154
119
151
76
88
87
136
156
76
80
76
115
163
56
78
119
134
124
109
106
74
90
80
113
80
121
137
111
69
80
119
94
80
168
175
134
101
76
54
151
107
119
80
175
88
127
127
102
91
134
121
123
80
69
104
98
112
123
110
110
120
69
134
76
118
74
134
132
101
80
152
106
78
87
87
87
110
92
108
67
69
119
80
134
87
52
89
119
80
101
111
152
103
87
154
157
156
112
103
144
136
79
80
156
128
132
147
78
151
119
117
69
119
146
102
136
89
117
106
69
175
134
64
76
87
133
113
131
80
59
80
69
151
91
80
128
110
142
76
104
175
113
128
78
117
89
128
76
178
119
95
88
69
104
159
69
114
113
121
175
58
117
145
121
156
90
96
109
78
69
143
136
98
78
129
69
136
87
78
99
134
91
117
87
69
147
93
130
175
107
119
92
123
111
118
118
119
154
109
69
104
129
127
175
131
99
78
140
87
78
105
148
151
69
126
114
151
69
134
80
80
154
79
175
109
88
119
101
80
143
80
87
87
105
78
80
90
121
110
88
80
129
95
111
93
93
80
143
123
145
119
126
52
165
71
99
96
117
109
94
120
69
80
69
127
89
89
54
78
140
67
99
138
91
128
71
107
146
107
80
187
128
88
72
117
119
56
155
109
113
94
85
134
125
80
156
151
118
130
118
85
82
89
88
145
95
89
80
120
115
121
108
99
54
80
154
69
66
175
107
94
80
134
69
115
145
80
107
118
112
83
114
128
128
154
175
88
64
123
163
139
106
80
131
100
104
145
69
134
110
99
117
83
118
72
80
76
82
79
124
128
69
120
175
107
80
104
131
121
110
113
154
52
83
127
104
110
120
89
122
175
80
88
107
136
78
103
114
87
76
80
99
126
96
78
69
59
76
119
69
89
57
137
69
131
69
78
69
120
119
80
144
88
94
99
101
121
94
91
143
69
134
105
99
104
134
99
76
143
110
154
78
107
80
78
96
80
90
134
69
129
95
90
76
113
100
175
87
175
123
119
175
78
69
94
75
112
160
87
80
78
131
109
88
156
129
134
69
107
76
116
80
80
127
99
80
69
107
122
130
107
143
88
99
128
56
93
69
80
163
87
160
69
88
114
120
69
80
104
120
80
103
67
103
89
88
98
118
107
72
119
69
80
117
163
101
104
76
77
80
119
78
64
97
87
91
110
126
66
119
107
126
72
69
107
80
155
78
140
120
69
103
88
69
101
154
78
87
69
136
199
128
74
76
133
125
79
87
93
88
106
138
135
110
111
90
87
110
110
78
72
94
121
154
119
129
98
69
76
67
122
119
89
131
110
76
121
88
110
148
87
152
88
80
69
95
93
94
136
96
80
106
78
156
144
115
78
69
96
118
80
72
129
107
76
102
138
121
80
151
89
89
155
105
103
80
151
93
120
88
99
69
103
111
69
119
72
163
116
94
115
67
119
80
140
129
80
166
96
83
91
119
80
117
161
100
118
154
120
127
93
109
114
114
115
80
149
78
154
136
110
101
101
111
144
120
119
106
64
102
85
66
87
145
67
78
87
126
108
118
112
120
151
134
76
152
80
134
129
113
80
131
138
87
121
80
71
98
164
107
127
85
76
76
138
91
93
175
80
63
101
136
89
52
128
136
109
75
106
89
114
52
106
89
52
76
141
104
78
97
88
107
120
78
134
69
80
161
122
80
174
102
89
87
79
118
109
69
91
146
78
107
129
69
117
80
80
151
129
104
78
143
79
152
93
80
128
106
87
164
128
113
103
143
98
69
107
104
69
156
107
114
150
127
133
109
140
83
87
111
154
156
103
154
99
80
120
187
106
76
134
91
72
88
74
146
57
87
107
54
132
115
128
119
109
117
128
147
87
80
113
80
90
209
131
76
174
80
107
69
145
175
63
87
87
134
69
104
143
69
69
112
108
88
80
162
154
69
87
120
80
74
151
115
87
93
106
78
104
112
76
122
76
154
119
99
132
114
111
94
154
133
80
110
87
131
112
106
109
121
118
130
109
80
80
80
64
98
69
76
161
175
155
91
137
111
95
76
175
58
98
80
94
115
110
114
79
113
80
135
80
89
119
131
87
156
115
100
140
80
118
129
76
69
87
80
119
69
129
69
120
99
144
119
102
56
154
119
79
119
94
78
97
129
161
146
109
74
80
151
181
102
78
94
128
69
175
106
69
67
96
69
131
69
109
201
120
136
90
89
78
88
134
78
80
128
83
80
78
131
87
119
78
117
131
186
101
91
58
80
80
78
131
114
145
116
118
71
120
115
112
174
175
102
140
126
79
128
151
89
64
90
80
99
106
121
149
56
85
88
58
69
54
80
78
69
126
146
80
123
78
189
175
89
89
93
87
148
76
136
136
91
88
85
119
129
109
87
131
79
107
106
119
121
112
107
87
72
134
110
76
99
124
121
131
119
91
199
99
100
134
80
120
185
145
175
72
121
80
89
137
69
89
175
78
91
76
90
67
119
124
96
127
87
203
101
69
72
94
127
88
87
134
80
64
87
69
109
78
78
102
69
69
119
103
80
103
128
110
78
131
144
134
144
174
119
98
76
136
71
82
100
80
120
181
76
101
116
78
106
90
100
127
88
104
110
103
72
82
78
132
108
66
128
174
155
146
87
120
135
145
80
88
101
110
69
74
109
76
110
94
94
111
91
94
109
80
160
91
89
93
98
100
88
89
99
135
85
56
95
115
76
175
154
99
69
74
80
95
154
76
109
140
91
118
80
134
91
72
154
80
129
78
151
87
66
134
89
85
93
119
80
155
116
99
59
94
69
76
87
87
106
99
152
107
174
154
109
163
87
56
117
80
104
154
149
94
148
80
151
112
132
80
87
107
109
121
159
154
109
121
136
77
121
76
78
90
54
110
69
156
102
94
157
128
136
197
140
89
78
124
156
119
86
80
75
89
147
155
104
120
89
64
121
80
148
80
69
117
124
89
119
114
110
97
99
80
113
80
122
80
80
80
147
112
127
127
104
112
154
143
149
131
78
80
175
154
128
64
95
154
120
83
112
122
122
83
82
109
88
93
88
88
107
145
78
78
143
94
87
110
56
56
89
89
87
80
96
69
104
80
107
88
134
121
87
104
78
80
69
69
128
88
87
106
185
127
131
151
72
130
106
80
76
154
54
85
157
106
69
95
123
124
77
76
175
69
54
85
128
197
76
112
157
87
148
90
91
121
94
80
104
79
183
87
129
69
87
101
110
69
112
125
80
130
127
147
116
113
112
155
125
118
87
123
89
120
63
110
69
126
127
78
121
120
111
124
97
94
107
175
102
154
88
69
128
74
103
96
110
69
101
80
126
103
43
69
121
110
110
96
175
121
80
107
99
78
115
94
115
133
72
124
134
78
87
111
100
90
122
154
87
99
52
78
87
106
104
93
162
87
130
104
131
136
175
175
133
128
107
106
76
80
107
85
87
151
128
131
94
99
151
104
107
69
87
106
152
99
80
104
197
54
110
89
74
136
115
104
127
80
109
132
126
74
98
172
134
159
69
107
164
74
110
117
123
80
155
74
109
119
112
122
89
103
151
90
69
155
94
76
87
130
87
147
118
94
78
154
154
143
76
74
197
98
80
119
119
146
112
74
80
174
80
128
78
91
107
76
154
119
149
131
89
183
52
151
89
80
90
78
154
104
80
80
105
122
120
76
128
80
123
150
142
84
89
137
80
76
156
199
140
74
144
82
106
134
98
89
80
76
120
80
153
80
175
99
95
101
88
93
154
69
100
107
104
87
76
69
76
87
151
87
69
98
136
108
113
76
110
119
83
74
54
163
127
85
89
119
80
89
136
109
120
69
87
69
69
80
69
120
143
96
107
109
80
80
76
112
98
95
92
143
69
87
112
119
74
144
151
146
111
117
78
54
117
120
78
104
120
131
59
93
92
85
101
104
143
102
78
140
156
73
151
82
80
87
99
94
122
94
142
91
174
175
112
107
114
154
110
133
69
87
111
109
121
125
111
69
80
128
93
76
108
109
82
89
79
78
69
119
110
103
69
64
89
94
70
67
147
128
80
90
175
78
112
107
142
78
87
94
76
111
154
151
60
121
89
80
136
89
52
87
88
100
107
91
120
76
102
112
89
124
114
88
99
109
154
107
131
175
76
91
151
69
148
80
120
69
151
112
120
80
177
109
124
90
137
113
78
91
127
147
134
99
120
175
82
82
78
136
134
154
78
76
121
119
80
80
89
69
104
91
109
140
89
121
76
97
106
91
72
155
91
104
154
52
69
74
124
104
80
69
80
127
111
128
151
91
120
110
107
85
76
99
101
145
119
106
76
93
69
82
110
74
87
87
142
80
87
112
78
76
89
72
124
78
69
95
43
134
99
78
109
95
146
84
80
155
52
87
128
106
197
43
86
94
88
114
120
101
104
90
90
87
119
135
107
106
131
80
80
113
88
123
109
80
107
69
197
87
121
156
107
145
123
88
69
96
93
121
109
128
118
88
76
91
69
175
131
89
69
76
120
87
126
174
88
78
68
106
126
126
109
154
109
101
87
105
87
80
87
93
120
104
78
117
93
93
175
80
102
175
88
76
119
149
106
123
64
109
103
87
119
167
119
93
89
119
132
76
131
76
155
69
127
111
118
147
146
78
87
98
69
87
106
80
76
127
119
96
137
75
134
92
69
107
131
74
69
74
99
142
132
80
76
109
93
99
109
136
101
110
128
128
104
78
94
89
116
111
128
112
154
119
127
122
117
104
102
113
87
87
102
90
119
112
106
121
114
133
69
131
119
78
185
89
113
89
104
119
81
106
85
176
94
197
75
93
107
117
80
113
199
80
74
155
124
88
114
88
104
76
76
120
80
78
102
147
93
109
112
102
128
120
80
104
121
85
54
74
80
93
124
87
128
175
69
91
103
80
123
147
99
69
80
80
185
133
72
154
87
127
126
69
76
104
156
117
122
161
146
106
85
120
107
104
127
175
93
88
72
114
99
163
121
136
104
113
91
118
117
80
89
160
69
76
116
80
151
120
133
99
103
132
78
154
69
107
83
113
89
78
69
128
60
118
118
137
80
120
83
93
123
117
74
197
134
131
156
87
69
108
122
88
87
134
89
93
183
94
69
88
104
80
175
183
99
133
104
74
112
80
136
148
143
80
80
116
126
128
136
96
76
109
80
104
122
136
80
87
87
197
106
110
143
87
87
119
181
110
98
89
120
95
56
154
91
134
76
78
99
140
69
103
101
133
100
154
112
123
87
73
121
120
137
131
137
156
76
122
154
113
143
132
120
95
69
87
128
107
132
93
113
95
87
80
78
117
131
110
94
88
96
87
76
87
119
140
120
128
43
72
78
113
76
76
93
69
151
138
104
97
90
102
127
87
88
112
90
89
78
107
69
142
96
87
69
72
56
95
176
107
69
87
80
96
91
154
131
114
87
80
87
80
96
80
71
68
134
69
94
78
80
76
104
127
80
102
56
87
87
128
69
175
104
185
140
142
107
88
111
80
72
113
107
110
64
69
119
103
99
154
69
87
76
85
163
72
69
99
78
119
80
110
115
112
74
99
88
74
156
99
72
99
69
116
123
155
134
150
129
102
107
95
81
103
104
80
91
163
106
80
99
107
128
88
159
100
89
163
78
69
99
131
80
113
69
80
115
93
121
95
127
154
71
130
79
78
99
74
80
73
150
66
155
122
127
137
151
118
109
131
109
80
69
80
89
120
100
104
113
120
120
96
109
143
80
114
96
110
131
80
80
120
132
69
150
128
93
123
102
78
91
52
143
127
72
128
95
184
143
94
69
131
110
83
77
74
122
106
69
113
119
113
115
87
145
107
59
76
121
81
144
94
94
87
104
87
119
81
78
91
52
89
80
80
109
73
110
93
90
94
80
155
131
88
134
94
119
103
154
140
72
121
129
88
78
107
165
121
93
125
120
87
109
164
76
136
144
89
54
71
140
156
87
129
115
104
101
69
120
134
106
78
122
107
140
109
185
88
87
154
80
115
66
146
88
154
154
80
111
103
99
69
88
93
156
59
104
114
79
94
100
101
69
52
91
84
117
80
76
71
117
87
120
156
110
107
156
121
119
111
122
58
80
119
128
89
106
69
87
78
140
104
146
80
94
100
67
69
96
78
122
114
87
76
109
102
137
102
145
96
84
87
80
138
96
125
107
101
109
185
128
112
155
93
80
74
76
154
69
150
157
110
69
124
131
119
78
144
91
126
120
112
139
94
120
175
80
154
133
106
87
134
69
76
87
144
80
96
127
143
131
119
78
89
74
89
156
104
88
113
87
78
80
78
87
151
82
110
78
119
127
90
145
80
87
78
99
89
86
85
134
91
99
94
78
154
145
80
154
69
87
74
72
90
79
119
112
169
91
134
103
109
197
96
110
118
59
87
116
101
99
80
80
101
119
75
94
74
93
69
111
87
72
120
89
94
134
87
69
113
87
140
128
72
101
146
99
72
134
109
119
117
107
94
119
115
99
121
78
109
85
109
79
151
76
74
103
78
131
85
80
120
89
142
119
79
152
83
72
131
80
72
96
145
96
114
69
128
145
163
80
136
136
112
131
119
156
127
164
113
66
104
80
155
87
87
69
105
80
73
127
87
144
69
87
109
76
78
89
78
109
78
89
94
136
156
76
104
87
91
80
131
88
117
109
78
96
122
108
119
85
159
150
80
96
67
175
120
43
87
120
126
110
109
154
72
115
69
80
132
80
154
162
110
110
197
136
127
93
69
107
80
197
93
78
119
76
78
96
120
115
87
78
125
69
131
109
111
131
109
134
115
104
56
84
69
87
115
122
134
56
143
80
79
87
87
115
107
88
121
113
109
99
117
76
80
120
155
67
110
118
106
118
69
131
102
96
66
101
151
110
69
117
80
69
94
91
124
69
69
87
92
152
104
109
93
69
80
154
74
120
108
106
80
107
104
154
78
131
74
156
88
197
69
112
104
110
119
110
80
101
96
79
102
91
119
156
107
89
99
121
91
80
96
78
134
72
80
119
80
146
121
197
107
199
104
109
88
149
113
129
160
78
87
67
78
209
110
142
84
144
80
144
121
102
90
89
119
60
104
80
117
81
106
115
83
96
119
129
78
99
85
76
107
91
146
101
143
112
101
69
124
91
124
94
120
80
87
96
69
80
89
91
80
89
88
95
197
119
88
131
91
110
101
121
119
107
91
80
123
121
137
80
52
69
144
140
175
101
80
130
136
96
99
69
143
107
102
80
127
69
96
93
96
89
80
80
69
69
175
119
63
138
104
78
138
102
93
119
107
80
107
119
131
67
80
119
54
80
110
76
69
87
56
120
142
121
128
89
113
128
80
78
80
56
109
124
110
107
154
80
118
99
94
76
120
107
134
87
96
164
197
76
72
87
78
96
106
117
67
69
119
175
104
128
80
143
128
90
76
72
87
69
80
99
151
76
96
80
83
69
107
76
103
110
151
80
103
100
78
131
80
93
91
104
87
156
119
101
146
71
120
121
99
80
111
134
175
126
123
43
136
119
97
54
118
89
87
106
69
91
131
123
106
78
106
113
76
71
125
90
80
100
142
151
117
85
107
119
117
85
123
104
78
155
126
80
96
175
95
88
111
89
91
95
100
129
197
94
109
87
134
60
153
87
110
110
116
175
145
197
94
154
101
106
69
69
140
116
144
89
89
136
80
110
69
175
80
120
102
80
87
80
76
197
90
78
76
76
113
99
75
109
119
164
162
80
154
89
93
88
119
109
154
148
80
83
80
154
107
101
137
175
69
132
80
89
103
161
128
100
115
118
89
87
118
80
165
99
99
183
136
89
146
117
96
136
80
119
69
69
87
110
112
94
90
89
154
175
155
112
69
112
156
134
100
99
69
117
145
106
89
80
80
129
68
80
88
106
156
157
69
112
146
126
88
76
197
106
128
76
138
117
112
127
117
131
111
117
91
117
164
89
78
146
119
54
127
69
119
155
121
99
87
69
89
120
91
100
79
119
109
80
79
126
87
151
80
90
123
147
181
88
80
136
146
107
174
130
110
155
156
78
155
130
76
89
109
120
104
104
97
101
175
143
119
115
85
78
80
88
80
134
69
128
88
139
134
134
80
109
133
110
87
156
80
57
80
87
133
88
131
106
117
89
80
147
111
100
148
94
134
119
175
109
85
88
120
80
136
107
88
91
119
166
69
140
74
69
83
78
78
82
94
117
109
181
69
140
104
96
107
151
115
120
89
112
127
93
155
95
80
80
87
69
87
175
109
99
69
110
119
132
80
117
119
113
130
91
119
118
136
133
93
186
109
100
104
112
83
87
120
127
106
174
103
95
88
136
107
76
87
119
115
74
85
142
119
100
88
132
80
90
163
80
164
80
209
172
131
95
102
146
80
94
156
150
67
76
111
116
128
128
136
83
134
133
136
127
96
151
100
119
143
80
56
120
146
143
96
72
124
149
103
151
94
69
99
69
72
140
85
69
83
133
69
150
128
88
175
110
164
115
69
117
120
78
136
113
145
69
80
120
131
136
136
164
123
89
80
112
131
80
69
146
109
117
140
149
131
128
80
134
91
114
112
120
94
80
80
106
78
93
80
128
116
76
128
80
80
181
88
110
156
128
93
119
79
175
187
76
69
85
130
157
151
71
107
128
137
140
94
120
89
151
76
119
98
56
120
148
103
110
129
69
52
108
110
80
152
58
155
93
66
80
69
119
94
128
94
80
80
80
112
106
78
69
103
96
81
114
87
136
128
93
87
127
69
69
82
112
163
77
144
120
91
94
85
69
69
80
69
69
97
80
76
140
102
119
112
131
76
69
107
128
93
76
118
128
124
125
141
74
69
121
139
106
160
146
119
106
118
119
103
76
66
115
104
100
88
134
89
80
91
142
127
80
98
69
69
57
122
78
146
127
107
104
43
93
112
91
109
81
127
124
120
147
73
78
144
52
88
110
104
80
128
118
112
132
89
64
95
107
103
93
76
129
114
127
87
94
99
109
104
109
80
121
91
111
149
120
96
52
107
76
161
102
155
97
156
110
78
130
125
112
122
131
127
137
80
81
119
69
76
91
104
80
82
89
88
154
87
78
92
174
78
77
101
128
124
99
110
76
123
80
154
90
123
89
108
88
135
113
57
124
156
78
130
156
83
94
69
93
151
104
88
118
105
120
109
88
91
76
78
121
155
114
87
148
128
78
74
92
116
85
90
96
119
71
69
98
113
145
69
121
107
56
127
80
100
101
110
72
128
71
120
87
69
140
116
102
115
87
155
69
115
69
128
117
86
106
99
107
126
99
63
128
91
117
156
111
80
87
128
101
136
87
136
76
175
109
113
146
122
103
145
75
78
91
100
100
89
78
128
79
141
78
80
89
150
91
118
98
120
87
106
120
80
69
69
113
197
95
121
96
59
156
94
111
112
146
175
76
117
120
119
119
122
160
69
143
69
88
69
123
80
52
134
91
140
120
80
126
124
117
88
72
69
99
107
156
88
175
146
88
160
132
96
79
99
155
69
87
87
90
128
101
99
87
99
134
103
138
128
137
80
215
131
80
43
128
128
76
114
112
89
137
76
100
78
107
91
99
76
140
104
88
109
134
119
90
133
110
80
94
81
125
94
117
156
85
80
120
88
122
87
93
175
80
109
137
113
69
80
87
87
80
74
69
134
88
135
102
130
80
128
145
80
83
54
163
113
160
129
43
99
160
111
133
119
132
137
104
76
93
99
124
115
91
76
98
94
69
69
54
137
119
106
148
131
136
128
69
115
128
128
121
69
144
78
100
85
129
109
120
99
106
76
75
120
163
112
93
106
69
69
80
119
94
87
69
101
140
154
128
80
87
107
69
52
143
99
99
118
87
144
136
140
69
111
154
78
135
76
155
69
80
131
93
120
140
155
100
122
80
136
197
127
96
131
88
89
119
72
107
127
134
113
80
115
103
85
80
94
127
114
158
88
69
175
154
99
106
161
87
123
100
99
133
144
185
88
107
164
80
80
118
111
96
165
155
83
119
94
122
163
91
69
94
80
82
69
99
118
93
60
132
102
80
165
136
85
134
107
78
201
137
103
98
89
72
148
156
121
80
54
119
123
69
87
119
80
87
80
69
80
175
128
69
146
84
175
105
80
102
156
97
80
72
126
106
95
107
113
175
43
94
89
110
76
101
120
80
69
100
76
100
89
115
120
76
140
105
164
111
127
100
134
104
76
80
147
107
134
154
183
119
76
80
80
130
116
99
84
134
119
72
76
127
106
109
138
142
128
72
97
89
119
81
94
130
94
146
76
102
132
104
80
134
169
125
136
91
80
148
87
117
85
106
100
69
136
107
120
87
94
163
128
140
99
69
134
164
154
87
109
114
96
69
121
160
80
88
99
119
110
155
76
169
104
126
99
117
78
93
69
87
69
102
137
131
107
87
87
104
126
90
148
76
153
121
80
76
153
143
87
99
122
54
137
90
80
99
80
89
78
134
111
145
69
155
80
117
161
110
115
111
133
99
154
93
80
69
197
141
69
91
72
133
156
126
80
123
68
82
87
197
118
127
87
97
82
118
124
71
93
142
175
80
94
80
87
155
114
136
80
87
66
130
83
149
104
110
102
69
175
80
69
92
69
128
95
78
129
133
92
69
98
95
88
155
130
185
89
140
71
109
115
69
113
80
69
72
96
119
56
91
133
156
80
138
110
114
88
89
78
78
109
80
89
76
175
134
100
112
87
175
69
82
81
146
98
146
57
96
78
121
88
69
128
59
128
80
137
69
117
80
150
80
69
138
143
78
80
76
87
108
107
94
113
119
89
146
78
151
154
125
138
79
185
69
110
88
129
101
88
87
89
126
69
69
140
118
118
136
69
154
110
126
120
110
154
110
119
69
85
146
137
146
120
98
138
85
107
114
99
94
123
112
80
110
131
80
80
132
87
80
101
93
85
144
80
121
106
113
121
98
110
130
74
94
131
96
87
80
120
120
145
99
114
107
104
94
94
120
127
69
52
118
74
110
92
69
175
118
119
78
83
115
106
78
154
88
110
94
120
121
147
164
80
110
69
80
109
118
66
89
154
74
121
76
69
99
74
132
94
127
112
146
78
137
113
69
80
120
80
99
100
114
52
163
109
120
76
127
111
133
118
115
87
156
119
76
87
106
69
111
78
94
74
100
80
151
99
110
69
77
148
109
76
56
69
96
144
78
69
177
119
140
145
93
93
122
119
87
112
76
155
74
112
98
177
149
175
110
110
72
128
80
69
131
121
134
110
82
140
151
71
131
80
104
80
147
87
137
94
80
118
136
71
113
107
78
128
155
152
56
78
78
93
72
120
124
121
99
183
72
80
89
99
113
113
67
121
102
91
117
93
126
114
80
107
98
83
67
78
72
89
160
98
87
109
100
83
72
79
69
155
148
156
104
115
111
101
107
58
80
112
120
69
116
88
131
87
92
104
73
126
116
69
120
105
104
199
106
89
121
89
103
131
98
94
110
111
126
67
80
91
69
131
112
80
110
118
127
101
119
103
106
112
140
165
69
98
80
80
69
119
94
113
82
72
85
109
124
121
117
107
107
71
80
153
100
174
128
119
113
87
69
120
85
113
134
137
175
107
88
76
88
69
93
87
107
121
112
165
69
156
107
74
163
118
93
149
78
132
112
94
175
78
87
80
134
107
89
112
88
112
125
146
120
121
69
104
119
91
80
91
90
75
151
136
76
130
95
162
142
117
109
69
160
78
83
113
156
109
106
87
104
76
96
88
102
69
93
82
111
146
145
102
164
128
119
79
102
110
69
140
120
109
154
43
127
80
76
113
69
174
109
69
87
80
122
96
110
108
88
80
66
99
143
80
80
85
105
100
128
80
112
80
69
122
69
151
128
83
129
132
127
104
71
72
110
109
112
125
134
63
80
98
83
92
52
163
110
113
127
138
104
110
121
156
93
68
138
69
187
112
138
64
69
88
73
150
102
102
106
69
76
130
90
72
124
119
109
154
140
74
80
101
134
126
130
92
163
89
123
101
94
75
87
88
80
90
113
80
80
99
164
89
154
69
93
99
145
134
101
104
69
112
122
115
87
152
124
106
76
91
130
78
76
112
80
138
69
119
107
88
128
88
96
158
125
80
109
101
112
80
99
78
94
89
154
112
54
109
76
106
102
82
163
92
140
119
152
122
106
89
78
119
81
91
119
87
80
128
80
131
145
110
142
67
78
98
79
107
148
136
94
94
80
140
111
121
69
146
87
93
99
121
120
80
80
107
199
136
128
69
120
197
134
109
80
94
78
99
105
69
121
109
119
87
107
112
69
112
123
145
95
112
104
99
111
76
127
139
100
89
117
115
78
87
122
129
144
63
112
78
96
85
69
120
177
99
106
69
115
88
101
129
87
99
133
80
126
121
115
181
80
85
103
80
90
108
126
118
76
110
129
78
96
80
95
69
91
133
145
87
175
131
140
118
136
76
83
87
89
112
131
67
96
80
80
141
80
154
92
115
80
78
154
75
85
88
76
69
63
88
130
80
124
121
127
76
128
110
95
76
175
94
88
94
154
112
94
107
113
103
115
94
155
129
80
140
113
109
128
76
85
85
163
76
80
56
134
69
106
63
74
124
107
107
72
107
80
119
172
113
85
110
88
87
119
107
104
93
80
89
119
107
85
80
80
106
90
113
80
99
76
154
134
76
114
76
143
140
98
69
78
80
80
69
80
109
76
185
80
119
129
140
146
147
136
93
78
154
87
94
93
124
160
101
80
131
109
113
100
102
87
88
75
110
106
175
145
87
96
100
118
120
161
120
136
95
115
175
80
94
175
113
86
143
89
80
96
137
141
80
127
69
110
96
128
128
69
102
119
154
99
169
72
143
89
114
100
134
95
118
114
90
131
114
89
96
136
96
83
106
69
121
80
96
94
128
96
78
102
136
109
69
69
80
134
95
91
76
136
121
174
147
101
110
107
125
78
80
107
80
134
87
128
114
52
118
94
78
83
126
76
78
107
78
131
80
154
156
133
54
54
89
145
140
87
135
104
87
80
91
72
121
120
80
87
69
156
69
76
104
72
89
131
100
93
148
137
69
134
59
75
92
88
131
120
119
119
67
136
136
150
78
87
52
102
123
102
104
92
140
146
119
111
114
69
94
130
138
120
137
145
136
91
127
96
87
72
113
107
137
72
80
72
120
69
107
102
80
132
69
110
118
71
116
69
121
99
102
112
128
76
83
119
121
135
80
138
101
104
85
80
93
128
144
155
118
69
106
122
136
117
109
76
80
140
119
136
154
111
124
99
101
80
107
109
71
163
136
107
156
126
76
56
136
97
80
87
104
69
100
159
98
80
119
128
128
88
52
119
99
88
161
87
90
94
54
69
102
91
100
80
78
78
116
88
76
175
131
157
102
155
121
76
94
76
127
119
69
119
69
106
93
119
69
100
130
136
100
74
183
87
112
123
143
87
164
138
110
102
139
164
80
130
115
90
128
72
112
112
89
85
137
72
106
105
107
112
120
124
59
75
76
112
175
87
87
146
96
94
134
78
80
124
155
72
99
106
94
89
138
117
120
107
104
93
90
175
120
80
127
109
106
152
111
78
175
88
78
112
103
80
122
114
87
120
87
80
80
122
157
80
103
99
114
66
121
175
119
110
112
88
94
197
103
126
72
120
154
78
80
79
91
132
117
93
108
76
110
90
87
105
122
91
76
114
154
145
121
66
80
140
76
126
87
175
119
76
131
120
120
100
78
164
100
56
52
115
87
154
120
91
120
54
87
72
89
94
56
129
91
85
82
109
163
129
101
99
54
104
96
152
60
75
87
123
175
122
69
99
89
72
80
104
113
103
87
92
76
80
88
69
74
54
80
122
106
101
76
140
87
87
197
131
80
80
80
83
127
69
147
94
89
72
127
128
107
68
122
147
123
175
80
98
74
69
98
136
78
124
103
112
175
87
162
119
175
119
74
78
123
93
117
69
80
87
163
105
99
131
111
160
72
85
69
103
69
110
87
110
107
88
80
119
109
80
116
133
99
175
85
111
112
104
80
130
104
120
117
88
69
69
70
72
138
133
78
134
102
78
69
76
101
156
80
130
89
72
99
106
117
109
106
80
101
80
131
134
80
96
80
94
136
101
78
43
91
175
126
104
134
87
88
113
80
93
107
120
69
80
76
80
57
148
80
113
152
78
78
132
112
126
179
143
80
87
80
160
71
80
91
112
121
69
124
115
80
87
80
95
87
93
165
115
131
120
120
134
78
150
98
157
113
99
142
137
127
79
74
120
143
120
134
144
110
155
119
52
76
131
72
78
163
69
197
120
120
197
155
110
94
78
117
109
87
159
78
112
128
87
155
88
91
117
110
99
69
106
96
73
119
80
111
94
140
107
117
87
111
78
117
87
69
148
119
140
155
121
136
91
110
110
111
133
124
123
107
132
43
143
89
104
82
128
80
76
104
119
110
93
137
87
118
78
88
64
113
79
94
80
78
80
76
107
76
199
82
85
96
109
102
91
99
80
101
85
89
119
119
122
99
119
89
175
78
109
111
123
136
142
89
145
76
80
119
104
117
78
93
120
131
113
164
113
175
163
88
123
87
118
67
145
89
78
119
80
140
89
115
175
115
122
201
80
71
154
100
80
154
107
120
199
68
155
113
80
115
137
133
109
123
122
114
137
93
80
113
109
87
76
83
143
122
105
115
128
80
100
80
79
147
80
107
80
104
120
110
60
115
131
76
96
149
94
102
108
131
137
106
74
138
80
78
87
136
120
120
91
143
115
154
87
80
183
136
108
118
107
123
131
118
154
100
80
130
80
96
140
113
119
118
78
118
99
119
155
133
146
155
99
69
120
154
111
131
128
78
107
123
54
96
121
99
80
119
80
117
86
103
120
102
119
134
117
115
69
130
76
90
88
104
80
123
87
156
94
134
78
87
99
139
80
132
111
101
104
111
80
89
151
94
102
122
69
123
123
128
96
154
131
99
78
133
106
94
102
56
107
93
138
91
124
56
111
76
94
113
82
78
99
143
187
87
125
80
94
76
131
109
160
96
69
82
80
74
134
88
80
119
96
128
119
155
93
97
72
110
119
94
130
123
102
134
136
130
140
119
197
126
87
95
80
199
121
76
107
54
87
78
107
107
69
99
80
144
80
88
78
122
89
92
137
115
156
103
124
156
80
112
85
129
78
80
80
107
129
72
99
102
80
181
87
69
127
80
109
109
80
78
76
80
94
104
108
93
102
131
56
126
52
137
80
113
106
69
113
103
79
52
88
76
133
76
100
175
80
109
112
146
117
94
143
176
78
150
136
115
78
96
97
100
121
127
120
80
175
80
89
147
119
69
107
144
111
136
175
112
141
136
96
94
78
107
143
128
80
104
140
67
118
131
150
93
157
128
132
89
128
143
140
80
88
143
99
72
92
125
122
102
88
93
109
119
112
80
146
150
92
133
80
136
108
104
128
87
166
100
80
122
89
107
119
109
78
114
156
115
54
107
134
122
119
128
100
109
80
175
113
126
157
154
104
78
134
76
127
136
137
96
69
80
78
134
160
100
133
104
93
83
56
109
80
80
67
124
101
98
85
127
89
182
106
96
106
128
123
75
78
103
133
119
90
128
106
80
132
133
93
122
132
75
89
96
119
69
139
80
150
80
103
107
109
107
140
96
104
87
58
139
117
76
91
120
112
115
106
136
76
129
175
119
129
74
88
107
112
143
110
140
72
140
107
92
106
56
69
109
69
104
164
93
127
69
143
158
174
118
117
93
69
75
114
123
89
94
137
133
122
144
66
78
120
159
117
152
95
94
107
80
175
174
69
109
199
88
110
78
133
80
134
78
95
119
87
78
76
127
76
130
133
128
94
129
127
102
107
119
87
90
121
126
95
155
149
80
117
110
156
122
80
80
125
66
146
89
157
134
151
88
91
113
69
111
107
119
69
76
80
69
128
119
125
89
52
78
89
107
69
69
76
113
80
112
96
142
120
75
101
120
128
132
136
99
60
156
80
104
76
121
144
80
111
99
146
115
109
91
134
66
164
131
109
175
93
98
78
110
175
80
107
87
125
110
143
130
76
94
78
143
94
156
127
111
80
78
69
175
52
95
80
69
78
100
102
80
69
143
68
80
152
156
146
78
119
88
131
80
69
91
111
119
127
110
134
80
128
121
141
119
78
76
112
97
87
119
159
113
80
110
78
128
104
80
80
115
87
87
87
142
112
137
69
80
94
126
107
105
131
43
76
154
107
102
136
87
69
147
175
121
94
136
143
89
112
124
154
100
75
87
134
95
80
99
117
93
99
43
69
136
156
76
80
130
113
87
76
76
94
69
108
94
80
93
111
90
119
68
96
66
80
87
155
110
119
132
80
78
80
117
85
90
80
89
113
104
87
85
119
146
69
118
106
120
139
73
115
148
208
137
69
138
119
99
85
106
112
132
121
122
81
145
72
106
85
119
74
143
119
107
185
136
87
69
117
80
113
131
134
120
144
119
80
119
93
134
88
175
109
109
131
151
93
146
88
116
93
99
91
117
69
72
96
87
99
140
80
87
107
136
94
106
175
100
154
93
101
90
109
119
119
166
79
119
117
84
147
103
87
109
90
96
68
91
87
76
80
80
78
110
102
56
140
64
87
89
88
117
102
175
121
143
78
96
134
107
112
129
83
121
72
166
143
80
127
149
93
131
133
201
112
95
78
74
60
102
91
82
69
115
147
154
154
79
121
96
91
87
104
106
99
89
93
128
52
125
149
145
64
78
119
91
89
138
104
123
154
76
164
78
129
117
120
80
80
144
124
119
76
80
92
113
127
115
125
117
69
76
131
80
80
128
67
127
102
76
154
82
104
109
102
72
69
82
91
69
69
135
80
91
89
43
107
80
54
131
118
80
76
78
156
94
102
140
120
78
119
78
145
120
98
77
69
80
128
151
106
66
101
80
109
69
127
151
120
91
107
115
151
119
121
150
156
128
69
83
87
107
89
74
59
76
140
99
112
102
107
106
163
126
120
87
109
144
124
120
107
119
120
69
101
148
69
96
162
159
116
107
100
113
140
89
89
103
147
124
80
120
119
89
128
88
113
99
127
69
118
121
54
88
148
156
74
104
130
69
109
107
112
109
138
107
88
89
87
142
84
104
69
146
121
99
85
88
151
91
104
80
110
78
91
69
108
94
175
109
90
80
147
80
92
115
118
68
80
87
93
113
69
119
107
88
113
165
127
146
91
111
163
91
152
80
91
109
107
120
126
104
134
197
86
87
78
150
94
115
72
80
107
133
120
148
90
133
104
95
83
120
91
107
105
111
107
89
87
140
131
76
102
101
43
172
102
102
175
106
76
95
96
98
79
78
78
89
78
136
78
87
106
109
89
113
131
76
128
80
134
90
113
80
151
137
113
163
175
94
87
119
88
112
104
109
109
91
104
89
101
114
121
140
76
80
109
54
157
119
109
87
115
89
90
131
88
120
121
154
122
127
76
98
112
125
129
110
93
69
80
85
91
80
104
121
89
122
72
87
99
112
121
128
102
54
121
69
72
104
128
113
78
82
83
118
117
69
129
69
131
121
87
87
121
107
72
109
136
105
119
111
140
79
156
139
117
87
80
121
104
81
83
163
128
141
69
110
138
87
78
152
94
69
67
145
130
89
72
156
132
79
76
163
129
89
80
155
137
95
111
120
78
80
80
137
80
68
96
124
80
106
201
78
80
88
101
85
137
107
96
76
80
108
126
131
93
75
175
104
88
91
114
102
87
104
164
144
115
107
128
133
56
88
94
138
80
91
96
118
87
80
146
140
102
91
69
147
132
156
75
76
78
82
80
117
119
110
175
119
101
112
121
80
80
80
154
144
87
101
131
132
101
130
78
92
99
116
165
154
93
69
78
113
151
87
99
99
154
136
96
93
80
112
80
118
94
138
101
89
164
63
89
136
134
107
151
76
131
104
95
64
99
69
89
80
95
126
122
127
119
110
80
80
76
80
80
76
175
187
66
104
120
119
118
117
88
89
88
71
89
85
101
78
126
89
103
76
83
120
63
106
175
99
100
136
99
123
131
134
119
69
116
110
87
110
67
107
117
78
101
175
127
124
154
131
109
87
87
113
69
108
128
131
136
110
131
89
131
197
175
91
103
114
110
78
139
120
80
76
168
78
127
169
103
174
113
119
87
94
91
100
128
106
145
156
63
129
151
151
80
128
69
69
87
74
120
96
152
67
71
96
69
119
101
87
175
156
99
91
103
85
58
95
78
154
109
69
120
98
79
120
160
119
154
83
80
175
87
111
96
74
115
76
87
143
129
147
99
106
89
87
105
89
164
96
72
93
80
91
131
90
106
175
79
80
43
137
127
88
87
110
52
127
88
80
87
131
83
76
120
117
94
107
80
143
134
140
80
118
93
121
80
72
102
109
87
69
85
119
78
106
138
134
147
118
133
140
156
94
104
78
69
89
183
143
54
87
89
80
155
143
96
94
80
154
76
128
134
183
69
69
80
118
93
88
80
119
111
151
110
107
104
107
80
88
82
99
182
117
176
99
128
78
112
78
149
106
63
80
129
113
113
101
80
140
166
76
94
109
140
80
113
128
80
145
119
156
175
99
119
138
78
87
106
80
69
197
151
132
110
140
76
124
131
131
131
76
118
144
154
175
96
69
141
89
76
140
81
87
137
134
131
69
80
104
91
83
140
76
109
185
89
54
80
110
134
69
109
130
94
102
123
138
110
128
119
115
114
88
60
80
116
131
109
146
80
156
117
80
125
107
100
113
96
137
115
69
121
69
80
132
148
140
136
112
80
131
119
159
104
134
102
132
76
127
138
128
80
92
76
87
104
154
104
94
80
69
111
175
101
128
98
87
128
119
89
115
80
68
91
67
133
102
78
106
157
109
175
121
69
111
109
107
67
91
119
154
136
102
93
140
106
107
119
78
94
91
128
107
97
56
109
98
156
72
106
79
122
143
76
104
103
78
112
80
119
107
109
110
144
115
87
96
115
110
99
94
101
117
110
125
136
121
104
88
67
76
90
54
197
104
107
121
109
174
76
175
106
99
69
120
121
124
90
112
123
93
78
93
101
137
175
85
128
93
139
80
151
78
106
88
64
120
125
69
119
134
112
78
43
78
78
107
128
111
80
83
175
91
118
121
54
113
123
199
146
80
87
89
113
88
107
121
87
156
99
151
131
66
136
101
69
94
130
123
139
104
155
106
94
99
66
154
99
78
110
119
69
103
69
97
119
69
59
120
80
100
96
145
132
80
89
109
148
114
100
93
91
87
67
131
89
137
80
156
155
76
80
107
119
121
100
94
119
123
151
69
101
102
112
87
127
104
131
78
122
74
136
119
101
120
69
102
172
110
74
113
120
64
80
93
80
151
106
80
87
88
127
106
91
89
118
76
151
80
154
94
109
69
96
131
140
120
80
156
150
80
89
76
74
89
111
99
88
96
78
99
131
142
130
128
92
87
54
80
78
155
82
89
94
154
87
87
116
75
126
100
110
154
102
121
109
115
100
115
111
87
78
99
66
66
128
155
126
69
104
78
151
87
72
92
80
107
87
80
78
132
80
119
100
197
87
72
160
146
128
134
87
122
121
121
76
163
87
119
80
164
94
96
120
52
89
137
121
79
80
76
103
104
68
91
136
128
75
156
109
69
93
69
107
154
101
69
128
147
110
99
121
80
80
82
120
174
163
97
112
80
96
69
131
142
128
131
80
87
79
79
119
148
154
142
121
86
117
136
133
116
104
98
87
74
103
78
69
99
80
87
175
110
131
80
76
103
129
154
155
104
94
158
160
96
88
52
54
136
116
98
95
89
72
163
52
69
108
127
129
78
101
71
102
101
112
148
76
127
88
78
118
122
87
177
111
103
115
93
144
136
197
151
76
120
128
69
69
96
80
119
129
80
120
107
100
110
80
99
91
143
99
129
136
126
107
143
115
52
112
76
80
102
69
88
110
74
117
89
197
119
121
115
94
69
99
117
104
146
128
99
90
78
132
92
76
154
75
143
101
186
106
82
156
131
106
109
102
69
154
80
120
162
71
78
67
102
107
151
113
103
164
136
109
117
120
93
93
101
87
120
69
110
87
136
88
96
88
76
78
110
201
69
128
88
97
147
129
93
76
113
121
87
87
79
107
132
155
78
134
89
88
69
160
109
197
197
89
87
114
154
89
121
112
119
91
109
109
114
68
80
131
153
143
110
96
80
83
117
76
69
101
52
94
80
126
63
197
175
80
156
175
152
107
101
95
101
105
105
80
67
103
107
113
102
154
69
80
118
87
101
80
175
119
69
120
136
134
118
131
69
69
140
175
116
78
118
87
91
78
106
80
93
80
120
69
95
120
175
69
106
98
94
120
99
104
104
73
106
131
101
87
69
94
80
89
93
124
121
137
69
87
130
87
89
107
145
106
110
69
99
102
140
163
121
87
88
133
117
94
119
96
78
76
155
80
119
110
87
92
125
88
80
141
99
104
76
74
113
131
76
80
115
79
87
87
121
154
137
91
107
136
72
120
78
95
112
80
80
113
87
80
132
104
87
69
123
85
87
87
119
78
80
122
80
151
155
138
133
88
163
124
89
80
140
104
80
87
140
107
74
128
151
80
121
158
119
114
123
101
78
145
154
107
89
99
87
101
114
154
69
80
92
80
80
109
138
69
99
107
144
76
89
80
99
78
153
132
146
126
156
88
111
123
126
121
101
91
89
154
145
120
118
107
52
80
103
185
91
99
115
104
109
119
143
109
89
126
174
131
123
120
155
73
76
106
162
87
107
69
69
87
128
121
80
94
133
78
108
132
110
76
80
155
99
136
136
127
101
127
80
69
122
156
74
87
78
80
119
119
117
69
93
130
128
69
101
78
181
96
121
154
128
93
121
120
128
88
59
87
104
84
109
80
76
78
76
104
183
100
87
155
111
113
80
76
82
90
101
122
80
121
76
109
149
69
112
67
85
80
87
99
110
154
103
197
93
121
143
87
87
112
123
95
74
183
131
112
139
106
118
69
104
175
128
111
109
128
119
91
96
78
88
109
109
175
72
87
69
146
175
87
80
121
78
131
175
94
99
80
80
175
69
107
128
67
152
104
164
78
93
94
110
154
103
88
69
99
107
119
136
89
69
140
154
119
80
91
63
76
88
52
110
175
88
120
109
76
87
80
88
78
79
154
56
76
133
122
89
143
78
105
74
88
80
143
114
72
138
98
94
121
124
112
175
69
64
113
96
89
127
104
127
143
119
134
69
107
123
102
69
129
155
105
129
112
94
127
104
175
112
69
127
104
56
78
76
102
88
113
110
54
132
113
119
89
96
181
140
78
83
78
104
128
87
131
156
104
120
127
116
133
106
89
102
144
68
107
118
104
109
54
104
106
154
155
80
101
156
93
112
103
89
83
80
127
134
143
99
109
72
134
137
66
134
157
93
156
94
137
89
175
150
119
101
93
104
87
99
139
74
110
110
117
87
112
52
69
87
99
175
98
89
109
134
128
110
142
78
164
78
124
80
119
113
87
96
79
74
107
99
76
129
104
93
87
117
69
117
114
115
181
127
156
80
104
88
131
80
128
52
80
104
112
134
87
76
88
99
80
87
114
74
127
78
112
124
95
126
89
127
78
80
175
136
80
113
99
102
97
102
119
119
94
77
117
107
96
54
129
80
90
197
143
88
175
94
144
174
137
134
155
122
136
144
107
131
72
128
143
136
80
138
105
137
88
99
124
120
78
134
104
115
144
99
69
95
87
107
128
121
89
113
134
120
80
99
128
101
76
126
175
91
80
176
128
155
93
127
90
132
89
66
80
148
107
109
69
119
87
142
121
124
89
117
131
78
175
92
127
152
90
117
64
101
119
79
146
163
102
112
81
110
66
78
175
111
69
123
175
151
72
165
79
69
146
72
133
107
80
131
163
78
85
111
156
127
80
146
91
121
119
109
156
209
87
93
116
154
80
78
102
87
80
165
83
117
80
80
163
107
119
120
79
130
76
69
80
145
88
156
123
134
96
130
122
76
117
106
82
125
119
112
72
107
122
90
80
99
82
89
157
156
80
117
128
163
96
87
146
114
94
94
98
131
94
115
112
80
89
88
80
94
88
175
76
110
163
64
138
91
127
56
69
91
98
128
119
91
91
76
119
96
91
119
175
87
80
107
72
76
80
126
134
69
115
120
78
66
163
197
123
96
104
96
78
80
80
110
143
157
175
106
99
99
138
78
118
146
69
71
143
132
72
69
133
142
76
80
116
131
109
94
128
110
121
112
78
64
72
60
88
91
85
149
183
151
69
78
107
94
122
129
80
127
109
151
131
136
82
78
120
76
151
69
131
131
87
80
99
128
80
74
124
120
78
131
145
175
87
89
111
67
76
87
120
78
69
80
140
134
119
115
52
78
95
117
134
146
126
87
91
121
110
74
137
78
94
119
119
120
145
89
80
80
119
118
156
132
96
119
110
92
121
80
123
87
90
107
101
80
80
154
128
148
80
74
78
78
93
127
76
94
80
76
63
96
89
99
78
89
110
119
89
80
155
148
126
80
85
100
165
90
69
76
120
78
120
52
78
111
130
99
120
140
87
94
100
69
126
96
111
80
87
89
69
54
120
104
52
89
186
69
119
110
86
80
154
119
117
163
128
64
113
107
77
88
99
127
151
165
117
144
88
117
79
107
127
88
134
89
78
120
120
87
104
76
128
75
142
136
89
78
102
78
88
172
67
107
136
94
69
100
128
110
146
94
129
87
67
132
107
122
117
114
89
120
80
153
117
175
117
107
136
69
90
107
169
64
107
101
131
160
104
80
129
128
87
120
80
54
118
80
89
94
69
119
118
79
109
87
80
78
120
101
87
115
111
69
56
88
99
87
109
104
69
93
130
101
94
91
76
87
117
140
123
127
120
175
103
69
56
119
120
52
123
43
80
101
78
128
80
106
92
154
114
69
109
93
110
54
87
117
152
117
119
88
157
72
152
69
94
120
147
87
92
104
99
80
110
80
107
124
72
78
154
106
76
201
96
87
105
119
109
161
131
88
93
109
163
110
114
104
110
76
120
118
63
110
128
110
96
131
174
106
87
95
93
88
80
76
99
156
89
142
76
99
121
107
112
69
118
120
94
78
127
137
123
85
87
80
133
118
141
87
108
115
71
105
197
89
96
100
111
149
113
121
156
78
97
107
119
78
87
91
109
96
89
97
107
114
121
164
134
80
87
148
175
115
80
99
78
127
94
119
103
119
120
197
111
80
119
146
87
106
160
135
94
128
56
93
143
107
137
69
80
69
139
115
156
128
78
114
157
119
131
102
138
54
90
127
145
124
103
76
129
80
131
143
117
121
121
121
60
94
69
69
99
87
175
121
83
54
80
89
115
119
171
103
142
95
175
87
169
106
154
155
107
104
120
100
151
71
80
80
145
143
69
134
76
115
78
56
96
89
164
119
101
87
131
195
155
76
69
69
121
172
163
156
78
106
119
78
71
118
52
134
138
117
130
78
126
89
80
136
82
69
128
175
197
165
69
119
104
150
80
134
117
94
89
88
129
175
118
74
137
52
80
122
121
52
72
155
109
137
94
107
56
115
109
104
80
104
120
156
89
151
120
111
156
124
74
114
69
120
124
152
172
87
99
120
107
122
113
80
91
80
89
119
88
87
104
89
107
107
88
87
80
131
90
115
81
107
52
150
123
99
136
87
164
69
78
128
154
102
90
154
118
110
105
134
143
72
100
134
155
102
134
72
83
115
112
82
80
52
80
76
87
154
76
120
140
100
119
74
69
119
175
56
83
78
80
99
136
146
90
80
130
87
109
59
140
175
52
118
155
121
155
120
117
143
154
80
54
96
76
119
80
128
140
87
109
97
123
110
80
134
83
183
88
160
145
104
111
117
69
100
107
154
120
157
138
81
80
89
69
54
129
79
121
109
109
98
141
80
136
87
56
113
71
121
126
52
163
79
175
74
94
90
72
119
110
107
88
136
99
181
113
160
131
64
101
144
120
160
80
111
119
115
119
59
94
75
136
80
69
163
90
147
119
119
87
143
108
67
112
94
137
106
87
99
121
112
126
83
119
117
74
118
175
111
99
134
127
69
98
128
69
99
80
119
69
87
76
118
116
143
93
102
134
145
106
131
78
93
117
117
102
132
104
106
110
82
172
102
78
151
114
109
102
104
89
124
76
69
121
119
114
106
110
107
76
151
80
91
140
88
128
95
87
100
183
69
119
80
146
104
129
89
80
157
107
175
106
142
163
156
91
67
97
113
84
100
94
156
120
123
111
102
69
136
166
122
118
88
154
150
154
69
106
112
43
72
78
102
91
91
119
75
69
100
119
121
109
175
64
154
175
119
90
69
131
87
99
99
69
88
126
117
75
110
121
79
117
80
87
76
107
102
133
101
121
107
69
88
119
99
99
120
151
96
106
94
163
99
72
76
129
140
154
69
87
69
80
78
89
52
89
80
128
93
117
72
130
80
98
136
117
80
56
78
140
106
69
93
93
101
69
69
123
156
93
96
174
107
126
69
88
69
131
153
113
197
174
155
120
89
117
69
128
87
76
85
132
91
175
69
124
58
131
109
80
87
154
96
87
157
96
80
175
175
122
115
80
155
109
104
100
113
122
76
94
156
87
80
74
114
74
78
110
134
114
99
175
135
115
78
117
134
117
123
175
101
119
124
87
119
66
76
80
107
119
122
106
130
80
80
144
52
80
121
112
156
104
80
79
88
109
143
87
117
155
76
76
135
78
187
197
99
76
76
69
115
154
197
80
102
94
148
93
110
175
88
87
175
74
110
133
83
104
156
110
89
88
154
118
136
115
120
145
80
149
69
112
166
95
87
110
88
119
69
88
69
80
99
119
103
94
113
110
120
88
96
120
54
107
88
88
119
131
112
120
151
114
183
93
99
80
69
64
99
106
93
108
94
119
133
104
117
120
175
87
106
146
117
131
88
78
101
87
175
113
109
138
131
99
54
122
76
69
87
69
112
162
90
69
76
136
163
121
134
109
117
156
143
74
109
107
123
119
175
175
110
175
119
156
89
69
153
154
96
78
99
96
76
54
103
87
133
89
72
144
110
131
197
93
164
69
104
96
76
146
109
79
152
99
57
92
82
154
140
69
123
78
78
88
143
112
98
134
143
111
80
78
109
119
147
131
76
104
100
154
76
119
146
80
103
80
128
162
69
80
128
95
175
119
78
120
127
132
112
87
129
103
97
67
99
133
80
80
151
113
99
69
80
76
134
52
87
112
80
128
80
76
99
107
120
117
126
132
80
111
80
69
120
109
110
157
76
119
109
93
69
80
110
117
69
108
120
109
104
175
131
104
164
76
69
100
156
76
66
64
115
99
101
123
123
85
89
96
88
115
134
80
93
93
69
119
89
104
76
123
155
69
80
80
175
71
116
157
129
88
78
201
156
87
107
100
127
112
69
109
156
89
93
119
87
54
94
52
131
107
96
134
148
69
94
131
148
78
80
80
162
137
94
103
122
94
129
133
83
134
156
154
93
110
78
96
64
174
134
100
99
87
69
128
80
91
148
123
154
69
57
76
154
91
80
96
119
154
140
88
175
143
99
131
132
87
111
88
128
113
99
120
122
99
107
122
78
163
128
128
69
87
80
82
69
102
106
107
131
69
88
69
78
97
129
83
156
94
99
94
80
99
175
87
164
76
128
93
87
88
110
109
142
80
112
110
80
105
120
104
130
80
95
110
151
150
137
113
134
119
95
121
80
154
127
99
80
123
94
69
110
76
155
72
153
89
94
104
131
115
110
133
74
126
69
79
107
90
78
80
103
76
69
122
80
92
121
140
87
128
121
85
103
100
100
72
78
127
140
78
91
80
87
78
71
136
80
88
156
121
76
80
106
117
80
175
129
66
78
117
104
175
69
130
107
120
72
107
104
119
113
80
131
110
87
54
66
113
113
69
99
119
96
54
164
76
69
119
69
138
90
87
87
113
117
69
145
80
78
99
111
89
87
91
104
78
113
91
133
56
166
87
132
164
128
74
69
80
78
156
87
90
69
96
140
43
118
151
131
78
131
102
78
132
175
143
114
119
162
100
110
80
85
102
80
110
76
76
80
69
106
152
93
131
80
107
67
117
75
113
104
112
80
106
160
110
128
76
78
56
145
109
87
96
133
134
114
80
74
80
69
102
156
69
119
99
80
120
104
69
99
100
175
69
87
122
107
69
69
83
87
74
88
78
105
94
69
94
88
52
74
110
113
143
124
54
197
118
89
140
80
109
140
87
69
116
120
139
148
80
106
101
119
120
143
122
69
54
87
54
102
148
133
112
78
175
68
87
80
175
119
140
162
69
69
93
118
154
101
92
80
80
107
126
71
103
87
118
129
93
119
120
147
69
82
109
127
69
108
137
131
129
75
134
93
156
121
143
69
76
88
87
110
113
121
112
88
115
76
133
85
91
128
152
119
122
107
128
92
78
72
99
127
103
136
87
174
139
69
136
166
175
121
143
91
80
115
134
113
132
85
140
80
125
87
99
120
94
118
163
120
101
94
93
69
88
76
164
151
119
76
87
74
121
80
119
76
76
122
143
136
160
128
140
83
113
80
93
134
119
144
132
115
155
85
108
112
76
164
129
69
128
101
99
78
128
119
115
197
78
128
119
109
106
87
80
76
118
100
96
133
96
134
94
69
76
117
76
154
121
69
93
78
54
112
80
87
113
131
111
80
113
175
110
99
80
145
96
89
69
127
128
155
111
93
94
91
102
102
80
101
102
133
80
128
92
120
66
69
74
64
120
128
111
119
120
104
124
78
76
99
105
154
120
72
107
76
74
134
126
84
121
101
127
118
107
80
94
145
58
185
80
122
134
131
68
120
78
94
133
136
88
119
134
125
115
114
127
69
121
104
78
80
119
154
101
160
175
99
164
86
76
88
101
120
143
123
66
76
74
76
88
175
119
87
69
79
87
80
82
151
89
175
134
91
98
56
87
103
99
164
91
138
69
119
110
187
69
163
83
129
117
120
82
78
88
89
99
89
89
87
113
87
75
110
69
107
119
98
93
136
96
80
107
116
96
87
107
69
69
76
92
93
120
136
73
151
94
115
109
128
80
94
143
78
106
102
121
93
127
146
94
80
88
93
80
72
78
146
87
112
104
140
132
145
94
69
91
76
157
102
69
156
114
78
131
106
69
117
80
163
134
130
109
90
108
85
69
78
85
43
54
80
140
136
121
79
131
102
87
80
69
101
104
175
132
141
128
138
80
104
69
79
149
69
102
110
80
89
69
87
76
80
91
99
78
138
136
115
80
131
94
104
107
99
118
67
96
102
80
89
110
72
100
102
127
111
134
97
124
78
151
140
80
99
150
103
112
119
126
142
109
69
69
69
87
107
113
112
119
69
87
126
72
160
120
110
120
164
98
111
77
145
76
71
88
185
69
103
89
156
113
87
127
107
139
174
82
154
102
94
123
146
107
122
156
78
107
118
146
102
80
119
69
115
76
119
197
111
109
102
114
99
80
119
101
113
143
88
92
76
133
138
128
156
104
85
118
130
69
115
163
113
154
89
80
120
87
91
119
69
102
145
121
120
52
88
81
140
69
95
91
113
127
90
89
175
80
140
106
132
146
169
125
100
109
69
99
78
175
89
140
87
123
110
80
104
130
69
104
125
109
110
69
142
64
106
111
87
120
106
72
107
140
94
80
96
120
154
79
131
120
78
72
183
109
137
57
78
85
149
69
107
64
134
89
131
113
98
107
131
78
80
96
87
109
91
122
140
69
92
136
136
76
160
78
69
78
76
93
95
115
113
88
67
69
136
155
80
120
78
78
145
80
91
94
126
78
115
94
80
78
112
52
122
69
121
109
99
85
118
175
85
85
54
91
107
89
175
107
106
78
127
69
69
128
99
94
128
131
131
137
140
80
80
87
72
87
80
83
153
119
107
121
99
110
75
80
69
143
94
181
94
80
153
89
69
128
80
76
76
117
90
89
78
128
75
175
124
104
88
144
110
144
74
78
74
106
94
94
80
96
140
104
74
87
121
78
151
113
78
99
72
94
119
133
109
72
72
80
54
80
69
69
94
110
107
181
80
74
141
80
123
89
72
157
112
112
128
138
104
80
87
76
151
75
107
80
112
140
119
106
69
107
129
201
52
80
140
89
126
104
134
126
120
80
112
71
154
119
80
90
160
109
124
108
197
131
129
122
99
119
128
74
109
87
126
80
80
122
122
102
76
100
99
69
109
111
126
128
103
110
93
89
78
107
87
79
88
117
85
134
131
87
120
106
109
104
91
107
94
80
80
80
216
118
140
132
121
151
76
93
134
164
69
80
121
80
141
98
80
107
134
104
80
90
87
154
89
76
94
115
152
87
85
151
80
80
81
98
110
163
140
94
78
108
72
69
136
94
69
114
104
148
78
132
131
76
134
85
69
110
99
88
69
112
69
119
80
78
69
81
95
151
78
128
113
99
78
107
197
110
94
111
99
80
104
80
91
132
94
76
102
121
69
88
72
72
87
76
80
119
78
106
113
75
110
80
67
153
151
101
120
154
128
76
134
69
88
90
119
58
78
121
114
84
111
115
121
69
102
121
87
113
140
140
107
115
87
71
117
106
117
78
119
114
94
79
80
131
109
107
78
89
87
155
107
127
87
136
88
76
138
119
80
87
80
100
139
59
155
133
80
80
88
88
72
93
66
118
100
85
87
95
156
99
175
99
88
91
131
113
98
106
134
157
111
99
118
89
107
174
67
105
91
131
175
148
103
92
103
101
76
69
78
69
78
123
80
76
154
80
197
197
127
112
130
107
111
134
145
181
126
197
85
83
75
69
121
117
72
87
100
148
119
80
117
138
85
88
112
83
87
69
140
134
134
88
99
134
99
80
80
140
80
88
122
134
76
104
146
94
174
87
94
106
127
100
69
142
76
72
80
78
76
87
128
120
154
117
83
137
134
102
107
96
174
156
131
109
107
109
73
113
106
121
146
136
54
155
178
152
89
96
106
117
74
96
69
104
96
72
89
57
140
99
121
140
128
163
88
121
109
93
120
162
80
106
163
114
117
59
119
110
101
155
119
116
128
101
98
84
69
199
88
88
76
134
87
120
69
99
137
80
121
120
54
94
115
128
165
130
76
115
142
89
138
106
153
52
136
69
133
99
99
107
99
69
78
78
107
93
142
134
110
128
101
75
76
79
69
86
87
76
89
110
89
72
80
69
83
119
133
78
74
89
67
143
197
175
137
100
119
120
103
134
100
162
109
112
54
125
101
80
96
133
112
127
175
119
76
164
111
80
78
80
111
88
107
155
78
115
80
96
112
106
110
175
154
120
152
126
133
144
175
94
109
69
113
76
142
107
113
101
106
155
123
116
143
131
69
118
106
121
117
87
87
107
119
69
99
93
113
111
107
95
136
72
80
155
56
137
109
131
90
129
93
69
137
116
96
99
122
87
88
79
109
88
87
120
76
69
164
90
56
119
112
110
54
80
146
80
120
127
126
137
66
102
112
118
108
102
116
128
79
145
128
96
128
89
76
113
132
134
114
69
88
94
93
80
69
106
106
76
107
87
101
136
72
69
69
106
131
72
99
78
137
58
88
80
142
85
127
117
80
157
93
115
76
78
80
80
69
93
104
89
79
64
78
163
112
76
80
122
110
96
96
122
97
118
86
134
87
89
154
126
78
88
201
91
85
58
121
69
87
73
107
95
111
101
138
89
140
72
82
128
88
96
69
106
80
99
72
69
88
96
131
78
99
87
100
80
111
80
121
110
52
96
87
80
115
113
132
112
120
99
121
131
113
72
110
101
91
164
87
93
78
112
118
111
125
103
148
113
80
95
80
97
89
131
99
69
78
104
121
159
78
89
103
115
107
122
110
97
69
127
104
80
112
69
69
88
133
52
69
78
129
87
72
146
87
79
87
116
175
109
130
79
194
98
120
54
122
111
130
69
78
80
146
64
147
78
127
119
111
135
163
103
80
104
86
156
176
112
80
124
78
115
117
87
128
82
78
120
128
194
120
107
78
145
64
78
119
117
78
60
97
115
132
123
120
80
124
126
54
113
147
113
120
120
120
78
163
123
151
98
106
131
80
152
121
80
91
76
197
91
106
119
80
123
157
90
119
133
98
80
107
69
78
166
91
87
117
126
106
107
90
113
80
128
120
123
122
103
93
72
102
122
109
120
107
126
119
169
159
69
122
131
89
69
80
80
137
128
96
99
114
80
120
148
85
118
80
90
91
100
127
143
76
156
110
88
104
80
107
52
130
69
72
78
101
144
54
88
101
93
76
85
154
100
106
157
143
174
124
85
101
73
88
197
131
99
74
156
141
109
119
140
78
147
109
94
99
121
54
129
78
157
119
59
128
154
80
101
123
156
106
131
128
143
93
87
110
93
92
127
96
123
128
80
131
76
164
154
80
72
146
110
93
67
80
69
76
155
80
119
136
80
113
119
69
123
120
106
87
157
163
121
103
119
117
128
119
133
80
119
118
80
122
136
89
156
156
125
106
142
120
146
154
141
120
106
106
79
96
117
87
100
94
117
155
87
122
137
79
111
136
155
131
119
134
89
87
119
103
102
94
159
151
122
78
110
80
187
93
69
96
109
112
132
164
91
56
126
107
117
125
118
103
152
102
80
107
155
87
121
131
69
72
175
140
99
100
143
131
80
104
128
128
66
107
114
140
134
124
82
72
80
137
81
118
76
113
136
136
80
121
87
99
134
114
83
117
128
80
144
111
112
120
134
101
89
95
89
131
88
110
130
135
101
127
194
117
73
123
130
143
113
119
69
117
93
80
89
87
93
102
89
52
106
97
138
130
80
106
90
80
201
118
101
69
74
80
121
156
140
140
125
144
125
163
129
119
64
104
109
94
76
91
134
134
120
89
89
90
162
80
107
76
69
155
89
131
74
78
67
132
136
93
87
111
119
91
80
151
144
85
102
102
69
185
131
89
123
71
119
136
69
99
78
87
155
87
56
89
154
143
121
85
128
107
127
119
109
69
80
78
78
99
144
78
119
87
131
122
113
112
118
104
134
109
89
69
93
110
98
85
95
89
80
95
124
80
99
78
69
69
131
88
69
134
174
120
155
126
78
69
136
56
89
104
99
137
114
94
95
96
119
80
127
80
69
125
72
99
86
175
87
85
80
140
119
134
69
80
137
119
99
118
54
148
121
127
141
163
76
76
112
119
117
136
90
74
80
119
107
155
78
116
80
80
119
114
100
174
104
128
106
175
131
83
119
43
128
80
80
110
90
80
96
80
121
101
69
131
117
100
78
94
89
134
117
109
103
105
100
114
80
151
100
91
117
109
113
138
122
69
91
56
87
113
140
80
69
103
66
52
107
133
121
92
177
99
69
117
54
120
93
110
154
80
80
111
142
138
94
143
78
76
138
78
129
69
110
107
114
80
126
91
154
82
131
80
107
87
156
91
88
90
89
76
109
96
146
74
104
115
59
78
87
72
104
91
78
153
154
197
99
69
117
80
96
74
136
134
120
88
110
78
128
119
99
72
117
87
56
109
109
120
89
129
165
74
154
101
69
78
109
88
87
164
131
80
128
69
109
80
52
69
91
78
58
100
121
123
140
144
109
94
80
85
69
78
69
134
115
117
105
106
117
151
136
72
95
107
133
101
133
88
175
154
101
87
128
137
115
81
54
96
119
83
145
72
102
87
131
116
69
128
156
111
87
140
87
85
88
119
69
108
80
90
93
76
93
103
147
130
75
119
88
134
115
110
88
90
102
76
114
121
110
98
113
154
78
117
74
66
136
120
89
116
72
120
96
85
76
121
76
69
80
144
85
78
78
80
103
101
112
140
99
175
106
87
111
89
163
131
120
87
80
87
112
80
72
89
87
69
69
137
111
87
109
87
117
80
122
121
76
156
76
119
120
99
94
80
117
80
136
139
131
145
107
94
76
80
119
152
128
76
117
151
110
111
87
131
124
94
69
131
69
118
121
163
76
137
63
140
80
94
112
126
52
133
78
138
100
118
69
78
69
197
118
94
80
140
73
96
103
128
129
89
109
148
164
99
67
120
148
94
82
88
76
104
93
88
99
90
109
106
78
68
104
154
117
140
87
143
87
56
92
109
120
85
115
75
101
87
76
54
166
120
74
122
128
52
80
85
134
103
76
143
146
102
113
89
80
74
175
109
67
85
120
128
80
110
56
76
119
132
172
71
82
109
114
127
136
78
134
80
100
54
137
106
118
82
74
76
69
72
106
156
117
110
82
146
76
134
103
109
43
119
80
87
80
101
118
114
107
117
93
69
145
103
76
140
123
78
69
113
60
132
99
133
131
101
88
69
131
119
111
101
96
115
151
115
175
88
122
88
115
143
80
85
106
162
143
104
133
104
92
128
69
88
66
107
72
107
154
106
94
121
156
119
87
124
80
80
169
89
133
76
109
75
80
118
113
87
107
156
118
102
89
80
123
109
120
80
87
113
76
77
102
80
156
128
145
163
72
120
96
120
80
126
113
59
140
80
80
137
87
118
109
69
56
144
119
104
90
118
54
155
115
120
87
71
96
120
132
129
76
93
134
110
43
80
94
87
155
72
117
67
109
113
110
199
69
157
69
78
80
131
96
99
116
104
69
120
166
164
87
118
148
109
134
120
77
56
99
123
95
89
78
110
91
88
107
115
91
151
80
105
66
119
144
80
95
89
113
80
88
142
136
113
87
78
69
100
156
120
154
128
96
124
144
138
129
99
99
119
69
80
79
129
102
121
101
89
87
128
104
125
115
140
106
143
93
80
136
80
101
59
74
119
119
163
99
117
80
88
119
79
130
76
143
93
58
80
132
85
119
145
83
193
134
93
84
69
112
121
134
112
110
114
109
94
95
90
99
80
197
72
111
93
78
119
87
110
120
197
78
122
80
120
104
160
154
78
85
197
109
175
85
83
112
157
87
107
134
111
111
151
109
80
104
102
155
96
99
115
87
80
127
136
176
128
113
138
76
69
100
88
138
145
112
91
102
124
107
116
54
123
93
80
69
131
99
121
134
146
76
91
69
79
112
72
143
78
141
120
69
156
72
110
118
80
69
74
94
133
102
109
93
78
166
59
162
128
99
117
109
80
155
76
104
87
111
138
123
106
69
145
140
107
138
69
109
108
69
76
76
69
66
101
69
116
107
104
67
95
148
127
155
94
87
96
87
87
137
88
54
78
69
154
78
103
78
92
138
91
107
168
80
125
89
94
87
78
78
88
129
54
110
106
154
145
155
76
139
122
54
69
69
151
64
117
89
67
122
154
69
112
78
109
131
154
138
154
69
69
118
146
101
95
87
127
88
148
137
145
132
164
69
100
107
95
117
76
119
80
92
107
136
187
113
80
91
113
122
128
165
151
93
88
69
136
131
121
175
129
110
80
85
94
100
78
87
85
175
120
80
110
88
80
80
89
99
118
128
116
107
117
98
85
110
87
99
72
102
80
163
89
143
69
80
87
104
72
87
93
127
157
134
155
106
131
69
132
147
123
143
131
117
74
81
67
87
119
99
117
146
126
113
128
80
107
80
87
96
80
101
93
104
119
69
78
117
104
164
136
129
85
122
136
54
109
111
117
120
109
94
149
78
149
120
155
80
136
110
72
120
107
106
56
113
60
89
117
107
181
136
155
107
128
131
120
118
76
128
69
146
152
130
78
78
163
100
69
107
64
140
81
112
151
134
94
80
156
109
71
71
136
107
88
114
126
87
154
131
119
80
76
81
110
135
80
122
90
133
131
120
118
109
140
119
69
125
88
136
131
72
99
89
101
74
100
146
69
80
90
136
100
80
80
80
131
78
120
88
120
69
86
129
69
87
101
109
74
87
134
137
154
118
108
133
89
88
113
115
111
69
76
115
197
117
120
126
138
201
119
80
69
69
123
110
76
80
175
96
93
89
56
133
80
80
100
113
93
69
104
89
183
161
99
107
80
99
76
104
90
136
80
52
132
87
76
99
69
122
149
124
143
103
123
110
110
129
91
122
56
76
117
109
112
80
99
156
88
72
78
107
107
175
121
164
106
125
76
132
118
115
114
134
87
107
134
100
155
69
152
87
116
87
80
117
80
87
117
99
99
104
128
109
137
96
93
120
134
119
89
197
88
107
102
67
120
80
117
78
93
76
52
134
94
146
88
99
83
133
119
112
175
71
108
95
146
103
134
114
116
91
123
80
99
94
87
128
88
92
106
80
93
133
109
76
151
69
87
116
82
114
109
98
72
113
112
128
111
107
54
69
146
156
119
137
80
107
113
69
158
163
80
80
104
80
119
128
80
87
99
104
78
127
69
112
150
76
101
145
78
119
63
175
109
172
101
76
80
105
134
164
120
100
163
109
151
85
98
100
73
88
107
199
69
103
166
43
43
100
89
163
154
108
149
80
121
114
80
72
115
99
128
118
69
80
107
197
110
113
87
112
76
100
129
154
69
96
172
96
134
127
66
80
99
76
87
71
78
112
112
136
88
128
119
101
136
117
64
74
140
120
152
110
112
102
119
124
80
122
94
147
87
146
99
87
121
99
160
95
98
118
69
71
78
121
99
69
99
128
141
104
146
135
87
82
96
109
89
94
117
69
103
69
69
112
78
131
80
120
56
133
155
120
128
197
87
120
69
109
96
113
72
127
69
69
148
148
80
107
145
87
69
88
175
119
94
69
113
107
80
87
109
119
128
133
109
119
94
113
74
91
120
111
144
75
76
100
111
69
132
69
71
104
85
107
76
120
106
72
76
124
124
172
99
74
127
96
162
136
72
199
74
143
72
128
136
111
110
76
80
107
107
76
112
120
112
76
87
126
75
133
87
88
163
154
94
156
69
156
131
136
69
128
142
72
80
69
74
136
85
109
126
103
80
93
54
80
87
78
134
99
72
74
87
95
120
69
80
106
87
69
92
109
78
117
119
110
110
89
88
78
69
117
163
98
121
88
69
69
107
146
113
156
144
142
117
114
128
144
111
103
69
112
96
104
85
52
87
78
99
110
78
102
119
107
156
102
80
69
95
128
93
77
117
145
94
148
56
72
166
80
106
117
80
128
109
109
156
104
94
69
87
145
110
101
98
143
151
78
69
99
112
110
80
172
90
80
80
89
96
72
80
119
72
146
80
111
99
103
99
95
103
137
113
90
69
131
99
67
93
74
104
88
78
91
109
69
140
99
101
100
131
119
69
87
80
95
79
154
69
78
99
69
80
106
69
119
109
175
101
113
106
72
115
133
73
123
87
128
107
115
76
130
76
80
154
94
197
140
154
130
125
69
87
94
140
69
175
151
116
73
80
117
94
136
110
124
78
119
88
118
128
58
80
80
80
124
110
58
106
123
69
115
89
124
140
96
110
69
76
134
185
113
151
155
69
164
136
80
59
130
109
93
175
83
137
148
101
72
79
155
104
87
96
67
76
149
155
72
183
94
88
99
69
102
93
132
117
137
87
78
69
114
67
95
128
52
80
181
78
124
128
68
84
80
103
87
81
102
129
94
80
89
111
78
81
87
72
87
92
56
88
109
78
104
125
76
88
80
113
99
75
119
137
120
111
69
114
134
69
102
76
128
93
69
89
151
104
89
99
80
87
81
117
120
119
76
175
110
126
69
76
99
115
130
97
87
80
69
153
76
120
102
52
79
109
76
74
109
78
175
94
99
140
69
52
103
56
120
134
87
69
163
80
89
72
129
76
88
130
88
146
155
68
134
111
54
175
68
111
122
119
95
127
165
98
81
118
120
151
152
111
106
107
154
102
69
91
69
109
109
80
110
100
87
96
140
171
127
79
104
99
154
131
76
69
109
87
74
104
181
94
76
88
118
95
76
151
98
80
76
80
80
116
117
68
197
119
66
80
154
121
88
69
169
88
163
80
113
104
112
154
80
119
62
99
98
78
104
115
163
147
140
119
76
133
145
75
69
87
96
111
109
128
136
89
87
85
69
119
69
69
148
78
107
125
127
94
80
112
78
94
134
119
121
87
80
74
80
67
156
99
134
82
110
89
142
80
66
117
119
111
96
67
142
163
93
88
100
105
101
87
69
78
106
128
109
154
69
134
164
121
80
112
154
162
63
164
140
120
136
74
130
112
119
130
111
110
163
107
145
63
131
137
114
98
155
156
89
187
87
109
99
94
87
120
147
133
92
106
76
99
99
93
118
121
91
127
154
80
121
147
131
104
155
116
109
175
175
142
54
133
114
175
99
64
143
111
143
140
100
80
76
100
89
78
99
140
69
116
87
72
119
94
85
87
88
94
119
93
89
74
78
112
119
135
72
136
141
147
143
151
120
106
87
131
69
80
109
89
76
94
91
136
106
69
80
100
85
121
87
104
104
122
80
172
69
175
98
120
93
69
112
134
154
60
183
75
80
79
105
113
43
117
90
80
117
87
98
88
99
139
121
80
87
87
112
140
120
141
135
95
134
54
101
69
131
142
134
110
80
133
120
134
87
175
101
74
112
104
69
89
78
155
113
89
112
121
140
80
76
99
90
66
106
74
80
175
146
91
102
72
156
136
109
197
80
113
69
115
82
116
114
128
120
72
103
87
69
109
197
107
154
80
87
114
93
113
69
87
104
110
90
120
117
133
110
95
86
78
87
119
155
76
88
87
80
87
69
134
96
128
132
80
69
104
96
93
105
76
94
80
122
175
120
69
154
87
78
104
128
69
69
117
113
78
133
78
98
120
76
128
148
102
121
76
80
120
162
78
106
155
114
69
140
103
76
79
104
143
80
80
75
123
92
87
69
125
74
56
80
74
122
76
119
89
114
93
109
87
118
119
134
100
154
80
120
69
112
130
111
73
140
131
78
154
115
117
78
140
76
97
156
147
91
128
69
140
113
134
104
150
136
67
78
124
117
130
175
118
104
105
69
110
143
80
112
89
87
128
121
87
119
128
87
79
78
98
80
154
60
114
112
140
119
110
128
104
76
80
131
143
102
76
136
104
167
175
63
80
99
123
91
88
107
119
110
76
109
69
143
101
128
101
74
113
131
111
146
69
80
102
80
145
93
94
92
151
131
86
118
80
83
169
101
131
78
156
103
119
80
110
134
130
90
106
166
119
87
129
79
113
152
76
90
110
132
117
121
69
117
127
126
119
78
76
135
104
134
99
143
78
128
80
63
110
113
102
111
110
115
80
78
76
129
151
80
99
154
88
128
78
76
80
128
104
72
140
80
69
134
69
148
80
56
126
133
128
116
91
139
128
146
76
87
76
115
110
149
106
76
87
76
145
87
106
104
163
114
119
78
80
151
87
88
110
112
69
98
120
80
107
72
96
96
138
87
89
110
94
127
85
69
85
107
104
119
80
118
76
117
110
102
197
143
87
94
102
78
94
80
118
78
85
80
106
124
87
88
96
133
117
144
100
155
56
94
138
100
102
136
89
127
102
109
109
69
120
163
78
140
120
146
146
124
80
127
85
80
136
80
85
83
175
130
147
107
88
63
151
134
91
67
107
102
103
185
69
88
99
71
175
107
80
174
101
137
134
89
88
69
175
151
154
109
80
156
113
52
69
128
99
142
87
76
103
94
137
131
78
80
78
154
109
96
69
136
129
112
128
80
69
59
78
137
148
117
91
112
76
115
106
129
85
107
80
88
72
78
144
99
106
100
140
134
111
87
93
119
154
80
120
78
80
154
100
101
100
106
93
94
175
110
151
91
155
106
76
98
135
119
176
134
91
119
128
186
69
117
91
156
107
80
154
112
78
144
145
98
102
154
146
127
75
106
175
136
131
110
136
80
80
81
148
131
88
129
131
128
98
93
87
95
122
78
69
132
96
78
80
88
98
80
125
117
157
93
154
88
79
157
76
80
99
104
123
110
175
90
143
128
154
72
52
87
99
76
87
85
134
56
87
72
77
97
72
100
89
124
127
101
74
87
157
136
107
128
113
78
163
72
54
78
118
154
63
78
80
101
94
87
79
164
106
119
147
120
103
119
121
80
72
128
117
76
132
154
95
110
138
102
114
80
98
85
133
145
119
80
128
79
115
118
69
130
120
94
112
69
76
137
128
131
145
169
113
87
111
107
187
81
117
107
199
155
76
160
69
87
91
156
104
114
120
145
80
97
138
110
121
122
67
80
88
83
72
131
94
156
75
127
93
119
89
134
80
96
99
78
111
89
107
102
106
69
107
80
80
78
199
76
155
87
117
89
85
104
143
80
114
134
85
122
69
76
112
119
83
155
126
159
106
140
87
74
107
107
52
56
54
87
89
154
165
145
93
123
43
115
69
93
76
156
159
102
114
69
87
69
106
152
169
110
160
140
78
69
83
80
114
120
127
163
119
143
96
106
166
119
93
132
72
87
78
175
153
120
109
90
165
119
87
91
66
87
99
201
156
140
80
54
82
52
91
98
89
175
88
76
109
80
119
154
76
133
150
76
119
145
82
121
66
120
80
101
136
80
80
145
80
101
107
101
96
92
80
88
175
116
156
89
99
117
154
72
87
144
76
115
80
125
69
113
151
151
119
69
80
134
93
102
80
154
94
80
83
78
69
140
112
54
88
151
96
121
119
110
69
88
87
95
69
87
104
94
102
89
118
96
73
120
143
102
76
89
112
85
80
113
115
69
134
79
117
131
109
76
69
156
91
155
154
78
107
72
106
71
152
106
120
121
63
146
101
130
78
74
96
69
102
137
80
155
69
101
104
69
99
110
99
87
120
163
126
89
87
69
69
89
87
120
101
122
76
79
107
128
88
74
136
136
118
76
107
87
83
78
112
145
80
165
87
109
80
145
131
69
118
80
104
124
76
112
85
69
76
105
102
69
154
110
119
100
78
140
101
121
151
78
98
116
98
69
133
136
136
110
100
93
115
172
113
54
52
76
116
86
69
118
69
102
126
83
78
119
107
98
109
107
78
136
147
76
69
91
69
118
122
154
142
87
54
145
115
175
87
87
109
69
128
134
92
87
163
175
77
113
80
78
91
144
78
119
147
140
151
99
80
69
156
128
76
107
125
89
100
106
144
144
109
78
118
104
146
103
175
79
106
121
76
112
131
91
175
115
137
78
127
107
97
95
107
163
154
152
100
83
66
80
128
134
133
110
87
116
79
137
76
128
105
163
129
136
131
69
102
78
165
131
175
93
136
143
119
115
66
185
148
80
109
87
87
130
120
80
122
142
69
136
107
101
87
147
69
134
93
124
76
109
138
69
137
136
74
80
134
80
81
110
54
197
172
110
110
69
72
132
94
109
102
80
74
93
97
80
104
106
80
120
89
140
128
69
120
78
80
97
64
119
127
96
119
134
131
79
112
80
88
122
107
52
87
69
69
101
99
93
109
197
109
118
175
109
128
56
119
69
110
127
80
80
109
197
96
56
96
100
69
134
156
69
165
199
112
150
120
162
69
80
78
75
117
80
69
69
119
140
87
99
91
121
90
116
143
140
130
80
120
101
80
76
122
87
99
71
100
104
69
127
75
80
76
83
115
104
110
119
94
78
98
136
101
69
93
128
69
78
87
94
89
104
72
163
80
143
89
89
80
148
110
76
97
143
69
89
152
122
109
80
112
109
72
72
96
80
122
115
106
119
110
87
175
99
94
88
114
110
74
54
128
80
90
80
78
80
130
87
99
78
80
83
80
117
96
72
109
142
106
103
131
131
134
91
109
95
96
172
145
154
119
128
87
185
64
92
96
69
95
128
138
151
68
80
76
78
131
143
78
106
132
118
101
98
76
114
99
72
131
134
80
69
74
109
99
120
85
69
129
124
69
104
106
116
76
125
99
99
71
106
107
56
120
127
156
164
76
87
80
94
118
112
99
110
114
156
129
82
112
87
138
78
119
145
69
119
56
121
76
80
174
80
143
134
104
80
80
121
130
78
85
131
80
138
106
155
131
69
146
119
128
106
80
87
80
69
101
132
119
80
140
76
107
126
89
98
80
88
69
142
175
106
133
80
80
78
175
118
76
95
175
156
114
88
145
150
156
88
93
80
123
133
123
72
80
76
80
80
109
72
87
121
119
130
119
115
119
110
78
197
154
117
123
140
72
89
78
123
100
172
113
140
54
80
100
80
119
137
139
80
69
87
80
91
96
80
72
101
80
199
98
96
89
184
107
99
54
80
125
80
140
113
107
100
120
80
89
155
126
136
69
114
128
80
67
111
154
110
154
87
87
69
69
101
88
118
96
76
154
69
137
141
80
78
94
79
162
120
56
88
104
98
104
91
119
154
119
80
115
89
110
106
118
88
106
64
113
158
87
99
78
106
108
63
69
107
119
87
104
113
134
54
133
131
52
52
172
55
120
80
123
69
147
87
127
130
128
80
137
74
115
80
117
117
126
134
131
106
120
96
72
140
80
117
107
122
156
133
99
136
106
87
87
76
76
69
131
75
175
72
87
163
83
56
78
76
128
154
112
122
106
106
88
154
88
86
99
153
133
151
99
99
84
76
69
131
156
56
163
119
104
69
80
95
85
107
69
118
108
154
52
136
69
99
80
80
119
89
96
183
154
56
87
94
152
94
121
152
155
142
80
130
95
110
155
101
129
154
106
119
112
60
52
88
139
119
99
69
143
78
127
113
96
80
157
80
155
89
120
69
156
101
140
91
80
111
80
124
112
148
80
85
89
136
69
119
107
121
155
99
69
107
147
69
67
85
80
121
93
131
126
142
113
99
147
107
90
83
128
69
83
140
90
163
112
110
80
93
135
113
132
165
77
134
76
164
78
107
107
72
117
121
143
101
98
74
76
120
119
78
94
134
72
89
110
74
69
76
78
146
124
175
93
78
74
69
124
163
154
113
117
118
106
106
116
91
91
109
120
80
87
89
164
106
129
121
80
115
99
114
117
101
80
140
177
80
78
146
128
146
100
69
155
134
122
76
118
90
80
121
109
78
88
109
85
87
81
91
87
91
145
145
80
78
99
100
88
110
148
87
94
100
88
67
80
120
139
128
104
80
87
85
76
121
90
80
101
87
69
113
94
58
106
129
127
94
114
89
110
119
119
151
80
110
96
75
130
78
93
72
88
88
107
131
88
80
99
80
137
112
146
74
89
156
112
89
72
106
119
89
100
151
126
104
99
107
121
155
76
144
78
120
69
113
74
90
154
107
88
54
80
187
137
89
104
136
109
80
176
110
87
139
138
74
80
120
154
69
72
69
102
80
87
78
125
125
101
67
146
120
69
69
96
175
120
89
175
145
54
73
111
120
164
104
98
145
80
100
87
101
96
104
78
109
72
107
80
74
154
78
87
117
142
140
138
102
119
78
117
154
110
78
133
78
110
137
140
72
89
88
175
122
72
78
69
84
120
126
89
80
85
90
107
102
69
120
175
96
175
86
69
110
106
90
106
92
76
114
106
67
82
88
104
87
175
118
88
96
92
121
131
96
110
96
119
136
94
96
93
129
110
89
101
90
197
78
112
87
150
119
69
67
135
69
152
117
80
92
96
130
123
93
101
75
80
132
99
106
96
175
94
96
117
160
72
69
131
80
113
145
83
115
60
115
89
78
80
76
52
91
140
121
151
140
172
152
133
128
136
72
80
69
109
52
105
134
78
134
80
119
159
104
78
92
137
112
175
110
108
81
76
80
128
85
107
80
107
80
106
87
106
76
87
88
69
140
78
120
175
72
131
137
120
196
119
107
87
85
91
72
119
93
120
127
115
69
107
132
76
69
88
145
80
107
115
119
127
80
147
89
120
140
123
163
154
118
89
96
71
78
104
80
127
83
99
96
119
109
109
80
52
103
128
87
114
100
99
100
87
127
133
88
96
118
110
112
151
100
123
100
80
136
107
116
92
69
118
134
110
99
120
109
87
129
165
124
166
92
125
89
120
143
120
106
101
87
119
80
91
96
160
120
156
111
143
156
146
119
76
79
56
72
146
106
117
99
69
120
96
123
154
104
72
93
69
69
123
123
93
126
104
156
52
137
147
131
91
80
87
199
103
154
69
120
89
80
69
78
80
175
52
146
89
154
76
69
71
128
121
80
120
156
80
80
163
84
94
78
78
120
69
121
110
107
102
117
114
110
80
126
131
110
115
99
68
69
69
80
106
167
107
143
69
80
74
120
151
88
104
69
156
111
144
99
72
134
85
79
123
123
107
88
128
134
69
87
87
87
75
104
154
76
107
119
94
74
115
113
113
93
107
109
80
103
164
90
106
73
152
89
117
133
120
128
102
156
78
98
80
115
89
78
117
72
83
104
87
99
76
156
69
89
114
78
131
175
125
113
80
80
78
76
79
119
107
74
69
106
117
154
96
106
114
68
125
69
80
112
156
119
150
76
120
80
115
111
129
115
148
107
145
80
102
100
117
93
106
89
113
76
88
80
138
94
107
87
69
102
133
125
113
54
109
127
175
146
76
126
69
109
99
128
99
116
114
54
103
126
122
96
90
80
76
147
165
118
160
101
89
127
142
136
72
110
156
155
80
72
120
106
131
151
128
97
69
76
87
78
80
120
127
174
106
80
69
136
127
69
88
155
87
106
67
175
129
69
108
120
78
80
141
119
71
136
106
94
136
110
119
145
76
87
175
80
151
88
129
151
87
134
154
121
109
119
143
136
140
78
123
104
146
130
154
115
56
160
64
115
109
106
52
76
101
128
128
113
87
74
72
69
197
96
164
87
175
110
134
128
76
80
117
80
112
127
109
120
104
132
76
106
101
99
151
119
91
112
80
80
107
154
154
76
78
101
99
128
89
89
145
128
105
69
126
101
102
140
76
52
88
76
119
80
114
165
99
88
101
78
80
144
123
80
106
197
88
94
110
80
94
113
89
71
87
95
151
76
80
87
89
142
72
162
97
66
99
127
175
87
108
131
107
80
83
69
165
137
80
166
107
107
145
97
54
74
106
76
89
99
92
122
136
93
126
78
175
135
89
107
112
109
129
118
109
72
89
76
88
175
69
80
84
106
76
88
149
80
121
112
80
52
94
119
81
69
72
104
143
80
85
95
110
75
119
128
69
80
87
89
163
136
166
197
94
117
80
126
120
94
140
69
67
144
76
107
113
107
107
54
136
56
107
142
140
101
76
73
80
143
80
89
131
76
72
85
101
136
79
91
140
106
101
89
109
148
175
88
88
76
142
107
93
107
75
101
80
129
76
80
123
87
151
128
164
160
107
87
154
87
80
76
136
112
94
163
80
115
110
117
128
163
80
119
85
69
89
134
129
87
119
69
69
88
99
119
125
80
78
87
99
128
58
121
94
131
69
91
91
80
117
120
151
109
125
69
91
113
118
69
140
136
94
105
88
101
120
106
144
87
101
80
119
76
111
115
105
85
87
91
114
120
103
104
100
89
69
110
92
138
101
106
114
117
76
119
78
80
114
107
80
94
110
121
119
107
54
78
69
78
103
54
88
109
76
127
69
78
69
120
128
197
119
69
69
75
94
128
80
79
89
121
132
80
103
156
69
88
76
80
175
101
75
69
87
134
130
127
88
108
87
74
132
76
80
69
76
63
74
80
124
87
127
129
69
78
134
175
89
92
100
100
94
80
124
87
76
52
175
109
107
106
117
119
80
82
80
107
128
118
57
147
112
133
92
106
156
125
69
164
120
136
98
117
72
78
80
132
125
132
88
76
109
114
128
78
106
80
114
117
87
106
75
99
130
131
144
78
80
136
163
87
87
106
69
71
80
98
80
175
120
76
104
78
78
106
120
87
103
127
113
137
118
104
149
113
72
144
87
125
117
140
116
125
91
156
63
112
80
69
139
131
138
78
140
119
96
69
64
110
87
131
83
69
134
120
100
147
98
82
69
175
113
54
69
80
175
109
99
87
134
81
121
142
111
104
76
80
183
174
54
119
149
104
99
175
96
76
103
91
94
109
91
69
106
140
80
80
102
87
102
71
113
96
164
120
69
91
87
99
103
175
87
99
69
109
105
96
79
107
112
100
92
175
166
87
175
181
197
112
121
127
99
73
94
121
108
102
112
107
145
89
78
88
107
126
127
128
94
69
76
129
136
175
154
69
121
104
69
103
87
136
105
132
88
91
111
80
117
82
115
139
89
87
118
106
78
91
113
80
76
103
122
154
97
117
80
80
78
80
95
128
119
80
122
136
91
80
126
110
93
120
154
67
69
101
69
78
78
118
111
119
94
164
91
78
154
69
109
112
106
107
54
127
60
76
101
107
110
151
119
113
69
69
78
80
80
80
114
117
133
146
88
69
130
72
140
134
80
119
136
131
109
101
112
148
80
73
138
96
147
104
104
117
54
76
107
137
96
72
136
76
113
201
131
85
66
132
136
110
80
90
120
106
102
80
102
80
87
76
112
99
104
117
134
187
140
128
140
153
175
132
80
148
88
91
91
107
88
96
94
118
101
69
88
119
89
175
126
107
87
83
118
107
69
90
88
155
91
76
175
80
88
71
69
131
117
104
69
107
183
93
80
121
75
128
112
102
122
119
123
151
163
106
106
84
115
102
119
69
94
80
52
99
80
80
89
74
74
119
91
123
101
72
137
119
154
89
54
109
110
126
105
110
87
112
105
56
128
85
154
69
80
69
201
76
126
99
140
78
69
120
69
118
104
120
110
69
122
110
134
87
140
110
91
88
80
89
76
96
87
106
113
67
119
69
100
133
69
63
109
131
117
72
43
110
119
151
80
105
89
160
120
80
138
99
107
69
134
94
144
80
80
93
175
109
89
80
136
113
100
69
99
113
78
88
64
94
69
123
104
119
136
78
76
125
118
107
99
117
148
197
104
99
104
131
100
100
107
94
131
101
43
102
130
69
145
80
89
106
151
79
76
175
175
154
80
128
175
147
78
120
69
109
96
80
76
142
107
85
82
119
80
99
119
128
119
69
78
78
117
117
107
98
101
87
146
175
96
128
101
94
109
74
109
151
121
98
175
127
78
80
131
119
109
122
89
114
117
69
146
113
95
92
156
94
148
75
78
94
88
69
111
140
141
69
69
154
141
87
140
117
80
83
175
69
63
107
80
69
117
197
99
120
89
110
99
94
94
101
69
60
119
154
197
122
143
69
175
97
80
120
81
69
99
80
98
87
118
166
94
69
123
78
78
103
87
175
76
87
137
96
75
69
155
175
121
140
111
166
94
85
52
169
89
80
138
160
107
120
87
87
151
107
78
120
109
72
117
87
91
76
134
80
69
163
131
101
139
148
60
69
94
111
107
88
136
148
78
109
96
107
82
66
107
151
129
134
107
83
166
75
128
119
90
96
76
131
85
80
91
76
72
165
88
112
94
104
106
100
117
175
78
152
95
156
160
120
138
80
76
120
134
78
95
120
76
69
57
115
175
114
88
112
110
89
78
110
102
117
93
78
69
117
69
69
131
156
78
107
158
121
113
147
107
117
82
94
107
140
111
96
110
110
126
183
115
153
172
69
156
69
69
185
201
99
115
120
145
163
111
129
106
94
136
120
119
104
96
125
69
175
109
80
69
122
155
155
175
119
69
99
87
140
151
80
94
109
80
100
113
145
131
83
80
157
107
67
80
78
93
96
87
128
80
87
154
87
100
88
94
120
76
107
131
72
122
127
148
105
69
75
99
122
103
86
69
78
83
69
69
131
163
99
69
149
76
119
80
142
74
80
109
154
80
128
101
96
78
78
89
157
111
133
128
134
84
128
110
94
69
69
148
52
145
87
89
175
96
113
126
103
120
128
92
87
72
76
101
69
114
113
76
102
80
78
100
88
87
104
80
142
87
102
128
136
143
171
83
128
106
120
72
54
76
136
119
145
69
115
88
143
94
87
94
129
118
155
144
80
107
121
137
146
128
117
72
87
151
128
72
114
78
98
109
151
101
107
87
87
117
87
54
89
154
94
93
109
119
106
129
103
113
68
175
80
121
124
101
78
72
94
115
155
110
87
80
69
93
102
126
80
93
109
134
131
94
150
94
94
91
56
117
136
80
94
80
69
96
90
89
122
134
89
95
76
120
134
120
87
112
109
101
116
69
80
69
88
78
100
76
140
121
120
89
110
118
80
90
155
118
123
175
140
76
69
111
85
110
80
76
144
127
120
175
163
120
85
156
80
69
160
102
128
88
95
133
154
106
154
87
113
113
69
69
127
128
69
80
146
91
72
110
122
149
138
91
76
87
67
175
153
135
69
74
109
104
76
134
117
119
147
94
151
120
137
87
128
89
120
141
106
130
107
80
119
69
94
102
127
67
69
64
76
136
69
99
148
80
103
80
106
143
109
77
114
150
69
175
110
98
104
131
80
101
76
143
155
69
175
78
162
128
107
69
120
72
87
122
113
165
93
104
106
131
63
76
103
119
107
80
52
80
107
96
94
66
71
89
136
119
111
80
93
99
78
87
69
106
96
80
154
119
78
75
89
107
80
107
102
107
76
80
69
197
107
80
80
140
164
88
57
175
100
107
154
72
89
80
181
154
92
99
76
101
94
156
72
104
111
107
119
156
121
106
139
69
156
119
101
90
176
80
109
80
119
43
102
93
78
102
101
120
151
112
115
130
108
88
146
87
140
93
96
119
73
147
107
54
150
105
78
112
74
140
82
69
129
187
115
130
102
69
69
147
103
87
132
109
76
122
109
147
143
113
69
103
120
130
106
100
85
101
119
113
145
156
78
80
134
154
85
76
69
80
119
117
106
123
109
99
76
69
113
87
119
43
69
137
130
157
73
137
69
87
56
87
87
110
120
156
104
149
80
159
152
80
117
121
101
76
175
69
145
136
102
52
145
87
67
80
126
104
114
101
109
75
126
119
99
79
58
88
95
80
93
94
119
104
78
69
99
143
131
108
92
126
80
163
183
80
111
94
163
57
96
52
80
52
74
78
72
80
112
137
72
114
121
118
94
131
121
145
79
104
63
101
87
89
197
72
79
76
109
80
94
54
131
78
136
95
109
100
140
120
112
141
72
69
76
133
52
119
136
89
96
96
80
112
96
106
72
113
72
176
110
145
128
155
104
104
101
111
147
111
108
128
131
154
113
115
129
109
107
121
80
90
137
136
78
123
78
176
76
113
138
89
80
91
126
121
175
136
113
174
87
102
93
87
105
128
122
117
100
181
137
140
91
154
120
75
91
69
122
76
99
108
93
146
89
80
110
91
69
143
107
148
76
156
69
76
111
89
67
126
136
146
106
116
80
69
129
87
103
78
93
117
113
78
120
69
88
76
106
175
88
85
109
120
69
107
117
69
76
80
127
138
90
154
76
87
140
69
80
175
102
78
104
80
87
140
152
164
107
138
117
130
156
86
93
69
69
91
89
88
94
99
131
131
76
109
107
96
146
80
109
115
69
69
141
119
116
106
131
119
84
89
54
172
87
76
80
147
80
117
139
72
88
109
130
106
87
101
154
120
113
155
56
134
75
104
88
175
125
56
112
98
106
134
76
76
78
164
88
69
113
77
137
78
96
175
107
69
119
113
74
93
69
136
146
119
120
128
175
130
143
137
69
120
69
123
144
163
102
157
169
137
78
83
129
76
100
69
175
89
102
96
111
67
197
69
118
80
115
128
100
169
119
130
123
118
116
115
139
74
56
67
106
112
78
119
80
119
114
78
155
119
119
88
150
69
80
104
94
140
110
103
164
155
128
96
118
107
175
89
87
87
128
67
120
134
76
119
154
52
112
160
54
72
78
119
153
79
102
69
156
126
139
69
87
151
110
87
148
78
80
96
110
163
104
74
106
87
102
78
76
117
106
88
78
89
111
117
78
90
76
136
72
80
83
80
100
78
93
132
107
80
87
88
114
89
76
92
117
117
93
67
67
113
137
117
107
128
80
88
100
131
133
119
88
101
110
88
107
107
112
94
144
80
154
93
99
107
87
103
91
76
121
146
78
119
110
88
127
134
91
120
119
69
106
128
133
107
154
125
96
69
87
107
112
67
163
69
131
175
175
143
137
113
69
113
106
107
87
107
80
125
118
99
88
115
131
78
137
80
87
118
69
144
110
138
72
107
72
130
98
68
52
87
72
69
78
72
43
80
84
82
69
127
74
136
112
181
80
115
136
89
102
110
69
163
80
120
78
139
106
69
119
118
155
87
80
115
136
80
120
99
83
89
155
117
88
52
96
66
98
73
120
112
99
120
131
69
148
78
78
80
119
136
76
117
119
151
111
128
104
104
69
131
66
87
91
80
78
112
144
102
154
118
101
92
129
78
112
69
107
80
140
72
139
114
82
163
127
88
88
94
151
131
117
109
76
106
128
151
76
154
119
118
151
77
80
128
125
69
107
94
110
93
104
80
130
104
76
132
66
120
111
109
59
85
78
96
70
82
87
146
125
116
121
95
107
102
72
72
109
87
117
80
136
80
103
128
87
80
95
102
92
122
87
80
145
74
89
111
78
107
109
71
143
154
119
75
78
80
103
69
94
91
87
152
80
95
113
99
78
54
76
93
128
80
120
100
80
88
82
52
156
124
80
185
175
89
104
87
88
87
76
85
131
76
91
175
154
119
80
67
85
144
112
106
64
80
117
110
110
125
89
80
93
112
107
126
133
110
75
98
98
57
99
86
80
142
111
106
129
155
183
80
78
175
113
116
80
76
67
102
145
100
155
131
80
127
109
175
137
145
74
107
119
107
88
91
107
160
119
87
175
185
76
113
72
205
88
119
93
90
94
104
155
79
175
75
128
156
127
175
99
107
80
83
69
121
156
76
113
72
156
119
94
76
103
80
76
109
105
110
119
76
99
93
91
146
88
76
86
124
131
93
80
91
197
107
103
103
78
80
175
107
76
119
131
80
114
96
80
89
163
69
80
121
119
80
72
160
121
136
122
153
175
69
129
128
110
102
122
134
76
103
150
69
114
154
97
80
138
175
137
87
107
87
83
80
113
93
95
80
119
80
69
96
78
82
69
89
113
69
175
119
120
111
119
140
110
72
69
123
156
153
109
119
102
80
80
83
88
140
136
80
131
91
134
119
95
120
69
87
117
154
107
87
99
115
113
66
90
107
76
148
156
88
113
80
82
119
110
127
93
52
197
145
102
109
110
103
88
112
69
137
69
151
134
88
109
126
137
107
112
132
126
119
199
103
69
76
147
133
175
87
72
117
128
148
109
89
88
126
124
96
188
83
147
88
197
129
119
89
69
118
106
156
129
102
109
121
119
131
72
175
175
110
116
164
128
76
119
78
76
114
89
93
74
121
74
100
133
120
93
146
101
92
69
119
110
92
89
85
76
144
107
93
109
72
111
117
94
93
87
91
136
96
138
80
83
117
109
94
78
75
113
80
110
80
160
107
87
80
175
67
109
133
96
136
132
114
119
197
107
121
140
119
80
110
128
91
115
96
106
97
104
121
136
122
155
106
136
140
139
106
151
89
128
80
131
118
111
119
91
128
80
91
119
132
130
107
106
111
69
126
177
111
136
80
109
89
156
156
74
115
109
76
146
107
176
118
82
113
122
119
73
75
54
76
147
106
88
120
135
99
151
88
117
80
147
69
102
151
87
119
99
94
76
156
101
131
116
113
154
120
69
78
120
87
119
113
114
93
136
80
78
93
99
105
87
164
96
54
156
163
156
157
111
117
80
80
132
80
80
101
110
121
136
72
88
88
96
78
98
107
66
99
79
146
201
93
54
91
99
131
72
109
85
131
136
88
80
80
153
80
64
54
118
88
87
128
154
87
97
87
80
93
96
148
78
87
138
124
123
113
76
101
107
72
120
80
140
121
120
94
120
115
106
132
78
101
76
121
76
96
89
118
87
54
80
107
131
74
125
89
138
80
101
119
85
118
94
87
69
103
83
90
123
74
69
94
67
87
175
78
69
138
151
80
99
115
119
113
80
120
151
119
147
94
121
89
69
78
110
124
104
110
99
162
114
140
72
151
104
154
156
103
113
115
80
133
156
107
74
80
126
107
69
98
60
154
87
121
74
87
120
80
174
132
76
145
130
125
154
101
160
106
100
74
104
127
78
107
106
138
74
80
137
120
80
80
103
69
163
145
80
163
134
114
80
120
110
89
109
103
58
80
91
109
106
80
76
102
138
123
110
76
87
119
107
126
76
134
78
136
118
127
87
120
151
94
96
69
110
147
133
183
69
87
104
99
80
133
72
124
91
104
134
156
119
99
103
154
69
80
97
87
112
88
175
109
131
109
92
115
78
69
78
131
127
89
144
119
111
162
87
100
113
112
69
88
138
154
80
100
69
90
127
69
150
120
178
83
127
121
128
69
131
87
91
69
115
80
80
91
134
97
116
83
101
152
141
113
80
93
147
145
87
129
176
136
140
128
94
93
95
128
80
100
120
123
69
89
128
69
130
109
154
137
87
136
121
69
90
76
156
94
87
131
175
113
96
69
64
128
96
94
110
113
123
175
88
91
76
119
78
80
87
69
104
76
131
88
88
167
78
101
136
121
107
93
69
100
120
69
197
164
74
43
69
128
99
149
80
129
95
110
99
98
112
175
69
69
94
175
151
87
104
125
80
131
134
121
108
100
107
131
91
154
121
89
143
123
94
131
76
155
107
95
91
131
107
104
87
151
87
120
88
80
134
116
175
78
143
67
94
127
135
111
91
76
149
120
94
136
112
134
98
156
80
87
131
101
134
151
112
155
78
119
100
76
101
109
117
129
79
85
63
110
119
113
102
119
99
72
106
72
115
154
87
76
67
69
113
57
125
107
131
80
52
134
95
80
156
80
80
122
80
129
99
175
131
174
100
94
119
86
88
113
99
112
119
154
99
118
117
163
106
104
127
78
156
120
101
119
121
131
92
72
94
88
103
109
163
120
83
128
76
93
120
80
80
80
127
88
119
99
145
74
117
123
69
76
99
113
119
76
145
134
113
94
89
101
119
99
131
69
110
93
93
146
109
80
99
95
119
69
116
120
119
89
80
120
119
93
137
119
80
87
76
91
101
96
128
126
69
87
144
104
80
52
140
152
155
78
143
97
154
121
88
89
110
69
100
165
126
136
114
121
85
131
93
123
103
52
80
60
107
75
101
107
127
72
107
87
122
88
141
140
105
101
95
97
94
120
119
117
110
112
109
81
90
76
87
69
116
146
106
87
134
143
124
81
134
87
87
76
175
117
119
156
107
127
134
96
107
80
76
91
69
154
96
76
69
112
144
80
113
80
96
76
100
67
98
72
104
128
96
144
130
103
137
99
146
126
110
95
76
120
106
76
80
64
134
90
141
56
154
80
99
100
69
125
134
89
104
94
106
131
109
101
74
134
123
69
163
119
104
98
120
137
106
79
134
112
76
117
128
136
80
76
80
69
123
111
118
85
109
121
154
91
127
99
119
104
127
115
81
80
91
112
100
76
74
129
98
76
91
80
78
89
120
88
69
80
69
80
140
69
67
109
154
76
69
119
165
130
115
99
136
127
95
152
87
88
110
74
69
104
130
110
99
80
129
93
76
197
80
130
72
69
128
127
215
107
80
120
119
120
104
105
134
101
107
119
89
147
69
110
69
76
89
126
175
109
134
109
117
52
94
103
128
110
99
154
115
120
119
146
87
89
135
82
102
144
120
89
80
114
175
95
99
128
163
111
156
137
80
89
78
136
137
83
72
160
94
104
110
90
99
87
88
195
96
80
95
145
77
76
56
109
136
94
79
126
120
112
108
80
93
163
80
110
127
109
110
89
88
76
72
91
117
80
79
85
106
85
80
102
109
98
43
136
119
149
119
156
88
107
124
67
116
134
80
96
87
154
76
109
76
76
111
84
86
94
131
76
87
80
120
128
100
87
88
69
161
175
96
85
80
89
69
118
99
87
76
101
98
117
110
111
87
115
76
88
82
156
107
57
96
87
107
69
154
82
121
87
144
76
102
73
80
120
56
175
119
56
87
80
112
72
113
117
163
128
158
136
81
107
76
129
69
157
87
93
87
104
134
106
113
78
137
128
76
118
69
120
87
78
80
56
131
94
110
127
89
107
100
137
131
132
52
89
140
69
112
80
87
91
69
98
54
88
130
120
76
72
108
131
111
87
119
80
104
151
145
146
130
164
80
117
82
112
128
197
119
87
124
145
175
127
132
111
132
181
104
76
100
149
154
100
89
145
131
118
80
121
57
123
151
90
78
148
52
152
110
148
99
69
89
69
72
113
76
71
147
103
120
120
80
169
87
91
64
87
129
120
89
149
76
113
124
76
112
101
85
146
80
80
117
92
144
72
148
155
109
80
94
80
106
142
106
105
148
78
78
89
80
107
52
88
104
132
76
107
131
93
151
155
118
90
120
117
119
76
117
69
136
136
80
98
131
112
141
99
144
87
111
131
64
87
116
148
113
102
69
133
82
80
87
91
71
94
128
79
69
56
97
95
145
90
120
102
94
99
80
93
99
155
137
145
112
157
107
128
96
128
128
123
103
85
145
80
136
106
121
131
109
76
160
91
113
76
166
98
109
115
119
69
117
94
121
128
96
80
157
113
183
106
140
156
154
152
111
80
69
96
121
112
80
80
109
109
101
80
52
127
96
93
177
93
69
104
72
69
139
134
80
120
132
89
78
102
154
115
175
118
102
129
117
102
74
139
146
140
106
104
69
115
69
175
60
159
54
107
136
80
102
72
119
97
143
111
93
98
78
128
93
72
85
112
100
187
87
89
93
128
80
119
85
80
96
110
209
92
124
154
96
80
118
85
76
134
87
110
99
175
132
74
69
106
109
137
155
128
72
175
69
121
148
92
145
122
201
133
104
111
69
80
79
93
175
113
175
91
78
88
114
76
117
80
183
110
103
123
56
106
117
120
109
52
78
114
147
78
54
107
94
104
69
80
93
69
106
93
89
175
69
133
102
119
88
133
104
106
114
175
99
110
78
69
110
145
121
107
107
107
134
107
118
94
80
154
131
91
91
119
99
117
96
80
133
121
88
104
144
91
113
119
82
106
102
166
99
94
147
93
89
76
87
80
87
121
98
54
115
133
102
139
107
107
87
122
66
128
150
80
99
154
69
104
110
119
52
76
87
109
163
197
87
100
175
93
106
120
119
128
100
99
103
120
114
72
89
80
92
92
109
154
113
87
69
75
85
107
117
110
121
134
114
78
72
88
111
74
80
59
94
106
107
120
80
146
69
120
66
93
136
134
166
91
76
90
91
88
75
63
106
124
133
106
129
140
90
113
175
140
78
72
108
80
128
87
72
87
131
69
89
52
93
112
154
118
80
154
80
69
106
132
74
121
109
69
89
175
104
119
100
95
73
112
151
114
145
112
119
102
69
129
96
126
130
156
140
80
80
67
127
94
69
119
72
74
128
117
66
87
76
76
88
78
118
154
69
109
80
121
104
153
87
115
78
80
119
106
100
97
149
107
76
128
117
94
88
107
119
82
111
136
112
136
69
120
89
104
89
112
151
126
119
119
106
128
136
109
156
69
69
93
69
109
120
109
112
83
113
89
93
76
110
80
123
145
133
80
154
104
175
72
104
197
126
78
123
120
52
137
76
115
113
113
88
76
76
110
136
89
129
72
91
122
101
80
87
119
75
99
120
133
117
88
100
92
76
108
87
110
139
87
104
102
69
78
124
98
89
155
155
128
76
117
106
96
87
142
74
76
100
152
107
76
119
94
154
87
107
118
113
110
89
107
106
120
96
87
113
133
87
120
69
154
127
133
144
115
96
80
111
69
92
99
147
160
76
117
91
107
164
96
140
128
78
91
80
151
87
87
126
72
175
119
113
126
151
119
175
117
107
96
110
76
80
122
69
115
89
72
119
119
75
107
69
92
127
80
87
149
74
162
114
133
87
102
107
137
80
96
69
102
89
80
113
120
80
110
80
91
91
83
172
76
69
87
69
80
114
155
156
136
107
87
104
101
99
127
69
69
166
152
127
78
80
115
104
119
91
99
85
155
80
59
80
78
111
119
116
100
72
80
115
69
110
136
113
72
80
76
75
80
88
154
146
138
152
156
163
89
120
132
89
80
112
78
151
80
120
87
69
78
80
138
119
89
106
113
201
69
91
80
145
119
113
127
155
107
94
140
66
93
103
115
91
125
111
134
118
80
88
138
94
69
80
151
94
43
174
112
126
80
102
111
76
104
87
80
78
151
147
118
99
148
102
87
69
119
113
97
145
91
101
91
134
113
133
99
131
131
112
109
104
115
88
127
95
129
73
87
131
107
83
110
119
100
126
124
78
127
119
138
78
117
145
93
128
87
91
134
69
75
100
136
80
99
76
119
73
80
111
110
122
74
151
104
130
175
83
80
136
108
102
80
69
144
83
158
185
93
89
132
112
157
54
112
79
52
176
60
110
144
112
89
72
69
154
88
155
119
69
125
78
140
142
88
136
99
54
154
164
76
112
93
96
78
146
87
109
99
74
80
56
175
101
72
117
100
151
129
103
80
124
134
174
76
104
76
76
131
111
175
156
91
80
74
80
87
52
119
93
107
80
119
76
129
74
69
163
73
87
94
126
92
135
106
107
154
175
131
149
78
83
72
72
87
100
127
119
69
76
117
87
104
69
87
69
134
131
120
110
78
107
80
43
99
151
88
87
87
106
133
80
118
92
94
113
113
88
92
119
110
78
78
102
144
76
66
154
119
121
85
76
120
110
120
131
76
69
69
72
99
117
176
97
146
121
115
80
130
197
96
69
87
118
88
89
78
119
85
112
52
144
113
87
85
69
113
94
69
72
80
80
197
87
100
156
114
89
80
85
123
110
131
69
154
133
93
108
80
87
144
136
130
69
69
112
87
140
72
113
80
126
114
69
87
181
120
95
72
100
80
120
88
124
107
56
119
151
150
100
80
87
69
134
154
89
93
148
136
149
140
78
112
107
124
99
142
54
112
114
87
99
89
113
87
102
128
183
123
113
76
80
136
141
91
74
78
94
69
72
123
175
78
101
78
69
107
87
94
76
74
90
143
151
120
104
69
76
119
181
80
80
78
107
92
80
104
80
120
109
101
66
80
130
94
130
197
54
160
99
85
148
80
80
107
154
88
175
93
124
87
175
89
119
113
87
125
127
143
175
151
128
99
175
101
71
142
82
165
134
106
69
197
122
129
115
80
69
138
120
80
101
80
162
94
115
129
94
80
128
130
101
80
110
87
96
136
146
102
113
69
133
127
136
87
85
69
131
114
110
117
76
128
165
98
78
78
164
141
136
154
142
119
98
115
161
142
100
99
110
126
83
127
145
120
125
133
107
54
136
115
139
78
112
175
128
163
128
87
128
74
80
128
109
78
80
175
75
128
92
89
131
88
162
140
80
88
115
69
87
138
123
162
105
136
89
107
156
93
120
69
97
89
107
142
80
127
87
100
147
78
99
92
143
80
76
107
107
118
89
99
104
80
88
99
80
134
120
69
87
175
152
162
80
130
119
109
80
107
110
80
143
110
82
76
76
88
122
105
100
107
78
107
100
104
78
145
110
78
80
111
155
110
114
80
175
119
156
128
140
66
89
112
93
151
60
83
96
93
96
78
125
145
103
87
87
157
69
124
119
106
107
96
88
95
128
76
107
160
137
117
106
128
134
175
80
107
69
145
77
146
99
115
120
175
148
109
112
110
76
197
69
91
175
69
197
80
136
119
78
107
136
164
76
123
91
133
146
154
175
183
99
85
132
175
156
85
113
69
64
76
69
110
80
119
94
119
140
92
110
128
114
144
131
120
113
88
88
197
101
140
107
151
133
69
121
100
103
110
151
174
80
113
121
91
146
94
76
137
78
130
128
106
88
72
92
104
74
67
87
94
69
80
56
117
72
155
89
137
94
78
95
150
69
78
154
76
79
119
94
138
87
80
112
128
96
85
69
78
110
80
142
78
119
134
128
127
101
156
80
76
97
124
109
128
80
59
113
120
93
141
107
89
95
68
80
109
146
69
98
87
108
69
80
104
69
163
98
122
83
175
80
69
131
119
148
90
87
67
78
107
88
76
74
137
78
78
87
99
91
114
110
87
69
120
100
151
101
80
148
99
128
80
69
110
69
120
103
107
119
88
67
93
69
78
155
152
94
69
124
154
171
113
134
126
183
115
148
156
114
101
78
155
96
106
69
83
95
66
154
136
117
94
107
106
104
112
145
174
122
111
154
130
144
87
92
175
128
80
142
145
109
160
124
148
121
155
80
94
111
123
104
78
140
137
106
163
76
83
69
107
88
95
120
109
110
78
89
103
106
87
89
80
66
89
119
52
120
106
78
112
145
119
117
115
175
78
69
110
78
120
143
137
52
123
117
90
72
87
125
104
107
137
69
113
113
167
87
87
110
103
99
83
128
169
80
79
108
80
110
119
87
69
120
109
133
76
113
154
163
109
132
75
90
80
69
79
142
120
126
96
147
101
128
80
80
88
107
101
80
94
69
120
98
106
112
74
99
91
81
117
69
80
80
79
57
143
136
69
209
120
94
89
142
91
119
69
140
80
175
175
72
76
112
96
110
87
125
154
113
87
98
80
87
110
185
154
132
85
175
56
205
59
128
175
119
76
114
104
69
136
85
112
104
143
69
87
115
104
197
119
76
124
100
113
94
94
120
99
88
136
119
94
151
154
104
85
107
76
112
69
78
96
108
89
113
80
122
103
74
137
103
91
89
76
59
117
140
54
175
91
124
69
112
106
101
82
87
128
96
185
76
131
78
99
87
87
89
71
80
80
121
108
103
107
96
109
107
135
104
78
76
183
52
120
164
117
117
119
76
109
119
107
128
121
131
119
88
106
122
111
124
110
52
69
151
88
119
115
109
151
152
87
208
119
126
84
138
80
112
144
120
136
69
87
109
109
104
127
120
143
99
87
90
134
168
69
80
175
80
101
113
93
78
126
104
164
154
96
124
80
69
43
175
87
115
154
72
199
107
80
119
109
112
69
94
122
120
109
134
69
110
134
143
70
96
119
100
175
131
89
175
146
145
151
78
154
113
82
73
91
114
101
112
76
80
121
156
145
80
127
130
88
69
78
183
154
89
118
166
96
89
56
87
94
78
80
69
175
100
91
85
95
156
87
85
110
96
175
69
110
91
100
101
89
72
155
109
103
80
91
121
85
156
110
130
151
140
154
78
76
133
104
101
78
89
93
142
74
146
104
52
98
93
97
151
122
112
99
93
113
80
197
163
145
160
94
118
121
85
77
115
69
69
80
151
114
89
75
93
69
107
149
163
111
100
112
91
151
91
117
73
117
80
120
117
145
69
107
87
129
111
79
69
120
89
107
80
94
76
87
85
138
80
163
123
88
118
146
132
82
136
117
139
85
107
80
91
113
91
56
131
67
80
80
89
104
87
69
129
109
147
67
69
69
78
78
92
72
78
109
76
106
112
121
85
154
76
110
154
175
90
69
80
136
80
151
110
76
80
78
111
80
143
117
94
118
110
88
87
102
114
69
175
155
69
87
95
146
140
73
104
93
120
99
119
87
136
78
80
87
72
106
121
162
156
120
69
118
87
99
125
87
110
107
93
141
109
125
199
110
69
96
138
95
69
120
82
87
76
105
80
107
175
165
107
80
132
90
154
151
96
145
148
80
84
69
85
166
126
78
152
106
69
152
197
163
183
103
154
154
102
76
119
78
107
138
99
80
88
154
174
106
118
109
80
140
96
121
78
111
76
87
78
132
113
78
80
85
127
112
117
80
114
98
106
91
121
80
175
69
118
111
197
99
87
103
128
119
106
128
80
73
109
67
104
80
80
84
178
129
109
104
120
99
118
128
154
109
89
124
113
80
83
115
88
151
74
134
78
163
87
69
140
80
181
87
123
115
69
125
175
78
52
93
80
76
120
113
113
129
80
138
113
99
140
99
136
78
115
136
109
80
80
156
151
152
109
101
140
154
108
154
131
88
99
143
136
72
69
197
69
69
185
89
111
87
92
140
69
116
121
155
136
137
87
119
140
80
72
183
185
117
124
72
129
145
76
154
78
69
116
107
76
76
136
154
90
68
78
140
101
80
98
143
79
119
138
140
99
69
78
58
93
136
87
92
134
139
76
127
154
69
154
95
175
119
52
87
76
99
119
118
75
117
134
93
105
80
113
87
154
146
72
80
76
150
154
80
107
106
113
164
129
96
115
56
117
94
137
164
80
106
80
104
163
99
138
87
107
104
151
88
107
142
156
164
94
76
93
103
136
80
145
119
78
99
102
69
118
117
119
147
69
84
72
109
136
101
112
81
112
107
99
117
87
110
143
128
104
110
78
141
72
140
80
179
121
87
121
69
80
92
111
78
117
163
67
102
72
130
144
128
69
74
69
197
112
76
101
101
79
119
112
126
87
67
120
154
110
148
80
117
100
87
80
113
120
125
69
163
148
104
99
69
43
88
52
109
154
69
56
72
95
80
80
147
106
121
106
80
101
101
78
155
136
119
80
83
89
146
111
121
128
69
109
78
145
104
126
76
76
146
139
80
83
154
99
87
89
87
156
107
153
110
96
140
87
89
131
69
131
112
109
103
87
101
80
139
112
93
119
89
145
94
87
146
115
120
78
80
128
67
114
107
104
119
78
83
107
109
115
111
129
154
83
105
67
130
175
90
137
154
69
85
88
89
107
99
112
91
154
78
69
69
80
84
101
93
67
84
119
71
104
69
81
115
69
106
99
82
154
127
72
87
87
119
200
88
101
136
121
64
111
80
80
89
80
140
151
69
121
93
161
155
72
134
93
89
87
90
43
154
80
80
181
69
106
69
120
137
145
76
113
118
102
150
87
134
174
101
121
69
116
155
126
149
94
120
120
74
101
91
169
100
145
151
69
88
175
197
197
154
151
119
109
69
80
103
120
154
119
112
128
104
136
156
94
132
101
91
120
107
69
69
100
69
134
99
141
89
69
89
103
112
133
138
151
54
110
76
103
52
69
109
110
106
145
119
115
69
76
171
144
137
112
154
175
106
104
154
140
85
154
91
79
146
56
112
117
57
54
99
78
72
113
85
104
80
156
87
104
110
106
87
107
140
137
164
87
69
120
155
128
87
76
154
174
80
117
80
80
125
92
88
69
109
54
80
80
94
88
106
136
63
144
96
98
88
80
99
80
80
110
175
120
54
78
132
80
126
119
88
151
89
85
72
128
94
76
137
101
140
78
80
86
106
101
133
95
76
117
199
107
134
88
64
199
112
87
100
156
88
69
117
134
131
101
69
69
154
148
109
128
130
80
136
197
85
76
72
80
78
80
110
69
78
69
107
104
137
149
175
106
101
107
102
130
127
87
137
122
82
74
107
143
72
118
112
52
74
117
101
104
132
114
141
144
131
69
132
140
174
131
175
59
128
76
91
88
71
112
80
155
102
118
151
78
87
113
138
90
124
87
136
97
76
107
88
164
94
115
79
96
69
87
100
106
148
122
76
80
94
120
93
60
106
56
87
112
209
140
72
56
69
174
80
129
156
140
119
109
80
69
69
119
83
118
111
69
93
60
101
115
103
94
66
142
80
95
80
72
97
107
110
119
72
78
94
80
128
113
100
110
93
89
78
90
119
101
134
100
110
69
104
134
133
80
119
128
104
67
129
80
85
80
126
131
109
104
95
157
110
87
69
54
80
160
109
80
99
114
107
138
156
123
80
91
96
76
130
127
98
78
128
117
164
87
76
154
114
137
80
119
100
87
87
134
82
78
125
115
92
128
76
120
69
122
115
104
120
131
107
69
125
82
122
197
80
92
118
113
69
80
76
133
201
81
147
140
141
128
70
136
80
121
134
110
109
107
162
68
80
118
140
160
97
80
134
76
128
72
164
80
109
120
92
154
69
99
121
183
155
174
121
99
165
112
106
120
89
141
117
151
72
117
156
74
113
128
80
83
130
134
80
58
156
127
87
76
160
74
109
112
137
110
56
126
107
88
94
134
114
109
80
157
82
86
131
87
88
107
69
154
68
197
107
80
119
114
78
80
69
140
104
76
149
100
127
128
73
88
98
110
174
85
122
69
88
100
103
107
123
120
95
120
129
80
76
91
107
78
120
96
60
197
101
123
110
151
69
111
109
115
72
137
134
137
131
126
80
94
78
119
124
109
90
151
136
69
119
127
175
111
109
94
72
175
104
76
76
101
197
123
94
101
105
93
103
52
69
164
119
106
69
85
134
80
141
57
76
66
175
118
151
126
131
130
87
69
140
69
120
145
155
130
164
154
69
83
125
99
138
72
80
105
109
121
120
136
128
128
92
104
144
140
131
94
106
197
76
72
113
80
124
139
127
85
130
69
87
99
152
80
69
134
80
153
96
94
83
89
104
117
118
120
100
124
80
136
69
85
131
151
85
75
78
101
80
148
101
69
80
110
154
78
147
87
99
80
151
101
87
93
91
100
148
54
103
91
139
74
80
145
88
96
122
128
80
175
91
69
121
156
69
87
69
104
80
76
97
103
117
130
54
80
78
122
110
110
87
88
87
75
120
102
87
83
80
79
111
106
128
110
197
114
160
91
126
175
69
88
106
75
76
128
140
83
89
94
149
74
93
89
71
80
175
143
151
87
89
132
175
85
96
101
89
110
100
113
131
89
80
122
133
69
69
120
102
108
80
115
119
102
128
98
78
140
134
132
112
175
119
63
68
154
98
124
87
136
121
69
91
87
146
106
66
87
76
109
80
130
104
146
89
154
80
74
104
97
107
78
104
113
157
109
74
156
145
80
69
64
154
64
94
80
111
113
76
87
120
122
121
78
63
93
138
69
96
147
73
92
79
142
74
96
112
115
142
146
87
76
87
209
80
80
151
87
120
106
151
78
110
94
106
134
119
175
91
76
109
175
107
164
94
107
87
106
125
94
75
113
88
79
205
100
131
134
140
158
69
69
80
154
122
91
95
193
106
78
140
99
103
87
120
89
80
69
117
128
87
109
80
89
69
128
69
144
99
91
172
87
104
72
175
87
83
131
72
134
107
63
151
80
132
88
110
69
125
109
80
99
94
80
118
156
109
99
87
154
120
80
74
80
78
56
69
99
104
113
163
175
118
72
109
106
89
88
80
69
119
76
121
78
99
105
107
120
56
131
106
154
69
113
117
95
119
75
94
187
96
87
66
120
87
82
100
149
110
78
69
128
156
89
103
96
43
110
103
122
76
136
102
126
119
154
67
90
163
109
116
107
69
75
129
161
100
111
100
113
91
140
128
80
91
131
77
88
163
102
80
106
69
69
101
80
111
89
102
145
58
138
163
163
106
87
74
76
104
87
107
115
87
58
88
72
78
156
80
126
106
175
120
72
74
208
101
80
127
93
94
69
133
141
107
107
104
74
136
89
80
73
123
148
69
100
59
106
78
132
79
104
80
151
123
93
94
94
106
159
112
69
140
163
123
110
93
147
56
89
91
76
94
106
100
87
122
89
150
175
101
131
155
143
88
118
109
109
113
69
121
128
88
78
131
156
134
131
78
104
115
162
114
136
156
131
99
93
78
87
80
87
163
76
87
129
131
121
103
80
150
71
176
123
104
80
66
80
95
102
152
156
132
106
87
69
131
96
113
122
69
95
95
119
80
88
67
119
115
78
113
122
115
109
85
107
91
155
120
121
89
128
119
99
132
78
69
112
120
110
119
87
157
96
110
120
90
121
93
148
139
109
119
150
111
80
156
151
107
96
69
78
99
93
110
69
104
78
106
117
123
93
114
131
88
105
87
121
175
69
127
76
80
89
69
80
52
52
67
69
134
88
121
141
138
80
149
94
75
69
82
76
72
56
164
69
72
119
80
128
85
110
94
125
74
127
104
107
80
112
163
113
121
156
157
102
111
118
85
110
107
125
76
99
80
52
69
104
126
119
151
115
114
76
88
155
80
69
119
69
81
76
136
99
140
136
89
78
92
94
99
126
134
87
69
175
102
80
136
112
87
156
185
119
87
124
152
169
80
107
80
118
74
76
80
166
119
106
125
175
87
113
69
103
110
160
119
137
78
175
112
96
112
83
112
140
78
143
83
69
69
146
76
110
106
76
142
140
69
69
121
164
87
106
131
119
155
145
52
69
119
88
80
138
107
141
120
101
103
76
96
80
102
115
151
90
120
119
119
120
105
110
80
197
106
128
109
107
80
112
122
89
100
175
69
138
85
109
99
136
119
107
175
80
109
69
104
94
96
85
134
115
119
131
72
91
80
141
94
93
175
78
119
69
117
67
119
99
69
112
90
107
95
80
57
151
136
120
121
76
80
84
80
78
109
136
132
117
78
69
121
117
120
117
120
100
87
103
52
121
69
112
99
112
88
165
94
140
140
113
57
87
117
54
89
78
113
91
145
56
92
110
78
93
131
100
154
72
54
80
127
112
76
113
107
69
197
100
148
78
175
122
119
120
94
87
96
181
134
107
104
112
110
80
128
87
66
120
80
151
80
76
117
146
112
91
69
134
80
87
113
117
133
175
110
113
127
115
131
129
123
80
107
76
80
78
75
69
80
94
69
88
107
88
74
87
113
101
156
175
69
141
88
126
127
119
110
107
72
80
104
128
119
145
109
111
80
78
120
101
127
119
121
117
66
143
134
76
144
78
164
120
87
117
116
66
140
107
90
89
76
141
148
69
87
80
69
99
80
80
76
110
69
119
80
126
76
112
81
80
132
69
140
102
78
126
87
119
121
69
102
87
199
67
103
80
99
106
52
131
136
119
69
133
107
136
197
106
119
134
118
98
120
87
117
154
99
83
119
130
78
84
88
94
135
123
163
80
121
80
94
128
80
72
130
127
85
88
110
87
175
94
80
99
82
145
76
128
112
107
146
128
152
96
80
113
138
123
87
109
107
136
119
99
121
106
140
111
85
64
113
137
69
100
103
87
128
69
109
104
109
106
74
80
106
109
80
88
131
136
146
109
69
99
106
134
94
133
79
78
128
113
80
117
69
106
76
78
88
114
99
80
96
78
102
80
171
155
99
93
144
52
181
78
107
119
118
120
69
88
96
87
143
122
119
72
87
127
69
100
76
60
140
104
141
120
156
127
89
143
80
88
107
95
96
89
110
139
80
117
134
89
93
135
76
136
161
110
131
123
99
83
140
131
126
117
87
78
89
69
128
134
80
72
87
103
69
128
113
119
87
122
110
144
175
109
103
156
109
184
107
89
120
154
112
88
131
176
130
131
146
87
88
145
67
90
155
80
90
78
87
132
69
106
78
87
109
155
119
110
80
80
80
78
117
80
72
72
132
56
104
165
78
95
114
119
113
127
69
134
94
88
172
138
93
128
76
89
80
88
145
111
93
80
88
69
126
114
105
117
95
132
93
94
124
80
120
69
110
107
119
103
109
79
78
146
175
131
130
80
154
163
118
72
114
43
87
134
132
89
78
175
78
127
106
56
98
80
76
78
52
80
115
101
120
76
132
133
156
106
69
101
99
144
175
113
80
76
76
107
91
121
156
93
92
109
153
101
80
78
160
72
175
64
74
197
132
126
119
100
69
115
87
128
89
94
43
113
101
76
101
99
92
121
194
137
69
145
124
72
119
80
175
142
69
87
107
119
128
74
76
69
160
80
76
87
137
131
143
128
103
115
69
110
78
87
197
52
139
140
94
74
134
123
114
80
76
75
183
119
128
104
111
160
69
155
87
197
102
102
110
100
128
80
93
110
155
98
112
87
131
110
104
96
99
110
119
119
175
80
129
118
94
74
69
100
80
175
137
80
87
91
69
88
88
120
112
88
111
91
136
96
78
76
95
197
112
113
87
110
92
149
110
80
127
93
69
69
104
91
107
80
117
87
109
88
133
97
87
120
117
175
151
56
129
80
154
104
130
113
124
98
80
107
91
76
137
113
87
111
143
110
110
99
142
120
87
89
131
80
91
59
138
69
78
99
80
123
80
78
80
89
117
137
74
69
96
89
78
145
56
69
119
110
126
89
112
69
137
108
54
121
80
106
137
130
151
43
134
69
119
80
131
80
69
108
89
104
91
80
91
140
99
102
107
94
74
126
113
84
94
80
64
117
197
89
89
96
88
120
133
69
175
113
155
87
99
87
121
119
121
69
78
85
87
106
80
74
133
78
80
69
69
78
52
69
99
131
78
110
163
94
52
113
138
113
99
101
118
175
104
93
110
84
135
134
80
89
43
95
112
69
103
92
130
110
120
119
146
87
80
56
79
109
160
93
127
176
85
69
76
79
136
162
71
85
80
85
205
80
99
94
151
113
107
80
76
122
69
76
69
71
119
152
85
87
111
110
127
155
101
86
96
124
104
114
99
94
60
96
113
75
127
106
94
99
96
80
88
87
154
175
125
80
130
124
99
78
95
128
131
142
69
137
80
175
110
92
78
136
74
109
78
78
76
118
96
105
104
82
113
67
109
99
156
87
121
109
77
110
127
95
78
145
110
164
110
126
80
128
125
69
103
91
146
121
69
67
89
106
115
175
106
138
175
134
78
93
87
109
72
69
91
164
83
106
97
117
146
87
123
87
134
80
112
87
117
115
69
145
119
128
138
161
91
125
102
140
110
197
72
87
175
89
72
106
104
156
60
120
107
118
93
67
128
99
129
130
117
119
112
143
151
107
124
80
134
126
69
133
88
91
69
112
156
109
76
100
101
124
78
89
155
69
106
157
80
112
103
118
128
118
110
78
119
88
91
109
140
128
95
96
95
103
109
133
117
117
99
132
137
101
142
87
89
156
88
71
134
98
136
72
175
113
78
119
93
69
109
72
78
115
120
110
123
80
76
113
155
117
69
68
128
107
136
118
120
110
142
176
119
112
124
76
169
80
123
110
112
116
82
112
89
87
69
85
136
99
94
87
154
80
147
69
104
93
134
80
87
145
109
69
119
172
120
76
129
107
76
124
104
81
101
101
133
131
80
85
69
119
75
89
96
146
143
131
79
104
121
175
126
99
75
80
88
76
93
142
69
119
91
88
120
94
78
72
80
69
83
83
128
80
146
104
139
99
91
76
91
80
87
142
83
140
69
56
69
87
114
69
91
80
72
156
175
121
130
137
101
124
92
94
127
158
112
56
88
116
113
104
137
87
121
111
80
94
69
154
94
102
97
138
136
100
69
128
69
119
88
80
84
103
80
128
107
80
146
83
69
88
101
104
85
107
80
67
72
79
96
106
185
89
80
112
69
129
78
52
116
87
122
128
89
120
78
103
95
94
76
143
166
111
99
69
144
99
88
90
76
121
113
80
80
120
113
197
154
68
80
143
160
117
126
140
120
107
132
158
119
137
110
87
117
154
211
100
69
128
131
117
148
118
106
130
80
120
139
76
121
123
57
69
120
120
147
161
112
95
80
134
69
99
100
134
80
69
107
145
114
92
133
148
84
152
103
54
128
163
147
155
76
142
136
87
78
131
101
106
76
111
80
92
131
100
119
126
99
113
87
69
106
148
109
80
87
80
69
144
127
119
108
80
67
121
104
54
80
183
120
57
109
154
89
130
121
136
79
110
72
122
107
100
121
94
87
125
123
119
80
125
80
99
121
197
120
112
94
113
119
72
69
151
142
126
94
80
134
175
154
80
121
112
136
69
156
80
156
87
124
78
114
90
89
94
72
88
136
164
175
119
67
80
125
175
78
142
140
155
69
80
93
121
156
102
96
128
110
106
80
106
119
116
88
128
145
99
128
80
128
87
66
134
97
107
99
134
101
183
109
115
82
121
90
78
197
133
186
87
119
160
72
118
120
196
98
136
108
140
95
96
152
154
104
94
82
96
52
175
78
76
101
120
106
128
52
151
140
80
102
119
136
88
87
136
139
107
119
136
151
72
157
74
69
138
156
155
76
93
99
80
136
171
121
128
109
87
111
110
87
71
107
73
99
154
102
124
109
78
78
73
119
80
80
89
143
93
146
133
144
78
177
133
152
88
112
80
120
78
93
107
76
80
85
104
151
89
106
115
76
110
69
56
101
87
76
96
128
107
66
80
136
123
142
136
43
126
76
128
69
98
69
105
94
83
112
87
59
127
106
76
80
80
87
69
143
107
80
130
76
99
101
147
199
69
78
69
90
197
187
88
118
111
128
56
80
107
152
136
87
89
113
144
91
112
107
87
76
94
197
69
102
128
69
89
80
144
94
119
151
109
112
117
96
89
87
88
76
66
154
162
76
99
94
118
136
99
96
103
109
137
100
144
94
114
107
100
72
76
87
127
69
92
87
69
87
178
88
78
69
78
72
112
99
103
69
64
69
87
76
69
110
109
115
125
175
80
163
111
110
80
58
98
101
136
124
151
67
87
101
131
119
109
109
93
78
91
151
110
98
107
131
69
78
131
112
113
109
113
109
78
117
110
99
69
87
146
156
140
69
119
100
166
109
88
103
69
76
119
109
145
128
80
101
123
137
97
137
119
154
172
80
133
132
80
78
78
88
148
101
146
155
87
106
98
120
117
89
100
80
107
102
91
87
154
111
146
119
120
80
93
120
94
71
72
85
69
117
69
76
81
154
152
134
80
147
157
104
101
107
117
88
80
106
127
104
89
112
88
164
137
99
102
89
54
69
96
106
78
115
147
160
146
149
110
154
83
127
94
87
78
82
102
102
197
138
75
112
136
128
52
78
130
87
166
85
140
105
121
102
163
69
120
109
123
72
151
100
150
87
102
155
128
80
69
131
112
91
64
89
94
112
155
98
69
131
113
133
69
136
126
145
90
78
117
93
154
100
69
119
109
93
129
107
143
87
174
109
120
88
90
119
79
78
129
107
121
80
94
91
128
123
76
83
112
151
99
107
69
143
143
146
117
146
93
88
122
151
87
123
175
134
80
154
76
99
120
112
85
143
117
89
103
117
154
74
160
114
66
132
69
106
117
78
110
56
131
56
113
111
151
95
158
69
94
80
117
87
79
122
102
128
80
71
120
144
89
120
78
76
80
85
104
109
154
107
84
69
85
94
116
197
69
80
69
145
80
106
142
76
123
120
159
88
78
78
122
113
150
119
80
129
121
157
78
93
84
163
101
76
121
164
87
154
124
112
115
85
118
110
144
69
107
78
80
88
76
107
138
77
107
91
69
110
128
69
76
113
72
151
78
127
117
52
89
80
154
78
197
87
150
69
80
78
80
160
93
109
173
88
76
112
88
128
135
72
134
78
120
80
78
119
108
76
69
151
104
67
94
80
146
87
96
80
140
99
88
123
130
58
69
80
91
75
90
131
98
87
119
144
80
136
120
76
98
156
76
130
96
104
120
123
119
80
76
145
141
76
107
119
106
100
131
145
130
148
89
105
101
89
121
109
110
119
128
133
155
171
143
131
74
146
114
113
175
131
88
92
80
99
102
127
107
142
114
121
110
89
69
115
172
140
99
119
76
69
119
69
152
119
121
80
119
154
139
154
145
67
115
128
112
109
151
111
128
87
107
87
80
185
120
109
119
93
88
107
113
80
154
74
80
131
80
80
87
132
99
128
52
80
96
187
115
163
117
69
156
109
154
129
107
80
107
181
104
115
80
113
87
80
132
121
183
78
90
80
164
113
80
80
149
112
104
154
82
111
96
101
201
89
175
107
80
175
117
72
118
107
56
89
88
72
120
104
99
128
87
115
145
115
69
69
132
136
88
108
110
93
72
115
166
128
80
78
121
119
80
117
156
127
98
136
143
117
77
90
69
76
137
90
69
138
136
113
74
99
125
94
139
123
113
133
136
103
146
93
127
112
107
80
106
120
69
103
104
93
134
95
175
183
119
87
88
109
143
101
99
197
110
126
97
80
121
88
69
113
124
76
126
87
187
107
122
85
128
89
69
106
91
141
104
100
163
72
119
131
87
175
94
155
135
133
96
109
97
115
98
72
60
78
93
148
89
120
134
103
80
110
69
134
128
118
80
95
104
117
91
43
104
125
163
80
80
89
88
102
134
130
80
99
69
88
80
104
99
175
84
101
110
69
203
109
102
102
140
99
143
107
99
79
69
120
151
80
118
103
123
116
136
102
185
174
129
76
175
156
78
80
54
128
89
106
69
143
134
115
87
87
95
80
87
80
109
80
120
160
136
134
89
129
76
109
67
113
76
89
107
72
107
80
154
109
78
67
119
104
76
128
78
119
107
128
78
123
69
89
133
94
97
69
101
181
89
102
122
100
113
80
76
43
152
140
85
137
137
69
106
107
115
71
99
143
80
89
174
154
151
106
87
99
121
114
154
102
69
172
134
87
155
128
140
72
101
87
73
90
43
99
106
96
153
80
109
133
106
109
88
88
72
120
93
81
69
122
140
69
142
107
95
104
115
154
127
76
123
86
80
127
133
119
118
78
165
74
133
110
106
99
88
110
69
154
89
128
134
93
78
78
69
148
69
112
106
148
87
122
139
105
159
112
80
128
120
111
91
201
164
131
72
79
127
80
75
128
78
80
69
56
133
154
93
125
94
78
74
110
155
73
97
91
131
161
93
93
146
142
87
140
72
84
90
143
109
147
119
78
119
94
100
89
121
76
104
100
106
69
76
69
80
76
113
102
113
132
101
175
99
72
113
116
119
120
69
106
87
107
69
72
80
106
80
106
80
80
154
52
94
88
125
104
175
128
128
98
121
134
183
110
69
88
91
112
107
114
69
107
69
107
108
104
75
96
78
197
136
72
117
144
80
127
136
80
80
69
80
134
106
113
69
87
69
96
154
88
112
140
131
69
69
110
95
175
98
80
68
54
69
69
80
78
117
76
90
127
107
160
96
88
99
110
87
121
97
72
69
76
147
102
128
93
143
69
136
120
96
52
129
175
58
121
109
175
83
98
80
154
154
102
66
100
109
69
156
112
87
76
136
107
78
136
72
76
80
128
78
80
80
148
127
100
136
133
140
85
118
125
73
107
111
59
88
104
78
110
151
110
78
67
175
146
109
150
80
76
178
74
78
110
127
119
110
94
94
76
58
151
99
68
151
175
120
145
197
163
80
152
136
130
80
100
156
154
154
103
107
174
72
91
103
187
107
80
88
117
107
134
78
69
96
88
87
134
98
121
107
109
114
94
80
69
110
52
85
80
87
52
76
123
138
134
111
69
126
131
80
119
154
118
88
103
149
131
91
107
93
102
78
143
154
115
129
71
92
78
162
110
85
114
88
94
76
164
94
66
95
121
111
107
73
78
78
134
78
146
78
101
106
197
146
69
134
109
114
80
94
120
80
129
122
67
114
76
90
131
54
136
69
93
117
156
123
137
110
80
87
116
197
87
140
101
118
164
120
106
92
80
109
115
137
105
87
120
88
140
117
85
134
87
75
113
93
74
93
136
78
120
80
155
115
56
175
119
118
150
106
90
74
119
104
112
159
89
101
112
78
78
146
69
166
109
110
69
175
69
114
163
99
69
137
90
109
106
134
110
107
118
131
136
126
117
121
80
110
76
154
87
78
159
104
96
107
100
69
69
80
112
147
113
76
99
143
74
76
134
87
120
80
87
91
69
155
174
125
140
112
115
143
114
106
98
110
99
127
144
103
69
82
112
175
72
109
121
99
87
117
69
141
90
128
94
123
156
175
76
146
85
78
111
127
151
154
72
78
118
110
102
92
136
87
134
56
94
119
159
93
85
109
78
104
120
101
155
87
117
124
69
93
117
140
89
131
107
175
152
127
169
129
87
76
72
69
112
106
109
119
69
80
69
156
99
115
78
144
80
140
80
52
87
75
103
163
132
76
100
119
93
87
140
99
80
121
119
140
120
121
117
78
99
71
197
133
96
78
78
104
80
152
109
80
56
104
99
101
134
76
76
116
80
108
134
88
76
113
87
151
56
107
97
106
124
88
117
133
106
108
120
89
111
89
131
80
107
137
128
69
119
90
72
113
140
78
80
80
97
87
80
155
112
88
107
80
112
69
90
172
112
84
146
103
71
109
121
56
76
102
99
94
154
124
87
112
99
78
94
89
78
80
140
87
87
80
80
131
76
119
80
107
126
133
113
107
87
69
117
130
112
127
80
131
140
94
80
101
121
120
157
101
134
69
104
80
109
90
69
80
74
109
99
78
76
110
80
80
87
106
69
102
138
104
90
87
80
130
107
104
146
185
115
156
89
120
57
90
117
76
80
156
119
64
52
138
197
87
95
128
119
85
136
140
80
109
120
175
99
140
151
80
77
89
80
89
113
69
69
115
99
121
80
120
126
144
80
80
197
78
99
151
102
163
127
96
144
87
112
67
94
87
78
136
80
80
99
145
146
175
79
119
107
106
94
128
80
146
136
74
128
136
128
103
109
153
80
78
69
119
155
144
78
101
110
148
127
71
163
120
110
80
56
120
78
101
69
132
119
114
86
152
100
146
89
103
99
99
80
104
112
87
128
76
110
112
131
132
131
107
80
80
106
128
166
118
110
120
119
131
143
78
151
99
71
93
54
131
88
63
155
69
115
156
137
80
117
76
111
157
80
92
120
120
109
154
113
119
109
87
128
115
113
107
110
74
67
128
120
76
87
131
91
78
123
169
91
80
80
106
87
88
120
147
69
89
94
69
109
56
73
99
156
127
110
115
102
69
149
101
107
109
197
118
87
98
69
128
80
78
76
111
128
128
140
104
79
147
88
66
69
106
72
136
154
100
117
69
80
119
136
113
101
151
94
99
121
113
145
72
69
166
96
94
197
104
102
127
75
103
93
96
134
145
78
96
111
112
87
102
109
99
117
74
54
119
99
92
83
73
69
88
78
107
160
132
120
155
145
69
121
127
172
100
74
87
120
79
80
127
121
140
109
115
156
128
136
76
126
128
91
97
80
78
175
79
112
112
80
140
113
137
94
56
76
64
80
69
134
101
96
95
85
120
123
97
122
80
101
160
175
74
80
89
76
89
76
175
87
80
121
91
98
92
94
92
142
80
175
95
80
140
80
155
128
88
89
78
76
80
107
99
142
115
110
169
87
134
69
93
117
93
94
80
78
99
104
69
134
80
104
131
197
80
148
117
80
104
115
109
174
117
112
121
119
129
69
113
80
78
100
154
109
87
141
97
107
110
146
76
152
113
109
119
94
52
78
131
76
155
146
118
87
119
128
69
134
120
144
87
78
85
136
130
160
80
129
69
72
76
113
87
121
151
160
121
69
83
72
76
154
83
109
76
94
69
69
123
111
140
144
99
132
96
156
113
69
88
87
110
121
151
80
187
146
87
154
115
151
128
108
99
72
118
83
80
87
69
69
88
102
197
131
78
87
87
144
175
104
106
93
133
89
97
52
84
96
74
89
69
89
69
139
90
128
104
106
80
104
94
120
119
74
103
56
130
90
154
80
117
120
87
129
63
126
76
107
113
153
69
72
80
89
124
88
146
110
112
88
140
83
121
121
110
134
106
150
107
131
109
143
80
156
119
130
115
78
119
140
148
121
69
95
175
83
157
54
196
80
80
69
87
80
95
119
69
76
156
80
144
107
100
140
121
116
89
120
120
78
130
80
74
82
104
128
131
151
128
98
102
94
96
69
80
110
117
78
78
92
80
75
154
102
107
119
80
80
104
89
108
88
69
119
102
100
80
128
99
81
155
76
87
87
107
52
92
126
107
113
81
175
82
72
54
76
121
91
119
69
69
99
101
96
89
89
94
89
116
121
80
80
107
80
134
72
106
88
100
107
69
87
160
91
76
160
110
82
134
122
119
69
145
101
74
125
101
73
78
104
69
110
89
72
175
103
87
132
75
76
107
106
142
43
118
99
69
139
113
138
117
154
91
120
119
103
89
104
80
126
118
107
76
154
134
154
150
93
83
97
112
115
69
120
72
117
87
124
127
90
113
113
99
117
140
54
120
111
95
108
72
127
87
87
118
80
107
72
87
100
99
87
118
87
151
88
115
128
112
106
123
80
97
98
106
124
139
133
101
78
117
100
154
87
104
88
119
137
120
83
87
127
106
76
98
154
80
69
148
125
128
175
114
127
69
77
104
197
145
80
101
72
122
127
69
124
79
110
134
76
136
105
109
121
106
89
82
72
69
69
164
110
78
123
199
104
128
128
117
101
80
94
56
149
56
91
131
98
85
89
148
69
124
160
107
121
69
89
113
127
80
88
113
80
104
128
133
175
80
60
146
111
147
114
87
128
154
94
154
135
93
80
142
151
56
124
71
101
69
69
183
120
88
120
110
159
78
104
109
54
152
94
109
88
120
155
163
129
69
127
96
119
109
80
143
78
106
96
96
130
69
169
134
104
119
151
140
80
80
94
77
69
87
163
52
119
89
91
106
134
120
104
110
107
120
160
121
87
100
78
136
94
106
153
99
69
118
124
69
101
197
107
76
185
52
147
80
120
87
120
120
100
99
155
75
124
119
144
119
76
87
106
91
69
96
100
118
78
98
52
110
125
119
99
69
72
117
125
153
69
89
80
71
80
120
87
136
109
101
104
109
66
152
89
105
164
115
134
169
132
104
66
106
115
119
78
107
137
103
119
96
144
69
78
108
111
80
69
106
145
87
124
128
129
133
94
137
116
69
104
120
119
87
80
154
69
76
118
69
80
136
81
141
124
121
120
99
56
109
119
130
171
80
120
119
151
121
119
85
69
99
175
80
93
126
121
140
54
87
74
154
74
75
134
132
159
154
119
72
160
69
145
94
139
80
78
120
149
130
175
69
109
205
119
131
94
122
113
99
139
103
144
113
76
123
90
104
87
74
163
102
82
119
96
110
149
136
54
110
80
109
80
79
69
110
100
69
91
95
154
134
80
80
107
144
78
76
82
78
114
69
80
72
94
118
116
119
98
109
97
92
110
115
118
76
104
80
69
89
113
154
154
103
69
72
96
120
113
78
72
148
142
163
185
98
69
78
80
94
64
80
72
104
119
102
102
52
109
121
122
109
117
113
136
121
69
76
154
80
76
97
137
76
76
143
93
102
175
64
120
69
110
130
112
100
80
122
80
107
77
112
76
120
78
98
69
140
88
80
124
107
89
80
119
91
87
80
96
125
133
119
133
91
131
136
80
117
175
110
114
131
120
132
78
89
115
104
138
101
112
93
110
99
117
77
102
88
154
93
107
117
80
101
104
107
74
121
126
102
122
107
175
137
169
104
132
169
89
140
145
69
85
131
89
165
121
73
102
96
117
100
78
131
87
69
107
156
163
76
112
187
56
80
87
126
154
79
72
87
110
76
102
155
132
111
76
120
112
87
113
121
110
126
119
69
76
56
155
78
119
80
197
113
80
69
99
134
99
95
71
56
134
125
101
114
100
134
120
80
136
110
54
109
96
76
91
87
93
72
136
78
87
87
85
121
87
97
104
132
69
107
62
88
69
146
78
128
131
87
131
120
176
89
88
80
80
109
80
54
115
107
134
78
98
94
116
165
107
140
69
127
69
113
88
117
126
78
143
108
93
99
181
94
74
107
115
175
174
107
69
145
88
98
93
111
117
99
104
133
118
76
140
112
119
119
134
133
87
87
76
80
76
121
74
107
112
78
89
80
119
175
154
69
128
107
122
121
128
119
169
110
151
102
110
94
109
80
82
88
119
169
126
151
80
43
134
88
93
112
82
148
119
78
106
106
80
93
133
102
67
109
147
140
104
102
73
119
166
106
94
142
78
80
80
76
94
69
94
153
164
112
178
134
119
141
93
184
126
89
100
80
143
118
154
93
94
146
99
121
99
87
155
80
109
117
142
120
177
148
124
104
117
107
78
183
136
114
69
156
102
93
87
136
115
127
134
164
80
99
90
106
102
87
107
137
112
131
101
174
128
80
128
80
109
69
145
134
100
156
110
71
115
76
99
74
106
87
89
78
127
106
128
107
122
147
76
69
120
152
126
95
69
76
99
143
89
101
119
99
120
156
146
88
154
175
78
87
94
133
78
80
107
76
80
128
115
98
91
129
104
118
69
119
80
87
69
78
145
69
98
80
128
123
107
151
104
104
172
107
112
92
138
143
130
121
52
80
163
121
145
134
101
99
80
78
177
72
128
69
117
106
154
54
87
102
89
110
87
69
113
72
88
199
76
95
87
126
127
87
76
131
93
69
141
107
114
80
91
164
90
131
148
86
91
121
177
157
80
104
119
74
89
96
155
114
136
89
94
111
144
117
106
59
113
143
151
150
128
111
94
129
91
106
72
100
124
144
78
128
156
119
117
80
131
109
83
87
80
76
137
178
76
96
123
119
72
135
150
164
69
56
103
154
136
106
99
78
88
94
175
78
175
145
166
99
124
107
81
89
83
69
80
140
106
96
118
88
120
156
183
117
80
96
85
138
78
69
100
138
99
76
152
87
64
147
80
87
99
176
113
56
109
54
96
134
88
155
56
109
152
87
112
117
99
120
185
91
201
120
126
76
174
107
197
163
154
91
87
128
76
69
80
64
80
99
111
119
124
143
88
76
86
69
76
80
112
120
69
154
95
76
43
54
107
78
93
113
156
89
80
78
99
163
106
107
175
100
104
89
163
131
120
96
131
148
151
140
156
142
131
146
154
117
69
80
125
89
134
88
134
104
126
142
79
141
87
80
117
83
115
153
127
91
72
89
97
81
72
104
128
99
131
80
69
176
76
87
109
102
119
136
91
80
118
101
88
88
115
123
80
93
136
80
107
119
87
89
142
69
98
109
131
120
69
148
109
87
80
102
89
93
69
104
78
80
91
102
142
87
87
94
80
125
121
91
136
64
88
91
115
110
127
107
78
136
112
118
121
134
80
97
110
54
78
134
69
69
92
145
99
93
133
52
101
113
134
111
83
120
116
78
110
113
82
114
123
145
76
78
131
124
80
57
127
69
89
94
151
87
117
175
106
118
69
76
109
93
80
156
120
107
107
121
100
80
183
78
161
93
80
131
131
175
118
134
154
114
126
88
88
87
160
87
134
129
80
119
95
155
95
93
113
69
83
69
93
104
163
119
94
117
80
78
163
110
87
99
128
123
136
76
69
150
72
119
150
78
117
102
114
111
76
120
151
119
43
127
120
88
78
82
76
147
88
175
128
175
87
87
87
52
155
152
123
52
120
178
87
127
69
64
104
93
155
69
99
82
156
130
160
175
69
154
76
130
153
151
91
134
100
89
116
94
69
137
118
109
88
81
152
132
69
137
76
128
75
80
80
80
149
185
99
144
125
119
112
72
80
127
197
109
157
113
78
111
98
80
76
72
80
134
69
76
99
78
93
143
78
76
98
98
67
87
80
89
89
80
145
109
117
72
119
119
121
87
87
143
119
107
109
119
80
120
69
131
87
132
119
120
120
69
154
85
87
87
110
154
110
201
118
76
112
146
69
89
157
115
120
76
107
154
114
140
87
110
131
80
112
72
160
113
128
78
87
93
88
101
115
137
142
97
109
66
80
106
117
114
148
89
140
76
140
102
119
156
107
95
69
79
127
69
110
137
134
113
80
126
69
104
78
87
80
99
89
80
110
154
136
164
137
119
93
91
89
123
80
87
109
107
197
175
111
89
155
111
110
134
121
112
138
140
58
80
99
74
75
94
113
77
80
80
154
76
78
80
52
80
110
134
89
80
122
145
72
52
120
56
80
87
131
69
164
119
151
87
69
80
80
78
96
80
117
146
148
122
140
80
98
185
89
138
87
109
103
91
100
144
115
83
74
140
69
87
87
69
101
151
130
71
66
80
127
75
132
112
76
110
56
125
98
135
139
76
108
109
80
94
119
52
109
117
69
126
113
137
74
83
128
164
137
104
156
156
78
118
175
156
76
148
142
140
94
137
134
80
80
113
96
136
89
130
74
96
197
104
87
139
129
131
78
103
76
151
123
89
109
99
101
120
80
78
129
108
151
111
104
156
102
146
80
124
137
99
106
103
78
80
174
89
150
90
76
100
118
87
88
80
98
123
80
120
107
80
132
99
130
109
80
78
118
69
76
133
80
54
104
80
101
137
107
131
134
98
149
137
78
96
175
113
121
78
98
104
110
119
69
133
80
124
69
141
99
131
69
100
166
156
92
109
102
87
134
54
109
73
43
199
125
148
106
88
107
123
127
129
98
154
85
87
88
161
89
69
174
128
88
88
80
115
151
140
97
109
87
88
74
117
136
148
104
80
80
134
118
152
140
112
87
120
155
91
87
113
90
99
93
154
60
104
69
76
120
112
115
112
99
80
78
109
154
99
92
134
80
119
94
83
119
103
89
79
138
113
120
76
80
109
150
136
152
114
80
80
93
71
119
140
114
157
90
148
123
119
146
114
136
56
154
128
97
78
78
87
172
122
87
96
52
80
89
175
107
134
119
104
107
130
85
102
123
120
87
105
78
69
113
96
74
88
164
102
119
107
104
78
113
134
119
115
88
106
165
125
111
67
56
76
87
138
87
76
128
69
69
93
107
121
108
78
156
104
95
80
87
87
121
136
151
127
126
69
110
127
93
154
110
119
78
110
156
74
106
78
101
88
154
120
143
87
69
74
66
137
91
78
126
121
117
72
102
79
153
118
80
87
110
99
110
80
113
69
120
60
69
80
80
115
109
105
134
95
98
107
87
145
91
82
115
141
69
126
136
122
115
56
156
87
127
117
128
100
80
153
110
80
80
76
69
128
136
126
115
134
94
154
101
111
102
110
102
151
119
143
152
98
111
175
110
127
119
71
97
69
80
69
105
87
171
119
80
122
163
109
69
111
58
80
113
95
131
140
94
69
99
111
69
87
151
78
110
69
117
93
103
120
87
121
155
83
146
120
109
98
145
83
76
80
85
156
131
99
80
94
154
80
69
99
76
76
72
114
80
92
119
100
125
87
89
113
88
101
80
122
79
80
95
87
154
80
144
126
131
154
78
102
81
56
99
74
76
112
136
80
83
164
87
76
103
165
114
100
69
128
123
99
104
80
102
100
72
80
69
119
99
99
111
128
80
120
109
109
154
69
88
80
78
140
123
106
92
69
109
90
136
150
68
88
86
100
100
89
197
52
115
90
131
121
88
107
66
60
88
115
88
157
128
131
80
80
120
113
158
110
87
43
117
151
88
89
94
69
106
121
72
142
69
78
154
128
120
118
100
76
80
125
80
123
112
143
95
137
87
121
78
110
130
101
141
126
113
121
152
87
76
76
96
131
150
80
175
80
119
69
72
149
129
131
69
83
101
106
54
78
109
148
88
69
121
89
150
107
131
100
109
80
91
80
87
150
78
131
142
123
122
52
117
107
119
85
69
83
113
80
138
69
120
175
56
87
131
69
201
80
78
88
109
146
80
87
119
80
119
59
140
107
132
87
138
136
104
131
80
89
136
156
136
129
83
125
119
103
99
109
96
107
120
110
115
78
123
114
144
156
128
166
94
103
83
109
76
87
104
133
90
143
69
98
108
80
69
175
69
163
69
87
136
110
78
106
110
76
145
88
117
155
129
78
110
119
78
90
128
155
98
80
129
121
87
101
108
128
80
109
153
136
136
94
78
99
130
76
87
101
144
121
128
69
72
119
122
119
131
69
78
74
69
134
69
87
121
88
127
130
76
56
72
54
76
59
69
140
78
96
175
107
127
185
69
130
69
147
69
123
139
89
96
78
69
155
80
131
131
80
142
80
133
128
104
78
81
76
107
140
175
69
115
112
76
76
75
101
136
77
112
98
91
69
95
69
78
127
90
89
69
69
80
96
122
76
93
175
78
94
110
80
52
122
78
79
175
119
90
101
88
127
80
89
69
69
120
134
79
106
113
69
76
107
89
78
54
63
99
83
99
107
89
83
69
154
80
138
145
109
80
175
52
54
175
128
87
89
104
141
88
107
104
119
127
96
80
155
74
104
93
96
122
96
88
139
183
71
99
166
76
95
69
93
118
78
103
95
94
72
132
91
175
102
87
115
137
134
80
109
187
136
112
75
101
118
59
89
69
72
76
148
99
69
94
122
43
111
134
76
98
111
69
146
93
80
110
85
125
149
119
68
134
115
99
89
80
104
156
151
90
124
78
76
102
112
69
78
94
125
88
175
154
122
76
52
113
88
121
87
69
141
118
163
69
106
69
80
153
119
142
103
99
150
126
54
80
131
125
131
128
91
146
54
154
80
113
154
99
88
74
80
119
94
96
91
119
108
78
109
94
107
78
87
69
118
110
169
138
134
175
96
154
69
80
80
107
69
160
123
89
104
120
69
99
107
117
121
96
74
78
174
150
69
164
134
88
90
96
87
72
80
96
69
88
69
97
151
128
104
132
197
96
94
175
57
58
117
119
132
130
174
69
103
99
69
104
111
75
93
128
76
89
109
133
151
92
110
110
118
106
134
88
69
94
69
131
137
69
66
74
118
78
115
89
113
119
120
102
134
69
174
106
107
114
59
90
66
80
76
120
107
88
117
130
87
121
117
107
117
87
128
156
119
83
80
131
74
127
113
93
109
82
69
104
128
94
107
96
89
183
113
107
175
175
106
139
128
110
109
110
117
104
78
94
66
69
103
80
85
103
94
117
165
88
117
106
140
76
101
123
93
109
78
76
114
185
69
112
76
140
142
144
76
80
69
119
147
93
87
85
137
175
151
108
88
146
119
109
119
80
118
82
94
71
87
154
87
107
98
109
120
89
113
87
69
162
94
85
146
69
91
87
109
87
101
119
106
110
120
147
160
124
109
119
120
155
104
102
156
106
129
121
147
69
140
69
102
118
138
119
120
87
87
102
141
88
80
134
76
80
112
80
80
118
87
94
128
80
143
113
104
104
119
111
131
117
88
80
131
146
90
118
127
125
76
109
80
121
91
78
87
102
187
69
175
109
80
131
116
130
87
154
78
108
75
99
72
153
119
103
113
102
121
106
43
85
156
175
130
100
128
128
69
111
112
124
119
145
164
112
120
131
54
73
80
119
80
76
96
69
145
119
69
175
79
129
96
163
119
155
87
69
121
104
89
134
156
154
110
80
109
121
137
80
88
87
149
90
69
80
119
78
129
89
80
153
119
93
114
52
174
178
54
76
175
156
69
100
99
80
110
87
127
113
85
67
80
94
112
131
93
121
121
119
136
131
116
92
121
157
101
109
165
102
79
107
78
88
137
78
75
154
124
93
133
127
69
69
154
78
145
104
114
134
111
155
76
144
89
76
76
112
76
119
185
120
79
107
68
87
124
78
154
99
110
144
102
109
56
90
99
148
80
69
156
109
143
80
69
126
119
87
64
132
125
95
98
52
72
156
147
80
109
126
122
94
69
118
146
151
110
174
88
141
80
80
72
120
56
103
121
87
69
87
94
153
168
115
112
117
106
154
94
87
87
120
127
88
122
144
99
122
112
163
72
87
132
118
52
131
56
80
106
127
143
80
197
106
76
125
128
66
69
72
99
100
102
133
104
143
138
131
71
85
156
115
93
115
59
69
96
74
93
69
120
114
78
90
146
74
94
94
76
109
106
128
56
90
87
85
80
93
137
116
156
112
127
129
130
125
115
117
123
80
118
110
107
124
164
110
80
94
107
85
76
154
117
119
131
113
106
123
87
78
110
157
140
122
79
87
102
146
78
78
87
87
133
75
99
80
87
145
69
140
69
148
95
96
80
80
88
131
175
88
169
131
136
119
142
116
129
131
130
119
69
131
100
52
87
74
80
145
87
102
151
120
155
68
102
175
99
80
119
80
105
88
90
96
118
69
107
134
66
175
122
120
89
99
142
119
80
140
121
96
108
78
89
117
72
155
120
138
109
122
154
149
80
78
80
175
107
140
110
111
89
117
113
119
115
78
130
80
85
154
140
136
80
87
95
80
156
114
80
120
78
146
128
66
103
69
69
69
69
98
89
144
87
73
101
113
128
175
125
169
86
107
106
118
89
117
159
94
76
80
120
104
110
145
122
140
76
163
174
117
136
133
112
106
112
120
99
80
74
96
131
76
69
80
104
128
91
134
89
145
69
67
87
76
94
120
167
199
94
117
121
87
117
69
118
90
72
101
69
145
80
103
78
69
175
104
129
121
155
128
80
143
109
72
144
126
112
94
115
123
119
80
72
67
102
80
123
113
101
113
120
80
136
89
164
99
80
101
96
106
119
119
134
130
69
76
93
76
88
119
120
94
89
128
87
72
80
154
110
87
107
80
76
119
56
154
115
107
140
109
90
87
82
111
102
112
78
153
73
92
78
129
74
80
117
112
104
88
83
52
164
69
119
150
80
76
110
78
132
145
80
110
79
154
120
69
67
100
144
69
164
128
104
80
91
89
88
130
87
110
175
140
99
132
155
80
137
154
124
72
69
113
151
109
88
93
112
80
115
154
128
119
87
104
143
128
118
69
99
113
107
129
154
110
94
177
119
112
134
107
104
112
110
128
88
110
93
154
128
79
140
88
121
142
110
89
137
111
87
163
110
143
142
74
181
74
88
127
136
69
69
80
154
80
95
87
121
154
89
76
93
121
156
119
113
164
78
80
78
78
137
119
69
147
69
104
137
129
75
72
107
69
117
56
134
88
129
80
80
134
80
175
80
175
128
154
131
85
101
117
121
72
78
106
85
155
43
107
57
79
120
136
151
105
94
93
96
134
124
156
110
88
106
88
87
94
136
95
124
197
128
128
111
117
119
175
164
137
101
133
80
91
80
109
76
107
130
109
80
124
104
68
87
128
106
96
117
156
151
107
130
76
80
80
121
80
121
90
94
140
88
87
154
101
56
99
100
80
73
88
87
52
174
140
134
104
78
136
80
87
119
80
151
99
89
94
69
125
120
115
115
151
146
156
85
87
79
175
118
82
111
154
123
110
133
129
87
78
150
80
80
80
109
93
130
80
115
80
69
114
87
128
104
78
80
80
87
110
110
154
109
113
69
147
110
87
100
52
128
131
109
90
100
88
112
80
87
197
99
129
80
78
89
121
131
107
107
87
78
135
144
69
130
76
149
88
87
80
78
96
107
107
144
100
86
101
154
151
107
119
87
69
107
78
156
87
114
78
106
54
115
136
95
69
126
87
69
129
134
117
69
100
87
107
175
88
80
80
153
75
132
125
94
119
131
88
128
99
123
76
125
80
114
128
72
128
100
106
113
71
136
112
175
154
94
80
78
69
145
99
106
155
185
147
100
69
89
69
168
107
99
103
140
106
106
135
67
113
120
115
78
160
140
90
69
144
69
127
154
134
185
88
153
80
43
79
76
109
157
87
107
115
131
69
76
119
80
187
122
109
123
80
112
152
128
88
80
91
80
132
93
76
116
89
80
68
69
89
87
87
98
121
56
136
80
87
114
110
118
106
137
121
104
156
120
148
69
117
94
76
120
91
57
107
104
128
151
89
78
80
104
120
110
104
90
148
137
80
127
89
145
87
107
80
57
80
126
99
121
77
98
118
88
99
76
104
99
109
83
80
76
110
90
78
129
128
69
99
69
119
134
93
99
107
148
85
78
163
87
80
156
80
117
104
83
87
109
197
133
87
90
80
89
95
76
116
141
156
134
106
120
111
69
131
100
87
119
92
67
119
80
80
88
106
159
113
76
129
107
72
91
114
110
112
66
136
163
160
72
106
109
140
136
78
87
116
122
69
69
120
119
90
80
87
88
69
98
126
54
128
80
80
118
87
59
110
109
69
80
80
87
78
94
99
110
137
163
131
96
134
103
69
76
114
114
69
108
80
75
106
101
131
105
76
122
134
101
175
128
80
103
109
128
87
154
94
121
120
71
88
56
112
99
87
95
69
143
197
106
87
154
134
90
120
155
163
133
69
155
88
148
100
112
98
99
146
134
85
102
156
136
74
88
134
113
107
136
69
69
69
121
154
128
151
104
56
115
80
72
130
71
117
137
136
122
117
119
120
124
136
78
82
99
94
99
89
128
102
110
151
71
87
78
124
69
69
127
69
106
74
104
131
156
131
122
43
113
93
122
84
72
144
99
100
83
118
58
104
91
80
110
80
119
112
112
80
109
104
69
94
69
156
107
89
69
119
87
80
87
121
152
100
130
87
124
175
85
154
87
80
88
106
87
175
126
89
76
87
160
131
123
136
119
76
162
96
156
144
99
66
149
73
112
109
97
137
137
112
154
69
87
80
151
69
96
92
95
175
69
94
154
78
127
100
116
135
80
136
103
93
56
106
78
76
111
76
74
78
80
69
146
115
80
124
99
77
94
154
69
120
104
121
119
175
136
126
89
104
69
76
94
78
175
175
87
115
69
69
134
130
127
119
95
145
104
115
131
104
151
112
106
106
69
134
209
80
109
52
128
96
87
80
98
72
80
151
129
127
76
120
96
109
120
109
133
93
52
52
72
69
120
119
110
154
95
110
99
121
106
88
131
107
174
69
113
113
164
112
98
73
80
112
106
76
154
112
118
106
175
101
110
69
113
90
87
71
52
69
80
76
87
118
136
109
95
154
127
154
106
120
112
145
175
132
96
143
148
136
72
109
175
69
111
69
76
76
109
76
143
80
136
163
72
133
134
76
87
94
80
113
80
74
80
131
43
87
100
89
127
96
107
80
123
119
80
104
154
80
89
109
76
80
67
217
119
80
106
125
93
113
134
76
94
137
89
120
113
69
123
101
98
112
118
115
119
107
114
101
107
154
87
119
119
94
123
76
94
148
175
113
108
76
88
77
97
160
109
113
194
154
95
76
117
122
107
127
104
89
134
94
128
78
87
104
75
101
94
92
64
133
120
113
136
107
82
123
121
94
89
131
134
78
125
120
106
154
69
92
88
125
145
118
104
104
101
56
67
89
113
114
117
94
87
112
131
149
67
80
102
94
80
199
155
87
92
133
78
95
112
119
106
111
99
80
122
109
76
80
76
129
75
128
99
104
80
126
80
127
85
140
93
87
140
80
94
118
79
80
122
85
109
74
101
80
131
88
87
99
104
124
74
80
105
69
87
80
119
69
155
128
133
128
143
80
93
120
109
127
119
76
114
140
124
78
109
107
117
80
134
103
88
87
80
99
118
76
104
114
134
80
80
107
106
156
183
121
117
137
78
146
99
69
76
80
107
131
127
156
94
110
145
88
175
174
154
80
134
133
120
111
119
118
87
80
112
145
156
91
80
136
69
142
94
80
130
128
69
109
80
120
135
69
75
80
107
136
121
115
78
80
52
78
128
118
96
112
112
144
113
106
91
100
160
69
89
121
117
124
154
145
131
156
95
87
76
113
69
76
118
107
113
87
145
117
110
119
93
109
56
69
90
80
69
87
69
107
93
136
142
89
110
69
110
90
93
88
127
78
106
128
133
80
75
107
95
94
143
71
103
142
76
69
154
80
129
127
116
164
80
111
107
103
80
131
88
76
148
120
134
121
124
123
156
56
83
76
131
76
68
80
83
102
154
134
80
103
199
80
69
142
107
147
113
93
69
128
87
69
108
74
115
76
83
76
94
94
154
98
89
87
197
82
126
99
96
162
110
72
81
74
119
175
126
140
112
95
112
122
78
125
124
125
117
69
99
106
128
76
110
99
120
87
131
99
69
71
94
69
115
123
114
64
99
118
72
88
88
88
122
132
80
76
76
133
76
145
112
121
104
110
104
43
102
156
66
109
99
112
96
119
113
154
123
131
91
89
69
80
78
75
112
87
120
80
89
157
106
128
131
142
104
87
113
124
119
162
93
175
87
104
80
112
114
80
87
80
128
119
87
99
87
146
94
162
112
80
96
69
93
163
116
140
69
92
89
113
162
87
119
80
80
71
80
110
197
80
87
112
87
72
150
120
88
143
151
117
69
76
110
135
122
89
126
83
197
145
80
69
157
132
87
119
102
87
106
134
127
155
127
148
69
69
175
119
120
82
91
166
87
54
121
181
80
111
120
113
181
114
91
89
88
93
141
175
124
126
94
87
101
199
110
69
88
112
117
127
165
119
146
102
143
129
154
96
52
89
76
80
94
120
108
117
124
149
76
137
93
133
104
76
110
64
145
125
122
110
123
173
185
93
113
80
80
147
78
83
107
138
136
117
74
153
136
137
121
80
109
147
78
94
175
128
93
151
56
110
78
151
69
104
92
120
87
91
151
136
87
98
119
137
80
80
114
109
78
108
147
120
134
87
136
146
110
101
83
88
112
155
80
127
69
87
131
80
88
87
78
100
85
120
128
117
109
140
110
143
69
121
78
113
175
106
69
78
115
128
106
119
165
126
145
88
118
74
96
69
122
151
119
175
144
148
127
103
87
120
99
90
103
109
146
164
87
156
118
100
156
147
80
102
129
119
121
113
134
130
118
92
104
142
84
91
136
131
117
69
85
98
131
80
161
113
128
156
134
154
156
94
69
128
54
80
78
69
120
127
112
110
69
69
115
155
107
107
128
175
120
143
80
120
87
69
107
154
104
87
120
80
75
146
54
107
121
69
76
117
119
115
76
122
152
102
128
80
85
69
119
76
139
108
72
69
109
78
136
107
93
104
69
139
54
151
103
126
160
69
119
88
76
89
75
154
78
154
76
112
107
140
104
128
109
123
101
142
106
74
112
87
90
94
118
119
126
112
87
144
164
156
95
119
107
124
175
120
127
109
128
119
158
96
119
80
89
139
104
94
102
119
80
107
76
117
112
81
69
93
107
90
76
88
118
92
80
114
76
88
115
99
69
129
142
88
113
121
54
119
175
134
100
127
96
76
150
117
128
109
107
131
93
76
101
87
87
175
69
109
128
127
94
58
114
133
140
106
110
112
82
69
108
134
88
80
102
69
90
113
109
123
105
80
88
76
74
87
91
80
78
106
112
144
69
69
93
94
169
175
80
81
99
111
96
75
104
154
78
69
136
150
159
91
88
80
69
164
94
134
107
138
90
131
69
140
69
134
69
93
115
134
197
96
113
139
95
80
89
107
121
107
166
102
94
80
82
128
80
80
99
99
95
94
80
129
128
143
120
164
88
110
124
80
71
107
73
92
175
69
102
121
140
134
107
69
146
76
117
93
110
107
80
132
100
109
87
70
151
89
123
131
128
112
113
69
88
136
136
101
66
110
102
89
94
112
76
80
56
163
107
43
94
113
120
124
112
120
76
110
134
136
112
137
89
139
110
99
125
76
120
163
138
110
88
117
94
145
110
74
134
80
110
87
78
129
112
107
107
156
130
199
133
143
155
76
85
99
119
109
104
148
85
156
155
128
76
131
96
134
121
80
72
99
144
128
160
76
143
143
89
106
120
85
111
147
80
175
155
136
128
78
144
156
164
89
144
110
87
93
74
119
123
120
154
69
132
130
126
76
152
156
80
130
195
129
99
119
140
80
79
89
128
76
96
71
81
106
132
109
107
99
127
85
128
102
143
78
126
80
52
69
142
125
117
117
150
90
64
88
117
166
151
80
101
109
109
87
74
147
111
134
88
87
131
90
80
108
80
69
100
107
123
164
183
123
95
107
131
107
132
122
94
124
99
142
149
92
131
119
98
114
154
127
88
127
87
87
115
87
104
130
160
134
125
107
119
142
156
91
138
110
80
96
163
109
99
88
101
131
136
113
69
106
80
104
94
151
69
80
69
80
90
128
87
111
148
120
78
117
67
96
78
83
112
80
88
154
148
120
80
76
175
128
80
120
91
199
78
72
88
107
175
100
139
117
80
80
145
69
103
138
88
80
130
96
89
121
112
140
88
69
91
114
154
69
80
133
107
140
134
113
69
163
128
59
108
80
89
94
72
164
94
88
76
128
87
127
118
107
120
88
69
120
107
133
133
120
80
124
74
73
96
165
113
120
120
136
113
89
136
69
106
78
101
138
80
136
88
157
108
121
69
80
87
88
88
52
119
78
87
100
80
119
133
91
88
90
87
118
69
77
88
121
89
69
139
111
74
157
154
143
114
149
92
76
54
130
164
78
155
117
138
111
94
147
174
87
78
64
89
120
133
80
88
119
116
122
93
121
113
119
87
69
132
76
80
107
93
134
80
74
178
80
88
128
163
175
94
150
107
87
150
80
81
112
160
145
121
115
148
107
80
136
118
80
78
80
76
100
187
93
153
153
66
131
116
115
80
91
101
89
123
109
110
98
80
95
71
114
183
131
122
92
143
69
164
76
109
107
181
113
154
80
127
113
120
117
110
76
111
109
134
197
80
143
104
74
96
104
172
136
106
69
104
116
163
77
93
154
115
94
78
78
104
121
87
87
134
100
104
99
78
209
87
80
129
119
104
98
91
56
125
133
104
112
78
69
151
83
76
148
160
96
87
123
107
76
76
85
115
110
104
80
128
69
80
67
120
87
101
78
116
88
110
127
94
89
69
122
128
91
175
120
94
117
104
111
80
197
151
102
101
118
110
93
110
110
128
109
144
71
131
85
159
94
104
121
122
118
72
87
118
82
131
120
136
78
76
131
111
54
124
123
69
87
79
78
80
113
78
110
94
136
56
83
98
151
78
104
80
78
107
100
104
80
106
90
134
97
120
128
118
109
120
87
106
107
122
117
151
89
104
143
99
87
80
80
107
92
95
109
137
110
117
164
72
91
90
101
80
197
85
197
109
133
80
137
80
52
106
54
101
106
54
106
136
94
120
80
127
175
109
106
137
111
120
89
155
78
85
81
69
110
110
69
69
163
119
69
143
111
80
83
80
96
201
88
107
72
93
124
100
118
124
90
134
90
128
109
85
72
76
110
175
106
97
134
80
87
80
119
85
101
72
112
80
142
121
120
151
75
119
128
194
96
113
114
94
96
89
175
66
197
91
80
125
154
155
76
129
80
117
103
79
155
81
89
102
128
144
119
80
80
78
78
87
104
109
109
88
136
136
120
74
120
78
80
80
89
74
134
100
69
131
87
69
136
132
117
91
156
145
93
88
52
69
113
69
118
113
136
78
119
119
73
67
131
136
109
69
134
69
112
154
154
91
69
91
80
125
128
152
96
112
94
131
154
87
69
78
132
119
87
78
69
80
134
120
145
178
111
76
119
74
101
119
197
89
87
80
43
80
110
158
85
99
91
128
80
94
74
129
100
98
155
175
113
107
115
121
109
110
140
91
113
119
63
94
123
80
121
197
156
88
98
148
76
110
84
107
89
148
133
131
94
120
69
100
87
124
76
99
80
151
128
163
83
87
82
80
80
95
151
121
78
69
108
140
87
80
132
154
175
136
69
110
120
76
83
83
90
109
80
78
120
101
96
104
95
88
87
99
146
104
69
96
114
99
127
93
94
133
103
101
72
160
87
154
129
87
96
95
80
106
115
143
119
85
106
175
69
136
101
52
80
148
155
107
123
106
93
104
164
174
115
78
113
80
87
69
155
69
113
87
101
107
127
154
80
76
69
81
99
107
104
128
87
69
110
154
117
98
102
76
118
113
157
87
74
137
80
100
134
72
136
92
147
106
87
78
99
109
197
101
85
140
88
113
84
69
127
110
175
80
99
91
129
85
87
119
69
140
80
87
145
69
109
114
99
127
76
100
136
111
131
67
155
106
119
106
128
137
69
154
156
78
116
108
80
90
109
110
80
119
78
158
80
106
113
74
76
89
107
76
149
71
76
120
131
131
163
99
87
99
124
134
78
134
76
111
120
181
149
69
88
119
154
140
80
69
76
175
80
88
117
113
128
133
114
109
80
134
74
96
109
88
89
121
128
136
69
100
120
97
94
143
121
89
109
143
118
144
175
88
154
136
90
150
107
127
78
107
72
128
113
138
69
119
131
112
134
129
119
160
148
149
95
89
69
128
118
156
69
80
93
123
69
124
76
96
80
127
201
88
116
153
80
154
80
91
107
111
87
69
118
136
125
76
99
78
99
72
100
95
83
69
166
80
78
54
97
74
121
137
88
119
96
66
124
124
56
131
122
137
94
136
162
101
78
114
80
154
107
100
97
129
83
163
80
112
110
108
156
131
121
88
87
76
156
78
134
183
80
76
175
144
83
175
111
126
87
131
76
109
119
80
140
107
80
103
91
116
88
99
123
127
115
107
89
114
175
154
153
72
140
120
80
140
118
90
95
126
56
80
128
134
119
96
80
141
113
110
54
120
78
78
78
157
87
104
119
108
148
136
136
117
101
95
140
117
175
128
119
113
93
87
108
107
197
87
102
175
111
69
69
131
109
121
156
136
78
91
90
76
118
102
89
69
107
118
80
82
88
117
106
94
160
137
138
137
153
76
109
80
109
104
156
89
109
120
120
76
88
80
120
110
175
118
87
102
110
143
87
112
69
109
72
115
126
80
72
152
148
88
128
94
78
78
106
110
119
129
69
73
69
104
104
88
155
111
181
137
56
92
119
96
119
69
69
119
93
109
74
94
130
72
92
69
130
78
80
87
119
128
88
140
122
80
109
80
72
159
119
119
119
95
84
103
155
110
91
136
132
91
117
120
144
137
80
94
164
69
80
119
120
163
87
123
113
80
129
140
115
80
131
80
76
150
107
74
150
89
78
128
69
69
131
78
90
100
136
119
78
121
117
80
127
112
148
164
111
110
88
120
121
106
78
112
76
108
107
137
117
80
69
80
115
128
95
112
69
175
79
119
69
80
88
113
69
127
126
74
74
140
120
103
106
96
93
72
155
88
97
54
78
140
69
120
88
113
128
80
111
155
69
54
69
121
102
56
80
79
119
80
112
119
69
110
163
140
137
95
80
193
112
78
123
69
87
93
88
151
94
78
136
156
91
87
96
111
58
120
115
98
98
138
56
101
121
80
109
117
175
94
88
131
87
111
80
112
80
131
69
119
119
124
197
102
80
170
175
117
80
133
178
78
120
147
107
87
76
79
121
69
156
119
69
91
69
104
96
80
85
87
126
91
138
87
154
155
91
107
107
117
114
101
93
94
99
87
69
104
147
80
87
109
107
142
119
80
94
101
104
104
72
69
69
69
80
80
103
109
54
72
119
123
99
80
156
106
80
52
175
136
98
80
87
94
56
89
140
78
108
81
69
87
128
123
89
154
107
121
76
115
99
121
199
131
87
69
161
140
137
101
133
127
109
135
78
80
128
119
106
144
156
134
78
117
76
43
76
121
110
113
154
87
148
89
87
83
59
89
203
112
154
106
120
110
151
79
69
69
133
121
134
102
80
175
105
99
115
80
87
87
75
109
69
126
128
90
136
197
80
111
142
99
80
160
120
165
104
99
72
175
93
128
86
92
96
56
128
154
91
85
174
140
112
76
80
76
106
174
138
163
69
80
52
108
109
96
113
109
101
101
106
106
110
87
119
99
134
113
175
134
151
143
119
130
80
58
80
76
151
43
80
138
94
107
72
131
82
128
111
104
111
78
117
96
148
120
121
80
104
175
109
118
111
110
78
197
69
115
80
69
104
145
119
143
110
69
134
76
155
78
88
128
99
83
69
69
93
117
76
100
121
110
69
134
113
89
138
95
177
101
99
80
69
76
110
96
78
128
103
132
87
102
112
181
99
117
88
69
154
183
107
88
128
69
99
91
99
64
151
119
93
117
76
119
80
175
120
99
95
117
118
99
106
111
105
99
69
154
80
110
80
94
119
78
117
119
113
78
117
83
79
89
150
164
80
78
106
154
175
93
106
112
137
136
66
121
119
107
89
78
110
76
109
106
78
128
118
95
117
107
119
52
78
143
113
133
69
151
102
111
160
100
88
175
106
163
145
72
101
78
106
93
115
80
88
83
113
113
80
136
112
80
140
67
99
143
87
78
120
119
183
130
127
110
112
74
109
115
131
140
144
80
89
121
128
102
114
78
127
102
112
118
120
104
76
136
76
132
78
128
120
78
103
144
96
69
94
127
108
76
104
131
69
107
76
69
74
93
121
154
80
129
122
80
134
69
96
140
140
118
175
63
128
110
120
111
87
154
128
136
115
69
88
127
76
108
78
78
69
175
89
119
94
87
131
69
175
106
56
119
99
125
92
69
83
131
120
102
108
98
80
121
121
109
128
110
104
74
99
91
119
80
154
110
123
152
119
129
99
113
80
87
64
110
98
175
109
101
143
106
119
109
125
135
121
131
111
114
121
80
78
128
131
172
140
96
100
80
134
94
89
122
96
69
129
175
87
95
109
87
94
123
80
76
99
101
69
121
69
80
78
91
88
83
99
108
128
118
80
78
82
87
175
120
138
106
54
107
96
102
86
76
87
163
109
89
109
96
78
96
108
175
69
145
69
163
120
80
94
94
112
93
118
136
103
94
78
87
80
76
115
147
69
127
120
93
109
109
78
112
197
119
102
125
118
99
87
119
154
95
99
164
87
89
89
80
122
78
99
89
119
76
59
78
69
104
109
87
139
106
74
76
120
99
124
69
87
107
158
93
96
88
153
145
113
120
80
76
92
95
69
164
175
128
80
80
104
120
175
77
107
155
91
102
92
76
155
80
69
90
115
113
129
113
110
127
91
80
112
83
81
140
175
137
156
119
100
80
120
94
128
93
69
151
113
76
148
76
156
99
80
120
88
136
80
88
102
117
60
122
80
112
123
80
143
80
76
78
120
156
89
69
144
123
112
80
52
90
148
88
175
69
113
87
74
91
88
113
158
93
121
175
80
144
125
67
115
114
109
85
137
103
100
89
56
131
100
80
156
140
129
124
105
124
138
109
85
116
76
66
72
88
89
80
119
143
131
80
113
104
175
76
110
82
91
111
87
128
93
120
91
104
96
161
100
69
69
126
71
119
107
93
87
94
95
72
128
136
117
121
128
136
114
96
119
120
99
151
164
136
80
79
131
176
119
99
113
136
109
119
126
109
69
159
69
128
80
127
140
175
102
117
120
184
119
106
163
197
120
119
121
127
69
94
127
151
104
86
99
129
134
78
96
136
141
117
156
72
140
91
128
67
76
80
87
123
118
78
112
69
80
68
128
69
69
102
83
80
80
93
80
109
111
197
69
120
144
87
112
80
76
93
109
156
120
87
117
130
54
110
121
103
129
130
183
140
154
122
136
100
72
129
74
107
87
100
76
78
154
87
76
78
91
69
91
154
154
145
99
78
87
121
90
93
138
136
119
72
80
80
76
175
78
80
95
71
72
148
66
209
129
80
113
186
80
113
132
124
99
143
77
80
87
88
106
156
89
101
99
100
156
80
185
119
88
138
89
96
107
122
80
175
80
109
93
69
124
80
118
93
78
84
136
149
117
123
119
93
101
88
80
80
113
102
132
60
87
93
72
137
114
84
124
103
122
71
109
78
72
143
79
175
154
161
123
119
87
80
146
87
124
107
166
112
175
107
76
80
141
103
120
59
89
64
141
75
99
136
80
110
69
121
106
110
120
174
91
175
119
154
134
112
106
69
130
80
106
117
170
88
76
78
89
154
104
171
125
104
80
175
154
94
133
156
120
123
134
79
78
129
126
101
87
78
86
119
80
75
89
80
96
134
110
112
101
78
144
187
72
140
82
89
140
69
93
155
92
131
87
120
147
88
154
89
119
64
112
87
89
72
60
88
99
120
120
197
87
91
117
69
69
116
59
104
152
89
128
69
156
141
102
80
89
131
175
104
134
80
94
148
119
78
107
107
138
119
78
131
69
104
75
119
85
96
60
102
99
121
109
107
87
78
134
97
120
183
78
66
72
175
136
122
89
87
118
119
118
91
80
100
104
140
80
110
63
89
104
74
146
76
163
80
91
126
78
123
87
93
69
120
158
148
172
145
96
116
159
110
73
87
74
66
100
88
122
95
78
69
122
110
116
88
115
118
124
145
109
69
144
119
100
78
99
89
100
107
132
111
106
112
80
71
175
110
122
148
94
80
80
87
80
129
74
80
98
78
154
125
120
132
113
87
146
120
197
89
114
119
87
120
106
121
87
85
69
120
146
91
129
104
164
175
69
97
112
131
104
128
130
120
153
78
108
128
140
89
96
114
94
93
110
69
136
106
120
76
154
102
80
107
80
127
66
165
175
146
125
94
112
76
150
80
69
124
128
52
101
83
80
97
80
72
136
87
80
69
126
76
92
89
72
107
117
121
87
102
110
175
99
69
69
115
80
114
113
88
197
154
91
87
100
119
89
113
78
117
112
149
85
87
150
103
110
110
94
140
175
80
115
71
128
67
43
128
69
78
104
80
175
132
112
109
54
87
113
114
78
126
128
166
132
101
80
93
148
69
140
60
80
106
96
76
59
154
73
106
74
93
110
93
143
133
151
104
139
93
127
98
106
120
56
100
147
106
80
146
112
99
122
99
69
122
94
74
129
149
109
154
101
160
72
127
69
72
134
120
125
126
121
59
122
155
101
72
175
80
87
88
89
128
117
117
111
112
150
93
110
80
69
154
183
87
78
90
176
69
87
119
80
87
80
111
131
113
144
95
91
72
116
128
94
88
101
83
102
122
96
128
80
175
107
69
87
148
73
106
112
91
110
90
152
151
108
95
87
160
99
110
145
52
124
104
121
80
113
131
76
143
79
126
76
134
99
120
103
114
88
76
76
69
162
113
89
111
78
119
89
127
118
69
78
156
122
97
74
122
120
80
78
136
114
121
74
75
127
154
140
125
113
67
78
54
76
105
99
148
142
197
80
107
86
110
112
72
80
109
91
136
110
127
112
56
187
109
109
78
106
175
89
69
123
104
80
113
104
89
94
72
80
99
54
91
113
113
88
119
87
89
69
89
80
156
82
103
86
128
80
93
112
120
125
143
58
112
148
117
97
83
160
109
73
163
78
149
163
140
76
119
76
119
160
66
151
80
80
91
78
96
80
110
107
76
94
101
80
87
172
119
117
117
110
80
139
88
215
128
80
134
80
131
137
90
117
109
123
197
76
119
122
87
80
78
119
121
130
100
80
80
121
134
78
124
185
80
169
76
102
112
85
84
136
174
112
140
127
133
69
139
134
78
93
74
87
140
108
172
120
85
69
117
85
119
80
85
107
76
80
175
130
79
100
80
154
150
126
80
107
131
104
119
69
83
109
153
93
175
126
66
88
121
100
72
69
122
76
134
99
89
156
89
127
117
113
162
144
158
107
175
145
105
88
121
80
69
76
145
94
107
128
80
99
201
104
118
69
108
151
119
155
112
107
80
114
110
120
80
128
87
78
69
99
106
164
163
120
87
131
78
187
116
94
72
76
125
145
121
110
125
131
92
110
120
112
83
143
78
107
155
74
96
69
120
163
78
155
80
147
103
87
87
87
100
118
80
78
69
80
95
84
80
126
88
130
78
110
165
140
120
69
83
175
69
80
131
87
143
150
120
107
69
169
181
76
98
80
130
80
78
131
94
117
114
122
99
112
121
145
78
110
155
121
127
80
130
107
76
76
196
82
43
197
99
119
110
127
113
80
69
112
131
118
143
110
80
89
67
127
80
72
119
131
101
156
154
99
147
54
87
101
89
127
126
74
88
69
76
54
134
140
87
147
99
87
78
87
80
164
143
109
114
123
131
112
118
112
80
104
154
155
120
193
119
136
164
132
80
112
112
127
154
78
60
120
110
72
156
98
175
114
110
126
69
110
98
88
76
107
131
107
82
121
93
96
75
110
151
88
94
78
113
69
87
140
175
78
58
54
158
78
89
146
75
78
80
87
78
69
90
128
175
85
95
80
99
120
113
153
78
129
183
87
98
72
136
84
52
121
113
121
80
80
54
109
107
56
67
119
90
117
146
76
128
123
156
117
128
69
79
131
136
127
120
107
98
76
121
88
88
148
103
134
80
134
76
119
131
114
140
145
69
94
80
95
140
87
146
94
197
100
67
152
69
125
85
88
129
76
140
88
69
166
129
132
74
144
113
87
136
120
96
120
156
154
69
87
154
120
156
87
69
69
85
80
95
197
87
154
122
146
80
137
76
103
118
78
87
87
127
102
78
89
147
89
122
100
148
100
126
89
87
74
80
69
119
117
69
136
112
101
128
78
80
104
121
88
146
121
74
107
141
98
87
124
88
67
80
80
113
89
78
98
129
104
119
128
109
106
99
117
143
93
120
156
99
74
94
69
136
69
89
88
76
101
120
140
175
149
91
94
107
175
67
83
124
101
138
163
143
154
120
166
112
134
96
113
122
110
148
126
106
112
96
109
76
91
96
132
99
69
128
78
110
78
43
136
100
88
151
109
100
155
78
132
80
131
113
113
109
96
134
76
117
78
120
52
113
99
102
67
87
87
149
76
128
87
183
147
119
134
69
99
67
69
87
105
66
87
112
117
156
91
72
175
87
119
93
89
110
43
140
80
87
103
69
115
123
88
163
78
69
71
88
54
71
134
89
154
139
138
69
120
76
98
80
78
160
155
93
80
111
134
80
78
115
87
80
129
156
134
109
118
100
102
119
146
80
123
72
104
93
166
80
89
193
80
99
115
134
101
106
80
85
120
80
89
140
116
99
108
97
91
78
156
88
143
109
85
69
109
88
111
78
175
120
205
74
112
119
119
149
185
80
78
106
128
87
69
76
88
74
156
120
74
105
137
131
101
131
112
113
131
136
66
104
122
120
107
52
127
80
101
89
89
87
175
104
80
104
78
94
76
104
175
87
69
79
100
80
91
122
80
43
87
111
137
123
107
76
80
93
93
76
104
175
181
136
199
101
134
131
69
111
164
104
80
110
76
121
100
115
165
120
80
153
110
181
113
94
94
71
104
107
72
78
110
113
117
99
164
126
78
89
80
75
69
189
87
155
156
80
127
69
156
69
80
106
86
101
99
66
69
78
54
106
108
128
87
80
126
185
74
117
132
89
153
89
80
132
86
74
99
56
140
81
107
151
107
109
88
119
119
106
120
104
78
145
80
107
117
120
90
74
113
87
69
133
119
89
80
156
100
76
76
102
101
115
119
109
78
109
117
102
111
122
201
151
106
86
155
80
94
83
154
120
121
89
89
87
80
80
76
79
117
88
151
78
165
69
146
91
80
139
94
109
143
121
69
102
72
131
149
148
113
91
128
73
79
69
95
80
110
197
82
201
134
76
114
83
106
136
69
121
74
87
101
76
142
112
126
175
168
69
132
175
115
76
78
126
87
80
100
197
155
112
155
76
120
93
103
111
93
122
106
146
107
109
175
119
88
104
54
105
158
72
69
148
154
69
69
109
107
197
99
80
89
149
144
107
72
72
112
80
93
80
80
80
111
111
120
143
183
163
128
106
96
119
87
128
120
136
115
127
75
69
132
99
101
117
138
119
131
87
109
110
85
78
80
113
89
93
120
69
72
69
69
72
120
87
115
118
69
134
88
94
101
120
85
82
96
80
115
126
80
78
163
131
154
99
114
109
122
164
72
102
69
89
156
118
76
140
80
69
165
119
103
112
143
54
134
119
102
76
95
73
119
87
80
87
93
136
128
113
87
126
128
78
88
120
69
112
117
80
120
80
100
78
89
87
128
96
151
136
102
113
59
91
89
80
94
154
80
106
109
131
87
74
109
135
78
156
76
197
91
131
94
69
80
89
72
110
156
113
80
78
102
145
76
90
76
72
80
76
68
110
111
146
80
88
133
89
122
74
120
151
80
80
52
91
69
126
78
91
98
87
109
128
140
89
175
116
131
95
91
199
131
156
117
80
88
78
89
151
121
160
137
76
130
122
75
78
80
87
124
79
88
156
80
117
69
69
89
75
93
76
107
156
100
128
136
124
125
85
105
106
154
120
66
80
107
110
118
96
156
118
103
99
69
117
69
126
128
89
146
80
104
69
129
133
119
69
69
80
80
91
88
121
144
134
128
59
122
117
80
174
102
87
80
73
130
97
140
89
141
94
87
88
110
116
88
156
169
93
54
101
85
140
96
76
109
99
131
108
148
126
107
109
88
69
69
100
120
87
94
74
107
110
78
84
69
117
98
106
118
87
156
88
139
67
121
80
121
175
104
109
121
123
129
100
102
83
112
139
94
69
115
125
113
58
123
134
131
120
102
87
156
110
104
95
56
89
78
122
162
106
80
118
76
117
175
98
80
120
80
120
101
123
104
106
124
79
175
178
113
164
119
119
75
91
94
175
80
89
124
109
72
80
144
75
117
104
69
74
133
101
94
80
107
127
119
128
107
138
117
88
132
108
69
104
119
76
94
62
138
109
112
43
163
209
90
157
96
80
87
120
156
87
80
131
60
183
115
92
117
130
76
146
143
69
175
91
104
162
126
91
155
69
89
136
69
111
107
75
101
120
98
172
147
76
75
74
88
69
163
110
174
80
128
115
87
110
121
112
96
76
121
121
118
67
152
131
76
80
87
139
88
123
107
78
119
163
69
163
54
80
125
136
120
107
74
76
146
79
96
110
122
122
174
113
119
154
110
80
69
104
76
75
89
118
134
121
66
99
128
208
134
91
110
76
69
164
111
111
80
80
117
145
128
133
121
147
106
126
131
80
131
110
121
136
140
80
69
91
99
89
124
80
123
93
69
69
137
103
107
88
69
84
156
111
209
88
80
121
110
197
107
74
131
114
131
87
69
119
82
99
107
93
120
90
175
88
67
175
96
78
87
64
146
201
122
95
140
72
56
78
88
69
117
85
82
154
90
119
137
76
88
109
92
87
80
106
154
80
74
86
118
93
76
101
90
106
89
78
114
72
119
107
104
175
146
132
98
87
107
69
121
80
113
74
80
109
119
80
160
128
118
100
90
103
126
140
171
121
94
111
54
93
107
126
79
95
127
80
129
119
78
76
118
59
100
102
101
93
175
76
91
90
101
99
69
80
94
104
76
163
94
52
121
175
112
117
112
185
78
129
110
126
89
201
74
109
102
56
120
77
87
74
138
88
119
80
87
114
136
96
121
88
58
87
113
112
87
69
102
134
138
101
123
76
138
78
108
87
87
88
94
80
78
110
93
106
134
99
69
69
156
132
154
109
81
104
80
76
87
76
175
78
72
91
156
80
100
76
113
107
100
175
131
91
103
69
78
201
54
107
88
80
118
121
136
128
64
67
109
99
99
109
89
76
69
69
69
128
120
175
156
109
108
144
120
131
80
118
76
98
85
88
69
151
107
80
140
121
131
119
69
80
69
140
90
76
78
96
118
76
169
131
80
91
80
98
111
96
121
121
69
88
72
117
126
120
87
104
146
88
90
89
134
76
80
94
87
144
99
111
175
87
72
104
106
82
109
90
95
80
122
89
101
102
78
89
69
100
149
94
87
113
88
175
67
114
85
131
145
77
145
112
175
116
68
113
130
141
120
80
93
80
87
132
100
109
140
87
76
69
69
74
120
131
99
183
87
115
104
106
169
87
153
113
93
156
156
87
103
118
52
76
73
106
106
80
87
88
93
119
100
72
118
155
67
94
134
72
56
111
106
131
72
100
80
93
130
85
95
134
126
106
103
91
120
136
137
157
69
80
114
76
76
76
104
78
87
80
95
121
101
134
76
80
119
86
127
89
131
93
119
127
117
116
119
119
87
113
43
107
175
85
64
78
126
165
78
140
169
78
80
74
146
119
78
99
172
154
197
148
80
93
118
104
117
107
80
80
151
76
110
123
117
88
80
99
72
119
91
117
78
80
69
108
94
69
154
154
109
136
101
69
107
148
99
87
98
69
92
134
69
69
110
110
99
134
87
128
94
164
80
90
89
116
80
100
74
89
88
80
160
113
100
80
115
76
113
99
106
149
78
92
99
78
76
98
87
121
118
89
154
80
119
78
104
134
139
92
93
119
80
100
119
98
83
80
197
78
76
80
120
130
80
78
103
120
69
88
87
80
90
79
88
132
105
80
91
56
120
148
89
127
140
107
88
107
149
43
86
93
87
160
118
110
186
88
80
80
78
74
52
128
80
164
80
123
109
113
122
110
121
109
93
175
116
109
128
119
80
100
108
159
91
154
119
87
78
94
136
120
99
100
111
72
69
163
142
124
69
56
119
78
80
80
121
154
91
130
120
98
96
155
120
120
119
80
80
104
141
147
147
154
132
93
99
76
111
91
112
128
118
122
120
164
120
133
117
185
102
131
94
143
120
175
96
104
137
64
99
69
99
87
93
95
101
109
80
80
76
80
127
75
72
156
120
130
98
91
101
94
113
80
80
104
80
145
103
110
136
101
175
101
119
76
104
80
131
199
156
113
144
155
93
89
88
138
102
80
119
80
107
109
136
83
174
78
102
137
119
128
54
155
163
145
93
110
115
113
80
104
128
69
113
124
112
175
102
108
80
175
73
80
113
120
146
76
124
88
174
128
155
119
103
155
175
124
73
117
104
77
69
114
89
125
89
134
78
80
140
109
100
80
78
123
74
97
154
121
155
110
88
124
91
87
71
128
137
99
80
101
155
112
80
151
78
197
72
123
113
107
78
119
140
80
76
154
102
56
99
80
99
119
114
87
136
95
130
132
110
151
133
121
121
88
113
88
149
67
128
114
80
104
74
139
89
103
107
113
72
80
120
93
72
109
156
73
120
134
69
121
110
85
75
87
80
119
145
145
134
138
152
99
138
120
114
92
154
96
80
80
69
88
152
107
140
136
80
174
112
56
66
122
96
80
80
112
142
87
54
137
138
93
106
145
151
54
80
134
141
80
102
186
128
126
94
122
124
156
113
121
66
118
56
169
102
134
104
89
94
128
78
80
122
77
87
78
175
69
91
197
109
57
78
78
109
87
89
102
80
148
112
154
119
117
94
69
92
76
120
119
78
76
85
129
100
114
72
162
69
126
174
99
121
101
101
96
154
99
80
199
155
69
109
76
80
133
104
52
102
87
109
87
95
78
69
80
87
72
80
131
87
110
87
156
99
76
134
85
80
89
104
76
93
72
151
130
76
89
123
111
93
104
103
72
127
154
96
139
110
118
125
107
138
80
175
116
132
98
104
128
93
89
96
120
132
87
102
76
143
110
121
181
110
88
93
100
139
93
121
136
112
185
175
114
89
154
113
72
56
74
144
120
64
102
87
120
64
175
116
94
185
123
108
159
141
94
111
76
123
80
78
124
135
119
136
80
175
93
134
78
155
114
87
140
52
92
143
89
85
112
87
80
119
87
151
87
110
140
103
119
69
117
119
120
92
91
143
96
69
151
94
174
76
99
185
157
69
87
87
161
99
197
69
157
121
147
74
99
83
90
155
87
69
140
119
120
88
143
72
111
80
156
100
80
101
119
83
76
128
69
88
152
154
96
72
74
197
123
118
120
76
96
91
118
72
52
69
120
60
118
69
87
76
110
134
110
104
124
117
175
56
128
184
197
52
94
104
93
131
122
96
80
119
112
95
118
73
113
100
71
87
98
134
156
146
78
112
142
135
87
136
76
95
175
91
78
76
137
130
91
113
80
145
125
56
138
80
72
76
106
130
156
98
66
87
80
87
109
80
128
93
107
174
109
137
56
43
52
56
78
107
72
136
102
87
109
72
109
76
69
94
143
99
118
80
154
110
120
80
109
93
76
88
72
73
131
91
76
175
87
115
121
119
99
58
95
118
78
145
101
80
146
136
100
80
101
80
69
113
78
118
132
69
148
143
134
154
87
120
132
80
96
71
117
120
137
100
78
112
138
183
102
120
78
87
80
93
80
87
112
148
163
133
74
101
88
90
138
154
124
76
80
136
80
118
132
97
119
96
80
136
134
106
89
58
126
175
146
145
122
88
99
80
119
88
120
118
120
69
135
119
69
156
119
116
117
197
146
163
169
174
102
106
80
151
69
155
197
78
128
109
132
87
175
80
101
126
147
69
106
115
174
99
105
69
119
89
87
72
63
147
78
92
119
136
76
76
69
116
109
103
197
76
107
96
54
80
69
94
126
123
88
80
80
109
131
136
100
101
91
101
175
80
137
94
101
115
135
72
130
109
110
102
103
88
119
80
125
154
197
127
88
133
69
156
99
128
87
150
101
125
133
96
80
87
108
87
117
146
128
134
112
129
69
92
88
112
78
93
95
78
109
183
66
123
79
91
146
78
151
154
76
77
109
127
110
96
134
94
120
54
119
76
118
64
75
95
149
156
124
82
69
69
69
104
115
78
69
117
129
80
128
107
116
89
80
78
80
69
126
131
110
131
119
155
101
78
102
87
114
147
175
88
104
122
112
120
76
87
72
131
156
109
118
119
89
69
175
100
136
107
151
125
87
80
80
69
107
104
52
99
78
119
89
80
125
130
128
101
114
107
94
105
119
89
94
99
102
112
143
89
80
100
111
119
99
130
132
175
119
101
121
69
78
93
199
112
141
128
205
134
87
98
69
113
83
138
80
89
69
84
120
149
91
80
80
129
153
80
128
80
151
142
95
98
100
88
154
89
120
79
99
76
155
69
69
76
164
107
60
154
175
69
99
155
87
106
80
78
156
76
68
74
106
69
78
142
67
89
102
80
166
128
112
78
100
138
110
69
106
99
126
90
80
136
69
83
99
122
69
103
156
147
67
69
119
110
71
107
134
117
107
115
128
80
80
174
155
121
91
125
74
155
138
121
119
183
124
100
203
126
88
72
64
154
142
120
73
105
80
157
121
69
120
103
104
87
128
69
175
127
94
69
78
147
85
175
74
78
89
80
80
98
110
109
112
120
175
121
130
112
87
72
81
81
120
175
96
119
69
127
110
104
94
87
106
131
69
72
99
115
113
86
100
175
138
110
134
128
123
78
87
121
152
102
101
113
80
145
85
64
96
113
113
111
69
87
147
68
183
88
87
101
102
87
106
76
127
111
76
94
143
144
74
89
72
102
72
80
121
107
103
119
99
78
145
155
101
80
98
157
112
80
59
119
80
109
115
80
88
106
143
99
155
146
87
121
88
109
119
87
130
140
109
112
196
172
85
69
54
87
80
110
91
123
76
123
106
140
144
112
147
80
76
111
94
88
80
152
197
115
134
103
120
101
66
69
99
72
118
112
122
136
163
80
141
140
175
115
150
56
87
148
111
101
80
104
106
120
69
138
93
89
88
107
147
131
115
89
118
99
155
154
80
99
43
91
97
127
69
146
80
102
71
154
181
118
103
99
143
185
67
123
116
110
80
69
110
79
83
103
80
80
128
131
80
80
88
80
110
76
209
74
88
143
107
80
121
128
195
119
80
87
107
130
69
154
72
122
69
80
80
175
127
67
88
87
80
102
109
99
69
69
107
106
139
151
97
128
119
108
83
124
101
78
87
109
103
121
103
74
112
123
136
78
119
83
82
94
109
54
164
121
52
87
69
80
96
134
155
89
76
67
87
129
109
153
136
129
137
100
119
99
74
121
80
122
74
145
128
99
80
144
128
90
89
112
72
103
69
77
95
201
134
104
89
128
119
89
122
87
80
125
101
101
143
131
89
89
126
120
134
120
80
94
63
76
52
80
88
119
112
126
69
74
146
112
69
123
78
151
154
101
67
175
131
87
74
123
89
175
146
109
104
97
69
136
122
88
100
80
144
80
145
75
54
94
164
129
80
104
156
101
94
175
87
99
123
100
72
80
76
119
134
174
66
154
94
99
144
102
175
123
80
148
66
69
111
94
80
115
106
155
69
76
87
117
129
88
107
63
154
119
94
94
154
156
120
69
149
80
82
135
138
139
99
80
67
106
115
94
98
111
75
110
118
97
111
107
57
91
135
104
69
89
122
80
76
69
148
87
111
122
139
132
145
151
111
131
80
104
151
83
80
84
120
118
63
95
87
151
87
109
136
97
69
119
80
76
69
80
185
89
90
111
123
77
80
145
80
121
89
144
139
104
88
112
80
92
118
121
78
76
103
69
80
71
102
91
113
100
80
69
162
106
83
69
80
94
91
87
141
146
178
120
130
121
94
76
54
108
91
87
80
111
128
87
91
93
43
137
137
101
90
87
129
100
151
80
172
112
88
112
87
155
76
130
132
83
113
89
113
117
76
87
78
134
163
76
169
122
116
78
115
156
121
121
100
90
93
175
76
148
110
120
109
175
141
80
134
107
111
107
114
91
87
107
140
109
69
159
80
131
120
69
155
87
135
119
110
131
109
89
150
108
78
43
99
80
109
153
199
119
54
69
66
119
106
111
76
164
69
119
117
78
112
113
136
89
175
94
76
107
104
174
102
158
154
88
128
78
80
131
78
91
131
107
101
151
117
119
125
85
157
152
128
89
122
147
95
87
87
112
54
117
71
121
109
101
143
108
88
109
102
106
91
175
78
113
74
104
120
88
80
87
69
128
112
128
116
102
52
76
69
130
99
104
109
120
69
96
93
91
93
121
87
87
120
127
69
58
183
94
155
117
87
109
80
109
119
81
99
100
115
199
87
120
97
115
69
88
69
140
164
120
92
52
76
106
154
145
127
140
156
102
107
128
76
89
88
119
113
109
69
160
91
106
115
74
77
119
69
136
175
109
80
76
122
110
97
124
113
69
128
76
80
95
128
175
107
94
106
120
175
87
120
123
109
89
107
112
120
108
141
97
103
89
83
143
142
119
80
80
144
107
106
87
134
131
89
112
99
107
80
87
108
136
93
80
94
94
88
124
146
96
80
80
91
115
110
106
76
102
96
73
101
144
83
100
114
117
128
101
99
87
133
58
110
155
136
92
94
91
94
69
119
154
131
156
110
96
71
164
85
102
94
119
109
90
122
76
87
74
172
119
130
116
69
127
128
104
52
69
175
69
145
80
100
87
78
96
80
115
169
154
154
93
80
107
183
103
109
138
80
122
117
143
107
101
101
80
88
175
88
101
107
163
115
69
87
107
117
117
136
76
107
87
119
54
131
76
78
69
164
87
80
197
80
132
73
90
120
89
94
132
121
79
143
175
174
121
87
107
88
115
91
80
154
112
109
98
128
90
78
94
128
147
52
114
152
78
87
148
120
114
80
76
88
105
122
88
133
117
80
154
111
101
106
121
174
126
95
80
104
80
78
130
89
206
69
80
74
80
119
104
120
147
123
89
78
108
121
96
175
80
163
87
69
71
154
54
143
111
119
81
157
88
69
161
97
43
69
120
175
155
69
89
141
88
80
89
134
107
128
76
80
85
197
175
76
109
112
83
145
89
107
76
87
129
107
78
83
96
154
136
154
121
87
91
129
119
78
197
136
99
93
80
113
89
76
87
111
76
80
175
117
78
155
119
134
120
176
43
87
117
126
87
101
78
87
76
93
80
162
69
69
132
80
69
140
99
140
102
152
106
89
120
112
87
95
69
112
134
69
80
130
133
113
76
132
155
106
137
147
92
122
80
87
121
121
96
175
106
92
64
131
56
76
125
80
136
88
113
175
104
69
112
121
88
144
94
110
128
89
104
101
68
113
96
69
69
119
80
88
102
90
113
66
151
93
109
139
112
160
113
134
97
76
87
88
136
90
80
54
72
56
104
52
80
111
110
78
63
88
131
69
69
150
87
105
128
80
80
76
152
69
107
69
140
87
107
116
125
83
72
88
54
125
131
154
94
67
174
94
137
138
128
79
114
113
104
183
87
96
72
88
95
96
80
80
115
89
154
67
93
99
113
163
160
89
115
154
99
94
109
102
80
102
90
110
103
76
76
104
104
107
113
91
181
131
94
104
80
154
142
130
112
144
121
99
78
89
88
76
73
144
128
101
80
164
142
69
119
109
137
121
87
109
69
66
193
76
95
99
136
128
145
75
69
110
119
102
113
123
94
123
142
115
95
127
119
75
110
76
105
87
115
69
89
109
154
99
111
104
125
54
128
122
117
80
69
117
110
80
78
93
175
115
89
72
136
123
112
118
89
136
101
118
154
134
83
78
106
69
109
101
89
87
87
74
85
87
80
78
94
147
67
87
175
76
87
117
113
85
175
80
102
94
78
109
120
106
110
112
52
122
75
143
76
98
98
76
94
117
87
76
93
116
175
154
127
80
99
156
101
164
69
69
127
91
124
118
163
87
113
113
80
106
131
136
162
80
138
80
143
69
119
134
152
69
96
69
64
133
156
146
129
104
100
93
146
163
78
76
87
94
115
94
80
54
175
99
99
104
114
89
94
79
106
80
134
117
128
104
80
143
143
110
82
89
131
143
76
99
107
76
76
88
136
114
115
80
128
88
113
80
199
146
101
89
107
129
88
69
119
104
118
118
56
69
87
146
121
113
91
66
94
137
151
139
75
172
69
119
91
146
106
107
120
87
52
128
100
109
111
171
96
69
91
133
149
146
112
89
125
113
75
78
117
156
69
122
175
80
107
120
119
107
87
110
87
109
131
69
104
88
151
69
133
128
128
175
175
95
110
107
131
73
106
129
143
54
120
71
151
140
113
154
121
89
78
87
89
83
56
87
98
102
104
197
155
78
103
154
137
109
152
136
145
80
115
119
119
107
82
160
104
151
114
69
144
125
140
87
99
151
122
105
80
155
87
115
112
106
91
78
163
146
89
114
109
80
89
69
138
69
156
91
105
80
94
106
128
123
104
104
89
79
120
78
80
71
119
80
87
94
134
69
90
99
110
121
82
175
80
80
67
109
131
69
76
69
106
120
127
91
94
69
100
76
94
80
72
87
78
69
151
80
136
69
87
88
112
83
124
132
117
89
121
119
78
99
175
175
79
122
134
106
84
80
128
80
99
80
75
160
114
118
90
131
134
89
80
87
80
128
69
122
144
118
56
80
87
125
131
120
119
80
175
120
94
69
131
154
76
79
87
102
103
78
125
87
83
111
88
120
112
112
112
87
142
87
75
185
128
80
69
80
87
175
114
154
80
185
71
111
119
131
78
80
121
181
69
83
107
80
110
131
104
74
107
88
78
146
80
175
96
80
147
136
119
89
78
88
117
89
136
110
120
80
80
78
87
110
64
131
91
80
133
197
165
112
80
148
120
118
119
80
80
91
121
128
128
94
74
93
78
151
116
106
152
136
80
137
163
164
88
69
76
107
119
92
82
69
158
99
69
139
69
137
76
92
89
104
80
119
119
119
131
118
124
119
89
80
131
80
69
128
121
72
121
80
76
136
80
131
76
97
80
99
80
160
121
175
140
80
124
97
117
112
156
88
80
103
69
115
80
136
80
69
99
145
109
110
102
140
101
174
80
107
80
101
120
134
119
121
96
119
84
69
106
107
140
118
79
99
88
80
154
118
69
149
149
151
78
88
137
134
92
88
87
106
69
104
118
142
112
175
88
83
121
91
201
140
120
99
129
80
120
88
88
76
78
91
113
107
109
104
151
142
74
156
91
88
117
147
126
144
69
91
78
69
132
78
111
112
101
87
91
134
201
118
107
156
80
145
90
80
175
69
128
86
109
69
78
131
94
112
169
73
110
74
80
127
87
131
111
119
80
132
88
164
74
97
103
126
102
163
88
123
163
119
80
145
94
110
175
153
131
119
89
80
120
93
99
88
131
72
78
106
69
80
80
76
78
69
128
74
163
80
121
211
134
89
111
145
104
102
140
134
112
118
76
80
163
107
175
93
56
128
111
69
76
136
119
104
102
164
107
72
129
87
76
69
93
137
145
93
138
154
94
119
80
129
117
136
117
93
76
109
78
107
69
113
86
126
87
112
87
151
88
101
78
94
119
121
128
110
156
175
143
87
199
52
106
205
197
120
110
127
112
143
52
127
136
89
175
54
154
76
80
125
151
132
80
128
89
128
143
83
80
109
80
118
131
52
67
154
117
93
80
117
88
123
108
99
96
110
102
183
78
106
111
115
82
175
80
163
80
145
109
96
80
87
113
145
119
103
150
87
91
93
83
72
78
146
71
80
80
93
87
76
121
106
104
88
80
72
90
119
69
94
133
117
99
80
88
80
80
104
79
60
124
107
128
80
112
123
87
128
69
83
99
85
69
134
175
69
106
117
78
154
87
70
114
76
69
114
69
87
112
98
106
105
124
109
121
145
87
87
78
117
76
151
131
52
74
151
160
77
107
80
169
119
67
59
80
117
128
69
74
110
85
109
112
107
78
80
80
117
115
88
156
69
129
101
76
76
120
91
154
78
154
137
80
76
154
119
94
69
143
87
128
117
100
78
104
136
174
92
76
104
140
130
80
121
80
120
156
107
83
107
102
205
78
147
76
100
95
80
156
118
54
130
120
94
136
155
69
109
156
82
88
78
115
80
101
80
120
88
116
69
123
130
69
69
69
91
163
117
118
106
89
89
76
119
199
132
114
88
104
78
76
103
104
110
80
119
95
156
154
80
78
112
136
69
78
72
121
119
130
119
107
175
58
92
78
78
134
117
80
92
144
107
144
96
100
113
78
125
140
107
97
88
114
110
175
143
110
93
154
110
128
164
104
94
124
52
119
120
137
76
78
144
152
59
119
136
151
107
80
85
80
101
175
155
118
110
69
60
78
112
156
107
87
79
102
114
76
111
175
131
102
69
119
78
97
135
123
83
154
104
89
110
89
80
76
119
80
157
145
92
80
125
102
100
123
128
197
154
128
72
111
175
72
174
148
78
144
87
80
69
102
104
107
134
205
85
69
87
111
144
52
105
74
93
80
56
106
107
133
106
151
80
134
117
104
69
103
101
106
141
103
54
72
99
115
124
88
78
80
143
101
133
96
131
134
54
78
87
121
66
66
96
127
80
134
78
81
120
175
80
201
80
69
66
76
131
69
119
121
119
94
76
69
115
110
199
88
109
137
80
201
131
87
69
164
94
87
104
107
140
152
85
109
87
107
101
72
118
146
69
149
118
111
90
66
102
119
151
89
87
95
119
80
120
100
124
157
99
112
151
91
112
121
102
74
89
164
88
69
145
76
139
104
151
112
102
120
117
137
78
80
87
75
76
69
145
91
99
113
118
107
87
98
119
87
82
76
63
104
88
118
175
58
119
76
80
72
93
137
137
136
140
119
151
117
140
124
80
156
96
107
82
95
143
154
129
131
110
121
199
96
99
72
112
93
80
80
88
175
114
87
110
123
81
136
155
66
76
69
106
69
175
76
90
87
111
144
88
80
80
69
136
131
175
163
128
95
80
80
151
69
99
106
72
87
78
69
99
83
94
123
106
106
107
69
89
130
123
163
76
175
143
119
94
124
69
71
123
114
115
128
175
126
154
111
136
171
93
119
94
138
134
69
80
146
106
67
69
78
153
91
149
117
109
80
126
89
82
140
94
142
76
88
110
89
134
175
93
156
117
120
140
175
66
80
100
109
155
117
121
89
145
87
127
72
137
114
56
154
106
134
114
117
113
91
146
112
56
80
85
88
131
96
119
54
136
80
125
106
114
80
92
69
127
88
74
131
69
87
118
131
74
99
88
106
88
131
195
121
89
112
87
78
80
99
111
94
104
114
136
162
175
107
127
129
102
101
73
91
69
94
76
80
151
89
79
118
110
123
140
66
78
78
87
136
99
76
101
94
166
185
80
78
154
120
94
106
95
94
119
93
79
112
163
104
80
80
79
121
107
80
87
154
138
101
120
80
80
103
56
87
80
119
72
80
78
78
69
134
131
69
80
91
143
128
91
143
69
147
76
175
109
78
78
109
112
76
78
80
148
127
133
97
52
88
78
100
94
96
99
76
127
128
80
147
106
80
110
161
80
112
85
56
187
91
87
94
93
108
82
88
76
102
197
80
150
109
112
72
69
80
110
122
88
131
93
83
80
69
93
78
150
106
82
80
71
119
95
78
68
154
107
110
99
80
163
145
68
80
136
163
111
160
99
136
95
69
52
124
122
121
107
101
163
137
151
93
106
80
126
104
84
92
119
87
187
136
119
69
109
99
76
99
117
74
88
74
128
94
117
104
87
128
78
146
127
89
115
120
67
77
69
113
104
126
162
113
120
128
69
100
76
80
131
95
99
123
128
128
54
106
72
100
80
104
87
128
143
96
120
101
156
78
109
69
109
69
76
74
128
128
155
137
133
80
78
148
201
69
87
164
101
54
78
104
133
119
78
120
96
99
68
110
76
103
87
69
138
115
87
121
87
78
112
118
131
102
99
102
128
78
80
93
131
157
78
78
109
119
169
69
201
87
102
146
69
80
72
154
122
80
102
94
107
89
110
139
181
112
69
100
95
88
155
201
136
52
69
107
181
120
131
69
147
131
114
121
83
115
127
119
80
109
175
98
175
127
69
85
120
118
99
165
107
76
81
117
94
54
67
69
119
128
136
112
135
156
92
175
80
94
69
113
80
131
78
125
117
197
155
112
134
76
107
91
118
96
80
91
120
54
164
66
112
98
94
99
137
78
129
58
111
91
121
80
106
87
107
107
140
72
78
76
80
102
80
92
69
109
95
145
60
94
87
136
96
120
91
156
78
76
121
73
84
103
121
94
76
128
101
109
88
76
104
74
74
112
119
69
137
113
136
117
110
119
69
140
80
88
73
56
80
91
107
95
120
97
112
69
107
100
112
115
80
76
91
174
73
142
119
87
129
110
94
127
107
114
72
136
109
134
69
74
96
101
133
154
104
130
87
101
87
152
76
148
117
118
85
87
152
78
181
116
148
136
87
172
117
110
74
154
107
122
132
98
175
76
86
78
182
83
94
140
134
106
117
164
88
78
67
96
98
87
119
136
80
130
106
108
124
115
87
129
146
140
80
107
93
115
80
157
104
95
56
98
119
134
87
140
76
175
76
100
117
69
136
120
80
154
120
165
102
88
137
89
89
127
117
91
80
147
175
112
119
110
86
102
160
146
140
107
107
154
99
69
130
119
94
120
80
106
107
185
66
131
156
80
76
122
129
136
76
80
76
80
109
127
106
143
136
165
80
76
159
127
101
120
106
109
150
136
87
126
96
69
87
136
76
136
99
120
106
80
87
94
119
111
120
89
69
76
94
104
119
91
134
110
119
100
103
119
123
95
78
145
104
154
67
154
134
89
107
91
112
107
175
175
119
109
76
114
153
134
156
128
134
99
110
56
156
69
146
109
144
142
88
128
103
156
87
101
111
80
99
131
69
87
116
147
87
101
128
107
99
149
131
148
106
106
130
131
99
107
126
94
80
129
113
54
156
69
110
96
80
156
151
88
120
80
110
201
119
101
74
109
131
125
122
147
164
76
148
87
119
114
56
80
87
88
88
115
124
110
136
87
147
107
132
76
113
136
122
119
107
137
99
69
146
107
59
99
89
141
64
102
89
101
77
71
106
99
128
131
154
119
143
103
69
140
78
115
117
136
144
80
80
78
142
87
87
70
88
69
99
102
93
79
99
136
120
80
103
99
175
113
155
104
175
112
145
86
78
98
80
74
136
102
85
109
76
89
153
122
91
80
78
96
123
119
80
93
118
120
112
121
117
76
112
132
127
78
143
93
91
69
72
109
98
103
109
89
112
113
94
69
121
83
154
121
110
109
104
76
109
91
120
87
76
80
151
152
119
119
93
80
99
94
124
108
118
109
69
154
163
88
80
104
82
154
110
120
56
59
76
121
93
78
69
107
111
118
93
175
99
80
88
123
154
139
125
80
118
129
145
142
117
69
123
93
88
148
134
74
137
89
56
120
197
150
144
87
52
88
90
120
115
78
43
109
95
120
80
107
63
146
69
128
155
119
78
78
159
69
99
88
69
78
96
175
115
76
109
80
90
76
106
87
154
146
75
87
134
72
98
104
119
118
107
80
96
88
76
87
113
69
137
120
134
93
109
131
134
78
76
128
156
56
123
107
69
152
92
94
146
87
109
114
54
76
99
129
120
54
129
91
96
137
128
80
93
95
69
149
111
104
69
119
52
107
136
72
119
131
104
103
78
88
93
87
121
66
120
151
104
120
126
149
109
99
100
54
80
109
122
119
102
113
80
80
80
78
80
87
78
152
78
76
80
140
148
125
152
121
87
139
87
110
151
85
134
164
151
80
131
107
128
145
120
79
122
156
104
80
94
80
151
99
154
130
113
89
80
78
113
128
112
83
115
78
76
101
136
175
126
99
111
78
100
145
80
88
119
78
133
119
153
88
175
174
107
175
107
88
148
80
119
109
80
80
194
91
87
117
164
102
69
76
104
120
134
114
72
111
150
76
128
157
80
154
80
101
72
144
107
119
87
116
69
99
121
76
117
80
111
78
100
82
78
113
156
119
80
78
80
69
124
134
88
138
76
129
119
122
88
78
122
85
151
78
89
163
80
100
69
154
85
128
107
56
80
150
106
126
134
81
76
134
156
127
83
140
80
78
121
88
143
78
87
106
175
94
74
80
69
110
119
79
122
115
123
115
175
87
104
154
125
107
134
80
80
99
134
175
85
104
169
79
72
136
100
111
69
72
87
128
107
80
117
96
76
136
119
104
172
80
137
66
121
120
80
114
120
134
80
127
127
113
117
124
110
104
107
132
95
120
119
69
104
107
163
162
101
121
151
127
113
102
119
63
120
136
85
69
129
76
98
88
144
87
80
175
78
151
112
87
117
69
89
76
87
140
102
197
69
121
203
99
87
130
100
52
131
103
130
156
78
91
94
145
69
120
147
69
78
99
52
56
106
130
74
131
88
107
80
80
88
151
197
128
76
115
95
76
69
85
94
128
78
69
101
98
134
67
89
69
135
109
88
119
79
102
76
137
143
134
147
94
107
85
127
103
155
130
120
107
97
80
69
76
52
115
133
83
78
100
120
175
54
99
91
110
113
94
110
89
104
89
128
101
78
131
85
136
76
69
177
107
163
80
69
57
119
69
107
109
96
88
117
134
89
80
107
106
91
131
87
148
94
120
137
155
88
80
69
175
129
138
117
80
121
134
95
85
87
78
110
164
115
140
134
97
80
121
88
76
197
112
110
154
197
69
107
52
106
80
101
148
102
80
133
121
115
87
80
85
80
154
106
66
80
87
92
107
69
107
146
72
101
78
72
76
93
69
148
134
134
175
72
87
93
87
90
93
110
107
99
153
130
146
69
87
69
72
87
94
110
80
181
89
154
56
120
96
94
154
83
113
72
80
110
76
69
111
100
151
63
98
109
112
156
107
120
140
107
106
72
154
110
113
76
136
78
94
83
117
80
119
80
110
126
142
80
134
126
136
91
128
124
110
122
94
154
110
99
80
76
96
78
151
140
88
106
94
162
99
80
76
111
117
114
99
110
98
85
133
113
109
69
104
165
151
128
87
101
87
82
197
78
134
104
80
54
121
197
138
89
154
154
113
76
80
101
115
104
115
144
121
102
156
114
104
128
136
68
94
102
130
102
175
113
76
79
119
89
80
78
112
109
87
78
125
155
117
160
88
188
82
175
78
107
99
76
107
126
107
115
175
76
87
119
99
78
78
140
136
120
160
145
143
121
80
85
106
93
78
88
106
72
89
54
114
157
107
100
72
96
107
152
69
80
93
97
128
106
143
87
122
156
154
69
94
80
151
82
96
144
87
105
100
116
115
108
157
80
72
109
107
136
166
81
104
156
115
113
174
87
85
121
90
85
117
155
129
183
78
80
76
80
102
155
87
75
99
89
69
78
100
174
109
129
69
130
154
109
147
78
119
151
72
87
83
119
175
127
119
69
131
80
163
130
80
80
80
139
80
175
85
98
136
52
113
89
131
156
112
104
94
76
126
98
140
121
89
104
92
87
102
110
107
122
96
76
123
79
80
78
92
52
80
145
118
106
126
87
80
87
69
80
93
128
128
69
152
96
134
109
78
136
87
88
134
120
94
87
89
147
160
123
117
75
164
95
80
98
112
131
154
126
109
175
81
87
109
64
72
126
96
119
80
123
109
69
146
80
72
164
183
80
113
80
117
136
148
95
59
110
99
112
78
109
146
160
89
110
92
107
87
134
175
93
115
105
136
99
120
87
106
76
69
80
109
106
132
103
69
143
78
103
91
126
83
88
110
72
85
96
80
52
109
98
145
134
197
164
88
120
69
59
80
109
80
96
156
107
120
69
107
93
69
87
132
117
89
80
183
134
121
128
110
120
72
107
136
78
91
96
110
80
122
104
78
95
107
69
135
134
99
124
72
128
131
156
183
85
143
63
80
143
99
88
164
52
175
118
119
126
99
78
110
134
89
128
125
69
112
90
112
102
116
119
120
201
120
119
80
87
57
87
78
119
128
113
122
69
140
80
109
131
78
76
94
80
90
128
125
110
108
133
154
56
107
102
103
64
78
78
115
111
106
144
89
78
88
80
189
71
122
93
197
128
155
84
87
106
112
104
129
112
137
110
110
114
120
111
146
66
144
99
93
72
108
76
110
69
151
114
81
140
142
121
78
109
123
117
157
124
111
120
113
155
104
88
75
76
123
128
113
78
121
93
121
146
130
98
143
66
145
141
105
109
89
106
78
103
127
133
131
120
163
117
146
175
151
172
99
74
116
117
87
106
111
80
109
109
76
80
175
67
79
99
101
118
85
143
107
119
105
72
81
74
128
69
43
85
119
100
135
72
128
87
117
100
119
105
116
99
111
160
82
85
78
112
72
121
110
80
131
128
144
146
131
129
69
127
89
178
175
121
97
76
80
112
96
88
106
91
140
101
117
69
95
123
69
107
93
101
201
119
69
106
115
151
78
88
160
107
79
78
106
92
127
112
80
117
99
80
106
124
124
175
78
106
107
118
80
76
121
107
120
103
88
93
80
78
155
80
134
76
69
130
136
114
69
69
98
109
93
121
96
132
76
80
69
88
80
110
119
69
79
87
135
87
69
175
96
80
87
91
156
52
107
106
154
128
107
102
70
69
87
169
43
80
119
154
104
94
101
69
78
72
157
117
67
101
80
107
117
102
120
80
93
97
175
76
112
78
80
160
145
88
119
147
90
136
112
156
146
80
127
125
69
155
88
185
80
87
163
109
144
109
87
76
88
141
94
113
157
197
69
128
143
133
156
111
90
136
89
137
140
123
69
127
76
102
94
154
80
121
106
72
112
80
107
151
119
120
175
78
175
69
138
156
87
93
107
85
89
54
103
115
93
143
88
104
97
76
93
110
73
197
80
69
99
80
80
114
111
175
110
93
69
134
121
127
163
103
154
89
72
151
77
90
115
197
83
107
116
89
72
104
87
116
94
99
80
80
151
128
87
112
119
107
80
96
101
94
132
89
102
110
112
172
115
199
69
119
107
118
197
116
54
130
80
80
87
127
144
156
149
133
89
156
85
87
101
106
88
128
108
76
113
87
80
54
80
129
108
107
112
130
123
69
75
140
88
54
66
67
117
128
92
120
125
94
76
80
163
120
78
74
94
112
110
123
76
54
101
151
126
110
140
94
76
197
156
111
109
89
154
87
75
80
69
104
120
132
87
197
80
117
152
56
118
100
80
109
76
76
147
99
110
104
143
72
83
107
66
127
80
146
76
80
121
115
120
175
87
197
78
154
82
79
69
112
96
120
127
72
69
124
79
140
72
114
60
54
71
69
89
131
80
120
131
117
80
102
117
75
78
99
121
109
134
163
94
106
69
134
148
93
133
135
102
72
144
117
128
138
127
99
137
69
78
118
134
85
139
89
134
76
172
88
110
78
87
101
119
88
155
80
64
110
130
146
122
107
101
94
69
76
109
146
119
80
93
85
73
117
129
132
133
58
131
80
117
119
93
107
124
80
112
107
88
122
120
132
76
103
91
119
103
120
88
78
85
128
136
115
80
123
128
110
87
113
109
63
110
144
87
99
132
156
78
138
115
136
88
91
94
116
78
121
131
102
114
145
138
136
101
78
107
109
156
109
163
80
145
110
146
119
99
136
129
115
111
94
80
88
120
131
117
72
130
128
69
187
117
102
76
74
104
124
112
174
144
131
99
147
154
124
137
129
101
64
122
77
69
69
143
76
69
87
129
87
113
136
87
103
104
87
154
104
85
96
87
175
120
102
100
80
120
112
122
69
88
110
86
52
109
110
76
79
94
74
72
119
90
151
115
69
126
146
128
80
121
69
132
72
129
118
93
151
145
120
120
77
132
88
69
126
118
106
134
85
80
80
81
175
121
109
136
101
156
122
69
94
89
119
78
76
99
72
197
107
151
117
87
89
133
119
100
124
87
93
112
183
89
54
128
156
94
128
80
74
150
113
99
80
99
96
95
120
121
91
107
89
109
74
74
119
118
104
75
88
124
80
112
78
114
69
104
91
78
197
137
153
89
69
118
151
87
140
111
110
125
106
111
85
106
74
74
129
175
119
119
126
143
106
123
174
76
109
89
117
143
69
69
104
104
107
110
69
85
143
129
114
136
69
164
175
136
87
131
96
164
129
163
87
107
89
88
72
69
74
74
187
52
80
78
99
88
125
90
89
128
123
80
131
103
66
126
126
80
107
80
66
112
120
131
115
122
121
106
114
151
80
87
93
104
78
131
136
154
104
172
69
129
76
69
114
155
129
87
165
175
76
82
93
142
80
146
69
87
87
138
80
143
134
133
96
80
84
69
87
175
82
128
118
125
106
79
78
89
197
89
111
121
78
154
76
109
137
115
163
94
96
72
87
89
109
162
156
104
69
124
109
128
87
69
76
93
87
121
72
91
140
104
69
87
80
77
80
132
134
111
93
91
67
135
80
128
80
104
69
97
112
69
119
136
101
134
175
119
104
80
119
109
87
163
67
120
80
74
122
69
69
87
123
151
118
69
156
80
76
80
69
106
69
93
102
189
136
69
87
175
91
99
76
101
102
78
174
175
76
146
175
117
78
116
102
114
87
140
88
128
139
52
78
172
120
98
109
137
117
87
145
101
119
175
69
144
121
88
134
110
197
64
120
89
163
101
156
155
101
98
91
89
146
76
143
109
89
69
76
78
52
88
96
74
88
109
120
80
99
201
80
152
134
114
117
71
115
144
76
94
89
109
88
109
142
132
197
106
104
110
132
69
103
72
127
151
90
175
111
101
78
141
72
80
91
154
120
120
85
105
75
87
104
88
88
87
54
91
74
54
115
119
163
80
78
80
131
157
93
107
102
78
112
78
75
119
104
143
127
87
117
94
54
136
87
102
195
69
69
154
119
104
98
78
80
56
128
76
158
111
80
69
88
124
154
80
199
99
109
137
175
93
119
43
109
109
67
73
54
138
54
118
80
83
99
123
160
89
156
121
130
87
151
43
78
90
87
52
151
104
107
119
100
80
81
143
154
88
52
133
144
88
154
91
157
85
69
155
119
175
119
155
99
81
87
139
91
76
80
80
131
138
124
69
143
174
66
128
93
107
122
104
88
85
87
98
76
91
82
154
109
100
130
114
178
83
107
80
102
115
140
99
155
88
175
69
80
87
52
136
104
72
72
136
99
119
110
106
69
137
117
119
78
88
80
69
114
132
134
119
76
76
54
76
80
87
78
151
87
108
91
85
154
123
80
107
78
128
107
146
66
66
89
106
107
175
69
126
164
121
94
99
121
119
102
79
78
76
156
89
109
113
69
128
87
154
69
94
75
90
154
69
149
56
131
107
175
174
100
121
75
88
163
85
85
119
107
154
157
139
104
89
148
107
104
80
121
120
109
115
87
145
119
89
119
96
77
80
136
94
163
140
156
147
88
109
103
107
154
88
136
126
104
72
141
119
78
98
109
93
91
119
80
94
91
93
175
113
121
111
108
101
122
87
121
121
78
131
137
117
43
111
87
80
88
127
137
66
100
93
75
121
80
107
120
128
96
103
87
112
76
80
69
75
96
100
95
140
119
76
121
96
83
154
163
128
85
75
95
87
80
85
85
69
146
107
76
94
122
128
101
91
87
175
131
87
74
137
122
136
76
93
69
128
134
99
80
175
151
175
104
154
119
145
154
95
201
96
175
89
120
121
117
93
117
72
94
95
87
104
115
80
163
94
104
104
164
106
175
93
80
126
110
96
76
76
54
66
107
131
112
88
94
129
80
69
147
78
99
93
133
120
69
175
78
78
110
104
142
107
120
117
120
104
128
103
107
80
92
109
110
136
88
71
64
197
165
111
141
175
99
120
109
100
80
69
102
99
96
79
156
137
97
129
89
125
161
155
156
102
76
80
106
147
101
119
105
118
76
78
117
146
80
80
54
157
78
120
119
155
197
76
76
76
78
52
54
112
100
134
75
104
126
80
137
150
94
109
146
92
138
155
75
129
74
110
80
156
94
89
115
160
94
109
94
185
102
87
126
78
80
172
69
80
107
154
96
156
87
99
91
54
88
116
131
114
99
87
87
74
146
99
95
101
87
121
93
56
145
131
69
80
130
72
124
71
136
75
88
92
80
99
78
146
78
76
80
136
69
91
119
78
69
89
113
80
142
94
136
99
136
57
80
121
82
121
140
89
76
106
119
52
99
124
90
107
72
146
123
126
156
76
136
156
155
164
89
157
102
76
80
129
89
164
89
115
106
87
80
119
140
80
154
140
88
78
109
113
112
72
122
119
52
87
102
151
93
80
83
76
101
69
79
96
107
145
104
106
94
90
67
76
69
107
102
133
125
88
89
78
104
120
89
80
139
87
76
76
109
43
134
78
94
69
87
89
69
127
92
128
152
101
150
80
120
74
117
80
101
79
143
127
88
69
73
87
128
109
160
71
80
100
124
156
109
106
136
115
75
109
69
93
157
91
119
128
106
90
96
69
94
80
154
103
87
104
90
156
87
102
126
54
121
85
80
68
134
83
90
80
113
110
102
107
88
104
109
150
172
91
137
136
113
72
69
74
80
80
128
107
83
80
130
80
69
129
147
78
124
95
118
102
89
109
94
80
140
111
118
109
94
85
104
115
127
76
180
99
87
72
80
93
68
54
107
122
80
80
169
123
69
69
115
80
113
69
125
94
134
88
69
127
121
136
109
88
76
156
82
86
94
109
96
114
69
175
91
79
76
69
78
87
95
104
140
122
106
151
144
106
128
119
66
153
131
88
106
114
87
80
130
69
199
185
69
56
74
91
59
148
88
56
107
155
134
120
80
112
119
107
115
110
79
80
109
89
121
69
137
109
131
69
92
69
71
121
163
175
156
98
98
79
73
107
80
152
117
78
69
88
88
114
104
123
93
95
96
165
120
115
127
107
142
76
96
102
122
69
122
136
118
96
103
131
120
76
136
107
78
149
149
109
93
138
111
152
163
113
88
155
66
197
78
134
96
87
164
121
80
166
156
69
78
136
141
76
80
119
78
109
107
69
131
67
153
154
112
69
83
119
137
119
91
133
119
89
69
121
69
66
164
139
122
72
96
121
107
144
69
121
136
124
89
80
96
87
127
119
116
124
121
120
87
103
60
101
135
88
120
99
197
110
89
156
112
114
80
86
197
115
115
69
88
99
87
78
80
91
175
80
106
128
91
106
146
138
99
127
102
107
78
163
87
76
120
79
135
119
102
87
69
76
89
114
80
66
127
156
78
113
69
144
118
74
99
96
90
89
107
109
113
108
75
103
131
69
112
90
91
78
80
136
89
80
87
113
79
122
106
56
87
122
85
80
141
80
106
91
109
106
121
117
126
129
99
69
78
128
59
87
116
93
112
52
89
77
76
80
140
118
123
114
136
121
100
140
80
99
137
80
99
52
95
134
88
64
157
88
74
137
107
93
78
89
116
175
80
58
111
175
119
80
134
92
99
120
80
157
76
100
128
112
67
54
119
80
140
113
121
94
108
136
150
152
89
112
78
76
121
91
85
199
123
80
60
175
120
148
129
107
88
102
88
123
109
80
109
80
154
113
109
118
78
119
122
156
128
93
120
87
111
83
93
119
80
73
132
76
96
67
69
121
185
109
90
145
107
164
94
91
52
100
96
104
69
154
119
134
107
110
136
110
76
136
154
130
80
116
78
140
88
120
118
131
131
163
83
69
121
152
160
89
111
199
127
151
112
99
143
133
141
80
109
72
175
151
87
199
80
136
89
72
88
118
69
151
109
78
155
78
80
154
104
151
113
121
87
128
104
159
69
110
110
123
91
103
76
120
91
102
78
72
69
114
127
69
120
127
118
127
164
106
80
80
66
69
138
175
143
183
120
82
78
160
89
80
109
101
107
75
78
195
96
197
78
119
106
89
89
127
115
100
69
96
136
127
125
76
156
120
81
175
175
104
88
154
80
146
99
106
112
116
94
89
119
128
175
76
144
119
131
80
112
145
80
80
144
69
91
121
88
144
136
80
72
121
98
110
107
88
119
96
78
80
106
99
69
80
73
112
99
109
80
106
111
154
175
81
136
80
175
69
90
69
78
87
119
109
69
166
134
76
175
69
126
93
88
95
89
98
145
121
154
74
69
101
121
94
80
76
81
110
108
80
96
109
136
87
80
76
54
80
94
80
78
80
78
104
69
72
146
163
88
104
77
71
111
143
69
151
140
74
80
87
121
80
69
174
142
87
69
154
146
76
134
76
140
156
76
134
115
96
52
131
144
98
100
101
69
88
59
106
99
76
123
99
91
128
78
128
102
88
104
96
134
110
114
70
88
111
117
78
117
80
113
94
117
109
90
153
119
99
121
87
80
78
154
78
162
64
119
117
119
131
156
112
87
69
140
155
107
120
76
98
80
115
93
120
89
89
87
151
91
124
99
119
114
155
148
156
111
141
73
129
165
72
69
122
123
80
69
89
151
87
76
87
136
134
54
94
119
80
175
107
128
104
149
107
119
129
87
95
156
99
94
69
122
120
83
129
69
124
101
111
80
106
128
69
128
88
113
110
68
69
100
69
78
160
160
119
128
106
146
154
165
78
193
69
108
68
130
160
88
104
69
175
107
89
80
143
106
119
83
110
143
120
91
78
69
88
69
99
175
99
100
109
97
69
120
86
69
140
85
69
96
87
76
74
80
80
101
78
87
80
69
87
106
137
72
72
99
117
120
133
163
106
113
131
76
120
88
99
111
163
76
78
114
54
123
143
197
78
104
85
107
154
88
126
96
154
147
101
103
130
175
146
115
175
93
154
69
131
91
130
67
115
126
80
101
102
93
80
110
83
69
90
76
121
80
69
110
87
134
71
83
98
92
88
89
72
111
102
123
80
87
141
155
133
88
78
52
78
69
109
80
88
127
128
94
154
109
69
106
80
117
80
101
87
143
114
72
111
112
119
175
78
131
80
104
154
78
76
137
119
100
148
120
89
118
160
76
99
69
141
107
148
59
144
79
93
54
121
81
80
128
88
132
140
87
80
156
102
102
128
112
121
67
87
156
71
115
87
175
110
80
99
107
69
108
123
94
129
86
136
75
94
94
120
107
69
155
43
151
147
131
119
154
76
80
90
69
80
154
109
78
129
128
89
100
68
110
109
82
78
128
80
94
73
99
74
140
121
74
87
151
99
78
163
79
74
72
116
147
119
134
80
69
82
109
175
125
131
106
134
146
87
74
132
128
69
86
85
106
181
119
80
175
88
120
96
99
89
80
117
142
142
136
87
99
106
99
108
101
76
128
154
163
127
102
94
80
89
129
115
80
127
130
106
112
102
88
87
154
148
119
119
134
111
187
69
109
90
119
69
97
93
119
113
164
87
93
69
78
80
101
88
143
111
109
109
80
136
78
80
175
72
101
69
109
197
52
63
133
107
117
111
87
76
80
119
109
85
80
56
117
119
78
89
99
99
90
120
107
145
69
82
121
91
87
147
117
83
144
94
127
175
201
89
94
109
130
137
172
117
175
78
113
78
73
88
120
99
183
80
69
120
80
136
78
87
126
69
52
66
76
78
69
88
119
74
78
116
87
80
126
88
110
136
87
74
80
69
107
88
106
80
112
52
80
78
80
131
118
83
120
56
94
89
119
149
80
69
124
101
112
128
72
120
122
59
69
80
79
175
89
76
72
154
120
80
98
134
120
80
94
175
87
80
114
119
69
123
119
152
121
69
80
120
117
80
128
109
69
131
80
156
101
119
78
155
101
111
87
149
134
118
106
110
166
111
125
122
119
107
101
197
184
87
174
120
106
114
74
99
115
92
72
110
128
124
143
121
121
110
119
130
117
123
87
156
87
137
89
80
87
80
97
175
93
175
120
72
126
100
93
115
110
76
93
80
140
107
91
117
113
197
94
120
69
147
97
138
107
107
148
111
80
140
80
111
67
87
110
76
156
87
52
110
78
118
90
93
109
134
117
111
101
72
106
80
141
117
110
113
201
135
89
60
69
73
109
112
80
122
140
87
113
104
71
69
80
156
101
78
155
80
138
102
131
82
99
92
104
93
110
140
140
175
110
155
106
69
80
80
156
78
80
78
128
123
69
52
125
69
120
87
133
136
101
114
71
80
88
98
102
80
103
80
107
80
107
104
96
107
80
129
79
88
97
73
127
87
100
119
140
126
88
89
76
80
88
69
164
143
87
87
100
175
133
80
106
76
78
125
129
136
87
104
94
131
94
162
154
80
142
115
121
88
118
123
156
109
88
80
134
155
80
88
100
80
154
119
80
54
104
80
89
78
109
109
80
119
106
104
120
129
109
124
80
162
94
119
94
109
72
160
110
104
80
80
95
159
175
110
93
95
110
80
119
163
69
87
124
74
69
112
134
113
124
98
136
117
116
54
99
87
169
154
112
154
56
69
89
102
88
78
109
113
122
69
112
94
80
80
96
69
103
121
56
104
144
119
121
120
85
89
154
119
91
122
94
69
87
69
89
54
151
136
110
56
78
120
136
104
152
117
82
87
118
98
144
111
174
128
69
128
127
56
117
80
111
142
101
107
155
134
166
89
80
96
146
88
93
80
87
158
109
80
106
128
153
120
72
109
104
89
94
126
120
76
69
107
56
174
111
155
113
85
78
59
99
131
122
175
141
162
111
74
76
133
110
124
119
156
137
175
96
99
58
114
83
104
110
119
104
136
119
80
76
87
117
145
94
109
111
101
140
76
106
87
80
140
134
107
106
143
102
117
98
89
69
140
80
117
175
93
69
110
99
120
132
134
80
96
80
74
100
80
107
151
121
69
43
126
80
112
126
123
88
131
136
133
80
183
137
94
119
110
175
87
52
93
78
88
78
87
119
115
104
132
125
82
143
103
82
112
58
87
80
142
119
156
123
154
76
143
119
69
119
67
106
69
97
106
81
80
124
104
104
127
145
120
67
88
109
69
90
106
81
130
115
76
69
125
101
134
72
56
74
88
54
101
69
110
88
69
128
99
131
100
76
87
76
183
87
106
107
119
126
175
155
121
134
149
107
103
88
199
107
131
121
123
138
115
110
96
69
54
113
119
76
80
93
135
120
89
74
118
115
119
76
104
80
149
151
140
143
110
94
110
76
100
69
80
110
117
87
96
154
87
87
96
94
160
94
151
107
80
64
104
69
69
121
80
116
94
145
112
76
119
78
150
128
131
96
120
99
103
121
80
106
118
175
87
78
72
111
134
80
126
80
128
127
69
107
131
69
121
94
72
131
127
72
111
111
78
128
93
107
197
144
106
119
119
69
104
197
66
80
91
114
74
100
106
113
104
94
87
140
119
89
115
142
80
76
78
99
80
133
69
104
89
80
145
172
87
104
80
123
110
137
99
144
120
78
72
81
80
76
129
124
136
94
109
126
80
94
151
78
119
76
66
123
119
156
65
87
131
103
78
94
120
106
101
120
72
134
88
80
91
69
137
81
71
76
69
93
121
75
133
103
93
102
89
115
99
59
174
89
134
197
132
88
74
107
69
154
133
136
154
43
155
117
79
131
134
154
74
69
106
76
155
66
185
130
69
132
103
80
72
95
120
80
85
102
78
69
78
91
136
109
99
112
78
93
113
80
80
99
120
133
107
80
125
80
78
94
76
87
115
112
85
87
87
119
117
87
103
69
109
89
155
88
76
197
120
122
78
128
121
104
104
69
124
175
106
76
89
150
119
94
89
110
82
119
93
120
136
107
91
117
87
132
85
131
134
133
143
72
89
148
72
82
80
144
80
131
87
102
76
113
88
129
124
78
80
113
87
113
71
115
112
119
110
119
76
80
88
78
106
119
80
154
94
101
69
163
134
54
136
119
128
154
80
128
152
56
91
99
151
88
100
107
80
87
91
127
111
78
88
160
80
120
119
75
112
113
151
127
109
104
80
74
109
76
80
110
78
88
124
112
78
89
175
88
93
155
76
151
148
80
109
78
98
175
127
94
110
107
69
123
154
128
88
106
74
120
165
142
80
69
112
113
112
175
80
107
56
99
93
109
154
80
124
137
123
79
69
96
64
74
137
95
115
78
80
69
128
119
121
147
109
131
79
133
109
90
166
91
112
114
110
119
137
109
92
72
197
128
155
112
98
80
69
100
57
54
156
80
197
91
109
106
119
119
130
120
93
86
95
117
130
106
96
146
80
88
99
119
109
146
88
109
154
124
96
109
154
69
143
111
87
175
131
112
80
136
144
110
146
91
125
185
109
81
109
93
97
69
95
69
82
175
78
172
140
114
80
112
134
114
76
122
154
96
113
106
95
96
78
102
120
119
78
99
119
88
93
88
83
78
85
99
99
54
90
72
100
120
131
78
109
129
93
140
110
99
142
154
197
101
112
136
106
80
101
69
69
69
72
94
106
85
156
151
96
123
87
80
113
69
69
118
80
197
74
120
164
66
156
197
87
154
79
69
75
137
52
113
69
175
113
175
96
54
154
119
105
128
106
129
80
80
153
131
69
149
69
89
113
175
123
109
97
103
149
115
89
80
119
133
67
132
80
123
156
112
104
88
78
120
80
78
134
110
69
89
143
132
88
154
117
127
163
114
80
79
89
102
118
101
78
128
80
136
136
69
94
99
74
56
140
78
143
99
104
104
110
106
69
80
116
52
104
143
154
175
127
136
69
140
78
78
175
109
129
123
85
108
175
107
69
76
192
78
151
140
94
76
102
80
151
87
80
109
80
80
76
110
131
107
137
134
92
76
80
175
166
69
126
104
78
69
96
74
117
112
154
140
118
88
104
107
114
110
87
109
78
163
106
98
110
136
115
145
91
120
80
69
121
106
132
113
129
76
80
175
110
137
136
113
69
136
96
106
119
78
112
106
91
88
107
106
145
80
90
123
94
94
76
128
69
64
100
100
80
139
69
101
76
175
175
69
163
113
69
117
76
153
89
69
115
151
52
156
88
80
54
58
80
69
138
76
80
88
98
99
131
94
91
115
142
128
76
197
113
164
80
95
127
100
108
56
120
125
119
69
120
128
80
109
117
79
107
106
93
99
104
102
128
118
94
155
96
131
78
151
100
67
148
119
87
106
93
66
112
89
69
56
104
115
67
142
144
154
128
98
125
128
69
121
82
66
99
69
119
113
104
106
80
107
83
132
80
133
111
101
67
110
155
134
128
89
78
107
92
128
164
101
80
151
135
71
87
113
175
163
91
172
128
110
78
78
105
175
94
118
119
91
119
175
104
110
126
136
67
69
78
100
87
181
78
80
112
155
80
80
104
128
104
155
117
164
69
102
199
80
134
76
123
69
78
140
83
119
88
146
92
109
106
128
117
88
120
155
93
110
76
110
80
140
144
145
119
146
87
88
120
78
69
72
112
69
101
119
94
72
128
87
119
69
112
109
179
93
93
80
99
101
154
52
147
82
78
131
107
102
78
140
80
119
80
119
103
110
144
72
68
118
155
69
134
80
94
147
69
140
87
94
142
69
107
69
134
96
163
114
100
119
80
101
80
98
151
119
81
128
110
78
86
120
69
107
104
80
107
175
110
132
74
94
110
129
80
125
117
121
66
78
80
113
117
80
99
118
88
134
128
78
117
110
109
104
106
54
155
144
123
89
104
76
80
80
87
123
107
89
96
119
76
121
131
80
91
87
110
197
90
93
197
127
88
76
159
120
119
102
127
109
69
69
109
120
119
132
76
152
69
59
69
75
118
74
69
209
99
107
103
126
52
107
87
89
69
146
134
80
125
89
90
154
122
120
80
112
128
76
115
122
154
104
112
151
109
110
175
93
108
78
87
119
79
102
114
160
88
175
142
80
78
71
128
101
96
93
136
69
134
80
69
96
117
164
144
80
72
118
104
87
78
128
118
76
78
78
130
136
80
101
78
80
93
114
113
134
109
78
99
119
125
80
156
154
120
107
104
119
175
122
98
88
136
52
125
80
119
69
109
118
90
134
131
109
96
87
80
137
85
156
80
87
80
82
100
110
127
76
78
99
102
86
151
69
78
175
75
113
80
69
119
122
107
118
169
74
121
131
104
118
120
120
110
121
175
88
136
90
154
118
52
99
153
99
69
117
76
80
156
115
136
54
131
72
94
99
100
119
118
76
107
145
76
137
76
89
78
154
96
175
109
76
122
101
94
94
96
146
71
75
101
119
156
107
87
88
91
131
80
89
139
109
87
131
119
109
69
138
54
69
175
134
120
80
56
124
80
136
78
156
127
89
134
69
106
152
105
122
164
89
87
109
89
131
91
94
104
95
128
134
98
164
88
69
94
126
103
112
109
120
126
80
131
199
146
80
143
85
86
101
104
102
80
121
87
78
78
114
69
89
96
79
128
148
93
76
156
88
131
78
76
134
154
102
143
148
99
154
151
80
143
80
80
121
106
110
93
151
74
126
138
76
106
80
107
78
133
82
141
115
132
119
69
134
80
119
114
69
69
107
88
69
56
107
154
154
69
100
105
94
91
136
96
69
73
87
80
109
111
80
109
107
104
136
102
95
80
197
126
69
76
106
136
166
89
94
145
119
119
94
80
99
156
109
69
72
114
175
76
154
78
57
113
101
107
106
110
156
156
128
76
93
117
76
109
88
107
99
107
128
118
95
87
107
165
94
69
113
101
87
88
80
154
58
88
69
82
76
174
80
119
69
102
110
134
146
136
78
107
136
154
133
95
175
69
76
78
136
114
140
96
56
80
78
121
133
80
104
113
115
106
175
75
80
145
69
87
78
132
87
104
123
185
76
121
91
111
120
134
117
106
119
175
109
90
174
152
88
111
96
120
109
87
76
134
82
85
102
155
87
74
80
69
155
151
127
132
80
140
117
128
78
123
99
109
100
87
69
128
69
93
102
175
69
110
185
132
116
119
99
87
127
80
156
75
80
87
128
56
117
128
123
80
118
136
117
74
78
78
80
91
80
88
80
66
112
95
80
81
80
127
122
74
80
80
93
167
154
76
140
69
136
91
102
91
89
175
96
85
107
100
146
128
175
113
87
69
99
78
149
93
76
120
164
146
78
147
89
106
123
120
136
136
95
140
76
123
69
134
113
111
121
131
81
174
124
72
64
136
162
120
69
150
80
113
136
80
164
155
80
110
107
109
127
68
128
144
151
112
107
117
104
109
164
117
76
145
114
80
120
130
107
78
124
80
89
142
120
52
87
106
111
80
121
132
113
80
128
83
100
156
152
72
69
156
76
69
107
175
89
120
163
120
80
80
120
97
175
88
113
136
80
103
110
80
120
117
80
127
93
72
119
162
43
69
79
91
87
152
71
94
101
69
147
194
74
120
94
128
109
140
80
140
117
88
140
128
88
128
80
107
96
52
121
102
93
151
80
76
147
78
109
69
76
155
140
99
164
69
87
134
143
156
136
96
87
115
83
124
72
145
111
104
59
85
89
79
114
88
123
69
80
69
107
59
107
78
87
78
132
87
78
134
109
88
134
120
112
76
134
87
52
154
87
119
89
87
80
102
128
95
80
109
127
80
69
80
119
107
119
109
111
119
112
69
106
128
78
78
102
88
94
69
80
59
175
127
71
102
69
137
120
80
80
103
88
76
99
104
89
156
96
69
113
72
69
69
69
145
69
125
127
114
74
101
103
201
69
88
125
112
119
69
121
110
154
80
69
107
118
163
80
149
76
132
87
107
140
95
196
139
54
69
119
129
175
89
156
76
74
155
80
89
107
80
128
92
75
107
87
94
102
127
69
148
143
146
128
94
110
88
161
134
152
106
96
76
94
99
101
85
78
103
172
80
91
101
128
151
80
69
107
122
80
128
154
156
117
145
69
104
85
69
88
115
99
78
140
87
87
112
85
85
113
69
67
52
69
117
131
69
109
121
133
117
119
98
99
128
120
64
101
69
109
120
216
89
134
84
80
134
78
110
69
80
96
134
104
43
160
151
110
54
80
120
89
137
87
79
80
109
133
109
80
100
111
178
113
102
76
151
117
140
91
128
79
80
119
128
106
101
119
87
137
107
83
162
130
71
99
54
154
69
89
110
111
146
156
118
134
136
92
126
128
107
119
126
73
72
101
94
80
69
89
102
107
120
175
58
154
112
130
140
120
119
134
110
91
128
128
87
76
107
164
113
139
137
119
148
100
69
114
156
106
96
151
106
128
74
89
105
124
120
146
87
72
145
129
102
134
110
87
157
130
122
134
116
99
140
102
76
82
108
89
80
102
85
80
93
85
102
89
102
131
93
120
80
75
118
152
134
110
136
99
99
93
110
116
145
69
69
101
87
78
76
69
99
136
119
115
87
175
156
88
145
113
59
99
129
121
80
175
134
69
137
143
129
93
160
115
57
99
87
175
120
110
87
117
119
127
91
131
107
93
89
121
132
115
106
114
79
88
141
87
109
99
113
69
106
88
78
153
109
87
87
99
131
96
74
76
80
88
88
80
78
107
119
129
104
128
131
87
119
117
99
98
151
89
87
107
80
109
162
69
128
113
131
117
117
78
113
121
104
68
120
149
134
80
175
155
101
80
131
99
89
113
89
137
72
89
104
154
87
123
101
174
87
78
85
119
95
148
101
78
104
175
129
72
57
128
99
175
74
119
140
155
76
88
133
154
80
76
102
93
114
69
99
87
121
89
67
80
169
87
94
130
102
131
119
76
80
155
136
96
97
91
69
146
100
80
78
106
101
93
134
69
74
74
106
116
69
117
80
76
74
156
129
119
66
117
89
151
124
111
128
156
134
113
99
92
111
107
127
107
100
93
144
112
175
134
110
121
80
82
98
69
77
99
134
94
111
136
69
69
76
142
96
86
76
88
131
87
134
69
80
107
94
121
78
134
104
107
114
87
101
102
96
120
80
76
125
121
93
94
131
96
134
74
88
69
154
106
106
69
154
99
89
104
145
74
99
56
126
131
106
80
117
136
114
197
76
104
88
138
80
74
154
80
106
98
95
87
107
98
107
78
111
147
154
117
112
169
129
87
113
127
99
108
106
119
107
156
72
96
128
93
96
80
80
120
80
155
69
139
120
148
69
110
103
80
129
127
69
125
78
120
121
197
95
91
140
96
94
98
94
113
104
88
87
146
132
89
93
100
93
69
76
117
151
78
131
130
89
154
87
151
130
137
52
78
74
87
117
113
109
135
92
95
76
104
175
98
80
67
76
69
107
100
140
136
76
125
66
80
121
156
98
119
120
196
69
75
80
94
110
89
134
85
107
175
59
110
128
67
117
113
112
80
112
175
169
69
80
69
70
101
103
94
145
99
80
105
99
87
89
69
102
69
103
129
132
99
120
123
104
123
80
110
91
109
99
110
137
87
185
118
150
102
102
105
87
113
69
131
95
94
156
130
89
169
144
139
98
101
163
109
88
75
110
88
80
72
138
115
69
104
111
138
125
80
87
52
119
133
69
113
87
120
110
131
87
169
52
111
72
88
91
136
128
76
131
110
80
197
78
83
78
119
112
104
109
114
155
78
78
80
110
137
96
107
136
119
91
80
87
113
125
93
87
107
69
151
78
140
109
175
119
121
89
96
201
119
157
197
134
87
89
131
113
124
102
76
154
128
104
64
120
91
109
109
80
80
109
78
100
131
78
113
134
87
88
110
124
113
56
117
127
74
88
80
162
100
131
134
128
137
110
99
72
78
113
54
147
107
76
80
72
131
160
85
80
117
74
89
66
106
114
131
175
96
112
80
94
109
80
143
153
89
156
69
109
140
127
79
124
80
146
69
52
146
69
85
112
99
112
123
104
140
56
80
89
96
93
87
136
69
80
82
119
109
99
151
96
139
90
80
89
91
146
91
87
99
83
119
157
163
137
92
155
107
120
118
165
146
165
76
104
128
111
128
133
102
76
88
136
107
80
108
90
105
74
88
94
137
129
134
52
124
140
141
87
76
145
121
102
80
133
134
87
80
152
80
107
103
80
114
96
153
78
89
99
66
154
107
76
117
99
88
113
74
115
131
181
83
110
154
156
115
80
122
80
93
123
151
113
88
124
130
155
98
78
107
89
78
72
82
80
88
100
175
106
89
88
99
119
110
99
85
94
103
95
119
134
80
117
113
94
122
120
149
111
101
121
156
121
123
80
143
163
152
91
74
69
131
118
69
132
119
80
95
99
128
114
120
120
154
147
101
78
60
121
120
80
175
89
120
119
99
137
163
80
121
80
87
127
72
104
147
80
113
94
128
80
101
76
69
75
89
56
101
54
109
80
76
104
87
160
113
69
100
80
183
132
78
122
104
52
94
155
143
99
154
76
175
88
136
83
119
120
88
169
80
151
99
128
133
131
140
87
117
109
43
144
72
131
117
88
131
106
78
128
155
82
131
86
80
112
96
94
94
78
119
156
74
69
91
133
88
107
103
88
215
78
80
146
143
66
126
134
110
69
72
80
107
151
80
113
69
143
112
69
101
89
69
107
105
69
118
76
146
151
69
87
78
69
111
98
123
137
112
121
131
117
76
101
89
107
79
114
121
110
80
91
112
185
104
155
99
131
71
99
122
87
103
93
102
148
87
76
118
87
113
84
100
72
56
124
69
76
66
87
117
87
88
80
59
107
76
119
90
80
88
83
91
175
69
103
153
110
78
145
115
140
114
110
91
119
80
104
118
164
93
75
69
89
113
121
67
128
121
80
115
69
95
120
64
140
69
106
80
68
96
107
91
131
59
110
136
116
78
107
128
120
145
87
78
91
120
115
98
178
120
87
104
134
100
136
92
122
104
132
112
78
89
117
107
116
119
106
87
100
151
134
88
110
80
94
87
126
80
93
56
87
89
183
120
99
80
69
72
121
80
131
183
104
141
174
117
78
89
134
80
80
131
131
130
174
93
129
101
54
116
148
119
175
151
149
94
119
116
166
127
131
118
89
118
148
69
99
114
80
113
137
122
87
80
81
80
80
114
69
76
175
128
83
107
120
127
99
130
58
121
175
145
215
69
103
120
69
131
78
74
76
69
76
98
80
69
175
96
102
121
134
143
91
107
99
114
87
94
118
117
91
118
128
119
175
119
128
100
130
131
74
103
69
142
78
101
69
88
80
119
99
120
128
106
80
80
69
87
107
119
94
124
80
174
104
154
195
122
87
80
113
106
119
78
94
181
80
165
78
117
112
78
67
99
80
78
185
154
69
122
96
139
88
134
66
115
76
143
136
113
69
107
85
128
109
119
110
87
121
104
90
52
78
128
78
80
89
99
104
87
101
102
118
99
89
56
110
127
156
75
96
109
88
119
153
120
124
115
155
80
78
96
124
144
67
77
66
131
137
152
69
69
94
120
69
72
67
128
103
119
110
134
107
89
110
78
113
69
80
72
114
112
136
91
197
80
69
113
152
69
151
78
175
101
133
87
95
80
80
100
80
122
145
119
80
100
134
102
100
109
76
80
121
131
121
138
69
99
103
106
83
104
92
101
100
117
148
112
104
160
100
99
88
119
69
161
69
117
73
131
66
107
111
151
175
99
88
175
88
80
69
110
154
104
104
133
156
120
119
80
100
104
119
76
107
93
87
74
121
144
98
174
87
69
119
107
156
79
154
112
76
80
78
130
80
104
87
99
150
115
87
109
113
93
111
120
107
91
145
154
143
119
90
99
104
80
121
96
74
114
128
102
125
146
107
120
91
87
145
91
101
80
107
80
76
146
72
131
129
78
56
112
56
154
100
88
80
80
120
110
123
80
99
110
101
113
152
149
133
74
106
95
139
95
76
117
133
175
78
175
156
90
87
72
113
131
91
96
183
94
88
128
80
120
85
80
78
96
101
154
69
166
154
112
69
76
107
78
119
96
124
87
146
120
76
81
154
89
137
110
130
125
85
87
80
82
157
76
145
69
88
80
91
112
107
69
80
93
119
107
154
103
78
201
162
104
87
120
80
96
94
69
136
52
99
134
80
129
102
113
79
91
95
96
136
143
87
128
81
144
94
112
80
80
133
90
88
115
76
69
80
128
69
85
76
80
89
116
114
134
119
113
119
115
104
109
76
76
166
104
69
97
131
80
109
78
121
112
88
111
128
136
80
76
88
92
88
78
126
109
107
88
155
131
108
126
76
78
189
91
136
80
109
119
146
119
107
94
101
113
143
122
89
87
117
172
164
80
143
78
74
94
80
120
89
67
71
87
131
108
69
85
136
80
104
69
128
87
109
80
125
156
102
121
162
156
104
148
137
122
140
125
80
106
91
128
155
118
87
115
84
102
143
197
145
97
120
118
138
69
142
88
107
109
113
99
80
110
69
110
148
119
69
151
121
107
99
152
145
119
161
119
80
56
96
107
69
67
112
175
163
135
174
109
94
104
69
106
56
111
80
87
166
113
69
87
87
151
120
69
104
80
96
78
80
163
43
89
104
69
87
78
88
143
134
155
154
130
131
136
43
109
129
90
81
134
89
88
88
101
117
107
128
85
114
123
157
175
80
69
151
74
78
83
112
99
87
89
114
99
69
113
143
131
99
115
135
80
78
121
119
69
155
88
175
128
69
124
69
88
69
136
114
117
137
141
76
151
120
69
115
156
113
72
67
67
120
80
76
197
150
111
69
91
107
117
80
74
94
118
74
144
85
112
76
99
106
106
69
174
78
98
131
85
100
78
96
95
120
174
120
80
80
120
66
69
80
119
104
154
126
110
76
134
141
157
78
147
69
109
119
54
144
175
109
91
88
72
107
76
110
87
80
136
74
76
163
156
98
114
109
99
119
67
106
145
74
82
80
113
95
87
87
156
139
66
80
91
107
163
155
80
76
88
114
128
93
127
99
160
80
166
80
120
128
136
87
175
118
76
104
117
122
54
69
94
117
122
89
74
64
99
103
87
78
118
145
69
76
118
104
146
133
88
76
110
52
67
112
119
101
96
87
69
112
154
119
107
132
128
87
141
96
52
87
140
107
119
88
136
76
80
56
64
109
130
101
91
128
109
111
197
154
95
119
87
115
80
164
80
90
109
140
87
140
75
175
136
74
112
119
69
80
80
138
104
82
121
69
54
151
94
89
80
80
69
88
96
94
128
107
80
69
134
162
80
120
120
145
110
87
118
130
109
96
132
101
94
185
100
89
88
122
78
90
99
80
104
105
133
154
111
119
121
87
134
80
145
151
88
130
98
87
102
83
128
94
76
80
89
80
87
69
69
92
139
134
108
117
119
175
99
80
99
80
99
76
142
95
133
80
93
116
69
113
119
72
107
80
87
127
87
59
156
87
89
87
89
69
109
78
119
109
124
128
121
58
119
140
175
111
66
54
120
78
120
87
107
85
107
100
121
131
78
80
115
120
87
136
131
75
99
78
109
134
76
133
76
164
148
136
76
56
199
87
151
137
175
147
140
137
156
156
110
156
76
109
87
59
100
87
125
112
119
114
90
137
76
107
69
120
69
80
89
98
96
136
76
80
106
160
91
104
138
113
117
99
156
140
74
76
78
113
133
115
143
151
185
117
107
133
69
130
112
96
78
99
74
88
137
89
123
87
119
113
84
56
94
80
151
149
72
85
96
80
131
88
100
87
106
80
119
124
69
104
103
78
110
97
124
69
78
120
80
87
80
110
118
80
117
120
128
148
78
93
125
114
127
78
145
78
134
154
154
79
151
103
78
151
99
80
87
135
80
78
54
92
109
174
121
120
111
72
80
128
156
152
117
128
93
141
106
78
101
126
136
114
113
127
145
87
117
137
95
98
197
69
142
97
76
96
121
58
120
122
96
144
160
156
80
197
120
69
94
156
76
59
128
121
112
69
69
89
87
129
91
112
88
120
106
118
87
88
120
123
175
107
145
64
121
76
91
87
87
124
160
178
100
116
109
117
126
80
119
94
120
110
154
137
123
75
72
78
136
104
119
112
140
134
175
76
117
76
79
127
154
104
121
144
69
140
131
136
145
90
87
138
111
111
138
119
80
107
155
110
119
97
132
121
80
74
119
104
122
136
85
156
119
126
130
90
119
72
88
140
136
103
80
85
94
83
104
154
87
136
128
114
52
80
124
90
99
120
69
89
74
143
125
119
80
80
142
95
119
155
52
104
91
69
99
142
119
116
78
56
54
183
69
163
121
107
158
97
113
110
145
119
140
74
69
87
78
113
78
104
101
148
128
80
101
87
131
78
69
131
110
88
72
81
112
118
87
95
201
128
143
99
93
54
101
80
106
74
147
80
97
131
117
163
80
137
54
52
69
80
78
125
87
175
134
175
109
197
78
151
107
89
128
69
87
67
106
107
88
104
140
89
114
112
78
118
93
175
199
110
106
118
124
98
150
78
72
78
111
94
164
120
107
104
80
87
134
197
132
80
94
154
101
85
89
112
78
87
104
94
138
92
145
72
151
76
110
151
88
69
92
128
96
76
87
109
104
76
123
54
175
91
80
143
136
185
99
101
80
109
156
72
80
112
99
101
95
99
136
109
136
134
82
76
98
114
95
69
107
68
87
175
87
115
121
97
87
80
54
107
107
151
76
110
106
138
78
69
120
113
87
143
101
98
107
78
178
104
91
176
119
102
69
94
102
106
110
149
76
69
93
113
80
128
69
131
128
154
135
123
122
109
175
91
52
80
78
128
69
136
69
96
144
119
91
165
78
146
110
166
87
89
102
128
163
69
142
134
96
69
199
107
145
156
119
100
69
120
146
119
72
90
104
97
107
111
120
102
155
54
147
72
87
78
134
104
88
119
95
78
175
110
130
108
101
111
148
175
69
80
175
117
86
69
122
199
80
69
123
122
153
139
76
94
69
88
74
80
136
80
99
80
117
79
119
67
87
175
69
154
143
151
69
114
131
88
120
94
109
95
72
96
74
93
120
83
80
107
121
80
96
156
163
56
89
104
107
122
112
69
87
113
104
107
154
154
120
122
110
69
131
102
80
113
80
80
87
69
80
69
100
156
126
87
147
112
109
154
109
94
57
90
127
88
157
80
122
76
91
88
118
89
110
87
96
63
112
74
121
76
99
145
76
114
69
93
128
69
154
85
143
112
117
88
118
137
93
80
80
128
163
99
111
75
93
110
69
78
72
106
80
146
131
80
119
114
113
72
175
73
83
106
87
52
134
69
109
109
74
94
78
89
89
87
131
89
106
93
110
129
74
123
98
128
151
89
116
67
106
112
118
132
130
137
107
134
99
129
107
80
115
87
96
54
123
128
175
101
124
72
80
91
94
59
131
78
118
72
80
95
79
123
145
167
148
109
96
110
201
139
88
99
137
94
76
126
107
120
107
134
93
76
87
95
119
54
88
140
104
134
104
114
119
152
112
128
94
69
73
132
137
162
87
96
104
80
143
136
126
87
166
95
106
99
131
117
89
144
94
134
109
118
104
154
89
100
128
172
120
175
143
95
63
111
113
94
99
115
108
109
88
96
76
103
104
133
78
96
162
94
113
142
142
112
143
118
119
99
153
106
128
85
120
107
78
136
170
80
101
93
130
174
107
115
87
80
88
118
69
69
69
115
138
66
87
98
155
120
120
89
80
110
140
66
88
119
87
74
99
80
75
86
117
154
154
120
113
89
54
88
109
89
83
119
141
163
69
69
134
110
80
87
69
89
112
175
76
102
56
91
113
139
117
128
93
96
100
128
131
69
75
122
78
76
80
111
105
89
89
106
163
134
96
169
136
111
88
80
82
96
133
112
112
89
128
124
76
75
114
117
69
87
128
80
145
78
115
166
72
87
107
82
156
80
183
157
117
108
111
94
136
115
160
87
80
123
94
124
118
137
175
78
154
205
151
134
80
107
108
87
119
69
80
80
120
91
80
91
78
104
88
197
101
133
124
128
89
133
80
69
117
87
95
131
74
110
101
87
128
100
146
110
78
89
151
90
154
54
81
134
91
154
80
94
103
72
119
106
74
115
143
114
122
74
80
123
113
120
118
76
142
89
118
127
69
91
99
69
118
114
78
87
80
110
96
88
115
136
106
119
79
78
87
94
54
175
93
128
145
76
105
118
128
128
80
122
74
78
76
99
100
126
74
97
88
79
69
136
101
80
69
78
76
107
80
106
156
87
103
144
90
74
108
87
113
164
104
78
112
94
118
94
117
98
97
96
142
78
107
110
80
87
122
87
66
107
119
87
144
52
100
128
151
115
119
76
106
96
118
80
92
136
94
126
91
120
119
175
148
125
80
93
80
121
78
101
78
122
164
69
80
119
80
78
87
154
69
134
88
131
43
80
119
87
69
67
144
93
79
87
136
104
80
98
76
78
114
136
113
126
109
157
66
76
80
156
114
94
113
139
115
80
87
97
87
69
78
107
120
78
94
52
145
89
84
76
109
76
80
80
91
112
109
165
76
109
145
69
119
201
119
93
113
120
104
68
120
126
133
91
113
69
76
69
99
102
76
149
56
126
88
78
69
121
144
113
123
145
91
91
119
136
80
94
76
128
88
99
82
175
124
66
136
106
128
136
72
147
156
69
80
99
80
87
140
78
89
117
137
134
106
156
141
96
96
88
74
87
134
151
119
110
147
131
115
83
78
121
106
112
146
100
74
71
93
157
123
99
80
112
80
78
102
80
69
80
107
69
56
109
155
69
109
106
96
156
110
72
69
76
112
69
142
131
69
119
106
140
76
72
164
114
69
136
131
83
69
183
114
110
80
80
110
115
122
58
76
76
146
113
72
87
69
99
99
96
80
111
107
127
197
107
110
134
103
107
72
69
72
134
119
99
56
129
129
69
80
89
128
71
175
98
107
165
88
102
103
80
177
87
146
164
96
87
110
99
136
104
76
87
89
87
123
52
96
109
89
88
175
85
109
104
110
78
99
80
131
108
103
117
136
69
80
119
72
89
80
74
106
103
134
128
69
64
109
80
166
101
74
175
109
89
109
100
78
128
100
99
109
127
76
89
99
118
69
85
88
69
123
91
140
117
69
99
129
145
137
127
101
127
88
154
127
94
149
154
103
132
107
120
109
87
79
94
115
90
134
149
89
69
144
111
121
82
88
87
145
69
120
52
69
117
111
113
80
80
83
80
83
93
117
137
94
132
79
129
134
99
120
142
155
80
154
136
181
109
163
154
136
106
86
78
131
89
80
94
104
80
87
93
87
76
112
89
119
143
76
79
151
136
90
88
69
94
119
78
110
197
69
104
74
93
69
76
70
64
76
121
69
154
117
138
104
99
133
110
123
104
114
80
78
175
89
72
150
137
128
78
120
80
88
60
151
114
95
87
75
106
72
146
112
115
175
58
107
76
149
93
121
155
90
89
78
109
113
154
106
87
121
80
120
92
80
115
138
175
146
119
101
94
94
120
89
69
140
58
111
89
154
72
155
113
72
106
129
100
109
116
83
104
104
158
105
76
109
74
140
156
120
106
175
128
199
109
88
80
80
72
134
165
76
117
78
118
136
131
72
88
183
80
80
109
119
110
197
174
118
127
104
156
121
118
123
181
131
120
82
87
151
154
67
88
80
127
134
69
80
148
96
146
109
121
69
115
134
138
87
126
99
93
110
112
69
127
87
115
117
150
115
82
127
120
80
127
64
73
99
76
121
88
80
154
175
107
110
102
121
94
103
110
129
110
78
108
126
133
112
112
93
88
114
174
149
140
97
137
95
86
76
145
72
140
80
122
107
88
143
96
89
85
128
183
119
118
148
69
69
131
137
78
114
80
74
80
104
99
87
88
121
56
80
85
119
87
82
128
130
87
69
197
129
87
71
143
144
96
99
69
136
133
69
76
101
78
107
112
80
89
123
89
99
87
104
152
104
93
149
98
98
115
109
118
104
107
113
69
113
78
112
94
110
88
115
154
78
100
144
155
88
69
87
69
130
121
141
88
88
127
163
143
134
74
78
129
86
72
76
83
52
78
72
146
119
94
130
121
102
69
98
175
54
120
123
76
74
101
119
87
111
120
72
99
146
112
78
89
151
124
132
80
80
120
135
154
89
145
96
69
69
80
54
88
69
76
119
78
145
80
90
119
128
69
117
76
60
76
104
109
156
76
134
113
88
69
109
136
90
88
56
103
177
137
119
93
80
59
80
82
87
144
128
69
106
69
56
125
80
124
115
76
107
126
91
70
157
80
112
174
76
76
76
109
118
120
136
171
119
106
110
151
76
102
140
80
154
69
104
112
80
87
131
87
127
69
111
130
80
117
104
76
110
136
107
99
107
134
91
143
80
119
69
69
63
113
80
123
87
117
80
144
175
110
124
93
197
80
66
121
75
56
112
95
99
101
106
89
108
175
69
151
80
120
99
115
80
72
93
92
131
98
126
89
154
107
123
109
52
136
79
76
93
91
77
109
83
130
76
150
78
99
76
197
134
154
128
87
109
109
95
135
114
80
175
78
109
82
80
82
120
104
119
120
72
80
99
113
132
92
139
110
197
76
132
136
121
96
107
90
119
78
76
106
76
69
68
134
116
91
77
73
125
114
112
108
76
118
82
76
110
124
80
94
69
93
107
69
139
108
110
91
144
80
134
94
136
109
98
73
123
153
136
87
69
69
120
72
110
96
78
134
100
121
101
135
136
109
106
121
113
134
114
107
107
154
107
76
111
78
111
80
155
149
74
91
109
78
98
90
87
127
100
109
56
80
142
80
110
90
94
109
105
69
99
115
128
54
153
106
91
140
109
136
110
136
69
141
130
110
123
175
148
131
107
110
78
76
136
110
108
92
144
123
95
146
100
119
156
94
74
113
117
136
116
134
87
91
88
119
89
54
104
99
94
58
146
43
80
104
128
155
87
142
149
56
88
100
80
104
155
90
91
119
94
99
95
86
109
89
114
103
80
87
56
72
143
119
131
80
80
104
120
99
91
129
113
87
69
111
116
112
80
88
99
69
109
110
82
121
112
140
121
94
128
100
76
136
88
104
80
156
132
69
80
90
148
128
113
140
80
76
76
94
156
119
74
88
87
175
88
147
121
100
83
129
71
67
89
142
122
145
99
183
88
151
115
78
106
69
81
104
89
92
178
102
94
132
164
97
147
154
68
76
121
107
119
69
110
128
68
134
172
68
112
78
131
117
76
91
66
101
100
122
112
80
80
80
78
128
140
119
93
156
78
85
128
115
54
130
91
133
166
117
91
64
118
119
120
80
72
117
116
113
76
132
80
118
123
94
121
101
117
121
147
120
69
69
175
112
127
87
96
118
72
69
80
69
109
107
113
69
99
107
117
105
197
76
106
91
103
94
72
69
78
137
119
87
99
151
78
99
80
80
80
134
119
156
199
123
156
91
109
112
131
90
118
94
142
76
52
69
102
78
150
90
87
150
113
78
54
94
99
113
119
147
114
69
101
94
111
107
89
78
115
153
56
154
78
119
100
113
80
89
78
94
93
142
80
112
76
133
107
156
148
78
96
142
104
138
110
172
143
69
75
121
103
80
114
80
88
69
80
109
99
123
110
146
80
80
74
121
100
69
91
124
107
126
132
94
107
80
103
80
147
80
96
69
80
135
120
80
101
76
76
134
119
96
95
92
69
80
141
119
115
80
101
115
87
94
115
72
175
76
123
59
126
87
112
113
89
89
88
107
80
174
121
129
80
80
99
106
197
72
85
80
155
107
101
87
94
119
96
76
91
89
110
94
93
128
96
89
154
78
137
100
98
104
145
122
107
69
117
87
101
91
175
140
76
69
132
96
155
99
107
144
88
116
69
94
69
127
120
107
88
137
87
174
69
78
124
85
142
93
99
56
64
90
80
93
88
98
121
101
107
128
131
117
109
104
163
128
106
78
140
107
69
128
87
80
120
98
110
80
88
76
120
80
161
77
106
151
138
101
59
125
76
114
125
107
103
110
63
121
110
64
84
83
121
107
100
94
151
90
78
143
69
80
69
113
107
43
54
129
94
148
131
76
82
88
142
106
69
120
101
71
144
88
94
110
175
175
80
152
82
87
99
138
117
106
107
209
109
76
175
99
91
136
69
99
85
118
92
89
89
69
101
82
100
87
163
155
79
80
109
145
80
80
132
125
93
87
125
107
102
82
107
76
142
54
80
131
133
69
87
78
112
140
71
87
95
146
119
144
109
80
106
88
91
87
104
117
119
125
119
87
110
103
124
134
120
69
85
146
175
69
107
75
156
87
101
109
114
89
144
120
110
165
141
113
136
89
104
78
87
121
83
72
83
110
109
128
80
89
106
103
143
122
126
115
116
137
93
155
138
78
93
111
110
128
122
107
80
132
123
89
87
64
99
123
80
99
107
111
106
154
92
74
155
134
109
93
163
139
88
80
164
153
185
131
120
109
76
157
82
92
112
89
89
93
76
82
80
119
59
103
110
132
131
165
121
69
153
91
145
80
119
74
69
120
154
88
69
113
123
99
139
88
156
123
105
80
155
69
52
140
172
87
132
107
93
78
119
52
69
69
69
87
128
93
155
106
94
147
128
80
98
138
89
136
54
80
109
86
66
100
80
111
67
109
78
101
115
131
76
102
119
137
89
99
122
87
175
69
115
128
119
155
87
154
120
143
119
88
77
69
106
76
76
139
72
136
96
109
134
125
120
87
88
120
142
148
119
101
124
163
120
155
87
69
96
110
101
119
69
117
139
150
110
134
76
175
110
94
169
90
93
99
136
69
136
140
113
69
126
128
90
131
69
93
69
95
80
80
106
144
100
88
110
54
107
89
54
72
73
112
69
136
128
56
128
146
75
101
128
122
100
109
97
80
94
78
74
148
128
106
104
75
107
122
106
67
104
120
78
163
69
91
69
111
107
106
115
131
163
109
69
80
66
149
99
76
101
113
197
107
128
87
154
85
94
89
76
114
134
91
80
91
102
146
175
107
111
104
120
80
99
117
80
72
69
69
136
142
133
78
154
175
69
121
87
119
56
92
109
78
175
89
133
107
100
154
75
130
67
164
80
78
80
69
69
88
54
87
94
80
175
120
80
114
110
183
111
89
69
80
71
87
89
146
109
87
69
87
52
131
89
80
56
69
128
110
110
93
73
125
134
80
76
106
102
80
130
142
69
121
69
160
96
91
132
69
120
89
155
118
197
114
78
94
164
111
94
127
112
80
76
96
129
82
120
113
148
54
80
138
68
101
136
69
99
107
89
87
94
156
106
118
63
104
156
87
106
78
160
112
106
88
69
120
80
80
154
151
78
154
99
146
69
85
121
131
76
107
119
117
151
124
104
118
104
99
117
87
78
110
106
154
175
146
121
87
117
112
133
120
76
120
107
117
136
71
128
155
209
99
134
92
138
97
80
104
94
69
85
104
78
106
134
69
111
143
89
121
89
131
89
93
64
107
131
154
134
118
87
85
128
92
96
92
132
94
87
105
69
128
112
175
80
119
80
72
105
102
114
130
72
80
143
132
175
88
99
92
80
69
110
134
114
160
110
80
110
78
115
120
143
112
92
98
90
95
99
119
91
75
120
126
89
175
109
101
69
115
162
104
115
69
144
117
80
69
119
104
164
104
183
134
105
141
156
115
101
130
126
113
119
136
89
119
87
76
118
80
99
133
87
87
93
67
109
185
87
106
113
69
141
87
136
114
129
146
95
82
76
117
69
119
128
120
89
104
80
89
119
154
74
69
87
136
92
129
69
109
69
80
143
175
76
87
99
87
140
110
80
164
146
119
69
72
141
99
80
88
113
127
93
76
197
140
71
74
142
120
80
76
54
80
88
95
69
175
80
87
99
104
112
103
80
120
94
106
104
119
143
164
138
69
122
90
87
76
107
146
113
149
100
109
83
128
154
110
151
87
80
107
131
134
137
80
81
87
121
175
69
96
134
115
119
128
85
146
137
72
175
80
89
115
120
109
78
43
127
128
101
85
80
151
151
83
118
111
89
112
144
88
90
93
139
143
101
174
74
117
130
69
78
76
110
78
74
144
140
106
80
78
187
89
76
122
99
128
56
109
156
154
111
69
78
132
120
89
197
141
108
102
131
87
89
132
95
128
118
114
107
183
93
119
155
90
100
80
140
60
80
91
106
163
103
119
159
99
80
137
99
87
78
80
120
88
154
148
114
98
69
104
120
144
136
135
175
88
100
140
109
74
78
80
69
80
69
107
112
109
136
89
93
121
140
140
96
112
131
78
72
69
150
145
109
144
80
78
103
87
78
106
87
78
119
175
59
78
76
134
69
175
127
73
89
92
141
101
140
78
120
80
89
119
121
88
94
74
112
69
79
76
160
101
99
131
113
80
128
107
119
73
172
80
197
121
127
80
87
92
132
109
113
119
131
80
122
119
101
80
80
78
175
66
66
80
88
120
120
80
74
118
148
75
102
52
175
101
52
89
78
124
103
143
104
80
151
140
103
85
76
69
75
87
110
76
101
80
80
107
104
119
124
69
117
122
124
109
91
119
87
110
69
128
87
154
108
88
111
69
104
110
67
89
103
78
130
74
94
154
131
89
140
79
88
69
80
98
114
96
69
88
76
72
131
151
94
69
80
106
156
79
163
88
148
113
58
138
128
96
80
72
76
127
105
110
89
100
106
143
72
148
87
120
76
134
80
109
93
104
143
78
117
69
71
101
96
137
107
128
154
99
78
80
140
127
76
89
118
59
121
69
106
106
99
87
80
76
133
115
99
80
163
134
102
121
120
163
120
69
117
107
175
119
116
109
93
80
87
163
87
78
89
164
134
146
118
164
93
113
131
80
98
80
69
120
114
101
97
104
100
118
94
109
88
105
126
185
81
103
89
109
78
106
110
78
90
132
109
87
131
87
140
102
119
106
56
119
105
113
94
69
74
58
100
90
80
134
80
87
87
80
154
80
130
104
89
134
104
155
129
80
156
79
80
80
109
148
80
119
110
111
87
110
80
107
118
80
134
197
99
111
154
87
99
76
87
131
124
72
76
92
163
80
88
107
80
152
94
110
130
115
132
123
105
80
87
119
107
154
145
69
131
109
134
76
91
143
105
144
124
185
74
106
104
80
134
145
175
151
72
98
100
169
102
146
69
107
80
88
143
107
175
78
119
151
99
93
80
120
106
76
89
80
72
69
189
131
104
107
108
94
80
124
104
72
80
132
76
76
88
91
87
96
118
92
163
117
127
80
120
104
78
78
155
149
121
187
131
90
83
69
156
104
57
119
69
109
76
107
134
121
89
119
52
134
144
127
80
80
81
89
119
113
69
80
90
160
117
52
107
144
134
89
119
69
102
112
132
87
88
129
91
89
148
143
69
99
94
106
197
94
80
126
87
118
128
128
80
120
94
129
105
141
120
137
108
134
76
87
163
80
156
175
104
136
136
101
69
78
136
69
76
80
87
94
67
109
80
109
114
43
80
87
94
102
80
87
134
76
87
87
131
104
93
120
132
99
140
119
124
78
101
125
127
125
107
99
99
83
80
129
76
130
122
87
104
74
125
87
54
81
106
129
134
99
94
156
80
80
112
87
78
136
87
76
107
93
93
197
89
69
109
111
125
113
154
80
133
80
131
113
109
75
99
113
147
119
105
87
90
141
156
78
93
106
80
89
140
99
122
114
104
87
144
80
69
94
109
80
120
80
85
76
98
107
151
87
80
109
69
92
175
137
119
107
67
89
119
56
89
96
99
103
89
76
74
120
92
77
106
74
93
120
175
87
139
78
82
56
118
69
120
111
101
69
196
156
114
101
101
72
109
109
80
76
119
114
119
154
56
128
128
79
113
76
146
175
89
136
99
102
123
154
87
100
93
80
138
107
87
80
107
78
98
175
145
136
148
175
88
109
154
174
109
122
142
69
148
88
82
144
103
69
127
138
155
80
80
160
82
175
69
111
104
130
80
89
197
113
119
56
80
71
115
109
104
120
148
78
78
117
101
72
127
80
80
91
111
143
96
80
109
123
69
136
166
134
129
54
154
87
99
110
91
72
126
69
85
80
119
80
80
69
93
69
101
143
72
96
103
78
110
130
119
121
96
120
87
120
109
80
98
107
109
69
93
175
122
76
69
78
134
94
78
113
145
89
97
90
117
109
120
69
119
122
96
132
104
93
146
87
99
59
80
106
102
128
150
67
117
76
66
126
82
110
63
109
87
75
69
89
131
120
122
106
117
107
154
136
128
89
107
105
109
76
121
119
186
80
64
78
102
69
87
155
90
76
80
128
132
87
87
113
76
107
175
87
131
128
87
112
87
109
67
99
175
197
69
143
107
72
106
104
112
175
154
141
96
123
151
69
104
76
56
104
124
138
112
89
209
69
102
56
109
155
107
80
123
108
123
63
140
87
80
69
119
148
80
85
110
93
199
121
121
80
80
128
117
119
69
118
80
153
93
120
80
56
80
60
52
75
115
110
127
108
143
128
80
101
89
110
59
88
69
99
76
119
95
120
89
80
94
76
101
78
106
119
119
139
154
87
99
99
107
88
102
99
145
115
91
75
125
134
103
80
117
119
52
69
136
134
128
155
111
120
69
87
80
135
87
54
121
123
94
87
107
119
69
87
121
141
109
76
80
93
80
88
95
130
100
87
96
94
69
121
69
119
69
114
80
89
80
113
80
78
71
154
80
76
111
93
113
134
78
93
142
76
86
80
66
72
80
174
101
133
120
111
138
115
110
90
175
83
99
80
69
94
155
120
175
79
154
122
136
88
143
84
101
52
107
91
78
130
107
114
118
154
88
94
118
80
120
76
119
113
128
121
128
69
78
56
103
143
90
94
175
69
146
90
120
94
127
89
80
137
80
91
80
80
100
117
78
94
76
115
156
122
78
80
106
127
107
89
155
101
96
87
156
103
167
101
59
99
80
124
80
175
107
69
136
147
76
109
120
54
120
89
128
88
54
175
87
102
78
132
143
156
105
156
115
85
80
128
78
128
151
99
128
80
181
93
80
80
160
112
112
80
99
145
103
88
161
80
109
107
120
94
71
154
154
81
106
69
67
133
146
91
96
69
82
113
95
85
128
93
69
113
144
197
155
80
78
80
113
93
89
89
110
80
88
80
76
99
152
119
117
107
80
115
137
196
140
52
111
93
106
113
118
69
69
168
117
76
107
80
112
84
199
59
117
126
69
134
120
67
72
99
87
148
93
151
133
104
69
72
79
146
131
84
91
109
146
142
109
101
91
101
99
101
87
99
110
126
148
160
136
114
88
80
94
94
87
118
176
78
118
139
197
109
87
130
134
144
163
128
76
91
76
85
124
80
80
115
80
78
131
119
151
120
80
120
78
69
115
93
130
85
76
102
136
136
181
117
74
124
78
110
125
126
102
120
69
119
97
69
87
175
97
128
101
112
78
125
119
83
88
146
54
107
126
134
109
110
104
155
118
69
109
133
94
69
98
69
89
119
78
69
126
130
75
90
110
103
151
130
186
74
67
80
109
87
80
99
88
86
130
69
119
126
104
67
79
119
94
130
147
87
110
102
80
112
103
95
156
90
84
113
74
87
106
137
108
175
138
89
112
120
175
87
72
118
119
74
156
140
69
108
76
133
104
125
114
69
69
175
82
157
140
120
80
87
89
96
79
92
131
80
87
89
69
114
80
104
94
89
110
148
80
134
69
78
80
94
128
78
107
137
120
85
91
175
146
110
112
136
75
78
183
146
93
96
156
80
104
90
111
69
146
152
121
78
151
112
104
175
120
80
69
129
69
136
56
80
125
80
80
112
112
109
106
76
112
80
118
80
136
104
110
117
93
199
127
106
71
115
59
80
128
120
102
88
164
99
131
99
140
80
72
201
136
91
124
136
137
103
176
156
106
109
72
132
89
156
156
72
99
93
69
163
127
54
69
85
94
113
154
127
67
94
131
128
85
199
109
151
94
94
87
181
88
54
80
93
117
94
87
113
107
138
109
185
102
114
120
197
74
93
99
93
94
145
89
146
145
69
154
106
134
107
94
93
94
69
88
72
80
76
106
140
149
107
69
123
145
102
146
132
205
155
142
147
127
85
94
112
80
69
127
74
175
118
121
104
76
83
140
80
140
87
97
101
107
80
69
125
113
148
94
137
88
113
78
140
95
69
76
129
96
103
138
80
123
134
117
82
128
181
117
80
119
143
131
90
94
110
187
89
69
110
89
96
175
121
98
70
106
69
106
83
87
78
94
120
107
76
52
78
69
94
87
120
176
164
87
83
69
154
101
175
128
130
125
111
156
78
99
103
67
78
154
106
100
175
175
98
146
100
126
69
131
88
69
69
94
156
87
156
88
80
140
119
87
101
99
80
136
109
137
151
88
80
101
107
134
91
175
80
159
109
121
123
94
80
123
96
80
110
87
119
115
80
87
56
106
91
114
103
126
151
128
154
94
121
107
115
76
93
85
121
175
78
122
69
101
90
78
94
87
80
87
117
134
117
143
119
136
94
69
74
112
57
151
112
56
80
89
154
89
69
76
87
54
115
123
69
87
137
113
134
126
69
89
87
72
175
119
119
131
71
107
101
145
73
52
118
120
109
74
160
76
127
146
79
80
136
89
119
88
91
94
122
75
102
175
92
128
175
136
100
76
74
80
76
76
87
126
87
137
80
116
69
120
121
87
138
137
99
117
131
120
88
131
147
104
112
163
80
96
93
85
119
117
69
71
78
134
69
122
106
122
101
76
115
87
119
107
117
106
111
131
136
148
111
109
97
148
119
199
87
69
80
113
111
91
175
108
80
124
69
87
128
59
80
104
87
124
131
80
88
87
119
112
122
130
99
74
85
78
69
96
110
69
107
79
99
74
87
101
104
102
76
80
121
89
80
146
128
54
119
80
69
175
169
96
154
93
113
69
137
88
122
119
156
69
145
69
87
91
80
130
117
87
156
80
110
90
106
67
101
87
104
81
130
156
134
76
119
78
172
172
104
120
69
87
119
109
80
81
113
78
88
120
131
78
91
143
175
80
67
106
126
146
88
128
88
80
156
109
96
153
134
80
78
74
119
56
112
69
121
98
128
84
69
75
106
86
155
118
115
78
120
115
80
134
99
87
54
119
78
120
123
76
118
119
137
69
80
120
136
193
80
80
72
106
106
107
117
110
121
113
102
109
80
120
87
113
122
101
87
131
80
154
87
106
140
134
91
100
126
74
69
89
144
154
69
165
155
106
146
80
80
146
80
78
104
69
106
156
94
80
155
69
95
72
69
91
69
140
80
91
114
91
103
156
54
100
89
76
119
119
52
155
92
123
69
158
100
68
89
56
175
147
161
76
134
95
130
69
109
110
119
72
100
108
72
94
121
80
101
107
89
87
187
80
87
80
77
136
78
59
69
88
69
140
117
174
72
185
151
100
81
88
111
136
102
104
175
78
98
82
115
82
99
69
119
101
104
148
69
88
132
87
110
155
72
130
76
101
119
119
82
80
119
113
140
78
129
99
80
110
109
87
106
113
80
164
163
80
130
128
99
91
117
87
146
89
54
99
69
131
104
76
96
88
87
115
131
129
43
113
69
113
97
121
117
94
119
106
136
80
90
143
106
97
154
69
121
85
72
137
114
100
97
80
69
120
88
96
115
89
106
69
124
140
129
175
135
80
64
177
80
69
95
115
175
134
87
80
175
117
96
95
69
80
104
101
80
80
126
96
69
187
78
80
132
121
88
87
166
89
165
91
152
110
83
97
151
112
134
143
110
101
131
80
129
136
93
67
69
72
124
197
138
109
122
83
80
80
66
87
175
109
85
146
98
69
153
118
121
113
101
124
52
69
92
116
110
131
120
155
99
80
119
128
175
140
94
121
127
92
80
104
87
151
131
80
120
136
106
101
52
99
93
71
99
113
149
69
109
110
117
119
95
109
126
99
175
109
120
83
136
133
146
88
109
80
119
118
88
118
128
75
137
156
110
147
87
119
80
109
143
119
69
69
80
106
152
69
146
91
120
94
128
109
87
197
131
87
69
119
76
156
75
80
80
155
117
110
156
128
88
115
117
119
69
80
101
123
78
128
69
107
69
119
144
149
80
110
107
128
86
72
80
101
76
52
80
91
76
102
93
119
119
87
88
74
110
87
88
106
94
89
96
78
128
89
134
83
80
143
99
133
80
72
134
76
110
54
109
131
112
118
151
111
76
141
80
80
76
52
80
154
129
99
87
69
99
89
140
122
99
74
134
75
134
97
139
119
80
100
87
112
91
197
69
111
145
80
164
175
54
136
101
94
128
78
78
106
80
109
100
104
69
93
127
142
134
92
80
69
128
112
80
110
67
137
131
69
132
94
85
133
80
80
146
183
78
175
72
134
78
74
96
80
80
91
89
80
69
96
75
69
155
146
94
72
107
118
79
121
109
67
93
154
82
175
110
108
120
80
87
79
131
88
101
96
85
76
124
123
87
93
52
107
156
80
104
74
80
138
80
76
119
175
87
76
80
115
74
118
153
107
93
119
107
80
154
87
102
163
69
94
93
126
149
104
114
131
120
147
111
80
102
74
80
99
87
114
88
69
197
104
69
100
101
136
99
91
69
104
128
104
129
104
57
109
69
174
117
87
119
85
148
87
80
88
96
87
112
107
120
88
88
87
89
88
118
118
120
80
156
125
125
131
115
76
107
104
95
64
80
133
76
106
106
80
125
129
101
107
119
145
85
78
99
117
71
157
104
76
78
154
72
76
76
119
175
112
69
197
119
113
68
69
54
110
128
87
78
136
75
107
154
85
119
78
76
87
80
101
128
136
87
115
128
78
70
126
117
80
104
85
127
69
78
120
197
119
128
90
127
142
113
101
114
119
80
89
118
81
109
134
52
131
87
100
123
118
94
138
102
115
69
120
120
78
54
104
130
107
98
69
69
69
88
115
97
107
94
78
80
114
175
122
87
154
72
92
132
94
78
134
80
78
87
138
89
132
99
94
107
110
93
89
113
109
134
109
128
146
112
69
99
80
76
75
80
109
116
80
108
95
122
147
88
100
89
121
83
69
117
119
120
104
119
72
54
104
113
93
80
156
76
102
119
107
130
80
76
155
94
162
79
108
69
69
110
88
135
132
64
87
88
121
148
134
128
87
102
113
134
87
130
112
90
166
87
102
136
80
87
183
110
107
69
95
147
155
96
104
99
124
122
107
88
80
109
134
113
72
112
78
90
120
80
80
119
186
80
148
76
127
54
94
104
113
72
54
155
126
136
100
107
115
128
147
83
106
155
101
94
69
106
78
137
157
129
102
117
76
156
80
115
134
174
109
93
74
141
100
69
131
99
106
89
140
93
69
80
128
69
127
67
80
78
52
69
78
102
98
148
139
89
87
113
56
110
87
102
137
80
139
99
125
82
54
74
104
110
113
114
133
128
89
54
69
90
146
78
87
80
58
111
93
80
143
87
80
103
85
93
76
112
96
80
133
87
119
121
183
106
99
58
116
129
119
87
87
66
80
154
119
121
89
131
80
89
110
123
181
95
106
104
80
98
118
101
89
110
74
119
154
78
96
87
72
140
82
109
56
80
109
145
69
75
96
96
88
78
80
78
151
69
80
107
90
80
112
119
74
90
181
137
80
80
110
69
134
93
54
80
78
144
123
89
80
151
136
87
120
87
155
87
94
140
78
63
155
112
66
123
155
109
128
92
69
83
153
110
118
93
80
109
76
96
69
82
104
119
102
137
69
148
112
69
139
154
115
88
94
134
69
76
143
132
87
74
119
91
104
98
107
134
164
113
104
43
93
83
98
110
93
110
154
123
120
96
121
136
69
128
94
80
80
96
92
132
87
150
127
110
100
119
136
89
127
131
119
120
105
89
72
137
120
106
103
160
107
136
67
89
93
111
104
174
123
109
98
83
116
78
117
113
134
155
78
174
139
87
109
93
146
95
78
100
80
76
134
128
187
112
76
131
80
175
140
110
123
88
83
76
104
183
110
131
87
71
131
156
113
78
114
89
140
102
80
174
117
99
164
107
69
102
69
80
87
109
88
82
80
116
128
154
80
128
156
131
126
104
110
69
93
78
133
136
111
91
155
164
119
136
80
100
100
134
106
99
119
54
74
121
118
87
93
124
106
99
71
76
110
95
88
104
104
119
56
120
69
85
160
106
157
130
119
140
117
80
93
144
126
109
125
104
151
80
124
87
129
96
113
139
88
135
123
52
75
102
69
151
69
111
112
69
108
109
154
112
90
112
80
80
141
113
89
107
164
80
158
155
128
69
88
69
91
128
69
83
87
123
104
151
56
117
175
99
121
54
59
78
80
134
160
175
119
110
101
120
121
154
112
78
131
163
109
126
120
96
119
112
155
85
88
121
131
131
91
87
80
71
82
156
101
104
147
72
155
175
76
113
131
122
99
76
119
106
69
154
110
109
87
107
113
123
93
80
74
128
87
93
96
154
110
80
104
130
137
128
79
52
131
72
52
69
69
128
95
131
99
100
69
119
54
56
175
126
134
72
136
106
71
109
120
108
80
112
143
149
110
80
85
95
87
80
104
64
107
120
69
131
142
87
112
90
106
90
78
76
69
56
88
91
107
93
143
113
129
80
78
121
144
139
80
126
109
74
69
121
126
52
131
76
102
156
87
147
109
104
136
112
69
83
121
104
128
71
115
97
80
76
124
117
85
56
187
94
163
69
120
69
110
86
96
89
69
120
88
107
98
80
104
94
106
126
79
69
109
72
52
89
76
78
154
83
99
131
87
69
112
136
87
134
112
128
109
136
112
96
80
87
78
74
102
80
76
87
88
96
140
113
128
107
125
119
78
122
111
78
175
99
96
89
117
99
160
85
107
122
146
80
111
110
74
80
109
129
145
162
138
90
80
69
134
104
175
78
114
88
111
71
87
109
151
139
87
145
151
155
113
76
119
74
88
69
110
136
110
99
137
93
80
107
78
144
120
119
124
106
78
120
105
145
197
128
91
148
145
78
156
72
89
96
100
69
141
90
128
145
80
109
80
78
134
176
93
110
76
80
94
76
122
116
87
154
101
93
153
107
128
60
115
172
132
154
80
112
100
112
94
43
99
117
80
102
78
153
76
109
121
95
69
110
76
133
113
163
120
136
87
93
90
163
83
76
96
175
43
146
75
106
100
151
117
110
66
151
69
121
80
80
129
146
52
80
107
119
69
94
106
80
146
99
98
76
137
52
107
110
105
112
120
175
162
134
80
99
149
78
74
64
154
133
80
148
78
88
89
95
57
87
130
118
175
74
125
101
158
67
146
87
76
69
91
83
69
117
109
69
69
107
107
76
102
120
107
101
140
134
151
80
175
174
68
69
80
83
98
155
145
119
101
69
143
109
78
102
175
120
110
80
121
107
89
99
110
154
175
87
80
88
80
131
115
112
101
74
99
43
152
87
113
43
52
140
99
141
87
140
91
187
80
67
130
89
119
118
104
99
100
94
137
156
156
93
88
76
119
120
66
175
78
155
119
115
79
76
113
138
80
80
78
104
140
120
94
128
106
145
94
97
154
177
117
104
72
76
69
136
80
111
110
80
74
102
132
130
100
156
104
104
120
127
76
131
132
94
76
80
144
128
98
102
151
78
163
107
76
111
135
141
154
80
80
112
87
129
146
143
87
80
87
106
175
119
88
126
52
78
69
112
143
80
87
83
87
117
80
107
78
113
106
78
98
99
102
154
119
134
93
87
117
142
106
107
83
99
130
98
83
137
78
80
120
81
88
129
110
175
157
101
144
136
121
136
135
99
112
175
101
89
197
118
137
96
79
93
134
120
137
69
91
80
85
107
156
89
175
72
68
148
76
69
107
106
95
78
80
72
112
121
110
154
76
119
120
110
80
138
106
175
132
80
95
94
147
76
79
115
104
156
141
80
79
162
119
89
132
78
99
93
118
100
91
77
129
89
89
127
99
106
104
80
107
100
106
156
98
115
115
87
109
75
80
90
93
114
89
131
87
69
87
151
119
95
89
110
64
69
80
78
87
163
88
115
135
107
107
78
121
156
107
89
128
136
89
146
138
156
96
107
69
115
134
99
144
119
87
87
151
87
82
99
144
80
114
74
56
140
157
80
151
117
87
181
100
149
76
169
146
120
113
128
175
123
80
156
131
143
140
76
115
156
121
155
112
69
110
89
90
128
120
94
69
89
52
209
99
72
69
146
76
147
109
120
80
99
101
71
127
113
120
122
122
121
80
80
128
98
109
112
78
89
126
119
107
80
88
80
80
81
80
80
127
154
69
97
57
120
89
97
122
69
87
127
109
120
109
128
154
88
79
83
80
107
80
93
130
143
118
100
109
80
121
136
95
144
143
113
128
131
88
96
54
71
121
131
87
156
113
109
156
197
102
92
72
69
88
133
121
96
112
155
146
88
78
126
109
69
91
117
110
119
80
78
102
76
80
119
99
100
80
81
69
119
131
120
72
118
115
118
113
69
80
136
175
131
91
120
112
80
69
119
127
109
87
113
93
69
111
164
76
87
94
68
129
145
93
110
80
140
112
136
80
99
89
154
69
175
109
156
102
131
185
96
106
134
156
104
89
101
80
186
140
80
128
69
78
119
69
85
129
120
133
127
128
99
78
80
118
112
69
156
116
175
166
118
88
169
80
90
69
140
100
95
101
88
134
107
80
114
106
74
99
80
118
120
80
117
169
69
175
119
119
91
80
122
146
80
69
98
106
76
68
106
131
129
94
91
80
136
96
76
91
120
99
91
80
74
99
119
120
119
107
80
71
128
87
106
87
107
138
181
154
127
80
80
74
122
120
197
99
92
156
99
96
106
80
76
54
68
69
54
128
124
91
87
96
120
94
101
104
119
127
104
69
94
124
121
87
127
89
76
113
80
107
85
128
128
118
128
104
66
181
95
148
80
134
52
83
54
131
95
119
156
94
142
78
115
110
104
75
104
127
110
99
108
80
80
117
86
81
154
78
131
111
151
72
134
154
156
101
133
154
131
85
107
130
183
76
109
80
69
107
96
87
69
69
155
76
175
154
96
100
88
78
88
83
52
120
131
88
197
119
99
142
112
72
100
138
74
80
128
76
91
69
117
78
93
54
127
99
78
128
109
128
54
105
98
110
78
80
95
131
69
151
81
97
66
72
118
175
106
131
127
104
114
78
139
98
151
80
80
113
175
156
107
146
94
175
99
151
118
120
112
120
122
87
137
121
117
69
66
91
140
78
174
80
76
106
123
110
134
63
69
78
130
80
69
156
164
165
146
91
99
106
89
152
69
80
153
80
131
78
72
156
76
87
88
99
54
99
76
153
140
104
112
85
80
76
107
74
119
78
121
114
128
67
143
80
153
120
155
155
104
128
104
80
76
80
80
126
137
91
148
127
54
109
118
134
99
120
110
72
88
147
146
89
127
91
120
106
107
80
78
120
101
125
129
154
91
94
110
54
52
156
154
69
112
119
80
106
106
93
101
177
91
114
93
99
107
117
141
69
175
131
110
87
94
109
146
183
69
88
69
95
114
69
89
121
143
116
94
99
78
119
197
94
119
114
80
117
175
78
99
102
78
69
80
80
111
96
102
119
109
88
110
87
142
156
126
152
90
109
137
131
80
99
121
163
137
74
119
156
99
117
130
117
78
95
78
156
54
87
131
140
101
111
104
89
74
113
137
87
155
96
106
73
69
93
102
87
69
72
87
100
97
103
88
69
69
155
119
85
88
69
78
76
69
80
80
120
113
73
80
140
105
113
88
146
149
78
56
69
114
69
134
140
117
91
96
120
52
110
154
75
87
134
156
91
103
76
78
121
107
175
95
80
80
76
78
120
78
151
80
93
119
80
96
80
101
113
140
89
175
80
99
154
119
113
78
56
119
127
78
72
136
94
86
79
110
72
104
110
145
72
144
109
76
121
118
58
117
120
106
148
88
69
76
101
72
111
78
54
134
92
72
121
87
91
114
119
128
54
80
125
115
156
112
88
94
69
119
93
142
110
90
85
127
80
122
125
99
85
95
117
109
78
104
175
174
59
104
69
76
111
197
87
89
100
72
80
148
87
52
69
90
151
99
120
69
112
110
127
106
117
98
93
69
111
133
69
72
80
121
113
155
104
69
69
94
109
118
136
88
121
126
69
117
119
75
78
175
120
133
88
119
72
90
136
120
162
121
79
175
83
76
82
87
69
91
91
74
78
76
78
72
128
104
78
136
131
66
117
140
96
118
116
96
76
83
69
76
154
88
142
126
134
69
109
73
135
143
121
131
111
80
147
96
92
175
134
80
121
123
134
76
110
96
80
89
143
87
80
124
88
93
124
105
59
108
106
87
94
109
102
91
148
118
126
96
94
145
78
109
94
128
130
43
121
87
133
129
94
136
119
80
83
76
107
82
140
134
118
106
132
134
112
97
80
76
137
119
88
69
175
174
115
89
154
92
110
80
128
197
117
69
113
144
52
124
80
80
57
87
104
118
156
139
113
117
110
77
99
136
137
128
76
87
104
123
64
118
96
100
147
115
69
56
69
130
137
129
109
104
98
121
85
101
80
164
69
88
76
72
93
110
83
151
76
78
142
80
93
94
76
140
152
106
54
119
110
80
107
80
76
91
86
146
113
88
76
131
119
80
114
107
127
127
87
136
134
76
88
88
133
75
123
68
134
110
80
120
69
154
87
74
151
144
132
121
135
144
76
151
103
83
129
157
110
52
199
127
120
119
94
80
87
85
72
107
93
80
72
140
88
87
154
72
88
69
87
128
102
120
99
102
112
90
72
78
125
90
93
121
126
119
126
93
104
140
103
76
133
80
140
85
128
78
87
80
160
100
120
78
107
119
76
91
91
110
119
93
104
110
137
110
71
151
87
69
80
94
151
88
80
137
119
91
104
80
117
117
69
96
175
109
154
136
108
127
123
78
148
78
107
76
132
140
117
99
174
67
80
104
110
76
153
99
85
152
100
109
126
69
111
76
76
80
89
175
80
94
138
151
101
85
131
111
120
78
101
92
149
103
80
110
118
54
154
107
54
52
94
119
127
156
80
78
91
156
118
99
163
88
87
103
80
101
97
151
108
85
119
89
80
76
132
88
87
90
122
69
99
117
181
100
147
120
197
154
131
95
69
131
78
83
119
99
83
110
174
128
69
164
169
160
89
108
78
197
69
87
67
134
78
80
76
90
128
122
100
60
77
183
108
112
78
78
99
121
138
122
89
88
109
151
93
107
120
176
168
120
111
121
80
127
93
141
80
100
69
85
76
101
78
69
73
78
93
107
52
130
136
149
149
78
69
151
76
91
87
131
129
150
119
118
80
99
107
117
74
107
79
69
75
89
109
138
146
141
80
163
80
93
131
148
183
99
143
102
164
119
119
88
112
78
64
151
76
152
131
89
149
87
110
104
115
104
175
127
94
134
88
76
78
104
133
175
94
89
78
140
104
80
134
175
146
146
88
93
54
69
71
122
69
123
121
118
80
107
80
128
67
135
80
99
175
143
56
131
76
94
54
143
138
87
122
112
121
91
106
90
175
60
76
87
147
146
148
72
128
175
134
122
105
119
119
162
83
149
104
87
127
122
124
110
88
124
69
112
79
101
128
91
92
69
78
95
134
140
88
69
87
134
69
156
92
148
122
117
87
107
120
74
99
72
94
107
104
106
125
129
77
100
69
76
119
93
120
80
66
78
109
129
76
174
85
96
89
110
132
80
113
76
88
75
120
93
128
136
78
104
69
90
88
128
78
89
72
69
147
52
124
87
141
155
93
90
107
119
119
76
123
88
113
117
97
93
110
78
78
129
110
87
154
163
112
145
69
151
151
89
122
93
126
74
136
95
54
107
87
89
69
154
80
156
69
89
80
97
127
104
133
122
87
151
94
80
152
89
157
113
124
80
104
128
96
109
120
154
80
138
98
175
102
136
78
151
118
147
120
99
118
136
88
69
104
69
93
80
102
119
106
104
80
137
69
121
93
120
76
102
80
99
106
120
69
140
99
117
56
89
115
80
119
78
113
93
95
125
102
109
87
80
113
99
89
78
101
122
146
87
78
144
80
156
89
76
119
69
131
107
137
96
97
69
80
54
110
120
117
129
80
119
134
72
78
80
120
107
199
113
126
107
109
138
74
101
80
106
112
69
83
87
99
71
89
123
172
87
136
76
80
124
197
107
119
121
80
197
80
106
72
119
88
80
66
78
115
107
80
111
154
119
80
78
150
138
102
93
69
120
67
112
78
72
134
124
67
87
76
120
143
175
106
128
102
117
78
107
113
76
117
89
72
80
163
183
120
88
73
83
107
127
72
132
85
136
69
197
90
87
72
125
112
112
132
136
120
69
99
158
124
106
156
88
138
99
89
94
119
160
80
120
104
69
87
151
78
69
93
96
124
69
107
175
109
69
121
85
119
76
87
112
78
100
106
69
80
102
144
209
87
107
89
80
112
132
197
69
145
106
129
99
119
122
90
127
94
76
131
101
93
104
109
124
120
99
128
76
107
80
156
69
113
99
80
76
87
149
112
125
88
117
138
72
96
80
78
115
109
69
66
79
129
197
154
175
133
117
175
96
164
87
136
63
154
109
89
78
121
117
80
104
80
69
126
118
88
80
97
131
119
154
112
151
80
117
119
120
91
132
80
92
58
76
60
128
72
117
99
175
134
110
93
140
88
87
103
120
99
137
76
89
88
118
174
131
94
151
106
100
99
127
112
127
100
74
91
76
109
96
106
95
115
140
117
95
119
134
89
80
88
87
76
149
137
87
112
137
107
102
72
109
132
76
76
120
108
137
163
103
103
99
83
154
131
80
120
154
99
127
78
80
69
80
80
89
69
156
100
72
119
98
78
164
119
145
131
54
109
69
89
91
69
82
119
113
80
111
94
99
109
156
85
156
96
129
140
155
54
121
87
110
201
89
154
72
95
128
121
85
90
87
92
100
87
67
88
93
146
102
120
87
93
76
130
95
122
131
85
120
143
102
128
128
88
91
87
113
80
117
106
136
130
104
112
119
78
69
69
87
78
112
80
156
80
96
112
130
80
88
131
96
112
83
111
106
138
128
154
113
120
54
121
100
114
69
107
104
56
54
117
113
107
128
119
54
59
66
122
58
115
76
155
140
92
152
175
112
106
122
78
142
78
127
76
102
127
90
119
115
136
83
199
125
119
134
54
145
76
201
78
94
100
99
103
72
80
90
125
136
129
118
163
90
80
119
80
110
68
59
74
140
99
107
112
94
76
197
175
109
82
117
107
102
112
163
76
154
87
80
109
52
106
78
143
87
88
68
69
141
99
120
78
88
110
87
87
121
92
75
80
78
87
136
88
121
175
119
131
69
187
95
102
101
94
78
110
121
164
98
69
76
137
130
80
112
91
150
163
128
120
136
78
80
144
78
92
151
104
69
109
145
69
74
154
100
112
120
94
69
148
137
78
76
88
136
69
119
119
80
146
134
93
80
120
101
78
127
148
78
94
110
80
69
72
146
112
88
89
80
128
127
89
152
93
88
175
72
197
56
154
91
78
87
69
117
129
128
128
156
99
76
106
80
99
100
143
86
80
136
113
107
151
116
108
143
69
154
107
91
80
99
104
128
152
93
75
114
119
154
76
106
80
80
114
80
107
145
120
107
159
100
88
175
75
108
87
183
80
69
129
69
101
93
109
99
112
104
102
119
96
154
96
127
129
109
69
102
69
131
117
112
134
96
122
164
131
95
138
163
112
69
128
93
69
76
99
80
69
72
104
106
78
119
69
109
74
94
80
89
110
78
151
99
87
74
107
72
91
144
103
87
119
120
119
87
101
113
110
54
117
120
120
163
160
131
76
150
92
134
76
80
93
147
117
137
134
128
146
140
124
113
76
94
52
133
80
113
107
73
120
78
99
141
131
87
102
78
121
132
197
91
126
143
94
103
107
81
162
197
91
93
114
112
142
80
126
76
104
84
98
157
128
69
150
87
78
101
196
172
197
136
78
56
80
91
69
80
87
87
127
80
87
72
119
52
101
103
80
110
113
111
88
88
87
80
99
80
125
75
99
128
89
78
120
82
99
80
87
87
104
136
131
128
134
106
80
88
72
128
69
80
155
128
140
175
80
87
72
94
87
89
115
69
100
69
87
136
119
129
107
162
156
87
131
90
99
111
130
120
144
144
91
80
119
94
134
115
80
209
87
138
128
128
69
109
130
111
148
151
109
59
147
80
99
54
101
76
118
69
76
78
101
107
131
113
131
123
80
116
80
80
113
72
99
89
99
131
94
94
181
78
54
152
120
88
181
114
119
119
131
160
104
74
109
78
110
101
94
78
108
121
69
175
87
120
80
74
87
106
118
87
71
111
111
80
146
54
106
113
159
109
69
100
134
88
140
104
146
74
83
109
88
78
99
154
78
131
125
119
133
106
112
145
111
107
78
111
160
109
122
121
116
69
79
69
151
87
119
155
87
102
115
175
119
121
123
99
72
172
151
90
122
128
95
99
78
178
199
80
136
87
80
131
87
69
84
87
110
137
101
154
76
66
124
69
120
120
107
136
119
146
69
78
80
69
201
78
94
151
87
174
89
107
140
90
120
69
80
127
119
155
175
146
128
131
69
175
87
119
104
87
121
69
118
43
107
117
54
90
69
107
122
88
83
130
137
121
91
119
128
90
88
94
140
80
80
136
132
92
78
107
69
99
87
104
105
110
145
78
84
97
121
73
69
99
104
103
107
80
97
129
87
131
107
66
94
97
69
111
80
108
197
162
199
109
96
69
54
115
91
109
110
80
87
155
99
113
137
130
104
129
69
119
88
114
156
54
87
89
120
183
80
139
154
80
74
106
96
112
96
139
147
87
99
128
87
74
100
93
87
72
93
90
154
110
127
111
74
76
89
58
115
89
117
138
175
80
109
80
137
72
87
156
87
88
69
87
80
104
84
99
87
80
96
126
120
132
175
110
119
136
66
91
69
105
60
120
157
119
88
154
145
157
175
154
140
104
175
112
69
104
83
107
87
76
169
69
109
103
69
101
94
97
88
109
154
109
102
87
54
131
89
115
175
83
119
175
78
125
121
103
90
120
72
146
154
106
99
155
112
156
120
100
106
197
134
117
69
89
131
89
91
136
67
101
88
131
128
80
155
175
78
90
117
121
140
80
175
80
110
154
78
197
154
116
111
99
147
77
69
106
148
72
80
106
119
156
69
89
87
80
116
89
110
90
106
115
101
123
100
115
80
120
128
109
132
80
101
119
105
110
54
80
95
80
102
155
87
87
112
112
143
156
169
87
127
119
150
174
81
121
96
136
80
96
93
127
80
96
52
69
69
78
89
100
78
67
75
134
106
87
120
80
72
69
80
80
69
87
116
107
90
102
87
100
147
101
141
118
103
90
107
89
78
96
71
113
106
117
111
107
89
156
56
93
99
87
123
148
199
101
99
80
80
154
120
78
76
148
115
122
76
69
118
106
99
124
117
107
119
63
123
120
87
143
110
155
91
128
155
80
99
69
122
94
117
96
154
117
151
154
134
89
69
90
144
102
94
142
136
164
109
121
156
116
91
133
129
99
149
83
69
87
187
72
80
87
76
76
89
119
154
115
129
87
69
140
201
117
175
120
120
107
91
95
95
80
107
99
139
130
54
134
134
163
147
119
128
133
80
128
134
134
75
99
96
80
209
121
151
56
87
120
122
175
133
87
133
129
80
87
80
80
110
148
94
80
69
80
101
120
89
106
89
135
119
80
80
75
128
100
69
89
152
81
100
91
75
114
84
69
131
113
148
87
74
99
132
131
104
93
80
129
133
63
69
96
63
127
154
71
87
106
76
110
113
120
69
78
85
98
106
78
114
72
117
149
94
96
69
140
128
119
183
99
127
154
101
89
107
87
74
78
130
88
87
87
119
83
80
121
69
107
72
145
110
115
146
137
104
104
130
101
122
104
69
69
154
88
128
80
149
91
197
122
69
136
77
131
63
107
103
117
113
80
69
123
89
128
164
103
76
108
119
52
99
106
197
107
121
119
111
104
131
78
69
148
156
131
92
156
78
148
80
80
102
89
136
138
119
165
88
63
121
120
95
92
128
94
105
122
105
88
128
82
175
185
80
76
133
89
122
52
66
80
54
87
128
159
138
114
126
73
109
87
78
110
175
101
117
119
119
121
54
94
76
113
104
80
80
99
68
89
135
136
125
83
143
115
69
96
140
97
151
78
128
155
197
119
85
120
159
185
79
131
76
87
76
105
136
120
69
88
115
99
80
154
134
110
126
127
80
80
150
143
80
94
94
109
154
114
68
87
105
78
80
123
127
135
139
117
69
123
100
110
76
130
118
145
147
101
126
111
69
87
54
150
99
93
107
110
112
106
146
69
140
69
69
143
81
152
66
131
154
134
119
102
96
99
110
60
120
85
80
102
76
52
139
99
115
132
78
127
143
111
91
156
150
80
103
54
114
66
69
93
78
93
104
66
76
91
120
71
93
175
120
98
134
99
106
110
107
154
113
117
76
120
98
135
128
117
124
128
74
154
175
89
128
76
80
118
175
64
146
89
128
91
99
175
78
118
80
93
78
80
112
106
175
99
147
76
175
119
144
88
107
113
156
128
101
154
114
107
72
142
56
126
175
89
110
69
142
110
117
56
69
123
69
87
112
80
106
127
126
76
87
132
74
80
201
107
80
104
145
125
89
113
114
88
90
80
69
197
94
76
131
94
80
78
119
129
58
80
154
122
120
123
117
112
109
113
94
89
116
87
113
120
175
127
69
124
99
92
154
145
76
115
78
119
109
153
125
107
87
69
113
112
151
93
154
89
145
80
93
107
90
104
117
156
87
156
80
155
175
69
69
54
89
104
76
113
147
69
78
152
76
80
140
137
87
123
140
169
143
76
99
145
91
54
113
154
148
80
96
78
88
110
101
106
136
87
80
96
69
128
104
144
78
136
87
72
104
118
69
96
87
137
175
69
156
100
87
199
136
130
76
125
126
119
110
160
69
129
102
69
54
89
104
111
78
111
99
94
164
89
69
80
110
69
78
72
80
118
89
127
109
112
121
152
90
99
87
155
134
69
138
94
115
99
56
93
80
160
118
88
138
73
93
80
80
175
80
98
117
98
88
147
122
88
101
96
76
115
123
132
91
114
52
97
109
150
89
138
127
101
69
80
78
110
98
163
83
133
76
94
131
117
85
66
117
80
96
128
92
148
76
101
147
154
90
80
112
164
197
80
69
131
72
69
87
80
88
148
117
144
144
61
119
87
78
132
75
154
131
120
92
145
175
159
89
91
119
164
87
111
122
150
74
89
96
107
136
109
87
110
103
74
121
102
88
119
101
164
99
89
114
140
120
147
74
89
88
87
98
85
113
62
90
133
87
69
107
89
199
132
99
117
69
78
108
89
119
78
80
80
76
69
74
78
76
110
56
88
88
98
110
101
145
109
76
80
89
87
92
69
102
113
78
78
89
78
114
108
163
107
93
112
72
79
75
113
134
69
120
151
78
163
134
155
99
146
89
99
102
113
88
155
79
132
89
120
123
175
149
100
120
154
80
104
104
117
96
122
146
129
109
135
89
94
125
107
91
155
126
107
89
107
80
136
74
88
66
72
151
87
132
145
175
112
74
131
80
155
101
107
128
140
80
73
80
107
80
99
107
121
117
145
80
80
120
111
64
80
154
112
93
80
87
111
69
111
94
121
185
102
110
71
78
154
103
78
146
89
88
89
139
88
89
87
118
136
126
140
121
109
136
110
175
110
99
120
89
125
110
144
169
127
109
78
69
94
74
117
69
142
108
78
119
134
87
110
69
91
78
94
109
166
123
128
120
131
83
104
99
154
174
140
80
116
80
163
87
89
128
157
78
116
128
110
117
117
140
69
160
128
91
107
71
155
69
121
109
67
119
147
102
88
128
102
87
120
99
131
80
91
107
87
69
75
155
175
79
103
69
82
80
91
76
151
104
94
127
74
74
117
80
136
80
110
90
87
91
115
131
76
133
88
99
131
92
124
197
138
104
110
128
80
91
104
130
175
133
80
102
80
104
107
78
124
80
69
163
119
80
98
103
87
99
80
66
103
96
175
137
69
120
119
130
107
120
69
88
96
102
106
124
89
127
136
156
66
110
91
143
119
91
78
74
80
97
94
78
147
110
89
103
121
119
68
68
69
76
187
121
80
134
80
125
72
88
96
145
69
146
117
69
78
107
110
151
96
82
69
80
160
122
108
76
76
117
64
52
145
128
90
175
78
85
86
120
109
128
107
144
102
119
120
80
129
103
87
174
145
87
140
96
151
54
96
137
175
156
88
87
101
100
52
152
175
92
136
160
85
76
199
142
85
87
128
145
100
106
165
69
115
87
110
94
101
80
140
94
103
78
78
72
120
107
116
80
89
115
88
148
118
80
137
111
89
175
110
111
76
66
141
119
87
121
99
80
106
128
67
116
93
110
80
175
122
128
140
87
175
69
199
110
134
54
66
89
154
72
76
91
106
131
143
136
143
79
94
127
69
89
92
134
143
102
110
91
119
87
107
102
80
175
111
121
154
146
145
121
136
82
104
121
187
74
175
119
118
69
98
78
69
110
120
113
69
109
99
107
155
88
78
117
69
87
67
134
145
80
119
80
56
120
87
155
92
78
89
91
96
78
154
137
128
150
87
118
52
119
120
67
117
175
107
103
83
52
160
101
78
164
90
78
89
149
183
108
88
72
140
153
101
70
66
69
154
78
100
69
87
199
95
91
80
115
87
120
83
156
76
154
87
134
140
117
91
94
110
154
95
120
127
80
80
111
112
80
109
56
80
104
147
74
133
95
109
155
80
119
110
95
107
80
127
109
154
85
120
63
123
89
94
92
87
78
99
115
76
134
113
113
93
121
157
110
103
110
175
138
64
136
185
142
80
107
130
119
141
127
174
76
137
87
128
117
72
75
130
125
94
89
104
136
104
72
56
111
80
87
96
136
154
69
66
109
155
87
80
148
115
113
148
69
78
107
133
52
80
133
52
87
107
112
76
80
90
147
146
77
119
69
91
104
101
80
76
197
80
114
78
115
125
197
87
71
78
99
113
99
107
165
93
114
113
80
106
78
116
75
67
78
109
87
132
87
124
87
87
85
114
163
104
69
80
76
107
106
113
89
164
80
121
80
128
76
107
134
143
197
83
172
128
107
100
83
69
89
72
72
175
104
100
80
128
145
111
129
110
136
163
80
136
100
119
123
76
69
80
121
95
87
156
136
111
94
125
101
52
56
141
107
76
157
128
91
155
89
119
52
120
106
145
91
134
78
118
120
138
82
151
80
80
119
80
90
145
134
76
153
78
76
88
69
69
154
123
80
136
90
76
81
103
113
78
86
89
94
72
99
87
107
131
94
197
80
125
99
175
76
114
87
83
125
119
93
103
128
119
83
69
136
111
76
115
145
101
69
110
93
137
78
78
133
107
114
154
79
164
76
71
87
87
87
134
80
101
122
155
112
99
113
93
104
127
109
80
104
80
80
197
80
155
154
69
120
105
93
87
76
85
140
69
102
88
175
119
94
130
87
89
140
175
110
164
124
79
87
156
107
54
133
121
137
175
125
120
87
94
83
88
117
76
99
72
154
87
99
109
87
89
54
69
69
90
89
111
123
91
52
109
92
87
113
151
106
109
128
205
107
135
92
112
110
80
160
130
98
87
175
104
146
140
87
96
91
154
95
160
147
121
137
91
120
76
93
90
85
107
157
122
120
117
103
143
71
130
111
112
78
88
131
107
104
94
92
137
52
157
120
87
119
119
147
78
92
80
119
87
80
94
76
127
88
69
91
131
121
141
107
69
69
125
85
106
74
94
144
120
80
94
69
137
118
78
129
166
153
121
166
69
80
136
69
80
87
93
134
134
87
127
120
100
93
87
143
106
156
90
78
87
134
93
95
91
120
68
83
69
76
74
54
88
80
69
64
119
87
115
88
87
68
111
107
75
154
118
80
72
91
91
197
69
154
121
113
109
110
76
164
110
80
72
74
119
83
140
111
175
119
107
88
69
112
174
113
155
120
118
104
119
87
112
80
120
94
119
78
175
119
117
111
129
88
102
120
72
122
152
99
100
88
131
99
138
153
157
95
97
148
74
119
156
134
107
174
85
119
93
175
66
107
163
121
99
131
89
119
120
131
89
123
117
78
128
112
105
110
104
78
69
105
117
85
80
126
102
74
94
69
80
84
88
72
59
69
78
58
107
109
154
94
120
106
85
69
143
102
69
69
99
154
87
145
80
73
108
93
122
112
99
147
109
154
80
76
146
80
69
110
93
118
127
175
109
118
115
117
127
72
142
87
120
99
163
112
142
91
111
100
72
90
80
130
69
52
66
76
80
113
120
99
87
80
92
120
94
69
80
145
87
89
115
119
119
156
85
69
76
137
155
80
136
109
69
89
80
110
69
119
150
197
140
150
149
64
131
76
94
69
115
147
83
114
128
128
80
100
83
89
103
99
155
120
175
157
78
82
142
99
108
131
89
119
136
134
69
175
80
115
101
66
69
136
118
160
138
129
75
132
148
54
99
87
120
164
106
99
130
84
104
67
89
101
143
104
128
76
69
78
80
100
108
131
95
128
80
120
121
80
197
87
87
120
115
136
127
117
148
94
112
119
119
72
82
111
80
119
104
128
146
96
72
102
129
148
56
118
80
76
97
90
115
80
54
163
80
80
119
80
124
101
105
163
140
78
142
158
91
137
132
101
80
94
145
80
69
89
100
140
76
74
107
137
121
79
69
140
87
104
78
114
109
94
72
114
120
76
80
146
121
107
101
87
143
80
137
94
112
134
148
80
80
78
134
67
108
69
76
109
119
164
100
104
87
197
109
78
91
109
103
93
143
156
153
102
110
110
113
63
160
80
91
134
87
104
93
76
87
87
105
125
132
166
100
140
112
69
109
110
93
80
85
74
88
112
52
104
128
130
127
119
104
88
128
119
103
107
76
120
134
69
94
78
109
69
69
136
135
126
110
122
96
104
116
107
141
89
88
92
112
154
115
95
146
80
137
69
99
120
64
179
76
107
89
125
194
104
67
117
91
88
119
151
152
121
129
151
154
104
97
93
91
69
117
110
89
132
76
154
99
52
85
87
129
142
119
161
80
67
87
69
152
91
111
80
85
154
112
143
78
109
115
120
113
119
137
87
105
154
132
114
98
110
117
120
112
69
139
156
183
95
114
91
109
87
121
74
118
69
78
120
93
131
83
80
99
119
131
137
120
94
156
99
88
109
99
100
94
123
139
94
81
144
175
76
127
134
83
93
109
80
69
98
102
148
80
133
130
87
69
107
107
111
69
110
78
132
132
101
89
88
154
88
87
107
89
109
94
120
80
80
146
154
147
106
90
69
124
94
115
80
100
69
131
110
93
143
93
93
69
154
115
69
87
76
87
109
90
99
136
117
113
80
156
125
81
69
76
148
107
87
69
134
69
99
80
118
87
72
166
163
155
80
128
99
110
91
146
131
197
80
175
175
154
108
80
88
141
109
119
107
117
107
80
113
120
106
134
147
145
76
150
95
110
120
87
80
113
58
80
69
88
102
109
128
87
153
113
154
120
135
94
113
81
54
169
119
112
80
136
79
78
114
104
112
107
76
78
96
175
99
154
91
147
69
104
103
89
136
76
87
132
69
110
78
110
138
56
126
93
80
91
133
119
80
76
147
128
67
80
69
76
85
130
105
125
110
164
54
87
76
69
72
120
110
127
136
119
99
155
85
137
109
104
102
154
96
115
117
132
156
120
87
89
80
140
110
80
112
69
111
80
107
128
69
83
78
119
154
76
64
121
100
115
112
131
83
110
165
163
87
173
52
96
131
121
88
90
72
112
69
91
80
154
78
106
129
128
88
118
89
132
81
128
87
102
87
154
69
107
131
82
174
78
56
80
72
76
138
78
80
136
89
91
137
123
175
96
126
72
54
100
80
107
111
119
115
58
146
76
119
78
131
80
109
106
197
69
69
80
119
121
96
155
175
76
126
52
107
110
142
123
117
80
89
131
79
120
121
93
119
109
78
121
80
89
151
69
69
88
110
148
94
95
87
89
101
107
146
89
88
83
78
93
75
87
136
69
80
136
89
87
120
69
110
107
80
128
87
175
129
89
119
151
80
83
74
88
109
109
78
112
123
136
112
113
90
56
110
76
99
90
99
116
119
78
74
156
69
140
80
175
85
128
109
87
111
69
74
131
144
106
100
87
119
120
121
106
118
104
83
138
113
105
85
117
120
104
78
101
113
122
94
72
110
112
160
100
78
134
115
107
93
112
94
94
122
78
83
94
80
145
80
80
113
69
98
76
80
85
175
80
128
78
143
88
80
115
126
175
130
80
102
69
176
143
112
175
110
87
78
145
113
78
69
124
54
134
78
102
110
127
76
119
87
93
72
146
104
138
165
69
153
76
69
199
104
120
127
177
163
71
78
106
69
111
76
131
151
78
96
146
97
115
129
120
85
80
104
147
107
117
133
95
80
78
124
69
80
163
120
120
121
92
89
141
113
109
107
107
80
138
163
115
87
114
103
74
123
69
119
93
118
107
143
78
80
69
67
112
162
114
131
134
78
85
106
72
88
128
88
76
97
145
52
133
124
127
131
87
194
112
155
100
156
89
67
174
91
69
172
127
131
64
136
89
69
137
87
71
76
107
67
76
69
109
157
96
89
120
120
121
115
89
79
146
87
108
80
99
110
124
69
80
140
112
116
156
76
131
146
110
197
163
155
78
103
80
158
75
166
102
140
93
116
101
82
125
118
115
140
121
128
121
104
99
89
137
105
110
147
78
102
98
69
88
87
72
123
158
113
134
93
114
52
66
140
72
127
80
113
102
140
123
69
56
134
110
122
77
84
138
80
131
56
128
68
119
175
87
96
78
147
69
140
115
119
80
106
67
94
175
89
119
134
76
69
109
109
144
96
72
69
109
125
128
138
69
132
58
106
69
96
76
56
120
121
104
137
78
90
137
128
120
109
88
123
80
76
134
109
69
107
88
109
91
80
112
163
128
175
144
101
80
127
154
109
80
122
115
175
100
120
94
88
97
76
99
106
131
99
113
108
138
80
131
90
185
136
69
126
69
125
121
85
163
151
101
69
76
87
101
88
109
166
76
166
88
114
107
115
69
120
79
145
133
87
71
78
83
80
98
106
96
114
128
110
113
87
146
146
80
121
122
154
102
72
76
94
145
158
109
123
56
56
101
93
124
82
82
138
127
131
87
114
155
80
88
85
80
76
88
146
155
112
147
111
104
80
120
152
96
120
139
119
104
80
115
64
78
56
112
80
118
80
102
109
138
69
115
72
88
126
80
74
78
69
134
80
128
154
106
151
91
88
110
87
43
80
136
120
111
107
56
87
80
78
175
95
63
112
134
175
134
115
129
152
94
117
91
87
169
104
112
87
99
87
96
76
155
104
134
121
131
197
109
80
109
117
131
91
104
120
119
197
76
94
80
76
147
80
107
81
120
121
193
117
104
91
87
147
117
165
80
76
93
154
80
80
74
113
72
82
107
128
133
145
119
95
107
128
137
78
86
80
185
102
140
78
137
146
110
69
69
88
66
95
134
106
93
119
69
110
73
107
101
89
69
119
110
69
126
80
76
108
118
154
140
76
103
111
106
123
111
120
59
146
87
119
88
88
113
105
132
148
89
139
74
112
145
100
129
115
72
87
89
75
69
155
112
119
104
80
80
80
100
81
110
80
123
109
72
138
56
76
87
201
132
72
104
109
156
87
87
69
197
96
114
80
175
128
87
156
119
111
80
119
72
112
78
69
129
113
106
175
80
71
136
148
141
146
136
80
128
118
69
117
87
99
128
121
76
76
94
104
151
43
164
78
109
146
106
80
88
136
80
94
80
69
107
97
89
78
91
130
88
125
76
85
80
164
109
133
69
107
80
142
88
106
156
99
145
56
99
175
87
69
108
80
107
126
94
110
69
89
154
101
76
76
119
66
93
87
107
147
183
83
151
69
91
69
90
78
89
76
76
52
69
131
143
133
126
147
69
119
93
99
93
136
69
87
106
101
175
88
107
72
106
115
136
104
106
116
129
78
110
136
90
94
197
120
96
132
136
76
128
128
102
151
109
80
109
69
79
99
76
74
80
66
78
120
107
124
130
134
154
80
69
93
151
87
87
132
52
99
104
115
114
131
128
106
110
69
113
92
80
99
129
175
155
109
102
99
132
163
136
130
92
104
78
80
112
94
78
112
183
69
120
99
120
154
79
71
133
76
56
175
150
104
137
104
56
137
80
69
107
69
106
69
69
119
133
100
117
93
104
80
94
106
96
69
134
102
160
154
118
89
175
110
133
128
79
72
120
72
136
127
111
134
99
163
80
72
113
88
172
119
99
80
119
85
69
140
80
98
175
120
163
187
69
105
102
154
175
123
80
138
88
109
107
175
116
90
80
136
89
78
80
92
72
111
145
102
110
114
117
79
141
69
80
93
115
107
115
75
91
80
125
99
52
104
94
74
157
120
110
113
151
99
63
117
153
100
80
87
79
136
100
92
89
132
99
106
69
127
117
99
122
101
121
115
131
69
175
115
137
95
111
89
127
117
114
80
149
113
106
130
141
100
88
146
105
142
80
80
142
175
69
136
117
112
131
131
69
76
93
188
78
120
80
107
119
80
88
90
127
119
136
96
59
121
80
124
155
109
80
87
127
119
76
120
128
114
126
106
80
93
80
145
54
80
69
96
164
121
69
103
110
120
79
76
143
128
80
107
109
134
106
76
72
121
87
126
80
83
89
125
87
80
102
80
99
119
140
175
92
138
80
113
136
89
69
87
118
121
113
89
126
154
144
69
87
155
69
146
69
75
145
78
64
175
67
76
88
89
76
83
128
140
126
154
147
88
99
120
79
80
69
96
107
120
128
131
129
91
100
175
144
126
104
78
69
88
99
109
68
80
96
122
80
89
140
154
72
93
119
73
106
164
154
94
89
80
75
120
153
76
69
85
128
131
76
146
144
73
88
54
108
99
80
76
89
102
80
87
80
134
122
119
97
115
89
121
143
52
87
131
154
76
152
69
148
154
97
120
156
80
111
76
136
112
117
154
118
140
149
130
158
130
72
126
137
120
80
100
133
119
78
52
101
87
119
128
121
109
92
78
100
98
110
76
110
110
121
80
114
95
76
129
88
147
76
78
94
72
102
69
88
69
120
128
154
133
74
78
104
95
87
109
146
124
143
97
94
102
78
72
175
67
81
69
136
152
72
110
130
80
76
115
128
109
109
114
140
112
124
74
201
118
175
107
76
74
107
64
126
54
169
148
78
80
92
119
97
94
117
76
110
80
120
110
120
88
106
96
139
106
93
80
175
156
74
89
76
166
154
110
69
94
97
76
52
80
69
80
164
136
69
121
87
80
54
114
122
80
93
197
94
151
69
117
113
156
100
69
118
54
107
69
132
126
60
64
109
159
127
130
78
106
73
78
137
88
109
80
69
76
124
76
143
99
80
91
111
76
100
135
107
115
52
99
110
80
69
130
131
118
69
75
87
159
69
80
129
69
163
88
104
87
147
119
102
131
80
80
69
128
78
151
80
123
108
78
69
69
69
151
69
101
123
120
96
94
72
85
69
78
120
133
95
139
120
78
78
131
148
100
181
123
175
144
145
67
135
88
93
78
91
72
163
76
140
88
80
89
80
143
76
87
129
154
100
78
113
107
89
95
109
80
69
175
117
102
72
56
163
80
131
93
133
117
88
112
110
80
75
119
174
154
83
117
87
88
85
139
143
80
101
76
112
113
174
134
197
78
154
146
70
119
104
109
130
99
94
87
101
160
129
107
87
96
95
80
113
103
134
96
197
106
136
120
131
56
80
102
72
72
79
76
95
88
96
120
119
87
119
80
80
101
58
52
88
85
87
87
80
151
107
120
99
99
80
125
119
134
99
98
79
115
119
59
69
80
124
71
94
112
171
135
76
80
131
128
69
91
76
67
113
83
107
109
125
127
145
110
75
89
107
69
94
109
72
154
175
69
110
134
87
80
163
163
69
104
87
114
80
89
165
152
118
78
69
88
72
151
108
120
106
92
69
129
69
69
80
112
107
88
80
112
111
99
117
130
80
134
78
140
131
130
101
93
163
89
89
80
89
166
78
93
101
120
175
59
80
69
101
100
156
87
154
94
101
80
96
175
132
155
92
69
134
126
93
69
134
69
109
94
69
107
69
112
119
131
151
134
156
79
140
138
112
104
69
128
80
165
132
128
139
126
91
139
69
80
58
134
110
80
80
109
76
80
138
80
76
80
69
78
52
93
83
87
104
106
131
56
92
85
113
150
94
147
52
128
133
101
112
69
74
89
72
100
137
104
117
189
118
154
69
69
69
134
119
154
80
78
80
112
130
125
79
134
69
128
106
154
101
87
72
87
101
121
163
88
93
78
107
80
80
136
70
91
87
130
153
119
128
69
126
157
104
108
150
89
69
125
80
89
101
69
113
118
90
78
79
124
78
87
96
87
143
154
112
88
154
132
117
110
85
54
69
87
95
131
56
67
112
69
87
131
119
78
96
146
109
89
118
96
197
88
94
134
106
129
69
131
94
197
127
89
120
88
87
115
107
175
119
112
107
88
96
117
63
100
81
104
87
166
69
80
106
146
136
115
80
80
69
110
156
107
52
98
76
146
119
107
106
134
175
101
146
78
129
76
136
78
137
136
93
148
69
80
118
98
138
82
87
87
87
88
66
80
83
109
151
76
80
102
91
80
130
89
85
80
129
73
76
120
88
151
83
91
87
80
131
183
121
76
140
80
156
110
136
119
119
80
118
88
110
85
91
131
109
106
123
116
79
101
121
80
166
136
128
106
123
147
87
121
108
126
120
87
69
88
88
109
106
112
110
80
69
103
140
69
163
72
140
107
140
83
113
151
140
120
123
163
197
120
118
126
131
91
164
76
94
113
157
91
124
120
80
96
118
141
121
76
87
126
100
68
135
121
109
151
132
154
88
138
120
96
131
137
120
119
100
80
96
109
93
88
89
109
110
95
82
107
81
87
158
102
118
76
74
80
117
179
119
85
80
142
96
87
54
121
131
91
91
130
187
87
69
87
175
99
127
87
78
114
80
99
83
103
69
88
102
110
87
91
78
155
109
80
110
74
154
87
80
78
104
88
112
78
43
80
118
69
107
94
119
100
78
87
93
69
110
91
80
112
80
69
148
133
158
80
88
106
146
128
127
130
120
105
109
187
107
69
109
134
87
107
151
145
175
139
72
137
128
80
112
80
111
154
94
109
80
118
69
76
107
134
90
78
125
78
110
118
120
120
134
74
109
137
101
67
140
187
106
175
103
127
89
107
120
109
107
111
140
94
76
152
96
148
74
175
163
144
113
105
113
91
87
96
123
114
88
166
52
117
78
88
109
145
119
69
121
129
121
80
75
138
80
76
69
100
127
151
137
112
122
113
89
120
132
76
123
112
80
115
163
88
128
145
100
100
125
156
80
151
131
134
104
119
69
69
80
175
163
72
136
147
118
85
100
72
80
92
109
151
181
89
80
104
109
76
111
80
76
119
94
123
123
119
106
133
117
87
87
104
124
69
88
107
109
154
98
160
94
146
155
120
127
102
78
104
72
82
90
87
175
69
123
89
109
80
120
119
131
121
148
76
80
74
111
120
89
88
143
134
154
124
90
131
80
133
95
119
136
80
71
118
76
80
104
78
56
110
52
130
80
87
151
145
149
119
88
87
80
155
117
97
117
154
107
123
111
175
91
137
90
80
134
128
117
64
89
118
128
78
80
87
136
88
137
89
140
69
111
80
101
118
76
115
99
80
76
113
72
153
80
91
77
119
127
88
76
80
76
87
136
69
139
106
87
197
80
121
69
87
120
69
121
151
87
103
78
110
69
104
119
104
89
72
78
144
88
83
113
80
185
94
113
154
117
151
66
94
139
96
69
85
110
120
106
136
87
80
76
87
87
90
80
137
154
137
76
87
99
69
160
163
119
102
119
121
100
80
128
113
113
102
69
69
138
87
96
100
97
131
136
146
136
113
76
154
110
176
136
87
118
128
134
107
120
89
134
76
154
93
110
66
87
69
66
128
74
96
110
124
80
80
89
117
115
52
109
197
81
111
136
156
112
74
69
115
128
118
120
102
160
136
72
136
89
80
93
113
98
91
110
133
81
119
131
73
69
94
155
115
87
69
144
128
175
107
115
52
140
89
147
151
69
79
91
89
104
80
144
102
143
93
103
113
199
113
58
88
89
106
154
69
107
80
78
72
101
72
63
78
134
129
138
80
123
94
107
74
80
126
136
128
85
89
109
100
112
95
87
107
87
187
94
156
175
92
99
109
125
185
76
121
94
101
107
88
76
128
76
120
74
80
78
93
72
85
80
91
151
80
79
84
109
43
80
120
119
137
87
102
80
54
99
110
76
80
92
140
104
80
138
121
128
69
174
101
69
109
146
130
139
78
131
93
87
175
104
100
122
156
52
146
80
128
63
131
156
97
96
140
153
154
80
111
87
87
69
147
80
94
107
122
96
145
94
103
117
78
110
155
76
128
80
91
111
69
121
93
131
175
69
146
118
101
87
80
175
104
109
78
94
72
115
80
80
134
87
146
143
139
129
78
197
90
127
80
147
96
80
69
71
122
90
119
85
80
72
67
83
82
119
80
88
134
98
78
80
69
99
116
104
69
88
80
197
72
127
115
92
101
109
94
80
107
80
151
80
115
69
69
80
74
117
54
52
163
113
125
148
146
100
69
112
80
114
109
87
69
80
119
114
128
69
113
78
76
110
88
146
128
69
100
128
136
80
119
127
95
93
174
102
110
91
117
126
104
87
85
107
126
103
54
87
131
87
119
101
80
127
76
117
87
143
56
189
128
175
69
96
114
136
94
156
69
101
76
96
87
102
109
120
69
120
119
107
93
93
120
99
80
101
146
69
78
150
107
128
94
124
76
101
150
140
197
104
107
68
109
69
67
102
96
69
99
135
175
72
145
104
113
93
109
107
127
69
175
197
87
107
134
140
159
91
128
89
94
94
69
91
69
144
146
67
113
106
93
117
88
80
78
80
106
89
89
95
93
69
118
99
117
94
109
151
69
122
104
96
72
111
163
88
91
128
69
112
127
64
101
136
76
87
78
72
87
80
175
140
80
104
106
131
124
83
89
133
104
144
89
80
95
80
120
134
120
137
76
175
87
95
123
87
91
148
127
87
132
152
104
74
127
140
115
106
56
183
120
119
90
146
69
99
87
110
80
131
155
117
102
69
125
156
80
91
127
94
119
101
138
114
124
109
107
109
119
119
78
104
104
134
118
121
87
89
87
153
79
69
117
78
127
146
104
80
89
117
107
104
107
69
154
163
112
118
76
154
89
88
87
76
56
80
106
96
154
64
90
72
96
89
149
76
107
115
93
113
144
119
128
96
175
119
117
91
106
92
87
66
172
112
106
93
131
76
119
120
99
109
110
119
87
131
88
187
110
69
80
128
122
118
69
78
154
87
80
154
43
121
175
104
156
98
95
99
118
164
134
87
64
90
114
119
119
69
128
99
154
80
121
123
87
109
128
96
130
99
78
155
88
117
80
80
54
94
100
123
71
76
105
119
132
121
109
130
69
69
133
78
69
129
130
69
109
128
166
122
99
143
76
94
125
128
156
129
94
107
149
119
78
69
174
80
112
123
86
92
87
80
121
79
89
94
104
113
146
108
126
79
69
66
137
131
72
111
101
135
120
119
89
109
80
98
102
175
100
97
133
107
103
59
151
69
69
78
80
76
106
111
83
76
80
88
117
124
78
69
80
88
134
95
72
157
69
94
87
80
107
52
102
78
109
121
119
80
88
109
151
142
76
158
104
123
120
100
72
58
103
69
103
102
81
113
128
72
120
115
112
125
96
80
140
134
140
125
154
120
89
106
67
117
115
111
80
88
85
163
74
74
189
120
69
104
99
119
90
76
156
94
43
93
89
69
76
103
69
136
109
91
104
113
119
54
94
69
80
102
100
175
69
87
110
80
87
115
136
95
119
143
104
102
122
80
76
110
96
94
101
69
87
121
137
78
102
109
127
113
100
107
118
110
118
72
121
163
163
93
91
155
80
76
69
102
172
87
80
133
87
102
74
72
71
128
117
94
174
93
104
119
126
118
128
149
102
110
100
110
154
91
175
110
112
102
137
125
175
172
52
149
98
88
89
69
111
121
80
80
120
104
100
78
116
80
128
69
144
52
162
113
80
76
111
66
76
69
117
107
76
78
109
76
84
111
98
69
88
147
156
89
102
151
84
96
133
94
83
82
80
87
134
78
110
69
199
175
140
143
94
136
69
80
94
115
92
144
99
131
92
87
80
119
81
114
94
103
52
154
117
175
78
111
87
80
78
80
67
75
157
119
116
139
109
131
105
78
131
102
126
133
109
109
143
91
109
107
80
80
69
76
111
120
56
131
89
154
112
128
69
110
187
106
101
109
89
69
121
127
107
79
96
54
106
69
122
85
175
78
136
96
89
175
175
72
143
100
130
93
121
118
87
119
94
82
94
118
119
183
99
150
82
119
90
80
76
119
113
80
87
89
76
154
197
131
147
87
78
129
52
119
67
93
131
156
120
125
118
80
110
143
69
133
80
76
129
80
54
128
145
89
119
164
128
80
86
52
154
121
87
113
105
174
150
175
89
104
93
142
78
54
109
94
197
93
130
58
162
154
100
89
120
121
115
85
97
136
128
150
136
154
119
76
111
115
119
69
175
121
164
80
100
120
78
136
69
118
95
137
107
160
104
114
43
94
137
154
122
72
120
80
143
52
80
69
175
104
88
136
78
76
72
87
143
91
119
115
197
89
80
93
78
177
88
111
80
118
87
118
109
129
80
111
107
69
88
175
87
136
93
126
80
134
96
80
69
94
69
91
76
93
145
95
93
155
109
124
167
134
137
80
128
120
110
151
120
108
103
99
72
78
88
110
66
80
125
131
122
96
154
146
106
76
69
103
155
91
68
129
78
87
107
69
110
69
80
156
128
56
79
119
56
78
72
85
120
94
82
117
76
87
88
69
96
166
134
124
90
121
131
120
109
69
92
119
120
129
85
73
94
78
110
94
104
150
126
74
117
104
151
100
87
99
67
83
104
71
132
145
93
72
116
80
72
119
100
93
119
118
106
131
157
134
56
87
86
120
93
117
69
155
134
88
69
107
128
94
99
126
154
66
155
128
96
106
130
56
76
136
76
116
101
89
76
122
76
88
76
72
126
104
87
120
106
69
109
75
119
87
175
79
102
155
107
72
99
147
148
109
110
87
117
74
78
90
54
88
119
94
111
69
78
181
109
69
155
123
80
69
85
109
130
154
101
130
80
119
111
175
120
119
140
121
100
69
121
131
146
102
69
102
101
132
121
102
99
87
133
137
76
96
52
74
69
78
112
103
91
172
121
52
78
141
88
78
127
75
120
119
54
96
59
72
88
110
100
128
152
89
80
84
78
159
119
69
101
93
101
136
148
76
63
74
86
131
155
99
89
52
101
140
140
175
138
69
88
69
118
75
156
69
143
154
120
69
109
100
122
69
100
100
107
96
156
134
133
107
148
102
106
80
133
80
78
114
150
78
80
64
160
80
109
147
124
99
89
89
113
76
117
92
131
80
96
113
133
128
88
113
183
102
106
106
78
117
148
131
69
69
80
99
151
122
72
108
85
134
78
78
131
133
155
106
69
113
107
119
87
123
118
119
104
88
134
104
119
109
93
85
134
43
107
145
151
119
78
87
96
80
76
78
78
107
156
89
90
80
130
117
130
137
83
113
134
99
109
109
120
110
143
99
117
112
54
115
52
143
87
73
106
126
116
143
90
185
83
66
119
76
113
88
144
136
120
134
89
144
95
99
107
80
110
69
114
100
76
126
146
117
132
119
83
88
113
80
80
134
175
67
117
109
129
99
78
76
87
114
80
98
117
106
78
151
88
134
131
131
69
80
69
118
122
106
87
157
130
140
74
89
112
117
79
134
154
99
76
113
134
103
106
107
76
78
88
128
126
107
99
58
87
136
123
80
129
80
113
94
128
87
80
80
89
85
96
106
132
119
128
130
78
93
160
43
119
118
91
105
139
69
80
119
137
145
98
79
76
90
111
80
80
69
128
78
87
177
67
82
92
104
128
91
145
60
69
134
95
136
67
78
120
69
80
163
99
69
154
87
75
88
136
80
120
146
110
154
69
67
113
143
54
89
121
52
137
80
52
54
98
76
111
107
175
85
112
56
96
96
69
110
115
69
109
110
103
76
185
120
69
88
151
94
104
113
126
87
154
76
69
136
134
78
102
95
113
131
76
165
72
96
69
69
99
69
87
80
69
128
100
88
98
93
154
110
145
121
87
140
76
87
111
117
99
160
74
119
134
88
69
80
130
119
104
163
95
120
82
87
74
80
126
157
142
114
102
122
131
115
112
117
122
80
72
81
110
79
80
113
80
128
131
72
109
76
135
80
89
106
78
136
155
78
118
89
78
117
87
107
94
126
87
113
95
145
80
104
119
122
76
87
107
205
69
185
127
107
80
106
85
72
90
43
80
80
112
109
80
71
67
93
157
94
154
80
137
80
54
154
87
110
103
136
102
106
112
110
92
69
109
117
107
83
120
99
117
95
110
94
169
138
72
106
118
104
103
101
87
89
93
79
69
111
112
122
69
113
80
66
80
88
104
52
87
95
175
124
163
69
128
92
120
123
80
118
107
154
119
72
80
80
120
94
199
101
88
154
197
80
119
124
118
91
69
78
155
80
112
134
119
72
148
114
175
59
93
87
109
111
119
154
72
120
140
123
151
101
164
113
121
99
133
94
80
85
143
82
152
154
99
102
69
126
125
144
101
99
76
84
100
115
80
69
85
117
109
120
69
88
89
69
134
119
119
64
69
88
76
93
154
103
148
72
80
103
113
104
93
154
106
138
109
69
72
85
69
69
109
109
93
83
175
88
121
155
119
85
111
90
80
128
106
106
113
89
87
130
75
185
111
96
76
175
112
78
136
93
102
155
87
74
72
162
78
88
105
99
132
69
90
80
74
128
153
110
126
69
68
137
80
69
54
133
88
101
120
119
117
88
110
121
87
64
80
78
126
115
183
78
117
72
56
106
154
132
84
111
54
89
125
126
80
162
197
69
104
72
120
117
154
155
145
119
80
96
120
113
69
140
130
113
114
89
101
131
85
91
80
111
69
76
78
80
80
54
80
113
154
120
69
58
80
110
69
102
169
115
69
69
74
79
144
69
80
99
109
87
121
80
107
117
120
129
87
69
78
151
54
78
117
76
134
89
119
121
99
73
76
121
96
99
69
100
94
156
74
58
99
119
88
120
80
56
72
156
76
69
100
76
74
88
71
145
118
109
78
94
120
78
199
99
87
136
163
155
107
76
72
74
89
115
100
80
153
136
80
106
161
119
80
149
101
134
94
117
80
80
139
155
109
87
122
78
157
94
96
116
100
117
149
88
143
89
106
80
88
113
107
127
119
94
137
187
118
109
99
129
104
80
148
80
89
69
99
164
78
109
69
92
107
74
90
164
88
76
87
125
175
69
69
98
147
128
110
111
67
99
107
93
175
140
149
120
69
87
175
115
69
78
119
56
90
74
109
69
134
107
121
80
87
149
69
80
140
109
90
107
87
136
112
116
153
69
89
102
78
78
135
67
80
87
119
120
96
69
117
101
76
121
58
69
113
109
119
82
197
80
126
78
69
117
90
109
69
145
119
154
134
60
107
80
106
95
90
104
112
69
115
113
131
87
82
78
112
69
95
121
117
100
89
114
139
175
111
80
175
89
154
94
66
101
89
80
125
134
140
69
85
120
143
156
96
87
155
118
95
99
80
115
95
113
109
88
80
108
75
69
107
97
80
87
99
99
128
119
78
157
155
109
156
119
120
104
109
130
104
72
100
107
80
119
147
78
76
78
94
146
76
76
144
73
110
64
93
56
99
106
94
132
76
117
121
153
118
87
80
120
126
69
87
120
99
103
145
56
120
123
93
107
87
107
118
147
94
69
83
88
175
151
100
89
117
107
87
112
119
134
96
74
118
87
159
80
88
115
80
78
175
80
80
78
169
106
87
113
123
106
94
78
85
117
69
126
88
160
175
69
91
80
118
78
78
95
116
197
69
89
147
118
130
94
101
69
103
117
87
121
105
94
143
80
107
122
78
96
107
112
107
89
98
107
147
127
80
99
120
88
148
76
148
106
80
154
126
109
123
120
129
120
140
101
83
121
120
100
94
109
80
164
69
87
114
156
89
96
94
87
126
80
101
80
109
100
80
140
145
118
129
78
95
151
69
103
103
99
94
66
106
69
136
162
164
93
80
78
128
134
136
81
121
125
128
83
78
87
99
43
186
134
76
111
87
136
199
121
93
72
101
52
151
169
145
160
113
134
78
69
87
117
80
112
80
100
111
102
163
126
134
80
102
76
69
104
111
78
107
88
136
106
155
106
69
90
74
113
88
87
117
76
134
119
96
96
121
109
99
128
98
87
87
87
96
149
110
112
80
197
130
175
85
106
95
76
78
64
163
78
90
129
131
104
80
69
119
121
107
109
78
80
87
93
141
89
93
128
80
175
97
78
120
110
122
118
121
87
118
99
76
155
150
106
175
69
106
131
138
123
103
119
78
89
140
121
123
94
69
126
155
78
69
90
109
99
127
111
93
97
106
107
76
120
145
106
106
119
100
120
93
144
96
69
88
113
69
80
136
127
120
80
175
87
111
109
78
131
69
111
83
105
114
112
88
69
67
113
89
178
80
101
112
99
120
129
87
91
76
80
136
76
69
130
107
88
119
156
137
106
95
80
117
117
80
131
52
106
106
76
69
80
96
134
109
111
80
111
66
175
82
104
110
69
95
112
93
117
96
175
106
128
78
78
118
89
140
146
76
122
119
72
85
169
78
69
137
97
130
137
87
126
87
140
94
110
131
107
101
78
80
143
107
69
127
107
163
143
72
102
120
129
80
76
116
146
80
128
80
78
80
80
119
129
123
107
156
99
111
197
119
78
80
113
99
154
99
80
175
110
102
110
113
136
90
128
141
127
126
109
131
80
109
80
109
69
80
78
43
72
153
80
75
80
121
99
69
156
80
104
107
107
156
128
101
126
52
80
156
134
136
148
97
69
112
130
112
87
88
134
101
76
131
110
72
113
143
89
100
78
82
72
134
69
106
102
120
134
127
120
137
66
109
134
76
175
87
120
88
113
107
152
69
112
87
69
80
67
69
72
112
69
197
69
197
175
131
120
119
110
112
131
156
71
93
157
119
89
96
69
117
136
119
78
120
128
114
124
106
72
69
99
87
89
183
154
76
128
74
99
110
69
120
87
97
87
107
91
88
94
69
112
127
148
87
160
89
138
96
76
154
80
104
88
176
137
90
120
94
106
124
107
74
106
56
80
123
64
101
69
119
115
80
69
91
163
54
128
102
80
104
111
93
76
80
69
147
123
99
127
66
151
69
107
109
100
88
113
143
101
76
107
104
96
69
121
109
70
119
109
96
101
106
80
88
113
163
174
74
80
163
69
72
95
113
155
114
113
72
108
93
150
75
110
69
56
89
96
88
125
147
78
88
94
110
160
114
111
140
110
121
80
123
52
87
172
98
136
74
80
119
80
87
134
107
56
99
69
172
104
131
129
99
115
156
88
101
80
94
101
93
107
92
121
107
109
80
87
140
88
101
113
80
69
96
119
69
90
98
137
155
101
156
156
113
128
80
88
69
107
136
99
83
155
174
101
130
119
154
72
102
76
78
69
109
76
106
87
66
106
88
119
149
83
117
140
69
119
67
109
106
69
139
91
122
152
145
130
85
88
96
80
145
132
69
72
107
71
54
119
67
131
131
128
128
89
146
87
134
134
128
76
125
106
78
102
130
128
78
164
80
134
78
159
59
93
129
99
110
76
113
106
80
134
107
138
85
120
91
111
115
96
175
104
99
76
52
78
87
121
101
98
80
94
112
100
91
115
87
154
119
80
118
147
154
83
201
137
91
52
120
87
90
151
121
126
69
95
117
89
87
69
80
117
95
143
154
136
106
144
85
130
104
140
104
104
99
69
80
176
91
87
87
87
89
125
154
174
154
128
84
155
78
99
43
54
119
69
102
175
160
87
69
175
134
109
134
175
123
63
127
157
106
125
109
140
110
134
138
154
143
117
114
136
131
175
76
100
80
99
96
88
154
99
111
96
83
80
132
175
87
89
156
107
80
87
120
54
80
118
131
117
87
124
106
129
80
103
136
90
78
128
143
145
89
122
72
80
115
141
69
132
69
154
107
80
106
124
119
76
104
113
109
142
107
106
117
175
112
125
89
140
104
112
113
83
112
80
96
85
136
122
87
69
87
128
146
87
124
83
80
102
112
121
95
54
93
114
87
145
138
96
123
67
151
80
131
104
99
104
76
52
101
133
90
87
82
96
115
80
112
69
175
80
101
85
112
154
109
156
104
76
69
175
120
103
120
89
100
69
80
80
150
101
127
72
88
175
124
142
118
110
151
106
154
107
99
80
199
99
83
88
120
87
134
72
85
146
112
145
119
80
104
80
83
155
91
129
146
78
75
80
112
127
119
69
110
117
87
69
121
80
69
113
140
136
125
133
119
113
93
152
69
76
88
139
115
128
98
130
112
154
109
106
94
110
69
118
107
81
163
87
120
104
148
149
175
120
104
114
119
119
145
117
80
107
80
118
141
75
76
145
109
109
80
89
172
58
56
111
181
52
138
74
87
88
109
80
109
120
72
80
119
126
93
149
69
143
137
72
80
119
128
110
123
69
128
155
147
119
88
160
153
80
111
128
69
177
128
69
138
80
154
121
69
80
112
102
100
121
69
112
136
175
111
78
78
94
128
109
89
115
93
75
127
134
91
66
123
76
76
76
72
154
87
109
69
134
169
90
155
80
155
80
60
80
109
54
120
140
107
140
76
137
117
71
110
91
109
126
102
80
93
122
119
151
69
82
138
80
69
132
95
128
164
91
69
109
76
127
151
197
80
80
142
104
54
155
80
78
100
107
139
104
143
107
136
80
87
134
127
69
78
76
71
113
117
89
145
102
105
103
89
69
80
78
119
85
103
148
120
119
197
91
111
110
117
76
121
120
84
43
76
100
110
80
82
81
90
80
119
80
145
134
93
127
88
107
146
96
43
69
80
69
52
118
87
103
88
114
133
154
79
155
87
163
80
87
128
89
100
134
93
95
84
105
101
101
78
87
86
102
82
136
120
66
175
141
69
63
87
113
186
131
134
78
69
92
134
91
122
143
109
69
90
120
80
80
91
115
129
78
76
163
120
87
88
106
110
129
75
112
80
131
59
87
88
80
80
112
80
122
87
95
145
87
119
113
134
145
69
80
88
104
104
69
132
69
69
151
126
110
106
119
136
156
72
85
128
76
155
107
128
99
83
117
129
100
106
124
78
69
87
69
78
100
113
96
78
153
110
80
115
99
132
99
117
163
96
99
102
127
137
102
109
174
126
87
155
99
131
103
113
68
156
88
76
109
98
101
91
80
119
122
80
88
100
94
131
87
104
104
80
80
80
120
119
126
87
90
78
146
80
79
90
121
155
81
56
134
89
74
52
110
120
112
120
136
109
52
97
156
87
109
108
72
110
88
80
87
124
100
78
136
104
128
69
88
80
122
76
94
56
119
95
105
69
89
87
88
111
139
80
99
80
119
151
95
76
89
99
102
54
80
145
136
126
126
78
99
101
109
148
99
89
119
83
136
80
69
99
78
160
141
93
109
120
101
100
106
106
69
78
80
69
80
93
127
80
78
96
80
119
154
140
112
76
80
109
69
110
90
69
104
103
107
146
106
76
110
160
120
69
136
112
99
135
114
94
123
69
98
110
144
175
148
119
112
87
123
87
175
126
102
107
73
99
201
100
80
91
107
109
78
78
111
74
69
101
197
96
121
69
119
112
115
113
112
63
72
106
110
119
80
119
163
66
113
69
137
131
183
104
128
120
93
110
83
54
91
110
72
106
154
175
88
129
66
73
119
88
80
87
78
106
175
76
110
101
187
79
109
88
56
107
94
91
120
69
79
107
87
74
69
90
175
145
148
145
137
104
78
80
117
140
137
77
80
82
156
117
69
87
76
163
112
76
91
106
54
80
98
99
119
126
143
100
69
104
128
63
108
80
125
99
130
111
87
109
137
88
119
104
122
76
80
175
59
69
101
103
141
128
87
107
87
103
197
69
120
127
137
136
91
115
107
197
119
133
76
127
131
140
109
104
93
99
129
99
115
147
121
129
76
131
130
69
137
145
96
136
102
107
78
80
132
83
76
78
69
115
83
52
69
86
56
120
143
121
43
107
111
101
118
129
112
126
69
131
80
74
89
100
201
148
73
69
130
77
137
154
119
110
156
119
106
145
121
175
120
103
110
69
72
80
100
118
104
87
96
109
80
76
144
96
151
80
102
107
80
110
104
107
109
140
112
163
113
69
121
78
164
181
87
109
78
87
116
94
93
94
120
152
155
88
132
99
69
137
109
89
111
164
136
145
69
95
69
115
120
87
155
93
140
154
87
119
78
126
91
160
106
120
87
80
73
85
128
75
78
80
87
52
97
119
121
107
142
96
122
76
69
82
107
82
94
110
80
99
88
64
87
87
136
136
76
145
87
152
78
101
89
128
80
119
76
101
131
87
132
148
102
112
109
78
104
147
72
105
83
197
88
87
106
69
134
120
80
80
148
80
72
112
80
107
78
67
98
116
72
69
73
72
128
174
76
113
91
117
104
88
93
76
78
112
132
175
87
136
127
87
149
87
111
114
90
99
96
94
114
131
78
112
106
69
69
123
104
109
142
103
94
80
54
103
127
54
156
107
90
69
95
110
87
79
144
99
110
102
99
164
69
175
128
87
121
104
120
80
54
145
115
109
80
80
144
209
106
69
78
89
89
78
69
118
127
107
92
136
131
94
102
120
101
87
99
185
120
69
111
87
154
140
102
87
122
99
89
69
102
104
160
104
154
121
79
56
98
163
80
79
109
140
119
142
109
99
96
104
80
154
120
131
80
163
116
88
131
89
80
122
96
76
148
72
76
121
131
146
120
92
155
80
120
87
131
88
175
69
104
90
137
109
140
87
52
128
96
89
146
99
110
115
80
146
69
104
152
72
156
119
94
99
120
78
111
85
69
69
111
74
60
154
155
112
62
99
134
110
89
99
87
153
151
119
69
124
128
76
121
146
101
102
78
128
137
163
74
116
187
105
69
107
99
91
91
119
86
69
197
89
131
93
69
163
109
142
128
147
129
119
78
107
71
122
78
102
114
56
99
66
156
111
80
76
90
175
121
90
54
123
72
120
76
136
144
154
88
121
138
56
125
104
80
88
102
107
110
112
78
104
127
103
87
94
90
80
119
158
109
74
113
128
69
102
69
76
104
84
87
154
106
156
111
102
69
76
154
87
110
137
147
69
116
101
103
128
99
93
140
78
154
52
149
152
175
54
155
57
54
145
90
140
71
109
137
106
143
72
83
91
89
88
119
121
134
161
69
77
72
111
110
129
88
80
136
88
68
128
104
95
101
117
107
83
112
69
75
102
144
106
80
138
52
120
123
148
136
134
104
94
134
69
123
76
120
76
89
121
107
115
76
174
96
76
160
175
89
87
146
107
127
120
74
121
82
67
111
112
94
52
104
111
105
107
107
145
78
82
154
107
76
101
76
104
72
155
116
80
121
91
143
112
56
95
69
78
127
142
110
76
132
64
94
119
120
176
100
112
80
136
132
67
110
119
131
174
164
91
80
106
66
56
89
115
175
98
54
96
156
76
151
119
110
80
87
115
74
76
197
80
73
107
83
74
175
102
118
125
89
87
99
140
76
69
94
72
80
80
109
77
175
85
87
74
113
124
119
134
90
98
113
134
154
109
80
87
147
91
99
88
87
175
103
123
123
88
156
82
66
175
76
131
150
143
151
107
89
80
118
87
78
78
125
80
96
121
107
106
130
76
78
95
128
99
69
80
149
80
129
80
72
175
134
121
127
94
143
78
89
69
134
94
106
80
87
104
138
82
130
131
120
119
144
80
197
69
120
127
116
114
56
113
175
99
69
156
169
78
76
111
128
90
69
112
98
76
123
154
146
76
100
126
146
80
126
104
109
134
75
69
110
120
118
120
109
76
175
197
69
119
100
52
197
144
114
96
56
145
160
100
163
154
109
112
110
78
69
119
120
152
109
112
112
134
78
54
69
87
80
109
80
80
80
154
146
130
69
119
96
69
120
154
175
120
131
121
120
152
175
101
130
131
104
88
82
125
145
123
88
80
88
175
154
85
78
91
69
110
56
118
99
133
112
80
127
119
67
96
120
110
99
131
88
116
134
148
123
106
124
174
80
110
98
140
131
89
133
197
101
131
80
141
83
104
78
117
159
113
128
197
103
113
106
140
141
127
78
120
87
110
78
128
76
80
147
100
80
89
88
145
74
120
89
89
129
80
69
78
89
146
69
104
74
106
131
88
99
91
85
147
109
166
146
69
69
125
72
43
74
163
56
93
93
102
87
87
78
123
175
80
93
155
187
109
136
87
78
72
88
113
72
118
114
85
128
119
134
113
69
175
109
128
110
106
118
91
87
78
125
131
175
99
103
69
154
90
94
96
113
96
120
125
69
100
120
146
72
142
146
72
101
93
99
108
124
109
54
80
72
124
115
56
88
125
99
69
126
103
164
69
58
69
76
107
82
80
175
94
76
134
72
154
80
54
97
121
69
89
128
148
80
81
80
136
128
138
115
80
134
95
131
93
66
102
138
156
80
105
93
153
117
107
154
72
119
99
131
128
99
69
82
76
95
80
94
127
107
90
85
156
120
106
69
101
121
120
107
80
152
69
129
110
78
100
131
112
111
121
111
93
69
101
64
150
110
80
151
113
175
107
117
119
183
76
80
163
77
82
119
67
142
136
80
119
90
128
100
131
152
119
108
175
110
107
107
122
80
119
97
69
120
154
89
76
69
113
197
102
56
72
88
138
101
102
76
107
97
98
67
115
125
107
100
91
132
94
87
88
69
78
94
98
69
80
89
175
87
146
93
94
105
80
121
69
99
89
140
102
69
76
162
154
76
119
100
102
128
175
80
78
113
104
69
102
96
139
135
113
78
123
98
113
76
69
109
93
94
156
78
145
128
104
80
91
128
120
175
163
101
78
56
120
99
197
140
155
156
90
72
128
72
104
80
128
88
127
128
145
156
128
97
76
138
131
54
119
89
120
122
99
156
69
67
110
78
78
89
52
151
113
142
110
69
78
119
131
127
112
91
85
122
119
153
89
140
64
156
110
119
140
120
69
129
80
106
119
113
126
96
88
80
107
43
109
96
129
115
69
69
140
118
87
154
80
136
76
43
80
94
119
113
108
99
79
93
69
142
196
121
109
93
78
69
69
143
78
56
100
76
112
110
109
131
76
69
69
85
101
93
97
74
151
130
100
99
100
103
69
109
110
101
113
123
118
121
148
132
146
119
95
69
87
185
127
87
76
87
87
80
126
119
117
69
99
100
76
88
76
89
87
56
139
76
147
87
117
98
80
69
149
96
104
52
83
94
96
120
52
106
78
112
159
110
99
141
91
142
66
56
156
104
80
113
120
78
99
99
106
72
115
136
87
80
85
94
120
172
119
101
80
99
113
76
80
104
71
151
120
80
137
104
87
156
54
140
90
78
87
93
107
104
174
110
131
78
76
134
131
157
132
121
93
56
106
87
110
109
147
131
122
136
104
112
136
99
119
80
90
112
88
110
128
89
119
96
78
104
121
80
123
94
119
72
131
136
94
133
68
100
128
111
109
117
69
109
99
112
197
113
127
91
126
52
175
140
118
80
99
175
128
78
156
66
64
78
106
80
99
124
156
69
119
106
58
106
74
121
145
56
74
149
80
134
141
119
96
80
80
112
104
146
156
69
69
117
125
80
54
87
109
129
72
129
151
175
156
134
106
76
107
160
83
80
80
102
80
72
91
140
87
118
133
131
112
80
69
87
100
76
96
116
128
80
69
112
156
137
175
76
78
85
124
152
100
113
95
78
107
89
133
98
128
110
92
80
94
83
72
87
146
107
146
72
137
90
69
128
78
143
84
144
87
119
119
154
80
99
155
175
101
131
76
73
109
96
124
76
172
113
113
115
113
96
113
80
102
80
87
80
78
118
89
87
113
76
156
117
107
100
88
136
76
69
175
76
133
119
80
151
99
145
82
87
66
110
175
123
113
101
114
80
119
175
75
131
94
88
101
117
175
106
106
80
174
138
136
175
125
109
148
101
136
80
117
129
80
120
110
185
137
103
119
80
128
152
116
80
80
175
131
149
151
94
110
110
81
112
119
129
119
87
126
175
88
88
87
75
98
197
80
135
87
69
151
107
91
106
75
165
154
80
118
143
80
147
135
107
80
156
134
96
130
99
80
163
100
109
113
76
128
87
69
121
121
100
109
144
63
78
97
150
91
96
153
87
99
69
80
104
94
75
64
83
120
201
90
98
105
71
131
119
86
96
164
107
96
154
131
72
88
87
87
120
175
117
175
80
85
69
102
113
80
97
80
106
129
87
64
162
156
197
138
83
52
110
154
93
69
83
117
110
127
76
80
113
119
93
113
80
197
155
131
121
88
99
76
119
98
80
152
117
89
100
87
142
153
112
78
110
124
78
89
69
69
83
80
93
83
76
93
69
147
131
83
80
76
90
87
113
120
80
56
76
107
80
80
88
106
120
131
69
88
52
80
136
87
120
85
152
94
67
131
156
87
119
72
88
112
110
143
96
113
76
130
76
76
58
79
150
197
80
93
156
140
82
89
69
69
144
89
80
128
89
175
109
155
76
110
78
115
163
80
74
80
110
96
88
145
89
76
80
148
135
80
118
88
155
94
159
69
94
96
107
119
122
118
93
69
126
76
99
80
85
80
163
88
90
76
101
88
199
140
95
103
99
160
115
87
154
121
108
79
76
80
64
181
137
121
110
88
154
101
80
69
88
182
93
132
128
123
121
80
116
72
88
87
123
133
127
102
87
78
99
69
72
80
162
148
99
154
96
114
87
69
119
76
83
107
87
109
119
67
71
99
87
132
140
107
81
175
80
171
115
78
128
157
197
128
82
71
94
111
121
109
69
72
88
94
105
101
92
95
156
104
124
78
137
74
80
89
120
66
80
96
69
103
87
60
78
97
110
56
163
118
80
138
92
175
91
105
85
115
138
120
60
87
120
105
128
131
80
120
152
84
109
87
71
110
131
154
155
79
121
132
127
120
58
87
87
111
80
69
127
130
119
80
94
96
88
106
80
121
144
112
131
104
87
76
165
155
148
87
119
87
122
95
78
94
120
132
87
78
78
155
78
69
175
145
87
80
80
113
172
63
134
101
154
76
67
96
80
80
98
76
87
99
69
172
95
82
110
94
80
134
69
102
148
181
80
54
120
139
107
175
112
80
85
87
140
69
109
69
87
69
69
149
154
88
103
91
114
107
89
87
74
113
118
150
117
74
134
57
175
110
146
175
104
128
135
104
99
133
71
93
131
121
52
78
96
121
134
136
143
110
78
113
162
107
175
106
93
99
76
136
130
104
111
112
157
107
93
101
68
76
154
111
199
72
109
94
91
74
156
138
114
96
124
96
160
104
106
93
76
92
87
106
130
79
100
131
114
121
109
115
113
71
122
113
107
128
93
155
111
88
128
133
175
88
87
69
78
136
98
52
80
87
138
140
80
99
96
119
87
78
136
107
105
113
95
131
175
134
69
136
103
69
131
80
59
76
205
129
96
78
134
106
93
110
165
71
78
134
80
160
80
133
93
147
110
43
115
91
143
117
87
128
76
127
123
123
69
115
76
175
112
100
87
113
59
89
107
80
87
80
88
150
87
109
128
127
128
87
93
76
69
78
74
117
95
111
69
87
102
88
147
88
88
95
75
130
175
128
87
119
118
59
121
137
96
78
88
83
58
94
92
122
91
89
144
87
114
69
94
74
71
113
117
136
104
80
107
72
110
151
115
113
99
98
128
69
113
80
89
104
87
76
56
89
146
100
80
72
175
96
88
127
120
54
73
156
102
144
120
145
128
96
104
80
118
80
112
197
113
142
151
154
113
122
102
56
88
122
163
106
107
100
133
89
118
80
93
99
56
197
72
72
52
87
69
156
69
124
119
99
126
66
137
131
83
151
69
74
135
131
94
151
69
140
93
87
69
106
107
113
110
80
69
110
109
107
128
140
99
144
126
78
127
80
120
87
136
80
101
113
76
72
96
121
128
80
132
80
69
120
76
76
131
83
69
140
87
74
88
134
106
112
128
96
131
100
104
76
107
74
115
69
89
89
156
140
93
87
69
115
121
118
130
104
87
80
131
80
115
120
80
124
197
78
108
80
137
80
106
103
130
87
87
76
89
149
131
80
127
154
120
162
146
90
109
78
104
81
98
154
132
178
88
149
136
142
120
128
120
129
69
134
94
43
125
126
54
120
78
69
112
113
69
87
80
140
117
99
81
137
136
95
74
154
143
136
80
76
88
80
107
78
137
80
66
110
76
88
89
136
140
78
76
120
80
89
99
83
131
156
80
87
119
91
134
112
102
104
140
69
93
89
69
111
99
94
107
80
143
110
101
93
144
67
69
96
105
78
132
122
106
89
175
134
127
75
88
80
88
74
112
102
175
80
80
80
87
150
175
133
69
131
88
175
128
80
163
117
109
96
106
106
72
72
76
196
146
96
102
72
154
197
88
101
147
85
88
119
71
72
133
89
96
69
80
109
106
136
164
136
149
107
85
82
101
87
142
93
197
78
69
88
127
69
80
104
160
83
88
121
104
80
122
113
69
76
137
131
110
148
131
110
101
80
197
106
131
76
76
96
165
118
96
164
145
175
108
88
69
124
144
130
134
99
126
90
94
110
76
148
80
78
109
98
175
76
133
121
154
76
116
80
85
119
119
69
121
117
142
93
100
99
120
96
78
114
147
109
104
76
69
98
54
72
132
129
136
109
89
67
100
133
85
80
75
128
111
104
88
117
138
182
78
113
89
155
160
123
106
149
96
69
111
87
120
76
96
87
94
94
115
79
110
121
69
140
72
80
124
123
100
115
74
93
141
121
122
128
76
60
78
107
88
93
102
87
119
106
141
115
175
106
134
122
117
120
132
79
87
109
89
164
103
131
76
107
80
69
103
99
69
114
83
75
80
94
122
80
80
123
175
147
125
146
69
76
52
94
175
113
87
107
87
78
131
93
87
96
104
69
69
141
119
106
88
76
119
118
151
114
94
89
115
111
87
76
128
78
107
80
89
140
128
89
80
174
156
87
112
115
175
93
140
155
132
92
110
75
99
115
124
149
163
119
137
166
78
120
107
128
69
101
128
154
117
56
106
87
129
94
96
80
98
120
140
166
181
137
96
154
78
102
80
60
80
87
130
107
94
119
76
127
69
91
78
80
128
87
117
134
103
110
120
69
72
152
89
111
69
117
76
87
107
109
80
89
85
80
201
72
96
86
117
74
80
75
143
109
138
185
80
87
78
162
103
120
95
103
128
80
112
109
175
154
80
120
128
96
80
105
88
89
154
109
107
99
69
69
80
107
78
175
69
91
82
80
111
106
72
80
114
89
120
154
113
77
80
105
77
136
116
117
76
83
117
108
79
75
110
52
162
99
96
76
72
88
80
101
102
87
143
116
80
82
99
132
91
119
78
54
69
110
119
120
104
80
76
139
117
69
111
132
100
131
131
121
69
69
120
74
95
79
160
94
128
156
139
69
80
72
80
85
145
113
93
80
72
128
156
107
72
114
121
117
107
80
121
69
94
57
92
156
72
80
112
80
96
78
78
110
151
101
151
81
128
151
126
80
98
87
98
140
99
121
101
113
163
109
69
76
110
119
119
128
78
136
113
136
99
87
78
111
43
92
70
76
113
79
80
120
87
88
106
122
199
87
76
125
156
175
89
126
88
72
87
93
110
91
131
99
87
80
94
88
99
154
52
80
85
119
80
120
94
69
99
72
69
52
87
104
87
88
100
119
120
136
123
128
107
121
83
142
87
115
93
134
129
143
99
94
128
59
103
87
85
69
69
80
112
133
131
93
69
134
78
54
147
109
80
102
107
99
88
106
117
164
72
80
80
56
76
100
80
99
155
131
87
134
56
155
72
88
121
80
175
118
89
72
117
152
113
88
109
175
113
94
197
121
80
69
90
143
80
87
137
119
88
80
87
175
158
138
80
143
110
199
187
102
129
92
101
164
140
89
76
78
78
117
134
142
80
96
136
79
74
119
145
87
117
106
125
197
72
80
69
80
175
107
123
197
89
88
119
120
69
79
58
69
124
197
78
69
83
78
131
78
136
110
69
126
112
101
80
169
197
107
94
155
119
80
96
117
80
113
164
87
69
101
90
101
114
60
151
164
69
93
114
74
87
131
93
69
128
128
80
69
96
140
121
80
78
149
92
117
155
87
134
113
175
99
140
112
146
80
99
80
100
104
110
136
88
107
106
104
136
87
80
125
154
154
107
101
127
112
112
88
81
87
120
110
106
87
76
123
54
101
112
80
80
175
115
80
102
146
88
102
155
76
106
69
89
112
98
112
162
107
119
133
88
131
80
89
124
156
80
182
111
118
152
137
78
91
88
56
69
80
88
94
99
66
131
136
107
72
107
126
121
121
120
78
99
69
67
100
156
120
102
80
131
175
107
78
164
132
119
87
80
87
114
175
160
104
76
80
80
151
128
78
109
131
78
106
113
115
127
76
137
87
76
87
136
136
69
96
114
112
114
94
78
80
87
117
87
150
96
115
140
88
187
87
58
78
93
108
121
72
147
154
87
102
128
143
113
74
109
113
113
100
112
94
136
69
140
123
109
87
74
103
80
71
83
152
104
91
139
138
119
156
134
85
88
101
69
121
163
121
124
104
88
99
117
78
78
104
111
87
123
131
107
52
122
154
143
80
162
119
137
172
72
110
119
118
131
76
94
99
113
118
140
127
80
69
80
140
52
175
140
95
80
69
74
75
76
163
69
69
115
147
109
78
131
74
69
96
94
144
87
113
80
109
69
201
134
140
131
77
94
113
151
115
145
128
76
74
151
140
137
75
96
107
76
75
69
76
106
88
104
119
80
78
71
101
89
146
80
117
69
104
113
131
134
122
160
140
80
120
91
113
154
85
135
153
91
111
94
87
117
93
134
116
197
131
69
119
85
136
133
102
96
146
109
131
89
118
117
129
124
83
131
117
90
74
145
87
78
126
87
142
152
118
99
120
69
96
78
69
113
102
69
80
87
143
139
143
166
90
132
104
102
72
120
69
136
78
69
100
154
88
91
99
136
80
69
76
131
126
106
88
131
87
80
97
146
88
95
89
134
89
119
120
125
142
72
71
112
72
91
140
76
129
95
118
144
107
163
89
154
96
184
80
99
155
137
80
88
69
109
122
69
88
119
113
117
78
78
134
155
76
69
175
76
133
80
155
69
76
75
80
109
88
80
80
145
99
134
80
119
111
76
88
91
76
121
130
151
112
143
69
69
69
58
122
99
104
66
106
88
80
78
121
80
178
104
147
122
150
108
87
156
118
87
185
112
109
150
80
109
109
120
72
88
118
120
87
85
117
82
69
119
75
120
114
181
87
99
121
89
69
69
152
87
87
72
119
69
133
140
181
134
96
94
95
104
87
107
80
155
134
67
69
88
107
80
128
120
145
68
80
69
156
131
107
175
102
125
80
112
119
99
88
78
143
100
87
87
107
87
72
134
137
78
94
104
116
117
156
56
99
78
119
96
88
95
78
56
197
69
175
113
69
148
138
133
131
104
128
143
148
106
175
102
107
95
126
89
140
109
97
197
76
117
136
129
109
76
144
80
98
119
101
148
56
155
143
131
58
91
118
80
52
88
78
56
122
76
64
166
88
80
99
121
101
120
128
107
151
87
101
155
104
69
92
131
116
164
153
85
79
128
134
99
136
69
157
78
120
127
80
89
80
131
101
109
120
111
155
119
156
80
144
128
72
104
138
107
87
137
104
134
80
153
103
102
130
105
94
76
103
145
93
148
124
101
69
69
107
111
197
106
109
110
181
128
175
148
87
148
69
102
111
132
80
54
181
96
54
119
110
128
87
87
82
76
96
87
78
148
94
54
80
113
81
88
96
69
110
154
120
110
88
119
120
102
154
138
138
52
94
119
148
78
76
89
64
120
99
156
67
80
124
187
94
80
110
72
117
76
76
157
103
89
119
78
128
80
72
80
121
119
80
127
80
146
80
59
139
138
121
106
110
137
82
154
87
104
72
99
114
107
80
100
119
78
74
130
80
129
120
99
134
118
88
94
78
76
154
92
78
78
58
78
175
137
76
128
104
112
144
121
85
131
117
113
112
120
74
88
122
79
57
107
125
85
175
102
103
80
87
80
80
99
72
107
120
87
154
120
115
140
101
74
100
80
56
79
124
85
102
119
131
66
122
102
103
175
76
104
175
91
107
98
80
78
131
130
80
92
87
88
74
87
136
197
100
109
89
140
103
69
120
154
69
151
69
78
87
87
120
120
80
69
128
76
66
80
175
80
89
119
81
136
98
116
120
156
78
67
112
136
128
118
141
87
136
89
101
131
147
120
115
176
175
140
120
175
113
158
90
69
154
120
136
95
93
116
43
145
104
96
76
78
101
103
126
54
80
80
136
120
80
109
87
166
118
109
154
118
133
134
94
136
87
199
110
113
87
69
88
72
120
174
120
69
94
117
106
80
80
155
78
96
80
118
73
80
100
87
119
88
145
69
78
140
117
64
78
96
119
120
140
131
95
145
80
87
172
69
94
114
77
110
69
80
76
52
115
125
78
119
97
78
114
138
147
137
134
90
54
71
111
82
76
151
69
120
125
80
128
107
120
124
126
119
107
117
103
128
122
117
85
87
69
118
83
131
78
87
175
88
54
87
75
77
54
112
69
80
69
93
125
111
119
78
69
87
69
101
64
154
76
130
136
156
80
128
103
103
109
78
69
111
43
137
113
80
143
99
80
80
109
110
80
69
149
113
116
80
87
123
85
80
90
59
111
94
113
106
109
69
126
87
117
113
111
134
197
152
96
175
72
120
87
80
78
91
85
88
110
110
154
94
80
80
80
146
144
144
127
72
85
69
119
111
154
96
140
100
111
110
102
128
87
80
100
107
137
157
139
60
69
197
138
129
93
112
99
132
157
109
109
110
76
110
112
104
175
92
80
99
52
109
155
80
154
131
91
163
117
69
94
127
80
78
119
76
122
134
106
154
97
163
99
107
97
80
158
112
147
106
197
69
88
135
80
76
80
175
54
82
107
100
110
121
109
88
78
76
89
136
69
69
102
115
163
128
119
69
104
132
91
94
80
69
109
80
150
136
69
52
80
100
145
96
139
110
78
79
69
127
76
87
89
102
140
77
85
93
99
128
131
148
87
131
76
154
109
154
140
69
164
76
110
112
136
133
130
137
85
113
114
76
98
116
137
197
76
87
143
134
96
107
112
128
72
80
76
98
111
175
76
76
104
67
113
155
96
140
187
138
133
80
99
94
146
100
110
110
95
126
112
119
119
94
87
110
151
112
52
119
103
104
80
100
104
110
155
147
123
111
79
69
127
88
110
69
117
77
88
134
64
121
94
80
104
129
83
91
78
56
76
148
110
67
84
104
99
106
78
119
69
145
69
156
110
106
119
120
82
94
69
106
104
119
93
127
80
175
95
154
124
110
80
69
76
121
140
90
80
73
87
80
78
104
127
107
143
151
130
185
96
113
67
114
78
68
101
154
98
87
157
78
119
80
92
76
144
80
76
118
128
99
115
120
112
87
95
92
128
119
87
104
96
76
105
69
80
117
114
91
120
100
183
116
133
136
123
82
99
88
100
197
148
72
127
163
85
140
80
71
119
87
80
128
80
78
91
87
140
94
103
145
74
76
89
109
69
87
106
121
96
54
174
78
79
139
80
137
175
156
197
76
87
154
104
163
78
130
80
82
121
117
69
145
109
80
94
80
128
80
129
94
80
113
152
89
87
147
114
78
99
80
124
106
112
131
85
136
78
100
99
175
69
127
78
112
78
119
113
107
89
128
74
112
82
156
69
69
127
78
79
122
154
130
116
120
80
69
106
129
110
155
122
78
93
85
123
69
123
94
94
80
117
121
76
76
120
99
106
131
87
72
87
80
102
80
99
69
52
87
80
92
107
113
80
142
87
90
119
144
80
52
91
102
69
155
134
115
72
110
78
131
139
69
175
72
107
80
69
110
110
98
144
69
56
128
140
137
85
87
87
120
90
121
140
121
140
80
118
94
121
98
175
87
91
104
119
134
93
87
123
85
151
54
120
122
175
88
107
155
149
144
52
136
100
104
112
59
87
128
119
112
164
101
69
96
80
87
58
112
104
128
145
137
113
80
98
154
133
127
99
76
80
76
87
64
73
78
80
103
78
80
80
73
117
130
69
131
66
140
104
69
80
88
107
104
72
113
152
90
78
82
98
157
163
97
107
94
112
142
117
80
131
96
128
75
100
104
78
99
136
87
95
113
69
115
99
126
119
73
69
197
89
106
114
107
113
87
87
80
76
148
69
54
94
111
134
87
87
69
76
80
113
80
64
80
75
100
78
88
152
109
163
101
93
111
94
89
140
87
103
99
69
118
123
91
96
110
96
101
197
136
79
110
128
87
69
121
128
69
114
69
91
88
88
111
69
104
126
131
119
69
80
106
131
132
78
154
119
128
132
101
175
130
133
88
175
155
95
88
109
88
67
80
120
144
93
99
109
76
128
69
91
121
89
201
140
87
89
83
126
117
155
174
76
154
67
120
120
102
92
99
129
59
101
89
94
99
101
120
52
143
137
74
88
87
163
84
64
109
106
89
121
89
154
87
78
87
161
74
69
137
175
87
110
107
87
144
115
78
130
87
80
88
99
80
110
85
131
107
142
119
120
112
54
76
144
117
112
91
151
175
114
69
154
109
110
113
121
76
120
94
118
116
87
54
120
105
99
112
125
107
68
145
93
123
110
94
121
140
125
80
112
91
90
107
78
87
87
69
140
104
80
98
76
119
154
99
120
113
69
87
118
107
80
106
72
174
120
131
95
96
129
69
120
175
154
175
107
106
113
76
111
106
69
78
154
137
69
135
156
110
110
121
98
80
69
90
91
110
99
87
78
124
80
123
89
134
110
152
72
78
119
145
76
101
76
111
80
87
107
128
80
76
112
106
109
91
131
102
52
69
87
143
119
87
120
106
104
56
104
115
120
129
131
107
72
80
89
118
90
80
80
78
119
134
96
145
76
104
92
160
89
58
91
136
107
124
131
142
127
75
80
117
99
119
76
154
140
125
110
69
109
75
96
95
104
69
104
122
109
69
76
104
124
69
136
99
175
107
124
129
87
175
117
75
122
121
117
151
76
110
80
122
132
152
118
69
98
112
128
88
72
147
85
73
113
149
72
120
119
80
69
146
119
87
121
94
78
69
69
117
69
98
136
87
112
152
109
151
80
175
89
69
75
88
87
114
109
87
100
109
154
99
148
132
104
106
85
83
131
183
140
115
72
97
145
152
148
94
163
100
114
106
94
82
76
82
113
140
107
54
137
80
150
87
110
99
148
99
94
99
136
122
107
117
80
140
98
87
151
85
122
110
134
183
69
99
113
127
69
153
110
69
66
151
72
101
175
131
114
69
69
104
175
99
156
76
145
154
80
78
91
164
96
87
69
90
120
129
69
89
151
156
144
83
69
175
169
119
113
119
98
80
84
126
69
95
80
107
88
84
96
107
69
80
89
76
116
90
100
148
197
119
88
151
109
172
134
67
99
73
93
80
92
121
104
88
78
74
93
151
80
106
119
76
142
69
119
89
144
108
121
67
175
110
99
87
100
113
128
160
69
80
109
106
67
128
56
113
69
121
104
74
109
136
94
106
90
80
122
104
103
80
104
93
69
175
140
69
134
138
157
94
99
142
76
87
76
113
60
72
69
172
121
146
59
106
69
133
60
80
96
125
178
127
110
78
112
99
80
116
80
121
106
134
91
145
110
106
87
119
174
132
89
104
76
89
69
120
87
76
134
94
80
94
107
119
80
112
137
87
102
80
125
123
69
77
87
90
128
94
121
145
99
187
115
76
78
145
109
80
90
85
104
78
156
138
197
105
148
101
93
103
119
69
90
80
117
54
79
96
87
175
136
69
80
127
107
109
69
85
119
136
115
80
80
80
120
95
113
100
93
118
78
59
110
96
78
133
118
76
76
69
82
175
120
110
80
75
94
121
102
133
119
88
72
119
66
127
119
78
120
100
131
138
80
156
127
82
151
118
110
76
69
76
76
109
89
132
120
79
86
69
151
88
101
134
145
121
94
175
89
143
87
120
72
107
92
74
119
181
89
134
109
76
94
69
93
120
140
118
175
64
98
72
98
183
175
107
110
149
107
109
88
117
52
118
161
121
87
89
82
76
143
145
90
94
88
89
80
157
119
124
144
79
155
56
154
72
164
136
80
52
69
80
100
79
87
111
175
154
136
87
110
99
71
160
89
80
127
89
91
139
76
99
113
130
162
128
104
130
87
119
99
120
78
113
111
108
78
121
120
80
119
120
72
69
78
78
106
143
96
163
69
123
85
132
100
122
98
78
117
69
75
88
87
197
107
93
110
136
128
152
100
87
136
124
156
69
103
114
113
88
183
120
140
69
121
80
130
87
82
94
146
79
74
139
69
128
87
73
71
119
80
148
106
107
87
78
113
153
101
122
56
80
87
110
76
87
76
80
80
136
119
128
87
163
119
58
80
129
78
108
175
127
155
103
87
87
119
91
69
54
174
114
110
90
91
80
119
88
94
72
87
90
80
89
91
110
103
94
78
89
80
78
76
78
134
69
69
78
154
69
151
137
99
56
110
89
128
71
78
87
154
80
104
109
117
119
132
107
119
126
99
85
107
124
113
156
78
136
72
112
80
128
90
128
83
122
134
80
94
148
96
101
110
54
89
93
109
108
92
89
121
114
119
154
164
122
183
74
91
118
128
128
76
110
112
52
136
80
80
106
175
102
151
134
88
111
180
145
94
69
80
119
80
90
117
76
127
99
148
137
78
69
107
132
102
79
106
145
80
120
113
52
155
69
103
123
120
76
107
72
110
107
154
93
121
91
69
99
146
56
136
69
94
131
126
107
110
87
88
87
80
90
78
107
80
99
113
87
145
147
119
131
72
129
80
69
117
80
183
69
144
98
106
80
122
140
96
119
111
119
80
120
80
76
154
96
101
64
80
119
96
120
85
87
144
155
103
119
78
131
140
124
69
112
88
58
85
113
99
69
80
112
52
131
106
103
128
120
122
69
120
156
78
143
147
130
86
118
78
113
80
158
120
80
72
69
82
100
78
74
130
80
100
93
141
106
84
76
146
156
88
76
83
78
80
98
120
119
108
96
102
163
113
105
140
87
69
114
128
69
110
108
88
117
98
94
56
151
107
104
152
97
80
132
69
110
88
128
52
58
119
101
107
121
138
106
99
120
99
80
76
76
119
76
78
69
80
80
87
80
112
106
134
69
160
117
119
172
97
80
100
74
121
88
99
76
107
111
146
111
76
74
69
143
117
121
98
120
87
121
89
106
94
140
144
119
99
128
72
107
76
113
69
102
154
197
87
155
136
91
72
96
89
119
100
131
156
69
121
91
69
92
98
120
121
78
107
99
152
140
122
131
131
110
76
69
117
90
56
86
121
98
134
80
74
88
120
76
96
89
95
72
87
99
69
76
156
80
74
175
99
85
120
175
111
87
102
110
119
99
110
76
122
54
87
80
120
117
67
154
69
94
69
119
120
128
117
91
69
92
138
99
71
87
69
81
148
99
97
106
88
104
64
88
91
114
104
117
146
113
147
106
134
80
128
112
80
160
94
109
80
83
132
80
78
119
128
132
150
101
107
94
125
89
120
69
117
145
76
99
67
87
127
134
156
69
102
145
107
136
85
103
119
107
112
154
103
109
104
130
80
94
131
111
69
69
88
69
88
112
78
137
175
118
140
197
102
104
209
110
69
91
128
83
96
132
109
146
197
113
78
126
98
131
69
88
120
109
121
118
115
136
124
72
54
87
69
134
132
80
94
152
69
76
80
137
134
117
89
66
56
122
117
112
60
95
118
130
80
72
69
142
126
175
78
122
183
137
117
172
142
148
107
120
93
94
197
130
67
78
117
76
138
120
80
78
69
69
80
120
64
132
90
67
117
80
79
107
114
140
114
72
103
169
106
124
94
88
69
69
78
60
147
133
175
131
90
80
66
76
95
90
109
107
87
69
69
99
94
128
80
131
175
99
160
107
72
108
80
72
119
122
104
134
119
96
113
145
115
149
183
56
94
113
72
134
120
140
78
80
87
120
98
106
107
69
80
107
119
85
164
175
113
83
88
117
99
175
120
134
91
119
76
80
71
155
119
88
114
99
197
99
88
80
130
87
63
104
76
88
144
133
153
87
92
110
117
87
104
140
78
175
85
79
111
109
87
119
67
69
80
99
99
148
110
129
175
69
123
80
123
136
78
89
120
119
128
120
74
120
120
137
96
69
88
94
90
100
118
88
148
151
75
99
80
128
143
82
113
93
127
124
80
72
119
157
78
94
99
90
95
94
134
90
107
107
127
120
96
153
88
69
140
101
119
116
91
121
100
109
186
143
145
69
69
87
87
130
78
104
80
78
89
99
107
93
117
119
78
76
85
134
174
92
87
133
76
87
80
80
141
148
82
119
143
69
87
95
131
111
96
121
107
93
89
69
78
142
99
76
135
140
78
148
144
114
117
154
134
121
110
97
133
109
103
137
134
143
106
72
134
80
123
69
149
69
133
115
99
131
112
117
72
93
118
154
80
106
98
91
72
64
129
146
133
119
120
102
121
125
164
120
94
91
69
78
112
76
126
78
107
122
175
69
119
119
140
80
93
121
140
69
156
111
107
69
107
106
80
107
131
123
69
69
109
89
69
85
123
83
83
69
126
78
155
56
127
94
107
69
143
87
64
147
94
107
140
143
100
52
115
91
78
102
87
78
104
98
112
119
140
80
154
69
87
100
69
101
78
92
87
96
146
101
115
136
96
87
91
120
107
175
88
69
120
79
69
144
80
119
96
69
96
87
101
83
87
110
76
83
69
93
156
78
82
110
87
96
125
110
133
129
123
143
154
102
118
80
154
160
74
80
128
80
69
109
169
124
164
69
74
118
120
69
145
113
89
110
77
91
87
119
72
78
87
127
118
76
94
80
76
52
119
98
113
96
88
113
69
100
69
83
80
109
78
87
69
104
80
54
106
96
76
110
78
76
87
121
76
119
78
69
80
120
137
93
83
87
107
76
104
93
197
147
71
130
107
149
80
106
102
129
89
72
196
99
138
115
108
123
93
132
112
122
80
128
103
91
120
98
96
80
127
128
88
80
69
110
114
117
69
85
78
122
82
93
52
105
88
87
90
120
78
104
59
175
106
119
87
87
112
106
97
113
110
112
103
91
100
122
107
78
125
78
94
114
128
100
76
142
96
80
96
131
98
104
104
87
131
107
113
175
119
75
100
87
145
107
99
119
107
116
147
104
127
80
80
119
90
80
145
110
78
143
90
119
110
107
121
107
136
149
81
94
122
111
89
88
69
80
129
89
117
94
122
127
145
80
52
110
76
111
143
96
121
93
93
99
148
78
162
80
197
69
109
72
127
96
131
106
107
81
126
102
89
146
197
142
80
107
87
128
76
107
151
80
127
102
88
80
131
87
83
72
80
115
97
147
71
85
154
110
136
96
98
134
131
104
146
87
128
78
119
148
69
79
93
134
91
85
136
89
109
172
80
131
103
155
119
89
107
80
94
117
152
89
91
78
144
175
69
107
105
69
83
164
147
119
87
72
155
99
119
117
101
69
126
87
76
175
96
105
154
80
87
104
99
104
128
119
97
107
103
112
160
54
119
93
113
94
109
80
123
80
121
89
81
113
148
76
78
78
112
80
69
136
122
197
80
80
80
93
120
87
100
94
128
114
197
107
85
89
66
117
88
80
104
123
100
80
134
96
76
109
80
69
107
144
96
87
119
87
110
119
88
106
115
155
99
101
193
80
100
73
76
85
78
136
120
99
87
128
69
76
162
69
78
104
89
161
88
140
114
87
121
91
72
88
117
67
128
102
136
175
76
100
76
72
120
80
113
88
134
69
89
69
156
80
71
78
89
89
106
80
136
119
88
77
94
100
109
113
99
128
131
76
106
107
106
78
107
134
154
98
84
109
68
121
117
80
120
94
69
93
80
109
95
76
83
128
69
109
78
113
101
101
133
136
144
129
110
87
119
69
150
109
69
90
69
72
102
78
142
80
80
80
92
78
110
154
111
80
128
87
66
145
103
89
140
99
114
110
56
83
152
104
149
88
110
116
123
80
76
151
78
128
54
76
85
154
175
89
107
160
106
119
111
144
89
80
69
107
76
80
102
98
96
81
72
103
134
100
132
97
136
103
78
112
93
98
154
130
80
124
112
96
119
87
197
94
197
119
131
80
119
111
91
112
72
109
78
197
88
128
127
120
114
80
117
76
98
76
120
104
122
140
127
119
117
76
100
127
99
131
156
94
151
112
98
138
91
122
112
80
120
124
80
110
175
94
80
80
143
148
78
144
93
119
101
80
85
76
101
89
148
175
78
80
140
101
81
85
113
144
104
75
87
128
106
52
136
107
94
69
102
69
146
121
155
78
128
96
87
76
72
119
156
115
121
119
87
79
154
131
107
69
88
94
118
136
89
100
96
107
88
101
106
107
109
109
74
80
98
154
124
134
120
117
78
43
80
76
101
78
88
76
124
104
165
80
57
107
89
115
89
96
113
131
69
112
87
127
126
101
121
121
112
77
80
137
80
85
80
120
104
107
69
64
175
89
138
90
127
98
99
89
137
69
118
78
146
69
80
93
72
121
99
109
76
120
120
69
154
130
150
94
109
117
95
69
91
94
88
54
118
128
69
80
147
69
103
140
69
72
138
80
175
123
163
119
66
119
87
91
197
73
131
98
93
127
87
114
113
81
134
80
132
80
155
101
106
154
146
156
87
103
87
174
104
155
119
117
88
113
148
128
108
113
175
146
82
67
69
120
115
80
89
72
110
107
145
72
91
78
69
125
99
80
87
78
123
121
87
89
76
112
80
99
117
164
110
119
156
99
78
104
197
119
80
78
136
99
165
132
107
78
80
93
132
137
111
83
91
93
80
112
93
69
136
94
175
88
82
96
87
80
78
119
134
112
163
127
111
54
117
69
78
148
88
100
151
99
155
87
140
78
160
91
78
80
78
77
99
121
80
78
56
121
66
112
78
91
120
107
104
82
80
107
76
118
205
100
69
154
99
175
114
102
127
66
109
87
119
94
80
151
108
80
120
91
122
76
140
129
107
80
154
95
160
115
69
94
109
99
72
135
148
129
87
134
73
151
126
119
78
175
87
147
127
75
128
164
81
72
78
78
107
175
72
83
106
89
91
155
175
110
120
122
142
52
185
116
78
104
137
69
69
163
87
102
154
120
87
101
128
108
106
128
76
140
85
69
80
91
120
119
110
69
76
87
146
123
175
102
110
96
100
160
155
54
69
146
118
164
72
84
69
140
120
80
85
85
107
119
134
52
151
143
78
119
87
129
76
118
69
63
155
139
72
151
104
89
72
155
98
69
88
117
76
137
104
119
88
127
56
107
93
155
131
123
80
107
102
75
117
136
127
93
164
100
175
89
110
96
132
67
122
96
93
102
151
166
101
80
138
145
145
121
209
123
142
154
177
89
85
80
128
147
127
69
69
89
88
128
92
80
76
87
117
80
123
116
72
91
80
124
92
111
140
127
143
109
152
201
86
80
96
150
144
80
80
97
175
127
109
119
80
80
56
100
145
69
135
164
78
93
76
69
87
118
69
138
93
109
113
99
69
76
69
119
78
92
117
103
117
107
143
87
95
112
69
56
136
76
119
138
137
93
147
124
90
120
107
119
80
93
122
197
88
100
71
109
119
131
114
117
147
145
69
87
78
115
136
140
143
91
157
88
131
96
119
77
175
128
112
104
80
72
94
78
88
103
91
98
91
80
87
121
110
93
129
80
94
79
52
76
54
128
153
136
80
109
93
94
80
59
74
142
87
69
88
87
154
72
127
69
80
154
91
75
143
94
87
96
74
106
78
99
74
93
117
126
96
110
154
128
95
107
154
105
80
76
111
139
80
96
118
99
80
143
125
87
107
89
106
109
128
163
80
197
119
85
120
80
138
52
119
131
95
88
120
93
104
72
69
89
107
103
107
76
78
109
72
152
88
125
117
91
92
74
85
140
114
78
152
146
80
123
82
69
142
93
80
80
132
91
88
104
100
117
93
197
123
115
113
185
80
87
119
78
69
99
107
78
136
137
87
87
78
80
134
118
85
100
153
162
134
197
133
104
78
99
76
69
120
120
135
69
136
78
97
94
136
154
76
129
110
134
130
127
120
91
99
112
136
136
164
114
69
89
117
69
117
69
131
143
76
78
69
145
80
88
99
146
137
109
43
80
100
100
78
145
80
133
80
95
88
125
69
94
129
74
78
94
78
87
76
145
86
57
139
125
162
79
154
115
136
128
176
145
72
94
78
126
69
78
140
175
122
132
132
140
80
104
104
87
69
131
102
95
80
82
175
78
107
110
80
76
78
119
104
106
95
100
119
100
112
101
123
132
110
106
99
148
80
115
128
93
88
121
134
119
102
113
120
93
69
89
104
80
126
80
69
76
91
128
131
119
199
80
85
89
74
148
99
75
76
101
132
121
99
118
88
76
111
124
135
104
87
80
185
76
87
121
100
69
80
121
69
129
141
128
80
78
80
78
115
166
128
96
117
80
74
101
78
76
118
87
151
75
137
148
80
113
85
174
78
143
80
125
87
101
115
94
114
136
118
88
88
89
88
88
125
119
69
134
131
99
69
76
76
155
69
114
175
124
121
76
134
100
148
88
133
156
80
136
67
127
119
69
91
87
78
99
83
126
76
106
99
76
76
69
69
127
78
110
107
150
76
112
120
84
119
113
80
120
80
131
76
124
110
78
87
106
115
96
134
87
130
96
75
176
93
80
102
80
89
104
80
87
69
76
119
89
96
113
128
128
99
72
124
80
98
175
76
112
155
71
96
129
172
139
69
134
66
119
75
133
88
74
80
175
110
69
122
88
69
101
128
110
134
93
113
120
80
72
135
154
110
79
112
106
111
94
127
129
112
119
78
43
80
142
81
76
115
76
80
109
112
83
99
80
134
69
69
80
164
52
104
87
103
113
87
82
87
93
90
155
106
87
109
87
131
87
90
89
151
118
126
91
94
76
114
120
69
69
118
78
94
119
128
119
76
183
128
136
91
91
110
80
134
94
137
155
109
108
112
93
118
78
128
99
120
154
128
134
109
121
76
101
85
87
94
80
136
99
102
99
128
119
110
88
88
120
69
88
117
120
107
120
94
80
109
110
69
120
112
111
121
80
122
113
80
69
80
101
75
121
80
94
102
76
124
144
99
93
78
96
87
101
76
160
119
78
98
69
80
140
157
160
119
138
76
121
146
87
145
109
88
134
119
174
147
107
115
127
69
95
76
80
143
110
43
74
88
99
87
115
72
163
112
136
137
87
98
96
89
113
102
120
69
136
67
148
72
119
134
88
75
64
129
87
75
99
74
88
80
78
69
94
151
76
80
106
69
76
96
69
112
60
107
119
80
155
69
90
83
151
154
151
80
143
72
119
87
113
84
69
80
118
100
80
175
107
89
140
140
113
80
122
75
69
134
99
122
136
80
169
94
54
69
120
103
118
78
129
87
87
112
140
104
197
125
141
88
110
82
93
114
128
124
96
141
120
78
175
108
110
140
91
199
107
117
69
107
129
122
80
124
56
102
143
91
107
118
80
106
78
87
151
175
76
124
110
81
72
128
109
54
114
145
69
74
136
113
129
80
136
69
107
90
89
114
112
101
74
89
80
112
119
164
143
120
96
83
122
89
114
132
87
117
56
140
111
107
140
115
126
80
119
175
118
112
78
117
89
78
89
100
100
87
143
119
80
101
106
101
74
89
80
103
69
94
151
137
112
99
87
67
57
52
69
111
115
127
152
76
80
102
69
80
69
95
99
109
96
85
154
146
89
114
107
88
100
80
99
93
128
89
114
139
69
118
89
136
107
134
80
104
76
80
160
96
69
130
151
93
118
160
123
107
154
85
69
76
88
155
76
96
197
85
117
139
155
87
106
101
80
54
72
89
90
124
89
109
89
114
80
115
80
72
87
108
103
74
120
76
93
104
85
113
87
93
99
134
128
175
96
113
97
102
109
88
76
97
80
94
88
93
128
88
120
103
101
76
96
94
154
134
69
128
107
175
100
122
156
78
73
96
109
54
60
81
97
78
119
76
120
75
78
109
83
121
88
80
128
106
80
90
113
89
80
89
87
99
126
113
56
94
140
78
165
136
119
131
131
67
151
119
120
88
71
80
69
94
117
131
128
92
107
118
80
107
102
134
76
149
78
78
74
89
128
131
143
112
156
54
119
113
99
88
76
120
87
76
115
146
111
104
145
80
102
137
101
96
151
115
76
134
87
76
78
78
107
112
54
87
78
122
99
76
93
82
128
80
128
87
118
111
113
183
101
115
79
134
76
94
151
99
121
94
107
96
132
163
119
97
113
78
124
96
58
134
134
118
119
87
112
129
80
88
76
59
135
113
175
119
154
201
126
140
154
74
89
101
131
68
72
101
76
154
80
104
127
85
107
80
111
43
78
94
120
102
78
107
175
76
115
112
69
140
119
121
107
130
172
127
100
80
69
69
94
136
43
109
69
143
127
138
103
119
94
119
106
128
87
113
94
87
175
80
112
111
139
97
75
107
88
54
89
67
99
80
148
80
74
121
156
118
80
74
102
159
106
120
119
107
120
74
154
138
69
144
110
80
113
103
76
125
104
71
69
80
87
142
96
130
74
122
87
136
137
157
160
110
78
74
109
93
104
140
92
133
57
138
150
54
76
126
199
121
91
177
128
113
69
143
91
155
99
113
104
80
121
145
120
67
99
107
69
153
93
118
119
112
144
67
69
128
124
93
154
109
131
69
76
80
148
148
108
147
100
103
142
87
86
148
119
72
69
80
120
74
74
124
80
103
113
127
117
69
76
156
80
96
134
104
115
106
107
90
66
76
76
119
56
87
69
116
128
99
78
113
78
100
76
104
90
104
107
122
69
174
94
100
89
94
119
175
91
92
128
159
175
134
87
87
72
99
56
109
80
136
100
123
76
109
85
57
90
59
148
146
80
76
154
102
205
106
80
119
154
110
87
99
66
137
80
80
99
69
69
80
87
80
54
113
134
80
112
145
175
156
78
83
78
76
120
77
125
119
108
113
69
120
85
113
146
120
96
76
80
69
151
91
69
69
203
93
109
90
103
89
69
138
94
201
80
85
106
134
69
80
99
129
134
107
119
95
78
94
142
101
145
130
85
94
175
127
140
87
80
96
107
101
83
80
97
94
127
112
85
87
87
72
87
89
69
92
94
117
128
102
78
69
88
87
69
120
113
80
141
78
95
76
106
69
72
105
69
166
87
143
99
78
87
80
88
143
67
132
175
160
156
126
115
111
88
101
139
146
99
80
101
69
119
144
101
78
78
117
134
126
89
100
78
109
110
156
175
154
117
111
164
87
76
123
88
90
111
98
123
94
69
76
80
76
78
120
109
119
80
98
91
142
78
94
78
111
154
102
91
87
133
164
80
175
76
80
107
151
146
132
152
164
109
69
106
131
175
78
120
76
163
120
120
78
163
87
151
128
107
91
76
83
75
72
197
87
99
69
69
67
69
146
78
130
87
128
76
120
78
68
140
94
99
119
120
134
87
128
80
87
91
107
99
134
69
109
101
149
118
69
87
100
107
114
112
140
87
113
78
111
69
80
118
69
134
126
183
88
117
99
52
185
87
90
140
136
140
91
97
121
132
80
107
107
93
97
88
69
146
120
87
80
69
133
87
91
174
69
80
87
80
109
197
199
120
126
155
107
144
78
197
131
117
69
186
146
92
132
87
72
88
110
145
76
136
127
156
93
92
128
77
76
107
88
106
78
145
64
66
175
100
56
136
80
98
117
118
136
164
125
54
112
106
85
72
52
113
94
76
85
175
201
163
163
128
69
151
127
95
119
88
107
106
95
169
174
123
106
130
161
113
197
149
87
174
125
109
119
83
88
112
145
87
144
119
93
89
93
69
63
114
134
102
110
118
87
128
128
87
104
130
80
102
136
110
100
154
124
137
74
88
100
83
83
146
131
82
140
117
94
114
154
118
143
140
128
121
69
136
76
142
72
94
107
115
146
128
104
121
87
129
69
111
78
118
67
80
69
94
140
88
151
175
99
148
113
78
106
111
163
117
136
128
122
138
110
99
109
78
130
80
194
163
122
85
89
93
78
87
80
89
77
117
119
122
113
134
101
96
127
100
197
154
111
148
89
133
78
78
69
131
107
95
140
128
80
120
87
132
80
88
101
110
107
76
146
113
80
119
107
91
88
80
64
76
80
122
138
123
78
137
118
117
104
104
123
117
69
80
106
163
69
156
80
131
74
69
115
99
146
123
85
117
91
154
76
90
88
157
150
107
69
136
118
118
109
136
112
83
94
110
155
89
151
87
76
119
113
175
93
89
82
91
76
128
93
78
175
88
134
104
154
119
145
80
127
151
98
167
136
78
87
91
114
123
148
74
72
104
74
185
148
68
109
76
80
136
134
101
119
83
127
146
123
160
86
78
80
80
100
130
175
94
119
88
90
69
127
107
88
106
120
115
66
126
124
78
72
90
142
134
87
151
119
121
78
56
64
150
113
101
76
89
76
89
115
80
128
110
62
140
76
99
154
95
106
87
113
89
87
117
69
64
113
99
69
132
79
119
90
110
136
80
89
140
106
146
80
104
78
127
113
134
112
120
80
89
137
69
112
80
140
110
89
138
107
88
120
154
113
92
89
99
148
104
114
111
151
136
87
175
78
119
140
76
131
99
93
154
107
112
131
120
88
110
91
72
67
69
76
109
98
128
131
112
89
120
69
69
131
54
115
78
119
94
91
78
119
80
79
120
106
112
144
151
80
107
128
78
78
155
74
80
126
138
172
80
138
96
88
129
137
134
113
98
128
131
145
121
163
118
74
105
155
123
96
147
107
128
120
107
87
76
142
109
76
140
88
120
88
113
87
128
121
91
80
80
96
120
79
110
92
80
80
136
137
78
151
145
119
130
119
106
56
80
163
88
64
127
102
106
69
132
128
80
128
69
107
144
76
87
72
103
74
156
72
97
109
135
87
175
90
80
69
144
80
131
78
95
87
129
122
151
90
117
145
85
89
163
89
80
96
175
88
148
110
107
87
76
87
88
118
122
114
124
100
109
101
69
78
56
128
78
106
104
99
134
92
175
60
110
134
54
69
107
106
119
67
136
97
69
98
80
115
56
121
69
76
78
115
175
131
80
110
80
98
78
115
93
76
133
120
140
88
88
78
140
72
80
93
153
69
80
91
72
140
69
197
87
96
122
74
118
82
80
163
115
93
101
120
127
107
81
128
88
96
111
94
74
54
96
145
80
134
140
87
148
69
94
91
119
111
93
80
96
175
128
83
201
80
109
175
80
199
96
121
154
143
128
96
91
119
100
78
107
104
91
112
163
76
79
140
119
69
99
72
122
143
72
155
96
104
113
69
157
197
91
89
164
175
95
54
175
74
112
122
114
138
106
169
91
87
74
99
134
80
87
69
76
87
72
134
106
84
99
99
80
140
80
109
113
149
76
106
134
84
79
76
99
87
129
106
140
72
69
114
163
119
104
80
96
150
104
78
151
93
122
106
121
69
99
119
117
80
121
89
69
120
59
78
160
56
69
88
197
80
109
91
87
96
87
107
137
87
123
87
129
80
80
124
99
68
99
87
133
80
119
137
107
129
80
87
122
175
136
111
104
87
110
67
120
102
175
99
94
151
76
107
72
121
134
152
138
154
130
143
145
109
193
106
104
80
123
136
76
131
86
80
80
87
154
119
69
104
91
110
123
97
143
115
111
128
93
128
104
154
110
152
175
94
117
175
94
72
136
106
124
115
76
78
126
127
134
92
109
124
98
106
87
80
119
107
96
100
80
154
87
99
118
143
143
118
56
131
133
112
136
69
87
52
124
122
93
128
93
117
69
113
156
155
154
119
69
80
88
87
80
140
88
118
107
88
87
145
85
119
119
119
100
80
68
109
76
118
72
143
80
88
78
80
106
130
113
110
119
80
154
107
133
78
76
106
80
95
128
156
134
110
151
114
80
122
87
145
78
113
123
99
89
87
120
183
80
128
127
120
99
175
169
106
119
109
117
159
97
76
130
119
107
140
80
72
80
76
76
162
112
80
78
107
78
137
123
128
127
80
113
144
104
124
78
80
131
80
117
113
156
95
114
88
80
88
80
126
80
126
89
76
76
112
119
98
99
119
87
69
88
69
87
87
80
127
66
80
134
209
153
175
107
104
144
145
141
67
80
76
136
117
82
134
156
160
120
99
133
155
99
113
134
151
118
111
69
123
94
128
52
88
106
83
78
122
170
78
98
85
80
99
155
89
87
69
80
106
43
89
128
91
151
94
56
102
80
118
80
112
144
83
121
110
76
119
69
79
175
77
91
107
76
69
69
164
107
135
80
114
127
89
78
133
99
134
95
112
93
119
101
72
88
110
79
69
141
174
134
119
116
54
87
137
114
76
84
82
143
138
112
145
140
88
80
91
118
72
129
103
145
80
127
85
54
56
52
145
69
140
123
157
94
119
118
162
95
69
101
103
131
122
80
119
128
110
122
80
80
76
74
80
134
70
79
159
131
107
88
59
99
80
151
124
80
82
80
76
118
124
103
120
99
118
115
119
122
130
88
131
69
105
144
74
172
91
100
72
102
175
110
156
94
130
111
104
87
183
140
83
120
69
131
87
106
106
107
104
64
80
126
94
76
129
175
132
102
100
80
107
163
139
145
145
137
80
143
80
137
123
131
96
107
175
156
146
69
59
112
56
110
92
76
85
154
78
69
89
155
76
160
92
156
109
126
78
156
67
148
94
92
80
80
209
74
119
104
76
117
100
80
78
155
101
76
69
95
114
99
130
74
133
87
154
80
128
132
69
128
91
71
154
69
154
75
109
88
69
163
155
143
110
69
136
85
112
131
109
163
89
76
154
131
121
69
84
119
69
88
112
150
88
76
175
117
43
69
114
130
100
112
103
120
118
91
113
128
103
88
80
80
111
113
146
117
80
80
110
87
87
104
136
116
76
121
100
92
91
108
106
130
131
87
125
152
119
109
110
43
80
122
112
99
69
101
52
119
76
136
110
99
119
99
110
119
156
94
146
124
185
69
183
80
118
72
109
99
119
89
119
145
143
91
119
87
101
146
89
189
78
93
142
117
154
99
74
131
78
110
115
110
126
130
107
89
160
110
74
142
107
72
121
69
138
115
146
95
128
80
151
132
104
123
140
94
145
58
104
122
119
121
102
87
169
199
142
140
91
69
121
76
69
197
88
101
106
72
83
99
175
119
107
80
78
136
83
89
110
78
101
94
89
101
132
66
88
110
69
106
101
96
145
109
155
124
130
147
87
106
94
69
87
110
87
99
109
153
151
80
134
80
97
107
113
107
175
90
146
69
78
80
117
69
69
96
94
74
94
106
134
122
52
120
69
100
80
126
113
154
101
87
127
118
112
80
78
67
80
155
134
101
156
84
181
168
145
92
107
96
111
107
138
99
148
103
86
112
54
87
88
111
83
175
99
80
107
67
76
102
119
124
74
80
67
97
113
80
69
104
120
175
89
120
135
68
175
80
140
125
89
119
104
80
126
99
90
78
174
114
72
118
107
121
96
104
175
140
78
196
93
113
87
80
93
154
69
107
87
102
78
107
100
126
92
107
134
121
99
104
126
131
109
145
95
115
132
134
114
80
110
155
119
147
146
80
80
91
74
114
110
80
154
76
103
78
125
80
80
99
101
72
76
80
128
99
95
104
92
69
105
144
100
117
99
71
69
72
106
76
131
78
101
134
99
155
91
72
146
128
140
96
74
85
123
78
75
134
91
125
78
117
110
80
119
96
155
109
128
82
66
175
80
127
87
113
115
87
175
107
87
80
109
69
104
117
85
76
104
135
69
110
113
54
69
80
69
121
87
107
93
89
87
104
120
69
79
154
79
104
59
80
66
138
143
113
130
78
117
117
107
155
96
80
165
154
147
66
136
96
175
80
99
81
93
88
54
77
69
80
118
87
67
134
52
80
87
76
134
78
104
110
78
87
163
155
154
87
69
124
122
100
75
127
99
145
128
120
187
80
151
101
96
131
93
85
137
76
145
93
118
79
128
185
101
175
147
111
69
88
95
78
115
92
99
95
94
113
175
175
91
72
144
175
87
69
78
88
126
108
145
136
69
111
78
119
215
117
101
99
128
76
69
68
72
148
138
90
93
87
128
69
110
110
120
172
87
109
138
133
120
87
123
154
69
104
157
103
80
131
69
76
79
124
152
56
131
161
87
95
78
69
119
94
163
119
111
127
90
102
76
131
154
112
110
128
128
156
87
85
140
72
79
94
80
71
109
80
131
119
119
145
175
56
128
145
92
129
107
128
89
94
76
114
89
175
94
88
129
87
154
78
136
80
139
74
121
185
76
78
69
98
111
75
113
76
112
117
103
98
83
69
175
76
80
109
87
78
56
76
106
87
144
93
96
137
145
131
128
95
87
174
121
134
155
80
156
96
93
99
107
99
87
119
154
74
119
130
67
199
94
96
89
99
80
131
148
93
80
69
76
131
115
148
128
165
78
123
74
99
122
126
78
114
102
111
137
78
165
80
125
137
101
87
156
78
87
80
88
90
112
174
109
69
69
128
175
74
128
87
64
132
113
123
120
76
119
117
67
76
120
95
89
78
128
140
80
156
76
110
127
104
117
143
80
121
175
165
78
99
136
94
121
64
76
99
76
111
145
127
101
114
160
139
131
101
122
114
64
69
80
87
57
100
154
119
69
145
163
117
100
197
80
109
80
147
78
154
80
147
87
120
120
80
175
69
113
76
104
83
113
80
122
110
91
82
69
133
157
175
99
69
156
128
131
112
54
88
76
99
111
130
69
138
80
112
154
156
101
87
133
75
141
129
43
52
130
131
80
100
134
85
175
85
80
145
94
80
66
128
69
110
69
166
107
152
95
146
120
93
175
115
112
187
156
119
164
58
69
122
96
110
118
113
110
78
107
98
137
120
80
91
116
110
132
119
75
94
110
107
76
112
88
69
76
125
143
134
93
151
175
117
121
76
163
151
151
81
155
115
76
151
126
113
72
99
80
99
69
56
121
54
52
87
99
131
87
69
154
138
129
99
131
110
83
76
114
80
85
156
160
117
87
91
108
85
80
69
143
136
90
106
78
67
69
155
106
115
103
110
76
88
99
136
94
106
119
80
80
87
146
134
74
78
124
64
138
54
120
107
91
118
87
79
80
99
107
101
80
89
109
69
78
147
107
112
78
80
154
80
69
120
131
131
43
88
102
104
138
156
118
110
154
134
80
197
160
118
69
143
131
151
136
133
163
76
136
100
120
69
103
106
163
140
94
54
107
80
94
93
152
74
78
120
120
100
136
106
88
175
156
131
120
87
103
69
132
69
69
144
151
121
91
175
76
69
175
96
140
113
151
52
154
123
129
146
80
78
94
88
134
109
87
76
69
96
93
114
134
91
134
118
69
107
80
69
76
104
107
76
80
99
154
119
80
99
109
175
88
69
68
106
69
69
78
197
128
88
83
123
113
131
69
164
85
89
175
91
122
72
131
78
87
80
76
128
99
163
100
134
120
100
140
91
93
110
127
119
169
93
101
69
54
88
80
72
68
69
91
119
78
117
128
126
76
117
115
78
95
94
148
109
111
89
93
99
99
129
96
127
120
107
78
69
125
197
172
106
197
91
76
159
69
43
89
99
104
78
109
87
95
128
155
80
91
119
76
79
114
109
80
87
78
151
93
107
56
66
80
123
104
140
155
59
143
152
109
197
114
102
60
119
99
128
87
115
80
120
104
107
136
74
124
54
118
120
175
137
131
115
80
146
89
76
69
98
119
80
157
80
146
76
109
80
88
96
100
87
80
111
78
80
83
69
69
96
113
128
78
131
144
74
80
110
87
145
127
88
145
123
93
79
110
96
101
101
69
117
87
78
110
127
81
99
174
119
100
107
80
93
96
151
87
87
117
106
67
107
82
100
91
175
69
101
102
69
88
140
78
111
106
94
82
104
99
163
110
76
110
96
94
114
80
118
72
85
69
80
145
69
134
80
102
108
136
93
100
76
103
143
155
80
80
69
91
104
69
166
98
128
114
80
117
74
98
66
80
72
119
109
111
150
80
106
119
104
109
89
99
87
154
104
69
160
98
87
103
93
72
86
152
107
88
154
94
52
118
78
85
98
121
76
104
90
183
80
107
105
85
69
113
69
121
109
94
141
93
78
80
136
69
71
101
146
122
52
78
80
107
127
54
87
80
119
174
118
152
76
126
115
119
175
74
89
154
78
123
80
56
80
109
128
128
121
69
89
136
93
99
78
79
104
88
122
122
80
136
131
80
89
94
102
111
106
99
130
143
119
100
107
80
109
140
117
175
134
85
94
109
117
93
108
121
119
89
43
120
117
110
160
71
154
100
131
148
89
85
80
87
80
136
116
141
109
87
75
155
120
89
175
80
69
183
151
104
87
76
93
93
124
112
92
125
120
91
139
104
96
109
89
145
118
145
131
107
103
96
124
134
74
80
80
72
116
80
106
101
106
119
123
106
52
72
110
88
175
164
94
110
91
110
107
145
119
128
107
54
88
131
80
83
133
91
80
175
104
89
113
174
100
88
104
112
86
78
165
120
93
111
115
80
174
90
136
80
118
75
133
76
89
130
113
117
87
172
90
107
111
92
71
119
130
87
88
96
127
69
96
121
117
120
85
80
88
113
96
118
106
119
122
131
91
108
155
145
98
80
130
129
164
156
99
99
87
155
94
89
80
128
99
151
99
109
98
119
80
136
85
74
54
66
156
118
108
80
148
89
80
113
78
106
149
137
80
94
94
117
197
110
113
155
107
175
94
145
85
69
145
127
78
87
121
109
111
146
107
136
107
79
101
110
125
125
89
117
110
109
88
107
101
175
101
117
120
91
80
69
94
88
80
72
197
82
110
114
80
87
112
175
99
87
80
69
89
106
131
156
102
94
121
78
86
87
78
80
112
106
119
118
80
121
134
178
199
80
52
78
99
121
120
118
93
128
114
130
131
87
93
119
126
88
104
119
122
129
112
100
87
118
130
69
76
111
104
78
143
76
136
131
94
104
78
119
100
94
155
58
88
208
99
85
141
154
151
150
80
76
69
87
119
109
137
113
80
99
126
113
119
136
172
92
120
94
76
107
112
104
91
137
87
80
106
215
88
89
90
89
74
96
104
88
119
123
120
69
80
116
145
89
69
54
120
113
103
87
126
106
69
197
119
93
109
119
101
155
156
110
90
87
110
80
80
131
127
99
75
104
101
69
185
60
130
93
175
134
99
103
100
109
102
106
134
107
136
78
79
87
120
85
80
89
110
137
80
122
175
78
85
118
69
112
113
98
89
120
96
134
110
69
80
119
69
145
69
175
122
91
76
136
123
91
59
83
146
78
59
69
128
109
120
98
174
119
120
111
109
151
80
112
71
115
80
89
78
69
88
83
120
94
80
119
87
119
93
121
131
109
89
80
89
111
136
138
113
69
108
101
129
68
119
89
72
151
80
76
104
107
80
146
131
96
121
69
85
154
98
128
110
91
131
174
125
72
99
104
136
110
110
113
69
120
122
142
135
72
175
56
72
54
87
121
113
109
90
110
110
155
183
96
129
121
100
89
147
127
67
80
94
127
78
69
80
103
99
109
80
67
69
107
90
119
72
110
118
163
104
119
113
88
113
107
123
66
69
80
130
69
78
107
69
118
145
101
115
154
136
89
146
107
132
112
69
109
80
110
94
107
140
109
87
69
80
78
107
69
99
119
102
90
122
129
155
104
131
135
131
127
131
109
78
117
104
90
113
88
76
78
120
97
145
106
120
147
144
96
87
119
102
144
110
85
80
112
119
66
127
80
112
78
108
110
107
93
87
134
69
128
103
107
95
109
136
79
80
106
120
107
94
103
89
80
92
120
100
148
121
110
113
139
80
113
78
88
140
91
69
80
175
102
76
95
197
99
151
119
119
132
134
69
88
89
80
134
107
119
138
120
87
199
114
78
92
80
76
87
106
119
91
80
110
89
136
52
119
69
69
123
101
93
154
69
160
156
80
128
140
79
113
69
93
100
145
80
132
80
66
69
78
74
106
109
102
84
99
80
132
124
80
78
93
80
119
99
82
83
80
97
98
154
165
103
132
87
80
154
93
91
88
96
134
165
100
76
94
136
104
169
134
130
98
75
83
120
78
92
112
109
78
76
175
69
136
119
72
114
94
110
52
107
154
185
69
123
119
101
87
121
69
154
115
78
69
80
122
155
80
133
125
126
118
80
72
94
80
67
134
120
134
112
110
69
56
87
119
123
145
109
95
82
52
52
76
146
151
67
72
69
142
197
88
130
111
99
69
123
89
80
128
151
109
155
112
80
69
101
126
120
119
80
105
155
115
151
99
208
117
85
111
107
124
143
103
110
136
80
143
69
154
121
122
131
87
85
109
104
147
113
129
151
78
154
67
87
140
137
43
76
110
132
119
113
102
54
124
122
82
143
104
119
99
106
89
109
79
156
123
72
122
154
121
87
119
112
87
201
113
54
72
85
119
119
88
69
80
110
80
82
113
116
64
137
74
126
113
121
131
88
154
104
127
98
69
97
80
87
80
96
120
80
86
118
131
89
91
69
139
97
93
129
140
136
94
134
104
120
93
115
155
87
120
109
87
119
72
87
69
132
67
134
130
80
160
154
88
89
56
87
89
67
79
156
143
88
68
114
69
106
94
85
124
78
128
87
80
87
80
75
80
109
66
69
96
118
69
146
109
101
120
115
96
60
114
80
78
128
112
120
109
111
87
104
119
132
93
69
76
144
43
80
94
85
72
175
109
154
96
93
79
175
88
94
170
73
97
104
91
118
120
114
117
119
112
88
111
128
100
89
175
69
98
175
87
117
111
156
124
100
80
119
82
80
151
82
134
80
120
113
136
94
91
76
76
197
109
136
107
109
91
187
90
137
128
91
67
119
95
87
155
74
76
147
127
119
144
87
102
107
93
99
111
80
121
80
99
94
94
128
69
80
133
87
120
106
78
87
107
88
150
164
106
106
109
127
76
69
125
129
119
76
104
87
140
80
69
113
134
107
87
119
82
155
94
99
88
113
155
89
117
87
109
175
78
78
124
120
80
76
99
76
112
112
90
113
78
89
100
80
80
54
136
197
69
111
89
87
125
112
72
87
80
76
91
69
89
119
82
109
151
87
110
107
119
140
69
94
109
69
76
104
136
80
99
119
112
72
117
131
112
69
69
153
87
117
109
127
101
128
131
69
162
85
140
107
104
131
56
134
72
105
116
100
121
102
104
95
68
87
136
80
158
107
120
87
138
95
99
137
154
132
101
144
92
131
100
104
80
144
43
94
119
118
104
78
78
91
71
69
78
126
99
104
129
166
80
69
93
54
120
100
76
128
129
87
128
130
140
109
112
69
121
119
87
80
80
112
109
120
118
80
119
102
78
93
71
110
181
129
110
112
109
130
101
110
89
97
134
69
109
76
80
122
72
107
87
88
89
145
163
146
136
94
93
197
107
102
117
73
121
76
80
67
132
151
78
87
89
119
87
177
174
78
117
80
113
120
137
110
131
132
80
100
119
109
80
87
134
94
100
109
76
69
109
107
80
117
106
88
87
136
80
111
85
99
87
69
76
89
80
94
80
150
117
113
109
117
69
76
146
72
94
117
94
154
80
56
127
122
143
95
82
97
94
119
78
116
76
131
100
88
75
80
122
87
73
135
117
163
131
154
156
183
78
116
113
94
145
85
119
109
119
112
175
69
89
87
131
131
78
151
78
101
118
121
43
131
80
107
113
181
136
154
140
88
76
89
99
88
80
134
80
121
80
152
151
136
149
100
132
118
115
80
80
119
154
130
77
87
69
87
156
118
102
113
116
121
85
87
93
113
110
156
124
127
129
117
141
93
78
76
116
112
123
67
80
106
131
156
69
145
69
143
175
131
119
160
100
136
119
127
80
199
88
76
96
78
107
163
199
120
110
69
69
80
88
121
58
88
156
87
112
119
125
80
84
120
71
69
117
136
93
120
106
109
79
152
87
104
175
87
69
52
80
102
80
76
100
120
131
87
88
164
80
83
143
134
94
142
107
87
113
119
102
80
109
88
99
103
155
87
76
164
71
80
76
76
136
69
151
114
120
71
155
160
134
104
118
80
69
105
83
107
69
140
87
125
126
115
116
106
87
199
199
131
64
126
101
94
165
120
151
87
115
101
114
96
80
102
78
104
94
69
69
101
92
101
78
112
80
69
94
80
106
80
80
155
89
87
140
88
66
131
88
136
112
89
90
112
118
109
99
127
143
156
104
129
80
140
206
72
118
164
163
121
83
79
134
154
69
78
143
57
81
164
116
121
120
112
107
169
138
119
134
90
154
89
87
99
81
156
159
76
76
64
132
92
94
72
88
74
119
124
142
124
69
120
99
127
104
175
140
131
87
87
87
119
154
131
78
101
107
93
175
89
87
130
104
150
143
80
87
154
98
131
140
87
126
119
83
175
95
101
117
136
160
136
74
89
110
135
97
78
163
76
112
80
120
119
113
91
52
127
153
69
117
104
87
128
80
133
120
128
157
120
148
80
54
89
95
119
138
79
128
104
80
175
114
89
118
91
90
109
150
87
80
88
183
93
78
107
119
124
100
67
80
122
111
126
117
76
78
150
154
117
118
175
90
131
110
99
128
197
119
89
119
164
121
89
82
98
104
91
85
72
90
88
128
80
103
69
135
89
113
122
107
134
175
80
119
88
85
109
96
120
124
90
197
88
78
93
88
154
91
98
109
69
87
136
131
54
104
133
87
104
129
136
119
69
157
115
69
99
80
56
109
110
107
43
118
146
100
112
69
87
147
83
112
78
175
88
139
113
197
112
69
69
183
87
138
69
87
120
148
87
88
107
101
72
136
80
85
99
131
140
164
87
120
102
69
96
80
175
101
144
119
64
54
162
89
169
56
155
76
75
85
80
175
56
154
66
76
107
124
118
127
128
111
91
112
120
100
66
102
110
113
78
69
142
105
143
94
87
87
114
78
107
142
99
122
87
106
76
115
69
125
94
156
72
87
91
115
69
156
101
69
99
94
67
119
88
67
110
87
106
83
69
197
76
69
94
79
149
197
140
107
80
151
104
149
94
97
178
134
71
69
136
131
69
90
87
133
89
99
79
119
157
94
104
82
85
56
149
175
120
103
96
140
89
88
69
194
98
109
78
89
119
87
115
104
78
130
106
69
123
175
99
112
96
116
54
82
87
152
43
93
142
104
87
103
83
76
120
88
131
128
113
123
107
110
106
128
102
108
107
134
115
140
129
88
88
106
161
80
89
94
163
117
69
109
101
119
94
151
56
87
112
80
72
134
96
87
99
142
76
94
140
98
105
110
126
134
107
115
78
76
163
90
137
119
69
113
80
82
78
107
74
87
127
104
88
119
78
107
155
69
80
144
118
115
134
152
134
99
104
118
137
67
80
132
78
89
107
78
91
104
197
78
89
76
121
107
123
72
145
99
94
155
87
100
119
91
160
155
112
137
152
134
120
71
110
136
106
76
92
154
129
88
118
108
95
161
96
145
114
110
80
107
138
52
117
69
107
102
108
69
128
69
128
136
80
140
80
98
99
107
95
104
127
92
76
99
89
96
120
72
91
100
144
113
110
74
123
80
114
78
130
126
69
94
74
89
133
89
145
215
199
52
76
118
123
181
78
111
112
119
124
87
80
121
110
156
76
69
140
128
93
137
59
146
130
117
142
107
91
110
143
89
153
69
96
80
94
69
119
80
104
113
137
103
89
205
131
120
88
119
106
103
131
88
148
100
134
95
74
121
112
107
94
56
84
130
87
129
130
164
69
107
76
83
119
134
119
102
80
69
112
110
56
80
80
137
78
71
87
71
104
122
151
113
161
197
106
88
78
120
91
89
109
74
117
127
87
92
69
85
87
120
98
154
95
80
69
80
151
154
140
135
137
82
128
78
87
77
99
145
88
109
117
113
154
121
96
142
106
119
175
111
152
134
78
183
89
175
89
118
69
134
117
144
80
163
91
52
127
110
69
43
78
95
106
151
104
87
134
111
119
134
107
101
131
125
121
89
78
64
72
102
106
69
116
131
175
137
79
163
99
69
107
78
110
89
156
110
104
91
139
127
169
60
107
80
87
76
131
87
186
80
80
91
83
131
128
116
99
109
139
104
94
109
87
76
107
99
119
169
160
88
128
78
175
80
69
128
85
99
109
99
121
128
132
119
98
101
72
136
119
120
80
119
117
76
78
81
101
155
56
103
80
52
115
107
127
80
107
52
121
106
122
52
91
106
108
113
175
78
72
128
80
69
141
103
54
87
87
85
85
121
95
136
100
75
82
163
72
115
197
127
88
85
82
80
74
56
76
136
101
87
78
146
87
109
87
128
93
70
137
78
69
82
160
110
107
147
134
69
54
136
94
164
87
122
80
99
87
69
104
127
128
151
134
99
80
119
93
75
154
106
107
87
78
94
131
102
119
181
88
75
78
93
78
100
118
107
69
175
119
101
174
119
145
78
156
108
88
91
197
160
107
77
107
136
102
115
69
78
80
93
88
109
109
89
80
112
93
154
93
124
69
175
93
80
119
157
80
106
69
69
79
91
163
80
89
138
185
104
131
69
131
155
119
115
94
148
89
110
113
181
69
120
95
147
120
91
69
88
125
138
128
95
80
88
146
154
69
104
128
112
104
43
129
160
114
124
121
154
131
119
80
125
164
119
181
90
94
128
119
175
131
109
103
120
125
89
122
143
148
102
134
76
69
69
140
120
80
134
74
120
112
69
69
80
78
155
76
91
94
93
78
114
92
106
69
87
119
78
175
102
134
95
96
140
132
80
69
87
87
152
127
80
78
197
99
140
96
78
72
112
80
106
136
113
197
99
128
126
134
56
69
127
88
87
94
87
107
131
54
134
72
69
93
80
162
151
111
134
93
117
119
107
91
80
160
96
127
106
163
56
80
104
93
156
87
80
96
88
119
109
112
109
69
78
72
154
104
156
143
78
99
101
157
110
120
118
78
111
129
109
119
185
76
95
157
58
78
167
80
103
119
104
104
123
174
118
111
107
80
88
111
89
96
120
134
95
69
131
110
144
64
80
76
69
107
80
130
137
156
136
154
134
107
154
80
69
117
69
109
175
110
136
197
72
113
133
118
88
111
133
151
109
52
122
109
140
72
87
80
106
107
172
122
78
163
87
128
163
107
131
112
156
78
99
125
80
99
110
89
109
119
87
80
119
96
156
113
175
78
80
153
74
76
90
129
69
175
107
140
130
131
124
197
119
129
74
119
69
119
80
119
72
99
121
69
112
95
99
118
141
99
96
101
87
86
120
109
129
107
126
116
96
175
101
110
100
141
115
89
120
197
150
117
94
69
81
136
131
80
101
118
161
103
72
105
86
199
99
109
110
130
80
115
129
76
80
80
101
107
87
147
76
80
66
123
91
69
120
90
80
194
107
144
183
80
109
81
78
120
106
147
134
102
87
101
146
136
120
87
76
99
130
107
128
107
78
185
90
93
96
104
150
91
96
140
87
87
87
88
99
96
128
56
106
118
80
109
89
76
102
91
74
69
140
69
120
94
74
87
118
119
110
146
110
80
110
106
76
93
99
109
148
140
76
80
93
69
78
115
109
120
156
159
100
72
80
87
197
69
69
123
78
155
115
110
131
133
108
69
181
90
76
69
116
85
112
112
112
80
101
106
76
86
103
52
109
150
80
80
97
140
154
69
91
78
151
175
131
112
69
154
175
80
72
80
128
128
87
185
111
107
155
89
175
87
119
119
78
99
120
93
80
163
104
111
78
80
86
68
95
134
80
109
108
109
106
95
114
183
169
175
87
119
119
120
120
96
120
80
69
80
122
120
100
129
117
144
118
93
87
76
137
119
88
129
109
93
87
107
99
127
80
100
89
95
175
91
80
127
80
106
110
80
94
74
113
69
118
76
106
78
104
152
107
87
91
79
106
101
112
80
109
103
128
54
87
128
145
76
89
87
120
101
102
119
109
101
88
151
175
87
113
96
76
95
71
98
137
87
156
54
119
83
77
80
93
175
143
104
69
98
131
87
109
89
113
104
113
102
154
112
80
105
165
87
131
109
119
69
131
136
154
169
80
124
95
89
60
74
98
57
120
107
80
43
105
145
121
69
69
80
136
76
89
146
54
145
119
69
175
109
115
124
112
119
121
69
88
87
154
96
109
119
84
136
134
128
78
120
151
120
136
113
102
146
83
120
124
117
80
88
175
83
89
121
100
78
108
80
197
87
109
69
80
80
100
70
72
87
95
74
99
80
120
109
119
112
107
147
80
87
119
80
76
87
129
80
139
80
104
100
88
125
107
81
119
80
149
87
174
104
96
119
117
136
89
155
111
80
129
123
113
114
69
109
93
78
94
80
72
94
87
94
80
102
121
92
175
99
80
130
102
83
102
134
104
101
99
78
69
100
80
128
147
116
120
80
115
136
93
199
119
109
76
80
69
78
121
100
111
119
88
105
78
78
124
113
87
78
127
91
121
118
120
76
104
87
87
101
109
154
99
120
104
132
112
102
87
127
78
140
120
80
118
78
80
69
109
106
111
93
147
117
131
136
83
99
140
175
128
124
127
109
128
119
109
118
145
120
134
100
72
80
87
110
87
134
128
43
156
155
80
155
100
100
134
112
87
52
97
93
99
69
106
112
109
69
87
120
97
87
104
90
197
151
117
80
89
79
95
80
112
131
69
101
73
106
69
93
99
89
69
69
109
80
94
89
107
78
88
138
119
69
91
136
138
98
104
52
115
87
69
79
117
78
140
112
109
69
78
74
163
197
106
154
101
99
112
69
99
80
197
96
119
91
107
119
69
124
76
75
110
79
87
88
119
116
69
136
69
119
64
87
76
102
80
66
134
154
143
69
76
160
118
126
148
91
175
117
95
114
128
78
107
80
117
76
119
100
85
80
74
158
93
69
119
132
102
102
78
69
146
104
179
148
80
107
80
136
136
107
80
120
146
95
140
58
115
154
119
80
80
69
94
119
69
152
80
107
74
87
110
80
104
80
123
134
137
80
115
131
120
94
134
80
94
134
87
151
123
76
69
138
78
80
134
121
94
76
93
100
89
142
101
75
89
175
102
128
129
89
76
165
94
113
78
128
94
108
86
119
98
153
130
201
90
106
107
69
164
112
78
115
72
69
112
56
118
78
80
122
76
80
151
123
95
154
120
91
69
69
69
197
109
102
119
91
80
126
140
163
88
106
92
80
92
104
106
199
102
128
52
92
163
113
108
80
147
95
87
123
156
111
175
124
93
143
120
104
89
137
129
119
134
99
74
119
112
128
197
175
146
76
80
94
131
156
69
134
80
145
78
156
80
119
82
121
122
80
107
126
80
121
106
117
143
80
69
128
76
87
88
78
78
91
54
94
87
66
136
136
109
94
127
128
119
175
54
80
80
109
89
120
197
99
132
121
69
80
88
69
69
107
76
99
106
100
119
131
110
110
126
148
78
117
111
76
69
131
94
102
120
78
80
113
72
88
156
89
127
106
101
74
102
91
138
96
78
140
80
137
69
104
174
98
146
131
76
107
183
136
101
131
117
134
131
71
69
121
112
153
197
69
126
137
59
80
114
80
132
109
102
76
118
137
178
78
69
87
110
93
162
91
120
106
155
105
89
113
109
80
87
117
79
128
156
124
80
88
146
89
156
119
80
69
129
152
87
78
107
91
99
109
126
69
197
76
70
95
91
113
90
89
128
118
87
115
107
76
104
96
78
110
122
122
122
119
99
100
69
87
92
80
197
99
153
99
80
181
127
127
120
143
69
90
143
133
78
130
73
193
197
104
107
120
92
160
99
175
130
114
185
112
88
76
140
109
91
111
78
72
113
109
69
102
69
76
78
175
76
110
119
109
80
121
120
101
95
127
88
72
128
93
107
109
110
126
117
87
154
117
87
175
74
109
123
127
112
102
113
126
117
80
94
148
80
129
101
72
83
78
112
99
78
148
69
127
78
69
69
85
87
80
107
117
100
119
119
140
84
160
87
100
89
100
113
80
91
78
88
116
75
119
80
94
54
175
106
78
94
96
151
114
119
102
93
80
69
102
77
95
175
146
107
106
154
134
52
106
112
87
76
69
80
104
145
144
145
124
105
120
137
73
102
69
95
78
102
107
56
80
69
133
78
111
117
81
143
120
104
104
128
183
144
87
127
99
107
149
121
98
119
80
129
87
148
99
145
85
80
78
78
139
86
154
115
78
111
127
138
140
105
102
76
134
147
113
102
107
111
136
140
100
78
107
88
80
80
164
155
144
80
112
121
102
89
127
119
99
122
175
143
110
69
109
109
89
91
118
175
154
76
102
78
115
130
87
96
93
131
151
69
175
113
87
93
76
80
136
126
131
85
76
80
118
158
93
197
175
80
99
87
101
69
164
154
121
120
87
120
78
108
156
175
69
119
80
69
89
110
140
80
126
80
67
197
83
131
80
120
80
88
121
69
111
148
87
104
125
102
113
80
107
87
80
143
103
107
88
134
103
119
89
72
87
109
112
80
88
148
91
128
80
76
101
119
101
78
69
93
208
120
146
80
120
76
120
137
92
69
197
112
109
69
110
101
78
74
96
94
137
69
88
69
159
69
69
80
169
113
102
80
99
110
120
113
116
83
111
117
104
69
56
80
84
80
120
78
209
76
120
109
140
113
69
111
81
79
128
136
109
175
106
88
75
88
102
58
87
130
136
87
76
109
125
69
78
87
197
78
69
78
104
80
101
115
80
80
134
121
100
69
113
83
69
112
89
78
123
147
109
90
56
76
69
104
94
94
80
104
136
87
154
76
156
106
100
104
154
117
59
117
119
69
140
80
123
145
126
122
78
80
78
69
89
104
87
112
94
201
101
121
96
72
165
121
119
80
54
123
106
104
114
197
89
106
78
89
81
87
166
103
99
105
87
102
69
90
152
133
159
89
109
76
69
128
165
80
80
69
93
88
69
96
128
67
128
106
94
135
78
120
78
127
78
94
89
120
117
93
134
112
166
143
137
136
80
78
155
138
155
80
134
68
128
118
101
96
120
117
69
197
101
120
89
87
82
113
78
54
80
69
110
119
72
116
91
100
80
160
154
120
114
102
110
94
110
127
78
76
102
69
101
128
91
113
80
96
127
112
136
148
72
175
131
130
96
159
103
111
82
122
87
112
131
78
119
87
72
138
119
164
147
67
109
120
72
117
95
117
154
90
69
109
72
92
148
132
163
119
87
95
131
83
107
69
131
76
99
94
93
43
106
154
127
72
131
106
80
99
108
80
132
119
113
80
78
131
121
134
94
80
89
127
111
99
71
93
80
145
80
154
101
69
52
111
175
113
76
154
113
78
126
157
80
134
69
78
128
78
91
150
128
69
104
175
134
99
134
137
119
101
121
107
120
99
78
117
78
80
136
87
72
99
132
96
76
131
127
80
110
133
133
119
154
99
76
128
134
43
155
78
57
111
87
106
114
87
150
129
80
120
115
145
94
80
75
137
104
135
91
109
89
121
121
88
145
54
56
80
113
69
126
123
166
120
107
128
80
101
151
58
83
52
66
119
89
111
67
136
143
101
80
121
80
100
164
99
92
78
69
80
119
113
93
128
130
152
119
109
103
120
101
93
78
56
113
110
80
134
69
80
80
91
99
135
128
71
134
128
146
124
74
106
89
107
93
74
80
156
107
107
114
69
89
90
120
140
152
43
78
119
88
80
93
87
100
121
119
76
72
96
107
109
69
110
97
76
102
119
120
92
152
120
104
52
120
80
76
97
80
119
80
197
169
69
69
89
201
175
163
84
76
89
88
184
112
104
110
90
128
69
148
133
87
128
88
130
85
183
52
122
80
80
125
143
104
175
118
175
106
138
87
87
120
106
80
110
69
131
80
89
88
113
112
76
69
124
78
143
89
80
134
133
96
80
69
113
94
78
146
87
143
98
129
80
123
113
92
87
80
110
89
127
80
136
163
72
92
117
107
119
112
120
130
114
175
131
120
80
56
101
76
112
78
101
78
93
119
113
81
69
156
80
82
107
88
107
115
54
89
88
69
83
158
89
93
120
131
115
72
106
87
132
80
185
122
95
98
114
99
193
107
76
93
80
149
75
163
197
90
87
117
76
94
159
175
100
118
87
76
80
127
98
107
115
54
175
125
120
88
87
122
115
112
107
109
119
119
89
69
87
116
98
75
80
104
110
78
52
121
130
67
112
121
175
94
89
87
131
175
54
112
119
92
104
120
155
104
100
80
87
140
134
80
119
134
175
94
146
120
93
80
89
119
112
54
164
88
94
138
76
148
120
99
72
69
93
120
76
104
121
155
119
97
120
88
119
80
172
127
80
164
58
89
128
111
128
69
69
122
147
119
54
71
80
163
69
78
119
80
89
80
88
91
128
144
76
136
118
140
140
69
109
130
106
112
118
129
120
112
74
155
80
76
90
80
107
117
154
69
96
145
100
87
134
104
78
76
136
134
104
69
131
117
69
87
80
136
92
120
106
134
99
99
67
148
89
88
109
80
69
69
88
118
134
101
154
133
104
72
128
76
106
100
107
99
80
109
120
106
80
85
154
106
117
80
129
109
80
69
89
78
123
115
103
84
153
69
107
119
69
119
69
94
120
156
148
127
129
91
111
80
99
88
94
87
110
99
88
197
72
109
100
112
88
201
157
88
137
69
80
72
82
132
80
123
106
119
145
83
148
156
69
78
99
76
113
69
149
152
120
100
161
109
80
149
104
120
113
157
78
72
119
80
133
89
120
106
101
119
144
109
89
107
56
88
132
89
80
138
94
109
78
69
119
138
156
67
78
103
78
149
71
163
87
112
78
130
110
175
89
138
128
106
119
148
136
109
75
121
140
69
99
80
109
76
110
78
80
151
78
134
76
80
163
105
125
87
89
134
128
76
72
175
137
138
106
100
119
80
114
154
91
115
82
69
57
112
126
112
76
88
146
87
128
109
109
83
117
134
60
140
101
80
140
128
100
107
76
93
115
113
174
91
129
137
69
151
126
109
74
114
87
87
152
156
69
119
115
80
88
133
78
78
73
175
87
125
69
126
78
106
80
104
156
107
117
88
69
169
69
120
110
77
113
78
154
63
69
78
106
144
75
96
69
99
106
136
80
87
78
88
117
78
89
156
78
122
92
58
76
117
119
110
119
60
90
124
69
88
76
120
140
144
69
151
101
123
52
122
108
107
126
107
72
64
102
94
95
87
99
87
107
88
128
154
67
117
76
83
154
80
134
80
69
95
91
69
127
109
80
69
118
118
94
118
157
102
140
69
76
87
80
140
94
147
88
110
112
110
80
69
88
156
76
113
110
92
154
80
111
133
80
126
153
119
146
77
72
88
128
52
145
69
131
138
151
100
107
143
58
78
91
110
201
80
112
76
92
64
134
103
83
69
113
80
87
140
78
151
157
112
99
96
88
121
80
80
163
94
166
154
163
110
112
166
151
95
76
117
137
128
88
80
69
76
123
144
110
91
107
107
119
87
120
106
81
56
99
80
88
69
114
99
151
128
69
128
66
154
119
103
87
119
107
143
93
110
76
149
131
119
127
69
175
124
72
54
78
154
80
199
119
101
113
134
176
95
144
125
111
102
126
128
58
78
99
128
118
70
78
110
96
80
89
80
104
153
88
89
124
128
99
127
80
138
148
120
134
56
107
113
63
110
110
121
102
111
91
154
112
110
74
175
78
121
69
89
150
112
91
80
79
69
85
140
104
136
71
101
115
109
78
89
96
80
79
80
101
117
80
145
69
110
92
137
127
137
121
54
104
158
87
163
104
69
134
102
54
87
117
96
137
87
131
122
121
128
91
136
118
69
108
114
110
120
131
94
130
56
95
136
100
123
80
69
109
163
120
102
72
118
107
107
144
110
119
115
109
80
88
136
78
136
155
95
78
80
59
103
175
110
102
80
199
104
97
87
169
165
113
136
80
117
95
69
43
147
87
145
120
109
97
117
72
76
78
99
80
88
100
146
87
80
58
102
123
150
122
94
87
78
80
132
103
147
127
78
119
93
101
85
196
154
109
109
162
104
120
131
99
72
175
118
127
128
89
89
69
87
128
87
106
154
93
87
112
78
76
128
111
102
107
117
76
89
114
95
119
87
85
136
96
172
100
130
120
73
96
87
76
201
88
78
149
69
120
145
119
80
81
114
104
106
126
114
201
78
148
99
197
109
147
96
123
76
110
175
151
89
76
98
104
101
76
80
78
72
107
87
110
203
128
80
155
76
140
107
76
143
109
89
93
77
133
88
76
69
80
54
76
99
156
87
76
69
138
87
119
122
104
97
76
78
109
80
117
154
117
109
114
96
85
95
110
128
69
111
80
136
71
88
94
142
96
102
64
66
81
128
123
109
87
119
156
74
128
119
140
54
69
69
91
154
128
140
98
96
95
83
76
69
120
156
93
128
175
104
126
91
107
119
103
175
87
107
80
113
88
78
113
88
120
150
95
128
175
112
131
69
128
119
151
69
175
109
138
98
132
136
99
80
88
99
69
150
107
78
149
82
101
43
87
102
113
144
101
119
69
67
109
88
120
76
175
96
123
78
123
79
59
134
87
74
99
72
93
94
123
78
96
119
76
110
124
110
87
80
68
109
69
100
80
67
74
119
83
128
96
76
110
109
131
119
89
103
75
99
76
113
87
114
120
87
107
117
128
88
74
80
151
136
112
87
115
171
80
175
87
88
136
110
104
106
54
76
106
88
134
52
110
80
104
104
131
69
118
117
91
88
128
80
94
103
89
115
175
110
80
115
80
163
72
94
163
148
107
87
80
76
148
140
91
158
76
101
109
87
126
78
107
155
80
156
131
154
72
152
140
54
134
103
201
148
119
101
87
116
114
80
87
117
138
119
102
89
154
85
89
74
128
80
43
110
164
112
67
119
96
138
122
104
129
136
87
106
145
160
152
54
143
80
121
107
107
151
69
105
93
102
88
131
145
69
163
110
113
103
90
80
111
119
141
99
137
112
145
145
93
85
88
145
91
120
134
69
104
120
87
147
87
119
80
125
78
137
99
89
144
107
113
123
71
79
154
71
138
156
108
140
76
115
120
102
133
126
107
95
99
87
117
79
144
64
147
106
72
109
120
88
119
122
127
151
143
114
78
109
159
155
69
80
119
80
91
110
99
99
134
119
80
90
116
120
112
64
93
57
94
128
99
78
175
104
69
80
101
76
60
72
78
88
99
134
128
134
140
69
112
104
80
69
197
122
156
107
116
78
87
104
130
175
115
80
112
99
101
139
69
120
165
151
83
146
120
83
83
109
96
87
78
87
104
94
128
124
87
80
134
69
80
78
119
154
114
122
87
78
121
69
164
121
80
115
160
145
89
90
96
115
97
131
110
197
83
90
134
155
164
104
142
119
91
80
87
80
141
164
120
54
74
89
76
186
78
130
76
80
72
91
74
93
64
156
94
175
87
78
144
83
91
87
69
97
128
102
104
87
85
115
69
109
109
78
107
136
154
119
128
76
136
114
89
100
115
119
107
154
110
87
87
152
153
52
72
120
87
126
87
89
133
120
88
156
114
82
103
120
138
132
82
113
89
87
140
100
104
125
99
136
94
111
163
163
76
91
95
69
90
93
148
126
80
128
137
69
89
151
89
69
117
128
69
95
80
94
104
124
106
128
128
89
80
100
87
104
100
52
92
88
120
136
154
83
78
108
87
80
80
102
80
99
52
96
80
80
152
95
99
127
149
80
107
119
128
175
89
69
60
109
151
108
175
88
80
140
140
107
80
106
112
89
99
134
151
104
54
80
71
119
110
120
115
119
69
151
131
99
161
151
111
174
197
156
87
80
69
160
93
113
92
104
145
66
94
154
148
146
76
197
96
120
121
128
69
80
73
109
113
87
100
74
101
128
151
78
97
98
130
127
175
101
117
89
119
126
161
85
69
87
136
109
100
69
107
80
119
67
133
151
146
153
145
54
113
99
109
197
135
89
106
175
72
134
99
175
103
107
79
94
131
85
95
87
121
102
97
69
88
96
89
83
137
119
123
120
80
87
109
132
93
121
52
80
89
89
78
87
52
80
80
76
120
103
69
126
74
96
78
64
93
120
96
123
109
139
76
80
92
136
175
122
119
109
76
90
94
111
119
121
136
72
78
140
106
106
123
128
106
91
80
94
160
107
121
119
88
109
104
109
64
99
98
72
78
107
121
76
91
151
99
119
80
120
106
88
99
80
138
119
158
174
78
128
99
134
80
75
163
88
76
113
106
111
76
69
136
80
154
137
209
175
107
80
85
110
148
94
109
131
80
109
91
74
143
152
128
107
74
175
99
97
69
101
80
124
137
109
79
87
197
69
89
109
99
98
92
89
80
64
121
124
74
72
137
127
80
154
67
69
78
109
123
110
92
69
181
134
142
110
112
159
99
112
87
88
138
154
117
72
88
89
154
87
164
76
101
187
187
87
120
69
146
76
82
128
115
102
150
110
127
74
109
76
80
80
99
69
151
119
87
87
110
99
100
156
79
103
126
78
82
126
69
94
103
175
151
69
100
111
121
108
83
94
199
148
69
140
80
98
123
98
163
136
96
68
107
121
101
107
69
146
87
69
101
89
140
80
127
91
106
117
91
122
80
69
109
124
99
100
148
89
163
120
80
69
101
126
78
117
80
133
99
89
88
134
149
175
146
110
130
141
71
75
78
128
131
151
122
90
80
80
108
119
112
155
93
78
87
80
107
100
87
80
72
67
96
69
138
80
175
78
76
92
150
130
88
133
101
175
121
127
69
140
117
107
113
120
91
140
130
107
110
106
74
78
103
103
96
112
88
89
69
87
120
104
136
151
156
114
131
113
133
133
98
110
111
175
126
69
93
174
87
76
80
119
143
126
107
83
80
118
106
78
151
133
107
145
154
83
99
95
69
112
114
80
118
112
87
56
160
88
113
128
128
142
87
91
132
154
94
156
117
88
99
112
120
154
99
76
150
89
80
81
119
76
89
71
114
156
124
80
142
76
87
88
69
128
129
175
120
99
78
69
156
76
93
114
74
74
128
78
125
69
89
111
175
106
101
131
99
144
128
151
87
109
78
69
156
94
100
78
69
110
75
87
87
93
78
127
135
145
132
80
175
117
154
120
113
84
76
87
66
181
88
87
83
120
130
123
88
107
122
79
130
69
78
106
103
109
128
119
85
163
110
80
164
111
93
99
118
183
131
76
80
119
156
163
104
183
113
104
117
133
87
80
110
80
74
151
128
129
76
54
69
88
74
87
128
117
80
156
118
89
128
148
136
87
147
80
134
122
107
119
101
150
87
56
154
117
112
109
154
72
107
104
69
146
78
69
120
106
78
89
117
112
146
69
119
122
101
128
78
52
69
80
109
99
80
76
107
209
87
54
110
87
166
87
106
120
94
95
98
73
114
142
100
83
80
108
113
155
82
121
169
105
76
80
99
69
80
120
85
103
175
120
120
76
148
80
152
172
87
107
87
154
89
110
101
154
89
175
115
80
78
139
143
119
72
132
90
88
78
136
175
154
101
147
87
128
133
110
89
160
80
78
123
145
104
106
134
118
104
115
148
69
115
67
80
145
98
169
87
80
132
109
132
136
137
89
143
87
80
151
69
119
113
155
154
80
175
91
133
126
88
134
110
156
128
102
106
145
131
72
127
71
66
114
56
80
144
69
127
88
100
113
96
101
107
80
109
99
151
72
119
69
52
78
91
102
80
117
120
107
91
147
151
109
120
119
115
124
76
88
76
131
80
74
197
80
109
165
101
138
85
64
95
106
88
69
95
99
110
69
112
117
91
154
89
93
84
78
78
80
118
87
99
150
80
134
119
105
85
154
80
80
124
132
119
76
78
133
115
80
78
80
110
120
113
148
87
99
90
72
119
69
80
154
100
131
122
109
135
94
80
88
109
110
109
86
154
69
120
119
128
109
152
136
105
133
78
140
106
76
124
80
136
87
76
78
80
138
69
69
127
78
127
121
80
156
136
143
175
133
118
140
140
69
87
127
96
101
85
78
175
105
80
134
119
78
114
140
125
154
83
114
144
80
121
113
140
137
104
119
120
197
146
128
127
143
93
78
88
95
104
164
140
109
156
127
76
99
174
104
127
99
110
106
128
99
109
155
93
132
109
74
120
118
143
156
175
91
69
83
106
183
109
130
102
152
72
136
130
80
136
88
121
80
122
88
87
146
118
109
136
154
118
80
134
59
88
64
81
72
127
80
116
120
107
151
77
102
106
71
87
69
134
88
107
102
91
121
106
95
136
69
87
209
104
143
80
78
148
80
80
78
76
94
56
100
99
80
100
91
134
175
156
133
117
174
90
118
120
130
58
145
69
69
96
80
89
148
120
80
156
96
130
74
109
80
85
127
102
137
54
67
100
99
119
142
80
76
129
99
119
151
131
164
78
79
110
66
69
76
118
78
69
109
128
110
145
132
75
69
132
87
162
87
118
117
89
110
69
99
106
120
87
87
72
88
79
104
85
96
89
91
80
142
112
102
104
94
80
110
101
52
110
78
94
100
122
129
91
102
120
84
90
174
115
119
69
101
68
104
127
89
72
106
102
112
80
80
128
145
120
99
94
80
87
96
88
112
92
98
140
152
146
119
151
106
101
80
94
107
152
80
89
80
80
88
117
142
120
67
87
120
138
175
69
78
99
90
134
114
80
138
101
112
59
87
110
106
106
121
114
94
69
143
88
96
93
94
110
99
99
154
118
87
88
96
106
112
91
80
111
69
148
88
106
69
80
91
80
80
197
79
96
119
69
78
105
80
74
106
119
163
110
106
124
89
99
106
104
98
52
118
130
100
80
83
130
87
80
107
136
169
154
147
121
100
91
76
113
136
143
74
80
80
110
118
144
137
87
130
69
102
151
80
69
140
128
134
106
73
156
110
102
108
106
80
107
120
160
99
143
93
75
69
69
111
78
83
87
145
121
69
67
76
88
197
97
136
107
97
72
76
107
148
87
80
94
107
78
80
121
107
76
105
115
100
52
90
76
96
145
143
111
80
80
136
76
143
117
83
99
155
78
106
113
113
56
142
136
137
107
104
69
137
79
69
71
109
106
152
137
121
67
78
59
154
156
69
80
101
78
85
121
146
99
69
80
95
143
96
80
115
127
69
117
107
69
52
76
174
94
88
128
89
78
107
120
43
115
175
80
107
107
127
54
66
113
78
142
172
175
90
154
121
69
175
80
76
56
80
164
109
99
175
90
136
114
109
145
89
74
74
129
117
110
69
112
145
80
104
144
76
155
78
112
134
78
78
122
131
125
151
155
98
121
91
89
107
98
69
164
69
87
113
87
117
87
119
136
90
110
95
121
150
155
99
87
120
69
69
76
91
110
87
80
134
113
80
92
99
130
94
146
52
155
89
88
143
124
78
60
89
74
154
128
117
149
69
112
120
127
87
140
118
85
87
117
118
80
104
112
94
99
134
175
140
69
104
101
87
69
122
80
99
125
145
124
115
156
130
56
143
107
131
72
130
88
106
101
134
123
133
74
116
80
119
80
110
136
154
122
101
155
105
107
136
78
126
136
157
133
69
127
127
69
99
72
69
99
128
151
74
155
111
91
164
156
80
163
87
117
151
110
76
69
119
136
107
69
103
120
80
119
76
78
154
121
113
80
89
131
92
146
89
122
107
131
118
96
87
149
111
154
80
94
80
154
80
69
57
104
76
93
112
99
120
56
134
143
124
74
155
137
91
109
103
69
122
93
106
80
105
59
87
64
109
109
90
128
67
107
120
69
133
78
69
109
155
72
128
80
119
112
80
69
75
87
80
99
78
175
92
119
79
54
129
163
88
99
69
175
128
145
72
120
128
120
100
80
145
139
69
106
143
145
78
107
110
93
96
120
69
151
109
175
80
69
122
199
107
126
149
69
163
154
99
104
94
80
112
80
76
175
76
69
99
69
69
110
119
89
146
113
163
80
69
120
87
69
175
80
91
123
126
104
103
125
96
104
114
103
52
114
175
134
80
155
76
76
93
92
78
84
147
87
89
84
78
87
80
195
136
99
102
90
80
109
121
107
120
99
149
136
80
66
118
78
99
86
91
145
88
101
80
85
93
99
118
98
175
93
112
197
134
101
76
80
145
138
156
80
164
91
69
110
124
87
120
129
69
78
160
72
119
175
146
175
107
121
120
121
76
121
175
129
112
136
104
127
90
128
98
80
94
78
69
95
87
85
175
134
199
114
159
175
96
80
107
96
120
94
76
69
115
121
175
78
128
94
104
93
117
89
52
117
156
124
119
132
76
76
163
109
119
139
86
67
143
93
96
69
115
87
159
69
154
120
157
69
80
67
131
94
89
133
119
101
154
104
87
69
107
100
69
76
96
117
89
80
196
80
97
131
69
91
116
69
117
138
175
80
102
75
101
126
128
104
96
130
128
80
120
102
137
131
117
155
112
76
135
87
165
100
120
121
125
113
164
80
93
89
110
100
120
118
156
76
80
109
66
93
136
54
80
106
99
126
178
134
69
99
59
175
93
88
114
69
88
74
80
80
117
96
80
103
119
86
80
181
104
123
156
74
175
197
122
99
160
106
175
103
145
73
107
113
179
106
80
87
145
101
88
112
106
69
72
175
101
124
154
174
128
175
80
134
137
79
94
72
107
80
83
67
144
102
87
104
118
72
69
88
80
117
78
136
110
76
80
111
159
140
131
88
87
136
69
154
103
69
145
151
94
104
140
137
120
96
104
80
112
114
87
131
103
112
106
98
69
151
119
69
80
80
106
119
80
89
69
52
112
91
69
64
118
67
80
164
85
155
80
98
88
95
114
80
120
87
119
121
112
197
146
134
123
117
121
169
199
109
78
78
57
128
120
69
81
87
106
166
94
94
118
133
100
80
103
69
148
75
80
78
115
121
110
90
125
72
72
128
94
88
88
117
147
78
128
75
113
109
88
112
175
87
109
112
110
80
166
88
174
76
73
63
124
115
110
122
148
122
128
87
156
119
54
90
85
91
120
109
101
136
129
115
140
152
122
109
59
114
94
140
78
94
88
134
112
131
100
122
106
136
131
100
69
87
119
101
56
128
113
98
175
69
104
80
113
76
87
138
120
87
69
109
104
94
85
156
88
90
128
134
140
129
175
113
119
133
142
115
52
113
156
78
101
106
110
154
140
199
69
82
120
83
95
80
109
119
127
69
140
76
104
162
101
111
156
80
78
113
119
121
135
104
87
88
107
156
175
155
128
89
109
112
104
144
78
119
91
181
78
88
175
105
95
89
113
134
98
107
69
138
80
80
109
104
137
63
69
119
80
80
154
83
114
117
113
117
99
69
87
127
110
54
117
131
87
74
148
94
111
132
99
131
94
80
128
69
169
88
96
78
91
93
78
69
108
100
87
78
94
78
98
150
72
76
104
197
117
201
113
174
68
175
144
69
103
78
112
54
197
123
154
87
99
111
148
101
153
131
123
104
87
138
140
165
130
89
113
80
101
80
119
87
131
69
126
120
76
76
69
89
76
117
107
154
115
87
197
120
80
126
147
78
76
58
94
89
99
76
93
145
199
136
109
80
109
91
80
112
138
54
88
175
122
95
74
76
128
119
100
109
78
175
80
98
101
87
87
88
109
124
99
69
104
76
149
169
118
137
110
68
172
80
107
78
114
130
91
176
175
87
128
91
76
128
175
175
138
90
69
111
93
163
87
89
72
69
106
86
74
93
102
72
87
108
80
101
104
119
125
102
104
197
94
93
101
130
162
139
143
122
137
128
106
119
74
89
128
128
76
150
140
136
78
80
131
105
100
185
59
102
80
140
56
72
118
175
166
107
80
78
87
175
98
154
87
80
101
80
107
69
112
150
106
99
113
133
134
104
107
78
58
96
164
197
150
80
109
123
91
56
172
87
144
127
113
131
54
106
101
137
87
121
104
113
128
80
109
87
87
78
109
132
145
69
79
78
104
134
134
145
156
71
106
121
92
103
97
113
137
169
93
131
144
93
87
119
155
96
108
94
66
117
109
133
69
154
107
87
154
107
54
107
163
113
89
145
89
83
60
136
63
69
89
80
99
183
164
97
106
136
175
43
155
116
80
131
123
87
128
87
87
143
175
80
94
98
94
92
69
163
99
136
154
98
88
69
175
119
54
96
156
80
121
110
87
87
151
95
96
96
120
147
96
83
136
56
96
111
107
155
136
88
145
140
82
120
107
69
80
109
93
121
107
153
106
119
148
120
69
112
119
89
78
124
107
94
131
134
181
107
131
121
102
156
101
96
104
100
140
161
89
98
109
126
128
121
88
69
80
93
113
111
89
87
76
175
78
134
127
99
134
80
98
76
137
76
112
106
109
164
119
101
174
83
124
76
111
99
129
146
119
104
89
148
119
117
93
87
120
117
69
111
119
99
80
128
106
106
119
69
113
78
126
43
118
119
69
80
94
80
122
80
81
69
114
69
154
85
99
80
92
93
76
109
156
120
102
109
80
73
89
78
69
87
112
52
110
98
106
130
145
89
134
80
157
103
72
124
110
116
137
109
52
152
94
118
87
110
106
120
80
109
94
112
157
113
117
54
125
134
118
124
80
160
146
150
78
113
69
119
154
76
80
69
139
163
118
121
80
137
103
69
118
80
85
109
130
87
143
80
52
69
121
80
119
106
115
99
120
85
139
69
99
87
69
104
102
80
120
136
76
101
145
140
76
92
79
94
74
175
76
89
119
145
134
122
78
69
110
80
88
74
151
197
140
87
113
128
129
126
133
143
76
91
175
115
76
86
175
71
76
98
137
125
92
69
143
72
69
136
76
88
113
67
92
152
76
80
87
136
175
75
80
80
106
113
94
128
103
121
122
118
175
89
88
127
119
109
76
80
130
142
87
141
154
76
87
87
112
112
143
78
104
148
80
80
154
83
101
118
175
69
87
118
80
171
128
78
80
78
120
56
93
88
80
78
78
72
83
163
76
80
107
106
118
80
120
109
185
129
144
101
137
128
87
78
122
118
72
69
148
52
174
162
88
67
136
116
127
130
69
88
107
75
145
140
143
99
175
141
126
74
119
69
104
94
136
102
147
99
146
92
96
94
120
69
117
88
98
140
136
94
94
175
131
104
131
140
197
119
104
197
106
99
87
69
97
80
93
80
133
127
76
155
152
87
78
109
134
72
185
117
154
128
103
80
43
126
120
121
185
80
80
93
76
121
152
119
139
74
80
101
137
122
129
104
69
85
131
69
76
106
88
88
111
99
111
113
119
78
98
82
76
140
94
72
135
119
76
101
75
117
137
94
106
131
69
87
93
94
87
80
78
80
113
136
77
80
78
69
156
69
80
114
115
80
136
85
129
80
119
52
101
76
76
93
133
87
112
83
99
130
82
111
132
95
78
87
131
110
107
128
102
76
89
69
78
175
94
80
103
113
104
82
113
96
134
111
94
115
80
119
78
80
80
80
197
85
132
87
52
136
120
113
90
88
95
121
175
94
145
119
80
117
99
80
151
106
99
70
84
76
94
100
143
80
87
115
175
104
120
93
87
127
58
69
76
100
91
156
99
74
115
69
100
156
120
103
136
75
87
104
109
93
56
101
120
89
113
111
100
175
144
106
80
117
137
152
164
80
130
85
87
101
128
126
121
110
146
87
87
98
87
94
80
102
87
134
69
117
69
80
120
115
76
118
129
69
127
104
112
76
94
120
80
80
87
107
88
106
109
119
90
93
88
133
137
69
154
109
80
164
87
85
87
146
76
119
104
88
87
59
117
136
119
151
83
94
74
80
87
85
102
90
120
87
93
69
88
136
117
123
104
124
137
120
106
111
129
89
137
99
87
95
128
87
69
43
80
119
136
107
128
134
75
162
80
97
136
87
80
147
112
113
80
69
98
146
89
102
104
159
64
136
102
69
138
56
99
69
122
80
78
149
151
100
87
89
93
72
80
151
54
101
114
80
101
111
57
76
106
114
128
69
117
78
80
52
154
43
119
103
159
78
99
112
89
116
94
99
78
154
112
107
86
126
88
90
104
140
156
93
75
154
80
80
104
84
80
136
154
109
155
99
131
123
131
112
88
152
123
80
114
197
89
117
79
85
126
106
80
109
80
89
110
72
122
104
128
101
131
116
144
80
161
76
87
127
123
134
155
78
119
54
88
87
128
108
107
66
128
69
197
80
80
156
132
104
123
110
107
89
100
126
152
113
176
119
75
83
96
80
131
111
71
103
58
119
80
71
83
122
126
103
109
106
109
80
80
101
119
136
99
148
106
119
69
56
87
87
118
69
126
79
125
136
80
82
118
76
119
72
137
69
72
94
92
96
87
109
94
175
78
123
94
174
99
89
69
80
119
117
123
84
117
76
121
131
119
172
94
156
145
80
113
136
136
80
104
136
113
116
132
102
89
85
78
95
107
109
87
64
72
76
54
154
93
175
93
76
120
72
69
78
111
110
175
136
80
103
104
134
88
156
91
87
111
93
87
107
91
87
87
111
72
120
151
110
147
137
113
151
136
56
128
69
81
90
83
52
151
85
136
74
134
79
109
76
175
92
80
59
155
69
100
99
115
88
69
104
76
69
120
87
80
78
122
151
110
138
76
109
94
76
80
149
126
96
143
93
89
131
80
102
112
117
134
128
104
129
107
185
102
43
118
115
106
56
112
80
117
69
80
93
100
91
99
90
110
87
197
78
74
80
78
87
140
69
80
91
106
109
95
95
100
99
140
117
96
156
128
104
80
118
80
113
87
126
119
129
99
69
99
87
125
91
128
147
98
99
87
122
72
59
104
119
80
98
121
133
147
73
72
120
123
80
78
85
125
83
78
137
98
78
119
85
91
109
74
60
119
128
121
131
127
78
109
76
117
85
87
80
96
69
155
88
123
119
78
52
87
105
197
211
83
118
80
121
125
80
124
78
143
173
87
104
69
80
90
69
80
107
128
67
120
112
89
93
90
144
119
126
109
148
102
72
112
76
110
119
123
78
123
87
140
119
76
80
88
78
172
88
56
80
94
154
80
142
87
126
93
87
78
110
77
91
118
80
123
76
115
138
137
106
77
91
147
69
109
75
165
100
129
128
154
109
87
88
137
94
119
163
121
100
83
69
113
76
106
78
87
118
129
78
155
112
131
91
120
127
76
88
151
134
113
74
175
126
144
127
126
80
104
80
155
69
78
72
100
154
111
78
129
96
84
88
130
137
93
59
113
134
87
80
80
148
80
80
110
107
117
166
145
76
87
80
197
78
102
82
92
87
80
78
106
91
157
120
119
118
119
69
107
80
109
98
155
140
122
129
89
112
88
74
101
101
120
118
119
101
87
112
148
106
112
88
113
75
134
128
114
175
126
112
99
90
69
88
93
130
156
142
52
134
89
92
88
131
102
64
106
89
69
120
80
78
134
152
110
78
128
118
150
94
145
93
74
79
119
78
118
133
144
152
121
91
87
87
127
146
93
91
128
76
109
128
91
101
156
117
155
120
138
141
54
100
154
120
121
88
175
69
93
121
117
59
78
89
103
156
105
103
144
111
84
117
166
93
78
120
93
133
119
99
80
56
144
80
80
76
69
80
131
80
78
87
72
111
156
88
106
80
137
80
112
145
96
52
111
128
52
175
74
83
93
134
112
183
76
150
76
110
122
128
89
175
117
133
88
78
78
109
87
128
100
118
145
95
94
91
125
87
107
76
144
92
131
81
121
146
94
96
99
134
66
120
87
91
112
87
91
144
119
87
199
76
87
121
89
80
107
115
80
152
110
136
128
96
80
145
95
80
87
74
104
146
148
95
92
78
78
175
74
80
199
76
109
154
145
83
119
126
87
123
69
118
93
87
89
153
109
88
129
95
119
103
88
139
83
91
127
131
130
125
119
79
109
129
140
126
76
99
94
197
153
69
118
100
79
102
64
133
95
163
122
128
129
80
131
87
88
138
103
113
72
69
131
78
88
94
134
119
110
69
209
76
123
69
159
174
94
52
112
80
154
80
113
91
80
136
80
80
56
93
134
124
88
134
128
76
89
87
87
109
154
131
72
83
78
125
69
164
87
119
94
94
103
175
80
69
156
78
109
117
88
93
113
88
140
89
52
90
104
87
99
138
78
88
138
124
89
109
93
76
136
80
107
151
80
172
69
112
80
96
80
106
119
80
93
102
80
80
99
181
116
80
87
164
91
89
127
76
105
164
102
139
72
69
122
107
69
115
94
146
131
164
69
165
109
137
151
80
128
79
69
76
76
146
131
78
143
146
78
114
104
80
80
94
69
113
86
107
120
80
87
109
99
83
121
87
89
175
133
54
116
160
103
118
136
76
101
76
94
78
156
143
145
87
175
120
112
78
87
99
80
76
154
96
175
79
119
96
72
80
89
117
126
109
144
137
134
140
76
117
74
102
175
75
136
78
128
94
110
112
120
106
140
136
145
69
137
87
154
116
94
92
87
102
119
108
56
107
75
175
110
71
94
111
94
79
69
76
72
78
76
104
91
104
132
69
69
106
78
127
119
120
91
117
87
54
69
69
87
140
127
140
115
91
69
109
106
110
176
109
120
128
85
110
137
109
107
80
113
69
160
140
144
101
99
91
105
134
92
87
69
95
127
69
151
97
76
87
128
90
104
107
154
122
154
92
69
87
117
133
107
99
134
99
157
128
131
110
88
158
151
91
89
124
69
78
126
80
113
130
69
80
100
120
69
89
110
131
93
80
84
104
87
123
78
122
139
96
85
137
136
109
103
98
156
68
94
120
142
120
94
156
127
80
107
105
76
76
67
95
107
123
128
131
69
109
155
80
143
106
69
128
131
100
111
151
155
127
78
80
108
57
109
109
87
128
127
136
89
80
143
131
122
99
112
113
80
175
97
105
89
95
78
122
120
100
113
78
80
134
91
110
138
185
76
114
80
85
119
74
69
87
78
93
76
109
119
113
80
118
87
118
175
119
102
80
134
87
94
175
115
104
138
155
69
106
93
146
80
128
140
76
122
143
78
88
78
115
96
110
109
136
88
87
107
100
78
128
122
88
78
74
136
128
69
91
80
119
80
145
78
87
83
130
88
164
95
80
119
146
110
75
109
89
130
99
80
72
125
120
72
175
128
127
69
76
123
115
181
80
201
80
134
130
175
80
94
109
181
104
113
123
102
80
151
107
122
94
69
72
78
99
157
78
136
119
87
69
99
156
137
117
102
155
136
80
121
80
131
154
99
115
113
66
115
106
87
80
102
89
80
118
140
88
106
109
80
151
91
102
94
69
94
99
54
175
107
104
156
80
104
94
138
76
80
175
123
107
133
76
92
136
113
185
146
119
114
175
82
96
134
69
87
156
143
80
82
112
101
78
128
121
103
114
80
98
138
85
80
197
148
115
80
72
155
103
160
80
119
80
130
76
110
80
156
140
154
80
130
137
120
140
104
89
143
109
112
80
123
113
80
71
113
88
107
89
163
133
146
69
99
80
95
96
54
211
121
136
137
78
93
76
146
88
111
113
80
113
99
80
72
89
69
94
96
88
121
89
118
155
83
79
95
148
126
121
140
90
87
78
78
127
106
99
134
80
139
80
135
137
69
80
110
78
80
102
73
101
94
134
119
101
91
175
80
95
93
93
74
107
88
163
155
101
76
85
78
91
80
105
101
67
154
93
128
149
100
136
125
80
69
136
109
140
102
128
148
80
76
87
123
95
69
91
96
80
78
80
78
93
128
80
149
104
91
150
76
104
80
94
162
85
102
154
120
80
110
128
87
97
76
119
91
117
84
76
69
71
109
201
78
136
89
151
147
149
85
87
123
80
115
69
110
80
69
136
101
140
87
72
105
131
112
80
111
80
100
69
134
151
95
144
107
123
100
119
155
92
78
87
92
118
52
80
76
110
54
94
98
169
107
154
172
78
197
85
124
134
78
123
88
78
102
174
154
104
154
78
69
102
94
134
140
128
76
145
89
117
120
94
96
94
88
162
78
119
113
119
146
140
122
103
123
96
78
117
76
80
89
175
197
154
67
99
128
69
74
109
68
78
95
79
151
124
91
69
80
59
123
80
144
87
129
80
69
133
157
100
101
88
122
143
69
104
87
120
91
67
117
80
176
59
115
122
80
107
128
102
117
133
132
146
101
87
155
110
98
72
107
102
90
136
151
185
87
109
78
101
88
76
80
96
106
67
87
80
78
142
78
78
87
89
93
104
87
76
126
107
156
94
83
69
69
125
78
174
106
69
89
104
76
181
80
91
80
93
144
117
120
118
80
52
154
80
155
129
115
175
78
125
52
80
98
151
78
132
92
107
128
87
89
103
69
128
90
103
76
118
88
107
163
136
110
145
107
76
64
128
78
131
109
112
104
154
69
121
104
104
99
99
95
117
111
69
119
115
80
119
124
80
91
107
122
107
131
80
92
140
123
132
79
98
124
92
156
87
147
119
175
110
78
99
104
120
101
165
87
119
54
146
113
106
76
155
174
80
96
99
69
67
69
89
160
99
69
52
175
105
124
80
186
98
131
175
99
115
69
66
101
91
156
197
117
80
80
140
134
89
164
96
80
120
94
111
119
56
67
93
155
136
56
85
109
140
107
105
114
99
117
107
120
76
120
80
117
94
106
131
91
80
112
69
100
140
119
104
112
96
120
109
72
87
109
107
80
76
154
43
131
151
154
89
66
108
87
85
104
108
76
154
78
73
78
76
148
78
87
112
115
80
80
131
90
93
80
154
102
133
156
72
106
124
154
96
122
94
76
120
76
125
108
87
73
101
120
99
79
95
143
96
124
144
72
80
119
107
80
80
124
80
78
120
128
119
71
154
84
134
83
76
87
197
154
87
107
99
109
115
134
78
151
99
119
117
72
78
52
147
99
145
76
165
115
93
76
132
140
107
107
87
107
128
146
94
76
156
99
175
120
98
117
123
154
58
107
100
85
76
78
111
78
111
95
136
87
99
131
136
128
92
156
80
137
119
80
78
69
118
102
91
117
160
107
98
134
139
76
121
164
80
156
78
76
78
75
106
80
72
119
82
87
99
114
87
67
87
74
60
80
115
81
102
147
120
106
69
114
96
134
76
76
80
119
175
63
121
107
69
115
80
101
94
154
69
94
138
102
102
93
163
93
85
112
69
94
76
131
111
136
121
76
89
126
87
76
180
175
154
120
118
80
100
80
121
76
78
87
115
76
114
91
130
76
119
76
116
99
155
106
137
87
78
151
52
145
69
102
119
131
87
119
122
76
81
94
137
197
99
146
104
112
79
132
107
87
109
107
134
129
76
89
109
93
69
129
106
117
117
136
93
131
80
78
93
95
106
80
135
96
110
78
106
93
104
151
99
126
144
120
76
69
136
145
88
119
131
120
94
127
134
97
87
119
133
76
54
109
107
107
120
93
119
108
112
89
88
100
79
83
121
76
69
69
99
128
103
74
100
72
101
120
100
83
130
72
112
129
85
106
63
87
143
201
113
119
119
120
119
120
63
109
119
119
137
107
134
101
140
88
154
97
176
128
87
109
118
89
118
80
87
119
88
81
94
119
109
143
94
121
98
76
96
80
78
72
91
110
95
87
110
112
143
88
88
100
89
140
79
110
89
80
83
133
78
78
78
121
136
107
175
113
80
132
133
86
80
95
80
87
99
89
94
119
164
94
140
111
93
74
80
110
118
78
116
120
87
145
131
85
112
140
108
140
80
131
76
88
175
140
129
107
118
164
82
119
83
78
91
106
104
107
87
104
128
122
67
82
91
80
154
113
96
80
106
120
118
104
100
91
109
107
154
109
80
87
101
77
93
80
104
52
120
120
66
183
83
175
118
128
78
130
133
88
76
111
72
113
76
89
77
145
106
94
75
80
96
113
154
72
89
140
103
69
160
91
151
89
69
123
120
142
104
78
54
140
99
187
89
95
118
87
118
99
122
83
110
76
129
121
87
119
152
82
74
87
106
127
80
131
122
98
140
112
130
121
78
132
145
156
93
144
90
92
138
93
80
131
80
109
111
76
136
145
80
76
88
115
106
137
88
116
80
129
110
87
87
89
99
89
107
128
107
175
93
90
76
100
113
112
111
154
112
155
131
116
113
119
102
134
88
151
76
110
119
174
110
113
175
76
101
91
161
80
123
154
109
72
101
119
80
115
136
78
104
160
128
98
69
136
119
106
119
76
122
175
136
136
88
131
125
128
142
151
54
140
151
69
112
54
87
110
96
107
144
115
101
91
99
102
101
119
121
128
76
80
76
87
109
121
69
156
78
76
56
112
109
80
87
87
80
94
163
80
113
52
120
120
134
120
88
125
140
109
183
104
131
128
159
102
197
119
107
93
80
78
136
118
69
156
69
172
128
155
89
80
78
136
66
119
112
127
169
80
88
91
128
104
102
99
76
111
117
106
117
110
115
89
118
145
69
69
87
107
89
100
110
54
80
140
110
152
80
110
107
144
104
76
73
104
175
87
111
78
148
128
88
89
76
100
91
87
102
60
78
87
135
99
69
117
118
68
89
118
93
69
88
69
112
197
99
70
76
143
140
148
109
175
78
120
174
106
80
80
78
80
90
152
83
89
78
137
76
130
130
107
101
80
107
100
131
69
128
99
128
88
133
67
78
87
106
115
69
85
101
87
80
80
92
93
110
136
110
99
80
113
109
175
93
87
69
137
87
142
72
88
137
80
69
131
151
96
104
80
103
69
88
72
80
117
54
78
78
119
137
104
78
114
88
87
128
72
90
154
80
174
94
78
76
160
121
129
120
138
80
80
87
80
128
109
118
129
87
106
172
140
97
80
76
91
78
100
113
100
122
119
78
69
76
89
137
156
122
89
115
93
110
163
52
159
145
98
80
87
80
73
115
67
106
113
99
118
120
99
122
58
72
133
88
110
108
151
121
92
154
69
80
87
100
80
137
110
109
149
91
163
147
87
113
169
105
129
94
118
121
87
110
88
131
129
142
87
89
103
137
108
114
87
122
78
76
131
87
110
96
126
154
157
128
102
91
133
80
112
80
89
90
78
128
95
80
110
133
114
76
77
157
175
110
120
87
80
88
89
99
134
87
138
93
164
175
88
99
126
69
85
163
69
134
133
162
131
109
111
110
101
148
120
132
78
80
89
169
127
80
85
155
103
80
120
128
145
133
90
181
151
107
125
82
78
109
113
175
160
99
83
109
130
88
104
151
106
197
134
92
120
108
117
197
122
154
136
83
127
95
111
127
133
99
199
87
91
87
80
76
140
104
93
99
99
165
87
107
118
95
94
128
117
113
94
99
116
112
111
69
140
113
165
109
106
120
89
72
80
155
119
66
154
95
128
56
93
100
87
184
122
93
151
134
113
69
113
102
94
91
69
80
153
69
88
69
78
69
145
197
119
145
175
80
99
100
101
163
80
134
88
134
119
137
88
178
78
76
76
136
102
128
104
139
74
106
99
163
76
87
87
87
96
146
128
154
80
136
175
143
128
95
140
87
111
107
137
78
143
69
113
83
78
153
145
99
107
127
79
76
127
87
121
154
78
76
87
54
94
113
82
112
197
98
69
100
68
69
119
156
110
97
112
155
175
111
143
78
121
111
69
79
109
120
80
106
69
94
110
73
78
87
134
69
155
154
80
110
87
94
187
107
119
104
100
94
109
72
156
155
80
80
137
88
86
76
120
175
80
93
69
183
119
104
87
80
101
100
134
93
109
103
80
104
98
156
199
107
88
112
72
87
155
79
155
117
114
88
120
76
69
80
183
117
122
120
78
95
132
74
80
99
93
69
137
123
119
132
80
126
117
80
110
102
98
101
87
119
121
108
128
120
89
74
107
76
87
121
113
128
73
107
91
113
137
100
78
94
134
125
118
113
72
69
109
89
80
109
123
95
109
130
110
155
69
128
87
129
87
106
87
87
99
69
107
69
117
80
102
80
119
80
140
110
154
119
87
80
76
164
87
76
156
163
136
87
103
140
69
80
127
118
94
160
119
80
197
87
71
112
76
156
76
100
78
110
71
69
91
136
175
107
106
82
130
104
106
89
93
107
144
119
88
133
87
69
94
112
74
88
136
107
175
83
87
136
74
134
83
120
148
88
141
119
183
59
69
151
154
120
112
123
147
119
117
113
94
80
117
122
129
96
67
121
133
128
76
82
69
78
140
67
69
87
98
80
154
80
175
154
156
89
89
175
54
131
110
72
80
104
100
159
137
128
156
113
126
87
87
136
147
140
147
123
118
78
120
120
57
77
76
99
111
78
156
78
152
91
151
130
80
113
94
102
78
142
151
122
66
88
69
87
69
103
128
80
79
145
56
128
134
99
137
110
119
113
120
69
94
110
80
152
199
128
69
154
100
80
106
80
110
103
175
107
133
124
69
109
126
110
102
117
103
99
115
131
76
80
102
118
110
113
171
89
78
72
107
91
117
89
124
69
76
90
151
175
151
124
95
110
123
80
121
109
80
175
85
136
127
114
175
72
146
131
126
172
85
143
80
80
69
93
69
154
128
189
111
128
113
78
101
99
93
117
140
98
89
125
80
107
80
69
171
69
80
144
107
67
84
74
93
120
104
94
140
107
69
80
78
94
76
121
99
120
82
80
136
91
80
85
93
104
99
99
80
118
111
120
78
67
85
140
82
69
114
143
146
84
89
197
164
147
93
102
87
102
87
125
175
69
174
67
154
78
80
120
80
99
88
102
89
80
95
94
134
80
91
134
76
109
94
80
130
80
131
104
87
111
128
80
119
118
76
144
175
78
84
127
93
124
107
119
118
69
128
130
106
109
87
156
72
109
80
85
104
76
91
56
78
175
90
121
120
85
103
109
118
111
71
131
128
76
104
90
118
98
91
94
78
156
80
98
69
107
90
87
143
121
69
94
148
143
123
64
80
83
88
102
80
83
110
69
131
78
115
88
154
83
96
69
109
101
88
80
100
101
143
87
109
113
107
94
80
97
80
106
160
80
146
154
112
87
142
88
102
133
100
131
102
118
112
100
80
69
132
134
148
110
80
120
107
87
156
105
140
80
152
94
129
80
87
88
134
119
56
175
78
120
94
154
154
115
112
177
114
78
108
151
107
104
109
109
119
129
156
80
117
76
80
89
128
87
99
120
156
95
104
156
80
80
69
117
117
148
89
102
54
130
154
101
69
128
90
164
151
131
98
101
175
151
121
142
76
154
104
106
151
74
107
80
75
89
52
80
90
113
93
99
142
119
80
69
118
175
175
155
69
89
119
107
111
76
123
119
120
155
76
183
151
100
107
107
99
87
80
143
134
196
98
112
80
52
80
100
119
69
69
102
52
134
78
197
98
144
80
78
121
95
117
110
71
131
91
113
104
112
115
119
80
58
140
105
164
162
152
129
89
80
95
92
197
80
136
80
69
175
122
118
99
83
96
96
121
96
143
140
94
120
115
107
145
197
127
120
165
175
144
127
99
94
121
121
54
155
76
78
76
154
118
103
152
89
69
136
78
122
74
89
117
131
52
121
69
163
88
112
80
80
113
92
175
94
107
108
156
69
157
123
160
99
69
69
154
119
107
102
80
144
110
69
72
76
131
127
96
80
101
54
104
130
154
145
78
140
111
97
76
129
87
76
95
112
77
110
154
131
88
69
111
133
139
103
92
80
69
140
136
137
88
156
104
93
91
127
131
76
78
76
145
69
119
80
115
63
154
110
117
89
126
138
70
107
106
110
109
120
154
146
80
78
78
90
156
155
136
175
91
87
121
127
83
87
94
110
80
78
100
118
76
119
54
106
114
89
69
117
137
72
93
95
78
117
136
89
106
88
80
106
87
80
89
80
91
197
78
78
80
91
145
107
156
197
67
90
117
134
84
74
143
88
66
75
96
199
117
104
131
54
76
197
88
131
120
102
209
76
133
79
105
126
80
119
69
110
89
93
121
80
105
123
69
80
125
107
83
163
102
155
151
80
97
78
98
87
175
153
87
104
80
76
83
69
117
115
175
91
59
69
87
89
96
85
75
156
141
80
78
113
175
175
89
52
148
116
104
117
80
85
143
120
120
89
106
128
85
136
91
117
109
80
146
131
109
120
107
69
97
87
109
110
107
88
154
130
124
77
119
80
80
156
119
104
93
110
104
104
78
76
156
119
147
80
145
144
130
99
78
78
80
93
104
87
131
99
96
110
102
124
110
144
110
138
109
87
88
128
89
89
85
89
99
197
87
128
148
72
76
175
93
69
78
117
87
145
87
69
156
99
123
69
117
93
69
107
80
93
151
112
120
102
112
134
122
109
88
103
133
104
69
115
104
110
136
129
120
87
54
78
132
125
107
138
115
89
57
86
139
87
102
120
78
74
94
118
134
69
69
148
103
89
119
80
107
107
147
111
119
94
96
119
109
94
136
119
140
146
78
93
68
89
71
80
128
140
172
89
136
107
69
87
119
76
57
134
140
80
98
127
125
87
112
99
106
122
146
63
114
137
72
140
93
72
127
88
130
152
99
101
120
78
69
88
78
169
89
175
95
99
119
137
90
96
142
128
175
108
128
116
69
88
127
88
119
138
80
101
118
115
128
136
80
88
104
154
112
80
94
69
90
87
165
76
131
72
118
119
76
152
88
93
112
56
109
137
119
121
185
52
112
119
80
116
110
72
89
127
151
91
124
98
120
62
162
80
96
164
120
69
78
146
96
109
128
87
122
128
95
111
110
146
96
88
80
107
109
103
155
140
80
134
69
96
118
107
78
112
104
112
131
69
76
124
119
118
76
101
123
74
118
80
99
96
138
128
128
76
120
111
75
76
87
101
131
94
89
154
175
154
98
88
99
131
79
76
80
169
88
120
100
91
147
197
80
69
78
78
80
74
91
80
78
128
128
95
76
56
87
134
67
136
80
103
107
112
80
199
140
112
138
130
123
164
89
104
131
94
99
75
175
79
122
137
163
69
106
140
103
156
80
69
89
69
160
136
110
174
86
95
91
107
80
164
96
78
121
88
134
140
69
110
154
69
93
155
80
100
136
80
99
72
57
89
101
76
69
80
80
119
124
156
87
74
80
80
88
100
69
107
136
141
175
119
129
80
110
147
95
91
87
104
119
130
91
80
104
76
119
76
131
142
104
164
131
140
130
141
43
183
54
101
138
114
80
174
133
71
78
88
91
118
132
156
117
140
107
119
83
119
121
119
107
154
80
66
69
107
110
142
87
160
110
175
110
78
160
78
148
121
104
128
54
128
80
154
88
80
104
72
99
160
107
89
88
133
125
90
185
88
80
80
69
89
80
140
87
131
131
80
78
80
157
87
78
80
69
74
109
134
140
115
133
103
76
54
137
104
76
80
145
91
118
76
88
107
87
113
114
106
154
60
80
83
81
119
80
87
128
103
131
88
134
122
89
107
94
119
80
72
156
125
87
80
122
152
109
89
136
69
137
63
145
98
80
90
76
80
87
106
119
112
143
136
160
56
148
113
119
155
52
87
89
153
151
107
112
88
80
156
136
87
137
69
69
183
140
69
80
69
128
115
101
109
78
69
110
117
72
94
169
175
69
104
94
119
109
80
76
134
104
101
80
112
156
175
93
134
77
129
91
130
91
132
128
69
88
134
140
175
99
76
98
80
125
87
80
80
163
123
87
80
69
89
80
69
87
80
147
52
69
131
119
115
104
126
80
106
117
143
129
72
115
145
119
114
69
96
80
93
175
187
80
78
80
76
93
74
136
156
175
119
119
106
127
126
109
109
87
91
119
121
80
80
156
115
134
120
100
175
125
76
111
113
160
100
154
136
88
90
107
76
104
93
81
78
175
80
107
87
114
74
144
87
111
109
107
94
71
69
105
156
72
113
87
113
137
106
137
112
146
120
67
102
111
78
102
156
113
80
124
76
134
126
112
118
69
88
137
134
109
128
99
87
163
140
107
72
71
120
128
87
141
106
99
143
146
99
140
110
72
96
80
96
120
80
131
136
91
117
72
175
123
96
112
146
96
93
159
147
143
101
137
89
117
109
109
123
118
90
162
99
107
185
101
80
80
54
80
123
87
93
137
114
109
99
69
104
66
88
107
169
106
80
72
120
93
128
128
79
69
181
154
129
131
109
76
94
91
130
80
112
93
78
197
98
136
151
88
175
113
107
89
80
76
99
127
91
101
147
69
164
89
175
107
78
113
175
122
107
153
80
131
119
100
142
110
91
94
80
96
90
94
80
88
80
107
86
78
147
147
80
80
99
155
93
128
136
101
100
115
69
119
151
99
119
74
113
128
88
119
101
106
74
80
79
80
119
97
69
113
132
116
116
89
91
109
94
130
119
120
94
111
88
85
156
93
138
80
151
187
151
119
133
66
114
144
121
80
110
87
146
121
131
154
120
197
154
87
80
136
120
131
89
117
133
76
127
106
87
172
164
109
85
114
76
85
91
101
81
104
99
94
147
136
78
145
80
100
140
114
120
134
110
96
107
88
80
94
92
156
79
119
109
101
132
91
134
80
132
100
93
75
96
69
80
93
155
128
87
128
78
134
124
96
91
163
80
128
98
131
106
113
185
146
109
78
128
121
85
149
87
54
80
136
107
87
57
120
87
80
163
118
129
80
148
128
145
87
132
91
165
122
69
120
96
110
80
111
93
80
106
69
125
119
137
114
119
137
175
146
118
69
69
80
148
89
96
96
87
76
79
85
140
76
89
107
154
145
113
140
94
69
123
113
175
87
52
94
118
87
87
107
63
78
156
87
78
113
80
112
80
129
69
89
109
110
96
149
109
199
148
140
121
114
59
136
99
106
93
120
120
98
103
80
183
143
94
94
127
88
117
101
80
134
80
94
138
126
120
119
99
123
87
128
88
92
133
109
109
110
151
156
115
100
96
155
78
93
120
85
109
107
100
117
96
93
119
104
80
164
94
78
134
140
181
88
83
71
115
154
171
119
119
89
80
112
113
87
160
104
92
80
90
80
76
80
76
137
106
69
78
119
96
136
109
80
162
110
146
78
88
106
154
115
101
119
76
69
122
109
154
133
72
124
76
109
69
81
83
122
96
123
155
136
141
89
85
80
78
117
117
109
120
101
119
112
104
132
127
80
80
111
69
89
101
137
110
111
90
96
76
80
80
155
128
99
103
72
72
75
119
112
121
69
149
128
120
112
94
79
80
89
90
104
116
142
140
154
80
91
147
165
54
76
109
110
103
132
96
110
99
138
69
94
107
76
185
76
128
87
131
144
80
67
89
113
94
80
109
119
134
87
143
134
104
83
145
128
85
89
80
94
109
85
79
119
119
104
104
69
134
104
134
110
154
69
140
107
107
80
94
155
130
86
134
80
80
104
99
156
124
107
87
145
75
72
156
99
69
154
72
59
69
109
134
117
146
94
112
106
78
87
131
154
94
119
119
154
145
54
127
159
69
80
174
102
94
63
143
88
72
76
69
109
110
174
78
118
106
134
80
110
197
78
120
104
136
87
120
76
99
99
127
131
96
128
134
109
119
79
113
175
154
89
175
117
80
122
109
111
127
88
124
83
87
90
102
52
109
101
83
94
76
128
119
80
111
119
72
143
103
78
69
143
137
155
93
90
166
120
78
136
69
117
87
117
124
69
109
99
72
131
92
119
110
89
137
122
117
57
142
120
80
69
90
128
120
88
72
69
104
110
137
69
134
79
164
128
69
94
112
74
133
104
80
80
80
85
78
134
69
80
134
138
97
197
99
56
96
69
94
116
112
121
175
87
94
87
134
143
140
124
80
78
62
128
175
80
114
128
75
199
76
90
122
127
101
104
131
80
106
80
155
119
134
128
119
138
87
117
69
69
99
128
80
95
80
89
91
80
98
104
107
122
76
95
52
103
85
89
78
69
69
107
131
155
80
69
56
75
130
78
144
76
87
89
175
69
80
72
94
71
78
130
69
145
113
155
151
80
131
107
109
99
80
109
147
107
107
131
43
87
75
92
85
87
80
96
90
69
134
87
157
108
69
80
76
98
106
128
146
113
54
154
123
91
134
118
106
130
110
89
160
144
119
116
72
201
78
69
175
122
136
115
87
104
87
116
101
130
80
162
117
131
69
121
87
69
107
147
80
134
151
120
154
147
87
94
76
134
107
134
80
147
87
87
69
87
101
80
76
104
108
80
144
80
87
69
140
175
115
93
87
91
111
91
93
121
155
129
175
102
114
87
155
138
104
131
87
74
119
68
89
69
106
140
176
129
115
175
155
126
137
52
76
109
99
93
67
60
131
89
88
112
114
119
104
80
164
140
101
113
97
69
69
129
87
102
87
72
80
91
134
69
175
88
87
143
87
143
98
122
76
76
95
93
137
89
104
101
101
105
123
99
80
100
80
107
133
102
80
80
125
91
136
129
69
67
52
111
143
175
128
103
175
69
134
175
87
97
136
99
112
93
80
175
88
80
80
69
101
131
94
89
150
128
80
157
155
146
69
91
120
141
74
88
78
78
113
80
91
88
111
87
109
127
52
122
120
76
121
76
99
123
80
106
80
89
112
89
96
107
91
121
143
155
116
156
96
134
80
111
110
104
123
80
175
146
114
76
68
87
69
112
99
175
197
101
147
148
76
88
78
80
119
136
100
127
76
74
121
121
80
93
136
136
145
152
104
89
78
117
93
127
80
120
80
119
101
90
175
128
69
87
72
120
136
90
80
145
107
93
90
94
107
120
80
90
154
136
93
96
80
80
87
93
80
79
124
80
113
80
175
104
105
154
122
130
69
107
99
107
175
183
98
151
147
175
150
92
87
89
136
159
112
80
87
94
162
87
154
178
144
93
171
113
151
94
79
149
101
78
109
80
119
120
154
98
154
69
72
113
88
117
149
113
110
99
90
88
137
58
78
69
76
174
154
92
127
162
87
85
99
151
80
127
197
69
119
69
120
68
80
112
162
87
113
199
118
128
75
135
160
78
116
175
146
127
142
123
115
153
80
94
121
80
115
145
127
76
138
121
110
163
131
174
91
80
134
121
69
80
155
89
123
100
54
151
67
109
99
131
94
80
120
124
145
104
109
119
104
66
78
99
138
154
69
71
104
87
93
96
114
116
93
52
134
59
83
106
120
80
81
72
172
75
78
119
175
147
111
134
69
136
91
209
87
116
117
69
80
119
78
76
80
72
134
130
88
119
96
85
80
107
80
91
120
104
80
130
69
104
94
156
80
134
110
136
90
78
99
64
109
78
129
127
112
72
80
119
106
104
74
107
156
133
120
120
76
128
80
175
175
78
93
197
106
99
90
156
123
89
129
82
78
124
115
175
133
63
93
80
80
154
78
88
112
102
69
88
109
89
165
76
101
175
120
127
87
73
100
119
128
131
114
87
83
69
72
96
142
69
100
139
115
80
112
80
109
80
69
128
83
119
98
69
93
93
147
150
92
80
131
110
120
80
80
154
120
96
80
76
102
82
122
131
155
154
107
92
80
129
97
201
136
175
109
175
113
80
113
98
112
80
129
92
110
175
136
118
96
80
95
125
151
124
79
136
134
118
156
121
87
120
134
74
69
104
144
99
69
118
80
80
88
90
76
99
120
164
80
69
151
104
64
119
146
88
95
108
160
109
127
76
54
87
69
131
109
118
111
100
109
88
124
104
85
97
175
140
80
130
121
119
93
142
122
118
131
175
95
183
184
113
131
105
111
131
96
125
69
117
154
94
80
134
91
89
99
69
110
101
74
80
160
110
71
120
154
109
94
101
121
69
134
69
176
104
80
85
72
102
152
52
130
119
146
156
119
110
136
133
69
118
197
106
69
78
76
122
80
128
136
121
69
147
102
64
113
107
80
110
111
113
69
101
119
175
76
100
134
175
69
80
134
96
54
78
110
111
89
80
120
78
106
78
92
104
133
80
106
69
115
144
157
131
93
87
72
87
127
134
156
52
102
76
107
99
128
101
88
131
78
69
120
164
106
186
76
78
95
110
96
136
76
113
89
120
80
134
69
80
104
71
69
175
128
175
99
118
162
87
90
78
141
102
113
128
103
69
106
80
78
52
110
134
151
126
119
98
156
71
74
72
80
122
126
98
135
87
76
93
120
118
90
134
99
117
96
69
88
101
175
185
123
52
43
85
91
80
75
109
95
94
127
69
87
87
78
119
110
160
80
78
151
79
74
88
83
99
76
197
94
132
104
66
134
119
80
89
54
109
106
91
106
128
119
87
120
89
104
128
95
104
91
131
74
94
68
66
110
87
140
87
93
106
80
131
69
112
87
140
104
157
69
131
89
52
109
127
69
111
84
119
132
104
87
89
131
117
127
121
93
125
80
131
121
74
100
87
88
88
166
87
74
140
80
102
106
98
88
120
88
109
120
69
107
133
78
87
115
146
100
72
99
69
96
118
110
133
99
80
132
69
89
76
80
106
113
157
69
96
87
156
129
69
69
118
93
127
113
125
107
107
88
80
87
127
101
140
181
76
134
99
120
87
72
107
111
111
128
88
69
144
111
131
72
97
95
76
113
110
104
78
136
80
134
134
128
121
119
117
136
116
69
117
130
69
69
136
136
135
119
85
74
76
80
69
80
119
166
99
102
185
107
87
118
52
80
69
133
88
76
69
80
96
128
72
103
99
69
113
145
91
120
174
112
93
69
134
76
128
115
93
80
134
104
94
87
119
145
146
99
80
69
111
69
128
112
69
113
72
68
125
96
146
76
78
80
110
126
131
76
119
147
119
106
137
113
155
69
96
103
128
95
117
104
143
150
66
109
91
99
96
91
77
80
88
94
80
76
154
119
78
153
125
119
89
93
80
88
130
101
122
163
99
109
80
80
69
119
138
87
120
112
109
80
91
91
80
54
79
87
89
87
78
115
80
93
80
83
134
133
69
69
80
125
107
101
126
69
84
77
78
95
52
74
120
81
156
60
118
84
75
160
69
73
69
136
88
160
88
95
117
112
109
134
80
134
107
121
99
107
87
128
131
104
69
83
80
125
131
128
88
115
80
134
99
129
146
126
107
119
131
128
69
127
142
156
83
106
54
69
99
113
120
113
118
104
122
91
62
75
144
153
177
69
94
146
78
117
163
93
87
80
78
87
164
106
110
110
95
128
69
91
83
80
94
103
110
175
102
112
80
107
74
115
134
85
154
163
91
134
154
80
95
120
87
69
140
134
76
79
78
183
121
175
94
160
96
91
115
114
112
117
91
153
78
91
115
160
149
100
129
76
80
119
120
110
89
99
154
69
89
118
109
106
85
94
87
119
88
128
100
94
107
94
169
83
80
136
76
134
76
146
174
157
110
120
85
76
110
142
112
96
106
69
163
72
93
76
76
107
120
118
126
89
164
131
119
134
69
102
134
76
143
154
117
175
154
145
80
140
80
80
98
143
100
156
82
106
80
76
131
93
137
69
128
94
151
119
109
80
109
88
80
120
121
80
80
89
136
63
76
88
128
91
131
106
110
72
74
121
109
93
119
106
64
96
108
107
107
99
175
119
119
88
109
99
146
175
185
136
114
87
114
94
71
129
80
127
128
78
85
133
109
151
69
99
116
80
57
109
98
80
107
89
124
187
90
143
99
83
110
78
104
193
119
107
80
91
69
87
87
69
123
175
105
99
76
79
109
90
94
87
112
120
99
69
134
72
107
128
80
134
104
121
99
107
128
146
72
119
76
109
87
90
123
110
126
69
59
126
156
80
129
128
154
76
58
69
145
110
93
140
107
87
87
164
76
107
74
140
80
119
126
80
174
121
155
120
175
94
94
119
128
89
78
80
110
119
96
100
127
85
80
147
80
107
78
131
128
155
101
76
69
106
87
80
150
96
107
80
107
100
74
80
80
72
72
163
69
175
87
87
87
120
134
107
140
89
90
175
88
69
69
90
72
78
136
106
131
72
99
107
99
136
90
123
89
143
76
129
83
110
102
76
121
101
80
110
115
91
146
174
154
175
80
101
93
145
69
153
80
95
104
99
52
107
87
119
154
127
66
156
144
80
83
80
147
129
80
117
87
88
87
131
76
136
119
107
69
78
92
93
103
114
72
93
52
112
88
120
96
76
146
92
131
112
144
52
80
175
104
99
78
107
76
98
134
69
134
80
78
87
52
88
142
69
120
54
73
112
80
99
96
83
138
99
104
100
88
94
80
99
80
75
94
76
115
117
106
123
100
127
91
127
121
114
90
157
182
112
117
75
56
69
76
78
99
94
120
134
80
117
123
137
72
117
85
151
94
144
98
156
122
90
120
88
144
87
147
80
76
74
69
101
80
99
80
136
69
78
163
72
76
69
94
94
117
146
113
80
78
87
80
98
110
151
78
146
146
80
175
76
131
115
118
115
76
137
160
146
69
117
93
99
128
80
189
144
120
76
71
90
87
148
94
107
120
136
123
108
160
94
76
87
123
64
80
89
69
106
148
96
119
94
80
145
89
88
101
100
91
90
83
120
122
69
91
69
89
80
107
75
119
85
94
154
69
60
112
67
128
107
122
120
89
76
140
94
69
112
127
80
74
137
163
142
69
148
131
98
99
80
83
87
155
118
75
80
163
120
93
144
112
91
109
84
150
91
152
163
111
104
87
118
102
80
133
106
79
87
175
112
87
119
120
150
88
152
80
72
69
109
88
107
154
110
88
160
120
111
80
96
107
110
131
95
105
80
154
136
175
87
122
103
87
91
140
89
123
80
126
87
94
80
109
151
124
109
127
88
106
129
101
134
69
72
89
89
127
69
58
88
89
89
99
169
112
143
134
124
113
113
143
109
78
83
78
127
99
123
76
134
75
121
94
163
52
78
116
85
119
154
66
148
94
69
107
87
119
78
76
127
157
95
114
119
58
164
143
107
194
131
176
155
136
76
60
148
177
71
119
104
78
146
87
121
97
175
99
82
76
87
99
120
99
106
112
100
109
119
80
142
69
148
80
104
115
76
69
119
137
94
136
201
134
69
107
89
110
154
69
128
69
69
132
87
69
155
88
107
79
107
80
80
164
76
101
94
113
138
163
85
89
101
134
127
78
74
119
120
112
106
128
175
120
76
125
93
76
88
88
110
159
119
120
112
160
98
76
128
89
102
121
145
154
91
147
94
151
134
75
128
147
73
152
118
89
89
128
134
125
68
89
80
74
69
195
156
98
68
99
90
131
78
94
156
129
69
151
109
80
175
120
156
111
146
80
154
109
119
87
107
120
76
78
69
133
148
115
118
73
138
80
115
152
112
131
66
69
128
88
119
101
60
121
197
69
80
98
152
110
94
120
175
89
99
69
72
87
52
69
124
117
109
108
87
109
87
99
137
119
89
90
106
100
72
143
72
148
131
95
43
133
110
141
156
113
112
156
119
88
116
116
80
123
117
139
116
87
109
56
96
140
106
121
109
87
78
119
114
121
145
125
107
124
88
94
78
112
156
78
113
80
125
52
80
137
120
113
106
89
80
112
109
140
148
69
154
75
78
54
80
147
120
115
76
99
171
109
80
161
160
80
103
89
76
175
80
131
78
80
132
69
98
118
76
117
125
69
78
99
69
72
88
115
129
115
115
99
69
111
145
127
112
114
113
75
128
107
76
147
94
76
94
114
127
80
175
131
96
89
121
80
87
87
117
94
78
152
80
80
130
78
120
99
128
107
117
63
101
69
155
197
106
86
113
165
95
113
113
117
85
56
106
132
78
87
117
69
76
154
80
94
134
87
93
56
99
72
120
115
136
120
99
132
127
121
175
89
146
120
145
129
106
134
119
80
143
128
96
112
107
143
101
90
127
127
78
131
76
74
119
80
125
131
169
81
142
152
94
76
99
80
121
100
76
76
93
118
93
119
93
88
132
89
148
78
87
129
115
69
76
78
78
99
110
118
99
144
105
154
80
117
114
88
137
154
109
110
76
107
93
100
112
137
80
197
156
113
98
80
131
111
119
117
80
69
120
140
130
109
126
150
76
128
71
128
136
87
107
69
102
112
88
78
131
106
93
87
69
166
112
76
52
128
151
110
103
145
80
156
119
80
112
94
80
76
128
114
115
128
99
148
110
197
118
141
115
69
136
80
110
106
140
80
103
80
82
109
140
80
175
88
163
144
108
175
134
131
99
101
64
120
80
119
69
120
131
88
80
94
102
151
78
89
107
104
76
87
156
76
89
87
119
185
110
80
112
110
83
109
69
175
119
82
122
91
76
87
54
98
119
69
69
106
56
80
102
163
120
112
88
96
134
143
94
69
99
56
117
118
83
80
99
69
76
115
143
80
169
80
69
109
136
120
72
96
140
122
119
106
71
74
120
69
87
156
121
76
111
102
154
97
69
119
80
151
120
107
87
80
72
137
141
76
104
98
80
148
94
128
95
166
87
69
76
89
69
56
104
71
89
68
94
156
80
69
107
118
69
145
80
94
69
103
101
81
87
78
74
131
133
142
66
76
125
131
123
134
52
127
175
96
128
91
102
72
120
94
69
111
103
134
175
85
128
102
175
104
123
86
57
134
88
90
111
80
138
111
120
93
113
140
120
136
80
80
110
109
80
96
118
80
95
93
69
93
101
69
80
160
134
78
131
78
78
80
175
154
98
80
149
143
96
152
164
99
155
56
119
117
107
114
69
113
153
134
87
101
129
110
78
87
120
111
54
76
134
128
87
80
111
95
87
69
99
105
110
88
76
94
109
119
109
80
136
101
123
119
136
128
147
80
74
134
121
119
83
90
128
113
99
136
104
88
154
119
85
78
100
81
102
78
128
56
95
69
92
93
101
149
91
127
112
87
113
78
119
109
103
134
80
69
197
69
76
69
143
87
99
69
175
89
80
89
91
117
120
80
80
112
69
117
89
174
85
175
69
87
74
69
76
111
154
80
142
100
120
80
126
119
69
164
59
90
143
101
74
79
119
137
78
121
80
110
80
134
166
160
118
102
144
103
89
151
80
119
72
127
88
197
80
88
78
89
76
69
111
80
56
87
88
85
79
152
88
154
148
154
178
102
145
119
87
183
104
97
78
101
133
127
78
183
76
112
136
128
104
113
197
113
85
87
121
91
120
134
140
137
136
121
128
107
88
76
110
69
116
107
112
69
131
80
155
144
91
93
113
175
114
117
80
111
107
127
112
107
119
119
117
135
175
133
99
125
104
113
99
78
137
118
169
102
142
118
110
90
134
87
69
158
69
131
91
91
80
80
89
56
139
93
100
132
90
125
76
128
80
69
109
64
72
87
87
69
76
133
112
90
139
103
151
140
87
80
91
175
133
113
105
112
80
99
116
88
147
126
114
83
106
119
134
104
77
69
94
119
64
118
154
80
151
129
94
152
100
80
117
113
80
127
101
129
99
107
104
88
80
109
113
56
113
159
54
117
78
64
107
126
88
150
59
107
136
109
128
146
52
116
127
94
69
125
78
89
78
112
119
94
89
151
117
120
136
56
128
117
121
104
101
109
112
87
175
130
80
126
148
106
136
93
153
92
109
80
107
69
87
143
109
94
95
80
122
94
87
140
128
86
127
76
148
69
142
85
154
80
110
94
118
110
104
113
145
80
120
89
131
134
145
135
109
104
87
120
156
156
99
127
94
122
101
151
119
107
87
125
104
134
88
52
89
89
135
111
78
123
78
78
107
80
69
110
107
99
80
87
106
143
150
89
154
76
94
78
101
69
115
185
88
146
107
99
156
148
69
124
121
160
76
80
96
85
90
114
93
154
143
80
128
133
78
88
67
83
109
80
83
80
107
128
80
88
85
78
151
94
90
111
110
134
76
133
69
87
109
119
120
120
80
134
93
87
80
80
140
79
132
155
181
69
136
96
113
122
123
100
94
104
128
69
69
131
87
109
104
114
121
101
197
129
82
76
80
122
175
104
125
78
78
98
104
176
113
87
119
84
69
106
99
107
69
67
142
101
80
134
75
72
106
80
66
110
88
104
100
129
71
69
85
165
67
88
140
117
104
87
87
88
120
80
69
112
116
118
128
78
134
155
69
87
96
74
52
106
141
154
96
100
111
146
117
69
69
143
93
119
151
151
87
80
146
99
69
99
118
87
78
87
119
102
69
106
115
103
117
154
109
122
111
96
69
150
80
128
64
72
94
91
144
66
88
183
169
156
155
110
119
172
88
100
95
110
175
101
152
76
107
124
120
107
93
152
88
131
127
94
107
83
147
80
146
87
111
151
102
80
99
134
126
125
114
199
106
155
107
106
131
122
119
117
119
94
80
155
115
148
90
120
144
98
87
107
52
117
102
88
119
120
149
87
156
107
136
111
74
131
80
104
119
125
175
138
112
94
91
131
99
80
74
107
158
117
134
87
151
131
128
58
67
144
110
112
103
97
131
69
117
125
68
72
109
107
80
120
121
144
107
154
69
101
94
96
119
197
116
80
80
99
99
110
69
69
121
80
104
128
89
69
137
134
96
89
118
87
52
78
110
91
101
151
90
175
154
99
107
131
107
52
164
136
147
112
80
80
197
98
89
80
178
114
79
72
96
165
100
106
106
89
128
106
88
118
83
152
153
119
137
69
104
112
145
80
156
112
80
66
101
128
87
69
107
78
76
69
99
119
90
136
163
121
136
91
122
104
151
80
87
78
76
122
89
78
78
76
91
92
76
109
88
80
76
89
80
94
132
154
110
111
74
110
75
154
117
87
121
78
163
124
78
80
151
64
102
136
80
119
113
156
74
113
76
119
98
98
99
80
124
54
119
183
88
112
107
80
133
106
74
130
89
117
117
187
147
89
80
107
87
114
120
128
145
134
100
88
80
127
73
117
199
124
93
98
99
107
89
88
140
99
69
69
89
147
120
102
110
80
87
91
146
109
100
106
103
119
129
96
85
145
87
124
107
96
151
93
76
128
69
89
69
134
117
127
78
119
155
159
121
94
111
69
164
87
126
78
91
156
104
56
128
121
92
117
69
94
125
120
68
127
146
138
93
140
136
154
107
103
175
197
67
78
100
174
156
69
98
119
69
80
80
89
131
118
127
87
100
91
78
112
78
197
142
69
98
80
98
129
56
154
89
134
56
93
99
103
76
120
125
112
163
98
128
133
80
87
111
87
72
74
110
89
175
69
115
107
87
118
95
109
87
69
114
138
175
128
93
94
128
78
74
114
87
80
106
93
128
80
102
109
59
94
101
197
143
94
95
112
153
95
132
80
69
76
98
80
138
94
126
119
136
80
120
95
63
80
73
89
89
124
144
80
80
78
151
80
130
67
79
89
85
138
72
131
109
117
79
148
109
80
142
78
107
80
175
118
175
69
71
76
73
154
94
76
104
89
101
88
127
91
159
133
120
119
142
76
80
54
99
128
80
80
136
119
107
104
157
80
63
67
131
112
128
164
80
121
129
80
127
119
80
80
106
116
104
154
88
101
80
128
79
143
160
68
146
112
80
92
154
128
102
141
112
93
89
76
132
150
124
69
93
136
80
133
88
89
75
119
94
76
69
120
101
141
89
121
107
117
80
100
80
131
112
146
69
94
122
87
110
154
109
88
164
128
69
69
80
124
89
109
91
175
151
131
124
103
117
87
120
163
80
80
80
78
120
128
69
117
80
78
107
80
113
54
99
104
79
147
156
101
140
100
80
80
93
80
69
118
69
149
93
88
69
145
119
121
128
85
78
122
80
76
150
104
87
114
175
136
72
90
87
72
94
107
87
75
140
121
113
110
151
101
119
127
139
107
94
87
78
80
119
110
156
79
121
69
153
87
69
99
113
144
102
116
154
110
80
85
76
147
120
134
106
111
137
76
101
103
106
78
111
66
80
156
89
89
113
99
117
136
122
112
154
88
131
156
85
79
88
56
112
119
69
154
54
69
121
151
78
107
175
132
95
118
119
102
154
154
107
123
76
69
106
121
138
52
82
154
197
133
123
80
87
76
154
128
116
80
78
54
109
59
78
103
94
164
110
80
119
134
78
118
80
176
155
146
119
128
134
78
111
78
118
126
104
101
109
100
125
69
75
145
109
136
131
154
108
72
94
116
160
89
117
107
96
69
72
85
134
93
137
112
160
157
122
175
76
76
128
119
74
129
93
122
134
99
76
99
134
87
94
80
125
78
161
148
119
94
165
113
106
104
60
93
113
102
128
209
80
91
102
110
121
100
82
141
155
96
115
118
124
99
142
104
104
127
85
166
120
131
89
79
76
117
113
85
124
130
101
94
98
110
105
103
94
109
110
155
160
175
80
120
80
197
101
120
69
126
144
89
80
145
87
80
104
134
56
80
120
111
104
175
95
109
80
80
175
76
105
120
95
146
126
80
104
106
119
76
106
112
93
123
88
85
164
120
104
130
76
156
69
106
175
107
87
148
148
96
110
109
140
121
111
130
80
80
110
67
96
155
119
69
80
106
183
87
100
80
134
100
104
154
80
134
118
154
117
92
76
88
69
99
80
78
117
120
56
121
113
120
154
130
110
121
133
88
98
90
159
88
93
88
137
124
69
94
126
101
197
104
69
76
69
175
197
76
88
94
166
69
119
131
135
125
80
131
80
93
195
134
80
102
148
104
60
122
94
158
104
76
101
104
88
119
154
121
131
69
120
88
76
154
91
94
157
156
154
175
131
87
110
131
88
132
131
121
69
94
134
133
76
126
145
124
120
107
113
106
127
54
80
74
69
69
76
145
87
69
124
88
107
121
122
119
128
80
136
125
175
69
80
94
54
92
80
109
129
113
69
197
175
107
76
89
137
76
117
155
123
89
106
138
158
101
87
80
100
150
89
94
80
78
123
121
110
80
125
69
69
99
146
89
69
110
80
104
66
136
74
87
80
101
83
82
94
117
172
143
131
125
126
75
68
115
115
151
130
69
89
107
100
69
120
101
134
89
112
72
105
100
201
111
119
175
119
106
119
80
87
134
112
116
76
87
145
119
87
104
87
147
99
87
101
80
87
91
76
90
93
99
117
78
131
87
67
155
155
156
122
112
115
151
99
118
163
80
124
99
101
87
175
69
154
110
87
76
102
78
132
107
99
80
120
119
94
112
82
96
92
88
99
119
91
156
69
131
120
162
107
106
99
122
76
131
142
76
88
76
197
175
80
82
121
94
134
119
101
121
80
129
143
155
155
87
154
80
76
80
99
128
94
88
136
90
80
120
80
72
78
146
112
123
87
72
99
131
69
124
137
101
113
164
123
83
83
80
76
76
76
80
127
69
107
87
99
131
69
110
120
104
126
69
93
143
128
117
89
76
80
134
87
144
80
110
122
134
143
87
97
137
124
66
88
127
83
76
80
78
145
114
154
90
107
80
148
87
122
140
124
106
145
99
175
95
124
89
155
117
78
117
130
104
80
197
98
99
66
80
146
128
177
107
95
72
154
126
112
132
134
104
80
197
87
119
113
89
121
120
197
138
112
101
109
131
118
98
175
143
78
101
186
137
85
183
80
137
136
119
112
142
76
152
104
80
91
99
120
76
121
126
106
64
107
78
110
119
128
163
87
56
89
91
110
131
88
77
140
98
94
78
119
146
154
96
172
124
112
88
104
69
97
87
131
67
119
91
87
121
80
116
91
80
87
80
78
138
176
107
126
99
106
91
78
126
101
174
118
79
80
111
69
92
117
119
88
126
109
43
154
120
151
94
120
113
104
111
99
102
111
72
141
132
124
129
117
130
69
93
69
124
137
69
96
80
80
72
69
90
78
148
100
175
119
88
89
78
145
113
91
89
93
140
128
69
80
93
67
104
101
110
152
146
72
109
80
99
72
83
115
122
87
80
127
87
143
117
181
160
80
80
78
146
93
93
80
78
100
137
104
94
80
72
96
99
80
103
109
106
137
119
113
154
80
112
104
201
143
128
80
78
80
100
116
83
134
152
67
87
80
80
96
107
175
128
114
104
107
64
69
124
120
76
113
98
104
92
120
128
123
78
80
109
92
109
133
78
132
80
104
87
76
107
76
163
140
134
124
80
107
80
87
78
89
123
91
113
88
144
136
129
158
89
93
69
134
119
88
92
84
69
87
85
85
111
126
80
93
175
93
87
110
54
118
117
104
112
72
158
113
87
69
80
109
69
72
175
134
196
85
69
154
130
69
78
78
78
74
142
119
140
98
80
106
111
105
137
121
100
154
69
72
120
134
80
175
80
80
69
101
88
69
69
113
119
69
94
76
119
80
91
119
120
104
69
75
155
69
115
101
64
69
107
86
117
78
78
78
76
72
80
99
83
107
88
128
142
69
72
69
99
80
69
78
80
120
156
107
69
113
59
122
110
104
154
80
123
119
100
88
80
147
151
110
69
59
69
134
132
80
72
136
69
130
89
175
78
128
117
72
128
175
80
72
79
102
112
76
98
103
103
89
154
100
91
69
144
78
69
162
109
102
131
122
117
85
88
107
128
94
136
107
160
105
118
114
165
109
134
131
102
144
136
118
115
129
80
142
92
76
67
145
110
160
87
146
107
88
88
87
164
125
69
146
80
140
76
89
120
155
78
95
113
101
109
135
87
94
113
113
113
113
103
109
136
78
106
140
148
129
75
127
128
115
175
76
106
121
117
89
78
111
102
80
107
109
80
83
74
80
111
109
117
114
82
79
72
138
79
102
94
181
116
107
110
148
91
76
88
87
99
131
101
80
43
85
80
93
69
98
87
80
128
72
99
76
89
74
110
100
175
118
120
80
124
143
80
69
102
151
83
74
80
134
78
69
147
96
90
119
78
93
175
175
87
104
78
78
78
137
146
80
96
132
197
99
80
80
88
120
118
109
131
107
78
163
126
79
91
80
117
87
43
175
147
119
87
144
105
68
120
109
87
74
87
78
201
113
76
120
80
136
120
107
78
109
199
125
78
78
94
128
78
69
109
78
119
94
80
154
117
119
93
155
114
151
107
101
69
119
76
107
76
128
174
112
143
69
145
119
89
87
78
119
104
69
120
99
162
87
63
113
80
104
76
87
69
88
175
57
119
70
96
140
154
93
116
120
109
193
88
80
126
99
120
76
135
89
117
151
93
111
74
154
113
89
162
120
94
87
80
102
129
80
80
143
112
69
197
132
107
133
60
99
78
136
69
78
89
78
89
146
148
156
80
104
144
67
99
95
107
147
125
89
175
106
156
111
96
76
157
97
111
87
104
110
99
109
125
69
122
83
78
76
143
93
80
106
80
175
93
116
76
107
120
124
151
131
89
90
98
110
171
120
89
106
72
115
151
127
56
137
99
119
201
85
133
145
64
80
128
80
99
144
107
80
74
78
122
80
110
99
93
76
130
74
107
120
126
91
126
119
56
122
94
76
80
80
78
83
113
76
75
143
120
72
110
120
90
145
128
97
156
117
72
137
136
163
144
75
134
146
126
69
129
72
136
175
80
137
74
93
78
115
145
120
79
80
69
164
154
106
102
84
110
163
89
98
130
88
69
103
132
136
119
80
126
89
83
110
80
90
148
148
78
141
143
90
110
151
96
123
121
136
136
76
109
92
129
75
140
145
67
145
145
76
103
60
93
121
135
156
113
78
107
104
156
69
94
111
94
119
128
81
122
80
115
82
87
88
69
78
101
76
119
119
175
117
76
132
102
112
90
148
112
119
99
104
88
102
119
76
124
94
119
69
58
56
99
102
140
80
87
148
80
136
136
54
81
96
126
98
74
107
146
103
80
117
127
76
152
104
78
115
118
99
96
127
107
134
147
120
107
114
80
69
96
121
80
101
80
63
87
66
88
134
103
69
120
106
154
138
106
203
106
52
95
128
69
117
88
121
78
140
209
109
175
54
117
76
80
91
96
88
117
101
163
72
104
76
99
64
94
147
80
127
76
126
52
136
121
147
174
78
186
69
78
145
109
197
85
99
73
99
80
118
83
72
94
115
166
123
117
104
69
120
117
119
119
122
128
116
106
102
93
169
163
119
94
112
100
127
91
130
128
80
154
87
109
76
69
162
80
104
72
164
87
109
79
140
76
78
129
91
147
87
146
101
80
87
174
72
87
104
136
91
93
101
78
119
114
78
146
88
88
137
76
107
89
94
99
104
119
147
87
128
99
199
74
111
91
131
88
64
69
106
107
72
54
80
113
96
131
120
120
79
78
130
119
107
128
74
76
128
136
94
109
104
175
107
80
72
130
112
122
80
174
175
156
162
117
76
101
111
96
75
124
136
120
104
99
69
93
99
82
87
145
69
154
80
96
72
114
87
80
126
92
140
107
107
88
112
90
69
69
99
94
134
56
106
76
149
90
107
78
109
100
80
123
147
78
78
128
128
112
69
87
109
96
95
110
112
106
102
106
98
76
152
131
136
162
87
87
75
117
80
113
131
151
93
113
88
96
107
113
64
68
75
181
117
72
119
164
85
82
69
145
69
83
113
131
87
69
104
146
80
80
133
127
73
69
160
107
109
101
119
100
109
88
197
126
69
101
104
145
94
112
76
78
134
72
121
131
112
74
133
107
58
109
96
110
126
74
80
80
129
117
115
168
134
80
76
89
120
175
134
89
102
69
109
102
117
112
126
54
93
99
101
85
102
80
69
128
159
112
87
78
121
134
80
153
80
80
147
102
132
175
162
147
145
112
87
130
88
80
78
118
96
175
76
78
113
69
109
134
60
118
78
78
120
71
105
99
69
99
104
131
164
102
129
80
92
69
52
89
69
134
104
80
175
112
87
106
199
69
88
104
80
78
130
131
69
121
109
121
108
163
107
102
87
146
123
87
69
88
107
142
100
102
76
90
123
123
140
125
69
166
77
69
119
129
72
146
101
122
120
80
80
106
118
107
109
151
125
141
80
126
87
112
155
177
69
104
123
148
104
91
131
120
87
128
147
88
135
91
69
101
74
54
96
100
89
96
154
109
87
80
83
59
140
175
137
140
82
99
104
80
127
113
102
98
120
99
151
131
89
125
89
76
109
112
78
100
100
119
88
90
107
133
72
72
80
151
88
78
108
69
107
111
80
197
113
73
154
124
134
69
137
131
72
110
101
113
88
69
80
120
74
93
101
93
69
52
163
76
69
109
146
72
120
101
128
87
69
109
119
69
95
119
56
96
119
115
134
85
78
103
91
85
101
136
89
127
104
128
197
120
109
125
94
93
185
133
88
133
110
134
130
119
69
104
151
96
155
88
148
134
68
89
85
129
69
102
109
74
93
155
43
97
69
104
88
104
80
97
121
76
104
119
156
131
100
102
119
87
115
76
107
69
132
127
102
76
113
74
136
124
121
109
121
109
116
88
101
127
69
118
107
197
99
118
101
104
87
162
123
69
69
119
132
94
113
119
154
76
187
147
67
104
131
87
136
137
69
122
119
78
78
110
78
103
120
136
113
129
66
128
93
89
155
78
128
123
156
80
100
83
154
134
89
128
119
87
161
130
87
88
80
80
107
101
87
114
87
54
136
76
175
89
151
112
197
123
144
52
107
96
78
115
140
102
102
128
88
115
80
97
90
109
111
130
107
130
80
131
90
107
172
84
148
99
80
112
69
80
136
99
93
122
119
91
155
163
120
76
80
80
94
69
154
124
145
87
80
78
127
175
76
83
142
93
78
119
80
90
96
154
146
91
164
80
119
76
120
80
116
175
121
113
69
76
99
123
104
136
101
120
88
183
104
128
113
93
155
154
102
172
152
117
89
109
168
78
92
87
119
88
113
80
80
80
119
111
120
118
145
137
89
80
87
131
136
92
90
114
88
139
143
156
78
134
132
94
98
80
80
134
99
164
118
134
110
87
131
88
154
169
92
80
124
93
69
80
80
56
197
193
100
115
164
78
99
142
87
115
90
106
87
152
79
82
134
109
140
94
146
128
64
69
106
134
117
155
89
151
148
83
99
197
175
99
99
131
99
99
80
87
119
113
109
152
175
121
153
119
66
78
104
144
100
94
197
94
85
100
133
118
98
80
107
93
57
89
69
156
97
121
90
131
80
144
101
136
113
138
94
90
124
120
69
117
78
69
112
78
95
80
154
76
69
120
120
83
100
69
76
78
140
154
133
115
128
102
165
88
104
94
175
78
91
197
119
92
80
134
80
127
63
113
80
140
120
138
128
142
80
118
117
175
119
134
110
143
69
79
156
76
109
87
107
133
156
109
164
107
89
93
74
80
54
88
91
128
78
131
140
69
120
79
102
85
99
119
69
109
69
89
133
69
96
120
69
154
89
146
119
136
88
197
147
153
78
69
89
92
98
93
120
104
76
112
185
78
120
107
154
100
120
134
106
110
90
175
146
56
121
80
100
134
142
117
85
80
122
93
69
99
110
85
126
101
101
106
80
54
100
99
164
115
76
89
80
104
84
69
78
134
56
80
89
76
109
92
107
130
78
133
76
110
120
120
128
58
99
76
94
85
145
91
134
96
54
140
119
117
119
106
126
125
96
112
69
87
58
102
120
95
154
140
144
142
177
122
88
143
101
120
118
140
175
101
127
83
69
114
115
94
107
79
80
132
88
78
72
83
128
110
69
119
119
80
80
90
121
110
119
102
93
109
197
80
94
128
80
133
69
87
151
102
92
119
76
112
154
72
85
107
107
74
122
118
143
145
93
169
69
80
91
154
78
140
80
97
109
155
128
104
96
104
117
113
175
128
110
79
87
120
64
117
78
69
80
94
59
111
87
136
74
128
87
69
156
164
110
69
76
69
119
104
117
74
99
72
69
76
110
131
80
87
151
124
112
137
154
59
83
162
120
43
78
93
127
80
130
128
80
119
80
104
78
121
80
120
143
181
78
88
52
197
94
76
111
69
78
95
92
69
154
154
69
109
102
85
56
69
105
96
128
100
119
130
129
119
92
128
146
78
76
154
175
109
80
66
101
80
87
138
107
146
136
69
106
104
148
151
85
78
80
76
69
94
69
80
72
91
80
134
114
110
131
69
123
183
80
78
152
145
107
117
80
80
150
183
106
120
69
106
91
54
101
100
55
155
80
69
87
154
107
112
111
87
69
126
80
83
131
107
69
93
110
134
87
102
89
60
163
107
99
136
120
72
197
131
80
137
99
78
115
76
154
161
94
125
101
91
104
142
123
83
88
101
76
110
95
118
76
175
112
121
108
119
80
80
119
76
96
130
133
109
154
118
95
80
76
140
107
130
87
80
69
80
77
146
140
107
119
111
97
87
121
140
134
120
145
118
89
89
69
78
136
76
94
143
197
98
69
52
80
80
80
80
131
152
155
94
155
123
137
119
112
95
90
136
69
87
148
96
101
144
87
143
129
128
87
88
106
143
117
80
143
99
108
69
144
76
69
75
175
120
80
117
78
118
80
101
122
128
136
69
96
58
78
161
88
87
94
103
96
137
119
87
110
127
124
93
80
116
76
120
96
80
114
87
90
115
76
107
91
112
197
128
156
148
114
177
118
131
109
104
107
146
113
130
106
69
123
110
76
156
154
78
99
126
80
80
78
120
134
140
87
69
118
76
110
155
119
78
91
79
87
69
121
72
115
69
94
88
119
87
109
163
63
99
99
96
122
78
74
78
110
93
89
76
104
154
126
56
120
72
118
73
107
89
69
89
125
143
107
187
93
101
72
118
117
80
89
110
74
155
112
119
106
145
109
80
93
120
161
118
187
127
113
134
104
107
145
119
109
120
119
130
87
78
156
134
87
80
76
76
87
150
69
108
121
80
75
66
90
110
131
151
120
98
134
181
119
80
54
110
69
141
117
131
69
78
88
78
107
98
175
94
115
109
69
107
90
109
87
119
101
78
87
74
64
69
108
97
104
94
87
127
91
134
134
150
112
56
80
120
155
90
80
175
76
85
80
103
140
76
87
112
120
89
69
123
110
104
76
106
117
80
80
78
66
120
102
199
78
94
78
83
197
154
128
123
110
154
183
106
120
71
93
107
130
89
109
147
92
145
102
125
136
117
78
98
160
127
72
123
120
80
109
76
87
114
152
106
76
91
89
89
89
78
119
69
115
87
134
119
112
140
78
52
96
119
89
110
120
128
104
76
120
140
78
113
121
156
69
92
154
130
76
89
125
102
78
120
76
111
80
80
94
181
107
79
109
79
80
129
156
88
106
76
80
128
87
107
110
99
119
155
80
80
87
155
82
127
74
76
154
84
94
122
155
148
94
117
113
91
110
115
87
76
93
151
87
106
149
94
100
127
121
78
154
99
128
114
80
79
124
73
109
122
132
112
107
127
113
80
145
175
69
95
87
93
109
114
128
153
104
80
95
126
129
63
80
110
128
72
89
181
96
66
137
112
89
99
149
80
87
111
87
119
78
128
67
88
76
153
131
80
72
104
107
80
87
78
125
118
141
103
69
80
137
128
80
155
87
119
119
128
138
69
128
88
120
142
52
96
100
80
119
69
93
91
120
80
181
109
131
107
107
76
87
69
162
161
74
136
120
154
128
140
81
111
87
143
106
76
78
98
99
105
142
132
161
124
136
108
102
99
66
85
120
103
80
69
88
78
99
123
78
169
118
113
102
111
89
156
89
80
107
99
102
93
80
69
123
119
94
151
100
69
80
175
110
110
76
142
109
123
145
87
137
134
154
139
107
161
91
99
122
93
125
94
119
80
99
140
119
137
80
134
102
68
87
156
82
76
127
113
145
87
100
96
115
149
144
72
100
156
120
107
120
109
52
80
52
155
143
143
134
128
120
87
115
78
99
111
93
131
119
148
104
78
106
93
150
143
134
104
130
54
90
69
89
80
143
146
134
94
69
74
117
151
80
113
131
107
181
155
122
108
151
69
128
164
109
101
106
131
78
95
149
120
69
175
143
88
175
110
96
136
78
104
104
107
149
115
93
110
106
99
104
131
80
109
119
104
120
128
69
121
69
69
87
137
80
133
175
85
137
72
69
101
88
87
123
106
128
87
129
110
164
72
78
93
107
120
88
130
80
128
120
78
129
209
80
106
85
120
118
72
110
134
107
107
80
52
87
91
106
128
93
147
99
133
100
136
128
128
136
76
99
87
88
134
94
175
119
101
128
69
119
119
72
57
132
123
106
154
106
131
104
93
99
91
107
74
78
90
162
80
94
69
76
128
82
89
80
80
127
128
150
95
80
119
100
80
107
121
87
78
116
122
128
127
107
100
115
80
102
80
156
128
80
76
128
79
164
136
104
113
69
78
64
76
172
67
69
120
87
134
85
99
87
94
69
78
83
106
109
72
106
89
107
80
120
134
88
87
89
77
153
118
137
94
156
94
69
131
131
110
52
89
128
80
175
156
110
119
120
109
133
78
74
107
140
122
101
128
89
87
69
102
119
87
69
69
101
151
69
87
197
142
89
110
117
128
93
134
74
112
80
67
93
89
110
147
117
123
69
82
146
121
112
73
163
107
147
140
80
80
94
131
122
119
107
104
145
71
93
94
69
145
139
146
69
69
120
96
121
83
80
110
76
89
150
110
175
140
147
80
90
69
163
83
123
74
76
52
101
93
154
102
80
69
175
119
93
175
113
172
76
106
106
100
107
126
91
80
80
99
139
87
80
120
69
85
141
89
87
80
110
112
76
87
134
113
154
154
146
99
76
81
78
80
117
134
80
154
93
120
119
110
78
126
145
136
76
78
99
87
176
69
130
118
128
117
120
115
102
112
119
181
146
94
119
78
146
140
85
99
88
69
147
106
110
119
175
80
175
104
122
80
96
94
142
52
87
134
140
72
85
63
140
87
130
87
112
174
76
109
107
59
69
136
146
89
114
131
88
88
96
131
106
101
201
104
107
113
134
126
120
113
131
164
75
139
148
87
142
80
113
160
89
132
80
113
106
112
100
104
119
120
109
120
80
127
69
121
72
103
104
80
117
85
92
102
76
118
175
72
128
83
60
160
197
121
146
134
94
69
80
142
88
119
121
112
106
67
138
154
120
128
80
132
146
131
122
69
128
81
104
74
113
114
80
87
122
69
102
109
175
98
137
104
80
95
137
136
76
143
121
117
140
113
118
139
127
69
84
54
136
80
107
115
80
89
197
96
147
104
112
114
127
94
121
80
146
80
109
102
119
160
120
97
69
117
157
94
120
113
78
136
156
80
69
104
187
112
69
119
98
107
172
117
111
87
101
80
79
134
110
91
69
104
112
128
128
52
106
72
89
151
115
71
69
96
54
69
76
72
130
120
117
111
78
69
151
143
114
52
69
134
89
69
78
128
118
99
69
100
104
120
138
99
80
131
80
136
119
103
126
96
80
76
78
119
97
72
137
76
54
171
100
116
56
113
69
112
89
175
121
107
107
142
109
113
87
109
119
80
69
128
154
107
131
128
78
78
156
96
136
110
87
175
109
110
181
80
80
87
134
96
144
76
99
81
102
76
87
144
74
110
99
72
140
197
88
78
96
109
120
107
80
80
136
104
117
111
132
109
156
175
151
88
97
59
107
75
154
98
80
80
94
117
94
87
88
75
120
80
117
96
119
80
126
80
80
126
113
99
87
69
134
66
113
126
120
98
113
88
80
75
88
102
69
96
119
69
143
78
94
87
87
93
80
96
69
76
85
88
87
145
89
78
148
69
143
117
83
106
87
85
106
78
112
103
71
80
80
69
136
87
122
104
80
64
89
101
175
110
80
87
96
86
106
175
132
123
69
146
87
119
69
121
133
76
134
107
109
114
83
122
74
76
148
80
94
94
137
80
128
87
117
105
123
154
164
128
120
112
69
151
78
92
121
72
78
134
128
100
151
107
175
104
72
154
128
107
91
88
91
115
92
85
76
111
109
102
87
89
87
120
146
87
143
72
107
56
145
87
145
78
101
88
129
134
118
69
96
128
80
124
154
78
123
117
125
80
99
121
96
78
69
119
118
72
89
163
84
87
119
175
80
99
120
118
78
136
80
103
112
128
154
120
122
76
76
113
79
94
120
66
69
87
75
127
80
87
110
154
128
151
98
130
113
88
145
151
74
88
82
134
76
154
69
87
76
133
111
107
106
155
110
106
115
131
74
52
75
80
111
123
118
100
80
78
80
78
174
76
145
87
135
78
72
109
88
119
93
78
79
157
102
149
89
88
90
80
120
110
112
80
76
99
87
85
107
96
80
69
87
134
96
71
118
88
76
174
124
59
91
76
121
101
197
78
102
94
80
118
185
67
106
69
86
119
140
89
109
91
88
175
69
119
181
103
81
123
87
84
148
148
82
157
136
112
78
87
118
113
140
109
136
112
98
110
99
106
134
122
131
119
175
69
87
80
80
136
145
125
69
87
87
74
80
125
126
132
120
82
128
115
85
99
121
119
74
136
80
80
163
128
134
92
96
69
80
127
123
78
89
146
76
137
175
136
94
104
78
193
96
80
100
89
146
76
80
102
138
109
115
91
96
103
154
85
78
80
154
101
71
66
94
99
175
78
134
66
155
81
78
146
164
128
89
119
128
75
106
144
137
100
151
69
81
145
99
159
132
119
69
118
69
113
94
76
151
54
80
118
106
114
89
91
119
107
140
54
80
72
83
80
119
103
137
93
69
112
183
106
143
124
146
52
69
71
78
72
80
126
109
107
199
127
127
69
87
75
107
92
80
122
66
150
80
123
84
156
80
151
78
80
80
109
90
117
78
112
87
152
138
109
114
140
80
69
76
144
78
102
87
69
89
134
43
80
80
112
87
52
80
78
131
100
113
148
143
80
76
121
145
80
98
120
130
94
120
134
112
156
128
107
69
69
175
101
140
112
172
142
88
119
87
96
80
89
93
104
96
156
128
78
88
113
161
78
69
123
112
154
99
126
72
117
78
80
126
104
107
94
155
126
113
88
151
98
138
115
113
151
147
129
124
80
111
162
69
80
136
120
96
164
88
88
80
131
156
151
78
82
87
82
197
94
132
166
201
128
127
93
87
80
96
110
104
94
69
112
87
89
137
183
80
95
80
54
101
128
76
107
184
143
106
96
136
120
87
146
88
100
156
69
80
104
119
56
69
91
100
87
163
87
63
119
87
94
117
154
88
119
113
71
80
91
130
163
80
85
76
110
91
126
101
69
80
119
87
69
87
80
87
95
89
127
149
99
78
96
78
147
99
76
175
99
136
99
90
155
119
69
143
131
120
175
119
154
127
52
78
109
88
99
72
107
175
134
93
72
119
95
67
120
135
112
112
128
80
113
89
128
93
129
107
76
107
87
106
126
134
148
98
107
80
72
93
69
114
92
107
112
87
155
76
163
156
95
110
107
69
142
120
80
78
83
74
134
87
115
120
76
87
143
78
130
110
120
134
131
156
101
90
147
128
117
110
143
90
101
181
124
80
155
109
89
78
91
122
94
120
134
80
175
76
128
175
69
78
88
119
69
78
74
69
118
121
74
111
78
104
119
90
112
119
91
91
156
88
69
80
76
109
76
89
75
91
107
115
87
94
136
76
89
67
101
137
119
119
112
72
110
78
126
111
69
99
98
120
175
154
93
132
88
134
78
155
120
164
115
126
104
78
87
120
78
87
175
156
134
107
78
89
78
119
152
92
94
116
134
87
89
80
69
120
69
87
78
103
140
69
133
102
107
82
132
145
96
121
149
78
80
115
175
112
128
99
99
69
131
106
69
78
80
135
93
89
69
109
69
87
106
106
122
106
78
87
94
78
134
129
80
140
69
89
101
131
117
111
94
112
118
96
88
148
129
109
80
87
106
136
155
69
107
126
102
120
113
107
94
162
102
128
128
127
87
101
90
91
131
80
69
164
100
80
142
116
120
88
80
120
89
98
131
72
143
76
121
103
69
104
100
69
155
91
135
107
80
80
69
96
136
87
106
88
99
110
126
156
175
94
128
88
145
205
89
80
80
69
169
83
72
116
80
76
116
76
80
102
101
110
80
110
119
134
92
130
121
131
97
89
122
78
80
97
151
80
100
106
78
69
118
101
120
87
80
113
100
136
78
96
75
109
69
111
120
78
127
91
154
107
90
115
127
69
128
73
80
115
54
110
80
104
76
80
109
69
110
76
76
119
96
140
116
80
115
137
94
80
114
121
107
104
116
80
97
197
121
80
110
89
115
89
94
109
80
155
73
78
120
132
133
137
76
126
139
163
151
201
121
120
52
83
104
164
117
78
87
160
135
136
127
104
103
76
119
140
75
110
94
104
104
80
122
120
76
87
124
140
87
56
59
76
121
93
77
104
78
58
112
73
164
114
101
107
195
80
120
69
76
71
69
78
92
119
116
112
175
95
72
90
87
185
91
111
100
80
104
109
103
144
175
100
99
67
120
140
139
131
109
121
72
76
128
87
80
101
76
101
91
72
106
156
128
80
113
128
76
95
101
111
80
130
104
134
122
78
80
101
151
146
130
75
67
112
80
140
135
95
80
91
94
75
138
115
98
89
154
113
156
80
99
83
87
157
163
96
88
94
131
69
81
174
87
72
156
80
69
87
160
144
104
132
175
103
69
96
175
134
134
94
89
107
110
74
87
96
164
124
134
74
88
109
69
85
113
100
87
131
156
72
75
101
96
144
173
128
83
80
120
132
95
80
155
156
120
69
104
96
129
74
112
91
96
136
109
138
76
114
101
127
87
87
69
88
69
114
101
80
131
142
104
106
69
89
117
141
132
144
69
80
80
112
122
75
106
133
117
90
102
108
80
87
88
109
57
69
134
104
69
145
71
75
80
80
89
120
78
123
128
71
78
88
131
110
164
114
160
127
113
106
127
78
69
102
80
72
87
100
69
87
52
197
94
80
52
76
104
155
134
69
106
80
124
146
145
76
136
147
131
80
119
94
106
93
199
91
87
151
87
97
85
106
94
120
132
119
69
172
134
107
107
120
101
117
117
103
131
151
100
134
92
117
137
136
43
115
175
117
80
113
128
56
119
116
78
83
80
148
128
78
67
93
109
201
76
78
153
80
154
145
120
78
149
90
104
108
69
110
97
69
104
104
131
93
89
119
104
88
52
80
76
66
126
80
78
112
63
80
101
87
67
123
76
99
72
111
80
112
76
156
123
87
69
52
80
58
119
175
94
99
78
178
142
85
127
128
122
93
80
141
83
145
121
110
137
110
117
136
88
138
156
121
78
82
103
100
102
123
98
118
146
99
89
152
175
56
78
103
122
87
56
72
69
78
93
102
128
69
96
93
104
69
76
175
127
183
134
136
67
136
136
113
76
132
156
92
119
113
80
69
104
125
71
97
78
69
85
99
115
89
56
63
115
109
136
128
87
80
76
89
95
78
81
149
87
107
78
80
74
175
69
112
99
175
72
101
130
80
113
154
115
102
103
120
106
149
119
129
103
128
80
122
109
113
131
131
88
80
137
102
145
106
102
80
87
69
103
76
128
97
151
127
98
95
112
105
80
80
103
103
87
87
154
138
106
134
69
90
109
97
78
72
78
80
87
93
119
119
87
118
134
80
104
72
76
82
113
107
94
102
94
99
130
88
78
154
134
145
163
128
80
88
76
78
104
112
107
80
85
107
82
88
119
80
85
107
119
64
94
102
100
119
131
99
133
109
175
110
80
94
89
100
87
104
87
154
134
110
94
114
149
100
87
154
138
83
136
128
143
129
76
80
156
87
94
78
166
147
94
89
145
155
94
82
98
124
78
164
124
69
92
109
112
73
88
201
87
112
89
80
131
115
104
112
113
78
72
93
144
85
80
69
80
127
80
83
94
119
88
63
137
129
137
120
88
119
78
128
99
104
119
88
144
87
80
121
113
145
157
76
147
52
124
152
130
99
111
110
156
98
120
69
117
175
113
113
98
87
94
112
175
94
117
197
76
120
145
128
90
99
175
132
112
74
72
108
107
110
104
104
69
131
80
93
109
110
145
117
94
106
69
78
89
152
94
107
134
69
99
107
109
56
94
106
80
104
87
58
104
80
93
91
121
69
92
87
110
127
91
96
54
107
109
89
105
118
54
109
120
134
146
107
187
120
76
72
76
91
76
161
89
134
104
101
94
87
69
92
117
69
80
52
89
80
125
78
138
66
154
95
80
80
119
163
69
197
69
82
119
197
128
78
129
102
52
87
156
128
119
76
72
156
110
104
94
96
88
87
78
131
74
107
111
133
102
119
113
152
121
104
69
115
128
131
201
82
121
126
146
111
120
83
119
101
79
122
94
87
83
107
146
116
69
128
56
72
80
80
58
106
91
76
119
113
113
140
128
99
163
95
175
154
78
144
80
99
175
112
94
128
113
136
90
103
121
131
76
109
138
109
114
115
110
107
110
106
148
69
91
157
112
110
69
87
106
87
127
131
80
113
138
67
78
76
123
119
93
99
52
128
80
128
127
87
127
76
123
117
69
142
117
107
87
80
72
120
134
64
89
119
109
119
107
136
163
111
88
113
89
93
104
80
60
85
127
128
69
112
164
89
86
87
178
80
76
126
136
119
78
154
113
76
78
99
78
89
140
107
126
78
74
78
109
164
131
78
88
107
79
113
93
107
109
96
99
88
145
80
69
121
154
69
159
109
109
90
120
107
101
112
96
107
80
78
118
78
199
93
109
72
120
87
140
87
93
78
58
103
72
140
127
78
143
83
91
101
80
102
119
164
113
120
76
102
93
201
102
96
117
112
107
76
76
134
100
130
115
136
100
83
127
94
126
134
153
76
87
69
136
114
152
101
113
144
175
115
80
99
120
128
111
92
129
89
145
138
80
84
101
109
136
87
103
80
112
146
89
101
112
76
80
69
80
78
131
147
80
81
75
163
181
98
129
72
80
76
89
126
136
127
93
118
160
128
128
80
83
130
134
59
69
140
125
107
134
144
88
89
108
72
117
87
108
138
74
111
197
160
101
112
80
80
76
140
80
99
100
115
104
159
80
131
89
110
115
117
155
76
92
96
122
96
95
76
103
117
125
109
96
91
99
134
80
68
140
87
140
94
120
131
89
119
64
80
104
120
135
69
109
106
109
74
96
76
112
99
106
78
87
118
106
99
132
78
166
126
93
88
125
128
91
80
80
54
107
89
104
110
88
119
72
115
155
193
80
78
76
103
136
91
80
113
118
69
95
87
108
88
151
89
92
120
140
78
150
80
112
155
94
185
79
155
78
125
103
154
128
129
101
140
153
101
107
119
197
80
72
74
175
169
69
78
132
136
111
87
134
74
107
163
134
110
127
119
175
105
121
87
142
175
69
136
109
80
111
148
84
119
113
110
80
142
154
80
102
80
131
175
118
87
91
115
118
78
110
123
137
76
120
144
134
89
76
109
99
102
131
121
134
175
76
102
69
151
123
129
81
101
117
68
109
72
107
107
165
112
154
120
119
69
175
112
119
172
88
80
89
144
111
85
112
118
118
107
103
69
80
138
74
122
80
78
154
156
87
56
101
138
67
90
89
76
157
121
111
89
89
136
78
107
112
113
94
106
99
91
183
76
102
80
143
175
80
104
152
99
88
76
98
119
76
189
175
143
175
68
156
87
82
76
57
87
94
104
126
99
131
54
80
125
106
106
76
80
131
80
104
81
140
86
87
69
119
197
87
100
69
87
56
107
127
96
155
134
107
119
128
164
83
96
109
80
183
96
78
99
111
67
72
69
201
69
100
132
119
155
80
89
87
123
126
87
80
120
69
144
85
128
80
95
136
100
119
143
106
106
106
151
69
107
88
76
115
162
87
97
119
87
80
110
94
112
114
131
139
80
106
156
154
56
112
110
100
110
154
87
130
80
130
109
87
119
128
101
107
119
152
104
117
78
91
102
199
118
78
76
76
165
76
147
145
80
89
143
94
119
154
80
80
132
107
93
83
110
74
100
69
80
84
144
121
120
89
143
80
110
88
80
80
125
142
176
78
106
110
78
80
140
96
102
54
76
107
113
160
156
154
175
80
78
80
76
89
87
134
140
154
69
142
54
143
99
78
69
160
97
115
93
120
117
140
137
99
107
131
87
136
109
170
113
103
87
120
150
87
82
99
112
98
130
130
154
163
88
80
80
155
96
80
175
122
116
134
91
96
67
89
120
122
117
155
76
136
78
78
162
80
107
54
134
107
116
87
119
117
157
78
69
134
90
80
108
136
69
96
114
73
110
79
199
133
122
104
59
175
80
80
69
151
128
110
109
69
120
99
93
94
145
89
116
72
76
126
146
69
120
80
80
106
112
109
107
120
80
107
120
154
156
111
69
136
129
69
118
121
101
69
164
107
144
128
76
134
127
114
110
130
154
88
79
88
143
128
103
88
103
72
101
92
99
156
120
80
94
74
99
155
69
131
136
69
134
69
80
127
109
103
72
94
100
80
120
109
174
117
72
133
120
131
185
154
103
103
156
125
175
98
54
107
119
113
150
112
76
80
87
140
128
113
109
69
106
69
175
76
146
180
87
78
112
89
76
69
75
145
56
94
114
175
154
94
87
80
94
74
106
109
103
113
120
159
99
69
69
134
52
99
78
96
134
96
69
113
128
101
69
104
100
123
87
100
124
104
104
67
92
106
87
78
131
117
89
95
133
87
187
89
104
101
131
90
91
69
80
139
113
155
72
80
103
110
131
139
94
175
72
106
121
100
113
143
69
134
116
52
104
152
99
91
152
129
80
94
112
111
111
149
128
80
114
113
130
76
112
151
80
109
155
156
100
87
120
72
66
102
69
69
152
94
122
87
93
154
157
135
175
140
74
43
156
151
67
128
124
100
87
111
154
125
69
144
117
110
78
80
187
136
69
134
99
143
102
88
91
58
127
109
104
96
80
115
110
119
106
104
78
108
106
94
69
87
143
80
129
93
163
156
146
89
113
69
112
72
85
120
118
123
80
175
95
80
80
105
136
134
80
136
88
88
117
101
92
140
87
128
126
114
119
112
69
111
80
88
154
78
163
99
118
117
69
86
175
87
163
115
69
95
115
163
67
89
99
89
126
100
91
128
154
118
121
122
72
76
88
80
92
83
117
76
128
69
69
108
136
101
80
152
117
56
80
83
197
169
89
107
161
117
80
112
99
129
99
80
118
80
140
134
69
122
109
110
78
69
120
72
138
123
120
72
69
91
119
155
136
99
128
117
110
91
120
80
140
69
140
145
137
107
74
87
98
93
58
69
69
117
104
199
87
80
109
138
124
107
67
56
80
88
66
99
133
92
74
118
69
156
117
112
133
80
115
107
120
113
78
140
87
136
89
77
80
137
129
89
104
119
78
110
154
76
110
107
78
113
122
87
131
78
115
163
87
99
136
119
72
143
120
131
69
197
120
87
117
97
69
99
120
69
121
56
142
80
142
122
113
78
119
69
120
143
93
87
110
80
87
69
101
126
94
87
105
96
87
69
148
156
114
145
80
88
140
106
128
78
175
80
88
156
100
134
99
147
83
69
122
52
130
132
154
137
99
52
80
69
128
69
120
87
145
151
72
52
75
163
78
94
138
89
80
165
118
68
94
119
80
102
74
99
87
120
113
132
130
131
69
124
88
134
87
143
91
80
102
131
126
91
64
106
151
80
120
137
87
76
119
80
134
119
107
139
133
140
80
209
136
155
106
106
87
131
119
76
121
104
80
102
136
76
114
69
87
107
99
112
69
96
120
132
69
96
91
131
157
69
140
110
125
117
115
153
128
88
146
109
151
106
126
142
95
122
69
69
129
93
93
71
131
69
78
76
163
69
101
126
181
156
144
72
56
109
69
111
128
93
111
134
78
107
107
120
99
117
134
99
121
69
87
123
99
126
107
120
125
100
89
120
199
86
140
112
146
79
134
97
72
101
140
119
131
80
131
80
85
87
147
121
137
120
80
134
96
128
99
106
129
96
122
115
155
117
140
88
88
78
54
109
175
175
80
80
69
131
69
94
110
72
80
107
99
138
80
90
112
74
78
128
43
80
99
86
80
94
69
72
156
121
130
87
104
69
96
87
87
69
64
91
148
89
91
59
69
69
76
175
43
69
103
108
80
94
80
56
137
156
76
99
107
78
88
113
96
131
109
151
166
87
52
154
103
99
69
112
107
156
80
118
104
99
109
197
87
87
119
110
120
80
125
80
99
78
119
127
154
91
69
69
99
125
78
88
93
69
128
156
78
87
74
91
69
78
80
87
175
110
89
105
100
69
117
175
93
105
106
99
104
87
72
96
99
138
110
100
67
143
104
80
171
91
107
80
72
152
80
90
91
80
86
101
76
100
84
89
120
88
131
64
140
154
88
69
106
154
92
136
88
132
69
113
94
80
119
89
66
94
136
78
88
110
124
137
106
142
71
107
52
175
89
128
126
112
74
94
100
119
122
106
93
88
81
110
105
112
154
110
43
109
133
110
78
80
145
89
88
131
76
64
112
143
103
99
52
43
175
110
88
87
91
102
80
74
103
93
114
155
87
72
129
136
72
155
89
69
91
80
142
156
80
83
111
128
80
80
175
96
109
85
78
125
175
109
119
91
87
93
155
69
69
88
120
118
147
73
110
89
80
69
146
115
197
119
80
119
126
78
131
104
80
118
106
134
119
106
95
78
113
80
148
72
120
112
69
111
87
134
76
64
76
113
69
80
93
78
107
163
87
154
78
174
119
127
133
136
103
107
66
140
89
103
76
80
109
112
175
87
101
152
128
131
89
120
87
76
126
115
54
114
94
120
71
117
89
76
91
119
128
117
87
89
107
74
107
175
88
120
69
154
111
91
121
119
119
113
113
69
83
80
104
137
102
121
87
83
78
117
120
80
87
100
151
108
107
151
100
84
166
87
88
150
89
80
80
78
99
87
156
101
131
144
109
156
134
140
99
71
109
87
76
93
123
183
94
154
80
80
101
185
79
128
69
110
174
112
115
104
123
143
69
119
69
102
80
56
95
80
155
83
80
99
120
66
80
133
111
146
107
84
106
128
131
78
118
197
60
117
132
78
133
112
99
118
175
159
112
69
104
125
106
119
104
136
69
107
78
93
89
71
80
76
175
124
80
107
133
109
104
80
88
88
112
115
101
113
72
162
155
110
115
147
103
88
69
132
60
100
115
172
96
110
128
157
123
104
112
102
124
118
155
155
63
151
125
120
89
115
76
54
80
79
120
90
80
146
100
104
134
69
124
101
111
113
87
104
127
80
115
112
78
52
80
80
94
104
103
80
89
80
109
88
52
106
69
114
91
110
83
69
137
137
88
109
80
80
69
80
80
175
129
78
175
163
52
101
175
126
124
72
113
112
174
87
113
118
118
69
119
128
107
69
151
80
107
120
128
120
128
69
76
125
107
115
91
136
131
128
134
137
68
75
138
140
104
131
172
107
88
127
85
123
118
110
78
123
78
96
87
175
95
89
121
125
80
110
107
164
128
151
99
80
80
136
143
147
199
78
54
100
122
113
89
113
101
80
107
69
123
149
147
96
106
76
160
119
117
90
78
115
156
78
199
136
76
121
156
82
117
107
124
145
102
133
68
87
102
80
104
119
120
140
85
96
87
120
120
99
120
154
72
110
156
80
78
145
94
120
107
138
154
151
69
80
87
136
120
93
87
115
156
113
99
88
78
71
69
102
119
93
80
132
99
121
67
76
64
131
113
140
155
72
115
124
116
102
154
163
88
56
133
89
56
147
115
78
175
125
93
109
145
117
117
113
117
94
127
87
75
72
72
131
57
154
122
103
137
85
96
136
144
113
96
79
166
120
113
145
87
72
115
71
111
116
128
89
127
118
102
140
150
69
124
120
76
140
123
153
124
104
140
120
142
128
120
56
131
106
104
80
69
106
117
98
87
144
129
80
87
89
93
85
187
140
74
43
81
80
101
102
134
87
175
128
107
78
101
109
146
74
131
117
87
69
98
144
99
80
106
80
69
164
80
130
69
104
89
95
84
99
119
121
80
69
98
80
75
156
109
118
98
80
124
126
80
119
83
87
52
154
117
146
152
166
76
155
102
96
91
136
69
91
89
111
113
201
107
108
109
175
118
151
90
103
78
143
99
76
122
119
69
134
156
87
99
107
104
175
116
128
113
136
80
163
89
174
90
89
80
72
112
69
69
80
87
185
80
72
78
88
109
94
98
80
144
129
128
140
118
175
107
74
166
72
93
136
83
197
154
80
133
117
104
197
132
131
136
80
87
134
120
80
87
134
123
78
101
175
115
132
80
119
93
156
115
101
128
121
163
69
104
145
145
94
197
157
96
120
151
80
89
96
71
99
93
134
97
107
83
122
109
121
102
120
129
80
175
115
56
134
154
117
78
112
119
128
141
181
80
175
136
99
108
80
87
69
78
122
102
136
95
121
117
106
54
80
94
133
80
197
118
140
127
76
85
78
69
78
149
80
74
117
80
131
67
76
80
87
69
77
87
80
76
88
154
117
93
85
76
69
123
76
72
121
69
85
80
69
89
100
137
69
101
137
113
136
96
119
129
69
52
99
125
160
113
156
99
87
73
134
69
80
69
78
91
136
134
69
87
69
164
72
95
119
113
93
90
154
96
54
88
69
72
122
69
69
69
87
88
79
133
56
92
143
89
80
128
87
88
128
107
120
78
80
69
93
80
197
120
133
128
88
130
83
146
54
66
130
80
120
125
163
160
119
118
127
94
115
54
96
90
100
142
111
159
101
91
115
153
67
137
121
93
102
85
119
76
91
152
131
151
120
78
140
100
94
133
100
119
101
87
92
69
131
90
119
119
96
69
107
93
59
99
76
58
140
110
104
163
119
117
112
85
80
128
80
72
131
107
112
77
91
135
69
119
69
80
96
127
107
99
175
154
110
69
125
123
103
69
109
80
133
93
136
87
155
124
93
125
111
72
87
78
95
141
92
120
87
93
128
107
119
111
87
69
119
166
120
175
69
91
60
112
80
85
80
99
74
80
87
112
78
104
52
114
102
144
112
107
80
84
109
94
175
76
78
69
105
93
80
80
88
69
154
80
106
112
83
69
72
87
78
127
100
87
99
68
100
88
80
107
72
74
69
146
69
155
102
103
94
175
97
76
131
69
119
128
133
119
143
112
89
131
110
98
155
134
78
164
107
88
134
72
69
92
141
89
69
124
104
80
76
76
112
72
120
93
90
95
118
120
154
76
155
69
122
112
124
163
87
68
52
80
110
91
166
80
103
154
155
155
117
69
109
80
88
131
80
82
100
99
78
80
119
126
108
104
128
87
78
88
128
109
118
96
113
80
110
102
80
80
112
119
111
80
185
80
93
101
110
69
116
137
107
79
80
87
109
103
79
90
104
80
134
54
69
103
117
43
166
127
52
80
154
128
117
78
137
126
119
72
89
120
98
80
83
69
119
69
134
69
155
107
72
78
124
107
140
120
87
113
76
69
76
102
106
103
117
72
87
69
99
100
97
102
100
128
120
76
116
156
90
89
102
134
60
78
75
107
133
155
133
155
154
102
131
57
134
164
80
91
113
69
148
128
90
120
101
121
87
90
163
110
112
91
109
122
140
59
154
118
101
69
97
119
116
87
80
76
112
121
97
87
107
80
76
100
104
100
110
75
110
156
80
128
89
72
104
75
78
82
107
87
147
100
69
110
80
174
76
95
140
107
91
78
88
87
54
94
91
78
89
117
129
121
94
120
117
80
80
87
76
80
117
128
102
131
145
114
87
86
143
91
150
117
128
109
76
80
119
120
164
117
80
80
119
110
66
87
87
97
116
107
87
102
78
99
120
69
134
90
120
175
80
110
113
126
80
76
80
109
83
89
134
131
134
89
78
96
143
109
76
106
128
117
174
112
111
76
76
118
80
80
126
115
80
145
96
136
112
91
89
106
128
119
52
137
72
93
175
116
99
133
89
126
94
107
108
52
72
101
156
151
120
69
76
89
131
78
130
80
118
73
106
104
112
123
130
79
93
156
144
119
66
87
145
89
175
115
128
136
89
131
88
134
92
115
56
69
109
107
117
106
112
80
134
88
104
110
87
80
101
136
106
117
136
155
80
129
131
120
69
130
147
156
145
80
80
88
80
76
124
154
119
96
119
87
89
72
96
115
80
72
75
87
120
143
80
115
94
148
136
106
87
148
112
93
101
87
87
72
80
54
147
148
80
78
69
109
131
122
140
92
87
69
119
87
56
87
99
134
146
87
76
52
87
88
80
178
96
109
69
87
109
82
175
56
80
119
119
181
59
80
76
120
74
88
78
88
83
96
87
140
138
142
127
140
172
97
110
106
197
99
89
69
122
131
99
111
88
104
130
69
69
80
156
83
78
102
85
110
80
80
100
88
120
93
136
156
156
80
175
110
102
132
155
78
72
101
143
111
103
129
80
131
120
132
69
126
87
113
87
80
120
99
125
128
109
109
139
106
175
146
100
120
104
136
80
118
107
80
80
152
98
69
80
101
118
83
80
99
145
69
142
80
130
159
111
80
124
80
96
87
88
119
56
80
128
129
78
93
114
113
81
136
69
103
175
119
136
95
69
104
119
164
69
63
67
95
151
134
72
141
126
106
80
91
156
89
106
80
104
87
94
76
43
80
80
138
80
116
104
80
74
128
80
94
132
85
138
114
91
64
110
175
86
119
85
112
80
69
143
56
126
83
93
104
152
69
69
117
99
118
95
52
108
88
81
105
122
75
74
89
101
67
110
131
104
115
104
104
69
154
175
156
134
78
145
85
113
100
131
69
85
106
69
96
106
136
164
80
109
94
89
91
136
98
75
80
87
120
69
78
122
87
201
80
87
89
144
66
183
76
101
133
78
112
96
76
159
109
122
66
89
76
87
112
181
175
92
89
117
64
52
109
154
120
56
109
79
126
101
80
76
91
150
109
96
177
74
103
78
80
100
118
174
80
69
113
137
80
120
87
102
80
89
156
118
76
175
87
145
101
101
136
136
119
163
151
123
52
129
148
113
121
118
68
132
88
138
94
155
119
109
131
93
122
58
78
102
88
113
114
88
124
76
154
93
71
101
175
75
119
91
107
69
91
52
104
72
94
109
120
87
72
197
80
143
76
102
80
132
83
76
76
91
89
136
102
90
121
138
120
143
137
136
136
80
89
117
80
106
80
87
118
91
89
111
80
117
107
94
131
132
121
109
119
94
120
140
111
76
154
137
95
91
94
199
99
104
119
76
98
117
121
78
90
101
76
56
106
197
80
107
118
80
110
76
72
136
134
149
119
127
69
100
128
67
98
152
103
76
151
123
112
119
100
107
118
119
127
148
146
120
89
92
109
69
145
131
87
109
74
69
121
69
98
121
104
128
107
85
97
80
78
197
89
96
175
181
67
80
137
120
197
87
138
72
112
93
119
112
96
131
80
108
60
157
109
107
100
128
80
142
119
119
87
145
102
76
120
175
84
146
78
146
88
72
78
78
88
87
72
99
92
131
147
88
99
72
101
58
131
99
69
110
131
130
140
119
107
103
144
78
111
136
137
52
80
121
80
122
80
80
106
164
80
137
54
69
164
127
106
96
104
78
69
115
117
119
121
152
104
118
187
80
131
109
71
99
64
128
113
99
87
69
110
101
138
108
80
76
100
80
83
130
78
115
80
140
87
156
117
127
144
119
76
89
78
99
90
78
95
89
109
88
68
163
128
113
136
99
90
136
83
89
129
69
87
145
87
78
91
69
80
76
100
119
76
82
155
89
121
174
90
121
88
156
97
74
151
80
175
117
72
80
128
76
89
79
112
176
107
103
131
87
129
113
99
80
149
96
119
99
80
76
104
175
138
102
175
109
72
80
156
101
137
112
87
140
119
130
136
109
96
69
87
134
107
185
110
95
109
90
96
131
113
72
112
104
56
119
156
76
54
175
78
114
76
78
125
128
109
189
150
111
91
128
129
80
160
91
106
87
110
119
93
101
69
87
134
88
69
62
87
69
119
85
119
140
80
154
88
89
76
76
80
113
94
91
89
109
128
107
87
132
110
74
72
93
116
128
154
119
146
123
107
121
116
94
101
143
119
144
98
130
104
134
93
78
75
115
80
69
106
117
52
145
132
80
99
69
106
119
76
91
66
107
107
136
78
175
101
96
117
69
119
102
161
116
99
80
113
94
89
96
119
99
111
80
151
104
107
88
96
131
107
107
80
78
80
148
69
115
87
91
66
112
175
80
115
120
130
119
132
78
151
118
80
121
106
69
99
131
131
94
119
87
78
93
89
127
134
123
54
94
126
94
87
112
69
102
119
199
80
88
96
94
76
80
87
104
80
96
107
142
142
69
94
78
90
117
151
136
80
78
175
79
136
81
99
72
154
80
99
91
91
73
119
87
122
106
184
117
140
131
117
112
80
69
80
114
79
80
143
185
119
113
154
107
89
80
146
107
80
105
80
78
52
69
131
87
163
163
122
171
94
78
94
101
145
128
131
111
75
91
114
147
80
103
118
94
110
91
94
80
69
156
69
111
78
98
104
201
101
121
154
111
115
87
97
114
120
102
136
137
169
174
90
140
90
76
83
110
121
129
80
107
140
162
69
110
127
106
197
87
80
112
140
72
78
131
59
140
117
120
155
151
88
76
169
147
107
93
133
103
118
69
120
92
147
91
89
93
87
105
107
131
149
136
199
101
87
107
175
128
74
136
79
87
80
80
112
143
141
80
154
107
80
143
178
120
80
80
118
144
111
146
82
80
72
107
119
99
69
109
138
119
80
80
110
88
143
80
78
87
94
119
107
96
94
129
183
110
100
106
87
89
88
87
87
105
93
91
120
60
79
104
128
131
107
151
100
127
67
154
144
134
117
175
63
119
175
181
93
120
106
76
110
164
155
78
154
98
98
127
111
119
163
175
78
175
158
66
110
80
89
110
110
78
78
146
87
110
88
106
105
69
118
91
120
140
124
69
80
120
87
80
106
120
116
121
113
103
89
148
128
96
106
80
67
69
112
154
127
136
89
60
74
109
80
76
88
95
73
142
69
136
128
76
181
118
85
120
136
94
122
107
164
100
107
119
119
112
128
72
136
119
110
128
135
104
78
93
96
119
80
183
91
128
128
155
146
80
134
103
79
75
89
128
80
197
117
101
80
69
80
121
105
127
131
69
87
76
80
131
80
80
120
80
107
140
127
154
85
80
146
69
99
111
88
88
121
76
131
80
80
137
128
69
88
80
123
95
107
119
136
126
63
140
150
120
93
107
151
113
175
115
154
110
89
83
128
126
87
119
121
83
95
175
80
69
117
78
117
80
69
113
111
152
93
76
160
106
78
111
78
54
69
133
117
136
69
126
113
74
129
91
145
76
72
95
107
89
138
68
197
149
160
107
89
131
112
142
76
75
94
80
104
123
197
101
76
94
69
122
147
76
146
106
80
148
96
54
117
109
103
93
69
153
80
145
102
186
80
151
120
96
106
76
80
78
80
119
131
91
127
124
163
133
143
107
118
98
99
134
103
136
56
152
80
74
119
76
120
152
66
101
78
92
89
159
56
96
163
154
76
88
78
104
101
80
181
93
96
103
101
88
87
80
133
117
139
201
151
78
93
156
133
88
89
103
128
89
136
84
149
119
121
87
121
110
158
124
78
123
117
88
69
113
131
164
69
79
146
143
128
90
117
91
101
109
119
128
74
136
69
74
134
69
156
93
80
93
131
80
137
88
80
151
107
79
80
131
79
102
104
132
181
109
134
175
87
120
174
87
201
80
76
91
93
109
80
110
106
136
120
78
152
149
106
87
106
69
148
135
140
94
90
69
119
107
162
89
101
93
101
134
115
90
78
94
96
87
119
156
115
88
113
133
87
87
174
118
163
136
76
99
126
87
72
76
131
151
108
106
110
76
199
100
125
133
112
94
154
111
143
80
99
131
119
43
85
94
102
101
142
110
197
121
78
120
112
69
54
154
128
80
80
138
120
150
89
117
110
117
91
128
76
63
150
104
83
106
120
116
94
110
128
104
131
99
114
106
120
80
119
209
127
69
92
130
125
69
125
69
129
128
87
109
101
80
80
88
154
119
69
106
87
147
130
112
78
134
76
100
90
89
136
84
87
159
76
80
113
126
136
80
134
98
104
78
64
80
141
93
76
128
80
69
69
127
80
69
121
120
163
128
110
76
104
107
119
80
127
88
113
111
109
80
88
140
155
147
152
124
94
151
72
89
80
91
124
100
106
140
107
87
72
69
140
115
120
66
112
110
111
128
66
120
127
119
111
125
165
109
152
85
76
143
133
74
56
100
81
154
149
74
80
119
80
119
127
140
134
69
175
89
134
78
80
119
119
115
127
117
76
91
87
111
109
113
91
131
197
120
128
78
75
107
102
145
128
89
119
72
52
78
69
97
122
156
69
155
80
183
106
121
87
98
99
133
93
81
91
140
69
107
104
88
151
67
201
80
80
102
78
114
134
130
80
80
69
131
100
102
128
91
115
163
159
107
89
134
74
69
163
69
118
131
175
79
119
107
128
80
131
80
89
80
94
127
164
107
71
129
109
104
80
72
117
119
68
57
141
80
90
107
66
146
156
175
119
79
96
69
134
69
143
69
69
88
89
76
131
107
106
122
107
75
82
87
96
80
109
80
127
80
69
85
99
87
112
141
146
123
80
87
178
154
99
73
67
89
154
80
102
99
155
78
91
87
80
146
107
151
106
154
107
119
110
80
93
106
132
119
87
126
87
130
123
87
157
112
76
88
154
88
93
101
80
107
72
69
76
88
80
94
119
131
151
74
89
94
106
128
145
96
102
69
78
93
100
131
113
76
107
94
72
146
116
76
178
102
94
123
80
153
69
125
98
109
145
154
130
69
79
77
136
175
127
87
87
113
72
139
109
137
111
121
132
110
143
154
74
106
93
118
151
121
91
99
140
87
69
124
124
136
69
95
106
87
101
89
123
80
128
125
112
124
118
96
114
80
78
64
128
106
89
104
69
88
69
89
106
127
137
174
131
107
72
93
109
94
109
113
72
98
144
76
131
144
102
117
136
139
199
69
89
137
136
78
120
123
76
128
95
123
91
76
80
78
74
52
100
87
99
76
106
83
140
125
129
104
114
88
150
140
80
69
69
137
80
95
134
128
78
94
84
111
76
87
163
76
142
69
94
123
78
69
137
56
69
113
110
100
110
118
75
84
78
151
69
117
83
99
139
116
101
118
112
76
120
101
69
91
80
107
78
134
69
64
134
100
80
73
131
95
87
78
120
80
78
148
133
80
87
154
69
124
121
72
87
120
80
104
106
106
119
101
120
91
148
93
134
154
76
113
160
110
102
123
78
154
88
88
80
95
136
106
156
89
175
117
98
87
175
131
197
143
94
175
134
122
66
113
93
115
127
151
52
89
109
43
96
138
164
88
87
120
101
72
155
76
155
154
128
126
72
131
89
117
128
119
106
91
110
110
101
146
81
99
119
119
140
113
102
185
147
93
155
140
104
151
80
113
137
93
89
102
137
119
59
121
105
119
155
197
151
120
128
117
87
197
90
72
155
120
114
72
110
119
59
78
154
185
75
121
93
80
128
113
89
91
118
117
145
119
112
154
72
136
175
151
112
109
96
145
127
131
101
113
80
128
104
94
112
107
163
64
93
80
71
80
88
99
138
106
109
127
87
119
142
117
112
88
117
139
107
88
88
118
154
99
138
120
87
195
87
128
87
99
109
118
90
118
87
138
94
130
110
183
124
112
106
80
101
128
128
129
69
163
76
113
43
95
77
143
69
101
119
120
140
89
193
94
156
137
69
144
106
107
69
80
134
130
88
154
119
76
88
160
90
122
80
107
107
78
107
80
69
161
114
130
52
118
143
80
80
175
85
131
69
108
197
151
89
76
106
93
143
130
115
98
109
80
72
103
80
125
114
80
76
69
136
110
124
78
69
146
80
91
74
181
58
107
91
70
91
118
145
87
87
52
137
146
76
175
92
107
106
137
104
88
104
120
128
80
87
114
93
80
123
111
105
102
114
63
161
56
76
101
100
107
103
121
119
128
54
98
89
117
128
88
110
99
87
128
107
83
79
100
128
80
91
85
69
175
103
156
128
92
87
89
96
80
151
156
80
156
130
80
80
113
107
56
80
136
80
87
80
112
98
136
80
80
100
107
101
110
175
80
100
100
78
80
56
79
80
78
133
127
113
115
148
85
128
125
80
69
80
96
126
94
117
96
110
72
96
175
89
162
125
97
88
119
101
154
117
88
75
74
156
89
112
133
87
133
96
87
87
134
103
87
154
118
80
119
76
126
126
80
163
107
76
80
95
128
52
78
57
76
69
146
72
80
69
80
104
89
143
106
156
125
109
87
129
128
80
107
80
66
101
113
127
167
87
154
106
149
87
104
69
69
131
110
127
131
119
83
119
69
69
115
136
80
134
78
114
89
74
197
87
94
87
80
110
120
78
87
136
87
119
76
132
155
127
109
69
76
76
87
120
80
94
104
107
68
69
93
131
88
101
80
80
156
96
93
155
80
139
97
175
125
89
89
126
154
99
86
88
99
118
69
99
145
80
195
151
69
52
94
175
88
107
80
87
108
74
63
143
76
137
79
94
135
80
98
80
112
87
87
117
151
67
104
154
96
116
104
104
151
136
109
94
176
76
92
163
175
102
91
128
128
80
120
78
78
133
134
123
136
69
106
80
78
78
123
108
58
101
147
134
101
107
122
120
114
143
80
159
112
119
69
136
74
107
94
118
155
116
103
117
131
80
121
93
87
115
101
118
156
43
131
78
129
76
80
87
93
99
113
87
127
90
63
163
119
164
87
80
121
124
99
81
76
72
122
131
87
125
183
63
107
88
101
106
130
80
115
59
69
163
126
89
87
133
131
148
112
107
89
133
69
119
76
111
80
102
107
101
80
156
137
147
160
112
78
80
134
128
69
78
144
69
78
107
155
107
43
80
85
154
136
151
129
80
80
154
88
86
85
136
87
80
109
58
56
112
143
87
121
87
113
104
103
175
105
80
87
134
69
115
115
78
197
118
197
107
154
91
128
104
148
126
80
107
89
54
88
88
80
78
120
92
153
117
93
134
89
128
101
129
80
120
87
107
66
163
119
87
125
99
69
87
69
137
128
80
87
145
85
80
119
122
131
175
154
85
83
79
120
78
107
110
54
78
91
87
85
80
134
197
104
88
78
121
88
72
150
151
111
80
69
175
56
125
76
99
110
85
91
127
87
107
112
107
154
104
107
78
134
80
79
109
134
80
132
69
80
100
43
156
113
140
94
80
87
87
80
109
126
117
129
95
121
78
96
98
89
69
98
121
140
69
87
76
106
96
126
109
119
126
110
69
154
69
88
121
90
119
175
80
119
58
111
99
175
155
74
115
175
101
69
120
89
69
197
119
69
93
92
78
54
175
119
87
197
136
80
109
110
105
119
117
91
111
88
77
145
120
78
76
94
78
91
69
117
99
110
136
115
152
81
78
118
185
80
154
95
94
99
101
89
83
121
121
175
87
120
78
74
144
80
80
134
80
80
125
87
109
112
128
69
104
91
124
114
78
101
151
110
175
113
56
197
107
126
69
80
54
79
109
124
117
119
102
126
94
106
121
118
85
112
197
69
87
98
107
59
128
140
100
151
80
93
94
127
78
115
93
131
155
87
80
120
124
147
87
87
107
73
96
80
110
80
57
72
60
80
92
78
197
120
164
58
94
89
80
104
134
69
69
88
96
59
100
136
80
109
140
80
155
126
111
88
72
122
69
78
111
103
197
131
138
87
109
87
103
134
110
140
156
111
99
80
109
140
118
66
154
90
96
87
175
134
163
80
126
118
149
129
121
114
113
72
143
68
89
109
103
80
164
128
101
78
121
80
94
128
81
111
127
80
87
69
163
88
69
83
149
107
89
99
103
76
88
121
154
146
156
120
78
76
78
134
54
123
69
78
76
79
173
109
131
78
121
160
69
123
115
94
118
121
120
166
121
92
87
115
103
78
128
82
112
80
72
117
101
69
69
155
104
69
120
125
91
175
80
52
161
134
96
127
129
69
112
169
80
106
140
88
80
104
150
93
99
139
119
69
99
144
119
129
197
119
156
121
87
137
80
80
128
121
120
199
119
71
83
87
131
78
88
110
131
151
122
76
76
69
121
78
91
106
107
93
119
78
80
154
121
80
136
85
69
69
85
88
71
102
145
80
112
124
112
107
138
80
66
181
109
80
144
80
107
87
54
105
94
58
87
76
99
64
69
92
125
87
80
99
134
89
118
163
99
76
58
119
99
120
76
140
71
54
80
137
116
73
66
112
119
132
101
80
87
118
75
99
119
87
109
69
150
78
80
76
109
137
132
109
99
78
174
80
111
52
105
123
107
87
91
136
98
87
138
154
64
52
95
69
88
72
76
71
102
87
88
89
80
88
125
96
74
104
128
99
98
150
178
99
123
172
66
88
98
96
81
74
102
107
109
114
101
104
85
87
94
106
69
111
104
110
109
119
80
76
76
146
151
121
154
69
69
115
80
89
120
155
88
93
138
113
78
99
69
76
109
101
94
54
76
104
147
93
76
119
140
107
88
78
129
128
119
80
87
119
119
90
78
111
122
148
54
88
108
110
115
80
145
69
69
80
175
107
106
74
128
87
102
111
99
120
118
144
54
120
78
92
80
134
107
83
117
63
69
174
117
174
87
76
122
91
79
89
133
109
127
77
113
124
80
140
108
93
175
87
112
78
67
137
86
66
175
102
110
129
117
110
108
72
146
87
94
98
120
88
136
80
90
87
117
197
116
99
87
147
89
131
108
138
87
78
120
96
107
129
88
175
101
174
78
144
175
153
117
93
56
120
85
128
112
155
76
126
109
80
100
155
104
80
156
129
112
83
112
94
119
94
151
199
137
128
88
118
87
154
144
107
162
132
85
113
155
127
78
80
96
112
109
88
132
110
137
134
129
129
105
76
112
122
119
80
128
80
80
137
145
80
72
109
119
112
110
69
101
69
80
119
154
100
87
88
60
154
102
114
136
69
56
74
88
89
106
101
76
109
175
128
107
119
101
175
80
94
132
111
120
83
78
175
136
119
69
119
160
127
92
156
69
128
94
134
110
120
122
129
134
76
56
140
108
120
69
122
87
126
69
76
107
107
136
156
140
78
117
88
134
185
69
87
69
138
95
76
116
69
154
87
78
100
87
119
121
134
154
121
174
69
80
87
119
80
143
52
156
71
95
100
87
103
96
119
145
100
72
69
87
79
109
104
138
88
87
80
140
175
90
154
114
137
130
89
64
80
129
69
56
112
106
101
119
142
154
121
69
78
69
69
60
104
95
109
114
129
80
104
138
118
97
94
76
106
69
107
112
128
137
78
80
89
107
88
86
127
174
140
115
76
140
54
156
107
90
80
94
66
69
104
120
83
127
89
99
121
120
135
119
110
69
153
88
69
136
106
100
94
154
69
148
130
93
80
80
175
80
140
95
76
98
80
80
132
76
165
91
145
124
106
107
94
109
93
78
126
95
104
99
107
140
131
74
80
69
69
89
79
101
96
148
94
145
131
119
107
123
78
58
136
80
115
128
134
99
132
140
120
145
99
110
124
69
147
87
88
102
99
104
80
143
163
120
97
95
69
107
122
99
95
160
80
91
88
80
69
175
155
137
128
143
121
96
106
134
123
154
69
121
98
43
119
120
113
107
89
118
104
151
115
134
112
149
69
120
99
148
78
76
124
80
78
72
80
104
128
52
87
99
107
125
80
120
66
145
107
136
95
102
121
120
80
117
80
88
110
134
126
142
136
89
89
93
140
128
144
100
106
104
76
94
118
127
88
87
110
95
110
69
119
122
78
87
131
121
100
80
109
96
87
129
57
143
95
119
76
118
148
69
87
80
69
76
151
131
80
126
147
175
76
82
89
114
132
110
107
135
118
94
102
102
78
80
69
69
129
78
109
69
69
78
80
154
72
156
96
107
107
103
117
69
43
127
154
80
88
121
107
117
69
128
89
126
69
122
106
149
125
117
93
76
120
134
80
78
59
175
136
128
111
87
128
76
135
94
144
100
98
80
69
107
124
52
85
113
123
162
130
121
80
109
106
80
118
110
80
94
69
93
80
76
118
55
89
175
102
87
72
78
109
62
88
97
128
80
78
101
109
80
123
132
92
93
119
115
76
80
127
122
94
88
155
94
115
100
93
121
175
112
72
96
154
121
107
89
102
137
165
107
94
124
88
80
134
113
95
107
102
92
112
98
109
78
72
126
76
134
109
119
140
97
175
80
113
119
118
119
123
120
140
120
91
69
108
117
93
87
107
121
80
163
76
110
152
80
121
78
99
174
113
149
69
54
103
99
111
175
101
113
114
132
80
104
136
85
72
100
87
132
110
103
69
111
69
107
107
110
114
76
175
66
67
88
119
138
81
98
64
158
93
113
115
121
105
124
164
101
125
134
69
183
120
116
90
128
107
103
110
83
137
109
74
87
80
90
91
87
175
93
134
89
87
69
69
99
118
129
91
72
142
156
76
151
127
151
115
94
94
87
114
142
80
142
92
109
131
164
114
43
78
90
133
175
80
124
67
110
80
119
107
80
101
106
123
114
68
91
121
175
66
113
88
87
110
146
90
56
112
155
119
183
80
146
101
87
88
101
109
101
154
80
157
107
134
93
88
69
78
123
118
69
90
100
56
123
88
82
99
76
69
102
118
109
96
121
109
107
76
156
124
121
134
67
140
166
120
96
119
175
80
175
87
87
155
120
83
156
119
80
80
143
134
107
87
87
163
80
78
144
109
109
95
100
94
75
69
104
107
128
121
87
80
126
96
120
88
80
88
80
89
69
121
145
88
64
136
156
114
69
143
102
76
80
80
76
160
127
91
127
80
69
120
66
78
129
115
80
89
127
113
89
132
101
78
160
153
112
120
139
120
88
52
152
99
92
121
91
87
76
78
88
110
96
136
92
107
144
142
137
119
52
119
43
115
54
117
119
106
87
69
89
147
76
102
136
76
133
76
89
117
169
136
93
106
114
80
87
87
76
87
131
162
134
76
120
69
111
96
175
80
100
80
96
69
156
140
120
136
98
76
76
119
99
94
123
151
80
98
54
140
76
123
88
85
56
71
117
121
118
114
80
72
175
69
101
89
112
72
88
140
76
142
78
113
72
99
92
130
87
152
89
87
117
123
120
110
115
134
175
69
104
128
85
132
99
106
136
113
98
130
136
113
69
99
145
112
128
185
130
112
103
109
80
124
96
87
104
89
89
151
148
93
122
88
128
80
69
88
160
83
126
136
89
99
80
117
148
87
85
106
109
104
131
149
107
175
120
127
80
96
80
121
89
175
88
136
80
95
117
87
78
148
119
88
90
76
80
73
54
128
69
78
130
144
78
144
118
78
134
136
131
99
78
128
72
69
120
104
120
120
76
107
172
166
99
77
67
69
109
69
154
109
175
155
148
106
54
140
87
146
69
69
146
80
91
111
154
87
151
69
80
80
69
80
90
99
66
91
127
100
87
80
67
80
78
101
69
87
118
78
72
131
100
88
151
109
69
91
103
151
80
136
89
88
133
109
104
147
109
90
80
69
106
69
151
87
148
89
117
72
88
78
96
94
80
52
69
76
118
175
134
76
121
98
138
69
107
119
128
113
80
98
134
82
128
112
117
107
69
81
78
129
109
163
113
87
87
136
116
80
93
80
160
155
138
108
197
88
131
175
88
122
106
130
119
110
132
89
122
197
76
121
89
110
96
120
95
80
88
80
110
87
69
120
78
91
143
112
123
154
122
120
102
76
120
69
127
64
126
118
120
82
78
69
109
80
69
136
137
136
134
80
78
87
90
106
139
58
87
109
87
119
138
175
74
83
136
101
112
87
154
76
80
92
80
147
119
132
140
122
113
107
106
94
80
154
130
110
74
134
142
137
215
197
128
128
69
136
110
156
119
104
76
96
123
109
120
84
155
119
140
119
76
141
129
110
121
109
76
80
107
102
126
87
109
146
80
76
119
120
80
111
128
90
120
100
80
140
113
80
54
69
89
107
144
99
86
116
78
93
69
185
89
76
197
111
120
76
138
67
72
87
201
150
128
90
69
186
97
80
72
119
138
153
78
101
80
90
87
76
104
127
101
80
133
119
96
129
145
142
99
118
127
106
82
113
98
128
100
80
175
76
78
110
112
96
102
93
83
104
101
119
127
80
119
80
87
80
120
104
80
80
88
69
88
89
78
94
117
104
131
163
136
85
104
76
133
87
87
119
114
118
106
131
126
100
120
113
128
82
110
106
76
85
120
80
129
146
87
128
80
89
156
120
133
111
87
87
76
69
81
165
137
130
69
175
125
93
119
130
76
167
80
72
76
99
94
88
113
96
126
87
69
120
140
106
84
78
117
101
138
99
100
111
69
69
113
131
58
137
133
78
121
78
76
93
110
100
128
151
96
88
134
175
94
100
76
69
66
78
128
121
131
78
134
91
117
118
135
76
80
78
99
110
144
101
110
121
94
177
69
106
78
140
69
115
110
129
115
87
119
112
78
90
102
76
94
124
164
143
94
113
91
87
93
96
69
80
76
75
87
127
131
80
89
119
129
78
99
153
129
142
80
121
93
136
111
154
120
80
125
100
89
74
118
124
78
63
89
113
120
72
69
123
87
144
69
156
119
109
118
109
56
52
96
113
103
156
87
80
130
120
54
106
113
154
109
110
98
128
69
76
114
96
120
94
112
114
151
175
113
120
143
96
113
175
103
69
127
69
78
113
103
120
87
76
167
87
128
118
148
69
136
78
197
100
110
90
80
159
118
100
80
152
104
80
120
128
78
80
131
120
88
88
93
115
128
154
137
96
131
144
99
155
77
100
141
69
80
104
80
80
134
101
87
121
93
91
128
123
103
69
89
69
91
107
80
120
96
120
71
80
66
80
113
72
69
175
125
93
99
87
98
175
69
94
91
154
69
99
69
113
80
74
109
127
92
94
99
87
145
69
121
110
101
121
128
120
197
107
113
120
157
99
99
72
104
120
205
146
121
54
93
136
91
136
87
76
185
106
121
134
174
78
80
80
128
69
66
147
69
146
78
88
69
72
187
123
149
132
100
99
113
140
80
118
112
94
93
112
79
107
119
120
90
117
99
138
100
69
121
156
122
87
112
77
78
69
76
107
155
147
119
69
106
87
54
135
96
88
197
99
78
112
69
136
89
94
175
163
126
102
88
98
71
80
154
89
130
137
131
107
96
87
175
87
107
140
183
164
123
109
80
69
76
99
104
98
76
123
128
128
104
85
92
155
111
80
160
107
144
117
154
78
163
107
99
100
80
78
101
76
127
133
121
131
69
78
154
78
119
104
91
94
137
136
201
109
106
119
104
112
69
109
112
91
88
69
175
126
154
147
145
128
117
133
80
89
85
140
69
69
204
69
107
114
128
129
67
80
56
134
109
107
95
96
91
80
87
128
113
163
166
99
110
114
118
69
148
120
89
76
95
80
76
110
128
78
114
67
117
125
116
113
139
136
59
69
54
133
106
120
123
69
78
147
101
141
78
89
151
90
131
69
149
120
72
71
112
78
103
52
134
80
87
118
133
127
76
128
94
113
88
94
89
80
134
127
106
76
131
76
76
89
121
102
104
102
72
176
106
88
131
138
107
99
91
109
76
80
164
78
87
123
131
109
94
120
119
95
117
91
126
104
101
78
146
102
120
80
183
112
120
130
94
88
113
76
80
85
118
80
146
89
94
87
154
113
134
114
93
128
76
107
118
134
95
117
85
85
140
76
87
141
80
119
106
80
78
120
94
156
128
87
80
69
104
134
80
94
119
131
87
142
100
142
87
112
117
117
80
78
87
69
89
89
120
197
54
119
88
78
101
87
87
163
132
91
87
103
111
110
138
80
120
52
132
146
76
120
80
111
102
69
132
126
82
80
78
120
80
94
122
89
69
89
80
54
69
128
80
175
109
72
109
123
110
93
95
116
87
101
64
119
88
141
164
126
146
155
163
131
102
95
163
80
118
106
69
91
76
81
163
96
54
175
114
134
122
151
99
109
106
132
103
99
102
160
136
114
98
121
69
146
153
146
109
110
155
94
143
124
98
124
99
80
80
52
113
87
88
54
128
120
110
131
78
87
137
96
69
120
119
91
136
146
128
85
69
101
64
80
118
136
136
110
164
78
78
94
78
121
78
72
88
90
69
145
88
89
181
178
72
76
99
69
146
69
52
94
131
119
163
110
107
76
69
72
87
80
134
80
76
80
72
72
114
79
69
140
102
87
79
125
197
128
126
107
79
75
112
58
118
136
87
126
76
54
113
99
175
80
119
119
113
58
109
69
69
133
115
87
74
69
76
106
115
137
151
105
89
104
104
89
113
90
83
133
69
78
56
80
140
86
78
143
80
126
137
138
115
135
99
88
69
121
140
69
114
80
102
69
124
156
151
94
76
120
129
156
136
118
69
80
108
69
144
111
119
120
143
88
80
98
99
107
124
126
80
80
69
119
121
72
119
175
93
112
156
113
110
119
87
140
108
146
100
99
87
136
140
58
154
115
72
96
102
196
87
140
113
93
128
69
118
107
78
98
72
80
69
119
80
147
136
145
154
71
197
72
106
99
69
157
131
100
155
119
80
134
69
80
150
175
130
87
119
93
129
104
145
71
175
201
80
82
79
157
102
69
99
109
120
87
94
120
120
94
144
100
175
109
80
118
59
94
117
88
90
99
54
181
115
106
69
117
69
89
121
89
87
80
156
99
120
105
110
154
154
107
99
80
85
80
187
109
175
109
120
69
129
73
112
88
131
85
76
164
110
146
112
78
89
92
93
69
87
154
136
127
128
134
122
128
113
118
69
110
117
199
80
160
88
117
88
80
89
96
76
68
87
121
81
141
107
125
101
117
112
131
126
128
89
125
83
85
99
134
91
87
136
117
148
140
112
113
101
175
131
102
103
142
115
80
119
60
140
43
99
125
125
69
125
154
150
112
88
117
128
110
151
136
156
124
69
130
52
100
108
88
131
110
80
123
91
87
143
120
102
98
116
120
69
82
91
80
88
115
107
69
89
119
108
136
69
72
89
103
112
87
126
114
135
96
107
99
164
120
78
89
121
69
115
80
93
104
89
108
76
54
80
106
82
80
114
146
54
104
69
96
88
199
91
78
129
87
144
107
140
107
80
78
69
69
156
105
80
69
88
102
126
56
131
127
87
96
169
113
116
148
143
117
69
126
154
119
69
114
164
101
113
130
119
197
119
80
78
102
87
136
80
154
87
101
80
112
131
96
54
72
69
197
175
174
80
111
87
99
122
187
114
76
69
102
111
151
111
154
175
107
107
136
54
136
166
78
120
76
80
69
174
161
156
80
109
78
119
121
172
72
78
131
76
69
76
87
93
175
156
149
123
175
134
120
76
88
54
109
156
136
83
74
96
56
87
109
120
143
104
128
91
136
107
78
120
103
54
117
91
113
80
82
92
154
111
93
54
80
89
94
58
80
80
66
88
58
89
80
113
117
107
143
69
156
120
106
93
88
130
87
88
76
112
66
130
88
140
119
80
154
121
72
112
151
113
76
80
135
78
120
119
96
69
83
104
80
118
145
128
113
78
120
54
143
122
110
145
60
112
92
108
98
69
128
119
175
128
69
78
69
99
94
114
131
106
67
123
78
103
87
127
102
125
185
80
80
74
126
132
80
81
94
124
110
132
175
54
99
69
123
99
143
99
118
115
80
112
76
78
106
126
134
88
105
120
96
54
129
151
124
131
115
132
129
122
72
104
131
156
94
76
52
128
112
113
120
89
119
128
78
72
80
131
149
69
124
80
96
80
119
78
79
102
54
75
87
155
83
69
107
128
120
87
98
104
87
87
69
69
99
120
103
131
115
69
115
87
131
94
99
75
109
137
72
82
93
140
123
124
119
133
129
105
104
89
74
101
88
118
91
112
120
78
158
120
87
72
76
87
120
69
87
52
120
109
69
99
99
104
143
128
94
110
109
69
101
127
154
88
116
76
164
89
111
79
148
128
89
80
87
95
97
94
104
96
99
104
151
99
112
155
80
94
80
125
134
111
151
69
197
117
110
175
108
123
80
90
137
108
87
137
147
121
130
74
123
119
68
80
80
85
89
69
83
141
119
140
171
201
105
174
119
163
145
88
93
107
80
119
111
87
164
140
88
99
85
107
107
69
80
78
99
113
101
99
117
113
121
83
110
119
56
88
93
99
107
134
107
145
76
102
78
90
80
125
120
89
113
117
87
76
76
128
101
80
80
78
80
78
93
118
80
133
43
197
156
69
119
74
76
91
110
104
163
131
58
129
175
89
146
69
99
119
115
76
106
88
78
123
89
106
114
102
163
125
80
151
136
110
112
154
147
88
85
69
197
95
78
109
73
109
78
175
106
98
94
93
121
80
80
128
175
92
107
127
133
69
89
87
76
118
101
99
88
112
112
183
117
199
91
115
87
85
123
128
130
87
78
140
131
136
136
76
88
80
80
99
72
110
131
104
175
76
117
69
104
67
87
88
78
107
145
127
69
69
117
128
104
120
107
66
175
113
119
119
78
80
127
80
102
80
82
69
154
52
80
154
80
91
120
121
76
69
197
175
80
80
112
80
87
128
69
80
95
109
99
107
80
99
69
134
76
107
78
69
125
69
90
115
123
104
159
118
101
140
132
76
76
94
107
93
78
151
101
76
69
112
71
128
120
99
94
88
113
80
99
75
114
99
110
134
144
130
80
96
89
80
101
112
117
107
104
104
119
72
99
80
102
122
125
102
97
149
105
133
107
80
69
185
79
74
112
154
141
66
149
132
175
100
175
104
146
138
120
131
156
154
96
99
54
199
188
80
119
54
119
119
134
76
85
156
137
101
69
112
197
94
119
69
103
159
80
109
87
125
96
145
117
69
139
80
98
155
119
78
136
69
87
136
119
154
87
87
109
124
102
80
80
122
129
87
80
106
119
88
128
126
99
80
175
138
80
134
102
128
78
155
88
113
155
63
155
175
69
97
107
110
74
78
60
121
197
106
121
99
144
175
88
69
133
91
120
87
77
69
117
104
175
146
80
136
118
80
93
114
93
120
80
97
101
80
78
118
99
102
132
96
119
71
74
119
113
99
69
69
80
155
119
76
119
87
107
88
74
120
156
144
134
78
60
175
80
129
104
83
119
155
107
119
80
101
145
175
109
107
78
112
116
87
88
123
76
160
85
78
76
89
137
129
128
148
175
118
89
126
128
81
99
88
112
105
175
87
109
201
83
113
160
134
175
156
76
107
76
94
99
84
156
105
69
106
88
113
197
69
124
84
120
80
94
151
80
154
131
89
175
101
110
125
83
75
69
101
103
136
119
148
103
177
143
131
155
80
119
103
124
119
72
129
100
81
93
127
131
87
104
87
88
100
104
114
69
122
130
52
115
89
106
93
110
134
104
119
175
80
102
120
63
112
119
175
54
88
157
134
100
80
103
69
121
109
154
121
117
120
89
129
175
109
131
185
88
69
72
128
107
69
94
69
157
69
93
140
85
69
121
80
205
74
87
100
114
80
133
126
78
78
109
122
145
88
145
145
100
80
99
80
123
131
76
121
100
89
80
98
80
93
159
103
137
80
197
109
69
93
83
140
88
168
111
94
128
76
126
124
141
89
121
110
83
87
152
120
76
66
109
152
138
119
69
156
71
113
130
128
93
107
76
110
80
134
175
89
69
109
85
112
128
85
106
111
137
87
78
72
106
80
156
141
80
109
106
76
146
120
89
87
87
78
91
66
74
80
127
93
118
136
99
120
87
66
90
106
89
76
109
80
99
102
104
107
102
78
118
86
69
137
109
175
117
99
104
140
109
88
107
89
121
79
123
120
69
120
104
94
87
96
120
142
80
54
123
78
115
86
146
132
116
106
142
163
109
98
114
80
104
155
133
78
174
113
72
109
69
127
175
80
109
154
80
123
109
157
80
121
187
82
108
123
80
80
89
87
120
69
96
119
113
113
109
114
106
129
100
121
138
81
107
76
69
119
69
117
90
94
174
89
76
103
80
113
128
88
165
74
121
98
82
89
121
87
69
197
93
90
120
148
82
139
154
87
78
93
121
89
80
107
89
94
146
87
120
134
76
80
157
98
109
117
78
120
136
78
146
109
117
132
76
142
78
100
117
111
88
175
78
111
91
117
161
118
145
124
89
87
69
83
119
154
54
107
126
157
131
80
69
80
112
119
100
87
121
76
87
131
158
119
72
80
94
175
119
76
138
76
128
90
109
112
115
144
80
117
52
136
111
95
91
124
74
95
156
121
118
111
117
78
76
106
82
69
96
99
113
109
78
111
115
72
150
74
69
119
129
87
99
162
120
69
94
134
150
85
76
93
80
120
99
87
131
104
110
79
136
92
119
116
131
120
150
88
87
102
80
88
129
104
113
120
89
88
127
80
120
91
117
143
80
80
114
119
103
145
130
131
99
74
155
110
69
103
91
69
109
96
88
76
88
104
96
134
110
87
80
129
94
76
110
76
109
122
80
120
136
87
120
147
132
76
103
80
136
128
107
94
80
76
154
120
112
88
91
122
78
109
80
112
151
69
90
127
69
89
72
106
76
118
122
104
101
128
88
89
64
87
104
100
80
88
156
113
129
80
89
143
122
149
80
130
128
163
122
121
54
78
90
187
100
120
69
107
98
155
109
154
151
128
105
89
80
99
78
56
120
120
76
89
69
76
155
69
110
99
126
120
98
104
155
69
136
110
83
76
119
80
109
93
102
117
80
127
163
91
114
88
78
103
138
76
119
83
117
87
136
99
136
119
117
115
52
127
81
69
80
76
98
88
175
96
102
78
80
124
151
87
132
88
136
87
113
106
107
95
142
78
69
69
142
76
78
69
80
109
85
102
101
69
72
75
71
87
132
88
118
78
121
69
117
132
91
109
110
115
99
126
69
78
88
82
120
69
78
115
128
80
87
175
128
152
91
126
94
76
113
87
87
91
74
89
80
101
99
52
74
119
76
69
95
76
99
118
99
72
143
104
87
131
154
140
110
133
113
122
128
120
112
93
138
149
87
80
122
117
88
112
103
87
69
96
64
117
109
102
105
76
76
90
72
99
92
64
174
69
78
121
197
156
111
69
104
126
93
107
116
69
117
157
79
113
124
117
128
115
132
86
94
119
72
78
93
80
78
112
69
74
109
109
100
113
99
69
78
87
114
89
123
88
106
92
89
132
72
120
64
72
85
98
134
145
69
69
80
87
78
124
120
118
111
134
69
76
122
163
119
88
75
89
106
119
131
89
83
67
78
99
94
103
80
197
78
106
110
69
119
121
94
146
137
133
80
80
164
69
89
121
156
145
154
87
69
76
87
113
117
109
80
136
185
175
80
193
93
99
89
123
67
136
91
78
80
197
69
87
133
80
83
88
119
111
54
122
107
123
98
73
72
56
80
148
87
91
136
94
99
103
156
69
118
69
99
128
80
146
88
88
130
99
162
87
96
93
150
132
69
107
163
112
122
72
197
66
156
99
54
74
80
54
133
80
87
151
82
122
164
93
96
121
69
123
115
127
154
137
144
146
117
119
80
117
106
83
78
112
145
88
140
107
76
89
99
109
78
127
74
162
163
72
131
143
91
75
78
69
80
109
80
118
87
80
156
66
106
80
145
80
112
80
91
90
80
154
80
87
171
131
175
98
140
136
78
152
118
99
107
120
88
99
80
78
80
99
100
143
104
90
107
110
102
80
80
80
88
93
128
94
56
72
125
176
88
89
69
93
117
140
142
94
127
107
136
90
94
111
123
104
72
87
142
64
69
175
74
76
197
127
149
97
80
112
72
97
117
69
129
87
82
80
76
158
128
104
90
110
102
90
100
54
154
143
99
85
120
58
138
163
74
82
93
131
123
158
88
92
134
54
99
98
76
80
110
105
140
119
114
156
108
110
110
109
102
78
93
121
119
76
147
129
128
69
175
113
125
69
106
87
106
113
130
117
73
102
117
104
134
119
85
119
76
93
87
80
80
154
150
100
128
92
104
119
89
117
78
163
80
106
73
118
78
80
80
133
102
80
124
99
131
78
80
175
73
76
102
111
109
96
80
87
140
137
127
151
118
99
119
121
88
76
140
104
99
80
69
72
85
123
69
87
156
134
66
93
76
111
111
155
124
129
112
142
89
69
94
69
69
91
89
88
95
120
89
102
126
131
197
88
83
136
94
128
197
80
80
69
129
147
76
80
148
93
118
113
123
122
69
99
142
109
82
112
120
134
115
94
99
78
96
127
132
131
95
78
87
80
80
76
69
140
146
123
119
69
134
101
79
122
113
107
102
56
43
175
175
95
89
85
115
155
91
205
96
155
175
112
121
117
76
69
80
136
87
119
150
56
87
76
91
80
136
101
80
88
128
88
119
69
80
99
72
117
99
95
140
145
104
114
164
137
94
113
128
164
69
78
197
69
69
54
115
80
156
106
103
197
85
80
154
78
80
112
72
122
101
119
85
69
136
140
127
154
119
114
63
120
141
96
122
107
101
88
69
80
76
99
74
88
76
142
69
107
94
120
94
119
104
59
87
72
100
100
78
89
128
98
103
69
82
91
209
101
99
78
102
164
69
101
163
144
94
113
106
124
106
125
87
137
113
201
111
80
69
102
69
99
87
80
66
107
146
80
106
134
149
113
112
118
109
92
87
80
113
58
152
94
78
69
76
80
80
72
103
52
64
100
88
164
78
100
52
69
107
76
80
78
54
140
119
72
80
105
127
93
136
119
175
106
163
100
89
110
150
85
87
78
163
89
106
120
96
76
88
145
89
142
93
116
197
119
127
89
92
119
91
69
106
175
175
88
78
101
117
126
123
106
87
74
140
93
154
145
137
154
69
118
80
112
80
76
140
106
80
100
90
56
152
87
90
80
155
91
100
85
131
110
56
123
99
111
82
113
88
102
139
136
107
60
140
124
107
78
101
134
80
126
102
69
131
80
127
52
96
113
64
76
87
124
80
175
132
109
80
107
120
91
183
151
117
80
76
80
88
89
78
107
101
128
119
127
87
87
99
78
126
85
93
118
76
145
130
104
134
154
151
87
121
87
109
154
99
118
74
93
118
120
91
76
149
128
93
126
154
99
78
106
96
80
93
107
175
76
137
164
89
122
106
76
127
96
88
91
120
123
124
78
117
69
109
119
76
107
155
96
90
99
89
96
128
118
91
126
112
69
163
89
119
117
112
175
104
153
156
87
115
117
197
117
94
107
127
124
87
80
121
119
83
120
69
175
156
80
76
107
78
93
134
127
54
102
94
80
199
94
155
88
80
69
88
80
155
135
98
80
69
107
80
156
127
76
128
104
119
72
99
114
102
86
67
80
120
87
105
156
154
122
80
120
94
121
96
69
122
76
91
110
80
69
76
127
76
90
104
104
156
99
120
107
56
94
124
87
119
69
113
80
107
113
128
87
99
101
74
136
163
63
111
87
90
99
113
132
88
113
102
130
172
52
110
110
80
137
115
80
88
78
95
76
109
69
125
121
112
115
108
156
144
131
76
69
109
115
78
60
101
80
128
104
78
102
87
104
80
87
134
78
80
80
154
99
96
120
72
99
80
151
89
79
78
76
123
99
127
102
52
102
114
80
91
117
110
80
100
113
132
101
163
156
138
127
138
82
107
175
102
99
80
80
57
120
80
69
116
209
175
138
155
105
117
80
90
108
88
101
127
89
87
120
87
175
80
72
91
117
111
79
91
72
197
91
100
119
76
56
160
156
156
69
128
123
119
80
127
91
133
128
137
56
127
103
146
107
72
119
199
100
113
119
106
107
52
80
119
72
130
175
105
117
111
127
88
96
87
146
155
128
117
69
175
80
83
109
156
199
103
106
156
107
106
73
76
57
78
134
72
52
117
111
120
187
87
52
69
69
119
78
78
135
145
93
85
114
90
119
104
102
80
145
136
130
104
95
95
116
147
69
80
102
110
88
121
76
97
142
104
111
99
80
140
104
112
79
69
99
109
88
151
136
112
109
131
119
107
69
110
109
102
89
71
124
118
93
86
122
119
136
145
80
109
197
131
152
106
113
80
106
120
68
80
107
119
87
80
110
69
175
166
69
114
103
69
107
85
117
127
101
127
151
110
145
100
87
137
100
99
175
99
88
131
92
54
110
78
175
121
128
102
88
142
120
154
151
145
93
106
75
100
80
98
94
87
120
88
75
154
77
99
80
166
113
76
80
54
89
156
105
111
119
117
121
69
83
101
110
114
112
96
124
115
106
163
142
100
131
140
87
119
78
136
100
69
120
131
80
136
87
145
80
169
96
89
117
119
175
115
119
94
72
117
96
80
52
91
87
99
103
161
94
120
181
76
94
94
94
91
175
87
76
109
87
140
124
80
76
72
111
93
80
69
104
69
112
109
121
111
78
131
89
109
69
85
78
69
93
110
112
121
71
146
120
119
90
89
98
88
104
113
69
80
87
175
152
89
54
162
123
69
71
80
87
85
69
78
57
80
106
98
175
54
76
131
122
67
80
128
93
119
125
71
134
117
83
80
156
85
78
133
162
104
175
72
80
145
120
88
83
101
113
134
109
76
78
76
69
78
88
76
147
161
87
116
113
163
78
154
94
169
101
187
119
80
94
95
69
107
85
114
106
69
119
80
103
87
87
144
145
128
79
80
94
107
110
74
197
132
69
89
151
107
94
120
131
152
113
80
78
52
106
119
99
80
78
88
109
107
110
94
75
87
107
90
80
137
80
54
107
115
94
87
112
143
142
185
75
63
94
78
119
175
128
80
119
75
91
91
107
88
110
131
157
111
175
69
72
154
175
88
107
98
69
131
112
69
160
69
102
121
80
138
120
107
143
69
69
93
72
126
93
120
119
110
87
119
127
113
76
107
94
120
104
106
128
155
78
104
106
110
121
144
104
88
80
69
80
143
69
87
80
148
93
127
151
164
136
80
141
100
96
98
136
91
123
103
106
81
80
126
52
134
107
102
134
80
87
95
157
111
156
52
99
96
136
85
76
148
78
109
136
113
69
113
130
122
98
86
111
80
89
101
175
80
109
93
88
127
67
69
180
69
81
119
128
89
87
107
125
99
151
96
89
80
87
76
134
76
140
122
118
108
98
89
131
80
88
99
175
113
154
87
98
113
126
52
80
143
59
109
118
164
108
126
78
126
175
85
113
109
120
106
114
163
110
69
99
86
109
163
127
80
124
175
63
67
93
69
69
101
69
137
89
78
119
80
146
94
94
99
80
175
68
80
144
80
99
106
128
76
118
117
80
76
109
114
205
101
112
113
93
107
130
69
90
161
120
134
89
176
128
103
140
91
132
154
129
121
80
76
93
114
69
124
119
110
107
100
80
79
128
69
155
143
118
115
118
100
156
128
88
76
99
99
136
69
101
102
89
87
145
80
101
119
43
134
104
128
76
76
78
87
69
78
155
89
82
145
107
130
121
126
64
145
138
154
114
69
93
107
88
131
74
111
115
106
164
209
119
155
69
112
103
138
110
76
120
120
119
80
104
113
155
175
69
115
125
80
87
119
89
93
94
87
69
136
80
164
81
69
80
136
154
76
128
119
76
129
69
126
54
94
118
127
87
175
107
69
146
89
99
88
101
106
99
128
83
91
80
80
115
100
107
136
69
114
84
69
76
73
117
159
83
140
119
124
80
88
69
80
100
114
110
78
69
107
80
120
107
155
94
85
80
76
162
94
109
80
93
98
105
87
114
113
111
76
117
101
69
134
67
87
125
149
119
102
101
99
111
85
54
92
111
89
95
96
69
112
106
56
131
85
80
74
80
76
175
78
100
103
78
94
109
87
85
154
120
96
174
76
118
136
94
56
157
142
119
119
79
197
106
128
131
78
93
154
111
113
99
109
100
85
93
104
94
112
127
143
109
93
83
130
89
151
119
119
128
119
125
88
113
103
161
100
181
91
152
91
100
107
87
88
68
89
89
127
146
121
102
90
87
112
52
68
69
71
87
76
131
78
87
89
69
89
93
113
115
117
67
117
52
97
115
107
130
95
127
90
119
90
115
85
111
132
69
140
66
107
87
91
103
80
78
111
134
140
128
175
88
120
74
54
142
80
141
78
117
147
89
127
124
85
119
119
146
142
101
136
94
160
150
69
140
93
131
160
69
136
75
115
96
91
100
88
80
98
87
78
87
172
140
93
166
115
162
72
90
120
119
111
109
99
119
125
93
126
135
76
97
197
88
89
103
76
112
107
83
91
110
112
80
110
72
147
118
76
175
110
117
107
107
87
116
197
69
120
99
127
87
78
87
114
137
140
154
123
78
112
80
119
152
142
81
134
119
69
130
120
151
80
113
93
92
80
78
146
111
76
80
126
100
52
154
156
129
132
162
126
43
96
89
80
80
107
96
80
80
137
69
80
80
79
130
136
127
118
84
71
69
104
118
107
69
138
91
117
106
81
109
113
118
112
88
128
78
68
96
175
119
80
97
122
54
93
80
107
74
89
69
87
132
111
174
156
76
119
124
93
80
99
107
104
122
78
69
104
87
104
80
164
76
147
154
98
80
69
100
151
80
76
87
80
96
131
131
146
96
87
164
147
69
110
81
94
134
157
107
94
164
146
112
119
107
80
107
132
120
119
134
129
115
69
96
107
82
56
131
89
87
87
150
112
88
87
83
80
119
115
107
76
96
197
67
89
80
112
114
170
175
145
104
136
85
54
141
76
78
145
121
155
96
113
80
67
133
95
108
154
113
69
87
72
69
87
100
80
163
69
108
88
96
136
154
96
118
100
136
122
67
96
83
78
136
67
127
148
100
78
94
120
119
117
94
87
121
78
154
172
123
126
120
163
119
119
90
109
108
109
105
103
155
69
90
80
159
80
99
110
100
93
112
169
59
92
67
123
112
121
91
157
94
126
89
126
128
80
128
134
83
113
114
120
52
78
96
139
134
72
131
175
128
66
106
117
130
111
69
119
69
113
99
69
139
80
113
80
118
107
145
148
90
120
69
119
146
110
87
69
110
80
128
133
80
80
122
109
131
90
107
83
80
54
94
88
110
69
146
114
94
89
78
74
119
88
151
80
111
100
154
156
80
78
87
114
154
78
142
123
93
143
80
128
117
69
89
88
113
94
69
73
72
110
126
128
76
96
85
52
175
96
94
138
100
104
117
76
87
138
80
96
119
87
88
119
109
126
129
89
119
78
80
101
122
100
80
80
118
94
89
88
96
118
102
162
91
144
138
87
141
87
151
80
104
120
113
106
123
76
78
94
120
78
68
104
72
96
99
89
99
140
80
106
154
146
131
69
110
138
100
80
78
102
80
95
126
110
87
117
119
69
67
131
110
117
129
76
69
87
201
96
69
126
73
119
69
117
89
85
131
104
87
183
163
80
138
128
128
72
87
80
107
145
136
76
120
87
136
108
111
197
77
73
121
80
113
92
78
128
75
120
88
124
197
97
119
94
104
94
100
107
175
151
52
87
117
145
91
110
75
175
69
116
80
89
89
100
156
107
88
89
83
110
87
136
116
121
69
76
69
76
89
125
149
88
120
113
119
80
126
131
129
67
98
69
131
123
150
69
169
149
102
101
129
120
144
106
85
74
147
113
113
80
108
127
110
89
107
100
122
87
69
69
131
76
76
131
98
63
54
163
87
109
120
99
94
111
80
128
80
117
93
69
80
99
87
107
80
125
94
143
123
101
87
164
123
96
69
69
87
107
148
88
154
119
106
95
123
107
106
85
140
205
75
59
69
89
107
155
82
69
117
155
151
104
155
94
109
74
80
80
77
106
138
99
121
80
136
69
135
120
113
54
99
168
76
199
120
156
66
126
96
119
157
117
78
156
161
121
119
104
148
129
129
80
117
100
118
155
102
175
67
98
78
72
74
140
113
101
102
82
72
80
115
175
104
91
112
78
87
91
89
78
80
134
72
107
89
112
80
156
117
145
130
80
134
88
88
115
137
83
101
136
137
69
138
155
80
164
159
80
123
121
102
117
109
109
78
155
116
109
78
90
72
117
78
149
138
121
69
80
80
79
163
103
90
116
109
125
113
156
99
93
114
117
90
130
122
69
169
74
145
93
151
119
78
67
156
117
127
102
118
120
148
142
126
97
76
120
76
69
140
69
125
112
106
80
89
106
123
112
103
126
99
73
110
78
78
80
72
110
175
99
148
120
128
69
124
104
136
127
148
110
90
156
143
89
131
80
142
120
175
87
110
98
103
113
72
106
107
80
94
76
72
89
69
81
71
138
72
100
118
142
87
80
100
118
69
103
100
117
121
94
72
102
54
76
126
72
113
108
93
134
91
96
80
140
136
88
109
140
106
98
78
99
99
128
160
78
96
78
160
85
69
80
71
87
88
103
109
91
89
132
83
80
78
123
106
156
93
145
144
136
120
87
89
120
78
109
156
81
94
175
78
114
99
134
175
127
111
87
75
89
105
96
106
129
79
121
80
96
74
89
84
113
79
128
119
76
85
136
87
137
87
109
121
78
76
113
80
69
114
67
121
99
94
119
69
116
144
127
64
74
90
101
104
76
126
76
134
80
76
110
81
80
80
113
56
155
64
80
117
101
131
113
128
145
107
107
87
72
78
72
110
155
94
116
69
138
67
110
80
123
119
128
109
89
89
154
90
120
143
126
67
99
80
134
80
63
154
87
109
94
80
128
125
140
80
80
154
107
88
117
117
69
112
87
104
80
85
120
95
93
109
139
80
80
119
69
106
102
113
91
69
156
54
87
87
76
69
80
156
80
83
101
145
69
118
93
89
134
134
80
89
164
124
72
80
80
78
80
111
127
69
85
128
99
109
128
104
106
96
126
119
175
126
94
117
127
134
80
162
125
126
80
163
113
187
119
107
154
101
87
120
96
109
95
113
86
121
90
137
93
93
136
113
88
69
118
120
145
58
131
78
100
142
99
82
122
95
117
78
156
138
123
129
104
80
69
154
88
79
155
146
129
134
107
128
163
80
69
69
104
112
69
74
127
80
122
159
69
107
133
117
110
102
106
69
107
128
96
151
143
69
145
115
94
115
119
101
108
120
106
117
104
135
120
94
87
154
78
185
69
120
78
107
76
156
136
175
121
101
96
120
132
120
106
132
94
90
69
94
78
140
120
78
87
147
143
119
155
76
144
94
89
52
87
80
145
89
80
94
122
128
110
119
163
129
145
94
103
106
96
110
103
105
89
175
112
138
100
69
76
136
93
54
94
88
119
131
76
78
144
175
69
89
85
147
183
67
110
122
78
94
74
123
140
103
201
78
87
99
144
94
79
83
80
69
128
110
131
88
88
120
88
117
147
109
104
154
127
128
88
128
123
106
175
74
80
80
76
203
124
80
80
123
124
87
69
78
127
96
123
88
101
76
104
100
163
156
112
69
134
106
117
78
117
138
101
197
111
98
107
78
110
113
121
147
99
131
131
110
197
131
76
112
99
80
119
109
128
83
109
120
120
133
80
80
142
134
163
137
121
108
140
125
107
74
129
145
154
99
69
95
91
80
154
69
118
115
106
107
78
78
119
69
110
87
96
128
146
145
100
131
103
151
119
72
163
137
123
104
87
110
106
88
96
69
129
107
94
78
134
80
72
85
78
80
125
89
80
117
140
100
197
107
163
117
110
109
87
121
88
88
111
120
154
90
80
96
104
111
128
80
174
74
80
88
85
121
87
76
104
183
111
154
54
80
69
172
80
96
78
93
131
136
106
74
88
123
107
120
87
123
136
80
120
87
102
83
80
78
76
104
174
76
164
120
80
98
76
89
80
129
120
87
121
91
175
115
127
109
107
87
151
121
85
175
78
108
114
100
89
148
128
115
68
80
69
142
119
140
119
133
87
87
101
95
112
94
112
119
111
137
113
119
100
112
58
78
117
147
147
76
175
69
175
94
78
87
121
88
156
85
96
94
82
104
151
95
63
156
138
52
80
136
117
117
113
150
76
134
94
69
109
113
113
110
80
69
163
93
103
87
163
96
78
113
156
72
136
123
92
64
131
128
185
147
83
78
91
197
104
128
142
134
80
154
110
78
133
140
93
80
151
113
137
115
99
133
154
94
63
80
54
87
175
99
98
98
131
118
78
154
154
88
69
69
174
112
78
155
79
94
80
96
120
69
164
119
101
85
87
120
87
92
134
132
109
142
85
67
136
99
98
74
69
131
92
149
102
100
131
143
131
131
69
80
123
79
109
120
112
76
94
142
117
76
96
69
128
107
76
149
108
76
125
80
103
119
80
117
74
127
71
69
102
136
102
69
76
69
155
107
94
104
116
94
95
91
106
67
120
67
87
80
126
72
87
88
136
87
143
69
109
77
80
96
88
128
80
124
99
74
140
92
89
130
110
87
98
123
128
112
134
101
156
121
87
98
148
78
130
121
96
87
144
80
106
75
87
118
164
127
172
80
140
94
95
119
107
91
80
80
175
124
69
96
93
72
134
122
109
146
119
89
94
98
136
106
102
91
146
134
69
124
131
52
78
91
101
136
69
145
78
134
80
107
120
80
122
122
117
99
80
120
128
107
87
109
94
123
155
69
156
87
165
80
134
123
160
110
80
83
69
119
119
69
87
101
80
87
78
80
131
89
80
111
136
106
93
92
93
96
95
119
80
103
74
150
175
119
80
132
197
100
69
80
112
110
107
193
151
118
80
131
145
72
87
175
117
133
107
128
95
86
56
148
123
101
125
148
138
91
126
78
109
109
128
78
69
146
146
119
80
103
96
89
77
78
151
125
88
107
112
80
72
136
155
154
90
96
103
119
155
119
101
90
76
154
117
78
110
120
119
107
127
114
87
110
80
131
87
140
99
80
101
113
69
127
111
134
87
78
69
89
136
87
72
80
154
117
151
87
119
78
137
131
93
112
76
91
88
67
101
182
112
80
136
126
78
69
110
94
128
85
76
136
175
93
128
81
134
54
120
175
109
56
80
120
127
71
88
199
153
109
69
104
69
106
78
156
128
121
87
175
92
102
78
128
94
110
69
119
80
143
88
60
84
115
154
76
109
121
88
121
102
87
92
175
130
119
94
102
52
131
69
136
140
154
69
134
69
118
113
127
114
99
109
80
104
87
113
119
126
89
96
70
76
69
98
175
154
67
89
120
129
80
94
154
142
80
69
99
85
90
120
131
77
89
96
143
63
80
133
146
92
133
138
89
91
94
129
99
197
80
143
72
107
140
78
109
96
134
131
85
101
119
115
136
119
209
128
69
110
74
80
99
78
109
56
69
80
99
87
74
81
88
110
62
69
147
132
94
113
104
119
57
76
93
69
131
136
118
101
52
88
96
163
78
116
110
69
119
104
131
148
117
140
128
118
69
120
175
80
101
144
183
112
76
163
78
88
128
94
126
137
85
99
124
131
78
66
91
99
134
143
82
154
87
136
76
69
105
130
83
201
76
125
114
137
113
95
95
148
131
133
100
52
89
175
133
80
76
88
103
119
76
110
112
121
121
72
136
123
78
101
110
144
89
58
103
79
76
93
120
145
80
119
80
120
147
62
100
119
74
106
98
88
78
136
82
119
69
120
175
85
94
59
110
110
59
106
100
87
104
109
122
109
69
129
128
74
140
131
175
88
66
121
109
56
98
77
115
101
91
136
119
175
69
80
120
155
128
175
130
78
93
106
121
69
52
85
75
119
103
119
80
76
80
80
121
80
109
78
120
134
80
80
100
79
96
96
163
119
78
107
128
99
94
88
66
156
119
134
74
107
145
148
147
109
161
89
87
104
119
117
98
69
78
107
80
66
119
106
119
121
126
101
80
67
69
99
95
122
103
95
94
131
89
69
154
125
80
187
69
99
54
133
136
74
80
99
52
197
143
80
128
117
134
125
74
114
76
136
99
117
69
69
111
112
175
76
88
80
120
76
150
109
110
88
107
87
80
78
115
80
72
134
120
131
88
125
87
69
104
103
131
107
140
98
105
100
197
174
69
85
110
72
136
80
126
131
80
52
137
78
104
138
87
111
110
120
162
89
79
94
115
146
98
119
72
119
147
134
109
121
159
87
69
104
95
99
69
117
151
154
73
101
85
136
80
43
67
74
107
91
69
56
134
128
205
107
136
134
117
137
80
100
83
115
154
111
110
69
85
96
111
103
101
110
100
107
106
87
76
102
106
101
175
134
130
109
126
69
131
85
151
80
72
111
113
98
130
78
144
101
100
114
120
130
69
96
106
89
134
163
147
146
91
80
141
163
156
56
80
87
70
104
80
112
125
156
93
76
96
140
78
175
80
80
136
131
135
154
85
91
143
80
164
119
154
78
92
78
80
145
147
87
133
80
172
80
163
156
52
155
175
164
145
155
154
134
107
125
88
69
87
69
121
91
54
122
134
91
76
132
91
93
85
87
126
69
146
87
113
78
141
175
76
78
101
91
183
87
80
87
178
112
89
117
120
67
142
80
66
128
122
124
112
98
139
160
101
128
76
140
151
175
133
150
83
69
80
98
107
78
89
89
87
93
87
80
69
78
119
69
66
128
126
113
119
155
151
154
145
112
146
99
136
120
72
94
93
106
103
119
98
117
100
175
69
109
99
144
130
60
160
74
153
127
154
56
88
113
175
101
111
94
95
80
170
145
91
93
91
76
175
107
87
76
148
99
120
156
127
175
115
66
74
131
106
103
88
59
136
96
140
144
75
69
74
106
108
80
72
107
104
80
80
69
87
112
96
138
99
92
83
69
88
119
91
100
103
119
69
80
101
117
96
155
87
134
114
74
88
109
80
69
131
80
107
106
69
110
69
75
175
94
155
112
148
87
140
112
78
76
78
149
110
82
72
104
118
101
121
133
93
121
69
78
76
199
69
76
80
128
99
151
111
94
104
93
156
76
138
87
133
78
107
131
131
80
140
121
69
134
82
80
119
145
163
128
100
106
155
102
87
80
117
109
96
76
69
78
104
76
114
111
68
117
152
78
120
103
104
116
131
130
94
104
128
147
76
126
156
113
104
114
136
134
78
128
121
104
87
69
94
121
69
82
103
128
106
78
80
154
118
117
99
106
106
78
94
87
114
175
143
54
80
69
74
93
151
115
69
63
90
93
125
91
131
175
72
95
88
76
112
122
111
107
119
64
128
115
140
117
133
74
87
104
76
95
78
80
76
96
128
127
78
172
118
197
175
90
148
106
52
80
80
78
91
199
113
73
96
102
91
74
145
88
113
80
121
111
100
75
102
134
121
57
80
69
80
93
80
80
78
132
128
129
136
106
80
159
115
120
118
141
115
109
88
129
93
80
68
124
75
93
89
131
78
76
100
197
93
94
69
162
85
109
88
121
101
80
115
150
78
69
87
80
83
135
96
138
124
119
102
89
69
89
157
69
148
95
80
120
112
80
136
76
123
80
95
106
76
110
128
94
103
104
87
136
120
82
93
154
99
106
175
88
109
143
137
56
80
99
105
110
107
80
112
127
88
64
152
151
80
109
69
78
113
151
155
169
199
119
106
78
184
107
133
131
104
80
71
156
117
123
106
163
79
197
133
80
91
121
76
127
80
149
155
113
107
69
76
119
134
107
121
114
101
87
116
134
155
56
143
158
130
80
101
87
88
165
120
126
120
91
120
118
197
121
147
152
102
104
122
154
69
124
131
138
88
136
117
127
83
54
87
154
94
113
78
101
91
54
74
71
124
67
76
154
94
58
88
89
67
92
104
80
84
118
78
134
80
109
72
119
127
154
99
119
140
85
78
169
88
59
80
79
148
69
72
120
114
146
170
119
123
91
120
87
143
90
80
76
88
80
109
118
115
69
117
100
101
101
113
117
101
69
104
119
104
187
110
110
76
140
102
74
93
140
83
101
87
128
183
87
102
120
94
120
128
66
94
119
197
176
59
101
114
138
80
132
111
147
99
87
93
111
142
74
100
148
94
69
72
97
110
131
142
110
114
143
125
105
121
165
80
105
99
92
135
109
80
103
80
120
106
140
78
128
101
114
80
118
110
115
69
175
109
110
130
113
87
87
59
119
69
118
80
102
113
124
106
134
56
66
87
130
147
88
160
99
109
134
94
109
56
56
78
76
102
199
133
119
122
69
80
66
101
69
117
96
126
112
133
102
107
87
69
56
69
154
98
154
76
129
80
143
113
83
144
87
80
102
80
80
69
87
106
76
80
102
80
80
87
69
133
113
87
78
93
67
147
80
83
126
78
122
101
121
131
69
87
134
78
197
128
88
119
106
147
80
110
120
74
127
87
118
69
87
88
69
119
89
94
175
174
197
76
76
122
107
78
80
131
79
89
94
96
119
154
110
119
78
110
54
152
140
89
171
80
78
146
109
134
100
117
154
175
110
175
120
103
87
80
69
119
137
151
148
120
134
185
154
110
99
87
80
88
94
119
119
118
128
94
130
69
175
134
117
154
69
87
119
80
134
119
145
80
72
109
80
97
115
78
130
124
183
72
117
87
131
76
90
163
102
76
121
112
67
122
96
150
136
111
117
94
94
121
126
107
156
64
185
119
69
111
91
111
74
87
121
101
117
115
134
175
163
128
110
69
96
111
69
93
64
97
103
80
133
78
69
91
95
110
124
81
118
112
119
109
128
121
76
142
123
128
64
87
121
121
104
119
110
116
94
100
149
80
107
148
80
150
140
54
99
117
143
107
126
101
117
100
80
156
109
69
113
79
155
80
87
78
145
102
94
117
96
87
92
87
133
67
88
175
133
136
69
99
80
104
78
104
78
99
103
99
83
94
122
56
119
128
128
87
80
115
72
146
154
69
119
110
130
69
119
71
104
122
78
140
87
197
72
151
99
80
120
131
165
63
119
142
115
87
120
117
76
117
101
98
109
134
69
69
164
119
77
108
111
120
111
119
113
78
80
96
78
69
159
78
87
128
137
115
126
119
80
131
98
149
154
100
156
113
69
118
137
54
88
101
113
52
117
94
69
133
120
80
111
128
88
56
106
119
102
120
80
131
115
69
121
136
69
72
106
78
54
103
88
119
98
93
113
80
131
109
111
83
76
69
87
88
101
87
85
122
142
119
54
120
134
99
163
142
72
78
80
129
106
90
151
76
88
80
112
78
175
110
69
154
110
78
127
104
156
109
69
69
89
76
76
94
93
76
119
87
151
117
105
88
104
88
89
117
85
80
88
128
99
116
69
89
127
87
83
128
160
114
108
125
154
134
132
134
80
69
64
43
80
79
151
88
80
76
76
80
120
76
101
76
116
174
79
140
163
100
80
94
96
115
128
95
69
109
80
122
128
104
146
120
131
121
87
128
107
80
80
76
112
94
78
87
118
134
112
122
76
102
93
106
134
152
128
80
72
109
87
108
110
69
69
101
99
80
132
69
110
87
87
94
99
132
93
150
99
117
94
94
94
80
143
136
87
99
107
120
87
89
104
156
175
128
69
113
56
103
91
83
69
96
69
87
72
149
175
80
98
143
131
69
128
80
127
78
127
77
106
104
99
146
69
175
154
89
118
169
101
80
136
69
76
78
100
89
107
80
131
88
121
131
111
76
69
87
120
109
113
154
110
128
87
123
69
151
99
66
93
131
93
117
107
88
134
69
164
71
175
106
102
154
99
95
87
87
111
76
118
128
110
128
80
156
80
107
80
84
109
154
107
154
131
133
107
69
130
120
52
87
99
147
120
89
56
80
75
88
88
107
78
110
108
97
134
127
88
107
74
93
110
120
93
131
72
94
137
78
80
85
87
69
76
80
84
87
112
88
175
115
104
74
78
74
160
116
98
119
104
107
98
110
105
80
80
144
107
110
103
142
78
76
113
145
89
71
79
85
72
75
112
89
89
175
129
101
106
87
137
127
197
80
140
117
144
89
125
106
78
109
87
123
69
99
100
120
123
76
146
129
94
128
89
69
113
52
101
78
174
117
120
181
106
100
100
124
87
89
64
88
109
120
80
104
115
134
76
80
99
175
80
87
114
127
87
100
107
175
80
107
134
156
130
77
88
87
119
96
75
87
116
151
175
119
128
110
112
151
110
88
56
107
87
118
123
67
181
89
78
121
78
197
107
85
72
106
166
120
78
69
112
154
87
95
120
131
94
112
117
80
175
89
43
133
143
102
80
96
201
95
69
117
109
80
89
78
156
80
99
123
114
69
136
91
128
124
120
110
80
74
154
89
78
98
136
115
89
80
199
93
172
94
117
155
117
78
122
112
201
122
95
43
107
80
134
172
96
131
215
153
127
69
94
118
85
80
88
54
121
102
69
123
154
99
132
99
58
102
80
92
94
80
197
120
85
56
88
69
163
96
133
125
138
106
136
72
118
110
69
66
132
69
69
144
80
169
69
80
154
87
76
119
118
80
87
87
100
76
107
78
141
96
109
128
104
88
153
127
127
80
154
69
123
129
127
119
130
89
69
94
87
124
174
119
69
80
91
96
78
90
69
89
119
134
80
80
80
175
137
112
137
80
151
132
142
117
87
80
96
76
111
101
80
69
118
67
74
69
76
80
110
76
150
156
74
144
119
78
87
99
69
80
110
112
137
119
88
117
134
160
86
78
101
104
130
113
140
85
80
110
139
80
52
90
88
101
119
134
138
104
93
148
114
76
52
99
119
99
106
119
128
146
120
106
87
154
56
175
125
137
120
134
136
119
197
156
131
117
78
96
136
80
91
156
123
72
160
99
130
144
103
80
120
107
122
85
89
160
120
78
78
80
106
94
80
145
138
69
133
106
89
115
156
88
80
78
175
80
88
76
101
69
164
128
78
140
175
154
76
80
115
135
91
107
99
87
119
113
199
154
154
103
78
137
113
120
101
119
43
93
56
93
80
72
93
87
163
94
89
117
109
87
145
123
69
94
76
80
140
128
112
119
148
109
151
69
80
110
96
121
104
88
106
52
78
119
69
131
76
154
152
69
136
80
136
74
87
151
78
60
118
175
78
107
136
104
119
99
97
131
76
121
112
115
76
85
52
80
146
104
85
80
69
71
112
121
82
156
120
174
115
80
101
123
88
98
127
69
69
199
76
78
120
76
122
107
80
87
143
89
119
107
69
111
89
134
83
130
174
66
109
99
117
128
119
78
91
80
80
131
69
119
181
110
134
107
151
85
100
93
78
101
129
69
148
114
80
136
145
69
94
128
69
69
94
146
104
80
128
69
87
110
100
80
80
107
104
136
115
148
94
100
112
80
175
72
175
91
140
151
118
98
88
126
69
120
87
144
80
133
157
126
176
104
102
154
95
118
121
136
91
143
144
126
132
110
119
89
110
121
88
121
110
88
99
109
67
80
98
91
154
154
91
87
88
144
146
139
89
121
154
110
95
137
76
107
79
69
69
87
156
87
156
150
78
99
115
80
197
197
110
89
60
127
131
109
71
128
80
91
80
104
96
107
175
69
104
102
127
80
137
120
112
123
87
124
128
121
69
87
79
99
126
107
145
164
121
106
156
76
93
94
109
107
95
96
96
91
81
174
80
80
127
146
109
119
120
96
87
72
117
80
87
88
52
126
76
144
91
87
78
123
106
96
109
110
87
107
78
99
69
80
88
85
87
88
119
128
128
175
94
134
78
99
120
107
66
80
175
118
110
128
105
121
134
78
91
149
140
154
89
80
76
78
113
154
111
151
138
146
80
118
74
151
106
175
96
89
88
84
94
109
136
104
88
111
80
131
130
120
139
94
93
76
70
80
104
69
78
103
56
88
164
52
87
110
58
95
154
109
93
110
120
147
69
79
113
76
124
136
85
153
80
99
78
69
67
131
99
81
99
175
69
85
107
136
80
94
119
144
127
87
69
87
69
67
94
99
56
146
96
83
100
127
119
146
129
91
117
78
83
89
99
117
111
91
80
134
169
100
87
54
89
111
120
139
114
76
90
88
122
87
69
156
107
129
90
119
152
197
107
120
69
64
91
82
197
174
78
151
69
154
109
174
88
74
175
134
93
120
107
94
87
127
124
91
112
97
99
148
71
159
76
175
87
136
163
83
108
120
97
112
143
104
140
105
87
119
136
117
111
107
96
131
87
80
132
93
103
104
160
94
175
102
95
105
72
99
76
118
161
76
140
76
106
113
88
80
137
98
43
89
151
69
72
66
117
132
54
102
96
80
154
128
88
97
80
87
128
119
69
95
88
76
124
120
89
109
118
113
96
69
120
142
80
114
155
156
109
113
78
68
133
120
81
132
106
157
87
80
115
163
94
80
69
94
88
128
120
128
94
52
87
100
134
128
110
107
174
107
94
93
138
70
166
117
156
83
163
109
133
133
112
120
119
115
67
120
88
95
80
120
96
88
143
95
136
110
80
69
145
89
134
120
69
98
87
87
87
113
111
102
89
78
87
153
89
126
79
99
87
103
54
156
98
116
94
69
125
151
157
93
125
93
112
107
115
87
69
109
110
82
89
110
121
175
128
56
154
106
175
96
78
119
123
154
76
131
97
159
89
80
101
73
85
76
106
113
132
144
121
108
87
87
80
146
121
54
175
122
154
151
142
80
104
94
136
87
82
128
144
199
87
110
146
114
117
82
122
110
119
127
107
98
91
69
118
119
72
115
94
104
100
74
110
69
92
87
104
175
80
175
123
88
134
143
99
128
119
69
116
99
145
119
89
114
69
156
69
97
108
120
69
89
85
100
197
80
142
69
66
69
80
175
86
85
184
69
64
140
69
98
119
119
122
52
122
119
69
98
80
151
76
76
164
161
99
91
144
93
87
112
74
160
76
127
197
76
120
80
69
72
130
54
80
136
80
69
76
121
98
120
134
69
87
76
111
117
59
161
107
90
69
130
106
127
92
113
148
144
147
102
78
107
137
197
89
56
131
154
80
104
144
118
115
69
91
66
128
104
121
127
143
76
80
80
100
73
104
78
119
90
101
80
114
69
96
76
69
80
94
93
113
100
78
98
128
80
52
93
89
134
112
88
87
93
103
113
110
101
131
117
80
80
69
94
87
69
78
145
54
119
106
99
151
112
161
109
75
76
87
91
120
98
152
87
96
119
69
130
69
109
110
139
111
76
88
87
129
89
118
69
92
69
94
154
119
71
78
110
139
154
109
69
129
112
110
76
67
119
133
141
103
107
75
112
152
109
78
89
120
132
109
80
89
128
117
120
197
54
69
134
132
96
118
100
78
144
93
93
78
110
123
103
78
144
93
121
80
80
136
119
132
136
96
91
56
140
119
99
110
128
119
92
69
120
197
98
93
106
69
131
87
102
69
88
80
79
99
120
87
154
154
78
131
89
118
74
67
138
69
103
197
140
95
94
137
79
104
94
100
117
71
149
154
110
143
109
128
146
128
81
155
92
90
78
109
78
117
131
87
126
134
66
119
67
120
80
197
127
98
97
117
133
78
137
91
80
130
123
140
158
135
164
76
69
72
102
115
136
147
125
99
120
120
148
128
75
128
80
88
110
74
96
88
85
140
103
93
69
76
75
71
127
76
134
134
137
112
154
121
197
67
54
152
175
154
107
78
80
76
113
84
99
54
86
124
101
120
121
119
128
80
143
124
96
108
111
80
80
134
118
140
149
148
69
131
57
120
128
66
113
80
99
80
127
72
119
92
152
80
140
78
112
100
43
128
94
154
123
107
112
69
122
60
69
69
126
157
80
150
88
96
106
144
137
120
133
102
80
106
99
69
120
93
117
145
111
120
136
124
123
80
96
139
87
87
120
110
134
106
87
78
117
90
91
95
95
107
88
153
93
103
116
116
87
69
141
85
120
52
76
120
69
92
88
104
99
107
96
80
93
154
154
91
98
130
163
113
145
109
79
103
69
136
175
80
96
74
107
87
127
138
109
154
120
110
134
120
101
119
68
146
129
113
96
136
56
175
76
128
121
120
131
117
109
99
117
175
100
127
116
80
56
109
104
78
69
69
156
121
120
80
169
52
88
107
94
103
136
78
151
145
69
120
69
88
67
118
111
100
87
132
52
100
115
88
156
134
88
112
99
129
80
113
78
163
119
136
88
83
102
86
52
122
97
93
109
121
103
107
110
69
87
174
104
136
87
121
140
76
89
104
102
106
175
104
103
119
147
120
128
113
78
69
122
183
120
105
110
78
89
78
133
115
87
132
76
107
174
120
120
69
140
138
114
88
106
76
88
88
159
87
138
129
107
156
98
80
97
119
119
156
88
69
109
89
111
80
69
76
109
89
122
93
94
104
131
69
106
69
98
87
124
134
54
57
136
107
128
75
103
87
132
107
127
132
84
87
151
136
140
128
111
146
99
100
126
113
110
132
69
106
78
120
80
144
93
113
98
120
117
97
102
114
162
69
118
128
119
114
113
145
127
120
160
110
87
88
123
119
74
138
94
175
123
80
144
175
69
110
134
175
74
99
123
54
154
112
110
69
56
76
78
103
175
137
104
76
95
69
175
54
136
76
102
100
87
128
88
128
76
107
143
126
82
175
76
99
78
69
91
120
103
99
83
76
121
107
121
117
80
88
89
69
103
83
87
115
107
88
104
78
119
154
124
104
89
156
163
107
94
118
113
106
123
93
118
107
148
185
80
85
119
78
76
78
91
95
95
101
76
151
69
132
80
78
67
96
112
128
144
102
118
119
94
156
134
136
96
155
83
103
107
115
130
87
133
106
87
93
63
88
94
107
54
113
99
78
139
127
69
113
78
151
72
89
134
104
80
117
88
76
154
138
76
135
104
134
110
80
120
131
76
175
85
154
118
91
59
151
78
94
80
98
88
80
95
155
94
127
76
100
87
94
89
80
96
105
88
85
98
113
131
88
91
131
155
144
93
72
94
154
75
127
80
89
118
142
85
130
99
94
175
137
76
126
119
107
87
97
69
99
80
151
119
149
88
87
87
93
119
93
52
154
69
128
88
137
72
154
69
140
126
122
133
119
114
128
78
54
121
80
80
137
106
76
115
163
131
99
69
80
107
58
76
113
131
163
134
110
148
69
72
120
106
80
69
119
117
121
69
69
121
70
120
134
87
43
134
69
197
95
157
69
112
59
175
109
80
69
117
117
87
83
106
146
76
93
98
43
80
119
66
80
69
143
76
113
69
87
88
69
136
145
154
88
96
175
80
68
78
94
175
175
102
139
76
99
99
113
104
69
115
107
104
89
69
127
100
90
109
119
88
87
107
145
143
69
71
87
100
101
99
87
100
134
117
113
87
80
72
205
153
72
109
106
115
80
80
69
132
131
138
116
145
128
124
131
82
80
187
129
119
126
144
80
69
119
119
136
140
120
100
87
101
87
109
117
136
105
157
87
87
123
109
72
72
123
69
120
88
134
136
109
87
91
94
80
74
160
87
126
107
140
118
89
175
110
115
126
102
98
109
92
113
98
89
92
175
118
109
99
106
92
110
97
151
128
76
96
143
95
127
99
117
91
69
69
197
106
164
69
96
99
131
78
120
87
69
150
104
123
87
145
131
74
118
113
109
87
96
119
137
118
199
96
86
113
72
134
96
160
114
103
124
175
169
117
69
127
154
87
113
90
43
151
152
109
120
121
111
155
156
110
112
131
80
119
181
144
107
82
96
94
109
174
134
79
136
136
120
132
77
87
104
134
112
101
87
128
124
96
89
80
76
119
80
104
175
96
99
91
100
136
76
88
112
140
80
78
94
106
78
105
123
91
103
91
163
114
107
78
151
69
166
80
107
127
87
164
146
80
69
85
91
160
181
88
117
78
181
80
111
119
109
80
102
128
138
72
150
96
112
118
157
109
80
131
76
69
78
99
79
72
155
128
107
102
74
90
80
87
69
101
197
107
117
110
162
146
194
126
56
110
138
56
74
128
118
115
87
87
80
102
80
155
96
137
87
121
143
89
85
99
80
87
80
95
132
148
76
145
143
87
145
69
149
130
88
131
119
128
145
143
80
109
89
117
89
72
52
75
136
80
147
100
112
175
119
72
175
76
143
54
85
181
99
87
69
76
117
89
122
98
164
80
119
80
98
120
119
96
78
120
106
119
114
69
69
107
80
87
128
85
119
107
146
69
120
116
126
99
100
107
94
163
154
80
69
111
154
160
151
87
117
88
87
121
107
104
113
112
76
93
146
69
144
79
95
145
120
76
128
90
78
104
120
72
80
117
69
104
85
78
78
126
109
117
96
107
76
72
80
120
82
136
127
119
80
113
94
112
106
87
80
119
102
110
112
69
69
88
105
121
93
138
127
64
107
80
131
130
80
103
110
72
113
136
76
87
78
78
119
112
164
67
72
102
119
80
88
131
99
88
108
99
119
72
89
156
69
156
54
165
112
95
117
149
151
76
163
109
163
71
99
174
175
109
69
119
98
78
76
85
148
119
91
102
80
175
142
52
78
120
96
80
72
78
134
120
89
119
80
87
87
107
109
87
94
98
99
94
76
111
122
163
94
119
105
183
52
131
137
80
107
80
115
110
109
110
137
54
113
88
130
128
128
87
121
94
87
113
130
69
76
128
169
88
87
94
136
80
58
80
92
117
76
137
83
99
110
69
43
80
175
146
145
109
99
100
78
69
119
78
43
127
99
109
157
103
56
88
69
155
119
113
104
74
123
78
119
163
80
80
134
123
134
83
88
128
120
119
94
96
117
80
87
109
89
87
109
201
126
67
156
80
91
85
54
71
92
154
159
154
94
69
121
130
76
175
134
56
124
80
109
127
134
129
69
117
156
112
143
156
120
78
72
121
172
69
80
87
80
113
126
87
79
117
121
105
80
87
133
118
90
141
80
107
128
126
117
154
121
197
94
80
112
110
102
89
175
156
78
140
154
122
117
146
163
118
87
136
87
78
83
156
64
100
69
154
102
76
69
112
90
112
129
89
94
104
80
89
117
94
114
77
80
113
80
101
119
130
54
96
175
79
128
109
107
78
164
122
89
128
111
87
69
103
69
85
131
69
120
76
119
91
99
69
106
107
127
119
98
102
78
131
114
67
119
148
64
120
80
80
86
149
69
110
94
109
74
87
78
72
120
113
56
80
120
69
87
145
119
107
118
102
112
157
89
103
201
91
78
106
97
201
145
94
104
107
136
98
96
88
80
130
107
104
99
106
89
87
132
175
144
131
100
155
113
78
106
119
100
121
102
69
87
107
92
111
78
128
137
97
166
76
110
80
124
103
119
120
107
102
117
144
136
80
136
120
69
64
132
145
146
52
104
154
107
87
163
82
187
80
145
109
112
71
98
110
126
132
80
106
88
89
88
79
106
69
78
80
89
109
52
107
104
101
121
78
136
78
76
99
74
117
103
74
94
69
99
126
69
101
163
102
109
96
101
93
151
144
91
104
76
175
127
121
95
142
106
114
72
78
142
67
146
91
128
127
91
82
185
80
135
80
90
69
104
123
112
130
148
119
76
91
197
128
88
52
107
131
154
136
78
56
85
69
80
155
119
155
106
109
197
127
80
104
140
100
128
104
91
112
111
131
93
109
110
88
131
113
69
78
43
137
76
106
94
96
69
136
120
93
136
76
164
119
131
74
80
103
78
146
112
87
104
148
134
100
125
78
109
106
127
127
112
119
138
127
97
108
82
72
87
91
154
117
106
109
99
154
99
121
113
103
120
69
91
118
89
197
110
115
101
72
120
80
134
93
119
145
80
78
66
76
95
119
60
71
146
94
76
80
102
175
110
82
123
175
104
153
80
148
69
175
110
151
145
69
140
112
155
131
156
78
69
147
197
91
164
107
110
67
138
80
122
80
80
74
112
118
160
129
92
110
134
104
69
140
107
80
80
175
175
106
131
107
124
145
149
140
163
148
136
118
69
76
113
78
80
99
132
175
87
74
187
87
101
128
94
89
155
80
156
119
112
80
72
102
67
89
119
120
134
175
126
80
136
128
111
98
94
156
183
94
100
104
100
94
88
78
154
156
72
82
109
154
76
128
75
81
117
72
107
80
94
87
111
80
88
134
109
116
143
78
104
109
72
98
119
136
99
155
114
109
132
96
54
119
96
80
117
89
153
66
89
95
99
87
88
80
138
80
69
78
69
62
88
174
143
98
165
78
78
80
137
80
128
128
87
106
94
94
78
80
96
99
88
85
201
121
69
101
99
109
151
91
88
96
89
104
131
154
172
101
76
154
110
174
155
97
80
159
109
88
59
87
119
76
140
156
175
103
112
69
107
136
85
69
80
52
106
132
134
80
136
83
87
58
95
69
99
54
112
131
76
110
130
197
88
163
80
128
87
117
119
67
107
138
163
128
131
80
175
144
78
87
76
119
109
119
178
102
78
78
78
128
93
112
101
80
107
114
148
80
76
99
92
69
108
89
94
175
52
109
79
128
134
94
118
118
78
151
96
90
89
54
76
76
56
88
72
128
183
140
76
122
131
139
145
80
88
127
106
144
110
76
80
110
106
120
160
154
119
68
107
120
99
87
96
80
87
76
97
131
156
103
80
89
124
78
120
85
119
131
76
175
119
114
92
119
154
112
110
78
164
63
121
101
120
90
76
80
106
69
151
94
106
66
80
69
78
91
59
80
80
97
94
98
169
114
88
107
104
134
96
151
141
104
119
143
151
101
69
80
146
88
151
119
80
90
94
138
133
80
117
137
121
175
80
89
175
109
98
69
94
107
69
113
76
129
89
94
120
87
119
134
93
143
87
94
99
96
101
201
69
87
80
80
145
128
126
73
87
69
142
81
120
88
157
80
116
107
100
110
112
76
93
52
87
131
69
89
68
88
110
99
107
107
156
87
80
93
88
80
69
99
89
112
98
87
104
140
109
64
87
114
131
187
72
99
80
80
104
119
109
102
88
78
119
151
87
151
134
134
149
68
90
112
109
119
106
69
143
134
94
107
131
140
155
103
76
106
78
87
127
111
162
87
127
93
156
130
81
120
80
118
79
76
95
150
94
196
96
106
87
69
120
52
96
56
95
110
104
60
94
99
87
76
71
76
80
87
109
90
96
123
78
87
154
121
156
56
133
134
128
133
137
80
155
132
108
119
119
91
87
80
69
110
108
154
113
174
93
78
119
114
119
97
88
123
87
119
109
119
106
88
121
69
155
175
136
69
80
99
72
128
128
94
115
95
117
100
156
125
143
80
104
87
151
99
101
111
96
156
131
148
78
118
175
100
69
76
80
69
131
124
94
110
138
89
96
155
137
80
118
127
128
107
121
137
154
97
76
70
72
156
97
130
106
81
111
98
80
102
131
120
73
76
87
100
121
154
137
100
76
80
160
154
124
80
112
128
94
133
78
110
99
113
102
76
78
103
91
78
89
102
197
199
94
119
104
80
87
105
78
109
72
140
136
98
128
76
125
83
80
131
110
60
96
76
88
76
111
128
128
93
118
111
106
88
87
136
76
134
104
197
129
52
119
113
117
117
117
136
138
94
72
125
115
87
80
67
120
134
110
75
99
69
117
118
145
106
175
80
114
80
111
108
99
69
137
100
140
119
94
132
69
72
69
120
136
162
148
120
80
123
117
102
132
131
156
144
119
85
78
123
110
80
95
119
131
85
72
80
88
111
74
131
106
103
144
102
69
112
89
99
76
69
120
98
69
156
106
133
107
164
69
140
119
113
118
113
103
117
140
87
80
80
102
131
79
74
127
78
104
115
140
175
104
101
89
96
120
122
175
130
107
136
78
95
128
65
128
85
102
78
80
146
73
76
175
109
156
136
106
101
73
88
175
88
69
107
87
105
134
156
88
134
80
87
91
75
128
128
99
131
104
99
136
128
140
60
117
117
72
88
76
100
71
169
126
91
104
102
54
101
91
120
113
92
76
69
67
96
67
111
83
109
104
101
85
98
126
80
87
94
134
127
71
78
76
113
134
100
115
43
96
80
123
80
95
115
154
128
87
106
77
121
81
154
146
80
69
154
119
107
56
120
131
66
132
154
107
91
80
80
106
80
72
90
128
87
138
107
144
106
112
94
85
134
154
79
103
144
114
99
106
71
69
80
71
136
104
69
96
119
115
128
127
88
76
102
163
111
140
148
112
88
120
80
120
87
96
146
72
80
175
87
92
113
88
133
93
114
76
56
106
121
156
113
87
87
92
80
99
128
78
89
110
85
105
76
104
118
80
154
83
81
72
133
145
80
74
80
69
98
106
107
112
69
124
80
136
87
75
110
113
163
154
119
85
112
134
106
72
155
136
119
87
127
78
149
119
119
128
119
107
123
112
99
78
79
137
131
120
100
73
56
154
175
107
87
87
134
76
54
156
137
75
128
105
120
71
87
80
94
130
180
80
131
100
201
76
72
78
132
80
151
94
146
76
129
119
84
146
87
69
74
82
104
76
95
134
69
123
80
120
69
100
175
131
69
88
87
131
109
98
115
109
87
88
93
87
88
102
119
69
131
74
145
90
84
109
76
136
98
76
56
155
76
96
80
69
69
87
136
94
138
154
104
69
88
120
69
159
76
175
112
69
145
145
134
69
128
76
58
91
43
107
140
121
162
193
96
76
99
136
127
140
113
88
80
99
140
120
102
94
143
104
93
102
119
120
122
75
154
87
102
104
148
69
119
83
94
175
114
101
69
93
119
80
69
73
96
58
104
87
144
154
106
122
161
69
69
116
142
155
155
116
103
88
138
88
114
83
69
131
78
89
80
146
85
76
69
105
80
113
74
92
115
112
119
115
110
123
69
119
121
115
151
78
99
80
80
91
72
110
69
56
89
145
72
96
113
119
174
67
119
156
54
93
72
111
69
109
80
109
76
143
102
154
100
148
137
87
69
109
102
80
125
113
120
87
128
54
112
131
81
83
104
115
106
52
81
85
95
89
78
69
85
117
126
80
93
132
104
148
90
69
175
133
69
80
136
90
122
87
164
76
69
151
106
120
90
112
78
110
87
132
87
119
80
79
133
120
126
131
69
107
111
138
134
156
80
102
69
155
187
104
102
85
102
80
78
78
106
128
85
89
155
101
80
91
143
175
148
119
100
119
117
112
110
76
144
120
142
151
138
80
110
78
94
102
99
80
175
88
106
66
80
94
146
81
120
69
118
80
110
76
114
117
80
80
117
125
119
113
80
92
101
67
140
102
69
109
58
69
80
54
120
80
99
80
107
69
120
112
100
76
76
117
78
146
104
118
99
52
72
101
131
89
99
80
78
104
144
69
144
80
80
130
117
93
119
78
66
73
82
87
76
120
107
106
80
80
76
99
99
56
128
87
152
175
110
122
152
145
89
132
140
80
99
52
130
100
144
154
107
99
113
131
69
78
94
131
165
127
146
113
80
87
140
71
133
94
119
136
100
100
128
117
122
91
57
80
152
122
99
119
79
109
78
124
128
144
91
88
139
109
111
80
76
93
78
111
113
126
74
69
114
78
91
43
154
113
112
123
99
80
163
108
76
122
137
164
121
86
80
106
99
87
76
67
118
105
183
69
71
110
113
78
87
113
119
106
110
56
127
90
69
96
120
120
60
128
99
127
112
118
96
80
117
87
118
121
120
121
148
121
80
151
115
120
80
76
118
107
106
76
115
131
80
157
145
69
145
107
154
89
91
110
78
104
127
155
145
76
85
56
78
175
138
120
106
104
140
175
52
93
109
151
166
101
124
72
94
117
100
96
93
134
104
104
80
70
128
175
144
98
80
123
80
74
101
87
94
106
94
119
129
132
109
126
142
152
155
128
88
120
80
98
104
136
94
70
119
89
128
87
106
156
80
119
133
109
118
87
88
197
52
76
78
80
69
97
115
174
94
119
143
140
110
104
163
101
93
69
123
80
112
74
112
104
118
113
67
152
76
102
94
123
113
87
97
87
119
131
102
78
110
98
127
111
54
130
76
89
108
131
129
122
109
109
69
163
110
128
138
107
94
82
93
88
96
96
107
96
94
96
69
87
152
75
112
156
143
112
100
175
119
131
119
96
78
119
69
131
132
117
94
156
117
107
127
107
122
121
80
133
99
129
132
111
140
96
107
78
119
118
90
146
80
78
140
69
127
69
69
119
121
122
78
120
69
155
80
69
72
110
87
74
102
128
137
141
123
120
74
112
119
109
78
96
131
114
136
108
74
78
106
80
114
110
140
97
69
98
89
52
69
143
89
80
88
88
134
54
122
80
94
128
101
102
175
93
69
96
97
134
76
113
185
110
88
149
69
116
76
98
197
128
197
78
69
113
117
76
87
143
56
175
91
94
80
89
54
80
69
79
116
140
128
93
99
80
154
103
107
109
104
109
80
101
128
81
131
80
143
110
78
54
175
134
144
118
80
100
127
197
89
78
101
69
69
80
123
69
120
152
91
117
52
87
104
109
74
181
151
88
128
118
174
78
80
88
94
105
107
69
137
111
164
119
78
78
76
154
121
99
137
127
69
94
104
118
86
80
112
72
154
80
107
78
90
189
113
93
175
128
124
87
143
144
88
107
69
134
151
76
99
197
104
76
113
99
102
101
144
78
109
91
104
67
120
76
140
85
54
88
96
89
130
96
75
199
95
89
91
119
92
112
88
111
109
106
80
80
96
148
107
69
94
89
80
78
78
103
99
59
172
104
89
99
116
100
127
122
125
110
127
112
115
119
113
69
109
152
132
101
110
80
146
85
128
72
122
80
129
88
74
76
87
131
119
107
140
78
76
102
137
89
99
156
111
91
124
69
78
56
79
80
100
78
113
76
121
87
121
136
88
89
69
140
127
80
69
165
112
79
109
119
145
111
78
84
115
93
134
107
69
118
151
80
69
163
80
69
94
126
136
67
126
103
110
69
132
131
106
78
107
88
107
134
133
76
154
80
88
78
99
136
119
145
85
119
76
134
80
78
152
104
87
69
131
121
118
152
119
147
78
80
130
96
107
87
109
154
52
174
69
71
58
64
109
121
69
76
103
128
104
109
111
88
107
76
103
93
145
131
137
175
71
78
69
76
90
117
152
98
125
129
132
74
99
120
74
69
121
80
128
166
162
102
60
107
89
175
154
121
119
96
94
114
134
125
151
107
109
129
85
99
76
123
155
78
93
140
119
87
76
96
100
119
85
146
91
78
91
113
69
52
80
95
131
127
123
69
110
90
103
164
133
87
130
106
66
88
76
76
88
125
99
89
131
175
119
56
112
80
133
115
106
103
89
74
103
80
78
94
119
93
128
112
147
122
120
117
78
80
147
119
148
74
146
120
94
157
104
52
148
104
119
78
120
86
99
69
164
105
175
107
112
110
78
80
78
120
69
116
88
132
164
153
74
110
120
175
120
144
107
80
87
80
58
131
81
104
181
87
80
127
69
78
101
96
119
119
119
78
124
101
80
131
87
175
107
160
80
72
69
155
116
129
151
132
154
88
113
54
115
134
116
87
134
123
119
69
119
101
102
109
103
92
78
121
80
87
76
99
99
110
140
163
87
117
88
122
94
107
110
76
80
73
133
89
69
89
163
107
80
114
85
78
163
145
137
102
87
114
112
178
109
104
69
156
96
106
104
106
80
106
107
175
110
143
113
76
119
140
156
78
87
120
126
146
69
120
136
111
89
99
163
93
154
72
76
89
98
96
101
101
89
113
107
117
114
137
101
137
147
75
94
84
110
119
93
72
117
154
160
109
89
108
174
110
113
69
155
134
133
87
110
112
94
71
175
109
100
118
78
123
94
106
99
88
175
87
87
119
163
72
85
109
120
72
154
117
54
69
78
120
117
147
80
131
151
52
162
76
152
70
117
52
132
122
119
76
137
69
99
144
80
99
80
111
109
80
54
107
89
115
131
112
91
69
94
110
117
83
109
112
154
87
72
101
112
143
153
106
103
106
109
154
125
58
155
109
109
107
83
155
175
99
146
115
69
151
76
138
80
78
143
119
100
126
78
187
125
99
121
80
99
74
75
69
80
91
145
127
199
117
109
72
121
104
79
80
90
94
109
93
91
69
114
112
88
80
128
74
109
104
136
78
78
102
80
80
76
140
106
110
111
92
136
82
130
87
87
128
137
87
80
175
87
174
80
119
112
175
145
118
177
69
109
94
117
52
175
85
157
146
83
76
123
106
185
112
80
109
112
106
140
128
89
99
131
80
76
92
134
131
119
80
113
101
119
69
119
91
80
134
120
80
103
104
79
106
88
80
134
121
127
127
88
113
111
121
106
130
140
75
103
151
109
76
85
104
127
151
154
101
122
136
99
59
120
131
69
80
134
115
93
88
88
120
76
87
132
74
164
101
93
80
96
154
52
66
100
113
121
117
113
80
89
154
160
76
119
106
54
140
134
122
128
73
136
119
87
124
80
107
175
103
89
197
80
138
113
100
76
103
52
111
80
120
164
107
80
78
80
181
128
142
128
154
80
56
102
129
119
80
104
113
132
128
121
117
111
52
80
162
80
126
109
146
128
119
98
124
52
118
131
148
137
120
88
87
80
134
129
174
93
102
128
118
155
88
99
197
112
163
107
128
130
129
93
106
143
118
69
159
100
99
112
69
89
164
128
80
110
69
80
137
175
128
87
156
155
141
69
80
123
154
73
104
98
56
87
183
109
107
80
151
76
111
80
120
80
119
76
98
165
151
106
106
128
56
114
94
106
119
76
125
124
69
156
93
91
94
129
154
113
201
115
131
109
102
104
80
110
93
111
69
130
147
88
103
94
92
154
136
114
87
126
119
129
110
102
90
128
76
120
114
103
89
140
121
101
124
91
93
134
94
80
101
128
80
96
100
114
78
94
151
137
110
155
52
78
74
69
76
109
78
99
131
76
100
123
101
88
121
127
118
87
93
129
88
145
78
80
85
100
154
52
107
131
141
80
74
75
76
78
96
87
145
175
104
88
119
78
138
87
88
76
113
69
104
128
93
119
175
83
78
103
91
156
128
113
127
97
85
110
164
175
76
117
106
128
115
118
76
78
134
117
140
76
80
144
101
119
112
151
94
131
93
57
129
144
81
123
69
107
80
80
90
98
164
106
78
112
132
100
146
91
164
117
87
87
98
92
130
106
106
69
89
93
94
120
157
117
80
130
113
99
69
119
162
93
108
87
156
171
88
106
146
163
169
109
124
88
69
120
89
117
151
106
98
111
137
76
110
109
69
67
78
118
94
91
166
76
94
121
89
80
120
83
74
150
88
100
88
80
104
144
106
118
78
137
94
112
104
94
104
131
108
103
154
131
87
154
127
119
130
133
134
111
120
129
120
59
89
116
153
120
117
118
127
98
137
133
155
87
150
80
135
94
87
88
87
175
110
102
119
144
126
155
88
175
96
52
78
64
104
113
145
99
154
111
140
78
128
113
78
69
120
87
57
80
80
102
127
89
121
141
101
175
76
86
144
109
102
96
109
56
116
76
140
78
123
93
152
93
91
110
98
73
88
118
59
87
93
89
89
146
107
119
160
111
69
118
69
76
123
69
86
144
103
88
154
71
91
99
120
127
89
87
125
117
119
87
69
78
80
78
88
72
110
100
145
69
155
126
119
131
131
143
100
106
143
110
93
175
72
69
106
148
80
107
107
128
80
110
146
52
197
69
52
88
66
74
78
148
137
109
130
87
127
126
134
87
135
74
69
109
132
142
109
104
119
137
142
169
88
102
71
100
104
120
126
88
96
130
177
87
140
119
88
74
107
69
137
69
134
124
101
101
113
130
80
127
88
107
104
101
80
127
74
175
120
117
99
76
175
117
104
76
103
94
80
78
78
94
128
76
119
76
69
119
110
69
99
104
119
131
69
199
154
109
78
164
89
77
69
78
123
78
87
72
84
69
126
131
69
131
110
80
128
155
128
89
99
94
128
87
71
78
109
69
135
128
80
93
127
122
80
93
129
136
106
89
121
128
80
93
140
80
136
94
96
125
134
78
99
134
131
69
154
93
117
145
80
93
94
80
76
78
110
151
131
73
75
110
75
72
118
99
90
128
143
120
80
87
118
104
94
108
177
76
80
80
119
117
74
154
175
87
113
80
86
87
89
118
131
72
124
149
83
124
174
120
69
120
110
76
104
119
78
78
106
80
106
80
69
110
94
99
69
87
96
140
119
118
137
120
110
148
69
76
119
119
160
80
107
93
121
112
120
138
154
151
109
128
66
72
99
79
78
106
80
121
119
69
126
91
78
132
107
155
175
133
154
125
106
107
76
87
88
80
113
128
92
80
137
91
118
144
69
142
117
91
104
89
126
78
63
127
174
129
106
94
160
116
118
140
74
114
69
100
98
69
120
78
144
130
80
78
134
88
95
76
76
87
80
80
128
154
121
130
109
134
114
128
117
174
72
175
144
129
107
112
69
80
88
107
85
154
83
99
120
80
155
122
117
154
102
120
113
146
116
80
142
80
69
69
103
87
157
94
100
121
107
80
109
130
87
136
74
78
109
117
78
112
107
131
78
69
89
119
103
155
98
54
94
102
113
134
140
100
80
78
134
69
110
132
99
78
110
111
79
154
93
121
136
130
89
133
113
104
155
165
152
91
80
160
103
174
107
119
88
81
110
109
128
80
153
166
99
106
140
151
145
121
140
149
155
89
88
154
111
119
87
137
80
80
128
113
93
87
144
89
69
101
80
154
119
88
117
109
141
118
83
76
76
98
80
78
102
111
69
155
76
124
121
80
94
80
110
91
107
92
136
128
78
80
89
87
76
133
197
109
146
69
137
163
69
111
134
78
128
101
127
92
155
69
93
102
104
104
92
140
120
67
87
89
69
69
98
74
80
119
140
112
80
76
134
156
101
76
120
90
80
69
110
119
127
89
118
102
136
163
107
154
134
110
138
124
150
111
115
163
103
131
72
118
101
140
96
119
175
72
87
87
89
102
99
89
139
74
107
91
69
154
102
118
114
107
114
56
136
100
98
78
93
96
134
96
112
87
111
128
125
159
74
63
66
80
116
78
93
52
69
80
99
119
91
80
100
99
104
127
94
106
201
80
140
146
87
151
89
139
83
109
132
107
78
101
119
99
56
80
131
119
89
102
99
88
106
127
80
93
80
140
175
66
100
80
100
94
87
113
154
152
75
109
80
101
80
69
120
163
101
88
52
113
87
110
69
69
87
119
80
69
82
69
109
155
78
52
130
96
114
106
89
114
117
95
143
129
159
147
131
113
94
56
126
140
132
142
129
128
145
110
74
140
80
130
80
136
94
148
80
163
154
150
115
80
111
93
75
88
93
155
78
94
87
112
118
109
88
112
199
109
69
96
128
151
159
109
120
87
71
96
96
197
132
69
103
76
99
91
128
76
158
128
80
72
102
80
113
113
127
104
151
104
109
136
76
107
69
115
126
128
102
76
80
90
120
69
90
110
122
119
80
90
80
76
109
80
134
174
80
126
101
72
104
89
140
131
119
138
114
122
80
76
80
96
175
80
138
107
87
91
87
89
56
107
80
126
154
80
80
109
175
125
69
113
106
69
95
80
102
106
106
121
80
93
103
114
165
109
97
152
76
106
69
117
131
96
118
95
69
88
112
123
142
107
112
175
113
119
112
104
80
76
85
104
91
80
76
118
78
69
113
99
131
80
145
59
76
91
181
119
114
145
143
107
80
103
89
104
132
52
87
90
69
78
110
109
91
152
183
72
89
120
96
175
113
112
99
112
115
175
88
107
80
122
98
155
87
69
106
80
76
76
143
100
93
103
88
69
102
80
80
119
163
80
71
76
74
129
97
107
109
117
88
131
91
128
78
111
153
175
131
96
76
129
94
76
80
78
76
87
115
94
80
120
99
127
58
98
76
80
100
132
134
120
103
117
151
154
175
76
110
94
99
113
99
87
91
120
128
74
69
78
99
184
78
131
119
69
121
75
145
94
156
91
80
109
66
148
126
119
87
89
80
102
69
152
80
64
199
156
128
156
85
128
101
99
119
115
136
115
113
201
63
72
121
88
114
90
87
113
87
79
87
111
87
98
178
111
117
115
82
121
111
106
119
142
106
156
89
199
131
130
88
146
156
112
107
87
153
110
69
154
76
85
76
104
114
124
109
89
131
146
119
80
124
74
131
76
59
120
104
91
109
100
117
93
80
101
119
99
116
120
110
129
88
90
78
132
87
69
75
69
107
137
89
165
149
133
106
123
134
78
175
137
135
80
88
125
107
87
119
113
89
132
74
72
72
140
128
115
101
80
126
78
120
84
107
74
107
146
80
111
76
78
135
76
72
95
136
122
112
81
155
94
122
96
121
102
110
155
80
89
111
197
80
138
99
121
119
102
120
87
82
156
107
71
95
113
119
100
69
71
94
116
130
80
67
131
99
80
117
134
80
76
109
78
118
136
87
156
80
80
80
72
78
91
76
79
80
118
101
175
155
95
78
101
110
133
140
87
89
78
78
80
120
147
93
117
155
112
136
104
127
199
131
108
126
140
148
104
175
153
107
197
119
87
102
107
89
80
119
129
87
120
120
109
107
69
99
109
119
69
129
91
138
69
113
157
69
74
183
80
175
134
132
78
154
80
91
77
151
119
74
69
83
69
120
143
76
88
80
146
201
115
99
134
147
146
99
134
89
127
109
115
104
127
89
69
138
131
120
128
113
102
107
89
209
80
89
109
120
69
71
87
80
101
78
72
80
113
89
69
72
124
87
87
144
74
117
160
160
88
154
106
79
155
88
83
128
78
80
87
56
96
78
175
156
175
76
80
69
52
126
87
131
94
136
76
80
69
80
104
60
151
69
79
156
120
101
110
86
87
154
129
80
156
91
163
129
78
100
131
118
131
89
69
80
119
136
93
58
80
80
145
123
109
76
69
72
54
104
76
71
83
72
89
123
119
110
69
136
91
97
117
126
120
80
112
99
89
98
80
107
109
113
98
88
103
125
80
80
71
119
149
144
110
69
80
122
151
112
83
78
110
80
124
137
109
52
112
87
156
56
130
107
69
142
99
80
80
94
120
101
96
116
148
76
87
58
112
80
87
112
76
94
119
128
156
78
118
119
101
145
111
89
151
142
113
129
112
175
75
137
76
78
109
69
99
89
147
99
104
175
76
69
151
78
80
106
82
89
119
131
93
119
89
136
96
52
78
75
112
107
115
69
75
79
122
72
93
76
75
116
140
78
72
74
152
115
76
76
80
69
128
89
104
89
80
78
99
69
162
88
81
122
99
80
104
110
101
87
76
69
54
54
96
141
146
102
163
109
130
155
106
109
148
175
102
99
120
99
115
140
156
89
119
102
137
80
120
69
78
120
120
69
83
129
98
95
80
119
136
96
88
111
119
64
69
154
96
109
89
134
96
159
120
154
69
87
81
80
72
136
130
142
104
134
121
80
127
91
99
110
110
106
78
99
56
70
197
87
84
92
138
69
80
78
78
134
110
138
93
147
155
69
120
87
76
80
89
152
69
140
118
114
78
82
127
123
127
144
80
80
69
80
144
102
119
119
104
78
111
127
134
155
145
99
119
113
74
87
96
119
108
106
69
104
93
100
93
99
99
143
195
175
101
134
121
78
122
76
128
140
90
112
93
119
84
69
112
80
197
76
118
93
110
118
80
74
109
69
76
54
87
117
119
56
78
76
115
93
78
100
80
80
120
100
119
151
112
93
81
175
76
197
109
71
74
99
122
52
154
78
154
78
127
197
80
78
120
134
104
134
106
111
117
56
54
131
93
159
78
112
69
131
98
112
77
78
103
88
119
118
174
111
87
88
128
83
123
110
134
69
71
138
130
156
107
119
140
79
76
87
109
120
80
101
151
89
156
103
104
128
107
74
115
100
105
67
136
95
80
76
128
82
89
102
119
69
76
96
110
117
89
96
80
117
69
152
76
126
114
66
128
88
72
93
147
163
107
138
149
80
119
131
69
114
112
121
140
175
78
106
54
119
120
110
99
69
94
163
101
164
151
109
112
78
99
128
72
102
118
80
80
197
99
78
104
137
122
80
117
130
148
119
80
116
54
111
80
87
156
110
52
154
78
80
164
119
80
99
107
103
135
145
106
106
147
83
113
124
87
113
52
88
78
146
128
78
124
93
94
127
109
129
69
157
102
60
120
104
124
78
119
103
59
54
154
87
88
72
78
112
89
128
119
121
80
83
69
78
197
88
154
80
134
68
119
110
151
130
140
117
69
87
117
69
78
131
154
118
197
69
124
107
131
121
87
88
99
89
99
107
57
87
80
119
148
156
122
80
119
80
172
87
93
129
175
103
80
78
184
155
137
164
117
60
92
145
145
88
87
107
144
154
69
91
111
91
52
156
83
119
110
209
117
80
119
88
132
99
83
88
60
128
83
175
127
97
126
117
69
131
148
175
125
107
69
99
124
100
109
78
148
128
93
97
69
71
104
181
110
69
94
87
78
80
112
98
80
118
123
99
76
69
107
69
85
154
136
72
107
80
110
109
76
80
120
94
109
104
121
139
88
126
76
69
197
99
118
74
98
136
69
117
149
174
69
112
90
94
111
87
123
131
119
93
78
150
99
80
117
58
119
145
109
87
107
96
131
134
87
128
151
80
87
93
120
111
123
119
95
76
112
80
99
88
87
93
87
163
113
80
93
125
76
163
119
99
94
199
133
80
110
128
104
66
110
76
78
115
80
87
121
115
143
119
118
126
93
113
74
137
89
100
56
72
171
133
132
107
129
69
151
109
118
152
90
135
156
80
89
115
87
92
88
121
131
113
197
134
69
110
117
78
127
87
87
99
132
94
113
114
89
88
164
69
148
122
87
144
78
197
136
197
124
67
137
155
125
90
172
96
134
80
121
80
139
157
87
78
120
107
154
83
104
145
134
110
113
123
120
120
80
104
133
99
82
102
134
78
133
87
154
131
87
161
113
121
140
120
78
141
107
76
176
119
120
100
154
79
78
72
89
105
102
106
148
69
98
89
112
104
69
110
143
106
80
102
62
80
140
94
85
104
131
69
99
78
154
148
69
64
114
120
172
80
128
185
69
87
128
78
197
166
69
101
76
76
136
54
99
98
114
69
119
138
124
69
99
87
127
128
127
144
89
93
140
121
151
80
106
69
113
126
90
152
121
60
104
128
121
57
144
137
88
116
153
69
107
122
109
69
74
102
69
80
147
87
175
87
156
90
156
131
102
143
74
128
128
100
136
110
126
110
87
76
133
83
131
156
104
128
131
80
79
118
90
88
69
207
109
94
88
113
145
175
89
162
104
112
111
80
143
113
96
121
80
121
120
69
119
104
117
58
80
126
133
107
119
87
175
104
107
94
69
163
151
120
136
105
88
113
103
120
123
111
151
52
128
87
115
123
113
128
163
113
110
80
199
69
107
76
151
151
87
69
128
109
89
101
80
70
128
197
76
106
118
87
124
68
78
78
136
99
78
99
112
115
104
112
128
121
119
120
140
128
106
76
103
143
118
80
166
78
94
56
120
69
69
102
119
125
52
120
124
142
87
113
76
80
69
123
155
128
140
87
116
114
145
94
138
131
69
87
112
110
156
76
80
155
76
163
117
80
43
104
175
87
121
120
136
96
78
80
128
120
101
143
104
166
93
80
99
117
110
129
88
107
134
119
80
79
149
169
119
80
83
106
113
148
156
140
102
113
102
154
109
89
80
94
145
89
89
128
52
87
67
107
101
128
59
87
91
87
117
88
69
107
99
80
93
121
106
117
101
80
128
134
107
89
125
148
123
89
80
99
88
157
154
95
69
163
132
94
151
80
123
118
102
69
154
87
80
112
119
146
134
149
119
111
151
79
87
157
106
90
67
80
93
147
174
87
43
110
121
80
90
113
128
100
141
80
117
88
110
140
131
99
80
109
154
117
119
95
69
78
87
137
99
81
154
147
87
99
144
101
136
114
136
87
93
76
187
82
69
151
93
69
69
87
86
69
126
145
54
134
112
78
138
95
91
109
119
143
110
121
117
69
154
80
140
109
78
175
122
122
133
166
134
95
69
106
140
78
85
110
197
119
82
112
80
136
76
59
109
88
113
102
107
121
87
120
164
175
78
111
58
136
144
110
146
119
107
106
131
120
87
113
120
80
128
126
136
87
114
121
104
104
106
117
154
96
79
163
80
131
69
94
134
99
122
87
76
87
104
85
87
140
89
69
72
127
109
146
175
89
121
123
95
69
80
94
72
120
52
115
137
79
110
118
110
110
119
101
156
76
99
134
151
100
131
142
104
96
81
121
100
87
151
82
104
56
78
147
87
140
76
172
78
75
69
104
119
114
185
91
95
144
99
78
76
79
156
78
107
82
110
180
76
141
122
80
138
80
91
76
117
88
140
82
117
80
156
87
89
69
98
78
175
76
72
52
87
98
109
80
69
113
99
78
69
172
119
134
187
87
80
127
109
80
197
63
80
76
72
91
72
69
90
118
54
120
136
199
117
87
88
78
113
76
78
113
80
69
80
80
87
80
160
130
134
99
52
78
96
156
119
69
69
91
69
80
146
140
112
101
117
140
100
102
91
104
69
119
126
87
80
112
90
111
102
107
118
69
43
115
91
116
93
89
119
120
80
92
88
147
104
69
80
118
112
110
69
69
96
119
71
69
85
102
139
80
197
155
120
127
76
111
148
67
120
80
80
142
104
131
80
201
113
134
74
109
128
87
87
87
109
143
116
106
80
176
84
87
78
69
120
95
59
116
100
114
163
124
69
101
66
101
76
95
137
117
90
69
175
64
83
56
87
129
119
69
138
69
76
107
54
138
119
109
107
99
125
69
87
69
149
129
154
128
109
80
87
80
80
87
78
125
89
140
82
96
80
106
128
131
121
121
80
113
197
157
78
80
101
114
69
148
92
156
88
87
109
175
93
91
175
80
151
127
120
120
95
109
152
140
78
101
136
80
76
99
69
175
78
87
121
163
78
141
134
106
121
99
69
88
80
152
104
123
122
131
134
115
154
140
88
155
91
151
69
88
119
80
85
101
80
115
74
69
106
147
112
147
134
87
138
201
88
87
89
109
92
98
72
126
80
136
88
69
80
57
175
111
80
109
151
130
69
72
109
72
110
146
122
134
131
76
134
143
69
88
109
104
87
94
76
111
99
106
138
80
113
87
80
146
69
92
78
125
69
88
95
99
106
113
89
80
134
191
96
80
104
56
137
152
99
74
80
120
145
69
110
117
99
76
154
79
80
150
119
107
69
126
164
131
106
113
120
91
79
110
81
89
128
128
69
123
163
154
117
100
52
94
80
123
80
131
131
112
121
91
113
154
95
69
132
87
80
145
155
121
106
104
201
80
109
101
109
96
100
85
80
124
126
183
117
101
119
78
120
67
69
122
69
175
117
69
132
107
128
106
106
109
119
85
155
90
112
87
120
137
119
119
136
159
78
80
115
137
93
56
110
107
134
102
102
87
175
120
119
107
119
106
140
134
110
140
141
76
100
130
113
101
69
111
78
87
78
69
95
119
119
78
136
121
72
113
131
113
69
119
83
95
76
104
67
131
114
107
102
126
128
90
80
87
120
119
106
69
93
175
111
80
89
89
138
125
79
97
79
80
119
119
164
99
59
63
74
136
76
107
87
73
160
109
134
113
89
120
137
99
76
132
119
69
117
80
91
76
69
80
78
102
102
116
143
141
106
130
103
117
80
107
120
76
75
133
88
129
88
199
80
131
91
175
76
80
72
83
78
152
80
88
175
110
72
123
80
106
89
69
102
144
76
124
80
88
134
131
101
88
56
89
120
104
110
85
89
119
117
84
141
83
119
80
114
80
119
74
111
136
123
78
87
89
110
110
119
89
117
76
90
102
93
109
148
80
120
124
138
72
136
88
104
119
94
99
118
94
163
126
139
88
87
114
54
107
136
112
102
119
89
90
136
99
94
91
136
96
175
101
69
107
100
80
143
87
73
128
112
94
110
147
100
80
86
122
155
91
99
151
69
80
74
96
137
80
107
78
107
134
56
90
137
88
115
119
107
76
105
76
103
146
80
107
88
89
74
131
118
67
132
145
80
67
114
113
121
183
95
123
80
89
118
110
66
76
100
113
121
93
80
115
107
99
78
119
89
91
175
155
87
175
129
147
140
87
148
165
140
162
99
130
148
76
107
100
163
123
141
107
66
109
94
154
91
94
99
110
91
115
119
80
128
87
140
101
154
88
87
91
138
90
89
197
87
100
143
140
80
102
126
72
113
104
79
87
138
78
111
109
136
132
138
140
88
119
73
69
109
69
106
121
155
100
54
102
175
131
72
99
175
140
80
76
99
106
80
124
162
71
78
94
110
109
127
151
127
69
104
110
94
107
175
119
110
104
88
120
128
115
154
72
104
144
78
115
81
88
165
87
143
92
66
175
109
89
100
121
80
144
69
120
114
99
96
89
107
74
130
106
99
78
56
106
137
118
127
88
126
80
109
110
132
56
113
90
119
110
163
78
132
107
185
104
72
131
106
128
69
74
87
132
72
151
69
131
91
140
72
69
135
112
75
102
136
115
112
154
130
76
119
113
113
122
74
136
80
94
136
92
172
122
105
80
80
96
134
104
164
54
87
69
89
102
120
127
80
106
80
110
80
87
87
144
107
119
99
121
117
80
89
148
69
150
80
107
147
128
140
99
76
87
128
107
72
78
101
93
80
90
87
117
122
163
151
119
164
43
145
87
63
120
136
112
99
76
164
147
110
140
80
113
154
128
96
78
146
72
142
80
142
91
54
95
117
138
76
88
128
72
175
154
76
80
122
88
100
101
93
76
146
80
110
117
131
104
94
112
185
73
95
110
94
69
76
114
131
101
134
93
92
80
69
106
69
96
99
80
137
165
99
77
72
110
56
146
83
134
98
112
94
159
87
110
175
143
110
127
89
88
73
121
107
107
101
88
93
80
121
117
131
119
175
107
115
114
88
99
112
89
92
76
151
153
123
83
80
80
78
101
125
120
80
82
87
95
151
104
89
96
54
81
140
76
80
107
115
121
107
134
90
122
121
126
72
145
80
60
52
66
78
101
69
150
120
109
90
134
107
104
101
122
78
169
80
88
96
175
89
58
113
128
104
69
119
80
74
76
132
122
89
100
107
131
109
109
109
117
87
129
183
95
78
78
141
107
144
96
134
69
87
109
121
115
80
151
109
160
167
122
90
80
109
148
81
111
80
134
69
175
76
78
93
146
100
69
78
107
87
93
102
151
137
156
80
80
94
106
76
69
120
134
136
117
69
99
155
199
132
106
72
163
93
132
118
89
98
113
118
93
99
87
127
120
76
94
80
87
120
87
117
76
78
80
130
134
72
109
185
103
91
127
101
113
57
113
66
69
88
93
88
118
127
137
100
82
98
87
124
76
145
89
87
174
78
102
106
99
94
69
91
117
127
155
74
102
87
143
85
118
69
80
110
69
80
121
80
69
78
124
120
113
128
78
87
128
118
146
96
160
140
80
201
109
119
114
78
81
119
109
113
139
109
96
134
89
112
88
69
80
119
76
80
116
116
78
69
145
96
121
128
54
152
74
87
69
111
64
102
121
104
109
107
80
119
89
146
76
89
160
104
78
67
69
110
69
127
69
154
150
79
100
93
87
56
162
127
102
175
145
80
100
69
109
116
142
72
78
97
108
126
88
119
78
90
134
69
94
127
121
109
153
75
109
138
94
122
56
115
154
76
120
104
78
80
115
80
87
118
132
109
93
136
104
106
72
69
81
120
120
80
87
109
101
126
127
107
104
88
121
69
110
52
74
174
107
87
119
80
96
80
100
140
131
107
113
76
121
54
122
88
165
128
88
142
101
120
174
151
54
69
112
119
85
131
110
78
164
56
106
131
88
175
69
146
113
78
80
80
78
76
71
107
131
88
120
175
67
99
117
94
136
91
105
88
93
93
93
106
93
118
72
78
96
56
148
89
152
80
137
100
106
69
117
99
93
80
115
78
113
80
85
156
94
144
80
136
112
72
100
69
87
122
134
87
80
130
174
76
76
109
113
152
52
120
80
122
100
78
96
87
113
88
93
80
69
112
87
152
80
80
76
80
107
107
134
78
97
78
76
118
82
110
94
156
69
155
136
87
90
102
106
72
76
72
131
96
127
94
104
83
94
88
151
151
142
128
94
89
123
152
109
94
109
155
99
89
140
131
80
78
126
127
113
131
87
126
89
107
122
76
122
100
131
94
80
101
146
85
119
88
164
69
69
80
132
120
80
80
120
134
88
109
159
80
87
115
76
126
78
81
68
87
80
93
125
88
80
109
144
131
78
151
96
159
137
158
80
88
121
144
119
183
106
85
99
107
120
155
80
80
118
120
143
91
131
95
102
69
69
78
80
107
104
80
83
130
119
114
120
67
113
163
151
64
88
91
118
105
176
58
94
72
131
119
78
80
78
76
100
125
136
112
108
119
154
54
89
106
78
131
121
122
88
87
163
78
75
111
155
124
78
140
113
111
89
128
154
107
101
121
134
109
69
117
88
73
146
185
76
80
96
101
113
89
74
78
154
76
76
175
87
87
142
103
128
107
106
128
128
109
114
128
129
67
80
120
96
87
131
88
76
58
106
80
136
96
69
120
142
125
89
113
87
43
120
76
126
119
78
113
109
96
78
146
112
80
93
80
175
88
131
78
114
80
95
87
69
122
125
91
156
109
131
78
76
109
131
80
87
78
80
144
74
80
93
175
69
120
134
93
162
87
110
80
120
99
121
93
115
109
110
146
87
145
76
131
76
154
143
99
78
120
94
69
119
80
107
131
140
87
131
80
78
78
163
72
147
140
78
99
96
78
101
91
91
77
126
120
87
78
130
43
110
175
94
121
80
175
134
137
110
78
80
69
94
80
69
69
146
80
102
64
137
74
154
100
52
140
122
152
69
85
117
95
140
69
110
94
104
143
72
128
131
131
76
134
115
56
107
117
125
106
99
100
151
132
164
78
80
129
104
93
175
130
87
150
76
103
134
87
97
119
134
124
99
69
69
54
175
100
84
215
98
87
163
136
154
69
80
76
156
69
94
95
74
119
139
91
88
118
129
152
69
175
94
69
175
72
147
127
78
197
109
140
140
99
99
94
140
130
140
123
175
155
120
91
162
69
128
151
140
54
185
96
128
91
69
69
130
124
107
111
175
174
80
154
69
87
122
94
94
87
163
116
89
116
118
86
129
56
85
174
94
134
87
119
69
175
80
128
163
75
87
87
144
119
89
128
146
128
197
156
122
88
159
100
110
74
151
54
96
100
72
87
106
43
87
110
89
87
69
156
99
112
125
67
87
90
80
148
119
113
68
107
78
119
69
175
131
113
72
160
118
120
113
115
71
185
97
147
72
109
105
93
160
118
80
88
80
80
69
155
88
80
100
119
120
107
146
104
110
117
122
92
80
154
136
78
110
87
80
80
175
76
116
154
76
155
140
134
106
94
95
95
78
112
126
69
78
78
132
117
127
156
201
128
136
114
69
94
96
78
138
78
89
131
117
78
68
91
131
76
112
141
118
120
113
76
143
80
54
52
104
117
117
120
94
89
87
104
187
154
94
109
89
78
76
136
75
107
80
109
112
142
88
101
115
56
106
143
124
114
93
120
109
92
80
126
108
155
87
143
143
136
107
131
109
175
102
131
154
99
67
116
132
137
80
99
151
155
138
154
87
140
72
86
133
69
106
120
69
132
80
113
137
87
151
58
145
107
156
117
127
108
56
78
104
140
80
147
131
128
119
100
69
72
69
106
89
118
93
120
121
89
93
119
93
119
140
87
78
93
154
119
106
58
122
94
78
90
93
110
91
76
76
123
69
70
93
80
88
77
95
92
131
110
136
175
131
80
98
118
136
143
69
119
56
87
106
66
80
52
72
76
128
164
132
56
134
148
146
131
119
56
98
69
107
156
91
110
127
82
120
154
78
69
122
91
146
69
78
119
112
121
78
89
104
69
119
113
140
116
119
79
136
80
119
78
102
174
115
76
165
183
80
69
133
69
87
80
140
69
110
116
110
80
119
136
128
146
175
123
76
111
81
94
66
164
102
78
72
66
124
102
69
95
54
131
96
87
88
147
153
111
122
91
134
78
100
64
160
124
119
185
90
139
112
113
106
138
100
129
113
96
85
96
126
128
107
69
113
74
87
83
99
142
149
147
131
89
98
144
94
175
91
110
107
106
69
78
113
76
80
157
147
76
102
99
119
80
91
111
154
149
107
123
88
112
80
78
138
117
119
175
89
134
155
128
96
145
104
174
121
175
119
80
69
106
76
133
124
80
124
112
117
128
123
80
134
100
80
156
91
78
80
121
88
121
175
175
103
79
156
117
148
109
78
89
103
136
131
107
151
91
78
140
129
99
69
88
112
69
109
69
98
88
110
93
69
128
69
94
91
128
97
128
104
95
83
118
199
43
74
141
87
156
87
155
124
78
120
135
143
109
80
87
78
160
129
100
74
88
96
99
123
69
87
80
69
99
113
112
99
123
118
130
120
76
134
76
83
80
127
110
76
160
76
105
80
152
102
163
175
138
137
119
197
99
155
43
112
87
99
93
87
99
78
78
147
156
102
140
119
163
110
94
141
131
120
85
88
59
106
137
123
113
118
164
154
104
78
185
154
80
89
145
124
147
78
175
134
120
147
88
69
128
87
109
104
125
104
78
101
113
120
107
163
94
127
128
113
175
76
80
109
123
87
143
93
56
111
128
155
89
155
154
80
104
131
119
107
145
69
76
119
164
107
140
126
78
128
94
107
72
96
69
106
154
78
69
74
136
112
99
69
154
58
112
109
72
69
136
120
178
94
146
146
78
110
99
104
102
155
152
90
89
107
69
74
95
89
110
134
128
141
78
106
113
110
69
115
72
59
113
76
164
76
118
92
93
120
104
119
76
78
145
80
155
69
143
99
136
95
78
104
43
183
121
78
123
175
126
120
110
69
80
89
92
80
118
163
76
108
80
69
111
99
113
119
91
101
91
109
131
113
120
129
80
134
80
69
112
119
96
80
83
120
107
115
99
69
143
120
128
85
94
69
175
148
119
100
147
99
120
99
99
80
107
84
175
113
107
148
103
120
154
112
112
88
134
83
133
109
199
91
111
87
107
154
131
120
69
94
101
76
111
69
94
111
115
175
146
97
52
87
146
121
69
103
107
90
85
88
87
107
89
101
151
127
78
107
115
131
104
95
174
156
80
161
120
100
88
88
115
80
117
133
123
136
119
66
128
112
126
136
159
117
106
120
78
121
69
82
114
93
80
67
107
80
119
87
76
76
119
111
80
112
131
113
150
156
118
130
118
128
107
109
93
87
117
83
105
89
80
78
80
156
88
150
140
80
76
99
128
113
140
96
119
131
100
87
123
76
56
69
80
87
87
73
80
78
118
128
147
76
134
119
128
175
93
104
80
87
163
119
83
88
99
109
74
95
129
94
88
119
89
154
119
56
154
127
52
146
119
144
112
136
87
100
96
136
78
113
128
80
140
110
80
80
143
151
131
94
119
78
103
89
101
101
144
69
106
111
102
126
54
80
109
175
89
118
103
146
69
93
104
175
101
140
112
147
89
76
87
67
110
117
87
112
134
99
80
93
157
143
80
109
78
123
78
91
121
154
122
69
89
106
80
54
128
112
138
137
113
199
54
69
78
143
104
76
129
140
117
92
69
128
155
125
87
99
183
80
89
164
119
118
103
63
43
80
87
74
130
88
128
135
122
78
107
117
120
77
120
80
123
80
96
92
136
117
154
80
109
133
120
125
78
109
134
69
102
104
88
96
72
87
110
151
78
127
80
120
115
128
95
105
111
140
156
88
134
99
93
125
119
109
76
80
126
87
129
109
118
155
78
131
87
93
78
96
87
83
64
154
109
69
163
136
137
99
69
94
112
102
87
117
66
88
134
111
72
195
121
117
76
112
87
76
78
128
117
102
107
87
123
104
107
125
199
69
74
87
112
87
68
109
63
130
87
89
69
111
128
54
100
129
128
154
149
88
87
148
135
108
112
119
156
80
69
156
135
155
119
137
138
102
58
131
160
92
69
120
127
87
93
78
87
78
107
99
80
175
120
106
88
121
99
109
87
93
127
93
96
94
128
125
80
43
99
111
106
69
106
76
74
87
80
107
78
72
175
142
88
89
138
116
93
113
101
87
134
110
63
136
197
69
175
89
140
154
140
110
148
76
91
96
131
88
137
95
110
76
119
123
69
80
123
88
116
175
131
99
88
134
91
134
195
148
87
154
118
93
87
115
78
90
95
101
94
119
128
215
175
131
104
89
142
132
104
113
52
154
67
78
128
114
105
117
104
94
136
102
52
76
78
109
80
101
150
107
83
161
76
102
80
121
111
80
100
127
119
76
91
109
154
124
87
72
89
101
75
59
121
76
76
90
163
106
134
69
148
107
111
150
76
107
134
78
131
119
76
197
137
145
114
104
59
88
74
156
80
133
140
76
84
141
87
69
101
117
89
72
112
99
83
72
147
80
126
101
126
120
99
87
80
91
76
78
156
152
151
102
94
119
106
69
80
146
112
87
85
183
111
112
66
119
83
137
98
138
119
122
136
117
83
120
75
136
110
112
163
69
82
156
117
163
164
156
120
87
146
69
115
111
131
118
95
123
88
156
80
87
78
69
69
78
109
82
112
80
136
109
106
121
64
131
69
118
85
109
93
80
174
93
75
122
175
107
110
87
133
69
112
72
80
103
108
109
100
115
119
99
138
112
56
69
140
87
156
145
80
79
134
115
97
155
69
125
87
128
78
114
142
175
88
58
132
80
106
119
80
80
69
78
87
88
80
69
74
80
151
118
78
142
69
175
87
89
134
133
125
100
134
76
87
144
127
101
144
101
106
120
164
119
134
93
128
109
66
175
80
139
128
119
164
120
80
160
87
119
114
125
52
85
134
121
87
87
78
109
133
87
80
93
121
92
121
76
91
88
93
89
69
87
80
88
69
114
96
78
87
99
99
91
76
181
69
69
140
81
97
43
127
81
96
136
157
88
78
110
104
99
147
87
80
78
107
149
197
111
87
59
152
110
80
96
80
113
96
76
82
151
87
100
136
80
143
101
106
87
127
76
107
74
81
131
109
120
117
72
80
121
144
128
115
93
118
134
80
156
69
80
119
69
91
131
101
69
80
80
78
75
148
140
142
144
185
115
138
101
152
80
134
110
103
96
127
138
72
90
119
101
136
88
86
91
76
123
109
92
80
114
151
128
153
119
76
139
108
80
120
140
76
197
76
101
59
128
78
76
66
119
156
109
88
127
116
122
54
79
78
118
78
52
135
95
112
88
109
69
137
117
134
88
175
96
197
83
126
128
132
166
98
106
113
120
69
54
107
76
99
155
127
118
139
90
155
121
88
112
99
151
74
100
127
154
100
166
56
110
143
110
52
103
76
112
75
69
131
54
137
80
114
69
151
134
88
104
127
162
127
78
87
89
87
109
119
69
78
72
89
151
121
87
150
73
94
114
107
120
102
80
64
117
70
78
175
78
145
78
69
119
131
119
134
90
85
119
106
127
94
154
87
80
128
76
91
89
69
134
88
120
102
89
80
110
87
78
109
175
91
119
108
69
127
175
110
156
58
138
117
100
89
94
120
89
136
117
94
76
106
119
69
175
143
111
121
104
110
99
120
43
91
91
80
99
80
74
128
54
136
80
72
102
134
131
175
137
133
99
126
101
83
120
120
127
80
90
130
85
66
107
112
87
155
144
69
69
114
80
56
106
88
119
109
119
100
114
151
80
165
140
156
76
80
121
126
99
157
101
93
100
128
127
128
80
113
117
72
107
156
149
154
76
80
83
117
80
87
106
69
87
104
109
101
68
128
124
80
69
80
131
89
123
80
120
118
76
80
94
80
156
134
109
103
109
117
178
145
119
54
80
109
117
129
181
133
80
184
142
115
80
87
76
136
85
120
119
80
136
120
146
148
109
122
121
121
126
134
174
148
121
102
131
152
83
120
107
99
119
113
56
87
134
87
73
82
137
101
95
69
74
99
78
88
69
92
111
78
134
109
93
75
137
115
80
117
145
96
145
140
144
89
87
156
88
123
120
76
66
129
110
114
60
118
131
125
59
163
160
102
125
83
146
99
121
69
99
80
56
197
148
119
106
79
104
121
130
89
87
98
137
121
87
69
88
76
80
104
80
109
107
74
117
98
130
107
71
195
102
69
121
160
133
154
125
134
120
175
94
78
121
117
80
126
152
122
107
107
146
134
118
175
87
110
101
121
54
136
69
114
59
93
107
112
175
121
131
128
69
112
123
90
78
93
97
78
93
69
93
74
106
149
123
121
138
152
113
92
99
93
120
120
69
74
87
80
76
104
91
123
95
114
132
114
144
134
101
128
120
120
76
95
107
78
72
112
112
117
85
151
122
80
130
78
87
84
156
133
89
127
87
141
130
175
80
91
74
83
104
78
104
121
94
80
109
78
155
156
110
115
147
72
110
105
93
119
117
80
89
96
80
93
78
88
175
156
95
113
127
107
175
112
89
110
197
43
80
80
120
129
151
80
85
69
80
155
78
102
76
121
100
69
80
127
143
109
127
78
106
72
123
87
119
43
100
117
136
165
124
120
120
147
100
93
123
76
87
72
80
99
88
169
87
113
175
76
121
141
119
76
120
78
69
119
136
104
175
92
69
127
66
132
134
99
120
107
72
78
74
69
134
87
87
80
80
107
43
131
93
131
80
146
87
177
83
130
114
69
74
54
100
114
78
145
127
92
76
88
88
103
87
106
78
94
176
106
133
175
130
106
136
112
81
127
106
128
197
115
156
156
80
69
78
96
102
134
76
114
107
117
78
96
122
69
134
123
56
143
69
52
121
110
136
175
74
114
87
102
121
175
146
91
109
87
138
120
91
119
175
128
87
125
106
87
118
80
112
69
80
88
80
113
119
72
142
109
127
128
86
107
88
128
120
87
88
69
111
54
119
115
116
197
112
74
56
76
123
137
120
107
110
78
120
102
103
80
143
111
85
126
99
136
151
67
80
120
138
85
96
98
90
87
94
154
107
72
96
119
80
107
106
103
117
118
91
87
133
76
129
112
99
120
145
74
78
71
175
69
106
93
72
140
119
135
128
88
150
117
126
87
107
87
183
98
87
120
78
69
140
155
143
76
102
110
110
133
134
119
80
88
80
89
146
87
80
124
120
77
156
120
119
119
72
96
99
154
80
119
78
80
104
126
74
99
80
113
131
128
120
78
78
111
93
76
88
109
102
80
151
87
105
156
80
131
99
128
87
124
148
91
133
96
97
88
152
154
109
69
80
69
60
96
122
94
78
52
72
148
136
119
99
131
104
100
107
69
126
76
118
131
74
135
145
128
119
175
78
158
121
69
92
80
136
89
118
109
69
69
89
78
72
80
103
69
78
138
124
112
155
175
125
151
107
99
80
197
85
148
99
110
145
101
102
102
129
87
118
128
87
89
102
175
111
123
143
125
93
54
69
78
104
115
124
127
78
96
78
80
175
95
76
80
134
134
80
150
104
102
80
119
140
99
118
88
99
140
87
134
122
85
115
175
125
67
119
175
139
91
156
78
199
106
90
107
80
154
138
166
134
155
76
107
134
108
99
94
69
106
88
120
127
126
76
80
154
111
142
101
121
78
111
139
156
100
157
94
80
72
136
197
119
122
79
87
87
93
76
123
103
89
87
80
163
87
76
106
129
110
93
89
102
80
134
100
99
101
91
146
101
109
76
106
79
94
114
72
175
154
78
137
151
118
163
96
87
160
140
151
72
134
120
69
117
107
106
131
151
69
94
119
129
122
80
76
78
127
93
143
132
120
140
129
87
88
98
113
72
80
113
120
87
136
151
154
87
104
129
103
93
86
87
155
142
80
110
67
76
134
119
138
154
98
78
93
183
143
151
106
104
66
94
117
78
109
69
79
93
107
145
146
117
124
67
144
143
89
87
99
129
71
78
131
114
110
128
136
85
96
99
87
128
69
80
130
123
122
99
120
80
120
66
107
127
66
94
91
103
89
102
110
69
108
126
105
175
135
156
105
80
111
107
106
80
151
89
128
107
199
94
80
90
80
69
108
57
133
78
76
100
94
52
79
128
100
79
124
108
85
95
56
69
197
89
156
107
96
107
92
119
89
175
209
79
78
72
157
93
99
104
78
80
87
80
111
139
121
163
76
104
87
104
93
93
136
89
97
128
103
69
143
98
113
104
119
83
99
154
110
125
93
161
76
54
80
155
112
76
145
78
110
110
110
108
89
99
78
104
89
80
131
119
100
88
121
76
80
140
87
131
106
87
93
72
104
134
54
113
90
172
96
110
113
94
80
120
89
89
78
120
69
76
87
80
120
125
99
107
80
110
110
78
90
69
76
146
128
74
97
112
76
119
114
76
110
132
80
69
76
90
94
114
87
80
74
107
107
108
69
155
120
80
110
78
172
80
105
156
102
126
90
199
83
98
69
137
155
97
131
89
78
87
119
80
80
78
160
129
120
134
52
115
80
87
98
154
88
119
138
66
118
95
106
118
134
129
94
140
127
109
121
146
112
76
131
160
80
197
117
100
74
116
52
110
80
54
151
80
155
121
94
104
103
104
136
78
92
151
88
78
140
78
107
79
95
125
69
99
99
146
89
112
175
109
139
117
76
152
128
104
88
80
78
76
120
99
100
138
138
136
131
109
118
119
105
109
122
74
109
119
71
87
155
76
76
76
117
120
97
80
97
80
92
155
80
91
80
103
69
102
119
77
126
161
80
145
132
100
119
107
119
94
96
128
110
87
85
130
107
107
96
119
101
155
124
181
174
69
78
142
59
175
95
109
112
154
88
115
69
78
134
104
52
87
92
80
108
101
181
197
91
110
121
130
76
129
100
119
69
80
109
121
104
118
91
107
83
54
175
154
110
127
143
121
110
75
175
115
154
154
69
80
88
113
121
87
76
131
175
166
106
95
80
119
103
64
151
114
94
110
110
80
117
69
80
87
106
134
118
80
80
146
91
113
132
76
107
104
98
62
75
175
109
88
74
104
80
116
128
109
109
137
94
87
76
78
164
80
141
175
71
100
96
164
88
94
127
114
91
72
102
113
113
106
76
69
102
127
104
80
119
107
80
96
183
69
140
72
158
83
72
102
117
107
114
87
145
128
125
106
139
95
120
69
136
54
145
114
100
88
120
88
87
175
107
93
69
79
146
129
74
96
159
96
175
128
64
88
114
80
60
107
111
80
110
76
101
109
201
96
89
127
140
174
76
91
154
98
87
120
93
122
127
146
72
92
126
69
103
88
105
69
145
87
128
119
107
87
78
76
113
104
92
117
76
80
76
96
80
140
140
115
74
131
154
120
83
100
119
120
69
109
85
119
117
151
119
69
76
101
76
107
69
107
72
80
83
87
80
117
145
87
197
75
125
98
69
124
163
121
142
76
80
87
154
108
77
143
156
106
183
98
92
134
115
94
156
93
87
76
103
87
69
100
87
114
99
107
56
69
78
94
124
87
63
120
107
121
115
69
128
120
89
102
164
102
140
137
88
80
120
155
133
123
76
175
122
118
87
112
99
96
175
69
152
175
80
154
109
78
160
96
156
131
91
99
201
197
100
87
112
104
91
109
72
79
96
140
75
163
133
125
121
69
101
91
76
89
120
80
78
82
120
120
85
154
113
128
78
78
131
69
183
114
120
104
99
100
90
87
119
175
98
120
88
88
141
107
93
69
83
113
69
99
78
94
78
69
119
94
80
78
52
101
100
93
76
124
118
147
155
80
101
134
82
74
113
80
151
88
123
99
131
80
143
197
76
90
178
114
155
175
196
154
94
86
76
80
114
56
78
118
132
112
67
117
151
94
103
175
146
112
78
76
122
151
71
78
94
72
78
80
115
154
80
111
76
107
162
103
93
151
99
109
128
78
99
80
128
148
87
80
82
118
117
84
101
99
99
113
197
103
94
131
149
120
76
87
110
116
104
69
122
120
106
131
104
96
145
152
54
131
93
93
140
69
80
183
78
106
149
137
78
124
80
93
80
120
69
175
126
104
120
76
101
94
128
80
140
110
80
102
104
90
91
120
78
87
80
76
80
122
78
87
87
134
87
98
80
152
78
87
80
99
102
89
97
117
80
144
164
130
113
88
87
126
140
138
87
80
102
102
106
133
145
117
148
78
72
69
89
127
89
72
60
102
71
89
107
123
110
74
72
43
88
80
80
69
83
175
69
131
102
74
78
80
95
82
119
60
107
117
76
80
90
71
94
85
119
128
90
175
78
128
155
73
119
97
119
94
93
80
132
89
114
69
52
140
80
66
66
80
156
107
84
94
76
80
80
69
101
118
93
80
120
159
109
87
74
113
72
76
112
120
140
99
109
104
71
64
90
102
58
136
91
155
90
91
149
174
88
120
120
117
151
78
119
175
52
118
133
98
112
69
74
106
80
113
134
119
197
109
76
87
142
103
91
197
155
162
91
120
110
99
120
145
136
132
89
133
99
90
76
89
119
69
112
120
103
175
107
87
120
113
110
54
112
155
117
162
67
163
106
80
74
115
126
126
107
131
93
64
132
112
100
88
118
124
152
101
107
120
128
99
101
112
118
111
85
156
109
120
56
102
80
97
72
165
163
120
99
100
104
154
126
140
80
101
69
136
76
174
107
87
78
98
123
115
76
175
104
78
133
142
120
99
175
123
89
76
163
87
181
121
94
199
154
69
58
94
93
93
80
117
127
119
141
120
99
115
156
69
107
81
119
131
154
120
136
103
54
114
91
69
145
69
175
104
138
98
142
128
87
96
87
119
137
69
94
88
69
128
89
119
94
134
80
80
72
87
80
85
94
159
109
60
130
78
155
119
91
112
119
114
88
140
54
151
89
94
99
101
110
72
140
78
113
88
107
80
85
102
163
156
83
176
88
76
109
107
80
93
85
101
89
69
134
144
136
151
140
128
74
140
124
118
80
104
131
78
121
113
80
78
122
121
100
99
74
115
126
72
136
128
102
120
131
143
94
56
99
87
93
88
74
76
80
166
134
102
96
80
54
162
76
106
109
72
101
164
69
80
69
100
103
117
78
136
99
80
72
52
134
106
126
134
120
69
81
80
114
123
109
127
102
142
118
82
90
80
88
72
89
146
150
104
118
89
69
106
99
154
71
89
76
109
116
107
90
130
80
99
89
87
107
109
103
110
155
110
111
87
69
155
66
120
117
122
175
93
87
110
67
78
80
132
110
80
96
94
99
104
140
80
109
175
154
96
117
128
129
87
91
101
87
82
112
136
92
80
89
115
112
88
131
104
107
144
78
183
122
105
88
89
87
85
109
107
80
120
134
118
108
143
69
106
124
128
90
111
118
80
157
98
80
146
80
175
90
87
109
80
89
113
124
127
120
52
92
89
164
120
83
165
89
78
139
80
93
99
94
99
156
106
76
94
106
128
136
126
122
177
128
117
129
121
101
128
107
99
164
94
149
74
120
80
101
96
131
104
114
78
119
80
67
69
69
174
133
101
76
130
120
140
120
54
80
134
164
107
69
72
148
175
80
107
119
94
104
80
110
80
145
107
80
110
78
96
87
110
171
140
130
121
119
69
120
89
127
78
109
154
120
87
91
56
99
143
85
85
72
101
69
76
88
106
165
128
154
137
121
119
209
81
99
120
89
99
134
76
60
109
85
183
118
154
142
136
69
132
151
152
107
99
106
141
87
83
112
131
140
121
120
87
101
147
102
98
88
109
78
89
109
80
118
93
80
104
114
69
93
99
72
113
56
123
87
66
85
100
143
118
96
87
143
78
99
131
155
87
80
154
120
154
88
88
127
120
132
80
179
154
94
156
100
83
78
78
113
78
112
88
115
83
129
144
67
80
166
147
199
96
78
134
98
151
131
119
175
107
145
96
111
59
120
76
146
69
145
87
90
69
69
120
119
134
156
54
104
69
109
100
140
69
107
108
102
155
89
113
59
69
145
52
69
145
114
159
111
155
132
120
134
119
89
69
110
80
136
116
107
124
107
100
99
99
66
197
131
84
117
117
118
88
109
154
69
114
107
136
80
103
131
87
131
175
127
104
80
69
175
95
78
151
117
109
80
69
119
163
120
98
120
146
69
59
140
148
134
104
76
146
154
91
80
101
175
69
114
100
111
121
132
136
78
80
56
69
144
131
142
127
80
80
94
100
103
78
128
78
107
164
99
98
143
95
78
100
110
166
138
103
96
119
78
136
80
114
118
111
135
87
106
127
100
101
164
121
122
101
80
128
103
148
154
125
101
115
57
80
69
80
154
88
69
98
145
85
88
80
99
102
120
94
128
163
91
128
78
101
69
69
154
76
80
69
119
89
76
119
122
72
139
89
119
99
94
201
120
93
151
74
109
104
80
147
148
104
121
107
175
137
113
119
89
124
129
90
159
99
83
80
104
121
96
107
131
78
101
154
106
107
129
64
81
103
89
140
183
110
121
80
69
113
154
43
115
97
135
151
100
69
80
69
97
113
120
80
69
118
63
87
112
152
104
89
146
80
175
90
163
128
78
119
89
110
154
87
76
78
87
99
87
69
121
72
74
69
80
82
154
80
80
90
128
110
80
56
80
113
93
69
80
120
110
78
106
72
117
80
122
90
110
80
68
175
104
107
137
99
110
133
139
134
94
175
80
104
137
76
153
131
69
113
118
76
112
128
69
56
92
99
69
140
156
106
69
96
95
101
128
144
69
133
99
121
136
94
67
115
89
127
74
88
76
119
63
127
156
88
175
80
69
132
163
130
130
83
109
80
119
119
113
69
103
128
143
107
74
126
133
101
125
123
107
145
73
78
99
103
78
94
95
107
156
156
88
85
87
175
67
120
102
69
89
96
103
95
91
103
96
120
93
102
119
76
119
87
123
119
66
67
107
106
101
133
94
100
99
88
163
96
93
79
119
101
102
143
136
86
91
101
104
106
80
80
119
89
91
83
120
69
117
80
109
117
142
100
78
66
136
98
94
99
75
145
85
88
80
106
109
71
136
99
119
114
106
78
79
87
87
110
109
128
110
80
98
80
120
154
121
80
120
87
131
120
151
154
95
106
80
124
197
139
136
137
136
78
79
120
110
145
118
52
87
138
87
52
147
140
80
101
95
125
128
129
93
76
74
122
142
116
99
113
87
104
120
126
130
69
156
109
94
128
113
126
120
66
121
52
78
115
117
117
152
87
90
88
172
126
131
69
114
80
157
80
79
80
99
80
87
76
80
106
91
94
199
154
113
111
69
119
95
151
164
80
69
78
128
154
136
99
69
74
112
80
87
69
130
69
149
136
140
110
122
121
107
109
63
72
119
80
156
110
117
93
80
120
69
117
119
80
117
107
162
75
78
112
89
110
76
69
76
95
120
112
101
123
80
131
123
115
175
80
128
69
107
113
94
78
129
151
79
91
101
95
99
166
115
155
141
110
112
178
131
76
94
88
110
76
103
79
69
112
119
116
80
69
156
69
74
69
94
120
87
107
101
134
156
72
86
131
126
100
120
87
75
127
85
113
88
104
126
117
152
131
152
122
110
100
147
96
149
69
84
88
87
112
98
145
154
86
66
155
72
69
124
138
82
80
96
166
134
69
80
133
78
120
115
69
67
102
87
85
112
109
69
134
113
107
110
64
100
163
109
93
121
98
95
101
87
101
111
69
164
124
72
136
58
146
115
100
85
87
91
140
104
120
117
116
124
123
80
69
151
104
87
101
125
113
110
87
117
140
69
69
104
148
78
80
151
100
156
87
109
78
128
88
107
118
120
69
85
67
106
112
80
80
175
134
146
102
76
114
113
197
119
69
78
119
76
151
100
106
88
119
88
119
88
119
103
151
154
94
80
144
80
175
156
91
91
134
112
100
154
72
109
187
87
132
88
84
78
127
69
69
151
99
114
80
78
164
119
134
129
146
156
80
80
88
101
121
131
107
69
120
117
99
140
94
113
99
85
126
149
117
98
99
120
106
122
144
113
175
69
114
143
119
87
90
117
86
87
69
111
94
154
88
99
87
147
91
160
175
74
69
175
134
122
78
105
134
115
157
87
104
69
120
88
93
113
89
118
88
175
89
103
115
106
115
76
78
110
106
148
131
80
110
87
72
99
172
145
121
80
144
87
94
133
145
117
121
87
126
104
87
95
104
116
152
99
131
78
119
94
155
78
119
99
99
76
109
96
96
78
69
87
87
123
121
98
69
175
83
67
80
151
104
155
156
169
92
78
119
69
135
74
118
124
134
74
72
87
80
136
80
136
124
151
108
87
132
91
102
123
78
119
131
118
119
141
156
120
114
159
115
175
137
119
107
112
80
107
93
98
79
138
69
96
75
78
89
69
95
69
119
128
120
143
87
128
95
127
125
127
134
80
69
136
143
120
89
146
112
107
80
112
106
69
71
119
98
159
80
89
74
110
120
105
117
123
124
123
54
52
133
54
130
98
134
149
131
109
96
78
136
78
155
101
95
86
72
71
88
104
110
130
83
128
109
120
112
58
88
69
151
129
78
102
76
110
121
99
141
109
143
201
120
83
154
80
156
78
156
120
96
128
69
157
143
109
69
148
122
189
120
119
75
134
111
128
114
111
122
74
125
115
76
111
80
156
67
106
88
136
94
69
83
69
80
169
110
128
101
118
72
72
99
107
89
111
107
154
111
80
128
80
78
109
98
197
85
128
154
148
87
69
87
90
88
91
93
131
80
99
121
93
109
69
69
88
124
52
128
72
96
119
94
80
120
128
108
94
80
103
74
80
107
96
94
134
121
96
96
78
80
137
94
93
101
94
151
124
107
155
80
87
137
80
88
115
98
67
69
154
209
117
117
60
128
117
144
87
69
114
187
109
175
96
92
91
197
133
92
115
154
72
102
199
69
80
104
87
93
106
80
69
69
94
87
146
93
78
136
154
69
119
76
87
104
69
69
78
108
117
136
156
99
119
129
82
151
109
101
101
100
156
69
87
189
69
112
80
148
80
69
56
106
80
78
99
175
87
175
116
110
120
130
99
134
93
110
87
76
75
76
87
78
88
78
134
88
91
106
116
80
185
138
101
106
69
106
69
113
131
54
114
92
119
96
110
72
124
106
138
154
91
54
144
103
79
128
128
123
89
98
137
120
99
107
156
97
144
87
87
143
113
66
137
85
149
119
96
172
121
113
89
80
110
82
107
80
116
74
106
97
136
85
87
147
107
59
106
96
89
107
88
89
124
81
113
111
96
88
96
56
107
89
76
128
69
119
87
123
96
56
104
56
122
95
124
90
69
125
101
128
142
112
76
83
78
110
146
120
83
120
130
93
154
93
154
73
102
107
119
112
156
102
133
93
145
101
96
136
155
119
101
119
80
96
145
113
141
104
101
99
121
87
96
102
126
69
128
118
137
69
76
72
99
131
99
132
101
124
140
96
119
163
149
119
82
127
119
69
156
130
94
80
69
68
110
121
98
119
59
120
78
156
78
69
91
147
99
88
88
76
80
128
128
112
131
81
154
117
127
131
118
141
106
103
76
87
138
111
107
64
80
136
120
117
101
56
157
107
119
96
87
104
109
93
80
128
67
80
80
177
163
95
89
80
99
69
93
114
140
99
104
99
94
156
69
130
78
82
112
103
93
80
107
119
93
144
101
87
100
120
166
85
201
175
87
99
109
128
72
197
88
85
69
160
117
104
100
129
102
88
134
128
120
106
162
118
104
76
87
89
113
99
162
129
96
52
78
145
150
76
134
96
121
112
103
113
121
69
95
80
119
123
69
74
154
80
141
142
96
123
127
140
122
113
96
93
100
100
88
124
108
74
80
69
104
110
122
109
74
96
130
72
80
134
126
144
80
69
52
69
136
87
118
67
117
109
89
109
197
83
159
69
103
147
183
92
59
76
99
134
89
76
136
119
119
175
76
72
154
54
99
89
87
109
109
88
104
136
156
81
109
54
111
107
69
166
156
69
140
87
131
155
80
183
175
80
151
91
83
69
74
96
156
75
80
87
102
85
88
155
78
88
100
163
63
80
163
107
110
93
151
110
175
87
80
101
80
80
80
80
56
113
99
80
162
147
69
137
118
87
120
87
109
119
79
119
89
128
96
87
89
113
104
76
119
88
145
109
109
111
80
103
107
134
87
88
154
91
96
96
93
111
135
104
100
91
163
109
94
119
69
121
82
107
199
69
115
120
68
128
99
127
80
107
136
88
92
69
113
107
112
128
169
78
71
107
113
141
52
74
117
140
110
131
88
80
88
71
76
101
123
126
121
80
72
107
95
111
175
110
119
104
95
117
131
131
175
101
82
87
121
76
93
78
154
112
117
69
110
54
94
101
118
104
127
150
117
96
157
128
87
131
134
92
154
165
113
101
112
113
137
80
66
162
148
80
94
144
133
82
106
151
80
91
69
89
163
99
87
121
80
54
136
134
112
69
104
104
104
175
112
143
151
69
66
115
121
78
138
109
80
96
109
82
128
80
197
120
80
100
134
138
121
89
121
120
100
163
107
74
151
67
119
113
82
91
109
120
76
151
117
123
146
87
116
72
103
94
119
94
134
76
87
187
155
127
78
120
93
119
102
99
146
126
117
106
117
155
69
91
56
142
104
99
174
52
80
130
131
87
123
54
88
80
131
99
133
78
54
69
119
119
94
106
110
137
96
119
119
69
154
89
129
78
85
72
137
113
94
107
119
122
80
113
130
89
123
145
110
102
69
96
72
127
69
99
102
87
69
137
71
91
80
72
117
128
110
156
76
93
134
76
80
106
162
112
91
112
128
96
126
99
113
156
112
80
57
130
94
106
69
119
128
147
80
80
87
120
138
87
155
87
126
128
80
119
145
145
104
52
76
99
126
125
85
128
92
127
128
114
80
80
80
110
86
72
141
91
94
156
131
72
129
97
142
175
154
80
163
80
80
72
94
140
102
131
80
88
120
99
43
128
133
125
140
87
87
148
176
91
112
132
54
66
110
69
87
137
118
145
112
119
95
92
102
90
89
78
104
80
71
113
75
109
81
122
78
69
117
129
89
104
85
69
123
102
107
90
140
109
154
69
87
156
76
109
87
175
69
87
154
129
173
89
131
104
154
96
69
113
88
85
88
69
69
52
99
144
130
107
118
96
74
107
95
88
148
96
151
175
141
163
85
175
185
128
96
87
104
88
124
96
78
189
140
142
112
76
52
85
80
88
106
154
145
126
87
111
56
80
107
115
112
102
80
96
67
131
69
156
138
96
143
116
106
155
102
88
99
69
104
88
120
119
146
96
107
136
197
69
98
76
80
87
69
146
69
120
109
127
163
201
120
119
155
86
92
89
99
78
119
69
144
69
117
120
117
121
88
128
87
121
80
102
113
107
104
216
151
109
110
107
69
89
175
144
54
94
88
152
104
88
80
87
115
109
88
104
80
96
129
69
119
66
117
69
132
99
110
113
107
117
85
69
83
85
80
99
102
72
174
87
96
80
144
78
96
102
175
133
80
119
76
99
69
69
123
103
104
197
93
67
131
143
134
121
111
69
132
83
137
99
118
112
52
116
99
119
197
72
80
201
89
119
138
144
151
83
118
88
91
104
106
89
87
88
107
112
122
78
99
96
119
147
108
104
175
154
104
121
90
139
80
99
77
80
69
154
175
94
67
134
80
87
87
101
119
80
87
98
102
93
115
80
119
69
166
74
69
69
134
74
69
119
111
133
120
113
69
128
80
93
72
132
101
52
163
113
174
80
76
121
87
119
134
117
85
69
122
134
87
80
99
69
80
80
67
109
120
134
78
151
93
137
121
116
136
83
89
134
109
80
131
146
96
80
96
114
80
113
80
128
96
94
89
75
95
183
128
80
113
151
119
106
154
80
87
107
69
91
76
100
109
157
174
80
109
148
72
85
100
110
109
74
154
139
89
160
87
110
154
118
107
146
76
60
136
69
52
94
131
88
69
94
120
133
109
138
76
121
109
117
69
175
80
80
113
121
54
156
80
118
106
94
80
119
119
76
175
56
83
175
88
112
119
107
106
87
87
110
94
163
112
81
119
89
104
140
89
128
139
119
175
111
120
113
63
145
129
140
52
102
89
112
109
134
80
107
99
140
74
94
89
78
156
143
80
120
136
80
103
59
117
129
73
137
112
113
69
89
109
163
72
80
99
80
119
127
128
78
69
100
111
74
134
80
119
80
80
69
144
109
138
71
201
156
104
91
87
89
80
78
88
69
80
151
154
139
89
88
52
165
84
131
99
103
69
121
73
132
102
121
69
120
146
93
64
119
177
76
156
120
139
89
112
64
117
96
147
56
112
154
137
113
59
109
80
162
123
127
142
56
101
76
132
121
197
115
131
78
84
103
120
96
148
94
118
85
117
151
147
87
106
104
80
128
127
124
79
145
87
122
150
114
119
76
136
95
54
64
99
78
78
78
175
107
79
161
123
131
78
107
58
72
154
154
101
94
112
119
109
112
109
119
69
87
119
80
87
77
88
92
83
128
96
133
175
93
80
59
102
80
101
93
115
133
80
69
85
112
93
69
147
71
117
76
80
78
140
78
102
87
78
87
122
185
80
99
106
132
133
123
76
120
120
154
69
115
128
79
89
91
80
107
127
69
117
78
120
101
69
119
128
101
140
147
80
109
116
122
80
136
69
123
80
89
118
175
88
87
163
96
108
95
71
109
95
125
143
127
76
128
76
87
80
88
144
111
69
107
171
77
107
83
87
104
84
120
85
119
136
106
76
108
151
89
197
69
104
82
129
138
69
119
89
106
134
156
112
100
80
103
60
80
154
121
140
164
120
87
108
128
99
106
80
69
154
69
96
69
102
119
110
76
120
80
102
148
175
103
69
106
87
107
80
107
74
56
88
80
78
89
52
69
119
112
75
87
175
72
129
140
129
59
96
80
87
80
122
133
156
88
129
74
130
112
78
67
87
141
80
104
54
105
76
120
78
131
87
136
133
122
97
104
163
152
127
117
80
99
81
80
88
113
69
80
80
128
120
80
111
128
88
103
126
79
87
117
132
90
119
128
78
152
104
118
109
80
121
80
57
144
94
83
74
139
119
88
83
104
88
69
80
197
104
99
90
72
87
128
128
118
56
93
117
112
145
104
106
128
90
110
199
85
78
183
101
172
128
80
142
131
175
148
163
80
87
91
113
69
69
104
80
88
87
93
111
119
87
140
121
74
122
145
175
137
163
80
110
118
120
75
89
107
83
127
93
80
89
120
104
128
88
78
154
80
133
119
117
101
96
80
80
109
69
131
107
107
113
120
160
89
94
88
79
99
69
103
96
89
77
90
101
128
101
107
94
106
154
69
138
128
80
89
119
130
95
93
69
128
114
99
129
80
119
109
101
110
113
114
183
94
154
76
128
76
69
109
80
118
115
89
87
87
156
133
175
69
95
120
89
130
108
67
101
87
109
144
174
76
101
136
140
119
78
141
95
60
123
69
112
115
118
112
128
67
89
78
54
96
162
137
117
104
97
153
140
148
183
56
107
114
76
96
137
126
110
89
94
119
114
73
163
69
69
146
115
99
119
74
80
80
88
96
78
69
90
69
119
125
119
99
143
132
145
133
111
99
119
76
148
69
80
92
80
116
69
69
164
103
69
78
112
107
101
87
74
98
76
80
76
111
110
118
111
80
74
120
106
128
87
128
89
75
69
197
89
107
74
136
120
94
85
121
141
104
87
72
105
78
147
112
134
120
73
80
129
69
105
95
119
80
87
175
116
106
117
166
106
101
175
89
112
115
116
136
104
87
69
71
166
112
160
99
147
80
165
80
155
118
89
128
87
109
136
110
107
69
52
117
87
88
96
78
152
87
120
74
121
145
99
120
122
83
118
156
101
114
127
124
123
140
189
94
136
120
120
89
80
118
89
112
145
87
71
87
112
93
111
119
109
125
128
69
103
140
93
119
112
134
109
69
110
87
98
106
80
87
154
131
104
69
80
93
52
69
99
136
88
199
134
80
89
110
72
69
145
124
119
162
140
52
89
99
80
80
128
72
90
80
80
133
197
78
146
52
82
131
127
94
67
166
131
151
120
111
110
175
163
72
121
121
113
71
88
87
91
96
76
78
128
127
134
78
132
142
89
120
80
112
80
169
103
154
109
99
175
137
169
76
107
115
106
87
95
155
76
88
104
99
74
89
110
69
93
82
158
101
125
94
154
79
99
128
69
185
87
156
91
109
109
209
123
87
105
138
80
69
85
156
154
116
119
85
151
76
75
148
197
109
127
69
78
90
80
69
96
69
107
101
101
133
154
120
88
76
72
119
107
94
91
130
106
80
107
90
69
137
120
138
71
128
72
112
128
76
129
88
109
126
80
78
69
80
76
113
110
132
156
113
88
117
154
107
128
76
162
112
154
138
111
119
133
176
95
117
120
128
111
131
175
94
80
118
126
80
118
89
69
129
127
89
99
118
87
84
69
87
74
101
93
154
78
129
134
119
121
106
111
91
164
160
69
75
56
109
87
80
151
80
102
129
76
111
69
80
132
80
175
96
103
115
96
102
99
88
87
87
142
137
74
87
87
134
104
78
131
115
136
76
87
110
120
109
99
69
54
88
76
85
88
124
91
101
119
128
117
94
148
110
106
145
155
112
114
111
136
128
163
152
98
83
58
79
120
83
129
110
139
101
78
175
128
134
89
74
74
88
94
87
69
129
69
119
113
80
127
158
128
131
89
89
99
73
76
100
134
56
140
87
154
156
116
118
71
69
151
75
76
114
101
117
85
80
80
69
96
140
87
100
181
69
73
76
89
197
109
91
88
89
199
87
88
132
69
120
134
112
155
76
88
155
94
99
80
110
145
175
80
76
69
87
118
120
69
78
86
134
138
91
113
78
151
131
80
69
67
101
113
111
126
85
101
87
109
97
112
120
156
151
80
154
69
114
115
134
134
123
110
80
90
119
117
109
136
56
79
112
107
97
156
98
110
126
156
109
131
126
100
145
143
105
58
128
112
175
155
95
104
87
119
126
80
156
83
69
120
80
94
69
76
110
69
112
69
109
80
106
117
122
175
95
119
132
56
80
87
87
87
113
110
147
69
127
99
88
108
102
101
91
120
80
154
121
136
146
151
89
106
109
127
89
88
119
197
79
56
109
93
136
115
99
67
138
120
52
80
128
71
78
128
146
137
175
80
104
119
69
114
80
100
117
102
109
104
83
78
80
143
78
112
54
85
102
87
80
87
76
155
119
119
113
104
76
78
119
80
80
80
143
94
193
120
122
78
103
101
88
100
87
128
139
130
129
124
147
80
107
115
69
140
110
119
54
105
175
120
67
128
69
101
141
89
125
94
197
89
116
175
127
156
149
91
158
74
88
95
103
69
120
69
119
69
109
107
80
93
99
80
110
96
163
112
95
80
129
99
72
99
92
128
107
147
120
146
85
111
128
111
80
78
106
103
87
98
100
175
122
80
109
78
154
109
76
110
90
127
160
129
87
95
78
151
112
96
69
80
145
119
78
124
52
183
88
98
155
151
91
113
120
107
107
141
122
80
154
92
123
162
123
99
126
104
128
134
97
69
52
140
118
97
107
97
129
85
96
130
134
69
69
103
69
72
113
117
122
128
128
154
100
146
109
134
132
133
112
101
145
131
119
83
118
99
122
107
108
91
96
69
118
87
85
122
89
114
69
80
157
121
113
99
99
80
119
58
109
155
100
110
89
93
115
78
87
91
106
87
120
78
116
80
90
83
119
107
107
80
156
69
109
80
110
134
137
134
160
81
111
94
121
74
85
112
155
109
114
87
74
124
63
119
99
140
78
145
96
76
175
163
120
69
80
131
162
92
99
110
122
87
88
131
76
113
110
138
85
197
88
127
201
157
121
112
94
72
78
140
126
87
134
134
80
134
87
109
125
94
80
96
96
136
89
88
127
88
115
99
124
76
175
78
59
52
87
94
69
117
78
132
101
197
76
164
121
129
69
87
107
90
78
89
183
91
127
155
94
87
131
108
93
117
87
131
80
127
145
146
80
131
99
99
156
107
85
78
104
116
128
120
69
110
74
76
101
92
120
136
113
109
120
147
87
115
103
76
152
151
103
94
145
112
66
80
110
159
101
80
56
131
110
120
129
69
96
80
87
80
148
134
154
138
155
143
93
119
76
90
154
121
104
128
78
112
69
130
121
142
154
128
109
76
87
132
130
80
113
78
93
112
81
90
163
119
154
119
112
78
143
106
110
93
112
89
128
159
74
126
116
82
103
69
175
87
113
110
69
117
80
112
129
175
76
76
69
111
107
163
104
119
175
104
183
112
99
69
88
120
128
103
68
54
115
80
96
81
102
94
197
57
106
69
128
114
120
89
136
99
107
80
89
162
100
149
94
94
127
76
111
80
181
91
69
144
80
120
155
109
72
96
151
106
89
76
154
133
69
88
109
94
87
69
131
80
94
119
107
128
90
74
87
107
145
98
119
134
131
69
107
69
80
110
80
134
100
164
119
72
136
144
80
89
120
110
89
76
109
156
71
155
104
87
148
121
103
80
131
69
54
106
110
94
120
87
143
113
80
183
155
104
57
76
87
138
101
69
122
146
101
103
99
80
129
83
91
123
110
155
72
80
120
133
117
94
109
107
89
134
80
113
89
154
69
131
89
80
91
104
113
137
163
78
134
160
80
69
80
109
131
137
109
78
136
112
78
135
109
119
79
109
94
80
127
103
64
95
54
110
80
145
122
69
128
79
156
93
87
148
87
87
78
104
107
69
138
79
56
102
163
129
94
109
80
78
144
81
119
101
109
126
110
87
86
135
117
78
131
110
93
174
134
127
137
87
128
76
104
127
132
80
136
134
99
99
78
133
128
80
91
112
88
80
78
69
128
89
120
69
151
122
120
113
143
101
197
197
74
88
94
132
118
113
164
93
128
151
129
145
80
130
54
93
126
78
130
164
197
76
80
146
101
110
78
72
128
127
149
134
103
97
136
143
99
118
152
137
106
130
134
80
80
88
78
87
109
119
85
110
56
94
152
102
130
93
104
69
113
80
136
102
73
119
120
140
80
113
177
164
89
72
96
72
156
146
80
78
69
124
109
122
80
119
69
87
140
119
101
76
99
69
143
105
96
85
90
186
87
87
104
69
107
130
89
124
104
89
109
118
69
69
91
111
128
114
69
127
56
121
80
122
128
133
144
114
120
109
151
125
66
164
132
143
72
89
135
132
76
118
80
122
175
164
54
130
107
109
164
110
120
87
120
99
80
145
80
127
80
140
136
79
115
87
88
69
73
143
88
104
136
93
80
119
80
94
82
128
119
145
87
128
69
124
119
106
136
132
72
89
143
76
101
142
147
98
72
78
80
105
128
140
113
156
143
80
129
133
174
80
126
91
155
76
141
69
109
154
80
99
80
163
101
78
117
76
59
78
80
136
80
122
115
104
139
54
113
89
76
80
121
120
129
96
89
78
164
154
145
106
126
149
101
66
109
80
80
110
115
121
131
145
107
118
140
109
124
107
139
146
88
174
43
120
80
87
118
154
104
128
140
104
152
94
93
154
123
76
80
99
116
152
149
145
78
107
144
113
93
112
89
156
87
52
131
145
166
74
80
123
143
154
155
107
114
88
87
119
136
76
136
85
90
158
66
88
87
109
76
112
110
80
80
87
74
82
80
87
113
69
112
89
82
127
109
102
80
80
175
154
134
80
117
107
98
155
119
78
92
52
71
118
101
94
137
140
124
94
156
128
94
104
117
115
120
113
144
103
113
119
69
121
88
83
69
99
88
80
154
76
72
87
136
113
80
128
76
119
85
69
185
114
96
76
87
109
139
91
175
156
89
133
88
117
156
80
94
87
104
110
165
119
128
123
144
94
74
128
101
78
111
148
111
153
92
87
137
87
69
171
107
131
80
115
80
78
121
80
80
175
122
76
132
75
136
123
130
109
107
89
78
88
75
119
75
93
125
69
69
83
109
104
145
148
115
120
89
72
83
88
72
128
99
156
197
99
115
69
119
136
153
98
72
99
114
107
100
197
131
156
85
89
76
66
80
69
160
69
80
80
115
100
107
72
80
89
119
120
69
64
66
121
106
101
94
104
87
69
94
112
106
92
110
110
88
166
80
76
72
80
174
144
76
107
69
87
111
109
117
69
126
80
80
144
78
141
138
88
100
174
103
132
80
56
131
117
78
76
187
94
91
118
76
69
117
125
78
80
128
120
131
117
98
137
126
107
114
141
120
88
88
117
102
162
106
93
94
99
85
133
103
87
75
129
117
88
105
136
87
81
74
110
139
112
110
156
72
138
76
130
91
107
124
113
122
100
69
95
120
119
99
122
125
87
118
80
80
99
69
106
117
88
130
94
99
197
113
119
96
95
100
134
120
85
105
80
106
107
120
72
144
80
80
76
76
120
136
76
80
83
120
99
112
156
80
80
106
113
117
122
69
128
120
107
113
114
113
90
69
106
92
153
106
99
90
93
80
88
69
80
107
67
127
94
89
91
128
154
117
89
90
80
80
128
120
89
160
80
82
107
103
154
123
175
69
94
104
120
183
154
78
75
78
127
143
131
80
117
107
93
106
88
174
69
104
114
94
87
84
148
80
143
90
151
72
69
94
80
102
80
80
149
124
112
76
119
155
123
89
120
134
136
111
57
146
80
80
169
87
127
87
127
67
197
145
154
116
106
69
137
123
89
93
151
104
80
134
56
113
80
76
140
110
89
88
155
114
151
175
109
101
80
102
112
109
160
144
155
118
109
69
101
80
80
201
69
109
73
109
90
103
146
110
163
154
89
148
154
115
99
78
91
175
111
103
148
80
69
143
104
69
134
93
127
87
76
113
89
120
124
78
132
129
52
120
87
69
80
74
78
112
108
78
134
89
87
119
124
106
88
87
91
143
78
106
131
116
89
115
128
134
155
128
80
88
116
101
93
118
111
113
128
101
148
144
130
91
101
119
88
146
78
72
80
93
72
93
78
99
128
78
99
70
80
85
148
69
87
101
110
80
91
78
96
107
142
130
118
128
128
73
87
74
88
140
99
80
154
112
76
127
92
100
175
99
107
96
156
110
96
125
143
109
76
201
93
72
91
114
94
54
121
183
102
88
99
109
80
91
153
85
100
142
76
94
156
117
127
89
145
156
120
136
101
107
74
69
76
137
60
160
110
117
144
72
76
69
89
92
95
74
120
110
99
76
58
197
89
99
116
137
151
134
106
83
145
127
107
117
69
175
99
87
93
88
86
111
136
119
80
138
76
127
149
133
120
80
80
183
155
87
94
136
104
97
80
69
181
140
94
87
113
107
134
115
69
76
110
134
96
108
131
131
112
197
76
131
88
201
78
120
56
104
136
120
107
106
131
109
119
113
76
80
141
78
106
119
113
101
136
146
82
145
104
101
124
128
151
112
57
87
128
69
123
119
78
80
78
112
156
101
87
124
90
103
175
72
99
100
90
175
86
80
80
76
151
137
99
162
80
121
88
54
101
138
80
131
132
96
76
80
80
91
108
108
59
131
87
69
112
80
76
128
85
131
127
119
100
133
136
78
155
128
94
100
110
130
106
99
154
150
101
89
69
80
78
118
121
88
100
119
74
144
111
117
131
140
80
137
99
78
165
118
74
78
76
120
79
121
99
69
99
93
78
113
128
97
69
83
87
136
91
93
111
131
119
140
87
175
87
104
69
133
104
80
136
104
85
154
113
142
87
80
88
87
112
80
175
83
118
75
92
138
89
102
132
117
107
80
119
110
109
131
136
69
106
95
78
118
101
76
117
109
134
87
109
82
107
153
143
74
85
95
80
103
93
117
138
72
78
89
137
145
99
69
102
197
133
87
175
69
127
69
135
88
122
101
88
160
119
136
68
69
138
84
69
154
54
120
160
119
80
93
148
78
80
147
128
117
118
175
95
78
87
117
90
123
134
155
119
154
101
100
72
134
106
114
87
80
120
125
116
155
96
72
109
123
175
96
78
127
80
93
69
87
121
94
123
87
101
69
134
151
123
69
69
139
119
85
154
88
106
72
107
88
101
100
136
115
144
126
111
80
56
134
170
87
56
88
99
115
165
150
154
79
136
80
76
80
95
76
154
124
72
96
175
125
98
134
175
106
89
129
113
76
154
106
119
54
138
92
120
144
153
115
69
64
113
155
79
94
128
43
128
128
156
130
112
69
148
80
117
80
113
69
87
69
76
119
120
104
103
107
76
107
121
101
69
121
80
79
151
139
69
120
120
94
87
69
128
78
111
151
99
120
138
76
80
99
87
128
134
69
85
119
151
147
109
83
113
72
80
165
106
72
115
92
69
142
156
117
155
80
156
94
54
121
100
103
113
107
88
88
80
69
107
130
132
151
117
82
134
129
152
128
111
102
163
109
140
66
155
69
54
145
127
94
129
119
197
101
89
124
83
54
141
91
136
113
142
117
185
104
107
69
136
99
107
112
110
102
126
128
88
134
127
119
80
85
111
80
119
145
155
116
87
114
52
69
110
110
175
117
138
71
94
119
68
110
112
80
87
69
80
106
175
120
89
110
119
140
76
72
84
135
69
201
107
80
72
76
164
101
80
93
133
79
85
116
118
60
128
132
111
156
101
119
109
107
105
185
115
87
69
93
164
80
93
119
87
103
98
119
82
120
91
101
130
87
106
120
112
83
70
87
69
87
115
98
69
80
118
97
104
106
76
104
107
69
119
120
107
106
97
80
112
105
90
87
71
132
148
80
120
120
134
118
128
144
106
201
108
155
94
110
80
89
157
115
122
120
140
106
94
175
80
88
69
134
119
154
139
154
94
99
100
114
151
130
120
130
175
136
106
87
76
99
76
175
154
140
54
85
106
69
87
56
197
87
120
90
101
56
107
155
99
69
80
94
99
99
76
99
69
100
69
154
128
109
128
80
69
101
121
93
154
87
163
110
76
119
104
121
107
101
151
134
155
164
85
96
145
90
104
69
63
120
108
121
136
131
117
175
78
115
171
54
89
144
99
69
122
95
78
96
172
92
124
98
106
69
52
117
88
131
104
111
165
87
195
154
119
72
119
175
119
80
80
107
94
99
95
80
111
72
73
106
75
87
133
69
96
154
151
78
128
110
80
112
106
143
137
119
101
107
78
115
96
94
80
110
79
80
104
99
91
79
92
110
120
154
104
94
122
101
108
80
104
80
121
80
100
133
175
78
123
164
104
147
90
74
87
66
101
88
89
69
94
80
106
134
78
106
74
127
91
126
128
80
78
89
80
118
88
94
166
78
166
164
69
100
91
113
122
136
78
107
143
74
79
80
93
99
88
99
96
99
74
83
137
163
52
119
80
136
136
155
87
67
175
120
145
85
69
76
91
89
87
129
151
107
117
112
151
144
89
78
74
91
74
119
54
136
160
69
69
154
74
99
86
83
134
119
120
71
104
78
79
119
107
156
134
80
119
128
144
74
88
69
76
99
143
69
109
78
94
109
106
80
97
94
107
123
80
133
93
109
80
80
103
88
72
76
80
151
79
80
175
117
94
93
80
80
96
87
109
136
120
78
163
113
113
120
136
88
80
119
99
69
145
98
128
128
59
102
199
94
95
69
128
69
175
137
99
102
122
89
78
80
99
119
86
112
90
134
118
96
116
156
98
96
115
131
87
87
151
76
119
69
100
148
99
109
104
144
72
103
134
164
69
127
72
136
144
119
99
126
101
136
94
69
127
87
137
103
138
136
119
109
110
110
119
80
80
52
118
87
80
117
78
106
94
69
95
94
69
145
175
197
120
106
89
102
80
105
88
121
144
132
118
88
136
175
128
118
76
80
109
128
69
140
110
89
72
69
118
109
87
72
89
88
98
120
131
107
107
80
56
67
100
87
109
142
113
106
153
197
131
157
149
80
117
106
74
101
72
137
120
126
90
88
80
136
88
69
112
95
87
91
119
145
115
66
117
109
125
164
115
106
80
80
88
87
107
69
118
138
118
108
129
96
57
97
108
113
88
112
116
80
127
87
107
145
175
126
104
120
110
52
183
117
69
100
69
100
89
131
108
151
78
52
74
136
127
80
69
134
87
99
128
154
155
183
94
175
118
89
88
112
110
195
119
76
96
120
115
106
80
80
131
175
136
81
97
154
175
164
94
80
80
54
80
80
88
145
52
110
87
112
113
109
151
69
106
94
87
84
69
89
107
109
123
69
80
92
87
116
63
89
102
91
134
121
69
85
80
106
56
120
119
78
122
155
89
147
107
128
80
109
85
120
72
94
43
128
69
119
78
76
80
72
93
143
113
113
132
82
72
84
142
110
197
107
83
122
120
96
119
120
80
126
115
111
80
80
127
76
197
56
80
85
134
69
98
156
119
121
80
82
151
69
128
151
69
99
76
107
101
139
107
91
110
110
121
69
134
122
154
75
101
134
118
146
127
88
120
165
88
80
125
120
133
119
169
111
58
80
120
129
100
109
121
117
156
142
133
69
99
80
154
129
76
134
78
78
120
76
145
142
99
76
87
69
80
89
96
80
80
144
110
113
94
87
109
128
197
111
73
119
107
131
72
109
118
119
101
87
120
82
163
74
112
69
80
117
119
69
59
96
128
108
128
131
93
89
101
94
87
76
87
128
101
122
109
163
76
109
136
54
80
80
85
80
95
205
79
91
113
76
154
94
119
120
78
100
69
154
119
99
131
137
131
89
80
109
78
106
56
156
121
87
153
69
118
52
154
109
78
100
94
155
110
163
145
78
117
107
87
78
96
119
87
131
134
175
163
120
85
87
152
69
102
88
128
80
78
109
76
131
89
104
88
80
103
88
154
87
150
154
112
112
52
76
93
69
99
127
78
119
75
76
121
80
82
82
124
95
100
136
121
100
111
114
186
94
154
80
79
119
106
104
124
74
120
83
72
109
126
122
125
80
69
134
119
152
76
104
87
78
149
147
90
94
107
128
97
110
87
88
107
111
99
183
94
87
80
88
89
69
69
96
98
100
110
120
110
134
132
128
91
175
127
90
106
113
128
120
110
60
117
80
87
112
87
110
96
80
110
76
175
127
101
87
140
110
90
80
83
78
151
56
72
99
80
58
78
121
155
110
117
72
69
69
76
115
101
85
165
131
152
76
88
76
113
80
87
69
80
111
90
78
112
118
78
148
73
88
88
104
67
90
153
72
132
98
93
152
120
140
89
140
106
80
76
78
201
102
146
96
64
175
69
69
128
80
80
94
136
80
76
175
87
103
99
122
121
89
140
110
112
131
102
91
78
43
119
95
197
112
112
133
106
129
60
87
107
72
120
86
118
104
128
76
164
87
134
120
76
94
87
57
126
121
119
78
104
69
155
76
100
107
54
130
97
88
109
88
124
112
120
83
136
143
138
104
104
110
69
90
155
106
131
104
120
80
99
87
120
69
148
87
106
117
92
107
94
80
143
126
101
127
132
140
119
156
87
87
146
117
106
102
59
115
185
90
78
52
83
69
101
88
69
117
104
175
69
69
112
119
109
109
118
109
76
144
96
88
154
128
93
132
93
110
116
105
87
80
112
102
122
143
80
148
175
118
114
69
152
175
78
110
134
124
115
109
117
169
146
125
72
104
52
69
102
85
69
134
185
162
110
133
113
113
154
87
88
87
56
80
69
124
112
91
157
138
139
93
96
78
102
106
145
79
78
91
72
128
98
96
131
142
128
175
89
120
119
107
80
74
126
73
80
87
102
54
123
80
140
111
76
72
125
109
114
120
156
80
90
99
80
109
163
137
151
60
99
143
128
107
113
133
117
80
122
80
134
80
100
88
69
100
116
88
132
120
80
127
99
52
154
128
87
76
93
175
80
127
146
88
148
101
80
96
175
78
123
69
118
80
127
154
175
109
82
112
175
103
76
87
145
110
134
52
69
100
121
93
158
88
84
80
80
67
112
144
117
117
146
80
80
87
92
110
88
155
106
71
109
107
78
146
122
91
148
99
145
102
131
109
83
68
74
154
104
71
146
54
119
69
66
112
162
69
90
88
78
113
107
111
83
80
121
80
80
113
154
136
120
128
76
80
163
78
90
119
115
145
69
121
110
103
106
78
115
87
69
111
112
69
197
113
69
79
103
130
80
78
114
112
80
183
76
69
89
87
94
199
120
52
104
111
115
109
127
56
69
113
109
117
109
100
125
119
89
116
134
76
69
100
52
119
155
146
175
89
97
136
78
156
140
137
78
114
94
100
146
154
98
112
54
183
69
101
134
118
87
105
136
143
116
102
129
120
94
156
156
107
175
144
83
120
79
88
151
88
76
101
89
89
79
80
69
138
151
155
99
151
108
107
175
101
96
134
106
175
163
106
114
156
112
106
159
117
131
120
131
97
110
52
185
112
76
80
78
90
120
138
69
80
80
163
136
110
106
96
80
114
154
107
80
140
99
80
108
52
128
72
80
120
78
122
89
78
69
63
114
88
109
152
76
127
75
113
133
120
69
111
66
107
132
155
71
88
91
121
107
78
106
118
169
90
155
99
117
59
98
109
80
80
80
107
96
87
159
89
87
185
69
124
118
101
87
119
143
69
122
121
127
114
69
102
80
78
130
146
103
90
107
96
143
89
102
117
132
69
99
114
153
120
110
134
145
69
94
120
80
107
103
197
106
120
97
94
83
156
129
103
118
90
106
95
94
110
82
197
96
76
120
136
80
113
75
87
80
80
88
119
120
156
69
148
109
130
128
94
80
111
111
122
109
129
106
140
109
80
127
174
104
140
119
131
79
128
110
132
154
87
93
109
110
164
99
109
197
107
106
113
96
99
69
113
116
87
110
101
72
122
78
129
72
69
175
79
98
154
110
78
104
101
102
106
112
119
88
54
89
87
92
130
80
128
113
99
87
149
89
146
87
69
122
143
113
109
128
123
172
76
100
95
99
94
151
175
101
133
80
153
99
108
78
89
107
89
106
107
69
126
91
137
127
76
102
78
113
99
118
106
176
80
154
69
124
80
128
121
72
99
120
131
107
110
96
80
108
152
128
114
69
80
74
77
131
89
125
136
87
89
96
115
117
136
92
112
58
132
102
89
136
111
101
118
89
117
81
80
107
140
80
132
118
134
108
154
63
79
91
87
136
137
127
134
80
78
67
100
98
157
140
147
72
69
88
175
138
99
175
104
80
111
106
135
127
93
145
92
107
78
69
106
154
76
56
120
111
80
87
99
151
69
99
120
115
75
110
75
120
52
78
93
120
131
78
56
94
109
101
123
72
136
79
54
80
69
108
154
125
110
63
126
146
104
52
76
80
99
154
134
154
78
89
76
147
99
94
135
175
99
89
104
142
80
76
78
122
121
80
84
76
102
104
87
76
99
120
80
74
129
56
113
96
154
155
136
119
78
110
127
96
118
52
54
109
78
96
147
145
119
128
78
60
98
94
75
87
76
71
120
121
132
107
187
111
164
76
73
183
107
80
116
117
139
134
104
94
112
69
142
128
133
131
109
94
69
151
114
197
87
151
98
43
99
94
83
80
89
120
107
112
140
93
109
100
91
104
128
89
119
95
96
88
113
78
119
72
100
80
93
89
122
78
133
87
76
85
72
81
88
89
118
121
117
169
132
117
87
156
89
80
127
99
119
78
181
104
76
145
80
121
175
109
69
116
117
140
117
140
101
69
118
109
113
78
127
134
127
90
107
91
106
126
78
175
142
76
156
134
79
110
88
115
106
164
80
101
54
107
163
154
117
128
69
151
132
69
88
69
79
155
54
147
102
113
69
132
54
56
119
140
156
74
69
69
89
113
74
163
126
148
74
145
88
120
76
91
109
123
90
107
136
89
69
110
69
121
110
96
131
110
98
80
96
115
110
93
80
115
78
78
76
81
133
69
163
112
89
175
87
172
90
152
99
119
128
119
106
118
80
88
131
89
96
72
58
80
89
92
119
181
88
139
175
79
107
80
72
127
154
69
52
102
77
120
103
76
100
78
104
87
122
131
128
156
87
115
89
121
175
99
175
110
72
143
117
144
80
96
131
112
101
90
136
119
80
88
172
96
111
87
74
145
80
175
94
136
175
69
69
90
120
148
92
78
86
146
75
100
128
151
107
127
114
126
87
99
76
74
136
121
127
109
117
94
175
134
115
160
102
75
119
128
107
99
119
80
119
80
104
109
99
117
137
89
80
76
94
113
133
126
139
54
150
96
93
106
73
114
109
161
121
89
80
80
175
141
131
110
119
94
130
134
80
64
80
107
78
72
74
69
142
197
140
66
128
94
78
87
133
128
130
69
75
88
119
156
96
99
80
94
100
74
118
119
112
76
74
91
76
112
72
76
137
91
119
119
69
172
87
91
120
88
148
126
122
97
197
109
72
129
135
119
76
131
69
131
175
140
113
93
78
78
76
72
118
163
144
80
119
110
117
76
110
91
127
80
111
175
106
112
80
124
119
92
137
80
104
132
74
107
81
72
105
119
119
131
133
109
175
104
80
101
103
101
87
114
120
128
88
134
126
112
76
104
119
76
104
155
80
156
128
87
154
102
143
165
126
183
99
143
80
119
155
119
102
112
103
140
131
119
80
113
80
117
88
85
131
78
107
94
152
74
154
136
119
110
69
118
117
80
96
119
155
78
148
54
106
69
145
128
94
106
98
104
80
107
89
127
148
121
185
148
121
80
134
136
102
96
120
69
76
87
130
145
112
88
103
112
123
99
87
155
69
95
74
122
155
76
139
80
117
114
98
88
151
122
80
154
69
119
91
69
151
107
83
109
66
117
156
113
172
141
123
121
87
107
134
109
132
133
146
108
137
106
80
102
78
80
119
129
106
119
99
126
95
76
56
130
119
110
118
143
131
90
69
101
88
80
88
119
102
69
80
89
154
112
89
74
141
148
87
87
69
110
56
91
87
103
110
99
99
94
107
99
80
132
147
84
64
76
140
136
79
80
136
119
121
121
88
87
80
120
115
87
93
140
155
115
128
113
80
89
134
107
103
72
164
156
128
69
80
109
134
131
134
100
127
107
78
109
80
75
69
134
80
151
83
88
85
107
97
80
126
101
115
72
99
120
131
118
175
88
96
128
100
76
151
113
118
54
80
90
52
85
87
89
119
160
100
141
122
69
112
197
138
107
94
57
69
87
110
52
101
127
119
80
133
87
87
78
114
79
145
92
80
131
80
80
69
106
119
84
120
154
146
109
76
109
140
80
128
100
134
69
138
80
94
156
69
99
140
153
100
103
80
73
152
109
146
170
80
122
76
76
80
127
175
84
134
127
78
93
94
138
69
175
76
78
88
91
127
109
118
115
87
76
90
125
79
99
80
88
69
150
93
69
112
69
131
128
120
87
80
64
133
133
80
117
110
153
117
69
66
95
137
123
89
87
128
78
122
80
109
197
98
175
119
69
103
69
87
69
90
127
96
120
164
96
80
76
76
117
107
69
119
119
111
80
96
148
104
120
78
121
89
106
122
121
87
69
123
96
164
78
69
128
96
119
92
69
96
118
76
93
97
96
69
201
78
135
160
163
72
120
69
127
152
83
117
93
124
69
102
151
78
109
76
99
69
144
72
102
148
80
76
84
76
110
69
110
87
119
75
119
111
107
134
128
128
78
80
130
54
69
120
85
67
134
175
81
69
138
102
100
80
153
101
80
136
78
56
104
106
72
126
72
174
87
80
133
124
75
128
107
113
156
80
66
112
110
80
69
140
140
99
144
151
80
124
72
69
175
56
119
114
69
126
88
87
80
57
109
128
112
175
89
87
115
78
120
122
78
94
78
83
87
104
64
69
80
126
133
96
80
91
76
80
94
104
120
102
120
74
109
109
117
130
76
117
83
118
128
80
131
102
80
76
87
118
80
122
138
110
87
117
118
115
126
110
78
89
69
153
85
88
175
123
87
123
175
117
121
109
136
152
104
80
112
133
78
89
136
69
138
113
155
69
137
78
163
120
99
108
102
102
109
175
122
177
69
115
111
118
58
119
120
88
94
88
163
133
87
87
124
87
106
119
135
128
87
102
115
80
142
99
181
129
156
91
106
89
72
80
111
93
132
95
78
107
118
103
88
69
133
175
145
114
76
87
129
155
96
137
69
131
78
78
119
136
91
132
108
72
72
120
183
114
131
143
69
89
97
118
80
88
156
69
107
87
137
119
175
128
69
93
121
118
69
76
69
175
72
69
92
136
120
110
87
107
74
80
107
166
87
104
69
78
89
87
69
95
123
139
117
101
99
144
145
69
116
154
117
134
74
128
117
98
131
80
148
80
69
87
80
115
85
112
102
163
109
109
117
92
128
87
71
136
143
101
80
88
112
107
119
69
69
122
119
110
104
138
117
107
132
175
163
136
75
107
80
89
80
187
69
140
185
185
164
101
74
98
119
69
80
147
120
69
93
76
87
140
128
111
69
80
87
199
88
71
133
69
69
145
99
104
106
94
80
120
80
89
76
99
110
112
91
64
74
136
111
175
69
131
156
154
82
141
83
120
75
88
78
128
69
140
78
103
154
78
121
87
107
127
91
69
128
104
104
102
94
107
96
119
101
138
80
109
128
126
107
87
83
76
66
115
69
80
127
80
128
100
145
150
112
140
106
126
58
144
87
67
92
99
71
109
87
89
109
69
80
72
88
88
93
115
96
127
102
82
136
93
140
87
69
72
101
94
80
120
83
120
143
120
99
121
133
71
134
133
69
80
110
80
94
96
120
94
117
76
88
113
82
76
154
94
143
80
69
80
96
131
69
79
112
84
88
78
144
87
80
56
120
133
128
121
121
96
131
123
107
155
125
87
101
80
69
69
154
76
99
99
109
120
80
121
117
182
112
124
121
127
96
94
155
121
93
147
78
104
119
80
147
77
111
104
114
145
163
120
120
69
54
89
88
131
113
156
156
69
109
91
111
134
156
159
110
129
80
103
80
113
87
120
113
110
59
160
133
99
148
110
69
136
124
110
83
142
123
117
90
93
89
134
85
129
119
80
67
80
78
99
76
91
141
123
117
119
119
106
127
136
106
131
115
87
98
108
78
80
98
91
80
69
78
80
120
114
100
80
69
78
76
151
146
137
109
89
78
109
113
78
96
101
122
118
69
87
124
88
80
79
67
80
127
89
149
162
69
122
101
106
100
91
56
107
110
127
80
117
116
94
93
156
117
184
89
163
108
69
108
151
88
147
106
87
134
134
94
151
102
102
78
112
107
80
104
99
156
91
107
113
101
90
89
69
128
175
121
128
151
87
106
146
69
80
78
52
76
151
134
120
78
94
119
89
99
119
116
52
112
127
147
87
90
92
183
69
187
127
140
102
110
127
136
130
146
87
127
87
154
95
93
94
121
112
102
80
107
87
105
114
120
130
69
128
94
120
121
128
127
80
69
69
132
107
89
121
91
72
72
76
124
94
85
88
142
154
102
78
99
138
78
101
127
73
106
102
155
110
102
87
80
80
100
76
93
140
154
99
104
120
154
64
109
93
132
120
66
112
80
120
175
175
94
98
104
137
128
107
96
98
109
83
121
80
112
93
134
152
89
163
95
80
94
66
107
106
94
144
80
117
119
67
80
88
99
87
152
107
103
52
89
72
98
80
129
113
80
76
104
116
74
112
134
124
115
120
75
67
68
101
128
94
80
131
104
96
66
110
69
110
93
176
80
144
94
101
131
80
128
110
137
78
80
107
123
80
69
72
119
120
197
119
118
54
90
82
115
88
87
184
131
85
156
155
162
69
129
106
102
132
131
80
80
136
83
83
154
91
67
155
96
88
96
124
80
155
69
85
149
78
104
159
115
109
106
131
134
121
185
107
87
88
107
78
129
78
110
87
151
115
78
93
89
95
78
117
72
99
69
102
126
57
112
96
128
69
104
87
78
156
80
83
99
113
87
69
96
136
156
80
106
76
80
106
110
69
121
80
127
88
80
69
88
120
80
112
90
80
76
87
80
43
57
102
66
76
93
78
94
96
107
87
136
104
69
134
117
121
174
88
80
102
67
121
80
109
95
80
115
98
146
115
148
103
89
80
154
69
80
72
131
171
87
115
94
139
89
93
80
133
110
80
90
163
81
89
83
94
69
56
78
143
124
103
119
43
140
109
52
157
110
69
130
94
107
120
104
115
75
124
100
107
88
110
154
112
91
88
174
76
116
89
98
106
78
166
52
121
69
69
156
105
93
89
52
136
87
69
95
80
69
99
72
97
88
88
156
106
80
141
155
91
123
87
120
59
132
76
76
98
103
99
154
124
120
107
94
119
80
112
80
80
78
111
115
109
94
121
121
133
69
79
89
96
160
87
69
130
119
175
69
119
175
80
78
151
109
89
80
104
66
87
104
66
80
96
123
169
100
136
110
119
109
117
76
78
89
114
119
101
143
89
80
123
72
94
80
134
88
115
96
87
115
156
101
163
76
136
120
134
156
115
80
76
101
93
80
122
69
107
104
56
107
104
115
87
106
140
91
89
78
125
99
107
69
69
109
94
81
126
117
104
94
76
80
131
117
80
197
110
148
95
101
91
80
80
109
175
87
88
136
94
89
87
159
80
94
183
59
54
146
72
88
103
80
89
74
129
119
132
88
80
120
175
112
134
175
80
109
102
101
131
99
156
109
166
130
87
146
87
119
91
128
85
74
69
152
96
123
88
93
86
89
99
87
80
93
119
89
115
80
80
106
104
87
174
80
76
117
94
121
88
142
88
87
66
131
118
140
113
136
151
109
133
128
122
183
114
92
162
112
120
187
54
131
93
88
128
89
52
125
96
100
121
128
163
112
99
99
78
87
101
103
110
107
136
127
69
119
110
110
124
63
113
155
138
119
106
93
69
120
101
83
100
141
114
110
120
87
74
98
113
140
119
112
104
151
80
80
166
151
112
69
131
110
175
102
120
133
107
111
76
118
119
93
78
131
119
129
52
107
175
76
102
80
78
82
87
94
99
72
111
131
94
109
80
78
134
76
137
127
140
119
112
156
132
121
106
88
87
69
122
72
85
56
118
82
120
98
93
72
90
80
99
148
139
107
69
130
87
117
156
76
78
114
87
171
100
80
69
98
95
117
54
118
154
112
145
131
107
164
102
72
78
87
87
87
146
140
87
80
99
102
143
120
97
87
134
76
102
76
163
163
74
131
110
113
80
120
109
139
87
136
80
106
131
63
106
109
103
127
86
109
156
76
80
107
74
121
69
103
94
80
99
78
145
169
80
152
80
97
117
121
91
87
89
93
175
143
72
113
94
76
132
112
72
78
107
96
78
76
119
140
109
85
154
112
109
146
128
160
90
56
136
87
140
90
127
145
152
95
117
69
120
106
76
87
136
114
154
128
175
103
88
119
151
80
151
125
151
107
106
72
113
99
131
100
80
83
128
54
140
69
111
123
69
155
54
69
113
52
69
80
128
163
127
85
96
80
102
146
117
107
112
76
78
54
69
175
80
52
81
104
140
105
118
154
91
93
119
109
69
78
90
156
163
56
69
138
129
94
89
121
130
148
175
144
121
127
119
139
155
76
119
193
87
121
72
97
117
134
175
120
87
108
80
69
119
80
69
83
117
69
78
69
143
130
150
104
97
102
54
110
72
98
134
87
54
91
87
109
148
107
109
80
43
54
103
143
110
154
69
69
80
121
140
76
109
109
80
83
74
85
117
174
142
98
92
106
146
99
80
114
154
146
76
78
109
78
103
99
133
99
111
89
88
95
87
123
87
128
54
88
109
72
80
74
56
125
136
142
69
123
59
78
78
99
80
80
148
100
69
78
69
160
116
80
107
134
69
72
122
101
162
80
69
69
69
95
87
136
113
149
80
64
117
117
155
138
93
128
85
67
175
128
137
119
80
163
88
56
123
69
95
118
78
106
132
102
120
126
101
63
80
80
104
75
87
69
92
136
143
80
118
131
103
85
112
75
85
69
142
146
163
139
117
146
63
113
99
94
107
147
134
80
162
89
91
99
128
136
110
69
122
80
69
106
115
69
120
80
88
131
80
131
87
94
137
54
122
111
58
78
143
126
106
107
147
102
143
144
127
160
69
106
117
131
76
130
123
80
89
94
89
69
132
154
150
88
128
134
134
115
101
115
88
131
154
133
115
124
99
89
69
54
107
146
175
136
69
134
72
112
112
128
119
80
133
175
93
52
69
110
110
121
119
110
66
69
80
165
72
98
80
107
80
134
80
175
156
106
96
72
87
140
111
78
121
80
75
107
147
80
76
106
115
87
80
92
140
69
110
101
112
80
104
172
120
89
145
119
80
110
87
110
95
88
175
69
103
107
133
132
123
80
56
87
122
146
88
126
125
148
81
140
146
78
96
80
67
136
110
102
113
88
121
93
56
103
137
119
99
84
87
78
175
197
118
106
85
129
99
56
76
140
113
129
78
125
109
119
85
105
99
78
141
69
201
78
89
127
143
140
109
113
118
143
102
76
134
163
80
109
148
56
109
75
140
69
99
146
127
140
99
68
76
96
175
107
80
113
113
160
100
119
112
80
134
117
80
115
134
197
85
112
103
122
109
91
98
72
102
156
131
118
134
109
134
80
69
69
122
136
137
107
104
109
126
99
72
117
89
98
109
76
94
96
87
85
88
69
54
117
118
134
183
112
143
80
112
89
113
72
121
74
115
106
156
99
76
93
52
120
107
52
117
78
123
69
109
79
127
100
128
110
109
80
131
125
120
69
89
80
110
80
43
69
125
87
115
93
120
163
80
67
85
69
121
109
119
110
134
99
113
83
78
175
74
87
119
165
197
69
134
120
131
88
140
165
68
131
112
102
109
107
78
134
124
80
76
76
156
108
76
99
156
69
128
88
140
109
127
74
113
99
99
154
143
69
138
78
144
113
80
78
78
145
128
175
115
122
72
136
89
69
119
130
144
126
111
112
107
128
161
90
110
126
74
118
52
80
141
174
134
87
106
56
107
154
125
94
79
93
60
86
87
94
80
100
116
80
69
69
85
78
88
76
78
119
131
143
114
113
80
100
141
104
78
113
112
102
94
175
130
187
123
122
119
99
80
72
87
96
113
134
107
157
69
148
99
128
89
98
120
120
99
72
98
93
69
94
76
69
115
93
80
126
77
156
112
106
100
128
107
93
126
145
99
131
122
175
88
160
102
76
69
96
91
87
80
69
101
78
113
123
85
104
69
78
87
164
80
128
134
85
175
109
138
72
109
91
94
54
102
69
99
96
101
73
94
56
131
111
117
122
80
134
155
88
76
88
103
94
93
143
95
132
112
116
155
78
145
131
80
130
78
107
145
111
71
128
80
152
91
80
94
119
69
120
118
100
91
128
74
111
122
56
119
145
174
107
102
87
110
113
115
85
113
72
104
94
69
102
69
76
109
72
107
107
126
141
80
100
175
132
93
118
119
133
119
133
134
128
104
107
80
78
87
94
100
128
175
89
101
88
121
119
78
115
125
99
124
143
120
119
80
140
111
88
115
111
69
111
67
150
109
88
69
143
96
93
131
120
99
156
93
109
112
69
147
117
139
112
118
67
90
120
102
80
87
156
112
119
99
130
109
110
78
109
106
107
128
69
112
80
80
107
87
119
107
160
134
76
117
92
94
137
113
119
120
87
175
80
94
132
89
89
154
106
126
69
116
75
80
145
113
177
93
56
117
120
80
124
127
125
143
69
98
74
43
118
85
176
139
117
52
80
87
69
69
121
91
136
83
120
93
99
69
155
140
93
56
106
117
129
69
113
69
121
89
96
109
131
104
69
87
196
154
83
107
80
74
128
185
99
102
74
146
116
119
110
87
76
115
131
122
87
115
163
69
69
112
85
102
101
78
76
94
85
110
197
113
104
80
104
99
113
119
76
154
201
80
111
109
99
197
94
136
76
78
68
88
100
69
165
88
78
78
80
80
156
66
107
72
87
93
164
175
175
128
66
76
127
119
99
107
103
76
175
106
129
80
122
72
104
128
137
119
124
156
154
80
80
95
120
129
58
131
153
69
123
104
83
76
110
80
197
117
120
155
106
151
72
119
103
103
151
80
104
121
146
100
121
80
99
197
104
120
131
128
134
121
109
91
142
88
78
91
89
94
119
106
101
145
114
69
93
89
69
101
59
107
126
87
69
80
79
104
76
197
83
80
88
90
111
120
137
125
129
110
110
167
87
91
145
154
147
119
120
87
130
80
160
69
106
102
87
128
113
69
78
69
69
74
92
120
98
93
69
107
88
154
114
87
78
115
91
96
104
93
121
119
80
106
140
93
175
151
122
127
80
155
119
148
120
92
93
89
96
87
69
117
96
88
104
126
109
138
121
80
89
67
113
119
104
119
154
99
94
88
128
103
132
89
154
69
52
114
128
175
151
54
163
127
69
87
83
72
72
80
86
87
132
197
72
80
103
80
154
87
80
80
102
127
109
69
66
101
69
118
88
140
91
145
128
69
175
115
96
87
100
144
127
155
71
151
100
131
83
74
107
163
110
103
69
84
98
69
110
126
75
71
94
56
115
109
78
109
67
80
117
78
162
80
119
99
175
89
147
76
121
123
111
126
117
80
78
78
154
80
128
175
80
120
132
146
94
76
78
154
205
78
156
126
122
111
69
110
69
87
160
121
134
69
128
80
154
144
82
137
148
107
101
76
140
114
146
134
99
80
69
147
85
156
154
117
156
93
151
154
100
109
112
175
128
76
69
80
96
52
117
201
98
105
91
85
175
104
127
119
78
155
89
128
134
120
109
148
80
119
95
80
102
69
76
117
97
99
101
69
175
136
89
69
80
120
154
80
96
43
78
122
75
91
101
76
69
142
134
107
107
80
134
138
154
126
84
140
132
118
164
117
123
107
68
69
110
129
136
153
52
76
107
141
99
183
96
94
127
130
123
80
90
72
136
72
100
119
73
80
86
91
147
94
148
120
128
78
161
80
114
125
80
110
66
76
107
69
128
160
175
89
123
123
112
114
119
78
94
74
120
154
95
187
130
76
146
80
101
88
74
118
107
106
76
78
146
83
122
93
82
102
134
110
109
75
128
87
76
128
80
138
87
72
78
142
87
99
112
103
153
96
69
69
163
145
136
120
175
78
69
80
105
101
80
144
104
94
104
91
130
88
156
138
80
122
69
117
69
99
127
175
80
104
80
80
119
87
106
76
175
76
52
104
78
100
78
172
99
120
99
78
88
119
105
76
78
87
69
154
114
71
80
154
91
146
131
124
197
88
119
145
127
80
133
56
80
99
94
154
130
74
137
127
80
147
155
134
146
154
101
66
109
113
94
135
119
76
111
80
78
101
108
80
127
88
144
107
78
116
69
85
156
78
80
106
134
151
87
119
69
136
82
99
82
69
120
107
144
122
120
88
119
110
201
110
78
156
107
96
145
80
160
136
76
69
87
80
80
87
110
175
74
85
119
76
56
121
132
131
89
80
150
79
117
123
119
131
137
156
155
136
110
110
134
140
175
154
76
108
109
78
149
82
103
117
80
88
58
121
129
93
89
165
86
156
137
106
72
107
80
94
106
83
119
126
76
118
118
76
87
89
94
156
89
91
89
87
96
134
174
80
72
118
69
136
175
69
131
72
89
92
108
54
69
59
175
76
76
163
109
80
71
125
81
106
102
128
121
98
94
100
104
80
80
80
78
80
89
120
87
174
139
160
96
69
128
162
175
78
80
114
119
163
88
89
122
76
80
72
113
69
126
85
74
80
154
80
120
80
128
80
76
93
80
96
87
69
94
169
76
101
131
69
145
145
101
98
69
131
136
76
143
107
87
127
132
80
89
76
156
69
87
52
94
130
134
128
140
96
113
129
95
128
131
146
199
125
103
118
197
107
68
154
139
87
197
80
69
175
58
134
104
129
121
109
52
121
175
69
96
156
106
146
100
93
104
104
71
175
124
120
72
88
169
136
94
129
78
107
87
137
140
109
74
121
145
118
94
120
128
87
76
69
69
109
112
92
128
107
121
93
106
128
75
197
69
144
83
80
69
128
136
88
92
199
88
147
121
106
134
88
123
123
87
56
80
117
205
75
99
98
112
69
69
175
119
132
148
69
89
85
119
67
80
120
152
110
147
78
140
78
80
128
87
112
54
208
91
99
122
110
96
139
93
87
78
101
69
104
88
69
106
67
89
102
156
87
82
80
110
76
124
140
123
74
131
121
100
80
131
113
91
175
69
80
155
80
128
80
76
121
80
102
104
119
117
143
80
72
119
69
128
140
96
120
120
87
113
69
66
99
69
154
80
109
80
69
148
131
54
69
145
121
120
143
92
80
69
76
91
138
76
146
80
156
69
111
69
72
87
76
69
110
69
119
80
80
91
133
69
122
59
91
107
91
87
160
90
87
87
125
134
126
123
69
134
80
130
57
134
128
75
131
109
80
154
78
128
107
85
109
69
154
80
107
103
76
131
126
78
156
80
76
87
87
137
123
128
118
102
151
80
175
117
107
115
90
87
101
107
87
87
120
81
99
88
80
120
150
106
87
119
122
154
115
76
148
80
137
69
80
120
102
91
118
76
104
103
118
127
89
128
128
155
123
98
80
106
118
94
115
138
156
80
120
137
104
110
80
69
134
109
163
120
112
72
114
96
112
119
76
76
185
155
154
76
120
87
137
136
110
136
124
78
152
89
107
136
112
106
76
78
104
80
118
69
80
69
174
99
102
69
110
133
80
105
164
114
99
104
136
119
109
175
151
175
143
175
120
101
119
94
67
94
148
134
130
91
71
99
113
107
127
113
119
152
80
151
135
156
134
99
100
87
156
89
145
102
101
112
104
156
78
107
89
128
156
89
119
87
89
98
85
87
106
104
143
80
104
66
88
89
82
155
144
72
87
140
100
118
69
99
76
107
134
117
150
87
140
134
110
58
123
80
176
85
80
177
80
111
136
175
119
131
109
125
96
134
136
101
134
78
80
136
111
78
175
110
94
146
89
117
64
127
78
122
104
69
99
91
120
120
78
72
103
155
163
57
143
58
119
80
78
88
151
121
69
121
54
87
113
88
120
113
80
85
67
136
113
119
95
131
69
127
109
119
82
108
113
125
113
143
52
72
80
80
137
131
78
157
99
85
80
88
89
120
130
127
126
69
106
112
69
131
126
118
96
119
110
150
80
69
118
87
114
93
136
88
130
106
136
126
92
120
130
143
95
88
93
116
119
107
126
134
99
76
145
131
134
137
89
118
78
154
87
78
119
78
76
72
71
87
99
144
72
131
67
80
144
155
87
85
76
80
151
126
56
178
69
131
129
104
96
201
80
100
131
134
151
139
128
149
79
154
75
128
106
117
132
120
138
136
110
122
108
110
120
114
87
140
175
133
76
88
54
101
119
110
93
83
134
117
91
80
106
87
121
131
69
76
105
83
146
128
73
92
104
89
99
154
87
87
151
80
78
146
80
169
115
119
80
136
78
93
83
97
76
164
127
80
69
112
87
115
107
107
85
201
112
136
80
104
113
69
83
154
69
76
120
126
109
87
80
87
114
80
67
80
156
94
78
80
69
104
76
73
82
143
136
156
187
74
115
74
128
85
102
175
87
88
93
133
80
80
94
80
106
128
175
80
143
128
109
119
128
78
113
89
185
76
113
128
87
76
138
81
113
104
121
99
80
88
80
96
69
126
120
116
158
80
99
115
134
129
69
80
97
147
143
66
72
175
80
131
87
113
89
109
74
107
69
85
88
43
78
114
113
85
110
78
94
112
71
96
111
110
140
69
134
74
72
124
139
108
87
87
164
103
128
87
69
134
119
129
100
201
144
99
131
99
90
80
133
100
92
72
121
87
127
69
87
122
109
98
100
74
103
96
76
109
136
99
106
119
88
109
113
136
69
134
175
111
78
87
119
88
80
76
123
69
80
128
88
64
155
99
76
54
73
78
91
110
120
118
91
111
76
89
137
87
156
85
88
111
99
128
154
131
85
174
107
104
99
69
120
129
99
163
102
104
143
106
89
93
76
112
110
76
175
85
143
134
100
136
123
123
131
175
76
80
107
69
107
118
160
56
54
107
69
140
107
107
90
134
89
152
69
144
94
128
76
112
137
146
76
117
113
113
118
76
197
80
123
93
119
149
110
93
78
124
175
136
140
80
83
69
52
76
128
87
119
102
99
175
138
96
110
88
128
100
89
121
126
157
121
128
110
80
117
78
143
96
72
127
134
131
142
59
91
99
99
101
123
80
113
146
117
128
134
76
144
109
83
174
88
69
115
118
87
119
69
126
121
126
91
175
181
99
87
131
101
118
123
131
76
175
89
154
87
104
94
69
123
88
120
110
117
103
89
81
154
63
75
120
109
99
128
140
76
76
175
143
113
109
120
76
80
117
72
163
80
155
128
80
119
92
119
80
155
98
115
128
111
120
87
117
120
143
131
80
69
80
80
69
87
164
76
80
79
88
151
120
130
107
128
87
125
69
107
128
94
104
154
87
155
80
130
106
125
104
95
80
120
99
140
91
107
87
87
69
117
128
101
76
126
80
112
107
199
141
67
99
71
112
87
78
150
114
76
154
76
106
76
113
124
105
174
69
134
133
85
87
74
155
155
93
98
143
69
89
112
98
113
155
175
120
88
81
169
94
154
78
67
104
80
197
156
119
151
99
67
76
108
88
115
100
174
110
126
94
132
150
136
119
127
128
110
69
64
104
69
121
85
119
89
104
102
118
87
117
128
125
136
128
80
98
131
131
69
129
84
92
80
136
64
87
109
74
145
126
76
99
78
78
113
119
87
96
88
169
98
119
93
99
141
69
80
154
118
89
43
109
90
148
105
88
134
87
134
146
80
119
88
143
78
76
123
102
76
128
87
72
80
76
66
87
91
106
76
137
102
80
87
91
69
87
69
103
107
101
128
145
140
78
139
76
123
104
152
119
78
150
90
74
121
157
131
76
117
76
80
128
80
80
115
163
133
118
88
131
109
93
104
77
76
94
126
154
69
83
80
56
128
154
78
165
119
145
140
119
89
74
95
76
136
107
175
76
56
89
69
99
89
58
77
90
154
120
56
175
91
124
89
79
136
113
103
175
131
160
117
151
76
69
104
109
128
131
104
86
69
199
137
114
99
67
95
93
69
128
136
101
119
122
85
80
80
80
145
134
110
93
197
164
75
95
130
150
124
96
87
57
111
93
124
97
96
80
127
93
128
136
90
80
80
122
127
96
78
132
120
91
104
91
128
160
131
88
80
95
110
69
101
69
69
101
104
111
118
82
89
99
87
99
83
93
89
80
107
138
140
78
94
80
113
109
119
92
89
134
174
56
101
87
126
122
163
175
128
110
87
117
106
87
151
80
133
110
109
90
94
69
120
88
117
107
175
69
110
127
92
76
83
69
106
128
104
118
79
98
87
120
95
87
152
119
117
109
67
154
110
160
80
78
43
114
109
80
134
80
129
143
134
80
112
98
69
147
100
82
101
87
80
69
135
197
88
134
107
74
175
99
94
101
167
81
69
137
157
110
88
98
154
120
90
67
69
78
74
114
106
91
118
83
119
175
85
117
131
112
69
185
94
87
76
164
100
80
104
93
175
99
106
110
120
91
87
72
131
111
96
110
87
119
96
87
119
76
113
120
136
80
91
133
52
147
105
136
110
154
140
175
72
124
80
149
147
129
156
78
121
69
69
123
112
85
76
128
123
83
118
52
109
147
157
80
107
121
168
69
76
80
175
72
80
111
119
161
120
64
74
110
121
154
109
111
127
148
158
107
146
58
54
107
69
91
87
63
76
110
133
83
80
69
103
80
113
177
64
99
133
87
154
119
106
72
120
94
106
151
117
115
137
131
87
92
87
126
109
153
80
96
76
88
144
94
66
134
80
107
128
119
104
107
111
120
107
118
102
107
155
137
153
93
113
137
94
94
94
96
80
93
160
149
76
87
185
132
132
78
79
80
91
121
162
69
154
78
107
133
106
80
71
151
76
131
119
151
185
138
111
151
102
69
134
69
94
89
142
80
72
156
74
80
119
106
104
156
69
120
94
118
97
87
78
120
150
100
154
120
80
113
107
131
151
197
56
116
69
80
88
197
93
72
111
127
107
145
52
153
122
97
76
131
78
110
84
118
142
88
80
76
138
93
80
87
161
78
156
72
148
124
105
89
126
129
90
109
131
69
80
140
140
88
89
94
140
120
152
64
151
109
98
119
94
103
80
154
119
131
121
78
155
91
112
113
178
80
131
123
83
83
93
143
107
74
66
147
90
99
67
101
147
119
80
175
155
106
112
156
54
129
78
109
94
95
96
110
69
95
109
80
83
104
119
95
110
69
80
76
123
110
136
90
114
69
156
131
76
80
150
107
87
69
154
69
120
70
121
87
89
117
154
104
128
126
100
87
119
74
152
101
87
69
91
156
69
154
156
120
69
80
96
144
90
133
85
69
69
69
78
118
131
80
43
110
63
74
94
137
128
139
87
76
109
126
109
113
80
183
87
78
154
114
69
78
146
136
91
120
80
154
71
89
78
85
112
117
101
128
52
93
94
154
69
87
88
121
95
97
78
119
76
78
135
43
80
112
106
72
91
139
69
99
143
85
74
69
120
120
69
117
126
69
109
135
134
131
101
91
120
136
69
114
78
100
80
114
69
52
76
103
91
185
104
80
103
107
96
76
148
164
94
87
149
43
76
130
103
78
122
110
131
130
69
128
109
107
120
99
76
78
81
91
120
110
99
78
98
80
136
132
138
98
87
94
120
76
185
80
69
106
128
69
120
117
126
197
84
76
69
110
120
156
95
80
136
101
109
131
124
127
85
120
97
125
78
125
109
99
99
131
110
143
115
69
96
146
76
117
91
138
109
75
87
69
98
69
134
113
78
78
76
85
197
149
110
88
76
80
126
140
112
110
63
69
157
131
76
94
120
87
66
69
117
69
76
145
104
78
106
99
120
166
113
145
138
115
118
71
76
136
87
123
85
121
120
89
119
56
88
110
115
102
138
69
109
93
117
89
149
87
99
80
98
99
102
95
69
69
136
69
72
143
88
74
104
69
87
89
79
102
131
76
69
154
80
80
69
120
95
117
83
88
112
111
69
119
117
52
96
76
80
174
91
72
99
80
78
107
154
80
79
91
175
128
136
155
80
131
69
151
104
137
112
78
85
154
103
78
96
127
136
156
165
64
124
108
110
89
140
80
134
80
106
80
57
83
80
74
144
140
147
130
100
119
186
156
76
98
127
154
112
110
137
140
175
87
110
154
128
88
72
80
75
144
109
106
109
88
74
113
128
126
151
69
83
80
56
166
88
134
124
78
88
43
129
104
114
143
117
144
128
120
122
89
78
148
76
174
107
80
94
131
107
175
80
67
134
123
112
100
78
132
80
94
138
69
94
80
128
99
197
122
108
72
74
93
76
137
87
58
69
87
133
82
88
109
136
107
89
87
87
76
93
134
87
175
87
119
125
95
83
85
93
87
121
142
151
123
69
157
69
88
52
69
152
80
88
43
54
107
163
128
119
69
124
80
175
102
107
111
107
76
98
89
117
88
119
117
122
164
82
80
80
125
91
120
90
69
67
92
113
103
69
145
154
52
99
54
69
125
154
125
54
119
93
76
87
136
130
158
112
130
66
80
148
99
93
175
119
107
131
138
120
93
78
76
82
94
87
85
54
91
90
69
80
107
118
102
151
147
136
137
197
102
88
162
185
101
80
87
136
89
76
78
78
80
119
93
117
82
87
83
128
87
160
101
69
104
110
107
95
122
110
80
74
137
89
101
156
69
69
101
128
76
120
88
136
111
94
114
197
85
87
87
156
109
87
172
136
52
132
119
109
69
117
66
134
54
87
56
145
140
88
89
80
105
57
76
174
109
91
106
99
122
59
93
127
87
113
76
118
80
97
111
80
127
104
116
148
106
100
128
69
120
147
89
85
80
69
132
87
69
74
69
54
87
106
113
104
156
100
69
96
82
119
111
89
69
101
164
142
94
76
134
109
98
163
52
109
85
126
107
80
91
129
92
185
121
127
74
156
88
121
128
108
107
119
119
107
83
80
96
127
78
83
88
88
119
87
91
90
76
138
54
175
140
80
175
91
80
122
136
69
99
72
124
107
121
155
72
88
82
78
101
127
69
99
111
72
146
76
121
119
74
111
138
80
127
101
80
76
133
126
134
121
117
187
69
94
136
112
178
121
87
83
80
109
154
136
118
80
107
82
106
111
139
110
80
110
142
69
110
120
201
119
136
175
121
111
128
78
78
94
154
69
90
106
87
134
112
103
120
121
109
113
80
93
72
104
133
87
119
107
128
140
104
122
76
80
92
129
106
106
112
120
91
101
145
131
74
101
155
77
76
119
89
81
99
69
127
145
80
76
69
70
80
109
122
165
127
78
175
128
134
94
120
163
94
144
87
109
56
99
94
80
69
145
156
119
125
83
72
76
80
101
149
112
123
69
78
87
117
92
120
88
195
118
119
128
103
80
109
69
98
136
138
94
97
78
106
78
106
140
94
117
88
205
112
99
69
114
109
80
83
96
163
122
69
92
78
69
144
87
80
99
98
112
75
87
140
80
119
156
78
128
87
163
125
69
88
99
99
69
113
127
96
154
128
76
163
54
106
110
124
80
88
78
111
76
155
120
109
121
134
117
104
145
78
69
145
87
128
117
64
111
115
69
122
131
113
99
69
67
136
56
113
117
139
101
87
78
94
128
87
110
107
89
119
147
109
69
76
78
113
118
109
183
127
146
121
104
80
126
80
109
127
143
69
102
80
112
109
145
69
80
72
197
76
122
56
89
87
79
117
87
91
82
87
80
93
109
144
93
87
156
152
78
83
74
156
124
106
69
89
197
136
87
110
76
69
87
78
78
82
79
110
101
175
100
140
137
142
100
162
85
117
131
89
140
87
128
69
72
110
69
69
120
78
128
131
123
121
78
119
111
98
107
117
80
136
85
78
93
102
78
143
130
110
69
69
128
106
101
201
120
72
87
52
76
132
88
107
87
128
69
99
81
113
52
148
120
154
80
118
76
89
80
96
125
133
76
88
125
87
92
101
88
71
138
104
110
137
80
69
123
138
201
102
152
164
117
115
144
76
155
88
80
107
131
78
101
133
58
134
99
123
113
112
118
89
123
52
128
175
78
90
80
120
78
120
80
122
106
154
107
174
104
131
91
69
155
145
115
111
100
100
144
69
74
88
145
80
138
52
69
87
110
78
76
156
109
145
174
109
151
107
112
128
87
69
80
78
80
154
140
154
120
100
107
127
64
120
140
110
71
71
174
129
106
69
90
104
99
64
102
80
146
93
67
80
69
93
134
107
151
76
111
146
147
96
87
113
138
107
69
92
114
52
78
156
72
89
118
56
92
131
99
78
134
132
143
114
78
54
69
80
110
69
140
80
116
52
107
69
101
148
69
115
147
106
88
87
72
94
87
74
104
79
120
124
121
108
113
148
76
163
80
163
69
175
80
78
133
69
76
112
96
89
52
104
69
80
69
134
119
94
58
130
66
80
69
175
103
94
87
119
78
115
127
80
112
140
69
140
157
131
80
136
115
119
83
69
136
129
145
78
113
134
123
113
108
102
106
94
145
154
144
103
107
133
64
99
145
142
90
80
96
109
99
94
80
80
69
111
87
117
122
199
80
120
175
101
117
71
125
140
113
78
80
52
151
69
115
128
172
69
106
78
102
80
88
120
123
154
104
97
69
144
74
113
172
69
104
80
87
87
80
69
110
87
88
110
72
138
99
69
89
113
136
80
197
89
66
79
95
175
69
96
78
69
78
120
93
85
54
131
99
145
112
69
175
107
119
87
80
104
100
122
166
124
106
136
162
94
58
89
134
69
76
87
110
118
145
118
120
95
69
90
87
88
100
76
88
112
177
69
88
112
102
80
160
134
97
69
154
120
110
134
128
119
96
133
155
101
88
57
87
76
137
146
80
110
109
87
209
80
69
99
111
151
131
69
96
106
122
156
52
80
100
88
76
119
107
121
112
78
106
145
78
87
109
91
103
83
128
117
175
78
69
97
69
76
80
71
149
201
119
117
78
100
112
79
89
122
104
105
96
103
69
80
89
155
91
115
175
90
131
78
76
123
94
89
78
104
69
104
110
117
76
69
127
120
120
136
128
95
102
136
104
72
80
72
120
143
94
75
111
95
111
127
80
79
118
80
94
88
112
136
107
144
109
100
69
119
136
115
115
129
71
120
87
87
157
128
124
83
98
76
57
89
138
91
102
76
107
80
107
106
99
110
95
156
124
91
91
52
175
107
121
69
128
114
93
144
76
104
102
113
117
157
107
122
106
87
131
96
80
87
68
104
197
76
110
78
115
88
109
43
128
101
160
126
107
80
107
88
119
145
107
66
107
104
134
133
154
86
107
148
101
123
125
94
119
69
122
101
128
60
106
128
137
81
127
80
107
106
119
87
112
96
131
95
160
107
119
119
89
75
94
158
93
94
56
76
175
104
112
69
78
140
120
167
69
183
107
163
66
136
80
69
154
76
67
114
88
91
59
122
91
97
89
132
87
140
80
177
133
119
120
91
155
107
69
102
69
125
91
126
80
99
102
110
154
128
119
113
154
151
87
128
85
141
72
120
80
78
80
101
85
78
111
127
88
119
128
83
43
156
78
76
110
85
150
78
166
80
163
120
120
89
54
59
89
91
175
95
120
123
101
138
87
69
131
69
96
102
95
87
157
88
106
119
69
119
175
88
88
140
154
123
104
136
78
97
114
102
104
76
143
155
78
80
143
125
96
109
146
175
143
82
80
90
88
109
164
95
89
100
101
99
69
111
96
78
69
127
72
112
80
120
110
155
156
121
130
101
119
89
119
121
91
94
54
87
90
99
98
100
104
74
105
107
76
106
107
150
76
145
76
197
69
121
104
80
154
87
80
109
124
87
126
78
87
89
100
128
113
137
87
136
160
146
69
80
96
145
120
69
72
175
114
175
95
69
118
175
113
88
80
91
80
104
78
195
96
80
118
69
119
145
104
85
54
76
120
87
76
82
99
89
119
135
78
131
87
154
136
130
93
104
85
97
89
197
106
175
74
87
120
72
100
104
80
131
80
120
72
100
134
79
80
69
87
95
132
109
92
80
87
116
185
80
109
175
140
96
63
115
92
155
106
94
80
149
69
99
127
97
115
90
181
78
103
103
101
80
175
78
154
128
144
78
87
80
154
148
94
110
99
107
102
120
69
102
107
76
99
57
113
69
119
107
109
110
99
96
118
87
119
78
92
80
87
94
136
87
112
154
123
69
94
155
136
122
78
98
87
91
57
106
110
69
78
148
110
197
175
175
80
140
115
119
159
175
76
80
163
136
127
69
117
56
83
107
136
197
87
134
76
134
89
175
99
69
154
87
102
76
76
128
140
69
66
155
96
112
54
80
118
78
131
87
80
69
136
105
123
80
101
85
120
69
57
98
87
175
150
95
137
78
112
93
103
87
146
128
89
80
128
87
149
103
130
127
93
116
89
128
119
144
119
80
175
148
138
130
120
103
181
69
88
118
131
72
68
136
69
109
151
99
107
80
94
99
145
151
118
78
113
72
67
76
154
115
117
87
151
87
140
163
120
88
175
80
76
109
94
145
148
164
117
82
181
142
119
143
130
80
119
175
78
104
73
107
146
80
118
80
145
123
69
134
111
120
122
78
107
88
154
96
131
151
69
69
94
80
113
89
88
69
80
80
146
139
111
76
111
111
88
119
114
124
87
94
110
80
154
128
85
76
189
100
80
112
80
128
96
111
131
144
80
175
121
104
83
117
154
118
114
156
100
119
118
140
140
128
119
107
119
78
87
121
117
54
117
99
121
107
136
122
69
92
96
78
56
89
178
68
87
118
199
87
69
104
102
104
157
69
69
164
119
78
134
81
128
101
80
113
76
98
152
145
122
119
72
146
93
154
87
80
78
151
112
80
72
87
56
111
119
76
80
117
87
120
69
76
89
95
124
116
107
113
93
114
100
94
154
94
143
112
109
80
101
89
88
83
123
87
110
147
139
151
110
109
99
145
114
152
69
160
69
87
78
89
76
75
87
146
161
131
117
175
87
107
134
174
128
94
197
140
69
197
129
119
119
136
194
143
80
69
160
80
95
90
78
91
95
123
78
80
80
80
88
94
158
151
54
127
87
144
64
131
119
113
155
69
78
134
76
99
87
109
155
76
118
64
75
94
101
134
112
121
147
129
98
131
76
69
142
80
175
156
88
175
120
80
103
146
121
76
91
87
43
118
128
121
122
121
114
110
143
166
120
128
140
96
118
140
128
66
103
134
120
87
140
102
89
123
80
132
102
120
134
91
85
80
87
76
125
89
78
105
131
69
54
110
129
109
127
78
87
83
80
110
58
89
76
128
96
115
93
154
99
80
94
140
78
155
89
80
112
131
104
162
128
128
111
76
121
140
159
134
154
80
113
193
93
109
119
96
91
98
107
119
56
151
69
54
78
69
124
91
136
114
104
76
85
108
104
98
80
197
112
107
69
93
102
80
79
72
76
80
52
138
127
107
106
109
132
115
112
85
110
72
52
81
78
69
85
144
94
113
120
154
113
99
80
154
128
121
140
104
123
89
119
88
69
113
58
82
80
128
127
118
137
72
101
136
91
163
102
89
72
94
106
146
104
119
122
138
140
96
85
43
69
128
158
119
120
87
175
87
96
146
78
174
72
124
118
85
88
103
92
69
114
111
136
88
124
145
128
175
87
107
107
96
128
69
140
109
113
69
114
87
80
131
127
78
120
87
88
156
112
80
80
117
56
136
80
56
120
131
76
123
102
183
104
87
119
134
78
81
69
69
138
137
120
56
134
93
197
72
80
91
52
89
138
75
76
75
69
74
78
128
95
144
174
107
107
112
60
95
100
78
159
106
80
100
120
124
109
106
89
88
134
120
133
89
72
88
69
133
69
80
114
123
87
120
110
80
138
155
122
154
89
83
69
80
119
114
102
90
134
129
125
99
69
76
79
131
120
209
107
140
128
80
78
79
80
112
87
128
120
137
106
94
136
69
134
107
93
89
144
119
93
175
77
154
151
119
154
87
78
99
151
88
88
109
134
87
74
69
69
131
76
155
80
93
103
96
106
104
132
145
131
146
80
78
108
78
155
120
106
110
101
72
80
80
66
106
100
107
133
119
121
99
85
132
76
121
110
54
85
69
156
94
69
100
143
91
80
80
43
87
102
119
87
197
126
69
106
78
120
88
72
54
76
87
108
83
93
99
76
104
66
76
87
69
93
106
119
117
78
99
106
103
87
58
112
169
117
93
112
121
128
117
123
127
107
67
54
89
76
78
69
89
109
106
81
155
110
136
151
147
69
132
80
136
72
78
75
118
120
154
91
89
64
99
146
95
78
96
69
74
104
131
112
109
140
197
130
145
120
80
119
110
104
93
101
80
69
175
80
102
140
76
91
54
76
118
154
119
69
175
140
69
156
159
78
143
43
92
78
103
117
74
69
76
85
88
119
132
131
105
94
105
87
87
156
121
94
110
112
121
137
80
89
118
154
87
107
69
163
69
88
104
87
111
69
87
89
88
156
87
106
146
138
94
69
87
80
87
181
69
114
80
120
131
120
144
175
159
80
80
139
133
114
122
87
128
69
133
94
76
124
78
120
102
71
88
127
78
88
52
99
83
203
93
80
76
88
80
80
132
119
119
133
113
120
99
64
155
100
80
131
80
100
107
126
74
80
93
197
99
78
43
127
95
110
117
111
89
87
76
95
52
112
126
80
120
100
87
87
151
145
130
69
67
94
126
148
145
76
121
139
88
122
69
140
80
93
101
125
145
87
80
114
79
69
104
120
72
119
121
76
117
122
97
120
87
101
104
175
76
157
107
175
109
94
155
80
107
120
126
163
113
76
85
96
175
69
119
121
87
87
138
76
87
88
100
120
121
87
145
117
118
128
76
163
68
146
124
80
124
87
93
151
120
80
76
187
131
117
127
110
79
119
148
89
127
109
120
92
94
132
80
89
121
145
64
76
163
72
154
80
60
82
139
108
187
140
88
89
137
151
140
101
80
120
109
69
155
88
154
69
102
109
143
111
129
120
104
72
104
175
87
69
148
76
89
99
76
87
80
134
106
72
120
87
139
91
88
94
146
69
93
93
69
76
116
89
80
143
100
133
109
82
87
93
110
72
164
133
120
112
80
113
69
85
90
66
88
91
57
69
69
76
74
80
109
78
76
93
110
105
124
154
120
154
89
112
136
76
131
87
78
94
100
80
78
80
154
131
152
104
127
123
96
107
155
120
88
107
87
175
131
101
99
113
119
69
89
78
94
109
80
115
154
94
76
94
128
145
87
107
88
72
120
115
94
131
122
120
94
119
110
74
69
72
100
69
87
156
87
89
76
80
154
144
80
66
165
144
67
118
98
154
78
80
109
69
67
156
120
134
80
76
106
163
107
76
91
137
105
69
136
112
88
131
175
64
100
111
87
130
93
107
111
174
100
128
69
120
72
115
69
98
97
104
109
106
121
133
76
189
80
109
155
76
126
89
151
54
120
134
74
120
121
124
133
155
104
104
80
76
69
100
125
145
175
89
154
140
160
99
89
123
91
107
98
87
96
163
69
79
146
94
90
118
78
69
116
89
128
87
85
69
88
88
88
71
115
112
88
164
54
80
80
76
143
87
76
69
87
89
105
136
69
119
128
113
134
124
87
100
69
134
175
76
129
89
168
132
91
69
102
145
75
143
85
156
120
99
119
71
131
154
69
87
94
69
99
175
128
136
92
69
137
156
95
128
124
93
106
119
128
78
80
109
109
126
87
92
118
146
87
126
112
127
160
89
78
144
113
80
93
80
54
87
88
87
126
76
102
128
72
76
87
88
175
80
76
76
128
109
80
127
151
87
80
80
94
87
127
80
93
87
154
87
99
117
107
126
119
131
101
120
83
80
137
131
78
99
156
69
140
145
80
80
107
78
163
72
128
74
112
117
145
83
95
120
87
111
119
69
109
74
127
154
100
137
148
80
78
87
128
87
87
74
120
139
72
56
107
76
110
92
163
93
92
85
85
151
80
121
110
136
134
113
82
95
78
131
119
117
80
101
76
106
115
76
154
138
106
88
107
80
54
132
69
80
78
117
119
93
117
110
92
69
80
89
56
76
72
118
88
151
76
126
106
90
78
99
113
71
80
52
128
72
102
73
117
131
60
148
128
120
69
87
134
80
201
80
102
69
160
131
122
76
119
107
131
80
80
141
87
89
143
100
145
110
140
151
175
88
89
76
89
80
95
80
89
88
87
136
129
101
96
112
114
78
93
100
103
131
111
126
86
114
117
90
87
80
80
99
102
80
88
91
128
69
87
78
54
118
139
143
88
76
80
78
99
153
117
104
78
155
124
99
119
174
137
80
80
145
74
87
122
107
113
104
128
72
111
137
110
96
93
113
145
100
130
76
124
117
139
119
119
107
120
90
107
109
115
85
66
69
96
175
139
69
119
71
91
109
120
107
101
128
52
101
119
112
89
127
113
69
93
111
97
52
80
69
138
89
146
150
136
163
151
87
102
129
60
69
87
109
96
145
107
80
129
54
80
113
119
128
148
106
94
107
121
69
154
98
98
114
148
88
78
155
104
150
143
80
137
121
100
59
78
87
115
89
102
69
121
74
119
80
89
88
112
87
197
90
69
99
119
140
54
113
101
78
122
121
118
95
89
69
119
133
69
109
87
107
148
141
89
80
181
93
88
80
54
78
80
96
58
80
91
172
137
69
122
74
96
175
175
80
74
89
87
87
81
88
80
140
101
163
109
80
197
105
119
69
110
134
80
80
69
175
80
78
94
87
80
98
131
106
69
154
80
175
100
156
118
127
78
78
100
101
107
101
139
67
111
154
110
112
80
123
129
69
72
80
106
136
145
82
124
129
106
93
112
94
72
122
108
80
112
88
80
106
195
144
93
156
134
74
155
127
94
90
160
107
99
153
80
129
140
120
90
80
137
59
74
78
58
104
79
80
72
76
72
185
112
71
140
76
88
136
120
104
69
130
132
87
128
106
123
136
100
80
78
130
85
197
89
119
119
78
134
119
107
119
69
110
175
174
91
118
101
124
115
80
87
80
113
107
119
120
155
102
69
100
69
72
126
80
127
114
140
126
80
106
79
54
131
136
57
110
140
102
76
102
69
93
151
69
119
128
100
90
99
66
107
80
111
101
119
76
69
116
156
74
69
140
69
69
131
163
84
183
161
143
120
93
80
87
69
121
129
80
121
78
87
76
110
78
72
82
104
197
76
106
80
98
154
94
96
128
94
102
76
108
110
80
95
119
147
79
120
175
115
98
111
69
80
113
120
52
109
127
156
169
90
189
87
104
113
131
156
94
69
116
112
76
80
77
120
110
127
66
76
99
107
78
110
117
101
140
124
69
76
111
89
131
138
112
112
95
109
126
151
140
135
127
119
175
102
127
175
197
134
80
99
154
80
67
87
90
52
113
90
89
56
102
133
117
106
106
127
121
94
69
93
72
102
69
149
93
114
156
87
54
75
111
119
75
87
119
110
175
124
175
136
101
131
144
110
76
88
100
106
88
87
80
94
69
87
87
117
87
80
69
197
78
80
80
78
156
120
72
79
131
120
123
93
157
80
67
96
96
52
144
69
130
98
112
94
133
90
128
101
80
104
104
76
132
119
136
104
74
106
72
155
107
69
147
69
175
128
100
102
89
80
110
80
83
147
110
75
120
121
69
98
80
107
67
89
111
131
134
175
99
76
126
136
76
136
185
93
112
69
133
145
111
80
140
81
143
104
76
69
88
156
117
148
54
87
106
88
104
175
128
96
80
146
121
88
72
94
80
150
88
104
80
69
109
75
109
87
97
80
112
95
67
80
127
80
124
96
99
91
111
80
130
125
113
129
128
119
113
76
126
172
121
127
102
113
69
109
102
80
83
125
140
80
134
117
99
146
80
80
121
100
104
107
74
109
88
58
80
87
109
71
143
69
124
117
76
75
145
89
121
95
129
89
147
110
115
74
128
117
107
78
103
164
87
80
93
107
104
126
87
109
69
89
87
88
83
76
131
80
109
80
80
107
109
76
80
119
69
155
72
127
80
80
119
89
124
154
87
91
104
151
134
95
114
72
69
118
113
89
99
80
82
156
69
107
80
110
175
94
120
120
134
80
80
76
163
140
164
74
66
126
128
89
115
130
67
87
80
102
146
106
104
80
110
123
69
87
115
88
99
92
88
69
142
122
109
134
85
69
68
69
128
80
52
109
134
72
112
111
91
110
128
140
109
80
56
100
112
91
159
111
119
80
128
69
109
124
80
76
107
80
175
119
131
90
116
56
143
134
80
87
134
80
133
115
154
199
146
80
119
132
67
80
128
109
80
89
127
87
152
175
83
89
155
74
106
131
76
96
109
99
80
104
85
94
72
76
106
86
99
110
80
98
80
88
94
156
88
78
134
78
160
119
126
136
159
116
80
102
147
106
120
118
102
64
112
80
125
130
89
113
104
94
128
131
94
78
113
102
90
175
80
119
117
91
69
90
69
98
153
69
69
124
89
137
138
80
154
131
80
111
132
80
154
76
130
110
118
93
110
101
137
80
119
69
97
132
88
122
114
147
125
110
156
187
117
67
101
154
87
80
78
104
155
120
159
120
131
117
95
106
78
100
156
80
88
136
155
104
80
127
129
69
80
87
127
130
80
89
156
89
75
156
69
131
107
119
112
95
87
96
87
96
69
148
113
114
128
80
124
134
80
115
102
78
125
76
115
151
72
124
93
80
105
87
101
78
91
109
69
119
111
109
148
111
105
89
131
147
116
89
183
89
119
80
120
134
109
88
96
113
88
99
114
152
104
175
119
113
110
89
56
109
101
120
134
175
90
106
87
54
120
113
137
155
126
115
98
155
156
133
128
58
76
119
129
175
114
80
80
175
110
93
80
74
125
80
111
110
80
78
69
80
151
133
102
108
134
77
80
164
107
85
85
87
123
154
115
76
78
80
99
93
113
127
101
148
69
87
110
197
69
80
87
101
74
120
146
89
106
119
94
110
175
78
89
80
91
154
88
88
87
88
111
88
87
157
131
131
120
98
91
153
156
80
136
69
78
94
76
80
78
156
111
109
142
154
119
94
115
100
145
69
144
148
136
89
106
151
117
129
69
112
87
118
87
175
147
80
128
96
109
99
78
74
136
69
96
69
72
117
88
82
91
96
197
120
125
117
56
80
126
69
109
164
120
120
120
154
175
78
88
110
87
104
80
155
104
89
143
72
143
128
88
197
150
100
110
149
76
104
72
113
103
85
87
110
89
72
99
140
107
80
80
87
109
91
126
133
87
69
76
175
113
80
122
69
136
83
126
134
76
104
80
93
99
115
104
122
78
111
119
69
69
113
72
75
110
164
124
89
107
146
131
76
112
121
69
94
120
78
112
137
108
139
131
130
109
91
60
175
126
110
162
145
119
119
69
154
69
87
99
120
91
112
99
54
104
72
93
156
139
79
137
87
123
72
114
78
99
94
163
95
114
197
157
154
119
100
76
145
80
149
104
149
127
138
119
78
113
80
154
94
89
87
80
92
69
117
209
104
103
93
120
94
136
80
127
134
104
121
99
106
80
69
145
69
110
145
107
136
130
120
117
88
133
119
80
125
112
101
137
72
153
72
118
76
93
87
99
195
78
78
197
106
80
117
80
154
94
56
74
89
175
114
110
149
127
158
69
148
118
69
69
80
78
147
69
119
142
117
106
108
69
131
88
175
113
80
131
135
137
107
158
80
99
75
106
134
175
163
54
86
131
185
78
128
80
94
119
109
78
69
183
73
87
123
131
121
148
74
104
113
147
80
121
81
140
96
107
80
78
175
80
106
106
80
148
110
69
175
128
126
108
155
103
154
91
104
118
87
121
80
107
147
76
175
101
154
72
151
80
117
69
119
89
96
123
88
90
80
80
119
107
160
97
52
175
80
94
106
94
76
52
169
134
76
89
107
80
129
67
110
125
92
154
80
116
93
107
101
125
69
99
92
80
197
119
69
99
89
115
72
72
104
117
72
101
113
101
89
87
127
82
107
177
78
76
85
105
91
87
106
89
76
118
80
104
131
175
129
175
115
125
123
87
127
117
110
80
147
128
88
99
128
98
175
126
121
76
154
80
94
80
80
87
175
146
126
199
96
85
117
104
128
134
118
88
119
80
72
119
88
151
99
110
66
106
81
80
116
164
67
183
118
78
128
117
127
153
79
107
96
99
120
80
94
121
106
76
101
80
118
99
89
165
80
124
87
120
175
120
134
80
117
119
163
100
128
80
90
69
120
128
101
101
122
197
94
100
96
110
127
80
144
119
91
89
69
109
156
112
120
137
127
120
76
90
119
119
157
151
69
87
87
107
93
175
117
134
156
112
69
91
118
54
76
89
74
121
118
76
110
99
78
80
119
137
99
88
106
132
119
96
80
154
152
69
93
105
72
89
155
120
98
111
80
88
80
69
113
87
87
73
78
79
76
152
128
128
87
110
156
80
72
69
104
89
146
113
151
129
72
69
134
78
99
120
114
76
119
88
117
103
154
59
119
80
78
197
126
107
118
176
102
138
88
74
104
140
113
52
121
175
78
93
88
134
127
109
80
69
110
123
106
102
78
112
80
115
93
107
78
69
130
136
115
148
54
94
54
131
80
78
69
69
69
120
69
80
102
152
75
87
80
128
99
80
134
69
136
175
125
107
119
76
96
76
80
69
87
80
83
109
90
80
76
93
101
99
156
126
90
95
78
78
115
90
118
78
99
107
125
136
127
83
131
96
118
80
134
119
144
89
112
122
87
87
120
126
128
122
107
99
156
104
80
78
94
151
119
154
80
126
112
87
134
131
134
56
112
154
115
134
150
72
88
93
107
74
121
69
128
154
114
78
78
87
174
87
79
110
103
104
109
87
78
99
154
72
68
87
96
107
72
112
128
114
99
117
134
69
88
106
73
80
74
140
101
175
195
119
175
143
155
128
80
121
79
52
99
127
112
80
80
76
112
114
56
119
106
96
109
89
138
74
99
120
145
163
79
80
99
126
120
78
107
107
80
98
121
137
66
110
69
64
100
134
92
87
87
110
162
80
117
76
129
80
87
101
199
94
91
69
130
80
69
80
98
175
110
69
75
136
162
78
96
78
100
109
89
80
94
69
94
54
160
76
78
74
115
146
120
155
151
80
119
113
113
156
87
80
159
99
80
117
101
80
107
78
107
106
78
128
78
78
80
163
146
123
120
69
175
80
107
69
80
113
140
80
147
109
69
121
140
86
83
93
117
87
131
120
104
99
123
132
106
93
120
116
148
78
43
87
110
104
119
110
93
91
87
52
175
148
93
129
120
101
80
91
92
90
99
104
78
117
120
162
156
127
80
113
87
120
60
154
93
115
100
93
94
127
56
146
120
107
121
69
140
146
112
109
151
69
71
123
78
110
113
80
78
154
136
135
102
134
78
93
87
80
80
89
164
96
66
69
100
90
69
56
67
87
129
112
80
52
117
116
80
94
69
112
137
138
124
69
131
124
69
104
102
83
104
58
76
114
88
107
128
102
122
54
88
90
122
145
142
120
80
69
138
52
154
145
114
54
75
110
118
69
98
128
72
151
130
78
136
154
80
69
101
134
78
134
119
115
119
91
143
99
88
134
152
80
80
101
80
119
96
114
155
120
80
100
74
155
119
107
128
151
75
119
80
94
112
67
137
54
113
88
78
115
154
54
128
56
106
72
69
99
96
78
100
80
150
107
80
201
88
112
89
76
87
77
100
151
133
157
69
76
85
88
99
120
104
156
106
175
87
109
121
72
80
107
120
113
103
120
119
156
124
90
67
56
62
118
112
78
117
103
106
110
54
102
91
76
156
128
110
99
138
109
110
120
96
110
115
104
138
80
69
101
118
129
120
136
76
100
119
177
163
96
93
143
142
129
78
88
56
87
146
109
84
143
104
156
69
131
109
155
80
69
98
154
134
117
87
197
72
154
110
87
88
101
135
109
76
97
136
98
128
72
69
112
119
79
112
154
127
160
80
76
134
163
100
137
111
175
80
175
164
131
78
80
80
121
111
117
93
151
109
144
128
88
127
107
87
122
109
89
71
122
78
102
114
88
69
75
78
137
101
83
106
128
89
131
175
76
72
69
74
72
54
89
102
154
69
151
72
150
106
120
114
78
101
128
95
110
78
85
119
109
94
127
146
128
82
163
112
131
84
124
78
116
143
134
88
87
79
80
89
80
80
64
86
76
110
113
123
117
120
80
151
155
125
128
91
175
121
155
87
155
80
87
82
87
120
119
100
109
146
99
136
145
112
100
87
69
83
79
63
87
100
86
59
128
78
78
120
119
139
107
56
111
140
99
120
123
101
78
80
155
154
126
69
69
101
94
125
113
102
99
107
88
78
136
87
69
155
155
104
87
106
69
72
57
43
89
201
143
133
80
80
89
67
126
87
76
130
152
93
128
118
69
106
88
101
104
89
87
104
127
112
78
69
69
119
132
102
197
85
90
175
131
66
152
87
76
80
128
104
201
128
103
87
103
54
43
115
155
69
121
100
132
83
99
69
144
100
92
80
80
104
69
136
107
125
119
80
93
164
89
99
119
89
43
80
98
83
126
127
113
69
124
118
102
80
130
175
56
126
146
136
119
101
87
117
76
103
69
125
88
110
157
69
99
130
102
146
80
128
80
129
98
129
154
106
137
69
87
119
150
83
80
87
79
136
147
154
78
99
129
131
81
58
76
103
66
112
154
52
71
120
107
87
94
175
175
122
87
146
174
87
174
126
110
88
137
96
87
67
74
107
134
127
94
102
106
110
113
140
96
144
119
130
89
72
120
85
115
155
146
96
117
142
80
119
131
119
80
181
78
104
118
87
87
118
69
80
119
156
112
109
100
163
69
120
96
121
112
103
83
137
109
67
78
156
140
93
128
103
89
93
88
163
78
157
120
90
87
93
88
95
106
76
107
127
94
81
52
79
76
83
78
106
132
155
80
128
148
98
101
89
74
69
131
112
69
94
134
134
121
78
104
69
136
107
78
89
104
99
119
76
154
104
124
185
56
109
85
119
110
88
92
80
127
197
71
87
117
72
175
120
76
154
80
80
104
91
109
114
115
80
72
107
143
78
128
131
78
124
147
119
78
104
99
93
114
103
112
91
119
87
120
123
119
140
80
78
129
80
87
110
199
136
69
89
87
175
80
120
91
101
107
106
120
102
91
126
151
91
88
154
110
98
143
113
57
111
87
69
96
54
101
197
117
80
175
131
78
113
80
113
107
144
89
92
69
89
94
80
102
122
64
93
87
80
175
118
99
215
175
115
140
72
96
80
114
81
80
94
87
107
91
163
112
80
74
78
80
120
119
83
134
94
164
69
136
140
117
78
140
99
110
79
132
93
83
111
93
80
88
120
105
107
87
93
145
109
160
106
155
116
120
101
136
127
112
117
107
88
101
76
87
156
145
175
164
69
113
128
76
88
102
94
69
154
148
110
151
69
104
118
109
80
134
92
106
80
99
88
87
123
95
107
119
134
69
80
172
107
130
107
76
143
67
197
120
107
88
110
80
89
118
92
75
120
104
69
134
80
80
156
78
119
80
138
110
119
121
141
120
96
174
151
107
87
113
54
87
78
91
102
100
88
112
78
76
154
90
151
136
109
76
78
69
87
78
172
82
78
93
151
96
118
109
79
82
78
76
88
112
78
121
107
111
110
87
134
80
143
128
88
95
123
139
110
119
106
120
156
103
134
106
113
69
69
78
124
137
117
175
158
110
60
59
78
80
91
117
119
96
178
80
94
107
151
94
128
76
155
78
78
69
87
113
80
88
175
69
88
80
136
146
92
80
80
110
140
114
101
89
128
71
120
89
121
96
137
100
119
104
72
99
80
91
78
155
87
106
69
78
175
106
163
156
99
133
69
138
80
113
145
151
107
69
88
87
106
119
113
201
108
117
140
83
80
80
155
78
88
139
95
80
137
102
75
80
94
93
88
113
80
69
136
80
117
88
140
143
85
69
136
69
93
112
87
134
163
91
99
120
96
106
87
80
89
69
113
110
143
94
78
93
128
78
82
122
84
163
52
120
109
124
154
154
76
52
78
69
80
107
175
118
175
124
114
87
109
87
76
76
147
97
110
80
109
107
80
100
120
143
88
95
78
118
121
88
95
87
128
91
75
87
104
94
119
56
80
103
82
106
76
66
95
107
127
103
146
114
128
74
80
54
80
80
115
123
80
80
80
112
69
107
80
76
155
120
124
85
87
113
143
98
72
80
75
80
72
78
69
115
136
91
147
104
80
112
162
87
175
94
96
128
175
88
115
80
145
99
136
155
95
87
109
113
78
93
100
91
163
93
137
113
113
76
104
153
126
118
87
83
78
91
117
74
121
94
106
112
121
175
113
87
80
83
76
175
104
66
197
107
87
142
134
93
80
80
91
148
131
78
66
130
162
69
137
80
134
157
164
119
54
75
78
87
138
122
87
96
118
119
120
122
114
134
69
107
134
113
185
96
115
75
101
102
85
78
93
99
94
87
98
128
119
79
151
69
80
80
119
78
110
120
145
87
88
104
99
131
101
134
110
89
115
76
197
112
69
100
138
156
110
156
70
154
103
136
87
175
175
91
87
144
140
83
89
129
112
183
100
99
128
113
117
151
93
69
107
87
107
76
80
113
121
137
119
115
147
137
86
90
118
99
103
112
120
88
106
111
127
134
95
118
156
119
91
91
156
110
78
59
140
128
87
52
92
136
156
69
100
110
69
80
98
87
87
156
79
105
76
69
43
88
100
69
69
80
78
120
127
87
118
151
120
125
118
78
120
96
121
112
156
107
69
151
110
162
103
94
76
76
115
69
89
140
148
136
111
69
96
145
96
119
89
106
80
88
127
80
80
80
120
113
80
80
69
80
197
111
69
69
73
109
128
89
88
99
110
74
76
52
126
76
109
99
94
96
122
127
87
54
175
82
52
87
78
87
78
120
74
111
129
78
69
117
140
156
122
102
87
78
126
113
119
74
116
76
88
114
78
66
163
131
78
91
138
93
69
160
80
119
146
103
78
80
104
80
112
163
69
155
69
128
144
87
154
121
175
128
76
120
155
101
142
69
69
125
85
115
109
156
104
152
138
87
99
96
113
127
123
54
69
117
78
163
96
104
89
92
92
109
96
150
114
69
163
99
106
127
88
87
142
120
110
146
80
78
181
80
184
109
76
120
115
133
78
120
80
119
119
76
129
69
119
87
78
125
88
80
80
107
69
113
85
88
115
103
98
76
69
80
88
116
154
119
69
78
87
132
119
78
109
143
93
110
83
93
99
123
80
124
146
131
172
148
134
107
87
117
119
122
136
107
113
111
76
80
66
94
113
69
110
98
166
88
145
122
80
94
99
68
131
106
119
88
80
88
69
146
75
69
109
110
87
87
91
80
80
124
135
154
99
147
155
93
76
145
89
111
54
134
128
78
145
136
128
146
91
89
54
128
120
131
103
106
89
107
118
87
78
94
201
93
72
76
146
67
136
120
102
87
96
134
93
117
103
112
101
140
106
175
102
69
78
66
63
72
156
117
120
134
76
72
69
99
60
78
175
78
175
69
80
134
69
87
94
76
175
76
72
127
83
92
69
152
101
128
197
80
91
69
110
140
69
69
127
120
134
78
69
78
153
175
92
80
80
85
118
64
141
69
80
94
80
72
87
69
128
80
109
142
120
104
101
99
110
52
69
54
123
99
91
119
97
129
87
76
90
64
72
96
130
88
78
58
87
119
109
91
119
72
160
137
119
80
87
78
101
161
162
118
116
140
96
113
172
82
54
82
137
88
72
99
120
175
139
91
120
120
197
85
151
134
107
96
119
128
143
103
73
66
112
105
164
175
128
136
154
76
134
134
88
136
119
154
164
175
105
115
114
185
69
129
156
175
101
88
87
183
87
96
146
76
107
110
140
109
118
97
160
80
145
78
131
95
102
137
145
120
120
127
120
99
111
101
151
163
102
101
107
74
54
80
69
54
119
80
197
140
112
88
54
118
134
80
116
112
60
113
120
81
115
111
92
183
101
128
110
124
118
121
80
91
80
109
128
94
124
137
80
87
99
89
146
80
69
122
156
120
72
87
94
87
155
133
96
132
78
175
154
76
197
80
117
96
114
126
128
113
143
126
87
140
76
87
119
120
151
132
157
80
108
95
108
106
96
197
136
140
80
106
133
80
134
72
175
120
137
115
96
136
137
80
104
119
69
75
71
134
89
95
99
74
110
94
85
80
156
89
75
106
76
112
131
69
115
78
69
74
163
175
113
146
145
112
93
107
69
112
112
136
92
123
106
109
69
122
107
94
126
154
71
105
80
87
127
148
100
87
87
99
130
125
88
120
90
140
80
128
131
80
119
119
87
119
128
120
96
76
96
88
88
87
94
99
85
80
80
89
69
120
69
120
111
132
131
175
136
80
112
98
78
86
69
52
136
120
124
123
121
64
94
129
111
69
80
80
80
87
148
78
99
54
131
54
80
197
78
88
76
99
119
72
122
106
91
78
64
69
163
88
145
107
94
115
78
80
103
64
72
127
131
99
106
101
93
80
147
80
68
103
89
134
118
107
58
107
104
96
80
175
121
125
76
93
112
144
108
87
107
80
69
154
99
201
110
102
76
124
151
121
174
131
88
85
140
76
104
138
169
80
117
99
158
91
69
85
107
93
99
128
94
155
91
69
76
136
76
80
117
66
97
100
119
118
69
156
87
80
109
91
113
103
117
69
88
80
98
134
94
142
93
91
76
54
140
78
58
107
88
99
121
78
76
144
88
119
88
80
114
144
69
88
107
69
129
80
89
132
69
80
90
72
119
131
109
116
87
87
175
133
133
146
174
119
119
112
154
80
110
175
78
109
110
76
87
99
106
78
126
163
185
89
113
76
52
89
154
139
132
110
112
80
111
100
94
93
75
93
107
80
110
122
102
96
91
93
88
131
80
69
69
114
134
98
96
87
141
69
56
69
147
69
121
110
109
130
89
131
175
109
120
119
102
148
148
87
121
69
156
109
69
80
106
81
125
80
87
76
121
136
87
156
134
94
131
138
89
106
80
119
131
66
75
101
72
140
89
151
119
88
111
115
145
115
93
74
119
113
120
136
93
104
87
81
110
85
90
109
145
112
69
123
126
78
69
69
99
109
130
109
96
85
136
99
137
80
119
90
72
87
83
129
163
119
157
143
148
133
99
137
76
107
108
85
143
164
90
154
120
134
117
87
115
69
120
140
131
80
76
80
163
95
80
113
125
69
104
64
72
89
69
117
80
60
69
87
112
131
72
103
80
80
209
54
124
113
128
145
140
117
109
87
80
119
80
128
89
112
85
112
107
96
69
121
110
122
87
101
116
69
127
156
87
78
107
124
67
131
94
119
98
136
107
115
113
76
76
163
69
119
110
69
80
87
87
117
80
76
96
78
117
143
108
87
107
140
67
85
76
103
78
80
93
94
78
94
54
76
80
69
69
64
109
134
88
80
69
87
87
72
101
175
66
138
94
100
118
117
163
151
146
87
72
137
69
107
112
99
132
175
122
110
175
120
80
169
101
71
80
80
114
124
80
80
151
138
121
108
119
164
119
100
175
69
80
102
83
52
109
78
87
107
147
143
113
133
123
80
80
52
132
91
131
147
142
111
119
166
104
120
88
94
187
119
119
137
76
159
99
118
120
132
143
99
119
114
69
95
155
199
95
106
106
52
103
93
115
69
120
59
119
140
113
134
103
109
63
175
155
140
134
106
96
87
90
129
118
156
154
54
123
69
121
87
69
80
80
109
154
143
69
69
119
87
151
69
89
117
119
110
69
87
116
152
93
119
79
94
113
88
131
117
76
87
154
156
96
115
106
110
126
115
93
136
99
96
68
151
150
175
127
163
127
175
148
131
157
130
94
106
113
87
69
80
87
64
133
109
117
127
69
119
91
121
80
99
133
76
69
133
152
63
119
104
112
112
137
115
78
147
197
104
144
120
69
103
120
91
95
87
122
119
99
100
127
78
104
121
80
175
156
112
54
89
117
197
121
109
82
82
133
69
102
101
78
95
113
145
120
163
69
152
69
102
69
90
101
85
67
69
80
112
124
114
80
119
43
155
160
156
109
119
107
93
111
80
43
76
96
96
96
144
127
119
74
80
119
120
89
134
59
102
209
116
93
107
175
119
80
69
128
76
89
175
78
118
123
76
101
87
114
110
80
118
80
80
128
183
78
78
86
80
112
126
107
106
175
69
89
118
128
127
76
111
94
85
149
91
102
145
119
106
110
125
104
109
99
164
136
87
94
132
80
126
120
96
143
99
128
163
148
87
99
76
175
87
80
88
69
122
78
104
80
123
98
101
88
78
111
87
104
148
106
137
127
82
120
99
109
78
76
80
71
130
136
74
78
128
93
89
137
155
128
76
80
107
143
91
99
72
130
132
72
118
121
151
115
109
67
69
94
136
160
109
131
52
107
136
101
88
107
127
69
119
98
69
145
136
72
80
183
119
68
71
120
131
87
119
118
99
151
91
152
82
119
109
94
80
109
128
134
88
99
127
76
80
117
80
118
165
72
91
76
91
123
126
76
109
63
80
105
127
69
146
145
80
97
89
107
136
89
101
91
111
136
78
135
75
100
91
96
112
120
115
78
146
119
111
115
113
99
120
69
89
69
104
69
94
69
69
72
132
85
69
54
137
124
156
143
130
69
109
88
71
83
146
136
94
120
80
89
80
69
106
78
119
80
175
117
131
174
66
64
76
76
113
117
93
154
94
64
80
100
119
109
114
118
80
94
69
80
146
183
174
80
76
122
150
75
91
129
89
117
80
72
100
127
143
69
109
121
128
78
80
174
80
110
107
87
136
104
99
101
98
91
72
89
90
117
74
106
80
160
107
112
96
88
109
115
80
80
43
64
119
143
80
148
69
117
95
52
128
129
87
136
89
74
156
119
80
88
156
104
69
133
78
128
80
78
89
83
83
102
80
80
75
69
120
113
175
108
185
94
109
85
95
101
110
151
115
120
88
113
76
104
107
89
127
52
76
128
76
119
56
106
100
89
175
43
69
63
99
76
126
112
80
133
156
87
110
69
119
104
106
78
145
106
120
113
89
99
87
69
113
113
80
76
52
119
118
134
106
78
69
92
151
104
93
69
106
52
104
102
87
93
130
113
69
121
69
131
64
91
88
73
175
113
94
157
140
107
100
120
78
74
175
99
69
111
94
122
69
172
107
52
107
153
144
107
80
106
72
91
76
80
107
101
97
89
69
103
83
72
110
80
154
110
98
69
127
107
54
76
151
116
113
107
88
85
87
98
80
78
107
89
115
94
117
126
121
101
80
114
145
99
80
106
80
119
87
89
80
87
87
119
125
91
134
123
87
87
54
131
138
142
120
107
80
106
69
92
93
76
128
120
164
93
149
128
122
160
156
138
149
136
80
155
109
66
88
113
80
137
101
72
88
69
101
175
75
112
117
80
69
89
87
121
155
96
136
76
87
87
121
87
96
110
78
175
154
79
113
100
128
76
91
154
75
69
80
136
76
119
109
132
110
119
88
99
128
96
100
138
154
72
89
92
69
118
80
87
154
116
109
56
133
143
91
60
118
154
80
113
134
96
82
80
128
165
175
69
109
120
87
80
152
128
119
87
80
176
87
88
103
94
76
175
76
130
154
119
109
90
104
108
52
104
95
115
96
93
154
112
150
143
139
93
72
131
74
75
69
104
89
88
76
69
119
150
123
145
197
80
130
52
96
76
69
94
78
98
105
134
94
87
150
132
131
80
119
195
164
131
122
127
80
69
87
128
151
80
110
138
150
125
111
69
102
80
112
197
92
72
120
120
107
78
128
96
144
89
73
104
80
119
81
144
80
75
148
54
120
112
131
128
106
94
109
104
89
175
43
152
132
175
99
111
119
75
66
98
127
123
83
133
76
111
116
130
102
90
87
78
116
80
86
94
87
80
92
119
80
78
119
92
79
113
197
110
141
87
132
145
105
78
88
80
100
197
97
94
80
100
74
119
87
85
80
120
78
134
101
107
80
128
80
154
96
126
133
107
106
69
94
154
89
78
128
164
69
79
138
99
91
69
128
43
93
110
78
151
91
99
80
134
105
107
122
185
76
131
83
112
83
80
76
94
103
80
107
150
133
78
106
80
93
54
148
100
76
94
80
134
98
99
119
145
87
136
76
117
100
64
80
106
80
69
54
99
134
126
130
69
91
104
118
74
115
107
98
85
87
112
117
113
142
96
163
132
134
152
78
112
76
69
140
165
127
132
75
175
143
102
131
120
87
83
128
154
83
87
119
80
69
154
72
87
78
80
80
142
101
136
56
87
129
119
80
109
153
113
107
78
87
175
145
155
82
94
106
112
103
185
80
112
172
89
164
107
88
72
104
112
107
120
175
83
106
88
87
87
137
87
69
113
54
89
69
114
174
115
87
98
80
76
117
79
96
134
106
99
128
78
88
112
125
137
122
128
126
111
156
99
88
114
85
107
99
73
154
87
87
69
134
120
99
94
78
111
104
110
137
156
108
134
76
83
81
118
94
83
134
69
80
102
107
107
117
76
156
80
119
118
79
80
109
69
83
119
154
131
101
122
91
154
78
137
112
76
126
110
133
197
87
71
117
89
72
113
138
69
89
120
119
87
129
109
78
80
99
128
120
146
78
175
119
94
91
121
96
80
89
106
97
155
80
76
113
117
106
175
74
100
76
131
118
155
85
99
119
101
126
105
80
99
140
87
91
87
94
72
133
80
111
78
140
87
69
119
143
89
110
139
69
78
94
137
134
78
120
109
94
131
121
119
160
120
175
100
109
99
72
89
119
87
119
107
87
80
101
87
109
112
106
104
100
113
102
109
119
138
135
112
75
121
94
78
52
95
69
115
105
93
143
128
120
164
135
80
136
120
93
102
114
152
107
128
78
91
78
69
80
128
117
137
123
80
54
114
148
117
106
80
133
144
121
104
96
69
104
101
175
120
111
80
80
135
152
132
172
93
175
156
112
116
87
197
78
68
120
82
163
119
163
118
109
143
80
110
175
197
123
158
94
144
104
112
67
69
76
89
127
89
76
121
118
76
52
80
73
125
88
89
96
92
99
80
119
140
95
87
87
155
80
148
132
93
140
77
137
69
58
90
128
87
101
73
117
175
78
178
58
76
119
117
130
87
94
142
88
69
69
121
87
89
89
113
89
197
99
104
175
140
78
113
111
154
117
87
110
159
107
128
56
100
137
136
69
80
136
108
185
94
134
119
160
72
164
175
69
120
141
101
105
142
119
183
69
79
73
115
110
119
127
89
107
106
69
131
106
131
121
138
69
113
146
88
130
147
147
91
109
101
80
69
141
95
78
69
95
159
121
88
109
80
101
80
201
54
113
131
98
119
117
106
107
154
69
80
87
113
74
131
85
121
131
112
69
119
134
94
79
107
128
71
76
80
140
69
102
113
80
78
175
154
69
137
80
113
94
128
128
154
129
87
86
76
94
80
78
80
87
112
140
90
148
119
119
110
76
111
87
112
116
163
109
106
101
117
76
151
58
120
116
80
121
113
69
117
110
104
104
128
121
120
89
91
109
110
69
165
80
136
69
156
69
113
132
94
69
116
85
98
83
89
76
117
175
118
146
109
132
128
99
156
78
111
80
115
112
78
94
124
91
80
101
120
121
43
119
156
175
110
161
134
69
80
87
151
56
133
69
87
80
89
121
97
138
93
123
94
80
153
93
175
112
80
155
91
120
187
142
58
131
87
189
93
76
154
80
115
80
87
99
106
136
108
78
111
103
69
93
148
142
130
155
101
92
164
119
80
127
101
154
115
108
80
96
147
151
115
138
123
145
93
128
159
175
72
91
87
115
94
197
90
52
52
104
181
147
76
89
106
79
87
133
101
69
114
104
132
119
107
102
107
43
78
80
111
69
80
80
112
80
87
87
175
101
72
87
72
154
78
119
144
87
69
112
76
163
119
117
123
106
175
109
136
76
109
80
107
113
106
163
147
113
76
100
94
94
101
80
119
76
130
125
93
76
94
157
80
82
76
80
131
157
80
94
78
76
119
124
150
80
99
131
109
88
105
119
143
93
160
106
128
102
156
102
80
76
80
71
126
121
69
120
112
129
122
99
83
175
118
120
69
96
88
78
102
91
87
99
121
132
72
107
69
101
63
90
129
83
76
155
87
154
123
104
156
94
69
69
96
121
80
80
136
131
119
89
83
85
76
76
110
87
80
99
88
87
78
87
136
76
96
80
88
120
158
88
112
107
183
119
76
117
155
141
80
175
43
155
80
52
112
91
137
120
113
121
76
73
126
107
94
87
122
78
113
117
156
52
98
90
99
88
96
87
132
99
174
87
119
111
134
112
54
74
68
128
94
104
57
129
162
140
106
128
104
91
130
128
69
101
91
126
128
136
106
69
154
109
88
107
87
131
80
115
80
80
150
99
112
106
99
113
111
69
102
87
52
75
120
120
101
43
80
137
52
107
123
129
80
74
76
96
163
163
107
128
69
110
154
99
88
69
128
109
127
80
76
99
118
122
111
119
102
91
199
156
93
106
88
144
54
69
69
80
155
201
80
84
181
117
121
117
87
120
126
59
80
120
163
112
197
69
95
85
69
109
88
87
123
119
119
120
140
78
119
101
117
125
103
141
104
137
80
94
80
123
76
143
119
119
121
137
154
131
104
118
80
102
120
76
99
80
134
174
102
76
107
113
43
104
80
96
89
89
110
121
109
93
69
94
124
164
81
76
112
143
110
103
148
92
197
69
175
99
155
81
130
100
129
110
69
89
101
79
78
109
91
107
72
132
90
110
93
78
88
69
117
146
96
187
129
126
104
80
69
87
113
121
106
134
109
88
80
109
87
100
112
93
76
113
128
69
91
130
126
76
72
134
81
117
163
89
85
136
80
128
127
98
128
103
87
154
113
78
93
72
101
80
95
76
169
87
126
197
107
109
87
150
130
102
127
108
145
74
148
93
112
87
69
78
119
130
99
89
88
88
80
79
64
115
76
155
76
127
85
94
92
97
129
158
101
120
94
79
97
134
110
99
107
107
117
74
112
80
111
106
109
92
78
131
175
120
128
125
98
175
117
72
87
142
80
110
156
121
156
107
145
95
131
105
80
69
112
119
121
120
69
102
87
135
87
80
80
79
80
72
89
76
79
106
69
93
140
120
76
69
114
92
117
145
80
101
124
99
101
80
121
102
80
107
126
144
127
154
107
117
80
99
175
132
133
78
77
133
134
80
110
154
104
131
106
107
69
148
99
72
129
85
128
69
149
136
69
87
80
89
78
175
143
109
146
87
142
76
69
69
152
78
169
72
88
90
78
118
109
111
110
143
119
133
80
99
80
199
155
76
95
132
63
88
120
109
102
121
120
82
120
142
80
134
122
119
121
93
154
153
134
87
112
102
69
88
52
81
80
121
120
144
87
140
69
94
99
109
86
114
153
121
90
101
119
187
137
127
80
106
120
69
89
69
128
69
76
120
89
153
89
76
75
94
136
111
154
107
127
80
125
130
82
80
80
163
120
120
131
111
88
104
80
104
90
87
92
100
107
87
88
99
120
154
117
159
80
66
130
89
59
154
69
111
132
114
134
128
87
131
99
89
101
166
120
104
63
93
197
91
78
138
107
89
166
128
114
132
197
93
76
143
113
132
93
80
83
93
145
124
128
117
125
109
81
114
112
69
154
120
74
97
117
69
155
141
109
106
112
128
121
88
111
104
79
78
147
120
96
142
88
114
87
117
91
107
72
119
76
91
119
120
106
115
163
76
107
80
147
76
156
129
113
87
88
94
104
81
78
78
114
106
112
175
76
101
69
80
136
94
89
102
147
109
134
104
69
94
69
88
136
154
99
123
128
104
140
99
109
129
69
140
78
119
127
155
147
69
69
155
80
104
175
117
97
87
119
78
147
69
76
131
92
80
136
89
69
54
104
79
115
80
63
71
69
148
154
114
80
112
71
113
91
80
76
87
87
140
108
104
80
120
96
69
83
72
102
94
119
87
93
78
109
146
88
156
121
94
107
80
120
74
128
72
129
94
137
121
76
79
101
87
69
134
91
148
118
80
104
120
68
87
118
78
175
89
78
135
113
102
88
154
54
94
80
104
69
76
157
146
69
89
109
72
92
88
120
78
94
94
126
57
130
103
78
143
111
71
99
80
69
160
95
172
76
87
107
69
69
110
69
115
172
69
89
118
91
114
152
136
175
160
197
67
89
110
109
112
134
101
91
78
70
99
80
107
104
80
80
127
52
121
132
94
76
128
120
107
69
127
103
131
101
101
117
80
89
78
94
113
80
174
69
114
131
154
93
119
119
120
80
120
87
134
118
118
69
111
104
146
92
80
66
80
155
126
150
141
110
89
88
146
99
128
83
132
138
133
155
72
52
164
78
94
80
133
87
117
89
126
109
87
121
94
95
143
131
69
88
121
199
92
74
80
84
76
69
141
132
96
175
159
104
67
69
71
109
99
76
174
131
117
87
118
164
143
104
108
78
88
52
120
69
88
80
133
117
156
76
120
117
131
143
120
151
80
117
80
164
108
164
119
92
128
78
127
132
91
69
80
131
109
119
76
136
117
82
80
83
115
130
76
80
80
69
54
175
134
174
145
82
109
92
136
119
120
87
88
88
98
134
104
78
112
199
140
118
128
109
175
69
120
126
87
80
69
82
80
157
144
80
121
69
119
87
137
76
80
99
80
69
133
89
131
155
123
94
80
95
123
109
105
69
112
77
126
128
107
104
154
119
112
113
54
105
120
107
124
154
75
95
94
80
119
78
76
143
87
72
78
109
78
143
80
91
122
82
99
80
80
113
111
92
117
96
122
88
100
93
118
89
120
87
80
136
98
102
175
143
110
154
140
103
88
80
128
175
95
109
104
54
132
113
93
119
113
93
69
72
71
113
119
175
175
111
88
69
119
58
80
140
78
69
118
74
72
136
69
93
80
110
88
110
152
83
117
64
116
127
119
108
80
129
118
94
128
79
136
82
122
133
148
142
199
137
102
98
123
159
99
112
120
175
69
174
107
72
136
78
111
151
109
140
197
143
134
69
104
140
87
104
109
78
132
148
78
72
96
66
119
104
117
166
87
122
87
112
78
93
128
155
163
94
113
72
115
93
150
110
91
119
113
87
142
85
137
121
80
77
112
80
175
117
105
69
106
107
143
120
52
104
69
119
93
134
106
87
133
120
136
109
94
119
150
134
134
99
93
80
99
87
130
149
126
80
88
102
87
69
138
91
76
89
113
126
80
120
85
119
83
175
109
80
154
148
107
151
87
128
69
69
93
87
109
131
146
134
120
128
80
80
114
80
81
143
99
121
104
89
69
96
197
94
76
78
120
121
124
120
142
117
69
67
76
154
100
82
80
87
142
107
91
91
87
128
85
72
88
72
117
99
83
76
150
106
123
67
78
140
87
94
134
69
80
94
104
156
80
134
103
106
145
74
80
106
98
132
154
136
96
107
162
110
80
106
80
134
69
113
145
89
119
151
52
80
106
121
147
76
88
76
110
89
175
109
89
72
87
87
99
146
69
76
146
121
140
119
137
83
102
115
104
109
80
54
89
80
154
69
130
76
148
209
129
136
112
69
140
80
89
69
76
115
87
79
76
100
80
100
80
119
143
75
75
146
120
109
80
87
151
156
69
107
76
95
119
69
173
80
69
95
54
87
149
94
106
133
137
138
80
136
122
142
89
102
94
151
94
103
138
151
121
74
87
115
99
99
54
91
105
106
80
69
140
82
112
69
67
175
154
68
107
175
175
74
146
154
87
80
125
110
94
121
112
80
69
120
100
80
117
89
140
80
150
80
90
96
155
88
80
128
107
88
147
155
69
69
80
100
98
119
136
92
93
121
106
80
96
110
99
109
54
126
109
137
88
69
148
94
113
76
125
69
74
140
120
117
83
151
126
119
57
80
91
99
87
94
123
66
114
80
102
80
126
163
121
99
67
80
101
94
137
102
155
118
69
80
85
109
85
78
99
107
108
43
94
123
102
104
127
78
185
124
87
87
120
121
128
126
142
87
69
134
101
88
146
69
76
129
75
99
123
91
113
113
136
134
120
136
104
151
68
140
93
100
106
112
80
119
80
78
109
98
111
155
71
69
127
175
105
120
110
69
112
109
101
69
87
133
87
76
110
74
164
76
99
125
95
85
111
128
131
119
96
130
120
123
118
80
72
107
199
133
175
151
100
107
143
121
80
110
96
143
91
94
128
107
69
144
104
93
113
88
120
69
120
121
67
88
76
119
106
135
110
133
54
120
91
175
156
76
80
121
89
113
80
89
107
107
119
165
88
80
110
89
100
93
92
69
113
121
103
111
120
93
109
93
140
137
144
106
88
130
103
135
122
87
114
64
133
119
113
88
134
76
69
146
87
69
80
119
107
119
75
201
104
104
80
87
69
87
114
110
78
109
117
163
91
106
87
121
87
101
128
99
80
150
131
152
127
99
143
143
112
94
87
107
72
78
113
120
87
87
140
80
92
75
110
107
102
87
128
103
58
201
80
87
99
87
108
175
94
132
127
93
121
134
120
129
78
104
93
90
69
67
80
145
119
145
76
96
120
156
76
151
80
127
163
123
69
89
119
78
148
80
85
80
104
88
69
105
175
76
69
119
100
102
130
43
82
103
120
93
119
120
112
128
92
69
72
111
69
78
64
154
76
113
120
69
80
88
132
78
137
107
175
80
130
112
129
80
136
140
131
119
110
197
108
69
98
137
144
75
96
119
133
87
76
87
109
131
87
197
128
107
119
83
109
120
106
133
140
132
176
69
69
117
88
117
91
88
120
114
69
87
87
94
102
99
174
150
110
119
117
76
93
76
134
104
128
109
121
107
130
110
132
135
72
85
113
131
89
89
80
113
87
119
64
124
106
74
76
155
69
78
148
157
119
99
134
80
99
76
175
80
89
114
87
133
140
85
131
117
89
120
110
175
96
144
106
175
69
106
104
69
130
80
72
104
106
119
133
89
76
181
69
87
110
127
140
119
78
134
80
134
101
124
147
132
122
99
120
137
114
199
80
156
76
175
87
80
120
97
140
69
156
122
128
89
130
114
153
154
80
80
96
83
113
154
131
102
80
69
116
136
140
108
89
119
136
69
113
144
76
145
76
91
110
84
140
69
99
107
96
117
94
101
80
160
141
87
159
128
74
211
72
98
95
111
151
117
87
87
88
90
143
131
72
109
134
120
80
161
85
125
94
87
151
128
107
108
106
110
94
76
59
114
91
106
131
136
110
134
175
74
87
163
102
104
69
78
76
104
106
76
107
95
89
93
119
136
76
69
43
92
91
114
116
89
115
63
143
118
87
95
87
118
107
88
117
76
87
76
82
100
57
154
104
72
74
106
126
72
78
112
136
80
88
157
94
96
142
113
134
199
103
87
148
109
156
120
80
87
106
120
118
72
122
154
111
120
146
69
78
100
158
156
72
69
119
68
100
156
80
131
155
67
156
87
80
111
88
120
80
120
69
91
109
79
80
74
126
110
80
131
78
94
175
76
154
153
126
120
130
109
87
140
135
149
120
132
140
78
155
103
118
107
72
69
115
69
111
94
72
127
131
69
94
69
76
81
104
94
85
100
119
154
130
70
107
154
120
141
129
123
94
197
107
56
115
80
119
134
142
80
88
121
106
80
128
96
91
81
76
129
129
118
122
113
78
127
197
97
128
72
80
109
103
89
72
76
197
87
80
54
112
60
126
94
119
90
112
109
76
87
128
104
142
126
109
109
102
120
87
152
155
119
114
107
111
87
96
78
120
103
154
95
121
69
97
119
96
78
119
140
112
80
114
136
85
123
113
75
104
91
109
85
112
69
119
105
107
88
110
80
119
93
112
54
146
119
155
100
56
136
67
145
110
88
69
81
78
94
186
101
80
126
129
88
89
128
88
88
119
115
145
120
90
94
104
148
88
89
69
106
119
69
78
113
123
125
54
88
96
80
175
130
109
89
69
157
76
119
140
128
71
87
102
69
154
89
112
119
106
175
89
114
153
131
88
92
78
114
72
89
96
69
174
101
86
87
88
123
87
80
69
76
80
134
87
76
127
114
125
127
83
69
94
75
76
95
76
122
147
114
133
140
86
69
154
128
67
134
87
109
109
87
119
59
78
120
80
80
129
71
150
76
109
87
80
131
85
120
128
96
146
104
80
119
69
79
80
146
107
119
151
133
87
92
91
76
87
143
121
104
136
121
88
87
94
79
76
106
110
152
120
87
87
91
69
74
134
169
151
93
69
106
156
118
95
85
78
89
109
148
69
87
107
124
78
122
89
104
87
80
100
76
96
74
87
76
119
100
78
175
128
87
69
124
163
156
80
96
146
87
154
109
75
88
107
69
69
134
81
96
87
175
87
136
87
121
151
120
108
88
122
181
69
144
69
69
73
104
159
87
111
106
150
69
133
117
116
76
117
137
94
66
100
186
94
125
127
78
118
122
155
78
66
99
120
163
123
102
132
148
99
101
69
95
128
80
80
117
74
72
101
115
96
128
87
69
80
104
87
85
113
76
80
175
134
153
76
98
69
104
80
98
175
59
87
100
91
128
87
118
90
148
160
101
68
104
152
72
148
140
87
127
78
143
59
104
119
80
76
54
141
175
80
81
96
80
69
131
109
99
122
88
99
89
107
106
107
103
128
80
80
76
76
89
76
78
152
124
76
78
130
59
116
100
69
113
96
119
113
154
154
124
76
96
118
201
110
94
69
136
104
155
156
87
106
92
91
72
109
126
87
78
78
119
128
70
131
80
133
102
112
96
156
129
117
109
104
154
108
120
91
199
100
69
78
143
106
181
69
72
100
112
104
144
115
78
69
133
79
85
69
82
112
123
112
69
80
136
142
94
101
80
83
78
94
144
120
144
135
112
120
120
89
80
115
113
128
87
107
78
106
120
116
113
107
87
80
78
76
88
73
80
199
69
103
166
165
134
58
101
144
107
122
108
69
69
69
72
131
90
125
80
120
132
128
94
129
80
87
87
164
69
163
127
113
80
128
106
89
119
131
119
89
69
80
80
128
120
90
112
123
128
109
110
101
80
131
126
75
69
146
87
120
128
123
143
128
120
125
91
166
149
80
104
85
80
136
87
80
117
113
112
98
76
104
113
136
76
69
98
130
154
119
126
197
72
110
122
91
80
127
93
69
154
107
80
76
69
99
145
83
152
121
69
146
154
107
93
119
185
115
110
52
79
107
145
117
136
154
128
108
76
76
100
78
69
80
144
187
85
134
151
80
175
91
90
85
119
95
80
119
118
145
154
122
101
99
107
87
94
88
80
80
175
125
175
135
76
69
140
131
78
87
99
116
94
118
147
155
78
107
101
69
69
197
91
127
69
104
109
134
87
138
89
80
101
78
72
147
112
101
113
80
87
106
134
69
84
80
140
129
96
101
69
80
80
96
106
69
151
102
117
94
93
80
175
128
69
99
91
89
80
96
131
156
79
156
127
69
101
143
89
72
111
106
107
144
101
119
145
112
80
122
69
109
102
110
102
72
69
94
126
197
134
116
78
90
128
134
142
88
87
144
107
130
80
127
104
91
155
120
109
119
80
128
103
91
137
80
136
89
163
54
72
102
99
121
109
134
119
99
119
76
113
88
175
89
72
133
95
80
107
80
121
78
69
76
69
68
52
69
89
74
76
72
80
156
69
54
69
134
89
80
76
69
113
134
88
89
107
95
121
156
144
120
117
87
121
131
56
104
123
87
68
88
189
104
80
87
99
140
91
155
134
80
80
94
114
110
149
101
80
107
52
78
128
109
88
87
197
154
52
119
134
119
132
83
117
127
108
96
69
89
110
99
145
69
121
92
89
98
87
119
72
99
78
175
135
87
123
94
80
119
80
76
122
80
80
91
115
80
175
78
87
96
69
145
147
69
172
94
69
145
136
112
72
101
122
114
136
88
175
112
130
107
108
86
119
175
80
104
93
80
69
136
94
80
151
119
80
101
176
76
106
175
107
74
88
80
150
119
99
113
129
85
154
54
69
80
110
89
128
106
156
159
92
124
102
99
69
95
105
100
76
76
104
121
109
109
127
102
80
131
146
96
114
76
119
78
146
67
156
87
78
156
114
90
134
156
134
69
115
120
134
109
119
106
162
107
121
80
99
79
56
80
86
87
95
119
117
137
80
54
156
136
152
112
95
112
136
151
67
74
88
69
119
106
106
143
154
79
142
80
127
93
110
128
104
104
152
91
83
67
110
115
151
126
104
145
101
117
119
139
110
99
147
109
80
156
94
80
175
120
80
69
119
128
80
125
78
136
66
117
67
100
117
151
120
87
89
123
94
69
133
90
110
76
74
107
124
103
140
131
164
78
107
99
95
112
140
165
102
116
87
106
80
104
69
88
120
119
134
101
140
78
110
66
132
69
67
111
80
78
69
81
100
80
73
69
80
104
93
78
136
92
80
74
124
127
116
197
110
80
76
78
100
104
112
94
80
98
120
82
80
72
143
80
110
69
127
138
80
80
94
76
83
118
161
136
101
91
101
85
52
125
124
106
106
112
72
104
101
72
90
112
109
155
75
78
80
136
103
80
117
134
109
69
69
88
163
89
155
151
199
100
144
135
80
118
137
104
78
88
104
80
76
104
183
87
155
118
90
69
85
87
120
120
72
87
128
78
164
69
109
96
142
112
79
121
136
93
89
118
127
74
69
140
78
110
140
138
115
101
69
104
76
80
80
69
74
101
151
134
99
111
87
117
99
106
83
78
88
149
88
119
131
76
107
111
119
80
85
80
120
96
120
124
76
78
133
80
87
203
101
93
107
69
96
89
95
78
154
120
132
156
80
76
54
67
90
89
78
56
109
95
156
106
69
94
80
80
118
146
66
113
126
139
88
96
124
76
111
140
140
120
94
94
80
88
104
127
93
113
131
109
72
112
112
96
76
154
99
119
83
137
127
87
120
80
136
113
113
136
74
133
80
117
118
181
96
144
94
80
119
114
121
112
130
143
136
154
101
165
76
88
102
85
104
136
117
175
94
121
72
82
98
117
76
100
120
75
80
83
80
109
54
102
143
110
125
107
107
129
131
156
69
69
185
67
98
78
124
76
77
87
106
87
135
83
80
89
88
89
69
87
88
69
127
69
133
110
140
97
80
89
94
80
98
69
99
154
69
131
95
104
69
78
87
119
107
100
67
88
66
115
85
96
100
94
82
131
96
119
52
69
175
185
76
72
93
140
141
69
76
87
106
78
112
69
121
146
88
83
88
175
97
69
140
106
106
120
107
137
100
120
132
76
87
72
82
80
106
80
119
98
89
78
155
94
69
87
92
104
87
76
154
88
151
133
91
107
134
101
163
120
72
93
155
122
107
88
175
126
164
109
181
54
120
95
159
119
107
80
136
83
107
181
121
80
69
163
76
106
115
80
154
80
76
119
143
87
80
87
56
94
71
80
113
120
80
107
107
120
69
126
100
103
139
78
175
133
76
119
78
69
69
78
107
78
80
128
120
108
80
87
120
87
67
80
78
121
54
131
99
100
112
109
88
69
69
143
147
80
87
110
177
155
101
98
69
94
128
129
105
78
117
76
72
159
120
78
87
107
115
113
102
147
120
145
104
117
67
88
114
122
99
122
112
87
107
140
80
111
80
69
78
76
107
101
145
154
106
80
134
145
130
140
99
165
120
76
104
69
151
89
131
131
163
140
80
130
156
122
69
120
78
93
87
102
96
80
133
104
103
80
85
154
69
89
134
101
88
134
136
87
96
69
102
130
140
96
111
80
82
99
78
69
52
110
133
152
80
76
127
117
112
80
87
110
107
128
133
89
109
156
69
69
134
197
185
114
127
57
131
80
66
69
124
136
93
98
78
80
175
121
124
98
72
151
93
124
118
120
140
87
101
87
80
103
87
155
52
74
142
110
119
93
117
154
131
121
134
175
57
69
52
80
87
52
136
93
124
72
88
120
100
80
110
128
95
122
109
76
123
154
117
79
103
88
80
90
140
80
69
69
162
121
80
135
154
136
72
103
78
87
120
69
127
120
134
78
88
126
76
110
154
99
80
108
80
110
145
110
80
114
128
54
72
69
140
154
89
154
80
123
128
113
80
104
78
68
112
107
109
125
69
91
143
107
155
96
122
154
128
123
109
114
87
122
88
175
106
107
120
69
88
69
156
104
119
199
80
186
119
100
76
78
155
101
197
76
155
80
89
106
101
118
151
69
93
76
136
82
121
156
75
76
85
186
112
80
178
109
69
96
119
133
120
93
80
69
85
74
80
110
87
128
93
72
76
156
156
94
128
175
134
121
134
91
89
87
155
74
77
110
111
87
128
69
80
76
164
78
116
104
56
158
119
134
107
144
102
87
72
106
94
109
68
140
80
110
117
59
89
87
119
69
154
107
117
89
80
99
113
126
82
76
80
127
107
88
123
111
120
175
82
117
146
117
120
80
106
125
109
96
69
113
67
196
146
69
80
101
133
154
66
146
56
87
129
103
69
115
146
79
141
80
120
118
99
103
96
120
127
106
66
128
160
78
102
88
143
130
103
96
109
87
107
91
126
134
107
131
69
110
91
92
104
64
72
127
78
112
134
119
92
120
109
121
134
127
113
97
76
107
87
151
117
116
69
78
80
87
90
109
80
78
69
110
109
159
125
124
69
120
120
119
156
99
151
80
120
106
76
56
107
100
106
140
99
94
107
154
78
54
104
154
87
99
72
78
109
151
78
88
104
88
76
87
104
151
78
80
80
139
96
183
100
104
151
80
87
125
107
76
80
152
140
132
108
104
85
94
109
76
119
136
69
78
117
118
89
145
87
80
72
76
132
52
127
106
133
89
54
127
175
80
89
152
69
74
175
105
69
84
197
80
174
87
109
89
103
80
80
131
164
106
134
76
69
140
80
80
107
121
146
104
120
93
88
97
78
109
120
87
171
166
80
101
175
69
69
101
164
119
113
69
131
128
69
80
104
107
155
85
163
120
69
88
134
163
96
125
87
117
101
160
69
126
126
199
85
110
130
140
78
175
101
175
199
78
85
117
129
118
76
117
93
146
69
94
94
125
117
93
107
56
69
114
76
136
112
136
88
85
80
80
127
110
111
134
80
145
93
112
76
87
69
76
87
76
110
119
80
80
146
145
99
128
112
94
71
175
92
131
76
80
117
145
140
134
92
129
80
129
91
120
157
93
164
89
87
69
128
130
103
87
134
123
136
102
144
175
98
80
119
136
121
106
94
175
103
69
106
156
109
119
72
115
69
76
175
106
106
76
100
100
94
119
103
87
103
128
78
110
91
137
99
94
133
91
68
69
119
91
69
80
69
137
151
96
78
99
69
134
151
85
93
112
66
104
69
52
160
79
150
126
86
143
115
52
129
80
95
145
88
94
80
118
118
147
109
89
119
125
156
80
119
116
123
127
110
119
100
120
102
141
80
109
80
132
112
99
138
164
154
164
80
76
74
106
80
80
112
148
80
80
87
154
162
67
80
87
114
110
78
117
89
111
137
134
69
132
56
87
117
121
150
93
115
87
163
89
80
78
121
88
77
175
78
102
197
116
162
149
104
99
156
136
76
128
80
93
121
87
153
101
110
98
80
106
122
102
154
89
99
93
69
136
76
88
106
120
87
145
175
110
107
101
101
104
136
197
150
102
113
80
88
94
80
115
133
155
69
119
69
76
87
76
69
113
151
67
69
87
120
104
74
111
109
106
128
134
104
133
128
78
126
67
120
120
94
111
98
87
69
149
69
90
120
80
175
76
69
116
119
120
134
72
107
92
115
121
119
96
119
114
157
80
78
87
119
108
99
90
60
76
107
128
89
137
69
80
148
132
128
185
114
80
80
109
69
141
99
54
151
112
123
82
79
107
117
93
107
120
149
109
93
175
175
156
115
129
150
76
107
115
69
154
145
83
80
101
69
76
87
80
127
112
107
74
80
80
96
86
114
134
128
80
78
106
76
98
126
76
107
143
134
93
104
107
97
89
100
100
101
148
201
99
119
139
88
102
147
136
133
136
69
76
118
109
80
78
85
175
117
107
69
175
123
66
107
103
80
80
82
136
76
110
124
104
150
78
85
93
96
89
154
79
119
80
80
151
87
120
137
174
85
80
78
89
144
93
99
58
86
89
119
119
93
54
119
83
108
71
109
119
117
130
101
155
87
91
120
78
143
93
148
93
91
99
87
54
69
87
107
78
80
80
120
120
128
119
127
132
101
104
139
131
110
91
88
175
106
82
69
120
109
121
74
119
137
119
76
140
136
75
76
87
107
80
88
93
112
99
120
175
140
115
199
80
154
183
69
80
160
89
76
195
69
69
137
69
80
69
143
140
87
104
69
43
94
124
119
118
110
106
99
87
64
109
69
78
79
88
87
106
128
134
80
87
155
80
56
75
102
87
80
69
99
106
144
101
175
146
91
112
78
87
143
138
78
99
89
110
120
114
155
137
110
93
123
69
142
89
87
121
94
60
87
109
155
76
112
94
131
83
69
69
133
89
94
74
87
87
80
197
154
131
76
98
83
80
76
98
93
157
119
101
78
164
69
78
96
119
140
98
107
69
89
80
72
72
95
76
52
106
94
69
78
120
76
80
112
104
197
119
155
119
75
87
78
98
128
109
119
92
114
154
80
119
163
91
123
99
140
115
80
127
94
87
175
93
80
128
80
88
103
140
110
84
94
134
175
94
113
76
129
110
110
113
148
64
102
131
89
80
94
175
83
87
110
112
136
106
89
106
101
72
106
100
80
52
137
69
89
136
156
107
104
151
106
80
104
95
159
80
101
156
109
118
122
89
189
80
144
102
98
91
102
99
80
76
98
93
88
100
106
99
78
119
66
152
175
156
131
106
154
88
88
87
83
118
208
129
100
76
156
76
185
136
85
142
120
74
89
113
136
80
117
88
148
89
102
107
128
123
69
123
69
96
106
76
175
104
119
69
113
69
78
94
69
156
120
118
106
80
78
112
144
129
106
181
88
106
113
98
121
71
72
104
133
131
140
104
82
119
112
64
69
175
90
78
132
128
119
130
83
95
134
139
131
127
83
78
87
76
69
101
87
96
122
77
119
102
87
134
52
131
93
115
99
163
102
98
87
76
116
121
69
148
69
80
82
128
119
67
96
80
104
138
148
117
69
130
134
93
112
126
175
136
115
80
80
128
72
89
134
80
89
128
154
87
148
127
180
69
119
71
119
139
69
89
80
88
69
112
69
69
69
137
118
104
175
91
64
76
97
134
98
91
171
87
109
69
87
83
119
96
91
111
137
145
87
110
145
69
134
54
96
82
78
140
88
78
107
134
131
120
112
69
117
69
176
76
69
69
127
87
132
103
99
88
128
106
74
93
64
69
69
80
87
128
131
123
114
141
67
119
112
129
101
74
87
96
120
68
80
167
78
78
102
78
69
140
115
78
125
166
104
153
90
72
110
108
175
156
118
111
110
128
149
102
106
120
106
85
78
99
134
69
119
64
80
175
115
87
113
101
83
174
185
87
109
99
136
175
101
130
154
128
99
80
156
82
87
155
89
59
131
89
89
131
106
69
101
106
93
67
67
67
78
156
101
134
150
117
151
89
119
80
80
122
151
144
121
69
109
104
151
148
119
165
117
155
125
197
104
162
121
99
80
127
160
138
127
134
107
101
145
80
76
124
129
174
80
80
76
104
91
110
91
131
133
152
80
76
106
97
43
113
69
89
91
80
115
88
79
80
151
80
56
110
88
113
98
99
80
100
64
135
69
82
87
97
151
69
80
131
78
93
121
163
94
134
80
80
80
83
93
69
87
131
119
56
131
69
120
72
119
140
127
114
87
80
78
99
126
72
120
155
94
156
128
113
113
78
110
109
104
87
160
117
76
110
78
140
122
130
92
119
72
151
80
129
151
146
115
113
119
97
87
156
80
134
80
137
94
109
106
117
69
69
78
107
102
58
137
69
151
98
94
76
87
119
154
80
107
121
75
134
119
80
94
107
76
71
163
94
80
128
104
78
175
67
89
120
80
76
119
64
52
143
80
69
80
78
94
156
69
77
76
80
134
129
113
99
93
107
99
106
80
90
107
154
108
80
106
119
140
112
96
93
136
93
130
87
155
134
117
77
109
127
113
121
155
107
80
118
88
154
111
78
86
84
78
112
82
91
78
132
114
99
106
119
80
129
94
146
85
183
113
112
80
126
101
128
104
120
131
87
143
80
52
80
175
112
143
131
83
134
80
78
121
80
76
117
76
129
116
69
131
99
143
91
121
121
78
142
155
99
69
131
146
117
132
129
94
133
69
89
91
89
88
104
88
120
121
91
115
85
106
78
127
88
109
76
127
107
99
87
139
87
104
83
83
145
85
69
107
117
135
99
69
109
148
120
69
74
96
80
69
119
91
99
88
151
130
128
119
128
106
76
106
154
119
43
99
134
185
99
93
101
139
165
99
117
125
72
94
80
76
99
109
87
125
108
72
121
117
69
68
123
113
80
125
109
80
159
69
111
136
156
201
146
114
91
78
112
127
87
164
147
76
87
113
88
175
80
129
80
98
101
113
174
91
149
110
175
143
109
89
131
87
175
69
107
80
69
145
119
110
80
115
143
175
128
72
157
80
104
63
88
163
125
145
120
89
122
127
78
78
93
107
88
78
164
80
69
131
119
140
72
136
128
121
136
69
87
124
119
56
115
155
134
112
121
128
114
106
101
96
146
124
107
93
79
128
131
131
110
93
122
120
60
83
126
78
90
121
116
121
130
102
102
125
134
103
110
117
102
146
121
156
96
88
88
76
132
113
69
129
76
78
64
100
156
83
76
80
104
80
124
87
133
119
96
134
136
94
120
145
123
69
89
131
80
146
152
177
110
103
93
118
156
114
175
113
123
71
124
156
75
170
85
76
154
155
136
169
151
69
163
93
155
132
78
79
160
123
154
113
106
172
134
94
121
87
74
107
80
107
119
136
119
157
80
161
69
105
80
146
80
69
133
124
103
89
109
101
78
133
118
94
92
163
109
89
80
136
76
114
132
166
94
97
69
107
80
145
130
56
80
132
145
157
136
80
80
88
120
80
80
121
71
80
89
69
78
119
99
131
87
89
99
96
156
87
80
110
88
111
117
69
134
52
89
76
80
112
120
56
80
119
89
90
107
79
109
137
94
144
101
54
128
155
120
98
156
106
136
80
76
91
163
99
109
89
91
100
87
72
99
93
143
114
93
56
118
110
99
76
117
164
88
140
140
117
67
78
89
107
80
91
104
129
88
110
88
95
114
80
131
119
89
69
138
169
164
105
120
199
113
69
92
120
85
119
87
94
104
76
80
119
117
117
89
109
143
123
100
93
144
120
164
89
88
199
121
101
125
154
133
69
87
87
128
69
110
96
69
78
114
80
126
113
119
100
175
129
197
112
131
87
54
117
80
72
107
163
78
91
196
160
88
144
54
128
142
113
131
93
117
78
80
147
98
117
145
101
78
107
80
113
107
80
87
88
85
113
93
80
78
67
128
93
78
104
80
154
109
119
87
119
137
123
80
78
94
136
69
127
109
103
85
145
128
117
109
80
120
87
96
76
69
95
99
80
127
185
91
90
80
110
87
80
82
76
134
109
110
94
174
88
175
91
69
100
88
75
106
137
111
91
143
120
99
58
110
72
127
98
115
110
96
94
78
96
104
69
156
156
80
144
106
78
129
89
138
113
88
89
145
107
99
109
76
87
117
209
80
69
109
99
175
146
80
197
163
154
154
140
129
91
117
122
80
124
80
69
106
87
71
128
107
76
120
145
104
87
106
101
105
72
164
131
76
115
128
90
134
52
120
116
109
83
100
80
72
52
93
132
176
119
107
121
104
120
140
80
43
87
76
90
54
111
104
110
112
175
89
111
69
105
113
101
126
74
92
89
87
94
80
133
119
87
120
136
113
154
128
78
118
157
118
72
54
181
56
101
119
141
101
88
83
87
89
164
131
154
154
132
72
106
69
100
111
111
162
78
187
76
128
99
96
87
80
94
89
75
52
98
76
113
155
114
69
69
76
98
80
85
112
80
80
99
154
106
69
140
87
122
87
154
52
107
99
93
107
119
155
102
99
139
154
140
109
100
138
104
120
127
119
104
100
69
146
80
154
99
86
119
102
78
54
144
80
94
69
101
80
109
82
132
106
109
74
54
129
131
69
69
128
143
99
72
54
120
128
58
87
78
113
76
89
115
76
144
109
117
87
67
78
94
119
80
99
154
69
140
80
106
89
69
131
123
104
80
74
87
109
118
109
89
163
109
133
87
162
134
175
175
106
66
131
76
156
143
143
120
76
99
144
156
137
112
96
92
80
146
137
175
78
87
118
103
69
138
117
119
101
128
110
87
79
97
126
134
87
80
119
134
149
100
88
113
132
87
80
127
156
87
154
115
60
68
103
66
104
124
78
146
80
109
89
69
151
72
80
175
72
113
75
119
69
104
145
80
74
99
66
143
76
154
121
110
163
76
112
118
120
154
133
155
80
106
80
154
120
101
116
134
88
78
151
80
123
107
154
118
78
69
137
122
107
83
110
80
98
110
139
128
104
87
111
91
69
91
106
107
91
80
137
93
134
115
94
121
175
131
123
111
129
115
151
120
80
117
117
185
87
80
85
101
76
175
112
87
96
102
74
78
78
106
104
99
101
125
104
110
156
76
80
71
72
52
69
94
110
87
80
134
99
76
124
120
103
112
52
113
132
87
154
69
94
129
107
174
120
120
120
83
87
69
140
175
91
136
69
96
126
136
136
119
56
120
94
101
89
119
80
71
201
130
120
134
69
123
80
124
98
80
113
134
118
136
133
72
175
88
152
94
154
89
94
147
106
89
106
110
94
80
117
128
140
124
121
76
69
111
93
132
75
175
94
87
117
54
156
101
119
76
164
137
87
157
63
76
197
104
91
109
148
78
147
146
120
120
154
130
101
69
96
96
169
117
107
80
109
163
88
88
74
110
146
163
73
96
86
76
143
121
94
80
88
80
107
112
96
89
175
99
137
87
90
143
119
151
77
149
80
109
129
112
119
69
175
120
119
78
69
123
155
113
88
107
78
87
107
120
119
175
156
107
124
69
88
80
110
88
109
56
80
87
154
117
87
151
87
78
100
76
94
69
183
121
139
117
143
52
175
139
120
154
113
96
134
76
69
131
88
104
80
156
87
106
135
80
87
107
117
113
117
133
113
80
156
120
113
137
163
99
156
74
121
89
154
153
96
110
87
120
110
134
69
106
104
175
119
175
74
69
126
76
118
120
78
118
94
119
76
89
89
134
101
151
128
87
119
52
87
69
91
111
96
93
88
154
146
58
110
69
108
120
175
93
165
80
197
89
152
146
80
155
80
69
89
107
110
76
76
145
113
119
104
131
197
104
76
131
94
89
87
74
136
120
82
115
151
94
128
74
74
107
89
69
80
122
147
78
103
131
128
93
119
64
107
91
175
80
68
69
114
66
94
77
143
89
52
87
107
118
109
80
80
69
110
136
58
109
69
76
154
88
80
110
69
130
87
115
121
99
132
131
76
80
69
56
78
69
132
80
76
80
102
142
118
69
155
80
102
119
119
76
93
105
80
115
89
119
156
89
69
89
118
94
128
111
155
76
103
91
119
87
104
140
72
129
163
43
76
145
69
120
87
80
109
154
136
88
94
89
117
94
80
87
87
140
91
121
142
119
155
96
121
87
91
113
112
107
120
99
69
110
115
56
163
175
119
87
106
181
98
113
93
67
80
87
107
52
151
132
80
132
119
80
94
156
119
175
102
143
80
127
78
54
115
94
72
89
76
110
106
79
136
121
121
123
175
87
123
69
80
96
155
175
76
78
88
122
114
80
52
106
91
94
106
109
69
197
43
81
152
76
69
69
119
151
120
109
96
89
112
127
96
125
76
109
78
111
107
95
115
103
100
130
113
155
93
108
80
80
80
71
117
140
175
99
118
87
106
132
140
163
117
101
131
69
66
120
103
118
201
109
197
94
54
176
152
69
140
113
94
175
111
121
78
69
76
78
75
137
131
91
119
136
104
99
119
94
80
52
80
93
149
80
104
74
78
76
119
89
151
90
69
114
89
78
91
88
69
83
99
131
123
127
93
93
128
127
112
89
143
78
69
101
74
102
73
99
94
107
89
114
107
121
60
121
76
127
136
120
113
87
91
109
87
162
99
76
117
69
131
118
160
72
78
127
127
80
85
92
110
120
92
119
134
128
106
107
151
94
97
155
161
131
64
129
95
131
102
121
54
153
74
107
78
107
78
80
107
197
89
113
151
134
87
54
136
69
75
120
99
82
109
94
175
117
80
69
59
197
117
96
69
134
128
52
138
96
106
115
80
69
110
89
106
94
76
121
87
122
119
78
113
111
88
87
91
100
89
111
119
131
69
104
125
101
78
80
132
78
132
80
100
131
112
80
119
112
154
131
78
99
103
78
112
104
136
128
99
145
76
99
140
147
128
119
123
107
80
91
113
96
175
115
112
99
110
128
89
120
85
74
52
112
87
96
113
89
78
75
116
127
84
107
120
76
69
69
146
76
203
121
138
54
197
92
87
117
107
143
89
129
110
120
106
89
164
99
80
130
93
69
68
87
80
79
76
109
85
137
127
109
117
123
87
76
78
193
112
69
137
94
119
154
80
201
69
88
69
83
89
120
87
102
145
129
141
87
122
69
164
69
69
117
154
80
154
88
101
123
80
110
76
120
119
87
88
52
123
69
145
78
69
154
69
144
83
145
115
144
137
90
151
155
121
133
96
87
175
94
127
109
145
100
129
78
155
99
113
78
80
94
56
102
105
183
94
194
54
130
80
94
104
156
144
93
156
146
76
121
76
69
109
89
127
111
107
85
85
101
106
130
140
145
99
99
137
88
110
101
110
76
112
114
112
102
88
76
100
110
94
151
75
80
89
88
128
59
140
93
112
109
136
87
155
149
121
119
140
124
109
69
111
125
119
79
87
113
112
91
117
88
107
102
175
96
89
103
102
120
119
119
95
78
80
121
107
119
154
83
98
89
99
78
131
120
131
125
155
107
117
121
114
134
128
142
101
100
120
72
112
80
69
154
98
134
185
154
69
121
88
101
72
80
99
96
80
117
89
99
69
102
96
80
122
90
106
78
71
108
93
87
80
107
96
87
78
93
59
154
147
137
75
156
156
128
76
87
104
94
80
85
174
80
175
134
74
151
80
108
116
76
72
100
120
131
69
128
155
148
91
69
80
126
118
115
152
131
98
69
80
128
99
98
103
111
119
109
93
119
80
87
160
80
80
69
128
76
120
80
69
76
197
85
117
104
101
109
69
128
78
89
106
110
94
154
114
128
156
99
99
101
80
106
129
89
111
136
69
159
78
119
95
160
72
54
120
123
80
76
79
112
143
89
126
121
149
130
79
80
111
128
69
99
76
107
114
136
74
132
87
124
69
97
98
80
131
197
114
111
127
96
88
112
146
76
76
75
133
75
107
121
94
80
93
63
132
110
72
78
104
107
187
96
103
126
134
80
87
169
197
104
107
175
80
80
80
174
107
121
175
54
131
96
112
76
114
94
100
129
109
83
69
175
142
69
80
109
88
89
94
69
121
107
135
112
80
80
113
119
89
116
176
86
109
112
140
123
87
89
69
69
148
69
113
126
91
128
127
136
100
93
56
89
52
131
110
92
156
89
75
80
115
117
113
121
80
145
128
90
112
93
115
110
111
185
113
129
109
82
140
80
80
148
106
113
130
80
143
71
128
74
117
87
76
122
90
109
154
134
149
80
106
140
138
80
93
94
151
95
69
96
117
101
87
89
144
78
57
185
84
120
78
80
148
121
119
150
104
76
80
136
93
101
69
117
94
78
91
165
119
175
118
76
123
93
80
90
130
78
120
90
177
151
156
118
99
109
95
155
109
99
119
80
137
96
96
101
89
120
88
80
118
128
117
125
115
151
94
156
124
128
78
87
69
140
155
89
94
72
128
69
93
91
91
98
122
101
54
113
120
90
128
114
75
146
109
99
126
85
102
137
93
98
126
80
89
76
138
106
90
88
175
145
110
151
115
94
116
83
69
154
117
72
109
78
136
187
197
101
122
131
85
126
67
106
125
129
126
56
69
102
146
87
157
102
119
117
104
128
120
103
93
106
151
76
114
114
128
120
96
122
88
99
117
114
134
58
84
91
80
119
80
87
117
73
163
197
175
76
99
80
78
101
114
87
76
175
80
69
106
69
127
88
118
120
80
151
80
126
113
136
117
106
86
117
69
147
91
167
78
78
92
99
157
121
80
163
134
117
80
164
122
154
74
119
88
120
69
56
88
72
52
72
133
106
89
92
131
109
155
87
133
87
99
145
103
79
69
134
120
76
160
160
119
96
106
93
104
112
118
121
136
160
78
104
87
102
145
143
94
80
140
74
136
172
119
87
87
88
80
119
76
129
76
136
160
72
139
113
113
131
96
69
94
93
80
110
78
128
74
140
80
140
129
74
80
122
83
156
109
117
78
162
83
88
94
89
134
119
119
99
156
93
80
93
99
52
115
93
120
128
146
126
90
71
134
131
132
78
80
115
201
87
80
80
134
71
160
120
85
102
121
87
93
88
131
118
100
154
99
88
147
87
69
76
85
137
87
56
118
80
102
122
143
175
76
88
131
69
128
107
131
126
123
69
89
74
103
112
128
94
123
115
175
101
76
121
110
99
69
156
106
101
94
106
87
92
91
131
120
138
164
76
116
112
76
160
80
100
119
127
93
120
69
154
87
80
80
69
96
140
110
151
76
106
154
152
94
69
119
80
146
113
88
144
132
114
130
94
118
107
201
96
107
134
80
119
134
119
76
114
69
114
69
107
120
110
134
110
115
146
175
174
201
154
87
80
128
69
143
82
96
94
80
109
102
131
80
156
94
107
107
164
69
133
93
80
54
131
57
125
91
161
74
150
118
175
80
117
112
120
94
154
131
78
113
136
132
110
110
95
100
88
94
128
130
183
87
91
66
76
136
98
136
87
145
69
80
121
96
76
120
175
126
110
80
78
80
91
80
87
156
175
80
76
87
121
69
156
113
94
175
122
116
101
134
118
114
125
136
110
87
197
99
120
89
94
99
175
96
69
69
154
99
80
80
151
90
72
104
104
185
112
79
133
73
80
74
74
137
87
109
181
129
102
120
78
163
78
108
80
88
74
76
79
128
104
72
80
101
101
117
99
120
106
85
102
80
120
103
107
154
77
151
136
155
93
134
76
69
78
124
103
87
80
78
80
88
87
69
71
120
89
69
120
80
112
107
121
78
76
101
76
119
80
144
100
131
102
72
117
69
80
89
133
106
93
69
102
91
122
99
90
104
131
118
69
175
140
134
101
78
93
164
125
110
132
117
102
80
119
154
118
197
72
69
131
67
147
69
71
98
136
69
121
136
86
93
80
98
56
132
119
74
121
85
127
123
91
80
75
75
119
137
90
157
130
120
87
107
134
94
107
101
75
87
131
114
69
89
144
120
163
129
139
94
134
145
121
91
118
99
80
109
78
80
80
161
121
99
78
119
91
106
94
89
107
151
113
88
102
120
76
76
80
109
78
91
132
80
154
80
127
134
85
128
87
87
66
131
117
128
76
120
131
80
122
120
113
78
101
117
92
146
120
140
139
146
97
128
69
121
78
114
107
69
138
120
140
80
164
89
133
93
83
169
88
87
112
78
103
80
119
91
110
80
107
102
91
95
150
87
87
145
101
98
142
88
126
54
69
93
138
100
160
72
80
80
99
128
80
97
76
134
52
94
111
136
165
131
87
151
136
78
120
100
80
112
122
69
110
80
69
121
125
107
137
88
101
87
109
87
155
81
104
98
76
80
164
99
151
104
78
155
92
89
164
85
52
94
77
110
118
91
80
104
102
119
122
109
119
87
122
128
107
118
60
151
117
85
89
154
113
108
85
102
100
112
154
172
94
118
143
175
69
69
89
96
107
136
89
87
68
54
121
69
114
80
156
131
89
147
101
121
109
107
87
106
72
69
102
117
150
87
95
174
107
101
87
151
112
80
120
109
174
140
197
113
169
107
120
185
83
120
76
117
69
72
115
69
136
118
80
87
73
143
166
177
98
128
76
96
80
69
146
110
96
69
134
80
145
58
159
112
80
69
106
93
54
99
103
69
76
175
88
89
67
136
87
179
143
80
155
119
93
175
93
110
128
102
128
69
107
136
197
175
87
131
89
87
175
101
156
94
120
98
89
87
80
80
154
98
153
128
87
122
69
85
131
89
91
119
98
83
103
175
99
120
152
162
148
147
58
121
87
113
159
43
69
155
78
110
87
138
87
76
82
102
136
78
148
121
146
94
119
147
111
94
110
156
151
78
69
80
136
117
119
117
140
107
76
134
109
128
112
121
93
76
144
80
175
103
140
119
119
125
98
99
143
88
183
112
80
88
100
95
76
78
104
120
112
136
120
114
69
152
80
87
159
124
96
128
114
74
101
153
72
121
164
94
175
131
130
99
114
118
78
109
131
143
80
89
80
73
128
175
164
76
154
98
87
88
94
106
80
148
94
89
52
104
175
93
69
92
96
140
145
76
88
95
201
99
154
127
108
80
136
127
94
175
147
102
87
89
135
92
104
69
124
156
106
69
112
76
122
96
115
119
80
113
143
80
110
151
136
99
151
105
175
88
101
72
134
145
106
100
126
154
117
69
95
183
80
104
152
109
90
127
138
127
80
78
104
130
121
80
76
80
127
155
100
87
128
155
131
110
88
80
197
104
80
78
110
112
179
125
157
107
96
83
114
114
78
119
107
140
74
106
89
80
110
104
85
109
69
185
175
67
86
89
87
128
114
127
148
89
91
88
76
96
103
127
89
88
101
100
110
78
76
175
76
119
128
119
83
80
144
126
110
80
109
87
80
88
128
140
54
80
89
109
97
88
78
123
89
78
137
69
69
124
147
87
119
80
122
140
136
107
160
69
80
133
104
138
101
89
78
125
80
76
78
111
120
93
113
80
92
78
82
91
94
83
90
69
137
63
80
111
120
115
151
99
123
127
122
80
142
80
100
80
122
110
119
78
69
114
119
131
66
155
100
109
131
101
69
133
75
124
78
123
89
93
197
80
123
153
132
115
96
109
91
134
110
106
129
127
78
123
88
140
78
69
136
103
80
127
87
87
126
131
145
99
89
148
119
99
81
78
94
43
119
89
75
156
69
120
112
72
159
100
104
87
104
113
106
109
145
137
99
106
83
80
85
113
80
69
91
134
129
107
78
152
197
113
127
80
108
102
80
121
54
87
108
120
106
89
105
94
101
114
85
126
175
76
76
128
127
93
107
80
99
54
86
95
139
78
69
76
99
80
134
115
124
143
78
118
134
107
80
78
101
56
112
94
80
72
80
74
104
69
76
98
82
93
100
90
175
80
148
120
110
130
80
78
76
106
136
107
69
136
69
155
69
109
104
104
87
134
92
95
197
124
185
120
102
114
69
174
87
154
76
103
143
96
140
114
91
69
89
136
128
120
87
107
75
146
93
75
113
69
87
69
72
94
102
124
131
128
88
164
69
111
120
131
76
183
104
69
101
160
69
152
99
64
127
93
99
80
127
69
94
85
109
69
126
88
95
107
127
69
93
147
160
80
100
154
80
89
82
156
134
89
119
104
79
137
93
76
113
93
89
149
112
89
127
66
154
156
104
69
78
120
80
120
128
80
137
120
80
156
90
111
88
94
69
80
110
123
107
113
143
196
134
87
161
119
122
109
67
140
109
121
93
79
154
128
111
109
96
101
119
111
88
54
96
172
175
127
120
52
127
134
99
132
80
99
128
175
76
109
74
96
123
58
109
119
155
128
87
143
138
78
137
164
89
94
78
80
69
94
175
103
129
197
94
69
80
127
69
156
112
131
95
93
138
91
94
88
94
100
117
117
103
98
119
87
69
101
80
155
90
124
69
87
150
95
96
128
117
111
146
113
145
80
87
122
102
80
175
104
82
114
148
113
98
64
113
131
112
128
107
85
80
87
80
76
99
119
118
137
80
80
107
109
76
134
119
129
104
99
83
130
80
93
101
78
154
72
92
163
175
80
76
137
146
113
117
122
80
76
110
140
131
89
137
69
74
106
87
134
80
80
69
78
107
95
115
89
111
57
127
96
165
91
119
143
104
119
117
66
131
100
175
92
137
137
134
165
175
98
80
103
88
80
119
119
154
80
154
98
117
78
78
197
106
90
120
99
88
104
106
87
80
80
123
106
94
136
133
101
88
80
99
145
119
154
118
119
106
175
87
119
175
76
175
185
155
99
99
69
134
127
110
54
107
125
121
127
76
96
121
107
137
96
80
123
197
82
115
113
118
69
189
107
114
150
80
104
78
109
181
106
131
69
155
156
119
72
87
69
87
98
69
54
94
150
120
74
113
69
89
110
69
121
127
154
114
100
59
80
69
78
82
87
128
134
102
80
112
72
69
69
93
199
101
80
102
165
112
125
107
113
89
185
113
106
69
72
80
93
154
99
110
138
128
94
101
160
67
117
95
115
137
80
88
117
147
94
80
130
80
81
119
87
97
145
104
139
128
76
154
205
107
155
87
143
175
128
80
78
87
120
104
134
88
123
87
128
80
147
87
76
151
106
80
80
146
87
96
121
100
52
78
143
69
80
150
120
120
72
119
145
149
181
89
109
69
132
80
131
110
154
87
80
80
72
131
72
106
118
98
87
102
82
107
125
134
94
98
136
92
92
128
43
154
78
126
103
99
102
80
137
119
99
89
109
87
78
175
78
134
87
101
85
69
100
80
134
76
124
107
84
87
76
100
85
134
80
102
64
80
64
80
87
54
128
78
115
89
95
104
91
128
157
166
134
88
122
96
89
91
69
113
117
69
75
87
87
52
121
199
88
137
88
87
89
113
95
156
72
140
76
78
175
101
85
163
80
52
74
143
112
69
99
163
69
128
89
175
118
76
80
94
106
138
76
140
114
131
93
54
69
88
96
118
98
89
88
128
140
132
76
151
113
128
178
77
123
75
88
122
89
120
155
130
99
89
114
113
69
76
128
76
144
129
79
80
101
145
140
78
147
113
76
111
136
109
155
120
140
100
119
112
109
80
72
120
85
117
74
107
54
117
131
199
99
134
89
89
150
110
137
156
118
144
117
112
115
106
99
105
69
83
72
76
69
156
163
123
100
136
119
102
69
120
89
101
174
82
87
111
128
69
93
99
80
115
136
69
106
163
106
119
87
76
120
89
80
127
87
172
101
133
197
109
87
175
199
136
107
159
140
94
110
109
80
174
93
69
67
113
89
69
107
79
78
134
52
203
104
145
80
197
80
119
137
87
99
106
91
111
100
120
110
89
76
89
87
109
78
104
74
131
91
131
80
127
101
118
113
78
69
102
94
142
72
131
164
118
80
157
197
78
80
120
185
108
126
80
114
146
107
175
96
103
56
80
100
197
87
80
101
131
107
76
82
134
139
197
121
136
128
175
118
121
99
87
99
72
91
69
110
87
95
114
114
110
151
85
163
110
120
109
165
80
114
119
114
117
117
145
87
72
112
107
69
68
175
100
87
89
52
128
80
137
134
109
128
69
89
69
69
94
80
78
74
156
76
156
143
143
96
118
119
99
166
164
80
87
156
114
76
146
69
88
99
99
85
124
121
95
119
80
163
121
87
156
75
80
118
69
111
87
87
80
80
129
117
117
127
160
136
117
112
104
119
118
78
107
87
175
112
76
148
106
122
87
88
76
80
72
154
107
87
88
69
107
130
128
88
154
78
95
131
76
110
174
147
151
146
69
128
151
112
110
78
111
110
106
99
80
119
89
120
93
89
123
87
107
111
131
107
76
93
80
94
69
100
102
97
145
121
145
80
87
69
120
77
109
131
74
80
89
154
64
80
87
140
109
87
104
120
119
72
117
98
119
78
95
120
78
122
99
74
110
143
91
132
116
106
113
119
121
104
91
117
104
127
132
106
76
76
154
96
175
89
111
99
71
88
106
120
151
101
152
163
128
87
140
109
121
76
87
80
71
134
154
78
87
96
69
102
104
160
124
79
136
120
94
181
133
136
120
96
77
119
43
87
118
127
88
178
110
89
80
80
109
126
78
145
74
85
80
154
89
111
113
78
69
119
109
175
110
118
94
87
99
94
112
151
91
69
157
69
104
134
109
127
113
89
69
133
83
141
154
69
156
102
120
93
96
73
74
137
125
129
147
79
84
130
114
132
112
109
113
78
120
94
103
54
91
128
89
131
78
126
76
121
110
69
78
140
89
147
75
152
113
175
120
175
114
137
119
107
115
129
107
87
69
103
114
134
93
149
99
134
124
80
90
94
113
109
140
120
102
96
174
80
143
102
101
144
88
107
69
155
140
145
124
120
74
88
132
151
57
107
72
106
85
54
120
136
72
136
138
133
112
105
107
98
80
100
113
74
60
130
130
103
94
56
138
143
92
118
117
78
126
120
72
133
98
96
121
146
89
79
69
80
120
92
69
95
87
128
78
73
159
107
136
152
133
75
154
117
109
106
155
76
143
109
199
112
86
114
99
80
132
87
104
135
130
115
143
99
128
83
119
107
124
83
125
113
175
136
76
78
110
132
103
75
123
143
104
72
80
100
102
72
113
94
78
99
156
107
78
87
175
152
110
121
52
54
80
79
102
69
145
121
87
121
96
197
82
109
156
106
134
87
87
140
78
116
78
139
131
100
87
134
80
69
111
76
104
69
99
110
110
106
80
175
94
88
74
143
115
80
120
76
92
124
175
80
80
99
127
64
78
133
127
108
96
91
87
93
86
78
109
85
93
104
111
137
136
80
101
138
178
110
76
72
154
115
128
117
83
79
107
103
140
69
67
154
80
69
105
107
109
118
80
74
175
106
197
144
110
80
148
119
169
98
136
89
96
113
132
121
80
113
156
100
54
99
119
52
92
109
107
119
136
124
93
119
80
146
122
94
119
111
117
110
93
155
118
88
80
120
80
80
146
78
80
69
149
140
112
134
142
128
78
104
108
80
89
67
110
117
133
98
109
93
80
120
69
113
76
78
109
133
136
109
150
121
80
72
99
80
147
106
154
80
106
89
104
76
108
144
75
144
121
122
119
70
80
78
144
110
69
87
149
121
112
106
80
80
128
85
110
117
76
110
128
74
87
69
43
126
124
95
164
72
76
155
74
121
124
113
80
145
154
89
106
87
87
120
74
69
113
104
150
54
127
129
163
66
94
76
78
136
112
136
121
175
66
99
88
103
119
94
110
144
80
76
91
121
100
102
109
78
43
80
121
89
80
80
150
128
69
107
57
78
110
143
134
100
128
109
120
88
128
56
93
93
111
91
154
94
127
151
96
134
137
88
96
87
113
129
80
112
78
128
148
97
92
69
133
118
80
54
90
127
107
128
69
197
104
119
175
151
140
130
69
80
110
109
118
120
118
99
146
123
54
87
154
79
98
69
133
164
138
110
128
88
99
88
110
119
112
76
160
155
80
69
87
76
76
125
121
76
93
157
72
118
151
151
87
110
80
128
87
131
119
72
69
87
175
69
69
71
104
76
118
128
107
117
181
103
112
88
123
119
118
110
109
133
155
89
107
69
115
133
163
131
94
114
118
87
175
80
137
69
117
104
107
123
117
69
151
72
72
102
72
132
99
138
67
107
145
137
102
80
67
109
134
91
131
78
126
106
110
136
128
128
59
99
69
118
108
85
146
109
80
102
52
80
80
113
120
80
96
110
106
79
80
133
69
99
96
84
101
69
103
87
69
80
89
109
76
87
106
136
56
175
118
78
87
78
140
80
69
87
109
109
128
109
156
71
106
115
118
113
104
103
94
76
135
87
153
131
119
108
78
54
131
72
120
120
93
107
175
99
89
58
119
107
120
131
94
120
78
72
121
107
132
124
99
90
80
127
128
101
91
124
78
88
119
80
134
113
80
76
87
120
80
151
94
107
140
119
99
119
126
69
127
117
112
69
154
76
197
109
112
116
197
154
163
89
128
80
78
88
107
110
93
112
111
119
76
106
134
136
101
112
88
106
88
128
112
94
115
151
96
88
94
80
123
88
78
72
80
155
106
164
78
89
88
92
104
110
71
122
128
163
117
107
201
68
136
109
116
136
155
93
80
127
80
80
105
127
104
108
175
83
114
111
89
110
87
88
124
94
110
117
128
110
111
143
96
155
175
120
109
69
101
140
80
69
100
72
52
134
126
137
142
72
74
69
119
111
117
72
80
80
109
69
78
91
143
78
78
91
95
80
80
102
56
78
87
106
52
99
163
118
69
129
121
103
156
112
112
87
76
174
113
149
95
76
78
73
95
140
94
69
130
148
123
154
116
154
66
125
80
129
89
112
94
140
123
162
117
166
67
120
99
137
107
133
91
109
109
149
113
134
91
91
54
159
114
80
155
78
112
99
99
117
145
102
102
80
114
78
175
72
93
89
88
72
137
89
107
119
174
101
89
175
104
80
120
151
118
80
98
129
117
80
106
119
88
95
74
69
114
197
87
104
156
91
108
104
80
87
106
78
118
151
128
80
148
156
199
101
101
97
69
138
94
74
75
118
87
175
104
56
131
80
100
155
119
99
175
94
76
140
56
128
197
80
154
109
90
80
110
69
119
129
122
197
128
87
176
98
106
138
163
96
117
67
154
120
80
151
96
145
99
93
80
101
69
175
101
156
89
110
115
80
122
78
151
119
113
120
78
94
104
91
113
110
89
145
117
148
87
107
87
142
108
90
147
80
80
80
69
143
99
110
91
147
76
131
87
99
104
80
104
175
160
89
119
100
107
121
115
107
152
104
80
80
96
146
155
88
104
154
87
131
69
100
80
112
76
136
156
69
69
131
107
125
124
164
122
67
155
169
130
80
119
99
97
87
96
104
59
83
156
78
121
76
124
106
89
114
106
78
136
69
144
119
163
96
81
83
69
154
175
54
104
87
154
75
108
78
110
80
175
117
69
106
112
72
175
80
76
80
87
151
148
101
129
80
93
147
56
119
110
100
69
110
72
87
74
104
127
109
109
80
102
99
128
107
80
109
153
78
128
120
156
153
110
54
80
122
67
80
96
175
72
80
94
121
98
118
111
157
132
107
144
87
112
109
136
153
133
102
106
117
155
104
78
110
119
98
109
69
59
75
80
118
109
128
120
131
156
87
119
69
108
66
110
104
185
140
109
119
87
64
69
87
175
110
107
119
109
94
103
88
140
96
147
107
79
156
88
76
54
89
107
69
122
127
155
121
121
93
69
122
101
129
131
104
72
128
175
87
76
69
130
69
106
97
80
78
88
94
80
112
89
92
69
122
104
175
87
149
88
78
131
88
139
103
80
114
107
109
69
80
133
104
96
52
164
155
144
90
81
146
75
91
64
106
80
130
125
113
104
107
110
136
128
90
78
123
117
181
111
78
154
80
80
80
96
120
72
91
102
175
120
136
87
64
56
87
128
134
157
73
84
78
88
151
110
136
58
139
93
155
80
109
137
111
80
69
80
89
121
106
157
107
175
87
69
77
114
66
109
156
114
121
69
69
119
120
90
134
118
123
99
128
88
91
78
109
78
110
69
128
91
87
87
80
96
123
76
76
119
136
102
72
69
101
78
119
69
88
72
76
76
103
79
148
85
140
103
89
88
136
52
107
147
113
109
146
155
76
91
154
78
109
107
76
96
106
82
127
120
74
125
117
80
78
98
100
66
113
80
107
148
93
75
91
134
154
110
100
120
134
80
95
72
116
78
145
134
87
69
89
69
110
121
78
118
118
80
101
87
92
88
134
56
160
69
178
84
165
106
96
80
78
151
80
80
110
106
128
126
120
80
72
121
119
96
121
119
69
175
128
80
149
102
91
131
156
119
100
128
140
80
113
142
104
146
80
197
78
151
69
101
52
138
197
120
78
107
128
134
69
119
123
80
96
87
119
175
87
96
69
119
117
56
80
129
115
119
69
83
134
132
131
110
76
152
163
76
155
156
76
111
69
80
99
87
151
82
154
107
128
123
69
58
99
88
76
100
69
128
118
98
63
175
110
82
160
113
107
109
197
91
90
128
109
160
119
80
87
94
120
89
113
93
131
88
87
152
117
74
156
87
147
87
71
133
78
175
136
163
110
136
158
107
107
80
78
140
89
115
119
105
93
106
100
102
103
117
80
80
87
78
140
100
101
111
69
93
96
95
69
114
140
128
154
86
112
100
175
109
92
134
119
67
115
118
80
111
87
146
145
138
69
60
130
89
107
80
128
85
144
149
116
75
69
163
87
69
124
69
116
174
116
107
197
140
175
129
104
69
131
80
104
71
136
128
105
155
87
134
175
118
111
119
116
89
149
78
69
90
94
85
80
152
80
131
134
95
87
99
126
85
110
152
133
118
125
76
112
131
89
144
100
117
69
110
88
120
128
98
151
154
121
111
112
109
126
115
104
98
120
122
131
88
120
138
133
165
106
125
67
144
104
197
88
88
87
69
69
154
80
69
110
78
107
97
72
76
107
72
136
80
88
69
78
107
99
109
110
103
136
121
80
108
175
156
119
155
107
89
133
87
103
121
91
144
156
175
119
68
145
137
163
134
131
121
98
80
99
117
132
185
185
69
112
99
93
94
89
173
116
107
110
121
80
106
101
94
156
138
115
98
80
106
107
85
89
68
66
96
175
106
119
130
88
94
125
169
69
78
154
87
119
78
76
90
132
117
109
69
99
104
175
69
175
157
110
134
107
96
87
111
76
146
98
89
98
87
119
118
93
140
140
88
52
69
119
72
113
119
106
80
66
74
78
131
102
120
80
119
87
80
91
101
120
82
163
85
154
121
113
87
175
119
154
144
134
107
175
185
162
120
120
121
104
102
163
131
110
137
127
80
93
66
94
92
129
134
106
80
99
113
136
118
80
145
56
72
143
87
135
120
114
113
123
145
93
96
119
85
123
69
107
80
163
140
99
80
143
80
132
116
80
59
69
154
109
175
106
103
159
69
104
123
69
110
99
144
99
69
110
129
80
102
94
175
137
93
121
109
131
127
87
138
102
101
80
123
114
156
72
175
87
136
80
110
54
183
72
154
80
96
90
93
133
106
94
121
80
114
74
78
106
119
146
146
134
120
92
80
78
134
128
109
101
95
134
136
102
154
154
119
112
76
145
110
72
67
110
129
133
93
175
119
89
138
174
104
78
100
69
76
152
78
117
109
90
78
128
88
136
127
109
131
69
136
121
113
87
80
102
148
80
80
69
159
113
102
175
93
88
76
154
87
96
107
143
89
104
101
99
164
124
91
80
185
128
120
68
99
88
80
101
115
69
76
69
109
78
64
103
101
175
131
88
121
58
83
120
101
197
94
69
91
113
176
154
113
164
154
56
102
87
89
91
120
103
109
80
100
93
163
110
155
72
69
123
100
197
69
102
54
93
122
87
87
177
106
87
69
74
99
102
79
120
94
115
73
119
87
99
107
121
133
72
76
110
145
138
143
87
94
89
87
87
80
121
67
183
87
169
96
69
128
66
106
197
146
110
80
96
80
102
114
87
119
121
197
185
69
69
67
183
146
100
120
119
113
140
88
83
147
147
83
145
128
88
197
106
91
69
91
94
117
107
121
80
43
85
89
112
54
137
107
75
119
117
110
111
101
93
111
94
113
106
147
79
69
113
158
102
80
134
76
116
118
81
143
133
80
136
80
52
110
154
72
94
107
80
128
69
103
102
94
96
130
74
117
112
95
117
118
175
115
69
127
87
115
99
123
93
88
80
69
88
117
80
76
156
145
89
112
114
78
126
120
109
197
102
93
99
136
94
109
120
92
120
121
163
140
78
69
69
136
120
134
110
78
56
137
101
101
156
88
128
80
104
163
99
117
72
128
175
114
69
104
143
146
119
103
119
151
152
113
73
110
80
100
100
69
99
69
78
123
114
112
67
137
100
128
141
154
77
69
88
69
111
83
72
127
85
110
116
99
147
80
147
121
137
69
111
131
104
134
120
91
120
98
126
112
72
145
117
106
185
117
125
80
103
80
128
149
87
109
124
107
80
56
154
143
175
107
69
87
87
99
105
131
154
106
89
175
110
112
119
88
80
80
99
106
144
119
80
76
107
77
131
56
155
104
95
99
151
101
134
87
104
91
110
122
87
100
134
107
95
99
175
107
80
106
106
176
174
115
97
69
134
98
118
118
101
151
106
116
85
99
97
114
107
74
87
113
76
120
106
52
69
109
134
118
90
94
69
146
74
109
134
116
54
93
56
112
69
119
88
108
103
120
151
104
105
89
96
123
106
120
104
78
127
87
80
147
121
78
119
109
94
107
156
107
160
112
134
89
87
76
155
119
140
140
111
120
76
69
85
69
119
71
111
90
104
87
106
119
155
87
87
152
69
72
119
113
78
131
107
89
146
115
128
127
151
87
156
109
101
120
102
160
107
130
187
156
110
80
155
131
80
175
104
95
94
91
119
80
87
104
118
123
96
81
175
74
107
80
121
136
87
146
80
107
134
78
112
103
128
131
106
80
99
78
114
93
128
146
132
78
69
144
106
107
197
80
69
120
107
133
134
87
107
94
120
109
94
121
119
99
91
126
80
130
167
118
119
140
78
98
160
126
89
89
76
102
136
120
132
78
107
125
128
143
131
78
80
87
101
88
104
69
155
80
100
92
99
78
98
94
154
120
102
69
154
91
87
111
80
112
76
80
100
101
133
113
87
85
92
91
140
69
78
76
131
104
69
72
127
163
78
80
96
103
111
126
94
128
134
87
103
109
129
89
107
123
175
78
123
109
78
83
120
74
87
106
78
87
134
69
127
104
93
137
69
89
183
117
89
68
88
99
118
88
87
60
87
143
106
76
96
93
80
72
139
82
69
74
160
94
69
156
129
142
156
176
80
91
100
110
151
154
111
144
175
80
87
119
113
111
89
107
80
175
102
87
156
128
99
76
126
106
110
119
119
69
69
111
113
101
104
80
125
72
128
96
119
134
111
119
197
98
111
109
89
94
88
101
140
87
132
104
114
136
145
118
89
135
113
134
143
145
175
93
92
69
127
90
107
87
110
120
87
113
96
155
76
117
136
127
140
118
130
87
83
132
145
100
106
133
113
80
56
128
110
69
119
94
69
117
87
110
89
80
107
80
79
145
76
87
85
154
117
124
97
169
87
91
125
87
156
92
128
100
76
145
82
92
94
43
127
169
93
99
69
80
101
83
143
143
76
80
106
80
143
111
60
88
85
104
76
139
138
80
164
119
117
149
94
121
87
109
102
99
154
69
93
69
145
76
78
140
90
106
93
103
109
93
80
99
108
142
160
54
100
99
110
100
101
112
104
107
69
80
87
72
88
110
156
69
197
115
94
80
137
113
78
131
147
104
127
141
110
131
80
120
66
77
141
155
63
69
88
80
150
78
80
110
136
99
156
105
150
69
85
106
128
64
87
121
80
175
101
107
121
111
119
91
187
69
121
120
73
125
130
78
126
104
99
87
137
80
201
109
94
78
87
146
60
129
104
111
150
90
175
92
175
76
136
98
75
76
67
79
96
76
149
175
119
144
52
120
80
119
110
118
85
85
111
112
89
151
105
99
104
135
69
78
124
111
199
154
112
137
102
163
151
146
87
69
56
84
72
69
104
137
119
153
97
105
147
80
69
178
111
99
113
80
101
133
120
95
110
126
78
108
109
123
69
120
54
99
83
122
112
91
136
89
80
127
109
60
76
80
129
91
87
143
120
110
113
69
87
129
95
76
119
120
163
99
112
74
104
80
136
136
119
155
83
164
79
123
119
113
115
110
142
87
136
89
87
154
121
136
123
110
123
67
78
69
132
175
127
197
181
140
107
80
183
143
156
140
121
99
134
94
96
87
78
54
118
88
89
124
137
90
119
80
94
148
52
119
121
94
69
136
120
107
140
127
80
87
136
154
72
69
163
117
56
87
197
88
160
120
112
69
197
189
76
87
69
115
69
60
155
87
69
112
104
131
69
120
80
121
80
80
91
119
128
102
87
87
94
112
128
124
122
151
117
119
118
87
126
109
134
99
89
100
131
112
87
175
89
99
99
123
106
104
117
128
85
154
54
88
94
69
128
69
109
79
83
88
76
80
93
109
110
121
112
87
111
121
75
130
80
87
87
157
128
54
108
78
76
118
92
87
113
76
138
80
74
90
69
128
78
136
156
89
102
137
144
155
146
120
121
118
94
78
72
137
130
98
126
108
89
120
175
100
69
69
102
140
94
151
133
107
99
161
112
94
119
110
99
64
79
145
109
113
120
106
76
109
127
175
104
119
69
112
104
113
128
98
99
69
93
80
99
59
71
157
69
87
145
76
140
91
109
136
114
96
86
68
87
80
89
79
134
113
120
154
175
57
87
91
110
69
146
120
78
117
76
93
80
143
162
114
104
151
97
92
110
69
97
84
140
81
87
155
121
104
119
146
108
117
154
109
104
97
89
133
175
118
78
131
110
154
78
175
101
112
90
87
175
175
80
90
114
117
175
117
90
91
146
69
163
121
130
111
94
80
136
80
97
88
80
80
107
109
80
54
71
80
120
147
124
91
82
133
163
161
106
197
128
69
154
103
110
69
109
125
107
69
138
113
123
91
78
142
136
114
109
132
110
136
146
78
80
74
78
99
145
96
100
80
66
59
134
90
156
125
129
99
187
111
154
107
140
97
111
78
104
80
114
87
130
76
136
130
155
69
101
80
103
175
175
103
107
100
119
104
80
96
165
104
138
111
118
101
131
87
119
136
139
99
76
104
114
132
99
89
112
155
129
80
112
110
164
69
152
126
164
152
134
89
86
69
115
121
104
80
76
80
72
133
174
132
78
136
88
137
74
107
102
146
117
197
91
92
89
126
99
119
165
113
160
127
91
76
163
89
69
69
136
87
80
137
145
85
143
90
93
147
52
103
69
72
113
150
117
96
94
92
73
129
74
128
140
175
122
109
81
76
85
107
146
79
121
88
121
101
87
110
175
80
130
95
128
80
95
80
78
69
138
124
149
128
76
76
109
136
146
78
109
136
131
114
78
162
87
87
175
97
99
91
87
99
93
120
121
119
76
92
127
100
87
87
93
69
143
106
118
109
87
137
154
109
91
122
125
80
145
132
74
92
78
89
60
118
174
64
128
87
131
67
80
133
80
96
109
175
203
156
76
127
119
120
94
119
91
91
130
131
127
134
91
120
118
160
197
163
110
136
80
126
80
144
129
80
118
175
140
80
89
109
69
111
120
136
78
105
92
98
104
90
154
197
101
94
67
76
87
87
143
137
99
117
78
88
144
87
117
93
85
109
99
120
98
87
175
128
126
126
76
92
111
80
151
125
183
69
76
99
127
96
117
130
82
78
117
117
87
145
75
56
107
96
136
163
80
93
69
76
199
109
90
105
129
76
95
69
87
129
154
87
124
129
121
126
78
92
87
123
87
148
89
134
140
136
144
119
98
119
119
66
113
120
76
80
155
56
175
80
76
106
94
52
80
131
76
112
126
93
110
78
74
93
96
119
175
140
91
82
175
145
131
143
109
80
99
109
115
134
68
93
112
134
56
146
117
80
80
80
69
80
70
114
134
119
136
79
134
147
78
143
136
76
131
159
140
110
102
96
80
118
80
100
99
93
72
176
93
69
96
88
146
100
164
117
78
110
79
76
69
87
114
136
87
78
106
69
156
146
94
43
151
197
80
108
156
92
128
78
69
72
107
104
89
88
78
109
85
126
140
113
85
155
111
69
88
117
134
106
80
80
103
117
119
119
120
110
117
144
110
80
67
98
78
119
122
110
118
102
131
69
134
122
91
110
151
104
94
69
143
132
194
155
121
126
74
72
102
72
106
91
134
156
96
104
111
79
101
118
155
154
69
94
120
80
114
124
104
175
102
183
93
110
99
143
76
96
116
185
112
145
118
88
78
107
93
80
67
107
155
131
88
80
93
101
134
69
144
80
106
112
88
82
80
175
89
175
80
81
67
76
121
166
102
119
125
101
134
197
78
102
80
120
91
143
120
99
54
69
140
95
107
107
109
136
121
113
80
54
76
120
156
69
87
111
69
78
80
111
110
80
106
69
122
174
78
121
80
76
151
89
134
109
122
120
134
82
72
100
80
80
136
141
72
131
113
120
131
128
76
79
128
104
125
100
104
94
82
80
197
106
142
80
69
52
159
43
87
115
107
163
72
109
69
102
88
78
78
112
123
87
87
80
87
99
88
89
80
109
174
131
94
69
76
119
148
80
157
85
133
104
78
98
78
54
94
69
138
52
175
67
136
80
134
195
69
118
131
106
87
89
183
110
89
80
122
80
102
67
134
135
54
80
74
78
76
54
80
82
117
127
107
160
119
115
80
127
146
120
93
106
76
111
148
72
78
80
134
78
107
56
175
109
121
69
111
80
88
85
107
80
106
104
126
78
94
129
99
172
109
140
80
72
87
127
134
140
132
113
151
87
69
122
76
130
69
110
137
80
132
104
95
88
121
107
133
92
139
68
101
145
131
94
98
72
87
115
164
87
79
87
89
78
128
107
146
128
113
104
137
99
140
131
117
80
110
89
80
185
64
101
109
119
69
88
69
80
76
115
137
74
80
130
80
103
80
117
99
99
43
107
151
80
99
175
80
78
93
106
104
175
80
142
146
115
127
127
52
91
117
98
87
157
80
120
98
79
94
95
54
80
87
120
69
77
69
91
148
87
133
93
109
87
109
104
98
107
129
163
72
113
79
69
99
99
90
120
99
87
69
132
124
113
69
72
104
69
104
99
160
91
78
120
122
80
117
117
87
66
80
118
125
100
88
119
121
115
110
162
69
89
114
197
132
78
87
73
87
119
59
151
136
112
154
112
93
134
106
109
76
127
99
87
112
113
110
154
128
146
151
78
106
69
87
136
78
72
76
87
79
69
87
80
115
134
80
78
80
113
69
137
87
78
115
128
109
152
107
129
76
120
106
89
69
71
110
118
93
120
151
72
115
124
69
120
89
154
69
154
69
158
87
128
109
120
80
71
107
106
160
87
78
133
52
69
148
136
69
69
80
76
87
87
127
107
174
137
154
94
197
151
100
112
69
76
120
76
108
143
87
121
105
120
131
87
119
111
136
134
78
80
148
69
133
109
124
69
172
74
119
80
94
89
88
88
108
76
107
156
116
80
125
128
94
110
78
69
158
76
80
110
131
113
111
128
138
76
59
94
118
101
117
174
117
88
122
113
130
113
98
87
99
78
197
98
110
97
154
199
78
127
76
72
100
175
96
80
80
95
78
156
78
80
117
94
136
101
80
119
80
88
110
130
94
107
80
88
96
89
107
133
112
69
134
129
54
144
94
107
113
160
78
106
91
124
127
147
115
142
87
91
181
119
110
64
80
106
118
94
76
104
122
129
91
110
107
119
78
75
175
110
120
89
72
116
93
134
154
109
131
89
71
99
94
116
130
71
83
76
100
119
119
112
96
119
79
69
108
93
69
132
94
128
119
60
80
175
119
88
123
155
107
107
69
87
128
185
130
120
110
148
119
124
104
81
88
112
175
154
69
94
80
138
92
104
76
209
128
89
99
119
112
88
106
80
113
100
144
115
79
124
88
88
80
88
139
175
69
113
91
107
169
154
106
95
104
156
80
109
96
100
117
137
128
75
80
80
98
136
78
80
80
82
78
80
103
118
141
117
154
92
72
120
113
156
120
73
111
121
103
126
76
106
80
137
69
117
123
80
99
96
87
69
71
93
94
107
134
136
92
90
146
69
119
99
109
121
78
80
130
112
131
52
115
197
94
130
90
69
72
69
197
143
118
69
137
92
109
78
115
54
69
115
119
113
78
80
119
91
109
128
78
102
78
94
128
199
94
80
154
85
140
78
78
102
74
80
106
76
164
185
102
75
89
111
85
128
133
132
87
146
94
114
106
80
135
118
109
119
78
69
80
106
100
99
129
185
93
80
112
148
76
94
131
80
122
156
92
88
120
43
133
129
111
79
78
78
109
87
119
154
104
131
85
146
89
115
78
99
89
117
142
88
122
80
67
87
80
119
128
89
76
54
113
100
99
121
120
69
80
130
107
96
138
121
110
83
87
102
112
147
87
134
107
80
140
129
78
154
124
118
88
91
128
114
102
87
78
72
80
96
154
98
96
106
134
89
88
101
87
80
73
120
88
78
122
116
145
120
80
112
121
107
144
69
136
76
80
80
76
127
115
119
69
131
174
109
69
134
107
82
88
76
146
89
156
115
80
110
156
132
146
163
103
87
154
80
76
175
118
80
76
145
120
80
148
105
128
93
88
78
69
52
146
80
76
80
101
114
155
76
147
121
120
69
127
122
94
76
64
80
54
110
101
82
124
110
156
109
105
146
87
101
144
80
120
69
72
80
138
74
128
54
104
154
108
119
88
78
118
109
80
80
80
80
156
104
82
69
92
136
154
96
119
74
134
80
87
108
147
104
110
101
138
78
155
136
134
74
121
80
91
85
119
125
76
147
87
122
85
78
93
119
87
93
103
83
72
87
110
69
120
69
140
56
56
87
87
110
80
103
88
94
72
80
106
127
113
97
134
80
81
136
137
136
80
69
126
93
80
91
148
80
126
111
115
112
109
88
151
88
155
90
107
78
120
129
101
82
119
152
109
69
124
112
69
78
59
87
139
76
96
52
80
76
69
120
156
76
102
109
136
87
111
80
69
95
88
110
69
76
69
69
80
127
128
120
107
83
134
102
154
91
96
124
69
155
112
104
104
99
128
69
81
87
102
120
128
52
80
91
175
134
124
79
151
96
80
106
121
78
80
110
89
91
128
127
78
142
88
94
117
120
98
109
104
143
80
104
128
110
78
76
117
80
76
94
119
87
128
120
74
154
74
93
115
119
125
88
122
174
112
88
91
120
102
151
96
163
120
118
98
106
87
80
78
91
133
125
87
99
87
87
77
106
89
111
136
79
96
87
111
107
131
87
98
119
80
66
52
87
175
133
110
156
110
91
99
140
101
175
80
107
95
127
149
69
106
137
109
136
94
80
155
113
80
96
131
119
94
107
140
76
131
69
175
78
89
154
131
67
134
75
52
140
103
94
80
163
121
69
52
69
178
94
80
69
120
78
80
128
80
80
56
80
107
101
107
111
112
77
109
107
88
143
111
164
107
99
154
103
137
154
119
133
146
130
96
117
118
80
112
96
120
120
82
131
117
119
155
78
80
74
91
164
110
99
137
98
76
129
80
128
72
80
134
154
89
113
109
80
129
120
104
134
125
101
93
75
69
85
143
158
131
80
116
127
143
87
99
76
111
197
80
118
76
78
112
128
87
109
148
87
140
156
101
80
56
110
155
126
105
119
154
76
132
155
112
80
112
139
112
99
80
126
156
118
115
80
128
130
148
127
76
87
121
89
69
78
124
87
163
104
106
99
87
102
209
102
54
125
97
107
96
99
175
133
113
120
114
137
121
136
72
70
102
127
137
134
76
175
80
91
134
121
89
123
132
143
80
130
104
114
110
60
117
121
125
80
85
119
101
123
164
125
89
169
144
155
126
137
128
94
99
112
127
93
112
69
87
87
87
106
87
93
171
113
85
111
76
122
87
121
69
89
109
110
106
118
178
136
128
80
144
80
154
130
110
120
69
125
112
99
80
156
57
93
69
110
126
108
120
76
175
133
83
164
156
76
69
116
87
114
149
122
120
80
120
130
139
160
108
134
78
87
95
71
81
69
78
87
69
110
115
99
116
128
80
151
87
131
80
136
164
128
106
87
104
99
131
69
94
72
175
107
104
107
80
69
134
78
105
76
169
134
69
102
60
126
87
103
99
89
88
106
80
105
110
76
115
128
139
119
110
78
119
87
88
91
106
101
85
131
197
96
135
52
155
154
144
175
72
76
128
114
136
78
80
119
79
88
134
129
119
104
87
143
86
94
58
94
99
115
89
122
144
69
94
119
87
78
80
76
89
120
133
72
124
75
93
164
69
125
93
137
144
151
156
87
131
102
69
119
69
76
88
80
93
149
144
110
120
120
197
175
137
119
87
113
80
69
93
95
69
93
100
93
154
78
128
106
80
163
72
98
113
79
52
201
91
132
125
134
102
76
81
69
87
99
80
112
120
134
80
101
87
80
76
88
78
129
69
80
101
154
94
119
152
67
72
69
110
114
78
80
80
56
78
137
136
89
124
87
151
54
131
78
111
117
78
134
107
87
122
143
105
52
127
111
176
89
87
107
109
123
136
96
125
71
131
138
113
91
80
98
137
91
185
109
148
91
155
88
115
69
128
136
93
136
43
60
132
78
76
106
112
80
74
89
80
136
101
88
116
69
131
139
89
93
109
130
85
69
88
78
132
69
91
126
164
144
126
112
145
116
52
115
134
101
109
175
99
86
88
99
117
110
102
117
89
123
88
90
103
89
136
111
96
76
102
124
67
105
111
69
78
145
119
101
166
80
94
54
112
107
103
100
140
137
112
97
76
120
107
115
98
123
104
136
107
118
74
122
76
140
78
121
80
69
99
91
211
107
93
69
69
93
106
72
76
80
76
80
112
145
69
88
133
72
101
80
151
76
80
101
119
56
110
78
76
156
109
140
72
113
154
147
99
121
107
71
145
131
69
124
130
80
78
119
99
107
80
119
122
122
76
78
112
99
130
141
160
98
108
78
83
106
92
71
155
175
175
119
100
199
122
115
90
107
76
104
85
99
104
87
121
80
106
123
109
76
87
131
52
175
80
155
100
94
162
69
85
78
59
136
115
69
43
78
148
94
78
136
72
152
52
90
107
119
56
102
87
109
175
129
94
76
107
69
107
78
96
107
76
78
120
92
145
146
106
136
72
91
69
85
74
131
78
138
80
116
88
160
113
111
115
136
137
124
121
80
107
69
120
132
177
69
88
147
80
113
100
80
52
87
128
76
76
69
80
120
101
133
149
174
78
69
119
69
104
129
199
169
97
154
110
176
131
117
74
92
128
175
99
80
69
117
175
129
110
88
58
129
102
112
102
136
157
121
72
118
101
87
96
69
129
104
131
197
113
94
113
74
137
101
69
134
87
108
131
87
113
78
99
102
101
141
92
89
127
175
120
78
109
97
128
134
136
96
79
118
69
94
110
160
97
104
157
80
128
94
107
118
78
175
78
106
119
74
87
69
76
78
117
89
93
130
119
134
113
154
163
99
72
52
94
128
106
120
75
115
119
76
79
129
110
129
80
88
136
109
69
80
154
80
110
52
99
155
121
56
92
87
112
155
113
131
74
80
80
102
66
107
119
119
118
87
110
163
124
156
87
119
133
99
87
126
72
90
152
106
78
78
90
89
74
136
99
120
117
175
106
43
76
112
54
88
107
87
78
120
104
87
85
146
80
94
112
72
131
145
139
117
80
116
69
87
80
80
93
85
80
85
98
124
87
119
87
113
56
69
92
136
80
163
146
52
80
139
128
90
175
175
131
104
78
102
106
101
154
160
86
134
111
120
73
76
142
80
96
107
93
119
76
80
85
110
104
109
102
134
88
119
69
93
80
154
94
175
87
94
80
87
95
110
155
151
110
154
120
121
90
76
78
126
96
128
134
175
103
131
130
102
175
136
96
119
88
76
91
69
87
111
93
123
80
69
91
94
92
115
112
138
129
117
145
93
113
71
115
106
89
108
113
146
111
163
90
60
76
78
117
159
100
134
78
78
118
69
133
80
118
120
88
112
93
119
99
149
122
123
94
119
80
137
83
102
87
80
112
140
76
144
78
87
80
103
154
69
101
80
175
72
163
123
80
69
163
94
99
140
123
78
151
112
69
110
87
110
119
80
154
76
88
107
155
107
107
94
130
185
76
126
116
72
112
87
80
146
156
91
154
87
121
104
85
56
102
78
134
103
175
80
133
125
140
107
154
58
69
177
117
79
106
99
80
107
78
93
101
117
95
80
100
108
82
90
107
89
69
90
154
175
87
79
94
120
164
127
87
80
80
130
118
136
69
74
104
96
110
106
119
110
80
85
146
99
80
87
120
102
137
154
94
80
109
128
94
78
120
122
93
123
95
80
80
87
175
120
79
78
121
122
117
134
127
93
111
72
80
197
103
119
131
101
69
131
80
69
144
107
122
144
137
140
87
63
79
107
116
117
52
101
113
124
112
121
90
120
99
128
112
129
92
142
69
90
109
43
163
69
114
109
52
151
131
56
80
119
152
52
87
96
80
136
87
80
120
175
121
136
74
114
80
69
78
156
127
84
54
89
103
120
108
156
73
91
122
69
127
115
72
126
132
76
138
126
125
174
69
129
117
107
89
80
94
114
136
106
82
105
134
175
94
154
89
146
76
136
104
94
89
94
94
138
128
117
136
96
128
96
80
113
148
99
78
82
120
110
88
76
96
85
154
80
89
119
127
101
158
93
155
80
73
69
99
150
78
143
111
135
80
89
128
111
80
69
76
89
160
120
69
69
83
146
119
107
78
103
69
69
91
76
72
80
129
113
156
69
72
87
197
113
94
122
89
104
111
94
119
115
113
94
87
67
124
72
99
154
131
80
121
80
156
136
154
109
75
109
122
79
137
78
120
128
106
100
151
96
89
85
66
80
130
109
88
85
131
80
109
90
89
145
93
87
110
113
122
136
134
54
114
85
93
91
120
107
80
137
134
102
87
151
89
89
131
111
69
67
106
175
129
128
85
174
154
120
156
107
94
159
78
80
109
80
87
131
80
87
109
110
103
121
80
136
98
98
144
124
80
108
109
107
80
64
107
136
69
144
98
87
94
117
120
52
69
110
96
133
89
104
76
94
127
131
99
117
79
88
119
145
80
80
69
163
80
109
80
109
112
69
120
99
146
79
152
78
69
80
94
103
69
117
112
175
69
85
88
96
98
91
87
93
131
80
69
80
131
82
52
69
110
126
175
69
54
78
151
87
87
80
119
132
145
85
80
87
100
100
88
80
80
97
175
107
101
121
119
115
59
199
185
119
126
144
165
69
80
74
95
109
69
76
154
89
71
105
145
117
80
127
164
110
96
104
78
80
140
140
88
87
127
124
88
110
80
140
119
76
80
97
119
119
122
133
115
99
67
80
87
140
69
169
74
154
97
88
124
141
96
129
127
109
69
152
80
96
114
69
80
136
104
122
78
99
114
175
89
93
119
87
117
89
153
89
54
154
90
110
72
104
101
99
130
113
78
80
136
110
98
95
103
160
94
106
89
76
87
76
131
134
132
100
110
96
155
122
124
78
87
94
154
144
80
146
96
94
120
78
80
78
89
93
120
149
110
80
87
103
43
118
80
155
151
131
80
134
94
93
107
99
114
80
69
72
120
79
69
201
111
137
141
76
90
78
110
134
80
80
52
111
69
93
113
94
104
98
88
90
121
174
128
119
133
156
72
118
106
120
87
140
126
122
74
110
92
164
87
78
72
95
126
76
102
87
134
93
137
154
110
76
181
93
119
124
87
59
96
128
146
115
89
134
78
99
94
121
146
96
102
89
117
88
76
131
137
69
102
69
93
128
107
139
69
115
113
146
107
163
88
128
161
80
128
76
89
89
126
143
113
125
105
69
174
120
93
118
101
124
96
75
80
78
87
72
133
129
80
88
80
93
80
85
87
156
78
136
99
107
133
118
137
131
153
78
150
119
69
140
115
119
87
69
80
80
83
175
119
175
88
112
123
113
78
146
101
80
80
80
96
89
145
119
69
88
80
98
175
130
118
119
137
119
95
126
139
69
114
103
80
69
144
91
80
113
69
110
85
89
80
149
80
72
124
155
130
86
69
69
149
89
76
146
127
101
69
107
126
134
94
87
69
80
154
175
106
110
133
186
130
52
175
175
89
111
80
151
101
121
69
118
76
143
80
52
69
69
185
80
100
78
117
119
133
119
75
87
80
133
100
155
118
89
120
56
89
101
128
106
113
119
121
134
91
78
76
111
87
117
69
107
143
94
80
104
119
69
94
91
78
103
183
80
73
112
154
72
87
74
104
128
112
87
69
99
89
132
78
100
104
110
131
119
74
87
104
72
107
134
143
85
90
131
109
132
91
120
101
104
208
89
174
78
80
78
113
156
80
87
96
128
92
175
144
91
127
130
67
120
88
69
72
120
69
118
75
71
99
96
160
122
128
127
140
69
78
76
106
155
80
69
151
140
94
87
88
76
106
78
80
107
69
99
87
88
107
69
125
88
117
69
87
154
119
114
106
69
147
100
73
118
69
140
93
80
175
124
187
80
69
91
124
175
78
145
80
66
109
69
96
90
87
156
69
154
119
107
129
121
106
78
76
104
116
76
165
127
137
136
154
76
128
112
88
143
119
162
102
80
104
154
175
110
147
72
80
88
78
72
80
109
120
72
69
80
80
87
138
121
69
93
117
104
134
101
76
110
128
99
154
69
106
119
69
69
111
109
87
109
151
106
99
118
69
127
80
59
81
76
76
104
110
119
89
103
69
132
102
78
80
151
111
175
80
175
112
87
107
69
76
121
115
72
69
88
123
87
140
88
144
72
109
80
72
76
115
100
80
112
87
78
99
87
89
128
87
78
117
106
151
87
146
109
113
121
93
91
111
69
87
104
80
102
69
101
80
140
131
107
134
72
118
121
132
175
56
134
80
99
73
109
107
97
94
123
67
104
145
154
69
164
154
126
76
67
113
87
117
81
133
164
64
87
119
104
128
121
134
69
143
181
134
89
128
88
119
119
110
93
118
113
78
159
88
116
87
163
80
119
67
89
94
163
154
111
131
112
80
156
75
138
88
120
91
76
89
162
87
120
109
113
100
94
72
52
98
128
120
93
128
54
104
69
110
154
89
80
134
120
88
103
109
78
112
87
146
83
90
113
104
109
72
112
148
119
69
76
136
175
156
163
76
100
90
119
134
93
90
69
80
139
99
99
93
69
145
83
109
80
80
89
110
112
74
156
99
119
131
79
141
155
115
125
80
106
159
131
120
69
112
126
80
59
134
138
119
87
80
119
121
102
104
103
131
107
69
92
119
78
107
107
139
93
69
67
78
175
152
78
76
78
175
80
99
89
139
120
83
84
127
115
99
95
76
94
98
151
95
131
80
91
123
118
120
107
111
80
69
76
107
80
110
76
109
80
127
87
108
123
87
97
85
124
69
140
89
137
131
80
175
107
141
109
156
148
98
80
130
117
149
99
97
80
80
80
128
80
82
110
69
131
124
113
80
75
120
87
73
87
117
121
95
80
69
99
77
154
87
69
138
76
91
69
115
91
87
78
143
96
89
103
104
106
89
76
91
88
87
89
176
69
74
116
80
76
89
113
138
99
78
125
154
69
137
87
109
107
103
93
151
69
107
107
80
96
69
80
80
88
93
87
95
92
69
90
117
109
112
113
120
106
76
80
142
149
110
133
115
100
112
113
69
87
131
123
74
80
143
88
107
88
87
94
140
126
197
107
108
80
107
106
110
82
89
87
119
143
76
94
120
123
96
99
123
76
76
117
78
69
75
120
76
72
69
115
69
117
183
90
141
89
147
120
94
114
145
99
110
119
88
111
115
116
80
76
87
98
67
117
83
113
69
145
119
89
175
91
80
78
120
88
67
95
89
78
105
76
134
88
128
101
119
118
91
99
69
98
117
120
113
80
113
80
69
76
134
91
138
94
131
110
136
94
88
94
69
80
94
138
80
130
110
80
76
120
85
136
87
147
126
78
112
131
76
134
69
96
115
119
117
107
87
154
89
60
88
104
145
87
137
152
76
96
101
94
104
136
80
110
106
76
69
175
112
142
106
93
72
106
130
72
87
96
156
141
114
76
102
100
80
111
121
115
117
96
96
114
87
154
101
89
103
91
165
80
69
80
52
136
99
89
76
80
69
131
87
125
112
76
154
74
76
100
99
95
76
140
101
106
101
80
69
94
114
144
101
146
69
66
67
69
111
128
87
112
156
79
107
90
122
88
87
87
80
74
104
121
132
174
101
78
54
117
80
154
118
80
197
96
137
138
165
133
136
101
129
128
98
94
104
154
69
136
95
128
88
153
99
52
134
88
76
88
148
142
146
78
76
69
85
112
120
124
124
145
80
128
87
140
139
88
144
71
109
69
107
80
147
111
67
136
160
103
127
89
93
120
148
99
122
99
136
153
114
85
80
136
93
69
134
140
94
163
87
87
89
119
89
154
120
69
113
78
107
131
69
109
154
112
154
102
80
106
85
80
181
154
163
89
119
138
109
133
43
107
154
100
96
96
110
91
120
114
154
140
106
120
59
119
98
87
127
104
76
119
160
76
162
76
88
175
88
89
112
136
69
52
104
163
119
151
80
106
106
156
155
105
136
164
127
69
119
112
80
154
76
197
72
89
80
76
89
112
115
119
126
88
163
117
154
159
107
93
100
80
94
99
90
78
108
95
69
80
121
110
80
60
110
121
109
76
89
136
69
76
132
96
110
80
110
86
78
185
109
80
108
69
125
150
80
72
90
96
120
136
76
87
121
76
107
98
88
92
120
117
80
118
80
140
154
107
175
117
120
68
98
98
63
119
117
79
88
91
116
69
107
106
175
71
89
98
131
121
107
78
109
78
80
99
119
121
174
52
80
150
122
88
160
125
165
162
80
120
106
122
156
72
137
78
197
87
121
115
127
107
134
78
67
121
88
93
181
107
197
104
67
99
69
99
72
121
130
99
106
127
128
80
159
121
66
88
113
76
89
80
120
69
89
96
104
69
91
148
94
69
102
88
136
131
119
80
97
152
134
109
120
133
110
74
99
76
87
111
110
78
99
104
69
113
132
80
69
119
110
88
80
87
140
138
147
104
154
154
129
125
80
78
69
131
93
128
87
64
110
69
145
133
145
124
98
140
72
132
148
101
69
119
80
78
120
102
80
134
98
111
85
80
89
91
78
121
117
87
126
82
119
104
90
80
120
85
175
134
72
69
150
107
175
109
74
76
155
95
163
151
90
106
131
120
160
93
69
104
131
73
87
87
122
80
125
183
99
89
107
145
75
160
72
133
115
109
74
119
110
80
87
119
114
120
69
115
127
94
58
119
107
146
105
133
63
80
145
163
100
104
134
137
166
175
102
117
76
89
69
118
78
103
90
175
102
119
67
121
64
119
74
156
96
103
99
104
69
152
80
134
80
80
115
131
69
76
123
87
154
93
76
175
134
72
78
175
76
138
143
85
120
126
121
154
120
69
88
164
87
66
164
113
87
136
78
109
112
94
104
101
104
80
95
138
54
175
113
113
94
96
58
136
91
121
131
76
99
76
175
91
109
78
165
97
124
80
89
112
140
69
87
110
156
114
147
96
76
69
107
107
156
120
109
71
90
91
152
99
109
93
152
109
91
80
80
119
78
119
113
80
136
80
104
121
123
128
80
89
103
76
120
89
119
91
121
78
127
99
59
119
80
154
107
93
101
100
80
101
120
110
175
115
87
87
113
145
126
137
121
76
120
131
78
151
56
59
92
154
133
109
80
106
72
110
78
119
80
76
117
94
106
52
123
119
110
154
88
99
154
119
83
156
121
94
87
126
69
80
99
72
87
89
143
109
78
87
69
78
134
116
131
95
85
96
91
78
102
154
103
143
124
88
94
117
69
56
119
192
69
154
54
112
112
80
117
142
126
100
175
112
106
80
113
91
118
120
118
112
155
107
69
99
52
95
76
160
140
118
99
110
87
175
85
80
101
122
175
121
87
76
119
113
89
43
98
99
136
80
122
103
108
78
87
78
134
110
72
137
137
107
175
119
87
101
175
76
69
145
128
76
119
79
69
105
88
126
121
129
129
94
102
88
134
109
140
89
99
91
121
78
115
72
77
100
76
109
164
94
80
69
80
117
104
90
154
142
140
88
80
109
69
81
98
80
156
78
80
88
75
129
80
144
127
151
126
99
127
147
107
164
130
112
93
146
120
72
80
69
117
151
93
69
142
117
88
90
76
76
121
199
121
88
106
69
109
113
119
76
134
94
146
99
90
119
80
120
128
72
69
80
78
171
111
93
78
120
56
109
80
123
69
111
54
74
69
80
136
107
80
98
137
106
106
89
99
106
78
69
166
140
119
119
119
91
69
117
110
101
99
99
78
151
92
154
109
52
120
80
93
75
136
88
80
80
69
80
117
91
155
127
75
175
80
87
120
84
56
166
66
80
74
89
76
88
102
74
59
88
156
107
69
156
103
122
69
117
78
89
175
80
80
120
93
120
117
89
118
115
80
76
88
106
109
148
80
80
87
134
118
80
100
108
139
69
145
154
119
76
106
72
80
112
113
82
43
106
107
177
96
101
59
89
83
102
115
67
99
80
183
69
69
197
175
175
78
140
87
94
134
90
156
87
129
78
69
145
146
109
175
119
87
158
87
76
127
80
137
69
80
66
156
94
121
116
121
136
95
93
103
175
104
94
90
94
119
76
69
94
74
96
110
96
80
72
93
101
154
80
69
76
118
107
119
96
87
136
133
109
112
92
148
94
54
112
132
125
71
80
69
102
102
140
99
107
69
107
113
120
80
76
113
138
130
130
119
69
88
156
134
100
80
144
87
118
88
137
134
122
94
69
87
127
185
133
112
154
141
119
134
114
107
112
99
76
78
99
154
134
110
119
197
94
117
78
87
80
112
156
74
119
69
88
128
52
94
88
88
131
163
133
93
101
89
83
165
154
110
149
59
104
151
120
94
80
154
100
109
108
127
119
118
112
103
107
94
175
83
93
137
80
107
107
94
117
156
54
112
121
115
76
69
130
122
87
120
87
69
88
109
80
119
110
80
96
120
153
94
69
113
109
100
122
100
52
111
116
141
110
155
90
129
93
89
132
166
78
69
152
80
104
104
120
152
87
134
80
80
131
157
124
66
154
93
111
134
146
120
106
87
163
118
154
74
54
107
119
69
100
87
88
80
112
136
129
99
101
72
69
86
80
73
85
127
106
90
69
80
113
92
79
128
121
155
132
76
109
85
95
87
104
66
87
80
80
80
78
87
107
94
134
103
154
96
57
107
89
87
128
145
123
110
128
107
134
79
89
72
121
80
112
110
76
120
78
69
156
93
157
172
94
137
74
128
156
112
103
100
80
89
123
120
89
69
88
87
136
109
154
197
151
109
108
120
117
151
87
96
94
80
78
110
78
165
121
87
175
109
103
109
128
128
127
107
101
99
119
88
78
69
134
76
109
109
76
121
147
151
145
69
107
113
80
107
99
152
80
93
110
106
132
88
80
94
80
158
83
87
107
151
175
144
118
143
126
85
85
52
134
127
119
120
138
119
175
146
94
69
76
89
148
156
93
107
94
113
142
72
78
110
80
119
88
82
175
119
117
94
172
72
123
156
110
69
136
209
138
88
128
117
157
76
175
120
112
127
109
93
94
88
117
119
100
128
69
128
122
119
88
108
157
136
131
78
154
110
134
144
93
164
115
125
151
121
112
140
74
80
80
87
80
91
94
155
80
140
106
106
160
92
121
174
111
113
76
149
69
117
80
137
91
128
156
115
148
143
113
114
131
43
90
114
72
143
151
124
78
128
80
101
175
101
106
76
104
159
120
93
87
104
78
163
80
175
88
76
91
154
107
197
80
104
119
88
98
117
78
113
120
90
78
183
134
175
43
133
116
154
94
96
95
162
80
91
111
96
88
101
144
91
128
80
92
134
98
160
69
137
124
85
129
78
80
78
120
52
104
75
101
120
72
80
58
99
56
101
118
137
94
80
114
125
146
116
69
66
134
132
94
119
101
140
91
117
76
127
128
197
145
92
155
99
137
96
156
175
122
76
152
94
69
82
121
117
79
87
140
154
87
91
76
97
121
76
121
90
113
99
78
102
112
91
88
94
96
117
69
119
166
94
156
119
135
106
80
89
107
124
146
84
154
54
87
120
89
80
169
69
78
99
120
113
100
175
87
124
199
106
52
175
140
87
152
76
156
117
89
144
120
80
67
146
109
87
154
54
121
87
80
76
78
80
99
113
118
43
94
123
52
80
87
128
175
127
101
87
78
69
136
112
87
80
90
144
80
80
140
123
117
76
110
89
117
98
156
69
117
127
76
112
58
131
118
112
112
87
95
175
69
127
120
78
80
175
164
114
69
128
175
57
140
106
90
87
54
52
76
69
115
117
88
89
69
69
147
79
99
129
104
94
76
94
88
117
132
95
93
133
69
99
109
146
87
69
129
80
94
152
109
101
109
91
98
101
163
164
87
101
69
89
90
123
151
72
163
107
121
94
154
119
87
76
69
131
102
113
111
134
104
87
87
78
87
107
80
151
146
87
99
118
94
144
76
117
80
91
56
99
80
134
67
104
67
83
101
90
127
78
78
136
148
93
140
128
136
171
121
175
124
121
130
80
88
134
95
134
98
85
106
118
80
107
119
76
151
151
72
76
69
119
91
80
175
175
74
69
91
126
109
69
99
80
162
163
66
131
113
119
125
80
126
85
80
106
89
129
80
80
120
52
106
130
117
87
116
126
121
90
143
78
78
117
119
94
69
67
104
197
119
80
78
78
131
80
164
83
143
80
80
96
78
104
114
99
79
76
94
80
78
111
120
112
73
126
137
99
107
87
80
93
110
80
117
74
83
128
102
110
130
87
78
128
106
80
80
119
106
87
126
100
88
87
154
78
98
140
140
101
117
127
164
197
87
124
119
120
89
165
127
123
116
147
108
107
107
58
58
126
136
154
113
136
87
93
78
119
80
156
96
107
119
119
69
111
120
99
93
156
87
128
143
119
91
76
127
94
76
100
113
97
88
154
138
151
120
89
111
80
133
100
89
112
197
101
109
102
80
87
130
83
119
112
72
69
153
121
128
59
112
72
78
80
80
107
100
95
132
87
69
85
69
120
69
80
93
72
69
130
101
79
118
69
72
114
87
129
69
156
80
150
106
154
93
151
77
138
123
107
104
120
78
119
80
113
69
166
114
127
113
94
87
80
80
72
122
69
155
127
83
69
89
143
145
154
78
148
155
117
88
160
92
80
110
64
87
109
75
143
134
69
140
69
81
175
131
87
96
133
85
106
120
88
119
146
149
155
78
131
153
87
140
145
154
80
78
109
88
104
205
122
43
69
163
54
100
67
104
110
103
106
78
94
151
107
99
186
112
111
120
102
74
72
56
105
88
100
142
87
135
94
102
99
126
130
93
43
131
136
113
76
78
54
80
52
91
100
151
112
123
93
142
72
122
87
69
156
96
136
107
94
56
120
99
136
113
101
109
136
88
115
164
91
120
60
89
120
121
69
163
76
91
54
130
122
91
126
56
94
99
156
99
78
104
96
95
121
119
52
106
127
99
112
91
80
99
109
121
79
106
101
143
102
80
88
69
99
154
121
134
115
121
164
112
103
80
128
140
72
69
88
109
156
121
76
120
112
140
133
78
100
80
113
114
110
145
136
128
114
93
154
125
81
118
107
80
112
185
172
163
104
127
127
72
89
102
76
87
156
140
91
120
80
80
69
109
134
76
115
56
136
87
80
80
76
80
197
119
89
96
110
113
104
104
87
104
140
119
143
155
156
123
112
145
75
76
74
118
104
99
109
157
78
112
121
134
118
87
99
101
120
80
107
134
109
143
96
99
156
66
90
119
87
102
80
128
75
69
80
106
91
80
72
87
98
109
59
125
69
78
106
80
93
131
93
121
89
93
69
145
123
145
69
121
113
80
117
80
137
69
99
106
113
87
130
76
118
136
136
100
143
74
72
128
128
120
80
87
84
175
94
125
175
80
156
89
145
76
88
106
141
117
69
75
122
88
78
80
156
78
197
82
83
78
78
118
93
89
56
110
99
78
69
72
120
102
104
119
101
85
134
119
78
76
87
99
136
119
78
120
109
96
76
54
140
109
119
128
95
80
76
78
106
159
78
119
109
199
74
107
89
82
92
144
69
80
119
140
69
115
113
72
86
118
118
80
121
137
80
99
93
120
127
87
102
88
89
69
134
85
94
89
80
113
89
98
129
87
78
91
80
88
121
81
80
175
80
109
89
83
151
159
96
117
119
140
98
115
54
74
80
96
80
136
146
91
87
80
119
75
144
114
99
69
113
76
132
121
92
89
146
76
107
140
106
156
123
146
131
80
175
111
87
100
121
133
136
146
103
136
117
172
154
119
154
80
154
80
78
87
136
109
187
87
87
69
72
91
119
138
136
80
142
91
106
155
80
96
80
79
107
175
87
110
87
107
131
87
155
80
80
112
111
120
131
109
71
143
54
163
76
88
76
175
109
88
126
74
101
147
108
96
87
127
132
87
69
111
151
92
110
119
129
137
140
82
94
79
96
92
80
87
96
175
136
76
113
76
80
103
134
131
72
175
87
95
128
116
69
150
119
157
116
99
131
72
80
87
107
91
109
78
105
106
115
87
128
122
107
112
52
94
78
145
114
117
76
76
145
165
95
96
144
72
67
69
101
86
100
99
78
76
94
152
78
99
113
120
87
88
134
153
88
76
92
111
54
119
154
90
110
89
181
175
91
80
89
104
137
91
80
83
87
156
131
132
90
143
103
99
156
154
93
110
78
118
109
87
131
199
88
80
88
155
88
106
76
107
83
118
80
87
116
87
131
94
72
118
80
101
79
134
143
109
80
101
80
99
154
126
107
127
88
80
100
132
114
88
94
88
126
89
145
80
54
110
119
175
117
69
78
94
128
136
175
87
80
136
108
76
99
80
80
143
80
94
117
155
121
54
174
99
132
94
80
137
112
96
110
99
119
136
74
78
181
93
197
131
85
69
69
80
78
89
106
154
117
151
134
99
128
119
121
119
137
110
69
111
71
134
87
92
113
114
108
88
197
69
76
117
115
163
69
80
142
119
110
69
76
129
103
67
88
69
125
69
67
93
69
134
76
69
69
90
80
109
87
110
87
154
175
103
127
72
113
80
76
78
96
78
128
78
119
87
127
99
80
107
88
78
69
87
80
175
88
118
137
134
73
96
68
124
91
119
66
120
131
52
113
140
99
134
104
80
133
115
87
105
88
119
90
88
151
74
78
69
187
89
96
102
131
87
96
78
87
69
78
109
110
80
113
76
83
69
78
112
80
74
163
80
175
107
134
80
166
137
103
69
148
109
110
132
137
119
100
127
119
132
76
104
126
113
85
75
104
99
117
94
119
116
155
120
85
121
154
87
89
175
76
151
78
138
76
69
80
119
110
126
154
136
113
155
119
89
134
88
175
143
121
137
80
197
99
94
120
88
69
87
80
131
99
156
152
119
140
91
110
136
149
80
120
90
121
112
158
88
157
78
76
76
80
109
128
69
69
87
69
56
111
133
129
103
96
174
109
80
107
154
69
161
87
106
69
134
175
121
116
115
122
131
132
163
110
69
89
80
110
74
155
69
117
134
87
137
120
80
69
123
80
131
130
80
145
167
94
120
155
78
72
134
143
148
76
93
74
88
69
69
52
175
74
165
80
80
131
69
117
111
134
74
87
140
169
126
89
144
147
127
93
69
101
109
69
166
110
164
153
80
83
87
88
93
113
89
128
101
88
85
175
121
99
87
80
89
78
162
143
74
140
80
98
68
43
69
99
147
137
162
106
127
101
99
107
80
120
89
80
125
69
106
96
113
80
80
69
78
111
76
80
87
154
130
74
152
99
128
89
80
78
118
69
96
145
88
112
119
156
132
104
104
154
94
114
88
146
134
95
87
80
93
94
125
103
138
58
117
151
133
69
80
115
69
119
118
119
117
128
69
78
80
83
108
187
107
80
101
109
76
148
69
109
87
76
129
120
174
106
175
140
98
52
107
106
174
54
113
144
76
106
120
134
94
82
147
101
140
80
64
134
80
101
80
131
89
89
69
110
96
121
95
102
144
133
69
131
87
80
144
127
76
174
89
153
91
76
89
141
119
87
135
52
112
100
102
120
140
76
174
85
90
127
134
111
105
76
87
90
124
111
96
83
88
156
69
107
113
69
156
117
69
113
119
74
128
85
151
121
78
80
128
83
87
128
122
72
154
120
115
144
107
164
121
119
160
69
112
103
87
175
106
80
131
162
139
114
80
87
110
112
119
96
107
69
94
69
85
80
113
91
119
131
175
125
80
80
138
87
136
128
78
80
104
69
151
99
90
80
99
80
101
67
117
88
87
131
115
165
100
80
134
87
88
95
102
172
172
109
155
76
107
74
124
75
127
104
134
114
78
69
116
80
197
87
125
112
136
185
106
99
118
104
80
101
137
96
126
107
117
79
87
101
88
109
80
122
87
67
113
95
89
82
80
143
58
100
119
117
131
96
136
69
128
104
115
112
76
164
80
69
87
105
128
128
87
136
135
96
122
87
93
69
124
113
69
131
80
155
76
119
134
72
118
114
117
137
76
82
146
154
127
91
82
69
80
76
134
80
107
110
110
96
96
87
69
110
111
80
123
76
85
103
87
112
137
119
96
174
91
69
112
109
98
133
88
121
80
90
118
104
117
109
120
115
69
99
72
69
134
110
83
175
69
92
78
69
140
67
92
69
95
88
94
72
93
126
137
72
140
80
106
169
152
78
100
175
117
112
166
87
113
80
97
80
121
133
114
115
91
87
120
119
175
90
144
76
107
128
119
96
80
78
91
52
136
88
136
151
89
80
87
160
121
119
155
197
119
185
98
85
88
154
85
76
107
114
80
119
91
72
91
104
107
154
142
69
107
154
143
76
127
60
94
129
101
116
110
131
87
69
69
107
104
80
122
146
87
113
109
76
119
80
80
99
89
133
104
108
104
100
128
128
175
87
76
94
114
88
151
126
52
52
117
88
104
110
96
43
104
72
149
88
128
116
110
110
80
115
150
94
87
117
122
120
88
89
117
99
154
78
103
105
115
93
80
93
120
69
107
121
88
145
100
136
107
94
86
125
131
115
118
74
89
117
89
107
120
115
93
80
114
80
87
78
69
76
76
120
90
78
67
102
112
85
43
107
74
87
142
104
104
91
78
103
80
69
134
110
108
209
138
128
140
174
154
122
132
87
127
174
142
109
106
119
87
140
120
123
69
113
69
80
95
107
119
122
80
72
137
87
103
80
69
121
146
157
175
106
123
132
85
112
109
99
111
69
137
140
142
88
69
111
80
136
95
140
94
118
126
80
96
87
163
96
109
156
80
69
96
131
134
87
78
118
103
134
104
119
120
74
125
93
72
149
127
78
56
124
131
93
154
80
121
87
154
69
124
90
113
112
130
76
99
94
119
99
52
113
114
107
107
67
149
111
158
88
80
155
107
120
136
106
109
143
90
120
131
96
76
106
87
175
134
87
80
80
80
150
127
89
93
82
69
111
134
104
82
174
115
112
197
89
87
134
91
57
131
127
199
80
107
151
86
91
72
144
175
109
144
80
72
69
76
101
94
78
82
140
122
130
76
119
87
94
80
94
78
175
134
118
80
117
99
103
76
154
201
127
106
138
84
92
69
121
72
160
110
89
69
144
52
108
96
94
91
87
87
69
140
127
69
78
58
76
69
76
110
80
80
80
80
54
78
153
124
92
123
72
119
114
80
69
201
103
80
127
120
76
99
80
131
89
115
197
112
124
119
127
109
69
94
145
103
123
97
197
115
99
88
115
85
175
175
134
78
69
69
131
83
69
156
99
76
130
80
80
183
110
104
151
87
72
99
69
87
88
120
92
69
104
115
89
80
156
109
117
153
74
111
151
109
94
104
80
78
76
80
119
116
83
113
127
76
76
135
88
139
128
155
160
134
128
128
96
54
117
114
72
151
119
175
88
127
87
87
136
161
113
137
69
90
185
129
80
83
128
134
80
125
114
87
80
99
69
96
89
101
175
113
117
69
109
119
96
78
112
144
94
80
133
147
87
134
80
130
138
72
76
156
89
95
119
69
87
66
128
89
80
112
109
128
107
80
76
99
129
69
80
87
87
96
111
121
154
115
112
126
104
87
110
134
172
106
95
99
91
140
76
69
101
69
102
87
136
104
120
122
80
76
80
112
152
92
96
78
104
88
113
124
154
123
134
78
102
89
102
131
80
140
124
58
69
76
117
140
87
72
114
140
80
88
80
69
78
120
97
85
78
99
95
134
119
101
69
94
131
107
106
93
136
80
52
127
106
197
78
161
76
99
112
72
76
95
110
117
54
80
87
89
137
76
69
88
140
78
69
69
94
120
136
119
80
150
82
185
75
89
175
43
145
66
154
88
107
72
149
136
175
76
99
156
145
131
93
67
112
129
113
76
121
80
89
153
128
108
80
69
104
69
69
80
158
117
112
136
107
175
90
113
80
121
174
88
129
79
151
108
100
80
99
71
76
89
100
145
71
131
96
109
128
124
106
131
80
109
111
80
150
80
140
99
88
88
99
80
120
121
88
109
129
80
121
98
96
175
76
120
57
132
118
63
144
89
131
94
91
76
118
125
126
76
122
96
155
90
76
109
134
76
72
142
119
104
120
106
87
88
87
80
94
128
101
127
87
131
136
145
95
104
79
133
85
154
156
80
76
78
76
69
151
175
140
143
99
80
100
201
107
112
87
79
87
106
110
151
99
110
103
107
113
71
107
78
80
111
120
142
141
87
104
106
94
80
72
74
106
113
69
100
80
91
87
73
78
151
125
107
110
78
85
76
80
157
134
110
120
104
88
69
93
118
87
69
113
117
99
109
151
83
124
80
111
121
140
125
102
93
101
109
120
87
162
96
109
99
132
119
145
157
101
147
134
154
92
80
69
120
99
156
80
87
101
80
205
87
69
87
128
99
197
151
108
72
128
54
117
112
115
104
175
87
119
69
136
69
141
69
132
122
83
127
69
115
56
69
101
124
132
89
88
107
91
80
134
130
69
120
78
118
201
80
134
120
136
107
99
106
72
90
88
136
71
117
80
119
104
76
78
107
136
89
101
107
130
110
69
78
69
110
78
144
76
69
101
134
74
88
109
90
185
80
99
144
93
158
111
69
87
112
107
131
89
80
80
117
87
87
106
112
80
106
73
160
110
154
76
87
175
104
89
110
117
112
113
107
80
109
76
145
134
76
89
119
52
80
69
80
69
87
194
113
134
124
164
94
131
106
134
119
107
108
106
112
80
120
99
78
111
80
87
80
128
199
197
106
115
120
76
175
69
129
52
86
91
117
88
78
125
80
80
78
94
89
131
104
69
138
109
112
94
80
75
64
114
76
78
90
80
119
157
109
147
120
117
69
140
139
109
169
176
80
96
131
146
120
156
78
120
131
136
89
110
127
106
107
134
147
76
140
138
101
87
98
89
78
78
80
102
155
94
87
80
95
88
107
99
114
140
104
102
131
85
80
85
118
76
139
113
148
87
128
89
80
101
134
95
80
77
154
85
113
151
164
181
78
87
112
122
123
155
109
119
69
94
80
120
143
175
80
134
89
76
99
69
74
78
104
85
148
103
175
119
145
131
88
109
74
160
121
156
87
111
83
69
175
130
175
112
87
88
112
72
78
69
87
112
125
69
154
89
76
163
160
82
112
120
151
85
80
60
87
78
119
117
87
117
146
143
98
78
111
107
60
152
106
113
119
120
87
93
145
90
121
94
109
93
78
145
137
118
112
119
69
80
175
107
87
78
102
140
96
156
88
110
89
127
112
110
118
130
87
164
76
127
120
142
136
80
143
120
80
87
69
114
69
91
142
72
131
142
85
119
93
118
156
128
125
80
111
119
87
93
123
114
124
136
123
119
110
90
134
104
127
117
121
112
104
128
148
151
94
96
69
69
94
94
110
175
80
145
93
120
112
78
72
166
102
140
142
80
120
76
111
114
80
89
176
112
99
108
112
107
80
92
197
155
80
119
121
177
109
127
109
76
110
122
103
120
80
54
80
140
74
120
94
175
112
134
78
104
80
126
128
118
89
176
154
73
69
78
89
126
99
126
119
80
109
71
101
110
123
88
107
145
106
117
69
56
91
99
69
104
89
160
78
80
96
123
69
102
94
75
81
78
99
107
137
75
174
128
80
99
175
113
89
136
131
122
94
128
78
78
99
76
156
78
106
93
119
121
117
72
119
138
93
73
137
156
176
89
172
143
69
56
54
43
80
104
120
126
109
87
69
98
69
104
162
96
142
145
88
145
99
119
80
80
69
72
123
126
106
146
122
102
134
93
94
94
152
80
110
80
89
107
98
76
163
87
64
115
125
93
113
80
59
106
71
132
74
178
136
76
86
80
74
119
123
69
112
128
69
110
109
80
96
137
80
104
118
115
104
133
90
93
119
76
80
69
133
109
125
109
69
83
117
97
136
138
107
78
94
156
142
69
121
96
119
106
83
67
87
106
126
154
147
80
175
72
52
197
106
151
140
102
112
94
85
93
67
89
109
76
110
80
80
99
78
69
96
108
119
89
82
133
121
69
134
136
73
85
133
133
117
148
154
80
102
80
80
104
126
125
106
104
88
99
80
125
175
78
69
94
74
101
102
91
78
148
175
76
89
72
119
88
115
108
156
120
99
96
119
152
107
120
145
80
99
104
94
67
120
154
140
118
142
80
145
109
122
78
113
110
91
156
134
111
69
156
76
154
76
78
91
107
148
124
127
185
69
94
104
183
69
126
151
87
87
132
96
140
119
90
80
140
123
74
72
132
87
131
90
106
80
151
125
148
60
80
91
107
78
136
120
109
161
138
87
152
87
80
137
131
102
132
134
69
112
87
151
78
131
87
87
128
109
107
78
96
69
101
107
106
69
87
94
121
43
100
87
76
133
114
75
87
102
96
69
78
52
111
113
163
130
104
99
117
140
69
72
134
143
72
101
106
89
104
80
80
110
115
140
82
127
148
118
122
112
113
87
69
59
106
121
145
106
80
88
181
78
100
120
134
131
81
104
101
69
80
137
112
106
135
87
69
89
87
107
89
165
109
79
78
113
109
109
104
94
120
87
121
80
154
107
134
69
143
103
130
134
109
109
98
80
100
208
126
164
69
163
93
123
96
110
107
78
78
69
87
112
157
111
93
111
80
113
78
80
99
80
107
106
80
159
114
104
80
87
76
106
128
83
87
107
137
120
78
181
115
120
69
119
128
151
158
101
88
94
80
155
101
107
69
109
114
88
119
80
75
119
76
97
99
69
99
104
143
175
76
99
107
145
121
149
87
91
130
137
93
99
78
120
166
104
92
110
69
54
121
100
160
157
85
101
119
138
140
91
80
104
117
110
76
95
69
98
119
92
100
104
112
80
119
94
91
64
69
100
129
56
101
120
74
78
80
69
88
106
165
87
146
120
119
107
117
144
94
91
74
136
69
134
104
107
76
135
90
101
119
163
132
132
163
151
80
99
197
137
154
69
138
145
99
134
100
63
54
93
110
80
155
152
120
58
156
99
110
110
183
144
80
69
144
136
87
185
80
90
87
120
119
95
91
110
100
60
78
78
56
142
94
155
80
175
109
43
136
172
80
112
99
88
76
134
67
154
85
76
72
175
90
88
134
201
76
102
111
88
69
121
141
69
80
109
89
69
134
109
98
69
119
80
148
139
110
76
98
174
76
96
102
107
88
80
80
121
128
112
80
138
154
134
69
69
77
151
107
110
76
121
54
109
140
107
142
145
119
81
78
78
117
112
91
101
78
126
94
109
80
120
140
149
120
118
106
137
130
110
78
174
101
80
78
88
175
69
94
111
155
100
119
145
80
139
93
69
72
78
74
113
155
69
115
106
154
109
140
146
78
99
73
156
128
107
112
121
114
80
93
111
160
100
104
76
69
110
107
95
52
52
99
116
151
79
84
87
80
125
91
162
100
124
115
163
157
106
110
85
118
115
80
98
92
106
118
95
93
134
80
122
113
87
197
124
52
121
88
136
102
154
119
163
119
100
87
156
109
98
111
78
120
69
57
155
128
69
129
156
69
134
103
99
104
119
88
54
80
160
56
119
128
124
99
52
112
101
90
120
93
128
102
87
140
93
69
115
89
121
95
74
197
76
138
107
80
133
111
154
94
98
89
87
83
69
140
90
69
156
148
52
174
80
67
131
163
89
120
78
69
131
97
89
134
107
107
57
128
119
96
88
115
88
126
113
94
131
88
82
136
74
100
132
86
136
163
69
166
89
162
137
69
78
52
128
80
149
120
148
197
110
69
166
130
99
94
94
76
104
89
119
99
130
154
80
109
128
87
133
112
151
69
87
103
99
56
102
137
174
52
126
101
117
131
87
80
107
69
152
121
112
91
127
93
69
69
102
69
76
142
122
72
112
128
112
69
149
101
138
88
103
128
143
126
148
111
121
94
128
83
134
118
87
120
128
120
131
89
91
106
119
121
187
98
107
80
80
89
118
124
79
157
145
85
164
99
118
197
104
130
101
78
69
80
128
99
136
87
183
71
136
128
110
175
69
117
69
88
100
54
113
122
78
120
80
107
80
104
175
72
69
78
69
123
85
172
119
52
111
89
78
89
128
110
69
107
126
83
94
69
113
175
93
85
69
88
100
157
80
67
106
107
124
78
175
80
124
128
80
80
134
197
106
109
87
106
94
111
126
130
101
148
110
98
115
80
97
110
120
94
134
78
117
102
174
78
57
78
78
87
87
106
174
91
128
78
120
92
121
96
98
165
126
107
87
80
113
80
163
127
69
175
134
94
67
78
80
106
128
87
139
175
91
126
91
78
67
102
119
87
151
78
109
76
120
121
106
88
104
117
164
80
99
121
69
155
175
175
104
69
138
119
85
80
168
119
98
134
93
87
87
78
88
160
78
112
54
121
54
103
145
107
80
80
106
106
94
90
145
138
74
93
142
123
119
101
89
127
59
94
107
78
76
144
126
99
113
76
137
78
111
120
88
114
109
93
76
128
72
110
116
115
93
69
94
154
69
163
106
87
94
175
110
69
126
141
121
87
131
121
133
150
96
69
127
128
78
175
123
121
93
161
58
82
99
99
120
78
101
151
120
69
131
163
120
119
87
128
54
99
93
69
80
96
105
112
94
89
118
103
76
113
88
78
66
88
90
80
100
156
116
74
102
80
137
76
56
89
80
76
109
78
134
120
76
75
76
183
113
146
104
137
88
128
78
154
136
113
74
128
175
80
136
120
156
113
119
114
80
132
154
112
114
91
78
114
109
87
80
96
127
78
113
110
109
80
99
87
94
87
175
89
121
96
72
118
119
100
76
113
117
87
69
80
151
76
140
159
103
126
142
145
112
107
106
140
95
109
87
69
102
78
126
88
127
183
109
107
131
149
96
165
80
151
54
110
120
95
143
126
87
101
94
153
96
94
113
106
80
80
149
87
74
128
89
115
87
131
114
131
96
80
128
69
103
104
101
131
156
156
151
76
88
122
153
118
74
87
104
119
131
108
69
54
89
69
72
119
52
128
107
120
130
101
62
115
69
109
69
133
120
126
156
69
130
128
54
117
130
112
80
156
89
76
154
78
93
119
102
87
101
98
110
76
160
131
94
147
80
83
101
80
80
99
99
76
111
52
69
151
76
115
78
110
85
119
87
93
197
94
175
120
81
87
144
156
128
127
93
148
111
100
100
69
115
181
139
137
69
128
125
154
114
103
146
54
113
89
174
102
138
69
93
123
80
100
201
71
131
118
69
78
111
151
96
69
175
79
80
69
119
175
76
101
110
120
197
104
109
56
109
104
106
76
106
80
120
128
91
75
92
117
146
69
69
66
110
119
121
76
148
135
109
88
80
82
117
117
128
99
71
76
112
66
119
80
69
160
107
145
87
76
110
110
102
76
94
95
52
113
69
126
79
115
99
94
76
128
94
76
76
91
131
119
113
119
103
106
69
151
76
123
118
80
69
88
80
80
76
93
99
120
160
89
78
97
121
119
107
59
136
154
78
69
144
69
106
113
88
119
104
60
136
121
87
129
131
140
107
79
80
109
154
136
149
100
93
107
110
80
119
80
174
80
87
80
115
80
117
99
121
114
109
155
80
197
120
148
87
112
175
118
69
91
69
109
104
139
107
151
151
112
175
56
72
93
175
69
120
110
127
88
138
146
85
82
69
117
121
69
69
114
197
175
69
81
100
127
76
133
109
88
156
87
175
111
80
154
119
108
88
99
89
87
109
75
78
87
66
87
74
175
80
74
94
69
68
119
72
79
154
74
78
175
69
154
107
88
146
78
148
102
90
88
94
113
69
117
100
113
178
103
91
69
78
87
89
80
52
83
134
115
128
80
54
76
129
78
69
69
69
107
80
94
114
93
119
164
155
111
96
98
84
75
100
130
112
106
76
152
143
140
80
143
106
147
94
88
136
69
106
163
145
76
111
119
174
66
120
87
76
112
121
146
105
76
88
74
123
80
134
102
119
119
85
102
104
109
78
120
140
154
106
93
110
131
112
79
80
99
79
152
119
87
121
175
122
69
154
80
106
151
69
107
107
85
133
119
76
140
109
78
175
107
101
88
118
122
95
66
121
107
88
111
98
100
80
113
72
96
107
69
102
106
93
130
88
114
93
175
151
120
128
76
80
114
89
80
114
127
197
119
124
102
175
78
154
134
99
54
126
124
69
146
113
131
89
88
78
156
114
69
120
113
102
107
131
88
128
100
85
78
116
96
156
144
197
121
146
78
134
80
99
96
121
87
69
76
101
114
76
94
103
99
117
80
52
87
107
109
94
93
121
122
163
129
113
80
54
101
80
87
121
106
116
69
80
72
69
91
106
115
109
124
88
130
69
87
80
129
118
80
119
133
78
88
174
90
80
131
99
133
120
136
95
88
69
91
112
175
119
108
140
80
72
140
75
87
100
201
78
121
79
82
97
163
69
79
89
113
69
127
88
80
80
136
89
87
111
107
76
80
93
119
80
154
166
80
100
89
43
74
130
78
146
124
78
91
112
104
110
143
134
98
87
124
64
87
78
124
119
80
69
128
74
128
90
54
113
72
87
126
98
111
96
154
110
122
109
112
80
69
119
136
79
89
99
99
134
78
123
175
78
197
73
118
76
98
154
156
166
76
151
69
93
94
175
117
104
76
127
156
119
99
126
80
117
94
106
80
72
120
69
89
125
98
134
69
109
112
114
187
104
69
120
52
80
117
109
166
123
113
76
69
134
120
127
76
102
78
110
175
128
72
76
107
107
115
85
101
110
156
88
109
131
138
120
103
146
101
80
92
106
117
111
89
87
80
136
164
78
122
78
103
87
117
148
71
118
96
183
109
128
89
93
172
69
72
164
110
128
197
104
156
142
149
129
154
197
160
76
110
112
77
110
119
129
80
119
163
124
98
95
94
113
144
119
143
119
175
124
78
120
127
103
99
126
126
101
134
76
80
120
96
91
136
128
134
130
94
88
148
150
85
76
117
155
125
89
91
183
85
120
82
120
76
94
102
87
117
101
68
80
175
154
87
98
69
100
101
129
120
78
155
80
76
144
147
103
146
52
87
122
78
92
78
134
95
133
101
88
72
100
78
80
104
56
128
109
110
80
96
80
119
88
72
140
121
107
122
99
136
87
104
175
94
112
119
144
69
129
108
89
43
155
119
131
66
124
78
104
120
78
152
151
105
120
128
77
69
80
120
131
107
164
106
88
101
122
136
132
107
143
117
78
120
100
79
101
69
78
87
69
99
83
102
110
96
76
116
175
121
69
112
123
175
129
94
153
169
122
69
111
43
87
104
87
80
154
98
106
118
69
85
126
166
67
107
117
109
87
69
93
121
69
99
128
151
104
154
154
155
80
85
96
80
87
87
80
87
103
103
123
145
69
131
107
88
80
87
109
128
83
69
69
72
100
73
80
100
128
99
136
134
99
128
142
101
132
76
119
80
122
96
130
102
119
120
80
126
133
106
69
89
128
181
117
176
69
88
146
80
133
72
76
115
87
78
102
87
131
155
104
134
147
87
78
107
100
151
120
134
104
80
86
137
99
104
80
97
69
129
136
134
94
88
119
107
83
85
89
119
154
87
107
107
120
131
94
91
120
80
104
111
113
80
137
87
107
127
134
99
104
117
113
88
89
145
59
80
89
105
125
87
89
69
128
114
78
111
69
197
64
83
80
197
119
100
78
110
54
80
125
123
126
132
100
185
144
87
175
127
96
87
87
76
99
166
87
110
134
129
72
84
80
112
80
80
128
89
78
63
160
138
87
67
78
87
80
137
147
101
69
87
110
96
89
87
128
107
99
119
64
87
78
117
78
134
87
111
134
87
115
76
96
109
99
126
88
120
163
154
127
94
115
109
78
121
151
110
87
76
127
93
78
100
93
94
102
156
136
101
101
128
96
80
93
113
119
118
110
145
89
113
115
87
69
90
80
100
91
130
80
88
80
90
76
114
138
80
155
112
69
56
89
87
94
147
118
206
72
156
109
131
74
119
69
136
113
56
151
78
87
107
120
67
69
98
119
175
113
88
100
80
172
73
112
154
87
107
154
75
69
101
56
109
69
136
91
94
72
147
104
151
197
145
75
74
128
175
136
73
126
163
87
72
104
134
175
148
119
95
67
96
107
78
118
121
127
80
146
85
134
43
130
80
175
140
87
120
123
87
93
56
87
119
143
147
87
92
88
151
69
151
119
154
102
56
154
59
129
96
150
67
106
87
175
110
112
134
206
80
79
130
128
119
93
113
80
111
144
87
130
169
54
107
88
154
87
148
125
95
150
82
87
80
96
124
87
128
110
106
115
80
114
134
96
107
118
114
119
103
102
85
102
80
115
136
115
159
56
111
67
113
112
110
156
120
43
107
120
123
94
80
68
78
117
120
94
96
136
96
111
83
145
69
80
88
136
69
112
131
69
119
107
197
117
89
159
76
154
87
73
88
91
107
120
67
138
85
129
106
101
76
132
98
104
113
110
94
160
79
197
66
69
78
130
131
64
89
99
134
156
72
201
69
85
69
80
117
160
160
104
69
114
74
128
136
102
155
197
120
99
174
145
88
103
69
138
74
107
128
71
154
129
142
107
87
151
69
69
145
113
155
152
154
120
91
102
146
119
112
142
85
87
151
156
112
114
78
91
86
90
120
123
107
132
60
175
69
160
110
72
111
119
78
118
85
119
152
154
80
87
136
201
78
80
154
90
57
87
76
98
117
128
89
88
131
54
136
135
80
104
138
162
145
69
119
88
91
78
69
119
154
69
69
111
80
76
109
87
69
119
80
106
80
104
156
105
88
80
91
132
94
90
138
126
106
99
101
152
100
88
103
93
142
72
152
107
89
85
107
119
88
123
69
89
80
175
156
99
109
80
67
93
113
93
80
78
115
99
82
121
131
120
124
88
85
96
154
99
94
87
123
88
120
104
118
117
128
80
87
76
88
80
99
74
69
99
145
119
141
131
88
88
90
132
95
128
52
101
72
80
140
134
163
98
101
90
78
119
114
113
163
87
69
80
67
110
93
108
127
114
118
87
127
104
112
119
106
101
106
113
146
96
126
129
66
152
154
124
110
79
76
122
76
126
142
66
52
87
101
69
60
109
145
80
99
95
111
89
114
140
131
93
75
87
175
120
185
88
172
117
87
72
150
121
154
146
89
128
123
115
144
69
134
80
119
72
80
102
120
143
154
111
76
69
76
76
99
78
119
128
72
69
145
87
128
100
69
104
69
91
138
175
72
128
107
69
86
69
175
104
95
69
120
109
93
112
121
87
99
76
76
112
104
94
109
94
69
127
118
118
134
102
143
93
87
135
80
69
120
102
141
87
80
69
114
67
91
80
117
164
93
124
80
107
76
162
69
136
80
114
113
132
80
87
96
80
87
54
145
123
123
127
109
89
110
147
110
175
134
96
89
109
163
80
119
76
119
93
107
80
69
59
109
69
89
125
78
156
155
120
160
128
96
143
103
93
148
72
124
109
99
80
157
165
111
72
72
119
96
128
80
93
109
89
69
146
91
78
107
128
128
104
151
175
94
69
128
89
76
102
56
117
112
87
78
109
154
94
72
78
131
69
68
133
43
119
121
80
80
76
111
69
175
69
160
80
99
87
130
129
127
73
115
151
131
115
113
155
74
104
76
67
105
87
99
80
140
120
140
91
80
134
100
87
80
76
145
69
131
79
72
89
120
120
105
130
175
83
80
76
69
99
80
116
76
136
99
127
88
131
87
91
106
87
126
73
69
87
134
56
99
69
78
155
146
175
110
78
140
69
115
101
137
145
120
130
100
120
115
79
56
84
80
145
74
127
117
106
100
175
131
83
69
80
109
124
145
126
69
199
124
101
95
143
69
187
130
80
119
78
87
87
107
119
80
109
69
80
78
131
175
128
137
133
106
118
122
175
64
100
80
127
99
76
136
69
80
107
104
126
153
119
121
76
94
110
144
103
80
102
93
120
80
140
107
69
96
151
90
96
136
137
109
78
117
112
69
80
82
69
88
73
87
74
80
119
94
141
146
99
80
163
113
78
113
85
166
175
124
131
69
88
112
69
120
80
120
119
88
115
91
140
94
89
110
118
76
78
107
69
136
78
74
90
111
101
137
75
121
117
125
93
174
88
131
87
151
128
79
56
113
111
80
78
120
154
109
74
80
76
80
151
94
80
78
80
149
69
98
78
111
93
80
110
136
137
56
138
121
119
112
80
136
107
138
69
80
107
145
104
127
56
78
69
80
174
132
76
134
175
79
69
131
175
118
69
142
78
117
156
87
121
91
140
119
78
75
128
96
88
96
127
109
78
99
56
156
88
76
140
81
79
64
109
117
119
68
102
93
107
107
128
74
156
54
72
151
136
89
117
96
103
121
90
133
79
87
152
87
154
102
134
175
125
103
111
66
69
110
131
74
112
87
121
112
117
85
136
76
82
129
140
109
94
80
154
93
137
137
56
147
75
103
136
99
108
112
154
78
78
77
93
87
82
163
85
87
97
156
96
101
128
151
99
52
113
80
80
80
151
101
106
107
80
77
101
140
121
129
69
175
128
85
80
76
67
113
78
87
56
119
113
94
112
87
80
94
87
90
69
112
91
59
78
117
107
107
128
88
87
154
143
89
76
187
101
120
93
83
144
120
99
140
88
101
60
96
80
101
80
88
107
78
87
129
76
80
80
145
106
91
128
118
104
71
140
119
107
133
123
117
88
76
119
98
113
121
128
72
96
85
134
122
66
175
76
121
158
151
106
128
123
110
104
159
104
96
96
87
74
175
78
110
155
101
154
76
104
132
146
128
197
106
106
64
94
80
83
112
110
175
90
113
72
175
109
146
94
95
89
52
146
127
91
156
107
134
134
163
119
175
67
110
76
120
67
121
68
69
93
89
103
106
110
175
76
107
87
128
117
87
99
80
96
113
54
73
143
113
127
146
132
114
88
80
68
101
163
104
93
69
120
119
69
99
155
85
87
95
52
113
113
76
97
80
129
136
80
107
93
155
111
120
197
146
80
80
78
137
136
80
115
121
120
71
95
69
101
162
164
54
106
155
114
87
76
101
117
106
107
88
129
115
114
122
87
80
123
142
119
119
133
131
80
80
155
116
87
109
69
137
76
80
111
131
125
80
99
127
175
85
101
183
139
156
52
120
106
69
80
126
138
80
119
92
105
88
113
121
185
119
128
142
109
69
78
80
107
118
128
76
78
127
133
76
113
89
152
131
80
107
113
96
127
154
101
87
99
69
89
69
145
154
94
98
84
139
87
87
82
134
117
102
110
106
80
154
119
123
118
134
72
87
151
151
95
78
77
72
74
117
88
131
140
91
107
128
129
69
119
54
85
72
104
94
121
115
88
103
89
129
107
56
120
115
76
80
114
107
87
128
88
99
128
108
129
104
69
80
87
117
80
72
103
80
116
76
104
119
121
69
131
69
90
79
89
145
88
140
162
87
89
80
69
87
107
148
94
146
109
127
99
69
43
156
76
88
109
85
94
143
78
100
80
121
107
72
151
76
107
76
136
112
92
109
82
89
110
197
154
78
140
112
80
52
87
121
105
88
89
140
156
144
78
80
107
108
85
110
154
136
142
80
141
99
88
93
101
136
109
147
137
117
76
87
108
132
87
127
166
117
88
76
94
148
54
122
80
143
130
199
78
154
96
118
80
85
143
136
153
56
98
69
87
87
119
124
76
76
154
109
74
102
115
175
112
80
129
59
69
142
120
71
135
92
126
107
100
141
123
107
113
80
88
107
101
80
119
106
63
109
72
78
123
92
98
137
156
80
111
117
138
115
85
169
107
120
80
102
175
120
156
87
100
110
69
80
114
80
154
163
110
80
89
101
154
122
114
74
175
109
80
107
136
68
107
134
162
175
80
101
93
113
80
84
76
128
58
91
125
120
199
132
128
80
156
80
78
69
128
142
109
106
56
150
175
100
144
80
144
145
96
106
80
107
76
131
154
75
154
87
113
110
111
87
87
76
75
80
126
85
78
101
93
127
133
107
80
69
100
156
107
99
119
120
76
104
157
126
80
89
87
120
133
85
109
76
100
69
99
87
74
99
110
112
140
147
113
113
94
151
88
94
129
119
80
110
90
69
87
56
118
110
163
91
110
109
110
102
89
94
94
80
120
133
88
87
109
136
69
106
105
69
119
106
102
80
89
124
101
87
67
87
52
91
127
99
87
89
125
78
101
109
76
69
103
175
80
154
80
104
78
104
130
129
60
138
101
134
74
109
56
112
100
113
101
175
120
88
127
89
120
80
164
143
155
116
120
90
112
96
52
107
122
110
80
96
78
119
127
119
96
85
69
69
89
136
80
101
130
104
87
85
155
80
119
119
144
59
133
174
127
131
140
86
80
66
109
85
98
105
106
163
174
91
136
112
101
101
104
72
88
86
156
109
128
83
80
131
104
102
101
121
99
80
80
81
199
43
109
115
197
122
154
107
108
134
157
112
131
117
76
69
96
144
101
87
80
162
113
97
175
107
80
69
105
69
110
89
116
101
138
106
109
90
69
89
102
80
69
93
78
94
69
132
175
138
91
136
82
69
110
72
78
85
81
120
76
120
106
150
99
110
134
163
115
67
69
114
109
154
103
107
106
119
146
78
117
126
91
99
199
87
110
109
69
121
118
112
128
83
87
99
119
56
137
52
90
124
152
117
120
111
136
76
55
112
109
91
113
72
67
89
140
119
89
140
128
72
109
82
75
94
69
129
69
69
100
139
151
126
89
99
111
138
154
78
78
175
107
119
69
74
87
154
128
72
80
138
134
80
156
104
87
79
89
95
119
69
104
177
130
89
80
88
140
87
127
117
69
175
76
101
185
69
106
147
76
121
110
101
131
175
110
128
78
97
52
136
112
69
69
123
105
87
107
103
111
69
112
118
131
93
80
69
166
80
119
91
134
118
154
78
174
121
112
76
94
69
109
115
112
69
120
80
120
121
146
145
87
95
104
93
104
131
154
113
138
123
80
131
109
103
144
136
111
129
154
87
80
99
147
78
102
80
119
99
117
154
94
91
153
158
155
122
118
104
127
56
94
87
87
106
117
69
69
151
78
69
127
83
123
73
80
109
121
89
69
115
122
78
123
119
78
99
175
69
164
78
129
120
195
80
73
96
119
80
120
76
80
154
197
89
104
118
107
85
88
80
110
75
80
119
66
122
124
106
80
121
69
134
78
56
155
156
80
67
91
82
85
69
131
107
104
76
69
119
149
131
78
146
98
87
93
78
145
114
101
126
128
69
76
93
151
101
124
87
115
80
99
87
151
118
99
93
164
100
172
117
154
110
82
110
153
89
80
98
113
87
100
151
91
106
67
88
117
144
155
156
89
104
93
104
164
108
115
140
107
110
80
104
134
146
118
80
76
64
78
120
101
87
102
82
78
78
112
96
87
76
76
89
66
78
80
80
146
133
120
80
107
138
123
120
93
134
80
119
175
107
94
117
116
99
104
76
92
143
105
69
112
103
134
80
128
82
80
96
107
69
69
100
69
119
119
69
94
99
74
69
134
94
90
69
104
143
93
95
80
89
117
197
80
80
67
120
109
131
74
154
142
169
175
87
110
69
121
94
80
120
79
94
145
117
148
100
154
102
78
90
78
107
119
110
107
76
120
107
100
129
95
129
76
85
107
74
126
117
78
145
110
151
80
69
80
120
88
107
97
69
112
80
156
80
72
80
119
131
119
112
107
120
131
197
95
101
99
112
109
107
101
69
119
80
140
93
107
132
52
99
85
89
87
80
142
76
112
175
132
197
128
120
109
115
87
92
56
131
115
109
80
94
114
98
154
69
94
78
94
121
118
52
87
87
83
140
106
74
126
78
96
98
80
119
101
131
110
118
90
148
124
80
155
104
66
120
91
137
80
69
99
119
128
89
109
119
66
107
80
80
175
99
163
151
85
108
101
69
181
122
136
140
162
69
104
148
146
108
89
155
113
156
197
154
140
138
80
69
94
78
158
118
126
99
175
88
111
128
87
139
124
78
205
98
89
89
110
119
112
106
87
69
107
93
127
197
54
98
107
78
95
87
80
123
89
103
107
107
140
100
110
118
94
104
94
109
107
69
99
92
119
80
140
80
93
122
133
80
90
87
91
130
144
94
88
76
92
80
120
163
117
183
69
143
127
102
101
69
111
181
155
102
109
175
76
155
120
96
155
79
69
125
127
185
199
175
80
181
176
199
113
99
132
119
119
100
93
94
96
69
78
78
120
87
134
80
103
69
52
123
133
174
117
175
149
162
80
80
122
154
78
109
89
144
106
100
149
117
69
87
154
111
124
113
130
175
101
71
56
133
72
119
56
156
114
78
118
109
174
112
125
88
89
119
78
76
136
76
145
80
80
144
160
175
106
87
87
86
131
89
131
98
80
124
111
104
76
104
146
69
78
117
131
119
80
120
76
128
56
109
76
106
131
91
112
87
69
80
163
144
85
113
155
175
109
80
119
117
74
94
120
80
168
69
67
118
120
94
80
100
111
146
72
80
136
60
93
76
80
80
176
54
112
104
114
109
175
80
112
89
89
119
93
119
96
120
193
116
119
78
128
78
96
134
154
142
99
120
76
78
80
98
87
114
80
69
104
90
95
88
90
110
63
78
52
100
80
104
156
107
107
120
154
136
78
151
149
87
104
105
101
162
69
72
80
80
106
99
110
78
88
76
107
119
110
109
96
91
108
136
126
95
80
106
92
80
83
54
88
103
106
132
69
69
109
88
113
98
119
119
100
112
69
103
156
80
149
154
87
96
128
63
175
80
175
154
129
175
69
83
145
87
87
72
107
106
101
69
110
136
130
101
126
134
163
80
80
60
87
151
54
124
134
110
80
120
104
119
76
146
104
154
145
113
127
107
127
134
121
120
160
96
109
121
112
76
89
102
72
117
78
88
80
88
120
99
80
131
118
80
124
113
76
106
129
146
69
107
107
97
74
142
107
80
72
69
154
126
110
161
98
107
162
131
87
130
78
154
109
117
183
97
136
89
74
69
111
111
89
87
94
69
120
76
133
121
125
99
109
80
93
69
104
69
87
93
89
87
109
107
87
92
69
101
154
76
94
136
131
87
106
140
80
115
72
107
54
109
101
154
80
78
174
106
143
87
80
197
93
69
100
136
100
134
87
110
112
123
121
164
52
162
69
133
113
99
146
69
54
94
127
52
87
101
115
80
104
87
80
87
80
117
80
104
78
80
80
121
118
56
87
106
101
76
63
138
140
80
113
76
80
80
151
183
112
69
112
78
95
69
69
93
106
54
88
115
54
80
119
76
80
72
107
80
175
123
80
82
94
98
143
80
154
118
78
52
154
128
102
88
129
75
175
134
88
80
131
88
76
106
78
110
96
113
183
131
56
76
136
72
80
155
106
88
80
127
97
114
110
94
138
157
87
87
91
96
102
94
121
112
80
69
93
118
72
112
88
140
113
94
120
119
119
122
128
87
134
118
119
89
99
85
175
69
87
127
78
98
137
106
140
114
87
128
131
69
101
120
113
106
100
75
123
106
64
56
149
102
136
78
121
121
104
146
94
137
133
72
76
134
76
89
87
112
141
126
76
148
126
101
104
121
104
98
58
80
91
94
80
201
154
107
120
80
131
94
69
87
117
76
78
69
144
123
175
112
78
98
115
88
69
74
78
80
101
80
88
175
122
114
56
69
80
111
78
120
80
119
119
87
82
107
113
99
93
72
156
110
114
76
78
89
156
80
112
89
89
78
175
133
157
80
69
84
67
76
88
110
95
132
112
87
107
72
72
88
78
80
99
80
89
151
120
96
80
100
69
144
115
94
87
127
89
66
85
69
104
155
106
120
69
201
137
99
76
101
109
69
143
120
151
110
69
76
101
119
99
107
126
91
69
112
104
87
113
120
148
126
136
109
106
56
73
69
87
126
69
87
142
142
76
132
88
163
67
69
128
94
107
106
131
140
73
140
89
80
80
109
128
99
99
117
83
88
108
75
110
175
122
102
124
74
76
80
107
100
66
87
123
69
89
157
156
94
96
74
121
123
87
80
144
141
93
69
120
98
71
134
131
120
80
69
99
82
80
104
78
156
104
80
69
58
136
104
80
89
93
96
109
54
109
82
96
148
76
109
120
76
85
156
119
176
80
99
119
110
113
97
76
87
78
88
156
76
128
127
162
109
119
120
108
120
164
101
154
69
87
89
130
88
140
120
69
94
76
78
150
112
175
137
120
104
163
145
94
156
144
112
154
69
117
155
131
109
119
80
87
117
155
139
134
78
69
112
117
100
137
76
89
138
121
89
163
78
110
100
154
69
69
54
128
73
109
80
87
89
97
108
80
110
80
106
117
142
78
131
69
76
90
96
120
150
96
69
87
117
134
79
89
174
120
136
78
134
117
94
107
151
117
94
80
80
121
105
120
88
78
80
103
78
94
118
80
87
151
104
101
87
109
140
102
84
77
76
87
120
107
140
126
107
72
154
100
87
78
69
130
124
88
148
146
110
121
138
85
107
91
151
156
151
95
151
91
88
74
131
94
80
59
69
124
136
120
112
127
137
80
127
122
87
76
87
113
80
147
79
128
102
154
119
128
89
102
80
109
100
120
80
80
128
137
72
69
136
107
88
78
111
130
111
69
119
88
69
80
156
99
68
94
69
87
106
83
96
163
121
102
146
175
104
76
87
98
69
131
94
72
174
175
121
155
107
80
162
109
88
140
85
69
80
125
104
80
104
121
69
128
113
105
93
69
72
122
72
94
133
128
113
154
136
87
136
134
101
118
76
131
93
69
106
145
69
80
103
69
197
110
54
131
109
80
117
151
145
87
101
197
87
83
94
101
102
110
107
125
119
73
109
106
112
131
136
80
121
78
78
128
80
119
134
106
142
145
92
134
76
87
119
136
183
76
80
148
91
69
124
107
90
137
109
114
87
128
128
113
132
136
163
89
80
89
54
69
92
103
155
108
118
60
91
103
69
134
71
97
101
80
113
99
119
123
90
94
119
144
88
91
80
111
119
69
72
69
121
136
175
93
159
71
88
152
69
120
107
87
117
102
69
91
76
69
126
87
117
93
102
120
197
115
112
119
112
94
154
136
85
69
107
91
151
119
133
119
131
111
115
109
142
117
80
76
107
80
118
127
87
78
96
96
78
131
85
117
67
59
106
88
75
91
153
112
111
87
109
134
120
103
69
146
83
110
141
126
131
76
90
140
146
120
109
176
80
131
80
69
80
80
69
80
102
72
77
92
134
101
80
87
172
110
136
101
117
95
56
175
80
154
124
84
126
134
130
102
130
87
119
120
93
80
80
87
88
102
114
99
111
106
80
69
76
120
81
104
82
118
87
99
125
76
111
148
119
128
99
134
80
119
69
119
77
80
69
90
67
80
78
109
76
80
148
164
72
92
52
74
76
103
119
87
115
87
89
69
87
79
63
107
99
94
125
120
74
80
121
149
69
142
147
127
136
93
128
87
122
113
111
80
122
121
89
197
118
109
69
120
134
88
80
91
78
102
101
137
110
80
113
78
107
76
106
175
107
91
88
151
112
88
80
113
115
134
78
146
119
128
106
96
67
87
115
152
115
155
58
175
121
120
95
69
66
69
89
80
140
78
93
80
107
117
80
114
143
101
109
89
54
80
78
94
163
90
115
121
96
107
80
97
88
147
119
110
178
80
87
90
78
90
98
175
197
96
69
80
109
107
104
154
137
175
86
175
134
100
83
197
64
101
175
144
59
99
119
126
123
109
121
83
87
109
88
117
86
69
88
76
155
69
69
105
94
100
128
156
106
93
100
146
156
80
119
89
80
147
107
78
148
70
104
88
114
115
87
98
104
106
152
78
119
69
112
123
104
69
87
69
125
132
107
163
90
63
69
120
151
82
87
94
83
104
155
66
175
125
89
101
109
78
88
78
89
89
80
83
112
155
136
107
127
87
78
137
119
148
157
134
58
197
69
101
80
110
113
66
96
69
99
69
136
60
79
107
106
119
118
72
76
81
118
67
128
69
69
145
87
120
80
96
119
124
107
107
119
80
117
121
110
132
115
140
138
107
69
110
91
76
132
97
112
87
120
129
107
126
69
87
106
107
69
72
129
120
94
69
80
106
89
73
80
94
136
175
89
123
106
104
69
76
103
119
80
129
80
152
69
76
78
95
76
69
96
100
78
155
69
83
107
79
90
67
175
137
110
90
96
76
143
76
99
128
72
87
102
134
128
78
109
99
104
131
172
119
80
80
134
80
107
127
128
121
119
104
69
121
156
165
116
89
75
151
151
99
107
115
128
74
151
154
76
110
155
115
69
71
111
146
156
136
83
95
120
87
78
128
56
112
78
78
98
93
87
117
88
98
102
97
69
113
118
166
175
96
87
80
142
95
122
93
104
117
117
56
134
93
117
164
114
64
102
126
140
118
145
129
146
87
69
119
119
94
134
117
80
87
112
87
74
69
130
195
80
52
87
127
94
101
80
134
106
112
82
107
155
69
69
142
164
80
78
69
106
126
92
114
117
107
137
121
104
95
155
69
140
80
113
96
101
143
85
88
83
155
164
81
80
80
93
131
132
110
101
100
155
175
104
154
104
110
104
129
80
116
110
106
85
117
121
109
154
146
76
152
80
119
99
78
132
106
104
120
109
91
80
110
80
156
101
175
143
104
134
154
136
87
89
69
120
72
148
80
98
163
88
125
138
121
74
155
120
78
96
107
113
157
88
110
99
175
104
101
128
80
90
76
85
69
87
107
107
175
67
110
69
93
110
117
87
119
76
80
104
106
80
80
99
89
78
60
69
163
165
112
115
78
69
112
107
153
122
141
110
175
80
127
76
127
121
129
71
111
80
80
72
85
87
76
100
69
147
87
160
99
148
128
110
105
99
115
128
154
197
82
78
143
88
106
80
69
69
120
88
76
209
175
80
144
107
91
175
127
87
99
117
80
110
80
107
145
120
69
88
106
146
123
117
52
104
83
156
80
132
101
136
80
148
99
119
95
175
80
136
113
74
76
69
94
99
123
112
120
78
102
133
127
103
134
175
106
105
128
80
119
80
87
128
94
78
104
117
85
110
94
119
163
109
87
140
80
69
99
117
113
88
87
91
76
113
76
106
69
163
129
112
120
156
121
109
128
175
117
104
69
145
80
103
104
122
78
90
176
80
111
178
100
104
87
99
112
95
131
76
88
111
103
104
116
175
127
85
82
104
175
80
146
78
80
127
89
97
154
134
136
132
87
88
104
111
87
87
154
109
94
101
87
78
106
69
128
69
127
172
140
76
96
120
88
76
109
87
58
126
119
80
140
119
74
107
76
96
134
119
94
126
69
91
84
86
109
101
134
133
197
87
126
109
114
160
95
80
102
80
185
128
127
120
127
78
104
110
91
89
122
112
117
100
127
80
76
98
101
97
103
88
154
80
107
121
92
149
118
148
94
154
87
101
118
130
80
131
66
119
80
111
69
161
87
120
84
88
83
152
92
120
165
90
156
129
69
117
127
69
93
155
155
120
106
157
119
69
103
117
117
115
110
91
76
87
76
78
78
74
71
87
117
60
87
110
97
80
127
101
136
139
109
87
112
87
69
69
119
71
129
97
138
88
131
91
110
93
129
105
94
110
80
107
118
76
112
133
80
76
107
120
69
101
80
93
80
127
131
106
136
88
155
120
129
98
124
78
72
54
102
78
76
87
96
79
80
101
101
136
99
110
143
126
80
78
121
80
94
128
87
112
87
100
140
91
78
80
104
101
100
54
78
107
128
76
145
145
90
136
137
89
106
94
90
110
110
156
78
80
99
123
89
163
97
112
88
72
156
87
134
142
87
134
107
87
78
112
80
69
134
80
113
69
80
80
102
120
117
80
95
102
76
137
110
109
106
76
94
69
102
85
95
80
78
155
88
103
119
137
89
57
78
76
80
72
100
80
94
80
110
52
106
76
79
106
175
99
174
162
100
93
89
87
109
113
137
66
101
137
107
113
85
104
112
113
82
145
69
115
104
144
80
69
104
76
185
76
112
131
69
69
78
80
107
80
156
82
90
69
85
80
136
87
69
109
54
78
63
134
69
151
59
99
209
78
88
110
123
96
93
117
93
76
109
92
78
69
154
155
80
96
109
175
145
165
104
113
107
106
122
66
151
133
154
113
199
120
89
83
71
151
94
87
119
138
78
89
99
112
72
69
132
110
102
69
101
93
69
89
110
128
163
80
69
144
82
197
78
111
87
110
80
80
164
156
80
115
129
137
100
153
99
69
94
100
78
87
119
87
80
72
176
76
149
197
154
54
69
76
120
104
88
69
87
117
103
69
99
94
81
88
162
122
72
80
88
72
72
88
87
114
98
104
94
69
107
144
112
80
150
106
59
113
131
112
93
117
128
107
120
131
119
109
78
78
102
107
126
146
127
98
128
69
87
107
87
80
114
69
104
98
113
107
99
78
76
102
102
115
145
151
134
74
91
122
43
98
69
87
102
78
78
80
78
76
125
128
154
94
162
69
122
100
96
76
124
109
91
134
109
128
120
76
76
93
87
90
197
89
78
76
109
95
154
52
147
166
109
78
119
156
87
80
104
87
106
87
89
99
85
94
76
156
110
162
69
87
69
100
69
69
142
106
175
128
118
88
125
87
63
160
114
96
134
74
92
80
101
96
93
119
78
89
100
146
121
69
136
69
137
122
124
164
87
131
52
77
80
80
54
159
121
88
155
101
117
124
146
102
124
132
132
119
125
120
80
95
90
111
80
144
69
69
80
100
99
66
112
134
104
119
109
154
96
113
104
154
128
89
156
78
88
100
136
183
87
112
102
130
151
72
76
156
126
89
115
87
157
78
93
101
146
151
138
94
136
87
89
78
119
89
80
69
80
101
78
80
80
112
187
69
167
118
69
119
107
120
120
155
110
72
80
90
74
90
89
74
124
119
146
85
154
107
69
91
76
115
85
87
121
107
118
141
120
106
126
54
154
54
87
80
114
78
155
156
69
69
78
109
87
119
87
99
56
80
109
87
148
80
197
94
119
80
98
79
146
78
78
109
80
121
88
128
107
119
94
112
143
132
137
128
104
76
69
113
118
145
107
76
69
114
154
87
147
129
128
92
110
122
87
91
127
120
80
156
142
118
84
115
163
132
56
80
87
78
76
69
146
80
140
69
124
113
117
69
87
122
80
109
136
163
78
110
118
88
105
119
69
69
72
72
123
71
100
87
117
99
154
88
89
142
104
72
87
76
109
123
87
89
83
122
115
154
112
108
115
201
99
80
60
87
94
136
91
119
110
74
91
69
121
119
175
76
142
145
136
131
99
85
130
111
134
108
87
122
151
119
137
100
92
112
130
87
76
69
76
69
99
80
80
56
127
112
155
132
69
103
197
87
117
134
106
94
87
73
89
85
121
110
107
72
87
175
99
147
119
111
118
91
151
87
123
72
115
160
121
154
87
120
78
52
112
107
175
76
74
78
110
107
113
151
76
95
76
103
154
106
78
72
123
128
89
197
113
69
175
119
66
134
108
107
69
76
87
119
100
69
118
78
72
137
80
118
112
80
88
109
87
131
89
119
69
127
43
78
128
104
69
56
94
80
121
129
110
87
77
150
137
66
93
107
100
91
87
175
87
93
185
69
122
87
151
140
101
104
89
52
78
78
175
89
134
112
88
134
119
80
209
87
128
96
117
113
163
76
106
134
146
131
83
119
137
119
100
136
143
89
112
106
122
87
111
58
107
80
85
106
110
80
103
69
80
94
76
69
82
115
72
153
94
76
134
102
80
100
156
155
124
120
128
126
107
107
80
78
99
89
109
110
128
80
78
140
136
175
136
87
87
131
117
138
129
89
69
120
137
69
148
140
80
87
80
147
78
107
134
133
78
119
175
67
80
103
91
69
199
99
89
156
104
107
156
104
109
120
94
80
120
100
80
107
73
109
91
69
107
113
96
114
74
69
80
119
106
87
72
72
91
69
76
145
106
181
130
101
80
93
104
109
163
113
80
80
76
87
137
80
88
99
128
106
106
80
87
93
124
80
131
78
152
87
137
197
78
103
89
96
80
72
72
129
101
76
119
78
131
78
89
83
128
92
120
120
110
128
82
87
69
104
87
110
128
78
78
114
69
94
78
197
107
87
107
89
122
104
106
78
94
78
94
80
78
80
140
88
131
69
126
131
78
88
87
128
88
154
122
80
92
117
94
107
103
80
80
151
87
79
154
78
154
148
80
113
128
146
89
96
109
69
85
92
125
76
107
114
54
154
128
138
155
154
119
163
114
156
106
148
90
127
126
125
85
93
112
107
131
139
99
89
115
52
196
93
87
104
155
87
69
119
89
113
119
91
104
69
120
91
127
69
76
143
119
94
125
100
124
69
128
154
113
87
113
101
69
78
126
120
87
156
197
110
102
99
79
136
164
126
134
118
75
99
94
113
131
108
131
69
112
95
85
159
69
162
80
72
66
87
105
94
175
120
99
131
80
99
124
80
72
79
76
58
106
163
151
106
92
80
143
78
120
113
101
136
72
69
123
120
197
145
128
121
113
91
137
136
117
113
84
110
162
107
94
87
80
79
135
64
144
106
80
56
78
87
81
90
119
128
147
90
76
118
78
138
104
69
111
98
90
94
80
156
58
113
128
107
69
96
138
69
85
136
91
121
96
113
80
72
132
69
78
80
78
80
100
88
69
165
107
96
145
136
119
78
121
108
100
148
89
85
119
131
140
80
113
154
148
100
129
143
72
89
69
93
87
88
130
154
136
91
154
87
135
76
78
99
78
87
110
91
110
142
97
112
140
133
89
76
76
113
69
72
128
96
89
117
78
154
128
112
66
138
131
145
87
69
97
89
100
131
78
133
87
72
80
91
96
100
111
140
100
108
69
80
80
99
165
120
69
106
69
87
69
154
121
154
128
113
80
126
128
80
93
89
78
107
102
146
128
197
69
96
120
119
120
131
69
136
83
90
165
134
80
175
115
133
93
121
107
82
99
133
109
104
104
131
119
88
156
101
101
131
69
80
140
69
78
145
120
163
88
80
95
140
72
109
112
121
99
110
67
112
87
107
80
92
95
131
80
145
89
131
175
87
64
93
151
119
154
175
80
87
117
145
186
131
80
72
88
110
110
119
120
91
76
99
69
125
99
120
76
125
153
151
115
197
69
78
69
131
184
126
80
147
101
151
84
120
89
174
82
169
104
124
131
76
69
78
137
78
90
80
120
54
78
69
131
119
69
101
69
89
80
74
148
120
99
128
54
120
76
114
119
80
80
156
91
110
140
131
76
78
100
175
113
80
107
119
175
120
91
80
96
91
112
78
84
140
136
109
91
117
120
131
88
216
93
80
140
109
101
116
136
73
98
76
87
76
80
134
82
141
78
107
54
87
148
155
158
72
115
100
99
121
103
117
139
104
98
96
119
74
76
107
142
101
130
81
106
128
121
64
119
129
113
99
101
111
78
112
117
175
119
104
110
80
102
85
104
104
146
107
102
128
78
128
99
83
56
85
99
120
120
103
155
87
111
78
114
69
154
91
140
80
93
93
101
119
131
109
140
76
75
103
109
121
95
98
113
69
162
69
171
126
80
119
129
88
103
148
120
134
115
109
87
123
85
120
68
127
56
87
83
69
78
163
89
127
166
80
123
111
72
110
110
72
80
87
80
72
107
106
109
110
99
101
87
80
155
69
87
109
72
128
80
118
80
128
76
136
163
94
100
113
76
121
151
197
121
93
110
112
100
69
80
57
119
102
100
136
74
78
102
98
109
113
93
120
136
132
89
99
80
109
43
107
154
151
87
84
118
119
69
143
76
115
186
119
106
74
78
150
120
132
136
138
157
115
83
80
72
80
129
87
80
131
69
76
93
89
101
93
87
90
116
96
175
87
80
69
105
148
94
154
87
75
141
117
94
104
109
104
89
96
69
69
87
104
78
101
131
117
107
94
110
87
121
69
155
128
80
110
80
110
72
69
146
154
126
73
134
121
85
73
155
133
93
110
106
114
100
93
93
112
95
77
69
104
52
96
109
117
80
74
87
90
119
143
128
76
99
93
148
102
72
148
74
87
118
160
138
78
87
164
136
132
80
175
109
69
76
88
117
69
78
83
80
89
104
64
96
137
69
118
121
126
82
109
102
76
69
107
109
95
91
90
148
119
87
69
85
154
148
113
88
93
83
97
120
104
117
137
43
80
128
96
87
74
102
137
114
107
100
89
113
106
107
80
181
111
120
67
67
132
111
99
126
110
80
122
74
113
78
99
94
107
136
104
88
100
160
78
110
76
106
87
85
91
74
85
80
136
88
88
87
123
69
112
76
100
80
89
87
76
155
119
109
72
156
97
121
119
102
87
76
121
142
88
87
101
95
80
197
148
80
111
104
100
175
156
119
69
148
80
100
78
126
181
119
143
80
78
152
69
151
119
126
109
147
122
87
120
87
112
154
127
110
156
80
54
136
98
54
78
122
108
76
80
78
121
67
106
176
154
83
69
143
90
74
128
153
131
155
136
120
72
87
115
99
78
156
113
136
154
113
120
123
80
79
124
149
91
151
112
107
121
117
104
103
120
76
94
119
87
74
107
119
88
89
88
175
134
174
80
78
80
145
87
79
128
101
80
69
85
104
98
151
122
104
99
110
164
95
59
121
69
121
78
152
154
80
80
131
131
72
87
80
145
100
88
109
183
80
104
114
106
109
94
110
121
129
72
154
78
169
87
99
67
101
90
99
143
128
80
134
134
87
107
80
80
74
119
197
120
80
80
80
69
146
119
99
162
69
120
60
80
120
94
140
109
80
109
175
76
143
87
90
153
82
77
87
69
80
115
123
117
76
66
77
110
119
85
120
128
78
134
112
118
112
154
149
80
89
164
80
113
140
119
80
108
88
54
154
125
128
120
69
78
98
78
114
113
123
127
121
76
136
89
155
154
114
54
69
119
124
113
119
69
182
87
69
120
133
98
107
152
163
146
80
87
123
80
91
115
80
74
69
80
128
111
110
103
78
201
76
88
132
123
99
74
181
115
113
103
99
54
69
80
99
80
154
148
185
85
75
91
80
183
131
157
83
127
110
106
155
80
101
69
104
119
43
126
124
78
80
68
88
138
120
120
115
94
114
78
123
147
101
80
56
80
140
80
119
103
109
78
140
145
121
72
146
112
175
94
69
104
145
76
87
140
121
123
87
117
120
92
80
120
69
80
120
112
142
78
120
143
69
111
120
125
80
119
185
119
162
69
128
112
66
80
103
87
56
122
145
76
113
109
107
123
78
128
107
104
96
104
88
80
87
154
106
122
91
129
154
118
69
144
101
82
140
110
123
118
150
87
114
120
87
136
78
74
124
107
76
80
87
94
175
124
163
133
94
118
155
106
115
89
102
143
78
94
115
101
144
94
96
71
106
87
80
119
59
105
72
154
57
93
101
69
120
124
111
140
109
88
106
78
112
156
112
131
116
121
120
114
142
80
154
94
91
117
87
80
147
164
69
104
131
127
74
80
54
93
109
113
111
80
91
69
113
142
99
87
112
119
119
125
151
78
87
88
69
80
52
104
87
145
133
109
126
89
153
80
136
83
72
76
56
114
113
66
187
69
78
137
106
110
87
175
76
80
172
134
163
114
136
120
104
77
105
69
96
112
69
69
115
89
149
94
134
80
110
119
164
118
94
119
151
105
79
148
89
90
154
106
56
132
111
151
197
160
133
134
66
110
82
87
149
78
80
131
107
80
54
99
93
119
80
120
80
148
99
110
107
131
133
95
124
97
80
144
107
141
103
127
183
119
99
156
80
136
119
87
87
107
151
127
175
122
75
72
209
117
76
80
72
154
69
87
106
80
107
80
80
89
87
156
119
76
123
76
80
130
88
87
131
106
129
155
80
130
127
128
78
89
103
101
136
197
107
135
121
119
128
137
110
78
87
100
80
155
145
98
123
102
107
152
54
187
54
127
175
175
135
80
145
99
72
93
114
107
128
96
120
78
113
75
102
159
87
87
99
201
150
77
88
99
103
80
80
104
151
76
154
123
72
120
160
97
79
132
110
96
138
113
87
69
93
112
123
69
78
144
76
76
133
164
94
129
79
119
93
80
133
113
76
87
169
87
104
152
76
185
134
87
78
119
87
140
88
118
54
94
99
76
119
128
80
87
76
164
87
80
99
182
103
140
148
80
121
91
109
80
99
76
80
112
131
78
104
113
140
123
112
110
183
69
94
153
87
181
120
137
112
101
78
64
136
89
90
123
134
107
97
78
160
128
118
144
87
72
120
78
80
88
183
120
69
83
142
119
175
165
134
162
119
94
154
80
169
69
102
126
94
121
174
156
109
156
67
128
142
175
113
89
109
109
80
88
93
78
119
43
145
81
205
137
143
154
67
111
74
58
148
151
120
69
123
109
197
89
129
101
199
154
134
87
93
128
76
152
115
90
76
164
140
125
154
80
87
156
99
102
124
88
69
112
131
89
112
122
133
94
89
82
119
100
72
69
134
78
78
69
80
162
82
119
88
119
100
80
143
95
80
69
119
120
87
101
88
131
120
134
120
88
175
124
69
118
174
128
120
132
93
120
74
78
69
94
117
119
128
107
120
105
100
149
134
119
123
80
174
133
128
69
96
76
201
128
156
87
143
108
128
131
175
78
119
69
100
113
175
107
156
154
104
175
79
69
105
74
76
80
76
166
143
121
110
87
120
127
69
101
137
91
104
131
133
120
87
118
138
80
54
137
117
87
122
128
100
78
86
78
121
183
107
120
153
175
87
85
96
56
127
111
136
137
125
145
54
176
139
91
128
159
78
107
71
101
132
109
123
80
137
101
126
175
87
87
102
81
134
76
119
69
104
69
88
129
154
107
72
147
144
99
80
174
88
94
78
100
87
109
69
117
119
128
102
85
131
107
99
120
87
124
76
121
96
140
92
110
154
94
87
95
148
90
80
117
80
154
114
156
76
76
155
175
175
104
128
118
88
121
72
160
87
128
121
199
129
69
120
117
83
112
145
103
110
69
121
109
125
121
136
112
87
96
112
154
78
84
78
111
117
97
127
101
128
87
166
120
90
115
88
119
147
99
87
96
120
89
119
131
87
124
117
107
139
87
175
104
144
126
89
147
156
152
89
175
147
76
117
138
128
69
124
88
69
108
104
129
110
119
109
76
93
87
109
54
151
82
76
87
69
112
110
80
104
69
100
78
76
69
64
89
147
175
113
156
80
80
69
76
114
89
110
99
119
154
54
87
136
86
94
143
80
93
89
80
154
94
76
154
99
122
80
52
80
72
134
78
96
99
117
101
154
100
101
131
78
93
154
113
99
187
88
90
112
80
136
126
96
88
52
119
128
155
69
78
78
69
87
146
80
119
146
145
99
90
76
119
80
87
109
111
119
154
110
110
110
124
117
117
80
78
87
127
89
175
52
78
140
104
185
100
78
95
56
132
134
110
91
123
160
69
156
88
146
114
132
99
91
104
115
154
160
114
136
109
104
69
112
104
164
120
79
132
120
119
69
130
91
83
164
175
88
102
87
64
78
69
78
127
80
109
127
77
80
73
94
54
114
112
143
126
153
136
175
74
93
85
106
175
74
80
111
112
95
78
103
94
87
136
185
87
78
131
104
87
115
69
119
87
120
99
114
80
78
154
134
94
99
126
88
76
69
80
97
76
175
87
76
128
128
139
120
90
127
79
132
154
119
89
88
87
80
104
143
96
80
127
78
101
80
91
121
93
175
88
69
113
126
93
110
140
122
99
89
89
130
74
103
103
120
89
87
78
175
120
155
80
97
75
108
69
101
154
110
78
95
78
118
69
96
185
123
119
80
80
118
80
93
97
164
100
104
81
97
134
117
69
87
119
167
99
175
106
76
156
107
78
91
78
136
80
80
69
110
175
69
76
128
113
110
102
72
93
72
104
87
93
131
126
175
109
80
175
76
110
80
89
80
80
94
106
123
56
143
113
87
146
80
129
80
156
80
146
91
106
140
80
102
126
89
96
140
87
129
109
94
94
56
80
114
106
94
183
110
52
109
128
114
88
128
119
162
80
66
72
87
131
69
57
123
131
119
155
110
69
119
140
89
104
107
120
80
111
101
137
87
106
80
74
75
91
129
117
80
88
122
96
176
119
92
90
150
76
69
88
99
67
76
142
107
155
156
172
80
89
128
134
104
88
119
78
111
151
197
156
122
133
129
151
96
88
93
131
107
175
117
80
110
80
130
66
91
89
135
80
156
126
87
136
165
63
87
78
123
175
88
80
130
91
121
96
119
80
112
87
54
175
87
112
76
94
129
125
88
175
146
160
154
162
101
68
201
89
80
89
69
131
93
146
75
127
107
89
95
94
96
101
107
134
83
84
95
119
117
69
91
119
69
154
175
93
175
80
183
69
119
119
104
131
107
78
104
151
154
130
56
80
78
69
100
123
80
113
126
60
88
43
140
93
114
119
72
80
172
113
91
125
124
131
175
91
91
128
89
86
60
101
121
124
89
120
136
156
197
89
109
87
130
80
69
69
127
111
110
122
175
91
96
119
88
132
100
67
106
78
106
136
80
115
78
134
76
70
64
138
94
109
87
87
93
148
107
80
76
129
121
107
80
121
119
106
80
78
76
140
146
71
160
145
105
110
160
80
78
110
69
80
69
112
117
114
82
123
98
133
136
127
111
80
76
69
109
80
87
124
80
138
102
80
76
69
128
201
74
89
134
102
104
69
88
80
120
117
119
66
106
90
113
87
91
69
107
128
91
104
118
80
107
72
76
77
126
110
122
121
54
69
120
119
89
197
124
110
87
69
109
87
80
129
80
121
76
154
89
119
128
75
76
149
119
175
128
111
151
123
87
93
119
145
104
89
89
119
76
162
115
112
126
102
87
69
94
110
102
187
91
136
175
112
80
69
83
119
108
121
80
144
117
123
87
119
163
119
80
78
78
122
76
87
88
136
107
133
80
94
160
160
90
146
134
96
102
154
117
115
80
99
115
87
87
111
72
110
199
151
76
64
185
80
93
172
117
83
127
80
123
119
110
137
80
80
146
87
107
96
123
89
80
96
80
94
69
152
128
136
128
89
197
69
87
76
175
72
58
128
106
87
107
104
133
80
154
126
161
103
96
96
80
134
148
129
136
69
89
125
80
107
102
80
128
80
90
66
78
99
69
115
105
89
74
88
101
76
74
106
52
162
141
69
114
120
128
118
91
132
138
78
69
88
143
122
80
69
80
89
146
119
104
88
120
107
185
99
128
119
159
74
91
88
69
67
121
127
123
121
69
107
91
126
76
118
154
129
128
106
87
78
78
52
131
80
98
69
101
90
80
88
74
119
107
131
110
113
87
80
69
79
54
66
113
104
128
54
123
215
143
109
118
106
69
76
89
107
122
69
155
111
78
73
69
131
78
78
109
147
87
80
140
80
119
110
98
69
87
146
118
85
80
87
94
123
80
87
76
131
131
132
80
142
119
134
110
80
123
113
80
69
93
80
123
99
143
89
102
83
103
151
87
87
88
63
82
100
111
80
80
107
105
146
106
106
155
89
94
154
76
118
82
83
69
140
91
94
76
80
99
86
72
79
80
80
69
103
89
121
67
98
76
90
99
100
131
91
123
197
150
161
122
137
80
87
140
122
175
104
80
89
52
93
67
69
166
108
69
69
69
175
78
107
113
76
122
109
122
87
121
90
166
80
105
143
109
134
185
169
175
150
93
80
80
104
87
110
81
97
110
177
113
153
69
69
146
80
101
96
115
112
80
107
72
80
106
85
107
69
121
99
151
67
119
127
109
78
197
138
75
98
88
80
52
63
80
54
110
127
80
97
78
80
140
76
78
114
108
72
89
110
54
88
116
75
124
69
175
117
133
119
69
80
120
69
91
87
97
127
140
154
87
99
99
128
114
56
128
133
80
145
111
132
87
118
197
80
102
104
113
80
197
149
143
111
154
109
110
94
72
107
119
76
124
112
122
109
88
76
160
80
119
52
104
88
78
155
94
152
181
125
154
69
67
128
95
120
156
92
140
91
120
90
43
80
110
121
106
140
54
69
105
110
69
138
175
94
113
89
80
107
101
154
125
128
80
172
175
93
104
96
157
126
81
94
106
78
99
78
123
109
106
80
99
79
126
101
108
90
89
88
69
89
110
187
112
99
93
89
151
80
110
57
160
123
94
94
89
78
80
120
140
69
99
100
116
117
69
80
90
154
60
80
72
87
92
78
111
90
123
157
80
78
110
93
132
151
107
137
96
100
88
80
101
113
88
121
88
107
119
111
91
140
136
128
74
76
113
78
93
69
98
117
87
54
103
102
72
69
110
69
131
110
80
145
120
136
88
112
160
110
119
87
54
89
110
112
99
80
69
80
69
117
74
93
128
119
145
104
94
85
174
89
78
115
154
99
100
94
87
117
87
109
100
100
83
112
106
107
89
87
113
80
80
54
87
80
69
60
155
113
109
80
107
175
145
74
78
80
107
104
107
78
80
135
128
154
94
148
76
121
72
128
107
111
87
104
116
69
69
119
128
140
113
127
107
76
75
78
75
128
80
127
117
127
120
88
80
91
113
80
109
80
123
95
124
93
94
87
100
134
133
128
103
119
109
117
80
78
78
80
67
154
112
121
99
74
88
87
106
128
147
134
100
78
117
87
78
113
122
107
88
104
110
120
95
111
155
119
74
66
72
159
131
80
87
79
69
83
80
110
120
97
151
125
106
120
87
114
76
104
109
99
197
69
72
80
107
120
117
197
107
151
72
120
128
93
113
106
175
110
107
132
131
99
52
101
120
104
80
56
131
117
115
111
69
80
107
69
87
143
109
90
94
80
112
95
87
76
159
156
111
132
175
76
131
56
94
80
91
88
163
115
89
85
87
154
54
90
107
151
99
114
134
69
113
146
99
69
69
113
94
80
166
157
157
119
99
134
168
128
123
117
134
52
107
110
76
89
69
124
93
144
80
128
52
89
89
120
134
146
147
163
85
117
80
131
158
165
115
119
106
136
84
80
69
103
128
80
89
120
140
104
107
85
119
99
107
95
101
121
80
137
151
94
106
102
118
78
130
155
128
87
57
117
93
95
80
78
91
83
85
69
136
175
148
98
103
91
104
113
131
163
69
88
103
120
98
126
126
80
132
76
76
126
87
133
185
69
80
117
115
82
106
120
80
80
54
124
125
99
100
96
69
91
80
78
69
134
105
80
69
115
87
87
74
127
104
151
154
104
112
83
111
80
110
96
87
109
128
127
130
124
120
66
80
69
99
99
90
118
128
110
104
69
113
123
54
136
78
115
118
67
93
78
133
80
146
108
151
80
121
91
94
88
69
126
120
87
137
144
120
87
80
107
94
146
128
125
93
88
80
71
105
88
71
125
102
110
120
113
113
146
106
127
80
175
72
96
101
138
69
103
85
63
74
91
128
69
197
104
175
98
154
128
120
88
101
123
110
82
133
175
118
107
69
69
119
80
74
102
134
119
147
95
104
102
79
152
127
76
141
133
119
96
122
43
69
89
131
78
137
89
98
78
80
119
69
89
115
72
110
119
80
100
85
119
151
129
102
181
80
78
127
91
105
146
80
175
102
87
90
69
123
88
154
134
106
110
197
87
154
124
87
163
76
119
69
133
121
94
128
131
153
128
76
146
131
117
87
80
141
69
117
119
96
80
69
125
91
114
101
128
66
149
141
110
80
102
74
118
130
68
136
117
89
56
76
172
154
66
118
80
69
112
128
87
85
128
102
106
107
89
101
134
87
98
104
106
163
75
152
145
122
163
133
78
80
69
110
146
171
120
130
102
109
80
117
120
131
128
104
172
147
80
122
80
154
90
96
69
100
120
72
128
140
54
80
94
144
133
107
98
155
69
118
78
76
76
121
80
151
80
87
140
136
96
78
143
127
103
107
69
80
197
107
80
87
122
80
88
139
115
74
113
120
89
143
80
128
106
106
80
80
135
115
80
99
107
158
80
93
107
137
197
159
106
80
143
89
103
119
90
154
175
128
76
143
114
109
165
80
94
87
146
123
87
96
209
74
78
94
120
87
111
80
118
128
162
69
186
118
83
80
143
80
160
89
105
134
116
120
133
87
87
138
155
145
134
119
78
148
69
88
136
98
69
56
197
103
109
87
85
109
80
149
154
131
87
58
151
69
156
80
132
89
96
175
156
102
136
96
69
107
128
107
124
109
80
90
139
88
120
111
129
114
69
78
107
114
58
104
80
99
163
99
131
140
128
175
88
121
109
128
119
95
99
118
80
100
159
128
102
123
71
151
82
122
134
134
87
151
80
119
93
78
197
94
136
78
69
125
89
87
89
106
104
69
121
154
107
127
122
80
78
78
87
80
106
106
76
110
119
119
174
74
87
155
89
119
119
119
76
111
122
87
130
115
128
79
85
115
162
109
117
84
125
69
145
63
69
74
109
110
107
78
72
134
140
134
76
121
137
69
54
88
89
109
69
93
100
127
128
121
69
134
128
107
127
138
107
110
80
84
130
80
120
94
80
111
145
104
115
129
142
127
106
136
115
87
99
120
87
96
104
79
120
91
80
164
109
80
80
69
93
135
121
112
109
120
131
80
156
87
119
134
89
103
133
80
88
119
155
58
109
87
165
99
135
91
85
116
119
72
85
69
122
85
99
122
107
175
80
143
143
80
78
80
94
127
120
109
112
119
94
80
76
94
120
142
155
110
99
94
121
80
149
140
119
151
148
118
132
69
88
138
164
87
80
121
94
111
128
130
69
127
98
80
128
130
69
140
197
91
209
56
100
88
152
117
80
156
109
110
112
69
116
74
96
159
90
128
85
114
120
72
88
113
151
69
154
106
98
175
69
115
81
201
106
87
135
87
145
136
143
107
155
94
163
93
120
110
109
121
94
121
141
177
124
174
96
69
136
117
67
130
102
113
89
151
111
175
99
106
94
124
175
101
201
72
121
154
71
76
158
175
89
80
174
90
122
86
107
132
89
140
131
121
72
78
117
76
112
83
154
124
83
136
134
147
69
121
102
113
52
69
80
151
69
88
89
120
69
63
154
109
94
131
69
110
127
88
89
74
154
89
139
87
175
80
122
117
52
125
140
141
99
174
89
96
111
99
80
133
78
128
72
75
126
136
138
108
88
87
78
88
94
74
88
87
89
131
143
100
52
107
117
78
135
175
165
106
112
106
128
52
80
80
94
175
80
138
129
70
85
107
80
109
94
112
128
164
163
143
132
98
143
156
112
95
140
94
113
119
121
164
166
109
131
119
119
80
122
69
128
117
69
106
87
43
72
122
52
87
87
88
120
119
43
137
94
80
107
123
107
114
80
107
87
113
154
154
123
92
124
127
109
87
69
67
107
115
104
88
80
69
134
80
88
119
109
109
154
131
85
101
110
78
107
119
80
187
163
127
110
89
56
94
122
120
78
115
87
90
117
107
80
114
122
91
69
129
119
76
163
69
112
87
131
97
87
80
87
83
154
112
113
87
126
103
90
99
88
115
88
109
137
119
89
94
80
113
108
94
163
94
140
80
80
126
87
119
111
76
87
126
78
78
100
113
69
106
91
89
126
69
69
156
85
109
156
81
165
108
125
115
69
109
149
78
85
110
80
80
146
106
137
106
128
102
89
119
92
69
72
154
151
80
117
187
120
80
100
143
141
148
141
146
96
76
80
116
80
117
104
88
119
69
94
92
125
117
120
166
80
101
85
91
133
106
87
104
93
119
119
107
110
78
107
140
91
78
93
80
145
119
98
106
96
130
95
72
54
80
91
176
87
138
130
76
89
87
133
121
91
69
119
175
107
129
118
91
107
119
101
80
100
137
80
106
85
175
175
78
110
96
121
109
109
97
96
69
69
163
76
127
74
112
134
174
88
76
54
106
102
69
109
154
111
80
138
111
83
80
147
140
127
72
124
151
114
96
80
72
153
136
130
78
107
96
87
151
69
152
72
111
117
175
90
69
99
162
89
124
131
123
175
156
118
94
131
113
121
80
142
140
107
88
123
78
90
106
104
96
151
118
113
80
109
87
99
140
76
107
102
178
128
119
120
128
87
119
121
136
142
156
175
80
100
113
147
87
78
78
78
80
112
120
69
103
88
80
69
142
156
122
140
91
185
72
91
118
52
78
111
175
105
94
175
91
79
110
91
90
131
69
94
120
69
76
110
88
134
69
125
80
126
110
104
97
101
120
89
96
101
126
102
113
140
87
121
67
87
76
143
80
127
129
151
107
157
125
120
115
142
124
164
152
113
69
87
81
175
94
80
175
75
143
175
67
126
127
96
110
73
106
80
147
123
99
130
94
106
157
96
133
87
99
106
80
74
111
127
93
94
76
89
80
119
94
130
110
106
138
95
136
72
80
131
88
78
68
75
69
69
87
74
151
69
101
87
174
91
146
99
78
120
140
78
123
78
76
107
89
93
82
107
80
96
110
127
134
154
172
80
106
119
67
105
151
153
112
120
110
104
107
150
185
154
94
88
121
110
99
109
69
99
91
104
111
94
121
157
76
78
134
114
110
197
89
69
117
144
136
111
143
154
119
136
119
78
88
101
154
69
106
111
88
164
109
128
96
131
94
85
80
69
181
120
100
175
85
69
138
120
83
120
133
107
87
96
75
134
80
76
155
87
80
80
110
106
76
136
117
115
199
80
136
121
88
89
112
80
101
151
102
119
126
125
136
144
94
122
127
78
102
123
107
150
87
80
115
128
93
119
110
143
99
146
94
78
109
107
74
120
197
120
69
106
134
134
113
52
136
76
122
66
87
110
136
120
127
76
80
87
118
197
138
107
124
118
83
96
129
76
127
80
89
110
113
156
144
69
78
89
69
109
106
107
88
89
107
107
126
80
74
54
124
108
80
109
78
69
102
104
112
106
121
115
54
80
87
101
92
87
107
111
80
69
109
87
111
69
140
93
52
52
52
101
139
120
106
98
91
120
148
120
69
148
136
87
137
76
80
205
114
140
131
146
171
72
110
89
112
69
87
131
69
110
76
127
117
112
107
129
72
69
137
112
80
94
94
80
105
76
155
123
141
120
91
78
115
69
164
88
164
156
80
122
74
147
131
100
121
69
131
155
74
97
89
136
144
69
117
80
124
126
106
149
104
69
130
102
78
115
80
79
120
117
109
129
72
74
91
103
128
133
175
145
69
99
109
78
144
57
115
87
163
121
115
43
94
94
89
127
109
93
141
95
109
80
78
107
94
131
69
69
129
112
194
80
87
119
67
149
147
117
155
106
156
87
104
78
123
187
69
130
140
74
134
85
131
100
99
88
121
78
112
78
111
128
76
89
115
99
134
96
147
85
80
83
106
102
110
106
80
138
129
75
88
156
69
127
86
60
102
136
88
90
112
80
87
119
100
80
120
76
158
99
74
78
99
115
201
78
80
111
118
68
122
110
145
80
69
133
106
85
126
71
80
80
80
80
80
99
154
107
99
100
118
69
89
69
87
78
80
92
104
139
80
81
78
80
89
128
115
78
111
88
127
80
80
128
175
117
160
109
128
89
98
80
144
149
131
99
110
66
94
156
146
76
137
127
69
69
97
119
76
132
89
97
81
80
107
117
147
79
119
119
140
157
131
154
72
128
129
72
123
112
75
69
104
143
80
175
87
128
163
109
132
76
88
138
89
80
129
114
69
106
136
165
109
109
110
136
155
87
80
52
131
76
129
80
102
69
97
146
88
96
80
197
137
129
80
130
151
106
134
90
116
120
134
88
89
80
119
87
69
101
175
149
106
88
128
101
80
93
52
124
87
110
69
133
103
119
137
119
80
149
119
115
117
110
146
121
101
88
130
125
100
80
113
134
152
80
69
122
87
69
99
80
80
69
80
54
121
116
121
72
93
107
69
69
185
87
69
78
91
109
96
88
143
106
106
131
119
120
80
126
156
138
145
175
56
116
69
74
156
96
78
156
99
69
117
94
88
119
80
71
80
110
91
109
91
148
101
98
104
96
78
119
85
111
76
93
69
72
118
56
126
78
106
121
87
123
87
69
72
119
91
80
93
144
118
54
95
87
139
114
78
134
151
78
80
122
80
89
120
80
88
116
80
134
148
83
52
69
133
80
78
88
110
80
151
140
165
155
104
80
99
103
151
121
101
98
164
87
197
121
131
97
87
154
89
112
114
121
129
80
69
118
87
145
126
80
78
99
91
76
80
94
140
109
69
119
67
175
94
88
56
80
89
116
151
90
102
156
67
99
101
93
78
76
112
80
107
80
80
69
140
104
87
127
79
72
60
148
67
80
119
87
88
76
120
107
72
112
199
56
74
104
83
78
120
105
120
106
100
92
87
115
154
87
80
64
106
76
110
87
83
87
67
52
127
59
120
110
121
133
126
148
88
69
118
99
120
76
156
68
118
100
98
92
146
80
112
80
107
98
113
107
85
149
141
67
144
104
134
127
120
109
144
134
80
159
138
106
159
79
80
99
80
102
76
69
80
136
132
119
154
80
93
78
80
100
87
161
96
76
80
162
80
85
128
151
128
80
88
76
109
98
80
110
107
110
109
147
94
104
56
66
104
88
52
87
129
80
123
104
87
163
101
120
69
136
162
143
80
101
89
175
87
78
129
145
144
122
81
78
96
69
80
109
144
99
89
76
71
94
87
104
94
94
80
134
156
146
103
76
119
80
94
75
109
119
119
89
141
93
76
93
128
175
151
130
124
125
76
87
152
175
122
109
123
88
80
80
134
59
80
78
197
119
121
72
80
154
138
120
93
87
69
87
94
147
122
120
71
154
148
78
127
154
96
130
122
76
106
117
143
80
116
130
143
140
133
129
152
80
124
109
76
145
78
101
76
109
102
143
113
140
103
76
103
83
113
140
174
104
92
107
120
110
69
52
119
197
113
113
127
103
131
89
68
78
94
78
100
131
144
150
74
114
197
129
116
116
87
82
96
80
80
154
64
100
93
101
94
111
117
120
69
137
88
80
149
69
103
124
87
80
89
109
113
88
85
110
154
128
112
175
96
112
80
114
89
117
91
94
137
131
107
119
69
145
80
120
151
131
175
78
110
111
107
120
104
80
76
151
183
140
127
114
129
107
69
129
119
93
89
80
69
87
123
109
137
175
89
121
124
80
118
90
110
103
69
120
166
94
76
144
170
78
104
101
87
102
80
74
154
99
69
183
85
107
78
80
93
80
120
78
87
128
128
136
94
104
69
121
151
80
126
96
117
80
69
176
110
117
118
124
76
104
172
121
129
80
112
137
103
85
68
146
140
102
80
69
75
124
105
93
101
107
120
129
108
80
80
99
153
124
122
80
96
76
87
110
121
80
80
112
119
94
98
111
115
119
163
156
80
100
110
119
127
112
69
114
114
114
78
112
127
127
101
125
98
131
106
130
175
69
80
154
83
106
72
69
124
109
137
175
99
136
199
117
104
111
80
101
99
155
78
127
112
175
115
117
91
92
107
96
175
175
101
99
120
175
159
144
122
76
76
76
89
80
82
76
103
145
116
85
109
102
96
136
104
140
74
117
156
136
110
88
126
112
80
107
63
76
102
72
133
139
111
127
119
107
93
110
67
129
141
105
151
154
69
86
127
87
78
128
130
69
127
118
80
114
103
110
54
86
80
121
121
104
145
96
136
131
175
114
76
197
75
127
117
118
155
175
91
118
142
154
144
80
69
131
87
74
80
118
197
87
85
136
102
80
88
96
165
54
154
117
123
97
91
132
130
54
136
134
110
93
127
80
129
80
80
174
76
72
75
76
111
147
121
94
98
90
143
67
80
147
136
78
109
59
87
99
110
155
163
102
88
115
87
80
96
128
110
69
118
201
163
78
69
96
107
130
140
102
118
88
112
106
146
131
58
52
86
90
175
175
134
102
140
134
133
125
106
121
113
146
119
120
87
80
156
54
87
150
120
88
122
140
69
121
128
72
117
121
81
136
99
151
145
121
80
89
148
79
119
142
120
147
147
106
143
104
78
99
112
80
117
109
126
82
94
175
52
69
154
111
140
81
110
75
132
128
99
52
110
148
128
69
183
80
128
121
128
80
120
87
131
175
93
140
83
93
119
107
69
120
109
104
80
107
100
93
127
119
79
129
85
68
120
164
113
80
72
94
130
122
107
78
135
80
134
151
87
69
113
115
78
107
88
163
120
133
119
89
78
166
87
138
103
69
125
119
104
69
79
110
78
69
87
102
110
107
78
69
96
123
69
76
112
123
175
80
80
85
80
128
133
87
78
87
110
129
96
156
110
107
150
80
127
117
94
88
80
80
165
76
78
72
72
175
87
136
154
90
78
107
129
94
87
99
155
140
156
109
76
94
150
134
120
128
109
69
87
87
127
148
121
78
80
174
80
98
76
113
87
69
116
146
94
88
102
73
91
106
67
101
88
134
99
78
139
128
76
87
149
83
87
106
131
95
119
56
130
54
80
104
76
100
118
76
93
113
69
72
183
94
128
76
119
78
120
175
93
119
73
86
76
106
113
110
129
78
98
174
80
99
112
119
99
175
163
80
162
118
78
87
119
80
69
69
134
87
99
127
80
112
99
133
128
69
80
160
76
96
89
88
72
156
94
94
121
78
119
156
56
126
106
82
78
150
118
175
100
85
185
140
66
87
133
128
96
80
131
87
119
69
165
120
112
78
91
89
110
100
201
87
76
76
141
87
119
142
81
136
94
69
112
92
130
152
100
126
93
128
78
69
69
119
103
134
154
89
69
136
78
118
115
141
94
102
145
138
149
66
144
160
116
110
127
102
108
69
80
80
69
127
80
112
109
99
144
134
78
115
69
94
127
120
97
107
66
93
156
120
175
110
141
89
99
119
117
136
106
138
134
76
115
78
67
87
80
110
151
143
79
74
174
136
78
111
129
88
87
140
119
136
119
100
76
101
117
93
54
69
154
90
88
54
107
88
136
119
175
88
87
175
156
87
78
110
125
112
80
109
96
133
148
119
87
119
89
154
93
80
160
80
55
113
175
100
100
148
120
71
69
115
120
107
56
80
160
159
99
88
83
80
107
154
80
78
130
119
109
91
100
104
101
83
99
76
80
89
101
197
96
80
130
154
140
133
91
110
120
107
123
175
140
99
78
118
118
126
87
131
80
98
104
69
126
67
143
80
79
106
96
128
133
71
74
54
80
106
107
104
154
199
131
163
80
87
69
87
128
122
117
113
154
111
88
140
98
110
107
99
131
76
119
109
140
185
104
66
164
107
107
69
104
130
107
107
122
96
80
80
80
76
78
73
118
163
69
80
163
72
56
125
78
121
156
80
136
162
69
109
89
112
88
131
164
121
128
140
100
96
105
110
80
175
120
112
93
145
116
80
148
128
74
107
80
87
144
103
140
123
124
88
110
78
177
146
140
118
116
134
140
175
76
109
154
87
80
119
117
99
134
172
80
137
123
69
73
69
100
87
80
63
96
76
153
152
140
113
87
88
54
76
117
110
109
110
72
132
107
102
133
162
106
93
89
99
78
107
80
122
94
119
128
109
106
121
54
110
140
134
78
113
132
113
110
89
124
76
137
89
148
120
155
69
154
115
78
80
102
94
69
175
80
99
87
110
107
69
99
80
80
80
113
146
120
89
80
128
127
145
69
119
100
100
52
169
146
134
69
109
100
87
102
175
129
54
96
119
104
130
99
101
102
109
78
84
87
76
150
69
99
88
109
111
129
89
99
69
110
72
54
131
90
99
154
140
156
69
123
100
74
82
185
156
146
80
72
78
87
80
80
127
175
110
76
78
69
76
163
98
126
56
119
197
131
93
80
87
112
88
146
107
111
87
109
91
111
119
69
140
140
175
104
137
133
69
127
154
115
99
127
87
69
91
128
107
87
69
98
69
112
125
155
120
138
95
93
96
76
109
119
151
69
116
148
78
111
131
76
112
87
104
56
167
112
106
78
87
80
78
117
130
69
89
113
115
76
76
78
175
102
76
156
76
118
69
117
129
106
69
80
152
92
128
80
66
69
74
124
88
115
79
120
69
131
72
112
197
120
94
119
109
69
56
155
175
69
105
143
197
69
144
93
124
78
128
95
114
175
76
111
132
120
119
101
132
144
96
69
67
78
75
119
67
113
94
113
102
120
109
57
131
80
69
120
80
87
86
76
154
54
107
110
164
80
76
110
109
140
80
94
93
110
94
56
78
110
88
138
154
89
72
87
110
93
154
101
97
96
69
119
69
78
69
117
134
119
159
107
175
104
176
169
154
112
80
87
87
98
119
80
136
132
110
98
151
136
155
110
103
74
136
88
80
154
175
130
94
75
129
117
96
69
87
69
69
80
122
112
85
140
155
104
90
117
87
91
89
155
54
69
79
119
156
162
130
56
150
69
64
107
110
87
93
101
123
136
143
175
78
87
104
102
96
80
82
140
95
92
119
83
101
88
87
119
85
88
108
71
133
98
80
137
94
137
72
96
74
106
138
128
80
111
78
95
134
95
160
105
101
128
163
109
107
106
110
112
119
102
113
146
112
69
102
91
166
102
131
76
106
110
76
148
89
95
93
163
162
201
113
140
134
157
136
131
76
131
128
90
87
107
120
81
98
175
78
96
67
143
128
156
197
197
81
52
117
127
107
128
132
80
114
69
94
102
117
90
54
156
101
99
104
175
88
120
145
96
69
89
80
132
80
116
125
99
54
119
132
110
79
121
89
149
146
154
125
104
156
106
143
155
95
69
157
137
78
128
134
76
156
93
109
76
109
76
88
117
128
128
101
67
120
100
87
163
154
89
151
101
80
69
112
166
99
111
87
87
80
125
120
69
106
66
88
94
154
78
120
80
134
88
120
52
104
146
59
80
87
76
80
142
87
156
107
89
69
94
80
54
117
87
76
69
175
89
122
69
151
109
103
119
131
80
90
113
87
87
109
76
119
76
136
134
98
159
100
119
120
112
88
120
76
141
87
107
163
78
69
69
80
144
145
114
121
78
128
91
106
128
76
99
136
144
69
101
143
118
69
72
76
129
130
87
116
150
94
94
69
175
87
112
138
106
115
69
137
80
98
121
80
69
130
140
94
75
94
82
109
57
94
91
73
175
127
87
74
128
69
76
120
60
131
101
52
110
94
88
88
154
105
93
120
107
82
113
117
76
112
117
175
90
54
131
87
43
80
89
99
69
100
159
69
87
100
74
87
90
119
132
69
58
107
119
134
97
96
101
110
129
121
102
137
122
136
110
118
106
155
121
104
109
109
137
97
88
69
80
119
69
80
99
94
140
156
99
69
112
91
156
99
124
91
154
94
141
95
119
139
208
104
156
80
99
99
134
154
95
120
154
173
80
88
136
119
99
128
128
91
72
78
104
56
120
80
69
151
87
80
95
128
78
80
69
104
145
175
120
156
131
104
120
87
154
54
99
117
87
154
104
87
80
131
127
160
76
121
80
80
163
99
162
74
123
164
128
72
119
101
93
80
119
69
78
110
103
107
120
201
149
118
87
87
151
133
72
69
128
101
111
72
80
139
80
125
128
106
87
144
80
117
88
110
80
133
87
85
89
119
158
107
89
94
88
92
119
80
88
134
117
131
105
106
88
72
89
181
88
87
52
89
76
132
111
138
132
80
139
122
106
126
111
77
109
175
87
119
154
91
96
80
175
133
85
156
69
84
118
126
113
147
54
120
112
80
72
93
106
145
115
109
124
78
112
128
109
80
76
119
143
139
102
140
69
107
143
80
163
54
109
119
71
97
143
54
126
88
148
99
197
87
120
104
120
110
120
118
143
69
151
89
183
96
96
104
74
119
56
94
80
80
120
139
185
85
89
98
107
114
79
120
87
124
78
87
101
187
113
149
115
151
120
110
112
72
110
127
109
72
80
99
106
157
76
78
93
89
69
145
136
137
132
80
99
100
90
69
118
74
155
72
76
101
118
102
90
112
79
117
80
107
52
80
80
125
134
69
175
87
69
120
119
156
106
113
154
124
101
128
100
163
110
120
104
132
87
154
95
87
137
131
119
99
112
89
114
96
69
69
157
175
111
63
72
101
80
130
128
99
112
88
69
88
107
110
147
115
116
93
203
123
133
132
101
69
91
74
151
96
150
162
99
69
76
136
80
76
137
80
68
94
94
151
69
69
78
67
74
119
93
78
146
115
90
72
109
146
140
143
126
80
76
119
156
137
176
111
142
94
166
87
88
136
170
100
87
118
155
175
88
124
115
112
56
120
142
120
110
106
164
102
121
133
119
75
78
79
127
69
121
123
76
121
92
181
140
100
115
88
80
154
69
100
67
43
119
128
105
120
85
94
115
125
100
133
80
75
98
156
104
99
94
122
121
72
110
78
119
94
115
83
81
102
54
175
88
144
93
110
175
109
120
144
128
69
90
87
87
140
120
126
156
119
100
87
175
87
78
126
113
131
113
93
110
110
107
134
121
96
69
120
117
69
112
169
113
89
69
107
115
86
92
98
69
80
107
156
104
80
177
94
76
89
128
101
118
87
128
76
160
95
78
76
100
121
80
89
106
52
69
134
100
169
112
119
87
59
110
94
100
119
80
93
75
127
72
99
89
109
120
87
119
106
160
115
113
91
80
69
80
83
118
203
99
94
116
113
69
102
80
87
166
145
88
154
108
142
148
78
128
78
127
175
85
136
55
78
80
99
72
177
128
94
87
197
131
69
119
80
118
119
136
69
76
112
119
139
94
89
102
107
132
130
80
109
120
87
113
93
121
96
87
69
119
80
109
139
120
121
111
156
80
126
87
119
128
121
145
90
120
117
89
107
119
107
94
106
120
74
133
75
150
74
100
80
106
69
145
120
119
115
95
95
156
88
85
76
117
78
80
69
145
99
89
69
80
119
110
87
118
88
104
154
73
52
104
129
175
121
87
64
78
101
80
111
121
121
130
43
68
131
92
80
43
137
89
69
109
94
155
139
141
87
101
101
92
110
80
117
87
87
156
120
127
74
87
92
54
143
134
76
138
119
133
80
100
80
87
69
80
87
103
134
99
140
137
87
99
130
93
69
107
155
139
108
78
76
80
123
120
128
89
83
99
120
127
175
119
121
104
74
99
69
112
58
101
124
76
175
104
119
154
110
78
149
94
59
87
102
107
127
155
88
106
143
94
58
122
80
56
172
148
93
80
107
85
99
94
69
83
69
88
146
89
197
81
84
78
109
125
175
143
107
113
93
69
100
80
52
154
119
94
100
87
120
163
87
72
87
85
106
112
106
144
101
79
110
146
72
132
113
52
112
136
118
99
109
102
113
104
175
121
80
95
106
69
145
163
102
88
96
89
94
118
76
151
143
107
103
109
151
66
87
80
174
106
82
103
119
80
80
96
80
130
119
98
69
87
104
94
143
87
88
94
128
134
76
120
94
87
78
80
140
67
96
76
80
120
96
78
175
87
123
80
87
128
134
127
88
80
87
87
154
123
119
134
148
99
121
101
80
80
63
80
69
80
87
63
68
141
88
135
124
120
143
88
104
148
121
110
134
80
174
69
80
74
79
150
78
87
128
80
139
89
124
120
145
119
72
88
78
100
74
87
144
72
76
134
78
78
76
96
140
154
88
121
91
151
67
123
72
113
94
146
197
87
54
138
79
101
134
115
76
145
114
134
99
112
69
80
121
90
95
145
175
112
131
102
89
94
156
87
72
87
99
112
80
87
109
127
99
80
129
78
87
103
93
133
136
128
175
87
78
155
54
144
111
140
146
93
74
85
80
103
120
107
113
98
74
116
136
137
80
121
137
80
80
89
146
120
138
72
87
80
162
124
119
115
155
122
144
149
80
100
104
197
88
80
93
69
78
78
78
94
131
107
107
88
99
56
83
102
69
93
163
99
80
76
128
113
92
156
164
93
136
90
156
104
110
156
101
88
78
113
104
99
136
146
175
117
98
80
155
93
66
98
133
145
106
82
87
76
80
75
134
140
72
172
76
126
92
88
137
77
93
109
120
122
88
52
110
162
80
89
131
110
131
101
104
76
69
107
85
76
99
131
99
80
121
145
90
78
143
102
134
102
69
175
69
74
164
80
109
155
80
119
112
56
129
89
151
71
74
88
134
154
109
80
155
119
74
74
120
155
80
80
147
95
93
134
155
88
69
78
119
76
134
52
119
115
122
136
100
175
133
80
83
102
143
116
166
103
89
129
119
134
85
154
155
111
154
80
78
80
175
109
99
87
139
80
140
87
88
131
87
87
69
117
89
69
52
91
78
74
127
72
122
56
163
143
183
96
123
80
101
85
72
121
80
151
56
112
134
109
69
110
128
90
88
96
115
107
78
113
93
69
127
72
119
69
131
119
199
137
154
107
91
80
134
101
71
80
87
71
99
93
85
76
83
107
128
99
90
107
119
96
89
110
80
154
132
72
110
99
131
72
69
85
119
109
80
87
89
110
88
88
95
85
143
87
78
102
75
78
78
143
99
105
175
80
138
140
93
100
75
96
80
104
146
110
157
122
83
107
95
99
69
139
131
72
85
76
80
96
162
85
154
146
83
52
91
100
127
107
140
119
120
70
115
87
93
80
119
69
146
84
94
122
91
69
94
78
109
89
99
80
87
79
76
103
99
78
88
67
113
102
143
128
114
56
76
91
115
76
120
80
110
151
132
43
63
91
76
101
110
69
69
94
78
164
69
104
112
89
87
96
87
96
93
72
87
88
75
87
154
131
197
136
99
80
69
119
43
102
76
87
140
90
102
99
98
133
94
127
69
118
78
104
78
120
95
113
152
105
69
118
126
85
107
91
154
76
120
104
69
136
119
103
119
114
96
175
121
89
120
114
156
75
93
69
113
164
106
128
102
89
79
138
80
147
76
129
174
82
119
99
128
98
101
122
99
113
124
113
136
197
80
93
175
102
136
96
119
151
109
160
78
76
134
89
116
78
80
175
106
94
80
99
140
87
100
133
87
75
128
80
129
104
80
80
76
85
121
135
73
80
128
106
127
69
203
156
69
137
87
101
131
104
69
69
144
131
69
143
69
99
109
89
80
76
105
115
117
121
134
69
138
197
97
153
140
89
131
128
80
98
106
136
89
76
136
134
78
101
84
124
93
80
88
90
103
104
130
75
78
140
80
175
147
110
94
101
201
88
99
119
69
118
118
117
93
128
87
122
87
76
89
99
112
175
72
131
154
106
154
87
101
95
69
94
72
69
154
43
78
80
88
96
106
128
56
94
80
69
107
140
89
119
131
72
113
113
113
67
112
187
143
110
80
104
119
143
69
99
93
115
131
88
95
132
144
76
110
120
76
69
87
76
143
80
160
139
199
109
197
156
143
69
109
138
116
87
104
87
80
87
155
124
104
96
106
118
66
147
76
94
121
89
87
63
80
100
113
93
119
179
110
52
110
151
155
127
78
146
83
80
109
117
149
99
112
69
110
54
52
78
110
68
80
117
175
104
120
119
120
88
128
109
100
80
94
122
72
99
99
133
69
87
90
127
83
99
120
119
69
78
80
99
128
135
122
69
129
117
80
120
67
78
89
87
99
93
120
89
126
119
76
88
134
134
110
113
172
111
72
164
113
150
107
72
109
69
157
125
110
97
69
78
134
110
91
69
109
113
150
145
89
128
148
98
78
78
80
78
134
78
155
120
69
100
107
80
80
87
72
122
117
120
93
128
136
93
154
103
120
106
76
101
80
157
75
87
107
101
127
145
80
96
74
132
120
108
91
76
69
90
96
155
87
96
113
87
109
78
107
185
92
66
102
106
139
111
94
93
119
145
134
78
131
94
131
175
69
90
101
87
174
127
175
75
131
127
134
131
116
80
96
181
52
175
134
163
126
129
106
67
154
76
125
80
143
120
110
110
175
80
128
124
99
126
114
122
175
69
144
87
199
69
80
154
87
76
69
129
175
103
110
109
72
80
66
96
120
106
109
99
112
107
114
107
113
119
76
117
123
125
69
83
123
133
197
88
104
104
135
69
72
154
69
128
52
184
93
118
127
151
114
125
110
101
127
119
90
80
88
98
95
69
104
124
88
54
69
106
133
90
173
106
107
99
106
104
119
160
111
123
69
100
100
140
118
127
132
89
67
117
83
112
118
98
109
175
133
78
175
113
76
80
175
109
154
107
152
88
119
72
76
125
110
169
101
175
69
140
91
124
88
68
83
134
80
163
76
69
110
117
156
136
109
117
119
146
69
80
80
100
133
69
134
130
80
117
88
119
69
102
167
127
78
99
87
109
175
89
88
141
110
96
91
102
52
131
138
90
119
126
156
96
99
96
69
112
175
110
80
78
149
80
87
89
155
134
102
89
113
102
72
99
69
137
78
115
118
134
80
107
138
106
175
120
197
154
76
106
101
140
118
136
154
113
136
69
114
113
131
79
117
154
80
96
88
80
154
110
80
69
151
85
92
87
120
147
80
156
69
119
83
118
88
93
159
80
156
127
78
129
76
88
87
83
87
140
120
87
72
129
78
89
163
123
104
72
109
104
113
69
87
145
128
151
146
116
78
163
119
80
98
145
119
69
85
69
88
82
103
151
106
117
80
58
137
112
80
94
131
87
88
92
175
140
102
187
174
156
136
72
91
74
145
87
113
76
85
88
81
80
85
96
120
115
69
131
154
94
96
109
78
80
117
120
140
107
78
99
142
80
78
103
85
87
110
80
127
75
120
87
120
110
87
138
132
74
75
72
156
67
111
104
98
117
88
109
104
80
104
74
143
109
60
87
107
131
89
80
54
69
197
91
136
72
80
107
68
104
120
63
119
107
125
107
104
78
78
92
69
111
96
89
78
85
80
78
93
140
128
114
69
107
80
76
87
140
119
119
69
78
112
155
144
112
146
106
116
80
143
80
126
104
80
175
83
121
94
161
114
163
132
136
80
110
79
76
52
76
116
107
69
134
132
110
140
120
113
76
74
54
76
81
156
69
93
76
76
112
43
87
94
128
78
87
120
119
125
132
134
175
93
187
119
128
120
78
80
121
117
88
80
74
128
102
78
106
134
85
89
88
102
76
90
52
69
111
152
116
78
107
181
89
94
93
101
109
154
80
122
197
148
66
84
100
136
80
104
147
76
129
145
118
119
115
143
87
72
72
104
87
100
137
102
130
72
115
154
80
99
111
107
197
110
69
88
111
80
119
104
78
99
151
140
110
146
89
99
118
80
107
133
121
80
121
122
89
89
88
99
109
100
127
107
74
88
80
131
54
88
164
136
69
104
112
93
155
165
92
104
74
54
88
67
120
69
175
113
109
136
158
181
74
131
102
78
122
100
128
197
107
80
113
99
120
69
128
89
76
76
144
119
132
75
93
60
123
88
118
146
80
117
87
143
101
122
146
76
104
125
131
119
94
78
89
114
114
131
163
80
120
80
74
110
110
69
140
114
156
74
93
151
64
87
69
112
147
52
80
69
110
112
80
92
154
164
121
88
72
151
80
115
120
78
80
140
79
104
96
85
197
155
102
74
87
112
110
160
102
128
148
119
69
87
80
120
110
80
144
113
112
175
162
99
89
117
94
187
88
175
69
175
83
121
78
133
128
80
101
126
78
152
110
87
138
120
136
146
175
76
93
136
133
99
107
120
80
137
80
154
105
125
80
138
107
138
160
160
122
87
80
78
137
158
120
91
94
113
128
76
140
119
99
102
104
117
69
94
113
128
104
146
138
140
101
76
175
128
87
128
94
87
104
88
80
152
96
110
134
117
117
96
83
112
76
87
82
87
121
115
175
120
101
199
112
102
131
133
139
72
69
87
125
115
185
132
76
110
183
154
128
85
120
78
80
131
119
101
85
95
78
131
146
109
131
146
89
142
59
78
87
128
80
80
137
113
69
121
103
43
85
137
122
80
80
113
80
69
87
110
89
69
106
113
166
94
113
165
89
88
56
104
69
143
52
73
119
120
128
126
137
99
96
78
95
91
104
69
154
113
80
130
54
85
100
139
122
126
89
80
78
107
85
83
106
94
109
175
106
155
95
128
69
87
69
113
80
148
134
119
109
154
151
132
143
93
90
101
174
69
57
120
56
197
69
109
69
94
121
94
163
88
159
174
87
109
146
80
120
109
106
106
93
107
197
71
74
145
80
115
103
133
122
69
110
80
110
80
128
136
78
76
93
93
117
132
136
104
94
109
113
107
94
87
69
135
128
169
78
87
69
175
93
151
118
87
127
85
123
110
151
87
52
131
110
80
113
120
99
133
104
80
80
102
87
80
144
126
96
80
78
128
69
121
84
155
121
136
88
112
99
69
102
100
117
136
90
102
128
109
80
154
78
163
80
95
80
69
101
110
78
87
197
131
146
107
121
109
175
112
197
102
145
112
80
101
85
75
140
107
69
96
120
103
98
185
105
138
131
117
132
80
93
89
78
107
89
131
76
87
80
78
119
80
76
139
175
155
56
151
96
117
117
75
69
54
83
110
69
68
72
80
131
152
154
91
106
175
93
69
123
115
142
67
91
128
123
156
100
149
69
78
175
80
119
160
80
69
122
128
80
148
54
124
106
80
124
80
88
99
107
80
80
121
78
80
134
100
175
83
102
131
69
78
156
109
80
151
87
56
78
143
119
128
80
110
80
166
76
72
137
87
154
136
110
110
89
136
109
100
82
132
128
95
101
140
80
69
152
83
80
107
99
150
104
112
120
87
111
96
143
155
107
69
93
105
78
80
94
116
118
175
101
197
142
118
78
133
134
88
114
137
71
69
87
99
110
89
101
100
80
107
110
78
72
120
106
118
109
134
118
146
119
108
98
136
78
94
155
88
100
146
127
107
134
80
88
96
80
76
74
80
120
78
112
175
100
143
146
110
107
102
132
119
119
104
91
80
154
91
134
143
112
101
140
100
74
88
110
69
75
120
80
106
146
148
145
110
120
123
102
125
125
114
84
121
80
109
99
94
112
140
89
78
113
107
121
87
87
154
100
93
197
105
160
78
107
115
97
107
104
99
107
119
54
80
76
103
151
72
136
127
78
102
111
69
69
93
100
175
92
80
128
78
89
58
80
72
189
124
110
80
131
133
154
101
144
69
120
107
160
88
154
134
69
80
120
120
143
88
79
140
93
94
88
111
110
98
175
89
112
87
95
69
87
123
145
120
120
104
156
131
101
99
107
91
121
105
85
69
146
110
124
76
148
100
120
69
130
78
91
80
69
80
80
96
143
80
139
118
112
69
110
78
89
98
54
80
80
85
118
140
86
74
122
119
87
156
109
197
140
69
117
88
131
94
121
111
138
80
89
125
91
87
69
183
127
107
144
89
109
136
107
160
120
197
163
80
81
80
98
119
128
99
110
106
72
69
78
120
80
69
140
146
118
78
125
89
52
93
80
91
88
131
92
89
76
131
80
76
118
109
178
142
102
52
117
165
69
78
123
80
80
69
128
107
175
151
154
80
138
78
69
134
89
69
131
109
80
109
136
155
109
69
88
71
72
107
197
94
131
106
114
120
164
175
76
94
150
80
79
136
137
76
102
87
128
130
80
119
107
76
68
80
109
98
107
106
90
106
117
134
85
69
126
87
164
87
87
80
138
109
93
78
98
126
93
69
160
87
83
69
149
134
150
154
107
115
87
99
101
76
119
174
87
69
96
119
134
132
144
118
129
110
92
121
72
99
83
154
69
107
89
74
145
85
89
113
125
94
131
90
89
95
113
78
131
87
95
148
125
111
101
72
134
80
175
91
52
88
89
85
99
80
80
80
79
98
83
87
96
101
76
87
101
104
80
122
119
87
69
76
85
87
137
113
112
80
87
107
78
141
175
127
99
121
121
80
175
104
89
69
69
93
107
95
156
80
120
119
88
69
131
166
175
91
94
156
146
112
108
89
107
107
87
78
140
110
78
100
87
43
85
119
153
104
197
156
137
78
120
156
69
117
126
78
120
89
92
109
136
197
98
128
111
80
110
120
69
80
117
110
82
106
104
146
114
91
128
76
156
183
78
144
145
82
175
120
129
94
87
93
80
117
79
98
136
64
134
101
153
80
88
87
127
110
130
104
175
146
128
99
152
151
80
131
72
134
71
95
100
143
73
113
154
60
56
87
92
143
54
128
113
155
156
94
91
109
99
89
129
80
95
120
76
80
130
69
110
78
106
98
78
75
89
109
88
115
119
123
145
109
88
103
154
93
76
101
80
87
118
106
69
80
121
87
165
143
136
83
78
134
66
112
102
175
72
58
119
96
100
91
87
69
80
156
147
67
96
112
88
99
107
144
112
89
78
74
52
87
87
138
88
113
111
112
121
76
91
78
136
104
119
120
106
72
129
93
118
74
119
76
112
124
56
115
80
101
87
80
116
175
158
112
95
131
155
139
80
153
119
112
80
105
78
156
98
101
52
99
130
106
69
201
76
98
99
108
120
130
104
69
181
56
121
126
116
137
120
110
136
128
68
155
69
69
105
119
85
143
89
101
120
117
69
151
85
69
76
107
175
112
107
140
130
69
127
93
99
156
76
145
136
80
151
107
74
112
83
127
119
117
167
190
104
88
134
131
74
80
87
165
76
119
76
93
175
87
99
43
89
122
90
109
76
113
76
76
156
185
78
69
101
113
89
151
90
138
175
92
78
110
118
128
74
156
104
76
89
94
119
175
175
83
78
121
175
120
176
117
117
87
113
120
145
80
109
155
101
80
110
87
145
136
112
132
80
98
52
155
98
89
54
94
69
72
101
87
129
134
88
131
199
64
144
107
69
69
87
121
143
117
151
80
77
87
163
121
80
87
128
130
181
151
120
152
93
154
172
121
99
72
82
92
145
120
69
197
74
113
94
111
107
119
128
104
111
120
102
123
69
99
85
107
131
146
78
164
72
112
87
76
69
88
112
87
92
85
135
134
73
87
115
136
83
136
90
149
122
131
106
76
100
131
130
145
94
175
112
123
76
96
176
54
80
76
89
128
134
80
89
93
113
127
88
99
126
78
155
102
104
131
87
127
99
69
91
99
89
122
155
164
81
138
154
104
156
104
128
79
132
110
134
175
80
131
128
87
92
52
69
120
140
80
113
69
123
104
69
185
85
81
97
119
112
99
131
93
132
156
175
110
197
103
101
80
74
107
87
144
107
136
140
147
154
115
88
98
69
138
109
128
88
89
96
106
75
156
148
154
175
151
113
142
102
101
69
96
78
87
119
174
56
80
142
126
106
169
136
106
56
80
80
83
80
104
136
79
110
133
80
154
147
69
197
145
89
105
87
72
131
157
106
145
80
117
80
125
89
164
78
69
112
127
69
94
157
101
106
147
104
119
69
78
87
80
98
128
110
119
80
109
136
78
80
100
123
120
78
128
113
80
83
87
99
56
131
96
113
136
160
80
133
101
99
164
119
148
80
78
127
74
163
107
91
69
87
107
127
119
140
91
154
114
85
136
87
118
83
80
80
135
89
141
54
126
95
94
128
99
84
155
134
107
144
80
121
114
93
80
107
120
80
88
72
88
72
148
87
128
88
155
96
131
87
109
150
105
80
137
75
101
114
93
95
79
102
119
120
119
158
76
66
74
80
107
72
119
120
110
107
146
103
129
98
121
140
111
128
94
80
109
175
69
91
87
72
121
104
69
75
126
144
112
129
88
80
149
76
185
139
69
110
78
140
78
69
115
117
69
145
109
111
64
66
154
104
99
119
120
146
89
111
119
80
112
102
107
87
89
83
96
89
118
146
115
71
109
120
110
80
117
122
52
99
56
87
131
99
128
69
117
94
109
111
154
96
99
80
99
88
94
106
133
140
94
147
74
91
98
87
76
175
115
94
69
197
101
104
78
108
72
74
78
106
119
120
94
87
109
143
78
114
132
120
66
78
78
131
87
99
69
103
112
175
123
142
119
100
87
137
59
130
119
175
89
87
69
43
119
96
106
127
99
98
134
80
136
80
97
121
125
74
69
69
85
151
87
128
120
88
154
113
104
160
124
80
107
163
80
113
102
106
110
80
93
144
80
109
76
97
78
76
94
74
99
89
95
89
107
113
112
110
172
145
91
109
87
80
142
80
87
83
164
123
116
139
94
123
77
78
52
149
106
128
106
154
146
81
121
83
183
163
114
155
103
128
157
109
76
145
129
126
107
69
109
80
103
163
128
78
113
132
83
175
69
110
126
128
94
102
128
138
109
96
154
119
80
94
107
124
133
157
100
107
93
134
78
113
97
87
76
150
69
92
134
76
79
107
99
76
82
76
111
96
126
90
104
94
74
110
119
155
97
80
123
71
128
99
100
78
56
80
197
156
145
69
107
69
89
78
117
79
78
69
131
73
80
112
103
76
76
96
106
69
87
93
113
117
94
76
109
109
80
175
89
96
154
100
120
106
107
80
100
43
69
160
72
109
157
80
80
116
83
119
121
125
119
107
95
90
136
78
72
87
69
137
92
128
197
146
78
82
76
88
147
72
87
107
142
95
99
80
130
83
69
119
78
91
106
155
140
104
87
145
66
113
89
119
79
110
146
131
80
93
116
199
80
115
134
126
74
91
85
85
118
82
120
154
57
126
114
128
127
88
175
101
104
80
120
119
119
137
149
76
78
148
154
136
120
80
163
80
94
154
80
52
119
98
102
175
80
120
74
89
88
126
119
140
148
95
119
75
91
118
109
100
114
110
121
80
104
56
91
111
92
114
119
69
89
137
157
163
99
136
119
89
128
144
92
107
121
96
113
164
69
109
120
88
76
155
127
127
118
80
69
104
69
78
89
69
78
119
112
109
145
114
127
80
150
102
76
161
107
69
85
107
54
156
119
87
132
91
119
109
156
87
80
64
165
150
54
93
107
88
104
107
94
87
109
140
111
99
78
155
107
85
80
89
120
119
94
96
93
116
91
93
94
69
69
80
128
148
72
128
99
85
165
100
121
102
155
115
69
76
134
122
69
69
107
119
76
130
138
69
133
120
78
175
145
151
108
78
93
115
139
69
78
54
67
78
107
112
54
175
83
128
133
109
109
69
121
106
113
175
87
96
78
107
80
107
121
133
80
89
123
120
112
131
97
102
145
137
156
69
113
78
76
131
78
99
123
107
100
121
122
78
80
94
143
150
175
118
136
133
106
89
113
150
110
120
110
108
87
144
128
94
91
86
155
113
90
95
131
87
113
134
92
80
123
81
99
166
133
148
110
112
134
109
145
102
78
110
122
69
89
128
77
154
120
113
80
160
76
120
120
151
69
69
134
80
69
69
138
69
78
80
111
119
110
91
134
128
119
175
74
156
96
96
166
138
67
89
75
87
114
116
197
100
119
88
117
92
123
107
174
78
113
147
76
118
92
88
82
99
89
132
89
145
115
89
156
118
110
133
134
115
106
151
119
69
87
130
118
151
80
76
76
85
109
89
134
101
87
109
93
134
99
152
84
76
79
74
69
121
132
76
112
87
80
88
163
99
119
94
110
131
88
69
78
78
80
116
145
121
106
87
80
154
80
136
69
128
80
56
78
102
137
94
87
119
119
156
119
128
76
140
74
89
87
171
74
118
119
85
162
99
120
69
115
126
149
115
109
87
106
120
54
111
80
132
69
87
116
78
163
94
146
127
80
94
158
78
80
156
89
120
69
175
161
85
104
80
157
104
89
96
83
104
83
155
80
76
102
98
107
128
119
85
147
80
120
59
140
72
74
69
117
109
137
98
102
110
107
119
121
148
120
80
89
80
87
136
109
101
133
106
131
121
80
119
76
153
113
87
113
76
78
177
127
174
120
80
164
69
132
95
93
140
91
183
99
164
124
89
100
139
69
155
91
123
99
69
98
74
74
127
175
85
69
157
87
121
90
109
136
102
129
201
128
156
96
120
75
112
209
80
174
136
52
104
76
132
109
123
128
76
87
80
110
87
118
69
118
114
94
80
93
128
107
89
120
87
91
103
79
147
80
144
119
119
88
154
113
83
131
112
128
124
106
156
104
80
80
136
80
137
197
90
83
107
52
89
99
146
80
162
115
109
134
72
109
122
69
104
104
89
80
123
147
94
109
109
119
136
75
109
117
115
116
101
172
91
80
175
96
69
99
125
134
87
102
80
76
119
104
136
79
159
145
104
80
67
140
112
106
80
181
119
119
69
123
69
136
89
87
128
104
107
76
151
75
89
69
91
201
145
100
117
107
72
114
89
80
128
112
95
87
76
109
131
109
99
94
127
151
78
103
120
138
140
131
80
116
117
125
144
99
175
128
111
120
135
99
94
156
80
118
148
110
93
153
127
102
89
134
88
102
71
117
113
119
127
85
134
148
119
125
90
80
112
106
85
175
119
99
78
101
130
78
112
208
113
137
108
80
154
104
69
113
158
129
134
87
88
72
94
78
69
69
99
80
80
96
80
79
155
101
78
158
87
175
128
69
144
93
69
118
80
128
104
147
98
79
75
69
80
99
152
120
120
128
174
96
94
129
99
99
107
69
69
145
69
52
80
80
98
164
107
69
120
156
69
111
69
146
103
71
116
136
121
110
106
159
142
131
113
103
134
187
109
102
100
144
109
117
101
120
175
99
94
87
80
88
107
132
80
99
155
119
163
87
110
131
69
117
140
69
112
137
154
109
80
96
98
119
64
87
76
89
73
78
80
153
143
81
109
107
163
76
99
111
195
69
110
197
132
80
127
110
80
151
87
119
69
119
160
101
80
147
148
131
107
97
132
95
80
121
146
175
69
142
120
118
76
99
118
121
106
76
118
128
104
69
97
75
163
56
115
59
80
115
96
88
104
100
110
175
80
128
144
151
91
103
80
175
139
72
52
133
87
90
67
110
82
78
80
78
72
89
119
115
88
117
102
69
76
143
109
72
155
118
96
109
99
89
131
67
149
109
92
174
156
91
94
119
140
76
96
91
122
74
128
131
95
102
64
69
132
89
102
116
87
76
52
119
87
83
107
80
80
123
127
95
119
107
119
108
104
121
87
118
90
100
148
127
113
128
155
91
140
100
160
78
94
87
175
87
113
106
100
142
94
78
76
120
87
80
80
120
88
118
98
130
109
76
78
87
80
79
155
113
137
107
115
111
131
109
160
100
90
164
107
89
107
94
76
109
87
118
87
76
143
112
87
126
89
99
154
54
116
90
78
130
94
93
117
136
80
94
80
87
79
155
100
69
109
80
106
102
116
104
138
120
87
76
107
154
78
80
103
148
92
175
130
94
119
99
93
133
121
69
156
76
87
72
80
69
112
197
128
80
94
93
159
131
115
140
174
145
128
131
87
89
80
112
110
131
57
155
146
118
134
78
119
127
69
102
107
119
155
120
154
120
74
104
185
112
153
52
78
100
175
107
78
80
72
95
121
131
131
104
119
107
131
69
106
122
88
165
116
69
100
74
145
116
140
87
76
166
124
113
134
145
134
69
119
127
78
131
85
78
156
111
80
87
78
91
80
99
69
114
118
110
148
117
80
72
109
88
80
193
120
69
146
149
103
134
69
80
89
109
112
136
88
118
80
80
78
88
154
69
80
111
72
117
126
101
78
69
80
88
110
69
94
80
113
114
102
88
87
87
113
151
139
85
121
121
175
151
88
144
128
121
78
80
119
87
118
134
109
104
112
67
136
87
96
120
104
80
119
78
107
80
89
110
70
119
87
126
129
112
99
114
69
78
118
113
87
132
104
80
197
114
143
117
122
94
175
120
156
56
109
69
113
131
87
131
78
91
128
145
124
113
125
155
91
98
95
137
74
69
119
126
127
134
74
80
100
98
119
91
103
131
94
107
69
69
151
128
69
80
88
93
147
154
110
138
74
99
137
80
175
80
119
94
111
104
130
114
69
75
92
69
117
107
146
125
138
91
78
78
119
69
87
90
197
126
79
138
134
78
122
175
154
149
72
154
89
52
78
123
69
80
113
88
124
132
120
93
83
72
154
99
78
155
131
145
72
88
88
127
138
126
66
78
119
150
156
142
76
116
87
154
80
113
120
136
102
106
123
80
132
132
80
94
128
163
89
87
67
120
76
80
142
174
128
69
106
124
121
87
156
72
87
118
80
101
91
114
76
81
128
144
69
112
109
151
119
121
93
163
119
76
99
107
98
87
137
87
100
144
80
56
80
125
94
121
119
87
80
109
80
154
128
102
87
58
136
154
140
78
80
89
110
76
80
98
72
124
93
80
124
95
60
63
119
80
80
78
102
107
117
104
109
119
165
107
69
109
74
146
69
69
99
69
103
122
80
146
121
80
100
80
76
87
166
119
72
197
151
164
52
101
130
94
95
129
128
137
80
80
94
145
100
107
78
80
89
69
134
88
110
112
87
80
68
110
87
94
194
94
80
125
102
75
87
160
133
112
113
69
114
110
95
80
69
125
136
71
143
137
175
76
157
128
99
134
87
78
69
85
138
127
54
117
154
78
91
145
93
89
175
78
114
105
74
78
74
88
80
120
88
110
120
95
122
109
95
100
122
88
80
80
120
145
69
113
120
113
155
94
98
87
69
80
99
69
113
113
88
110
80
88
99
125
119
144
80
111
115
76
80
127
76
108
103
119
76
80
110
175
148
119
136
123
80
128
69
137
94
120
79
80
120
95
174
110
127
69
52
120
153
121
69
69
80
151
131
134
75
143
120
151
101
140
87
87
80
72
119
79
87
112
109
164
121
71
111
136
119
89
104
96
56
76
72
101
136
101
87
129
110
112
78
80
109
151
124
91
76
128
107
88
90
56
138
136
154
128
69
119
110
69
59
92
134
106
143
87
107
93
117
127
76
80
69
60
79
80
175
80
100
163
138
131
152
76
106
127
90
104
154
93
107
97
119
132
138
80
112
99
89
76
119
136
120
94
52
94
43
112
163
69
175
118
121
52
96
174
126
175
106
111
64
145
80
87
175
93
131
69
77
63
69
80
69
142
90
88
118
117
87
78
68
120
119
96
80
154
134
76
69
107
140
89
133
87
197
123
78
117
135
151
78
72
80
169
112
129
129
156
78
78
96
113
80
120
90
69
111
69
117
76
69
89
119
197
69
128
143
119
121
99
66
89
113
69
101
155
117
69
115
76
109
99
154
87
128
87
80
76
95
112
103
121
80
134
127
81
139
129
80
101
80
108
120
101
87
129
69
163
109
165
99
96
209
80
74
70
69
78
110
120
120
119
119
125
80
78
52
100
88
174
104
110
69
116
138
59
156
164
99
69
91
100
128
69
66
69
145
136
78
131
80
101
124
79
154
136
131
136
112
119
96
175
89
156
64
104
131
125
75
68
74
152
74
118
107
66
128
69
80
107
156
119
80
145
69
78
79
87
102
93
175
88
69
78
69
127
87
107
131
119
76
100
80
112
119
175
102
154
158
101
89
89
111
89
126
175
76
80
87
197
132
80
72
109
150
101
69
98
80
78
80
98
143
69
137
90
72
69
104
88
87
111
119
87
113
169
88
169
119
80
120
94
97
120
104
141
87
134
81
80
102
80
88
143
87
109
91
93
119
69
52
69
121
144
150
114
107
54
112
99
100
76
155
80
104
80
76
72
80
126
154
99
118
90
106
147
121
88
88
73
129
54
80
145
69
120
76
145
154
185
123
113
72
52
112
98
112
148
153
106
99
85
104
145
69
104
151
85
110
80
144
160
119
84
122
88
104
88
109
126
107
106
137
99
94
183
110
72
110
80
89
59
132
121
80
111
120
113
106
80
128
69
113
78
107
104
115
124
148
80
123
99
107
107
80
94
107
69
155
87
110
75
154
126
87
109
115
106
124
101
74
87
87
118
69
80
104
154
82
117
99
69
99
81
102
76
96
69
106
126
119
131
103
102
90
94
119
89
163
128
76
164
88
174
78
99
78
104
145
120
126
94
106
102
78
112
80
91
111
120
110
111
138
79
111
76
89
43
107
54
119
160
134
55
76
121
164
88
99
132
124
101
89
154
128
120
126
80
129
72
78
174
122
98
89
109
87
120
151
87
75
76
88
80
113
154
119
80
80
112
93
78
99
80
80
128
160
127
156
74
87
164
151
131
115
112
109
109
143
139
78
93
80
118
91
87
76
89
87
82
74
117
78
69
148
95
119
87
121
119
120
80
112
69
122
80
123
160
99
131
155
57
69
106
94
131
137
144
87
142
100
87
95
94
96
112
121
75
99
52
69
76
76
175
101
75
69
131
74
125
74
104
76
138
175
58
106
151
91
110
107
94
93
110
145
87
144
80
146
113
87
87
88
88
111
155
149
108
87
117
130
88
69
99
80
80
87
104
119
107
134
123
80
128
72
115
80
109
154
148
87
143
56
74
84
137
151
80
101
145
117
129
94
80
143
111
89
110
123
99
119
90
113
78
83
88
56
105
99
96
126
93
54
117
156
121
80
78
72
89
109
80
80
87
120
118
76
69
155
119
97
129
89
87
91
154
101
101
108
87
119
112
91
117
109
68
52
114
79
112
74
120
56
78
133
118
67
95
162
119
112
164
80
93
87
87
146
89
84
122
115
87
78
163
154
87
132
80
78
92
80
68
87
111
87
109
69
104
104
80
136
117
140
92
113
115
80
69
128
115
131
130
164
110
101
164
163
146
120
145
90
87
104
85
69
93
78
87
87
69
127
134
104
119
80
121
134
94
156
116
143
76
134
87
69
160
107
119
81
72
52
87
128
136
102
175
92
138
175
117
92
94
69
95
99
89
149
78
145
122
145
88
119
116
69
156
104
150
73
154
80
78
148
157
69
72
74
113
88
107
106
129
87
83
104
154
54
99
80
80
91
124
136
104
80
69
54
94
78
89
80
80
156
69
145
95
112
134
189
175
99
72
89
66
140
76
119
52
104
120
76
137
113
89
122
83
108
69
80
78
54
147
87
115
69
137
101
72
104
109
83
80
134
69
78
94
76
93
83
87
134
94
89
125
156
137
120
104
87
80
109
78
175
130
116
112
130
72
90
128
110
148
80
76
78
78
93
120
96
80
80
140
76
92
119
155
78
100
119
113
122
166
78
80
147
89
119
117
69
125
137
128
74
136
133
80
131
80
175
103
120
96
80
136
76
106
145
109
120
148
142
197
106
99
98
69
155
127
119
75
78
116
99
113
69
80
128
146
122
116
103
120
157
107
80
109
112
137
138
115
94
145
115
154
107
166
114
87
134
80
107
175
74
118
100
128
121
99
76
163
110
120
108
80
89
86
94
69
142
131
80
154
101
147
164
175
148
52
109
103
120
110
175
94
163
76
139
78
160
175
158
80
76
140
76
106
132
128
119
87
88
143
69
96
80
112
80
124
86
90
101
94
99
113
80
87
99
175
56
91
88
80
128
69
148
86
120
127
107
128
112
101
80
176
151
103
93
69
88
69
83
56
134
109
88
80
80
80
146
119
137
154
137
67
91
106
127
130
80
154
72
122
78
110
120
87
102
136
153
69
57
187
99
104
87
134
131
69
129
88
117
88
119
94
89
136
56
60
123
80
76
87
80
156
157
72
117
119
175
74
119
76
143
113
87
124
80
66
106
87
78
95
125
99
139
100
69
145
117
80
162
155
107
107
107
88
87
67
66
75
117
88
78
143
121
163
102
87
134
175
127
89
128
91
95
107
102
104
109
109
93
139
123
69
137
119
85
87
120
77
99
199
104
104
197
106
78
162
132
88
72
143
104
76
80
78
91
99
120
131
97
120
78
107
112
110
94
80
94
96
104
95
151
100
121
96
72
76
88
88
78
113
76
110
99
76
80
80
148
175
94
123
84
78
109
112
80
88
112
171
120
107
119
140
131
73
76
72
117
80
78
136
80
88
87
119
103
69
124
121
114
129
70
95
109
87
87
120
78
98
130
93
101
164
130
86
120
109
109
134
72
110
93
146
121
129
134
112
78
139
126
80
56
128
152
90
109
78
74
123
109
100
106
150
94
106
114
118
106
175
93
85
69
93
99
140
137
107
121
154
80
102
90
130
94
95
145
144
99
107
90
80
87
162
60
154
128
145
134
152
80
117
114
144
164
74
78
166
128
106
147
87
107
75
104
138
99
94
100
80
69
90
78
146
87
89
89
122
131
89
128
128
69
157
80
80
146
76
119
125
164
155
119
155
155
87
87
87
150
80
156
99
66
72
80
107
75
76
197
151
93
82
99
94
69
140
74
91
131
137
88
134
123
89
140
80
109
154
69
88
89
119
163
89
146
197
120
115
78
107
56
80
80
104
100
156
119
93
119
76
69
87
147
95
93
134
87
108
164
140
69
75
76
155
140
100
88
128
54
149
109
85
95
54
149
90
136
72
134
81
100
80
116
87
121
145
150
96
99
74
87
155
131
87
107
62
56
79
154
96
90
106
113
175
80
131
114
80
69
69
119
123
87
117
98
83
89
106
102
120
94
89
92
120
106
93
69
88
70
87
101
75
87
134
107
78
80
117
137
131
67
78
114
115
99
80
72
85
106
155
107
96
91
69
175
69
80
131
52
101
120
121
117
80
89
89
151
175
87
87
72
137
80
126
87
78
106
119
91
99
114
121
119
89
135
107
117
119
130
93
104
64
109
88
81
107
80
155
116
110
87
112
121
76
54
102
87
140
102
136
139
120
87
114
52
89
72
72
154
80
99
107
69
107
87
87
78
191
99
78
119
107
120
92
127
92
89
140
69
95
56
128
154
144
127
106
136
175
136
69
91
75
199
92
99
157
151
130
134
99
100
80
121
137
76
96
144
131
107
94
78
172
131
101
118
121
125
115
128
112
175
112
113
52
76
159
121
119
80
99
80
148
161
78
82
102
89
154
150
80
115
163
150
80
88
85
89
112
132
107
127
104
130
79
88
72
88
101
136
121
87
95
69
120
151
102
132
69
88
87
101
100
163
113
96
160
126
136
115
115
87
93
99
74
74
93
87
175
121
93
43
145
80
99
114
89
80
82
87
155
127
154
120
111
94
128
121
78
112
124
136
79
80
92
90
72
108
94
151
104
197
102
78
101
104
107
54
112
106
76
69
110
107
109
132
117
80
95
89
71
94
78
78
175
128
109
87
118
69
153
69
80
113
74
119
129
126
155
121
99
126
76
143
114
93
136
78
117
134
77
139
76
99
129
101
137
91
80
145
137
143
96
69
128
215
119
197
133
88
110
80
121
111
96
119
163
96
78
194
137
122
137
74
89
122
107
96
105
145
118
108
129
147
96
93
91
112
123
112
110
80
87
78
80
99
69
80
138
84
91
110
80
89
118
145
100
149
80
88
154
131
112
87
102
120
80
134
82
121
89
120
78
111
85
113
175
119
87
89
201
116
140
102
163
102
132
129
113
72
101
175
113
80
80
52
87
117
78
69
80
163
148
107
80
149
69
134
87
121
138
119
133
91
163
87
83
107
116
78
89
113
155
118
87
92
110
80
69
101
80
138
143
86
124
87
111
69
185
80
89
80
136
78
128
119
128
152
73
127
87
117
118
145
106
80
121
120
102
106
126
144
89
104
69
71
172
154
113
107
88
124
113
114
114
107
109
91
118
129
83
106
134
74
89
147
103
115
94
107
100
145
98
87
185
105
69
96
76
80
183
156
128
88
100
128
88
119
107
90
110
175
89
104
91
140
87
76
89
145
99
69
156
80
128
102
95
144
175
175
120
174
154
68
151
99
110
102
80
78
109
131
133
129
143
69
106
104
107
111
109
120
93
78
93
99
80
147
111
174
69
91
80
134
87
95
110
118
69
104
78
140
72
119
78
154
80
104
69
80
132
78
85
120
72
89
80
87
118
128
78
154
99
78
111
138
144
107
117
128
137
80
72
175
88
117
185
80
175
160
76
124
117
83
80
99
99
110
88
118
134
127
107
174
109
74
69
76
151
93
134
131
131
126
78
90
151
145
109
85
107
117
93
88
123
107
78
175
80
117
52
76
95
69
147
109
110
159
69
56
112
147
80
131
109
142
116
88
69
69
106
80
136
133
132
111
137
80
69
175
80
132
130
99
59
96
76
118
151
144
127
67
94
119
101
80
142
110
128
149
88
72
80
197
124
87
152
110
107
126
80
107
78
113
136
120
68
150
137
76
91
146
142
56
89
128
80
113
140
88
96
138
87
119
95
106
106
112
166
175
205
91
87
76
93
89
69
163
98
110
107
71
136
106
107
95
96
155
110
87
102
126
88
85
109
76
78
118
88
131
115
141
106
154
97
94
76
69
140
94
120
80
107
109
143
175
134
121
75
99
129
99
98
126
69
69
89
131
143
137
133
128
88
180
93
72
52
107
156
137
99
148
129
76
83
152
69
69
80
147
76
72
138
78
54
131
209
89
126
144
80
80
80
117
69
80
185
76
80
175
106
69
78
76
85
175
95
155
104
109
112
104
121
76
69
121
80
129
100
88
126
78
127
104
112
91
80
119
69
104
59
54
117
131
69
80
102
134
43
131
121
136
138
114
131
88
142
88
123
118
64
118
87
128
92
87
128
99
83
69
114
80
103
113
89
56
125
124
163
99
69
72
90
129
119
79
71
76
134
124
101
136
120
157
89
106
136
64
175
109
120
113
119
80
124
80
89
87
74
136
80
58
151
156
60
109
109
74
68
136
125
89
104
106
148
94
117
88
88
151
110
127
80
69
96
114
120
92
163
74
106
96
95
78
87
120
147
80
69
80
201
175
163
140
109
111
88
80
80
144
111
80
87
99
134
87
76
124
138
117
112
121
87
104
99
110
85
106
101
88
101
128
156
72
99
72
110
175
120
69
76
98
83
114
142
93
124
80
131
131
104
89
97
54
112
143
145
67
118
110
112
136
109
91
82
113
89
88
110
69
121
69
78
117
156
76
72
104
174
106
154
110
118
87
72
88
101
110
103
126
101
110
120
80
96
134
89
197
130
109
174
80
106
119
112
121
106
104
120
106
76
175
69
156
80
120
111
104
156
122
109
110
69
89
134
96
80
151
69
103
88
106
141
154
87
144
151
80
85
114
113
118
72
80
130
106
149
119
87
76
87
169
96
93
88
69
69
87
120
76
87
85
94
80
117
88
112
76
69
127
96
80
119
100
69
80
80
66
111
98
79
72
125
175
87
175
125
112
146
123
103
69
109
145
131
88
128
69
110
80
110
109
69
69
102
69
69
102
80
68
130
103
147
129
99
106
130
78
66
123
88
156
141
146
131
89
155
91
98
89
120
80
127
69
100
121
110
118
69
93
98
167
69
121
120
85
128
91
134
201
175
80
131
74
69
89
146
175
138
124
119
201
80
120
87
110
119
69
87
128
103
69
88
69
119
119
119
144
76
87
89
121
80
145
128
88
106
104
123
80
80
107
76
130
114
74
109
128
175
127
87
88
120
80
87
137
175
163
88
120
54
80
146
181
78
132
109
99
87
162
149
121
104
126
101
99
98
89
131
156
109
112
116
136
147
131
140
89
156
93
126
120
69
112
80
110
87
109
78
119
94
128
87
88
85
69
152
80
104
169
175
56
54
69
86
141
133
104
175
109
175
69
129
72
69
109
125
123
80
78
75
80
69
101
94
99
80
146
121
118
183
99
117
107
80
87
87
121
144
176
107
120
106
69
134
134
106
75
87
100
119
76
113
134
76
76
101
72
156
78
76
80
80
145
76
122
175
69
131
94
85
128
110
89
134
80
199
78
107
145
111
69
104
113
121
123
69
89
112
119
69
69
69
99
87
96
134
90
102
89
131
109
69
123
87
87
80
111
120
101
79
106
99
121
109
104
127
151
87
120
128
128
79
95
69
121
71
87
88
72
111
166
121
122
164
103
88
76
93
69
106
69
156
100
142
56
87
80
124
111
94
69
80
138
187
80
109
122
80
72
124
118
112
164
175
69
76
104
101
91
79
99
106
88
71
80
69
102
93
112
69
119
155
104
69
74
76
128
69
63
163
89
145
101
117
159
107
105
89
111
110
107
145
69
139
80
131
87
107
109
72
132
113
123
175
112
80
59
131
69
169
153
92
107
78
80
86
113
94
132
60
105
110
76
126
94
112
80
124
92
87
91
78
119
120
155
136
80
132
175
116
136
43
123
85
121
118
109
59
145
107
136
110
87
131
131
93
83
80
117
69
175
91
103
54
78
119
89
87
107
142
144
58
69
175
93
80
117
69
117
119
145
183
80
128
112
80
69
175
78
80
130
78
93
120
109
99
99
119
87
78
119
102
180
143
103
120
91
69
54
99
134
113
145
80
87
151
66
143
94
151
89
114
175
110
104
106
106
119
143
69
131
113
104
76
76
123
112
75
80
148
115
112
100
88
117
78
94
106
80
128
78
155
148
80
102
132
80
105
94
80
81
148
69
69
52
143
78
154
119
69
183
129
113
118
109
91
111
115
80
107
76
100
80
89
107
69
80
124
114
123
136
134
124
109
128
101
87
91
69
80
106
175
120
121
78
87
175
115
123
107
117
154
101
69
106
76
113
112
80
88
120
99
72
155
107
81
123
109
156
102
119
80
119
94
81
87
73
90
172
104
80
117
117
140
87
102
119
72
131
78
88
94
147
102
112
154
131
113
92
80
94
80
87
69
109
106
89
69
80
143
80
80
94
119
76
87
69
98
129
107
78
83
116
123
94
109
156
90
82
82
72
101
87
85
80
126
85
96
134
114
121
88
128
175
125
74
111
80
102
103
154
69
101
140
145
149
83
72
78
175
76
121
132
87
166
69
96
154
80
80
156
78
120
76
80
118
131
99
89
94
118
146
107
72
120
101
99
67
104
99
69
99
117
72
96
98
156
102
117
107
87
78
100
119
119
104
87
52
114
128
154
104
140
87
113
172
121
87
80
109
87
103
110
59
59
80
148
85
99
100
110
76
140
119
90
136
106
129
87
107
88
185
76
95
80
69
159
130
134
87
120
80
113
101
109
76
93
80
69
52
114
140
175
56
78
89
119
69
69
136
122
110
121
110
88
126
178
163
113
87
118
85
104
72
110
121
149
94
151
64
69
72
154
88
116
113
147
119
96
69
128
104
117
131
117
67
164
133
80
107
127
130
91
80
83
110
175
69
119
119
80
100
131
78
80
89
163
122
145
89
69
94
127
88
155
76
112
110
107
162
109
72
134
99
72
126
118
87
88
157
109
89
89
56
74
107
105
136
87
104
136
134
80
88
137
106
120
156
104
89
155
104
121
143
108
121
69
113
128
164
131
128
80
131
91
117
69
120
117
102
140
112
113
87
78
164
93
137
106
124
128
106
109
131
128
80
100
201
87
133
94
117
69
112
185
57
80
151
120
159
115
102
140
100
83
106
80
80
144
118
154
112
96
146
85
80
58
69
128
87
175
80
94
104
130
109
121
88
124
80
80
157
137
138
151
126
197
89
89
151
74
117
117
115
76
80
121
101
117
134
106
106
91
128
111
122
69
156
118
132
106
56
76
106
134
88
120
98
109
78
130
75
94
90
109
154
80
109
134
89
93
94
99
115
140
151
104
127
93
131
88
54
175
80
69
96
87
107
120
118
78
69
117
80
119
88
112
155
80
165
142
72
118
89
83
87
138
76
94
128
94
80
80
120
80
99
94
123
74
113
69
94
92
197
164
160
102
137
91
78
74
104
170
88
69
98
89
54
119
69
121
72
72
123
99
93
126
59
69
117
69
89
93
135
76
109
107
137
87
97
123
87
121
124
107
82
181
128
87
85
109
117
54
104
78
87
128
94
113
132
142
64
132
154
201
94
103
69
114
104
143
69
91
122
80
69
69
98
165
123
122
103
103
128
69
87
80
87
99
113
80
80
127
80
76
83
134
104
85
106
80
117
111
106
106
113
101
109
80
87
107
85
69
109
175
98
103
87
80
131
76
69
95
130
128
88
69
76
80
113
112
137
74
69
154
151
175
146
119
80
94
155
102
88
80
109
91
121
101
87
80
80
112
155
80
69
127
91
78
78
187
136
87
76
110
119
74
151
88
80
103
162
109
101
68
109
69
71
131
96
154
110
68
82
120
85
88
113
43
110
93
85
56
69
109
121
89
194
201
78
133
103
117
80
69
143
110
94
78
137
100
89
120
124
154
152
88
120
109
78
76
98
113
69
78
96
151
80
80
131
94
122
87
140
91
76
78
121
69
104
155
151
66
111
109
93
147
103
83
109
122
87
121
78
113
106
126
114
117
155
133
135
94
80
96
98
134
116
145
119
69
100
111
107
87
99
109
93
133
120
143
107
107
80
138
109
87
151
128
110
172
72
76
62
156
69
136
87
143
69
101
120
72
87
126
110
93
92
153
147
121
107
122
93
120
89
104
127
96
69
131
127
111
130
154
87
104
75
114
185
80
80
80
72
88
118
120
69
63
110
112
106
104
69
183
134
131
175
119
117
124
197
147
80
122
104
80
117
131
105
78
80
154
119
72
75
96
86
89
146
80
93
113
74
100
80
69
137
119
101
81
120
147
131
127
120
123
140
107
121
106
145
78
69
72
130
161
80
72
110
136
134
128
99
80
140
105
69
140
78
78
127
78
146
120
69
163
110
104
143
117
76
126
88
69
128
66
118
104
119
54
78
87
119
80
129
131
101
78
98
134
69
78
154
118
132
91
106
111
134
115
107
197
117
88
76
122
69
125
131
91
76
80
89
138
119
109
93
83
131
107
87
76
122
151
119
78
175
102
73
82
99
94
123
86
87
127
102
80
69
94
89
113
91
69
76
66
101
83
83
70
119
94
112
117
91
140
54
87
109
107
69
128
148
161
127
87
107
80
69
148
125
76
130
88
134
96
148
112
76
175
131
75
104
99
72
93
119
102
80
106
99
106
78
93
78
93
127
69
96
126
87
133
146
131
127
154
154
76
99
89
172
119
80
95
91
88
54
88
80
95
89
89
131
89
99
136
87
126
132
106
80
78
151
101
93
112
118
80
69
110
127
119
140
69
78
83
112
119
87
76
109
126
132
57
136
154
124
93
69
107
127
107
90
91
74
78
99
109
93
115
93
80
109
114
60
87
117
175
89
131
131
100
72
80
119
99
175
118
117
56
156
94
76
131
69
175
76
117
112
100
89
100
88
98
160
132
143
120
96
134
175
134
115
123
155
155
113
80
80
80
97
120
91
122
80
104
112
88
96
117
113
99
113
78
69
78
82
117
99
69
148
100
80
121
80
128
110
80
163
76
80
93
122
118
136
92
107
189
134
76
109
78
113
78
78
98
89
56
136
119
80
80
95
101
69
76
76
123
78
163
127
79
82
69
107
120
112
80
136
76
129
134
102
109
131
138
75
137
197
146
89
122
134
87
87
119
126
76
119
76
163
154
78
121
125
80
87
75
78
103
136
128
80
131
78
87
72
142
123
78
79
175
121
96
80
80
175
80
166
154
120
80
128
110
124
175
76
109
119
134
66
120
123
119
104
80
101
100
147
104
152
112
101
78
78
91
104
126
156
127
100
115
88
81
169
107
72
146
155
154
107
128
91
111
80
78
153
107
115
136
78
125
113
99
132
85
109
131
80
89
59
103
96
177
76
87
93
127
101
154
89
120
118
113
154
74
110
78
108
87
109
88
80
119
80
76
113
122
69
80
107
199
70
93
69
117
101
80
87
78
80
69
122
89
156
163
80
88
154
87
107
69
80
99
143
102
111
78
132
109
145
119
112
131
120
185
80
124
114
118
88
127
119
116
120
120
119
123
118
159
78
129
52
91
157
137
101
85
120
99
123
86
142
98
83
69
93
137
69
131
74
80
87
69
99
85
127
54
101
136
159
80
78
99
109
72
69
80
106
119
78
76
130
85
78
109
110
155
137
91
80
133
169
87
118
107
156
110
93
102
88
129
94
119
151
120
113
117
109
137
123
154
79
115
87
136
93
80
96
72
80
131
150
106
101
102
104
117
94
156
117
99
136
87
120
134
73
87
120
79
122
136
101
72
104
98
103
124
98
119
147
93
76
109
80
87
79
78
112
98
94
94
120
98
78
87
94
107
78
119
119
109
110
95
87
120
91
100
99
69
147
165
134
102
76
74
113
110
69
87
106
132
95
88
109
175
175
89
52
136
119
89
132
99
87
127
90
68
80
80
175
89
128
143
74
76
78
175
131
136
155
80
100
80
119
119
129
137
100
154
93
94
78
80
123
69
129
127
89
87
114
80
78
69
78
116
127
101
78
123
134
94
104
104
125
152
128
69
112
113
78
74
164
119
135
145
74
119
78
119
87
94
87
120
143
120
76
113
76
69
78
78
109
110
80
133
69
66
80
67
104
80
117
135
102
107
138
69
156
78
152
106
104
175
134
107
94
71
115
118
56
113
111
127
164
140
121
131
85
140
96
94
120
138
128
72
106
101
87
80
109
85
110
78
128
69
90
118
87
87
87
98
74
116
152
128
95
140
127
131
135
49
98
113
152
148
135
143
82
148
127
125
131
129
108
145
120
147
119
148
89
129
103
119
138
136
133
133
123
131
90
125
186
122
134
104
134
115
199
109
127
100
90
76
87
115
54
119
130
154
106
150
120
113
101
102
83
93
94
129
85
142
119
144
102
84
74
140
105
123
122
119
74
91
49
123
125
132
81
177
124
133
68
95
91
104
82
49
97
120
94
110
133
136
130
59
95
87
119
120
59
118
96
140
94
140
118
112
110
108
141
124
108
135
143
103
128
78
101
101
121
74
106
133
112
167
172
125
126
92
126
110
114
69
74
59
160
77
67
102
143
103
128
113
78
190
122
113
79
108
149
131
119
108
88
148
125
150
61
54
85
109
90
83
131
90
90
127
101
183
135
83
87
146
118
94
125
119
86
151
123
129
123
168
123
110
54
133
135
146
113
103
122
135
92
76
88
153
107
78
177
198
106
57
93
116
104
125
104
155
123
153
102
128
133
135
54
162
67
153
111
134
117
143
95
121
117
92
156
140
136
107
179
148
107
105
87
109
103
158
143
160
192
97
128
140
125
121
107
94
112
129
95
106
148
54
96
109
82
144
82
49
84
54
151
117
108
107
158
127
108
144
108
126
138
91
82
130
98
161
144
108
140
80
128
83
202
154
161
139
151
124
96
143
86
106
143
116
108
190
125
113
148
129
110
94
103
123
85
117
94
136
89
116
104
98
103
85
98
128
104
122
76
108
148
97
86
139
123
108
109
105
95
108
117
92
54
108
95
145
141
169
87
102
157
110
119
105
124
115
91
54
90
94
83
108
105
99
109
83
91
163
87
146
68
137
103
145
165
76
125
93
133
115
139
77
101
128
89
111
112
107
143
160
62
147
95
83
82
99
129
85
81
200
105
125
121
107
169
128
108
95
155
175
123
108
123
173
97
121
165
95
132
102
119
54
89
136
127
157
115
82
77
108
95
109
149
180
70
104
105
102
135
96
98
87
135
126
140
68
116
97
130
95
177
133
148
135
97
141
133
115
138
124
158
102
99
95
108
95
153
105
105
70
125
93
119
135
106
106
94
162
125
86
54
129
95
125
100
158
107
133
105
149
112
81
129
133
74
54
74
105
107
156
116
121
103
177
122
70
182
137
106
155
133
123
106
124
141
119
143
125
156
49
178
118
97
163
150
125
113
123
98
179
67
85
113
76
141
54
45
125
76
108
93
127
106
189
122
83
118
143
125
149
113
121
86
102
59
102
127
84
158
92
73
54
141
87
102
108
108
171
103
118
83
110
172
99
105
69
132
83
78
117
134
143
116
146
116
121
106
121
112
126
95
98
113
124
158
95
142
113
126
121
147
113
120
91
106
129
102
92
165
112
129
71
116
93
90
98
114
115
140
74
110
124
74
82
99
137
98
128
88
135
67
155
106
102
116
81
125
87
145
98
137
93
176
148
106
119
102
54
167
119
148
190
122
77
74
95
127
157
172
139
106
91
116
94
108
110
112
130
160
111
98
125
128
172
61
128
109
196
100
91
131
98
145
123
94
98
128
94
92
185
177
87
163
118
100
138
106
68
65
110
67
105
148
154
95
97
101
82
74
195
143
103
148
74
83
169
148
54
163
95
110
108
96
130
142
90
158
129
80
169
125
133
54
126
164
113
110
140
143
90
100
87
83
155
129
105
137
105
127
118
149
99
144
125
99
149
49
103
73
108
125
122
80
90
85
106
91
148
122
143
54
145
86
95
140
113
135
69
136
147
102
94
122
102
118
177
81
77
123
96
78
143
110
90
111
115
138
72
155
187
98
75
54
108
144
108
130
131
144
138
131
120
91
79
80
117
74
90
157
141
98
147
148
112
148
150
127
88
103
140
108
54
148
110
121
148
103
143
103
108
126
139
162
142
102
103
70
108
54
135
83
122
54
108
70
173
54
109
83
139
143
76
136
118
76
92
134
112
145
108
134
108
149
134
122
145
116
130
129
104
158
163
108
77
114
139
125
103
81
116
93
141
85
125
57
76
149
108
82
111
96
143
80
77
98
116
138
147
119
154
93
99
200
146
218
107
59
98
129
103
148
74
140
108
54
78
109
155
148
93
79
161
127
130
158
94
87
107
120
153
49
131
103
95
54
97
146
103
171
130
120
81
143
105
108
149
113
145
131
103
113
93
128
133
126
141
83
129
92
54
128
125
106
49
116
74
118
129
145
59
147
134
190
101
127
177
98
77
190
78
90
104
102
109
105
127
151
105
101
68
104
129
76
102
140
156
194
144
49
131
105
166
68
59
93
112
160
98
191
106
107
151
148
106
124
119
107
128
146
115
146
138
159
155
131
116
131
98
90
69
144
157
79
190
101
68
154
141
123
102
103
119
141
87
67
54
140
54
115
132
161
102
106
81
111
94
102
132
130
99
165
87
103
129
110
49
90
106
125
161
121
129
138
137
180
59
96
105
95
128
108
180
77
96
84
158
90
113
102
99
146
102
102
93
122
135
97
153
125
151
81
167
147
91
77
54
125
82
76
125
133
88
97
148
128
184
132
95
106
54
101
172
152
95
135
148
111
115
74
98
129
129
131
126
81
106
77
126
122
149
133
104
119
104
83
45
68
90
127
87
49
86
129
102
100
126
177
112
153
84
123
113
147
108
69
127
95
113
120
128
154
77
90
104
68
107
133
170
125
127
148
54
82
104
103
158
95
116
106
140
85
65
103
139
131
95
144
129
143
88
155
115
81
119
161
102
98
115
49
77
96
144
135
102
49
109
108
107
140
155
108
139
74
77
158
106
157
97
103
121
126
115
81
87
74
67
98
152
132
143
86
104
127
87
133
73
143
161
134
120
111
54
136
82
151
72
135
54
96
103
163
108
87
135
130
96
111
146
61
119
122
118
112
127
116
102
108
147
98
103
106
111
186
123
142
103
85
144
94
112
77
87
95
127
69
130
105
158
107
143
74
183
139
133
110
125
122
76
119
152
185
102
158
105
95
94
132
107
128
77
88
104
89
177
106
147
162
95
110
105
105
166
158
90
95
121
111
163
104
146
125
90
92
128
98
99
68
54
131
140
158
144
54
172
128
82
177
136
119
69
108
108
125
143
82
138
68
104
54
113
102
122
128
74
100
115
120
108
102
128
129
148
149
148
96
139
134
108
148
109
87
120
123
121
77
149
111
112
113
123
128
126
134
143
125
49
118
123
165
112
113
108
103
177
104
95
154
153
120
188
59
96
128
95
122
105
197
180
128
105
121
108
107
103
127
112
92
135
122
140
96
54
108
95
112
105
179
95
109
148
127
102
98
98
88
130
120
82
108
148
118
129
111
91
129
146
175
45
110
128
82
95
108
90
102
117
98
117
113
121
87
81
84
86
75
112
126
122
104
97
155
116
135
104
121
82
120
107
67
100
106
130
102
103
108
70
117
61
78
86
97
148
61
118
117
148
150
106
67
141
103
109
169
147
125
109
77
110
84
67
131
81
98
153
59
115
87
119
119
138
54
82
85
111
154
119
129
130
103
166
108
168
131
119
124
108
84
122
195
109
141
77
87
93
68
102
166
122
122
130
163
117
77
84
67
113
80
81
49
148
114
49
143
117
54
110
115
74
49
127
96
85
98
125
165
98
89
112
95
88
98
54
134
101
109
92
103
98
158
85
93
54
81
54
95
100
149
124
86
110
102
103
111
141
135
77
143
117
108
90
133
188
103
113
74
116
133
109
120
102
88
110
89
107
101
125
104
155
116
103
102
141
54
132
169
80
114
54
108
100
108
113
160
69
74
49
120
119
110
144
76
98
97
67
191
146
165
67
59
181
91
59
106
98
103
108
149
148
124
99
158
103
104
103
131
133
107
169
117
81
158
160
82
94
95
173
97
128
62
74
114
161
113
112
61
123
175
150
107
74
136
123
125
163
116
81
123
149
140
165
168
49
141
83
93
115
106
105
159
173
162
112
108
80
145
123
148
139
123
118
49
105
146
69
118
146
99
105
143
194
122
54
137
97
90
116
186
103
123
112
101
161
157
143
98
116
104
124
122
87
106
117
98
170
87
90
120
110
125
190
116
95
105
110
103
127
81
85
144
109
99
149
170
160
54
117
103
145
141
120
79
87
76
73
108
153
162
98
82
120
81
59
59
97
67
107
113
133
105
89
93
105
187
134
127
134
49
59
124
128
95
125
143
146
87
85
148
128
102
91
133
118
134
110
137
125
59
107
103
119
119
76
110
110
158
156
134
106
109
124
112
116
61
153
148
90
103
77
81
139
139
81
110
98
154
137
54
78
103
133
116
98
119
102
77
135
125
110
123
121
74
113
143
93
87
54
143
107
54
68
115
139
140
108
104
133
90
132
125
104
146
81
113
67
67
128
172
77
139
153
106
59
77
130
113
160
139
105
54
126
108
182
87
91
95
110
160
100
133
77
109
103
140
154
120
102
165
159
109
67
125
94
144
93
125
93
102
84
144
109
98
128
125
145
133
99
127
146
104
98
113
164
126
123
81
128
109
115
148
127
135
98
102
90
86
81
119
77
158
118
159
87
54
127
120
65
126
77
159
128
122
107
167
139
103
125
54
134
123
148
144
143
78
127
76
180
118
143
98
54
128
102
100
102
89
127
94
116
126
73
163
133
157
103
103
152
106
131
74
108
153
98
78
81
77
125
105
98
109
172
78
68
135
95
87
102
155
95
92
87
143
105
200
124
87
95
69
123
108
81
77
101
82
142
147
112
103
84
98
81
107
98
123
54
129
158
123
145
143
173
115
118
98
87
124
182
133
85
74
142
99
173
133
137
135
111
135
54
133
140
142
133
126
128
168
98
116
94
144
123
102
92
155
141
87
126
107
98
100
113
82
154
102
102
117
186
123
134
108
54
129
74
103
123
98
157
104
83
165
154
117
98
95
146
92
105
138
104
83
123
148
144
111
199
144
123
106
105
108
95
149
168
86
104
108
167
94
98
119
132
102
82
93
101
102
118
113
91
116
129
146
104
145
148
98
49
145
138
102
106
176
82
108
143
177
91
86
143
124
77
157
158
114
129
128
142
87
161
99
102
61
113
138
93
54
132
127
98
135
170
123
136
103
77
107
96
92
107
166
140
103
127
111
164
96
139
136
109
135
102
108
132
87
54
61
129
84
61
112
120
95
128
109
132
110
200
98
118
144
103
96
68
143
99
93
120
128
95
114
167
115
116
93
116
146
135
125
113
160
148
128
98
122
111
124
108
146
49
113
105
113
103
86
125
106
116
102
147
153
108
93
136
132
95
130
151
131
140
128
168
108
122
148
139
74
54
77
93
125
126
144
101
59
80
95
131
121
97
129
54
81
120
120
127
95
49
80
127
93
134
67
139
94
138
102
87
127
110
83
123
127
87
125
85
163
61
141
145
159
116
87
85
95
126
113
148
83
108
126
183
127
106
91
98
112
126
92
54
179
111
127
106
97
102
129
89
135
139
119
103
54
117
111
96
122
108
131
168
102
149
104
99
135
81
127
90
113
135
107
142
133
145
81
117
82
72
144
93
125
116
152
144
138
172
112
102
113
104
115
132
126
175
108
148
101
112
135
96
127
103
85
81
144
123
130
83
110
177
155
86
77
105
165
105
115
121
92
139
83
149
59
140
102
143
139
101
123
157
103
121
180
109
90
90
132
59
153
148
135
148
92
110
108
100
108
113
107
101
108
98
78
68
137
146
117
117
78
116
103
79
80
108
110
106
80
54
125
90
107
103
94
59
54
112
111
124
158
139
76
198
113
109
128
158
68
141
101
124
108
128
131
71
172
153
135
160
92
133
116
157
81
102
138
77
118
95
141
114
118
189
96
85
128
113
93
114
49
108
94
82
120
81
118
139
97
108
90
129
118
161
98
155
119
146
54
137
145
100
145
121
115
140
109
126
234
118
124
98
98
114
143
59
103
49
90
146
125
158
89
111
176
93
132
120
54
132
83
108
131
78
102
125
54
125
87
120
93
127
105
85
145
54
59
102
96
80
161
65
128
94
132
143
98
181
140
108
119
109
61
74
87
78
49
87
74
115
102
118
143
149
158
148
105
96
90
122
132
88
54
128
98
146
115
129
118
111
104
49
127
150
108
105
149
93
145
148
134
85
129
96
105
102
125
120
115
109
96
69
86
92
92
103
98
128
81
136
95
89
107
74
125
104
113
143
129
103
77
100
146
124
98
110
138
138
102
82
85
112
142
112
116
54
82
142
109
86
93
93
106
114
98
144
125
95
145
129
97
78
107
125
95
91
105
77
141
119
123
143
125
101
95
74
128
177
125
95
95
70
107
82
90
154
133
108
161
54
114
153
87
123
190
93
143
129
115
134
107
59
95
133
133
120
156
102
135
139
153
76
107
123
147
160
146
148
70
122
143
177
125
67
135
140
88
120
78
149
124
82
123
155
74
127
54
102
112
98
98
126
108
120
92
96
104
118
113
69
172
109
106
122
121
74
87
54
84
141
122
160
169
95
59
107
121
127
93
106
102
163
104
95
98
108
96
87
112
107
89
138
144
128
121
69
120
113
49
105
83
157
90
127
102
81
142
82
98
127
149
104
154
54
117
101
81
174
144
68
107
118
177
120
138
109
130
177
105
154
128
80
128
139
81
87
95
82
106
59
95
96
78
97
121
102
101
72
147
112
102
134
128
94
143
98
102
92
127
105
81
80
106
142
98
59
95
106
143
133
105
89
137
103
139
112
95
111
118
103
54
129
98
123
83
93
90
199
102
134
130
108
96
109
93
108
122
141
125
81
120
122
96
128
77
102
120
95
108
102
108
124
137
74
98
123
106
98
105
78
171
96
127
114
95
102
112
114
54
87
171
91
119
79
104
114
146
74
153
61
73
88
103
141
125
76
102
82
98
108
105
128
127
129
54
125
93
131
108
101
128
133
190
110
102
133
142
144
98
114
82
80
68
153
111
49
112
61
129
98
105
118
118
91
81
116
172
95
142
186
81
74
125
120
152
158
150
117
79
123
95
76
54
109
109
80
120
148
128
107
127
163
144
100
92
181
121
74
123
141
146
107
102
98
123
149
114
121
121
101
171
131
98
131
155
81
54
65
153
117
117
138
104
120
122
119
95
113
155
133
84
177
102
122
108
95
79
102
132
88
96
106
179
136
79
136
137
158
93
179
123
65
131
121
99
129
81
119
42
133
146
91
93
120
103
178
80
74
114
79
149
140
70
119
117
144
137
131
102
105
113
82
74
129
54
104
110
93
141
54
156
106
69
103
101
59
144
110
126
135
160
118
74
95
106
111
98
106
98
95
137
131
114
81
90
116
103
90
113
96
128
133
72
74
123
100
131
122
124
105
105
109
145
54
97
155
59
134
125
108
115
54
171
145
69
97
127
207
126
139
87
102
147
96
94
134
133
110
81
159
146
155
95
153
65
135
103
115
129
130
67
99
120
136
124
99
145
54
95
105
125
145
111
67
135
74
119
145
103
97
98
132
107
78
95
164
126
82
87
177
109
128
122
132
99
139
136
84
130
109
89
167
143
67
129
132
119
97
95
74
96
111
115
140
59
103
98
95
49
112
95
129
113
158
49
112
119
135
54
113
78
128
131
100
112
93
108
76
137
102
116
144
118
113
133
148
94
95
102
124
102
104
98
95
146
54
87
138
83
82
98
54
131
135
105
121
161
128
101
133
78
128
151
84
102
98
106
82
77
49
90
117
76
116
113
131
124
45
67
144
108
159
131
106
97
66
165
144
105
147
113
152
113
119
155
143
158
103
110
103
160
93
116
77
94
186
132
107
138
77
83
102
171
117
157
100
97
100
153
132
143
145
97
113
155
161
74
67
133
113
59
156
101
90
108
114
142
155
120
142
111
205
116
157
135
124
138
93
104
117
54
112
113
158
135
98
145
82
115
108
103
98
114
74
84
133
59
134
121
103
102
194
79
81
172
124
98
150
49
68
142
145
102
116
54
95
143
129
154
87
78
136
78
102
95
135
165
148
113
108
123
149
82
108
148
153
95
85
112
125
93
135
151
96
49
131
77
122
160
88
147
95
158
105
128
102
119
68
146
149
100
93
158
146
127
112
140
139
126
91
98
89
81
120
81
98
159
115
76
66
108
117
143
123
143
108
100
112
77
122
127
134
110
127
106
77
113
107
131
140
148
133
142
143
138
103
101
123
152
92
148
122
54
153
89
122
116
144
119
173
70
145
95
151
145
83
54
49
110
102
61
118
158
61
138
137
103
149
135
115
125
82
127
122
102
123
103
135
97
80
74
141
141
135
157
124
102
98
117
120
81
139
154
90
139
98
143
108
74
155
108
164
116
90
59
87
130
108
143
74
85
147
98
109
161
67
75
110
128
149
112
49
130
74
143
82
180
113
84
59
143
105
155
88
78
135
141
102
148
91
159
158
151
102
107
103
125
137
85
154
96
110
107
88
166
49
110
107
146
117
81
113
108
106
54
124
91
129
114
107
116
109
110
122
98
119
135
158
93
132
120
92
144
142
67
160
146
108
169
82
125
102
138
140
148
118
96
115
95
110
102
150
104
85
62
95
102
144
117
111
141
115
108
118
162
59
95
135
105
145
83
101
97
118
111
98
118
77
119
122
105
116
104
108
154
87
186
67
97
95
116
145
105
95
108
163
109
140
81
95
74
120
171
103
136
107
95
107
104
103
121
150
112
102
117
65
113
106
54
95
103
85
87
105
93
108
93
130
95
133
98
107
107
109
74
98
95
87
98
102
120
165
45
123
165
81
135
105
88
126
114
102
112
144
102
120
135
103
125
116
120
143
143
54
127
155
127
113
102
102
74
54
131
93
142
65
81
91
96
54
83
102
68
156
67
82
169
169
91
77
107
88
98
185
95
74
110
144
108
115
101
108
95
190
109
104
114
102
113
124
124
108
120
119
128
139
108
93
153
131
96
67
69
102
143
102
87
120
149
113
112
131
159
122
120
92
148
135
121
123
81
139
54
95
156
95
108
167
124
89
197
152
89
92
135
98
81
139
114
102
96
76
135
94
120
187
131
146
147
115
94
95
76
108
180
54
71
87
93
115
168
83
140
138
111
110
147
158
96
89
61
76
123
113
104
129
162
126
102
129
155
91
127
168
135
105
100
98
133
162
145
142
100
144
85
148
103
67
114
92
68
78
49
76
120
128
180
54
85
126
180
132
89
82
115
120
125
95
141
106
98
154
139
132
139
75
163
162
76
95
115
91
54
108
137
134
112
109
103
69
152
115
120
142
108
69
87
149
105
112
136
129
95
124
112
123
96
108
113
81
131
98
114
95
131
115
149
81
54
112
123
98
159
123
90
131
106
125
83
137
120
127
101
158
86
118
148
103
141
108
110
135
154
118
101
127
101
155
119
141
125
110
135
112
175
129
99
200
131
104
106
67
61
115
61
105
110
121
110
148
54
88
131
109
54
125
87
103
153
96
105
143
89
91
164
108
156
61
77
119
95
83
129
134
145
151
154
91
93
95
77
174
136
95
105
70
119
106
103
150
54
107
155
102
125
157
146
133
86
67
49
143
98
103
115
106
135
96
91
81
113
140
89
95
106
101
96
102
88
93
136
113
125
76
90
92
113
164
148
133
157
108
104
83
95
149
119
82
127
108
138
108
125
77
104
130
110
105
107
120
111
80
119
140
93
103
118
99
54
114
126
91
81
144
49
134
128
134
155
94
74
67
146
165
97
96
159
74
106
96
120
158
157
140
177
135
81
112
89
87
137
149
128
104
131
89
95
95
101
144
131
102
116
102
107
158
74
113
78
104
90
105
158
122
133
161
54
115
140
133
103
154
161
149
108
61
106
132
133
54
132
127
89
87
146
108
184
76
119
134
87
69
81
99
140
140
117
133
122
90
142
162
95
124
54
131
110
113
118
127
173
116
97
175
110
89
85
87
85
87
139
83
118
81
109
96
96
97
79
54
81
145
91
152
81
105
177
135
109
49
138
119
144
127
104
125
99
114
112
142
96
190
105
138
161
90
118
168
144
93
146
160
126
145
74
128
133
104
111
139
144
59
180
154
114
125
125
79
113
114
59
116
98
98
67
147
127
143
54
110
54
193
108
93
138
88
148
101
140
119
169
103
98
182
106
108
102
137
95
95
102
113
119
103
142
125
120
101
131
59
113
94
95
117
76
128
120
102
125
80
82
108
100
87
105
157
113
96
108
139
172
78
78
123
124
158
113
142
118
78
108
161
61
92
102
123
143
132
147
140
122
148
120
90
131
129
189
108
94
169
125
151
131
102
107
87
106
146
120
138
93
156
98
121
54
115
121
122
138
129
125
131
49
158
96
83
147
108
169
101
108
93
135
99
123
107
118
133
158
96
104
87
127
172
108
102
120
83
110
101
180
106
158
151
81
150
105
81
79
84
185
95
158
105
108
103
114
106
102
69
102
180
92
134
109
132
131
74
102
178
125
82
111
112
129
59
105
89
87
101
162
133
113
130
93
128
76
107
101
74
147
81
145
108
140
161
165
67
125
154
145
138
49
134
127
81
74
112
130
116
85
54
128
154
135
120
137
129
90
96
87
140
97
87
141
123
125
160
76
108
113
123
105
107
139
54
79
100
105
153
134
154
96
87
88
91
112
115
114
108
131
67
103
68
54
93
116
108
96
148
119
158
82
121
143
115
68
190
113
99
122
170
111
137
107
90
54
68
85
70
196
133
154
93
149
121
145
96
107
141
124
103
94
78
153
109
129
93
127
139
143
73
102
59
165
115
143
120
106
117
141
146
90
68
140
124
191
100
146
74
98
149
54
68
127
107
131
147
148
137
98
129
82
125
124
108
125
94
161
128
108
145
108
87
142
101
103
81
138
144
96
67
123
99
109
100
141
49
131
148
128
107
112
90
87
154
147
143
108
101
78
98
103
87
113
69
102
155
186
196
98
83
117
200
175
138
108
141
98
161
129
75
141
143
134
95
132
107
128
98
82
105
87
97
54
87
115
113
106
98
150
153
73
131
150
103
148
95
93
118
112
49
85
129
82
170
139
161
91
100
125
113
98
85
102
133
111
87
128
54
67
82
132
54
107
103
120
120
134
149
108
135
128
88
123
128
100
111
93
96
81
140
96
108
156
167
127
97
124
105
108
103
77
140
103
67
77
103
103
177
128
87
166
93
54
132
135
87
171
200
95
102
133
148
145
97
81
103
148
136
115
87
98
148
146
102
126
96
113
133
54
102
132
153
82
143
125
127
122
100
148
95
161
103
188
83
133
103
173
73
150
131
127
135
143
140
125
113
103
98
74
119
103
135
116
104
156
54
129
95
94
122
132
132
90
104
116
111
134
126
131
145
157
102
59
114
90
105
123
98
87
141
120
106
106
129
106
105
79
98
98
116
139
109
87
103
77
88
102
74
148
133
107
159
126
98
183
121
100
154
106
54
118
123
102
113
110
117
96
108
127
79
128
105
177
127
118
146
152
103
173
105
153
129
122
136
119
108
102
104
157
126
101
118
132
104
101
124
80
179
139
135
113
83
107
128
96
118
89
69
128
108
108
133
103
158
127
201
129
116
114
158
101
165
74
179
49
148
110
104
188
102
87
156
119
97
100
98
103
98
77
121
118
178
84
134
108
155
95
120
111
160
148
86
88
122
121
134
102
122
127
98
149
88
143
103
59
131
99
128
121
107
136
104
129
117
146
120
133
54
89
117
131
57
92
149
122
54
158
199
116
123
79
123
133
135
114
95
132
107
122
150
106
77
141
123
117
129
162
90
108
80
125
118
103
151
136
83
150
121
141
161
131
103
157
110
95
91
135
105
85
101
128
75
96
83
131
160
144
134
142
95
169
118
76
131
158
93
130
177
127
92
103
85
94
128
119
144
108
149
74
103
112
109
107
143
110
117
102
84
163
102
116
105
74
134
108
95
68
193
155
156
89
160
136
147
128
115
82
136
142
130
144
205
152
105
139
81
140
142
145
150
151
111
115
153
116
98
147
82
220
116
92
81
124
97
108
113
82
111
85
136
115
148
107
123
68
177
157
170
74
96
68
84
127
126
99
157
108
76
54
49
157
49
136
122
102
90
114
162
140
128
82
73
146
83
68
96
91
116
106
108
83
127
176
136
114
145
90
106
121
143
100
186
132
115
67
85
100
67
139
150
140
111
149
180
126
135
135
126
79
128
113
122
95
102
115
90
132
104
106
180
121
110
133
54
145
99
97
161
103
99
120
82
158
93
164
138
116
106
135
125
126
96
127
88
123
119
89
157
87
127
157
151
146
160
98
105
161
80
112
146
91
113
93
100
127
158
106
98
110
104
135
150
87
101
138
104
114
133
98
138
142
102
113
175
108
100
172
85
68
146
183
96
101
77
159
103
87
104
126
105
125
158
74
119
139
87
59
105
102
123
125
139
158
133
135
100
157
101
135
146
79
134
124
78
135
133
110
109
105
105
114
54
119
167
128
108
96
122
128
93
95
81
108
191
126
131
139
93
120
123
113
98
137
95
91
83
74
70
180
75
104
61
121
129
166
159
85
54
85
133
110
98
76
128
129
108
106
149
173
126
174
54
91
131
113
81
80
156
140
97
179
99
162
54
105
162
124
103
84
107
144
95
122
104
178
99
137
199
148
77
81
74
127
54
146
54
96
156
135
113
115
119
147
91
144
107
119
135
118
119
120
67
162
145
123
109
144
93
112
74
116
139
67
155
111
113
129
200
98
111
128
115
107
100
91
82
49
54
143
122
105
163
103
124
95
140
139
113
59
96
100
105
68
76
128
101
104
131
96
76
112
179
175
103
54
74
113
131
166
116
93
120
177
92
177
135
143
130
147
80
101
128
148
135
183
109
146
122
97
129
105
74
118
102
113
129
49
110
85
157
73
102
74
110
102
144
77
98
109
112
104
133
151
135
102
119
125
76
104
152
95
139
78
105
90
87
174
108
131
108
93
97
139
91
124
98
103
134
105
109
105
102
83
79
129
87
86
59
49
85
98
67
153
74
116
118
87
124
140
162
117
156
85
131
130
81
100
137
90
166
59
144
124
96
113
136
127
95
78
74
140
107
129
90
117
177
141
101
92
128
164
124
116
151
81
102
109
104
149
94
160
139
114
49
120
95
111
87
149
90
155
100
139
141
130
91
103
165
143
49
98
76
158
133
141
162
170
159
79
115
74
114
106
154
161
121
99
124
61
67
151
182
102
59
122
170
119
116
100
87
97
143
177
96
143
84
150
98
95
120
188
130
103
115
126
95
140
113
114
119
177
54
61
118
127
85
69
166
113
110
115
145
134
139
79
147
100
123
83
145
109
125
102
76
111
113
103
163
125
104
122
110
112
90
133
144
168
54
98
130
145
126
121
101
147
122
150
102
131
171
119
92
113
83
54
164
137
142
133
140
97
49
117
143
93
121
101
59
138
61
148
102
123
119
121
115
180
102
123
54
135
54
83
144
92
83
117
119
134
105
74
129
141
88
158
135
98
81
107
139
102
115
101
144
127
113
165
100
131
119
100
139
114
106
76
142
148
98
54
99
149
102
82
106
162
103
118
91
88
87
76
135
76
146
108
116
102
76
107
122
108
145
126
102
148
54
85
132
87
102
148
120
101
146
108
81
108
68
155
74
87
82
49
112
180
125
129
128
77
168
98
85
128
81
81
102
49
155
76
59
95
86
113
145
117
194
89
117
151
115
108
110
93
119
102
143
193
119
107
74
102
76
122
100
133
119
89
114
116
102
102
110
86
86
93
132
102
120
68
115
165
127
119
96
109
109
127
108
78
102
106
78
98
122
116
102
96
122
125
106
139
142
87
113
156
107
102
54
59
113
96
69
83
83
71
111
107
149
104
101
123
121
106
108
140
76
102
190
73
138
158
119
142
103
144
113
140
112
102
131
110
54
127
76
135
135
109
82
82
116
81
94
93
115
98
107
145
125
116
126
144
100
96
119
49
54
163
90
119
147
102
141
98
69
98
91
108
110
163
71
127
87
124
145
105
74
108
87
148
136
83
102
111
102
135
114
93
157
135
118
161
116
101
105
83
114
61
107
109
77
97
98
127
102
148
98
125
118
92
54
113
113
113
130
122
95
79
133
107
130
108
119
144
87
117
148
123
180
107
136
128
79
110
85
96
74
54
54
122
152
81
92
102
151
135
72
136
95
106
122
95
135
153
127
138
118
123
87
95
133
49
143
95
67
102
144
105
74
54
107
102
137
105
96
115
146
156
54
169
97
150
49
94
98
143
121
161
98
101
188
136
95
146
116
138
100
102
102
98
90
106
115
180
86
125
145
67
77
108
105
107
78
108
78
100
105
150
90
107
177
86
161
78
113
103
113
67
93
81
190
102
112
103
90
144
117
102
112
106
103
133
112
191
102
186
113
143
128
90
106
70
122
99
84
74
73
112
49
125
76
143
131
158
129
142
95
114
82
54
97
107
159
101
118
126
95
87
114
115
105
144
59
108
101
152
133
99
150
90
153
159
146
113
102
106
115
133
59
123
54
122
102
96
103
106
115
150
134
131
106
131
96
115
106
49
73
113
140
139
144
127
102
87
164
100
139
129
148
98
129
93
116
54
103
112
139
151
157
70
128
100
138
123
108
110
103
103
95
98
85
94
122
149
128
185
97
108
120
135
115
102
74
143
154
128
67
167
95
99
153
128
54
129
140
54
152
134
80
97
100
54
77
98
49
54
125
117
158
142
148
99
77
170
73
103
73
139
119
133
81
113
85
81
146
102
95
92
161
177
131
144
96
105
116
99
144
89
49
118
106
113
67
59
90
106
93
100
149
114
74
85
101
100
102
138
80
96
81
158
145
150
131
76
87
160
98
113
97
159
110
122
157
158
146
74
96
117
54
104
101
151
95
148
118
127
98
105
93
108
141
111
105
95
129
138
67
116
127
148
118
89
49
95
86
95
105
121
136
144
117
129
145
153
108
90
96
113
116
120
80
131
111
182
108
86
96
103
82
67
138
154
166
95
144
115
98
127
83
107
130
139
95
95
81
69
105
133
108
108
81
85
81
154
59
95
81
91
111
87
108
90
77
129
87
86
138
105
54
157
83
139
107
113
119
49
137
92
95
98
95
96
128
114
145
107
102
195
78
113
179
126
108
177
150
99
145
111
143
138
73
135
119
137
131
82
148
93
108
154
139
108
109
158
112
134
77
118
125
77
139
108
126
75
169
117
97
127
136
124
54
83
113
148
135
108
105
101
112
123
96
80
102
108
127
94
102
125
81
118
108
118
115
105
165
141
92
93
119
143
107
54
102
143
88
117
98
133
108
122
173
69
135
118
130
171
142
83
98
122
108
154
148
116
74
167
112
143
151
131
133
87
107
102
110
105
87
111
160
108
117
161
49
100
120
132
108
114
81
98
179
141
104
98
118
106
133
129
80
137
84
170
118
98
213
150
85
68
98
74
152
118
54
123
162
120
110
84
108
95
146
73
99
83
82
54
108
87
91
98
82
135
54
144
144
121
140
82
73
54
105
180
113
134
96
105
59
85
104
103
135
128
153
125
78
49
84
135
104
137
138
127
129
113
103
95
125
95
95
81
106
125
102
117
108
141
114
129
103
104
146
115
105
92
117
81
152
76
121
45
105
131
186
117
128
120
80
125
123
106
54
105
100
143
177
118
157
140
133
141
102
102
105
131
117
143
95
115
78
98
96
108
107
184
149
78
135
98
151
78
108
132
77
97
132
114
136
89
87
94
143
111
139
125
131
133
176
120
87
144
103
163
107
145
119
156
115
101
100
138
119
93
182
109
122
108
96
188
69
128
123
143
104
102
110
114
106
83
122
86
105
125
89
65
95
115
138
144
101
90
93
150
131
97
153
161
108
140
138
74
164
131
77
131
130
127
107
87
133
163
113
106
157
115
102
169
110
167
133
112
174
115
80
99
82
142
131
105
109
133
132
137
98
171
141
94
118
106
87
200
144
105
104
127
107
78
95
148
108
123
148
93
104
146
72
87
93
141
54
144
67
102
128
107
97
125
134
68
54
90
103
119
103
109
118
83
128
93
126
118
109
133
49
127
144
185
136
133
76
143
98
141
119
135
83
127
159
125
143
103
97
113
74
95
96
80
97
120
110
96
101
149
131
72
129
144
148
110
61
135
113
123
93
129
114
100
105
93
104
118
106
122
132
103
81
54
163
102
135
89
147
127
102
100
82
98
87
131
125
133
118
127
112
54
106
94
125
98
124
59
74
134
103
161
102
74
124
118
74
123
85
102
81
116
106
134
157
128
125
102
161
106
80
83
82
141
119
101
98
93
97
111
148
69
123
114
191
100
105
145
74
119
146
99
82
139
105
81
89
81
136
122
69
133
165
169
54
116
89
138
93
103
110
146
96
112
113
69
81
138
99
81
89
158
133
143
105
123
96
102
154
131
169
116
110
146
106
107
132
128
68
133
116
116
135
61
104
118
86
131
136
113
123
125
122
85
106
158
95
90
145
102
111
172
97
163
123
116
77
162
65
59
120
136
120
102
121
118
96
108
108
150
97
137
162
114
167
158
177
152
131
71
125
139
124
77
144
59
90
100
184
124
117
97
128
99
92
106
137
93
119
95
145
105
169
114
135
90
148
90
141
148
129
93
145
117
87
79
133
191
139
125
139
140
153
95
186
186
104
165
113
98
101
141
133
90
134
125
54
172
111
59
167
74
103
120
95
87
153
115
135
72
113
148
143
122
76
144
165
118
98
106
147
115
54
100
124
124
102
111
140
96
158
183
83
96
90
80
120
179
117
137
158
127
104
118
226
100
148
87
126
113
74
177
127
128
159
110
90
143
145
156
107
102
160
96
76
112
80
113
140
140
143
148
125
126
95
121
102
130
91
96
119
113
98
130
188
98
165
128
133
90
118
92
128
77
139
67
136
211
112
102
87
171
105
155
101
103
125
113
135
103
101
154
95
49
119
139
88
74
120
96
138
151
74
112
97
83
142
92
82
127
62
124
112
156
78
109
164
131
136
110
116
54
68
127
122
101
108
156
107
102
197
137
127
117
81
114
123
90
157
191
140
122
119
96
140
123
87
87
125
124
75
94
130
143
120
141
69
54
125
169
132
83
107
124
101
154
98
117
59
72
120
120
129
113
161
106
109
131
87
121
171
102
135
101
96
140
117
118
124
176
153
129
77
144
111
149
182
128
81
133
125
122
123
155
84
127
109
138
103
90
161
138
92
54
95
77
126
107
155
54
124
118
156
121
82
90
81
143
143
81
99
111
92
182
91
125
130
164
126
117
92
162
126
179
127
162
136
95
141
134
126
100
128
95
122
135
81
125
129
155
81
95
102
110
129
121
98
112
95
120
129
168
95
125
113
149
114
100
171
95
133
98
87
159
87
105
142
113
95
129
172
95
99
131
98
180
116
177
128
59
126
176
90
105
90
131
124
68
93
110
147
76
114
79
74
77
77
69
117
83
90
98
87
116
108
107
54
95
156
129
120
107
168
125
123
49
104
108
59
92
103
167
107
133
80
158
83
96
168
95
146
135
109
116
99
141
91
159
141
74
212
141
103
96
106
101
54
118
110
135
113
149
115
152
160
143
108
102
213
126
74
149
97
184
106
80
176
92
193
113
134
104
49
92
129
98
87
102
88
96
113
107
49
158
105
163
54
185
107
107
80
141
111
95
105
114
177
158
135
98
118
112
102
112
168
145
98
157
127
96
110
107
103
164
103
82
169
131
113
128
92
115
105
137
54
129
121
100
113
148
108
102
110
54
102
133
156
98
160
180
104
142
85
159
143
111
124
49
100
113
101
111
122
108
67
59
90
94
143
141
82
137
113
89
162
117
127
177
54
128
117
131
122
103
115
135
138
127
158
68
128
199
113
61
91
106
105
61
113
159
127
112
101
147
127
102
128
106
102
54
151
133
135
105
152
177
148
198
155
114
139
119
119
133
105
152
118
161
124
69
78
91
82
97
104
107
54
113
103
143
111
74
116
101
161
136
112
101
97
105
150
158
127
102
81
176
90
96
109
140
168
112
96
90
102
118
54
95
179
54
69
69
108
150
133
176
116
144
195
54
144
66
74
109
116
95
135
82
122
54
162
137
141
49
83
103
87
144
98
182
100
97
112
95
88
93
162
81
87
175
151
118
120
108
113
91
116
150
107
78
96
54
237
87
108
130
139
87
136
100
143
128
188
101
68
100
133
113
145
172
104
148
133
97
97
128
128
86
109
87
81
108
54
182
177
105
105
122
108
177
183
74
148
154
91
109
115
83
103
109
74
98
80
165
105
97
138
140
166
105
104
158
80
87
213
98
68
122
129
107
110
96
125
96
113
82
129
121
82
84
91
90
112
128
59
161
112
133
110
59
103
131
118
115
127
82
148
143
101
135
65
148
151
127
167
114
94
77
99
136
77
155
85
111
173
79
122
106
108
119
77
122
97
123
81
123
175
97
54
93
76
79
132
113
143
117
113
96
119
87
98
95
113
132
106
78
170
102
91
95
117
147
83
144
101
119
139
132
90
136
97
95
106
123
95
154
106
95
98
147
102
122
108
108
108
159
121
190
135
144
123
136
86
83
119
107
158
137
128
87
84
112
141
102
133
144
112
131
88
86
120
144
77
156
108
160
82
119
81
77
140
110
165
87
140
100
95
139
123
96
87
111
124
74
105
130
137
82
103
136
81
133
131
96
127
142
54
143
140
120
81
158
116
81
109
122
81
74
89
115
118
106
61
102
109
106
91
142
193
171
96
144
89
113
140
117
119
110
152
118
158
129
54
124
114
133
61
96
133
91
108
107
102
148
120
145
130
96
102
108
133
54
186
107
158
145
132
113
123
86
88
121
54
108
142
108
122
97
113
123
95
143
94
96
49
99
54
105
108
108
136
142
119
158
138
110
140
120
87
108
117
112
54
139
168
136
82
140
117
90
141
148
89
110
143
96
59
111
93
108
143
123
167
113
135
151
129
122
122
119
145
98
99
49
120
82
123
144
106
97
93
187
127
106
76
95
128
137
127
95
90
110
102
78
125
95
108
122
155
144
101
98
106
132
151
119
98
108
126
115
91
79
115
88
97
84
138
81
140
116
54
102
104
99
103
138
123
96
115
148
129
108
102
85
90
128
59
126
135
138
125
113
69
83
85
123
134
141
153
108
116
106
131
148
128
177
124
112
49
141
155
104
143
85
120
104
105
100
74
49
54
129
108
103
121
97
117
98
99
113
109
101
100
133
97
179
99
113
90
97
105
133
108
99
103
91
80
105
135
106
87
92
125
96
129
141
137
118
110
129
164
124
141
109
143
113
144
124
81
119
111
188
93
119
49
113
127
127
102
102
151
140
122
110
49
103
128
115
79
116
109
49
125
105
154
54
149
138
83
59
119
116
101
105
145
77
143
92
125
54
139
177
84
95
104
102
112
102
95
80
122
109
114
132
126
54
98
105
87
133
143
149
104
115
68
54
144
143
124
107
150
78
103
108
78
108
73
103
113
140
148
132
133
166
148
102
95
105
67
158
118
54
77
135
59
104
128
93
96
137
140
105
118
131
143
54
138
150
151
125
114
174
123
153
113
98
144
99
101
177
141
128
91
162
78
145
80
91
196
102
174
146
118
102
128
108
88
95
92
81
132
161
111
97
115
139
172
99
102
84
157
81
112
93
138
122
59
99
107
149
131
117
114
134
157
97
179
191
117
153
141
147
135
102
71
134
163
97
93
107
130
112
98
133
100
119
123
133
74
119
124
98
123
102
107
103
128
54
108
133
133
105
88
133
117
134
69
112
162
126
141
162
116
125
126
160
54
133
147
110
59
90
95
98
123
124
103
106
147
111
95
132
49
112
121
114
158
145
54
135
141
169
109
121
143
96
161
145
144
98
130
117
79
107
120
86
120
76
111
106
101
54
177
105
82
79
114
137
110
106
108
97
177
84
81
106
148
177
95
134
164
108
67
133
98
149
101
92
145
54
155
132
138
107
76
110
78
79
90
105
133
162
133
86
158
105
76
89
148
123
157
115
146
120
103
105
103
93
165
125
54
116
108
74
116
83
78
134
117
137
108
87
49
124
115
135
76
103
131
117
139
142
62
76
93
69
144
54
90
151
83
81
111
105
107
123
169
54
145
101
143
178
83
95
144
151
76
129
112
133
122
131
109
106
101
139
98
79
100
94
133
116
155
96
88
115
125
116
161
125
109
103
157
151
114
69
97
99
87
106
133
80
144
102
130
147
97
145
93
98
139
106
139
105
96
111
89
135
139
122
109
90
105
96
163
103
132
93
115
151
93
159
82
89
95
83
98
147
54
161
125
153
93
96
142
134
103
114
98
117
59
151
152
145
113
122
54
54
95
150
143
130
78
128
137
89
150
138
144
49
146
114
127
102
82
106
107
89
148
102
178
109
108
125
80
100
144
128
127
128
80
127
122
146
129
102
104
134
131
153
114
118
150
144
81
174
127
139
85
116
128
103
86
102
144
127
132
102
102
113
49
120
102
99
109
97
147
54
133
100
108
54
102
100
82
106
100
143
93
133
108
113
133
143
113
118
157
105
93
145
97
108
87
70
68
109
151
146
81
132
54
61
135
130
139
79
101
59
130
129
95
154
68
91
182
113
76
95
167
132
78
129
98
106
73
104
122
49
74
103
93
91
161
79
132
163
153
123
94
101
97
131
107
93
101
76
93
150
134
94
106
122
94
93
124
84
130
73
129
106
143
85
83
124
108
99
115
54
178
130
103
98
98
147
240
144
132
112
129
105
144
177
115
87
107
87
95
128
84
125
163
95
136
85
152
108
140
133
142
116
132
96
80
54
166
81
140
134
102
158
117
135
128
165
147
94
110
102
78
96
101
143
162
116
140
139
138
96
146
164
132
98
95
54
116
115
69
135
131
102
162
81
122
128
122
148
177
125
108
82
108
108
120
120
77
131
139
95
119
138
100
119
117
115
134
165
122
129
108
208
112
147
85
98
87
117
76
76
70
95
81
126
89
179
67
115
84
74
110
101
54
108
126
125
112
162
127
79
122
106
125
120
170
167
160
95
119
134
83
148
85
104
81
70
49
77
85
108
149
98
147
81
148
150
95
78
129
148
162
94
119
123
59
119
101
97
96
130
134
110
143
101
133
130
125
143
110
106
82
116
82
128
96
49
109
151
118
54
151
76
95
54
123
105
54
110
129
139
131
137
131
131
139
98
87
102
98
131
81
108
144
96
112
189
84
115
74
95
83
105
147
180
81
107
103
128
113
126
135
82
103
54
99
115
88
82
115
116
158
137
49
123
136
118
69
89
146
119
95
108
90
163
136
98
131
180
149
98
101
98
161
130
108
54
110
96
139
167
138
110
135
155
140
137
151
82
169
93
127
114
84
138
110
134
205
139
67
125
106
110
113
71
114
82
80
145
95
94
96
89
97
78
112
103
125
102
137
135
95
160
165
161
54
107
54
128
95
132
59
118
77
81
87
74
110
108
126
104
161
108
128
158
141
113
108
76
135
178
146
77
103
106
108
126
137
98
137
135
127
93
105
102
119
93
148
108
144
112
102
96
103
130
123
168
122
139
180
129
139
132
101
81
120
54
138
114
130
83
67
144
132
90
108
102
77
125
78
90
86
128
132
128
102
102
119
152
108
128
98
87
78
119
106
160
145
125
122
108
81
87
133
98
133
86
106
132
234
114
94
128
163
105
108
159
103
86
90
68
100
109
144
98
100
152
129
140
120
116
87
102
108
89
106
111
155
74
181
67
131
93
167
118
115
111
148
124
93
133
89
104
146
119
142
106
96
128
97
82
67
87
166
126
87
139
125
96
102
115
108
128
196
84
131
113
154
161
76
166
158
91
105
81
110
77
136
116
135
100
90
119
163
89
108
113
112
103
93
110
135
117
96
98
54
144
62
89
138
147
67
141
129
115
110
121
129
123
96
201
93
109
98
138
138
90
113
88
108
91
94
146
151
120
103
130
135
128
144
107
68
148
120
94
118
141
98
54
126
77
103
59
83
74
86
134
93
108
130
147
113
116
99
116
110
137
148
134
108
146
128
95
95
164
98
131
118
125
98
74
143
122
158
108
78
147
81
49
97
130
111
76
194
125
90
72
108
96
133
102
151
105
80
153
119
74
108
74
102
143
114
148
105
95
96
105
123
78
119
54
112
112
146
101
108
112
98
125
98
139
76
158
132
94
74
127
131
177
92
103
97
79
123
144
136
81
87
105
91
122
61
141
139
157
76
68
125
108
141
117
114
89
132
73
139
107
90
158
69
145
117
141
149
148
108
74
111
127
135
116
127
131
133
144
156
125
169
137
92
116
156
135
138
119
112
82
139
87
86
96
122
116
114
186
54
108
114
87
149
143
102
99
194
78
78
54
177
105
152
103
131
102
77
115
120
91
116
97
109
114
54
77
54
119
103
102
101
161
121
108
135
138
74
88
174
96
76
98
158
180
98
114
87
145
71
161
130
67
131
145
154
130
119
54
126
98
108
101
97
87
124
144
106
54
125
149
76
134
110
116
158
90
108
81
95
128
135
165
142
123
123
54
135
109
104
81
98
110
95
74
125
131
108
78
89
147
105
98
125
140
130
169
168
126
113
143
125
109
111
117
145
95
107
208
109
141
107
119
164
118
107
111
116
59
110
74
125
143
113
189
124
160
93
119
54
127
122
85
121
128
151
80
139
147
122
126
168
81
125
54
147
115
133
122
54
111
157
124
114
87
81
103
110
98
165
94
161
108
110
115
140
108
148
115
125
94
126
115
155
127
150
144
108
105
54
159
100
113
95
76
94
106
117
119
157
142
93
98
119
123
103
111
87
104
154
106
108
49
162
158
147
88
131
83
118
121
81
54
161
99
78
98
54
117
96
91
99
111
98
127
78
109
96
127
111
179
134
54
141
154
155
104
160
124
125
123
108
145
156
113
143
125
94
128
119
123
76
102
107
108
179
81
153
110
98
101
103
105
136
135
177
156
90
116
123
105
49
78
119
129
158
92
160
125
173
148
123
99
111
101
119
54
81
98
54
91
74
141
140
97
133
79
168
144
74
156
165
110
125
105
89
122
149
151
95
135
79
103
108
126
117
156
117
141
135
143
132
134
80
133
162
97
106
108
102
49
119
121
88
130
126
117
146
142
142
114
113
151
94
135
120
54
103
116
127
122
146
144
54
87
96
113
193
102
131
79
49
102
117
112
131
83
115
177
105
98
116
87
78
107
59
87
103
112
108
169
124
67
147
100
161
128
104
115
96
96
151
153
97
127
122
216
108
110
107
131
95
122
111
150
108
127
137
124
125
110
145
108
129
102
102
161
125
85
111
142
98
108
128
74
160
157
148
127
109
122
97
139
131
96
77
116
124
96
101
96
125
98
61
110
108
80
88
158
132
123
126
143
139
74
96
86
102
106
127
90
87
133
120
154
108
131
165
150
148
119
141
132
77
108
110
112
145
180
67
54
150
95
89
114
111
97
128
98
99
125
105
141
118
125
98
106
164
54
145
101
108
74
126
125
120
95
62
141
148
54
140
103
90
145
153
141
125
107
119
109
106
117
103
107
114
49
158
120
49
87
81
49
110
98
106
168
81
133
143
135
95
112
138
129
101
118
98
87
49
178
102
157
103
144
121
103
143
150
133
127
123
142
115
100
117
155
67
108
49
130
118
83
131
133
74
74
103
81
113
143
96
200
127
177
122
74
146
85
105
117
81
76
141
108
82
134
128
108
126
105
99
130
108
125
77
148
131
128
117
127
119
96
121
108
103
96
59
103
147
111
140
78
113
108
144
125
54
148
162
138
177
123
78
101
103
162
95
107
138
143
67
110
128
105
145
85
104
116
115
157
140
69
96
99
178
78
83
103
74
103
54
133
102
113
100
107
115
128
156
89
132
123
91
121
103
54
123
84
108
153
194
95
98
147
103
141
93
139
132
85
133
85
117
76
119
108
137
54
148
96
110
102
123
132
102
95
127
82
167
95
74
81
103
146
135
144
76
95
133
87
107
108
106
102
117
93
90
127
120
122
150
139
88
123
148
99
148
98
122
108
122
97
158
104
105
68
99
146
87
108
103
125
128
154
105
85
84
95
123
119
121
113
74
128
145
120
94
133
54
118
96
131
104
101
109
107
177
125
124
54
135
99
76
104
81
152
88
89
115
101
125
149
81
98
126
158
144
74
94
141
119
140
85
79
83
133
135
141
90
120
155
89
98
162
110
143
116
108
103
143
103
102
86
68
98
114
143
106
130
102
140
133
54
106
97
102
94
102
153
131
101
134
86
121
125
161
108
77
101
108
102
149
87
140
91
67
76
102
117
131
90
93
138
98
54
103
102
125
148
127
100
104
113
106
149
117
166
91
79
104
138
105
199
105
109
128
156
74
124
87
96
115
81
85
122
118
71
87
81
125
110
108
108
95
109
102
133
137
142
90
141
109
87
105
95
104
150
98
98
98
140
76
125
113
68
95
69
128
125
139
87
83
54
133
91
102
98
173
87
81
122
144
107
160
105
98
139
132
146
95
78
97
98
166
207
107
112
95
127
81
128
101
135
90
145
94
125
95
94
108
132
142
106
113
129
114
113
149
148
146
145
143
93
160
83
165
192
61
144
95
67
103
96
97
131
133
120
124
87
126
140
123
151
133
59
129
97
82
54
98
98
115
127
165
110
85
140
77
133
107
98
122
105
125
127
77
116
80
115
171
157
149
114
103
123
103
105
95
78
102
120
90
115
179
54
128
113
90
117
89
77
133
138
74
68
54
109
54
95
132
191
109
114
131
107
113
100
142
98
87
90
126
83
89
153
87
103
111
103
98
104
145
110
96
143
157
98
69
124
144
56
147
91
129
80
83
106
128
61
118
122
80
109
113
146
109
157
124
128
139
103
126
76
124
101
115
93
125
74
156
80
77
95
105
112
131
110
92
117
179
82
103
127
105
143
114
126
108
160
177
102
123
138
108
160
123
54
131
98
135
54
105
54
127
133
100
160
80
190
110
108
74
124
135
134
98
174
69
105
88
127
54
157
76
95
107
103
94
98
84
143
157
49
138
122
76
74
128
134
110
131
129
135
97
115
92
131
87
102
93
137
173
153
121
113
134
117
87
108
129
85
59
98
172
153
96
149
87
104
127
76
156
140
113
124
128
159
143
154
106
132
105
140
96
77
138
93
85
112
140
97
81
142
151
98
107
128
103
127
143
94
123
156
131
123
118
102
102
119
127
111
77
102
85
112
59
74
74
177
69
81
144
121
135
120
94
105
135
54
102
120
162
177
128
49
127
93
83
124
145
148
160
140
136
89
87
122
144
114
158
69
143
160
87
108
108
133
111
74
180
116
88
133
148
147
93
87
146
90
133
138
141
54
122
97
76
87
90
110
107
152
80
95
59
139
107
105
93
99
81
67
115
100
115
108
118
141
135
112
149
93
76
114
147
97
142
54
113
128
107
118
67
95
129
103
98
155
113
129
106
74
115
117
126
67
101
110
67
140
95
148
200
119
97
169
82
67
81
138
130
135
143
101
135
79
131
95
108
86
124
92
94
82
91
180
76
117
95
54
148
83
131
91
131
127
160
96
98
111
81
159
100
173
136
135
108
98
87
139
143
61
94
139
154
114
111
92
172
83
77
133
125
88
138
102
152
118
92
93
90
140
118
112
79
118
119
99
67
95
94
101
165
87
94
103
70
133
130
145
90
135
121
144
129
112
131
102
156
145
164
143
67
167
138
87
99
89
98
85
92
108
108
95
123
49
84
96
88
162
131
98
107
133
83
137
93
101
102
103
145
138
109
125
120
74
143
82
73
125
143
145
157
103
127
140
118
139
123
101
76
156
110
151
122
96
91
163
128
105
94
144
85
90
163
81
133
112
90
115
87
142
110
145
95
97
95
156
67
131
104
160
150
108
127
95
127
107
120
90
163
127
114
114
135
119
109
148
99
165
147
49
144
107
93
119
158
108
117
151
108
67
138
54
177
93
142
117
126
96
129
98
81
87
54
100
121
142
159
83
128
101
153
133
148
115
92
111
120
112
118
115
101
153
130
127
167
124
109
103
103
96
102
190
98
100
96
188
108
54
102
147
68
135
95
144
102
105
105
82
127
49
125
108
97
144
135
117
134
129
128
177
116
82
90
110
83
124
120
99
127
133
90
120
144
115
101
97
117
54
118
146
145
113
102
69
142
130
109
98
106
120
108
155
107
80
115
91
105
130
102
106
104
117
106
144
114
100
131
132
105
124
156
144
152
121
126
95
107
90
108
161
128
109
133
106
131
90
83
105
77
110
98
99
160
127
124
141
173
129
113
112
128
93
101
133
144
157
144
118
115
81
97
140
149
142
102
95
77
125
112
103
102
171
95
108
97
129
54
111
149
165
108
214
108
126
152
102
93
102
105
108
124
131
118
127
120
142
95
81
92
97
133
135
74
98
131
98
117
93
133
133
54
98
108
117
112
138
113
146
170
61
124
77
102
102
97
139
96
140
186
113
135
127
113
133
104
84
126
127
142
87
112
96
123
138
117
61
108
181
84
103
160
227
68
141
127
127
57
90
101
109
105
114
102
73
81
69
131
84
156
115
119
112
122
109
72
135
54
76
151
111
176
93
132
87
122
122
131
118
177
123
108
79
170
115
101
119
93
108
101
54
133
49
123
147
119
133
120
110
127
85
67
123
125
102
129
179
87
100
117
137
77
100
85
79
87
113
133
87
92
119
88
131
129
132
78
164
150
103
95
124
153
123
122
161
84
82
95
158
144
108
54
123
67
102
128
82
116
153
113
67
129
159
103
82
92
106
118
107
54
126
94
122
140
164
133
104
158
95
95
102
103
118
146
84
114
116
105
85
80
125
148
122
154
74
141
119
121
132
110
113
132
112
98
125
81
107
151
111
98
125
95
131
172
98
177
125
102
113
104
104
128
143
107
164
109
106
136
131
115
105
147
105
96
88
126
108
144
112
159
135
95
87
105
85
110
148
98
147
144
154
95
161
173
132
121
156
97
128
107
123
81
116
129
105
152
87
129
127
107
111
144
155
87
122
129
102
163
83
79
143
143
97
127
82
96
59
106
107
131
101
176
145
138
157
142
142
85
132
110
186
84
129
95
134
126
139
139
116
146
90
122
113
127
118
95
78
74
135
95
83
105
77
93
102
123
98
124
98
139
122
122
104
49
78
49
120
113
144
77
80
118
153
102
117
87
95
103
97
116
126
131
116
108
150
87
150
85
120
72
68
93
88
131
78
118
104
150
142
131
132
138
96
77
133
107
110
166
143
87
151
79
130
95
107
167
88
88
103
112
110
114
128
116
132
54
100
119
124
137
103
135
87
119
90
194
54
74
152
114
125
113
87
122
67
92
85
151
125
121
121
125
69
95
82
125
120
108
83
112
67
54
103
67
113
108
133
135
110
74
128
181
158
144
74
68
106
110
148
156
160
113
85
73
139
128
112
82
90
112
109
90
119
98
107
151
132
160
95
113
92
113
108
125
54
124
108
116
144
110
131
119
107
133
118
141
118
108
109
139
95
127
122
104
113
127
116
112
86
127
111
123
123
88
80
123
67
125
81
76
103
143
114
131
54
54
130
102
129
98
118
88
73
168
163
139
155
105
126
146
112
149
102
107
126
186
107
61
116
82
135
133
81
135
116
95
84
96
118
125
153
130
90
91
156
111
102
68
105
95
180
110
108
93
170
121
106
109
49
156
103
83
143
168
96
59
128
146
156
137
102
119
163
146
135
99
103
108
106
76
109
115
159
137
91
94
115
85
101
118
74
106
110
125
148
95
86
102
98
61
149
109
115
153
80
128
135
59
105
143
116
78
143
125
125
135
146
78
108
74
143
69
156
152
150
108
131
102
148
103
148
146
113
84
132
102
93
161
77
95
54
120
97
150
98
135
128
130
126
123
141
83
69
59
171
108
54
125
89
140
74
110
90
101
67
133
128
170
158
54
102
42
108
131
91
147
106
102
161
130
81
106
59
83
131
125
105
186
124
83
145
106
102
172
108
134
154
179
87
141
147
128
101
99
87
118
101
81
169
180
108
136
117
113
128
108
90
145
160
109
93
93
97
144
100
112
82
76
149
145
108
126
84
174
128
95
139
77
112
135
158
148
116
204
125
91
95
98
108
96
100
102
108
133
114
90
116
135
102
82
95
144
100
101
170
102
96
172
139
115
100
81
129
126
160
138
108
118
137
108
151
129
143
120
113
74
200
77
128
80
96
119
133
85
86
101
97
140
138
141
92
49
54
92
115
160
94
120
129
125
125
78
123
89
135
103
130
54
158
144
132
165
140
104
98
109
59
104
138
136
122
125
112
88
120
158
87
91
107
87
115
188
74
150
68
108
128
147
95
98
93
128
106
91
122
99
108
135
98
127
95
81
135
89
109
126
78
130
95
101
120
49
95
140
106
90
139
116
76
138
89
106
74
151
102
101
133
69
74
115
92
113
81
87
130
142
96
135
149
157
130
139
177
122
93
99
77
198
139
111
122
126
97
143
145
81
111
133
113
89
103
109
112
140
126
108
49
93
120
81
122
82
125
122
83
119
61
121
61
49
136
144
177
161
110
127
148
118
112
77
145
152
169
113
106
115
113
49
166
54
85
108
54
90
121
69
126
175
74
74
124
131
143
173
115
105
139
130
109
92
150
59
83
158
117
99
108
85
102
143
92
87
77
118
128
132
49
113
76
54
118
146
80
54
128
85
126
134
95
96
61
106
78
74
125
102
117
125
116
164
159
113
141
148
130
98
81
172
49
139
61
59
54
116
141
136
131
97
125
179
120
117
132
133
54
155
74
126
112
98
102
98
128
117
77
135
155
116
143
98
159
104
127
186
113
122
110
102
120
134
127
108
54
144
112
103
148
127
140
98
150
87
77
118
108
98
119
138
150
139
76
140
102
143
115
128
87
119
125
128
136
87
170
92
118
89
83
82
129
77
54
79
143
95
105
92
90
74
107
125
54
106
134
110
80
163
107
119
115
110
87
165
119
118
177
96
113
132
95
86
108
111
141
141
128
129
145
130
106
110
147
150
120
81
97
129
114
102
109
104
83
140
101
87
148
140
179
105
54
80
153
97
82
85
135
120
180
95
114
125
126
127
98
90
97
108
129
100
153
104
137
101
127
144
157
151
100
128
88
103
153
118
119
74
194
108
100
101
69
138
115
95
81
98
130
92
133
108
137
144
127
54
109
116
78
88
130
131
132
103
100
144
98
136
69
122
128
148
153
137
67
142
140
106
160
78
162
92
103
82
133
93
113
173
67
111
73
158
144
127
124
147
77
111
95
103
95
108
127
99
82
77
125
140
108
179
112
100
77
108
105
138
113
100
134
123
96
106
100
96
98
103
147
125
102
78
96
129
122
130
114
91
131
179
100
81
67
130
143
115
90
157
90
145
95
145
54
111
109
87
141
95
74
54
98
159
160
135
92
154
132
97
83
93
102
82
98
185
119
133
96
91
78
123
154
119
184
96
108
127
96
99
142
124
105
87
144
87
91
122
142
128
74
87
108
127
110
102
128
81
54
98
102
73
177
137
88
90
115
128
103
119
87
166
96
54
165
147
117
116
113
89
177
74
67
149
153
102
103
102
101
168
95
136
112
201
143
105
114
121
141
54
102
128
139
98
106
145
129
159
129
154
122
133
131
76
89
105
94
84
161
147
106
113
133
165
73
93
106
149
120
124
103
108
117
101
54
152
99
148
159
105
107
140
95
122
78
93
80
101
59
156
82
61
54
124
102
138
103
119
120
133
91
156
127
121
141
121
118
120
145
71
92
147
81
101
111
118
118
112
84
177
115
103
124
126
98
95
101
128
129
103
83
103
139
155
87
127
96
162
95
106
102
115
95
95
94
150
111
114
107
127
98
102
138
90
135
105
127
108
138
96
91
116
106
118
160
102
115
162
131
122
135
99
102
139
146
93
132
128
153
119
109
129
93
153
108
128
127
65
103
120
163
157
166
74
142
144
126
98
105
128
108
107
74
83
91
113
104
131
81
102
108
81
158
132
107
151
133
102
95
120
105
82
147
123
69
119
102
91
119
95
98
133
120
104
120
118
49
141
152
94
116
109
119
141
155
99
97
109
76
110
81
115
91
126
77
107
95
125
82
171
105
148
82
168
117
129
161
156
168
94
96
108
164
103
120
105
105
103
141
117
54
151
154
96
123
126
89
88
109
128
109
125
153
139
108
113
114
91
68
101
169
92
149
81
95
127
54
93
123
113
131
117
93
96
95
95
54
49
93
177
99
158
85
125
127
168
49
111
117
115
148
101
115
127
137
140
133
108
135
115
149
129
111
130
135
147
99
103
135
87
102
148
82
142
131
116
123
104
103
83
135
145
116
120
148
154
108
102
98
122
92
154
74
149
95
105
77
106
81
90
90
160
93
116
81
96
126
82
118
176
123
129
116
54
107
90
115
114
185
138
81
95
101
73
121
108
109
135
145
76
109
49
95
85
108
129
182
126
125
114
145
81
99
148
101
87
54
100
175
67
119
122
131
108
116
128
122
99
114
123
73
146
149
87
127
106
105
102
112
49
54
120
99
103
128
117
128
177
113
177
77
74
154
124
73
137
118
118
110
97
120
163
158
130
81
149
117
95
93
108
107
108
172
94
79
131
154
142
95
112
114
120
153
125
108
177
133
97
143
115
79
128
103
172
102
118
97
143
76
143
95
180
106
110
90
139
94
157
98
159
108
163
102
102
120
175
128
100
127
110
127
116
158
112
126
126
115
90
93
62
156
131
176
111
134
89
147
82
139
97
107
118
148
117
105
77
142
133
131
54
114
188
141
148
114
108
108
127
102
128
92
135
129
159
158
125
108
126
131
100
142
54
102
80
204
134
103
127
131
134
78
100
134
54
97
200
83
91
74
118
166
112
90
95
193
154
144
120
108
116
99
200
110
123
126
85
98
102
116
102
163
91
68
82
108
155
102
108
98
111
54
103
102
74
102
127
116
80
124
177
177
140
120
144
129
92
134
81
180
74
119
123
123
105
173
92
104
108
107
163
125
61
130
114
134
144
129
116
85
116
128
122
99
105
54
123
87
131
130
132
125
131
151
112
186
113
113
93
150
137
65
109
87
54
128
145
89
95
82
85
161
123
54
90
134
137
125
105
59
110
135
148
84
140
95
77
123
86
168
118
79
143
80
54
144
108
118
125
234
134
168
116
129
99
124
95
145
74
168
132
120
98
133
100
78
103
106
128
112
139
88
88
100
112
115
95
76
98
98
98
199
131
54
82
151
106
112
125
104
82
117
88
163
95
114
117
90
148
100
54
148
140
148
116
109
110
110
105
117
121
95
112
175
113
177
124
119
112
160
148
45
144
191
76
159
81
133
120
90
101
123
95
107
78
125
153
108
49
54
98
121
143
153
115
102
109
115
67
109
99
90
110
133
106
103
107
121
100
113
158
96
138
93
135
115
54
93
133
105
77
138
155
108
165
116
120
143
108
100
115
94
177
87
97
121
135
54
61
98
81
117
108
103
132
49
122
139
87
107
97
165
112
79
147
120
113
146
54
177
128
83
139
49
143
103
49
150
108
67
124
130
98
118
86
125
141
54
81
122
124
184
97
113
108
125
143
147
113
133
135
145
107
77
91
103
139
59
135
103
110
103
103
113
88
101
104
162
173
123
122
79
213
179
153
114
74
54
165
83
97
54
153
73
99
73
87
81
130
121
144
127
114
82
76
168
99
132
148
139
100
142
148
157
144
77
234
106
121
110
117
54
99
124
153
169
114
81
150
101
100
102
141
107
135
112
146
126
134
97
118
104
113
135
139
81
77
90
103
107
128
92
130
140
140
127
78
95
122
115
139
101
101
115
96
100
137
123
147
155
78
157
97
94
127
82
177
108
54
75
115
93
139
116
134
121
165
85
119
150
49
128
123
108
124
155
95
98
108
84
54
122
125
138
96
91
98
168
106
150
137
87
138
85
139
167
122
91
127
143
159
103
116
113
124
87
87
98
102
159
98
182
85
156
103
111
146
100
76
142
96
100
128
87
116
54
95
85
107
117
177
79
128
117
144
67
99
97
121
170
59
108
98
78
105
104
121
112
136
107
137
140
153
69
145
69
135
103
129
115
148
54
95
116
102
94
83
126
95
122
110
108
49
156
135
103
114
135
110
133
80
104
77
113
97
162
138
81
139
131
102
102
95
125
144
128
93
167
143
94
112
102
108
146
102
95
82
98
95
108
143
103
174
104
90
113
157
120
76
183
134
84
180
97
112
156
49
113
89
117
110
100
121
96
105
112
173
131
98
141
114
108
125
128
141
49
77
129
95
119
87
139
81
126
131
95
167
117
169
102
148
110
77
96
115
111
234
78
91
106
135
121
93
109
102
95
98
138
86
90
154
95
98
112
118
95
96
95
128
116
120
131
121
121
101
87
102
86
147
135
122
61
191
98
107
78
131
95
114
82
116
61
82
156
77
94
59
62
105
141
49
139
95
108
102
177
150
143
192
162
170
102
153
135
139
165
98
103
77
77
54
59
127
157
76
107
98
87
143
96
104
90
118
75
112
156
127
114
117
83
95
81
140
177
140
176
76
112
74
107
107
98
111
161
115
89
149
111
138
78
108
193
146
110
141
119
123
115
102
102
95
69
95
87
108
125
125
109
107
153
158
189
109
87
131
99
106
54
76
149
104
177
131
135
81
87
131
82
139
125
124
119
116
108
134
81
103
87
122
123
154
135
97
105
65
104
103
95
84
102
96
106
94
123
76
154
128
107
149
180
145
128
133
75
118
91
133
146
177
129
123
124
106
148
106
85
117
196
157
129
81
127
74
103
118
149
108
108
90
104
103
93
107
114
93
158
171
84
132
131
77
81
108
87
133
144
132
163
100
108
127
42
98
80
158
107
149
125
138
125
103
157
158
92
108
113
140
107
102
121
106
140
102
99
80
126
150
120
133
175
84
104
120
98
113
152
111
54
89
101
106
107
158
104
124
168
135
85
87
123
123
110
125
76
99
105
100
127
141
111
102
111
128
115
153
124
109
81
97
85
142
125
93
54
73
113
116
107
125
103
109
81
117
116
131
139
155
144
74
139
54
113
115
110
113
115
102
67
103
126
127
81
54
104
129
133
112
128
110
95
95
67
162
93
137
157
127
102
116
114
102
61
112
121
67
81
114
122
54
87
98
124
104
122
122
103
131
91
160
139
107
100
144
87
152
103
125
120
54
106
126
86
54
68
99
91
113
83
153
104
184
125
54
54
95
135
108
87
95
107
123
82
95
49
96
82
168
54
54
139
110
159
98
131
133
105
141
121
151
106
132
59
154
129
103
103
69
183
96
106
130
189
106
90
128
116
59
79
49
93
127
108
77
81
103
122
148
101
129
95
120
98
106
136
121
102
95
119
117
105
120
142
135
54
79
104
108
113
103
74
54
95
98
77
137
125
102
102
88
129
81
127
132
124
133
165
81
109
116
83
90
98
112
175
105
124
174
180
76
82
105
148
122
144
108
71
148
109
128
116
124
159
118
139
140
110
89
102
82
87
95
93
131
104
107
67
179
123
83
104
157
97
76
94
124
80
120
98
81
110
121
165
98
111
147
131
54
156
158
123
76
116
112
54
139
133
137
108
103
158
108
141
110
107
102
119
102
94
88
82
103
93
54
145
95
122
95
135
104
97
145
143
120
81
122
131
74
141
80
149
164
146
92
88
108
103
68
146
168
134
126
97
70
107
54
113
122
132
135
145
112
87
105
117
74
68
164
126
54
125
113
77
102
129
128
97
90
54
122
124
86
143
108
109
168
135
104
139
115
131
125
161
108
135
165
122
131
87
128
104
54
74
173
142
119
45
94
118
122
125
126
129
88
54
139
118
108
49
76
180
130
54
54
119
49
74
124
161
125
107
103
117
186
65
98
98
116
97
99
121
101
109
87
143
108
130
132
131
61
91
155
135
110
135
171
102
144
121
98
90
74
107
93
146
126
127
164
90
93
143
119
108
108
121
102
102
82
118
95
113
83
147
131
116
127
146
105
144
98
141
96
102
141
108
87
128
108
112
119
106
127
82
148
84
140
94
167
125
95
108
145
81
49
126
133
132
107
59
112
103
125
74
105
144
141
105
103
143
156
113
76
126
99
79
102
49
102
160
98
76
124
54
118
168
80
110
137
140
103
148
123
127
59
153
80
104
139
124
122
105
117
127
100
160
54
101
167
148
147
119
145
98
165
133
95
54
123
102
59
200
104
111
95
91
99
128
99
160
69
167
99
126
54
101
154
74
88
168
59
151
84
100
144
139
126
142
110
105
142
144
90
102
172
87
74
113
98
129
116
148
90
132
98
86
172
154
61
142
127
113
150
108
147
108
95
108
121
107
105
144
98
158
161
102
156
54
144
136
133
163
102
98
128
118
108
148
129
153
200
91
59
114
106
54
102
98
76
87
54
159
98
120
83
158
107
102
110
95
136
144
96
164
119
147
138
77
133
83
76
97
92
99
113
148
95
59
137
98
112
98
102
126
159
140
54
57
95
126
90
95
120
67
108
126
140
199
69
83
122
90
132
90
77
135
125
103
90
132
49
134
131
78
128
133
149
127
145
110
85
133
87
108
181
103
113
131
122
173
150
122
127
87
179
157
125
96
120
111
108
78
108
135
113
145
143
54
74
108
92
139
143
54
116
157
103
54
135
107
141
103
114
116
118
108
74
140
103
145
120
103
83
108
116
127
148
105
136
130
150
109
119
87
115
148
179
132
108
108
81
110
165
133
150
138
130
162
81
178
190
102
105
149
74
193
119
54
125
145
131
93
110
146
89
140
98
158
61
94
143
109
108
112
176
154
114
164
98
102
76
78
119
118
93
140
115
106
124
81
83
87
131
99
108
104
120
103
93
89
95
169
84
150
114
138
135
109
130
115
54
110
87
98
123
85
150
95
134
102
119
98
104
117
157
110
121
117
102
125
54
112
144
95
103
144
102
114
148
104
177
113
85
90
145
100
137
148
54
81
96
110
131
91
99
128
98
97
118
102
133
109
49
61
110
133
80
152
96
93
136
54
104
163
124
126
149
133
74
118
95
119
180
111
82
108
101
120
143
128
121
88
164
128
104
103
114
79
105
49
94
87
87
102
131
68
115
126
80
128
146
74
54
148
103
120
145
77
102
93
102
85
139
161
118
54
123
102
94
81
98
157
54
54
133
94
98
160
80
49
104
129
151
99
111
114
54
123
117
129
181
59
49
133
125
95
139
81
82
138
115
96
167
181
130
89
131
114
132
98
118
157
102
98
129
154
124
113
92
119
49
117
140
127
122
49
134
129
54
112
122
125
146
96
134
82
59
126
98
54
81
100
106
98
110
117
97
115
145
108
130
108
124
90
77
78
105
135
126
104
54
119
108
121
103
116
120
54
133
113
80
68
141
49
143
107
94
129
103
79
94
154
106
200
93
129
121
99
91
54
165
98
54
71
105
101
117
98
128
88
49
124
123
102
81
134
119
100
122
134
103
130
148
138
102
130
91
106
125
102
79
98
180
144
120
69
146
93
140
102
115
188
118
161
82
155
88
87
113
106
103
153
92
73
168
131
129
139
153
148
108
154
81
49
186
98
151
103
150
122
112
93
81
138
108
98
49
118
73
154
92
177
138
118
142
122
49
128
168
54
143
68
104
68
121
114
73
103
111
49
165
146
98
105
140
95
121
89
123
134
104
103
122
142
102
86
108
158
114
139
113
117
146
106
78
108
90
120
115
73
152
127
49
102
110
137
160
102
91
108
128
95
120
114
102
112
166
124
138
129
106
125
54
79
135
74
181
108
108
97
54
152
98
116
125
148
138
90
199
116
88
125
115
122
69
133
102
114
91
80
81
115
116
132
122
155
120
82
124
198
97
132
168
115
81
61
146
139
135
105
108
82
124
112
74
113
97
90
120
109
75
144
114
112
59
143
69
131
102
49
98
87
135
81
84
123
105
146
54
102
83
74
80
90
150
141
134
146
75
161
110
90
102
173
108
114
119
106
110
122
98
104
147
125
143
119
122
82
160
112
134
145
140
125
85
183
99
93
102
108
147
85
90
199
77
117
128
95
134
76
157
67
102
91
88
96
81
103
102
79
91
121
101
178
102
104
105
111
74
128
135
168
148
83
87
76
88
54
159
152
127
131
82
77
133
155
132
154
98
152
95
96
102
85
100
94
91
92
105
109
96
54
59
112
128
106
127
54
105
123
148
138
101
148
158
111
102
142
118
54
113
146
95
160
103
184
90
127
110
78
119
122
109
104
113
104
80
63
131
135
160
81
105
80
126
108
98
178
129
140
162
108
54
161
100
171
131
175
102
121
98
111
103
96
133
127
109
160
125
143
113
123
59
95
119
103
95
123
81
131
109
139
170
119
91
119
98
128
118
123
148
103
134
135
117
84
59
69
159
198
104
82
98
138
135
112
153
83
91
106
103
114
129
112
106
131
172
97
161
133
95
54
83
85
108
127
93
118
149
102
119
133
54
102
83
103
120
138
115
102
124
127
139
136
128
97
117
59
83
54
80
129
111
86
102
110
128
177
59
69
103
130
139
120
104
153
161
164
110
87
172
133
148
125
161
95
90
68
134
110
170
147
133
149
104
135
106
108
125
125
106
103
82
96
103
81
90
74
80
101
98
49
114
59
135
124
128
102
123
143
113
95
61
168
117
111
132
82
123
102
113
102
124
91
133
115
113
126
101
110
99
158
89
95
108
114
129
113
95
144
85
82
95
95
151
95
154
131
76
100
135
135
161
133
123
127
125
173
130
165
104
133
167
153
177
157
140
81
147
109
113
127
93
103
76
135
114
144
118
54
108
131
91
108
149
98
81
109
120
119
122
128
83
77
131
128
127
59
186
98
156
98
111
167
106
93
129
135
89
102
107
190
108
129
116
145
95
103
82
148
177
171
165
145
125
67
129
108
125
118
131
141
126
101
171
77
137
122
157
168
133
187
105
139
90
82
119
131
121
100
116
99
157
98
169
95
125
140
103
87
125
124
125
127
138
85
97
131
104
134
108
108
85
116
103
105
102
91
145
103
95
134
97
126
112
101
149
83
105
178
151
87
54
108
133
112
82
103
106
76
113
124
130
102
153
167
149
150
133
120
158
135
127
144
107
164
108
114
78
128
141
152
175
169
158
100
111
95
145
98
121
140
112
109
114
125
76
129
95
120
105
115
141
107
174
69
101
110
146
68
98
95
103
142
105
112
144
85
71
105
67
182
125
90
143
97
117
77
149
113
144
95
122
147
158
125
142
159
158
133
140
200
108
155
103
85
136
117
113
59
135
101
106
132
96
110
120
93
156
93
125
79
119
132
103
68
113
127
116
124
116
123
107
96
114
107
87
144
124
135
155
122
78
119
125
102
74
90
115
103
77
81
83
128
108
72
102
102
179
49
122
102
81
95
104
76
90
108
101
115
108
115
106
134
148
84
143
127
148
169
121
173
76
107
115
122
134
143
113
100
90
98
131
95
108
108
100
76
127
113
158
101
172
76
116
87
177
119
98
180
149
98
115
133
168
92
159
144
116
93
156
160
75
108
101
130
137
129
144
133
54
109
132
124
130
90
95
99
168
180
114
102
199
146
156
114
112
107
67
119
98
135
103
85
161
98
67
80
143
54
95
113
137
185
105
119
113
150
61
111
128
76
129
122
85
67
147
111
122
112
129
144
126
108
108
150
138
107
89
91
81
102
92
177
98
73
77
95
79
124
158
74
118
81
158
161
107
96
165
107
54
111
108
147
140
102
135
106
98
186
126
225
128
140
128
67
109
126
101
102
121
91
57
127
82
98
92
142
135
156
98
85
54
109
149
149
105
95
54
146
108
168
113
76
99
120
113
106
127
120
102
115
123
102
112
124
100
77
112
54
121
162
54
137
136
156
69
91
87
91
113
102
104
63
125
76
117
113
114
78
150
129
118
133
74
77
54
107
108
94
116
150
106
125
91
109
98
102
91
74
92
105
113
142
186
133
112
160
65
97
145
68
154
73
144
118
126
114
126
120
148
157
146
148
177
120
77
109
177
125
105
79
127
120
70
105
94
102
49
49
164
145
104
110
96
127
103
54
132
81
129
95
133
151
119
94
128
144
124
138
137
95
164
98
61
127
158
103
131
106
125
125
126
116
118
101
177
118
164
119
102
136
102
132
127
108
54
140
80
128
134
138
74
109
135
95
100
107
74
95
95
108
54
114
122
97
74
54
120
95
96
133
129
54
154
118
129
103
98
79
82
93
82
116
155
132
113
62
112
133
186
125
101
154
113
132
80
185
153
61
123
113
136
126
138
128
108
103
90
81
100
81
99
126
102
123
83
130
97
98
156
49
132
100
94
82
78
102
159
59
54
110
125
158
87
102
155
104
116
120
100
87
112
122
108
99
97
105
94
103
125
95
133
106
67
106
54
119
94
49
102
126
120
110
109
95
93
84
144
87
97
121
150
72
120
107
101
104
91
123
133
69
61
102
87
114
145
111
83
87
54
93
109
127
160
96
140
49
168
148
177
135
105
111
102
81
138
125
62
154
149
145
118
78
128
134
109
156
135
123
109
89
89
86
110
54
106
194
100
148
61
106
85
54
121
119
114
128
111
127
101
108
87
139
99
131
154
151
80
113
77
131
81
54
129
133
135
54
108
101
113
115
109
136
54
136
131
107
105
108
92
119
86
119
124
115
114
79
127
135
97
54
131
127
134
130
127
96
129
98
120
102
103
83
87
130
113
98
160
77
119
151
61
103
49
90
132
54
74
128
121
147
127
74
125
102
88
158
59
128
95
54
87
59
170
191
103
54
93
92
147
102
93
81
118
89
54
99
97
133
77
82
146
129
151
140
177
113
125
80
156
54
95
131
116
143
136
93
186
106
147
98
129
153
67
115
135
98
82
150
108
149
94
81
114
131
130
130
120
59
117
163
99
127
137
76
54
124
136
134
101
110
54
105
93
54
89
108
111
200
54
165
88
103
113
108
175
74
97
103
80
133
93
74
49
92
176
77
119
128
102
138
54
118
206
110
121
129
153
78
82
81
123
141
105
127
122
120
77
105
139
140
105
96
79
151
166
113
151
119
123
106
99
144
59
108
84
93
146
96
134
148
119
85
104
120
86
111
149
141
155
111
108
135
163
95
102
108
54
54
164
128
90
135
59
111
103
87
131
54
139
151
122
120
186
177
124
115
94
124
95
99
103
119
108
114
103
68
108
127
149
98
124
95
117
95
102
54
125
169
139
74
158
169
98
108
117
112
124
70
81
148
148
106
98
129
102
128
81
74
89
100
100
98
135
145
112
142
69
165
98
91
69
123
135
128
113
135
54
77
54
49
119
96
90
120
191
94
113
54
121
110
95
73
124
98
95
102
155
116
117
109
116
154
105
103
82
90
98
130
162
142
105
111
96
138
139
96
142
126
110
95
136
156
186
85
144
102
97
149
102
143
125
54
127
54
146
105
108
117
149
126
121
177
135
83
108
101
108
54
81
161
83
62
105
119
135
157
188
108
127
93
92
100
176
150
91
156
161
77
81
92
98
131
127
123
75
121
129
97
133
116
127
54
120
167
132
113
99
127
118
104
54
102
112
115
93
107
89
154
120
102
95
119
79
155
131
113
96
95
108
138
106
118
162
144
104
143
117
67
67
96
107
109
79
205
119
87
148
103
98
155
97
125
150
127
119
186
128
121
113
125
131
76
131
77
149
93
70
91
131
98
103
130
134
79
110
155
79
136
68
165
119
98
87
86
98
108
133
108
125
157
133
95
103
81
85
127
109
147
92
102
95
76
113
157
123
93
118
146
54
158
128
150
121
92
135
108
104
125
103
141
119
98
155
109
84
108
133
166
117
82
128
133
54
115
54
78
120
157
146
102
59
113
104
106
116
117
112
138
102
108
156
133
120
158
167
54
90
97
127
111
95
114
87
83
96
125
113
103
162
89
49
142
112
127
147
87
129
123
128
107
142
151
129
171
107
101
112
110
110
122
112
122
134
98
114
143
150
91
85
89
49
106
134
77
82
136
87
91
133
171
93
139
81
107
97
133
107
112
150
113
123
141
89
120
108
125
49
91
113
140
123
120
148
146
110
225
116
89
111
102
68
143
113
157
153
170
113
87
95
54
106
130
138
80
173
102
148
147
125
98
128
147
169
93
119
87
67
134
133
86
95
102
54
135
104
81
110
117
155
90
117
116
129
127
87
135
102
100
214
120
61
103
89
107
140
94
95
233
102
93
54
78
170
180
162
124
106
141
93
146
128
113
83
108
117
200
95
102
110
108
101
82
125
54
113
101
124
142
100
121
95
77
107
49
85
54
97
91
123
88
113
112
113
125
134
94
91
90
153
146
83
82
95
89
99
115
129
77
97
107
67
123
78
120
130
81
99
172
115
82
49
111
119
132
102
107
160
74
105
122
119
166
77
80
68
98
105
128
94
185
101
100
81
96
91
151
101
110
87
115
89
128
128
85
101
168
95
177
95
78
105
91
83
144
140
164
121
80
165
110
152
101
141
122
110
82
172
115
150
110
98
135
135
148
49
122
124
156
96
86
125
100
146
118
123
108
180
99
54
98
97
158
104
90
121
69
85
113
110
144
135
95
125
95
98
143
85
127
102
106
117
74
95
130
81
98
163
119
82
152
131
148
97
102
177
101
84
108
69
108
74
105
143
106
144
119
100
103
160
95
95
113
154
144
102
113
144
125
111
125
103
119
92
127
123
109
110
157
122
83
113
154
86
82
99
124
196
125
107
49
133
131
102
112
135
109
90
54
112
147
104
98
115
108
127
95
119
143
98
180
101
69
91
177
110
95
152
98
148
93
102
110
116
148
113
108
91
59
103
176
128
98
140
149
100
133
162
108
122
102
102
108
141
111
54
69
98
116
131
133
90
149
120
139
95
125
127
76
77
105
122
124
99
132
125
104
113
113
117
61
181
93
103
95
104
146
89
96
92
152
98
98
85
149
98
140
167
167
131
54
78
90
108
96
123
124
110
130
139
112
92
103
102
103
80
76
119
108
141
89
95
76
155
127
131
107
91
108
54
102
95
136
141
94
130
81
133
112
104
129
116
131
82
132
168
54
106
161
115
145
95
144
155
81
109
93
74
128
120
81
59
138
105
74
125
123
95
95
92
118
108
143
137
140
100
113
110
83
91
95
54
140
113
135
95
96
132
102
105
92
163
134
122
123
153
111
82
132
143
110
113
108
125
138
146
143
148
78
67
74
135
114
99
88
129
83
104
106
102
163
146
92
125
131
108
108
131
148
146
104
100
67
149
98
147
161
134
155
111
108
77
81
138
128
146
134
150
67
86
114
149
109
147
150
82
155
108
125
78
125
154
87
142
102
140
166
128
102
107
54
152
155
86
91
108
90
91
76
146
83
103
179
113
83
109
109
107
114
89
96
145
103
117
103
114
67
115
105
102
106
148
153
131
170
74
127
126
154
89
173
145
145
103
127
122
102
186
200
124
54
142
127
77
151
90
140
76
85
148
127
125
142
94
85
105
104
81
129
81
76
119
107
106
94
142
140
132
93
125
97
76
74
135
108
161
105
83
138
137
143
103
87
114
106
74
141
145
111
103
147
126
139
54
59
76
98
116
109
85
84
85
109
177
109
111
99
106
138
133
85
131
155
103
137
81
145
116
67
131
129
68
102
126
102
93
79
49
49
135
125
97
108
94
130
143
135
74
190
158
174
132
94
103
133
144
96
106
124
76
111
85
87
118
135
120
74
141
206
115
54
128
162
104
81
83
113
133
120
156
96
105
74
83
91
59
177
98
95
110
96
115
140
164
81
96
108
148
134
121
54
139
138
82
103
122
54
98
152
108
116
148
146
115
98
91
123
93
145
111
109
137
140
120
117
124
96
161
54
91
109
98
87
81
75
125
125
54
120
158
146
119
117
102
98
200
102
119
94
77
133
145
119
121
143
128
70
79
131
159
161
77
128
113
112
94
101
112
150
149
108
123
141
160
81
126
130
113
152
54
61
120
135
76
194
96
157
124
108
151
102
107
143
133
148
95
90
130
133
65
137
122
99
126
98
144
105
108
109
170
135
128
87
154
83
163
112
140
84
103
93
54
87
120
105
122
144
78
49
85
135
81
150
87
90
103
102
114
164
106
76
102
95
122
117
148
90
165
131
135
82
82
113
90
108
76
87
103
106
135
105
99
118
132
110
108
135
95
93
103
102
117
95
117
148
61
150
146
127
178
90
85
113
93
108
122
141
193
120
106
81
67
106
127
98
153
84
110
85
93
106
129
158
113
77
81
90
167
91
144
120
90
82
105
103
160
96
95
128
82
111
81
110
153
76
85
129
115
84
116
133
133
153
104
74
127
83
151
148
109
98
79
119
108
97
146
151
100
102
131
120
114
111
73
135
77
135
158
107
123
94
167
91
103
93
134
149
115
107
118
116
141
103
81
106
154
95
167
159
93
119
152
102
91
146
125
92
103
103
80
117
146
143
90
101
197
143
127
102
133
67
127
91
90
95
84
93
133
108
108
129
144
146
74
127
77
104
131
163
83
122
146
67
127
141
123
135
97
105
126
110
54
49
84
120
102
102
103
54
125
144
99
89
76
109
74
75
158
106
80
162
153
104
115
106
100
106
145
78
54
54
82
130
112
106
123
129
97
133
103
118
87
191
108
119
111
156
130
102
146
129
137
110
165
131
102
154
122
101
96
106
90
137
135
134
117
179
157
127
126
169
113
93
141
118
150
118
98
127
155
148
138
152
110
135
138
78
171
110
147
84
128
138
158
155
139
139
152
148
133
106
110
102
115
143
126
107
87
131
177
54
101
150
117
158
136
140
81
125
103
62
103
115
150
123
103
165
79
139
129
144
155
127
125
105
113
107
102
148
78
121
81
162
124
149
91
139
96
96
125
90
144
140
102
104
110
112
82
54
49
127
59
54
131
116
141
148
172
148
90
102
115
156
49
135
113
126
77
108
105
89
143
150
108
95
94
102
91
68
74
133
165
68
87
95
95
98
135
82
142
162
132
98
87
124
159
80
129
101
185
152
98
98
93
98
54
85
102
134
102
136
111
116
132
127
118
54
143
125
145
177
96
147
67
107
163
82
122
118
116
165
130
95
113
54
133
85
97
54
113
82
139
167
108
109
115
70
136
67
113
104
102
175
140
133
110
206
153
163
68
125
84
145
54
119
106
81
112
49
119
118
59
108
119
106
107
108
130
117
106
163
125
69
113
54
113
113
83
61
127
83
97
108
143
111
54
169
106
201
129
128
99
135
94
148
95
140
163
148
77
112
98
112
128
128
138
107
146
94
96
134
77
99
128
74
106
116
105
143
62
124
85
145
94
73
174
118
135
118
130
102
155
105
101
114
126
98
59
108
106
157
142
54
118
171
119
141
151
85
89
91
54
106
180
59
99
130
157
127
118
123
89
95
113
102
119
177
74
156
125
140
121
132
148
81
160
54
54
114
114
108
126
112
76
100
91
81
128
125
133
178
98
110
49
134
98
146
96
93
147
106
120
146
127
83
139
91
126
103
127
161
105
76
83
49
144
61
99
160
107
74
120
135
110
106
117
148
91
165
102
133
120
121
83
95
135
84
200
159
82
177
176
152
105
126
87
98
80
102
76
125
135
144
135
144
137
80
96
130
67
163
155
90
131
118
93
136
80
134
54
128
148
108
127
122
88
85
105
54
145
105
126
100
120
124
93
219
99
104
126
106
54
115
90
149
112
76
90
67
49
134
148
54
125
112
141
72
141
108
95
135
188
99
80
108
54
110
96
116
87
119
126
103
130
96
143
134
130
103
117
152
160
160
102
158
96
139
103
87
97
97
129
113
77
134
134
145
123
81
141
116
101
197
127
100
114
91
156
151
90
95
103
114
76
74
100
98
85
108
76
143
103
108
93
176
90
90
96
102
90
73
111
74
106
61
131
104
133
85
140
119
95
93
161
154
115
120
92
143
81
119
112
129
54
96
142
115
151
93
125
136
69
106
74
105
81
147
128
144
91
118
102
89
99
119
133
120
176
72
148
133
77
156
98
128
138
104
96
101
81
93
81
109
82
82
95
107
91
146
131
137
100
91
160
74
49
80
159
108
148
93
125
159
142
119
92
151
116
103
82
98
93
130
97
93
106
177
81
155
127
76
163
87
105
116
131
97
69
132
130
133
124
114
117
106
97
115
125
148
81
113
106
54
95
133
116
90
104
108
129
107
140
105
113
128
133
90
98
99
108
116
118
117
117
121
106
106
127
151
113
85
151
177
104
129
105
122
148
140
132
121
107
113
138
95
135
125
70
54
139
101
49
97
77
104
138
106
130
105
95
124
77
98
144
101
126
120
80
112
102
97
145
98
91
114
167
127
79
114
139
145
142
101
101
120
117
174
49
81
119
120
146
54
108
118
59
87
140
118
81
106
108
148
95
124
133
67
108
121
102
109
95
100
76
103
158
112
105
96
114
90
108
144
95
76
98
102
119
128
104
147
125
135
92
106
95
105
105
71
108
54
142
114
107
120
118
87
76
85
134
103
148
143
78
143
116
110
101
109
111
143
124
123
49
148
116
182
129
95
153
84
198
95
128
85
147
133
120
54
125
100
90
95
145
155
90
59
90
103
108
74
102
144
157
110
98
167
102
98
128
113
146
152
147
102
82
61
95
86
120
95
154
129
170
192
123
190
144
143
99
96
180
108
125
87
114
112
149
142
144
59
148
84
103
152
87
129
134
117
129
110
90
116
89
113
128
82
98
116
177
95
105
160
111
103
147
141
135
146
118
106
120
143
107
125
102
135
128
125
131
121
101
102
111
110
81
59
122
105
146
49
54
143
54
92
104
96
111
102
95
98
97
54
143
100
125
143
123
161
150
112
95
69
159
84
98
68
76
138
54
54
76
71
131
89
146
104
96
153
162
80
85
104
108
90
105
132
81
54
69
200
103
115
108
114
100
131
118
149
136
108
117
126
74
82
88
107
125
116
156
85
108
81
129
145
83
85
129
140
158
103
144
120
141
121
90
144
86
135
81
72
140
144
95
76
104
118
91
110
134
89
93
108
89
116
181
160
125
100
95
150
142
161
115
131
135
98
138
113
107
76
145
92
120
170
108
108
83
130
129
127
101
161
96
99
171
128
133
84
102
74
113
82
96
113
179
90
148
128
130
145
49
137
134
123
109
117
141
131
108
108
78
54
101
68
122
154
93
92
144
103
115
54
156
133
82
115
131
81
194
90
70
102
97
139
128
169
97
99
108
59
188
108
54
95
95
103
87
90
98
113
155
133
118
114
49
115
122
159
142
105
137
123
140
98
103
158
116
103
105
119
81
123
95
90
127
134
115
98
91
129
120
102
89
95
92
102
168
91
61
148
109
194
105
124
95
96
98
146
156
120
146
148
153
125
74
188
103
76
106
105
131
117
124
115
147
201
95
88
95
150
101
120
107
87
111
148
108
54
150
112
84
131
153
105
177
108
84
91
81
90
104
120
119
54
54
54
108
112
184
94
149
130
95
110
116
122
134
143
101
91
99
94
129
235
142
125
130
68
141
67
163
138
96
128
151
128
141
110
54
145
119
167
90
74
54
128
153
98
102
133
122
194
133
95
123
109
54
163
148
131
74
148
181
81
148
110
81
54
76
132
130
133
120
93
108
148
128
108
177
198
106
152
159
120
95
98
112
100
82
120
100
87
143
97
131
113
118
181
108
148
148
59
107
108
149
98
122
141
109
99
105
91
113
146
107
74
59
165
135
103
80
102
102
112
110
111
152
95
59
94
131
113
101
117
78
145
155
54
165
90
91
137
117
107
102
74
126
106
110
148
106
95
137
95
90
89
91
54
99
87
106
102
107
84
154
98
81
87
103
105
117
132
49
108
54
145
78
113
106
87
112
109
80
118
133
128
161
86
106
118
102
78
84
127
177
82
151
112
77
95
131
102
129
101
113
146
54
96
102
95
126
110
103
166
99
95
90
98
149
95
54
87
162
84
143
117
109
106
151
146
133
122
93
95
165
133
95
104
168
113
145
87
142
67
91
95
108
142
125
120
89
104
80
134
92
78
111
151
162
111
107
143
128
133
77
74
103
143
148
110
76
67
105
158
82
163
89
104
76
100
128
93
89
90
103
160
102
97
111
148
54
87
87
164
163
125
78
84
54
97
198
112
93
154
98
101
125
68
119
98
98
89
131
125
129
117
132
110
156
123
77
128
107
120
95
126
89
74
141
143
96
142
194
135
89
117
200
140
123
118
128
117
172
170
108
143
98
167
122
158
54
90
80
114
141
85
113
153
106
124
108
81
78
141
75
137
108
131
83
45
125
77
123
88
205
69
93
78
124
109
117
125
146
103
49
95
108
80
144
73
54
119
106
105
102
126
107
111
124
103
133
144
87
68
148
80
77
133
97
96
122
90
134
148
88
116
197
65
99
81
158
67
126
92
103
83
139
128
121
102
189
88
125
173
102
135
234
160
107
144
135
81
104
133
108
121
145
117
136
49
116
86
102
61
108
123
147
108
99
104
113
210
191
135
163
144
76
93
128
141
54
132
99
133
147
118
54
130
129
119
76
152
146
98
155
76
67
102
110
141
103
154
135
82
130
163
143
110
103
108
113
54
109
129
148
118
105
59
90
108
77
133
157
122
83
145
100
95
68
133
124
95
115
138
127
142
141
115
107
138
108
128
87
106
102
111
84
138
131
59
77
140
110
80
161
80
183
123
49
132
116
54
126
103
112
138
128
68
157
82
171
98
95
115
110
98
128
133
113
138
131
129
102
188
95
69
139
185
102
98
156
103
126
90
117
139
76
87
99
106
156
148
93
139
126
59
120
140
80
87
160
160
153
98
112
101
131
116
128
108
157
111
132
90
120
154
86
124
114
102
68
123
135
113
84
141
81
59
174
81
131
74
82
176
116
115
122
98
61
103
91
139
141
161
74
93
86
94
124
123
123
98
103
95
135
88
122
95
113
76
123
97
92
49
98
70
100
133
139
95
54
92
140
76
164
99
107
165
108
113
119
148
103
147
74
105
108
123
98
59
141
69
160
98
67
108
54
68
91
90
129
113
74
54
133
154
94
119
106
110
89
125
80
135
139
127
126
157
141
91
108
149
102
109
81
104
77
151
83
141
77
179
120
111
103
103
128
134
110
160
54
125
119
112
125
99
155
98
128
108
193
103
161
131
108
141
161
124
130
163
101
121
98
82
148
82
112
124
108
93
138
103
148
120
124
115
90
116
122
89
101
135
148
119
165
49
108
100
81
98
116
85
135
90
143
91
160
154
108
80
80
129
113
59
113
107
104
104
109
97
155
140
95
128
93
77
105
97
163
133
109
160
156
78
95
103
119
159
84
68
112
105
95
151
138
143
108
103
79
109
95
143
113
45
147
118
102
102
103
132
92
181
134
122
103
126
123
77
148
106
94
72
102
151
61
142
173
108
71
166
135
98
105
74
95
120
125
122
84
128
122
113
140
100
101
98
95
78
89
91
133
144
165
96
54
108
82
108
126
148
100
103
107
103
116
133
91
169
122
102
112
54
108
118
107
54
83
130
128
102
115
103
102
147
146
135
113
81
120
90
111
108
59
124
134
129
98
92
105
98
112
145
54
81
113
105
95
110
97
83
59
91
129
98
76
102
145
123
101
99
90
115
140
109
108
106
98
88
165
134
132
111
76
114
128
54
54
143
95
90
175
127
135
108
71
138
120
218
139
112
120
122
97
119
98
106
154
100
159
144
105
123
105
98
128
174
98
106
196
141
123
119
117
165
84
70
119
133
88
99
115
111
181
102
82
54
117
157
153
161
69
95
131
104
135
125
128
113
131
129
116
102
132
54
97
107
141
140
158
54
133
144
123
158
118
78
112
118
139
82
98
127
131
144
165
96
81
110
127
154
102
74
67
54
78
143
96
165
91
108
128
82
96
133
115
152
61
93
133
140
67
127
113
119
112
95
54
128
153
76
177
77
101
118
111
95
108
102
141
84
122
108
129
88
139
134
105
131
81
74
144
59
100
156
87
109
93
132
123
98
146
106
108
101
74
154
152
94
128
121
77
96
178
103
131
74
90
67
138
159
101
105
76
133
74
186
101
106
103
102
142
106
128
105
54
100
119
200
102
91
145
108
144
193
112
147
174
95
105
112
143
118
105
139
95
139
81
95
80
140
105
99
131
106
78
103
177
194
142
140
123
169
99
95
112
100
140
98
128
146
114
124
115
78
110
98
97
114
144
125
141
145
67
113
113
78
168
42
95
169
135
122
61
155
148
145
145
128
54
139
117
102
102
87
90
113
104
113
113
126
125
89
118
106
117
154
59
67
105
74
171
144
98
95
140
49
89
109
120
156
123
139
112
113
68
122
110
119
78
49
49
111
102
100
114
132
135
137
95
112
156
93
81
95
106
90
153
143
54
68
123
85
102
127
104
93
139
156
133
90
139
108
113
103
97
98
78
107
137
104
95
105
82
68
142
160
102
98
180
128
115
87
86
158
103
72
67
85
159
167
67
110
130
81
54
107
107
109
114
78
85
74
74
149
81
97
114
80
145
108
114
96
117
140
108
49
125
54
93
95
141
113
112
88
102
139
120
187
119
85
118
150
76
113
137
144
115
103
131
108
127
108
158
98
69
85
68
125
123
108
160
130
112
138
160
122
123
144
85
105
74
102
108
54
132
143
139
158
141
118
154
140
54
112
93
87
96
158
97
115
118
105
145
105
119
89
124
102
94
130
146
124
77
99
114
104
160
78
174
54
99
109
92
78
108
67
75
104
127
118
98
135
133
117
87
128
93
78
138
118
98
88
124
109
133
128
145
137
112
153
117
82
130
98
95
118
108
90
87
117
191
175
177
129
196
59
154
148
113
112
134
140
115
74
90
141
177
54
127
88
159
120
93
54
86
135
190
93
130
147
136
95
54
49
61
84
98
128
95
135
127
163
152
112
148
133
139
69
114
118
145
115
95
86
77
165
74
97
97
180
76
87
140
186
124
155
201
144
100
170
111
109
160
104
123
98
93
159
96
109
119
133
54
143
125
87
120
102
148
141
92
143
143
139
102
125
145
154
59
85
95
54
127
101
76
144
73
108
54
82
67
72
147
77
159
146
81
173
125
54
120
112
100
114
137
102
87
104
147
54
148
54
122
105
158
144
102
94
98
97
65
110
144
87
107
119
108
172
103
158
84
88
108
108
123
129
104
160
133
128
106
74
121
86
105
96
95
81
119
193
102
82
54
129
61
82
119
148
101
220
130
98
69
150
95
131
127
133
95
119
106
108
102
123
139
96
150
138
99
165
99
199
93
87
74
106
216
155
54
155
162
142
121
158
163
121
127
129
54
67
144
144
54
104
108
89
93
120
81
107
125
146
49
103
113
101
123
131
133
143
82
143
98
142
83
105
190
111
69
175
102
133
114
123
102
146
103
146
102
116
152
81
102
80
59
67
96
191
146
137
173
143
104
81
166
92
93
135
95
117
116
147
83
103
59
158
110
148
134
92
129
173
129
124
82
94
141
113
116
145
85
125
103
128
129
105
157
104
125
84
133
132
81
145
108
102
103
132
140
125
148
100
120
140
134
127
162
103
119
145
116
145
138
76
93
168
104
86
82
76
108
125
121
150
135
152
186
118
188
124
90
127
113
104
127
95
105
122
95
133
121
100
95
123
103
142
111
117
95
92
119
138
143
144
93
114
115
95
112
90
104
86
131
93
117
149
146
81
102
95
98
77
117
116
130
127
136
83
140
122
142
128
91
103
110
93
54
93
94
107
104
114
138
110
138
68
113
76
132
97
105
127
113
112
92
93
165
96
120
180
98
131
117
114
77
142
149
164
123
96
101
118
90
101
128
131
125
105
135
105
85
116
135
98
154
108
110
79
103
49
128
132
59
69
158
105
95
108
146
105
86
105
108
120
134
159
135
89
95
95
131
132
121
73
161
134
122
92
103
77
78
136
95
154
129
82
77
125
102
113
133
143
152
149
179
156
179
167
116
97
54
123
112
92
98
118
93
122
145
97
125
99
54
98
94
54
123
175
78
107
106
160
88
129
148
75
159
145
94
123
156
144
94
143
148
104
77
91
133
154
173
177
83
102
198
136
142
81
90
113
79
103
120
106
95
151
111
54
103
129
59
90
121
177
106
108
107
77
132
97
82
54
102
59
54
148
108
134
122
74
125
138
110
108
136
80
131
132
123
107
146
107
132
98
116
134
81
149
160
49
180
132
101
78
118
111
116
71
133
133
78
112
102
122
118
118
102
92
54
132
122
122
54
90
118
147
140
141
126
98
108
102
121
54
113
81
132
130
102
81
111
108
86
109
54
83
98
138
101
168
126
96
110
155
143
107
131
179
104
89
99
108
95
125
133
106
108
83
131
118
149
127
149
108
76
107
125
87
81
95
115
54
100
151
116
114
160
108
79
124
104
108
127
126
141
49
83
108
96
102
172
137
152
149
122
81
81
108
116
107
112
132
103
95
122
74
85
69
137
117
93
148
133
107
137
107
115
107
112
90
95
108
127
102
125
108
87
147
123
133
144
96
167
131
140
140
108
171
141
125
140
146
76
61
104
82
80
54
135
148
108
133
98
104
114
110
177
102
143
108
71
113
129
128
146
97
59
145
113
100
83
95
147
82
124
130
109
128
133
134
94
114
139
85
110
194
88
49
69
135
73
97
154
129
102
98
146
110
115
98
109
78
144
122
93
77
127
172
102
141
120
103
107
115
95
105
179
122
153
120
111
98
152
54
102
54
102
142
108
97
129
67
54
54
120
154
68
92
131
148
118
80
95
148
96
118
54
77
76
105
90
95
106
159
95
95
113
126
122
114
98
59
102
140
145
105
54
145
59
134
77
103
120
149
160
167
87
102
100
144
83
143
115
77
83
94
148
129
106
133
129
97
132
102
116
166
80
91
102
95
110
126
106
102
95
135
98
129
91
109
108
122
205
102
136
103
104
143
123
120
105
157
145
113
83
79
94
82
107
116
69
144
67
81
135
133
96
54
54
77
93
106
54
108
93
120
136
145
126
122
155
102
61
91
141
80
113
144
143
97
49
124
95
74
182
69
96
122
131
124
123
161
128
78
95
134
54
169
104
153
99
49
122
89
54
112
127
141
101
149
134
118
151
98
102
97
135
154
97
103
126
126
136
108
133
112
116
191
148
116
107
90
121
165
131
98
76
83
110
131
130
54
145
129
110
131
120
136
132
113
108
154
154
140
145
130
103
115
102
113
98
93
186
83
144
80
170
158
155
98
227
148
113
135
209
104
107
98
98
108
115
78
98
139
144
157
196
79
96
95
67
114
132
132
150
75
119
90
119
102
98
98
90
54
107
142
108
90
97
120
97
82
74
141
87
131
98
153
129
103
87
127
105
54
69
85
108
87
95
79
117
105
111
88
161
113
119
130
113
135
62
110
123
131
92
99
72
80
135
160
153
98
128
162
114
92
145
95
95
121
122
111
95
91
147
80
134
106
123
103
97
102
126
74
90
59
128
198
112
118
131
95
177
54
119
87
81
158
155
75
78
135
175
88
143
54
144
117
167
93
98
153
111
84
117
78
131
88
59
102
77
108
150
167
80
125
163
155
111
108
125
164
169
73
68
126
136
134
93
118
103
96
127
162
98
113
94
140
98
111
76
163
108
119
120
77
109
77
138
135
135
81
94
135
160
113
95
126
114
61
115
132
143
128
59
134
135
129
117
81
148
136
133
117
76
127
149
84
123
88
101
71
135
135
95
99
84
110
113
120
115
54
102
82
97
102
135
93
87
178
112
114
91
131
91
77
102
134
95
54
59
95
99
103
102
157
123
156
132
84
106
87
90
77
128
114
138
105
96
59
76
49
77
142
103
72
139
102
108
102
127
81
143
81
108
83
83
118
107
54
145
49
102
54
49
83
119
122
91
128
102
90
139
151
104
89
114
167
102
129
92
54
142
145
77
95
69
111
127
108
95
108
82
89
84
103
89
125
102
153
108
115
118
164
133
128
128
135
133
123
118
105
102
77
107
95
95
74
108
125
158
134
87
78
100
91
92
115
76
100
111
69
67
113
126
54
54
77
87
129
84
113
106
106
106
116
144
107
157
149
129
180
54
124
128
119
121
87
130
130
140
96
147
133
89
126
122
132
111
113
146
107
160
119
95
169
130
93
99
93
177
133
105
139
124
125
133
99
135
133
85
131
119
98
87
137
98
153
122
61
146
152
139
106
49
92
130
87
54
90
106
76
118
74
114
108
100
69
173
90
98
125
74
123
97
113
146
113
54
154
106
95
126
115
107
165
89
122
218
116
133
87
95
77
167
54
123
133
128
116
129
127
122
161
128
143
59
119
131
148
113
102
132
123
154
152
107
90
83
95
140
181
115
165
102
130
116
91
118
141
102
106
127
161
138
119
115
139
107
144
118
79
116
117
152
104
129
127
234
74
74
95
121
85
161
59
83
61
112
112
188
128
108
112
111
107
82
135
124
135
125
116
148
134
135
127
195
114
126
158
107
158
99
139
93
82
105
127
74
61
149
119
106
124
102
131
131
129
97
133
144
110
108
117
104
111
146
123
108
119
138
97
165
144
113
76
113
95
83
126
100
128
108
90
99
125
105
108
124
121
99
83
80
114
120
148
123
148
123
129
127
108
85
100
108
150
109
112
157
95
102
113
114
94
141
95
90
129
103
156
108
149
104
157
134
108
103
92
157
143
93
168
87
126
124
137
118
100
125
103
184
54
105
108
120
129
149
113
105
103
117
154
158
93
180
110
134
147
85
97
102
138
97
142
125
54
133
107
87
129
127
91
124
119
112
105
54
108
131
90
121
74
139
111
113
86
54
149
149
105
171
129
105
77
130
129
68
76
128
154
76
135
135
144
102
67
81
76
133
71
102
135
125
105
128
144
90
103
77
125
103
54
89
150
140
97
112
79
90
106
100
105
191
102
148
137
148
91
98
122
102
129
158
125
78
103
160
49
102
108
124
76
135
148
105
106
130
162
102
147
86
92
108
59
154
115
76
155
77
123
106
95
125
112
140
101
102
119
107
118
77
76
158
163
135
104
108
104
168
61
101
123
101
115
139
102
123
96
83
145
132
101
122
182
117
135
118
83
102
214
101
106
135
150
101
125
134
118
113
113
124
108
81
54
133
67
144
127
106
85
99
108
102
96
98
113
140
113
124
144
107
161
133
119
97
125
54
95
96
128
111
140
135
101
104
146
151
122
95
118
98
172
74
114
119
113
74
99
137
105
125
113
123
108
95
199
140
107
169
82
115
124
146
113
129
116
49
102
139
144
120
113
90
121
177
49
112
98
166
104
112
81
173
108
186
102
96
138
180
148
105
98
124
102
172
107
193
160
108
126
88
127
145
120
139
49
129
115
135
120
168
108
163
128
110
140
108
143
139
132
109
59
120
184
108
152
77
107
69
172
81
148
131
141
95
95
118
120
106
91
104
132
135
81
153
165
91
93
102
135
129
105
98
54
173
165
122
96
54
126
117
114
119
108
130
59
72
54
102
149
138
125
118
113
103
95
81
160
98
81
81
77
139
102
106
68
95
106
157
78
160
106
139
102
90
78
142
140
111
78
88
106
108
149
131
113
140
148
102
92
68
151
113
95
105
76
144
102
125
99
107
61
54
113
168
77
87
83
108
113
117
107
90
104
169
54
98
129
133
120
118
121
153
146
97
61
146
130
107
137
102
126
113
135
96
54
107
121
115
68
126
153
124
105
132
69
134
158
102
133
153
153
49
125
102
86
59
111
98
61
182
116
159
101
108
102
99
116
101
114
96
114
116
107
95
112
73
126
82
168
108
108
176
100
128
161
103
102
143
175
101
98
142
91
83
93
83
95
108
49
142
116
112
85
133
146
121
115
100
104
136
160
159
135
161
145
113
157
103
76
116
137
54
162
123
54
81
133
125
165
108
108
127
148
101
181
118
109
123
113
54
89
105
133
122
158
79
128
88
108
81
54
121
95
54
158
102
98
99
86
122
127
155
124
101
102
96
145
102
148
157
87
109
163
103
87
147
115
138
84
113
113
148
148
141
98
106
78
98
95
118
114
149
76
105
83
140
107
107
83
113
108
139
54
132
169
134
169
124
59
76
115
123
93
140
107
109
125
132
142
108
85
119
103
132
93
150
89
92
148
170
76
135
152
118
155
192
148
105
81
128
91
125
141
95
80
118
127
141
93
49
152
102
113
104
89
81
118
59
80
145
59
108
83
125
128
133
119
103
129
154
153
93
111
49
123
76
76
153
108
156
174
118
108
103
104
114
137
160
108
113
78
137
148
65
118
120
147
107
122
84
191
148
127
131
117
124
138
84
143
61
125
104
109
158
109
154
54
171
122
136
96
67
59
156
54
111
134
186
95
120
131
120
54
95
125
157
93
95
102
108
106
54
67
103
143
161
91
95
102
104
89
144
143
100
124
103
83
102
115
165
91
118
90
101
95
127
68
127
141
144
177
95
109
78
69
103
84
102
105
120
108
171
135
74
160
131
107
107
163
151
103
127
107
149
119
108
62
194
87
172
185
113
98
124
67
151
87
105
95
104
134
93
54
141
98
59
77
138
120
154
76
96
68
109
159
124
81
129
108
110
89
149
81
143
121
110
106
121
117
175
108
78
131
123
145
76
128
109
158
125
98
105
128
67
123
114
135
95
90
97
70
54
144
111
106
128
115
103
54
69
135
125
127
68
102
90
102
163
113
108
107
145
131
92
141
113
108
147
186
74
90
113
177
105
123
131
119
103
97
110
163
93
81
124
88
120
129
180
149
175
128
167
122
135
131
80
87
93
123
115
133
119
95
105
90
105
111
120
98
84
95
102
153
108
131
160
73
156
79
157
95
156
125
85
95
97
133
103
97
131
107
62
145
115
194
165
115
129
100
137
149
127
114
105
110
167
127
133
116
83
141
157
151
77
128
134
181
140
121
90
54
54
78
70
88
98
106
159
89
104
61
124
134
102
113
206
54
90
76
148
139
124
139
68
108
91
61
112
85
90
138
126
109
101
114
81
106
96
122
95
106
114
97
81
148
134
76
159
206
100
98
115
49
118
82
95
137
108
128
145
108
129
61
54
95
117
112
95
83
138
133
182
116
153
113
200
93
49
145
54
110
70
78
104
112
176
108
98
83
119
160
100
93
166
103
81
148
134
62
135
105
141
119
115
81
103
129
54
54
108
68
92
83
128
156
147
95
125
125
106
107
75
150
87
132
95
87
59
91
143
78
124
81
161
92
91
74
173
54
111
98
139
134
85
128
78
95
102
95
118
105
191
162
106
49
114
115
81
141
144
121
105
201
87
148
106
120
148
115
54
160
144
81
79
107
94
117
67
135
170
122
85
104
49
54
133
94
49
128
97
98
103
90
89
113
82
151
145
110
147
148
135
83
122
170
108
94
151
177
87
112
111
118
90
106
146
106
87
173
93
87
152
128
123
107
125
153
121
127
169
93
78
138
117
76
127
59
108
135
101
125
126
98
167
134
114
127
191
146
90
94
103
144
122
49
125
74
106
54
106
127
88
118
102
147
69
109
101
128
122
94
49
81
59
172
110
87
102
105
128
94
110
118
186
155
81
93
179
156
148
118
151
135
95
83
182
139
137
122
116
88
101
54
155
140
117
151
124
59
108
144
134
139
108
90
102
81
136
92
61
102
188
127
101
110
115
148
61
81
49
54
59
130
108
102
90
167
90
128
133
163
128
49
144
149
125
158
85
108
98
124
96
116
78
103
54
105
145
101
139
95
78
96
158
137
122
76
107
83
102
136
144
123
144
120
103
100
118
190
118
122
97
128
153
163
98
97
103
59
98
120
102
130
108
113
91
80
98
105
99
96
103
81
54
98
143
92
102
108
114
173
95
125
110
76
130
87
129
131
106
82
108
157
110
158
120
95
98
116
147
125
113
141
177
98
59
54
135
107
96
77
113
80
135
102
113
74
119
165
88
90
78
132
98
95
125
103
154
82
97
159
88
74
125
160
126
157
81
147
125
120
95
117
136
141
165
103
49
119
130
146
108
96
124
131
54
133
134
107
108
106
49
106
82
106
127
122
77
93
145
125
110
87
149
122
133
144
94
87
119
120
54
122
94
120
103
105
98
116
139
126
163
148
101
102
122
143
137
133
128
133
122
127
158
135
106
138
110
104
99
123
145
102
173
78
149
91
115
81
133
104
154
86
108
74
141
102
135
74
125
106
68
110
65
84
123
143
135
123
92
87
133
144
118
96
125
122
74
142
144
122
139
140
54
125
105
102
123
98
123
140
102
135
87
122
87
158
99
160
105
123
156
91
155
111
133
107
128
92
100
120
99
147
117
102
115
125
82
159
81
98
137
137
81
118
170
156
108
96
78
103
99
142
127
120
69
100
126
109
141
148
59
68
106
94
148
127
92
54
170
108
107
95
113
81
112
132
161
123
162
82
146
96
117
101
106
150
134
120
94
119
119
126
131
126
104
98
81
87
76
141
121
81
87
151
132
96
144
127
61
103
148
108
54
122
106
124
83
87
113
88
126
119
95
93
147
85
137
87
200
106
140
158
106
93
113
142
68
92
194
103
135
106
103
118
95
87
122
77
106
105
157
102
77
108
117
59
93
132
146
193
106
85
148
77
90
74
96
112
92
103
132
111
90
100
124
82
116
95
145
54
95
95
102
98
68
135
87
92
77
130
148
97
80
126
113
125
120
103
158
129
161
150
108
92
88
93
140
93
110
49
90
127
134
177
107
80
113
141
148
112
76
96
76
138
114
139
91
154
49
81
94
123
150
108
145
131
125
94
96
109
74
102
120
74
108
108
131
102
132
102
148
130
99
82
95
97
177
54
128
133
59
85
118
133
133
133
112
162
158
80
105
107
103
122
123
129
108
84
113
133
139
154
123
139
81
54
140
87
105
126
101
87
96
164
121
108
89
91
127
123
78
146
113
188
123
85
49
156
147
141
113
81
153
128
193
80
160
120
110
144
81
116
124
102
112
121
108
81
67
103
103
101
130
131
97
84
54
100
71
106
108
111
150
76
54
134
117
95
79
111
89
139
142
123
100
93
161
205
87
116
158
59
132
158
93
54
123
96
95
128
136
102
160
112
67
97
87
139
171
143
126
76
115
129
115
54
94
54
105
114
145
139
95
113
95
82
168
122
126
100
59
54
109
108
78
177
80
102
102
127
119
147
132
49
81
108
111
128
88
98
102
74
96
149
115
87
115
67
102
121
103
122
125
54
108
82
167
81
85
106
83
147
83
138
154
112
148
83
110
165
139
74
153
74
148
112
54
87
131
108
134
139
78
122
87
160
113
143
148
144
110
120
95
113
131
149
127
105
104
124
95
49
126
114
117
99
83
87
150
111
128
103
105
54
54
146
80
67
93
83
102
80
98
138
171
69
87
88
88
91
91
125
87
137
102
97
103
162
122
147
86
98
155
102
148
87
154
59
82
120
108
105
87
86
102
135
157
108
109
111
120
135
165
97
121
49
70
116
98
167
121
107
83
108
113
135
108
124
108
108
110
123
77
177
159
157
107
122
138
108
107
121
119
59
117
124
136
92
94
117
125
105
90
143
143
180
148
149
148
102
115
95
98
99
106
111
135
114
149
102
133
135
167
112
95
120
142
76
116
128
120
49
85
140
105
118
143
98
76
150
81
95
85
67
106
147
116
118
108
70
78
81
92
167
122
68
188
118
99
98
145
135
98
49
165
129
103
107
116
115
146
91
147
141
100
99
123
102
96
98
145
98
154
137
128
110
103
149
112
133
54
102
90
59
128
89
145
117
154
125
98
102
129
115
99
74
96
118
180
106
113
98
132
105
114
88
128
123
80
117
143
101
99
133
156
101
124
142
148
172
108
130
82
122
54
112
68
137
82
97
74
140
91
139
102
78
91
114
132
98
100
119
152
132
123
110
142
86
116
77
123
95
69
113
108
109
127
81
93
132
95
100
115
114
142
129
109
54
127
110
130
104
129
104
125
126
105
118
113
112
87
125
108
153
127
80
97
128
153
61
126
133
147
90
54
108
95
148
126
104
120
157
90
111
111
90
123
123
119
156
114
78
120
98
159
145
113
123
143
185
99
62
146
119
195
127
108
122
140
115
142
108
130
152
161
105
103
103
111
98
88
155
150
89
74
98
92
148
87
95
161
81
140
94
100
188
169
93
90
98
167
139
85
131
88
145
106
112
49
65
125
169
122
92
127
126
113
102
118
71
74
77
133
54
162
90
153
118
131
54
92
100
117
140
115
165
95
74
127
126
82
120
163
101
146
149
82
95
77
166
97
102
119
102
102
165
81
109
121
54
137
117
83
73
84
165
123
129
108
105
112
105
169
74
72
130
95
98
126
101
148
54
98
158
119
94
93
72
115
92
122
54
84
114
80
85
144
74
76
140
114
140
87
103
108
76
116
169
137
102
125
81
96
130
82
79
127
104
113
148
172
108
108
113
81
113
138
87
153
85
92
121
91
128
54
150
103
77
172
127
97
147
103
113
118
97
54
183
102
110
141
169
93
95
95
110
130
59
98
119
108
126
209
160
110
131
125
83
49
54
85
93
161
102
133
104
103
166
96
106
103
102
112
170
86
103
118
146
80
102
98
102
101
115
86
103
114
95
93
180
125
122
133
100
124
147
148
119
112
102
115
142
54
95
101
90
84
80
158
108
92
150
76
151
83
107
82
83
166
119
77
101
105
174
108
103
97
54
135
83
108
116
116
146
95
117
110
148
133
123
87
149
54
107
107
100
127
119
59
164
59
138
59
140
108
103
157
178
120
126
105
74
67
127
139
118
129
132
137
122
129
146
87
112
121
172
155
76
97
69
101
190
108
108
111
74
80
128
81
116
127
150
107
140
123
94
104
120
148
59
95
69
192
61
87
88
85
96
159
121
77
73
98
93
116
125
158
177
135
141
98
163
104
82
123
101
113
102
136
115
151
137
140
97
80
156
108
142
119
76
143
120
63
124
77
74
100
162
129
151
54
158
103
123
110
125
83
108
87
151
154
49
107
99
120
119
152
161
83
123
134
131
127
134
137
148
120
101
121
97
127
139
124
124
124
87
161
133
90
132
138
112
153
107
78
54
117
200
183
139
140
74
125
147
77
138
104
100
83
87
138
105
84
134
120
108
49
96
190
133
129
129
93
82
133
54
101
98
119
130
74
147
102
119
98
137
150
54
95
90
128
87
89
87
115
141
148
92
106
120
81
87
87
102
141
161
136
61
83
101
111
153
149
157
98
102
138
139
160
123
102
90
79
133
108
106
81
86
78
106
71
118
106
129
144
97
111
143
105
115
117
94
114
147
59
146
87
156
125
54
85
102
143
54
123
99
121
148
127
95
118
110
126
149
102
148
172
95
108
107
98
134
105
144
107
139
141
81
84
201
133
156
98
102
149
104
124
132
133
111
133
95
99
135
100
45
73
94
161
100
121
99
123
54
113
108
54
77
125
95
143
121
180
97
124
115
134
61
144
96
108
163
125
185
97
77
82
82
131
54
95
110
96
107
83
96
150
59
102
125
96
159
114
161
142
120
59
90
89
122
104
81
78
84
74
193
103
69
89
137
177
108
134
91
122
161
99
144
93
139
136
105
128
134
163
124
95
127
126
91
160
131
96
158
82
128
59
103
113
77
138
126
154
146
134
91
76
69
108
112
140
156
99
89
77
95
89
76
61
54
102
81
95
129
114
125
129
86
116
102
89
130
100
100
133
140
117
144
127
119
120
93
102
108
54
152
112
81
95
114
69
142
98
108
137
141
163
144
93
76
122
137
85
108
54
138
144
120
132
135
99
78
67
131
113
103
155
131
108
177
67
95
161
114
54
74
91
98
93
133
97
154
95
73
118
136
95
171
134
132
103
82
108
146
129
122
54
109
132
138
146
107
96
149
165
115
87
98
110
139
76
83
96
103
166
198
110
165
119
102
156
81
167
98
95
108
107
114
78
127
124
92
117
119
108
106
93
157
90
112
98
92
139
108
128
139
94
115
139
95
68
129
82
107
179
76
103
100
138
191
131
122
125
134
81
103
111
104
160
146
98
108
81
124
106
150
194
107
102
77
84
106
157
59
121
91
116
157
93
141
129
135
79
156
135
152
144
97
83
95
112
67
54
81
156
156
123
148
118
106
102
138
104
179
87
140
120
99
87
93
98
110
158
145
98
95
129
76
125
123
88
83
110
135
137
95
138
104
92
105
78
68
82
138
123
118
145
108
103
153
148
76
102
81
138
120
177
96
134
101
159
100
143
81
131
91
98
158
102
103
143
112
188
131
69
80
162
133
148
110
106
144
115
113
81
117
144
97
159
141
181
124
108
145
123
107
95
125
123
116
122
122
144
81
118
115
140
129
76
142
119
158
135
112
81
116
108
98
113
107
120
87
126
98
100
82
90
73
61
94
108
103
80
86
103
162
109
92
98
90
156
129
103
72
68
113
74
136
102
153
83
108
124
148
81
141
109
98
77
133
123
87
89
108
85
152
142
109
83
108
167
92
78
111
162
123
163
108
76
81
116
49
116
97
95
83
118
108
104
143
100
131
90
103
95
138
102
108
172
138
59
154
87
103
80
135
135
144
139
54
121
87
152
151
167
134
118
131
108
156
163
145
213
99
90
131
67
150
108
117
100
122
81
54
100
137
83
105
118
133
90
124
99
106
127
96
144
54
69
130
150
59
109
115
133
119
54
134
113
74
110
137
133
128
150
54
133
54
132
158
102
105
98
82
74
140
83
108
130
105
102
124
177
87
67
74
89
140
96
129
88
106
87
145
108
139
154
102
84
109
112
102
102
86
98
137
140
121
160
59
89
120
141
86
93
110
95
141
135
113
150
108
93
121
54
113
97
105
93
96
162
87
144
108
96
110
158
83
131
101
98
103
107
102
167
117
118
128
115
118
138
67
85
98
116
170
108
168
67
151
103
122
151
132
135
113
131
133
103
54
148
133
102
101
121
95
108
49
125
116
154
95
116
143
148
90
108
152
81
114
90
135
140
143
97
112
149
91
135
121
131
102
90
144
129
198
100
120
156
200
144
136
167
127
113
95
87
178
95
134
133
104
98
100
104
160
131
175
146
178
143
59
98
115
110
114
199
149
113
150
104
102
161
130
147
125
166
113
158
128
122
101
108
126
76
83
144
129
96
127
67
74
165
133
54
98
99
133
125
150
148
95
101
54
151
143
149
168
124
54
163
128
125
155
135
54
136
131
141
127
144
102
192
93
116
133
78
119
81
82
94
73
113
158
137
118
123
78
173
73
120
193
96
124
132
82
155
117
124
148
83
54
150
49
140
59
108
102
152
83
85
54
139
49
107
162
138
129
118
163
113
132
49
78
102
115
93
115
81
132
125
91
61
106
68
127
194
162
105
116
155
116
117
74
150
132
87
129
132
120
81
82
76
116
111
74
94
85
133
150
118
102
117
125
127
117
82
129
67
144
158
114
108
148
96
153
142
67
122
100
90
102
144
141
77
107
129
142
146
110
81
143
137
83
148
102
130
116
158
140
82
76
180
91
101
124
130
149
157
67
100
49
82
115
82
82
114
114
93
87
117
145
92
175
108
113
126
163
108
113
124
122
107
74
112
164
76
90
108
105
125
86
101
146
78
69
88
106
119
103
59
92
95
93
158
152
106
91
87
88
95
133
95
119
72
121
80
125
138
102
128
54
102
190
113
146
105
127
74
112
108
78
105
118
106
107
106
90
191
118
143
146
49
200
116
95
140
49
161
161
102
134
115
115
139
133
81
145
111
92
68
96
113
150
82
106
112
97
130
121
161
147
125
98
49
102
54
116
118
164
140
181
150
103
95
151
67
54
127
91
108
93
106
85
118
77
141
109
98
133
76
49
135
141
113
96
98
96
172
108
67
76
148
90
131
129
106
135
149
93
95
120
135
162
113
122
106
73
140
122
116
98
105
77
117
74
147
90
128
136
141
119
118
139
126
74
103
96
108
133
108
141
138
113
107
112
74
109
49
156
113
83
141
78
59
98
182
120
116
96
95
100
148
101
128
118
95
111
99
133
145
105
54
87
94
177
176
129
98
54
141
100
101
131
76
122
128
154
104
77
132
95
179
120
79
78
98
130
108
132
143
120
78
150
87
116
87
101
132
54
107
108
125
82
81
91
128
160
122
95
162
133
92
54
144
90
59
106
112
113
140
95
99
102
135
111
150
108
122
122
100
49
127
102
114
106
102
81
108
108
106
91
148
111
113
93
113
125
84
102
54
153
81
159
107
134
102
110
89
139
83
132
112
121
144
137
103
148
93
120
97
133
126
136
103
103
125
92
80
76
77
94
177
133
105
104
134
93
95
143
77
139
145
70
106
116
133
124
128
105
90
120
120
162
102
99
155
81
125
133
95
126
161
139
54
101
88
54
129
170
123
72
132
98
81
106
93
98
100
87
69
49
144
45
127
91
140
174
125
129
93
93
68
87
96
140
97
102
97
121
119
82
98
108
164
129
84
158
69
122
89
139
103
103
120
138
146
144
54
128
172
94
127
119
108
94
133
74
141
116
98
160
112
77
117
122
125
49
74
147
126
127
96
88
157
183
108
165
106
88
54
83
141
100
118
62
125
105
93
118
103
114
104
114
125
131
126
105
89
98
115
76
98
175
81
76
74
97
154
161
144
123
140
91
108
122
145
113
202
104
95
87
101
105
134
104
68
90
102
99
95
102
148
113
154
129
121
135
95
118
88
122
54
114
145
119
147
124
78
126
121
143
143
102
102
94
115
134
101
162
112
113
165
90
68
93
95
179
200
168
127
112
128
111
177
105
54
132
91
96
98
106
164
95
101
155
59
128
54
146
142
86
105
93
104
94
108
130
102
158
115
177
96
114
76
108
81
108
120
110
134
131
115
87
153
122
125
104
168
167
108
102
113
150
102
81
132
95
177
141
104
145
142
89
132
95
139
125
81
131
81
124
93
142
94
96
100
139
142
54
95
49
95
118
146
98
98
131
140
166
87
123
97
74
125
153
88
84
144
82
129
158
73
142
110
109
134
127
95
194
143
96
131
116
93
154
93
92
104
122
133
79
130
90
159
140
112
87
82
106
87
120
124
186
100
110
166
87
102
107
157
112
107
139
93
95
98
100
140
118
132
96
180
149
126
79
103
140
119
91
121
140
76
116
194
99
89
89
130
114
105
75
86
95
139
146
97
175
95
178
124
142
156
124
138
145
113
95
138
156
129
113
108
153
126
132
130
61
125
120
106
76
99
72
112
118
125
116
61
88
100
120
145
109
143
149
128
122
97
140
108
140
49
111
110
139
110
102
94
118
49
138
93
128
98
99
110
110
100
135
104
125
110
118
151
102
103
112
110
131
120
104
98
111
126
105
84
135
122
82
147
170
116
155
113
148
59
49
82
125
103
153
129
96
129
98
144
102
98
102
54
152
111
184
100
128
117
152
111
95
97
165
116
126
147
86
103
91
130
102
146
117
90
54
97
91
77
102
123
154
103
138
102
200
105
107
49
143
125
121
113
134
69
95
141
77
121
49
144
49
77
105
141
83
172
92
95
126
143
59
86
145
152
91
69
122
123
95
158
128
127
139
106
85
102
103
95
54
110
122
181
148
105
158
116
108
54
59
116
90
160
130
145
151
161
54
104
147
132
131
61
122
105
118
97
139
127
127
99
110
113
126
125
103
93
165
125
76
104
112
95
115
54
97
98
57
95
179
94
129
109
103
90
127
82
117
108
106
114
81
137
95
173
164
67
130
120
91
190
76
98
113
134
108
81
70
127
54
108
146
113
54
67
102
91
143
120
119
54
125
115
76
110
94
143
129
113
141
120
107
106
85
151
88
134
147
119
145
82
114
77
96
96
116
180
119
146
143
115
102
138
59
59
120
59
97
135
118
128
74
163
131
102
79
108
102
96
130
120
54
138
87
130
102
91
102
159
102
119
125
148
83
170
128
105
59
128
149
74
108
83
154
119
71
76
108
49
99
134
129
119
135
121
76
115
49
124
135
98
133
124
92
87
87
167
160
49
116
90
106
127
103
105
94
74
102
163
95
87
154
121
90
139
122
59
67
113
97
129
148
61
102
87
108
117
101
188
131
85
126
106
54
113
137
115
175
145
128
85
144
54
146
112
145
93
109
116
139
105
137
83
148
102
108
127
61
76
125
112
98
145
114
98
95
128
82
160
125
98
189
87
109
226
169
151
171
156
143
62
118
54
54
110
59
108
158
143
82
103
114
108
127
166
143
102
77
90
105
89
97
49
107
139
130
107
112
124
99
84
125
148
91
134
87
70
101
108
54
54
167
59
112
200
96
98
158
91
125
93
104
111
132
107
91
98
155
106
109
108
96
127
155
154
61
87
61
91
99
133
164
138
91
110
108
78
157
92
77
93
87
54
101
118
97
117
85
95
113
116
76
184
89
74
88
102
102
119
127
110
116
112
95
109
83
133
134
117
98
136
102
106
115
141
108
87
113
117
54
135
132
145
156
139
101
95
67
104
103
104
81
143
151
139
120
125
115
183
81
158
102
102
114
97
76
122
137
99
93
77
116
68
108
125
76
127
110
131
105
98
129
128
80
125
93
108
130
77
78
133
170
76
122
121
118
110
87
194
131
99
106
141
140
102
190
103
94
204
135
127
179
81
150
122
110
119
102
102
120
103
147
129
95
98
113
126
113
107
92
118
101
82
121
127
130
85
98
108
125
80
102
76
130
140
106
88
104
122
107
130
114
101
87
49
124
113
161
100
110
135
190
148
157
114
182
113
76
105
156
108
114
97
137
135
105
116
148
160
105
102
104
148
130
88
94
145
98
91
122
76
102
112
100
123
130
115
117
61
89
67
114
99
129
112
145
140
153
105
128
107
116
83
59
188
102
127
101
90
95
111
143
144
112
144
81
152
134
187
99
97
93
106
102
120
83
118
133
101
139
108
54
108
116
147
109
91
134
115
117
137
138
54
83
135
104
153
160
87
85
102
89
129
84
161
54
128
144
144
148
119
141
110
122
102
99
125
144
49
54
120
122
106
117
105
103
85
98
125
128
83
98
125
83
83
112
154
112
108
132
122
136
127
116
126
98
102
177
111
128
144
98
122
115
77
128
95
129
67
131
100
148
54
112
128
122
102
102
82
97
103
113
170
78
103
103
140
140
90
125
128
54
82
102
110
128
143
133
125
101
115
74
122
98
98
112
145
113
103
146
74
124
59
107
96
126
68
99
103
101
102
172
139
125
65
100
165
156
79
114
98
78
97
130
178
143
118
95
97
115
106
108
183
68
82
121
103
112
108
139
138
101
54
109
74
161
111
123
131
113
83
102
82
92
153
127
155
108
78
177
107
163
127
126
160
54
143
113
119
102
96
81
135
127
69
115
115
102
181
135
54
133
135
76
165
147
95
171
95
128
161
97
158
128
104
97
77
106
158
81
125
79
132
77
127
102
148
117
89
102
95
118
103
196
127
74
84
127
120
96
98
125
93
177
82
107
93
98
115
141
111
116
139
137
89
98
123
185
102
87
96
97
78
160
158
54
101
54
117
157
99
82
123
177
81
129
74
129
106
119
110
54
74
137
165
110
113
165
108
165
90
154
107
191
118
119
100
89
138
108
110
144
120
167
143
179
112
54
102
108
108
106
105
102
143
141
112
124
107
143
95
106
108
109
139
99
117
49
67
96
148
140
138
94
108
96
156
124
169
185
128
72
118
148
95
127
137
163
108
54
98
122
98
153
83
54
101
175
140
108
162
129
77
148
142
116
144
149
61
95
95
104
74
141
113
89
112
113
73
147
175
170
140
105
93
124
84
143
147
131
172
78
137
133
76
108
88
78
94
172
89
144
167
127
95
103
116
159
93
122
133
108
89
131
95
114
156
160
139
108
54
131
83
115
104
182
49
148
73
119
142
160
49
103
116
90
108
116
103
111
132
104
110
87
128
107
82
90
200
131
143
118
143
61
132
90
54
133
173
116
99
125
128
92
95
206
157
100
85
68
132
149
93
100
112
124
113
145
130
125
154
123
81
131
105
125
156
135
143
77
112
98
124
128
94
126
95
85
94
91
54
111
131
165
103
91
73
138
105
105
93
127
95
95
137
54
81
112
158
193
49
94
89
87
120
120
78
115
135
143
143
117
102
131
73
135
124
119
93
127
113
98
103
108
102
108
113
153
74
120
122
95
120
126
108
99
95
87
113
132
80
163
81
141
169
126
81
157
84
87
135
119
85
85
127
95
163
80
102
77
130
127
81
137
125
133
123
95
115
145
92
54
74
148
122
133
90
125
147
126
99
164
100
99
107
140
77
103
146
129
144
49
177
77
124
91
153
160
102
102
134
98
135
125
127
88
131
116
95
125
122
102
78
76
143
88
124
148
76
98
102
87
85
97
54
134
151
124
78
139
141
159
128
49
59
103
85
109
156
112
142
117
148
135
133
127
113
74
98
118
164
126
115
135
124
161
54
78
123
103
54
96
128
109
133
140
61
83
49
121
140
59
85
98
106
165
125
147
214
90
54
159
95
81
87
140
79
96
87
76
102
116
95
98
90
134
132
151
83
144
102
113
141
108
117
204
111
79
95
192
106
99
161
83
126
148
88
110
130
123
102
95
139
104
143
74
136
54
90
87
134
142
96
148
128
98
81
125
102
110
182
132
54
147
124
106
74
148
81
120
57
116
91
90
49
142
102
149
127
111
83
102
148
128
59
149
62
177
156
108
73
106
110
113
108
129
177
147
161
137
82
78
158
103
148
131
160
110
123
115
123
106
120
84
76
145
133
137
131
95
108
82
133
179
113
122
112
109
102
170
134
106
137
115
159
140
73
95
76
129
108
76
54
101
59
129
61
102
72
143
49
54
165
146
114
103
81
169
98
49
68
110
180
54
113
168
59
99
142
121
126
127
176
118
84
116
112
120
81
54
106
59
87
98
77
76
177
108
81
122
59
125
182
126
102
113
144
79
131
97
99
102
83
87
132
157
49
81
134
110
122
132
135
126
95
80
90
105
113
125
87
103
102
103
143
101
78
107
74
111
129
157
146
149
93
121
103
163
108
112
125
125
154
102
107
180
131
153
110
82
180
122
180
99
103
54
91
133
118
146
142
76
82
108
102
118
118
108
97
118
54
111
145
116
150
148
122
95
129
151
141
81
117
129
117
141
133
145
95
96
104
81
143
139
125
153
135
133
95
100
59
87
159
114
78
117
177
99
145
147
137
54
54
125
149
69
68
68
113
119
147
146
87
93
189
114
124
140
103
144
125
88
142
128
158
205
83
133
143
177
148
148
102
103
149
93
149
129
113
123
144
98
127
105
105
136
93
158
138
133
125
54
166
139
97
54
111
98
118
59
132
179
96
54
82
54
106
125
139
120
122
95
113
151
147
113
128
76
145
140
120
137
125
95
59
76
131
82
96
125
114
139
130
124
175
67
121
74
82
139
151
111
122
129
133
95
92
143
122
109
119
102
150
145
45
128
145
143
81
106
82
54
81
135
111
110
163
104
84
94
90
129
140
106
76
120
123
97
130
146
113
113
145
114
102
74
74
100
139
125
145
125
113
67
148
125
118
128
98
49
89
138
117
96
81
98
89
168
113
122
131
167
127
106
115
140
158
113
177
105
87
99
108
119
73
112
54
100
93
145
156
108
131
111
116
111
95
129
90
75
54
151
49
108
54
136
74
102
105
97
132
69
124
107
117
115
98
107
90
123
129
105
110
54
151
49
101
165
131
90
98
108
96
82
130
224
103
99
135
119
159
115
148
155
144
111
124
115
115
200
87
95
90
103
116
153
108
108
96
95
110
194
100
94
100
98
153
79
119
85
102
85
123
97
115
80
110
164
107
142
165
128
104
76
131
161
121
103
99
90
147
49
171
148
109
87
118
141
115
54
102
145
130
149
116
113
104
116
100
81
67
95
115
147
129
68
101
87
126
143
119
159
78
114
103
125
87
104
143
138
144
174
78
129
84
96
147
138
104
95
113
80
131
120
108
120
158
102
125
125
145
146
118
143
95
116
54
103
126
74
99
151
146
100
78
59
117
139
120
61
138
105
86
107
128
85
104
113
132
180
111
121
156
135
125
77
138
103
128
128
128
125
150
130
87
81
133
81
146
131
113
145
90
93
122
125
78
128
102
98
163
81
107
180
81
143
96
82
109
54
125
108
102
98
87
114
143
99
154
124
146
106
140
83
92
137
131
129
59
119
139
132
108
142
78
140
49
108
82
91
125
134
123
125
143
100
117
105
117
141
108
99
135
115
140
54
119
113
143
122
98
93
133
67
75
80
59
93
67
124
124
113
81
98
139
115
115
87
113
77
74
83
131
114
157
162
146
108
80
49
98
95
148
81
112
98
106
161
175
86
125
135
74
95
94
140
127
69
145
134
72
87
97
109
54
153
123
129
123
99
168
93
137
49
105
91
83
128
110
125
98
140
108
49
106
121
120
90
93
78
123
54
128
77
85
89
68
129
159
82
82
68
113
135
99
140
129
77
134
112
112
102
74
128
134
125
113
96
99
137
128
109
87
173
103
157
54
112
96
147
98
101
98
113
103
119
102
106
101
73
165
54
113
193
160
96
95
139
100
54
157
153
136
160
128
133
82
116
128
143
92
123
115
81
105
125
154
109
167
102
129
102
141
95
201
181
127
115
120
81
101
128
87
76
144
76
103
117
112
97
131
129
97
120
114
105
74
103
100
61
61
131
108
121
123
96
110
95
129
139
102
125
125
161
115
141
103
84
93
171
74
129
153
74
85
116
135
159
116
114
89
102
112
54
95
152
102
160
128
190
127
154
97
87
131
108
133
80
102
96
150
121
128
112
103
120
88
107
135
135
133
135
90
82
93
139
128
133
143
105
144
82
102
95
142
133
166
142
54
81
139
93
115
94
90
74
80
92
158
81
112
114
90
98
103
73
135
165
109
119
85
97
118
113
148
105
102
88
142
81
121
87
135
106
128
125
139
143
95
159
175
116
119
144
115
83
131
127
171
167
54
113
127
103
89
104
90
125
122
128
128
161
95
81
106
85
54
160
191
96
133
133
152
148
81
145
106
168
149
90
87
90
107
165
167
101
146
113
144
91
140
80
104
122
124
93
104
164
108
102
177
127
137
74
141
101
108
130
54
113
138
127
159
97
102
145
113
98
140
146
102
131
105
74
124
153
130
129
112
49
95
154
138
88
158
81
133
108
139
102
105
113
91
128
75
115
159
175
103
155
133
160
128
143
180
74
94
113
81
82
121
145
146
108
90
49
173
90
154
114
123
134
135
77
99
65
152
78
159
89
74
54
226
98
109
93
134
187
83
174
81
97
102
147
98
137
141
141
135
122
141
135
78
81
102
160
123
59
102
123
54
120
80
161
54
67
162
108
108
95
141
213
100
77
143
144
87
142
105
131
155
87
98
108
87
180
114
135
99
131
77
133
98
95
101
119
136
135
81
54
49
128
124
106
94
109
94
59
136
102
137
122
150
125
108
114
168
80
67
126
103
116
54
124
135
91
115
94
158
81
108
135
139
103
125
90
158
133
109
74
103
85
143
114
129
76
84
107
118
103
114
196
49
131
95
95
126
135
90
143
108
81
125
49
147
61
90
112
137
111
87
152
163
119
100
103
98
117
77
103
137
129
100
147
122
85
98
146
119
108
85
120
136
102
131
124
139
136
102
139
61
116
42
98
98
120
141
128
90
114
112
115
142
54
100
110
143
101
74
158
59
88
78
115
85
135
110
135
105
150
168
112
138
122
120
54
105
135
116
119
144
140
101
108
125
101
119
102
95
158
158
128
121
120
98
87
94
120
78
49
103
98
78
54
177
142
107
114
120
133
135
107
165
140
136
139
119
158
102
132
165
97
133
113
167
125
111
133
107
77
115
155
139
90
113
49
180
139
101
83
161
97
140
141
82
144
130
87
169
74
145
108
103
158
122
54
128
142
125
131
116
67
83
179
54
106
101
144
139
87
102
81
149
102
103
98
153
149
148
102
103
110
124
111
96
108
185
140
68
155
104
155
80
131
145
123
61
177
54
90
128
153
113
147
121
129
104
91
61
93
148
142
81
59
82
128
117
124
135
95
115
149
125
124
90
122
105
102
87
78
160
103
149
134
86
116
49
114
116
90
132
170
118
104
125
122
103
89
122
75
180
61
110
111
84
123
102
93
109
110
119
90
90
120
145
121
128
85
169
88
97
131
95
115
135
176
108
49
108
54
90
100
148
95
160
131
140
132
93
148
98
131
96
70
123
101
115
85
94
82
78
70
88
102
119
96
59
107
126
130
116
145
108
94
103
146
140
146
134
108
116
158
77
186
167
125
123
85
54
121
78
137
101
90
139
125
158
162
95
83
95
103
113
87
119
82
133
149
123
113
115
139
108
148
123
108
131
177
105
102
96
111
118
90
174
139
141
148
151
128
79
89
102
90
87
141
182
104
153
83
129
108
133
102
109
125
108
121
149
102
102
115
88
125
122
89
117
116
131
128
100
142
120
115
144
130
108
54
102
102
129
106
155
100
143
112
100
82
117
59
103
100
94
90
100
82
148
103
73
125
103
206
124
106
97
113
144
119
134
104
131
59
118
108
145
67
125
67
180
49
121
101
148
130
137
123
83
141
128
148
120
113
127
105
115
205
123
87
80
169
80
59
91
122
95
122
97
116
108
100
153
133
77
77
183
178
137
109
49
88
100
158
165
49
108
102
111
138
114
108
111
112
105
137
95
95
155
153
102
87
101
102
185
146
131
102
177
100
156
122
144
136
90
165
124
135
74
108
67
106
133
54
177
87
77
95
139
101
123
151
76
67
98
121
131
69
123
98
95
137
115
54
99
123
127
159
95
90
136
89
135
74
78
80
103
144
106
145
113
102
133
136
155
151
49
91
134
129
128
148
68
152
115
108
141
120
82
148
90
148
113
129
133
114
144
94
85
81
91
162
97
121
119
108
54
106
148
146
139
110
140
151
114
183
103
159
159
77
100
135
74
140
114
143
106
109
90
82
115
108
135
148
125
159
169
102
72
49
140
135
49
112
109
102
116
67
103
69
125
68
95
102
78
107
98
108
116
133
102
99
93
95
98
120
156
163
90
78
117
107
49
128
107
120
127
87
118
115
156
109
108
118
54
91
129
54
131
139
54
145
93
119
157
108
153
127
107
102
61
186
107
160
116
59
129
130
161
98
158
116
54
77
112
158
127
101
111
102
107
74
111
87
84
109
54
105
105
96
107
144
165
132
131
135
119
172
238
150
71
142
121
76
113
129
116
107
115
125
86
149
73
78
135
139
123
124
138
102
115
169
126
54
150
76
113
118
107
91
120
102
97
95
95
100
146
95
148
165
101
131
139
100
59
54
144
49
95
148
105
93
148
165
132
147
115
148
59
145
158
112
90
157
146
139
107
160
87
144
67
103
145
82
150
136
85
160
146
82
129
81
145
152
87
107
128
125
108
134
81
93
49
96
102
78
61
108
108
142
173
106
184
127
115
140
137
102
149
76
87
100
160
127
81
127
96
95
69
95
130
114
98
96
74
98
157
166
155
131
92
89
107
157
155
127
74
83
79
135
186
80
81
54
119
112
93
125
107
110
90
117
113
94
107
103
157
83
108
81
54
76
124
110
106
103
119
154
113
128
95
141
127
54
98
98
102
74
90
124
103
153
97
113
80
102
161
84
124
97
108
147
154
152
125
128
96
90
156
90
138
205
75
102
107
134
177
98
95
77
157
111
105
108
142
139
146
73
104
103
116
139
139
108
95
101
163
108
116
134
54
102
54
124
74
54
96
158
147
113
145
42
102
98
161
127
98
54
102
130
137
68
116
54
165
151
191
177
118
128
132
135
139
97
122
134
128
96
139
119
108
87
165
100
103
192
156
177
131
117
123
102
114
148
158
119
128
147
82
108
150
160
74
84
102
103
77
200
142
122
115
157
131
169
144
108
107
82
104
54
131
110
95
59
93
131
113
85
136
95
127
113
85
73
83
194
109
77
177
112
119
144
59
68
94
59
93
145
102
67
105
82
154
137
77
106
144
159
113
94
54
153
132
148
104
108
89
149
158
171
116
95
83
82
158
122
139
107
108
67
107
80
134
77
109
131
118
97
77
117
145
105
76
93
61
146
96
123
128
81
128
113
156
69
54
122
131
113
108
171
118
107
102
123
165
141
81
154
127
139
133
140
156
98
84
123
61
158
135
110
98
212
105
121
76
110
96
54
82
83
151
92
97
103
109
138
95
77
102
119
87
93
95
129
107
117
92
116
179
74
95
147
118
128
79
127
101
54
123
108
140
194
100
106
97
83
100
194
98
128
107
128
141
83
121
123
76
149
133
141
68
153
108
101
155
108
90
132
85
145
126
100
148
124
113
93
120
126
122
114
90
59
189
133
76
129
115
144
158
134
76
152
129
124
125
125
127
93
108
98
148
102
141
49
122
109
67
82
107
133
113
121
54
86
99
103
155
109
142
87
113
147
109
107
84
169
127
126
165
154
95
124
77
49
54
106
87
127
49
54
108
113
129
87
128
133
54
134
82
148
82
106
89
80
113
111
122
84
70
113
76
131
99
140
54
108
140
113
102
106
108
143
108
93
93
110
81
129
117
79
118
120
154
95
67
115
147
121
108
138
95
104
105
104
90
102
95
87
87
144
223
77
105
123
108
155
54
59
123
146
171
77
140
127
154
113
93
102
149
74
142
133
105
145
161
93
127
81
97
167
85
98
93
105
77
124
95
83
77
93
82
140
100
141
119
98
81
106
142
100
113
99
67
79
113
155
93
100
113
115
78
118
90
96
104
104
134
136
134
103
97
86
76
143
91
49
149
109
93
154
63
120
108
113
54
108
161
139
95
119
98
98
133
77
108
97
125
68
106
108
77
144
147
131
160
108
78
135
138
140
81
101
125
100
76
92
80
112
146
105
82
74
107
119
96
108
127
104
104
107
108
90
147
90
95
85
67
81
95
77
124
107
95
124
110
95
69
61
81
102
127
123
70
95
105
98
102
83
101
98
84
142
101
95
101
123
186
132
67
135
160
113
134
133
61
84
170
113
125
90
96
76
70
140
113
107
133
135
92
122
99
112
95
145
102
115
113
145
102
143
143
102
102
118
135
97
120
100
81
113
77
80
78
101
128
59
138
90
134
137
120
102
96
78
100
81
136
138
125
181
83
144
153
155
181
68
116
102
122
85
119
81
111
92
102
156
74
112
109
143
122
102
91
98
67
146
125
111
112
131
81
206
74
112
102
107
108
76
127
127
103
128
87
90
110
139
127
151
95
115
155
147
105
106
86
112
134
95
155
82
108
143
88
82
49
123
77
129
109
87
128
164
120
120
151
139
118
116
125
74
105
113
81
143
108
112
93
105
117
107
124
106
148
81
111
158
82
54
106
97
112
174
136
112
108
138
76
141
124
177
115
49
155
186
102
143
99
105
117
140
153
102
133
87
104
95
144
91
98
144
154
102
138
113
179
161
78
119
178
151
76
81
132
129
108
133
149
54
118
103
144
54
98
105
147
83
94
143
120
139
144
164
129
134
115
125
127
91
105
143
85
108
113
113
78
93
111
83
166
97
118
150
163
146
124
117
97
110
113
102
145
157
96
98
120
116
112
59
117
142
77
113
103
182
76
82
82
108
153
114
171
119
83
182
115
91
78
96
129
103
116
110
114
137
93
101
103
116
90
141
126
102
131
127
177
106
82
92
105
145
94
155
109
148
108
102
76
128
97
61
96
141
98
103
98
138
68
106
82
134
102
177
82
158
127
162
142
132
120
107
87
87
205
155
95
109
105
104
102
103
119
152
120
145
167
109
81
125
122
114
104
114
101
130
159
109
102
54
97
184
108
155
103
143
96
109
79
98
81
85
116
144
105
137
108
103
137
116
145
123
119
176
129
128
95
103
81
90
153
166
98
148
102
125
80
155
119
124
144
134
105
108
95
98
130
93
54
107
102
111
121
118
112
111
68
68
111
114
118
81
45
73
129
105
176
146
99
95
117
143
113
181
128
102
134
103
74
169
116
96
129
90
133
122
89
93
73
103
147
102
125
146
122
104
112
125
87
90
108
73
164
49
103
148
172
113
169
98
112
103
116
182
107
101
157
103
175
122
95
77
159
144
135
116
87
125
161
135
108
113
144
182
98
160
108
119
127
95
123
105
110
98
93
182
84
134
160
94
119
114
61
110
143
136
74
148
95
129
108
106
167
89
161
177
101
93
102
114
115
102
115
100
159
59
108
90
78
108
54
115
95
153
125
139
132
106
142
98
102
158
113
123
108
96
96
107
148
93
139
82
128
98
105
103
85
78
124
121
104
87
88
113
113
121
111
110
59
122
110
110
100
117
133
112
91
120
108
122
110
115
154
142
168
54
115
113
104
90
110
173
102
155
119
105
134
111
54
140
156
80
113
137
74
132
101
120
157
115
120
49
134
125
141
54
177
78
143
108
102
87
93
106
155
106
127
96
135
72
158
129
106
108
116
114
69
142
163
144
128
133
54
131
134
125
96
54
102
107
137
77
180
77
111
70
144
95
113
95
67
135
152
81
95
85
108
105
112
79
127
97
92
103
204
130
108
103
156
109
99
93
108
125
128
113
90
54
165
128
184
85
128
135
148
102
150
160
122
139
108
104
139
161
122
100
98
95
134
123
135
86
149
110
106
102
96
102
88
126
145
111
95
100
155
87
129
74
96
122
145
147
86
100
93
128
106
120
83
135
120
102
95
99
125
119
78
170
113
111
54
82
95
159
127
161
149
159
179
121
76
133
113
83
85
115
109
54
175
76
151
67
98
98
79
107
155
54
119
132
101
84
107
49
119
125
139
95
81
90
135
115
113
83
128
148
142
154
160
134
96
59
141
128
131
177
81
129
146
117
130
114
151
97
92
135
108
90
118
100
123
153
91
122
83
117
114
93
138
134
77
91
110
125
106
98
128
102
137
108
113
133
61
119
87
93
131
165
77
135
95
102
86
100
144
105
128
93
138
152
85
107
191
125
130
80
105
148
150
160
95
108
127
108
125
151
167
141
103
131
150
117
81
115
78
123
125
123
125
93
125
54
54
123
141
85
103
114
127
173
107
132
101
98
199
93
106
128
129
143
93
144
141
106
120
87
88
108
164
95
148
81
111
211
98
101
206
81
90
100
144
92
75
117
74
92
142
131
59
127
139
104
103
115
79
98
100
171
108
110
123
62
97
102
74
105
102
86
87
108
108
109
117
151
136
122
140
61
109
155
102
95
175
166
98
186
145
123
110
120
94
165
103
112
139
86
125
110
157
91
100
138
133
87
141
103
81
81
161
68
111
102
135
116
152
83
95
96
78
140
107
85
102
113
152
136
126
117
166
107
113
148
49
118
111
142
54
122
127
125
128
110
177
102
167
94
78
147
137
146
141
144
54
95
104
90
143
89
102
95
128
119
124
145
95
123
80
117
118
97
107
108
167
173
108
108
82
142
143
96
133
98
67
154
155
108
117
154
141
107
104
144
158
152
95
94
105
151
135
91
104
164
101
125
129
153
154
180
133
101
133
125
90
164
129
81
87
111
185
88
102
100
136
102
189
148
155
124
82
59
150
108
49
96
89
81
142
121
158
118
105
89
115
87
108
54
131
91
90
137
87
155
143
74
101
108
87
95
127
139
134
95
90
140
97
117
99
156
114
116
131
92
103
148
104
105
80
128
108
94
116
115
96
140
83
74
104
127
118
174
98
77
120
67
104
130
117
147
172
133
119
103
73
91
116
120
117
119
101
129
133
54
132
102
108
102
80
120
84
108
129
113
106
80
49
170
115
98
125
113
101
135
125
54
98
101
170
76
138
113
87
158
95
104
158
102
181
98
144
135
115
160
108
144
143
125
179
129
130
91
159
113
94
92
135
105
96
108
140
120
190
102
154
103
115
173
160
131
85
99
54
122
120
149
122
80
113
54
121
100
132
128
99
87
103
54
59
80
131
144
83
104
191
126
90
85
81
81
141
98
118
128
167
169
71
67
118
137
152
90
143
117
121
82
89
103
131
105
129
82
77
103
169
122
157
93
59
156
100
119
78
130
110
103
114
96
103
98
95
124
142
116
145
108
153
98
155
102
146
124
108
128
77
102
115
91
98
108
108
87
123
65
74
54
102
69
148
125
170
133
108
136
114
114
148
127
139
76
126
101
165
90
112
94
95
154
83
106
141
105
168
165
110
108
122
161
83
143
76
132
90
118
115
109
104
111
74
98
100
158
119
128
155
87
54
113
108
133
88
158
108
135
98
126
95
148
77
110
113
173
143
108
95
148
102
49
74
83
111
127
113
77
133
98
157
129
154
82
115
141
128
144
156
95
125
103
173
80
127
59
76
104
95
81
136
124
95
100
120
137
111
102
130
126
83
100
72
95
74
103
93
77
141
153
135
124
134
117
76
105
81
70
129
134
74
124
186
131
123
143
180
100
97
127
121
54
88
68
120
128
110
150
121
117
151
127
88
101
115
100
82
84
113
100
108
115
149
98
114
128
127
107
132
111
107
80
93
136
108
107
120
97
113
140
165
108
81
113
49
140
100
93
116
164
149
116
162
108
146
97
105
104
153
119
131
110
108
110
120
132
113
67
121
133
116
160
158
113
79
99
133
107
143
103
59
134
143
95
74
108
129
122
133
95
126
61
97
98
120
93
151
114
144
54
115
74
149
141
96
93
100
90
140
97
112
87
89
138
104
84
128
119
108
115
149
158
134
107
54
120
108
77
72
98
104
54
177
81
149
149
153
113
95
127
76
108
127
145
140
106
79
82
98
78
149
87
76
104
149
125
98
101
139
89
70
122
153
94
88
119
96
123
90
113
125
108
95
89
162
69
129
148
137
125
93
135
131
54
100
98
125
114
129
140
133
142
138
154
142
144
161
135
153
107
103
132
110
168
127
122
157
118
91
117
146
95
96
143
131
92
54
165
133
108
120
123
131
97
191
67
125
85
139
180
115
157
98
138
149
118
92
86
49
103
131
190
143
189
104
77
101
143
102
177
115
102
54
116
116
49
74
148
145
98
91
115
76
109
133
95
139
133
120
96
128
102
167
129
105
61
121
128
77
98
131
95
89
100
114
108
165
170
77
102
98
81
119
182
76
127
140
89
107
139
105
81
141
144
129
113
102
109
77
124
148
155
91
108
115
102
70
85
97
144
103
113
98
94
87
131
100
114
120
103
104
140
106
87
140
130
103
135
98
129
123
114
139
95
125
95
73
98
93
108
151
135
105
93
93
102
54
74
121
158
93
83
123
127
148
185
88
96
74
145
103
54
139
106
113
105
93
125
108
147
106
188
95
118
160
90
125
102
123
99
120
131
105
49
105
103
136
177
114
112
54
122
180
120
106
105
94
72
172
98
120
104
95
112
128
99
98
90
135
105
102
118
54
80
135
165
107
82
117
97
120
79
116
156
95
144
108
82
160
127
106
158
128
148
83
148
87
95
136
135
78
111
155
122
126
143
78
109
113
123
135
126
159
97
84
170
96
90
92
97
152
74
98
134
81
95
108
101
122
69
83
114
119
113
80
128
80
62
98
97
115
149
81
101
130
105
179
110
103
107
124
136
152
131
169
87
54
123
80
49
136
54
103
67
87
148
167
143
148
105
133
84
108
130
132
165
124
141
130
99
108
133
107
133
133
140
80
49
147
78
121
178
87
127
206
122
117
81
109
123
136
113
214
111
148
90
98
95
139
143
125
105
137
144
95
132
120
78
115
102
125
138
158
107
108
74
106
81
102
115
102
87
101
151
139
142
102
82
105
147
106
146
145
109
103
100
128
112
175
179
125
145
151
99
199
127
157
76
80
96
96
133
136
110
76
49
98
126
76
111
107
98
102
131
129
102
141
108
105
148
142
163
143
129
112
115
115
102
49
104
93
158
68
98
96
131
87
112
87
120
49
106
102
129
102
134
108
108
111
108
139
142
103
134
152
148
128
152
135
127
105
102
177
67
74
106
82
68
122
112
102
78
156
116
54
167
115
126
73
125
139
202
152
108
90
92
89
108
108
106
117
144
143
49
143
98
131
54
98
106
81
105
120
74
102
128
72
90
142
104
155
157
98
141
108
85
59
61
97
115
157
161
108
96
103
93
115
95
113
82
98
87
128
148
202
110
59
90
74
125
102
131
127
113
121
149
108
122
82
69
76
69
157
94
118
137
115
160
110
113
114
131
128
105
129
97
76
95
156
118
49
125
131
125
185
103
125
130
139
99
115
113
81
116
148
59
122
77
104
127
144
139
76
131
95
143
108
90
121
165
190
110
149
102
145
177
91
135
143
121
157
128
188
94
61
93
119
87
102
109
103
74
83
194
115
54
103
117
152
96
125
163
108
128
135
141
95
108
148
54
124
103
128
95
74
78
102
133
145
148
83
108
59
148
98
120
102
87
118
54
102
108
143
96
135
116
129
81
125
116
136
193
113
90
109
95
165
74
151
134
108
99
95
69
107
158
81
86
129
147
95
143
103
98
98
126
69
114
123
141
90
134
100
146
87
118
131
95
81
172
102
107
59
128
127
147
125
112
95
134
176
103
149
110
82
132
95
112
110
158
137
85
125
102
108
131
90
170
95
167
113
151
89
139
115
105
108
108
109
76
125
123
107
106
103
89
111
77
106
108
91
54
112
91
112
81
134
111
78
49
49
116
180
167
54
95
138
113
94
108
138
109
102
129
143
127
96
54
108
111
95
101
163
140
80
54
83
94
191
102
123
128
67
113
54
144
109
177
109
105
131
105
145
164
121
131
98
49
108
107
69
95
136
119
99
54
91
107
200
128
131
76
131
96
188
108
72
139
163
119
130
123
102
98
105
77
127
98
67
108
95
102
116
113
138
121
108
127
115
93
97
77
115
91
54
131
191
106
96
141
152
119
145
76
134
127
113
143
95
127
54
107
94
138
197
115
118
105
93
115
118
140
128
149
89
123
90
108
119
141
127
81
156
124
99
59
101
141
115
95
133
77
108
86
135
148
98
141
114
144
61
76
113
110
103
147
176
161
102
90
169
120
105
145
54
109
123
126
162
93
135
123
148
153
81
134
91
148
54
89
102
105
102
103
87
74
90
97
119
81
98
98
108
78
78
135
110
131
108
110
128
127
54
159
112
91
131
127
93
159
145
78
108
148
80
91
105
105
101
108
133
73
161
81
147
103
148
67
74
99
93
135
128
82
125
98
123
100
102
85
127
87
107
93
76
54
49
85
135
115
96
139
91
98
103
110
144
94
100
184
134
117
163
74
59
108
149
77
117
118
162
54
136
138
123
150
127
54
59
144
95
131
144
159
160
135
167
129
175
116
130
77
170
183
93
185
100
98
184
119
103
129
115
102
119
120
179
62
81
112
74
131
96
168
103
129
78
102
130
59
91
153
96
54
113
83
49
104
74
59
54
102
142
126
164
127
81
147
103
81
156
92
78
103
186
81
89
111
134
125
90
110
61
107
138
139
115
103
54
140
198
83
118
90
151
118
146
91
97
85
76
157
92
126
114
100
102
142
130
108
116
102
102
127
85
141
165
130
165
76
105
133
118
100
128
157
113
93
111
99
89
139
124
116
106
125
107
115
134
117
108
105
81
117
96
143
127
126
122
151
133
172
140
126
90
141
149
96
111
131
78
113
90
123
103
179
108
112
125
178
81
106
125
54
177
135
76
95
153
164
106
124
106
84
137
102
120
117
93
74
93
128
144
177
118
218
54
83
96
102
65
65
99
115
99
145
102
142
122
133
80
117
125
147
126
117
83
123
139
81
129
139
173
110
100
97
172
101
126
129
115
117
117
93
119
120
113
105
102
87
142
140
156
112
95
102
133
107
54
112
139
115
103
154
144
93
108
154
113
84
117
132
133
103
127
123
103
127
133
98
59
87
103
54
91
115
167
83
94
112
126
133
78
54
101
138
82
158
103
146
107
103
141
103
113
116
107
78
74
49
103
118
119
88
135
109
122
112
54
77
158
134
59
83
54
128
127
113
115
104
113
98
84
104
122
107
105
113
132
126
132
96
132
154
93
137
128
141
119
93
112
143
140
92
103
103
69
142
109
115
117
116
110
153
82
59
90
127
123
135
98
98
77
152
150
93
107
127
108
129
144
132
194
59
128
141
97
140
96
134
90
107
95
116
152
144
101
54
79
85
136
82
54
122
139
90
125
83
133
122
83
96
177
90
96
122
121
91
119
54
163
131
143
107
127
160
158
172
121
110
128
113
139
99
95
129
101
165
201
54
94
112
82
120
49
108
125
74
97
133
134
156
83
138
115
54
93
133
130
120
135
160
108
115
98
113
104
114
131
135
111
178
109
127
116
123
145
107
132
128
150
133
108
139
165
106
119
113
67
122
142
140
107
160
77
120
135
105
102
165
82
116
111
153
133
54
144
172
49
75
125
113
59
111
108
153
114
98
138
54
133
159
95
129
140
113
127
116
111
62
122
83
136
129
173
135
152
102
106
97
149
92
128
134
142
78
67
144
132
93
103
144
105
132
153
122
146
72
111
106
84
91
165
104
132
112
116
98
68
115
106
87
95
102
124
108
102
140
96
113
144
106
79
156
118
117
133
98
123
96
111
54
114
90
145
65
80
85
113
113
127
131
67
122
113
122
87
93
119
119
100
172
139
107
110
131
124
108
132
129
104
147
95
98
54
97
103
158
130
118
105
110
135
103
158
125
85
200
116
125
137
110
101
110
143
66
127
76
130
101
186
80
159
117
68
115
59
129
80
87
98
102
143
78
98
170
87
129
71
110
118
131
135
164
54
118
148
129
81
92
123
117
129
135
92
116
87
167
127
81
129
82
190
101
133
151
118
168
108
82
73
122
132
111
54
98
102
101
143
121
90
112
120
148
131
162
89
105
92
102
186
168
156
150
107
103
143
89
90
128
180
99
111
81
81
80
129
145
110
123
123
78
140
131
98
103
115
140
140
100
98
107
95
145
135
92
96
98
108
118
103
97
106
120
79
77
125
103
100
118
147
101
131
119
103
78
98
158
128
122
111
103
97
98
102
164
131
78
145
143
128
128
140
108
123
133
94
83
101
88
156
98
87
110
93
49
102
107
145
74
93
89
168
165
120
54
143
140
98
145
108
98
177
95
129
79
120
126
83
54
106
54
110
140
161
139
146
148
108
138
111
113
111
134
106
93
165
145
102
135
145
128
88
91
128
143
106
49
107
96
104
102
147
115
117
108
188
109
135
117
102
76
180
102
120
148
90
67
177
110
49
124
191
87
141
125
120
89
82
113
145
77
95
61
107
95
116
121
95
103
108
97
118
133
120
114
74
95
83
108
133
129
121
118
157
82
166
135
96
140
102
125
95
118
101
81
122
102
118
134
90
91
125
128
148
104
95
108
69
135
105
135
96
97
96
68
68
124
49
113
104
102
148
147
97
115
125
128
126
93
97
133
96
95
144
106
135
96
105
143
188
134
141
142
148
136
54
95
167
127
110
146
124
106
98
86
137
76
137
149
125
134
135
65
102
141
89
54
54
81
160
133
111
187
127
113
124
128
141
102
92
95
135
54
103
135
146
160
81
103
85
67
135
131
148
103
179
144
106
102
98
105
125
105
104
149
118
154
133
49
95
95
104
115
162
102
49
96
153
108
54
145
90
125
158
97
122
125
54
81
135
125
93
142
54
94
107
122
119
148
102
112
97
68
143
161
114
144
120
68
148
74
83
109
104
125
102
118
133
131
130
132
143
90
103
98
106
138
97
131
132
61
121
103
90
108
118
130
95
116
128
143
124
59
149
83
124
118
95
135
110
141
173
95
171
113
83
108
167
78
76
158
150
168
49
165
121
114
155
74
95
127
113
118
146
74
107
100
110
206
137
91
77
144
121
150
108
121
113
133
98
131
107
83
76
82
129
74
156
85
115
118
119
102
120
129
165
115
119
94
101
140
93
93
108
111
77
136
105
148
129
106
128
100
174
54
99
54
180
141
142
133
102
125
107
121
99
114
116
107
107
142
127
77
108
177
74
132
164
102
112
73
125
69
74
159
54
102
102
149
144
123
131
139
163
127
133
84
103
105
122
178
107
87
191
129
54
163
143
126
99
140
114
170
135
54
87
134
67
104
90
144
113
95
77
49
54
155
102
114
113
87
137
133
142
158
103
123
87
54
143
111
95
183
179
186
122
125
101
73
98
124
93
170
80
135
134
98
54
84
102
136
145
123
126
82
158
104
155
78
135
144
87
102
144
69
149
81
132
120
135
84
141
168
83
90
54
102
145
157
135
68
178
110
59
104
105
115
98
143
146
140
197
105
112
107
110
81
81
95
110
148
118
81
144
135
59
101
78
107
140
104
107
133
146
129
54
96
69
118
155
116
144
135
102
115
74
148
151
124
122
98
106
155
132
108
128
172
102
101
105
104
142
49
49
139
107
148
108
137
101
98
95
144
89
105
121
148
132
114
177
114
125
151
121
119
74
103
106
122
129
131
128
140
96
95
145
89
113
144
177
161
148
119
133
95
67
117
54
57
119
90
108
145
125
87
102
118
118
136
98
141
114
139
108
102
106
105
132
135
104
97
95
94
98
125
54
92
95
101
102
49
117
77
133
93
93
108
126
140
77
165
94
89
140
123
107
61
54
103
99
168
108
93
73
96
96
145
94
110
108
49
158
77
111
62
97
106
54
54
100
149
126
113
147
118
128
135
74
161
107
111
107
109
172
99
85
116
144
100
101
96
90
145
93
108
105
103
54
151
54
107
127
123
148
69
99
108
131
142
127
112
74
89
160
134
54
73
148
90
193
113
54
134
133
131
136
134
158
135
115
82
120
109
130
147
194
92
77
157
94
98
128
69
159
155
122
140
69
193
107
131
160
143
54
122
133
142
126
102
147
54
91
115
87
109
95
127
85
102
93
49
84
45
159
157
157
128
97
146
128
113
97
103
133
129
102
78
80
148
161
102
85
140
75
148
155
117
103
89
118
139
95
104
200
96
90
117
115
96
103
67
103
96
91
75
54
160
59
54
82
123
186
90
184
143
116
82
104
147
54
123
96
90
87
76
145
98
145
106
113
109
144
84
143
151
102
135
96
114
128
124
169
54
100
102
95
54
154
98
158
54
106
109
108
101
97
98
108
103
79
69
110
74
81
83
127
98
65
61
108
106
137
98
59
149
54
71
119
103
140
151
133
108
141
144
54
99
89
116
130
108
61
118
147
133
133
144
74
54
113
108
116
124
161
132
99
150
122
92
183
93
81
95
95
134
103
128
122
122
102
110
79
78
133
102
153
101
127
148
98
134
54
170
103
102
74
104
80
129
158
146
98
117
136
61
112
83
98
133
138
155
109
105
110
49
86
97
99
77
129
125
132
78
116
125
143
158
173
158
172
125
115
143
103
127
122
120
54
149
177
129
143
104
123
129
141
160
54
107
104
177
177
179
95
159
93
116
112
94
173
87
103
102
83
147
115
119
95
117
49
118
59
77
167
198
115
143
104
81
146
140
122
124
117
129
106
114
100
118
175
146
95
104
152
127
94
101
95
119
127
123
178
67
67
106
102
90
184
98
113
120
78
138
138
94
129
190
124
100
126
177
159
121
143
144
108
54
183
155
132
54
106
96
59
83
98
124
76
172
67
83
67
103
68
115
117
68
79
129
121
131
102
93
126
133
94
148
123
135
105
125
54
67
151
106
149
85
106
81
103
120
96
147
88
128
142
154
167
125
54
97
125
123
87
147
115
85
122
81
107
82
129
122
126
59
54
123
122
83
99
165
78
177
75
89
138
59
103
77
100
93
110
132
95
134
105
113
157
135
131
141
93
157
54
102
143
138
49
148
95
110
90
98
81
89
121
119
169
151
134
78
107
124
81
109
177
123
143
59
122
110
101
158
120
104
139
97
96
113
131
67
80
134
107
124
130
106
122
133
85
118
95
154
142
119
96
172
116
108
128
177
125
108
108
164
81
95
87
115
114
84
118
122
162
102
99
108
153
113
199
113
99
88
102
148
172
67
79
136
143
95
95
83
73
107
114
77
108
105
146
102
153
122
54
165
103
95
54
113
137
144
135
112
172
74
153
79
115
134
72
138
108
82
139
111
122
100
76
133
102
94
81
133
153
101
69
74
87
91
108
92
95
105
130
95
83
94
149
125
90
126
143
98
105
156
123
61
132
111
153
79
101
167
154
74
91
49
106
106
146
125
54
140
123
54
93
128
146
76
78
106
134
86
180
87
117
127
122
123
142
54
91
69
49
54
193
69
135
95
95
118
135
144
167
156
119
92
202
107
54
155
90
98
133
114
103
61
214
139
132
177
118
85
76
157
128
100
133
142
81
160
89
84
105
87
110
103
125
172
110
102
153
127
76
104
96
120
131
141
90
139
148
106
108
130
134
54
128
129
143
95
156
157
119
45
133
170
104
143
121
80
167
70
95
87
105
76
148
85
89
115
102
103
54
147
54
96
76
67
136
135
83
87
93
163
113
54
137
109
115
103
108
152
103
59
54
112
81
74
118
83
129
161
65
125
141
118
74
119
98
96
158
102
76
138
120
83
154
163
148
138
109
140
102
113
169
120
124
143
96
117
129
95
123
78
106
104
99
81
54
98
139
113
108
114
141
175
80
135
131
153
107
81
167
200
148
122
61
59
135
148
97
132
106
87
91
87
148
129
88
147
131
106
118
116
125
95
98
94
124
116
81
122
138
83
130
96
93
180
162
145
194
97
129
146
150
99
80
98
98
162
59
130
87
93
139
151
148
98
87
111
88
144
164
102
73
96
118
154
139
129
101
124
131
97
96
85
117
102
133
119
87
93
54
112
123
83
104
87
149
69
115
104
123
134
95
138
144
106
87
118
100
116
115
165
94
177
103
108
104
110
80
93
125
146
133
108
98
123
101
150
89
80
54
61
106
74
120
140
158
49
143
54
102
117
104
108
54
101
177
114
229
103
130
124
137
108
110
59
152
95
111
115
96
95
128
145
152
78
93
163
145
120
94
117
160
109
129
125
127
91
155
116
131
98
91
143
128
142
156
142
100
73
108
141
116
90
130
87
143
121
108
106
108
133
81
128
126
118
133
119
178
113
87
113
61
95
145
144
137
91
153
164
162
170
124
106
82
177
74
134
112
89
134
234
112
71
145
97
131
54
81
141
127
95
140
90
81
120
90
61
118
163
98
125
132
126
123
126
87
115
108
177
161
139
59
76
156
109
131
103
68
128
123
74
116
76
105
59
85
67
103
109
117
128
125
141
125
116
121
150
77
135
164
116
97
125
81
91
100
150
135
102
93
121
105
191
118
144
124
87
65
128
96
54
106
121
102
146
119
67
179
116
76
143
114
141
139
101
128
144
158
128
157
107
168
125
122
87
82
108
108
67
78
133
147
87
170
65
118
109
87
54
121
54
125
131
124
93
151
62
116
95
132
59
132
143
109
96
76
108
108
163
112
162
177
107
112
143
148
124
127
135
81
111
49
105
83
108
116
77
77
103
112
120
102
124
93
113
104
131
114
54
197
96
129
135
82
142
102
93
108
120
78
150
157
74
120
123
144
146
172
125
87
110
120
94
104
107
109
202
103
128
120
128
137
124
135
74
165
132
139
115
123
87
74
81
95
179
118
83
164
138
123
80
91
102
139
103
95
132
87
134
114
108
135
113
95
82
96
147
90
115
108
77
104
144
130
133
129
110
156
93
59
119
69
103
92
99
105
128
139
81
85
172
128
161
109
123
154
128
154
131
82
121
81
101
112
134
101
102
77
132
54
166
109
171
162
140
106
130
129
155
111
101
78
102
128
144
74
125
144
77
129
128
90
103
102
114
132
168
188
139
78
123
99
119
106
98
139
139
128
136
131
119
138
160
159
125
125
59
115
151
138
123
132
143
190
137
102
81
135
140
78
134
125
200
112
105
54
92
90
116
96
102
165
54
147
125
87
120
137
102
90
103
153
120
54
140
116
145
74
152
118
122
162
125
157
135
125
116
177
138
85
89
103
127
75
102
99
135
65
103
140
114
144
93
140
127
82
87
114
74
117
74
83
54
114
79
167
49
105
158
138
49
93
81
140
131
49
89
128
106
96
128
148
119
72
59
100
122
131
112
67
131
106
115
85
128
93
120
116
143
118
118
102
85
175
119
128
125
54
161
135
106
165
62
59
107
54
158
156
59
76
54
115
111
171
118
86
109
116
158
105
113
79
82
98
113
145
81
49
100
76
102
117
78
93
81
103
120
138
130
87
102
122
141
59
104
83
161
112
149
54
134
102
110
125
142
108
199
98
109
127
128
103
85
107
151
156
90
82
108
157
144
107
106
83
98
122
153
142
147
107
103
141
145
108
163
177
83
133
59
138
119
124
105
127
176
118
150
139
147
80
96
97
114
118
77
123
122
81
77
82
102
139
118
125
108
54
108
167
59
140
103
138
49
121
133
115
94
96
134
118
113
143
143
113
102
141
114
124
147
177
98
125
131
133
135
127
85
147
124
95
165
83
113
125
141
54
103
130
186
94
93
74
113
133
54
98
110
150
123
157
139
200
54
87
87
103
127
102
67
54
128
135
95
136
122
90
147
90
139
118
145
120
95
102
98
147
102
54
98
99
74
118
154
128
143
80
78
106
78
110
54
113
101
143
103
125
134
110
120
128
148
114
116
101
144
104
91
153
87
120
108
128
98
133
107
95
141
102
110
140
95
149
108
101
93
115
148
106
59
110
112
105
146
153
85
140
117
125
143
199
168
98
98
116
165
98
78
127
146
92
95
103
135
85
169
126
155
91
144
83
143
104
141
171
93
82
120
148
158
162
113
110
133
116
102
191
131
122
79
107
69
135
98
137
131
114
97
127
115
161
54
106
142
97
128
190
90
208
77
119
125
143
93
90
49
103
98
131
77
49
85
105
110
78
83
97
103
108
109
150
113
140
143
92
143
105
116
108
83
133
103
104
108
136
76
74
188
113
147
132
134
119
136
126
95
130
106
201
82
116
108
143
90
85
125
54
94
49
82
123
146
146
143
128
86
94
171
141
59
128
87
106
65
95
129
139
112
81
106
79
102
137
78
88
136
76
89
106
125
122
105
83
102
157
98
126
150
84
98
102
140
108
161
108
141
45
103
69
139
124
113
95
101
134
92
122
143
143
98
134
114
67
141
116
103
110
59
126
116
95
87
128
105
147
104
134
103
180
181
90
120
128
144
143
95
158
111
119
78
59
74
150
113
142
98
134
103
96
96
115
115
99
87
150
100
117
137
109
97
107
103
117
113
123
80
102
107
123
139
74
153
118
141
134
81
107
133
91
150
124
122
160
99
81
107
65
133
98
54
177
119
131
200
124
113
108
107
144
102
85
107
161
81
97
93
100
132
149
126
110
136
74
172
128
84
87
107
95
61
189
97
128
82
87
96
85
98
102
104
146
90
140
90
123
129
138
143
91
156
108
78
116
98
115
106
68
49
78
100
95
139
108
49
96
113
108
95
108
147
116
95
74
148
128
108
125
112
113
169
49
140
80
136
117
112
54
106
97
101
49
83
98
127
158
103
132
128
137
115
182
121
149
133
110
54
107
117
81
102
145
92
133
159
59
107
97
113
138
81
159
137
102
108
103
120
90
99
87
105
49
140
108
49
108
85
145
173
137
131
77
102
79
141
171
123
122
69
120
92
97
143
116
99
122
49
102
97
147
104
128
81
96
78
128
136
108
49
139
78
98
133
119
130
126
49
114
163
97
116
115
102
74
141
105
139
163
81
137
127
102
54
131
122
82
102
134
124
102
116
86
107
181
59
129
106
160
146
98
123
102
145
83
116
82
167
95
78
54
83
97
116
140
83
87
81
115
128
95
128
74
106
54
83
98
92
139
102
91
81
126
172
87
119
97
98
88
144
104
101
136
102
96
134
145
114
89
114
144
132
132
125
102
118
73
193
70
132
165
116
127
95
101
170
102
105
88
54
120
54
98
114
116
98
92
98
141
98
103
100
45
84
129
76
146
97
79
143
93
154
115
95
91
128
49
127
100
102
98
152
161
143
107
54
138
98
103
59
155
119
81
116
120
91
148
49
124
98
74
123
118
124
77
149
76
95
86
118
113
67
98
116
85
59
127
84
130
102
111
163
82
112
151
156
160
125
106
113
112
72
67
95
177
121
77
67
123
119
76
87
129
98
74
131
108
101
133
149
67
95
110
95
169
98
156
153
132
139
110
129
154
117
82
81
61
98
89
97
125
67
136
99
119
137
78
113
152
49
129
78
140
93
87
78
96
122
82
132
98
125
126
119
93
108
84
105
129
115
145
115
148
118
87
163
169
128
109
103
130
109
112
135
142
140
178
102
81
98
122
94
143
105
91
168
96
102
109
148
103
101
154
107
128
105
148
123
131
97
139
122
130
104
107
105
137
105
161
139
108
127
59
115
107
108
118
77
95
112
135
167
91
125
95
149
125
142
139
77
159
125
102
125
131
144
139
105
109
180
98
103
125
98
54
102
111
125
125
115
125
97
79
127
117
93
125
110
107
124
89
117
101
118
88
126
172
139
95
54
116
73
59
59
91
138
140
111
127
95
135
104
118
113
49
165
148
120
57
77
95
89
180
93
107
129
49
98
114
133
97
180
112
135
101
76
128
96
140
94
108
181
102
124
127
71
165
117
113
103
98
115
90
177
102
54
54
80
78
127
54
145
133
77
84
134
120
138
108
102
137
116
158
103
89
49
125
95
159
105
115
200
95
103
100
103
78
91
86
124
114
140
106
87
113
152
62
95
122
92
129
120
140
95
98
121
108
103
109
129
105
133
127
140
108
68
87
85
123
110
137
102
88
134
147
159
49
95
54
124
130
125
120
114
131
116
160
127
93
74
82
174
129
98
107
59
98
145
67
134
147
132
105
69
107
138
91
49
143
113
95
110
100
123
78
49
84
95
72
98
74
168
108
144
129
150
87
95
157
103
115
124
82
82
83
116
204
104
112
156
166
90
123
107
143
135
93
124
116
162
74
143
121
135
120
105
148
54
133
54
127
93
131
105
119
77
108
144
105
49
175
124
151
81
148
155
102
147
116
103
110
124
98
131
124
99
80
168
125
97
140
175
102
102
81
127
101
132
108
199
93
114
100
146
123
125
119
93
156
166
160
105
117
143
96
82
98
110
159
85
151
120
112
61
59
103
113
147
103
125
116
90
86
96
163
111
69
84
49
108
74
92
81
142
141
154
126
131
133
135
103
90
83
95
124
131
116
133
189
107
115
90
108
150
59
113
139
107
140
98
165
113
82
112
111
144
151
97
105
93
94
171
86
97
77
105
132
108
108
119
118
144
83
151
109
162
106
100
108
157
165
141
90
117
76
54
99
165
140
94
138
98
54
83
81
131
108
54
105
154
61
54
108
107
126
107
128
147
135
99
146
99
131
90
98
95
91
85
61
167
87
89
141
54
74
102
81
151
126
59
127
98
107
84
115
108
186
133
108
103
115
115
120
142
76
138
122
161
140
106
121
54
93
98
91
104
162
148
102
106
74
97
137
108
98
69
117
113
76
127
157
148
159
107
136
104
42
81
148
170
82
123
120
142
59
54
96
110
91
113
78
121
115
78
127
118
124
114
110
102
112
102
122
90
128
90
122
150
54
127
164
83
157
98
99
108
129
77
149
110
111
49
106
182
77
145
161
119
112
105
145
94
142
109
119
116
141
98
102
179
113
149
146
108
127
161
105
92
198
138
113
99
103
83
67
95
118
128
118
131
118
151
120
92
77
164
85
130
107
61
152
125
165
110
147
117
91
142
145
120
115
170
123
127
101
98
106
94
120
54
59
164
77
106
102
108
144
161
123
117
141
102
97
108
107
158
151
143
132
61
164
158
112
108
119
111
125
132
73
102
151
132
115
173
90
80
142
132
97
118
135
108
110
133
146
112
117
145
119
113
88
134
126
108
95
151
143
148
110
69
118
125
98
144
98
113
98
49
102
164
86
102
120
141
141
102
99
97
123
99
140
109
113
125
138
112
124
106
94
141
143
95
116
98
67
105
128
76
113
115
110
116
102
88
154
124
95
110
90
54
98
110
128
112
123
128
133
156
54
105
171
135
89
103
157
102
144
130
91
78
129
131
86
140
201
76
124
120
110
90
145
128
113
54
80
82
112
94
72
135
127
153
113
102
124
105
146
129
93
116
173
142
135
109
90
81
108
148
108
119
133
154
81
49
146
134
94
101
130
90
90
95
105
122
98
128
134
143
103
138
82
93
98
87
152
95
83
108
119
123
103
153
147
102
90
177
108
194
93
126
148
117
140
139
96
54
59
111
81
125
162
49
69
109
107
77
98
76
173
61
108
87
152
151
111
103
143
155
99
161
133
122
108
69
188
143
142
155
148
69
153
101
87
120
131
76
153
95
83
69
149
122
130
90
131
129
81
136
148
126
54
108
113
132
149
140
106
134
93
128
118
93
126
103
76
112
120
95
54
145
203
62
117
120
81
161
68
89
145
114
142
103
145
49
133
108
102
98
104
180
80
152
71
54
54
89
131
106
139
90
117
151
59
185
118
175
127
92
125
143
103
114
177
107
100
191
96
81
81
128
61
188
163
76
144
149
138
146
153
116
125
101
81
142
117
78
96
81
123
144
82
103
81
93
78
141
123
118
108
113
81
59
93
97
95
129
101
96
141
102
107
127
112
125
101
133
161
121
78
133
166
77
106
105
62
116
91
133
143
107
95
182
126
107
128
129
84
193
104
152
110
93
147
139
54
114
100
59
103
59
54
148
125
174
108
108
112
74
101
141
127
127
111
108
78
168
177
127
54
116
129
73
112
95
106
150
68
124
118
101
164
105
160
112
132
140
147
81
104
138
67
144
98
112
98
148
102
122
128
123
108
106
127
82
146
117
168
146
125
49
146
113
67
118
131
77
157
149
133
160
98
97
105
100
76
119
159
131
112
101
132
124
54
105
96
140
138
81
107
136
113
170
147
122
142
150
101
126
109
99
76
106
102
154
102
84
155
135
106
59
54
160
145
169
169
115
54
106
131
93
130
81
182
124
141
94
78
110
93
86
144
45
112
129
162
105
138
167
106
110
108
108
155
103
97
205
115
103
112
76
124
89
133
69
100
108
90
110
127
136
91
113
105
108
95
148
94
150
74
151
113
98
103
87
100
111
130
120
133
153
113
128
96
183
54
131
125
107
159
77
136
139
140
125
166
90
95
108
140
105
134
102
90
104
112
144
106
102
138
113
123
156
98
49
139
163
102
61
102
101
171
49
158
132
100
96
111
105
90
112
165
115
91
124
138
98
166
124
143
117
84
97
104
85
120
163
102
133
68
106
137
45
145
125
104
59
90
98
93
98
78
54
147
145
102
101
109
154
101
131
135
113
127
158
154
108
127
82
103
105
131
128
154
54
94
75
172
135
68
156
113
59
97
135
118
78
105
87
90
143
144
76
115
77
95
120
100
81
111
105
49
98
164
122
83
95
81
103
76
104
148
105
104
133
99
108
108
114
87
94
112
129
120
122
120
88
125
54
125
103
93
90
147
121
142
82
137
120
161
108
95
107
101
151
93
78
126
77
193
102
128
121
132
49
139
98
178
77
91
83
112
90
104
93
103
125
111
117
107
143
95
120
125
159
137
84
137
110
112
142
68
95
97
125
101
119
113
134
112
67
103
142
102
98
122
159
95
93
102
101
76
163
119
95
138
139
156
92
134
135
135
54
134
151
127
76
153
113
164
95
95
103
85
136
108
81
165
93
102
102
120
105
87
82
139
150
101
65
49
98
132
112
148
103
98
87
138
118
186
97
132
175
83
141
95
83
93
114
120
127
168
142
123
148
145
165
54
165
111
107
130
118
74
83
102
75
122
127
102
154
54
125
107
98
81
95
93
113
114
80
171
110
88
102
95
94
169
105
118
148
131
131
125
114
103
133
61
103
115
95
82
102
127
111
79
163
54
124
98
129
120
71
77
141
98
161
123
97
126
139
104
83
90
131
115
70
135
132
105
59
175
148
129
149
141
123
147
90
76
124
180
116
54
102
87
108
77
127
135
97
95
108
110
149
154
129
157
93
90
108
146
95
145
159
90
54
101
172
134
113
154
105
129
82
122
135
153
158
98
153
123
114
137
107
129
110
104
117
152
133
83
105
119
104
76
123
115
129
170
83
133
74
145
147
129
144
167
102
165
139
106
158
98
140
100
113
120
165
122
119
95
95
122
96
95
118
54
98
130
137
129
119
109
90
87
100
118
135
137
124
146
93
127
103
183
138
105
91
108
92
128
129
106
105
89
95
92
54
101
93
107
118
78
128
143
110
54
175
143
49
74
109
129
93
106
127
104
96
138
132
125
79
123
74
104
128
81
146
129
108
152
59
100
80
117
84
104
133
104
96
94
110
105
149
102
113
103
127
94
165
108
59
125
81
77
125
134
85
146
134
117
81
108
169
98
152
93
94
139
138
117
106
126
123
98
112
54
140
110
112
83
82
181
169
119
98
99
106
103
134
161
147
107
126
85
130
103
139
132
167
177
111
213
123
103
125
83
145
115
121
54
83
153
124
95
108
161
104
129
95
162
85
98
140
108
128
81
54
95
148
131
131
117
155
133
113
106
142
97
146
131
104
117
141
151
85
95
125
90
128
131
108
113
67
144
143
95
103
74
89
125
124
89
173
87
54
122
123
98
83
90
178
128
108
144
139
109
83
142
98
136
125
83
114
81
131
103
123
90
82
128
113
102
82
115
127
122
111
108
107
91
98
49
106
130
149
77
106
93
104
93
54
141
132
145
108
59
90
108
102
97
85
103
97
77
90
82
90
126
173
103
81
89
97
117
94
158
61
134
165
107
102
125
100
117
93
155
82
113
114
54
102
98
125
90
102
102
112
144
148
128
103
85
132
87
153
102
125
152
69
115
147
95
92
133
112
102
83
113
155
147
136
93
96
113
104
128
151
107
90
102
105
181
115
128
162
96
103
123
114
83
108
103
98
91
141
114
144
80
122
54
70
81
136
115
104
127
168
116
101
156
175
111
106
87
146
149
102
67
105
125
126
123
119
139
112
153
94
157
114
165
147
132
143
137
158
104
144
91
69
131
86
104
107
82
133
90
144
95
103
105
99
104
118
85
194
124
102
103
78
108
54
162
114
128
95
127
127
96
113
113
108
187
110
113
131
117
113
164
131
54
109
132
110
150
158
68
99
133
117
77
77
110
82
88
136
112
158
139
125
200
161
103
106
114
77
133
115
74
78
104
110
109
168
76
77
117
54
110
133
84
103
125
106
136
114
72
92
113
112
77
81
121
91
84
115
124
148
139
128
128
132
111
76
108
89
111
120
104
128
117
105
124
54
127
134
118
179
80
107
67
67
102
123
75
79
80
83
167
146
108
76
78
164
49
133
141
146
97
95
95
170
119
102
157
105
86
124
107
129
87
54
128
150
165
93
146
143
95
85
131
143
140
107
118
108
108
89
49
190
128
117
140
132
141
177
107
105
143
170
54
49
139
76
140
105
161
179
108
150
124
122
74
111
174
130
94
122
147
101
94
139
146
95
128
94
96
145
106
108
100
116
129
49
97
133
109
54
139
194
54
81
165
168
125
147
74
115
113
106
123
108
132
105
81
98
120
126
93
87
103
91
143
176
159
150
83
80
180
99
120
121
182
105
131
76
165
98
103
83
49
158
95
125
133
105
105
126
122
131
154
61
159
99
100
127
166
93
87
80
122
144
127
110
96
104
98
108
67
131
125
108
105
91
98
93
98
87
127
91
73
136
79
61
113
111
112
128
80
102
123
87
133
97
103
149
140
107
119
180
98
95
146
134
79
89
111
173
59
96
156
93
82
108
92
113
87
102
119
98
143
102
146
190
101
77
69
148
129
128
161
92
149
135
54
88
92
122
99
157
81
157
157
76
123
143
126
97
104
82
127
143
88
122
101
81
150
98
108
164
108
97
95
102
98
125
128
133
95
130
151
121
189
197
94
118
151
87
91
186
141
108
119
114
102
49
91
114
119
154
97
134
95
100
126
123
106
199
74
120
107
148
102
108
93
105
177
107
98
63
83
106
118
61
99
98
125
163
135
124
118
93
128
54
69
125
133
77
117
120
82
134
102
148
136
75
108
128
103
133
106
83
127
99
67
119
96
77
103
179
130
138
123
77
161
133
162
107
96
143
134
129
138
102
128
105
102
95
168
127
131
99
102
101
77
124
95
137
122
128
61
59
113
122
113
114
132
49
110
93
119
127
73
73
96
59
116
54
127
157
120
82
216
90
147
125
115
128
95
226
100
105
78
95
111
115
143
106
114
116
125
96
156
45
82
97
120
130
49
102
88
104
108
161
117
133
113
103
102
125
83
110
119
63
158
147
129
144
137
102
157
128
95
95
180
102
124
125
108
128
155
54
128
107
168
104
172
147
115
78
170
119
95
202
97
108
124
151
106
159
68
133
122
124
127
90
115
118
81
54
111
105
97
163
95
101
134
158
127
183
80
139
45
76
87
158
97
92
154
98
131
98
165
135
106
81
171
159
83
152
155
106
98
54
139
135
131
107
99
102
105
95
124
123
122
136
74
122
98
54
115
110
87
128
90
113
116
81
112
143
111
124
116
108
68
124
142
87
158
118
99
105
125
131
102
119
86
112
98
131
94
49
81
93
105
177
140
93
74
141
103
112
140
182
68
104
80
108
125
96
131
110
117
143
163
93
146
149
110
83
113
96
131
143
113
113
112
69
130
83
144
137
96
139
87
106
120
191
129
143
76
142
133
109
171
126
104
152
122
105
127
128
42
108
116
100
80
118
91
131
102
185
105
103
80
123
112
122
193
54
90
133
158
128
125
123
61
158
122
145
92
91
111
78
181
126
143
54
156
99
90
68
171
129
121
114
81
102
80
107
148
108
54
61
81
101
95
125
103
112
116
149
102
77
95
126
129
105
113
124
121
90
101
114
173
99
54
113
113
101
124
161
119
131
143
122
141
180
122
108
122
54
129
154
116
127
82
103
134
118
99
120
109
120
101
73
108
96
79
124
133
172
49
139
131
116
119
97
98
142
117
103
87
54
143
104
125
131
194
68
123
92
54
156
93
122
54
146
73
134
68
125
146
99
81
129
164
136
125
85
114
98
78
99
81
134
103
92
74
160
76
104
107
54
127
74
108
61
100
101
105
146
133
106
104
136
83
67
89
120
123
124
138
155
124
115
119
145
90
171
156
120
108
115
121
144
129
117
96
147
96
59
54
177
147
137
173
125
108
157
54
82
95
49
125
127
102
146
106
139
76
103
69
143
78
89
121
120
81
87
80
146
167
81
85
122
150
90
145
108
54
101
87
95
147
88
92
98
95
143
90
170
141
145
105
93
90
108
116
74
122
57
143
177
143
109
102
61
100
54
148
118
141
139
91
131
84
132
104
161
106
133
96
171
105
144
165
128
83
127
113
96
132
92
144
155
150
91
143
93
119
107
125
149
131
167
148
161
120
127
105
102
120
103
81
84
112
137
80
131
152
108
98
111
128
90
82
95
97
90
149
102
95
125
131
139
102
108
96
162
165
144
123
102
105
125
49
133
109
151
139
140
149
68
168
123
102
78
111
106
145
161
119
83
144
69
54
90
147
95
115
180
98
103
106
106
69
188
134
132
102
153
143
82
143
116
143
83
109
121
88
194
103
118
132
141
125
85
67
177
98
108
102
112
140
82
103
138
125
79
103
131
89
186
140
61
121
125
81
102
111
139
136
119
120
74
83
118
136
135
127
195
113
102
122
84
111
133
103
130
160
130
136
128
125
92
139
146
54
89
111
96
54
164
131
149
113
120
141
103
145
74
131
127
126
113
81
107
159
96
144
212
120
90
177
95
132
146
126
165
126
88
112
82
151
131
87
141
125
110
99
78
125
74
85
76
102
59
178
89
90
109
96
105
86
115
147
105
130
81
133
77
104
77
95
101
150
113
110
128
130
96
177
102
123
127
116
129
78
109
82
91
113
85
129
115
83
110
115
100
112
110
110
97
141
144
102
61
124
132
79
119
104
54
88
157
152
73
155
114
144
61
93
100
99
141
122
122
104
108
125
82
128
113
95
110
54
103
93
146
148
147
118
172
73
118
160
136
123
137
97
49
81
96
140
116
104
156
142
54
153
98
99
81
128
131
96
91
80
116
102
71
165
99
98
114
122
138
123
73
101
122
49
106
177
148
88
78
87
168
132
148
124
108
108
54
87
73
133
103
128
73
91
108
142
120
127
99
140
135
81
108
81
135
100
131
108
91
112
126
110
81
112
102
123
108
92
128
78
81
67
152
145
139
59
127
94
101
92
159
90
149
102
115
149
127
177
98
86
93
114
102
87
87
122
81
161
153
59
82
148
141
113
97
119
158
131
68
168
74
157
95
155
161
125
75
90
135
93
124
126
140
131
92
145
109
131
140
144
54
115
78
54
123
128
102
59
113
126
154
129
132
94
102
125
136
154
116
107
82
148
108
96
139
127
126
200
141
95
95
118
176
85
117
103
95
107
185
108
110
133
125
158
116
92
137
90
127
120
95
95
67
96
182
91
119
94
87
110
165
142
96
117
94
112
108
110
103
102
123
106
59
123
130
148
130
115
115
140
79
119
121
124
165
106
179
42
125
150
122
137
169
102
125
139
96
49
143
102
103
154
194
74
144
76
49
90
117
80
131
54
98
108
123
90
108
117
165
90
179
124
102
118
42
74
101
108
148
94
128
133
128
129
102
177
142
87
139
144
188
127
132
131
98
133
125
177
81
116
138
122
49
115
163
110
99
139
169
102
81
100
49
135
74
95
109
163
85
88
59
115
168
113
139
129
45
134
103
146
76
135
105
126
90
149
102
115
109
112
126
106
146
143
170
131
102
98
80
74
91
107
111
95
95
108
98
124
61
105
105
150
59
122
113
148
108
45
137
97
116
90
127
125
123
101
97
148
157
82
121
91
54
144
102
176
136
105
135
164
102
153
91
166
98
175
65
161
107
125
81
158
176
128
130
104
111
137
106
108
125
149
61
78
149
108
116
45
117
112
156
116
133
149
106
95
143
119
125
81
74
72
114
172
144
94
89
108
138
146
136
143
131
159
131
49
122
59
95
172
148
102
112
135
156
95
149
157
131
140
110
149
87
117
95
104
144
93
122
106
95
95
168
141
122
83
177
103
59
133
104
98
99
98
133
99
106
87
89
95
177
108
123
168
85
93
157
119
49
101
95
97
159
91
128
89
87
93
123
139
74
107
118
134
106
153
59
105
112
115
151
114
119
96
81
122
81
119
158
98
113
126
85
121
140
129
93
135
116
74
59
104
145
152
61
67
146
176
78
102
140
90
86
104
114
102
166
140
92
95
111
106
67
170
91
139
93
109
148
102
135
120
102
105
130
119
87
73
49
108
92
105
111
141
124
127
95
132
109
167
89
129
133
143
77
124
150
131
115
96
104
61
141
127
105
82
97
102
133
54
124
136
156
102
127
110
109
95
169
108
108
116
105
95
141
102
90
108
81
118
102
59
106
118
133
143
54
129
94
112
147
160
103
79
107
103
107
175
135
147
140
117
108
139
132
116
76
74
107
54
107
106
98
103
49
87
85
74
160
115
74
54
155
128
93
171
119
183
108
99
140
133
49
90
103
92
103
146
148
87
98
76
87
110
98
90
74
108
152
113
115
96
95
54
87
78
65
49
74
81
140
76
90
122
91
102
169
117
125
96
135
123
86
85
177
105
102
98
112
141
148
170
102
102
183
67
126
127
115
125
98
108
122
102
139
102
97
148
132
140
129
113
112
94
100
144
116
144
146
105
140
101
113
108
129
54
106
152
123
93
122
103
113
116
77
98
103
85
155
146
81
150
108
130
76
143
102
95
160
78
163
126
87
97
152
200
141
177
129
61
108
78
115
82
104
122
123
127
170
144
117
142
126
106
110
96
134
81
101
135
103
144
140
141
129
110
76
140
95
171
146
131
177
103
54
128
160
83
128
108
102
123
81
117
105
110
114
105
130
93
93
120
123
145
128
126
81
108
161
133
118
150
105
160
103
114
87
136
155
129
120
54
106
110
127
157
82
141
139
142
49
118
121
111
131
107
104
117
96
175
111
131
94
54
102
87
122
103
127
115
124
118
124
54
54
125
149
137
177
157
49
106
94
160
133
108
147
135
69
135
110
156
103
120
155
173
128
148
142
90
99
170
92
126
178
155
105
128
141
93
102
54
90
163
139
108
102
96
139
111
143
146
125
145
138
150
90
54
106
124
103
45
96
129
96
116
116
129
81
124
182
147
114
179
124
54
95
122
99
95
125
108
95
112
139
128
89
77
147
143
109
165
118
54
69
100
188
134
118
108
143
87
130
133
111
117
133
94
90
177
112
111
162
108
144
112
89
54
146
142
136
141
106
139
108
98
92
103
134
128
82
137
135
104
143
54
126
127
150
126
81
131
112
145
82
155
113
127
128
186
154
139
67
103
98
128
89
94
117
81
123
127
88
87
129
141
128
94
117
102
98
111
90
125
179
109
144
95
101
95
108
115
115
132
133
125
160
106
140
135
119
101
90
102
120
125
119
105
103
141
102
113
88
118
114
147
69
212
148
120
61
135
113
165
139
93
112
98
141
103
113
87
108
155
144
146
54
168
119
102
120
108
135
69
145
149
87
98
177
95
108
144
103
95
128
147
54
117
95
77
92
103
85
101
151
98
54
135
100
144
106
54
105
120
133
93
115
99
92
98
91
54
87
111
81
80
139
107
204
105
115
112
141
145
136
103
127
76
107
116
91
155
135
129
84
90
102
123
118
74
148
127
113
98
137
140
108
127
90
98
185
125
186
131
54
122
137
154
114
102
95
81
200
127
103
144
83
93
112
74
138
143
133
114
112
118
85
180
124
128
115
95
153
118
120
132
111
59
127
78
104
98
103
139
95
107
88
108
124
77
76
130
138
141
83
155
152
83
80
169
116
108
141
133
67
54
177
102
124
131
54
99
98
92
124
84
161
126
124
131
125
54
94
93
78
84
145
100
97
194
124
79
102
131
129
122
49
145
87
78
127
141
120
85
131
49
171
159
88
93
107
103
97
116
77
91
103
142
107
106
82
108
159
104
93
137
69
133
125
106
93
127
127
123
128
125
77
177
191
120
125
115
113
155
143
116
108
100
148
151
133
121
85
118
102
167
69
158
81
130
113
164
100
140
87
107
67
95
124
135
151
114
107
98
177
67
102
125
54
144
129
144
82
115
77
103
98
90
133
112
144
105
128
113
143
114
133
188
119
82
92
89
137
114
81
83
137
119
140
102
131
106
170
118
113
103
81
106
88
95
140
108
114
104
125
83
110
102
136
85
117
98
109
95
149
54
133
73
97
76
98
103
80
78
98
134
94
190
95
107
146
167
54
132
173
49
125
96
68
74
100
90
87
99
131
123
125
76
99
129
173
125
145
125
102
106
54
133
105
134
129
126
76
91
110
105
123
133
144
125
125
138
113
128
80
130
106
98
87
87
87
124
99
144
143
140
190
165
143
90
105
170
166
54
77
128
113
137
67
146
125
81
54
103
124
101
179
90
83
109
93
106
144
54
103
120
114
94
167
175
127
90
85
146
166
98
102
120
113
139
128
76
54
123
95
93
138
119
127
91
111
142
103
159
195
105
69
83
153
94
93
85
107
118
142
99
132
94
154
120
125
121
78
148
125
49
109
167
102
90
158
104
148
139
150
160
54
103
98
157
112
76
177
87
119
131
74
96
131
131
118
120
105
127
113
139
124
109
101
106
132
54
125
108
61
130
135
95
133
158
97
123
130
128
68
99
212
67
190
103
120
111
126
158
119
128
89
129
102
78
103
154
143
98
105
142
102
87
116
85
144
54
103
84
78
103
108
111
80
132
100
122
114
148
159
158
125
101
121
108
54
105
77
139
186
103
103
83
141
135
120
97
150
133
77
95
135
129
114
83
95
144
126
129
77
96
177
82
109
125
54
87
106
59
98
80
117
106
83
115
54
135
80
119
126
101
130
146
106
96
103
128
121
99
113
54
128
121
102
54
69
98
103
140
157
123
95
130
65
78
87
140
98
90
129
98
98
115
49
115
118
118
173
73
96
186
142
145
82
145
124
111
116
133
122
123
98
162
120
67
126
173
139
65
95
49
107
110
97
120
122
78
148
54
125
57
108
95
81
83
84
106
135
137
54
104
180
106
106
106
108
144
95
115
157
90
141
87
90
101
93
133
155
108
118
69
103
122
132
98
120
159
106
114
95
112
121
109
59
91
54
103
124
108
108
108
59
125
76
103
136
130
125
98
95
142
101
120
114
122
129
91
116
143
104
90
125
112
123
102
115
135
144
146
87
146
93
69
143
102
120
150
126
125
122
135
102
163
103
134
122
102
112
123
95
134
115
129
108
115
95
119
148
114
173
127
127
114
117
143
49
120
127
65
175
146
117
156
93
77
133
122
155
76
146
135
98
108
168
137
83
117
144
100
161
98
127
117
135
81
130
105
117
99
112
166
111
102
97
102
81
146
154
128
120
98
97
98
129
113
98
69
157
84
81
133
99
123
67
80
76
74
177
109
54
148
101
156
82
123
145
95
148
134
147
115
74
143
115
147
124
128
170
102
125
69
140
108
93
102
133
54
132
147
90
103
118
93
122
103
114
104
123
131
54
106
147
116
90
128
104
117
126
76
74
110
133
81
124
80
54
152
120
108
117
118
134
158
107
96
135
153
130
108
149
59
125
103
139
153
148
101
128
142
125
104
144
146
123
148
111
124
168
78
87
148
83
83
125
159
143
106
139
139
113
150
125
67
95
131
67
115
140
107
168
104
122
115
87
99
82
105
97
134
138
138
140
121
146
98
143
110
116
129
95
87
92
141
106
92
96
127
117
76
126
186
129
129
152
129
135
91
122
120
151
131
108
88
164
143
102
77
87
114
78
147
125
76
126
54
144
102
114
132
115
108
132
124
110
150
81
144
101
133
81
165
134
103
99
112
98
125
87
112
118
120
119
110
105
125
146
95
78
152
122
110
102
105
106
85
146
112
125
95
134
144
59
94
118
121
87
83
153
96
109
102
98
98
126
49
90
104
82
108
147
95
112
98
169
165
101
96
120
103
85
90
159
148
132
91
109
69
100
143
161
160
137
177
126
54
126
123
120
54
86
59
87
104
91
103
112
107
113
105
103
95
133
95
134
148
121
97
81
151
112
54
139
110
107
116
125
146
87
122
119
156
127
77
119
108
127
74
151
93
164
54
139
54
81
116
153
141
118
103
121
91
132
78
127
131
108
119
167
114
110
157
145
92
141
98
125
89
122
140
107
100
143
126
101
102
109
87
107
116
104
131
103
91
96
111
59
124
130
120
139
130
125
125
103
73
160
103
104
116
88
107
134
134
109
138
95
95
123
111
89
148
103
106
83
103
61
80
92
94
130
59
136
133
144
134
190
149
144
123
143
70
137
62
150
82
179
109
54
135
102
122
116
141
136
139
96
94
118
148
87
141
148
98
65
87
112
127
98
96
128
98
127
101
125
116
188
132
155
136
82
62
87
129
103
114
83
144
148
108
156
77
129
140
117
117
130
177
45
80
105
167
147
107
117
112
112
158
118
167
111
207
54
54
114
115
141
105
110
103
135
76
97
112
139
120
160
127
129
98
141
76
144
133
81
81
118
163
137
97
106
122
90
125
100
120
108
49
90
156
68
98
117
80
84
90
90
85
113
100
117
154
77
125
120
74
59
108
126
87
49
87
123
105
105
93
98
114
96
151
98
130
102
81
135
124
95
54
100
173
105
114
139
133
117
144
194
81
103
147
96
122
118
97
135
131
119
126
67
128
103
179
139
128
103
149
149
79
137
168
90
154
90
140
79
114
108
85
88
170
90
54
94
78
122
159
116
127
99
131
87
137
102
152
109
161
154
160
95
126
96
93
139
54
105
88
151
160
98
151
110
94
135
108
114
109
120
139
104
96
135
131
174
142
102
121
124
117
117
113
102
120
140
113
124
69
153
100
155
145
108
113
128
105
144
87
78
118
81
127
106
98
149
145
144
156
106
54
133
98
137
144
123
111
76
96
105
124
160
149
115
96
105
145
90
154
118
147
61
123
133
140
131
150
163
115
80
119
133
78
107
122
161
102
67
140
125
113
146
85
115
113
79
136
171
115
105
148
130
120
137
84
118
143
106
82
148
125
106
131
93
122
108
67
107
118
98
132
132
77
157
77
151
49
90
154
152
126
110
106
92
90
79
87
145
128
141
67
74
89
167
135
95
54
98
144
161
148
81
115
91
106
135
157
121
108
129
103
108
95
140
108
59
91
99
111
54
81
54
126
103
113
86
118
81
143
124
80
54
151
122
113
122
128
168
141
112
81
160
161
90
118
71
160
102
108
110
148
99
88
110
74
96
102
82
90
103
98
110
93
93
98
108
76
86
139
138
76
61
110
81
116
74
113
120
114
103
120
106
101
130
158
147
102
90
85
112
109
113
81
130
163
161
90
113
102
92
54
77
120
111
103
49
128
81
128
96
76
108
145
148
54
104
123
149
140
104
111
93
82
67
146
90
103
105
156
132
162
159
88
134
108
95
171
171
81
108
173
127
145
93
124
54
133
102
89
54
131
154
54
86
81
134
143
133
144
142
98
112
90
104
93
107
148
151
160
120
82
118
105
82
95
133
108
179
78
165
157
94
90
81
110
166
77
128
125
79
112
123
110
102
127
102
98
120
126
118
110
95
200
153
100
156
81
144
171
129
131
87
135
84
110
123
102
129
103
139
144
137
146
49
65
113
133
59
148
54
133
149
144
108
59
82
78
54
117
140
117
113
124
125
134
139
123
81
138
146
74
115
154
68
159
191
128
152
129
164
103
150
95
89
157
145
88
132
54
93
155
98
102
90
123
111
128
108
102
90
54
54
106
123
83
141
138
108
76
74
126
99
95
107
177
103
144
141
151
148
82
131
168
74
80
126
136
136
108
118
150
170
129
125
77
134
84
101
133
139
112
111
104
54
77
144
87
120
109
148
76
145
107
125
85
65
117
133
54
128
91
128
94
137
100
95
151
78
149
132
82
113
106
150
127
146
141
93
117
146
49
108
95
103
101
168
129
130
149
140
96
137
59
134
119
114
108
106
100
108
98
105
181
98
125
77
113
122
91
107
87
153
128
178
102
148
108
105
132
98
76
126
84
120
125
155
116
141
83
123
104
125
124
90
177
107
166
176
180
126
115
143
171
95
133
59
182
148
54
98
125
103
59
127
99
126
81
105
116
118
152
114
118
77
125
81
121
167
114
94
74
128
82
87
93
104
153
85
108
117
96
94
54
120
140
77
81
125
135
135
82
151
160
81
127
67
81
111
108
80
81
165
167
54
113
129
180
99
103
106
106
113
148
158
125
98
107
169
88
87
136
161
85
143
166
156
93
118
140
122
128
91
179
185
92
145
122
111
165
127
96
81
113
82
98
116
222
112
76
127
112
126
133
85
158
81
93
76
151
107
153
141
103
106
104
102
95
105
75
101
151
133
130
120
139
90
113
123
145
152
147
80
109
112
147
180
77
126
89
131
102
177
87
132
95
87
98
108
148
117
80
103
156
146
125
78
77
49
96
108
96
95
69
110
108
127
99
133
124
81
105
97
92
146
91
153
172
115
74
74
94
54
126
126
102
112
95
77
96
49
54
185
124
113
96
113
134
132
72
125
65
99
139
111
102
143
142
156
99
177
98
134
96
127
126
125
172
77
91
112
79
102
115
113
59
61
113
125
118
131
122
100
167
105
140
105
117
112
131
102
77
129
153
131
124
68
119
139
115
87
95
131
73
86
119
140
129
102
49
68
73
83
125
193
103
178
110
125
59
106
125
169
100
102
136
99
54
144
108
118
98
54
81
144
112
113
145
113
165
124
95
87
54
69
103
93
121
102
173
165
108
120
49
199
94
113
127
144
139
88
120
107
108
105
76
49
131
107
98
143
108
87
73
132
81
137
67
99
161
80
67
104
134
133
136
116
83
97
111
78
148
77
54
127
105
67
128
80
124
191
87
94
123
102
120
74
113
109
77
106
130
146
89
165
83
172
167
133
104
123
105
59
128
125
124
158
163
162
134
100
102
97
54
85
127
189
162
111
109
104
177
181
83
139
80
74
107
106
104
177
114
102
118
137
95
125
158
147
107
120
102
132
104
135
184
68
54
67
149
129
105
135
96
102
102
102
119
153
125
97
102
106
108
128
122
139
141
108
135
137
97
137
146
80
129
109
111
152
78
115
139
127
96
95
125
103
105
138
169
95
148
119
143
102
88
82
139
124
124
95
126
103
87
115
102
127
96
103
108
118
135
78
133
126
95
102
128
54
98
144
132
125
105
133
126
116
88
123
127
139
122
117
85
143
76
165
111
106
172
54
170
81
130
49
108
90
94
136
73
110
109
106
102
96
133
108
188
146
108
96
120
49
148
89
123
117
90
85
104
87
117
122
99
108
119
120
94
140
119
177
147
74
127
111
196
73
118
134
79
138
152
144
54
147
157
127
120
81
81
158
109
120
81
160
54
164
132
101
92
49
136
96
81
105
147
139
96
108
141
118
106
108
138
54
131
82
100
129
112
98
116
127
85
102
103
98
174
96
118
101
120
93
136
97
133
117
78
94
94
99
136
132
118
112
120
95
82
147
49
102
114
74
81
147
118
143
119
135
170
153
103
76
54
125
102
129
144
90
99
54
138
175
83
76
87
113
120
132
148
153
101
105
101
104
133
70
105
144
119
59
59
148
111
182
67
157
97
130
74
220
114
122
88
103
155
116
54
125
128
92
130
139
153
162
87
94
163
106
81
114
124
126
141
118
131
115
131
103
142
83
94
54
136
117
82
107
128
141
127
144
87
82
78
68
93
111
54
180
146
80
155
123
108
98
140
74
125
99
120
125
108
87
111
118
95
122
54
98
133
139
125
77
101
108
129
116
85
89
61
141
104
133
127
125
108
99
128
78
109
103
84
95
131
159
165
90
81
123
147
93
67
144
102
54
162
103
166
143
107
120
108
134
180
131
90
74
82
87
146
135
125
80
104
76
143
118
128
54
108
141
98
121
87
124
114
81
102
96
103
76
87
172
79
104
128
144
139
74
155
132
150
82
103
90
150
81
192
95
102
148
91
182
105
97
134
97
138
109
112
161
117
54
106
69
62
120
148
123
113
91
137
67
69
144
81
104
134
100
127
118
148
103
95
103
118
158
115
122
131
103
140
128
128
81
129
104
103
120
90
122
133
156
98
141
126
134
125
49
153
154
93
115
117
113
98
76
123
129
96
83
113
54
95
149
126
102
109
96
119
54
102
126
120
121
127
146
59
102
73
174
82
92
110
139
157
129
136
148
156
90
177
121
73
161
127
105
135
112
128
140
81
161
123
227
122
96
84
76
95
146
125
153
106
149
87
165
99
161
104
169
128
143
54
76
145
108
120
54
86
100
95
74
128
133
112
123
132
100
133
82
132
103
111
104
115
124
105
164
148
122
153
81
108
49
102
59
133
91
138
106
128
105
113
115
91
161
82
129
69
158
108
86
199
113
114
116
102
59
82
84
94
95
131
59
123
116
113
49
99
133
117
151
121
145
105
95
90
151
189
122
119
82
99
135
102
122
133
90
68
129
120
92
96
123
107
129
161
98
126
54
98
54
113
118
143
111
126
128
103
159
97
98
83
150
140
152
105
102
96
128
145
77
89
107
167
110
137
149
147
143
120
145
115
131
116
97
54
134
177
125
99
101
92
125
125
113
156
86
54
95
144
103
97
92
195
71
87
120
81
125
170
102
96
108
138
147
172
151
127
102
133
103
98
133
112
88
148
144
129
80
49
54
110
147
102
158
120
87
84
154
148
105
81
118
159
73
131
148
87
111
143
42
177
107
142
118
106
146
128
141
146
187
125
105
184
130
77
106
184
88
97
109
138
160
135
81
100
108
144
103
96
179
141
107
103
125
93
82
54
127
147
95
91
77
108
100
112
162
115
118
173
110
125
59
96
138
100
138
87
162
90
77
90
158
149
148
148
139
104
102
146
177
119
49
115
116
145
122
67
129
59
54
166
131
72
113
125
146
137
61
108
129
113
103
118
177
130
99
154
149
144
108
147
187
81
114
106
83
157
111
143
90
163
98
59
85
123
137
102
54
107
108
96
114
147
139
133
127
166
148
109
110
160
59
125
98
109
108
127
133
87
142
83
142
112
132
59
59
76
129
103
96
91
123
145
123
129
129
131
93
98
180
105
107
132
158
105
126
125
96
128
77
122
94
147
167
54
99
101
125
167
121
106
118
119
169
91
54
128
117
89
128
145
54
105
133
116
135
95
96
104
106
119
120
167
83
87
168
83
69
120
82
177
84
54
49
109
156
67
74
163
127
82
122
93
113
132
106
82
145
159
74
155
108
135
80
82
133
141
155
119
108
49
74
184
108
106
105
89
104
54
108
49
113
74
96
129
119
87
150
100
113
151
124
95
74
129
154
121
102
102
125
133
125
82
117
87
149
113
144
113
129
76
91
89
108
144
62
107
125
127
132
134
87
139
134
97
89
49
110
120
126
139
147
117
144
104
76
125
146
101
179
121
108
118
110
155
74
102
99
54
69
54
82
179
102
158
76
156
149
61
98
159
144
105
92
80
125
91
77
118
104
140
95
151
156
163
122
116
95
113
114
172
96
98
143
164
67
83
105
101
161
135
161
112
95
110
128
127
116
102
129
81
103
62
100
54
96
128
117
112
154
78
78
82
152
103
89
131
83
122
95
97
76
91
110
92
118
103
125
134
144
91
78
124
129
153
98
67
103
130
104
133
59
128
143
118
74
177
137
95
74
116
147
148
118
81
142
67
98
97
177
105
87
88
153
89
124
139
101
75
83
144
133
144
82
141
81
144
103
164
80
150
74
142
107
93
88
154
104
113
108
120
108
90
98
102
138
59
68
157
81
146
165
144
143
108
113
103
102
112
111
86
102
95
134
102
109
138
100
120
108
129
112
81
113
95
136
125
167
99
115
119
170
152
148
100
103
131
125
115
179
95
85
108
82
129
151
146
105
114
123
105
152
156
115
125
106
107
85
115
76
106
81
90
98
68
108
80
79
98
100
158
92
150
76
102
82
98
146
112
108
102
164
162
72
120
147
104
92
95
95
89
226
124
126
95
107
146
127
138
77
105
133
113
151
91
133
122
108
149
128
123
115
125
79
103
102
138
59
93
90
108
49
124
82
120
122
178
108
127
186
102
137
128
91
108
87
133
110
89
107
116
93
108
54
105
87
131
122
123
135
115
81
108
135
77
133
125
93
79
155
125
180
54
65
106
119
113
140
179
148
172
162
98
95
148
129
141
95
123
98
155
102
216
106
149
116
112
87
105
168
125
83
87
69
107
101
84
92
143
94
148
103
160
132
112
151
130
155
158
145
89
148
102
109
154
116
59
102
102
140
120
109
90
68
137
165
107
122
93
135
153
139
99
105
87
88
89
155
137
127
103
156
54
130
70
139
94
107
134
167
128
173
74
49
120
143
157
144
105
108
113
108
142
125
87
88
135
99
54
129
126
133
96
127
145
111
104
113
129
100
133
144
116
134
128
161
67
140
135
90
115
115
126
124
161
147
81
119
133
152
54
108
144
125
150
132
78
145
167
61
121
113
181
141
102
49
131
54
141
105
161
49
175
106
126
95
82
201
107
54
141
162
111
124
96
114
79
68
125
87
62
108
114
74
89
89
112
160
181
78
107
101
140
152
130
118
124
105
69
96
104
109
95
152
103
133
155
87
107
139
112
141
140
59
106
124
85
108
74
141
124
90
100
108
54
138
139
54
131
146
110
135
121
120
180
76
76
115
138
177
81
145
104
164
110
125
82
98
76
114
120
100
184
162
155
125
106
104
54
122
99
171
148
165
124
114
105
90
96
166
108
131
160
106
105
123
122
71
84
93
90
74
106
54
160
138
101
98
168
67
162
167
127
130
105
121
77
176
76
103
149
108
185
88
95
74
97
85
139
90
152
117
158
143
124
87
80
161
101
136
68
69
95
102
105
78
82
107
96
110
126
150
80
103
78
140
108
93
160
129
193
129
101
54
139
125
146
94
107
91
112
67
103
109
77
132
130
85
72
107
113
148
124
74
121
120
113
49
165
150
61
123
135
95
98
168
87
95
81
156
155
140
129
120
148
95
75
87
103
116
99
103
74
99
124
135
87
110
105
109
102
144
149
108
126
115
81
97
89
77
124
127
105
129
93
100
129
74
153
144
82
87
115
111
116
109
134
133
139
133
102
116
174
77
126
49
144
147
76
67
82
160
54
59
112
150
95
103
132
140
185
172
95
124
81
103
104
144
79
91
157
54
177
155
108
90
132
125
78
113
119
135
83
110
125
126
140
113
92
143
118
101
108
101
89
103
133
143
108
108
102
127
136
74
92
74
163
139
170
83
131
133
111
196
74
89
115
119
108
156
153
76
49
108
133
99
142
115
147
141
95
67
69
98
95
146
135
115
129
82
145
163
127
110
139
93
194
89
82
128
105
133
138
108
79
105
69
111
144
94
87
78
130
90
69
155
163
167
153
180
49
85
128
75
103
133
190
90
128
95
127
78
94
144
130
113
76
49
82
148
179
116
134
135
159
112
85
105
90
128
136
122
139
162
81
106
115
160
99
106
131
128
54
115
113
115
106
123
135
65
95
99
69
136
103
49
128
144
109
160
141
143
135
54
98
98
113
139
98
93
152
54
94
153
104
85
91
118
95
93
130
102
81
101
49
151
115
165
122
154
165
76
206
77
129
103
123
109
162
117
141
128
128
125
79
147
125
95
125
74
54
141
96
94
108
108
54
87
143
104
148
136
137
83
143
118
101
115
139
128
121
127
107
59
103
90
118
59
117
128
139
77
106
144
109
97
140
157
90
113
132
180
142
125
95
133
122
77
134
93
173
142
140
123
117
93
100
103
87
95
105
150
124
110
87
110
141
54
98
81
76
98
95
125
102
124
116
108
99
93
115
113
128
129
85
166
124
105
103
113
146
148
100
54
125
161
98
102
140
138
107
118
148
153
94
95
151
115
107
105
81
103
108
112
177
153
122
176
49
135
87
95
85
110
132
98
102
152
128
119
102
54
144
128
130
111
109
177
134
112
152
135
194
144
177
131
143
118
74
90
154
155
49
184
102
108
184
89
129
144
127
128
123
138
165
125
95
89
89
125
172
120
112
100
145
140
85
149
76
121
86
54
156
145
135
108
182
76
112
96
115
74
108
76
108
103
121
139
128
80
108
123
128
144
140
144
161
121
104
97
132
81
148
125
102
84
95
136
54
140
117
143
101
143
144
109
106
81
132
120
54
96
115
102
154
154
137
176
133
110
131
148
120
150
135
81
86
73
101
144
97
95
148
147
102
95
88
83
90
141
77
84
140
96
132
144
131
49
67
118
135
145
145
49
90
105
138
108
127
126
136
113
125
72
173
107
117
98
103
124
108
133
127
157
161
114
164
99
104
82
153
105
151
133
87
127
137
108
148
113
96
111
117
169
98
155
154
148
108
163
104
143
69
112
141
105
105
108
148
127
104
144
104
100
135
110
91
123
96
106
151
103
95
104
90
82
111
86
102
101
114
98
146
111
102
94
156
116
123
141
142
102
74
128
122
110
54
125
145
131
113
145
101
61
133
54
151
78
95
96
115
96
126
131
140
131
98
124
139
109
69
61
143
108
104
91
77
95
99
96
159
120
54
99
95
120
131
99
138
146
90
103
125
68
140
84
120
83
101
155
153
172
125
125
86
133
105
155
95
144
124
104
125
97
106
119
118
140
87
124
102
67
107
91
172
111
197
74
118
138
104
125
115
108
67
150
128
89
70
111
120
97
123
136
107
147
54
155
98
200
119
127
84
73
54
125
84
107
153
126
101
112
112
81
127
54
206
102
114
49
111
76
128
54
123
103
112
114
102
148
110
124
146
67
111
122
168
125
97
106
159
99
138
106
94
141
125
135
110
131
113
90
69
125
98
81
101
102
139
107
177
120
83
112
103
115
74
164
77
161
127
91
106
103
139
95
59
142
151
158
192
85
115
135
150
96
200
74
138
113
95
117
103
93
116
117
127
119
158
81
161
160
147
89
88
100
129
93
85
145
156
76
102
98
131
105
211
150
93
106
106
131
148
99
85
159
133
98
103
96
102
108
133
125
146
154
127
101
104
116
139
119
85
125
131
102
111
165
138
113
85
98
154
140
95
115
127
94
95
124
61
184
158
108
99
91
108
113
145
97
157
112
116
78
110
98
88
89
213
122
95
143
98
145
144
111
98
122
126
131
113
143
61
108
113
74
113
98
113
103
119
131
107
106
87
177
54
95
122
113
108
81
133
95
194
93
112
74
158
114
126
101
102
90
142
143
131
76
85
81
168
163
130
173
59
97
54
82
133
113
145
125
134
97
109
95
103
148
102
168
134
128
108
122
95
165
145
102
115
96
144
105
131
101
129
89
98
130
133
172
149
139
116
116
150
149
76
102
131
113
130
164
89
130
135
86
139
100
117
108
162
149
85
87
93
134
112
91
148
76
121
122
98
143
146
102
49
166
89
152
77
142
95
83
59
99
132
77
115
139
108
138
103
110
122
122
49
105
99
88
49
177
144
95
102
161
177
157
76
112
98
90
122
139
165
136
120
120
77
98
184
109
90
133
135
83
87
146
93
118
102
177
103
104
109
102
114
120
118
128
121
91
83
109
139
54
78
103
91
125
96
84
121
121
87
74
108
83
127
90
97
113
54
78
101
107
54
127
125
123
90
145
106
97
54
139
108
136
49
158
147
90
116
84
142
92
124
133
95
107
155
87
68
137
131
89
147
54
115
121
108
161
99
54
68
115
126
102
143
107
108
109
100
95
138
49
150
102
186
85
117
131
54
93
124
106
78
67
111
54
81
118
115
120
148
116
79
141
138
117
108
144
147
54
133
110
77
92
78
79
127
131
155
161
90
98
104
119
95
131
113
154
67
120
133
98
119
110
108
116
126
120
137
153
101
122
93
93
158
115
123
139
118
129
133
108
105
69
148
104
115
145
137
109
95
87
117
147
151
99
155
94
110
145
120
97
136
128
108
96
94
123
164
98
115
154
116
100
108
99
129
99
82
95
135
108
157
119
165
157
113
106
148
141
113
108
148
95
143
95
74
131
89
87
117
95
124
145
127
119
54
101
177
95
54
136
59
135
78
113
102
67
68
81
122
118
128
67
101
111
95
128
108
148
158
102
156
91
118
123
81
122
108
88
123
90
174
95
135
115
129
101
121
129
131
127
49
105
118
127
121
93
104
152
128
90
98
103
133
122
153
101
90
116
151
106
144
125
147
68
109
80
76
119
137
102
140
140
139
90
115
132
148
162
190
82
68
111
106
110
93
129
144
194
93
103
99
112
54
114
82
126
142
67
93
89
169
124
87
113
162
93
102
184
168
111
108
160
186
129
102
146
116
54
102
54
87
113
113
105
149
148
161
95
49
141
126
138
156
89
54
108
82
120
135
139
102
127
130
129
145
139
117
91
103
163
81
67
103
139
54
81
133
88
73
136
97
113
99
108
78
74
98
80
101
87
98
96
95
77
110
152
96
100
108
122
81
123
106
158
102
125
156
98
134
103
137
104
120
94
118
94
116
131
111
118
78
59
114
120
110
126
160
119
102
146
77
115
76
129
146
129
128
101
54
116
120
87
78
128
140
100
114
128
113
54
180
99
72
102
125
102
78
171
87
124
93
59
150
108
117
81
105
93
119
102
128
160
112
102
127
133
128
74
108
110
54
89
69
164
129
188
95
100
103
125
158
106
76
54
148
81
102
65
115
125
54
108
102
168
102
145
116
82
182
124
153
116
128
98
112
109
92
125
130
163
172
124
113
95
146
122
83
94
108
109
87
115
139
87
113
139
98
102
221
101
113
103
125
83
155
116
123
54
69
132
98
133
113
113
105
70
144
103
54
140
78
102
194
158
87
133
125
83
138
59
106
133
68
102
74
78
122
78
108
54
125
134
151
81
104
77
95
127
93
124
87
74
61
101
128
128
105
140
108
83
97
122
94
103
143
90
165
180
54
81
130
95
157
100
94
141
143
125
81
59
114
104
78
95
155
143
111
110
49
81
68
147
164
140
98
81
152
91
97
106
168
107
54
81
108
82
119
78
117
93
69
113
107
125
180
83
139
120
118
162
54
152
125
90
125
104
110
119
77
142
108
116
143
142
107
108
147
133
116
123
59
191
59
114
155
145
124
108
83
98
103
175
93
145
142
118
87
135
151
97
76
107
121
115
165
79
108
148
49
81
119
77
113
90
182
123
54
160
89
54
92
125
144
94
115
155
81
115
110
173
149
137
102
139
127
148
113
93
96
98
87
146
105
59
103
98
78
137
97
92
112
101
49
118
68
151
97
154
195
69
136
74
146
113
59
201
163
67
106
167
131
133
145
86
135
129
100
151
109
77
183
159
165
142
153
118
121
94
111
133
116
95
143
54
104
158
95
106
134
160
71
108
80
123
122
167
136
108
54
177
114
100
158
74
54
54
152
89
108
123
78
101
135
77
146
133
122
105
105
54
161
105
141
122
120
118
98
92
84
81
129
112
74
90
98
101
177
115
59
124
156
124
125
128
119
78
113
145
128
49
148
158
128
103
94
78
73
173
146
111
117
118
81
98
127
81
160
78
158
54
131
54
131
109
160
151
141
74
122
130
108
105
131
116
121
80
113
157
145
110
135
90
95
98
144
94
98
146
129
108
105
140
133
107
108
107
124
104
100
122
117
111
103
102
61
123
93
132
89
127
83
135
100
147
147
108
74
79
103
103
108
140
85
141
112
129
132
107
84
77
93
119
102
110
149
142
181
69
115
111
136
103
85
124
93
112
87
87
147
156
128
129
108
101
99
152
151
81
126
129
98
122
190
74
112
98
74
142
100
160
184
143
150
103
102
123
127
125
133
145
120
78
74
97
160
45
128
93
97
102
82
131
101
154
161
59
115
98
140
180
111
200
107
156
97
124
126
86
99
90
98
69
116
74
88
114
93
126
85
113
81
102
143
104
74
159
129
102
73
179
87
54
68
128
108
135
93
93
83
74
100
102
95
158
102
92
139
153
145
106
134
108
129
95
108
81
107
145
154
134
150
78
101
166
143
103
130
95
151
124
120
109
82
104
199
127
131
49
108
149
133
85
93
168
147
95
98
102
159
78
83
114
166
91
109
122
112
195
120
117
179
149
54
121
197
102
96
109
87
78
138
103
167
123
137
120
101
107
93
81
118
90
125
158
148
150
79
136
97
95
127
54
81
126
87
135
155
131
87
163
101
98
120
137
139
94
122
74
115
144
109
109
89
115
101
82
54
106
100
81
129
147
152
98
132
140
149
160
79
98
139
145
117
97
49
107
101
107
143
54
113
111
94
93
98
100
110
92
79
93
98
67
145
154
126
118
157
76
159
105
102
124
130
78
117
76
67
148
117
116
158
109
74
163
138
103
87
132
140
108
135
95
128
148
148
113
127
97
110
113
97
125
147
98
115
87
128
156
78
115
99
149
108
89
102
98
112
90
134
94
104
83
105
124
108
115
95
98
105
104
129
112
140
143
54
104
115
118
103
148
86
158
69
178
106
128
74
118
112
155
96
122
54
140
96
92
115
109
130
164
118
113
119
110
117
130
160
125
119
143
99
128
93
108
95
127
81
113
113
120
95
156
98
107
145
119
76
125
128
160
130
67
103
124
125
77
117
125
107
54
123
120
108
105
135
102
115
96
93
122
102
120
92
102
49
98
108
108
143
106
54
164
133
90
140
93
127
106
106
145
77
137
54
106
134
70
106
105
118
89
102
167
118
111
113
54
172
145
133
70
90
92
161
144
95
121
76
102
101
183
103
90
104
95
100
96
103
100
125
90
103
102
54
146
127
129
141
156
116
172
128
114
109
105
87
98
171
77
128
74
120
155
113
74
134
98
115
195
98
89
80
111
87
113
105
125
49
87
123
97
67
102
156
54
115
81
90
168
148
145
146
100
95
116
137
110
134
98
119
82
131
75
77
54
113
173
97
148
117
95
102
170
152
115
97
105
73
225
121
144
84
125
95
123
144
108
153
100
95
108
118
150
77
67
120
108
96
109
132
109
110
61
98
98
131
148
99
82
107
68
95
112
114
93
128
69
96
121
160
93
54
95
85
122
112
149
100
144
83
126
82
103
137
124
108
139
76
128
89
49
133
54
54
141
95
91
113
82
138
93
146
108
109
91
84
173
140
167
105
129
135
148
159
103
134
132
95
144
78
139
112
87
77
118
96
124
102
122
54
81
121
123
89
54
92
104
93
102
104
137
87
114
98
117
75
160
113
186
97
126
161
100
102
135
160
104
78
143
92
115
106
181
81
143
105
126
139
110
125
49
115
145
139
137
49
99
116
69
139
123
105
113
151
84
186
126
109
123
124
125
54
117
54
102
132
107
87
154
118
120
138
83
151
73
143
133
97
144
133
119
155
93
155
132
102
145
107
117
102
130
127
160
78
54
125
54
102
165
97
89
74
125
98
121
129
95
122
54
159
115
127
88
102
98
78
144
100
108
76
120
124
154
180
105
105
136
140
94
71
139
108
61
93
90
127
84
115
54
123
85
123
61
120
98
74
120
127
119
139
107
110
108
95
118
115
95
74
160
124
113
86
82
187
102
127
151
125
54
135
115
144
123
107
85
95
163
140
92
165
125
159
98
134
81
123
59
103
105
115
144
74
134
119
116
131
93
102
93
95
128
154
54
110
98
168
128
82
116
104
92
108
102
120
67
96
147
105
103
106
91
74
103
114
126
72
89
79
129
128
128
54
90
199
123
124
134
54
141
119
74
191
106
129
115
171
148
99
54
163
107
105
177
153
134
95
102
133
98
133
145
125
163
110
133
107
101
137
65
125
98
115
161
122
162
111
169
133
102
114
140
98
108
120
98
78
153
179
90
90
122
108
97
157
147
159
132
103
87
108
106
74
125
49
148
123
79
114
106
109
139
93
103
141
135
134
82
169
78
111
224
118
133
158
69
155
134
94
107
87
128
160
165
81
110
115
108
140
109
102
106
106
54
109
90
118
87
144
103
102
169
93
144
101
108
110
81
165
108
145
90
98
111
141
100
148
59
167
122
158
77
133
86
137
148
104
125
142
152
102
101
144
139
117
126
123
132
146
74
133
124
102
161
90
129
95
117
70
100
140
119
137
102
74
89
129
110
98
120
138
145
216
216
113
194
79
98
160
179
105
118
87
124
110
123
105
108
95
141
100
77
125
95
144
109
73
139
103
86
97
107
102
98
95
149
49
86
135
132
107
116
161
133
87
67
122
134
76
122
100
132
173
76
107
125
100
92
142
121
116
154
102
136
158
96
153
125
96
101
145
108
204
100
65
157
134
92
102
54
106
135
142
96
148
98
106
123
95
127
126
177
130
87
89
136
98
45
148
101
134
98
122
122
158
177
87
128
54
54
74
83
158
54
99
54
103
95
113
129
108
155
99
105
121
45
95
112
110
108
156
107
134
154
59
104
78
102
93
128
82
133
111
87
117
93
113
97
108
81
122
107
106
133
108
95
133
108
140
154
81
144
86
113
102
124
169
96
101
81
119
145
128
114
107
149
125
59
129
118
88
127
158
151
113
105
113
117
93
113
100
120
95
177
133
116
144
81
120
135
129
95
146
135
98
102
105
112
140
151
136
87
54
95
129
115
135
113
107
149
103
108
113
141
123
93
54
108
108
74
136
87
83
110
146
114
106
132
166
138
96
143
163
112
115
129
106
183
99
96
112
77
115
81
163
113
144
120
103
106
112
166
123
125
118
112
114
133
88
54
113
79
133
140
67
146
94
112
109
67
96
170
76
98
150
96
110
113
135
101
105
144
118
84
183
102
108
115
95
92
105
126
81
122
115
102
113
172
100
49
144
70
146
135
61
67
152
142
115
95
82
169
98
107
148
96
84
113
138
161
81
140
108
82
102
116
116
105
135
127
136
110
108
135
110
148
139
128
141
146
54
87
122
91
166
102
133
103
135
128
127
154
166
131
105
155
81
102
144
113
82
97
124
96
95
95
77
144
161
163
119
127
153
105
54
126
169
74
125
138
81
121
138
87
145
87
104
162
128
133
126
109
90
76
102
155
113
148
54
146
85
112
136
54
116
109
117
105
125
69
109
128
112
156
135
131
89
150
78
123
128
49
91
102
104
108
115
79
135
151
119
82
177
161
140
109
126
139
177
119
82
102
108
115
102
109
138
101
93
139
137
133
49
108
90
139
95
70
130
111
104
102
108
113
141
190
92
102
137
113
201
81
120
102
148
59
96
151
74
139
95
149
54
84
74
45
119
162
135
93
90
49
127
113
117
149
78
87
102
95
74
99
206
79
139
128
61
105
142
133
102
128
74
59
103
100
103
134
153
118
92
108
65
128
83
94
123
107
81
102
144
153
116
131
102
81
154
96
103
160
109
79
76
95
124
85
154
95
101
119
117
133
81
150
102
95
92
73
140
108
107
106
74
102
145
54
107
131
94
107
114
102
114
102
102
110
145
165
107
121
144
137
77
98
69
131
90
90
194
102
67
126
133
131
86
94
140
128
99
133
49
139
108
49
76
80
131
146
96
182
81
108
142
119
112
114
117
102
107
108
122
142
96
98
104
95
139
54
54
103
200
141
98
108
117
77
112
99
124
101
106
112
54
78
122
120
116
128
108
113
123
59
108
126
131
98
124
146
113
73
87
82
137
134
54
61
108
61
154
123
98
126
143
138
95
83
120
54
118
151
96
133
144
143
132
125
69
116
93
109
141
104
140
127
130
90
115
111
131
98
107
134
115
182
113
156
130
106
87
153
74
87
100
155
81
123
131
154
59
74
49
90
148
190
133
96
135
69
83
113
98
104
125
102
177
83
134
76
99
125
108
102
82
81
91
146
117
54
180
107
139
147
111
145
76
91
102
170
102
59
127
164
152
188
102
93
54
133
130
133
106
111
109
102
80
137
49
120
139
102
134
114
100
108
129
120
113
89
129
87
93
111
119
49
96
79
101
133
96
59
150
100
124
103
98
95
83
117
135
45
87
115
90
104
97
131
108
178
54
128
123
54
146
139
69
118
95
95
124
107
93
146
158
83
85
113
54
54
135
133
196
130
135
78
146
149
122
77
76
132
87
98
137
119
106
131
127
81
133
81
104
108
102
125
133
167
144
143
128
172
139
135
135
54
133
109
78
108
73
148
102
135
139
106
102
148
116
134
133
133
120
54
94
135
105
162
49
114
148
173
169
135
100
145
105
79
128
128
134
197
148
141
87
158
71
91
115
133
138
87
125
138
59
96
155
108
85
163
102
107
121
81
117
86
119
126
155
139
104
82
138
124
95
104
108
110
102
114
108
97
125
152
116
106
96
84
108
149
112
122
148
144
107
142
122
141
138
49
100
83
93
54
200
151
141
93
90
131
129
54
54
103
85
80
93
120
101
54
106
177
158
141
102
91
122
146
78
96
78
125
117
86
141
106
115
102
90
54
155
93
108
128
137
81
107
127
125
103
49
139
150
102
173
115
150
95
69
118
117
105
106
111
120
120
123
112
148
81
102
144
59
150
147
77
98
129
67
100
101
137
101
105
110
125
74
132
49
134
108
131
106
79
144
146
172
108
98
119
137
92
114
125
81
138
93
119
93
120
54
117
149
142
54
141
166
116
102
130
96
87
76
135
89
127
125
87
120
112
123
126
85
100
81
115
113
68
149
115
118
133
134
89
113
74
94
115
105
144
115
103
121
143
148
98
80
99
108
157
143
133
115
113
82
134
93
181
133
161
148
103
135
82
87
98
88
83
136
80
128
98
98
135
98
105
119
151
98
96
54
90
108
122
102
143
150
137
76
119
128
78
103
112
91
177
113
149
156
77
85
108
172
145
117
151
54
107
54
84
61
98
49
49
54
116
90
77
167
91
127
133
148
138
128
86
89
205
94
54
129
113
90
125
96
146
116
163
101
99
91
103
110
165
125
138
81
97
121
126
102
139
81
114
81
54
126
99
93
167
145
140
121
95
78
78
125
124
138
98
103
121
74
107
102
101
140
103
101
59
160
115
148
105
98
188
132
165
115
113
135
116
97
102
130
93
128
89
99
95
151
81
107
142
102
189
124
133
113
82
59
131
121
143
131
89
135
71
184
95
152
103
169
122
103
93
140
125
108
132
113
95
149
95
133
165
108
133
123
144
128
131
97
130
82
131
102
154
113
123
87
125
156
112
79
150
144
81
49
148
68
127
133
76
153
169
61
150
115
82
85
150
149
169
133
108
108
116
123
131
114
122
119
112
120
142
118
89
93
54
148
113
98
168
106
128
54
138
54
117
85
110
90
94
82
128
82
122
108
94
130
98
161
68
158
108
106
127
119
169
77
57
61
95
105
103
113
164
138
180
80
81
143
137
134
115
90
137
74
89
116
98
122
81
167
54
117
105
119
114
118
144
148
147
144
141
103
118
114
122
107
146
95
167
117
76
93
134
123
112
92
102
54
124
93
109
142
102
78
101
168
124
115
139
134
135
118
96
87
109
133
165
98
105
119
175
98
103
104
107
115
89
94
98
153
90
77
169
77
139
87
82
134
67
136
68
119
106
113
108
151
114
73
138
145
87
130
123
88
120
93
54
143
103
119
131
200
83
109
111
97
128
89
76
93
103
87
132
128
101
113
176
97
105
105
128
140
81
82
104
105
77
95
133
148
150
108
158
113
100
127
135
122
132
133
137
96
69
96
54
93
106
82
140
103
120
105
115
84
152
90
82
99
106
135
148
89
54
126
140
102
98
91
112
81
131
102
175
105
99
95
163
92
180
103
117
131
95
167
105
78
167
95
138
69
93
76
84
135
102
119
154
154
90
155
88
95
113
91
186
85
105
165
131
61
152
144
95
128
98
127
54
76
146
148
160
137
95
143
122
95
132
139
153
158
106
106
74
102
140
67
102
80
168
155
112
80
101
101
94
103
118
88
108
109
118
100
113
108
129
151
54
143
94
102
95
133
125
108
95
69
117
144
177
115
123
139
144
74
77
102
161
164
127
144
109
102
120
106
97
119
73
69
150
167
108
90
78
106
98
151
127
102
134
110
94
76
110
93
138
103
172
107
179
49
164
128
112
135
167
164
163
78
82
54
97
95
77
67
106
131
99
143
177
144
158
141
70
95
139
105
107
108
104
131
93
116
147
123
68
107
160
165
54
105
120
173
108
54
103
111
89
104
126
109
144
119
131
121
106
119
120
122
118
83
95
120
141
106
162
83
108
161
92
94
100
161
126
108
120
80
120
93
95
141
95
76
76
98
138
103
148
85
108
147
155
54
135
70
101
140
91
119
128
113
81
131
147
146
76
158
133
140
158
69
85
100
134
148
139
54
135
89
155
110
145
130
147
103
120
95
140
122
138
141
141
49
131
110
113
139
87
95
144
149
143
54
133
132
78
113
127
199
69
148
79
82
99
101
81
133
125
148
114
90
114
110
117
153
103
147
124
119
140
151
102
82
153
98
99
111
134
92
93
141
126
89
98
113
77
103
105
184
82
125
117
80
143
119
115
100
155
118
77
70
82
107
82
145
135
118
125
105
95
122
115
125
123
121
118
59
114
156
85
122
54
118
108
165
96
124
141
118
87
76
86
133
99
103
166
105
99
115
146
124
101
115
105
108
129
151
130
126
157
102
108
54
74
54
103
138
125
93
140
111
88
144
100
124
137
146
129
133
103
128
103
112
87
99
108
114
163
59
133
54
140
96
134
101
130
124
119
92
93
122
102
149
128
118
89
100
128
122
118
59
90
102
105
99
67
148
138
125
124
180
96
106
147
125
77
61
112
87
133
83
146
121
113
81
74
148
102
102
99
140
117
101
95
95
161
95
59
135
74
115
103
82
89
90
116
129
119
95
106
156
128
81
132
73
113
104
117
137
80
109
102
67
133
161
49
106
118
148
78
77
119
101
161
133
98
76
115
59
59
97
126
113
54
101
107
128
98
191
140
138
123
87
132
98
123
119
135
104
90
108
69
177
89
108
105
112
128
106
136
114
54
139
138
81
135
87
103
170
78
117
74
98
121
54
103
118
154
139
113
127
54
100
167
100
134
102
104
146
103
109
140
86
95
124
168
103
85
135
107
59
101
147
125
91
116
138
77
102
141
127
106
78
117
95
125
145
144
128
152
102
74
103
134
182
83
103
103
118
67
145
79
112
101
147
78
87
95
121
124
120
100
115
125
76
146
161
73
150
98
98
113
133
153
103
133
150
136
105
61
131
128
91
101
128
106
79
82
128
68
113
125
59
107
143
174
115
161
114
118
82
67
127
95
96
125
161
102
147
142
161
87
100
104
126
81
145
122
77
122
82
130
102
157
120
97
119
162
118
128
95
93
139
116
105
158
115
113
95
106
113
154
77
90
125
112
49
121
95
127
83
122
113
159
144
81
109
151
98
110
153
125
120
108
76
88
194
143
115
82
54
101
139
98
102
167
109
49
111
108
122
81
102
142
136
147
119
107
80
125
115
145
106
216
131
108
107
150
109
120
77
127
98
148
112
103
140
213
125
77
105
124
135
123
133
141
154
101
81
160
136
95
161
158
93
93
174
92
125
137
125
140
144
85
103
124
133
122
81
120
105
96
96
81
76
107
116
122
113
80
125
107
83
76
74
111
148
103
123
158
98
102
124
105
97
54
124
90
89
128
105
116
106
99
139
115
127
136
106
131
161
134
74
119
141
95
138
91
113
110
178
107
106
123
108
92
67
129
98
87
145
138
108
119
95
136
158
145
95
84
140
114
101
123
105
113
128
113
103
133
99
190
132
54
98
89
108
144
151
77
112
123
95
105
77
144
163
141
145
191
135
123
128
117
142
80
119
105
134
149
153
143
143
110
112
86
150
106
106
117
49
95
95
137
112
128
98
114
163
76
95
96
98
131
121
108
174
117
95
129
231
91
105
143
102
80
130
112
99
145
98
107
177
112
101
82
49
87
148
84
107
80
135
122
195
103
67
136
124
113
108
132
95
115
102
107
109
81
148
166
113
99
124
95
169
54
98
149
135
133
85
120
84
107
125
118
79
131
161
130
99
97
82
77
74
81
82
95
125
144
78
146
138
102
113
137
120
142
143
125
54
139
102
122
76
106
126
101
157
148
92
102
121
137
128
135
127
67
131
127
173
54
166
139
156
124
77
91
131
67
115
89
102
118
119
150
180
108
123
103
54
59
172
125
96
116
106
115
132
89
67
128
92
102
80
165
108
65
93
113
91
92
122
115
131
101
49
146
117
84
101
122
45
57
109
105
140
162
108
136
100
78
124
162
76
147
110
113
142
109
125
85
80
49
90
127
200
76
128
94
106
144
102
158
138
106
95
101
95
96
101
136
158
92
54
173
160
104
120
79
115
95
138
113
78
107
109
94
90
81
109
133
95
93
140
68
97
90
115
148
85
139
96
144
135
147
158
158
102
78
119
101
113
102
139
107
74
49
117
85
105
157
138
135
129
127
104
182
125
74
96
125
80
54
69
132
181
103
139
139
179
129
121
218
102
108
137
168
138
83
97
106
102
168
144
161
176
135
117
108
125
148
67
74
156
137
93
163
167
106
161
114
98
97
153
105
136
155
110
160
100
157
112
115
96
139
135
107
126
143
54
86
129
125
96
91
132
54
121
108
155
180
114
124
125
90
142
94
96
108
98
98
102
137
131
103
98
77
102
69
54
90
109
93
102
138
101
142
102
148
135
83
97
120
146
129
49
86
106
127
117
129
128
121
124
115
59
143
96
145
107
109
108
81
87
113
101
103
145
74
97
164
141
84
138
69
108
146
140
113
107
93
177
54
148
77
102
149
188
127
103
144
95
127
81
119
77
105
65
95
133
96
117
144
119
93
106
101
101
83
119
125
138
104
107
118
106
91
93
159
134
123
102
118
144
102
135
95
87
76
106
95
107
127
125
87
132
160
143
120
65
83
108
125
98
149
159
83
95
135
117
67
81
77
120
129
93
95
121
96
67
113
144
103
158
127
54
82
126
81
77
132
161
158
157
184
79
165
153
149
85
141
54
113
102
78
109
98
122
119
120
49
89
61
103
125
99
161
107
100
112
131
103
154
127
204
74
85
175
170
95
142
121
101
125
161
96
100
110
113
86
107
105
165
144
153
109
138
77
90
108
148
107
126
68
129
103
129
69
150
102
102
194
77
81
158
123
80
122
87
134
93
114
95
147
197
81
149
102
98
111
122
102
153
118
129
120
145
109
81
116
97
157
59
105
168
107
84
49
81
108
124
95
191
132
77
86
127
154
103
114
54
124
74
100
113
108
88
103
95
103
81
83
133
100
90
87
69
131
104
93
120
123
112
116
95
95
150
112
102
125
82
67
168
80
101
77
103
147
111
153
104
82
188
78
129
80
59
101
115
109
96
133
118
173
109
133
74
125
93
151
95
149
94
105
117
93
103
112
91
108
100
115
78
145
162
95
140
112
180
131
120
67
54
95
101
169
105
132
138
118
65
109
169
49
120
120
113
128
74
149
49
100
89
78
123
125
148
135
87
96
120
113
102
133
172
126
101
95
166
101
108
145
111
87
76
93
100
81
93
54
103
96
166
79
105
146
89
49
116
106
99
81
96
122
126
49
178
173
130
118
80
131
125
54
103
104
112
140
144
137
92
108
153
111
111
122
90
125
125
118
105
115
146
131
127
140
96
98
119
105
98
98
112
84
135
107
145
108
115
110
96
118
111
108
87
167
49
116
111
99
120
95
106
87
129
128
108
95
131
194
177
101
160
144
114
123
121
91
125
98
102
147
129
96
131
132
90
125
95
138
130
80
119
151
124
96
83
92
103
104
152
139
108
115
194
131
135
54
102
74
91
54
68
141
115
127
54
112
89
151
153
54
143
103
76
109
139
74
140
155
93
85
150
54
112
115
81
87
134
130
102
54
125
99
150
86
134
107
143
76
120
102
92
123
135
110
100
111
92
108
150
78
96
104
105
74
108
143
113
143
76
127
98
98
152
147
49
108
122
68
127
89
102
90
83
100
97
156
107
111
90
115
106
66
108
151
49
171
103
65
161
83
108
115
117
133
131
90
54
95
127
154
122
119
125
89
96
76
111
102
118
118
165
134
137
138
156
171
89
87
148
98
115
85
126
116
118
102
112
107
116
90
157
99
102
99
90
106
113
128
146
108
73
49
136
111
151
114
81
137
180
105
116
131
145
59
113
81
103
74
167
154
141
104
214
118
163
103
117
98
103
158
154
91
93
78
76
59
111
153
95
148
106
132
118
97
127
160
135
76
141
107
83
100
140
91
113
115
115
137
118
128
135
133
122
91
163
106
93
96
75
133
131
113
91
134
102
116
124
102
149
159
117
141
93
68
105
83
107
103
136
72
100
177
145
83
122
134
49
122
124
126
125
96
168
173
145
104
116
158
76
54
138
69
142
127
114
144
120
185
108
161
82
200
73
143
108
118
105
99
102
107
98
90
54
54
123
137
126
124
81
101
99
170
95
54
120
74
135
86
148
123
151
97
103
113
102
146
145
109
95
77
126
103
200
111
107
74
101
81
116
95
143
81
81
120
101
130
121
120
118
115
97
87
153
87
139
102
118
83
133
111
90
74
49
103
133
94
87
110
178
74
110
119
76
134
91
118
182
109
113
133
103
112
126
81
139
121
148
125
80
122
155
124
90
103
102
98
67
131
76
81
92
134
94
132
104
124
126
146
125
133
91
102
158
134
128
95
102
69
134
103
172
143
151
67
97
102
102
162
96
165
81
103
113
122
74
120
155
81
139
126
179
141
132
108
140
113
93
129
110
107
131
206
82
69
106
158
123
144
161
93
130
108
95
77
111
155
105
113
158
95
87
152
162
119
86
106
94
77
147
107
86
108
112
127
129
125
54
126
98
140
120
101
128
168
126
121
168
177
133
127
112
94
132
54
102
108
95
98
115
115
179
109
168
114
158
113
119
90
167
102
172
115
134
59
101
119
103
80
125
98
82
87
147
83
94
105
153
125
143
143
86
113
93
122
96
115
97
54
112
102
129
115
121
123
54
88
102
142
122
135
81
118
92
114
74
107
141
140
117
153
172
49
77
142
128
116
144
122
54
159
146
99
102
108
105
95
124
142
98
90
147
91
156
173
112
128
95
116
113
122
74
92
116
181
150
61
83
125
99
108
83
121
160
111
118
134
91
145
108
141
59
106
126
94
153
125
141
110
215
141
122
98
149
128
114
169
110
98
125
155
105
113
121
108
143
105
127
150
113
87
147
123
156
80
133
78
117
93
113
79
113
119
105
133
89
105
82
104
119
74
113
88
113
133
148
130
135
127
86
78
132
165
102
109
157
140
106
49
94
96
124
79
49
118
158
125
148
74
104
102
84
186
103
104
105
110
177
76
84
108
103
105
97
115
105
158
117
108
140
104
139
119
135
108
148
112
103
120
120
98
82
54
92
158
67
133
115
127
98
108
84
106
123
114
189
102
102
109
97
143
98
175
131
142
137
89
112
105
108
131
133
131
125
110
69
125
96
107
149
139
128
226
188
114
109
67
129
129
152
77
86
134
81
117
107
118
139
87
114
108
127
82
111
100
134
175
54
119
130
193
110
82
102
169
98
81
148
130
104
109
83
141
54
84
116
107
140
102
177
113
108
108
169
142
146
105
128
153
115
78
143
131
125
158
77
57
59
147
133
143
123
162
161
54
163
108
128
149
134
73
54
81
103
182
113
93
70
106
147
76
137
148
96
108
148
156
131
91
111
108
61
96
197
107
73
54
118
104
121
119
135
114
87
98
93
102
135
165
98
160
135
129
125
149
140
74
106
103
190
123
147
120
150
93
115
127
162
126
138
143
218
145
111
108
103
120
167
98
110
90
87
131
156
106
122
84
54
102
173
135
75
109
87
114
136
181
149
126
158
54
49
137
129
133
127
59
105
106
87
100
116
54
126
96
176
147
122
129
137
177
144
135
97
172
102
131
78
103
177
98
160
148
84
160
121
146
138
83
113
131
145
102
126
142
154
98
134
140
81
113
76
108
126
163
125
81
146
106
91
122
87
81
150
80
132
81
102
121
109
73
98
108
130
139
144
59
90
85
125
120
72
123
163
163
108
101
102
98
108
144
142
70
127
144
106
159
162
49
161
144
145
117
160
124
90
54
113
133
178
139
90
103
186
81
59
132
123
125
133
152
93
102
179
197
145
49
95
124
77
141
106
156
146
92
108
78
161
123
102
178
179
134
134
85
89
150
122
140
93
123
148
131
140
67
59
81
138
59
143
103
184
102
135
123
99
95
140
59
106
194
134
161
106
144
95
139
98
105
111
140
158
81
80
126
83
135
97
110
103
120
91
143
104
67
116
161
96
102
59
99
83
106
114
113
104
88
107
101
99
115
100
122
131
97
110
62
79
160
88
76
169
135
85
115
87
49
131
81
139
115
67
145
104
161
95
89
152
135
90
102
116
112
83
140
68
98
120
54
133
106
45
113
103
108
79
59
108
112
112
59
148
148
98
127
94
147
54
90
129
186
109
98
112
129
96
127
133
105
106
119
49
96
151
135
138
73
134
61
148
116
99
105
102
95
126
49
132
107
123
103
155
194
88
90
125
98
164
74
160
59
189
171
93
126
130
172
144
85
123
123
127
194
119
54
103
103
105
93
76
123
162
106
107
135
54
74
106
139
102
54
102
153
83
105
95
135
131
81
129
101
130
108
105
143
124
93
102
127
135
87
117
124
110
99
128
80
167
103
107
69
93
125
178
116
143
134
87
133
100
124
131
219
103
106
140
144
101
108
82
137
77
104
95
115
61
102
147
90
128
128
104
144
81
78
147
164
96
133
120
114
75
143
157
144
119
76
165
108
116
125
102
77
131
112
54
87
100
81
113
145
116
98
108
101
125
108
99
102
130
115
68
135
89
122
112
82
120
120
113
124
105
139
67
102
106
135
103
135
116
85
166
124
121
110
92
150
144
78
102
103
87
97
49
113
98
149
129
140
163
78
127
115
110
95
98
102
108
179
170
90
115
87
120
154
129
103
120
141
155
125
140
133
127
122
54
84
156
177
132
101
123
49
89
96
137
112
114
54
165
106
108
107
114
107
134
171
165
95
98
124
126
108
95
131
92
122
98
126
59
95
81
135
103
125
121
123
123
87
102
97
123
162
125
108
54
129
115
67
133
143
125
118
135
133
108
138
124
155
144
89
100
121
144
158
128
143
69
82
94
97
134
84
128
139
123
98
149
148
113
59
172
127
76
156
118
138
108
103
102
114
106
108
118
135
135
96
131
113
74
115
184
113
102
131
79
122
105
97
145
127
135
95
83
146
92
126
125
81
54
111
164
54
108
115
133
128
86
148
87
95
95
132
160
173
156
123
133
124
182
106
93
125
139
49
157
116
102
90
158
87
97
131
125
161
152
103
91
77
131
148
76
131
107
108
117
114
119
164
135
120
119
100
143
98
146
161
92
143
77
116
74
82
186
99
89
93
86
119
154
179
151
118
177
147
120
127
125
133
76
107
128
122
169
153
148
54
100
69
149
152
68
81
95
168
118
102
63
167
110
105
156
128
103
106
115
97
59
137
125
102
95
102
100
97
100
177
118
110
108
102
115
135
111
137
90
102
130
143
100
103
143
148
90
139
81
131
158
130
95
128
158
108
86
161
98
76
145
131
102
81
133
133
109
95
127
151
140
54
87
74
145
108
101
153
54
177
104
78
104
138
144
158
131
91
108
100
134
162
82
97
98
165
146
102
117
98
149
77
84
96
95
131
76
77
112
87
107
83
93
109
147
122
107
138
102
115
81
128
113
49
117
136
103
114
102
133
76
134
127
131
104
172
172
126
95
106
140
81
185
230
49
119
116
162
78
150
54
95
135
138
103
100
76
77
143
117
156
79
105
147
164
123
112
95
126
131
100
82
133
134
141
168
102
116
113
59
125
168
150
108
108
105
186
131
110
89
118
140
97
99
95
159
99
135
103
78
106
115
108
98
108
61
120
96
113
54
138
82
141
95
129
167
146
158
106
95
122
97
156
123
59
81
144
77
127
85
83
54
117
61
93
127
109
148
97
158
116
132
74
174
84
159
137
74
125
126
129
69
142
130
139
109
149
91
78
169
83
95
86
130
153
102
68
98
159
154
54
108
74
101
128
98
97
76
99
79
135
113
97
100
77
106
122
143
76
59
87
108
130
148
140
109
114
82
95
87
148
118
200
123
108
148
108
152
131
163
98
49
115
120
83
81
76
95
93
113
54
131
137
109
101
137
141
98
108
121
61
120
136
139
150
115
103
111
118
116
127
95
101
95
116
143
96
109
102
145
172
148
76
100
149
112
99
91
99
54
135
85
124
152
113
107
98
138
142
92
116
74
149
144
116
133
49
185
125
108
145
101
140
77
87
100
86
116
102
98
182
143
95
103
146
116
137
110
102
68
161
133
157
97
108
112
70
131
108
93
107
65
168
102
91
81
144
54
134
159
98
112
111
132
54
124
87
73
158
138
124
132
148
134
90
127
177
77
142
108
122
107
106
118
128
127
114
168
106
108
81
128
102
105
113
102
127
117
102
160
114
102
134
124
128
76
132
123
86
103
177
175
119
85
101
108
123
75
142
95
102
154
123
87
152
122
158
134
91
131
105
83
133
148
119
132
184
136
103
87
115
169
107
133
115
115
139
95
120
115
137
202
131
112
59
122
131
121
89
112
126
155
91
157
186
113
144
107
149
98
118
142
128
95
76
103
59
98
113
145
127
82
96
149
74
92
157
76
157
59
86
151
161
139
108
158
92
54
116
108
103
81
95
59
109
80
83
120
103
168
109
164
140
126
161
148
95
140
177
103
103
104
131
49
139
104
87
115
96
105
132
91
95
133
116
85
117
125
86
87
118
129
97
114
87
122
148
74
165
150
105
114
75
89
168
95
139
102
148
149
148
109
140
92
135
135
93
83
139
85
137
77
95
100
83
102
98
132
98
109
136
128
129
140
142
106
102
65
121
128
121
78
106
103
170
130
135
142
182
124
122
127
125
106
81
121
102
98
127
59
82
80
102
155
124
67
59
98
130
108
124
104
102
133
80
108
120
134
98
54
176
113
69
94
54
139
129
150
102
113
125
138
155
126
182
95
59
90
128
81
115
76
178
132
110
42
78
124
143
114
180
130
153
121
143
115
149
122
105
161
128
95
115
86
110
130
148
100
118
132
87
81
97
151
98
94
73
124
77
129
117
159
83
82
132
100
148
101
117
100
130
113
83
179
130
127
157
108
82
93
102
135
115
116
92
155
54
127
74
113
143
133
125
54
125
125
116
125
156
87
118
158
147
127
117
105
105
135
151
110
131
70
119
118
144
155
141
106
141
68
158
96
125
69
129
155
122
108
110
89
74
167
134
116
87
151
109
123
103
91
110
125
128
49
95
78
106
119
127
107
124
144
118
78
110
103
125
153
109
163
138
163
78
156
76
125
95
153
123
78
100
102
93
103
74
115
155
171
90
82
109
59
148
134
163
81
118
99
126
118
141
103
102
89
125
115
98
83
108
157
135
110
76
119
91
99
101
106
103
161
83
79
99
74
102
126
116
54
95
59
106
95
91
153
115
127
82
108
84
120
113
114
94
124
143
49
102
77
119
90
110
132
120
135
93
77
108
118
113
128
125
163
165
129
118
201
125
116
49
161
117
92
127
108
87
89
200
140
108
107
80
49
101
85
142
113
45
106
80
128
96
54
143
118
108
139
115
86
104
59
117
139
78
161
145
86
91
59
114
119
62
156
98
138
98
59
142
106
115
136
111
108
152
120
87
111
150
147
118
103
54
108
77
120
78
108
77
123
81
86
81
129
141
119
125
86
143
165
122
106
141
143
104
54
162
129
90
54
95
94
108
93
107
105
98
145
54
87
110
101
54
146
103
154
145
49
138
54
145
129
143
116
84
84
61
117
105
108
162
77
159
149
125
121
108
103
74
123
79
79
95
91
54
107
88
103
106
158
115
160
100
128
101
146
74
133
108
108
95
102
118
105
100
118
143
72
104
109
128
115
81
77
115
141
59
138
83
124
130
95
120
142
81
110
98
114
113
108
90
115
122
98
102
113
180
107
77
59
100
154
111
165
130
186
152
102
112
125
133
97
138
126
102
161
114
103
110
123
95
54
93
102
94
113
96
105
101
108
168
116
102
105
121
141
83
145
115
128
109
148
131
68
94
82
130
122
142
116
97
119
96
87
90
125
162
54
127
191
133
104
143
128
88
115
77
128
109
59
112
76
162
54
149
74
127
110
145
104
78
74
117
90
116
132
77
115
108
70
144
134
145
149
105
81
101
99
146
54
101
82
147
108
150
54
98
133
93
102
94
109
103
82
102
131
54
99
140
163
59
118
95
108
148
144
77
103
61
49
77
95
120
88
163
82
139
111
136
81
120
157
99
85
105
116
124
85
125
165
128
148
54
95
113
177
98
133
105
147
163
106
113
97
108
89
118
123
108
103
106
108
107
95
99
143
77
184
124
153
81
94
98
111
138
102
99
131
103
112
145
133
159
95
160
102
81
90
103
120
118
115
138
144
89
132
121
98
103
124
87
102
101
149
100
132
103
91
145
95
103
129
54
133
160
143
139
127
84
102
133
107
93
103
154
100
120
54
95
98
81
106
95
120
115
98
147
104
76
90
105
120
97
134
83
95
104
144
76
114
157
145
100
180
108
163
90
86
98
124
128
67
101
141
114
93
160
82
85
95
127
113
142
113
123
119
174
98
139
140
123
129
78
105
108
81
102
136
128
142
161
140
108
159
69
114
138
85
138
102
131
96
102
106
192
81
95
90
123
149
134
143
91
98
144
140
126
160
118
97
180
93
137
158
201
118
90
49
176
103
95
115
123
82
130
68
101
108
108
135
95
90
144
119
67
153
111
100
74
108
98
95
146
146
100
129
127
83
81
59
213
114
157
143
74
110
159
157
100
168
82
103
132
105
74
144
135
156
181
132
61
104
128
120
161
85
168
102
177
119
61
164
113
122
90
123
81
160
74
170
145
124
107
158
170
139
78
102
54
118
177
97
100
126
138
113
130
77
87
95
119
68
120
148
134
119
127
54
144
88
74
85
102
135
126
150
123
98
94
104
131
105
108
133
85
77
146
85
151
98
133
142
115
163
84
78
123
158
110
133
86
115
170
129
96
132
86
105
110
155
68
88
86
82
54
118
54
132
133
126
115
200
100
85
95
168
152
54
104
69
127
112
165
123
109
140
180
102
147
138
107
121
120
85
204
98
106
83
96
111
120
96
133
81
129
99
140
102
95
144
95
105
105
135
177
87
169
85
90
108
102
74
143
122
119
125
152
114
97
77
147
148
108
92
94
102
140
174
74
108
98
101
95
95
130
108
157
163
74
77
49
145
131
81
145
100
93
150
85
129
76
133
104
137
141
94
111
118
133
125
145
155
139
144
74
117
49
106
108
54
133
115
139
95
120
102
74
95
54
157
127
108
105
102
54
87
125
158
101
149
158
118
107
120
91
76
145
127
143
163
164
81
109
107
140
74
190
122
61
125
119
109
101
54
120
112
148
93
111
109
117
113
81
96
102
113
149
123
54
164
94
133
54
128
143
106
123
76
109
148
121
125
95
102
156
92
109
139
73
59
79
123
110
102
116
113
98
74
108
158
61
83
123
109
135
146
151
97
130
97
119
91
161
139
78
94
172
87
59
95
100
144
180
113
98
106
134
130
144
119
127
77
143
54
138
98
101
81
167
143
87
116
82
162
170
103
95
121
141
114
59
121
167
85
124
83
108
91
128
109
148
131
95
135
98
140
128
122
148
135
125
103
130
107
150
75
104
144
114
61
147
146
91
118
110
144
130
169
95
135
130
129
124
81
147
124
77
74
112
80
83
100
116
148
81
134
145
120
103
105
131
123
59
165
159
114
149
94
135
81
96
118
107
76
103
139
210
154
122
161
88
182
139
96
134
104
141
108
154
87
108
140
119
113
102
124
81
83
83
80
68
148
99
80
85
87
132
95
132
101
120
82
125
54
125
147
119
105
113
177
112
127
133
129
122
90
178
102
102
137
125
120
98
173
133
108
74
131
129
99
108
99
106
132
125
97
107
54
122
144
104
106
154
121
54
98
90
128
91
120
54
122
190
105
102
128
98
113
87
156
128
138
112
95
107
140
171
114
140
105
54
127
106
87
137
168
132
83
119
103
154
162
109
102
100
107
90
96
139
109
131
87
144
117
112
49
98
118
101
95
143
118
109
141
185
108
151
74
138
159
185
136
98
93
90
98
118
151
107
113
148
140
105
131
145
129
122
102
83
83
70
54
144
116
141
139
83
144
121
81
116
99
54
118
86
96
159
120
185
73
171
129
132
106
100
75
126
131
123
150
175
103
127
99
98
140
107
106
168
148
136
127
141
114
149
162
90
78
105
134
159
118
135
105
130
86
111
115
114
134
133
125
118
92
113
101
54
69
134
152
106
113
109
142
123
125
98
97
124
110
148
133
159
148
82
125
81
59
123
82
119
116
161
119
103
112
87
137
112
49
122
81
120
177
95
113
118
143
93
145
116
149
157
165
142
148
135
116
90
115
124
82
146
59
126
146
138
98
122
115
81
128
81
121
128
95
122
105
171
139
144
76
143
128
134
81
169
127
138
77
116
67
149
81
128
165
49
49
108
124
54
126
90
108
120
125
146
101
124
103
108
102
107
150
145
188
139
133
59
96
98
81
133
132
125
139
113
120
133
95
110
128
109
54
146
85
78
161
130
131
105
95
108
115
67
54
102
130
107
113
102
81
179
125
108
120
86
127
120
108
130
105
135
81
100
95
137
144
96
131
85
69
146
105
123
145
82
108
147
94
78
123
141
127
126
121
124
101
94
84
102
151
112
140
67
75
137
54
128
115
181
112
127
97
97
93
136
129
155
106
145
98
123
113
104
95
100
102
81
159
200
93
124
116
102
122
82
65
95
113
119
80
124
138
49
119
87
92
128
143
146
106
105
103
83
138
108
120
107
113
107
67
99
102
76
103
160
93
116
87
129
124
85
83
118
128
151
106
95
143
99
65
118
161
195
125
171
59
54
101
95
127
135
98
137
76
74
83
122
76
98
183
54
101
96
104
141
122
156
161
115
107
151
98
80
129
124
113
153
128
142
113
77
132
139
90
130
99
102
69
131
78
103
84
92
82
120
131
140
93
139
120
77
134
139
112
77
85
102
54
113
105
106
121
65
136
103
160
130
134
90
101
97
113
158
112
95
158
155
123
140
137
110
107
126
103
139
177
145
143
76
102
62
119
74
176
128
98
128
136
154
122
106
68
101
90
77
178
90
96
116
128
125
118
96
180
81
108
81
78
54
164
108
104
179
93
94
103
119
98
128
110
109
162
139
141
106
49
116
121
87
59
88
113
97
103
54
74
87
84
87
83
85
148
90
98
148
131
170
73
98
148
148
131
103
78
131
106
105
163
94
108
123
98
150
102
84
133
96
118
135
87
81
110
140
137
59
158
140
119
156
141
87
153
125
82
108
119
104
135
87
133
115
153
125
158
125
97
98
157
134
88
149
103
59
87
147
150
80
94
101
99
126
128
103
117
49
102
118
125
90
133
126
98
87
105
54
82
125
105
117
156
101
84
150
91
166
138
100
80
49
99
113
103
159
54
126
107
103
104
61
119
99
103
91
121
100
94
82
97
124
143
79
107
148
124
119
88
145
159
158
78
197
91
133
125
88
153
93
81
99
83
87
77
135
137
108
104
162
81
85
125
127
124
158
95
49
113
126
140
78
111
85
114
147
94
106
86
101
77
146
113
141
108
124
103
135
120
133
110
122
76
100
103
165
95
111
98
100
90
92
123
89
160
156
54
146
102
90
108
98
98
154
120
84
102
132
103
140
177
92
133
118
127
108
133
123
120
160
178
101
189
168
115
54
102
103
67
90
123
128
62
144
150
89
78
118
143
108
186
95
102
112
108
102
143
112
107
125
135
82
160
103
104
123
155
73
92
102
112
130
158
146
87
67
127
145
156
107
133
138
138
139
108
77
76
133
93
85
120
153
90
122
120
127
135
59
122
98
99
145
76
67
96
105
105
75
133
69
88
118
135
115
121
69
49
95
116
125
118
108
116
180
183
94
144
54
90
74
144
165
135
90
74
107
150
106
82
125
104
95
101
95
114
177
128
116
103
147
136
108
135
113
91
101
115
120
82
87
146
118
142
113
125
102
78
133
98
146
137
157
88
99
125
98
93
83
144
101
133
100
49
127
126
84
135
128
165
151
59
102
137
54
131
117
76
152
120
118
148
78
138
117
109
132
77
146
143
180
117
76
193
98
102
101
109
145
108
107
80
92
157
116
93
87
76
140
144
54
112
122
105
98
139
132
54
103
154
124
120
104
145
100
81
129
79
116
120
82
108
117
122
110
148
151
133
153
179
120
177
115
87
118
78
131
80
106
98
125
59
93
113
107
89
93
133
131
118
78
95
125
67
96
127
68
122
125
124
177
156
108
108
130
119
111
130
54
144
130
188
121
145
150
172
107
129
80
105
123
125
101
103
90
123
126
112
97
138
102
73
105
98
69
137
54
143
76
98
93
156
106
115
105
118
94
111
105
173
108
159
101
145
165
45
128
106
144
127
93
97
101
131
67
159
131
119
83
132
108
148
102
107
129
108
68
77
105
81
141
112
134
110
133
131
116
128
105
111
106
54
98
131
105
63
105
144
102
92
155
166
54
123
79
121
74
105
102
121
89
110
121
121
114
124
98
141
106
103
122
79
87
107
83
180
109
54
121
106
98
120
129
123
95
114
95
119
113
129
148
146
54
146
145
125
140
115
120
158
114
194
121
135
68
138
84
136
95
87
133
154
117
77
54
113
91
108
92
106
135
96
115
67
54
114
144
97
122
108
54
126
106
95
151
125
98
81
65
121
128
127
83
85
92
103
145
151
98
126
79
112
128
156
114
118
94
102
95
158
89
144
104
94
128
97
77
95
124
118
113
100
83
90
130
132
195
111
143
128
100
96
139
102
170
116
54
74
133
59
109
98
108
85
128
135
112
100
128
59
141
139
113
132
156
81
103
148
108
86
102
149
122
59
118
98
122
59
144
138
81
141
133
152
149
74
115
134
123
109
148
126
95
148
102
120
98
102
98
142
131
115
77
118
108
106
107
97
81
90
98
103
143
54
111
59
80
143
84
95
137
165
144
69
126
54
123
99
108
94
103
117
141
77
54
191
144
105
96
74
143
54
206
116
168
133
120
103
105
110
118
135
91
67
110
127
130
101
125
134
139
128
146
109
111
83
187
99
105
131
159
139
122
131
96
128
134
87
104
93
148
139
113
102
120
77
91
108
54
120
102
113
131
95
135
108
114
112
93
97
152
148
161
106
101
117
126
133
114
143
109
141
132
80
153
90
87
102
81
115
87
114
138
116
147
205
120
86
127
93
103
110
126
147
89
115
159
104
107
151
135
152
82
143
95
81
87
89
117
128
105
123
125
49
149
68
119
93
115
108
103
167
115
111
90
94
120
163
92
70
49
101
116
136
158
148
79
88
78
153
90
126
95
157
122
108
124
156
81
135
102
150
129
93
103
123
148
132
141
86
139
102
121
143
126
114
102
54
94
76
107
149
96
49
102
112
109
148
135
114
80
81
69
177
137
171
143
129
101
82
54
118
139
145
65
143
132
149
154
116
165
76
86
128
127
125
61
132
144
73
100
107
124
148
106
171
133
134
98
170
130
102
101
76
135
94
163
139
147
153
148
102
191
90
133
161
128
113
117
118
102
124
131
97
119
148
131
143
80
54
98
76
143
102
141
112
98
118
140
116
188
129
167
140
145
139
45
95
189
147
150
172
171
81
103
108
151
102
93
128
98
123
103
140
152
183
144
105
125
59
144
170
85
125
107
104
128
180
59
54
104
111
81
102
78
132
129
151
103
135
105
159
133
91
132
98
104
94
117
54
99
90
94
76
118
148
108
108
84
108
82
177
118
128
145
116
158
111
100
148
97
89
59
54
100
82
98
99
74
133
77
121
85
158
67
102
87
119
70
82
115
119
116
118
91
77
134
79
68
54
76
97
82
116
118
127
111
113
124
98
138
120
112
82
78
113
144
103
133
108
86
54
97
104
97
105
94
102
115
104
108
158
54
111
168
106
54
129
115
95
98
74
125
94
59
69
108
147
164
116
123
82
106
143
106
113
103
90
129
142
188
145
123
112
103
139
150
146
89
138
107
142
115
85
102
69
156
103
83
69
131
99
78
95
77
136
49
148
74
135
103
127
148
67
115
87
127
54
118
67
116
93
87
145
101
107
177
115
177
159
102
123
110
93
82
101
76
159
124
146
148
81
137
59
181
102
110
117
78
111
85
99
132
168
112
128
96
122
99
104
113
120
125
59
110
67
89
115
112
116
135
113
145
127
117
54
101
121
108
115
109
77
61
157
106
59
54
158
95
135
80
133
89
140
134
106
106
79
125
164
173
139
85
81
76
90
167
110
114
188
149
122
131
113
102
102
116
121
145
101
107
108
127
130
83
61
112
84
152
100
67
69
78
77
120
134
112
134
98
142
142
165
153
158
123
108
138
153
103
126
82
157
165
110
87
103
104
111
95
120
109
103
133
102
107
88
98
152
81
117
98
91
106
149
131
108
104
127
133
77
90
125
147
102
138
102
134
75
119
152
123
145
158
91
176
131
113
129
85
112
133
115
82
128
117
102
125
105
146
161
114
115
108
111
172
98
143
107
112
100
119
77
90
103
90
163
98
103
148
115
74
54
98
131
149
128
81
175
132
97
91
85
72
113
110
149
95
192
91
102
102
54
67
160
102
109
95
97
73
117
90
118
96
151
149
147
142
111
104
83
174
67
94
107
143
79
104
124
100
167
87
109
81
108
108
89
87
102
124
98
180
125
94
162
85
135
148
74
102
83
115
143
103
93
188
69
89
88
98
161
125
81
157
80
144
151
167
107
54
88
104
108
81
106
95
81
111
130
137
129
111
95
163
81
105
128
133
133
95
90
128
103
123
93
94
133
121
135
98
123
197
156
140
81
125
59
98
153
88
144
96
164
123
87
140
119
130
122
104
108
147
118
81
117
126
97
118
119
129
113
106
148
162
95
107
90
120
128
133
185
86
94
113
132
135
120
118
103
54
101
102
100
138
135
140
115
155
175
105
144
125
61
119
160
158
158
113
102
155
103
54
59
120
96
102
143
85
125
124
88
143
118
67
95
100
108
140
54
77
106
97
102
160
103
113
117
119
132
98
97
123
95
148
138
98
145
151
69
149
153
163
106
151
130
158
135
102
103
121
90
146
121
112
125
170
61
167
103
97
89
118
130
125
128
111
95
137
122
117
98
117
102
108
61
121
124
105
85
97
82
110
74
124
182
132
81
99
76
135
54
135
181
75
135
106
105
114
80
108
68
147
132
88
143
103
131
111
95
69
104
97
116
172
167
127
146
95
145
123
147
119
124
125
91
145
119
118
87
147
119
106
135
115
82
106
59
156
135
54
136
116
177
126
59
117
80
97
103
141
189
107
95
88
102
98
59
103
110
132
194
99
175
76
138
124
117
77
120
137
78
54
99
133
115
97
131
74
102
77
115
77
68
105
118
128
129
186
82
206
95
107
54
76
106
114
94
199
81
98
117
98
132
103
164
94
140
84
93
105
139
110
110
94
128
125
125
91
81
131
102
130
122
110
137
183
114
105
108
93
144
139
120
80
109
150
138
139
59
130
143
94
67
135
131
144
110
88
107
118
152
116
103
82
89
118
112
61
104
107
133
130
126
124
127
133
78
108
117
127
103
76
119
112
143
91
199
102
91
98
132
102
144
119
59
132
111
148
150
132
112
165
83
105
93
103
125
128
95
146
93
119
101
59
81
95
76
61
148
54
112
135
86
158
108
158
125
81
138
54
81
119
140
59
132
117
103
107
150
80
138
149
103
126
102
132
93
154
100
99
139
83
149
111
80
95
74
114
152
128
107
126
171
108
119
105
122
78
99
54
151
131
153
103
102
151
125
127
98
107
192
102
148
105
160
123
172
100
126
167
104
110
87
142
74
118
84
139
107
107
74
152
120
128
86
54
135
54
120
145
95
93
80
169
87
106
148
106
98
116
95
162
134
101
132
100
77
131
143
178
90
206
148
75
61
109
90
125
150
81
74
106
129
132
159
159
59
74
139
113
147
97
129
90
81
98
96
102
152
59
139
122
188
95
148
144
54
54
98
123
150
134
76
87
137
118
102
107
114
100
132
102
121
140
141
170
102
87
183
82
123
145
54
61
98
144
90
143
127
102
95
115
105
59
164
114
129
148
81
108
160
136
148
85
98
92
61
115
83
49
128
108
83
54
141
122
81
109
128
84
126
177
122
120
128
116
103
104
108
112
105
158
161
117
133
112
135
95
115
147
124
106
54
101
116
150
113
127
86
106
98
143
80
105
125
124
138
110
54
125
166
95
108
83
54
121
102
101
115
118
119
90
157
107
121
102
87
68
83
133
137
103
111
83
105
135
156
83
110
97
73
151
132
100
98
168
129
93
108
154
119
54
90
127
129
150
140
172
129
120
139
95
145
116
106
54
117
122
76
95
95
125
103
148
135
124
111
132
98
110
139
89
108
115
108
128
139
108
105
107
147
108
134
80
112
151
119
77
123
90
137
108
152
135
81
98
123
122
129
85
113
104
133
123
140
92
77
145
117
117
133
105
108
100
76
152
74
104
95
153
81
108
145
101
82
49
77
109
82
161
59
77
135
93
110
102
125
141
109
113
118
81
54
145
84
97
80
104
117
127
81
118
108
133
91
102
142
131
108
118
134
108
108
94
114
106
109
151
95
123
108
156
74
94
132
136
124
92
128
105
153
104
123
59
113
102
118
143
120
110
137
103
186
123
112
131
78
111
123
92
110
150
128
90
148
127
54
142
106
108
105
85
147
145
125
154
94
194
149
148
120
140
88
131
67
98
122
125
92
164
54
112
133
135
86
133
104
98
88
87
101
76
125
108
131
185
74
137
148
127
59
76
107
131
99
87
92
126
149
122
157
167
97
108
81
133
169
222
145
108
67
73
61
153
131
131
96
59
128
104
141
102
98
131
84
95
54
118
93
82
82
140
148
82
133
154
59
93
108
161
129
161
105
96
128
54
125
132
133
100
104
144
158
123
108
128
98
69
146
95
101
118
118
108
152
54
128
164
81
67
124
148
129
89
153
99
120
103
128
94
96
95
81
91
121
116
107
150
117
122
98
91
74
103
97
121
95
89
109
151
76
142
61
128
143
135
69
158
96
192
145
148
121
118
105
104
93
108
81
95
82
141
67
127
136
84
102
102
54
130
81
118
129
115
93
140
95
78
107
128
141
54
98
100
82
85
94
160
126
83
156
59
144
114
132
100
113
96
74
135
105
65
120
98
103
153
118
160
158
124
96
94
119
95
83
100
202
135
135
132
146
102
71
54
143
78
130
73
81
112
74
122
120
100
164
118
83
114
158
90
120
95
98
116
85
145
141
76
146
114
162
109
97
76
90
90
139
105
128
170
132
107
85
102
76
177
81
132
128
98
119
122
107
146
122
147
81
94
54
167
143
141
127
93
125
115
129
139
94
103
140
100
95
82
84
112
83
102
125
159
120
100
108
107
114
54
81
139
138
54
129
108
159
141
135
102
123
87
114
100
148
101
88
91
104
81
131
98
148
131
79
98
108
54
161
167
100
72
117
159
143
95
144
132
133
104
118
135
193
76
90
88
81
105
82
98
97
99
103
106
129
133
98
81
102
124
59
96
190
102
78
131
120
117
145
158
135
109
111
85
131
149
84
98
77
106
125
104
110
132
120
99
179
95
130
103
141
106
95
80
161
125
146
108
157
148
112
142
131
102
126
130
93
104
103
102
169
88
102
200
96
98
81
149
132
82
115
91
93
125
139
102
87
125
49
103
166
160
94
74
54
158
135
76
107
128
108
74
112
159
129
59
95
109
176
123
137
68
117
131
155
141
80
82
120
59
94
101
128
143
59
81
198
126
112
167
133
76
94
140
126
95
180
112
132
115
130
110
133
126
150
98
113
101
152
107
138
90
118
150
158
87
125
74
49
102
127
104
134
59
115
165
81
128
127
127
83
135
118
112
119
141
90
114
127
80
139
98
150
77
74
92
103
100
131
155
95
161
98
102
156
120
106
117
133
129
81
74
94
108
159
130
78
128
82
111
143
122
96
122
87
80
135
177
89
148
128
126
116
89
113
97
63
100
69
89
103
189
95
89
54
135
112
89
125
100
114
177
111
114
114
94
111
77
95
134
107
84
138
116
72
136
145
95
108
94
105
115
114
124
120
115
69
83
133
130
118
145
82
54
116
143
90
59
126
129
87
98
69
77
108
190
103
108
127
109
95
74
95
116
172
110
108
91
120
128
131
98
120
129
119
117
145
142
67
98
133
163
139
120
143
188
127
119
122
82
65
125
110
103
108
93
125
100
131
78
98
88
90
81
54
76
54
104
69
160
161
83
67
107
127
115
106
105
104
148
77
80
160
135
114
96
146
82
133
123
155
107
130
114
137
54
129
98
111
143
161
114
92
133
91
67
106
128
155
139
87
168
90
144
118
124
102
123
90
90
96
127
99
49
162
54
115
103
85
148
119
79
129
98
150
144
109
125
128
129
168
125
121
117
125
143
161
127
117
113
126
113
207
83
155
106
184
141
83
133
140
109
115
102
140
102
113
113
111
127
131
108
167
95
54
161
144
163
123
126
128
200
183
103
98
54
101
92
128
124
114
108
131
144
165
95
93
86
77
103
117
76
108
155
104
153
108
138
54
101
93
95
124
67
119
106
87
96
132
102
142
177
99
120
90
83
92
89
74
131
54
126
132
157
141
90
114
98
61
65
89
153
153
125
177
77
136
81
118
102
139
94
154
167
78
120
101
83
132
54
120
145
148
163
102
149
144
80
104
108
95
106
98
141
101
92
127
108
78
92
85
74
94
97
113
91
124
113
94
68
134
118
131
90
96
132
124
95
154
128
122
129
74
143
106
74
135
138
147
78
99
98
165
121
131
161
94
113
91
54
106
102
127
146
90
93
123
133
54
106
77
133
102
116
81
105
164
103
127
122
140
123
127
108
122
87
133
102
127
81
97
83
160
93
90
78
162
120
132
67
121
54
102
142
124
112
137
137
144
81
155
95
59
117
146
131
162
124
127
74
95
150
67
78
108
124
118
131
93
124
178
78
108
74
119
104
133
100
93
78
85
106
108
123
61
102
157
99
113
132
98
93
140
129
138
99
83
82
108
85
109
96
129
87
146
116
146
150
108
81
146
100
170
132
74
117
170
155
82
119
104
117
117
93
170
161
79
119
119
139
147
124
155
105
90
93
161
128
98
149
97
146
128
136
108
71
67
59
93
140
146
130
98
109
125
122
140
133
61
104
108
138
123
105
116
123
107
105
92
143
54
154
132
79
135
79
105
113
128
144
127
89
106
153
111
182
85
129
90
106
119
108
163
137
113
105
177
102
115
117
151
122
123
104
54
131
81
120
103
102
117
49
113
54
74
164
104
126
92
68
105
149
131
95
115
159
121
156
158
176
96
156
208
164
146
54
109
122
146
129
177
145
135
102
137
102
54
106
92
89
90
95
123
135
92
77
81
141
101
77
168
82
110
102
112
96
49
81
129
100
168
80
49
153
97
87
139
92
120
142
95
143
108
117
86
138
123
131
102
95
106
127
131
147
77
124
152
106
99
105
169
107
123
120
105
102
112
121
177
102
109
128
109
146
167
95
97
130
116
54
141
136
163
82
118
93
54
138
148
159
141
98
108
106
138
103
129
172
104
98
111
147
131
129
59
124
133
113
125
54
164
54
54
163
126
95
140
103
167
129
98
79
100
97
164
77
54
122
108
90
102
132
95
91
108
125
103
138
121
148
135
77
102
98
157
110
125
95
92
111
74
54
105
85
169
127
151
84
95
119
174
95
98
115
135
182
76
115
78
49
98
98
122
113
124
79
54
95
158
54
125
149
160
95
93
98
125
152
104
97
151
97
158
99
81
122
138
108
143
112
128
112
105
74
83
158
129
148
74
107
54
105
80
76
102
134
135
138
115
144
113
158
85
81
99
156
93
76
54
96
69
129
120
132
74
137
73
155
144
87
137
95
131
149
113
147
81
95
62
163
77
133
144
108
80
104
117
116
81
87
150
136
114
54
102
148
120
88
141
180
102
172
84
133
59
135
54
92
94
115
132
133
114
95
93
54
82
125
174
120
109
157
81
139
135
143
102
87
97
125
139
126
54
68
129
96
95
96
147
148
74
108
146
73
119
102
109
124
116
142
175
88
108
59
59
74
96
80
85
148
87
143
159
128
98
148
154
80
97
110
114
105
110
54
97
207
128
178
147
74
108
158
103
225
69
74
90
148
124
138
112
155
100
135
166
130
103
108
126
127
96
85
99
123
70
82
99
132
132
78
138
95
125
113
126
49
108
117
87
54
96
169
108
112
108
67
134
174
141
85
83
102
84
129
125
133
89
152
133
95
136
121
122
95
74
96
106
82
148
93
83
108
142
54
99
107
133
118
78
133
108
106
98
66
102
101
112
108
158
130
160
111
118
115
102
128
115
118
90
170
140
134
49
149
54
54
103
111
118
95
154
163
119
59
99
54
117
95
78
94
102
77
102
108
141
98
181
90
102
119
123
152
151
87
132
97
109
113
113
84
123
117
115
108
145
113
127
93
131
110
148
95
80
78
112
81
99
164
132
102
93
135
107
101
97
114
102
110
108
96
149
54
124
148
108
127
109
78
166
157
114
104
107
155
156
106
95
102
91
92
74
124
124
77
95
69
103
125
81
116
107
116
125
150
87
67
103
140
108
103
108
95
119
134
93
67
123
143
98
158
74
95
93
122
119
93
120
135
134
108
143
110
149
119
96
140
118
81
98
112
131
124
118
125
125
81
106
107
133
147
82
127
108
49
149
98
78
109
153
67
77
177
165
84
109
154
104
125
128
149
153
105
142
82
145
102
96
116
137
111
100
102
121
118
142
184
133
112
106
67
108
128
109
155
126
81
70
80
133
110
132
145
49
107
103
131
161
108
144
111
59
61
76
131
54
133
107
216
111
79
108
135
90
133
133
108
148
148
128
149
137
108
112
108
113
42
145
127
104
132
127
140
67
113
145
139
123
142
112
194
100
177
169
130
100
113
116
118
113
145
74
87
107
143
108
54
121
140
97
144
106
116
120
139
87
103
123
68
105
105
92
148
74
127
131
110
109
117
109
112
212
117
142
144
90
142
110
107
153
93
106
137
122
187
99
126
152
118
108
120
105
104
132
49
109
191
54
76
91
88
116
105
102
148
180
137
143
145
143
105
122
145
171
77
166
147
132
123
77
143
49
127
87
76
76
108
87
107
191
59
121
133
166
122
76
95
85
142
77
100
81
154
83
98
116
135
115
96
113
108
54
109
103
54
104
131
128
118
129
95
98
106
113
98
78
113
163
179
98
117
111
82
67
142
126
161
154
89
117
132
77
80
105
73
78
123
171
79
138
130
110
94
110
97
65
84
96
102
113
95
131
85
76
103
132
104
207
110
134
121
109
135
129
83
126
108
115
161
172
156
67
129
74
100
148
101
72
94
108
127
128
117
161
54
102
82
104
98
134
101
132
106
129
158
78
96
136
94
133
54
125
80
104
83
133
54
90
119
98
104
105
127
127
113
140
112
132
105
141
71
144
129
120
117
96
126
131
166
108
120
132
154
106
133
121
220
133
80
131
97
78
156
146
128
67
156
112
140
128
99
102
95
143
90
165
107
82
134
137
111
126
125
129
130
137
168
85
139
59
159
105
158
119
129
135
131
116
145
105
108
156
85
74
76
117
125
148
97
81
104
101
108
116
127
102
102
142
49
113
82
98
123
85
112
135
61
135
87
159
112
129
117
144
54
108
126
77
54
154
138
90
83
140
108
127
90
95
125
127
124
145
91
120
122
109
139
104
157
113
125
108
54
77
143
108
129
49
96
104
132
87
96
132
68
112
61
145
120
110
108
83
137
140
118
164
82
157
112
82
49
83
54
104
74
107
157
61
99
105
80
153
82
117
181
102
111
129
190
131
95
150
135
87
158
108
90
95
163
131
152
135
54
128
151
139
129
134
130
138
159
116
97
122
146
77
169
87
86
94
104
93
61
143
98
77
185
186
49
116
159
127
129
96
67
132
123
87
115
109
106
121
140
106
67
93
159
83
101
160
126
122
113
81
100
101
93
146
100
111
120
107
137
61
118
145
123
154
123
110
150
119
117
95
95
140
115
127
98
128
131
88
148
61
152
109
100
112
169
138
105
125
107
91
98
168
77
125
144
123
93
123
54
49
150
112
83
133
113
129
87
68
111
59
97
77
123
159
65
87
149
144
118
108
108
81
101
91
77
173
136
102
144
138
113
94
74
145
133
109
139
145
165
74
95
80
54
119
144
121
127
135
98
164
159
104
77
128
129
108
98
125
158
125
87
120
134
148
78
103
102
93
134
129
99
133
108
67
134
125
174
127
145
81
101
54
70
113
93
156
130
84
109
97
107
104
78
115
128
100
93
92
127
143
69
59
139
92
128
156
89
128
133
122
105
131
135
123
81
144
142
81
132
93
113
113
49
107
102
54
143
95
49
153
84
107
132
123
112
68
116
137
108
140
96
146
143
125
133
79
172
115
150
98
124
139
80
116
139
90
107
54
96
96
128
95
114
135
147
87
159
83
82
106
117
108
104
128
127
92
87
100
138
126
74
95
67
161
125
144
101
78
126
134
90
106
139
59
87
98
112
146
126
87
90
76
93
76
76
168
122
114
102
139
89
54
131
61
119
102
104
96
142
54
125
105
109
103
139
98
92
103
166
113
141
114
146
54
131
102
102
144
155
144
154
128
120
113
104
173
110
122
107
124
110
129
124
105
87
99
110
131
97
105
129
147
102
88
113
147
94
113
108
94
128
159
116
153
129
216
114
141
89
127
125
139
82
115
109
107
119
115
74
87
102
102
143
159
125
102
129
107
117
155
133
106
162
54
54
103
67
117
73
145
125
117
115
137
88
198
103
108
121
140
98
49
108
117
130
105
145
98
89
109
115
92
110
120
152
108
148
133
98
82
87
98
103
122
54
90
169
130
119
225
102
142
159
150
115
108
140
125
54
134
108
61
98
100
90
79
102
168
102
99
93
149
106
136
105
96
108
118
105
77
76
148
78
124
189
152
116
100
138
173
139
125
133
133
132
161
139
127
150
98
59
101
125
83
54
146
54
119
167
134
118
113
150
83
82
113
108
144
122
158
107
131
143
108
83
81
99
95
125
84
158
69
84
102
115
140
177
116
82
135
158
119
109
98
121
67
102
98
126
102
95
120
61
92
100
85
143
108
97
83
103
129
141
106
155
126
162
99
102
133
114
108
113
165
61
88
141
131
101
103
74
102
90
90
95
128
85
81
49
113
114
102
98
85
158
113
120
153
105
148
105
81
170
160
185
87
130
76
124
132
108
101
112
117
76
116
111
95
120
83
61
106
104
116
129
77
130
106
116
102
102
118
112
77
179
102
131
110
67
125
76
49
159
111
95
109
112
98
92
144
105
54
96
125
141
91
108
54
108
145
45
117
49
126
97
98
107
104
98
104
119
95
165
165
102
103
111
81
149
98
68
143
112
122
144
87
177
148
130
105
116
139
93
123
135
95
117
143
78
105
77
140
108
108
104
102
177
112
124
123
182
87
112
121
103
139
138
87
87
97
141
139
59
95
122
112
74
80
95
127
151
124
98
131
132
97
108
147
119
144
129
151
121
108
76
102
106
83
88
167
97
143
117
87
190
102
128
116
96
93
142
86
101
143
100
118
86
115
141
88
143
139
54
122
137
114
143
140
170
105
184
139
77
103
104
83
81
135
100
101
113
74
112
102
104
147
119
87
82
59
120
68
74
98
129
77
54
145
87
96
176
113
134
88
151
108
123
186
54
130
116
106
89
98
136
170
135
108
112
108
115
149
115
74
98
146
108
146
125
142
67
67
87
120
101
54
111
107
98
142
135
148
89
77
114
98
150
107
104
131
54
122
54
98
95
49
131
98
145
91
151
173
136
87
159
120
100
79
94
80
59
107
117
54
108
106
165
131
108
125
125
163
76
149
136
110
118
113
145
129
150
125
110
123
211
123
99
76
142
142
115
105
90
145
130
113
99
103
77
137
118
150
98
97
188
112
83
130
131
111
91
165
106
110
103
73
116
145
91
124
101
125
74
140
123
100
108
83
118
102
137
138
169
156
128
86
129
126
121
141
133
116
157
125
148
175
155
106
120
102
134
173
140
90
157
54
139
98
115
145
113
98
80
108
98
65
119
93
177
119
103
171
107
194
103
105
125
108
134
107
108
140
121
103
76
87
147
80
101
106
122
148
104
83
102
108
164
112
87
122
87
127
158
81
172
157
153
139
102
108
127
153
157
82
98
163
128
165
135
118
163
84
78
126
177
95
110
105
145
100
115
131
67
146
92
171
113
138
108
101
95
108
119
94
127
131
147
134
125
94
160
88
98
110
98
133
146
122
92
87
103
80
115
148
81
124
102
123
68
103
133
87
98
99
113
148
122
54
77
115
68
133
194
107
114
116
104
120
108
157
95
160
49
95
111
152
144
139
65
94
131
145
78
129
142
86
112
90
108
131
96
95
120
149
88
113
118
179
95
136
85
82
138
131
83
103
103
90
95
125
135
103
128
113
95
106
113
139
125
98
98
95
137
103
146
49
97
127
125
132
99
144
103
139
102
82
102
107
45
102
179
121
143
139
54
101
125
130
166
95
88
107
95
147
59
105
54
134
161
200
145
132
113
54
138
82
90
94
125
84
131
138
154
113
102
133
79
131
148
126
97
90
81
115
54
106
134
119
97
103
103
108
138
113
110
139
105
104
94
107
112
49
123
115
125
99
143
114
128
110
84
103
107
146
147
126
136
76
103
143
164
83
106
95
90
120
98
98
126
97
108
118
109
135
105
129
54
188
122
118
102
96
143
132
130
165
137
177
69
93
137
54
118
77
73
81
123
83
99
98
87
81
135
122
107
120
177
87
160
113
111
144
103
100
119
62
90
54
101
146
154
109
135
117
113
68
85
121
123
135
113
92
179
93
59
110
98
143
77
108
95
104
98
135
173
93
182
134
97
106
134
102
94
73
150
54
140
81
122
146
115
74
54
121
133
123
157
96
169
85
138
141
90
153
108
105
192
96
101
94
86
194
136
114
124
205
105
114
184
109
49
97
130
143
85
104
124
134
105
77
68
109
103
108
49
112
113
143
90
128
54
177
83
106
83
134
133
160
135
124
115
126
154
132
122
90
123
139
102
160
93
108
169
98
144
144
103
148
134
104
123
77
144
59
84
108
131
106
167
61
98
129
128
74
103
102
100
80
91
150
108
126
174
127
120
98
161
108
84
107
87
98
132
122
95
113
141
110
131
102
122
78
92
81
111
116
115
93
125
127
131
78
87
141
105
103
125
115
102
156
128
117
139
123
97
49
108
94
140
87
127
113
81
87
108
114
97
141
67
83
135
76
150
116
146
103
49
99
100
125
95
105
121
103
102
104
97
102
143
103
180
133
98
97
91
134
114
103
105
77
115
122
102
115
90
103
153
150
113
95
82
54
116
133
93
93
127
169
83
95
122
108
123
94
201
102
98
105
141
155
105
153
151
98
132
59
171
117
109
128
171
98
151
88
95
98
54
138
102
96
116
112
102
116
79
123
135
86
130
112
137
113
102
128
148
93
90
73
135
134
146
168
177
77
87
142
177
118
98
105
165
131
160
80
133
101
148
123
127
102
141
134
95
118
125
107
134
91
148
98
147
104
108
102
167
149
131
129
97
116
138
114
118
120
128
115
127
158
121
85
98
128
98
97
76
146
95
108
197
107
137
107
98
77
102
69
122
135
113
54
108
94
180
81
113
95
158
102
135
105
103
158
140
77
77
143
107
110
131
101
102
49
102
103
127
95
146
87
81
90
144
200
116
113
103
125
129
108
80
126
87
105
145
102
106
145
89
97
98
103
78
140
74
125
107
83
118
94
167
68
168
108
118
59
97
131
87
135
160
114
116
108
119
125
93
107
83
105
94
105
119
118
82
177
136
125
81
49
115
113
194
92
108
93
98
178
127
87
82
91
95
98
99
123
138
108
128
91
162
107
101
95
143
122
132
117
87
102
87
93
150
117
98
144
90
135
69
125
95
147
101
147
119
101
74
129
54
125
113
95
139
108
92
178
158
140
158
128
110
105
84
177
95
133
162
131
85
95
90
102
104
108
104
88
122
165
138
94
139
74
82
81
113
122
128
153
85
101
74
108
157
146
127
126
80
98
106
59
133
147
102
140
130
144
144
166
113
73
54
95
112
118
116
139
61
122
82
128
112
141
93
158
154
100
148
82
91
125
128
177
74
129
123
112
54
131
129
77
164
118
78
119
158
157
157
54
108
95
107
74
103
197
79
87
98
116
83
134
103
158
97
157
133
115
77
85
135
128
123
98
89
82
85
81
141
128
133
129
167
115
192
98
83
118
133
102
102
78
179
126
107
127
98
160
119
111
111
124
100
147
132
95
103
110
96
127
98
98
103
108
119
120
122
135
98
98
128
103
133
141
118
154
109
118
81
163
122
81
102
158
133
119
83
119
83
122
133
96
103
84
120
129
148
107
155
109
105
138
137
124
120
108
127
126
148
67
81
88
107
102
103
101
108
118
165
106
126
107
127
135
144
81
54
76
128
116
80
154
80
136
141
102
137
135
65
113
109
61
76
118
125
90
113
122
131
150
106
76
118
85
108
94
93
88
133
83
160
142
135
101
98
176
130
95
61
65
115
93
98
120
127
129
124
49
78
93
144
133
95
69
101
97
140
130
135
157
120
89
93
144
155
143
81
114
49
54
98
123
102
116
103
105
95
76
98
81
54
146
140
68
76
54
93
116
132
143
140
148
117
102
99
152
129
101
143
131
94
137
57
83
137
81
190
98
59
119
78
49
145
95
115
124
125
139
87
103
78
113
110
107
108
49
85
129
96
93
112
95
100
141
87
77
125
154
177
62
138
95
128
79
133
81
107
95
143
139
67
87
133
137
106
144
119
156
98
108
133
127
110
148
106
111
133
107
139
156
74
95
106
131
119
127
138
90
67
103
108
74
138
135
128
83
126
105
151
118
95
144
97
115
102
84
122
78
122
142
122
108
54
177
100
121
115
75
143
118
159
154
139
188
143
111
153
122
73
81
68
78
92
140
112
88
54
111
152
96
102
177
109
170
95
90
105
200
110
105
165
128
148
163
104
113
70
144
133
131
49
156
124
128
144
158
137
112
150
62
54
118
125
119
161
152
83
114
112
148
54
49
119
138
95
77
98
98
89
101
113
109
119
111
102
98
191
76
126
49
91
98
91
91
54
125
128
106
179
88
144
126
185
81
119
81
98
54
115
112
139
112
101
103
84
177
74
127
141
140
93
49
130
87
125
105
124
95
115
95
120
123
136
145
143
130
104
131
102
135
117
173
87
112
135
153
99
162
113
119
158
163
157
76
118
123
127
117
119
161
116
54
82
103
81
130
93
173
145
104
131
103
107
140
101
178
91
81
117
159
127
133
135
91
133
194
140
142
49
95
103
233
116
146
109
95
128
81
95
107
125
133
120
138
158
67
102
114
95
128
80
136
156
102
145
162
135
148
131
75
92
125
54
128
97
161
95
118
148
128
120
87
125
158
74
115
92
101
131
145
54
81
177
104
97
68
126
102
95
180
222
86
108
115
162
73
84
133
93
107
147
91
103
111
170
103
126
76
98
59
91
127
122
101
90
112
118
77
177
101
124
120
124
142
114
81
103
101
114
90
134
113
124
108
102
49
100
129
59
99
68
61
125
147
121
185
145
105
150
114
154
109
97
70
120
95
131
126
65
74
103
179
91
45
115
86
112
107
77
144
112
102
95
54
124
59
156
98
105
145
97
125
109
96
103
139
105
103
145
126
106
158
81
96
114
158
74
150
54
79
98
54
118
95
94
128
84
93
141
158
132
123
157
103
130
78
127
49
98
54
130
77
80
150
141
103
139
74
80
90
112
71
85
148
54
83
107
138
128
94
128
97
158
142
125
81
128
138
86
116
135
154
82
54
103
74
131
147
113
123
128
148
113
115
90
96
95
59
144
110
118
122
106
113
91
113
74
110
144
133
113
153
95
124
123
149
117
102
171
104
95
78
81
125
134
114
81
125
148
116
90
122
133
76
148
105
120
98
84
81
85
139
128
137
161
155
112
102
75
113
83
163
118
140
93
161
103
59
81
140
98
91
131
183
122
59
99
97
103
85
81
98
168
95
100
114
135
61
128
148
124
127
130
75
95
54
106
158
116
129
111
59
129
108
143
98
102
132
122
103
81
54
129
108
140
146
126
160
105
121
93
151
95
129
160
95
94
97
133
81
113
93
90
77
97
95
123
115
77
151
68
187
133
76
57
93
98
171
132
59
137
108
49
90
133
49
84
67
125
136
105
162
108
95
169
174
105
100
129
141
133
87
148
113
121
132
122
78
77
96
74
75
83
116
140
146
108
54
98
93
106
89
92
111
83
148
101
83
101
126
113
102
97
49
125
102
87
68
103
98
95
103
107
92
82
170
127
146
127
98
154
82
61
166
128
95
160
76
133
134
165
101
131
145
124
78
110
105
113
194
101
110
137
101
124
141
118
105
96
116
161
95
199
112
160
81
120
98
106
125
85
124
103
128
54
87
139
135
105
137
82
102
98
95
106
106
74
108
95
86
82
123
125
77
127
99
113
122
110
104
124
87
133
109
184
144
141
78
100
103
103
139
208
131
102
109
161
101
132
113
116
103
108
123
108
100
61
74
163
112
138
126
161
90
102
114
95
98
119
118
108
143
214
96
129
102
74
98
142
96
108
78
84
49
132
138
81
145
124
117
54
141
99
93
108
98
141
149
122
100
130
102
143
107
85
101
127
115
106
74
138
118
99
99
86
132
100
145
135
82
115
77
97
94
98
95
101
112
140
149
96
54
54
141
77
153
76
98
143
76
121
120
117
77
54
133
170
84
101
78
83
116
54
81
98
125
74
172
96
71
112
103
148
135
116
125
154
135
107
191
93
115
107
117
129
97
153
167
168
124
134
135
139
135
149
138
76
96
115
54
159
119
164
90
80
101
123
85
88
95
105
85
85
125
161
87
122
88
114
117
149
96
104
142
123
49
128
54
149
155
137
82
49
73
100
103
152
91
102
107
103
127
141
131
98
83
85
132
85
115
112
103
155
133
74
123
148
134
151
81
59
151
77
124
74
95
145
123
90
100
132
97
101
98
119
140
107
103
85
119
102
76
104
49
123
107
54
112
136
105
77
102
98
95
137
108
142
110
59
111
94
158
122
93
139
107
81
131
100
95
102
113
80
144
49
135
105
108
129
106
162
107
135
97
107
112
99
149
104
72
111
140
146
74
93
142
89
84
116
123
116
106
90
59
113
65
186
102
144
107
112
108
84
98
102
89
103
67
168
59
125
80
93
109
141
113
95
137
128
159
90
96
159
106
143
144
132
179
109
136
74
151
165
148
130
108
109
122
107
95
95
54
147
144
83
82
132
165
81
90
99
129
144
107
74
117
118
81
123
133
54
105
96
145
124
92
106
98
101
108
147
88
114
143
105
140
129
122
92
122
124
97
118
103
128
88
164
112
110
105
116
67
125
123
68
88
115
128
151
160
130
100
151
59
122
118
150
127
128
105
134
103
54
102
125
90
127
101
109
59
133
90
104
132
172
112
172
118
102
109
102
151
101
150
150
103
80
93
95
101
197
122
115
85
148
139
150
115
74
120
141
121
145
111
95
114
99
77
173
102
144
140
144
126
154
177
98
96
167
154
191
153
84
82
74
69
170
98
89
65
77
118
149
128
158
157
109
108
168
127
108
93
75
90
49
108
146
131
59
49
87
129
117
97
118
112
114
87
54
92
177
179
131
117
59
174
105
97
94
118
84
120
110
124
143
151
140
108
132
113
49
78
77
158
108
102
170
130
110
45
134
118
96
95
107
54
78
179
145
143
82
134
90
95
125
110
123
153
100
138
81
111
81
89
110
108
127
102
92
118
81
93
86
119
130
105
106
133
103
165
118
54
170
123
140
174
153
103
89
194
77
77
69
132
88
74
137
133
112
148
139
74
107
82
110
77
126
107
82
142
167
148
110
133
141
101
87
98
102
140
104
122
142
129
82
131
160
107
87
101
87
89
131
122
146
105
140
49
116
156
96
125
133
150
123
98
101
141
146
67
137
91
124
157
81
126
86
123
141
78
124
82
177
61
98
97
129
108
142
81
145
95
65
130
106
82
135
142
95
106
130
102
98
113
98
122
102
99
114
134
116
61
122
140
102
74
84
54
125
125
98
146
78
186
95
103
110
98
93
124
100
97
123
78
124
122
125
118
170
157
70
139
128
164
130
133
141
85
130
79
173
177
108
159
100
101
120
143
54
95
74
199
59
118
155
87
135
74
90
143
131
118
98
102
105
180
79
175
83
95
115
103
93
82
123
125
73
106
135
82
110
82
135
118
108
78
97
135
126
99
103
141
113
93
49
102
119
128
95
116
61
76
127
95
112
139
108
120
98
78
68
102
69
99
148
83
92
110
143
59
130
118
105
139
113
107
73
111
92
145
74
135
149
110
125
54
77
94
150
99
121
109
139
108
145
120
108
68
124
107
107
110
111
143
105
81
155
90
74
113
106
119
78
165
125
133
90
111
138
141
159
148
76
116
133
125
76
161
92
130
144
88
143
97
136
147
97
87
128
91
120
93
106
102
137
132
139
135
115
90
127
90
140
108
91
100
148
89
120
103
100
105
119
130
92
59
115
91
117
107
172
170
131
125
122
108
108
54
106
104
81
108
125
141
131
122
146
183
97
125
133
114
98
128
150
95
77
54
108
95
144
94
98
105
127
85
126
81
146
129
168
134
120
99
77
136
147
158
157
74
169
120
115
74
146
114
98
105
160
78
162
125
127
86
54
100
143
54
134
81
95
133
82
95
116
124
107
103
106
97
113
98
123
97
105
110
77
170
112
156
101
110
108
127
105
95
130
81
113
106
77
102
155
89
125
103
102
113
123
94
177
97
102
124
102
54
131
179
131
108
108
138
113
152
49
82
117
81
153
125
59
138
98
102
171
115
116
158
103
74
93
105
105
78
96
74
144
169
85
129
90
96
95
127
85
104
125
162
108
108
99
102
146
98
148
127
82
175
95
200
115
162
143
111
113
103
148
102
107
126
122
129
122
142
148
91
100
188
102
89
144
117
82
94
59
98
76
97
81
98
94
101
107
129
132
95
122
130
93
102
82
85
155
123
133
54
102
103
107
186
134
117
129
119
114
97
77
95
113
132
104
103
90
62
125
92
126
146
176
96
102
96
140
132
103
95
134
85
133
122
131
163
105
120
129
89
67
102
128
108
108
54
135
94
116
120
110
103
94
137
123
125
156
109
129
131
157
102
140
158
140
103
77
110
61
120
134
90
131
59
130
119
120
146
161
143
118
115
91
100
122
139
136
101
158
103
108
122
140
154
148
165
163
129
141
87
143
123
69
118
112
108
127
134
132
87
83
69
121
98
177
112
124
95
135
86
156
96
117
98
95
133
128
59
109
120
132
108
129
113
83
111
130
103
122
148
88
101
158
105
125
94
149
108
148
130
137
123
45
170
135
122
150
140
128
102
100
120
117
130
147
133
82
120
123
112
98
110
54
126
54
96
73
154
125
102
158
107
137
134
134
59
126
152
135
125
95
118
108
129
148
102
107
97
93
142
82
173
105
194
78
98
116
158
135
87
95
153
81
169
148
123
108
82
117
179
131
156
131
113
144
94
67
139
139
148
74
148
54
84
161
89
137
54
118
91
144
165
103
89
83
78
78
114
102
108
121
190
146
102
143
143
146
71
89
133
152
115
173
59
106
95
115
108
133
132
127
95
94
97
129
119
79
111
127
123
97
128
93
140
75
106
120
141
108
113
74
187
126
135
102
123
113
102
138
99
128
98
108
139
109
54
147
126
122
94
74
118
129
113
107
78
175
85
128
123
139
148
146
175
154
108
161
131
102
85
140
148
89
67
140
114
118
122
99
149
163
93
128
152
106
140
129
89
171
104
116
103
98
150
98
171
91
112
179
108
129
92
87
124
97
80
122
133
141
169
127
162
118
95
98
77
102
108
99
86
153
147
113
117
118
110
96
85
98
113
137
135
150
100
125
104
145
78
169
105
135
92
134
61
119
54
208
142
83
123
158
106
133
143
96
165
144
126
138
68
133
83
153
169
95
83
133
92
85
115
146
169
85
95
134
79
89
137
133
100
151
125
98
131
115
180
95
103
107
49
104
119
98
137
118
143
59
115
140
87
120
128
115
110
128
115
54
85
59
104
105
149
126
115
67
95
132
172
83
67
111
110
91
161
95
142
120
127
98
121
189
151
157
127
122
125
137
135
152
118
102
141
115
129
83
92
95
108
54
98
107
122
49
147
155
200
134
109
111
178
98
129
144
151
90
106
90
81
115
113
135
108
127
121
77
102
108
130
179
130
98
91
89
76
177
87
119
78
105
80
131
103
80
95
85
171
127
145
132
77
123
98
129
74
49
142
97
103
132
140
100
131
118
144
94
118
123
95
145
130
135
95
100
113
54
160
117
69
115
142
85
115
83
122
87
104
115
102
124
100
102
138
167
68
54
106
181
177
101
134
107
131
115
127
100
133
170
87
102
98
88
122
188
155
160
68
90
125
110
127
108
119
81
177
95
148
163
67
168
159
107
117
74
85
119
156
143
83
160
144
61
77
123
93
117
137
160
128
90
135
161
129
130
175
123
59
59
124
117
99
151
146
103
123
144
101
152
102
103
107
131
123
54
103
49
131
140
100
80
93
115
103
157
105
49
107
127
140
100
85
134
140
106
69
119
74
95
165
93
122
88
61
129
115
115
125
84
133
78
121
76
118
106
102
102
105
139
95
161
104
158
81
101
105
108
89
190
100
83
85
124
147
113
119
49
54
131
100
95
161
108
124
103
81
87
134
163
103
158
131
112
73
122
135
54
166
126
125
178
111
128
102
173
120
85
78
108
120
95
54
108
128
147
153
161
117
54
142
125
93
54
82
114
65
95
146
105
124
113
79
108
102
77
105
125
130
107
126
102
97
117
112
100
171
49
120
107
110
77
108
127
130
150
110
167
137
128
154
61
113
125
123
131
63
54
137
146
129
54
108
89
151
76
80
49
95
136
81
117
95
83
133
54
133
113
94
104
108
177
169
114
135
120
147
151
54
101
54
95
141
113
128
78
149
159
49
154
104
106
143
102
90
166
104
117
142
123
93
49
146
76
125
85
149
95
90
124
128
125
167
138
82
119
109
107
191
111
100
164
93
102
119
116
61
115
175
121
81
132
77
160
106
155
156
84
149
145
113
145
115
49
105
98
91
77
87
119
93
90
120
116
107
74
140
178
132
114
156
149
146
173
68
91
106
171
108
115
98
108
87
103
144
145
144
148
98
134
125
113
129
130
109
143
59
95
108
169
115
98
106
144
123
92
198
91
140
87
96
49
143
186
130
98
67
146
83
170
120
84
54
144
160
108
91
97
148
135
113
101
49
137
147
148
49
180
82
88
118
139
104
130
127
49
92
54
148
103
49
92
95
135
54
145
157
168
92
127
123
160
54
150
160
69
91
139
134
90
87
115
105
107
136
135
136
107
120
118
153
139
153
133
115
92
100
113
81
161
93
125
107
119
74
113
145
87
132
79
108
125
132
102
177
89
129
95
158
98
82
95
108
102
148
131
119
82
54
82
155
98
54
133
108
107
122
98
90
102
133
91
116
141
134
93
95
165
141
120
146
145
116
192
161
191
83
172
81
158
89
54
90
86
153
144
139
102
112
143
109
87
125
108
148
93
148
175
152
49
144
107
159
127
135
118
78
109
107
148
161
113
134
125
117
96
101
113
139
158
173
140
76
103
74
73
102
191
83
116
106
112
107
168
94
93
79
146
90
103
143
146
142
184
96
96
54
84
114
99
93
113
179
114
104
102
93
54
77
135
108
183
98
155
101
136
102
158
123
80
83
112
139
131
127
146
198
125
103
98
113
96
164
85
68
92
144
190
110
145
143
95
93
129
160
107
90
163
119
155
125
148
95
117
115
160
113
148
123
97
65
129
146
91
107
127
141
85
143
112
90
121
106
177
137
148
127
93
87
117
160
93
177
125
144
108
146
95
172
106
108
140
128
153
126
91
175
108
104
132
49
98
118
103
77
110
100
117
120
139
104
91
54
77
121
113
69
98
159
63
121
119
152
108
98
104
107
139
96
175
234
143
125
107
157
76
135
96
145
161
162
54
94
111
103
87
133
114
106
98
110
179
101
150
128
144
120
105
95
158
110
95
131
119
81
103
113
108
127
149
127
135
107
97
83
95
115
83
125
103
124
104
117
144
92
117
85
148
145
202
148
160
136
124
117
106
127
158
84
125
85
124
132
124
104
81
54
105
131
158
94
128
119
59
112
140
54
92
96
122
134
141
115
97
91
120
154
177
114
120
162
93
130
95
59
101
127
176
81
84
109
133
105
59
98
113
147
54
117
113
115
93
92
117
104
177
115
157
84
90
140
177
108
87
95
130
148
110
138
90
154
145
86
96
102
102
104
152
127
102
95
104
122
74
82
113
91
147
161
138
116
122
99
131
157
139
143
82
54
54
108
129
93
100
103
108
54
138
172
94
59
99
144
137
97
142
113
148
145
110
108
114
147
125
117
95
194
161
95
103
123
71
49
131
105
133
125
103
165
54
103
120
86
81
122
87
69
76
161
94
163
148
88
101
145
134
139
109
108
96
156
54
131
168
104
158
144
164
140
144
145
68
99
54
108
102
148
82
81
124
82
194
114
160
97
90
87
132
96
120
95
61
145
98
98
127
127
120
68
134
132
67
142
102
144
116
135
81
83
49
82
76
83
102
109
98
103
95
112
134
135
132
157
135
108
139
61
54
117
142
62
148
128
125
148
54
117
59
199
139
112
102
98
92
101
123
49
82
128
153
123
122
102
177
137
78
103
171
107
97
90
102
134
54
200
108
99
182
103
148
68
83
99
87
139
145
90
145
158
168
113
83
134
101
137
125
76
109
116
138
116
68
93
169
139
54
114
92
120
107
59
83
143
99
155
161
100
197
155
85
83
102
103
81
164
98
105
78
89
175
116
106
61
145
128
89
93
49
110
199
123
113
116
161
78
110
172
93
117
124
102
98
98
118
145
102
113
108
149
76
127
109
116
165
127
112
175
90
126
96
122
142
59
49
154
62
138
90
121
107
148
116
157
152
138
85
179
102
54
110
93
54
142
177
133
126
128
138
99
147
119
67
179
113
210
167
132
90
120
97
100
131
81
127
54
90
133
122
90
102
98
61
148
113
108
89
127
99
125
109
136
90
91
95
95
118
128
121
109
90
158
89
100
122
125
153
134
49
131
103
78
81
105
84
100
94
118
105
126
89
108
82
93
61
102
61
112
127
103
173
115
126
157
134
131
97
169
150
54
143
135
151
131
131
87
142
145
128
106
67
143
122
108
98
105
153
128
135
129
96
124
122
152
110
87
95
133
120
127
54
122
135
138
81
118
117
119
132
108
123
115
117
146
149
166
85
129
158
54
105
165
92
138
93
140
145
127
54
115
134
78
85
117
119
120
155
49
120
131
125
102
69
103
88
93
118
98
106
111
90
177
95
92
59
141
110
142
133
106
90
148
156
117
87
148
158
132
115
165
93
112
104
91
131
143
127
91
96
137
54
144
82
165
109
140
77
85
124
158
139
90
106
143
90
95
131
106
157
108
158
76
54
139
116
102
133
116
161
109
138
114
94
116
82
125
125
150
125
94
98
148
147
67
140
59
67
96
141
102
147
149
99
108
76
172
90
134
103
144
92
103
49
145
175
95
141
73
95
132
99
76
122
101
112
54
54
134
139
98
111
103
102
129
98
88
93
156
124
74
99
107
103
117
148
146
49
91
113
122
143
54
95
131
148
98
91
87
143
131
115
104
74
107
140
96
141
139
122
154
54
113
125
85
96
123
96
68
113
54
108
149
98
102
133
78
136
121
118
107
108
91
145
133
191
117
113
131
108
102
123
141
105
99
83
138
83
140
54
90
130
102
122
103
149
76
85
106
54
102
109
104
132
108
116
126
158
152
113
96
106
132
95
111
96
49
100
67
81
117
73
143
95
120
125
104
154
119
121
124
139
105
68
169
90
82
87
114
103
128
93
98
106
108
100
84
148
122
161
103
68
102
108
149
133
130
109
105
179
128
96
97
113
126
151
105
135
151
96
81
98
140
87
61
177
131
122
112
180
116
59
105
90
159
81
108
91
109
130
122
128
126
77
127
74
95
105
143
96
102
81
116
110
169
80
83
81
76
87
83
147
148
95
131
124
54
113
77
76
97
54
140
118
78
82
69
129
54
123
76
118
114
82
99
98
149
139
87
128
172
133
218
147
74
65
115
127
143
90
54
129
133
110
113
98
131
87
108
115
98
79
141
150
103
77
138
101
95
59
99
95
120
133
87
164
101
133
134
108
131
138
148
94
146
111
98
54
135
127
107
126
83
103
83
77
93
77
76
73
98
126
162
103
103
94
153
124
114
112
108
80
104
147
105
77
79
165
97
54
54
110
68
77
132
110
149
114
90
116
184
148
106
107
102
132
122
161
95
103
122
121
122
104
54
122
54
95
126
108
122
78
87
146
83
140
102
138
180
157
78
109
103
158
83
121
160
103
167
122
101
139
158
147
145
156
107
122
85
102
120
118
159
85
100
93
126
137
73
81
59
128
98
54
159
99
90
171
137
110
83
132
96
115
54
149
107
138
127
90
86
140
76
109
169
124
148
114
151
119
113
152
140
122
59
103
102
111
100
106
95
101
145
160
91
95
122
158
116
81
120
102
143
84
152
96
54
54
54
105
127
107
78
132
132
104
102
95
136
167
76
54
101
108
157
152
152
146
158
125
112
102
102
95
91
81
133
133
107
85
116
161
102
153
81
112
133
177
115
113
143
108
49
93
114
145
144
74
168
78
116
77
91
102
107
79
87
96
147
108
112
110
131
86
97
133
154
113
144
102
122
89
106
131
133
54
97
102
145
143
87
112
118
95
120
101
125
54
118
182
107
95
107
131
76
77
119
102
144
103
97
144
76
128
95
119
112
95
81
85
147
54
91
100
134
104
106
139
91
76
80
115
91
81
135
133
54
119
123
148
72
76
126
93
93
96
89
103
119
97
119
148
106
144
74
54
121
116
103
158
179
154
114
136
133
111
97
100
143
101
69
82
105
49
127
112
95
140
138
185
105
80
94
81
95
87
117
119
128
106
150
108
129
67
147
136
82
102
98
92
93
146
162
135
142
95
97
194
145
105
81
85
110
108
101
73
77
126
107
101
140
98
95
109
114
106
105
95
165
92
146
121
102
114
163
127
105
140
126
86
59
132
93
105
98
138
130
132
143
105
128
117
138
140
158
123
97
132
76
108
104
96
139
144
134
83
120
87
102
85
119
148
54
99
105
175
158
135
148
182
102
89
138
102
104
98
103
102
177
156
114
115
94
95
124
54
95
172
133
105
115
103
88
67
167
122
114
68
125
141
108
95
113
123
121
119
94
103
93
74
158
108
177
131
141
104
81
137
103
98
102
111
102
121
116
138
96
105
148
90
49
80
130
74
110
113
128
118
113
100
73
119
127
142
87
217
102
167
135
146
98
104
85
144
127
129
96
108
115
108
142
149
54
131
122
143
85
106
102
125
117
107
141
130
54
54
76
150
98
101
148
94
77
95
158
106
132
96
76
146
90
102
111
82
94
84
141
81
74
105
188
151
144
126
103
72
138
119
101
49
169
98
96
110
99
113
133
123
107
115
101
97
49
102
109
114
136
144
177
148
106
108
130
123
114
115
126
78
148
83
133
168
83
126
132
102
103
119
98
77
142
138
97
103
77
93
77
118
105
93
144
139
118
74
106
127
95
109
157
103
125
123
78
93
93
115
83
100
100
108
118
115
123
159
125
133
106
128
113
103
87
115
103
120
131
82
106
121
85
121
148
159
176
151
97
101
84
146
117
96
133
108
130
156
88
93
111
91
147
83
67
95
129
90
119
124
150
139
95
85
59
108
93
188
102
119
125
122
69
143
69
104
131
141
138
125
179
117
125
115
143
97
125
115
150
88
105
77
130
102
120
76
138
77
158
97
79
91
170
141
130
131
142
118
90
83
132
121
153
98
119
125
102
105
127
158
129
59
96
124
129
168
122
177
110
59
54
109
131
98
130
103
151
129
133
176
95
93
77
125
124
131
91
133
92
163
108
102
200
232
149
132
96
93
137
79
83
102
45
106
120
98
81
54
113
115
128
112
54
145
103
81
107
104
134
117
102
133
122
155
96
118
95
83
61
141
179
127
154
119
94
128
135
103
92
129
108
67
105
149
151
61
117
103
113
170
93
106
83
76
54
126
142
112
123
109
81
82
106
157
95
106
120
125
123
132
132
124
148
127
92
99
132
140
103
160
87
146
112
117
131
130
126
140
140
175
121
89
120
133
127
102
133
130
81
158
80
88
77
114
57
126
167
136
148
108
102
68
147
144
135
106
96
158
160
108
154
147
126
134
107
103
146
126
104
131
122
102
113
91
112
200
92
83
81
104
114
84
123
83
115
134
142
85
143
103
102
101
125
187
139
69
125
83
140
115
108
93
98
80
95
139
124
103
128
111
81
77
154
150
108
82
151
87
81
120
81
124
134
145
144
129
138
96
113
96
111
78
105
127
95
82
163
59
147
90
109
76
98
81
98
116
74
144
87
112
77
121
110
141
125
96
122
178
119
118
130
116
49
114
157
95
117
112
129
108
134
77
135
54
129
104
102
147
95
125
182
133
87
119
144
103
98
113
93
80
130
106
127
159
129
110
90
115
113
116
133
129
54
102
103
166
134
120
106
61
102
146
123
178
99
145
134
95
145
102
119
107
98
123
118
113
122
151
98
132
120
97
98
89
130
129
127
145
132
150
125
147
182
49
90
69
95
151
113
54
76
136
125
149
78
49
136
113
105
108
144
80
146
126
77
129
118
147
96
74
145
100
87
102
102
54
105
147
147
54
117
128
85
172
97
85
93
133
97
104
141
131
124
91
128
104
146
89
101
101
83
133
132
76
111
78
165
142
96
140
135
124
140
143
102
80
141
184
95
98
74
114
76
161
144
61
125
217
113
98
184
129
95
127
144
78
145
125
144
122
123
142
140
115
168
106
112
95
123
113
175
127
115
120
135
123
116
121
67
61
159
81
108
130
155
145
103
146
87
148
114
132
126
148
144
151
112
133
80
102
87
120
119
115
139
99
93
92
73
104
105
135
95
102
119
141
102
120
49
82
123
112
122
144
54
82
102
67
154
105
125
89
102
123
105
113
114
59
125
140
182
79
94
112
131
87
129
105
115
108
165
103
102
125
124
153
87
98
77
126
95
54
185
101
111
61
214
158
95
133
61
155
98
100
149
98
98
125
69
54
125
122
89
98
133
106
97
61
101
113
76
133
83
159
191
115
147
123
115
105
150
128
108
141
125
99
98
146
129
99
76
158
178
107
151
73
120
158
133
139
110
125
82
81
102
124
136
101
140
140
113
96
67
158
113
162
154
111
101
113
108
109
81
116
99
118
110
131
141
141
148
85
119
148
94
165
151
110
142
154
102
144
95
61
128
83
112
135
138
120
95
167
145
95
180
106
190
113
156
168
85
104
165
124
85
130
98
82
102
74
180
110
82
81
61
96
105
117
87
97
96
54
108
134
128
191
69
147
135
90
98
49
95
68
95
92
152
100
139
177
96
113
94
124
146
94
77
129
54
97
95
88
127
127
106
110
72
91
76
115
110
114
124
106
103
100
89
94
158
124
96
130
98
99
128
147
82
111
110
125
100
120
118
133
131
105
159
83
127
160
131
105
88
118
90
116
142
133
128
106
74
96
89
103
130
145
119
102
115
107
116
163
101
104
127
126
76
119
127
113
118
88
120
108
116
106
54
74
81
95
110
108
114
149
125
54
97
156
111
102
101
98
93
149
128
140
150
139
152
165
118
133
93
154
143
91
137
83
120
54
161
101
72
45
87
95
107
116
85
107
113
129
167
138
152
98
133
61
87
109
157
151
140
110
134
184
148
103
94
108
78
107
107
125
91
147
103
102
108
96
102
107
135
90
103
126
90
80
90
152
134
103
122
108
87
142
81
125
157
152
148
95
118
118
67
146
113
125
69
113
173
94
102
108
112
147
128
61
100
188
97
141
108
49
145
190
122
133
54
178
82
54
158
122
102
98
154
54
93
104
95
102
76
125
76
114
131
124
154
54
171
54
54
89
105
93
92
104
153
106
87
49
118
113
99
133
129
125
88
98
98
123
117
120
121
146
97
133
144
90
112
160
121
110
49
129
167
149
112
83
126
87
148
102
109
98
118
145
132
87
151
144
164
98
76
78
78
100
148
114
125
148
102
148
105
112
49
114
148
143
98
61
121
128
95
97
95
96
138
170
49
101
114
125
85
123
141
117
149
113
89
129
83
134
78
59
149
77
117
128
139
113
102
98
184
82
54
120
179
81
128
87
128
158
102
102
142
132
102
116
134
135
140
177
197
102
144
115
114
115
95
86
143
85
141
123
95
123
146
98
103
90
141
116
119
148
108
156
95
150
131
112
89
166
128
108
181
112
87
144
145
111
100
77
113
156
119
102
122
98
103
144
145
103
166
108
141
81
148
83
149
109
125
104
95
112
92
150
76
54
125
123
125
170
139
156
106
165
116
121
98
103
159
83
184
143
98
103
141
82
98
143
90
107
139
128
128
97
91
123
105
103
110
143
97
120
54
106
95
122
156
125
109
85
134
112
102
95
144
107
126
121
108
128
59
125
113
54
54
131
123
85
90
89
90
132
74
54
117
108
141
131
135
146
139
105
139
83
87
136
146
118
144
102
75
106
166
115
118
165
78
168
106
120
130
119
138
146
107
101
145
128
177
102
134
139
49
59
98
103
131
77
115
138
54
72
85
124
100
165
116
91
82
54
115
125
112
78
124
54
98
146
108
103
121
128
129
119
161
114
87
104
92
160
141
49
74
143
117
68
135
98
96
105
76
93
113
113
146
125
128
93
96
90
91
129
49
157
105
93
146
68
107
158
144
131
93
93
143
151
102
150
168
81
129
105
119
79
114
157
113
106
122
79
95
112
112
162
107
156
122
135
163
100
81
115
97
122
124
91
148
133
133
139
89
156
92
81
125
141
127
93
135
76
67
83
59
129
161
68
96
158
112
107
140
100
220
136
124
144
81
107
109
172
113
94
118
105
177
77
156
139
49
148
49
87
107
145
113
81
144
108
147
152
117
100
117
78
95
168
81
122
158
129
90
102
169
125
127
125
155
49
148
119
61
149
118
112
78
83
77
91
98
110
148
194
134
137
133
132
82
125
147
109
117
108
116
177
119
103
146
147
93
115
81
110
104
100
163
150
158
135
110
68
135
146
148
103
115
129
114
54
87
112
80
151
81
186
124
73
143
98
102
85
99
111
118
98
153
109
165
49
94
137
125
78
105
98
140
160
95
158
76
149
81
103
107
112
219
108
49
160
113
105
112
102
102
165
108
137
151
81
106
130
81
100
87
104
119
123
54
152
77
139
120
105
95
80
138
165
80
118
110
127
108
109
166
93
93
128
86
76
102
128
87
128
90
125
139
74
105
125
179
59
135
108
49
121
104
110
49
127
112
104
131
137
121
93
140
128
99
69
141
96
147
120
54
131
124
147
182
148
140
124
141
78
139
134
165
192
121
101
110
106
108
80
100
99
81
102
68
163
69
109
76
101
94
157
104
69
83
134
145
101
141
96
42
91
113
112
126
162
158
150
128
89
74
127
114
145
144
177
114
128
155
115
54
145
140
138
94
102
74
107
147
105
131
100
69
146
127
90
147
146
91
134
128
81
116
114
78
158
133
129
112
136
141
96
134
59
98
139
92
112
148
130
161
98
92
110
76
132
127
116
126
90
120
120
129
132
108
49
144
156
116
121
135
108
124
87
129
114
105
169
171
127
95
106
135
151
134
121
138
82
186
105
118
67
105
94
85
148
173
67
133
102
137
129
91
125
100
149
167
76
98
100
131
162
168
158
119
103
132
78
94
108
99
133
149
111
76
190
120
80
139
102
65
133
95
102
92
115
105
158
103
108
108
113
154
102
128
150
111
136
199
101
59
111
144
146
116
97
133
77
97
111
81
105
93
161
124
123
129
138
190
108
95
118
86
85
120
139
142
122
123
145
140
136
152
187
104
109
108
133
152
122
76
97
105
78
102
160
172
124
94
92
67
142
130
127
74
142
54
123
120
112
151
132
110
110
128
124
143
49
131
103
94
77
134
97
108
132
146
115
133
54
125
101
93
214
106
131
102
155
76
68
141
68
81
82
108
171
67
77
49
156
131
107
54
118
108
141
108
102
98
127
111
144
131
59
82
127
108
125
194
103
116
113
121
103
102
54
177
120
143
116
97
143
113
128
54
172
103
100
95
110
114
54
134
105
103
104
113
115
116
157
102
127
89
128
130
95
125
89
178
108
98
140
59
92
135
103
97
83
148
77
77
102
137
98
114
95
95
155
102
126
95
97
75
98
128
117
87
95
114
103
133
88
49
113
153
142
125
95
134
116
98
143
101
141
123
144
101
94
79
122
97
145
74
126
103
95
85
85
109
90
129
103
140
108
59
76
88
108
97
75
123
69
98
160
121
102
109
124
91
77
127
121
81
111
105
81
98
157
108
102
141
142
87
108
54
128
98
108
116
133
134
119
127
102
138
149
165
122
49
116
122
113
93
133
77
99
107
135
106
168
107
121
84
107
156
113
99
93
122
130
114
158
108
116
144
147
108
103
80
125
117
122
105
167
132
153
97
94
125
111
114
81
112
125
149
96
119
105
145
105
131
110
137
79
107
158
170
147
54
81
111
118
164
135
132
122
103
125
121
96
94
148
138
154
102
144
102
103
116
131
69
68
90
130
108
102
98
98
87
118
89
59
138
128
172
123
108
95
127
157
153
127
138
68
61
168
125
117
92
125
67
95
171
118
91
120
98
93
141
117
152
149
83
113
151
112
76
111
98
145
121
100
54
106
108
125
93
67
89
125
138
141
120
113
49
121
151
125
113
108
120
91
122
114
108
115
103
49
127
99
143
152
131
102
143
158
93
147
168
103
61
106
129
99
105
162
117
93
145
74
153
87
113
119
96
156
91
109
140
89
114
169
68
131
161
67
59
106
160
130
134
69
146
158
133
153
110
151
76
163
92
118
49
107
92
158
76
82
132
123
81
102
123
49
156
118
86
107
95
114
107
79
114
148
111
143
74
180
91
129
118
79
105
126
113
103
117
127
116
146
97
194
90
125
140
151
92
98
152
90
91
96
129
174
172
80
102
165
126
129
110
68
108
59
125
111
100
108
105
103
108
114
76
141
135
54
97
78
129
161
97
82
59
54
109
177
123
108
77
96
123
74
113
144
113
136
86
186
54
143
159
147
140
118
162
96
82
90
81
107
133
54
96
76
113
85
135
54
110
108
102
98
109
165
99
77
127
137
133
102
173
111
68
92
147
78
103
115
128
150
78
90
143
124
200
120
113
54
163
99
156
113
138
140
138
145
119
95
112
173
95
139
73
115
141
96
107
67
68
76
102
133
125
139
106
135
113
144
97
126
162
144
87
163
90
83
95
127
74
115
108
59
54
67
127
113
98
102
107
143
141
122
81
135
144
127
113
82
83
157
119
82
135
105
108
150
74
74
139
59
119
54
107
144
137
122
81
63
146
153
113
83
108
147
159
89
138
103
147
54
123
108
59
141
112
94
84
161
59
97
111
154
114
78
105
111
128
134
170
148
90
96
76
102
111
125
124
131
96
103
106
133
141
74
95
83
156
143
140
144
153
91
76
81
162
93
102
95
69
143
126
108
134
87
168
122
81
114
115
87
125
102
108
95
141
54
107
167
183
115
131
103
113
120
87
109
103
54
121
116
77
184
102
133
171
83
98
118
95
108
124
77
161
106
105
102
148
158
140
104
81
145
97
179
132
109
115
108
128
106
156
123
175
128
112
54
151
94
172
105
81
152
151
84
108
149
138
133
97
117
123
118
130
163
116
110
124
234
119
100
82
113
185
128
89
49
105
108
90
49
143
105
133
49
136
97
79
49
122
135
160
90
116
155
102
91
171
121
102
106
142
98
67
98
54
125
95
127
119
143
125
194
99
128
74
119
127
74
135
99
147
82
82
166
129
146
108
113
151
99
143
105
108
176
143
87
168
137
82
134
93
161
93
108
76
123
132
115
103
105
95
105
93
86
146
94
100
143
125
146
154
116
115
134
83
105
135
177
180
149
49
130
110
80
105
150
108
89
105
131
98
111
70
113
49
149
95
126
78
79
104
153
155
98
59
143
135
189
114
160
122
105
113
199
103
128
90
148
145
93
106
90
122
106
128
144
186
95
108
111
157
54
123
112
94
126
122
121
103
73
102
124
137
131
87
132
61
127
156
126
74
121
115
116
118
84
112
91
178
106
124
102
124
111
156
102
90
167
178
108
140
102
93
76
124
74
140
74
67
90
103
102
149
155
162
122
95
93
147
85
135
101
117
108
106
116
157
69
120
125
87
120
172
91
127
125
131
83
77
146
117
170
102
102
105
123
103
102
178
103
141
140
121
49
122
59
126
90
77
120
123
92
101
117
125
128
140
124
179
107
125
102
143
95
125
111
132
74
76
74
180
90
97
144
113
81
74
140
132
76
128
143
116
59
95
132
87
95
99
80
89
135
157
177
102
154
124
97
96
155
86
140
81
116
49
98
115
113
68
123
124
61
105
135
158
119
160
77
113
112
113
138
108
125
86
115
167
54
90
152
103
74
144
120
108
94
126
125
120
179
145
112
107
116
148
94
81
159
54
133
118
126
103
77
49
153
59
110
81
152
95
123
168
116
135
90
145
119
59
148
132
118
125
133
161
90
49
105
54
110
149
59
97
125
158
110
95
67
69
86
146
98
112
102
132
90
138
104
97
109
95
77
108
78
122
135
133
85
98
67
61
111
133
78
69
120
181
108
156
173
74
128
101
138
127
61
102
152
118
216
93
181
83
106
120
158
104
79
89
85
143
98
147
79
116
105
107
178
103
85
148
148
115
104
128
141
102
109
161
110
110
148
137
107
107
98
130
84
49
96
169
96
117
131
130
117
159
148
149
83
93
103
106
120
49
125
133
105
67
119
149
112
105
110
129
139
98
99
112
120
135
113
136
123
164
180
100
126
87
100
54
127
112
54
193
76
108
87
101
131
103
127
94
108
122
132
98
95
93
95
105
149
157
122
107
98
158
92
113
90
133
137
124
125
81
59
81
72
49
180
101
54
98
74
102
98
109
80
148
85
82
61
90
105
141
172
100
124
128
137
80
89
123
102
120
129
113
89
100
87
90
140
125
67
67
133
87
132
79
104
182
83
155
157
82
82
157
128
149
129
91
155
108
76
90
117
131
102
103
147
139
103
95
114
49
89
115
150
108
157
84
103
182
141
109
93
135
96
54
108
139
81
72
109
119
54
102
138
124
150
54
106
133
76
128
141
109
77
63
90
115
148
144
130
131
130
184
91
127
111
105
107
118
45
144
95
108
115
87
125
85
87
120
76
135
111
112
94
85
122
110
103
112
168
182
124
77
74
97
102
107
116
102
108
121
112
99
151
65
80
141
116
128
109
96
104
132
85
103
169
148
115
82
147
94
126
93
83
158
95
71
115
134
122
102
108
103
141
104
111
135
90
65
127
120
113
78
54
149
183
127
87
59
122
117
73
84
135
93
125
147
126
95
105
128
142
127
141
105
103
103
115
67
77
49
103
103
102
129
102
76
140
115
108
134
104
123
81
95
151
147
115
104
105
116
95
112
150
104
122
96
188
123
122
107
115
118
143
149
81
115
151
82
120
84
82
78
123
54
83
145
147
94
74
59
95
98
108
105
131
98
116
103
128
125
90
134
119
106
101
104
147
165
119
103
128
141
105
73
95
100
93
149
106
102
159
122
83
102
161
74
131
121
103
106
149
126
102
99
111
54
113
91
154
117
87
131
59
54
108
104
124
113
169
133
129
105
128
98
165
74
90
133
108
77
95
76
81
145
108
68
147
83
77
105
144
160
95
82
175
141
97
74
135
123
81
104
90
49
59
76
128
108
138
102
94
216
113
145
139
107
167
113
74
156
157
95
98
54
102
152
95
49
76
172
129
92
125
49
138
59
59
83
116
163
87
121
158
104
98
128
106
116
86
81
110
77
61
125
49
108
89
90
104
122
112
132
121
115
128
122
67
85
158
148
80
92
108
133
157
88
88
157
108
102
145
103
110
99
134
141
147
103
91
59
95
99
122
134
86
59
127
200
125
116
139
141
112
143
129
103
82
108
97
103
91
102
141
116
59
54
81
125
99
139
137
83
117
102
105
155
114
131
176
182
170
107
105
140
76
115
160
103
83
98
120
108
138
98
112
94
150
129
139
97
110
95
117
87
114
81
114
130
85
103
76
176
74
148
150
141
95
54
149
76
98
98
160
92
135
133
144
81
87
165
81
164
124
112
139
130
107
117
76
119
102
82
121
117
128
87
127
103
91
83
107
61
98
115
54
117
119
152
144
127
122
122
134
150
117
123
124
135
80
125
87
116
123
95
129
133
113
97
79
108
119
62
98
132
103
99
132
86
143
80
131
118
113
107
125
136
167
153
135
98
125
107
54
160
123
102
135
108
87
123
145
101
145
92
118
49
103
109
96
86
108
90
113
83
147
128
86
85
154
83
159
89
114
126
54
105
141
142
147
102
102
97
93
154
90
54
54
102
122
154
81
104
81
97
132
123
138
95
160
150
116
119
159
102
128
59
98
101
91
158
106
103
113
98
130
143
182
144
112
88
130
139
105
54
102
132
117
131
143
115
128
49
99
169
149
76
90
108
131
120
93
125
102
124
98
143
104
156
141
110
92
98
133
139
106
135
95
103
87
112
102
147
171
76
74
118
87
98
116
97
80
137
103
145
144
83
123
96
93
102
121
91
79
104
101
177
69
83
110
140
109
76
150
112
106
135
108
59
115
97
112
152
95
145
105
86
77
150
133
112
74
102
125
114
68
97
173
94
145
79
148
215
108
118
125
100
120
151
82
115
54
69
93
81
120
100
107
148
152
101
177
179
118
105
116
117
160
102
128
127
81
164
101
157
88
149
133
140
102
141
156
87
111
120
125
116
73
158
122
89
141
160
106
161
54
132
140
81
155
87
83
158
98
118
81
154
142
118
125
95
123
175
130
122
115
106
95
94
137
185
108
104
120
87
143
131
148
118
54
112
118
126
102
108
117
104
130
84
162
118
131
74
149
113
82
56
134
153
127
54
128
177
74
91
166
151
140
116
164
111
108
82
139
105
164
133
111
95
119
117
126
49
101
80
106
114
97
111
89
160
102
124
151
200
140
125
113
125
70
120
194
119
136
110
125
133
81
104
108
117
74
77
104
148
155
118
203
94
135
153
86
120
115
151
83
59
67
143
116
147
120
93
131
149
148
69
117
49
110
148
83
111
98
83
126
102
126
112
128
158
94
76
61
119
98
158
120
118
133
114
111
165
162
116
91
125
128
95
153
140
106
90
129
110
114
92
54
131
90
106
54
96
132
90
59
118
128
164
80
90
110
141
139
147
74
90
182
141
67
136
95
137
140
105
147
103
93
125
93
87
129
168
108
74
117
81
146
91
120
134
76
93
114
80
96
81
141
77
133
156
126
145
94
138
158
59
93
122
74
49
138
134
108
119
115
68
95
141
102
106
141
136
144
96
90
128
80
145
135
59
125
110
153
134
147
76
59
102
54
111
107
135
113
110
101
100
167
110
102
106
87
116
143
77
94
112
127
90
95
145
82
132
87
49
104
76
89
83
130
148
152
106
161
136
103
135
146
95
148
109
124
151
86
108
90
120
95
106
49
124
105
69
122
102
179
81
129
113
113
144
81
140
125
49
102
107
129
77
103
113
99
164
143
130
103
102
144
104
102
150
106
103
177
110
79
148
102
118
106
123
135
160
90
135
82
113
97
98
139
85
93
159
95
126
129
99
135
133
113
82
106
144
103
155
145
95
85
82
118
94
127
103
114
118
160
124
91
117
102
162
149
110
74
117
108
84
158
133
192
143
103
103
67
106
106
67
82
127
102
119
129
116
121
133
81
81
82
112
116
200
124
138
120
90
96
112
132
95
110
92
101
95
133
103
104
152
49
102
90
185
95
123
73
153
107
85
127
167
108
192
116
124
108
120
104
90
125
113
131
167
107
156
128
122
102
107
121
108
54
144
79
156
123
105
83
115
81
108
105
54
120
138
49
141
157
97
186
128
102
104
128
102
133
114
158
101
116
117
78
103
123
144
139
135
92
49
102
90
65
76
98
83
95
134
128
139
76
102
145
80
185
139
76
144
94
81
107
111
159
74
138
108
54
49
137
118
87
102
120
104
119
145
102
138
89
76
95
98
168
107
127
113
139
104
136
132
143
161
156
54
134
98
101
126
100
158
142
108
90
137
81
145
102
87
106
108
110
119
94
89
141
138
99
158
140
61
125
81
129
120
131
82
111
83
87
144
166
108
106
135
151
81
96
127
127
94
69
102
130
93
121
115
120
108
148
135
120
54
49
131
89
49
95
106
70
137
98
105
112
94
96
129
123
118
128
116
61
123
184
120
85
121
98
155
152
102
102
139
82
149
96
123
141
158
80
124
102
117
137
120
143
67
101
122
128
109
107
118
124
122
143
157
67
120
144
133
151
77
114
161
108
110
120
141
93
105
95
119
95
155
139
167
102
150
67
102
128
105
102
76
113
148
120
205
185
147
133
90
117
80
110
68
119
54
145
95
98
75
88
128
93
119
136
100
90
139
68
123
123
61
190
91
49
73
112
147
116
99
142
104
139
116
99
94
107
125
147
93
80
154
129
101
123
54
114
147
79
99
76
133
129
138
113
114
85
98
54
87
107
87
102
154
129
108
95
115
95
145
95
110
145
108
130
126
181
96
104
155
102
125
152
112
107
133
148
113
136
116
95
130
104
124
153
109
124
124
133
125
54
159
54
143
164
143
129
135
150
118
69
205
77
98
145
118
111
140
105
103
59
139
93
129
69
108
128
130
74
102
134
149
155
102
130
104
108
124
174
126
109
183
92
95
87
142
80
95
149
81
54
156
82
136
54
105
117
112
92
112
127
118
101
143
118
81
77
116
123
87
87
98
138
128
105
95
122
147
122
97
87
121
77
133
148
118
123
134
167
49
83
133
137
42
121
80
59
97
167
122
97
188
82
135
99
95
84
123
117
76
132
114
134
94
100
141
130
76
54
119
89
79
95
99
87
97
148
143
87
138
164
136
148
168
133
89
126
124
95
139
185
143
110
179
73
104
98
149
54
128
95
104
98
167
119
108
63
110
99
150
100
116
125
120
98
95
106
123
108
54
151
115
91
98
120
127
49
93
102
85
118
76
120
97
153
116
111
118
77
161
159
133
107
135
149
95
133
81
95
155
105
81
102
54
143
54
188
95
163
90
102
95
125
99
110
157
125
109
146
156
105
110
108
136
125
116
103
102
179
117
90
128
163
76
135
121
165
154
88
103
142
146
78
145
82
107
111
91
150
117
112
124
81
162
169
124
100
129
116
77
89
141
98
131
128
105
159
141
142
148
105
95
81
95
139
141
120
54
102
113
122
96
129
100
152
166
130
74
133
54
98
108
125
98
105
87
173
139
119
119
106
151
148
141
85
54
98
113
172
110
54
95
100
122
129
69
115
133
103
158
144
105
99
98
125
103
104
134
135
49
108
77
127
105
113
108
82
148
98
145
108
49
216
132
76
67
144
98
141
69
159
98
59
170
123
95
108
95
113
112
126
95
134
125
159
105
95
95
116
85
156
98
67
110
108
105
49
89
110
133
114
110
144
129
112
54
116
95
132
100
117
100
73
102
83
106
95
138
81
115
95
97
149
93
108
87
115
54
118
133
148
133
96
132
138
95
104
124
104
173
101
101
150
147
87
108
143
118
116
116
136
90
102
187
85
98
103
87
112
118
97
98
110
108
177
78
140
113
141
161
171
108
81
49
127
117
118
87
54
188
76
57
109
109
83
96
108
83
108
108
131
136
81
61
83
155
90
135
54
161
149
118
140
146
102
134
155
95
157
139
146
129
82
118
138
177
105
148
90
213
107
148
108
98
88
158
124
98
134
132
96
97
81
98
67
84
164
54
169
113
161
130
98
141
83
123
152
123
95
101
139
94
113
107
85
139
81
129
129
133
68
78
179
101
101
88
90
102
133
98
110
147
133
161
90
144
162
144
99
54
194
102
102
123
90
133
161
81
159
118
123
151
133
89
135
102
49
136
96
105
94
103
133
93
78
95
80
85
127
133
126
128
84
129
65
140
163
108
95
145
104
149
102
102
86
95
118
133
128
98
81
111
74
98
135
145
137
78
113
100
76
113
158
59
83
138
108
104
118
143
139
81
67
106
115
93
102
115
122
159
54
108
113
74
160
103
81
121
140
123
129
90
101
128
78
114
93
107
54
127
143
171
128
104
108
150
102
124
100
161
106
131
135
95
100
102
105
148
91
104
133
148
93
49
90
80
106
154
89
110
161
125
104
105
144
135
54
97
93
92
108
168
128
111
153
135
112
109
110
102
130
103
125
129
159
141
105
125
110
102
83
169
127
120
108
147
141
59
83
99
148
93
117
140
54
81
81
174
102
95
146
144
102
138
118
112
128
77
139
127
149
133
166
82
98
97
104
90
130
57
154
74
117
49
83
115
93
138
97
67
129
87
104
110
140
134
83
143
94
157
83
133
113
114
95
162
101
156
108
74
105
113
132
162
108
80
167
168
95
103
90
128
152
92
97
168
98
103
125
133
127
131
98
145
49
103
77
136
115
67
135
101
131
160
185
92
103
145
100
93
125
111
59
54
105
112
153
125
79
120
129
131
98
118
94
115
120
135
186
95
106
95
133
95
97
101
108
116
81
98
149
80
70
102
129
92
103
146
82
143
90
115
102
74
167
127
153
155
100
80
119
118
93
115
131
104
87
54
93
76
177
95
100
187
111
177
95
77
164
93
99
59
130
81
122
138
175
102
133
184
158
128
76
97
84
103
95
146
95
125
142
75
108
128
107
182
116
110
96
116
125
115
101
85
142
61
107
96
188
165
163
154
158
139
147
188
78
115
80
172
93
149
105
163
54
103
106
104
89
161
124
103
99
85
91
155
148
177
108
127
147
108
82
103
103
54
111
120
118
90
98
148
151
148
119
74
143
102
158
167
177
153
118
103
132
103
128
63
108
82
136
129
87
156
108
59
177
49
95
123
91
126
153
90
156
200
137
122
130
114
78
139
118
104
108
158
108
118
104
152
91
49
122
122
143
84
103
110
173
106
105
85
125
109
158
93
109
102
137
87
83
131
105
115
170
221
91
143
121
138
129
97
54
89
154
110
119
98
61
87
108
90
54
139
108
118
144
149
108
134
135
74
120
96
105
54
117
49
127
117
54
105
77
180
134
158
49
179
113
149
128
154
123
133
83
74
96
129
133
123
129
180
145
115
160
103
96
180
82
131
143
79
118
133
54
84
106
104
81
125
123
99
74
103
96
111
87
81
146
108
95
93
105
149
118
110
149
82
148
82
108
90
49
148
151
173
115
93
121
118
87
54
133
153
177
98
175
49
91
107
54
54
106
49
54
122
102
98
104
98
81
133
93
104
96
89
140
118
107
134
96
118
112
87
132
106
102
117
119
160
116
108
68
54
158
176
81
168
121
85
141
130
82
102
62
106
90
105
107
148
133
103
147
108
87
87
129
134
106
103
133
95
59
172
99
148
124
115
54
134
161
195
175
180
145
82
147
110
102
124
74
80
85
103
148
122
144
74
170
109
120
81
137
105
133
148
131
98
104
54
153
80
116
145
170
143
103
77
127
98
144
107
125
121
81
148
95
128
97
79
141
155
67
112
86
126
102
54
153
95
102
98
119
102
79
140
128
140
90
136
114
141
144
98
113
112
68
109
151
103
124
98
108
101
100
113
121
101
93
141
133
59
125
123
141
102
118
107
158
149
115
102
106
163
144
117
122
146
114
103
103
100
91
100
101
88
162
128
77
129
135
103
103
129
116
125
102
127
133
118
118
113
158
121
67
131
59
156
127
82
85
67
80
108
102
131
148
141
177
98
54
144
98
127
133
103
95
87
85
124
115
164
148
88
114
115
96
91
113
120
176
54
130
102
59
90
147
82
108
107
120
85
79
155
120
108
106
108
102
106
54
54
103
164
117
83
90
82
59
82
119
193
132
130
80
90
127
75
75
158
144
109
81
81
87
97
54
154
113
128
95
106
54
107
90
98
200
141
119
120
114
108
141
87
144
84
117
177
115
54
90
59
175
54
54
106
123
81
133
95
146
139
125
141
103
125
109
154
114
49
81
131
111
114
75
152
125
146
67
161
167
95
88
88
98
160
110
141
83
119
108
142
159
113
107
125
119
98
70
132
200
133
124
129
127
98
161
124
128
76
130
157
149
118
144
67
108
98
98
136
68
138
126
76
105
125
116
80
95
112
85
101
77
108
123
108
74
113
93
113
133
100
146
54
98
181
100
153
112
131
121
118
67
80
102
140
127
82
98
82
108
162
138
89
132
133
59
128
96
95
111
87
102
149
98
135
109
99
74
104
78
98
76
114
116
134
139
54
54
77
78
121
108
132
89
80
107
81
133
113
132
101
122
111
112
98
85
77
137
98
74
150
81
96
54
149
173
145
101
87
172
120
91
156
54
214
113
143
115
128
85
114
143
148
115
132
106
98
125
121
131
144
149
101
118
131
124
154
108
134
100
126
131
151
49
119
91
59
113
125
54
90
130
96
159
129
131
59
115
134
94
83
169
164
147
87
160
105
116
81
157
76
108
143
87
108
106
117
114
105
170
90
164
189
109
59
117
144
172
54
111
141
95
103
91
92
131
90
120
93
92
125
143
108
76
116
133
160
117
73
94
199
120
106
120
112
120
135
59
140
113
49
142
99
101
150
100
96
95
87
148
145
212
108
149
115
136
103
143
141
106
156
206
108
77
93
100
121
144
49
110
90
139
54
139
108
164
151
98
102
148
61
150
128
113
129
98
134
112
128
116
95
167
162
61
103
129
185
108
106
93
109
126
81
81
54
129
185
103
129
130
151
113
133
83
113
68
78
91
148
151
138
95
161
140
74
105
162
113
103
118
147
90
125
74
143
81
100
112
87
138
54
153
146
95
149
89
108
54
86
101
132
163
129
96
111
103
98
122
111
96
156
144
103
166
134
132
108
89
74
45
86
54
106
132
102
82
117
87
145
111
67
115
133
85
87
136
131
106
121
144
132
119
79
54
106
105
82
137
71
106
108
95
117
107
148
104
135
121
114
98
147
124
111
93
114
165
95
138
87
120
100
59
81
108
87
102
106
99
91
89
101
81
95
143
98
123
147
92
86
82
77
139
148
95
116
156
120
91
113
87
131
108
76
148
152
127
95
93
99
76
151
124
76
113
99
121
45
79
106
125
104
129
135
139
102
89
96
122
180
54
106
78
144
99
113
131
78
96
191
143
82
142
93
119
103
126
125
54
107
81
98
136
140
89
83
108
80
139
99
95
176
142
147
100
165
84
101
105
133
138
100
127
86
129
82
122
122
78
54
95
96
113
167
98
177
99
87
54
113
126
54
80
93
110
108
76
116
112
82
148
120
91
125
149
95
111
177
74
102
122
81
138
145
82
114
54
101
115
105
107
146
128
117
154
99
126
122
122
115
138
100
87
131
138
125
124
112
139
133
117
160
90
111
121
105
131
90
172
87
96
133
103
177
94
109
125
117
162
148
54
82
87
147
113
97
98
136
187
137
96
103
150
133
119
102
153
112
127
142
116
82
145
153
113
115
139
54
136
97
161
114
85
135
98
112
113
87
128
73
95
93
81
45
74
140
169
80
121
95
128
115
119
203
115
108
108
93
69
93
96
54
100
102
123
145
163
84
130
140
95
125
178
138
182
127
54
108
133
54
135
59
76
93
95
133
105
132
116
127
112
95
95
95
160
54
167
98
125
95
100
117
103
150
138
173
108
181
82
104
98
108
129
97
103
161
72
200
181
129
190
54
95
59
95
119
94
108
102
89
126
59
142
141
126
59
127
108
113
54
101
125
113
129
107
95
106
120
143
73
100
122
135
139
105
153
104
95
87
145
100
93
93
105
59
154
92
111
135
131
127
122
75
91
79
139
54
67
103
90
94
113
127
107
97
76
108
113
144
199
103
73
110
136
149
143
45
116
125
103
147
134
151
130
110
112
49
149
90
127
54
115
126
73
111
123
74
82
74
107
93
122
160
148
136
156
139
114
54
101
98
114
121
95
49
101
54
122
161
61
114
65
91
129
69
108
159
54
90
94
101
142
114
90
116
104
113
148
165
128
118
141
90
104
107
131
141
97
126
93
109
113
124
144
90
101
105
154
85
157
95
107
109
125
100
119
116
130
170
78
128
123
124
120
49
108
103
132
141
88
129
113
101
119
161
156
67
76
161
96
155
90
158
152
131
159
92
82
115
75
117
80
104
131
133
102
77
62
93
79
147
108
76
78
67
102
104
107
152
101
129
165
100
141
104
108
54
113
148
151
114
153
109
63
105
149
68
103
87
130
74
106
69
114
129
118
102
98
115
136
141
137
107
128
146
139
106
108
131
112
132
104
105
136
143
115
148
120
124
149
102
108
116
141
93
111
110
77
79
169
179
104
153
100
183
91
108
97
98
105
62
155
85
99
119
112
145
67
81
97
114
120
113
124
106
110
113
76
148
103
105
94
102
95
77
126
94
128
191
151
91
148
108
49
82
108
105
206
110
87
106
145
102
151
102
88
105
78
112
73
142
117
118
150
134
82
85
101
90
100
118
113
113
133
132
108
115
102
78
108
177
87
83
148
125
110
146
102
67
147
112
146
135
140
139
113
67
99
102
129
49
128
177
146
112
74
61
113
103
132
78
108
148
145
90
95
68
93
82
82
93
122
167
74
105
123
87
128
117
87
128
107
98
99
97
98
81
100
159
106
113
106
87
158
157
110
118
93
125
131
107
96
161
133
131
102
143
110
151
104
118
134
49
127
96
99
123
125
124
96
94
108
93
113
153
177
125
110
104
122
139
128
81
120
102
105
106
131
119
95
108
141
118
150
120
84
123
144
84
110
125
49
87
89
104
144
138
145
183
96
91
95
125
96
126
130
135
115
133
107
92
98
148
134
61
126
95
137
74
68
112
105
95
54
162
180
54
133
124
120
162
119
96
103
101
108
149
120
135
100
90
150
160
96
185
118
139
90
85
107
191
67
98
91
102
77
177
110
181
108
139
107
100
125
150
108
74
140
119
102
42
148
109
116
103
81
113
185
67
86
121
99
129
134
124
126
124
76
140
84
75
149
95
98
61
123
94
107
78
135
112
154
108
104
104
107
134
131
110
118
177
67
89
108
109
95
103
90
108
93
49
117
94
90
111
107
79
54
73
101
102
137
69
163
78
95
185
113
59
123
149
49
167
140
133
78
131
127
94
122
112
90
225
105
90
82
59
92
119
178
131
83
119
158
121
95
104
119
91
81
108
97
87
134
74
102
142
104
120
97
111
144
116
109
139
150
123
104
119
95
85
130
85
145
102
100
128
142
100
100
144
147
113
161
151
122
131
161
157
191
122
61
182
155
165
113
76
107
112
128
134
125
177
113
163
54
143
80
100
103
157
139
106
54
140
129
49
148
153
103
152
129
158
88
101
45
68
85
82
116
108
83
107
61
146
154
126
121
102
98
141
108
93
111
141
106
108
127
92
100
95
150
54
95
93
137
105
167
121
146
61
133
76
102
128
125
106
98
124
128
171
127
86
118
135
106
167
168
118
54
98
123
103
136
102
126
138
133
105
97
90
129
135
104
109
141
115
128
158
138
93
102
85
119
59
118
74
148
145
122
125
101
61
165
160
136
127
125
133
121
113
126
108
151
152
95
124
151
116
191
106
101
107
124
152
84
180
107
152
121
101
149
131
92
90
113
125
101
93
89
142
95
91
104
122
103
147
138
115
90
117
157
144
148
83
140
95
74
82
133
124
99
103
69
59
117
139
59
116
83
119
133
96
123
138
103
127
159
75
98
169
107
121
115
54
96
120
133
106
133
151
54
104
49
103
76
95
159
141
123
157
143
132
111
108
129
129
132
77
103
149
125
181
115
96
54
54
133
122
83
82
83
102
148
160
122
149
70
129
138
91
111
109
148
194
175
102
126
158
128
137
105
90
149
107
101
98
69
131
164
80
120
82
90
160
108
144
145
54
103
76
155
78
81
85
54
59
129
129
80
125
59
108
165
148
106
177
95
79
155
150
128
113
74
99
97
109
160
93
109
54
93
150
102
105
83
127
102
111
95
179
140
85
93
156
102
148
105
165
118
109
115
130
167
83
140
135
133
103
125
114
148
129
125
134
102
133
77
177
135
180
95
143
108
68
113
84
143
153
88
93
127
103
95
82
99
162
123
160
102
101
148
102
112
111
148
107
124
95
154
180
108
125
59
96
95
87
142
91
59
149
57
81
154
153
133
133
143
112
68
95
113
54
122
123
111
67
147
120
74
54
122
167
125
124
167
105
77
120
134
129
67
106
76
103
90
141
116
74
118
74
94
103
121
95
121
145
109
110
120
69
54
165
107
69
123
162
157
110
68
105
84
84
120
137
126
141
143
121
126
141
146
140
120
103
127
49
84
143
153
139
143
120
102
131
107
122
96
81
115
88
105
112
54
93
78
68
102
132
100
101
74
137
98
158
157
74
145
49
96
150
103
125
128
84
125
159
59
120
122
138
101
103
106
104
110
61
125
116
141
129
113
125
131
49
92
98
123
140
132
131
138
104
85
88
110
76
108
175
129
107
109
87
160
120
95
82
82
49
125
128
127
82
54
102
106
105
74
157
128
128
150
127
87
119
112
145
59
133
98
158
119
90
133
107
115
89
94
95
82
79
74
118
118
116
117
125
120
59
67
113
124
165
120
105
121
153
54
114
181
123
123
98
102
95
127
177
155
93
119
152
123
110
103
104
118
143
74
144
134
74
67
125
151
77
102
148
108
142
76
139
161
54
129
103
177
159
95
118
126
170
117
166
173
148
125
156
161
98
108
114
131
112
128
69
128
114
92
95
98
125
102
180
49
102
106
133
135
112
160
80
154
102
125
61
74
140
128
131
113
95
89
134
61
186
160
107
122
104
147
99
114
54
83
98
99
103
159
112
128
116
89
95
101
103
166
117
134
172
59
181
108
103
105
83
90
54
115
105
137
148
121
108
81
98
87
95
131
106
151
101
95
111
151
130
54
144
107
115
191
91
155
143
54
108
147
94
110
115
140
167
191
117
77
133
92
102
146
108
157
95
82
125
120
116
132
98
110
108
131
103
167
103
98
129
82
80
78
131
127
182
115
102
126
143
129
78
91
140
97
103
132
95
144
143
86
95
98
136
141
125
133
54
62
103
185
139
115
134
59
153
107
110
142
141
95
133
116
223
153
155
108
120
148
96
97
76
103
138
109
158
95
96
156
85
120
114
74
115
87
171
97
155
124
106
65
102
127
148
79
89
143
152
132
169
181
78
105
136
123
81
133
95
54
155
161
95
120
91
103
158
74
74
105
133
42
98
118
138
83
125
102
87
102
122
49
128
83
105
104
98
177
147
125
108
95
105
144
128
143
102
95
102
54
134
124
89
74
74
103
131
128
80
125
54
82
91
130
94
74
131
97
104
113
125
102
167
54
102
99
81
113
108
121
136
123
184
77
130
103
108
122
105
140
94
106
65
118
106
132
155
145
93
99
135
111
147
125
157
96
109
79
122
119
54
143
129
68
149
154
83
127
101
143
97
161
133
125
96
200
155
180
124
105
79
145
168
121
102
81
116
123
134
103
115
101
116
85
105
125
54
146
159
102
54
108
97
81
129
131
151
168
130
121
85
95
82
108
109
95
125
103
129
77
100
161
87
152
65
93
67
87
95
160
133
122
108
123
136
82
129
130
82
167
135
94
145
94
82
113
158
130
77
159
115
154
109
105
95
142
107
153
144
128
84
145
103
84
106
140
103
149
110
130
147
177
170
128
172
163
86
134
92
110
88
81
108
110
84
135
79
177
108
54
74
95
89
102
98
125
128
111
59
119
115
102
83
109
132
77
102
103
74
151
124
132
98
82
93
96
108
166
85
108
124
115
118
54
128
91
173
88
137
84
144
155
98
96
108
90
54
108
105
167
95
128
125
101
84
102
98
118
76
97
104
144
91
129
137
140
107
156
122
101
148
86
93
54
109
68
108
122
167
144
90
192
120
131
147
123
139
139
111
118
109
98
73
152
59
87
54
76
126
103
111
110
107
49
109
106
124
125
108
124
81
168
54
100
102
115
96
164
102
115
89
133
138
54
120
103
108
154
125
90
105
102
124
82
117
112
117
98
110
54
105
54
137
87
74
114
111
108
148
132
120
114
97
54
160
148
127
96
156
150
141
105
170
98
54
146
116
82
98
125
61
108
78
92
103
115
127
140
106
67
118
135
90
93
73
83
179
136
67
127
152
90
76
102
144
95
132
119
88
121
144
96
122
94
83
142
82
135
107
100
131
127
130
142
54
102
113
102
119
95
131
93
161
103
121
110
129
83
87
102
54
134
108
81
74
81
119
82
61
133
94
169
133
103
104
114
185
153
107
124
91
116
98
90
163
91
128
81
133
110
126
87
90
110
135
112
100
133
131
123
140
103
108
133
106
129
102
73
115
173
104
85
137
132
151
78
62
54
105
123
129
117
54
113
105
102
136
97
177
144
131
157
116
126
93
74
143
148
141
107
74
142
104
93
83
94
177
113
129
59
108
140
116
97
130
98
108
81
121
128
108
108
61
102
106
128
87
144
91
94
144
142
82
102
148
137
134
86
112
144
108
90
200
90
127
130
97
154
88
137
141
169
184
125
108
54
128
112
67
102
105
49
81
95
104
96
54
104
104
170
128
95
98
126
123
97
104
112
120
99
91
113
155
78
135
135
118
91
127
148
156
134
98
101
87
98
177
93
87
200
114
112
95
135
102
135
131
87
173
158
122
95
113
145
110
95
93
85
120
109
110
91
144
96
110
98
133
115
95
134
128
132
106
54
49
105
140
111
168
91
161
129
120
139
126
115
74
152
105
104
134
76
126
132
116
148
102
107
82
153
135
108
90
49
108
103
49
98
114
98
84
104
98
105
103
156
148
140
137
110
140
122
129
146
103
124
145
127
132
54
105
119
139
54
97
127
125
139
144
106
103
99
96
59
124
119
164
202
102
143
101
168
133
54
86
91
108
74
119
106
87
67
103
113
135
65
94
134
120
113
95
54
139
128
113
144
148
98
151
147
74
112
118
157
135
129
100
112
61
137
83
131
132
158
86
129
154
143
142
95
127
112
132
105
112
155
112
150
115
92
122
105
147
161
111
143
128
138
93
206
103
138
114
155
115
102
61
95
142
144
132
133
67
95
165
89
105
173
104
177
125
95
170
97
54
67
129
165
179
147
102
109
160
59
77
97
119
95
102
68
98
87
140
95
83
106
113
113
92
147
87
97
80
67
77
119
122
100
103
87
142
120
128
68
95
74
59
85
146
118
134
131
168
130
95
117
84
69
146
114
98
81
113
74
144
156
135
110
216
81
141
90
140
124
114
123
54
141
96
101
87
107
143
115
122
155
113
129
122
116
108
115
114
97
83
122
139
91
105
85
103
54
96
74
102
108
165
136
118
94
105
54
110
116
108
105
81
115
81
98
127
140
90
161
87
128
130
136
125
78
117
83
79
106
146
135
98
161
111
95
78
69
120
103
87
135
141
124
124
123
95
148
89
119
124
106
110
127
99
137
109
146
99
89
146
192
87
127
80
118
123
87
107
129
65
171
131
54
96
131
129
69
153
122
139
130
125
130
134
87
95
151
176
123
141
124
49
148
77
133
185
127
87
119
128
124
104
120
132
93
97
78
136
83
81
95
106
165
142
147
140
95
174
112
54
148
102
129
134
91
96
134
95
147
102
80
111
140
79
123
136
140
97
144
88
144
144
152
125
81
93
143
102
45
102
49
148
90
103
119
83
91
129
118
107
95
143
81
135
111
165
95
109
144
101
85
125
77
110
118
82
105
159
105
153
134
163
98
105
142
120
81
114
113
136
142
113
168
146
102
83
149
97
153
74
162
140
77
104
101
140
135
105
91
124
115
167
108
127
135
74
108
144
54
138
97
103
112
112
80
121
144
76
108
122
133
67
122
54
98
106
138
82
76
80
154
115
103
108
109
80
54
172
165
120
108
103
104
131
168
87
135
184
145
68
133
131
105
92
78
54
139
105
105
145
172
140
148
129
101
111
103
119
54
108
158
124
129
147
171
76
121
54
103
155
135
98
139
103
140
161
110
102
93
102
129
106
80
106
54
188
105
82
54
107
67
107
116
54
120
148
115
144
105
103
54
97
118
116
150
94
102
180
102
105
108
119
141
107
131
103
143
76
140
95
76
91
130
95
178
130
129
82
54
177
107
145
87
115
115
93
67
106
133
143
119
125
120
100
115
144
97
126
99
117
101
109
104
149
124
82
87
54
106
121
98
138
134
95
108
156
146
134
133
88
143
106
125
116
78
157
108
103
135
143
123
145
49
101
145
128
137
132
98
128
112
129
118
120
87
95
98
59
177
93
119
115
93
81
59
108
165
97
98
172
103
121
108
173
137
95
114
128
121
110
81
117
74
67
127
59
90
133
123
141
124
98
102
139
89
115
104
147
121
96
146
67
154
112
68
140
90
65
104
128
125
114
124
127
87
125
112
96
104
120
115
105
149
77
49
122
102
96
78
112
161
119
69
49
103
135
93
130
100
134
49
98
146
213
120
112
131
78
137
98
157
141
116
78
82
113
84
74
117
98
186
122
128
130
138
180
158
112
113
106
144
106
142
147
138
80
109
110
102
67
132
85
141
95
157
89
156
115
143
108
124
107
104
143
73
124
73
153
105
120
107
123
158
143
131
123
93
129
78
134
116
104
168
98
121
112
123
131
111
120
114
116
54
118
146
105
133
67
141
135
95
167
169
138
108
173
155
105
126
95
96
105
154
144
134
131
81
108
116
109
113
102
84
99
95
81
54
79
116
74
118
150
103
93
131
81
120
138
98
102
170
59
119
146
116
101
114
124
82
88
134
118
61
105
140
120
151
95
119
178
102
120
91
147
113
120
68
90
146
54
113
146
142
67
95
101
138
173
119
103
54
124
116
163
144
110
121
144
99
93
153
81
140
113
135
112
129
141
87
128
76
120
113
102
127
106
134
95
81
49
68
113
163
125
164
185
95
109
122
133
124
102
127
121
128
112
146
128
197
107
77
150
136
108
85
133
117
136
122
135
94
83
131
122
123
146
112
82
82
107
131
117
114
133
81
131
105
128
108
98
74
81
121
125
120
93
147
81
154
139
92
103
146
89
113
153
108
110
76
116
91
163
104
126
108
108
129
91
83
122
98
114
114
160
93
112
133
90
148
138
128
129
169
130
170
106
158
81
98
150
145
139
143
99
90
84
123
97
124
80
155
85
90
121
108
102
99
141
129
108
138
89
120
179
81
129
87
87
71
76
150
148
121
115
86
98
163
160
144
113
124
102
137
111
105
115
137
137
177
104
95
124
93
144
104
117
155
68
148
176
118
105
122
49
140
103
166
134
123
85
68
102
93
128
68
93
95
128
69
69
95
120
121
168
144
103
181
95
98
81
165
129
120
140
61
98
139
154
54
155
119
147
118
98
90
59
133
107
80
93
97
102
54
129
133
87
113
145
146
49
54
133
135
173
92
144
81
86
105
150
98
77
112
83
130
125
78
95
83
121
158
106
136
122
132
67
115
110
182
99
101
100
59
57
109
133
117
103
74
125
101
118
129
86
97
96
102
129
148
129
132
81
54
147
103
96
101
94
149
129
219
101
177
125
108
156
118
131
98
113
79
115
94
102
87
92
98
138
107
145
105
152
169
164
112
92
87
98
76
158
97
103
119
98
93
116
147
139
107
120
159
54
74
106
59
109
147
135
116
135
96
72
106
135
95
110
125
89
122
104
127
92
54
132
131
118
113
103
110
131
118
74
117
107
138
152
100
158
114
61
160
114
220
105
69
92
95
175
54
128
118
88
82
85
122
93
145
160
114
87
100
97
106
143
49
97
109
69
127
103
103
49
142
112
114
149
117
158
77
54
132
108
82
115
54
88
74
127
102
101
61
125
92
145
180
105
95
92
147
115
108
111
96
102
125
98
107
81
54
200
103
111
127
89
129
138
119
106
181
103
103
120
111
73
86
108
112
49
90
77
102
95
159
89
81
108
107
139
142
186
124
149
106
98
85
82
118
170
105
130
153
127
105
137
161
97
99
201
90
177
128
186
120
101
59
94
125
129
61
120
131
135
153
106
120
103
167
54
87
107
155
145
95
138
87
95
143
104
54
113
74
96
115
105
120
102
141
140
131
54
132
151
106
78
112
113
83
74
120
118
137
102
67
113
128
101
126
81
144
80
114
144
179
77
137
122
93
82
133
140
81
112
54
136
130
88
172
173
131
81
115
116
95
172
156
103
154
120
128
83
108
90
78
115
110
69
108
97
113
114
49
59
81
74
130
144
104
125
118
158
92
127
85
114
91
102
89
113
97
99
155
98
150
181
93
124
113
90
103
137
114
106
155
102
90
143
128
87
54
110
90
139
145
148
91
90
90
116
145
159
97
126
115
93
115
100
122
113
83
123
200
78
83
125
134
138
140
141
82
120
87
137
129
113
111
123
54
85
96
78
103
128
165
112
97
93
100
94
116
95
166
82
131
49
105
77
109
94
76
95
91
76
104
81
119
59
161
106
113
108
118
127
128
77
93
91
108
93
112
153
118
130
108
158
128
115
83
92
82
111
124
154
168
81
153
141
108
90
148
194
70
115
99
95
79
135
131
82
135
107
96
159
180
170
98
166
130
130
169
132
67
82
101
116
109
180
136
96
118
78
104
119
103
97
98
131
136
113
142
108
54
145
135
122
129
95
151
61
108
113
144
92
78
121
49
125
90
94
59
85
102
139
137
81
139
129
174
83
110
158
177
108
98
78
146
145
125
106
109
61
105
136
125
95
74
134
123
140
135
100
89
108
102
128
68
120
138
87
125
142
83
128
108
119
120
156
153
122
140
204
105
153
147
85
111
147
113
133
123
114
78
145
113
95
132
135
110
118
103
140
101
125
104
87
54
103
89
76
124
143
106
98
158
102
121
160
154
131
86
54
82
146
107
131
119
77
118
149
74
89
105
102
200
98
103
144
144
144
124
111
128
119
111
93
111
151
97
141
59
108
105
93
109
135
120
219
108
136
122
104
149
115
88
120
153
113
91
123
97
95
115
106
54
85
103
102
94
108
78
74
123
168
87
122
143
135
161
87
54
98
113
90
124
54
79
83
108
173
107
76
106
107
81
98
130
98
90
154
85
135
95
129
112
103
102
97
141
134
145
108
106
98
152
59
81
81
105
168
160
142
118
96
112
77
124
49
123
122
97
107
81
154
131
74
119
125
95
119
136
125
134
113
138
140
90
177
67
126
89
59
118
126
133
147
144
96
116
130
96
140
151
86
150
148
142
120
104
67
127
94
92
59
76
113
163
76
82
116
89
71
102
127
135
59
134
129
125
112
140
108
131
128
94
61
110
61
159
108
105
129
143
139
158
132
148
117
85
86
98
135
120
76
89
102
98
87
95
148
91
95
80
115
108
132
102
49
147
159
156
77
131
153
102
118
81
146
112
112
168
130
123
68
93
61
93
103
114
135
95
102
95
125
89
73
125
110
54
132
83
139
148
120
85
59
100
124
131
115
99
94
122
161
137
104
127
110
94
81
171
103
92
125
90
141
155
112
99
148
90
110
118
67
118
141
116
137
79
108
117
74
61
110
118
45
137
139
110
106
107
78
115
77
133
77
174
97
80
95
124
87
79
133
126
137
73
93
77
119
143
105
126
107
162
105
90
127
54
163
95
125
69
169
177
141
130
144
91
118
158
133
95
118
147
149
89
123
109
90
133
117
131
136
109
102
143
77
138
54
123
90
161
119
113
157
120
133
76
102
112
148
128
99
96
125
141
95
108
128
138
123
128
117
176
99
191
77
125
94
150
118
124
125
54
174
107
123
105
129
84
93
107
169
93
141
168
131
98
145
130
87
140
71
158
117
182
95
169
110
122
87
125
125
120
138
61
192
161
99
153
89
133
102
95
98
154
118
128
135
139
101
197
85
194
125
98
107
160
116
54
186
113
130
117
157
127
129
135
114
89
194
164
117
86
144
108
103
92
136
106
85
82
102
110
72
82
119
81
76
91
99
88
137
76
127
74
106
79
103
134
87
141
82
136
139
54
123
79
95
113
49
54
69
59
112
116
150
108
90
92
140
108
129
128
54
102
95
100
59
146
110
77
155
148
105
113
121
143
95
125
126
122
59
78
103
104
135
113
115
54
110
74
143
77
54
108
119
120
116
102
113
107
67
78
106
133
147
95
147
105
107
98
90
74
127
148
148
161
105
133
136
104
167
138
113
95
134
108
78
94
100
117
133
125
114
102
59
95
107
145
128
79
134
107
117
105
106
107
76
102
164
93
151
102
132
110
76
138
106
120
83
93
146
119
115
134
87
90
93
99
98
142
74
93
141
122
177
128
87
148
145
103
106
116
102
82
112
78
125
113
122
87
158
54
90
95
99
117
95
127
83
136
129
76
115
120
124
152
106
54
108
95
177
112
118
80
131
102
78
108
98
145
125
121
154
135
108
124
117
158
110
98
117
89
74
167
95
59
85
147
114
72
169
81
114
102
129
125
130
130
111
165
127
101
109
80
108
88
117
119
87
93
113
130
92
131
59
106
81
133
106
121
158
144
84
103
95
87
81
81
152
93
130
123
93
160
105
135
125
163
129
215
114
103
79
136
125
83
156
98
146
112
123
116
115
93
166
140
122
121
108
121
146
116
80
95
91
147
104
160
112
214
108
117
93
160
54
141
101
144
116
83
127
118
95
102
111
100
78
115
77
98
88
133
116
168
119
125
97
107
128
127
98
107
49
81
102
124
111
122
103
119
119
119
106
112
79
49
141
149
95
151
190
96
95
142
113
138
133
131
93
79
106
111
95
139
99
104
89
100
141
103
128
102
86
147
130
124
95
156
147
103
133
148
95
74
149
54
95
91
102
92
123
69
143
76
54
112
96
102
101
148
95
143
77
143
109
102
120
141
146
133
54
85
113
122
90
98
108
124
125
54
118
100
87
125
59
74
182
123
81
106
118
177
101
81
83
132
117
81
148
143
112
104
140
144
70
107
118
99
74
93
112
113
96
188
93
106
173
166
110
107
136
108
177
144
160
93
116
82
106
123
76
92
168
145
77
81
102
194
120
158
145
54
119
78
90
54
136
122
100
98
79
95
85
108
152
117
102
146
140
81
139
111
107
102
107
54
132
143
87
148
115
54
160
110
81
133
102
102
101
77
105
108
68
67
161
54
76
102
125
165
201
91
95
88
91
146
98
129
54
61
97
93
143
118
111
102
106
165
166
126
107
95
148
128
94
144
81
61
104
122
95
108
49
139
61
54
117
86
108
135
141
198
83
136
107
133
102
105
132
111
157
103
118
96
90
151
100
95
74
54
49
95
131
178
115
108
112
143
95
106
105
141
98
139
107
156
105
156
90
143
67
95
98
98
135
137
117
112
133
54
112
102
138
98
180
128
74
90
133
96
148
83
112
99
150
70
108
140
153
131
106
89
59
163
118
54
92
122
133
81
160
98
81
113
114
85
165
49
90
49
131
103
125
102
120
89
127
83
95
134
95
99
99
99
122
154
162
105
164
118
101
128
110
142
54
148
131
137
145
128
54
95
134
106
122
120
121
120
107
115
132
97
98
100
116
83
100
131
102
115
161
103
120
156
135
149
169
99
93
82
117
95
77
114
152
106
157
129
77
131
95
54
93
108
153
130
119
125
122
112
54
91
76
131
131
145
69
139
154
134
108
123
128
49
103
151
123
81
98
54
99
133
87
133
158
120
101
151
153
142
105
90
108
88
104
102
104
111
65
85
115
90
146
152
59
85
98
113
141
76
108
99
122
111
119
104
115
166
95
125
98
117
130
115
103
163
87
81
139
108
133
95
54
166
102
80
97
95
98
108
125
115
120
115
120
85
135
140
117
146
107
110
108
160
158
74
171
105
110
121
103
117
121
105
78
113
133
113
164
102
149
108
140
95
68
74
69
130
91
49
90
93
54
133
126
141
108
153
106
119
114
92
103
108
125
125
109
105
145
136
165
118
143
73
90
140
125
49
153
109
128
144
151
95
54
132
133
129
68
108
158
134
151
69
131
103
119
108
135
143
125
128
101
93
140
131
128
82
133
129
149
129
140
93
54
112
123
49
49
165
145
102
108
193
141
118
70
83
160
112
104
106
108
150
78
95
54
103
177
115
62
158
90
104
92
135
92
103
125
148
110
116
102
135
81
96
136
103
98
160
163
69
68
100
147
125
188
123
90
137
128
110
77
144
61
122
125
102
123
110
120
139
69
93
54
87
108
136
74
77
93
89
95
59
137
168
91
122
113
105
132
78
100
95
172
173
137
103
148
151
96
91
179
149
135
171
49
120
148
154
150
128
105
126
83
106
198
107
121
128
91
125
164
125
130
106
104
104
78
94
98
96
97
96
144
124
133
169
82
106
94
131
59
150
154
98
74
90
140
149
82
141
96
160
108
170
133
83
95
102
104
120
87
98
95
94
128
85
140
49
98
112
106
164
77
111
85
101
81
42
156
114
97
94
146
132
83
69
164
127
72
74
165
132
133
147
100
168
110
91
87
103
85
76
104
103
146
153
169
101
100
110
95
175
97
54
97
109
68
110
115
140
109
108
117
115
96
83
87
148
121
137
146
103
105
78
154
138
102
107
98
103
122
98
137
142
150
99
102
148
83
99
160
73
141
114
146
109
85
136
82
109
118
93
111
178
82
113
77
144
154
113
133
118
118
118
76
108
105
96
74
113
91
127
93
164
148
67
158
168
102
59
96
145
95
123
102
156
67
143
82
108
108
94
54
158
103
54
103
108
105
112
80
73
115
119
105
95
135
106
144
148
135
106
122
115
129
133
87
157
150
179
103
91
119
110
151
121
163
109
115
148
143
106
78
103
111
105
144
76
116
103
119
98
105
95
105
85
114
179
188
128
54
144
113
74
154
101
125
159
74
146
124
131
77
148
163
128
106
97
98
148
153
129
135
163
54
94
93
102
119
111
119
194
86
152
82
144
130
112
143
105
124
122
133
102
113
87
167
119
77
54
119
149
127
83
131
106
93
112
54
144
123
148
113
122
110
152
121
108
106
108
103
102
146
192
91
108
104
83
95
144
165
95
84
115
131
93
116
83
106
114
98
110
113
111
98
104
127
87
118
98
116
54
112
174
184
130
162
96
115
104
143
130
141
116
73
126
143
59
102
76
98
117
108
77
71
115
112
148
156
138
109
135
105
101
142
100
126
125
154
87
114
49
127
164
117
124
117
59
103
191
146
113
154
148
95
91
107
102
105
145
130
103
94
100
119
158
105
93
102
144
127
140
112
95
104
134
117
54
151
163
131
133
95
158
69
120
113
150
168
77
125
179
92
93
61
148
130
94
111
111
107
84
88
91
59
99
114
98
106
105
165
84
170
82
112
143
113
124
78
178
115
130
126
102
78
107
128
113
149
161
124
119
94
107
126
67
135
81
165
54
113
149
119
131
123
102
95
120
96
90
145
148
74
95
125
108
98
127
191
181
127
124
97
49
143
76
98
133
54
119
98
67
125
139
90
54
103
99
135
105
119
128
90
120
130
87
121
131
122
161
105
155
98
88
100
119
150
122
124
128
111
109
77
177
98
108
78
114
172
119
85
161
103
131
103
130
161
147
120
118
143
128
122
78
128
84
142
117
83
177
130
81
129
95
148
87
218
93
89
103
54
124
95
152
147
74
117
93
82
91
150
122
95
125
93
119
129
54
133
113
165
119
135
87
90
108
123
132
185
116
132
129
148
104
68
131
87
122
92
100
146
119
105
86
108
89
94
176
90
139
81
102
102
112
117
148
95
61
73
131
143
59
115
158
110
131
147
108
129
116
134
142
135
121
104
147
80
81
132
115
97
80
97
93
154
122
102
80
69
138
82
54
54
148
117
134
111
144
69
155
96
158
77
149
113
134
139
88
92
121
101
164
78
148
105
175
97
105
201
158
112
112
59
143
95
97
88
124
91
49
147
167
146
110
148
102
93
164
134
78
110
134
135
169
165
122
115
126
67
104
108
98
158
86
89
145
82
123
101
143
142
104
157
113
93
74
118
136
102
128
116
79
90
123
128
95
54
135
100
54
148
78
78
118
123
126
128
113
76
95
59
135
54
166
98
179
131
76
100
108
45
87
130
98
140
87
119
98
100
100
146
108
193
120
152
74
80
92
106
154
111
135
105
112
82
143
119
107
54
108
115
131
81
131
114
186
82
108
141
132
115
110
90
112
120
118
130
155
119
88
89
95
141
112
100
97
87
99
112
143
86
113
102
111
123
93
129
113
87
89
103
160
140
135
161
95
138
98
105
131
105
77
126
124
93
138
104
138
79
153
54
102
144
99
115
128
141
127
79
132
109
131
133
106
160
83
100
95
113
112
120
98
142
161
152
130
135
83
103
85
127
162
105
68
90
186
113
139
98
125
83
109
78
123
105
86
84
151
134
159
134
133
78
95
112
103
96
100
103
110
147
95
77
95
171
129
100
135
143
108
104
148
120
92
93
106
159
165
176
162
98
118
216
83
84
141
67
203
92
128
67
90
160
95
165
133
165
82
121
80
90
97
108
161
131
156
116
157
107
103
90
143
57
116
152
98
136
132
113
75
67
77
134
115
140
54
97
54
80
135
108
74
122
122
83
147
158
54
102
129
115
139
84
128
102
133
108
101
101
109
133
115
148
144
120
123
129
92
110
119
120
161
141
125
105
107
76
102
107
106
179
108
161
49
137
132
148
79
98
153
168
83
54
100
77
172
113
145
109
135
140
131
112
87
147
147
67
74
113
129
90
49
54
93
133
137
104
118
146
170
190
98
123
168
98
105
61
113
114
108
118
117
126
130
87
109
141
130
168
120
94
117
156
106
108
124
102
137
136
148
102
121
89
78
155
150
148
128
118
75
140
160
135
109
106
148
54
145
59
85
172
122
122
131
134
89
168
93
100
146
108
54
100
59
144
122
95
156
108
125
123
91
118
131
114
61
114
122
108
77
81
137
76
95
95
118
125
121
96
129
119
67
97
146
102
102
157
116
133
130
124
186
113
125
82
98
106
54
159
67
111
156
115
149
125
151
150
97
171
132
75
111
76
138
106
76
87
115
163
49
158
107
107
180
115
105
95
191
124
131
59
103
95
102
87
102
145
131
125
118
90
130
108
149
96
102
114
112
182
82
127
98
95
173
81
157
107
97
118
114
139
61
81
145
115
180
95
186
144
102
126
81
168
90
170
178
134
96
142
81
156
140
102
144
90
104
101
134
164
83
175
178
149
139
98
78
54
132
158
98
95
112
114
136
113
102
122
117
96
59
140
71
76
124
100
49
95
149
68
143
113
129
128
147
168
102
173
137
95
151
102
120
194
74
208
81
98
54
105
98
122
154
81
132
135
135
161
105
120
109
81
101
107
108
112
76
95
138
110
160
57
76
54
108
145
123
142
97
141
104
118
54
127
139
92
116
98
113
163
102
87
141
104
120
125
169
115
141
102
76
78
115
98
95
111
121
98
115
98
110
118
113
191
94
102
76
90
67
109
78
118
118
109
157
141
118
126
138
107
157
138
122
108
117
169
133
93
95
142
109
160
172
142
87
105
139
156
104
111
54
144
80
127
77
147
94
137
54
129
89
158
186
102
194
105
102
122
95
99
61
106
99
144
76
102
108
108
95
133
120
184
110
109
107
76
101
120
70
92
90
91
108
102
122
101
67
83
110
107
124
68
131
99
123
128
103
149
106
54
90
128
164
124
54
117
151
95
80
153
84
105
104
95
128
148
81
136
169
76
59
173
128
141
173
102
144
156
85
105
77
131
121
101
108
168
114
133
105
98
84
182
102
130
117
101
133
149
153
110
95
128
147
118
121
124
116
115
143
112
90
124
143
54
184
126
123
126
96
128
129
110
100
61
134
97
128
140
103
125
82
74
54
128
102
172
133
130
112
101
100
115
49
115
112
127
82
143
147
108
54
98
158
61
112
54
84
123
78
119
150
98
213
76
108
76
111
140
118
133
54
150
77
170
148
149
83
144
94
105
54
112
59
129
166
85
162
90
90
83
131
102
177
131
74
111
114
148
82
135
117
76
156
106
167
144
77
81
76
103
115
95
151
128
156
140
85
113
129
67
180
94
108
149
81
114
119
130
148
82
108
82
143
49
116
156
104
109
135
148
122
93
139
106
133
151
76
124
139
92
154
112
81
119
94
106
91
103
116
119
113
173
100
59
76
83
77
101
129
139
116
88
134
49
98
108
105
95
137
96
133
98
135
120
107
74
153
132
128
142
54
116
129
98
108
124
90
70
127
54
149
192
110
141
109
82
158
144
54
87
67
140
123
99
112
90
77
179
82
165
115
77
97
108
97
132
139
90
125
104
95
54
144
144
59
148
113
165
120
103
116
78
106
61
149
96
111
115
102
100
84
54
91
128
99
83
103
120
78
106
102
90
115
77
202
88
160
141
129
106
126
127
144
200
101
74
123
152
144
123
59
133
82
87
54
102
125
77
84
93
89
143
77
99
110
107
149
122
126
83
98
97
141
127
174
117
113
100
76
102
167
95
54
120
106
95
123
93
125
54
101
110
77
124
115
157
102
76
134
95
125
97
108
166
98
108
155
59
108
102
110
144
128
107
136
128
87
105
115
59
98
102
154
77
84
125
144
128
77
108
105
79
112
141
54
141
113
92
148
130
132
141
134
142
177
76
59
89
95
79
154
61
95
115
131
111
177
85
125
98
117
154
95
111
87
54
102
95
49
69
100
113
83
132
90
97
140
148
68
170
125
105
82
160
116
54
156
160
165
59
147
70
76
61
117
105
134
116
86
117
173
54
149
163
153
108
126
168
118
59
148
101
83
134
107
135
87
150
125
67
54
118
98
98
127
124
84
82
144
90
80
113
105
110
181
100
73
97
137
124
148
118
141
54
69
54
118
140
77
105
115
104
169
94
139
110
179
104
149
88
125
122
141
100
127
103
131
59
93
92
122
143
95
157
104
134
102
108
82
67
118
114
148
155
144
132
107
115
125
100
102
113
98
98
108
156
82
108
106
111
108
49
85
78
97
125
90
95
92
85
123
77
130
112
69
154
98
94
183
128
107
113
126
98
132
110
78
94
103
154
119
148
115
121
76
128
127
122
113
183
83
136
108
107
94
127
125
109
74
148
112
145
109
69
138
127
54
153
98
154
151
152
98
177
95
90
59
152
95
171
162
143
132
102
158
128
110
54
108
148
143
133
119
93
132
96
117
151
70
96
171
108
119
144
77
107
76
92
143
54
184
67
144
110
126
90
113
84
54
118
90
175
119
93
74
102
98
125
118
107
140
54
87
96
109
111
87
115
158
92
178
119
82
105
116
115
87
126
139
103
105
93
109
126
118
82
100
107
148
103
178
104
85
102
131
103
115
94
81
125
142
74
93
108
135
74
108
133
54
107
132
121
120
90
128
131
125
90
107
133
99
145
118
109
125
123
108
138
137
75
156
135
95
109
157
125
128
148
108
106
133
192
54
102
111
86
98
95
132
59
129
113
108
96
99
87
140
155
91
82
113
140
103
96
85
127
91
148
74
154
103
146
151
67
98
148
91
94
177
86
176
87
108
95
114
103
139
163
95
59
110
151
153
95
123
100
59
122
190
105
65
108
151
125
77
98
103
128
77
83
131
113
115
128
116
98
98
140
81
100
157
89
132
145
99
68
116
110
54
164
135
137
131
113
142
126
127
111
152
93
144
145
84
139
115
54
151
112
87
105
110
108
90
96
146
124
73
105
136
102
120
104
140
115
102
153
138
80
118
98
87
131
105
134
126
54
146
139
77
150
107
144
110
107
117
147
164
54
102
106
142
163
118
103
90
177
105
87
54
129
103
95
125
108
126
96
103
147
82
134
81
119
59
95
101
133
111
120
126
159
93
163
100
102
82
108
108
54
116
98
164
120
98
148
110
146
197
131
128
87
115
120
102
135
131
94
124
130
108
106
127
156
144
140
131
45
168
126
67
106
151
129
116
75
65
133
127
102
82
157
130
67
133
145
165
111
143
91
109
84
138
161
132
133
67
144
147
169
125
81
177
97
129
112
131
95
112
106
129
100
85
102
121
149
54
95
98
81
172
119
129
132
130
93
122
95
98
123
87
69
125
98
125
177
104
103
54
94
95
54
106
99
124
84
108
115
108
125
122
135
84
59
128
95
90
101
156
74
107
80
113
120
109
168
108
129
106
129
163
108
103
87
127
133
82
140
125
74
95
78
54
102
103
97
100
98
122
141
82
146
158
78
145
120
77
98
108
144
96
123
127
113
83
92
89
158
95
67
98
59
88
148
134
85
129
143
125
90
157
101
139
141
119
134
163
137
145
126
146
90
54
104
168
118
177
191
94
97
101
87
128
102
144
81
80
125
93
49
102
108
107
135
80
102
117
120
81
54
90
95
125
101
70
84
100
155
152
107
74
119
69
138
144
126
105
112
116
112
135
192
127
191
120
132
87
54
123
138
90
144
95
119
87
98
54
142
128
166
98
92
131
139
118
135
129
76
87
76
162
87
81
87
106
195
97
95
98
74
139
74
102
195
146
97
49
125
83
102
54
59
76
59
98
167
102
105
131
95
113
77
153
146
132
104
145
145
102
162
83
127
148
131
146
108
186
122
93
88
137
59
106
131
130
193
87
93
142
144
149
102
89
114
80
92
143
124
108
84
157
54
108
96
112
128
143
116
112
148
129
49
83
177
154
95
89
131
86
152
179
54
119
143
49
87
92
109
136
121
54
120
104
104
113
113
140
94
81
98
98
127
105
91
86
98
98
124
87
194
113
81
98
101
76
154
74
131
90
128
148
115
129
59
117
98
72
90
167
134
140
102
122
85
130
114
95
142
131
61
87
81
102
117
108
95
135
90
108
108
95
141
108
118
54
143
113
134
168
92
146
130
160
78
112
137
129
87
110
165
146
131
81
182
76
106
129
105
103
146
81
141
97
140
106
96
54
92
146
124
158
157
98
130
149
96
72
102
54
90
153
72
150
95
59
170
102
177
80
143
127
77
49
77
116
87
97
119
105
89
69
181
144
115
78
123
77
148
88
97
102
127
95
127
102
107
95
54
167
123
82
95
110
112
102
95
100
103
171
67
96
148
121
76
174
93
91
122
114
177
109
74
119
95
102
54
97
132
134
151
156
148
77
104
108
119
109
110
90
150
137
126
116
129
121
102
108
107
128
108
98
95
118
148
107
54
157
120
119
85
114
106
112
83
153
54
74
82
168
169
184
74
140
96
126
139
131
95
141
140
120
49
65
110
102
185
167
82
133
142
119
102
99
127
138
81
94
117
89
54
131
145
106
82
90
156
85
106
179
188
114
120
85
141
87
124
154
86
113
71
108
98
42
124
93
112
93
123
104
102
131
113
95
182
94
89
134
129
106
129
105
129
90
76
126
89
110
106
147
106
193
98
115
106
105
111
132
113
116
96
126
96
109
121
117
187
119
93
128
77
103
145
115
67
95
54
98
94
116
54
121
144
127
54
164
97
127
156
124
54
96
77
80
170
91
126
131
146
74
116
113
100
129
132
115
105
133
140
145
147
108
131
98
157
113
124
107
97
74
142
123
108
95
67
163
129
146
128
115
88
74
124
158
138
130
108
91
49
121
126
112
129
149
190
49
59
77
111
97
160
127
82
78
102
102
81
116
67
109
148
98
146
77
103
145
134
93
129
149
97
143
122
122
103
68
145
110
98
149
106
108
108
137
148
160
131
71
98
67
169
107
54
126
78
147
113
161
175
120
88
76
54
74
156
74
136
129
82
79
84
140
115
54
137
105
128
133
85
127
163
110
91
73
103
78
167
102
185
156
135
87
163
108
109
129
130
105
167
80
109
157
96
116
133
133
106
184
108
112
115
123
96
59
86
87
144
108
54
152
104
100
103
135
147
162
157
108
145
78
77
111
134
132
156
133
177
77
113
109
59
97
121
130
117
141
187
145
120
115
132
129
96
93
78
108
107
114
87
105
54
74
94
97
156
81
132
49
54
134
112
87
95
87
135
156
127
128
167
111
94
57
113
133
132
87
111
158
130
136
170
84
148
91
112
122
148
103
119
105
120
95
101
140
103
115
153
98
156
104
118
80
129
115
54
106
91
59
54
143
144
82
107
83
80
170
149
145
87
145
134
117
54
118
98
103
135
138
73
81
78
103
102
81
127
129
107
126
136
54
148
94
93
158
85
105
224
104
143
103
98
99
131
76
118
81
54
96
123
145
150
148
119
113
89
67
91
114
164
141
168
109
101
98
127
81
77
128
76
133
138
127
112
202
111
49
106
133
146
98
112
118
113
121
111
167
150
93
87
119
116
97
145
49
148
123
73
101
87
125
139
116
76
177
104
148
92
126
133
49
118
157
98
112
98
115
113
108
49
115
135
155
114
157
93
134
101
74
73
67
133
108
118
98
173
148
188
85
116
133
148
119
135
93
163
191
126
120
128
117
125
104
93
95
54
108
115
104
113
173
59
77
129
125
93
135
54
145
137
95
87
54
177
105
108
95
54
103
159
81
54
87
93
103
129
129
54
110
109
108
67
116
104
95
144
136
87
134
151
142
77
100
126
79
83
108
91
159
103
148
54
130
78
156
93
108
135
100
124
105
122
98
113
97
149
130
153
122
54
93
144
131
133
148
125
131
110
140
132
80
134
80
98
138
97
54
144
93
144
76
127
165
74
169
108
168
98
95
98
93
113
134
93
90
148
109
144
132
108
119
100
49
107
126
105
125
112
140
158
102
123
104
128
108
113
82
81
54
129
117
129
59
133
98
108
140
154
158
139
158
103
127
98
93
82
84
84
54
101
120
111
168
128
93
113
98
120
140
132
147
69
81
160
108
95
158
146
119
115
134
128
112
108
115
85
125
90
112
105
87
103
120
123
156
76
147
90
121
90
101
126
76
104
145
109
98
126
140
93
105
133
106
150
104
67
87
87
81
165
74
150
158
88
130
160
91
68
143
141
145
54
96
143
77
59
135
140
124
108
87
105
68
118
120
108
86
145
182
132
98
101
177
127
129
83
122
108
88
94
54
190
108
82
95
158
90
132
149
49
159
161
190
96
131
72
54
148
96
115
95
130
102
111
125
54
54
113
131
137
143
95
154
137
100
140
93
115
75
149
120
77
114
81
131
122
145
139
101
129
117
113
83
113
137
115
109
87
115
113
76
167
133
116
79
125
124
139
124
135
100
144
79
81
54
62
91
145
148
98
98
106
91
119
130
143
65
90
77
134
119
133
157
144
98
156
87
90
131
68
162
103
127
107
54
76
126
106
108
126
125
125
111
125
122
120
192
224
128
154
152
59
92
49
54
89
102
81
144
119
128
138
130
54
141
98
114
117
131
131
129
105
132
89
110
49
81
59
102
145
108
115
141
191
102
107
96
122
74
145
115
130
143
138
97
95
148
106
123
107
94
85
110
82
125
101
98
81
99
77
148
93
87
143
117
49
120
88
99
54
83
141
94
117
155
168
76
117
143
96
154
85
102
121
72
76
148
81
148
128
96
78
108
137
113
61
108
134
129
161
89
117
128
113
110
108
105
122
129
78
54
141
90
77
135
120
54
127
107
74
85
113
115
121
122
93
112
95
152
173
49
122
148
95
120
119
81
105
108
156
101
152
181
96
137
148
96
175
74
110
168
135
54
153
77
103
141
123
95
209
135
131
95
114
133
82
102
100
112
141
89
134
106
139
185
106
81
95
153
148
135
99
93
133
146
125
128
143
106
140
145
141
134
120
110
143
172
120
150
91
161
156
119
119
128
180
146
138
164
146
112
125
87
49
134
133
54
135
124
90
96
91
103
59
89
113
120
115
95
81
82
54
94
81
59
54
77
146
161
190
85
95
121
95
68
114
111
132
49
61
77
141
149
143
193
121
85
128
149
150
54
109
118
145
121
63
97
115
116
139
97
135
96
54
98
108
141
132
61
102
54
144
106
89
123
127
93
77
95
65
76
144
80
148
54
90
106
74
120
133
85
140
127
81
165
120
90
162
74
108
85
157
111
68
142
97
90
128
83
155
95
79
91
106
96
115
59
91
96
177
135
155
146
106
106
125
145
114
81
148
100
93
87
95
87
100
128
134
54
150
162
67
128
135
99
91
81
129
93
135
142
156
109
83
49
149
87
105
54
113
129
156
135
141
100
119
123
113
125
85
99
135
142
134
135
165
116
144
119
108
54
112
114
102
148
49
128
124
128
105
135
98
139
112
129
102
138
54
119
156
90
71
67
82
95
125
145
123
105
116
139
105
115
148
120
85
149
90
84
135
144
146
67
107
116
115
145
168
102
125
133
109
136
143
161
102
110
106
87
143
102
150
132
125
144
102
103
85
93
177
117
98
119
54
152
125
131
135
105
100
123
116
78
82
129
135
107
146
76
127
108
94
99
107
113
147
139
139
99
103
128
111
194
114
125
158
67
132
127
165
54
215
146
103
105
115
104
141
142
94
90
95
125
105
199
90
68
98
83
127
74
125
76
108
49
73
90
123
107
85
155
133
61
135
144
89
86
141
144
148
120
125
146
105
107
94
153
85
74
128
150
103
142
95
149
158
128
54
102
130
68
131
115
123
117
143
132
121
120
93
102
151
106
108
77
91
163
90
109
100
148
163
108
65
98
108
67
54
115
155
129
126
108
153
156
92
54
125
96
67
103
140
84
118
237
102
135
155
83
112
133
54
105
101
129
97
125
95
100
139
95
102
76
78
96
122
91
118
82
151
116
118
140
61
83
95
107
49
165
101
131
125
101
118
130
118
156
85
108
105
91
136
129
152
87
180
98
148
104
115
143
140
131
122
96
101
122
61
87
112
109
103
106
134
124
91
144
138
143
54
49
105
125
218
164
61
130
100
146
59
76
151
135
107
130
116
86
180
108
107
148
133
108
98
97
125
134
127
125
102
54
156
98
105
148
116
105
121
124
100
108
95
107
141
103
160
98
59
105
104
94
119
98
84
114
139
83
126
143
83
87
92
106
148
168
147
121
174
135
105
108
139
68
108
102
128
135
136
87
49
105
140
125
95
102
98
127
147
145
76
97
146
75
59
132
81
80
138
98
135
133
110
88
95
98
144
125
112
107
77
153
80
142
113
107
126
158
65
81
118
125
110
78
114
73
54
112
54
87
144
112
109
122
160
95
136
95
100
156
128
74
115
156
82
106
149
102
177
80
106
129
135
98
104
125
108
178
108
148
91
93
102
96
177
135
115
77
158
98
138
118
90
69
90
145
102
164
152
104
97
112
123
54
100
105
140
127
192
126
108
115
158
110
108
102
153
59
49
98
87
125
120
98
89
87
94
96
150
118
100
102
106
105
142
125
132
160
113
61
108
121
129
49
108
101
129
124
139
92
54
134
103
145
91
81
87
130
82
132
107
108
108
135
122
95
127
172
69
81
165
107
146
129
145
134
108
120
107
160
86
95
74
110
117
120
139
148
138
138
88
135
124
176
76
96
109
128
106
80
54
148
103
162
167
92
110
141
49
124
73
116
102
127
102
83
135
113
112
144
103
135
95
188
95
136
77
135
73
135
155
95
125
141
100
113
91
77
116
123
93
144
161
128
120
98
131
90
91
99
125
103
54
76
99
102
149
54
110
87
131
102
119
111
127
102
77
95
108
123
102
134
137
102
103
125
105
141
152
142
90
148
137
120
130
98
106
103
77
141
133
110
154
90
119
149
83
117
112
102
84
138
148
89
124
103
87
79
76
128
141
139
103
98
124
128
61
84
97
85
147
176
106
88
108
119
149
108
123
91
109
83
101
102
111
91
177
143
98
77
103
160
145
121
150
133
140
133
125
132
98
110
177
59
146
120
128
171
98
105
128
77
54
97
129
106
91
92
72
122
107
123
119
109
128
87
111
126
100
95
102
110
54
93
67
98
167
113
138
131
163
200
167
84
117
123
174
114
122
158
115
82
145
133
94
155
94
111
188
89
102
161
98
129
114
95
54
85
59
141
146
108
86
61
96
105
74
133
108
102
133
54
95
85
45
82
163
74
54
133
107
112
141
101
145
98
91
141
54
87
71
67
103
116
138
124
152
101
113
97
113
138
146
97
218
138
120
125
125
139
122
132
108
145
137
74
73
121
126
54
158
80
103
102
126
81
138
148
140
90
102
125
89
98
106
161
108
96
127
119
124
131
116
143
118
113
78
75
99
78
122
108
146
69
76
119
141
128
93
90
149
116
138
144
69
147
110
124
101
97
127
99
128
155
105
77
67
148
131
175
133
124
165
166
118
150
49
95
93
164
158
98
100
74
98
124
83
152
103
148
133
190
106
76
112
106
124
115
145
108
148
142
148
98
127
135
166
103
144
74
108
81
169
157
120
102
77
54
96
148
158
102
118
54
92
93
142
95
131
159
91
139
131
137
90
113
83
146
78
152
140
105
118
87
54
102
119
84
95
146
97
131
82
77
144
98
95
96
76
125
147
54
113
129
103
146
133
97
100
127
143
120
131
106
258
124
102
136
115
86
101
129
90
172
154
148
121
112
145
147
99
141
110
122
130
165
54
146
113
102
124
124
108
133
122
129
148
122
138
133
96
108
108
118
118
98
117
112
109
95
95
134
82
67
103
141
131
158
122
136
127
110
128
143
59
133
128
54
115
54
118
163
87
156
111
112
148
101
131
49
98
69
54
122
90
110
126
139
133
126
156
99
108
59
135
128
102
194
54
124
97
198
95
113
102
102
78
145
110
95
101
103
87
91
135
129
120
118
110
102
117
103
98
81
108
148
93
87
139
107
152
119
173
161
123
194
148
152
105
139
141
102
112
120
141
98
74
100
105
67
142
98
74
118
123
94
132
123
49
128
116
132
80
91
99
148
96
113
83
113
98
111
129
93
134
135
143
170
115
165
115
119
106
119
122
54
129
85
122
77
124
92
90
159
121
144
127
145
148
141
147
138
92
126
188
93
107
133
131
107
54
135
67
100
99
121
81
76
86
69
135
125
146
105
102
90
158
122
133
148
74
158
113
135
103
80
110
118
180
120
110
128
112
118
144
111
115
81
109
103
87
108
123
132
158
101
148
104
71
105
97
77
125
81
104
147
126
148
85
102
93
101
170
148
158
129
84
90
163
102
133
74
117
121
108
83
114
132
131
80
119
73
123
124
113
146
54
111
145
103
103
98
49
133
74
162
143
128
108
146
103
127
137
138
130
128
82
103
102
109
144
150
165
102
131
143
92
153
54
169
105
144
108
92
97
67
83
103
156
124
147
133
144
148
155
49
113
108
85
122
107
133
123
74
81
90
133
113
128
138
95
103
95
81
81
112
140
102
111
108
93
101
90
149
117
158
96
102
119
110
107
95
110
133
149
146
165
120
82
108
83
95
123
125
95
98
107
168
132
95
135
102
102
95
67
98
104
142
131
98
107
204
131
131
98
78
161
145
97
106
103
118
103
90
105
81
122
120
89
74
81
116
111
140
94
151
115
114
123
95
134
132
135
148
129
135
105
129
126
188
130
132
108
115
113
87
98
49
95
113
119
124
69
93
138
74
93
110
81
98
122
104
131
59
97
99
144
80
135
80
78
89
111
132
139
113
113
173
146
87
102
143
74
143
86
106
125
98
54
96
156
97
104
99
123
81
146
54
153
108
131
123
119
128
90
107
136
103
93
105
81
90
107
86
74
123
107
98
95
103
93
164
135
103
77
139
54
83
117
154
113
143
161
96
120
80
102
112
125
77
109
154
81
159
145
134
98
106
95
114
148
76
73
149
86
147
93
61
143
133
124
67
156
118
92
135
74
108
77
110
122
128
120
78
153
124
68
110
74
140
109
103
76
157
131
180
102
138
123
135
128
123
116
183
108
119
138
137
99
96
128
114
97
119
116
114
191
112
127
135
97
98
112
148
110
112
113
143
95
141
122
103
133
120
116
125
130
136
136
97
59
81
148
106
130
101
88
104
143
78
99
131
127
82
140
122
128
105
132
74
105
109
103
177
139
107
116
125
131
125
103
155
177
98
83
102
111
103
76
74
125
95
123
171
127
142
77
194
128
131
74
113
59
108
129
94
151
84
100
108
109
84
98
129
105
131
123
125
141
110
84
97
133
128
107
102
139
147
108
74
74
151
96
79
130
132
82
103
101
92
105
61
119
131
171
118
114
81
130
108
108
124
65
114
70
127
98
133
102
49
110
131
125
103
180
93
104
108
119
92
98
89
59
108
139
129
127
87
110
117
101
99
147
143
94
112
119
83
106
105
54
126
54
93
127
54
95
117
83
132
108
133
129
101
81
115
131
91
105
144
91
108
87
177
110
103
84
68
100
102
103
113
157
54
115
98
97
100
96
148
90
110
135
59
98
154
42
106
128
157
156
102
133
139
102
65
95
137
109
118
128
156
83
81
59
65
100
141
96
157
148
99
101
162
118
167
146
125
122
135
153
80
76
117
179
104
71
153
145
133
117
114
133
161
158
86
154
67
160
93
95
111
108
83
139
108
113
109
102
190
109
81
126
109
107
118
49
113
89
125
130
128
145
83
145
143
138
141
87
85
93
128
128
144
49
92
141
103
162
143
85
78
170
117
82
85
98
87
172
120
103
110
174
160
138
77
117
163
125
120
86
107
92
164
115
159
120
156
98
118
141
89
100
150
107
144
129
133
115
133
164
67
125
86
129
110
112
153
158
92
97
113
180
134
135
137
105
115
181
148
120
117
158
130
133
76
96
54
59
125
91
134
74
77
81
108
103
150
85
54
102
108
133
106
134
112
108
68
100
87
98
94
78
127
87
90
122
108
76
120
83
54
135
158
100
166
166
131
123
95
143
140
80
124
96
128
106
129
97
177
132
143
120
108
98
125
99
87
128
125
127
119
150
96
146
111
149
144
159
87
84
165
77
98
183
90
97
100
109
120
98
117
166
138
108
135
83
158
169
74
93
108
125
110
143
128
109
81
166
118
129
100
114
127
104
126
144
103
68
140
59
140
54
67
167
140
106
95
122
100
54
137
59
146
111
102
125
81
105
133
147
112
68
108
107
82
148
85
112
135
131
84
122
102
235
156
147
123
140
102
143
108
93
147
102
132
108
122
88
95
113
95
146
135
77
102
148
82
49
138
110
131
138
149
125
102
131
105
151
80
127
106
102
137
150
83
92
116
85
104
131
161
133
102
97
147
125
113
146
133
81
108
108
186
128
123
134
90
147
54
115
80
108
94
165
164
98
125
113
54
177
115
136
98
98
105
86
139
95
82
78
106
95
134
123
103
76
130
145
137
162
107
130
160
115
135
142
98
119
82
87
144
132
121
80
86
103
98
82
104
97
112
133
111
137
151
108
82
129
126
131
90
59
125
105
148
145
169
76
113
144
126
133
106
109
92
208
140
129
113
83
86
99
131
59
131
156
136
113
144
109
117
97
122
97
54
190
78
118
110
103
153
54
143
158
128
146
111
108
120
96
81
87
105
131
101
132
67
133
102
125
169
133
82
115
144
129
108
92
87
54
108
166
108
114
95
102
119
125
148
106
90
143
114
148
144
137
99
89
78
135
54
54
127
108
91
148
177
138
123
143
95
107
105
74
95
122
149
99
124
128
130
108
98
81
140
107
135
87
120
86
163
103
54
156
150
124
70
83
54
115
93
105
106
141
145
200
49
112
95
134
99
87
148
113
103
74
148
107
87
110
108
125
185
155
123
71
76
74
85
108
149
88
92
117
100
115
97
106
147
81
149
103
145
133
114
180
117
118
115
113
131
102
131
80
158
93
95
127
108
149
120
91
148
146
172
142
54
125
110
141
192
131
169
89
150
141
96
98
113
49
77
118
102
144
117
120
123
112
69
83
109
186
131
114
93
165
147
59
103
72
141
130
127
117
119
139
77
82
96
93
54
123
111
98
120
54
137
153
124
82
98
113
146
137
112
152
101
87
98
109
102
113
118
124
148
162
87
120
99
129
113
68
134
130
116
142
102
74
96
76
103
93
81
121
124
113
125
119
95
123
102
105
130
154
82
151
102
128
67
218
131
127
94
94
95
91
98
130
133
101
124
106
82
91
152
131
120
120
82
181
104
54
76
111
108
147
131
102
105
103
98
144
80
177
78
146
80
98
88
110
139
130
78
131
115
92
68
132
140
49
104
160
107
131
106
81
97
115
95
103
74
145
128
92
112
112
89
112
150
128
78
122
114
182
118
101
138
95
143
185
95
125
132
113
135
133
93
108
49
84
102
74
108
158
91
125
95
59
68
131
130
119
125
93
156
81
110
100
181
96
132
145
120
54
126
94
106
158
145
139
105
93
135
98
119
132
100
54
172
140
102
100
148
131
90
134
59
105
169
114
121
54
104
126
154
59
161
116
144
177
122
113
113
122
94
113
146
89
123
163
119
118
145
87
111
76
115
139
110
97
118
125
109
133
99
107
146
124
77
134
105
92
158
120
109
131
90
165
140
128
90
143
157
142
115
130
102
118
101
135
143
97
54
125
104
142
117
154
143
95
181
79
122
83
109
97
128
135
105
135
67
148
128
108
128
119
97
131
95
140
134
81
54
109
129
139
129
90
103
112
105
125
131
116
104
49
122
49
54
103
108
151
147
86
131
131
124
163
87
126
107
126
123
100
121
122
133
92
121
113
145
159
137
119
109
103
116
79
102
158
97
125
97
111
129
171
128
157
158
141
160
167
125
133
81
139
131
136
120
177
131
111
80
174
135
100
125
81
98
147
143
150
132
93
133
115
118
103
127
105
126
128
89
118
122
114
115
142
103
103
108
78
108
68
109
91
49
113
80
106
111
127
131
149
114
154
107
194
165
69
135
119
102
88
128
114
140
108
138
98
120
99
123
127
152
125
112
103
141
125
54
115
104
98
95
198
98
125
93
88
135
102
134
105
145
146
99
95
115
113
105
91
89
78
118
115
105
115
112
93
115
110
135
111
108
99
117
120
132
95
105
67
109
59
146
158
82
110
111
149
98
124
77
141
122
115
111
135
155
108
82
119
123
117
151
133
54
100
106
125
125
134
91
113
130
77
138
127
153
116
125
105
129
96
103
105
91
105
100
131
143
125
158
179
153
86
108
123
119
81
140
144
94
121
139
113
141
95
133
74
101
95
112
124
135
127
112
106
108
123
83
143
61
94
166
102
101
115
139
74
127
183
74
148
154
102
95
125
132
129
92
78
118
155
59
100
115
82
113
143
86
143
152
148
124
90
49
91
108
90
150
148
192
129
143
59
161
146
76
54
131
109
116
141
120
103
118
117
131
118
216
146
131
152
76
102
104
54
157
128
144
193
146
160
96
67
133
110
104
115
144
121
133
116
78
140
119
103
142
81
103
177
133
128
163
97
90
90
131
105
78
108
122
159
59
148
129
136
157
110
104
97
152
116
134
90
93
154
80
146
124
107
142
107
126
82
108
116
122
78
172
54
113
102
102
82
149
115
80
100
120
139
131
84
133
139
95
140
92
129
76
144
157
102
101
82
125
98
81
54
92
59
81
127
160
81
54
107
108
69
54
102
131
49
103
134
85
83
168
96
160
104
102
122
135
145
104
126
113
96
93
147
152
185
130
139
130
76
67
111
97
102
105
81
98
104
102
103
91
135
127
103
117
120
95
157
123
123
148
78
108
123
125
62
88
148
142
156
109
170
142
108
118
143
54
74
155
54
110
109
154
54
133
98
96
144
93
74
113
118
95
156
102
68
84
159
115
153
54
123
102
143
85
54
114
116
106
116
177
93
134
54
109
54
151
107
121
103
82
108
124
133
99
103
77
94
135
165
103
126
106
140
101
84
107
108
102
125
93
98
59
125
118
115
68
136
85
139
128
175
150
94
149
103
85
155
68
137
104
125
150
98
123
148
118
144
130
120
113
108
84
81
204
110
128
127
108
83
95
119
195
164
146
102
84
124
142
102
107
115
97
113
177
161
101
113
108
95
127
108
134
108
115
170
61
167
118
124
128
130
142
126
118
98
135
129
151
54
197
120
136
127
115
98
120
116
118
106
117
115
113
93
135
59
112
155
92
139
109
98
107
104
82
125
54
90
150
114
177
177
128
77
49
54
88
102
98
127
134
127
74
90
102
120
143
79
110
113
108
67
103
142
49
115
105
116
101
144
78
164
103
173
150
149
138
98
112
125
136
108
119
121
151
127
147
96
102
136
135
150
157
93
128
96
110
95
140
163
129
133
149
124
167
99
132
151
125
76
127
149
106
108
131
116
144
167
139
120
114
126
135
68
61
125
117
107
114
102
185
135
106
129
144
102
184
103
155
179
96
54
94
87
138
103
158
98
135
150
102
166
94
69
125
77
108
113
131
82
120
139
81
141
123
122
131
144
96
108
105
117
125
99
101
115
144
102
96
95
118
129
106
80
168
180
151
131
122
98
105
160
149
95
83
135
54
76
156
95
81
99
179
96
49
90
134
95
102
92
102
79
137
135
121
111
135
61
98
79
83
113
155
105
135
112
103
148
131
108
95
112
118
107
148
165
85
103
90
123
128
100
104
116
108
86
67
100
93
121
132
144
145
98
98
114
158
59
113
150
82
105
106
83
140
128
76
140
102
91
98
95
67
84
179
131
186
126
135
85
108
118
54
148
144
116
108
101
172
126
102
149
97
107
121
131
96
108
125
119
101
49
68
145
115
105
135
78
83
98
74
105
49
102
141
104
102
97
146
102
106
159
110
180
150
114
169
124
172
153
99
119
102
87
159
120
114
101
167
129
90
155
98
132
102
126
143
128
76
170
129
59
132
102
173
157
117
95
197
96
113
120
89
99
127
151
54
76
122
54
108
156
99
135
144
124
143
74
133
98
108
191
140
143
127
83
102
143
112
128
139
110
98
140
157
104
128
106
78
89
131
103
140
149
131
54
125
103
70
113
107
145
98
144
120
82
119
125
103
87
98
108
150
103
105
131
95
102
125
159
131
137
108
128
89
103
185
95
145
74
124
99
103
140
123
76
122
134
108
118
101
74
127
106
83
83
119
135
103
122
107
105
115
95
116
120
125
161
107
145
94
92
106
103
105
141
138
83
59
184
115
106
148
120
127
145
103
103
158
135
59
172
83
61
134
141
133
143
74
74
128
81
124
78
114
107
49
119
113
124
74
117
76
91
83
88
148
88
103
70
104
98
135
81
108
129
128
97
129
127
174
106
113
109
93
107
95
152
107
177
98
94
191
84
116
76
81
140
95
114
91
138
108
114
101
100
121
145
147
118
105
152
101
165
142
137
95
128
143
103
95
170
108
119
131
125
132
54
108
106
103
155
141
95
157
100
134
101
139
112
127
103
87
116
107
102
91
102
121
152
102
49
74
120
146
98
90
102
85
77
132
106
68
65
104
91
124
140
158
116
109
105
97
104
54
172
125
153
127
120
59
107
86
101
126
120
108
111
117
129
82
145
112
106
123
112
101
90
98
146
101
131
122
128
143
199
100
87
131
92
152
108
93
165
118
159
104
76
93
73
146
125
54
110
131
147
119
83
87
129
125
108
140
82
87
74
95
130
190
82
92
87
119
102
128
61
128
143
143
87
122
138
180
100
155
170
125
150
153
116
98
97
116
79
105
127
106
110
139
147
108
100
148
90
125
104
164
120
134
101
133
102
100
102
90
77
95
165
107
109
79
102
154
118
99
94
90
94
98
98
94
90
165
127
96
105
85
137
133
102
133
108
95
142
158
54
100
146
148
125
119
150
122
122
102
104
102
126
117
93
113
120
109
123
91
102
127
118
115
95
94
95
111
74
143
90
118
124
81
102
127
74
78
97
133
87
159
68
102
103
118
108
159
82
132
95
54
67
85
129
97
113
134
102
87
162
135
54
168
131
169
98
147
202
95
124
105
54
165
131
122
140
83
95
118
73
141
81
135
103
137
120
130
108
133
103
91
141
96
114
136
83
98
120
54
122
234
128
105
95
156
114
96
92
115
156
74
115
138
167
142
109
127
145
91
125
103
102
102
119
74
95
129
113
83
177
67
112
190
110
122
103
138
116
101
112
142
112
148
129
145
122
136
127
82
78
81
95
142
108
81
114
108
103
145
108
89
207
103
109
130
127
144
109
87
107
83
100
94
183
99
78
125
77
142
127
125
154
95
124
174
156
109
74
99
74
133
59
91
108
108
137
145
81
163
108
120
84
110
112
102
172
150
150
108
179
153
124
141
159
73
98
111
91
147
131
133
108
148
98
99
85
93
102
70
115
106
125
98
113
127
49
98
102
87
88
143
180
102
82
92
81
120
121
130
95
123
69
88
54
220
194
138
113
59
139
132
95
95
158
177
137
90
109
167
158
147
121
54
67
131
116
95
168
91
93
74
131
135
99
167
49
140
76
107
103
148
117
110
54
95
76
125
77
144
122
113
92
117
102
123
142
54
97
108
123
167
98
106
166
120
146
49
159
163
96
132
177
177
118
111
164
105
74
106
95
96
111
74
83
169
162
104
114
91
74
88
119
115
149
177
77
131
104
108
139
112
99
92
74
102
78
115
87
127
134
125
129
188
120
54
142
74
108
149
105
110
143
67
91
93
128
140
139
154
121
130
167
109
78
143
129
102
153
54
94
116
108
117
124
78
173
146
83
83
143
108
95
120
77
45
109
131
128
154
158
86
135
129
124
59
101
130
164
123
95
100
100
107
76
81
81
135
123
139
98
130
122
112
91
69
118
123
136
143
114
156
96
114
127
102
153
177
102
100
123
117
95
131
178
49
165
88
54
110
83
126
124
118
108
81
140
68
76
105
117
107
111
105
138
135
123
95
102
77
177
93
122
102
161
106
113
69
161
153
116
135
142
120
194
146
127
160
145
108
157
154
113
82
106
106
75
195
104
96
78
54
135
131
98
103
164
119
140
143
138
167
54
160
126
133
109
83
134
97
126
115
137
107
106
82
91
122
81
113
114
190
108
148
103
122
124
76
162
103
125
93
112
54
104
61
98
101
95
99
81
161
112
108
110
132
159
111
136
131
54
85
79
84
143
87
111
106
80
105
173
124
103
125
96
122
115
78
200
191
118
131
94
97
160
109
98
95
150
99
124
151
111
124
150
118
112
133
98
110
150
91
102
102
54
117
149
74
147
108
158
96
135
117
112
92
77
114
95
102
94
95
132
129
101
138
77
131
94
150
124
78
163
124
78
120
123
179
80
92
143
118
122
122
93
133
54
122
59
137
73
85
106
129
143
102
77
129
119
127
76
59
103
130
107
114
136
134
119
67
165
148
94
93
133
139
164
131
147
148
158
61
98
83
168
89
108
87
96
78
108
122
136
148
117
131
113
92
141
54
173
93
107
138
119
108
138
165
76
178
131
77
102
146
136
109
113
103
167
149
109
177
85
87
82
123
54
98
156
54
83
165
130
142
120
128
95
132
163
91
100
86
162
101
87
110
157
113
198
124
95
97
83
114
120
180
107
87
77
105
141
113
163
107
125
117
103
110
140
145
74
99
82
114
129
54
149
144
81
99
126
76
102
90
154
91
102
138
77
126
149
130
97
201
135
130
112
98
97
87
123
170
95
93
109
108
106
82
149
105
98
78
124
105
95
99
185
80
140
102
110
71
100
108
147
76
109
127
143
129
103
97
115
76
171
74
104
76
99
109
108
110
81
95
106
128
61
107
111
129
98
95
122
106
90
147
93
82
98
120
128
155
119
99
154
133
173
135
167
125
97
112
95
123
115
117
84
125
116
148
137
83
120
110
131
138
125
100
112
134
95
120
93
109
103
117
160
59
90
177
139
168
143
81
112
68
118
59
82
136
177
149
158
138
108
153
95
86
126
102
144
110
168
114
114
109
101
121
152
93
114
99
152
102
125
161
159
122
80
103
108
103
108
82
81
106
77
102
108
185
119
71
91
90
76
69
110
106
105
122
84
76
118
119
148
163
113
119
70
96
165
161
166
133
96
87
143
97
140
76
103
151
134
103
78
158
130
120
130
90
95
88
120
110
136
100
119
106
135
118
81
103
98
141
157
168
117
161
107
168
131
150
54
93
108
112
143
98
98
131
178
54
49
136
78
150
129
106
103
138
78
102
152
120
91
94
102
154
144
115
99
118
117
85
69
191
85
139
140
125
95
191
115
95
155
155
153
93
135
134
98
136
93
115
87
86
145
112
148
174
120
91
127
132
130
111
156
137
111
176
140
148
132
115
110
125
127
128
121
126
172
121
144
166
168
81
169
78
155
100
93
94
125
158
172
135
102
81
115
125
160
54
104
166
124
54
112
125
148
117
160
102
54
102
133
149
102
143
100
137
114
130
98
95
125
97
151
135
129
148
122
131
106
126
138
127
103
110
74
155
131
118
156
90
105
122
150
61
113
122
54
129
102
93
98
148
102
112
145
114
150
165
136
96
81
54
144
140
135
93
110
106
77
98
162
103
135
161
49
79
141
136
54
86
83
110
117
59
95
130
116
104
99
142
107
140
204
133
121
123
138
108
87
151
94
107
158
156
105
118
93
98
85
118
136
142
131
157
127
125
85
118
112
92
143
166
133
108
157
54
96
54
122
54
77
108
148
168
95
148
97
102
167
163
151
54
161
148
122
59
119
131
109
126
128
114
95
180
120
135
110
94
157
125
95
86
81
179
111
85
76
95
113
142
112
128
121
89
78
127
107
131
105
82
118
95
54
77
126
59
103
89
128
115
54
59
77
54
107
93
93
119
78
103
120
128
125
139
135
159
77
161
132
147
158
128
98
116
107
116
112
135
54
160
140
133
112
91
144
145
138
89
105
172
161
95
82
88
121
129
115
76
148
229
95
113
85
141
49
167
104
98
54
127
151
229
112
155
135
49
167
121
163
90
104
147
106
77
132
54
151
112
93
132
123
99
149
142
111
113
102
147
152
92
95
136
122
157
171
77
105
101
81
77
139
136
98
129
96
105
98
90
88
49
155
138
99
74
102
77
162
81
119
131
127
119
81
107
103
101
142
101
102
171
136
91
128
90
111
105
54
102
95
168
134
118
137
140
117
109
145
145
76
137
108
103
146
111
91
98
137
143
49
115
108
146
123
95
101
129
100
92
87
161
98
106
184
78
54
107
59
93
49
133
102
113
123
78
131
98
123
49
49
81
127
87
100
101
141
158
148
177
102
49
49
85
122
100
119
111
143
95
113
133
95
177
106
129
62
125
143
109
77
81
132
138
166
194
103
91
131
98
115
178
126
78
113
67
106
155
114
98
111
143
70
158
144
142
113
141
77
95
132
100
150
54
75
124
81
78
107
119
102
98
124
143
99
54
138
145
83
113
153
117
91
127
74
148
126
103
141
113
70
144
147
158
150
67
131
152
110
151
122
120
94
120
111
85
167
138
130
101
106
82
158
124
135
107
98
132
96
109
152
95
78
105
135
155
113
108
101
135
135
76
148
77
76
196
135
74
125
132
142
97
82
123
124
129
110
82
116
54
130
119
123
90
98
159
140
104
110
123
108
122
119
102
94
145
108
102
125
127
148
148
90
152
142
142
89
103
139
109
96
151
148
110
92
54
143
104
83
140
67
127
119
168
131
104
133
81
113
99
74
124
140
127
148
146
103
99
150
103
120
87
114
100
106
95
77
75
82
98
101
106
59
77
145
54
110
113
49
132
98
89
128
103
93
78
138
113
107
81
108
105
127
95
103
106
96
102
107
118
116
92
112
147
144
105
132
98
109
99
108
153
68
123
91
95
106
102
150
68
126
132
149
126
127
113
145
148
150
82
132
116
121
98
100
81
158
105
105
109
103
122
103
96
149
137
82
144
125
155
110
114
165
164
115
93
112
136
101
90
95
96
159
132
116
149
157
143
95
140
102
59
115
105
150
125
124
134
177
164
103
132
108
104
103
94
141
116
101
152
124
102
115
120
135
92
134
78
106
81
100
96
196
88
151
130
74
148
128
82
125
106
144
184
177
96
91
137
81
98
102
102
54
100
145
82
91
117
137
151
153
138
115
128
108
158
128
108
94
77
113
103
132
98
200
114
92
105
87
82
148
108
148
154
73
123
134
103
104
166
103
124
133
49
128
78
49
130
114
104
200
94
103
157
68
113
186
120
136
107
81
74
113
128
88
90
139
134
158
96
129
131
132
133
76
103
59
95
117
113
54
59
103
78
133
123
116
130
125
110
148
133
124
99
133
85
69
108
81
124
114
59
80
164
94
77
77
116
93
139
158
169
49
112
93
78
138
131
102
138
119
202
98
109
126
118
137
96
123
148
102
102
128
114
140
111
135
54
92
128
112
121
93
129
135
125
138
116
95
98
109
136
119
104
90
96
77
131
72
98
132
120
151
124
108
127
108
116
76
92
93
135
108
95
149
102
67
69
159
87
158
149
94
148
127
112
110
54
133
94
139
108
153
163
107
131
134
139
110
120
106
77
120
74
151
125
123
148
140
78
90
159
98
152
95
188
92
119
109
95
135
82
99
107
54
125
81
78
159
77
155
78
105
146
143
143
149
129
129
80
128
155
54
54
108
111
118
98
78
81
140
74
109
74
124
101
126
160
90
110
105
116
101
104
140
92
200
95
207
103
127
105
114
90
161
79
76
102
90
103
96
74
91
146
109
118
99
107
138
131
98
133
143
147
134
155
115
90
95
95
130
184
139
124
98
97
49
176
168
124
169
134
133
84
143
49
141
74
96
131
118
125
108
132
131
127
108
164
99
98
97
106
74
73
138
153
129
133
67
143
135
99
100
125
139
103
96
118
147
110
143
122
102
122
83
134
107
144
100
130
145
128
54
170
92
138
84
133
186
124
168
80
154
87
143
152
104
125
115
113
95
83
193
157
95
122
107
180
77
150
87
90
154
148
93
116
137
135
106
131
111
129
113
108
127
165
157
102
160
77
127
133
106
108
168
103
112
135
97
54
95
131
95
128
87
108
100
81
113
103
155
130
120
71
173
102
82
96
80
123
78
54
94
131
127
97
103
123
49
148
59
74
161
122
118
96
125
95
143
95
105
87
84
76
111
132
123
104
104
126
161
114
92
102
97
100
152
77
87
116
133
157
106
93
104
85
129
129
54
133
124
93
101
139
98
140
196
156
92
154
120
95
149
177
104
145
97
105
112
182
104
151
54
159
98
96
102
98
128
54
80
103
114
130
89
127
169
141
102
119
103
127
139
103
54
98
128
177
128
131
81
136
49
155
201
78
115
138
180
124
170
125
164
86
127
146
147
128
133
148
135
130
163
99
91
110
139
132
76
76
140
99
118
125
137
110
102
107
93
127
90
108
105
138
157
108
54
112
130
138
126
99
136
112
95
108
158
124
105
116
90
101
108
106
144
49
93
114
129
133
88
95
143
76
133
180
177
108
145
88
179
98
80
96
145
109
145
93
54
183
98
133
128
146
54
81
163
94
152
124
102
102
139
98
179
133
124
68
87
131
54
98
103
68
90
54
115
87
106
147
82
166
155
148
108
106
105
182
89
98
77
82
69
94
132
107
102
81
113
98
165
106
49
172
159
158
59
136
150
76
149
94
82
98
123
49
106
95
93
128
85
137
96
130
140
102
127
75
103
151
108
97
103
94
150
131
49
138
104
121
169
87
96
135
113
114
177
98
114
127
149
95
145
125
129
120
95
131
136
98
123
115
74
124
54
108
107
143
129
148
113
95
77
54
148
96
78
81
96
102
83
104
120
132
113
95
107
54
59
81
105
87
128
114
97
118
127
156
141
95
62
116
103
151
103
82
114
68
131
78
102
95
186
176
113
145
103
76
113
95
143
103
201
128
103
97
103
154
175
103
98
127
93
148
156
78
109
92
196
129
119
77
128
149
118
119
157
154
104
104
108
96
87
108
144
88
102
130
97
107
95
54
109
176
103
128
162
160
106
134
95
119
92
76
134
102
102
102
123
125
139
59
105
97
132
89
108
126
95
108
119
54
118
140
178
117
117
124
114
54
106
95
77
135
128
177
129
83
95
142
120
122
151
106
103
136
73
69
115
84
123
122
98
95
106
104
111
112
80
95
67
134
156
124
59
108
67
109
54
116
147
130
190
108
155
92
141
130
82
54
150
90
104
115
112
138
114
149
96
112
135
124
92
140
81
74
144
152
79
103
91
78
104
131
113
91
114
129
125
125
161
154
156
136
186
132
113
98
105
128
95
134
135
95
125
168
125
74
148
112
89
118
104
91
150
147
133
77
90
87
95
106
183
54
87
100
110
110
148
119
102
113
81
106
93
93
97
115
54
156
68
120
135
101
127
100
99
194
101
131
125
113
132
150
73
93
160
102
126
84
107
102
113
135
81
97
123
93
134
98
98
91
127
169
197
83
119
169
135
90
158
127
108
148
138
103
116
118
122
111
122
105
130
144
76
120
172
108
105
139
211
131
49
128
141
113
76
125
101
120
103
113
126
112
151
118
106
186
116
105
82
163
102
122
153
77
113
145
90
224
109
146
154
126
118
74
206
130
143
208
110
102
105
129
117
101
96
148
159
138
95
91
153
116
100
83
103
54
80
101
85
131
111
95
146
97
125
147
106
94
101
127
113
102
146
74
131
126
159
115
133
106
164
143
122
116
122
59
77
79
124
156
67
95
121
147
116
87
144
145
124
97
93
135
133
151
120
116
102
163
119
158
139
102
74
133
135
95
54
112
105
88
124
100
106
140
54
143
128
96
111
102
129
128
180
91
67
133
129
145
113
98
142
108
123
135
126
122
86
133
94
115
108
144
144
161
49
102
149
102
105
91
106
129
117
104
125
121
104
143
108
163
107
54
79
134
118
143
113
54
126
124
91
104
102
130
81
134
87
132
81
116
102
95
79
135
133
90
73
113
137
118
138
138
157
99
141
153
120
120
70
122
89
78
109
93
95
98
97
147
102
82
103
61
67
97
125
91
78
132
105
95
126
87
80
126
144
92
189
119
131
133
106
87
144
95
54
119
108
153
54
115
127
139
110
103
131
125
169
141
162
118
103
92
168
54
106
171
137
144
112
81
146
200
160
146
112
98
103
116
157
74
178
125
164
120
95
81
122
156
128
133
87
106
95
167
76
97
69
116
101
142
67
148
119
54
102
120
87
141
105
77
135
122
161
98
149
133
99
140
158
128
113
49
139
113
144
127
107
130
77
140
81
105
103
101
95
102
83
102
142
133
128
148
148
129
131
76
112
78
167
54
81
125
109
130
177
105
120
110
98
98
91
115
140
140
105
83
127
120
102
112
136
193
143
121
154
146
157
92
103
148
133
141
82
108
109
94
144
154
135
145
125
90
131
114
108
160
78
164
59
150
153
160
133
98
200
148
102
177
107
120
128
152
96
130
135
79
115
133
149
112
82
119
148
80
105
121
128
95
109
121
102
143
67
108
92
165
138
100
176
80
144
124
116
102
99
133
127
155
131
126
61
151
97
141
192
124
101
95
131
84
158
98
67
146
72
97
103
94
149
69
98
95
115
117
82
77
122
108
105
148
125
164
120
121
131
168
95
134
42
133
77
131
167
98
118
142
123
79
124
85
106
125
102
76
69
151
112
156
108
102
67
133
108
112
133
177
120
120
67
111
97
94
118
127
149
69
102
146
139
93
104
68
140
139
83
141
98
159
113
169
113
113
172
103
136
80
76
135
109
129
158
102
141
135
133
147
123
99
90
90
135
59
74
113
118
131
125
111
140
106
122
87
105
115
65
127
125
96
97
100
131
105
107
121
125
145
102
126
131
96
122
118
89
106
161
98
151
133
110
98
102
129
136
209
99
117
114
77
77
81
98
136
87
78
125
101
133
108
116
117
75
116
103
134
129
102
54
116
122
134
142
54
123
128
102
94
96
131
115
96
100
128
98
107
144
105
107
128
84
87
133
168
97
97
105
54
82
54
141
143
95
97
86
146
49
107
125
145
126
108
110
116
113
99
81
131
128
93
118
172
104
134
110
102
116
131
129
105
102
133
108
120
96
146
123
129
145
125
166
122
74
103
82
159
90
82
103
108
102
78
91
166
128
185
186
130
110
89
104
118
114
103
133
118
133
150
120
123
139
78
115
107
108
118
61
119
133
105
67
177
141
131
132
141
98
116
87
77
102
127
144
122
118
121
95
160
164
160
95
118
108
85
102
124
77
108
110
54
94
107
97
92
153
131
96
103
115
108
132
151
81
108
98
107
98
119
128
144
98
104
107
76
157
136
97
123
138
129
116
144
140
158
143
125
81
95
77
129
74
129
95
97
87
113
77
123
127
124
112
119
95
118
118
118
80
98
115
81
76
108
98
153
129
102
144
93
108
134
134
154
124
161
147
108
141
98
95
123
154
87
105
83
149
103
154
108
139
126
98
92
116
154
89
78
87
100
144
150
140
150
158
74
107
144
128
104
171
110
106
130
134
107
118
81
120
96
112
81
77
102
106
95
177
160
120
59
127
88
105
88
139
124
139
159
59
116
92
112
247
93
107
122
169
122
131
135
97
112
96
102
91
128
59
117
97
128
118
112
158
97
108
123
148
121
89
93
135
156
105
118
82
103
93
139
103
95
133
141
111
104
135
106
165
103
59
87
125
92
68
82
92
141
131
126
93
112
118
128
128
102
131
123
68
125
123
104
93
128
109
91
124
131
103
80
129
120
65
101
105
102
173
81
98
61
122
132
97
127
151
107
123
92
85
120
111
78
91
113
103
153
92
131
98
76
186
76
111
129
138
80
131
142
167
139
116
104
91
136
91
158
81
153
103
83
145
67
87
54
61
49
131
112
94
92
102
87
129
83
100
108
116
106
77
115
106
127
112
169
145
119
98
92
106
102
127
113
163
126
191
143
177
111
137
135
133
102
109
113
180
102
97
102
129
102
133
107
81
128
139
111
98
184
90
69
115
106
84
173
92
100
91
153
82
158
147
143
105
97
126
101
173
108
112
116
128
107
98
150
113
98
107
156
90
112
130
99
127
74
131
98
93
108
93
102
126
127
88
106
168
180
147
111
106
99
145
97
98
94
83
69
108
157
94
137
93
126
54
102
140
119
151
155
145
158
49
100
164
100
177
125
159
164
102
116
121
140
141
104
95
90
90
103
146
123
174
157
120
76
83
139
83
94
98
146
122
109
120
107
138
127
128
149
113
162
139
104
92
91
158
145
95
146
137
105
90
74
107
107
93
54
144
133
103
93
87
153
108
111
118
124
140
105
120
112
134
54
135
141
98
132
108
54
113
81
49
101
104
116
148
103
108
102
87
54
103
67
112
102
157
124
102
145
120
148
180
98
107
84
54
121
153
95
79
138
138
146
103
76
118
108
90
144
138
129
157
120
96
67
113
97
128
133
82
108
140
154
108
49
155
147
107
98
54
125
108
180
97
89
82
90
105
106
73
114
101
138
156
145
125
81
125
127
137
227
123
118
131
69
122
113
102
161
114
90
131
152
133
101
67
179
122
98
142
115
134
82
81
155
129
120
150
92
130
109
145
153
95
76
98
54
128
78
135
171
104
106
123
158
103
133
123
128
117
165
103
115
59
177
94
89
91
145
122
125
103
154
129
102
194
106
112
181
107
184
74
133
125
69
108
90
102
108
145
82
95
121
116
126
152
76
131
117
116
123
114
115
89
135
113
128
153
126
135
106
127
146
112
99
112
200
96
89
145
114
61
113
121
107
127
141
98
76
110
126
78
143
87
127
139
85
84
102
100
153
132
106
90
152
93
97
72
74
145
158
100
92
99
132
54
85
99
102
139
120
142
131
168
162
81
78
110
131
172
142
168
54
115
97
97
83
138
118
91
144
103
148
127
111
127
95
169
106
139
118
200
145
102
128
114
106
143
143
143
121
96
82
188
90
95
133
110
142
95
119
136
173
108
168
138
88
129
107
128
123
134
97
81
80
106
155
149
102
102
81
206
122
77
193
133
108
102
99
131
129
98
90
112
107
87
197
125
114
129
95
91
125
71
105
80
153
123
98
90
104
129
127
108
124
90
160
103
121
148
119
150
100
79
102
158
97
125
179
105
96
106
120
118
126
111
98
91
98
107
185
123
140
102
100
127
111
59
79
118
135
87
113
93
198
156
61
145
89
134
110
145
71
154
126
149
156
135
139
147
116
82
88
54
87
113
117
127
117
141
128
116
123
134
124
136
134
116
112
113
133
138
83
124
118
133
113
103
131
101
143
133
92
110
167
81
186
93
157
105
77
95
165
150
96
139
77
141
103
161
132
100
168
109
150
133
104
87
129
133
130
129
144
54
78
108
149
123
103
148
106
133
101
87
159
112
109
137
122
131
97
95
91
125
128
107
112
119
177
136
145
96
179
145
49
132
118
120
151
180
135
83
151
116
49
83
98
81
123
156
148
145
153
129
108
82
82
90
95
129
88
61
111
143
77
121
162
157
120
101
85
144
81
82
175
140
139
101
83
137
126
98
123
116
125
125
108
144
172
107
158
131
108
103
54
95
87
100
100
115
104
147
76
54
61
135
112
93
125
120
126
87
154
140
102
137
97
126
119
82
148
154
174
93
136
188
99
93
54
116
108
105
137
136
158
166
158
85
85
142
71
54
108
123
102
177
94
131
98
152
147
102
151
127
113
104
84
125
164
161
130
86
140
154
108
125
98
107
96
186
119
98
146
80
101
130
121
93
111
212
104
120
87
112
59
115
95
102
69
103
119
158
106
87
148
129
83
158
142
86
128
131
180
90
158
131
110
116
102
119
143
99
54
81
161
103
54
128
158
143
124
97
148
87
93
113
157
101
102
156
133
109
94
89
82
96
155
80
112
156
125
85
127
114
95
95
114
127
168
77
129
149
117
54
155
70
143
93
110
172
83
131
111
135
202
158
107
138
98
76
57
134
145
129
94
84
102
102
104
118
102
84
68
133
93
117
59
139
108
106
100
171
87
111
105
147
98
124
91
106
151
175
100
128
129
105
147
76
127
103
129
108
148
118
133
54
95
104
54
107
101
108
81
146
128
161
81
76
119
124
135
119
158
105
100
142
156
143
109
98
98
74
109
131
128
96
133
182
112
137
125
119
101
171
140
90
116
85
173
194
49
112
124
143
118
119
49
145
117
148
108
139
79
124
139
74
76
128
112
109
125
102
67
49
111
74
128
141
162
59
111
108
91
91
88
128
149
93
141
135
131
84
113
116
127
138
96
100
54
111
151
150
49
112
143
112
106
87
54
91
70
146
108
102
107
106
104
106
102
153
54
133
136
104
132
179
145
83
162
110
96
77
98
199
175
105
170
93
108
173
108
120
103
95
126
108
103
131
125
116
87
132
125
146
120
141
108
61
91
84
144
114
125
112
65
108
110
132
125
133
126
144
143
78
119
158
122
61
171
118
128
121
135
83
123
54
196
107
123
76
108
174
54
100
74
172
98
116
123
87
102
126
116
150
96
68
158
127
118
127
108
168
185
102
106
109
135
167
67
153
139
91
140
206
167
87
87
106
82
87
111
160
116
95
143
106
54
148
126
173
104
131
165
49
93
114
151
92
67
103
156
54
145
105
132
100
81
91
147
133
108
81
93
120
103
81
59
107
111
78
130
119
151
162
132
125
160
112
140
125
82
120
144
122
83
117
189
100
155
97
97
54
153
95
125
94
105
134
166
109
77
159
88
142
122
111
116
133
115
93
104
165
113
124
169
74
143
95
115
133
129
142
143
126
93
198
106
149
105
154
128
97
115
102
133
91
105
108
173
124
150
125
134
149
121
133
107
67
143
125
135
54
98
103
200
91
122
200
100
141
131
129
141
107
95
85
80
90
54
85
115
79
135
132
107
139
133
49
102
125
94
49
98
167
93
123
115
95
91
128
81
97
146
143
166
145
108
82
100
108
108
77
93
143
108
103
155
69
108
93
105
109
97
89
93
117
137
115
103
106
102
121
102
140
87
160
123
105
98
77
127
113
152
82
93
117
163
54
95
118
54
81
139
156
105
112
102
112
148
95
118
119
180
118
75
77
123
121
89
109
110
108
124
102
133
87
54
104
148
126
131
118
95
108
102
96
151
167
115
188
140
102
160
147
98
169
54
107
81
113
93
116
128
120
131
158
87
127
141
98
127
94
102
143
112
74
90
113
103
54
133
120
125
81
98
148
118
79
111
127
123
123
164
142
113
135
144
108
131
117
134
98
155
108
141
74
127
149
148
160
108
59
102
171
159
125
140
108
74
95
167
107
109
93
90
115
120
86
106
54
118
173
146
92
102
77
108
95
97
116
118
99
83
107
112
129
131
87
120
125
57
68
113
177
96
107
169
95
122
123
145
105
105
108
54
134
95
108
151
61
83
126
131
131
86
105
102
98
133
109
98
116
105
82
123
144
89
135
117
119
148
77
125
179
143
133
119
49
180
179
77
78
110
126
143
142
115
98
108
118
85
108
105
144
177
150
76
102
67
54
124
123
101
98
120
76
112
73
81
123
113
161
127
49
145
108
90
87
145
127
121
122
115
93
141
54
116
134
163
117
101
98
80
101
127
95
147
194
141
76
90
98
116
168
49
134
116
118
207
118
81
109
126
74
102
106
84
158
87
158
147
77
81
149
144
106
107
144
115
164
98
135
138
150
105
103
49
138
97
92
177
127
126
112
106
102
49
103
82
130
81
101
65
108
108
110
127
127
101
165
110
131
135
87
95
110
125
204
103
104
96
89
98
135
130
90
108
131
128
108
74
77
68
148
131
143
121
67
140
92
158
191
109
129
89
91
93
99
98
54
59
95
102
116
93
193
89
82
144
138
95
105
81
132
102
103
154
97
156
112
161
107
106
116
103
90
141
127
119
78
98
110
141
91
177
107
100
49
114
85
140
172
118
76
42
104
98
126
119
127
112
94
98
96
120
173
76
103
177
113
93
157
80
110
140
108
141
118
74
121
147
87
102
133
110
127
76
145
128
135
86
107
140
84
120
106
130
158
74
89
129
59
108
93
90
128
102
90
115
114
131
80
157
95
59
119
121
87
73
81
81
127
106
108
98
112
109
100
118
116
170
93
135
131
125
81
59
133
133
54
102
114
150
103
108
131
157
74
94
113
132
132
59
131
49
108
120
148
102
110
132
103
150
123
85
108
167
129
114
107
169
124
103
135
107
118
87
102
125
54
180
129
132
172
118
115
116
92
113
144
95
117
156
125
105
117
113
127
122
151
143
122
91
126
87
145
103
90
117
135
133
123
108
49
84
113
147
114
112
110
95
111
98
94
154
98
116
124
88
54
54
87
145
123
156
111
116
90
101
104
102
119
121
134
145
129
119
144
96
122
61
132
135
120
108
134
147
108
128
103
93
148
130
105
151
132
128
95
115
80
143
93
144
81
167
125
54
151
165
106
94
116
108
49
127
135
188
96
116
102
127
114
96
98
113
140
106
147
128
116
161
112
131
144
115
144
144
120
59
118
120
74
135
128
81
74
120
81
100
81
142
165
84
135
128
115
103
143
137
81
120
116
95
88
67
93
115
109
107
148
127
128
80
153
129
98
139
161
105
99
132
98
148
139
129
54
145
133
129
159
74
102
74
169
121
105
116
112
185
95
135
161
136
106
77
86
108
125
84
87
178
131
100
54
129
68
141
118
65
86
81
117
93
118
113
87
155
133
118
120
152
97
108
133
125
113
131
112
102
135
117
87
133
167
105
140
74
90
125
149
103
108
143
148
65
103
63
113
145
49
107
54
127
175
164
133
107
90
132
135
111
82
82
131
133
122
155
102
86
67
142
54
153
102
153
115
108
98
142
80
96
155
102
116
98
100
167
77
132
102
108
180
191
82
102
95
152
125
95
96
87
128
108
108
120
128
87
179
109
93
82
119
125
141
49
122
133
126
112
93
147
98
125
93
125
105
101
67
84
49
150
133
49
54
106
121
103
105
103
90
133
125
105
67
98
120
92
122
109
152
155
128
74
101
115
54
104
83
157
122
93
138
103
112
91
49
143
80
187
118
113
123
135
122
112
90
95
148
104
117
145
77
108
120
96
144
54
104
172
102
154
81
95
102
95
72
130
93
102
65
179
78
146
108
82
142
81
125
143
103
90
128
138
84
81
108
135
107
139
75
105
103
108
49
179
86
125
95
170
102
180
95
135
124
129
96
101
94
95
102
54
148
125
90
106
83
120
100
104
194
103
150
103
98
113
135
159
126
98
118
76
76
109
125
116
74
154
113
156
120
159
95
97
105
94
151
182
112
177
77
122
118
113
146
54
91
78
107
97
118
90
127
94
73
108
143
96
169
140
96
118
117
98
165
132
105
134
80
120
100
151
49
163
90
107
119
152
136
113
109
177
67
90
186
155
158
82
68
127
84
93
83
101
118
95
102
137
103
111
144
132
127
176
81
102
105
83
123
101
148
148
133
96
106
190
122
125
139
138
126
87
132
101
108
108
118
125
119
54
122
126
54
144
110
94
91
144
151
110
141
120
133
100
149
91
107
144
98
67
97
164
141
128
132
117
143
83
104
147
103
130
151
92
150
142
90
67
132
95
104
95
124
123
106
121
118
79
90
121
161
114
133
177
103
54
82
138
126
137
135
131
128
154
85
108
108
108
120
82
133
81
143
137
150
143
81
146
67
157
68
112
54
95
129
142
155
74
176
95
121
83
54
108
122
128
94
95
108
114
150
129
130
132
128
93
108
127
173
102
104
119
74
114
116
128
141
194
106
128
129
100
76
107
108
154
109
96
59
148
134
102
122
167
108
107
87
113
114
169
107
138
129
96
68
180
159
104
59
131
82
105
81
109
101
107
144
113
125
85
150
129
145
108
143
108
95
105
107
97
128
119
166
127
150
103
131
90
128
119
106
127
59
177
98
124
115
78
133
85
105
128
90
148
125
108
174
110
59
96
127
143
138
78
54
171
137
134
183
100
149
128
118
69
134
129
163
87
104
125
103
111
54
91
112
124
135
148
120
59
80
111
132
140
184
138
95
106
120
67
121
174
93
98
124
139
54
129
158
87
77
132
149
98
141
170
120
148
96
112
85
177
132
103
143
163
126
54
115
108
123
98
151
82
148
118
67
135
144
95
49
102
158
103
133
54
107
134
98
115
99
136
110
128
87
93
127
103
158
133
177
141
111
134
106
116
102
108
106
61
102
139
135
122
119
134
68
140
49
125
99
133
81
143
83
70
105
106
61
157
54
92
95
145
93
167
111
113
54
148
120
105
177
168
116
102
49
143
117
78
148
145
113
134
125
61
161
162
102
104
54
76
100
176
129
115
103
113
83
146
115
144
140
146
90
190
126
160
147
129
80
87
100
99
81
132
68
149
134
112
145
49
54
126
139
95
113
96
127
113
69
69
116
159
105
133
115
87
113
102
143
130
97
80
127
106
108
139
81
102
121
113
112
125
139
89
151
201
143
135
132
234
103
102
101
177
91
177
146
102
104
115
133
115
95
128
117
102
61
103
98
160
180
121
180
148
103
92
146
49
148
126
134
110
125
81
92
142
80
123
105
156
81
114
67
123
148
139
145
95
165
87
131
106
115
54
115
98
128
59
115
135
128
83
86
153
126
146
93
115
95
98
157
101
96
57
133
90
145
105
79
151
77
103
78
115
114
105
126
169
101
139
106
79
85
148
128
111
76
54
88
131
165
114
89
99
87
102
165
178
87
194
131
124
77
105
125
101
142
103
153
157
133
83
135
114
118
126
170
108
154
100
152
130
114
138
163
77
111
157
74
110
112
91
77
116
65
107
131
80
134
90
87
127
113
109
82
151
88
178
114
80
113
80
131
121
77
163
77
160
126
143
109
105
102
89
79
112
160
112
144
120
107
154
129
148
148
158
103
101
106
110
81
87
103
92
127
149
111
49
128
98
126
122
193
128
77
133
139
54
93
97
97
81
45
148
145
54
138
104
143
78
134
101
132
113
163
125
112
132
106
135
93
102
89
108
93
54
110
101
206
59
118
109
103
80
88
110
100
102
153
154
135
104
124
95
92
124
103
54
102
168
102
59
106
127
102
108
106
137
101
77
97
200
139
129
140
140
125
132
59
133
76
121
98
128
120
113
106
54
130
150
149
131
106
140
119
108
94
109
109
127
131
106
132
105
114
91
103
120
54
146
74
90
121
102
120
120
49
131
113
102
115
101
103
123
90
98
90
145
91
132
109
95
146
54
153
148
163
139
125
122
133
102
140
131
163
110
133
103
103
132
108
142
146
100
158
147
91
111
123
119
49
134
103
85
116
138
149
115
131
153
145
108
84
99
144
77
113
61
114
125
148
145
150
136
90
129
69
146
108
97
157
76
113
137
123
102
93
96
171
121
80
103
111
103
127
106
165
98
69
188
95
111
94
139
152
133
120
148
99
146
155
108
131
88
106
135
98
149
98
101
54
99
177
131
118
49
54
114
98
148
107
127
95
141
114
186
152
68
106
108
155
76
83
129
106
90
106
125
140
131
90
59
128
121
98
98
110
133
116
98
112
84
108
128
95
76
120
139
78
105
67
145
135
159
96
103
102
164
86
152
87
141
73
75
80
111
95
76
152
143
87
79
78
156
87
59
122
123
112
225
54
133
106
81
106
134
77
91
120
153
116
103
114
117
54
139
97
131
145
103
177
104
132
157
158
98
103
161
130
115
120
114
109
184
139
107
179
108
141
96
81
93
117
185
92
124
54
112
139
95
148
128
94
148
110
139
139
125
165
150
130
164
161
92
102
74
101
141
82
103
110
120
134
115
167
127
67
192
121
103
102
128
93
86
127
161
155
102
153
114
129
98
157
144
127
103
54
96
146
157
98
95
177
144
160
147
90
114
81
158
109
120
102
117
97
107
67
110
112
106
104
98
135
54
148
130
157
126
61
184
103
113
101
115
95
99
95
135
103
132
69
90
180
147
97
137
96
147
132
145
98
121
90
117
130
103
99
96
92
121
81
84
148
101
95
150
54
190
101
105
74
94
95
123
105
113
90
87
135
106
91
147
102
160
121
113
86
110
124
112
190
138
149
171
128
68
96
140
144
120
54
108
116
134
129
74
121
148
142
123
87
103
102
127
148
135
154
133
174
96
102
67
112
54
74
85
137
98
83
110
119
105
49
132
147
158
87
141
98
111
95
106
96
141
160
140
95
102
104
97
59
95
100
104
110
113
169
123
95
112
129
127
82
146
144
113
95
146
115
87
110
102
95
127
95
97
119
87
95
132
159
116
96
117
108
117
133
134
131
148
89
177
77
49
119
143
77
138
113
80
110
128
136
160
144
133
93
100
132
109
116
99
144
61
49
161
95
142
102
131
98
124
143
93
130
101
132
124
102
72
185
128
120
77
114
83
98
54
148
168
108
171
104
172
119
98
116
133
130
143
153
143
144
91
109
80
108
81
128
114
139
106
154
99
166
120
111
140
127
98
103
143
84
125
149
137
148
108
144
111
140
107
115
78
114
90
69
90
129
105
92
111
104
115
99
81
157
158
125
115
78
125
85
76
116
120
120
106
119
75
126
87
87
108
59
127
109
104
81
102
81
108
81
141
161
153
125
111
115
112
67
96
123
138
159
95
87
127
133
98
141
54
200
122
90
112
101
95
171
69
108
149
124
128
124
98
118
138
164
100
124
123
90
61
150
95
184
114
141
83
68
162
120
170
91
95
128
194
160
92
89
152
112
185
145
186
225
154
49
107
157
91
77
134
108
127
87
96
93
77
148
96
59
49
54
129
87
142
54
107
102
122
138
143
106
110
145
108
95
117
82
98
152
108
85
117
74
149
165
135
167
123
168
89
98
49
116
132
102
143
129
125
132
115
103
54
138
143
125
82
91
139
122
177
100
125
78
189
200
90
165
107
199
188
54
74
158
147
80
97
194
102
76
102
111
113
112
145
95
112
144
120
116
84
155
80
83
135
80
133
113
148
118
128
138
152
145
124
168
118
113
106
127
143
93
154
98
133
122
113
83
98
133
82
101
102
108
139
54
168
98
107
125
153
108
117
177
128
76
61
61
108
87
67
147
101
120
78
115
165
54
102
85
112
81
119
94
158
172
102
49
114
90
160
54
117
100
128
110
101
77
158
168
120
92
142
125
119
92
129
96
129
103
136
137
119
156
98
165
124
77
54
142
161
119
102
113
93
67
128
158
177
49
137
136
54
113
95
133
72
121
100
121
121
120
78
82
157
77
95
74
67
113
74
131
88
126
161
122
54
102
142
80
102
117
128
87
169
133
156
139
124
67
96
99
108
143
82
131
49
104
129
92
95
95
59
100
158
83
125
108
115
122
67
121
213
92
61
144
126
125
71
139
90
159
73
123
106
142
99
113
119
76
118
121
95
113
161
112
74
87
111
90
155
117
138
98
108
98
59
148
136
129
189
106
77
126
83
54
152
95
146
102
107
140
77
161
109
83
119
119
118
123
170
81
145
137
105
158
59
136
161
116
177
59
90
90
139
113
145
85
127
116
108
163
67
106
124
108
79
135
100
121
121
112
121
173
113
115
93
74
157
112
129
49
98
112
90
93
154
161
76
90
142
127
147
110
124
96
135
125
102
116
108
139
102
149
101
145
115
103
186
112
101
146
95
167
151
131
135
81
89
97
108
102
102
104
148
98
135
112
148
99
96
106
175
117
148
135
128
87
180
122
113
91
143
126
146
90
143
108
143
132
107
111
163
120
88
118
144
124
134
105
54
148
120
146
118
130
157
105
123
85
171
114
196
141
128
99
96
121
127
100
54
120
104
42
126
135
100
85
121
140
122
119
82
130
163
148
117
145
90
144
120
93
105
172
92
95
78
106
124
161
153
78
76
135
137
133
93
131
77
113
133
74
80
102
124
102
93
120
106
97
139
82
105
177
116
131
143
145
200
102
103
124
93
132
102
129
94
141
93
85
96
95
122
139
102
120
131
103
102
158
108
106
86
135
95
92
126
81
85
145
54
122
122
96
82
113
147
86
161
154
68
111
119
96
101
125
117
90
80
96
88
69
160
105
145
68
90
127
131
122
59
109
127
122
90
59
119
134
107
110
151
107
147
111
112
61
95
105
116
102
128
91
139
105
157
102
116
125
81
67
121
124
144
108
97
80
133
76
99
108
106
102
79
120
102
104
125
110
108
127
131
105
102
126
91
108
83
170
139
100
78
119
61
120
103
135
136
109
105
113
135
116
74
147
77
143
115
103
104
103
152
133
84
134
129
103
175
98
112
135
131
114
113
118
97
103
98
114
113
113
135
130
59
95
77
113
98
104
83
90
106
108
129
94
165
113
138
161
111
49
169
143
158
108
144
54
103
152
80
92
106
115
69
102
134
90
199
152
93
108
94
140
138
87
141
132
172
111
97
110
108
113
129
93
83
115
112
143
127
95
59
149
102
108
105
54
74
155
97
54
90
108
76
124
118
102
148
147
161
49
102
61
218
54
113
127
133
122
126
118
124
101
82
130
101
54
165
95
112
134
108
92
95
97
158
78
101
69
132
89
110
110
61
93
124
98
69
98
150
146
95
123
92
97
113
129
77
115
128
117
105
98
85
119
124
96
141
103
117
146
123
117
92
97
54
108
135
122
112
132
146
77
97
81
163
139
81
163
80
125
100
95
59
59
59
128
74
95
101
150
139
95
99
120
140
147
153
134
157
125
92
110
195
101
59
120
159
135
136
102
148
76
102
177
131
134
149
111
77
102
112
113
171
54
128
115
81
112
77
128
115
85
107
123
120
98
145
125
125
129
102
124
126
80
129
59
118
153
153
120
105
128
103
123
115
98
78
128
114
164
74
54
99
121
163
109
67
81
91
102
130
100
118
107
114
96
95
139
110
93
119
117
118
152
162
82
180
102
159
84
166
101
151
87
129
122
115
149
126
185
104
187
168
201
128
125
130
148
122
155
145
49
129
120
80
127
49
124
59
67
127
100
104
91
83
134
157
92
126
112
122
108
93
135
119
100
148
107
77
215
85
54
91
154
144
140
117
96
135
77
63
107
98
148
148
143
61
93
106
102
106
69
123
98
132
95
119
100
68
121
200
113
115
93
54
123
148
85
76
81
122
91
133
104
120
82
59
119
87
133
144
101
162
173
118
128
77
104
149
207
131
115
95
81
144
148
127
82
119
87
124
140
95
68
54
93
49
116
74
82
92
102
138
147
112
115
125
128
182
98
74
96
117
99
168
106
121
92
144
127
110
133
49
145
96
102
54
144
110
95
106
180
142
138
59
140
83
106
147
130
145
80
133
135
186
160
82
136
131
120
95
188
96
100
143
102
113
176
104
159
128
98
124
103
160
108
135
95
132
116
103
121
96
159
177
155
134
167
93
118
158
78
108
120
132
49
82
167
104
110
124
83
112
49
173
106
129
146
98
140
81
125
122
94
120
81
126
120
99
103
155
147
141
122
115
111
133
111
95
116
133
113
124
90
150
69
143
167
128
175
76
137
81
90
95
103
161
140
62
106
129
54
87
105
149
120
180
189
70
140
128
90
180
122
80
127
81
133
133
130
121
82
159
147
165
104
95
172
119
149
98
131
119
133
134
145
92
152
139
73
90
116
131
93
114
125
108
145
141
125
137
119
67
131
98
125
110
147
107
172
136
140
158
93
81
90
141
98
128
108
99
113
113
81
79
122
81
101
139
158
86
172
105
135
113
106
135
85
106
49
85
108
95
133
66
158
143
133
108
113
125
135
82
95
95
90
98
113
84
98
91
136
112
108
105
106
125
59
59
186
54
85
135
124
72
90
181
107
148
96
161
93
104
126
82
89
81
84
102
129
85
87
81
49
167
122
105
190
105
105
141
87
135
83
194
104
95
95
96
98
77
149
134
145
103
173
116
134
185
123
128
132
82
98
144
108
94
146
118
170
113
94
138
107
103
87
109
92
98
103
124
100
154
49
108
121
103
74
103
177
116
54
98
140
98
168
54
103
108
126
89
49
67
146
142
100
112
159
74
54
94
191
95
132
107
156
97
108
114
153
158
121
152
98
98
112
134
154
178
95
74
94
142
168
82
129
115
102
54
139
99
110
117
90
155
165
93
102
75
54
180
123
108
121
61
82
76
95
139
61
175
87
125
96
112
131
189
163
79
116
143
95
49
112
139
144
155
131
108
154
108
81
91
98
82
128
109
105
119
118
149
87
102
67
107
101
131
141
121
127
91
136
135
128
116
100
147
102
90
102
122
67
124
116
106
134
134
111
144
177
190
156
103
76
115
146
206
158
140
101
140
131
134
158
106
49
136
108
82
140
106
127
112
120
142
115
95
101
112
150
107
98
152
148
99
87
131
134
122
120
83
158
54
107
144
125
125
138
144
179
130
143
135
159
104
108
115
124
113
116
125
82
235
178
103
169
103
138
118
54
124
62
86
78
61
81
124
114
83
74
105
146
139
99
118
115
105
135
95
148
54
96
149
130
62
129
72
87
137
126
188
104
136
147
84
165
148
145
54
102
159
143
102
126
113
105
77
170
84
87
90
98
147
90
132
133
139
146
167
127
98
76
90
100
95
137
115
145
111
129
117
87
108
141
110
124
100
128
87
108
117
200
108
136
95
105
135
160
78
77
87
83
101
95
115
87
120
77
98
109
84
107
89
74
115
184
191
140
74
104
135
108
65
135
106
122
126
119
127
109
170
121
74
112
108
127
103
97
106
182
107
54
100
76
81
130
153
101
93
124
132
133
129
153
89
95
92
132
77
147
103
112
178
123
106
126
96
129
144
90
54
117
170
108
129
134
124
133
126
103
118
93
54
54
118
108
124
91
117
102
143
73
108
86
96
107
102
87
111
91
129
54
147
113
77
142
54
81
123
118
148
93
106
151
81
87
113
164
138
143
125
49
111
132
116
59
146
101
136
113
91
134
97
209
97
83
98
137
161
105
108
138
92
122
89
49
76
59
106
144
98
132
122
108
95
77
149
77
92
149
54
132
95
182
76
82
76
143
83
126
90
131
143
147
225
128
144
120
121
210
179
88
131
115
98
102
153
140
157
145
151
77
112
137
76
93
160
200
135
194
80
131
114
113
122
200
133
161
99
113
67
111
54
67
123
137
95
103
69
135
103
114
128
113
190
126
93
128
148
83
109
102
146
54
145
107
128
91
134
179
98
98
102
205
115
103
102
158
137
108
151
207
174
102
106
143
160
104
125
77
105
102
142
143
144
90
158
99
80
104
137
187
165
108
129
128
106
114
59
91
108
117
93
74
118
104
133
119
118
155
103
100
80
90
93
98
74
131
103
112
99
96
165
120
91
78
103
148
89
87
139
142
144
108
69
108
153
106
117
84
121
54
96
157
164
135
105
129
79
109
95
136
87
54
125
107
108
81
83
122
191
93
87
146
113
146
104
143
95
123
180
177
130
152
135
133
114
129
112
176
87
101
113
108
108
148
102
90
146
85
137
141
83
97
109
136
106
102
150
78
102
87
154
134
156
54
126
54
99
129
114
119
102
130
103
136
136
103
131
103
109
102
79
103
194
100
119
138
100
137
88
122
98
83
131
122
116
132
103
92
98
128
102
145
87
106
87
90
143
133
91
119
106
105
138
93
102
77
158
102
128
103
59
96
120
106
78
145
103
128
177
78
68
125
137
84
162
135
125
163
102
97
120
167
113
105
102
138
151
102
119
108
131
175
81
124
110
119
81
103
114
61
90
89
111
152
172
145
107
126
89
113
84
94
114
108
139
175
122
104
171
145
152
170
110
93
108
121
102
108
98
92
135
139
131
97
101
148
146
102
82
129
112
98
102
106
108
70
120
153
135
106
126
95
92
80
123
49
98
94
98
89
157
143
123
129
128
54
86
93
131
126
109
117
102
140
123
125
87
106
167
150
102
143
116
137
87
74
118
147
54
119
96
123
152
133
108
101
158
129
108
78
167
102
115
90
134
138
89
73
98
112
98
177
81
135
130
98
81
98
118
106
92
130
140
127
157
68
164
141
111
95
73
151
123
103
82
141
85
103
144
119
93
139
90
119
145
129
110
152
84
126
67
84
148
102
98
100
112
116
124
130
111
73
109
135
69
89
75
83
131
93
54
117
147
103
145
158
98
157
93
132
86
80
129
117
61
108
90
130
130
57
90
113
166
121
138
80
126
113
96
122
98
167
111
113
102
96
170
118
141
108
109
103
137
121
156
98
125
49
185
83
69
95
133
102
67
77
105
54
128
83
77
121
97
75
127
73
137
146
96
114
93
137
89
126
127
127
116
131
49
102
115
59
93
129
152
97
128
137
103
145
112
150
110
135
76
202
74
135
124
123
110
59
49
107
131
67
120
132
113
153
144
105
155
115
76
129
108
95
151
107
149
119
103
132
86
153
61
114
130
90
81
193
137
114
129
109
113
110
107
107
160
149
162
112
177
103
147
160
109
49
106
138
90
99
130
130
104
126
150
102
111
121
82
154
127
77
117
179
90
130
67
106
111
77
116
166
78
155
215
97
54
95
107
80
78
100
67
172
190
132
113
109
80
109
144
108
163
107
90
138
102
133
138
94
147
116
113
54
122
104
125
187
59
138
96
87
78
54
105
74
54
76
132
81
97
111
108
97
120
106
86
91
122
98
161
79
162
150
154
137
76
61
102
162
113
140
107
125
120
140
125
54
149
108
74
135
97
117
120
49
172
74
165
109
92
49
169
120
90
103
108
83
82
135
141
140
82
74
96
112
90
139
105
49
129
127
82
95
115
159
134
61
59
112
103
128
131
85
49
101
54
144
139
93
98
96
156
113
120
95
128
89
149
80
112
113
108
101
77
116
139
108
117
76
121
91
89
133
128
74
93
98
84
138
116
110
82
129
119
144
126
124
179
54
113
114
100
120
169
110
121
92
98
146
111
136
124
95
125
95
141
122
118
116
75
54
81
81
103
85
102
144
168
153
54
121
150
76
81
108
106
127
83
125
103
99
54
90
94
112
145
109
78
102
140
94
128
103
126
142
110
165
148
81
125
59
99
99
83
147
144
54
90
89
112
103
141
54
120
81
120
126
89
128
106
54
105
105
59
125
105
90
83
123
108
140
69
180
148
95
83
121
107
102
99
80
164
125
106
102
131
111
129
103
111
103
108
112
195
113
78
109
96
126
107
99
101
108
158
131
105
165
49
123
158
191
96
125
116
117
132
158
122
105
142
96
110
128
125
151
147
148
114
113
166
103
98
131
76
141
122
124
162
106
113
122
107
77
144
81
77
135
54
77
108
106
105
54
110
129
128
106
182
127
100
76
102
109
127
144
148
65
125
144
54
76
94
102
153
108
113
106
95
140
65
135
105
90
159
54
128
119
118
177
123
115
161
140
102
121
108
74
135
97
90
54
103
141
113
98
111
163
145
128
83
90
152
92
49
85
69
103
108
99
105
103
127
102
54
107
59
134
116
96
93
54
95
148
129
103
164
82
85
105
106
102
74
172
165
113
87
108
155
113
148
98
106
120
147
119
74
95
173
144
152
77
112
107
133
96
118
120
119
145
87
111
78
70
95
113
114
101
126
138
93
102
67
103
74
145
103
129
122
82
103
105
81
127
146
186
87
145
49
104
143
130
138
95
85
95
108
122
124
118
103
104
138
54
140
122
109
89
108
144
115
105
145
80
154
129
119
131
127
135
86
59
132
200
200
102
90
123
135
105
133
119
145
82
87
120
119
130
116
49
95
103
108
87
102
88
153
112
182
172
89
81
85
119
126
108
54
135
116
82
59
141
136
110
95
107
98
120
127
105
90
128
89
78
154
101
95
68
139
135
108
150
54
104
110
128
59
128
81
151
113
54
105
108
96
113
125
74
54
108
95
54
144
139
167
138
54
145
98
141
122
98
143
79
138
103
152
143
103
128
62
105
107
109
122
93
153
54
54
148
81
98
75
133
84
59
155
83
168
117
93
90
140
149
101
125
77
113
120
139
135
158
112
118
116
91
81
131
98
127
124
95
131
211
90
82
101
124
142
49
81
114
121
103
95
100
92
143
139
166
86
148
95
116
124
102
100
134
95
143
111
61
110
99
86
98
133
188
136
140
117
68
88
128
139
101
96
98
54
177
142
102
177
102
159
74
81
165
107
129
108
148
141
76
93
107
106
128
143
116
131
147
74
138
135
77
123
88
122
132
137
98
141
163
109
98
146
95
83
118
98
122
125
180
109
54
74
142
76
142
135
154
101
133
111
91
129
129
119
122
112
54
98
132
109
116
92
115
157
115
111
95
69
82
172
112
108
110
158
146
119
127
135
118
105
144
125
95
107
97
158
146
122
95
207
74
95
125
67
100
145
178
97
145
218
109
149
74
74
102
108
108
165
131
133
129
106
74
105
127
113
103
114
54
95
128
153
105
158
130
103
105
77
95
161
125
108
104
141
133
128
54
104
151
115
108
98
139
80
141
157
153
148
154
113
151
118
126
133
193
92
124
129
161
101
113
140
87
146
102
85
102
87
95
119
194
83
86
161
119
105
125
113
133
101
144
108
102
135
82
110
169
146
107
123
82
98
102
98
115
128
111
81
128
152
144
134
157
87
107
124
95
82
127
134
143
49
81
165
168
115
98
68
109
81
89
120
105
138
132
111
97
164
97
119
118
195
87
116
85
54
84
134
125
180
107
125
99
91
96
137
134
86
181
120
113
103
88
127
97
102
139
67
108
105
129
112
95
93
148
115
108
93
102
121
89
134
80
110
123
79
108
54
95
120
96
106
116
126
102
98
195
227
154
77
143
106
132
115
99
129
98
107
98
180
49
124
82
95
139
159
112
105
127
161
133
212
122
112
102
107
134
54
182
103
147
80
96
105
91
99
146
150
92
147
113
155
128
160
93
119
153
100
96
116
93
116
109
97
146
95
137
143
85
77
106
87
109
81
115
98
106
114
101
150
135
91
104
122
117
127
134
124
141
76
97
97
81
124
134
54
87
165
108
127
98
124
129
133
115
156
131
133
59
172
120
98
134
61
82
87
170
97
90
143
129
74
111
165
117
111
110
133
102
49
124
155
108
139
158
104
108
150
93
116
49
68
162
121
113
135
129
131
102
157
101
148
49
123
111
110
99
209
158
97
141
128
115
137
142
144
116
108
103
167
160
121
82
133
59
115
126
111
141
119
137
125
122
172
135
105
149
91
88
122
140
49
125
77
140
115
103
117
145
184
161
102
144
119
172
99
150
137
94
113
126
128
126
62
102
95
87
108
108
114
132
177
114
95
103
189
103
122
187
106
91
128
141
104
54
89
147
138
49
115
122
129
113
83
78
119
138
102
108
130
109
143
98
145
85
170
132
129
138
95
82
95
103
125
151
103
96
98
131
129
102
147
103
125
149
137
129
135
86
162
101
158
150
109
125
129
113
129
148
128
68
95
145
110
116
79
129
89
110
74
144
77
105
142
106
144
116
99
106
98
107
169
93
110
139
104
149
141
148
133
105
119
116
113
114
121
93
103
49
108
110
87
102
128
146
102
54
90
125
124
81
120
139
103
73
93
131
84
160
90
102
117
113
103
76
147
113
83
113
159
133
108
106
102
114
150
103
103
113
103
54
122
145
124
102
74
49
61
76
140
93
144
110
133
105
108
119
156
143
96
173
131
124
98
89
118
106
99
115
98
131
49
125
134
95
149
103
122
102
162
131
87
54
93
159
77
54
122
148
136
155
179
98
125
177
148
61
168
140
139
111
93
54
147
156
123
81
145
125
133
98
165
150
98
90
93
141
54
96
94
100
78
81
90
136
123
129
94
125
61
115
125
122
114
111
82
118
106
155
108
182
98
115
117
54
147
163
78
127
93
59
127
96
179
95
158
77
104
143
78
138
134
90
132
83
112
96
133
97
140
99
158
96
139
77
81
144
87
96
94
81
54
133
116
162
144
132
49
142
139
74
118
82
127
123
140
144
164
113
88
83
112
122
150
76
192
81
98
103
54
117
128
97
123
165
114
101
97
117
88
129
180
73
133
146
114
120
95
141
137
108
113
139
123
95
181
123
102
155
96
108
98
131
87
125
78
125
67
114
81
98
107
81
95
155
148
110
124
110
125
144
74
101
94
127
102
147
133
89
128
84
122
124
125
108
113
160
96
180
69
96
96
133
76
114
113
124
102
148
110
106
117
107
54
106
90
126
131
104
171
124
175
91
125
81
151
107
81
107
144
108
102
123
115
54
97
107
129
123
113
102
130
123
93
116
107
144
146
93
134
128
148
112
141
97
146
148
146
141
138
137
127
85
108
125
146
103
98
107
107
144
91
119
157
82
161
102
101
190
106
116
95
108
100
82
54
115
89
99
95
117
146
132
68
112
102
54
106
85
49
84
61
90
104
49
54
142
123
104
76
95
131
135
125
194
126
106
174
149
108
96
67
158
135
127
101
93
97
127
158
140
105
78
78
101
135
131
108
119
145
120
102
104
134
148
108
180
143
104
177
110
133
145
144
105
49
131
140
120
150
113
144
116
145
85
121
89
159
158
87
54
111
91
165
49
105
143
146
123
85
115
134
187
59
117
49
179
128
105
143
119
108
145
137
74
135
105
108
121
124
165
113
142
69
109
126
54
136
126
124
91
177
108
116
61
113
120
156
146
136
158
133
109
93
102
123
132
116
74
93
141
133
149
82
146
132
87
103
77
164
101
125
57
91
108
138
158
136
137
94
74
83
125
156
78
131
95
98
78
151
106
59
102
113
75
164
107
120
145
177
115
119
116
143
150
147
99
95
129
118
95
77
108
145
90
86
113
171
113
95
141
100
134
130
141
82
107
137
144
93
113
174
99
156
72
116
101
80
127
115
121
131
151
159
139
103
152
101
102
101
127
54
118
128
174
78
87
127
157
74
100
110
110
81
102
87
158
65
112
148
67
218
59
112
95
100
113
158
125
77
173
163
158
102
108
118
142
147
188
125
143
161
102
124
140
101
96
128
83
92
137
131
130
128
119
90
80
143
108
200
95
101
87
155
165
117
196
95
140
105
91
125
107
87
113
150
130
98
103
120
112
90
81
82
125
129
102
178
93
97
76
95
153
103
156
115
125
103
87
131
96
87
88
54
143
98
163
95
153
95
98
167
54
98
128
101
164
54
122
145
143
73
132
140
130
102
81
161
146
120
74
120
83
77
95
54
87
114
106
114
165
59
94
135
145
155
74
127
95
123
109
158
158
59
68
105
177
110
102
103
200
107
54
81
135
156
117
116
49
135
152
102
81
130
95
101
137
102
130
127
177
138
77
129
108
108
133
113
154
95
143
98
162
125
102
113
103
107
109
125
173
49
54
103
102
103
128
135
104
135
145
92
91
94
147
92
83
98
108
135
49
115
113
100
99
54
125
182
91
146
103
93
127
131
104
141
84
170
139
54
130
158
59
81
105
95
144
82
101
111
132
129
144
175
111
96
140
74
97
156
165
98
124
157
133
74
101
80
96
112
123
147
144
97
59
98
177
54
114
144
97
108
104
73
54
122
112
135
122
186
82
103
94
163
102
132
115
145
128
78
110
68
106
67
117
120
120
82
110
140
54
95
91
129
95
111
65
163
112
125
149
125
95
145
153
120
100
92
154
107
97
129
148
99
49
67
82
145
133
67
131
108
126
61
134
155
108
93
98
127
105
142
153
99
83
113
104
126
101
147
142
101
119
187
132
80
49
148
171
129
123
103
132
119
128
167
121
141
147
177
103
138
127
189
109
109
120
81
133
152
93
143
188
89
70
95
93
148
98
81
107
172
140
122
179
85
146
95
118
95
103
103
108
91
74
157
111
140
101
98
137
125
123
163
142
107
110
103
103
125
112
132
116
83
74
131
74
128
98
103
148
90
118
69
117
122
169
73
115
139
136
78
102
127
109
127
142
105
127
83
101
137
140
133
94
127
112
98
161
125
135
127
225
126
74
133
102
128
54
102
77
169
59
146
119
129
86
131
78
81
162
93
118
103
108
125
138
147
133
120
128
108
116
115
127
59
83
81
104
85
85
95
100
147
122
114
145
173
106
177
105
141
76
110
89
180
86
93
54
173
124
95
76
98
98
108
90
78
120
138
105
125
132
84
76
76
103
69
108
110
132
134
54
116
115
136
104
144
142
133
115
117
145
108
76
86
103
148
121
93
150
74
101
82
116
146
107
76
93
160
156
49
140
80
122
151
116
119
100
218
122
113
147
106
110
157
122
137
149
98
113
107
140
168
131
86
151
141
147
120
173
81
113
95
54
101
123
138
135
93
112
111
93
54
175
128
95
91
133
151
160
87
98
151
138
123
107
119
134
54
127
119
139
54
108
144
95
67
141
122
102
140
152
164
166
127
132
121
68
88
133
111
80
146
98
49
96
113
105
131
102
103
134
165
81
135
102
76
178
105
127
103
112
132
121
118
145
117
108
78
74
126
103
103
97
120
97
105
147
59
125
133
78
139
96
128
133
102
200
148
149
108
119
106
105
135
108
67
153
104
105
90
81
169
120
115
81
127
116
49
170
167
123
54
127
99
179
146
134
104
113
117
144
141
116
79
103
96
49
108
179
122
116
108
82
99
93
109
141
95
87
143
123
99
74
87
54
100
111
91
54
145
93
120
74
90
107
87
93
109
91
156
116
85
150
87
98
102
152
141
116
115
98
96
150
99
77
151
103
100
76
125
125
158
128
81
135
163
76
148
138
98
98
195
105
108
148
170
104
118
94
107
135
144
91
116
102
123
82
130
147
54
54
59
160
96
125
81
134
128
108
180
78
156
84
54
127
54
83
76
187
127
124
91
148
128
141
144
103
68
154
105
122
103
114
141
91
118
115
83
67
83
93
96
88
100
100
135
120
143
100
133
116
127
122
139
100
118
170
93
91
170
101
142
103
130
177
79
138
61
95
82
109
108
163
67
108
102
120
119
54
89
108
184
81
81
157
145
101
97
149
114
91
130
83
87
103
144
69
139
103
67
120
87
137
103
112
146
148
78
95
68
108
123
96
172
141
115
54
148
105
85
141
110
143
69
119
135
112
91
132
175
125
54
145
173
108
124
129
130
91
85
108
115
89
176
123
157
137
102
92
154
88
125
114
106
122
161
179
95
82
130
172
95
59
143
103
136
81
108
164
135
148
85
159
95
108
82
102
103
200
105
153
154
90
134
104
122
76
114
116
82
177
115
155
102
134
115
54
86
95
147
133
103
186
123
151
149
129
110
156
134
100
82
91
117
179
194
131
139
141
113
135
95
49
102
97
172
77
95
112
121
102
113
136
68
93
125
114
146
108
135
123
67
128
88
93
132
108
177
108
134
93
95
101
94
68
103
102
133
125
106
74
88
147
131
127
74
124
113
108
103
108
137
174
80
114
85
126
49
54
144
82
85
76
93
125
112
81
128
129
102
151
114
113
102
74
115
137
153
61
159
169
92
89
125
133
74
115
68
161
74
108
73
54
98
153
87
126
104
96
120
123
82
124
128
177
96
137
133
125
181
144
107
120
177
143
155
186
105
68
133
118
113
112
130
91
135
125
94
105
127
102
143
90
95
80
103
130
106
98
125
132
104
102
132
98
94
146
105
69
139
131
94
131
103
133
113
86
91
106
103
132
74
49
114
149
117
87
158
105
121
103
105
113
59
81
70
147
130
133
67
187
167
90
122
126
128
112
180
112
169
127
98
97
102
160
67
128
99
118
92
74
103
180
126
115
132
67
81
79
102
148
54
105
130
102
95
87
141
164
123
136
103
177
131
120
119
149
137
105
126
144
78
100
172
108
133
119
68
119
116
125
103
138
155
95
113
74
113
152
116
84
108
122
165
113
136
94
102
108
168
158
167
123
112
156
140
129
126
155
104
90
79
172
92
145
49
102
122
103
113
108
128
120
106
98
77
128
114
138
101
96
195
103
102
123
154
113
91
104
113
105
127
82
59
127
135
87
81
133
146
120
87
116
74
49
112
102
115
171
68
121
81
96
154
180
102
71
96
130
102
103
121
153
109
87
95
149
116
74
87
113
118
90
156
109
69
106
81
126
103
123
127
118
168
89
146
152
125
118
178
101
117
118
122
106
78
102
102
83
199
114
59
133
148
113
54
102
90
157
89
148
131
125
161
141
129
142
129
134
137
133
81
74
85
84
103
114
54
109
95
131
127
161
133
109
76
111
114
127
54
85
99
120
133
128
99
114
126
117
140
83
98
86
159
111
83
86
131
133
136
144
95
98
125
92
108
108
131
95
98
72
128
122
106
120
90
97
101
144
108
137
106
110
49
90
190
136
128
102
153
98
161
144
179
100
54
54
146
132
49
114
74
82
125
49
105
95
115
45
93
103
111
139
82
87
102
108
97
124
130
108
148
108
94
95
121
68
97
92
160
116
87
110
113
101
115
100
125
112
129
141
92
129
108
110
150
141
128
114
139
105
131
151
125
128
81
126
111
132
180
133
147
108
115
104
115
81
80
91
189
95
128
120
96
123
80
101
129
140
81
59
111
103
116
92
107
136
123
78
91
68
94
143
103
94
108
98
88
159
126
164
163
128
148
148
112
90
124
85
76
81
120
186
81
184
127
105
112
49
109
129
175
164
95
87
78
61
136
94
114
124
129
108
115
130
137
77
124
146
130
114
164
167
172
137
112
145
127
160
141
118
141
163
104
196
100
118
139
108
81
93
54
105
111
98
133
122
134
152
102
110
159
49
120
112
115
112
103
118
218
119
125
94
129
128
177
113
105
74
107
140
54
134
160
170
76
103
163
119
155
98
95
96
49
65
128
120
119
112
110
151
121
103
161
59
175
106
135
133
95
49
130
61
143
87
112
114
128
106
61
91
78
122
181
155
110
86
118
115
142
112
158
91
98
88
95
105
90
127
94
76
77
74
102
131
113
102
102
172
85
97
105
133
105
165
106
114
130
165
108
137
96
165
150
108
113
131
189
70
160
158
91
166
150
109
118
119
158
99
95
138
101
143
127
122
192
118
111
142
142
123
94
135
129
107
113
127
88
102
112
119
163
113
49
130
54
74
110
100
67
142
106
97
136
121
118
160
110
54
61
131
86
128
95
160
118
107
105
88
105
54
110
121
139
120
87
69
141
104
102
123
100
98
131
147
59
188
90
147
108
106
91
117
112
95
148
70
81
95
92
141
157
118
91
129
129
59
98
125
147
133
128
82
87
136
122
108
114
165
145
125
148
191
125
158
77
125
125
98
148
113
115
118
154
88
120
135
122
119
177
131
129
108
98
145
116
134
164
89
118
176
141
85
102
102
92
127
103
127
140
179
102
95
114
49
130
129
102
120
115
139
165
131
93
147
80
154
78
131
103
102
134
104
98
168
112
146
153
102
139
96
126
99
59
137
128
131
107
99
98
104
122
103
96
128
82
110
128
153
82
95
54
68
74
104
114
154
155
99
91
97
146
113
179
138
95
70
105
165
80
148
114
152
102
82
118
98
141
54
54
102
102
168
54
118
54
102
127
102
135
95
110
78
133
177
121
102
137
158
93
131
170
89
128
125
95
176
98
98
179
86
103
98
105
90
119
113
108
121
97
108
102
101
128
132
94
85
102
113
138
81
100
122
102
83
107
78
165
105
110
107
98
54
103
102
179
108
98
104
131
103
125
132
54
98
148
114
158
103
92
133
89
109
96
74
131
176
90
156
120
138
104
54
123
145
98
120
123
102
77
110
54
72
108
95
127
200
137
92
98
135
116
91
160
132
134
125
118
121
116
105
185
87
93
89
158
100
149
100
107
113
109
76
139
105
98
139
76
169
134
133
96
49
124
157
131
102
113
69
119
104
110
139
121
102
68
95
129
137
83
54
49
105
77
108
98
129
77
154
81
81
111
105
77
96
59
125
95
95
135
127
82
103
115
108
138
90
69
94
133
102
149
108
128
155
122
144
107
120
125
109
122
144
49
176
102
119
81
98
129
160
144
98
134
129
130
103
74
126
98
54
80
131
97
54
102
123
87
134
123
143
103
169
107
105
113
82
139
151
105
105
89
54
108
108
114
154
78
76
108
84
77
108
106
95
176
85
102
112
103
90
157
101
103
185
126
114
114
189
102
73
54
59
91
95
130
119
148
87
155
135
81
105
95
136
54
182
133
108
89
143
140
77
102
138
99
110
138
108
141
91
126
91
133
117
177
129
76
136
140
102
102
108
90
125
103
72
127
108
180
145
61
101
141
136
125
120
149
142
101
115
131
68
138
113
135
108
138
134
95
96
128
108
122
99
138
127
103
140
54
138
65
80
126
93
128
97
76
159
148
141
108
110
144
81
124
74
158
98
106
97
191
133
102
83
133
121
54
147
135
133
87
54
137
112
139
95
95
105
108
103
131
115
113
85
120
100
98
104
133
140
99
103
137
101
135
112
138
67
101
128
92
96
59
118
128
113
101
90
109
159
92
87
144
95
149
96
144
129
126
82
139
125
75
144
95
127
125
163
54
95
118
113
103
172
95
67
68
149
106
83
166
87
129
148
131
140
177
89
141
108
144
117
143
115
74
123
123
120
119
102
158
146
112
93
176
124
126
107
115
117
103
54
76
179
112
178
129
100
138
135
125
123
54
176
96
118
67
148
118
103
141
127
180
177
117
78
180
59
107
143
54
68
74
117
102
116
143
115
81
93
161
49
90
133
107
101
78
67
163
132
96
90
98
139
68
96
102
92
123
88
81
106
83
122
106
100
140
105
139
107
98
135
113
143
139
108
115
115
111
68
102
90
102
188
179
90
67
54
116
147
120
81
110
96
189
81
95
148
140
122
153
122
160
122
65
70
74
94
102
92
112
158
106
104
135
101
88
139
72
107
118
140
108
81
131
82
97
95
83
108
103
115
98
113
97
144
214
103
96
67
154
118
104
180
144
102
105
140
144
131
76
139
122
128
150
133
177
90
117
77
127
99
124
127
99
180
111
93
105
98
102
89
115
143
149
104
92
106
147
97
108
126
113
126
113
161
84
118
98
120
90
114
135
143
148
132
57
112
105
101
78
103
143
133
135
177
97
97
93
111
76
93
156
82
163
141
133
131
177
108
145
122
95
76
148
141
189
122
147
97
104
108
140
95
104
143
102
157
121
97
126
133
135
109
158
133
107
154
95
133
101
96
72
76
138
95
146
141
90
104
108
95
108
95
107
140
78
102
104
173
109
104
106
140
118
121
155
109
136
184
102
107
76
122
95
134
91
133
107
69
82
102
119
108
91
144
110
105
77
162
149
157
102
95
116
124
68
145
150
129
131
79
149
125
135
169
90
169
134
158
167
54
107
132
141
119
103
113
151
150
178
143
112
106
81
123
135
115
134
90
115
77
59
125
97
153
105
82
108
133
131
103
155
99
96
153
102
108
102
98
91
158
84
115
82
157
147
90
83
77
54
97
78
144
135
166
121
110
95
125
93
91
113
102
54
165
72
107
148
144
92
113
113
98
76
121
170
153
125
87
80
177
102
123
130
125
102
96
49
104
152
102
59
129
54
135
106
112
76
102
140
78
76
126
104
89
144
97
112
182
110
81
116
135
110
119
114
191
125
204
120
98
113
95
153
83
122
115
90
113
98
133
124
112
87
127
85
95
118
90
99
113
66
117
158
144
112
118
132
122
124
159
110
83
109
162
117
110
91
112
135
106
77
145
82
102
90
76
115
120
142
54
155
112
157
95
93
202
138
121
87
125
54
162
89
116
127
98
102
158
103
131
152
148
103
129
78
140
139
81
65
102
188
138
78
76
125
90
105
103
92
89
134
150
130
119
108
129
149
118
122
49
98
105
98
131
104
112
90
164
103
166
143
140
105
108
102
80
167
149
87
146
140
84
112
139
134
125
130
113
117
103
87
49
108
90
147
101
137
195
113
67
76
98
95
160
119
153
102
54
125
141
106
113
105
145
108
151
153
124
100
120
128
142
110
120
139
108
49
148
144
159
69
106
157
135
83
133
135
119
85
87
119
179
140
109
69
126
118
59
105
125
54
95
139
74
93
95
117
54
118
96
153
140
117
156
135
95
149
136
119
116
102
170
145
76
103
146
78
108
124
131
102
108
54
89
74
54
106
103
84
87
103
111
143
147
108
127
95
147
81
102
146
113
127
120
96
140
90
141
61
176
82
54
98
144
153
73
111
54
112
149
112
97
99
113
103
103
147
112
150
103
123
142
115
124
125
113
147
165
177
97
124
90
128
100
108
158
133
105
153
131
140
74
101
127
102
122
122
96
119
67
122
178
102
78
108
143
165
73
113
110
131
97
106
94
114
129
95
125
202
90
76
128
156
103
96
129
123
141
104
96
109
144
54
99
96
112
122
98
93
104
146
82
127
54
108
54
86
155
157
139
120
143
54
144
119
103
144
179
164
165
54
158
107
177
83
119
152
127
134
98
92
54
108
54
143
98
148
54
113
124
135
115
81
110
135
109
125
104
93
99
156
83
130
142
121
105
79
143
120
142
104
145
82
116
81
146
120
102
93
134
160
107
108
80
54
129
142
109
61
136
81
95
145
106
153
177
171
80
135
178
88
196
90
106
136
132
139
139
102
95
119
77
88
135
110
124
117
86
125
145
108
117
108
155
132
115
102
89
111
128
82
125
90
85
123
102
98
127
102
125
160
102
130
100
118
76
119
95
90
172
138
72
129
97
122
107
129
121
87
115
146
108
74
89
108
97
59
144
61
103
76
88
173
124
91
116
156
109
95
107
74
105
163
151
108
93
178
147
146
78
109
98
59
116
113
134
54
83
112
177
116
148
98
158
83
108
138
108
108
98
98
99
105
54
166
108
93
87
102
81
153
117
108
106
103
95
190
99
113
113
109
107
130
145
83
103
128
82
125
77
101
77
143
109
108
92
77
95
135
144
155
90
99
124
123
137
127
180
74
54
163
87
130
169
100
118
102
124
45
81
133
175
76
97
149
99
67
129
135
114
153
54
142
160
133
87
180
83
149
103
131
85
80
96
102
77
135
83
102
136
89
158
85
107
80
177
90
102
98
100
115
91
116
96
147
120
137
138
80
121
169
168
138
175
93
95
78
137
162
148
83
115
110
141
162
90
156
107
118
131
104
195
165
114
111
120
143
172
143
130
104
113
119
96
132
103
129
119
125
121
112
103
140
122
103
91
125
142
133
108
139
129
153
54
112
81
82
96
135
163
109
132
124
141
112
95
142
153
129
113
143
139
117
95
104
49
70
54
135
133
131
133
80
126
112
105
147
96
167
122
125
108
144
82
158
136
78
95
133
97
96
67
108
117
95
123
127
124
114
54
131
107
143
179
106
153
120
120
109
98
102
145
154
112
106
131
81
77
98
108
49
101
135
151
95
155
158
110
74
54
87
115
115
106
74
95
100
113
101
128
134
129
54
118
121
98
87
108
95
91
126
54
120
102
107
95
120
85
174
68
95
158
87
82
109
135
108
118
93
98
115
133
103
133
128
114
88
140
120
103
114
157
116
107
109
147
54
153
81
127
106
91
88
127
129
119
89
141
108
122
96
166
104
91
127
134
146
115
78
108
121
86
149
59
104
81
59
152
131
98
159
120
54
82
136
59
100
141
136
158
98
113
129
103
151
107
105
108
54
103
179
144
151
103
103
127
81
80
54
94
71
82
180
106
77
153
105
124
109
105
121
126
86
89
107
113
113
127
154
82
130
135
91
85
105
98
141
106
103
73
98
54
115
171
68
108
90
152
142
95
94
125
180
156
134
54
96
110
116
74
150
83
118
106
161
90
138
114
119
115
96
139
114
101
49
130
106
144
74
148
75
131
129
127
42
117
123
126
93
134
100
102
144
95
133
112
146
126
186
110
125
126
81
149
69
45
148
95
120
68
82
54
121
127
114
145
84
148
177
113
148
96
95
85
49
150
125
107
103
123
135
121
119
90
106
108
87
108
156
86
177
98
108
137
95
115
104
68
84
143
102
102
108
125
77
115
149
49
105
115
98
120
84
109
95
76
127
177
114
139
159
68
95
54
90
135
104
112
99
158
105
67
93
83
152
105
129
61
88
76
72
141
95
139
81
87
105
110
116
134
98
100
129
54
113
129
103
54
103
54
54
81
114
94
167
168
113
143
87
131
49
95
67
154
131
102
128
134
108
117
139
102
92
136
129
102
113
120
112
85
167
98
98
82
98
167
92
72
130
92
129
156
133
54
113
102
84
164
108
123
109
61
76
111
81
135
96
145
125
95
77
143
137
119
75
129
147
104
131
119
196
92
115
153
145
153
114
115
105
91
61
98
83
126
156
186
143
105
133
159
85
108
95
81
139
102
109
76
121
133
93
133
95
90
138
97
80
76
105
76
99
82
140
128
93
178
97
194
102
100
103
126
114
103
108
105
103
98
61
102
108
107
98
120
113
109
135
105
110
116
125
81
96
88
54
154
107
100
172
128
125
88
98
132
149
82
143
136
114
95
129
133
127
104
110
100
136
105
114
106
127
76
75
139
141
143
95
135
81
123
143
107
137
146
115
113
146
96
68
59
117
54
95
103
139
130
90
100
135
120
185
123
125
110
102
114
99
168
127
109
130
98
118
122
112
54
76
96
115
134
167
106
104
158
177
136
68
158
126
93
95
152
117
82
152
145
151
129
121
145
116
162
104
67
95
135
160
98
178
120
123
124
144
153
59
154
155
151
114
116
146
133
158
106
104
106
54
108
135
102
129
158
81
124
135
106
130
100
122
77
54
108
128
115
108
124
133
87
180
81
96
129
155
81
145
69
101
120
152
131
140
103
122
73
144
116
124
102
120
135
158
135
87
81
148
106
137
123
59
95
133
108
145
138
93
141
83
156
127
126
113
143
118
99
95
135
153
119
90
65
129
49
163
108
96
127
123
95
155
133
125
111
106
120
102
133
102
125
108
124
98
147
148
126
74
149
156
81
125
95
112
90
108
99
116
61
87
143
134
79
104
77
102
95
135
120
95
106
85
129
98
109
105
104
102
140
87
104
95
109
108
142
98
170
137
87
138
98
142
87
149
157
54
139
96
107
103
107
110
135
96
105
127
125
95
83
102
125
155
102
148
118
95
106
100
135
131
49
49
135
54
126
113
160
113
81
186
123
129
90
140
77
194
73
92
118
152
90
54
160
123
94
54
103
103
127
147
120
139
176
111
143
102
83
102
125
126
54
91
121
54
98
81
108
104
102
74
188
113
156
131
90
125
98
110
98
80
147
135
103
98
77
54
128
129
110
93
107
106
148
110
125
99
117
148
93
108
131
105
115
110
92
74
113
116
108
98
49
122
76
127
95
133
111
145
92
126
192
139
144
90
139
113
76
132
78
148
83
93
108
98
85
95
102
113
101
152
105
128
108
113
126
49
188
122
90
124
124
94
61
102
130
97
54
86
158
115
124
91
106
133
153
86
139
96
115
186
106
110
141
81
101
77
150
95
143
81
83
149
142
114
115
90
144
87
137
93
95
92
99
100
123
104
95
169
153
87
93
94
109
127
98
49
186
106
148
54
54
49
90
146
124
83
98
111
98
124
137
113
118
165
140
153
63
128
155
59
106
106
78
87
143
145
172
108
122
114
122
113
77
76
90
54
118
166
124
72
102
146
123
54
107
108
49
106
141
148
96
102
143
116
133
121
102
113
130
101
90
144
120
120
151
101
163
143
91
156
109
78
160
133
150
121
105
127
118
132
158
95
157
128
120
142
49
90
117
143
130
116
59
123
176
91
124
108
77
69
59
54
97
138
118
171
124
141
89
110
137
81
81
123
139
107
114
49
125
127
148
113
123
95
151
176
111
85
105
152
97
96
59
93
151
81
125
92
108
193
116
95
102
106
87
61
106
110
110
100
111
98
97
113
93
108
126
176
122
90
87
112
159
148
87
109
98
142
83
145
103
82
90
151
102
49
112
78
74
91
133
112
95
69
96
88
102
98
111
142
59
76
183
76
54
102
200
108
49
114
119
127
98
94
148
92
125
103
113
98
80
95
152
148
106
119
98
126
110
118
147
156
145
149
123
140
145
102
98
81
98
73
101
133
105
146
108
54
143
123
154
108
108
81
102
179
117
129
134
110
93
67
118
103
152
164
98
76
90
164
96
111
147
80
130
91
177
165
122
111
118
130
107
111
162
143
74
106
105
93
145
98
125
122
90
115
90
117
77
54
87
120
167
115
79
98
106
133
54
100
93
133
128
143
98
95
121
98
93
95
150
126
137
90
97
158
123
122
113
94
77
95
107
148
97
61
85
113
100
87
194
94
123
113
99
83
115
94
106
129
81
150
128
106
165
156
144
87
127
135
90
144
103
98
103
126
95
113
54
114
119
120
81
95
85
94
133
98
107
193
125
122
61
128
146
122
105
105
110
121
65
136
112
95
49
136
117
144
99
145
167
115
113
110
111
74
163
110
108
103
126
98
110
119
161
115
54
103
177
127
81
142
132
95
133
118
77
70
67
102
113
120
125
69
100
111
139
74
90
106
143
140
106
91
108
110
104
95
127
77
104
76
119
49
85
73
118
49
147
89
54
177
97
90
124
117
150
119
148
85
102
133
82
68
100
77
102
100
177
91
127
122
144
134
161
141
125
152
107
140
134
67
103
120
121
138
115
100
96
132
92
93
128
95
110
97
74
142
108
79
100
108
133
134
85
91
49
54
94
76
128
90
99
138
106
143
128
118
104
164
98
87
157
125
168
95
117
118
102
135
98
108
142
98
117
151
123
106
194
128
147
104
102
76
88
88
107
138
128
84
192
98
141
133
88
121
118
141
132
129
116
49
122
99
112
130
129
180
123
172
95
124
113
93
127
124
81
120
118
142
104
134
105
100
133
131
152
120
161
118
156
123
134
162
95
95
74
144
109
113
129
109
146
109
81
143
104
98
153
131
77
111
133
106
120
120
54
108
186
74
131
67
85
149
140
108
98
104
83
167
108
145
82
85
108
134
132
108
83
81
109
112
54
92
54
105
133
142
170
151
95
49
127
108
92
108
87
81
109
149
165
129
132
77
125
137
97
112
90
124
94
155
87
160
114
105
121
45
130
111
83
54
133
54
69
111
84
125
80
102
81
123
126
140
96
148
126
170
49
169
125
135
77
87
182
97
144
107
133
112
147
120
180
111
120
108
92
67
68
101
153
186
129
128
130
85
162
86
54
89
105
143
105
78
103
150
82
113
87
129
100
104
131
81
140
76
90
128
128
97
101
109
83
92
138
54
124
158
78
135
134
158
49
102
152
133
90
78
135
99
105
145
115
104
104
114
81
97
49
137
132
138
115
116
120
149
151
106
91
156
90
126
180
141
85
100
54
139
128
77
191
124
119
49
99
143
107
120
115
148
59
122
139
105
117
119
98
158
99
108
107
129
59
131
131
125
137
112
88
105
87
147
126
105
133
148
129
162
127
59
103
100
113
174
103
105
143
110
155
148
113
76
137
130
104
105
160
144
74
134
137
81
166
112
88
148
77
146
103
119
155
153
87
173
93
139
102
93
107
128
116
101
124
111
171
54
161
102
127
108
91
118
114
118
141
130
114
201
131
95
102
87
108
108
168
105
113
74
113
90
107
77
116
102
126
98
65
141
135
100
157
138
95
127
108
81
126
149
93
102
125
136
96
81
108
130
87
141
112
177
128
121
79
68
94
143
127
113
82
76
116
105
107
82
139
158
81
147
125
102
123
124
49
164
97
144
127
125
123
126
89
125
192
147
96
148
73
92
98
74
135
87
115
103
83
78
139
82
100
151
145
114
76
101
97
144
127
144
158
147
103
140
127
125
78
54
114
134
95
126
108
110
103
125
86
113
159
140
122
115
143
144
170
109
118
83
193
105
158
108
153
180
129
135
102
170
95
94
54
81
158
107
134
142
100
145
160
126
125
143
76
148
149
135
158
73
102
74
124
49
131
54
95
101
105
119
156
102
163
143
132
82
90
143
96
110
102
78
84
65
54
148
190
148
54
141
100
116
189
101
110
113
108
54
141
106
161
107
118
125
165
91
190
86
157
83
54
113
147
128
112
114
81
151
100
111
173
106
87
81
120
131
102
104
54
106
124
100
116
108
85
78
104
81
135
122
80
107
54
96
131
85
157
90
95
125
127
123
133
150
93
49
156
115
89
120
98
162
149
83
82
74
138
104
87
129
116
177
172
155
159
148
99
97
74
151
129
108
200
54
125
145
153
128
100
114
130
128
127
117
134
90
93
81
136
90
103
115
125
126
54
84
113
82
69
101
164
108
103
154
128
96
136
97
117
119
101
147
104
140
123
170
102
142
103
102
102
177
81
87
137
123
98
120
103
153
110
110
127
115
130
86
117
130
102
139
129
161
141
106
75
160
118
114
95
90
158
105
152
82
151
108
140
170
113
125
87
103
95
54
127
141
91
87
106
103
98
82
88
87
105
98
183
193
89
103
115
79
95
141
106
79
136
104
105
111
131
123
103
108
127
87
165
156
109
143
129
103
103
153
93
95
122
146
119
110
49
129
107
102
152
74
100
106
159
152
131
150
85
128
98
115
143
120
78
99
114
142
105
124
144
109
117
93
80
92
54
98
142
121
105
54
96
54
159
99
68
78
54
135
148
108
93
114
93
138
138
173
144
135
101
68
177
106
112
106
81
102
89
120
128
108
196
97
139
148
87
81
78
103
166
97
118
166
92
99
90
115
113
115
134
77
90
187
103
107
77
105
92
128
118
93
83
102
118
139
121
146
127
69
76
98
96
144
128
112
103
90
132
74
93
111
172
105
77
96
54
84
128
81
59
93
117
107
148
81
132
180
92
90
153
133
81
107
96
110
145
111
67
149
95
82
140
119
98
135
146
85
95
102
126
108
112
105
90
108
109
116
145
87
99
132
115
184
119
54
118
174
108
144
146
156
104
113
49
114
102
206
140
124
49
85
77
133
98
109
172
89
146
83
98
119
83
80
120
175
134
134
123
128
112
177
124
130
93
111
146
136
118
122
120
61
106
139
133
95
111
101
146
133
194
90
134
93
152
119
98
133
95
105
103
95
114
94
102
138
115
115
114
147
110
135
113
92
108
128
107
136
143
98
105
148
106
101
90
139
76
128
127
104
135
93
110
54
173
102
111
91
96
107
83
104
81
96
164
128
129
79
93
127
114
193
106
54
139
109
167
157
120
124
92
70
128
120
98
84
107
73
182
165
142
105
54
122
145
73
108
113
49
98
101
131
101
145
81
101
107
194
105
162
124
115
165
140
98
95
111
59
131
133
126
123
104
127
107
143
95
125
99
108
106
162
54
108
98
139
135
194
98
136
82
132
139
113
118
139
115
84
125
133
141
141
128
145
141
88
78
108
98
118
115
90
107
125
136
128
108
115
128
111
115
96
120
78
102
149
148
82
125
140
102
101
95
87
109
125
103
146
101
54
108
169
81
77
145
81
113
153
95
103
150
161
153
141
114
133
139
54
98
133
77
54
182
61
122
102
113
104
130
95
117
115
105
129
163
95
96
141
123
178
80
109
131
127
54
160
117
119
108
110
90
110
90
133
96
79
101
98
81
99
103
177
128
112
96
54
161
126
102
99
164
112
105
125
92
134
110
122
119
157
74
108
82
54
123
133
113
127
113
144
106
135
95
102
127
100
133
92
81
133
115
107
110
95
149
126
117
114
113
107
140
54
156
106
90
108
108
151
147
98
120
150
104
90
119
96
116
108
106
74
108
113
49
97
121
49
109
107
95
54
160
124
142
147
90
131
49
129
144
98
123
146
116
186
98
126
135
95
92
139
148
123
137
79
93
85
108
177
87
173
102
77
98
133
118
182
96
107
103
119
116
148
129
137
54
120
128
54
69
111
145
144
106
164
177
112
114
95
146
151
118
124
113
99
102
168
191
79
123
157
67
54
129
148
112
95
155
116
133
123
81
138
145
77
198
135
157
122
129
81
110
165
49
95
81
113
98
121
96
102
105
114
148
92
108
177
80
140
112
78
61
158
161
92
133
161
127
78
133
144
82
91
132
130
108
118
97
108
102
193
110
112
104
125
171
122
74
157
158
102
87
96
89
76
168
125
125
77
140
122
125
175
135
54
82
101
96
81
112
132
108
133
107
177
118
162
133
95
134
161
69
140
97
98
137
85
160
68
98
95
112
143
121
82
110
185
102
101
125
109
148
68
91
112
125
151
103
131
120
87
161
127
120
115
95
89
102
110
81
98
90
99
122
93
102
118
117
119
102
141
146
113
141
111
106
129
169
155
79
137
98
158
143
114
106
129
97
133
130
138
167
103
109
74
125
104
144
191
169
87
103
90
98
61
120
87
188
133
101
93
177
120
122
126
128
96
152
116
125
128
103
84
139
112
74
158
101
123
190
155
102
128
127
107
115
148
139
112
115
144
115
135
161
98
109
158
74
95
139
132
147
91
133
82
127
135
153
108
101
132
152
128
125
124
181
108
102
153
54
81
131
113
108
82
95
143
105
84
119
61
114
135
118
67
80
119
102
114
49
134
165
121
132
154
125
147
133
108
147
157
103
132
125
103
86
127
107
115
78
69
129
114
147
146
93
128
68
82
148
96
95
78
102
81
150
113
131
104
133
97
82
82
106
168
106
144
115
102
146
80
119
54
158
108
68
96
81
87
76
105
95
101
108
150
186
158
82
71
88
121
80
87
59
104
107
123
85
99
80
165
139
128
119
102
84
95
180
98
149
112
107
93
87
49
102
103
98
120
86
127
123
127
127
164
122
81
108
130
68
69
54
118
121
83
95
149
98
143
101
102
122
140
95
158
76
143
153
114
148
88
78
131
49
172
143
173
105
108
110
177
126
116
68
149
63
122
113
49
107
102
127
61
125
135
143
105
106
54
114
133
117
103
127
117
129
95
49
116
101
139
102
103
125
113
158
112
83
153
121
74
98
139
157
108
146
83
94
106
128
129
54
129
142
101
155
150
129
111
82
142
119
169
137
73
139
79
100
107
136
104
116
164
116
97
137
97
143
113
90
102
138
150
78
102
112
131
139
104
102
67
128
49
99
104
90
78
134
108
152
136
108
133
104
94
124
54
99
61
54
110
125
90
59
116
168
117
79
120
111
83
133
143
95
121
115
98
141
136
71
147
125
112
129
95
193
140
49
116
142
102
139
54
113
118
102
148
149
114
117
128
142
90
173
127
128
93
159
104
54
139
143
158
143
95
143
126
105
54
133
115
156
148
197
119
134
134
160
90
159
77
90
127
143
119
159
81
82
89
140
77
87
120
102
175
120
129
103
96
148
76
49
170
127
123
135
117
123
98
81
97
139
130
141
49
81
74
45
84
129
114
144
124
148
133
144
81
158
106
91
109
154
141
148
143
141
125
140
133
90
133
114
95
121
95
153
81
128
118
157
144
108
154
141
91
107
109
120
100
133
54
125
67
126
105
124
110
145
91
90
81
113
98
109
109
49
156
61
96
131
131
79
103
95
114
81
132
81
96
136
142
154
108
106
154
135
139
90
103
54
83
77
130
81
54
113
105
103
94
115
158
146
155
160
102
165
81
83
123
115
148
54
152
138
103
118
156
151
77
125
133
80
93
137
121
142
105
54
108
130
98
131
122
124
113
91
85
131
118
146
142
188
68
147
76
78
179
134
118
125
123
114
97
108
103
109
98
73
180
74
98
100
97
79
148
97
136
144
123
136
129
102
112
108
83
114
118
112
96
88
106
102
101
81
140
130
87
96
98
102
95
156
128
90
136
158
95
178
117
93
200
98
112
138
98
78
87
54
99
126
102
113
155
97
113
143
116
141
131
113
117
77
150
69
113
101
67
99
103
106
113
42
135
95
122
81
156
126
95
142
133
108
104
140
68
138
93
145
110
102
111
114
149
110
190
110
153
147
87
140
59
136
83
120
141
91
78
125
108
134
143
106
100
188
94
122
83
108
109
93
109
107
110
103
95
83
93
97
172
200
87
122
76
123
103
95
131
145
134
119
98
78
107
153
95
115
103
120
107
101
93
133
110
157
108
81
131
119
54
76
95
90
94
116
125
105
96
95
101
134
92
148
97
156
123
132
154
81
119
115
59
130
102
54
136
133
108
100
105
98
131
139
115
54
106
110
108
45
59
74
125
162
73
138
101
128
114
103
151
62
115
89
146
191
95
139
169
156
129
114
61
113
144
85
131
102
85
106
141
117
102
103
152
219
105
135
127
49
115
154
87
169
92
61
167
123
98
95
125
125
128
87
108
140
106
113
104
84
83
157
76
153
173
102
78
106
147
80
191
82
77
135
130
147
129
139
147
89
102
108
146
109
139
133
98
114
103
132
143
133
85
114
188
121
86
186
84
95
96
96
133
114
121
115
149
108
91
115
148
145
121
95
54
83
152
109
98
127
116
102
123
95
167
106
98
199
119
145
110
134
127
140
219
96
176
153
125
99
129
146
147
89
85
97
101
162
158
139
61
113
108
106
148
129
87
69
98
113
132
130
49
95
122
154
104
114
54
147
78
76
140
104
135
104
115
148
98
125
118
49
108
96
141
93
54
54
54
87
150
98
95
114
108
135
108
113
180
132
90
88
102
74
135
112
97
113
144
120
82
111
143
168
117
157
161
111
76
90
54
156
74
90
139
83
82
134
95
126
84
123
143
127
140
93
93
54
61
85
113
90
93
128
106
137
104
114
110
133
118
127
113
139
120
89
74
133
81
139
163
49
133
145
120
143
129
91
126
104
177
160
108
119
134
118
77
140
108
91
106
112
139
85
124
119
90
83
144
98
76
74
128
122
107
88
140
110
85
96
95
170
129
105
123
102
148
128
122
123
98
112
93
93
54
142
90
109
118
101
97
99
112
94
83
155
110
112
93
149
157
117
112
72
68
127
148
99
168
149
155
95
177
138
103
127
81
102
134
127
119
98
124
105
112
122
112
117
98
177
135
161
125
110
139
103
145
143
108
189
83
130
96
103
125
98
103
103
102
103
120
105
115
110
98
107
102
162
117
104
76
84
82
112
92
93
143
105
142
72
160
67
111
96
104
131
108
79
111
128
141
119
133
77
128
59
91
148
132
116
108
116
96
120
78
81
54
82
133
54
143
124
130
102
124
59
111
126
91
92
141
77
91
138
140
135
154
82
108
109
61
161
129
148
144
142
188
106
143
144
133
130
96
105
89
54
174
105
105
131
143
140
81
127
118
96
93
180
93
82
83
98
113
108
95
82
144
109
102
95
115
112
105
79
111
106
99
140
83
108
179
123
135
141
143
81
149
120
77
99
95
118
185
137
117
133
146
88
125
166
155
148
146
94
138
122
59
104
76
99
185
116
112
150
95
99
96
49
149
124
139
111
102
102
59
102
158
144
109
90
99
54
76
98
116
142
86
125
141
98
111
145
144
127
125
103
82
89
95
116
102
125
108
103
98
144
94
61
151
118
54
102
107
101
110
167
119
123
109
126
98
54
95
91
108
45
71
137
100
168
145
147
115
105
123
105
111
108
105
103
150
155
116
206
150
108
167
113
110
121
78
90
142
81
75
103
83
134
90
129
82
104
145
132
87
115
119
117
109
74
95
94
80
145
103
91
115
104
135
110
95
148
96
107
120
121
103
83
108
103
98
98
106
83
54
117
144
113
85
98
79
110
103
112
103
130
84
154
190
83
74
99
151
102
131
123
102
120
96
118
108
106
84
87
103
91
117
107
145
98
108
135
103
126
106
102
103
137
133
93
132
141
59
105
105
115
54
90
146
68
78
123
98
110
176
112
113
96
110
49
131
153
123
92
107
102
145
160
130
85
108
103
108
102
89
115
54
155
172
85
98
90
156
213
108
54
54
167
148
138
92
116
158
146
95
81
110
49
54
118
135
105
102
121
145
98
108
104
102
84
177
95
108
125
100
54
82
108
82
118
103
140
99
126
144
95
108
108
109
157
113
108
74
103
102
87
59
110
157
101
54
128
128
86
125
106
95
91
121
146
117
131
103
121
161
107
74
138
117
95
134
158
146
118
93
54
158
49
108
105
125
148
76
89
218
95
93
123
147
61
128
135
82
124
144
140
141
132
87
89
95
81
133
127
122
156
158
107
81
173
81
78
132
127
112
99
119
153
126
145
152
149
130
91
110
105
133
122
68
83
148
83
98
102
105
85
94
97
143
140
151
108
131
54
79
105
104
112
85
124
91
68
95
157
74
144
108
49
145
106
101
146
163
172
95
143
121
165
59
147
93
134
120
98
177
115
94
115
115
81
111
85
158
102
142
107
59
133
120
98
135
154
172
76
141
196
114
131
103
108
61
85
109
127
113
128
117
113
81
144
98
87
80
81
102
103
131
67
76
140
131
79
122
116
113
162
102
98
119
151
177
90
138
54
157
95
77
103
123
149
163
54
87
112
95
122
95
49
156
150
93
98
103
200
144
98
118
105
79
124
159
140
54
170
123
146
163
123
102
95
95
186
94
83
81
150
98
68
78
141
74
98
108
130
163
99
150
81
102
108
83
116
67
104
133
99
131
171
170
76
128
54
127
96
109
105
95
157
54
143
129
59
158
74
89
135
98
115
122
105
98
54
125
98
142
105
49
128
98
173
54
116
101
134
98
143
69
112
78
82
167
105
185
115
163
139
100
74
144
115
128
143
94
136
107
108
90
102
123
126
148
121
84
122
163
214
101
163
128
109
120
227
148
103
122
95
69
125
138
78
120
119
98
144
158
151
149
78
117
93
97
200
93
168
170
170
133
135
92
105
102
169
141
102
74
116
144
141
177
118
98
77
164
117
128
108
68
73
110
70
144
83
133
81
141
115
155
96
81
98
148
114
122
133
106
103
104
78
119
49
103
163
108
131
74
85
112
123
95
87
118
128
112
103
106
100
125
128
98
131
96
98
114
83
91
146
102
144
175
114
76
139
135
105
121
95
131
101
108
154
145
80
135
102
97
106
129
160
78
123
141
98
167
166
105
140
107
74
95
154
84
70
134
149
90
80
103
49
135
59
115
49
88
165
97
96
95
123
96
94
59
146
122
108
77
130
69
108
102
95
77
150
138
99
137
74
203
93
148
106
144
169
133
59
138
180
143
144
142
89
108
116
147
89
154
49
104
87
108
54
94
137
112
103
123
98
107
99
116
134
90
90
78
115
88
121
125
125
54
154
127
101
144
102
162
147
106
129
94
98
102
120
129
54
95
131
132
93
154
106
170
147
97
92
113
131
78
148
108
145
102
116
105
129
94
54
155
108
59
107
99
176
59
116
98
171
157
87
127
149
154
98
126
78
96
140
105
135
129
127
108
83
151
116
115
147
138
129
112
73
108
139
59
138
126
118
100
95
130
108
76
108
127
137
106
82
111
147
143
125
98
111
93
57
151
117
93
103
115
136
111
129
59
139
93
100
117
112
49
54
108
153
149
77
116
61
144
118
91
105
144
147
117
128
76
82
102
130
111
59
145
85
112
100
122
148
128
107
61
108
121
105
137
129
154
131
86
97
74
108
138
98
137
54
111
107
123
119
106
87
79
107
169
135
130
96
104
93
158
144
149
96
160
128
101
108
182
102
104
165
115
127
102
139
144
83
78
92
81
81
129
102
116
108
93
120
87
162
112
105
146
103
102
190
98
76
144
49
169
128
98
127
151
82
116
87
116
169
95
100
120
87
135
137
127
122
91
108
163
148
160
102
87
67
117
121
105
173
177
114
123
144
109
142
69
98
100
143
150
127
172
170
105
115
110
133
127
81
119
95
151
94
81
115
108
54
123
96
137
106
110
104
103
114
174
54
119
93
82
74
92
167
78
129
101
77
81
61
100
54
124
92
218
125
150
122
144
133
108
114
155
95
136
148
123
54
87
117
107
112
49
108
59
99
105
135
115
103
80
54
91
105
108
108
94
159
158
158
93
98
135
110
108
144
118
85
139
94
120
103
158
90
132
145
112
94
77
98
91
165
81
90
143
95
98
134
74
68
163
114
85
90
83
102
102
158
110
100
123
111
81
128
98
140
206
139
102
120
90
102
119
93
135
94
168
98
123
98
112
117
162
101
103
179
181
102
97
105
135
76
128
61
144
98
125
90
109
94
81
82
118
102
143
112
111
54
54
113
113
98
128
81
148
123
82
83
121
78
140
107
98
170
117
116
108
102
138
109
155
113
95
110
82
98
72
122
120
49
119
128
121
109
132
108
105
98
90
78
116
122
54
81
138
81
146
141
103
106
79
107
116
155
137
177
106
133
179
74
107
123
122
105
132
125
131
54
110
92
113
170
131
155
54
97
108
92
120
135
120
74
140
123
143
135
106
77
91
98
125
108
122
65
113
97
101
135
118
101
138
167
103
109
106
149
109
87
116
129
148
121
99
117
131
96
117
144
101
111
103
140
92
104
102
74
154
96
180
141
74
113
82
74
54
139
97
74
124
67
129
119
96
95
161
139
139
120
81
152
117
83
90
121
76
98
131
113
85
99
105
107
112
138
161
101
95
81
158
106
126
115
95
96
101
153
54
111
157
112
143
107
74
49
87
116
126
126
133
76
82
175
95
168
105
91
115
135
103
157
124
54
139
102
158
90
106
87
82
129
105
148
142
132
84
97
161
96
117
69
102
172
175
146
131
133
82
144
155
137
135
113
85
138
131
95
121
124
77
135
95
95
137
125
68
123
95
118
102
102
129
112
149
145
119
118
118
135
131
108
125
127
194
148
77
102
178
152
108
80
84
107
87
125
95
120
165
93
102
83
130
97
111
158
129
108
104
101
106
146
93
117
126
133
90
113
85
127
111
131
90
108
106
74
132
103
123
49
74
102
146
154
120
102
131
54
122
61
125
117
81
114
90
74
119
105
76
117
102
81
132
109
94
136
122
157
149
108
151
143
123
144
107
95
98
68
81
111
106
90
74
103
74
211
77
118
111
102
141
125
83
200
132
87
72
179
91
67
150
170
158
145
194
108
133
127
141
137
95
130
80
74
128
123
133
143
196
90
81
77
138
134
134
69
129
105
81
124
78
121
95
107
108
149
122
153
124
156
122
110
142
134
81
90
102
146
80
109
98
103
140
148
140
54
100
54
92
107
98
103
102
163
127
141
113
108
102
103
95
99
54
128
113
162
104
128
111
98
128
95
161
116
157
163
167
155
108
49
200
108
90
148
74
113
163
67
95
115
106
109
74
98
114
102
96
99
108
90
116
152
163
87
81
126
103
120
77
128
103
67
143
138
155
84
82
145
104
84
106
98
160
110
165
116
141
112
134
86
144
179
74
98
81
133
94
98
105
80
129
101
90
180
118
98
131
117
102
90
101
132
90
119
90
103
54
183
94
159
144
91
99
135
82
120
74
108
93
113
98
138
110
136
110
110
194
129
119
132
95
88
107
148
94
95
113
128
115
95
123
124
129
153
103
104
128
101
99
99
87
137
94
77
123
115
143
143
91
138
165
98
150
123
85
95
159
109
100
155
123
96
147
133
120
125
67
98
131
145
108
113
74
74
81
54
121
120
125
101
100
68
84
129
148
111
122
78
122
103
54
95
80
144
121
161
119
113
95
148
93
69
162
152
103
118
88
116
95
115
117
69
106
141
126
88
125
77
158
111
132
82
133
93
178
83
114
165
140
161
181
138
150
169
125
122
111
125
114
54
139
118
143
151
96
134
116
125
133
157
80
157
76
128
78
97
89
89
99
132
141
98
128
97
207
108
124
59
95
153
156
120
116
176
91
54
78
122
130
108
98
140
74
161
126
175
98
108
147
91
152
106
172
100
141
82
54
110
81
145
129
144
105
86
78
105
109
191
169
110
98
124
129
141
87
102
101
135
116
110
173
67
85
132
103
49
105
113
121
129
90
49
168
145
106
151
119
125
116
108
103
74
148
61
143
135
100
59
137
49
154
162
92
83
102
145
101
116
108
95
72
49
111
73
115
83
156
76
92
87
121
143
54
98
138
102
178
167
125
125
125
95
114
69
118
145
127
102
108
151
135
145
76
145
95
98
95
49
135
131
108
102
113
74
125
54
141
100
144
141
102
182
107
103
98
157
107
125
152
105
76
54
155
93
122
77
115
125
95
54
154
114
103
95
113
120
114
78
108
54
104
108
149
102
147
127
99
159
111
122
108
108
129
119
119
69
124
102
176
54
127
133
71
127
97
147
74
141
158
104
152
91
97
102
49
95
106
98
59
133
94
131
129
138
97
129
140
77
156
98
153
115
102
120
130
96
102
127
158
152
127
136
140
108
148
153
133
167
100
147
82
91
125
103
80
122
129
108
112
98
104
129
112
127
62
93
100
148
135
108
96
151
49
119
213
112
98
114
131
108
113
108
54
105
68
143
117
149
158
122
106
95
54
102
54
105
111
111
105
152
85
95
103
128
131
123
141
180
170
148
98
54
129
120
147
138
72
131
100
138
85
122
108
144
109
93
69
59
128
59
166
141
123
127
98
135
69
131
113
54
113
114
160
95
110
81
102
190
102
125
68
135
118
177
76
84
59
118
111
121
114
106
83
49
69
133
148
131
127
113
125
93
83
129
170
123
177
164
153
167
107
127
142
61
54
124
141
123
122
110
112
140
108
119
108
107
154
133
121
49
127
144
120
107
87
62
200
98
180
78
81
128
120
116
108
125
83
144
125
69
74
103
127
90
143
54
139
129
141
124
149
152
127
96
140
118
78
89
59
88
106
115
80
108
67
164
133
125
86
106
81
185
149
184
119
69
49
122
126
120
121
95
144
65
93
115
138
146
110
181
172
177
108
121
161
190
154
101
108
54
143
131
112
133
144
124
188
170
118
87
79
87
102
113
144
117
131
101
101
90
125
67
78
127
135
108
102
87
112
160
95
149
84
109
91
103
69
136
113
86
105
74
99
131
113
103
76
90
104
109
127
127
76
57
172
105
125
54
54
105
115
102
102
133
99
153
94
73
125
95
97
107
85
110
96
96
126
155
151
159
96
112
103
124
131
139
74
125
111
164
173
122
68
54
125
163
140
97
83
108
85
122
106
138
102
85
130
137
157
102
160
93
110
92
59
107
119
119
122
121
160
97
116
123
101
77
108
90
127
45
119
140
93
147
91
126
129
115
137
54
148
131
99
138
145
150
133
77
96
135
97
88
103
176
90
68
67
148
98
105
138
131
108
143
143
119
67
102
125
135
176
67
114
94
164
98
141
108
171
135
145
134
107
67
103
143
76
118
148
95
147
100
74
100
87
119
177
133
212
81
123
125
95
131
140
127
112
151
125
93
107
103
128
159
76
102
88
74
101
158
115
132
163
120
144
89
103
152
76
216
108
128
128
161
81
83
176
67
59
108
95
54
107
124
146
161
98
97
112
99
173
80
104
74
109
112
144
102
74
133
90
54
109
54
85
131
59
74
116
120
149
71
134
126
105
143
134
90
90
79
99
69
129
175
135
125
76
103
95
161
136
80
117
108
59
128
74
103
149
147
82
160
144
77
125
154
118
131
119
129
137
102
108
170
190
49
106
122
133
128
91
159
123
91
90
95
98
91
54
144
113
102
192
134
148
103
157
132
115
122
110
116
105
133
67
129
125
154
89
107
158
81
115
107
139
85
103
125
125
102
105
123
145
129
74
123
149
131
103
118
147
131
82
98
166
82
141
128
131
112
138
117
108
115
81
90
74
126
135
111
130
141
140
119
134
78
109
146
92
168
102
137
102
108
54
125
99
110
104
119
96
107
101
86
87
94
117
138
127
102
158
87
54
172
157
54
138
127
95
169
120
125
127
65
129
141
127
125
81
117
74
158
138
146
97
61
189
54
109
120
80
141
131
94
133
149
148
108
103
164
88
149
115
139
77
121
79
108
54
127
127
77
103
165
54
95
126
156
144
77
107
102
67
144
152
82
136
124
151
105
130
110
81
118
147
97
107
112
102
123
138
67
139
126
102
167
105
93
124
105
128
59
126
188
87
97
126
131
122
136
120
105
113
86
102
87
105
112
131
132
118
122
143
131
103
107
115
145
129
110
128
153
102
77
152
102
89
96
105
81
102
106
133
74
158
54
94
149
128
128
85
107
81
108
93
124
158
156
120
108
162
144
90
112
111
122
139
128
80
159
132
115
158
103
92
59
104
123
87
114
113
141
90
135
122
108
108
111
95
144
74
54
95
118
131
87
105
89
171
129
106
93
148
97
143
100
91
130
105
125
115
136
180
145
103
145
95
69
105
156
164
108
130
108
154
103
96
184
115
181
102
102
139
191
133
128
106
100
96
139
111
59
102
88
78
91
72
54
135
112
101
108
115
98
134
121
103
152
126
76
90
89
146
82
89
129
109
94
118
131
155
172
146
199
165
101
129
72
114
92
67
128
102
140
133
174
127
103
108
152
81
108
125
72
138
87
115
95
102
74
90
81
143
105
54
116
95
133
115
116
54
93
125
102
95
101
102
103
105
107
147
79
95
97
95
194
82
82
102
158
153
161
77
158
159
54
101
128
76
96
127
83
142
143
122
98
116
87
93
128
85
95
125
95
158
160
112
96
90
117
49
134
144
133
121
140
146
127
117
103
88
127
152
140
113
93
116
153
109
96
113
78
152
153
146
114
110
95
101
80
80
92
161
139
98
90
98
112
76
168
132
100
98
110
115
92
91
117
103
115
151
108
82
83
157
96
112
155
125
130
118
153
101
78
74
129
120
104
121
97
108
49
154
160
102
98
141
90
148
93
139
98
95
80
69
73
83
109
135
91
163
108
101
137
117
165
148
95
104
123
120
133
152
176
110
117
73
98
139
127
163
87
108
91
179
98
107
123
153
80
75
49
95
69
108
135
117
108
113
84
83
89
127
133
54
135
143
149
73
102
68
113
83
200
120
125
104
98
124
115
114
121
76
87
91
131
152
177
85
146
49
110
91
113
82
133
110
108
87
59
85
202
103
139
143
54
98
98
95
54
103
97
49
76
61
59
179
100
81
103
83
88
78
113
103
118
97
144
102
213
95
77
122
54
74
111
126
54
82
98
105
113
54
137
168
93
119
98
154
120
96
89
118
111
113
78
181
112
91
122
114
165
78
145
149
105
54
135
118
95
96
135
87
114
116
147
92
128
108
81
90
120
82
93
165
135
116
131
128
120
100
123
119
54
95
138
103
177
87
141
87
157
135
89
156
83
90
139
125
108
124
88
140
81
78
95
177
95
93
100
119
125
111
45
87
108
117
95
135
92
135
142
92
121
54
114
95
67
173
83
109
187
49
99
54
81
102
129
154
132
113
131
127
97
152
117
170
83
118
118
108
133
102
104
95
106
188
102
98
115
85
89
163
142
103
159
105
124
151
132
189
110
95
100
180
131
128
57
105
103
107
128
115
82
131
167
129
82
95
138
109
185
106
89
120
127
133
105
131
102
82
127
59
137
96
95
90
95
165
70
163
113
123
131
107
80
106
54
82
113
122
67
150
85
133
77
114
122
91
148
104
95
143
54
138
136
108
127
135
116
104
85
136
81
121
108
109
102
90
100
177
81
93
135
179
80
106
142
121
122
148
102
95
150
142
107
118
103
90
87
54
140
150
79
129
95
154
129
147
133
133
124
120
100
95
94
131
119
42
124
124
95
69
123
54
108
130
98
127
156
105
90
97
92
139
102
118
59
164
155
108
95
105
120
154
54
54
141
98
135
145
69
124
144
169
125
114
116
77
124
136
112
103
83
49
78
131
109
82
102
67
144
116
79
81
100
108
108
92
103
102
137
125
102
114
113
131
74
67
98
145
96
49
108
144
92
54
148
111
108
132
83
109
123
102
83
104
119
94
102
108
158
119
124
95
116
105
159
98
140
124
131
127
102
106
156
108
99
157
99
74
135
130
79
131
59
109
141
71
99
101
145
131
133
107
83
134
87
163
98
98
82
107
140
121
128
59
67
143
74
93
157
113
72
133
137
144
49
98
101
116
108
91
124
179
80
125
115
143
95
148
113
108
135
113
156
128
128
152
77
101
146
175
125
143
92
99
134
168
129
96
54
81
139
144
98
137
112
54
102
108
165
82
97
114
146
105
122
82
121
54
116
97
101
143
134
95
98
133
101
90
103
147
102
117
175
96
125
91
92
118
100
77
144
123
128
95
97
133
90
96
139
104
108
135
165
133
98
143
154
145
143
68
131
114
128
87
93
172
95
112
125
131
80
77
119
131
142
86
97
142
152
88
78
78
169
89
107
102
117
104
135
134
95
142
94
76
59
107
114
112
99
137
111
133
106
86
112
145
129
161
105
169
149
80
114
152
110
117
158
54
82
148
98
130
128
145
172
54
98
81
131
109
119
129
109
98
78
98
79
108
148
112
174
148
129
108
98
137
68
105
116
83
102
125
104
153
54
179
137
96
200
45
77
116
115
132
112
122
104
97
108
99
87
122
102
107
140
110
120
90
128
127
120
106
108
121
69
68
72
163
162
93
133
54
107
129
102
169
116
128
107
100
144
156
127
68
113
127
151
142
76
98
98
84
119
152
125
54
163
106
81
104
102
81
113
146
162
161
181
156
110
49
125
151
100
110
54
133
158
118
120
54
97
131
106
117
128
99
112
180
119
118
87
81
90
103
112
176
133
123
151
124
144
137
96
143
68
122
143
138
182
151
134
143
122
121
112
130
97
144
148
73
98
130
136
102
133
101
112
133
196
104
169
121
143
90
54
143
76
133
130
54
107
85
49
95
134
106
140
103
75
102
117
81
76
115
171
129
117
105
117
95
97
157
113
130
91
125
67
90
111
115
137
107
59
125
127
128
139
59
134
81
54
126
167
95
112
141
101
77
118
102
106
103
74
145
90
96
121
61
141
141
83
107
133
103
104
98
81
131
105
121
127
138
61
92
106
172
141
106
115
108
141
81
89
76
137
82
77
159
155
125
130
128
143
159
95
81
135
129
140
49
49
199
96
167
49
54
117
81
125
142
135
124
157
81
139
98
91
134
106
129
146
59
113
111
145
145
68
68
76
153
128
74
109
120
118
75
74
54
147
91
74
101
135
144
134
90
81
61
95
130
156
147
128
74
119
155
138
132
90
107
143
61
96
108
87
87
81
102
108
129
101
97
119
115
168
90
147
157
94
77
119
142
103
121
172
142
140
144
121
105
87
106
67
195
115
152
102
91
132
49
77
102
111
102
127
132
89
87
136
154
134
150
153
137
61
81
102
108
141
116
140
133
110
93
138
73
130
151
114
151
138
96
158
84
54
107
167
105
82
117
87
108
98
194
195
106
125
144
135
125
102
164
54
87
123
124
109
100
89
82
105
102
125
97
54
54
119
102
146
85
116
113
144
107
118
150
78
103
90
162
96
103
185
125
144
69
108
101
106
131
117
103
190
59
108
118
110
74
144
81
129
95
96
117
139
100
110
108
145
77
150
112
96
116
67
97
72
54
115
111
100
131
97
187
102
102
166
182
84
151
98
54
148
140
95
54
82
82
138
97
59
133
94
123
147
147
120
152
106
98
95
133
132
157
126
81
122
101
149
108
69
80
108
151
97
123
116
173
122
87
139
74
49
90
108
124
160
81
169
108
109
183
135
135
159
103
97
144
137
127
113
98
103
81
98
85
95
155
173
83
74
123
87
98
147
91
99
141
161
90
79
106
137
101
154
142
102
90
90
160
107
98
59
89
120
141
138
98
112
133
108
159
95
141
139
138
113
187
90
124
137
132
146
137
113
68
106
98
87
102
54
145
81
75
168
106
93
124
178
177
103
59
103
54
125
107
113
111
143
102
97
87
148
117
140
108
131
137
125
115
133
74
98
128
92
110
115
127
83
116
113
107
110
103
109
115
149
96
149
105
107
95
117
115
81
122
143
102
131
157
156
118
136
108
61
127
101
147
92
108
97
106
133
126
103
131
140
95
98
125
49
87
49
90
74
100
169
111
67
161
95
158
158
148
145
123
194
102
91
93
54
102
127
117
104
107
74
108
125
67
108
135
108
104
134
101
85
76
161
113
79
111
108
113
106
108
93
80
107
78
87
124
90
143
111
153
117
148
108
128
155
134
128
95
98
143
133
102
152
127
165
97
135
121
87
105
152
108
109
103
105
112
108
81
98
90
120
108
54
87
101
125
130
103
98
75
135
115
146
96
54
190
184
79
115
77
95
83
49
102
97
148
83
83
162
111
131
87
125
121
158
87
95
139
95
73
102
123
116
128
128
172
122
69
135
106
153
144
83
54
93
128
110
108
77
141
105
103
49
95
126
124
111
114
106
179
156
143
138
100
131
127
110
99
155
102
119
121
110
108
136
77
67
103
76
118
49
93
103
116
105
101
76
153
172
108
108
144
68
76
106
118
102
168
121
105
82
87
143
105
67
120
140
81
59
177
107
111
105
160
117
142
102
147
81
131
99
179
144
141
49
96
122
138
107
134
140
90
97
123
89
106
109
125
103
145
117
112
134
177
113
90
108
76
148
140
122
106
108
160
125
102
143
105
101
139
117
103
78
141
108
145
100
114
103
83
132
135
113
54
98
158
77
138
118
121
125
143
78
98
133
125
83
100
171
87
89
144
116
139
113
96
125
92
128
107
145
124
103
138
166
54
120
140
100
108
120
125
59
86
97
131
103
98
117
54
118
99
115
194
78
103
139
78
102
133
108
101
81
104
177
106
108
116
108
69
87
97
112
98
105
144
132
160
148
129
167
82
131
74
97
159
96
80
112
138
123
59
146
82
112
89
102
69
165
134
82
161
125
105
115
91
123
81
98
77
118
106
165
190
82
127
115
77
91
109
128
157
117
93
95
54
129
103
156
91
126
102
118
103
115
75
129
137
124
94
94
168
116
143
79
94
79
150
148
124
100
107
87
194
171
145
88
118
152
96
142
131
152
147
141
103
70
102
82
103
61
96
140
177
160
149
137
122
86
132
147
129
131
114
108
125
140
104
108
191
170
98
133
123
101
133
76
80
108
104
97
85
90
137
112
150
200
136
108
156
87
82
100
156
108
113
113
138
130
91
197
133
149
158
130
134
95
77
173
92
95
88
125
111
182
115
95
95
106
160
78
113
108
137
108
125
98
151
108
111
139
157
128
131
101
97
135
102
97
102
126
135
141
120
141
158
148
105
165
113
113
59
130
130
92
77
153
108
91
110
91
117
90
146
120
74
96
139
162
89
102
118
117
153
106
144
183
102
70
155
84
139
98
69
95
82
67
108
133
81
87
106
169
119
90
107
115
91
120
110
116
103
65
109
140
138
69
148
102
130
54
116
118
121
141
113
82
131
96
78
173
129
95
155
81
112
139
90
180
146
138
168
77
79
131
80
158
134
108
95
190
125
91
125
96
139
155
116
101
65
119
115
112
95
102
132
134
93
106
96
146
67
143
95
151
76
95
54
133
119
146
152
120
95
91
98
131
194
159
125
128
107
140
59
91
91
113
133
172
146
164
123
115
141
141
135
99
102
169
108
132
123
87
113
95
130
119
96
128
97
80
54
96
107
54
88
157
107
54
144
67
125
82
127
133
153
143
121
147
115
115
156
98
111
100
97
131
89
95
119
115
122
135
158
84
136
78
115
131
81
94
108
103
95
147
111
94
160
128
118
112
116
158
120
133
143
135
98
96
145
160
110
74
101
105
108
149
137
66
49
128
106
133
101
82
145
125
98
172
94
143
108
95
110
112
131
135
127
128
140
157
177
108
160
119
132
103
102
159
74
162
89
133
148
136
76
87
177
111
143
125
87
158
140
116
152
100
109
115
118
144
197
87
190
122
96
148
116
104
76
133
103
67
145
88
73
108
119
108
114
132
124
115
112
110
113
129
94
110
95
82
119
128
94
177
139
120
178
86
126
101
95
113
89
130
115
129
125
135
131
99
105
108
146
133
83
118
116
98
96
191
114
106
109
158
102
107
120
102
106
122
80
158
127
81
148
93
112
103
148
67
127
158
70
80
111
129
145
141
139
116
160
168
102
128
151
155
108
131
105
108
157
125
119
103
194
101
136
104
74
129
160
116
137
113
59
87
169
102
153
110
148
94
98
101
124
126
97
119
88
116
98
69
122
128
82
134
91
74
140
163
188
105
112
108
102
140
131
127
81
107
149
125
146
157
133
81
172
136
93
139
90
81
100
104
95
160
122
79
81
54
180
54
110
132
161
102
102
108
120
138
157
128
187
54
90
115
80
156
82
49
145
115
54
135
150
141
85
95
148
69
108
144
127
111
162
87
158
115
180
97
82
149
90
116
140
161
100
123
95
95
119
98
95
100
74
68
177
126
98
96
95
115
98
96
91
118
113
123
95
98
115
61
133
118
77
59
176
159
143
59
148
99
95
98
134
95
87
105
143
107
145
91
87
87
127
103
140
98
124
125
113
119
107
145
156
95
78
131
111
127
129
111
117
97
139
87
156
108
130
177
97
95
49
147
135
120
129
133
118
157
102
81
96
96
102
54
122
109
167
161
106
132
108
114
104
125
105
75
91
127
103
102
95
137
137
105
107
138
113
120
85
117
121
78
123
92
76
123
49
147
108
107
98
94
82
91
146
130
107
192
125
123
143
69
106
97
128
80
128
143
102
123
80
134
147
124
102
149
167
90
128
151
109
110
84
109
135
80
158
108
138
140
61
115
135
113
141
108
161
103
163
80
91
54
108
96
123
106
130
148
103
96
107
98
154
95
98
131
94
126
95
89
81
146
127
123
97
156
144
87
105
177
103
83
90
103
121
146
54
121
121
140
103
114
110
110
171
54
106
102
54
79
93
102
100
172
112
117
83
119
135
108
81
107
90
139
104
158
131
87
106
144
69
143
163
126
99
98
108
90
140
103
76
87
114
162
98
134
143
126
123
87
128
89
155
141
87
82
158
124
156
118
82
133
135
74
144
136
102
158
102
135
119
146
102
82
160
103
111
92
101
96
138
151
177
131
120
95
101
138
83
120
135
158
81
82
149
178
89
152
123
132
78
126
145
167
107
129
105
92
54
135
106
101
115
74
83
93
80
74
101
67
122
106
100
106
74
99
100
127
98
109
125
102
130
113
105
168
102
54
102
138
83
155
105
108
65
111
54
152
91
150
74
102
124
118
119
138
143
85
76
138
124
119
102
120
172
120
169
90
193
125
81
76
108
81
120
112
142
67
149
97
54
154
107
141
163
126
132
65
115
158
159
151
102
110
194
108
74
160
150
118
57
139
155
91
85
177
145
76
145
80
128
98
108
161
67
147
78
115
112
137
106
74
96
134
172
122
155
95
123
90
80
167
110
103
104
90
91
124
89
149
91
89
103
81
83
129
107
108
97
147
108
127
132
98
129
132
89
106
165
107
120
98
170
123
134
73
113
113
167
102
129
126
148
149
141
115
154
111
116
74
113
156
115
167
98
148
117
131
127
143
95
54
82
112
95
122
157
102
128
108
107
154
95
105
105
133
88
186
115
109
59
139
102
88
155
135
98
97
102
145
148
92
87
85
135
110
103
145
106
112
115
137
105
101
89
82
92
103
138
119
150
95
74
119
104
159
116
120
118
149
117
161
142
114
140
87
95
108
127
109
125
138
141
124
103
107
128
74
49
98
90
78
108
132
138
156
125
76
119
150
147
120
81
169
140
103
160
129
121
132
82
131
168
114
80
88
98
67
113
108
102
90
130
157
102
113
125
96
98
127
78
116
94
95
150
94
49
116
133
137
104
54
142
108
123
169
113
156
54
116
105
107
67
91
140
119
93
121
59
153
106
91
49
110
131
171
101
113
110
156
164
169
126
105
138
127
78
84
59
54
155
54
129
129
115
139
159
78
94
54
123
74
54
128
128
124
146
158
115
87
138
131
146
100
121
140
193
153
155
79
94
98
141
121
73
104
147
135
173
124
128
90
54
140
107
148
87
120
160
102
155
96
165
81
159
123
83
90
76
103
87
82
105
104
54
122
98
100
59
67
108
141
128
123
91
98
90
97
112
100
138
118
110
108
122
167
132
168
155
95
88
125
133
144
155
81
105
132
113
54
90
54
54
234
115
131
102
149
115
98
125
115
146
91
180
124
87
163
149
133
110
123
97
90
113
97
116
102
95
49
49
133
105
148
129
95
89
133
78
149
136
167
179
117
162
125
131
135
90
96
116
99
162
93
134
128
132
96
95
98
95
67
54
127
111
127
99
81
81
144
93
124
102
78
113
139
148
113
122
110
96
108
87
68
125
172
138
78
148
116
136
145
65
133
54
130
141
54
125
89
130
114
81
100
87
76
92
83
74
100
77
113
121
134
96
129
148
102
166
110
102
109
108
78
140
104
67
93
125
107
129
87
79
78
106
161
102
132
112
111
119
84
118
76
131
87
97
97
108
102
149
113
82
120
125
146
54
94
117
108
122
103
96
82
191
135
81
108
74
129
121
49
107
109
153
81
195
131
82
118
124
166
140
97
119
139
129
89
120
113
110
130
105
126
114
108
119
96
133
107
111
152
157
96
93
90
112
122
137
95
105
77
67
152
113
146
177
125
148
81
67
133
94
96
105
95
167
123
103
119
133
82
107
106
123
92
98
105
115
110
147
105
102
117
93
116
91
125
49
98
128
108
74
98
82
105
99
125
54
97
106
132
118
121
116
119
114
98
115
125
145
87
120
106
120
164
81
119
100
77
121
98
108
123
99
65
119
145
186
168
113
115
98
138
95
95
131
95
112
90
119
49
170
168
103
107
106
131
45
129
49
164
132
74
77
77
133
124
168
70
84
125
130
95
87
148
137
98
87
54
159
90
105
101
165
131
106
100
186
186
74
171
114
127
103
124
91
112
100
120
115
104
93
87
105
80
131
107
96
87
106
134
152
147
107
138
113
133
131
73
111
102
138
81
54
81
127
91
133
107
112
99
116
98
145
163
147
124
49
115
102
116
109
93
127
95
54
131
119
54
145
54
54
163
93
104
108
125
177
82
148
117
138
144
80
87
89
99
96
89
131
103
105
105
108
191
143
128
191
139
137
96
135
67
161
113
147
129
104
140
54
105
108
118
97
90
95
148
102
92
107
119
96
98
121
177
139
108
98
103
49
101
95
85
107
120
54
133
87
79
108
83
83
138
105
98
153
108
85
94
102
98
102
125
131
155
98
79
134
119
106
140
125
95
167
98
104
126
80
103
87
110
81
95
115
49
82
91
162
143
74
126
116
95
143
102
170
127
95
102
95
150
54
117
123
173
125
85
79
116
95
110
140
125
102
124
54
115
135
147
108
54
182
101
88
91
49
87
154
110
80
132
160
76
170
108
101
82
172
116
87
124
139
97
93
124
93
126
192
125
138
125
117
103
154
130
128
54
139
135
95
138
95
104
72
93
95
133
148
140
138
115
94
116
165
135
102
118
157
117
102
130
177
108
136
148
135
111
110
103
109
125
85
139
95
123
135
121
133
144
102
146
95
125
153
99
110
108
90
166
154
69
89
146
145
128
145
85
115
95
168
153
108
102
135
126
113
173
112
156
108
133
126
135
155
54
93
82
133
146
131
95
139
142
54
111
129
135
49
85
76
54
74
54
87
113
108
54
104
127
190
79
136
90
95
129
61
120
96
61
135
98
108
87
140
117
133
87
150
128
113
113
108
77
125
153
61
125
88
157
111
168
149
118
102
109
116
122
126
94
105
143
191
77
103
122
102
74
131
139
131
87
144
116
93
110
162
92
125
114
117
98
108
148
118
98
177
136
54
92
99
113
161
98
163
49
120
147
99
113
69
110
112
81
77
112
93
131
134
100
104
139
54
109
100
169
159
124
148
54
141
114
102
152
131
59
120
113
54
69
145
83
113
49
86
59
49
76
82
93
150
99
129
131
95
148
129
91
113
138
108
96
74
126
86
100
100
105
130
119
91
81
107
153
67
122
139
129
127
179
91
74
101
100
125
133
113
109
104
98
110
165
139
117
158
120
144
97
59
102
93
120
133
98
102
150
147
49
131
126
148
123
45
110
132
115
103
105
178
162
85
110
138
108
108
54
54
108
95
112
141
114
147
98
102
108
81
77
49
105
125
108
111
59
114
49
116
116
102
110
108
118
129
144
87
133
165
76
135
69
98
87
144
123
104
162
95
108
144
140
150
152
98
95
123
103
153
125
118
118
157
165
106
128
97
143
106
96
139
83
117
113
127
140
107
165
140
138
140
69
150
54
180
128
105
158
139
93
81
91
126
145
100
93
158
137
92
107
123
163
125
140
137
87
165
103
153
101
115
93
139
126
139
108
102
140
161
125
121
102
148
175
87
141
105
153
86
176
124
77
98
107
163
98
103
120
118
141
95
114
113
104
145
115
54
74
178
95
128
104
115
154
118
137
69
123
96
114
153
131
111
105
138
54
133
54
177
102
104
141
106
108
135
122
113
78
138
151
108
63
158
140
82
81
116
93
106
165
109
102
147
111
95
93
103
59
123
103
97
125
49
151
153
107
93
97
140
121
117
54
109
95
86
95
108
140
121
100
107
87
142
139
83
78
74
137
103
145
162
119
142
132
135
115
138
89
160
116
122
129
94
49
108
105
135
125
154
92
116
103
131
131
115
136
137
104
93
118
157
134
114
105
125
120
130
83
151
139
120
155
143
111
115
95
83
74
123
98
140
129
76
138
92
54
126
67
99
81
135
102
116
74
94
142
147
157
120
112
122
90
97
98
151
108
107
98
122
154
135
135
151
80
140
114
103
148
137
118
61
183
104
108
107
54
122
103
144
103
150
102
87
59
100
128
158
133
76
97
49
125
57
116
142
157
96
196
140
107
103
75
125
159
123
74
91
140
88
118
119
108
99
110
54
71
142
156
133
115
113
135
156
117
135
142
116
138
90
87
128
136
97
109
161
116
109
82
73
136
100
94
120
83
108
177
98
54
103
135
128
125
126
150
101
117
125
139
121
90
108
148
140
135
112
113
125
103
74
167
158
123
63
168
102
102
95
87
175
104
145
95
103
119
173
146
143
151
108
147
79
101
94
175
78
91
90
111
54
93
128
102
117
83
137
112
78
76
82
134
54
124
146
115
184
133
109
186
115
131
133
133
125
79
114
156
132
125
116
166
138
123
85
131
104
54
127
118
128
107
121
142
124
78
98
144
138
98
81
132
112
112
115
108
141
155
79
54
158
137
122
138
149
76
125
153
111
85
148
117
97
108
133
92
81
108
107
144
92
74
119
129
119
98
131
113
151
49
129
153
177
147
120
138
95
120
106
131
89
107
148
175
98
103
128
97
100
123
141
54
98
182
95
93
128
128
147
127
112
102
54
116
94
95
132
109
77
119
160
112
125
59
104
118
149
68
73
148
91
100
167
158
112
144
115
78
133
154
102
113
153
173
90
134
139
67
116
124
130
54
123
122
150
76
90
54
113
145
181
148
77
165
166
107
127
98
54
94
78
108
194
117
102
179
77
97
147
49
134
129
96
90
135
59
54
158
54
154
180
80
99
89
93
154
107
104
138
100
108
81
49
154
163
108
49
118
157
83
154
135
110
101
110
124
126
81
98
139
82
160
150
54
120
125
126
162
130
112
168
112
131
142
124
103
105
95
117
69
100
113
73
139
127
90
140
177
74
150
54
67
102
97
125
139
77
96
122
99
168
128
120
138
89
153
133
54
122
131
108
139
108
156
120
171
117
54
98
107
74
144
176
122
169
131
110
79
100
98
104
98
68
150
107
104
150
79
130
111
101
133
167
97
165
92
141
100
108
114
153
176
105
111
107
87
104
170
111
113
134
96
98
77
125
143
69
86
158
102
97
136
120
112
106
141
93
135
120
144
94
103
108
143
109
95
98
110
152
177
78
129
54
95
101
104
102
85
105
80
100
130
189
93
54
78
69
142
78
109
117
99
103
54
133
61
54
143
153
92
98
152
74
163
111
120
93
78
143
111
112
130
49
84
120
108
109
137
125
132
123
103
142
109
122
129
112
154
104
134
74
95
102
138
173
124
108
134
149
78
151
54
49
74
129
83
74
132
107
139
59
161
224
106
126
125
101
108
110
147
143
169
157
145
90
82
102
95
122
107
49
127
155
159
79
106
127
130
74
108
148
162
148
115
94
118
108
77
98
116
158
102
78
112
59
113
95
88
127
163
168
54
76
179
133
131
119
120
102
118
156
111
91
95
113
148
102
124
59
150
120
89
141
112
129
109
86
99
137
168
91
123
116
117
158
146
118
96
165
74
118
81
135
96
98
96
54
174
108
158
177
125
81
101
93
54
102
106
117
93
162
54
128
115
113
81
83
147
77
139
159
93
105
84
113
112
119
100
120
140
120
49
88
98
116
106
80
98
104
145
133
98
195
101
132
140
108
95
110
153
100
106
172
121
116
93
113
90
74
148
132
124
130
81
80
181
133
107
90
156
143
177
156
131
143
80
135
142
105
103
95
146
118
133
158
100
128
140
104
132
135
102
96
45
87
108
49
98
49
102
106
54
83
137
134
107
132
115
142
148
127
111
120
127
54
144
110
102
96
119
54
103
138
54
162
140
177
54
98
147
107
130
89
121
113
110
105
120
74
123
166
97
165
98
159
172
133
104
162
119
135
168
97
59
67
95
168
96
159
94
127
151
113
95
54
79
133
130
135
97
149
114
174
93
54
102
102
98
100
151
81
125
93
89
81
95
129
133
128
98
122
98
54
95
84
94
144
100
125
103
110
73
127
96
126
98
167
54
81
108
91
117
103
131
143
87
94
112
108
100
150
129
96
98
113
111
148
124
49
127
95
73
151
133
98
101
120
191
120
118
59
82
116
114
198
69
83
93
102
200
95
143
113
125
144
157
108
49
87
105
69
118
113
84
148
114
90
113
106
81
103
114
114
133
97
83
93
127
79
81
118
101
95
54
95
83
116
76
122
153
90
158
146
87
54
90
93
123
155
80
148
85
97
88
89
81
54
129
114
54
154
122
86
112
102
91
135
144
156
108
88
115
101
116
97
54
140
133
131
117
157
81
152
83
125
124
145
87
76
142
103
98
95
96
61
114
122
98
107
97
128
103
101
145
150
98
122
93
87
93
102
93
108
128
95
146
145
81
69
82
54
120
95
143
148
83
113
127
137
78
148
107
91
135
105
111
112
83
196
90
108
110
98
100
83
134
105
108
114
54
111
89
83
110
111
154
105
112
135
96
98
117
137
92
93
139
97
103
121
84
157
97
59
97
128
49
149
91
54
165
54
125
135
74
126
102
161
120
139
62
143
125
141
129
113
112
155
54
108
122
76
135
100
96
107
115
105
90
65
110
130
70
119
141
108
97
125
158
109
119
86
103
98
158
98
99
134
152
94
84
96
93
139
121
102
113
54
115
107
119
125
93
102
148
118
93
160
143
99
181
122
107
98
134
77
100
87
102
100
143
86
87
126
92
118
142
95
155
128
133
144
131
124
102
159
95
95
97
112
150
102
49
125
89
144
102
100
158
82
95
156
155
128
57
148
136
141
107
141
54
124
154
74
133
112
74
168
120
108
108
144
135
146
118
121
76
81
110
108
67
74
137
138
115
137
90
77
139
82
54
112
49
125
182
79
104
112
98
91
83
111
163
148
95
98
109
135
101
108
124
132
87
148
108
76
155
151
167
128
160
152
103
74
145
175
87
113
128
151
94
129
81
97
103
82
168
178
124
163
154
127
152
95
105
121
122
140
99
76
59
118
102
141
153
104
113
105
125
158
140
98
54
115
59
109
135
118
132
113
54
157
129
83
92
121
89
194
125
124
68
85
104
100
83
140
81
145
145
133
102
105
173
135
61
98
131
123
129
93
180
118
193
140
105
143
145
148
123
125
78
93
67
131
129
103
118
113
98
213
102
90
114
107
146
78
54
123
85
150
150
121
84
106
106
171
120
108
73
54
180
139
153
163
77
90
106
122
91
149
121
89
120
62
118
75
112
117
98
111
54
54
99
95
93
112
95
139
121
163
117
146
127
131
185
145
151
128
95
117
61
133
92
125
95
177
97
104
101
120
144
178
74
114
106
101
81
87
144
140
108
111
127
65
98
105
86
101
108
115
98
107
107
124
129
152
73
122
77
119
54
116
127
87
134
90
122
112
103
137
103
140
144
130
171
158
131
158
101
115
107
113
151
123
137
106
159
132
160
89
104
178
108
112
85
122
120
125
99
113
120
177
84
92
145
156
108
76
107
124
78
106
113
111
122
88
133
121
116
182
117
54
135
125
126
83
103
101
81
82
166
113
95
154
107
135
54
94
139
90
98
126
129
155
69
83
157
116
122
124
156
87
115
98
98
147
124
156
82
134
160
149
110
145
110
90
104
118
144
123
82
214
199
74
104
106
100
125
54
182
112
102
123
115
110
113
82
141
69
177
133
128
118
90
84
132
135
100
98
148
143
108
147
93
97
148
135
129
123
97
80
95
101
49
82
95
91
121
77
155
147
150
61
116
158
149
145
83
74
112
120
191
146
143
90
105
104
113
100
113
106
109
131
106
125
95
84
117
143
90
96
108
123
161
108
108
149
124
102
93
117
119
95
103
102
61
100
119
106
84
139
154
162
120
129
132
92
91
54
93
93
172
89
99
118
123
178
74
116
98
153
134
140
105
148
125
110
133
77
107
49
95
98
117
96
91
139
110
59
160
136
97
169
96
102
81
95
61
158
77
150
115
111
93
105
107
140
116
87
130
95
128
127
127
103
123
145
128
188
154
77
122
81
124
173
117
190
146
138
102
110
110
158
116
165
127
172
109
59
54
106
81
107
144
140
113
159
144
120
148
129
127
113
104
108
138
87
54
156
140
140
121
101
115
112
103
93
193
112
161
101
105
98
74
101
154
105
99
103
115
98
131
124
156
108
97
85
108
127
146
180
168
143
135
165
125
97
144
127
82
87
142
54
114
80
115
54
102
118
129
120
145
144
165
69
149
94
82
116
122
75
117
110
99
92
126
145
111
138
125
98
113
94
103
85
161
128
160
125
74
105
97
93
109
144
49
85
106
133
102
194
131
119
81
96
78
98
132
112
146
119
103
123
169
126
160
87
112
94
96
101
112
128
88
82
175
139
158
141
87
102
117
110
192
163
135
105
103
123
163
118
182
54
103
59
83
154
127
139
76
134
67
113
110
110
134
147
97
123
95
143
98
135
109
126
113
136
102
110
155
77
123
81
133
61
117
122
191
186
108
133
131
97
54
140
113
69
85
108
126
141
131
80
127
177
81
125
54
152
111
167
94
69
117
80
115
118
83
99
115
102
129
83
144
181
107
148
108
148
105
89
73
129
140
49
168
225
125
104
78
103
108
74
149
122
125
75
111
102
103
158
100
76
128
87
126
138
93
94
148
112
119
150
54
95
134
149
143
98
151
127
102
119
90
102
82
93
116
54
102
143
128
61
143
108
131
124
88
95
89
97
54
92
114
99
155
81
133
86
148
100
125
81
95
101
154
95
108
132
103
136
132
102
100
82
85
184
118
61
106
113
105
143
89
87
141
153
115
154
118
173
137
106
135
131
128
87
153
128
95
116
120
130
107
85
85
108
110
135
119
141
108
78
81
103
154
140
76
109
93
141
95
99
149
110
107
95
98
140
144
87
95
108
81
143
110
54
97
108
139
143
138
123
119
93
112
138
103
102
96
115
111
133
102
113
145
146
85
122
156
103
108
123
128
128
143
93
93
69
138
144
82
97
107
54
129
81
200
149
80
102
108
83
97
79
167
117
125
124
113
128
152
180
105
113
156
108
158
148
96
113
129
124
159
122
107
204
49
144
147
143
54
149
147
105
133
104
164
75
134
150
87
143
80
102
70
82
85
105
138
122
140
95
200
107
148
204
110
129
97
90
139
105
103
108
116
78
102
99
103
125
83
91
110
139
122
107
103
142
82
87
85
86
162
62
69
111
98
105
133
90
85
81
145
102
136
101
95
54
95
115
95
137
116
98
129
98
54
136
74
91
153
129
113
128
125
103
158
93
137
129
102
131
135
130
81
149
130
76
108
61
94
103
120
171
128
77
131
103
179
90
54
81
95
106
82
164
102
150
127
113
91
87
77
108
129
103
165
108
167
61
101
114
117
49
146
115
74
93
85
119
109
91
105
126
157
90
54
54
78
117
125
125
109
59
49
54
128
125
105
128
95
147
178
122
144
145
109
125
136
106
96
90
54
143
162
96
120
120
135
105
143
76
130
103
103
133
135
132
128
106
108
102
95
95
117
161
57
166
95
110
49
139
102
120
116
101
149
143
109
92
153
77
74
103
119
101
84
159
135
105
144
142
84
83
102
133
103
104
128
71
103
140
148
141
137
81
139
106
94
139
126
153
135
84
135
99
179
128
93
151
102
92
54
106
115
128
138
135
108
147
111
81
80
119
95
123
118
108
95
172
109
77
102
103
88
77
122
73
104
133
156
173
163
95
154
129
120
91
104
76
95
148
120
177
92
129
87
49
102
159
54
85
81
147
135
108
124
100
201
148
110
105
91
96
59
111
95
116
158
90
143
137
161
105
103
122
87
123
126
121
92
59
143
98
151
105
171
54
120
145
77
122
145
134
127
77
128
153
108
169
93
106
135
90
103
85
93
87
100
132
106
98
182
120
54
115
146
143
117
95
57
81
95
96
61
148
133
134
142
106
109
81
117
117
98
123
110
96
96
132
143
135
97
153
146
106
173
111
96
91
128
95
147
177
114
146
179
143
104
87
113
117
133
115
103
118
145
108
103
133
106
177
73
126
118
74
54
125
158
81
141
90
98
106
103
109
108
131
68
129
136
153
54
89
143
98
158
77
184
124
137
110
160
86
79
113
118
108
82
108
105
125
67
115
124
93
54
110
128
83
82
104
121
69
118
134
139
131
145
109
131
108
106
54
100
111
126
81
96
111
78
109
87
124
152
104
135
80
129
144
73
133
99
141
78
100
90
115
135
95
128
95
133
49
87
77
155
49
168
177
116
108
77
105
65
95
113
122
127
167
168
146
170
117
94
49
140
113
123
131
93
116
140
194
113
68
107
143
108
99
98
180
103
118
133
104
93
127
138
81
82
132
192
89
130
149
127
105
149
123
112
78
139
98
85
81
137
127
82
149
104
149
112
81
125
82
102
78
145
87
54
103
76
170
108
165
143
154
110
59
90
105
117
103
131
82
144
112
127
98
84
124
98
54
151
124
155
100
127
131
112
81
92
108
113
110
124
91
122
147
109
120
165
125
117
61
166
81
118
142
125
87
180
87
113
107
113
141
163
141
161
105
152
136
182
112
106
102
92
81
147
72
112
67
127
139
104
130
149
108
133
132
102
101
140
117
151
120
122
138
83
83
194
95
131
110
94
109
134
87
120
123
106
164
74
77
104
105
141
71
101
129
178
143
54
132
95
99
116
145
78
183
142
121
128
179
125
117
125
95
95
88
84
91
101
102
108
145
95
81
147
123
83
133
112
144
99
118
100
123
139
177
158
123
141
121
89
102
98
108
134
54
140
115
131
92
135
145
95
120
107
106
132
72
145
131
95
136
113
89
105
95
83
130
101
54
123
132
61
124
110
130
98
125
126
145
120
54
145
151
148
81
105
144
93
132
125
126
111
73
74
104
88
88
138
102
105
177
102
141
133
125
111
165
129
139
131
90
122
54
83
144
110
144
81
94
106
119
161
98
116
90
120
95
123
133
75
116
77
91
143
99
104
151
90
106
129
54
109
137
94
140
110
163
67
146
93
134
54
116
169
119
133
87
161
136
127
143
97
93
115
134
138
68
54
148
128
154
173
95
125
121
76
101
106
113
95
54
98
107
99
132
147
148
95
106
126
108
106
106
102
115
131
114
138
94
92
147
106
108
169
136
74
115
89
87
141
121
103
81
163
82
84
90
102
83
61
95
102
98
133
157
125
54
124
85
74
151
157
105
131
99
129
102
94
94
76
102
160
150
129
179
115
128
142
125
109
49
116
85
157
160
102
123
115
107
93
98
103
135
105
131
118
82
107
80
108
106
77
141
103
74
150
74
54
165
143
54
142
111
125
120
108
108
125
119
177
94
90
132
161
126
128
77
112
126
126
119
101
95
126
105
115
83
132
147
74
142
129
76
146
76
108
95
114
83
123
126
49
49
95
83
125
59
151
190
128
140
149
177
165
113
102
98
193
108
87
85
127
120
83
124
106
82
95
77
119
148
105
75
122
140
105
54
98
98
112
61
61
78
78
76
134
106
148
122
109
119
95
101
89
74
118
128
115
132
98
117
113
93
95
114
147
87
118
54
129
121
107
106
77
168
115
105
92
104
148
106
131
161
144
120
141
108
96
98
107
101
118
99
144
54
98
150
132
115
102
106
92
105
103
90
97
96
54
74
169
140
124
119
116
94
89
152
54
161
115
181
130
85
144
130
145
94
80
112
119
135
115
134
103
120
128
165
125
81
92
146
67
108
67
122
125
83
96
113
205
123
110
119
113
131
106
134
118
76
143
97
142
98
98
128
116
110
133
120
100
141
99
191
147
119
139
108
104
102
93
112
105
91
69
106
235
140
97
101
110
142
200
102
92
61
122
126
194
118
134
98
98
90
132
126
161
145
127
145
155
98
123
200
141
107
98
139
96
118
107
95
138
108
54
54
120
136
133
93
93
98
114
128
104
128
95
91
93
93
98
120
153
83
190
127
103
101
107
120
111
131
119
128
120
148
102
154
144
104
98
59
98
134
69
94
144
79
120
95
117
142
128
162
113
54
109
125
90
130
149
153
100
133
199
98
142
69
121
54
121
135
76
149
86
102
131
91
108
127
112
91
93
120
54
125
104
111
85
121
54
135
130
67
115
128
131
142
139
131
99
110
128
122
121
49
117
108
111
95
95
141
102
116
99
45
78
155
93
125
127
102
158
108
106
108
131
80
148
83
72
99
147
77
125
137
49
114
123
168
100
139
128
99
67
116
89
101
134
108
81
131
131
91
61
54
168
161
116
74
123
122
125
67
133
109
94
144
150
105
116
94
98
108
117
80
93
133
95
142
108
102
86
98
143
54
59
145
81
130
132
73
100
88
98
133
116
108
90
107
130
125
77
115
108
175
77
152
80
116
117
131
128
102
81
74
124
120
143
148
123
129
95
153
119
114
119
95
112
81
144
74
146
81
124
104
77
96
161
160
129
131
124
149
103
104
126
61
119
49
126
167
139
116
147
155
140
133
106
102
131
148
110
180
67
182
103
150
87
148
131
125
90
145
108
153
104
103
94
129
82
87
98
101
95
99
110
143
137
160
100
54
131
83
122
129
90
102
112
54
148
152
110
102
129
76
137
112
142
108
113
85
103
104
150
93
105
143
111
124
85
103
103
101
176
170
152
99
171
156
54
146
105
77
74
102
54
106
54
138
148
98
86
146
128
119
135
113
74
103
54
126
102
102
148
150
65
140
111
138
123
81
98
107
171
109
54
88
97
127
95
108
76
85
74
118
136
98
59
179
120
139
132
74
108
49
135
98
90
160
118
96
152
122
129
49
146
98
141
135
169
110
107
98
92
95
94
146
131
119
128
151
80
103
114
128
159
147
67
127
81
133
128
98
85
130
146
107
163
141
108
180
147
117
97
151
117
121
74
93
172
116
76
95
82
139
68
101
83
135
140
118
135
139
114
74
108
85
145
87
102
95
84
123
102
80
156
132
90
104
108
100
99
154
115
162
128
133
130
138
138
128
157
93
97
134
92
168
98
133
68
77
128
81
129
95
82
80
83
144
93
164
130
95
127
95
111
72
99
90
124
78
143
101
67
108
120
87
76
92
104
147
155
54
120
54
134
129
86
138
119
105
158
153
131
132
120
78
98
99
67
124
87
115
108
162
90
126
95
59
102
78
101
117
163
105
95
108
68
180
54
96
98
167
81
81
77
127
140
98
108
103
123
83
146
67
59
128
109
113
92
120
81
97
132
106
132
94
83
81
78
110
129
120
136
95
89
127
122
146
83
95
133
102
165
120
120
143
107
61
158
115
110
128
107
129
121
90
111
97
54
112
93
128
49
107
108
120
145
98
129
164
124
126
135
94
106
125
109
180
106
128
125
144
103
129
103
95
110
76
77
105
83
61
85
89
131
109
98
85
133
120
123
139
113
108
148
126
93
129
124
92
49
115
97
77
164
69
150
167
49
124
140
124
54
95
143
121
98
155
144
89
118
95
105
45
108
130
98
113
102
105
105
127
128
114
129
135
95
103
134
135
101
109
132
116
130
103
123
150
101
119
131
95
145
94
135
101
120
156
116
103
69
138
126
54
80
139
137
93
196
160
130
142
149
97
119
144
84
108
74
104
120
88
125
180
141
145
115
146
108
77
61
59
77
136
212
107
126
134
109
135
139
168
153
143
100
93
109
114
98
129
118
125
112
128
82
141
98
102
110
104
183
122
82
156
103
109
169
108
168
172
49
59
104
84
143
131
119
119
109
91
59
81
143
49
118
163
102
112
126
69
100
127
96
81
54
143
54
128
106
97
124
68
78
159
77
95
147
95
59
98
100
102
118
95
116
109
68
128
74
123
118
108
105
205
106
138
123
49
140
181
49
152
105
101
108
128
102
109
140
94
108
138
69
105
87
81
98
150
106
105
141
116
101
199
105
111
140
100
125
135
106
139
96
123
171
142
110
105
115
126
151
86
132
150
87
69
141
134
137
113
164
116
77
54
194
132
114
102
86
90
151
146
127
124
81
100
137
77
54
118
101
145
90
164
125
168
112
90
120
192
108
80
116
115
133
94
62
94
146
95
128
146
132
135
123
88
81
76
146
108
112
112
120
134
108
137
87
140
147
113
124
95
99
49
124
54
107
110
144
132
120
165
144
83
126
83
129
113
112
54
173
113
59
163
142
155
102
106
67
103
94
157
167
76
134
108
144
95
95
134
95
103
67
49
93
130
139
152
102
141
177
146
54
124
77
92
135
155
123
93
59
100
105
107
102
129
126
127
115
90
91
104
126
126
158
79
105
120
91
137
97
96
108
108
81
158
98
100
148
95
122
148
95
101
202
105
128
146
67
93
108
116
85
144
81
54
133
91
104
81
108
77
59
67
93
142
113
133
149
132
148
117
134
74
81
139
120
106
74
141
136
109
92
99
91
134
125
165
137
54
83
85
157
144
128
133
89
93
118
129
91
101
108
148
96
85
77
105
132
157
145
131
108
143
140
165
119
125
113
82
95
103
54
157
108
82
165
134
147
95
165
119
105
78
113
100
115
54
132
102
111
127
92
125
54
123
106
106
95
137
113
113
111
128
186
135
77
49
82
158
88
135
76
89
90
116
74
96
80
113
77
123
133
90
144
87
49
194
118
103
93
78
146
153
125
100
105
95
94
134
125
100
86
110
74
178
102
150
98
87
90
98
125
141
138
157
158
106
148
108
161
106
140
133
117
97
92
81
128
118
186
139
118
81
54
78
77
65
115
128
128
93
119
156
184
147
103
67
156
90
145
78
101
133
147
94
96
105
81
158
138
98
127
90
95
135
96
104
116
143
127
108
54
117
114
77
175
85
95
103
49
138
92
102
81
80
150
126
129
182
117
97
130
54
104
95
105
113
132
98
135
115
155
145
142
117
96
103
124
135
98
98
167
102
112
120
117
159
146
139
82
104
95
116
49
130
142
109
126
124
115
127
72
107
118
113
129
106
120
200
105
54
54
120
152
99
95
80
94
132
183
54
167
141
159
141
49
153
131
91
78
119
114
103
106
190
113
97
130
131
183
135
167
121
162
164
177
95
49
54
144
140
151
104
142
138
100
49
114
144
129
96
105
78
89
125
115
85
98
144
144
88
124
108
54
82
103
85
103
90
128
137
137
77
89
120
173
67
102
146
103
135
84
54
54
143
177
96
144
115
108
112
90
83
97
54
128
104
148
145
95
82
99
108
115
139
145
140
125
99
148
108
125
74
99
195
87
145
102
141
138
111
120
65
147
94
108
165
116
110
98
111
125
128
111
144
124
144
54
89
164
93
163
68
123
147
80
155
173
137
131
128
95
76
113
129
140
68
83
103
146
107
49
171
147
153
118
135
173
102
151
132
54
98
119
102
78
143
81
145
165
177
54
141
102
117
144
135
101
113
112
49
108
107
131
127
171
96
161
87
83
81
156
115
67
61
127
129
89
76
87
105
117
146
113
164
59
155
164
112
138
132
49
189
113
112
87
139
159
65
82
93
85
93
164
127
107
107
148
90
119
157
82
98
98
122
148
102
89
102
102
124
122
123
97
148
124
103
42
116
78
135
148
95
65
104
83
119
94
123
93
112
156
103
186
95
126
112
88
94
100
102
114
170
54
113
189
130
78
107
131
105
49
110
143
118
82
133
78
136
129
139
138
149
107
95
89
94
108
106
139
143
82
136
143
118
149
110
117
98
129
54
100
177
92
105
84
111
134
118
110
95
189
159
153
81
80
93
86
134
128
114
114
130
87
115
119
122
108
114
81
101
59
155
142
112
113
108
139
104
102
114
98
142
103
167
126
102
123
110
138
108
145
95
102
150
148
133
95
98
68
153
97
73
107
98
166
108
114
99
72
120
108
114
156
123
104
133
54
49
137
111
124
118
90
95
113
96
103
131
49
180
78
133
158
157
95
140
151
95
122
125
54
93
145
93
150
87
54
120
122
72
105
54
120
49
147
130
118
155
93
152
119
92
161
141
123
106
74
98
94
103
208
146
74
76
190
98
124
168
106
144
54
131
87
77
122
118
81
145
125
84
131
102
167
148
119
94
146
108
135
91
108
84
118
177
135
128
164
137
118
113
114
105
91
45
102
170
139
108
59
108
110
127
54
74
98
126
77
95
93
149
139
85
132
125
93
99
54
126
77
104
94
171
118
90
177
131
106
128
49
102
104
54
114
129
92
49
102
95
88
54
116
151
101
103
140
172
54
81
121
49
117
158
145
124
170
97
156
144
54
97
127
91
132
113
161
99
92
81
112
79
128
150
49
49
70
93
130
119
175
95
129
112
163
81
107
91
104
95
82
95
98
49
128
95
95
134
107
132
98
104
77
108
125
158
95
77
149
122
157
123
135
118
98
76
83
131
97
102
118
88
129
109
117
155
134
171
93
110
134
54
127
122
81
91
106
97
54
112
147
108
124
111
134
134
103
124
49
54
123
54
77
93
108
220
131
59
122
102
93
120
126
102
87
157
104
95
80
98
170
190
49
128
101
87
122
93
108
118
114
179
106
138
88
98
137
103
98
148
118
128
108
86
112
143
98
106
193
114
49
161
102
81
81
134
113
161
125
139
158
127
131
54
151
77
112
103
153
122
82
87
93
144
105
54
96
107
108
102
123
103
144
146
128
93
98
102
83
76
144
99
102
128
141
84
92
186
140
73
149
103
120
91
133
184
68
124
116
76
133
81
118
183
109
113
104
78
98
78
159
149
118
107
132
189
127
149
125
148
104
113
190
108
128
93
83
95
179
81
94
133
134
164
91
118
131
118
54
160
86
115
137
145
153
105
100
148
120
127
87
147
112
84
71
77
196
108
101
108
108
112
108
139
133
123
117
143
151
95
78
77
133
141
118
212
107
107
143
117
162
87
95
127
102
126
114
81
49
127
144
93
101
125
121
146
97
134
157
158
105
129
81
169
131
134
59
127
107
191
118
89
122
131
125
95
165
142
83
98
99
84
107
181
115
140
105
77
54
106
78
128
127
122
122
54
83
141
88
100
116
109
150
164
95
146
102
126
87
135
124
129
115
147
106
123
83
90
160
129
83
113
143
103
124
111
113
173
129
108
107
97
152
87
108
130
114
81
95
113
98
107
159
117
125
137
95
120
112
117
125
147
74
133
122
133
84
105
77
129
144
126
133
117
137
90
99
145
156
94
103
152
133
101
96
165
129
124
81
91
78
91
129
117
110
145
78
126
97
125
127
132
143
109
171
140
115
153
105
115
101
127
200
49
82
100
107
109
69
124
121
70
107
118
148
89
103
99
110
90
106
126
144
90
115
45
106
115
77
108
70
81
180
199
87
107
108
133
114
102
76
54
117
128
144
102
121
124
157
104
116
159
108
123
128
114
134
78
120
101
115
123
104
128
112
158
98
127
80
98
95
98
54
116
127
78
120
109
74
110
96
123
129
118
115
109
135
83
164
201
142
145
129
81
101
91
108
125
102
139
184
137
159
90
128
95
98
116
59
89
122
109
107
139
161
125
123
73
177
89
126
106
182
76
102
85
90
165
110
113
81
108
125
104
123
100
128
114
108
87
139
161
49
103
213
54
91
98
67
115
177
123
105
82
149
137
135
157
95
124
90
85
125
54
75
108
95
164
92
105
98
113
105
102
74
158
110
135
102
82
156
54
49
68
148
122
161
115
99
174
122
81
49
113
113
153
95
93
135
54
98
87
145
76
132
141
100
84
126
95
110
116
212
122
137
102
141
90
133
54
122
141
141
88
67
175
49
115
127
129
85
149
102
144
95
105
98
124
125
84
127
115
129
57
103
127
184
108
54
177
108
133
142
132
92
97
82
83
102
148
105
179
80
152
119
74
130
96
110
132
91
158
80
108
103
100
93
110
127
159
85
129
132
112
54
75
77
91
90
130
115
101
95
103
147
74
150
148
161
136
116
98
98
106
108
95
98
83
96
95
95
77
112
94
92
156
107
99
67
90
67
105
150
125
125
116
126
140
115
96
121
96
103
167
97
125
112
136
102
98
104
110
127
147
186
143
95
148
76
168
91
95
158
99
95
102
77
103
152
135
128
113
104
96
99
163
169
82
140
80
124
139
134
54
140
115
85
105
143
77
138
92
150
124
67
127
103
123
151
54
130
54
122
106
144
69
157
108
122
99
146
146
121
74
83
73
95
61
103
132
135
54
54
96
96
93
104
131
168
45
90
97
102
128
130
112
118
105
122
129
69
84
98
87
122
123
108
133
107
98
92
98
106
81
120
153
134
82
69
77
67
108
115
135
145
167
73
97
138
83
96
193
168
165
94
67
136
125
86
146
177
149
106
106
87
129
87
117
124
119
161
119
121
49
151
133
118
124
95
131
108
127
82
102
54
120
95
117
135
139
125
155
122
151
163
124
83
143
138
54
77
131
159
83
113
114
78
147
129
91
119
125
93
138
59
54
102
103
74
144
140
87
83
133
59
121
90
97
131
160
88
92
142
134
131
54
82
167
98
97
119
168
90
154
114
125
54
93
133
87
96
93
71
143
121
130
161
105
155
188
90
83
138
116
182
110
144
174
157
163
156
110
49
87
102
125
98
115
54
113
166
137
128
129
106
135
113
164
126
114
117
159
91
98
118
78
144
97
112
87
67
125
87
96
152
102
177
158
143
76
139
107
144
108
140
73
67
137
103
155
126
153
98
117
110
126
74
143
149
106
96
109
69
95
106
103
66
114
82
82
87
125
109
169
136
129
76
95
93
133
93
104
110
105
96
108
106
148
161
113
124
103
85
113
78
95
113
151
84
102
61
118
129
153
125
105
151
103
98
146
81
147
102
133
115
106
126
108
61
132
102
93
156
224
137
108
143
107
74
69
131
139
180
118
83
111
54
125
177
67
109
113
101
87
146
106
95
102
141
111
94
135
137
110
144
152
148
54
93
113
106
148
131
108
154
128
113
124
106
143
116
159
108
136
109
119
81
179
140
147
90
120
117
49
87
84
104
82
81
143
100
119
105
101
129
93
54
54
141
91
103
104
115
127
120
102
142
107
123
74
123
102
111
134
120
160
138
119
118
106
118
131
105
106
110
129
103
124
54
96
87
54
143
103
99
94
148
54
100
82
95
206
54
135
113
113
95
187
153
119
70
78
134
108
125
108
107
73
91
102
156
96
108
90
78
132
122
187
95
54
87
113
67
101
92
91
141
137
130
93
100
177
101
104
134
143
126
133
98
108
123
65
130
122
149
149
87
122
111
106
96
122
106
127
174
112
104
122
85
84
82
112
127
103
111
168
105
113
113
96
49
154
161
140
73
114
81
139
136
81
144
95
126
136
81
105
77
147
83
108
59
110
146
87
49
134
82
120
180
83
115
110
144
91
106
148
103
145
92
83
103
153
72
113
118
105
129
77
120
133
134
87
129
102
146
77
146
54
125
164
106
97
95
85
54
74
105
134
102
79
112
92
67
138
119
54
81
160
110
108
96
92
78
81
135
118
141
138
146
101
132
116
115
177
117
139
67
98
125
85
116
83
116
108
160
123
79
129
132
135
123
80
158
131
54
90
154
122
139
158
112
95
77
102
142
143
103
125
128
54
142
128
108
102
108
95
98
95
94
132
54
158
113
98
180
85
163
98
140
78
49
81
200
97
148
116
125
180
49
83
141
91
121
87
148
91
175
99
140
124
165
54
92
87
95
114
177
106
109
108
83
105
119
132
122
139
116
111
54
130
67
114
113
92
147
59
170
54
119
161
105
122
103
98
143
81
67
98
160
131
177
136
128
139
103
87
125
156
97
115
124
125
117
77
134
130
133
108
135
108
104
77
148
102
113
128
129
173
107
108
98
100
117
113
127
115
167
102
184
76
128
151
97
74
128
146
113
104
97
152
143
59
67
118
97
105
121
67
150
102
117
95
112
117
54
85
106
102
158
93
143
134
102
61
102
144
105
85
106
123
207
157
114
127
108
70
138
68
137
144
74
108
83
146
151
114
90
188
68
139
122
130
49
154
124
126
114
132
98
146
134
127
92
138
54
54
113
101
95
116
108
102
98
103
111
82
98
150
139
128
140
85
162
119
98
90
108
127
150
135
108
126
125
74
98
100
116
130
150
139
84
102
156
103
169
143
115
128
120
54
82
111
129
95
118
138
102
107
131
123
164
104
132
92
141
108
145
78
137
105
207
165
68
76
177
79
170
102
152
122
131
127
54
132
67
113
127
132
121
85
197
145
83
80
110
134
80
54
146
134
113
59
97
147
109
106
120
88
113
118
54
143
106
93
59
105
104
94
103
179
143
98
160
135
125
72
136
115
125
111
131
144
103
173
148
148
118
74
96
133
119
154
116
82
87
173
118
106
142
103
122
80
87
85
154
146
54
193
162
117
107
87
119
127
163
133
110
142
87
121
102
102
129
143
160
134
165
59
109
54
142
192
95
133
149
127
167
120
107
124
59
106
96
122
140
54
133
102
117
95
106
177
177
121
125
129
104
97
139
81
93
107
54
141
49
102
116
115
108
94
76
115
77
105
95
87
146
110
152
148
129
168
113
134
54
119
123
100
107
125
49
148
136
180
95
126
98
103
104
107
118
108
54
87
154
120
95
94
117
100
109
111
134
106
59
103
155
141
89
103
109
124
117
61
102
108
129
153
130
127
95
122
141
120
159
125
158
102
143
82
125
107
100
127
115
98
61
149
143
108
146
133
76
76
131
74
158
82
106
126
110
128
102
76
82
108
149
99
122
120
138
76
108
59
128
161
198
90
227
118
108
54
106
93
168
126
59
133
96
87
200
113
106
145
120
127
112
160
114
88
148
128
112
125
168
126
122
122
128
83
73
129
107
54
127
81
104
49
121
113
128
85
103
98
119
145
104
78
131
129
102
61
126
89
102
111
168
128
110
103
141
106
108
121
147
108
54
59
77
140
125
135
127
69
98
102
93
102
129
143
125
89
147
96
91
54
93
90
139
78
150
91
129
144
118
118
98
141
95
59
108
95
121
95
135
49
141
101
124
80
85
142
107
150
103
114
168
101
121
157
143
129
177
67
114
110
125
159
125
86
144
78
141
111
177
117
138
143
137
131
125
106
61
93
111
134
122
113
87
148
108
120
127
95
177
112
177
157
98
162
90
140
73
93
141
207
103
104
134
149
145
88
117
152
54
122
143
108
124
127
139
84
112
104
83
90
107
158
109
86
106
54
113
156
112
98
103
207
119
118
76
219
97
143
108
81
107
94
125
110
146
102
102
134
126
158
93
156
83
98
100
128
77
95
156
49
140
125
93
97
101
138
139
54
144
120
151
98
97
113
144
154
83
76
88
105
140
90
91
67
104
72
54
110
132
119
116
151
146
81
153
94
90
59
148
147
78
76
177
108
97
100
81
138
91
149
104
133
92
102
86
96
95
146
69
146
133
76
138
98
151
105
107
49
89
61
82
100
114
160
85
146
143
98
98
126
125
123
95
117
146
153
111
107
129
98
114
179
142
95
123
87
138
54
145
148
76
135
82
114
95
146
86
95
115
157
80
108
77
166
102
120
154
81
173
165
83
107
145
117
103
102
165
111
108
93
110
98
103
145
146
103
153
107
108
130
54
149
125
103
106
148
108
125
106
110
123
96
126
104
127
85
158
90
103
102
103
123
133
125
125
157
96
87
78
151
159
145
141
123
138
122
144
115
101
102
91
116
139
95
85
120
107
112
174
85
118
107
67
104
145
131
151
112
99
77
148
121
102
123
108
59
130
135
77
166
109
54
114
108
113
107
74
138
95
110
93
127
145
151
143
108
108
95
119
119
92
49
105
150
130
90
84
125
80
129
102
108
128
68
100
54
134
91
54
110
90
87
96
124
92
103
127
157
54
140
139
175
112
132
109
128
123
114
143
119
81
103
119
98
103
100
81
63
81
145
101
99
95
104
106
118
117
125
77
79
145
93
117
153
171
130
125
61
126
122
138
74
152
144
102
109
101
108
128
118
118
134
74
128
122
108
109
102
172
103
90
175
125
101
123
67
120
117
129
125
146
95
106
115
149
150
102
91
131
155
136
94
75
86
108
124
113
126
158
155
159
149
95
143
106
139
106
123
161
137
140
157
108
114
77
137
108
131
125
128
91
144
117
118
143
102
80
104
54
109
150
95
110
171
49
78
114
143
120
101
152
103
139
120
135
93
123
91
159
165
96
119
102
177
149
150
95
73
105
128
85
114
123
151
85
155
129
89
135
103
135
138
137
87
81
95
147
142
211
127
79
122
143
68
87
109
118
125
103
128
91
104
95
106
127
93
54
216
97
114
82
91
151
112
95
102
83
184
54
95
158
127
115
200
143
54
81
115
148
152
133
153
116
151
116
117
49
131
146
112
144
88
157
81
156
104
98
98
162
54
144
127
92
122
83
134
105
96
180
123
148
107
81
121
87
112
110
153
138
145
133
108
97
84
151
103
98
74
160
102
93
153
80
109
105
106
131
99
80
98
116
108
114
101
129
69
54
120
122
114
179
107
91
131
108
76
134
133
103
158
125
122
145
160
94
129
117
143
120
134
86
102
118
126
105
95
161
102
114
83
157
128
108
128
148
104
97
81
125
180
69
155
122
172
120
177
136
85
91
141
87
146
95
116
54
81
112
129
76
128
114
192
140
147
137
125
169
98
95
110
113
132
74
169
112
68
172
161
145
101
54
111
106
106
160
107
136
109
54
123
116
148
106
105
126
104
89
121
133
106
76
147
114
125
93
100
177
139
162
176
91
70
90
95
141
81
143
137
137
76
126
112
161
200
144
148
105
172
102
145
84
179
124
135
177
180
204
186
83
87
59
127
133
87
107
95
94
148
148
67
142
54
153
95
109
115
86
131
119
84
125
137
107
103
100
114
158
132
156
76
101
69
119
79
119
94
164
191
95
130
95
155
186
161
194
135
126
130
120
126
108
76
134
118
84
91
161
128
105
95
95
182
121
110
142
99
93
112
177
119
159
131
125
109
108
76
98
93
212
116
98
153
140
87
122
103
109
122
112
162
151
59
158
148
77
135
88
150
118
95
74
119
163
136
130
68
85
96
136
85
133
99
158
129
135
54
85
145
125
119
108
149
104
109
54
90
133
179
83
127
116
102
81
102
162
59
69
119
147
129
98
219
110
108
107
74
140
152
82
108
140
96
145
72
90
54
148
81
81
156
168
87
130
127
98
102
127
170
192
86
93
54
127
124
134
86
121
122
98
77
140
164
127
73
94
111
120
122
107
112
76
134
49
135
124
143
98
145
147
164
80
177
102
90
103
101
102
84
106
73
150
69
79
168
204
139
151
96
135
113
107
106
144
132
117
100
118
98
144
118
146
122
166
128
158
54
139
90
105
109
141
103
187
74
148
126
114
125
102
128
145
137
146
127
108
108
59
88
115
142
89
104
90
71
125
59
87
146
109
104
154
132
115
149
150
131
49
115
132
138
150
114
68
70
169
146
101
102
90
125
153
85
206
97
103
109
102
135
118
135
54
127
128
82
98
108
157
158
102
89
143
96
101
105
127
59
102
105
108
115
145
126
173
108
136
169
157
67
54
135
127
158
135
155
83
103
127
54
81
54
131
144
49
97
118
122
150
96
105
135
95
68
65
135
140
54
96
144
172
76
77
82
112
116
145
97
112
59
98
117
188
151
141
135
69
95
85
94
89
183
105
110
82
149
67
100
157
182
89
125
154
129
92
129
175
78
113
54
151
98
136
61
124
110
94
122
104
156
117
140
126
98
126
143
59
135
110
95
148
131
77
103
139
120
122
131
128
95
98
127
113
181
108
103
94
154
80
131
81
74
161
140
77
77
159
156
81
76
145
74
116
118
126
106
114
107
148
116
165
135
157
102
98
145
97
151
78
94
93
108
138
95
115
74
115
157
67
117
106
80
115
123
146
77
112
85
81
105
108
125
121
161
98
165
76
185
93
96
134
103
134
140
105
106
115
146
59
67
122
161
108
114
83
108
132
104
79
142
54
108
130
122
110
132
128
99
106
95
69
124
100
140
133
146
77
82
150
92
138
115
159
162
115
118
145
98
133
103
102
104
59
179
82
131
143
143
101
134
151
124
74
116
54
110
125
119
109
138
54
131
131
82
112
114
99
140
144
102
129
123
105
73
146
116
122
118
102
102
126
125
81
143
127
112
131
97
96
141
148
116
108
90
112
82
145
106
92
54
123
114
108
104
103
105
97
119
163
123
102
137
112
148
81
158
149
59
152
100
78
154
158
95
129
95
101
120
95
122
103
141
149
95
125
109
154
100
95
54
85
114
118
110
102
102
110
103
133
158
110
177
102
145
163
54
101
172
139
104
126
147
83
79
162
133
98
125
90
54
133
74
105
83
54
77
77
138
110
98
104
121
98
101
200
112
78
102
145
95
136
95
59
109
54
97
93
121
108
170
141
103
176
115
155
95
160
106
82
98
126
141
98
89
100
93
98
81
158
146
54
95
118
103
83
119
123
102
125
91
92
87
54
112
157
126
115
103
113
92
124
106
83
121
109
113
116
116
113
129
126
113
95
108
99
114
99
157
86
102
99
111
133
155
162
102
98
138
93
136
110
123
135
88
152
89
77
139
130
168
114
115
163
124
146
88
161
88
91
172
70
124
103
82
145
160
143
157
54
77
135
81
65
102
110
118
92
130
54
104
122
123
94
125
85
137
74
151
118
169
142
155
120
108
157
69
103
139
89
99
108
92
180
106
123
140
122
106
112
102
90
122
87
112
90
156
103
132
186
99
161
147
118
77
85
76
118
158
99
91
115
109
59
102
159
158
102
120
154
148
67
124
127
81
146
78
149
165
141
142
89
54
167
148
87
107
90
108
84
158
138
134
112
95
112
118
120
133
131
104
88
147
92
87
115
157
132
140
122
140
133
165
99
98
167
143
114
81
103
95
127
141
104
177
49
95
112
127
133
121
133
81
54
54
103
89
126
82
140
72
107
113
102
105
175
164
107
107
119
54
135
98
115
103
127
122
111
171
78
190
97
106
114
117
125
104
126
140
148
150
76
128
91
132
126
116
103
121
87
122
74
102
110
158
143
114
105
126
119
59
144
129
121
123
95
133
105
129
103
81
125
116
108
119
82
122
124
105
147
91
102
85
67
102
113
92
152
144
78
108
98
116
130
98
95
108
141
123
95
54
127
128
59
103
200
132
89
109
162
161
173
102
115
163
63
130
118
89
119
128
145
144
54
98
125
102
118
129
98
84
103
112
139
95
127
87
140
98
106
158
103
95
77
130
117
98
123
118
122
89
108
131
144
200
92
122
98
162
126
98
91
127
49
124
121
133
177
125
109
107
132
128
141
94
131
103
115
188
125
125
114
84
91
61
131
109
98
118
113
107
77
69
54
152
141
93
107
92
76
126
79
157
161
122
104
142
126
102
124
129
89
120
151
155
104
106
98
128
95
126
104
101
137
141
113
102
74
127
137
95
113
94
102
153
143
127
109
120
131
141
98
111
117
131
195
158
87
89
125
133
94
129
112
126
114
132
59
59
133
87
82
54
176
85
112
157
112
54
135
194
113
112
95
91
149
108
140
54
135
132
121
54
67
93
49
133
146
152
170
112
96
113
104
110
79
81
113
119
123
122
112
76
124
100
108
74
79
123
91
110
153
135
124
148
112
95
91
131
177
67
120
103
100
81
125
126
111
133
134
135
102
122
116
102
78
94
97
117
125
137
143
104
112
94
82
115
123
149
90
61
102
104
91
103
133
111
90
177
129
98
101
161
124
127
116
128
61
148
190
68
111
120
72
106
113
54
109
128
165
87
165
105
168
113
133
128
107
146
148
108
102
153
165
104
59
80
134
81
49
88
101
82
147
82
132
152
170
102
138
70
119
133
126
54
141
122
118
186
113
148
95
91
110
146
125
135
131
82
87
95
101
95
122
82
108
107
154
54
125
116
114
138
122
54
126
95
108
148
99
129
109
91
95
138
144
156
110
77
123
77
95
117
96
124
95
158
158
107
102
49
140
128
74
98
137
122
130
131
81
77
127
93
120
144
120
129
123
108
100
102
95
95
90
122
82
103
145
145
54
102
125
125
137
153
90
96
127
82
120
133
90
93
93
95
129
138
81
127
116
144
125
150
158
88
95
141
146
98
119
147
143
156
62
98
98
78
155
102
90
59
108
152
95
144
155
137
163
88
147
123
67
83
103
122
110
69
81
182
128
124
120
98
188
87
190
119
79
98
125
112
141
74
84
133
88
63
106
105
83
153
117
100
144
54
125
125
79
133
87
49
100
135
144
54
151
95
97
117
117
72
90
116
117
129
113
95
92
108
81
135
98
98
90
78
111
124
103
123
108
135
87
93
49
128
117
112
120
98
114
82
111
127
90
123
161
126
136
116
145
106
86
82
109
108
132
104
129
93
160
108
139
95
114
151
133
147
114
93
140
93
138
156
141
84
177
122
77
135
136
67
81
74
126
142
123
118
135
94
135
177
185
194
74
96
124
104
151
105
128
119
82
180
216
128
113
136
152
103
93
102
200
78
98
85
86
167
93
95
113
123
86
106
131
131
180
88
102
81
129
108
84
114
113
159
137
91
103
59
59
74
90
148
93
140
114
98
131
122
164
160
168
131
81
160
150
102
122
108
120
130
133
98
49
77
144
148
112
135
115
78
108
119
133
102
117
127
119
169
125
149
142
81
76
148
111
165
93
112
102
100
123
103
91
116
85
171
110
119
118
108
135
108
140
135
76
114
97
167
119
59
102
76
122
113
118
97
87
119
105
115
120
94
94
108
141
98
150
133
112
98
88
110
113
155
141
128
133
106
108
113
180
102
143
87
77
104
156
129
143
76
123
83
154
98
115
84
102
95
127
130
78
140
152
92
162
86
54
81
143
106
78
111
106
156
95
169
86
102
156
107
109
108
97
132
137
122
111
184
75
59
145
101
150
135
108
112
101
136
146
95
130
95
104
199
155
148
165
154
110
126
138
81
126
103
129
117
161
106
118
148
131
127
121
140
82
116
83
128
77
93
101
77
112
114
190
116
77
133
74
130
142
93
120
118
102
144
65
78
133
146
145
122
86
98
102
117
115
94
45
120
59
67
138
129
125
132
111
121
125
98
93
103
54
59
95
125
130
117
131
81
131
154
95
117
163
54
111
139
96
90
133
98
122
120
110
92
117
148
125
89
54
135
125
100
81
77
104
133
113
98
120
102
133
88
105
98
125
101
147
99
150
49
181
110
167
104
99
109
139
65
135
82
80
133
101
59
118
103
106
91
74
122
106
146
81
96
182
113
90
95
106
144
136
54
98
68
142
68
111
130
119
155
87
149
106
148
141
82
59
76
81
161
125
135
141
177
78
90
149
107
110
112
97
83
54
106
85
150
54
125
122
112
54
125
108
95
133
98
166
108
84
144
107
54
121
239
163
59
59
126
93
61
94
93
81
95
112
102
128
105
112
95
101
95
117
119
119
117
101
103
116
123
117
128
129
119
133
97
102
131
83
134
122
102
102
146
108
134
115
133
98
184
111
79
186
84
117
116
110
140
119
96
121
85
125
135
176
149
179
106
116
106
148
125
141
54
128
131
118
65
129
94
112
113
95
190
157
122
127
93
100
110
112
54
171
125
132
122
109
102
125
129
49
97
88
94
106
102
110
106
196
97
54
113
95
83
119
96
99
122
92
89
86
81
121
152
84
108
131
116
120
112
103
117
127
142
103
95
114
148
116
144
119
104
142
106
194
97
69
54
148
85
80
178
160
113
131
81
155
102
95
138
96
104
115
147
160
81
129
106
128
148
99
133
117
102
87
139
112
125
102
77
120
125
91
157
119
54
121
127
98
106
140
136
89
113
167
127
101
83
145
133
98
93
108
114
106
102
120
155
169
102
91
54
113
113
102
83
104
177
138
145
110
120
74
114
97
168
125
115
95
103
78
104
95
128
135
112
106
128
128
170
108
148
124
155
183
107
114
78
106
90
165
143
124
106
151
152
114
116
156
150
127
124
87
59
154
134
120
49
118
145
110
187
134
219
103
129
142
143
123
92
103
103
108
79
86
108
123
144
131
135
68
124
106
185
85
173
176
121
116
91
108
145
108
96
70
102
67
103
54
161
120
134
106
100
127
118
130
95
133
126
105
110
105
129
75
67
138
112
87
93
103
109
117
107
140
85
120
108
72
91
108
143
87
162
170
159
61
139
102
112
161
103
74
108
126
54
83
148
142
61
102
120
139
98
127
133
147
116
88
168
96
145
101
96
103
135
160
145
92
104
128
105
108
80
81
132
102
78
114
106
162
108
74
115
81
95
80
59
125
74
103
105
129
145
124
73
106
57
150
123
54
113
104
99
131
177
142
112
106
139
113
143
80
103
113
108
125
155
129
105
103
94
161
85
67
49
59
121
89
115
95
126
81
135
104
177
105
172
143
160
128
130
106
149
114
124
99
84
113
82
113
118
163
113
82
127
81
123
95
141
101
184
113
124
133
167
108
166
163
135
167
154
98
125
126
143
125
155
82
156
80
70
76
152
102
153
113
81
102
91
93
90
74
156
83
109
158
118
130
150
127
98
83
161
113
132
117
119
140
95
79
122
128
106
133
95
115
170
154
127
120
148
54
83
105
124
145
116
138
133
149
113
165
140
121
122
135
120
115
150
129
166
132
110
54
122
117
135
108
192
151
114
54
157
115
76
140
141
68
101
85
91
99
134
158
120
98
140
138
122
102
150
54
127
83
87
74
108
136
96
106
128
103
165
154
106
155
109
116
148
106
102
105
84
95
130
94
148
131
125
125
148
103
112
95
118
130
146
130
49
54
104
69
139
93
108
115
123
133
119
140
113
54
106
97
127
91
102
143
156
110
71
159
85
78
115
67
103
134
150
69
199
151
148
78
85
135
102
169
177
81
114
132
122
87
54
129
82
115
167
103
125
198
148
194
76
156
107
59
136
82
128
85
69
122
114
101
103
123
113
102
93
73
77
88
105
84
130
90
99
49
138
100
98
49
108
104
140
152
92
95
134
81
112
160
110
74
113
135
95
80
151
95
127
77
147
128
110
94
84
108
113
106
182
127
74
127
113
118
81
124
123
87
99
120
146
78
133
99
90
81
191
139
164
86
100
135
147
107
149
177
133
114
158
121
131
116
74
86
125
131
135
102
91
124
49
143
114
143
141
59
134
144
81
107
100
105
100
133
112
112
87
173
97
114
103
102
129
104
160
158
145
168
155
143
148
82
96
148
131
90
102
158
98
178
78
163
76
109
115
118
129
140
101
104
107
97
163
128
116
149
91
150
79
129
110
128
111
140
98
136
80
113
150
153
167
122
127
80
176
108
101
152
119
128
128
142
122
128
148
132
116
54
120
97
137
155
136
189
59
112
74
119
103
49
138
136
104
87
133
83
103
149
62
54
101
111
107
118
113
128
113
180
67
125
112
74
123
108
144
129
118
103
104
114
104
148
129
118
135
122
81
49
106
82
96
146
59
113
70
136
75
108
54
101
93
106
130
82
132
76
131
67
59
110
108
130
87
102
117
94
105
107
167
78
95
69
161
104
141
81
87
113
128
150
117
125
159
109
116
122
142
105
180
133
152
143
122
49
102
129
138
107
68
119
110
119
108
121
116
188
87
128
151
212
106
151
153
141
135
103
143
103
111
99
93
127
151
108
95
122
112
77
95
93
177
54
89
158
117
121
81
84
152
94
98
102
104
118
93
190
116
133
90
123
67
92
81
102
104
102
113
161
177
49
127
161
148
111
95
140
108
102
121
133
158
87
98
95
105
81
134
61
122
149
124
150
133
135
135
110
139
115
102
85
113
151
49
146
125
114
148
119
161
123
112
104
140
141
92
155
129
100
101
113
74
101
139
157
121
82
180
146
111
76
176
158
85
134
90
119
114
120
95
130
104
129
168
88
76
98
101
88
96
125
144
146
107
113
135
108
112
145
196
98
117
124
149
114
133
116
93
81
105
72
124
136
80
79
101
113
100
109
59
133
129
106
87
96
95
140
88
127
87
123
87
134
126
161
81
166
148
133
132
96
102
80
101
138
54
154
81
98
54
108
149
158
140
54
127
131
144
171
98
102
99
131
117
101
108
76
88
141
59
106
148
140
116
91
68
122
96
95
54
99
68
83
54
145
108
126
137
90
147
141
143
145
110
95
112
131
127
96
54
113
54
77
89
91
76
166
102
163
73
97
137
103
118
120
105
86
71
81
89
116
49
86
102
93
78
180
78
115
69
121
145
136
127
104
117
141
129
146
95
115
112
107
149
116
107
129
124
115
128
102
69
114
106
140
96
85
102
107
105
124
69
78
103
106
124
76
119
105
74
93
104
112
116
126
125
148
112
143
160
102
140
102
74
95
90
102
132
108
115
138
100
102
133
123
110
128
149
190
103
113
155
150
118
106
135
120
150
144
95
160
127
94
112
83
87
87
135
143
146
113
77
98
49
120
138
54
178
68
77
81
77
143
169
69
87
158
98
141
143
94
130
133
84
129
114
146
119
114
123
103
69
67
108
148
49
109
94
101
156
129
95
119
125
155
108
125
120
78
94
179
102
186
98
49
151
97
83
110
104
106
72
138
116
156
98
82
162
114
107
131
138
139
158
120
49
108
148
113
94
112
87
151
76
62
112
119
99
54
87
128
49
127
81
87
114
130
105
79
108
144
130
125
86
81
135
83
93
81
123
163
140
90
138
94
83
68
105
110
129
127
148
54
151
98
103
122
161
134
81
102
54
95
77
93
140
109
167
90
141
90
49
54
102
54
153
169
110
74
115
140
105
127
106
145
107
98
113
95
140
106
148
85
87
83
54
81
129
59
82
98
74
54
129
98
102
112
135
74
127
147
101
123
142
133
111
108
107
63
108
195
141
98
161
109
122
112
114
95
95
54
160
101
161
124
130
116
205
84
127
105
111
135
131
93
143
133
59
109
104
117
113
126
98
177
182
67
94
139
96
124
54
54
131
95
90
149
74
112
165
99
97
114
143
81
163
98
157
105
112
105
90
74
90
155
113
119
124
88
102
133
90
109
124
131
149
73
76
107
141
119
93
90
117
119
105
157
106
124
108
102
117
99
121
98
179
107
102
148
106
90
147
144
124
112
142
95
150
95
144
110
83
123
106
133
74
125
180
76
119
102
116
92
95
89
54
96
146
87
102
95
156
45
54
147
178
110
97
98
123
113
87
146
110
96
125
111
126
108
81
132
151
112
114
49
102
144
135
140
196
133
110
77
141
147
141
54
131
131
103
185
119
82
77
144
74
85
87
113
163
54
54
144
103
59
101
82
149
112
118
103
85
125
174
146
54
130
87
49
156
108
89
136
143
124
54
132
129
89
128
130
103
106
111
103
115
143
98
124
49
97
77
103
101
108
54
102
125
90
110
105
149
146
113
133
126
98
98
144
118
117
125
163
177
97
73
100
103
129
156
140
153
108
116
135
171
82
128
49
162
140
136
108
131
154
95
59
77
119
95
151
147
134
98
140
136
85
90
75
123
92
61
127
149
176
104
94
72
130
119
166
133
156
61
97
59
108
93
54
142
105
155
152
148
87
200
127
100
106
125
100
135
95
128
173
90
74
125
111
95
83
112
54
85
86
119
79
127
143
54
117
125
82
134
154
168
95
83
107
122
123
134
125
131
87
108
76
102
113
115
102
157
165
170
111
147
49
143
125
146
132
54
90
177
94
90
67
98
103
98
125
153
90
117
127
151
82
115
109
141
98
49
54
147
83
164
54
127
79
87
127
125
94
85
54
113
108
138
142
130
159
95
137
151
98
98
125
145
162
96
120
128
92
131
107
67
111
83
158
125
166
94
99
93
112
104
100
127
128
108
105
116
54
148
77
92
108
153
104
125
104
96
110
77
134
136
103
154
131
104
77
145
95
86
102
103
125
135
132
103
81
98
145
102
102
103
132
54
111
124
59
131
103
54
90
54
89
139
126
74
125
49
125
113
54
126
153
61
97
124
82
191
144
113
81
87
112
62
139
149
80
98
132
140
59
155
111
125
130
103
152
99
178
148
108
80
156
111
83
98
128
111
108
108
87
104
98
99
132
61
149
100
77
83
124
113
114
125
114
79
177
110
140
143
81
119
87
90
79
107
105
95
105
107
67
82
132
112
140
133
135
102
114
171
120
180
151
104
146
83
102
119
120
177
139
108
98
133
161
123
155
119
108
179
127
100
83
108
135
118
42
110
114
201
91
124
74
140
108
125
79
69
91
145
61
83
87
102
127
104
96
108
126
114
179
98
81
129
117
113
159
153
113
160
101
170
140
78
93
54
97
140
86
139
150
133
100
104
110
49
130
98
98
124
158
144
95
141
102
99
117
121
125
108
115
82
95
122
97
102
130
74
151
149
149
133
101
182
93
102
76
145
127
148
131
98
98
145
177
104
135
131
101
136
54
108
49
138
134
87
112
108
165
87
49
81
202
131
68
54
54
148
115
129
94
179
145
162
118
125
91
99
81
115
157
95
83
97
139
107
83
94
128
81
129
136
111
131
120
131
132
120
103
103
102
87
135
179
95
74
54
102
90
170
88
103
54
153
127
118
95
153
96
167
135
173
155
97
85
101
108
114
76
127
113
109
81
112
143
125
144
82
129
139
113
102
130
141
90
110
94
119
54
103
67
155
107
163
77
95
148
95
109
96
133
92
146
117
81
100
81
95
103
131
129
150
98
104
117
165
148
93
101
101
125
108
108
117
89
104
103
124
123
134
110
188
130
103
54
95
145
106
147
169
146
118
131
77
120
115
100
103
93
148
78
96
90
129
54
200
149
183
119
98
120
147
91
96
135
108
108
138
129
81
96
129
128
116
113
118
103
136
122
148
87
149
143
110
97
102
139
100
133
95
177
79
131
119
130
119
112
148
54
95
120
126
101
117
109
82
81
173
108
125
76
133
109
93
104
81
142
122
108
98
114
110
114
59
102
102
54
177
120
103
117
131
75
114
113
93
105
140
115
115
126
133
90
144
122
110
49
108
143
67
106
157
86
114
141
120
112
103
82
131
74
143
162
102
67
111
108
137
128
129
71
95
104
120
99
81
177
107
90
158
99
128
134
163
143
116
68
105
108
140
74
128
110
106
89
83
144
189
105
133
120
138
173
116
54
136
59
114
131
104
180
125
107
154
61
67
108
116
169
108
125
106
107
119
107
129
85
115
165
49
98
135
131
109
105
116
125
166
106
169
138
115
121
78
120
151
131
120
96
103
112
98
102
82
143
103
131
186
99
54
90
95
90
158
159
101
97
115
90
95
125
103
108
74
83
152
128
148
157
54
88
127
145
161
77
87
148
149
111
97
145
102
128
87
102
77
153
118
90
124
139
98
74
49
108
122
95
149
148
118
155
87
108
94
77
158
135
113
59
81
59
54
103
107
75
125
108
90
137
77
141
122
109
108
106
100
126
113
90
95
147
102
95
142
168
148
102
128
99
81
163
125
74
84
118
81
148
81
90
67
113
120
98
140
108
131
54
128
108
116
124
130
108
86
68
108
164
54
135
124
112
102
87
107
132
136
95
144
115
150
87
95
149
150
125
106
122
164
91
101
98
98
107
141
115
135
80
54
89
108
115
144
113
147
158
97
190
101
128
123
141
107
124
173
96
81
90
133
123
77
85
54
90
145
119
82
102
123
120
132
158
103
121
95
126
90
159
117
59
76
99
133
146
158
125
95
161
61
106
99
81
96
137
182
99
113
93
97
148
73
192
95
123
154
120
127
125
126
115
127
97
125
81
140
124
124
82
99
109
101
107
78
93
134
190
93
115
179
133
146
102
129
124
92
81
150
103
102
169
106
122
99
167
157
93
146
81
59
49
104
96
81
139
74
154
118
98
132
147
93
139
95
157
131
137
94
128
150
172
130
125
103
149
76
105
129
164
59
107
125
135
169
90
87
123
125
148
214
136
102
179
110
136
146
105
82
126
79
116
101
200
121
108
113
96
117
109
125
93
105
137
108
54
101
110
127
133
97
92
111
90
92
54
95
67
126
150
142
142
119
74
162
134
108
114
110
143
129
92
54
96
116
138
128
172
67
112
82
90
80
99
96
194
141
173
128
106
59
87
85
113
143
129
152
98
106
202
158
54
138
128
120
121
92
82
59
98
96
77
102
91
54
103
122
81
89
125
54
135
158
85
161
133
130
102
102
110
86
140
133
107
81
154
137
108
93
89
108
131
108
98
108
107
108
116
120
49
143
98
120
78
87
96
139
155
125
125
112
166
93
113
59
99
59
116
158
122
81
76
98
102
90
147
97
98
141
68
81
59
114
59
139
165
124
77
106
77
54
54
103
145
82
91
54
78
127
108
118
87
148
123
98
131
115
76
148
74
69
119
70
98
103
169
106
98
147
108
124
134
81
108
106
54
107
135
103
131
134
144
133
93
141
108
204
161
200
148
116
77
108
121
123
79
105
108
112
54
77
149
102
137
85
143
82
114
130
111
141
98
96
178
77
103
100
118
77
182
59
140
142
135
135
158
54
54
74
140
108
74
82
137
162
149
78
97
69
87
122
158
115
91
128
74
103
85
160
117
143
96
144
127
108
119
59
108
54
98
86
94
85
106
148
133
140
148
49
68
128
95
123
67
106
102
121
91
69
77
74
123
70
105
135
128
136
54
97
130
120
111
120
159
79
102
117
79
112
149
137
112
74
167
143
93
133
104
151
91
91
98
207
125
126
128
101
102
85
100
85
142
114
127
103
106
81
99
160
180
108
138
101
170
154
140
111
141
125
104
148
128
78
123
54
89
148
126
93
77
131
158
142
99
116
163
95
95
107
143
87
128
125
177
76
69
54
131
66
84
118
105
103
158
141
139
105
76
144
104
54
98
131
95
105
127
119
80
119
54
157
120
135
150
54
186
98
136
105
142
114
111
83
102
87
101
83
149
98
68
156
133
116
77
135
148
122
95
122
118
140
113
54
95
131
98
128
93
95
167
143
77
133
124
108
160
171
100
126
126
67
139
103
79
91
99
125
125
141
159
81
169
135
113
129
132
121
110
116
91
159
115
89
108
94
87
59
112
81
78
131
87
95
98
102
139
92
122
120
108
95
140
95
54
116
82
98
150
120
146
150
104
87
155
138
133
106
97
102
217
183
172
73
131
119
116
115
140
140
108
111
134
160
84
54
104
85
135
161
134
102
107
118
133
107
133
151
116
77
109
111
54
98
86
98
103
128
132
112
102
148
96
132
147
129
115
135
128
146
82
101
131
119
92
91
140
137
90
161
101
133
93
126
112
69
113
170
133
119
110
96
78
112
103
148
111
114
137
129
118
86
139
113
105
74
126
87
124
90
73
81
143
138
85
69
119
110
101
124
114
106
138
74
141
112
137
99
114
194
108
84
115
112
102
80
122
81
98
98
122
140
144
108
115
124
148
77
95
108
97
129
142
123
110
77
117
90
102
77
127
96
177
124
151
89
84
129
137
125
130
117
54
77
105
54
113
100
139
116
118
132
128
98
95
93
129
69
90
116
101
149
67
143
127
147
127
61
108
110
200
126
90
83
103
123
117
145
100
99
97
177
90
101
158
61
129
127
96
119
91
175
165
104
121
93
125
108
154
93
117
128
109
107
120
131
98
95
108
144
107
145
127
95
131
83
164
102
59
90
107
139
153
96
90
145
124
102
91
145
126
108
116
77
172
82
111
122
92
112
108
131
140
77
103
152
103
143
92
128
81
109
98
118
135
112
77
112
123
86
104
113
95
78
117
129
113
117
124
61
139
76
59
105
95
80
175
193
138
125
111
135
161
148
140
127
147
90
103
170
120
160
105
119
128
148
133
74
69
124
76
122
128
111
109
57
145
87
90
91
178
84
170
105
139
130
138
81
101
81
130
95
113
140
123
100
89
96
102
78
87
133
138
59
146
93
106
125
108
142
98
110
105
142
49
124
161
172
105
124
105
154
135
139
119
108
103
116
100
103
54
74
54
145
125
67
106
95
136
170
108
124
92
108
175
96
76
170
137
117
54
95
145
98
105
111
186
103
59
54
85
149
91
125
78
98
133
175
92
113
68
121
180
118
141
98
111
137
141
144
95
138
120
121
104
95
102
105
112
152
94
99
118
95
148
119
134
108
125
142
121
116
97
149
124
125
128
143
99
149
96
108
148
167
75
74
148
172
160
127
176
78
93
135
114
137
120
76
95
95
91
162
106
143
190
81
107
169
116
191
129
102
125
110
125
87
168
107
139
102
78
124
102
93
81
83
167
108
115
68
93
113
111
97
174
95
113
124
126
141
87
124
147
118
151
145
106
108
160
91
118
120
153
120
107
111
152
86
98
104
128
143
137
168
98
104
174
120
154
116
93
54
54
143
61
54
125
148
54
85
95
115
108
84
160
148
129
102
102
95
131
122
110
95
101
102
111
90
177
153
126
67
120
95
158
59
140
110
126
77
141
54
218
127
112
54
113
93
143
148
127
54
158
149
90
177
91
87
98
89
98
108
123
113
116
118
117
107
113
120
118
125
115
114
134
168
172
125
93
54
133
98
98
133
132
74
54
78
79
110
86
79
129
120
121
102
77
153
74
115
135
110
116
146
82
125
112
104
162
108
104
150
125
88
89
99
85
148
107
54
167
96
134
106
138
111
109
68
175
132
129
140
135
95
97
102
112
156
110
68
139
125
150
123
97
154
100
147
151
115
122
118
112
120
78
183
126
169
54
93
131
125
122
113
90
109
80
105
54
100
134
122
167
99
79
117
154
124
106
83
89
86
113
81
112
108
120
89
196
115
162
119
90
85
178
109
115
130
125
107
122
182
123
129
118
112
98
87
188
144
59
82
95
144
103
81
131
128
112
164
100
151
141
116
138
54
90
54
113
138
95
129
157
136
98
115
49
149
54
181
123
138
67
135
79
134
90
129
101
128
144
61
121
59
95
97
45
106
125
114
112
145
54
135
135
95
153
125
76
108
116
135
120
125
110
97
123
102
116
81
98
119
124
98
112
111
90
77
117
95
125
134
54
142
148
98
101
113
101
89
119
155
104
107
100
123
100
67
135
124
89
142
76
90
106
126
99
177
108
200
139
54
158
119
115
129
107
108
105
49
132
69
148
108
201
118
129
90
109
88
172
97
151
105
94
148
154
125
141
88
122
115
90
131
145
82
101
113
74
137
121
135
98
110
87
84
93
141
120
103
76
105
102
115
96
95
100
145
118
107
93
118
140
87
110
102
179
98
67
49
79
137
102
86
75
111
119
97
153
82
123
128
130
140
123
149
117
165
78
149
98
135
95
137
130
95
104
122
102
122
168
186
98
147
135
98
137
122
91
73
87
140
148
103
59
149
119
170
120
112
141
76
135
127
89
158
85
98
92
102
128
102
95
122
98
105
107
122
153
109
216
88
90
125
96
95
76
107
117
108
116
98
81
105
92
113
131
152
67
117
131
98
81
95
133
103
124
120
74
118
61
174
125
135
171
101
95
102
128
161
90
113
119
152
173
142
127
96
109
78
103
105
99
78
54
76
153
132
98
130
120
98
83
81
122
107
83
91
102
153
128
96
98
129
113
148
123
98
129
49
124
172
133
136
102
93
110
106
54
119
135
87
81
102
108
77
103
116
74
128
146
164
93
108
149
108
54
144
122
150
117
126
83
165
149
80
112
102
68
131
89
135
144
128
108
81
119
122
90
127
54
95
137
158
85
120
49
149
81
106
68
103
114
164
67
108
68
95
103
133
92
103
141
81
112
72
114
118
180
92
115
144
49
103
141
125
87
138
103
127
128
49
125
107
106
62
154
168
115
139
108
208
102
139
137
191
81
68
103
135
102
161
90
59
121
158
103
154
143
143
74
124
163
102
93
118
102
83
112
157
59
131
99
114
100
144
149
54
113
115
129
104
134
87
76
125
157
70
127
122
127
77
125
143
85
99
143
108
115
104
109
155
95
128
83
105
76
108
93
135
92
167
100
148
68
80
182
74
123
114
109
126
110
135
112
117
108
156
96
149
96
125
161
116
125
108
103
135
115
114
163
59
89
113
108
169
105
104
104
163
54
74
98
121
96
90
108
131
108
151
98
92
98
131
118
124
124
45
102
54
113
72
54
95
124
129
95
90
76
105
133
112
108
83
95
118
140
76
96
98
85
136
74
117
160
95
167
94
143
177
99
95
130
61
105
94
163
49
113
76
83
54
151
82
54
77
177
96
123
137
105
102
129
181
158
54
158
94
81
105
74
100
121
108
98
95
150
95
157
126
93
114
111
89
146
81
108
140
127
85
90
152
163
106
95
99
91
90
135
118
111
138
77
144
167
125
137
102
135
97
102
107
99
111
123
90
77
93
154
144
143
98
116
112
98
71
120
126
137
95
154
95
68
108
110
68
110
120
130
141
148
103
106
59
49
111
107
92
129
106
144
128
77
90
74
122
69
132
108
145
131
113
112
168
111
138
119
81
123
116
112
114
177
75
163
79
115
129
133
100
127
135
90
172
169
156
130
98
105
108
120
120
113
78
140
133
147
123
133
142
83
74
77
85
135
143
103
148
92
88
105
54
98
146
108
76
104
93
120
121
102
104
123
120
95
143
148
91
119
95
135
132
138
146
135
171
96
128
151
129
98
85
120
148
147
93
97
105
59
108
108
118
105
83
177
139
133
54
82
134
140
81
136
117
98
157
54
133
94
103
83
112
105
145
78
81
98
137
103
103
168
131
97
119
133
108
161
54
90
149
153
116
102
99
93
103
95
54
178
147
141
119
95
123
123
101
135
78
95
110
95
84
106
78
67
97
105
145
132
136
100
119
98
82
116
114
133
69
97
67
135
177
84
108
103
141
94
93
128
166
115
102
170
99
113
89
156
123
131
102
79
103
125
67
134
169
87
150
54
81
74
141
101
95
116
127
105
168
101
133
98
73
148
74
81
87
128
104
139
95
103
144
107
131
85
74
123
146
198
106
124
108
113
119
95
82
122
104
67
100
121
122
67
104
165
98
75
100
105
108
74
113
107
82
87
120
170
142
120
97
93
102
153
87
112
115
89
54
107
144
144
183
166
80
117
142
114
128
123
111
59
68
216
158
115
81
119
122
90
123
78
122
121
116
108
119
118
130
143
77
130
180
131
109
148
131
118
126
155
75
102
108
117
101
102
95
112
105
116
147
143
120
106
128
143
117
97
127
131
81
171
98
117
130
138
108
120
108
108
87
172
98
133
113
88
105
77
119
54
127
59
112
162
113
134
167
127
107
102
107
91
122
54
147
107
129
167
175
153
131
119
115
114
74
113
130
122
103
82
74
135
96
123
128
87
234
95
98
95
127
97
122
54
98
108
90
107
126
54
102
87
77
125
82
83
136
144
172
54
78
178
100
54
118
119
102
103
59
118
108
126
103
83
69
161
122
115
87
141
85
86
87
147
120
156
120
121
67
98
139
98
118
105
108
49
106
61
61
105
88
49
107
112
139
87
97
90
128
67
144
108
104
125
103
87
98
170
141
95
127
161
177
122
117
108
81
133
119
133
122
147
158
81
81
167
104
89
165
70
133
111
106
78
81
124
131
161
101
99
90
88
67
171
148
147
161
68
110
139
108
91
98
159
74
108
57
67
91
204
81
98
104
109
134
108
98
138
59
118
161
145
127
84
112
182
87
121
158
96
161
148
74
81
103
54
156
95
82
77
141
145
120
109
95
90
107
85
111
93
74
133
168
126
136
108
103
123
93
95
87
127
83
110
154
89
190
101
69
119
144
103
111
131
108
108
126
152
130
93
107
89
87
101
102
49
118
76
100
107
162
54
74
101
137
142
123
49
108
93
93
54
98
168
132
181
179
54
102
163
99
173
113
106
115
88
67
98
128
124
112
125
83
128
111
122
95
108
118
154
54
158
89
122
140
101
93
160
127
98
87
127
106
94
77
158
125
163
98
141
140
95
54
102
54
118
95
54
133
136
134
120
162
160
115
49
91
98
125
135
75
49
89
54
59
98
135
90
54
81
91
153
140
98
121
129
90
61
92
54
73
82
82
106
146
133
166
142
109
145
156
132
145
118
154
125
148
85
127
154
165
106
107
77
94
128
116
98
132
95
76
102
90
158
95
114
127
143
107
77
83
109
88
105
98
119
49
150
100
76
128
142
174
109
117
96
117
74
146
113
102
155
150
102
83
108
92
102
178
122
93
133
80
194
61
59
90
97
153
169
135
103
143
108
160
118
105
82
98
138
81
129
131
98
128
84
120
120
144
122
127
124
108
80
99
67
87
102
124
54
103
49
191
132
120
59
123
102
111
114
93
125
161
156
87
109
151
123
103
83
106
67
112
111
84
101
49
110
145
127
135
94
137
105
81
84
140
173
143
108
97
102
124
120
164
129
103
135
105
129
112
79
119
99
103
100
98
123
180
194
155
131
106
143
146
129
141
126
119
98
109
142
83
143
108
127
159
127
149
102
67
118
136
140
117
98
125
128
98
98
95
111
76
106
110
149
125
105
128
85
89
120
82
87
83
143
131
93
109
180
138
81
164
148
131
129
90
131
105
158
107
59
105
161
146
126
100
161
148
142
94
133
123
103
83
110
98
143
123
83
193
61
113
134
109
105
164
127
132
118
91
105
125
87
120
226
123
96
117
134
89
59
103
106
131
115
107
157
93
129
129
140
149
146
101
106
119
74
131
90
69
131
158
96
49
113
59
65
134
103
125
125
136
54
126
76
147
126
129
131
105
138
118
103
98
143
112
176
119
130
120
113
54
131
118
130
125
102
136
158
95
104
105
130
83
89
134
109
100
108
108
112
54
129
234
59
108
49
106
131
123
142
148
77
129
134
91
59
158
125
188
67
126
119
135
108
164
63
101
108
143
108
113
127
80
144
80
100
95
89
100
96
65
135
125
68
95
126
179
146
102
125
142
144
144
139
83
175
76
136
115
145
226
97
123
173
100
131
167
152
144
61
90
148
59
84
104
129
128
101
115
112
102
95
148
141
81
90
141
93
156
150
154
136
125
99
106
119
185
90
141
151
121
117
144
54
90
96
163
89
91
125
138
141
132
128
110
82
105
81
110
138
80
103
115
87
54
89
145
69
89
177
49
119
125
102
87
156
97
144
122
111
139
142
141
130
92
184
106
68
119
67
98
142
54
90
140
124
54
131
131
109
144
54
144
105
93
59
83
133
198
155
201
67
120
94
105
190
95
119
127
152
76
54
159
87
83
94
154
91
126
114
49
118
84
113
54
111
105
131
74
113
108
140
147
143
111
131
107
192
115
93
133
98
99
95
97
130
74
133
95
131
49
96
107
165
115
85
107
145
108
146
101
147
153
98
95
104
75
133
102
95
80
156
82
59
85
134
145
125
98
165
105
119
148
141
59
95
106
92
130
143
132
144
159
134
54
177
87
77
93
155
140
125
82
142
94
54
76
158
49
138
54
82
151
108
49
138
83
96
95
90
106
125
106
123
144
106
134
130
156
148
80
105
129
106
147
87
82
104
112
100
106
108
105
82
74
133
98
119
111
172
110
77
77
143
91
89
131
105
90
162
116
135
80
154
140
108
110
72
69
89
113
103
152
88
54
127
177
98
98
117
100
158
127
101
59
105
54
112
121
115
161
116
125
167
54
105
78
102
115
67
54
114
143
85
157
136
107
143
137
151
90
103
111
106
54
78
85
108
98
128
123
142
116
124
90
143
108
121
106
105
128
108
102
87
128
133
112
120
98
101
132
131
125
140
110
144
116
154
86
82
95
103
65
108
102
134
105
101
151
109
157
104
98
80
122
162
158
205
95
90
54
112
212
115
94
78
102
94
107
134
129
77
155
109
134
113
114
141
156
109
100
145
140
97
132
97
112
88
182
79
112
145
147
78
97
105
127
96
106
146
149
98
122
78
144
164
108
120
121
166
158
186
123
94
116
54
158
130
101
101
89
140
119
83
127
103
131
95
118
81
100
105
49
67
111
102
101
102
147
96
117
79
95
135
77
158
97
152
120
54
106
122
134
145
111
100
54
87
145
125
101
137
57
139
85
147
127
154
140
100
138
131
120
87
59
103
95
127
117
108
83
178
108
108
77
77
98
114
129
148
147
98
147
125
101
169
139
116
81
87
148
92
98
139
81
137
113
68
72
108
120
149
83
120
65
110
81
140
77
90
90
102
102
123
98
142
139
121
134
114
108
67
77
119
109
155
49
126
111
130
108
152
104
144
118
138
80
174
112
101
105
112
108
119
117
115
128
54
115
157
82
123
115
97
83
104
101
119
192
93
94
137
82
144
106
89
54
150
135
88
131
124
106
168
102
144
168
97
144
182
105
141
125
126
110
108
159
104
106
127
115
111
153
107
81
172
121
109
95
134
74
101
102
123
133
161
81
96
116
103
102
148
91
143
138
127
133
126
143
74
140
80
88
161
100
104
112
108
111
114
177
149
81
123
97
74
135
127
115
100
120
188
139
103
105
109
128
95
167
96
78
141
123
120
98
105
139
86
102
93
98
125
104
100
122
156
97
135
139
96
143
110
126
115
161
146
77
107
131
123
129
90
102
145
76
103
49
125
69
161
85
160
116
104
151
121
136
124
98
129
104
98
111
68
143
140
102
118
107
124
54
135
108
135
171
122
150
94
54
131
96
77
140
85
108
97
132
118
112
74
109
87
120
91
104
146
123
133
148
124
98
87
159
108
121
106
67
112
98
169
129
97
143
100
108
97
54
113
54
102
137
117
59
102
96
154
110
135
135
80
234
140
106
149
85
113
94
94
151
165
139
113
143
108
54
122
96
160
132
125
156
87
101
146
121
120
103
82
101
54
113
154
144
85
132
98
180
65
167
95
83
164
97
122
101
103
114
139
129
139
125
194
127
95
97
99
80
109
110
88
81
123
143
133
133
130
110
90
200
139
122
98
133
67
125
150
103
108
126
156
99
59
90
59
181
160
77
141
76
49
137
189
150
165
133
123
105
146
100
79
190
93
95
105
74
167
108
152
109
135
119
95
90
104
111
135
106
137
100
112
126
131
149
94
172
95
90
103
147
95
115
117
98
176
128
118
54
125
125
119
102
126
162
106
151
110
118
130
102
101
96
84
100
149
110
141
100
153
82
146
111
141
102
82
117
132
161
133
93
108
87
113
106
163
91
122
105
115
237
87
107
79
97
110
108
59
94
119
136
98
83
81
118
98
125
129
98
97
97
205
125
134
90
164
136
95
106
87
131
81
87
95
85
97
100
106
113
132
100
81
129
119
94
117
80
152
133
81
148
115
108
105
144
139
139
99
101
149
150
156
179
104
54
140
132
74
113
138
139
160
127
148
74
112
148
108
165
103
102
128
133
129
91
179
128
125
112
99
105
96
154
122
128
102
150
212
107
95
85
145
95
49
117
146
92
127
101
144
139
107
81
81
125
145
95
135
97
120
101
81
97
137
91
101
168
125
125
125
77
88
84
144
94
131
123
87
110
95
80
136
126
128
100
106
127
101
146
54
96
177
163
125
142
101
150
127
59
96
98
93
156
113
132
125
83
107
82
161
141
94
132
165
128
72
108
111
76
146
121
155
102
135
111
114
99
114
113
125
83
107
143
100
142
95
78
128
107
109
131
49
191
95
105
139
149
140
76
97
102
92
59
116
108
96
107
110
85
87
144
135
134
91
147
74
91
118
132
106
177
87
93
163
70
108
123
82
131
49
143
107
137
91
144
101
139
148
138
108
135
59
128
104
107
145
144
76
105
116
133
148
86
108
144
95
128
133
181
125
82
109
95
125
142
74
116
98
107
221
100
115
95
78
141
113
108
163
121
95
95
155
49
132
108
54
142
138
117
49
128
115
104
95
156
110
88
100
106
105
96
113
134
113
138
95
123
147
97
108
160
114
123
128
114
116
131
125
96
80
82
138
74
54
129
102
138
129
101
110
168
165
78
81
69
81
89
170
111
102
122
116
145
185
167
65
128
133
98
118
148
107
113
54
175
139
142
146
106
107
78
90
134
114
108
67
158
143
101
93
127
107
59
93
168
104
136
106
98
98
121
45
131
148
147
111
139
73
142
108
118
95
114
127
125
112
67
117
95
148
87
80
130
141
125
99
150
80
138
102
147
177
108
105
110
134
106
81
63
145
42
166
138
89
106
54
108
105
54
175
115
135
85
109
142
111
78
129
82
143
128
96
49
138
141
178
143
127
124
143
77
86
54
124
167
123
131
90
131
110
96
101
86
98
113
106
162
115
116
96
112
86
113
113
93
49
103
69
115
87
153
49
125
101
111
80
140
107
102
129
145
133
125
113
108
105
165
188
104
149
100
121
113
160
59
107
151
156
49
116
134
54
145
67
149
123
49
80
115
108
91
76
172
144
117
98
140
98
127
111
125
112
79
98
108
94
90
132
165
165
108
140
180
54
124
97
116
125
156
101
94
78
93
85
77
139
158
98
125
113
74
116
189
113
95
143
158
129
118
137
87
153
80
144
107
98
128
137
114
54
49
125
139
112
105
102
97
104
165
86
102
91
91
96
148
93
107
89
95
131
108
80
103
116
148
95
130
99
102
156
134
89
108
133
54
147
98
170
95
116
125
99
141
81
106
140
156
147
92
98
146
124
147
104
69
95
59
95
82
81
99
108
82
123
153
108
96
89
125
103
110
97
94
107
95
106
115
144
146
122
106
140
108
106
97
59
102
141
102
80
74
127
95
144
118
106
132
96
70
129
135
87
88
113
121
98
92
91
108
129
133
165
145
131
95
113
132
145
98
139
153
129
54
108
123
76
122
113
199
120
105
126
93
137
121
54
77
120
120
90
99
103
117
134
125
90
111
119
73
77
120
89
123
158
104
103
128
70
139
135
141
126
107
91
185
96
108
130
145
91
147
54
131
130
135
99
97
105
167
74
138
82
80
61
107
115
99
126
102
127
76
141
180
157
117
74
90
151
76
125
108
98
96
128
153
103
107
95
106
114
128
125
84
118
54
127
190
141
111
127
131
96
113
54
135
103
128
155
127
136
162
99
116
78
148
161
134
103
105
137
59
104
76
218
94
125
141
113
108
54
113
102
82
120
160
93
127
76
101
122
108
54
142
163
143
89
131
103
49
100
90
140
83
91
128
108
145
116
118
122
106
77
78
115
102
119
130
142
155
69
139
109
67
150
123
120
113
172
82
82
109
83
84
106
102
98
123
116
133
78
96
116
118
54
100
141
102
129
147
140
146
113
132
157
97
196
111
125
90
102
148
188
132
106
161
95
149
133
91
81
95
188
83
54
136
157
87
81
140
91
120
115
103
204
157
82
117
72
107
120
158
102
139
132
93
129
94
88
154
105
159
76
102
149
54
161
78
133
111
79
110
83
135
133
78
110
182
68
105
81
107
102
67
89
140
147
97
117
177
83
102
90
98
137
120
103
59
159
107
134
133
111
95
116
128
124
96
154
129
157
113
86
113
92
132
139
137
124
107
78
105
132
93
107
132
103
54
96
163
104
49
130
87
135
153
108
144
113
110
100
123
142
136
102
112
131
93
117
90
134
142
118
125
119
100
153
105
108
98
114
106
124
132
134
158
173
108
80
93
95
177
105
115
103
54
136
120
129
94
112
149
122
98
139
96
96
145
103
138
146
95
77
179
107
83
97
89
95
54
144
112
118
102
120
155
170
144
103
102
117
115
117
102
135
105
49
135
125
90
85
118
134
87
85
103
143
99
126
143
124
158
118
119
146
83
138
59
54
54
134
95
142
77
79
102
83
107
139
204
108
135
101
54
117
115
191
129
109
96
158
81
148
140
87
102
146
130
101
111
90
54
143
166
96
81
111
90
114
112
54
54
124
82
102
120
106
134
102
108
74
59
187
98
109
81
49
76
133
83
151
120
110
105
59
49
112
69
90
54
93
89
144
129
131
54
95
54
133
183
85
159
104
109
123
76
98
81
117
76
144
116
130
73
116
94
99
131
97
128
160
138
103
173
115
158
172
108
128
156
85
105
116
88
91
113
49
95
123
111
106
81
136
133
133
169
122
82
95
132
101
182
141
89
114
98
54
70
87
82
103
148
107
105
158
120
98
83
109
98
95
76
98
167
77
100
59
82
130
128
78
130
128
125
93
125
106
91
143
83
191
144
203
128
136
104
121
89
160
169
92
54
97
123
92
145
145
89
134
103
83
152
149
90
110
152
87
138
88
150
133
146
177
116
148
128
54
91
113
63
108
114
102
104
54
110
76
87
151
68
113
155
126
120
86
103
138
102
146
156
131
83
103
100
83
117
119
128
126
144
140
76
69
83
82
102
127
96
100
107
130
138
114
138
103
120
123
120
165
122
88
86
95
88
54
79
128
114
154
102
143
89
82
120
163
99
54
78
136
142
103
108
120
81
87
112
118
119
102
139
148
128
135
95
54
128
112
145
122
118
144
94
124
147
107
124
102
102
175
135
118
114
145
109
108
166
143
116
150
118
80
135
104
115
91
100
163
107
125
97
107
138
166
116
122
103
92
104
77
136
81
120
98
107
129
95
145
95
154
110
126
123
145
119
149
123
122
97
127
92
54
185
108
74
81
101
104
95
110
95
151
137
69
119
139
137
93
103
96
102
104
166
133
108
91
90
75
144
54
185
54
73
106
133
76
170
177
132
156
101
127
132
118
106
165
149
106
103
117
156
96
59
82
119
49
98
129
95
104
125
83
149
143
143
194
108
98
85
78
149
74
153
54
74
97
54
103
96
49
54
84
105
102
91
116
76
139
95
78
121
99
168
105
106
110
97
96
93
77
85
122
85
141
165
59
98
82
113
169
90
54
140
74
117
85
121
93
124
125
115
90
80
142
100
124
93
111
144
90
115
128
125
95
117
106
132
135
140
103
103
98
110
145
116
102
89
95
119
167
101
136
100
137
108
93
128
154
123
128
140
140
162
111
93
115
92
102
132
119
108
133
108
104
95
98
136
113
67
170
102
139
99
106
59
158
160
142
76
145
140
108
135
80
101
140
123
81
148
135
125
119
97
105
124
84
104
99
131
178
137
101
161
100
113
96
125
131
79
93
171
181
101
130
112
126
96
92
130
122
108
102
90
99
96
54
135
106
140
96
127
90
160
110
54
94
130
126
94
115
146
105
95
113
113
155
135
149
90
132
126
90
112
100
98
77
202
129
77
73
118
103
130
100
93
100
135
102
119
138
113
158
103
97
77
122
113
199
153
101
97
77
91
150
89
116
133
96
93
101
131
103
91
108
120
155
114
87
98
137
117
102
102
95
110
111
71
173
135
81
98
135
104
81
143
59
105
100
108
99
83
163
95
74
71
149
158
155
143
97
107
102
68
147
132
125
103
129
124
125
101
96
108
135
131
120
188
131
95
156
68
105
106
150
177
86
128
54
154
59
165
172
98
131
118
94
81
68
136
98
156
127
148
165
128
148
81
102
114
116
128
146
133
81
124
149
105
202
140
118
109
69
83
180
83
127
98
148
122
107
108
104
76
119
142
146
82
131
150
101
99
168
116
133
155
102
83
59
106
98
116
70
140
82
111
102
82
157
131
102
85
95
54
68
119
119
77
109
128
113
85
67
122
100
134
148
131
81
150
106
128
138
103
93
118
160
102
77
135
68
127
59
102
135
93
127
151
85
127
99
121
145
130
127
102
112
135
137
172
101
111
122
161
135
102
68
99
102
83
146
69
116
54
113
154
148
82
147
54
113
127
151
81
98
168
99
115
165
95
116
83
126
83
115
86
98
54
172
147
179
54
77
133
118
90
142
94
123
61
124
146
100
154
102
106
149
163
179
128
123
143
205
119
150
96
109
129
102
95
143
149
54
143
83
125
154
100
163
158
133
112
108
151
54
107
78
127
128
116
174
96
144
94
115
77
155
106
182
76
92
106
74
131
95
125
101
105
140
92
82
103
54
54
145
96
89
104
54
116
148
102
98
98
106
108
78
122
56
157
108
128
119
108
156
86
128
121
98
97
49
149
124
99
54
49
90
173
139
139
93
127
145
111
49
112
156
158
96
158
102
103
108
190
129
163
109
102
108
92
116
135
54
98
69
103
102
102
95
119
109
114
87
49
105
129
139
81
140
107
111
81
132
165
136
93
147
165
137
120
144
108
104
168
85
89
107
135
113
99
98
161
67
95
158
129
117
158
135
98
49
131
116
135
49
108
133
120
111
122
128
139
159
94
97
152
140
124
133
141
68
83
123
98
137
85
95
108
54
98
187
125
120
95
105
111
87
76
128
102
147
73
145
122
133
122
125
49
108
126
145
177
98
108
137
74
144
54
120
191
112
105
165
103
90
95
123
87
142
104
112
96
135
111
102
152
101
125
129
158
108
154
171
132
59
148
112
97
108
119
82
153
102
109
147
78
69
108
132
93
108
85
133
95
78
155
109
159
81
78
141
106
103
78
112
108
102
103
68
113
139
88
82
59
139
98
149
105
150
177
81
85
135
83
86
108
111
126
68
134
113
101
141
109
91
160
138
124
140
146
59
95
108
77
101
124
90
113
110
95
144
133
54
134
158
90
102
108
103
107
150
81
127
199
180
103
103
150
134
125
111
198
148
147
54
107
85
74
140
167
89
128
177
125
98
121
100
108
136
54
102
108
74
133
102
98
125
99
116
114
102
171
105
139
98
157
95
78
145
112
104
142
123
117
99
87
149
125
148
95
177
140
156
98
81
91
101
111
144
131
101
78
104
82
119
107
81
92
152
91
119
91
110
130
182
113
140
167
194
98
123
129
103
100
123
112
97
100
59
102
109
144
160
125
96
102
84
112
88
95
110
144
112
98
112
100
150
156
102
54
111
81
98
94
100
94
105
77
129
113
135
204
123
54
130
147
76
90
124
109
102
124
147
135
95
129
148
74
107
110
99
95
134
54
90
126
199
108
123
109
123
98
158
108
108
146
117
89
131
168
113
130
180
96
83
67
145
178
98
149
151
180
102
81
112
129
124
139
167
156
80
91
100
95
125
137
190
117
76
105
124
128
101
131
148
54
100
107
49
134
74
54
133
120
107
95
102
49
145
173
150
112
121
144
141
123
91
121
154
133
108
130
141
137
108
145
138
109
100
136
145
116
108
59
113
125
148
158
84
103
124
134
99
108
114
90
125
78
81
108
122
131
134
87
95
141
108
111
122
100
144
78
112
123
161
108
206
89
78
81
163
115
124
142
90
113
158
74
78
135
133
59
186
157
118
125
102
119
92
132
90
102
133
107
154
105
82
154
95
126
115
174
152
108
138
54
140
125
135
59
138
95
112
132
54
173
128
134
97
165
115
129
98
154
139
146
125
127
112
108
108
141
168
184
131
108
116
125
139
128
49
135
98
150
82
98
154
112
96
103
155
103
81
158
153
78
116
80
123
69
136
139
171
93
136
113
125
149
145
113
157
108
154
129
143
142
54
121
98
194
84
45
169
82
125
149
145
90
109
126
119
110
143
119
144
100
136
143
105
134
81
108
67
102
61
141
104
143
95
138
111
144
107
138
61
148
93
115
93
110
91
108
76
197
81
153
74
78
107
103
96
59
157
146
49
91
95
177
108
54
140
123
96
82
133
186
149
91
128
145
125
136
150
149
137
82
145
119
108
102
108
143
93
103
103
120
83
108
116
125
103
54
133
135
154
120
149
133
119
97
144
67
125
103
179
120
59
98
127
95
80
98
157
126
108
108
145
98
162
102
119
86
158
114
97
54
105
77
138
82
110
98
111
108
105
155
68
148
146
141
156
103
126
104
115
145
115
125
130
172
167
97
99
135
49
132
200
113
96
137
89
161
104
129
115
118
118
93
99
106
54
104
125
83
145
108
127
98
116
102
90
121
85
54
104
67
103
103
102
85
95
95
108
97
110
93
119
123
59
154
100
104
110
90
49
139
109
121
131
74
127
123
110
77
109
91
144
104
54
104
113
143
98
164
117
81
122
151
77
49
157
82
104
122
109
113
146
107
102
142
140
108
117
108
98
120
155
92
81
108
73
54
65
150
125
108
81
125
54
134
117
85
77
127
59
143
118
145
148
151
96
130
135
132
161
97
115
152
125
139
136
69
107
100
120
152
134
54
90
158
108
67
85
139
101
177
158
144
96
96
54
135
83
117
86
90
154
155
159
139
172
112
101
187
142
144
138
167
143
119
80
111
142
139
171
132
159
61
125
161
177
135
112
98
118
135
102
103
131
98
116
103
95
102
95
103
132
102
82
132
82
97
140
147
153
104
68
59
97
69
175
111
89
98
59
122
82
80
153
123
127
210
134
92
192
122
121
54
100
74
118
76
90
156
181
98
103
104
155
113
106
102
76
110
112
131
107
115
101
130
119
126
108
109
148
81
104
125
104
105
159
90
104
106
137
102
87
73
169
112
98
120
102
61
157
59
157
81
102
78
146
143
145
140
139
128
139
107
204
92
74
108
54
117
54
161
92
117
189
108
135
102
102
118
125
135
69
109
81
103
140
108
127
122
98
127
122
49
79
85
67
113
117
158
144
165
83
200
74
118
49
103
96
54
123
81
80
115
120
105
154
140
102
104
103
143
89
128
134
79
141
107
81
107
173
109
119
151
135
98
74
128
116
140
83
81
67
143
98
164
81
107
98
103
141
138
117
104
179
124
91
77
118
146
155
115
128
187
98
73
137
74
108
104
149
107
140
119
148
108
146
96
129
139
159
92
106
120
108
103
159
99
114
119
136
113
145
95
155
127
106
133
153
98
78
102
102
142
99
92
98
101
98
77
169
200
126
103
105
112
107
113
103
81
107
95
135
112
128
98
98
117
108
116
70
84
81
101
153
116
116
137
169
133
141
124
133
121
81
123
91
145
128
132
87
54
102
148
165
131
115
110
87
92
105
105
137
90
106
90
101
135
113
146
106
134
125
154
128
95
129
103
104
139
135
110
138
49
125
111
133
94
76
98
133
103
146
92
157
86
130
102
97
138
111
108
167
93
129
85
104
119
90
148
162
92
111
117
98
104
140
116
128
154
111
133
61
135
122
84
134
130
114
102
127
49
155
153
129
94
122
95
148
108
96
124
113
102
110
129
96
74
109
86
77
117
89
123
155
102
54
107
74
102
118
127
67
67
83
123
80
81
115
102
135
117
99
95
95
160
167
122
113
95
126
133
177
98
144
103
105
104
90
91
114
95
80
161
146
93
96
119
76
148
119
158
82
165
113
170
107
128
119
128
109
102
152
144
84
150
148
87
101
107
123
127
146
54
62
148
126
85
131
89
110
112
96
118
122
146
98
125
132
108
149
140
169
89
94
113
143
110
127
128
120
77
114
102
67
153
82
107
96
122
121
158
126
128
142
103
114
79
120
143
124
127
96
115
57
106
144
105
108
102
142
76
179
93
172
173
67
96
108
153
67
145
154
162
136
114
139
168
97
97
135
128
92
90
135
109
102
67
95
110
103
116
90
132
84
73
172
178
119
108
108
127
109
95
121
180
82
101
126
107
88
89
108
135
146
123
115
109
119
96
54
167
92
111
54
160
88
157
163
119
133
95
110
163
159
103
102
101
113
157
49
108
117
130
108
108
100
113
186
145
128
99
79
158
100
181
59
148
77
141
110
95
96
59
90
155
154
57
141
158
105
127
113
112
69
131
149
125
59
182
118
211
125
94
124
111
98
108
127
81
135
127
90
186
141
90
108
74
157
124
106
87
121
83
102
102
144
98
87
127
102
89
98
54
95
95
126
100
129
115
144
135
99
98
90
67
108
59
100
115
113
76
151
162
103
129
138
54
149
119
149
125
116
78
89
135
142
113
144
135
115
94
134
116
138
113
108
104
123
131
139
80
132
140
113
119
123
153
133
73
70
167
128
193
89
136
118
146
133
124
134
96
147
159
129
103
105
98
77
90
120
97
96
79
108
104
158
104
128
125
115
113
110
163
110
168
102
113
76
119
83
154
99
90
131
189
81
174
133
101
54
135
162
110
122
105
122
144
103
87
49
100
96
127
131
113
216
101
135
95
107
109
49
133
140
107
149
133
155
129
149
100
145
54
113
116
131
76
104
126
90
54
103
95
141
105
118
107
139
139
108
97
102
119
73
108
100
119
111
103
109
49
99
61
143
108
118
102
138
98
109
123
81
102
137
135
143
103
131
177
141
113
131
91
131
133
108
123
180
119
127
135
129
68
144
134
133
81
67
133
108
108
111
133
80
181
127
127
102
142
54
158
118
54
134
93
118
108
77
93
108
99
83
114
120
108
112
127
82
113
86
115
95
148
89
49
61
84
113
96
98
98
153
90
121
117
49
216
129
128
171
126
105
157
134
152
98
138
108
102
57
98
114
109
158
102
113
179
86
154
127
121
108
125
102
112
124
91
157
104
141
127
102
82
97
150
160
129
123
107
131
143
100
200
129
87
115
82
128
125
113
83
149
92
103
102
157
113
105
140
97
99
130
108
98
123
121
125
99
134
123
85
124
163
186
82
134
110
112
143
135
202
107
81
95
191
73
95
142
105
79
135
120
131
128
144
90
91
151
98
90
95
77
98
59
102
54
156
49
128
93
110
124
149
110
126
95
189
113
109
93
184
110
109
160
98
115
111
102
139
76
102
118
103
49
127
90
108
113
139
68
78
128
59
77
90
106
111
105
74
103
124
177
91
113
137
102
185
102
135
88
128
190
149
107
161
114
80
140
194
102
135
124
135
90
114
82
113
134
132
143
87
146
116
133
125
142
152
82
54
165
136
108
102
140
172
140
102
61
95
91
135
133
49
144
153
217
140
129
92
94
69
73
142
119
102
165
109
88
194
97
98
143
95
125
119
124
119
177
54
102
135
119
139
112
59
147
124
96
144
90
125
169
54
110
90
86
127
80
84
168
77
192
135
161
42
90
101
145
117
92
91
155
102
76
134
141
73
116
148
124
125
120
81
124
167
132
76
149
130
180
148
141
108
148
133
108
138
102
133
105
100
140
129
130
109
102
110
126
108
143
95
77
162
102
148
119
98
91
139
113
92
146
123
106
97
102
54
158
101
54
113
131
87
103
103
94
108
109
97
131
103
137
124
125
135
103
122
74
108
120
116
123
125
130
124
81
125
107
102
131
72
123
135
99
151
128
96
190
159
81
175
108
108
98
120
89
91
120
82
54
150
133
119
99
54
127
103
87
143
105
49
102
102
90
95
93
145
148
125
102
93
108
97
103
137
92
54
109
90
126
78
173
115
115
129
95
144
149
54
108
115
118
88
107
110
134
142
186
86
81
150
102
115
102
99
114
98
102
125
108
80
147
112
114
94
145
122
125
147
110
81
97
125
151
81
133
116
143
104
81
88
133
182
157
121
61
155
135
61
54
146
121
76
129
90
93
110
119
146
154
81
103
89
90
95
77
91
133
95
126
87
133
234
61
104
144
128
108
113
158
74
95
133
170
142
123
109
118
54
112
98
128
128
100
83
108
107
93
67
138
160
105
159
138
120
78
165
151
117
84
106
139
128
103
127
121
98
143
74
143
54
54
95
81
129
146
127
106
159
139
123
110
113
98
91
108
78
101
175
163
105
141
91
109
105
148
91
118
174
188
90
115
148
102
131
151
129
95
108
116
87
160
129
88
77
118
111
107
95
98
179
98
106
84
108
61
95
108
168
148
185
87
84
110
93
80
102
144
102
103
74
85
81
106
149
131
102
78
89
99
98
93
108
127
98
150
133
82
68
104
158
109
126
153
154
49
133
90
105
108
107
146
142
144
112
126
177
59
112
54
72
185
131
123
122
122
70
69
165
140
90
128
61
113
135
96
120
185
102
92
54
107
90
133
99
130
153
59
88
131
90
177
96
120
204
128
100
132
100
74
125
108
101
144
155
87
95
95
212
81
109
49
100
49
146
147
122
77
128
98
95
108
113
117
125
158
110
100
143
54
137
144
93
124
135
157
155
93
101
78
76
156
185
63
177
114
128
59
78
124
90
125
143
82
74
120
115
129
137
132
87
200
77
85
164
102
101
125
99
168
115
94
131
95
87
98
123
110
90
133
111
107
84
127
85
114
87
59
45
129
125
122
116
100
132
93
108
114
151
127
91
160
117
161
140
94
102
73
104
82
157
107
95
141
96
122
95
105
84
130
68
124
108
124
133
77
147
85
125
98
154
140
113
89
165
125
59
78
95
133
126
97
98
107
130
90
150
94
93
115
81
100
144
107
143
144
181
108
149
139
180
128
94
110
189
135
171
103
92
90
145
123
81
140
115
95
84
135
142
132
108
81
102
128
81
93
101
146
137
49
128
79
92
135
143
103
56
102
102
179
148
103
82
139
135
133
116
95
95
110
127
127
87
117
194
59
135
157
175
94
96
98
187
108
100
98
81
177
54
104
153
65
110
117
120
150
137
126
94
152
103
102
81
145
105
167
135
95
82
74
54
102
81
148
98
165
98
77
54
170
141
49
106
147
106
150
133
141
92
95
109
106
140
130
124
77
115
122
127
74
76
108
93
113
78
163
125
118
102
137
80
107
119
100
117
84
82
112
127
116
143
94
96
139
134
83
105
128
128
95
89
105
93
105
137
140
108
85
107
140
123
121
92
98
77
153
91
148
82
76
107
127
169
131
135
106
111
95
113
125
127
131
97
156
82
70
128
183
133
93
100
115
189
140
115
74
136
148
98
108
156
155
54
159
118
77
54
163
148
67
154
130
84
121
130
141
161
83
70
108
128
150
144
110
115
120
49
170
102
111
81
82
142
112
102
49
137
118
126
116
120
102
125
113
127
102
105
108
102
138
73
98
59
77
104
131
67
156
115
80
95
95
86
113
49
80
122
133
124
131
140
68
67
54
135
97
133
81
84
125
102
113
130
93
103
113
139
147
54
148
149
189
76
164
148
157
137
98
123
116
135
115
82
183
103
129
127
120
149
109
114
78
129
85
90
78
106
106
79
90
143
95
138
89
134
153
161
115
105
105
106
126
137
127
92
95
151
101
123
108
134
101
100
124
98
149
118
108
135
149
146
149
93
113
134
110
68
110
82
85
175
80
142
133
165
138
124
95
125
120
133
68
136
144
132
177
108
149
81
123
147
98
158
135
128
74
179
169
94
74
108
108
54
131
99
93
74
145
123
61
83
140
93
102
116
149
84
105
107
103
127
131
85
76
182
97
82
110
99
128
102
76
105
141
54
115
109
165
116
49
129
96
158
108
102
105
93
146
120
96
144
141
87
103
131
144
83
124
108
113
176
98
104
122
131
143
131
83
81
83
139
95
127
122
143
106
145
143
105
82
132
67
134
149
54
119
103
99
129
107
164
141
124
145
113
131
95
129
97
100
95
153
178
115
137
127
97
140
128
188
128
131
170
134
213
128
74
112
102
122
96
110
154
133
98
108
108
162
77
133
161
148
131
87
179
106
128
124
97
128
113
54
106
177
130
122
122
145
103
121
106
133
146
124
135
132
144
106
100
138
149
98
120
95
126
143
191
94
120
73
101
82
131
86
90
102
131
119
124
136
163
129
114
77
95
125
95
125
135
116
133
135
109
103
95
131
131
127
93
105
112
127
116
170
102
89
117
142
104
109
106
113
54
102
124
106
87
93
125
73
139
104
102
74
130
158
122
113
74
167
113
90
67
130
107
111
122
181
99
113
81
122
102
179
59
97
101
87
61
78
110
140
127
118
100
93
130
59
148
148
135
87
146
82
54
97
98
142
159
132
137
153
103
148
54
121
120
158
186
112
124
54
97
144
90
112
89
80
154
123
71
120
135
98
124
121
131
106
168
140
134
113
125
125
130
151
146
124
108
154
139
54
68
142
103
85
148
87
125
102
178
139
96
108
171
82
121
67
107
102
105
121
181
106
91
101
149
122
114
137
138
96
95
128
129
171
127
98
93
125
153
102
125
98
138
96
153
169
95
125
103
131
102
96
110
54
148
89
102
119
144
135
87
145
163
102
123
95
135
54
166
49
129
74
122
127
121
139
104
127
121
98
109
148
120
102
87
108
113
90
138
85
108
54
128
91
146
114
125
155
87
54
118
106
95
131
82
114
160
113
131
85
138
87
113
110
97
129
115
124
102
106
135
110
194
97
147
74
105
90
97
74
82
90
80
81
98
120
49
133
89
93
178
140
59
169
133
98
132
103
148
125
131
145
108
114
130
135
86
179
143
138
112
147
73
172
142
93
87
125
74
147
111
148
87
144
111
96
92
109
87
97
54
90
100
155
81
131
93
125
147
150
141
123
103
113
146
87
69
132
123
137
147
93
137
144
54
96
120
168
78
119
102
127
107
129
102
110
127
101
95
127
128
108
127
98
81
111
91
54
74
61
181
81
111
109
146
119
120
150
102
87
83
103
147
87
90
105
99
84
148
114
119
131
138
69
97
191
108
112
81
113
45
110
108
87
135
127
103
104
144
110
144
59
95
108
138
120
77
113
118
108
108
91
158
151
86
99
150
216
146
81
134
147
61
97
112
163
97
103
90
151
125
113
112
194
131
158
81
111
105
123
135
98
147
105
119
140
95
74
94
144
75
111
122
81
107
111
149
89
92
89
113
159
108
126
200
120
145
127
92
49
81
83
127
132
118
112
133
104
98
131
128
108
114
82
82
90
141
102
101
161
128
123
74
76
127
130
140
88
106
104
150
107
61
104
74
94
107
97
93
149
129
54
81
163
81
134
199
113
112
49
128
119
54
115
127
149
120
148
139
143
95
116
89
134
153
97
95
96
149
61
113
138
140
125
92
102
104
84
90
108
89
100
101
103
155
133
131
94
116
93
92
135
148
131
150
113
87
82
115
130
150
74
141
78
143
105
113
102
145
54
74
135
127
90
111
111
102
179
139
49
101
97
141
97
120
177
134
98
112
82
82
133
163
107
92
83
82
127
122
127
110
102
106
163
103
95
83
133
49
156
103
127
103
133
129
122
133
128
164
81
164
49
104
113
112
177
103
59
84
129
92
103
97
116
96
127
74
108
97
126
78
126
81
54
151
116
77
77
112
103
130
146
169
119
175
156
54
141
141
59
61
133
54
91
114
131
91
133
152
87
93
67
110
135
145
107
128
78
82
120
85
69
147
113
114
111
132
123
153
147
89
112
95
98
98
106
103
102
159
137
117
108
77
97
123
104
96
83
155
108
137
162
120
126
59
90
90
94
120
117
122
82
68
119
138
194
165
90
123
61
139
135
103
117
84
147
94
152
167
74
143
103
191
138
153
148
106
128
143
80
61
157
96
95
59
108
110
151
151
134
108
106
98
150
94
98
133
112
87
74
143
204
135
108
115
145
95
133
102
153
107
145
95
112
106
153
145
127
177
127
116
85
83
102
150
115
103
162
126
137
101
120
97
128
105
87
98
139
150
74
84
118
133
102
128
145
144
120
92
168
141
118
97
166
95
54
59
147
99
104
130
116
150
95
98
79
54
54
91
112
54
94
98
139
131
179
123
113
108
123
115
115
122
140
90
102
122
132
105
115
125
108
116
107
129
49
129
148
54
102
118
113
130
49
142
131
121
99
123
95
171
54
115
102
115
135
131
103
113
101
150
131
158
102
104
140
92
92
128
84
92
144
81
124
91
98
87
103
87
105
133
95
102
113
72
92
82
67
95
93
145
116
102
101
98
128
128
123
90
109
121
133
139
95
103
98
108
135
116
86
119
59
123
134
161
90
143
97
91
115
117
106
97
136
105
106
102
151
116
90
118
130
115
99
114
104
175
98
95
149
76
115
107
127
133
83
78
113
90
102
92
108
177
127
116
93
158
77
61
170
151
80
111
107
77
110
145
159
128
116
125
97
164
49
92
157
141
99
102
76
95
120
154
85
105
122
85
123
140
108
102
114
98
61
122
80
95
158
157
74
156
77
131
106
113
118
125
135
119
122
165
151
100
155
86
122
97
54
87
115
93
122
120
102
105
113
82
95
109
98
99
103
91
137
102
61
119
97
97
125
150
143
84
106
93
104
81
126
86
108
157
139
115
54
131
95
167
89
76
91
141
138
175
87
147
120
105
81
102
145
132
123
151
103
114
86
95
129
143
96
186
100
108
83
143
137
113
87
137
124
97
110
77
122
112
140
101
148
131
98
84
100
132
143
153
115
118
145
59
81
123
121
90
180
151
119
133
83
103
111
105
139
95
135
81
177
102
106
143
119
158
96
80
200
77
133
103
108
124
54
114
83
95
131
87
69
139
158
170
177
121
106
148
179
99
97
182
108
142
98
93
133
120
105
123
125
128
131
99
93
143
98
118
87
125
125
106
121
86
92
129
103
96
98
93
134
91
124
90
108
54
95
191
67
76
111
126
108
102
135
158
86
95
155
179
54
108
158
125
135
139
90
151
138
97
120
116
49
145
142
127
150
135
106
102
120
122
94
140
88
110
75
164
116
92
163
104
160
112
102
108
122
140
133
165
125
98
128
86
146
144
157
115
95
173
95
96
125
138
113
125
92
102
103
85
98
113
143
140
77
112
113
89
83
101
59
177
93
81
129
124
78
80
77
82
91
103
98
115
133
97
108
79
135
151
98
104
135
85
114
54
95
138
111
106
144
84
111
88
106
132
120
82
110
54
163
101
54
145
98
91
108
76
97
135
85
112
102
107
158
107
158
76
54
135
116
103
124
144
49
54
54
123
155
152
145
106
115
84
145
126
135
107
80
129
146
113
172
105
116
133
125
94
95
81
105
108
115
134
162
148
135
144
95
136
82
170
131
129
100
111
129
104
113
153
140
159
105
159
142
105
89
112
91
144
100
108
137
152
91
98
107
153
104
93
131
90
134
87
84
133
88
97
165
82
81
102
109
110
191
108
82
148
76
99
131
95
174
145
97
92
106
164
98
128
160
135
115
121
107
100
78
129
108
162
91
159
158
130
127
98
137
130
85
117
98
126
91
150
102
111
86
106
97
125
93
138
107
115
134
140
139
70
95
108
177
138
70
175
118
115
135
49
54
59
102
164
125
95
103
104
92
93
147
143
126
108
123
95
177
77
95
135
92
105
85
136
90
114
155
103
111
128
133
59
108
82
148
138
106
108
143
115
54
81
128
148
127
102
142
119
126
108
125
101
137
98
42
133
54
128
125
130
127
81
173
142
77
98
92
133
148
97
164
123
130
143
59
107
115
127
49
125
148
129
175
155
93
101
113
97
148
108
54
96
102
167
54
143
178
109
81
132
123
101
98
90
105
103
175
103
98
134
113
135
100
108
91
79
85
158
133
106
169
109
103
95
98
107
108
102
129
128
145
127
90
149
129
98
78
133
136
157
125
93
84
190
97
83
102
109
77
78
70
116
122
93
99
152
140
99
99
87
181
80
93
95
81
59
108
103
74
97
95
126
88
100
208
112
155
101
110
124
118
76
124
140
68
118
148
177
54
102
102
118
148
81
113
164
97
107
198
158
194
106
110
101
130
206
133
131
111
143
98
100
104
142
103
143
93
90
113
127
103
142
160
165
102
169
159
150
104
135
92
161
81
141
154
105
147
102
171
177
76
82
127
85
148
163
156
143
54
74
87
193
95
143
152
101
117
139
136
101
77
99
118
106
108
67
110
120
98
161
116
119
93
115
49
153
106
147
87
128
54
121
96
140
97
131
132
74
124
102
108
81
112
137
102
100
59
111
165
94
144
96
93
83
168
138
124
96
130
153
111
106
149
126
166
54
81
123
90
142
89
103
49
54
154
106
148
123
118
98
131
131
146
130
103
138
133
169
86
122
103
143
141
113
121
68
125
89
104
97
120
139
49
115
102
143
49
190
129
133
152
154
107
85
135
105
94
130
109
74
120
98
116
90
70
114
81
111
84
115
105
161
68
138
143
108
103
91
145
140
120
54
108
106
110
86
97
145
172
93
68
172
77
139
108
146
90
102
195
81
103
108
49
87
196
140
144
127
125
133
101
156
131
98
112
87
145
91
133
82
113
96
76
119
102
161
98
123
95
131
83
150
231
117
98
49
143
137
86
102
77
95
87
66
108
127
98
83
125
100
146
142
81
54
129
108
135
152
102
130
107
81
104
120
157
92
148
140
95
161
118
67
91
149
175
144
106
158
144
95
140
93
105
146
177
81
89
112
125
101
133
161
128
96
85
78
120
118
122
124
112
74
107
98
95
132
75
162
113
133
137
86
115
105
133
116
110
106
150
99
127
95
103
178
135
115
96
118
105
132
78
101
180
95
139
94
85
102
54
127
167
148
102
127
101
103
180
118
87
137
95
122
161
126
178
138
125
94
87
143
102
92
144
161
105
103
106
67
98
90
113
78
159
54
117
96
99
102
163
139
109
91
127
98
83
138
81
146
127
77
151
127
82
96
142
79
144
102
126
139
145
226
102
94
82
49
139
157
131
177
99
149
108
127
141
49
90
105
95
178
129
133
139
182
101
81
128
144
96
114
130
85
135
81
177
122
115
117
54
146
105
116
125
118
54
67
114
120
77
147
108
133
134
81
105
119
137
82
98
59
138
105
139
98
98
154
49
144
133
123
76
143
131
152
84
128
108
142
124
95
147
116
142
153
147
177
121
158
97
104
121
133
125
108
113
108
139
113
86
170
146
99
81
146
106
104
118
102
98
114
123
82
73
110
54
126
95
101
132
80
89
136
68
112
54
103
115
111
156
116
148
85
85
124
138
103
111
148
113
121
76
139
151
113
168
144
108
59
125
115
179
148
157
133
98
156
98
114
69
107
128
122
61
115
119
54
151
81
117
108
135
140
49
121
87
130
95
150
138
102
67
90
148
98
136
124
119
54
105
82
139
132
111
54
107
125
88
74
148
148
126
141
95
125
101
134
118
77
128
125
134
118
117
102
101
95
151
123
186
88
115
186
143
82
111
102
156
137
123
125
121
118
91
137
159
86
138
165
105
133
95
134
112
123
139
139
69
144
54
143
106
153
105
146
172
125
219
54
92
155
156
98
134
85
118
204
104
125
114
87
148
59
105
80
175
128
98
132
139
90
93
131
143
144
89
131
146
106
91
141
135
105
124
101
137
160
91
131
143
91
147
126
74
73
116
103
98
115
123
103
107
104
129
135
83
123
120
128
153
105
131
118
122
94
123
135
146
80
125
87
81
54
105
107
114
70
129
111
128
128
147
118
106
129
118
145
180
83
102
54
122
69
168
133
112
130
101
134
158
154
157
108
160
119
92
59
116
78
116
83
132
86
163
127
138
133
99
49
79
67
87
136
49
149
146
127
151
108
93
79
132
106
127
95
144
118
150
105
134
93
54
99
154
105
102
191
153
167
95
142
54
147
165
113
207
137
115
134
148
54
119
130
124
104
59
177
49
115
135
113
146
95
120
127
118
114
130
54
154
77
59
103
101
152
98
134
54
96
142
130
107
124
100
129
159
156
110
126
127
82
177
82
73
110
54
106
103
135
101
108
108
77
99
54
117
157
54
102
107
170
111
105
91
118
163
95
93
131
59
118
142
98
99
103
141
97
131
119
75
178
95
143
176
113
98
154
141
128
116
127
144
118
100
108
193
125
126
112
104
78
116
112
161
148
133
90
128
135
106
149
124
112
76
137
144
128
139
108
106
82
69
84
129
83
107
85
81
59
119
155
94
99
97
103
113
54
136
82
108
95
86
76
78
97
127
105
104
140
127
99
102
116
67
150
119
97
93
134
90
115
163
97
148
136
96
89
87
49
102
78
81
54
81
165
139
167
165
114
80
146
94
80
111
120
148
87
54
140
81
144
95
122
132
102
77
132
83
135
67
59
135
87
54
147
104
91
104
150
110
147
106
125
73
54
90
140
82
114
127
120
125
150
68
77
89
123
136
114
133
102
157
117
98
95
129
107
112
129
142
90
110
98
153
68
124
111
95
98
81
98
151
180
156
117
143
81
113
98
86
193
128
80
131
98
107
152
110
95
143
133
139
142
89
126
163
108
99
94
95
177
109
104
133
81
102
130
113
120
96
141
143
137
107
97
125
101
141
179
130
126
113
130
154
146
90
146
95
127
120
125
143
123
145
122
148
74
152
109
91
54
128
54
74
98
121
133
144
167
120
161
76
147
59
79
96
157
121
151
134
128
107
158
131
111
129
90
98
148
122
115
133
68
59
87
104
171
104
108
112
127
128
68
95
105
108
103
74
190
67
74
135
97
74
131
54
91
113
107
95
76
67
97
128
124
68
74
90
149
172
168
133
126
87
54
133
134
124
89
76
76
82
49
141
125
139
102
95
107
91
129
174
103
168
127
118
104
133
141
120
151
148
97
142
128
168
81
80
90
105
141
102
180
95
113
145
131
132
108
149
108
130
123
107
112
109
134
153
173
83
65
122
114
190
108
148
102
110
101
120
102
54
65
125
114
54
98
82
155
113
95
102
109
133
116
110
54
138
95
139
125
175
120
108
164
123
85
119
102
49
98
135
135
180
54
167
131
102
49
127
128
137
115
125
134
83
170
122
172
105
120
154
123
92
105
145
89
126
113
88
103
119
129
157
165
87
150
111
99
79
193
131
78
108
194
147
107
144
80
113
88
77
101
144
148
54
81
128
126
77
104
61
104
59
145
77
130
118
156
122
92
157
70
80
86
159
116
107
95
104
116
119
90
81
140
74
78
90
89
119
120
113
83
103
105
145
99
76
118
130
156
105
127
97
106
99
107
100
108
93
163
59
103
106
92
109
81
128
138
121
102
119
136
95
123
102
130
134
108
153
103
129
171
187
125
119
87
133
102
96
125
97
102
125
151
122
67
149
153
98
106
101
111
158
122
129
163
82
116
82
128
103
129
122
159
59
129
143
112
129
165
95
122
69
103
113
112
83
95
95
141
117
107
111
135
106
54
108
138
114
94
117
76
101
102
115
89
138
90
49
123
106
82
112
125
45
135
91
166
112
76
141
81
98
158
120
93
110
90
190
124
73
98
99
166
189
54
103
121
95
112
93
95
49
96
122
59
146
102
106
143
108
148
74
103
87
169
156
90
83
117
129
105
83
77
74
120
89
123
158
87
132
118
147
128
98
54
94
100
143
120
162
90
123
95
94
118
85
125
133
54
146
96
144
130
138
125
112
106
138
134
101
103
142
177
129
130
54
150
81
118
87
98
102
94
126
61
108
98
154
128
91
105
122
127
98
124
87
151
99
59
105
103
147
106
95
111
152
115
98
157
126
95
94
119
152
105
111
122
104
147
101
134
100
96
76
160
146
103
92
176
89
118
73
86
169
81
133
97
196
85
176
81
199
54
160
92
103
111
59
102
54
79
74
97
101
155
108
130
150
121
152
124
87
183
147
177
108
83
78
120
106
143
95
95
108
113
87
110
104
102
105
130
102
78
86
117
135
96
113
105
107
103
102
95
75
154
156
133
129
54
89
74
158
105
98
133
118
122
78
128
85
49
136
102
102
65
167
102
113
106
54
112
77
130
110
182
117
101
77
125
67
168
134
108
96
137
93
130
61
102
148
143
103
97
169
87
132
126
83
141
101
123
105
76
124
157
99
95
152
123
98
83
146
126
177
92
123
125
54
119
132
74
102
61
87
108
100
135
135
117
96
147
135
98
82
147
154
102
125
69
95
125
156
170
120
98
54
109
114
104
95
106
152
123
84
148
141
132
180
120
74
133
113
158
116
91
91
170
74
102
144
134
93
121
96
102
98
100
133
114
87
49
120
104
120
159
81
144
95
102
122
157
120
109
130
77
138
115
103
173
135
102
123
115
81
119
115
168
130
83
80
101
132
123
98
104
98
124
49
69
95
118
83
103
177
107
99
106
67
114
102
156
87
133
149
125
104
123
108
141
109
108
99
72
102
112
81
171
127
85
157
174
118
76
101
92
113
138
158
157
115
143
104
105
120
112
138
92
78
83
151
106
82
135
93
141
102
145
90
108
135
103
116
127
90
108
105
82
108
123
153
95
102
82
93
85
135
112
110
136
79
108
90
80
84
139
103
98
200
138
117
49
94
110
79
165
145
150
74
101
129
90
127
74
101
158
124
87
112
78
160
81
149
137
49
127
105
161
155
118
94
95
144
167
127
144
89
117
139
63
74
98
80
84
108
103
109
151
79
128
115
129
156
125
114
108
133
102
83
84
128
134
106
83
79
85
70
117
126
129
90
200
54
128
49
133
132
136
128
102
93
133
126
95
76
123
93
165
102
146
113
95
98
113
127
69
81
120
113
97
137
87
120
84
126
132
95
107
139
93
103
143
82
95
98
125
82
77
159
169
54
103
105
135
67
83
91
184
212
95
54
77
114
123
95
49
54
102
173
112
108
102
143
54
87
102
158
85
92
156
110
120
76
80
74
98
149
89
104
54
89
111
121
115
104
112
103
115
114
158
100
87
116
93
49
59
83
110
113
124
54
98
135
108
68
54
108
130
68
127
54
78
113
98
98
100
137
91
118
117
125
96
109
133
117
135
130
179
158
96
104
115
95
152
125
69
177
145
84
139
115
99
108
77
120
69
102
177
134
125
108
59
134
81
93
135
81
123
106
113
103
116
107
90
89
94
146
121
103
54
103
157
97
133
127
112
102
108
167
132
98
54
81
49
106
59
82
118
134
172
155
75
92
49
135
87
128
54
68
85
79
98
134
77
156
61
160
54
98
133
146
127
123
54
103
123
105
103
108
144
110
98
117
128
108
131
78
131
108
129
87
130
117
111
98
150
77
118
108
140
110
110
143
135
144
111
90
118
113
122
111
105
127
93
137
61
87
106
132
92
147
145
120
148
68
209
134
126
91
59
81
72
98
96
106
111
124
103
89
49
147
118
95
137
104
140
83
88
93
74
157
113
117
169
126
148
102
131
91
96
129
123
54
104
61
102
106
103
83
150
111
170
109
161
135
101
87
54
129
151
81
106
98
49
133
132
98
109
81
120
104
74
112
146
123
195
143
149
95
106
96
106
135
126
111
133
177
49
49
93
93
97
95
143
93
158
134
165
124
106
130
99
78
103
125
78
109
97
107
113
143
111
138
82
114
104
77
143
115
113
135
137
98
133
123
171
212
122
94
84
110
122
172
186
107
87
101
168
141
98
106
93
136
104
120
128
102
83
129
54
77
102
95
151
100
121
102
102
113
147
77
119
115
95
103
145
115
97
149
146
54
81
96
83
125
83
91
110
119
108
65
148
143
115
95
188
123
177
176
101
109
158
121
105
95
148
122
96
76
122
176
83
121
76
173
107
125
143
131
59
125
145
134
95
82
133
125
95
103
112
118
124
103
95
81
175
126
156
59
165
78
121
81
116
54
165
125
122
180
116
93
54
102
130
126
171
143
59
97
125
77
111
112
147
90
125
96
112
120
111
136
129
141
113
49
102
112
95
93
145
97
77
127
136
76
54
159
96
141
131
108
54
116
103
108
81
118
108
98
99
179
118
87
99
143
112
96
152
95
128
108
119
116
156
88
138
94
149
108
100
135
156
54
173
73
134
54
117
108
96
199
114
136
105
128
149
149
153
77
161
92
104
144
82
131
132
191
103
54
83
136
128
95
105
165
107
119
104
141
54
86
137
108
146
143
76
54
136
148
123
114
82
108
74
131
120
144
105
86
114
135
100
156
94
98
76
129
143
102
105
166
123
74
97
117
151
118
93
122
105
111
136
102
133
67
105
125
82
49
162
127
116
74
110
76
115
98
156
102
147
115
124
155
125
148
86
118
79
134
81
113
133
125
106
180
157
140
54
123
139
83
108
105
116
92
114
123
87
90
77
125
133
131
96
127
124
95
125
164
95
104
153
124
109
54
81
127
154
130
148
100
108
141
108
80
102
155
133
119
76
122
135
194
95
116
133
113
171
95
134
146
133
104
81
149
83
108
122
154
95
115
131
106
128
86
101
149
143
102
135
111
103
90
98
108
113
103
102
90
135
178
133
103
98
76
67
121
159
91
166
96
76
89
91
139
74
77
134
123
97
111
109
116
87
139
139
81
149
119
122
112
116
168
95
76
156
122
79
141
59
127
164
105
106
177
127
160
97
129
179
131
194
80
79
82
135
90
83
139
173
103
73
87
108
89
74
139
129
105
59
132
105
92
140
102
100
168
127
97
117
143
108
144
98
135
111
150
125
132
115
105
144
127
149
122
119
87
120
116
125
175
100
154
117
109
54
54
108
100
125
76
98
138
78
117
108
54
98
114
93
101
138
131
134
79
105
144
123
69
125
103
102
54
82
148
74
169
144
81
144
113
107
115
76
86
59
94
69
197
54
154
145
112
102
108
54
148
83
102
78
138
125
76
102
144
98
54
108
103
54
132
143
132
134
91
110
90
72
102
78
93
108
81
144
113
156
104
115
96
155
103
88
142
83
85
101
90
136
102
106
118
106
131
54
135
81
136
99
103
141
87
81
119
166
49
116
126
127
120
146
42
116
68
134
124
93
145
165
136
102
180
77
74
142
153
143
116
97
129
104
114
102
164
104
113
120
100
95
134
82
131
128
114
80
161
54
129
125
82
95
92
146
113
139
168
98
112
120
132
103
94
114
100
88
117
98
114
81
150
128
122
164
92
138
141
128
49
87
108
113
81
104
111
169
108
133
80
96
118
115
92
131
177
116
118
67
95
85
148
124
114
156
105
136
108
147
100
143
80
117
102
115
107
140
109
74
127
114
133
108
95
113
112
99
131
126
96
67
104
152
145
80
164
113
114
124
113
129
105
104
98
99
144
108
67
155
81
128
153
54
167
131
129
133
135
139
108
54
54
95
144
127
146
128
128
149
139
61
142
146
106
49
108
123
80
86
108
144
133
126
115
78
98
164
98
156
150
149
122
154
126
127
114
158
111
107
143
54
121
87
74
133
106
99
177
103
128
113
120
133
118
149
113
110
128
80
95
125
96
144
115
95
99
197
102
148
165
102
91
146
90
148
132
143
90
103
165
95
77
101
128
68
169
116
133
129
77
82
148
86
114
97
91
101
115
175
142
135
98
107
76
133
105
117
95
54
74
113
101
123
108
93
110
143
106
92
73
78
110
81
155
102
83
100
130
93
108
135
154
102
97
59
133
124
91
102
106
54
129
79
157
54
121
120
171
124
127
94
150
90
178
191
49
105
124
115
150
149
102
49
102
110
74
98
101
81
114
126
160
139
125
105
127
156
128
113
76
98
138
134
177
94
49
108
95
90
103
83
180
146
168
120
125
125
125
131
121
92
94
97
54
117
118
113
119
98
150
127
93
85
129
54
102
129
108
131
205
73
67
88
120
69
87
172
133
148
106
147
174
119
155
137
91
133
119
96
147
127
160
74
139
119
120
101
96
107
138
127
146
104
140
110
95
74
78
143
136
95
108
102
105
119
150
90
77
81
120
124
185
108
73
128
144
112
109
128
88
133
79
67
120
89
132
59
102
97
87
125
116
184
111
106
112
158
143
143
122
65
166
49
133
82
134
153
83
103
117
143
135
118
68
157
128
118
120
143
136
115
100
110
108
125
157
102
117
190
95
121
98
127
103
83
110
91
123
165
112
156
49
112
122
106
121
135
122
115
81
98
117
128
87
157
54
101
93
121
103
159
144
110
131
99
113
177
112
49
135
114
54
54
113
116
148
90
99
103
102
93
49
102
97
132
127
100
59
98
92
78
119
101
138
106
124
122
117
69
83
141
96
152
200
104
115
118
115
121
107
117
138
113
88
90
119
126
154
87
74
91
161
120
92
123
125
80
168
131
106
113
71
133
133
83
106
132
135
120
128
108
171
139
130
93
107
54
108
125
87
124
135
132
61
113
102
154
108
101
108
127
107
132
127
98
130
110
169
103
129
146
97
111
171
138
84
129
117
54
113
151
49
82
88
117
123
140
131
140
139
215
91
100
59
98
105
114
95
67
102
151
125
118
124
49
102
119
151
112
109
151
125
122
122
165
148
130
116
98
49
139
120
164
165
80
108
59
110
95
59
144
102
123
92
160
141
54
95
200
114
107
128
157
164
49
106
179
111
111
89
146
138
204
132
78
157
139
156
131
122
91
177
137
101
161
115
83
78
80
125
108
77
117
117
59
95
155
87
108
119
89
126
105
124
102
54
143
156
128
133
135
104
145
97
96
114
121
118
122
95
89
103
99
130
128
87
100
93
82
106
100
54
118
108
54
54
141
105
78
147
87
129
112
122
94
106
106
177
141
102
121
141
142
54
133
145
98
98
121
134
107
67
54
160
100
140
162
103
108
91
166
120
142
125
107
114
76
147
104
115
128
138
101
117
161
96
59
153
158
131
148
76
172
111
61
135
104
131
83
123
122
98
145
128
204
107
83
54
82
148
54
105
110
119
146
49
139
134
205
156
125
87
114
143
134
144
98
130
131
103
98
150
111
179
132
125
178
108
106
127
54
67
87
123
78
85
142
105
159
89
79
90
125
108
102
134
102
109
115
108
95
129
72
76
54
73
122
101
108
87
90
123
113
164
100
150
168
87
99
161
98
81
145
108
101
120
110
95
147
61
119
136
69
112
140
109
175
92
160
115
86
74
106
103
102
83
88
104
147
133
137
129
73
125
96
115
102
96
106
77
129
158
74
106
95
147
149
81
125
108
93
118
208
104
122
86
106
131
95
114
108
87
120
175
154
77
149
99
115
73
120
122
116
180
143
85
103
129
96
102
120
128
135
135
78
114
134
111
85
78
90
131
145
118
100
116
161
87
134
107
131
123
128
95
170
102
99
95
115
149
59
146
120
102
78
148
68
140
81
100
95
109
121
107
102
90
108
84
96
124
86
142
116
118
110
124
128
120
78
154
109
123
176
144
81
120
151
179
140
148
54
87
132
104
177
102
115
59
97
199
74
108
87
83
129
148
154
108
144
77
144
101
87
133
123
62
90
112
147
97
120
138
155
125
123
120
140
78
78
115
115
94
102
107
111
164
129
165
76
129
59
181
119
148
102
196
112
123
96
133
97
83
77
143
96
125
140
161
154
120
123
102
90
102
141
82
105
151
90
130
91
138
144
124
149
102
118
140
101
61
143
122
152
106
54
145
103
89
88
131
97
180
98
135
95
93
98
124
115
136
100
107
120
199
57
92
181
96
54
155
98
123
124
86
98
153
148
98
67
54
131
142
145
92
77
114
129
172
151
170
99
81
154
124
100
158
151
133
88
131
98
92
132
157
69
59
143
123
165
85
125
108
61
113
131
138
127
79
146
81
148
97
133
125
118
173
108
133
98
129
105
115
90
112
124
87
101
143
97
135
130
122
125
98
127
144
114
108
109
98
120
123
76
96
89
108
123
128
114
108
113
135
155
137
206
76
135
135
106
118
54
145
101
95
76
110
138
134
74
94
97
49
119
87
143
95
116
108
77
90
77
131
82
59
149
102
90
122
85
93
59
78
134
135
129
105
147
145
135
114
112
76
98
74
98
91
124
141
105
152
93
146
127
119
98
108
106
96
106
54
194
95
154
177
129
77
129
167
135
125
108
167
90
90
83
125
73
119
114
76
108
125
90
104
76
140
95
110
102
148
160
134
182
139
102
105
93
104
99
161
98
156
91
164
126
153
118
104
74
95
77
129
100
133
127
113
61
115
94
145
68
87
119
74
103
120
74
112
96
81
101
106
159
136
129
140
131
93
95
121
103
172
142
124
143
133
118
124
62
147
108
127
120
95
106
141
101
49
121
102
151
126
95
109
103
90
134
127
138
133
105
102
105
133
80
99
120
163
120
89
125
95
130
127
143
115
144
144
139
145
123
126
82
100
115
140
146
95
130
146
81
127
179
93
113
94
49
97
78
80
100
158
146
89
129
108
174
116
130
77
142
86
93
118
105
137
110
101
108
126
125
95
135
74
78
123
157
59
95
103
139
142
77
172
97
125
117
120
121
118
125
124
136
98
120
129
133
87
138
142
153
59
109
95
148
114
165
195
95
125
129
131
106
113
146
106
124
98
95
149
126
54
76
94
98
102
98
136
123
84
49
112
170
92
106
121
102
144
145
148
116
108
79
110
153
131
108
148
116
100
125
96
54
127
145
108
133
113
97
112
148
78
129
115
158
102
117
130
110
110
95
122
129
180
147
150
100
147
90
147
125
138
114
78
116
179
185
93
115
81
80
164
119
54
148
135
93
128
173
98
102
128
99
108
141
95
120
82
137
95
82
126
99
98
118
139
143
88
137
113
115
120
95
109
98
92
117
112
115
111
85
108
92
90
121
147
186
151
126
118
87
139
140
95
117
102
91
139
96
136
125
102
111
69
108
94
108
106
97
125
146
89
80
164
92
115
155
102
144
103
102
106
102
128
98
67
106
77
68
134
110
125
129
108
129
105
54
100
234
80
82
82
95
116
106
133
112
85
93
121
147
74
95
114
54
54
171
109
87
103
99
59
98
156
127
108
147
141
108
123
135
114
128
102
59
73
141
115
143
144
90
104
125
140
95
138
118
179
106
113
138
95
151
74
131
154
100
199
108
93
110
110
117
114
177
168
95
180
177
150
89
67
105
135
59
147
163
99
92
77
143
137
130
144
100
98
81
148
117
103
148
132
108
98
133
188
144
162
103
113
87
96
107
140
102
108
78
54
123
68
108
96
135
100
130
138
98
84
90
160
74
164
113
164
98
108
123
119
108
115
102
54
168
140
134
116
160
139
114
121
110
131
115
185
128
118
98
73
94
144
106
74
102
116
107
147
107
143
152
129
59
74
91
154
94
121
141
54
136
81
125
106
127
157
102
144
124
108
103
78
97
139
107
131
104
123
83
98
107
105
92
125
67
86
105
76
102
74
98
153
74
108
121
113
49
126
142
147
92
105
142
135
81
108
148
125
129
49
127
89
113
136
136
84
110
94
107
118
123
133
90
104
103
145
177
93
86
137
95
80
136
112
159
177
158
100
109
141
100
59
159
93
118
122
128
121
128
87
129
110
68
95
95
147
110
117
113
117
168
77
59
54
127
120
125
177
138
143
113
105
136
122
78
128
108
130
108
167
49
140
115
107
83
112
142
116
74
125
143
82
77
126
117
94
126
189
140
110
103
146
73
131
150
76
100
141
123
116
77
147
89
76
96
107
95
87
193
103
92
77
103
81
119
95
150
146
135
129
106
105
67
87
95
110
88
99
129
108
125
118
96
74
74
134
138
123
140
118
49
84
153
97
108
115
114
128
88
97
137
84
116
169
110
121
131
81
114
160
108
105
135
129
102
126
148
98
108
85
101
161
158
96
113
95
95
132
120
131
141
145
113
115
122
137
128
96
89
145
123
105
77
94
123
142
168
131
91
76
133
102
122
124
154
110
98
115
133
105
165
117
131
93
81
137
59
103
111
105
76
110
120
137
129
129
80
148
93
83
54
108
99
104
125
102
109
108
82
87
150
150
108
144
113
103
144
140
134
125
103
129
125
102
128
131
108
116
122
102
117
104
123
147
76
125
102
126
54
101
98
126
147
128
90
98
113
110
141
54
160
80
74
98
108
101
74
95
79
103
120
122
96
184
181
143
95
100
95
103
54
102
128
227
118
81
99
91
108
127
144
83
122
106
99
139
127
177
179
102
99
80
92
140
97
150
93
121
156
85
146
113
81
106
54
98
136
148
85
49
96
118
90
118
95
135
85
139
102
144
105
123
141
143
115
147
98
147
87
129
144
133
81
150
94
103
61
124
125
95
95
93
95
76
132
113
114
108
146
126
83
133
142
105
127
105
102
136
107
106
186
80
168
92
133
98
121
92
110
126
128
68
116
93
155
106
128
165
82
108
116
97
135
142
110
138
98
101
152
81
107
147
105
90
84
81
180
102
128
104
54
125
144
81
165
118
87
144
116
108
118
95
98
49
140
118
82
103
95
120
120
108
117
85
161
151
135
61
87
120
177
179
105
54
96
190
115
91
158
151
143
141
144
107
110
127
101
81
108
131
103
103
77
113
45
119
151
83
140
177
113
147
95
131
132
118
139
115
83
144
133
158
108
122
69
90
154
117
99
91
165
131
83
102
76
90
134
163
117
124
118
134
116
121
177
122
128
115
156
143
144
180
75
102
95
77
82
147
153
87
109
140
147
186
118
109
76
149
140
171
96
140
124
118
113
95
102
148
128
93
177
110
104
113
98
102
135
98
102
102
115
100
59
80
127
163
122
104
99
92
107
98
102
172
125
54
124
123
108
91
163
83
176
95
105
93
78
98
83
144
146
144
96
107
78
132
140
132
138
128
127
69
121
158
124
119
80
81
148
127
124
152
170
141
99
78
98
133
131
104
144
171
91
131
124
100
144
98
105
133
113
136
87
102
97
90
132
81
83
120
79
192
109
177
126
103
133
148
116
161
103
98
77
131
87
182
98
87
138
126
135
117
158
148
67
90
144
113
102
141
119
99
131
99
134
168
92
102
179
122
67
164
130
120
126
151
149
100
81
54
99
106
102
103
77
54
98
95
135
87
114
54
68
153
138
166
126
54
127
88
143
111
144
136
85
83
77
104
95
108
92
112
75
127
180
91
134
135
117
131
170
112
54
116
87
136
135
113
123
142
135
138
141
81
78
135
54
92
150
139
87
127
144
122
93
54
108
146
95
132
69
108
104
118
69
142
84
86
135
125
123
106
166
69
121
108
126
99
168
110
97
99
128
138
86
88
130
148
49
108
125
82
78
133
129
102
112
127
98
112
136
143
97
167
108
123
115
87
105
93
127
144
126
74
100
107
164
165
129
143
156
82
112
141
125
105
54
125
148
74
134
95
83
119
74
105
87
81
79
140
138
110
77
91
90
122
149
103
87
54
144
137
99
95
128
138
90
98
112
96
125
90
116
103
114
85
125
97
92
122
112
102
92
138
152
98
95
129
111
54
144
87
97
54
120
103
91
98
149
125
127
114
139
78
108
98
120
160
102
81
96
154
146
137
85
87
92
105
143
123
96
103
54
163
159
114
157
71
87
127
67
104
129
132
157
78
127
126
49
102
143
112
143
158
123
85
119
81
102
96
115
186
125
102
69
103
125
54
112
155
81
143
103
135
108
83
110
123
102
102
108
76
93
127
179
110
148
135
98
148
74
162
125
142
105
121
143
88
149
63
127
97
107
98
100
146
73
137
84
137
112
126
130
67
128
122
133
123
95
54
108
75
99
95
103
129
123
131
127
105
92
97
143
125
90
131
162
132
124
113
100
106
146
108
124
129
130
143
106
135
102
129
162
127
74
165
116
194
125
106
109
142
89
82
100
105
122
132
110
134
125
49
98
81
83
111
148
88
94
95
62
103
98
108
125
98
108
105
102
102
114
109
113
129
103
139
54
54
125
87
115
87
110
91
133
102
49
98
86
76
113
105
129
122
145
162
98
141
90
68
101
90
102
59
128
82
104
151
82
102
98
108
169
86
112
118
163
74
90
108
97
80
111
114
90
54
106
107
74
116
174
80
121
96
102
94
140
172
105
102
74
76
152
95
147
140
103
96
102
114
144
100
107
105
81
112
82
127
54
150
148
102
116
97
131
115
102
76
173
128
103
98
103
168
133
98
86
122
123
133
118
98
125
96
188
76
87
158
104
132
106
49
145
95
82
125
97
103
105
116
191
92
178
102
134
106
82
127
124
96
70
146
108
174
110
102
54
107
83
126
73
118
81
98
128
159
104
160
80
129
108
108
140
118
108
149
100
96
138
95
145
105
126
90
148
100
133
168
114
163
138
72
59
116
102
138
99
74
160
138
72
156
83
112
101
54
162
115
122
149
94
80
151
95
104
98
143
131
124
102
111
108
112
102
102
108
106
224
116
74
115
101
77
127
78
87
108
95
69
112
54
92
141
104
193
100
139
125
112
102
125
140
155
97
140
78
182
110
107
112
106
131
74
138
121
82
146
158
128
103
77
100
148
119
107
112
119
98
103
98
155
118
87
139
115
82
74
114
113
95
110
54
99
160
90
90
74
135
123
102
119
115
133
102
107
131
95
128
112
78
109
119
133
80
141
116
108
146
95
90
128
110
128
128
59
127
116
175
113
145
138
112
105
100
74
76
95
103
147
125
146
95
167
87
143
108
155
117
94
95
113
84
81
150
142
87
144
82
98
103
95
131
140
95
158
103
126
132
144
112
134
79
140
150
112
67
103
102
95
89
129
133
137
101
120
146
115
134
114
115
98
108
89
94
93
161
106
94
145
147
68
82
136
124
49
94
118
142
142
145
116
134
122
150
105
103
146
98
108
54
129
59
148
104
103
94
102
194
94
74
81
93
76
156
111
135
106
120
177
67
164
163
85
114
90
70
149
114
171
81
105
166
121
108
49
116
90
135
136
122
148
97
129
106
107
155
104
69
93
95
136
106
49
113
128
103
85
82
103
72
117
143
115
96
177
82
93
117
114
127
130
54
164
140
120
103
142
67
149
104
49
147
83
108
113
190
122
118
93
102
133
131
81
49
97
113
91
92
127
78
139
96
95
107
108
168
93
139
99
105
133
148
98
54
164
156
110
102
85
102
112
139
106
54
102
102
114
83
108
128
124
170
108
115
68
121
152
147
149
101
179
149
118
82
83
88
81
163
136
91
117
148
94
148
116
163
123
54
105
95
99
147
138
154
115
82
102
54
130
133
173
90
135
99
103
156
177
116
120
128
129
102
104
139
122
140
81
125
97
95
126
105
135
163
147
170
102
148
112
108
105
129
144
151
85
135
105
95
138
149
110
140
109
81
98
69
128
97
95
107
144
160
132
102
135
117
145
102
98
111
54
106
98
168
107
54
133
137
122
49
169
108
179
102
96
89
128
89
81
105
119
122
145
97
90
141
147
85
102
54
108
165
77
98
95
120
105
85
98
54
128
77
108
81
170
144
103
120
126
103
140
123
107
145
105
165
127
102
115
143
118
122
156
81
177
87
124
122
101
97
144
90
96
91
78
95
119
156
95
157
61
141
49
147
83
84
95
142
140
92
135
102
54
157
133
107
99
85
61
54
98
92
123
127
92
123
134
161
74
81
102
110
81
110
101
145
149
91
85
127
124
92
123
103
122
95
102
103
108
110
67
101
104
171
119
188
147
126
143
119
97
124
110
124
131
90
107
81
103
147
110
82
54
102
78
132
96
172
59
137
78
171
113
111
113
131
87
79
119
90
130
93
146
105
126
74
177
147
140
115
96
49
101
119
95
133
112
103
125
90
139
103
154
96
119
113
108
45
105
160
54
151
122
109
59
67
69
105
108
101
131
143
106
90
123
119
134
111
163
102
133
101
178
151
104
117
92
148
169
102
135
49
81
74
146
81
131
108
135
131
107
103
123
130
106
125
103
97
67
131
98
127
98
108
125
140
133
128
134
129
123
135
96
161
107
177
133
135
110
107
111
87
135
177
127
134
105
49
109
112
128
139
122
89
142
98
114
76
120
95
114
111
137
148
130
125
106
74
87
144
127
107
109
116
118
143
143
98
108
98
143
156
93
81
145
91
143
108
77
168
98
135
132
122
81
102
117
160
108
105
162
99
96
149
133
106
107
160
87
102
121
146
85
77
98
115
104
86
54
98
120
128
99
108
92
144
115
114
102
125
89
98
173
76
94
128
106
177
106
90
142
103
161
146
123
103
131
78
123
114
137
114
81
76
149
182
132
135
54
109
95
97
112
125
151
164
97
96
103
83
127
116
125
104
81
114
77
97
115
151
90
103
81
142
54
121
59
128
123
49
102
101
149
158
105
138
108
104
115
87
83
98
131
143
102
105
95
95
127
122
118
133
136
123
215
114
135
144
177
87
139
120
83
116
114
153
122
69
165
127
146
135
96
135
115
115
95
76
96
121
102
91
149
121
128
113
77
91
113
146
158
85
59
76
95
141
81
80
104
100
129
129
149
125
129
132
93
168
54
146
136
122
143
128
116
154
107
134
127
147
100
155
98
87
147
105
116
117
144
96
113
115
93
88
77
142
145
141
95
126
134
104
110
133
141
146
120
93
103
158
108
141
129
137
163
139
105
111
122
100
150
162
103
158
81
121
139
119
127
90
80
157
95
81
135
168
94
132
100
92
98
106
121
82
108
105
160
86
112
54
90
54
96
85
121
137
93
107
134
69
79
105
137
102
147
119
123
81
130
156
102
100
122
144
49
133
111
95
179
160
180
125
99
156
141
146
121
163
140
170
129
130
132
78
158
180
148
105
93
84
96
119
123
166
104
98
77
102
150
107
135
101
108
118
102
54
120
156
90
49
108
149
125
133
90
168
141
148
69
177
131
116
69
49
80
147
101
159
140
138
149
95
113
103
74
67
49
76
124
97
93
141
103
95
100
101
54
67
94
106
86
144
68
105
91
145
118
77
133
109
120
181
148
100
109
103
81
125
116
84
107
98
108
132
105
100
70
59
95
114
76
130
85
146
67
124
107
91
102
102
148
146
113
81
119
180
124
97
125
122
59
79
127
90
75
83
126
74
121
146
116
128
136
120
173
94
76
140
85
113
135
89
95
42
70
90
123
125
68
112
92
113
125
165
177
127
160
97
122
101
125
129
98
137
130
126
113
105
87
151
125
74
74
109
135
115
96
152
174
141
138
135
163
94
120
96
121
123
83
97
133
148
139
102
177
95
54
138
105
49
103
126
156
131
120
100
128
102
124
112
95
102
107
102
118
108
133
161
152
124
102
92
90
144
54
167
122
116
116
144
98
131
110
112
163
87
123
119
94
127
112
54
110
103
76
49
83
93
117
153
128
173
102
114
79
114
169
160
81
129
99
61
123
49
82
90
103
127
136
188
146
95
136
83
126
137
99
114
95
148
100
123
144
81
124
102
133
103
84
125
54
122
90
138
165
72
127
111
107
83
150
95
96
126
137
98
167
90
136
130
112
109
110
127
102
90
118
200
54
68
82
74
137
116
104
116
89
81
133
125
82
100
129
111
114
126
113
132
125
114
61
95
119
115
102
133
114
76
164
145
126
120
173
95
90
91
73
129
93
131
59
112
127
178
112
136
115
177
164
97
106
81
196
107
115
127
160
80
153
129
103
120
96
97
154
112
59
160
121
116
137
126
108
162
95
54
137
125
76
84
158
98
133
133
49
121
132
128
110
166
108
92
107
102
119
133
125
54
149
128
125
140
119
61
113
119
105
128
125
82
129
150
148
102
96
113
106
177
107
102
67
102
103
121
124
113
80
101
125
116
65
127
130
131
177
77
83
91
100
131
106
80
121
131
107
72
106
125
142
138
136
131
126
177
103
111
103
119
104
93
76
80
128
92
139
96
110
113
133
124
105
140
98
101
92
144
79
138
146
91
99
81
76
76
90
92
116
117
120
145
116
102
139
149
97
165
87
95
165
127
97
119
108
54
125
149
125
109
87
102
73
88
123
92
108
108
114
78
103
78
137
94
152
142
117
141
61
143
120
93
150
119
54
132
59
109
147
101
87
159
145
122
103
105
104
105
120
130
135
98
102
110
76
155
80
147
97
89
186
87
59
134
77
126
106
54
118
49
115
81
80
81
152
97
103
101
105
98
107
125
90
96
92
117
105
113
165
108
65
54
106
102
154
91
147
158
94
163
159
54
98
110
77
134
147
118
179
77
149
151
144
108
146
90
107
130
117
83
121
124
148
83
98
102
115
107
133
126
109
122
98
143
110
112
78
93
94
76
106
122
167
136
133
118
108
154
103
89
74
90
123
65
122
61
150
118
96
157
117
146
143
140
143
126
106
95
136
85
116
103
98
134
122
140
122
83
142
49
112
81
75
102
160
114
83
95
113
142
127
76
81
105
165
149
111
117
115
133
93
161
146
115
108
97
105
104
102
112
95
124
102
81
163
139
82
54
188
59
90
135
81
109
78
200
132
89
102
131
149
131
54
103
77
111
123
122
128
105
125
103
131
151
121
102
128
158
134
142
112
75
127
82
153
102
73
107
149
81
103
77
121
95
110
99
170
108
113
103
106
131
92
162
121
199
87
108
127
125
130
90
140
87
85
179
107
119
100
54
71
146
61
133
106
124
176
81
114
150
143
49
115
120
102
182
98
87
142
54
138
150
166
115
145
153
122
148
191
117
117
126
110
148
141
77
105
104
74
98
136
140
142
96
135
91
126
120
98
123
149
83
173
71
145
98
112
108
156
144
117
90
148
158
130
131
141
149
177
109
148
102
158
97
143
73
100
102
133
122
103
143
175
103
83
110
78
193
130
61
144
102
100
133
104
122
108
91
122
97
49
122
77
127
155
54
87
200
111
88
101
95
199
103
69
100
104
139
108
74
84
135
78
160
108
103
94
81
111
68
103
82
92
128
109
128
130
96
152
144
160
102
151
116
70
141
123
95
125
121
117
148
143
74
152
102
109
131
76
54
99
87
129
93
160
96
103
131
74
110
104
123
87
103
156
130
104
84
105
82
102
145
107
146
54
92
131
120
98
103
120
129
147
59
103
82
102
85
144
108
83
109
116
91
85
90
81
80
93
89
127
129
117
81
147
80
175
107
147
101
122
87
100
122
157
133
84
147
103
125
125
135
102
99
128
148
108
129
141
156
131
132
83
159
81
76
90
153
102
96
122
132
67
141
49
74
124
198
133
124
121
118
106
103
115
92
98
115
65
123
102
167
45
114
106
152
131
119
96
105
117
124
148
81
118
77
134
153
88
42
114
114
108
102
81
82
94
133
101
166
133
133
91
123
128
74
82
169
107
107
144
116
148
116
95
91
103
155
130
127
127
144
94
77
76
149
145
124
76
89
102
156
81
76
92
155
194
123
125
95
80
90
96
109
156
104
59
133
143
128
93
109
86
82
132
108
118
88
98
145
139
144
197
123
110
133
103
140
130
118
153
49
100
107
132
131
146
137
119
127
95
89
91
105
140
87
100
79
108
125
111
151
84
142
128
105
78
126
108
81
108
107
92
112
132
85
129
124
147
113
107
120
98
72
145
65
85
88
107
81
135
137
194
120
59
125
171
87
83
131
127
113
157
115
76
109
98
102
84
115
131
112
87
105
96
107
127
102
123
107
102
129
114
93
103
103
54
129
191
138
135
109
127
95
85
141
102
121
178
81
123
110
54
145
138
97
175
154
73
99
113
148
101
100
81
76
105
108
174
105
120
151
102
107
78
162
54
137
130
139
128
79
54
86
54
74
143
129
112
125
121
108
107
88
124
98
124
98
94
149
91
95
144
74
117
103
67
148
83
113
122
145
131
102
93
103
102
103
106
119
108
123
133
103
82
123
49
148
114
122
98
127
102
127
122
114
125
54
127
106
123
122
127
118
78
133
103
122
102
135
95
108
142
125
151
93
107
120
74
97
126
81
135
92
131
143
121
105
158
108
123
110
106
146
117
83
112
117
113
54
182
103
148
124
74
81
133
118
83
128
90
136
105
108
146
93
171
77
87
131
94
116
133
145
126
108
104
97
86
96
78
126
133
109
99
121
139
98
61
76
124
133
127
105
90
54
108
98
69
129
144
120
104
77
54
108
129
106
107
109
160
147
141
112
130
108
85
127
82
106
118
150
91
199
67
87
180
126
73
156
129
49
90
108
88
139
158
101
118
126
105
165
69
145
103
103
103
82
141
125
154
67
54
130
73
115
95
81
81
176
126
115
104
137
128
102
127
178
113
108
80
82
120
96
133
95
118
106
92
134
91
128
108
170
182
87
144
118
120
96
101
105
128
145
87
131
101
108
140
140
85
103
106
93
149
118
99
54
90
87
120
127
92
119
114
118
128
146
134
54
102
140
160
95
144
105
122
54
148
108
107
67
95
113
122
88
102
117
148
122
103
122
103
136
113
49
115
108
87
181
95
121
139
117
151
126
95
102
74
133
106
106
54
92
102
103
158
144
132
125
113
123
113
177
108
122
167
82
130
139
125
97
93
91
136
108
83
162
104
128
102
153
142
119
82
127
110
90
177
125
101
200
89
159
106
147
184
166
144
118
143
148
131
134
128
137
99
119
87
90
113
85
100
134
130
122
49
139
145
179
93
67
68
107
131
113
163
73
54
110
69
96
107
177
98
149
99
104
154
106
54
159
148
115
148
148
98
54
113
90
102
94
59
133
106
145
145
119
114
97
124
126
96
121
95
144
137
103
127
74
255
172
102
102
128
74
118
117
154
127
135
116
118
117
90
90
130
108
54
135
186
113
143
81
95
74
103
134
165
140
96
94
82
138
96
103
113
168
124
78
123
110
87
206
98
85
106
59
49
169
128
167
125
89
143
99
65
131
130
108
122
164
108
110
110
120
88
113
135
143
93
49
77
144
135
105
196
194
177
115
74
107
139
95
49
104
125
152
85
128
81
68
117
144
86
165
106
95
102
125
123
169
107
161
139
136
95
97
131
128
125
74
114
125
118
159
90
54
102
161
108
131
124
186
119
119
134
130
103
82
105
144
126
96
134
108
149
161
122
98
128
102
102
93
124
135
78
92
125
105
77
83
132
121
114
135
82
76
139
117
109
105
81
83
142
108
147
118
54
128
127
102
98
108
108
102
118
115
114
127
149
112
131
142
153
101
116
108
84
94
81
165
98
102
126
117
77
149
104
185
109
103
130
54
86
126
106
124
125
109
134
152
82
49
98
68
95
179
127
87
78
78
100
120
107
142
108
82
114
94
54
104
133
72
181
134
143
88
98
106
101
96
104
102
83
108
132
134
126
114
115
103
131
136
151
154
134
141
131
145
124
120
100
127
67
61
136
137
70
108
82
97
56
148
148
136
106
54
121
87
115
137
83
112
87
108
109
147
148
114
82
140
134
141
118
74
98
148
115
91
137
136
121
106
121
118
132
93
119
134
109
81
108
108
82
95
92
96
130
138
113
132
144
125
110
157
81
148
97
133
177
93
109
80
49
101
157
100
123
158
104
111
103
103
69
102
76
125
190
81
103
129
103
127
111
128
161
54
131
135
146
165
54
83
125
108
96
118
185
141
111
95
145
98
105
144
156
151
89
105
137
105
113
105
95
120
68
112
65
120
127
102
178
124
138
160
123
128
108
138
125
132
82
125
119
116
120
107
80
85
81
147
138
95
104
102
87
79
145
192
54
141
138
129
136
103
137
112
110
120
97
119
131
103
124
105
148
84
95
82
133
100
110
127
84
106
98
135
129
142
159
115
101
118
155
49
77
145
132
95
80
145
89
120
77
106
129
107
93
142
128
95
54
141
140
103
108
141
133
187
109
105
103
54
177
133
108
87
106
142
147
118
87
141
119
149
146
111
93
119
111
49
101
146
61
76
140
81
125
103
68
182
108
95
146
87
78
121
54
133
143
54
81
144
49
96
164
156
162
82
95
152
190
114
100
103
101
69
77
113
125
106
87
118
143
75
107
94
103
54
117
97
78
134
54
133
81
104
128
135
123
80
156
127
97
113
102
68
192
129
118
87
105
178
100
83
74
81
54
125
144
127
82
92
99
108
101
68
105
152
141
82
147
135
148
148
184
143
127
112
130
102
98
135
89
133
77
101
169
99
154
98
103
105
108
57
129
120
148
112
128
135
108
115
92
98
158
100
98
134
136
170
169
144
177
42
104
86
112
103
209
59
151
93
130
113
78
141
83
87
115
82
106
223
82
77
102
111
118
106
124
54
105
123
123
159
68
85
54
159
98
112
125
130
104
150
108
151
74
98
67
110
102
122
96
85
143
131
90
118
130
126
108
107
145
54
153
106
69
165
59
91
128
122
108
128
121
105
129
61
111
67
156
148
109
102
72
135
127
106
79
113
103
158
113
120
90
128
148
200
122
59
106
95
115
90
144
96
153
104
71
54
83
144
86
111
139
138
163
83
145
127
161
105
119
171
127
49
108
49
130
83
126
122
89
139
97
68
102
153
81
131
118
59
126
128
100
116
95
142
150
108
98
139
131
89
105
93
150
162
90
91
102
143
102
104
181
95
165
112
49
117
97
69
96
180
161
110
54
93
98
132
75
61
90
123
90
122
108
121
59
139
54
157
108
143
128
125
110
96
113
86
49
141
82
116
132
117
204
87
78
86
126
149
104
125
115
108
107
92
78
132
107
133
123
98
100
96
75
95
141
95
103
76
59
128
102
106
134
54
117
125
96
128
161
137
139
131
93
146
61
143
105
54
149
131
125
132
146
129
91
121
147
105
49
160
102
107
54
97
99
114
100
172
112
102
111
91
145
166
111
109
79
81
173
129
90
68
97
150
99
110
92
85
128
120
153
112
162
120
159
137
87
167
157
90
132
77
135
112
96
171
111
129
107
96
117
92
105
102
180
147
108
99
105
153
114
133
145
95
108
140
121
105
111
135
141
98
98
102
129
67
106
102
67
96
97
110
201
143
148
103
117
197
145
116
146
106
83
54
54
171
138
127
114
99
150
152
139
81
120
125
108
95
107
134
106
144
76
81
117
96
134
69
93
193
98
119
108
77
112
105
49
149
108
101
125
115
95
133
117
104
118
132
76
129
108
143
131
49
121
134
108
99
118
108
132
89
103
54
102
96
103
156
103
82
113
90
141
174
149
92
200
149
135
77
102
153
95
113
123
102
103
101
92
113
87
156
121
160
135
105
67
150
90
95
59
81
140
80
74
134
111
99
114
81
97
120
129
157
123
119
144
135
153
93
143
124
118
127
105
102
106
105
170
87
83
118
82
83
103
145
148
108
138
105
99
131
81
167
110
80
129
132
107
177
143
128
78
123
106
117
49
125
78
122
158
143
118
93
103
83
128
179
95
108
116
108
138
78
151
172
138
74
107
117
108
92
107
67
104
97
109
85
68
110
101
87
103
80
83
130
152
137
134
115
83
126
99
78
146
126
138
144
59
101
74
146
68
92
124
74
93
169
135
122
153
158
140
156
95
153
103
164
95
85
83
99
103
104
90
125
110
90
143
93
113
171
113
131
125
140
125
124
123
135
76
110
128
102
143
87
160
99
80
95
89
129
74
83
138
113
145
150
74
139
121
192
133
120
102
125
110
84
131
132
154
105
115
95
97
107
87
104
153
81
90
149
146
130
162
81
96
90
133
164
200
76
99
158
177
104
103
129
83
98
95
54
125
123
117
105
120
93
87
87
107
138
144
132
77
102
140
124
161
148
143
140
133
179
129
81
132
95
161
134
124
98
95
103
110
59
89
123
153
128
106
127
144
109
156
156
134
138
92
109
105
81
87
130
141
96
106
133
138
115
67
84
107
84
130
134
164
95
108
109
87
129
81
74
133
128
54
96
108
96
194
74
126
86
100
157
106
143
90
133
143
59
124
102
85
132
153
131
148
87
102
101
91
90
139
130
118
102
95
49
77
104
130
59
137
158
139
132
115
138
71
124
115
108
86
54
124
197
131
110
108
138
139
82
109
102
127
109
116
153
108
87
147
129
112
126
54
146
104
123
113
113
125
121
173
98
144
81
150
141
138
122
103
90
54
174
92
112
93
127
121
116
76
124
86
151
77
54
148
153
91
135
115
116
87
120
102
103
177
97
138
77
81
68
143
89
132
117
118
115
113
139
94
121
123
119
108
108
134
135
143
49
95
102
95
111
149
82
82
94
135
98
158
140
132
111
150
183
110
140
54
132
152
148
182
111
135
140
77
95
59
93
132
110
95
146
67
93
103
108
78
80
136
93
68
102
101
131
104
54
82
113
185
119
83
125
126
140
101
94
131
133
134
141
113
105
98
54
141
135
114
98
102
105
119
133
148
106
140
133
167
148
141
124
145
139
137
147
133
54
147
54
103
54
125
49
105
143
154
102
132
127
93
122
163
81
154
122
93
115
123
139
81
67
113
130
120
152
113
140
153
103
163
68
98
131
104
127
144
95
122
98
79
83
186
96
102
111
111
99
122
125
105
107
158
74
135
136
156
111
153
81
106
106
128
123
118
81
92
79
98
115
170
108
54
148
150
136
133
102
98
161
159
151
125
104
117
95
130
172
123
123
76
69
144
114
163
68
140
130
81
141
111
54
141
191
129
120
107
161
137
133
91
135
188
104
125
145
119
90
177
160
137
76
109
128
98
96
123
171
117
67
165
100
59
159
104
125
128
129
141
102
118
117
95
147
81
149
77
105
142
118
105
95
81
116
125
79
82
101
54
131
91
169
95
149
131
142
89
155
95
132
123
125
105
130
143
177
133
95
135
124
54
122
90
103
85
156
49
123
128
119
100
93
158
141
134
98
73
111
102
180
127
108
179
149
77
140
93
93
152
122
101
107
110
102
120
128
178
71
115
125
107
156
73
144
59
122
147
103
124
104
54
148
54
142
90
93
120
155
81
177
142
117
78
95
149
124
89
144
148
103
54
127
173
127
108
108
124
103
152
148
83
90
76
206
49
150
146
105
131
111
93
107
96
112
109
61
49
82
79
89
73
141
131
127
134
54
89
102
102
130
95
131
85
102
141
143
140
121
70
144
146
111
143
99
95
74
188
98
108
120
114
169
119
94
139
102
119
108
98
105
124
102
115
98
118
184
120
89
105
134
115
78
118
139
95
193
115
133
122
143
93
88
128
116
149
200
111
106
120
147
134
140
49
54
77
131
98
128
125
59
146
96
54
104
103
59
101
165
157
122
83
54
98
116
85
76
67
103
135
61
108
128
167
199
59
144
81
164
109
91
95
129
142
117
103
105
145
67
102
117
77
125
113
73
91
93
135
135
156
54
129
125
54
162
54
90
140
80
97
61
148
112
119
98
108
92
86
199
139
115
128
54
115
145
170
138
102
102
85
107
113
95
83
113
114
123
145
117
98
102
168
96
49
171
98
80
161
127
130
54
49
140
98
141
112
144
146
131
113
165
194
135
95
105
144
105
169
81
95
97
100
193
111
148
191
98
84
98
104
110
182
104
152
154
81
101
108
119
76
102
125
98
126
112
131
97
137
54
111
95
143
104
87
102
68
123
98
105
160
103
114
102
190
141
144
148
106
109
96
149
143
74
124
131
127
67
74
152
94
145
153
149
91
152
92
102
132
83
122
105
144
138
123
74
143
101
112
133
70
152
172
104
129
102
113
125
103
134
106
130
80
82
98
148
106
54
104
147
135
95
124
128
134
84
82
170
122
61
148
149
98
96
131
61
120
49
95
77
108
126
108
127
156
76
135
126
119
148
87
153
145
188
104
163
122
108
140
121
144
95
54
107
133
118
158
140
113
106
172
148
98
140
123
89
87
122
137
118
125
105
90
62
118
116
81
87
123
90
126
113
124
110
115
103
86
101
130
111
102
98
149
98
103
111
156
54
125
156
126
95
117
104
148
116
93
106
165
135
121
144
102
108
180
124
151
129
108
116
102
131
171
151
88
113
74
129
114
139
97
114
148
129
107
87
95
76
90
137
95
131
143
114
87
152
69
102
54
119
109
131
148
118
87
182
90
106
109
79
112
94
169
102
90
54
85
120
132
98
108
127
100
106
138
95
131
172
136
129
137
143
97
130
62
96
161
148
148
87
103
151
120
124
133
179
151
127
59
150
111
95
110
82
68
129
97
129
81
127
179
82
113
87
120
129
90
111
153
177
57
97
114
157
115
81
132
104
74
128
138
99
166
130
124
134
108
54
132
140
140
87
153
155
124
143
108
49
116
77
89
125
85
143
142
87
95
83
172
87
113
130
132
100
132
100
95
105
82
129
81
131
165
108
98
76
102
95
194
79
95
159
136
112
147
129
76
132
89
74
120
104
115
139
170
168
88
139
125
54
83
98
108
103
126
102
102
140
85
144
125
102
198
134
138
110
150
122
124
135
108
158
135
54
91
96
74
123
89
140
85
95
68
114
117
110
106
67
119
133
110
81
113
133
109
100
143
106
144
122
152
86
92
140
137
87
113
54
105
143
87
87
148
114
96
108
54
142
105
76
125
102
95
127
132
95
108
133
130
163
74
102
100
74
128
87
78
104
77
98
54
80
144
85
115
177
88
149
168
86
117
78
112
117
94
153
120
54
130
85
120
115
111
54
118
124
137
103
145
143
108
155
122
143
104
102
146
137
102
127
59
124
90
113
118
135
160
130
95
116
98
96
82
117
134
54
108
102
118
98
102
83
91
160
59
101
103
105
156
155
84
97
126
107
93
115
112
118
118
105
80
172
147
72
157
112
68
110
153
115
49
131
107
101
145
99
82
102
130
119
95
122
97
106
141
163
98
49
125
132
113
94
102
59
145
87
131
190
141
97
131
59
114
96
96
90
129
82
49
111
110
139
140
130
133
140
54
139
78
145
103
74
68
85
103
49
114
122
103
124
97
149
93
140
132
105
102
133
149
120
157
165
129
101
177
145
102
99
98
156
145
130
117
120
109
127
115
120
94
119
88
158
158
90
112
81
140
73
131
98
81
91
87
104
166
128
82
102
59
141
144
101
59
101
144
83
78
59
102
98
109
131
173
125
157
129
138
168
136
108
97
102
80
184
80
54
101
148
138
119
91
97
128
101
149
128
134
128
131
174
103
97
114
104
94
112
123
124
149
117
82
94
137
79
128
102
131
145
87
113
95
49
118
95
91
82
128
144
126
147
104
94
114
95
143
125
144
78
83
182
148
122
136
137
109
114
108
112
96
93
128
87
88
95
103
91
103
81
177
122
89
95
120
113
131
83
96
176
177
85
127
146
172
114
49
111
167
136
87
138
133
105
67
145
54
138
114
108
148
54
83
145
96
147
115
144
148
125
124
85
94
85
133
140
84
129
84
102
112
145
49
139
113
146
146
93
77
113
69
118
117
105
113
98
102
120
131
189
82
54
125
104
139
78
171
167
81
109
138
108
111
109
80
131
129
95
140
146
108
125
117
105
108
130
104
77
49
108
90
122
125
108
78
113
89
104
141
74
130
59
137
122
98
105
98
54
77
106
188
149
181
138
132
126
108
111
103
86
86
76
92
123
131
95
85
81
78
96
116
87
103
133
109
120
72
185
103
133
114
54
54
116
125
141
59
113
112
140
155
90
127
118
162
74
86
59
131
90
74
103
115
54
128
95
102
146
114
81
118
49
54
93
102
119
127
93
96
108
135
83
98
141
127
76
144
101
115
120
90
108
103
159
107
54
155
127
97
140
125
103
108
95
125
125
143
148
156
145
80
87
98
108
102
130
130
98
122
116
172
164
112
109
90
82
126
97
54
163
106
102
82
74
135
99
98
93
165
121
106
103
131
139
128
114
143
144
49
126
102
139
112
149
166
95
73
143
148
144
152
186
98
105
106
90
163
107
171
98
108
78
170
134
165
118
109
128
175
103
59
112
131
129
105
81
105
113
149
149
155
121
61
144
125
107
90
87
100
165
95
135
123
134
173
101
49
59
127
127
97
124
103
95
106
200
54
88
84
96
143
136
135
142
125
95
108
124
110
166
132
83
104
93
149
89
178
102
98
127
123
100
121
144
54
80
87
124
141
148
112
94
113
109
188
49
108
138
140
97
126
98
131
148
113
118
121
115
166
194
97
164
103
117
107
92
108
103
125
103
154
76
144
107
144
135
142
108
90
96
145
116
102
83
107
49
97
93
82
81
165
161
116
129
82
153
131
133
123
128
111
83
90
74
106
107
148
129
111
76
76
74
116
158
76
107
134
99
95
98
92
153
89
143
103
135
146
54
92
117
106
54
88
161
107
102
191
158
113
77
139
118
78
116
81
54
165
136
93
130
95
129
135
89
95
155
139
139
106
177
124
148
49
91
82
130
194
205
102
101
178
128
54
116
95
143
118
54
82
124
120
81
131
93
108
154
93
74
135
49
110
98
154
97
110
129
126
122
89
85
130
123
144
162
97
111
113
117
105
143
59
98
95
127
131
96
123
87
78
123
161
49
82
128
158
97
135
157
124
132
103
153
132
168
143
94
86
123
59
103
145
129
110
157
157
147
95
133
147
81
98
102
103
133
76
67
125
68
78
96
103
93
95
105
98
102
148
87
135
95
121
100
110
104
94
95
102
105
155
105
84
85
134
133
194
103
129
92
113
155
108
88
117
133
90
107
96
97
164
69
140
123
110
74
54
131
96
112
82
103
97
76
122
94
132
154
140
181
105
122
140
84
133
131
105
110
148
135
103
137
98
141
118
74
144
188
75
121
59
81
123
136
98
98
100
133
79
172
105
130
98
154
130
94
98
116
106
122
107
134
107
95
54
81
83
105
95
137
129
131
144
121
144
74
118
122
128
114
130
116
119
83
82
127
86
152
120
88
105
105
105
115
74
54
199
154
179
93
90
117
103
185
92
113
111
84
103
129
125
111
123
105
135
128
49
135
107
121
98
112
93
135
158
71
140
148
148
126
54
134
107
115
160
134
95
94
102
95
150
105
112
128
108
81
122
168
122
133
127
128
78
177
77
156
103
125
118
95
141
145
72
59
122
127
170
102
141
131
132
141
106
106
105
120
95
59
112
101
116
120
145
114
119
133
120
128
122
116
54
107
120
150
139
161
90
96
95
190
61
113
95
133
121
108
102
178
127
138
81
207
107
97
87
70
113
129
128
129
156
95
113
54
74
165
126
138
135
105
85
54
102
122
95
98
127
190
74
144
130
156
104
108
122
144
102
102
81
179
136
131
93
54
102
71
103
95
95
96
78
125
154
188
54
148
130
120
134
95
188
89
87
121
111
61
109
159
106
74
88
125
141
148
102
102
101
123
172
68
107
132
117
167
147
131
90
95
126
132
128
131
98
177
159
97
146
109
108
117
119
87
145
96
106
125
109
138
111
162
172
143
87
186
114
54
109
115
96
108
87
116
147
102
126
148
95
135
113
129
78
148
127
54
87
99
148
95
68
126
110
95
141
124
113
76
98
125
125
87
85
85
107
73
93
99
135
130
87
159
117
54
99
87
82
138
132
140
102
90
124
107
98
113
118
122
125
54
112
145
146
49
170
91
93
122
69
98
148
89
137
59
147
120
108
114
101
139
143
125
103
74
106
99
147
100
137
79
115
54
112
163
149
140
168
100
108
169
147
98
49
107
102
144
105
132
95
93
139
96
117
102
135
111
85
146
158
98
146
49
98
168
117
156
54
99
163
89
106
158
99
94
89
97
136
78
124
67
131
103
93
98
101
83
82
97
120
90
130
164
102
99
131
93
102
135
149
69
125
103
158
113
119
98
54
153
80
70
108
82
95
154
147
123
158
117
168
86
85
164
113
108
133
98
114
103
82
105
100
102
113
107
54
108
120
106
124
103
133
114
140
86
117
105
163
136
78
123
115
126
77
136
80
69
109
141
79
49
119
76
117
88
122
126
136
108
102
144
89
90
144
129
180
140
146
123
186
96
138
126
101
49
141
97
96
129
136
123
127
78
152
125
81
178
160
110
108
113
108
80
131
125
110
133
145
83
125
127
143
93
119
61
97
150
150
115
108
90
103
138
106
135
105
87
113
141
131
158
90
92
141
134
127
87
149
67
98
104
124
95
97
143
125
124
91
144
197
78
101
95
107
115
133
82
100
143
95
143
98
95
129
94
90
67
128
118
97
70
49
108
136
104
80
128
161
113
148
99
141
158
177
98
103
81
83
105
108
127
169
108
116
89
128
149
81
120
120
133
97
113
59
94
74
150
108
105
108
204
83
133
95
98
99
103
76
132
108
103
77
136
103
133
103
155
81
117
148
128
108
93
145
112
125
102
148
85
131
84
117
101
106
91
82
49
121
121
49
128
106
102
73
78
129
125
140
137
171
101
134
109
113
153
139
143
131
106
138
93
118
90
107
102
135
82
113
120
107
124
142
77
122
154
118
113
137
103
107
78
161
204
117
122
97
102
93
143
93
54
125
122
143
106
172
88
49
117
154
102
102
126
108
82
124
97
81
69
98
77
98
110
89
130
140
99
96
89
125
90
169
54
144
149
123
81
87
123
123
54
104
67
147
128
103
108
131
81
116
125
104
102
154
102
135
174
164
74
146
102
80
138
103
111
173
141
78
76
139
108
103
143
109
133
92
123
119
49
120
130
126
206
129
199
114
140
84
110
101
77
155
95
67
54
136
146
102
116
161
99
97
180
91
118
181
94
127
93
61
129
98
103
138
92
142
135
108
81
131
111
105
59
139
132
90
167
131
146
132
146
118
155
103
108
135
91
76
118
153
108
120
120
131
82
70
121
92
99
116
143
105
149
123
95
140
67
132
133
108
115
49
105
99
105
153
96
131
82
154
120
140
110
95
100
102
107
54
143
80
149
135
95
101
118
95
102
82
88
122
116
92
123
162
98
129
67
99
112
95
112
144
142
167
137
128
146
81
93
120
131
111
143
59
74
128
103
87
106
118
87
140
54
140
138
97
115
144
165
77
76
125
125
78
105
111
127
126
83
158
97
181
97
81
104
165
139
145
132
199
172
133
97
161
49
98
119
129
78
81
182
139
92
102
126
109
145
184
145
125
163
125
59
74
67
105
148
75
98
49
77
49
111
102
144
125
137
134
116
134
121
54
118
116
143
110
54
94
132
98
107
158
104
129
99
111
54
76
98
144
100
121
101
49
135
100
49
120
105
105
59
128
129
65
59
226
90
133
79
124
90
98
93
124
95
143
133
103
102
125
111
110
98
107
148
122
91
102
125
137
125
106
144
127
124
140
88
102
119
130
94
121
93
107
76
49
89
90
148
74
90
105
168
104
67
189
90
136
104
92
90
95
169
102
127
156
162
131
90
93
103
81
138
105
87
120
108
146
118
163
54
85
139
54
54
148
105
92
140
137
106
116
82
172
54
122
141
99
163
54
149
92
79
143
89
154
119
140
119
81
140
103
97
146
177
107
125
235
61
121
102
78
147
124
104
83
128
127
69
169
158
95
121
82
93
127
126
168
103
135
76
69
77
73
105
139
113
118
74
134
140
111
67
105
184
113
109
81
74
127
93
108
131
135
107
49
130
93
123
104
120
112
118
99
138
112
143
86
112
119
78
54
102
78
82
135
97
95
112
131
84
108
131
74
151
98
128
89
118
134
59
92
143
156
89
96
90
222
98
143
149
121
170
148
127
67
116
149
65
98
111
163
98
152
165
147
127
108
140
194
98
122
105
87
149
59
128
95
144
136
90
106
186
120
108
145
129
131
82
142
135
143
155
133
103
112
168
108
102
154
154
95
95
102
118
149
54
125
97
139
125
78
72
121
116
172
101
95
146
148
141
137
49
144
54
90
129
87
117
116
119
123
81
93
129
81
140
131
169
78
150
101
114
114
104
82
142
153
158
172
103
121
99
126
120
90
103
134
177
125
138
105
106
102
97
139
153
86
141
54
87
59
112
118
112
85
125
106
68
105
175
125
134
117
74
135
129
119
76
81
86
95
115
144
118
82
92
88
161
149
116
105
114
90
102
128
112
148
54
102
100
123
120
96
85
81
108
93
148
78
93
152
113
105
138
98
76
102
158
108
106
124
156
150
77
146
160
84
80
102
95
132
111
102
109
98
81
98
94
101
101
133
105
80
106
108
116
102
122
77
165
122
133
218
83
133
129
114
141
135
92
135
115
194
98
127
143
86
138
145
146
90
59
153
71
149
54
91
99
132
116
124
135
131
91
67
142
125
160
87
95
116
133
61
121
93
191
130
116
153
83
95
88
103
98
124
173
155
98
61
118
106
127
92
106
132
133
95
54
146
123
54
102
108
127
152
137
95
136
129
141
128
116
122
87
129
145
129
120
98
122
166
128
98
68
103
120
122
104
77
74
134
188
158
100
129
101
59
135
95
83
105
77
165
98
134
108
124
106
114
157
76
146
115
124
95
97
102
94
141
49
186
118
128
108
116
103
108
80
97
119
89
103
132
102
98
126
149
134
125
128
128
133
92
125
95
160
183
108
90
108
98
150
98
103
146
49
119
91
114
103
117
143
80
106
123
186
103
171
110
104
54
108
199
117
81
68
107
145
126
155
105
108
102
85
102
123
116
114
142
130
125
97
137
97
99
93
101
140
83
101
82
108
92
108
130
144
124
128
81
170
97
89
113
133
74
149
145
115
78
128
108
216
109
108
133
138
92
116
96
87
177
74
123
134
114
100
79
148
128
95
102
113
113
67
82
90
149
102
122
143
108
200
144
100
90
121
90
90
135
135
155
61
112
81
160
128
89
177
54
102
123
129
166
92
80
121
102
113
81
86
108
93
122
103
127
166
111
164
127
115
127
136
93
99
149
143
179
81
134
100
103
98
54
115
141
138
143
133
169
101
144
108
123
81
149
103
122
116
125
155
131
120
125
105
131
123
117
137
179
133
83
135
165
199
138
125
94
74
74
112
102
106
141
96
87
114
49
224
125
104
123
126
153
99
54
150
102
108
143
148
83
81
76
118
107
108
172
133
81
125
103
161
139
98
98
154
131
124
91
106
131
102
88
112
81
110
156
140
106
68
84
49
82
59
114
102
157
109
96
116
84
98
102
191
102
93
179
123
72
95
104
144
123
172
87
87
95
102
144
95
120
112
90
140
170
200
106
136
93
90
156
83
108
155
85
126
100
160
114
134
95
54
118
84
129
90
143
156
94
95
87
179
95
116
96
95
125
68
157
49
127
189
108
54
135
95
116
158
160
120
102
145
69
98
150
81
122
161
103
102
93
130
101
120
108
95
140
86
103
77
137
123
135
97
86
123
113
128
117
92
102
149
108
101
133
133
143
121
139
102
116
128
107
98
167
100
113
107
95
128
101
108
73
139
179
112
142
119
109
107
136
152
143
108
117
54
143
103
125
136
177
170
113
147
190
77
131
93
111
105
77
118
146
100
143
73
177
98
112
122
145
137
88
117
130
119
102
152
59
96
104
123
87
135
118
122
154
107
185
93
88
95
170
145
127
116
128
141
146
171
117
110
72
129
148
152
132
127
114
98
69
131
159
123
125
107
156
112
98
120
131
74
125
76
78
172
80
95
147
191
82
148
91
113
153
90
83
121
134
144
125
61
109
76
122
98
69
118
142
139
105
95
82
100
114
124
138
155
95
129
114
127
95
161
188
99
125
77
82
132
83
103
110
97
122
127
127
129
103
129
95
137
142
156
110
102
152
124
184
87
87
81
119
97
119
177
117
82
54
98
149
172
82
98
148
167
149
87
105
132
81
131
102
95
125
49
78
119
97
102
80
142
134
124
154
95
90
105
128
82
120
80
129
169
111
124
139
104
138
98
108
95
161
105
87
119
54
152
117
90
135
77
153
120
107
90
129
112
103
93
109
120
102
145
114
113
169
125
125
156
54
117
124
77
78
133
122
137
185
91
108
105
147
126
127
135
49
150
161
91
115
106
68
165
153
110
111
54
185
157
72
106
54
109
95
54
113
49
81
114
125
101
112
110
127
95
91
90
124
101
137
120
87
69
102
54
81
116
91
140
138
116
151
112
156
107
104
74
127
105
68
106
74
103
162
172
118
95
102
144
96
144
110
103
135
120
163
102
133
161
93
105
129
103
95
108
163
123
111
108
90
109
145
108
91
119
95
102
113
190
133
186
111
98
111
151
90
124
69
111
110
116
107
140
129
98
101
112
148
54
150
125
101
144
103
135
108
94
143
103
95
158
117
99
84
83
148
138
129
140
131
123
166
100
99
114
76
215
74
98
108
95
81
54
133
119
157
142
105
133
120
74
102
98
125
179
153
127
96
115
137
145
102
110
77
49
109
81
177
148
91
90
96
90
200
116
81
108
112
108
108
135
106
113
78
109
140
109
136
125
110
108
89
78
91
98
200
133
140
146
138
119
86
145
80
138
107
124
91
164
95
95
101
87
160
130
54
118
113
130
61
81
83
127
81
49
91
102
147
133
136
89
91
49
109
146
137
104
154
141
127
102
131
82
111
96
59
153
103
182
169
131
82
90
102
117
112
160
151
150
145
67
105
93
145
106
127
139
100
67
108
98
115
49
105
128
76
117
91
124
104
77
124
128
103
67
177
54
127
102
136
153
124
108
126
80
108
108
112
133
87
134
118
87
177
96
149
179
177
153
143
149
98
96
105
110
102
88
96
87
120
125
94
93
149
132
150
117
97
87
111
123
154
54
107
115
119
106
107
87
125
77
141
82
145
81
131
167
95
49
137
110
102
116
120
112
93
84
68
94
151
95
104
119
156
103
110
128
133
115
69
148
133
110
130
118
107
102
124
128
145
103
152
94
121
78
76
102
158
138
95
179
103
129
54
54
160
119
59
130
85
140
102
96
95
125
54
106
103
155
59
103
59
139
153
107
87
106
74
147
148
108
140
107
95
141
90
147
96
87
132
105
132
189
176
75
148
112
151
123
115
138
183
139
105
148
54
150
77
108
159
95
120
158
96
134
148
164
95
101
108
102
123
104
113
97
139
107
139
105
172
122
105
91
113
123
108
109
87
130
77
93
135
76
108
130
85
141
86
77
98
121
57
112
103
98
148
113
106
129
59
135
83
133
74
85
67
100
150
98
68
137
144
102
97
81
96
155
108
142
95
69
130
95
179
123
164
102
102
96
105
67
102
121
168
139
102
107
104
100
133
141
120
129
98
83
78
127
120
121
81
124
153
108
95
108
122
107
122
150
89
115
156
111
146
101
123
95
122
111
154
102
95
106
131
136
125
111
127
168
85
160
128
111
74
147
139
129
108
120
59
99
124
139
113
109
49
97
77
96
179
127
113
97
88
87
107
147
189
155
113
124
133
148
125
81
152
157
120
94
83
103
127
113
122
97
105
54
118
77
118
86
84
135
108
89
77
81
143
67
132
133
133
95
81
114
177
105
104
108
76
96
120
128
103
95
135
54
148
132
126
113
151
129
91
107
144
78
177
137
103
92
131
81
108
102
134
102
104
156
139
93
107
108
146
141
102
121
59
113
74
84
79
103
149
122
126
127
96
134
157
82
79
118
125
126
119
156
102
89
82
96
118
54
113
130
89
141
137
125
118
131
59
120
128
97
126
91
109
118
179
115
83
92
74
107
67
128
108
98
102
90
54
103
121
103
133
74
90
76
155
54
143
110
87
119
96
117
112
189
90
124
87
108
166
79
87
140
103
177
85
127
127
90
74
191
127
172
124
102
169
145
138
108
110
89
85
131
146
85
151
112
100
115
93
167
104
102
120
116
90
177
153
78
111
112
102
106
134
87
102
128
140
117
185
143
102
103
133
82
98
165
124
85
77
92
134
133
88
54
131
91
128
115
93
119
54
121
129
54
154
129
77
98
77
151
126
113
111
59
116
143
140
86
54
114
138
90
76
107
163
108
87
180
129
105
147
139
114
131
140
98
158
112
157
98
130
183
68
109
126
102
103
110
127
103
108
113
124
87
118
157
106
89
140
110
83
98
106
94
113
99
118
59
122
146
179
115
109
74
146
54
78
90
101
106
98
108
135
65
98
126
112
156
92
128
133
91
94
85
162
94
83
161
87
108
135
78
174
69
67
54
68
116
115
150
125
83
49
133
98
112
103
103
147
186
82
54
147
125
103
123
81
146
143
148
102
112
141
144
142
158
130
105
113
130
108
162
158
138
103
138
133
108
89
133
105
145
93
118
132
54
115
189
54
102
112
134
106
103
132
139
144
112
103
148
78
115
74
175
106
113
102
141
128
144
79
119
54
120
90
118
59
133
86
174
139
134
105
189
139
113
125
78
159
140
130
93
105
144
183
95
102
94
130
93
133
138
145
82
114
106
163
145
132
112
81
80
96
119
111
109
110
105
78
95
54
97
143
100
81
119
125
107
91
188
120
90
77
111
98
127
54
116
132
109
74
129
143
102
170
115
125
150
144
68
108
78
54
153
83
54
85
131
83
152
108
103
105
176
98
49
49
101
136
103
143
125
86
158
109
160
158
54
153
169
96
121
145
127
87
146
87
125
74
54
140
199
123
123
111
140
86
145
102
67
113
61
118
101
95
148
142
76
76
100
158
128
88
102
126
143
105
138
96
153
108
54
125
106
123
125
74
125
157
125
128
99
74
69
82
160
103
114
113
90
120
85
148
137
122
160
116
160
105
134
80
103
109
141
105
61
128
90
134
77
97
135
110
148
103
97
111
130
168
117
128
136
95
76
136
140
81
113
82
74
111
105
129
144
82
144
134
141
134
137
142
92
113
127
105
148
120
128
101
96
54
162
89
125
105
68
154
128
109
75
49
98
153
130
104
149
49
111
139
140
81
143
128
54
67
97
118
74
135
118
109
87
114
125
91
113
156
105
111
78
110
100
165
136
140
159
106
54
102
98
143
99
83
155
98
132
136
54
81
144
54
49
110
111
97
107
115
131
194
173
95
76
133
107
133
95
111
133
102
124
89
131
118
104
142
87
129
147
97
141
74
101
102
59
156
106
128
175
135
54
110
98
54
125
150
107
104
110
133
92
180
158
108
105
142
115
83
98
54
106
98
74
119
93
161
146
114
113
102
49
118
147
148
80
113
123
98
85
121
167
54
86
170
93
105
105
123
150
138
158
106
125
140
136
93
74
108
112
145
49
172
65
146
153
103
128
95
83
99
135
148
164
128
136
98
135
153
113
107
61
88
122
120
131
67
83
108
136
87
99
102
140
132
120
188
97
172
153
91
88
93
113
122
149
177
177
96
108
125
103
107
112
105
88
90
100
108
124
136
101
125
101
100
80
127
139
137
87
131
148
90
126
158
152
54
133
109
102
103
91
122
103
146
93
117
162
119
157
109
133
84
105
133
114
154
95
120
122
78
108
126
176
141
79
102
131
137
133
95
89
120
106
205
113
54
125
112
135
116
139
116
129
114
114
131
86
165
107
54
131
61
146
135
105
102
106
105
134
134
135
104
180
129
115
110
127
78
82
117
110
100
103
114
135
98
99
129
154
138
80
95
116
67
165
128
148
76
130
114
107
105
98
74
104
102
125
200
95
154
125
140
117
139
84
108
128
133
87
98
167
121
165
54
110
153
100
92
67
120
136
108
98
101
134
115
122
106
61
135
124
90
136
77
111
106
133
125
74
82
151
112
117
166
74
76
102
76
108
131
102
77
158
108
148
148
138
103
138
131
144
98
136
103
148
125
156
105
146
102
148
76
114
91
87
140
142
113
84
121
143
106
54
98
99
115
133
122
168
54
167
95
110
146
153
97
146
133
123
145
95
145
105
119
139
147
111
74
158
108
101
155
98
144
126
132
61
103
121
87
91
145
87
117
112
146
148
177
169
149
205
119
100
87
139
124
83
125
126
87
144
98
126
138
76
118
156
156
125
121
192
91
90
120
128
72
98
108
133
105
144
96
107
93
73
97
113
162
133
103
133
108
113
78
106
154
133
149
113
144
120
67
95
124
122
133
104
169
95
133
165
140
49
108
107
130
93
110
108
190
84
164
101
83
113
126
113
76
49
158
105
79
117
92
102
115
108
147
91
144
134
158
90
105
102
151
101
152
84
112
139
119
86
120
116
154
178
85
155
87
178
173
110
82
145
95
142
127
107
54
84
106
59
107
177
87
59
101
68
67
87
146
100
54
141
54
106
115
103
159
96
54
145
83
105
112
106
112
138
152
104
117
119
103
176
161
114
132
82
151
108
102
151
125
77
146
54
126
107
99
105
127
110
84
148
67
164
113
86
99
97
96
151
82
165
106
193
135
155
107
119
135
107
143
122
139
101
122
99
135
162
98
112
129
143
113
76
104
114
104
77
78
95
145
102
100
113
135
68
91
108
133
91
216
123
80
144
92
128
115
135
144
139
135
114
98
54
121
145
102
81
90
102
101
69
158
85
96
104
107
205
108
169
130
122
126
129
158
148
95
115
129
137
113
67
54
54
80
160
162
98
122
87
49
129
105
138
98
142
103
136
160
93
54
145
122
100
148
133
156
101
131
77
120
85
113
140
77
148
104
114
76
54
118
120
121
96
169
85
144
162
105
135
131
129
77
147
129
143
59
102
103
98
134
83
127
93
113
108
115
144
86
82
159
101
138
97
136
134
157
107
105
144
129
70
161
111
122
134
133
49
150
100
172
131
77
140
143
105
128
138
81
96
45
121
88
49
90
54
105
125
89
143
160
140
145
108
133
102
113
162
84
98
145
117
144
81
99
212
95
110
119
127
113
83
76
113
160
110
83
123
147
125
177
102
133
122
139
121
76
127
135
101
81
103
78
117
147
129
114
135
113
124
86
81
83
90
133
99
153
54
122
117
102
137
123
116
155
81
128
106
122
114
160
108
118
155
100
103
54
114
128
81
134
156
102
105
89
103
81
110
79
96
90
54
101
112
129
100
119
87
89
121
123
122
54
74
106
108
93
115
93
133
110
81
115
118
182
82
153
118
102
77
144
98
93
81
95
135
96
118
128
118
177
132
54
68
124
111
122
144
76
133
126
146
85
81
146
90
114
135
113
124
145
147
126
86
125
95
81
131
144
67
204
146
89
98
54
153
188
76
106
123
119
108
132
102
116
148
116
120
86
91
90
108
110
113
133
80
103
108
102
85
140
148
81
155
129
102
127
111
103
84
54
107
96
112
105
145
108
140
125
91
114
93
131
122
103
95
76
113
59
143
128
113
95
81
138
102
171
86
158
115
76
95
133
146
98
96
105
94
77
77
102
105
127
113
107
95
49
90
137
54
116
96
103
135
127
83
105
101
74
108
141
104
111
118
107
112
98
115
117
104
112
123
121
69
129
83
170
81
163
59
112
68
112
49
107
81
165
144
91
125
127
132
95
85
148
118
177
126
147
83
177
107
45
144
116
74
154
115
152
116
102
118
125
103
142
69
107
108
120
92
98
119
128
107
129
132
128
140
133
105
108
147
146
91
144
103
105
110
91
101
115
116
96
124
121
83
120
115
143
112
118
74
147
146
152
102
138
74
123
177
70
131
98
119
113
114
117
125
141
141
59
54
156
107
117
128
77
98
115
120
118
100
160
109
154
95
130
81
114
182
140
124
140
148
99
106
128
102
200
122
87
102
178
54
116
98
157
118
136
130
108
98
103
119
113
92
106
120
101
54
69
102
89
76
136
140
113
113
89
93
119
106
120
127
152
128
67
145
106
135
90
74
129
79
108
119
119
61
165
122
141
102
160
106
121
54
132
105
54
54
111
103
133
210
152
108
95
102
81
132
140
98
148
54
101
155
161
95
83
98
123
95
113
96
92
143
73
128
120
114
105
119
93
93
103
115
76
125
99
125
133
93
107
189
102
117
140
79
138
161
108
112
66
196
137
87
135
74
103
163
49
138
97
139
125
139
105
101
125
94
162
107
116
93
149
102
133
89
105
98
80
144
128
148
102
164
131
126
77
59
157
175
115
146
130
150
107
54
175
165
105
54
128
54
49
129
124
117
107
164
91
107
102
139
106
194
89
127
87
54
103
95
103
113
105
102
129
100
141
147
128
163
138
96
128
110
156
82
122
102
146
106
83
103
103
114
76
125
108
116
191
160
129
85
103
92
54
121
137
77
179
147
54
102
96
131
111
120
74
102
106
152
160
92
112
125
98
98
125
139
146
158
106
105
155
103
152
108
100
123
129
140
130
133
134
118
108
76
187
84
173
144
80
103
127
161
54
92
98
118
78
93
80
102
83
90
120
92
81
108
110
170
134
57
83
126
115
96
135
54
137
113
169
130
110
153
146
49
81
155
120
98
117
108
108
146
103
121
110
163
125
103
131
122
121
181
81
83
97
95
113
81
128
141
54
172
98
122
102
148
98
165
115
128
81
102
122
72
107
126
139
81
142
76
147
118
107
102
141
156
95
76
95
122
147
98
102
95
93
125
54
133
132
111
76
125
144
129
179
94
132
158
124
197
126
125
102
152
106
54
116
82
153
121
109
103
54
119
102
93
130
106
108
101
128
82
154
87
108
135
74
146
54
69
119
81
82
61
127
98
177
123
101
181
137
179
67
191
102
87
126
149
121
118
145
138
114
125
126
108
98
101
103
185
67
95
102
150
103
135
152
123
98
99
150
82
94
114
49
85
146
102
91
90
105
86
95
120
81
98
98
54
83
77
69
108
115
101
108
82
146
82
49
128
120
110
90
98
141
158
121
108
90
102
161
135
163
160
146
102
76
96
79
124
95
127
93
141
102
144
129
59
101
121
102
113
128
84
156
130
83
76
132
91
116
94
143
102
142
188
97
108
105
198
113
103
122
107
106
54
74
95
127
63
67
165
166
144
135
122
107
124
81
102
74
140
105
93
54
124
93
102
100
101
117
95
106
148
173
97
108
115
177
144
117
85
74
75
88
49
72
157
97
94
126
160
111
126
83
103
112
123
78
172
108
133
160
80
98
177
121
167
202
76
143
97
79
131
122
110
173
145
138
100
127
155
127
59
150
140
172
105
88
154
54
49
118
118
89
49
82
102
145
128
96
102
59
121
98
135
97
122
79
142
102
59
90
126
140
78
122
113
146
105
117
143
162
127
71
142
154
109
106
108
77
139
102
95
59
127
112
103
160
113
49
83
158
104
54
105
77
107
103
147
69
135
110
99
104
207
163
180
54
93
87
102
82
102
49
138
86
143
80
59
74
154
145
122
155
87
102
146
54
95
128
117
144
98
110
116
144
102
74
159
102
100
125
107
133
136
113
137
120
125
98
127
105
148
108
132
149
112
80
143
128
101
110
117
128
127
146
116
106
159
125
129
161
102
118
105
135
131
195
135
107
131
100
129
107
115
131
49
129
78
104
112
113
90
141
127
105
87
118
146
68
140
168
146
117
113
98
68
82
105
77
151
221
130
127
84
131
177
105
77
59
123
84
125
95
105
125
120
82
177
140
90
95
103
89
145
205
107
82
59
156
121
99
125
95
101
68
76
179
59
148
119
134
113
139
93
136
84
131
160
49
102
115
104
117
122
131
113
140
108
170
108
147
144
93
137
95
135
76
111
54
106
165
96
194
79
103
179
81
102
68
104
108
96
120
112
130
82
157
107
127
118
133
148
148
129
118
163
114
130
129
139
105
78
166
149
132
120
102
98
145
191
124
148
100
142
49
98
109
150
108
137
79
155
98
112
104
113
113
148
80
99
116
122
162
112
103
108
80
108
92
113
125
139
104
123
49
121
114
92
105
158
105
129
99
148
127
115
113
165
80
100
93
101
128
111
114
114
95
145
139
95
125
49
144
72
130
122
74
93
81
133
103
128
110
112
161
160
146
159
79
122
59
155
152
102
129
85
108
125
112
125
146
96
111
95
112
118
140
137
89
89
82
76
115
104
114
107
90
145
133
103
98
151
88
151
69
96
103
114
190
66
111
133
90
129
159
95
138
105
127
167
150
151
93
49
142
82
103
155
105
130
158
133
181
122
102
143
84
54
88
82
95
137
134
108
77
103
131
163
54
125
129
105
89
110
95
116
82
102
125
97
101
77
126
170
115
107
103
112
113
98
81
82
92
98
59
127
132
96
108
105
78
125
110
171
73
106
151
95
104
138
107
114
67
174
116
95
59
192
179
112
148
126
93
146
87
140
138
95
127
122
128
102
54
89
128
133
95
162
123
59
144
96
101
74
145
147
143
140
94
177
131
72
98
95
111
59
139
102
124
100
102
83
149
128
95
114
96
78
95
116
96
126
103
49
54
153
120
96
148
87
107
159
177
126
98
104
147
128
101
139
156
124
125
159
128
106
138
159
155
104
120
154
138
108
125
68
133
108
87
96
82
95
123
164
142
93
77
59
128
118
99
100
94
160
146
104
121
127
130
115
54
118
116
150
132
100
118
140
93
137
161
147
128
163
83
93
135
112
226
108
107
143
115
106
106
134
87
99
147
132
74
93
123
100
231
132
165
105
148
95
122
87
112
98
137
126
116
61
96
127
96
146
90
107
82
54
95
100
98
103
177
97
164
124
93
120
132
97
162
128
98
122
123
120
156
95
103
92
91
81
141
120
160
109
98
118
117
101
151
115
129
130
141
128
105
91
135
95
104
54
82
129
146
100
113
94
101
133
88
130
158
93
99
158
150
120
118
95
97
120
134
180
87
104
112
94
90
176
81
112
103
132
90
156
132
78
167
134
133
113
120
61
115
102
191
163
112
123
180
67
159
108
78
90
54
111
153
82
147
88
97
99
121
164
98
101
94
76
114
95
96
106
59
99
108
117
123
127
128
115
128
128
157
92
102
93
67
112
49
128
82
97
103
153
118
131
110
150
175
167
199
117
83
93
96
109
138
105
110
79
113
130
119
132
80
150
100
159
102
87
68
96
91
100
166
82
131
119
144
93
85
113
105
68
123
111
110
139
114
99
54
123
98
161
140
119
103
108
90
98
74
133
104
165
74
135
81
125
87
93
132
122
122
83
59
91
143
49
106
138
105
104
133
98
81
118
84
81
112
107
80
114
98
120
108
113
80
150
106
134
92
150
134
103
131
105
93
115
86
125
153
61
103
108
128
103
104
102
127
103
145
95
105
89
136
98
180
108
145
96
133
156
85
170
146
139
143
128
120
140
148
128
111
124
96
113
114
113
179
128
108
67
115
131
124
91
86
143
111
101
106
102
68
123
123
91
102
81
103
153
69
131
87
177
49
108
87
123
112
130
129
116
90
95
163
79
145
74
136
125
90
95
97
78
117
186
121
101
128
144
112
68
143
83
74
144
82
149
106
142
95
106
108
76
61
108
157
144
112
120
122
102
147
54
102
105
102
160
93
102
105
180
90
94
130
141
119
102
49
113
132
96
110
118
136
132
120
59
103
149
93
111
109
123
134
102
67
136
139
121
149
125
154
81
82
98
102
90
133
147
108
158
155
76
114
116
128
108
90
135
125
165
137
54
112
71
132
54
108
135
108
102
158
59
117
135
106
135
95
94
160
103
59
108
91
102
103
127
113
119
122
135
76
125
141
116
99
108
128
81
93
148
87
132
81
134
101
102
86
87
163
179
110
97
101
135
98
147
96
85
87
102
127
125
140
134
97
146
103
159
154
131
73
98
110
119
102
148
148
143
157
76
54
67
82
108
96
126
141
95
104
109
125
96
101
129
76
123
98
124
113
84
120
135
127
108
99
137
135
128
98
95
113
98
108
96
130
87
74
93
68
86
118
112
195
113
101
148
119
95
116
137
131
133
147
108
117
144
108
113
82
129
80
80
77
93
102
160
102
135
133
103
131
139
144
139
130
144
140
90
95
127
69
105
157
69
74
110
112
86
115
106
144
122
132
74
102
98
174
86
148
115
117
80
106
148
74
129
97
133
139
108
116
104
200
111
197
128
90
98
143
77
102
139
108
102
98
95
54
98
143
119
108
136
93
102
169
118
98
93
128
190
128
104
125
132
106
113
132
109
114
101
142
113
138
112
87
104
127
128
149
103
59
113
96
133
126
98
158
147
141
133
94
113
86
142
95
59
67
131
105
120
101
103
169
107
135
108
74
128
54
54
134
151
126
113
109
54
116
150
128
98
135
151
104
105
122
142
77
74
145
94
100
130
157
105
107
124
146
100
67
87
133
106
125
123
116
128
131
67
166
135
91
102
124
97
88
96
165
67
145
101
78
74
88
149
143
113
49
115
122
92
49
113
150
110
77
95
137
92
49
133
140
69
83
114
165
167
87
134
102
108
140
108
98
97
190
137
77
115
54
161
95
100
82
163
102
118
173
165
90
139
67
74
156
179
85
122
99
68
133
101
162
108
164
106
95
109
107
90
109
121
54
100
126
91
97
98
125
87
82
82
147
125
110
107
54
155
110
54
82
111
179
115
84
128
120
68
149
102
106
89
188
81
112
152
168
103
105
139
89
76
136
138
76
81
49
128
115
88
155
102
102
106
144
78
147
94
95
129
115
179
90
114
124
103
81
163
135
148
81
123
146
103
159
135
134
76
138
93
84
117
127
139
196
81
165
74
82
96
114
113
85
200
154
75
128
142
106
153
107
123
102
93
78
165
104
82
103
141
90
113
84
160
164
109
114
74
90
99
140
116
62
170
134
105
93
99
152
113
95
123
141
79
155
127
102
158
139
95
54
90
107
141
98
61
103
98
133
143
158
112
138
63
126
102
98
77
129
130
67
95
120
103
177
125
117
127
129
144
187
83
107
81
100
151
107
54
102
108
129
120
142
76
129
131
145
83
167
105
105
137
96
135
97
95
163
105
125
155
104
101
191
104
145
113
200
73
106
91
69
158
125
163
54
107
113
152
108
133
129
95
113
104
108
74
133
174
105
121
95
118
119
135
93
139
114
54
54
143
108
112
175
83
146
102
100
110
112
115
136
85
135
105
200
156
103
54
112
143
96
127
149
99
77
102
190
103
140
126
129
127
107
129
168
59
67
102
115
136
134
54
98
114
83
59
131
103
113
108
125
99
140
113
54
172
141
121
87
128
113
89
172
143
59
107
100
153
104
90
103
95
172
110
74
139
104
95
123
144
88
85
135
108
105
105
139
102
113
163
130
95
117
83
82
80
126
88
146
128
108
132
105
118
102
146
84
102
118
145
86
128
81
98
107
111
54
98
94
81
127
91
94
81
103
145
115
78
74
124
95
144
138
101
127
92
102
111
115
88
132
95
115
120
139
94
194
118
114
90
62
110
128
145
176
131
155
122
98
74
113
151
77
110
103
123
69
114
127
54
167
94
74
134
54
109
80
177
49
129
49
113
179
120
122
143
144
124
81
129
109
143
114
102
168
148
146
121
157
200
93
54
179
94
146
116
127
113
129
97
177
137
103
120
65
144
102
148
114
170
108
110
83
95
133
107
139
86
188
88
117
143
103
118
108
142
125
128
98
118
95
82
162
125
102
88
78
93
115
77
108
133
179
166
49
173
110
102
100
114
96
169
165
123
101
95
119
90
111
69
162
119
146
102
92
141
120
133
118
91
95
117
54
85
100
115
115
128
158
113
157
113
77
138
115
107
132
89
100
104
158
80
183
123
105
144
77
105
54
140
105
129
108
77
97
108
76
180
103
146
173
123
169
78
173
95
171
108
126
80
141
177
98
137
89
127
105
143
59
125
102
92
148
97
131
97
92
136
95
117
91
160
115
110
103
96
61
123
125
83
91
133
157
90
114
96
54
74
149
155
87
116
54
59
87
99
122
125
54
107
116
129
119
115
139
59
107
141
112
110
108
148
97
127
138
106
126
117
181
79
126
140
95
113
150
109
131
115
138
54
54
93
59
138
76
158
114
115
135
49
112
98
113
117
155
102
177
95
97
129
154
157
113
182
131
79
104
130
120
96
83
98
111
95
184
122
113
95
129
120
78
127
74
108
147
105
133
131
77
111
54
163
110
125
125
109
115
99
124
159
143
118
102
134
127
85
95
129
94
76
101
140
171
118
85
154
101
100
94
105
68
131
123
127
132
157
107
123
117
112
161
102
106
83
134
108
108
45
128
93
108
123
143
135
116
102
130
148
131
186
157
133
98
126
84
76
139
171
74
136
83
103
113
111
131
122
181
134
161
49
133
138
166
95
207
113
119
108
85
149
108
49
74
109
82
137
78
148
49
125
177
86
90
167
49
82
146
91
175
109
95
89
103
127
112
173
91
83
91
102
102
143
172
121
102
118
98
123
118
135
59
132
101
165
140
87
138
101
140
78
135
105
108
127
89
143
105
125
168
84
102
98
121
158
78
54
61
160
101
153
135
105
54
115
94
68
156
144
122
108
134
186
108
139
129
76
120
117
159
146
78
102
105
125
149
96
105
90
130
74
148
59
163
143
132
131
108
124
107
148
49
133
59
83
151
54
108
123
113
128
142
138
115
106
120
155
54
132
101
125
182
185
132
77
135
69
148
168
101
138
118
81
136
142
97
78
129
104
124
105
112
148
125
77
172
70
109
169
95
95
130
128
158
142
92
95
104
108
77
74
135
119
102
107
80
113
150
123
140
141
74
147
175
49
113
115
120
141
107
105
113
126
105
93
142
144
169
133
113
127
158
159
95
102
160
118
112
140
126
171
91
116
127
106
108
124
130
105
74
74
91
105
156
145
104
123
102
153
110
106
129
135
135
140
105
125
89
131
102
96
92
128
130
114
54
91
87
102
124
165
92
116
149
125
161
191
101
128
115
87
93
83
102
115
96
113
93
125
87
182
156
67
102
166
77
143
158
117
167
158
112
113
113
87
110
149
165
154
190
80
122
151
117
78
95
140
118
109
100
77
54
98
118
148
131
119
159
180
121
165
200
127
142
99
122
93
105
54
138
126
102
102
151
82
102
169
131
91
74
150
65
87
116
143
128
200
157
120
98
145
112
120
81
129
117
112
88
105
124
112
160
141
98
97
90
117
128
106
141
87
95
98
113
110
144
117
106
159
125
95
152
107
153
83
98
103
95
54
97
165
120
133
141
95
169
104
123
134
95
130
136
120
78
119
108
127
105
148
109
83
145
102
135
97
156
103
133
100
115
123
67
54
115
129
86
130
95
121
115
205
115
111
90
127
68
119
125
90
125
79
117
139
124
81
158
95
150
212
78
106
128
83
95
97
141
119
77
98
74
77
158
102
118
104
99
123
103
133
137
161
110
105
102
68
132
139
106
67
80
113
74
105
105
160
133
73
67
101
103
125
77
151
129
100
88
146
81
54
49
127
125
110
90
105
105
126
111
95
183
108
157
82
165
155
81
129
129
54
78
102
122
102
102
105
131
45
120
81
124
135
106
121
157
122
107
165
113
126
101
121
81
59
146
118
107
95
131
117
131
128
97
105
99
128
144
118
72
102
125
136
102
54
78
54
77
123
123
125
87
102
131
178
98
133
96
96
117
97
143
177
175
128
137
158
104
144
105
79
93
135
115
148
110
59
74
146
112
127
143
84
138
123
155
150
156
156
110
108
125
103
135
129
98
97
104
140
107
162
103
59
98
144
128
139
81
135
190
124
110
143
152
125
120
137
163
115
163
124
166
152
122
87
110
98
89
101
140
74
80
140
130
76
118
87
98
121
130
49
158
102
190
115
107
87
139
112
127
111
77
184
81
82
81
98
139
134
95
71
74
77
80
97
176
92
136
61
108
128
49
104
81
104
108
98
106
148
96
92
106
145
138
113
102
119
127
118
105
180
136
80
101
106
84
93
108
94
137
145
131
81
92
86
173
82
105
105
59
98
83
125
104
93
94
54
144
99
182
174
99
143
67
128
144
78
104
135
153
137
90
128
105
111
143
149
54
81
110
98
134
54
108
119
97
129
98
103
90
141
120
167
106
125
96
117
80
112
82
68
129
96
128
109
61
135
98
130
133
142
81
117
107
135
113
141
142
113
108
128
113
143
129
146
108
102
103
91
91
110
125
143
126
96
107
54
150
74
92
102
146
148
90
125
95
117
83
90
122
136
83
102
120
102
97
98
105
74
129
104
128
110
112
130
101
104
143
118
142
131
125
131
102
130
206
116
131
99
181
74
155
70
113
135
74
113
153
61
105
95
102
134
160
145
83
135
156
133
109
148
117
74
112
74
107
80
92
120
113
145
122
98
132
160
148
146
105
107
154
142
118
76
124
163
123
95
148
125
120
76
87
92
123
113
82
59
137
137
112
108
116
98
176
118
155
112
128
102
110
145
108
110
85
133
123
133
79
97
132
81
103
102
134
100
183
108
80
120
110
97
128
61
169
149
148
108
97
136
149
148
102
106
87
98
143
129
87
147
49
105
102
198
96
125
83
49
190
108
113
81
170
148
161
144
107
78
98
119
133
142
120
108
157
127
99
153
123
103
111
108
107
132
138
98
99
133
74
148
54
81
82
66
149
129
116
177
98
140
164
134
170
95
120
95
130
105
114
108
148
49
81
143
143
158
117
127
102
145
137
59
148
96
117
65
108
91
121
92
115
103
149
96
83
133
49
104
106
107
107
95
136
132
161
140
91
103
162
113
95
101
137
135
129
140
145
92
131
111
133
108
98
97
82
149
54
125
145
79
114
160
117
80
102
157
99
126
108
101
111
120
108
160
116
154
143
122
135
142
134
135
121
74
87
91
166
125
141
121
126
129
108
122
54
138
190
124
111
130
73
102
81
90
127
146
155
95
120
129
108
91
121
149
85
96
104
148
108
114
69
54
94
87
110
124
108
105
126
74
101
110
105
112
113
144
113
130
102
92
143
172
93
77
113
49
90
112
108
74
180
98
140
115
74
106
69
114
118
128
156
143
84
132
114
54
95
113
113
76
95
112
93
134
74
158
135
115
120
206
89
93
96
102
80
90
107
104
54
119
156
77
102
118
140
87
124
90
83
140
72
160
68
112
90
122
117
124
54
73
67
86
108
128
95
113
45
107
90
121
151
69
148
92
81
103
141
140
163
168
118
110
127
111
103
127
146
158
116
90
110
131
49
139
81
59
84
159
85
76
98
107
93
95
139
105
108
108
107
95
125
74
67
107
67
146
146
116
165
143
149
106
106
112
94
133
93
197
161
90
101
127
136
171
118
129
106
101
59
103
99
90
54
123
92
95
112
122
130
82
87
138
113
81
132
149
108
49
81
83
109
141
95
151
54
145
143
93
148
54
147
61
123
180
119
141
107
151
113
76
74
125
130
136
94
93
179
109
101
108
103
82
95
131
104
49
124
155
124
138
134
110
131
123
123
105
129
81
144
124
108
127
101
74
153
168
136
119
101
136
148
119
108
192
134
157
82
128
102
95
136
96
49
150
124
106
143
115
81
77
108
49
135
67
174
113
180
49
135
127
158
49
132
122
123
102
106
117
108
113
103
126
124
83
81
54
105
142
157
142
126
121
107
54
143
131
126
143
129
85
96
152
128
139
123
103
103
149
141
166
167
105
200
133
154
105
108
106
113
102
108
156
125
115
159
88
125
108
119
110
119
82
79
108
106
74
118
95
136
141
61
102
93
108
153
95
93
125
160
113
127
68
104
98
128
96
119
161
110
143
108
100
108
133
144
74
102
138
95
118
148
143
127
110
91
137
154
140
102
83
116
130
74
141
137
142
108
145
113
102
160
121
126
59
108
151
102
116
160
93
124
125
137
54
132
124
131
106
76
102
118
127
109
128
91
108
133
140
120
125
169
108
149
90
108
108
135
147
132
134
90
59
75
120
95
109
113
95
96
100
139
120
118
99
107
113
133
105
105
101
102
111
154
122
81
121
108
109
129
67
121
135
126
108
114
163
103
110
111
171
126
124
113
141
137
90
105
108
95
132
102
132
95
158
98
76
160
120
126
148
105
100
83
92
128
153
99
54
81
108
148
131
85
125
103
90
131
99
95
139
139
111
129
69
190
85
81
77
95
144
130
114
138
145
59
115
102
114
105
95
126
123
101
103
104
125
103
102
121
110
138
108
54
124
77
145
131
144
143
45
168
96
74
116
124
140
127
97
104
95
120
133
102
110
115
114
93
93
102
127
137
103
96
104
150
90
91
143
132
125
109
123
59
103
95
129
182
108
133
131
156
153
131
82
127
145
172
105
79
183
131
103
110
124
126
81
99
133
128
145
153
102
162
92
120
100
164
128
80
117
165
54
102
105
137
106
81
127
87
118
161
143
123
103
136
79
95
116
108
121
131
123
144
70
81
96
136
114
67
120
156
125
127
103
114
124
117
129
49
87
121
188
128
49
105
120
131
138
147
95
108
108
124
54
65
113
108
199
107
94
97
124
161
129
144
90
92
110
80
98
97
54
127
110
165
54
95
98
87
91
61
143
106
124
108
160
125
135
143
90
78
142
107
108
132
103
177
88
127
101
152
113
106
128
116
49
83
120
102
95
117
109
105
98
80
128
111
85
141
54
137
115
101
77
95
155
143
90
125
145
149
59
139
99
54
118
108
93
138
114
90
95
161
54
117
105
102
156
174
122
78
108
95
105
144
134
129
78
146
131
146
54
161
124
99
89
104
116
95
113
97
116
157
145
120
140
98
125
116
116
134
106
98
74
95
144
54
170
149
103
138
158
102
112
112
117
114
145
77
108
154
98
172
103
116
74
77
91
54
158
113
143
85
93
105
95
140
77
91
67
49
125
107
77
83
105
97
122
107
148
107
147
96
91
114
113
140
111
122
108
139
131
146
87
89
134
204
126
102
137
77
108
92
100
150
123
62
54
105
90
125
87
125
207
140
98
77
137
100
74
49
172
99
73
102
73
83
127
107
83
144
82
115
115
95
131
108
122
49
110
107
136
124
98
61
124
95
104
135
146
179
98
150
129
77
105
146
130
108
118
167
95
89
147
155
59
148
98
114
139
95
112
90
102
147
102
49
134
80
67
102
104
102
173
87
177
151
127
125
95
171
89
98
145
67
124
88
133
67
109
132
119
83
119
98
91
79
76
164
140
54
143
128
120
113
99
161
79
148
144
131
105
90
68
107
143
119
129
113
133
128
129
122
135
54
119
76
97
54
149
111
177
82
132
131
145
135
115
147
125
107
54
121
120
200
78
109
102
126
95
70
140
54
129
150
142
67
72
148
78
157
87
129
129
102
67
74
69
82
124
143
169
98
146
106
118
124
100
106
152
54
127
92
158
98
102
141
95
125
96
94
107
119
112
143
88
108
107
115
87
103
84
59
105
79
101
144
103
123
76
157
115
103
85
54
110
138
138
105
102
90
90
83
155
86
115
102
107
148
103
106
98
59
97
98
156
74
117
107
93
131
159
112
150
166
85
149
85
95
175
191
95
108
108
125
113
115
129
115
78
164
97
177
148
101
136
101
135
138
103
147
131
94
151
102
54
96
135
87
156
140
105
76
125
103
147
135
70
108
177
77
84
125
128
93
98
132
128
102
95
105
108
112
150
102
117
146
86
95
119
83
95
90
158
116
84
116
103
95
152
139
157
101
95
87
113
86
101
143
104
125
77
98
132
67
124
100
77
108
124
114
87
147
105
67
147
103
150
54
78
143
160
83
54
146
93
118
87
91
90
133
196
77
85
82
138
102
103
124
82
129
119
95
54
80
103
123
87
128
144
61
110
83
92
139
110
119
108
108
125
138
98
77
159
49
92
142
165
101
110
170
105
215
100
96
137
93
77
127
107
54
117
83
97
54
105
118
159
117
105
74
140
95
99
103
95
148
103
147
112
85
106
112
148
93
86
135
153
131
104
54
111
155
98
148
142
82
113
54
93
120
139
143
138
102
140
95
108
94
94
124
145
167
74
160
141
120
70
120
76
135
148
102
83
131
153
144
93
104
67
54
103
84
79
111
101
121
146
59
54
117
125
146
149
95
131
138
155
59
90
133
107
81
59
94
54
117
90
130
95
115
127
131
90
102
49
106
158
104
112
120
63
135
89
146
91
127
98
93
144
140
98
102
95
95
108
122
145
102
111
127
110
90
98
234
94
172
134
111
101
95
113
138
124
113
99
102
144
102
146
81
122
178
162
144
83
184
145
130
120
134
108
125
163
166
109
123
85
110
120
121
128
147
115
126
54
131
141
135
148
93
138
104
135
89
102
120
147
116
87
134
128
146
102
125
102
77
124
110
74
105
83
118
133
122
125
124
141
139
147
99
111
142
158
106
134
125
111
139
149
108
126
148
102
93
105
128
106
105
94
163
127
125
174
143
119
67
145
155
137
127
104
108
54
77
91
122
133
125
95
102
150
120
180
102
161
115
77
135
85
124
95
143
146
126
85
147
102
114
118
135
123
108
102
108
128
152
139
95
149
118
139
99
94
145
149
108
106
213
89
54
132
125
90
102
49
97
93
125
122
108
115
106
112
138
79
81
74
59
122
96
148
102
136
116
128
133
127
77
105
59
87
116
54
129
105
139
186
137
90
158
85
69
105
138
125
156
112
141
146
95
131
119
102
137
128
107
224
107
49
95
108
102
96
110
120
59
177
157
98
139
141
105
98
133
120
59
176
115
102
99
91
150
54
104
111
116
122
148
129
134
146
132
141
74
177
81
54
118
138
90
98
140
119
106
110
111
110
131
70
54
108
68
74
120
91
143
67
104
118
145
134
108
108
102
80
74
98
131
146
90
102
95
129
179
147
117
129
88
108
111
68
124
123
143
83
139
91
114
49
103
76
122
144
106
156
186
108
148
115
94
54
76
89
77
206
114
54
100
122
119
122
74
90
189
130
91
99
99
116
74
126
149
125
89
103
61
72
149
102
110
127
91
108
127
118
138
149
133
125
167
54
152
127
59
111
49
105
194
77
131
129
112
141
102
178
190
128
108
95
154
102
133
123
125
93
95
140
95
143
73
99
98
122
73
99
112
98
144
113
121
106
95
102
83
54
108
99
106
102
108
99
166
103
117
132
147
143
128
102
141
112
113
111
126
87
130
123
76
129
148
112
131
132
89
140
54
135
81
133
128
99
150
90
108
90
126
93
144
103
113
105
140
97
160
131
74
103
93
120
177
123
102
107
107
90
93
135
151
137
91
96
192
165
98
76
100
83
121
92
97
173
149
180
154
95
98
110
110
92
61
85
138
68
98
123
144
99
126
139
129
76
160
143
95
97
127
118
146
83
98
54
160
102
102
118
146
147
115
162
125
106
54
90
49
87
144
95
76
144
84
99
100
96
49
172
87
88
94
180
97
95
110
153
104
119
87
169
116
127
110
114
95
128
125
114
109
98
102
112
118
77
132
78
54
98
85
110
76
181
115
93
95
125
158
103
150
92
122
112
111
49
122
108
139
190
103
119
149
127
77
110
98
116
112
136
154
142
112
82
108
107
135
120
74
59
162
157
108
109
117
151
157
92
93
79
100
103
98
81
148
149
108
105
104
102
190
87
110
106
102
87
183
81
147
95
83
104
114
87
124
113
129
59
103
171
130
112
123
103
117
168
94
108
102
65
91
108
83
178
93
76
83
99
95
132
95
77
102
101
224
147
148
82
85
163
87
159
127
153
99
95
143
128
112
127
133
90
81
149
95
131
89
102
154
99
90
86
156
134
93
143
160
67
89
103
131
74
152
95
98
152
91
54
103
90
106
155
129
95
108
166
182
100
90
124
134
82
149
95
87
103
124
134
124
158
111
127
74
100
156
99
106
111
116
127
200
59
160
124
108
98
127
121
121
158
109
148
133
83
135
115
105
110
143
115
93
138
115
115
116
115
108
171
110
102
67
116
61
117
54
92
92
121
127
132
147
128
161
165
125
144
135
104
125
113
182
146
121
95
119
113
102
162
168
163
112
148
141
117
106
133
110
130
155
81
93
49
133
102
61
144
133
133
79
76
124
167
88
54
49
89
126
102
102
147
140
125
115
108
133
113
92
95
103
167
103
106
96
94
81
90
76
152
110
119
135
140
95
124
91
133
71
98
128
153
69
112
159
127
102
153
141
112
95
152
106
80
125
90
166
126
132
118
54
103
67
168
117
160
134
93
80
121
114
87
143
156
102
126
105
114
98
131
116
94
162
137
54
135
123
135
81
109
144
125
49
111
90
125
113
182
74
129
124
107
124
105
116
91
95
129
54
115
102
95
87
152
113
73
93
76
74
67
136
97
96
87
110
106
137
83
95
135
114
110
129
103
95
145
148
147
92
148
100
49
141
130
107
129
89
73
96
129
112
96
103
102
95
81
90
83
147
103
120
98
114
90
123
107
98
61
140
67
108
195
109
83
157
117
138
87
87
113
78
126
95
101
101
103
134
102
81
74
59
104
80
92
133
91
96
111
108
203
103
102
169
93
122
191
107
61
122
101
140
95
98
77
132
132
152
115
134
98
122
104
128
117
132
138
85
49
81
100
125
83
95
133
134
125
108
165
108
153
123
98
122
100
162
147
59
96
119
88
149
103
123
105
121
113
120
146
101
103
113
113
49
153
54
157
106
95
105
119
80
129
104
83
91
94
127
176
147
142
180
155
150
103
99
110
120
81
145
95
160
121
123
146
171
103
175
96
81
107
104
144
59
122
160
139
82
189
135
150
128
137
90
108
68
135
155
102
112
90
79
135
118
129
87
120
140
59
54
69
124
191
102
147
125
118
136
98
139
125
95
102
81
119
115
233
83
90
67
112
103
117
164
147
68
156
82
104
72
110
93
97
100
160
117
111
108
102
122
163
101
113
113
106
69
108
132
115
105
77
126
49
144
96
156
109
127
118
49
142
154
126
123
154
54
108
98
139
113
105
117
125
118
89
98
186
87
99
116
138
148
108
49
94
108
73
141
116
76
108
78
82
115
125
125
95
141
134
116
112
105
102
106
147
95
73
108
141
74
121
106
131
105
54
107
95
165
167
86
100
153
123
184
101
80
172
108
143
108
112
102
166
94
135
59
143
108
102
98
144
142
85
74
145
115
123
74
101
95
54
83
118
129
122
102
135
129
87
90
153
90
148
125
125
73
123
139
77
90
97
114
102
115
198
90
148
177
122
125
103
146
77
81
119
133
162
90
172
98
54
102
133
164
54
97
94
106
112
101
95
123
225
112
149
120
101
145
128
179
134
86
134
95
54
163
95
157
80
135
54
105
81
67
81
107
102
170
100
128
122
108
120
128
161
95
128
121
98
103
97
94
180
49
120
94
92
49
126
148
168
150
76
109
105
49
105
111
115
144
114
141
106
108
90
81
96
135
120
153
120
133
173
83
155
124
88
54
131
152
77
113
144
110
148
121
54
143
103
78
107
105
114
119
131
127
90
95
126
74
142
112
95
132
97
148
49
83
169
98
104
170
180
81
129
77
103
157
108
102
134
110
124
123
107
125
116
85
145
145
61
54
141
102
101
158
83
177
133
139
104
124
163
106
120
136
102
81
175
108
71
117
102
92
104
111
146
102
106
80
80
125
105
49
122
97
118
154
119
138
98
143
101
133
97
139
108
127
123
139
123
54
98
101
98
132
186
143
107
119
158
115
116
74
129
104
144
154
177
113
98
54
49
124
96
74
179
136
108
120
115
95
168
84
116
100
81
113
98
118
126
145
93
49
144
109
105
54
73
54
79
128
59
105
105
118
134
122
133
151
110
139
126
116
108
126
103
96
120
125
159
141
195
140
82
105
85
107
126
160
145
127
133
157
119
141
132
81
77
106
125
95
107
113
105
113
119
132
115
74
135
74
123
145
128
86
49
119
91
123
146
77
176
49
151
81
102
133
148
112
59
182
128
149
103
136
105
95
135
111
117
102
170
160
116
107
151
132
113
119
108
161
127
142
102
142
106
100
82
74
155
45
107
112
112
90
108
98
149
104
98
144
132
123
148
102
108
98
136
103
146
116
169
153
114
139
61
99
156
74
124
101
99
154
92
87
143
96
102
105
102
115
98
90
148
74
138
87
59
148
131
143
78
155
135
104
109
123
164
83
115
118
173
155
122
102
127
87
97
129
120
155
95
69
49
143
96
54
95
142
107
98
113
85
82
77
124
143
49
167
149
113
102
108
124
90
140
139
87
117
69
173
124
151
93
109
68
145
144
78
135
86
132
98
216
68
112
176
130
78
170
188
122
112
151
76
97
122
129
127
177
102
126
95
111
128
165
102
105
164
135
54
112
81
114
168
102
95
114
127
95
158
145
134
129
54
83
81
145
149
157
149
94
135
111
139
120
135
84
93
152
139
134
98
107
146
178
118
54
98
94
98
172
81
123
81
124
117
54
115
87
138
122
160
107
128
89
125
92
99
106
125
123
81
127
87
183
90
116
99
163
147
81
145
119
105
108
109
74
103
136
118
101
147
76
90
97
178
161
49
54
85
92
132
95
94
77
98
170
116
92
87
105
103
127
78
83
107
82
177
79
78
144
62
138
108
131
87
95
142
101
83
128
150
74
121
144
114
170
164
108
118
89
108
200
110
99
113
98
175
83
67
73
110
133
102
137
83
96
124
148
77
143
124
106
95
107
111
90
155
108
107
59
127
59
107
131
148
110
155
49
190
115
107
124
148
82
173
74
85
152
124
93
101
177
137
124
115
113
177
103
116
108
103
126
80
102
121
90
78
49
111
135
78
61
142
101
98
108
154
120
133
131
85
100
108
137
103
138
106
185
54
126
112
54
93
143
139
104
127
54
152
54
49
91
135
128
94
168
81
80
88
170
151
128
81
90
116
122
152
142
92
163
159
95
94
91
105
172
104
103
97
121
132
118
93
147
129
161
102
90
163
91
103
126
85
180
110
92
117
108
84
114
120
102
77
108
93
79
73
163
81
113
120
150
95
114
128
129
103
115
59
85
115
90
131
140
115
155
179
92
54
146
146
167
102
105
98
118
49
146
54
104
96
139
95
68
131
74
124
103
154
150
108
172
139
82
110
113
116
61
158
174
150
95
93
102
126
148
142
167
112
104
128
141
107
144
108
176
94
133
79
95
76
140
152
155
113
102
128
106
142
156
99
116
150
144
131
81
141
90
144
116
152
102
105
93
90
108
114
94
134
108
112
129
170
81
82
136
173
144
124
120
81
124
143
91
113
54
142
54
83
103
108
124
97
54
118
143
54
116
122
106
93
83
128
69
147
194
87
141
145
108
127
159
107
96
94
117
113
77
106
131
108
117
121
175
144
108
121
75
104
125
154
144
122
115
120
196
124
133
49
127
98
144
63
122
116
95
92
128
95
49
204
139
124
74
101
126
179
156
134
54
145
100
133
153
119
113
175
86
78
140
215
115
81
108
117
54
125
131
79
91
116
110
159
83
108
70
82
91
125
76
111
119
138
141
144
103
160
128
106
85
79
54
83
138
54
125
128
118
129
130
115
118
125
103
102
59
126
122
107
140
81
102
93
144
103
54
90
120
95
121
166
177
106
103
108
81
113
97
108
133
49
68
108
71
148
103
87
139
102
106
67
81
177
115
95
93
91
115
106
93
101
94
103
98
120
76
133
91
144
54
154
102
161
91
112
115
141
108
54
91
168
80
116
87
120
125
127
81
123
151
84
74
90
108
92
108
88
111
59
167
158
148
100
98
54
86
150
134
128
110
116
113
135
81
95
117
97
170
155
149
81
132
81
125
143
143
117
149
121
101
106
129
108
83
199
148
95
95
160
105
93
170
95
116
135
90
88
77
95
135
85
129
142
98
127
83
158
103
105
125
125
96
59
135
190
138
113
93
94
106
90
74
151
112
113
103
123
119
125
107
151
145
143
138
143
98
143
95
90
83
105
92
140
133
125
102
100
103
59
76
178
49
109
137
191
141
156
97
105
129
128
156
54
126
112
194
81
93
146
106
137
141
157
78
156
178
67
98
140
87
137
120
91
127
126
116
102
93
103
69
116
186
97
115
118
127
127
81
140
127
141
101
82
132
154
49
124
144
69
113
93
105
132
91
102
85
126
83
105
138
148
125
113
96
133
145
112
123
131
176
78
98
91
102
133
94
89
122
68
95
49
155
92
134
150
200
131
131
110
136
105
96
158
131
125
119
77
158
101
121
145
149
59
109
74
110
150
127
95
90
76
109
100
161
96
123
155
144
125
193
123
135
108
163
68
95
147
104
110
120
115
163
80
120
144
136
78
139
82
169
78
97
114
163
95
143
112
120
91
124
129
126
81
90
87
84
124
95
105
91
54
113
163
96
67
145
77
91
68
135
137
113
78
85
131
102
54
97
139
102
77
127
99
113
108
128
100
167
128
87
54
74
107
106
81
119
107
90
124
104
114
111
127
122
151
108
98
158
102
74
54
102
107
124
172
103
59
54
129
110
115
129
74
104
102
87
85
108
102
180
128
106
76
157
81
92
59
128
105
200
84
61
54
127
102
194
131
105
91
103
158
90
109
125
92
125
108
107
142
153
107
130
78
114
131
128
49
136
157
158
76
84
96
144
110
76
105
133
101
144
120
154
108
76
116
89
103
108
124
104
144
122
108
94
165
106
85
113
146
45
144
103
110
143
116
67
78
93
84
99
93
98
133
100
127
54
133
103
148
130
117
116
109
99
119
100
94
170
113
80
135
138
99
54
136
74
76
139
90
106
124
95
103
140
105
161
132
149
147
90
116
100
136
120
122
100
123
100
113
101
78
122
141
98
49
131
123
177
80
124
153
129
108
78
85
102
91
95
95
128
121
125
49
113
116
93
84
167
129
133
106
151
80
97
124
146
165
109
144
148
94
117
126
179
161
112
111
102
148
103
102
134
112
133
185
120
105
151
103
142
169
93
157
108
143
131
81
121
186
110
166
153
130
126
119
120
103
82
54
151
122
133
153
77
125
140
135
96
131
97
113
131
115
90
126
132
148
135
73
95
136
95
98
97
87
84
120
177
107
98
107
146
83
133
92
158
102
168
140
67
110
145
96
59
76
82
79
118
77
54
145
128
123
91
90
142
144
97
103
133
127
62
120
123
120
161
95
95
120
71
120
95
129
77
69
163
101
108
93
132
93
114
88
124
119
77
74
103
160
87
81
153
49
112
136
134
110
94
145
176
118
143
138
98
127
157
108
117
103
104
103
124
144
92
124
126
82
95
102
97
108
139
95
177
102
167
54
149
113
76
110
177
102
108
165
80
92
100
103
142
119
142
142
122
146
131
103
113
129
83
102
78
113
114
108
125
144
111
139
102
142
153
113
139
166
54
122
74
120
104
91
135
105
98
168
90
103
108
149
129
100
133
102
135
74
103
200
133
133
81
93
132
76
172
128
100
127
154
170
130
83
108
100
105
108
83
120
95
140
106
89
135
172
78
82
103
177
87
113
97
125
161
194
136
138
135
97
129
81
81
109
95
117
135
108
85
158
115
170
103
155
129
154
109
109
191
165
107
81
93
106
72
113
186
105
97
94
87
180
157
138
140
98
151
81
87
116
176
80
133
128
85
91
106
87
49
124
171
103
126
124
104
69
158
125
67
100
97
74
87
90
102
86
105
129
103
165
132
163
102
90
118
85
153
85
83
161
134
97
93
113
112
147
83
54
155
93
119
76
129
122
141
110
76
115
104
106
116
120
90
108
108
138
107
86
103
128
120
165
140
101
109
81
54
128
98
148
102
154
128
76
95
54
135
83
90
135
74
120
155
151
82
151
87
98
111
185
124
128
59
91
132
106
81
126
95
113
137
108
104
83
113
149
105
138
87
117
123
90
54
172
73
89
83
95
102
82
127
151
96
98
113
108
159
113
137
90
92
82
80
127
120
107
96
95
90
102
67
54
155
143
74
112
98
96
82
150
81
54
102
108
59
83
99
126
157
138
123
133
111
126
124
163
176
90
54
115
122
152
59
83
103
151
99
111
154
127
175
128
84
111
98
123
117
123
167
102
119
132
83
129
161
74
89
144
161
76
67
93
117
190
95
111
100
131
122
97
136
167
126
97
107
113
117
138
145
82
102
98
49
119
103
107
89
87
110
169
131
131
116
116
148
107
150
69
87
139
148
132
132
78
110
90
131
119
73
54
191
102
158
123
145
144
124
68
145
115
90
102
74
102
160
126
108
161
165
114
214
104
90
93
110
145
93
74
108
101
150
85
118
76
111
76
97
108
186
147
143
157
113
137
144
132
103
120
98
101
98
143
103
165
134
92
69
177
166
82
96
98
77
108
124
108
137
159
101
97
88
61
167
145
90
82
133
80
148
95
200
101
67
123
100
172
114
95
108
78
110
131
100
153
122
133
123
152
54
105
128
90
143
97
120
91
140
137
154
102
86
81
138
74
97
112
109
133
158
149
125
90
148
54
153
133
54
122
95
68
54
103
120
103
70
74
120
105
145
98
79
114
73
118
117
99
133
76
143
138
82
108
158
149
80
69
94
130
155
108
177
125
133
143
102
159
131
144
117
99
103
126
59
102
126
123
153
115
151
125
200
98
87
117
100
180
130
68
117
123
158
106
144
191
91
67
90
127
165
163
102
177
126
49
107
143
103
125
115
168
112
131
81
129
105
186
94
49
145
92
95
113
199
131
85
118
125
117
140
152
97
154
124
130
88
108
106
77
145
96
82
140
154
106
74
117
154
74
74
54
83
107
104
133
74
96
113
157
83
87
156
137
160
54
149
90
103
99
103
131
137
90
143
95
133
162
113
144
54
76
112
138
87
119
110
102
61
95
74
181
134
105
124
133
97
87
119
122
59
112
157
98
152
83
151
142
125
138
133
74
121
79
54
54
113
125
118
119
114
95
149
61
122
106
90
113
93
67
104
61
139
151
113
117
104
77
129
97
258
148
122
124
156
125
80
137
155
87
164
95
161
147
130
109
105
83
102
112
123
173
139
87
84
103
54
120
103
135
119
59
149
186
98
115
118
90
90
103
174
80
166
49
98
91
124
110
125
97
171
94
113
101
88
82
145
102
140
89
148
131
81
160
115
77
146
78
87
86
61
59
76
165
173
116
135
96
96
54
91
125
97
88
149
96
95
135
128
159
126
103
186
120
145
124
92
100
168
144
153
123
110
54
98
160
49
113
105
97
54
125
107
136
84
90
151
103
54
79
157
97
90
91
132
153
107
106
88
135
92
106
142
140
177
93
82
169
72
112
77
106
161
98
102
160
102
145
151
144
69
124
111
79
125
140
134
139
74
95
49
140
108
78
59
146
81
121
143
113
82
137
81
115
151
139
127
118
122
89
54
108
148
113
100
94
133
158
113
108
159
116
108
74
125
80
127
169
95
83
98
126
125
108
105
93
108
111
101
104
127
77
148
110
136
141
77
140
102
97
107
93
167
131
80
113
98
133
103
122
127
135
137
151
110
131
131
115
127
113
128
95
165
181
120
112
88
54
54
150
102
125
103
142
100
92
198
103
124
133
54
144
75
120
113
104
103
107
95
84
108
104
158
136
76
59
67
96
147
108
110
103
198
90
120
158
109
49
148
144
116
119
140
126
103
158
127
121
130
87
69
136
104
153
86
82
103
121
114
112
129
130
74
61
111
105
145
95
81
115
94
77
133
87
123
145
134
148
166
144
100
82
200
125
93
137
145
118
146
147
144
95
105
101
131
123
111
54
81
90
124
59
118
161
177
54
198
118
104
95
108
105
151
108
90
140
85
127
133
91
102
127
168
96
180
98
112
144
88
123
114
139
123
132
102
78
95
135
123
102
133
87
161
98
135
106
80
161
117
95
104
143
122
54
123
109
129
98
119
77
172
151
77
133
144
130
140
163
108
112
123
112
54
140
157
113
140
68
90
59
123
140
144
90
111
90
87
145
133
102
90
143
98
89
93
103
105
85
91
118
82
98
143
149
114
109
98
114
54
131
95
120
119
89
82
123
131
92
102
140
108
54
91
120
113
99
98
95
131
118
146
116
112
137
75
126
125
140
96
148
100
160
111
123
87
101
110
67
87
93
105
90
115
168
115
123
95
149
163
49
83
95
142
77
180
123
142
118
119
131
149
155
90
145
163
81
95
156
120
77
173
79
81
115
118
102
95
121
114
151
95
140
134
95
54
90
82
103
142
130
98
90
146
95
104
169
110
81
95
85
165
141
179
77
105
154
104
96
119
95
123
165
155
112
200
119
145
81
152
125
78
161
158
133
148
151
118
145
61
183
113
87
98
131
103
131
76
102
148
113
106
129
87
162
87
134
100
106
117
93
158
173
142
98
80
107
59
127
128
125
112
114
105
127
118
92
139
95
129
77
97
128
95
150
126
110
81
132
77
126
142
145
180
119
112
80
80
116
85
145
133
150
69
82
94
113
125
103
110
114
107
140
155
109
119
73
97
133
49
177
81
93
77
103
125
127
142
110
120
67
131
91
110
90
111
116
137
164
122
82
94
49
98
96
69
116
101
99
102
76
168
137
124
124
131
85
134
144
127
128
121
97
170
54
129
83
113
82
113
112
104
83
74
68
113
49
136
103
87
107
134
123
120
139
125
100
162
79
102
118
115
102
95
84
95
100
87
84
93
165
109
94
107
121
103
110
102
128
128
134
86
128
124
147
100
139
102
103
133
142
110
103
108
137
161
219
81
131
104
118
54
82
161
86
137
107
135
119
176
147
102
115
149
49
109
59
126
189
149
128
83
144
102
102
54
90
114
128
156
107
135
87
123
102
82
165
66
135
159
102
57
158
115
122
115
112
127
82
54
113
117
149
99
90
153
79
154
129
158
109
161
132
115
116
132
129
129
54
61
139
154
121
108
103
101
102
95
159
133
108
113
147
105
96
140
106
77
125
122
109
88
97
102
119
84
89
98
139
96
82
125
158
139
146
116
135
121
95
134
74
145
105
93
67
108
54
155
125
122
98
123
113
125
105
138
87
140
113
144
93
121
114
108
112
99
66
133
54
101
107
113
143
91
54
113
76
198
107
92
96
81
83
113
128
128
125
112
147
78
88
129
81
146
54
108
117
94
146
100
119
125
82
165
95
127
137
103
100
156
133
149
127
186
155
135
140
76
81
122
149
102
105
108
54
136
98
111
107
128
92
145
103
125
87
120
168
95
86
151
71
80
125
121
95
144
89
128
181
54
147
101
150
204
82
82
126
102
100
87
86
115
102
155
150
134
77
115
95
103
101
143
77
113
98
141
117
125
133
151
156
114
117
125
83
102
49
87
104
103
94
134
163
67
106
165
106
109
59
84
169
164
85
95
108
114
90
87
113
136
133
74
138
176
161
95
137
90
136
146
68
146
114
109
110
144
145
93
102
142
129
141
107
136
122
156
145
148
93
59
102
153
54
166
144
159
138
100
76
126
95
49
110
83
123
88
80
206
107
90
49
131
128
144
94
147
104
112
78
54
101
113
95
106
77
125
168
126
144
144
93
172
139
142
49
127
98
128
96
111
102
105
105
96
166
116
123
90
143
104
134
80
109
130
108
139
103
130
98
118
105
111
81
120
126
123
128
106
119
95
122
107
155
96
160
143
65
76
105
121
163
135
157
101
100
144
98
113
139
106
103
145
155
122
146
108
99
127
95
115
54
101
181
135
77
119
135
86
86
144
96
148
142
102
109
95
81
54
88
54
152
98
130
108
116
103
133
115
77
118
88
96
81
144
165
111
160
103
86
113
116
138
102
103
106
113
141
110
104
85
121
137
98
115
77
139
83
147
120
102
100
79
138
85
109
183
122
108
59
102
102
132
158
131
137
82
125
159
108
77
97
139
102
125
168
168
117
131
113
116
54
105
97
78
114
103
113
101
133
97
157
148
169
174
172
74
81
67
143
101
99
167
108
86
145
107
132
97
76
54
102
54
132
140
102
122
147
102
102
81
106
78
115
118
109
113
61
146
136
108
125
85
96
120
73
102
133
111
151
96
129
103
96
125
139
145
98
145
105
90
113
105
82
128
75
113
54
49
120
117
122
132
54
98
110
108
87
97
117
131
118
143
54
148
82
74
130
123
155
108
139
115
96
70
94
130
155
59
152
122
82
115
125
131
169
125
95
93
81
49
124
116
141
129
67
81
113
102
98
81
154
129
183
90
147
126
97
128
119
141
152
145
54
157
146
109
78
94
74
74
95
168
88
106
123
113
113
90
98
120
170
121
148
127
125
133
87
95
128
144
145
171
143
132
54
92
93
98
90
122
54
54
125
148
125
100
96
86
108
102
106
138
103
115
77
141
127
142
128
95
99
76
147
116
54
81
107
61
54
145
76
93
159
152
148
82
113
102
106
93
78
133
104
85
81
117
102
108
129
131
98
112
101
95
140
95
124
104
95
117
124
125
123
67
172
137
96
163
61
138
147
102
69
116
125
122
177
102
105
172
95
112
81
145
159
97
92
102
102
113
151
100
78
108
133
115
107
235
113
100
78
92
140
106
147
114
157
129
113
140
144
99
143
106
131
54
98
151
100
94
108
113
88
98
97
141
80
81
114
100
101
105
96
92
143
117
54
108
97
103
177
170
93
104
93
200
98
140
131
101
95
112
124
108
114
109
128
144
102
142
118
112
103
59
129
125
72
168
120
109
137
117
133
113
129
148
104
161
54
98
82
101
95
105
134
125
84
73
142
102
126
171
128
147
141
54
68
74
155
54
165
85
146
103
140
106
94
187
108
54
113
124
81
82
176
102
96
113
172
161
120
82
59
127
125
102
147
132
105
124
151
161
143
98
108
115
144
143
135
103
177
98
117
123
157
54
128
132
93
104
85
101
119
110
116
124
151
90
113
81
61
87
93
54
154
148
126
114
141
177
107
121
95
167
145
179
123
145
54
95
126
139
91
102
125
113
112
153
130
93
131
126
113
102
151
97
127
112
95
115
148
108
74
97
111
157
125
102
106
81
181
71
74
49
112
144
145
70
108
118
144
206
142
119
127
99
137
128
125
81
87
54
147
107
54
85
102
54
104
103
125
128
74
133
105
98
91
91
76
83
103
102
165
140
59
87
94
129
165
103
95
81
81
129
102
101
98
90
87
121
127
153
123
180
158
173
127
134
113
98
54
127
59
114
145
108
131
102
62
95
159
147
81
182
165
113
76
132
106
105
105
113
137
105
113
171
143
166
148
119
102
110
113
81
161
144
134
178
54
120
104
67
102
76
154
67
81
177
102
79
94
59
90
120
141
142
104
54
101
186
95
113
196
112
166
146
129
157
98
132
80
115
165
133
107
78
125
133
108
125
112
90
93
127
59
95
98
163
130
120
186
77
82
175
128
91
107
143
107
102
103
105
98
81
69
90
118
76
147
142
141
103
127
125
145
117
102
93
54
109
129
113
59
54
133
105
103
76
175
179
97
122
130
127
177
61
97
148
126
132
86
133
132
153
141
105
81
103
107
59
135
121
102
95
54
80
108
156
115
105
135
108
69
160
130
114
110
86
89
101
133
125
139
128
135
134
174
80
108
113
106
109
95
130
159
88
116
108
86
108
109
101
93
118
95
131
162
98
62
138
137
125
79
101
162
135
146
134
143
54
54
77
94
150
80
139
143
74
99
143
95
107
81
113
107
177
122
100
122
91
95
145
100
76
95
106
104
146
100
83
67
180
136
108
98
116
121
106
108
113
126
133
146
122
107
124
81
119
135
159
120
108
67
102
163
154
81
99
118
54
103
125
168
104
85
93
97
100
90
135
83
119
117
97
90
95
146
101
184
125
109
119
49
77
116
108
110
102
148
115
118
77
54
91
83
119
100
144
106
101
59
99
134
78
107
129
95
146
181
151
131
79
54
122
102
116
108
118
125
82
139
161
94
155
137
82
108
141
155
59
134
95
108
91
154
113
160
119
67
93
106
99
120
185
133
110
93
125
123
81
83
131
103
124
103
93
96
127
91
92
131
129
125
153
198
93
54
151
105
114
105
59
54
116
85
49
113
108
125
135
131
105
136
113
138
98
106
92
123
112
98
102
155
81
93
124
127
137
84
54
98
74
93
102
129
54
153
138
98
136
136
102
89
112
113
90
118
97
138
121
99
95
120
125
122
98
116
139
54
96
108
74
161
49
130
108
156
98
131
103
123
98
161
95
110
102
122
116
103
144
96
98
108
94
117
106
82
118
119
68
152
114
142
61
79
139
59
126
118
92
177
100
148
96
149
54
142
54
101
128
95
155
135
125
85
77
131
172
131
95
108
81
85
105
54
113
104
97
104
146
100
115
90
105
100
96
83
105
99
101
116
125
98
102
139
100
125
135
49
145
126
135
119
100
179
112
93
65
105
135
87
54
116
172
132
161
102
143
121
157
133
125
83
140
191
155
108
162
140
102
123
146
177
82
119
78
117
142
78
80
120
97
54
108
90
149
98
147
150
116
111
129
102
164
83
120
77
188
143
115
121
148
146
151
42
78
148
117
103
121
102
93
144
128
137
114
95
169
168
90
121
125
148
131
203
119
98
108
59
108
177
126
160
161
142
67
108
130
102
132
114
134
112
122
54
87
94
76
96
117
105
103
82
92
127
95
186
118
157
109
49
91
116
106
102
149
152
67
88
117
108
150
182
113
127
147
148
110
105
130
143
122
72
123
98
200
108
87
102
157
119
124
97
153
69
129
133
94
119
161
109
103
119
116
111
148
104
98
128
138
59
73
87
81
82
83
134
140
118
87
98
83
105
129
144
146
107
122
49
110
104
95
135
120
104
113
107
85
71
153
70
194
161
105
126
156
88
138
158
107
149
151
140
132
128
103
125
131
152
49
133
120
54
107
110
104
148
105
61
89
97
160
102
98
74
148
71
144
63
90
122
113
87
83
90
102
49
76
95
103
102
144
105
134
137
102
116
91
140
104
98
130
67
95
80
140
86
77
151
141
140
98
104
124
111
129
61
102
122
95
100
99
145
155
102
125
110
95
95
124
95
125
113
65
103
103
67
114
119
93
169
134
131
144
54
87
115
83
115
118
87
103
111
168
106
125
137
83
138
95
109
106
116
49
124
101
117
101
116
111
125
101
100
151
123
130
139
123
117
174
103
203
95
93
68
100
110
140
49
140
133
76
142
87
125
140
135
87
65
135
98
59
135
111
74
89
108
144
49
135
96
96
90
121
95
98
49
81
91
174
134
67
128
150
123
138
108
116
95
115
108
105
76
124
111
125
83
80
85
148
115
105
149
128
115
186
149
99
146
135
116
135
130
148
110
81
109
106
92
137
134
146
163
149
108
127
156
82
78
134
87
103
102
98
102
143
152
132
124
161
103
102
120
135
96
154
98
108
102
92
54
69
134
116
90
126
143
172
133
96
112
113
135
77
106
87
146
103
106
170
54
162
167
145
96
133
105
108
125
139
83
109
102
65
126
104
128
111
135
134
108
118
95
99
54
139
100
98
97
153
49
153
142
149
109
76
129
102
107
128
98
166
110
82
83
127
126
148
68
91
123
105
127
158
136
74
68
108
117
95
102
102
135
152
102
106
102
91
106
87
93
105
95
72
118
81
157
89
90
164
102
103
108
54
67
149
73
117
135
104
90
96
120
59
144
83
54
101
108
115
128
126
103
110
103
165
102
92
121
90
153
87
179
119
125
59
141
144
74
144
99
144
76
61
152
129
128
139
67
112
128
180
106
111
166
98
119
90
134
119
100
119
98
138
83
107
113
108
95
108
86
80
168
133
113
112
116
193
76
98
137
145
135
161
142
206
120
119
103
81
81
158
114
100
153
143
127
49
106
54
102
147
108
107
96
113
105
107
142
101
142
110
144
113
142
132
49
93
126
127
103
113
125
114
69
130
82
104
145
132
77
144
101
105
125
135
54
156
118
91
113
177
90
110
147
130
153
155
129
96
142
102
86
156
82
80
113
155
138
121
59
177
117
59
135
153
152
93
98
101
147
143
125
98
116
146
150
59
139
130
102
182
144
154
144
134
82
110
105
125
172
135
124
160
158
95
108
125
115
118
87
98
161
162
54
90
146
67
122
115
104
78
109
135
104
101
123
125
89
103
140
107
134
152
146
118
54
128
144
96
61
141
99
131
129
130
65
143
84
137
78
101
105
122
54
108
158
87
156
113
147
141
96
113
123
76
98
74
105
91
78
106
180
152
164
102
115
54
76
114
111
65
177
78
172
105
147
108
105
106
107
103
54
145
135
110
146
78
107
112
200
59
103
148
106
164
147
143
132
79
144
116
112
95
133
125
98
102
175
125
107
78
113
88
54
95
149
168
154
167
107
131
103
85
108
59
107
113
122
124
82
136
131
135
175
101
102
115
135
98
100
98
103
67
108
122
108
61
102
98
163
49
113
124
96
126
115
100
98
77
59
122
131
126
178
147
82
98
93
177
139
128
74
134
110
102
113
120
108
78
142
102
148
115
158
119
79
110
95
91
140
81
67
125
97
118
54
95
148
147
142
121
49
101
140
103
136
85
143
76
122
108
54
108
103
69
102
168
87
61
144
109
120
103
54
170
91
172
93
98
54
128
93
83
102
102
176
54
132
170
157
82
166
93
69
125
124
129
149
59
144
119
81
115
156
83
163
105
90
146
90
149
113
154
134
54
92
49
54
69
134
102
154
95
54
91
118
149
90
115
132
102
74
143
130
186
86
156
133
128
123
109
118
98
116
145
102
113
165
108
173
105
118
95
170
95
108
101
91
77
88
135
68
98
103
98
153
96
124
83
84
160
123
104
108
136
87
139
98
117
120
135
95
108
76
89
85
120
122
111
69
113
98
146
54
104
79
113
59
135
113
107
102
98
97
91
91
113
103
108
131
119
59
54
131
143
128
172
112
109
137
59
116
78
156
107
91
155
93
84
98
59
125
98
78
49
165
81
89
119
138
98
128
156
102
91
126
101
54
138
107
148
123
113
132
54
140
105
117
141
126
87
83
156
127
108
129
130
178
150
113
108
116
190
110
145
102
68
68
140
103
116
93
106
98
126
93
145
93
125
111
102
123
99
160
115
83
133
125
102
59
134
145
93
99
86
59
100
122
194
127
140
157
77
136
123
68
119
106
120
104
102
171
158
135
113
98
156
98
165
124
129
49
122
134
93
142
102
102
132
77
141
108
90
130
120
104
90
98
96
101
81
108
125
108
91
144
95
131
166
128
147
108
108
85
98
123
160
151
200
141
109
54
68
123
100
140
122
128
106
83
113
128
98
78
96
180
125
127
109
122
139
117
54
119
115
108
162
122
97
67
121
163
54
145
85
77
122
189
136
98
172
90
54
98
109
93
92
108
61
120
54
131
102
54
120
151
59
131
77
145
113
110
101
125
90
59
106
108
144
106
166
99
94
133
114
98
120
103
125
90
99
155
102
131
83
93
79
103
133
115
125
90
93
129
98
156
102
128
173
117
123
151
186
135
54
112
54
91
68
126
87
67
123
81
100
116
131
133
122
113
59
110
143
87
90
115
139
90
91
117
112
98
98
96
129
154
89
102
114
107
106
112
74
98
102
93
118
74
154
102
128
112
108
124
54
128
108
54
155
115
143
100
145
57
117
122
130
104
108
125
120
76
128
79
108
150
103
103
93
102
102
120
135
142
150
133
140
104
160
154
159
140
138
145
146
78
124
92
130
124
107
67
139
129
90
125
110
127
108
140
157
132
116
161
113
153
112
122
69
123
89
127
163
122
54
148
78
123
115
130
143
65
185
158
139
113
125
141
104
68
95
169
78
96
124
71
93
95
111
151
133
107
124
103
91
77
94
130
49
87
104
141
153
134
77
104
93
127
141
190
54
180
49
98
94
136
103
104
54
137
82
87
110
69
137
108
134
122
128
83
107
143
135
144
131
94
110
124
140
144
109
95
102
93
80
126
95
102
142
77
131
103
164
91
102
96
74
147
144
135
74
153
126
116
135
130
100
157
108
176
119
140
122
88
105
98
100
117
148
82
100
93
145
99
127
153
103
136
108
119
153
173
186
146
92
95
110
152
167
115
134
113
115
95
95
69
135
90
87
110
158
80
82
153
95
147
140
120
133
76
96
92
135
125
113
81
95
76
133
78
91
126
85
141
168
177
54
81
136
126
139
89
93
112
101
119
137
89
59
105
165
107
140
87
98
110
119
110
149
128
110
125
81
93
163
160
126
109
93
90
54
119
102
127
67
77
103
122
109
119
90
133
83
133
95
131
144
148
111
97
140
135
137
97
112
160
70
112
79
123
134
105
168
116
103
136
95
98
96
97
131
149
70
123
106
116
122
108
109
115
147
102
128
134
61
162
118
54
96
93
148
140
100
133
125
100
54
98
140
140
156
127
102
85
113
100
147
125
108
110
77
140
162
97
164
111
161
67
158
112
85
54
149
190
54
154
155
108
102
87
103
137
98
95
132
101
119
131
74
122
102
126
182
156
90
115
93
150
147
143
135
161
83
102
133
85
125
112
121
113
108
138
100
98
109
95
104
87
95
97
108
98
108
80
185
139
82
148
77
201
113
83
151
129
144
141
95
194
125
128
81
95
98
125
135
76
106
115
81
106
98
157
129
107
93
132
135
125
81
54
73
160
112
177
95
49
78
178
96
137
91
114
84
182
107
119
180
108
87
106
151
135
112
106
135
102
110
113
119
87
74
96
144
95
96
126
135
125
110
127
142
91
116
74
129
167
96
99
136
77
96
54
116
117
94
137
79
127
144
59
161
106
140
112
165
113
125
148
118
128
97
122
74
156
82
105
119
194
199
105
82
87
142
135
144
94
102
98
95
115
110
101
90
92
105
113
119
116
72
155
93
131
103
54
61
92
103
92
90
129
108
149
74
178
102
93
94
100
143
151
118
95
141
115
93
57
113
135
125
140
119
158
133
134
54
70
103
78
105
54
147
104
94
144
150
113
135
178
180
156
193
54
133
114
121
154
96
139
128
103
113
163
121
114
130
160
115
132
123
94
54
103
81
125
135
119
102
155
177
121
188
109
121
118
106
148
143
90
129
135
116
120
131
54
162
134
108
160
96
49
93
114
54
110
115
68
98
99
121
100
73
161
141
145
127
125
157
72
113
93
157
148
127
102
109
154
153
112
142
132
86
129
91
135
118
108
130
140
148
82
137
137
107
120
98
107
84
93
112
105
177
140
129
97
111
120
103
144
102
76
151
109
131
124
107
185
98
54
83
104
164
119
104
151
130
106
157
112
126
81
81
125
116
121
109
93
101
80
54
97
133
80
105
147
101
107
125
139
113
109
126
118
197
168
104
74
103
113
93
54
54
108
113
158
73
93
106
105
165
127
68
98
112
84
81
140
77
103
81
97
49
105
140
161
142
81
143
105
129
88
119
102
124
165
59
83
158
67
76
86
137
109
83
144
110
167
132
159
121
80
94
87
129
95
129
132
139
98
93
95
102
109
108
104
69
156
90
131
81
128
106
157
123
81
118
125
70
149
180
118
116
80
139
179
69
127
140
123
105
157
88
123
144
90
80
165
144
108
74
146
119
180
96
142
105
169
95
169
128
135
118
155
82
131
108
119
141
105
90
54
139
147
183
109
76
114
109
138
111
84
135
102
234
98
165
156
198
140
93
95
112
144
125
160
135
94
49
54
82
193
128
131
131
105
107
94
123
112
127
224
121
113
125
129
167
116
170
135
140
125
154
59
147
82
92
163
117
95
109
143
137
158
93
95
183
141
103
72
143
131
128
148
155
94
146
54
81
102
102
108
131
116
105
128
153
102
162
102
106
96
101
73
105
140
81
112
118
81
143
145
142
132
143
94
112
108
140
142
81
74
110
77
87
131
102
95
96
101
110
113
144
114
129
135
89
91
83
54
97
98
160
102
91
87
103
88
128
132
115
148
81
102
141
109
76
179
118
141
54
167
135
133
143
109
158
77
116
70
117
124
122
161
84
139
130
151
121
108
110
61
125
128
98
134
54
108
73
94
83
128
134
59
103
116
92
77
127
98
140
125
136
54
83
91
89
135
145
49
117
61
142
91
81
122
148
180
134
98
112
158
110
131
142
149
104
135
137
134
93
168
132
156
103
133
158
135
102
110
154
124
95
105
73
82
95
87
87
123
166
116
105
98
150
108
110
113
111
54
158
113
123
179
95
172
98
105
161
116
110
142
103
163
140
84
123
133
134
93
122
102
65
137
82
93
127
95
95
143
81
116
118
105
92
143
82
96
108
87
88
59
125
82
116
127
151
109
145
144
122
155
111
103
68
118
119
154
144
130
135
202
103
120
121
69
134
122
88
123
131
132
111
96
81
111
122
116
102
96
168
98
132
141
90
84
67
91
108
81
97
125
78
120
127
49
54
91
104
142
125
163
108
148
74
49
157
118
102
101
87
83
95
59
103
81
110
81
79
101
87
173
131
102
78
138
95
168
115
119
102
111
144
90
99
54
87
89
67
145
100
59
123
107
116
105
114
102
125
92
143
125
87
145
161
90
100
102
78
115
59
49
85
144
87
103
122
114
102
105
121
72
179
100
124
83
101
146
152
59
133
95
134
198
126
96
97
95
107
96
135
154
132
129
82
105
92
113
110
101
154
90
81
133
123
92
148
88
54
122
54
143
113
77
102
54
115
118
119
97
85
81
177
151
152
49
196
133
127
76
121
159
104
105
90
54
92
121
108
136
120
135
67
108
161
131
116
158
78
103
78
103
133
115
83
106
90
105
81
118
88
78
95
155
138
131
150
67
108
118
67
142
135
105
91
141
145
115
100
95
110
113
81
85
136
106
49
158
119
129
98
85
164
112
123
113
100
106
129
138
155
82
138
128
143
81
129
127
90
161
122
128
75
145
167
147
116
59
68
98
169
83
106
49
81
130
100
152
102
123
105
67
140
102
135
153
121
151
123
160
98
113
109
108
114
142
158
106
118
135
109
127
74
76
93
115
69
143
110
145
116
122
104
104
110
54
117
135
102
111
99
111
125
101
152
85
90
108
115
127
77
126
49
98
124
135
96
107
140
123
148
112
49
135
81
180
67
83
113
103
74
143
101
113
171
105
133
108
111
106
142
125
110
78
85
118
103
85
123
158
98
95
149
157
103
117
127
114
152
102
108
91
109
77
128
111
121
119
88
54
115
90
155
102
97
59
176
138
141
177
76
158
129
103
108
135
95
103
152
107
135
102
125
99
135
128
139
165
103
81
91
141
74
103
100
116
115
118
96
93
82
113
93
146
95
135
117
89
97
163
148
102
92
133
82
104
83
104
146
113
130
123
129
164
149
49
130
131
113
93
123
123
102
126
96
81
128
112
87
82
108
133
96
101
127
94
102
130
156
153
120
81
149
100
82
137
98
107
147
135
182
81
82
111
125
49
110
127
129
89
93
129
77
113
59
113
81
143
158
100
116
125
54
129
103
54
121
118
107
148
108
98
76
125
78
135
93
112
90
176
103
114
157
169
95
118
77
136
106
103
140
161
112
91
123
87
144
81
120
131
165
84
61
94
127
158
54
106
161
129
149
76
141
125
144
107
98
115
145
91
133
127
108
96
90
105
102
108
129
123
80
54
139
113
96
121
136
78
127
82
93
139
82
135
95
115
124
98
92
122
117
104
133
145
126
154
166
119
68
108
83
108
108
110
82
102
139
135
131
93
82
144
103
165
124
54
62
101
90
156
135
103
129
98
98
83
161
104
93
131
145
108
123
128
54
135
139
79
138
97
102
147
135
134
49
93
175
54
137
133
45
162
108
87
125
110
123
54
103
79
69
119
98
130
108
107
83
157
78
156
74
154
92
90
129
92
117
76
140
59
131
120
124
108
74
112
101
73
108
102
133
146
124
87
112
76
158
77
49
126
101
108
100
61
125
122
129
140
54
59
140
54
148
181
93
169
130
76
118
110
165
82
144
123
155
137
93
99
145
138
113
87
145
89
148
49
80
88
135
107
145
125
83
112
54
81
123
112
107
144
77
96
121
105
123
200
78
111
104
95
124
131
98
148
163
123
103
115
109
110
188
133
131
98
98
159
133
134
94
98
85
42
76
92
143
119
133
90
83
74
93
133
127
99
115
90
59
90
124
118
120
117
138
98
95
95
93
98
80
128
133
95
138
118
148
120
165
128
136
111
136
108
86
90
69
54
61
151
142
67
128
133
162
93
92
140
132
91
77
105
95
139
194
183
131
114
93
135
105
113
54
125
155
103
113
108
95
145
119
125
108
113
133
107
95
91
105
129
142
87
110
144
102
113
102
122
135
102
109
59
103
138
105
93
103
143
140
107
113
94
146
102
102
100
105
98
110
102
136
59
54
141
98
154
88
151
141
164
113
96
127
160
107
120
94
123
54
165
135
138
140
159
131
165
133
99
165
106
102
119
133
122
131
165
85
82
165
90
98
158
95
54
154
98
75
111
100
119
82
127
89
129
128
93
105
126
130
179
123
81
102
170
81
181
81
84
132
130
139
74
160
151
95
121
91
143
76
102
97
108
77
84
147
108
113
148
125
103
138
117
69
105
119
93
96
100
89
82
155
120
92
117
49
102
186
89
142
151
143
114
118
73
153
127
91
74
133
119
81
111
145
54
49
117
110
95
127
121
145
177
76
139
90
138
117
149
106
98
97
77
103
67
98
144
122
124
129
98
149
127
95
101
98
128
139
113
113
81
126
177
108
95
97
108
85
135
123
146
152
118
137
94
103
74
59
49
143
148
105
151
113
125
135
112
156
68
112
94
110
112
125
121
81
102
141
89
54
54
120
87
130
107
127
143
101
108
111
106
93
144
95
127
131
177
121
91
68
104
117
115
127
134
114
128
78
119
126
184
113
78
146
54
106
133
95
79
95
129
112
180
102
120
126
49
54
90
155
157
96
151
135
163
95
147
74
98
131
149
98
74
54
129
74
141
123
159
109
131
108
119
121
128
85
91
98
93
92
155
79
144
95
131
93
127
72
105
167
158
109
112
102
76
88
84
125
139
130
102
78
106
116
158
140
116
107
81
107
128
113
112
90
122
54
123
103
129
59
111
108
165
133
90
81
154
135
118
128
92
148
95
124
101
132
108
131
95
130
143
144
131
141
107
140
157
77
138
102
153
54
128
98
95
112
82
76
107
166
148
93
161
151
147
49
143
141
129
95
116
108
76
145
135
93
104
124
133
83
145
124
137
76
85
87
158
57
127
161
153
147
82
122
108
120
96
110
148
125
120
81
101
93
111
90
111
98
98
106
169
108
108
128
143
102
126
133
113
143
132
164
95
81
129
68
149
127
100
150
135
141
94
127
77
140
110
117
148
125
83
98
83
54
98
200
105
103
161
103
146
93
98
98
108
105
127
111
126
93
113
135
102
116
145
128
54
216
81
131
111
76
108
108
86
112
54
95
121
160
105
146
122
101
74
103
125
105
147
109
131
102
87
74
76
61
122
90
148
143
96
54
122
120
94
100
148
127
95
54
131
82
109
122
132
139
81
113
135
99
101
120
122
149
109
122
151
161
116
122
133
158
145
161
128
133
145
92
158
89
67
89
158
179
115
168
165
87
151
68
90
85
78
127
141
111
106
180
95
101
102
76
140
106
184
97
216
113
124
100
79
95
128
167
54
97
109
94
90
90
163
129
133
87
126
90
158
59
150
123
119
95
68
101
102
133
108
94
115
130
90
78
100
102
145
102
59
148
157
108
49
143
197
112
83
116
181
143
114
110
113
138
131
135
133
142
128
96
123
161
95
120
177
133
148
76
138
165
110
54
102
158
115
87
102
103
158
158
133
128
124
162
100
120
59
168
145
134
93
61
73
108
121
131
77
82
104
98
113
103
175
108
102
106
139
67
118
143
147
128
182
173
115
103
177
120
101
107
128
116
104
49
106
127
95
77
93
140
54
190
134
139
171
144
74
108
108
113
102
131
141
115
115
144
74
135
118
54
133
108
135
104
115
98
108
177
118
156
127
216
116
157
77
181
107
180
122
112
106
130
131
90
88
126
156
138
99
118
123
140
95
140
138
142
167
146
78
102
78
177
159
145
90
74
98
131
111
120
107
81
81
137
125
163
81
49
73
145
147
102
154
87
157
80
105
92
148
91
73
113
83
146
95
98
103
130
123
120
156
169
102
112
82
158
153
59
194
95
138
96
105
128
132
122
124
126
114
77
120
120
120
108
122
93
54
157
144
185
106
159
99
49
108
106
77
133
143
144
114
131
144
59
95
146
105
102
96
107
113
94
93
124
141
123
156
156
83
95
105
90
105
127
143
131
164
104
97
129
128
145
120
54
78
100
104
61
112
144
108
99
104
144
82
108
113
108
130
45
120
83
169
119
107
125
120
74
95
106
103
125
143
59
85
110
123
108
106
93
100
85
108
113
82
130
82
114
102
114
82
69
59
154
130
166
61
107
100
102
98
61
105
49
165
157
128
137
100
90
161
79
86
144
158
118
144
122
145
106
172
102
100
158
107
97
107
115
98
137
105
125
82
146
120
105
93
129
128
124
186
108
166
114
76
74
108
113
133
98
81
177
102
142
105
153
146
166
98
83
76
133
76
107
59
78
123
112
126
108
110
132
96
130
98
95
54
91
86
102
110
108
49
200
98
150
82
110
98
129
143
122
113
76
129
89
143
93
56
98
162
125
123
74
152
82
163
68
97
122
177
77
117
110
113
141
127
128
186
93
115
95
122
102
164
146
113
141
76
143
108
102
143
129
114
146
146
105
129
150
108
105
113
159
89
145
118
129
72
99
142
140
158
82
125
107
88
127
90
149
96
108
86
109
104
167
49
137
95
160
105
160
114
121
156
108
133
59
125
123
61
171
138
133
120
96
143
120
129
129
155
132
102
153
90
80
113
196
99
108
69
85
117
124
102
108
61
95
94
61
114
147
120
105
106
143
133
154
109
133
139
67
129
73
141
93
136
95
146
108
100
107
108
117
139
68
91
115
125
108
123
113
126
135
54
132
120
148
150
108
110
54
102
125
100
147
159
128
148
140
77
136
170
84
158
90
182
123
144
161
106
119
116
100
132
143
106
127
59
59
135
74
102
127
103
149
85
49
59
129
153
145
135
155
129
100
179
87
147
49
103
144
95
67
106
108
74
108
96
93
81
120
145
90
113
143
59
131
152
68
54
145
54
120
49
108
61
112
134
130
100
101
124
135
175
103
146
179
98
77
93
103
91
102
121
87
143
171
119
126
153
120
195
125
54
81
106
85
108
127
135
134
98
127
163
66
95
108
105
101
68
142
97
102
128
116
117
113
172
95
115
105
98
109
118
49
161
109
145
97
149
107
128
102
118
120
108
81
95
103
128
183
182
155
120
108
161
97
119
107
144
143
151
133
94
95
116
131
76
185
147
101
111
95
87
144
145
49
110
145
135
105
87
106
107
133
98
54
89
100
118
145
148
92
78
103
122
102
182
155
163
143
158
125
159
109
152
105
118
105
149
110
61
103
102
158
106
129
110
106
108
135
113
166
113
77
140
104
76
103
98
123
124
115
120
133
82
92
120
146
175
186
82
77
77
127
103
99
115
158
87
106
102
124
155
109
124
143
59
153
133
164
106
108
181
145
175
153
122
123
145
54
122
54
81
116
139
129
151
143
77
87
98
59
133
98
123
177
108
67
101
74
101
146
135
139
137
49
96
76
102
110
54
54
102
116
116
167
129
87
150
100
90
87
124
98
103
128
161
108
157
135
113
98
109
90
143
103
148
94
73
96
122
103
161
81
49
97
133
54
113
125
133
54
145
116
108
117
108
149
100
102
120
54
152
169
136
96
96
112
81
87
96
92
149
151
59
140
54
135
95
81
133
130
143
113
101
61
116
125
146
122
77
127
108
132
98
69
98
82
101
129
143
112
115
129
127
49
84
82
102
101
142
114
99
107
99
85
124
134
96
74
54
87
146
111
108
141
99
95
54
149
131
123
81
151
141
69
95
125
102
98
102
77
102
113
112
107
123
76
115
132
199
89
105
102
106
168
74
108
118
115
95
129
137
87
142
141
113
123
170
101
103
108
146
91
59
100
142
91
130
133
172
123
126
139
125
108
98
121
83
127
139
217
107
120
139
116
106
125
132
122
115
132
162
149
157
77
103
142
90
146
163
105
96
107
125
110
135
77
157
157
125
92
87
145
140
125
127
143
152
138
148
146
122
90
81
101
152
98
182
114
108
218
141
125
180
111
141
80
139
102
92
96
90
54
99
125
123
96
127
54
140
101
121
80
105
99
106
157
146
158
106
77
119
153
91
110
121
68
103
147
107
109
135
113
94
141
145
129
124
147
145
128
77
105
67
100
126
158
99
90
99
93
125
108
148
112
121
104
160
135
89
92
111
135
96
108
104
121
133
115
107
103
95
84
129
127
97
118
145
148
54
103
98
99
103
113
73
114
54
54
54
92
76
90
98
186
143
134
96
155
133
191
67
77
147
81
178
85
113
82
133
141
135
112
99
110
96
95
107
93
83
131
130
109
156
98
113
108
79
90
96
78
104
181
100
115
74
103
82
102
138
90
118
113
123
151
74
73
157
108
85
105
110
125
96
157
123
144
152
49
81
119
155
96
99
100
54
103
135
148
132
127
103
145
125
112
141
138
145
178
87
113
101
163
79
162
118
99
77
130
101
141
124
123
87
121
147
168
136
139
187
92
106
156
74
130
129
125
126
127
130
144
135
95
133
129
107
89
112
113
140
142
108
115
150
112
134
91
54
127
82
112
145
141
135
112
125
163
107
95
135
158
141
119
88
84
117
131
170
122
106
89
142
119
126
90
128
180
77
127
125
111
102
126
144
146
141
110
129
120
122
109
104
69
168
95
108
146
112
95
122
147
106
82
85
49
92
145
129
111
113
54
96
116
59
124
114
49
101
116
95
103
74
86
147
78
59
128
95
83
157
98
129
81
140
105
106
95
133
145
105
146
76
54
59
104
167
127
76
95
74
139
205
85
96
93
124
111
95
134
94
124
116
113
160
108
137
110
95
177
111
107
128
98
93
158
138
140
148
103
103
108
93
102
102
108
89
122
143
154
125
152
118
112
102
54
77
128
133
85
128
81
125
133
139
127
114
89
110
82
131
175
98
112
135
156
111
138
54
93
123
76
128
119
90
98
143
70
147
119
112
179
118
137
147
171
101
96
121
158
175
119
54
118
78
76
95
110
119
103
145
166
119
103
143
113
215
118
121
92
96
119
138
119
131
95
143
145
128
148
98
103
119
98
98
129
120
123
124
98
90
142
128
168
95
158
88
106
165
114
54
182
108
82
109
144
69
106
127
113
126
131
107
127
74
96
116
154
77
133
97
108
161
113
80
131
77
49
108
76
118
143
189
102
148
103
102
109
133
68
137
111
135
119
112
124
121
102
133
54
121
86
170
109
95
123
76
128
136
76
134
54
141
121
133
95
104
144
127
189
128
108
126
129
98
104
78
138
168
133
102
108
129
54
148
139
145
99
157
96
138
76
118
117
140
108
148
118
133
97
82
152
159
135
145
145
120
110
127
87
49
103
82
135
115
107
156
76
117
155
150
49
153
113
125
118
104
100
136
157
92
122
119
130
103
107
72
54
130
134
143
111
90
182
125
152
110
174
73
177
135
85
90
102
96
80
109
112
54
129
147
120
97
112
142
96
106
122
107
163
81
78
140
112
54
224
133
141
135
140
82
170
80
199
157
156
126
85
117
120
199
108
84
105
108
114
92
134
122
93
150
90
148
108
125
151
99
59
128
125
129
116
147
111
135
114
92
81
98
115
144
117
164
105
158
114
161
107
118
127
95
147
54
137
104
78
143
87
108
143
127
128
118
190
157
116
54
108
102
121
90
97
77
102
128
87
119
122
138
159
81
103
106
81
131
59
93
77
76
54
148
125
154
108
102
107
128
125
95
108
86
49
116
88
69
125
83
157
84
85
97
112
123
101
133
107
113
108
167
125
140
113
113
101
108
142
129
136
167
114
113
108
145
121
150
110
95
105
177
76
139
108
98
108
99
177
74
132
92
108
102
156
145
112
76
143
80
116
100
130
95
82
86
107
143
147
127
154
155
119
95
118
123
116
107
104
82
122
108
59
84
81
135
110
161
142
113
54
120
117
112
122
100
140
113
74
98
158
110
49
139
89
101
96
122
108
127
115
202
150
87
96
124
62
81
102
140
126
113
95
108
97
67
127
104
108
146
123
90
110
131
105
108
98
116
119
54
96
59
103
61
95
102
122
158
122
115
133
129
108
180
115
122
124
129
119
125
102
99
75
148
108
108
124
172
126
182
161
108
86
118
105
109
97
100
97
59
115
138
95
78
111
146
153
141
128
118
139
146
108
89
105
78
76
120
74
155
158
80
77
108
135
108
81
150
107
136
114
87
149
69
148
54
106
95
113
117
106
164
113
110
103
131
54
80
83
61
124
93
120
95
102
148
91
87
95
89
129
102
120
95
81
94
126
117
54
102
54
125
99
140
107
91
108
103
161
73
128
112
102
153
169
133
54
143
90
96
123
184
54
102
140
95
155
166
83
120
54
109
111
54
87
120
123
131
93
112
141
88
125
83
119
59
98
120
145
136
100
76
54
113
146
153
112
105
142
90
87
54
97
139
154
108
108
119
127
172
142
139
93
91
143
112
144
133
81
118
94
133
101
105
83
80
96
124
186
95
141
82
132
126
120
102
98
139
158
81
149
102
107
95
141
89
91
108
103
190
103
144
99
94
121
76
98
125
110
168
93
49
128
100
74
104
113
137
125
54
144
152
114
54
108
87
127
148
145
149
180
122
93
127
95
88
132
91
144
87
90
142
108
76
96
98
90
141
148
146
122
199
97
100
158
81
144
128
74
110
94
101
148
186
102
145
89
111
159
85
69
87
132
113
124
143
141
98
59
98
119
121
119
138
152
119
116
122
134
97
165
74
127
121
100
102
114
101
83
124
78
148
106
125
49
113
125
145
77
121
100
91
146
130
137
131
59
133
151
77
165
68
140
104
85
49
124
143
123
117
116
88
113
76
87
90
156
143
125
82
95
126
124
108
83
108
91
156
108
67
107
112
110
76
146
161
54
159
135
90
81
120
98
105
98
133
49
108
118
99
95
107
109
96
86
76
105
99
102
111
95
125
148
77
115
101
91
135
104
108
128
139
118
102
95
97
121
102
126
102
54
72
108
144
113
142
109
158
153
87
134
125
129
103
136
68
159
116
84
92
70
107
133
113
106
86
162
102
97
135
108
107
173
95
158
103
124
125
89
113
131
128
118
130
54
49
105
109
107
76
161
148
107
98
137
95
115
150
128
106
133
90
113
49
129
172
119
143
150
130
158
130
49
131
141
190
73
105
106
145
100
113
83
108
136
115
83
88
115
127
121
108
77
124
74
127
84
128
161
158
107
120
105
90
94
119
108
93
85
54
117
147
73
81
180
123
94
98
126
158
117
156
132
119
94
110
117
88
148
54
91
123
54
124
127
143
123
133
81
54
105
169
59
92
108
54
102
157
106
149
102
129
106
93
116
114
54
127
92
49
148
122
128
102
125
123
102
92
102
49
82
68
133
126
92
166
126
142
83
78
124
91
123
93
147
115
132
120
77
67
133
61
169
120
102
54
129
132
98
87
116
126
103
76
125
108
134
149
165
123
117
139
117
98
117
108
76
108
157
54
107
159
141
113
140
74
54
113
186
90
139
107
136
54
158
143
127
116
102
137
106
115
72
108
152
122
74
108
119
105
130
54
174
106
131
121
137
162
100
113
111
103
132
194
200
87
117
156
177
161
88
109
146
130
61
105
54
69
113
146
135
117
118
138
145
125
94
144
131
131
111
133
104
115
102
147
125
149
114
96
125
191
69
144
141
131
103
107
117
112
152
120
84
127
68
108
153
98
122
175
123
87
113
89
133
121
102
123
119
100
107
103
181
130
84
108
140
113
123
95
61
115
95
111
102
137
151
125
170
124
79
101
100
135
144
142
131
122
95
149
87
112
79
144
106
54
121
199
102
49
113
117
104
129
49
177
190
125
125
119
112
84
133
182
79
134
108
110
91
177
127
131
118
114
94
115
140
78
118
97
180
177
93
128
169
182
69
81
142
141
103
89
147
107
103
104
156
153
112
127
163
128
103
101
143
81
156
102
139
124
100
103
80
97
120
127
98
91
93
121
49
77
129
159
95
130
104
93
79
107
142
102
90
98
145
185
177
128
158
173
128
158
119
69
103
78
98
98
102
133
107
169
54
123
104
129
88
107
151
93
125
157
108
151
177
113
65
102
166
126
141
78
91
103
117
105
91
103
85
85
129
119
84
61
126
165
140
124
125
118
84
90
156
95
95
96
87
104
148
99
138
101
85
99
106
102
85
125
146
59
87
95
113
101
140
93
106
74
143
85
118
147
132
139
140
101
119
96
169
114
105
143
134
135
83
69
98
104
107
97
67
92
155
132
93
139
108
97
90
69
106
121
106
95
127
144
143
85
134
160
69
95
77
110
120
110
82
128
78
59
103
102
148
139
140
108
149
130
109
141
90
102
151
102
95
143
111
111
107
100
151
125
159
147
92
141
105
138
103
163
91
95
139
158
143
79
98
98
106
95
83
129
103
83
121
128
110
158
87
83
129
182
106
80
87
144
147
127
96
112
82
78
95
131
98
148
139
135
117
98
99
145
96
115
106
142
133
131
131
173
194
153
133
97
122
132
146
82
158
177
54
117
146
54
188
130
157
110
59
87
120
83
130
115
95
67
162
158
97
127
112
97
144
140
158
133
136
148
105
102
112
103
82
95
103
76
128
102
102
95
127
143
112
121
139
109
110
133
131
97
116
90
104
114
98
103
95
116
108
124
125
74
59
71
133
118
131
185
131
198
133
144
111
101
129
148
54
126
110
155
96
146
81
170
54
89
122
141
103
167
130
102
73
76
98
148
125
54
131
67
98
79
94
98
65
95
105
76
133
137
82
141
140
117
89
124
113
87
123
90
116
87
102
113
98
87
108
127
103
113
155
155
108
123
164
172
138
54
108
84
95
90
107
122
102
131
136
155
148
97
148
110
92
113
113
97
132
99
93
61
82
125
74
99
102
99
122
128
79
134
98
113
144
109
54
102
139
78
126
95
151
100
155
124
95
74
77
142
110
106
133
129
81
76
87
145
146
155
90
147
113
154
98
84
120
98
88
98
54
135
107
162
153
126
108
147
73
120
108
158
102
95
93
146
96
138
98
125
117
82
126
94
129
103
110
88
78
143
125
177
140
151
144
95
119
86
158
88
87
128
103
128
136
57
93
96
120
139
76
133
162
104
95
139
84
116
96
114
112
92
125
109
124
118
135
102
123
78
113
127
164
118
77
102
137
67
125
108
76
96
101
96
82
153
90
129
139
131
101
103
112
82
194
150
126
77
141
102
118
117
145
147
100
141
78
104
121
119
121
158
119
105
95
125
106
87
107
193
142
140
141
81
49
108
102
74
100
91
139
103
102
126
105
74
134
49
121
114
126
150
90
154
103
139
124
76
153
171
108
69
102
119
167
85
89
112
134
148
129
102
180
83
112
145
127
114
124
176
152
144
93
144
108
94
106
96
81
111
125
93
156
118
149
103
96
90
121
117
138
100
98
103
83
93
74
136
93
144
121
54
76
149
129
130
49
73
91
108
100
54
112
148
104
106
118
96
136
113
102
147
129
140
102
135
112
81
101
194
140
54
127
78
125
74
94
107
144
158
174
128
98
132
161
110
91
131
132
101
143
77
134
138
59
111
124
125
145
143
140
138
103
128
163
131
80
143
108
122
177
103
98
137
82
148
131
140
145
102
102
153
168
91
115
54
107
108
149
99
79
129
98
116
67
97
108
139
144
130
103
74
87
121
140
59
125
110
149
124
105
76
120
117
108
161
120
99
98
90
108
158
185
61
76
123
118
127
147
95
119
148
129
81
76
134
122
102
59
85
117
120
109
98
131
139
142
85
143
152
146
131
54
110
118
121
110
181
77
156
158
83
161
104
100
131
120
113
105
137
92
81
109
147
95
95
160
80
95
103
163
156
83
105
100
143
145
68
129
59
139
108
74
139
90
131
59
87
131
128
100
159
135
93
95
131
141
141
196
144
122
112
96
153
108
111
87
140
98
130
115
116
146
148
89
95
165
107
137
130
125
94
113
131
140
153
134
181
115
127
49
148
96
97
167
101
120
135
108
54
103
105
113
125
77
54
99
102
54
133
119
144
177
158
102
136
129
135
76
59
144
131
109
78
81
89
105
90
88
108
91
108
104
104
49
100
131
98
112
88
122
100
100
146
105
49
77
87
132
42
79
149
117
74
111
129
118
82
175
148
131
88
85
120
123
97
90
127
152
118
139
82
82
114
54
102
143
95
129
98
139
49
115
74
126
92
149
95
104
121
95
158
143
161
115
150
153
132
100
141
153
156
125
168
113
113
165
59
86
145
67
109
113
99
143
98
90
114
147
54
143
93
150
154
105
129
80
144
74
96
179
168
164
95
116
106
85
151
105
199
177
153
108
135
125
81
45
123
110
59
125
111
134
102
102
90
88
164
165
83
137
106
74
98
148
143
149
59
107
154
134
102
76
69
116
137
186
90
120
104
69
105
136
106
90
112
172
158
148
106
88
143
99
83
149
124
157
124
150
132
95
59
105
81
107
145
91
95
97
148
110
128
112
96
111
135
54
67
61
134
89
137
93
149
142
140
120
102
72
115
102
105
97
54
115
80
90
99
103
138
158
81
133
135
138
83
100
139
113
108
54
154
125
125
95
111
152
124
97
145
87
111
117
183
81
96
107
49
91
91
96
85
76
74
74
99
109
113
103
117
126
105
107
115
108
101
165
110
165
142
111
124
229
120
122
102
102
96
103
104
103
78
132
90
74
135
83
117
54
77
108
112
129
95
115
127
110
76
107
165
93
102
101
106
81
57
125
146
154
117
100
85
92
153
87
80
137
105
170
133
132
120
163
161
134
146
78
98
106
93
87
108
49
168
87
149
149
102
126
90
149
82
135
106
95
94
95
108
148
128
119
177
103
96
124
108
156
90
93
160
125
108
117
151
93
78
134
81
103
161
121
164
91
102
146
76
95
126
150
117
135
97
126
102
93
96
82
161
120
70
113
67
102
74
159
112
122
98
90
111
153
119
128
131
87
141
118
103
93
101
142
113
126
174
120
119
105
128
54
129
74
166
135
98
77
49
145
111
172
145
49
115
163
147
98
104
143
94
81
100
133
120
164
116
125
147
130
93
125
87
81
158
164
74
97
97
81
95
90
90
113
122
126
127
145
90
107
127
115
128
103
90
97
127
83
77
143
172
139
125
108
145
95
115
59
76
111
54
164
101
105
181
54
54
59
49
152
105
107
104
100
125
111
92
106
146
131
110
133
109
112
109
143
106
101
95
142
85
125
163
111
129
98
83
161
87
54
96
76
133
112
83
135
140
138
102
150
96
103
101
170
150
128
123
157
116
120
98
113
170
77
125
54
131
122
123
149
125
156
146
99
114
131
127
98
82
135
98
148
95
74
129
118
100
128
113
146
69
104
133
131
156
102
160
103
117
134
125
90
102
91
102
139
103
134
108
131
136
117
96
107
102
100
59
156
113
98
87
105
95
133
83
120
145
96
148
78
128
119
108
67
92
131
127
191
147
135
99
129
173
103
142
139
148
119
145
134
95
68
158
170
173
129
146
149
98
89
85
80
104
143
135
102
137
106
103
102
121
110
123
82
160
102
90
116
168
112
108
109
99
102
67
148
153
76
102
115
167
133
95
147
140
118
145
97
125
87
106
92
54
141
116
131
130
110
76
100
138
88
85
54
95
49
108
95
81
129
54
108
108
139
90
95
113
101
111
212
109
108
129
94
108
101
99
108
107
150
131
91
117
54
102
146
120
83
120
157
165
101
159
100
97
155
189
76
126
103
115
145
146
79
93
135
87
177
82
129
59
108
119
177
49
104
151
113
90
74
148
146
106
131
93
120
128
107
67
156
74
67
117
74
139
163
91
67
172
103
132
146
141
139
95
118
49
82
106
92
98
103
151
102
83
97
148
96
90
103
123
122
148
108
117
49
107
115
163
106
54
195
145
129
130
96
156
135
95
87
107
148
59
94
93
74
79
99
134
127
125
130
77
140
83
128
150
122
59
125
135
61
125
149
143
80
54
61
148
98
108
113
167
130
54
120
97
145
54
86
114
95
129
69
105
160
94
98
133
181
96
129
107
124
153
129
91
77
74
184
95
54
105
97
95
127
49
144
49
114
141
117
71
103
61
95
106
147
98
96
135
107
106
155
113
158
94
103
81
120
124
99
100
97
151
167
158
133
82
105
98
54
127
95
103
127
54
131
67
177
77
145
118
90
102
166
104
133
141
141
108
164
125
142
76
59
101
103
161
126
107
155
106
133
101
61
109
108
126
102
61
95
132
42
151
80
105
141
147
98
136
147
141
110
119
142
83
152
112
101
125
102
123
134
124
49
100
69
104
57
42
147
129
83
119
149
95
121
112
145
119
67
125
136
102
117
115
106
54
92
87
114
74
105
124
135
142
103
121
135
95
88
125
142
128
138
108
122
140
132
122
127
101
90
93
104
133
128
132
98
98
97
177
167
148
143
83
96
100
134
170
85
158
65
143
91
74
133
137
140
98
91
117
180
116
143
91
103
54
125
175
72
136
133
98
107
76
122
100
120
160
182
102
125
68
143
144
94
65
85
116
148
102
120
112
143
143
78
95
131
122
101
111
99
132
128
87
95
118
113
81
75
163
133
113
122
108
125
152
85
145
120
116
125
130
131
154
132
118
81
90
168
54
141
119
81
148
140
110
151
98
102
135
81
144
114
109
49
127
131
102
125
158
119
133
83
118
94
133
76
123
107
101
190
138
135
131
158
142
54
92
132
140
158
83
141
131
144
95
68
125
110
54
92
104
74
90
85
173
90
143
123
105
165
163
111
77
98
77
121
126
143
146
95
144
108
109
143
135
89
59
105
56
89
83
100
121
127
152
115
146
112
140
103
76
105
54
85
95
131
113
82
96
129
122
112
133
102
98
130
148
162
100
95
90
98
104
54
54
98
105
97
141
113
110
147
86
103
111
82
105
131
143
112
131
120
119
93
98
121
109
68
102
122
119
154
131
54
102
108
133
61
103
49
119
167
130
145
118
112
116
133
131
111
105
137
75
102
148
145
109
59
146
102
82
105
90
110
149
82
135
111
147
61
156
122
137
116
125
96
101
111
81
145
148
98
152
131
136
130
121
117
54
89
109
105
77
102
145
142
148
68
114
107
146
85
124
106
103
108
77
112
137
149
135
115
54
67
54
104
87
99
134
73
140
95
163
151
83
106
92
90
102
139
113
108
123
112
98
103
54
106
82
90
131
144
168
91
103
110
88
127
105
54
108
148
102
106
98
102
54
105
131
135
105
131
112
102
157
98
122
175
101
67
105
106
108
104
148
85
172
123
128
130
127
87
119
117
128
104
140
106
145
83
174
116
125
49
127
113
112
79
81
119
139
49
118
107
145
74
135
105
155
92
100
98
120
90
126
119
82
95
108
133
49
94
123
98
99
108
96
151
138
87
120
84
102
108
120
95
97
85
126
108
87
113
123
105
142
127
113
103
140
137
118
95
112
113
114
132
129
95
54
120
82
157
89
102
102
116
145
134
115
76
81
102
69
102
101
140
101
153
78
95
102
113
105
157
114
99
61
107
68
129
59
161
103
113
118
142
67
95
140
125
95
78
108
101
147
131
80
126
144
117
81
165
169
102
90
134
116
158
191
107
117
85
170
103
103
110
150
109
54
145
90
143
161
118
108
82
100
95
87
99
103
95
91
111
136
113
106
123
93
54
145
84
139
95
167
93
134
135
118
158
122
104
140
112
145
195
118
89
139
54
133
172
129
165
102
68
163
98
82
117
131
108
85
108
125
95
115
138
80
135
143
93
137
68
114
129
125
103
81
100
111
128
102
98
59
137
135
145
138
85
156
125
122
127
133
95
91
100
112
93
141
89
87
154
59
108
95
118
110
54
145
61
128
122
67
140
95
73
111
111
171
95
94
97
138
142
137
113
118
128
92
118
145
114
113
150
124
168
77
141
98
102
49
111
110
54
94
88
129
145
135
83
130
95
81
82
59
105
159
182
97
129
89
158
54
77
107
109
127
102
54
117
107
75
125
139
147
139
97
140
133
102
84
148
68
98
140
128
99
124
89
125
76
127
84
119
108
121
77
54
138
105
129
132
95
105
123
89
131
120
87
151
101
88
102
76
126
126
87
120
82
68
95
59
123
142
214
104
127
118
82
199
164
132
102
73
117
133
168
131
154
134
90
143
85
79
135
91
82
107
173
95
108
97
93
105
144
103
144
119
100
144
87
93
107
127
109
95
124
120
146
108
62
94
148
82
73
108
95
144
119
74
78
139
182
102
80
95
126
138
143
85
102
116
171
99
110
108
102
142
158
135
140
90
144
143
179
94
139
49
144
165
155
90
98
68
85
85
102
110
140
141
143
123
93
73
123
108
109
112
81
168
91
138
112
160
129
95
186
80
128
106
141
94
124
169
98
131
169
139
120
118
122
106
115
101
108
103
118
80
114
146
137
148
127
96
127
104
100
108
110
132
180
95
81
90
194
124
162
122
145
124
98
107
190
80
173
117
132
105
140
83
119
115
153
144
59
185
104
54
148
91
93
94
162
104
145
145
125
108
79
97
122
136
120
84
129
83
125
120
61
132
178
103
100
120
96
90
180
113
166
113
103
124
111
89
117
139
113
147
114
113
101
128
111
76
101
54
130
107
81
145
67
93
68
135
95
100
119
76
165
107
153
107
98
169
145
108
102
105
95
141
54
120
167
102
136
112
98
145
146
113
102
107
93
91
113
100
120
76
92
67
131
95
86
133
54
117
161
113
68
127
108
98
84
162
116
109
115
81
123
112
125
106
108
116
90
89
67
101
81
54
154
164
158
130
131
124
94
125
98
175
133
126
134
109
107
145
49
123
180
104
107
147
128
140
134
115
179
135
148
83
125
105
133
95
145
125
166
144
122
117
106
112
100
138
94
144
99
110
194
121
167
138
147
151
177
116
81
145
102
127
116
101
131
114
162
161
119
142
112
129
132
108
108
76
82
110
87
91
193
143
77
98
114
133
119
120
104
135
113
105
124
147
87
97
117
102
158
106
134
123
98
131
90
115
121
89
121
45
148
94
133
108
54
127
101
78
97
148
126
103
132
101
137
113
159
122
156
177
101
110
112
130
76
80
142
123
93
117
54
141
136
113
91
102
96
133
147
123
91
146
135
91
133
158
162
180
105
131
120
133
110
86
118
108
135
103
82
148
168
101
143
145
124
147
107
180
84
111
155
125
147
54
127
101
156
83
61
153
129
132
45
95
141
54
159
142
123
117
136
125
97
104
98
123
122
85
138
139
177
85
119
114
108
112
74
124
95
124
126
99
113
125
143
153
108
115
190
229
122
78
108
123
121
102
82
100
88
128
148
108
150
95
117
135
160
98
106
102
200
96
106
49
136
103
84
115
128
128
122
128
133
99
135
115
96
108
157
115
144
88
149
54
117
102
108
177
99
87
139
93
142
87
144
94
123
109
104
150
122
105
96
135
183
93
98
134
128
140
118
118
81
125
161
154
119
157
110
108
106
142
97
81
118
167
108
59
113
95
113
129
78
138
54
129
140
105
105
114
167
102
160
110
135
125
163
87
195
89
137
69
171
113
127
177
112
136
105
106
108
118
157
67
99
113
148
135
105
106
77
102
117
146
98
146
129
85
87
108
83
113
86
108
143
77
148
114
100
103
144
98
108
132
54
121
133
102
155
167
146
120
149
95
54
132
139
54
148
67
101
133
49
133
167
98
109
84
79
101
160
119
95
118
91
135
149
160
74
86
108
95
54
102
104
136
164
102
108
97
103
143
147
98
176
147
127
117
113
147
107
123
154
81
160
129
95
59
113
125
130
115
74
131
143
61
81
103
94
108
67
113
117
136
118
156
146
157
174
125
142
115
76
131
98
129
140
110
144
106
126
82
122
95
129
137
91
143
124
120
198
108
144
73
95
159
146
124
132
130
155
164
136
85
110
120
74
74
102
111
136
108
149
146
98
93
54
86
74
94
90
155
158
119
143
82
134
128
103
76
116
92
84
82
106
102
102
128
67
148
123
119
149
68
160
98
153
133
89
90
155
113
106
145
115
118
83
117
98
102
95
93
54
147
45
93
113
140
144
54
156
93
107
140
49
57
113
77
160
137
127
111
101
69
83
137
144
116
105
59
68
90
78
124
111
137
74
87
195
168
153
106
87
146
154
129
145
65
54
59
123
95
98
98
133
95
112
103
139
146
95
107
67
110
132
149
143
116
150
100
106
107
54
80
114
98
89
134
68
136
90
102
86
105
150
160
83
122
153
128
54
191
124
105
125
133
177
96
112
112
128
140
112
131
119
74
101
102
127
150
116
133
89
133
180
148
125
134
77
85
154
96
117
87
76
134
102
116
112
123
140
128
101
94
118
146
127
101
97
118
67
119
101
121
118
122
69
139
134
131
131
95
109
95
98
153
206
83
112
128
132
140
116
87
114
179
54
114
99
127
103
126
149
146
111
149
54
90
135
140
108
127
123
122
107
186
108
102
112
113
54
83
113
81
117
88
138
67
113
102
105
123
80
74
116
54
135
102
49
123
96
118
108
130
110
130
103
166
90
102
99
122
148
122
111
116
89
102
74
148
95
152
95
97
119
95
116
111
98
49
184
96
157
160
116
87
115
108
102
168
59
154
138
82
115
125
113
128
165
101
83
127
108
123
87
113
113
74
172
135
135
111
94
115
131
145
107
54
130
155
148
49
150
139
132
87
166
54
136
54
49
98
98
102
108
181
96
110
101
102
83
150
67
87
104
122
96
84
96
49
81
128
89
101
115
101
179
177
81
147
81
100
98
125
102
173
98
128
98
147
150
227
83
128
114
123
59
103
122
129
103
113
116
139
97
102
131
133
155
90
81
123
54
54
92
98
186
95
126
138
75
74
95
113
54
120
158
182
103
129
129
113
115
95
128
89
93
127
98
148
141
133
167
61
112
107
85
148
138
107
85
110
89
135
118
109
106
95
141
181
95
103
111
112
122
96
102
98
59
95
119
155
95
89
125
100
145
144
95
118
91
101
118
87
137
105
165
102
161
82
119
108
160
186
54
122
132
146
98
147
137
77
150
125
133
98
125
104
160
164
132
106
120
112
94
103
124
111
162
130
176
49
132
159
161
119
42
97
104
137
93
123
119
92
128
122
113
108
145
96
102
93
134
104
131
144
59
110
139
131
120
109
89
67
54
69
133
83
120
54
79
136
132
125
102
80
103
154
145
123
119
100
78
108
101
68
103
96
127
112
98
116
155
120
100
107
161
95
131
103
95
124
132
83
122
95
73
121
104
87
113
120
115
110
125
81
54
127
129
106
76
140
177
162
104
118
68
119
114
143
81
105
113
165
111
95
67
139
115
95
157
122
54
142
59
92
139
105
106
115
54
76
105
108
110
152
127
83
90
98
120
95
90
119
61
116
90
122
99
80
202
107
117
151
96
82
129
106
92
177
61
93
113
62
113
67
121
103
109
92
118
83
112
83
128
107
54
105
104
113
123
142
140
119
144
54
135
99
117
83
120
157
143
103
104
87
61
78
134
121
125
102
91
91
151
101
168
95
150
102
108
103
103
115
108
135
108
92
136
125
101
54
147
115
148
69
84
59
156
92
133
170
98
113
127
109
149
119
177
105
106
150
108
85
82
102
97
89
122
73
148
125
76
102
122
96
113
77
122
72
80
149
65
61
140
54
119
130
95
74
49
93
103
115
128
86
105
59
116
109
77
172
108
139
87
78
54
147
113
112
83
54
99
69
97
87
137
173
96
137
95
143
101
98
94
139
95
87
154
174
108
59
74
83
102
115
125
76
177
158
130
151
59
139
101
81
128
67
49
97
117
118
93
143
124
140
113
100
85
108
103
110
104
147
158
109
141
125
145
65
110
135
143
127
126
85
102
76
49
69
77
94
133
129
119
102
98
129
113
67
103
148
103
106
113
138
89
105
148
140
105
117
135
109
168
69
96
131
99
158
97
111
114
79
82
109
190
131
95
139
112
133
82
125
95
54
108
144
95
81
143
82
113
128
118
102
80
138
183
104
111
97
90
125
105
109
91
145
184
168
152
99
137
112
173
125
94
107
95
95
92
114
118
59
54
107
49
54
54
108
135
144
158
103
105
69
163
122
127
115
131
101
130
54
97
95
98
54
114
113
116
59
77
93
95
121
105
132
117
117
128
110
138
87
120
154
182
74
76
119
95
148
92
146
170
98
114
83
131
61
131
169
115
106
103
102
103
114
95
113
119
102
148
93
103
161
186
117
148
135
115
159
113
177
95
141
106
117
113
121
112
76
95
128
79
136
90
92
140
140
120
76
149
131
113
95
54
54
129
83
74
138
127
125
94
61
98
190
98
129
97
101
118
127
117
113
125
102
148
108
145
128
108
158
99
117
131
82
143
196
128
105
106
140
96
138
49
101
73
106
128
102
122
93
171
126
105
168
123
113
91
108
54
105
129
114
127
131
107
54
90
106
115
98
99
73
87
151
94
130
115
106
102
106
102
135
90
54
98
153
132
118
120
116
103
96
128
104
127
137
109
158
95
113
74
117
154
105
107
156
101
98
135
108
139
151
105
120
136
158
128
81
96
54
124
74
110
81
102
87
81
103
107
127
108
106
118
180
105
106
105
116
54
103
77
102
134
114
153
74
145
81
131
113
107
99
93
142
183
68
122
126
135
132
103
146
165
106
85
113
73
93
129
136
54
130
102
106
110
124
151
104
124
103
132
114
122
116
127
108
125
133
123
81
102
95
110
108
165
90
98
110
124
130
88
139
142
49
98
133
124
117
142
98
102
181
95
109
108
118
158
125
102
150
107
97
114
101
108
96
147
141
150
119
107
102
115
108
131
76
131
132
159
69
77
103
123
118
143
73
143
96
106
144
147
87
142
180
134
99
120
87
79
158
119
93
49
170
146
81
105
98
74
149
108
143
150
148
137
78
153
59
148
124
102
120
95
95
59
49
131
193
103
148
99
125
106
119
159
93
81
135
196
123
133
144
49
87
146
108
209
109
148
122
105
101
117
120
49
77
149
135
125
111
93
137
49
127
95
129
171
109
101
99
124
62
85
136
54
110
146
77
128
123
105
105
85
82
148
100
94
108
96
87
59
156
125
80
79
107
163
74
103
90
98
140
85
108
118
76
124
160
133
98
108
104
137
135
216
120
143
138
128
68
113
154
122
103
135
144
84
77
87
106
95
59
148
101
129
151
112
78
140
100
107
99
105
74
102
152
108
161
92
54
67
113
177
128
160
70
160
108
135
78
113
139
54
61
103
97
138
93
106
101
108
124
68
102
108
85
133
128
158
81
125
161
107
89
106
74
169
80
69
150
108
113
116
115
144
71
125
102
83
110
157
171
96
106
123
129
112
144
108
113
86
188
165
54
140
127
148
143
102
165
100
141
135
200
73
143
116
106
114
147
170
145
133
160
125
85
59
78
118
140
128
143
77
88
101
175
95
115
83
54
49
143
87
130
85
135
157
125
138
134
163
87
170
111
129
102
119
133
108
87
100
105
122
83
81
108
123
119
131
131
135
118
130
95
122
127
126
133
94
84
91
127
91
98
123
157
141
110
114
106
97
129
109
160
102
99
74
108
99
81
151
106
142
122
124
69
95
148
165
98
96
156
156
95
117
158
144
142
79
173
91
133
97
123
110
128
93
130
78
110
148
120
129
78
90
104
77
192
158
95
102
114
141
68
125
97
149
103
114
118
103
128
101
90
76
116
108
148
154
107
78
104
131
83
151
103
133
143
153
105
125
74
49
163
113
82
102
103
125
93
141
124
114
100
95
110
177
72
102
85
102
129
77
108
133
130
131
153
108
108
67
102
129
162
150
98
108
121
165
87
98
123
122
92
158
135
93
93
97
96
119
146
140
98
115
98
170
93
59
93
108
97
91
95
49
103
138
148
128
97
98
113
147
96
96
127
90
95
108
126
108
92
103
81
95
102
133
101
124
61
54
98
134
45
135
49
186
137
200
106
119
138
133
85
143
54
134
59
158
123
127
117
151
126
83
126
54
93
129
98
134
108
113
99
103
54
133
105
136
117
138
132
134
98
79
177
151
91
91
108
144
80
137
83
101
97
102
82
140
135
148
54
81
157
134
59
125
158
99
76
133
95
114
148
84
131
144
125
98
149
109
130
158
103
115
145
125
88
134
59
149
150
98
154
71
107
180
116
143
108
89
102
124
108
158
150
97
112
147
68
98
93
124
107
163
142
102
129
93
54
177
120
93
146
102
87
142
106
108
110
54
98
102
83
91
77
131
115
183
112
108
126
144
161
218
108
74
105
126
130
101
95
67
133
101
133
161
145
81
113
158
135
175
89
68
148
54
145
133
93
108
177
143
90
59
78
67
91
162
129
108
125
86
74
127
131
93
102
114
151
123
124
131
200
96
93
89
93
171
103
54
126
91
54
54
135
129
116
109
89
122
95
97
162
113
121
103
119
133
142
122
76
173
192
104
156
108
86
122
82
104
124
142
108
108
98
124
108
93
103
92
59
96
68
148
122
99
124
102
155
129
145
105
82
78
103
171
103
143
108
128
91
104
128
96
172
108
159
124
108
137
135
102
143
131
159
112
122
49
165
146
123
95
131
119
75
114
103
117
153
103
87
74
125
153
98
148
81
113
108
139
103
109
133
137
94
129
140
179
150
54
110
139
153
162
93
120
118
189
87
117
218
132
177
140
162
120
61
125
132
98
82
140
151
102
67
54
163
125
156
69
135
143
138
125
102
145
96
106
86
93
102
98
97
103
172
111
165
83
128
94
102
97
153
105
122
115
98
133
140
115
116
120
113
145
132
168
125
77
102
61
105
129
113
105
154
62
127
79
172
134
110
76
102
115
68
54
90
120
103
107
128
94
87
131
115
85
103
114
111
74
74
100
107
117
102
154
49
163
76
87
119
114
91
86
98
105
98
67
104
81
87
117
109
118
147
86
127
89
131
102
125
59
54
123
171
125
80
205
85
99
176
110
171
102
67
85
130
67
99
81
151
101
140
93
152
127
59
80
49
127
106
85
88
143
80
158
94
177
171
102
115
131
129
95
87
148
85
175
133
117
110
78
54
77
116
102
77
152
117
126
93
98
140
127
119
129
108
94
82
76
79
103
100
122
133
116
81
95
82
77
111
98
95
139
185
54
133
144
144
115
154
154
80
87
143
119
81
95
100
139
138
97
123
125
179
78
59
102
77
78
103
93
95
90
82
107
98
128
133
104
96
148
101
139
54
131
150
98
127
99
108
182
125
112
103
116
87
128
138
113
108
108
100
145
103
77
81
162
113
93
114
102
167
95
134
82
49
161
125
171
102
106
83
123
115
140
96
142
106
172
130
139
77
129
126
158
124
111
153
186
155
106
125
54
121
74
168
146
102
146
132
108
103
95
92
105
113
118
95
133
98
97
76
85
146
161
110
122
148
78
126
74
69
54
135
96
151
136
92
141
122
126
159
122
108
83
118
158
120
141
89
92
118
134
159
145
101
94
151
108
138
114
88
170
149
117
133
97
128
78
73
99
93
93
59
95
133
110
124
103
150
105
82
114
124
133
127
126
113
106
108
74
82
67
115
102
108
95
179
81
141
106
98
170
131
124
101
95
107
143
135
122
90
59
104
149
82
98
54
162
145
76
116
136
145
108
155
129
138
167
113
100
133
149
108
108
95
78
77
102
87
115
146
79
135
102
98
153
115
54
82
143
111
150
129
115
98
106
108
103
128
161
103
79
135
151
161
120
80
81
199
79
140
108
99
199
146
95
139
94
103
169
125
142
81
121
74
117
94
135
76
106
87
78
82
93
77
98
166
111
101
102
87
83
122
94
125
102
136
98
135
77
49
104
133
93
88
63
137
135
144
111
116
134
132
114
103
145
93
79
119
108
103
117
89
104
158
125
126
101
92
74
141
119
87
114
145
102
174
95
143
121
87
106
92
83
113
111
124
134
132
128
97
98
95
59
95
113
140
117
115
125
106
92
101
127
156
149
138
81
90
54
118
142
95
105
98
80
131
131
59
102
90
141
107
114
134
131
116
118
124
91
103
49
100
119
117
107
136
93
90
123
102
128
108
112
105
143
54
108
117
54
104
103
82
112
124
100
82
108
142
118
111
59
93
113
94
105
127
95
101
120
70
146
108
90
54
110
123
135
97
180
131
80
110
136
130
103
149
135
134
99
144
101
146
77
95
115
121
167
135
171
129
59
146
130
165
116
195
114
105
117
103
137
81
135
219
99
67
133
126
90
141
168
153
94
90
78
122
105
106
113
97
87
123
112
98
102
110
125
208
116
118
125
108
106
89
87
107
144
122
108
154
82
145
106
115
119
103
197
148
54
74
110
63
98
156
105
115
147
111
131
82
123
128
96
142
85
113
146
125
132
102
136
115
149
90
97
111
101
138
94
173
131
104
78
157
110
99
86
87
49
95
126
103
100
123
99
115
93
49
103
76
143
106
102
148
54
113
95
85
85
103
136
147
92
105
104
121
165
77
124
144
93
74
99
96
177
129
97
148
81
104
135
131
125
158
140
132
111
89
147
95
102
87
148
135
110
109
77
97
94
103
131
147
125
102
98
127
110
90
109
119
102
124
102
87
91
59
184
147
105
156
106
134
85
67
103
141
129
159
98
106
154
166
78
90
76
111
137
67
122
113
129
77
97
109
135
155
110
135
113
110
98
135
102
139
137
87
137
115
107
102
81
87
131
124
91
87
177
54
87
95
106
54
151
158
95
110
102
117
103
54
112
158
131
113
54
118
98
54
95
97
100
149
161
101
54
145
143
89
90
133
94
120
148
108
49
106
113
117
161
95
135
89
45
106
95
59
146
111
120
130
135
143
91
122
127
112
95
74
89
98
123
106
120
105
115
146
100
112
165
134
131
78
129
92
125
49
140
118
54
152
162
139
54
92
145
97
113
156
81
119
99
123
106
133
112
142
90
90
108
103
82
177
132
143
116
124
162
88
133
108
112
167
87
115
146
116
142
74
143
134
148
162
109
169
99
149
95
186
109
128
69
133
152
94
87
81
164
95
129
138
144
147
114
113
135
120
135
93
107
93
92
95
139
160
143
84
92
69
103
85
124
108
104
83
54
148
210
123
169
145
103
112
83
117
152
105
86
82
148
112
87
153
156
110
122
107
159
108
107
54
177
147
143
108
139
102
83
85
80
103
138
144
133
147
120
93
81
120
126
137
108
128
90
99
102
87
127
89
113
172
142
112
116
54
83
174
138
90
87
86
106
128
49
98
143
102
102
116
145
127
104
111
102
83
89
98
76
98
95
105
112
113
95
121
148
159
103
137
128
144
131
135
123
113
127
130
122
94
177
141
117
68
104
115
132
158
156
89
147
122
125
54
105
90
87
142
45
108
97
82
110
120
136
139
158
93
82
49
154
54
137
107
110
110
108
81
92
105
106
54
77
132
109
89
134
96
103
80
129
111
101
108
81
117
119
103
135
98
125
132
110
108
164
80
96
157
95
134
93
79
77
54
144
93
111
146
77
74
163
103
143
113
110
116
95
145
83
97
133
105
103
186
105
151
108
122
95
90
114
49
108
149
144
130
88
143
112
122
117
98
133
128
131
96
95
124
163
141
81
124
87
177
110
54
128
140
85
113
103
90
87
78
169
148
95
98
127
145
199
94
93
103
108
122
137
120
122
49
131
144
105
59
102
134
110
90
139
179
126
120
105
103
107
123
93
104
87
121
86
112
133
160
139
107
127
108
136
145
108
88
136
148
103
152
126
87
98
80
139
144
137
94
120
132
161
67
108
178
102
141
179
151
93
129
81
59
149
123
97
95
105
146
154
172
135
49
104
91
81
141
145
125
91
163
49
131
130
114
89
149
96
130
96
103
80
142
97
145
83
82
129
123
54
90
143
90
103
81
106
54
102
147
117
95
54
119
61
106
108
127
49
150
121
104
139
54
125
102
150
125
96
91
95
106
117
77
119
100
144
54
49
83
65
59
106
150
54
158
93
49
113
112
104
125
123
150
132
158
112
82
72
133
125
116
95
151
135
93
77
100
134
67
114
105
117
128
113
95
95
112
134
110
144
119
106
100
76
88
159
68
91
149
135
130
175
54
143
104
113
95
76
82
98
95
69
54
83
125
146
129
88
136
126
172
113
115
109
115
81
119
59
145
158
94
128
119
130
54
73
173
112
95
118
110
82
121
74
94
105
168
81
125
102
103
90
139
93
124
128
146
102
114
107
81
143
49
130
148
165
125
115
115
115
107
98
107
114
80
95
87
117
69
139
82
145
147
78
54
103
135
113
121
128
74
110
135
122
179
129
120
129
125
54
143
131
93
153
73
95
63
148
108
106
108
121
98
115
69
82
122
87
103
150
116
49
132
140
88
54
146
67
135
95
107
98
134
59
126
113
102
172
100
98
95
137
132
106
162
168
131
81
79
147
144
125
133
105
54
113
67
114
97
91
103
98
115
83
141
54
138
112
128
128
102
82
108
49
81
148
104
120
148
103
146
158
98
129
115
102
96
110
136
111
104
98
102
131
54
149
154
158
177
113
128
149
91
137
102
137
134
174
83
74
78
124
128
162
105
115
121
89
89
142
78
98
82
158
147
86
111
112
91
82
151
81
82
85
93
86
118
125
93
128
111
167
114
185
117
122
67
103
140
107
131
120
81
98
108
125
57
130
87
102
164
125
77
89
133
120
108
117
131
190
122
76
128
108
123
112
54
95
102
127
80
130
105
93
116
167
110
137
139
134
90
143
98
147
153
120
134
165
156
84
96
74
120
106
103
84
87
151
106
123
107
98
77
108
81
106
108
126
94
219
89
96
177
83
82
94
85
161
144
81
114
143
115
105
156
127
105
125
97
130
195
98
95
103
54
54
119
107
125
134
135
105
104
103
102
145
140
75
138
200
144
102
54
106
110
117
135
155
128
144
129
118
108
148
81
155
100
97
158
99
73
54
91
97
104
77
128
80
109
128
85
135
136
90
148
59
128
106
103
84
74
76
138
143
131
77
74
102
102
54
119
133
129
133
141
165
137
74
138
107
103
133
132
139
151
77
112
144
133
148
177
66
97
102
119
102
122
105
93
165
135
54
144
125
98
133
87
133
167
102
122
145
115
155
95
133
125
105
102
102
126
121
90
122
111
130
149
156
108
138
97
95
126
98
101
129
95
91
131
148
98
108
104
68
120
152
95
88
87
92
119
76
111
97
145
128
139
139
113
149
98
142
100
125
173
123
67
115
122
131
90
141
125
88
100
95
120
122
96
168
156
80
156
97
78
104
123
98
151
116
96
123
140
86
83
175
118
157
98
131
145
83
107
186
102
124
128
121
74
104
111
98
105
77
115
126
133
137
143
87
96
95
103
93
95
67
59
122
129
54
108
54
128
101
160
140
145
135
90
91
42
97
106
172
125
134
140
104
147
108
153
100
167
105
127
98
90
118
81
49
145
74
143
87
145
141
115
142
156
150
105
54
179
124
115
108
59
128
127
108
76
194
76
150
59
105
117
134
149
92
112
125
95
103
93
102
125
141
139
76
152
127
49
156
164
78
112
97
139
148
54
120
140
81
65
92
113
102
131
108
144
49
110
119
135
148
54
98
113
132
108
99
70
163
190
121
136
131
136
98
113
131
140
155
86
113
103
87
87
127
87
120
108
84
93
111
143
188
82
123
102
128
111
96
178
119
130
77
108
115
108
72
115
77
113
95
87
150
144
102
128
131
119
95
98
129
130
77
147
120
124
140
127
83
135
108
99
54
83
67
57
117
153
133
135
108
98
116
102
67
109
129
114
125
104
115
85
143
81
76
149
68
74
117
128
128
74
81
168
94
82
107
76
85
110
133
90
83
104
92
118
138
97
148
117
134
128
97
98
79
98
106
159
87
107
110
115
104
106
109
96
144
96
110
85
139
76
113
163
113
108
173
117
133
98
106
98
147
137
139
106
132
118
202
74
116
103
129
77
125
125
74
135
98
116
96
106
102
117
152
143
105
133
104
54
67
107
134
126
111
139
95
101
82
54
129
54
68
126
120
95
126
54
85
67
120
120
140
131
143
133
133
95
59
95
194
107
105
94
78
146
142
117
59
122
143
68
68
164
106
103
54
90
81
164
99
127
164
125
161
122
186
115
95
146
90
90
144
125
159
88
166
92
118
116
95
108
132
116
95
106
135
93
135
108
141
106
89
147
127
74
133
49
111
146
108
160
139
118
142
105
68
108
85
103
101
135
59
119
117
143
93
108
76
92
108
155
99
110
158
116
200
131
54
143
81
144
133
88
94
85
114
98
116
68
148
102
125
154
105
135
156
134
79
87
112
118
81
91
115
115
106
67
133
110
54
85
121
135
81
110
180
109
160
86
54
139
54
118
185
108
156
127
143
120
98
85
109
54
145
98
143
172
108
117
146
141
109
145
113
114
112
135
78
122
131
54
129
113
85
99
91
143
146
174
67
92
150
136
127
109
77
108
86
107
119
150
123
76
87
167
117
108
95
59
120
85
129
148
54
131
133
100
119
135
98
111
120
142
125
96
110
61
133
120
116
133
105
82
81
133
79
132
116
133
118
125
124
96
133
135
139
117
54
108
108
100
135
97
142
119
91
114
78
83
100
128
120
188
98
117
128
138
95
131
103
74
127
133
83
104
127
106
49
117
94
98
124
173
105
91
102
102
145
88
200
102
121
107
108
136
114
157
54
85
81
87
106
105
68
124
158
92
81
92
77
119
103
120
156
124
87
81
95
98
173
144
150
137
220
118
102
104
125
49
112
81
143
129
81
107
108
114
116
101
134
76
99
81
151
49
98
116
104
83
95
157
102
172
90
54
74
165
90
83
107
149
119
76
136
84
102
67
108
154
129
122
134
45
92
81
114
90
128
141
113
89
87
128
107
140
128
77
194
98
118
164
164
146
165
97
113
113
127
120
103
102
98
143
139
116
93
156
128
108
54
129
122
54
96
129
134
99
106
95
137
105
127
113
180
160
104
97
117
144
116
133
128
49
98
145
103
148
104
112
120
111
90
91
137
95
120
104
113
108
120
59
200
108
177
119
171
105
67
101
81
79
138
137
160
127
124
126
113
138
90
122
125
157
105
140
118
124
151
139
122
135
154
76
54
122
119
146
68
139
108
125
149
100
96
81
135
101
76
130
146
105
88
143
199
109
144
135
127
112
157
141
150
110
121
105
77
101
153
65
82
118
172
157
88
165
110
109
102
132
96
102
135
108
105
132
135
139
87
85
76
54
177
69
94
79
95
197
91
117
159
81
73
69
118
122
117
94
121
185
84
153
106
122
103
140
107
103
103
180
94
128
162
87
123
106
114
54
141
144
93
124
149
130
95
68
149
112
143
96
132
113
156
145
93
98
149
81
99
132
157
113
106
54
93
128
144
162
123
113
117
128
85
98
90
103
105
77
133
104
125
130
85
82
159
154
120
54
93
95
125
59
119
99
54
87
102
167
49
73
94
84
96
92
54
127
122
105
123
189
130
78
121
133
126
116
131
93
128
115
97
109
108
119
96
137
54
72
59
123
169
173
129
54
95
216
68
138
98
125
162
83
124
92
109
65
132
54
93
110
105
142
148
78
102
145
130
79
135
133
116
59
108
131
144
199
159
102
129
102
118
162
144
106
99
102
170
110
121
143
81
98
97
205
94
94
162
123
81
95
117
87
131
101
139
98
130
95
95
87
95
142
92
95
83
113
118
111
103
155
54
54
177
129
106
158
149
76
127
89
139
175
122
103
125
96
125
103
80
128
151
120
95
102
106
109
184
138
54
98
149
134
81
191
115
86
54
100
116
80
135
109
83
49
76
107
100
99
117
88
108
84
130
125
135
109
145
104
108
54
105
139
95
83
116
108
92
106
89
67
85
126
140
122
54
49
123
136
76
152
98
77
126
140
108
82
113
54
103
79
125
125
105
103
77
141
114
94
87
107
122
76
131
131
109
154
125
171
105
73
106
105
141
103
104
98
127
99
109
131
76
135
81
119
111
92
114
124
109
117
74
106
120
104
120
122
95
130
105
124
110
119
148
105
87
129
163
116
112
157
109
54
113
113
83
120
108
95
70
109
102
129
103
191
49
115
90
133
115
128
149
129
105
130
103
149
49
121
120
113
78
135
153
54
121
134
110
122
128
137
112
104
124
107
155
127
135
124
106
125
108
152
178
146
144
122
109
96
116
54
115
59
142
116
133
132
131
90
113
94
132
125
151
108
116
101
143
97
142
67
194
103
185
103
65
121
121
154
84
116
123
120
110
54
101
164
77
87
104
162
105
104
113
133
101
119
124
95
103
126
167
148
84
107
186
116
135
134
95
173
146
102
147
102
142
96
85
135
119
116
74
118
65
119
161
115
107
81
113
113
148
105
74
98
110
95
112
169
112
83
79
125
160
107
109
98
125
159
121
125
105
113
129
152
133
96
99
112
95
127
124
102
108
81
75
115
145
142
104
69
148
119
74
138
88
125
133
87
54
119
156
131
115
103
82
103
165
98
54
114
93
128
133
108
110
151
99
96
136
95
131
128
125
124
135
144
126
158
110
91
128
145
80
130
110
115
129
111
81
80
138
143
107
74
54
86
156
82
122
141
95
115
128
102
100
59
127
151
133
54
144
129
138
93
171
123
138
77
89
122
106
108
95
135
67
128
154
137
124
112
128
106
105
103
106
100
131
54
122
82
135
94
105
143
133
144
178
127
131
102
143
120
54
99
102
116
112
185
49
161
133
113
91
105
148
86
59
149
155
127
137
101
95
77
54
75
103
49
54
67
103
136
70
111
83
111
102
103
116
94
110
97
149
90
101
101
138
144
134
159
128
54
157
106
158
98
128
151
103
102
149
127
91
158
152
163
112
77
94
156
81
188
125
96
108
140
113
69
83
140
177
176
93
135
95
77
99
114
80
118
177
77
110
95
97
126
139
101
124
54
97
149
82
109
117
155
89
78
165
90
91
95
102
96
121
113
122
105
98
105
124
106
142
79
151
145
49
160
123
91
67
149
96
104
108
54
106
135
98
85
77
129
78
137
140
127
107
90
49
74
123
108
49
137
81
61
127
104
107
135
112
93
131
155
145
81
67
138
94
87
67
90
146
95
98
105
92
116
113
111
105
95
136
97
109
133
81
160
125
129
54
113
145
125
103
123
144
113
130
81
98
95
96
165
151
98
135
116
141
125
113
90
106
173
78
83
69
135
109
95
123
115
108
224
76
148
96
79
124
113
133
164
108
112
170
65
103
107
124
158
131
70
131
128
125
96
115
54
102
154
96
146
110
102
77
81
102
54
90
125
151
115
49
146
114
125
135
154
131
95
167
103
103
135
54
74
188
77
146
113
118
80
114
120
101
143
108
143
103
82
101
101
123
136
128
67
127
102
98
81
87
81
148
74
113
122
147
96
139
98
111
103
145
168
158
54
133
99
148
156
74
134
83
59
124
129
54
134
135
134
120
111
102
98
84
83
99
87
104
108
125
124
116
90
98
76
114
123
131
167
59
130
159
123
113
104
108
61
54
128
116
111
81
177
167
122
124
83
90
81
87
102
133
102
131
145
130
147
81
86
76
119
186
78
95
158
134
128
145
108
94
73
123
152
107
95
97
105
143
110
115
113
120
127
118
118
76
120
100
93
105
98
97
117
67
95
102
112
108
110
150
178
98
69
120
125
125
69
61
146
84
90
108
131
132
104
97
135
148
124
94
121
134
153
142
76
147
122
111
163
83
132
104
96
128
147
105
145
67
105
103
110
106
103
113
140
132
106
81
125
137
102
134
59
135
104
83
54
128
104
158
135
108
75
186
69
98
105
94
107
165
104
158
132
157
105
141
77
135
144
61
54
127
90
126
98
107
108
119
67
130
152
134
145
97
95
98
92
161
98
93
144
112
151
158
102
100
98
145
148
102
125
110
101
105
97
122
148
137
106
104
54
145
97
102
150
149
49
82
107
115
102
111
149
107
132
54
111
154
103
76
95
98
121
95
150
90
112
135
133
59
123
133
82
156
160
97
54
129
129
105
108
102
90
172
135
102
106
121
115
128
157
146
177
105
177
96
131
77
133
84
76
77
94
120
96
102
109
135
129
112
98
120
107
100
153
106
108
140
146
93
138
163
143
172
90
111
80
100
84
95
134
151
91
86
94
133
130
142
95
132
104
68
85
114
118
127
126
126
131
82
87
191
148
133
157
96
95
133
112
109
118
145
102
125
85
167
191
125
111
160
129
103
125
80
102
117
54
129
76
90
155
122
83
77
128
157
158
153
125
76
108
54
95
164
116
104
130
110
167
125
115
95
186
104
125
131
129
129
98
147
68
108
114
158
146
109
105
149
77
128
131
93
125
86
125
191
88
158
88
69
89
54
102
142
95
143
98
119
54
97
153
158
111
88
100
95
115
155
199
87
120
99
150
137
149
54
117
144
102
89
72
141
191
127
101
116
69
168
92
93
98
81
133
69
144
97
148
102
130
108
112
125
97
140
177
180
108
68
140
145
131
81
87
129
104
134
106
102
102
109
133
109
128
108
120
164
97
68
140
119
142
152
152
177
188
105
131
140
135
135
106
93
102
167
171
102
177
85
151
98
114
112
92
65
122
100
78
83
132
132
135
102
77
74
105
129
87
144
83
138
49
127
183
185
80
95
73
76
121
77
129
91
98
172
123
133
116
173
103
129
105
95
120
116
96
138
107
95
138
106
135
122
141
98
106
126
120
143
93
123
103
91
125
106
159
122
106
96
79
118
130
135
139
148
74
79
103
120
142
148
107
134
116
75
49
100
149
93
104
112
102
110
101
144
128
97
87
90
65
140
74
59
77
61
124
186
106
167
87
108
167
98
108
107
147
112
87
165
97
54
102
116
149
74
145
95
133
111
141
87
81
100
102
137
107
115
171
54
129
148
102
112
98
148
81
156
106
54
87
112
157
109
102
99
92
148
90
108
115
80
171
82
105
142
86
107
120
54
108
158
113
113
146
125
74
61
139
150
168
103
133
146
59
94
147
164
147
140
139
83
108
119
154
135
144
77
139
103
159
89
98
146
124
169
61
192
83
95
142
76
107
77
157
121
156
143
104
92
166
128
158
128
108
94
112
95
127
117
120
108
128
102
147
134
87
93
170
112
190
105
95
102
162
103
59
81
54
59
185
169
116
168
132
148
161
100
113
108
164
132
78
67
156
140
92
108
132
61
148
77
79
133
80
74
74
94
113
145
129
108
152
126
67
117
83
140
105
95
96
120
103
103
160
113
144
95
129
153
93
157
82
147
131
148
179
127
119
101
104
128
102
81
96
54
102
61
95
144
90
98
106
99
76
126
103
111
152
146
77
54
115
144
98
69
131
121
120
81
98
127
95
129
69
93
87
113
108
82
176
127
140
108
89
101
100
91
124
90
108
126
103
148
113
87
99
147
107
148
125
145
144
145
133
98
112
98
96
112
122
133
139
49
87
132
104
166
85
91
108
138
119
95
61
87
182
127
100
138
144
59
115
167
68
123
97
103
95
76
89
93
134
107
113
137
77
100
158
54
82
147
54
54
146
110
110
114
114
127
120
80
94
103
125
95
145
99
127
117
200
82
117
103
102
105
89
104
160
81
93
81
95
128
162
186
121
151
106
81
74
153
118
96
113
141
89
128
126
127
119
74
102
141
103
125
82
110
98
102
141
139
118
128
127
217
105
139
154
123
125
93
89
83
114
79
96
93
143
138
115
122
117
108
165
137
153
146
130
142
91
69
131
132
127
154
138
129
153
134
139
127
154
125
128
111
124
108
54
98
118
129
175
74
105
148
139
141
85
78
96
122
140
121
98
83
166
122
82
96
103
82
96
118
127
130
113
148
85
108
98
109
112
95
81
108
85
132
131
119
112
97
115
135
83
112
137
95
151
77
97
179
85
85
76
134
115
104
171
135
143
105
120
132
115
95
93
137
128
134
102
156
76
165
131
134
177
82
124
99
100
146
120
108
87
90
97
77
87
136
168
94
116
82
76
108
82
94
133
78
82
122
143
95
133
101
140
76
143
97
154
128
150
120
93
96
138
175
96
90
69
113
159
111
108
87
104
76
59
175
107
133
99
124
93
116
105
184
103
117
107
98
95
122
109
157
182
125
93
92
125
140
147
133
111
109
102
133
145
144
107
104
137
135
110
146
105
140
95
98
131
143
123
108
125
129
154
102
144
131
83
90
83
78
145
139
84
123
118
78
131
108
83
105
141
107
121
133
82
54
95
61
85
74
154
141
145
108
148
104
125
115
103
135
161
108
110
98
177
95
67
135
138
175
95
98
80
123
102
118
102
115
120
121
112
77
54
116
127
67
128
84
81
128
127
88
161
191
107
156
112
161
67
139
145
148
123
94
126
135
95
108
131
89
150
141
101
123
140
114
126
113
100
82
95
113
119
91
95
147
138
128
157
133
83
130
123
112
95
142
122
153
101
93
80
100
97
125
100
98
148
127
140
97
101
89
127
98
140
105
96
103
148
112
95
61
149
106
104
108
74
125
120
125
78
128
191
127
127
104
138
125
106
94
113
77
101
112
88
158
112
133
135
148
83
103
160
125
154
119
100
140
137
102
150
96
113
125
109
157
128
131
103
162
82
78
107
140
76
95
111
69
150
148
82
132
106
59
68
132
99
49
157
113
127
80
108
150
145
118
143
134
59
169
109
114
135
133
145
107
114
95
59
93
146
149
104
118
125
54
175
83
73
86
181
102
108
67
158
108
76
157
108
101
151
110
114
144
142
114
128
87
80
91
125
148
127
138
102
113
112
141
98
83
145
144
133
81
101
104
114
88
158
150
102
120
147
177
140
82
141
137
119
199
172
117
102
54
106
90
87
54
145
107
76
90
165
98
127
97
114
108
81
98
128
114
118
102
54
173
95
136
100
68
74
143
158
123
131
93
148
106
98
86
139
107
117
99
158
141
105
121
78
151
81
167
102
54
79
104
95
132
91
137
119
108
93
152
108
135
144
102
105
134
163
59
83
106
124
160
101
98
98
158
87
106
110
77
140
134
122
124
144
129
135
167
158
108
119
126
145
85
95
103
130
79
126
128
96
115
119
128
105
138
166
117
133
154
113
85
90
102
128
132
102
85
80
102
123
151
114
135
148
87
177
123
78
120
128
105
160
95
119
180
81
105
123
196
106
109
102
152
161
117
148
125
106
158
108
156
103
73
200
150
95
111
141
149
129
151
112
69
86
96
102
103
90
141
103
90
103
61
112
114
168
68
116
145
67
126
114
121
67
148
102
91
99
116
162
119
98
139
101
82
97
149
76
125
113
86
140
95
112
105
159
200
135
146
121
131
98
102
113
144
77
95
157
127
128
97
110
171
90
138
112
125
104
74
153
152
164
141
110
140
147
49
127
95
128
134
74
81
121
109
98
111
166
142
120
101
102
104
107
111
102
141
132
112
138
114
122
110
77
73
93
110
142
90
125
124
77
82
115
74
109
117
90
168
177
69
77
135
114
151
89
145
150
102
84
87
82
59
122
122
107
98
125
177
101
141
107
126
98
103
99
103
175
135
81
122
129
102
103
159
111
97
170
128
99
74
102
107
148
102
160
156
133
100
110
59
125
115
101
102
108
110
139
81
120
138
129
148
113
121
122
95
72
77
97
179
102
77
130
106
98
77
100
99
103
135
108
151
161
87
123
123
193
134
104
99
108
143
148
128
98
99
95
154
131
107
103
82
116
133
145
114
49
129
54
107
108
129
161
108
108
92
125
132
117
96
113
54
133
127
186
98
76
135
114
89
127
122
83
54
102
120
128
131
95
93
136
107
49
121
103
127
89
166
87
117
113
86
116
74
107
122
149
45
102
147
116
106
106
197
115
81
79
129
194
118
74
176
126
81
42
135
78
99
118
90
118
147
145
177
74
90
98
104
82
165
98
155
89
146
95
95
83
65
160
95
133
109
157
105
54
123
111
158
69
137
162
138
103
105
94
134
128
161
100
161
54
135
112
123
95
147
126
103
99
135
113
99
150
121
110
93
85
69
119
54
170
98
85
129
124
91
78
99
116
95
137
116
153
114
94
108
152
144
95
124
81
104
67
156
109
132
102
77
133
74
83
54
116
163
105
116
82
125
148
194
118
120
105
146
109
97
92
109
95
136
131
95
83
127
83
94
127
139
139
67
141
100
82
116
188
120
165
95
135
146
109
128
49
54
102
117
124
74
125
86
162
114
125
77
78
127
79
102
82
83
88
141
119
94
86
163
73
128
131
68
134
115
132
123
97
146
129
168
87
87
153
152
125
140
103
54
119
116
92
105
74
106
122
144
123
154
131
153
98
145
146
160
120
106
80
150
114
133
126
144
87
123
116
101
87
54
95
68
91
128
167
67
69
91
98
113
76
96
137
97
159
83
119
115
123
128
143
81
141
135
106
99
102
107
107
135
116
163
124
118
74
95
59
147
78
97
142
126
95
115
158
108
169
116
74
85
145
118
122
108
157
108
131
54
128
81
142
147
95
117
94
104
147
113
145
125
76
97
200
116
122
54
182
134
143
96
127
77
157
120
148
122
67
143
95
81
98
81
149
103
109
137
199
141
145
102
147
73
91
107
136
147
96
107
110
132
194
103
82
134
54
90
78
93
65
162
82
114
99
81
111
91
125
102
162
105
59
109
119
124
199
62
102
119
119
103
119
95
135
105
114
143
141
145
169
107
98
133
152
96
102
106
90
70
115
74
150
178
102
101
59
103
148
95
87
194
126
129
90
125
100
113
142
125
89
54
143
138
125
93
119
107
84
100
154
113
86
140
49
165
102
97
110
139
95
125
54
105
102
196
133
83
143
108
145
78
132
45
135
120
111
92
107
128
122
83
137
108
61
165
105
115
97
132
95
81
86
80
158
104
54
101
105
49
144
54
108
69
165
81
54
87
140
102
54
138
85
141
115
127
82
153
177
138
111
139
98
150
107
113
139
100
119
133
108
148
160
134
110
124
102
81
177
90
108
59
106
159
116
96
106
123
82
147
160
127
131
141
134
122
108
122
131
114
74
59
108
123
74
115
137
118
118
103
120
54
83
49
113
130
118
156
113
160
78
106
76
140
54
54
160
84
130
124
159
108
102
145
85
116
177
124
97
200
102
148
87
127
92
115
135
139
77
145
112
114
143
133
132
115
100
99
137
116
104
116
133
93
153
101
112
49
107
97
123
95
134
156
102
54
135
129
130
98
102
79
100
54
107
102
93
141
108
124
119
168
107
129
143
54
141
134
101
177
102
100
120
100
126
127
131
129
135
84
82
117
105
90
97
100
126
103
167
127
105
101
89
116
59
69
85
88
67
84
88
97
102
90
162
142
103
109
116
54
148
135
105
127
76
85
95
82
135
104
90
106
163
122
102
98
93
129
143
110
74
138
98
125
134
102
148
77
127
91
142
165
54
156
95
83
108
61
102
103
135
95
136
133
158
91
98
142
97
168
93
113
124
144
165
54
139
125
110
93
129
97
120
155
78
127
117
99
122
141
68
77
87
134
97
102
130
160
49
162
67
154
93
95
131
120
158
140
87
54
120
106
129
82
133
119
59
139
119
103
148
81
122
115
98
113
95
128
61
158
133
165
102
101
113
190
118
162
153
111
102
74
114
98
124
83
108
90
152
98
133
148
85
144
135
135
141
82
78
185
62
102
113
124
161
129
102
113
150
98
124
141
89
156
103
95
138
152
141
131
78
95
144
179
108
91
115
149
122
78
106
106
109
96
144
54
143
83
151
54
113
74
219
150
134
120
118
125
98
116
109
122
89
154
161
90
116
146
107
136
139
103
102
131
160
108
111
113
121
127
179
54
95
118
77
98
134
146
140
118
168
95
135
129
95
78
118
147
118
95
92
59
141
141
98
95
113
101
70
94
107
129
107
141
82
128
49
106
143
81
85
131
153
137
148
87
131
104
100
85
123
54
113
93
116
90
129
59
159
102
113
102
168
101
163
93
74
128
92
67
80
108
128
108
54
125
102
77
98
108
140
113
109
103
111
94
95
79
49
136
69
120
90
78
93
142
98
67
97
171
133
59
95
133
108
78
81
95
125
90
107
148
145
160
91
88
76
102
140
187
82
78
116
59
95
54
136
102
59
54
54
72
140
128
100
81
98
95
93
125
125
87
125
129
87
175
112
59
129
172
143
148
130
125
126
93
141
105
139
98
186
179
114
93
152
108
106
113
142
90
139
135
73
108
69
131
90
157
130
149
74
149
77
104
87
65
137
88
74
146
154
147
117
102
69
74
115
128
131
113
87
158
104
114
111
106
125
106
117
83
106
104
164
108
82
150
106
105
132
103
79
122
81
77
77
130
103
155
173
81
132
82
118
133
54
99
74
110
118
144
137
77
132
118
119
148
102
76
121
103
165
107
141
145
146
145
116
54
54
81
121
120
102
77
125
111
135
139
124
93
120
132
54
108
68
92
123
138
49
107
102
82
153
124
83
153
102
96
141
166
74
115
83
107
200
149
141
101
70
125
105
99
127
100
98
134
104
59
93
124
108
78
73
119
103
160
114
124
108
85
105
114
144
105
49
124
81
118
108
96
133
67
130
103
108
89
119
125
103
115
168
98
82
115
90
77
81
97
160
98
106
101
140
98
137
129
139
85
148
77
160
133
107
115
111
117
95
103
124
128
85
90
68
73
120
108
87
108
113
126
102
125
122
112
97
137
87
129
139
111
54
125
160
158
111
76
115
96
49
83
98
108
138
155
155
116
125
103
91
95
145
95
125
91
112
125
85
181
97
126
68
158
107
102
144
126
83
102
54
94
148
102
125
139
68
98
139
102
133
110
67
94
96
148
140
84
123
145
61
144
105
87
104
180
118
155
133
107
119
104
139
104
81
81
161
136
137
154
139
54
134
136
81
87
92
118
113
98
83
105
124
74
101
139
131
54
126
128
103
157
104
105
95
117
142
118
118
95
78
125
139
102
125
103
113
139
92
90
114
112
160
68
85
92
98
116
77
158
102
128
74
98
81
143
74
54
98
98
102
148
74
74
81
199
128
167
91
102
76
132
86
103
96
120
133
113
110
128
54
67
110
102
108
171
168
148
127
74
95
102
135
89
68
122
122
135
49
121
117
140
95
98
108
76
59
102
141
124
93
92
154
92
54
134
186
141
135
88
102
129
116
104
95
123
73
88
177
158
95
82
147
135
100
92
135
150
110
61
153
108
98
135
93
160
105
102
108
141
103
97
155
118
149
133
98
54
145
109
115
149
182
114
108
154
155
83
92
164
82
120
146
108
138
87
95
134
131
134
141
95
125
150
104
133
76
100
109
188
95
128
147
121
109
103
85
103
121
157
158
105
120
110
54
108
132
106
85
102
148
142
139
99
106
165
85
85
88
126
108
112
78
157
105
86
120
147
138
107
95
87
108
105
140
107
108
102
114
54
93
82
205
135
154
98
116
77
54
129
100
86
150
148
131
98
165
74
81
149
102
106
96
164
108
106
107
118
76
108
145
106
183
90
90
116
84
103
105
93
74
107
199
68
108
115
103
100
147
146
102
108
128
167
108
102
101
160
105
91
146
133
95
100
111
110
133
110
42
54
103
143
93
138
116
103
90
90
49
141
153
125
93
97
143
79
125
76
153
49
87
54
160
102
128
143
151
87
158
128
103
88
180
113
177
94
77
95
95
143
138
54
110
76
77
77
183
82
67
108
119
54
118
54
97
124
139
95
115
90
115
54
131
140
88
161
178
145
121
132
69
144
143
76
106
109
114
114
168
95
157
77
124
148
108
81
95
54
113
77
119
158
143
87
133
176
82
150
109
133
125
125
77
116
128
128
99
135
137
115
81
86
90
147
98
103
173
109
112
120
126
114
49
127
135
74
93
124
98
107
101
123
125
190
191
54
131
85
92
216
141
177
104
76
107
104
100
105
122
107
112
133
145
172
146
120
115
147
179
167
119
156
133
148
114
103
98
143
100
102
102
54
120
107
120
74
148
116
104
106
99
136
123
90
153
116
132
143
120
158
112
122
185
181
177
54
95
129
160
168
91
108
113
137
82
49
131
132
139
107
108
123
155
98
95
107
163
94
116
68
156
120
102
126
144
139
127
113
110
49
79
102
120
110
59
108
103
150
155
88
73
118
115
108
108
104
87
152
139
139
107
104
54
87
87
139
149
114
142
133
147
89
128
98
113
76
83
149
100
132
101
189
113
121
105
108
146
126
110
122
152
84
128
125
172
102
98
120
135
180
90
81
96
105
128
113
77
124
114
129
79
102
154
67
121
139
97
160
176
148
74
145
83
121
106
108
157
159
67
99
124
157
83
151
141
171
154
114
90
110
142
78
85
95
181
113
83
83
106
94
95
103
107
135
169
106
102
155
139
108
125
132
142
81
188
85
139
61
143
59
142
103
54
87
119
153
145
67
165
81
54
139
68
135
130
96
123
98
93
141
129
109
49
81
135
204
76
151
109
120
109
155
102
84
128
133
134
54
78
143
130
93
106
108
107
127
135
73
81
143
108
162
107
106
133
96
108
54
67
153
234
116
96
108
143
127
102
93
54
118
59
108
116
131
78
102
127
99
160
83
141
54
98
116
119
143
122
185
99
133
122
160
104
131
102
169
124
129
129
146
49
114
66
126
87
139
88
108
105
89
95
85
128
143
110
101
82
81
92
143
90
105
135
104
113
134
104
129
170
76
69
144
111
104
106
102
81
80
146
146
98
118
87
81
103
147
113
117
113
117
131
54
113
144
91
125
124
90
134
110
120
117
114
140
98
105
106
148
69
127
95
131
141
150
102
137
136
77
93
108
112
103
102
131
121
143
126
195
128
112
100
107
107
99
98
49
130
105
119
128
116
142
61
103
113
153
114
150
73
110
123
97
117
115
112
54
131
164
103
102
78
105
85
135
109
105
110
67
140
108
89
154
137
124
113
108
128
93
90
100
156
115
206
125
124
138
133
106
121
121
118
101
124
81
159
77
104
49
67
87
96
163
132
95
108
92
148
83
102
124
145
67
124
108
98
85
105
108
110
93
125
98
87
59
166
185
98
126
54
108
96
74
81
107
103
87
101
97
113
134
59
135
109
104
115
128
96
54
138
144
95
91
128
90
54
120
123
97
131
83
98
90
76
99
196
162
61
130
81
97
132
108
133
85
78
92
81
81
68
191
54
170
131
90
120
94
89
140
91
131
113
114
115
111
138
103
80
95
162
147
140
78
102
87
54
120
95
54
82
94
103
143
116
88
157
93
139
129
94
97
110
165
96
101
161
110
93
115
94
113
109
128
106
119
132
108
110
158
138
179
84
105
115
151
162
95
104
103
149
177
54
131
147
106
156
148
130
148
161
101
45
68
59
128
126
125
113
109
90
200
179
150
169
98
54
149
61
77
163
130
113
157
157
87
135
131
76
125
137
139
136
83
125
150
82
98
129
159
154
155
117
103
172
128
157
118
148
113
59
133
117
118
131
54
168
81
152
87
105
125
110
128
120
181
82
125
110
116
108
54
126
149
127
157
105
122
111
120
117
57
81
130
108
54
96
110
115
177
162
140
93
177
119
107
90
145
180
100
127
147
126
128
145
125
106
94
97
135
177
113
106
119
109
108
74
67
125
105
138
83
154
104
80
158
102
87
125
122
90
84
124
160
76
73
135
113
120
114
119
49
107
119
77
148
124
119
102
153
87
127
107
151
95
141
98
120
98
135
179
141
155
146
81
59
142
73
134
133
125
87
97
105
91
116
152
121
102
82
99
108
149
135
115
124
87
127
101
102
128
125
123
54
107
96
163
81
133
105
49
133
157
94
104
147
117
78
93
98
158
128
169
152
113
113
218
95
105
54
107
158
190
104
54
101
158
160
148
102
84
76
140
96
174
115
147
102
108
116
96
110
141
158
159
111
116
113
126
93
127
159
163
161
153
90
95
104
114
111
49
59
95
83
148
121
158
106
70
120
105
144
95
177
115
101
139
103
102
103
98
141
155
132
96
90
150
139
127
102
149
98
157
89
126
95
102
109
112
123
137
86
141
84
68
124
119
185
161
123
100
162
108
147
59
97
102
67
120
163
144
73
85
74
98
93
80
100
105
154
105
104
139
115
95
118
106
115
54
104
96
129
116
115
87
99
96
116
107
101
110
105
154
130
100
122
138
159
102
130
119
116
97
118
98
97
144
162
169
113
150
59
152
124
101
98
78
135
165
54
142
113
125
132
140
90
113
96
103
141
146
102
134
127
117
126
114
125
139
136
85
105
148
140
129
109
177
112
98
95
102
161
132
146
134
128
125
103
120
96
110
126
121
124
91
126
129
108
95
108
97
127
143
110
80
78
54
73
54
115
81
105
132
133
144
111
139
81
121
129
116
138
179
93
77
157
103
142
116
107
151
131
107
97
115
145
80
134
141
118
115
139
124
105
161
95
143
106
97
97
139
76
81
106
111
104
98
111
95
102
82
74
102
96
128
135
54
85
135
102
103
149
139
146
45
106
104
111
147
108
158
158
82
138
157
100
121
140
82
157
90
128
140
96
120
77
95
90
59
134
120
106
116
136
68
94
89
78
92
118
130
87
95
81
106
144
158
122
54
112
135
98
49
116
112
160
54
54
95
89
100
120
76
126
98
115
54
135
142
54
146
102
129
118
113
105
102
150
120
129
107
136
130
150
104
158
104
100
133
131
112
81
94
155
105
149
74
101
77
128
124
49
81
146
145
62
132
100
103
95
105
101
108
115
95
123
113
126
123
180
115
134
132
81
105
142
74
87
85
109
114
95
76
101
154
141
165
120
137
105
141
218
127
148
130
82
122
161
131
154
124
69
120
138
78
59
143
177
109
103
95
139
120
132
103
142
109
110
116
98
131
160
143
148
104
74
123
93
124
105
90
77
136
122
171
129
83
141
117
106
113
108
93
98
49
126
83
102
103
165
101
140
103
112
98
176
149
177
138
125
109
143
149
108
156
141
143
162
125
111
95
106
113
141
87
133
87
119
125
82
75
171
150
136
90
93
118
118
147
70
133
103
119
140
95
103
165
78
139
140
145
131
115
54
105
76
105
128
103
134
129
115
85
54
155
80
129
165
68
87
128
76
119
148
82
103
99
125
95
79
144
81
104
143
59
192
122
161
103
81
77
79
79
90
108
143
96
177
78
108
124
90
108
103
74
140
132
107
116
76
91
133
179
115
106
102
67
165
120
87
113
90
113
144
136
117
133
97
83
144
74
110
62
87
227
143
136
128
120
61
131
142
115
114
138
93
54
130
110
111
114
99
90
113
177
113
148
156
90
104
95
112
135
158
159
122
95
127
192
114
111
134
142
110
129
119
87
61
105
146
130
77
121
105
173
103
80
131
130
118
120
125
143
129
140
139
142
115
129
49
119
108
98
76
117
107
109
119
148
131
132
78
156
108
59
141
61
49
90
137
80
103
93
54
161
77
135
115
96
200
70
177
148
124
139
130
156
144
103
149
101
118
83
83
83
173
113
124
95
146
131
54
81
133
54
148
122
78
98
148
67
81
105
98
125
82
125
127
133
54
143
120
101
121
177
120
116
103
94
106
111
54
84
103
135
85
129
132
49
120
108
81
127
127
119
123
122
91
67
103
141
160
171
42
117
104
128
135
166
98
135
98
102
91
161
95
77
146
156
95
153
132
139
103
103
137
174
129
134
49
118
120
132
108
131
157
118
160
206
86
191
95
148
112
90
173
108
95
117
59
69
89
137
153
134
173
162
125
125
74
116
152
87
95
115
87
103
80
95
137
115
81
149
107
140
118
156
146
110
133
103
100
140
98
85
98
106
142
122
82
128
108
144
62
123
168
101
95
102
103
146
90
127
68
115
113
135
146
92
116
166
149
113
106
90
134
155
127
128
132
107
120
143
177
133
96
129
116
108
73
122
119
113
82
100
87
117
88
93
133
146
142
130
104
149
95
122
87
102
114
180
87
115
115
125
133
104
54
161
177
84
153
148
90
156
108
105
130
74
131
78
99
108
84
131
170
115
156
162
146
102
77
105
151
130
135
124
61
182
111
105
131
96
99
92
98
108
116
133
108
100
147
106
147
123
187
116
76
108
141
98
155
147
133
133
98
54
81
158
108
105
107
103
97
91
108
139
86
157
102
116
89
101
83
153
113
103
74
127
106
158
143
90
92
83
128
119
107
101
113
179
114
102
81
118
87
114
153
105
120
81
113
113
93
74
186
79
172
98
174
92
145
98
213
83
102
129
169
103
59
128
177
151
138
131
80
123
95
137
166
54
141
95
120
108
107
103
180
116
93
127
153
93
133
49
155
108
67
133
112
74
113
93
115
126
104
114
89
96
103
131
129
80
113
118
102
141
143
104
105
74
131
142
120
128
128
95
104
135
100
120
105
103
74
143
67
119
132
77
87
168
122
49
133
93
74
113
77
118
137
54
81
74
177
179
131
81
73
118
87
103
92
200
61
105
140
127
49
108
116
59
144
125
128
133
117
146
131
145
135
77
139
159
122
148
98
107
83
135
49
145
98
110
83
108
113
99
153
77
108
110
93
81
95
173
122
102
125
110
148
76
115
82
125
154
105
102
149
131
143
95
101
143
147
98
100
98
102
129
124
108
112
105
111
128
130
96
177
114
112
115
76
111
87
103
117
179
127
95
134
49
157
121
144
153
120
73
77
190
84
128
148
120
116
198
127
76
129
102
143
101
139
135
59
90
95
124
111
128
102
121
113
85
129
130
145
125
54
90
102
81
113
146
97
124
105
141
67
107
79
130
113
156
109
125
125
101
104
162
74
146
109
87
123
77
145
94
109
121
139
180
81
119
78
102
129
82
101
95
106
94
49
106
54
82
103
130
111
80
96
112
59
108
155
96
81
107
93
81
155
54
83
138
98
114
133
120
131
115
116
203
123
146
108
142
87
129
138
126
103
108
120
183
103
102
106
108
95
91
104
135
111
181
77
120
110
123
76
132
120
113
49
90
109
158
156
77
123
74
133
120
54
82
85
87
122
99
112
107
59
129
106
109
132
94
154
102
111
138
92
108
165
135
139
54
139
116
109
104
97
115
122
108
114
109
54
96
156
85
91
167
148
162
125
173
160
119
131
151
121
120
95
113
139
163
161
164
114
105
127
83
106
131
132
49
127
104
158
108
156
154
120
113
167
54
113
135
49
103
108
148
143
69
54
108
91
124
102
115
203
146
108
95
49
54
95
121
172
82
118
103
49
54
117
128
144
162
123
133
115
125
166
93
147
136
101
112
98
87
142
49
105
108
143
98
131
157
133
126
97
145
191
99
147
148
127
118
128
112
112
128
104
99
123
118
96
124
100
122
111
90
116
177
102
97
115
126
110
131
54
106
93
142
108
96
113
111
160
94
103
141
49
76
177
89
154
141
74
114
146
68
98
102
83
49
102
93
97
124
97
103
105
117
139
93
86
98
104
107
106
95
96
90
129
110
82
108
111
169
120
100
129
129
135
166
87
137
95
90
138
116
103
119
98
153
102
84
142
140
87
120
99
80
105
91
61
98
106
118
139
188
108
144
94
106
125
132
127
92
92
147
54
112
81
109
122
154
142
98
103
67
151
102
130
74
89
135
82
59
74
104
95
145
117
86
127
54
150
91
125
118
104
105
68
131
104
124
122
65
83
125
109
90
67
129
98
153
113
95
133
81
145
95
59
176
141
161
87
92
120
104
95
95
108
139
155
121
85
103
92
104
85
106
95
155
97
122
115
122
127
148
54
109
77
120
104
103
96
133
61
163
226
167
129
76
102
132
59
175
93
73
81
142
148
89
135
73
63
123
98
115
139
82
151
144
113
153
70
148
97
81
134
82
91
82
114
96
121
111
93
149
91
54
176
103
113
100
152
95
146
77
135
114
143
145
128
104
141
146
103
127
143
79
105
82
141
128
133
54
98
102
151
104
95
130
130
96
130
100
148
80
115
102
141
148
146
143
95
100
122
122
54
108
95
158
85
145
128
106
106
106
83
87
167
131
146
100
111
124
98
95
148
82
162
112
124
54
136
81
180
118
135
128
120
151
95
137
54
147
104
185
180
123
103
98
131
200
152
133
79
95
82
102
141
105
135
156
154
170
120
87
140
83
151
76
69
69
96
101
125
164
91
148
108
162
54
116
118
153
101
110
110
151
120
107
182
130
78
82
97
122
54
97
89
108
117
128
116
75
104
126
117
108
178
111
85
149
115
112
61
81
119
125
122
129
93
76
67
125
59
93
151
102
155
119
144
141
119
127
90
105
145
86
134
116
115
159
125
92
82
108
49
117
90
98
70
156
147
113
141
129
149
125
95
147
82
108
95
126
167
145
93
71
106
89
67
54
132
119
81
91
96
117
54
82
146
93
159
163
103
122
135
90
145
125
150
137
93
117
141
108
90
103
137
143
98
95
101
83
169
133
70
108
128
118
108
102
215
95
106
155
125
59
160
132
102
105
127
59
131
122
54
169
54
93
76
91
135
170
92
133
109
151
108
105
171
59
106
108
147
173
109
90
98
112
156
93
101
137
112
123
108
116
160
108
111
146
96
114
49
136
76
85
105
139
93
140
131
90
123
113
125
96
108
142
112
77
135
140
151
128
111
122
129
154
144
106
147
113
187
124
105
110
153
123
124
146
136
125
184
167
69
98
140
141
83
138
177
76
104
154
130
83
95
118
116
69
111
85
92
123
59
76
140
145
73
177
102
65
92
91
102
114
154
129
141
177
161
106
115
76
119
145
117
162
119
82
149
126
97
117
180
115
72
108
148
148
77
180
132
113
54
102
134
177
115
69
127
88
148
93
96
105
134
97
127
118
125
92
95
106
104
161
54
129
113
155
132
101
90
106
125
106
129
96
144
139
112
118
138
112
140
94
131
112
177
120
134
74
69
83
145
104
112
106
79
99
162
116
100
67
128
122
93
109
106
113
120
159
129
122
78
122
177
103
158
156
93
49
103
117
107
101
124
120
135
97
91
137
76
135
95
93
123
82
177
120
98
133
127
106
148
145
106
180
121
87
97
170
128
158
105
49
85
108
113
177
112
149
98
133
82
59
144
90
168
110
195
120
103
54
116
93
140
167
133
103
133
78
126
129
144
117
142
144
153
128
54
81
83
106
116
101
144
93
155
160
98
116
106
148
133
120
148
104
133
104
123
131
113
107
103
129
108
128
84
89
146
113
80
129
124
114
143
127
121
128
143
156
54
99
103
89
97
68
93
54
108
97
114
108
78
121
76
95
102
68
98
54
120
113
148
139
108
96
111
129
128
148
103
145
118
54
102
141
135
141
75
151
113
125
120
102
92
74
118
109
80
123
108
77
122
76
108
122
101
101
120
186
49
123
118
108
148
163
140
105
119
95
120
79
106
151
144
99
134
95
103
102
126
115
78
105
177
101
158
116
96
107
95
94
107
156
81
89
98
107
59
49
105
112
153
192
127
128
156
87
129
149
140
102
54
130
67
54
127
54
158
115
127
135
136
133
149
121
54
151
122
102
120
108
93
95
135
125
155
165
119
54
150
49
132
200
107
111
67
184
130
103
88
49
104
120
105
122
98
94
106
160
123
83
149
90
125
177
78
89
103
95
94
113
114
124
123
98
135
87
150
65
121
124
128
141
95
148
161
119
121
118
98
115
85
129
82
138
102
82
144
142
143
181
148
127
136
95
106
74
108
76
115
49
102
117
113
131
109
103
149
128
128
125
100
157
140
133
102
80
112
168
102
98
153
85
98
98
125
81
178
155
133
125
54
135
145
141
87
95
160
146
144
67
121
108
122
93
113
81
110
128
114
165
136
151
135
134
77
74
119
125
106
110
89
114
49
105
125
122
141
131
95
77
119
140
134
149
122
131
120
148
126
106
59
106
157
149
91
95
120
137
68
132
77
95
109
138
130
108
143
95
117
162
98
82
161
82
102
142
101
89
96
160
85
67
129
82
108
159
98
87
161
102
110
95
109
133
90
112
144
99
54
94
148
98
126
108
97
127
125
125
130
104
93
122
97
113
83
132
109
118
103
74
95
87
158
149
59
114
146
127
93
107
184
81
109
103
91
77
150
135
105
107
219
102
117
145
124
98
112
97
105
115
132
114
95
104
140
104
125
147
194
129
112
105
138
54
158
137
125
139
120
89
95
69
119
113
138
102
128
113
108
144
98
158
110
146
108
161
161
75
143
143
184
86
118
114
103
86
121
120
110
102
203
106
98
96
114
112
82
65
98
108
125
94
103
142
121
107
145
133
151
122
57
134
141
87
76
87
102
109
88
132
106
93
114
103
153
100
131
117
103
54
145
152
81
133
109
102
112
129
144
115
99
116
102
91
138
125
67
104
87
93
95
111
126
96
123
136
142
106
97
106
133
138
54
141
186
195
110
139
75
130
74
101
123
146
128
135
108
95
117
113
81
108
146
146
140
54
114
133
91
114
49
77
105
108
160
108
165
125
108
145
81
134
102
131
49
93
105
119
95
103
118
106
101
106
87
54
59
136
104
135
93
98
115
108
80
118
107
123
97
127
81
78
95
83
103
65
111
128
123
54
125
115
133
119
114
132
86
120
147
131
147
100
161
102
112
131
102
99
101
54
77
91
125
77
155
49
148
104
167
94
172
59
137
185
105
179
115
125
125
103
93
118
94
110
108
97
94
130
124
54
123
191
106
81
177
103
143
133
84
113
129
149
78
125
125
67
59
237
77
84
108
144
128
122
165
172
110
54
122
82
148
96
126
117
94
100
141
76
79
136
161
157
99
67
123
98
116
114
146
103
106
81
113
143
81
103
116
152
131
108
76
120
170
150
161
142
105
160
94
117
122
93
108
67
163
61
82
81
132
100
119
125
103
110
94
188
143
126
131
157
128
109
146
93
139
106
143
149
102
106
112
128
118
119
119
130
132
144
131
99
95
123
74
105
114
103
114
74
107
141
103
158
171
134
131
124
54
81
133
143
115
129
95
81
109
98
68
68
105
130
181
81
139
164
145
158
117
61
101
80
131
96
119
164
117
131
134
101
74
73
93
173
111
110
85
115
122
113
107
156
91
76
125
107
164
144
102
108
76
102
118
163
95
103
141
200
102
150
125
82
54
125
54
103
127
123
54
122
140
107
98
82
128
144
67
129
116
152
59
125
93
153
87
134
125
54
184
126
104
104
57
118
120
132
117
103
159
108
121
101
118
120
97
108
129
67
158
117
96
107
137
214
54
68
97
128
137
107
135
148
113
102
89
87
59
116
127
131
54
148
99
121
116
98
145
132
120
108
167
69
90
86
157
93
109
77
132
81
96
146
132
139
83
106
83
146
91
168
138
81
95
54
122
161
109
95
102
141
129
83
148
125
176
96
143
83
130
127
132
158
162
99
132
100
54
81
73
54
135
98
80
131
133
81
100
102
129
107
175
96
116
118
135
147
103
93
67
103
116
177
68
123
108
116
126
103
59
157
97
140
127
140
96
124
54
128
154
82
81
108
126
123
102
116
125
108
117
113
82
104
130
122
154
132
116
81
103
122
67
143
81
101
84
140
116
89
98
159
116
140
131
112
120
167
163
68
164
119
177
105
131
141
87
179
139
130
154
139
119
49
128
54
121
54
110
156
99
82
131
125
82
168
144
91
143
148
118
76
189
88
153
135
81
127
90
96
103
54
113
111
102
81
128
130
155
123
165
95
76
135
108
104
90
197
129
123
115
49
74
85
106
98
120
117
133
59
150
74
68
160
138
125
68
115
94
104
87
80
102
102
54
158
112
68
102
125
111
126
76
105
86
143
92
146
83
127
96
54
190
159
98
81
98
125
98
117
108
103
93
85
91
104
150
110
128
106
78
134
93
139
106
90
87
158
83
106
105
175
96
135
107
102
129
80
160
112
121
113
88
156
110
82
139
151
99
93
167
77
73
95
102
143
100
106
145
125
139
144
179
145
83
59
49
108
94
59
145
132
113
131
96
106
159
185
103
123
116
95
59
122
77
127
158
95
138
84
128
95
169
91
129
150
108
131
111
148
134
112
139
126
54
144
148
103
137
103
105
142
102
141
102
115
143
140
90
177
114
129
123
74
125
123
77
152
116
98
135
179
169
137
95
125
161
113
102
127
89
139
122
129
185
158
128
74
158
168
75
110
122
105
95
125
144
73
90
103
82
129
106
59
85
142
100
125
132
90
103
176
106
148
164
115
59
116
188
183
134
87
167
96
148
87
118
108
103
147
128
145
54
77
148
130
114
113
176
142
73
100
80
115
67
102
122
96
111
141
97
81
85
102
204
122
103
144
160
54
108
81
106
80
120
98
103
113
98
122
146
137
81
85
145
78
111
92
107
49
125
173
108
83
135
106
115
113
136
139
155
109
119
101
103
67
109
128
100
73
139
81
145
157
114
157
54
114
144
143
132
92
126
130
118
130
101
125
98
77
154
114
127
83
105
123
97
109
123
120
78
95
130
98
124
82
133
107
140
99
93
195
117
98
131
141
148
106
97
81
105
108
102
113
98
108
85
143
136
179
49
95
108
103
155
134
110
158
98
112
119
99
134
95
149
81
172
133
102
69
113
103
116
110
95
113
135
139
122
107
157
135
217
107
59
108
103
95
106
121
104
115
90
110
104
106
138
123
98
161
54
54
108
54
112
140
95
106
145
142
94
89
140
117
170
161
115
91
151
127
137
92
134
146
136
99
173
122
115
154
116
117
99
121
196
85
105
130
96
102
94
144
130
85
108
98
112
97
138
118
100
90
133
163
108
100
149
177
93
146
59
101
91
68
76
141
102
139
113
90
100
129
68
101
49
95
102
108
151
152
98
113
87
94
83
118
96
133
108
98
85
151
142
98
102
84
115
103
127
122
103
110
98
98
115
118
212
118
164
90
69
116
115
76
96
97
91
172
180
128
104
116
143
112
59
94
82
104
76
163
110
74
126
155
103
111
138
118
128
133
134
95
102
123
155
90
117
142
135
78
153
149
102
107
110
181
132
128
140
98
99
102
140
104
146
105
98
102
123
105
164
100
119
82
167
102
98
93
128
139
69
131
81
163
80
116
54
119
76
93
91
154
179
221
124
114
117
140
134
115
102
121
114
87
141
119
163
106
128
124
77
106
111
129
104
93
91
91
109
128
117
98
113
143
78
112
119
136
157
108
147
114
45
125
79
54
78
122
169
57
81
49
122
149
127
128
68
160
109
113
45
130
62
95
93
156
128
141
98
82
139
124
149
120
120
147
134
124
155
140
105
120
133
81
155
141
134
149
132
173
124
94
76
95
143
93
99
122
103
98
104
145
106
95
90
107
115
114
141
91
115
113
107
128
151
74
118
123
107
135
122
97
137
123
145
112
96
147
85
86
127
128
93
99
93
97
115
146
108
182
116
59
110
121
107
138
139
151
54
101
113
112
114
87
76
118
69
74
77
128
95
88
155
67
67
134
173
100
102
114
102
96
78
115
113
98
120
160
177
140
129
90
102
90
155
90
132
159
127
150
54
79
96
127
146
141
130
116
166
99
113
135
95
116
144
68
143
139
144
108
95
49
90
138
126
93
158
117
87
101
113
105
149
114
121
118
95
108
109
89
92
114
134
137
144
117
94
112
116
69
123
204
93
148
102
68
97
116
133
99
123
132
130
114
137
54
102
83
125
102
81
113
129
110
107
97
194
103
95
115
144
84
67
130
166
127
135
104
158
108
95
113
129
120
103
61
113
105
54
118
156
108
98
107
67
54
144
177
108
77
114
73
80
147
98
202
194
80
168
102
135
96
121
78
154
98
68
106
101
115
57
108
102
157
116
120
159
94
157
74
122
105
96
138
93
74
61
108
128
80
103
142
54
136
107
54
145
125
49
108
141
162
133
177
171
155
92
137
105
91
155
134
89
158
118
103
94
142
118
120
74
74
126
81
175
143
129
113
143
127
106
131
110
85
140
125
91
95
95
120
140
141
113
100
111
62
121
107
109
106
90
140
120
132
180
91
154
149
103
156
133
68
128
98
102
122
102
79
99
129
49
139
123
107
150
153
81
98
106
105
128
176
128
95
54
108
100
45
158
147
124
165
83
76
124
155
194
205
118
147
169
93
145
111
112
108
118
111
177
111
102
103
140
130
71
105
141
95
143
119
85
107
157
112
89
124
113
119
139
120
103
106
118
125
86
103
93
102
145
113
54
80
165
120
108
154
73
103
141
98
102
98
166
95
97
100
158
137
129
103
105
105
102
54
80
105
129
93
87
118
154
87
78
165
84
87
156
78
100
67
90
87
124
109
161
128
149
146
112
129
100
70
116
160
96
145
98
96
115
103
108
91
130
95
131
132
73
209
125
54
140
102
142
124
107
102
100
103
133
180
127
81
138
103
101
87
131
76
98
93
116
126
133
131
95
125
118
96
115
138
86
124
98
98
87
148
87
118
99
102
108
78
128
69
95
54
168
122
96
130
106
128
81
128
132
175
104
133
54
68
99
106
116
78
117
99
102
105
124
93
105
144
108
132
128
78
123
158
110
101
111
112
113
95
103
129
126
115
141
113
96
78
135
137
95
177
88
103
122
135
135
139
158
121
123
119
148
142
136
142
104
109
150
108
78
127
155
102
76
158
87
103
148
92
93
158
74
67
153
104
118
83
145
107
75
133
73
95
152
143
108
104
76
125
78
123
87
54
134
78
91
129
119
85
127
155
169
125
190
79
118
138
111
143
87
147
147
103
146
91
108
139
146
144
74
152
117
49
78
49
109
162
141
140
54
99
108
124
93
87
81
89
94
159
148
115
108
131
90
95
134
145
117
87
98
129
74
148
125
99
110
98
102
110
132
141
105
132
128
103
105
89
87
146
145
103
102
86
74
102
127
90
54
124
99
78
84
139
104
144
98
83
91
59
148
98
103
89
111
108
150
133
103
137
86
106
131
131
116
151
91
81
102
120
168
122
59
67
168
112
82
76
108
54
128
124
143
148
160
132
138
84
90
97
128
113
91
125
102
129
83
67
102
95
100
177
141
142
77
133
115
93
152
127
102
108
148
105
135
141
143
149
100
93
102
139
85
115
87
135
143
141
124
110
49
74
143
122
113
100
113
148
159
146
120
156
101
94
103
77
141
72
99
112
54
81
139
99
124
139
86
134
131
147
78
54
108
147
105
93
93
141
106
116
110
93
93
77
125
102
76
81
103
49
127
73
118
116
102
92
161
115
131
94
82
90
97
190
77
140
130
148
106
113
67
115
94
148
133
87
91
49
77
167
54
116
108
130
137
108
88
110
157
72
54
98
139
112
177
108
119
78
158
123
146
115
120
103
121
108
74
104
116
125
122
144
160
138
133
102
90
122
81
193
148
145
74
119
127
122
133
130
59
109
135
106
125
135
132
91
106
141
95
142
92
118
90
158
104
108
54
54
102
139
87
157
95
128
93
61
118
91
114
108
146
142
154
149
78
122
68
98
120
182
84
113
122
124
89
81
163
108
124
90
107
73
140
172
147
144
108
102
108
108
81
97
133
91
54
103
97
78
97
108
143
130
90
144
99
115
148
92
143
177
99
148
142
122
131
127
103
133
82
116
78
135
144
124
150
130
107
110
83
90
115
97
145
65
117
123
143
125
91
105
113
108
102
107
165
101
69
74
148
45
168
146
54
102
115
54
82
126
99
164
112
131
170
148
144
127
133
103
106
120
120
90
106
118
104
124
54
139
92
233
67
120
113
147
144
120
85
108
130
97
128
135
115
108
116
128
74
180
112
113
72
125
97
153
96
98
73
90
138
103
99
91
122
117
108
77
84
68
107
59
108
131
141
91
59
82
74
54
113
116
135
120
65
87
131
123
131
143
54
74
109
124
67
168
127
108
151
54
159
134
171
160
110
85
132
80
54
180
191
81
102
122
109
124
91
108
176
81
62
107
148
54
81
83
115
98
100
121
127
76
135
158
129
101
139
103
90
89
116
136
83
91
116
106
123
125
106
194
120
98
107
129
65
136
59
131
95
90
182
106
81
125
150
149
93
106
124
116
97
131
122
175
140
95
130
115
131
109
131
102
138
103
169
123
128
108
121
133
79
138
147
139
101
126
102
54
161
128
104
132
152
86
145
77
54
69
156
92
144
172
112
122
173
69
144
127
145
54
103
99
89
131
113
144
112
77
125
54
80
111
103
54
173
126
106
78
54
88
74
141
102
103
105
99
82
109
128
96
94
125
114
98
106
113
95
101
152
147
130
102
98
133
181
129
122
97
140
89
158
113
113
91
111
115
115
140
83
134
77
158
119
96
101
69
137
179
74
122
108
107
98
152
73
143
135
98
99
161
74
81
140
95
81
119
87
148
162
112
102
119
112
77
120
116
112
76
81
54
159
103
124
127
171
157
74
107
121
145
94
134
76
146
119
127
81
123
98
130
95
90
158
147
84
102
127
125
158
103
123
128
93
128
134
141
155
103
81
131
113
128
103
99
90
122
125
80
148
92
99
77
134
123
91
97
128
108
108
116
77
54
123
132
172
68
188
108
95
93
105
54
105
161
159
81
149
89
130
54
81
67
128
107
76
100
125
87
102
98
161
93
128
140
54
107
115
81
143
141
127
126
101
144
128
69
81
122
133
140
128
107
124
95
128
105
54
138
148
117
89
178
139
92
90
125
92
133
113
155
134
119
73
117
86
83
68
110
95
87
108
177
114
128
96
149
149
88
118
107
146
125
84
74
122
69
108
117
147
144
90
105
130
96
139
106
96
99
82
120
133
119
114
113
145
98
91
154
97
123
144
127
137
177
144
131
219
83
121
157
108
79
54
77
194
129
133
131
121
126
126
138
176
129
95
121
104
98
78
83
104
97
123
105
85
106
95
95
108
93
128
121
117
102
104
143
134
98
123
100
158
120
129
123
124
107
130
103
61
115
76
98
175
88
139
112
154
100
111
162
162
119
120
150
142
81
127
144
97
153
114
141
103
133
62
157
145
125
77
105
130
95
177
115
104
83
116
156
129
139
97
173
54
131
114
139
133
142
84
90
87
122
128
122
98
139
202
133
116
173
108
121
182
112
143
77
59
54
79
102
80
140
103
150
97
83
124
180
122
127
137
136
65
59
137
157
132
100
147
92
98
127
49
118
158
143
123
125
83
125
81
148
96
65
135
109
95
93
93
146
126
144
103
95
92
74
119
225
108
110
118
150
92
120
128
145
97
145
97
129
145
119
139
143
76
138
76
95
105
142
98
125
117
119
97
83
140
91
84
91
117
110
139
125
110
149
162
168
141
135
105
161
109
103
102
97
86
126
135
119
155
78
126
96
98
128
91
67
61
119
128
132
128
136
137
141
102
96
116
59
172
172
135
105
145
133
133
96
112
102
143
150
89
49
135
130
119
147
93
88
102
113
108
80
123
119
105
67
87
92
82
109
165
126
115
177
104
123
95
112
117
172
129
101
105
94
124
106
165
143
96
98
115
129
115
103
119
165
141
127
126
127
143
61
97
92
97
155
101
78
143
177
123
122
126
132
143
105
102
85
137
65
98
111
105
164
54
131
128
98
149
141
138
103
87
95
144
104
119
90
127
102
144
102
105
103
155
98
125
102
98
145
160
81
108
98
120
101
116
81
122
143
119
136
105
114
108
125
128
84
68
155
113
96
91
158
121
110
81
80
173
108
98
109
93
115
54
155
133
67
93
96
131
104
98
59
92
112
108
152
98
138
124
106
156
119
109
98
54
88
54
104
97
132
97
157
77
122
177
129
118
102
77
81
107
148
75
133
157
95
118
76
121
68
105
142
95
101
108
99
112
113
104
192
95
135
177
100
126
102
125
91
115
76
145
97
144
82
125
161
121
95
82
100
116
45
101
148
160
72
102
92
165
194
91
83
98
102
84
100
137
87
120
138
85
161
106
150
134
166
74
59
116
179
95
130
81
107
103
163
83
105
113
112
110
54
54
95
108
165
115
167
106
76
127
113
138
139
85
97
114
97
99
115
95
116
93
106
138
108
106
164
212
106
182
116
93
95
177
89
98
97
61
102
73
99
107
125
82
93
97
200
95
91
125
54
89
91
167
84
115
130
82
108
99
177
115
132
115
126
140
88
106
106
103
102
93
109
49
108
96
127
110
135
93
74
102
113
134
72
80
95
116
82
106
157
113
125
113
144
112
98
78
190
95
116
135
116
144
151
84
81
114
106
78
98
124
98
108
135
84
120
115
122
120
102
147
142
69
93
165
124
145
82
77
142
68
111
59
134
118
125
96
169
95
176
101
113
99
98
116
161
126
95
98
91
99
86
87
74
130
102
120
117
89
119
131
76
108
147
130
119
148
77
103
184
139
149
96
95
54
133
83
105
105
118
119
69
108
102
90
124
107
145
74
95
83
112
140
186
141
132
103
151
129
102
133
59
90
160
54
156
112
159
70
82
120
111
117
171
115
106
90
95
81
133
161
95
138
106
144
129
102
54
77
93
88
160
112
131
152
139
150
83
167
80
116
142
135
113
49
154
128
158
101
128
108
61
105
119
158
84
95
91
119
125
107
128
164
82
120
54
114
128
128
84
162
135
125
108
139
101
111
99
89
74
147
54
125
115
165
101
102
85
122
113
179
86
77
74
93
106
162
130
108
163
49
103
67
162
133
83
98
131
121
127
146
77
91
133
172
132
108
76
142
68
83
134
91
132
95
127
151
68
105
98
90
108
98
90
78
89
156
133
108
100
106
126
107
113
95
112
145
138
95
166
54
132
87
149
124
76
140
78
97
167
114
182
105
148
134
99
80
106
126
59
110
127
54
87
83
111
102
181
108
49
70
116
49
101
113
102
161
76
109
102
76
225
114
107
109
96
126
78
109
54
102
76
107
102
138
132
91
89
68
97
97
105
49
123
177
113
126
148
134
133
99
169
151
77
110
111
77
101
94
106
108
84
115
49
117
146
133
135
135
149
143
102
102
73
146
117
104
114
88
83
133
138
132
98
110
100
108
90
54
106
98
95
102
167
157
91
156
88
106
90
148
127
98
109
93
81
54
61
97
59
108
99
114
76
109
141
101
45
117
116
109
54
134
102
115
149
116
115
184
120
92
95
101
87
119
121
125
59
168
95
120
106
162
106
139
158
98
77
103
123
166
102
172
133
117
176
107
82
106
152
87
92
101
54
140
131
93
127
78
177
135
84
95
102
142
132
102
98
91
95
127
167
49
89
140
91
151
99
94
73
102
133
150
104
176
135
135
95
167
191
80
108
86
84
98
101
149
119
96
125
129
105
152
155
80
117
155
124
106
139
109
149
122
111
143
135
101
150
102
105
125
122
143
83
125
54
102
156
96
122
180
91
82
107
95
105
49
59
126
125
85
77
69
131
82
87
113
96
81
135
97
146
98
134
131
108
127
61
74
172
106
139
113
94
62
172
102
118
95
133
112
165
127
128
122
133
124
147
110
102
158
138
74
120
147
118
158
142
141
186
136
157
67
105
139
131
103
91
143
110
105
81
90
106
113
83
156
102
130
120
89
177
93
112
86
133
131
127
122
101
172
102
87
125
135
103
172
102
54
158
177
90
115
177
116
125
105
146
105
112
81
132
98
97
59
87
117
93
135
145
177
147
120
81
90
102
159
112
121
136
86
98
125
127
128
131
155
93
139
54
49
85
96
91
87
148
80
102
69
129
101
134
180
113
98
54
141
121
118
113
125
165
100
107
87
98
68
145
133
105
108
109
121
170
102
116
127
114
109
123
200
113
140
103
150
118
111
144
120
89
159
130
125
98
173
161
89
160
54
126
70
140
130
112
124
120
107
98
145
116
130
133
110
114
119
168
108
118
135
118
93
103
193
150
86
157
114
108
161
135
101
99
118
77
133
135
148
133
143
129
100
158
95
76
81
124
114
78
130
151
102
148
133
78
118
118
129
107
149
146
94
97
100
128
54
200
137
54
153
98
90
132
148
87
107
128
108
128
135
134
81
121
106
54
148
83
131
100
120
61
95
136
106
61
108
159
134
128
49
101
75
154
87
126
153
96
148
90
76
105
100
112
137
109
127
136
74
145
115
148
156
98
102
110
139
102
115
59
54
103
124
54
117
151
110
120
83
115
100
102
120
85
59
155
145
103
54
90
73
101
115
186
158
115
172
97
111
128
96
156
177
106
54
87
105
163
117
141
119
97
106
146
132
100
105
77
107
76
129
121
129
114
81
98
131
145
108
59
177
114
118
129
109
142
114
124
54
141
95
139
127
107
117
121
123
59
78
158
54
171
108
105
120
94
113
152
98
143
182
103
54
134
98
131
160
102
96
142
110
127
74
120
91
117
83
76
157
160
118
160
90
105
128
101
122
115
49
105
135
152
117
172
121
54
116
131
183
102
99
146
108
110
93
148
108
94
152
113
143
111
102
115
54
85
103
94
119
112
147
148
76
167
129
148
125
108
106
139
95
54
156
95
108
108
117
144
118
139
154
123
134
108
163
109
102
103
140
54
103
69
123
117
113
135
125
112
127
159
116
86
128
145
141
104
74
69
119
104
108
74
141
90
108
93
123
81
83
143
118
182
98
125
155
102
49
113
111
177
127
137
131
93
119
102
142
146
155
113
106
165
101
109
144
135
127
92
90
112
167
118
147
94
114
116
122
125
114
131
108
143
135
119
103
128
98
108
149
128
149
142
147
109
81
98
127
169
101
54
102
83
98
98
122
125
102
102
135
117
96
120
126
122
150
179
139
98
162
96
87
121
108
122
128
98
80
92
155
114
69
108
149
67
133
54
101
114
133
90
114
100
133
112
109
83
118
102
197
131
107
109
93
149
166
74
97
127
107
190
90
158
160
98
112
120
126
81
54
148
105
117
160
131
125
81
140
199
102
98
74
127
95
132
87
142
95
138
113
79
105
140
144
102
105
111
104
125
106
94
131
84
135
95
140
107
108
137
106
76
54
109
110
100
163
81
117
149
93
218
77
102
98
87
102
117
138
113
89
99
127
119
85
130
101
121
103
155
96
130
132
95
85
74
78
110
122
95
106
95
168
126
109
100
114
163
61
155
108
118
99
90
78
113
92
113
103
95
128
103
87
140
147
165
122
69
74
167
103
125
107
89
109
87
127
129
130
69
161
114
54
124
113
82
106
104
108
126
180
82
114
160
106
54
124
123
84
123
125
99
106
107
108
90
111
108
144
81
125
103
170
132
79
99
148
143
115
49
111
120
59
140
114
109
96
144
138
172
117
92
133
139
72
143
123
165
104
94
116
105
54
89
148
85
158
135
104
135
54
136
93
172
103
111
114
163
109
132
102
112
107
54
54
131
49
132
113
97
82
97
148
124
105
101
142
80
170
166
158
145
138
148
127
136
158
193
54
123
130
156
59
145
128
108
129
132
103
102
128
125
177
108
133
135
80
108
128
96
91
127
95
121
67
130
180
134
96
89
129
83
151
88
105
167
115
156
96
132
107
87
104
134
122
221
102
119
144
126
131
118
91
94
118
139
96
116
144
108
111
124
78
85
65
90
102
95
137
154
95
112
152
95
143
112
103
59
93
87
90
103
125
101
108
108
91
145
49
155
54
119
105
105
54
108
89
99
100
102
95
153
59
147
102
122
102
131
108
103
175
83
160
101
125
119
67
118
102
78
98
54
115
143
150
126
69
87
91
122
109
126
116
164
133
59
99
94
113
158
54
140
104
98
128
148
105
102
128
141
87
103
102
141
113
185
87
112
133
59
102
137
123
83
98
105
101
129
76
96
77
161
140
179
90
113
117
90
96
119
135
155
182
120
54
175
124
54
117
122
92
81
131
78
54
133
154
118
122
96
105
111
80
84
54
113
82
54
49
76
93
91
54
98
140
87
81
97
107
163
167
153
170
192
110
125
123
127
105
131
125
79
102
99
144
69
118
135
82
135
115
144
76
132
169
126
123
129
133
125
113
141
96
49
157
88
76
101
132
148
133
102
117
117
127
113
123
59
132
80
89
140
118
154
140
132
133
84
74
174
149
102
106
92
113
116
194
103
118
127
136
117
106
109
112
104
102
80
133
127
139
157
177
144
142
95
148
98
150
122
81
105
102
98
73
110
94
127
103
102
140
93
157
105
149
111
70
154
103
149
109
150
95
134
168
112
143
108
137
77
119
108
184
124
125
130
152
127
102
87
83
54
90
130
54
117
90
126
81
138
95
93
96
123
126
106
68
157
81
93
151
59
82
113
97
80
102
161
110
142
127
112
119
145
143
59
81
138
80
147
123
102
98
136
129
65
137
131
133
116
97
100
105
109
90
54
54
122
82
99
144
163
87
108
83
100
124
54
105
95
138
102
118
59
139
133
96
137
151
129
106
146
146
103
125
100
153
144
98
122
140
76
116
125
108
92
90
108
134
78
112
77
113
119
102
145
86
135
127
54
119
111
105
94
143
117
140
100
145
98
90
103
91
149
110
81
76
103
132
103
65
148
129
144
123
132
127
194
127
137
146
107
92
98
154
144
129
133
61
101
151
77
110
67
119
95
109
100
116
118
61
153
153
107
96
133
140
118
113
98
102
54
59
148
108
115
161
87
85
122
98
177
136
99
157
102
144
77
137
98
77
77
127
108
95
94
103
179
94
138
121
144
70
87
113
87
147
170
127
120
87
118
133
146
135
127
137
106
91
149
140
148
76
128
110
155
96
104
86
133
134
87
129
105
138
110
115
135
113
116
45
96
148
108
90
140
74
144
54
122
145
72
100
96
67
100
121
111
139
154
123
87
108
124
97
115
74
96
113
163
113
101
128
108
167
49
117
82
145
97
79
107
149
105
111
127
130
95
122
107
103
120
102
149
74
115
102
148
103
139
125
133
115
97
84
146
125
128
134
118
103
97
164
98
119
131
99
111
59
121
108
77
149
145
150
139
125
76
135
90
103
130
137
121
97
106
135
85
131
91
133
118
140
118
146
90
54
131
150
81
141
113
117
108
103
157
77
109
138
98
110
179
86
91
100
54
115
92
138
135
106
117
122
155
129
54
100
95
95
145
102
90
98
121
148
125
85
125
146
93
83
103
76
165
114
59
83
98
116
83
54
106
105
74
137
107
105
127
120
122
144
108
192
105
81
74
165
96
139
121
106
127
114
118
112
112
67
54
144
100
154
131
132
49
125
91
108
131
149
106
101
142
121
130
102
81
122
113
95
161
118
101
152
177
112
82
127
156
92
81
114
87
115
112
107
134
144
106
102
159
105
133
164
112
131
122
78
68
138
106
95
121
98
118
137
102
98
158
91
97
116
89
82
133
87
163
153
95
105
96
90
149
124
97
121
133
158
90
131
87
139
138
107
101
109
112
116
87
177
98
78
98
104
54
116
90
92
125
87
118
177
98
170
125
102
112
118
144
112
132
90
172
93
103
123
108
110
112
95
78
95
132
111
66
133
145
116
184
92
121
108
79
54
129
129
115
72
106
116
112
85
142
121
137
94
101
129
102
79
62
54
125
125
183
85
98
108
120
99
103
116
113
54
106
95
168
76
128
54
121
102
186
137
128
162
148
54
102
151
98
127
103
115
99
100
120
90
59
96
93
158
91
49
96
135
189
85
119
79
140
108
108
138
94
159
81
156
98
126
114
98
82
148
130
103
167
94
98
116
101
89
132
127
123
113
148
85
162
101
136
87
83
98
113
120
139
100
125
127
120
128
54
132
125
115
90
54
95
105
148
168
99
116
83
177
86
90
95
124
135
140
158
83
117
177
152
99
108
131
148
155
96
110
95
120
134
141
136
54
115
97
184
132
85
158
125
49
132
97
108
102
59
133
93
127
98
117
124
108
103
119
94
96
93
91
156
92
156
103
120
103
115
149
136
108
95
175
86
69
103
103
144
110
165
95
123
89
108
106
145
152
82
136
118
99
168
94
116
111
59
105
113
77
89
147
88
87
143
67
108
99
153
148
49
139
91
115
105
92
153
135
49
95
110
73
153
150
135
149
134
95
98
106
102
92
49
156
155
139
76
82
136
112
118
142
85
175
122
97
148
111
124
107
100
146
106
76
134
116
106
147
107
83
112
100
99
138
167
107
80
95
141
145
88
130
87
99
107
114
74
98
102
158
128
135
103
102
94
105
129
123
84
54
133
125
98
99
166
113
76
102
143
98
81
101
88
105
49
108
169
158
95
119
125
139
87
81
131
117
95
87
144
123
106
143
98
132
54
169
116
117
98
108
158
82
113
81
108
98
80
77
105
89
107
49
108
126
123
104
95
140
73
95
106
143
105
83
128
108
135
160
61
100
78
124
150
105
155
150
135
148
123
180
95
131
158
86
81
114
154
105
105
116
154
181
161
81
110
171
102
148
61
120
149
155
129
102
89
129
120
169
93
158
97
112
84
191
100
106
65
106
106
117
117
93
104
95
102
160
126
151
180
49
99
104
125
145
150
100
90
101
116
120
124
122
104
49
90
67
105
49
139
89
113
115
96
177
76
87
96
145
102
111
133
115
108
116
144
115
127
119
125
160
173
115
49
165
97
140
84
104
148
153
116
92
146
133
102
157
137
89
142
106
86
128
127
154
93
96
104
117
141
85
148
113
107
92
112
133
113
156
106
54
59
123
68
90
151
87
91
87
93
125
123
54
54
106
125
115
93
110
128
189
49
175
103
54
148
128
107
103
125
78
111
139
81
144
108
83
105
147
83
138
112
120
105
119
98
172
122
77
82
130
142
104
117
65
129
96
143
91
96
92
137
140
136
153
140
92
101
139
108
143
89
144
143
54
152
114
100
98
104
142
59
126
116
144
91
90
163
54
122
103
97
102
158
98
77
95
115
113
137
145
140
54
120
79
113
158
121
182
91
105
74
151
95
130
128
168
140
122
111
108
108
104
125
75
152
145
89
102
103
97
122
118
124
194
145
181
98
104
108
120
144
122
77
96
90
106
91
198
82
113
113
115
177
103
135
54
102
143
76
111
153
119
78
123
89
128
87
96
108
111
139
128
135
112
149
161
108
126
100
158
94
117
218
118
61
122
115
78
93
82
101
61
98
147
125
54
143
101
69
81
165
113
85
100
130
161
54
98
86
181
194
123
110
54
114
61
161
113
90
163
128
103
103
105
111
101
101
125
151
113
137
107
94
54
155
182
90
97
95
90
87
140
79
97
149
177
54
115
135
110
153
100
129
129
119
81
123
124
131
96
101
96
105
99
91
170
163
97
152
113
86
120
95
108
102
108
116
81
225
133
115
91
133
142
112
116
96
67
120
149
112
137
88
103
111
129
148
105
98
124
95
147
130
153
131
189
138
103
79
144
133
125
115
77
106
122
155
82
139
147
135
98
148
121
155
120
128
119
108
113
45
150
95
101
59
133
143
128
111
143
139
101
95
82
95
131
91
59
124
102
117
111
165
77
153
157
114
161
98
132
106
125
95
115
145
83
142
110
108
90
125
147
61
131
119
176
102
120
113
143
90
102
61
49
90
90
107
49
127
108
136
102
142
129
177
123
108
177
153
149
121
84
115
124
117
139
109
128
133
188
98
45
133
146
90
119
106
98
97
161
81
95
106
110
114
103
137
97
108
54
135
113
111
137
67
74
104
161
74
142
135
54
102
76
124
91
125
113
107
116
67
167
75
114
102
112
108
120
125
132
165
95
135
90
114
81
81
120
110
128
115
123
147
68
77
94
158
111
147
104
127
132
90
125
125
129
156
107
85
131
106
172
116
107
144
177
74
87
81
96
152
95
109
75
85
118
129
115
115
116
91
93
108
123
118
92
177
136
137
110
78
113
97
130
97
144
98
49
135
98
148
95
107
83
143
104
54
97
156
156
96
87
94
102
200
125
108
144
92
150
96
170
85
110
101
87
106
146
96
98
81
124
95
127
147
95
126
129
69
87
141
49
102
133
78
107
144
128
87
76
102
138
95
102
125
90
87
104
107
116
166
154
105
87
107
98
116
144
125
106
149
81
145
100
158
123
148
67
154
109
96
128
74
87
136
108
133
96
93
119
108
167
67
93
104
107
95
84
143
104
105
123
133
147
117
116
128
101
74
93
146
102
121
93
84
95
102
78
107
82
131
110
96
126
141
114
125
95
163
162
108
95
102
152
104
122
81
124
119
152
81
150
149
81
89
193
95
145
150
103
144
61
108
123
77
107
110
130
96
59
123
112
103
141
101
87
102
111
131
119
116
140
98
98
118
161
135
95
102
110
121
61
134
105
122
128
148
95
119
95
107
122
168
226
151
133
132
131
108
159
133
128
74
131
146
148
161
105
87
123
76
95
84
126
83
138
162
87
83
151
103
49
120
123
158
128
80
90
130
125
103
136
130
114
133
108
110
159
153
122
143
80
116
110
104
85
112
140
85
127
108
116
84
106
54
112
108
85
76
101
106
109
101
188
133
91
117
145
129
135
103
143
104
67
54
89
69
110
111
108
113
108
115
124
103
155
143
74
122
77
105
112
100
158
114
117
102
108
152
95
79
108
83
96
137
129
65
119
116
108
135
141
133
148
148
124
103
157
54
127
107
120
99
129
70
54
141
114
82
123
108
103
99
107
128
106
156
90
150
92
115
83
90
68
105
148
105
160
188
129
78
115
91
131
107
123
89
76
68
149
149
104
169
153
101
167
101
118
78
126
133
160
124
110
130
78
155
107
142
127
150
49
103
151
125
173
54
125
104
61
97
122
110
117
108
157
114
134
108
121
95
155
74
115
82
102
69
74
54
74
128
76
143
105
142
148
127
151
103
54
134
110
84
128
150
123
125
146
129
125
87
129
125
83
173
104
90
54
92
87
101
45
146
102
113
153
116
69
103
113
110
126
142
89
85
78
108
104
89
105
115
138
120
117
113
119
178
122
113
144
118
99
105
116
178
148
94
105
54
98
139
130
81
142
49
87
127
125
101
115
128
128
69
138
92
131
87
116
49
138
101
113
99
100
54
156
100
54
108
168
109
108
107
120
111
180
102
93
113
96
90
207
171
95
149
108
146
194
157
133
104
131
93
120
135
119
102
140
165
141
95
77
122
98
102
49
117
97
157
156
150
78
106
110
143
168
138
108
121
166
123
78
135
95
97
111
128
149
143
103
122
122
128
98
127
183
93
49
61
141
54
135
90
97
93
81
128
189
87
137
114
77
119
158
95
85
157
102
102
93
139
108
114
95
119
102
134
95
77
116
95
106
117
126
130
179
103
96
144
102
96
146
104
110
108
93
118
108
114
157
133
103
175
105
80
128
117
133
87
100
174
114
141
116
177
125
177
108
89
122
69
145
99
109
71
144
153
82
105
102
115
123
143
102
204
113
97
59
131
141
127
49
128
107
112
152
116
113
118
67
152
148
85
112
110
108
130
130
105
107
123
95
164
122
100
80
96
107
107
109
114
95
88
115
143
93
100
93
75
112
102
140
104
77
103
85
81
133
135
129
115
76
127
77
106
81
98
82
117
90
134
81
140
110
108
99
59
148
108
80
129
54
133
143
104
102
87
108
140
97
95
151
144
89
109
85
102
98
129
145
128
143
143
134
65
127
145
160
128
134
180
102
120
179
90
54
122
143
102
112
76
99
54
74
93
77
90
72
111
143
124
129
121
145
157
93
158
103
82
109
123
169
157
115
88
96
81
97
137
74
90
148
133
94
92
155
102
128
92
123
123
83
130
99
125
126
135
151
105
117
54
125
117
123
133
90
134
83
90
153
107
145
102
98
142
105
108
120
179
113
76
105
86
130
148
94
102
145
130
113
144
124
96
101
122
122
93
127
54
115
98
125
106
90
108
74
135
128
176
108
129
124
77
87
149
172
87
98
98
108
184
54
105
148
125
116
137
143
148
113
148
131
108
138
81
105
95
131
101
42
108
103
196
84
134
112
103
135
115
143
54
153
73
102
184
113
74
95
141
115
106
126
106
114
133
82
93
144
119
122
72
180
158
102
95
144
127
125
153
121
137
156
131
108
76
107
88
103
128
159
174
105
123
96
129
105
136
74
142
102
105
167
95
81
117
54
65
68
77
128
93
96
80
86
135
178
182
91
76
119
95
140
126
79
157
108
145
124
54
112
85
87
122
74
120
92
89
102
177
182
124
132
137
140
128
85
84
148
98
85
90
110
148
107
95
157
170
102
98
102
122
96
76
148
145
131
108
128
135
74
141
102
127
148
92
142
124
165
96
124
103
90
125
124
126
93
139
84
114
175
73
102
130
125
87
129
143
141
159
127
141
98
141
102
163
124
90
125
74
93
81
147
128
118
115
76
124
97
128
134
103
115
101
113
116
49
105
59
112
116
100
95
91
112
96
76
95
149
133
127
95
180
77
125
131
123
77
142
142
83
93
112
95
149
103
123
125
140
108
98
129
122
101
177
131
120
163
151
115
150
142
136
110
108
113
142
113
92
115
155
168
98
110
95
160
139
94
122
94
87
184
54
144
117
87
103
154
72
170
131
85
127
118
108
95
122
113
129
54
124
131
146
102
94
119
156
112
104
87
120
102
139
107
108
91
102
96
140
112
127
88
153
130
108
166
78
81
100
125
112
110
137
121
97
139
99
102
76
98
130
83
108
82
108
155
118
123
135
152
156
165
143
103
81
131
107
132
74
110
168
105
107
96
156
143
172
91
110
135
134
172
135
108
119
105
147
135
77
85
128
142
77
76
121
118
96
123
97
149
68
94
103
108
161
130
177
135
108
89
153
122
127
148
134
123
136
113
54
136
128
101
139
129
130
87
90
151
175
96
140
129
74
79
119
49
143
150
96
127
120
177
139
98
109
81
139
125
139
103
120
162
117
134
105
108
127
131
109
97
147
92
144
110
91
147
125
143
137
78
116
138
93
83
54
115
127
153
106
101
102
115
103
153
165
144
135
163
119
127
101
143
172
108
76
102
75
54
69
142
102
102
108
140
163
67
54
68
179
109
180
102
106
134
148
97
120
87
61
98
82
167
74
113
128
129
146
124
101
133
108
118
78
119
150
116
133
151
116
112
144
128
160
83
49
122
103
106
142
133
143
107
99
113
79
93
96
85
102
87
54
102
118
108
93
125
122
141
142
130
95
125
148
118
163
111
146
112
156
137
131
59
155
199
76
110
148
128
106
164
74
127
155
98
160
180
133
125
102
108
139
102
81
101
139
95
133
159
107
115
54
113
101
114
95
181
90
103
117
136
158
112
158
149
130
128
121
134
124
161
130
103
109
131
116
113
143
87
107
127
123
149
103
142
95
96
115
115
49
96
121
54
97
54
76
107
114
108
59
95
87
79
77
108
185
90
128
94
212
163
105
102
113
107
119
127
139
81
98
87
93
97
110
129
116
77
76
131
94
81
164
114
143
129
105
146
49
91
125
133
101
148
76
123
192
86
106
142
131
123
81
134
123
49
108
125
90
101
146
190
158
49
157
102
131
133
145
54
96
151
108
65
83
129
133
167
158
126
87
108
140
148
102
77
137
87
83
102
230
105
114
81
54
96
140
139
123
128
83
114
117
138
120
85
140
112
116
76
80
89
156
129
103
105
142
82
115
191
91
49
95
128
110
102
96
115
97
150
105
127
121
180
135
155
49
142
124
154
136
93
54
138
144
111
145
120
99
119
107
103
170
87
59
131
163
191
81
115
73
142
80
87
169
144
77
139
69
116
97
168
139
145
95
105
129
97
103
99
105
157
154
157
100
132
171
125
97
123
97
80
126
150
172
146
96
177
115
129
127
127
127
80
95
191
132
119
102
131
163
127
49
141
95
132
67
49
134
90
141
77
216
116
101
95
98
143
93
102
119
110
129
102
72
59
111
83
118
76
130
113
144
108
179
121
140
102
143
85
142
79
123
98
147
49
96
149
108
134
129
114
145
126
160
137
140
78
128
49
108
76
98
139
129
143
123
103
159
141
111
98
144
106
112
132
140
157
145
115
131
96
98
119
120
49
139
85
95
95
54
108
135
165
152
54
92
124
140
147
76
87
129
95
127
119
158
127
143
108
102
87
92
81
140
123
125
141
95
118
177
117
92
116
94
158
69
119
135
100
93
112
77
135
125
124
200
177
103
148
85
93
113
120
150
76
98
110
113
68
143
140
114
81
115
164
113
116
95
134
54
94
54
103
129
54
121
96
99
98
125
146
89
194
94
124
135
111
112
136
122
200
168
115
81
105
118
126
101
74
162
49
61
99
144
107
90
108
145
103
125
77
106
118
117
130
138
61
81
155
117
142
134
99
79
65
120
103
113
145
113
104
92
169
123
83
108
148
95
95
102
127
91
136
106
146
115
121
54
135
54
126
106
148
124
140
173
101
221
150
138
94
98
78
99
85
61
103
101
74
87
89
102
118
105
124
131
96
133
148
134
106
136
119
106
54
124
146
129
102
98
76
99
74
152
49
108
95
141
125
131
54
140
83
123
154
79
202
143
130
141
177
134
95
97
98
80
98
190
108
140
132
76
128
134
77
158
59
105
125
80
171
126
107
114
107
127
96
113
116
49
108
133
135
81
82
105
91
104
74
88
124
85
103
102
146
93
143
100
141
141
128
117
113
135
131
76
140
128
105
54
95
102
99
142
105
125
95
128
81
102
131
87
108
152
91
111
125
85
110
121
84
104
128
88
49
108
94
77
101
84
129
151
161
102
54
107
112
199
104
138
131
143
124
160
107
69
148
108
105
150
146
146
74
89
112
152
68
129
159
54
141
155
95
112
119
102
114
138
104
113
113
78
98
116
148
107
69
124
101
96
147
108
138
99
117
122
145
140
139
156
80
186
103
136
131
108
106
120
89
105
54
107
113
102
124
145
104
217
160
127
69
116
134
119
98
101
97
98
136
89
96
125
104
108
101
137
82
124
139
91
119
95
103
147
124
127
103
172
120
141
149
147
87
97
69
129
98
111
161
124
137
107
114
125
103
120
138
99
99
144
108
103
113
96
106
95
175
123
106
128
110
76
89
153
113
76
123
125
126
109
140
54
95
158
122
81
54
111
130
148
105
85
98
125
90
83
114
108
156
54
78
110
133
67
54
144
144
135
140
150
135
158
113
114
128
119
135
102
77
87
109
102
134
132
149
161
110
95
54
94
125
107
108
49
103
54
98
130
122
135
108
82
145
118
149
118
125
93
108
109
106
117
125
112
144
102
177
155
102
121
191
120
54
131
125
91
109
113
156
96
134
126
78
141
161
138
111
103
123
93
113
136
104
95
78
123
119
102
74
125
106
122
140
152
112
108
103
120
122
177
74
144
133
104
126
54
138
84
148
124
137
106
106
116
157
150
49
125
127
107
104
86
107
115
103
54
143
49
84
132
101
84
95
93
103
95
121
120
167
152
99
120
83
54
115
105
120
115
135
130
97
130
123
106
93
134
154
102
92
163
126
124
206
113
95
81
117
123
104
118
99
143
83
83
127
119
111
177
101
87
119
132
103
135
108
98
129
120
135
119
95
113
127
160
114
142
78
131
124
99
129
185
106
107
77
98
125
76
113
131
61
92
132
87
92
134
95
161
131
95
158
61
140
162
103
108
125
133
102
124
54
82
114
101
90
54
112
103
126
109
90
108
124
155
102
125
155
92
157
100
108
120
116
139
133
103
49
83
138
129
145
117
133
133
119
92
100
109
49
54
95
107
94
101
102
96
93
87
102
104
142
108
115
177
130
102
146
132
144
109
107
77
153
125
99
87
96
86
111
133
145
112
125
59
124
130
121
112
114
117
145
127
96
135
131
77
76
131
111
78
84
127
82
149
123
76
140
102
74
148
108
85
134
81
73
80
97
68
150
148
96
98
59
148
112
128
130
113
124
135
108
107
87
95
89
150
127
112
98
114
93
169
184
113
131
97
95
129
144
96
108
128
146
94
49
109
170
105
54
61
106
83
54
54
127
135
67
98
175
143
134
134
120
156
142
148
111
90
108
122
102
126
143
124
169
154
166
133
103
76
98
81
108
105
107
112
103
172
117
82
127
105
178
165
95
117
127
96
85
83
81
156
118
76
98
116
54
61
111
100
129
91
116
108
149
133
115
116
102
115
130
93
83
103
74
116
95
144
94
121
112
121
67
150
100
100
90
130
149
98
49
127
125
98
108
123
107
54
110
86
54
139
118
120
138
105
95
81
125
80
138
119
131
108
108
105
134
135
145
117
135
93
87
127
139
90
68
100
131
98
123
125
157
131
158
106
133
95
91
68
113
95
103
103
119
103
167
95
104
107
156
74
127
89
161
103
95
134
100
103
82
98
141
148
95
101
105
120
54
139
107
105
98
101
139
99
146
171
110
84
104
120
98
117
105
220
135
81
137
119
105
126
89
115
96
95
114
80
155
98
107
108
105
102
161
92
102
118
97
135
81
111
95
104
158
146
133
154
141
69
114
145
133
54
119
125
143
132
90
86
127
77
133
67
90
74
98
140
112
54
137
114
102
97
120
196
128
117
112
117
54
117
59
107
123
125
153
77
122
59
106
83
100
123
95
94
69
81
144
148
94
115
135
104
184
143
101
160
177
83
93
96
67
108
77
100
123
140
147
89
143
200
104
95
136
131
130
137
49
76
108
125
163
105
94
165
147
82
125
164
122
102
181
135
85
129
122
98
109
93
116
116
137
105
129
87
109
74
128
179
105
143
96
99
90
125
118
128
98
108
102
148
108
147
91
102
125
116
80
83
131
95
92
83
164
135
144
107
108
120
108
135
143
120
120
90
120
104
107
120
128
89
114
177
131
77
118
170
54
115
98
100
108
117
76
117
137
106
138
120
61
78
135
74
119
97
98
77
115
106
127
107
136
155
157
49
98
106
142
109
143
128
108
137
127
138
145
135
94
123
128
95
85
147
123
158
158
98
123
81
96
59
173
125
103
78
115
97
97
125
125
102
113
142
98
180
113
159
143
81
87
76
100
105
90
97
143
140
76
147
83
118
104
100
131
184
135
160
124
106
158
113
158
99
98
152
144
95
119
107
130
127
120
178
126
120
102
153
141
141
135
186
152
120
143
100
121
119
135
118
143
137
103
140
78
122
103
88
108
87
142
79
127
141
117
98
152
96
102
129
74
89
85
118
131
158
118
113
98
148
113
110
81
182
146
93
182
107
95
205
106
113
91
95
108
145
127
133
117
95
119
143
157
93
106
98
145
125
102
83
157
82
140
133
90
108
100
107
125
117
157
70
81
101
122
49
110
114
98
151
105
148
102
152
130
109
85
108
127
142
118
95
132
98
68
82
113
95
97
142
167
126
108
90
54
89
157
144
100
118
129
114
132
110
180
110
82
135
131
135
83
108
143
201
120
149
172
123
158
79
116
124
115
93
114
130
117
103
119
119
103
139
171
83
108
117
100
92
97
54
150
108
97
125
150
131
92
125
117
123
119
65
116
100
165
122
99
54
177
160
154
114
108
98
117
87
97
113
71
106
147
125
103
93
124
124
108
119
142
82
76
117
201
85
111
146
82
89
77
96
146
177
93
78
95
107
131
199
123
164
182
165
146
84
144
115
157
97
91
93
120
112
79
149
74
107
54
102
167
148
156
142
90
83
103
121
102
87
108
100
111
161
90
74
164
95
112
108
126
104
108
76
113
111
94
167
83
185
130
68
113
125
94
155
140
135
103
102
106
117
107
123
103
131
190
133
128
109
89
77
118
85
61
122
126
142
107
92
120
105
105
104
113
113
137
83
59
115
102
82
150
165
148
145
106
194
54
106
95
135
133
108
106
145
119
93
113
81
129
139
110
140
90
163
98
138
165
158
98
164
106
49
127
112
82
102
169
128
145
123
110
84
81
116
151
100
124
153
124
133
49
99
117
131
105
151
106
109
172
97
93
148
136
149
98
140
110
102
167
106
113
136
156
141
128
83
125
54
143
114
150
153
121
88
158
71
95
107
78
108
95
122
136
104
133
108
133
127
54
111
142
114
163
123
105
54
54
113
87
105
98
113
143
67
76
105
110
81
108
97
107
118
129
146
148
107
122
120
143
68
96
139
148
119
83
149
120
115
67
157
122
97
112
102
113
116
90
78
94
127
71
68
91
161
156
91
113
54
81
144
97
104
135
135
106
138
142
132
102
49
131
139
135
152
108
103
105
54
68
102
131
87
144
96
59
132
122
141
111
121
76
108
54
122
147
87
177
77
122
124
123
166
145
54
100
96
157
100
76
132
108
82
81
140
67
125
90
81
157
83
124
103
81
110
129
91
96
157
124
127
127
95
95
81
122
108
76
130
169
144
78
121
135
132
148
163
95
115
125
89
103
150
97
97
102
141
73
102
87
86
118
99
156
122
54
128
139
54
82
97
98
122
125
105
159
131
140
145
89
133
155
108
119
96
131
81
124
131
85
95
125
81
98
82
143
160
102
77
78
85
67
134
102
109
126
54
49
108
117
105
107
105
99
128
90
100
177
95
160
76
135
95
102
85
74
133
102
101
117
54
146
84
131
145
111
59
129
125
121
145
115
98
113
98
128
138
81
95
95
130
127
126
96
95
158
114
91
135
141
115
101
67
131
135
108
105
74
139
54
139
114
102
106
90
100
157
149
107
54
124
98
67
152
147
103
82
61
102
160
118
116
99
119
54
114
90
120
102
120
151
131
90
113
125
151
101
127
74
139
135
59
168
115
54
136
123
177
104
102
113
135
93
180
163
124
98
158
81
161
158
115
216
90
74
146
129
135
162
136
135
127
93
87
121
151
68
74
121
128
203
106
128
49
106
123
98
116
182
116
144
122
131
54
112
116
154
147
128
157
146
110
149
98
143
97
98
92
110
182
108
112
114
92
147
143
151
144
124
59
121
90
83
93
98
110
122
133
109
148
132
88
104
139
105
110
197
102
127
87
116
129
91
79
102
85
108
148
101
157
158
149
135
93
168
106
132
86
90
144
145
140
101
155
118
135
54
103
91
102
89
77
85
144
82
117
139
121
123
100
91
124
103
123
54
145
99
135
102
97
101
90
80
81
119
137
146
79
146
84
93
99
129
128
131
181
87
83
131
140
102
115
91
92
122
87
127
103
93
103
113
49
87
117
73
127
116
102
130
132
120
74
49
142
165
98
145
98
74
106
95
104
123
95
103
107
134
119
87
78
118
91
113
133
153
107
143
54
96
146
123
150
170
102
131
115
98
134
141
175
122
140
139
98
115
143
172
87
163
103
131
97
151
147
90
119
104
123
93
108
98
127
147
87
137
116
97
102
130
112
67
108
117
118
54
82
116
115
174
113
193
59
132
117
123
102
125
104
113
146
107
54
126
135
111
96
108
136
135
68
119
114
102
116
94
126
165
54
109
103
103
159
133
142
148
160
54
107
108
128
124
131
49
82
130
169
96
171
103
70
141
54
103
135
124
132
98
161
81
78
155
126
102
162
145
128
143
148
104
96
93
138
45
114
164
86
167
140
131
125
120
106
94
139
80
122
116
89
74
123
148
184
139
123
80
131
95
74
77
116
134
98
143
123
148
96
120
148
91
108
154
178
192
80
153
143
166
117
154
114
65
95
134
90
113
143
142
113
123
154
49
135
127
93
153
148
147
99
104
138
107
143
95
157
49
59
139
119
106
113
81
144
112
102
99
108
125
129
191
98
133
145
131
132
127
129
131
117
78
77
116
101
67
115
103
113
141
124
85
147
83
78
81
98
94
133
77
84
98
100
107
86
139
149
95
129
176
80
86
151
82
118
87
49
77
98
110
104
94
136
122
95
107
77
112
103
114
144
98
76
99
144
137
121
158
119
165
109
109
122
81
90
156
107
153
108
134
92
92
130
49
121
84
188
119
105
82
121
133
115
54
74
54
91
45
161
108
127
131
87
95
105
136
140
112
158
89
120
93
102
143
98
139
111
140
150
142
78
143
146
109
102
109
86
95
102
148
105
191
112
106
113
148
140
96
141
103
80
134
122
177
198
75
96
103
117
155
90
168
107
101
122
107
137
149
127
139
94
125
54
82
103
92
98
123
130
87
114
98
95
99
99
68
124
80
49
180
97
121
104
135
107
158
90
90
95
135
158
96
101
102
121
147
124
139
102
125
118
140
120
104
126
138
81
108
74
78
89
85
172
83
137
103
126
118
113
111
119
76
93
126
93
132
101
162
138
146
107
49
116
113
90
54
59
124
154
92
83
113
81
54
113
111
155
102
194
148
107
69
102
54
85
100
68
126
115
109
125
113
98
149
95
102
177
92
81
126
77
92
139
101
138
94
175
124
133
137
82
82
131
142
89
96
78
124
150
103
102
97
120
82
117
78
86
80
112
104
142
83
135
116
142
177
79
49
54
102
90
143
168
96
96
125
140
212
108
118
102
143
115
100
133
86
102
131
69
134
110
94
67
107
174
89
95
105
124
112
136
118
98
122
102
146
159
153
90
125
120
163
113
98
79
146
113
189
104
116
113
179
95
112
200
120
126
143
76
148
123
177
118
103
107
179
103
134
92
136
49
95
95
153
111
120
144
132
102
76
54
102
103
102
144
54
100
145
186
59
87
91
78
54
87
98
61
83
78
144
95
102
130
59
146
104
154
156
156
103
167
128
100
146
143
74
101
133
168
112
74
129
118
111
102
112
87
148
111
134
78
98
54
88
102
95
73
108
108
54
83
168
133
74
87
98
80
118
113
153
148
140
171
152
85
113
149
130
101
95
113
98
103
80
98
125
49
103
54
123
137
124
81
130
49
102
96
95
148
124
123
130
143
93
77
106
108
110
74
140
195
117
87
136
114
83
104
90
124
148
130
102
109
134
81
149
119
118
87
148
154
142
125
133
128
141
158
77
73
124
145
100
93
155
88
112
139
128
90
54
95
108
186
59
139
108
112
177
131
127
107
72
75
117
158
124
59
129
81
87
111
118
87
124
127
102
105
147
104
167
155
82
128
131
106
85
81
131
117
115
125
74
84
81
102
77
111
54
169
148
91
190
159
97
91
140
98
139
54
110
169
119
162
96
108
81
168
54
81
148
102
89
160
130
171
105
142
138
158
77
124
98
161
117
167
124
145
143
89
106
96
131
98
125
93
116
144
177
145
74
154
184
143
93
102
127
129
102
125
108
106
114
74
136
148
135
160
111
98
146
101
49
110
90
168
85
133
97
191
107
97
98
140
84
127
138
115
102
54
125
98
115
95
104
182
101
102
152
101
123
127
129
118
166
137
78
106
112
186
54
100
108
54
162
103
90
124
54
110
81
132
124
118
67
140
105
87
141
130
116
139
157
96
93
78
69
109
49
96
125
83
104
76
94
152
138
93
142
54
138
148
93
69
96
49
105
163
152
97
112
116
146
77
128
105
105
98
129
102
165
126
98
93
102
124
124
148
197
91
79
149
169
108
67
158
126
165
95
125
101
102
126
150
101
77
133
125
90
108
95
135
122
166
137
108
104
74
85
93
168
102
194
89
54
112
61
122
106
145
160
104
158
118
172
139
135
234
128
132
106
81
102
86
104
155
129
104
81
126
117
111
54
116
100
104
80
78
114
59
129
171
95
98
124
148
85
98
186
129
96
115
113
90
123
93
160
106
174
150
98
143
90
148
102
123
54
101
116
74
143
165
130
154
149
88
96
151
155
127
177
149
123
102
174
107
133
98
85
112
105
87
108
108
171
124
131
97
83
103
95
76
125
95
98
121
99
158
165
133
125
124
99
159
141
126
115
96
59
127
128
79
120
108
91
118
87
86
123
122
131
108
95
133
93
95
85
105
128
105
106
67
128
155
76
140
89
93
107
107
103
122
147
102
81
102
78
68
128
90
85
109
128
100
120
108
158
101
126
117
76
125
103
74
155
144
49
177
159
78
122
106
190
59
49
128
101
111
69
128
61
80
169
131
103
140
154
133
148
119
116
91
108
102
139
79
85
93
117
148
93
162
94
102
178
144
45
98
142
109
119
113
72
141
80
101
77
135
106
108
176
200
106
130
129
103
104
90
102
112
118
112
128
141
102
165
88
118
174
102
170
68
148
87
132
134
102
177
146
106
87
108
121
118
107
103
77
101
77
85
122
74
97
106
129
133
95
158
87
76
78
81
120
98
181
100
139
165
105
119
107
112
95
139
83
125
163
108
104
78
98
132
108
98
158
128
83
141
150
125
109
148
155
77
54
106
115
131
110
134
158
131
83
105
115
111
128
111
138
120
114
117
131
90
109
103
110
128
118
108
110
80
136
164
108
145
100
91
82
54
109
114
134
108
133
125
116
59
139
70
124
139
139
155
116
130
110
113
115
98
145
98
115
143
143
81
81
170
120
177
93
123
93
80
103
113
99
127
149
115
135
129
146
105
155
118
158
118
133
106
115
95
157
129
113
68
123
108
118
134
90
147
104
93
105
95
136
108
210
49
190
156
106
109
122
111
134
126
158
103
115
112
128
108
121
143
117
54
54
145
127
88
142
91
131
133
59
117
93
113
77
102
123
113
99
113
133
127
87
127
148
121
155
158
120
105
140
139
162
129
139
103
131
114
106
54
116
110
143
124
113
121
95
130
95
114
96
132
140
194
59
115
54
97
90
99
162
101
118
94
113
129
159
129
143
91
107
116
110
106
61
114
146
92
105
142
67
153
102
102
143
54
133
120
59
157
102
188
143
76
98
96
108
127
131
103
124
123
77
108
161
105
82
104
94
90
125
118
74
101
133
93
201
94
98
111
138
98
99
93
81
108
139
161
163
69
161
133
143
142
125
88
147
97
135
112
54
93
125
154
109
133
164
161
129
107
129
95
158
146
123
95
54
129
128
127
95
77
105
113
59
130
143
109
105
108
59
161
155
142
113
102
93
86
90
54
120
118
141
95
87
91
99
111
124
98
54
104
132
105
121
124
89
97
98
92
123
134
101
153
135
65
141
111
93
108
119
116
78
112
180
133
112
108
103
149
101
143
111
106
128
62
59
135
95
104
149
95
117
102
146
123
148
85
133
146
190
82
118
125
127
99
117
112
91
90
157
69
102
90
105
135
67
127
114
102
134
96
153
83
118
54
77
126
81
69
82
109
67
124
107
81
147
132
128
105
126
83
90
128
108
120
93
118
100
69
128
90
94
167
76
133
131
125
106
139
76
103
139
128
109
132
120
95
148
59
112
166
165
125
141
81
158
148
108
111
102
177
128
67
76
127
142
144
116
146
97
112
95
120
119
108
80
164
102
135
129
129
163
115
126
192
141
93
195
90
127
146
145
144
113
54
153
123
113
107
109
89
83
49
83
104
80
124
148
150
107
109
134
180
114
61
49
102
129
121
119
84
145
177
194
154
109
135
194
107
96
161
101
123
74
151
81
78
115
112
189
93
98
146
125
96
106
132
110
83
63
77
128
132
103
91
134
150
98
177
94
105
155
118
131
116
125
135
150
112
127
114
99
54
102
161
146
161
113
80
82
95
139
65
98
151
120
81
107
83
162
77
95
123
122
177
142
120
149
186
105
113
127
59
119
111
104
110
129
92
113
92
118
172
84
113
180
134
127
126
133
67
139
111
76
88
141
54
112
69
108
77
113
105
137
131
122
96
94
107
84
96
111
105
126
85
101
139
95
54
135
108
102
85
92
179
125
81
80
74
103
119
87
102
109
185
79
77
156
179
93
49
87
88
80
87
150
93
129
115
132
100
102
139
84
108
117
98
121
82
108
114
179
130
116
108
82
95
93
106
109
168
144
81
162
95
161
157
70
113
145
122
148
155
118
97
120
74
98
81
106
135
91
103
151
136
54
82
124
185
74
95
113
45
114
142
149
165
131
77
54
59
157
124
117
139
131
49
100
98
125
145
94
81
98
100
140
144
103
161
117
95
82
110
114
135
134
81
102
125
54
131
122
91
112
128
159
98
110
100
101
129
123
54
77
97
90
69
112
148
158
49
130
103
167
49
143
110
97
109
108
76
87
108
114
61
144
74
126
140
147
134
186
96
119
87
95
45
103
134
54
108
121
87
108
102
128
103
122
168
54
95
54
105
144
152
54
172
108
118
115
54
156
98
108
98
134
123
121
88
200
88
91
129
100
118
165
133
95
133
79
108
163
142
74
214
99
87
74
123
113
125
113
62
86
120
87
54
86
67
111
81
142
177
95
129
140
119
116
102
177
179
108
89
140
114
99
108
174
88
112
83
94
95
62
100
158
100
110
108
114
130
103
74
94
77
125
151
158
83
87
135
92
160
114
96
76
95
157
111
131
108
101
138
132
110
118
121
129
103
103
82
143
190
142
77
129
137
108
149
81
103
128
146
135
154
130
98
79
103
103
120
135
146
105
96
118
96
130
87
95
70
131
100
101
136
91
91
152
107
125
115
111
126
147
115
95
163
141
126
96
101
119
148
136
85
98
106
54
103
143
76
108
142
128
144
133
101
133
124
139
102
113
95
146
110
118
122
123
200
154
149
106
103
106
113
106
151
146
87
108
140
147
162
76
95
135
106
106
122
54
134
67
88
121
87
132
113
133
103
78
135
173
54
113
129
116
128
74
121
54
98
157
67
162
133
131
150
114
136
100
49
102
125
82
54
139
97
77
138
180
148
120
127
54
154
112
133
139
95
135
90
108
102
132
117
69
98
90
113
117
120
194
82
106
98
117
98
107
103
107
124
59
132
107
94
98
78
59
106
156
138
105
84
148
84
157
148
102
112
144
120
125
119
112
128
180
102
101
104
144
136
147
132
119
80
117
103
112
113
144
118
194
141
105
139
102
85
141
154
122
112
161
95
113
146
107
112
120
133
179
59
145
174
99
155
77
148
88
87
135
95
102
150
116
68
116
120
109
105
111
104
122
141
108
102
135
148
169
130
87
141
77
59
89
128
105
96
105
81
76
134
81
128
148
76
124
103
100
111
122
177
82
89
54
110
109
175
96
144
123
82
103
74
129
128
69
112
59
109
54
132
91
144
105
85
49
108
102
125
99
135
83
110
49
110
161
124
81
125
103
69
125
81
77
199
113
139
122
54
124
96
124
86
54
129
49
98
107
178
148
105
93
116
109
92
149
83
101
199
148
137
54
89
128
87
138
115
95
138
93
78
165
87
126
131
108
81
74
106
118
130
155
114
102
110
115
98
54
102
89
166
108
108
91
76
177
144
127
131
113
93
89
127
125
128
49
130
120
108
88
164
144
85
122
112
146
127
177
98
54
115
133
99
108
104
156
68
147
106
95
113
108
140
97
131
120
123
133
68
124
125
95
185
122
101
119
109
135
141
85
128
135
154
125
117
112
145
130
118
114
59
134
93
118
78
123
83
144
93
127
83
59
140
81
127
170
100
147
98
98
158
125
141
133
110
134
77
124
90
124
61
96
74
97
96
98
151
126
117
81
113
131
110
102
141
82
80
113
95
125
114
133
125
49
133
102
127
133
90
103
54
87
177
106
156
95
111
161
146
95
67
81
59
131
138
159
123
128
144
103
139
83
149
87
160
121
112
102
139
104
102
93
73
95
147
95
161
110
93
69
134
102
157
95
90
101
131
127
79
146
148
131
98
108
96
132
111
138
120
82
143
149
75
82
114
108
77
102
67
112
54
136
74
101
111
125
125
92
104
102
116
172
143
149
92
117
171
147
111
180
129
181
94
77
111
131
119
97
81
102
102
116
90
103
133
89
173
97
74
103
108
137
93
125
186
131
113
155
159
122
131
118
144
124
98
125
99
108
163
86
184
124
103
121
117
184
174
180
108
103
115
143
178
120
108
108
148
80
54
80
77
127
74
148
118
92
140
188
112
74
121
98
122
129
90
133
141
85
83
104
85
112
108
90
169
115
95
103
108
111
120
98
81
133
139
91
90
83
122
108
104
139
90
83
155
146
102
160
105
157
100
115
108
167
118
116
118
128
135
149
139
166
135
112
143
125
82
91
110
61
133
61
90
83
143
99
133
93
90
49
115
139
108
73
102
160
98
108
143
138
123
179
78
104
139
108
54
67
105
73
102
115
136
110
86
132
148
77
125
129
123
153
159
93
99
135
125
67
117
138
85
54
128
107
102
113
95
128
117
112
177
141
95
54
49
76
123
131
85
92
127
128
149
143
89
92
150
107
104
135
200
49
101
87
115
105
135
54
121
139
146
80
67
81
138
131
138
90
139
102
95
161
98
88
95
95
124
54
96
118
122
102
102
89
105
121
98
124
98
165
106
108
125
108
150
106
125
139
100
103
120
108
114
81
108
147
156
131
162
112
124
54
167
143
155
149
153
133
113
146
154
135
89
106
111
129
141
123
113
175
81
74
126
155
83
111
62
102
69
147
77
131
74
190
147
54
113
108
102
93
120
113
45
126
188
106
107
128
107
216
119
144
172
160
137
98
135
162
76
106
111
131
133
147
104
133
117
117
94
114
139
106
148
132
162
133
127
161
54
86
108
118
104
175
145
120
80
128
90
124
113
123
112
63
140
67
125
81
120
133
123
149
91
74
114
83
81
143
103
134
133
119
122
92
110
95
135
187
120
122
54
129
128
116
155
124
102
93
125
82
103
161
125
95
88
113
91
116
103
134
97
108
138
167
87
81
104
102
99
59
78
106
103
95
133
101
95
117
148
133
116
108
117
110
120
141
76
125
106
114
125
81
167
49
180
131
113
126
154
105
110
74
121
133
115
156
92
116
132
144
112
68
143
79
106
129
117
125
73
154
108
102
125
99
116
143
129
111
54
95
124
139
61
125
107
80
138
57
115
49
143
112
159
142
120
165
128
101
123
102
145
81
130
124
129
98
98
144
148
139
124
54
81
115
54
99
103
150
87
87
98
113
59
54
108
102
132
128
132
81
90
104
148
170
80
143
83
148
122
95
162
54
107
158
105
69
95
103
158
101
98
149
59
133
132
128
103
110
97
144
106
113
81
118
87
108
126
49
133
103
136
125
119
122
96
146
148
112
97
154
105
110
143
102
98
107
118
98
127
119
111
117
98
61
103
145
148
105
123
117
131
95
123
147
126
125
109
118
124
140
108
135
90
105
160
87
103
168
94
81
102
118
119
96
113
78
121
132
146
152
77
155
143
123
123
158
102
161
81
90
77
133
136
139
130
144
102
80
82
108
148
73
101
128
103
95
114
125
142
116
111
116
129
136
148
140
77
115
137
107
108
115
87
116
110
135
102
109
116
126
108
85
144
119
127
137
131
92
206
107
117
102
111
89
89
82
98
82
77
77
112
122
170
89
54
105
132
128
77
68
194
98
130
78
110
151
120
93
142
80
93
156
125
157
113
134
142
98
97
174
123
98
104
177
82
111
94
132
123
91
112
120
123
161
124
95
113
161
129
73
123
95
82
101
120
121
117
112
97
122
135
128
99
177
144
120
153
106
101
180
132
112
84
108
138
91
54
99
88
102
102
74
123
151
122
132
135
67
95
141
74
167
54
95
81
76
82
108
76
49
148
177
96
102
180
145
165
224
202
73
152
181
133
102
134
166
116
137
74
97
98
130
112
88
49
158
90
144
103
81
99
115
127
129
158
101
126
130
102
93
146
143
148
108
113
97
108
49
81
144
141
148
168
112
163
110
139
78
108
108
98
146
140
118
114
113
142
122
98
172
149
123
90
105
200
85
105
93
81
119
148
138
95
102
144
113
54
157
128
102
82
102
127
103
74
67
81
156
120
157
140
131
157
143
100
77
157
150
127
144
95
107
149
115
131
94
146
129
119
121
114
98
54
91
74
90
122
103
77
90
125
113
98
118
111
192
146
78
113
103
165
71
106
49
119
100
98
99
108
185
115
98
100
82
96
133
135
129
96
139
132
74
126
147
108
83
111
107
105
124
118
132
113
139
132
95
154
81
83
90
83
57
54
159
108
164
146
132
74
54
136
121
151
124
106
104
77
102
80
129
143
83
116
116
107
97
86
81
137
98
89
115
105
101
135
59
104
131
131
118
133
76
152
144
88
164
85
155
110
152
177
128
100
65
108
101
164
87
95
103
102
105
146
93
96
125
123
68
116
102
128
96
79
90
90
144
133
139
141
108
102
96
112
115
128
120
78
112
120
138
124
177
160
108
146
84
83
143
166
113
90
117
112
147
82
113
96
108
108
113
105
141
83
67
115
126
125
85
96
139
54
90
81
69
102
81
166
140
83
128
127
92
98
117
148
148
115
122
124
97
133
131
95
80
112
137
114
105
130
124
97
141
101
158
123
146
87
143
108
127
125
95
139
144
102
98
98
90
119
99
129
165
138
140
148
135
110
167
141
122
98
87
106
80
98
102
95
125
49
93
54
74
87
87
131
127
117
115
102
118
105
102
134
113
124
103
125
80
99
121
118
115
125
90
119
73
126
105
110
103
87
90
106
92
115
153
142
132
108
108
127
113
77
154
120
54
109
54
106
99
97
133
131
112
98
180
127
146
110
127
180
133
125
155
81
154
138
114
173
133
131
68
123
160
103
87
79
94
108
49
140
118
119
95
59
87
54
120
88
74
117
59
167
91
49
115
109
148
153
113
130
113
128
116
200
180
138
157
166
95
99
111
194
80
132
93
101
120
95
148
131
131
120
163
165
96
81
93
87
102
98
125
91
187
49
135
118
73
93
113
177
141
118
191
115
109
140
98
144
134
157
107
100
102
117
67
120
118
156
102
81
163
143
143
135
91
98
102
59
95
105
143
105
130
152
156
98
99
102
133
154
83
143
113
85
125
161
113
77
84
105
115
112
92
114
113
93
54
116
126
126
59
108
177
107
87
79
98
97
115
123
144
144
113
180
99
107
139
128
120
74
98
105
114
126
137
146
144
59
95
104
163
108
125
104
89
78
197
120
97
116
109
115
142
102
110
118
161
106
54
132
157
81
91
112
148
129
116
164
98
126
129
108
161
115
146
117
105
90
139
118
102
95
114
143
74
165
91
179
54
49
54
179
133
164
116
108
79
110
130
135
146
115
129
77
113
111
98
108
74
103
102
125
112
81
136
84
85
94
112
163
150
107
54
49
126
159
142
151
120
165
125
86
133
163
95
143
119
97
95
151
140
167
132
84
97
190
140
108
54
101
84
122
89
138
158
119
113
118
158
145
133
54
95
113
112
122
105
114
107
74
94
92
161
114
78
85
155
91
167
81
125
131
108
149
125
77
81
186
138
124
77
54
74
89
113
91
131
131
95
158
98
97
126
165
104
110
93
113
106
95
73
158
92
108
141
95
138
108
118
101
140
132
91
100
141
168
156
101
87
125
142
120
129
123
107
83
90
108
80
113
119
67
132
127
95
107
133
70
94
90
102
49
108
61
49
74
161
186
97
125
130
104
103
113
137
88
130
108
138
149
77
154
145
116
110
120
149
103
108
101
108
94
84
80
102
105
157
127
129
111
103
136
127
118
86
87
154
77
113
107
126
90
106
77
125
142
124
103
127
95
180
78
125
180
147
133
145
49
107
102
171
159
122
166
149
102
108
82
89
96
133
161
139
54
121
99
132
115
119
169
124
76
97
119
108
134
70
115
67
105
144
76
82
145
101
158
108
74
106
117
102
81
124
104
103
102
76
82
118
98
112
153
98
157
160
107
100
129
148
169
122
83
172
147
108
155
148
139
54
54
98
164
90
54
74
128
124
235
149
138
155
81
113
82
81
144
103
165
201
81
126
91
165
135
117
122
167
114
98
90
142
126
167
135
103
102
114
97
139
145
135
82
97
96
168
143
102
101
98
103
85
105
87
143
142
101
74
97
93
156
54
114
116
120
107
127
144
108
112
104
143
98
137
122
95
172
186
104
123
74
95
134
95
146
106
91
169
196
113
87
120
183
110
157
81
126
140
141
79
108
113
129
54
102
125
120
74
54
148
108
122
110
129
74
113
115
108
98
98
136
128
96
105
140
108
150
143
118
133
154
131
114
115
87
59
79
54
134
124
156
112
128
186
138
107
146
131
122
95
54
191
137
106
65
110
150
83
91
94
78
54
80
161
172
155
133
107
87
128
115
156
144
96
140
115
103
165
143
144
135
95
95
112
115
115
108
95
54
102
124
110
153
77
54
121
137
85
135
99
108
93
114
103
54
125
57
113
164
69
102
102
95
97
139
104
191
59
135
96
144
98
128
132
121
108
115
87
129
107
122
61
98
112
67
45
185
61
113
54
133
139
87
113
123
83
113
107
81
83
95
148
152
86
83
107
96
143
108
98
89
102
76
104
116
99
54
78
127
90
119
137
131
85
152
138
102
107
132
127
141
70
107
93
69
114
125
131
106
68
139
156
126
121
149
93
148
154
144
138
96
83
146
133
102
107
94
164
79
120
129
117
148
114
127
115
80
159
123
157
157
120
142
139
114
102
95
102
93
105
142
116
102
108
73
106
128
133
125
95
108
96
90
106
148
107
74
142
80
102
125
78
81
107
126
95
134
78
134
111
87
54
133
98
126
77
145
78
123
142
139
91
154
128
157
87
111
132
108
168
153
148
93
113
93
111
109
140
87
148
165
158
127
103
103
141
90
120
102
123
180
154
106
97
110
59
95
110
149
105
59
142
101
112
139
198
105
152
144
124
123
118
102
132
140
83
118
54
186
125
130
82
93
61
78
137
79
129
123
128
119
135
135
136
163
106
164
81
85
116
129
108
59
93
132
102
125
89
76
124
124
122
101
79
133
123
141
102
140
144
142
133
157
135
132
102
148
140
133
81
179
143
61
122
91
139
145
87
99
76
105
159
141
139
93
102
148
141
61
118
106
95
130
108
115
108
167
86
146
109
138
90
183
131
136
120
125
114
121
128
118
103
92
125
80
95
133
90
95
127
76
111
54
122
87
59
74
67
150
78
49
104
125
85
142
106
156
97
129
82
150
101
105
83
94
108
125
115
127
150
128
54
137
108
91
54
54
124
95
106
161
219
104
168
104
81
136
102
133
118
101
103
101
82
128
98
136
92
128
130
148
131
114
133
96
98
103
101
99
173
127
158
143
131
164
136
73
91
160
95
117
144
70
83
76
88
117
158
144
109
114
76
173
110
147
74
146
106
59
120
127
134
49
59
104
103
86
177
101
93
116
162
155
113
147
137
128
67
131
102
85
88
125
107
98
148
75
101
113
105
96
110
169
81
177
93
106
125
91
90
120
104
140
133
143
103
82
98
77
105
169
74
76
121
99
104
102
102
101
84
127
113
77
93
124
158
114
102
102
105
128
108
95
151
129
125
54
82
121
90
97
90
102
54
81
90
83
155
136
148
124
148
84
123
49
74
103
144
102
89
90
122
151
97
117
95
122
104
132
120
180
140
61
168
125
124
140
126
54
86
106
102
87
104
105
200
82
141
137
123
143
124
141
177
111
153
154
113
85
92
69
119
92
159
143
137
115
110
123
115
130
94
82
92
81
85
123
118
128
141
154
101
122
102
128
125
91
94
104
95
97
118
91
144
107
121
95
138
74
103
90
169
72
90
172
91
107
105
121
149
108
102
125
112
128
49
86
108
119
167
143
126
139
98
168
102
82
123
131
188
111
139
107
139
144
134
102
143
145
129
95
133
132
122
71
122
108
129
92
113
81
123
78
119
117
143
102
123
108
107
78
105
114
167
77
115
76
74
108
109
111
134
94
153
92
95
110
109
80
115
100
77
135
165
108
90
98
98
95
142
101
54
114
145
120
87
81
83
123
67
162
108
90
149
132
93
62
133
96
108
102
128
107
142
100
88
54
113
112
111
54
128
95
102
106
132
100
81
148
128
143
106
102
109
154
116
105
93
142
126
102
81
112
141
148
119
112
119
113
128
108
134
133
67
98
125
103
120
99
140
85
96
108
144
101
108
128
59
113
106
94
138
113
115
108
67
160
124
69
163
81
148
65
93
103
158
92
151
145
116
148
158
93
123
150
143
129
118
113
96
117
161
114
128
78
142
80
102
95
113
59
105
103
170
115
61
92
110
139
103
137
85
158
127
177
107
85
158
104
107
136
125
120
133
146
76
82
93
108
90
137
69
81
136
125
101
108
78
77
133
59
155
106
115
144
127
145
113
95
62
158
77
144
101
104
62
89
117
91
108
133
158
106
158
128
81
98
161
129
100
90
103
102
95
206
112
102
98
162
124
108
88
115
95
106
104
123
54
78
122
114
172
157
106
133
109
54
95
87
156
113
109
95
90
135
92
108
100
97
143
106
146
81
111
103
67
127
153
153
95
140
133
109
83
146
89
141
87
67
85
123
77
87
86
128
147
151
120
134
139
54
147
126
103
100
135
169
81
123
139
125
122
131
103
116
177
75
118
104
111
98
96
109
117
120
96
107
49
103
148
124
140
95
168
125
87
138
104
113
92
140
157
128
88
137
72
131
54
104
182
133
90
119
126
128
133
105
168
103
99
73
61
95
122
105
108
134
87
93
198
92
135
120
49
93
54
87
95
138
110
129
120
108
101
102
116
96
105
105
105
129
151
121
169
108
95
150
150
108
108
133
157
102
83
120
121
103
124
105
54
90
113
80
106
54
156
129
148
118
133
49
101
119
102
121
113
98
88
110
184
113
126
100
116
178
118
98
87
125
102
54
83
133
112
155
59
102
115
148
130
134
106
118
77
103
74
126
137
108
116
118
177
81
146
172
146
119
67
143
167
167
140
115
120
111
111
107
103
131
102
159
91
87
101
61
140
142
81
93
95
152
90
127
124
130
59
132
81
115
89
49
141
135
204
144
106
158
95
128
70
84
103
138
109
86
128
119
100
107
180
145
153
99
107
76
112
101
102
98
74
65
105
113
112
118
128
110
120
198
144
110
149
133
54
102
120
107
125
125
105
128
68
105
85
117
90
99
114
125
78
54
123
90
177
108
127
108
80
160
107
120
154
97
200
61
113
137
78
110
49
160
113
159
115
126
98
83
87
79
122
148
115
99
96
145
168
91
149
167
143
139
127
130
118
127
157
74
123
115
95
177
108
144
114
98
69
149
139
92
164
107
163
54
157
129
143
125
93
151
111
103
67
134
107
81
125
97
122
103
172
122
133
81
120
142
98
79
115
80
143
89
133
112
110
65
102
54
110
129
110
95
93
148
113
150
102
93
114
149
97
140
105
108
108
108
95
121
67
107
148
101
147
113
95
113
108
97
106
108
74
115
83
123
103
172
128
87
102
119
126
93
108
49
146
93
93
207
186
96
125
101
116
99
113
54
97
88
110
147
160
186
125
110
92
136
118
79
101
54
101
110
137
157
107
108
98
131
148
87
135
110
184
149
105
112
180
119
136
128
184
144
102
123
81
164
135
59
79
84
112
90
76
137
125
74
170
190
80
155
61
87
112
166
108
82
147
49
111
130
141
115
54
99
81
145
98
111
137
104
142
128
143
104
108
113
108
166
106
152
54
102
77
122
134
73
93
119
49
95
132
101
105
110
118
132
119
117
101
123
150
119
95
133
110
97
54
153
99
117
165
95
156
152
118
94
163
54
146
68
108
83
106
145
127
149
122
142
90
106
108
100
148
93
103
172
106
107
133
49
76
103
103
98
104
101
149
106
144
143
86
116
177
135
99
125
102
95
134
120
69
132
80
111
144
128
84
114
90
124
91
102
87
80
87
83
130
85
91
115
127
110
77
97
106
143
106
140
112
108
131
131
148
78
116
162
91
104
103
49
68
96
137
90
90
96
155
138
119
125
127
102
137
105
145
107
116
134
88
102
105
114
125
100
128
165
164
127
82
135
99
114
107
100
131
83
95
131
118
119
133
90
162
54
116
87
132
98
61
84
123
105
133
81
134
102
124
137
106
139
81
147
150
87
95
95
59
145
67
140
95
176
144
146
107
145
91
104
74
103
111
101
94
90
140
131
49
129
108
111
133
108
139
93
127
165
113
104
59
115
155
138
121
78
97
107
139
99
99
125
74
135
168
125
93
125
144
133
102
125
100
67
112
145
54
98
160
106
54
107
113
127
176
85
126
76
114
147
110
61
100
156
127
175
108
197
74
177
82
111
68
142
108
115
49
149
93
162
72
97
100
101
81
134
102
136
148
115
142
92
124
168
161
189
138
97
127
102
139
125
79
122
96
118
140
162
80
93
177
85
104
100
201
145
155
88
76
86
102
85
95
54
103
82
103
98
110
134
104
138
102
123
138
77
82
116
121
108
100
106
177
200
49
134
78
122
68
138
175
142
122
122
49
145
113
77
115
108
108
117
113
141
121
180
108
81
134
105
54
161
105
134
118
68
106
80
123
111
140
134
107
97
128
93
92
54
101
135
123
108
104
122
122
163
125
113
172
90
74
82
132
109
131
151
95
120
166
69
124
114
107
110
102
85
98
127
131
88
129
143
81
102
108
179
79
133
99
134
135
87
111
146
119
148
157
162
103
98
95
81
127
122
59
92
101
133
98
115
127
132
115
103
108
76
134
108
126
107
93
125
108
133
145
169
136
171
59
117
161
98
171
176
80
73
95
77
110
121
54
114
110
143
95
125
97
148
146
154
144
127
136
82
120
89
146
123
128
96
146
83
157
142
114
110
67
68
145
95
118
119
130
98
88
127
133
132
127
134
116
116
96
115
139
138
145
91
161
109
118
102
171
96
78
158
124
59
148
106
103
129
119
96
49
93
95
141
102
109
108
135
148
100
92
67
145
146
144
83
54
147
76
125
124
149
106
131
118
154
135
116
78
114
119
165
69
76
99
77
122
142
77
145
68
102
158
120
67
80
109
139
87
113
135
49
170
76
113
59
118
147
95
74
169
126
160
111
100
49
132
112
129
76
131
135
134
90
128
127
186
54
92
108
96
128
49
115
95
112
154
161
77
147
104
133
179
93
137
94
152
102
103
76
108
54
104
117
144
132
98
113
84
124
134
160
151
98
104
78
85
173
124
104
200
77
107
106
115
118
148
54
154
82
115
101
78
144
135
76
121
107
102
153
115
61
126
83
131
116
110
160
131
98
141
115
89
128
123
112
129
139
102
104
148
120
82
172
131
128
103
93
147
155
83
142
125
67
115
98
82
165
69
148
128
92
109
105
143
88
108
102
106
115
122
98
183
83
54
95
106
197
77
113
74
144
81
108
49
81
94
128
97
129
128
149
69
91
161
127
115
108
144
113
131
90
112
87
128
85
132
95
54
103
95
88
91
125
165
146
54
105
150
126
77
116
115
145
101
59
67
133
135
85
144
153
111
139
95
93
139
118
95
95
81
95
148
126
99
54
135
119
90
148
121
59
127
77
49
145
54
105
119
49
102
121
148
111
168
113
59
116
142
54
147
129
93
109
108
132
111
143
102
124
118
133
87
116
59
87
114
130
177
126
148
159
126
76
125
125
82
134
120
95
123
113
151
138
160
90
119
112
83
104
96
54
156
118
98
107
82
54
117
103
125
150
173
147
105
114
127
102
133
97
116
141
81
136
121
122
117
133
135
77
93
129
92
120
54
105
113
83
113
54
119
161
80
73
113
108
99
115
147
170
139
137
96
100
184
92
131
77
109
125
105
108
95
54
112
173
95
54
160
129
181
120
139
83
125
134
137
105
133
59
85
150
133
177
95
85
132
94
59
102
98
124
83
125
87
108
122
98
91
119
95
145
108
89
95
89
82
139
103
148
148
112
108
128
148
120
78
108
67
108
82
82
102
115
123
122
125
95
89
96
161
113
108
119
110
95
54
151
94
170
85
54
81
103
134
127
97
103
127
106
119
143
98
91
120
108
90
163
85
74
62
90
114
120
131
74
76
132
106
97
143
54
113
78
101
172
118
161
122
120
131
145
107
112
151
104
115
127
120
146
67
126
151
128
109
98
106
137
116
119
128
98
160
120
122
141
54
186
134
118
100
99
134
96
148
102
152
144
119
148
138
76
112
155
102
131
112
96
148
80
140
97
54
162
146
102
105
144
83
148
83
157
110
108
153
105
130
94
114
185
148
112
120
137
94
78
102
125
113
103
194
125
138
99
177
106
68
115
121
133
139
145
87
115
116
95
119
166
125
143
116
153
138
163
107
106
59
128
105
123
122
128
124
54
177
97
82
91
151
116
174
93
54
123
141
95
141
149
103
80
113
102
160
107
146
102
134
83
143
120
150
114
87
148
116
96
141
95
99
125
95
140
49
94
103
100
110
81
158
100
93
111
93
124
135
126
81
126
153
81
103
97
148
105
108
160
142
74
112
148
131
108
94
130
115
176
85
103
74
102
54
177
111
123
88
108
128
83
165
134
113
81
188
131
102
100
143
172
95
122
128
135
149
134
86
105
70
59
137
104
133
107
156
168
74
104
110
139
154
81
87
106
93
98
117
80
109
120
116
101
120
108
74
128
140
97
82
91
100
131
98
113
124
99
137
54
169
54
119
74
164
194
108
84
117
128
193
92
171
128
125
93
112
98
102
172
82
118
142
110
54
108
83
119
74
108
186
81
76
106
128
173
80
108
137
133
133
118
116
118
143
69
135
117
99
98
146
114
101
105
109
112
104
145
54
184
122
87
103
102
96
140
82
92
98
98
95
125
61
95
54
108
107
61
49
105
114
147
182
108
118
86
142
113
115
129
180
93
105
145
110
103
127
89
67
54
110
158
164
145
134
124
87
122
139
115
107
117
120
105
95
157
101
95
130
109
95
96
116
117
59
108
65
61
108
129
158
93
85
104
156
120
108
62
128
102
146
89
102
103
125
120
95
148
54
126
54
54
118
126
108
140
120
128
81
81
181
84
135
87
136
158
144
150
125
139
173
59
101
104
116
127
110
102
129
54
78
59
183
105
74
105
54
98
90
120
127
111
172
107
95
112
91
108
122
104
108
158
129
93
115
152
54
140
120
178
115
131
149
98
90
160
152
165
78
75
158
160
77
81
102
173
95
129
92
102
139
122
125
78
54
131
111
113
91
148
162
139
125
133
150
119
137
77
76
96
137
128
127
114
92
96
104
114
93
143
137
115
128
166
118
78
135
106
108
54
49
178
155
98
54
117
117
90
148
95
146
167
126
129
83
93
103
84
159
163
82
90
118
106
144
123
169
125
110
108
93
164
112
72
141
120
148
138
105
97
98
112
102
140
81
84
143
155
101
131
95
93
133
67
113
94
103
149
101
113
113
149
125
81
88
116
54
54
83
81
108
102
130
92
145
110
98
93
77
112
122
125
110
113
117
140
105
138
168
152
147
76
129
102
128
126
76
95
130
128
81
102
97
97
95
140
104
85
183
133
98
77
115
151
98
126
112
96
82
100
168
156
162
97
111
117
140
125
135
178
120
154
77
177
158
68
120
108
129
105
118
128
76
74
126
90
118
54
140
125
144
213
103
108
128
81
95
133
79
141
95
90
49
112
110
169
74
144
151
139
127
82
108
127
94
108
117
116
128
135
216
119
129
129
111
118
114
54
114
140
125
102
107
108
92
118
102
99
130
103
115
157
136
98
81
87
87
128
59
167
80
164
95
104
93
108
93
95
147
157
118
107
95
125
86
146
94
121
163
131
82
177
128
74
148
118
68
95
94
113
131
143
77
134
54
54
165
49
107
126
164
151
100
93
135
122
83
143
90
120
138
61
129
161
88
98
77
82
113
117
148
164
125
150
123
134
106
103
129
140
61
96
165
54
129
100
128
168
107
78
112
108
140
105
88
145
111
107
104
135
129
120
153
105
93
99
108
98
77
146
95
61
113
143
102
110
105
191
156
98
128
144
149
161
144
143
115
102
90
98
168
77
54
137
59
93
93
96
144
87
125
111
68
81
115
147
93
92
102
76
103
163
141
136
104
110
110
94
138
108
177
99
157
149
168
59
49
103
74
103
104
49
114
96
98
87
90
111
133
90
103
112
92
85
114
102
103
156
95
69
158
93
135
145
112
73
98
54
126
83
146
112
93
143
76
105
158
120
131
133
78
80
97
161
182
106
111
85
123
102
100
102
177
113
108
77
118
54
127
124
54
131
87
133
115
133
86
100
69
160
112
125
127
128
147
103
76
147
82
117
129
45
95
76
102
91
125
144
108
156
129
149
136
49
98
138
144
177
116
148
90
106
105
108
138
170
102
102
145
76
112
141
144
98
94
113
125
102
100
129
180
120
141
98
163
116
101
108
125
90
118
103
77
117
94
95
54
143
100
148
101
151
151
92
68
121
129
136
102
125
113
146
108
54
150
134
140
85
125
103
54
54
124
108
69
100
89
120
54
104
90
104
125
98
122
158
171
132
81
130
54
183
113
128
148
105
131
129
106
148
143
128
103
102
128
77
87
128
54
121
128
141
67
167
125
113
129
109
129
68
130
102
143
152
104
108
81
153
85
90
130
100
213
97
98
152
133
138
108
82
124
97
95
96
108
146
108
122
148
94
92
139
122
59
69
139
143
54
94
74
85
108
136
134
144
147
101
117
157
128
91
119
133
78
87
135
98
138
105
175
98
83
108
129
54
191
99
49
155
143
103
105
151
134
98
54
156
165
111
127
103
107
146
128
108
105
81
145
54
128
143
156
129
139
54
142
97
95
149
146
104
125
118
102
110
67
88
97
81
114
87
92
104
116
105
180
111
104
108
98
139
111
123
170
167
123
87
159
133
123
160
169
157
102
168
87
177
103
101
141
129
149
144
118
129
78
54
49
102
135
74
94
167
107
159
173
128
95
77
97
124
82
95
69
149
103
99
95
148
136
101
81
138
139
90
102
102
91
74
141
113
150
133
121
131
83
110
122
120
112
95
149
132
158
123
135
132
76
148
129
160
135
133
118
107
134
96
97
96
81
100
94
150
122
54
103
132
116
123
108
54
106
104
77
101
88
122
114
81
158
102
107
165
106
78
118
161
54
113
148
122
119
81
122
150
130
144
108
144
95
103
148
105
95
69
100
113
200
102
81
130
81
96
120
59
104
138
142
108
136
185
148
94
129
122
143
103
87
135
108
129
107
115
109
144
113
140
96
98
80
137
129
89
124
118
106
73
105
178
86
103
73
108
81
95
114
180
105
107
87
80
105
98
102
129
115
102
59
76
79
90
160
131
82
121
163
87
133
125
132
87
106
88
59
120
105
90
140
97
98
76
108
134
102
150
148
117
111
129
105
98
59
93
131
152
134
105
111
145
104
110
123
123
102
128
115
120
49
169
83
151
49
84
74
128
142
114
115
54
115
125
168
131
90
147
137
118
87
86
141
105
118
87
162
122
168
96
125
102
118
130
54
102
107
138
118
78
149
171
115
68
83
143
89
98
54
108
153
143
81
127
59
77
130
81
122
119
115
111
67
111
92
131
148
93
118
165
93
86
106
177
120
201
108
129
113
178
130
126
102
121
104
144
108
101
146
96
67
116
130
116
135
90
131
165
99
90
125
120
139
171
102
106
76
82
143
113
138
119
144
144
136
148
78
132
54
110
125
132
119
108
61
143
98
112
138
49
163
143
148
194
145
96
111
122
138
153
140
120
87
113
151
102
78
54
93
173
101
167
106
108
144
120
115
160
59
96
108
71
95
161
91
144
91
102
135
101
99
116
114
150
146
79
91
116
133
82
88
102
91
87
120
128
141
134
68
102
84
102
110
95
151
115
159
117
74
151
162
81
131
98
90
85
92
98
190
158
95
107
104
74
114
130
161
144
133
107
125
102
108
156
121
95
134
137
114
148
131
114
106
109
105
139
81
95
103
158
103
61
104
106
103
83
128
89
103
108
82
179
85
49
125
120
127
102
155
74
130
111
87
100
98
161
84
107
79
103
129
95
140
148
105
168
110
159
70
95
90
124
126
95
122
62
77
98
87
153
95
198
116
101
98
112
136
105
144
104
103
113
120
131
120
148
145
94
117
161
94
116
127
150
171
69
84
101
94
135
100
92
158
116
98
137
113
89
77
120
142
161
79
118
123
113
68
103
151
100
118
90
135
87
107
111
126
108
201
54
140
182
130
103
166
69
104
145
104
108
93
93
119
126
177
54
80
146
112
132
93
102
125
84
102
115
92
85
69
96
98
98
112
124
110
114
98
87
142
106
137
95
191
105
101
126
81
59
75
129
67
113
113
129
110
166
49
80
113
132
116
219
90
125
117
140
112
104
140
132
133
141
120
144
86
119
135
142
112
59
125
148
96
91
108
108
126
154
122
145
106
104
113
133
115
78
128
146
83
49
126
91
95
125
102
150
104
69
147
54
96
141
68
120
108
91
119
135
139
85
45
102
113
98
131
85
168
123
110
119
85
96
176
133
134
113
158
146
120
131
91
129
59
158
120
171
100
118
121
119
135
99
134
87
120
131
95
181
72
108
107
159
98
125
118
81
115
102
124
124
90
94
111
93
49
119
106
206
105
151
199
98
130
83
107
146
206
108
91
122
177
81
68
108
135
145
104
170
100
54
116
84
86
108
73
127
54
127
126
145
118
125
113
67
98
89
122
142
158
120
142
113
98
98
125
179
77
106
169
97
95
121
172
49
81
151
134
105
103
76
134
170
62
115
107
149
128
111
90
77
110
125
100
114
114
155
73
137
95
127
108
160
111
141
180
162
191
137
135
117
178
59
82
49
80
99
155
131
98
49
107
119
98
102
133
87
155
150
108
108
91
152
116
120
177
171
145
155
153
91
110
54
95
122
108
103
135
75
78
143
161
77
204
54
146
54
102
147
131
89
160
172
130
91
95
101
130
90
87
121
139
93
114
107
117
54
98
123
81
103
112
113
113
128
67
117
136
148
116
125
76
103
90
106
125
103
133
179
130
114
123
118
95
150
73
110
184
148
87
120
162
95
186
138
150
106
135
143
131
103
115
218
131
74
103
100
102
107
92
108
165
107
89
153
105
54
74
96
102
131
135
163
120
83
61
128
137
103
97
96
92
86
154
73
140
49
181
96
95
137
105
95
103
155
108
125
49
139
127
154
137
87
127
97
104
101
81
138
104
107
94
95
69
97
94
100
191
156
110
113
123
135
93
146
151
102
172
125
81
95
101
103
167
103
127
145
182
123
102
112
111
65
105
162
81
96
131
49
165
125
109
123
124
107
158
80
87
131
127
103
81
137
77
67
88
74
90
108
140
132
108
132
107
90
95
102
134
180
63
119
103
107
145
129
151
100
116
101
77
68
54
122
116
139
81
115
83
143
61
103
98
155
144
102
119
138
120
154
108
143
96
78
59
54
155
93
90
67
160
128
122
122
102
101
85
54
187
122
91
84
119
122
78
80
95
95
135
95
182
107
105
76
159
54
102
90
108
142
139
104
150
99
87
177
172
87
139
87
145
147
93
102
77
131
92
125
123
76
144
113
80
81
123
148
96
177
122
149
116
67
98
149
85
125
112
98
114
112
133
112
95
127
117
113
110
77
106
127
102
119
49
137
116
133
112
144
153
113
128
95
116
133
159
101
106
141
76
116
131
118
68
100
92
169
136
108
102
94
133
94
113
135
148
143
108
133
103
59
96
98
131
100
102
108
77
69
101
103
164
155
95
59
108
74
171
91
179
131
111
133
96
87
152
89
127
112
128
117
83
100
54
104
113
125
91
87
108
92
118
139
117
91
180
122
148
136
89
136
87
102
169
106
95
105
130
95
94
127
59
124
102
49
107
132
54
91
115
122
133
102
99
102
98
129
90
125
109
125
106
157
123
105
139
99
113
82
118
117
83
61
108
96
82
113
135
152
131
114
95
129
81
95
49
139
112
148
130
125
151
87
116
100
54
95
108
108
109
144
120
108
147
144
90
129
128
141
107
102
135
155
113
54
113
93
101
87
96
106
149
165
105
85
113
108
175
93
54
81
108
113
161
76
82
79
132
96
122
185
106
97
127
136
191
138
76
122
101
69
153
190
139
135
165
108
105
76
150
131
129
103
113
135
109
152
168
191
165
125
135
135
118
101
79
74
138
128
121
146
127
102
159
118
160
124
106
125
143
95
113
74
125
83
133
76
84
107
144
177
159
106
81
135
94
190
119
80
106
74
117
172
102
104
167
90
158
139
106
139
108
138
110
119
132
87
150
117
108
140
94
49
112
76
131
151
108
147
133
172
148
119
108
145
129
74
138
86
122
95
108
131
89
143
69
86
144
77
54
120
83
89
113
102
94
138
90
65
144
170
130
168
113
107
59
102
81
161
74
106
140
107
102
91
133
148
127
102
156
149
62
106
54
87
96
54
117
114
54
116
109
134
118
102
212
114
88
127
139
83
106
69
201
172
114
100
87
68
108
104
182
106
75
132
99
67
83
169
133
54
177
101
96
120
102
156
128
135
89
137
103
111
127
143
118
133
106
122
112
177
128
163
124
107
128
114
63
118
110
79
119
87
81
158
116
166
83
76
108
98
127
125
149
93
156
74
49
180
112
134
91
141
184
149
151
82
141
102
161
200
173
150
196
49
54
125
94
102
138
115
160
116
131
154
134
99
120
127
74
196
127
115
81
91
125
89
102
102
132
113
141
102
126
103
74
166
106
131
125
116
149
117
77
78
178
113
151
140
142
59
96
103
113
164
90
143
180
98
141
113
125
160
119
144
184
102
82
128
124
127
125
144
61
134
121
128
127
105
161
108
110
108
108
152
95
69
82
114
139
129
118
154
125
108
49
120
106
109
166
88
91
175
181
145
104
93
78
148
138
142
177
154
163
98
54
145
95
85
81
177
107
173
129
113
138
103
68
147
119
108
194
91
127
164
122
77
133
164
138
128
90
141
118
122
135
94
93
102
143
106
87
102
120
140
126
143
156
135
119
140
152
140
94
177
103
107
106
128
83
67
95
89
167
94
158
125
177
129
49
108
76
106
130
104
128
115
144
169
91
144
140
146
67
135
122
137
138
79
112
145
104
128
105
78
128
133
95
120
95
148
124
165
177
91
104
154
83
140
49
76
74
73
80
114
102
131
135
77
95
125
101
81
80
136
120
95
160
180
100
179
167
115
81
109
105
144
95
83
108
106
82
152
98
127
146
108
107
82
108
114
82
125
146
121
95
148
103
112
110
110
148
90
125
122
112
54
119
130
155
143
80
141
95
112
67
148
153
54
117
149
82
113
110
132
61
92
145
81
108
96
102
113
87
148
148
102
148
179
88
148
132
101
93
145
79
103
96
129
165
98
128
95
77
136
123
120
127
99
135
132
133
116
105
83
115
132
98
108
180
87
155
148
151
90
113
127
82
106
179
118
72
127
105
107
131
119
84
125
54
112
49
119
103
125
74
105
162
146
127
78
139
89
145
77
123
103
92
156
93
68
135
118
95
133
116
125
85
165
108
102
123
59
96
122
108
96
142
140
104
159
105
97
126
139
164
134
97
154
124
122
133
107
116
109
54
86
150
144
156
83
145
143
131
98
190
127
140
111
74
112
54
117
194
134
155
121
132
91
98
87
105
84
130
82
104
68
154
100
103
133
127
93
143
161
127
131
95
106
181
106
128
91
152
156
144
65
49
153
93
81
148
95
121
94
73
165
139
87
139
90
81
61
102
154
102
104
132
131
108
69
125
77
61
144
107
161
87
119
137
113
98
89
109
81
125
157
113
114
167
144
112
109
158
97
95
121
120
90
134
118
102
121
202
80
49
78
131
76
95
104
90
116
82
90
109
98
176
121
152
124
120
109
130
81
61
110
112
151
83
90
165
125
175
139
81
122
180
133
129
78
125
133
102
91
147
117
157
113
130
129
165
59
103
170
54
77
146
158
142
171
119
127
138
132
150
102
91
95
42
133
109
141
102
108
111
115
80
137
130
144
98
95
83
105
107
180
83
99
107
92
172
147
142
103
96
75
155
106
102
119
105
137
136
93
119
54
146
122
114
140
118
142
124
119
128
74
123
154
83
70
132
106
171
95
206
114
148
126
143
114
146
79
54
125
145
143
114
113
135
108
125
129
77
97
54
95
139
102
75
91
124
115
120
110
123
81
101
54
102
85
97
125
117
130
83
108
90
114
111
140
108
113
78
59
149
83
124
108
104
95
152
165
123
116
96
128
85
101
69
125
103
134
85
104
54
129
102
91
113
190
123
94
102
114
118
109
117
135
113
126
59
78
123
168
94
103
91
191
108
83
83
146
65
100
83
124
112
129
83
93
145
114
81
81
108
116
109
162
124
152
134
108
126
89
146
148
87
122
160
104
116
98
69
61
176
144
142
128
102
129
107
93
148
147
134
61
97
109
67
145
147
102
133
122
108
108
88
101
178
139
114
122
81
111
149
78
67
89
151
93
54
130
98
99
81
137
104
103
108
57
111
108
90
71
118
123
172
185
87
108
107
77
120
129
111
140
87
108
106
143
100
98
154
85
101
102
91
120
80
54
151
104
121
101
54
134
230
137
135
116
108
128
81
102
49
103
126
115
115
68
105
127
149
143
96
133
109
71
177
95
115
138
133
129
158
84
96
114
54
81
185
131
54
95
102
126
118
149
109
165
113
133
157
121
96
101
104
162
107
91
109
100
108
95
96
81
106
105
102
129
84
161
113
107
117
112
117
180
100
107
141
95
125
101
74
77
95
133
108
120
91
95
139
98
103
163
113
83
63
104
103
196
141
102
132
129
129
151
76
97
80
106
107
143
144
112
114
142
128
95
115
125
127
128
115
143
91
123
149
179
88
144
147
49
68
108
76
74
143
49
129
122
114
168
176
133
72
127
144
133
120
83
105
73
54
81
67
101
149
119
135
128
103
109
134
126
146
158
113
54
80
81
148
83
90
54
133
108
109
103
119
130
78
110
109
168
135
206
117
163
148
107
123
99
54
167
85
149
136
102
98
113
116
132
134
92
99
155
105
112
94
94
114
153
109
133
76
101
106
112
129
105
112
150
83
81
76
135
54
102
119
102
49
115
92
107
101
54
85
108
104
81
81
88
97
149
68
81
130
95
114
98
90
54
54
129
108
102
69
74
115
106
114
145
123
96
135
133
117
128
102
140
82
155
138
109
90
177
120
118
127
113
118
106
194
78
133
120
81
81
98
118
114
90
144
115
118
110
169
102
131
247
102
158
112
123
151
100
54
120
154
124
123
121
106
146
129
220
106
114
131
165
49
116
147
114
78
109
110
140
160
94
119
128
153
106
144
86
143
129
105
128
146
103
102
79
87
122
99
132
159
95
172
157
163
96
115
102
109
161
81
141
153
149
97
145
143
49
100
129
90
138
93
135
82
88
54
105
117
100
121
123
129
192
110
129
103
154
118
156
104
116
54
110
135
76
90
113
117
104
140
112
153
102
69
135
113
157
147
91
110
109
103
202
107
92
142
124
98
101
135
109
162
95
59
76
129
116
80
130
78
102
108
59
117
131
108
102
197
127
102
107
146
129
109
92
81
95
105
97
124
149
113
77
131
158
149
118
115
106
143
115
143
67
77
54
151
91
141
162
54
108
123
134
133
93
54
102
148
127
98
174
118
115
68
134
82
139
149
98
104
91
159
120
135
146
142
104
99
87
156
102
59
110
131
186
131
88
114
134
77
115
156
123
69
90
113
161
116
144
129
83
186
103
106
161
159
125
159
117
163
108
88
135
95
87
123
129
81
87
61
129
79
144
133
117
133
160
129
113
102
76
146
153
110
152
119
96
214
111
172
139
133
82
83
68
113
80
132
85
90
113
168
59
110
92
99
105
131
111
89
103
128
212
134
128
118
49
165
118
119
107
102
160
119
54
132
137
140
128
120
91
133
135
85
172
117
135
186
85
96
133
54
104
124
90
108
139
138
80
134
151
138
185
133
150
106
185
95
74
131
85
98
153
122
140
146
145
146
191
74
59
130
113
142
145
114
109
135
143
140
108
102
81
98
105
102
103
122
80
87
151
116
81
131
144
108
135
77
158
139
141
54
84
146
54
188
95
80
178
138
116
149
74
125
110
143
93
111
133
150
73
117
133
87
124
135
120
156
143
91
94
103
123
109
102
144
119
140
76
77
113
68
162
97
80
138
109
133
107
74
87
112
152
73
123
93
141
108
151
123
85
119
135
106
141
106
85
101
70
188
84
103
143
95
161
98
138
119
152
54
161
121
112
116
109
89
125
104
102
153
140
102
100
111
103
86
113
126
74
102
93
109
131
120
59
168
121
99
162
119
94
138
127
102
112
108
148
96
141
142
113
158
54
117
49
147
49
142
129
153
116
188
112
104
82
115
112
54
123
108
99
138
105
92
129
69
134
133
158
101
108
124
98
104
143
154
112
180
162
67
126
161
156
132
123
78
85
85
169
128
137
115
113
105
105
149
95
109
131
139
76
96
148
138
135
186
105
131
135
68
115
125
130
54
177
103
102
170
103
162
143
117
129
133
118
108
102
82
103
161
155
99
148
98
116
81
103
146
105
77
151
95
115
136
161
167
54
99
97
123
177
194
101
130
111
102
96
132
176
82
108
106
132
180
132
118
140
106
122
131
125
161
106
91
122
175
90
105
119
135
134
160
120
125
115
106
102
59
108
111
68
121
76
49
103
71
140
74
89
95
82
101
144
131
81
65
148
98
127
112
87
126
95
102
98
143
116
188
90
96
118
113
150
146
187
78
76
118
54
169
104
124
54
144
145
100
139
106
109
108
124
120
90
122
94
123
140
197
54
94
143
117
151
91
113
126
97
116
115
106
82
54
116
91
115
128
115
104
111
67
89
140
83
135
127
49
103
91
119
90
144
122
145
77
131
98
78
163
81
99
107
111
172
141
122
111
148
117
136
91
95
108
111
131
99
140
97
113
179
107
149
143
138
141
83
110
54
123
54
136
133
163
88
95
143
135
98
95
141
69
103
78
103
157
119
167
108
142
147
94
129
49
130
45
67
137
99
78
171
98
101
105
131
107
49
108
141
108
49
105
133
180
87
117
131
128
69
86
125
150
93
162
101
152
129
124
135
82
113
101
163
98
108
93
54
93
123
102
98
61
105
95
109
103
112
111
186
99
102
108
152
59
114
170
54
102
157
108
109
103
76
100
78
145
113
132
59
95
54
131
108
99
102
138
132
197
142
115
113
155
124
109
74
180
102
141
124
88
148
95
113
102
98
180
103
83
133
105
186
85
152
90
96
106
158
92
119
139
112
107
95
103
95
96
162
126
54
105
131
125
122
152
111
96
138
147
83
148
121
113
147
100
131
119
102
124
106
78
97
176
155
136
99
109
153
91
138
140
130
101
145
78
82
133
133
181
107
159
118
95
119
115
80
97
97
158
164
134
127
128
131
120
137
91
87
61
139
119
89
92
131
129
103
115
147
129
98
90
117
102
127
87
42
135
54
139
148
114
54
103
159
122
100
96
54
177
74
133
96
78
106
95
133
102
87
97
123
113
105
155
160
139
95
111
161
117
120
110
128
145
78
113
108
123
193
113
127
112
83
108
104
93
74
54
138
171
95
95
160
118
54
98
101
104
80
116
102
124
80
90
82
84
87
116
96
83
87
108
90
98
106
102
59
74
65
101
99
79
81
133
129
140
123
133
102
120
103
138
144
54
105
102
114
130
98
84
78
107
133
106
101
130
102
121
119
74
85
102
121
68
140
130
87
91
123
122
134
98
95
111
148
81
107
131
105
96
133
96
145
127
113
101
119
82
129
82
98
90
95
96
98
77
75
112
76
87
182
148
92
76
177
148
81
93
138
116
101
147
89
148
145
124
130
113
113
114
130
93
156
113
101
96
141
49
93
98
124
142
54
101
109
143
122
99
121
92
103
54
92
140
151
121
119
68
87
54
131
100
153
78
118
95
117
146
182
117
103
77
125
131
105
101
122
133
103
136
82
155
133
134
122
154
134
120
95
158
150
151
81
49
109
103
112
135
126
54
171
104
120
127
169
78
148
89
131
81
118
176
105
87
49
81
91
99
107
180
183
135
74
147
123
87
144
113
102
119
108
59
124
90
117
126
127
153
110
108
95
125
90
125
103
132
99
159
87
108
142
153
128
101
81
147
155
138
103
109
104
143
73
62
135
81
111
141
142
92
49
92
123
85
84
127
89
102
141
102
86
108
106
103
101
54
144
67
102
74
108
87
134
89
157
127
114
138
148
80
93
96
148
54
118
150
95
98
148
106
127
96
92
116
147
128
124
54
88
128
140
148
97
85
103
108
155
158
140
149
114
106
172
133
95
95
189
149
83
141
118
95
98
120
108
83
134
108
105
49
81
127
128
119
113
164
108
76
112
79
175
121
148
105
161
149
173
114
113
146
78
107
98
123
90
172
120
114
126
125
98
147
77
94
137
142
104
80
77
136
123
145
122
88
68
164
133
125
93
119
101
132
93
120
125
77
100
108
135
156
98
145
134
177
85
89
124
173
108
85
131
148
102
71
117
93
59
123
110
115
146
129
155
121
78
54
127
93
120
128
147
135
111
102
69
95
144
117
100
107
132
121
115
118
98
117
90
89
89
145
140
106
168
108
160
117
149
164
139
124
108
132
107
154
143
59
93
78
95
121
107
147
115
112
153
69
158
97
113
134
167
127
158
87
111
99
133
143
140
98
54
120
122
109
142
158
94
80
102
146
200
79
206
85
112
98
83
155
117
118
83
102
128
90
107
133
157
135
143
87
77
122
95
105
158
61
180
132
134
164
54
102
107
97
102
102
124
99
106
90
54
128
91
116
105
54
135
118
77
131
93
161
102
131
163
78
161
113
91
117
119
105
169
90
77
107
148
129
121
108
49
91
78
162
68
118
95
82
59
74
128
97
96
54
106
87
120
118
151
130
95
118
143
101
142
149
108
131
78
109
157
148
77
98
148
95
132
68
49
100
113
81
112
82
119
95
106
212
54
127
128
110
134
133
143
108
115
150
146
92
113
100
89
137
142
145
54
98
81
156
91
104
90
116
132
170
216
97
59
77
105
54
77
139
106
105
82
124
93
74
99
85
140
97
145
120
154
110
136
82
102
162
118
82
59
158
138
120
178
176
128
93
83
165
139
54
93
170
124
142
98
120
103
193
135
83
108
97
112
78
138
125
105
93
139
94
106
153
77
134
108
158
103
144
109
96
88
90
108
127
83
109
140
103
90
114
133
111
148
125
112
106
151
75
146
123
81
101
117
151
137
102
54
170
140
49
112
119
127
112
135
85
123
127
106
151
89
133
54
83
117
147
96
179
165
122
146
93
116
82
120
103
125
157
150
102
133
91
120
178
95
144
116
105
117
142
83
59
101
140
74
108
98
106
119
139
108
104
100
95
95
108
95
141
49
59
129
100
106
144
61
125
92
109
97
101
69
139
120
124
166
160
78
94
148
148
102
54
81
133
156
116
90
180
125
136
59
113
79
160
131
128
156
167
102
97
127
131
92
108
102
145
145
132
158
95
91
94
119
142
106
133
117
54
145
90
54
125
158
87
78
74
125
111
109
101
191
90
49
149
119
100
168
54
154
104
84
157
159
130
116
137
102
102
90
113
116
99
107
54
108
146
101
101
104
153
54
134
147
149
106
151
179
54
107
112
144
54
116
139
77
74
118
113
106
90
124
124
117
122
85
162
103
173
96
81
100
125
151
108
127
150
54
180
136
138
141
160
113
83
99
78
74
141
89
128
109
148
123
59
163
135
117
177
96
122
114
108
103
167
93
153
86
85
73
105
129
152
119
125
159
76
113
74
125
125
140
154
80
67
153
102
113
88
106
144
120
113
100
102
102
78
129
105
101
120
164
144
98
148
110
182
76
108
135
144
106
95
126
124
116
115
69
98
90
100
49
143
127
106
160
151
87
102
110
108
49
162
59
82
54
91
114
76
132
128
156
110
104
109
88
103
144
135
102
143
124
107
126
74
133
144
181
136
83
78
155
99
89
118
102
108
113
118
77
113
167
167
151
103
135
154
110
99
77
86
94
127
146
94
111
82
54
82
78
115
139
158
147
59
105
166
74
102
62
105
90
107
94
95
77
119
135
152
83
96
144
135
154
108
125
104
104
125
108
150
76
95
98
97
180
81
102
95
133
59
135
97
135
78
115
158
122
135
96
54
138
54
90
128
102
115
95
116
167
158
125
106
144
117
106
169
90
82
74
133
97
90
106
79
124
93
59
90
116
148
105
54
112
105
134
146
74
125
149
116
77
113
74
96
83
95
154
78
61
87
76
94
118
149
166
100
132
177
69
74
144
91
99
141
102
99
120
54
117
114
152
94
108
77
139
87
101
116
105
103
119
143
77
111
90
137
131
97
134
142
147
74
99
127
102
140
137
120
109
67
122
119
103
113
98
82
119
141
81
79
155
148
68
102
78
133
118
146
126
157
116
82
95
118
118
113
139
143
126
103
125
81
102
122
105
69
81
154
139
136
125
84
59
148
110
77
167
109
145
139
133
95
107
180
111
120
78
118
92
127
105
95
116
111
108
123
110
49
75
148
129
61
120
118
117
137
110
108
78
89
70
80
87
109
129
130
106
116
137
102
133
132
156
133
133
90
109
112
146
105
88
87
105
76
123
115
138
108
85
112
108
158
144
98
61
69
108
118
145
105
102
94
172
54
145
103
95
148
140
90
79
91
144
99
95
86
107
159
188
103
98
127
144
133
126
114
163
98
142
73
196
86
106
178
97
95
157
87
126
112
93
87
87
127
152
98
87
128
110
118
135
140
94
54
98
131
141
106
115
42
128
148
118
173
102
86
124
93
108
130
126
142
172
116
125
142
106
119
131
182
87
130
121
54
115
106
101
109
98
100
121
88
120
105
160
101
123
147
74
177
112
126
136
83
91
115
129
106
144
86
102
113
102
116
77
117
106
93
101
94
131
147
155
102
103
132
96
117
129
149
74
69
149
100
122
136
106
154
157
134
167
128
120
124
139
105
112
91
83
199
121
96
118
94
173
111
131
82
128
133
111
54
124
154
111
120
49
135
137
108
93
81
74
116
95
54
116
118
157
101
154
95
131
148
95
134
158
118
148
114
128
161
96
81
105
135
117
77
131
110
166
76
157
89
82
97
168
128
121
144
134
118
125
108
124
139
191
91
128
77
95
90
76
155
125
113
114
141
96
109
118
137
151
103
77
105
108
196
127
160
79
106
116
112
138
147
133
120
113
131
89
170
94
54
128
49
102
124
67
123
108
90
87
130
102
85
85
117
113
119
159
90
131
78
122
178
81
148
120
131
165
134
151
131
110
134
129
160
54
135
114
112
87
133
152
101
163
111
82
59
116
49
120
117
110
109
128
113
162
154
156
90
146
162
105
83
100
54
161
168
110
98
54
102
95
131
88
93
118
107
135
130
149
147
102
146
78
113
122
133
95
118
126
106
144
120
148
101
128
124
83
74
165
127
77
98
92
106
54
97
224
118
185
118
116
129
82
59
182
98
90
120
72
102
82
106
100
120
128
92
98
104
107
150
162
232
96
121
109
149
109
139
87
200
99
87
132
128
149
104
172
108
144
102
123
110
87
95
124
115
87
103
95
124
87
105
106
112
170
98
137
113
94
126
81
123
144
114
142
98
113
169
148
113
84
133
122
81
114
98
124
111
107
145
128
169
128
97
141
93
122
82
138
87
91
104
143
109
127
146
133
49
146
131
95
94
90
151
139
54
132
112
97
149
95
124
148
135
102
107
113
115
131
83
103
113
137
123
116
170
120
80
97
150
134
97
147
126
204
133
150
98
106
153
104
108
160
154
98
171
112
101
112
54
81
68
62
54
78
61
117
160
98
119
54
102
134
49
104
135
152
121
100
98
94
132
54
95
132
154
117
102
148
141
113
146
121
83
54
83
103
124
100
159
164
81
102
95
125
177
107
98
95
72
140
97
141
78
97
92
139
139
74
67
115
131
167
78
54
148
112
102
74
121
89
113
90
106
116
109
130
106
182
116
107
90
82
108
95
97
118
102
131
130
122
92
91
126
112
157
142
108
76
128
102
107
144
140
101
128
83
105
90
112
101
93
108
82
177
177
103
126
138
67
108
178
126
80
112
98
98
148
176
158
126
150
94
108
80
108
146
98
114
108
186
78
122
133
77
108
89
150
109
67
144
81
149
128
179
133
152
110
79
104
81
106
119
117
156
90
103
116
95
54
144
123
80
127
130
111
134
76
102
116
147
128
80
54
54
108
184
146
129
132
109
96
115
135
54
156
98
81
142
112
109
101
103
159
95
107
59
130
54
165
146
129
119
101
146
54
178
107
121
144
162
118
171
92
140
156
120
83
115
82
127
135
80
156
149
133
184
138
129
133
135
104
98
120
130
145
78
114
151
105
151
123
80
141
87
144
102
94
103
86
131
99
111
130
103
108
101
106
170
106
107
118
99
80
166
125
108
125
76
83
69
71
90
144
89
142
112
123
114
65
105
115
193
93
112
95
120
68
108
131
120
99
171
61
124
156
135
95
103
77
105
108
102
112
143
153
132
54
121
105
103
91
102
120
110
119
155
100
155
127
77
145
128
97
141
103
80
132
98
98
147
127
104
128
122
87
115
136
107
133
97
158
97
85
108
108
77
80
104
123
116
95
88
54
156
105
175
135
140
54
108
114
105
54
98
74
54
83
143
121
148
101
93
45
116
122
115
127
83
99
91
146
54
136
93
103
107
49
105
116
90
118
119
118
115
108
98
141
99
144
143
128
119
108
123
93
148
106
117
113
77
105
133
61
111
149
71
73
139
145
119
144
137
83
116
83
103
89
140
150
180
122
108
131
89
131
134
76
149
61
59
80
108
153
124
153
104
54
121
110
95
77
49
101
113
140
108
149
127
118
54
68
143
127
74
133
118
136
132
105
82
98
141
76
103
49
128
148
131
70
139
145
137
105
102
73
94
123
123
177
119
92
77
92
100
101
133
106
113
100
103
168
95
155
118
126
108
124
167
87
95
116
80
109
72
94
95
65
121
101
103
92
140
158
102
80
102
131
89
103
234
140
95
103
61
49
104
143
102
136
104
77
125
83
110
153
97
164
149
125
110
130
151
69
158
133
101
97
126
95
105
54
103
90
104
113
130
42
133
104
54
136
130
143
159
183
110
79
91
122
103
127
135
73
128
140
130
116
177
79
148
98
111
106
71
107
105
169
54
79
112
107
67
99
155
141
125
146
101
113
80
81
126
146
177
109
168
82
59
104
101
91
85
111
59
146
122
108
145
106
95
126
133
100
141
78
102
115
78
54
68
106
125
95
158
82
98
156
81
106
112
131
76
134
115
102
87
124
115
103
148
119
124
82
77
68
59
74
133
116
140
108
100
145
77
87
115
113
96
125
112
99
108
116
79
141
105
146
129
120
164
148
144
143
89
161
93
96
59
120
61
81
102
54
81
128
129
127
110
93
99
159
125
54
113
54
151
105
70
135
133
87
129
102
79
82
146
122
87
169
108
91
65
82
108
95
148
160
145
146
104
114
112
98
149
200
165
149
137
74
196
175
129
88
159
100
152
81
121
86
133
96
96
112
117
54
177
98
130
78
148
129
111
65
167
87
115
108
100
135
142
103
128
59
107
95
144
99
154
159
177
101
123
98
162
107
107
126
129
108
85
186
101
82
109
105
115
148
128
108
95
122
128
131
125
145
111
118
101
150
106
93
144
144
164
125
130
109
115
78
104
135
156
54
135
54
72
135
146
91
82
99
61
110
118
119
117
128
112
127
116
115
122
78
97
104
63
74
95
117
98
91
102
131
106
113
98
102
135
103
81
81
99
128
117
103
159
99
105
87
101
102
132
133
144
148
95
76
54
146
145
180
77
109
81
81
78
87
97
140
149
115
102
131
145
90
117
81
127
150
103
123
95
95
132
54
119
103
141
101
102
128
107
67
115
108
93
103
103
154
82
205
99
139
78
54
143
121
99
167
61
112
90
83
85
77
96
128
151
89
85
90
89
102
97
81
138
97
85
107
157
69
90
54
107
175
87
54
147
124
128
103
150
133
95
163
132
88
129
154
112
95
119
108
120
157
118
54
49
98
108
139
157
90
76
122
114
74
111
132
123
54
143
123
82
103
79
139
103
100
126
127
117
148
126
129
150
126
93
119
103
191
124
85
94
74
114
152
84
149
82
78
74
149
123
127
94
134
103
89
95
108
145
115
108
80
122
101
144
185
91
144
103
84
93
116
140
83
125
117
163
131
113
95
103
117
118
90
95
164
108
67
145
158
69
103
111
104
180
139
128
76
123
106
121
132
87
83
77
131
153
81
84
143
122
96
124
76
101
144
165
74
165
90
78
97
139
82
167
128
139
127
119
202
145
98
113
80
81
151
82
145
142
102
83
79
125
127
85
131
191
129
159
134
108
124
85
95
104
128
180
95
77
148
151
131
87
61
180
85
165
125
54
147
124
123
98
197
134
125
93
98
115
128
122
87
119
76
104
150
102
135
129
172
106
115
111
188
154
139
121
81
102
145
100
131
135
77
125
74
102
129
121
89
115
125
137
138
170
157
124
148
96
140
129
120
106
167
161
135
188
111
125
137
129
87
157
129
168
106
155
74
141
141
110
82
95
114
54
120
131
172
95
168
153
143
164
89
54
139
83
77
143
54
81
95
152
134
95
160
107
91
65
135
149
54
143
79
84
105
193
131
54
114
108
148
80
108
102
103
128
142
101
133
131
122
80
109
86
133
130
54
126
119
150
112
76
93
114
79
110
158
54
81
107
105
194
135
93
103
105
102
131
118
100
143
116
106
158
126
99
131
145
108
54
125
143
104
90
99
165
81
142
140
104
155
140
90
90
119
98
81
154
177
127
83
102
146
147
78
138
130
99
125
108
121
98
54
106
113
148
144
108
83
54
103
140
73
166
150
162
45
151
122
108
105
96
76
189
74
123
49
90
140
98
129
129
148
138
107
59
115
115
61
145
59
87
93
108
105
95
120
129
109
124
80
121
105
98
133
112
122
175
103
143
123
106
99
134
75
96
175
135
113
95
54
139
168
117
114
120
101
139
128
149
95
103
122
85
120
107
114
95
156
175
104
148
76
110
101
132
106
125
110
105
103
134
158
90
95
108
134
98
168
87
133
54
188
103
87
156
99
112
117
100
147
123
103
176
143
125
141
93
106
173
120
79
91
102
109
112
98
111
156
133
110
143
135
95
198
54
155
121
148
88
133
81
74
81
165
125
131
129
167
134
144
98
125
102
156
149
93
59
140
143
128
82
61
146
99
135
106
126
128
127
90
106
165
68
78
115
109
122
113
149
112
77
81
95
114
163
100
132
119
165
102
137
105
98
173
131
138
121
92
115
125
54
93
137
68
102
172
128
94
81
113
118
152
107
108
105
106
86
149
145
92
155
235
108
155
54
125
127
117
129
98
95
114
142
113
127
79
125
140
123
169
91
121
102
126
119
123
149
54
99
91
131
148
95
74
103
144
81
107
137
121
74
83
126
167
85
81
78
138
112
115
156
105
119
101
59
134
155
102
129
162
87
108
121
54
95
97
127
81
112
130
85
102
170
91
118
90
120
95
90
65
124
98
81
103
59
125
113
83
97
54
107
130
126
92
149
140
145
142
103
87
91
96
77
54
133
130
87
100
191
136
61
113
77
120
128
90
110
82
81
98
175
154
139
54
113
116
126
88
148
161
104
111
158
133
145
122
113
81
120
98
140
139
134
129
105
179
128
54
156
136
120
102
110
135
81
125
211
104
142
124
121
147
112
129
150
134
149
123
107
77
110
154
124
125
128
116
113
91
107
116
138
92
76
131
106
128
149
62
125
141
120
105
95
118
93
93
123
115
180
93
121
96
91
59
141
91
153
89
95
106
95
123
126
76
158
93
125
85
49
103
69
80
134
54
124
96
97
166
179
95
95
90
145
115
177
106
59
141
188
130
108
112
96
78
168
91
88
83
81
102
134
96
113
141
180
77
119
105
99
121
106
102
124
125
68
106
118
140
85
90
133
107
125
96
138
78
83
155
143
156
106
133
122
103
137
128
131
154
108
109
78
142
127
116
93
103
163
163
117
80
132
105
103
84
113
121
115
103
108
54
133
140
101
114
54
87
81
79
142
108
149
125
132
173
119
131
135
121
95
93
162
123
81
127
114
126
139
182
141
74
143
156
128
121
148
110
113
95
144
128
147
67
133
147
91
149
96
105
158
148
100
125
148
138
78
102
127
126
132
122
110
83
134
95
91
110
164
110
77
54
54
155
133
49
97
102
81
97
99
135
135
144
103
143
106
110
61
137
54
160
143
108
83
130
110
115
87
122
95
59
117
136
102
159
93
127
154
113
161
75
92
49
80
77
135
129
81
126
170
102
102
114
127
139
121
149
125
140
95
95
90
131
59
106
121
54
104
107
117
80
127
124
113
155
96
115
115
154
126
130
141
82
139
90
95
128
161
96
142
150
125
81
59
127
85
122
104
115
119
140
113
191
194
96
103
118
120
79
90
108
87
102
76
149
145
102
171
167
103
98
91
89
134
110
110
77
106
87
100
131
49
103
194
100
118
145
90
49
122
108
141
141
148
127
54
139
95
102
151
90
109
139
134
54
98
83
49
81
54
85
182
161
118
135
111
95
140
113
163
141
83
134
97
97
102
54
143
98
131
103
80
98
108
113
49
93
113
145
98
101
107
96
106
98
105
108
87
81
108
107
95
110
123
125
128
69
160
76
103
132
117
143
143
139
112
133
113
135
156
96
128
87
127
117
145
95
147
125
59
159
116
59
128
97
131
54
127
54
128
117
156
156
114
97
129
74
153
123
102
119
113
102
106
54
108
95
117
104
94
113
155
54
102
102
108
150
81
98
124
116
124
125
144
119
180
88
96
130
133
115
54
112
132
87
148
113
143
113
91
123
108
131
163
112
74
128
90
139
125
90
88
108
148
151
135
94
95
116
108
118
137
73
85
113
131
161
112
127
95
126
133
127
93
115
54
90
105
114
106
158
140
127
169
119
74
138
82
115
117
108
155
127
117
108
108
125
101
129
119
54
95
81
133
105
118
109
105
81
162
81
77
91
99
95
125
61
139
78
89
98
103
97
123
157
87
82
158
131
125
145
54
93
85
113
123
61
95
106
177
130
76
118
133
108
54
95
102
137
89
116
126
54
110
105
103
131
91
77
119
97
128
132
123
140
143
81
102
81
115
124
124
110
164
117
93
69
54
81
103
134
155
138
149
108
149
101
115
115
118
49
161
133
104
97
93
83
129
113
92
94
98
98
121
102
120
151
137
121
103
142
136
88
108
149
59
112
147
81
158
108
111
142
150
113
93
151
126
120
93
134
91
59
150
120
116
128
166
144
107
54
113
102
155
101
126
90
128
143
107
112
49
163
108
131
100
124
102
124
123
90
132
117
165
166
99
127
108
122
128
113
104
95
103
49
142
108
85
113
148
133
98
97
59
120
126
61
77
128
122
96
121
139
100
95
90
200
106
160
144
90
130
131
74
69
90
137
148
106
86
107
238
102
156
103
90
122
143
107
117
91
114
143
95
98
153
117
125
148
119
102
54
139
117
110
152
139
139
98
110
116
99
108
114
122
81
114
95
129
95
69
123
146
89
54
114
82
92
135
109
125
146
90
151
174
177
78
71
147
102
138
143
97
49
125
119
117
107
155
54
105
123
106
59
167
88
171
127
167
173
98
135
111
78
168
125
83
74
143
98
107
126
136
166
54
133
106
114
119
143
103
85
146
91
80
80
132
108
102
104
104
72
120
117
103
132
54
80
125
125
127
108
121
102
148
128
152
80
118
83
151
129
108
165
111
111
146
109
97
144
102
76
133
83
126
160
82
98
54
59
89
82
115
97
113
138
83
110
96
162
83
140
77
102
105
134
151
59
102
87
124
139
121
171
135
148
161
114
99
119
105
74
138
105
105
146
111
121
76
54
96
128
108
225
92
49
164
148
54
92
147
129
133
127
125
140
122
112
151
103
105
90
96
115
169
102
119
94
84
124
98
83
133
68
145
89
125
118
129
137
111
87
127
165
175
98
90
105
96
108
145
116
125
54
115
87
74
111
154
128
148
167
105
115
95
158
135
145
108
97
147
106
93
115
150
84
103
151
95
117
125
128
152
95
95
121
146
67
100
69
123
118
148
82
103
179
169
144
141
113
128
89
146
135
142
54
96
54
103
108
135
135
105
97
121
110
125
99
133
107
193
124
99
105
135
119
161
138
115
103
131
102
99
115
135
127
67
151
126
120
138
122
147
97
180
87
102
125
132
138
171
161
110
118
131
99
102
161
108
83
160
200
88
70
122
119
117
182
77
124
145
129
124
129
77
106
123
97
148
135
117
152
95
69
113
114
147
128
54
130
100
140
119
82
117
113
143
103
143
98
157
81
122
129
148
137
92
87
114
61
156
106
131
124
173
158
156
132
137
79
102
103
108
116
134
97
128
115
141
100
148
102
175
116
103
95
137
138
127
98
77
59
98
131
128
134
122
120
68
120
82
161
112
122
85
120
106
125
93
149
115
136
74
68
127
117
101
143
90
161
146
74
116
120
54
98
125
111
95
141
135
74
98
61
106
89
105
112
118
77
49
162
98
49
160
108
115
103
140
102
107
95
188
98
78
131
170
116
76
120
93
95
109
157
49
135
154
135
74
141
107
161
177
163
61
158
123
96
123
142
113
161
102
113
93
158
146
143
144
102
103
115
148
121
107
77
155
108
85
98
101
111
81
178
125
122
68
111
128
108
160
78
157
97
103
108
177
112
103
94
137
92
85
133
86
139
168
54
125
166
135
94
125
123
113
74
153
73
81
90
144
126
80
113
115
95
155
106
113
128
181
107
59
91
103
82
54
129
49
143
125
96
82
146
133
114
116
106
105
143
157
76
129
128
67
132
95
141
158
87
103
54
97
81
134
77
67
142
80
123
61
115
127
62
109
67
158
134
103
54
110
103
129
107
170
56
157
78
120
159
94
93
81
113
144
106
87
91
54
151
146
133
97
76
143
140
106
127
82
135
108
147
106
172
122
114
140
96
49
128
111
135
54
145
57
104
80
74
118
99
74
129
108
133
135
126
200
84
120
117
107
103
81
198
89
76
156
102
104
144
91
54
102
127
73
155
127
109
93
126
92
139
85
149
129
109
133
135
102
107
98
103
115
155
127
54
87
82
111
112
99
102
163
116
129
95
124
147
96
90
100
111
157
122
54
94
98
80
83
96
76
112
124
119
83
139
80
133
149
102
100
87
112
120
78
124
117
107
54
113
88
77
116
120
105
133
151
126
105
130
92
97
102
124
112
92
181
129
98
54
105
102
87
112
115
105
140
102
95
133
138
112
95
49
147
127
153
54
165
108
118
108
118
166
109
95
165
102
112
69
54
54
117
99
107
125
98
77
120
178
139
91
148
148
135
105
101
115
141
143
119
147
118
123
143
54
87
125
83
107
107
120
164
116
90
95
102
139
128
73
59
127
98
49
134
129
177
103
116
154
74
78
127
119
148
156
135
96
102
136
158
129
127
152
132
96
128
100
148
96
109
112
117
131
127
134
152
54
143
148
127
54
103
105
161
144
81
108
158
202
116
107
110
77
156
110
97
114
78
190
113
130
108
113
115
98
180
147
118
94
76
118
105
98
135
108
119
68
113
83
135
118
134
108
115
168
124
123
197
123
146
110
107
69
146
110
112
127
119
127
93
97
115
127
123
110
106
98
109
78
134
95
144
90
54
120
115
102
108
98
140
54
147
200
124
178
95
125
125
152
82
101
133
107
143
142
144
154
134
103
110
49
107
93
133
72
156
95
49
98
102
101
67
147
138
178
202
163
139
127
130
148
140
107
59
127
110
95
98
134
105
49
108
112
98
176
73
140
84
93
126
103
83
138
81
107
107
105
59
110
95
157
100
115
81
95
74
99
106
119
129
99
137
170
158
96
158
135
108
54
106
114
159
160
154
131
133
140
132
126
139
95
124
120
135
54
102
90
115
122
105
124
81
115
139
163
102
173
98
95
101
134
138
148
95
117
98
80
112
102
82
76
97
108
148
101
144
95
76
107
121
124
114
120
143
102
59
150
135
132
90
148
87
145
113
155
148
117
104
83
108
152
115
71
87
179
95
131
74
125
80
168
139
140
129
76
102
146
148
79
113
126
143
159
137
154
106
54
109
131
81
103
74
118
99
82
118
143
136
95
95
134
95
108
141
105
65
143
147
88
125
116
119
126
96
82
144
111
140
102
54
87
100
108
127
134
134
145
116
132
102
125
107
102
103
81
135
74
124
102
100
175
131
98
125
158
116
153
85
145
157
98
129
142
54
93
128
179
118
125
137
150
119
144
107
125
91
54
98
123
165
130
97
141
74
144
120
82
97
108
117
124
143
103
138
128
113
120
86
129
140
125
153
122
77
106
113
93
151
49
148
54
157
108
98
77
95
111
122
94
156
150
103
145
108
108
108
54
102
133
68
103
111
141
106
82
77
183
107
127
117
167
106
130
139
111
107
95
95
73
102
108
164
104
67
98
122
126
69
133
54
87
148
100
69
116
78
77
59
119
131
108
144
113
102
108
127
103
148
76
101
137
154
81
129
115
94
100
85
143
129
154
143
106
54
127
135
138
122
93
125
143
87
85
126
54
93
59
83
133
114
148
165
139
165
112
140
83
158
118
69
95
84
80
106
87
172
117
107
177
88
103
81
117
99
152
157
111
161
115
137
115
103
102
170
133
124
127
134
78
123
86
135
145
101
148
111
67
107
216
124
74
113
92
109
140
142
68
149
144
133
123
143
103
128
105
136
98
147
108
122
108
76
125
144
132
123
98
106
105
148
91
157
160
54
133
167
88
135
116
100
152
79
95
118
180
54
131
113
108
74
161
87
113
111
108
110
145
80
127
76
107
82
116
140
122
123
143
54
97
68
138
160
127
93
130
75
98
161
88
89
81
87
83
204
127
129
102
88
94
110
177
148
135
77
91
95
148
170
114
119
124
59
199
54
143
162
109
109
91
115
143
108
109
120
134
153
135
113
125
129
85
146
139
177
127
108
117
103
116
140
144
131
144
82
160
83
125
103
93
121
148
138
139
177
116
131
76
93
138
87
145
135
103
101
97
119
82
133
68
79
115
161
119
156
78
54
106
73
146
138
85
148
128
100
87
98
133
107
81
83
99
95
129
126
186
134
149
79
94
49
113
151
98
131
102
103
184
127
123
93
143
154
117
83
92
128
73
122
171
102
111
153
74
97
82
97
127
148
67
170
76
124
152
110
122
113
119
103
76
103
92
112
146
105
59
76
54
125
82
142
113
67
140
108
110
103
82
86
99
87
133
91
125
87
54
141
59
126
143
49
129
85
126
87
122
129
97
77
102
113
104
163
110
159
157
159
150
83
77
160
82
108
98
112
144
93
122
110
170
110
117
131
161
91
107
145
59
108
108
158
150
142
131
95
147
49
90
108
108
81
113
130
108
91
133
102
85
147
111
115
98
99
102
98
101
81
68
95
155
95
92
137
117
82
83
111
114
120
133
90
104
99
125
67
148
127
125
135
67
141
109
102
76
106
138
113
106
130
92
74
95
93
135
102
105
132
127
105
107
95
153
138
179
121
76
110
106
132
161
103
83
97
115
81
143
117
110
135
59
74
87
151
164
141
164
127
172
161
81
129
108
103
87
81
124
124
105
108
117
82
126
49
145
98
94
132
109
85
104
83
115
153
110
120
65
102
122
103
142
80
54
68
157
143
93
92
96
131
99
139
87
133
95
119
54
113
130
109
98
96
141
116
135
120
157
145
113
81
122
190
147
49
102
145
103
116
140
54
102
54
95
149
114
94
165
158
139
102
95
169
158
147
122
136
108
94
104
123
118
102
95
150
93
117
155
124
129
85
143
106
147
102
101
112
54
93
133
80
87
136
81
135
114
134
95
147
74
118
118
68
138
125
148
140
89
107
140
146
95
129
115
120
164
81
80
103
87
77
98
118
140
157
120
97
125
121
140
128
119
103
118
95
102
54
114
125
130
144
144
72
122
54
95
128
49
103
101
141
137
145
98
119
74
107
110
122
165
90
137
155
113
103
125
100
109
108
124
87
99
135
98
118
130
165
141
148
131
136
120
133
92
101
113
115
144
76
125
90
140
119
102
104
186
98
49
83
167
54
106
79
119
67
111
132
81
146
80
105
95
146
147
124
91
132
129
125
187
118
108
81
129
91
109
96
107
154
94
129
110
148
108
102
107
49
57
167
59
69
143
76
112
143
90
54
102
106
133
123
117
74
107
126
136
109
117
54
194
94
94
54
98
76
132
91
82
109
100
112
115
159
54
110
123
138
80
119
121
143
135
134
93
90
111
103
113
113
103
59
172
90
109
141
114
118
163
154
59
148
159
130
133
96
89
102
143
54
112
101
96
102
157
113
168
134
108
59
121
75
144
118
142
161
148
117
136
105
82
98
116
95
86
129
81
128
120
137
163
146
95
54
87
107
135
70
71
82
105
100
49
102
174
143
115
93
124
167
148
54
108
153
81
130
175
157
145
102
129
105
137
85
108
133
91
69
101
136
152
59
108
175
125
158
167
102
96
131
95
143
130
83
130
128
127
138
94
54
192
97
157
145
86
80
113
85
69
146
54
79
95
107
92
93
145
124
123
108
157
132
54
146
90
85
120
97
106
153
82
103
131
93
108
169
106
128
54
81
149
54
77
93
155
108
89
100
69
103
133
91
115
113
144
99
95
148
128
113
115
88
152
94
108
213
105
107
161
132
54
116
95
143
101
98
103
82
146
150
108
142
194
100
115
130
133
188
139
87
105
74
114
102
125
133
148
165
102
137
124
77
106
81
81
137
79
113
57
76
106
87
59
128
129
117
83
120
61
67
125
161
81
165
106
108
97
76
145
146
118
142
67
96
168
125
103
108
107
81
124
144
119
76
65
76
102
83
98
128
49
132
145
114
143
130
54
135
114
103
93
146
133
80
96
49
101
99
150
54
49
98
93
100
138
89
176
105
150
100
105
164
54
81
128
96
101
125
112
134
108
89
99
103
106
68
92
111
133
128
59
121
90
105
71
116
127
91
61
98
128
107
133
136
111
119
85
118
122
158
49
54
130
54
105
98
95
132
144
168
146
160
96
121
128
140
108
96
118
104
113
115
54
98
87
98
75
167
99
98
94
175
91
154
103
86
140
125
101
121
105
93
102
128
133
95
102
133
105
125
134
199
93
152
163
129
144
191
134
153
134
145
97
169
152
94
94
159
91
106
131
95
122
105
74
54
126
127
101
147
145
151
125
127
218
104
98
122
157
143
85
121
54
81
54
140
135
180
97
150
117
131
124
98
81
90
161
120
102
117
177
80
115
125
120
108
147
121
65
169
141
105
124
123
76
154
103
83
81
81
125
76
87
99
131
145
131
92
93
90
82
118
102
54
129
100
90
82
159
95
200
112
90
118
127
168
98
109
180
118
102
114
161
101
125
87
121
65
90
140
152
108
103
100
54
184
91
131
98
154
85
69
114
157
167
49
103
123
59
77
133
156
91
83
143
96
135
145
115
89
140
54
120
128
101
161
136
106
154
80
89
190
80
128
126
128
132
96
100
115
106
122
89
87
128
118
115
157
105
91
164
113
106
178
127
146
134
121
59
113
162
76
148
127
127
54
144
92
61
49
92
105
49
146
115
191
102
133
67
144
107
129
103
129
146
91
147
113
148
101
134
115
141
124
117
90
85
76
125
110
49
159
77
150
81
81
99
178
143
96
106
87
108
127
76
67
97
126
137
79
157
95
155
143
121
77
97
169
77
80
137
95
150
90
118
120
54
79
108
159
134
153
95
105
110
137
140
77
143
141
54
73
110
107
103
70
76
102
95
97
147
113
102
87
158
131
143
107
81
94
100
81
128
146
98
113
116
54
131
115
200
144
158
127
80
149
113
111
161
101
149
108
133
129
148
142
91
135
142
108
97
146
170
104
97
74
91
127
72
117
139
67
89
122
167
167
144
94
108
113
95
95
131
158
96
95
151
168
164
122
107
168
107
133
152
117
82
107
158
95
78
101
80
98
113
82
150
105
120
133
118
94
138
111
152
102
90
141
133
79
127
128
128
162
105
191
102
111
151
95
155
83
82
130
100
97
150
112
125
117
130
135
108
115
59
54
135
54
157
105
118
175
112
95
181
97
95
105
81
173
143
133
145
100
87
124
98
131
120
100
103
159
124
140
54
155
134
84
90
143
112
139
128
133
112
98
143
128
119
124
111
163
108
148
139
117
102
54
54
107
89
108
54
113
156
77
83
91
181
87
54
133
145
103
78
74
96
96
100
100
147
137
97
157
135
99
152
115
91
129
86
150
140
139
132
97
118
154
153
105
98
105
172
98
118
151
76
120
171
128
145
130
65
143
171
86
76
123
54
112
49
72
95
92
120
156
87
123
54
108
188
98
140
194
110
105
158
90
108
135
82
100
169
54
145
76
156
119
54
193
124
59
83
103
85
95
129
122
78
112
90
187
54
157
118
81
74
98
127
150
134
73
81
87
139
136
120
144
102
54
169
146
161
144
127
92
95
129
102
95
128
74
125
59
95
113
54
168
95
98
133
119
122
102
120
54
81
85
103
95
83
97
89
54
150
85
137
102
88
114
149
122
129
125
127
109
117
108
127
108
105
155
135
76
96
102
49
139
128
116
161
120
100
54
148
68
104
101
118
121
144
138
90
107
45
103
102
141
120
157
122
204
99
127
121
123
102
125
81
109
158
98
126
67
122
116
121
166
128
89
96
139
124
127
90
54
124
113
108
142
127
75
121
107
102
74
175
128
151
102
128
134
121
113
78
103
103
107
61
67
77
152
105
59
148
119
130
95
131
113
90
95
113
125
80
143
95
76
125
103
69
69
129
99
154
146
120
110
113
153
161
168
109
79
54
185
145
135
104
54
125
205
117
105
102
54
154
149
98
144
93
108
169
78
83
137
148
115
91
112
93
144
121
95
94
128
116
108
112
106
105
98
158
107
115
105
107
133
126
123
113
76
111
95
76
59
81
144
127
178
105
175
98
135
54
108
106
113
165
165
105
108
87
127
86
75
82
128
117
93
126
120
179
78
147
144
138
102
77
157
118
103
137
132
85
165
67
79
81
149
102
138
81
153
157
102
116
152
120
134
115
166
87
137
125
168
108
61
90
119
141
126
118
98
142
103
101
132
112
74
125
96
102
117
135
54
116
103
85
95
117
137
137
91
139
95
80
54
105
79
152
186
140
115
85
91
77
126
167
108
148
81
103
113
105
95
157
124
127
93
59
105
45
141
169
117
136
93
115
102
146
120
78
114
98
74
144
69
80
128
132
110
94
106
69
125
95
121
54
133
150
145
125
125
123
140
105
133
83
61
107
95
149
134
125
103
160
106
108
102
78
138
142
141
102
87
129
85
105
132
146
151
141
74
152
95
109
131
136
153
134
130
95
144
103
98
80
90
91
105
129
83
120
155
103
143
49
107
156
93
140
149
116
147
96
54
113
122
114
94
105
125
54
54
106
127
132
142
128
108
74
152
145
162
83
78
69
129
130
77
80
145
134
134
67
139
96
156
167
123
134
128
104
129
137
214
104
106
129
111
114
95
105
164
93
177
128
106
133
110
130
90
113
102
108
87
67
59
133
49
165
49
162
102
81
134
148
101
144
108
136
100
99
127
141
152
148
128
132
108
121
82
127
115
42
116
119
131
127
102
97
129
156
93
119
125
114
85
102
96
89
144
104
83
103
74
94
98
173
152
122
129
111
82
120
80
113
105
110
67
178
112
118
150
159
101
109
102
81
109
160
125
127
125
98
122
132
128
102
77
93
158
97
105
110
135
128
96
147
90
94
101
119
91
149
103
74
105
139
83
101
110
136
102
164
45
131
127
140
76
74
129
125
131
149
78
110
142
95
95
124
138
98
167
97
146
87
118
110
129
133
87
88
101
146
117
121
108
98
131
140
133
140
151
139
92
87
132
112
74
141
107
152
167
131
87
103
179
128
136
84
125
106
164
94
134
133
131
139
134
108
145
117
113
103
100
54
133
143
102
100
145
98
139
140
101
110
122
147
78
125
103
130
105
126
86
127
160
92
108
87
96
77
77
86
59
98
54
83
168
158
114
120
127
127
96
99
73
45
117
133
80
93
133
164
73
146
103
77
124
95
103
90
137
120
93
139
123
143
149
122
126
101
98
115
106
149
129
76
123
139
83
169
119
95
124
147
146
111
74
124
131
95
128
161
133
100
127
128
92
77
67
108
101
74
165
96
93
118
95
122
95
135
165
98
119
124
97
117
98
102
96
106
144
90
125
108
61
108
54
49
108
108
144
59
119
82
128
150
133
54
114
98
68
146
82
94
108
87
113
134
150
84
76
142
102
54
130
155
146
102
49
81
111
121
102
116
125
59
141
173
109
90
137
152
81
144
113
74
102
115
97
76
120
102
76
114
80
143
103
145
119
145
78
157
108
126
114
95
102
95
117
107
123
132
87
81
108
172
167
147
143
138
133
118
151
167
130
162
78
154
143
124
138
134
142
148
93
105
149
120
161
128
78
95
144
68
119
83
118
117
98
139
68
160
151
93
143
136
149
140
158
180
72
104
117
173
110
59
67
102
78
105
107
106
165
128
96
101
113
83
151
111
127
163
120
120
54
144
137
74
129
103
96
105
110
116
125
112
120
91
109
117
90
113
123
95
76
122
130
111
124
54
160
98
139
135
103
131
124
117
100
162
54
127
111
150
102
115
103
121
54
151
87
118
101
82
98
77
94
59
125
82
95
139
141
115
81
95
136
107
113
93
125
156
105
174
144
107
98
93
85
102
109
108
163
106
158
103
67
135
136
114
132
162
134
111
90
67
117
135
143
170
102
122
108
122
147
114
91
104
113
118
103
94
133
67
154
137
133
98
97
90
160
157
120
90
114
125
90
77
117
144
59
81
82
107
127
82
102
81
145
141
49
117
54
98
145
133
147
105
61
125
132
121
81
127
124
95
110
84
106
171
120
149
133
82
114
89
110
125
136
59
100
89
101
122
125
80
103
83
131
90
87
148
157
156
100
121
154
131
160
139
138
118
101
159
107
119
120
144
124
98
177
141
121
105
118
169
91
122
102
103
94
137
148
161
147
155
125
141
95
119
67
107
122
97
97
77
87
137
54
161
143
82
113
101
98
111
169
87
132
54
147
87
104
107
162
115
108
110
113
139
130
74
88
116
67
115
158
103
82
107
145
103
133
115
173
117
85
146
125
152
125
83
106
98
42
118
87
101
105
144
139
93
102
149
144
79
154
142
157
157
126
128
145
67
100
115
106
125
153
98
120
105
54
145
80
158
108
132
128
199
95
133
95
83
112
94
74
96
77
212
177
101
59
119
116
128
107
135
159
143
103
118
110
54
81
82
141
120
119
143
117
125
125
127
147
168
147
81
124
96
125
114
76
198
114
107
93
129
67
102
98
77
49
131
117
144
121
145
128
147
106
95
135
84
151
113
105
90
106
103
54
133
125
119
85
124
80
145
145
95
120
148
117
199
137
102
172
92
125
95
147
96
106
134
143
114
118
49
90
108
137
125
90
164
92
104
116
95
120
159
89
81
96
145
123
114
82
149
74
102
74
127
122
79
106
78
128
128
103
125
87
143
102
104
102
143
138
77
107
120
128
103
131
99
107
194
148
75
149
68
88
120
87
110
142
132
98
177
90
105
89
84
90
105
81
133
134
135
147
54
123
82
197
118
54
133
152
135
118
125
134
49
83
131
85
158
114
104
86
103
101
94
80
121
105
133
145
110
114
110
131
104
87
143
142
111
128
115
101
80
74
129
81
103
79
178
186
117
120
102
80
112
54
144
81
135
141
82
113
128
74
98
137
97
109
91
125
123
98
118
102
90
147
89
105
93
74
98
61
91
98
131
113
108
90
153
119
107
102
130
102
120
80
98
67
156
111
103
102
153
103
143
110
135
147
125
134
113
133
130
170
141
133
80
86
87
139
104
113
77
103
122
131
127
177
136
102
78
69
134
87
174
111
112
98
105
87
98
134
95
77
105
135
102
131
90
156
127
152
111
132
107
103
149
163
101
118
123
131
109
117
109
168
122
54
118
108
79
100
54
90
108
132
96
164
144
132
86
113
84
140
152
169
105
133
102
168
101
133
110
102
108
161
155
115
95
85
154
110
115
143
160
122
61
54
177
95
121
119
81
112
109
112
115
122
126
133
130
76
91
133
130
120
113
146
92
133
141
119
59
54
95
98
90
168
147
96
147
81
54
97
90
113
105
134
167
124
140
86
54
105
99
126
81
160
115
119
143
113
67
100
129
122
83
89
87
49
127
140
95
180
116
122
129
125
83
129
125
151
95
139
123
111
95
110
117
95
105
110
116
94
83
98
92
129
162
89
139
137
106
140
171
95
45
102
96
81
113
144
171
169
100
118
144
93
59
76
108
89
101
107
140
74
125
85
87
82
125
92
59
156
160
96
131
126
148
92
148
54
144
108
168
122
140
82
133
153
130
94
144
118
149
95
122
148
107
110
114
158
103
130
119
180
113
54
83
107
101
65
77
123
102
110
112
54
98
166
151
125
114
113
102
199
81
94
109
151
108
90
150
111
118
54
108
74
91
59
95
98
108
93
120
127
102
95
89
149
122
94
122
54
120
69
127
68
132
103
177
150
99
102
96
98
93
180
128
179
108
103
115
95
78
92
121
86
54
120
59
112
100
108
96
94
125
119
145
131
111
65
127
120
74
94
98
115
59
140
49
100
105
136
69
102
146
123
105
133
151
94
147
126
151
93
124
112
115
144
103
81
194
81
74
152
145
101
103
131
153
140
80
165
124
85
141
131
102
90
95
54
123
45
154
102
92
81
143
95
174
144
125
108
103
141
49
173
77
77
81
143
143
81
172
123
83
119
94
125
117
125
116
106
77
54
98
103
54
118
141
113
90
116
87
87
68
102
158
125
59
144
92
102
85
133
113
131
54
113
93
99
129
139
146
127
96
108
82
95
110
124
106
137
110
111
114
116
136
102
125
106
143
123
106
109
133
155
134
122
77
143
160
125
102
54
54
144
154
115
146
123
74
111
127
109
80
93
133
68
128
54
136
140
108
97
164
76
147
95
114
113
83
139
115
90
143
132
112
97
153
54
157
113
54
98
153
100
115
108
93
96
95
82
93
134
105
199
86
102
158
149
134
87
119
98
95
111
103
146
117
103
96
158
179
90
88
140
95
162
113
125
95
128
149
103
113
148
102
129
162
68
105
218
123
102
68
90
83
128
113
100
132
78
146
89
135
79
98
167
59
140
103
96
105
127
82
145
101
123
162
126
128
109
101
105
130
114
157
95
54
102
103
108
124
164
98
130
138
101
90
118
156
177
98
128
82
108
114
116
124
86
125
152
95
54
139
160
59
95
106
59
95
120
119
102
102
115
109
94
131
120
110
117
119
115
95
96
114
160
125
130
127
144
168
131
98
98
147
161
115
74
106
146
82
170
102
179
146
79
188
109
108
130
125
141
125
77
114
130
163
77
118
124
45
127
105
81
82
172
77
109
130
93
103
116
115
85
102
148
108
112
94
108
116
125
108
49
113
120
113
83
172
127
96
78
78
87
54
85
128
134
49
122
119
126
107
152
156
147
115
49
113
95
102
108
87
96
102
138
129
94
129
128
131
97
177
108
101
122
67
165
54
87
139
127
108
126
142
127
96
76
121
161
146
146
106
105
69
144
129
113
108
125
101
108
128
140
105
125
95
120
172
85
122
98
127
108
92
87
83
62
133
115
173
115
103
85
127
144
105
165
130
110
110
109
92
120
92
135
113
160
102
157
85
59
152
93
129
160
96
103
105
128
49
192
125
122
122
91
127
132
152
98
135
104
107
95
140
93
99
141
83
90
103
95
150
115
149
139
141
102
146
113
99
97
49
178
108
147
108
103
83
144
124
74
148
98
102
116
133
88
133
110
126
102
137
142
107
144
109
152
113
98
149
145
93
141
142
181
95
154
119
142
54
121
95
93
152
115
170
146
133
118
163
144
102
98
122
104
82
139
82
108
139
129
144
115
177
81
109
83
82
115
140
139
96
93
129
102
101
144
124
83
105
149
116
104
144
133
133
144
132
110
143
102
140
101
116
95
95
104
68
111
100
119
128
95
149
99
81
98
127
105
96
96
140
101
122
117
82
98
102
117
125
98
137
148
148
147
160
98
182
163
144
91
103
105
81
114
128
118
124
127
68
127
125
119
105
134
112
120
194
111
140
124
148
125
129
108
123
138
133
120
176
122
90
59
93
125
105
129
150
150
125
125
82
150
49
74
91
133
81
146
118
133
102
141
73
121
122
141
54
123
106
180
79
99
116
131
116
117
87
78
49
101
105
142
78
134
135
96
100
67
136
130
162
117
130
129
81
158
49
129
170
95
125
117
84
148
127
81
109
95
111
85
107
96
131
161
130
127
98
112
113
135
145
158
127
59
95
91
128
98
145
138
81
78
110
157
115
67
144
86
98
113
115
123
66
102
86
92
97
146
107
95
177
111
102
131
76
157
117
107
102
95
148
98
125
129
149
136
127
89
103
167
143
89
96
144
122
90
124
145
104
122
128
180
148
112
102
171
54
140
145
87
114
87
108
122
74
93
107
80
132
90
128
121
150
106
158
186
117
138
126
91
129
67
54
98
132
98
96
122
96
93
104
103
59
114
115
54
125
101
108
141
139
93
102
91
117
95
98
56
113
125
105
87
149
131
103
121
106
89
95
114
128
95
117
133
95
102
102
144
136
131
118
113
95
158
108
112
120
134
106
97
144
102
177
99
190
84
59
139
200
140
141
81
149
129
98
121
154
80
147
156
120
147
54
117
133
150
76
125
68
115
74
81
170
142
54
54
198
116
140
61
147
108
139
92
191
139
119
102
105
141
144
135
76
177
103
143
101
110
103
200
77
82
133
125
93
113
167
89
129
123
49
161
81
106
122
102
102
115
126
123
148
116
85
92
78
216
152
90
142
125
54
102
107
74
96
92
54
170
54
146
123
96
155
156
151
108
133
153
84
118
85
76
124
100
106
159
129
98
111
108
90
180
127
92
73
108
101
101
54
95
100
159
111
126
130
97
129
124
131
95
81
135
108
89
54
141
170
124
120
113
126
111
106
121
148
136
97
54
150
144
123
110
139
105
138
110
87
133
109
112
135
98
49
85
141
102
117
79
108
138
102
146
158
218
99
129
96
112
116
105
105
49
54
85
54
180
145
131
127
74
77
96
122
81
131
100
122
133
59
115
122
85
149
108
145
147
145
128
87
81
123
95
104
117
112
105
126
132
96
147
114
125
54
102
59
131
121
206
59
191
118
149
154
144
152
77
74
77
145
137
59
114
98
142
83
92
143
133
125
105
101
139
97
103
129
120
83
105
77
131
83
127
164
105
165
97
113
125
95
94
105
85
78
133
133
103
116
125
140
117
149
122
86
95
86
148
106
114
92
128
158
110
140
161
155
148
159
135
124
103
144
122
112
121
127
67
59
93
118
134
93
165
149
96
107
54
80
67
74
72
160
136
148
95
150
168
134
113
125
88
97
133
87
116
116
108
111
127
108
113
83
167
109
54
141
147
114
129
108
149
121
87
99
197
95
61
103
108
54
81
133
124
119
119
108
157
109
113
108
116
125
79
72
113
103
78
85
165
121
101
49
112
148
54
67
100
128
147
152
112
120
106
94
183
143
154
166
156
151
74
93
97
139
140
134
90
155
148
113
100
93
117
120
119
107
102
119
95
108
131
135
113
148
126
77
82
118
108
120
95
144
97
122
107
95
152
136
87
113
142
103
112
103
138
107
158
100
122
128
104
54
115
134
49
131
177
145
143
106
177
93
107
112
100
102
163
102
135
105
69
111
163
154
165
136
103
98
76
95
120
128
172
131
132
82
109
95
130
121
171
113
82
89
143
108
167
148
118
122
126
179
107
119
145
115
87
114
128
65
112
120
116
93
108
115
119
118
87
140
99
99
89
119
99
106
121
127
93
97
104
103
103
81
99
98
116
59
107
81
127
87
159
104
127
77
108
121
81
59
87
168
112
155
157
132
145
102
164
194
118
152
107
158
165
127
94
89
117
92
133
177
161
102
154
163
108
72
185
121
101
81
124
91
90
112
108
152
105
168
94
178
101
115
126
99
81
131
107
81
115
103
49
93
137
97
59
147
95
99
61
85
128
148
135
128
133
147
181
102
103
107
65
98
98
102
147
112
84
150
134
86
49
87
74
126
153
148
120
84
113
93
144
127
125
122
82
129
85
139
88
108
102
130
123
129
130
119
123
153
126
128
76
98
108
138
116
109
54
128
127
129
83
148
125
135
132
127
99
138
139
49
107
97
123
138
132
93
103
95
110
92
107
88
134
68
135
120
128
133
102
108
103
118
125
123
102
106
100
108
135
108
125
116
101
54
107
144
84
158
115
134
102
109
78
159
98
138
65
152
85
125
102
131
124
126
77
234
130
130
119
124
92
137
87
167
127
129
144
91
165
100
142
174
129
128
145
98
125
106
100
141
97
102
102
147
161
109
108
88
143
84
144
97
127
102
95
123
91
125
122
95
125
127
145
76
74
123
94
126
102
125
106
83
80
167
69
125
117
93
115
74
86
107
174
73
106
134
147
74
67
119
128
131
139
197
95
213
129
148
104
131
139
95
145
144
78
127
102
108
150
92
102
111
91
137
165
98
94
119
108
128
135
128
141
127
103
131
108
133
132
153
85
87
167
90
142
81
102
91
118
161
143
86
90
84
93
154
78
87
82
125
108
131
153
95
109
80
168
116
115
161
65
127
113
112
128
95
98
111
119
101
148
161
147
112
151
150
180
119
59
187
130
108
115
99
156
54
122
96
126
92
104
172
119
168
103
146
126
186
116
103
102
77
168
123
135
178
135
140
112
87
103
93
91
90
96
111
97
106
115
121
106
135
129
133
171
119
103
93
168
141
148
111
108
126
153
87
77
88
145
123
124
113
156
133
133
88
143
112
131
74
125
155
153
148
76
103
160
84
134
82
112
119
45
81
166
95
98
147
101
103
122
103
131
77
138
126
61
155
108
81
99
146
54
84
159
121
106
109
109
105
161
80
126
101
69
127
102
119
54
119
132
92
102
122
117
129
100
89
150
54
97
119
140
200
153
80
95
93
105
109
81
105
98
117
61
134
133
109
150
122
124
108
161
96
125
138
111
93
85
98
144
107
120
93
108
83
167
113
54
88
145
54
140
128
127
119
126
113
87
86
89
108
177
144
155
82
138
96
111
73
103
132
76
105
92
93
59
103
140
111
146
69
97
136
83
122
128
78
108
81
128
101
117
186
54
67
98
153
131
93
131
158
73
95
103
82
108
81
59
88
115
115
150
113
108
69
54
69
84
82
98
129
120
108
133
145
133
99
144
129
70
148
83
142
95
118
129
166
146
78
99
137
133
113
122
196
161
79
138
87
54
123
98
113
81
110
90
125
112
111
103
98
133
112
132
139
127
104
76
95
158
116
94
142
113
146
76
92
97
77
74
93
125
118
99
106
126
131
165
143
54
161
96
109
138
133
103
102
148
92
98
151
130
130
126
129
172
59
83
133
141
143
108
112
54
97
54
49
106
69
100
175
123
80
77
91
186
102
124
77
127
128
135
148
110
118
125
89
81
111
102
137
87
163
119
152
103
146
74
146
141
122
139
128
104
190
114
116
106
98
103
147
133
177
153
54
93
144
59
131
122
102
110
134
76
98
132
108
106
205
122
131
146
128
90
77
103
132
120
101
133
145
132
84
138
78
105
103
69
156
123
85
116
103
93
76
177
97
103
87
153
95
112
117
89
59
147
94
87
122
103
107
152
137
133
126
94
108
150
79
161
102
149
111
168
108
133
120
148
106
79
59
87
125
157
158
144
139
89
120
68
155
59
134
122
147
67
54
110
95
54
104
149
95
99
121
90
83
129
67
106
143
98
100
103
95
136
166
144
101
49
179
61
155
115
124
130
112
93
109
134
54
115
143
118
133
128
179
76
93
79
96
103
94
84
109
125
98
93
79
85
113
74
128
138
139
87
94
95
102
116
126
115
83
102
106
59
111
113
101
95
135
105
117
131
135
133
113
91
134
109
49
134
107
82
114
111
103
136
192
184
115
129
187
170
87
93
129
127
95
156
90
59
182
101
113
108
90
120
194
70
108
161
148
104
145
141
116
111
128
140
108
132
91
90
89
144
132
98
115
126
59
83
129
88
136
131
80
126
130
197
115
92
118
155
100
128
107
98
124
113
82
86
108
116
49
97
164
99
103
105
125
159
74
111
120
152
49
79
96
182
42
145
78
112
144
85
128
70
88
102
102
54
125
131
80
135
129
106
78
128
126
90
138
102
76
94
112
98
102
54
105
63
96
113
224
132
101
215
103
120
54
105
133
127
103
123
134
99
133
81
122
127
102
112
98
112
117
54
133
116
90
153
137
148
93
133
114
140
49
143
127
117
98
107
120
116
54
118
45
158
140
69
138
166
93
54
118
68
129
134
67
85
125
133
103
107
132
133
78
158
155
147
123
145
171
113
87
113
82
101
146
122
102
118
167
161
83
138
115
88
123
78
110
81
165
106
143
105
77
122
90
133
92
90
169
54
90
82
118
98
128
106
148
97
105
144
107
169
102
54
103
123
144
118
109
108
113
155
96
100
188
173
108
95
135
133
128
100
147
127
172
148
112
100
99
83
139
150
121
134
54
144
125
169
170
76
80
90
101
103
114
121
94
142
67
83
167
148
172
74
99
95
112
78
96
79
107
143
103
79
134
94
106
104
79
151
54
105
135
91
101
105
145
95
102
96
114
106
113
117
133
115
146
137
91
169
105
102
132
125
103
112
97
54
101
54
113
135
54
104
139
99
95
76
81
117
104
133
127
49
116
93
109
124
104
49
175
144
122
95
84
103
96
102
113
122
162
83
94
96
126
148
132
82
103
105
153
107
156
151
49
100
131
97
177
79
147
122
74
128
129
120
83
128
95
103
131
76
121
147
81
138
128
81
122
179
127
88
118
130
129
129
133
97
115
129
95
108
129
93
150
96
165
122
156
91
126
131
108
54
54
126
154
90
102
108
162
138
123
119
122
96
113
101
121
173
115
125
97
83
103
80
132
147
97
175
102
90
96
96
128
154
115
149
133
143
97
85
77
112
54
59
92
81
54
146
102
135
163
93
87
87
91
54
79
108
130
102
117
102
137
129
54
124
93
148
95
103
103
140
61
123
103
150
128
107
133
88
200
122
82
112
96
109
133
123
151
54
98
167
106
54
132
129
49
96
74
102
198
94
140
117
137
118
112
148
54
185
112
128
49
100
54
81
105
184
98
165
115
132
93
91
103
108
98
102
108
120
103
77
165
100
189
81
107
82
82
87
57
102
180
147
74
113
108
104
121
103
146
131
102
108
127
54
142
102
166
160
89
101
113
127
115
141
145
103
82
189
91
149
97
112
54
152
76
101
140
108
168
125
83
118
134
89
131
133
76
97
132
150
87
119
92
106
127
113
54
156
98
126
91
112
123
102
161
189
108
127
54
78
116
115
218
129
111
94
148
93
102
99
188
61
148
125
83
127
122
106
118
162
154
128
103
105
151
194
90
77
84
87
141
103
105
128
77
135
104
90
108
97
112
132
61
134
91
99
122
54
95
142
106
108
81
111
105
122
61
115
91
146
125
134
85
76
103
98
125
79
138
88
151
131
74
98
95
137
149
74
113
111
103
102
133
119
93
128
127
90
80
101
140
81
86
70
98
145
90
143
108
144
127
148
63
177
143
129
119
155
160
148
143
152
107
190
109
105
81
133
127
149
154
49
125
147
144
118
98
93
112
144
89
95
120
161
141
111
61
104
97
167
81
149
135
143
177
94
143
105
146
85
103
116
68
89
68
102
158
65
131
105
128
96
71
103
177
145
86
167
101
98
135
157
100
104
95
145
83
54
112
111
117
112
127
61
113
168
135
69
77
138
82
54
108
113
100
139
102
87
108
102
114
128
93
84
54
114
108
129
160
54
143
70
59
85
93
108
95
111
140
94
200
74
87
123
120
81
133
110
105
97
127
102
139
118
138
159
164
85
130
98
131
98
105
131
127
113
120
95
97
133
74
98
164
123
122
54
95
113
151
117
116
117
105
159
131
98
146
93
152
90
107
128
49
143
180
80
81
114
95
133
97
67
134
54
82
139
148
127
144
96
72
137
125
102
162
119
130
127
124
81
158
98
123
106
149
110
89
98
90
103
117
140
92
135
76
128
123
87
95
74
151
117
136
77
57
94
142
96
135
145
118
187
90
124
84
112
133
98
116
139
156
132
144
105
110
120
99
136
133
54
150
134
100
113
110
132
119
81
90
101
191
130
126
142
100
85
123
119
144
97
144
112
83
101
105
119
79
133
150
122
125
137
144
77
158
102
141
125
115
129
167
96
144
77
85
122
82
102
95
167
115
113
116
131
93
96
131
95
113
108
134
125
98
112
112
122
154
117
87
148
162
122
129
137
94
131
153
158
113
131
135
134
95
136
54
115
118
118
140
112
115
157
87
124
113
149
93
116
76
108
108
80
158
148
157
125
102
108
107
136
108
90
121
116
95
136
84
90
119
126
102
94
91
163
82
116
54
134
160
124
151
127
138
76
143
98
124
117
77
183
85
177
141
95
148
144
96
160
108
107
54
138
103
113
90
114
79
112
121
130
147
161
108
107
163
117
82
103
83
132
59
107
129
145
131
117
105
100
133
154
133
94
70
96
74
81
77
96
146
137
92
129
54
145
74
95
132
128
59
162
69
161
74
137
112
146
215
132
94
138
67
77
153
118
69
107
104
145
54
76
87
127
133
98
111
81
144
102
133
77
87
68
145
83
211
54
67
207
78
77
108
134
98
83
54
113
119
76
124
95
118
131
93
112
77
134
74
115
98
140
80
145
125
87
128
160
137
123
120
85
98
139
144
59
141
133
83
103
128
108
135
150
80
115
131
150
148
128
138
128
90
54
113
148
156
161
90
95
142
128
89
69
77
163
81
128
82
68
132
130
67
136
104
114
87
88
93
106
125
82
143
135
93
104
125
121
96
148
109
101
127
135
127
124
73
193
122
131
90
82
77
143
161
119
117
99
123
156
95
100
132
95
54
119
77
161
131
126
206
105
81
59
143
111
122
89
130
99
131
98
83
127
105
140
115
87
54
114
96
101
54
131
144
123
141
107
95
114
81
145
90
97
77
102
139
54
111
104
81
85
155
77
129
134
190
188
131
131
119
85
149
81
109
141
113
90
106
87
149
158
132
111
135
54
180
193
61
134
124
149
91
109
126
108
95
168
95
143
97
118
106
166
98
111
121
123
95
118
97
106
150
127
81
109
125
103
54
133
101
95
112
121
112
95
175
111
155
98
90
59
99
54
72
109
139
113
87
115
158
167
102
129
108
127
99
85
104
107
133
67
90
82
128
106
54
103
148
137
91
98
59
130
121
103
98
96
137
154
105
192
113
96
138
140
108
103
124
120
135
130
65
98
83
125
100
137
105
112
125
177
93
144
98
154
114
104
141
103
103
142
138
180
119
171
116
102
134
138
122
98
101
177
109
107
106
171
177
104
171
124
101
102
150
132
163
150
113
126
99
68
169
143
113
54
165
69
90
91
120
109
103
81
108
140
177
84
74
103
176
114
108
87
113
73
144
94
122
111
122
131
103
54
124
161
81
76
120
128
85
177
91
143
135
136
144
79
108
82
113
72
102
148
111
54
120
104
139
135
110
122
125
188
126
105
124
102
84
96
120
106
113
131
96
109
120
139
128
111
174
49
108
134
108
127
117
93
170
137
76
142
134
127
99
99
61
118
122
77
117
59
125
118
172
113
131
150
125
106
121
159
179
127
104
121
95
145
163
49
93
110
98
123
74
106
142
134
123
103
153
142
108
135
110
146
95
59
104
89
167
111
106
105
103
54
83
115
98
188
105
167
68
120
49
49
105
59
112
135
159
125
59
127
134
67
108
106
96
111
110
93
68
110
107
160
103
140
119
115
141
76
146
74
167
83
119
117
87
102
92
93
89
54
108
106
81
84
142
49
112
155
131
125
54
115
120
135
113
145
54
98
101
107
102
110
138
108
112
81
68
142
89
98
61
116
147
119
110
128
156
111
99
160
97
88
131
102
154
135
85
102
95
135
126
74
149
77
128
131
135
81
96
139
148
95
134
115
103
120
164
122
81
85
133
114
54
129
76
135
188
87
103
139
134
144
81
112
143
103
100
105
113
94
125
78
167
59
105
159
76
95
108
77
54
122
137
130
135
81
49
120
133
124
90
168
129
54
144
107
81
138
79
90
67
129
150
54
77
74
113
108
128
123
83
138
155
146
87
67
107
81
160
112
113
158
205
112
133
96
102
49
123
112
102
106
89
113
155
125
129
91
169
101
90
161
110
143
118
135
105
127
97
99
108
113
128
54
94
80
141
76
157
119
140
102
81
122
137
135
115
123
191
139
113
144
110
134
131
180
87
113
95
87
73
117
95
140
95
140
120
95
134
192
115
111
49
118
97
59
108
141
101
177
186
87
103
108
105
147
213
146
116
74
95
118
117
160
135
54
126
136
140
82
95
155
95
102
136
148
85
129
160
95
95
86
135
103
90
114
110
83
127
133
148
108
96
102
114
145
108
131
129
116
95
168
131
99
92
156
128
133
77
139
120
145
139
107
113
127
160
113
93
141
105
200
87
102
119
108
49
120
109
92
99
81
108
151
190
96
133
107
170
110
126
54
107
113
81
134
95
99
140
106
127
54
157
98
98
148
108
136
118
98
115
177
164
103
76
158
113
138
102
113
99
144
83
128
91
101
98
126
98
144
152
108
130
54
96
188
115
115
112
106
131
97
148
145
97
146
59
150
117
115
165
95
119
98
54
103
131
150
67
169
78
108
194
125
168
136
78
119
105
89
124
106
191
154
80
128
120
153
131
127
102
108
131
135
102
81
82
121
227
108
74
67
109
113
110
144
95
110
120
103
66
83
146
175
151
148
49
59
108
103
139
123
110
108
80
109
105
69
186
49
150
125
146
122
137
102
103
140
107
133
95
120
111
177
101
119
104
107
97
102
139
108
201
61
133
130
137
129
130
106
147
122
138
90
177
173
87
106
130
99
125
148
77
54
90
117
102
119
131
103
125
140
120
91
125
114
100
74
134
98
77
113
126
161
133
105
135
116
158
103
80
164
124
54
96
108
142
136
106
143
212
141
102
104
96
131
127
161
157
125
115
120
118
112
108
81
117
116
143
128
124
54
77
95
116
92
103
150
148
79
133
116
79
161
82
81
116
92
73
122
166
118
127
144
129
93
101
103
89
119
131
106
112
105
106
191
97
82
91
54
106
144
119
131
54
130
133
89
127
158
135
138
108
81
115
137
49
125
91
144
156
160
160
76
61
115
76
116
178
113
105
99
162
94
134
81
119
84
117
115
108
96
149
101
97
87
165
145
95
93
113
114
106
127
117
169
164
85
171
85
54
87
160
78
91
106
160
143
168
54
74
101
87
130
153
73
87
116
97
82
109
110
135
83
93
89
110
108
122
141
83
150
95
102
81
122
83
81
95
114
54
151
83
124
125
144
139
137
131
108
125
74
98
124
102
100
130
128
119
115
121
83
100
140
80
142
104
102
144
224
105
149
113
54
107
155
108
129
129
134
167
147
132
49
83
125
141
90
118
75
120
136
148
123
87
113
78
76
148
102
153
127
120
113
73
83
98
93
108
147
150
165
117
156
74
105
169
127
114
106
49
125
91
153
135
96
113
103
136
54
154
96
145
82
108
93
111
83
116
125
74
105
131
125
97
116
77
74
49
113
115
147
135
124
142
166
74
119
95
103
100
102
81
113
164
132
95
59
104
138
123
147
81
87
86
54
134
83
92
119
126
90
83
132
68
111
122
119
140
97
133
117
76
145
110
113
96
115
143
54
103
95
128
90
102
95
125
172
135
121
97
78
79
105
128
109
115
134
125
115
143
113
93
162
113
42
74
76
94
114
81
124
106
127
122
103
145
95
54
90
80
152
154
123
116
100
88
133
49
132
112
103
81
108
177
86
124
102
158
144
120
153
119
49
54
148
54
135
128
145
126
144
123
76
96
102
99
107
49
101
125
149
129
105
102
145
135
143
117
98
133
106
59
113
101
77
84
134
67
105
122
90
110
136
120
106
122
49
69
117
59
117
54
84
106
168
114
125
70
106
112
143
69
49
128
141
114
120
133
148
92
108
131
80
108
93
101
100
78
59
140
81
54
144
143
133
82
108
108
153
95
109
90
120
136
116
159
97
59
165
49
120
67
110
125
105
154
49
114
106
75
103
96
123
85
180
81
84
103
163
106
59
107
96
106
147
103
90
101
95
102
77
108
54
98
118
59
140
124
144
98
146
67
95
105
160
114
102
101
85
100
151
160
146
105
128
121
171
54
101
144
106
161
108
126
106
190
101
155
79
81
78
66
128
106
96
77
49
108
161
49
134
99
108
124
155
104
107
112
144
122
134
110
143
59
108
144
113
111
150
92
125
119
136
118
138
115
158
59
177
109
98
134
130
108
144
98
191
77
148
148
107
131
109
69
127
103
148
137
131
83
76
107
97
141
126
110
151
86
125
160
129
128
124
143
110
54
81
143
93
54
95
129
95
139
121
103
84
142
98
82
59
158
112
180
136
54
120
151
141
117
126
125
151
54
82
158
98
128
114
123
190
69
140
90
80
123
77
67
185
121
126
149
132
141
124
116
148
140
81
107
131
82
180
136
54
98
95
74
105
123
77
139
212
73
138
106
90
113
110
98
109
74
113
133
141
85
107
87
131
127
111
171
103
95
146
109
135
95
131
157
76
95
125
67
139
54
103
168
121
154
107
139
90
159
113
85
204
125
106
102
82
131
81
154
102
128
100
130
49
121
112
98
149
95
92
137
98
177
135
96
125
87
108
146
200
83
83
116
77
106
120
121
80
76
127
98
127
93
85
133
148
177
163
117
131
117
104
98
179
127
74
125
101
163
128
59
158
153
97
94
87
117
127
119
133
115
127
123
141
96
103
138
168
126
113
118
146
140
137
155
124
103
166
90
132
90
149
106
59
131
133
138
100
113
102
59
200
113
117
119
167
81
125
125
131
83
138
97
95
109
146
85
87
113
164
103
126
177
126
138
98
108
121
125
98
114
77
138
147
164
59
189
119
115
129
76
89
153
74
87
95
105
108
141
165
186
116
140
127
113
74
83
100
114
125
161
78
115
135
49
108
214
108
98
42
172
143
113
144
59
95
103
118
90
123
73
54
104
95
107
169
76
128
161
74
118
98
183
80
172
108
111
93
131
54
90
157
154
54
98
91
102
147
82
140
108
81
160
116
124
96
95
130
105
96
96
110
105
124
87
121
137
108
108
154
138
177
158
108
154
119
98
103
118
54
143
117
102
85
113
98
129
59
103
95
86
100
108
157
105
112
133
76
135
96
54
135
93
126
131
148
146
112
127
72
135
139
131
83
156
138
148
152
77
102
106
150
54
124
97
81
177
107
124
76
77
152
96
49
96
102
118
135
103
112
123
108
95
113
116
112
95
133
118
108
76
133
104
61
134
108
184
102
102
61
96
118
165
102
93
115
199
95
95
152
114
150
118
86
110
94
102
95
145
141
128
112
115
140
150
148
95
107
214
148
115
83
135
131
119
99
74
114
92
138
127
129
108
117
120
106
131
148
74
122
93
139
93
127
102
84
158
80
141
81
175
97
153
143
88
137
121
108
83
152
115
106
133
111
135
122
76
103
112
97
145
119
133
77
124
92
116
138
78
176
124
111
115
177
102
161
108
118
127
113
131
126
104
127
95
103
116
116
92
125
119
106
54
138
113
95
90
108
86
120
95
106
136
100
82
146
107
80
120
125
132
131
126
104
84
130
94
98
101
109
92
105
160
125
136
120
54
126
87
116
127
110
110
80
148
103
115
76
135
99
102
113
119
182
124
144
125
126
94
128
77
107
106
178
155
119
127
91
95
102
141
95
84
98
159
102
98
144
104
85
54
79
138
181
138
148
119
113
121
85
143
148
113
54
110
104
120
159
127
106
97
88
148
120
110
78
150
83
109
81
105
98
54
107
49
143
146
121
133
173
93
91
77
131
132
199
115
95
90
97
108
82
112
125
107
121
147
126
59
99
132
122
79
130
128
116
116
102
131
126
83
113
78
81
143
132
102
84
137
49
172
73
96
87
92
156
132
139
108
139
141
131
128
68
127
123
107
113
113
90
74
148
135
141
115
144
86
100
69
106
124
161
133
89
107
137
102
124
127
133
95
141
110
112
108
152
59
130
105
81
162
106
177
113
98
116
167
104
84
83
155
69
129
100
140
92
82
108
122
146
137
111
148
85
138
147
109
91
110
125
77
81
124
109
135
96
54
138
49
103
97
148
113
123
119
74
112
68
125
129
128
54
92
76
122
100
80
126
54
114
127
81
110
121
59
118
83
160
138
123
155
102
126
157
170
124
125
145
168
102
140
148
96
148
160
90
117
96
162
125
103
141
79
105
108
85
128
126
77
117
131
104
174
134
96
108
83
138
193
142
124
98
95
97
104
128
151
87
49
120
146
82
68
98
85
120
127
92
95
98
103
87
175
76
113
117
177
113
146
125
110
98
128
151
78
136
108
95
98
97
108
109
54
109
87
153
54
118
54
115
102
156
101
106
54
151
146
96
67
78
178
101
118
112
93
54
113
105
103
78
59
108
92
123
81
90
136
102
118
54
125
144
68
133
151
102
159
100
145
138
87
137
146
107
119
89
162
113
54
95
77
106
118
133
144
116
142
81
136
131
103
123
144
134
124
49
115
103
118
123
148
129
54
116
125
93
139
85
110
106
76
118
98
145
130
171
49
128
133
78
133
86
95
141
110
106
85
123
129
140
128
87
158
101
81
95
100
159
148
148
98
82
78
110
87
100
128
114
78
108
92
123
133
95
107
110
193
118
122
144
115
74
146
54
107
85
83
148
164
87
69
81
142
142
163
77
135
49
95
125
49
91
98
80
172
115
120
145
155
107
81
148
112
96
129
123
107
91
157
125
103
154
110
124
125
142
124
121
74
136
114
100
108
99
133
91
113
109
113
127
108
105
94
102
135
113
109
102
95
119
113
103
90
115
125
131
112
74
145
96
54
110
54
45
158
129
61
83
129
190
150
102
54
89
115
102
107
141
102
130
95
117
115
120
182
87
99
167
140
77
147
95
82
54
102
107
133
120
85
84
106
136
77
111
98
127
106
129
95
140
129
115
84
105
133
104
54
94
107
116
144
54
132
164
93
113
102
131
127
135
78
101
100
93
87
102
122
121
148
135
92
133
74
137
54
179
134
154
135
99
133
101
80
142
82
150
89
67
130
54
105
119
115
114
77
122
177
139
67
145
131
132
147
85
96
102
108
100
77
102
127
172
132
78
139
54
81
54
105
129
91
102
108
129
105
62
42
134
116
69
103
119
122
100
141
169
109
143
148
59
73
96
95
109
138
67
108
92
117
169
105
77
120
98
85
74
83
89
104
115
90
54
110
128
125
113
87
90
103
141
119
59
102
91
88
102
59
110
107
163
88
82
115
82
83
131
186
161
99
117
111
141
108
161
127
102
85
177
131
124
126
81
106
124
74
91
143
93
90
131
108
164
87
98
192
168
87
124
124
135
118
115
113
118
172
117
108
49
140
98
101
111
84
82
134
93
130
167
91
78
135
111
103
85
54
121
168
134
99
125
105
80
147
113
128
102
81
87
128
139
54
120
133
54
97
141
161
123
150
159
77
76
104
110
91
154
131
143
87
90
124
135
128
120
166
81
146
97
109
128
96
126
161
95
76
94
70
159
95
113
173
106
113
120
133
107
150
102
87
122
104
120
117
113
105
137
54
138
105
154
109
95
109
104
180
119
93
94
115
109
106
61
167
107
103
97
148
163
114
150
141
111
169
119
97
108
131
108
127
99
87
102
133
162
98
105
121
99
134
127
165
108
103
127
106
84
125
82
141
110
93
160
97
110
96
106
91
160
138
175
67
100
125
108
54
107
125
93
95
102
131
126
76
133
94
67
96
104
139
133
78
112
143
117
98
115
118
147
138
158
128
119
102
144
76
95
98
123
123
115
185
126
158
127
78
139
147
125
49
76
181
106
108
129
54
149
69
103
113
148
108
118
177
127
78
112
105
68
131
88
156
95
96
125
141
164
104
133
122
129
108
118
90
106
112
129
120
117
104
139
107
147
131
149
102
94
148
144
54
125
102
133
100
49
173
112
144
54
115
120
95
118
112
114
149
90
95
76
106
130
123
139
125
109
107
79
74
111
193
113
111
75
177
108
130
117
104
114
130
102
119
108
108
106
104
91
148
82
98
137
156
102
119
118
145
109
121
119
82
78
122
88
104
124
177
137
108
85
160
129
130
91
96
79
72
73
87
61
61
226
88
120
108
98
129
67
99
141
138
49
100
113
54
151
127
85
86
98
102
101
173
105
119
74
155
153
140
96
91
122
144
95
82
103
103
144
54
143
161
131
155
108
126
129
117
114
81
105
118
165
98
127
95
78
54
87
95
129
118
89
128
116
194
137
87
118
139
93
76
83
106
59
109
164
116
120
90
106
109
89
119
124
81
145
114
152
126
136
131
151
98
93
67
106
82
135
54
102
105
138
65
169
117
89
107
147
95
190
113
115
115
148
133
153
131
67
133
86
84
67
115
166
184
175
119
96
128
107
118
98
120
149
59
107
148
132
102
139
115
54
98
118
147
108
140
113
126
98
159
121
112
130
144
77
123
101
110
122
102
83
110
105
83
96
133
160
54
123
133
54
147
159
76
155
107
130
111
105
148
83
193
134
124
125
93
102
49
82
102
169
106
119
129
108
77
131
142
81
131
135
124
115
146
120
102
154
76
133
81
115
158
59
85
54
126
108
108
144
145
151
106
113
107
106
102
120
79
125
127
54
80
122
142
138
127
189
113
69
148
126
163
112
78
94
78
95
95
72
98
108
148
122
54
102
83
103
148
102
84
121
128
123
135
165
106
86
147
109
150
163
146
77
126
102
68
143
140
110
132
105
109
89
169
142
128
118
110
69
95
97
68
132
191
95
95
114
101
115
95
122
135
107
135
160
107
128
128
118
108
102
124
82
54
83
133
102
143
134
146
45
139
126
161
108
116
97
133
147
99
102
101
131
91
59
135
121
87
93
84
104
90
135
138
69
115
120
154
85
103
102
128
82
73
104
115
138
109
104
81
95
153
88
139
167
141
127
92
127
74
49
76
119
87
86
59
194
68
133
105
81
104
163
87
90
145
140
99
105
106
89
131
168
96
112
128
85
81
109
95
125
130
102
145
95
118
93
158
144
81
78
76
118
142
98
89
54
146
97
108
139
87
102
137
144
127
125
139
144
114
145
117
154
145
125
159
156
103
110
148
114
147
146
151
125
186
161
82
111
116
137
164
129
158
143
93
144
104
125
113
105
77
112
103
103
143
130
86
86
144
113
108
109
124
122
95
168
157
146
118
177
164
102
82
97
86
169
98
90
91
59
80
141
95
147
138
100
133
128
120
115
103
117
109
115
133
159
152
142
220
112
106
77
122
69
122
79
124
138
93
95
118
113
138
54
94
127
95
100
106
91
97
137
108
122
133
152
93
90
194
117
123
133
107
98
49
102
153
141
143
133
128
179
88
147
106
115
125
103
67
148
103
98
147
96
113
135
126
142
95
99
82
145
130
98
95
125
114
106
93
97
126
54
106
119
126
109
76
131
116
111
122
120
81
142
118
78
113
77
90
123
150
49
103
96
111
87
119
141
95
124
107
114
185
108
122
109
81
102
54
93
95
128
108
116
87
110
128
121
105
107
95
54
118
77
110
126
118
186
127
147
85
85
74
124
125
122
180
111
113
103
121
140
130
143
107
103
102
94
93
95
105
99
150
77
159
127
133
119
108
78
135
49
54
152
124
153
133
104
54
107
129
111
107
154
131
95
101
94
131
111
108
78
103
138
106
111
54
96
108
87
123
148
112
105
125
132
116
103
128
167
125
117
145
137
108
152
96
146
78
54
136
125
126
56
101
113
98
141
120
106
113
107
108
80
159
113
91
87
122
123
115
118
120
145
92
135
127
120
84
131
125
126
115
102
117
134
126
125
143
106
82
85
138
108
110
91
153
128
105
76
140
49
108
91
101
131
148
126
54
80
141
127
98
133
168
158
98
108
68
149
142
95
102
123
88
65
136
133
84
94
154
131
131
112
100
76
54
54
102
49
157
155
110
126
120
124
108
131
81
82
129
109
159
96
141
85
74
95
148
85
81
106
106
180
120
100
132
116
147
148
108
81
140
105
162
145
127
109
108
120
122
108
108
125
87
82
143
77
95
154
95
95
113
97
133
121
143
90
96
127
112
149
131
134
110
79
200
96
108
90
118
90
161
74
99
161
126
100
99
83
54
103
143
54
68
143
149
133
107
104
145
83
134
107
127
97
81
102
148
49
102
107
105
89
134
140
128
126
80
92
107
115
136
76
98
93
123
98
138
150
102
97
95
68
121
145
142
106
183
109
114
77
123
83
143
107
54
87
129
103
145
161
150
167
109
113
122
108
99
104
159
132
82
133
120
81
78
67
113
102
124
148
128
112
98
154
98
110
131
81
80
94
78
109
85
99
126
111
102
129
144
113
83
125
115
113
83
117
107
111
145
61
141
145
110
122
91
149
59
54
102
161
139
107
98
98
130
101
105
130
102
143
118
119
95
112
131
144
98
154
158
136
131
54
194
106
110
127
107
67
136
141
102
129
195
92
96
148
96
147
80
102
133
74
113
96
122
54
111
156
132
140
99
133
165
133
122
127
115
127
177
120
113
132
114
124
105
129
157
102
107
54
118
103
106
83
78
113
133
108
119
87
103
132
109
93
59
115
127
133
98
45
112
124
135
115
135
119
140
125
59
134
97
59
82
143
141
104
101
115
107
136
141
109
108
91
127
101
103
101
102
114
110
94
126
68
115
165
113
145
61
97
112
114
108
98
105
97
89
68
115
104
80
59
113
129
126
81
162
165
98
113
159
103
103
126
101
113
87
87
98
78
179
95
120
121
155
82
70
131
139
145
67
67
77
97
54
95
158
103
160
156
152
156
92
93
112
110
108
120
87
128
121
108
89
73
125
118
170
67
133
158
128
147
140
118
116
141
190
123
119
138
131
130
146
133
90
167
130
144
87
123
108
131
95
135
95
106
145
87
151
106
90
86
143
123
152
54
77
140
148
150
82
116
117
107
96
126
49
102
128
131
144
113
134
103
95
125
103
136
117
143
161
108
107
82
161
73
77
102
156
154
102
178
191
95
156
148
54
116
140
85
98
49
125
158
168
76
108
147
112
177
149
109
98
123
133
111
112
122
125
54
192
116
119
134
139
102
116
112
83
142
117
124
98
82
115
121
122
159
114
49
140
130
110
125
139
148
125
85
120
127
161
173
135
126
122
140
89
151
88
108
98
129
92
140
140
114
132
93
78
95
153
90
81
85
104
113
85
87
59
81
104
111
95
104
117
118
130
108
181
102
54
127
54
127
108
143
132
128
74
107
108
124
138
111
129
49
104
128
109
109
79
83
113
93
150
93
49
77
148
122
129
141
85
87
99
95
103
153
54
80
54
102
118
77
191
143
115
95
54
103
68
151
81
66
126
92
49
133
54
111
125
129
126
103
67
83
77
87
102
57
95
98
160
113
163
95
103
113
104
125
123
117
104
112
134
93
132
115
112
102
153
81
91
167
125
116
172
78
91
87
93
102
95
107
97
147
102
96
161
80
129
109
90
98
49
113
108
98
108
134
165
92
113
130
111
133
94
157
116
149
113
105
98
138
54
93
102
144
129
183
127
123
145
102
148
95
128
97
81
99
77
142
125
130
76
88
110
102
126
77
59
99
110
99
125
49
155
87
81
123
83
106
163
109
198
79
99
168
82
101
138
127
157
87
87
104
135
76
113
121
84
143
123
121
116
96
117
199
110
173
106
70
92
67
167
120
107
126
125
139
102
59
108
95
49
133
126
163
130
78
80
143
107
169
98
95
93
143
112
115
100
129
102
113
147
131
158
114
112
95
152
140
99
106
128
165
78
49
193
78
125
126
141
151
133
95
81
181
118
95
54
200
93
97
133
74
68
139
194
95
108
173
131
170
87
143
110
137
115
108
106
175
113
130
113
106
102
150
165
96
134
121
95
59
54
148
103
146
133
124
62
93
145
158
103
81
120
139
94
49
108
77
105
165
95
98
140
108
132
91
123
70
96
143
104
54
135
142
123
139
113
98
82
90
139
95
108
130
91
127
97
110
143
81
98
145
156
91
98
98
132
215
106
123
106
126
128
123
193
49
124
119
145
129
54
95
172
109
105
104
134
128
125
69
98
131
83
113
115
143
114
54
122
95
87
191
79
82
74
82
131
145
90
133
140
79
125
98
144
120
139
181
108
122
160
126
108
145
101
134
102
54
96
87
131
116
114
108
119
149
103
83
148
113
91
111
123
108
69
97
109
54
146
100
54
54
139
59
102
97
133
159
108
106
138
149
102
115
135
150
75
135
98
135
59
99
116
172
118
105
137
157
95
127
146
54
158
117
172
110
168
78
128
102
104
126
136
105
108
87
74
107
134
103
124
96
70
102
90
81
152
82
148
108
116
76
127
130
73
139
158
108
109
103
102
98
177
85
82
78
59
76
83
128
128
131
136
120
72
141
103
162
135
142
87
125
107
113
140
128
119
122
49
147
110
121
122
103
161
104
119
110
96
128
112
77
95
95
128
102
95
146
87
112
150
96
113
87
89
111
108
102
180
163
160
143
129
131
54
108
124
109
124
83
103
103
110
127
137
89
92
110
123
107
82
114
128
164
130
167
113
117
90
115
87
106
92
116
143
177
138
120
142
146
59
87
132
81
108
90
91
115
124
95
104
95
131
109
103
93
129
115
122
125
109
162
108
97
101
146
95
164
102
112
108
100
104
90
82
129
107
95
149
150
115
113
112
181
115
96
163
101
123
54
113
65
150
98
136
189
93
140
134
129
127
117
82
81
110
159
106
128
84
146
145
54
140
119
107
74
120
153
139
120
151
127
108
162
101
90
119
100
188
115
195
87
108
106
102
80
69
95
150
136
82
147
156
54
144
103
103
148
118
102
81
87
77
140
49
134
86
120
105
144
136
105
90
141
131
156
74
121
63
160
150
54
87
81
95
128
96
115
89
91
98
158
214
178
99
85
92
54
132
171
102
113
99
104
103
143
81
108
107
77
78
116
93
90
194
144
114
91
98
144
147
104
115
137
54
123
127
82
101
134
152
92
118
137
130
149
118
54
193
112
180
82
81
131
127
113
131
106
127
87
144
105
78
95
143
125
115
131
74
121
115
121
61
103
82
118
87
135
135
117
146
98
93
128
110
81
81
128
129
146
143
102
108
134
85
152
74
108
96
102
156
81
115
148
155
98
125
140
145
95
85
101
73
134
78
110
110
102
99
118
123
54
81
108
49
54
114
118
112
127
129
138
67
70
109
105
83
107
107
126
95
81
104
96
78
142
123
123
49
82
118
147
177
134
160
136
91
149
167
237
157
148
115
103
180
127
148
104
118
123
96
160
144
49
126
115
105
86
90
86
79
128
112
117
104
93
111
154
83
74
95
131
108
131
186
74
112
191
128
133
81
100
68
111
142
94
142
107
134
117
157
115
81
109
137
153
138
76
125
188
131
116
81
121
83
134
98
95
112
81
95
49
128
160
82
180
103
126
117
95
102
97
69
120
49
97
123
117
108
104
151
78
147
113
92
98
97
186
115
143
107
122
141
90
137
115
154
125
87
54
77
154
116
125
135
93
120
128
134
54
157
191
95
119
81
125
133
90
167
67
130
102
148
136
116
90
54
143
149
49
145
143
76
175
127
156
110
77
116
90
109
78
105
87
133
68
118
95
102
168
106
95
146
130
101
102
100
93
74
108
114
123
103
114
152
74
99
142
91
141
162
96
108
106
216
116
118
148
93
85
161
131
138
212
81
129
93
102
106
98
146
165
92
122
106
113
122
119
96
113
101
148
149
100
145
94
105
115
129
143
146
59
131
122
102
80
112
85
145
103
129
125
127
77
82
145
152
130
136
143
105
114
133
138
132
124
90
135
54
114
140
76
148
99
95
49
113
125
148
138
91
139
111
128
105
105
141
161
106
117
150
125
120
108
131
148
103
146
97
112
163
143
127
143
103
122
119
120
89
100
138
82
144
139
137
89
66
139
149
151
128
81
165
80
118
135
139
127
85
93
49
144
105
144
125
129
49
165
91
165
178
74
154
107
127
106
54
113
143
114
132
108
93
120
133
102
117
83
105
153
147
167
134
102
194
124
85
59
107
165
152
134
151
130
83
102
104
128
112
76
103
74
102
118
80
80
100
112
138
169
142
88
105
158
90
154
127
112
85
92
131
61
96
137
54
92
132
105
91
111
186
93
54
112
49
154
113
156
128
108
126
92
95
105
132
133
82
90
121
135
108
113
95
83
148
108
87
125
76
120
134
113
106
118
132
95
95
199
83
138
77
169
119
94
145
130
188
82
124
163
137
104
147
133
115
93
102
156
131
112
140
80
126
173
119
110
101
74
113
92
115
77
99
158
81
104
138
147
150
94
105
118
127
118
141
95
57
67
95
89
128
149
147
115
134
102
54
171
141
110
87
139
49
148
49
127
117
74
117
148
115
103
93
179
167
157
128
78
145
108
54
163
102
54
49
102
82
143
82
123
113
156
103
84
165
115
146
177
93
92
131
85
112
128
119
152
90
81
125
74
147
147
143
117
89
123
113
125
92
129
175
77
130
159
108
76
113
209
139
93
112
108
125
138
69
140
133
49
98
227
81
126
98
145
126
113
118
68
133
113
87
113
98
170
112
124
116
87
146
117
59
123
123
98
161
153
117
78
98
113
128
106
122
98
162
115
139
98
113
195
146
68
125
145
195
102
125
132
168
131
143
134
87
95
147
103
125
79
168
139
120
122
116
191
110
111
119
138
150
184
90
138
74
198
123
150
68
54
107
144
103
147
95
110
157
123
139
114
127
144
142
140
100
93
143
101
140
97
143
104
140
84
59
195
131
122
101
107
90
95
68
103
103
87
93
106
103
102
86
130
59
102
142
105
158
142
124
145
92
125
98
93
61
134
116
91
82
82
139
109
161
130
145
107
146
117
116
103
106
54
90
102
128
87
119
118
77
109
106
73
175
93
96
103
102
159
125
105
80
145
49
80
85
54
135
179
85
108
102
67
133
99
148
85
148
98
116
149
133
129
112
117
116
160
125
67
104
106
109
103
87
116
106
59
95
106
78
135
81
177
74
101
49
123
79
119
114
94
163
127
118
112
101
135
142
90
144
128
74
103
54
156
107
165
65
116
76
78
124
75
116
81
112
126
54
137
105
142
182
102
163
87
103
124
117
192
118
130
116
120
77
113
105
110
102
135
83
218
138
103
102
113
90
139
165
148
177
84
149
118
74
104
144
150
125
92
90
105
129
142
82
120
59
76
108
137
133
172
118
54
69
59
168
110
98
144
102
120
127
122
107
146
59
108
153
102
95
126
170
81
152
78
95
49
98
117
128
127
106
129
123
149
112
138
105
85
139
113
116
112
103
188
160
108
130
146
157
151
129
120
106
106
173
135
106
81
120
87
103
110
162
128
59
123
95
111
118
141
128
170
123
121
160
83
149
76
117
149
98
49
125
102
54
164
54
143
102
136
119
68
95
107
121
103
128
54
115
184
115
94
106
144
134
121
125
108
150
59
151
59
123
142
105
150
146
116
135
54
105
81
179
133
155
137
128
100
125
111
95
99
125
67
120
101
133
69
136
145
152
144
162
54
98
68
61
105
138
109
108
54
142
144
95
148
120
99
112
54
99
54
108
54
115
211
77
128
116
124
101
122
132
124
83
103
127
112
121
68
115
59
100
122
107
105
95
111
114
133
121
113
118
132
107
89
77
76
93
129
169
148
87
213
108
109
106
144
90
61
129
140
125
158
67
54
139
135
132
143
141
81
143
125
54
117
59
93
102
110
125
190
101
103
181
104
77
158
128
190
102
157
157
76
141
108
105
117
93
79
98
126
83
82
95
100
79
125
147
103
102
134
125
128
133
110
110
120
98
115
131
113
123
54
110
134
112
130
69
101
54
127
100
118
87
100
91
140
101
109
118
128
126
151
111
98
103
80
113
95
83
77
103
156
93
108
107
143
158
117
105
123
82
144
59
97
139
100
135
130
96
91
79
93
133
125
98
104
125
129
125
98
133
98
107
102
78
90
78
88
116
106
125
125
117
142
95
83
95
101
87
106
97
108
168
93
184
114
102
54
107
106
115
54
108
144
132
133
123
199
49
109
130
158
125
142
81
95
102
92
95
139
103
103
78
105
77
135
167
124
146
130
76
123
177
125
132
172
149
111
109
102
107
113
104
122
91
136
116
140
98
120
120
137
100
143
95
102
78
127
169
129
54
152
98
130
113
144
85
125
109
101
86
104
99
94
95
95
165
146
143
82
147
131
103
110
129
108
97
101
117
109
99
125
141
124
120
132
124
125
108
90
103
135
130
108
99
139
49
103
98
120
140
102
116
181
131
108
144
108
108
68
133
81
128
165
98
133
150
49
99
135
101
119
96
194
116
107
148
115
126
127
113
92
105
131
115
105
108
103
107
78
140
54
102
77
95
93
87
143
141
81
119
124
108
131
106
78
139
100
49
108
124
82
96
118
142
144
107
106
118
123
159
75
113
178
95
106
82
131
76
76
109
143
119
54
76
100
67
100
108
116
108
54
151
102
96
54
61
120
115
98
114
118
91
116
145
105
154
74
164
91
112
135
104
177
125
98
54
125
101
84
59
177
84
116
85
74
115
216
139
131
138
139
135
113
61
149
104
124
103
59
114
127
95
154
115
123
94
102
104
108
54
93
121
157
132
127
98
105
121
81
103
168
143
133
125
59
87
142
93
67
153
59
82
143
177
95
95
93
54
135
105
82
128
98
141
161
139
80
107
148
102
143
97
120
82
49
176
127
128
95
134
81
118
95
131
95
82
144
101
120
82
109
120
90
54
85
87
177
123
122
108
95
144
108
165
120
141
74
148
95
129
100
121
106
104
120
113
146
67
106
125
87
157
106
113
107
108
54
132
96
81
149
131
95
84
61
131
155
95
74
125
120
179
77
92
144
97
160
74
77
68
77
143
177
142
99
96
158
151
76
105
54
105
102
148
107
178
108
135
98
157
125
172
59
165
105
67
110
146
98
106
81
54
97
142
92
106
93
168
113
78
102
158
103
113
135
74
54
119
131
95
54
85
101
84
106
138
121
213
150
142
102
133
91
106
122
125
89
76
74
102
108
118
154
149
98
125
98
121
143
87
110
61
95
91
74
98
113
97
148
103
149
108
116
102
122
104
142
100
126
149
140
127
49
76
98
156
82
103
81
151
145
140
76
133
141
100
97
115
78
74
89
74
81
102
95
105
162
96
79
94
137
177
93
164
133
95
88
153
125
129
99
99
151
139
131
98
154
120
125
150
83
92
102
82
137
118
143
103
59
112
113
102
83
138
170
129
108
76
109
115
134
102
153
118
140
151
67
127
98
99
133
104
101
132
142
124
161
102
128
87
138
49
82
98
125
120
129
109
105
95
77
108
144
85
104
99
83
93
117
114
127
162
144
139
67
69
110
67
98
148
134
146
92
138
131
191
81
76
86
92
107
96
85
125
179
141
68
164
84
162
94
69
132
70
134
54
102
85
128
123
115
138
152
127
102
110
90
105
95
67
98
119
165
81
122
54
49
66
129
110
112
131
98
115
74
180
148
77
102
49
145
108
111
117
150
106
61
114
127
120
81
113
102
95
150
138
104
188
70
54
130
102
104
125
121
82
82
100
131
147
118
181
103
138
97
189
81
124
127
158
54
78
113
98
108
102
140
95
124
145
83
148
114
131
178
75
81
89
91
102
95
121
131
173
161
143
103
125
105
59
107
91
158
102
98
101
111
143
115
109
152
54
81
142
83
117
103
82
150
122
76
115
113
90
94
101
161
102
65
93
117
84
67
54
79
125
95
166
145
153
121
243
131
168
103
54
139
101
103
67
115
103
91
104
122
74
145
123
90
129
123
123
115
78
125
95
54
110
142
95
102
99
127
123
108
127
102
103
116
120
114
129
96
137
128
115
128
144
102
91
65
122
104
128
105
76
96
85
79
102
49
106
124
135
54
77
79
96
133
136
123
102
102
103
116
108
128
144
49
106
94
135
137
141
114
125
141
102
81
102
98
114
161
81
114
143
108
82
150
79
77
103
101
134
94
87
122
126
54
98
161
65
116
111
164
100
90
119
106
88
45
112
95
98
156
158
110
54
108
143
107
135
112
104
87
111
132
90
137
109
125
67
95
144
61
134
120
156
143
105
157
130
127
133
84
107
108
91
146
103
161
135
113
96
100
135
116
121
135
93
45
166
119
105
154
106
97
130
157
131
128
107
98
107
113
114
122
84
81
54
103
143
156
54
169
129
91
90
75
49
118
98
81
131
158
65
79
96
54
95
67
127
87
101
165
146
133
105
127
112
103
94
102
149
127
74
76
98
110
140
141
89
94
102
54
105
107
112
139
122
102
179
127
87
99
103
80
119
112
144
139
102
117
119
120
96
124
144
98
90
147
61
108
128
126
109
131
98
84
102
143
117
159
149
157
121
54
125
80
148
100
98
98
146
61
146
125
237
90
49
91
97
85
54
83
119
125
177
93
119
125
67
151
99
110
74
94
125
106
54
120
144
108
86
79
138
90
98
98
102
162
202
130
54
95
81
77
111
143
92
87
169
108
107
108
95
148
115
95
118
95
104
131
134
127
108
82
122
105
153
149
119
116
102
129
82
112
133
129
119
163
135
76
192
90
97
98
122
125
95
85
87
87
173
98
136
83
77
101
138
113
127
83
155
145
158
112
102
69
82
140
145
133
98
106
177
123
90
81
102
102
81
88
177
49
92
54
154
149
103
83
59
122
134
169
146
82
94
157
81
161
91
127
136
118
113
74
67
113
114
111
99
100
121
122
54
102
96
90
107
127
107
125
106
140
78
102
105
128
107
135
113
109
96
87
49
89
106
96
98
95
92
116
87
138
104
117
114
93
107
132
112
112
163
168
78
79
77
109
90
89
123
97
93
82
98
73
123
95
127
94
108
68
77
54
144
193
126
131
144
107
111
111
100
99
74
166
114
111
81
85
105
96
122
133
111
117
165
59
87
166
77
132
102
132
105
107
121
133
106
163
113
134
84
163
93
121
143
159
139
102
117
104
87
95
98
98
113
179
150
128
168
143
110
69
156
104
151
143
103
173
135
54
86
112
59
122
87
49
85
133
84
128
85
158
54
103
151
106
115
142
130
90
116
145
117
107
54
95
125
163
144
54
134
81
132
194
82
86
132
100
151
194
111
140
122
102
98
108
61
119
162
95
135
155
125
112
102
87
173
81
93
135
81
115
110
139
105
105
102
95
95
113
172
113
90
102
83
112
151
94
136
149
74
114
49
102
101
105
106
180
102
54
74
95
91
74
125
113
104
92
104
85
106
110
145
144
126
116
134
141
79
147
81
104
147
140
121
54
131
90
159
149
78
105
148
168
80
93
67
89
97
82
128
91
172
140
118
120
123
143
94
135
107
106
154
98
102
144
59
130
108
106
74
112
128
125
144
133
70
143
145
196
148
124
96
101
98
124
157
80
80
138
54
63
93
111
91
108
100
110
182
83
133
74
117
95
54
108
98
78
111
97
95
130
127
99
123
103
171
102
80
143
138
118
108
116
108
140
108
125
125
95
153
143
116
119
96
101
95
172
139
179
131
102
112
105
85
134
149
158
69
110
102
54
153
116
179
102
93
123
133
114
155
116
124
102
108
88
63
54
108
108
154
103
114
107
83
146
150
108
91
106
154
101
59
76
74
225
120
124
143
108
115
93
49
167
123
113
49
94
113
97
83
131
118
127
121
113
118
111
114
86
144
108
123
146
90
116
72
114
90
68
109
110
54
164
142
130
87
106
73
113
105
106
87
105
90
137
168
128
122
163
75
119
113
116
146
134
121
120
168
156
119
129
81
180
125
146
108
69
141
118
101
117
120
194
190
113
93
95
152
124
115
131
136
120
54
83
168
166
122
156
113
93
105
81
124
98
110
102
103
123
49
148
119
146
108
101
90
168
133
204
139
144
186
103
107
141
125
102
127
76
103
134
77
129
87
87
166
103
93
107
90
145
121
85
134
139
137
128
148
129
93
92
125
78
145
136
85
87
98
78
136
146
87
135
108
121
154
86
135
119
93
109
132
177
90
100
99
84
86
77
103
98
97
147
102
81
148
137
137
132
147
99
125
141
93
182
78
117
124
98
108
54
74
131
79
102
144
108
156
134
105
141
95
74
93
160
109
139
98
148
102
170
119
141
69
122
122
49
81
104
109
117
85
76
119
157
122
73
112
102
130
117
97
118
103
49
128
76
98
54
101
108
116
76
105
111
115
156
149
177
102
106
90
83
100
69
133
169
114
93
127
180
103
93
113
117
83
105
80
179
78
70
105
113
128
128
139
107
80
153
49
107
95
117
181
128
151
167
140
125
159
89
76
161
113
102
105
156
101
81
139
125
158
54
91
135
120
102
116
105
90
108
154
145
49
140
129
104
129
145
99
145
168
112
125
80
109
95
108
93
120
87
83
80
138
108
132
111
128
87
116
152
54
57
129
85
98
95
54
133
122
141
104
76
81
131
138
87
54
118
129
74
149
77
124
92
94
124
124
123
191
95
174
104
99
144
116
142
84
135
108
59
123
126
127
54
59
120
83
113
159
78
144
145
83
122
135
82
157
81
127
120
140
129
127
110
123
68
89
108
144
119
132
151
112
200
98
123
154
160
101
97
133
127
117
163
81
148
150
49
67
142
114
132
102
96
116
125
157
98
83
141
135
99
105
92
133
74
125
109
143
138
116
98
147
161
95
102
114
112
76
89
98
88
141
120
124
93
125
69
91
108
80
127
207
126
102
119
132
157
153
101
147
106
110
143
109
111
98
108
87
131
112
123
144
125
118
105
121
92
106
98
119
163
128
157
133
90
149
81
81
125
153
77
108
95
85
59
116
143
146
133
128
49
105
99
148
159
131
112
125
137
143
111
130
108
93
97
141
163
141
102
99
151
100
95
152
110
116
98
96
136
90
116
108
97
68
143
177
156
87
120
126
185
113
83
119
92
120
117
128
138
95
141
117
96
74
76
109
123
190
86
120
133
110
98
99
137
156
124
151
87
78
106
54
76
124
141
98
107
87
161
83
119
110
109
143
130
98
127
120
95
92
49
105
132
165
132
105
49
143
135
106
117
144
81
171
130
106
91
151
123
81
67
74
102
87
135
107
123
143
105
120
111
106
147
116
54
98
131
118
72
80
118
119
162
87
81
108
147
96
179
158
74
82
123
150
121
177
101
118
85
108
83
113
116
98
127
102
145
54
99
134
141
78
154
100
131
148
169
175
95
144
108
108
102
135
135
132
171
98
95
54
98
137
105
147
166
132
107
102
138
106
130
87
148
141
101
104
102
49
109
125
76
108
121
128
110
100
93
120
78
103
94
125
99
98
95
77
125
116
108
113
128
100
178
105
142
142
82
153
112
112
98
102
103
113
125
98
144
108
83
61
119
122
98
123
148
102
125
188
141
124
113
140
178
128
94
61
87
119
139
85
108
108
54
102
149
89
111
91
110
106
141
45
83
110
115
119
121
96
76
97
81
103
107
67
111
131
162
125
134
197
110
69
67
133
161
131
96
112
76
76
154
128
127
95
87
100
81
168
54
144
70
59
141
127
78
117
125
85
153
177
72
105
113
108
107
98
135
117
133
88
105
85
155
206
123
158
74
126
90
128
126
121
127
133
113
131
127
144
105
99
136
103
118
123
110
95
153
176
49
113
101
115
112
100
177
95
86
87
108
102
54
150
102
139
113
90
148
102
95
164
73
98
129
116
153
95
124
87
122
125
132
111
117
177
113
89
102
95
102
143
96
108
140
156
54
94
101
129
54
168
106
80
113
120
102
113
74
130
163
123
110
120
156
164
90
129
73
76
150
172
77
97
122
124
137
93
81
128
133
138
98
90
112
94
103
83
105
110
93
54
136
163
118
128
122
139
131
103
134
139
137
117
167
103
169
135
94
125
87
122
105
101
131
110
104
107
89
69
148
105
141
103
87
126
150
81
114
111
139
105
153
114
94
112
59
107
98
103
133
106
123
81
96
142
118
89
122
95
88
107
59
156
54
74
70
82
111
103
85
150
54
113
102
118
140
125
81
54
89
129
135
59
138
121
107
158
158
74
153
153
107
130
134
135
133
54
191
98
95
168
131
140
108
126
131
120
103
144
138
97
117
182
123
78
94
102
131
67
128
107
144
107
148
185
101
144
105
98
122
107
106
59
119
169
122
101
108
128
125
108
128
114
144
102
102
109
100
114
98
81
112
145
67
131
123
182
108
120
108
95
77
112
120
102
113
97
127
154
117
99
65
177
115
107
123
129
115
125
131
80
132
190
67
113
54
108
123
144
54
120
126
54
54
82
118
49
150
54
147
137
95
81
59
109
89
123
77
144
122
190
143
87
114
103
156
77
105
186
131
78
111
59
87
67
122
142
82
69
104
154
129
145
135
113
123
177
159
96
59
104
158
93
131
103
76
113
148
125
124
137
129
116
170
82
128
134
139
106
102
78
148
144
78
91
126
108
97
126
127
74
159
87
135
95
113
113
123
172
87
80
102
111
82
98
82
113
125
124
81
127
156
111
112
77
90
106
128
160
125
170
119
125
59
115
132
104
81
88
83
83
127
67
112
122
180
177
54
160
121
129
108
102
131
125
110
145
100
114
103
77
81
106
141
135
143
95
63
82
156
74
147
98
133
177
74
112
75
146
144
127
129
102
117
97
94
143
129
140
125
125
106
122
54
108
96
83
120
180
65
131
116
131
125
117
125
49
102
154
182
81
54
145
128
109
116
147
54
186
61
74
159
141
163
105
125
131
136
106
99
95
131
119
95
160
149
98
104
133
137
88
131
100
141
140
128
54
109
102
54
125
159
143
110
95
138
105
81
101
121
102
135
161
112
115
129
172
103
142
93
106
97
125
140
158
124
114
94
95
143
85
49
165
122
69
130
88
104
119
73
145
99
102
143
153
82
143
126
147
127
49
75
69
93
54
124
61
110
167
116
112
139
90
54
147
54
143
161
95
116
140
126
54
141
143
76
144
87
105
124
190
138
142
113
144
74
135
102
99
177
105
54
81
101
127
78
132
111
82
129
54
82
103
140
67
162
127
96
152
135
87
83
103
126
101
130
67
135
119
85
149
109
67
165
90
126
153
143
103
98
102
127
101
135
105
125
81
106
73
131
95
146
107
49
120
93
107
122
80
148
97
148
153
156
172
123
133
103
144
180
135
147
65
113
61
119
113
154
165
178
131
59
67
94
124
148
138
80
200
148
148
139
112
155
153
119
148
140
76
150
141
100
111
116
77
80
85
128
107
141
103
87
94
140
67
120
113
143
112
117
97
59
105
157
110
84
110
81
132
54
161
54
155
100
99
128
108
116
157
108
184
158
115
91
103
172
135
94
59
107
104
82
138
99
76
132
122
157
102
122
88
59
90
133
105
143
122
119
200
115
116
105
148
89
137
124
95
148
81
133
81
68
62
133
102
141
95
127
93
102
111
59
151
104
151
81
131
61
100
123
59
88
119
86
102
105
177
95
68
77
54
125
69
102
98
121
82
103
94
102
134
114
118
135
115
93
133
107
126
114
128
94
49
136
49
49
74
89
95
131
186
107
59
81
151
112
97
93
77
99
123
81
102
86
129
131
135
116
132
123
102
160
138
114
96
92
118
79
133
117
135
99
144
98
98
106
131
141
128
127
86
124
121
134
95
120
121
95
54
93
146
93
103
146
123
59
106
128
102
158
94
142
113
102
142
125
109
135
129
110
103
49
98
100
128
127
148
108
107
145
98
137
126
142
108
118
122
103
137
146
90
107
113
144
98
95
107
103
140
118
87
61
117
124
81
96
54
106
126
71
109
160
132
121
122
108
141
76
67
97
129
163
133
85
143
115
54
105
81
96
141
117
142
115
129
104
160
91
140
67
95
86
90
122
117
103
188
95
152
49
210
146
102
93
174
172
118
83
125
112
144
143
144
103
92
84
115
145
150
117
143
102
102
134
138
80
114
105
116
94
117
112
113
144
113
162
61
59
140
130
54
176
95
111
83
165
122
120
98
110
118
139
61
114
128
136
76
176
107
83
108
49
146
49
77
102
103
152
111
119
82
172
108
98
74
114
80
134
140
49
109
93
143
131
89
119
127
114
140
83
133
135
105
112
133
100
135
105
175
76
148
154
124
77
124
98
131
105
83
67
101
91
103
160
165
139
108
173
179
120
86
85
98
194
54
136
149
134
95
148
109
143
147
94
140
95
83
108
105
100
101
125
143
69
49
67
77
61
162
105
108
116
177
143
82
150
138
74
113
82
139
92
107
128
74
94
118
81
94
118
105
128
132
125
136
170
81
102
119
132
115
96
122
116
116
169
93
153
126
128
54
141
165
102
147
148
164
124
128
116
148
87
76
104
54
167
106
128
95
105
112
82
126
108
92
150
91
188
103
49
104
127
148
172
69
100
106
185
102
136
74
98
165
95
115
49
54
138
103
92
134
93
119
180
113
105
104
125
132
120
102
101
177
49
107
114
114
83
124
95
120
98
102
108
119
103
139
77
96
101
112
112
83
49
129
76
105
148
110
89
59
108
106
68
148
162
87
133
160
81
139
68
107
104
124
121
104
104
120
117
174
79
125
128
106
155
164
74
119
74
90
127
136
134
87
112
113
143
101
133
113
146
128
109
116
69
98
54
141
132
129
107
80
100
91
92
77
171
100
123
97
77
158
148
107
103
129
146
108
83
101
122
54
139
103
112
86
99
146
107
170
121
74
124
165
117
172
100
146
127
91
127
98
164
149
106
120
144
138
100
79
123
104
109
141
112
79
57
143
125
143
126
61
177
148
109
134
123
119
45
113
140
110
54
105
113
142
67
128
108
144
116
157
100
149
127
54
93
105
146
109
133
91
96
172
49
99
81
76
137
59
146
96
133
93
76
96
97
145
97
100
125
131
143
140
121
141
93
54
80
81
145
84
81
155
148
77
95
117
122
95
54
133
49
143
97
54
184
101
69
114
54
49
104
81
120
128
102
144
109
148
73
140
98
115
104
162
97
93
97
94
159
77
160
121
89
90
86
109
129
54
68
131
76
187
89
123
115
101
123
161
125
59
116
78
150
198
92
105
107
152
110
179
117
78
115
108
98
114
127
152
119
112
114
79
128
92
132
87
172
67
128
95
108
103
144
167
101
112
135
91
133
73
168
115
105
77
54
49
98
113
127
96
137
76
158
103
67
115
91
98
127
108
143
102
132
116
135
98
135
148
146
146
102
144
115
140
127
104
89
78
149
125
98
151
158
76
140
101
133
76
59
117
108
177
132
108
135
81
101
76
125
124
74
158
120
149
132
108
151
155
97
147
118
102
125
154
102
131
154
105
127
121
98
67
109
83
108
125
116
94
146
69
115
129
131
165
134
120
98
146
141
122
111
182
93
138
108
148
103
98
82
62
54
91
126
91
134
107
110
108
116
108
127
73
142
155
145
125
82
101
109
165
102
181
143
101
69
114
171
124
144
147
54
122
91
79
148
105
101
86
110
76
120
135
152
155
192
82
98
115
59
133
135
103
150
120
95
163
98
94
113
83
161
129
90
76
87
127
125
110
117
102
103
165
120
118
132
141
103
139
142
103
161
157
111
112
153
162
120
77
123
106
112
109
74
126
177
117
95
54
101
70
100
124
118
99
148
93
149
170
90
107
128
151
140
129
91
78
117
92
103
110
108
67
140
96
102
81
83
73
93
138
137
102
162
89
124
95
123
87
92
93
105
95
102
125
77
138
129
67
103
149
103
154
97
127
115
135
54
102
85
105
98
177
78
59
135
104
107
82
113
106
96
148
118
105
95
127
143
127
79
150
105
49
135
90
107
87
98
112
161
124
125
83
98
102
106
150
95
131
74
158
100
172
122
99
97
130
117
109
90
129
61
49
160
145
54
124
178
103
108
179
91
59
164
144
90
105
141
126
101
102
149
144
122
107
102
135
134
116
94
85
140
108
97
54
165
84
98
102
157
138
116
103
124
133
149
131
114
102
54
119
140
164
143
108
128
110
128
95
127
119
103
119
177
170
90
99
159
112
127
91
109
69
49
105
87
141
135
128
159
111
83
168
128
116
211
167
115
106
133
104
120
158
108
100
129
134
49
142
106
159
82
126
179
98
77
111
124
112
98
128
190
108
95
133
142
91
143
123
49
142
133
142
49
81
131
97
108
123
101
113
138
149
151
140
152
143
87
135
120
130
168
82
98
114
159
108
84
149
97
73
98
134
142
125
72
143
94
159
97
107
87
131
94
129
128
107
142
98
175
88
105
100
132
93
125
135
87
99
103
129
148
140
54
96
105
139
81
103
145
172
97
103
102
132
161
174
87
149
141
71
79
81
111
148
116
123
173
167
141
102
59
136
131
95
124
126
112
143
96
95
141
98
54
54
124
95
141
98
158
103
113
133
107
143
163
154
151
121
180
150
111
131
110
124
78
109
98
94
168
144
104
143
116
65
107
122
92
93
119
84
65
87
54
89
106
124
54
145
120
104
80
98
83
133
98
95
125
126
113
108
119
93
117
124
110
112
134
131
107
160
144
158
117
112
91
139
137
141
98
95
77
115
102
83
123
116
124
108
81
166
93
49
103
143
54
54
145
103
92
125
147
121
102
95
144
113
103
65
170
113
165
108
113
95
74
129
112
126
126
145
59
133
117
112
131
112
103
74
105
102
127
132
102
112
140
138
96
114
148
146
107
153
133
133
103
107
143
95
119
125
100
128
143
162
98
131
105
103
54
156
97
141
77
160
127
59
121
82
125
93
121
82
130
81
112
108
123
125
74
133
108
137
157
111
102
129
59
148
93
128
122
104
102
146
106
103
114
146
105
81
82
115
95
148
126
103
119
95
102
118
145
100
111
144
93
104
103
165
49
114
156
95
136
158
182
177
133
90
150
128
135
81
91
105
49
49
124
146
125
80
97
78
98
132
69
80
85
129
133
131
94
101
104
102
171
163
98
81
146
116
54
103
82
87
127
97
119
154
119
68
102
107
123
114
92
107
125
98
165
104
148
91
99
149
101
98
122
78
144
103
81
49
105
116
153
160
138
135
142
110
135
97
69
114
153
98
132
149
107
132
67
81
165
95
54
140
158
93
116
102
81
141
173
90
59
92
102
73
186
135
119
88
120
89
108
129
113
102
109
140
134
102
98
141
137
120
95
126
81
98
139
143
124
143
78
173
100
143
124
151
120
98
143
93
163
117
76
146
88
132
73
116
125
140
122
135
130
108
102
139
148
131
88
173
125
153
49
135
138
91
108
123
54
125
77
93
130
105
81
101
54
67
81
118
146
87
83
54
122
95
94
101
126
143
140
110
80
86
97
49
124
93
73
82
103
90
103
99
86
108
163
125
144
123
54
96
108
93
107
118
103
102
128
160
119
135
143
140
158
113
102
126
123
82
81
113
105
101
106
75
96
135
69
141
128
74
142
49
70
114
162
118
155
54
137
158
104
54
148
139
97
90
125
85
132
125
156
159
145
106
206
54
128
159
100
80
158
119
76
95
125
106
127
93
167
167
95
95
90
116
150
103
117
175
147
144
133
114
145
59
93
82
143
107
108
122
140
73
108
97
93
73
117
143
141
124
146
135
105
144
54
106
108
123
74
158
157
123
77
97
116
105
89
139
95
122
147
95
146
143
107
127
77
87
79
99
108
166
98
113
94
100
144
122
168
54
113
125
122
81
77
123
95
125
112
182
101
94
54
160
93
82
175
95
114
54
79
54
112
136
117
93
144
148
156
117
130
111
118
104
112
108
131
120
77
95
92
105
98
136
108
90
78
67
54
147
129
49
181
54
142
143
108
81
54
103
95
154
86
142
164
146
110
148
144
203
82
102
93
151
112
131
127
87
81
54
133
116
116
150
98
189
54
108
103
113
140
91
73
115
115
123
143
130
116
49
121
49
114
123
110
125
121
117
105
126
124
97
68
127
103
177
81
148
80
132
78
102
124
144
129
158
120
148
129
143
119
107
99
110
93
124
98
103
97
49
96
86
80
130
152
98
172
104
128
135
87
91
135
85
134
146
109
77
103
111
102
120
137
170
107
177
133
120
95
147
125
54
74
140
154
129
68
157
106
49
141
68
107
87
105
180
98
152
107
105
54
160
118
67
99
155
105
115
102
133
133
149
54
162
106
152
84
146
115
98
103
150
133
98
83
122
82
85
128
122
149
105
74
76
85
117
129
108
115
109
54
114
126
158
103
144
133
180
123
185
136
112
127
108
103
102
121
83
129
165
86
125
110
127
123
121
103
86
155
80
143
177
108
102
120
160
104
85
112
54
92
133
81
126
161
89
102
102
101
152
81
95
102
96
86
76
74
130
182
105
126
86
156
105
96
109
128
102
131
76
141
152
140
114
90
143
96
54
130
91
74
171
129
177
219
93
142
126
77
120
141
73
79
131
54
108
132
110
176
81
87
84
115
118
86
114
150
142
195
101
132
106
74
125
103
84
126
145
131
87
112
85
101
74
85
85
102
81
148
139
122
112
143
117
61
102
124
140
92
120
81
103
54
119
127
108
112
148
133
129
119
146
116
194
99
121
169
123
118
138
132
138
95
138
135
100
59
111
128
84
133
103
113
126
141
148
91
141
95
135
117
77
54
158
127
112
93
118
119
133
121
101
131
131
168
78
95
74
94
129
155
101
175
85
177
98
147
111
123
123
122
110
140
128
112
148
87
138
97
85
100
54
95
143
61
101
139
98
159
115
107
102
131
138
54
135
116
150
108
156
98
129
101
103
95
104
96
97
132
134
108
90
97
158
76
97
103
149
93
138
102
127
102
120
128
151
121
104
90
61
111
54
92
102
129
49
153
78
138
168
128
103
106
90
76
74
148
143
98
124
91
101
122
77
146
95
81
131
77
126
172
98
108
85
152
116
148
123
145
147
90
84
54
139
144
148
81
74
221
146
155
108
91
104
104
122
87
49
75
143
110
139
113
103
120
146
115
105
108
76
100
173
125
105
93
199
93
69
161
109
103
77
105
54
108
81
108
126
76
107
131
81
124
144
87
102
76
155
90
97
54
103
82
118
98
111
82
147
98
67
93
89
105
59
108
120
49
107
93
102
94
125
118
120
165
108
126
145
78
132
155
93
117
87
87
111
144
125
68
225
106
137
149
82
54
105
132
158
103
157
107
113
102
107
81
90
49
102
160
146
93
140
125
131
148
87
87
125
105
103
113
135
62
98
133
145
105
105
125
123
143
113
104
95
102
61
109
120
108
95
112
152
81
150
113
158
104
134
116
106
54
81
143
131
161
81
173
76
110
81
126
149
54
79
83
101
123
49
97
85
81
90
49
105
98
125
162
133
102
127
102
102
186
101
158
108
88
90
124
98
113
134
95
87
114
54
77
113
107
109
148
105
131
105
152
85
117
49
114
102
95
94
145
114
98
113
102
93
84
98
165
82
167
125
143
129
103
88
115
108
98
124
138
95
139
113
147
71
134
95
92
83
81
97
151
140
151
143
101
151
81
88
110
91
163
104
127
128
108
103
54
122
102
147
54
70
146
87
54
105
93
59
161
120
98
105
140
148
129
54
87
93
109
122
93
118
116
108
102
90
49
84
135
156
137
115
144
115
82
161
84
108
124
103
108
127
98
54
108
145
136
140
95
135
186
96
65
87
180
98
98
153
155
143
140
187
113
91
143
156
105
115
120
106
167
125
87
125
122
161
105
114
104
146
95
105
106
79
146
102
161
127
82
114
95
128
69
92
90
127
107
141
98
127
124
115
95
119
166
123
113
83
119
108
143
105
121
102
116
125
128
131
120
98
149
54
120
69
122
133
95
161
125
154
135
119
81
98
124
124
111
111
141
107
90
122
95
81
54
81
148
140
95
193
116
194
177
123
140
147
121
103
152
157
131
76
95
123
152
125
59
111
146
133
101
120
100
136
116
92
97
98
93
108
76
129
102
101
156
123
87
114
96
140
108
113
126
129
84
89
112
122
106
112
107
122
103
62
134
102
160
156
147
129
145
131
139
108
107
72
112
156
110
91
100
102
67
105
147
97
103
133
149
93
112
125
68
131
111
110
77
70
109
98
98
82
120
135
147
126
88
124
108
118
115
146
74
95
122
144
143
137
88
116
133
105
191
158
108
67
139
120
102
150
158
123
116
128
91
108
144
88
112
119
108
76
91
133
74
127
194
81
113
74
148
90
148
107
140
153
142
134
124
74
71
125
163
116
54
159
54
80
140
96
83
154
149
121
132
154
129
59
78
157
95
102
163
135
95
205
120
144
113
122
106
82
137
105
121
106
116
125
95
121
73
114
118
132
87
127
125
102
105
102
67
67
77
128
145
81
74
120
137
150
131
54
101
152
129
188
112
128
102
173
115
76
127
140
106
105
74
106
108
97
54
98
102
97
102
108
122
143
119
113
127
120
112
61
74
105
125
96
132
144
109
123
137
145
91
135
152
121
108
102
151
74
98
99
105
150
148
103
106
107
49
118
113
107
104
98
125
81
123
171
61
97
145
105
106
161
98
129
108
148
185
114
116
122
88
140
171
87
69
136
80
93
158
116
61
129
102
132
125
144
148
100
123
116
97
100
158
132
95
125
121
107
98
161
165
54
152
74
74
81
67
90
144
126
212
88
124
108
102
165
76
120
135
124
138
54
147
103
108
103
131
120
108
98
133
138
97
119
72
139
105
90
93
119
106
188
163
158
129
117
152
218
146
95
134
76
120
144
86
95
142
102
99
120
103
93
120
130
54
133
90
93
105
146
86
134
102
157
109
120
106
145
105
78
93
124
107
119
91
123
126
103
123
133
113
149
90
81
130
61
113
125
144
54
106
115
110
76
145
148
136
120
98
75
82
134
102
181
68
108
100
74
102
139
109
98
118
98
94
127
129
149
154
100
54
119
149
96
135
94
93
87
87
98
104
131
121
143
102
59
150
93
139
138
68
136
108
99
54
135
95
137
130
54
108
95
131
145
108
125
110
118
100
87
107
111
165
158
54
154
90
146
67
81
156
113
99
99
93
106
59
99
129
90
95
76
102
90
158
82
124
103
115
82
125
128
134
90
127
123
102
49
95
95
148
125
129
123
78
102
91
102
95
54
80
98
129
49
141
112
107
107
149
90
146
110
81
153
156
143
96
165
103
95
82
122
112
141
121
106
135
112
108
120
112
134
150
126
95
144
116
150
130
81
109
139
103
113
118
107
127
119
91
113
119
128
124
95
129
102
98
132
86
54
128
95
87
131
146
95
91
92
160
98
81
109
113
124
95
102
119
129
174
107
105
115
157
165
128
103
102
125
93
126
126
117
115
49
69
49
123
186
108
87
122
118
186
110
54
108
98
110
120
141
148
128
108
90
54
74
147
135
97
144
97
147
119
101
136
91
122
98
189
158
93
103
146
165
128
99
130
104
102
119
87
102
49
102
110
98
164
113
93
142
87
102
145
140
108
89
76
94
127
102
148
108
104
86
90
134
148
129
54
122
131
108
108
92
131
125
158
157
110
82
107
120
102
94
145
146
108
110
112
101
204
161
54
87
130
59
100
108
136
190
145
119
73
127
148
110
76
141
96
151
103
146
149
82
131
104
94
143
122
125
103
109
143
59
59
105
116
109
128
163
161
145
135
155
68
117
81
129
106
59
172
144
108
141
74
114
113
144
71
131
117
102
118
74
145
77
122
102
108
103
145
145
69
74
149
106
194
135
68
142
145
114
90
117
113
118
107
76
116
134
77
149
129
70
107
132
93
95
102
112
146
128
108
105
128
88
77
96
140
138
96
85
123
49
150
149
68
76
87
99
168
140
133
154
108
54
102
167
135
108
135
142
67
108
72
116
130
140
129
103
132
104
133
112
190
98
157
124
159
125
104
147
81
141
165
95
103
117
98
107
112
117
102
115
154
139
123
103
95
133
90
78
114
127
138
164
161
118
147
113
96
100
81
158
146
144
76
122
54
169
59
122
131
133
121
111
81
133
112
74
107
131
182
145
153
104
109
110
132
144
83
114
108
94
107
45
130
132
98
123
144
49
135
70
139
147
128
145
160
76
135
81
102
83
90
158
130
140
175
90
135
155
98
156
194
133
135
177
95
137
89
114
116
101
124
103
130
103
131
80
128
126
98
107
120
68
121
145
137
129
128
54
94
120
121
109
54
116
99
93
100
98
90
129
88
67
115
98
185
106
125
143
143
102
97
108
126
106
92
139
120
106
105
102
67
105
141
138
80
84
109
119
110
122
191
103
97
139
107
132
69
112
148
81
131
105
131
84
101
106
83
85
116
155
117
123
133
105
102
107
90
91
54
138
133
107
103
91
74
113
54
139
117
142
108
108
145
118
147
127
74
143
141
122
137
133
154
159
119
107
125
177
111
177
91
103
111
72
118
107
103
54
99
129
157
122
134
146
80
91
96
102
127
104
135
103
154
147
138
125
103
70
144
131
177
148
140
96
139
98
104
98
177
81
118
116
89
95
131
108
157
95
169
161
91
101
94
108
89
160
107
104
131
95
109
110
98
122
95
127
133
122
123
117
145
121
125
145
118
59
96
128
142
95
97
126
74
81
147
113
93
83
191
146
130
150
49
49
54
152
148
95
133
121
122
104
147
54
161
74
123
207
113
113
200
142
107
128
123
74
54
131
160
128
129
140
95
79
118
148
115
123
107
130
109
115
125
59
105
135
147
125
103
117
101
102
102
95
87
128
105
125
84
129
119
109
106
108
133
77
54
194
178
128
127
80
98
144
127
121
97
146
102
106
100
59
112
144
132
129
135
128
98
102
146
147
152
54
161
117
125
74
127
150
112
54
61
54
98
82
108
180
91
133
124
61
76
80
61
125
101
135
92
90
83
108
174
99
144
100
98
87
101
108
85
76
109
99
133
110
121
150
144
99
105
77
128
92
95
135
141
134
120
110
54
105
102
128
101
119
109
115
103
155
148
81
104
114
120
107
69
93
99
99
106
113
69
149
128
107
148
125
116
89
126
110
93
131
146
131
97
76
152
160
74
93
128
86
101
123
129
108
177
154
137
136
111
109
133
123
142
150
72
98
115
140
113
143
94
137
128
49
183
111
70
126
54
95
146
101
127
88
83
122
148
145
90
120
90
200
131
74
74
54
106
105
108
133
113
113
85
99
104
112
96
133
141
123
135
84
74
108
184
76
101
74
116
95
104
125
95
124
102
61
142
98
128
158
77
93
177
106
119
103
103
108
91
133
104
87
148
129
74
107
105
115
87
108
124
179
133
95
138
108
94
195
77
98
97
98
114
147
136
162
100
102
115
90
106
129
143
108
101
108
148
98
99
87
118
156
186
138
191
123
112
77
90
138
104
69
102
124
188
109
94
120
82
96
110
133
97
98
105
87
85
81
123
105
103
137
95
49
116
80
141
126
112
89
143
135
125
94
150
98
129
59
120
141
115
151
124
57
133
125
95
96
128
106
95
148
163
147
96
151
90
87
119
65
108
78
115
145
90
130
85
125
80
108
87
155
191
106
98
78
54
135
54
90
148
124
145
130
76
114
132
146
139
98
77
102
160
123
109
138
102
111
82
59
121
125
87
129
108
112
98
95
111
144
123
120
106
126
107
105
86
95
131
119
156
124
103
103
136
83
123
161
93
119
101
95
109
132
80
90
102
76
106
121
79
96
144
135
121
77
118
92
110
194
119
160
81
172
135
104
137
166
94
68
82
114
180
98
150
133
102
113
115
134
128
103
81
101
74
49
178
88
82
95
132
74
94
124
200
140
155
98
92
103
115
119
124
93
93
112
65
95
108
100
107
111
108
156
102
121
103
140
106
131
108
108
70
130
134
106
98
127
61
144
165
130
123
124
119
45
124
99
140
133
125
156
103
105
98
74
102
103
96
143
121
144
133
151
105
54
91
115
110
74
139
89
87
92
93
147
125
117
122
131
154
160
57
147
119
110
148
61
158
146
102
112
76
96
98
136
113
97
54
103
103
96
133
135
160
124
164
131
150
112
110
128
95
110
87
101
102
108
98
167
140
100
146
137
100
133
76
103
80
96
148
96
102
129
140
54
117
88
148
125
85
95
99
103
108
67
103
105
131
178
107
72
125
92
110
128
165
190
154
135
85
154
62
95
54
135
157
126
127
126
102
105
76
90
80
145
158
126
92
108
113
117
49
124
134
104
124
103
100
105
96
153
49
81
144
160
54
73
81
124
78
105
96
83
79
133
111
119
149
96
103
102
87
102
137
76
54
149
102
190
105
151
116
114
128
133
144
119
123
54
111
59
95
117
95
98
92
95
98
94
124
143
116
126
87
76
107
109
98
134
135
77
106
168
89
82
106
81
144
133
54
125
110
131
99
135
122
148
95
125
147
120
127
54
148
83
95
125
126
135
54
109
135
68
108
115
120
81
111
108
54
54
128
98
116
143
160
95
103
69
123
115
99
144
81
121
95
159
147
113
59
143
161
131
103
153
124
97
181
82
101
125
101
94
108
93
186
125
133
98
127
89
132
100
69
126
121
117
108
141
131
81
81
102
137
149
108
61
100
124
93
177
90
151
188
120
90
147
98
49
114
123
107
136
95
108
97
120
102
108
108
142
106
131
81
94
74
122
119
59
96
96
54
122
110
166
163
100
101
108
108
108
95
116
146
54
118
91
98
132
87
196
125
125
152
101
88
120
120
88
142
103
154
138
98
119
140
95
45
74
140
132
81
95
141
67
106
139
148
69
84
150
117
93
112
74
141
108
109
74
82
110
102
85
124
101
133
102
147
116
121
54
95
122
95
78
78
113
106
198
102
93
74
101
77
110
141
119
126
200
119
102
158
131
85
95
100
119
96
83
106
139
124
54
76
135
165
135
95
49
97
96
75
135
110
81
143
116
131
139
119
216
150
193
89
124
145
99
139
104
125
69
120
114
115
107
134
177
78
77
148
100
115
119
102
90
114
103
68
54
108
119
125
65
119
104
151
145
108
146
188
93
144
114
80
85
67
76
76
124
113
134
85
49
117
105
109
135
105
112
141
114
107
77
103
158
118
131
139
110
160
97
68
105
122
141
88
98
139
93
131
109
91
90
148
54
82
54
123
121
97
97
83
96
122
140
125
132
88
89
125
152
107
102
95
147
81
179
59
116
126
147
76
96
117
128
148
133
185
150
62
129
128
106
121
190
67
54
133
118
121
113
124
114
100
106
105
109
162
139
154
142
82
135
156
140
213
150
54
144
108
159
163
105
127
93
158
74
124
123
113
54
126
153
139
99
162
106
124
65
125
146
110
78
90
148
122
97
91
108
76
118
142
127
112
145
144
95
96
212
108
161
125
140
110
132
159
96
145
191
139
129
119
115
102
99
59
54
154
118
54
78
96
49
69
87
151
54
126
113
132
175
145
87
122
54
173
113
127
113
87
161
128
98
129
85
140
88
138
54
119
108
61
164
84
140
116
123
134
126
68
123
112
131
100
93
105
112
114
114
95
112
121
135
119
119
113
113
92
89
121
96
103
108
130
118
145
108
149
117
105
115
149
133
141
108
111
121
110
133
54
49
128
161
108
131
99
149
102
102
84
185
83
140
105
82
134
143
135
146
102
157
77
127
128
95
163
54
140
129
106
156
172
108
129
130
76
128
102
91
102
102
129
160
129
143
54
143
108
123
104
109
98
61
96
54
72
121
95
142
120
124
105
95
113
117
125
119
98
113
101
84
54
78
54
124
137
108
54
162
177
85
128
98
81
54
142
110
119
95
122
80
155
116
118
127
130
102
86
202
114
113
112
120
100
105
90
126
89
143
82
128
114
148
177
157
116
120
137
165
112
98
96
106
109
176
136
112
161
156
148
135
97
123
54
101
98
107
74
120
177
146
153
104
78
54
67
97
116
78
93
131
103
119
131
108
107
118
100
67
118
113
78
130
54
88
102
95
147
98
95
49
93
95
141
120
135
101
133
104
78
100
62
128
74
49
120
113
135
81
141
102
115
90
124
123
169
81
96
84
102
114
140
141
67
102
59
54
119
145
142
77
109
120
147
103
90
54
174
108
149
82
87
94
150
116
54
106
108
202
49
122
102
146
87
49
102
156
82
113
67
144
91
89
152
120
119
116
119
103
121
138
146
54
176
138
107
92
102
92
115
81
108
68
81
78
147
108
107
54
79
92
133
131
99
89
135
76
131
110
61
117
123
74
131
108
90
95
107
136
113
148
108
103
134
61
54
96
95
93
108
116
108
54
127
95
111
150
113
158
81
135
102
81
116
98
99
133
93
54
115
91
83
96
128
79
99
107
54
77
95
106
90
69
116
107
158
70
106
111
108
88
148
106
135
91
117
143
134
98
90
107
108
77
190
97
133
59
94
95
82
149
114
87
93
125
54
219
130
76
142
93
104
185
143
171
54
128
120
87
108
112
138
98
90
178
139
146
91
133
151
104
111
115
112
105
90
102
142
61
148
138
98
68
128
96
118
78
120
165
126
115
131
137
102
104
127
128
108
146
95
151
112
115
151
151
125
150
157
170
87
110
146
109
143
61
98
108
133
160
141
93
65
138
108
123
109
81
127
153
108
126
54
99
140
134
101
103
97
97
103
111
108
76
118
120
105
62
90
54
108
104
54
154
169
96
65
82
130
99
112
102
90
110
103
108
143
67
109
148
128
105
54
126
115
109
119
126
49
132
68
119
144
115
80
87
110
102
114
120
79
101
132
99
114
78
73
144
82
123
148
108
115
153
121
101
155
83
90
120
110
127
138
90
143
77
99
61
113
86
146
151
104
146
138
103
104
125
151
140
98
150
125
180
119
116
80
95
89
107
98
144
125
144
157
131
108
85
148
102
123
141
143
127
168
197
154
135
141
139
102
147
54
152
128
94
97
116
111
115
90
143
103
120
109
135
110
54
115
95
135
125
133
146
148
147
96
130
125
108
49
101
108
74
146
73
93
145
90
102
131
122
157
148
102
132
110
111
80
148
102
150
126
143
120
82
131
62
120
88
144
122
159
152
102
129
126
135
106
104
82
105
146
108
114
142
142
137
103
98
116
82
91
150
103
57
105
139
171
74
111
95
102
101
134
148
98
82
105
91
95
54
54
104
54
155
158
148
103
141
105
137
137
102
158
74
108
177
95
111
122
119
120
139
163
158
105
83
148
126
92
68
74
85
59
143
98
119
129
130
59
54
127
97
103
135
120
124
128
90
126
101
142
120
91
139
160
103
161
95
123
91
82
144
144
114
156
103
120
85
104
54
123
59
128
59
112
81
114
102
88
96
83
83
76
90
114
110
123
91
98
74
115
156
122
54
108
54
102
141
145
158
144
113
147
127
87
135
83
90
83
132
117
135
177
141
108
101
125
105
160
59
145
87
160
105
146
105
143
169
110
138
76
110
137
54
95
106
108
165
166
117
113
59
182
111
98
112
107
79
115
81
157
112
59
59
119
135
83
83
82
113
133
113
132
103
105
172
113
54
77
151
112
104
87
98
70
202
97
136
90
54
107
128
170
54
113
103
106
95
103
165
114
54
95
150
92
152
136
144
93
54
130
89
120
102
175
152
125
87
107
104
101
216
59
110
130
103
88
115
134
96
169
81
82
145
104
138
104
113
49
123
103
106
110
83
112
165
118
101
54
81
173
133
105
103
102
85
143
116
141
137
108
71
102
98
97
93
118
133
140
149
134
129
143
83
139
95
81
102
95
123
77
74
97
100
95
133
93
131
98
90
100
107
131
80
113
115
177
129
152
83
146
160
105
90
148
166
141
106
115
81
68
83
95
107
92
95
133
127
98
68
108
112
129
126
149
101
126
127
128
107
106
139
54
89
108
128
114
190
134
83
92
122
95
160
95
102
107
77
136
128
54
153
160
105
102
139
117
143
74
108
167
106
93
200
124
106
149
172
188
131
127
135
112
163
87
148
103
54
139
125
95
114
122
177
126
100
128
61
122
73
152
156
95
155
102
117
54
85
87
108
127
139
108
132
100
86
162
110
127
93
112
90
94
147
98
161
74
133
115
81
71
83
102
104
117
112
138
102
102
111
102
125
102
90
92
133
124
93
74
140
129
103
129
88
122
135
123
95
98
106
81
113
82
134
120
54
87
131
126
127
103
108
124
165
91
83
200
78
111
103
103
103
153
119
158
97
150
111
119
98
179
131
49
143
125
104
103
59
65
110
82
122
131
126
98
144
122
103
90
123
115
113
97
135
82
90
98
154
113
95
144
146
173
116
167
104
101
119
117
158
156
134
77
83
102
102
54
165
184
112
161
111
159
127
95
140
95
106
155
81
180
101
74
144
94
103
111
59
170
124
102
103
113
123
150
90
150
125
113
95
102
177
96
159
95
97
109
90
77
116
92
111
93
61
130
61
111
150
59
91
150
115
116
113
102
150
87
54
129
128
67
133
101
161
54
93
120
98
180
101
115
188
113
124
87
143
141
192
102
114
126
84
122
78
98
193
68
49
128
110
113
145
94
149
81
101
114
135
139
62
150
117
97
89
102
98
102
114
125
77
117
122
148
101
177
95
126
104
131
150
49
110
110
126
98
95
151
134
81
153
87
104
95
105
92
138
103
127
143
100
111
130
165
104
85
103
90
115
149
131
133
108
95
120
167
115
153
125
109
134
76
138
93
90
156
99
105
98
88
113
143
101
95
98
129
108
113
90
128
157
168
112
80
144
98
102
168
128
102
82
161
127
85
100
98
127
102
102
92
135
120
124
91
95
81
151
82
162
115
76
96
129
79
118
49
111
149
124
133
107
117
157
90
102
95
77
94
54
128
107
140
124
146
163
113
93
106
98
127
114
105
142
105
92
78
113
109
133
90
116
186
131
112
102
148
93
103
141
135
88
74
86
106
128
155
74
80
49
123
151
101
82
80
100
126
104
54
94
143
119
98
116
92
90
93
80
128
81
105
87
157
180
156
120
90
156
104
54
77
78
162
114
138
91
153
119
81
122
76
107
186
116
115
78
142
49
84
101
67
135
116
107
101
131
108
151
127
81
88
129
127
105
144
59
61
164
115
105
111
89
115
122
101
54
106
143
104
131
108
95
95
98
92
103
148
127
141
68
112
151
145
139
102
144
125
115
107
162
135
125
105
127
141
93
121
140
113
145
140
114
118
127
61
126
101
152
125
92
128
144
107
133
109
113
131
147
128
131
134
101
131
124
61
90
156
149
82
67
67
49
83
54
148
108
82
87
130
126
150
97
110
105
144
182
45
78
102
90
128
123
116
163
130
102
131
166
108
154
163
82
98
156
132
82
108
105
102
130
76
175
148
90
116
117
148
99
127
87
103
137
147
107
90
123
96
154
129
92
105
95
104
106
147
113
61
194
141
121
98
118
141
115
116
125
141
135
129
125
83
102
59
138
146
146
99
93
172
74
67
106
61
96
131
95
67
59
113
109
123
127
54
88
123
121
129
54
125
118
94
158
126
67
143
102
124
131
126
135
104
102
124
156
125
102
162
131
104
156
77
170
111
108
107
109
100
67
118
97
54
111
173
124
108
98
107
117
93
59
95
172
142
104
128
144
128
120
89
72
168
49
112
145
98
102
115
134
117
147
144
126
102
93
108
160
54
156
139
109
79
152
114
103
130
105
115
147
156
114
95
68
102
119
74
49
85
83
154
107
102
172
76
105
103
108
102
157
74
141
104
102
54
106
81
105
141
106
103
120
115
77
105
134
133
179
122
136
85
127
105
121
108
91
129
169
54
133
108
115
123
132
112
132
85
109
158
107
99
103
150
128
86
114
114
74
134
106
68
155
134
105
160
135
138
108
77
92
67
143
74
81
118
119
175
120
96
138
134
79
100
103
132
152
142
123
115
134
59
108
59
82
133
112
196
144
134
103
94
77
102
73
59
86
108
103
103
103
90
157
107
117
153
105
120
115
110
165
141
109
132
118
98
109
124
134
113
125
116
93
103
83
188
103
129
102
159
102
135
161
92
125
115
117
74
95
131
133
138
135
109
128
98
114
90
161
118
90
161
102
102
98
125
61
144
82
85
115
108
120
148
129
127
145
99
54
59
96
82
104
127
69
120
104
183
144
113
145
151
108
102
68
54
81
93
102
123
95
139
135
93
124
125
116
103
127
129
54
161
131
120
148
157
96
69
102
132
125
141
74
120
92
129
97
134
74
109
124
100
102
104
137
102
115
118
108
54
125
125
113
115
103
159
91
81
137
130
133
108
134
142
141
131
124
127
105
100
167
105
120
80
93
97
54
111
95
191
132
100
54
107
148
102
189
142
148
62
108
78
139
98
108
87
106
102
138
98
91
106
106
165
104
131
95
54
77
108
152
163
122
99
85
180
131
148
112
137
104
83
49
113
108
108
54
133
68
130
133
118
141
49
133
146
120
140
124
119
116
73
134
140
107
87
174
112
147
113
77
148
94
125
129
123
118
107
82
112
59
128
102
133
113
74
186
85
82
119
149
134
127
93
125
113
152
118
99
115
108
116
119
106
112
98
125
147
82
97
93
125
122
118
122
102
133
156
54
67
98
160
98
112
100
85
119
114
95
97
146
49
139
133
83
135
164
82
114
90
100
113
92
100
92
119
95
120
90
100
74
160
113
125
76
122
125
95
78
94
93
126
83
144
102
95
129
105
120
54
106
112
136
143
110
124
133
140
120
144
117
112
98
54
102
123
139
156
125
171
151
128
138
164
106
106
103
133
87
119
115
153
160
102
150
83
146
122
121
172
162
165
174
156
115
152
143
105
147
144
81
123
192
104
90
141
122
82
177
102
86
106
101
108
81
133
95
54
129
129
131
92
113
54
179
117
143
105
138
93
90
168
95
54
131
133
157
128
138
126
104
165
96
121
78
130
91
83
118
135
102
103
102
95
127
141
109
150
104
158
103
116
133
148
129
143
177
74
124
151
87
104
167
159
119
113
140
141
105
100
133
96
118
161
168
86
110
95
77
83
127
82
105
158
121
123
95
122
87
90
139
164
79
126
102
101
147
103
111
96
169
78
91
149
101
77
140
76
161
93
107
108
128
54
82
195
135
141
83
198
131
114
74
108
105
90
96
142
101
144
108
129
118
146
148
61
119
54
95
116
144
125
87
108
92
142
96
119
90
107
140
155
103
95
141
137
96
93
122
98
124
77
75
102
142
166
131
82
135
133
149
59
133
109
150
107
117
148
74
129
54
77
87
96
134
82
113
119
176
102
84
95
85
107
98
153
126
137
81
117
198
125
185
96
157
81
107
103
112
106
129
136
141
107
123
80
110
73
95
106
106
77
108
93
148
90
104
120
102
90
136
89
87
54
177
123
54
107
101
95
92
187
107
128
96
108
94
80
134
148
106
125
97
67
95
95
102
152
147
68
106
102
67
98
130
155
113
132
98
104
131
107
129
104
87
94
130
129
98
125
98
148
77
106
97
76
148
130
139
127
131
94
116
85
119
140
144
145
108
125
140
69
108
106
112
68
98
146
128
97
103
127
156
137
121
90
125
93
108
81
125
141
102
170
159
104
105
132
142
129
148
49
96
127
49
110
150
136
90
74
54
74
80
114
75
159
93
108
164
79
49
74
148
115
144
98
149
95
69
117
140
82
82
131
115
98
181
108
59
80
103
74
159
85
102
98
49
125
112
102
138
115
94
151
115
96
143
92
57
108
143
108
105
148
102
127
95
106
97
78
113
189
105
90
102
144
140
113
139
138
90
138
229
104
129
105
82
184
120
107
116
163
148
113
118
163
108
109
96
54
113
83
103
144
54
103
98
103
98
145
102
119
148
97
125
140
95
140
149
126
111
140
165
102
122
112
119
142
90
116
101
99
105
54
131
87
49
161
138
122
49
59
135
90
129
151
136
59
128
103
160
108
112
111
107
133
150
142
113
81
87
131
137
103
129
98
69
135
100
103
142
89
120
107
49
54
105
107
157
162
122
135
123
196
134
133
81
77
112
143
149
144
148
129
134
54
90
147
131
133
131
108
140
172
98
164
111
93
127
140
111
97
111
104
93
137
105
105
147
95
111
113
110
78
131
172
102
144
107
98
91
142
176
120
120
98
129
143
125
135
97
121
169
100
128
106
164
90
102
94
157
117
112
106
112
124
114
128
82
128
82
106
111
131
107
123
95
129
180
123
108
112
74
59
113
114
108
153
49
150
119
115
128
130
129
104
108
147
124
158
139
94
84
147
128
98
168
124
107
113
93
96
59
116
135
123
164
113
107
148
111
114
98
93
124
87
169
131
129
77
160
119
215
153
115
141
98
82
49
92
138
131
113
91
82
93
98
102
131
102
82
145
108
163
133
116
158
127
125
103
100
185
144
120
126
125
186
87
149
126
114
111
77
106
108
148
146
106
101
134
98
54
132
103
104
124
153
98
114
161
148
54
129
148
135
144
93
116
153
103
133
91
94
96
59
54
78
166
112
124
74
200
148
137
110
129
49
122
98
143
113
90
127
111
74
147
81
85
54
99
98
130
99
127
148
169
93
84
122
107
160
121
156
112
98
120
109
120
145
98
80
114
122
79
155
107
76
113
49
122
87
59
54
123
125
67
144
176
116
67
139
147
145
163
120
129
148
108
163
54
67
65
81
105
90
99
101
83
143
104
139
138
98
172
113
117
143
170
148
89
162
77
103
54
72
128
128
94
135
184
95
129
140
126
126
104
125
138
95
158
103
103
122
143
69
91
99
92
127
96
137
172
119
164
110
130
153
117
74
124
145
94
98
186
150
146
118
67
125
98
119
106
125
158
111
106
54
102
163
95
49
165
143
126
59
145
186
139
106
128
177
123
123
109
74
125
120
147
112
112
76
98
148
110
95
81
136
108
135
149
113
118
152
115
131
133
93
108
124
102
74
88
108
89
127
89
133
113
131
98
134
116
105
93
142
116
87
124
113
54
133
54
103
120
121
98
136
106
140
110
54
70
108
134
120
139
158
116
118
107
113
78
90
96
105
134
98
105
126
133
141
113
156
113
82
104
112
111
76
138
102
108
128
122
69
173
201
49
108
106
122
122
96
98
83
87
120
83
115
102
93
122
108
80
143
96
95
108
76
85
54
145
120
178
128
124
108
95
122
123
117
84
139
89
108
125
77
116
76
138
160
154
111
125
95
80
120
97
130
136
54
117
168
113
87
98
105
92
160
132
117
91
123
141
129
98
96
127
90
76
98
158
100
67
161
193
113
146
98
102
82
54
112
110
45
49
81
93
95
93
131
81
54
143
106
54
73
135
108
154
154
95
116
114
120
108
133
177
81
153
89
145
108
81
90
120
101
105
76
81
115
102
113
144
95
49
95
102
107
126
139
81
90
139
158
111
119
133
101
112
116
106
135
146
106
118
149
118
87
108
67
54
131
95
118
68
188
90
101
156
144
54
143
129
139
54
135
103
146
164
108
84
173
129
127
135
74
102
145
144
74
142
70
144
160
129
118
128
122
141
127
104
101
118
136
76
106
95
112
76
146
54
78
130
96
153
77
106
133
177
127
177
87
146
112
81
78
153
125
102
114
142
95
81
172
95
126
81
69
143
91
102
92
76
156
146
132
103
76
159
54
153
74
83
111
148
107
90
120
118
121
135
81
153
108
126
108
96
144
111
160
104
103
78
106
108
128
119
104
95
114
102
186
102
117
131
122
146
147
119
122
78
135
129
108
81
106
106
131
144
113
107
139
133
133
93
144
91
69
117
87
135
120
102
131
114
184
119
108
49
114
100
59
103
103
106
112
90
67
144
81
148
91
150
103
138
98
151
127
131
149
74
118
121
87
164
103
108
155
101
122
116
133
92
54
101
108
110
148
120
81
98
101
102
90
93
77
158
154
164
144
116
76
148
139
154
114
140
139
98
113
112
54
124
148
101
132
108
100
98
54
129
146
105
81
103
190
125
148
90
161
54
102
85
90
110
96
129
116
136
131
149
108
119
153
153
150
104
135
112
72
97
120
141
140
87
169
101
67
169
97
95
95
157
127
112
99
54
108
91
67
141
95
127
120
165
148
125
92
131
121
115
134
129
165
167
93
102
102
128
148
117
110
90
59
160
92
108
83
124
85
130
103
176
74
130
117
143
183
125
98
197
78
93
113
116
154
138
107
127
98
67
123
76
54
118
118
103
83
125
105
177
81
81
148
76
137
143
94
95
144
133
134
148
125
59
116
130
102
105
122
100
87
111
81
157
99
123
161
129
170
154
129
129
161
122
101
102
104
131
97
115
102
151
155
102
105
105
128
114
104
135
125
81
156
95
148
125
148
113
131
127
125
111
103
106
125
115
102
94
126
177
85
153
104
108
74
107
102
116
138
156
149
108
133
106
116
45
73
151
127
74
145
118
146
90
115
90
91
103
54
128
101
93
94
129
122
106
111
98
77
93
148
110
103
81
54
54
117
87
124
200
109
116
140
61
133
120
135
145
116
106
148
54
131
120
120
113
171
98
148
125
102
111
188
109
125
54
127
140
68
103
167
143
67
61
104
162
123
153
165
98
98
135
108
128
104
89
108
130
106
132
141
114
150
102
103
123
86
171
93
146
95
120
106
125
102
87
102
123
101
118
82
107
142
162
141
78
95
115
94
143
90
84
82
103
112
98
139
119
130
117
73
98
97
82
49
125
86
96
109
108
171
100
125
144
168
49
128
121
150
148
134
109
127
82
105
69
81
127
101
111
129
125
128
75
131
49
102
79
116
94
102
131
147
80
116
135
59
156
156
140
136
112
111
65
102
98
90
54
112
116
61
85
143
128
113
123
54
111
124
185
125
154
179
158
125
95
109
103
129
87
142
132
97
124
68
109
137
108
153
91
82
190
128
90
59
115
81
93
131
112
124
161
109
120
155
104
135
108
113
105
98
129
54
84
90
140
148
131
54
100
82
133
125
113
113
113
76
169
99
92
113
59
97
116
100
148
148
107
113
79
176
102
119
102
148
101
190
95
194
148
154
116
96
98
113
107
102
86
119
49
95
131
76
97
90
133
98
127
132
114
142
128
100
90
121
161
97
144
150
118
111
156
142
135
105
150
141
117
45
136
90
82
137
95
90
128
141
109
179
49
135
152
108
87
142
67
134
124
110
120
108
113
139
98
104
144
134
95
109
94
107
148
98
124
59
75
91
131
54
78
86
144
87
139
121
175
104
120
102
108
135
148
168
120
100
91
87
140
142
90
132
102
108
133
108
80
118
81
208
94
154
183
124
103
121
93
103
92
94
149
154
114
126
151
118
148
116
101
112
153
85
76
108
172
100
157
94
106
83
117
54
171
81
111
83
112
131
78
116
101
105
126
90
125
87
112
161
128
135
98
177
108
108
106
105
164
54
109
199
99
98
126
156
81
155
135
133
116
172
119
94
180
156
120
108
160
151
123
147
74
110
81
102
108
96
95
139
193
148
95
141
141
126
69
92
139
150
103
102
211
154
133
113
91
202
74
137
150
119
192
120
93
165
83
102
145
122
113
76
141
113
170
113
95
86
95
54
77
119
102
68
158
101
106
74
94
67
179
148
114
69
117
124
143
102
127
81
134
96
114
110
116
191
90
143
147
74
95
106
115
111
97
109
126
112
133
91
74
81
118
118
108
98
114
167
140
54
128
140
158
101
101
111
87
74
82
140
145
120
54
131
108
103
49
112
78
138
135
98
127
83
87
180
152
126
141
112
135
156
123
103
54
99
126
139
173
115
175
76
140
82
129
135
102
97
138
192
78
134
153
95
87
216
76
101
95
143
105
98
167
90
109
123
93
93
132
111
71
93
133
152
79
81
108
100
133
111
110
153
110
125
80
120
113
96
81
152
100
87
54
77
155
97
133
98
118
160
149
143
162
128
153
205
114
161
89
143
163
180
91
123
123
135
125
68
163
116
49
129
100
99
157
98
135
59
130
61
93
101
102
108
129
118
145
54
133
104
135
103
74
103
120
150
156
92
105
125
112
91
126
143
128
84
103
106
120
159
107
105
125
101
109
90
106
162
108
133
102
98
76
131
54
152
95
132
144
101
98
166
81
119
179
95
76
177
77
107
113
106
127
142
95
126
59
134
108
74
113
90
109
100
112
122
133
113
130
108
91
158
76
154
151
95
54
99
88
127
108
95
137
105
54
151
110
54
131
155
123
76
67
113
116
77
124
85
147
102
133
150
137
106
102
147
108
115
148
118
119
99
109
139
90
113
130
91
129
134
134
85
97
76
90
85
67
161
116
89
111
146
74
108
109
163
115
84
141
137
108
82
144
113
101
127
115
85
67
84
54
77
142
88
145
123
141
95
140
59
108
83
123
113
79
87
125
100
128
93
108
90
89
185
103
54
108
102
129
139
167
149
95
124
119
140
127
95
128
164
102
91
111
146
98
139
137
109
103
116
125
157
113
149
126
105
163
116
122
81
132
81
95
95
76
157
87
106
95
99
87
104
106
120
120
132
145
102
165
95
120
116
125
148
102
83
112
81
132
107
108
140
133
133
69
135
104
180
108
54
103
83
113
152
190
175
137
141
124
135
168
95
108
171
91
83
125
130
137
108
87
82
113
107
123
140
82
135
54
102
124
108
96
108
103
103
105
110
140
148
116
103
95
158
131
102
120
125
133
102
83
146
86
92
124
162
115
156
91
86
131
177
155
85
82
112
96
106
156
122
108
107
115
65
99
103
108
103
105
108
97
108
74
76
74
107
54
84
120
81
128
125
102
134
127
89
103
108
87
113
172
152
120
137
54
104
136
59
120
97
108
77
98
161
82
113
117
95
122
158
98
145
128
166
144
129
135
131
120
97
134
129
103
102
124
120
133
100
95
98
129
103
137
157
103
140
85
116
128
130
126
106
77
77
146
77
125
107
129
98
87
62
125
87
102
149
176
134
127
113
119
102
106
128
85
95
111
98
68
160
110
119
133
172
132
104
106
112
140
158
123
144
133
120
98
81
105
108
180
107
96
122
112
155
152
129
97
146
120
126
150
89
163
163
107
84
132
78
148
108
135
130
102
96
102
88
136
108
76
158
137
115
108
135
133
135
104
138
119
85
94
200
78
95
106
109
78
102
172
101
127
147
102
76
116
77
129
200
138
102
116
94
122
128
121
108
110
107
127
102
131
118
103
112
150
107
147
105
102
128
109
167
180
101
77
133
49
125
128
129
117
121
90
98
125
113
172
119
116
116
142
139
94
127
172
83
139
109
102
138
161
125
81
90
78
80
147
148
160
123
98
152
139
131
80
74
123
124
157
74
98
88
133
87
177
93
77
144
91
151
115
92
102
125
102
96
141
148
128
95
123
125
109
141
119
81
93
82
132
102
97
94
98
91
117
98
141
49
164
110
74
96
152
118
126
124
54
119
150
113
125
81
107
155
59
99
125
143
92
146
143
105
83
117
95
113
157
165
118
92
127
102
109
113
110
107
78
183
111
86
100
103
54
135
190
98
105
138
123
139
114
91
103
95
143
134
106
129
145
104
120
49
92
103
118
86
140
102
54
131
137
54
121
162
145
80
122
122
83
150
76
127
120
137
102
137
144
97
54
98
106
87
133
130
154
105
54
54
78
127
113
49
74
76
91
102
144
104
108
109
81
116
114
125
105
136
130
122
119
82
119
45
96
85
120
77
74
133
90
106
182
168
134
95
113
158
105
108
144
134
168
91
69
112
87
112
120
95
99
125
132
143
129
155
129
133
110
103
134
114
174
113
114
117
129
110
77
132
120
177
132
169
95
148
149
149
133
104
96
152
112
150
153
102
76
101
111
140
115
111
49
81
113
134
93
76
118
87
147
103
93
126
92
74
126
156
113
74
119
132
157
113
103
117
145
135
135
203
67
120
133
98
93
54
118
108
54
49
54
143
120
143
103
196
137
95
83
134
138
113
103
123
98
104
78
68
54
153
144
110
96
106
82
98
200
144
81
127
106
119
65
120
131
86
112
137
182
49
113
148
177
124
103
83
105
90
116
95
92
117
119
133
95
152
151
116
168
78
98
165
97
124
132
87
96
125
67
68
91
169
109
54
67
144
84
175
110
117
90
139
105
129
118
124
54
87
129
93
160
91
89
61
54
116
124
102
92
77
116
128
148
83
49
59
81
119
85
115
106
106
125
155
54
143
105
135
119
94
174
133
128
177
94
116
78
121
141
105
171
74
103
140
54
177
133
54
129
91
100
87
108
105
140
102
103
160
134
134
172
92
114
123
85
95
96
108
131
121
83
105
78
104
124
140
116
59
135
134
119
117
127
104
129
141
115
54
67
130
74
131
92
120
102
59
158
102
140
161
125
133
144
141
139
150
150
102
54
128
137
103
131
125
54
145
103
115
149
154
115
108
118
106
132
80
94
133
126
153
82
98
144
80
78
80
156
143
113
74
150
169
102
108
154
127
144
116
134
169
83
117
77
70
125
125
212
145
140
82
93
66
134
106
69
147
94
205
90
117
188
94
83
119
87
129
135
94
112
115
153
81
144
92
95
128
140
120
170
116
126
94
113
87
74
76
106
177
59
81
95
96
109
172
68
54
49
98
108
54
98
84
142
54
63
91
103
122
182
141
54
140
131
138
143
147
107
78
81
102
98
54
140
105
129
123
177
122
118
54
80
114
165
119
129
126
102
118
82
125
90
102
96
94
98
83
139
95
42
146
107
109
103
148
105
135
90
115
96
141
105
120
102
108
99
42
120
118
77
105
94
80
116
109
106
158
134
78
123
133
143
108
122
92
116
113
115
153
104
158
74
135
89
124
146
134
80
143
118
124
118
176
105
102
127
113
163
180
148
92
119
128
59
101
126
142
145
95
133
98
103
67
131
87
68
113
49
54
168
54
99
156
103
95
150
54
110
103
54
188
99
124
74
144
122
118
139
112
94
86
95
90
97
109
114
98
80
105
106
134
113
133
102
144
119
110
162
105
87
90
137
107
137
101
76
161
113
110
81
107
129
74
138
80
158
165
54
81
138
153
110
98
101
177
143
69
131
142
91
92
120
108
148
162
113
113
128
97
138
112
147
143
49
89
113
135
70
103
101
77
73
158
129
81
114
125
139
125
97
141
83
120
124
135
102
172
83
156
108
114
125
103
123
95
141
87
108
100
102
93
49
170
144
145
128
127
97
82
111
112
103
137
188
95
98
132
131
107
108
54
108
102
77
158
92
103
147
108
165
149
109
120
104
140
77
127
94
146
102
102
69
90
100
119
54
163
135
95
129
139
131
115
105
118
148
138
127
90
69
103
175
137
110
185
88
95
140
89
112
169
163
54
74
134
139
115
107
150
139
138
165
139
102
128
98
49
114
121
130
74
144
140
150
92
141
120
102
118
117
98
181
135
102
115
135
191
59
161
90
124
104
85
133
76
128
97
54
176
161
128
128
98
140
112
130
81
150
78
112
152
134
81
126
116
113
108
109
95
148
67
134
54
89
108
104
54
73
108
105
102
135
148
112
158
95
68
116
102
93
205
118
87
88
86
139
87
117
143
49
193
103
92
200
98
69
68
120
108
81
128
120
114
54
139
91
102
142
157
133
129
158
138
163
85
158
150
147
84
98
146
113
101
56
106
160
117
148
89
134
148
143
122
54
81
143
144
146
120
90
145
116
200
141
81
234
106
115
167
54
118
121
106
110
95
110
90
107
119
119
95
153
126
131
102
102
102
169
135
105
132
143
132
103
156
143
112
109
81
110
54
83
54
82
158
101
90
45
115
103
128
151
45
81
95
116
100
163
82
90
130
102
160
116
89
109
102
81
135
129
98
84
123
114
116
54
118
83
103
73
128
120
108
156
138
125
102
108
85
135
102
149
128
98
149
154
122
99
110
135
115
124
119
137
67
135
170
103
112
129
163
98
139
154
99
120
142
105
107
113
104
108
108
116
144
108
173
54
130
81
168
125
98
126
146
134
157
113
131
101
104
77
121
108
89
156
191
113
117
105
108
132
116
116
107
108
148
141
74
164
125
82
45
127
101
153
89
145
145
98
117
158
114
127
116
146
140
133
139
92
139
179
126
108
115
153
165
83
126
95
110
136
84
150
87
101
74
90
103
103
146
105
49
97
114
69
171
81
143
93
146
93
95
83
81
97
129
54
119
123
81
115
117
134
155
85
169
83
107
118
153
139
120
116
95
160
100
97
115
102
109
118
114
134
142
67
123
77
144
128
86
131
93
146
96
116
101
103
113
109
108
104
123
68
76
82
95
74
116
127
180
77
138
120
169
49
147
143
77
122
139
95
95
125
140
121
113
126
100
102
142
123
129
116
119
102
99
142
95
101
214
88
77
98
127
90
83
116
107
135
111
122
113
86
153
173
115
114
111
83
137
119
76
112
104
126
101
105
113
192
102
145
114
113
121
99
146
93
123
86
88
138
93
59
170
86
108
103
141
130
119
59
120
145
59
54
144
118
129
106
68
130
68
133
105
102
118
167
98
98
59
118
121
91
73
127
98
59
54
74
49
77
76
94
108
110
111
99
103
179
171
110
87
137
144
97
180
106
102
122
177
124
165
98
124
172
98
129
96
106
49
80
95
83
93
107
93
74
148
114
54
90
87
95
118
140
102
150
68
95
106
95
116
98
148
110
49
139
130
129
156
139
101
104
59
49
142
141
83
170
77
98
111
93
126
174
194
165
54
148
144
151
108
143
154
120
54
153
123
93
97
102
133
106
170
87
158
83
131
112
76
90
121
124
104
153
90
104
130
84
140
102
87
113
96
108
116
105
111
174
131
79
157
76
137
159
165
115
109
122
185
121
116
102
108
127
54
98
115
125
131
161
104
137
138
133
61
130
102
113
146
104
110
157
113
95
97
122
112
61
124
123
98
74
83
107
118
102
95
54
67
101
65
54
98
188
80
97
54
129
154
112
125
120
143
120
142
88
142
105
130
101
135
142
59
143
157
195
92
113
146
177
128
105
146
142
89
152
74
139
144
115
120
144
142
92
86
120
101
123
125
148
91
93
144
104
108
162
90
106
227
91
108
123
139
153
54
77
110
95
132
101
107
93
75
107
90
87
98
94
90
146
151
126
145
102
147
129
93
81
113
200
109
98
123
139
107
151
164
168
76
125
165
93
82
54
74
107
61
59
132
81
98
76
131
88
108
118
124
155
106
95
138
134
98
154
98
136
124
113
130
165
90
115
74
165
103
155
120
101
141
129
87
98
54
54
162
135
82
59
177
105
100
77
102
139
87
115
132
146
126
102
93
83
101
144
103
148
96
54
165
49
124
124
120
148
90
89
108
93
145
73
131
108
74
106
139
83
109
145
102
95
115
59
145
166
94
148
95
112
106
132
157
134
168
117
113
113
107
182
92
112
157
102
143
144
135
142
146
100
130
98
110
95
116
96
149
99
82
105
124
102
93
102
115
81
93
121
127
85
107
127
100
84
54
74
161
113
177
130
155
159
148
119
171
144
88
172
89
54
126
108
80
144
152
137
146
93
124
107
67
139
114
76
67
152
145
153
108
102
54
115
124
74
181
141
59
141
112
85
148
113
156
54
147
120
102
152
143
74
102
139
87
127
147
106
163
137
84
168
163
148
89
152
97
119
83
105
147
97
151
123
108
71
128
130
150
68
108
122
106
76
49
158
142
91
167
89
121
102
69
87
133
149
113
108
177
92
83
118
127
201
80
168
161
89
148
153
152
79
160
108
95
93
105
133
137
77
117
134
98
103
98
96
105
120
83
151
73
109
81
91
67
110
95
122
129
154
114
107
97
152
80
59
126
107
102
98
76
124
105
133
85
149
112
174
104
84
82
102
54
108
84
115
98
153
119
110
133
109
76
132
106
146
146
61
149
170
98
79
114
146
65
108
153
127
78
135
128
83
139
73
90
163
145
95
87
174
127
107
118
96
102
90
115
131
83
88
95
149
137
141
90
147
145
126
115
131
122
135
123
76
97
104
118
134
123
95
113
114
106
108
82
161
102
49
95
145
145
106
78
128
108
98
144
95
154
123
129
128
76
123
59
153
129
94
111
96
124
131
142
124
102
88
120
82
90
54
102
78
135
176
94
135
81
149
131
97
120
111
102
77
114
161
97
83
90
114
67
87
113
67
129
108
93
139
159
127
145
129
146
131
131
91
59
54
161
122
123
144
54
74
81
169
146
181
61
101
155
127
101
87
140
77
155
107
98
49
158
104
89
128
114
148
118
132
193
132
200
78
170
118
113
136
108
100
125
114
101
102
148
134
59
102
119
180
141
121
136
83
94
96
98
116
123
108
160
78
102
98
118
157
134
142
149
174
163
189
154
121
67
144
103
128
94
101
165
54
107
82
134
54
104
100
96
95
122
140
108
81
104
81
96
108
74
171
90
113
157
145
131
96
114
128
107
76
95
110
119
96
133
158
98
133
106
73
146
128
135
122
92
106
105
166
101
92
122
54
106
67
120
102
116
150
156
139
105
108
123
140
110
123
139
110
120
95
76
144
101
110
106
135
137
96
101
172
147
133
90
141
81
131
120
103
89
110
112
155
91
129
49
92
95
110
117
144
81
84
115
133
99
49
106
131
54
131
136
120
118
98
125
120
77
117
115
128
161
150
54
115
110
88
87
95
128
81
83
102
119
133
59
113
103
95
78
123
108
87
107
91
77
112
147
119
143
158
108
102
87
133
151
154
214
112
144
108
136
73
131
101
115
54
118
125
128
155
125
81
170
139
179
54
136
101
157
90
107
102
108
115
93
180
98
128
90
95
156
100
110
90
149
130
95
62
102
132
133
69
81
95
100
146
154
125
117
105
102
112
108
98
49
165
91
133
102
143
103
100
125
97
108
120
124
105
76
108
110
124
163
100
102
136
140
102
110
110
88
119
107
169
118
194
103
108
101
108
95
115
112
175
161
117
121
102
117
81
212
138
112
118
122
121
103
112
150
130
116
91
135
112
101
105
152
106
155
81
98
177
107
160
96
134
108
102
68
125
121
125
119
128
107
85
108
143
125
103
61
100
113
204
98
87
172
124
194
149
118
98
132
128
108
94
132
142
100
109
96
149
49
103
127
76
149
150
116
118
117
123
90
128
91
125
132
158
82
87
54
156
102
94
144
112
133
105
124
96
120
113
70
143
77
149
49
67
125
97
105
140
128
76
146
179
128
144
85
122
94
131
88
139
116
110
115
108
113
113
165
54
80
87
122
126
147
73
102
54
93
138
107
128
97
105
82
119
122
113
49
69
122
138
54
140
113
129
105
59
113
108
144
49
121
59
138
95
107
116
90
161
104
83
120
90
150
158
140
146
133
132
129
87
93
102
106
103
125
184
91
91
95
83
80
133
90
101
112
97
136
98
105
85
103
146
102
61
100
108
105
54
150
77
107
101
59
126
116
132
113
110
113
100
132
194
199
62
116
128
158
127
110
149
123
143
98
95
158
133
157
168
67
77
148
136
108
61
123
86
90
145
133
147
102
95
77
125
117
133
176
78
131
128
104
102
139
113
142
141
149
160
101
122
85
130
151
101
143
152
98
140
78
76
196
81
88
124
108
54
112
78
142
99
146
77
101
111
125
139
113
134
82
94
99
122
127
73
59
67
49
139
149
135
129
151
117
158
54
106
54
83
81
103
61
135
179
111
69
93
106
101
159
83
118
100
115
177
101
164
135
112
100
93
98
175
93
135
54
108
147
85
100
134
78
120
95
54
125
142
108
122
145
131
102
106
119
133
88
125
74
134
106
140
84
123
104
95
135
83
141
158
137
142
126
149
113
134
144
125
59
146
120
96
84
98
140
69
141
98
98
118
96
102
158
165
101
98
158
122
121
87
59
86
171
54
96
118
105
91
98
138
108
140
110
54
128
128
134
105
97
67
120
93
108
128
139
184
95
117
108
179
141
126
82
147
93
118
118
116
162
92
147
108
126
120
107
90
110
117
85
74
135
87
96
180
149
59
95
144
101
118
97
154
137
114
96
153
54
153
129
103
124
107
177
49
163
166
157
103
95
103
131
120
158
93
173
159
123
141
54
123
73
86
113
90
125
133
139
145
133
108
99
118
59
146
158
95
93
158
129
144
180
91
98
98
100
96
167
79
98
95
61
101
119
59
119
117
82
102
101
82
102
122
108
103
154
158
126
57
161
111
108
123
93
88
200
93
103
105
151
77
148
136
147
121
93
54
98
128
102
150
154
111
110
126
137
77
158
105
90
74
113
54
68
107
113
110
54
99
78
101
78
146
98
54
131
54
93
153
117
139
136
85
90
96
103
130
116
110
137
54
113
105
128
67
98
95
99
212
134
74
143
151
122
136
95
162
90
103
105
102
165
110
125
121
133
121
122
121
90
148
141
140
103
128
116
137
107
140
219
116
83
124
112
88
98
54
126
96
177
110
127
92
78
133
115
83
135
169
105
77
89
54
95
133
95
128
110
138
143
107
99
130
143
59
123
98
128
75
145
91
114
140
133
113
102
167
75
85
102
91
80
120
106
127
140
126
54
89
49
122
108
78
83
140
49
153
77
93
108
90
138
102
112
90
103
141
108
143
59
137
172
115
156
133
112
124
54
61
82
126
113
132
200
125
106
59
81
125
95
102
68
164
110
102
117
67
133
113
119
133
180
103
108
173
101
126
161
113
108
107
113
139
138
131
102
108
102
54
105
69
54
91
181
150
144
107
84
135
106
173
74
152
177
127
125
101
129
108
121
109
128
101
93
92
90
106
156
137
81
104
91
155
125
128
148
156
114
145
161
173
117
90
132
108
54
107
107
119
110
90
144
108
91
102
111
82
125
106
119
90
107
145
116
119
81
124
167
139
94
102
166
130
118
87
135
80
69
141
90
112
121
124
85
148
101
103
93
103
93
87
101
144
138
128
54
158
84
118
85
93
83
83
154
186
129
109
118
198
93
118
131
170
155
106
119
134
102
49
107
107
95
54
123
125
115
135
108
98
141
131
153
78
140
135
125
180
54
110
125
54
139
104
124
112
81
94
115
148
127
107
159
122
131
114
102
165
95
130
116
126
143
96
95
59
127
76
92
81
104
98
120
123
147
90
100
125
65
125
89
131
182
124
177
54
90
135
147
101
81
160
132
103
97
108
133
131
101
118
123
108
146
143
156
187
143
102
158
121
102
113
95
127
102
95
152
84
127
95
100
110
69
105
125
124
113
89
121
98
104
120
120
106
111
107
114
110
150
155
165
147
115
135
59
157
182
162
76
122
186
105
113
110
81
122
92
139
101
67
123
139
129
54
104
139
131
97
91
98
189
54
126
59
93
82
54
100
95
179
155
178
106
81
117
108
160
98
146
76
92
127
120
90
118
108
133
188
109
89
143
94
131
87
105
98
157
115
133
100
127
95
146
158
119
173
157
118
129
74
110
157
119
120
113
122
98
104
153
99
105
122
110
82
176
114
83
87
91
103
89
98
148
93
54
145
148
112
95
122
105
116
186
147
109
163
126
98
54
129
131
110
49
69
143
160
88
132
85
81
128
161
128
91
120
152
105
140
123
91
81
91
130
68
142
115
120
90
125
102
124
127
108
67
161
135
85
98
88
134
137
78
74
101
95
95
116
191
106
135
147
109
77
163
114
54
106
89
154
88
78
95
96
125
128
131
112
59
133
113
99
177
83
133
97
83
124
151
141
91
96
139
75
96
115
103
145
138
92
112
54
103
105
99
95
98
100
95
179
116
124
49
117
134
54
113
128
96
102
117
132
93
101
99
80
132
129
105
73
84
79
144
97
106
136
103
112
127
143
77
98
109
78
69
133
103
54
110
126
108
102
80
119
126
165
105
114
104
87
98
146
125
125
147
54
98
165
69
98
49
103
114
143
153
127
143
102
128
83
129
144
49
135
103
116
116
137
130
162
112
104
100
98
88
105
95
138
148
131
148
163
102
103
95
87
109
137
194
101
119
118
90
76
122
153
74
140
138
112
168
139
100
59
136
108
132
112
119
112
91
83
153
162
81
111
102
82
148
151
160
163
122
109
102
85
87
108
114
126
95
101
89
142
127
80
146
87
85
98
81
107
134
101
131
182
95
84
90
97
128
159
54
148
199
126
157
180
106
54
100
138
92
125
177
88
77
105
72
131
54
116
119
135
132
76
81
98
125
115
77
135
102
186
174
76
120
151
130
54
105
76
133
154
123
127
119
115
100
122
155
105
82
93
139
77
89
150
191
105
91
113
117
155
132
107
95
93
112
108
82
59
191
123
143
117
94
72
125
59
144
133
133
129
108
96
98
133
59
59
159
87
107
114
114
105
108
167
134
130
158
144
136
144
120
125
136
92
146
82
106
131
106
79
149
135
103
116
135
133
127
78
95
125
119
139
119
113
90
135
77
144
105
180
133
144
126
88
143
108
103
75
166
86
200
108
126
113
112
103
139
89
108
109
108
120
80
128
54
98
77
95
89
131
117
109
115
104
150
118
96
108
132
96
59
101
143
101
139
160
54
101
149
121
105
95
154
126
105
105
92
70
113
197
170
162
139
102
102
95
45
145
157
80
102
84
125
95
168
69
154
130
102
112
114
111
173
165
122
156
104
108
76
127
129
105
134
86
166
141
81
123
127
94
101
74
108
90
81
98
101
72
83
67
108
76
88
98
148
125
108
145
124
103
134
129
138
159
115
157
121
115
161
54
105
120
96
91
81
106
105
96
107
138
85
125
128
120
124
124
190
90
72
131
141
137
136
96
94
146
157
102
157
186
116
125
109
123
90
137
103
90
112
102
110
168
124
93
103
129
86
103
139
76
115
103
135
106
142
93
158
158
99
98
165
145
124
129
80
139
123
148
89
95
61
124
81
158
112
131
133
109
90
54
144
102
110
144
54
95
93
127
96
49
107
156
116
135
81
100
140
49
99
178
115
127
145
131
129
116
158
78
129
82
98
140
81
142
147
104
99
144
171
148
120
106
93
101
128
159
76
123
89
90
165
158
122
125
107
131
106
143
116
105
90
109
128
131
148
74
80
54
95
117
103
129
110
88
96
81
128
171
93
148
115
138
159
150
129
145
54
128
160
141
78
122
59
90
168
160
100
184
99
81
115
126
102
61
116
129
87
105
112
151
139
107
95
116
129
135
114
137
118
114
95
88
107
123
138
135
85
95
105
163
135
93
105
100
77
151
120
128
172
152
117
165
117
95
131
91
76
54
125
125
95
141
131
98
155
161
102
67
54
161
125
79
120
98
120
149
91
90
134
131
141
131
104
126
90
93
126
111
111
113
130
110
101
89
106
74
90
92
107
115
129
125
116
168
100
124
105
144
120
110
144
148
122
113
118
135
116
105
123
132
129
81
157
127
139
108
104
54
80
96
101
103
135
114
125
108
121
157
124
113
121
140
109
98
59
97
127
98
130
77
134
86
93
151
86
104
149
163
49
115
117
91
139
136
90
96
104
113
157
102
117
106
114
148
118
95
106
156
89
131
129
117
129
109
112
104
84
103
111
67
123
128
113
148
90
89
161
109
138
88
84
97
91
119
158
144
98
164
150
142
76
130
124
133
139
89
113
101
112
96
101
68
108
103
108
49
108
131
177
59
67
74
131
131
77
103
108
85
85
97
184
133
136
125
165
95
114
110
59
99
127
87
180
143
129
74
144
98
108
126
108
138
87
95
97
135
122
97
108
105
117
87
59
146
89
97
111
76
108
110
107
122
164
80
113
102
74
131
102
98
81
135
100
65
127
105
144
120
131
148
100
93
116
158
95
102
165
73
133
132
81
82
61
107
176
115
113
95
149
108
115
154
76
106
90
144
105
135
101
173
49
109
54
166
81
148
106
130
113
131
107
153
131
157
177
128
102
102
95
54
131
134
143
107
181
129
121
165
128
147
95
106
103
138
99
136
81
102
128
90
141
102
89
118
144
93
132
143
118
109
101
100
118
68
102
81
95
138
129
105
99
83
106
84
178
138
89
98
88
54
84
108
59
158
177
116
145
90
54
96
151
157
90
137
130
108
108
137
133
81
132
93
54
133
109
135
113
61
108
116
99
110
135
149
59
107
148
81
119
125
147
75
133
128
103
94
144
156
129
105
108
119
147
59
59
103
86
133
205
167
118
132
121
139
130
153
102
86
110
131
95
54
145
116
139
155
127
158
122
126
95
90
49
112
116
97
135
89
89
139
121
80
132
127
86
124
111
114
118
124
133
61
91
98
143
164
188
140
122
54
139
183
88
150
133
123
105
120
168
116
62
132
94
120
86
100
102
104
105
124
61
119
113
98
143
178
99
59
125
96
105
104
125
117
98
143
54
103
87
118
136
128
81
90
124
88
132
156
92
85
118
106
61
91
86
81
136
101
133
126
141
91
130
103
127
87
54
95
95
121
136
104
115
68
148
144
129
81
128
115
70
76
140
92
98
102
95
116
96
124
136
140
98
117
124
108
125
134
107
108
149
118
82
87
54
95
93
134
157
127
119
107
101
102
54
102
54
103
96
148
156
126
108
154
180
169
102
152
94
85
109
91
92
127
101
115
162
180
120
106
169
106
97
49
102
101
113
135
120
133
100
133
102
106
103
143
158
74
124
109
146
105
95
54
180
93
141
103
78
135
109
123
96
80
123
138
148
143
102
133
135
88
133
120
143
98
102
98
164
140
81
95
102
132
98
108
74
116
118
116
135
110
123
98
176
78
151
123
126
124
122
108
101
42
98
80
59
140
67
141
103
96
140
79
132
123
159
54
74
101
91
134
85
118
103
136
103
150
93
54
146
169
139
113
152
76
120
113
123
156
77
110
104
123
149
74
104
105
95
54
112
74
103
124
103
135
74
81
81
118
139
125
96
116
59
74
105
148
81
139
113
99
123
88
87
105
135
107
137
104
103
131
87
115
193
131
214
91
145
90
112
158
112
110
95
153
67
147
87
95
49
131
95
77
96
82
102
127
93
62
123
107
61
103
116
120
69
109
121
126
81
105
131
114
54
54
100
90
124
145
128
97
120
117
112
54
130
131
141
131
115
94
141
143
125
101
82
112
132
124
134
117
175
107
151
96
162
128
93
138
108
95
128
81
87
172
97
124
145
126
95
92
91
171
139
86
95
127
87
132
148
158
82
112
82
148
151
89
110
124
49
119
123
77
54
74
180
105
143
140
143
125
82
128
116
95
118
165
100
126
90
102
77
119
124
118
138
125
54
122
102
123
93
117
118
116
92
97
108
114
94
116
70
100
160
113
127
94
102
97
129
165
102
122
105
91
125
129
74
85
151
152
87
123
166
115
76
67
126
98
106
108
95
103
99
119
49
98
49
117
148
83
139
133
101
105
143
95
140
42
115
119
143
128
114
103
54
129
144
89
108
147
54
61
120
139
108
125
135
132
74
77
112
49
120
107
162
49
105
125
116
143
113
54
139
103
109
123
177
119
143
98
127
104
140
74
127
59
170
121
173
125
98
143
180
95
122
210
128
149
78
59
126
77
142
129
62
102
110
98
113
103
81
93
135
143
109
102
133
114
234
88
79
133
78
141
106
116
103
105
78
128
89
156
65
102
94
113
87
106
114
54
169
113
81
61
74
106
95
133
128
115
108
61
77
49
102
114
54
122
200
128
117
109
113
74
143
77
117
133
102
167
124
54
130
54
132
95
158
118
107
102
100
66
92
83
93
131
76
97
98
114
54
49
108
102
129
59
77
176
100
102
119
54
95
97
98
81
106
98
87
102
81
54
165
110
140
134
143
105
82
110
93
97
103
131
194
81
127
141
102
123
99
143
54
154
90
91
115
67
114
98
117
112
112
54
85
92
98
82
68
61
112
144
78
165
125
85
117
54
119
84
111
59
130
102
96
147
150
130
120
74
107
129
149
127
124
109
111
122
135
112
54
116
98
113
167
184
126
165
137
54
98
120
112
135
95
133
129
148
109
86
107
81
82
123
172
125
139
99
173
95
140
123
100
76
123
115
159
67
135
77
144
108
82
135
174
93
124
81
163
118
103
125
95
208
92
116
132
92
95
150
107
91
140
77
161
148
108
145
95
110
120
118
140
149
177
134
122
190
124
94
89
105
103
107
116
79
98
98
72
49
151
97
108
140
115
85
160
159
59
95
131
115
182
133
149
141
98
146
113
102
91
165
103
102
106
132
181
134
138
112
103
96
133
125
100
143
96
91
110
99
99
160
109
93
95
76
49
166
96
124
97
49
110
54
127
128
119
128
146
105
108
87
123
163
107
109
136
134
123
108
83
158
78
118
98
74
134
126
82
102
118
107
112
128
90
96
125
122
127
123
124
194
103
125
108
154
161
90
134
113
128
102
101
131
80
157
123
158
106
108
138
158
111
124
54
78
168
158
123
135
142
120
140
113
76
90
102
109
96
65
54
81
68
54
112
54
115
59
80
93
104
125
83
114
49
108
105
145
153
74
102
136
95
54
110
125
103
160
127
115
114
74
113
90
165
109
105
54
123
59
129
149
101
108
156
141
106
200
99
85
135
133
125
102
107
97
148
143
155
114
173
92
106
138
85
116
116
141
83
112
80
54
135
106
69
69
158
127
143
82
122
67
110
113
54
73
93
137
125
76
103
54
90
79
144
139
115
116
83
147
77
128
67
98
108
96
110
102
114
139
115
123
113
170
135
102
81
81
103
81
119
121
76
87
105
135
98
98
109
138
92
177
95
125
129
178
123
77
105
164
117
98
111
81
105
147
133
124
128
102
108
99
128
110
133
116
103
118
87
144
137
136
89
102
106
166
119
78
131
165
103
101
119
96
59
111
65
102
148
116
158
136
117
101
49
154
67
166
114
149
91
93
54
113
133
138
120
91
98
111
150
99
181
93
90
148
152
73
96
145
118
99
89
77
96
113
162
147
148
136
130
79
102
156
90
49
133
101
75
78
158
131
132
133
59
141
129
97
118
146
81
97
103
73
126
144
149
84
139
74
140
118
105
140
150
133
141
80
133
102
103
147
138
155
107
144
154
115
83
59
54
107
165
148
190
148
137
152
87
99
105
45
153
123
115
170
88
81
144
120
165
87
100
140
93
180
76
128
120
177
141
81
162
116
127
74
96
54
115
108
74
148
116
143
94
128
54
122
113
112
139
143
126
83
82
102
49
95
103
110
83
144
127
143
130
133
122
108
171
131
103
148
112
125
98
133
117
69
183
105
54
133
95
103
128
95
108
117
144
124
119
144
118
157
120
133
138
96
103
96
147
75
92
69
151
140
119
83
141
87
113
193
67
54
78
133
102
156
160
59
127
88
86
163
144
129
76
122
97
87
129
148
61
123
111
97
69
72
120
144
54
146
108
131
113
74
77
54
59
78
96
102
125
92
143
122
107
106
78
104
54
115
145
109
122
149
139
153
78
82
82
131
114
87
103
119
147
143
70
81
108
78
100
104
147
127
102
95
154
142
136
125
135
80
98
128
127
146
102
81
113
105
147
54
152
104
132
139
93
106
112
119
119
87
133
115
139
114
77
79
113
114
122
120
118
88
102
150
144
92
110
90
135
134
138
171
131
127
81
95
127
99
123
80
125
123
95
102
122
160
112
106
67
103
95
184
131
54
128
129
68
97
128
133
131
108
81
95
82
138
101
81
148
103
86
127
138
74
123
111
100
158
73
54
185
168
128
165
148
100
106
148
130
125
74
79
86
87
150
70
133
89
105
133
81
95
99
54
128
97
95
140
67
114
106
109
76
159
79
98
49
182
77
116
134
98
172
99
124
67
96
106
128
103
123
143
107
102
111
111
128
143
95
95
83
90
77
118
148
115
95
137
81
161
131
122
125
122
164
124
129
126
133
82
95
152
158
142
146
101
109
98
81
85
100
108
90
126
136
103
54
85
143
128
138
93
122
146
117
124
76
95
93
160
124
132
82
90
161
99
91
129
145
140
98
115
145
67
138
146
78
123
104
128
96
122
200
81
108
61
126
125
96
112
100
169
81
141
109
99
72
69
116
150
78
54
151
54
101
74
77
105
146
148
65
97
154
102
143
128
72
131
142
100
150
88
106
151
107
114
177
99
102
97
49
108
108
120
153
77
115
82
121
102
116
118
102
149
134
117
177
96
119
146
74
150
158
108
129
105
123
115
123
127
120
114
172
152
122
95
120
95
131
138
108
119
120
82
147
101
132
87
159
145
110
150
113
131
122
123
49
173
143
89
120
139
132
98
95
83
165
136
87
77
121
115
125
102
149
134
195
81
143
149
137
100
107
49
119
100
89
107
156
155
128
104
106
139
106
126
98
54
96
161
106
93
82
103
108
108
142
96
82
169
102
102
83
81
108
115
139
163
155
70
101
130
132
54
138
140
112
127
91
140
70
119
152
77
120
135
142
95
128
102
137
125
122
117
49
134
123
126
116
124
68
117
142
92
128
109
106
128
117
87
99
145
112
61
132
144
131
103
96
216
67
91
102
133
49
125
90
109
76
100
123
92
118
107
49
67
49
159
74
95
98
131
153
132
140
148
67
76
91
102
97
138
143
114
140
120
127
98
133
88
59
101
102
136
95
97
155
112
54
54
118
112
82
138
89
155
162
82
93
54
134
99
117
114
106
121
83
117
95
54
139
97
98
113
136
121
103
93
103
120
138
65
77
109
113
90
129
95
74
131
178
156
110
150
98
95
133
93
79
133
127
140
123
127
94
87
107
129
116
168
91
135
192
99
112
107
151
135
76
83
94
144
133
128
116
49
105
99
142
132
119
49
111
100
148
128
77
102
100
103
172
120
105
54
133
74
69
76
133
113
118
156
149
126
59
120
77
54
78
123
118
126
109
216
123
118
171
99
136
108
97
167
120
113
102
107
107
92
96
127
87
132
94
196
95
54
139
159
120
91
126
81
95
114
108
134
135
121
115
103
102
124
109
103
130
113
145
107
122
145
103
153
142
130
102
107
150
103
108
54
138
185
108
130
93
120
108
102
148
108
141
105
143
135
104
143
129
131
123
156
148
125
103
107
110
144
66
73
145
141
103
131
161
98
123
135
92
125
113
81
114
100
73
138
127
179
107
137
113
76
146
135
128
73
82
193
125
125
149
69
94
143
148
111
49
143
81
83
131
117
107
148
102
102
82
110
128
140
170
112
150
129
90
105
127
124
135
102
155
94
84
95
59
107
103
128
98
102
114
123
129
74
188
119
137
148
159
148
95
91
177
120
133
133
103
108
194
103
129
113
81
186
153
156
149
110
95
115
83
97
149
103
104
116
132
117
144
114
107
113
99
93
54
91
132
182
87
134
122
74
78
49
117
135
109
78
100
116
78
133
81
81
135
90
54
98
129
88
132
108
97
88
159
123
125
163
125
118
54
74
141
97
143
107
126
98
121
107
96
98
139
98
76
125
54
144
102
117
123
119
133
124
122
101
140
105
109
108
120
96
93
128
108
85
139
135
127
108
113
54
94
149
100
123
67
54
128
110
140
110
54
115
110
121
112
97
87
145
137
151
76
82
190
163
100
113
110
129
89
155
160
113
96
91
118
107
193
103
135
144
124
173
103
54
118
112
73
88
95
117
108
100
128
108
78
135
104
72
127
107
126
106
102
102
106
67
87
150
100
102
107
116
135
126
105
87
100
84
76
105
149
82
129
130
95
76
128
120
129
144
127
113
101
59
87
76
128
90
122
141
131
102
116
112
145
157
186
106
110
97
105
165
92
124
83
123
143
125
146
135
126
149
120
132
134
115
114
110
116
98
102
146
93
125
103
116
105
131
94
102
129
54
86
133
116
105
145
121
77
135
143
97
126
95
86
106
108
104
111
136
108
139
77
127
97
78
170
143
128
116
97
85
49
133
108
148
59
142
120
103
148
82
161
119
142
150
144
94
123
109
185
108
150
151
95
135
76
101
113
171
54
142
111
93
81
98
97
112
103
122
108
83
108
169
126
107
78
133
193
146
179
102
112
127
59
133
90
103
123
122
102
91
102
136
118
135
108
103
168
87
126
106
181
155
113
100
93
87
106
80
127
95
74
54
162
191
108
125
54
109
129
127
102
104
81
68
102
145
144
94
128
159
146
146
74
90
134
96
90
103
159
91
102
54
74
127
54
165
148
140
138
92
96
100
132
130
105
106
134
128
111
123
108
139
113
74
125
135
139
54
85
92
157
77
81
113
96
116
113
82
129
54
152
120
157
54
102
105
111
129
93
108
144
116
108
126
107
86
87
154
102
107
82
118
119
135
146
102
92
115
177
82
102
135
166
107
100
177
93
89
91
93
157
141
100
154
59
118
117
73
97
54
158
124
87
116
139
107
107
97
164
54
102
180
82
137
112
103
148
113
109
54
54
162
158
111
141
112
153
170
124
91
153
102
90
136
107
137
108
152
177
54
137
113
165
152
94
116
135
145
126
155
100
113
111
94
127
97
54
112
93
105
112
96
161
128
121
80
107
83
148
163
148
135
158
90
143
91
107
98
95
109
115
145
158
145
70
90
115
98
99
191
119
156
118
49
183
54
126
131
94
157
137
136
152
186
124
97
112
152
119
54
98
110
108
161
156
125
102
107
73
121
125
128
69
122
157
131
192
98
127
102
133
104
81
59
82
67
122
102
83
127
96
172
87
166
114
131
95
87
134
194
133
98
95
95
94
148
180
125
98
136
95
148
105
164
124
135
114
113
119
109
127
85
93
96
54
117
139
113
125
133
95
123
114
102
145
95
95
133
93
145
74
191
110
111
108
126
81
146
74
124
109
138
49
90
165
100
106
173
74
97
139
133
164
54
54
113
139
147
108
73
141
114
116
118
188
123
133
179
81
54
92
155
54
108
150
105
144
111
69
54
108
142
129
96
95
59
83
147
131
108
125
108
110
84
142
103
125
106
141
134
49
137
160
153
84
81
137
83
170
146
128
149
145
154
116
124
106
88
95
123
191
93
131
94
113
85
96
129
115
114
119
95
54
67
131
85
162
83
148
94
91
101
216
108
108
114
161
118
137
125
76
144
74
123
74
130
93
193
135
102
81
145
90
148
134
77
135
103
163
148
99
131
54
54
96
49
95
125
111
132
106
147
104
112
102
124
129
59
128
122
150
54
108
123
123
134
95
125
133
90
149
103
102
133
83
122
54
157
135
70
141
118
191
49
148
95
112
125
128
131
90
107
100
92
110
153
90
98
162
136
108
131
80
158
108
124
98
102
123
127
173
101
157
190
95
123
119
68
101
80
113
122
81
158
153
59
117
54
128
42
87
144
131
91
123
129
128
121
127
94
59
82
74
113
124
160
98
103
87
162
133
49
150
108
108
134
93
112
100
104
148
113
102
105
113
115
103
150
49
115
95
163
114
95
108
124
133
129
121
132
133
146
120
59
106
129
91
91
82
133
81
125
101
99
78
159
108
83
165
54
76
123
133
115
82
151
131
122
127
82
101
59
108
92
79
87
142
107
190
131
96
148
161
118
104
104
161
96
148
68
74
107
119
103
123
179
128
132
128
87
144
143
145
108
111
129
100
134
54
143
133
93
156
99
98
49
49
98
135
59
110
144
77
111
59
102
80
61
95
95
102
132
108
147
102
139
123
94
147
96
116
138
100
76
107
141
107
149
108
89
119
142
114
157
122
128
123
105
125
150
143
106
77
133
134
98
103
103
166
144
102
132
88
140
105
140
105
125
128
90
109
145
95
90
125
94
119
165
148
81
120
134
108
131
103
108
74
128
127
62
108
153
141
95
149
96
98
93
94
134
77
49
54
105
108
116
106
131
93
153
115
91
145
177
102
93
127
123
102
108
139
110
117
138
135
137
54
45
103
61
144
115
123
93
90
145
155
158
124
111
94
108
85
105
98
103
130
166
124
88
95
121
118
76
130
115
159
104
150
180
61
143
91
165
86
194
87
140
122
103
217
69
88
90
67
125
148
123
115
105
148
102
125
127
95
107
107
118
143
104
84
148
134
102
105
132
132
129
151
74
107
107
74
116
127
125
120
101
100
86
86
113
166
105
133
119
108
82
105
68
59
61
86
142
81
105
152
68
45
101
104
187
96
98
129
54
124
125
49
150
147
78
169
165
95
95
155
106
148
94
163
111
129
108
144
123
95
108
106
122
71
165
130
127
49
125
95
125
95
102
102
125
106
111
108
115
95
145
141
128
159
122
110
82
94
173
77
107
116
133
96
106
143
103
107
167
109
121
93
109
123
122
205
104
107
127
165
79
95
101
59
150
138
169
149
95
94
159
101
68
110
149
102
69
77
102
126
149
162
128
67
135
108
54
128
94
54
107
49
121
54
105
147
116
123
102
92
117
125
140
146
54
121
122
133
102
121
133
143
98
105
111
129
141
67
177
149
118
123
115
97
121
130
157
132
100
125
77
98
113
123
218
82
112
120
161
102
108
151
67
119
112
85
156
145
156
94
95
91
125
113
82
142
125
139
101
151
133
65
186
148
131
150
79
93
107
118
78
180
127
124
102
77
54
99
54
108
102
108
110
156
82
67
103
145
111
113
113
147
73
74
72
77
132
115
98
94
172
125
110
109
150
115
112
108
82
160
107
125
90
125
98
155
135
108
59
119
146
49
107
103
169
108
102
104
95
113
105
80
115
163
115
91
118
98
141
116
122
114
114
95
74
154
145
76
110
87
81
117
100
148
133
102
146
131
152
124
143
90
86
129
74
54
103
130
182
158
98
59
135
102
131
81
83
172
146
121
80
66
87
100
77
105
49
97
78
145
97
166
82
99
103
86
102
143
118
135
132
99
139
94
106
61
131
135
90
74
97
172
124
150
128
76
123
93
87
81
68
127
117
150
98
123
155
114
96
87
113
49
77
130
81
95
74
134
115
100
131
103
118
177
128
136
61
93
108
146
103
90
96
113
120
104
154
128
125
100
140
119
78
109
133
105
108
85
177
126
121
93
96
108
176
144
95
90
125
147
81
135
176
85
116
116
133
93
98
127
169
103
103
118
163
133
130
177
125
116
124
132
108
112
138
104
141
148
83
133
140
105
103
102
82
95
153
145
151
178
141
177
77
128
112
108
98
128
126
168
150
108
54
105
90
98
102
144
114
155
103
85
177
103
127
85
61
118
54
93
82
92
109
131
86
88
83
76
129
138
112
104
125
87
87
77
133
147
119
158
108
122
108
113
94
101
87
54
158
105
90
151
101
49
93
70
143
131
129
98
133
135
81
147
113
165
117
81
186
130
125
117
74
154
82
74
130
98
141
150
83
144
130
141
99
90
127
100
125
102
179
95
107
131
107
148
145
122
54
95
125
148
124
75
105
74
129
112
132
139
150
119
138
103
133
133
114
118
96
151
103
81
127
95
108
90
129
108
94
123
54
91
131
78
74
115
113
102
77
54
96
127
121
86
116
133
145
118
131
81
140
127
193
101
89
127
102
103
79
78
61
121
102
131
93
118
81
108
108
144
87
59
115
102
124
111
180
163
49
152
122
99
91
143
99
61
109
168
168
96
131
112
106
93
106
109
97
99
98
156
123
162
82
200
69
131
81
124
108
135
108
77
141
102
87
132
95
139
177
140
90
131
108
127
172
102
97
96
139
61
144
131
122
93
59
82
74
170
93
113
154
145
143
133
109
119
104
103
95
108
119
128
90
123
164
88
177
131
140
110
106
120
123
102
127
178
119
158
95
99
107
123
133
124
93
158
136
122
153
90
169
151
145
110
106
76
97
62
164
90
155
108
153
81
103
98
110
156
54
74
145
162
111
87
95
87
158
126
91
87
110
116
91
101
80
59
165
157
87
93
153
91
154
127
81
132
145
80
174
84
157
81
139
108
54
133
124
136
149
106
137
157
108
105
138
139
143
125
122
102
97
110
77
100
100
130
115
129
144
143
129
87
81
127
89
96
139
164
81
129
98
154
111
147
125
90
160
102
119
54
108
108
134
95
103
145
54
177
113
132
93
146
124
134
103
113
132
156
164
90
95
149
94
101
135
54
122
80
102
118
121
133
123
113
134
90
118
108
131
83
81
103
179
102
147
157
195
107
54
125
80
125
133
114
116
141
148
190
134
165
84
142
148
98
98
98
110
74
103
102
102
87
149
122
68
147
131
124
108
131
102
82
80
110
84
93
108
101
98
153
81
116
100
124
131
135
117
177
147
135
146
128
107
59
68
113
113
77
114
109
105
92
81
117
104
145
108
134
95
127
118
102
133
148
105
123
102
127
111
183
68
149
131
125
107
139
110
166
120
158
177
77
177
99
103
155
130
112
69
137
103
81
113
74
115
119
158
120
73
54
144
121
92
143
93
153
106
96
95
95
141
129
158
92
104
92
87
168
150
98
125
165
67
120
122
99
102
103
150
143
158
102
142
143
165
89
140
96
88
109
141
67
119
100
107
165
98
119
105
148
108
142
158
134
123
107
54
81
134
131
76
103
78
131
119
132
140
83
116
128
128
74
113
124
117
49
90
106
129
103
87
129
92
117
127
198
134
102
141
81
237
92
119
133
89
76
131
169
98
144
107
91
121
140
118
102
92
115
141
139
107
114
102
111
227
114
115
49
108
142
128
83
139
95
104
147
120
192
113
102
103
118
100
111
101
112
139
102
87
104
125
117
107
54
185
61
93
143
49
158
98
147
90
98
102
118
83
96
96
94
129
141
174
95
115
113
161
94
139
147
152
94
97
142
113
154
127
140
149
127
120
116
168
76
163
59
133
78
147
144
154
98
73
177
76
144
136
108
132
105
100
54
108
128
79
113
98
119
138
161
115
93
91
149
105
105
128
129
117
164
123
95
144
171
100
117
134
103
102
119
104
183
77
102
81
124
103
159
129
108
154
107
87
155
107
97
177
84
96
136
172
129
115
103
93
153
111
61
77
135
91
82
102
137
98
108
102
96
116
77
127
112
123
81
104
108
95
138
95
115
124
133
102
81
102
102
63
139
90
104
96
91
118
113
86
124
99
167
97
95
107
54
187
124
132
143
85
118
103
97
103
61
133
128
137
125
165
67
102
130
131
93
105
125
125
54
97
142
76
148
81
127
131
98
103
106
108
124
83
78
131
91
131
74
104
80
130
145
73
148
115
122
132
85
158
99
115
128
122
127
95
100
96
79
132
137
125
122
93
90
99
87
134
195
113
108
125
124
78
93
177
126
102
54
92
82
91
82
107
102
147
116
127
103
112
115
54
151
81
112
85
120
76
54
112
158
148
85
168
133
127
128
104
102
87
87
87
165
94
108
108
59
127
177
118
141
113
119
111
113
102
81
91
93
95
84
102
76
49
49
114
119
128
143
118
185
128
131
148
98
74
54
87
107
86
102
113
98
133
88
158
134
90
142
120
87
118
108
102
114
91
115
146
131
128
114
141
104
74
94
143
146
77
122
115
106
94
90
93
107
112
108
123
54
134
54
161
67
102
95
102
167
137
93
154
102
140
108
194
146
49
92
165
96
115
143
59
98
112
101
113
120
113
99
113
115
186
102
94
114
125
132
98
135
102
98
98
140
73
134
136
184
127
89
112
115
165
102
91
130
149
125
121
79
76
98
113
127
95
108
99
116
118
115
90
102
143
145
54
80
110
54
103
136
180
125
112
144
108
61
103
99
102
186
151
119
119
116
110
101
134
106
82
191
129
74
68
95
98
84
97
112
107
92
195
106
146
158
131
132
77
81
145
157
67
59
139
54
88
77
190
147
103
148
54
59
145
95
147
101
138
94
120
132
98
131
154
59
76
74
193
93
101
133
81
115
90
139
81
125
74
91
122
133
160
165
136
121
138
130
68
80
117
98
93
97
110
88
108
154
115
127
110
61
108
162
133
113
112
107
100
177
120
142
87
118
129
108
159
90
108
112
121
97
119
54
132
167
77
126
133
122
132
101
49
102
61
87
128
61
151
125
95
147
79
105
134
102
93
95
165
163
94
90
83
202
147
79
89
133
125
120
188
159
95
106
108
90
87
144
133
95
113
125
128
96
80
132
180
161
125
123
81
103
105
123
59
144
125
111
120
116
108
78
104
103
67
107
130
139
119
98
137
83
131
54
137
95
126
49
114
152
134
140
92
134
172
102
61
157
82
139
95
118
95
97
86
108
98
88
180
100
97
119
105
186
133
125
97
159
108
147
126
79
132
96
81
72
76
77
96
108
89
147
115
84
97
110
108
90
165
84
82
142
102
76
85
106
148
95
113
80
81
99
128
87
77
95
167
99
87
150
109
98
108
98
129
83
164
127
109
128
106
153
125
108
150
110
143
90
157
135
105
107
162
89
68
188
54
86
99
103
105
118
195
108
54
108
95
146
145
83
92
91
132
132
131
108
139
210
59
95
93
98
102
91
119
95
54
131
117
106
54
113
123
74
144
83
100
108
161
102
73
106
54
115
108
141
147
117
107
122
120
151
80
133
100
107
125
135
86
82
169
118
108
115
136
131
110
96
127
135
87
109
67
151
125
123
106
81
133
133
102
97
84
171
102
90
165
127
113
79
112
95
124
80
149
118
120
106
165
85
83
101
177
137
133
107
129
91
116
137
49
92
111
101
182
81
49
145
115
77
109
101
102
141
133
163
102
105
87
102
200
113
130
90
86
103
118
128
104
145
95
172
108
117
115
125
133
135
104
127
103
103
68
105
84
106
135
106
132
122
77
110
95
90
116
134
106
80
82
134
156
131
94
98
87
125
76
93
133
163
146
107
91
158
105
168
90
59
153
144
114
131
83
77
104
90
87
159
54
118
94
102
97
125
54
154
102
148
105
119
127
61
49
147
133
166
87
120
115
141
111
93
91
119
129
98
147
116
140
102
117
108
123
76
65
101
116
106
106
158
59
76
81
102
82
54
112
145
131
153
98
132
127
162
97
143
82
113
59
139
103
109
110
69
115
118
105
97
108
178
149
136
130
144
123
184
111
89
138
126
145
133
134
126
92
111
112
110
118
67
159
99
121
128
102
144
163
98
91
158
166
145
108
154
128
82
167
68
80
144
134
54
168
54
95
133
103
126
98
140
116
145
119
109
98
143
133
101
83
95
94
144
110
54
144
98
172
102
96
234
118
127
131
116
81
163
129
97
103
101
100
177
183
135
61
148
132
98
90
149
127
67
128
126
146
54
69
77
83
95
54
78
103
143
150
108
150
171
143
186
94
93
87
140
93
59
147
131
169
112
123
133
171
126
121
123
107
107
85
91
104
122
117
115
113
112
135
67
101
71
140
103
102
148
59
115
102
137
95
61
104
102
102
112
95
90
95
104
148
104
142
93
145
124
117
115
136
112
138
126
140
103
105
128
101
54
168
173
69
94
169
145
76
111
95
200
120
138
72
177
96
97
102
133
56
98
124
108
106
80
125
160
116
113
122
103
144
105
87
118
95
95
90
128
54
102
134
156
82
76
220
143
107
59
102
117
100
82
108
80
126
87
143
104
98
122
83
135
101
114
105
157
129
59
175
155
117
117
133
120
132
91
159
107
125
129
102
141
112
141
108
87
102
67
144
132
87
121
120
102
102
125
129
163
49
158
120
107
83
120
128
150
67
81
77
125
91
96
101
159
98
137
120
138
96
67
139
124
95
80
98
97
81
87
93
101
103
152
136
54
115
68
99
82
105
90
121
161
131
126
93
92
110
104
115
103
150
120
140
130
156
125
108
102
110
108
149
114
78
108
105
97
98
102
163
134
95
59
74
124
98
77
133
158
98
140
133
160
131
139
93
92
131
127
113
81
93
98
108
95
127
105
139
117
114
98
102
116
128
120
74
81
108
136
94
139
147
143
124
102
143
124
90
99
180
111
90
132
95
99
138
121
101
155
83
133
88
94
127
142
150
131
122
103
87
98
116
109
99
106
108
127
122
135
67
76
117
105
112
112
108
97
119
96
120
96
135
105
125
137
137
121
159
153
102
90
88
116
54
113
110
150
190
114
98
98
132
143
137
138
86
117
59
90
134
129
122
158
113
79
75
177
102
149
151
150
68
121
114
49
91
102
105
200
107
61
93
138
147
100
158
113
123
80
87
144
109
129
127
95
148
129
103
105
87
123
130
126
140
79
125
103
81
102
137
101
95
95
140
132
148
106
101
105
108
177
108
143
98
90
115
108
103
154
95
102
98
95
98
144
65
102
138
74
111
130
111
96
155
69
93
120
131
160
137
101
99
54
119
136
88
54
103
122
86
141
139
105
130
149
142
83
165
128
105
132
136
107
118
138
77
131
102
107
127
125
150
129
49
102
98
82
138
154
81
101
140
84
122
97
49
49
135
83
108
122
145
149
115
168
154
81
84
76
98
125
90
135
101
102
107
104
83
102
128
132
98
157
90
105
123
122
104
111
110
49
124
149
92
121
113
122
117
98
90
85
129
108
127
98
144
157
134
124
148
164
88
113
98
100
54
147
93
111
153
145
90
102
59
143
116
129
126
108
82
116
86
118
99
103
103
116
102
137
93
135
107
125
126
118
96
190
129
157
141
125
135
85
113
102
96
121
79
133
98
82
113
54
98
143
54
122
79
95
49
165
140
130
180
160
69
82
74
105
112
147
149
97
103
140
89
90
157
107
97
110
140
131
102
117
116
113
118
191
124
100
138
166
149
102
129
102
113
103
140
54
125
83
96
91
110
146
108
88
126
104
108
141
134
156
126
73
141
91
110
98
120
83
108
145
67
141
112
101
100
83
105
153
174
138
86
54
95
91
140
167
101
152
106
61
124
102
125
104
123
82
183
186
109
150
81
49
87
105
110
105
132
108
83
172
96
94
74
114
95
135
171
141
67
84
121
107
127
112
126
108
148
143
145
133
182
97
134
93
119
54
238
102
112
108
117
128
154
102
108
103
102
163
106
161
144
121
140
158
108
148
67
107
95
61
143
106
139
110
94
133
87
74
133
125
98
149
146
102
108
131
127
168
129
93
105
135
120
139
54
77
49
87
115
163
168
127
129
54
132
88
145
102
102
91
117
81
145
112
95
120
141
110
104
100
90
54
83
113
105
81
149
140
98
93
100
142
128
102
95
119
153
96
99
81
95
107
114
125
129
160
49
54
114
49
98
102
192
94
96
120
106
99
108
124
130
110
140
189
86
81
104
126
143
159
74
123
137
98
98
89
122
113
133
158
108
94
108
128
151
117
115
116
128
139
94
87
143
114
108
137
142
179
80
85
131
102
133
108
92
140
78
94
99
96
143
116
109
131
94
102
76
143
149
116
69
157
61
77
103
125
132
94
133
118
114
135
182
102
140
99
119
88
108
106
92
143
68
73
139
141
108
102
93
144
140
122
112
96
220
93
85
113
158
156
139
127
133
116
146
74
200
170
161
95
95
98
95
130
103
190
158
147
114
143
148
108
105
118
61
186
98
108
119
118
126
94
169
144
108
86
104
143
123
97
113
83
128
134
96
150
123
108
164
158
102
122
95
116
101
146
81
108
87
169
99
158
141
111
76
153
74
134
98
137
141
103
102
127
54
128
121
128
122
145
129
110
187
95
150
194
83
123
54
131
59
129
128
83
101
121
212
84
90
139
90
111
111
54
128
70
129
103
102
170
133
116
145
97
54
117
97
100
99
101
94
116
135
74
154
167
110
96
116
218
163
54
54
96
132
148
95
175
132
120
134
125
154
124
77
127
102
136
102
102
95
131
77
99
109
165
103
147
105
116
85
137
114
105
129
156
149
132
199
102
89
54
128
74
113
102
89
160
108
140
93
136
109
178
143
113
105
95
107
54
92
103
155
120
138
119
165
101
199
68
103
139
98
156
77
93
105
81
122
171
80
95
129
148
158
95
90
123
177
115
93
68
113
125
99
118
107
69
59
59
136
113
109
81
139
136
105
122
83
103
175
107
78
126
125
103
98
124
147
61
82
143
77
144
54
107
161
132
74
70
133
132
137
139
115
122
93
103
135
147
77
157
96
140
61
101
121
49
129
76
122
152
110
159
101
123
87
137
106
135
85
115
107
78
54
130
67
96
118
113
147
108
93
104
98
137
128
134
104
102
83
133
136
129
80
113
159
148
133
107
127
95
118
79
76
140
67
135
127
102
108
100
139
146
107
78
146
98
151
115
105
124
186
99
76
156
105
117
104
177
84
78
90
74
124
185
89
105
68
100
77
91
112
96
146
111
106
49
132
120
112
125
111
136
113
144
100
70
108
80
124
140
107
100
106
112
74
172
133
121
158
98
144
141
145
163
128
78
130
142
118
137
128
84
74
127
81
92
123
137
81
170
87
76
106
59
160
126
102
164
124
96
90
74
104
105
110
108
133
154
80
68
129
117
105
97
113
108
111
104
87
142
147
139
102
131
152
156
142
152
68
104
87
105
122
140
133
111
125
75
102
95
107
103
79
113
137
103
143
152
81
108
96
146
138
139
123
153
90
103
93
98
108
106
105
105
150
143
49
116
144
158
177
132
187
95
128
76
102
112
95
90
146
108
61
140
90
135
104
156
160
88
133
95
54
82
107
77
110
114
81
76
98
134
161
140
116
131
124
118
142
114
59
138
135
139
54
103
83
108
111
85
125
172
85
109
91
123
149
89
118
156
125
143
102
102
129
82
113
98
110
54
85
128
134
158
150
128
131
100
126
85
128
133
142
115
109
125
109
87
100
128
144
115
154
139
113
103
59
90
93
83
81
95
54
132
99
153
118
200
92
112
122
125
108
90
96
77
120
114
142
109
69
118
96
139
143
129
134
103
148
127
129
108
115
101
145
152
130
133
76
106
132
108
80
107
96
118
98
133
103
146
90
123
81
77
144
124
59
81
133
129
54
98
142
131
87
154
110
153
139
156
141
234
131
113
103
118
130
221
114
166
61
100
171
111
123
143
159
212
133
158
119
121
111
73
54
102
96
54
128
139
177
96
156
93
115
83
139
142
114
106
123
85
54
116
165
152
128
147
117
160
76
101
158
133
127
54
148
104
80
102
165
115
122
92
125
125
96
115
135
98
149
131
76
143
115
87
138
54
102
142
136
97
90
54
129
54
120
111
119
83
139
155
118
101
129
98
113
78
96
127
100
154
54
113
125
81
104
117
126
102
181
116
123
143
146
103
49
98
159
147
128
125
85
119
54
126
120
92
124
123
130
155
97
42
151
118
91
84
161
106
121
138
113
81
141
102
115
102
108
123
180
142
106
111
113
95
74
95
115
126
124
79
133
190
87
116
121
74
124
128
67
105
76
49
106
54
140
86
119
137
103
103
101
139
69
83
49
155
141
128
160
108
135
168
92
141
95
160
127
137
134
113
54
94
49
117
90
128
160
131
132
116
49
90
140
59
183
118
102
168
103
149
101
59
127
125
97
113
102
145
96
113
200
141
73
98
126
180
120
114
67
139
81
148
154
106
126
118
112
118
131
104
156
103
61
143
147
89
98
119
103
110
163
59
132
124
151
110
78
119
154
102
158
120
119
101
83
189
102
96
129
144
59
102
82
54
106
67
124
136
166
155
142
117
110
167
107
177
131
112
115
103
65
116
133
102
116
142
106
98
143
103
89
95
106
90
93
109
133
97
119
134
138
94
127
105
108
153
91
126
159
54
49
68
54
77
100
96
95
87
147
54
81
95
126
132
113
186
61
130
95
106
124
161
118
106
155
158
145
140
114
84
95
178
104
148
81
158
113
160
149
93
139
94
115
102
127
76
135
106
69
106
140
146
131
87
74
107
140
158
152
87
77
74
65
123
143
149
102
142
77
94
132
54
111
82
89
135
150
116
131
98
164
125
132
141
113
147
144
113
97
153
102
116
177
139
115
61
117
54
144
103
132
83
102
104
100
83
93
70
54
125
83
69
142
122
123
151
128
105
170
125
151
119
118
154
95
122
148
91
148
93
88
100
165
115
68
105
151
93
95
111
80
89
157
88
149
76
158
112
105
54
133
167
117
105
141
152
112
220
118
92
102
140
95
97
122
127
103
99
68
76
78
128
90
137
142
174
176
99
176
61
122
143
119
54
153
112
135
144
136
126
150
90
108
96
108
88
115
240
124
77
89
143
127
102
122
96
100
76
67
92
110
140
98
93
74
106
176
129
81
165
45
106
121
112
125
139
146
81
68
94
81
102
123
131
168
141
168
110
89
88
90
133
102
107
131
117
92
88
49
59
91
83
107
102
82
134
110
107
124
98
108
110
95
115
102
137
93
93
116
68
105
54
76
104
95
95
105
49
74
132
102
114
94
216
159
74
105
119
137
149
108
95
106
177
115
147
74
127
126
100
104
135
83
111
95
167
87
125
149
99
155
108
123
91
169
100
107
104
109
81
151
71
82
110
77
103
76
135
105
177
102
90
102
134
112
165
125
82
164
133
95
143
185
106
93
105
95
49
108
61
128
147
128
149
141
130
121
68
148
107
88
95
98
54
102
49
106
146
137
155
115
158
98
120
89
57
131
128
95
115
131
136
103
133
125
127
179
87
69
146
93
94
161
119
105
108
106
82
101
119
81
141
112
109
102
128
87
90
135
110
128
148
69
150
177
114
69
154
128
94
87
127
131
140
144
106
159
111
97
68
110
146
61
102
140
101
95
128
74
103
112
119
81
90
153
106
139
115
115
125
89
115
76
87
142
134
110
109
67
155
96
144
105
94
98
83
99
101
54
136
134
101
133
158
113
102
143
139
114
98
127
158
149
148
194
67
63
102
133
63
106
102
200
143
152
92
148
132
148
177
102
61
116
125
124
83
135
100
124
139
143
137
118
137
96
108
126
89
140
147
67
125
157
127
118
74
120
143
91
129
140
100
106
95
98
84
74
145
180
108
153
128
99
117
124
185
149
112
77
128
100
128
199
131
147
102
172
95
105
59
78
107
65
115
71
90
81
111
138
128
161
124
76
96
127
190
123
118
106
77
125
154
149
133
135
104
103
92
159
129
95
124
93
133
106
106
138
101
178
91
108
119
165
143
142
128
103
162
133
129
125
83
105
76
139
108
147
107
113
146
54
54
93
125
108
151
152
129
118
76
135
95
112
118
79
91
154
128
71
108
96
90
128
74
125
123
120
93
81
102
103
103
82
147
134
117
110
150
122
105
95
133
139
116
135
101
86
110
76
85
95
114
125
131
128
117
101
84
108
83
161
108
112
85
108
124
85
183
149
133
120
145
177
149
87
132
90
150
144
94
97
90
131
86
146
152
103
68
105
108
108
105
114
81
156
199
108
140
170
142
105
138
158
92
102
148
149
105
153
54
127
95
107
110
101
110
154
80
74
91
154
152
98
115
98
76
137
95
130
135
125
54
71
118
108
141
86
118
134
94
90
121
135
185
163
118
87
80
145
116
105
123
102
105
54
95
165
129
134
74
74
115
91
104
98
108
93
115
153
95
141
86
133
122
128
102
97
130
181
101
174
132
87
118
98
148
133
171
68
159
98
69
120
104
117
125
183
54
132
77
102
49
119
154
148
138
135
68
107
107
83
127
158
119
107
120
129
134
49
101
106
119
49
54
90
102
78
123
150
98
113
95
102
141
101
177
54
154
49
85
115
81
93
98
74
112
108
141
123
92
102
95
59
103
169
109
49
147
118
80
159
122
95
89
114
124
93
97
121
102
83
138
124
113
167
81
153
140
145
106
97
59
95
125
158
134
101
105
90
85
49
110
102
107
103
95
169
133
54
132
98
73
107
90
116
160
81
120
74
118
80
78
91
118
75
148
54
102
76
95
170
117
54
54
59
80
101
98
131
140
113
78
107
123
130
107
125
69
54
106
59
87
59
113
101
105
133
81
127
142
129
103
149
110
59
108
144
129
143
112
68
132
98
135
78
150
119
198
125
122
101
108
117
90
125
61
98
73
97
87
137
115
116
143
85
107
129
101
145
87
118
116
88
91
124
78
125
83
104
158
81
111
90
177
90
97
98
112
76
61
154
76
134
80
95
98
111
130
133
102
143
194
119
161
54
81
96
122
167
120
130
115
54
142
89
163
81
98
113
126
125
102
146
81
94
49
89
156
142
105
95
111
98
100
95
140
108
136
104
94
100
85
140
122
151
103
127
95
90
59
129
96
144
148
128
93
84
118
126
118
145
127
121
109
80
94
59
128
103
102
105
74
54
104
132
97
108
74
125
106
131
102
83
110
95
68
144
135
138
110
135
110
139
135
143
133
95
97
76
112
99
129
94
113
95
125
115
97
137
114
78
98
95
82
102
93
105
178
132
116
112
132
54
77
116
102
68
162
115
125
61
125
59
79
110
133
173
106
106
102
102
148
146
113
81
49
103
74
131
109
117
168
121
168
157
100
77
102
113
158
102
146
112
74
128
190
123
105
88
207
101
118
134
54
90
96
133
112
104
95
98
81
95
49
143
104
126
102
68
91
143
143
84
150
138
105
85
68
116
96
49
101
95
81
98
115
132
105
111
149
78
139
131
105
79
98
102
74
113
125
130
131
146
88
133
154
103
59
168
141
161
112
157
146
93
81
112
129
105
145
149
160
96
105
151
116
74
113
124
148
168
122
123
81
81
200
98
135
116
69
120
68
137
129
126
100
139
128
120
147
120
129
113
142
131
116
100
129
89
102
95
100
115
98
150
103
93
108
54
93
102
139
74
131
110
102
96
147
93
158
147
113
111
146
157
112
76
111
127
98
76
95
110
105
179
159
160
54
97
103
128
183
143
78
102
135
143
97
127
106
101
227
132
85
120
147
129
99
82
116
108
93
114
105
67
102
135
86
177
183
95
108
101
125
92
193
74
139
90
105
87
135
172
135
113
77
106
74
109
129
82
77
94
107
164
80
102
154
102
149
85
82
127
81
117
108
103
71
78
128
129
107
83
87
105
49
98
135
116
81
113
54
101
145
158
135
121
107
137
87
103
119
98
178
93
154
91
114
98
54
59
111
87
105
118
102
116
87
168
156
137
98
154
125
117
99
107
116
102
133
72
105
105
149
113
54
112
153
112
87
89
76
129
150
94
113
104
95
180
146
118
82
132
151
74
155
122
147
98
132
144
83
147
164
136
160
142
81
145
103
181
156
89
82
97
80
127
122
72
103
106
102
106
124
111
146
131
82
133
95
108
108
103
54
127
128
122
98
91
49
121
148
161
122
87
127
177
128
128
133
127
111
71
128
116
112
95
106
164
106
54
96
155
125
54
110
106
54
157
128
127
146
142
98
109
105
108
93
154
103
101
147
123
74
45
116
98
121
126
124
137
120
102
123
89
125
94
126
158
74
121
185
107
160
76
130
116
108
76
77
134
113
77
119
108
163
129
95
147
158
113
139
95
146
90
119
100
108
145
81
130
100
114
155
142
101
108
119
123
122
84
59
102
153
144
143
99
119
108
160
76
143
102
202
111
74
113
108
128
95
177
107
54
116
122
166
108
49
92
144
106
105
90
148
83
89
97
169
88
102
123
54
149
88
130
102
117
161
137
108
114
158
137
138
194
81
119
81
140
95
73
122
125
98
140
105
112
105
108
78
73
103
208
108
131
54
123
98
77
103
54
94
138
145
128
115
54
125
103
111
102
153
132
108
108
98
141
95
114
155
150
127
98
142
98
144
107
102
116
144
165
95
170
127
98
176
98
132
95
138
131
106
54
113
154
98
111
120
94
135
102
140
149
102
121
76
98
140
69
106
114
108
102
59
148
145
104
102
98
169
138
87
110
131
87
151
119
108
124
95
103
130
143
49
99
167
136
218
98
135
151
104
127
54
98
162
191
148
120
74
119
143
124
137
124
148
144
54
113
175
112
163
108
104
117
95
54
78
109
128
144
138
101
134
133
121
159
107
67
122
125
118
126
116
103
67
91
96
95
122
79
151
90
131
139
105
168
131
116
127
161
131
124
113
133
148
112
149
217
76
160
168
96
97
80
81
166
93
119
95
134
102
116
157
54
92
138
54
101
177
179
88
77
137
54
109
102
85
123
95
110
161
95
103
180
113
97
126
89
95
94
125
87
105
102
127
97
148
122
54
113
120
113
128
148
91
54
81
149
120
148
125
107
104
95
134
170
160
95
158
114
104
134
149
114
147
124
173
95
133
97
134
129
129
158
105
81
116
54
96
95
49
129
123
127
144
125
102
81
96
108
146
149
103
152
96
146
167
133
128
140
122
106
135
120
101
49
146
155
106
87
111
98
108
183
95
79
101
125
102
90
133
91
160
94
94
103
108
103
99
174
125
138
149
107
141
113
54
83
98
96
99
127
141
148
74
111
69
98
99
90
97
167
140
137
160
140
104
135
95
111
90
170
103
160
148
127
108
142
93
104
98
141
149
111
120
128
76
116
118
77
133
138
133
111
190
92
67
54
96
118
95
98
74
117
67
95
93
76
147
93
128
127
123
145
105
146
148
147
125
118
129
90
116
148
158
122
102
96
106
127
84
81
119
117
101
97
131
179
156
153
54
124
145
91
102
126
108
119
104
143
88
96
92
90
177
104
139
97
120
101
150
97
126
143
129
96
148
146
125
131
126
69
128
81
89
118
151
132
123
120
54
82
95
77
102
81
134
106
134
123
80
107
98
136
89
102
132
90
82
122
95
134
98
67
124
125
87
87
144
81
45
100
85
112
112
158
144
97
108
218
128
137
114
165
115
78
86
148
108
148
81
106
183
87
54
83
105
110
69
148
120
49
108
109
116
93
115
175
141
133
100
107
54
132
115
95
54
157
212
146
114
83
145
123
143
141
96
131
123
152
114
116
75
118
135
133
86
89
105
125
104
94
100
139
103
135
127
200
119
113
102
168
49
101
113
61
98
87
108
59
177
120
129
96
99
158
98
141
113
93
90
93
148
110
91
81
100
144
145
115
98
131
130
95
123
93
69
148
114
105
108
150
103
146
133
116
127
87
109
151
102
131
106
91
98
118
103
81
102
142
107
162
103
119
61
102
108
138
135
81
108
90
118
103
106
108
143
124
125
148
107
113
145
61
80
103
102
76
103
93
128
128
67
103
74
106
182
103
153
116
54
124
76
108
103
54
132
121
169
103
91
184
135
102
119
102
115
109
101
111
147
74
59
109
110
110
140
118
177
147
93
147
103
122
124
49
77
116
125
78
164
166
102
98
125
90
125
148
100
76
110
105
156
94
114
125
91
118
105
146
98
133
117
104
144
126
156
116
104
194
95
108
83
143
67
105
162
94
76
81
110
79
102
155
131
159
130
114
132
93
105
132
88
130
87
115
133
91
144
118
103
119
87
120
114
98
108
145
105
127
144
107
159
87
148
131
127
54
125
113
92
117
83
145
141
172
112
165
90
107
108
155
83
168
129
107
82
138
143
108
112
80
149
177
99
95
117
80
134
105
97
140
112
97
80
110
122
94
107
118
133
126
87
148
149
82
128
87
145
105
90
95
125
130
136
54
148
160
140
95
143
103
98
107
49
99
98
67
129
125
98
115
152
83
112
106
105
49
99
115
88
136
133
118
95
116
98
118
141
109
54
104
159
103
150
144
125
91
89
101
81
117
80
108
110
68
77
148
82
141
116
142
57
146
91
175
166
148
132
107
76
163
128
121
77
125
67
149
100
97
73
117
145
145
104
95
143
102
78
98
78
115
54
130
180
110
139
95
117
104
138
126
147
83
54
49
54
143
74
157
140
54
127
74
130
105
61
102
124
114
119
134
113
102
104
148
104
179
113
69
141
110
92
200
137
103
93
112
189
98
123
147
83
139
95
108
85
137
118
54
87
87
119
143
120
117
137
54
120
113
133
95
170
120
127
73
129
106
77
76
155
118
158
67
131
105
81
112
150
85
124
180
77
59
120
155
116
139
146
87
124
131
149
108
95
140
122
115
148
127
139
111
125
103
147
155
144
173
54
68
122
108
133
156
111
82
122
138
155
88
133
115
102
91
158
163
186
132
101
105
105
96
89
102
93
146
49
116
103
96
120
180
128
78
140
108
119
125
105
128
139
135
103
129
110
117
95
113
113
120
129
119
88
105
108
124
101
131
121
93
139
111
113
113
122
95
117
120
123
111
120
85
82
123
97
103
54
96
202
126
90
108
98
120
198
110
120
134
108
113
153
81
102
108
87
133
89
138
103
103
125
96
190
145
114
97
145
98
113
82
179
95
119
113
92
133
68
95
85
143
157
76
92
94
140
102
146
103
115
163
62
86
73
98
106
123
159
147
157
148
73
61
115
106
146
143
144
148
102
118
102
87
111
113
113
81
121
156
156
140
194
94
123
92
102
145
105
104
141
80
49
158
145
113
112
84
82
146
98
151
103
120
115
142
102
92
154
129
49
102
54
92
101
59
129
96
204
83
144
134
90
116
125
95
162
110
54
127
113
119
141
100
105
144
95
93
105
49
140
160
97
161
111
122
112
148
138
54
117
138
163
127
79
93
148
138
162
134
132
128
96
105
107
127
106
101
108
72
131
81
118
148
77
126
170
103
120
78
81
110
125
157
172
101
94
103
112
86
54
151
108
133
112
141
144
130
79
54
179
91
145
116
108
49
130
78
54
114
95
132
161
118
118
79
102
124
120
140
128
152
54
103
150
54
164
158
133
121
167
112
139
100
160
98
127
133
115
113
87
87
98
115
118
144
108
76
96
87
126
129
97
122
129
103
81
133
81
120
68
98
133
127
137
143
118
90
103
127
146
98
74
113
59
101
75
102
167
133
157
123
143
144
123
87
103
118
153
98
89
98
98
144
154
116
114
67
148
114
97
144
83
128
107
102
95
112
122
128
155
145
153
118
126
160
148
107
161
49
108
77
104
158
133
113
105
107
126
146
108
176
104
148
104
103
103
106
118
103
128
78
116
67
104
151
100
81
139
82
108
92
93
101
105
117
111
93
135
151
97
138
159
92
104
124
184
140
125
110
121
135
163
130
95
126
151
80
107
131
106
125
127
80
102
113
153
112
97
108
109
149
147
129
108
127
98
98
105
117
107
102
135
127
79
89
118
135
96
108
180
134
98
82
54
97
124
107
120
144
102
108
81
102
104
163
125
129
132
113
89
105
107
91
54
110
179
82
83
85
148
77
130
148
49
100
108
108
173
110
118
91
112
123
101
96
67
126
108
135
108
158
107
105
125
101
137
172
102
137
186
98
165
148
59
98
101
138
103
121
96
97
114
135
134
116
114
99
125
160
110
108
141
106
100
81
181
81
76
133
125
84
144
142
104
133
127
112
61
98
108
54
68
91
131
54
107
97
54
112
118
61
119
108
141
120
104
125
95
108
177
103
139
117
127
128
103
98
102
139
137
108
143
140
137
54
100
124
130
156
118
111
148
67
129
108
82
121
102
162
126
135
102
106
141
98
122
106
177
143
103
118
148
67
68
145
135
141
123
100
106
74
54
120
146
125
123
174
129
139
154
153
106
54
91
105
102
100
183
81
112
138
182
114
131
65
123
68
129
98
130
49
96
149
78
168
105
124
137
144
149
118
90
141
96
103
59
78
157
120
108
119
103
114
118
168
122
110
160
101
95
77
144
81
146
125
93
91
101
108
131
92
119
49
83
157
98
87
129
135
155
81
74
101
138
101
133
194
86
148
95
89
102
111
133
162
54
96
80
145
143
131
105
144
90
143
136
81
114
94
143
76
87
144
104
115
172
158
95
106
144
140
105
79
102
141
122
111
143
122
150
127
106
116
107
164
54
85
96
127
87
98
182
134
81
100
125
131
133
93
95
96
122
101
108
145
119
122
95
113
150
87
108
161
135
87
146
141
108
106
105
110
125
98
102
83
181
152
89
98
145
96
85
167
133
54
98
194
127
131
128
101
148
73
95
125
113
164
140
135
150
125
108
115
158
125
152
78
108
119
126
121
95
124
78
134
125
127
127
175
128
54
94
127
95
93
83
87
112
73
182
59
95
94
89
115
95
107
119
143
146
61
135
81
133
135
54
103
96
82
132
114
100
82
74
102
133
54
117
77
110
89
125
97
125
127
74
101
112
143
102
78
114
97
112
103
126
54
109
115
116
111
98
96
177
145
80
156
131
84
127
118
109
147
98
74
145
61
121
145
123
94
89
133
141
84
108
104
138
72
135
94
84
93
125
84
109
83
153
103
108
93
54
136
102
140
122
89
103
102
117
134
102
172
128
111
78
126
138
127
89
149
54
73
95
95
95
116
83
126
76
102
121
109
90
89
195
108
127
76
68
178
120
102
93
110
74
108
83
128
129
97
78
148
136
108
124
148
119
106
116
153
152
69
102
85
100
49
126
182
131
97
116
128
148
110
49
149
161
125
120
86
158
119
120
77
100
110
62
99
91
122
141
103
148
83
144
197
117
81
49
108
178
78
98
212
103
80
76
158
108
201
74
102
168
151
123
117
156
90
122
93
102
100
109
95
54
119
102
111
139
81
81
129
157
128
128
138
108
116
91
107
131
126
102
160
101
95
159
80
179
124
119
95
120
90
90
156
185
68
65
150
98
68
102
68
140
156
131
201
122
113
107
134
78
107
108
74
45
49
87
115
143
104
69
108
54
90
134
95
131
122
150
103
153
108
108
144
143
133
127
116
109
89
101
108
97
145
141
177
106
148
152
114
112
123
145
177
120
110
104
97
81
114
105
168
88
124
137
77
87
142
107
49
105
83
111
141
138
153
116
80
138
124
95
132
162
177
130
91
95
137
102
145
124
114
106
144
97
90
147
151
100
49
98
132
122
104
195
200
81
125
142
180
133
163
143
177
108
124
96
54
172
134
83
102
149
135
106
74
148
123
115
101
170
113
81
91
150
119
128
116
117
106
79
116
74
139
123
54
117
138
69
144
81
113
108
122
95
134
145
98
110
101
82
103
160
110
98
98
85
102
107
128
102
103
120
98
116
106
160
141
73
118
97
68
125
61
115
103
124
151
148
113
77
81
111
118
135
45
67
148
195
98
124
148
110
89
94
98
83
126
76
96
104
119
151
122
113
152
122
140
119
108
107
59
54
74
94
141
178
106
161
87
137
140
80
108
121
126
178
117
103
201
156
99
54
140
81
93
115
110
94
110
132
106
102
105
122
127
97
159
138
98
138
98
102
108
124
79
61
116
108
68
93
82
94
93
84
123
149
164
114
98
102
102
132
166
87
77
121
102
127
130
122
101
122
74
95
151
95
59
130
89
108
103
92
54
103
165
49
122
110
124
49
81
130
163
147
134
49
120
99
54
111
140
100
102
108
87
108
96
119
45
99
142
130
77
157
77
142
141
165
122
105
118
167
133
116
87
112
104
98
123
144
87
112
146
131
119
125
167
136
103
109
138
125
126
106
54
141
107
108
107
113
115
152
102
93
150
138
146
135
85
133
107
141
112
125
120
80
120
173
115
157
125
73
141
148
147
149
76
117
122
135
131
98
116
81
114
129
156
69
151
107
117
126
154
81
102
126
128
144
105
139
115
116
105
134
49
162
98
135
169
165
133
119
132
110
81
118
121
78
54
139
81
81
152
235
98
84
154
114
98
130
117
148
97
108
101
96
97
133
97
108
122
124
134
116
117
83
124
138
90
98
128
106
81
143
103
133
125
83
91
139
139
110
144
93
67
98
153
179
102
59
104
102
140
97
140
114
85
130
177
113
105
106
111
54
96
105
100
87
80
106
128
144
149
151
129
115
68
102
139
102
98
95
123
54
105
105
100
82
133
83
144
120
94
104
143
156
112
67
98
54
115
54
129
102
87
134
112
95
83
133
54
118
81
81
117
145
143
127
107
130
94
79
168
131
89
84
109
137
119
133
87
153
105
136
102
108
97
82
49
130
95
157
96
148
97
135
174
125
113
67
65
139
154
108
102
108
142
153
59
153
107
54
165
92
131
137
126
108
88
138
171
141
74
126
156
136
126
168
136
96
95
82
114
95
85
109
124
86
85
144
54
110
108
108
155
148
95
89
95
201
102
115
105
124
86
129
98
94
119
111
109
145
140
95
104
140
88
95
100
74
88
125
93
119
49
117
95
194
83
179
67
95
125
154
148
97
120
77
87
119
129
90
154
123
120
139
136
137
128
161
84
98
149
147
132
132
144
90
89
126
92
179
98
54
104
103
108
110
134
102
134
103
79
68
113
131
128
148
101
112
142
78
192
125
128
124
125
85
104
168
128
149
212
116
160
113
59
104
98
146
143
120
130
78
65
111
101
131
108
87
140
107
116
65
160
117
97
148
54
78
105
129
101
145
95
112
107
118
116
69
125
101
95
49
112
81
98
69
133
99
118
98
98
54
85
113
82
120
131
94
107
124
113
141
80
108
107
115
124
148
77
140
168
129
78
54
104
80
152
163
134
82
108
78
110
100
108
69
54
159
159
130
164
102
107
89
106
159
67
77
122
133
140
76
113
96
135
103
118
108
49
100
123
84
136
59
94
137
81
91
54
54
54
142
77
91
85
82
89
110
108
106
127
107
108
90
169
113
108
119
143
104
142
140
132
115
74
120
135
76
158
177
95
94
116
91
98
131
74
76
117
157
95
148
145
130
108
149
102
175
54
76
99
84
164
99
83
186
112
143
166
99
96
49
102
95
82
136
152
146
95
108
134
200
127
134
86
54
144
86
127
117
115
118
108
103
106
125
152
107
148
141
108
116
170
151
92
120
161
190
113
96
97
81
117
86
162
126
108
113
119
118
95
128
76
102
80
162
114
75
95
148
98
59
152
89
95
121
126
131
74
83
105
145
144
108
108
120
95
129
110
168
157
106
87
124
177
54
108
146
131
146
143
135
97
129
82
59
105
124
135
59
108
106
78
97
148
105
195
110
124
158
122
125
115
120
101
133
49
115
103
54
113
91
105
145
152
130
113
106
125
61
149
98
102
102
101
101
83
120
102
59
107
108
165
49
94
102
146
134
90
114
183
102
65
74
54
130
87
95
67
133
130
137
106
111
107
105
120
130
77
101
108
108
160
59
54
81
105
90
96
120
148
127
98
148
61
62
140
80
108
82
67
81
95
113
142
125
103
106
140
80
128
108
105
79
99
114
74
140
128
133
163
135
105
122
115
108
123
127
54
112
96
119
95
139
95
92
159
129
162
89
132
168
96
148
108
82
126
157
131
111
126
133
168
127
153
177
116
115
106
125
160
91
119
95
96
90
107
145
103
117
120
131
102
118
127
108
110
78
149
103
131
148
138
118
111
95
54
91
148
111
149
120
164
129
79
118
125
99
127
118
116
135
92
122
127
154
112
127
117
118
81
153
119
148
102
87
90
144
112
153
102
137
85
98
185
143
110
123
114
133
118
124
115
77
127
98
96
145
110
90
78
206
95
97
146
102
104
69
110
54
96
105
105
102
89
109
183
138
139
109
91
54
81
139
151
140
87
115
83
116
96
138
80
120
98
49
125
120
133
77
99
93
122
163
140
74
117
145
108
102
74
134
114
73
122
113
81
120
169
147
103
123
125
135
118
115
171
182
67
155
78
73
97
113
164
102
93
106
108
127
135
182
54
87
96
119
100
102
156
107
147
116
59
106
93
85
106
105
99
94
49
109
103
140
125
92
93
96
96
89
105
115
200
54
128
143
116
184
97
98
127
125
98
172
125
95
82
93
194
137
54
105
81
128
138
126
97
109
87
123
87
115
145
140
82
77
106
177
97
175
133
84
69
95
117
155
120
103
86
108
107
139
120
119
177
146
120
102
156
77
78
122
54
81
131
54
82
113
96
133
90
105
122
91
132
119
132
126
112
67
84
89
83
133
107
107
102
73
109
54
172
116
148
107
68
85
95
129
125
115
128
143
126
120
49
160
133
165
144
83
108
129
79
141
91
113
153
87
108
193
131
135
113
94
124
132
124
119
109
102
167
107
70
98
131
106
59
95
139
103
152
96
90
95
97
164
114
104
111
127
139
170
129
103
109
119
178
110
108
78
106
101
59
74
158
91
130
108
111
133
78
127
157
105
126
115
100
113
70
74
73
129
67
102
105
96
155
95
97
105
103
119
74
87
158
151
79
145
135
103
148
134
106
119
122
95
144
124
102
102
102
96
137
125
105
98
49
129
147
92
82
128
99
54
95
162
78
83
122
132
76
143
104
139
97
94
97
80
107
96
122
90
128
97
111
95
54
125
95
133
140
122
86
118
54
106
140
110
151
84
113
134
115
160
87
134
127
140
67
114
143
210
152
61
167
49
101
110
93
68
155
54
102
98
124
114
108
142
178
113
112
100
158
105
96
83
113
87
143
101
79
156
119
49
152
107
96
108
89
114
74
159
145
110
92
95
102
104
126
103
127
161
105
54
115
98
139
83
81
59
100
107
93
98
137
108
131
96
86
109
179
85
160
131
102
59
85
115
61
108
102
106
105
103
149
130
87
54
144
96
70
116
103
54
95
133
131
129
140
108
153
135
116
105
113
114
135
119
59
166
144
54
59
131
132
190
117
128
132
95
108
118
140
112
76
108
99
109
83
85
54
94
165
109
98
133
129
59
158
122
68
77
121
148
110
108
90
98
119
149
145
123
108
131
135
113
111
81
106
141
54
111
166
125
131
98
67
86
186
128
85
105
133
109
190
143
99
96
112
122
126
108
163
144
82
67
108
146
104
123
138
118
143
65
116
139
103
129
118
175
102
108
90
107
112
93
119
139
130
92
148
173
92
54
54
131
112
102
69
133
102
98
148
112
121
90
116
105
80
95
116
109
103
146
143
97
54
103
139
149
107
119
76
94
97
105
82
150
127
166
144
116
138
102
144
94
157
148
95
49
125
100
104
148
129
140
77
54
107
166
217
89
103
102
117
98
144
95
76
107
149
94
77
110
136
95
103
106
98
103
99
108
95
144
147
100
102
132
93
133
77
107
67
112
107
144
107
108
99
139
121
90
59
102
148
95
102
112
110
125
95
109
87
146
102
179
95
148
85
103
137
109
104
129
67
148
137
118
120
99
153
139
127
105
74
143
99
133
107
139
143
69
84
100
139
54
97
83
122
148
102
116
151
144
133
175
139
139
167
83
118
141
122
176
49
99
106
74
128
95
95
133
126
105
101
144
54
93
144
148
199
133
137
152
78
102
103
87
74
118
112
98
160
102
112
133
122
116
120
98
109
126
49
141
144
136
153
108
120
97
137
140
140
98
92
93
105
113
91
128
109
103
101
119
95
135
143
92
141
93
93
111
113
104
102
108
118
87
130
144
95
102
74
74
92
111
54
59
96
125
144
130
67
49
131
115
102
81
103
96
117
112
108
137
49
97
91
154
95
158
144
113
102
108
136
104
113
101
125
149
81
137
98
158
174
91
117
106
127
118
133
54
89
140
142
133
97
97
111
87
125
116
95
107
148
110
120
96
134
81
141
102
118
143
107
118
98
177
49
108
138
118
115
141
126
137
105
54
149
148
131
77
107
108
132
103
88
116
59
116
106
177
103
91
125
110
108
147
125
54
91
96
111
128
143
141
140
135
102
128
139
109
81
117
92
99
161
102
116
106
103
74
114
119
112
67
108
95
108
102
94
116
126
108
131
162
110
95
189
145
122
122
105
96
142
141
106
133
122
105
95
131
197
151
100
136
184
146
118
110
172
129
155
107
119
81
68
54
144
171
126
78
118
123
140
98
140
98
138
133
158
105
106
103
102
147
78
77
161
69
186
74
134
74
54
165
146
92
77
107
139
149
134
121
148
116
127
74
102
154
133
74
59
113
126
106
82
67
102
151
124
137
135
80
132
156
54
120
128
115
122
54
96
130
118
49
77
152
122
74
54
125
149
114
160
125
207
139
162
131
108
152
79
156
127
109
98
78
49
74
140
111
113
115
181
153
89
82
158
123
142
148
129
130
102
124
154
180
98
81
106
122
143
49
87
127
59
130
123
131
129
98
115
149
106
108
103
102
150
139
49
139
150
97
112
126
120
123
132
118
154
143
87
59
123
105
113
95
120
94
57
54
103
68
97
108
153
108
100
81
94
133
102
120
54
129
135
140
130
93
146
144
110
144
122
79
139
102
134
87
81
124
78
99
153
90
145
112
99
116
80
120
126
94
96
125
133
117
143
138
105
92
102
93
167
140
100
74
93
104
104
134
61
108
92
127
116
97
105
157
85
135
108
114
108
106
136
140
140
76
139
126
82
100
129
143
88
150
86
116
115
93
131
135
107
120
107
115
122
106
87
105
77
85
125
89
113
90
102
142
110
54
151
102
125
149
143
136
119
104
133
108
108
147
110
131
122
101
108
108
85
102
116
141
95
98
127
78
116
124
135
117
115
108
144
102
73
106
143
108
119
121
115
111
134
139
112
105
157
116
96
148
110
102
107
147
77
104
81
139
71
77
127
91
97
123
105
116
98
102
49
93
76
119
145
107
112
146
108
110
101
98
103
109
123
128
141
154
98
102
49
109
124
103
122
112
98
103
68
102
69
98
79
177
134
177
109
194
113
129
74
59
67
79
159
171
125
112
128
54
153
123
142
69
169
81
128
143
59
150
170
135
113
95
105
81
139
109
107
126
108
134
165
95
102
95
143
164
177
148
104
206
154
92
105
107
115
130
144
123
102
113
128
104
148
84
74
138
106
135
145
128
169
177
95
102
119
130
147
49
123
91
114
145
91
151
82
83
92
86
103
106
99
140
148
147
135
81
107
150
126
93
114
128
102
123
80
74
59
81
150
148
113
113
145
135
152
125
76
104
113
177
124
115
115
151
98
109
78
143
129
93
109
105
74
72
144
140
83
116
105
142
115
123
137
103
100
98
148
140
65
85
125
105
81
110
103
129
157
109
163
112
158
90
54
123
117
125
161
103
83
181
76
54
130
129
87
125
100
111
74
121
54
150
140
143
135
132
138
49
91
103
104
91
96
49
168
106
113
95
153
131
113
115
91
128
128
108
159
65
90
136
137
114
54
97
128
59
145
147
77
116
158
109
142
104
100
125
72
123
116
98
54
59
95
95
156
142
112
102
147
89
146
109
98
90
168
85
95
91
121
81
77
117
105
118
54
127
158
125
122
135
74
110
146
129
118
98
76
93
119
67
81
54
177
141
143
104
81
157
105
167
117
97
115
125
76
160
96
140
95
103
54
143
143
121
110
112
103
120
106
100
133
95
73
121
102
201
156
115
82
153
90
68
108
94
115
109
145
128
102
102
173
114
133
119
125
108
112
108
90
74
83
101
109
177
78
108
124
131
142
158
61
145
96
148
94
123
125
121
103
87
109
119
128
106
98
180
91
103
78
148
112
173
137
94
81
110
144
96
54
173
147
104
133
78
144
123
84
76
117
95
131
59
112
116
77
145
138
181
101
159
98
188
148
54
128
119
105
104
83
98
129
107
99
103
172
112
116
151
82
100
136
135
102
69
113
110
113
130
144
135
133
93
137
81
146
68
87
104
98
139
109
74
113
98
103
162
111
116
49
110
99
176
100
83
140
103
120
112
130
177
113
125
141
152
126
110
182
172
110
59
81
106
103
123
100
146
125
144
76
191
163
142
171
135
97
141
102
95
86
81
54
120
113
234
102
59
102
139
132
117
120
206
130
95
95
102
199
93
107
101
98
95
137
134
100
204
112
98
104
106
97
110
54
98
163
133
103
173
113
101
115
93
108
61
100
138
128
93
59
107
96
140
114
115
146
132
119
121
144
105
54
127
141
74
167
125
95
148
122
155
98
142
54
104
78
61
99
113
67
95
102
54
186
134
159
95
54
61
61
90
145
149
102
112
129
81
98
115
112
76
68
69
112
67
132
98
126
119
150
114
161
96
119
115
119
144
76
124
134
81
87
131
103
118
102
119
146
91
87
92
158
54
95
97
102
133
130
102
103
134
98
134
102
119
105
111
87
134
87
101
137
108
131
98
96
69
144
131
132
103
133
144
107
106
106
96
95
146
98
76
144
103
171
89
108
110
108
127
117
114
98
118
67
110
89
118
106
98
162
98
137
118
141
120
126
144
132
87
98
100
107
95
106
167
113
167
124
120
124
105
163
105
125
144
68
109
98
97
120
125
138
118
70
149
141
78
135
102
45
113
106
118
125
144
148
102
136
104
156
96
138
89
83
133
74
154
87
161
133
112
123
86
68
111
108
84
111
92
83
54
154
98
143
54
114
108
74
76
94
148
158
172
142
129
95
54
120
103
87
136
148
105
104
108
103
102
111
95
110
115
149
106
135
116
67
104
140
218
128
149
95
98
99
107
93
102
116
131
171
142
147
49
141
118
108
94
168
107
91
89
127
100
103
127
113
131
106
150
105
108
74
128
109
140
108
69
93
129
122
137
87
108
98
69
95
95
54
54
117
115
107
126
119
126
105
146
106
83
150
127
81
89
120
95
153
94
100
204
158
105
128
100
153
119
116
101
124
90
102
108
49
140
61
127
105
142
140
109
192
122
147
133
81
112
149
85
81
128
128
100
49
144
83
106
105
112
108
74
121
149
148
54
93
82
90
128
120
117
110
110
101
118
185
133
85
96
156
116
125
102
67
145
130
173
81
172
93
76
139
135
177
101
103
131
119
120
172
125
103
120
142
107
49
108
98
95
170
144
74
143
77
94
97
114
113
108
54
76
88
132
123
78
78
127
153
117
91
157
149
117
83
108
77
161
90
134
125
138
81
118
87
88
116
100
129
54
103
145
107
118
120
113
101
102
79
123
135
123
177
148
196
161
96
101
141
76
103
108
116
193
139
95
110
134
146
111
106
94
67
91
90
161
165
54
113
119
176
97
59
152
61
59
105
131
177
97
82
127
108
118
122
54
102
122
93
95
117
54
81
110
82
105
54
103
85
82
92
82
84
122
102
148
143
89
138
93
106
90
152
113
91
149
122
91
97
156
128
87
104
134
99
95
108
108
143
101
65
129
110
96
156
95
110
94
175
88
134
124
108
141
135
102
107
122
49
90
110
151
126
117
108
107
159
143
143
113
77
151
83
131
149
93
92
54
120
124
54
123
111
121
138
178
167
116
125
140
129
135
59
136
112
138
109
179
153
80
133
108
100
190
125
141
164
139
148
59
102
84
124
125
145
103
125
49
162
98
128
118
76
94
115
132
137
144
99
76
82
95
142
103
96
163
98
109
102
54
161
149
104
140
124
156
97
54
123
82
108
104
98
118
109
103
87
154
146
106
117
174
173
115
137
144
103
145
118
133
209
54
61
84
108
82
54
135
133
95
105
130
156
136
108
145
152
146
104
54
102
131
123
81
159
82
128
133
149
135
115
139
98
78
141
135
103
115
109
92
74
140
102
109
139
67
130
180
155
138
100
93
87
113
108
104
128
153
82
131
125
177
101
54
114
108
131
100
160
84
195
118
98
84
131
133
112
95
77
142
148
133
102
103
113
125
148
123
197
81
92
90
127
128
107
132
159
102
105
54
106
115
134
115
115
98
144
74
85
108
134
148
97
188
162
121
87
133
103
127
160
112
115
137
132
126
76
102
82
120
97
113
59
147
138
74
117
141
151
102
80
108
136
144
108
95
116
108
126
133
144
126
59
167
91
54
122
128
74
106
93
129
116
76
113
54
54
82
142
110
119
155
145
126
79
54
133
107
98
132
200
113
165
133
119
54
106
109
84
185
74
137
118
74
87
184
133
87
122
106
67
89
98
80
76
140
82
112
189
93
74
147
105
125
131
108
93
151
145
91
102
161
107
114
93
103
125
145
98
61
134
83
77
106
91
149
110
129
146
146
111
133
108
143
102
98
96
104
121
95
115
159
91
123
94
102
54
90
115
113
135
165
112
133
94
104
109
113
54
49
130
141
49
87
54
80
107
77
104
135
67
101
160
82
91
126
112
116
128
79
123
145
108
102
131
127
106
85
118
79
98
102
168
105
59
116
101
150
85
129
124
76
171
76
93
119
81
127
102
154
133
159
86
108
98
93
102
89
129
180
49
109
59
108
144
127
83
73
54
154
68
76
148
150
124
180
101
89
97
123
59
106
78
113
171
145
98
114
67
81
97
129
78
105
145
125
119
96
88
127
123
158
110
93
81
105
119
87
61
199
109
126
177
119
147
76
83
151
113
103
87
95
155
76
125
108
98
82
73
146
165
87
97
95
122
128
95
97
67
103
96
90
122
93
80
80
120
109
125
100
159
115
160
126
81
130
91
76
95
128
175
93
68
105
121
147
96
90
145
107
140
128
107
102
98
98
150
128
94
85
59
84
112
82
141
112
99
130
169
129
142
95
116
81
103
163
131
179
153
167
108
108
139
190
123
144
145
150
93
144
95
114
98
102
121
135
162
86
59
81
98
122
104
54
103
110
138
92
108
179
136
142
123
152
117
120
136
104
87
179
138
124
89
144
103
106
125
163
49
109
103
107
125
135
148
80
113
120
131
162
95
94
95
109
103
117
150
124
98
76
144
160
102
90
103
59
114
96
99
133
143
103
154
121
108
67
113
124
127
83
107
125
85
119
102
115
90
110
102
154
129
78
85
93
140
136
96
133
132
80
106
74
143
133
141
102
119
106
102
133
143
108
113
54
82
102
107
140
143
95
106
74
102
61
110
94
125
134
112
156
98
123
92
110
125
106
112
74
189
117
97
103
111
126
147
147
125
106
115
112
133
113
127
108
146
97
86
130
105
126
141
164
123
108
114
74
108
54
139
75
83
108
146
131
125
88
87
74
141
97
163
134
98
123
82
114
80
126
91
104
89
105
131
118
87
90
67
107
115
95
80
100
102
111
141
144
103
144
119
111
49
124
150
141
162
95
152
87
113
107
99
162
142
113
129
83
117
116
95
80
101
124
103
149
84
124
113
54
67
144
97
113
115
118
49
161
138
106
100
144
95
108
98
77
98
138
133
106
97
77
103
140
96
133
74
90
74
123
145
87
102
67
126
108
123
134
150
134
113
59
112
170
154
49
119
103
108
107
106
106
118
123
120
84
87
93
102
108
120
54
49
100
87
59
96
71
104
148
141
136
102
49
87
125
98
115
120
103
130
172
150
129
98
113
54
90
96
107
126
113
95
115
106
125
98
109
125
98
128
116
95
148
94
126
108
143
143
76
102
165
95
120
129
181
120
106
83
161
177
136
126
90
76
127
76
125
102
131
98
98
98
77
103
123
202
115
161
81
155
54
106
135
109
152
83
126
83
102
103
148
160
103
177
113
104
147
59
85
161
146
116
157
148
102
125
103
103
108
104
87
78
103
87
67
87
118
114
133
78
134
54
143
74
132
131
108
106
122
134
54
138
134
128
105
171
98
143
117
128
90
108
129
115
97
151
163
77
177
124
120
97
106
107
137
108
133
145
78
102
120
135
123
167
125
82
127
90
95
95
108
99
115
116
128
68
129
136
108
193
87
118
90
126
131
98
74
134
113
87
125
83
82
132
107
81
95
135
152
109
73
133
168
141
150
102
100
95
148
152
92
108
87
77
115
170
102
98
122
81
127
103
141
87
98
130
89
100
146
96
109
94
81
107
65
90
142
108
135
154
134
164
152
116
76
85
98
68
127
98
117
154
110
103
163
113
108
132
102
100
128
89
54
149
112
105
113
151
132
148
86
76
98
120
97
95
135
128
111
54
102
125
104
118
81
144
118
103
139
105
119
116
131
148
93
146
67
132
84
90
133
112
102
131
108
111
131
97
89
95
90
138
102
103
93
157
142
117
127
130
113
124
87
164
126
204
96
81
148
54
117
73
95
95
67
198
168
54
123
83
142
125
97
102
140
163
124
180
145
149
98
93
161
106
116
133
92
74
144
68
79
76
144
106
143
83
79
54
93
131
99
119
97
122
139
143
144
98
108
123
124
54
157
143
99
144
106
161
77
158
177
95
97
135
54
81
112
158
108
111
110
105
89
113
82
133
95
130
126
148
114
138
98
81
90
132
155
128
106
54
115
169
146
119
123
143
168
77
100
147
113
146
113
78
141
103
86
129
99
77
80
168
113
147
105
164
123
108
112
101
109
109
142
128
97
76
106
122
98
113
135
104
123
107
90
120
151
89
54
142
122
81
102
81
118
151
123
144
137
197
113
160
131
147
115
147
150
142
149
127
82
105
154
74
149
81
109
172
81
81
156
115
146
144
108
80
131
99
143
94
117
49
161
147
54
73
87
74
54
135
94
135
185
69
115
142
192
109
54
173
125
141
110
105
117
129
101
96
138
77
86
162
77
99
110
93
131
61
112
109
81
81
74
96
100
115
102
128
78
148
101
140
108
95
115
154
113
72
104
49
78
179
108
98
129
127
106
116
116
103
77
98
176
114
113
111
85
143
98
49
118
113
150
103
188
122
109
131
90
132
177
83
107
105
105
191
186
94
92
81
172
125
104
92
109
128
98
85
146
140
54
107
59
93
120
82
99
114
118
103
82
131
134
94
124
99
107
170
148
154
132
49
81
115
83
134
97
80
96
61
125
89
198
72
98
105
95
110
134
148
133
94
61
122
81
186
102
125
97
116
125
125
77
133
54
82
154
157
102
93
154
49
165
87
128
108
102
81
127
68
54
92
105
49
54
102
102
132
114
107
98
103
85
98
117
171
191
73
127
100
96
89
94
79
103
151
133
94
110
153
105
115
186
74
105
76
178
93
178
96
54
111
87
95
108
116
127
132
90
115
142
149
153
100
148
110
146
130
96
144
166
77
108
82
98
83
126
108
83
116
98
122
110
152
103
144
54
111
81
112
110
102
87
157
144
99
102
76
192
125
149
93
127
94
80
120
113
95
103
54
90
103
140
54
168
127
115
111
103
160
76
160
122
163
102
125
123
119
67
141
81
117
74
96
99
107
173
91
143
54
123
115
93
105
137
100
49
95
138
113
89
144
160
81
89
85
113
84
148
108
118
118
126
144
148
108
97
99
129
54
109
103
158
116
125
121
100
120
105
105
119
123
118
108
93
159
167
115
102
110
100
77
96
110
97
97
108
81
139
163
93
112
104
49
105
125
150
107
76
138
147
98
140
169
150
156
84
127
95
158
130
98
170
100
189
97
128
109
74
138
74
128
148
94
84
93
180
125
168
173
93
108
120
126
113
118
94
134
102
117
135
92
98
94
126
100
138
154
105
104
137
133
123
105
108
146
102
108
120
99
90
134
134
124
105
121
104
106
117
124
129
145
133
147
81
134
122
140
135
107
127
115
77
140
94
54
100
120
104
138
100
54
102
152
122
49
74
132
143
139
120
49
129
83
158
101
90
144
98
95
128
77
116
108
125
145
107
95
54
123
90
138
98
114
135
184
142
162
122
87
121
102
107
65
87
140
177
101
113
67
133
104
101
158
100
155
109
78
103
144
131
92
94
103
145
119
129
140
42
116
127
125
81
152
104
127
122
93
108
121
126
95
118
116
132
139
122
123
125
102
148
120
91
81
131
113
148
117
94
102
102
140
49
178
178
180
54
136
121
124
102
133
146
105
91
123
54
126
103
161
127
102
115
135
177
117
108
157
108
141
102
159
168
102
87
91
76
101
87
78
125
123
142
105
105
108
132
105
78
126
105
108
144
137
115
81
76
110
67
90
148
91
127
81
108
113
156
115
116
128
102
161
181
108
96
126
153
135
95
59
126
124
54
74
97
136
95
102
103
105
102
148
149
97
99
102
177
139
94
54
91
108
114
49
87
134
96
125
80
109
95
133
79
135
118
49
87
94
126
111
76
132
146
139
186
116
142
109
132
106
105
115
99
129
145
80
135
177
112
200
83
125
79
54
85
68
118
106
91
142
106
103
135
173
135
175
105
135
87
83
125
108
115
120
125
54
156
170
81
68
225
93
97
148
101
143
127
78
155
140
127
134
76
91
105
68
129
198
129
49
138
116
102
96
148
149
120
97
147
94
99
99
177
150
131
81
131
114
85
126
140
147
112
79
115
59
113
182
87
83
61
108
99
154
74
108
125
76
145
122
114
82
97
128
95
135
130
77
74
107
104
129
54
100
106
116
95
148
76
177
99
102
104
127
165
59
88
128
87
121
128
98
87
141
139
158
54
116
69
81
124
143
148
76
126
99
95
114
65
124
105
119
112
133
103
173
95
102
112
131
90
93
132
138
78
157
153
147
123
81
87
149
100
134
100
145
169
74
94
106
116
148
76
101
105
143
100
74
113
102
113
91
135
81
118
125
145
102
114
144
135
134
54
67
81
117
151
107
81
95
125
96
97
169
83
96
95
107
179
54
102
98
224
102
140
104
125
153
123
102
125
161
54
137
112
108
105
95
138
114
130
149
104
180
144
116
110
127
101
128
110
117
145
86
153
172
130
54
135
111
164
92
108
83
115
110
119
105
120
127
138
92
150
91
103
82
115
81
94
84
123
116
106
126
95
54
128
139
193
138
105
96
129
141
70
54
122
99
136
161
148
59
134
104
123
108
91
112
104
85
73
90
128
103
126
155
57
159
105
113
98
59
54
98
132
127
108
147
133
121
129
81
135
108
122
68
91
140
142
122
98
87
147
104
76
104
159
110
105
112
104
147
172
150
74
149
113
102
81
108
89
123
120
77
54
114
130
93
122
97
116
100
123
98
158
49
116
150
130
146
82
92
130
149
76
102
105
90
125
143
69
135
108
68
141
105
106
207
90
167
159
49
114
125
98
87
103
49
78
100
198
114
86
158
113
134
92
123
102
126
161
127
90
140
173
130
81
106
128
90
106
119
74
158
79
108
126
94
127
77
54
114
115
139
178
109
133
118
158
175
102
97
143
79
114
133
131
99
102
158
158
111
108
99
111
106
125
74
117
88
126
105
88
95
156
158
104
153
138
126
99
90
115
96
153
97
81
102
108
145
78
115
169
161
102
124
107
116
76
126
99
107
124
74
124
179
91
101
126
108
143
137
138
158
115
72
102
119
161
120
128
134
115
95
72
109
106
108
91
98
109
161
172
127
69
100
98
124
91
105
163
139
114
103
108
108
87
112
120
76
123
83
98
93
135
153
77
120
120
135
133
102
135
141
131
108
181
129
109
103
108
108
92
126
108
54
81
119
91
134
108
138
106
154
114
127
126
138
152
111
160
151
147
105
146
145
167
115
89
108
95
115
101
84
147
120
129
141
116
69
160
127
117
116
96
117
132
109
76
91
62
125
104
86
122
116
138
59
157
104
90
107
131
104
102
98
89
170
83
132
131
148
125
54
133
98
135
87
111
124
74
102
115
67
92
125
109
103
129
123
101
117
138
81
49
109
146
103
168
114
161
107
152
121
138
126
166
107
81
91
145
113
105
133
132
90
135
77
112
72
106
108
125
79
87
137
218
113
129
97
70
125
126
107
123
95
95
99
145
140
99
119
116
97
102
103
107
101
139
107
101
133
146
131
101
134
98
92
83
172
148
151
102
109
158
102
103
139
128
61
133
144
128
160
196
117
107
114
107
68
139
68
116
115
134
150
139
95
153
133
121
146
59
102
107
91
54
95
118
102
132
117
138
126
139
105
67
144
136
116
95
97
98
123
121
81
74
152
134
177
180
126
113
137
49
141
150
93
98
136
106
92
95
102
74
54
100
115
102
148
117
157
154
108
74
110
161
151
95
102
114
136
149
123
84
80
82
111
68
177
80
162
65
202
139
80
127
157
95
87
113
133
125
126
132
74
158
150
138
115
103
158
96
132
124
140
165
106
87
107
136
104
93
101
93
76
87
127
124
133
101
87
103
59
59
102
88
82
59
111
103
113
54
97
125
116
169
80
123
108
113
138
189
96
99
184
102
140
97
112
88
145
54
144
152
95
124
120
127
96
113
119
74
103
87
124
111
140
95
131
97
123
90
81
152
112
160
106
82
82
119
98
145
104
95
136
132
93
119
108
103
139
97
97
146
95
72
106
79
81
110
97
110
134
98
93
105
174
98
135
102
126
224
102
105
100
81
49
157
113
133
147
102
110
135
102
131
108
99
96
144
88
131
181
107
102
49
54
74
93
59
96
115
115
100
115
83
102
154
103
171
117
108
206
80
121
120
95
149
131
73
81
133
103
148
68
95
139
127
122
108
145
147
150
141
54
82
76
96
161
98
102
134
156
118
54
124
80
81
87
117
130
135
118
138
150
132
91
101
140
129
95
90
111
100
156
98
152
96
108
143
77
67
101
120
173
108
155
100
165
108
143
133
59
165
129
105
135
102
78
94
119
137
98
148
54
115
77
102
118
94
122
151
85
103
147
49
105
96
135
54
99
107
145
116
89
98
125
98
106
78
72
125
140
132
120
98
158
142
133
129
103
92
134
107
74
93
176
67
90
141
119
100
140
87
81
81
76
94
108
158
110
119
102
157
101
97
101
87
148
120
149
100
76
97
107
141
160
144
177
185
133
78
134
194
85
165
146
141
128
49
117
149
103
102
101
105
110
102
103
108
106
158
142
178
80
74
123
113
153
74
97
98
163
99
143
153
115
107
150
100
150
96
86
80
104
82
140
82
113
126
157
86
127
100
129
116
127
65
123
122
133
118
142
144
156
83
54
93
118
122
103
49
102
102
119
102
88
54
115
95
125
96
120
117
114
110
134
121
113
108
90
131
93
127
105
94
140
113
159
76
105
133
105
147
81
103
118
156
144
123
102
91
123
76
119
85
160
127
112
110
126
129
102
129
90
49
54
95
144
113
120
150
158
143
81
150
131
102
108
84
70
102
152
96
74
109
95
125
93
146
125
121
101
106
148
144
100
127
102
95
102
95
147
90
87
87
135
113
99
99
49
103
98
127
121
87
165
97
156
95
179
138
98
148
115
145
63
131
135
134
83
121
113
119
105
116
81
104
152
158
99
81
82
134
120
104
107
78
125
115
135
143
123
94
100
136
67
98
112
87
174
119
133
95
124
123
95
107
97
116
86
138
78
172
102
99
98
134
54
180
74
125
90
59
131
141
113
74
78
109
111
113
96
165
141
104
148
124
89
139
81
193
102
107
139
186
143
93
95
149
100
123
54
90
125
77
87
124
142
108
103
121
49
108
54
103
98
153
87
140
107
82
90
106
165
108
120
93
87
80
131
102
115
131
125
115
145
95
106
59
122
98
143
100
152
164
163
94
118
91
96
103
158
115
54
105
115
61
182
181
124
54
130
148
148
102
91
67
132
201
97
91
122
54
148
97
185
86
165
82
92
140
139
59
102
98
118
127
213
185
98
81
111
81
86
127
102
91
57
81
88
108
93
67
81
199
173
79
141
129
54
192
95
127
157
148
78
74
148
97
110
106
78
54
178
123
146
74
49
93
114
102
118
54
90
81
121
128
133
158
67
169
103
122
54
177
90
130
138
112
124
110
97
65
124
98
91
170
169
146
145
82
138
148
102
97
104
141
160
107
69
85
90
137
132
123
127
103
148
142
142
139
135
95
54
95
130
103
90
103
145
83
77
59
142
113
98
108
90
120
118
126
68
79
122
137
96
113
104
77
146
95
140
118
54
141
154
121
114
103
130
138
89
191
94
134
90
96
111
95
54
146
139
150
118
114
81
110
49
116
150
88
99
108
159
98
59
102
93
153
135
108
101
90
54
122
171
135
112
82
107
107
106
140
87
150
82
99
107
129
102
54
135
105
132
77
82
125
118
152
112
115
111
190
84
97
127
102
118
171
120
97
148
98
141
121
100
101
108
83
74
49
78
89
101
147
93
107
133
97
122
120
101
87
94
76
68
100
115
90
96
141
109
93
115
106
85
108
128
133
159
105
93
138
126
131
108
159
126
125
108
101
108
106
81
108
125
54
112
91
59
161
106
102
110
133
154
142
98
87
145
122
102
125
140
155
79
104
102
144
85
102
126
111
97
108
154
129
87
108
94
166
122
131
106
127
138
103
156
114
81
134
117
54
118
95
140
108
98
100
108
135
96
86
109
132
141
120
81
54
170
133
76
139
93
93
121
108
175
133
141
101
113
108
115
114
112
129
105
108
67
106
116
92
102
141
189
136
151
125
125
148
115
137
77
127
110
88
112
149
82
102
95
83
111
104
99
102
131
102
117
165
147
108
75
147
152
149
147
146
102
121
102
152
98
129
185
177
93
158
85
132
98
95
54
81
165
142
67
133
138
109
74
124
108
142
132
188
102
92
116
118
104
71
108
74
137
108
124
129
96
147
132
130
100
160
121
100
114
139
68
140
59
143
112
101
113
90
108
107
90
108
149
87
123
157
91
95
123
104
108
112
82
49
104
146
158
113
119
76
120
113
127
125
119
139
69
112
118
102
49
109
103
96
120
110
93
163
98
128
129
133
88
142
102
115
133
45
54
125
146
150
218
97
114
200
82
122
110
61
122
166
83
54
143
97
128
111
113
135
68
76
108
98
118
115
104
132
149
100
108
140
153
101
128
149
90
78
149
102
123
78
153
54
108
110
73
146
106
132
115
140
145
67
127
133
146
126
188
168
110
122
98
138
122
91
96
177
54
113
138
158
76
123
131
135
131
160
165
82
102
88
96
105
109
135
101
132
123
164
156
145
54
105
87
139
90
96
120
126
90
132
118
115
45
118
115
106
54
115
138
106
93
115
68
118
125
140
124
127
49
120
54
110
105
67
132
149
125
90
69
117
102
123
102
143
69
177
84
109
141
87
137
113
171
154
81
130
54
97
160
120
99
98
77
61
219
125
117
125
111
78
90
191
87
103
91
152
134
108
107
97
82
154
128
94
77
139
74
134
143
134
94
160
162
93
87
95
59
173
139
156
162
173
114
59
105
93
155
93
113
130
59
135
97
129
103
54
85
151
145
107
105
84
79
179
59
92
122
118
95
54
59
74
149
148
153
148
139
139
120
129
54
148
117
78
94
129
98
81
101
131
59
103
131
118
118
107
148
69
81
113
136
108
108
119
68
145
120
54
108
128
120
129
100
136
128
105
127
90
93
171
90
84
133
81
104
120
107
100
115
67
83
143
133
144
54
87
97
108
54
128
88
177
133
59
96
144
155
81
95
82
103
158
137
87
93
133
157
108
95
106
83
94
171
108
95
107
194
98
129
93
85
144
181
109
113
152
96
91
98
102
89
95
107
105
108
103
141
87
132
182
108
135
131
102
154
119
102
131
82
54
125
95
124
149
127
148
131
87
76
129
78
107
134
130
118
76
113
109
151
140
125
109
123
54
73
135
85
128
187
108
160
128
126
105
158
76
151
121
124
167
96
165
117
78
113
97
162
81
112
123
81
89
140
100
169
90
97
76
97
140
129
106
95
122
125
108
124
105
143
105
144
147
104
93
118
135
110
101
154
103
89
145
97
121
54
98
118
108
115
113
94
148
95
59
120
144
124
106
167
163
130
114
95
61
83
137
68
130
103
108
92
131
122
107
144
131
94
118
108
133
89
140
148
54
97
113
108
108
98
83
82
116
119
82
144
61
125
54
108
126
131
100
54
134
105
99
123
128
92
54
134
134
198
135
85
95
127
98
74
142
108
94
59
113
97
177
95
59
70
116
97
113
131
110
102
195
88
102
102
125
112
121
103
133
116
142
90
78
135
83
103
131
144
118
110
128
127
157
112
163
128
54
86
98
105
67
94
158
67
81
129
175
85
54
131
102
90
171
68
137
78
170
108
165
82
137
103
103
190
78
104
125
152
106
103
122
156
153
54
149
54
102
142
181
104
144
76
141
74
120
168
59
113
73
143
82
74
95
108
110
102
59
103
89
128
108
108
112
81
105
118
132
54
118
125
88
124
156
147
108
90
141
132
149
122
108
169
45
89
145
141
155
103
69
65
158
121
100
125
144
95
89
113
112
118
133
139
73
117
124
130
95
132
115
102
123
102
138
102
83
121
100
132
77
98
77
125
154
80
112
146
110
131
137
133
87
125
89
96
120
135
49
49
122
92
83
74
160
110
95
86
129
108
92
95
109
142
109
98
92
163
110
98
82
130
120
70
102
94
143
95
134
68
125
116
140
82
139
131
169
141
103
80
122
107
93
84
132
144
114
144
118
70
110
95
132
147
120
81
83
151
135
180
49
96
93
108
128
112
132
102
144
109
78
143
117
100
177
76
98
82
54
105
95
73
95
94
106
97
119
143
154
96
145
140
145
113
128
76
127
100
59
108
92
78
129
125
189
135
146
102
154
102
96
90
94
54
155
69
100
98
99
90
113
143
135
102
114
80
136
70
76
139
91
107
116
104
134
54
120
112
49
143
106
138
110
77
122
144
147
137
145
116
125
93
104
83
133
139
145
112
110
92
162
117
89
142
163
118
131
123
125
126
82
167
143
131
179
80
122
97
126
129
54
81
102
77
133
108
123
110
108
144
165
113
138
169
54
147
135
108
127
49
147
148
108
176
118
107
116
161
113
121
214
79
87
123
96
54
84
125
54
150
105
168
124
144
78
108
167
119
141
154
143
137
108
213
134
130
103
106
102
105
102
131
95
113
102
188
108
93
95
79
131
77
107
95
97
102
113
98
126
134
111
87
132
103
127
81
87
175
120
102
78
87
144
95
125
125
117
124
139
140
155
120
107
73
93
119
96
128
101
91
106
142
155
97
83
125
87
109
173
106
171
104
97
146
106
106
120
79
74
102
133
95
100
115
95
85
117
81
95
78
163
94
101
149
127
125
112
122
120
113
120
87
102
90
108
63
49
115
113
95
98
54
149
101
113
174
102
165
108
90
128
87
98
89
121
83
95
151
98
68
165
132
131
103
49
96
81
127
49
117
54
195
117
137
103
85
128
54
103
98
165
88
98
129
117
120
117
54
160
102
95
90
160
167
95
129
105
95
111
49
112
111
98
114
85
109
54
148
95
102
105
120
119
125
108
133
125
130
102
145
122
114
132
167
128
140
95
98
107
62
128
111
82
131
119
103
108
151
138
110
104
105
105
95
146
140
150
104
78
167
78
105
127
99
68
78
99
166
98
122
87
135
123
93
78
140
119
97
85
148
102
103
112
150
144
126
113
73
139
163
74
54
93
128
79
92
88
108
108
134
132
104
144
135
54
103
141
98
129
128
162
87
105
133
108
77
95
118
98
105
95
54
107
103
54
127
81
125
136
49
129
127
177
107
117
77
120
49
128
94
140
94
162
154
155
122
148
98
89
106
115
153
68
96
98
151
93
103
148
91
132
110
93
142
88
104
113
113
148
74
104
90
90
135
216
167
102
91
133
200
99
108
116
54
126
105
126
119
91
155
54
103
104
131
140
144
124
131
122
115
113
85
102
138
133
67
108
141
107
117
144
98
69
98
122
143
125
116
118
119
168
148
83
177
131
121
80
116
143
133
90
105
119
139
79
94
106
110
158
123
119
102
151
113
125
180
97
90
115
115
81
93
156
129
81
105
120
65
107
137
157
110
116
75
100
111
127
167
98
101
119
87
117
49
125
102
112
128
154
92
126
138
140
133
134
98
103
90
77
93
98
149
168
126
147
148
95
75
135
113
92
78
120
112
140
95
133
125
160
113
97
54
102
125
127
63
166
207
114
118
160
105
74
158
93
146
54
175
141
133
102
129
115
125
125
142
59
110
180
98
160
190
125
95
170
105
107
117
109
93
54
190
159
128
134
177
109
129
101
95
54
82
119
109
134
94
103
88
137
170
82
54
120
87
77
108
96
54
87
110
105
95
73
132
138
102
140
144
145
151
95
81
144
99
98
96
87
109
74
158
125
118
123
82
104
78
200
142
145
85
128
138
82
105
218
118
106
105
111
140
119
95
108
82
102
108
146
93
125
159
149
139
120
118
115
175
98
111
115
133
151
143
115
49
61
88
102
113
74
125
139
108
108
103
49
125
116
89
127
97
108
118
98
129
148
131
171
123
133
149
107
82
80
128
113
112
102
95
97
95
110
87
130
110
82
59
103
98
93
116
166
113
122
165
95
81
133
102
54
108
107
90
96
128
137
142
74
84
111
158
185
136
132
115
103
54
128
127
100
143
95
129
151
131
93
127
85
135
74
113
128
141
88
95
95
99
128
124
54
173
101
168
117
98
136
83
97
95
86
93
160
74
94
136
133
127
74
135
131
131
157
68
135
120
84
151
108
102
130
148
98
118
142
101
94
128
113
152
108
166
140
87
126
82
141
59
108
78
105
138
144
136
116
127
158
100
95
105
169
105
94
103
144
80
99
95
132
98
107
138
98
119
130
49
105
59
102
137
85
140
107
113
111
82
54
120
116
105
98
122
101
114
121
200
124
139
49
133
91
122
128
107
54
91
118
142
54
112
97
94
131
131
90
133
120
127
120
103
140
128
137
123
147
118
104
128
128
77
103
54
95
140
121
114
83
95
107
98
84
131
130
138
85
135
126
96
113
74
103
144
85
168
108
112
129
87
82
120
138
115
171
110
118
141
127
128
146
149
147
182
141
122
127
95
134
123
114
106
150
133
88
93
114
118
103
167
89
155
74
101
115
133
67
124
124
106
54
136
95
102
93
156
129
106
149
131
100
140
155
131
89
120
96
49
76
128
127
96
95
119
109
134
156
133
90
103
121
90
131
141
93
98
158
105
81
112
160
164
102
85
118
160
96
54
109
115
103
144
54
127
120
90
59
143
96
150
103
74
149
92
124
180
77
93
113
123
107
118
106
102
147
145
144
71
149
173
138
49
108
134
92
103
121
98
54
135
129
171
105
199
125
74
131
84
110
77
93
107
98
142
125
132
116
105
120
97
104
131
87
120
143
106
110
68
83
164
180
95
129
102
133
175
125
122
82
98
146
129
95
108
115
146
125
170
139
54
152
149
54
59
78
123
105
178
153
153
93
182
112
108
196
125
106
183
99
112
146
87
131
126
147
126
131
112
98
77
112
123
118
159
108
88
98
98
95
115
134
158
82
170
102
135
140
108
83
148
111
131
115
131
136
102
143
185
134
133
131
87
103
81
150
124
127
103
95
126
54
98
87
49
139
152
99
113
169
119
137
136
74
97
59
110
186
112
124
49
103
100
170
125
144
118
116
87
54
123
127
127
54
153
138
114
96
110
54
135
95
49
102
129
103
158
143
113
49
54
140
140
84
118
119
93
109
158
94
138
94
182
133
168
103
141
200
82
122
130
93
127
124
100
97
138
142
123
82
59
97
115
130
133
107
144
95
120
74
102
130
119
218
125
69
125
131
95
135
151
108
72
159
154
87
97
74
90
109
140
158
82
115
78
77
114
91
102
108
108
116
134
108
85
119
108
132
102
185
127
116
96
83
93
90
136
95
112
108
104
112
128
129
98
87
99
128
146
163
149
138
119
116
95
144
125
104
103
104
97
128
90
94
67
132
77
88
65
73
194
54
142
78
96
97
109
158
91
107
143
89
170
132
79
110
190
76
135
113
127
148
110
132
165
120
73
150
82
86
97
113
112
141
161
94
105
102
139
106
134
82
141
131
98
135
127
125
169
92
78
98
94
108
116
102
108
106
131
143
80
54
125
200
139
92
180
103
105
116
81
150
102
147
81
108
87
90
157
146
143
103
95
142
98
105
160
149
103
79
199
137
73
107
106
74
93
100
90
101
102
95
136
82
54
93
108
98
67
100
92
87
123
108
135
91
138
153
107
108
76
133
143
123
122
112
98
141
114
125
105
104
160
131
153
107
59
120
98
165
123
125
112
111
84
143
93
90
54
98
122
92
131
80
146
119
125
133
102
95
153
93
139
83
105
137
107
123
179
152
59
98
158
102
117
107
113
112
83
109
103
127
170
54
85
93
134
93
140
103
132
96
106
83
128
97
127
89
54
62
54
89
142
155
170
120
87
83
113
117
103
120
129
145
87
151
102
74
49
145
160
104
171
115
76
125
102
172
112
128
95
134
83
173
140
105
102
140
130
114
131
122
54
142
106
129
118
168
102
145
89
132
113
167
74
95
130
84
134
87
120
59
119
87
105
73
77
157
134
106
54
100
109
95
54
67
69
88
94
96
80
158
122
76
140
129
131
127
114
190
108
150
85
194
108
166
123
134
135
93
96
54
93
116
138
78
148
129
157
148
78
102
110
98
201
163
81
103
128
117
135
93
148
102
102
54
105
173
128
118
174
112
154
119
49
162
133
109
103
88
72
122
81
118
95
89
137
76
77
122
177
177
142
126
105
163
97
103
141
85
120
111
114
154
124
145
138
97
103
101
136
87
155
143
87
129
54
114
141
108
78
94
95
49
86
115
101
124
77
103
126
133
127
98
106
138
98
113
95
120
100
103
54
104
128
113
125
130
102
83
77
98
156
94
99
153
145
103
77
128
103
102
128
118
77
159
82
74
115
141
109
146
125
149
104
164
123
131
121
161
124
74
91
109
74
128
76
108
106
129
106
107
128
134
113
110
158
102
101
167
109
76
136
105
124
170
116
143
158
59
135
144
131
82
90
107
122
70
98
85
94
107
94
95
94
76
126
109
143
117
112
112
74
122
104
128
116
49
126
132
108
131
82
123
163
69
101
133
118
115
91
105
178
95
120
81
88
173
161
135
54
131
108
148
115
106
125
101
54
137
54
144
102
78
122
116
88
79
237
113
82
144
105
141
132
115
103
135
54
139
59
81
133
90
83
101
107
134
49
93
123
96
133
137
128
139
128
122
57
108
97
103
107
139
193
138
81
54
98
153
95
103
91
76
84
107
108
98
171
150
131
100
177
98
135
92
140
150
75
150
90
158
120
114
93
97
80
197
140
177
97
118
129
129
115
49
158
93
84
106
92
49
54
140
180
126
114
81
137
93
104
108
118
54
125
99
131
95
115
149
85
106
118
142
126
59
101
54
122
83
115
109
119
108
108
116
149
92
131
122
140
141
90
114
138
86
127
95
135
125
78
133
140
98
97
182
109
137
145
81
99
54
95
122
108
123
140
108
74
153
83
114
190
67
125
92
98
170
111
97
85
83
148
102
149
113
81
142
98
149
140
95
143
128
108
120
90
132
54
110
137
97
145
49
61
83
113
115
81
113
74
101
110
86
71
187
135
109
104
131
148
81
117
78
200
110
186
135
82
129
116
78
86
120
148
54
67
96
118
127
121
146
143
95
107
95
116
108
123
79
119
211
112
81
180
143
130
125
94
99
127
74
76
91
148
152
137
85
87
98
133
59
140
169
129
102
168
54
108
74
146
172
95
135
138
123
125
186
102
115
110
135
127
108
102
114
96
82
76
108
100
103
112
159
95
54
77
95
159
99
82
49
102
113
76
97
126
111
105
144
115
107
93
93
83
116
161
95
149
158
101
93
127
91
124
134
159
99
103
67
133
146
81
59
95
167
167
93
81
117
99
118
148
107
147
152
109
81
130
116
126
102
96
109
136
115
115
74
161
138
114
54
113
122
200
103
146
82
113
97
139
99
119
110
79
90
118
161
103
131
54
151
87
133
95
133
74
59
108
125
158
109
193
155
108
111
154
88
54
100
143
135
182
98
102
168
108
101
148
91
143
133
112
81
98
90
148
145
90
54
138
114
159
191
161
97
54
114
109
54
54
128
194
86
194
120
134
83
80
113
95
77
95
98
98
118
90
164
90
131
82
82
98
101
94
67
104
119
95
102
59
87
153
84
108
118
149
116
125
129
88
126
161
119
54
54
110
131
83
113
200
145
129
99
190
101
102
107
69
91
120
149
88
93
151
87
126
156
77
159
97
133
151
128
176
135
110
170
82
148
98
108
95
105
146
81
127
141
138
131
74
90
134
100
129
135
143
108
127
93
160
137
200
149
95
144
121
138
125
133
103
123
99
144
95
152
128
99
173
110
54
101
86
197
108
95
86
94
85
107
122
121
95
78
153
125
90
118
122
108
102
165
54
92
76
112
136
161
165
77
113
101
174
77
95
98
112
108
142
76
117
82
106
151
142
78
120
138
54
150
151
87
132
54
78
115
90
136
80
98
98
91
137
114
115
109
111
116
74
115
106
146
132
172
107
99
101
108
135
113
125
54
128
117
144
123
129
103
157
163
151
83
96
163
177
119
155
109
98
87
100
177
144
102
128
59
154
102
157
131
114
81
102
54
97
92
54
103
104
103
113
74
96
97
112
124
135
107
148
148
102
103
111
153
82
161
123
67
128
87
131
185
156
125
93
123
93
90
54
59
113
157
59
59
98
135
149
98
87
132
81
81
73
97
126
54
107
127
165
147
115
148
98
114
132
49
133
128
149
160
74
155
79
108
81
138
102
101
82
140
181
133
114
98
135
200
126
95
90
148
122
120
112
134
95
138
108
114
148
188
105
131
117
115
114
122
116
102
98
160
96
78
147
149
128
98
148
156
79
81
91
59
117
102
141
120
69
103
133
54
49
128
83
103
114
144
107
145
119
61
77
97
196
134
144
127
137
103
113
119
157
76
138
102
102
154
76
54
131
135
127
81
94
184
174
113
151
108
77
116
87
119
120
114
127
139
88
147
67
123
106
137
119
108
54
104
124
91
108
54
162
102
54
107
155
99
127
147
129
99
151
121
92
83
134
103
111
85
156
45
128
120
133
131
87
104
96
59
108
133
80
101
102
108
126
113
98
177
102
144
110
123
97
158
114
102
106
69
80
67
87
145
98
103
122
163
118
148
160
130
135
139
87
117
149
127
98
96
148
98
98
132
116
190
108
144
84
59
96
181
80
111
72
61
132
49
144
146
126
82
104
59
123
102
148
106
98
95
141
153
74
104
153
88
188
147
103
126
81
120
142
113
94
139
145
82
159
132
96
120
108
96
165
100
126
136
134
103
118
85
150
95
73
108
102
81
54
106
82
97
114
110
125
106
54
149
96
128
127
143
143
131
103
144
119
134
134
101
131
81
122
96
95
106
130
150
127
177
120
114
82
161
90
145
135
76
123
96
61
124
92
91
113
148
98
162
123
92
110
112
145
109
142
157
119
102
104
96
119
143
177
145
143
81
120
128
69
59
154
80
127
61
83
92
114
134
140
158
135
165
158
125
125
140
92
148
136
119
113
110
120
81
111
102
157
97
143
129
68
98
139
93
98
59
101
146
111
114
131
59
99
96
98
164
49
125
131
138
130
131
87
97
85
151
129
114
122
49
54
77
54
160
141
144
133
99
158
111
130
150
173
107
115
160
139
54
113
80
145
139
117
85
61
110
114
98
122
165
95
152
159
94
90
111
138
89
130
139
157
103
144
118
108
78
98
144
80
124
134
120
112
139
182
115
92
143
98
141
113
90
122
100
106
95
122
92
138
177
93
115
118
162
92
73
98
144
97
98
87
87
107
139
116
103
108
123
122
142
143
177
97
76
54
111
128
104
110
67
123
142
115
77
127
54
149
185
103
94
141
179
102
95
169
105
108
155
161
87
143
103
125
93
93
78
129
94
113
81
57
179
139
82
142
54
129
139
83
106
139
108
54
95
117
131
54
91
80
117
103
130
54
135
183
90
179
98
113
85
125
143
116
102
106
164
68
117
79
108
126
138
119
95
141
83
116
128
108
77
119
198
74
103
67
96
96
59
128
108
161
133
166
88
108
108
90
139
107
140
111
132
84
102
105
54
131
120
141
113
149
84
95
123
95
140
59
80
122
129
158
119
103
77
123
130
114
137
111
120
94
88
146
124
121
131
142
168
77
125
59
109
90
148
130
151
98
98
112
103
125
112
151
93
105
145
142
107
78
140
138
155
95
115
77
89
127
92
152
126
146
148
107
95
144
77
112
158
100
108
163
121
131
131
108
170
95
139
169
117
135
90
153
113
118
54
105
119
89
168
76
107
121
91
177
172
150
139
144
78
98
133
142
130
108
101
155
49
123
156
97
90
158
95
102
49
122
91
109
78
118
142
154
85
108
89
78
118
113
124
182
150
164
148
125
108
100
107
95
98
105
116
82
110
87
144
101
132
98
131
114
90
181
110
129
102
120
129
135
67
154
78
148
103
111
170
165
116
148
110
136
158
142
117
140
145
69
105
121
74
49
108
137
131
81
147
85
98
84
117
101
115
105
85
74
82
114
146
146
82
188
123
143
113
96
107
125
128
100
96
143
179
103
90
77
133
161
155
109
123
120
138
93
98
92
118
158
111
110
98
125
113
123
87
102
111
129
111
106
74
76
153
125
93
88
167
81
135
123
59
119
103
82
144
119
81
135
135
169
177
87
180
119
189
54
99
83
54
98
150
166
87
98
101
78
108
157
82
118
129
49
116
112
123
121
108
112
84
120
110
90
127
125
127
102
81
163
172
89
133
141
144
143
120
95
200
80
115
106
127
83
100
87
156
194
114
97
95
147
111
105
120
177
112
153
153
87
129
158
108
102
79
175
105
143
81
154
100
144
98
102
117
133
78
111
90
78
108
102
92
98
105
98
107
96
115
176
148
76
95
74
193
113
78
115
119
62
142
114
87
112
125
165
90
90
83
143
98
117
83
143
96
95
128
93
133
114
94
136
146
94
113
152
96
149
79
108
157
133
129
96
159
89
98
112
122
122
94
93
54
74
128
89
131
105
81
108
103
49
119
122
112
89
127
102
83
133
143
127
163
89
109
110
120
121
109
103
112
93
95
102
129
49
156
176
160
112
106
85
54
105
131
102
131
104
137
152
78
95
120
133
141
189
107
135
54
105
169
100
110
139
95
103
107
91
90
105
107
137
98
154
118
81
164
120
122
95
72
78
65
141
141
98
134
106
138
102
140
111
49
124
126
131
117
106
136
174
114
128
129
87
98
156
76
177
154
102
87
54
119
102
160
158
122
133
101
120
135
91
120
113
54
161
98
93
142
61
87
82
168
61
104
82
85
128
169
152
96
54
93
98
131
81
101
125
109
128
128
100
148
96
102
128
102
95
128
111
85
126
121
98
145
103
102
115
121
135
80
54
119
123
115
122
133
143
81
90
98
91
144
95
98
147
113
130
103
149
91
97
148
170
103
102
136
81
94
131
137
147
123
170
61
126
125
133
134
87
127
129
122
90
160
121
42
61
97
160
135
96
180
117
95
114
160
114
133
102
98
168
128
100
54
169
103
154
117
77
128
94
54
113
49
102
113
92
78
136
141
151
103
142
136
108
113
102
127
118
80
158
139
111
129
116
122
111
121
92
133
150
165
139
143
104
140
74
102
68
106
124
78
117
144
120
170
96
125
110
75
162
131
102
76
172
87
105
146
88
81
125
157
137
123
85
113
122
98
105
111
96
156
93
177
109
73
85
103
74
130
227
68
121
101
138
103
120
107
109
128
93
106
81
186
106
83
129
106
106
102
140
97
119
139
192
95
199
123
161
169
102
89
112
91
125
135
141
133
54
131
95
92
186
155
124
118
59
90
124
123
108
128
120
114
147
123
108
87
101
177
140
102
108
94
115
105
127
106
95
98
103
96
144
84
102
149
153
113
76
103
107
98
133
107
101
133
92
82
120
105
170
67
59
74
102
155
128
127
113
67
137
144
142
102
145
133
137
133
133
110
132
59
144
141
106
92
146
95
133
147
102
116
106
95
81
134
92
144
103
69
161
61
101
107
108
100
135
93
161
139
151
156
103
123
107
79
153
92
117
119
108
102
101
102
153
105
130
145
118
110
68
118
103
133
104
101
143
118
115
98
142
143
95
105
165
117
77
59
159
113
95
127
125
128
130
79
118
90
122
101
54
186
130
95
120
180
144
74
113
145
82
103
140
95
119
114
93
126
98
91
95
121
102
114
143
131
108
93
98
135
151
110
146
109
135
133
108
88
49
81
185
144
126
133
158
144
113
108
54
95
80
96
107
96
138
224
128
151
121
100
121
98
97
103
108
171
106
81
115
101
153
88
143
154
155
92
78
103
101
89
95
147
168
109
103
98
101
120
69
143
85
170
172
177
82
133
105
109
97
122
54
106
86
77
81
95
102
148
128
108
54
92
98
110
127
140
153
59
54
135
86
102
96
140
140
127
194
147
54
143
119
165
102
95
139
148
82
54
155
124
116
126
116
83
90
125
98
149
131
161
106
116
104
54
118
154
106
128
94
107
118
141
163
127
137
85
98
108
90
158
127
120
91
131
106
155
109
74
98
128
126
111
146
108
104
69
78
82
113
166
102
147
49
80
108
129
98
77
127
54
99
161
120
147
114
131
114
87
78
102
68
146
102
134
78
114
95
87
133
93
141
78
107
154
107
102
76
49
119
76
112
135
128
129
120
153
78
90
49
78
130
103
108
89
76
103
114
114
103
158
105
97
104
112
108
98
97
144
95
138
126
120
119
97
134
99
133
125
74
127
177
75
102
117
77
111
200
125
126
74
122
172
102
106
101
102
110
131
124
85
115
143
100
95
89
191
157
150
120
126
152
98
78
156
77
109
102
145
61
99
114
106
129
121
142
139
169
93
103
125
122
93
99
79
126
160
103
144
137
98
92
162
109
93
146
107
83
103
102
115
95
83
112
148
127
105
131
139
126
54
95
159
115
127
99
121
109
80
59
95
84
102
77
112
192
127
101
109
150
49
97
105
141
147
81
108
123
123
109
139
84
86
112
117
49
102
86
146
166
93
185
148
99
122
164
77
123
67
96
115
179
132
77
106
102
158
180
106
120
93
125
98
119
73
80
104
83
110
76
83
81
102
104
83
113
95
102
110
125
179
123
184
59
102
127
105
184
115
158
83
131
139
87
116
105
74
94
99
108
91
93
128
110
108
191
102
61
108
182
106
119
146
147
138
128
125
127
93
79
98
148
111
81
100
98
102
117
114
126
145
103
118
106
78
127
146
102
97
100
122
115
169
86
128
133
155
121
105
117
141
109
124
118
156
138
143
135
173
118
125
134
149
141
69
127
98
128
93
104
87
70
92
118
168
149
148
108
67
95
95
167
89
95
143
54
96
90
54
74
68
132
141
146
137
110
89
143
91
145
104
108
102
82
134
111
124
67
95
98
81
115
147
76
194
108
161
113
144
113
133
125
113
81
133
108
115
103
108
129
174
106
125
57
87
102
113
111
74
49
89
106
145
140
177
100
87
154
132
114
132
125
169
120
131
84
143
76
140
172
141
49
83
87
102
138
140
144
78
121
110
98
118
74
49
80
140
109
95
106
107
143
103
54
143
97
93
100
172
120
149
108
140
102
105
102
132
103
97
95
81
158
59
125
117
162
105
100
124
87
91
106
101
77
150
57
95
179
95
81
140
138
108
109
105
59
139
93
102
89
135
91
149
114
177
80
140
146
102
156
138
92
54
112
98
130
102
111
106
118
133
134
109
111
123
102
140
99
78
99
116
112
96
143
54
105
88
114
76
83
184
143
129
76
95
98
119
68
120
133
101
160
99
191
101
103
145
146
106
131
76
133
103
108
92
95
54
150
120
139
115
98
112
146
115
105
192
137
96
146
112
128
54
119
82
106
186
118
129
144
96
98
138
139
133
93
90
102
122
181
117
125
127
108
82
118
124
81
82
94
88
143
87
112
105
172
107
162
49
120
116
157
49
172
85
122
87
110
127
107
141
132
128
103
116
113
133
108
146
149
95
111
108
96
83
103
125
98
54
138
84
78
128
138
99
113
86
72
135
136
78
192
110
115
61
104
99
114
108
155
128
129
122
45
134
74
129
101
186
150
133
91
133
95
119
78
101
84
79
99
95
131
83
144
96
131
97
149
130
96
98
101
129
106
163
82
140
125
113
124
184
94
97
125
102
97
127
113
93
98
100
69
101
112
132
135
141
121
162
177
104
153
102
135
133
191
138
160
62
81
125
131
113
100
88
133
81
102
119
124
105
160
111
74
187
81
156
95
107
76
122
101
68
98
132
81
54
74
108
102
82
132
82
115
137
129
146
49
115
141
101
104
114
130
131
106
101
132
85
93
135
126
150
108
151
132
111
108
118
76
151
90
102
108
114
112
127
120
165
104
102
49
110
135
103
112
118
133
144
81
86
127
147
102
132
125
101
107
128
177
105
121
121
147
101
113
114
102
132
87
109
155
130
83
83
158
167
107
77
140
105
125
157
123
74
124
125
80
113
124
105
128
125
106
150
99
93
125
133
139
98
95
95
138
105
121
127
113
82
74
144
136
177
106
143
163
118
132
113
59
54
147
54
90
117
113
103
126
113
134
114
141
144
144
98
104
111
147
105
76
100
95
76
148
87
119
149
144
117
115
83
69
142
108
54
137
163
136
99
101
95
106
142
110
128
119
105
186
131
103
108
153
153
149
54
123
126
97
86
143
104
137
102
107
102
148
99
182
135
125
90
144
128
109
100
67
139
101
105
76
112
87
81
62
135
98
92
191
107
133
130
93
162
127
126
140
54
147
126
107
140
89
80
77
132
54
111
134
115
108
168
133
87
114
83
146
132
103
121
86
133
102
140
161
77
128
122
115
94
103
102
122
76
115
144
145
61
113
54
91
185
105
92
103
108
160
123
97
111
148
177
135
182
80
102
128
148
167
82
106
151
93
96
102
102
113
101
122
89
61
92
119
76
108
95
98
133
121
102
140
120
135
98
81
135
147
85
104
140
137
133
91
118
116
108
98
144
66
131
79
125
129
135
153
179
140
166
102
88
148
110
116
119
54
115
117
68
147
90
81
147
87
76
49
59
140
133
146
81
160
144
157
125
143
148
108
173
149
129
125
67
138
131
116
151
54
125
151
119
133
92
81
112
87
103
123
145
61
80
105
109
104
102
123
54
93
112
141
128
105
49
153
96
83
101
165
99
105
113
135
107
147
135
140
120
76
172
193
138
133
140
144
109
128
98
131
101
119
90
114
135
127
131
119
152
88
139
168
117
109
76
78
144
98
113
80
172
120
113
153
95
113
149
137
132
203
82
143
143
95
108
82
148
113
78
107
103
118
92
102
103
162
93
141
121
98
97
119
144
108
120
83
49
87
115
92
107
125
83
128
81
102
108
59
54
76
85
101
102
93
104
159
109
130
146
61
114
130
123
112
116
91
127
128
118
148
143
145
130
146
111
122
131
59
115
85
165
98
105
128
113
54
92
113
127
95
138
87
122
179
108
127
54
170
81
105
87
77
126
87
98
115
91
102
116
143
96
142
113
94
93
167
149
128
123
172
157
165
140
99
98
142
133
118
167
133
109
105
102
92
118
121
106
105
102
108
98
141
94
106
115
147
102
135
106
128
89
140
109
106
98
113
95
141
162
96
49
90
85
115
124
89
81
76
87
135
158
164
102
54
193
133
81
120
105
54
54
139
166
49
100
129
132
206
165
172
107
125
59
49
102
74
107
120
96
127
99
90
152
106
133
134
101
90
121
161
90
116
97
125
127
98
90
131
87
142
135
151
139
108
90
145
109
76
90
102
94
113
140
144
115
161
95
133
161
105
182
170
149
107
162
112
168
123
135
116
179
189
137
125
99
96
54
108
170
173
103
93
169
90
59
147
131
120
106
166
167
139
77
76
97
106
146
97
144
49
144
145
59
95
74
84
105
125
163
147
157
108
144
153
93
112
115
147
128
105
109
151
80
116
113
104
111
54
77
54
102
114
54
107
102
108
102
150
103
97
76
133
107
167
108
102
148
70
96
159
173
108
104
161
120
54
93
156
147
107
100
119
138
100
110
77
80
87
144
152
89
200
119
182
124
54
90
114
111
96
99
92
116
177
125
102
123
164
140
153
101
148
165
142
74
144
95
125
87
161
107
138
90
112
108
86
105
131
133
167
133
160
56
156
96
176
98
145
143
102
120
143
67
144
107
177
104
128
130
123
127
132
119
98
108
126
133
106
144
110
117
143
122
112
98
139
95
74
140
148
103
126
191
96
134
68
124
54
161
95
148
83
95
95
95
131
114
103
68
61
83
69
153
92
95
95
81
100
100
160
54
129
109
134
93
49
87
107
95
128
148
138
116
49
108
80
93
90
133
106
113
108
54
49
135
108
139
76
102
101
116
54
108
101
177
83
120
128
76
125
135
96
125
135
124
121
54
100
127
49
120
124
158
169
98
177
77
80
110
95
104
49
61
74
59
107
144
69
108
152
79
110
106
130
119
134
83
85
161
59
61
108
134
133
99
182
98
95
49
148
125
120
146
126
141
149
95
92
177
120
124
129
147
113
105
103
115
160
77
113
127
167
133
155
136
124
139
108
156
90
95
102
108
68
152
74
110
147
108
135
76
163
111
161
87
49
148
172
115
106
120
93
102
153
76
77
84
139
98
108
190
104
152
115
116
105
86
118
126
108
105
176
107
54
164
96
116
153
175
110
81
100
98
112
105
113
113
86
131
159
150
108
131
108
111
144
126
106
139
107
130
112
87
108
103
67
102
98
149
120
148
107
95
95
54
49
123
77
108
81
108
94
135
83
148
106
83
124
107
133
119
113
145
97
102
54
86
170
144
73
49
123
130
84
125
78
93
132
114
88
119
211
144
92
79
84
135
107
136
133
84
94
140
76
132
109
129
85
54
103
108
98
185
158
125
103
159
120
88
132
129
122
131
90
54
119
125
108
125
156
90
90
81
79
123
77
175
125
139
54
81
108
87
99
104
145
137
135
80
103
148
131
131
194
113
124
144
74
87
110
94
81
165
136
69
95
85
149
76
120
99
84
135
139
144
74
138
69
121
49
97
144
68
103
96
122
49
113
123
130
97
188
133
120
105
175
78
135
132
89
97
112
103
180
54
121
104
102
158
126
133
103
138
54
124
102
59
123
49
101
165
61
102
108
147
144
106
54
145
105
108
145
103
133
127
113
177
81
177
108
144
134
101
128
161
145
108
134
87
89
148
113
59
145
131
89
177
89
105
59
113
160
109
99
108
133
158
113
69
106
103
106
137
102
78
139
119
82
87
85
140
124
49
96
105
160
149
148
139
87
120
173
107
148
109
158
141
96
77
110
126
54
103
100
107
106
150
81
131
144
126
122
144
101
59
106
83
102
143
120
156
113
178
124
95
123
107
94
98
120
98
91
69
148
140
103
102
93
92
83
98
96
194
106
94
97
118
128
136
110
108
98
98
137
84
153
142
137
128
111
103
115
90
109
120
135
98
151
129
96
68
133
127
95
117
129
137
112
109
81
102
133
149
80
146
125
141
200
120
161
115
76
131
67
169
87
97
158
139
85
100
124
99
115
129
107
97
117
141
137
102
121
118
83
130
107
148
123
143
117
54
93
108
143
122
122
127
146
76
154
90
158
77
118
100
102
123
108
124
83
113
81
93
135
82
160
135
108
82
127
113
108
104
191
140
122
114
119
145
127
137
140
61
54
110
127
110
61
77
123
112
125
139
143
112
49
104
121
138
163
102
129
156
68
124
101
172
82
132
59
95
93
129
158
167
79
102
165
180
54
107
177
103
172
54
106
66
144
122
82
133
81
141
115
89
119
129
111
90
93
96
126
152
156
127
107
80
125
148
102
140
96
182
116
127
98
92
98
147
159
139
74
93
103
108
139
98
125
120
101
121
95
147
101
145
158
138
131
123
152
103
95
186
144
59
85
111
132
117
107
78
102
85
91
177
76
98
109
91
131
142
120
117
81
117
124
107
117
106
164
141
103
133
85
102
113
122
68
165
135
129
103
67
102
163
107
83
121
139
115
193
142
146
134
163
87
121
143
114
104
84
125
109
129
103
131
122
154
93
98
138
83
74
80
94
78
128
102
125
186
98
125
138
84
69
104
116
141
168
54
148
120
102
130
82
127
90
146
86
81
148
81
129
143
85
54
143
108
152
89
54
102
85
140
106
123
102
102
87
135
108
172
161
103
93
78
155
141
103
120
115
80
108
146
160
122
126
161
112
109
163
112
116
81
115
93
145
114
103
107
144
108
130
105
77
148
90
149
110
83
102
106
129
76
98
142
165
95
143
78
98
131
90
147
101
140
91
54
159
114
139
123
117
131
77
106
99
93
107
54
135
110
94
200
96
135
108
174
81
74
162
145
80
124
139
59
123
127
73
69
124
87
120
112
88
117
128
77
105
151
119
74
126
108
135
102
153
88
49
102
103
111
173
117
109
98
92
89
108
95
95
106
137
136
131
122
54
126
90
84
169
121
133
108
198
95
114
102
78
107
131
122
142
114
54
137
95
86
69
98
74
132
149
149
138
177
77
165
74
140
49
135
49
81
139
124
95
85
105
166
109
93
164
96
117
126
95
177
69
111
189
68
82
89
95
102
131
158
128
88
167
117
54
94
89
143
115
97
101
160
105
119
102
134
103
98
135
95
122
93
139
83
135
74
123
95
81
109
126
101
137
130
148
81
149
85
115
90
139
190
90
92
164
106
85
121
99
81
114
108
96
145
95
88
108
99
109
94
127
162
94
81
78
59
102
150
141
124
224
111
103
90
128
106
106
137
125
108
142
113
144
139
94
49
80
179
96
192
114
118
63
49
125
128
122
152
95
54
143
147
156
150
102
131
93
164
148
190
147
102
54
158
195
151
120
134
106
144
130
100
120
83
109
108
150
77
120
107
128
83
124
109
102
103
105
100
145
61
93
119
138
179
67
106
149
95
133
78
165
82
80
119
90
102
148
107
169
146
167
177
127
124
102
127
128
105
153
134
131
81
104
132
120
107
93
61
130
112
116
143
120
108
103
138
78
73
139
106
93
89
74
129
193
49
82
127
106
127
161
132
128
112
142
116
90
140
87
152
134
101
164
122
118
132
91
126
94
132
114
119
152
133
99
90
98
95
148
140
76
131
160
116
105
59
123
168
108
108
161
88
54
105
146
132
139
98
126
128
123
116
115
138
118
95
93
74
108
91
104
90
105
138
145
107
67
133
102
157
113
120
98
121
68
123
54
76
107
98
109
139
93
74
107
148
88
117
108
138
95
117
81
103
161
82
126
135
78
123
154
86
97
108
147
141
133
148
98
124
142
85
147
84
122
98
114
102
160
74
126
135
125
144
165
120
67
148
54
129
125
122
61
87
107
119
76
158
131
98
61
85
121
126
126
117
147
95
133
140
141
77
102
98
113
167
135
123
81
105
92
90
94
102
100
119
135
97
59
54
67
116
98
100
119
79
115
97
131
168
135
54
98
154
182
168
96
133
129
147
99
94
78
133
194
54
87
129
83
74
102
128
98
150
156
135
102
68
116
85
54
100
102
146
148
151
122
132
99
136
125
111
94
136
91
125
167
102
151
122
121
110
144
54
102
97
107
98
162
87
54
94
104
139
103
116
126
123
96
88
135
85
124
81
118
102
149
86
125
100
59
98
87
130
124
94
125
103
108
134
130
166
165
103
191
106
127
156
74
54
61
134
89
115
76
87
164
119
144
95
151
135
132
129
128
54
85
96
146
98
122
145
109
151
98
101
104
120
120
85
122
118
113
122
104
138
54
67
119
123
157
138
106
54
112
59
128
84
125
74
127
87
117
148
143
105
54
116
150
131
130
106
97
117
106
45
138
145
82
54
129
95
95
162
115
74
157
54
119
98
128
141
104
92
113
135
102
108
148
94
54
95
94
149
95
88
103
127
87
92
105
57
126
160
92
104
123
145
133
120
111
85
108
108
104
81
159
76
128
79
127
98
115
144
128
79
156
106
59
155
105
99
87
135
98
98
101
96
148
134
103
141
148
108
116
126
105
59
98
165
133
100
116
141
146
78
117
95
120
156
128
134
118
59
69
104
108
95
113
143
160
112
101
135
114
95
143
144
112
113
102
128
155
130
95
142
110
172
122
129
81
103
137
104
113
131
133
131
127
93
149
102
167
76
168
124
77
152
158
94
115
124
99
117
145
168
121
98
123
144
54
162
151
112
108
77
111
146
98
192
81
141
129
69
115
85
86
139
90
190
103
121
150
129
92
98
76
122
136
107
80
106
111
122
133
103
161
82
68
91
111
150
114
132
154
78
101
114
83
154
72
100
115
54
121
111
162
74
115
54
105
120
121
158
114
96
54
73
127
102
115
148
153
98
105
99
152
195
117
85
98
136
162
87
95
74
132
90
117
158
128
128
102
148
74
167
122
90
127
80
121
111
134
112
123
150
141
109
110
172
59
108
145
110
85
127
129
112
49
163
106
67
109
85
82
137
77
90
122
148
118
104
81
87
90
88
137
130
165
110
141
123
112
131
101
141
133
105
81
54
113
132
125
124
140
172
77
112
130
172
143
126
103
130
143
125
77
107
101
124
130
106
49
162
134
144
98
104
132
140
103
108
119
115
130
92
77
130
130
120
190
130
135
157
177
83
95
102
112
177
127
115
97
140
81
87
124
128
116
95
89
112
102
148
98
61
149
77
165
143
150
61
95
112
116
131
102
99
93
179
114
133
157
111
124
103
103
150
90
125
158
108
54
102
145
122
146
119
114
90
138
95
74
117
134
140
148
128
54
54
76
134
95
135
108
113
154
79
85
120
137
81
170
124
86
108
100
54
154
106
54
82
97
154
127
169
154
127
121
141
95
128
115
81
133
67
102
121
133
144
103
125
118
81
49
90
115
136
135
100
109
138
89
127
105
113
78
62
129
102
95
142
81
104
159
137
138
77
110
103
97
102
151
97
154
143
119
109
61
80
87
100
84
186
133
121
102
200
102
129
84
73
148
59
77
104
81
106
103
128
135
153
77
188
83
69
128
98
103
134
90
127
93
131
124
122
141
98
111
123
95
118
128
115
143
141
105
121
83
119
99
108
105
112
127
100
111
106
139
115
78
126
102
98
128
74
129
133
49
148
154
175
87
147
116
107
97
106
54
149
107
171
145
95
159
139
90
115
102
98
79
156
145
143
144
103
90
140
92
81
114
106
127
125
153
107
106
102
220
94
91
124
128
98
95
167
115
112
145
100
96
169
190
97
101
113
127
97
49
133
125
145
143
49
95
108
120
106
148
122
147
69
105
149
95
119
127
83
108
70
120
123
163
123
130
131
104
95
126
113
102
137
95
152
121
123
136
165
136
81
98
159
102
118
113
108
78
76
95
108
127
136
141
148
130
94
114
83
95
156
132
112
98
107
129
115
124
145
93
131
106
54
125
127
180
113
120
109
123
77
112
119
82
112
93
76
145
193
152
143
125
151
97
162
76
54
108
127
129
122
108
92
126
104
96
144
128
160
100
95
88
144
133
114
81
142
122
142
110
102
132
155
102
212
108
106
100
148
150
89
144
87
117
186
155
139
121
142
149
123
147
70
104
95
105
177
86
174
94
115
164
107
111
196
106
119
89
96
74
177
97
111
139
102
170
165
156
109
137
143
125
83
74
143
91
125
115
108
54
93
103
49
151
106
144
109
92
159
103
81
133
149
149
142
119
110
49
129
66
54
113
145
133
94
123
113
102
78
102
104
54
146
145
98
211
115
106
96
145
82
124
115
54
97
97
105
128
108
122
150
125
68
140
144
142
80
103
49
61
124
117
99
81
81
85
112
101
123
138
136
128
100
102
123
141
108
144
176
110
105
98
164
116
98
123
161
126
118
179
132
103
135
110
89
150
127
85
186
155
128
148
92
78
112
162
133
158
128
128
128
106
131
125
125
128
152
136
93
106
113
158
120
110
102
144
142
54
144
98
80
125
112
87
90
172
95
107
128
95
54
115
145
124
83
140
157
104
121
179
127
167
127
137
133
144
102
87
168
106
128
148
112
182
98
109
113
104
167
98
78
153
99
103
114
73
119
104
115
108
134
151
144
184
113
119
89
123
102
77
108
117
108
132
116
92
159
112
122
111
137
116
96
69
143
95
143
179
148
67
86
113
132
93
99
131
149
97
136
49
93
113
157
95
107
125
98
148
185
167
102
84
105
93
119
126
110
138
61
99
116
103
94
98
153
106
156
54
121
137
130
152
153
54
125
49
102
81
124
123
97
125
127
81
103
82
134
74
143
157
97
103
102
129
90
105
160
89
138
119
54
108
129
82
124
54
134
213
97
103
81
175
117
95
116
92
54
110
154
153
134
96
103
108
108
108
98
95
77
106
101
140
132
160
133
123
87
117
106
103
130
149
70
95
127
108
140
131
108
101
103
133
87
117
108
133
77
135
115
152
153
76
98
177
117
57
102
145
177
121
126
138
135
81
133
129
98
148
116
114
113
163
99
144
112
108
122
54
124
73
54
161
84
59
81
77
90
107
77
121
106
140
125
189
134
104
118
101
106
113
117
87
128
145
96
95
180
109
139
76
74
120
105
182
61
125
137
112
95
122
98
97
93
175
158
167
90
93
90
127
123
121
54
107
146
112
160
90
157
74
117
126
118
59
81
91
138
118
115
110
129
54
116
74
157
136
126
111
177
77
95
132
95
108
102
112
112
49
63
136
120
119
235
49
145
102
115
119
87
85
105
125
100
157
129
153
122
97
133
82
92
163
129
102
122
125
128
120
116
107
54
117
78
93
100
115
167
90
59
115
123
95
117
139
115
49
218
109
105
99
76
76
150
110
107
105
105
104
81
85
149
161
97
143
93
134
108
158
152
132
54
135
95
105
113
124
76
134
94
84
140
127
139
130
102
104
145
118
108
77
54
133
81
139
54
112
105
120
97
147
124
116
162
113
94
135
137
98
66
196
120
125
49
116
112
95
142
99
103
120
67
113
137
113
125
132
109
120
81
54
98
156
117
115
95
74
105
112
110
115
129
114
129
85
113
145
145
123
116
169
104
140
103
96
124
104
76
108
122
105
110
122
125
54
146
105
78
148
114
103
86
95
115
117
82
108
90
138
89
68
97
111
49
74
127
135
122
102
126
124
67
95
153
164
126
132
140
148
91
137
108
49
127
74
126
107
112
103
76
132
106
138
69
133
93
81
102
123
165
110
102
108
118
113
146
125
142
118
182
141
54
119
126
82
108
101
157
140
131
126
100
96
104
98
129
90
95
87
113
117
113
103
199
102
182
92
106
218
125
93
145
97
113
141
95
114
100
80
96
146
103
106
49
159
96
100
94
120
113
188
107
134
163
126
129
69
108
104
119
65
95
127
102
109
123
141
54
165
129
140
87
74
90
102
95
99
102
129
45
129
131
132
54
108
90
117
113
128
103
84
133
142
138
110
129
106
108
123
100
108
103
125
102
115
105
103
93
49
133
81
95
125
127
143
94
108
107
80
89
81
87
127
86
113
94
140
163
98
125
150
108
113
135
107
113
54
130
148
54
54
105
49
104
113
127
125
144
103
79
110
126
137
49
157
93
103
108
106
94
80
123
112
131
96
132
90
87
105
74
104
93
98
49
133
54
158
59
90
117
159
90
99
131
155
79
151
115
54
122
142
108
120
144
74
45
83
127
49
102
108
114
128
139
89
141
115
155
127
159
108
83
128
77
149
72
114
130
87
101
95
145
111
105
125
99
151
77
115
83
139
173
150
129
109
97
156
140
110
146
54
139
120
77
146
107
121
141
167
98
100
147
113
74
123
98
108
162
74
133
137
142
127
88
81
116
68
149
110
114
110
74
128
87
145
95
137
146
111
81
97
117
139
105
121
113
113
98
131
54
154
76
128
200
54
105
77
108
54
132
77
146
76
102
90
161
76
140
144
84
103
112
120
120
162
133
98
102
77
49
70
98
111
98
90
96
88
143
131
78
107
109
163
114
93
165
113
143
98
102
164
143
102
177
118
85
54
152
103
124
148
95
152
113
78
186
102
145
113
90
54
76
136
63
136
160
176
176
157
165
49
153
61
194
101
87
93
49
108
194
177
68
160
102
155
114
109
145
101
90
98
121
186
98
158
109
118
123
122
135
91
106
92
123
100
91
126
92
78
145
71
80
135
88
98
76
139
81
99
138
49
74
156
173
131
98
95
131
135
108
124
170
97
143
100
159
85
139
78
107
177
140
110
74
114
54
124
54
92
106
95
117
98
81
69
101
107
122
129
74
102
112
143
69
76
68
124
102
127
103
54
83
127
124
106
73
128
89
83
102
90
133
121
145
117
130
151
115
115
139
111
144
182
127
139
115
106
144
110
145
87
145
150
85
99
107
118
112
110
124
125
112
125
105
81
54
95
116
103
159
166
112
143
124
86
76
101
185
98
146
138
126
155
114
54
90
106
125
110
90
116
104
81
108
87
108
97
114
140
122
96
95
122
149
105
120
164
139
154
104
87
61
113
98
104
113
95
111
82
105
128
77
91
168
105
139
76
105
102
98
114
108
174
106
139
88
131
125
121
128
199
61
116
106
160
83
81
119
105
111
120
120
128
127
91
119
61
102
121
142
126
86
130
125
94
125
128
150
124
74
67
98
133
108
99
108
124
81
150
95
123
127
76
140
129
139
88
82
120
100
158
81
84
80
69
138
128
114
188
103
103
84
105
54
152
110
128
98
102
145
95
88
69
139
123
98
98
68
110
143
122
124
89
126
116
138
124
153
101
156
122
135
157
81
81
90
105
157
179
117
144
108
123
108
101
102
110
108
118
54
115
65
144
98
152
95
83
148
115
82
113
111
115
70
140
99
87
140
127
87
103
113
148
180
99
87
102
133
140
100
85
146
135
87
78
117
102
127
129
176
147
108
54
140
90
177
159
159
175
128
148
49
128
77
149
103
123
154
79
86
100
143
123
61
89
113
83
82
83
116
120
118
120
112
137
115
152
95
124
171
102
152
128
95
78
74
140
69
119
126
59
74
92
91
108
85
161
122
108
78
118
157
156
97
78
54
140
108
108
106
116
109
89
106
113
87
137
149
97
144
133
127
101
91
149
108
158
83
130
74
124
113
108
110
84
83
85
156
138
87
171
125
142
148
115
77
139
61
103
125
90
151
140
77
184
105
95
79
100
111
98
117
167
143
168
103
128
98
128
122
125
128
81
200
139
141
128
160
145
106
178
156
49
124
116
102
95
131
180
81
95
116
108
125
71
131
81
84
54
90
81
132
108
128
138
95
173
118
95
95
123
154
113
105
106
99
93
59
81
87
83
97
106
81
54
77
106
102
101
135
133
193
198
102
150
91
158
104
151
102
153
117
108
134
123
123
112
110
133
112
125
108
134
158
138
103
104
102
93
161
98
122
143
123
115
123
85
87
96
118
93
117
74
143
97
54
133
100
102
104
105
93
103
129
113
108
148
177
93
84
54
84
184
106
107
106
148
91
97
152
148
138
194
96
141
103
116
118
54
123
117
124
139
102
96
110
144
54
102
99
132
127
127
83
54
135
101
59
125
108
133
139
111
112
98
120
54
139
119
81
98
137
96
148
105
143
125
118
110
121
133
148
102
74
86
107
200
100
102
121
146
83
133
113
118
158
95
91
118
133
125
160
78
108
129
76
81
150
131
83
105
129
112
125
84
123
148
111
79
104
83
101
147
148
129
83
121
101
177
107
88
134
110
156
128
135
111
108
54
49
157
78
102
115
81
45
108
91
162
49
81
112
143
49
87
77
116
127
65
143
101
98
101
151
141
133
74
131
116
115
186
54
146
78
145
149
99
54
134
102
121
106
104
94
83
157
127
79
164
127
54
84
164
105
146
59
45
149
54
113
130
94
103
103
165
135
54
168
138
59
95
49
127
95
77
68
139
54
122
123
190
158
102
76
135
148
117
142
139
110
149
172
127
89
49
148
54
86
107
73
49
90
95
95
102
117
86
120
102
128
148
107
105
96
99
178
79
77
98
111
156
128
109
138
98
117
72
133
93
143
107
153
141
133
178
125
105
132
98
136
126
151
108
139
172
91
116
134
132
95
89
115
96
149
142
147
87
125
122
167
91
193
127
108
93
144
97
95
67
113
129
119
156
54
110
113
134
113
127
155
49
156
107
130
59
108
138
102
102
107
141
110
135
99
129
102
97
68
114
127
107
180
134
116
82
103
125
149
149
107
139
81
81
143
157
139
143
122
108
105
107
82
92
103
112
182
100
109
125
81
159
89
118
119
89
83
87
133
138
139
144
78
101
103
119
108
157
80
157
148
145
126
81
133
112
113
82
138
148
108
134
95
124
135
87
83
54
103
126
82
69
121
67
135
126
103
85
141
104
93
102
81
96
132
150
84
154
49
125
133
126
102
81
155
125
77
89
92
76
128
97
131
155
76
70
207
91
97
90
114
112
160
77
49
54
95
123
125
172
99
81
103
90
125
95
49
117
97
139
95
92
140
104
105
135
102
117
132
90
135
125
129
87
134
158
110
102
107
109
110
89
133
93
69
148
76
135
76
110
103
122
163
119
166
144
126
96
172
96
145
127
154
90
99
119
157
224
177
147
102
95
124
83
100
135
87
109
99
141
102
98
105
115
137
158
110
73
128
128
125
108
141
82
143
113
49
147
82
73
94
115
105
156
108
109
154
68
147
85
144
128
90
139
113
117
100
169
99
204
94
133
160
59
153
113
108
145
119
82
156
81
143
143
91
115
105
135
76
115
112
54
111
114
54
132
125
144
126
111
161
96
132
140
131
147
49
87
152
120
98
65
124
145
142
116
102
125
110
142
111
107
163
123
144
108
146
100
150
160
126
94
96
77
97
109
153
102
93
76
99
112
148
135
104
127
96
153
87
110
81
106
130
119
156
87
105
138
81
188
145
109
163
67
100
118
84
190
77
80
145
164
143
140
148
113
144
110
143
158
108
91
125
86
98
113
132
105
90
87
100
80
122
167
116
102
80
177
103
95
135
129
144
122
110
49
110
120
129
103
85
54
121
139
100
101
131
153
104
146
135
164
76
104
118
96
67
107
149
90
158
98
140
54
167
95
59
86
117
135
101
54
95
133
98
119
116
132
77
155
97
117
137
98
119
102
97
133
125
118
54
98
49
148
139
124
110
96
89
54
177
141
108
127
82
54
136
106
132
120
159
125
117
78
153
115
98
82
111
168
128
93
140
107
98
108
132
128
116
127
92
120
131
148
129
108
102
141
138
138
124
143
83
139
135
143
152
125
95
123
84
101
108
127
129
126
135
135
96
80
122
98
54
95
141
113
128
68
136
103
82
103
140
95
61
129
69
85
111
97
125
108
147
147
156
126
140
102
124
130
131
87
130
174
172
54
54
108
147
116
146
150
149
159
107
61
91
201
80
81
98
107
102
128
108
133
93
117
106
86
135
133
98
172
108
85
97
98
49
95
103
93
95
136
119
117
145
59
104
147
172
81
81
120
78
119
142
90
69
135
151
82
74
59
120
118
118
105
117
186
111
105
87
141
59
129
108
137
186
125
165
112
59
140
96
127
103
88
94
54
49
132
139
111
149
68
113
114
129
106
117
132
125
76
134
124
137
54
113
79
124
111
102
143
108
95
98
113
74
147
129
133
102
158
128
82
144
131
80
108
89
74
101
122
96
131
87
102
161
117
124
131
127
155
85
161
73
95
54
131
133
97
76
103
95
161
133
148
177
132
107
145
108
128
102
101
96
139
150
114
112
158
59
74
135
80
106
110
98
76
120
190
134
95
94
138
129
98
95
83
127
95
81
112
96
126
59
169
127
108
130
74
76
79
59
149
132
147
101
97
166
81
99
93
101
157
131
83
77
82
83
148
126
118
98
152
106
79
111
93
103
106
123
87
91
158
80
192
132
98
147
111
108
107
120
169
97
145
127
146
107
119
112
104
145
126
125
120
121
131
109
54
111
54
108
128
81
132
102
108
54
95
105
134
109
129
65
49
99
144
115
113
54
96
113
90
146
57
130
80
81
108
149
149
93
172
110
94
155
113
54
149
137
109
112
147
92
54
160
135
146
80
89
85
116
104
141
138
215
95
154
103
177
108
128
114
108
103
130
119
125
93
135
118
118
127
49
95
109
133
125
178
70
49
54
98
98
148
151
79
96
139
145
95
123
101
73
107
80
133
156
87
102
108
82
123
137
108
103
156
80
95
95
113
126
128
147
76
102
138
173
138
119
87
133
114
120
127
93
101
139
82
128
93
98
177
125
78
112
165
82
162
157
135
100
138
67
140
127
98
127
224
59
128
104
104
198
74
151
158
95
142
128
153
81
98
91
194
90
97
140
115
133
103
132
141
80
95
176
151
123
115
90
95
115
90
95
59
107
107
87
67
92
101
139
76
87
112
172
139
74
102
125
125
179
131
111
129
90
54
133
181
88
165
127
124
98
146
151
137
107
102
158
95
145
108
88
98
54
120
81
103
120
93
131
125
150
140
121
113
133
92
86
95
121
77
82
129
97
97
173
81
108
154
108
96
120
98
136
105
87
103
131
175
54
96
104
108
77
112
90
106
67
88
104
127
54
133
113
116
101
108
102
98
45
95
128
128
108
116
128
102
125
76
49
108
157
139
95
145
98
119
120
158
83
82
142
142
121
124
146
141
108
119
98
99
81
74
118
118
113
101
95
95
103
67
109
93
59
141
98
153
106
131
81
119
116
54
81
157
125
103
101
54
106
88
144
112
61
102
138
136
80
101
98
110
83
176
135
54
130
54
168
95
128
108
112
139
128
102
129
103
186
108
144
114
84
143
111
97
113
95
153
179
112
102
119
165
140
133
61
102
131
59
163
169
105
81
74
114
102
102
77
144
152
216
95
148
143
122
98
83
83
61
102
151
127
83
78
175
104
106
111
80
119
133
98
131
119
94
127
108
108
164
123
72
108
139
118
93
154
103
102
130
113
148
118
102
138
79
80
95
125
112
135
154
106
90
107
131
177
111
98
126
115
134
145
120
148
96
155
124
108
132
80
59
99
148
108
127
150
59
132
143
54
119
108
54
102
139
123
99
88
148
49
136
118
122
117
82
104
94
112
137
108
108
138
121
131
109
108
101
102
125
129
77
133
135
101
129
106
149
182
107
170
91
102
93
134
99
113
139
177
95
135
122
78
108
144
125
141
144
144
137
146
109
177
112
138
69
98
147
129
158
54
139
108
155
102
122
74
84
59
81
102
110
158
113
123
155
95
81
90
49
78
77
115
81
131
99
85
141
96
118
95
107
115
115
117
120
137
153
108
94
144
134
112
82
138
117
49
108
115
130
105
124
149
100
103
119
93
143
160
115
145
100
127
76
135
177
114
133
140
82
132
140
106
103
113
114
81
111
109
149
123
111
133
131
146
145
138
95
138
81
84
158
145
150
107
95
69
119
144
84
108
74
112
93
102
177
74
122
96
76
98
156
115
98
129
98
108
82
128
59
120
145
179
115
125
69
119
124
91
107
54
123
151
74
108
115
135
112
130
153
117
141
154
89
82
93
95
129
129
94
112
118
113
131
127
142
99
95
76
106
137
116
87
149
108
115
103
67
67
81
135
139
138
74
82
108
120
138
91
144
100
100
130
137
186
166
102
112
108
112
123
87
147
126
108
122
103
107
59
113
125
209
117
93
109
109
131
146
133
138
141
83
80
127
163
134
144
110
54
98
98
102
54
81
141
125
162
99
54
74
49
107
92
85
89
110
95
102
119
123
110
104
126
97
73
142
107
129
83
72
116
114
65
83
97
133
116
108
102
128
54
103
90
90
111
145
141
138
113
144
147
93
108
54
119
135
118
99
98
112
67
98
178
135
146
122
173
95
118
160
125
96
101
177
87
129
169
95
81
126
106
179
90
158
148
110
143
104
158
120
76
140
98
61
108
134
129
140
94
110
97
135
133
121
86
109
142
127
137
142
144
173
136
116
117
107
116
101
144
157
131
147
105
54
145
112
67
126
110
141
177
87
125
95
77
102
160
148
82
166
129
177
117
157
125
160
166
90
120
116
125
69
125
61
49
95
168
108
107
113
109
49
135
81
124
81
74
129
143
120
114
126
94
92
125
80
126
87
68
78
125
164
94
128
177
154
95
119
104
75
139
96
131
97
131
140
65
127
103
153
140
109
96
89
108
102
106
82
78
95
149
92
104
150
93
81
141
95
135
124
148
135
168
132
87
112
105
128
107
155
131
90
136
112
129
118
164
122
112
85
115
113
133
115
137
82
135
95
108
69
115
120
107
161
128
114
100
124
105
107
91
112
128
125
102
126
122
83
171
139
96
93
90
108
146
87
87
118
98
94
101
117
108
120
88
101
109
74
154
84
120
135
95
214
114
152
125
98
93
118
125
84
79
102
131
104
148
59
112
146
141
103
59
106
98
142
131
107
81
135
102
102
78
108
118
97
108
74
97
77
82
103
61
186
194
96
131
73
112
140
81
188
135
145
127
90
92
148
102
93
106
143
90
134
112
128
89
126
115
49
89
76
59
146
129
135
72
112
95
85
93
77
114
102
160
143
105
49
95
153
146
84
125
102
108
77
165
108
132
83
120
131
121
113
140
149
161
108
93
125
127
102
98
108
90
200
103
110
121
133
103
82
124
98
133
108
157
85
77
112
81
164
95
54
128
99
102
122
152
125
134
170
120
110
198
158
145
123
148
102
125
146
102
87
86
108
84
143
97
109
99
163
54
102
98
65
117
105
92
125
54
76
160
104
132
121
120
144
111
156
108
109
128
80
144
95
102
148
102
103
101
145
138
103
140
141
105
140
98
102
148
187
157
74
107
97
129
144
90
146
54
130
101
105
138
111
139
96
119
105
135
90
132
132
116
102
117
133
151
82
117
95
124
111
93
133
54
61
121
147
98
161
95
129
140
107
131
158
131
128
152
59
200
145
114
160
143
49
167
99
135
144
129
109
118
104
131
109
132
68
124
74
100
123
88
85
154
107
98
169
98
98
108
96
171
165
137
94
54
92
103
143
85
130
59
121
231
112
104
54
91
112
135
125
159
93
143
54
137
61
54
125
104
140
91
141
84
143
145
140
133
100
134
131
97
77
91
102
177
107
128
133
123
152
107
121
104
88
130
133
95
103
110
142
120
78
125
54
140
143
96
157
140
147
100
128
146
103
81
117
74
87
128
113
106
147
97
98
132
164
145
105
102
103
121
142
95
114
131
136
123
54
108
120
131
103
108
168
93
148
108
135
126
130
148
81
150
93
61
114
82
149
111
133
139
87
123
90
54
59
158
146
93
77
95
82
114
102
105
81
94
137
160
103
82
125
108
117
125
144
119
98
106
93
194
144
127
132
136
181
57
162
106
104
108
129
127
85
72
143
97
95
108
105
134
87
179
133
116
119
90
67
151
141
137
83
54
139
109
111
156
93
102
160
82
91
105
110
100
165
109
103
140
103
112
148
158
96
120
99
99
127
123
104
148
95
108
104
163
127
91
87
82
109
158
92
105
85
140
88
136
49
115
95
89
113
105
128
105
126
127
120
109
177
109
117
134
135
81
117
139
98
90
72
102
106
126
49
129
78
106
91
68
127
77
98
136
111
128
146
176
131
96
118
106
110
143
124
147
90
90
167
87
74
104
98
91
101
130
146
102
95
116
95
144
145
129
82
110
123
91
133
151
125
137
59
132
133
162
104
116
98
118
160
68
133
133
69
122
91
168
73
113
94
105
120
121
59
124
135
54
102
115
109
95
126
77
105
144
129
118
67
118
117
133
105
115
112
61
81
146
59
98
130
101
77
140
76
97
176
104
133
87
81
116
77
125
87
54
151
83
152
105
98
180
93
128
153
129
128
127
135
116
85
83
114
98
68
131
125
80
148
96
107
118
116
84
95
104
162
126
191
125
140
130
103
155
195
92
149
132
130
104
131
79
107
89
159
169
123
128
127
148
173
123
119
161
54
163
102
59
122
82
111
122
101
123
115
122
68
96
74
141
131
114
74
155
93
108
101
94
152
127
122
127
145
95
83
54
95
162
42
89
109
129
160
59
93
109
77
134
116
106
81
139
74
131
98
148
128
126
102
140
49
49
116
97
157
91
59
119
134
117
141
137
117
129
124
122
128
164
93
119
94
105
145
123
130
162
133
145
102
98
148
151
125
134
108
95
113
124
129
148
122
117
191
106
107
106
120
97
105
83
111
127
140
131
145
103
95
125
131
85
147
80
97
113
145
144
112
108
115
91
143
93
118
91
102
97
142
145
157
103
139
108
127
90
120
138
98
119
95
140
54
141
98
80
83
146
54
95
54
144
132
54
166
122
123
140
85
156
118
108
117
151
107
110
125
117
95
139
90
100
106
112
99
101
101
128
146
91
100
141
83
131
143
93
94
141
113
154
143
70
91
79
123
164
129
167
139
101
143
128
77
135
118
165
112
74
159
111
85
180
81
122
54
101
62
113
137
88
151
104
96
148
123
131
82
92
131
127
132
111
125
106
98
125
82
158
122
133
110
76
141
107
102
81
59
59
132
133
144
167
142
125
49
177
54
81
85
121
148
108
133
97
140
82
118
98
132
150
177
95
158
105
100
114
129
108
137
78
117
78
110
105
95
115
90
87
54
153
139
126
100
110
95
132
112
93
79
112
106
121
169
112
108
116
111
103
54
99
169
130
81
116
105
98
103
54
144
89
115
148
148
102
92
101
74
94
128
138
181
177
76
148
85
102
177
128
102
102
138
95
173
134
98
90
103
102
98
108
108
85
108
74
116
85
111
123
137
111
100
185
76
112
61
144
99
128
85
98
102
113
87
103
218
113
81
105
96
98
161
126
125
67
158
112
74
91
160
124
130
54
117
80
109
119
93
113
110
113
97
87
133
74
102
132
105
107
110
105
130
98
144
184
90
54
123
68
68
129
130
54
118
54
133
80
142
105
49
114
79
140
80
119
146
54
105
106
175
102
128
59
97
137
133
123
67
93
115
102
103
84
86
131
79
133
92
128
98
89
127
151
173
82
185
124
119
146
127
148
108
127
83
49
105
169
150
98
108
127
110
113
108
78
54
111
115
135
150
120
105
126
141
148
149
115
126
87
69
49
76
135
111
115
92
104
119
105
100
93
120
74
100
106
120
67
82
95
83
93
103
157
84
87
106
69
104
145
110
89
113
182
97
152
118
100
69
103
108
90
120
144
95
54
129
54
111
159
124
143
114
130
117
95
95
108
129
125
103
106
104
131
173
101
131
161
104
73
102
146
96
121
67
130
138
131
132
87
135
108
107
151
125
169
140
97
107
154
96
170
102
114
145
145
138
106
91
81
128
91
113
129
123
82
67
108
101
72
93
103
122
179
125
136
93
107
137
130
125
118
130
120
139
150
115
138
138
128
102
104
160
132
139
100
156
89
149
105
122
160
189
96
96
82
106
183
109
49
116
91
49
135
98
54
170
104
128
79
67
125
108
98
82
148
133
70
182
106
143
145
102
101
115
54
93
126
106
76
108
160
148
74
120
177
131
177
95
120
125
157
159
121
103
150
54
124
137
129
123
134
158
116
132
125
134
143
98
106
101
116
126
150
144
158
124
125
97
90
135
90
87
69
131
103
118
101
133
121
150
104
54
102
124
77
87
147
112
131
129
61
110
144
93
134
105
142
146
107
74
115
199
144
49
78
120
113
117
125
68
108
133
127
141
87
111
86
97
134
49
149
76
148
96
67
81
179
165
111
102
142
54
114
74
101
118
100
70
138
108
87
144
105
94
125
94
98
124
150
162
73
120
137
82
103
128
127
177
98
135
156
83
121
85
153
177
68
129
177
85
98
76
118
131
121
106
97
106
116
113
107
80
92
81
135
93
147
131
80
127
112
113
74
133
148
181
144
158
100
73
110
75
120
113
88
126
132
156
128
102
73
125
70
140
148
108
143
118
78
113
84
54
114
81
147
135
118
91
105
91
125
148
128
131
126
83
94
98
146
138
130
96
140
131
80
97
144
131
178
108
140
106
77
179
139
102
68
81
157
125
162
112
78
74
160
108
212
129
82
132
112
115
102
148
145
59
93
122
108
124
135
113
84
49
76
118
68
122
145
194
54
103
68
125
167
147
145
82
108
148
79
118
109
98
81
151
89
97
103
102
122
96
90
151
147
164
118
81
87
99
145
69
141
104
142
122
130
90
59
122
93
96
110
147
74
81
138
115
90
95
158
105
103
114
118
140
111
108
118
150
127
134
113
142
94
147
135
91
81
127
122
85
120
143
102
143
59
139
144
128
140
108
140
131
124
144
174
78
148
95
119
125
89
98
103
140
123
119
107
95
146
82
128
92
54
113
138
116
113
131
114
139
133
93
73
78
103
158
95
106
106
122
139
54
97
141
91
122
85
81
109
91
108
150
103
114
103
100
98
98
133
102
83
129
99
135
139
69
49
129
138
135
124
78
74
98
102
131
105
96
54
125
124
93
78
103
138
115
102
105
115
101
148
102
77
99
100
102
139
136
141
139
81
125
192
98
121
102
114
61
124
146
141
133
76
111
106
149
112
124
158
177
159
125
85
120
88
105
133
133
102
82
74
134
129
107
164
77
108
108
143
129
143
199
61
142
111
164
179
159
146
120
149
127
128
98
97
134
125
102
174
125
127
74
109
135
101
142
135
98
138
141
85
105
49
85
146
105
140
100
119
163
61
59
110
126
141
119
106
81
111
119
103
82
49
120
158
82
120
54
139
146
84
49
131
133
129
112
129
131
136
122
98
127
144
147
127
95
168
161
119
99
97
96
106
126
115
124
124
127
95
59
138
127
54
96
167
81
83
159
120
148
143
148
153
108
150
125
76
108
87
128
97
68
103
125
87
77
120
107
108
177
133
153
129
116
165
118
54
165
98
121
125
108
85
141
149
128
98
77
117
109
152
102
108
143
127
145
122
98
102
120
123
126
95
170
98
149
82
142
54
126
111
105
54
121
105
95
93
113
164
184
93
68
95
144
106
131
98
102
138
96
98
127
112
54
85
111
157
163
112
98
108
142
99
100
147
144
139
163
87
134
153
67
119
91
107
129
54
116
59
129
67
54
90
54
97
82
117
95
93
132
110
194
61
81
179
81
120
103
171
113
119
100
103
122
90
145
109
128
54
195
85
140
78
49
103
98
102
92
138
108
142
134
115
87
145
157
108
90
78
169
102
148
122
84
113
147
109
126
118
102
107
103
102
107
67
108
98
135
114
105
153
90
102
107
143
149
90
81
155
127
152
124
176
124
96
86
171
106
142
105
156
81
123
81
140
114
105
96
119
144
102
93
139
132
89
86
98
105
179
149
109
101
120
125
106
156
147
82
123
106
117
141
152
115
175
74
146
135
77
98
98
106
114
54
102
96
84
121
171
125
65
144
113
113
103
111
146
156
85
169
98
102
144
170
103
102
102
90
131
102
113
235
98
102
177
100
59
123
139
98
102
101
109
110
69
150
113
110
107
67
115
142
98
143
133
98
160
116
129
77
74
148
74
111
128
116
135
99
100
91
131
103
138
120
133
108
151
129
129
159
122
87
86
108
78
84
105
80
54
117
124
105
59
102
137
133
142
152
117
105
90
94
128
115
69
145
145
127
129
82
133
103
144
155
90
102
140
54
102
167
59
78
54
113
84
113
95
139
115
113
148
113
116
129
99
78
107
54
167
88
95
145
143
59
157
125
54
171
98
74
116
135
106
105
147
127
103
142
110
151
131
113
121
145
74
131
109
106
145
145
90
148
49
61
116
80
54
108
111
128
98
177
101
148
159
124
85
136
126
96
182
109
131
73
96
92
67
155
49
96
67
77
133
102
88
155
67
127
103
54
108
90
137
127
102
113
112
159
136
139
95
102
103
87
115
108
133
118
121
82
163
116
177
163
148
138
95
112
102
137
85
59
102
91
116
113
118
65
105
133
116
168
106
102
150
76
131
80
114
124
102
102
102
81
150
61
137
152
141
93
101
87
146
163
125
82
130
140
107
143
133
73
109
125
54
108
98
143
118
163
112
105
144
115
54
106
108
96
105
106
130
107
135
93
137
128
127
143
87
145
109
166
157
131
98
101
143
192
108
54
156
160
81
49
108
125
132
154
155
95
96
117
161
104
102
148
103
163
124
93
142
119
80
105
120
102
54
144
101
168
133
103
100
147
172
134
129
77
104
180
129
85
116
197
81
111
111
76
105
79
117
102
59
126
100
140
96
83
144
112
123
97
102
95
67
101
95
116
138
125
162
129
103
119
121
107
110
54
108
120
108
82
77
146
123
163
96
143
94
134
103
139
98
59
110
115
117
90
112
122
95
91
100
125
97
116
74
191
49
112
100
144
150
128
108
143
146
122
113
135
106
119
94
91
146
151
127
104
116
54
133
142
95
68
103
140
95
135
126
74
78
139
103
134
121
143
54
140
150
157
74
119
78
83
91
89
168
108
84
133
98
95
129
126
92
130
148
145
74
129
78
74
103
148
93
97
113
116
105
108
115
95
124
59
120
100
97
102
83
105
92
99
194
103
144
103
88
81
127
91
102
88
125
78
116
128
150
115
116
179
148
76
107
93
81
154
144
54
95
108
86
98
114
129
125
105
82
162
153
104
105
144
114
107
116
84
148
91
84
125
90
98
164
154
49
141
54
150
130
87
197
177
102
146
82
49
204
115
94
102
108
87
131
96
78
110
102
120
110
193
162
90
49
87
132
135
126
61
131
139
113
87
89
84
77
79
155
165
88
124
129
95
135
129
61
148
156
108
117
109
113
130
123
54
95
59
151
73
144
54
170
137
128
74
168
97
82
171
81
115
95
95
106
158
114
139
100
141
183
133
102
126
122
90
69
122
91
122
100
115
54
109
83
87
143
123
123
121
99
148
124
83
109
121
127
67
148
113
105
139
86
133
159
98
125
111
119
78
91
104
146
149
141
109
102
151
135
95
117
83
121
85
131
189
97
77
125
105
157
143
188
150
128
137
59
107
98
98
119
155
114
109
98
126
106
142
143
122
68
124
103
133
102
153
128
74
77
65
103
163
133
144
94
143
90
85
158
139
143
104
131
72
108
125
73
83
178
114
139
83
143
85
102
122
123
98
103
105
118
177
128
54
74
111
108
74
91
73
79
105
162
125
95
141
139
144
141
95
95
150
93
133
129
103
143
121
69
128
154
91
91
97
113
127
131
148
96
152
124
97
148
133
82
129
83
95
74
101
105
100
149
156
89
108
128
80
93
167
98
103
129
127
108
76
113
121
96
95
165
127
124
177
138
95
59
87
103
120
119
114
100
102
143
102
113
54
133
125
83
145
133
129
107
192
81
131
96
54
120
126
77
96
103
111
77
98
123
108
101
124
154
102
69
87
128
130
106
129
128
129
74
122
145
115
99
125
154
130
61
143
151
102
104
97
102
108
105
137
59
115
152
78
163
140
49
139
95
125
103
105
132
144
95
148
102
85
118
140
49
157
124
194
81
177
110
106
190
150
77
141
146
100
144
85
98
97
151
125
57
189
108
76
83
95
128
144
92
94
116
108
112
115
76
144
93
147
109
137
90
95
77
177
95
98
113
77
88
115
54
127
103
54
147
123
95
119
156
154
175
82
81
87
99
167
147
143
59
103
105
198
74
162
97
135
98
105
104
96
61
143
120
108
102
113
105
76
122
113
98
105
96
141
150
103
66
54
129
145
148
122
146
106
108
123
95
95
77
54
121
88
54
135
131
92
132
101
101
123
139
85
74
162
169
120
95
101
67
75
156
141
133
151
125
194
97
165
102
139
113
80
94
115
148
84
131
135
82
98
59
157
87
89
98
85
99
127
82
95
103
112
102
145
181
118
151
159
126
159
103
54
143
100
103
156
142
138
91
129
160
178
115
108
115
144
163
120
135
133
98
103
163
111
90
104
121
156
160
148
150
112
87
107
130
170
101
191
79
147
138
175
165
148
147
116
98
104
132
135
49
107
76
137
105
148
147
81
83
132
144
140
128
104
101
145
102
120
144
81
169
117
134
87
133
130
121
92
81
134
110
113
128
85
141
76
100
132
176
113
54
103
74
75
149
140
139
149
80
139
123
157
166
49
100
77
92
73
89
125
102
135
69
148
76
145
90
77
133
77
91
93
108
70
69
67
135
120
81
97
120
54
111
59
124
91
158
112
161
151
54
118
182
125
69
130
102
127
118
139
120
144
130
151
103
123
127
102
88
103
106
138
111
168
79
127
138
168
110
102
94
116
118
91
114
149
54
74
129
49
132
129
135
124
167
77
59
144
142
140
111
103
128
107
97
101
131
95
191
95
184
134
151
146
92
113
95
151
79
104
111
158
95
98
108
213
102
108
95
123
93
90
87
125
98
133
125
104
79
113
115
119
77
149
125
153
146
105
99
74
103
54
111
100
135
164
128
143
133
83
161
128
83
98
93
54
177
115
97
112
100
117
100
108
108
95
102
122
88
143
87
61
77
141
128
131
120
122
103
119
108
81
129
97
80
146
95
95
67
76
103
121
108
137
82
67
102
110
112
103
155
143
102
105
108
54
95
125
161
157
138
123
119
143
93
153
161
82
93
158
105
97
98
101
121
156
90
173
95
90
98
76
103
129
95
129
54
137
112
168
81
98
127
95
87
112
85
108
89
108
108
105
128
87
129
102
91
82
161
188
94
108
138
102
101
101
77
107
116
103
159
135
106
57
140
49
134
81
113
109
73
126
184
85
105
133
103
165
98
96
120
98
110
119
155
121
125
127
103
164
59
143
106
91
182
119
62
91
77
142
158
126
103
76
93
125
145
88
124
124
73
90
133
106
119
144
131
102
54
156
88
116
177
79
111
181
85
68
90
67
104
111
104
81
146
103
95
128
161
155
111
118
74
141
59
144
54
146
108
98
111
160
156
135
83
82
139
95
138
144
78
125
103
78
85
132
114
84
96
114
140
80
175
151
145
112
95
125
108
61
175
93
143
108
122
130
141
92
147
54
116
154
79
92
99
77
126
131
98
85
132
105
124
77
104
128
126
131
123
76
93
90
95
119
112
125
143
81
135
96
105
163
108
103
63
54
54
135
158
145
139
122
125
68
160
103
103
134
54
168
90
108
150
118
125
133
101
129
116
90
148
97
95
134
161
113
133
115
92
143
160
163
117
54
109
149
49
81
128
84
78
92
89
116
119
90
137
128
112
167
143
83
187
131
113
130
111
173
104
110
87
113
182
122
106
49
131
108
124
114
123
105
125
143
148
112
102
95
80
144
168
120
114
68
120
140
103
108
87
132
116
100
131
143
90
145
135
95
151
108
148
136
112
154
156
115
145
109
107
124
159
116
69
113
145
122
162
49
131
112
144
113
74
93
106
102
76
143
198
152
106
148
92
127
102
127
49
93
128
122
125
122
98
95
153
98
181
122
87
132
136
130
104
127
157
71
98
133
120
114
123
110
82
69
153
54
81
133
77
67
133
126
104
74
96
167
128
134
149
87
100
106
177
77
117
115
153
117
95
109
89
98
103
98
128
145
54
133
121
123
93
89
104
150
98
126
59
164
130
95
148
113
135
54
123
120
89
96
97
148
146
108
126
166
161
151
112
49
183
125
119
101
108
137
132
89
123
99
144
54
87
54
105
115
65
108
95
86
97
148
92
96
105
143
82
132
111
129
139
94
98
94
116
168
114
146
117
115
106
102
100
149
95
81
108
135
107
135
132
125
129
183
98
107
112
160
113
59
76
148
130
98
115
105
138
80
133
77
93
139
102
49
178
77
76
178
88
126
116
98
122
103
123
128
119
153
105
49
81
105
131
81
88
113
87
77
87
113
61
169
94
145
125
116
101
135
68
68
108
171
95
125
121
119
98
121
54
82
91
188
123
93
54
92
61
137
147
136
139
129
134
123
120
133
102
148
135
95
113
96
113
128
125
54
108
120
125
77
101
59
98
117
49
123
91
115
121
102
113
116
108
54
159
134
148
92
85
104
98
113
125
125
78
114
105
82
59
179
102
105
98
108
143
112
69
82
108
155
133
144
146
101
91
154
118
124
112
80
130
77
95
157
108
120
104
56
77
112
125
79
140
122
49
114
105
124
123
82
112
108
93
127
77
54
129
61
156
121
144
108
180
102
114
107
128
130
61
103
159
133
68
84
115
103
134
125
108
128
102
127
95
116
139
98
125
133
134
54
166
100
161
135
142
59
87
83
144
69
120
111
112
141
115
177
98
141
125
103
113
42
49
143
54
112
168
151
103
106
108
144
95
148
70
145
81
148
127
139
102
103
113
93
91
131
111
140
138
178
102
110
135
143
106
144
126
148
129
98
154
105
108
54
140
90
133
142
97
90
139
147
133
111
145
147
108
123
96
126
54
108
65
83
146
86
54
101
114
83
121
76
54
108
115
120
102
143
118
98
106
94
93
102
67
68
117
106
102
80
83
189
93
105
122
102
106
80
45
91
151
155
109
102
99
85
112
155
74
114
139
111
85
87
109
98
125
82
59
83
153
100
108
95
116
176
139
61
49
95
127
74
120
110
140
112
97
113
54
154
159
142
141
108
95
106
83
88
87
143
123
108
144
77
91
186
133
143
98
146
98
125
149
95
108
74
102
144
100
100
108
149
109
156
78
113
145
54
99
186
147
84
128
130
111
102
115
103
152
137
105
93
77
120
158
108
125
120
89
129
81
108
102
95
125
102
150
157
137
111
117
80
136
108
123
94
125
144
68
125
145
103
141
158
100
125
132
122
129
171
219
134
99
95
137
67
98
108
83
144
102
91
113
124
101
49
83
113
93
95
133
128
78
139
68
113
148
127
158
108
105
54
84
123
98
108
54
91
131
141
144
172
110
109
144
76
105
133
176
115
121
136
72
75
87
113
119
147
71
132
76
158
83
116
118
179
129
78
129
111
100
98
93
77
106
127
90
82
119
90
158
107
131
142
91
98
69
87
95
106
108
142
144
115
118
139
141
103
54
94
80
87
105
158
85
163
99
82
94
102
84
115
97
54
127
127
67
106
104
159
105
142
103
102
120
136
133
96
87
123
79
102
81
106
133
89
101
73
67
104
106
108
159
108
150
112
54
80
115
144
91
105
139
115
54
137
106
102
143
110
95
118
49
143
73
133
168
136
81
120
118
148
109
120
108
98
54
136
131
93
150
144
105
115
74
163
143
98
97
136
99
124
117
102
170
93
89
97
88
131
177
108
77
160
139
92
54
140
129
59
87
108
94
101
118
143
121
99
87
106
141
98
152
127
93
103
113
59
100
74
115
137
102
127
134
120
153
126
106
112
102
83
145
119
199
144
95
153
125
123
97
148
102
93
97
102
109
63
119
177
108
167
95
98
87
180
129
120
100
93
115
106
87
61
103
128
153
54
175
88
159
108
93
61
95
135
148
116
146
125
103
78
89
116
95
132
98
125
76
96
122
81
107
74
68
102
108
130
111
54
110
85
115
96
98
147
96
108
65
90
115
54
112
120
143
94
69
108
108
114
120
119
139
140
120
159
94
96
113
54
102
167
160
131
115
87
118
54
135
94
150
93
159
76
69
98
117
80
97
150
95
54
98
161
124
93
165
125
91
98
118
122
148
98
103
158
182
116
144
121
196
155
125
95
141
125
148
133
74
111
113
143
158
162
116
148
133
151
105
140
81
147
92
160
94
113
108
145
110
158
138
91
128
125
104
115
83
113
128
135
108
54
95
106
146
123
120
105
108
157
78
131
141
106
143
102
125
153
143
141
105
140
133
135
144
107
103
96
138
177
96
108
176
89
79
101
116
131
127
115
132
112
102
95
81
87
103
130
109
90
81
133
124
93
117
113
139
105
141
135
131
76
102
143
141
148
131
175
128
113
158
80
101
105
79
121
77
97
104
112
72
122
128
111
128
135
105
118
103
91
168
160
141
146
128
119
141
86
113
77
131
112
83
82
151
113
158
76
93
107
96
102
54
95
144
95
148
98
78
87
87
122
106
129
106
173
95
144
123
179
84
99
54
127
84
113
125
116
82
116
123
170
54
82
162
98
107
126
91
124
144
135
114
99
102
103
83
77
148
181
112
74
143
87
148
111
104
54
96
93
82
124
102
87
97
97
146
129
74
153
95
149
113
128
73
59
135
96
87
108
103
81
114
115
99
136
152
116
54
91
79
119
106
114
82
131
115
125
118
101
74
93
110
165
100
108
141
93
145
113
133
122
54
152
150
93
71
99
82
100
116
144
77
54
165
99
98
111
102
80
123
124
124
154
140
165
143
117
65
115
127
108
54
127
118
177
135
59
85
113
107
171
115
104
117
126
111
117
99
111
146
100
118
145
131
105
158
113
68
125
49
133
125
126
77
74
98
100
85
95
117
67
163
132
102
92
139
125
156
122
110
179
102
168
116
130
139
164
67
106
54
108
139
103
139
82
138
122
138
151
109
91
169
130
113
132
125
99
95
77
108
124
99
93
129
59
102
145
122
103
186
95
85
75
69
102
83
149
123
87
87
104
54
108
111
98
113
120
166
169
91
164
96
99
133
96
74
124
133
89
95
135
125
131
81
126
104
102
116
105
86
90
84
101
125
161
83
103
116
93
133
94
98
127
159
129
110
74
54
143
128
158
78
157
100
81
128
129
102
104
49
67
125
138
77
54
144
107
104
129
54
113
98
97
77
81
69
119
107
118
119
142
127
117
116
68
93
98
124
99
105
123
143
130
127
149
150
124
74
97
101
88
104
87
142
120
123
106
136
139
88
78
113
165
59
129
165
102
133
109
96
141
130
127
54
177
120
129
135
80
74
107
128
87
115
95
85
128
105
125
139
102
169
112
139
143
119
54
94
123
83
146
110
84
134
105
129
111
95
69
95
54
133
89
120
154
96
111
100
102
123
147
182
125
125
49
108
98
120
93
96
135
104
133
83
77
105
93
96
158
87
154
92
180
116
153
102
163
59
144
94
104
125
166
136
133
152
108
128
146
137
124
144
95
133
93
136
90
113
139
156
170
143
98
167
142
104
142
90
164
143
103
138
111
137
54
93
108
112
83
95
146
104
131
144
100
113
115
77
79
98
103
149
74
106
88
135
124
104
161
131
128
107
90
99
105
108
141
87
110
49
77
102
143
154
54
83
119
125
107
81
143
61
129
144
143
74
59
143
142
81
180
132
49
105
118
114
76
132
115
107
122
83
132
106
98
126
65
95
145
81
191
103
120
108
114
54
97
148
150
102
98
67
113
95
145
105
82
96
243
102
153
108
70
77
125
49
97
49
147
73
155
113
125
119
97
185
132
119
102
98
95
102
119
131
49
158
103
108
158
77
75
157
139
124
135
120
133
123
121
143
49
128
98
131
120
113
76
95
92
67
111
133
111
98
85
102
139
80
129
124
127
77
112
102
120
140
102
131
115
117
148
83
91
125
100
130
115
184
124
54
54
139
146
127
120
131
123
95
119
82
76
77
74
133
130
110
101
110
127
128
108
125
61
148
118
135
105
150
111
83
129
87
133
61
93
139
130
125
129
146
108
130
125
125
108
105
144
77
103
120
121
124
81
115
135
113
54
84
94
49
90
126
119
102
95
138
103
159
87
155
148
145
128
61
112
135
160
69
54
129
123
127
49
96
109
118
146
141
99
154
94
74
126
95
123
87
103
111
105
125
131
132
145
129
137
100
128
130
95
90
148
70
67
78
93
133
106
151
54
179
106
95
96
86
91
128
127
95
104
102
107
147
98
131
175
108
162
122
143
133
132
120
120
104
96
82
54
107
105
117
110
59
81
164
151
162
139
125
124
91
110
134
85
49
102
77
172
76
127
148
118
62
143
109
159
91
83
146
90
54
145
154
128
107
54
49
148
115
141
99
133
118
120
129
145
67
167
76
120
98
135
122
108
102
87
147
112
101
118
68
143
87
135
87
118
92
123
113
209
93
116
132
136
108
110
85
111
81
139
82
126
144
95
154
107
91
78
78
102
176
111
140
180
156
158
127
96
94
95
139
144
128
121
90
116
108
122
102
143
69
145
113
168
54
110
114
49
121
151
160
110
85
129
114
107
76
129
114
122
96
104
91
54
120
85
141
145
111
67
101
171
104
125
98
100
154
113
173
96
81
106
94
90
150
114
168
96
93
92
87
133
81
151
174
120
85
90
54
113
144
98
144
128
127
59
104
131
108
96
101
137
144
65
101
126
138
74
101
143
133
59
115
122
115
140
135
119
147
143
136
98
85
108
135
54
145
91
165
112
59
163
120
112
182
134
153
134
130
92
98
148
176
110
94
54
131
140
116
81
61
146
120
138
128
102
165
139
141
130
95
106
130
54
135
143
115
122
120
131
54
117
169
150
54
68
117
87
77
85
98
85
105
95
110
103
144
118
91
120
91
178
134
76
108
180
102
80
134
120
107
90
144
104
98
118
113
87
120
154
49
81
112
161
95
118
77
168
98
98
54
54
125
99
128
54
135
106
81
74
120
113
139
133
131
170
125
97
112
102
150
163
124
146
81
177
54
138
112
177
92
91
127
133
127
95
74
87
118
127
117
116
87
95
49
119
149
149
106
114
137
147
102
49
126
54
148
120
135
85
49
126
148
87
102
95
114
102
54
54
120
85
177
129
102
109
110
140
161
97
92
112
54
93
170
86
80
112
120
94
135
102
144
95
116
129
81
104
102
110
124
186
111
96
155
108
130
100
106
140
89
127
149
108
98
95
90
151
109
133
150
89
129
97
59
112
99
135
89
98
95
144
81
100
135
167
103
85
105
127
109
133
129
120
121
148
49
120
135
133
105
103
81
102
120
95
102
82
102
146
119
86
104
102
119
158
150
132
103
164
100
77
97
129
98
162
103
87
112
97
154
148
135
98
68
78
111
121
130
160
95
131
123
120
98
158
98
145
59
105
92
104
95
95
98
149
105
122
102
104
82
157
146
153
125
109
128
175
54
114
81
111
87
103
108
103
102
130
178
59
132
73
89
67
108
149
102
113
121
54
135
77
133
101
59
219
127
116
96
135
177
98
190
49
90
126
122
82
120
102
81
82
142
78
108
131
157
127
76
117
113
100
123
131
103
156
69
172
102
189
109
69
85
121
82
129
101
154
117
95
74
129
129
83
113
150
122
143
102
95
105
127
81
89
81
106
78
177
95
69
129
103
129
160
85
76
162
54
121
92
99
143
122
59
103
179
122
145
177
153
122
180
144
54
87
172
74
104
128
146
103
133
150
150
67
59
199
115
98
127
67
85
139
112
59
81
107
97
54
90
136
126
109
69
127
165
116
111
177
133
61
59
129
103
92
124
112
124
89
194
148
128
150
104
74
74
185
98
54
126
101
167
122
130
95
79
49
112
105
98
76
108
139
126
137
122
98
90
54
143
133
118
87
130
117
156
74
108
81
123
139
133
113
106
96
129
140
141
95
142
122
90
176
129
151
130
78
94
106
77
96
74
158
178
124
115
124
74
135
117
151
177
74
113
90
108
120
144
147
76
95
97
94
139
128
151
164
90
111
101
85
77
103
108
141
93
138
180
119
118
135
152
83
59
123
125
142
103
69
135
98
129
135
90
101
97
124
113
138
185
81
153
109
108
125
99
123
104
132
129
98
91
105
121
91
128
77
137
117
166
102
122
126
108
127
113
129
155
116
140
145
102
98
102
69
59
98
159
103
54
54
129
105
90
101
106
98
106
76
146
113
98
134
133
111
102
82
115
72
109
49
95
145
81
144
83
131
122
94
139
130
145
132
98
86
54
121
145
98
90
127
107
102
120
77
116
94
116
128
85
131
98
125
131
76
101
102
113
95
177
156
103
54
123
95
141
146
102
114
77
98
95
100
130
102
144
123
96
118
54
148
92
91
126
146
90
144
99
118
49
102
101
105
69
105
129
97
143
140
177
107
68
81
102
103
102
143
99
140
98
119
165
158
83
191
110
128
146
95
125
153
118
112
103
103
84
107
129
120
122
76
148
105
126
114
102
150
120
88
123
143
97
81
143
125
95
136
94
119
131
152
177
142
92
118
123
137
146
108
136
148
173
140
115
59
117
100
162
158
131
129
82
118
99
98
126
101
103
81
148
110
77
102
120
98
96
104
154
129
102
196
182
127
94
174
140
78
197
49
122
71
74
110
123
181
155
124
83
82
89
143
115
115
99
103
98
152
133
157
144
113
125
61
162
77
133
106
125
101
116
74
123
98
86
54
127
117
107
69
102
49
105
134
95
213
54
104
49
124
125
120
93
180
182
76
102
59
103
108
179
136
81
103
90
98
152
109
98
100
130
133
99
124
145
131
232
83
106
61
122
150
54
118
74
134
165
118
98
97
77
90
160
98
151
114
127
126
112
107
102
121
54
135
179
87
108
120
139
147
98
107
153
120
123
180
118
91
111
140
133
168
108
91
160
119
119
119
116
129
115
68
93
152
105
75
159
78
76
115
94
126
125
138
108
85
81
89
108
102
113
112
98
108
135
134
123
113
130
129
83
125
106
54
133
121
175
126
127
105
124
95
81
124
113
106
104
127
125
158
161
101
108
80
102
167
69
113
131
133
144
87
144
111
129
113
156
166
119
158
151
145
49
105
122
138
136
102
130
143
117
147
134
144
108
134
114
131
65
117
108
200
95
54
106
135
103
99
127
90
135
89
109
113
124
97
110
112
93
102
54
122
111
80
116
54
93
108
97
102
115
160
102
135
74
83
116
102
123
54
105
61
116
112
161
107
131
93
135
120
169
130
135
116
134
128
165
135
82
113
141
119
110
167
85
63
77
141
86
104
112
95
143
115
74
168
142
49
140
158
138
89
131
67
128
116
131
123
148
146
112
91
154
95
102
134
54
136
145
108
119
81
106
148
102
108
161
127
145
99
85
98
103
121
90
105
96
113
124
129
85
125
127
85
87
81
119
139
125
93
108
95
59
141
140
89
107
90
149
140
115
54
112
130
129
120
150
139
147
116
141
145
106
121
84
82
97
130
157
83
130
93
129
89
118
158
119
133
145
125
177
101
193
82
102
126
140
132
83
59
130
152
145
123
144
116
135
123
198
98
103
98
121
160
133
108
103
158
95
138
121
163
102
116
129
148
165
136
199
123
137
126
97
106
102
91
118
108
133
76
174
126
85
123
124
123
82
115
130
78
54
76
102
129
78
168
119
123
115
98
122
120
137
162
128
94
141
49
140
115
115
87
108
79
88
135
69
104
129
146
81
98
142
106
59
130
81
157
135
129
114
139
147
107
113
69
134
128
77
118
115
78
186
85
113
125
54
145
133
103
98
108
108
147
144
103
54
90
122
173
113
102
76
115
162
133
143
142
96
124
82
175
54
137
103
117
127
148
87
136
143
95
154
116
149
95
83
121
113
151
87
95
102
61
93
134
127
128
116
112
112
81
102
113
118
78
161
70
144
112
139
146
117
113
77
97
131
137
126
85
129
137
102
141
102
186
150
54
151
81
129
90
93
224
154
98
74
95
95
122
159
172
129
49
149
140
102
145
134
165
107
84
113
104
126
109
93
87
106
116
143
118
188
165
144
102
61
97
98
107
131
125
148
159
162
114
104
95
167
86
118
146
172
95
70
130
86
121
177
74
177
87
119
49
102
109
122
102
139
127
87
120
109
162
59
54
103
82
126
105
102
109
82
81
81
87
73
140
177
74
113
76
85
78
96
190
103
130
121
54
95
70
103
54
144
179
112
120
108
131
88
125
124
78
127
77
110
107
148
82
127
172
90
97
89
49
149
119
172
102
78
106
115
107
125
140
175
119
54
123
101
147
114
134
160
108
142
115
108
103
95
73
109
118
78
71
102
54
146
162
153
145
108
154
100
141
156
77
161
99
116
158
95
126
108
132
138
61
128
132
128
113
110
150
105
93
122
102
168
108
54
83
127
127
115
99
145
127
93
120
109
155
118
105
95
117
124
190
77
93
67
140
156
139
119
74
77
123
124
76
90
77
113
87
121
157
149
148
102
96
153
112
98
121
135
113
85
54
87
112
77
59
76
164
125
200
109
123
113
185
95
130
61
130
103
128
109
106
97
134
106
122
108
117
96
112
102
112
108
90
139
95
102
127
90
111
129
102
96
81
132
116
120
106
117
97
131
128
89
82
135
114
85
112
107
127
148
146
164
82
97
78
107
54
97
98
146
116
105
116
132
91
49
146
95
108
85
88
105
157
93
165
116
59
102
49
98
144
109
81
125
125
115
90
201
107
120
94
136
128
79
125
175
177
99
95
110
158
126
132
94
81
130
116
117
86
146
91
135
98
131
153
113
126
137
116
126
151
93
130
103
133
161
82
133
133
115
120
90
100
87
97
133
82
98
79
144
112
118
140
120
149
134
90
132
143
115
121
111
139
101
116
140
85
54
102
145
121
94
113
54
140
162
110
93
158
130
162
130
128
91
137
105
139
116
82
127
141
146
140
107
126
54
107
98
109
143
54
85
197
151
162
86
120
144
99
140
107
91
148
127
113
162
130
115
91
102
127
87
98
59
112
101
54
102
99
120
131
124
103
85
90
122
142
148
123
125
103
100
115
125
146
84
90
108
96
103
141
84
201
150
154
141
160
115
121
110
101
160
54
129
87
81
67
121
113
89
125
103
116
94
133
102
111
114
102
98
142
103
156
101
105
107
108
125
113
95
123
118
152
139
109
88
148
169
143
118
118
153
96
116
125
115
67
122
109
74
102
54
147
141
155
89
124
158
89
81
186
141
76
122
101
112
138
98
87
145
141
144
161
78
95
179
94
98
106
129
114
132
119
121
133
78
106
93
128
125
125
129
81
151
103
120
107
161
128
106
148
108
95
118
107
97
104
85
69
101
133
77
109
113
130
102
114
108
111
125
158
98
135
95
135
128
177
136
95
127
120
102
77
145
67
155
145
95
119
75
127
87
128
100
113
148
113
129
111
95
69
54
98
94
119
153
129
78
105
108
134
98
170
113
103
132
107
191
102
100
168
106
140
149
135
69
100
88
160
137
122
85
115
147
131
119
95
119
117
101
139
116
107
185
105
115
103
107
122
97
101
116
101
100
157
86
132
82
131
132
77
83
158
108
83
148
190
159
115
121
69
177
124
94
157
54
102
111
78
132
49
156
147
102
119
102
117
117
100
81
93
135
139
74
113
107
108
200
103
130
84
118
168
82
140
69
124
108
93
67
95
197
148
93
109
99
125
135
54
98
110
118
177
59
100
97
87
139
83
140
99
54
137
67
147
74
117
91
107
133
158
144
98
81
120
147
112
127
118
84
139
54
129
59
69
109
138
116
97
101
108
107
81
136
107
101
103
120
144
161
155
106
87
74
126
61
87
145
72
93
94
128
129
124
85
148
81
108
77
108
92
98
125
128
110
125
148
154
102
122
123
139
117
130
97
54
126
122
78
127
93
127
93
81
133
148
129
138
146
96
113
59
118
135
96
54
206
111
91
128
108
102
137
81
78
95
119
95
141
161
136
164
98
80
173
78
59
76
105
167
163
125
83
131
123
125
135
117
125
182
146
141
95
83
135
87
98
131
102
135
61
81
163
125
128
79
157
77
102
82
98
102
173
105
86
128
133
179
111
105
68
131
65
81
81
76
98
80
154
103
87
127
107
149
104
160
137
132
124
96
138
76
159
128
81
148
107
122
115
110
173
155
69
95
124
123
133
140
113
90
123
49
102
81
126
119
140
104
176
76
82
113
124
108
149
146
148
130
101
90
123
90
108
151
160
124
112
112
180
103
114
134
133
123
93
139
158
100
82
83
186
118
101
127
102
145
95
134
113
131
143
74
90
128
120
77
115
123
193
104
95
115
98
102
128
97
194
93
74
109
167
83
99
96
128
124
115
113
108
102
168
106
98
85
109
160
117
108
150
138
89
154
96
144
89
120
130
146
90
133
128
99
154
82
145
143
191
98
90
133
154
127
82
162
136
85
105
106
162
110
119
128
106
79
76
107
128
126
162
104
79
93
93
158
110
137
148
108
112
218
146
112
87
89
149
82
140
127
151
139
130
81
54
182
95
113
113
77
108
102
102
172
101
126
103
167
101
81
115
122
49
49
148
147
59
135
94
54
125
118
77
108
145
108
54
163
108
113
150
122
87
101
103
81
85
90
122
227
125
124
76
87
106
76
97
115
128
148
108
166
134
93
103
54
93
106
102
85
160
130
131
101
180
155
92
97
105
108
95
172
95
100
81
125
145
119
190
98
130
115
95
83
135
126
93
102
49
102
113
98
93
104
81
137
93
77
177
107
109
95
106
111
132
54
177
134
92
132
80
95
104
141
103
123
117
74
119
54
90
124
85
114
133
141
141
109
114
148
118
90
54
107
96
163
128
116
133
103
74
125
155
106
85
103
140
116
159
103
135
102
134
132
102
94
103
121
91
102
116
128
117
127
125
143
101
135
134
112
131
128
95
169
107
118
128
102
98
98
114
68
85
159
121
77
95
83
148
146
54
154
111
99
138
97
131
110
114
95
49
131
161
110
102
108
132
93
146
129
109
141
101
101
103
102
102
130
77
100
159
144
94
125
153
54
88
122
102
90
77
96
150
102
80
107
103
121
147
143
123
106
149
59
128
98
98
175
108
166
166
105
112
128
125
100
156
95
100
87
112
116
97
95
116
128
120
146
141
143
138
101
151
143
93
130
122
90
130
135
189
138
131
85
148
168
98
145
154
119
54
137
104
102
97
98
110
83
140
123
140
78
90
138
106
127
168
133
86
90
93
153
150
113
102
121
135
119
127
112
117
145
95
137
108
72
125
139
109
128
135
94
138
168
95
106
69
155
101
125
111
126
133
123
79
119
117
114
95
121
122
89
87
158
107
129
126
126
128
106
115
101
141
155
112
54
108
124
112
87
175
111
94
77
119
120
120
103
95
80
95
89
98
130
105
122
116
81
154
125
158
147
138
80
109
188
128
103
124
108
131
118
93
111
73
149
108
182
157
103
110
161
124
103
49
113
141
81
118
99
83
143
148
131
119
98
157
100
122
193
108
61
115
98
124
115
65
198
103
61
83
76
99
189
140
143
108
109
104
77
135
108
109
83
90
99
125
86
157
88
170
144
95
194
116
151
113
152
135
128
67
124
107
125
145
112
151
95
97
104
120
98
140
137
97
95
97
106
89
111
113
165
217
107
153
95
173
93
120
73
186
139
87
54
100
108
106
96
89
125
110
99
76
120
100
126
176
115
146
54
123
117
108
83
59
102
129
49
117
185
153
127
181
128
144
144
49
165
160
182
74
113
102
107
81
143
108
102
54
70
54
119
54
172
148
123
106
102
132
54
149
127
147
78
87
141
122
91
78
126
96
154
95
139
104
107
94
178
135
147
103
81
121
106
54
150
161
151
87
104
140
59
108
90
106
115
111
128
75
74
74
80
84
95
120
128
116
122
224
132
142
151
128
128
95
107
140
184
102
160
139
122
106
95
115
192
102
125
105
54
87
108
90
59
45
119
112
54
54
156
101
127
154
73
148
103
150
141
127
149
111
95
117
123
134
124
87
124
177
92
143
126
172
177
49
103
103
90
122
226
93
124
129
183
106
78
94
133
54
149
113
81
138
97
95
98
87
107
120
95
134
89
119
103
172
139
102
101
125
68
99
99
108
101
116
120
103
183
149
76
142
122
103
94
180
115
155
100
59
112
133
137
133
91
95
130
125
96
81
133
177
143
125
103
100
157
143
77
119
133
128
126
116
49
122
78
125
159
84
85
108
126
81
116
69
87
118
131
68
81
148
54
165
130
107
148
85
116
144
161
142
132
165
102
108
54
149
103
108
74
127
82
157
153
54
93
158
102
98
117
122
113
93
108
134
139
74
54
129
150
125
103
91
92
83
103
95
130
83
85
87
122
54
88
54
106
131
101
92
159
102
118
54
54
119
128
106
115
143
49
141
148
131
131
103
49
80
125
114
184
179
54
146
49
114
67
146
102
84
74
108
77
115
105
101
140
141
124
85
140
113
131
96
150
148
78
118
72
116
125
102
94
105
125
145
108
74
133
144
93
122
108
119
186
99
125
148
125
122
113
54
142
146
90
83
87
158
49
133
109
106
123
129
95
103
95
77
96
92
93
103
102
49
77
98
125
102
103
95
118
103
108
102
129
107
74
95
148
54
59
54
159
95
124
91
120
108
91
113
99
125
42
135
81
142
77
137
169
107
123
127
92
119
141
119
76
120
105
163
142
98
93
127
95
111
103
142
81
113
144
218
138
156
135
121
77
117
120
108
153
133
149
82
90
149
135
154
107
150
105
94
115
87
157
125
102
120
103
90
105
77
119
67
186
126
102
161
73
151
123
107
126
108
113
121
125
110
135
87
137
96
143
129
129
95
102
83
99
143
113
49
100
135
103
144
115
102
171
106
118
93
100
93
76
139
117
59
106
91
137
76
98
127
68
78
134
74
74
94
124
111
160
130
105
124
116
106
129
155
131
129
87
102
128
123
113
144
93
91
113
135
105
88
120
77
132
157
108
104
103
100
74
111
106
115
93
142
123
82
133
82
81
118
166
104
95
148
119
129
122
138
96
166
104
139
67
147
81
184
90
148
95
224
54
93
165
162
118
114
127
144
98
156
103
127
108
76
138
87
98
125
135
128
77
121
144
85
123
200
129
153
105
54
128
69
45
77
178
128
103
133
81
79
139
116
112
119
140
94
54
158
105
137
87
108
95
106
151
101
127
108
74
119
80
177
158
177
98
123
167
158
81
123
128
100
113
103
177
111
93
54
145
108
105
81
103
149
115
87
108
54
143
218
108
102
131
157
151
124
148
101
123
128
75
80
76
161
115
126
99
127
123
105
147
172
108
54
97
103
126
128
150
118
168
92
110
126
161
123
74
106
54
148
148
95
102
88
148
114
149
90
125
113
98
120
54
125
173
54
131
137
103
88
101
87
78
91
119
118
143
115
158
180
175
177
120
104
124
112
110
154
112
95
103
162
150
128
78
101
117
67
99
170
75
91
177
91
141
105
68
120
59
181
116
139
125
166
108
131
83
49
103
129
121
147
131
100
188
107
108
162
54
98
115
102
167
72
110
155
91
128
100
145
153
131
74
97
129
105
85
146
85
129
80
125
118
118
94
111
115
107
65
113
105
131
142
100
106
95
167
125
54
118
115
127
127
118
81
122
120
146
103
124
109
91
118
121
134
116
148
123
156
81
93
82
123
144
135
108
125
147
165
124
138
138
81
101
82
139
116
127
120
120
125
225
146
140
143
145
90
139
182
116
107
127
173
111
124
102
176
95
82
129
98
128
147
98
113
126
85
131
141
160
141
152
139
149
142
100
103
148
81
102
122
113
83
144
69
107
124
97
89
172
103
91
98
106
121
98
98
106
90
137
125
103
82
110
99
125
143
112
148
130
49
133
103
107
98
123
96
138
125
141
114
123
140
142
113
123
85
133
98
116
111
81
103
117
67
139
140
108
95
133
102
87
114
124
83
77
110
49
142
103
98
96
128
140
102
74
93
79
131
116
96
118
102
132
98
92
137
95
84
123
118
107
95
74
105
112
82
129
103
122
134
49
96
105
99
105
120
158
128
130
141
160
133
107
102
108
87
123
67
83
103
85
125
106
115
80
111
128
127
98
184
133
127
135
172
146
156
150
103
131
151
148
102
102
65
81
59
140
108
93
119
110
126
117
78
81
160
115
121
125
112
150
120
108
121
132
103
124
95
102
139
200
93
59
88
140
118
98
135
98
123
73
117
117
97
146
74
129
80
200
139
105
103
87
109
118
103
160
130
97
95
90
78
122
95
104
177
123
101
77
135
113
59
105
103
132
144
98
134
127
86
105
105
133
106
126
145
120
108
105
54
163
158
125
103
97
130
129
124
81
82
163
91
136
96
104
54
140
190
49
97
167
80
170
77
102
138
104
132
73
194
97
94
54
102
131
103
121
138
139
118
49
190
104
125
69
157
102
105
161
61
108
74
108
87
85
98
136
134
146
122
118
80
123
112
77
143
140
61
112
67
131
140
105
92
82
96
134
97
87
132
148
122
123
137
148
164
95
146
110
125
87
68
133
113
118
108
104
141
165
102
95
140
122
54
96
107
158
77
97
108
131
121
90
81
123
128
96
98
144
120
120
139
140
95
145
117
100
125
130
128
108
77
156
97
95
122
128
49
96
117
83
153
116
74
96
173
143
85
102
118
102
125
68
161
140
106
106
159
102
107
54
128
145
133
123
98
74
54
65
154
108
121
124
95
125
102
103
133
138
87
113
102
93
105
103
79
144
115
107
83
98
114
172
115
178
114
110
143
111
99
54
123
147
177
137
111
82
88
54
135
102
89
132
113
124
76
125
94
104
83
135
125
140
105
124
107
101
163
90
173
132
199
129
105
77
87
177
156
115
97
115
98
87
106
81
102
127
160
116
139
91
111
82
94
49
146
90
108
118
102
109
95
148
81
118
115
87
127
135
163
133
93
116
159
96
179
86
82
116
90
109
102
85
118
110
152
91
108
95
165
212
139
103
139
106
90
156
98
209
122
74
126
106
132
72
102
143
98
145
137
102
165
93
99
120
136
157
110
74
98
81
95
108
84
117
54
129
159
169
131
101
83
113
102
130
98
108
144
124
106
145
118
129
161
118
99
117
88
102
125
114
125
117
158
154
113
122
118
113
99
156
155
108
95
154
167
181
119
147
74
108
123
123
115
93
103
117
49
136
139
140
83
85
102
162
122
112
132
94
70
54
132
125
108
128
94
165
49
92
93
134
136
148
131
99
105
84
118
148
49
49
92
121
125
128
102
125
111
98
68
185
101
54
95
137
89
132
132
106
148
108
98
54
78
102
49
121
95
108
112
132
194
104
132
82
59
98
59
100
158
183
118
89
78
105
125
143
132
99
108
132
118
102
86
125
108
86
108
146
132
158
119
109
115
105
108
124
128
135
90
150
127
125
107
83
102
112
161
125
138
81
112
98
120
147
117
128
127
69
147
118
128
85
172
144
112
122
95
140
105
98
101
155
81
165
105
84
98
87
115
164
123
148
87
102
166
92
115
126
125
139
139
112
81
100
103
141
122
106
111
148
132
92
103
126
151
129
125
158
142
165
54
95
95
153
143
108
104
173
139
120
77
139
103
124
113
81
125
74
59
113
99
122
148
125
87
125
94
106
157
115
121
134
147
118
150
101
112
137
90
77
73
114
117
143
81
157
127
150
132
81
111
143
120
82
101
115
93
108
155
80
105
145
73
141
194
164
139
138
147
152
78
87
80
54
148
106
156
129
143
149
105
95
169
82
139
93
125
102
108
88
108
125
125
150
97
77
74
158
108
144
49
77
171
141
81
117
163
121
122
104
85
130
154
120
101
131
140
95
98
128
98
136
93
90
85
79
113
110
102
79
94
126
90
144
90
97
54
145
78
109
81
101
110
112
128
200
147
147
95
151
98
91
128
158
152
104
77
125
139
92
164
49
54
96
127
108
124
167
114
131
54
130
98
177
163
111
109
123
139
98
122
131
212
106
67
97
73
107
101
105
125
92
120
142
100
108
155
82
144
142
165
128
91
120
134
74
123
69
179
77
59
98
108
148
98
87
106
126
78
121
111
91
78
133
94
128
147
113
102
67
148
112
135
90
106
128
95
114
128
123
137
196
160
76
78
124
172
128
138
102
125
137
124
134
119
115
108
138
103
106
123
101
112
93
108
74
121
146
108
132
102
106
159
143
90
83
116
148
109
123
143
149
102
108
113
130
137
92
133
136
88
76
125
102
145
102
133
109
120
116
129
177
119
133
132
93
165
84
154
77
133
158
105
106
151
84
120
69
109
54
83
88
147
133
98
197
79
135
147
108
102
90
125
59
136
77
100
103
177
49
98
93
139
161
129
122
95
108
113
152
150
177
139
159
156
136
125
84
78
74
141
188
116
148
118
147
99
133
123
87
121
116
142
158
92
181
115
124
138
49
102
111
96
115
132
127
103
125
111
151
180
118
124
135
148
127
139
98
105
83
165
74
95
120
158
107
103
108
136
131
111
54
120
102
90
180
87
121
80
93
126
120
114
86
95
119
69
155
115
136
108
147
159
140
96
143
95
98
177
125
124
113
105
127
93
179
98
49
102
126
98
95
82
163
90
108
54
141
81
148
54
85
216
125
132
54
77
138
136
125
98
76
111
76
99
133
162
118
110
144
133
126
158
108
67
102
121
87
191
130
121
102
150
123
76
147
129
177
92
54
90
128
115
102
112
101
152
105
81
119
90
105
103
129
61
85
87
91
182
78
49
54
108
131
102
160
111
103
104
95
88
109
103
146
98
167
118
102
131
102
96
108
108
158
171
124
81
85
113
68
116
114
132
95
160
131
131
143
141
101
105
102
95
81
132
94
186
93
165
120
120
68
140
90
102
135
164
158
100
139
96
155
164
127
104
125
126
112
86
92
157
95
102
88
123
116
87
82
85
81
133
174
102
142
102
145
78
130
117
135
200
127
103
112
133
101
131
115
131
49
129
123
108
133
97
101
133
123
156
125
154
104
113
102
74
114
147
150
127
155
136
98
125
118
122
126
177
98
128
103
106
146
87
137
102
125
132
90
106
90
95
128
89
54
54
45
80
163
105
54
177
93
103
100
168
93
139
105
147
54
113
119
121
127
90
108
130
81
84
142
129
54
190
87
149
114
109
112
65
104
49
115
54
137
108
84
128
146
135
156
173
119
167
108
112
133
139
164
92
89
123
156
149
135
148
121
177
106
103
62
95
143
156
139
74
79
105
152
103
81
135
181
102
135
123
220
68
59
77
49
70
67
96
108
96
110
106
77
130
173
114
74
125
148
128
131
100
132
159
152
158
166
116
137
120
82
98
105
95
194
118
113
115
59
125
91
142
118
131
138
155
90
87
143
108
116
146
166
67
116
54
139
130
133
140
68
194
98
106
122
84
82
92
90
146
144
165
113
135
131
121
131
102
105
105
49
150
182
107
113
123
95
172
103
105
137
124
94
105
59
87
108
76
127
164
146
123
102
143
126
76
148
125
123
160
108
222
122
180
129
81
117
140
112
144
151
100
96
110
135
119
74
155
127
93
120
115
160
54
90
120
96
118
138
124
108
127
118
91
85
110
113
161
102
168
161
117
129
100
154
88
76
165
82
87
76
132
135
160
108
138
153
131
108
125
153
125
122
79
140
171
102
124
102
49
149
102
114
84
108
151
135
94
54
119
100
139
130
81
54
107
125
126
131
157
98
73
133
130
98
103
102
128
159
105
138
156
95
54
54
158
148
74
149
131
117
133
90
127
122
96
147
125
144
122
140
149
123
111
90
128
107
102
135
81
169
135
76
119
106
112
98
93
96
137
49
115
102
78
49
98
95
78
105
89
129
93
105
183
76
108
120
171
158
101
87
147
98
74
114
112
85
119
98
102
125
140
109
144
98
142
173
83
169
102
122
153
167
93
114
61
134
157
96
78
148
74
170
133
59
129
95
134
151
121
103
111
133
81
96
142
99
185
109
95
89
138
176
113
137
81
83
49
95
145
105
131
108
161
129
101
90
162
93
137
87
83
154
140
180
102
159
119
78
133
143
120
87
147
130
111
115
49
115
95
117
110
108
95
77
114
129
136
83
160
94
95
110
176
98
71
107
122
135
141
95
116
103
98
116
88
54
54
76
103
103
137
136
151
95
82
154
138
131
169
107
148
106
108
125
148
93
138
165
137
67
108
125
143
118
108
102
111
95
96
102
184
140
134
69
139
109
103
120
98
74
81
148
77
82
81
175
106
97
54
150
120
194
127
95
98
138
143
95
81
143
81
128
102
59
131
54
82
93
108
104
103
85
98
77
75
134
90
94
97
143
95
155
114
121
98
121
107
76
118
87
81
120
137
96
103
163
131
131
93
89
112
54
124
131
194
134
125
98
126
95
126
148
117
54
54
157
157
114
107
68
139
123
146
96
131
98
163
153
107
95
87
163
98
65
95
120
166
108
97
78
135
111
54
135
143
123
90
112
135
101
98
92
72
137
143
57
87
149
138
144
115
118
54
77
114
76
128
149
82
99
133
121
95
125
98
98
102
134
105
103
180
136
114
49
116
59
83
84
160
105
186
163
119
108
94
105
130
141
121
103
62
67
144
76
122
74
134
153
142
139
108
79
128
140
123
159
54
116
82
141
112
113
135
98
82
67
115
117
54
54
160
54
130
86
132
130
148
151
81
81
108
80
128
124
120
82
149
61
123
118
128
59
107
107
80
137
132
90
120
98
150
108
92
83
97
119
152
54
95
95
98
106
81
114
82
103
89
132
155
137
149
137
99
54
123
54
111
139
126
78
84
115
161
96
161
87
97
164
102
108
148
119
160
85
111
70
105
154
133
113
148
54
97
110
81
165
109
144
83
75
90
91
98
121
170
78
114
67
145
98
54
87
83
98
54
117
98
115
126
165
76
125
108
115
105
123
93
104
88
154
93
182
93
132
139
195
148
149
111
125
154
117
137
117
103
158
147
118
153
87
146
148
120
88
157
163
141
128
103
109
143
110
54
67
126
164
104
151
84
67
102
122
101
86
102
104
157
126
126
109
130
146
120
104
100
130
59
84
98
113
103
143
97
126
81
54
100
84
147
67
113
125
120
98
95
108
113
91
93
128
94
116
149
134
98
95
129
130
142
161
125
148
122
90
110
76
103
80
180
108
133
92
89
147
97
101
105
113
146
112
74
147
107
125
108
102
127
148
148
146
120
87
107
108
103
92
139
112
107
105
77
81
54
97
124
112
165
76
113
127
92
161
132
156
137
140
105
154
69
133
59
87
104
94
123
134
166
130
119
116
74
108
95
110
59
105
76
146
144
110
97
116
103
113
49
140
67
187
110
90
157
108
129
131
147
95
128
99
90
113
79
82
115
158
108
124
78
92
107
149
104
145
148
135
54
161
96
111
101
113
54
102
140
162
130
133
96
75
126
86
95
88
120
135
102
140
149
116
113
77
154
82
144
140
128
71
77
108
123
126
103
95
54
143
102
101
68
88
168
93
93
129
126
108
118
67
93
129
93
162
193
133
127
103
93
142
84
94
73
89
142
106
140
132
94
82
90
102
113
106
125
113
102
107
112
130
155
98
108
98
83
144
161
136
129
102
152
127
92
102
101
141
95
128
206
106
143
95
93
160
153
134
143
101
111
54
102
80
113
54
115
140
110
128
67
49
78
120
149
111
74
123
143
105
98
104
128
95
113
128
139
93
108
107
62
125
120
146
103
108
98
74
151
133
148
98
158
95
129
59
54
152
167
108
142
131
105
98
124
135
119
135
102
95
95
104
49
111
146
93
159
69
141
98
127
113
68
101
113
95
102
104
146
104
124
123
133
125
143
91
125
124
118
100
107
94
91
125
216
150
103
54
128
61
146
74
125
49
107
77
116
125
90
126
133
158
92
135
125
102
102
90
148
81
113
93
135
149
104
106
81
123
142
102
110
122
113
105
98
107
124
96
144
129
105
112
128
96
168
91
106
116
122
82
107
120
120
103
114
98
122
115
140
116
100
129
75
108
97
156
146
97
138
129
177
142
179
154
115
132
73
143
59
123
97
119
167
99
94
128
136
104
113
54
103
91
109
158
119
122
129
148
151
102
110
93
80
130
108
116
85
54
167
87
134
140
102
134
105
107
77
149
102
61
103
113
83
102
135
135
103
108
69
123
108
139
130
68
124
78
73
180
126
156
93
103
128
128
129
147
81
70
106
49
166
177
96
151
98
105
153
146
98
194
97
122
95
112
42
129
119
136
109
100
143
139
107
140
107
123
146
177
106
92
112
101
108
148
93
155
109
112
158
120
83
107
121
167
173
96
113
93
108
98
129
99
153
160
108
83
137
103
122
142
116
139
108
93
79
83
179
81
180
125
136
187
138
59
95
81
137
122
94
137
149
113
103
93
112
59
94
81
123
54
81
78
147
111
135
119
158
196
95
122
116
96
77
123
59
128
93
147
102
108
192
112
139
97
98
126
120
87
84
142
83
99
148
135
102
132
148
133
118
169
140
141
113
95
104
106
143
116
108
122
92
108
199
128
107
77
131
117
110
90
125
135
122
87
95
122
190
87
142
98
108
67
115
77
108
135
145
133
150
125
73
125
176
86
139
166
98
125
54
130
57
155
134
127
139
121
112
162
154
131
150
124
158
108
111
82
138
54
132
95
98
120
124
117
59
134
108
167
128
76
54
146
104
113
107
133
102
112
54
125
129
135
128
112
143
110
219
95
143
133
132
122
136
150
83
138
61
193
80
102
124
129
105
157
117
115
49
97
161
116
110
85
133
77
139
127
87
138
147
158
158
100
91
113
124
150
100
95
92
54
144
115
68
113
99
145
79
139
108
125
162
143
153
118
74
87
158
110
146
101
85
137
148
74
102
135
93
49
108
103
76
169
130
127
110
115
102
68
126
144
106
139
116
108
98
78
102
178
102
83
74
108
107
111
90
89
83
131
100
181
111
87
117
122
103
108
113
106
98
114
108
118
49
115
114
104
133
100
127
188
116
123
155
131
156
98
125
93
144
93
127
108
82
145
149
134
76
87
69
87
98
79
106
146
91
140
108
98
113
107
104
87
108
153
166
127
87
120
155
70
103
118
158
116
83
74
97
129
127
107
127
120
102
95
108
148
103
144
78
49
102
123
119
142
123
83
124
75
181
131
140
98
121
81
76
101
132
79
120
101
54
98
116
133
135
109
95
67
131
102
126
123
95
115
148
126
127
146
126
77
110
151
129
90
139
133
107
108
120
132
144
121
114
95
77
121
131
103
119
123
114
125
113
49
135
154
145
81
140
90
109
74
59
90
78
99
95
98
95
137
177
110
82
67
111
112
122
77
147
74
119
103
138
97
113
142
96
145
157
87
133
126
114
147
122
131
105
103
121
54
115
93
118
54
113
106
153
128
126
103
167
126
54
157
92
121
177
106
95
113
131
107
69
124
82
114
115
130
95
113
98
149
128
135
106
89
93
104
103
103
109
125
112
88
149
105
123
123
82
103
149
124
207
54
67
131
82
118
59
99
129
95
122
97
124
133
133
61
92
141
133
100
116
153
97
118
111
105
122
106
100
116
148
160
96
120
113
128
85
117
169
141
54
161
114
128
161
159
61
102
128
104
133
119
144
136
124
81
90
67
97
145
146
170
119
116
95
218
120
82
130
123
116
111
153
103
85
135
115
54
117
49
96
49
151
168
94
95
146
146
83
123
128
135
136
91
149
102
119
136
108
102
135
100
124
165
133
158
128
54
135
77
98
113
125
154
95
148
80
117
156
101
124
117
108
139
124
82
113
105
113
119
98
158
91
112
95
141
49
93
105
82
137
150
177
75
133
176
96
148
61
93
100
124
147
104
121
141
98
73
142
75
96
88
135
110
144
102
76
166
129
105
129
177
101
139
121
120
125
82
77
143
137
128
95
127
141
77
135
134
123
120
97
89
165
105
103
87
192
104
108
143
129
108
129
90
107
81
61
132
139
106
114
121
74
155
102
153
98
103
89
117
145
106
97
133
116
114
103
82
202
125
104
133
82
137
133
54
122
156
113
137
97
76
115
123
116
93
153
76
77
140
82
93
103
177
98
110
144
63
144
144
169
104
144
136
85
99
54
116
49
135
109
89
141
95
59
81
108
118
132
161
172
54
110
121
95
79
130
49
179
154
108
95
132
147
105
124
95
93
95
111
98
168
98
132
132
161
59
150
106
122
128
123
127
153
113
71
118
54
101
102
148
144
146
103
101
49
100
149
87
70
113
95
85
87
112
72
101
111
130
139
54
122
158
93
107
91
112
107
110
87
102
97
107
125
140
131
118
77
81
107
90
117
145
113
80
151
79
54
83
94
100
115
90
98
105
177
167
95
144
120
130
107
120
156
109
100
93
125
125
114
101
142
136
69
168
102
145
102
113
107
95
95
99
125
54
108
125
106
123
59
83
82
210
80
153
158
129
109
140
148
117
117
90
147
178
108
49
113
107
117
92
102
101
54
117
83
95
114
118
128
193
87
90
155
49
144
98
95
93
133
131
163
96
102
182
125
87
102
148
85
103
81
102
130
81
95
102
81
98
116
95
138
90
126
102
106
118
77
95
85
115
59
177
114
93
128
81
164
96
70
131
147
103
160
99
180
118
146
128
102
155
96
106
67
121
81
108
114
90
114
125
49
127
119
140
86
158
122
136
105
93
123
78
156
121
145
158
59
100
49
119
109
146
85
82
108
95
152
112
101
169
133
98
159
110
141
79
125
81
122
143
122
173
93
128
59
155
144
155
124
173
131
54
103
146
113
76
49
139
97
67
129
102
126
131
117
128
113
114
74
93
140
89
95
76
77
191
104
143
90
132
147
134
104
118
97
162
68
149
142
139
77
103
135
124
93
102
54
146
106
83
81
103
118
158
87
139
135
144
168
150
95
155
127
79
153
131
132
119
105
156
125
121
103
119
102
133
169
128
159
107
78
79
129
119
93
161
54
138
103
105
138
123
98
94
181
123
102
67
144
123
136
140
85
93
113
54
157
109
125
106
92
110
145
107
59
110
127
156
95
83
104
113
114
96
160
220
81
96
87
134
127
54
112
125
159
118
152
140
121
93
136
106
153
122
83
61
95
121
114
106
120
126
121
149
158
81
113
146
224
98
98
109
68
106
127
133
137
86
83
108
104
110
80
136
189
102
98
100
93
120
120
148
76
81
68
103
54
111
155
158
129
95
148
165
82
125
122
137
96
128
114
135
100
128
148
97
131
144
105
141
163
118
101
138
131
98
131
92
107
144
124
97
147
140
54
102
135
139
108
117
114
81
100
169
96
102
61
113
158
106
119
144
186
113
142
103
116
112
98
98
143
102
164
146
128
131
102
146
68
191
143
77
82
142
87
93
114
127
76
103
93
95
102
175
95
139
143
109
185
112
158
98
134
95
122
96
104
191
108
128
151
133
105
103
113
75
149
147
125
181
121
96
117
76
131
76
90
117
137
108
82
124
90
68
117
83
54
113
102
54
132
83
166
172
76
102
104
134
95
136
83
110
90
98
90
54
114
54
139
103
125
89
90
101
144
108
106
148
168
80
108
82
72
95
108
142
103
118
111
102
100
180
108
90
128
150
168
98
113
152
107
128
137
102
95
54
170
140
115
158
85
108
115
104
102
82
96
95
83
108
87
109
155
149
91
109
146
106
54
120
105
177
147
108
95
163
117
108
103
146
124
139
93
108
59
112
109
118
105
147
102
102
139
135
125
141
129
118
122
68
95
78
148
59
95
109
49
94
124
54
49
160
90
140
165
152
155
110
54
134
74
131
108
150
82
150
81
98
125
135
114
77
139
49
116
143
92
105
138
102
95
109
116
96
95
110
61
125
150
103
119
131
149
107
176
98
104
91
87
49
139
160
135
148
115
130
82
148
124
54
128
95
92
77
101
84
49
49
153
108
106
117
168
141
121
101
109
111
74
121
123
90
97
95
113
83
101
105
119
162
78
130
149
131
97
152
131
112
54
77
133
110
81
113
128
107
76
77
127
113
160
78
121
116
59
93
101
95
135
141
104
103
169
54
106
104
103
135
104
110
95
116
96
122
81
95
146
95
146
104
114
119
132
115
128
149
128
155
133
140
49
108
81
137
180
149
86
106
164
111
118
155
97
125
90
93
133
98
170
125
105
108
95
155
100
140
151
163
157
104
125
120
159
138
124
97
67
102
89
157
81
119
177
49
135
91
136
141
129
117
113
159
139
116
87
132
136
89
81
77
93
72
119
180
114
81
98
69
165
96
106
70
156
92
115
108
101
90
134
156
95
131
131
49
104
141
113
105
76
145
114
172
113
95
93
131
144
115
103
103
160
128
123
103
95
147
122
101
95
127
90
78
68
95
79
100
74
144
81
131
171
190
128
113
104
134
140
77
118
105
109
123
138
54
147
113
199
103
108
45
113
92
103
76
163
155
126
124
153
95
126
142
149
123
105
123
85
102
108
156
80
49
121
128
108
143
161
127
147
54
118
87
87
123
175
81
91
144
133
142
104
77
122
83
102
132
159
144
147
61
87
90
54
140
105
153
54
131
131
115
113
108
82
94
100
88
115
91
113
151
105
114
54
108
74
105
105
148
138
73
123
96
102
143
103
135
159
90
102
93
98
122
143
119
123
59
88
156
101
54
141
130
69
180
95
98
87
127
113
134
76
140
131
188
150
90
93
93
95
91
140
108
164
132
157
117
136
147
137
82
93
92
98
54
97
78
117
105
122
175
118
83
180
113
98
101
92
112
102
131
177
97
130
101
164
148
144
162
105
111
107
91
61
133
71
103
133
158
120
120
54
49
88
132
112
122
144
113
148
73
161
49
108
137
117
125
137
102
137
121
108
143
129
95
167
112
74
154
67
101
167
102
119
126
110
148
108
91
107
105
82
115
128
98
142
153
148
77
95
91
136
108
164
145
89
162
89
54
126
129
234
107
101
106
108
81
153
143
177
123
171
133
151
150
156
103
118
54
85
149
175
140
116
118
110
140
172
94
123
108
188
95
100
117
142
92
120
54
83
100
112
103
131
149
112
95
108
96
91
101
140
49
151
97
91
96
153
134
189
129
105
138
177
101
125
102
186
92
120
103
110
49
148
74
81
87
95
179
88
118
108
185
143
124
54
140
108
76
109
167
97
143
109
134
54
163
102
102
142
135
91
158
85
199
102
135
129
127
108
54
99
119
148
82
113
122
96
85
120
89
65
77
77
110
85
88
116
98
87
93
90
101
129
126
145
102
105
106
172
102
126
144
135
106
147
125
92
94
116
152
114
133
122
146
76
118
160
102
133
78
123
148
177
80
127
90
90
81
147
125
67
98
127
111
138
120
83
145
84
95
81
117
143
140
91
177
107
111
114
128
74
177
147
108
128
106
140
102
122
173
76
103
130
125
113
84
157
125
108
92
82
117
132
145
102
139
132
101
93
146
135
132
104
93
106
135
82
108
49
116
74
78
97
54
132
118
105
74
108
75
138
119
127
100
93
194
122
97
119
68
85
108
130
162
150
128
93
137
157
124
135
149
82
120
128
144
146
78
128
109
54
107
132
54
86
122
93
83
90
143
110
117
108
83
81
103
134
182
165
141
185
108
143
158
87
79
102
103
103
49
102
89
97
155
54
89
139
102
120
101
49
90
54
108
96
105
177
131
87
54
154
111
121
102
132
103
128
135
119
114
159
151
126
108
84
131
102
103
133
106
128
103
54
148
91
98
98
102
96
90
89
74
79
119
184
134
153
148
77
127
116
103
82
81
135
105
121
138
118
166
99
103
124
87
102
129
132
150
131
95
191
61
103
54
157
152
78
95
155
126
132
95
179
93
130
120
101
95
67
96
144
139
128
116
83
81
150
131
84
129
165
137
88
118
99
108
54
151
159
95
128
81
81
120
111
131
72
125
87
103
107
76
139
133
146
166
143
100
114
147
102
144
102
108
87
107
73
169
95
54
144
125
172
106
87
106
174
179
103
113
87
143
54
113
59
102
132
122
140
137
118
97
128
94
93
115
130
118
141
175
82
112
49
127
172
125
104
167
135
106
96
108
133
102
90
87
102
125
98
106
153
101
163
97
117
148
67
93
143
105
78
116
82
103
95
110
105
125
120
121
133
102
112
114
179
139
111
132
117
68
138
85
119
68
128
124
107
115
96
160
145
59
108
75
87
129
89
102
96
108
94
126
77
67
143
73
147
102
146
168
102
165
139
106
87
91
156
146
95
168
129
54
93
126
148
128
85
111
137
130
133
128
76
99
139
87
108
120
125
133
108
135
95
114
81
133
133
108
95
154
124
91
109
145
160
54
102
156
117
153
118
108
112
152
150
105
131
108
162
85
121
161
79
74
102
102
101
186
129
108
124
97
54
125
97
143
54
110
90
113
94
54
97
132
117
102
95
141
54
108
106
82
178
122
94
128
139
158
102
112
95
110
87
74
103
149
81
96
162
102
108
179
103
134
129
98
113
190
90
97
81
74
101
94
141
93
94
86
172
122
76
145
109
108
140
98
81
125
126
95
78
74
160
105
122
143
95
86
98
90
110
114
101
125
134
123
151
95
128
159
135
128
119
95
146
83
119
90
79
130
95
152
155
135
100
102
90
152
152
151
114
119
120
96
92
150
125
49
76
137
54
98
148
115
123
78
143
98
144
100
120
127
98
128
69
132
98
81
158
139
103
117
122
83
161
165
135
130
131
131
101
97
74
100
180
105
145
59
140
94
77
115
104
97
148
115
139
102
83
107
148
109
140
106
133
158
129
90
110
114
111
69
81
59
116
61
100
105
96
74
167
81
80
92
84
67
59
82
102
141
118
116
108
129
81
81
135
100
98
83
98
150
125
80
96
139
158
105
235
137
212
146
94
103
114
135
84
136
128
139
49
144
113
137
138
54
125
135
97
155
128
98
98
120
103
95
153
133
160
122
145
102
78
95
109
98
96
141
113
76
140
135
54
184
115
78
96
123
98
194
113
126
92
97
177
127
134
175
124
100
128
106
153
123
107
163
108
122
107
110
163
134
94
145
134
80
74
49
115
168
114
125
54
54
131
118
77
139
76
67
110
116
94
95
102
107
90
105
100
153
92
107
74
125
140
93
121
115
140
148
123
98
122
107
113
81
73
128
96
104
68
105
144
132
125
54
54
82
122
150
124
108
142
150
98
92
117
54
186
116
81
143
79
98
128
129
95
80
105
82
59
111
112
77
108
129
156
94
95
102
159
96
143
98
133
92
142
108
131
74
123
85
99
143
155
98
125
118
54
172
119
141
144
77
97
115
127
156
90
116
95
108
67
102
135
132
96
156
85
132
128
105
167
140
99
108
130
122
123
59
69
91
49
127
98
145
137
74
125
95
90
108
103
106
85
154
54
135
98
172
145
87
54
98
80
129
146
101
146
115
119
128
148
109
109
105
105
96
103
133
165
97
98
133
98
108
180
74
125
112
102
128
131
120
94
115
146
118
77
94
108
95
83
124
100
141
106
108
116
125
112
167
122
49
97
90
111
143
77
114
114
133
98
123
118
98
87
182
98
102
123
144
118
102
151
164
93
83
99
119
125
82
131
54
108
85
103
94
112
103
127
118
54
124
146
134
113
93
129
54
93
102
85
98
95
54
106
132
76
100
83
131
128
122
102
67
98
172
161
95
140
54
108
59
99
113
136
109
92
125
99
98
118
81
111
139
167
151
128
102
116
105
143
118
126
105
126
112
116
115
97
113
160
139
93
108
108
148
107
144
98
126
127
135
140
163
74
160
98
122
170
109
107
97
107
108
113
119
195
113
49
131
90
129
94
106
100
110
143
118
98
83
132
95
146
95
105
98
125
136
113
128
89
113
111
59
131
166
176
126
134
103
125
93
139
193
68
152
106
54
73
59
187
143
77
144
145
127
171
109
98
97
103
74
104
163
83
87
122
93
106
122
126
177
103
103
160
94
127
76
81
81
91
138
102
59
49
97
149
137
135
74
139
193
131
100
87
122
128
59
102
105
181
128
141
143
74
127
123
145
85
146
108
95
93
107
81
100
169
113
95
54
164
113
98
133
76
96
124
132
113
140
132
59
105
122
140
148
112
119
102
106
94
183
115
99
95
116
83
77
125
100
176
103
144
119
108
149
100
70
85
123
61
99
137
130
179
109
203
102
85
163
130
74
93
120
106
120
113
54
67
61
54
176
149
139
87
126
115
115
129
136
67
87
122
120
158
131
82
163
87
135
80
137
68
132
159
130
116
54
113
95
146
119
98
77
180
173
165
129
127
146
106
106
175
149
128
148
119
85
133
121
109
140
118
143
158
108
89
112
86
76
167
106
153
120
162
137
150
128
105
125
95
95
154
83
87
169
107
130
156
157
132
95
181
77
113
76
77
128
74
61
119
152
115
103
93
142
135
105
148
117
96
87
83
118
54
116
132
120
179
109
76
119
113
95
113
134
96
103
90
138
91
149
120
134
154
129
102
140
128
112
138
120
112
147
84
89
117
158
120
93
85
85
78
113
98
148
169
114
128
95
110
103
120
124
128
78
151
110
140
144
61
81
54
127
96
144
138
59
114
110
74
102
49
133
146
74
97
152
99
102
102
59
108
143
87
98
126
157
82
102
170
133
87
107
120
49
178
110
122
98
124
54
177
123
129
117
95
98
143
54
65
171
159
112
116
148
184
157
94
117
94
88
138
132
78
131
149
111
113
147
103
109
82
128
91
100
128
103
114
142
66
117
142
111
194
163
125
134
150
117
131
103
95
59
118
140
79
145
116
68
90
138
155
125
113
94
130
108
148
141
135
135
80
110
103
127
161
95
139
78
134
108
145
101
120
129
95
161
67
139
193
113
134
134
200
101
155
133
107
59
102
89
151
135
126
80
109
135
105
118
97
115
145
118
93
137
117
132
113
107
139
146
61
68
83
90
96
65
95
125
115
157
97
108
77
131
148
103
71
150
104
125
74
95
135
148
147
128
94
139
54
108
153
115
98
160
145
133
54
124
74
108
138
105
86
100
155
85
139
102
54
135
160
170
103
109
116
135
123
106
142
112
109
123
84
106
111
93
90
128
122
98
128
93
161
108
145
94
133
133
133
106
98
141
100
104
102
139
85
141
121
109
54
99
111
93
80
98
121
134
108
113
123
108
146
117
71
102
133
122
131
138
92
102
106
135
102
148
95
102
98
124
97
93
177
89
124
239
89
135
54
133
128
148
135
129
139
80
105
69
145
115
82
100
144
127
96
149
103
131
87
108
95
127
171
73
96
122
96
157
146
121
103
134
104
140
142
91
143
76
136
93
118
116
108
153
54
152
61
108
98
101
74
146
98
74
113
127
115
49
74
177
125
77
98
117
120
109
87
131
101
122
113
102
80
106
125
116
82
97
116
54
80
91
54
129
124
133
81
90
105
94
127
133
108
155
127
92
114
102
103
115
116
54
49
84
116
140
133
128
123
153
123
183
157
113
116
95
115
74
145
151
49
127
127
107
77
145
179
101
87
146
107
76
99
150
54
118
143
137
143
122
88
78
116
132
193
129
104
82
141
137
107
84
98
147
81
87
145
81
90
92
115
78
107
91
148
120
130
119
122
119
95
123
98
97
81
106
100
108
140
190
119
165
78
151
144
122
123
126
92
116
159
78
79
91
124
139
82
103
108
142
87
147
98
61
131
109
123
116
110
130
144
54
135
96
119
123
96
113
131
54
105
102
54
140
105
104
81
125
136
78
108
119
95
152
108
133
102
103
168
114
97
137
119
125
81
115
96
95
129
116
113
95
100
81
131
92
98
177
133
156
124
134
105
94
112
150
89
93
107
140
135
142
98
122
166
54
140
125
54
116
129
91
131
152
185
128
90
131
129
185
108
104
54
116
147
145
180
122
70
81
108
145
174
95
54
109
123
104
135
102
137
105
110
101
93
145
145
91
104
143
80
139
157
133
102
139
113
77
107
146
177
116
112
102
49
126
161
143
110
135
80
101
125
166
93
113
140
105
109
110
74
180
140
147
74
148
166
110
122
95
101
76
120
122
111
89
177
129
54
81
101
129
95
82
105
104
133
143
111
74
155
95
95
91
158
80
94
113
87
108
146
54
59
188
125
154
119
132
131
138
148
74
112
148
124
108
80
114
106
169
98
167
111
155
150
141
121
129
102
106
109
158
133
128
122
108
80
141
107
89
160
108
197
122
153
85
95
121
127
122
129
120
182
130
128
69
143
98
114
140
149
98
144
107
104
142
68
102
107
91
82
124
102
77
112
81
54
74
111
144
110
125
54
152
54
81
101
139
95
83
126
126
113
125
109
100
143
112
112
77
118
79
59
129
137
131
139
98
91
136
135
141
112
143
105
105
111
126
140
139
54
101
98
107
101
82
94
100
177
101
81
87
81
112
122
115
125
113
125
117
110
125
97
93
101
84
158
74
108
121
110
104
115
76
167
74
108
127
108
95
130
156
90
133
159
124
108
146
91
113
111
118
149
79
110
99
86
86
89
126
105
128
127
106
135
150
118
100
132
90
124
143
94
125
151
103
82
144
160
114
137
191
77
117
113
85
88
83
117
128
133
124
120
104
103
105
54
111
79
148
109
127
123
186
128
104
163
108
89
133
148
177
123
104
108
71
105
102
166
102
93
127
85
112
102
74
156
137
143
116
103
139
151
152
149
106
107
108
95
79
54
74
174
120
93
97
91
121
106
172
78
140
155
65
151
129
49
96
108
81
107
99
141
127
132
54
95
113
132
113
113
81
105
124
119
93
147
164
164
147
108
106
122
101
97
98
73
131
133
109
86
150
94
102
112
163
102
108
121
96
112
103
82
158
129
148
96
122
54
113
105
133
128
152
111
101
147
59
95
142
84
113
87
135
127
94
105
125
100
165
176
107
110
134
136
145
85
133
123
105
169
104
61
49
141
134
134
131
54
146
89
131
94
144
77
145
108
76
54
119
115
149
67
97
127
76
105
118
83
131
95
115
87
95
132
137
59
87
95
144
119
93
115
86
95
103
114
112
102
54
95
180
186
110
115
114
90
69
169
166
135
131
168
121
113
80
150
54
93
187
85
105
107
99
131
90
103
95
165
108
97
113
81
104
113
124
94
67
119
97
104
139
125
128
90
100
108
99
81
102
54
194
102
181
140
181
73
131
185
108
144
138
128
78
144
119
146
161
133
127
112
135
145
108
112
190
54
112
49
137
93
148
177
108
135
108
109
100
85
125
146
78
108
59
91
131
83
80
178
96
113
135
149
103
135
111
196
73
118
74
141
80
154
114
154
126
148
81
54
123
93
158
134
108
103
95
93
122
93
114
123
149
54
81
129
131
125
54
129
161
71
135
151
113
109
98
74
199
138
180
108
106
104
170
112
118
115
141
148
88
120
81
147
104
137
98
92
115
54
105
151
111
114
150
163
161
73
68
144
118
74
87
97
54
67
100
148
145
69
98
182
108
97
177
97
163
167
103
91
154
107
87
158
77
92
95
105
101
95
81
106
108
113
114
105
121
133
152
102
158
92
150
109
133
113
80
127
103
90
153
116
105
59
96
109
116
112
138
107
152
85
118
108
121
169
54
133
148
145
93
87
110
141
145
165
132
73
105
68
82
163
102
125
139
141
81
132
108
90
149
85
142
102
140
94
174
110
127
54
122
118
140
116
97
102
107
114
132
98
54
130
133
98
145
154
91
49
95
139
154
101
90
113
114
134
110
96
77
107
158
124
121
145
87
88
96
129
130
96
148
93
108
150
131
148
79
108
131
54
145
102
90
77
140
117
165
138
102
106
141
108
158
164
102
119
49
102
95
108
127
156
76
124
92
106
148
133
69
119
165
143
148
133
102
156
136
150
175
91
59
109
74
83
76
93
115
81
139
144
115
87
108
140
156
117
105
157
116
157
108
92
141
135
160
120
159
129
123
95
105
104
146
108
138
148
131
113
81
123
113
130
110
129
156
131
101
162
98
112
98
108
76
216
130
159
121
138
159
102
110
128
193
124
107
164
127
106
99
74
125
127
90
137
59
85
130
103
143
132
95
214
147
54
118
138
73
97
59
153
98
85
116
54
134
131
99
99
143
108
54
126
102
84
165
83
106
105
165
105
81
219
106
74
128
92
116
141
102
90
112
121
130
122
119
148
99
148
115
137
125
144
122
135
100
134
114
117
67
98
89
153
149
153
90
128
109
70
95
119
133
109
155
109
142
122
158
77
89
87
89
116
118
103
54
110
139
76
79
108
115
157
123
148
124
151
77
76
122
74
134
151
98
111
112
138
49
131
96
111
61
135
152
125
143
101
197
120
86
100
146
83
123
74
130
77
88
74
131
135
109
160
205
85
99
151
91
79
83
49
77
114
76
89
156
129
153
103
167
147
125
78
69
49
178
159
95
120
89
124
112
95
116
81
179
100
112
95
82
92
81
168
93
123
106
141
106
133
74
145
140
129
145
99
125
124
112
142
107
177
97
134
139
82
128
98
138
124
127
123
149
49
129
121
93
144
105
108
117
111
81
111
137
120
81
63
122
130
126
185
105
178
127
138
95
99
105
132
127
104
115
76
108
104
124
92
126
98
102
117
153
94
54
77
97
147
95
127
88
108
129
129
145
90
180
129
145
136
98
100
138
91
101
157
91
112
114
113
109
97
115
161
76
122
156
131
123
148
139
101
126
116
108
116
94
118
95
125
148
133
101
98
174
77
99
141
98
89
142
154
116
93
131
113
83
131
137
106
144
101
170
49
102
138
98
84
108
126
95
109
107
154
101
108
95
118
104
118
98
155
129
127
145
122
80
127
110
100
116
97
135
128
139
133
112
161
145
95
103
125
137
144
146
126
76
118
108
180
98
94
100
135
133
162
85
100
151
113
124
150
81
104
113
147
120
118
102
149
140
98
200
115
96
87
101
81
148
112
177
160
49
85
126
153
156
76
135
95
129
102
113
105
124
140
114
85
123
102
79
108
166
98
134
148
147
81
54
149
124
155
175
137
146
125
141
59
100
142
149
144
145
139
124
103
132
102
152
96
90
115
157
98
98
113
135
127
125
74
68
104
175
139
134
142
108
109
115
103
143
82
133
95
132
90
67
124
81
95
76
119
106
95
92
137
77
81
130
108
96
184
154
132
127
130
129
100
87
102
82
97
115
143
103
103
104
126
150
147
111
120
127
107
102
112
173
95
133
93
100
116
103
116
91
188
135
83
101
159
121
125
113
81
54
95
120
95
107
141
78
79
131
153
144
133
95
95
194
171
149
155
133
172
105
125
138
79
100
74
128
136
152
133
92
123
138
158
117
126
180
106
161
65
133
122
108
136
146
80
108
54
144
109
135
126
108
148
142
102
111
95
145
74
135
102
136
76
116
119
59
146
107
114
100
83
105
145
128
147
133
83
104
97
78
127
145
111
131
122
94
109
124
106
90
144
122
146
145
147
86
54
99
102
142
130
106
113
119
104
132
96
150
78
81
81
125
118
98
127
155
94
116
103
68
95
133
103
140
115
215
139
92
90
102
101
103
83
163
108
105
88
95
102
98
97
91
112
126
102
123
108
148
90
61
133
81
181
148
102
127
161
133
88
80
96
54
173
202
125
115
114
115
225
123
103
150
102
164
148
113
80
81
113
114
116
108
151
135
81
144
105
107
118
112
133
110
177
102
76
98
149
125
127
171
81
144
117
127
80
95
140
49
104
147
59
123
93
161
99
142
130
85
103
148
95
142
125
73
77
102
117
95
124
144
117
95
75
97
146
159
148
108
93
107
122
133
112
133
89
83
119
106
141
103
101
114
134
135
113
142
118
102
156
105
102
179
110
172
95
100
111
154
131
115
102
71
74
129
175
49
108
70
137
87
94
83
95
170
81
106
108
147
163
124
69
125
127
128
97
113
124
133
131
107
96
153
202
91
163
140
102
126
108
114
110
125
74
225
131
82
94
95
123
107
95
59
139
102
145
82
124
67
96
141
81
54
160
85
54
95
118
162
98
72
105
116
79
131
110
122
150
108
95
122
74
125
81
72
107
95
155
134
156
98
102
108
124
108
138
105
119
81
75
98
96
96
100
137
107
54
83
82
144
114
178
82
117
118
124
98
99
81
105
160
155
103
94
111
180
106
54
126
135
123
128
126
103
89
89
93
119
54
123
102
108
82
87
128
98
113
84
88
175
147
95
80
76
98
194
111
105
85
137
149
155
207
130
98
118
125
127
102
165
129
81
114
54
77
103
141
123
54
117
102
120
99
99
54
194
95
188
69
105
117
141
170
45
105
74
106
125
168
98
163
159
129
116
119
164
136
83
125
112
113
108
132
119
168
143
95
137
74
144
81
110
54
103
121
113
122
102
95
81
123
102
141
54
111
54
99
127
100
129
111
123
102
49
177
78
125
138
83
119
83
144
97
102
170
49
107
128
120
81
177
111
106
118
83
133
118
137
111
125
49
87
123
98
93
116
166
140
153
104
136
95
92
54
106
135
146
117
100
113
129
168
113
113
146
95
123
136
91
102
99
102
160
105
61
94
124
116
118
114
119
90
77
111
114
111
105
166
115
130
67
136
131
113
136
124
86
98
109
102
115
107
159
159
146
133
155
182
131
101
156
100
95
117
116
96
133
135
116
95
98
111
134
162
140
127
147
133
49
101
95
98
177
76
105
69
128
148
86
156
61
105
127
161
125
102
103
125
169
95
76
157
94
116
95
145
124
106
106
124
134
103
96
95
115
157
98
61
115
148
80
148
103
143
83
114
98
49
139
110
95
125
141
143
136
45
172
130
76
87
140
109
122
103
84
131
172
98
101
112
105
92
121
94
158
126
153
115
81
103
96
54
90
110
96
125
115
81
118
127
108
204
125
128
93
160
98
139
91
176
54
103
135
110
118
167
97
118
107
103
88
161
122
134
113
130
103
105
137
116
201
70
138
84
81
108
86
105
126
82
104
85
139
118
116
126
118
100
98
125
59
105
95
122
105
151
103
121
93
86
161
128
115
88
146
143
137
165
131
106
117
111
121
105
125
118
54
151
122
89
107
120
98
106
74
135
113
161
122
145
144
152
128
101
77
116
156
95
82
78
120
128
104
177
128
145
110
179
96
118
163
104
148
96
96
125
59
102
77
108
96
167
126
113
97
125
113
108
132
106
76
121
126
105
148
145
139
135
126
124
81
49
79
95
110
108
118
69
101
193
96
54
105
49
93
98
108
98
141
123
95
115
97
177
76
131
98
116
68
106
131
147
98
78
154
103
112
93
102
98
146
108
143
79
86
114
154
76
138
81
169
125
82
130
111
68
103
149
112
119
105
102
81
102
143
107
147
104
144
90
102
103
107
102
132
147
133
137
108
182
143
133
105
136
90
98
135
82
133
117
120
62
165
93
102
179
137
141
190
95
61
102
105
128
125
54
84
140
115
124
84
180
96
141
113
106
161
123
146
134
80
116
137
165
92
87
168
95
141
135
108
96
91
119
59
134
176
79
127
125
95
127
98
79
108
160
108
76
124
74
168
103
115
112
106
102
126
144
116
92
76
125
115
108
132
125
150
135
95
112
125
92
104
108
111
163
143
81
158
125
135
148
151
97
145
124
95
95
150
56
112
146
120
81
136
108
59
102
90
116
107
116
98
98
122
125
128
110
148
121
130
92
127
102
132
108
108
108
93
98
136
175
123
163
78
125
88
108
135
120
91
107
140
116
87
93
67
131
139
108
107
98
146
54
107
141
161
67
100
104
125
132
81
178
98
158
118
108
112
106
90
113
177
160
93
117
74
129
81
87
177
124
129
137
93
167
97
98
113
80
121
180
92
133
158
100
106
137
165
121
112
111
154
106
106
180
126
131
95
141
91
49
115
170
131
136
179
54
145
80
140
105
93
119
87
103
87
95
133
95
97
54
124
105
146
139
95
80
125
136
106
139
130
177
111
67
146
173
140
141
113
134
144
137
108
99
77
115
85
74
131
74
139
156
91
104
147
78
113
90
123
102
128
101
148
128
120
177
89
103
78
93
154
149
105
65
113
117
68
67
144
132
54
153
177
112
103
140
103
160
134
130
77
106
106
113
96
106
141
158
81
115
113
125
113
92
101
107
157
127
74
135
65
109
97
113
171
133
121
90
124
133
54
96
164
100
74
140
133
129
127
108
80
113
95
139
138
90
108
95
90
158
106
106
87
108
117
86
117
122
126
108
102
87
167
143
123
135
96
130
138
98
87
149
75
57
127
90
108
73
117
143
155
81
110
92
59
115
78
126
149
137
144
108
161
96
83
106
130
172
105
146
89
81
103
77
93
177
177
142
76
165
87
142
163
114
164
152
121
175
98
118
78
159
133
134
99
112
76
54
84
91
113
81
54
145
135
69
179
114
162
103
116
124
165
143
134
128
150
113
101
103
95
68
54
94
171
120
113
98
95
117
98
129
162
127
153
54
96
111
92
141
115
98
99
130
113
116
135
105
87
141
103
83
54
104
124
156
100
90
125
81
117
98
76
154
87
117
141
74
83
110
156
131
93
81
142
87
100
102
131
106
122
81
105
90
109
112
149
67
122
96
106
125
96
101
125
61
156
103
104
93
108
59
81
133
186
177
89
89
87
104
143
115
131
161
61
138
138
108
83
148
137
128
49
78
83
119
161
138
108
96
134
54
107
144
76
118
93
87
124
122
105
131
115
162
177
155
91
131
78
116
113
95
128
120
98
113
76
93
82
105
162
114
49
86
136
106
82
82
147
108
152
129
142
186
132
125
113
69
103
109
112
123
80
135
148
133
95
91
137
141
120
115
93
80
122
94
113
152
70
111
59
134
98
90
106
147
102
93
86
102
116
49
112
160
124
113
76
161
109
97
102
98
124
162
109
61
150
115
93
141
190
126
102
146
132
82
84
109
125
119
160
92
117
104
93
143
112
67
81
139
128
99
102
125
177
136
127
54
128
114
97
103
165
101
117
120
139
147
129
120
59
54
129
93
106
85
102
172
126
114
49
167
101
92
128
161
111
108
100
116
98
177
105
97
124
177
87
74
81
151
129
91
115
145
113
138
96
92
144
68
91
113
140
107
109
114
110
112
61
74
174
104
85
113
105
54
78
160
139
74
108
131
163
86
102
54
120
91
158
68
98
102
108
99
190
125
106
143
112
117
133
124
139
109
140
103
87
116
113
105
106
128
194
81
164
144
105
73
110
101
102
95
81
117
100
93
87
81
54
78
120
95
92
138
93
147
106
108
106
85
149
128
130
89
106
113
49
156
91
142
102
110
97
49
109
61
148
54
137
125
82
107
101
107
163
134
99
54
159
153
97
81
103
70
108
156
153
102
154
113
139
164
128
157
102
97
123
54
108
94
83
135
128
96
107
145
115
100
129
156
117
125
83
139
105
103
54
59
151
106
102
105
113
167
100
74
122
49
125
127
119
99
129
92
177
122
93
108
72
103
111
129
122
125
98
158
116
139
135
124
160
133
119
120
118
113
143
146
93
110
96
103
192
108
80
108
122
133
125
133
150
94
81
129
112
144
100
106
131
99
105
133
81
103
113
104
125
90
108
126
109
91
139
107
74
82
114
92
95
124
92
59
127
125
136
112
115
135
113
80
110
108
96
117
133
126
106
100
54
159
99
83
83
153
91
108
130
102
121
132
54
102
102
108
164
147
113
140
126
82
97
135
80
49
108
96
169
123
81
124
166
114
118
124
61
77
138
131
142
90
119
97
59
110
190
67
102
118
108
74
147
182
112
124
114
99
125
118
144
82
103
108
126
74
76
135
125
54
101
139
122
81
108
102
147
131
85
123
179
74
74
141
83
146
54
87
68
128
108
116
191
145
128
111
120
124
108
180
138
144
122
101
135
89
117
76
108
74
114
136
138
109
76
128
144
113
112
116
100
91
99
83
118
143
130
180
129
101
54
146
161
105
54
93
115
103
107
140
108
132
90
159
95
105
116
107
93
200
169
116
92
149
124
155
103
102
161
144
91
49
107
103
148
100
144
165
68
155
124
99
142
141
194
94
120
128
84
121
141
97
163
118
97
145
108
115
129
131
148
119
65
148
119
157
130
102
105
93
148
112
133
98
165
91
112
90
119
108
103
102
113
83
134
68
49
82
88
120
179
87
159
111
115
70
132
102
129
141
49
149
117
98
113
135
142
98
125
129
90
165
113
81
93
162
131
105
81
87
108
124
85
101
107
125
109
115
129
156
146
107
89
106
106
97
108
135
150
131
108
140
98
93
125
111
98
138
119
130
140
103
114
165
149
114
170
54
191
80
96
132
108
157
95
130
121
128
133
131
130
100
163
54
68
102
126
85
137
89
113
153
54
140
105
72
160
128
107
118
95
133
90
125
89
131
104
109
135
131
120
155
130
96
112
161
122
105
102
145
127
155
177
173
98
131
123
135
54
106
54
148
67
126
101
126
141
93
87
67
120
67
67
158
67
99
107
160
101
126
105
108
158
148
54
103
98
85
89
161
76
99
144
125
81
131
100
137
91
109
122
54
139
157
98
134
97
106
89
143
69
144
115
98
112
147
127
108
124
67
104
179
124
140
78
49
82
118
131
120
153
131
109
138
98
213
153
82
148
140
77
116
105
108
95
49
114
138
101
151
181
200
131
135
115
137
127
49
92
88
87
98
105
135
162
133
78
163
115
134
188
102
141
135
100
139
90
131
137
74
74
86
81
114
113
93
129
133
137
105
144
78
119
172
99
171
103
160
108
145
97
98
71
109
54
105
123
123
133
142
155
90
148
177
140
168
54
124
87
151
83
135
141
116
156
143
143
104
124
78
68
88
131
133
105
133
108
102
103
106
108
49
93
102
199
144
92
141
67
136
116
99
112
54
182
131
76
161
108
133
136
79
119
93
132
179
106
149
108
100
161
120
177
128
81
99
77
87
118
91
121
91
97
90
105
94
167
81
148
102
111
123
97
157
106
135
131
69
102
54
109
128
102
101
145
103
146
163
135
128
102
148
130
98
103
49
85
139
108
120
107
129
148
98
145
102
108
93
91
148
125
106
148
108
166
148
82
172
112
112
129
140
120
102
102
108
107
157
125
123
102
147
106
98
108
103
70
102
115
110
114
83
122
102
124
89
182
120
125
74
119
94
103
108
54
133
82
160
107
97
144
80
113
157
118
99
92
90
81
153
143
137
69
119
95
91
147
121
77
54
153
133
198
83
148
198
49
116
142
108
116
114
152
148
107
165
129
141
153
82
134
156
74
128
133
170
125
54
141
81
106
133
149
177
108
89
112
126
117
112
124
76
82
113
137
132
106
95
137
107
164
82
117
139
67
76
103
102
83
101
68
148
158
145
200
124
121
143
108
96
153
129
137
128
148
124
135
67
122
119
102
110
89
94
135
74
100
120
126
144
90
61
166
120
150
132
164
104
108
127
150
115
122
123
129
93
134
128
93
112
138
145
124
78
122
68
128
87
142
141
81
127
118
150
88
121
95
90
122
109
132
146
69
125
156
128
96
117
127
180
125
141
165
100
108
122
93
81
100
103
105
103
102
103
108
74
98
99
69
123
108
77
122
95
94
163
140
93
128
68
90
91
67
118
200
92
130
170
83
128
128
149
119
54
131
102
79
172
124
105
102
129
133
127
118
68
67
82
143
99
54
98
126
118
102
116
122
161
88
180
54
101
82
82
102
122
140
98
49
160
171
95
123
100
127
111
139
78
149
128
144
95
144
96
141
98
78
77
167
100
99
121
95
59
135
115
94
115
81
100
102
88
121
103
81
125
67
134
105
120
91
129
91
79
108
54
81
54
146
113
91
78
104
135
129
61
89
107
90
112
106
125
92
119
120
103
111
176
140
97
161
140
103
119
160
108
95
91
121
148
160
74
108
127
125
131
128
104
136
161
74
139
93
90
152
84
94
100
109
172
125
110
102
77
83
98
82
103
121
121
102
114
148
145
133
76
150
119
129
91
117
59
131
93
54
111
54
133
148
137
87
99
108
117
85
98
54
105
118
103
93
154
120
117
108
119
95
122
124
79
119
90
108
91
80
107
104
94
105
122
49
77
132
122
143
128
90
131
113
81
85
123
125
144
176
102
122
108
107
83
116
100
113
147
139
148
143
95
134
108
123
99
163
106
141
183
169
108
117
89
82
148
161
134
59
157
149
160
95
131
143
121
135
127
74
158
82
154
153
135
97
155
115
115
97
139
158
106
129
139
94
107
69
72
101
162
67
49
97
93
59
76
147
164
49
140
97
122
98
125
54
135
125
131
108
74
109
117
177
91
130
162
106
125
96
54
143
114
134
89
127
98
169
77
94
113
128
101
79
94
148
103
94
77
163
147
139
147
193
176
105
88
111
113
102
120
144
102
133
148
102
138
157
121
166
133
115
120
130
127
169
91
143
108
67
103
54
115
54
107
144
98
68
107
157
118
54
131
78
131
146
102
102
90
168
108
76
123
119
113
54
144
135
79
54
92
54
148
125
105
76
138
131
90
100
125
131
128
142
144
124
109
77
95
137
137
79
82
95
121
144
140
146
89
102
126
177
98
128
131
134
82
108
122
127
110
167
118
94
106
92
108
134
143
131
108
106
135
143
103
128
82
129
122
147
145
105
147
81
177
95
54
92
137
119
149
54
112
132
122
108
148
133
149
118
75
98
125
54
76
103
144
95
112
108
133
74
49
128
95
100
131
131
119
99
125
105
131
100
49
74
149
127
132
54
90
102
108
95
133
81
77
108
138
102
103
112
148
95
144
127
97
82
107
54
102
109
96
141
145
54
68
128
113
98
114
147
94
144
106
95
89
136
117
113
81
94
105
103
169
128
103
95
113
97
96
59
142
62
151
106
173
144
150
102
76
166
76
118
135
80
85
139
54
143
87
98
100
102
87
102
148
83
103
96
104
105
87
110
126
97
104
124
109
75
102
113
137
76
141
119
105
108
169
95
54
96
147
101
122
135
108
102
136
150
131
148
95
93
135
142
54
76
113
136
79
116
98
157
117
102
100
140
128
101
120
103
127
177
165
99
121
128
101
101
69
80
161
102
161
83
108
102
146
105
67
116
49
117
120
54
118
140
103
93
54
140
108
129
87
127
79
134
105
92
98
108
59
146
96
144
174
105
91
123
113
144
85
106
83
81
122
117
115
113
100
128
140
131
104
90
113
131
107
98
113
121
95
88
108
143
133
108
49
127
97
131
113
141
125
125
148
101
101
82
147
140
127
67
49
90
134
106
49
121
90
113
158
103
112
122
179
108
68
54
120
75
124
94
79
85
89
123
74
136
108
115
118
102
113
139
177
93
135
148
95
169
74
139
155
143
122
95
143
149
128
100
138
98
129
133
129
155
89
148
142
126
156
95
108
70
115
107
126
105
98
90
123
59
89
102
79
81
142
133
102
140
133
105
126
98
106
89
69
170
159
93
101
115
90
145
163
134
119
79
95
98
102
67
127
68
76
131
104
106
160
99
119
163
130
125
97
90
143
173
76
177
108
108
129
80
142
87
164
182
78
102
101
77
105
128
108
126
152
173
83
104
127
149
127
134
49
154
130
95
125
95
74
102
98
151
87
124
97
105
154
74
83
177
106
84
127
101
92
130
146
135
82
160
115
120
110
105
177
123
143
49
138
110
97
103
78
88
80
98
110
141
157
103
91
117
82
121
139
171
129
121
77
127
125
129
157
103
88
128
74
102
146
161
106
91
109
102
76
103
95
59
87
81
95
87
72
177
194
108
108
49
103
125
132
98
108
123
93
74
184
110
96
133
168
112
112
130
139
96
182
91
102
177
95
143
162
119
143
107
111
108
125
94
165
102
54
54
104
188
105
107
116
105
75
116
115
97
74
67
100
112
133
127
153
77
155
87
113
127
97
97
126
109
81
114
49
49
115
54
128
61
103
177
140
99
104
123
117
106
169
173
135
116
158
149
139
128
143
100
97
138
134
114
133
99
123
107
116
98
87
124
132
133
132
93
87
146
127
77
113
144
84
127
111
200
109
87
168
123
77
113
161
81
94
138
54
102
120
94
116
155
127
149
116
92
133
131
81
95
90
139
113
67
164
173
129
54
80
148
110
190
168
135
131
132
81
54
170
107
102
98
95
131
116
125
125
76
115
96
125
125
115
115
121
128
108
123
102
82
115
87
143
105
54
131
133
134
123
129
101
98
157
81
95
82
107
67
131
113
167
119
97
123
164
109
152
148
125
103
98
82
77
145
107
124
84
140
148
81
82
103
128
119
139
114
113
108
81
105
76
144
81
93
93
82
107
92
128
106
148
105
162
67
111
105
78
178
91
103
81
77
83
127
135
99
102
115
90
104
131
69
160
82
101
103
115
122
95
139
107
92
134
96
113
77
117
146
143
108
134
133
98
113
130
113
136
49
133
131
103
109
90
134
100
98
115
147
124
136
160
99
161
96
82
59
98
76
74
102
84
133
131
95
83
101
147
123
143
112
105
81
92
137
157
77
103
135
94
125
129
154
129
147
104
115
61
124
54
138
98
87
95
109
137
74
133
127
98
131
95
114
103
170
127
109
127
146
87
75
161
166
106
54
108
102
130
108
117
119
123
76
177
124
122
100
102
108
91
136
126
113
102
97
107
136
96
101
82
121
125
93
67
94
81
54
133
83
139
100
97
54
155
103
54
162
105
108
145
92
102
79
165
102
97
154
151
148
131
136
115
77
100
149
105
133
103
59
133
143
133
114
77
76
103
102
76
98
81
95
150
206
54
100
105
120
54
67
102
151
101
150
78
103
105
161
120
95
108
149
127
101
133
82
80
94
106
93
89
77
138
126
81
139
93
156
102
102
170
98
145
128
74
106
103
142
125
103
116
81
135
155
49
101
131
54
103
144
106
142
114
135
156
93
157
113
82
130
54
116
76
134
133
114
137
90
54
95
140
147
133
99
161
115
135
120
173
126
84
123
74
101
104
113
98
124
93
49
184
142
138
114
169
78
132
153
108
154
67
134
98
77
98
153
145
98
118
127
129
146
169
164
94
92
133
160
135
74
74
144
102
81
127
102
95
145
139
186
115
77
135
143
108
93
121
106
133
130
88
93
123
109
74
145
147
114
225
126
77
129
126
82
105
54
49
132
107
113
114
126
92
108
114
80
146
126
105
161
87
85
108
170
144
128
111
103
104
74
77
138
171
103
74
76
111
106
54
136
102
185
110
61
125
108
90
105
123
93
76
89
135
86
139
115
102
93
155
103
131
125
69
112
68
133
112
135
135
143
102
104
109
54
85
54
140
127
90
97
76
172
153
91
115
95
98
93
81
91
54
111
118
104
128
49
219
107
197
54
106
93
106
104
104
98
93
139
109
93
104
105
151
103
135
117
132
144
92
90
110
96
76
85
102
110
54
144
81
103
88
77
123
106
117
108
88
103
123
111
108
127
116
115
105
143
145
90
104
96
97
83
92
107
54
95
156
91
102
119
147
95
95
157
109
163
77
164
177
138
120
143
96
89
54
109
135
102
77
123
90
77
119
120
131
118
155
93
111
115
146
109
120
123
107
138
111
150
105
90
99
152
74
135
172
219
83
95
133
112
107
182
100
82
146
108
132
126
129
102
128
157
101
106
112
135
125
108
186
98
109
157
132
127
54
87
132
127
148
108
135
179
108
140
120
87
104
98
113
45
91
112
81
104
128
105
144
112
140
81
87
125
98
81
105
127
93
135
102
116
95
98
108
119
127
49
103
96
182
115
54
226
75
130
68
117
74
96
148
98
87
142
81
81
85
116
69
158
119
131
119
137
160
76
111
82
115
87
98
103
92
121
114
76
90
82
90
155
131
110
129
142
89
113
133
101
96
76
144
104
93
113
158
98
77
121
147
95
108
65
102
144
102
85
73
140
135
107
99
77
103
164
103
78
139
110
111
77
83
95
73
87
101
91
142
147
102
118
99
115
134
54
135
111
102
114
82
113
116
180
87
103
76
131
130
137
113
151
105
148
133
144
126
77
110
150
102
133
129
109
84
116
74
156
95
90
133
54
85
91
120
73
79
165
141
61
146
137
106
124
133
114
107
109
139
74
156
78
139
143
180
77
126
140
125
125
98
124
98
110
78
54
139
59
97
111
54
158
129
87
120
127
143
192
136
125
143
81
139
123
95
144
98
105
87
89
103
150
125
115
95
131
165
125
115
143
145
122
128
74
117
140
132
113
110
161
131
157
116
160
49
85
103
67
152
102
142
127
83
65
128
75
183
105
160
88
121
113
134
85
105
59
109
96
133
93
54
95
113
117
123
103
110
127
155
123
76
108
147
147
93
103
76
107
132
81
132
103
102
167
138
118
142
140
108
108
139
137
103
146
141
62
175
74
158
105
113
144
125
117
143
73
106
82
73
82
144
87
108
104
77
127
134
114
128
88
114
98
153
91
177
122
131
172
147
123
106
193
128
59
126
103
106
123
89
105
121
82
95
133
93
193
117
144
54
102
126
133
177
81
120
108
85
131
97
121
110
89
90
67
158
165
54
137
117
72
137
139
106
111
87
112
148
124
109
110
73
125
113
123
117
158
98
83
80
122
82
135
82
110
97
111
102
177
81
112
126
79
112
67
219
113
124
129
116
73
124
77
109
94
93
154
143
115
97
113
96
119
87
89
105
102
108
130
122
171
114
148
146
116
125
125
122
105
176
102
134
121
116
146
90
91
128
108
87
82
145
103
114
54
114
128
112
132
144
113
123
135
141
127
95
49
123
148
122
113
124
95
125
84
110
102
105
80
129
110
135
82
95
140
116
139
94
96
103
95
145
130
76
83
159
140
156
137
150
82
95
139
74
135
131
78
115
160
146
102
98
143
117
132
89
105
106
94
103
126
93
142
135
82
135
54
122
105
143
81
102
88
132
131
54
135
108
123
190
134
94
117
91
94
88
123
45
93
142
127
143
87
122
143
80
135
135
180
133
114
101
73
144
118
87
132
90
140
114
109
126
69
81
122
179
108
90
109
146
95
129
112
54
104
100
59
106
139
116
177
77
151
148
119
148
108
150
138
96
140
95
144
54
91
151
49
99
139
125
109
140
106
80
147
107
101
99
158
143
105
141
119
95
98
147
118
96
124
130
108
102
156
54
125
102
127
144
170
49
147
138
118
98
113
145
131
128
149
73
102
81
123
135
138
83
121
132
125
68
127
102
91
108
77
95
104
100
70
110
87
108
129
84
98
89
128
103
141
81
161
49
147
91
123
87
77
95
127
135
133
79
123
127
133
125
131
150
76
54
125
97
138
167
168
143
90
85
122
135
76
94
59
108
137
95
145
59
92
118
79
130
128
129
100
82
106
131
104
129
127
111
118
76
115
102
90
90
103
123
80
125
158
134
149
149
103
193
115
135
130
102
106
158
83
74
80
95
78
134
189
80
54
110
78
101
118
100
213
73
133
102
59
112
74
87
168
49
125
73
59
91
108
106
148
122
112
76
82
152
145
54
152
54
121
125
161
144
177
177
110
144
90
109
104
102
135
140
93
102
158
110
120
77
161
112
82
126
150
112
100
107
91
147
129
153
103
143
108
148
101
129
84
100
234
115
129
103
133
170
92
95
95
132
157
108
114
102
102
101
147
81
98
128
128
107
104
125
103
120
93
106
148
169
108
87
115
135
124
103
54
133
115
104
112
132
127
114
87
111
177
117
122
125
136
132
125
195
134
124
116
67
135
83
133
98
137
143
180
116
138
114
132
104
94
82
113
110
87
177
75
92
171
107
70
166
108
126
78
158
173
90
122
95
54
93
82
107
74
77
102
87
95
141
172
121
107
105
111
108
54
109
95
105
142
145
95
153
87
170
104
118
122
119
150
198
110
49
141
140
107
133
124
165
113
153
76
110
122
89
92
54
162
99
144
179
105
115
90
148
102
119
142
114
76
98
90
54
104
130
80
105
94
102
108
90
115
106
122
134
54
121
104
129
150
152
106
96
119
146
81
131
95
103
137
128
85
159
120
112
101
54
116
103
126
147
90
93
92
123
154
61
156
121
101
153
54
167
68
95
114
111
95
96
103
169
74
114
88
128
129
171
172
118
128
119
90
147
131
153
131
148
54
120
78
115
103
118
126
113
126
114
99
91
114
74
151
102
107
120
132
102
130
102
122
125
95
148
157
155
171
107
128
178
135
103
128
134
87
163
103
144
87
153
105
102
135
87
94
113
134
78
91
126
81
126
108
95
93
126
95
139
163
157
123
133
94
125
107
105
169
131
103
102
81
110
141
78
83
127
129
136
141
106
128
116
118
103
49
125
181
153
124
108
61
112
87
95
125
132
77
79
103
185
119
76
105
123
161
74
137
144
129
144
153
105
113
136
122
134
54
115
143
133
86
104
106
129
95
179
104
131
160
116
124
129
111
111
138
87
111
105
89
122
140
94
98
122
159
129
83
74
120
54
138
102
98
161
99
112
77
79
73
120
126
132
113
125
106
165
85
83
54
76
128
123
98
148
158
133
108
108
105
91
113
83
123
97
144
59
54
83
112
162
144
82
80
126
124
182
90
157
121
76
122
103
95
86
102
83
122
144
81
157
159
121
113
136
107
106
80
137
94
107
125
140
139
160
54
102
81
96
59
133
156
151
124
102
124
97
125
97
111
108
143
137
141
85
106
119
133
139
79
113
106
81
54
102
117
122
94
116
91
54
118
120
115
117
80
108
54
129
127
105
151
115
77
125
105
54
123
109
104
108
54
99
126
220
119
98
103
105
101
120
81
134
186
89
138
103
82
76
133
155
101
148
77
129
151
150
143
140
124
120
125
86
130
162
138
115
107
148
148
94
125
100
54
83
130
155
126
76
128
89
54
101
168
158
96
106
155
134
93
102
49
131
136
148
136
100
85
152
129
101
113
87
134
177
108
106
83
90
165
59
122
106
65
153
110
145
69
150
97
106
115
91
151
128
105
77
89
99
104
144
124
115
116
177
148
115
111
162
133
101
134
184
117
107
129
129
125
69
107
49
95
91
94
132
107
157
75
115
79
103
124
130
103
145
67
160
150
154
135
95
117
138
95
100
104
125
102
90
95
108
139
113
106
143
125
83
161
54
121
108
108
108
119
96
118
83
137
54
150
135
121
79
102
149
123
108
81
49
95
82
78
54
131
155
89
97
148
144
98
81
152
99
49
81
113
146
84
180
117
177
82
149
141
145
117
89
97
103
112
87
112
93
54
68
135
169
111
105
118
124
83
163
174
108
127
99
111
136
90
65
132
98
96
127
122
108
94
69
140
80
54
123
85
163
117
108
81
128
149
123
101
122
95
113
171
124
169
158
103
74
138
178
110
113
93
157
54
133
138
110
69
102
123
108
108
175
147
97
118
173
90
148
133
102
131
109
172
54
95
115
135
158
154
130
105
160
110
79
135
105
166
147
113
154
113
91
68
127
81
107
102
123
144
96
156
74
156
54
85
105
80
135
100
191
120
103
128
153
107
146
54
88
80
62
131
113
104
145
185
77
76
126
81
107
54
154
119
49
61
177
150
95
97
100
100
124
99
139
108
137
109
90
119
59
106
165
96
92
107
147
158
81
135
133
163
109
123
116
145
102
108
74
165
107
153
119
105
167
146
177
112
132
100
116
136
179
125
91
173
93
129
104
108
103
122
91
100
76
99
91
157
106
82
95
127
144
128
89
74
124
95
95
78
103
102
146
153
89
125
160
115
142
122
108
79
104
113
130
102
160
86
111
141
123
175
219
95
59
112
151
88
234
155
93
152
83
122
54
167
128
133
101
131
85
75
111
129
83
102
108
131
136
125
73
119
108
161
200
117
112
147
132
118
152
144
140
96
140
77
129
86
108
98
68
138
109
125
153
137
177
105
149
113
115
87
116
120
108
154
79
128
120
115
54
119
120
163
148
107
132
106
82
117
136
146
143
150
81
113
128
103
127
113
95
93
101
103
104
165
169
112
140
153
78
98
116
81
108
85
84
49
113
69
103
49
107
134
83
147
129
106
82
117
125
234
151
103
145
113
49
135
99
117
109
143
100
118
90
103
67
106
140
116
108
103
139
103
129
139
120
87
96
121
94
147
137
145
102
87
85
82
115
113
93
132
98
104
124
138
81
102
106
127
132
147
74
100
54
121
127
98
102
107
101
129
146
123
97
171
125
114
89
96
177
191
127
177
90
54
110
107
54
81
120
90
129
67
148
82
168
169
129
95
125
98
118
128
95
73
80
102
96
146
132
139
115
115
82
95
108
54
81
171
131
149
80
97
134
119
107
98
107
103
95
148
95
76
69
105
148
143
158
98
130
130
54
81
124
139
146
54
112
87
82
118
99
49
112
190
74
97
147
59
112
103
106
87
102
153
115
98
153
97
157
118
96
113
84
89
119
191
124
108
108
127
104
102
106
95
121
90
105
108
79
97
190
125
133
95
129
121
147
132
117
169
82
106
119
101
93
154
139
98
82
135
90
148
90
110
89
126
95
146
147
78
147
49
85
114
107
78
220
113
90
93
89
91
138
112
95
133
116
102
120
165
105
158
194
54
105
77
129
188
97
155
84
103
67
138
81
120
81
127
132
99
54
158
54
130
123
79
104
67
90
136
97
95
67
99
146
143
107
109
125
192
75
125
100
104
114
129
164
102
105
134
95
98
125
151
49
112
142
162
113
113
160
61
127
101
102
105
108
108
84
117
99
121
113
110
108
102
115
111
148
118
143
128
155
99
121
116
155
123
101
107
125
129
138
186
107
91
102
117
129
125
81
122
115
158
105
69
117
78
136
121
121
115
91
113
104
123
190
85
106
126
130
95
137
59
105
128
110
98
96
189
85
95
117
169
123
133
93
122
54
103
98
107
93
85
105
149
179
108
154
140
90
138
119
147
81
139
121
130
54
124
96
93
113
61
109
103
107
161
104
124
160
122
186
77
149
72
158
127
103
108
139
69
175
167
116
107
95
81
132
116
143
87
115
110
89
131
98
153
87
112
96
78
124
87
135
122
54
139
90
87
83
77
155
121
114
74
95
131
166
102
95
93
54
87
102
82
115
103
102
114
127
110
95
146
96
179
67
122
104
107
116
96
87
49
90
83
118
98
113
106
94
79
54
118
81
145
119
140
107
112
98
145
113
69
94
102
121
135
98
172
148
124
125
112
158
67
133
49
120
130
112
74
115
98
168
114
110
123
67
81
132
147
118
133
124
92
127
101
126
77
127
162
119
146
144
142
102
124
49
130
77
111
111
133
101
49
175
177
111
134
90
98
81
110
125
157
144
74
54
76
95
87
127
102
136
42
80
165
104
143
120
112
83
143
119
71
54
107
82
122
113
93
141
117
74
139
156
118
76
161
145
94
102
77
148
115
120
148
130
128
203
135
83
95
128
108
134
59
94
135
135
107
145
133
145
158
142
102
124
112
54
95
126
81
74
115
162
152
98
113
112
98
144
153
114
97
114
126
105
93
67
113
147
69
130
120
82
199
127
162
108
93
123
150
54
54
134
122
104
146
93
143
125
54
124
125
138
148
123
76
108
97
127
115
137
120
102
120
129
154
131
77
82
104
87
104
125
54
133
54
124
127
128
54
133
109
108
95
87
100
152
135
97
77
54
93
114
121
97
173
95
74
127
81
103
114
68
140
108
113
72
124
82
106
114
125
83
85
104
123
139
82
78
123
115
69
116
139
129
131
127
92
142
128
94
145
112
100
108
108
79
109
141
154
125
91
140
151
165
127
90
83
159
172
149
123
112
115
111
116
92
98
95
133
54
116
163
136
102
98
129
142
97
145
110
130
101
144
132
106
95
125
128
128
108
87
127
131
105
54
133
152
151
143
104
131
95
151
155
137
85
81
77
117
97
108
87
130
127
108
69
165
113
115
59
61
102
135
131
102
98
90
182
80
81
94
100
97
115
110
98
169
94
108
71
116
108
139
112
103
97
98
81
113
80
135
124
74
145
104
74
59
122
102
122
54
101
140
113
140
127
103
54
118
127
103
103
84
122
106
113
95
108
120
126
135
145
160
125
107
118
112
140
113
125
85
113
151
105
89
134
85
127
120
92
139
73
77
86
128
93
78
93
89
85
107
126
95
133
111
177
125
167
148
136
149
107
131
110
93
135
168
97
110
138
76
54
111
124
184
119
111
93
124
128
135
113
118
174
129
96
137
90
59
135
54
131
114
97
143
104
128
108
54
82
87
78
119
97
134
102
143
110
117
89
54
116
108
89
194
137
54
83
59
171
87
109
127
137
95
90
114
49
127
95
104
109
103
177
154
141
143
121
157
77
98
106
123
102
125
91
113
110
105
77
111
95
135
84
113
99
88
161
149
49
163
138
96
126
93
104
128
54
116
120
110
126
157
105
144
97
110
109
159
145
144
82
143
148
137
108
81
83
90
120
107
120
74
143
76
113
95
108
105
129
111
82
89
54
108
103
160
49
95
103
59
127
175
234
150
92
143
54
177
205
137
90
135
118
131
54
157
98
76
80
138
137
85
148
156
153
138
95
95
176
133
131
49
120
95
103
115
125
98
105
83
138
108
149
133
125
80
61
200
108
155
128
95
93
133
131
68
98
137
103
132
133
91
124
106
68
97
119
135
76
123
101
59
89
59
156
130
49
72
93
72
103
104
115
87
132
134
123
92
129
104
135
118
99
177
182
113
99
68
61
85
123
106
54
81
97
74
113
93
113
139
84
114
89
77
131
128
74
81
74
80
91
156
54
149
131
105
143
137
102
96
95
169
158
116
108
106
130
96
92
169
76
128
158
152
90
161
128
116
148
124
169
113
117
101
54
117
144
68
148
124
152
126
191
90
87
82
92
108
156
131
182
89
142
94
101
49
136
132
90
180
133
116
141
119
112
102
74
121
95
59
188
151
85
108
165
91
118
77
124
85
110
151
123
84
156
86
121
101
85
169
118
195
89
54
79
103
125
157
145
122
180
119
105
162
54
112
102
110
140
98
133
98
129
117
113
91
137
96
101
100
123
139
125
92
120
105
74
109
74
115
81
127
144
139
153
74
103
116
108
93
125
120
75
103
145
108
59
106
131
90
148
144
140
98
74
119
115
94
144
108
146
152
123
108
125
117
83
124
93
81
125
91
93
162
98
130
113
173
91
139
98
61
120
91
104
123
120
108
150
102
131
112
103
113
49
135
103
94
87
94
119
123
120
161
68
119
83
101
98
61
98
54
146
106
83
123
125
177
143
95
154
133
75
144
109
77
95
98
98
129
54
102
142
83
110
143
114
105
132
129
126
131
54
145
89
103
125
122
49
61
137
156
54
121
108
115
81
102
132
148
127
131
108
106
125
54
81
109
54
112
117
158
112
140
74
168
149
95
178
90
87
125
100
120
135
107
127
113
74
133
87
54
124
61
104
148
77
81
98
81
135
69
77
152
129
101
98
108
54
127
101
107
113
54
147
136
61
177
105
104
125
133
105
77
101
113
71
108
115
92
68
140
144
96
95
188
141
118
167
155
152
108
99
82
122
107
112
106
78
105
138
134
161
111
96
133
124
145
67
89
73
69
85
148
110
131
136
133
109
118
81
153
78
120
54
121
146
103
99
104
129
54
105
122
152
139
125
154
108
97
185
162
133
118
136
102
91
90
80
137
77
125
95
67
116
93
59
159
108
129
135
117
125
135
112
129
127
118
68
149
103
175
90
132
85
130
123
114
102
107
158
123
90
80
90
119
108
148
165
156
149
119
146
118
61
140
102
136
114
97
61
117
99
133
74
109
95
125
149
155
98
144
122
125
95
107
115
146
84
73
102
49
128
128
103
155
135
102
87
138
127
158
112
133
110
115
114
144
54
89
146
108
101
93
149
87
54
129
49
131
165
115
148
102
118
111
169
80
133
102
105
78
102
113
173
107
147
108
102
117
138
122
80
133
144
108
149
136
150
131
132
100
132
107
141
105
129
117
132
123
147
137
108
85
54
137
139
74
95
54
93
102
113
98
100
107
105
125
85
77
138
76
119
83
140
92
136
90
160
122
77
128
117
108
54
112
103
69
101
162
156
119
123
110
49
156
117
118
148
100
129
118
163
156
148
74
90
137
81
127
110
101
128
133
136
59
154
71
115
133
146
119
134
185
85
100
123
93
82
94
116
118
146
177
132
118
125
114
134
123
154
184
147
122
113
155
144
117
98
96
125
145
168
81
85
97
77
113
126
105
93
119
111
98
165
90
59
102
166
148
173
121
67
139
95
135
91
108
137
108
111
93
158
120
105
153
147
129
99
123
87
76
103
144
153
95
158
121
107
176
102
98
97
90
118
102
98
89
146
98
97
106
110
148
111
97
103
158
96
102
108
113
161
170
54
146
80
125
82
143
149
74
128
91
131
125
145
115
101
87
101
145
69
54
146
156
110
108
123
85
83
143
108
76
127
135
103
124
119
131
90
108
106
131
146
137
102
99
86
145
114
137
77
131
74
102
110
133
140
115
95
67
97
142
97
141
98
129
136
113
115
117
93
85
131
143
103
106
120
130
106
99
150
159
123
131
124
106
108
141
95
49
85
120
131
138
135
139
143
91
49
142
129
150
103
95
112
82
133
83
54
156
91
120
138
113
86
106
54
108
120
97
133
128
77
117
102
117
97
152
69
122
76
169
108
155
81
98
101
95
146
109
135
131
132
112
83
108
88
129
148
80
76
115
104
95
106
98
89
88
104
127
109
108
122
123
123
95
122
121
112
69
161
110
93
96
89
138
76
115
108
95
156
97
144
131
133
59
74
106
139
108
115
125
123
106
110
81
172
90
125
112
69
98
106
146
106
80
105
151
105
142
132
90
128
124
113
117
152
108
142
101
103
143
106
135
133
97
90
113
113
102
93
82
95
106
111
129
102
148
154
108
81
107
103
177
157
120
132
122
150
145
157
137
102
166
76
99
93
97
111
83
54
96
113
125
95
179
85
87
95
148
95
145
90
67
133
95
81
91
130
119
135
129
74
119
165
80
75
108
114
110
135
119
93
108
102
127
115
122
102
92
104
108
103
113
77
104
81
128
136
128
128
88
74
118
90
122
92
67
155
110
54
207
69
138
98
93
109
111
161
125
126
124
102
81
117
87
54
164
97
141
128
117
127
145
119
124
93
90
102
107
83
105
124
49
142
133
97
122
102
114
125
54
133
110
148
94
82
153
69
144
67
149
100
95
73
98
72
116
122
102
144
103
49
129
67
140
132
109
59
116
139
125
106
106
93
54
76
142
61
127
97
152
181
118
106
96
130
127
87
128
146
120
146
107
114
120
90
89
144
138
54
105
93
98
124
149
125
61
78
76
108
141
107
95
133
149
85
185
150
89
116
113
108
106
108
128
173
216
105
97
177
75
92
119
82
61
113
113
140
54
144
120
144
113
82
72
177
97
132
128
135
151
151
54
135
119
108
87
118
65
146
153
131
59
123
163
105
118
85
99
104
100
76
150
105
132
122
125
109
69
98
83
138
128
112
105
111
146
104
76
74
128
122
107
65
125
103
99
134
135
118
85
144
103
109
76
117
61
102
81
135
85
136
54
133
145
108
114
95
102
123
156
134
111
93
165
100
144
112
154
118
114
109
128
149
93
82
98
125
106
87
122
129
167
130
121
91
110
155
93
76
139
95
98
113
125
135
123
116
143
108
113
103
112
95
128
74
143
103
125
122
85
145
103
103
71
127
82
115
97
69
97
142
139
129
148
148
77
177
103
107
139
118
177
171
157
76
79
95
102
108
83
76
140
95
150
95
105
92
101
112
77
131
131
69
125
145
124
93
122
118
102
123
80
108
134
148
59
81
104
109
122
113
95
108
93
77
95
61
109
121
92
117
97
61
136
99
139
119
145
109
129
145
90
86
163
84
122
81
107
116
81
74
149
107
106
74
82
100
155
165
168
119
68
92
135
77
96
98
167
91
74
139
83
162
149
112
140
94
115
103
108
112
90
91
82
79
159
125
84
145
121
107
124
126
132
113
108
115
76
105
102
124
54
104
130
111
96
152
144
97
98
128
125
105
116
155
91
193
87
147
129
108
106
108
63
126
90
177
126
102
127
121
74
124
147
95
124
117
172
101
59
130
87
105
57
108
96
99
102
98
158
190
113
129
106
98
158
118
90
105
74
102
124
118
122
108
95
97
76
143
128
145
123
95
146
108
81
99
124
133
120
82
154
105
106
117
73
109
127
147
124
74
115
103
153
108
98
166
107
97
109
117
121
117
109
80
124
129
146
147
77
113
182
135
147
90
119
49
98
54
145
114
113
165
111
135
111
113
160
124
137
114
110
146
98
164
130
126
95
103
76
93
100
124
94
102
109
159
199
98
54
95
108
65
102
81
177
103
83
134
141
124
49
104
132
123
148
74
142
98
102
78
96
105
108
115
81
138
97
121
85
105
78
81
111
127
157
108
116
138
96
144
141
163
134
124
150
81
61
97
49
107
139
106
102
152
87
117
112
95
145
157
134
105
74
136
97
112
156
127
91
76
116
102
54
93
90
121
87
112
107
144
107
89
103
108
119
75
49
145
113
167
101
123
96
59
87
111
105
95
49
99
75
125
129
124
113
145
69
102
83
148
128
145
128
106
125
83
102
73
80
54
135
118
174
84
137
106
163
113
171
92
105
106
77
156
122
140
108
129
59
132
102
116
83
112
171
155
116
88
93
125
145
90
110
161
59
54
102
76
179
143
81
129
82
49
147
74
138
134
83
74
70
54
148
155
127
141
158
98
119
102
176
103
99
102
122
108
151
123
112
102
127
136
95
115
85
152
162
108
79
122
54
173
98
151
59
125
173
102
94
125
90
59
128
99
158
94
133
153
69
171
131
89
122
154
133
96
86
102
139
153
121
191
102
74
195
105
98
120
112
149
82
138
124
172
107
130
54
54
130
94
125
90
156
128
108
95
112
96
132
120
90
121
148
49
108
100
73
68
54
125
112
180
95
129
138
126
120
141
102
122
102
103
139
93
116
98
112
103
95
95
128
108
105
107
97
95
120
199
114
107
90
147
150
96
145
117
59
171
54
77
83
108
79
102
177
90
84
69
92
161
170
150
84
54
114
124
129
129
95
116
138
134
82
115
125
120
126
77
97
109
84
107
91
112
68
106
155
102
99
81
134
93
106
116
98
113
98
129
111
106
54
160
80
116
102
129
102
124
94
125
150
116
144
101
80
111
132
125
108
143
130
54
154
82
122
109
127
113
135
127
115
146
93
78
82
114
99
116
186
105
153
117
90
122
81
95
87
135
142
49
137
104
87
155
133
128
103
140
125
166
152
108
102
200
99
163
74
105
135
127
84
93
132
126
134
54
103
111
103
226
112
105
84
118
101
86
121
67
88
87
110
130
118
54
150
115
173
98
104
110
102
68
49
118
103
127
141
100
141
116
99
113
141
94
69
150
107
157
112
115
98
95
98
90
103
144
124
116
113
130
108
74
90
130
98
131
144
98
156
78
113
119
95
127
87
142
125
132
155
172
116
61
133
177
91
139
105
90
49
83
140
95
146
177
76
135
116
108
127
103
147
54
161
128
81
135
141
96
108
130
114
93
122
93
98
156
129
98
111
95
95
82
118
76
140
107
125
163
118
81
131
125
135
122
77
79
105
105
81
110
114
123
161
140
132
121
128
95
116
77
166
59
120
128
175
124
108
105
125
125
89
99
138
91
126
78
131
127
117
118
106
109
164
151
115
106
131
117
145
175
145
96
54
111
115
136
108
113
115
133
135
126
114
130
115
108
170
146
83
113
81
130
121
140
119
83
105
54
102
131
135
100
54
123
127
141
115
90
82
115
94
139
90
103
167
110
125
123
131
68
84
115
103
119
116
81
100
123
78
102
125
90
147
127
98
148
95
140
95
104
96
96
158
132
102
145
154
54
131
135
124
95
103
105
122
126
140
122
112
127
149
115
148
148
114
78
49
115
129
108
167
54
104
101
127
137
152
101
163
150
54
101
113
123
125
121
81
146
140
91
102
112
54
54
145
122
110
108
125
95
100
74
119
140
102
158
128
118
133
102
115
135
105
95
94
219
112
91
112
104
59
102
137
81
102
122
146
104
84
146
54
130
156
59
142
139
122
54
119
76
89
120
135
95
110
108
103
139
165
93
143
67
89
79
74
179
148
133
119
123
91
118
136
98
157
74
103
133
129
102
122
149
110
54
105
121
81
143
159
134
144
139
129
68
108
121
133
117
150
98
93
124
133
149
92
128
103
119
102
87
177
181
150
49
59
117
142
87
79
137
124
129
146
102
113
154
114
90
145
77
84
49
127
158
102
108
81
49
91
87
103
107
156
95
135
167
98
115
107
126
84
113
77
90
155
89
145
54
91
133
143
61
108
128
134
106
177
54
76
104
118
123
113
106
157
146
125
116
125
81
132
191
96
175
105
95
91
82
148
134
123
140
97
91
59
115
153
143
81
147
127
144
124
200
200
135
101
74
114
152
134
146
134
101
76
98
102
95
107
111
54
122
105
77
170
98
89
78
125
196
49
110
117
89
74
115
122
135
106
117
110
107
113
172
108
126
76
121
111
114
99
123
108
115
49
96
54
78
85
131
121
135
126
90
135
158
104
109
151
109
133
67
115
90
142
54
144
108
49
191
133
74
82
83
85
122
157
96
102
106
116
138
115
113
170
200
126
95
113
89
49
106
128
93
133
114
87
92
157
163
146
115
168
95
81
166
104
102
105
107
124
76
113
130
61
93
92
167
80
146
54
142
112
122
144
95
205
148
98
131
90
105
128
158
105
122
110
145
143
109
98
95
137
103
148
74
87
83
137
125
109
54
122
74
117
104
163
128
172
200
146
130
114
108
134
153
125
132
101
159
112
88
192
67
102
155
125
104
134
114
113
170
82
100
82
113
81
135
107
114
147
189
94
102
96
59
100
144
144
124
108
165
98
102
73
62
59
103
134
78
133
105
81
127
54
103
104
120
102
127
113
101
154
133
194
170
121
108
131
135
113
155
109
72
141
114
112
127
74
166
140
110
129
144
149
106
103
126
167
90
157
111
54
131
74
119
103
124
99
148
144
200
140
149
113
131
80
127
95
98
115
128
110
132
165
81
106
86
104
127
125
112
127
163
95
124
143
109
104
138
115
127
54
123
102
118
49
121
83
133
110
111
98
148
103
153
158
112
108
131
87
84
111
161
98
80
109
129
102
158
166
150
82
112
109
102
141
120
112
73
135
106
170
77
92
122
128
84
143
161
74
115
96
77
113
78
159
131
81
85
124
100
102
93
116
145
85
102
117
82
92
113
140
151
129
102
102
128
76
87
95
74
139
113
166
177
150
125
69
145
125
131
173
136
137
108
84
91
116
98
158
88
103
95
136
103
93
49
118
141
113
131
68
148
116
132
144
119
100
90
104
96
77
107
104
158
180
129
97
102
144
98
129
120
76
145
74
98
161
100
100
86
101
110
110
121
138
49
81
131
115
147
102
122
95
132
59
185
73
112
80
200
54
160
102
160
79
54
134
118
54
133
144
106
98
80
104
108
138
76
79
118
127
62
129
157
140
151
129
177
145
93
170
81
95
163
102
104
84
95
140
140
104
123
69
67
102
76
103
126
120
103
111
140
133
101
69
113
127
155
144
93
83
143
105
149
87
105
114
91
166
74
99
167
81
116
134
142
125
123
115
128
117
135
111
133
81
125
137
97
108
125
127
155
67
131
103
122
121
157
160
137
140
128
129
170
76
95
154
99
97
54
76
67
132
182
105
95
120
145
105
97
125
90
63
80
106
153
140
154
112
102
161
148
130
130
105
143
127
108
135
102
89
118
138
89
147
92
76
82
74
135
109
167
143
83
158
144
95
130
103
84
54
133
147
94
84
147
102
90
74
98
122
132
130
122
65
139
99
95
102
97
103
158
92
67
132
81
91
87
124
93
154
91
70
128
83
108
59
112
54
113
110
133
98
134
99
103
151
161
151
106
104
69
115
127
78
87
154
129
160
102
147
119
150
154
103
168
81
108
85
180
135
131
114
101
91
158
98
146
87
128
69
95
101
172
119
80
140
139
136
81
140
168
97
72
194
115
107
103
54
135
102
157
103
123
172
99
95
161
87
134
77
95
69
107
100
125
113
81
80
105
148
90
128
93
63
152
123
67
148
113
106
98
108
80
150
192
138
61
103
167
159
97
115
100
127
116
148
167
141
155
117
87
92
127
82
141
115
113
117
116
54
93
105
143
97
116
74
143
127
120
134
101
108
98
108
140
95
103
163
81
106
145
112
108
143
102
76
111
81
131
142
165
158
139
96
88
95
189
93
87
54
113
97
112
148
129
108
127
117
77
54
129
83
74
128
59
104
108
123
122
118
168
150
54
77
148
108
113
104
74
142
124
136
54
98
131
120
144
140
70
118
109
107
141
61
91
96
113
145
82
122
107
172
95
131
125
130
112
144
152
154
158
107
112
61
91
137
158
85
186
108
115
108
103
119
180
90
134
123
131
124
163
54
103
119
93
94
174
114
131
139
74
151
54
115
119
140
106
89
91
159
106
154
117
105
108
168
103
139
102
112
102
95
103
54
171
54
126
141
125
133
95
114
110
119
156
121
54
59
100
179
118
126
133
104
111
116
121
108
149
81
119
108
69
54
163
139
134
124
125
125
113
98
119
188
118
123
127
79
134
164
95
67
54
116
121
83
94
97
130
166
113
122
80
102
79
163
103
87
119
128
125
49
116
107
158
119
98
78
96
120
101
85
82
77
81
204
54
97
94
158
131
141
122
157
81
123
78
93
108
182
127
54
96
103
138
45
104
146
177
103
134
83
113
135
77
126
93
74
103
123
122
77
100
134
127
120
153
151
103
129
113
105
158
102
81
94
78
183
124
154
144
105
102
107
103
131
121
81
137
103
129
154
54
92
108
49
115
122
188
162
132
104
102
158
54
134
117
97
59
108
87
95
128
114
198
96
112
85
134
158
178
148
120
146
133
141
127
108
94
116
81
98
116
125
191
122
99
104
116
154
155
179
133
100
165
106
85
127
148
78
104
81
77
200
96
156
141
141
74
103
140
93
161
149
113
112
79
113
126
114
171
103
88
98
99
144
108
131
116
105
115
146
129
104
112
167
166
74
156
165
148
158
109
111
74
149
118
108
194
95
101
169
103
128
93
165
74
108
180
91
190
59
107
112
130
156
143
114
106
158
54
100
104
96
142
54
109
108
146
102
125
156
98
158
99
103
68
136
95
125
67
96
135
116
119
125
80
104
113
154
95
97
87
113
141
161
90
148
102
129
94
115
136
95
108
67
104
96
106
137
147
87
138
73
112
150
89
49
144
114
103
138
98
90
155
108
160
62
127
118
91
85
154
102
82
101
61
105
83
145
149
147
110
100
133
134
165
81
127
77
148
109
98
126
104
132
105
116
108
89
125
77
76
95
129
94
124
127
108
157
138
105
134
126
121
131
105
108
98
104
155
59
133
49
83
121
104
133
113
120
135
97
102
82
94
74
132
131
106
80
124
114
113
125
108
141
103
107
81
138
96
83
140
173
133
90
156
128
142
126
57
113
135
100
175
117
95
175
112
117
98
135
125
74
77
98
94
105
109
54
107
59
148
106
92
98
67
106
164
57
166
130
143
76
96
139
109
157
141
90
108
83
119
108
109
129
98
141
85
87
98
107
172
80
113
146
114
121
88
120
165
95
144
108
131
95
204
59
139
142
103
106
157
102
116
172
78
94
107
108
49
54
106
143
135
95
95
116
129
117
137
54
105
87
148
116
140
152
87
151
130
157
95
138
177
153
120
61
54
119
167
88
156
135
103
166
108
74
131
87
95
112
59
112
123
98
113
128
154
110
106
105
90
126
88
150
175
69
76
105
108
81
103
123
120
163
87
102
108
117
100
146
128
147
129
100
97
181
116
112
76
91
96
106
119
116
98
89
115
151
105
117
134
131
117
140
123
74
110
54
122
79
161
95
108
135
132
90
145
161
68
129
155
84
141
98
107
102
112
102
141
123
92
131
124
111
115
125
130
124
122
123
108
156
98
155
103
124
95
117
144
90
103
118
86
95
128
132
155
159
113
125
54
117
98
107
59
98
129
93
99
136
102
76
146
127
104
133
113
147
102
61
128
172
107
103
103
143
93
154
83
120
69
158
98
133
67
172
160
141
180
134
117
49
78
102
115
123
117
168
106
85
164
179
142
91
102
95
165
102
105
102
112
148
140
146
108
74
107
102
134
123
76
81
125
156
91
54
120
110
125
67
95
119
77
180
95
112
123
138
103
92
85
137
112
112
135
108
133
101
85
107
74
105
180
110
95
74
78
104
95
98
120
114
130
90
149
160
90
54
102
82
132
99
133
123
108
121
108
134
115
131
109
131
214
135
119
81
77
132
123
102
108
156
49
108
106
140
108
115
95
161
144
54
113
118
134
107
121
156
102
141
139
129
110
139
126
116
74
109
140
140
143
114
105
158
110
105
101
131
87
146
125
174
95
134
76
67
96
78
160
128
108
54
82
108
188
98
178
112
159
74
125
113
76
155
97
94
100
131
188
100
126
123
54
122
74
197
168
145
98
216
120
98
104
129
113
94
116
112
113
90
144
131
97
125
109
145
89
124
91
128
136
149
167
103
98
158
76
42
95
138
83
133
109
207
98
137
152
107
127
83
59
108
193
95
149
74
98
74
141
137
131
163
131
108
103
49
149
121
127
98
99
108
115
96
169
179
177
85
82
113
131
132
65
147
131
93
144
118
157
118
151
163
114
120
112
59
104
69
95
95
137
108
136
98
77
109
122
103
110
108
152
108
96
113
103
100
90
170
122
113
135
112
156
78
94
108
141
98
151
95
205
54
97
161
162
123
135
128
54
139
123
116
119
97
156
131
115
108
93
118
143
122
96
113
68
108
83
95
103
104
103
204
119
76
119
94
83
191
146
54
127
103
86
90
116
99
82
133
123
102
157
135
103
112
139
124
147
110
108
125
79
124
145
109
115
125
61
160
132
83
129
191
106
125
109
69
161
117
111
113
105
125
113
54
82
108
83
110
149
135
108
102
115
102
108
125
84
49
81
95
131
84
127
131
102
108
108
98
162
142
134
105
54
138
105
149
102
118
146
122
128
164
147
49
116
103
138
86
112
91
110
93
49
101
67
162
106
100
147
111
141
81
116
139
98
126
59
54
131
128
95
106
85
107
105
125
81
85
67
129
130
131
108
156
158
106
95
133
108
79
87
126
151
128
87
108
167
148
54
84
166
172
114
95
161
102
106
163
147
172
132
95
156
160
148
97
112
123
144
109
76
95
117
117
98
100
113
71
59
143
77
96
97
150
139
67
213
131
107
108
127
76
93
103
96
158
103
74
139
74
98
133
87
133
170
90
104
54
69
159
108
123
95
151
144
82
98
125
127
144
139
124
105
124
177
93
197
133
173
103
145
151
118
86
76
113
120
90
139
126
102
114
90
144
91
129
137
115
95
101
212
110
124
176
100
103
144
123
111
145
127
150
102
147
91
192
179
131
134
127
160
135
82
135
156
103
113
180
151
183
54
105
107
145
108
141
81
120
125
93
81
160
54
81
127
144
85
120
76
176
168
101
113
119
148
183
103
104
116
148
121
125
84
103
54
135
106
108
140
68
143
114
136
200
84
102
158
158
59
91
59
102
95
140
123
94
117
115
157
181
158
126
130
169
54
113
89
96
95
146
100
99
128
204
101
93
103
141
59
100
67
149
108
136
142
138
140
157
102
119
129
128
161
165
97
95
141
151
142
113
118
98
159
150
125
93
132
79
54
102
83
83
91
138
95
107
137
105
111
125
150
125
95
97
74
54
120
68
95
103
173
98
110
80
99
119
88
155
144
101
126
54
105
85
140
155
170
118
129
82
87
85
102
134
54
83
82
128
164
165
108
112
135
117
87
54
147
135
77
96
148
118
138
98
116
80
77
146
108
98
133
85
95
170
123
88
99
129
102
125
154
93
113
173
59
115
106
102
45
103
95
74
137
128
125
153
118
108
117
105
124
139
134
128
126
115
104
107
106
173
112
77
78
90
177
102
155
98
116
123
125
108
118
91
135
131
59
54
125
132
139
142
113
87
87
138
155
100
152
128
123
113
103
95
89
83
209
77
111
87
144
94
132
110
123
130
171
83
131
81
150
102
132
232
68
136
101
148
149
98
146
136
81
107
190
107
113
169
108
106
113
107
122
139
54
139
122
68
91
129
107
145
107
114
128
103
54
188
129
89
116
128
85
133
114
127
113
116
135
110
153
140
152
91
93
193
82
105
131
188
98
130
140
59
126
106
144
114
104
96
191
157
147
130
107
87
97
155
129
110
74
83
49
75
140
125
80
90
91
81
54
83
102
115
144
140
109
61
115
117
148
120
82
146
134
49
103
110
108
140
147
103
54
149
59
95
98
90
95
107
98
97
108
165
119
82
113
149
93
85
111
93
144
96
188
123
110
132
94
135
105
115
139
148
111
104
148
98
108
196
81
122
113
63
115
122
102
74
98
54
125
133
93
118
97
85
93
81
98
107
102
121
114
108
68
112
105
158
122
112
105
105
101
95
105
144
130
103
98
102
107
107
106
103
140
115
141
49
126
95
108
134
94
133
80
142
88
98
139
81
105
107
67
129
138
200
118
76
107
91
103
119
177
200
130
179
177
127
120
100
108
114
179
102
102
126
103
102
163
106
98
139
97
92
114
111
126
119
150
174
145
116
96
126
143
165
122
128
113
100
144
54
135
131
141
126
61
144
144
85
139
126
137
162
126
113
118
122
102
123
149
99
112
98
127
106
108
97
132
104
147
122
93
94
124
138
139
129
143
150
87
95
131
54
136
105
113
98
150
106
105
54
104
157
103
102
112
202
145
122
102
116
116
144
167
95
111
114
160
136
98
102
67
98
81
145
149
95
131
95
93
144
130
77
74
156
105
113
176
125
144
98
77
84
92
96
103
102
135
133
49
124
149
80
154
110
105
101
128
163
144
110
102
122
114
141
112
95
127
135
147
124
133
150
141
124
140
103
116
54
144
85
116
127
148
140
54
74
91
124
100
125
99
134
117
106
96
93
128
125
120
129
88
97
133
145
125
100
151
132
108
85
128
108
146
151
92
100
141
152
92
156
139
177
114
95
156
91
129
157
76
117
49
104
125
107
101
67
163
189
86
95
105
108
91
82
69
122
115
70
134
177
133
148
100
116
78
137
126
97
102
127
67
95
128
77
90
81
130
105
123
87
90
49
173
113
144
103
140
158
121
125
156
158
83
152
127
78
98
106
95
81
49
104
151
132
83
120
91
73
93
122
104
92
115
103
138
144
133
94
138
87
132
147
145
95
89
139
81
92
140
91
158
154
81
127
57
105
77
135
98
112
107
93
128
108
119
159
155
132
87
98
95
72
167
85
100
106
77
133
131
93
95
65
97
106
76
102
148
158
49
134
59
59
210
132
142
152
191
95
121
108
138
106
137
112
105
94
76
111
101
106
110
105
141
128
107
92
126
100
95
83
182
138
124
81
95
109
128
120
59
113
128
93
131
151
116
54
76
54
139
98
157
84
128
133
103
117
129
81
81
102
133
177
124
127
125
54
149
173
163
194
94
129
128
105
61
79
125
114
125
124
189
154
154
110
90
99
98
92
132
144
102
87
109
65
163
132
144
136
134
136
116
125
101
98
54
148
118
157
109
120
105
150
140
107
139
68
106
92
101
102
129
108
163
148
145
103
127
94
113
108
103
69
126
119
110
158
117
157
106
148
113
129
74
120
108
153
135
99
104
139
108
106
140
74
81
49
77
61
54
91
81
125
144
87
93
175
115
141
148
94
125
90
127
101
139
126
67
49
142
113
141
54
118
202
125
132
149
93
90
141
194
95
146
100
97
177
147
128
128
109
104
103
105
122
90
73
73
107
127
113
168
139
134
115
77
171
124
122
110
102
91
156
67
146
134
103
115
120
106
163
194
129
123
118
129
74
133
176
171
155
49
98
96
98
59
89
96
93
67
124
125
54
71
102
168
112
89
125
133
59
158
129
108
101
54
146
74
119
93
103
112
120
120
96
177
158
148
97
148
98
107
139
82
108
102
105
155
101
122
95
161
126
127
99
95
96
94
121
115
119
108
162
103
125
96
87
143
131
126
119
114
145
158
138
59
121
81
108
88
108
115
87
99
190
84
106
82
145
103
118
100
95
99
81
54
123
59
108
96
119
172
114
83
102
143
76
49
49
113
117
108
120
98
103
89
87
102
77
106
71
77
127
95
96
133
122
89
83
125
103
101
87
96
98
161
94
98
124
130
143
150
118
162
113
125
54
140
134
96
125
102
141
124
105
112
150
150
113
131
126
123
127
144
112
104
95
83
177
49
108
95
139
123
142
59
139
122
135
147
121
102
100
133
128
90
104
108
128
72
74
125
156
81
90
115
87
122
96
126
147
106
93
125
103
191
74
148
116
106
59
137
200
118
67
87
151
119
164
128
125
144
101
150
103
69
157
150
101
149
139
150
126
131
147
87
102
119
74
121
121
102
109
130
103
108
99
141
153
134
140
110
93
102
106
170
101
114
136
105
118
85
95
54
95
156
87
165
100
120
173
143
108
131
102
123
131
122
93
100
83
140
97
82
108
155
113
127
121
96
95
135
103
94
98
67
99
74
117
143
135
148
117
95
94
128
107
113
107
151
104
126
80
90
106
103
188
113
166
121
107
102
54
76
122
127
54
119
100
168
116
98
91
95
101
82
98
154
98
81
153
111
141
80
67
96
93
120
140
103
115
161
115
142
89
120
146
74
108
117
108
128
110
49
119
156
87
177
129
124
86
145
143
98
128
121
140
143
131
133
119
83
118
147
77
122
105
81
98
87
202
78
95
142
105
90
74
141
85
103
61
124
112
144
158
129
182
131
107
145
108
84
104
86
128
87
105
109
107
69
87
107
49
98
186
80
140
106
102
59
108
145
173
129
119
127
113
128
143
121
117
103
98
97
150
159
88
98
105
103
107
103
90
95
54
86
123
132
105
130
106
102
131
102
99
114
140
89
80
140
122
83
144
123
113
146
148
120
102
106
112
141
61
120
83
95
122
118
127
114
153
100
128
80
106
81
49
77
54
139
161
119
96
108
117
65
137
148
116
135
81
98
121
140
74
129
125
87
107
65
54
118
133
98
107
108
67
177
158
144
81
81
106
109
133
83
156
150
77
148
119
133
54
133
100
100
104
120
149
83
90
116
82
141
144
102
79
54
118
151
76
113
54
112
83
180
105
108
121
138
132
131
80
173
84
74
82
88
104
157
101
131
90
133
99
103
72
74
148
180
81
161
138
96
110
98
89
131
129
110
127
155
95
177
148
122
136
120
74
81
93
54
140
104
119
86
109
115
110
81
77
109
102
84
131
98
72
87
76
96
102
96
117
125
118
157
132
101
138
169
114
106
126
129
117
79
95
122
156
99
54
138
54
99
107
96
149
165
123
111
49
97
138
118
73
142
122
100
139
76
54
110
102
112
78
148
81
113
125
85
177
90
108
114
102
94
101
123
124
87
150
88
82
113
128
134
104
129
92
95
98
110
124
86
115
90
89
140
108
49
77
120
77
156
120
81
154
139
123
125
131
102
187
102
99
54
112
104
135
107
126
142
155
145
90
125
131
81
131
96
111
91
119
81
147
80
87
141
135
162
98
136
123
159
125
108
145
120
133
123
109
95
100
115
147
118
163
146
121
87
88
120
186
122
142
98
124
89
119
74
101
131
67
145
173
161
127
74
84
127
111
74
146
112
124
54
129
125
106
140
54
177
131
95
119
102
110
119
134
54
102
107
59
150
87
77
180
167
82
90
94
119
90
112
113
120
144
81
111
84
151
148
67
108
112
140
130
81
130
125
181
109
143
98
137
138
129
85
54
133
108
118
90
76
125
110
190
87
49
59
108
108
77
98
206
97
76
76
90
136
81
113
103
112
114
117
114
49
138
127
94
142
140
113
132
122
134
96
81
138
101
139
104
139
128
123
154
112
103
146
129
136
98
131
91
73
124
119
124
54
95
99
85
108
170
161
153
125
127
97
167
108
119
122
129
108
89
95
116
103
129
130
90
141
129
83
122
107
134
98
124
118
158
133
119
90
97
179
176
133
177
111
121
108
156
129
83
125
139
138
149
81
156
138
81
151
76
169
101
95
113
138
159
154
73
133
130
54
117
140
103
125
123
127
137
113
146
122
171
96
141
93
146
125
82
116
105
134
129
102
49
137
119
95
133
120
123
107
98
133
133
94
146
148
105
61
128
144
74
108
90
115
120
89
67
77
84
149
115
103
95
108
80
113
127
77
124
59
102
96
87
68
102
117
115
81
74
160
74
54
133
108
194
54
94
144
87
104
109
88
83
175
115
108
165
108
126
54
81
101
54
119
98
165
103
107
153
153
91
96
119
81
98
108
131
157
98
95
151
76
159
109
113
104
107
74
140
116
142
131
130
115
132
78
123
164
117
81
93
126
122
99
156
83
121
108
86
96
81
77
79
122
150
134
78
129
131
102
111
113
120
148
108
124
185
102
128
109
115
120
119
61
138
146
109
122
131
126
102
160
141
105
164
108
107
155
132
143
132
131
135
108
146
143
49
133
118
103
123
102
116
116
124
87
110
87
67
61
113
99
133
119
104
108
117
90
126
102
143
138
182
102
169
77
81
150
90
95
133
135
97
136
90
59
162
128
74
81
113
49
109
126
127
99
107
97
167
160
125
103
117
99
76
135
100
125
131
139
98
113
145
76
113
67
180
137
108
108
139
106
107
100
107
115
95
93
143
135
102
102
133
121
120
134
118
135
114
168
145
98
103
119
120
95
59
74
94
95
105
135
49
174
108
118
85
72
54
153
107
89
54
59
83
127
113
100
113
100
121
135
95
99
133
91
167
144
61
100
162
79
82
78
85
143
115
167
158
107
117
192
107
93
112
149
81
126
108
96
124
108
61
94
96
177
54
102
135
54
113
142
102
145
125
80
100
108
102
92
98
128
139
54
49
133
158
133
179
95
149
168
108
102
98
54
135
140
97
127
105
95
103
54
106
205
102
95
133
110
104
82
112
113
98
108
102
95
127
139
98
69
161
144
98
141
107
122
163
191
126
49
116
149
108
143
155
69
69
127
59
67
117
54
128
120
81
148
73
150
87
97
88
95
130
191
107
130
114
102
142
87
77
102
110
120
143
134
80
158
115
103
77
107
116
135
103
118
113
78
103
138
82
96
151
140
129
98
102
145
139
111
172
104
101
101
90
120
148
80
140
91
54
128
103
59
140
145
134
76
159
100
83
59
145
67
98
110
101
141
156
74
102
86
82
100
180
54
92
131
105
105
153
149
54
68
122
147
163
140
116
158
89
127
93
102
110
87
177
148
127
109
76
83
128
68
86
144
100
128
81
108
143
151
95
54
77
151
128
108
138
123
85
98
83
106
77
82
111
106
133
95
98
103
79
133
100
107
87
95
78
101
90
93
69
123
108
102
111
139
78
54
114
95
100
121
128
158
149
151
106
180
103
94
73
118
114
98
107
103
127
79
177
163
102
102
161
102
128
77
135
108
49
98
125
99
155
133
106
172
93
112
95
107
133
102
133
108
127
127
146
102
87
108
95
54
73
141
119
95
119
113
133
89
155
101
133
93
103
94
104
54
119
131
81
109
104
105
135
157
123
91
74
112
128
111
54
54
120
87
165
135
110
148
124
147
102
139
114
135
192
54
67
113
124
121
85
74
103
132
92
90
147
142
152
133
85
76
87
145
87
134
95
177
96
151
145
85
99
144
61
94
118
82
98
74
128
105
122
143
94
224
125
131
113
124
170
54
129
105
144
144
128
146
95
155
93
135
146
90
69
110
146
107
116
119
174
136
157
146
151
138
121
114
141
122
130
186
177
151
130
113
85
87
123
90
78
117
148
147
148
127
140
108
131
145
54
111
166
143
147
131
54
125
102
196
160
129
73
147
138
97
96
165
168
138
119
120
90
95
135
97
144
102
97
136
115
89
113
93
95
114
110
59
145
54
119
54
93
177
74
97
90
144
139
149
93
151
122
87
144
103
155
85
54
77
119
100
121
112
101
103
95
116
177
175
122
94
54
110
96
105
74
94
135
100
127
141
90
152
90
122
54
105
141
142
54
54
112
113
101
143
120
131
151
158
82
96
130
96
102
162
82
175
193
79
127
153
89
108
97
102
112
180
128
121
151
54
169
202
90
108
131
117
90
94
145
151
97
107
70
101
156
112
153
119
111
148
195
89
95
165
106
93
108
118
103
115
124
150
117
111
49
54
104
133
165
112
106
67
102
111
49
145
177
158
98
95
95
128
93
93
119
146
133
74
89
87
163
79
82
154
71
128
98
162
94
128
105
74
110
108
101
89
116
110
147
137
93
131
129
148
49
100
88
161
104
123
90
83
95
156
129
67
54
103
144
81
165
146
122
93
194
167
105
131
118
117
115
154
177
107
98
148
54
108
124
137
136
98
124
151
165
95
90
109
95
95
131
132
95
134
148
105
134
132
104
136
97
88
95
164
54
115
127
80
79
122
134
109
129
150
145
113
95
69
65
144
54
120
130
96
76
155
108
144
114
95
151
108
96
117
139
99
117
183
108
123
87
123
123
116
96
98
121
113
153
121
144
135
91
69
128
113
82
113
88
136
87
133
150
106
154
158
135
156
98
143
135
98
122
108
155
94
104
143
104
103
100
93
103
101
139
134
105
129
76
59
93
92
106
113
81
81
105
117
131
133
81
128
108
148
49
128
168
87
112
97
102
132
104
98
82
142
135
90
123
59
147
133
54
101
69
140
121
100
160
132
65
146
142
109
133
108
168
108
113
82
112
149
108
109
156
143
98
149
186
104
67
77
110
150
95
85
125
127
96
102
123
185
87
80
109
140
140
104
93
125
120
127
148
194
147
91
87
115
127
82
138
105
156
107
76
140
121
98
143
156
132
125
120
125
127
124
119
98
102
166
140
142
108
117
99
76
117
119
107
116
59
119
105
114
107
172
95
91
91
98
116
95
98
54
158
101
119
148
166
115
81
90
122
146
181
171
151
122
138
68
95
131
107
108
76
113
123
108
120
157
106
70
49
133
59
122
135
105
200
120
113
131
95
95
90
54
78
144
103
121
138
129
130
110
110
113
85
49
125
83
96
186
83
212
143
78
167
173
98
118
87
160
98
79
94
129
97
101
77
143
92
112
109
138
81
124
96
74
98
59
87
123
87
76
99
150
102
122
103
119
111
97
87
122
117
119
128
134
113
100
179
101
54
103
131
133
113
54
108
116
177
95
117
98
128
135
99
103
141
171
54
112
96
73
102
118
144
122
144
158
133
116
98
122
98
151
85
116
94
96
146
121
133
94
54
124
122
113
102
159
108
83
107
134
98
96
98
107
102
83
122
120
54
139
144
130
140
146
61
95
97
135
104
137
74
109
78
116
82
132
54
194
106
149
125
54
68
126
105
127
96
112
107
156
167
103
135
102
110
81
105
137
103
100
137
54
84
165
177
78
85
49
146
106
102
102
107
103
140
143
99
167
108
124
127
106
104
148
54
72
112
177
106
124
108
129
98
98
116
140
95
95
125
81
144
136
86
115
101
102
132
125
136
214
102
49
118
102
138
92
97
156
131
54
157
157
103
81
123
130
111
142
114
99
118
103
90
145
138
109
144
131
95
139
104
82
115
168
108
99
115
145
54
154
115
113
146
115
99
120
148
120
114
124
137
126
80
49
103
113
103
119
124
100
116
127
135
106
124
84
148
113
127
103
151
133
129
93
111
139
165
103
106
80
87
116
81
155
108
125
94
177
120
119
125
116
67
108
137
136
78
74
73
90
172
133
146
135
125
97
122
99
133
125
129
146
113
108
108
105
93
141
139
59
146
145
96
145
138
74
59
105
121
131
147
108
113
49
161
154
146
148
96
54
104
93
95
87
110
107
115
115
96
79
74
82
120
145
98
80
126
130
102
149
132
103
112
113
123
95
98
108
170
121
132
74
106
149
139
102
133
102
87
108
87
101
162
95
148
161
130
120
151
138
138
115
80
87
95
139
125
54
108
108
103
77
134
95
122
167
59
54
112
144
148
54
182
126
62
133
141
103
114
102
113
120
90
168
113
102
98
136
128
102
49
95
156
106
173
143
87
138
133
83
81
99
109
178
160
102
149
146
170
135
54
133
83
49
118
107
124
138
98
81
161
108
105
54
106
158
112
167
144
105
176
100
138
142
77
54
135
93
117
95
83
177
97
101
102
102
178
153
132
101
120
141
81
120
102
98
134
88
81
69
120
117
82
129
145
115
128
77
108
80
137
113
157
144
76
86
112
76
76
147
107
127
135
139
108
97
105
144
115
110
101
91
128
136
97
115
59
128
133
138
113
144
134
71
98
98
159
130
158
96
102
61
166
100
59
126
81
81
82
123
131
201
128
142
95
103
80
116
163
101
67
139
133
78
95
136
145
91
113
140
65
95
101
93
128
129
97
118
126
133
141
118
118
155
157
77
140
112
87
107
102
107
59
131
136
99
75
180
99
133
148
104
111
100
90
133
81
143
103
138
102
135
81
101
147
133
90
163
107
110
158
45
108
100
128
144
102
80
59
74
188
93
109
93
205
90
128
102
91
113
61
81
133
107
155
95
54
83
114
93
127
158
180
100
92
102
147
144
129
133
154
82
152
100
93
134
133
78
115
73
123
101
129
74
116
126
94
93
106
123
141
167
108
90
115
139
54
189
108
106
69
107
133
61
146
127
144
74
123
112
148
107
49
141
119
92
117
54
139
139
98
75
120
154
77
118
128
95
164
95
101
136
139
94
160
141
171
131
93
114
112
148
81
113
188
103
123
98
102
91
49
111
147
109
155
148
177
151
108
119
157
118
90
143
95
122
110
98
96
91
94
102
114
113
95
134
88
149
103
78
103
128
143
167
98
95
54
108
112
125
67
112
125
85
120
81
134
74
116
122
89
149
116
123
82
124
106
115
95
109
112
165
95
125
163
108
49
82
130
54
144
138
123
118
108
109
54
103
87
81
147
54
150
96
97
148
133
107
190
100
157
108
148
107
108
158
108
73
104
94
59
93
151
105
129
90
102
144
71
110
117
91
116
120
156
100
125
123
54
88
145
130
98
118
102
115
130
135
114
168
113
127
172
98
122
98
180
121
118
82
93
115
107
91
143
154
124
140
126
105
76
143
137
125
73
88
80
95
103
122
139
83
90
111
126
78
125
169
61
95
114
134
127
102
81
102
141
124
123
84
87
78
140
93
152
181
158
151
91
94
54
140
92
131
107
90
117
137
146
115
94
124
103
102
113
142
130
133
98
124
78
54
95
89
80
81
113
108
102
124
76
54
102
69
139
90
88
83
135
102
173
83
123
93
135
107
77
142
145
105
97
111
161
80
137
129
109
90
106
91
90
101
114
104
118
108
105
108
102
96
84
129
140
75
129
91
54
105
125
97
161
95
143
49
54
141
146
106
59
108
158
129
121
81
49
150
122
138
150
118
168
111
49
147
146
157
90
118
105
123
137
158
138
122
111
144
105
103
67
116
78
102
95
89
102
92
106
115
125
96
110
200
93
144
119
138
107
150
155
149
112
186
80
68
119
115
54
113
74
131
76
93
74
113
92
142
132
115
112
117
108
97
120
124
185
114
110
198
98
150
78
135
91
207
115
121
146
127
108
136
93
59
76
140
145
103
91
54
123
113
81
130
128
103
85
68
94
97
67
108
120
123
77
98
84
103
123
107
193
140
92
95
152
165
135
108
98
102
92
76
90
114
103
116
126
116
123
141
133
119
144
120
54
95
96
128
160
133
160
49
145
104
134
147
118
90
103
149
155
118
96
98
121
99
110
105
138
162
128
95
121
111
156
123
93
137
91
119
133
119
97
133
116
131
125
140
102
132
96
97
89
148
165
125
138
120
103
157
102
108
138
87
122
158
98
137
102
123
130
85
81
127
138
125
49
80
110
108
110
95
97
80
142
111
89
81
116
85
102
74
108
94
144
93
93
128
144
102
194
94
93
102
113
91
61
141
129
95
126
95
69
116
124
113
130
110
92
161
117
151
120
98
54
126
108
156
95
78
144
54
122
90
78
172
128
111
112
120
80
113
133
148
54
106
76
138
135
90
103
87
108
110
147
118
169
147
151
153
82
106
67
96
111
117
151
130
157
149
107
125
146
172
148
108
79
161
145
98
95
105
133
128
108
95
99
124
198
146
133
116
102
69
116
143
118
161
110
124
49
99
95
75
83
145
106
108
137
129
127
92
119
84
123
118
127
154
59
159
87
102
120
140
125
150
79
105
95
158
80
85
123
124
127
102
79
152
103
81
94
76
195
135
79
114
106
113
69
129
108
120
127
125
112
158
113
117
158
81
101
97
120
108
81
109
153
81
178
67
102
113
116
122
116
108
135
67
145
80
95
114
102
146
59
133
144
148
113
113
106
157
113
101
59
101
100
116
92
170
104
113
138
145
98
125
124
140
157
54
95
106
117
81
102
99
131
77
80
125
107
111
54
110
173
83
154
101
163
114
83
143
99
106
108
93
122
112
116
125
117
144
142
150
100
74
81
76
108
108
110
127
95
110
74
135
140
91
153
107
95
126
115
110
115
146
98
98
92
105
93
145
139
132
83
103
61
102
143
98
87
103
96
161
102
127
112
104
142
49
117
101
90
139
92
113
100
49
122
86
99
172
76
109
105
124
128
127
90
102
87
145
109
133
143
135
78
118
137
146
113
68
150
105
103
154
116
95
97
80
131
111
128
118
142
118
148
74
145
108
162
99
140
115
128
138
116
67
172
116
74
135
125
84
120
134
127
95
88
102
110
119
85
118
72
132
104
147
89
110
158
82
100
116
49
153
115
159
130
88
102
54
136
54
102
143
141
119
74
131
147
103
85
116
99
102
104
147
76
151
120
108
101
118
98
91
123
131
86
120
162
96
145
102
150
98
104
143
108
154
100
99
171
107
102
54
115
74
158
108
161
93
85
94
139
113
128
102
94
111
136
90
98
79
122
115
108
116
118
96
102
85
115
117
130
131
102
158
61
107
117
148
112
139
148
120
106
138
110
140
116
80
113
177
108
132
156
127
91
119
114
158
161
95
118
133
127
131
111
129
118
111
92
118
154
67
102
144
131
97
102
158
119
131
107
95
45
179
123
124
107
67
118
156
108
74
131
119
88
151
146
115
54
131
160
102
120
90
148
109
84
112
103
134
102
130
112
109
89
118
153
125
83
113
118
144
68
103
141
113
139
143
81
158
125
107
107
113
167
80
78
132
130
107
147
98
139
96
93
82
140
102
107
163
110
140
85
54
113
118
108
137
102
108
74
128
135
102
152
121
111
92
159
135
135
108
125
94
97
94
125
112
138
94
81
130
174
113
105
105
95
104
127
102
61
134
123
135
125
98
54
180
187
189
169
198
90
115
77
107
93
104
133
120
78
133
128
97
124
131
69
133
141
107
127
81
128
183
175
113
73
131
124
127
118
111
98
150
104
98
121
95
98
108
100
113
183
124
135
150
112
71
77
112
157
117
100
135
112
102
103
128
109
100
115
133
108
110
103
124
96
113
149
90
105
133
112
108
148
54
98
128
105
139
105
152
97
54
91
156
111
87
110
144
106
54
146
113
116
119
122
153
140
87
118
97
143
85
89
109
112
107
102
129
139
102
135
140
93
108
112
119
122
131
154
114
54
109
148
94
107
103
92
122
54
130
145
142
128
95
110
91
90
59
110
172
86
136
130
187
111
105
130
95
101
97
102
117
87
96
80
151
100
114
125
128
54
128
92
113
119
142
102
76
113
155
87
123
150
165
101
137
195
49
87
126
95
100
54
129
108
119
127
102
98
166
99
115
107
149
118
122
90
156
54
114
144
184
143
115
108
126
109
140
121
74
83
81
80
138
115
116
133
161
99
108
96
126
100
115
113
94
78
132
106
103
116
117
163
81
170
49
153
54
118
54
61
94
57
113
98
102
120
109
103
127
87
170
127
90
87
103
100
97
131
94
102
127
117
90
97
93
81
141
131
81
83
156
150
125
102
106
98
102
131
113
135
95
149
81
95
90
108
125
128
95
100
108
102
135
118
144
124
126
98
119
160
140
79
108
159
143
144
108
124
109
104
114
119
122
59
127
148
102
108
112
81
68
104
127
103
90
151
135
118
101
143
165
115
113
98
101
128
59
135
123
110
140
108
88
125
61
125
130
114
142
152
162
191
144
128
62
113
139
165
108
97
134
119
97
159
102
101
93
59
90
92
82
133
113
135
83
135
175
82
143
153
84
81
103
105
101
135
127
74
113
118
110
115
49
71
103
128
188
92
131
100
136
142
93
106
147
131
125
111
59
153
54
142
83
90
137
87
120
166
130
139
119
112
124
83
93
49
85
81
103
108
94
123
105
54
54
119
68
96
106
120
94
110
106
127
155
105
79
106
106
98
145
104
74
113
122
165
137
102
114
123
111
113
150
113
135
137
133
95
75
146
114
122
54
128
147
54
132
103
190
100
108
95
113
104
164
157
82
123
67
128
114
81
139
141
86
125
81
98
67
54
103
166
77
127
133
143
85
97
67
82
102
132
49
78
108
150
61
97
112
101
136
101
93
93
77
135
120
103
127
90
163
146
95
139
113
157
137
145
160
138
80
81
109
115
145
177
117
113
112
112
127
128
144
180
108
102
113
82
112
149
95
119
133
108
140
82
87
172
61
49
102
54
82
129
83
101
139
96
87
82
161
115
134
81
93
93
110
185
133
49
125
103
141
102
143
119
88
136
134
148
110
77
98
80
145
65
111
143
151
111
160
128
108
113
124
85
88
135
128
59
106
126
134
122
158
116
153
54
149
154
92
127
96
111
134
120
81
120
68
140
91
105
99
102
125
106
100
115
49
110
139
74
96
98
103
107
168
117
67
98
105
150
141
120
165
140
108
131
111
164
78
98
109
103
146
129
169
141
84
83
137
131
144
114
190
94
122
130
95
73
114
80
102
95
108
119
117
104
72
125
69
140
137
132
124
98
133
110
146
96
61
110
113
113
142
92
102
96
143
167
110
90
132
127
115
123
90
123
91
91
166
149
91
67
148
153
128
95
110
139
59
150
163
97
54
93
114
144
76
127
129
119
89
87
106
78
125
94
78
139
112
97
149
199
111
112
128
98
130
135
129
112
123
112
100
156
132
111
122
95
114
84
77
110
131
74
111
98
158
180
133
89
117
117
139
90
125
92
128
159
129
102
148
81
125
90
106
122
178
78
98
54
49
160
120
88
132
75
54
105
93
93
95
124
106
76
125
110
112
91
106
124
90
83
134
95
113
126
114
95
73
148
107
140
110
102
224
119
106
104
73
131
137
128
103
70
101
185
140
123
121
96
146
114
141
118
140
131
134
124
100
137
59
101
131
77
94
154
102
86
145
78
141
139
127
147
101
125
124
54
111
130
133
102
88
111
86
107
102
113
108
82
49
98
133
117
121
144
127
165
95
93
115
124
151
54
96
122
80
111
113
148
115
101
99
90
109
99
125
135
137
116
150
118
125
165
144
89
144
130
125
98
133
84
120
107
125
123
110
125
162
131
97
120
155
134
104
108
122
199
59
54
95
133
117
113
54
78
125
158
94
77
105
77
114
136
76
128
152
87
89
77
146
164
91
106
81
77
123
127
124
98
137
94
118
103
81
92
146
100
206
93
94
115
102
98
88
93
112
105
107
78
166
110
105
132
118
121
110
110
54
177
121
107
172
80
112
143
78
108
78
108
107
106
105
129
145
67
113
158
163
81
146
67
89
178
144
129
154
181
115
100
124
87
67
49
95
150
121
54
148
114
131
127
116
148
85
140
104
129
115
150
117
158
90
178
125
146
77
158
152
97
148
87
127
108
122
115
127
106
121
102
59
102
122
102
74
106
127
115
98
128
87
106
94
129
77
110
127
82
98
119
81
85
59
148
112
89
98
103
95
149
117
106
148
95
146
94
129
106
105
49
119
93
149
179
108
102
87
102
114
91
54
113
98
54
118
107
83
91
115
141
108
67
59
118
129
143
67
113
95
106
59
119
123
138
157
181
89
169
133
114
158
161
142
116
111
151
95
108
78
109
76
151
139
96
130
134
108
145
109
74
113
131
95
103
110
158
96
139
96
127
118
144
109
95
83
83
122
54
104
139
77
108
74
98
87
158
105
95
100
95
119
158
120
125
95
76
106
172
69
93
163
114
127
100
91
132
93
68
139
116
54
102
129
54
148
98
121
125
54
121
109
138
102
106
128
78
162
102
123
87
97
102
77
108
92
185
138
82
134
197
102
116
103
77
119
91
83
61
161
67
104
120
110
83
116
106
100
128
178
110
143
126
124
159
125
90
106
109
123
76
144
91
139
112
99
133
49
90
172
141
112
93
98
157
113
113
121
102
83
124
95
103
54
91
108
140
98
108
113
90
146
148
136
49
151
135
105
148
78
107
123
89
127
154
139
102
86
79
119
133
79
81
117
90
106
117
125
124
120
96
102
108
148
102
175
74
135
170
108
116
69
185
177
163
88
109
98
140
100
122
155
90
54
165
145
120
145
151
121
136
140
158
108
137
94
120
109
96
133
111
67
115
123
116
54
102
93
80
134
106
98
105
104
68
131
126
113
108
156
128
98
182
152
49
143
150
104
113
83
85
143
85
153
111
108
119
133
115
59
102
142
147
110
131
71
81
162
140
120
100
89
96
103
116
109
130
114
90
138
125
133
145
104
107
165
139
181
106
95
113
106
166
100
125
88
105
226
120
132
119
118
131
98
135
99
78
95
77
144
98
102
142
113
131
123
188
149
54
118
100
124
85
90
107
131
80
111
169
117
153
89
77
108
120
84
110
134
81
98
177
117
103
115
125
113
110
89
135
108
86
153
49
145
123
74
125
78
131
157
82
119
143
153
108
108
113
89
113
122
108
95
77
116
134
54
146
141
109
107
127
156
97
173
113
143
99
124
128
103
104
94
122
118
99
124
62
113
79
166
100
160
95
146
87
82
93
140
119
142
114
120
54
138
54
82
192
105
131
98
104
123
147
95
127
49
100
101
122
49
108
134
100
101
108
107
113
132
92
105
155
81
151
101
121
114
138
130
102
98
95
54
83
132
111
147
109
102
158
102
158
108
83
92
122
105
122
144
126
69
87
129
135
127
102
125
128
159
141
139
158
95
95
102
151
144
165
110
103
147
135
125
143
82
165
128
89
113
122
80
135
102
95
141
131
115
177
54
145
132
97
146
103
123
95
107
115
125
152
108
104
108
117
97
129
113
106
158
54
87
128
148
98
91
108
120
98
95
54
84
91
135
94
140
143
135
106
76
74
98
93
108
135
85
143
172
145
96
93
120
112
119
144
54
115
134
120
98
102
82
82
134
133
131
162
141
76
126
108
132
89
102
102
128
113
182
165
119
95
75
115
54
120
79
49
126
135
85
121
158
95
137
118
129
70
116
93
69
105
103
127
103
100
54
98
177
90
98
98
127
122
156
127
101
123
119
108
85
135
140
74
148
91
167
107
76
54
132
157
115
193
135
87
96
128
126
97
154
114
155
103
138
162
127
134
161
125
59
129
88
177
118
104
140
130
98
92
105
106
123
158
76
130
170
81
128
61
138
83
118
76
98
144
87
167
82
135
99
101
91
94
125
124
118
96
113
118
78
88
108
130
54
105
128
74
116
119
135
161
74
98
102
79
101
122
124
93
124
146
102
153
122
200
97
135
98
152
88
101
128
93
129
126
76
90
161
54
113
144
146
143
86
99
68
116
59
110
113
94
104
113
117
103
54
108
85
81
158
113
101
104
149
139
136
137
103
133
126
76
108
111
61
107
166
103
91
114
148
173
106
114
74
107
124
138
140
90
81
98
99
149
118
105
102
85
104
108
93
86
112
133
125
109
90
138
131
161
54
134
102
90
113
119
81
132
77
146
90
125
139
138
85
125
128
191
124
49
139
92
81
113
59
108
163
113
100
156
102
149
77
123
91
90
98
54
116
129
136
96
120
147
97
133
110
130
102
87
183
102
94
143
148
158
157
123
99
97
131
143
114
108
131
49
96
144
129
153
59
140
119
80
81
131
77
112
134
125
100
122
108
131
94
108
134
169
54
120
100
83
143
169
130
127
105
77
132
106
129
107
154
154
103
166
173
87
112
54
119
74
144
116
74
128
141
131
152
154
126
124
109
104
109
110
78
125
88
125
114
133
98
102
155
167
123
135
78
113
93
128
127
115
129
171
116
90
101
76
162
124
102
102
125
151
105
128
102
49
92
123
75
147
112
96
78
134
95
74
86
101
96
74
110
88
98
144
73
128
143
122
69
175
105
104
98
54
83
102
83
74
90
158
133
114
130
98
114
129
122
125
116
125
127
121
108
97
125
108
101
130
109
108
108
171
133
74
116
110
111
54
133
112
102
98
169
120
87
128
120
78
102
100
129
118
118
116
103
131
54
159
168
102
177
188
117
92
129
103
120
144
114
147
81
132
127
100
76
125
101
155
162
122
155
110
156
120
144
131
116
59
103
177
81
160
116
100
123
127
176
145
114
110
97
141
164
67
101
102
133
108
150
157
113
76
109
133
180
148
119
67
112
59
97
109
134
49
116
106
95
125
77
49
119
122
147
161
148
147
103
83
92
135
90
87
158
152
194
89
151
95
131
139
105
140
141
110
54
144
127
151
125
75
130
108
121
121
103
105
168
117
161
156
92
115
109
95
134
164
117
115
147
85
110
129
93
107
140
116
103
120
131
122
95
109
133
113
158
93
107
98
97
54
90
123
112
120
144
82
143
168
106
98
158
119
84
119
81
98
107
168
102
119
129
136
88
133
183
154
95
197
96
151
74
135
130
94
173
90
106
148
107
117
103
81
85
134
82
156
78
101
119
95
165
76
139
125
108
102
74
164
103
145
106
112
115
109
90
152
108
125
146
113
148
148
89
112
166
160
108
111
119
133
95
67
87
104
144
54
107
108
82
117
177
135
159
103
145
177
132
127
112
113
160
94
81
91
108
90
173
139
107
102
117
151
128
186
140
152
114
54
67
116
159
189
73
120
146
180
74
91
173
98
103
122
74
122
109
98
136
89
103
140
128
87
100
106
143
135
132
168
154
87
122
67
184
130
150
102
161
120
108
108
81
97
102
122
158
110
140
81
100
81
103
159
120
92
69
133
154
166
107
141
95
105
67
102
98
159
105
108
104
140
136
54
76
84
133
140
157
59
54
78
124
115
93
132
102
127
117
110
96
118
49
120
121
128
120
107
148
122
54
130
143
91
49
118
95
108
170
117
95
95
128
95
124
98
81
88
124
77
186
80
94
155
61
77
161
163
116
96
157
141
108
105
54
118
69
132
168
154
103
146
175
152
88
54
143
102
105
74
213
179
110
145
165
151
114
111
54
99
124
83
113
118
134
94
103
161
115
74
80
115
112
125
95
148
119
120
123
90
116
103
103
54
141
112
107
98
108
98
103
121
59
141
76
145
147
154
120
105
113
146
123
140
106
151
163
108
108
128
119
120
112
95
116
147
133
144
150
94
49
69
95
165
98
87
129
105
129
104
90
98
81
61
148
121
142
77
108
91
144
99
94
90
111
103
177
162
143
134
150
105
124
146
103
83
116
145
117
139
143
146
125
87
122
94
167
104
133
148
131
144
135
143
67
81
144
171
98
149
157
91
95
120
87
68
107
163
116
93
90
97
127
145
90
168
77
82
109
99
132
101
111
108
133
116
125
134
150
137
122
49
126
85
124
103
129
165
122
150
174
76
144
68
141
120
98
110
105
130
131
100
85
137
113
102
116
132
110
103
100
108
108
120
133
143
95
133
129
98
104
108
124
125
177
111
156
76
49
142
49
133
97
113
102
129
123
149
93
78
147
103
59
135
104
176
93
127
93
149
157
153
108
97
147
95
110
138
110
128
141
135
131
155
82
125
115
91
119
109
145
81
111
93
144
108
145
74
123
145
193
132
110
122
170
89
61
113
92
131
103
129
105
121
122
68
108
81
108
66
156
132
133
120
100
129
139
128
141
116
131
100
103
90
130
91
100
103
98
104
133
146
90
137
178
117
90
136
74
181
149
122
85
98
130
93
162
158
144
90
167
81
108
127
100
54
77
96
116
81
93
107
161
138
115
54
104
125
117
115
110
83
113
118
49
103
119
132
122
113
54
153
125
106
137
118
119
131
69
94
104
96
160
125
91
93
125
144
98
148
194
82
182
102
80
92
134
54
116
122
76
99
97
145
49
132
135
54
141
67
85
107
140
95
135
153
128
158
151
101
128
65
104
95
74
74
108
108
165
89
141
117
95
83
134
98
86
122
74
120
80
118
61
125
113
87
151
158
68
140
99
87
150
96
102
119
103
102
114
118
134
108
113
93
103
90
116
105
141
123
132
139
96
153
143
170
95
108
79
132
54
67
137
98
119
108
154
101
124
86
121
168
129
113
116
102
54
113
115
117
123
95
103
86
144
76
77
98
54
142
115
179
49
135
112
92
127
167
125
88
116
133
141
116
148
85
86
109
81
102
103
144
74
97
117
146
116
154
82
169
109
124
108
130
111
158
146
179
108
128
98
167
101
95
84
104
103
145
127
67
90
59
143
158
84
172
132
153
98
120
138
61
103
133
49
105
99
129
119
127
125
128
105
101
93
90
145
139
120
125
83
98
133
119
133
86
143
98
134
77
78
105
114
104
54
119
113
108
95
144
98
78
129
148
74
143
93
83
160
113
122
106
107
136
110
162
125
93
95
99
104
127
108
180
103
114
129
99
140
160
135
112
114
68
132
134
123
122
109
119
54
140
98
158
120
133
146
154
148
67
83
145
87
93
108
150
123
102
128
98
103
118
125
87
54
109
118
126
156
116
105
138
133
152
139
95
126
133
158
103
106
109
147
110
96
144
120
108
85
93
90
103
106
164
101
160
147
117
102
85
106
148
112
85
162
161
144
82
82
89
93
54
105
87
137
98
108
81
102
74
148
148
59
102
169
153
130
99
49
102
122
120
49
95
81
82
54
67
129
135
99
69
132
135
147
123
49
131
98
133
102
166
152
98
112
145
105
68
76
105
98
110
61
138
121
134
96
91
162
174
95
105
72
115
144
155
129
103
92
206
109
119
115
112
152
149
113
108
141
150
98
118
114
84
87
125
83
112
59
112
102
85
121
133
72
140
177
108
147
134
127
177
139
146
146
103
117
73
104
133
115
87
144
76
102
103
113
102
118
108
82
116
92
146
98
147
118
148
102
105
156
68
149
128
54
54
108
98
191
123
113
113
82
101
108
128
147
97
129
159
110
94
158
108
95
102
73
81
108
156
102
85
137
118
143
103
99
114
166
142
173
113
98
111
103
141
101
81
100
129
54
153
110
157
99
139
134
146
126
118
68
125
140
142
143
121
172
93
108
134
142
102
147
118
95
161
127
85
102
116
148
74
122
131
139
158
160
103
111
139
107
105
96
98
100
135
82
103
143
97
153
98
96
125
83
119
101
113
113
127
67
103
195
49
105
146
49
81
119
61
115
90
190
102
143
108
49
158
108
147
100
87
74
135
162
93
98
133
74
102
69
113
67
112
106
90
130
131
108
85
85
49
144
105
49
80
98
98
175
142
137
133
137
137
151
77
54
104
133
111
158
148
75
108
102
54
108
139
94
82
113
105
114
93
125
103
124
183
129
72
102
182
160
135
93
111
54
117
99
99
95
72
102
177
100
113
116
95
140
143
126
112
107
133
134
168
103
133
140
95
89
144
121
100
108
152
130
140
115
108
97
94
93
144
96
105
128
130
90
103
54
77
113
154
107
133
74
59
163
80
128
188
138
167
140
189
161
103
145
102
120
89
102
76
116
123
108
151
102
149
83
114
129
54
108
155
93
98
143
103
158
157
119
59
90
108
118
102
111
140
133
127
117
106
89
54
108
127
125
103
80
104
143
93
96
150
77
107
98
133
87
115
59
59
108
76
116
141
120
123
131
115
117
103
108
136
117
148
144
158
93
98
118
54
177
168
69
131
117
100
143
139
126
102
82
86
138
138
150
130
131
127
158
103
113
108
142
138
158
69
96
155
105
119
93
140
110
90
102
98
90
108
135
96
134
108
155
54
74
123
99
113
126
110
54
127
101
186
144
81
116
108
98
92
177
136
149
54
148
106
140
105
119
155
147
159
127
54
119
113
105
95
117
118
74
54
135
105
123
165
142
100
112
114
107
132
108
118
81
117
101
82
92
95
164
137
126
106
109
95
127
104
145
125
68
143
111
133
116
156
95
79
74
97
117
106
90
126
138
134
107
134
105
90
49
81
140
87
161
98
67
126
127
102
95
116
98
93
234
104
74
123
161
77
78
180
98
78
144
140
108
98
105
114
126
108
83
127
128
113
93
78
98
94
134
133
93
131
83
84
118
104
116
143
130
192
145
82
104
150
105
127
96
49
159
79
148
94
105
145
102
133
82
116
82
99
108
95
167
85
93
113
111
74
184
119
187
150
81
162
100
93
81
98
119
54
110
138
83
140
99
93
123
117
126
105
54
62
121
125
118
132
146
97
96
139
117
117
145
54
119
150
109
87
101
137
131
152
124
121
137
124
132
105
117
114
87
134
137
78
141
125
138
94
125
89
146
101
102
118
115
91
106
118
90
99
102
171
108
69
123
111
95
85
88
147
174
140
96
120
54
171
80
135
151
148
100
114
61
144
95
81
103
127
98
91
148
105
98
147
115
74
114
134
118
108
135
162
108
98
123
231
131
176
100
140
118
125
113
54
128
106
93
113
123
160
97
123
186
132
102
111
98
152
125
127
101
125
105
94
95
102
100
89
57
117
160
128
54
113
103
108
90
106
103
122
133
87
103
76
101
167
153
106
102
105
128
102
54
98
91
129
163
148
90
104
108
128
87
108
81
80
74
133
131
84
90
105
128
108
105
125
161
87
123
128
83
163
165
97
149
139
93
95
67
113
85
67
94
117
159
97
125
133
110
127
82
148
137
102
96
74
106
102
137
114
102
119
138
97
121
146
107
54
135
103
95
61
118
95
123
110
82
125
83
160
161
133
138
120
91
127
90
123
99
111
90
54
105
89
111
69
146
87
98
140
99
120
54
106
97
116
108
82
136
158
97
113
113
87
133
115
126
102
133
81
89
165
129
120
182
134
80
94
125
96
108
127
153
103
74
96
115
121
148
112
92
126
77
59
146
85
154
111
123
115
125
121
125
97
119
177
75
112
121
102
160
171
195
75
131
49
127
75
143
170
145
102
103
97
132
103
160
114
161
54
124
127
96
153
85
164
81
87
154
108
105
68
87
140
153
112
127
194
128
138
98
139
104
128
67
128
100
103
100
76
95
122
104
133
69
125
115
81
76
95
95
104
150
124
141
82
102
132
144
107
133
133
128
118
135
96
103
120
97
141
167
107
112
95
139
155
77
129
148
115
115
140
103
133
107
131
128
103
81
131
114
143
74
148
122
54
87
99
152
87
120
105
96
146
91
115
98
129
95
89
96
98
108
105
146
147
139
134
134
95
165
103
149
122
117
97
132
153
100
113
61
146
162
59
148
92
200
140
99
77
103
141
108
95
120
117
125
95
157
120
165
105
107
101
81
143
130
125
146
168
126
177
131
101
127
130
126
137
83
102
172
85
82
81
107
136
143
87
122
70
141
102
90
142
103
144
137
173
128
104
94
77
54
81
121
54
83
119
147
124
122
104
142
91
95
127
165
73
83
110
104
90
106
122
114
143
135
54
113
156
82
123
108
102
83
111
153
148
163
96
137
164
93
85
128
116
147
127
76
177
76
123
121
81
95
54
106
79
103
127
129
119
146
77
115
133
106
110
78
95
112
190
124
49
129
123
59
124
94
135
104
83
114
114
148
98
126
87
117
97
108
83
93
121
81
177
134
71
102
119
182
148
61
80
130
101
145
128
167
131
175
128
90
76
112
101
49
82
102
87
76
98
120
138
90
106
54
107
145
99
117
102
107
113
74
84
111
54
154
107
140
75
137
141
169
131
129
167
116
127
128
54
148
115
160
108
108
98
134
102
122
91
124
154
101
138
76
114
104
98
154
153
90
127
97
179
116
59
144
136
59
82
102
94
88
112
114
122
103
138
54
101
144
150
147
142
131
95
99
126
107
154
116
90
102
105
67
103
107
77
80
121
172
95
113
144
105
103
123
95
113
89
135
103
141
95
158
93
143
114
91
108
95
118
151
151
161
67
134
89
74
122
135
128
98
61
149
108
118
123
133
86
113
102
106
115
109
144
159
54
77
89
190
120
102
67
156
135
98
103
124
109
149
130
81
99
96
125
140
107
108
102
126
164
123
81
77
128
113
93
108
108
72
113
148
128
109
163
119
148
100
149
151
78
98
173
178
131
82
129
136
113
133
141
113
108
99
135
113
98
90
115
85
98
121
161
89
144
103
104
167
122
148
108
82
146
97
101
177
74
140
104
81
115
138
91
100
180
54
139
96
81
108
148
143
87
89
81
130
113
156
153
95
118
129
99
109
138
114
83
96
92
144
95
95
140
126
129
87
98
54
132
146
98
179
151
117
119
103
150
98
102
105
93
125
107
98
130
131
128
147
106
114
148
147
94
158
132
149
90
74
184
82
154
165
156
121
106
171
153
124
147
130
82
128
105
102
147
117
107
138
147
81
102
117
82
200
148
139
67
103
148
94
81
116
108
106
105
79
115
59
129
123
128
127
108
159
123
150
169
134
129
54
145
156
88
90
101
136
106
132
68
103
119
88
86
118
109
103
108
54
90
90
145
92
78
108
105
79
94
108
103
113
139
123
118
153
114
132
144
85
134
98
174
122
102
127
100
109
96
124
119
54
114
170
121
170
105
133
85
143
91
113
125
148
74
147
81
120
166
107
103
134
90
136
120
200
78
160
89
116
144
154
108
81
114
65
123
54
127
113
114
107
113
102
127
87
143
141
63
142
115
170
107
68
104
79
144
154
120
158
95
93
162
61
139
118
81
105
89
113
134
190
82
108
116
116
115
106
138
102
117
113
133
87
74
101
102
143
123
123
124
115
85
94
102
146
109
84
135
149
85
54
134
102
120
76
113
61
127
158
102
95
109
133
133
120
97
122
128
140
123
107
131
131
126
126
113
74
108
108
103
102
137
95
69
114
97
120
81
100
158
125
124
76
93
118
116
136
81
123
133
131
98
95
155
95
98
97
151
120
139
157
125
113
102
154
149
87
143
95
143
144
125
148
82
97
200
119
105
113
76
134
134
152
156
121
76
79
103
160
111
95
177
148
133
145
87
69
103
88
113
114
97
165
125
118
112
78
74
110
95
106
125
54
98
126
134
106
127
136
152
79
148
95
129
144
133
124
125
110
106
96
129
125
100
96
144
121
134
118
105
131
108
49
108
104
69
95
107
95
143
154
135
117
153
100
133
200
149
126
85
97
119
133
161
129
97
80
54
95
59
111
45
135
151
145
104
85
117
112
109
102
133
108
89
103
198
139
101
81
106
113
180
173
136
133
110
82
138
186
120
113
102
177
158
120
77
83
102
81
110
90
158
160
87
161
49
69
141
144
76
84
102
113
125
104
98
112
150
54
130
91
71
161
116
126
161
149
89
91
87
118
101
163
131
151
74
161
147
129
95
90
158
96
87
138
54
105
100
146
151
136
160
127
105
95
108
152
142
74
146
74
103
92
148
133
119
135
153
120
203
107
106
94
127
90
117
105
90
117
97
87
107
123
103
95
129
137
113
128
133
102
104
87
145
87
146
67
137
105
135
118
96
145
148
158
98
131
148
122
159
87
159
162
149
68
117
145
54
112
122
97
125
96
49
54
128
107
142
106
124
90
142
144
139
139
67
49
54
127
148
81
150
110
94
80
103
69
128
86
102
128
99
78
113
119
122
143
114
114
103
118
113
117
122
128
112
137
167
114
138
192
145
124
91
85
98
130
120
84
108
166
120
125
103
138
113
144
90
134
102
163
186
169
120
96
134
150
160
104
74
105
59
111
132
121
77
136
108
108
140
134
162
114
98
95
102
128
109
154
112
110
99
87
168
121
143
139
105
98
131
82
102
151
102
54
125
80
89
54
189
103
81
59
77
74
110
173
83
77
103
96
54
148
125
116
110
163
102
147
127
140
61
144
99
87
140
127
67
107
49
68
112
139
160
105
153
163
49
131
115
87
81
153
173
102
125
90
82
98
129
77
83
154
98
125
131
107
174
113
148
54
157
59
148
161
184
113
107
140
111
101
142
78
109
97
105
126
148
125
170
54
93
74
76
155
85
137
128
93
88
113
168
101
113
49
154
150
102
163
124
152
132
86
114
85
164
149
137
149
120
128
102
150
149
91
168
88
113
115
76
69
95
83
93
143
144
83
95
150
149
140
110
100
133
147
130
117
78
49
129
77
118
95
124
54
112
110
119
93
188
61
89
165
87
103
115
79
128
112
82
54
104
93
158
138
124
148
98
110
133
131
117
116
132
88
115
126
86
102
79
108
83
111
108
124
108
114
132
104
73
124
91
160
137
113
102
81
142
140
97
137
143
54
105
122
91
108
49
140
118
154
84
95
87
96
102
107
54
54
102
177
106
144
132
80
135
110
54
78
149
67
196
159
120
106
87
136
80
88
102
133
107
108
54
115
108
115
145
101
161
133
85
144
104
153
121
93
49
132
102
93
130
144
181
135
156
143
103
98
120
180
132
67
107
114
78
108
165
89
114
98
74
108
111
124
110
108
101
121
111
160
74
124
108
97
143
154
168
95
119
108
112
95
127
106
119
135
129
113
159
98
90
134
96
137
128
98
108
74
130
109
122
128
80
97
115
77
194
125
121
113
80
113
83
143
136
131
135
128
135
147
127
82
82
95
54
154
110
129
118
105
91
54
130
108
135
95
129
122
147
109
112
146
106
145
125
108
74
113
138
83
59
54
96
94
177
95
104
107
89
103
112
131
148
99
143
125
101
102
154
54
121
93
95
128
161
95
78
121
113
90
168
123
90
54
141
100
95
99
49
171
123
132
54
81
96
80
122
112
59
89
90
124
118
110
148
153
102
109
144
144
102
105
158
115
115
144
154
111
102
116
136
103
135
78
140
102
123
99
157
155
74
119
106
77
119
94
140
127
135
83
116
102
160
105
182
81
73
119
111
145
149
122
82
150
127
136
54
117
95
96
156
157
106
135
140
131
155
111
125
133
91
102
110
65
128
147
116
102
91
158
105
133
130
102
118
81
82
59
96
133
118
105
128
59
104
97
81
89
106
93
140
98
167
147
98
128
148
165
120
49
81
156
109
121
92
54
115
210
136
122
86
116
145
138
140
81
191
121
144
108
148
176
54
94
135
117
103
123
108
96
100
121
90
132
133
123
112
92
133
127
157
128
102
49
110
122
54
116
103
102
99
77
135
123
133
146
149
117
144
100
101
147
98
100
122
78
165
77
143
100
138
73
162
136
49
179
150
99
84
129
79
134
127
128
120
150
132
74
100
117
144
108
127
144
125
123
102
139
128
108
139
90
165
76
104
93
108
130
93
105
106
124
114
99
100
127
125
83
139
98
102
113
110
128
97
95
105
102
96
99
102
89
129
146
161
107
114
115
125
148
122
142
161
148
117
107
146
128
49
119
108
104
144
95
96
98
81
108
118
67
130
103
91
113
109
106
124
96
159
146
112
102
98
88
90
59
133
138
152
160
108
87
160
101
143
105
125
97
129
95
122
96
128
125
95
54
123
106
131
79
130
90
129
113
80
81
131
123
124
98
95
199
125
125
149
102
118
116
115
179
127
83
124
98
93
112
108
143
85
108
100
68
89
168
54
129
120
143
54
140
99
140
90
115
107
54
135
74
152
98
129
102
61
65
103
119
108
119
120
121
92
154
91
98
103
102
145
144
81
128
133
142
100
125
108
129
121
139
83
173
81
136
91
59
127
61
152
112
78
86
131
139
127
99
116
81
84
160
95
74
170
153
108
160
95
108
54
54
87
94
111
79
152
127
104
116
95
108
106
128
83
105
128
115
134
74
148
124
103
132
137
82
102
123
131
67
137
122
121
154
113
135
133
186
93
126
102
128
140
92
131
85
129
103
177
49
101
54
99
125
142
98
122
77
105
136
125
131
106
54
125
116
113
95
146
103
90
83
138
100
91
130
84
125
103
151
115
158
107
146
91
158
78
67
108
98
182
102
97
176
91
82
87
126
108
104
54
115
125
150
144
159
113
143
114
143
128
123
74
84
143
81
98
97
144
54
106
91
101
110
59
103
90
140
143
146
49
98
134
109
89
127
110
143
82
128
96
59
100
103
127
105
125
93
110
109
100
96
78
102
135
145
214
78
92
122
118
98
127
140
133
123
155
123
108
81
143
91
85
131
145
54
131
159
97
73
54
84
108
116
129
67
138
99
92
103
90
94
95
116
102
106
127
108
107
91
132
108
130
102
98
127
130
150
117
150
85
133
105
102
127
109
110
54
110
90
139
84
116
57
102
85
143
107
183
116
54
103
163
102
98
154
83
98
136
161
99
125
68
122
83
145
129
121
86
103
111
131
90
115
130
145
67
82
74
150
54
136
131
128
81
122
123
78
98
124
102
150
103
182
190
141
121
160
144
128
83
189
108
180
148
114
108
67
97
143
131
146
177
155
108
147
125
92
95
109
135
113
126
107
132
125
150
95
111
170
103
77
85
109
123
54
59
134
84
107
109
49
74
122
93
158
129
98
100
160
156
108
113
129
116
85
180
146
200
135
115
143
108
215
106
105
112
98
107
102
93
136
131
98
186
92
87
141
109
125
165
76
141
122
97
126
132
106
93
89
163
127
54
81
156
100
102
116
102
83
112
145
102
130
128
127
125
128
151
126
115
116
118
59
79
76
126
148
102
101
178
108
156
54
87
94
102
163
99
157
120
105
140
121
78
140
78
113
122
122
93
148
145
143
127
150
113
151
135
107
68
95
110
161
155
128
161
85
173
135
157
171
102
147
69
148
74
131
111
54
133
108
54
133
135
172
115
104
129
83
59
110
114
114
135
98
116
116
131
108
116
149
141
111
151
148
62
141
95
78
110
127
131
85
127
95
113
103
104
150
109
131
103
99
140
166
103
108
91
54
111
123
123
106
54
151
148
88
114
95
175
59
81
108
103
102
121
141
93
135
108
140
76
135
139
98
59
169
170
54
144
78
103
135
122
90
98
117
116
102
146
128
108
115
117
129
132
97
80
137
133
107
154
108
126
93
136
76
122
94
134
102
91
156
61
95
85
126
115
122
126
116
106
152
99
104
97
102
122
69
120
83
68
102
93
97
104
113
127
85
81
194
97
157
116
149
80
108
76
140
137
105
125
74
125
147
133
138
122
114
139
74
67
103
147
127
67
127
115
108
125
124
129
112
163
146
133
87
104
98
101
125
125
109
96
86
122
98
118
138
89
127
110
54
173
61
119
165
160
86
130
133
87
108
140
127
95
131
76
112
113
153
81
84
126
131
103
135
120
102
49
144
96
117
59
115
59
103
105
80
110
177
114
118
95
82
143
84
127
162
177
148
132
155
146
98
140
62
49
145
168
158
99
128
87
93
82
99
173
163
109
82
84
122
82
121
108
105
80
121
129
163
54
54
99
167
92
105
106
115
118
118
133
106
59
119
77
186
87
162
113
54
69
61
134
98
115
108
59
95
147
130
144
75
149
118
135
95
83
107
131
97
118
92
81
147
87
78
162
168
125
123
49
105
135
161
108
144
81
105
133
113
166
157
94
144
98
174
167
68
87
143
159
133
108
147
82
83
100
105
128
102
105
90
54
119
143
96
111
92
179
108
159
128
216
120
148
96
93
135
131
200
168
127
95
77
82
49
157
159
102
150
83
188
134
133
119
138
90
156
87
148
107
146
149
95
103
131
108
200
106
122
90
106
96
67
76
148
126
82
109
114
175
161
125
128
113
112
133
85
140
93
141
70
148
145
77
80
81
107
157
165
106
106
108
179
81
163
112
148
82
100
72
130
87
76
110
107
94
115
54
113
59
157
166
123
95
80
135
105
92
67
157
107
114
102
171
105
109
76
102
117
216
177
102
152
125
105
129
145
144
92
114
148
95
108
116
119
139
146
179
164
115
158
74
135
153
143
135
121
144
181
54
114
147
98
115
49
138
133
151
138
150
131
176
133
138
76
149
49
133
102
158
85
99
59
134
107
121
115
140
133
115
81
80
104
112
127
79
104
101
158
149
129
182
74
107
102
140
124
116
145
105
68
122
103
138
145
130
138
158
93
132
111
124
140
99
104
67
125
102
128
98
124
103
90
138
125
99
162
190
117
128
79
102
82
144
183
132
129
105
116
128
67
160
102
98
118
113
67
123
102
125
54
108
128
149
93
106
90
95
82
112
91
144
101
145
92
128
122
143
104
92
125
97
169
131
168
87
113
73
90
106
122
146
169
54
97
163
54
74
135
103
143
102
105
156
214
92
109
144
49
127
98
120
129
96
126
112
125
100
84
116
69
54
124
111
74
99
54
113
147
69
109
130
146
118
118
133
89
114
90
110
138
94
117
136
104
95
135
131
100
149
164
54
123
78
105
54
141
122
97
137
93
144
98
131
82
148
158
94
140
130
95
98
181
107
219
159
113
77
123
90
106
140
185
96
140
128
113
79
108
125
137
131
74
107
106
93
135
128
191
98
126
101
119
135
153
130
145
95
103
122
104
143
49
125
120
151
128
134
88
148
143
130
120
118
108
108
149
156
54
109
104
91
75
107
103
128
218
129
101
100
67
125
85
162
207
110
112
80
129
139
122
69
110
148
106
127
126
107
142
113
76
85
54
74
101
49
128
129
100
83
78
160
116
154
108
95
98
185
93
154
108
182
155
94
141
118
115
126
54
116
135
102
110
106
76
118
54
109
74
59
112
54
112
83
85
144
100
126
100
143
103
119
92
118
136
143
131
83
146
102
158
113
91
87
49
91
145
149
105
108
128
146
102
112
161
49
99
54
93
98
96
119
141
156
158
164
118
171
92
93
90
54
78
102
108
108
116
96
136
69
84
91
120
120
132
142
71
177
59
103
115
102
102
112
102
158
125
98
126
90
115
76
148
175
98
127
155
108
118
141
107
141
142
54
90
135
104
133
54
118
152
90
112
115
160
127
153
96
80
144
67
127
199
171
82
84
97
81
145
117
111
168
139
114
150
81
149
143
127
119
106
105
119
144
138
191
108
111
129
108
87
95
93
61
125
129
96
105
147
78
79
93
122
122
108
94
89
85
96
108
107
147
118
125
120
106
123
77
90
108
201
131
103
54
128
98
119
186
92
85
125
107
134
108
173
95
132
154
110
84
109
211
142
128
87
78
163
175
92
119
111
98
139
122
139
137
141
135
102
118
111
49
145
81
86
159
122
120
162
74
85
90
137
108
85
113
135
152
105
121
81
54
54
119
118
127
82
103
115
84
105
142
126
144
54
108
116
127
170
109
149
138
154
129
95
67
107
147
131
93
59
160
122
76
92
101
81
144
124
97
59
97
89
95
103
74
103
102
152
96
81
92
98
161
96
70
84
108
101
114
161
143
129
127
156
157
112
107
135
98
148
113
126
148
95
54
82
105
120
87
127
99
59
127
102
78
116
135
114
86
168
106
186
82
103
102
108
125
103
49
100
116
110
74
134
90
136
145
97
98
115
105
123
148
81
123
145
83
85
102
107
160
194
129
54
170
198
148
161
116
144
162
144
81
87
84
117
125
132
100
157
128
78
147
105
129
85
78
102
119
78
130
113
132
158
123
146
125
99
98
125
92
81
169
108
108
123
113
107
118
61
106
113
150
105
115
100
226
110
98
127
200
144
54
133
125
91
115
96
124
78
54
146
54
149
99
87
133
84
49
120
161
54
127
97
101
91
200
108
98
61
158
157
121
97
113
107
76
93
132
201
132
108
112
54
93
54
98
140
149
109
185
87
133
133
108
73
149
116
89
174
101
102
108
74
155
131
139
95
54
129
126
102
127
161
127
110
115
102
145
93
81
92
54
129
73
59
115
105
109
108
108
81
54
129
77
129
133
129
100
102
150
131
108
126
147
77
61
134
103
59
130
113
108
82
108
63
112
95
131
67
97
141
77
166
96
91
125
68
105
82
144
133
123
87
142
96
74
111
127
173
111
101
117
108
108
77
114
93
98
97
96
85
169
114
157
102
113
67
87
106
108
115
131
82
131
147
86
70
95
103
98
108
166
77
94
68
127
148
98
157
135
68
94
133
82
78
125
107
209
87
146
54
125
125
82
95
149
57
139
116
128
105
150
81
118
131
102
122
148
54
142
128
148
146
81
54
162
102
127
112
61
93
54
112
137
180
164
104
113
112
102
96
159
101
104
144
204
127
104
116
140
96
113
81
132
165
154
49
98
148
118
193
140
145
95
122
105
103
74
142
101
113
87
54
159
138
109
128
149
143
100
130
145
93
106
125
101
102
133
91
128
156
116
73
122
159
131
190
102
100
102
157
81
98
120
85
120
129
82
113
139
122
69
71
103
132
200
61
105
118
116
90
108
98
80
89
108
95
95
95
67
153
89
109
54
82
123
98
114
159
151
152
153
138
123
83
86
117
125
151
98
102
77
150
135
122
81
96
115
108
150
107
125
102
95
109
105
141
98
100
62
103
108
95
99
93
111
91
100
125
151
100
129
104
138
109
92
93
135
81
121
93
120
81
134
101
106
150
93
148
80
173
67
54
116
90
99
121
87
125
94
77
154
119
128
140
98
77
125
117
113
114
54
139
89
132
153
108
79
101
83
133
144
164
140
123
78
96
105
147
160
111
113
73
157
54
133
125
86
120
112
108
90
155
81
122
109
106
104
104
131
133
69
159
148
82
98
158
54
144
125
88
150
188
106
173
146
135
128
133
131
130
111
59
108
133
101
93
112
154
103
108
144
108
83
97
119
151
93
96
77
153
102
135
105
150
76
144
80
122
155
143
114
155
124
54
129
107
123
118
49
131
142
84
95
108
138
141
177
102
95
114
95
106
130
107
129
95
49
172
139
119
62
132
125
96
98
74
117
144
130
104
78
85
65
90
98
163
117
129
95
116
76
150
117
108
104
138
123
144
102
165
118
110
133
73
114
104
77
173
95
113
158
150
104
114
79
100
145
158
54
160
99
129
95
159
137
137
147
124
77
105
100
85
142
121
87
81
122
102
133
109
164
114
90
90
86
105
127
140
95
94
123
178
103
106
131
92
99
106
54
61
137
78
102
155
117
124
118
108
109
127
133
143
158
96
49
108
160
96
148
54
157
146
180
158
142
78
108
122
89
101
115
98
82
162
104
77
158
102
90
119
120
153
102
129
107
150
82
107
148
148
103
124
83
147
133
198
122
105
107
106
117
93
140
124
144
49
92
129
139
132
139
112
141
143
95
91
177
132
81
85
146
116
107
85
108
140
173
122
118
140
85
130
133
135
87
115
144
147
113
102
67
98
140
76
143
74
99
67
102
180
180
117
100
126
54
77
87
100
107
94
54
124
131
144
131
77
123
102
95
73
128
134
94
107
84
93
115
113
68
148
124
54
76
110
151
59
160
135
154
181
79
98
131
76
79
54
130
105
85
108
146
141
143
102
102
59
91
143
127
112
106
93
88
93
112
113
98
54
141
116
93
113
111
171
148
153
105
106
151
95
116
131
140
105
102
104
123
122
54
167
153
105
121
90
137
97
49
81
54
82
98
102
78
143
179
54
148
87
54
137
94
102
138
141
135
118
93
142
102
145
159
96
102
116
163
97
161
133
157
129
136
177
108
69
133
128
127
102
108
227
102
143
172
123
114
145
131
107
129
202
126
178
54
102
143
59
114
119
120
74
97
110
156
90
138
111
153
104
108
152
97
132
117
111
148
115
54
156
145
128
77
133
97
59
125
146
133
120
103
99
107
117
130
49
59
147
103
61
140
59
49
149
124
102
131
125
83
120
143
116
85
130
76
106
132
114
157
105
78
148
109
112
83
132
177
139
141
95
85
146
108
87
95
108
138
135
135
100
61
131
105
95
108
141
140
143
81
67
126
102
59
130
137
103
98
135
142
110
122
102
143
180
95
101
98
121
90
160
134
106
100
143
94
181
104
175
95
108
110
139
93
125
159
107
67
87
136
101
123
103
97
113
179
116
146
102
102
120
108
105
125
103
124
123
84
94
105
102
105
120
153
135
115
141
76
90
108
81
122
137
147
118
115
113
179
165
128
174
119
129
124
117
90
145
145
74
116
114
84
129
116
163
118
159
75
95
98
116
54
101
96
143
102
134
81
77
138
106
49
123
102
95
54
145
115
106
98
121
160
76
87
120
104
76
87
96
95
57
85
94
142
59
123
93
125
121
129
80
82
114
147
59
103
82
140
113
54
154
128
54
137
127
141
104
74
129
155
125
131
106
128
103
132
140
133
162
108
102
132
76
140
147
77
147
128
106
98
103
113
198
87
108
138
121
148
92
100
108
105
96
100
96
102
120
69
49
102
108
141
128
149
167
122
142
145
96
113
149
88
107
127
138
74
126
127
95
112
111
133
119
122
126
98
78
132
131
92
142
104
125
78
153
135
145
95
117
76
133
87
96
110
121
117
133
67
102
91
109
105
119
99
96
115
140
182
74
127
157
103
120
54
181
115
129
89
81
161
177
132
115
128
112
113
157
103
92
139
89
153
113
93
123
143
150
109
144
141
147
126
125
99
98
105
95
146
84
120
146
113
114
145
82
110
112
75
76
158
137
92
54
142
101
124
90
144
54
132
147
136
125
176
108
134
128
155
177
108
101
129
175
145
169
93
77
95
152
100
84
138
138
98
143
180
125
103
54
54
123
143
107
147
113
125
125
120
113
98
103
98
117
96
125
90
96
113
163
103
108
127
97
95
119
139
117
138
101
113
112
133
112
136
200
148
81
196
100
77
133
141
97
157
90
84
130
98
165
87
108
135
103
111
148
89
114
148
119
101
151
78
154
102
156
128
128
143
93
125
127
76
76
89
127
81
187
103
86
103
81
128
115
120
108
99
89
134
113
108
94
97
80
138
83
87
97
134
156
125
121
144
135
130
148
106
105
154
124
92
54
132
108
125
102
103
140
145
121
77
166
77
90
87
75
99
127
143
133
102
101
154
131
98
82
137
119
130
68
125
199
184
133
167
84
118
68
110
87
86
104
81
108
122
93
134
144
77
54
123
158
90
99
119
162
128
125
147
138
133
49
114
67
127
81
147
144
122
133
92
148
126
100
144
96
157
119
135
141
112
124
101
126
95
107
112
153
138
82
84
180
133
104
163
123
180
117
125
129
102
54
49
101
98
67
149
61
59
106
111
133
54
85
111
78
99
59
112
87
107
124
95
131
112
45
74
87
165
148
120
154
125
54
131
164
103
128
147
95
161
157
102
160
118
90
91
98
128
97
54
42
95
87
141
174
101
112
145
123
95
59
90
141
148
171
98
119
133
127
103
107
113
74
177
130
138
81
49
114
112
120
133
114
127
118
143
68
103
74
54
131
123
111
145
153
107
135
76
120
102
146
147
106
49
90
116
121
108
103
125
135
141
97
147
103
120
150
126
112
149
78
124
125
113
128
129
115
87
146
54
129
132
105
107
49
141
177
112
76
135
132
95
92
132
105
59
106
96
102
117
132
83
95
216
143
143
93
59
143
80
147
101
108
54
122
127
186
96
92
119
105
80
131
109
110
97
148
176
120
93
101
143
123
151
95
122
151
108
160
84
91
95
129
87
150
87
118
128
49
107
82
97
67
95
115
122
95
83
117
94
148
149
116
92
142
110
95
91
114
123
95
158
158
133
138
141
106
147
115
106
76
107
128
69
95
103
145
102
164
150
135
125
77
96
131
148
116
59
109
131
128
104
154
78
134
180
109
103
148
103
125
159
101
102
120
97
107
141
54
96
155
109
98
166
93
115
133
160
93
153
61
109
98
125
90
101
93
76
190
81
104
95
170
136
123
127
90
125
112
122
81
112
135
129
85
133
112
115
143
61
95
74
102
135
91
68
102
156
106
105
83
91
134
102
80
119
159
171
139
86
152
126
108
119
120
165
147
68
115
143
105
113
125
113
121
54
97
87
104
147
113
120
118
54
98
135
54
168
74
112
69
89
144
131
112
140
106
153
59
112
108
155
153
136
128
95
129
104
54
86
150
146
54
126
115
49
115
121
127
93
99
124
91
108
54
180
117
133
159
103
161
82
68
125
153
113
59
106
96
82
128
125
140
124
54
100
115
125
77
105
82
133
177
147
145
155
89
106
95
125
102
103
177
98
161
82
156
109
140
81
131
118
111
74
107
83
125
98
143
207
106
115
132
82
119
177
104
106
133
59
117
139
73
102
152
104
102
71
124
112
115
155
127
95
98
49
108
59
90
102
154
125
105
98
154
115
105
107
140
139
123
144
76
142
144
104
149
82
148
77
115
138
116
110
103
84
159
129
82
153
128
110
114
102
175
108
116
180
87
150
145
102
103
107
97
94
103
94
128
145
107
106
90
81
177
127
124
78
148
98
87
107
108
92
138
144
125
127
159
140
131
144
103
132
115
111
96
113
134
45
106
158
102
114
113
59
129
179
180
95
127
95
85
94
87
54
81
108
161
172
143
98
148
125
95
106
121
147
85
91
131
145
151
126
108
117
95
115
145
143
111
125
102
59
108
125
90
81
69
108
160
90
157
54
131
87
181
132
120
148
114
128
57
138
87
83
96
107
128
136
235
116
83
132
98
110
128
82
128
147
93
90
88
156
54
150
107
98
147
133
122
143
96
85
125
173
128
143
107
124
150
155
145
133
85
125
96
89
99
129
54
76
109
118
87
49
128
95
97
128
122
154
139
95
119
98
82
95
116
105
144
110
76
94
131
141
110
114
89
54
146
129
125
153
102
95
108
148
125
133
112
160
113
113
54
91
107
160
98
141
110
130
90
105
95
121
156
136
95
130
87
134
96
95
99
109
106
145
90
91
114
140
57
94
104
110
141
80
119
135
141
104
132
157
96
120
76
103
171
78
107
79
110
91
125
103
74
59
87
123
54
69
86
169
169
147
89
119
126
92
185
54
81
81
112
153
81
131
107
115
76
126
127
103
134
146
54
115
148
103
67
148
88
77
110
145
145
145
177
81
99
96
131
139
106
93
87
145
101
59
90
115
116
77
145
125
124
139
136
112
81
140
92
136
98
108
132
95
117
165
101
107
124
147
54
95
153
113
125
148
95
103
108
74
143
89
122
154
109
99
127
78
95
79
144
90
200
105
130
139
158
54
139
102
105
93
190
68
90
178
94
103
115
112
131
113
74
188
161
181
106
78
116
96
164
57
82
72
111
131
93
82
87
120
122
105
141
111
108
125
98
98
137
158
76
158
110
126
135
83
95
81
115
145
112
62
83
100
115
106
76
142
126
138
102
143
145
133
142
117
156
133
103
135
54
134
78
132
95
91
105
76
107
84
107
93
90
163
200
97
87
162
135
98
82
95
91
91
98
115
130
108
115
115
102
54
121
137
127
130
81
117
81
122
101
67
141
125
155
98
149
86
102
117
179
98
113
100
179
140
144
68
108
169
125
98
169
103
108
54
72
95
174
113
49
98
113
115
114
156
121
107
86
117
104
154
171
109
126
67
125
106
145
141
160
102
76
152
93
142
192
77
132
125
98
95
76
101
93
133
84
130
87
117
118
54
77
99
149
121
108
115
77
99
115
113
93
135
177
83
107
119
84
73
87
94
167
107
95
113
135
118
90
113
123
107
91
149
110
130
74
103
119
145
122
82
121
78
87
105
114
103
54
98
115
102
189
111
109
124
119
126
76
148
94
108
107
78
54
99
116
144
120
54
148
49
180
83
148
130
134
110
151
77
121
131
112
117
121
133
133
65
180
95
108
136
102
164
161
133
157
54
85
107
95
110
140
126
122
125
122
95
83
142
108
102
82
121
90
54
110
84
77
103
147
96
137
143
49
106
91
74
82
133
84
105
98
165
79
111
97
155
123
135
110
96
54
109
112
128
132
151
141
152
119
149
89
93
123
143
99
59
141
113
118
124
138
148
139
80
123
136
96
100
90
122
88
95
74
109
115
81
172
134
123
124
158
139
104
144
157
113
146
87
76
123
108
122
87
96
130
171
59
95
54
110
124
133
126
108
127
67
114
95
148
78
54
54
102
107
168
148
59
172
138
133
128
102
93
49
98
134
110
87
149
49
54
102
123
120
111
54
93
49
124
148
139
103
145
150
96
125
87
138
107
105
85
89
131
167
104
111
107
112
97
106
99
150
131
164
79
91
161
103
108
182
91
143
123
103
102
84
149
124
148
103
96
129
173
158
128
134
74
145
114
117
88
115
91
129
122
108
102
118
74
74
103
184
127
95
87
134
95
168
104
81
108
78
76
149
95
166
105
150
93
169
138
109
90
81
110
101
102
101
81
76
103
143
111
83
161
144
117
92
128
80
160
101
109
115
107
143
119
114
108
78
116
100
140
87
102
95
103
149
94
125
148
156
151
133
130
82
59
84
132
90
108
105
135
104
102
125
133
117
59
81
54
113
104
107
77
97
141
129
106
129
79
102
90
133
114
121
95
122
132
186
116
98
124
153
102
160
87
108
135
119
139
78
199
139
133
160
144
157
116
121
118
102
106
129
140
113
94
144
77
95
113
99
121
135
143
82
103
81
124
91
111
131
93
115
164
139
90
82
135
149
67
61
129
116
146
153
101
139
143
110
135
90
141
117
102
45
98
112
135
77
118
133
124
54
133
151
148
78
112
97
108
59
81
156
132
119
113
134
122
54
158
76
78
108
104
102
108
122
156
102
118
82
180
140
68
100
129
59
98
113
54
81
91
120
91
75
116
139
148
143
102
143
129
108
125
147
149
54
87
65
102
81
125
143
163
80
77
102
114
106
144
134
101
54
77
123
118
90
140
131
100
54
108
93
109
101
123
61
101
98
87
144
78
94
75
114
93
82
88
112
102
74
118
116
155
135
146
148
96
76
148
100
144
98
164
103
142
157
87
98
118
123
145
144
125
95
123
117
120
198
121
108
155
59
107
144
126
100
59
76
108
144
102
98
177
113
110
139
99
142
185
162
126
200
125
49
54
90
105
177
112
67
105
155
90
122
106
131
81
102
122
84
89
120
147
110
138
125
87
96
143
158
165
94
139
90
141
133
78
172
122
49
67
82
98
145
140
130
120
148
99
103
111
145
145
124
113
82
67
111
165
67
93
95
115
54
107
103
73
87
118
128
90
162
74
200
143
109
160
127
54
87
125
143
108
132
95
106
95
135
119
146
112
127
102
85
74
138
125
128
114
139
112
54
154
59
113
101
156
76
82
92
123
148
76
94
102
172
93
91
84
151
102
120
82
99
153
141
77
99
76
125
112
90
157
184
67
76
49
49
118
103
122
78
168
113
155
119
130
129
150
105
87
135
78
95
94
81
95
93
140
131
116
117
118
113
123
103
98
134
119
102
119
135
147
116
83
144
151
143
113
117
95
90
133
144
144
159
95
129
54
115
86
98
78
80
161
163
130
83
143
54
128
68
85
54
132
113
157
106
112
139
112
84
108
102
114
74
90
113
183
124
159
98
127
95
83
148
158
80
87
135
105
112
128
120
95
96
93
202
126
132
131
128
86
184
105
69
81
108
81
91
122
113
125
89
118
118
118
54
105
90
159
93
109
108
136
77
114
101
128
132
78
108
95
153
103
126
83
78
103
77
127
115
134
162
144
97
149
81
120
171
74
127
152
112
87
153
98
98
101
87
131
116
139
134
123
145
96
125
87
143
95
152
142
130
100
102
68
144
112
72
127
173
95
81
81
107
67
177
107
135
78
129
108
87
166
141
151
90
121
103
108
152
153
163
133
172
87
152
103
134
74
67
99
97
112
49
117
131
156
108
165
95
54
158
144
124
94
148
104
131
83
67
107
85
129
158
106
116
103
92
105
102
119
102
77
123
82
101
49
120
108
87
117
87
54
106
65
118
93
100
108
133
130
77
153
149
92
176
144
156
133
99
102
172
131
104
91
128
108
144
109
95
102
123
123
190
89
106
111
108
172
102
110
95
144
107
90
99
96
96
110
77
81
96
180
98
144
54
133
116
82
111
119
145
96
120
138
76
82
83
93
84
129
106
54
99
135
108
141
100
49
54
123
194
95
135
54
125
109
90
106
131
125
95
84
106
158
142
120
135
117
82
162
104
109
129
82
54
130
123
102
74
76
54
115
78
108
133
82
125
158
105
84
127
115
139
82
166
143
54
83
68
123
54
108
136
90
59
122
82
95
95
98
49
54
119
120
111
141
148
144
138
139
54
161
119
147
106
102
100
82
107
93
124
147
139
128
144
145
125
106
81
98
114
103
136
62
101
109
98
177
95
124
113
121
82
110
135
98
95
122
107
102
125
80
95
108
144
92
54
155
120
84
113
131
88
100
111
110
121
106
95
156
147
97
109
105
96
104
81
108
95
103
105
142
129
125
126
139
117
144
85
118
98
75
144
166
163
149
116
98
120
109
126
142
120
105
117
179
150
143
119
148
100
102
139
168
134
81
54
135
97
124
112
95
122
76
54
125
87
98
121
94
116
169
100
106
115
98
91
87
90
93
128
104
111
103
105
68
152
77
144
135
147
181
78
144
67
95
95
49
127
138
170
103
118
110
117
168
102
152
100
54
102
108
165
111
112
103
160
90
139
98
128
142
95
118
127
74
145
115
158
105
162
103
130
93
68
164
108
144
98
119
78
116
129
180
108
93
128
186
86
100
122
136
113
132
88
106
108
143
108
134
108
98
114
102
219
121
93
186
135
82
78
101
107
140
100
106
132
137
123
110
78
96
123
113
100
108
102
95
77
93
54
106
74
165
98
152
49
92
126
129
130
155
86
82
144
105
142
125
102
134
81
77
122
95
95
115
109
80
113
49
54
141
54
54
82
121
129
149
105
98
108
54
143
121
82
103
77
115
97
108
84
106
87
161
138
176
120
108
132
158
122
118
103
127
143
129
138
167
98
104
98
127
135
116
108
114
120
162
89
107
90
145
98
96
109
133
96
118
107
98
138
110
80
145
126
113
108
102
91
83
112
175
102
106
95
121
49
59
117
49
146
133
103
109
110
165
113
165
96
76
156
49
74
131
110
122
155
158
148
108
141
101
127
98
94
117
125
100
113
120
108
204
135
122
110
129
100
200
129
163
143
121
102
102
81
125
128
124
113
49
81
73
120
90
104
99
119
102
107
185
102
177
77
117
54
139
95
125
125
81
92
82
119
101
111
133
112
90
95
79
131
100
77
146
139
107
128
98
114
103
132
150
146
114
137
145
112
89
120
87
100
106
137
137
145
161
108
148
108
127
90
94
129
107
143
54
114
92
145
54
93
105
151
54
106
114
59
106
109
82
134
114
105
77
95
94
90
125
106
115
102
89
49
156
134
89
90
145
177
150
85
140
139
96
89
126
144
122
94
97
54
91
112
130
160
148
129
123
76
155
134
98
170
139
101
154
91
106
61
82
95
132
122
67
93
80
54
59
54
143
173
116
76
143
95
138
141
155
104
95
95
122
180
76
122
148
132
108
136
79
137
91
83
95
105
103
108
147
109
79
98
125
101
98
143
95
75
132
144
108
92
59
54
144
83
153
91
105
102
119
122
137
78
170
133
122
151
54
125
85
142
115
102
103
82
130
98
116
96
105
120
152
118
127
106
102
125
113
98
97
145
108
133
117
135
104
76
135
135
112
68
127
91
77
81
102
134
135
164
95
99
143
81
108
49
54
107
93
140
127
82
148
153
164
107
69
115
112
124
98
98
153
100
112
116
92
138
138
146
125
157
93
54
117
106
65
199
108
83
135
153
54
110
127
101
117
108
127
174
105
49
112
99
105
85
105
144
177
54
105
49
95
165
98
140
146
123
147
82
115
144
78
61
177
144
109
140
87
138
108
85
98
102
107
120
90
120
149
132
115
140
120
140
177
106
133
159
49
119
135
127
82
126
109
87
68
122
166
115
102
115
112
89
102
137
113
102
130
160
76
137
120
113
162
172
83
115
105
122
49
165
123
129
117
123
81
114
102
116
102
141
103
129
140
109
100
144
95
123
147
102
146
103
125
125
93
137
154
125
154
137
207
116
121
91
146
121
84
77
74
90
98
131
95
103
81
143
88
145
98
128
87
150
168
83
129
126
92
54
145
120
98
128
93
78
108
120
59
104
158
108
94
106
107
143
54
148
49
148
116
104
138
54
136
100
148
123
146
134
109
127
76
138
109
93
113
122
83
95
141
82
146
74
139
125
116
153
137
147
98
90
143
110
98
138
141
114
131
99
90
100
133
95
155
125
125
164
106
168
113
115
79
144
148
73
78
112
95
165
165
173
155
120
93
136
54
83
146
108
128
116
94
85
134
122
132
108
82
137
148
84
112
54
76
91
98
132
198
87
114
115
148
153
111
95
102
158
77
123
74
191
109
148
144
108
103
68
59
82
98
93
109
115
95
150
163
127
107
107
125
144
98
83
140
96
110
101
116
136
119
103
78
108
105
78
83
161
68
200
109
119
87
116
141
140
74
87
115
160
143
135
95
124
83
102
112
106
159
101
88
133
108
123
134
89
83
118
98
141
106
125
82
131
154
124
186
163
137
133
119
84
131
90
87
122
114
156
99
98
118
99
105
54
108
147
129
79
83
108
78
132
61
69
133
102
120
108
100
165
114
96
151
216
134
73
54
120
135
116
133
143
177
120
148
94
127
54
103
168
81
102
125
82
114
141
134
90
81
99
125
131
137
177
93
144
108
123
102
96
67
126
102
90
106
96
101
77
102
135
80
107
131
145
102
113
98
54
108
134
96
129
92
123
95
85
115
111
108
103
81
168
110
59
97
109
104
122
164
104
119
95
140
103
88
76
102
73
134
121
129
141
59
115
135
129
103
98
125
163
108
54
102
123
67
158
149
76
87
140
131
139
152
119
82
143
128
125
123
81
186
186
154
67
147
109
54
101
125
156
138
157
121
131
158
74
169
132
87
86
99
147
74
104
104
82
54
81
140
95
131
108
92
118
82
102
113
91
135
123
113
131
88
141
128
150
118
131
105
131
54
128
115
161
89
106
98
114
93
54
157
109
90
77
108
108
133
59
96
127
112
54
98
83
73
115
153
137
45
132
162
89
98
81
71
120
115
91
81
118
133
129
171
87
129
81
69
77
95
87
92
87
92
98
114
96
106
132
118
108
131
177
115
116
123
148
128
89
150
89
95
105
109
178
119
103
158
107
102
112
79
131
83
139
108
131
81
110
103
101
59
129
143
147
146
113
134
113
173
93
103
49
131
151
112
115
124
115
146
78
135
123
108
103
87
95
137
142
108
82
108
96
97
131
108
118
105
136
81
134
101
150
141
77
96
87
111
102
113
127
110
97
128
148
85
165
162
166
155
113
107
141
95
148
102
189
135
102
111
54
112
97
151
113
126
165
100
177
49
135
108
114
119
98
100
103
120
130
121
100
54
132
102
110
128
113
151
54
147
147
90
81
99
74
150
153
68
103
111
110
98
155
81
102
154
110
141
128
101
150
49
177
93
110
115
129
131
105
108
89
152
133
134
96
133
158
159
150
108
149
87
93
127
108
136
126
54
122
193
119
108
113
128
82
139
87
101
119
98
125
152
134
147
80
133
136
123
105
119
103
89
98
123
99
76
100
54
54
59
108
97
74
77
191
151
86
113
114
91
81
125
135
163
81
95
110
107
130
77
87
193
130
115
148
151
119
139
142
115
115
142
103
123
164
91
115
119
126
61
107
147
118
125
84
102
145
138
122
81
59
59
122
87
150
108
177
136
137
132
79
87
106
59
161
77
106
73
117
107
103
131
139
101
103
140
167
54
124
96
93
124
128
78
146
105
103
85
137
102
113
194
95
88
124
80
128
144
115
90
78
83
115
54
164
91
163
70
121
102
95
99
98
165
110
76
121
127
128
96
156
49
68
132
154
116
107
151
173
106
120
83
96
137
104
103
79
131
101
49
81
69
148
115
103
89
108
54
113
126
132
94
124
108
90
149
136
144
54
54
137
54
147
93
105
158
158
115
130
54
98
126
65
132
119
154
107
113
149
120
131
140
186
83
100
90
97
126
177
146
107
113
140
106
129
102
103
124
105
49
111
108
127
113
127
202
123
108
77
74
96
130
54
113
95
113
114
116
78
98
143
86
149
131
115
125
108
54
76
141
137
172
106
124
148
100
98
119
86
81
95
121
92
95
127
117
54
89
155
106
200
136
87
115
54
127
118
129
129
147
145
68
119
119
104
101
93
91
116
124
91
123
73
103
86
195
93
91
95
125
98
125
76
105
130
104
80
91
115
120
144
126
138
91
109
137
85
150
54
94
125
134
129
112
91
135
90
95
102
110
142
152
81
98
59
105
113
107
136
114
133
148
173
148
102
72
103
141
125
59
150
157
108
74
169
78
156
120
137
114
95
97
93
112
103
128
140
148
112
119
74
119
133
104
107
73
65
81
122
98
130
128
133
137
82
107
69
108
125
81
121
147
117
122
130
127
89
161
156
97
102
95
76
54
99
78
85
108
98
83
79
148
145
92
140
145
93
99
125
120
180
105
108
54
113
140
179
128
161
127
104
90
108
145
77
148
78
103
95
87
134
139
59
150
146
163
101
121
116
54
94
141
108
89
164
74
108
127
116
136
138
94
81
67
99
81
98
121
90
112
108
144
73
59
125
106
126
91
172
98
148
49
74
116
113
54
103
94
135
125
110
101
172
138
90
130
54
101
74
153
93
113
108
140
154
174
106
83
84
142
140
106
97
87
135
197
173
106
106
74
145
156
95
128
95
112
123
80
54
130
87
140
103
94
135
113
144
128
83
164
120
117
125
54
115
135
90
54
102
165
103
170
83
139
136
95
102
130
90
106
127
137
102
144
108
113
165
110
139
78
75
96
49
139
125
49
124
129
130
143
100
92
106
146
138
87
74
145
125
135
84
96
102
144
148
76
96
124
77
120
102
115
148
142
149
130
102
106
74
117
135
160
147
93
112
78
155
115
138
126
133
119
144
127
150
108
103
127
127
110
152
137
90
54
113
119
97
99
131
87
132
122
108
76
133
93
54
105
59
102
83
98
138
155
145
127
87
113
197
130
147
123
117
91
134
68
122
91
125
54
80
107
135
77
107
171
94
97
146
54
125
119
68
82
83
122
112
125
177
92
135
79
144
114
145
138
137
158
167
134
112
120
88
156
83
126
82
82
148
134
133
111
138
93
149
122
136
129
70
54
121
122
90
101
102
95
88
102
112
123
70
82
107
146
68
117
144
117
108
88
68
125
123
103
49
105
93
130
82
175
102
74
87
146
149
102
132
103
139
133
98
83
110
54
141
90
115
59
145
145
67
98
105
88
98
160
122
95
126
103
133
135
124
156
104
72
177
81
127
90
77
118
127
119
90
95
103
139
95
116
140
163
98
110
81
77
54
151
54
122
127
169
76
98
104
170
144
140
98
76
127
120
130
130
85
105
97
90
90
90
89
123
78
102
76
89
124
144
110
98
133
113
125
141
145
138
106
54
54
89
116
95
105
110
130
134
87
128
93
95
129
107
149
108
139
110
135
67
147
158
154
101
113
91
95
145
134
175
134
118
54
78
131
92
105
120
70
90
106
177
127
59
112
122
141
102
155
103
181
96
147
113
149
95
180
145
161
122
106
109
133
81
109
123
106
101
169
98
168
124
108
98
49
106
128
96
105
125
117
83
76
139
77
121
102
97
145
106
113
114
139
113
96
101
109
111
104
144
102
90
91
127
122
116
118
49
119
102
98
133
76
153
95
129
135
95
128
113
103
54
119
90
134
102
92
133
107
138
114
124
74
74
101
134
133
108
149
71
158
178
135
140
98
197
149
78
94
113
127
150
54
157
147
102
54
132
103
132
76
79
74
119
105
83
89
78
152
110
110
80
115
139
151
89
169
110
126
84
178
117
115
157
116
194
113
133
119
151
180
83
129
98
107
141
93
81
98
106
108
82
68
120
98
120
93
95
139
96
74
98
149
148
89
127
61
100
74
122
102
124
81
80
118
170
74
113
113
95
102
129
154
108
126
121
108
95
132
158
119
135
149
108
144
153
140
103
148
107
97
131
118
146
104
160
77
186
104
113
113
61
108
134
91
127
105
140
147
85
54
158
179
99
147
125
116
108
104
78
116
82
158
102
150
114
190
115
110
108
89
120
94
138
114
122
134
125
161
119
98
145
92
135
108
130
88
113
59
80
59
131
134
128
102
149
127
162
99
99
147
108
76
148
153
134
89
143
167
105
184
177
105
80
121
108
131
145
83
108
128
113
133
90
80
144
102
104
104
102
119
151
142
115
125
68
105
169
98
133
119
128
108
103
117
76
108
153
105
78
105
124
113
125
84
117
170
106
155
124
126
112
124
113
93
143
135
138
103
146
94
77
150
109
83
95
160
108
128
67
115
113
98
113
97
54
76
102
105
102
110
115
131
162
102
139
140
117
94
151
145
68
124
81
129
107
107
118
143
180
152
106
54
141
126
139
93
93
95
123
156
139
102
106
141
137
90
140
125
148
108
106
121
113
101
101
105
95
137
127
140
82
120
134
104
116
135
156
98
129
104
177
98
133
121
102
168
122
178
136
108
149
120
123
151
111
124
96
95
127
119
103
81
112
118
109
59
85
105
157
153
161
125
114
82
124
98
103
118
106
98
157
98
128
90
107
121
111
54
98
157
128
108
85
87
117
103
135
89
120
77
141
125
83
81
102
90
156
112
163
177
84
110
122
113
102
140
102
110
104
105
87
106
129
115
125
132
77
116
128
103
93
103
98
125
110
102
95
128
104
98
101
95
171
105
95
99
158
116
149
125
125
179
119
74
144
148
116
118
103
111
192
97
132
80
143
148
87
125
86
103
129
169
171
128
114
79
139
149
107
95
92
112
125
146
99
119
54
125
136
112
129
74
123
128
49
91
114
178
135
133
99
103
59
122
130
125
157
99
127
128
49
54
176
97
154
108
113
139
100
102
145
109
87
146
78
118
101
135
98
87
158
114
153
138
133
76
95
133
194
125
142
122
69
118
49
83
90
103
148
99
145
143
93
142
49
144
79
90
92
177
151
126
144
54
141
194
142
102
165
113
74
93
186
120
167
100
102
121
186
102
101
95
147
101
104
119
108
100
98
97
98
119
115
98
186
77
140
127
150
82
130
145
97
82
112
103
116
154
145
93
108
54
82
114
120
139
143
160
105
107
169
134
117
140
101
125
121
95
87
118
118
132
74
100
103
105
125
82
147
116
200
102
108
128
144
138
115
98
76
108
140
134
160
90
133
131
81
137
136
177
106
100
91
120
76
110
95
123
120
107
189
88
134
81
124
130
94
125
125
90
162
106
96
177
127
132
115
144
109
131
104
135
104
105
108
115
113
103
112
95
126
100
125
93
174
135
140
160
87
112
117
91
116
98
111
105
103
130
85
113
148
111
82
141
131
54
113
120
126
106
148
146
133
98
77
152
118
115
108
149
77
111
131
102
54
114
93
49
148
152
134
74
81
106
118
116
120
120
92
117
155
87
138
120
102
131
86
109
124
101
108
98
77
144
119
120
171
182
127
170
111
76
146
98
151
116
161
122
54
140
173
153
130
90
182
148
93
157
154
115
128
54
119
107
157
156
131
99
95
116
59
126
78
87
54
121
59
121
106
115
137
157
90
83
105
116
118
129
103
131
177
107
147
49
119
54
108
91
139
110
123
107
94
89
94
157
111
144
94
85
117
109
112
180
96
112
126
105
90
49
91
96
106
120
120
177
140
122
125
153
167
124
148
102
89
136
126
150
103
113
81
101
98
92
158
147
76
134
113
114
59
102
109
129
107
54
108
144
94
171
109
93
88
87
145
69
120
116
125
84
101
102
110
135
106
95
189
96
74
152
130
98
54
77
83
98
144
133
108
85
117
102
90
102
131
98
54
130
134
164
131
126
78
103
150
92
94
110
123
156
130
102
158
135
97
110
112
163
143
157
78
101
130
102
78
126
115
68
217
140
156
125
143
116
148
123
132
106
141
141
99
155
136
177
180
74
102
105
111
122
122
144
114
119
123
82
65
102
139
128
98
108
133
102
150
49
148
99
132
82
130
225
126
49
49
144
97
120
161
148
134
93
119
145
59
141
125
100
95
49
125
138
142
89
108
102
118
179
145
102
103
82
129
82
98
127
129
95
106
107
54
175
95
161
77
103
112
127
116
108
127
106
145
89
101
98
148
107
101
140
111
93
82
147
49
108
100
116
54
128
128
113
126
49
138
106
120
114
105
175
122
126
105
158
133
49
116
135
54
117
107
81
76
101
120
73
82
105
155
163
113
149
106
98
102
76
61
76
143
162
54
118
112
78
128
99
82
102
117
177
127
131
188
103
132
100
133
111
145
159
106
110
104
109
97
95
93
91
182
171
132
97
93
118
102
86
198
147
139
77
67
102
166
117
49
131
129
95
173
96
145
82
76
103
77
104
76
121
122
106
128
125
105
131
103
171
151
139
143
108
91
82
121
164
77
137
105
95
104
89
122
132
146
95
105
102
141
118
138
140
115
126
147
138
99
133
107
54
92
149
101
165
159
81
74
102
116
134
131
76
81
134
159
132
108
68
98
87
54
179
54
94
104
118
92
153
115
101
108
98
54
98
85
134
107
54
114
104
59
156
169
118
106
95
150
125
81
98
115
157
98
87
49
114
54
146
118
84
107
59
67
132
116
90
89
109
85
101
120
114
108
102
124
119
77
159
122
145
131
106
108
170
182
158
108
102
123
108
83
89
75
131
159
73
96
140
49
74
137
168
120
76
107
98
112
106
98
172
94
73
132
95
54
163
114
155
130
123
195
77
143
103
156
169
120
138
129
156
122
124
124
74
103
118
172
80
67
116
161
106
106
108
130
86
124
108
142
65
156
79
133
108
108
131
54
87
127
81
143
119
100
167
76
134
140
110
123
54
126
81
54
122
109
170
111
119
135
95
54
157
145
113
135
120
123
124
96
95
92
101
78
54
147
148
105
81
61
110
89
149
105
129
102
106
177
134
129
131
74
103
180
97
134
104
180
54
139
129
107
132
95
124
114
101
120
146
87
127
128
54
133
92
122
76
146
140
134
54
103
120
140
140
102
135
83
106
87
148
127
144
92
123
81
93
127
108
126
117
126
89
100
128
110
124
49
78
141
153
84
49
113
133
128
147
111
83
113
128
125
97
157
115
108
104
172
114
116
143
144
207
90
83
108
130
82
129
140
98
111
76
95
105
117
129
91
128
95
144
114
156
143
86
141
126
105
85
107
130
128
162
153
137
113
148
122
132
123
49
133
91
102
92
49
108
93
148
115
106
95
160
103
118
138
145
186
154
124
177
137
110
59
49
127
82
93
147
110
121
128
114
130
88
125
93
85
82
77
95
100
130
102
116
93
139
167
140
121
87
49
105
125
109
97
108
127
95
132
156
113
90
115
156
136
158
133
158
134
88
49
79
109
143
63
130
99
74
127
135
108
113
95
112
115
136
133
227
103
115
102
107
135
81
108
98
59
100
148
103
131
106
133
95
152
148
107
100
103
141
103
103
107
105
151
67
111
117
96
110
54
99
98
103
128
135
117
125
149
92
128
147
156
117
105
110
125
105
82
69
123
130
95
142
102
144
90
109
95
86
67
108
177
83
81
76
74
148
174
107
147
139
172
212
95
104
104
78
115
114
99
105
128
123
118
110
187
161
113
95
80
118
150
54
114
102
137
146
164
186
116
139
78
65
202
155
104
81
88
108
130
102
95
163
54
147
136
103
97
151
121
91
119
95
138
114
74
117
168
80
95
139
104
125
92
132
54
131
109
149
63
99
109
54
111
118
113
98
112
76
132
87
112
159
98
107
130
115
104
110
141
54
125
135
88
158
123
141
90
96
177
148
151
98
115
100
113
111
141
122
106
132
149
115
135
135
165
103
67
113
165
144
124
143
128
135
98
92
130
116
85
87
78
154
90
135
102
170
98
135
90
86
128
83
173
90
81
104
144
75
79
150
54
127
129
141
153
123
102
122
85
74
91
161
118
70
133
129
113
93
123
94
87
105
101
61
122
131
170
109
130
54
168
190
141
54
107
100
147
118
102
96
78
90
123
139
194
111
99
133
158
98
120
147
144
115
145
162
95
84
167
78
116
96
144
109
127
106
67
109
125
112
106
175
129
118
45
94
135
150
81
103
94
81
90
93
142
103
145
120
128
158
112
112
93
102
88
132
92
78
84
111
83
182
80
115
148
134
131
94
124
124
128
93
54
100
155
82
85
172
124
138
132
110
159
118
122
146
162
77
110
98
83
124
125
150
103
96
101
91
74
102
104
140
95
128
81
199
95
113
131
78
181
54
122
54
77
90
90
128
151
126
95
132
155
108
148
91
98
89
49
131
108
126
120
148
122
179
91
81
94
91
101
54
86
98
92
54
108
49
95
149
93
185
78
54
106
158
128
99
113
138
183
106
149
104
118
124
144
133
177
106
100
73
95
82
98
109
124
107
115
143
128
143
98
106
156
145
78
87
93
135
110
98
54
166
122
85
116
171
182
138
111
85
190
94
128
135
85
120
117
135
99
90
103
54
202
149
83
150
81
158
92
74
77
108
77
131
137
95
143
148
153
115
49
115
75
121
125
113
136
132
145
134
111
90
110
138
81
102
110
100
84
102
128
158
108
115
76
115
114
127
107
74
138
98
126
139
96
67
119
159
132
126
74
129
102
143
49
98
152
83
113
139
49
131
95
115
144
111
73
95
152
190
107
124
121
101
148
74
119
91
105
186
152
153
124
125
117
91
132
152
85
82
148
114
120
147
99
83
93
114
98
54
98
120
133
95
120
97
154
123
113
120
131
54
149
76
139
124
132
140
69
108
131
160
81
108
115
106
78
157
68
135
151
54
120
80
162
128
85
143
172
119
200
133
139
99
125
131
86
142
140
123
102
98
93
114
152
119
87
123
130
127
142
99
127
154
144
189
114
131
145
109
73
95
143
177
104
102
77
73
113
131
108
127
100
124
94
145
83
100
144
113
92
133
195
93
154
129
155
85
54
160
200
154
141
105
116
59
111
97
146
111
74
74
128
133
90
125
61
76
140
84
117
144
158
138
116
143
125
157
108
158
106
135
105
132
155
93
133
73
204
87
117
173
100
92
131
107
115
108
142
77
95
115
98
105
133
98
103
121
57
128
91
103
59
140
127
54
203
102
148
133
108
103
120
180
122
59
122
54
83
216
103
126
89
138
103
167
54
146
122
103
96
136
118
99
116
128
120
115
128
76
87
112
106
103
131
113
143
133
148
100
102
145
54
122
104
159
128
133
95
123
74
147
118
62
95
49
146
59
82
76
129
106
128
104
96
106
127
88
126
108
123
82
108
81
87
179
148
102
159
109
100
158
86
150
131
80
54
98
127
107
133
102
148
141
131
121
107
114
127
54
83
125
157
103
98
167
93
106
102
106
132
99
123
98
148
118
105
114
82
162
76
106
102
113
108
190
102
148
54
102
202
87
120
89
157
108
98
83
130
98
132
93
131
106
109
115
120
108
177
137
112
104
96
69
158
191
103
114
133
104
115
91
146
76
87
149
166
82
129
114
114
133
93
171
149
54
132
133
95
61
78
177
104
123
135
81
98
162
115
86
123
94
74
102
116
146
102
146
112
93
180
67
95
81
81
70
116
149
149
135
108
82
110
135
171
74
77
109
106
106
82
186
123
117
151
117
98
105
59
158
126
148
54
102
59
144
141
102
85
131
127
162
132
54
162
98
112
98
102
103
85
112
140
121
135
133
155
114
127
91
144
139
158
96
68
103
54
110
95
142
143
89
129
110
98
49
90
136
130
83
107
54
158
120
79
116
143
104
125
110
129
108
81
109
172
88
154
96
108
159
116
133
103
42
113
170
109
96
81
152
131
140
121
74
109
105
102
114
102
135
116
83
185
59
145
160
54
133
54
133
111
96
135
54
140
74
95
122
143
74
170
128
132
104
141
104
121
125
127
106
122
108
113
98
112
137
93
126
117
134
130
54
114
138
124
78
98
88
103
111
89
133
54
92
103
125
99
93
100
87
100
99
95
161
128
114
172
113
153
105
82
106
119
150
134
125
95
127
81
133
145
108
115
85
49
115
98
97
139
59
106
151
131
110
161
77
119
132
85
108
111
45
54
116
90
109
116
131
142
117
150
177
89
87
105
93
87
79
105
90
82
187
99
105
127
117
107
76
117
134
87
107
95
113
124
93
137
105
103
105
54
49
110
125
59
143
98
103
124
165
99
102
134
165
117
99
145
180
111
120
59
97
133
163
97
95
119
116
107
81
145
92
103
163
45
95
116
90
107
103
76
120
120
68
129
113
118
127
74
65
76
83
116
108
98
95
86
156
115
94
90
128
127
137
145
136
98
108
179
199
156
165
125
117
107
167
149
114
134
82
83
59
101
74
93
97
116
151
120
87
113
49
81
137
134
76
87
145
170
152
114
148
54
108
98
81
147
144
85
129
128
54
103
134
95
102
112
149
124
49
130
135
134
115
129
143
98
127
59
140
105
87
113
98
81
147
106
139
98
85
150
105
123
88
147
80
93
131
126
108
125
161
123
121
124
88
84
135
138
93
173
98
102
116
109
121
174
138
127
147
144
106
171
134
91
160
123
54
129
119
139
123
143
165
125
167
128
78
190
81
155
90
126
169
65
120
120
139
45
113
105
128
169
138
150
145
97
144
144
124
96
54
90
125
135
105
102
102
108
54
137
151
128
78
102
87
113
151
82
68
115
68
130
126
140
115
135
98
111
122
175
113
108
76
107
81
113
77
158
54
132
115
110
98
114
98
81
156
95
128
108
110
138
139
98
107
103
140
54
74
102
139
133
92
143
110
140
93
54
110
105
123
77
104
135
127
81
153
118
112
88
135
86
113
126
182
146
123
156
127
92
123
149
130
78
121
113
90
124
165
111
107
125
95
144
165
125
157
105
193
54
87
145
81
128
67
130
117
129
131
99
125
93
192
82
120
138
77
78
120
127
108
109
128
97
169
119
95
132
139
120
177
105
133
130
90
81
180
191
81
137
120
104
107
54
101
131
102
138
107
153
92
102
83
120
105
108
98
93
106
81
121
108
135
123
119
95
59
99
125
125
144
78
122
113
83
143
103
99
168
151
125
101
98
152
59
176
61
108
124
138
177
135
74
155
54
115
135
85
98
102
156
81
125
88
129
128
141
116
130
146
82
129
169
112
128
82
113
102
81
108
77
95
159
54
116
180
108
170
97
95
116
104
151
141
103
108
125
117
115
91
101
166
105
102
98
125
54
136
160
125
114
133
133
179
145
108
141
119
108
117
96
147
124
114
54
77
162
98
104
168
145
99
94
125
167
102
108
108
144
86
102
96
144
78
159
126
111
136
129
54
83
150
81
131
151
105
106
108
92
95
143
123
144
172
100
117
125
108
89
116
98
131
111
113
128
182
59
108
117
108
128
98
91
91
143
61
70
93
59
124
108
152
90
127
132
115
97
131
155
103
95
100
111
155
143
76
102
180
114
153
102
74
128
114
122
180
49
127
119
95
63
116
122
118
133
103
138
126
90
116
81
112
116
87
54
76
102
87
165
130
54
148
157
82
95
88
81
120
156
81
74
95
144
132
112
128
87
97
142
124
158
106
54
87
105
78
145
110
144
137
126
113
148
126
130
139
143
110
68
95
113
134
150
126
102
84
92
97
134
143
106
77
136
112
102
77
101
98
94
128
102
114
105
117
118
85
112
88
106
154
81
54
84
77
146
143
95
116
122
123
125
59
129
97
141
163
163
113
92
127
100
80
126
118
95
143
89
95
95
162
101
110
125
107
154
104
150
139
54
147
96
108
145
86
80
113
168
117
114
179
103
119
82
95
74
118
78
98
129
153
61
161
102
146
103
165
142
141
147
78
117
125
100
111
95
77
103
194
136
118
111
149
120
99
59
54
119
118
102
101
113
173
83
96
140
145
78
97
93
119
100
103
120
81
115
99
78
132
72
123
117
123
95
143
90
90
119
138
108
117
89
108
107
141
59
145
95
132
70
165
93
126
145
54
145
109
54
80
66
81
210
78
78
67
154
106
124
148
105
144
135
104
98
167
103
95
99
143
144
111
108
92
105
106
132
122
154
127
136
150
108
102
89
118
49
113
54
124
151
97
100
115
67
110
136
150
98
129
106
156
139
148
102
76
142
77
102
125
59
110
80
158
141
107
107
145
167
89
143
106
89
152
144
177
81
74
133
49
92
95
110
113
154
54
95
82
124
149
122
77
108
92
107
129
102
90
110
138
67
96
89
106
87
136
96
160
116
113
144
63
103
89
133
54
131
157
99
168
94
183
92
105
49
120
54
106
172
133
139
123
133
78
122
91
141
87
137
102
169
123
133
135
109
89
54
125
97
93
147
54
156
82
115
123
87
87
107
80
157
102
110
156
105
99
54
103
121
89
95
86
86
108
112
158
76
182
155
161
94
128
114
49
152
129
108
119
115
128
140
159
102
95
126
147
79
94
178
105
111
120
147
151
140
127
106
90
125
113
120
54
111
84
104
88
149
152
112
82
119
198
122
167
98
117
54
100
94
124
98
133
93
210
91
106
113
113
125
134
101
59
179
91
119
59
114
102
177
168
115
138
127
143
153
157
134
98
95
54
133
105
177
152
95
92
158
134
142
105
87
134
143
143
165
90
143
102
149
107
121
81
102
108
113
68
112
126
78
95
197
81
144
143
129
165
90
105
137
119
152
94
130
130
127
90
161
125
104
144
125
68
108
144
95
158
129
84
116
89
90
67
86
120
87
196
131
130
113
81
120
85
102
82
108
108
101
134
120
89
108
116
107
155
102
88
107
153
218
119
92
119
74
100
172
119
131
125
103
159
165
90
135
125
90
103
153
77
145
54
158
137
87
129
143
109
128
180
122
154
200
146
143
125
152
108
90
127
141
129
103
104
95
93
157
155
140
106
194
98
73
148
132
97
111
82
130
173
91
141
95
113
177
126
115
108
139
95
106
116
157
93
147
95
138
148
133
103
122
67
127
103
87
92
107
133
67
123
113
54
98
176
78
131
139
107
94
108
84
54
114
106
158
110
95
49
87
96
131
148
59
98
89
91
172
148
81
103
129
139
133
97
161
98
93
125
125
67
144
103
114
96
170
87
158
91
122
100
150
109
108
122
122
139
65
82
159
108
193
104
96
130
126
123
67
128
81
95
125
108
144
93
69
83
135
143
132
122
77
108
95
99
86
160
89
124
132
90
123
132
112
135
90
112
170
150
97
111
108
92
137
127
102
54
101
107
87
112
172
122
98
139
96
150
125
102
101
104
155
91
112
49
116
112
86
54
116
82
54
90
100
121
101
99
76
68
129
160
119
157
125
116
110
125
121
177
130
141
122
149
93
77
90
117
138
117
128
135
139
115
102
131
82
142
125
113
149
93
68
120
146
160
106
109
59
125
67
123
143
160
98
106
154
87
100
115
121
112
107
148
140
142
108
110
96
115
100
104
81
152
123
234
82
101
103
159
108
110
124
61
108
197
101
125
148
129
94
102
106
125
77
103
107
81
125
76
97
133
90
89
134
177
150
95
112
134
81
108
134
97
103
129
159
138
98
169
108
116
95
102
83
95
95
106
148
86
107
113
130
91
122
86
101
125
81
146
109
125
132
133
67
122
140
129
59
115
135
95
82
132
134
169
122
123
103
123
112
102
130
111
103
113
77
187
124
68
161
144
90
105
91
95
125
103
114
108
87
159
144
73
108
115
82
133
153
159
120
95
91
81
115
143
120
143
95
105
82
153
95
140
138
131
105
54
112
121
94
94
102
103
125
109
113
152
120
107
108
127
183
115
108
166
130
135
144
84
100
103
54
90
65
113
49
120
143
115
92
156
133
129
122
151
199
126
125
90
138
108
138
115
148
112
142
143
86
108
118
135
100
117
105
102
193
190
95
200
144
78
102
105
157
102
103
111
129
155
126
133
54
80
152
93
154
83
102
137
108
105
103
155
130
114
102
136
124
108
102
113
127
83
125
67
95
125
155
102
140
109
150
114
102
168
133
150
85
87
105
113
95
159
112
90
134
83
121
143
135
116
111
74
103
102
135
142
69
98
49
108
113
82
127
54
130
88
105
117
110
115
105
113
54
158
150
112
84
102
94
59
125
110
108
191
104
100
69
102
148
98
158
172
155
146
81
115
74
83
119
118
109
76
131
106
54
140
129
108
129
76
78
74
94
108
148
98
81
54
125
164
119
122
85
145
103
97
159
104
90
83
119
81
103
74
103
140
72
100
100
87
125
110
133
115
118
135
161
144
80
125
83
59
102
144
132
115
74
172
126
124
155
83
49
95
135
97
126
129
116
126
135
118
74
102
158
105
102
105
102
103
144
113
119
133
95
63
134
139
74
54
143
146
121
141
87
76
92
178
110
116
174
150
116
143
89
87
107
94
135
113
104
143
131
81
108
54
125
161
107
103
152
120
78
117
59
143
113
81
139
97
54
69
108
74
122
109
113
57
92
113
112
109
105
98
117
133
91
137
92
129
90
92
141
97
97
107
88
102
150
105
94
95
76
80
104
54
151
127
129
95
78
145
143
139
103
119
126
68
111
114
107
148
124
54
114
124
138
145
116
121
120
110
54
95
85
133
133
132
163
75
161
155
102
75
120
106
117
96
73
112
77
135
54
88
118
89
131
123
76
105
138
180
134
104
95
135
126
111
113
76
49
54
137
87
107
120
180
49
116
124
54
128
77
54
95
98
102
161
140
67
107
94
148
140
120
125
59
188
175
135
94
129
102
144
108
109
133
108
90
99
81
120
92
112
135
79
111
118
95
74
61
76
135
146
95
148
137
127
77
85
105
104
179
85
98
95
96
113
106
96
125
127
109
98
118
153
141
118
102
95
193
104
114
117
191
113
145
133
159
74
177
113
162
118
133
122
79
140
54
156
119
145
102
113
112
54
148
82
136
102
109
93
135
89
74
112
76
96
135
102
122
95
181
140
105
142
115
144
95
101
90
98
150
111
69
141
69
125
84
85
125
112
146
119
169
119
102
149
103
131
162
90
120
112
158
109
110
81
98
135
96
61
54
143
94
74
93
140
49
130
101
54
95
87
78
117
74
113
102
170
132
149
131
171
147
116
168
128
105
152
93
113
179
105
81
116
82
113
100
80
130
134
108
138
98
155
74
155
118
147
125
112
93
164
49
126
113
84
108
133
59
124
78
61
122
113
112
95
164
137
101
163
123
191
81
131
115
125
112
144
95
110
90
103
114
87
96
82
133
127
145
97
127
107
139
95
94
158
131
151
108
119
103
107
177
71
116
110
91
147
54
85
54
115
161
142
131
117
122
104
94
103
107
94
103
109
114
107
69
95
128
158
165
82
132
106
125
121
113
102
131
148
172
116
98
102
108
68
194
135
93
100
138
68
105
65
143
139
54
87
103
76
167
95
89
107
105
95
134
59
138
104
129
102
138
144
104
114
87
131
120
120
144
135
54
102
145
67
77
100
206
120
109
165
74
89
125
112
102
144
149
97
97
198
109
146
76
123
158
131
112
101
175
141
143
124
140
112
105
131
95
104
54
113
163
103
161
127
87
91
180
178
79
99
95
118
107
153
108
90
161
95
99
116
69
127
106
105
95
85
102
109
148
54
118
109
149
76
108
177
93
87
91
121
102
120
164
148
115
130
49
49
159
106
81
81
129
103
165
67
116
134
112
135
87
104
112
49
105
106
154
83
97
49
135
80
185
130
82
138
107
152
126
108
139
109
81
95
123
132
118
113
138
110
94
98
132
54
124
108
144
103
100
129
142
147
142
106
126
114
107
74
107
77
144
94
117
127
100
95
172
124
145
96
123
83
49
110
79
133
95
97
98
110
129
134
144
135
125
125
155
72
127
110
110
138
108
138
119
127
134
161
98
54
69
67
139
149
147
87
161
134
123
116
82
146
107
158
137
108
131
122
54
161
161
100
102
113
146
54
54
113
140
114
129
132
116
118
129
80
134
131
143
108
102
118
74
87
108
74
173
90
187
82
111
124
136
49
82
97
136
102
99
91
106
82
122
124
156
128
155
80
127
76
95
142
61
135
115
88
154
117
146
93
113
59
132
155
105
118
54
128
122
108
106
107
127
123
154
128
119
119
115
81
103
125
151
109
129
133
127
59
87
148
80
54
130
98
124
121
113
107
105
96
87
117
147
131
98
159
89
105
131
128
103
128
114
105
102
78
54
166
87
145
123
148
115
115
142
105
61
62
67
67
95
81
130
98
243
101
86
149
94
108
81
120
97
150
59
102
93
99
111
106
93
133
106
97
54
111
120
110
157
110
81
107
90
74
89
179
106
76
59
189
67
146
115
125
140
129
117
153
101
138
150
143
122
134
133
127
85
176
198
83
125
107
83
157
54
145
93
109
126
104
98
158
91
137
125
102
186
81
95
108
136
128
133
101
101
167
139
145
138
124
120
155
90
87
128
108
73
125
103
98
96
160
154
120
72
108
81
87
125
108
148
98
130
132
116
146
69
106
102
76
109
81
122
120
171
178
101
69
116
110
98
95
107
79
105
123
122
145
112
128
90
154
156
140
118
81
102
148
142
54
139
145
160
83
106
111
125
136
129
90
87
74
119
107
137
147
120
101
126
118
113
123
142
163
89
98
87
81
141
77
80
177
97
169
102
146
144
96
49
118
67
108
113
103
116
87
93
108
102
186
71
129
90
189
108
113
93
91
84
119
85
105
100
108
144
95
109
131
155
138
127
95
163
101
97
148
110
98
54
149
155
83
123
111
99
96
127
98
108
172
121
177
106
134
162
94
76
87
116
105
103
140
77
107
101
103
116
104
179
121
106
129
90
125
108
153
97
198
145
121
104
122
109
108
129
88
99
108
68
160
125
80
93
74
108
136
121
112
114
95
139
54
128
109
90
128
85
107
122
67
107
129
160
102
102
98
90
115
69
125
124
129
147
154
135
71
100
108
85
83
163
123
138
114
107
97
102
131
102
98
135
74
84
112
127
79
98
105
114
130
125
113
119
62
95
157
122
114
95
74
131
143
81
124
95
54
122
132
102
139
118
109
71
84
140
99
80
113
113
157
114
118
118
172
108
99
102
107
102
147
106
165
113
95
100
177
54
120
133
103
133
90
123
82
102
119
103
81
141
118
93
108
130
104
90
87
140
164
158
144
87
95
113
128
180
80
98
124
78
131
96
104
121
83
95
200
102
105
120
120
98
176
128
74
105
118
123
78
128
139
117
93
54
104
144
98
70
131
100
103
93
98
157
146
117
141
81
106
85
102
104
102
177
102
108
154
137
148
67
106
81
78
95
135
102
120
108
122
87
102
93
127
74
84
108
86
86
82
102
102
187
136
67
96
108
54
96
160
113
118
123
113
91
97
115
54
137
54
91
115
100
69
129
123
179
101
120
106
128
138
139
138
92
101
147
87
87
119
138
108
132
77
132
155
177
143
102
146
140
81
89
133
90
165
93
139
123
130
137
128
108
135
127
125
121
95
102
113
68
100
100
74
105
115
108
134
140
117
90
152
78
74
110
106
171
107
112
190
138
80
107
123
106
133
85
95
191
105
93
160
134
138
91
137
108
116
104
93
119
145
160
104
118
123
153
128
97
102
102
106
139
68
103
144
87
94
145
153
113
68
59
107
98
170
103
93
118
127
129
54
139
102
112
54
129
54
160
106
133
108
109
165
117
158
77
129
102
111
133
120
139
139
116
129
160
87
110
118
112
96
138
76
106
112
143
113
76
133
141
102
104
91
144
136
132
132
99
147
103
126
148
142
143
103
103
138
84
125
167
122
107
103
54
113
145
85
106
95
128
85
49
59
133
113
120
145
85
112
190
107
106
145
135
94
144
122
98
125
61
118
162
93
133
135
102
78
83
78
110
126
98
101
168
186
148
160
100
126
130
81
153
72
87
133
94
91
116
151
165
87
150
135
86
144
146
67
95
137
76
89
103
133
74
108
68
168
59
128
116
108
95
106
95
138
98
74
61
110
69
42
125
76
74
152
134
126
100
68
98
118
118
109
163
140
145
116
117
101
129
83
108
98
182
103
111
142
113
131
124
85
96
54
179
128
102
152
124
59
98
49
109
86
74
144
158
85
126
132
119
148
124
70
135
102
49
102
128
108
103
115
135
160
114
138
106
102
131
137
169
76
89
54
54
133
103
108
130
92
169
128
74
108
127
99
135
141
115
86
103
102
100
103
141
115
145
135
115
149
117
95
81
106
138
123
74
207
179
125
104
123
98
116
122
141
135
145
81
121
133
129
126
132
133
68
101
90
99
54
76
115
59
54
121
82
104
102
143
145
128
131
135
131
143
87
143
70
128
110
78
79
108
136
110
133
154
132
81
147
127
95
128
127
87
158
90
142
120
108
102
97
125
106
105
67
179
67
102
102
156
104
160
158
87
114
181
102
100
103
135
103
90
133
127
125
105
118
54
165
116
83
112
101
124
141
170
91
135
103
136
54
78
82
131
101
153
119
95
114
129
108
107
156
87
137
116
105
74
95
140
68
59
127
86
161
107
133
59
110
80
81
102
76
101
133
111
191
102
54
110
95
120
170
113
131
105
98
127
152
108
127
137
81
111
115
94
54
93
68
87
92
76
107
112
112
95
172
158
135
79
102
130
153
178
96
183
95
92
127
81
127
103
106
113
49
120
79
81
157
134
76
85
109
125
149
107
95
85
87
104
113
120
98
139
54
153
151
54
102
131
74
126
99
95
150
74
159
144
80
85
154
166
115
54
129
137
156
116
127
142
120
107
108
98
133
151
95
103
90
149
147
159
96
131
88
82
92
80
96
79
153
81
128
162
172
142
102
146
140
115
109
108
102
95
67
139
95
79
96
104
135
124
119
131
101
135
142
108
158
125
130
87
128
120
138
110
83
93
149
104
148
128
76
127
109
139
90
105
69
54
102
99
49
49
131
125
107
112
113
102
83
94
141
80
54
74
134
178
120
89
59
59
132
96
102
92
54
154
108
127
124
82
95
172
142
187
106
85
82
107
107
118
120
54
137
138
136
119
98
138
168
124
151
133
126
125
131
105
80
59
111
100
108
92
146
155
59
81
127
109
112
101
141
94
82
95
135
69
92
101
122
96
74
113
108
139
98
116
186
108
128
95
156
78
93
59
135
165
148
73
101
102
49
126
104
87
88
144
101
122
158
161
98
150
74
141
145
177
54
81
181
95
170
101
135
170
114
141
128
145
114
128
101
181
114
161
106
110
103
97
90
54
76
82
99
116
138
96
160
107
81
111
106
124
123
163
93
147
84
74
131
93
125
148
109
74
172
168
70
143
116
128
117
85
194
125
94
69
142
116
144
137
140
113
176
125
145
80
119
131
112
143
153
133
108
161
54
120
78
77
59
93
135
74
139
54
54
153
95
144
172
140
110
144
145
115
104
89
147
103
85
97
139
133
151
189
116
154
105
95
143
131
195
96
67
114
119
103
96
85
145
116
49
161
138
74
130
186
134
82
114
107
108
94
150
117
150
135
72
98
149
78
92
102
130
87
146
131
118
103
97
126
115
129
118
102
107
74
67
110
100
127
120
115
85
151
136
113
131
122
165
93
158
129
118
131
127
105
111
177
156
130
76
148
120
108
150
76
118
125
135
113
59
100
125
81
129
96
73
73
129
127
137
111
151
125
81
177
125
93
81
54
67
152
118
97
159
93
180
70
149
145
78
83
138
107
90
95
174
94
134
49
142
143
200
107
83
124
171
131
145
98
103
129
166
102
93
80
96
76
136
100
140
98
111
154
78
138
131
94
91
128
110
103
83
92
108
167
54
96
102
76
122
111
120
115
124
80
119
127
133
134
137
159
92
74
132
99
135
134
98
54
113
138
134
165
84
146
119
82
110
99
125
87
54
100
108
140
149
108
76
148
87
76
96
124
105
95
179
102
117
113
93
120
96
90
103
54
127
110
77
74
114
137
95
81
154
74
124
107
105
119
90
121
102
90
115
133
103
163
74
108
103
98
135
115
176
78
128
107
90
54
144
145
102
144
102
81
49
98
143
163
127
137
106
108
132
105
103
102
124
139
74
114
141
157
62
69
116
130
113
87
128
149
216
93
131
149
173
145
135
95
125
120
130
84
101
125
148
120
135
112
115
83
96
78
139
131
112
91
95
95
107
124
112
105
102
125
123
124
118
113
90
151
112
90
128
108
74
132
68
100
168
121
98
97
122
139
54
108
96
161
82
112
54
93
101
88
121
129
101
127
108
106
165
177
87
104
54
102
80
133
188
124
162
54
108
115
90
131
120
128
170
138
95
114
95
115
105
139
94
108
82
160
105
93
148
110
129
148
103
103
110
93
152
121
102
123
73
80
128
67
146
81
158
100
103
142
95
119
107
116
140
103
95
124
133
104
108
103
133
131
123
108
102
109
95
136
117
87
79
69
99
102
135
130
113
86
131
106
90
142
77
121
126
149
102
111
78
121
82
123
83
156
119
115
77
83
147
135
103
112
104
132
101
124
179
95
116
147
76
90
140
126
143
114
151
158
129
104
102
81
115
76
154
143
141
98
103
104
54
61
131
148
78
123
133
97
131
155
141
102
83
163
99
90
95
94
160
87
108
108
83
139
153
105
136
128
108
108
157
126
126
123
106
54
128
107
104
54
149
76
131
144
100
98
82
96
106
78
119
124
168
112
140
125
149
108
126
103
59
68
108
148
116
76
163
143
128
144
92
124
54
91
124
120
113
146
54
136
158
84
148
170
105
151
81
138
109
133
112
74
156
156
115
127
145
90
137
107
125
102
96
115
194
151
80
119
138
140
128
168
146
76
67
54
137
148
117
123
102
54
139
94
69
54
108
77
131
149
123
114
173
116
109
77
103
127
101
141
138
105
108
87
128
140
67
192
119
108
54
90
149
110
103
143
110
98
101
112
144
91
173
98
180
90
147
61
125
110
54
49
112
109
88
98
151
102
138
129
80
76
115
91
108
94
82
84
179
127
132
122
81
155
90
108
167
93
127
103
54
136
90
103
83
93
92
97
83
135
119
150
89
156
133
93
68
130
82
115
160
136
82
135
88
77
145
67
143
54
129
141
54
111
73
103
109
102
54
107
133
120
82
95
149
69
113
144
137
131
74
81
131
132
162
108
147
148
161
114
104
117
132
116
139
117
109
108
101
108
153
123
133
102
101
82
113
90
108
98
164
159
160
114
95
98
104
114
59
131
129
129
87
92
79
97
124
103
98
83
77
113
101
127
157
139
159
128
118
122
91
123
115
125
118
98
99
78
147
159
152
102
136
102
108
131
49
115
49
141
119
89
105
54
108
54
102
108
87
54
144
127
95
54
93
234
125
128
135
173
137
141
131
129
164
158
54
148
88
74
122
108
119
147
98
109
125
107
98
158
144
81
106
128
109
184
119
103
156
107
123
122
86
78
115
151
104
129
87
106
129
94
76
123
138
172
131
128
125
144
93
102
54
98
54
117
59
114
102
87
80
108
103
111
86
177
95
91
123
141
91
150
74
116
125
109
92
168
156
102
133
98
140
128
126
106
136
105
128
170
129
118
90
108
107
127
107
157
143
95
81
81
122
81
106
179
65
143
143
139
130
133
101
149
90
90
120
170
136
125
128
109
49
148
107
91
108
96
120
123
130
132
87
116
103
140
157
101
49
139
96
104
186
135
54
95
129
112
81
68
122
145
79
125
177
147
113
145
133
147
105
87
81
84
127
91
122
49
107
93
145
128
102
112
132
77
144
82
125
133
78
113
59
101
98
104
149
125
143
113
190
124
91
127
113
98
99
102
161
102
95
136
126
119
68
127
110
95
102
77
107
130
112
105
165
141
95
130
156
49
119
137
123
141
137
159
125
128
123
104
125
174
85
108
152
135
139
117
59
110
87
102
91
67
87
93
195
112
102
76
134
122
139
90
155
97
96
151
82
95
108
90
102
131
87
90
126
112
54
94
135
112
89
126
120
54
83
120
129
100
93
119
143
86
108
93
93
127
144
81
111
157
124
104
127
119
54
148
164
130
72
95
138
94
80
61
119
106
118
54
54
93
90
54
162
136
102
103
165
100
127
128
151
131
123
127
164
105
134
125
54
98
109
107
102
108
116
109
126
90
54
105
74
179
190
128
103
121
104
59
90
108
123
74
77
154
98
125
86
91
106
97
89
135
143
82
110
113
119
98
152
114
95
136
123
149
137
160
151
105
123
122
111
90
96
129
115
83
127
110
139
144
166
146
133
90
118
117
133
142
85
144
111
108
122
116
98
123
98
141
92
114
161
84
116
81
67
103
54
128
123
102
118
149
54
117
128
131
120
95
74
114
147
157
96
124
81
81
149
99
96
161
135
130
102
81
109
100
120
145
123
120
104
112
143
95
108
183
109
110
103
144
125
106
177
128
123
150
149
67
175
131
127
155
122
139
85
165
108
102
110
106
102
139
200
133
90
124
147
143
95
115
98
54
125
117
179
102
110
90
81
137
94
102
135
100
97
91
80
103
59
108
109
103
87
106
128
150
49
85
126
67
150
181
159
119
54
118
147
82
59
109
113
149
81
80
121
133
54
161
102
105
147
128
154
145
103
101
98
139
115
150
147
186
54
128
132
102
81
108
89
115
120
77
78
115
134
121
165
97
112
121
145
105
144
113
130
78
54
79
102
200
102
152
70
68
120
97
177
105
127
136
125
142
99
146
54
148
98
144
104
154
125
102
118
81
71
98
140
140
101
87
151
115
141
116
114
124
112
117
90
128
101
148
98
54
87
81
102
81
169
100
88
106
108
173
54
121
95
108
107
139
119
110
143
95
81
146
197
100
98
115
151
80
170
82
95
109
113
74
166
81
109
167
97
165
134
106
115
167
111
107
147
120
59
168
134
119
125
117
109
138
126
112
59
45
144
91
148
140
138
146
196
108
123
152
134
168
97
81
123
125
153
101
124
148
107
143
106
119
113
98
160
125
128
61
59
167
83
76
74
155
92
129
125
169
74
106
153
94
143
74
54
83
61
54
114
97
126
145
98
125
103
154
68
173
133
54
128
119
144
118
93
77
74
149
81
119
90
141
45
162
118
108
107
95
59
99
168
105
83
106
120
160
165
98
144
200
101
85
150
122
95
74
167
131
88
128
164
120
54
61
74
120
54
125
90
145
108
98
49
161
116
172
119
99
116
102
108
161
128
164
81
95
115
107
159
73
122
120
74
67
152
122
72
109
87
151
144
125
85
115
131
131
103
107
137
151
192
110
137
128
106
112
107
89
85
87
202
126
97
120
148
149
102
87
95
132
54
82
154
98
113
91
98
90
97
98
98
119
116
131
106
54
110
112
113
121
144
125
90
161
80
128
76
137
144
77
126
98
118
113
138
128
117
108
103
112
151
135
106
113
145
114
120
141
94
74
177
91
144
120
84
78
90
114
118
104
139
118
123
140
158
141
141
132
130
54
149
83
125
74
135
132
148
98
124
99
137
95
90
123
119
109
49
130
100
138
88
114
111
146
106
170
133
118
92
168
145
149
163
128
121
82
125
97
98
74
100
76
127
173
118
106
110
142
115
117
54
96
138
144
142
156
54
95
120
97
85
80
144
87
130
133
77
133
156
133
110
137
193
103
116
77
129
123
129
101
137
93
54
146
103
122
169
146
125
87
113
129
168
96
132
138
112
105
87
148
91
82
90
161
90
122
130
112
141
154
133
101
101
114
91
119
87
95
123
134
85
127
54
128
112
85
116
103
81
103
49
134
54
111
96
149
110
109
107
134
112
159
129
143
88
143
142
54
144
112
125
155
193
93
136
102
95
90
102
102
128
95
68
88
157
137
115
93
104
146
113
132
77
134
143
113
108
112
77
103
54
114
99
120
138
128
147
107
114
180
129
90
102
123
119
112
153
132
102
82
120
101
110
86
87
131
147
78
105
127
172
145
120
54
113
114
145
82
136
95
84
116
140
88
166
81
147
153
113
123
135
54
136
89
157
113
131
146
74
95
95
54
122
145
101
111
110
165
112
107
97
172
140
102
123
118
158
61
95
103
101
54
105
94
85
113
143
121
162
81
125
54
122
134
119
116
128
120
138
106
95
127
125
70
78
102
104
108
158
129
144
160
54
142
103
132
93
96
105
124
110
59
108
103
133
112
119
87
108
120
144
129
103
74
158
100
105
96
115
103
112
160
114
103
113
152
137
158
94
96
141
122
72
116
162
144
118
108
54
140
59
121
132
141
69
105
93
54
119
85
124
136
113
74
81
143
107
123
96
122
119
108
160
67
158
140
160
123
115
141
119
119
133
152
151
125
85
133
125
102
131
160
68
99
139
132
127
118
102
129
102
139
127
138
112
98
91
159
127
143
123
82
144
110
98
45
80
150
114
81
98
163
137
167
81
124
98
80
91
136
127
106
110
131
125
108
128
123
90
84
101
103
145
127
157
224
120
145
77
59
122
98
105
81
109
100
49
112
145
54
104
93
190
135
83
138
105
68
103
181
113
123
144
77
120
99
82
127
79
117
49
84
128
102
98
95
120
134
98
193
92
137
95
160
112
89
98
101
87
103
87
161
139
81
111
85
125
92
102
91
177
116
88
179
97
74
81
142
153
54
151
72
99
108
111
83
179
144
127
154
69
142
104
87
103
117
91
125
81
139
105
83
74
125
186
128
125
127
148
87
74
128
95
148
158
123
98
84
102
95
116
107
81
116
154
117
108
127
214
120
102
95
128
106
103
102
98
149
109
102
177
139
74
127
92
96
125
61
119
129
124
129
131
104
179
162
106
118
148
149
134
101
90
118
113
97
102
179
54
182
106
83
149
155
154
97
122
136
83
76
94
84
74
87
191
147
78
132
139
119
118
76
83
89
127
118
82
133
87
76
131
127
101
54
82
149
99
61
54
136
161
96
93
98
152
116
77
116
106
109
131
104
131
109
105
134
140
135
157
148
102
91
122
54
145
81
89
113
120
73
90
96
118
102
137
91
95
92
143
91
113
115
98
111
132
111
118
102
74
149
153
182
150
139
119
141
108
54
125
108
105
157
121
74
139
149
133
113
150
102
145
177
96
125
129
108
81
103
105
132
98
129
123
116
147
105
82
125
139
115
124
105
104
105
95
103
150
118
158
54
89
116
123
102
145
154
122
124
119
103
133
102
124
67
103
78
110
116
145
140
94
98
93
83
104
107
160
118
149
133
125
74
135
145
155
105
103
119
102
135
99
98
155
182
125
108
74
95
125
95
128
127
85
149
115
87
76
89
108
144
99
165
95
49
95
133
81
54
77
149
100
113
177
98
118
151
139
103
123
136
102
134
92
102
136
115
100
137
101
123
125
95
83
74
108
97
102
95
139
128
147
134
165
124
173
156
90
99
139
105
131
74
101
95
143
103
54
120
108
146
122
105
105
115
69
49
103
112
78
129
102
95
102
124
81
104
113
139
103
105
121
66
147
102
54
127
107
92
54
128
149
125
119
132
99
96
104
133
140
102
81
173
122
102
110
146
116
116
97
78
150
116
112
145
91
90
103
144
157
125
108
102
139
138
133
110
100
119
122
119
170
82
151
95
179
120
131
106
74
127
128
118
121
108
124
95
144
148
106
128
146
116
122
90
49
81
125
106
149
97
131
54
99
150
143
200
137
93
124
93
177
102
105
105
101
54
102
108
144
120
118
84
117
179
131
149
69
90
54
125
123
128
128
110
140
129
119
106
54
107
95
149
132
160
121
175
100
104
148
102
120
168
113
66
129
118
186
108
110
96
108
144
146
115
136
163
107
113
138
74
145
116
103
156
127
93
129
103
49
112
128
81
127
149
123
133
120
96
54
128
81
82
102
131
111
99
129
54
135
69
108
88
91
108
129
139
87
142
131
126
143
102
99
122
148
67
112
87
98
49
133
103
133
97
152
108
166
112
103
181
130
133
147
124
119
113
54
87
140
68
152
128
103
78
148
123
146
115
117
98
118
120
129
158
146
97
100
129
100
79
126
136
80
121
97
131
144
177
114
139
85
147
121
93
68
100
131
146
127
103
170
132
114
120
144
136
114
68
172
105
94
113
67
140
134
89
125
129
115
135
91
143
81
59
93
118
125
186
76
158
117
61
151
82
161
94
98
106
106
155
81
177
139
172
87
123
173
130
139
125
138
95
142
74
135
81
163
115
95
54
100
128
202
102
143
74
106
133
154
146
127
108
104
124
170
102
155
135
108
143
105
131
129
144
111
119
81
132
109
92
112
95
123
74
93
73
131
105
148
140
98
132
121
87
104
142
122
100
102
105
122
68
81
158
77
100
135
93
97
74
116
110
104
78
153
102
85
108
125
118
89
135
93
81
135
156
111
83
131
102
95
103
131
133
153
54
108
162
86
133
137
118
102
108
120
116
133
123
103
93
102
59
150
147
148
138
146
126
135
163
106
119
54
114
149
129
136
105
78
54
127
124
131
71
108
118
120
108
120
87
133
74
54
80
138
95
94
147
78
99
111
106
128
139
101
97
101
99
105
119
113
54
122
106
83
150
97
54
93
107
54
99
124
143
81
74
85
82
124
95
112
95
78
123
77
119
128
162
111
116
158
107
157
106
125
93
85
190
134
108
124
102
98
105
131
113
118
105
110
125
122
61
185
90
81
140
103
105
102
54
131
95
180
76
131
101
198
105
54
133
187
134
113
59
77
200
139
108
125
81
144
108
104
109
125
132
140
129
54
86
77
83
108
54
79
103
87
83
124
105
123
54
129
179
91
131
84
155
134
126
96
112
59
96
145
125
108
108
102
131
123
95
88
121
128
102
102
104
135
113
102
117
177
67
119
82
86
117
141
136
114
98
100
113
106
96
101
135
149
54
124
89
90
164
54
143
165
54
158
65
95
115
146
140
137
105
102
148
152
106
177
134
73
74
108
59
102
54
61
179
127
74
112
118
122
119
89
95
103
61
72
102
126
71
181
136
149
72
139
49
109
98
98
135
110
105
103
109
92
129
108
81
112
49
102
116
95
96
103
86
161
106
66
131
49
84
130
148
78
49
82
127
133
116
133
173
152
105
151
106
105
141
182
142
54
143
153
144
107
147
110
148
74
95
80
103
80
156
108
148
54
144
85
154
115
159
96
145
126
98
139
138
117
93
200
160
114
142
108
100
108
94
89
85
128
107
205
150
124
139
95
97
105
94
116
138
74
144
133
118
95
112
147
146
98
54
113
85
122
74
98
128
143
91
107
169
87
96
111
153
150
104
54
77
115
88
142
137
49
114
158
78
54
98
98
77
95
148
90
144
135
68
116
122
108
134
117
115
54
81
82
142
98
139
142
54
124
122
112
107
110
93
139
98
122
103
125
86
103
142
124
146
78
112
106
74
146
127
54
105
145
124
98
125
123
109
157
125
119
86
158
104
93
73
137
115
95
93
76
98
97
145
107
101
90
104
140
83
207
122
127
105
131
98
140
177
112
131
103
124
74
114
127
111
158
109
97
121
148
148
102
157
85
144
150
87
106
146
146
102
78
129
93
77
110
108
141
59
105
84
85
120
127
107
164
102
105
177
130
148
177
117
118
144
108
81
97
69
108
97
104
145
162
95
148
119
108
128
127
94
113
86
134
167
102
113
111
83
135
87
93
142
152
215
125
179
158
108
100
142
129
159
152
103
82
90
116
146
150
91
95
73
108
122
113
105
98
123
131
54
67
118
139
108
98
87
145
120
137
84
97
85
118
153
127
158
148
110
182
98
155
145
107
82
128
103
133
96
137
133
142
131
169
80
119
108
75
113
100
81
147
110
162
81
108
124
143
118
163
125
117
68
178
148
116
108
172
69
91
97
122
133
122
117
54
109
128
172
144
161
118
106
102
61
105
141
102
135
114
104
159
67
184
102
218
88
148
108
93
170
102
158
78
119
129
87
108
107
115
91
103
152
95
146
104
121
103
139
69
152
135
131
96
134
82
139
145
95
87
94
97
96
139
59
54
73
95
133
147
148
160
100
125
153
143
80
86
49
147
54
54
128
108
148
129
101
124
156
107
102
125
108
98
130
92
121
135
130
106
82
146
99
110
149
98
99
136
67
136
149
98
118
123
76
148
108
139
129
162
124
49
81
109
81
89
144
147
135
118
71
164
158
118
123
120
132
214
131
93
143
119
140
93
118
135
131
102
135
105
107
134
74
161
130
109
96
146
128
85
54
122
143
138
99
54
116
139
77
119
129
118
144
126
102
96
105
104
126
153
85
139
54
157
74
90
149
76
95
86
108
127
91
90
193
113
127
115
112
107
78
122
110
108
105
145
81
164
123
155
123
83
97
106
108
67
54
93
175
112
124
95
126
114
92
74
59
131
135
107
117
81
105
79
141
67
122
102
172
103
146
95
108
131
133
135
112
87
102
98
131
84
130
119
77
116
109
83
144
127
67
90
144
61
87
89
121
126
95
147
114
133
131
85
168
83
88
127
165
124
116
125
132
128
106
150
152
131
120
165
171
81
95
108
49
93
135
153
45
145
129
129
69
87
140
122
135
133
134
143
93
168
78
112
122
137
93
168
124
76
148
54
61
110
108
120
101
97
102
81
54
129
116
135
122
100
162
133
106
74
174
103
97
170
115
92
49
127
91
128
80
128
150
98
168
158
98
72
111
80
88
120
75
132
59
107
148
144
121
144
149
108
110
162
87
152
73
116
137
76
134
89
76
98
157
125
102
77
148
129
101
104
112
194
165
114
145
126
102
96
141
136
149
107
159
116
118
76
113
129
107
104
110
59
149
111
129
98
170
114
102
85
133
87
117
103
108
108
77
149
81
123
89
77
98
131
113
114
120
109
90
145
108
135
149
134
139
125
79
139
113
114
128
104
78
166
139
109
119
106
59
106
130
131
95
95
89
132
108
109
100
205
120
125
135
111
133
92
112
59
101
131
81
119
59
102
137
123
116
105
92
117
90
113
112
156
69
144
98
108
132
129
172
54
142
127
91
85
119
113
106
102
135
108
127
139
130
81
152
118
54
175
101
140
83
142
90
112
93
123
128
54
77
54
96
137
49
129
177
102
120
113
101
139
95
106
110
177
94
83
141
155
96
117
105
143
54
108
152
105
133
132
86
98
150
131
151
130
119
93
128
103
116
83
95
102
102
74
125
80
134
98
85
54
102
129
49
113
177
129
125
101
90
81
123
138
158
54
95
95
145
61
113
127
119
115
67
68
104
173
106
126
113
100
149
101
114
104
169
96
109
140
153
54
81
140
106
135
77
127
61
109
110
134
107
86
107
170
96
101
180
144
107
84
54
115
77
84
90
123
83
105
99
98
122
102
120
93
107
95
90
132
130
128
155
95
100
91
143
111
93
103
125
158
122
97
146
177
129
130
106
124
122
155
119
118
130
125
90
114
118
77
108
127
95
112
115
108
114
151
162
112
115
103
158
108
125
144
148
102
107
78
99
123
104
137
113
95
114
140
92
103
173
108
177
134
87
133
112
62
97
148
154
62
142
90
153
125
108
113
113
97
87
116
150
103
139
95
120
127
96
115
108
147
82
127
68
59
118
113
121
54
96
125
145
114
158
172
148
133
116
120
96
108
107
83
108
143
108
133
89
54
135
144
124
128
128
116
117
105
148
141
112
135
132
190
132
130
90
127
146
110
101
120
105
149
124
80
141
121
59
98
112
158
141
116
133
137
102
190
111
97
129
158
115
135
134
145
140
98
128
108
133
105
137
104
105
113
109
143
131
120
143
101
133
123
101
67
113
135
138
109
146
85
141
125
83
87
69
126
92
94
98
98
120
98
128
125
129
61
111
59
121
110
147
143
131
105
144
101
96
102
125
136
124
96
165
98
103
141
124
97
78
123
90
107
74
45
177
103
96
118
99
122
115
116
114
106
157
160
112
90
138
79
102
149
112
83
108
105
160
90
144
123
110
92
174
112
135
84
109
138
164
123
126
111
132
83
86
83
122
129
140
156
81
129
106
141
134
172
90
158
104
151
113
118
164
98
156
77
102
129
135
156
155
139
95
113
102
87
166
74
117
184
122
95
145
161
142
143
81
161
125
129
119
133
129
82
95
79
121
164
145
74
112
90
89
133
111
152
108
117
128
108
84
111
116
49
116
105
135
90
132
81
134
160
135
103
98
107
106
160
158
138
102
100
103
74
153
98
101
118
161
108
81
113
133
84
150
59
54
173
118
113
87
138
77
79
96
110
67
104
113
85
108
113
194
128
133
94
77
81
151
131
70
113
103
70
131
92
86
127
121
113
54
149
168
135
140
116
103
103
125
126
132
153
90
108
154
105
123
108
113
103
108
115
175
105
149
138
106
148
96
105
146
112
134
81
131
143
54
106
137
124
93
95
162
67
105
119
108
132
132
125
142
106
87
113
59
108
140
98
110
133
98
77
131
200
119
71
142
54
104
162
118
49
103
111
135
87
134
102
120
67
77
82
95
147
119
135
148
110
128
77
134
158
90
143
95
184
74
107
94
145
87
168
129
122
123
101
84
133
119
140
129
112
133
138
165
98
81
76
105
107
108
104
177
54
65
154
102
102
93
153
146
146
120
100
90
145
116
110
118
132
102
59
143
160
162
138
143
94
95
101
81
160
125
54
148
98
98
114
146
94
140
112
101
101
122
136
153
78
117
54
106
69
156
121
146
145
103
132
164
121
101
82
115
93
98
87
98
134
135
93
133
110
108
82
49
143
95
122
130
122
49
103
123
133
82
182
139
147
149
158
128
125
90
125
81
88
113
102
68
120
137
140
117
122
101
101
83
135
97
77
177
91
124
97
116
154
144
144
102
139
93
134
112
126
143
116
129
97
125
83
119
100
108
158
133
135
77
54
98
72
111
77
77
104
110
131
54
112
122
123
121
120
214
80
107
61
102
114
95
92
149
133
177
92
127
104
116
157
79
137
173
128
96
106
108
107
160
142
110
68
160
85
93
98
115
135
145
123
159
166
125
67
87
78
116
54
144
104
142
152
120
102
128
107
138
120
149
102
120
128
168
81
142
77
127
93
146
128
131
80
76
107
77
99
148
127
67
81
148
114
122
121
90
161
131
91
109
131
83
69
90
106
108
191
95
132
110
153
78
120
165
113
134
102
131
95
163
102
110
145
88
109
120
67
69
148
91
107
90
128
89
147
108
102
103
85
103
170
122
99
158
116
98
130
148
129
97
108
120
103
131
188
96
67
97
158
77
107
85
54
138
102
95
117
93
135
121
124
139
105
54
49
145
108
75
84
133
120
107
67
111
91
49
143
177
168
109
151
103
87
198
95
98
102
168
156
77
136
142
120
83
119
61
128
146
76
116
112
74
118
74
162
98
54
91
87
103
98
106
163
136
76
93
104
127
54
102
109
131
81
119
144
92
154
82
106
93
87
136
104
125
85
156
150
119
76
102
125
144
148
139
137
90
54
96
118
102
90
79
111
78
102
136
120
128
81
131
77
158
117
168
177
149
83
49
81
134
89
137
145
95
106
97
132
130
109
61
154
142
99
61
118
137
74
124
94
123
121
112
133
114
113
153
106
164
113
122
49
149
165
79
98
183
97
119
154
54
128
173
122
76
95
106
76
92
115
148
77
82
136
100
129
148
165
95
61
104
101
104
144
171
102
98
103
113
79
166
125
92
67
96
110
102
126
97
156
97
103
125
87
102
97
134
81
113
74
162
113
161
106
49
95
130
156
95
87
106
143
91
68
166
75
105
73
100
103
99
132
107
90
91
49
143
93
70
133
107
54
118
103
82
87
158
95
204
129
90
140
108
148
104
113
102
54
118
81
54
92
124
73
127
163
141
94
127
87
121
129
71
125
98
90
111
136
162
135
128
159
130
91
117
67
128
80
154
54
95
80
104
97
96
177
108
92
146
77
107
173
113
96
99
134
143
91
125
79
76
59
129
145
97
106
129
150
98
88
67
102
94
83
54
115
85
119
157
65
108
92
129
96
135
123
82
129
101
74
140
175
92
169
124
91
112
123
122
113
116
115
131
138
109
101
91
132
59
61
120
144
143
111
167
59
102
102
138
124
142
90
188
144
122
142
45
115
142
82
148
105
103
111
218
129
139
151
151
99
100
95
163
103
150
124
102
74
130
87
122
100
117
89
159
101
108
54
103
93
59
106
103
49
61
101
148
100
95
122
103
108
77
150
125
102
54
85
88
102
144
167
102
106
95
147
122
106
136
154
97
84
131
126
144
99
135
112
138
131
132
104
133
97
144
115
97
134
74
87
133
127
131
103
168
95
177
108
118
87
149
163
90
139
191
95
180
98
87
99
95
54
146
74
61
132
103
95
140
95
97
133
113
118
120
106
131
159
78
49
88
113
114
135
114
144
93
121
163
86
124
75
128
158
95
105
111
115
101
117
96
77
116
103
118
89
126
120
90
125
93
106
113
90
90
133
127
106
153
95
117
104
117
88
150
99
134
127
103
112
89
131
138
190
128
131
102
129
113
104
90
82
147
146
144
131
158
59
113
133
125
135
101
144
135
124
127
149
139
113
54
106
91
90
108
143
98
145
154
112
122
133
115
111
54
103
104
121
116
68
49
125
113
106
112
142
133
153
138
91
54
120
81
54
102
108
105
101
109
132
112
67
119
105
128
122
108
59
49
78
82
163
107
49
67
126
130
102
98
92
59
90
85
113
109
80
110
140
59
87
95
72
125
160
179
119
105
193
106
189
72
98
111
108
127
113
111
87
144
105
54
128
126
98
76
150
95
149
100
166
105
138
117
93
126
107
93
82
115
162
122
179
127
118
116
81
108
141
118
110
117
102
77
74
119
105
90
87
95
95
110
128
101
135
143
157
116
130
103
108
62
103
120
112
146
125
139
114
115
81
109
161
127
108
108
88
94
87
132
81
61
77
175
99
96
127
156
54
146
181
102
119
148
49
98
147
96
117
102
167
113
214
54
61
102
93
122
161
85
95
112
107
107
143
114
197
85
117
97
128
111
133
88
101
130
103
141
135
94
54
54
163
85
122
81
96
113
158
89
132
144
54
129
117
112
75
77
89
89
103
79
140
167
139
160
96
127
104
85
111
82
95
81
131
49
148
54
161
106
77
140
110
76
99
167
128
193
122
85
98
107
118
113
113
102
98
103
142
70
97
54
148
95
49
134
144
138
116
144
157
172
132
115
123
122
108
78
113
85
95
102
79
142
139
61
76
122
123
120
98
133
108
133
151
101
87
168
74
175
74
119
78
95
80
81
104
132
102
139
97
110
109
80
102
133
125
128
108
154
67
108
115
113
126
126
78
159
168
102
128
49
166
67
118
125
67
105
106
90
73
143
98
54
96
103
91
141
89
132
143
126
112
98
101
135
119
101
107
59
108
96
140
89
152
89
59
158
115
107
107
111
112
88
119
80
146
87
103
102
138
144
105
126
116
81
102
112
75
138
118
114
105
158
108
110
83
151
148
136
79
98
91
110
148
95
159
115
77
54
90
105
146
125
119
148
151
146
103
141
102
54
153
102
91
102
124
130
89
101
90
75
108
79
124
168
77
74
140
122
128
129
158
54
188
95
105
108
112
158
161
74
113
140
130
79
160
54
102
54
54
84
140
130
108
95
88
138
122
159
128
139
165
106
108
127
102
135
145
82
90
133
54
108
140
98
93
106
95
133
61
111
163
49
192
118
152
180
93
136
77
126
122
104
59
126
175
189
158
120
89
98
135
99
59
145
143
113
162
98
80
126
140
115
152
76
135
115
121
125
155
99
93
144
145
108
108
93
163
98
107
122
102
115
117
138
130
106
54
93
125
128
98
169
147
136
161
95
87
102
76
122
61
139
153
76
54
123
98
54
103
140
150
186
119
146
77
107
114
122
86
77
131
131
117
74
132
111
85
117
91
125
128
116
49
82
175
97
96
122
90
54
129
135
98
127
80
102
155
122
103
135
114
122
59
116
111
130
108
167
54
68
116
108
186
102
112
122
98
74
107
54
112
127
90
102
115
95
119
147
80
70
78
103
100
100
117
98
76
92
96
143
90
81
141
92
120
119
133
144
85
146
113
144
144
97
77
103
157
49
98
140
134
115
129
79
123
98
128
148
154
141
120
130
80
49
91
110
117
108
112
101
92
103
174
125
83
103
100
84
158
49
49
126
54
129
149
152
112
92
98
96
98
139
92
90
127
85
158
129
107
108
112
148
122
146
101
109
127
89
118
169
113
98
120
112
105
139
92
125
102
149
133
144
129
145
126
118
136
54
116
90
159
118
168
159
98
101
93
102
128
74
103
74
129
194
98
116
111
103
130
102
122
148
76
85
113
172
113
105
80
144
96
115
133
151
116
69
127
105
150
83
112
119
143
148
128
80
97
68
142
145
133
111
131
103
90
85
108
158
96
78
118
122
150
123
135
124
129
130
95
105
105
90
87
94
148
94
138
103
121
143
98
120
95
102
78
111
74
108
54
103
103
88
91
125
132
143
116
122
68
104
126
125
98
76
116
114
87
124
105
154
128
135
115
194
139
143
121
116
126
81
83
125
125
148
140
131
103
142
118
157
108
103
130
85
108
114
81
139
121
129
93
89
81
131
108
115
142
115
62
98
152
115
113
85
100
145
105
137
92
137
124
109
119
108
130
93
70
141
74
103
110
49
92
118
162
100
128
76
111
127
145
129
97
107
93
54
102
103
74
175
97
115
116
128
141
86
156
84
98
80
153
131
87
54
146
59
101
128
74
110
93
107
74
113
76
131
110
145
59
132
79
113
122
148
99
131
129
102
117
142
130
81
103
104
147
105
84
149
159
129
124
88
102
128
83
114
97
97
102
54
54
120
105
109
151
121
133
124
130
117
119
99
127
98
81
147
54
112
200
86
109
96
169
117
132
89
125
122
138
96
110
67
92
93
105
134
95
87
101
74
122
54
131
98
153
144
92
103
97
113
54
54
86
102
119
130
49
162
106
167
45
129
74
137
125
110
115
84
112
108
132
108
121
169
54
115
190
59
54
69
121
134
126
99
141
59
68
123
150
98
135
164
77
153
134
96
79
142
133
87
83
89
76
95
119
87
122
102
123
141
110
136
92
161
177
108
110
109
164
81
89
163
163
113
138
126
126
110
96
81
88
175
119
154
81
91
137
93
94
109
120
95
98
83
142
97
109
103
74
82
102
127
77
111
105
85
146
78
85
111
91
122
122
54
126
151
54
102
107
127
98
54
78
117
147
106
122
179
90
141
118
76
100
83
144
132
123
103
150
109
99
118
98
93
83
113
82
74
177
49
111
179
103
82
140
156
191
139
115
76
106
141
102
123
54
130
132
102
67
78
85
78
102
113
104
100
184
98
77
84
174
125
95
159
84
95
202
87
90
111
107
119
94
104
108
96
138
131
85
54
131
97
135
105
103
110
141
133
109
146
148
59
164
180
79
124
143
67
146
139
102
212
81
97
173
114
123
135
95
131
108
84
125
131
102
165
144
131
84
102
103
135
141
95
128
182
191
54
67
128
125
89
115
117
110
118
129
111
74
148
111
136
121
95
105
115
88
105
140
127
139
105
175
77
149
95
162
117
108
108
145
93
69
103
133
78
107
116
135
158
83
196
125
129
76
76
183
157
132
68
90
121
136
188
91
127
164
131
98
80
106
67
59
137
108
127
150
118
112
125
102
97
116
234
67
105
113
100
109
95
108
98
103
145
151
120
89
104
157
103
141
121
114
111
158
168
108
75
131
130
131
125
104
103
87
119
117
113
135
104
132
127
117
113
89
121
102
106
146
61
120
177
120
84
108
113
90
144
108
153
79
127
80
121
74
130
93
144
97
87
152
112
54
134
83
102
125
146
150
97
118
113
112
94
123
97
45
99
100
129
105
167
156
97
93
80
141
107
90
111
102
177
87
120
98
114
103
77
144
90
102
106
123
180
127
122
149
128
121
123
172
126
111
144
133
94
99
92
108
49
100
125
95
95
119
120
95
74
147
130
109
77
54
132
130
151
131
148
77
54
76
123
126
133
108
54
90
80
69
81
125
98
115
106
137
98
110
76
54
118
128
96
120
131
134
112
91
108
99
149
137
102
177
99
157
77
107
54
150
106
81
109
78
117
125
122
114
131
138
168
108
167
152
102
86
125
134
141
102
79
84
78
77
139
128
90
95
57
101
115
128
108
121
113
153
131
101
129
148
108
83
54
127
117
101
102
99
161
83
95
130
87
141
144
103
115
98
81
111
49
108
120
136
139
62
116
120
91
96
141
133
151
95
117
54
115
105
118
138
155
67
71
98
102
129
95
94
118
98
109
144
143
67
102
107
98
183
145
72
134
165
95
89
49
151
147
133
96
133
103
134
145
98
65
146
94
174
99
105
98
148
125
113
191
120
132
138
137
94
106
122
131
165
49
185
135
128
164
147
99
68
98
148
108
113
106
108
120
59
107
82
123
139
96
104
149
99
89
125
114
146
81
135
115
123
111
120
92
83
59
95
106
120
121
83
115
118
142
122
91
114
122
81
82
54
186
139
102
133
110
104
107
90
83
108
106
102
165
82
108
150
139
96
95
125
147
133
105
117
114
97
129
169
108
59
120
144
140
103
103
106
59
119
140
113
105
113
101
82
106
156
54
120
111
54
94
114
146
81
150
158
102
116
123
49
148
143
134
131
184
129
61
154
148
95
116
124
153
59
139
149
108
77
54
146
98
207
146
124
125
117
105
158
140
70
200
92
102
93
151
107
115
133
150
129
83
82
146
81
244
102
161
111
87
126
88
77
149
81
130
49
105
177
97
119
96
54
109
131
86
125
147
91
102
120
82
102
92
102
124
139
113
137
126
156
154
85
114
162
90
113
128
120
143
124
147
116
136
128
110
107
143
67
82
146
102
115
95
103
164
125
116
112
146
112
54
101
148
132
199
159
98
105
123
131
158
118
125
105
92
156
114
135
127
147
100
144
104
102
117
92
131
103
149
154
106
101
130
103
59
155
170
120
140
125
109
105
88
109
123
67
78
111
151
148
125
123
125
117
148
169
95
112
138
105
102
128
121
102
109
123
102
131
188
108
105
104
130
124
132
94
139
134
142
139
85
105
177
84
133
74
151
107
114
150
83
78
122
128
132
105
140
54
59
143
109
92
118
76
140
105
136
95
77
150
67
118
54
123
122
142
112
117
98
54
142
168
154
102
103
143
131
113
128
89
95
129
145
77
110
98
104
49
129
54
101
138
192
144
59
105
150
119
49
123
124
119
54
145
116
138
95
102
78
54
79
134
93
112
207
102
81
98
81
158
133
78
101
154
106
103
93
118
61
78
101
128
102
116
108
167
127
95
119
149
162
133
54
174
122
98
124
103
79
127
140
180
150
116
152
98
135
125
102
123
54
72
112
78
95
112
131
101
84
103
127
77
100
167
83
128
150
68
165
127
94
108
110
54
77
108
143
148
108
87
96
106
84
113
102
54
173
130
118
94
104
134
112
132
115
119
106
84
108
134
111
104
87
156
151
74
87
123
123
87
123
168
54
74
91
100
127
115
108
124
105
114
67
104
145
95
91
109
122
90
120
68
103
93
126
122
143
111
127
127
80
108
98
74
122
139
114
98
112
54
49
54
164
170
167
133
101
74
178
77
102
99
147
108
173
146
147
146
49
112
113
129
126
145
133
54
77
141
78
170
154
100
89
145
102
125
126
91
54
143
87
92
87
119
105
97
150
90
49
145
98
59
116
130
132
135
85
102
120
107
179
102
141
120
81
103
145
98
78
91
77
116
103
81
104
107
76
157
133
69
141
123
133
145
98
140
153
76
82
100
133
120
128
128
140
54
145
102
145
132
107
119
113
83
78
100
94
113
81
140
97
54
145
109
74
91
139
168
76
59
124
90
120
133
128
107
144
106
81
106
131
152
77
105
115
117
98
98
135
83
59
120
106
125
108
143
95
127
66
92
98
97
104
101
114
141
147
91
110
90
98
128
113
98
112
98
131
97
142
85
133
105
123
103
106
157
49
138
102
114
108
176
200
145
177
133
147
135
54
127
140
49
130
90
114
146
124
106
121
59
54
159
102
87
111
78
128
125
95
102
111
112
108
118
99
78
102
112
124
105
163
102
83
77
115
78
97
87
102
135
122
76
100
124
82
148
106
123
133
104
110
125
54
54
182
180
113
83
114
144
89
54
147
129
82
128
123
81
127
85
77
95
125
172
107
126
115
125
95
143
101
120
74
74
129
129
117
151
125
122
116
97
146
126
81
135
70
133
59
147
76
93
73
133
81
137
125
129
107
49
110
103
54
106
80
54
113
54
95
140
77
82
93
131
123
102
90
98
67
115
135
107
125
105
85
114
108
146
146
135
123
95
77
54
132
114
74
132
78
90
93
100
113
95
147
171
105
146
108
98
102
177
59
169
111
139
131
119
122
169
98
108
110
146
177
120
49
164
143
81
101
146
95
116
97
134
143
107
89
127
171
124
125
107
178
111
98
90
161
106
98
106
113
131
125
162
89
141
119
112
54
110
96
126
78
87
152
162
101
152
108
139
90
191
91
81
108
114
103
102
112
129
106
49
137
61
82
108
54
76
106
137
126
157
126
54
143
157
88
89
102
81
188
88
131
112
144
146
125
98
130
81
137
106
160
110
106
89
81
125
54
149
122
76
125
119
120
148
105
103
139
96
74
134
94
150
109
104
109
143
109
108
80
95
102
129
81
59
121
107
102
126
143
108
128
105
83
85
87
200
97
54
140
194
99
130
104
140
165
103
101
103
85
113
118
98
154
116
133
145
98
112
182
108
93
145
49
120
112
74
124
57
62
132
176
147
104
87
158
110
133
109
148
68
102
122
96
107
98
106
95
61
103
146
153
113
80
104
156
100
97
86
93
120
144
134
126
114
149
145
97
74
129
102
54
109
142
115
131
108
101
109
78
131
136
137
106
116
129
84
69
125
115
128
146
129
101
171
120
127
103
81
100
105
54
98
95
200
192
85
113
88
127
125
74
164
81
168
118
125
193
54
124
125
110
180
109
190
132
107
80
99
153
132
135
137
108
80
54
100
133
148
84
148
95
138
89
133
88
102
155
141
127
93
126
123
115
141
96
94
127
83
123
189
129
78
154
83
102
54
120
153
84
137
158
135
124
105
99
137
78
114
124
94
103
149
168
176
149
78
54
76
97
90
98
129
70
115
78
139
125
175
115
138
91
108
143
87
85
49
149
108
142
101
91
92
154
54
101
96
128
133
95
113
106
140
76
104
189
108
123
87
112
177
161
102
108
119
100
110
77
123
54
97
102
120
115
88
173
117
115
109
112
93
106
146
102
180
85
74
120
108
93
106
95
134
148
129
95
125
49
74
173
108
102
138
93
102
59
96
111
78
103
177
108
117
93
84
136
154
95
112
159
109
106
160
106
141
59
137
54
59
180
131
122
103
107
102
79
129
151
125
125
124
153
129
102
117
119
148
158
108
96
164
146
146
97
97
180
98
102
160
115
165
176
140
87
143
124
94
133
182
49
113
144
133
106
176
159
113
164
102
121
125
128
148
109
154
108
148
87
125
54
116
113
128
132
121
149
116
83
85
112
115
175
92
54
107
137
110
102
90
102
126
137
102
111
154
91
83
121
144
82
113
120
49
98
180
122
103
54
100
108
157
54
98
54
83
111
121
102
179
102
102
118
131
111
157
131
76
92
106
61
59
111
133
116
98
54
136
132
130
200
106
127
54
199
110
117
131
102
105
102
120
114
108
133
186
115
103
108
81
135
69
78
54
98
173
146
112
167
95
127
124
168
88
89
105
90
148
133
104
84
123
160
98
148
98
95
156
134
141
93
77
108
96
100
95
54
150
147
127
97
135
103
117
114
173
98
54
125
85
112
128
191
81
108
118
77
83
91
129
141
146
147
141
140
154
106
116
108
90
125
98
83
154
113
86
98
108
169
121
59
138
95
103
111
92
82
163
107
133
139
123
113
125
170
82
105
130
160
90
130
140
114
97
167
139
102
157
117
95
77
193
112
178
128
87
88
138
93
133
78
54
135
76
104
102
54
171
144
115
132
69
140
143
126
106
157
148
123
102
114
134
146
119
103
125
93
200
194
158
81
102
102
194
121
143
142
120
102
152
169
98
135
86
59
112
125
126
103
107
98
74
125
128
125
98
148
90
85
86
110
81
73
77
119
148
132
148
101
177
81
45
124
104
107
54
176
129
167
177
54
98
99
134
123
118
91
121
173
49
98
73
149
158
128
128
94
81
77
121
146
108
172
109
121
54
110
107
90
92
147
108
106
99
131
148
76
113
125
98
126
49
139
92
134
120
128
49
94
168
140
123
90
137
144
91
128
108
105
100
131
73
108
81
121
178
143
105
108
99
91
108
88
54
130
92
78
138
163
106
118
155
186
101
116
118
89
143
97
130
168
105
80
190
141
102
133
74
100
148
124
125
90
67
186
101
106
190
167
138
118
90
130
91
118
135
137
83
128
72
104
139
99
166
188
74
92
164
136
110
135
116
118
77
166
145
143
149
143
191
100
117
148
82
113
126
54
139
116
118
120
98
113
49
154
87
181
54
93
98
186
104
122
77
135
90
120
54
159
144
128
99
108
173
82
80
110
103
131
125
108
122
92
96
102
98
88
153
120
90
83
95
98
92
177
49
82
117
98
144
96
115
131
191
127
124
144
87
122
108
54
125
54
127
112
132
110
95
77
97
132
109
87
143
102
151
81
145
74
116
115
141
54
100
93
144
121
116
69
87
136
123
97
142
108
90
123
139
133
145
133
129
111
147
110
95
116
125
69
95
98
140
94
102
200
131
141
129
54
111
124
133
67
103
153
135
109
103
108
54
100
97
149
134
87
106
101
95
97
89
98
163
87
135
102
114
90
87
153
102
123
130
49
141
97
148
116
130
144
97
102
203
135
141
107
49
135
102
154
112
176
113
81
54
109
143
95
111
195
133
82
98
149
127
61
148
143
86
81
128
95
93
83
68
118
83
110
151
113
129
143
103
97
122
61
116
127
93
61
49
102
150
141
90
94
135
143
124
78
142
82
108
132
149
102
116
148
182
99
108
109
119
149
80
81
61
120
173
114
108
112
145
68
77
141
106
90
138
110
117
125
127
77
128
97
148
107
103
107
145
132
127
103
155
116
103
89
148
129
102
107
101
119
102
159
112
122
139
95
61
82
108
90
139
101
110
102
110
111
68
100
149
135
162
113
137
102
82
125
87
144
124
68
146
123
95
83
111
124
124
76
163
101
108
117
119
171
152
96
123
68
101
125
199
171
105
103
110
144
98
136
87
81
145
125
135
135
74
116
98
113
95
130
145
101
82
133
119
125
143
87
81
78
99
103
106
96
118
76
49
171
102
133
124
148
133
81
164
120
85
167
108
120
101
142
83
141
118
138
85
105
82
82
108
115
86
145
81
143
90
77
78
106
97
94
81
96
113
108
128
93
95
122
81
91
81
132
87
84
113
89
102
116
120
101
67
88
97
110
153
182
121
142
102
54
129
95
103
83
162
95
166
97
86
87
132
97
140
122
149
128
107
114
158
100
146
140
120
95
155
94
158
120
113
62
107
143
121
99
157
113
125
108
145
112
91
130
153
73
146
129
101
150
115
113
113
54
102
86
76
140
235
95
102
108
105
100
81
102
133
123
74
108
101
139
145
77
149
104
54
137
119
103
107
104
99
116
81
125
105
132
108
158
147
107
151
129
100
74
155
74
149
122
120
146
109
91
123
134
125
177
73
98
110
151
116
120
76
54
144
177
49
86
76
139
152
97
142
81
65
87
107
143
92
119
102
109
144
106
158
102
112
92
103
131
123
153
61
106
102
102
92
81
126
113
77
96
95
102
140
112
153
108
122
98
145
113
153
133
135
54
135
96
110
90
167
130
67
105
148
76
61
113
95
180
90
157
97
168
114
54
98
139
109
152
102
102
98
145
113
106
98
133
80
186
133
115
105
154
130
101
83
95
156
124
137
98
115
96
117
93
139
97
110
144
69
128
54
54
149
99
91
90
180
129
172
59
108
98
131
106
54
119
130
188
106
61
139
133
106
134
172
162
115
110
141
97
188
133
139
92
108
82
85
148
133
95
122
145
89
125
120
140
74
138
156
144
150
83
84
129
116
93
103
149
120
164
135
86
92
143
82
96
81
49
159
138
100
128
74
97
78
113
98
95
94
109
129
160
177
141
130
124
126
125
155
127
113
149
139
134
106
123
90
102
145
195
151
102
133
103
185
95
146
97
101
102
122
101
144
54
73
135
116
101
125
159
67
106
49
146
116
128
93
106
121
105
164
131
149
137
155
93
144
147
159
100
179
49
121
125
77
109
106
128
105
107
90
103
139
202
122
45
112
72
100
119
103
148
138
108
182
129
83
107
84
113
135
74
150
68
110
123
108
144
165
128
137
137
118
92
77
150
148
74
78
157
80
136
118
123
79
105
115
98
128
103
54
108
146
165
80
129
63
133
107
79
112
99
49
54
144
77
161
54
106
105
85
95
54
101
96
136
103
148
140
87
92
107
108
105
134
93
148
104
111
116
104
98
145
134
125
78
113
89
106
156
100
108
132
95
108
134
100
54
54
148
102
133
83
168
108
125
167
49
61
138
82
134
146
142
140
116
144
118
156
159
182
109
93
59
105
113
131
81
106
136
123
67
180
102
100
113
167
160
110
113
193
177
49
180
74
108
129
129
187
143
110
121
108
86
122
113
131
102
59
159
99
162
54
117
68
81
104
132
124
130
124
105
49
54
135
74
81
119
146
85
101
113
107
102
139
127
162
129
96
91
115
81
97
140
127
93
157
87
153
128
145
81
146
122
103
117
153
103
89
105
76
120
82
141
123
94
162
144
76
98
133
105
99
103
74
127
93
85
79
85
166
113
139
127
101
77
169
127
95
134
138
122
107
105
154
145
108
153
69
127
108
107
90
107
142
106
131
132
59
108
113
127
54
81
98
132
138
107
128
110
135
143
179
136
93
96
141
154
70
150
81
157
126
131
143
173
81
95
144
98
83
81
95
149
84
94
83
128
83
69
131
121
49
68
54
103
123
129
122
119
139
143
120
110
54
140
99
141
124
110
143
101
67
152
158
116
144
54
95
110
135
141
100
101
133
156
115
102
133
81
95
98
87
95
115
148
102
82
96
153
128
81
59
139
159
84
74
148
143
108
49
94
147
85
150
113
119
123
160
121
87
112
145
134
151
98
113
150
124
102
94
113
150
140
146
108
95
146
199
101
145
118
106
163
125
95
118
93
129
134
151
125
95
74
78
112
105
138
98
125
117
81
155
131
59
142
98
119
105
123
95
98
133
101
112
103
95
135
123
119
87
85
104
108
102
54
115
144
107
81
161
59
54
179
144
112
156
113
118
110
126
133
83
81
145
123
115
143
78
131
102
74
125
105
103
126
137
90
70
133
98
172
124
124
74
121
144
165
89
99
123
116
82
100
99
105
118
102
123
162
49
102
127
74
142
115
127
119
148
123
87
88
126
133
94
119
127
105
97
158
150
142
76
77
102
133
139
132
105
144
152
200
148
172
101
77
93
172
129
127
76
107
165
121
105
130
98
54
99
133
134
93
160
108
118
122
146
129
135
81
147
106
139
125
59
109
108
97
185
103
103
115
61
133
94
99
135
169
103
102
110
118
54
102
157
97
73
92
49
144
119
125
112
155
114
107
107
136
107
158
115
115
102
146
54
91
147
106
137
99
137
112
106
119
124
169
106
119
169
121
158
123
180
98
54
151
120
54
103
169
110
108
113
102
120
54
102
101
113
124
133
106
54
82
81
127
76
124
123
111
128
110
125
120
102
83
111
104
81
108
148
110
166
137
99
99
134
122
118
125
103
98
68
49
86
126
126
146
74
128
97
152
74
135
99
146
127
127
132
125
100
97
100
125
133
144
147
101
108
115
120
103
108
77
111
98
74
81
93
102
87
81
110
114
128
94
154
111
149
129
150
191
118
93
108
124
103
114
114
112
163
67
127
77
115
135
106
107
49
151
74
133
120
108
128
54
78
82
131
149
81
136
103
129
108
188
176
95
59
93
134
77
121
141
94
90
121
154
106
135
90
119
125
67
96
104
93
146
101
103
91
143
68
81
105
128
136
125
109
129
165
156
107
83
115
130
89
98
120
80
142
54
122
109
145
115
111
135
118
73
166
177
123
77
137
54
104
112
111
177
117
99
81
81
167
146
93
104
143
153
118
125
82
88
119
120
148
54
102
127
160
165
129
103
83
165
104
109
115
138
135
101
103
95
81
167
157
140
136
128
139
155
118
107
177
128
104
127
87
104
99
90
98
137
147
95
59
130
93
130
104
76
151
78
148
105
117
81
107
118
98
105
93
118
122
129
102
74
104
133
92
158
157
101
133
83
123
93
183
115
114
103
108
125
144
130
143
110
54
125
107
49
113
90
82
98
125
143
67
93
150
84
141
161
143
111
161
107
104
103
120
113
158
104
145
126
160
108
103
93
135
143
158
164
54
97
77
49
123
114
103
117
129
154
102
129
100
118
131
87
129
153
105
136
85
128
69
82
54
77
95
110
136
125
82
79
54
104
119
93
83
83
104
102
148
145
179
49
74
86
162
95
102
112
88
102
164
110
103
106
106
101
133
59
133
108
130
127
148
128
74
160
69
140
92
162
110
80
83
61
131
131
124
105
95
165
155
92
133
93
92
59
54
102
132
95
81
108
116
155
102
159
117
81
93
159
117
170
91
133
118
137
102
102
115
143
104
132
49
73
179
94
143
98
83
138
127
116
141
138
127
177
146
145
179
82
54
97
108
145
131
102
122
116
149
126
158
118
158
168
88
54
92
54
158
87
132
143
67
98
54
165
67
77
119
113
144
139
101
143
110
138
140
116
126
140
115
106
125
117
135
159
156
151
124
98
95
87
132
142
82
148
85
54
136
54
154
82
113
98
132
109
54
159
143
139
105
98
124
76
108
49
104
65
148
144
113
102
127
102
115
131
145
131
81
123
131
125
77
102
152
110
119
128
128
105
148
142
140
91
121
119
69
132
155
106
106
142
95
100
115
76
95
127
95
74
102
117
141
138
179
122
99
92
54
158
99
200
133
119
128
143
94
179
138
130
128
147
124
136
93
114
93
49
126
112
113
97
129
126
93
80
123
128
175
115
145
83
97
133
200
98
108
94
157
120
128
105
81
131
103
150
74
106
115
127
98
138
113
103
95
152
98
159
102
81
123
105
122
59
102
83
84
74
81
125
88
113
105
95
115
130
133
117
108
141
54
122
108
69
118
156
80
88
149
121
127
98
94
74
54
104
120
102
87
128
102
100
98
127
131
82
74
103
123
95
200
152
85
77
185
148
84
128
125
92
145
77
86
123
149
68
132
101
177
144
119
146
140
143
98
102
74
128
118
69
128
93
95
102
194
102
106
116
49
116
74
137
54
98
98
91
123
150
88
131
157
105
139
89
171
49
105
103
121
146
76
124
128
127
95
101
116
115
112
95
77
59
85
159
147
96
167
93
132
111
139
137
161
145
161
128
122
128
128
128
150
119
125
105
108
85
131
105
95
149
132
80
129
159
98
74
130
132
144
160
128
116
108
96
118
195
59
83
68
123
118
138
123
107
131
95
87
176
136
145
108
54
87
74
84
144
138
123
138
152
113
125
182
112
122
131
95
120
136
74
128
78
118
129
164
133
113
106
98
148
97
90
134
145
125
88
49
86
185
133
133
91
82
108
123
122
98
149
147
144
49
113
158
143
112
151
102
113
87
179
143
158
137
80
132
74
92
113
140
105
108
95
108
81
122
118
98
98
95
113
141
142
83
94
108
115
115
108
102
100
134
110
180
83
128
76
157
75
125
59
161
126
156
94
112
98
177
102
81
54
104
135
80
117
108
92
110
67
112
138
54
122
113
131
130
126
153
115
113
118
102
131
86
146
81
105
103
79
100
83
95
115
146
79
124
76
103
136
135
115
74
185
133
87
116
116
145
90
91
90
105
135
68
140
107
120
81
54
81
97
132
130
148
90
134
126
130
148
85
102
129
132
78
159
95
96
137
106
117
129
116
77
104
114
83
142
153
67
112
74
103
160
128
102
129
105
108
106
103
96
131
120
96
74
117
151
152
93
120
154
115
171
113
82
81
77
167
132
100
102
88
134
156
128
125
69
72
123
97
139
102
156
108
139
85
160
109
97
108
129
45
138
140
125
140
89
120
87
108
122
143
90
99
131
98
127
49
147
129
138
91
116
156
84
81
153
82
114
127
109
158
106
105
114
54
126
78
119
164
84
148
97
103
118
120
114
96
62
131
157
85
102
112
139
119
79
78
119
82
133
135
128
102
108
100
147
61
54
144
89
54
156
142
59
95
119
98
113
97
90
124
105
86
148
102
93
154
97
124
152
54
49
99
111
49
49
128
143
67
163
97
147
133
108
90
148
115
97
148
105
105
54
114
165
77
156
108
97
109
123
104
163
121
150
98
98
84
90
135
59
145
105
101
90
65
140
181
138
95
80
109
137
130
92
98
76
93
87
108
119
141
120
131
150
158
135
95
90
164
115
126
77
111
97
82
150
140
94
93
95
54
114
76
118
83
76
113
54
80
74
126
96
85
127
102
49
177
122
132
135
147
78
180
129
160
91
103
54
69
115
111
100
95
121
93
156
163
113
82
145
54
102
81
83
81
139
83
131
86
103
69
177
143
113
118
80
136
74
125
131
102
110
111
124
155
83
54
108
65
108
160
125
122
54
90
98
104
97
93
148
111
98
96
143
161
131
121
159
95
131
119
130
124
140
95
142
127
93
106
83
120
107
122
123
110
132
98
127
123
186
113
129
119
142
109
102
101
122
188
101
107
148
128
120
102
54
189
115
95
90
124
92
143
99
180
95
227
102
76
126
122
111
148
123
113
139
84
125
108
95
130
108
128
109
106
105
127
124
95
139
103
94
76
107
102
150
137
92
90
152
92
122
120
157
103
113
87
120
168
113
105
120
141
102
98
128
120
140
110
81
143
105
95
98
152
81
151
117
107
140
122
135
162
146
98
85
107
125
126
177
59
123
169
118
105
105
165
102
122
69
76
81
81
169
185
100
96
83
142
95
113
71
134
158
54
107
146
110
122
114
120
98
177
120
179
83
100
120
85
74
49
122
116
113
125
106
100
127
120
123
105
128
137
176
98
67
85
102
126
54
133
135
129
122
123
148
103
98
102
132
96
87
137
111
114
133
90
126
98
136
138
139
120
54
128
96
147
137
98
168
93
161
144
95
138
76
111
177
140
152
118
129
113
117
113
54
102
76
119
93
107
132
133
120
93
116
49
42
77
126
109
97
114
140
105
96
102
140
120
101
122
172
77
159
97
110
49
179
99
108
138
150
100
122
117
164
113
116
96
108
127
123
67
98
77
102
106
69
126
92
120
122
87
102
81
81
186
97
128
120
114
82
98
59
102
54
130
91
114
74
158
102
122
102
86
61
103
122
145
131
139
143
90
125
103
54
128
115
140
104
143
136
153
130
129
143
82
119
54
112
116
102
82
125
102
129
122
98
78
83
78
112
125
108
119
129
135
82
182
91
127
108
49
59
146
116
141
104
154
101
173
100
109
130
145
141
95
182
96
128
182
106
98
102
111
122
106
132
85
120
107
80
96
125
113
140
163
54
182
126
131
122
69
158
87
121
95
77
108
87
127
157
103
123
68
122
113
102
128
113
59
54
156
79
89
105
108
162
103
141
176
102
154
108
104
190
158
113
59
105
114
132
54
95
111
74
96
122
69
102
81
133
123
80
110
139
95
113
116
68
182
145
167
107
91
146
105
95
127
57
92
177
93
59
115
126
125
92
131
54
102
125
81
123
135
144
139
131
61
115
122
141
108
61
125
80
89
142
122
49
82
108
128
54
106
119
93
78
157
107
180
95
133
101
122
148
129
98
126
161
144
66
87
147
54
102
103
98
145
113
125
108
92
123
100
87
86
81
112
127
98
118
117
107
143
126
161
139
149
97
76
129
139
111
98
139
93
102
97
82
100
101
59
100
91
93
91
140
95
76
114
113
103
93
158
168
98
104
109
106
85
131
126
137
141
83
125
137
111
157
77
117
61
131
150
138
153
54
127
96
73
160
158
143
102
49
136
94
166
78
155
150
67
126
168
106
151
173
100
158
149
141
118
84
134
126
87
128
116
162
167
87
54
148
78
96
189
108
105
148
129
177
80
108
128
118
154
112
54
98
81
83
93
108
118
113
120
123
186
90
99
85
89
124
131
82
79
177
159
83
135
103
82
68
87
103
95
82
135
141
82
91
116
145
92
95
124
113
59
158
139
131
74
138
127
131
105
98
132
121
133
102
108
105
139
141
102
76
96
81
147
98
98
111
142
97
93
192
120
116
68
149
131
133
130
87
109
138
165
143
96
89
96
105
177
113
109
131
103
155
141
97
54
127
140
128
122
103
108
144
102
141
94
131
96
139
115
127
163
135
105
162
107
49
69
148
93
160
118
149
54
59
125
90
134
108
102
124
102
144
108
179
115
59
84
49
118
102
81
78
138
132
125
93
168
67
102
81
108
54
108
112
95
115
105
127
102
177
101
159
186
105
113
117
102
144
122
94
150
107
134
148
59
120
181
118
82
200
78
132
115
148
97
77
103
98
103
143
96
128
140
115
150
90
121
93
113
99
154
139
112
152
186
103
122
99
54
92
98
151
49
54
95
98
132
111
85
118
127
67
95
125
148
138
106
164
108
96
162
101
91
90
147
115
108
98
102
118
98
95
108
117
67
115
74
108
144
103
107
118
54
140
74
108
130
135
91
163
101
104
129
145
77
82
165
146
54
139
104
122
145
129
144
114
129
49
132
125
120
90
112
102
150
96
154
97
78
158
153
98
98
151
93
148
104
113
113
137
140
109
106
97
89
129
102
159
116
118
105
85
90
54
107
134
135
156
123
119
102
49
113
156
133
89
98
98
135
117
165
156
142
106
123
87
133
152
157
154
160
81
119
93
93
101
108
103
86
125
133
54
68
158
116
124
81
94
54
123
91
111
106
99
125
103
96
73
124
67
70
144
97
81
77
77
87
100
97
59
139
81
128
108
76
110
105
87
84
83
118
115
134
95
135
84
145
164
131
135
77
69
100
80
103
127
95
110
126
97
114
130
81
110
125
83
115
129
142
122
140
117
160
112
166
160
59
198
59
98
81
134
110
123
148
111
115
103
160
123
77
151
105
91
80
81
115
124
108
113
95
105
118
74
113
129
117
125
133
106
127
100
107
73
179
118
168
118
77
102
80
102
100
142
148
125
103
159
76
74
109
90
110
135
125
78
82
128
142
137
200
190
130
113
122
113
95
93
95
112
179
92
132
96
123
81
82
115
122
81
131
88
160
49
129
75
78
118
89
109
86
164
90
125
143
109
123
123
98
132
133
150
83
98
95
61
113
119
131
98
96
120
139
119
144
125
136
138
143
108
54
107
135
136
80
135
69
54
95
84
105
173
156
49
135
72
170
77
135
82
77
144
67
79
163
96
67
143
54
54
102
103
100
114
113
116
105
135
119
96
100
158
157
120
74
100
148
118
158
67
89
127
106
103
199
92
112
118
98
112
137
79
127
101
106
123
94
103
148
235
81
102
139
88
74
112
95
133
106
85
76
133
114
146
87
82
122
162
95
99
103
86
59
140
172
78
161
155
93
139
158
137
157
139
156
118
91
109
200
87
108
118
133
164
127
180
186
118
119
112
143
153
98
136
105
142
165
179
108
113
108
54
113
118
104
121
96
168
127
85
123
103
122
103
107
54
158
130
155
170
105
109
123
102
111
90
106
85
146
139
123
105
92
104
143
113
78
200
99
109
85
152
54
81
106
73
205
146
144
116
111
117
162
110
155
113
123
119
123
123
110
95
94
157
154
95
120
162
76
76
141
111
101
152
119
95
143
122
118
99
137
77
112
141
123
168
113
99
81
119
95
98
76
54
106
139
114
118
106
108
94
129
100
105
101
82
124
120
137
176
115
160
98
108
105
102
77
78
119
89
89
95
105
69
161
172
121
129
106
127
133
76
170
159
109
135
111
160
144
128
172
106
160
65
87
162
140
88
49
97
132
68
123
141
170
110
95
178
119
138
147
136
147
94
127
164
102
95
133
120
118
127
134
54
95
168
136
59
138
120
93
102
133
106
122
117
116
165
69
124
140
108
120
123
122
168
95
131
115
122
161
79
129
76
78
95
131
95
81
128
98
161
54
135
125
101
128
108
98
54
130
125
129
143
128
145
103
108
138
120
108
137
116
98
105
158
135
137
109
112
127
131
157
110
97
76
54
160
164
128
54
54
104
130
95
113
95
105
127
93
107
143
87
158
127
102
118
98
110
90
104
140
170
148
80
145
111
131
102
181
87
115
102
122
92
125
154
98
102
119
108
78
81
127
65
104
132
74
49
110
167
128
136
107
148
54
86
143
96
93
144
59
119
144
101
139
164
127
120
162
96
131
104
108
86
96
132
143
54
145
145
105
125
117
83
149
102
97
139
146
72
103
167
163
160
148
126
76
90
97
81
103
124
82
74
139
103
148
133
106
140
68
108
123
125
120
153
91
128
81
120
177
122
124
186
158
83
161
144
78
94
131
114
180
103
132
103
143
159
143
61
97
144
108
108
127
54
81
130
177
119
167
92
105
54
109
119
103
132
82
114
120
125
96
100
125
148
106
54
81
127
95
108
105
67
157
101
89
81
127
79
166
68
148
90
81
126
141
118
95
95
143
111
135
87
109
98
103
93
76
126
156
164
125
147
102
116
158
124
141
110
170
87
161
54
95
121
159
117
171
113
116
136
82
97
140
93
164
124
108
123
119
95
54
115
144
106
144
90
103
114
128
137
146
81
83
121
123
95
100
70
142
102
148
121
99
145
49
131
101
102
100
103
96
130
149
118
105
115
157
100
76
135
101
103
83
110
120
78
116
82
105
133
54
110
108
99
115
93
108
118
92
95
105
124
153
90
112
95
135
115
165
116
156
145
148
49
114
98
87
114
124
112
85
143
102
61
83
77
74
119
108
108
80
109
133
54
105
123
68
151
134
76
115
134
129
126
113
159
108
123
105
49
82
121
90
133
54
144
139
74
128
167
166
126
54
128
83
84
177
113
131
100
97
163
87
97
82
114
143
133
94
131
94
131
78
96
118
159
125
98
141
151
133
129
54
125
108
91
76
124
116
96
185
180
134
106
80
95
144
112
145
133
151
109
49
115
84
123
139
76
112
212
81
54
189
59
65
95
98
140
131
116
115
54
127
113
131
149
130
85
129
89
54
132
82
108
54
93
95
94
54
118
103
103
98
106
138
140
83
172
152
74
127
68
106
146
136
95
113
200
126
148
108
113
82
73
113
114
102
104
129
61
125
68
89
166
119
128
133
85
102
102
63
97
105
122
132
150
54
112
97
102
151
143
134
182
81
100
116
119
115
105
97
98
175
143
103
103
91
109
84
95
104
116
54
87
125
105
161
131
90
155
115
103
67
135
54
105
91
105
117
112
95
138
74
105
124
167
81
120
133
165
83
104
133
178
102
110
140
166
59
130
131
105
54
106
208
104
103
135
119
104
116
148
138
88
134
159
142
49
133
49
100
123
202
107
148
77
101
112
135
116
77
108
159
80
137
54
177
98
148
81
139
113
180
115
92
108
134
156
138
85
101
127
170
116
96
111
119
165
69
95
113
146
85
120
104
126
119
158
99
148
76
99
94
96
87
104
121
87
125
103
107
102
206
110
147
158
97
112
90
115
120
93
163
122
108
141
123
128
89
98
108
153
89
102
157
87
141
92
93
178
110
59
91
120
89
133
102
116
106
122
124
166
127
156
136
87
106
177
94
103
98
121
102
115
103
109
95
102
113
102
167
139
67
97
108
120
116
77
69
180
85
78
131
110
110
129
166
76
87
87
104
106
98
127
82
130
148
147
114
183
77
90
105
108
54
87
107
125
104
99
118
161
145
102
96
158
107
125
114
116
142
108
146
124
111
103
111
99
106
124
98
74
148
77
109
84
93
102
149
149
83
102
146
95
98
96
108
89
124
110
117
124
177
98
98
192
139
110
95
136
137
148
112
140
142
118
128
100
117
122
113
117
122
117
85
131
123
191
90
109
135
108
89
108
143
119
108
98
128
104
118
102
116
160
75
110
119
138
114
54
106
121
164
77
93
89
226
165
95
178
105
114
105
164
128
108
108
112
169
183
54
120
144
103
112
134
140
83
133
123
77
138
105
77
119
94
177
124
157
82
76
117
159
59
141
80
74
153
103
81
143
90
132
143
100
104
177
95
123
99
145
78
93
125
61
176
81
143
102
87
106
135
93
125
130
105
133
132
163
114
124
138
127
147
98
157
54
173
85
120
109
128
54
132
86
107
153
144
121
92
109
133
113
118
129
126
143
145
81
77
97
98
155
160
95
160
128
145
147
96
110
74
103
96
151
165
179
124
87
108
87
102
128
108
163
82
59
116
122
112
91
134
127
108
145
117
93
120
102
160
82
122
106
149
108
108
81
131
93
101
123
109
107
155
93
169
138
172
128
162
160
106
98
136
126
165
96
92
134
141
83
176
85
132
114
132
168
139
129
81
177
67
131
98
110
102
128
120
170
176
49
115
123
137
100
102
107
140
101
74
117
131
149
103
61
107
125
131
106
129
74
204
146
98
102
114
90
142
81
98
87
106
160
158
106
120
102
101
113
125
121
83
198
118
73
107
68
54
68
125
139
83
97
116
129
93
130
59
129
79
126
135
222
107
67
114
149
122
90
134
134
148
123
83
122
125
188
143
106
116
95
93
115
185
118
138
119
139
108
89
103
194
109
110
152
123
111
121
74
127
123
125
143
113
98
125
102
106
54
144
87
166
182
139
137
110
150
87
177
76
106
172
153
67
117
49
86
160
135
87
83
98
185
136
144
96
151
139
133
81
101
140
81
98
144
102
67
97
54
106
139
123
105
98
100
118
126
131
140
126
160
135
105
110
49
166
129
82
97
163
119
54
102
143
106
95
108
102
78
129
49
127
129
110
90
108
74
117
94
95
135
94
124
133
102
108
95
144
177
163
102
131
101
54
167
108
90
85
126
95
128
154
131
194
93
87
108
95
177
113
133
137
124
49
153
121
107
154
111
148
119
90
113
107
99
119
141
81
154
77
126
116
171
137
137
154
143
110
102
90
131
148
137
89
83
123
96
93
97
98
103
74
81
99
138
96
151
91
109
181
87
145
160
87
135
124
141
130
160
143
104
143
143
108
112
182
98
54
66
95
146
143
177
97
95
158
149
128
82
83
121
105
88
123
87
115
135
69
103
154
141
135
89
119
190
161
77
113
125
120
117
67
120
176
171
104
121
151
123
134
79
160
108
111
93
115
81
105
103
59
113
118
93
103
136
115
54
180
95
78
118
102
120
74
146
97
145
147
98
177
77
169
143
54
127
140
102
84
148
140
100
104
146
130
67
89
140
107
100
150
109
155
126
97
130
81
77
125
123
98
110
103
129
93
138
133
151
104
49
145
126
131
127
118
129
97
59
59
114
91
179
120
139
96
130
128
176
59
96
133
86
118
120
130
76
139
102
83
125
137
156
103
166
150
100
95
104
93
74
96
83
149
135
117
68
106
91
106
126
100
133
141
105
134
148
106
91
106
116
132
103
139
148
111
109
97
74
108
78
96
141
83
54
96
81
95
87
88
108
107
163
106
83
101
143
134
124
85
95
149
149
156
122
114
98
148
125
69
105
95
73
100
102
95
128
133
126
115
160
146
163
165
158
103
103
92
133
61
103
119
83
100
125
120
123
144
78
133
103
61
95
54
126
184
118
125
177
107
80
117
107
99
103
91
105
125
143
116
98
131
99
106
106
107
102
157
149
76
118
164
99
116
148
134
148
102
92
68
87
96
101
124
109
54
136
113
95
135
95
141
80
134
93
129
145
109
101
103
83
175
131
101
81
135
144
102
149
109
141
112
84
101
81
116
139
83
129
108
102
92
95
91
88
115
130
139
168
139
115
142
106
135
101
102
152
169
103
91
68
95
131
170
88
177
97
54
113
140
131
97
134
133
72
140
144
122
98
104
113
173
116
132
96
102
111
111
100
130
120
98
148
148
102
111
59
107
102
140
136
107
84
113
108
189
117
112
102
98
154
106
49
54
140
169
125
54
102
144
132
109
103
80
154
124
95
93
92
118
105
155
112
122
110
108
135
118
142
118
95
108
141
134
108
108
143
112
141
113
59
112
107
165
102
173
98
65
96
98
137
139
87
168
168
102
74
147
109
144
148
113
119
144
103
124
112
140
98
133
123
111
149
135
154
93
113
95
101
120
106
138
135
183
79
94
68
138
102
76
135
124
67
102
148
49
120
108
127
107
111
106
148
118
145
54
120
74
124
127
76
132
103
126
121
142
106
123
121
95
127
119
54
106
54
123
107
95
181
143
133
140
97
133
79
128
106
98
102
136
129
159
149
85
115
113
74
138
102
90
114
155
142
100
78
117
117
112
91
180
127
98
98
154
102
108
118
123
153
49
151
133
147
135
154
78
150
118
127
146
108
133
103
108
108
98
121
146
98
126
129
81
49
102
147
104
81
107
77
67
128
141
135
89
84
132
110
102
119
153
83
124
122
81
76
103
98
93
148
95
111
104
105
124
54
124
161
126
74
133
155
123
119
128
103
123
130
157
116
118
177
49
132
135
119
98
132
114
128
54
59
103
125
68
144
119
54
194
54
177
104
103
128
76
93
78
128
133
129
133
87
113
95
95
54
126
181
200
128
185
131
108
127
138
96
107
128
110
84
140
74
59
108
91
113
100
106
140
111
138
87
148
116
114
108
54
98
110
96
85
143
117
110
101
177
161
93
119
189
115
87
100
102
78
116
83
146
103
91
102
89
115
69
92
113
120
102
82
118
54
124
67
120
54
97
146
74
111
128
98
140
156
156
81
129
105
101
130
128
122
106
145
119
174
119
142
118
96
49
147
92
114
95
126
164
138
143
130
87
102
143
129
89
95
107
120
61
106
127
131
150
115
97
68
158
97
135
88
113
103
140
112
160
117
150
134
143
84
104
113
137
95
95
118
86
199
120
74
119
114
83
122
99
105
85
95
141
87
89
118
112
102
89
81
137
94
148
95
105
86
108
83
128
139
85
152
146
148
108
123
87
131
98
130
156
92
115
95
117
150
106
76
54
95
122
116
102
141
54
101
99
95
91
100
148
90
129
103
100
126
86
108
102
174
126
91
49
87
92
125
180
129
87
140
104
145
146
95
161
49
59
142
76
90
148
131
178
107
131
137
119
112
140
86
144
61
134
125
90
135
83
105
78
54
91
76
85
86
94
131
125
95
101
137
148
116
128
119
68
95
95
112
119
177
97
116
180
128
90
78
158
74
113
120
105
125
143
93
120
103
122
97
157
105
81
143
131
112
98
78
122
124
83
54
154
135
161
177
103
191
152
92
77
143
100
113
110
49
96
161
95
108
100
112
131
96
92
114
102
177
121
85
96
153
98
145
120
80
95
142
96
144
59
54
109
120
76
68
102
107
146
105
82
120
78
104
81
113
105
148
147
151
126
137
98
100
164
112
103
100
95
97
146
129
65
93
121
83
107
96
234
54
54
107
102
103
103
140
148
81
122
182
95
112
74
123
173
113
49
106
98
125
92
126
131
54
49
127
93
81
93
96
157
140
67
122
133
99
92
151
122
104
158
190
54
106
133
113
67
81
106
148
135
156
171
120
175
83
129
164
127
49
79
125
105
54
103
113
122
77
143
49
136
101
157
54
128
103
104
159
173
49
140
143
164
125
128
157
149
153
110
108
132
100
95
138
110
125
94
94
103
172
108
80
144
107
84
108
98
84
127
138
144
89
133
133
82
103
107
87
118
98
131
87
59
97
121
129
125
189
136
54
127
74
151
127
131
95
87
111
180
54
111
49
100
156
61
127
95
99
140
161
149
118
133
116
73
67
108
170
160
49
85
94
122
116
109
49
97
119
103
167
103
78
59
108
142
76
85
125
91
81
87
108
107
165
117
105
108
76
137
106
147
104
113
94
133
54
115
124
94
153
138
150
61
84
113
98
138
116
95
90
90
97
103
151
138
124
175
161
95
127
151
97
122
109
124
127
92
123
80
155
107
146
131
140
93
146
153
138
127
111
102
130
102
95
144
95
106
123
161
138
93
95
146
98
114
104
108
87
160
81
113
93
143
135
79
126
196
97
122
97
116
77
108
131
131
114
95
80
49
106
140
113
103
54
160
150
120
136
148
61
105
143
85
212
59
81
108
148
122
171
149
77
95
139
125
74
93
136
102
75
99
176
102
95
109
155
159
75
102
143
168
108
137
118
135
117
147
107
100
83
157
95
96
107
105
102
103
123
153
162
131
103
88
104
176
73
143
134
78
102
152
79
153
108
137
89
108
133
77
90
74
144
76
82
123
144
74
116
95
105
106
113
98
154
145
93
49
120
49
75
116
141
134
92
107
133
92
117
81
121
153
111
96
54
121
114
105
128
162
112
106
101
116
59
163
107
120
150
125
81
54
161
101
129
113
54
67
110
149
118
148
81
89
135
159
102
158
110
99
103
76
140
113
166
159
108
108
100
111
149
76
135
119
122
95
146
119
132
105
146
146
102
143
113
74
111
100
186
160
98
112
98
79
120
124
106
111
98
107
128
139
142
101
68
92
111
126
182
106
130
103
103
98
125
98
108
144
84
98
130
78
161
124
152
97
108
87
54
49
95
49
79
49
120
59
98
169
105
180
92
130
94
148
127
132
101
102
108
127
126
89
76
105
81
112
126
140
167
54
123
106
87
141
84
102
140
98
103
81
112
54
140
135
148
128
153
54
135
116
61
177
94
95
93
101
141
101
143
141
83
120
112
99
54
150
104
121
88
131
81
127
117
184
109
191
98
131
145
133
82
68
185
133
144
119
104
131
123
122
118
142
96
159
54
128
140
131
103
131
173
94
128
130
98
49
49
105
135
54
142
133
150
104
105
134
81
98
115
68
102
76
99
148
160
117
74
113
109
96
122
99
105
153
153
215
77
169
90
59
117
120
67
113
98
76
122
142
113
133
54
161
120
83
199
169
123
93
107
131
155
109
117
165
134
117
54
113
116
102
104
133
202
54
102
121
114
127
103
122
92
136
146
54
119
74
90
103
54
165
54
95
118
120
81
177
113
101
93
49
102
130
143
93
136
133
108
143
105
59
154
80
76
110
125
107
82
150
95
162
128
102
78
105
54
118
143
128
141
69
96
82
87
128
114
122
83
102
135
90
137
115
157
146
134
152
59
113
87
54
182
75
89
116
74
96
138
122
87
113
131
179
131
116
95
96
54
121
133
93
118
125
184
123
115
105
93
162
102
146
97
128
100
131
69
151
49
115
54
108
147
74
143
121
167
95
101
145
118
128
101
102
119
108
102
155
108
87
54
108
133
81
95
193
95
87
96
54
103
103
153
141
94
137
151
116
95
124
125
125
111
167
123
127
74
194
61
113
114
149
148
87
162
197
103
96
81
87
61
77
151
92
217
83
125
90
108
81
162
161
157
138
136
122
90
90
108
90
161
106
87
117
135
87
123
122
126
86
105
89
104
134
49
113
128
112
133
90
105
96
82
125
117
128
118
100
117
59
125
144
175
116
88
125
105
93
105
113
155
130
117
92
85
54
102
54
118
116
118
177
128
128
81
95
95
103
181
54
90
125
49
98
92
137
148
112
98
147
127
152
87
81
139
105
102
59
127
114
82
96
116
116
86
148
125
78
158
68
123
178
113
98
97
54
164
148
140
97
119
150
125
171
177
119
178
85
98
134
107
115
91
157
91
76
104
136
49
108
165
74
54
92
110
88
100
98
80
109
93
100
49
148
122
109
168
112
84
140
135
161
85
124
136
117
87
135
112
80
98
76
54
144
132
140
177
108
150
131
161
93
83
74
100
102
156
69
76
125
143
104
150
158
179
129
139
102
148
161
87
101
123
155
90
98
125
102
87
107
98
110
120
148
161
139
122
85
49
102
77
125
132
82
111
54
91
108
205
54
149
96
87
120
90
165
68
79
90
125
153
91
119
127
113
109
95
68
147
49
110
77
87
78
82
74
164
90
107
123
102
137
103
97
110
82
140
153
108
103
130
175
153
102
147
93
159
125
97
81
163
132
121
119
78
137
99
54
95
87
115
88
158
86
128
143
98
150
92
124
150
92
127
200
118
95
81
97
59
133
98
49
129
92
83
128
115
74
123
82
94
168
108
114
115
166
109
218
99
129
143
82
120
95
105
76
130
90
68
125
118
138
145
146
116
148
108
149
123
139
69
109
154
114
54
74
143
133
68
131
147
108
59
111
88
81
155
140
212
130
101
139
132
118
111
76
158
126
96
68
82
74
128
174
133
115
93
54
149
146
125
157
139
59
161
156
105
98
83
131
95
123
95
119
132
109
113
127
108
88
116
141
81
128
99
83
122
134
112
129
54
93
125
142
59
106
130
96
136
134
170
125
133
145
81
116
130
102
114
100
126
138
129
82
83
86
84
102
108
149
147
130
80
133
158
144
93
49
108
49
78
77
100
133
150
154
117
112
126
74
97
59
103
148
109
86
150
76
149
108
119
186
127
119
121
88
182
133
141
157
144
108
123
137
120
176
177
101
135
186
161
147
121
121
150
126
128
120
139
54
91
113
146
54
54
135
108
127
110
98
88
103
118
98
102
120
99
131
177
118
102
95
91
105
102
115
94
120
90
158
132
130
140
119
95
145
114
84
135
101
54
70
102
205
61
99
90
96
102
74
168
98
168
120
97
102
132
54
154
163
81
76
118
130
156
106
87
87
143
145
136
147
54
131
122
137
125
103
135
54
67
102
87
113
107
135
138
137
115
107
113
138
83
132
120
118
116
96
81
148
113
128
129
120
91
85
89
160
103
76
81
87
150
91
114
98
76
97
129
134
158
121
96
98
141
59
135
155
95
131
136
91
133
132
102
139
163
96
129
143
127
154
139
59
79
126
106
77
80
113
109
140
200
99
54
144
168
119
153
119
100
67
68
119
98
108
87
119
88
108
125
145
82
87
110
120
85
119
111
115
104
77
95
95
49
127
134
108
160
125
107
129
74
148
124
147
98
147
136
123
140
97
137
139
161
119
124
123
82
157
127
126
95
99
129
146
135
113
110
96
117
117
166
80
119
112
156
173
147
128
158
143
54
83
156
179
178
89
121
83
133
95
117
59
108
98
139
98
95
113
133
82
177
132
125
68
173
128
141
106
168
118
148
128
152
106
54
113
100
112
129
144
111
102
125
54
103
97
77
96
107
174
112
105
143
91
142
172
131
140
148
81
144
147
87
93
126
74
81
138
87
111
90
131
84
124
49
90
113
159
171
154
102
119
118
98
104
119
54
133
91
109
84
136
197
105
100
106
85
147
91
105
81
96
90
143
143
54
102
119
113
125
122
191
74
108
145
121
98
90
109
103
78
122
95
125
117
155
133
112
122
108
93
95
119
124
102
145
108
161
117
139
140
146
108
87
187
122
80
95
159
122
98
93
148
68
104
98
80
90
133
77
151
82
78
92
155
170
115
141
99
87
94
106
125
124
128
135
120
122
49
130
59
160
108
125
177
103
120
127
100
133
97
161
126
143
148
105
112
115
102
138
123
89
97
120
117
76
128
54
125
117
98
98
115
81
67
116
130
134
103
61
120
103
121
137
124
95
127
115
111
103
148
93
103
145
77
149
127
152
95
113
79
116
108
131
103
140
103
135
113
98
138
151
82
75
97
67
114
118
161
90
70
142
92
148
78
111
54
105
116
98
111
123
93
186
108
148
96
146
124
117
82
136
110
110
114
78
158
207
54
110
172
59
59
148
76
139
123
164
149
119
74
164
107
79
117
74
148
144
198
127
103
108
90
154
98
78
88
54
76
173
99
92
87
110
104
101
128
98
114
140
95
110
108
74
102
74
177
159
113
54
130
103
129
91
116
137
111
120
182
104
105
128
112
101
130
118
158
87
83
116
145
105
54
165
97
119
122
116
172
120
74
175
115
107
124
114
145
128
93
177
148
107
112
143
93
166
54
127
144
96
123
95
105
103
140
132
59
116
103
87
95
76
112
113
74
123
49
125
133
115
109
186
82
93
76
128
129
149
92
90
108
158
143
148
125
164
90
113
130
89
98
108
141
141
116
98
102
116
153
133
160
154
104
128
102
105
105
87
117
90
108
141
123
67
127
135
92
49
134
121
95
125
83
147
104
122
94
142
98
101
133
161
108
54
117
136
155
112
173
148
95
135
113
117
95
104
156
104
130
54
115
154
103
95
59
118
114
108
90
95
76
80
94
73
116
122
54
139
143
116
133
133
105
93
109
99
54
112
67
97
148
151
115
131
152
158
133
106
101
82
148
98
99
81
165
113
105
127
101
128
114
108
153
103
119
132
141
194
98
152
204
142
123
109
94
142
112
106
107
111
114
120
81
107
87
125
134
54
206
116
129
159
90
208
95
119
84
74
144
102
172
91
141
138
158
139
77
133
157
129
74
106
103
135
109
106
120
102
141
133
108
162
134
158
200
131
67
157
135
128
104
154
76
143
59
128
153
74
77
200
103
130
149
155
167
134
76
45
112
102
125
98
120
111
144
98
117
107
95
97
148
112
105
95
133
102
54
102
108
115
170
158
117
45
95
140
54
108
54
89
95
143
159
105
67
167
170
95
155
131
139
125
127
102
160
122
88
98
90
173
113
105
145
87
154
77
128
126
67
124
147
113
179
81
122
108
148
107
54
114
101
80
148
143
54
103
93
54
135
49
134
86
142
110
96
106
54
168
106
127
145
54
91
165
74
89
79
117
101
101
176
95
98
134
162
133
78
127
106
81
96
182
133
153
161
129
54
124
125
111
139
95
107
130
125
155
113
74
164
116
147
97
99
117
140
125
180
166
129
109
74
147
98
104
82
54
67
179
142
163
121
164
74
107
116
128
107
171
103
102
144
100
158
153
76
103
112
109
105
105
102
102
82
104
160
106
118
105
110
76
81
54
88
140
150
121
106
177
105
137
125
145
147
127
102
168
159
85
81
54
112
102
119
110
121
95
89
98
172
143
116
90
82
116
150
148
162
74
147
97
103
177
114
122
78
108
97
87
81
152
95
219
59
123
102
95
140
168
169
93
82
104
143
167
152
144
113
152
108
100
176
106
156
142
168
124
123
70
147
189
129
140
142
69
135
108
126
119
86
108
108
107
108
97
141
134
74
194
153
147
124
142
61
117
149
113
81
107
98
154
81
77
140
54
131
146
155
111
102
91
116
128
59
49
74
98
156
113
85
111
81
134
110
112
96
78
99
130
94
197
145
107
96
102
155
166
139
104
184
108
125
198
135
169
74
175
165
110
140
121
93
103
84
102
128
115
103
144
133
130
100
96
125
98
103
103
133
165
168
72
90
49
108
120
89
102
74
156
114
141
133
77
106
102
94
132
137
96
118
112
124
135
113
110
107
129
157
87
79
84
75
106
82
159
90
167
95
120
154
95
213
153
54
54
200
69
151
168
137
81
70
110
59
106
97
146
123
116
149
141
124
49
155
144
102
159
105
133
145
146
96
143
85
119
112
81
95
101
148
131
135
103
125
95
49
107
87
98
117
87
76
85
141
122
135
61
145
147
155
169
128
82
83
102
87
120
129
95
118
120
170
126
122
108
133
142
104
99
116
81
89
108
141
95
76
73
100
93
165
190
102
73
137
76
54
86
158
90
133
133
90
100
144
117
102
119
95
95
163
103
125
116
143
139
148
123
61
77
59
124
125
101
77
108
93
114
103
87
133
125
161
95
128
103
95
77
83
110
83
103
123
122
140
77
76
134
122
54
151
127
128
112
100
116
110
112
74
102
112
119
101
119
95
75
112
136
96
90
160
162
113
124
121
135
148
99
93
54
113
164
90
195
89
131
103
133
105
131
133
141
148
89
115
98
152
76
150
104
146
159
122
81
108
106
108
115
124
173
134
87
158
138
103
74
87
111
111
122
119
100
84
82
81
104
150
68
74
135
138
133
77
131
154
132
102
177
77
94
74
81
80
103
105
85
102
135
109
93
146
92
115
128
115
90
123
131
139
141
108
115
70
101
158
127
143
124
120
129
54
67
225
114
146
69
156
80
125
81
165
122
108
100
68
104
59
160
85
108
85
69
104
98
119
104
54
139
104
134
145
136
125
133
132
98
49
129
96
67
61
120
132
76
122
148
93
114
121
78
99
102
150
143
87
127
119
54
139
61
59
126
137
106
86
81
49
141
178
103
135
76
98
107
123
109
145
59
138
113
104
158
73
95
98
149
130
116
92
96
119
102
106
125
124
127
81
102
122
146
141
102
109
158
95
54
106
140
108
118
76
106
54
103
96
168
102
115
95
110
82
96
74
71
157
87
102
132
93
80
164
141
121
90
127
102
136
128
118
114
49
164
49
90
143
115
98
105
54
141
165
102
218
114
90
91
145
97
165
141
82
90
105
160
113
138
92
143
173
128
132
155
81
54
102
54
103
84
116
147
123
59
126
54
71
128
78
137
85
142
82
131
87
93
116
91
108
121
115
109
78
130
129
89
137
74
135
148
74
112
142
132
149
77
149
95
122
102
91
116
116
100
118
103
54
57
102
93
128
114
144
126
172
107
175
83
97
77
145
112
148
116
54
108
103
115
147
122
134
123
95
81
93
132
140
93
54
135
90
148
96
135
170
98
74
139
124
96
125
109
108
123
154
140
106
67
177
156
143
102
103
129
98
113
143
54
81
76
177
103
107
123
155
79
102
118
148
185
137
107
108
113
112
123
133
103
180
78
54
131
148
54
82
113
87
54
85
87
97
82
93
67
119
78
98
103
110
160
103
134
122
113
92
152
101
104
124
96
108
88
98
143
151
157
82
93
173
125
177
179
148
87
164
103
103
121
103
76
178
81
150
133
90
108
94
91
69
131
99
95
139
93
126
158
105
54
161
103
73
105
159
158
127
194
95
74
77
131
101
121
153
87
105
109
135
112
80
145
108
54
142
148
160
114
153
142
173
74
91
120
89
139
92
115
130
125
116
54
132
108
102
105
130
120
125
153
165
146
90
143
94
115
81
155
108
102
54
98
83
120
96
59
139
104
103
145
120
78
107
111
133
107
96
108
95
129
106
143
145
113
127
151
98
82
112
105
121
91
78
144
113
98
87
133
136
131
113
94
131
147
76
108
123
102
129
161
85
106
109
126
103
82
65
83
49
153
133
156
98
169
128
132
54
113
135
121
133
106
107
79
161
133
118
141
95
93
151
113
167
113
95
49
74
76
59
120
151
141
74
122
98
162
128
145
85
104
123
76
114
108
106
108
91
87
128
129
108
192
115
141
159
121
127
143
129
82
76
120
111
140
131
104
148
77
137
98
98
59
135
84
108
184
120
123
67
112
169
110
77
106
107
138
92
95
177
74
123
127
114
87
98
89
119
149
88
96
100
77
155
125
115
158
161
54
125
145
98
149
89
82
115
119
90
97
97
123
119
120
132
102
79
113
160
81
126
106
86
102
80
94
77
143
146
125
89
78
87
147
77
54
164
114
90
115
77
102
87
149
129
111
149
158
54
54
140
74
104
117
104
111
127
80
121
82
54
112
102
110
133
95
133
127
76
133
95
132
144
167
103
156
98
121
131
113
152
49
140
97
102
125
117
86
143
99
49
99
120
105
114
136
54
62
99
95
142
106
144
54
156
131
146
139
80
98
135
127
101
114
172
126
74
122
108
82
115
80
123
98
102
82
87
157
113
138
91
184
158
54
102
122
98
133
108
98
89
144
121
105
144
105
120
145
143
97
135
140
182
97
87
91
111
133
84
110
107
172
110
61
102
67
130
111
123
94
96
159
103
83
84
131
128
98
124
171
100
135
54
105
147
81
49
102
194
131
82
96
105
106
151
106
74
137
148
133
134
118
105
140
134
149
90
149
99
123
102
120
112
170
91
131
87
113
120
96
195
103
149
101
108
129
162
148
103
118
116
113
127
115
85
95
127
85
155
184
113
84
111
118
95
152
83
118
99
98
119
102
125
78
128
67
101
81
132
143
122
102
102
106
107
112
74
54
133
144
183
110
133
108
54
149
132
83
100
126
158
54
102
102
126
105
103
78
106
160
54
108
110
78
181
143
113
125
54
98
116
141
180
122
81
105
156
105
118
90
76
117
107
90
129
138
173
83
128
119
104
103
129
90
104
165
145
149
124
92
95
177
99
114
120
109
147
80
131
98
143
128
65
99
124
80
103
54
120
129
130
106
121
160
148
133
93
138
90
139
83
144
94
87
165
142
143
97
100
128
54
85
77
118
188
127
148
129
122
143
100
148
108
68
104
154
81
99
81
87
82
105
157
95
108
103
123
108
163
102
127
109
138
106
107
105
73
129
54
127
145
81
79
133
74
113
103
119
113
76
103
114
81
83
115
95
158
73
128
123
140
189
123
113
67
101
109
133
92
131
81
83
194
85
106
98
106
76
101
134
95
127
103
154
131
160
142
142
95
95
82
96
163
137
95
155
115
136
121
54
101
115
87
98
54
141
69
54
118
124
169
115
136
97
123
95
143
125
137
103
49
106
101
179
144
127
59
144
82
113
111
148
121
127
128
159
109
131
87
108
122
112
146
132
118
105
74
173
125
139
101
124
108
175
135
90
111
112
54
98
171
127
151
133
103
105
109
112
98
148
120
59
180
110
102
141
144
95
117
127
146
146
161
88
71
67
143
190
144
131
92
110
177
126
121
96
157
143
202
135
118
109
106
105
86
126
100
87
78
82
108
92
179
108
108
81
173
83
97
106
98
139
119
155
138
95
130
77
85
128
113
75
68
160
113
113
179
135
103
49
149
67
91
78
82
144
82
168
143
134
122
81
116
128
95
74
118
112
87
137
98
124
144
161
93
102
104
94
163
98
127
115
119
54
107
134
119
109
155
155
79
108
139
106
155
93
112
113
73
105
54
54
78
167
115
59
93
142
129
160
134
83
103
87
86
139
130
67
101
103
97
141
113
112
122
59
148
144
125
76
81
168
111
91
122
101
113
95
119
76
153
180
177
184
102
101
129
140
139
145
103
134
77
117
138
120
96
113
155
67
78
103
93
129
166
101
108
170
111
112
120
100
143
181
105
151
54
49
97
102
135
105
126
108
90
179
102
114
73
133
91
100
67
135
112
98
78
131
150
122
169
143
114
54
137
125
144
111
125
100
119
102
133
125
107
117
108
93
81
86
128
77
106
122
98
76
81
108
87
68
54
131
129
103
171
90
121
91
166
150
134
101
153
82
133
108
59
54
114
76
120
143
108
109
128
127
216
96
101
146
100
83
106
147
54
123
95
135
102
108
132
145
138
159
112
98
82
90
123
134
116
159
95
123
117
140
95
97
96
113
110
143
186
130
115
77
123
126
94
127
122
102
102
96
152
116
113
118
141
102
130
93
104
154
104
76
105
102
127
139
122
125
102
95
132
98
89
142
156
138
128
105
96
95
135
169
151
146
102
143
91
101
152
54
115
91
214
123
102
74
61
49
107
123
141
114
186
180
108
143
90
54
89
106
125
78
113
59
105
111
163
96
141
140
135
109
133
109
144
149
106
97
140
88
177
96
150
74
54
117
97
133
146
101
95
168
90
54
138
59
151
114
82
86
112
113
148
104
127
128
127
111
84
81
122
125
126
54
104
104
81
147
126
128
125
101
110
49
179
143
91
145
134
123
93
160
81
81
78
96
152
70
102
91
104
135
94
113
106
135
87
119
76
135
159
98
85
54
82
138
145
111
95
76
115
112
124
91
77
85
118
154
108
140
139
152
97
147
133
49
102
107
97
149
87
82
135
113
107
103
82
96
105
96
96
146
112
108
127
133
157
81
140
136
140
95
87
94
136
145
161
74
125
113
128
136
87
54
94
158
108
145
49
54
108
116
111
167
115
142
128
117
138
158
98
107
91
179
110
150
98
141
159
167
167
83
95
95
91
135
139
119
110
74
147
141
74
95
137
128
99
85
76
97
105
105
162
95
134
98
125
109
49
150
142
142
112
162
83
74
49
94
168
145
125
90
149
188
152
177
128
131
142
98
145
163
93
123
107
103
125
164
98
69
167
98
139
139
140
110
131
95
158
171
62
109
134
157
148
108
102
49
114
87
160
102
103
57
130
97
148
102
113
77
94
54
140
102
158
124
82
81
145
102
131
83
141
108
102
127
116
155
98
150
162
121
130
144
54
127
101
149
119
107
109
190
106
109
120
107
105
146
105
108
59
102
59
143
103
78
128
83
108
202
102
132
104
96
82
98
131
91
90
82
145
125
96
113
117
131
54
108
191
161
54
141
98
146
148
96
59
76
131
168
93
126
98
73
113
103
49
150
152
91
86
90
54
77
85
95
121
106
110
104
125
129
98
91
90
77
200
107
81
166
145
179
148
106
122
97
116
115
130
69
100
158
54
152
91
153
147
45
104
95
126
100
80
152
54
81
76
133
135
131
80
145
131
142
128
118
98
103
90
135
91
106
95
103
121
96
113
113
93
158
150
59
67
74
158
113
108
88
103
111
146
78
177
177
76
148
80
102
81
131
108
140
123
69
140
153
67
119
77
128
120
113
67
119
124
125
108
81
83
83
154
54
76
103
67
108
132
141
72
67
54
105
110
67
100
106
108
108
116
109
106
94
105
128
88
59
185
74
133
54
49
133
116
139
88
81
124
81
132
125
74
97
87
218
93
125
108
49
114
148
133
91
138
119
142
103
173
106
127
103
79
97
133
100
83
116
125
125
81
95
110
154
143
112
59
98
144
106
132
123
100
131
54
87
111
124
95
96
128
129
87
115
139
114
124
143
108
88
87
131
115
139
149
147
145
180
102
85
144
88
100
125
108
130
113
117
104
76
121
129
143
127
102
54
122
108
148
107
153
99
128
177
101
54
146
68
120
134
87
49
85
140
122
109
125
157
105
90
108
113
99
83
113
90
81
149
168
99
49
132
122
134
130
76
126
145
149
68
102
86
113
91
163
138
179
115
144
141
110
76
134
93
127
98
175
79
123
131
92
98
54
108
122
97
114
95
128
95
76
90
67
138
138
82
118
81
115
135
96
49
93
132
135
82
216
95
148
135
77
152
105
81
163
114
54
113
81
104
98
104
186
54
82
119
124
120
59
138
91
133
98
104
136
77
135
122
103
120
99
154
61
141
138
157
61
137
74
165
121
114
128
102
179
148
103
98
95
118
76
144
79
135
81
180
125
49
135
103
145
143
105
124
160
107
54
123
148
155
117
127
112
115
67
131
116
129
157
81
94
102
121
143
98
103
106
123
90
105
77
83
120
79
147
128
91
107
118
128
120
80
98
130
93
97
194
104
81
139
73
125
61
120
108
90
89
218
59
138
59
156
115
104
54
136
91
96
147
127
54
102
170
103
59
95
123
104
147
95
112
90
59
144
100
127
102
95
81
54
120
67
158
102
120
81
173
102
137
144
91
118
77
119
133
153
108
110
129
116
54
137
163
161
61
127
78
113
100
125
149
166
87
125
102
132
80
130
110
127
135
97
82
125
158
116
148
90
152
107
127
120
101
113
85
133
110
111
84
57
106
130
133
109
145
155
98
98
67
113
82
115
127
125
107
140
59
131
149
87
122
148
144
67
77
78
133
128
103
111
108
137
172
68
98
148
111
146
102
144
99
108
105
98
103
165
120
108
194
151
106
65
119
142
96
151
173
115
141
142
102
101
73
68
97
90
81
169
125
83
155
93
111
98
77
123
108
107
158
103
69
119
148
156
138
76
121
113
98
97
112
106
92
113
123
113
132
128
160
151
81
135
54
161
108
140
128
132
93
150
108
132
105
119
98
135
157
95
148
81
124
154
118
82
54
90
139
127
96
59
144
118
105
98
85
91
95
119
87
134
74
90
134
94
131
141
123
102
49
54
106
109
68
102
132
146
77
147
149
107
131
95
95
132
100
87
116
80
158
158
95
108
69
160
147
61
133
120
118
134
104
98
91
118
103
124
95
101
77
123
111
101
102
110
177
148
136
94
98
130
81
131
81
119
147
137
67
103
153
147
95
91
121
113
158
105
126
104
110
82
84
67
133
102
109
93
136
118
108
198
118
87
106
141
54
98
138
111
137
90
133
54
141
121
148
96
146
144
112
108
98
129
90
140
149
132
78
106
115
78
150
123
128
116
54
71
139
122
113
102
148
102
93
115
147
96
49
111
54
127
54
127
113
91
112
126
133
125
161
98
91
134
157
131
93
107
85
102
102
76
132
134
137
79
128
107
90
166
95
96
109
45
141
118
103
102
94
91
109
179
125
103
108
81
131
108
90
83
106
118
85
99
67
84
113
83
83
91
81
59
120
102
95
94
133
118
69
65
77
154
128
74
101
152
90
168
143
54
54
122
108
80
106
103
116
78
148
68
134
119
113
93
96
152
113
158
116
93
118
136
94
120
121
133
119
106
67
145
150
138
95
149
198
82
113
199
135
98
115
132
92
94
132
133
123
149
87
78
121
155
93
54
59
108
129
118
148
108
123
122
146
123
96
100
49
101
144
133
89
83
144
109
143
118
90
131
152
106
73
127
105
90
110
140
78
110
103
140
90
134
93
153
88
140
148
54
102
109
118
144
122
108
80
168
110
105
148
156
179
113
83
102
99
121
103
125
128
185
166
145
86
96
110
102
126
83
92
108
107
156
131
81
148
85
99
124
114
136
141
89
100
158
78
94
194
113
118
127
101
191
129
108
105
122
133
95
157
155
119
92
129
115
113
54
87
54
140
149
140
122
147
49
138
102
129
76
157
131
158
95
75
154
160
81
78
90
108
151
126
127
163
132
136
154
112
148
141
117
176
161
127
98
87
89
122
54
159
59
130
95
180
140
106
92
157
102
133
95
98
91
77
91
132
102
113
81
139
140
90
158
144
135
148
112
177
159
130
138
78
115
161
107
131
161
167
93
184
108
128
128
158
138
141
74
112
77
68
128
107
68
135
174
105
107
94
99
120
163
125
112
142
135
103
76
102
98
108
155
145
123
137
102
113
93
80
142
129
140
92
108
128
98
156
123
173
103
77
182
156
77
83
163
144
110
113
82
125
74
119
96
131
68
79
96
136
128
98
139
99
80
148
160
113
107
145
163
92
95
164
139
76
143
148
114
142
100
80
90
96
122
54
76
117
98
153
122
84
115
140
150
121
133
125
112
152
117
111
108
115
107
147
98
114
170
79
81
108
143
143
155
119
90
117
140
96
136
118
98
108
190
153
80
105
94
151
95
77
54
102
119
108
115
84
102
191
83
102
148
107
59
97
156
97
113
115
95
166
123
177
54
103
101
80
89
120
138
137
180
148
108
109
75
78
140
160
108
131
76
91
160
108
71
119
174
136
99
164
142
98
119
115
150
161
156
129
73
117
133
180
141
102
95
121
96
166
93
146
118
87
54
128
107
142
149
97
167
78
143
158
93
125
144
149
123
90
91
54
132
89
140
95
120
85
177
102
193
134
101
90
140
112
146
49
128
76
125
79
133
151
123
151
140
74
127
109
108
101
125
107
176
74
118
98
146
81
98
115
143
180
103
84
90
135
80
159
116
97
125
98
138
59
91
98
158
135
144
130
92
138
117
87
138
108
128
104
82
133
103
81
171
98
206
106
90
90
54
190
126
133
90
108
124
140
102
115
112
124
158
158
69
103
132
159
116
103
144
126
49
82
118
149
54
135
120
101
154
118
146
148
97
102
123
54
116
103
135
181
102
143
112
98
147
112
128
115
113
74
87
130
105
137
103
128
140
90
109
102
139
155
49
96
150
97
148
131
49
109
175
93
49
156
157
148
133
117
179
122
141
112
105
105
123
98
105
129
107
156
128
147
95
102
49
77
131
140
115
114
119
49
122
180
110
172
49
116
118
133
144
108
120
133
150
110
91
49
146
90
107
133
102
157
97
104
144
132
82
110
148
115
94
141
111
93
74
49
102
81
77
138
105
113
243
124
106
153
127
98
97
180
95
103
112
171
136
74
54
78
129
90
67
168
120
105
108
117
98
95
102
93
70
103
105
111
142
93
129
59
113
116
129
160
172
168
98
104
148
136
100
168
65
132
81
116
146
100
113
127
93
94
86
151
54
104
154
86
98
138
112
102
105
140
87
106
120
140
95
54
67
114
104
54
127
76
143
105
110
127
144
115
137
87
151
54
117
104
82
54
96
103
142
121
177
113
114
127
188
104
123
191
121
107
101
133
82
116
126
155
118
93
139
108
110
107
148
107
91
95
138
106
116
140
145
148
96
127
156
103
95
150
98
139
157
98
128
73
119
154
103
82
98
147
112
172
149
85
59
78
136
129
170
145
135
128
141
117
155
109
111
129
93
85
142
148
125
160
93
145
81
121
140
74
59
96
92
212
73
108
120
104
54
81
86
85
78
133
68
98
135
125
120
49
141
96
108
98
77
133
138
69
200
106
147
83
54
102
45
145
120
143
130
131
87
98
100
97
121
76
129
99
108
151
103
54
85
81
87
78
105
78
121
135
114
159
125
121
140
170
68
101
69
115
95
137
144
103
68
107
83
95
117
98
99
138
115
102
77
132
110
102
87
98
54
132
59
100
98
91
101
109
109
138
146
126
135
74
113
100
106
87
184
113
95
157
78
155
102
74
92
120
116
125
103
106
128
103
190
108
164
101
118
115
49
153
81
102
96
67
81
122
101
169
130
150
82
103
131
74
98
102
73
123
111
95
145
98
97
179
54
54
128
54
140
122
129
130
95
170
137
95
54
54
138
105
134
54
141
106
95
116
133
86
135
180
98
144
131
94
131
90
117
77
102
83
125
97
157
96
115
100
114
129
117
151
77
100
141
113
95
54
151
102
54
90
118
113
42
81
97
103
211
118
107
106
160
87
81
127
126
127
90
125
108
128
129
98
144
102
96
158
91
91
124
80
127
59
125
126
106
129
133
111
114
123
151
125
54
81
87
49
158
112
77
102
98
82
126
118
125
148
126
127
102
49
123
74
87
112
137
109
74
237
148
114
82
128
143
158
59
165
102
87
54
54
89
139
76
144
65
131
54
150
138
107
125
110
116
158
101
95
82
77
105
81
54
95
148
95
143
94
141
157
97
92
87
114
87
113
104
171
72
120
135
97
108
136
95
140
98
101
132
101
105
156
166
115
113
106
124
107
129
128
122
99
61
173
131
102
114
97
90
177
151
106
98
107
95
108
129
81
180
149
99
171
122
151
160
135
93
110
133
127
80
72
54
123
105
158
133
143
132
148
49
93
130
170
133
102
116
105
88
127
108
116
81
97
109
108
157
143
109
143
142
81
120
161
76
95
117
106
132
86
100
102
143
90
120
74
175
141
143
106
83
146
116
175
108
85
93
105
104
147
83
67
164
131
113
98
81
178
95
94
170
162
179
146
129
134
167
140
155
100
97
129
156
80
140
153
146
145
76
76
135
98
155
136
110
104
146
105
170
109
144
123
101
109
80
106
153
95
121
54
162
102
135
152
93
92
95
218
120
197
81
167
106
90
180
84
172
113
84
146
102
138
133
156
59
154
125
150
49
128
61
87
68
155
141
131
115
168
89
141
59
54
109
54
143
149
125
105
49
170
95
108
49
125
123
113
93
106
137
54
103
147
180
128
103
126
125
158
135
93
132
85
102
165
85
170
125
138
107
135
82
74
146
83
145
84
117
94
100
108
54
96
114
133
167
54
130
97
93
119
98
130
150
92
150
105
123
185
106
101
129
87
132
128
94
118
169
108
86
99
108
125
83
98
93
102
105
49
120
160
68
102
93
135
104
98
95
142
119
81
142
54
143
84
87
102
87
101
82
103
74
134
93
124
144
189
95
90
81
186
82
128
160
82
90
117
114
127
108
106
108
87
108
103
115
108
162
95
143
95
103
148
54
110
132
184
131
124
105
142
83
54
95
153
170
131
125
119
120
134
129
93
76
110
127
151
102
96
107
98
124
103
145
74
84
107
81
134
111
158
112
112
110
98
113
112
106
153
99
109
99
54
122
54
84
155
54
100
128
148
145
54
124
133
123
137
128
114
115
140
93
127
98
93
128
125
116
80
123
164
182
95
102
90
96
76
49
54
101
162
79
125
49
117
148
167
101
54
131
115
154
129
98
113
131
113
143
95
112
103
110
67
123
84
89
145
82
138
81
87
138
54
143
110
168
103
98
110
137
105
93
91
77
94
126
81
107
89
115
123
98
103
72
167
74
113
97
129
100
93
80
157
121
95
117
102
140
54
102
54
95
86
140
93
116
118
113
224
96
108
120
111
98
97
151
175
77
102
129
85
122
149
107
86
144
171
178
128
61
177
131
143
147
108
90
192
81
134
116
96
105
101
81
81
127
115
160
96
158
135
116
106
135
108
115
110
146
152
169
118
89
81
133
70
95
97
108
109
156
127
93
123
93
106
118
117
96
69
125
79
123
150
122
154
124
95
109
92
162
122
159
130
107
97
103
108
121
54
49
128
96
163
80
113
133
142
106
105
82
106
177
128
96
122
112
138
127
167
150
154
129
69
107
107
120
127
98
104
74
54
98
87
161
115
82
200
98
178
115
78
98
106
126
95
103
146
91
134
81
114
145
67
98
144
150
122
108
154
142
117
54
95
143
93
90
148
150
90
122
102
96
173
116
185
205
160
54
98
100
126
98
132
146
132
92
127
120
200
143
95
106
148
101
139
105
102
144
111
106
119
144
165
128
133
98
168
103
77
106
105
96
129
86
89
119
98
108
95
91
129
132
154
74
118
121
86
139
156
115
145
132
106
54
81
115
106
81
120
98
54
133
135
61
97
78
103
93
126
87
94
151
54
104
86
85
143
112
54
120
103
146
128
98
99
135
110
96
74
101
129
81
78
102
95
178
102
140
54
95
108
125
177
102
135
49
141
102
77
161
102
146
158
105
127
99
112
120
158
140
168
142
130
113
177
82
85
115
108
131
131
170
125
91
125
98
122
93
102
115
118
69
148
141
115
137
96
141
144
117
116
80
83
77
98
156
118
102
49
87
125
90
105
54
67
127
95
126
173
108
96
54
78
108
104
142
100
191
90
94
144
93
89
117
49
145
112
101
138
154
98
67
96
147
156
113
140
177
104
146
183
98
104
128
129
82
82
117
54
116
148
67
98
108
108
108
167
103
127
104
97
134
129
103
98
113
129
133
103
95
102
122
135
127
159
138
149
143
144
131
135
112
147
108
49
108
78
45
145
125
111
54
128
54
91
109
101
117
73
102
54
135
108
161
89
120
124
90
131
112
104
97
115
95
173
92
153
119
144
54
118
161
140
100
101
108
113
167
77
89
143
92
85
152
110
83
90
105
127
140
77
127
110
54
61
125
142
112
101
118
94
72
130
54
104
135
166
116
95
107
93
95
106
59
128
87
98
54
78
134
134
85
113
68
108
89
138
144
110
112
85
123
129
113
147
146
157
112
136
105
86
140
103
131
118
185
109
161
147
87
98
97
83
167
108
115
149
121
158
102
103
147
144
123
107
135
146
105
132
99
119
85
90
113
143
92
78
121
161
133
188
54
98
104
121
185
109
120
74
54
90
95
147
191
158
111
194
146
143
113
143
129
69
129
97
146
107
132
153
121
123
170
108
83
165
103
128
131
103
118
127
102
102
143
150
99
151
129
92
136
89
81
125
139
145
125
95
152
134
139
93
87
107
116
124
133
108
95
54
146
148
102
121
125
160
108
54
156
136
141
54
133
74
149
79
137
97
106
74
155
146
98
54
100
124
174
89
137
112
82
74
128
140
95
129
68
120
124
108
134
119
108
157
113
152
160
126
133
103
102
170
63
106
94
90
160
81
177
161
98
96
82
137
95
159
103
105
94
135
105
90
165
93
94
95
120
162
153
135
102
84
97
49
97
186
139
76
135
109
98
134
81
127
67
103
108
128
161
93
137
177
115
108
107
92
67
113
113
124
105
152
123
103
67
123
126
96
148
128
113
106
105
116
177
135
110
129
108
106
118
121
154
93
114
148
130
117
158
138
145
165
140
74
117
130
80
84
163
125
113
76
118
54
110
97
87
81
90
102
102
105
105
102
119
131
144
156
84
137
125
110
107
146
143
116
110
98
98
102
125
123
77
149
179
98
90
114
82
165
63
157
125
111
68
116
82
133
93
110
165
144
133
131
96
103
136
118
132
118
119
129
108
82
97
135
108
105
100
160
110
125
107
112
91
108
97
54
123
65
102
118
165
128
154
163
166
83
98
42
79
98
145
102
164
88
130
102
54
106
106
102
90
54
59
81
54
87
128
124
178
77
124
125
164
139
119
145
125
136
139
61
140
160
69
98
87
131
117
87
147
199
85
133
54
142
127
80
81
148
160
190
67
122
49
104
95
116
54
104
108
151
143
127
92
93
141
121
108
80
98
113
127
126
132
93
157
92
172
118
127
134
101
168
95
131
134
131
80
92
113
116
125
103
135
147
89
148
118
155
116
69
111
108
67
119
139
146
105
134
107
117
141
54
123
92
138
120
83
76
125
108
108
92
120
144
98
68
124
100
89
102
83
102
145
54
121
83
141
172
137
96
87
110
158
98
107
103
160
91
97
149
109
94
128
103
102
123
103
87
67
126
82
77
108
94
143
142
122
139
87
128
77
103
118
113
124
72
133
94
95
83
144
103
119
121
119
76
204
131
90
113
137
67
139
127
110
95
124
115
166
101
129
139
117
157
112
125
90
102
103
114
113
187
136
145
103
102
115
49
141
93
85
144
147
102
133
127
78
81
96
148
120
95
102
149
59
95
160
135
133
87
129
115
122
164
49
97
94
102
108
141
116
141
141
149
113
180
141
144
165
135
173
77
133
128
102
87
98
123
87
127
80
98
149
137
102
87
101
143
102
106
116
92
59
119
74
112
105
90
85
96
106
95
157
112
85
113
133
124
81
149
142
108
126
103
181
109
134
144
79
103
131
135
81
76
115
130
84
124
83
108
97
116
82
104
72
165
103
94
118
103
93
108
102
126
128
108
90
140
85
99
97
76
96
121
147
99
54
54
103
95
154
150
94
122
95
157
45
81
116
135
144
107
160
131
85
108
186
116
103
130
130
97
112
122
129
102
128
83
98
108
191
81
129
102
77
147
86
83
133
111
135
117
135
125
187
100
106
54
83
102
106
106
107
121
118
85
91
148
157
54
158
77
107
145
107
80
146
54
106
77
158
133
90
105
98
139
93
94
82
222
125
139
74
103
84
98
113
98
76
146
95
127
83
113
108
129
161
74
67
108
105
54
90
98
98
129
134
141
113
54
133
172
110
184
67
148
100
87
107
115
104
102
164
158
130
93
82
120
110
140
72
49
54
102
98
148
113
78
54
73
104
83
194
97
97
164
83
129
108
139
119
135
74
128
76
131
113
112
94
54
141
124
119
113
148
157
127
68
101
137
144
45
165
122
115
81
172
83
144
133
123
110
133
130
127
148
106
108
113
112
106
117
62
135
106
108
92
115
125
83
81
145
154
61
143
54
100
218
147
68
144
152
110
81
108
106
108
107
90
137
106
132
54
125
118
80
143
134
103
172
130
104
130
98
87
54
138
82
139
123
135
105
139
54
85
98
101
125
145
158
67
98
119
91
94
110
101
82
116
99
177
138
81
74
131
77
141
54
100
76
97
147
100
195
107
177
100
95
85
71
127
103
102
49
74
113
131
113
103
137
103
105
113
108
81
81
140
168
103
105
88
105
149
92
98
76
61
129
93
107
76
143
151
93
131
109
130
54
49
105
144
93
114
193
129
107
149
146
138
108
109
149
91
141
117
77
126
94
125
133
95
74
118
168
113
99
74
186
121
174
132
68
113
87
127
94
115
147
98
197
155
102
117
129
113
128
114
59
119
80
144
179
106
109
96
141
54
102
110
117
134
102
123
74
101
144
135
143
102
143
103
108
129
105
110
145
139
111
54
103
156
78
128
76
116
95
177
151
116
105
141
104
106
170
127
148
128
161
95
93
105
109
102
92
102
105
128
188
127
87
98
130
132
151
131
90
111
162
140
96
110
108
59
68
160
106
118
148
120
112
156
81
135
96
77
96
158
87
98
143
131
133
116
108
133
140
124
145
83
148
133
82
124
94
106
194
108
94
108
128
121
93
108
135
113
144
140
97
160
122
87
98
122
117
82
98
101
124
54
102
145
112
114
122
113
67
94
119
120
82
102
118
172
68
149
92
80
87
139
98
104
121
95
102
115
141
103
105
86
139
143
49
149
82
83
83
110
102
141
131
133
120
130
96
108
172
76
148
113
90
108
87
153
97
117
90
87
123
155
113
140
127
127
121
91
110
81
109
80
96
91
102
135
83
175
79
54
118
108
113
81
87
113
125
92
102
173
128
101
106
105
116
116
75
122
114
138
96
141
141
144
130
131
161
106
129
137
136
169
135
148
147
89
145
125
117
90
105
59
98
127
131
95
150
145
139
83
197
121
82
124
134
128
122
126
155
54
125
151
103
124
67
105
126
90
112
125
116
102
98
139
82
143
54
133
111
111
139
85
90
90
163
138
109
147
151
108
119
176
54
147
121
85
115
150
85
87
147
125
96
106
96
87
108
133
145
59
119
122
154
85
98
161
116
115
127
103
95
81
118
76
102
161
125
114
102
145
82
93
103
49
102
78
145
124
54
106
98
97
97
93
160
95
167
129
131
69
135
155
120
106
115
177
81
120
84
85
131
144
104
99
54
142
91
128
145
96
167
101
96
102
106
59
118
131
81
127
123
67
124
171
74
95
82
111
125
159
99
102
115
105
112
42
139
99
133
99
147
108
79
135
128
136
172
88
99
141
127
107
106
57
95
111
170
59
95
128
69
124
135
141
143
168
95
146
54
149
134
128
124
74
108
93
143
123
132
87
98
148
123
74
144
145
94
127
100
130
148
105
108
141
113
85
131
132
108
77
114
172
113
117
93
74
177
133
119
108
146
134
95
101
125
120
104
177
102
103
220
135
103
165
54
143
98
108
93
147
131
128
98
113
82
125
113
144
122
82
118
148
91
175
121
87
153
104
82
96
112
108
49
104
148
113
117
97
100
152
120
119
106
54
137
110
97
102
123
138
135
83
104
89
134
133
132
89
227
131
103
125
99
93
91
148
126
148
105
117
142
132
83
106
191
92
54
144
116
116
128
131
98
123
98
126
170
116
59
91
120
110
95
195
114
102
154
107
108
79
76
133
102
118
86
106
115
131
141
87
125
95
90
132
54
85
153
155
141
77
105
54
182
115
113
168
88
106
136
113
118
180
54
67
102
110
112
98
97
140
82
68
111
106
125
108
144
101
133
170
76
81
151
109
136
160
96
146
150
135
87
113
49
49
160
93
156
85
85
108
108
145
83
89
133
144
112
54
148
118
93
147
105
132
160
116
87
95
151
80
108
116
111
71
54
122
99
105
110
103
104
74
49
123
118
105
87
106
83
106
155
95
95
108
54
92
98
94
61
102
49
169
141
124
93
107
126
109
97
96
94
68
102
108
177
102
144
127
105
117
132
130
148
83
63
76
102
102
140
97
153
98
167
127
182
108
49
134
143
78
105
76
190
105
84
128
123
95
113
95
108
108
86
94
59
143
118
128
116
161
112
103
144
133
115
59
99
144
125
158
49
138
114
103
109
54
144
127
103
118
106
103
49
112
133
54
78
143
83
69
121
121
61
54
116
82
81
98
132
98
119
110
95
97
105
143
96
143
99
102
149
118
117
115
172
119
82
103
103
102
98
95
79
98
78
78
106
114
137
67
206
167
148
124
115
99
125
134
143
131
113
91
114
141
77
104
108
140
135
54
148
95
87
129
118
117
182
157
103
119
112
125
113
148
138
146
94
122
125
142
108
148
123
115
102
94
139
88
98
139
114
54
54
113
100
167
147
54
149
69
121
119
109
111
103
135
54
132
124
122
84
89
154
80
102
142
171
115
127
162
98
97
54
120
96
81
105
87
145
116
116
81
102
120
77
49
127
191
87
105
151
137
95
95
54
87
78
59
106
134
106
166
119
147
145
84
77
142
77
142
134
133
113
110
84
117
110
125
111
81
103
128
127
127
108
72
125
172
118
102
97
125
95
96
79
103
127
169
146
76
54
145
105
77
139
139
87
94
96
128
110
125
81
105
54
97
121
138
158
109
114
131
108
154
54
120
131
132
126
137
105
152
106
135
59
151
49
170
73
82
125
139
104
120
110
102
128
128
85
124
96
98
112
95
102
110
156
116
49
102
135
118
133
141
118
127
180
115
83
85
159
93
114
99
100
154
96
119
128
158
190
158
106
76
54
81
118
115
100
102
148
81
59
102
116
112
96
93
98
54
102
117
138
115
140
135
144
105
90
147
99
111
122
143
101
117
123
127
112
122
108
216
97
59
189
120
108
54
102
113
111
98
54
81
112
119
76
150
118
96
145
120
113
104
119
95
104
105
115
129
68
87
108
94
148
170
119
146
54
104
98
95
90
141
96
73
87
158
110
101
96
103
77
102
101
133
83
144
87
120
140
116
117
132
67
143
141
109
102
140
82
120
128
92
122
139
125
79
110
92
159
112
200
132
160
69
112
138
99
81
138
85
118
143
145
116
153
125
84
95
129
158
59
115
149
112
107
119
102
134
54
200
149
151
144
90
116
129
135
175
178
54
91
127
104
115
130
106
102
122
81
76
126
133
130
93
143
76
111
142
89
111
146
102
161
91
95
133
54
143
98
90
109
103
125
90
125
49
115
129
133
171
117
122
146
103
107
135
106
125
128
98
92
77
125
153
112
148
99
168
90
73
78
154
120
129
165
129
81
78
99
189
82
124
129
149
84
102
122
109
121
122
145
128
180
95
94
103
85
103
147
106
111
124
82
89
113
210
122
54
202
121
74
82
98
113
168
61
103
118
82
124
128
118
127
133
87
119
127
95
54
103
93
115
108
100
103
133
91
124
151
108
97
125
133
123
176
92
139
74
130
95
127
122
129
154
82
124
126
91
116
105
171
112
137
102
87
165
116
87
146
156
107
59
177
84
120
85
102
120
138
116
107
113
134
208
143
109
77
123
102
90
54
54
124
87
103
108
134
91
95
139
102
107
147
144
96
151
143
105
98
131
94
185
92
140
113
121
101
160
141
95
103
123
54
135
133
131
104
114
121
149
69
156
107
96
126
198
135
115
93
144
148
102
118
161
96
82
108
146
105
54
140
95
102
135
105
97
133
192
97
79
168
193
110
101
101
69
138
115
102
117
101
84
149
107
132
153
102
107
123
106
102
117
161
138
111
99
124
148
119
125
113
103
118
127
158
106
140
102
87
54
128
81
147
97
112
166
125
118
102
77
141
115
150
103
129
102
172
49
130
80
128
118
133
116
156
93
87
127
108
131
129
106
117
87
170
61
102
116
125
98
108
82
135
188
165
159
129
147
90
110
127
120
97
76
90
93
113
81
108
122
117
121
117
157
158
80
147
49
145
117
121
158
120
134
171
147
118
90
134
168
112
95
110
156
103
120
108
78
102
100
90
86
120
78
120
90
97
145
127
129
82
54
102
142
156
54
127
117
141
159
76
105
103
91
108
83
102
81
188
136
76
92
139
169
115
129
99
142
90
114
135
128
81
96
108
81
147
102
102
108
118
149
61
97
120
116
94
93
177
139
111
154
116
102
61
143
107
65
126
108
135
127
141
95
108
127
158
115
102
107
105
128
135
86
59
129
127
135
134
98
124
123
98
135
78
76
90
105
77
147
123
49
136
133
135
163
124
112
146
105
133
122
105
161
103
90
104
129
68
123
143
134
188
74
87
118
49
104
67
105
92
74
126
123
147
54
123
104
103
137
112
177
95
172
54
146
115
166
176
140
54
92
193
107
114
87
145
200
106
103
111
117
125
90
121
121
116
105
142
157
139
89
87
67
68
140
158
84
105
102
109
112
54
82
119
74
93
140
128
147
136
81
91
54
138
54
153
151
97
140
134
115
149
76
124
112
148
190
105
82
59
145
95
109
114
120
149
130
122
128
140
115
122
95
108
133
94
120
107
120
168
96
62
116
158
86
59
155
69
145
125
118
114
96
78
109
76
113
154
84
114
131
127
90
92
97
102
112
127
115
91
167
110
108
127
90
185
102
93
98
200
102
139
79
86
107
160
111
155
192
122
126
102
77
77
76
129
119
54
125
96
139
116
116
110
137
116
126
141
102
110
141
74
117
102
112
80
139
49
128
157
82
67
101
127
113
59
155
108
146
107
93
108
101
75
49
81
118
153
148
99
135
135
120
157
54
146
108
114
98
108
137
110
105
118
160
137
112
100
139
95
140
118
175
77
161
105
74
77
119
94
117
89
141
118
176
83
118
162
78
146
121
116
102
54
119
95
120
169
76
93
87
128
61
150
135
76
90
96
127
164
139
74
82
76
83
123
103
108
102
119
67
153
102
107
74
173
123
115
112
118
127
87
67
98
127
149
138
54
107
152
163
95
103
108
97
103
120
122
112
172
108
142
120
78
149
105
138
54
87
151
154
85
74
148
113
108
137
129
137
54
127
104
120
141
125
81
68
120
77
135
104
85
125
139
136
85
119
54
132
114
145
120
97
102
127
131
111
107
93
76
74
144
135
90
110
126
152
103
141
116
100
129
90
97
122
141
117
116
113
100
107
120
115
54
116
128
103
130
95
143
95
116
119
54
86
93
83
78
98
96
173
109
84
132
54
108
125
140
154
133
97
131
148
116
124
67
78
126
103
81
135
95
113
105
115
118
147
188
143
87
123
83
100
91
121
108
157
147
99
125
54
122
78
168
76
93
76
133
142
96
106
100
129
135
139
70
139
101
111
54
101
130
140
106
96
104
128
97
74
98
102
132
92
108
54
133
147
81
93
113
108
112
137
83
125
141
103
135
140
218
156
129
100
122
133
108
94
109
163
49
168
106
134
131
141
59
73
108
112
95
143
109
112
103
116
155
129
127
200
114
74
128
103
114
149
137
54
91
95
104
128
108
81
82
128
107
87
131
115
103
107
90
132
103
113
108
97
127
59
112
154
157
133
113
143
54
102
107
108
70
118
104
95
116
102
122
72
97
74
129
123
57
145
98
95
83
138
95
136
112
144
124
100
97
153
129
85
145
133
151
124
128
85
87
97
128
95
98
189
85
141
83
158
143
104
148
162
163
87
154
54
148
161
113
129
113
158
177
113
102
93
100
110
85
118
106
105
122
161
133
103
155
90
97
131
125
146
129
83
102
108
106
118
120
115
124
122
90
175
151
87
152
77
103
151
81
131
99
110
78
95
113
67
97
111
127
94
84
137
149
141
115
125
111
105
149
146
170
98
98
90
108
77
54
87
137
54
93
141
148
104
117
49
122
148
92
115
138
149
109
119
131
94
124
147
82
123
97
105
74
96
163
77
90
165
139
136
150
102
105
158
133
104
127
167
145
98
81
123
128
82
108
147
126
141
145
116
107
105
137
173
119
106
164
68
90
112
114
82
120
110
197
83
158
138
172
81
90
110
99
77
119
151
125
83
121
98
105
95
138
97
133
87
102
128
97
107
98
168
127
104
67
95
87
142
118
123
119
165
95
138
86
108
82
98
77
138
131
172
133
139
170
116
167
135
128
74
100
123
54
181
161
136
111
87
98
164
82
90
105
90
84
84
113
108
104
112
120
61
121
123
164
127
145
102
107
91
61
120
112
105
175
68
99
135
98
137
123
169
119
147
118
92
83
139
100
77
99
118
114
148
81
103
111
138
135
138
107
114
98
148
119
102
122
111
119
103
133
82
126
95
79
161
127
115
74
142
100
133
151
90
108
59
132
95
161
110
98
131
133
144
148
180
112
128
102
108
116
131
108
177
117
165
95
87
165
119
98
154
89
96
93
120
88
160
84
100
87
130
143
97
98
54
112
85
127
114
113
107
106
73
102
131
74
113
143
163
145
149
54
148
102
109
97
142
129
107
102
81
113
100
96
94
98
108
77
140
129
127
65
76
132
148
149
136
83
161
154
95
111
124
95
100
83
108
87
100
118
49
158
106
193
85
108
156
89
96
182
103
143
120
102
61
184
131
98
76
147
108
74
134
133
101
98
78
87
145
120
228
132
78
95
163
98
130
68
102
74
94
114
140
95
132
125
152
138
140
61
105
105
100
98
156
142
102
144
113
154
124
122
113
127
67
200
158
133
102
139
149
74
103
54
145
117
124
106
93
95
143
78
118
102
98
78
129
99
94
113
97
146
182
113
141
108
103
134
114
151
90
111
126
177
67
97
144
101
124
145
132
201
76
106
148
94
132
120
120
81
147
128
123
119
90
165
127
144
134
165
123
81
164
138
100
114
109
102
61
117
86
97
168
98
130
108
132
98
153
87
125
104
68
82
81
102
144
108
94
83
105
136
166
90
86
113
177
114
143
184
54
129
123
136
104
101
121
122
68
111
113
125
119
77
105
129
112
143
81
137
49
155
130
131
145
126
110
127
102
99
116
105
76
164
95
115
93
91
148
122
87
126
110
78
140
97
106
133
160
90
143
99
135
79
130
103
143
149
108
116
88
130
67
121
111
102
54
129
152
103
129
101
160
145
107
140
76
119
117
129
78
93
145
82
54
111
90
122
133
137
100
117
82
165
116
77
127
143
102
161
132
90
145
126
105
115
128
200
99
147
160
98
142
54
105
99
102
140
143
130
76
151
54
158
76
76
154
109
101
180
107
95
82
129
131
134
98
141
135
121
148
103
103
105
106
131
144
98
150
118
83
54
133
128
109
148
87
139
102
138
180
144
90
114
111
108
76
125
119
158
122
195
179
59
90
137
107
106
149
85
169
225
125
130
84
83
112
102
119
102
145
145
133
98
144
128
101
54
112
152
118
85
96
103
72
91
133
114
82
186
96
103
116
118
107
83
207
124
123
177
109
121
128
127
130
102
128
87
110
123
83
140
111
148
100
102
99
67
134
49
105
93
77
137
109
108
91
123
102
182
122
107
123
102
108
102
108
113
128
141
98
83
69
124
95
135
133
107
155
101
144
90
103
158
127
134
130
127
95
78
142
118
92
111
120
87
74
151
145
98
77
124
96
123
78
149
144
162
123
105
109
168
98
124
137
100
121
116
158
80
54
101
121
143
110
98
54
78
158
113
83
108
49
96
103
96
194
188
93
146
100
108
94
155
88
93
118
68
148
174
132
105
146
141
89
83
144
112
81
65
125
116
146
101
72
119
135
92
54
122
127
135
142
143
133
54
81
112
82
116
99
59
115
177
178
124
106
108
97
49
102
158
148
59
131
91
154
84
91
136
120
139
128
126
117
96
77
107
80
103
91
130
49
163
140
106
59
109
124
104
95
108
122
175
159
129
150
123
133
54
122
83
116
133
59
95
146
154
81
131
89
133
83
116
126
111
74
94
105
87
76
69
115
113
97
148
125
93
125
103
77
105
118
109
103
54
145
100
101
54
94
103
132
183
107
121
153
105
115
143
168
81
111
140
125
102
110
83
128
79
67
148
54
101
128
128
99
132
54
98
150
112
129
110
180
117
131
80
113
107
98
175
132
107
95
85
96
92
103
97
49
131
140
95
113
139
129
141
103
127
103
54
103
147
157
103
98
98
54
228
95
154
90
201
114
108
108
49
98
76
129
166
132
114
118
78
95
137
74
95
120
142
49
186
108
82
114
116
140
125
49
102
143
123
127
75
147
99
118
120
149
102
120
125
124
113
114
108
97
161
90
54
149
102
54
125
140
102
147
132
146
123
74
120
81
114
108
99
98
54
120
74
120
110
81
67
148
131
127
115
107
132
101
95
85
119
156
108
102
95
81
141
135
95
107
92
102
90
117
102
127
148
108
134
103
126
91
127
180
125
99
67
101
113
127
90
113
189
105
175
128
134
121
106
138
124
102
78
74
98
78
123
130
158
104
115
54
87
162
110
85
84
131
127
54
79
119
108
108
115
101
98
165
129
139
103
104
158
105
103
95
128
108
111
118
65
186
125
119
111
102
98
141
122
82
148
105
115
87
139
113
135
68
118
95
105
99
173
85
102
102
59
154
140
113
113
158
121
106
99
121
49
154
113
115
116
128
49
130
157
123
151
133
114
116
89
133
108
136
95
103
177
96
145
145
87
108
95
74
117
161
112
143
82
117
113
144
150
113
102
76
102
135
59
144
127
114
120
124
144
90
97
88
104
120
113
49
82
95
83
133
108
80
95
105
108
152
119
153
102
138
82
159
74
164
77
124
98
125
106
74
132
102
156
49
150
87
135
145
90
132
134
99
130
116
110
105
54
90
54
105
133
101
108
143
105
105
125
86
95
132
61
160
67
172
119
49
118
118
131
98
140
84
146
100
107
128
122
127
97
99
98
61
134
119
109
143
167
129
102
54
109
59
153
54
77
100
150
99
120
76
162
136
132
81
144
186
77
116
121
112
95
102
74
153
108
91
134
98
87
93
125
199
105
135
131
77
54
144
121
157
105
108
105
116
75
159
106
158
93
82
123
94
92
83
105
130
148
91
172
80
145
135
149
143
138
125
78
129
105
97
99
145
90
125
146
97
112
126
113
102
78
107
118
121
171
131
99
103
106
127
103
105
102
135
54
123
61
138
105
98
49
112
118
144
135
177
105
135
127
109
128
125
122
102
126
80
125
73
110
145
119
116
105
106
149
95
102
65
185
164
127
119
115
143
95
91
165
100
106
225
108
97
59
126
113
128
119
148
151
95
149
146
108
142
95
108
120
75
129
95
87
54
177
95
147
94
98
113
145
144
93
125
123
74
68
157
102
49
108
98
108
99
93
54
90
105
135
133
104
78
59
182
103
150
90
160
125
125
103
133
149
122
101
103
125
109
153
104
74
113
77
132
98
101
76
111
139
123
128
113
93
124
81
96
61
73
125
129
142
108
143
124
107
104
86
49
159
113
119
108
124
135
98
135
119
159
68
54
76
98
129
128
138
127
54
155
88
185
54
130
83
107
133
140
82
94
137
83
118
124
54
102
96
131
82
107
61
54
81
149
86
74
127
112
102
122
99
168
125
92
93
199
139
97
126
80
164
92
107
115
140
125
90
148
117
113
120
159
141
127
61
104
109
115
81
85
102
67
67
131
101
105
129
105
123
54
123
128
153
138
90
80
112
114
151
108
78
161
59
87
54
115
74
107
146
122
120
95
100
165
88
130
120
61
125
191
83
137
103
112
106
74
190
137
83
139
74
91
158
106
81
122
102
85
135
92
128
148
145
105
139
108
130
100
161
116
54
129
103
118
98
102
98
74
87
113
91
83
54
149
109
161
97
76
59
95
90
121
143
121
90
54
107
148
102
159
59
69
117
145
129
92
49
108
101
124
118
96
95
87
49
98
135
128
134
147
105
110
116
108
144
74
102
177
82
112
105
143
114
95
95
111
103
135
109
81
91
177
54
129
156
61
128
77
114
101
95
113
83
116
120
124
73
62
149
59
129
123
114
123
82
106
108
101
133
146
98
54
116
115
125
82
49
120
150
69
122
151
93
145
96
148
93
100
91
148
96
97
113
126
104
146
188
101
148
116
117
87
148
82
112
165
103
74
157
131
122
120
197
157
110
106
135
101
144
109
89
91
108
81
133
103
153
108
95
129
129
95
67
101
152
113
120
149
96
108
77
121
92
95
111
172
145
122
96
145
77
61
147
127
140
167
165
81
94
96
74
158
138
140
69
81
96
104
101
107
110
82
98
107
133
144
145
114
142
125
102
102
125
113
111
160
98
68
125
177
102
98
163
129
116
145
143
103
143
133
155
113
103
132
98
74
158
102
94
146
98
127
131
80
81
110
80
91
95
87
177
131
118
73
115
76
108
102
107
82
90
125
102
140
110
54
113
154
107
113
49
133
183
182
148
131
176
137
102
81
149
130
77
133
111
102
82
128
74
49
49
97
90
54
123
112
59
123
127
95
54
102
135
54
102
139
158
124
146
136
119
128
108
99
75
110
109
116
54
86
69
125
118
105
107
116
150
105
116
124
133
104
102
54
105
95
67
93
96
113
114
74
168
142
106
139
87
85
79
135
118
104
144
140
141
98
129
95
103
98
172
124
95
126
137
135
115
148
54
95
108
106
112
128
96
113
103
81
111
98
110
54
102
120
87
103
106
119
84
137
180
194
144
150
154
105
165
157
170
68
153
125
102
113
90
144
96
76
83
90
131
138
97
95
98
154
139
95
157
182
146
125
140
95
68
110
135
117
101
118
115
172
135
142
113
76
135
93
114
98
115
109
111
145
149
96
148
102
146
84
104
110
134
144
127
153
102
174
142
113
118
95
108
87
103
101
138
93
137
111
115
123
155
149
93
94
153
144
104
113
172
92
59
148
98
86
161
80
115
159
93
98
98
85
89
92
149
102
145
123
119
76
153
77
123
126
92
113
148
167
82
133
122
125
88
147
122
125
148
105
102
139
83
108
118
114
104
54
105
99
207
59
145
194
78
108
82
144
91
135
151
95
164
137
90
86
102
168
130
155
115
102
134
54
114
126
95
141
102
92
93
100
148
95
127
90
118
79
77
159
93
108
135
123
98
133
62
98
87
109
89
125
79
108
97
80
108
135
120
148
117
69
131
116
123
95
111
96
149
102
116
98
142
54
96
108
135
106
90
100
85
133
77
103
125
78
115
120
81
98
103
81
117
97
149
107
135
114
133
136
54
100
134
95
80
104
110
113
132
138
133
117
91
77
122
77
103
116
148
123
132
110
91
112
162
76
122
101
107
69
127
115
113
54
93
102
121
129
89
95
108
82
108
129
122
95
163
133
105
80
116
127
148
139
114
202
115
114
148
114
101
59
101
103
139
126
177
49
112
103
74
177
113
115
131
87
133
107
127
147
150
59
59
61
135
125
93
107
129
129
130
150
135
192
125
88
150
94
106
105
145
118
54
102
186
98
86
114
91
119
98
96
103
99
94
105
131
93
85
78
100
127
105
121
74
54
144
135
142
139
132
110
113
161
90
78
154
111
144
74
73
98
129
81
169
150
98
112
128
81
136
101
114
107
180
54
177
93
54
100
98
101
111
115
140
74
119
54
98
123
148
102
59
163
132
190
70
131
154
156
84
111
117
81
143
67
106
122
133
117
112
107
89
54
108
115
143
54
153
97
129
54
90
135
100
85
105
143
113
138
144
170
146
65
105
49
74
119
81
133
54
174
136
125
120
90
111
80
101
173
125
67
73
129
115
146
166
102
121
149
105
102
67
114
152
80
141
125
126
81
157
100
59
80
154
115
149
73
142
93
95
74
115
87
110
107
102
113
96
146
95
112
141
96
146
102
132
118
189
116
81
95
133
143
129
100
76
127
77
77
102
74
129
112
111
137
77
119
131
54
163
102
108
134
85
54
85
157
89
98
83
138
113
92
146
134
74
45
84
158
104
111
133
108
77
93
128
74
93
85
172
158
108
103
131
151
135
162
59
104
112
128
106
179
148
54
104
80
49
109
108
128
90
156
103
163
93
146
107
76
137
119
116
110
159
108
122
137
111
105
133
151
221
94
99
115
85
113
86
104
121
91
95
77
168
125
81
105
74
171
143
101
143
81
105
147
93
82
138
155
170
105
125
158
95
100
134
154
131
129
74
86
108
188
116
88
133
100
145
87
93
91
102
90
90
124
54
172
127
99
76
141
118
74
101
146
95
99
88
175
125
123
102
81
125
80
98
148
125
153
95
126
98
106
164
138
119
128
106
140
113
151
154
88
89
124
126
85
65
59
93
131
78
107
85
139
118
148
118
117
133
95
114
170
114
102
125
95
129
92
83
118
146
96
54
168
115
80
87
98
134
98
117
86
182
157
153
132
110
54
136
106
173
102
108
90
126
105
59
151
95
54
112
69
120
132
81
108
162
130
126
90
107
102
105
147
102
101
140
106
89
135
110
130
112
125
108
157
148
154
118
91
68
98
114
108
108
106
141
135
125
151
131
118
108
68
105
108
133
165
74
87
102
93
158
108
76
144
108
83
74
127
82
119
54
158
128
122
102
80
144
102
107
149
121
117
54
120
112
172
133
165
99
131
90
107
103
123
82
117
106
133
130
90
108
138
76
147
85
74
116
54
119
110
77
104
133
54
117
114
164
91
81
150
113
158
77
77
125
83
143
136
81
98
100
95
161
81
141
143
124
141
54
100
118
140
121
133
108
135
122
114
101
109
102
116
95
125
104
139
115
54
144
119
155
94
141
98
149
133
78
138
85
129
132
115
108
96
54
149
139
148
49
96
97
93
112
131
127
83
75
145
102
154
110
143
49
155
83
133
95
93
171
115
106
107
129
158
126
165
103
71
82
113
140
120
148
74
76
93
91
146
133
125
129
131
103
96
124
135
59
94
106
54
102
127
95
108
118
77
163
148
102
103
87
85
114
173
90
95
54
124
131
98
104
141
102
54
102
99
119
54
92
132
112
237
97
106
101
49
82
54
131
112
88
112
157
134
145
134
105
90
133
144
111
97
141
121
117
162
95
99
139
125
137
177
107
191
111
155
105
126
148
76
107
130
127
98
113
103
116
95
104
164
180
133
94
113
80
123
81
87
104
100
122
99
97
54
54
99
91
135
135
59
76
54
82
112
120
81
180
123
176
82
119
92
124
100
140
102
146
131
119
94
133
96
104
86
165
133
104
78
110
112
54
101
127
138
81
121
142
139
103
133
111
80
89
131
118
130
156
153
83
102
98
131
81
93
130
141
120
148
162
133
110
145
140
77
136
67
152
133
131
134
96
128
97
114
95
118
119
125
95
123
99
65
85
131
76
87
101
90
155
139
125
132
154
96
105
117
145
105
123
114
133
151
123
140
153
118
103
131
130
132
164
95
76
123
147
93
111
59
103
110
169
135
98
128
152
102
100
98
154
165
76
126
147
69
115
90
112
194
147
154
96
90
106
95
83
54
74
107
128
121
119
99
110
111
146
104
135
99
139
112
137
127
116
125
131
147
87
74
101
121
49
93
84
143
104
87
85
127
148
128
128
117
158
120
104
93
107
148
54
133
103
77
92
177
94
90
81
109
95
213
161
148
148
108
98
54
86
108
106
102
94
116
99
104
119
148
148
106
49
138
97
110
102
87
131
95
115
161
92
97
107
91
96
99
98
95
93
102
114
100
112
133
125
178
105
102
104
116
90
96
98
90
104
102
131
74
85
165
100
113
78
113
125
59
99
103
49
119
120
135
104
54
70
69
77
74
105
179
128
67
132
156
148
139
93
149
97
77
105
93
103
111
93
93
115
132
86
183
120
98
133
113
125
122
113
126
105
112
106
102
83
106
106
112
78
126
88
96
107
104
134
158
54
140
76
127
135
127
125
120
112
62
108
77
99
114
122
125
140
182
107
108
155
108
149
87
81
117
133
116
126
122
112
137
151
177
139
126
98
148
82
157
101
110
81
96
96
129
165
116
156
107
78
128
92
61
108
105
130
68
106
128
59
73
99
108
98
91
61
113
102
95
54
125
97
139
108
67
49
74
130
112
96
78
123
117
113
124
152
86
113
100
108
123
125
112
109
85
91
148
113
156
106
91
129
90
129
143
118
74
74
146
104
150
133
124
125
147
80
142
125
76
127
95
113
108
102
106
110
54
118
120
110
105
54
185
108
146
112
125
82
159
129
121
162
142
138
117
125
148
86
98
170
82
90
133
110
177
149
93
83
93
130
91
113
112
108
163
131
102
125
113
94
49
120
135
66
165
135
95
49
154
91
133
59
67
127
59
71
102
147
97
202
108
97
108
98
155
116
108
121
120
114
143
122
127
108
111
54
67
108
111
107
98
82
110
105
124
98
94
130
94
68
114
95
83
93
54
91
76
108
143
99
77
95
78
135
80
135
103
110
124
67
95
93
91
140
133
136
154
141
138
108
87
102
91
93
158
149
77
135
108
158
45
49
106
140
67
155
110
79
131
105
164
79
117
112
112
93
106
126
122
62
111
167
99
87
125
82
146
143
122
91
131
120
118
101
118
103
78
182
112
115
108
89
160
143
134
117
116
95
112
134
81
130
85
117
102
77
99
118
147
119
143
104
110
90
125
105
143
116
69
105
152
136
136
54
112
54
126
108
148
106
80
81
106
86
133
73
102
96
93
114
129
130
96
103
145
143
95
128
130
95
148
74
103
108
95
114
95
113
59
97
168
103
102
129
102
143
103
68
109
131
138
74
80
93
103
106
108
95
113
125
110
95
124
155
161
177
161
113
121
83
137
65
125
67
133
97
139
148
165
145
90
54
54
54
93
95
105
173
150
81
106
76
136
99
152
78
133
101
129
129
89
90
103
150
154
78
152
49
90
144
106
165
97
94
158
110
108
147
129
95
113
147
73
131
130
96
111
154
99
108
107
118
125
111
140
125
119
138
95
145
107
118
132
139
82
129
139
102
96
125
131
107
102
102
113
87
81
119
146
94
150
68
137
97
108
115
89
114
83
59
140
96
90
161
59
138
158
76
148
154
115
153
135
224
125
49
115
113
157
125
108
144
107
74
98
100
132
54
91
98
54
143
76
93
102
84
136
135
116
144
102
112
78
89
87
155
148
113
134
105
59
101
96
181
89
83
93
101
179
144
83
102
76
118
120
102
114
145
125
54
127
77
124
118
96
136
102
92
88
117
83
94
123
87
133
172
76
140
130
131
98
108
125
81
108
102
144
130
87
139
118
126
125
49
135
105
180
128
107
105
133
54
54
128
165
131
113
160
125
153
101
125
123
81
135
102
102
157
100
113
107
125
85
61
140
100
114
137
112
115
134
95
110
90
130
118
112
151
147
93
182
112
78
136
122
123
158
237
136
87
155
128
128
102
103
84
140
103
138
102
135
98
107
103
144
125
160
107
54
107
131
102
98
94
54
122
85
98
54
143
85
97
73
54
134
124
177
106
106
90
95
120
135
128
98
142
54
98
108
113
157
135
104
82
98
76
49
86
95
141
133
98
98
95
69
104
72
169
107
164
140
200
167
83
146
135
139
115
107
145
156
91
142
102
121
83
106
98
116
128
97
140
102
93
74
143
86
54
83
102
95
124
59
129
127
110
96
119
161
95
54
129
78
129
116
89
151
129
162
115
93
145
85
98
122
99
160
125
125
150
184
108
98
91
107
108
116
94
96
164
133
114
68
89
118
90
108
132
180
90
111
107
103
172
96
129
112
113
149
145
130
144
86
205
102
119
54
96
132
121
106
114
134
125
91
85
138
162
164
118
145
74
100
127
141
108
98
74
135
121
98
93
150
144
54
94
122
151
77
83
112
160
125
73
139
67
108
130
116
177
145
134
127
95
77
144
147
74
100
103
172
108
103
102
108
160
137
93
145
105
54
88
103
151
114
97
81
84
153
182
135
105
113
146
74
189
115
74
158
125
118
110
76
109
69
101
110
100
78
82
166
153
59
129
115
117
167
130
147
140
54
102
121
161
117
93
104
81
109
108
112
107
113
127
163
128
105
118
94
168
133
125
67
90
124
87
135
162
142
102
104
103
158
153
54
139
109
59
158
49
82
54
100
138
98
80
132
117
146
129
85
103
105
87
122
140
78
166
73
135
95
143
96
92
141
130
108
143
155
77
128
104
161
114
190
107
112
98
122
81
92
98
149
197
126
110
113
144
121
98
98
103
111
54
86
93
93
172
125
95
59
79
107
131
94
115
146
87
112
115
149
104
108
127
125
173
128
101
115
141
145
77
158
147
82
113
137
107
108
127
148
99
114
77
102
133
153
161
98
151
103
113
129
77
97
131
144
125
54
67
131
126
97
107
93
135
89
153
114
164
143
116
124
105
83
103
158
158
151
75
105
131
95
134
90
87
102
113
113
81
54
81
109
144
102
124
115
170
141
122
130
136
132
54
74
112
96
150
108
102
133
118
69
74
110
98
90
146
154
126
141
82
95
140
54
81
118
98
150
59
147
163
179
143
157
150
159
122
102
101
163
98
54
84
102
125
166
101
125
137
101
109
137
95
92
126
74
111
95
102
74
129
142
139
161
110
54
49
114
69
82
113
91
142
95
89
59
147
89
103
139
133
61
121
135
98
93
111
77
122
95
142
185
76
127
54
122
129
74
113
168
129
95
93
127
97
81
96
81
175
116
102
147
127
74
112
158
145
115
138
162
146
79
87
135
135
162
113
115
141
116
140
81
138
109
74
114
118
88
135
111
87
106
151
149
129
74
98
74
115
95
95
49
125
95
134
125
118
54
128
96
59
115
77
130
100
76
167
117
113
106
106
149
129
102
141
120
120
114
105
45
74
102
148
138
99
103
97
158
146
122
155
122
151
97
104
145
78
91
112
99
131
162
106
95
124
81
54
54
146
120
54
101
149
83
81
161
170
124
114
144
97
120
138
95
101
105
61
147
105
105
133
89
173
105
118
86
110
156
93
61
113
91
109
98
103
68
125
102
156
91
89
172
110
149
144
98
83
108
104
137
83
116
136
177
118
54
68
99
125
95
118
181
129
152
54
67
150
131
83
120
102
95
147
140
84
154
123
122
54
153
165
120
141
102
163
106
84
102
123
144
112
135
83
81
74
137
150
100
82
120
138
49
103
133
127
98
67
92
92
93
165
113
122
165
102
98
144
111
125
175
107
87
107
167
103
161
135
146
143
105
109
107
146
128
105
108
128
87
105
158
113
133
158
92
127
156
107
90
108
180
59
106
109
116
116
128
165
106
113
109
136
113
106
81
113
139
102
131
116
135
140
137
102
158
61
123
148
150
112
54
105
115
125
113
124
148
139
118
143
139
156
169
141
129
131
148
128
158
100
135
54
133
54
54
144
129
108
79
168
103
97
113
158
145
59
74
123
107
104
93
145
83
125
54
96
134
118
95
123
151
146
120
82
95
84
150
82
77
75
87
150
137
93
102
126
97
102
95
119
135
132
98
76
157
177
115
147
141
147
114
148
177
110
143
91
102
103
100
54
74
118
96
115
151
105
161
90
95
149
125
154
124
112
135
123
82
130
134
120
150
138
134
98
106
127
143
128
90
161
110
106
82
102
68
143
110
131
93
115
95
81
110
120
145
114
123
93
155
123
139
127
76
127
146
115
54
153
83
91
95
105
157
110
140
108
125
150
130
103
95
131
109
129
61
69
147
137
87
182
120
111
128
99
102
103
142
151
95
77
134
138
103
100
102
115
108
142
87
105
125
109
107
123
91
173
104
147
169
127
99
159
141
103
147
98
162
83
156
173
161
131
143
125
157
146
100
131
107
131
105
146
113
104
122
169
108
94
141
97
91
164
158
83
124
133
108
76
118
113
54
102
101
70
165
85
148
98
147
149
206
115
99
158
92
116
95
75
54
135
86
113
117
143
128
132
107
76
107
168
72
95
132
165
104
153
131
134
159
88
95
96
140
104
85
125
95
147
141
112
140
165
54
122
127
107
160
93
105
132
138
92
115
120
85
121
103
141
97
160
147
112
129
108
110
93
165
180
117
49
122
142
101
131
152
104
119
156
139
119
103
85
94
92
148
137
117
102
133
137
89
54
102
115
131
181
161
54
124
107
94
127
61
78
94
182
81
124
94
90
194
154
104
102
128
138
116
126
161
131
98
153
121
103
140
143
144
132
160
115
67
84
98
158
82
88
166
130
76
87
147
103
102
155
99
144
76
133
140
120
54
129
146
148
97
95
54
153
148
101
125
156
97
98
108
160
151
87
120
153
172
94
59
152
122
131
115
49
97
125
120
142
102
142
109
156
147
139
108
102
78
121
98
125
123
77
124
131
74
107
88
98
101
82
133
54
120
129
94
76
143
127
97
100
200
98
108
114
153
91
138
110
49
103
108
139
106
102
149
92
108
105
149
110
128
165
107
102
94
103
167
147
82
129
120
122
128
120
114
106
115
98
95
54
135
148
90
182
109
98
87
177
112
119
96
81
130
145
127
115
124
139
94
118
146
180
79
92
108
76
112
108
148
81
110
112
54
54
122
164
61
188
91
102
54
90
54
95
96
161
86
145
77
144
87
125
99
158
99
103
120
81
98
116
54
79
148
126
172
105
148
90
77
133
109
121
59
108
88
49
111
160
96
130
134
118
110
103
73
95
80
119
96
108
140
111
112
49
81
124
146
124
132
165
97
147
153
81
83
82
167
86
86
107
96
113
113
98
108
109
122
120
82
95
108
102
160
54
142
200
132
115
54
158
131
109
127
128
123
106
180
119
125
119
76
54
130
140
143
49
119
77
186
65
155
118
117
112
133
106
54
123
106
126
185
101
78
138
82
116
119
148
54
78
167
113
93
113
84
93
136
103
102
92
159
97
74
98
187
125
124
125
98
90
98
131
125
137
59
150
94
106
186
140
111
99
95
106
94
54
87
95
142
132
54
177
116
49
122
96
118
104
133
118
139
140
103
93
178
133
111
129
180
89
74
98
144
122
90
125
129
97
111
133
97
102
113
144
149
123
108
67
124
125
104
102
116
119
115
129
186
92
122
135
125
95
110
167
97
59
133
87
97
110
96
131
83
100
105
75
92
106
117
155
93
106
59
93
102
67
113
129
91
102
175
127
111
69
98
102
102
156
77
106
105
159
102
125
54
112
112
108
80
132
86
111
116
125
94
49
95
125
125
100
85
85
87
98
54
117
113
108
116
82
98
140
98
74
193
120
131
146
136
120
105
136
110
83
119
54
132
123
74
90
149
99
115
54
122
108
127
87
131
174
135
90
122
87
128
111
103
130
94
111
113
97
108
172
76
138
103
54
54
76
110
133
130
82
59
105
102
59
135
118
144
80
147
104
73
132
103
107
162
95
122
91
83
87
114
149
81
103
54
104
103
82
114
111
137
146
194
132
131
87
129
129
129
80
113
166
125
80
119
177
147
86
108
106
150
174
123
54
106
164
84
74
73
164
59
89
118
143
95
125
99
123
135
165
126
83
108
76
95
49
113
191
105
98
93
138
108
102
102
132
96
121
96
130
77
152
134
77
65
102
121
85
120
145
74
123
161
96
124
145
124
149
110
118
134
127
120
81
114
98
127
119
82
104
132
74
104
85
89
131
92
83
107
61
157
95
115
74
59
81
115
113
90
141
180
108
151
101
157
96
98
101
78
125
142
104
164
54
116
45
84
54
54
149
137
129
150
138
144
78
131
102
102
90
81
77
94
85
123
61
68
142
127
87
125
130
164
112
130
101
108
116
113
170
93
117
129
100
149
97
126
98
139
54
87
92
54
111
135
92
142
92
133
97
141
149
69
81
148
167
177
54
87
54
140
116
91
100
90
150
108
180
106
154
157
143
97
173
81
146
125
138
144
107
81
103
85
105
77
100
129
123
61
54
112
143
84
113
117
96
98
128
165
134
95
76
99
95
108
103
125
79
177
125
107
115
72
115
75
141
98
128
131
147
105
59
114
76
105
124
89
105
124
165
103
103
112
87
102
179
125
109
77
88
168
113
110
88
137
158
190
49
95
95
114
139
92
180
109
102
69
103
123
102
156
145
105
84
90
59
163
105
96
139
77
125
129
96
143
111
156
144
133
106
116
105
142
139
88
98
126
112
98
108
87
93
128
95
49
112
164
82
116
120
154
107
103
148
65
125
54
59
80
98
133
107
138
81
96
191
144
155
134
102
113
125
122
108
141
54
135
61
87
177
107
92
122
98
123
91
89
120
113
156
128
102
125
104
131
146
109
106
94
116
156
148
102
59
96
110
112
99
115
137
80
99
186
76
115
133
131
158
95
95
129
141
129
147
114
116
130
128
90
123
126
86
103
103
114
126
108
108
59
106
102
103
108
101
109
159
138
99
124
103
107
113
99
86
143
77
93
83
158
123
95
101
95
126
95
95
156
113
163
95
128
108
114
179
104
180
126
150
104
116
80
157
78
146
163
132
103
148
151
77
54
49
138
119
82
76
103
117
149
87
118
76
133
134
111
133
59
162
106
135
97
95
81
101
93
99
78
92
110
117
134
119
102
106
129
127
102
153
141
88
81
104
103
150
131
91
102
128
102
97
145
85
99
118
102
139
141
102
99
164
109
128
144
122
99
120
110
106
83
133
90
97
134
109
84
112
59
138
183
108
95
54
54
117
54
81
112
131
158
122
148
83
133
100
106
143
95
94
184
103
108
177
109
144
118
94
94
189
158
140
103
100
132
82
116
124
118
98
103
132
125
180
125
103
175
136
108
125
134
125
49
95
160
98
125
98
175
103
74
76
107
131
92
114
45
128
103
104
143
127
143
111
124
54
188
54
101
128
98
87
154
113
83
128
127
158
116
142
89
181
131
175
115
82
133
102
90
83
142
102
150
87
128
161
108
132
191
95
163
120
140
74
125
119
54
132
175
54
59
117
106
54
107
156
122
98
129
54
143
128
155
98
137
128
87
130
106
108
127
128
108
139
119
97
151
104
105
134
117
115
72
125
116
54
76
73
93
83
104
186
128
153
108
105
82
153
96
95
135
132
108
95
137
45
123
102
137
79
102
142
114
54
134
130
158
102
118
81
112
143
158
108
91
103
79
67
87
144
153
100
147
130
133
100
87
139
108
134
101
127
103
170
129
102
98
82
67
90
127
99
111
105
81
110
144
139
90
128
109
123
74
168
78
150
98
102
133
127
140
74
122
143
132
100
125
112
123
182
54
111
108
120
140
149
120
107
54
102
139
110
168
113
106
107
77
96
90
107
133
114
79
95
113
92
75
127
81
137
162
128
150
113
95
102
126
142
106
154
112
95
159
109
97
95
100
112
119
132
132
105
145
105
116
130
142
200
54
158
108
127
145
95
120
82
54
159
95
168
152
108
119
143
124
131
140
116
88
79
139
115
127
146
120
112
165
101
167
90
108
102
131
140
100
98
150
102
147
101
121
145
65
135
167
74
115
114
54
125
139
113
89
168
81
107
105
101
102
70
122
82
136
74
103
122
93
179
163
103
107
140
98
115
125
79
103
191
101
81
199
157
139
104
59
126
132
67
107
108
157
128
54
95
115
78
98
144
95
125
96
128
149
122
138
105
81
59
177
117
95
102
125
94
126
87
127
79
160
148
106
148
95
122
135
168
89
102
108
104
119
105
106
103
106
138
99
106
180
94
82
109
134
81
129
108
130
128
151
77
154
128
85
54
131
54
160
114
82
113
128
98
67
54
137
96
170
146
133
173
135
102
77
132
104
98
158
81
116
133
54
125
96
128
135
119
69
101
98
112
150
102
91
93
101
93
146
121
122
87
144
124
108
108
96
141
111
122
135
100
116
149
54
110
145
112
165
94
178
122
95
76
116
153
101
91
157
147
89
112
81
95
100
102
135
160
102
77
98
132
91
130
158
139
82
81
99
103
87
167
134
134
186
67
116
99
81
98
79
96
134
108
95
133
54
90
101
54
93
95
86
143
99
131
54
158
135
134
155
125
181
152
108
155
90
81
97
76
140
94
158
115
98
108
143
137
151
146
112
76
152
83
73
76
150
129
124
109
200
98
142
159
79
88
137
107
156
98
160
157
118
154
61
61
113
54
123
165
61
81
156
112
112
108
122
99
73
135
96
67
177
128
88
122
83
101
128
137
141
102
140
151
90
126
131
112
137
106
168
77
59
154
123
125
91
67
180
108
103
95
119
54
93
101
140
109
113
125
126
137
131
165
76
145
78
49
118
121
116
133
136
111
102
121
143
49
67
54
162
109
129
101
95
161
117
87
103
133
132
113
118
133
133
191
146
94
155
108
102
128
80
144
158
190
103
116
107
100
153
95
54
141
98
71
97
95
139
102
116
107
96
113
92
135
121
130
88
165
144
103
54
93
108
65
119
54
59
125
111
105
145
54
114
103
83
107
90
80
148
98
125
149
125
130
102
133
109
156
49
93
120
81
92
101
116
126
100
95
137
81
119
89
118
119
156
112
91
102
152
135
167
91
93
113
74
98
127
85
190
98
107
149
142
106
96
127
140
154
171
100
132
123
87
114
73
98
54
93
135
93
122
161
117
117
93
141
132
122
119
143
95
117
102
49
77
173
127
125
102
118
171
87
117
113
130
138
78
79
85
179
94
147
97
122
95
152
141
148
91
91
108
75
101
142
106
123
100
101
170
132
123
140
106
139
145
111
98
90
89
102
95
109
132
68
82
146
194
170
100
82
73
150
74
103
164
173
123
128
129
131
135
73
119
123
151
144
139
114
120
190
91
80
95
142
149
117
132
113
121
102
45
148
102
133
77
106
112
49
95
102
91
154
120
125
92
76
131
150
108
87
125
234
99
124
196
105
54
123
160
93
81
104
132
141
106
129
90
102
77
65
114
122
138
132
118
182
98
127
160
135
128
115
107
112
133
77
180
103
104
101
100
124
121
157
97
125
114
59
108
139
135
113
77
123
90
123
158
121
92
107
126
131
160
92
182
140
141
139
109
128
115
133
117
125
77
147
81
119
122
90
59
54
69
158
119
103
98
102
147
135
123
127
95
87
108
125
97
154
118
137
106
102
158
86
134
135
155
106
83
175
54
149
123
156
164
115
123
180
111
80
113
102
91
131
114
72
135
102
177
112
139
99
108
147
144
74
103
133
153
123
151
139
105
167
119
140
90
98
134
124
102
106
83
54
111
62
141
124
115
142
155
111
139
107
135
83
67
61
157
69
156
119
79
98
135
120
126
91
110
115
136
106
108
118
95
98
76
98
123
143
164
94
67
111
115
106
171
135
87
102
86
128
85
86
117
149
93
54
142
118
127
132
114
105
126
91
145
112
103
95
145
149
164
168
49
129
118
61
134
100
144
95
113
106
164
112
102
113
139
98
95
146
109
115
103
102
125
98
100
136
95
96
93
97
107
122
120
109
158
68
76
180
115
143
81
95
130
147
89
158
127
103
108
134
131
198
108
83
54
143
104
81
151
162
74
113
112
158
85
54
104
54
141
108
140
119
91
102
113
102
125
153
86
98
135
95
134
81
125
118
121
118
97
91
138
82
98
104
139
128
74
140
107
131
98
151
182
107
105
117
103
133
108
148
61
88
100
83
155
122
138
93
78
90
110
117
77
96
137
132
128
151
108
133
68
98
108
135
129
129
106
98
103
97
87
103
100
98
123
95
106
97
54
101
138
105
105
77
131
76
124
136
102
123
102
54
143
100
158
127
104
108
147
128
77
114
147
85
123
106
142
119
118
166
142
74
102
208
159
81
132
127
139
113
92
110
108
107
93
120
112
150
132
91
144
90
111
49
106
81
93
124
127
133
133
144
139
110
82
132
128
151
176
112
144
112
110
97
115
103
99
131
88
59
103
110
109
100
106
133
173
59
98
128
129
115
81
108
93
146
78
74
88
129
197
125
113
117
106
54
85
119
135
112
102
144
133
133
87
177
144
104
82
128
84
78
112
129
145
94
118
77
92
101
131
126
54
138
118
89
93
108
112
113
136
73
112
89
77
115
139
77
103
102
106
79
113
115
95
141
119
121
106
121
102
111
62
115
144
102
161
150
113
98
54
113
67
113
151
54
131
95
96
119
149
135
106
119
109
109
97
100
112
147
131
103
126
116
128
81
121
119
108
81
112
107
67
85
77
102
78
167
141
121
126
67
116
109
120
136
140
144
150
108
122
177
137
114
104
108
132
103
139
131
161
83
131
87
108
118
166
128
111
104
158
115
98
97
134
95
162
149
82
114
128
99
95
117
126
179
81
81
131
99
106
108
158
84
106
139
108
131
121
106
95
85
61
125
118
89
112
116
82
142
136
164
146
87
121
107
54
108
102
114
79
97
152
83
135
89
177
133
103
77
108
145
98
113
96
93
106
108
156
102
180
155
131
102
103
135
106
143
130
156
140
102
105
161
181
98
156
102
112
102
87
49
163
108
154
177
167
122
67
129
219
113
126
116
89
130
172
141
95
147
120
67
95
96
112
85
108
200
100
81
167
87
161
77
115
128
108
137
98
114
163
96
135
105
135
80
82
136
112
156
80
101
119
129
83
98
147
87
134
161
103
133
145
160
135
117
134
139
158
108
110
117
49
105
145
108
165
77
124
121
224
174
120
161
112
112
102
175
133
166
129
146
91
144
86
96
158
125
100
104
49
102
120
145
123
156
150
135
149
85
106
99
88
127
185
92
116
98
105
136
106
107
114
83
76
93
134
108
150
98
117
99
96
125
143
113
147
115
123
77
74
113
96
138
102
125
117
195
127
78
131
109
120
67
98
79
83
96
148
106
115
103
165
81
127
95
110
54
172
129
106
108
135
93
163
140
123
139
99
54
104
144
181
95
164
129
54
152
112
124
158
95
134
131
115
54
103
76
102
128
175
133
145
106
133
133
133
110
114
54
77
145
70
106
163
77
127
131
123
84
147
102
102
84
127
69
108
129
131
74
61
117
147
104
106
98
100
92
78
97
113
54
155
107
78
107
148
110
146
160
54
151
81
119
85
134
102
84
83
99
84
107
81
132
120
143
134
102
131
163
103
110
148
143
45
113
165
170
108
90
106
120
87
100
109
113
165
139
113
158
142
124
110
167
108
123
93
113
123
147
75
127
82
98
139
94
162
93
116
106
125
87
102
126
105
95
67
140
110
80
129
79
149
114
173
113
107
85
87
163
49
105
141
123
116
144
162
128
61
162
76
109
169
103
134
78
137
131
135
75
138
152
91
90
99
109
125
108
59
102
77
139
82
129
82
131
105
116
170
117
91
81
95
194
111
97
118
54
146
113
93
117
158
90
102
83
131
108
97
69
102
147
148
128
125
113
98
110
147
125
135
123
78
80
167
113
95
143
113
155
177
157
104
125
100
127
153
129
125
116
118
127
135
155
132
110
81
90
120
81
122
194
112
82
106
87
105
146
99
108
147
102
95
162
144
113
120
108
112
95
138
125
127
114
135
125
112
59
162
167
93
54
115
99
172
87
98
137
144
175
158
172
143
102
158
119
110
122
77
102
77
54
106
136
54
177
131
122
96
133
118
103
121
72
102
86
159
95
127
81
100
88
92
89
49
90
97
148
112
147
153
141
87
81
90
92
54
200
167
80
126
146
124
143
61
85
74
87
165
132
108
108
101
98
81
108
116
121
49
110
106
157
108
118
102
133
54
100
115
81
131
95
119
129
127
103
138
77
140
123
80
67
120
119
160
116
123
109
100
103
116
128
59
95
128
139
108
88
123
163
81
138
135
74
68
102
102
106
99
69
165
146
115
123
183
85
106
54
130
166
98
67
87
54
144
130
108
125
104
100
118
54
120
84
65
173
90
138
54
128
143
134
76
96
133
118
118
74
68
125
83
116
96
103
105
54
102
103
144
143
128
114
135
128
123
133
122
104
101
105
54
80
104
103
157
104
49
176
95
148
106
135
133
123
90
102
77
167
120
108
131
97
128
77
115
198
120
122
98
126
161
133
107
96
113
118
160
45
155
107
99
149
119
102
129
177
106
108
152
80
83
90
84
139
100
132
158
118
128
82
54
121
119
49
81
95
98
134
87
124
149
109
124
105
139
108
119
108
113
182
130
109
135
97
54
87
132
100
187
141
128
102
103
144
124
128
155
138
177
165
121
161
131
138
121
177
119
104
112
89
185
102
103
99
113
106
54
85
49
110
154
132
77
108
142
137
165
98
73
120
143
153
108
155
125
110
139
99
103
49
112
129
82
95
137
133
67
119
129
78
83
90
129
95
160
124
167
77
167
102
143
105
124
95
122
95
72
68
119
74
103
91
90
59
158
105
125
160
126
81
118
122
145
87
113
149
165
116
67
82
81
96
125
139
102
109
110
105
54
54
108
97
87
129
148
95
108
98
127
107
196
106
88
142
114
93
70
79
111
95
128
94
173
131
103
178
90
145
158
87
147
110
102
54
120
85
127
111
90
59
82
87
100
92
151
125
133
173
165
79
132
98
148
71
94
88
130
73
88
85
77
59
161
147
122
93
148
137
177
72
130
102
54
74
145
127
93
89
118
125
86
82
90
109
113
118
174
103
85
101
149
82
113
115
133
142
109
106
126
135
120
137
128
138
107
161
110
78
175
85
107
108
88
102
81
123
91
79
105
156
143
156
100
102
90
109
76
102
110
183
192
108
144
115
154
54
128
180
84
112
74
148
87
59
86
128
101
125
128
154
94
135
83
74
103
78
87
103
98
125
112
147
67
87
128
87
109
85
161
108
113
147
108
149
67
144
96
95
104
132
172
100
67
120
90
81
141
130
136
101
116
96
103
81
81
123
120
61
109
84
106
77
119
94
127
100
140
117
54
61
103
83
102
76
98
122
143
101
81
147
122
106
138
128
90
161
88
103
176
91
148
142
82
102
128
123
91
61
116
148
139
103
108
107
135
76
85
141
94
139
163
179
102
90
119
76
90
59
83
110
54
129
81
102
131
102
67
135
112
107
140
116
119
135
82
81
106
155
76
129
164
110
83
101
134
95
133
111
100
54
108
80
114
144
49
154
125
59
135
155
115
111
73
106
107
148
127
170
177
95
102
128
83
85
102
130
101
167
151
54
113
155
107
177
135
68
105
139
157
82
74
113
115
190
149
92
108
102
54
119
113
83
110
104
110
120
106
93
105
123
102
151
95
118
87
125
114
179
103
136
182
100
94
125
134
101
138
109
106
143
161
135
83
147
101
107
140
129
54
124
131
103
201
89
178
104
98
76
150
113
77
72
97
108
104
98
103
123
160
156
129
140
105
118
54
148
108
103
118
153
122
112
75
156
127
140
78
98
132
147
117
87
78
136
93
144
98
49
133
97
150
127
108
92
108
177
160
142
138
108
124
95
126
96
127
74
127
151
123
97
108
125
61
170
96
68
105
113
208
147
131
112
54
161
102
115
108
67
114
123
174
126
95
54
118
129
133
98
128
112
102
104
119
129
49
54
113
81
61
108
156
108
106
126
108
177
128
108
109
120
128
131
110
150
132
160
156
83
125
95
95
95
109
125
128
172
59
144
129
102
133
118
145
104
97
177
158
117
101
113
95
77
127
111
78
122
76
115
139
109
117
94
118
98
186
76
144
95
106
158
85
139
137
108
147
107
81
139
112
115
112
139
127
87
108
86
82
125
136
96
74
113
143
101
168
129
90
135
133
101
107
142
157
54
104
100
98
78
107
125
93
140
158
143
134
101
138
167
102
91
126
80
123
108
134
141
150
121
79
95
144
133
131
107
145
144
106
120
107
111
132
129
153
107
81
132
130
49
112
117
101
111
99
82
74
125
95
96
164
59
79
123
150
108
119
102
81
103
59
116
143
115
106
131
108
108
158
133
115
105
102
135
157
96
96
85
96
133
145
93
108
111
112
103
121
83
143
95
88
134
157
143
113
155
128
123
73
97
135
95
140
145
120
148
125
109
86
127
122
139
106
133
123
130
103
156
95
109
136
91
133
95
121
59
124
102
112
134
91
155
103
146
108
117
59
134
139
134
163
107
84
144
113
144
118
95
102
131
115
144
121
168
113
95
118
128
107
127
129
119
128
95
87
125
69
95
158
115
90
92
135
83
98
158
73
59
54
96
85
93
82
81
91
143
110
129
151
177
108
90
54
114
80
75
112
143
152
95
115
113
123
85
147
150
95
125
126
129
75
118
128
103
74
119
119
146
83
164
108
74
80
128
127
98
59
150
107
126
150
114
170
98
141
108
101
105
150
170
107
199
100
148
105
143
109
98
135
67
131
54
135
148
108
148
113
165
133
171
79
102
195
96
74
87
76
172
136
153
117
111
106
124
88
120
117
144
171
61
82
150
107
113
103
155
91
118
160
128
130
91
142
115
156
113
148
113
158
138
127
117
135
112
155
113
95
141
180
61
54
154
116
128
158
75
90
130
135
91
134
105
114
143
74
116
134
136
191
105
138
116
119
115
102
67
129
104
148
106
99
121
205
97
98
81
76
98
121
90
115
132
153
76
160
93
54
133
121
153
124
109
95
92
84
160
177
125
108
129
177
76
76
100
54
97
149
135
83
98
113
108
126
134
133
85
153
83
125
98
98
133
77
134
115
65
144
134
83
138
119
105
128
142
67
98
113
110
97
74
149
133
100
103
99
153
111
150
109
158
127
145
95
98
90
128
90
54
113
59
105
112
118
87
81
98
102
78
97
91
133
103
91
143
67
135
90
120
101
108
109
100
158
109
81
93
80
130
120
91
100
67
139
102
112
103
112
79
131
86
95
137
128
90
113
125
59
95
133
127
125
154
135
93
105
133
96
182
108
142
54
106
125
142
105
90
140
84
87
103
133
144
133
77
110
113
100
81
140
124
59
135
98
141
148
62
90
76
124
148
120
122
76
105
115
129
98
90
137
157
130
83
102
107
132
87
135
98
89
97
150
119
128
120
49
199
103
94
121
81
91
96
103
154
123
142
167
118
107
124
129
94
142
129
115
127
154
117
96
76
131
159
120
148
54
128
132
85
121
105
104
130
118
145
121
81
69
108
164
186
105
114
123
95
115
108
67
115
131
173
151
100
105
87
61
68
80
54
152
141
92
127
150
106
82
100
80
156
114
136
134
94
93
101
102
93
140
131
102
138
139
116
150
109
131
144
154
105
109
162
84
125
177
126
113
108
125
87
105
98
98
80
155
113
148
102
103
118
70
107
153
62
82
157
98
116
134
160
78
139
74
85
94
105
87
97
107
192
78
131
108
102
127
125
140
115
99
83
113
69
74
94
76
87
115
115
191
102
147
150
96
140
116
104
98
118
95
74
128
103
137
129
211
135
91
161
146
144
117
101
108
67
81
128
95
131
156
177
95
129
110
101
95
102
135
116
132
145
120
116
134
101
133
123
127
113
129
136
113
112
128
76
128
78
108
145
108
108
107
80
95
104
141
137
105
105
112
98
116
90
125
128
88
139
125
54
135
97
100
91
119
108
76
164
83
92
102
119
79
168
141
122
148
160
94
98
151
132
85
152
129
124
155
68
99
54
117
107
96
82
128
154
135
119
135
95
150
113
148
83
82
101
112
102
120
106
148
103
112
92
59
74
171
77
115
127
158
140
74
87
150
54
101
118
143
108
98
141
128
148
113
90
102
61
107
54
166
105
101
120
133
125
65
61
67
125
146
109
105
92
158
138
145
131
122
115
131
54
132
144
138
120
126
54
109
113
98
97
118
114
106
89
142
103
105
139
104
54
103
150
135
115
110
118
95
67
106
134
105
132
82
107
122
82
84
85
156
91
77
129
124
118
135
70
111
82
138
116
102
128
106
133
71
112
139
84
102
54
95
102
82
74
164
90
117
49
76
130
111
104
77
133
129
115
154
82
67
134
76
113
132
118
131
72
95
154
120
106
107
124
115
145
93
149
87
141
78
147
170
132
128
156
98
115
177
102
121
82
95
95
164
150
95
95
77
103
140
133
134
112
149
59
84
54
119
54
109
168
149
82
120
156
145
130
125
115
95
77
135
128
134
143
140
49
109
130
120
113
145
111
142
133
127
130
121
137
118
118
120
93
143
49
74
69
159
126
135
108
123
81
185
93
103
94
108
102
106
95
119
161
131
125
98
94
124
142
151
110
91
116
130
113
100
113
108
115
149
107
112
105
87
89
133
157
146
136
120
128
127
158
130
99
106
128
197
126
105
74
81
98
133
103
102
129
54
83
130
68
59
140
113
107
157
98
159
133
131
99
135
54
143
153
158
143
143
158
101
174
93
98
116
125
76
162
119
95
82
143
135
59
110
109
102
140
67
146
96
176
131
102
116
127
133
147
137
134
144
110
103
143
113
129
83
143
76
169
129
125
59
108
148
168
168
104
151
108
81
125
105
106
126
107
113
177
92
123
113
98
54
113
141
148
107
54
150
120
156
109
114
135
123
68
110
136
125
54
141
89
112
49
141
59
105
132
87
54
104
92
158
77
54
126
105
144
89
162
102
54
117
106
98
108
153
121
130
105
144
96
178
74
102
92
145
100
79
81
54
76
125
102
96
134
95
123
89
106
108
83
136
133
98
127
147
180
156
103
122
146
62
68
95
102
103
110
90
98
157
135
115
85
49
106
85
108
90
102
132
120
122
96
113
113
119
59
141
96
104
108
88
142
139
107
98
103
121
107
84
145
114
118
126
122
105
113
108
139
97
144
83
114
155
96
121
113
194
49
156
105
148
49
93
128
107
106
114
127
114
120
115
128
133
166
144
147
108
118
213
102
105
117
100
165
104
94
175
77
90
83
145
137
158
158
77
134
112
98
143
103
87
120
125
150
103
49
113
115
120
54
113
119
108
77
139
106
87
153
140
54
74
155
91
113
131
120
137
96
140
130
108
130
95
180
99
106
109
109
74
159
179
93
149
74
117
82
102
165
98
135
74
125
155
95
85
105
107
122
185
122
117
152
106
132
141
139
94
153
118
108
77
108
133
124
158
104
135
92
123
100
95
82
179
89
155
91
180
108
122
106
159
145
54
132
136
117
89
95
107
100
158
132
123
95
114
147
115
97
124
111
113
129
149
97
117
110
78
103
67
94
103
98
127
137
148
98
121
108
106
65
54
126
140
54
115
161
87
145
103
120
154
127
105
122
127
102
81
113
103
101
133
84
102
153
155
67
124
114
81
131
81
73
118
98
84
145
115
103
174
76
128
108
68
119
130
87
146
123
90
87
109
108
142
102
102
129
81
118
104
124
161
67
120
234
73
49
144
81
135
106
98
143
97
118
87
54
107
92
49
106
100
59
96
83
106
133
156
107
105
129
108
120
45
110
110
98
118
185
143
102
151
140
54
130
101
136
76
81
106
95
101
99
213
118
142
108
145
76
106
112
140
105
109
68
135
80
97
128
105
94
141
133
54
82
128
95
122
140
61
145
77
115
74
104
87
76
67
129
136
107
91
152
112
101
143
146
140
54
103
148
96
118
100
108
99
69
81
127
140
115
117
113
97
121
74
139
153
109
133
108
105
117
146
147
121
101
161
144
122
117
102
67
123
115
135
159
125
122
135
108
119
177
125
108
87
114
109
146
110
82
103
130
142
107
128
131
113
93
105
102
134
135
123
130
113
103
68
129
118
105
179
106
102
102
110
143
150
90
126
99
97
108
87
95
90
134
146
99
59
59
111
49
104
54
88
135
125
82
104
42
146
104
76
92
124
137
49
103
108
93
115
145
102
177
103
108
89
151
134
142
133
72
148
85
110
76
167
159
93
88
118
121
113
141
148
130
110
98
137
115
169
92
111
118
130
127
194
105
167
110
109
96
129
113
110
84
158
76
88
112
144
54
97
103
115
156
77
200
110
148
122
128
98
114
102
81
120
128
133
98
119
123
103
104
110
95
122
105
77
83
117
87
83
140
79
117
175
193
78
82
81
79
92
130
108
78
82
197
107
118
125
99
90
54
101
116
117
107
96
83
182
123
144
153
101
98
138
96
54
125
153
105
151
127
92
98
127
95
118
138
154
169
124
49
54
85
118
135
139
156
69
96
102
96
102
122
124
75
116
76
143
93
81
145
120
87
119
100
190
81
120
102
145
72
131
98
129
95
135
117
135
107
170
83
125
103
110
54
84
102
133
136
164
96
140
121
96
97
146
141
177
118
107
116
105
179
148
139
65
76
177
131
54
123
128
95
127
119
147
116
106
119
179
133
111
98
101
90
117
132
126
142
121
128
124
135
77
146
108
95
159
54
117
110
120
81
136
82
138
102
188
151
144
118
85
143
125
93
85
146
93
154
162
109
98
113
168
83
100
105
151
112
118
117
109
134
123
125
102
81
133
123
61
101
105
106
162
107
83
144
54
108
143
113
96
54
164
143
74
177
108
125
113
137
113
139
94
98
89
133
116
87
61
128
107
165
93
103
89
128
85
118
78
124
77
99
98
108
108
83
76
95
117
133
136
125
107
95
146
133
71
103
94
93
74
154
54
94
125
140
79
150
87
124
107
112
59
111
113
54
163
133
175
139
165
95
118
103
102
76
78
193
59
106
107
144
179
130
198
134
103
126
94
102
134
144
140
61
107
166
154
83
105
86
185
142
105
120
90
146
78
98
144
131
140
68
123
118
88
102
156
93
118
234
116
171
143
150
54
122
80
135
144
147
114
106
112
79
92
49
145
151
149
126
96
107
154
129
102
134
95
170
98
135
98
82
54
147
106
102
77
156
93
130
98
154
59
105
91
102
113
129
93
149
83
158
157
131
108
103
137
153
159
114
112
103
96
102
114
103
80
74
95
102
91
81
125
54
101
125
106
54
98
114
81
83
110
54
148
177
131
153
98
95
100
134
146
118
148
121
148
138
144
120
167
104
120
90
139
125
87
82
113
54
97
127
169
112
81
81
165
49
142
87
174
103
90
147
112
133
130
137
125
137
106
152
135
143
116
150
123
137
107
88
125
90
127
122
108
115
151
61
137
112
161
69
113
117
157
113
140
112
73
155
110
117
177
110
148
126
108
98
63
122
219
81
112
157
77
95
99
109
153
70
116
142
106
160
116
93
108
182
144
113
122
120
98
82
93
114
124
147
190
148
167
49
93
129
101
111
108
91
92
92
107
144
147
127
112
81
131
95
141
129
49
106
118
54
124
131
69
124
106
117
125
109
67
147
82
135
93
128
148
54
128
118
150
117
98
74
97
133
101
82
108
103
135
104
155
128
99
151
102
108
95
109
98
111
78
122
103
168
143
131
124
117
59
172
123
119
115
112
117
89
96
134
131
104
144
98
119
114
127
85
113
109
148
69
132
96
99
122
108
126
102
121
120
102
103
95
113
108
157
108
81
76
81
128
123
168
103
103
93
59
147
135
108
154
111
133
108
124
83
74
198
90
54
143
118
160
105
88
158
180
153
54
87
154
121
147
144
105
102
173
59
148
97
97
91
103
128
77
130
101
101
59
120
124
54
103
49
159
76
122
185
108
99
59
121
109
103
199
169
144
98
132
138
138
141
130
73
123
118
122
158
113
89
70
134
91
117
199
81
163
81
85
92
105
110
129
174
102
49
78
59
99
135
69
141
102
120
118
102
117
45
54
149
150
49
122
112
134
146
54
54
135
128
186
104
155
104
90
143
61
145
153
124
74
144
61
76
162
120
145
54
148
120
108
143
153
102
125
98
123
103
111
121
103
113
89
131
106
106
129
105
126
102
114
118
122
164
110
149
90
81
106
127
95
86
146
155
90
78
110
128
120
146
76
98
62
180
134
74
102
92
93
98
96
102
131
129
132
98
119
98
135
161
61
144
114
80
141
106
93
113
147
132
89
123
128
148
128
102
111
132
98
86
103
67
126
76
131
108
107
77
69
129
67
161
131
49
81
131
120
144
100
186
135
149
142
114
115
131
112
140
167
133
102
115
81
137
104
180
145
106
87
93
163
177
152
146
133
98
84
180
161
119
117
115
160
132
76
131
97
122
127
128
78
120
89
151
131
49
108
108
163
111
54
120
158
95
115
132
95
104
110
101
144
150
115
98
54
107
123
54
169
108
73
163
135
103
172
110
161
159
147
103
168
69
125
146
120
92
96
147
103
106
97
98
108
74
171
94
104
188
102
109
138
125
133
114
139
113
134
118
165
125
158
156
105
85
122
127
125
152
105
84
103
180
106
108
136
94
87
90
141
74
125
88
98
88
195
155
88
142
123
177
111
102
98
80
102
186
118
129
75
82
95
128
106
86
153
129
49
200
105
127
87
113
148
158
147
74
121
67
125
103
177
99
82
141
90
118
81
129
136
162
72
84
142
49
80
83
156
97
156
80
74
144
146
105
172
140
137
108
82
122
97
68
115
146
131
124
97
166
173
135
89
143
102
74
126
59
59
97
69
108
54
95
108
143
169
122
148
103
101
143
108
135
124
118
168
144
96
122
97
99
49
102
95
109
151
118
110
54
90
54
127
109
115
143
111
128
158
118
193
65
92
185
153
87
130
121
115
159
149
120
123
99
109
115
115
97
99
90
90
81
115
141
147
83
144
105
148
149
87
81
122
147
121
131
110
106
85
177
77
134
93
145
74
120
73
61
138
114
96
113
121
93
149
103
103
54
127
95
121
116
97
109
136
77
146
93
125
173
145
92
49
123
148
196
88
140
132
162
133
148
76
123
96
101
131
158
108
103
101
90
133
104
133
92
122
110
107
144
102
119
163
178
126
110
145
124
119
89
112
141
100
49
148
134
83
124
137
135
91
81
74
109
95
113
107
147
123
95
78
54
102
105
69
94
102
86
139
90
78
107
168
83
105
77
155
143
76
87
81
152
54
103
155
163
87
68
121
143
182
130
169
95
129
116
82
80
118
95
121
95
98
131
120
54
78
122
103
178
87
103
147
146
131
98
105
151
71
88
80
84
85
130
100
90
146
156
91
177
103
54
78
128
177
127
84
160
146
98
136
131
101
112
154
101
108
120
130
131
155
122
112
131
125
133
68
49
101
105
49
86
131
131
123
103
119
90
117
76
103
130
85
149
96
86
93
124
149
109
133
67
128
81
106
184
95
100
81
148
98
130
83
105
104
105
59
85
105
125
145
119
133
127
107
128
94
146
77
61
104
122
148
123
159
148
153
104
113
119
185
112
122
69
129
67
112
130
148
93
93
74
135
97
68
113
108
124
100
172
99
147
128
125
83
103
131
76
119
110
76
135
74
124
83
49
104
84
93
103
74
106
134
139
106
104
128
161
103
139
115
128
98
81
146
115
108
159
117
103
104
133
161
42
136
54
149
120
95
131
77
169
98
144
100
105
125
71
116
138
103
145
144
131
105
90
136
187
103
133
89
120
106
54
155
127
112
122
175
92
121
113
103
126
81
161
78
122
120
108
119
159
59
77
73
156
113
153
115
127
76
98
102
75
138
113
105
148
54
96
54
140
87
137
120
77
87
54
108
115
141
125
95
107
54
172
95
98
79
71
178
93
146
104
103
103
103
123
101
111
111
170
94
137
116
125
83
54
81
100
81
141
105
120
144
106
131
149
110
140
96
102
133
144
134
115
69
134
163
135
119
54
87
93
104
104
124
127
108
92
118
87
67
130
78
78
123
135
151
94
90
124
108
54
107
97
151
144
134
109
82
118
127
76
180
132
98
142
116
129
156
120
54
59
170
138
123
122
80
130
98
83
54
128
91
163
143
120
116
128
115
107
103
67
101
108
151
114
177
90
142
98
76
86
144
165
74
128
110
81
124
96
122
93
156
88
96
135
116
114
101
82
147
112
120
65
114
147
117
134
115
116
122
114
131
124
90
138
189
105
142
98
104
102
101
157
113
127
133
143
131
90
54
140
126
114
89
99
96
154
110
129
98
87
133
151
154
142
95
89
149
81
49
54
109
59
106
98
120
67
87
139
54
146
146
104
148
113
96
115
54
125
108
117
134
108
98
131
133
142
104
98
103
144
136
111
163
141
141
91
106
76
141
49
149
77
120
103
131
54
102
115
49
158
98
86
158
90
135
139
121
115
146
128
105
93
135
119
138
83
140
132
125
94
103
127
198
133
108
146
95
108
59
59
81
140
110
153
102
110
91
108
92
82
108
154
101
101
102
107
143
110
77
116
90
186
98
182
113
98
124
54
83
143
108
82
61
73
121
135
54
98
54
90
124
155
140
106
124
105
74
102
69
105
95
133
96
102
54
81
93
134
138
139
122
83
103
128
95
116
147
69
138
77
80
133
106
93
112
76
97
61
79
95
107
131
159
91
73
49
98
123
78
143
95
143
97
83
159
129
132
99
113
103
143
121
147
107
106
137
59
108
135
128
81
132
108
102
163
108
128
198
101
125
89
106
54
90
142
131
122
113
115
154
81
99
107
120
59
108
144
103
77
117
122
163
124
79
115
155
106
76
59
61
102
99
102
87
113
179
102
145
115
135
108
59
152
117
90
162
91
114
139
137
200
81
120
127
73
87
49
105
109
123
90
107
120
140
87
138
101
103
113
89
105
95
105
125
153
54
158
145
102
148
151
101
142
135
103
131
205
98
85
110
133
83
149
161
133
93
132
147
114
108
177
85
106
119
77
81
86
98
137
89
140
122
112
137
137
136
133
118
129
131
161
167
161
122
98
76
105
133
49
109
135
105
110
61
123
110
103
154
146
49
128
103
133
141
190
119
95
95
131
67
102
97
114
120
143
110
81
105
123
131
92
90
126
98
89
81
141
189
177
116
145
138
120
87
122
125
125
78
84
158
119
117
103
87
190
67
195
158
98
123
101
115
109
92
135
108
175
108
158
103
93
67
61
113
119
112
49
103
101
102
122
118
83
140
148
78
70
90
90
87
128
166
145
118
108
135
97
177
113
124
119
137
106
106
128
103
102
76
156
190
84
116
113
148
99
105
138
95
115
104
155
103
74
168
74
105
143
106
147
83
101
100
54
83
158
108
107
98
132
103
129
146
107
113
165
157
177
93
121
127
115
95
108
145
49
199
81
75
114
54
115
80
125
155
180
105
128
190
77
98
139
147
103
110
102
139
108
106
103
82
94
105
132
65
118
108
170
68
110
97
86
98
54
99
111
93
137
133
143
128
200
119
125
128
106
140
140
128
79
83
106
131
107
115
68
140
118
148
127
117
106
82
104
161
168
95
106
124
114
133
93
111
120
98
105
113
103
118
104
105
100
101
74
82
49
77
160
98
137
117
135
78
76
142
129
98
153
98
119
107
132
137
135
115
96
91
112
179
121
173
102
126
59
125
160
59
148
125
148
139
117
141
177
91
112
86
49
115
146
81
146
147
140
139
145
120
74
77
141
95
148
141
128
49
145
116
108
98
99
143
102
155
82
79
111
136
111
130
107
108
98
124
160
81
89
105
106
87
133
59
102
115
111
156
104
108
130
93
108
82
49
120
93
148
95
78
102
54
93
82
95
149
98
137
106
59
65
83
113
85
129
112
118
69
169
49
90
102
128
216
133
144
59
158
120
89
129
120
148
117
77
122
110
74
98
92
145
115
98
145
131
168
139
108
121
122
95
102
113
84
85
153
136
132
152
125
139
148
137
120
109
98
122
84
109
167
133
116
54
108
116
113
106
76
93
101
90
102
126
102
105
91
103
116
124
147
54
49
123
145
98
78
139
143
54
143
89
115
95
109
135
107
125
92
118
148
168
143
101
109
129
123
89
121
54
93
108
159
84
106
131
108
144
81
149
98
105
54
97
151
160
107
124
116
103
127
123
119
154
59
49
49
115
108
119
103
103
49
82
129
138
106
143
105
92
54
90
82
98
85
106
155
144
115
102
82
155
124
67
112
138
101
137
120
129
142
81
125
120
105
111
119
160
77
100
95
99
141
117
177
158
101
128
160
127
88
117
95
159
139
54
182
134
95
122
109
101
132
121
73
106
78
108
54
156
102
108
140
123
140
139
118
115
59
81
132
115
54
54
105
83
80
130
108
120
83
96
160
128
136
164
68
132
128
105
149
85
126
100
110
120
137
130
158
101
185
127
119
111
131
158
99
99
98
132
112
119
108
67
81
128
75
112
138
148
95
125
134
113
137
103
153
128
148
109
98
88
54
116
98
120
139
114
157
130
82
84
158
104
146
146
144
98
130
85
103
144
113
122
81
124
100
100
113
103
81
189
80
54
107
173
168
88
113
166
122
122
124
125
113
127
121
81
139
149
171
54
110
126
135
81
93
85
207
54
98
106
88
61
103
118
139
133
160
137
87
108
91
167
94
102
125
163
132
129
164
54
95
187
147
129
94
170
107
54
90
102
106
110
108
146
105
87
123
107
77
127
133
116
90
87
124
129
108
147
96
149
107
54
108
133
103
79
96
95
141
102
177
106
90
128
105
133
100
152
87
67
108
125
106
138
120
100
95
121
175
113
72
125
144
120
122
130
139
123
92
120
98
125
103
133
142
107
128
113
73
83
82
124
102
158
146
128
98
127
158
125
141
133
122
76
121
113
113
127
119
69
117
144
54
78
108
76
112
132
125
95
54
131
126
107
140
81
94
147
144
153
117
113
104
122
77
109
115
59
113
118
108
105
125
98
111
74
90
100
82
144
82
157
135
143
73
108
130
105
120
117
142
115
98
157
133
110
102
104
115
143
113
108
107
134
143
125
95
107
106
123
161
145
119
128
102
127
125
107
123
131
81
82
84
82
119
110
122
93
118
115
106
85
160
80
106
156
183
103
115
152
120
123
92
119
125
148
127
127
107
127
110
107
76
98
108
98
101
107
100
119
141
145
77
154
128
156
105
95
128
117
140
139
102
88
98
87
87
133
115
146
120
133
103
99
106
108
130
54
49
83
198
130
104
160
193
103
152
125
93
144
148
131
113
103
124
131
102
123
98
78
154
96
134
132
105
77
82
100
100
76
123
128
49
142
128
163
128
161
135
99
117
89
101
104
141
155
98
102
90
114
134
153
95
135
140
85
158
105
49
49
107
76
95
108
140
75
121
118
90
87
118
93
141
68
129
115
67
103
95
109
138
106
129
133
59
162
121
181
59
166
106
82
128
82
162
117
125
83
102
49
108
144
125
122
113
144
130
103
167
114
84
142
87
144
78
129
143
118
134
102
146
110
74
125
145
81
123
103
125
128
122
120
153
135
128
90
134
102
59
106
148
87
165
127
114
140
116
95
158
154
91
95
95
96
128
136
95
125
98
104
95
122
120
95
148
87
93
78
108
143
152
78
131
149
97
115
104
152
132
118
102
133
153
97
129
95
143
141
180
158
59
84
94
119
130
138
111
96
125
96
155
49
147
93
112
54
87
158
145
118
128
103
101
148
161
96
113
149
108
78
148
99
148
112
92
104
110
168
78
131
54
120
123
160
127
98
73
133
59
54
133
95
96
159
124
152
128
103
112
172
153
105
141
161
177
103
121
115
144
109
112
126
97
103
106
95
90
77
109
83
191
129
120
108
83
139
102
104
116
117
177
114
93
147
116
146
114
112
103
153
98
111
76
83
147
106
135
128
113
54
95
126
128
155
102
167
129
125
93
98
166
102
191
152
102
97
80
98
100
131
106
155
54
119
139
95
120
124
125
98
105
110
77
138
114
81
77
153
108
84
138
108
93
61
102
91
103
148
138
141
159
146
142
136
91
97
136
108
54
102
143
125
103
120
185
78
99
102
112
49
142
149
125
162
104
95
131
107
103
145
126
108
163
49
140
110
155
112
159
98
127
115
54
125
80
145
49
162
54
125
144
134
125
119
196
132
108
78
49
112
179
107
105
49
179
101
94
94
77
90
129
93
127
99
97
102
92
131
131
108
115
108
117
145
156
59
104
106
127
138
190
120
61
129
102
144
68
98
96
89
118
147
77
99
111
145
103
111
122
90
148
112
133
136
133
118
132
131
103
87
112
95
106
61
132
151
127
157
67
98
106
118
54
133
105
77
129
106
145
163
54
124
109
96
131
103
90
112
108
83
134
150
109
145
144
103
125
161
158
127
145
151
108
142
125
100
120
112
112
124
95
160
119
167
81
128
95
79
98
153
143
171
108
69
90
116
139
74
74
117
102
105
143
103
136
103
134
103
186
82
138
148
108
78
77
109
133
108
103
211
99
136
78
148
122
111
146
186
140
140
95
66
102
77
130
116
145
115
81
118
118
102
86
100
67
123
97
123
116
132
105
162
154
105
145
90
139
110
124
134
129
105
160
125
101
54
138
108
81
76
161
81
102
67
68
97
73
115
112
127
77
124
67
120
67
179
122
113
98
102
140
129
120
82
127
95
147
98
133
135
88
96
116
94
98
93
102
88
77
95
155
124
154
105
153
81
131
143
140
91
106
144
115
147
136
124
87
133
95
135
182
59
136
126
108
141
139
112
102
116
120
177
103
125
146
126
158
105
104
54
101
124
115
89
54
102
143
107
138
154
117
107
143
173
153
115
95
106
148
134
76
133
139
77
78
131
103
143
102
122
103
134
128
158
74
67
57
85
81
184
115
127
95
113
163
106
164
139
76
182
133
74
102
110
105
197
69
97
76
122
94
106
124
83
54
122
82
118
216
161
111
115
149
136
182
127
165
95
132
134
107
83
131
102
97
102
128
101
178
151
137
141
128
59
54
147
104
81
102
99
110
84
157
144
125
112
91
101
54
175
144
120
125
74
102
96
157
124
67
146
95
102
111
122
133
128
122
106
88
141
131
54
115
107
138
151
54
143
128
131
147
122
80
78
170
108
113
167
148
153
84
69
127
120
110
158
133
145
170
90
101
69
95
98
95
103
173
54
110
90
116
128
101
108
103
93
151
103
114
140
144
100
143
119
131
95
102
111
92
106
111
121
77
122
118
105
143
136
147
110
49
65
102
113
117
96
119
128
74
113
54
119
45
160
123
95
97
113
125
83
117
126
103
142
90
108
68
90
138
145
84
83
81
88
176
72
189
67
108
115
76
106
97
100
132
132
111
97
115
102
82
54
110
87
77
93
103
105
118
88
74
54
133
68
112
163
59
108
106
94
104
134
101
95
152
128
76
105
129
107
147
98
125
62
80
127
167
94
103
129
127
154
115
94
145
113
171
98
144
123
216
83
108
81
149
104
57
133
125
128
131
114
128
137
100
122
123
104
122
91
99
87
102
148
112
113
95
54
100
165
145
106
133
105
113
121
145
122
135
124
144
97
156
128
144
74
165
68
102
123
107
87
135
112
147
105
95
98
143
101
149
69
125
129
106
49
163
139
107
177
80
124
82
82
102
110
132
177
148
99
103
75
106
140
69
135
141
136
144
131
129
111
140
124
102
83
102
95
113
192
100
87
71
140
176
126
133
94
204
118
148
129
127
89
106
150
134
133
115
148
85
135
125
178
104
96
133
106
148
74
94
144
137
124
116
95
133
143
134
132
130
59
95
76
108
54
141
67
101
127
118
108
113
152
120
101
163
74
131
102
78
127
98
86
151
95
54
120
109
142
136
147
103
87
89
49
108
127
125
115
140
148
59
103
74
95
121
132
93
193
97
108
125
68
120
168
114
113
90
105
135
83
81
123
108
136
112
158
112
95
63
144
157
99
122
93
89
103
150
121
177
78
134
54
122
119
133
129
54
108
128
117
113
77
128
147
135
140
117
198
102
115
139
159
78
54
80
119
118
101
153
148
138
124
54
68
130
76
131
131
169
74
127
98
90
144
128
104
49
191
105
128
158
82
127
83
158
130
108
161
126
209
144
105
83
138
108
132
103
114
148
130
141
54
54
125
94
175
78
77
108
157
98
128
177
83
108
104
116
123
93
135
95
148
110
126
169
113
130
96
108
90
98
54
108
106
144
49
103
124
105
98
73
119
125
146
152
154
117
106
128
89
113
201
98
108
110
125
81
90
123
123
84
128
93
177
110
124
96
147
138
95
143
109
82
113
158
104
130
172
68
90
74
95
111
165
87
134
174
137
82
144
130
146
77
101
85
95
88
91
102
98
87
115
118
137
76
129
87
123
146
59
90
111
90
98
169
161
101
108
133
108
114
78
103
74
112
116
123
84
177
120
102
143
108
119
81
131
144
112
93
76
141
180
129
103
54
102
54
137
128
109
102
148
119
105
135
108
49
100
79
49
109
105
101
122
103
101
108
131
111
128
101
49
160
154
154
191
123
83
204
105
108
49
177
78
54
204
76
118
143
111
98
83
77
119
96
130
83
158
93
112
112
135
169
113
65
146
119
96
139
89
106
167
76
120
146
107
95
101
138
155
87
93
85
113
120
74
54
74
97
138
125
136
177
95
87
83
87
141
59
129
102
127
59
54
131
125
74
124
138
98
118
115
136
111
85
78
121
95
95
49
156
54
141
161
135
101
61
115
160
74
54
148
118
180
136
98
80
115
110
107
105
98
102
102
108
188
90
101
54
107
70
85
117
88
116
102
126
78
123
118
107
118
158
90
138
102
123
129
87
94
177
113
149
85
112
141
113
92
108
97
118
96
127
156
112
100
120
106
144
129
128
153
170
61
114
103
111
156
139
79
90
138
160
128
139
120
122
108
83
98
70
129
88
74
112
128
176
122
127
61
103
171
158
96
137
148
133
67
82
142
123
114
137
152
162
125
98
59
125
80
107
139
98
150
112
147
115
94
113
139
173
54
108
128
129
108
137
109
109
191
113
114
80
49
133
145
82
87
102
110
101
102
111
102
125
98
67
105
116
109
108
100
125
54
113
95
45
86
122
116
98
129
143
82
119
120
136
54
117
134
101
87
87
86
102
126
130
83
110
127
103
107
101
142
54
156
108
138
100
113
77
128
110
150
103
97
106
114
98
161
123
148
90
153
124
54
122
171
137
102
133
107
153
111
98
161
126
163
97
74
117
112
112
133
118
109
85
85
127
145
141
118
131
133
107
180
54
168
90
134
135
100
98
108
126
190
108
98
102
102
100
96
95
91
129
96
137
79
113
94
78
108
87
118
113
187
100
108
119
107
118
102
142
54
69
95
143
81
107
129
93
142
87
67
149
139
177
95
89
74
119
110
167
49
102
120
146
165
119
90
129
128
80
97
120
77
102
148
142
74
105
136
150
112
92
98
111
123
183
117
148
77
110
123
167
110
102
130
147
108
163
138
118
92
150
134
91
110
142
112
118
90
85
143
76
133
103
93
154
125
177
120
95
130
135
126
129
98
100
54
110
123
107
77
100
156
54
87
124
78
83
90
74
95
123
54
118
102
128
119
131
108
113
109
147
110
96
93
95
125
83
90
127
59
105
72
67
93
49
125
59
157
103
108
97
112
103
115
74
82
158
90
128
133
89
139
97
90
77
67
116
149
103
153
108
149
118
125
139
173
89
103
73
153
123
103
123
113
98
130
162
85
116
108
108
116
129
155
113
90
76
81
176
130
120
96
108
98
134
169
67
139
89
107
103
88
111
127
120
164
81
102
112
156
90
135
82
140
98
140
102
117
113
129
123
98
127
119
104
178
148
131
90
91
142
98
98
125
143
119
95
102
127
125
112
145
111
125
146
128
49
150
67
118
90
113
125
200
117
136
120
105
170
106
145
108
125
100
127
103
99
140
108
80
114
76
95
77
77
104
80
146
49
105
99
120
149
114
87
143
148
150
103
108
129
120
123
159
129
106
200
122
110
90
118
95
97
100
159
118
87
113
109
130
121
59
96
113
98
79
104
103
83
90
82
98
126
98
147
122
126
108
104
110
139
118
155
145
146
128
108
108
108
109
69
104
85
146
172
129
110
129
105
165
125
127
138
102
161
59
83
129
90
125
165
143
93
111
90
77
135
123
166
61
95
109
154
89
81
115
128
144
102
107
158
95
101
152
115
115
112
112
103
127
87
188
95
105
115
108
107
101
123
133
131
124
161
95
133
97
92
92
85
85
118
82
124
93
158
156
95
105
135
95
124
69
87
112
128
129
108
97
96
94
155
81
177
90
111
100
154
128
95
90
90
83
106
108
94
118
106
133
113
145
134
80
108
76
160
138
160
103
87
125
146
77
153
119
88
54
102
112
88
161
120
54
181
141
90
98
148
97
128
121
126
93
129
117
117
108
96
86
102
108
102
128
93
79
131
105
202
112
115
119
107
120
85
125
128
105
131
116
121
105
169
85
152
128
103
102
99
81
185
146
113
133
106
123
90
97
117
82
108
131
104
101
122
129
118
135
91
136
114
98
54
103
123
94
61
125
104
113
179
133
103
121
135
142
105
82
148
160
148
118
108
114
108
137
174
97
133
146
155
143
111
130
104
173
82
158
127
89
62
78
112
100
147
78
107
113
139
82
99
107
54
96
114
107
69
82
117
79
49
133
182
111
97
109
93
49
49
49
94
107
176
115
79
133
139
94
98
125
100
129
129
106
102
148
71
135
88
148
131
109
87
108
146
143
89
111
97
74
149
103
165
125
135
140
149
95
133
108
68
149
73
130
125
111
98
128
91
111
147
54
144
123
123
114
108
98
95
107
97
115
112
161
162
126
105
108
115
137
148
102
161
147
67
148
74
98
122
96
122
150
75
172
117
180
107
120
74
49
68
77
114
134
95
140
114
116
79
116
92
127
61
114
133
80
117
104
90
82
90
81
96
139
104
107
140
54
148
121
83
125
93
69
98
54
114
150
84
76
161
98
98
142
94
161
134
80
153
136
174
96
95
135
113
123
144
133
167
108
120
128
138
61
133
133
80
77
125
117
131
137
163
81
84
125
112
79
131
124
90
123
135
146
143
127
188
160
120
79
98
141
154
116
103
74
49
131
68
83
101
98
113
141
103
124
133
157
82
113
102
122
113
119
134
85
77
133
158
134
98
54
106
102
98
126
76
141
102
136
105
78
133
117
138
106
124
81
88
91
126
109
82
102
98
103
159
93
163
106
148
207
172
75
187
92
180
95
144
116
111
101
74
90
149
146
122
144
92
112
133
95
101
65
108
90
78
90
108
89
106
133
74
121
154
108
144
133
162
122
74
113
108
121
133
100
118
111
167
165
90
167
109
118
82
188
98
82
68
102
155
93
160
108
134
139
85
101
133
131
102
139
95
121
124
118
97
133
114
87
160
149
141
146
81
98
141
124
131
124
101
101
109
87
118
125
131
102
153
69
144
114
103
123
148
108
133
129
113
89
149
96
49
49
148
101
102
112
102
102
108
113
94
79
94
106
153
107
152
114
102
120
102
85
103
96
87
80
116
102
120
112
136
151
115
143
121
129
81
156
127
108
103
141
73
108
87
49
167
54
82
49
149
95
166
131
99
69
113
172
135
49
59
81
149
113
112
123
179
70
149
166
91
131
109
91
93
128
97
144
113
119
133
78
112
108
90
108
98
116
128
125
125
131
140
93
118
102
126
125
198
91
145
91
110
118
108
113
115
156
99
104
115
97
130
82
129
98
102
144
126
79
54
113
130
161
149
83
148
139
111
160
118
101
95
145
131
184
91
59
158
132
93
117
126
153
105
105
155
102
85
125
95
117
118
54
115
121
91
108
98
152
112
101
112
104
122
98
54
107
136
151
149
81
128
112
103
81
106
108
140
95
87
119
105
120
136
93
83
49
61
165
140
109
98
95
118
134
141
49
91
93
61
149
159
113
49
59
83
107
96
149
119
154
139
137
98
144
112
133
123
139
69
131
110
151
61
95
125
92
131
141
113
112
101
133
173
116
96
141
102
104
95
91
117
125
88
102
98
122
102
161
147
114
90
87
135
128
136
106
124
165
98
95
49
143
147
98
82
166
122
161
81
75
177
104
109
103
90
115
80
177
148
76
49
122
120
85
79
103
98
113
79
104
108
77
130
95
106
65
182
110
157
135
95
87
186
143
148
96
138
141
54
92
49
141
113
170
156
119
119
108
141
140
54
125
145
128
103
120
145
81
132
94
122
93
125
87
131
74
133
160
120
115
122
182
79
103
83
159
101
112
125
106
131
115
87
87
67
76
88
90
83
130
122
97
124
124
116
117
124
112
138
133
106
165
113
163
78
134
74
92
127
76
108
89
104
54
114
95
87
124
131
156
95
141
153
78
135
122
122
127
162
96
110
107
125
85
123
102
125
109
140
121
120
103
76
103
104
108
172
158
96
107
158
151
146
99
108
59
124
114
110
144
106
81
75
149
154
153
194
95
168
105
94
102
112
107
90
91
136
113
122
113
94
161
128
123
121
107
102
95
81
173
140
100
118
164
102
133
177
98
105
49
166
120
125
74
67
117
140
115
103
105
138
109
95
122
111
123
90
148
136
81
128
112
107
151
127
135
147
106
78
165
122
198
144
93
59
95
107
110
99
136
102
112
117
91
125
173
106
145
185
161
108
82
90
54
169
133
136
146
133
137
123
69
141
115
68
144
54
89
59
118
132
143
124
113
194
80
131
107
103
95
124
107
59
117
127
82
73
150
122
105
81
134
109
90
130
148
100
119
96
115
161
106
128
108
155
81
161
159
216
124
153
98
129
127
118
71
125
116
141
106
131
142
92
120
77
96
82
95
112
131
121
108
125
99
134
159
145
100
108
108
128
122
163
77
98
95
235
110
90
54
117
91
54
98
98
114
142
54
81
120
198
115
162
98
97
162
61
87
123
119
100
89
128
116
131
102
137
158
123
129
114
102
82
143
98
67
54
95
74
175
101
107
124
148
118
179
104
162
54
117
123
103
103
144
129
83
118
207
125
54
83
116
131
157
118
144
137
70
110
108
159
118
129
120
122
117
67
86
100
165
146
144
87
102
91
138
83
102
90
87
109
90
158
111
96
158
80
113
110
83
155
102
109
168
177
182
99
167
115
121
145
106
92
95
107
78
98
161
158
106
124
144
83
146
128
83
108
139
83
87
128
87
93
143
107
89
105
95
94
165
74
54
142
148
105
156
130
148
122
77
114
124
54
102
96
113
99
114
129
139
113
108
144
94
49
94
82
165
135
59
95
134
125
112
123
74
170
87
93
132
126
77
127
140
118
98
148
133
106
97
118
93
142
180
125
147
125
135
149
83
87
87
146
106
88
111
144
172
87
148
120
97
103
113
114
120
111
76
104
87
128
96
116
175
62
87
122
134
120
103
54
132
109
143
117
91
93
105
49
87
112
147
87
126
150
107
49
137
149
108
102
127
162
81
80
119
54
136
138
116
158
132
121
116
133
111
54
123
93
49
89
87
54
95
72
61
74
137
118
180
130
59
142
117
114
102
54
200
108
115
93
124
91
120
138
120
90
133
142
142
123
138
144
129
118
151
87
142
109
86
134
141
104
81
140
74
110
191
82
90
143
85
108
123
49
143
69
153
49
98
129
139
177
127
180
113
102
114
122
122
135
105
112
98
116
84
139
115
108
142
111
54
95
77
120
91
144
110
129
85
49
83
102
83
141
97
108
106
81
121
76
88
98
54
108
95
81
130
82
144
102
49
157
106
145
96
145
138
54
115
143
134
101
102
96
69
81
110
115
167
101
59
108
118
67
131
94
103
148
102
141
86
151
129
126
139
127
103
119
219
54
156
102
151
91
54
69
111
131
77
108
158
135
114
172
155
95
110
156
74
128
147
95
180
200
112
80
108
74
140
98
128
87
143
118
101
147
157
117
102
185
188
81
92
132
91
78
123
97
76
164
90
110
90
81
114
67
148
115
123
98
131
54
123
149
113
129
117
135
129
145
136
135
149
80
143
142
90
146
188
122
108
141
155
116
54
131
97
108
98
49
111
96
176
102
108
69
133
185
92
160
100
120
119
172
118
123
90
95
144
131
124
157
111
54
119
59
165
104
108
122
74
98
57
129
120
106
97
68
191
170
102
159
158
54
121
113
116
76
125
54
108
102
115
117
99
110
130
123
133
110
129
149
122
159
141
166
67
59
152
102
89
107
128
88
126
173
105
113
159
120
95
90
141
49
123
153
124
171
97
139
100
153
128
61
124
59
172
82
107
154
85
135
110
108
125
96
128
82
96
87
108
200
159
110
133
125
69
54
91
76
105
102
110
87
179
133
192
111
67
148
119
113
95
144
108
164
103
102
133
98
200
118
111
67
160
138
121
148
147
118
129
54
139
102
113
112
135
167
138
135
133
120
143
93
133
108
77
109
95
61
108
125
125
110
153
108
107
91
179
145
125
142
81
116
59
95
98
102
118
120
103
144
135
134
54
128
82
59
81
130
74
102
94
54
78
93
49
79
77
99
148
103
49
112
125
106
192
89
135
180
161
141
102
100
83
182
112
133
82
146
80
102
105
91
74
153
163
72
152
118
136
138
122
95
93
139
79
76
111
117
168
91
133
79
104
129
54
59
89
87
168
76
108
61
61
145
141
77
83
154
156
91
110
92
144
119
87
147
148
128
145
91
103
95
103
116
81
95
157
129
115
154
124
110
106
122
131
147
102
95
118
128
119
133
125
124
49
122
162
82
126
116
98
74
108
81
155
105
158
117
125
135
133
93
124
121
159
113
128
95
74
112
123
96
131
102
128
152
134
120
118
93
123
122
133
99
91
108
95
93
154
89
104
133
83
69
212
119
126
92
138
151
152
122
85
102
113
77
165
124
118
144
133
59
85
105
200
120
92
87
133
131
147
95
154
108
54
178
132
88
134
158
135
119
125
139
105
125
103
163
78
54
135
100
81
93
143
127
111
140
142
99
107
83
100
164
103
106
129
132
81
54
145
108
113
191
216
131
108
127
80
173
141
140
129
95
138
101
80
130
112
174
100
84
54
114
133
138
140
126
66
144
74
54
98
172
158
174
148
120
135
149
77
137
79
113
110
54
144
143
125
165
54
87
136
121
125
119
149
78
59
121
135
102
173
147
81
144
108
105
159
105
87
107
157
95
49
158
103
112
108
107
83
79
163
102
116
96
83
112
148
145
118
98
113
125
80
132
123
81
123
105
128
135
95
77
148
155
138
59
160
143
191
105
120
54
108
102
128
121
103
128
54
121
148
93
83
108
114
108
80
93
133
95
116
68
157
96
89
81
130
95
78
154
120
115
133
190
153
112
99
107
143
105
104
94
122
95
139
177
91
120
102
159
176
146
95
131
81
108
68
105
90
91
128
59
108
102
93
140
103
125
102
119
90
105
107
85
144
139
54
74
113
129
128
183
134
144
150
97
132
69
77
161
135
93
110
96
108
104
131
108
125
165
135
139
91
107
87
124
163
95
224
42
102
104
129
109
108
96
74
103
103
133
157
156
74
54
81
76
91
110
108
93
143
117
161
59
97
54
73
108
162
59
107
184
102
100
103
108
81
132
85
108
192
112
49
90
125
77
100
112
114
126
115
110
158
97
142
54
49
133
82
82
163
145
54
112
122
128
93
120
145
90
175
160
90
115
92
144
113
141
179
128
102
128
82
132
132
107
105
151
165
87
91
163
54
116
133
142
115
85
107
149
109
128
101
127
111
125
102
96
159
106
113
127
194
91
87
103
156
83
116
168
81
131
136
143
67
117
78
133
107
90
95
96
107
59
136
129
102
76
135
140
121
163
122
93
94
61
89
82
150
108
148
135
87
133
112
116
143
132
99
140
129
111
54
166
141
95
95
88
89
98
156
156
107
110
184
104
98
76
84
98
139
119
87
129
90
134
85
119
122
149
200
54
132
119
121
131
134
131
185
91
113
108
139
98
108
148
108
107
130
199
128
133
115
156
76
113
80
76
109
86
78
101
143
96
124
102
144
103
81
68
99
145
132
125
138
85
118
119
133
178
81
125
82
74
98
87
54
144
109
90
125
206
125
74
102
77
137
160
124
139
146
95
110
138
112
101
142
88
214
82
129
82
93
120
115
151
113
101
112
74
142
135
82
169
128
102
78
91
108
112
137
95
234
54
113
59
84
158
125
111
127
95
106
148
81
113
102
103
147
129
139
54
54
143
169
120
141
140
143
143
128
54
127
111
117
143
97
93
81
121
118
81
59
105
140
95
118
155
95
111
130
98
54
142
106
150
125
49
131
95
100
98
88
108
147
114
109
89
152
108
146
124
103
129
106
115
120
136
122
92
125
201
118
127
106
131
103
126
106
174
80
94
128
105
113
84
140
126
119
135
59
96
134
128
61
54
149
123
54
100
101
76
77
102
148
125
137
112
137
141
116
121
103
98
108
133
186
148
83
88
90
113
82
49
129
174
122
78
91
140
98
76
142
97
123
54
120
83
172
98
59
111
150
140
121
123
97
82
112
120
80
95
98
90
154
140
87
49
108
102
117
105
143
78
128
123
190
167
154
174
145
107
96
160
145
108
49
54
167
119
118
151
130
108
102
107
91
116
132
107
90
72
118
81
74
118
117
172
54
123
99
104
141
106
114
71
95
158
111
109
129
148
93
107
98
103
121
159
121
126
102
139
102
113
97
131
90
124
132
108
148
112
130
130
141
59
118
117
111
97
115
123
142
115
112
88
131
123
100
59
103
134
127
95
118
100
49
85
87
81
68
86
107
67
98
110
54
130
139
139
131
143
143
49
135
124
153
136
81
105
179
76
100
132
194
152
101
123
102
75
54
77
94
131
139
115
151
127
115
135
93
81
124
116
115
135
98
76
113
105
110
82
148
108
90
134
136
93
188
92
105
158
177
133
98
108
118
93
139
83
124
124
98
135
123
90
83
135
118
167
59
118
54
143
102
108
144
78
131
74
117
148
95
123
106
144
177
106
87
83
110
123
108
126
54
108
96
102
156
83
180
119
115
72
95
113
108
108
54
97
150
67
54
108
127
93
101
105
139
115
82
98
158
95
184
148
118
136
132
87
59
67
143
95
135
110
117
92
143
146
129
117
123
116
151
113
111
147
127
148
90
74
112
138
105
118
146
90
138
127
135
81
129
74
128
101
115
102
135
144
122
84
147
126
158
132
137
81
179
141
95
131
87
54
100
168
90
154
130
84
98
102
135
134
132
82
135
133
113
97
113
150
150
88
143
178
99
128
140
148
95
147
133
93
108
123
127
124
76
103
142
108
87
117
115
110
74
93
139
109
105
129
132
157
120
133
118
87
113
78
134
149
193
113
100
140
108
108
126
147
96
102
182
95
127
54
111
133
128
131
133
98
125
83
114
143
102
87
95
88
118
90
93
116
168
108
105
77
93
139
59
135
124
129
143
124
109
82
156
97
111
95
74
158
91
120
103
108
103
74
88
137
133
54
45
105
108
105
82
109
134
118
164
107
146
87
143
127
128
168
113
68
125
108
137
168
93
116
75
99
83
113
108
92
148
218
108
98
143
135
148
91
135
133
67
148
121
94
120
135
125
157
86
95
138
129
144
159
103
120
162
54
169
108
206
148
66
122
107
78
145
81
108
54
102
113
108
198
89
106
86
151
98
107
125
133
114
68
162
151
84
76
126
95
54
95
163
121
104
113
95
106
140
146
95
87
81
81
74
145
145
125
151
81
131
132
145
116
160
93
59
175
138
150
121
95
84
135
104
119
133
107
127
151
113
157
49
117
143
87
105
100
119
106
130
133
147
120
84
130
131
93
146
107
148
87
103
104
180
118
132
127
146
131
112
165
128
75
139
87
102
103
149
105
133
113
92
69
115
127
141
140
109
107
106
130
146
135
80
122
61
145
104
94
115
165
154
103
49
144
148
96
84
175
102
149
149
116
135
133
148
127
162
158
133
150
138
142
149
142
139
140
138
129
127
91
117
114
125
77
115
82
140
87
137
135
92
148
126
107
74
111
186
84
148
68
109
128
54
110
78
108
121
98
49
153
77
102
102
88
143
124
74
96
90
91
83
102
102
90
76
108
116
54
131
74
156
97
112
77
111
103
131
159
144
108
108
121
80
151
148
104
145
98
92
149
83
125
141
104
87
182
101
140
147
133
116
112
141
141
115
109
117
87
80
107
54
93
124
84
162
122
156
77
54
100
108
110
89
131
144
133
147
150
54
103
167
120
90
78
90
118
136
81
124
81
89
149
180
127
110
108
127
109
117
128
106
98
59
97
87
104
151
78
106
128
92
119
141
156
117
142
93
170
143
120
117
110
102
54
179
78
144
151
148
78
76
128
145
90
105
140
92
125
61
74
108
54
148
93
156
110
106
90
138
106
122
82
100
88
99
148
93
101
157
179
124
135
125
119
133
109
87
59
136
108
81
179
49
95
108
109
145
93
127
147
98
124
106
215
93
132
140
93
158
103
129
104
87
151
102
99
143
168
97
114
85
105
100
135
76
131
139
77
143
110
181
80
112
101
59
102
106
99
103
122
120
54
121
81
158
131
90
129
103
115
70
100
148
109
49
129
169
133
149
54
118
93
161
159
149
149
103
93
87
94
81
81
102
49
127
139
105
79
128
113
121
135
106
81
92
101
178
107
96
87
144
69
125
193
120
113
82
80
80
95
106
112
59
87
91
128
125
142
190
77
120
206
146
157
144
90
133
108
77
107
85
128
144
164
129
100
74
100
100
84
95
95
180
108
143
98
145
154
100
86
54
129
159
143
103
110
133
159
180
82
110
125
116
103
129
103
110
86
107
105
98
90
113
122
105
111
145
97
113
163
140
123
112
147
106
131
124
98
128
103
135
92
96
128
113
111
159
83
143
167
147
98
141
127
90
128
148
101
59
120
85
49
76
95
186
108
82
102
87
68
155
136
105
141
128
77
180
108
119
126
144
116
134
87
150
161
91
112
91
100
140
117
98
74
124
107
169
98
54
131
169
103
146
87
54
118
138
107
80
78
80
145
83
158
77
103
85
113
136
124
110
96
123
124
125
108
102
59
119
139
87
105
98
108
98
125
128
132
78
105
116
97
81
148
177
108
112
101
116
147
95
107
110
138
196
86
97
89
49
83
76
153
133
108
113
90
112
127
125
118
145
128
80
94
135
67
90
82
117
87
157
90
120
101
125
121
83
102
114
139
134
98
81
164
132
54
54
79
126
98
130
190
122
133
144
68
130
132
103
109
123
101
177
95
159
95
74
102
129
113
101
155
103
74
151
148
169
172
77
59
133
118
143
108
97
127
54
77
158
156
129
85
102
138
141
49
141
69
95
90
54
76
98
103
75
67
105
118
106
129
113
134
87
125
105
111
122
158
127
96
122
130
164
106
106
125
88
127
194
149
90
132
122
74
133
110
104
61
113
76
108
121
103
101
120
135
85
61
127
95
108
54
54
76
100
73
133
93
112
107
165
139
115
146
102
136
131
145
108
160
138
116
141
108
104
97
158
147
83
54
151
101
186
164
128
106
102
163
49
91
198
98
125
116
101
112
163
107
117
94
85
54
102
54
102
142
102
120
54
74
100
164
54
120
91
180
144
144
148
87
81
54
129
131
118
107
134
59
141
139
122
133
85
98
76
107
193
158
160
122
135
103
137
68
139
142
146
112
97
89
122
162
113
101
114
138
118
100
124
102
155
147
134
123
98
82
127
130
139
112
95
117
54
107
184
146
106
115
119
125
129
86
128
128
88
128
95
127
147
114
103
143
54
155
87
138
121
177
95
155
59
151
105
131
146
103
92
150
116
59
134
120
157
110
59
91
121
153
54
115
89
59
111
150
108
86
127
120
54
95
88
98
180
54
125
175
71
141
98
143
107
110
131
173
120
116
146
115
95
173
82
118
67
140
121
98
184
102
128
87
95
166
165
102
87
122
135
124
156
142
106
97
106
95
179
74
98
125
54
158
102
98
83
67
138
77
108
166
99
87
112
98
110
127
59
112
92
128
127
122
81
176
174
108
103
59
148
145
103
99
165
112
107
75
99
54
103
54
112
125
113
82
131
149
115
96
106
102
87
99
180
76
59
129
69
141
131
54
104
124
90
94
112
127
125
134
129
93
120
112
101
61
108
95
135
113
124
108
94
105
145
123
89
95
98
74
115
146
102
83
147
99
54
97
137
93
91
102
115
54
93
133
135
106
163
127
78
200
101
108
90
110
148
67
116
98
139
165
106
75
142
116
86
140
81
105
123
142
121
110
97
95
129
77
114
95
95
120
91
87
116
49
97
151
118
158
118
54
95
99
143
81
108
78
69
84
103
145
132
128
103
90
114
105
113
108
118
106
97
127
173
114
155
138
104
144
83
111
167
114
94
102
160
117
111
98
120
114
119
107
133
102
82
158
108
74
91
77
118
143
94
93
108
102
123
141
102
126
164
119
108
136
143
93
98
54
94
148
125
128
81
83
101
108
133
119
108
112
170
102
61
148
133
145
132
120
113
138
144
136
59
116
118
93
136
107
90
81
105
141
106
95
135
70
109
136
140
137
74
148
59
76
77
176
69
153
124
81
83
95
97
49
143
113
101
151
102
128
123
87
132
90
110
81
102
54
103
107
129
85
74
140
110
163
124
98
167
143
140
170
138
54
134
149
130
137
137
148
90
174
152
113
98
77
146
85
83
114
69
151
99
120
112
114
125
100
135
95
110
115
141
144
119
122
98
129
119
96
98
95
146
93
133
135
140
117
82
54
54
130
163
69
96
94
93
103
49
102
144
116
108
100
77
112
98
108
96
89
118
113
103
76
121
82
72
142
102
127
81
89
127
75
133
129
141
85
101
74
74
54
151
116
81
108
82
131
152
136
90
107
54
135
136
78
95
127
124
126
125
120
106
106
87
182
123
106
103
108
117
99
149
162
108
154
129
96
81
77
132
123
80
128
120
143
136
90
142
119
102
117
72
94
177
89
135
104
148
105
104
54
54
146
131
122
128
114
117
103
102
59
107
89
91
144
144
90
79
49
61
103
94
54
114
125
135
139
100
105
157
128
91
78
103
102
101
160
100
128
131
139
142
179
87
67
109
100
49
148
92
103
126
182
108
109
95
59
95
129
98
131
133
148
129
73
79
182
116
76
94
165
118
93
112
96
142
165
125
61
98
54
155
79
88
124
94
90
101
97
113
113
108
93
146
95
87
144
131
190
115
119
158
74
131
131
77
116
91
81
54
113
160
143
139
78
59
140
91
98
137
106
134
139
107
110
116
167
129
85
113
68
140
92
97
141
134
127
117
128
150
101
93
154
119
126
116
129
107
150
172
115
127
54
106
99
115
149
103
116
121
90
117
128
85
98
161
135
54
98
85
82
116
147
173
106
106
77
98
165
105
132
101
108
128
139
94
81
138
129
105
122
134
135
121
132
99
129
123
128
102
70
92
118
107
111
90
177
106
102
83
102
118
125
121
169
102
92
122
111
120
129
135
97
54
177
106
142
106
161
125
161
77
108
148
111
115
59
104
118
101
131
103
168
116
144
155
95
115
144
102
164
109
116
114
127
107
110
155
157
98
95
135
105
108
130
110
94
143
110
101
134
113
90
153
100
117
54
49
86
82
121
90
145
103
103
91
76
158
86
95
98
129
82
54
111
137
107
81
106
140
143
121
141
91
103
54
90
148
103
102
54
129
123
78
77
90
149
107
106
141
108
91
73
135
148
108
129
143
98
89
166
54
104
162
102
125
54
150
93
143
115
146
125
54
149
106
127
146
81
99
113
150
59
140
124
105
131
128
94
122
108
161
49
123
93
111
67
68
165
133
134
99
124
132
117
150
101
168
59
73
71
101
103
109
132
95
76
95
118
105
168
113
125
93
82
128
123
106
135
144
156
179
101
123
90
90
120
114
83
54
115
108
146
99
74
135
117
84
119
110
170
105
98
180
112
128
89
91
133
161
111
95
125
113
102
79
67
102
54
146
93
144
167
128
146
107
120
186
119
112
113
125
90
49
90
94
161
61
111
85
68
93
162
129
99
78
83
49
54
94
180
125
98
116
93
113
49
76
135
166
94
102
122
138
113
108
96
87
102
139
96
103
120
91
95
140
128
95
79
97
101
110
111
82
76
139
90
83
128
136
126
108
68
79
125
84
143
138
145
149
113
149
150
125
127
128
95
143
54
97
138
140
103
120
77
102
105
89
98
107
104
135
131
131
110
132
93
110
172
69
112
67
117
122
98
109
151
108
81
87
149
144
145
112
129
123
108
117
97
81
108
78
106
145
129
108
108
113
112
74
186
145
49
76
109
93
87
112
117
143
103
54
73
77
146
54
128
135
145
143
134
49
130
149
180
134
110
124
125
106
59
135
138
120
134
140
81
103
137
124
154
83
109
95
106
128
158
81
81
148
103
80
136
117
115
143
78
54
74
190
135
54
98
135
108
118
49
112
172
96
108
54
78
127
136
173
81
99
108
54
108
108
114
79
128
101
99
122
108
122
106
113
101
150
158
115
132
91
135
102
76
103
121
94
113
146
99
133
76
94
54
149
54
130
108
119
90
158
108
97
100
115
49
110
119
108
103
88
54
107
92
75
124
87
174
124
148
165
83
156
119
153
139
126
126
108
95
115
102
118
141
113
110
148
140
115
125
109
102
132
82
167
49
126
113
81
49
139
109
129
162
82
99
98
68
82
105
107
79
135
102
103
168
158
157
142
83
124
157
106
91
113
158
163
124
162
186
108
124
123
104
140
108
77
68
136
131
93
107
85
90
97
179
177
131
143
83
54
126
150
121
141
116
148
87
139
116
177
150
133
193
81
86
157
135
118
154
135
77
139
111
145
148
49
123
122
127
121
107
108
54
150
121
108
107
97
183
114
121
113
61
149
122
98
135
139
143
143
134
87
177
136
153
104
123
137
113
151
92
124
144
98
100
102
83
140
131
91
102
129
108
140
157
54
128
139
155
80
86
200
54
103
110
80
136
125
90
113
118
148
83
95
105
122
149
95
108
96
81
102
81
175
121
134
131
172
173
146
67
62
102
128
146
90
128
93
145
69
98
150
115
122
132
177
125
110
129
82
123
103
49
121
158
103
135
112
49
95
155
108
102
113
156
81
90
142
119
92
87
103
149
141
135
131
103
131
119
123
98
117
115
130
74
127
108
54
87
116
89
108
134
112
112
128
103
108
122
134
182
137
102
109
94
105
102
216
108
109
153
117
107
172
93
157
54
118
149
90
113
137
143
49
107
115
54
77
54
81
153
168
117
98
133
70
61
161
171
133
98
95
91
102
121
121
125
49
151
108
127
103
54
122
129
93
149
139
67
59
90
88
126
102
103
148
184
113
78
103
140
73
125
108
147
144
95
86
125
129
99
83
146
115
87
102
88
141
140
86
146
113
103
103
91
108
103
140
91
128
106
113
82
49
172
96
182
139
138
116
140
87
125
81
131
112
83
84
133
104
165
133
114
113
141
98
108
115
95
108
105
92
119
61
146
99
114
134
108
126
148
108
135
160
126
153
135
129
90
131
141
113
108
102
132
153
126
111
122
108
126
77
138
119
119
81
91
125
140
91
105
90
101
91
102
126
102
77
158
122
112
99
103
124
84
102
102
108
143
102
54
141
59
103
82
100
66
84
151
69
82
98
130
95
122
146
150
107
105
158
148
143
93
45
108
144
80
125
125
125
67
69
76
111
125
91
89
125
160
81
139
135
103
127
127
148
111
83
101
150
98
102
91
90
90
104
140
137
153
96
144
85
87
134
132
150
88
112
83
98
87
173
79
126
113
94
131
102
125
134
106
76
54
157
119
128
113
111
153
105
106
148
147
101
120
132
134
155
167
79
110
106
74
148
112
160
54
138
135
110
163
141
177
81
148
95
87
125
132
79
113
77
98
77
164
131
147
140
83
140
54
121
180
125
165
127
98
69
90
85
135
161
131
76
148
140
54
122
115
122
105
111
100
125
152
140
129
69
128
80
87
81
111
76
72
108
139
94
108
135
116
110
69
146
74
103
54
109
137
118
109
91
107
95
94
123
102
110
95
83
105
133
82
94
134
104
102
107
118
148
103
133
111
102
120
148
83
85
104
130
125
107
114
101
112
91
125
87
147
102
109
95
116
108
99
99
131
76
114
103
95
102
81
98
129
120
98
76
112
131
96
163
132
91
138
79
76
102
77
68
108
54
144
67
120
115
69
139
94
157
115
126
106
151
165
102
49
115
98
118
120
96
83
206
101
116
170
127
128
133
84
77
54
109
96
136
133
180
93
67
94
127
89
108
135
103
54
112
95
77
186
125
129
95
92
113
125
93
135
82
112
107
95
103
99
108
134
154
107
131
118
82
132
103
141
96
159
81
98
150
102
121
59
110
141
102
156
115
115
95
134
162
114
94
113
128
116
102
139
114
62
156
161
91
200
153
144
159
179
74
99
81
148
95
74
104
129
139
127
106
169
111
151
106
134
116
143
113
108
105
112
116
132
225
127
123
101
138
116
135
165
109
129
87
130
154
101
59
129
124
135
83
148
159
93
114
81
125
174
168
105
129
125
92
119
91
87
123
90
116
120
108
158
148
101
79
144
127
85
125
88
112
139
103
103
89
125
153
119
83
59
133
89
114
163
158
194
98
102
125
102
113
158
88
132
81
111
215
105
123
108
148
146
59
208
129
115
108
160
54
149
73
84
103
147
110
159
81
113
126
169
142
134
80
108
109
112
110
144
128
77
119
114
119
87
140
80
134
100
104
61
105
129
121
76
127
98
93
155
127
92
80
162
154
146
96
199
177
106
102
125
163
54
122
147
113
97
120
85
125
113
125
146
128
151
127
181
98
78
122
102
90
89
106
95
102
54
140
132
108
159
95
145
125
78
105
144
108
155
181
94
120
127
129
146
125
227
107
148
106
159
94
123
95
108
87
80
54
135
165
77
107
169
130
107
103
175
157
133
144
163
100
92
122
102
172
166
118
125
107
109
133
96
154
59
54
198
154
54
93
95
98
126
118
130
105
122
140
110
67
113
81
153
59
140
91
126
125
179
92
91
98
83
49
150
106
116
128
119
110
78
109
158
131
74
96
91
174
119
106
130
130
144
167
115
144
103
121
180
84
119
98
105
144
115
82
131
116
90
54
133
45
138
98
106
133
107
125
102
100
151
83
103
149
169
151
180
140
131
111
74
112
102
109
95
76
105
152
166
129
133
119
95
54
54
114
98
138
128
148
138
133
96
81
135
91
134
127
134
77
156
128
125
74
98
87
148
141
161
85
153
122
131
104
122
113
126
138
97
102
146
103
102
54
177
141
102
108
129
145
109
105
114
97
93
122
49
115
73
91
77
194
100
93
139
121
125
96
172
96
104
132
104
128
98
125
120
118
85
102
95
81
117
54
90
170
110
49
129
138
153
106
127
128
86
116
102
87
108
87
106
122
87
200
102
95
118
135
90
95
80
95
54
152
98
106
98
116
111
139
134
159
73
97
107
102
120
54
141
144
103
130
125
136
148
131
108
85
81
104
168
110
118
73
86
85
134
110
108
99
95
49
125
103
149
115
116
89
99
125
126
109
87
133
134
158
106
124
137
101
108
150
125
174
161
129
115
123
54
136
117
142
49
126
161
127
129
100
79
143
151
98
104
129
117
119
125
108
107
172
177
126
95
148
162
110
102
105
97
139
104
140
104
135
120
71
79
100
54
120
54
63
69
149
155
49
87
77
100
143
118
116
133
54
102
140
118
143
100
171
92
93
103
169
133
146
108
95
74
143
159
138
87
156
79
59
98
97
125
84
93
93
83
134
125
95
143
134
144
106
88
171
162
138
138
54
54
125
110
139
124
85
80
149
85
164
102
59
124
91
123
89
107
100
117
84
106
103
144
150
133
142
171
103
129
184
93
141
128
118
98
59
95
70
89
121
153
98
77
153
49
54
108
126
114
136
98
91
107
131
163
115
95
128
157
104
135
90
134
150
95
102
80
119
73
54
113
102
54
144
118
67
113
123
156
92
156
182
82
98
123
117
123
59
96
107
95
132
194
54
103
49
110
194
147
76
145
109
115
87
98
134
156
131
100
185
90
133
142
108
126
127
102
120
108
154
101
54
112
138
96
116
113
129
99
107
106
110
177
129
98
90
160
109
198
167
101
83
90
177
124
110
131
82
103
118
107
106
142
105
112
102
88
76
95
116
132
98
163
125
144
133
122
84
101
81
128
76
182
117
137
100
124
144
200
94
111
105
116
113
133
186
129
102
133
83
182
106
81
116
170
125
115
119
126
148
105
138
131
131
91
148
141
112
87
98
99
138
122
143
164
102
76
138
81
83
106
108
91
106
140
125
103
54
74
84
54
87
102
49
124
146
126
146
177
118
95
139
122
137
128
98
109
143
103
94
120
91
110
112
145
113
91
127
125
85
146
110
49
102
151
81
120
99
149
77
105
90
98
126
106
147
76
87
139
156
144
138
140
90
105
105
134
80
105
77
143
119
108
147
93
144
95
137
177
116
84
145
101
145
105
144
88
98
74
178
118
69
135
77
83
119
124
104
132
131
108
122
129
186
109
90
82
99
129
86
113
67
120
120
54
125
104
54
112
114
102
102
82
116
107
142
80
125
102
113
111
112
139
61
90
141
123
178
61
88
106
148
80
113
111
116
54
129
121
105
131
132
102
137
54
102
143
103
148
135
96
77
93
90
124
86
107
110
124
115
125
98
81
135
115
115
92
120
134
108
128
108
114
139
105
145
112
129
105
95
138
138
108
120
122
113
107
93
101
54
174
132
79
119
129
156
123
102
54
144
108
122
54
124
133
81
102
168
98
105
67
113
104
54
186
119
149
131
148
134
102
106
109
141
148
130
139
102
74
98
74
116
78
98
67
118
111
108
165
122
141
112
105
87
139
117
106
76
97
96
100
111
115
123
119
126
69
88
105
94
141
116
167
68
141
82
126
74
107
115
133
83
117
89
104
82
134
98
130
87
113
132
129
131
170
110
135
120
93
148
132
134
102
98
100
62
115
93
67
81
143
116
85
97
134
102
113
155
119
73
113
99
95
108
103
106
107
102
87
108
96
97
98
121
179
128
125
167
116
111
106
139
109
83
77
151
93
135
106
116
106
164
137
121
54
118
67
147
122
95
160
49
140
133
109
83
138
123
121
135
151
97
140
131
93
108
113
106
118
114
109
91
98
168
177
114
118
125
129
116
119
113
156
141
124
102
157
105
83
103
154
175
77
135
87
91
111
93
95
146
144
118
106
119
90
118
120
177
98
85
171
130
93
104
129
76
103
126
124
161
102
129
57
139
68
152
124
91
110
90
108
144
156
113
127
129
92
101
180
125
104
127
179
94
105
133
95
49
82
96
145
95
130
102
113
59
110
114
139
123
146
127
108
130
111
85
102
147
191
161
139
81
90
130
95
99
118
96
98
190
108
112
118
150
101
128
162
135
144
87
107
76
131
95
116
102
103
90
101
112
135
83
82
104
139
101
160
101
152
95
81
102
105
83
124
130
107
120
129
93
108
127
161
109
143
108
98
91
74
134
106
95
114
130
61
102
54
54
148
97
108
108
131
140
134
81
118
114
80
89
93
127
148
143
95
156
159
102
108
89
67
117
135
116
108
110
167
107
79
113
107
95
153
147
81
115
96
109
95
90
78
102
112
107
153
78
83
153
74
106
194
108
131
129
133
146
131
122
96
113
143
137
112
49
163
119
120
95
102
142
98
68
109
59
116
134
150
227
100
140
108
113
151
150
200
193
77
100
94
137
103
91
95
137
54
78
138
92
161
126
132
151
54
84
81
129
128
172
183
125
102
133
121
112
180
115
108
100
140
135
149
98
61
143
87
122
95
131
102
134
167
102
129
76
134
97
124
78
183
76
89
105
74
94
128
133
109
142
186
84
68
108
113
103
81
82
163
97
77
111
118
61
131
103
165
127
115
110
86
128
110
140
148
167
116
146
97
135
111
144
129
98
54
94
125
129
117
69
128
87
119
149
67
131
54
143
96
148
155
135
81
108
154
107
133
112
194
102
109
125
90
122
83
76
145
93
134
196
139
178
125
74
130
97
125
175
76
152
138
91
108
159
197
49
129
113
103
98
108
134
86
117
93
87
151
161
135
131
108
137
133
68
137
113
78
107
149
122
158
112
108
133
102
172
149
155
87
103
122
102
106
88
96
161
165
137
93
82
122
54
147
125
99
129
143
83
91
76
185
109
133
128
147
152
84
99
90
113
115
151
83
137
105
140
89
125
89
49
102
102
87
103
94
113
166
128
131
131
74
92
139
113
108
204
93
74
102
130
141
134
139
76
59
112
104
147
150
122
180
103
138
128
120
131
92
99
128
131
87
49
129
116
106
96
133
77
83
108
139
104
93
149
89
125
131
87
177
105
110
170
155
141
127
120
125
122
126
85
147
108
82
93
106
140
102
49
122
99
54
81
102
125
83
109
102
49
98
129
120
93
122
112
108
126
102
114
99
83
113
65
113
148
150
138
135
110
180
127
118
136
100
122
90
137
126
135
93
133
90
133
123
61
106
77
115
98
80
78
49
147
115
113
179
148
84
59
101
99
108
133
69
134
158
72
93
103
157
145
123
124
81
98
95
133
112
121
78
79
97
98
82
153
133
144
98
128
118
87
121
120
123
92
119
54
148
83
107
85
107
119
74
54
110
138
160
128
123
161
115
96
124
74
162
92
132
95
142
145
88
216
143
148
107
112
108
54
98
123
102
112
114
132
82
78
98
93
105
135
77
168
54
93
100
113
161
112
61
100
140
129
144
103
102
113
133
125
140
54
100
77
54
117
97
185
102
95
136
153
83
108
83
108
161
101
113
88
120
87
113
91
105
154
77
89
82
111
148
125
94
77
118
146
133
54
49
102
112
49
143
139
111
125
220
123
65
104
116
118
110
95
103
59
105
143
98
134
54
97
100
151
119
89
124
132
163
121
103
102
108
124
118
80
85
104
116
180
61
158
148
175
156
128
93
98
170
111
142
138
92
148
177
112
133
108
131
97
124
130
96
135
135
110
123
69
108
74
76
122
101
95
180
174
148
102
122
68
145
151
101
133
105
92
166
132
54
107
128
95
67
113
163
118
96
161
180
108
119
128
124
61
158
104
147
113
113
130
115
178
98
125
82
85
105
118
107
94
100
136
95
135
135
106
78
136
119
97
145
158
54
96
76
74
89
113
113
107
96
141
165
54
116
135
133
77
83
131
128
103
179
133
74
133
137
59
81
59
107
145
106
146
158
119
98
105
163
163
147
135
123
159
155
122
139
139
152
169
100
85
85
143
140
129
159
138
83
153
107
122
149
167
120
150
105
104
129
97
113
67
81
131
83
93
81
108
129
123
76
112
104
96
114
87
105
122
70
81
108
145
115
61
120
155
123
135
134
74
122
109
128
81
128
122
107
87
85
95
127
143
91
110
145
92
124
127
136
120
80
171
105
105
102
102
108
132
82
119
113
123
106
217
105
143
109
130
160
97
93
140
61
109
128
93
100
151
93
90
121
149
98
137
98
136
124
73
145
86
93
107
119
77
181
125
94
148
161
141
111
106
154
110
112
98
140
160
95
155
107
102
125
115
141
102
137
81
131
174
107
103
91
78
119
96
102
100
95
61
95
135
95
81
103
157
74
153
157
135
132
175
120
93
127
131
134
115
101
54
151
114
144
104
90
107
117
119
107
115
94
80
125
127
173
101
87
125
114
145
145
118
101
68
103
108
106
81
177
159
195
133
132
98
49
107
103
95
87
94
106
108
130
95
119
110
135
54
116
139
140
126
86
54
141
99
131
105
129
117
119
151
133
118
102
133
124
124
154
106
157
173
144
128
194
158
119
68
144
131
119
94
159
115
146
105
134
96
102
183
123
116
113
128
127
135
143
97
118
107
54
85
135
119
143
69
98
54
156
113
148
115
131
69
85
128
224
138
122
128
102
77
187
87
128
182
90
92
68
117
98
147
54
137
119
115
76
128
77
77
120
109
97
131
98
120
112
98
185
102
133
133
81
145
106
180
167
110
74
54
108
164
103
79
103
113
144
109
95
102
126
90
103
54
93
100
98
113
149
235
155
166
91
133
153
168
128
69
167
112
144
148
135
108
125
87
78
122
96
125
105
102
117
118
173
131
93
149
124
147
54
118
109
76
116
178
121
102
83
81
148
84
102
153
117
144
102
143
182
105
122
141
117
77
63
108
121
105
106
127
74
113
91
113
105
107
110
167
96
108
125
102
118
77
115
176
139
84
119
104
68
144
74
102
138
74
103
113
120
139
95
105
115
123
128
93
102
103
178
105
71
108
113
108
95
69
127
88
151
142
136
120
109
59
59
108
93
93
87
119
140
145
136
146
122
54
98
117
145
146
126
85
124
146
95
102
141
170
93
103
141
139
54
129
93
179
158
135
93
161
132
179
106
104
174
82
139
158
102
84
97
167
137
128
120
77
128
114
115
90
91
91
140
111
125
169
110
92
130
78
231
106
114
112
125
143
135
140
83
140
118
77
122
139
109
128
135
117
97
85
96
146
90
129
111
135
148
177
119
122
146
135
135
141
99
108
131
168
127
102
134
101
108
87
102
141
129
153
108
146
143
156
115
94
84
89
122
118
108
140
131
140
101
54
103
90
116
137
97
109
128
49
132
172
142
94
157
129
118
156
97
182
120
108
112
74
91
108
143
149
163
132
192
137
108
197
125
87
125
105
104
90
119
125
114
103
54
108
49
54
140
144
139
181
102
178
75
98
148
125
122
108
125
169
142
92
160
95
153
131
54
169
115
74
117
133
74
94
73
54
81
135
98
125
122
151
113
133
167
167
139
130
118
108
117
103
80
159
120
94
194
95
132
74
105
102
99
95
117
74
74
105
139
49
128
133
83
168
144
135
87
143
102
84
113
133
123
119
128
54
108
104
54
152
93
127
141
108
132
110
68
141
142
132
143
134
108
98
107
131
103
110
94
96
115
165
113
123
108
112
81
118
107
129
95
196
113
77
135
147
106
90
105
113
104
85
138
112
104
108
107
143
168
132
108
103
54
139
77
125
128
206
103
129
133
147
127
108
106
128
100
135
82
114
86
131
82
148
173
90
90
99
156
103
54
92
102
129
113
100
133
87
139
127
93
111
85
107
78
125
136
74
107
125
93
98
68
91
139
87
87
82
145
110
61
74
115
114
133
139
125
96
142
78
123
165
139
106
128
123
162
124
127
102
102
132
102
113
146
109
118
80
161
105
135
115
49
90
98
192
82
113
155
67
54
76
128
128
97
78
153
128
74
148
157
106
111
79
153
152
133
124
203
101
95
119
98
146
59
95
110
103
105
116
92
140
124
140
127
129
175
117
94
108
79
145
126
81
82
87
151
54
102
120
124
108
143
144
83
104
111
102
105
172
162
132
78
99
115
102
105
148
134
118
139
120
106
61
119
110
78
82
106
114
142
88
128
111
99
122
131
144
117
123
74
106
116
104
129
124
145
87
177
77
98
132
151
118
54
143
110
148
122
83
76
129
82
117
97
129
156
178
133
127
169
131
125
140
119
96
140
124
131
77
99
118
154
112
135
113
105
112
115
119
174
97
59
61
129
115
121
124
105
156
136
59
177
59
117
85
145
107
81
94
128
113
129
162
139
140
110
133
105
138
122
98
120
93
115
135
148
73
102
151
103
113
131
130
99
107
108
117
177
84
123
107
74
133
67
110
103
177
158
127
115
125
115
108
108
131
131
102
100
103
121
123
130
147
125
85
98
115
96
148
126
128
148
121
59
87
113
148
160
133
120
147
81
68
141
98
157
126
120
113
87
115
59
132
180
97
90
191
135
157
128
153
131
81
128
146
79
131
95
128
170
74
82
72
101
113
54
143
138
87
143
148
111
139
106
103
125
146
87
108
145
104
103
137
99
99
165
81
85
81
127
154
115
59
98
148
128
95
168
128
95
59
99
95
98
107
94
170
138
95
126
128
106
91
135
74
91
160
82
116
104
95
86
100
135
145
76
163
164
114
119
105
84
103
82
98
141
109
76
108
98
96
140
145
132
134
132
103
115
126
113
106
128
77
133
91
113
95
150
101
125
83
133
93
98
128
78
119
129
161
57
95
94
99
93
118
154
118
74
141
143
68
144
90
117
147
99
161
102
129
137
158
123
92
120
152
120
102
162
87
167
87
101
137
103
84
67
114
167
120
120
153
93
74
113
99
106
79
81
144
54
97
98
131
113
117
128
82
78
103
129
54
105
111
101
164
93
111
135
128
118
142
95
94
135
142
153
78
149
108
143
61
103
99
117
68
102
100
108
92
102
101
98
133
102
105
91
114
107
93
139
93
87
95
104
90
120
91
110
124
69
103
101
95
69
107
182
140
101
102
108
54
144
110
107
95
127
98
81
146
96
180
135
110
93
125
148
113
104
108
138
95
102
132
98
105
168
197
120
121
108
117
96
49
125
59
99
165
101
127
102
134
116
129
149
96
82
77
126
54
142
125
147
68
62
133
160
67
115
78
131
85
116
98
141
95
128
73
146
174
134
114
93
81
61
163
126
117
49
128
125
169
111
54
91
116
176
106
98
95
95
104
191
117
130
136
59
117
96
122
143
101
61
161
77
140
78
59
124
153
135
95
123
135
81
96
108
78
67
127
125
102
127
54
149
139
106
74
118
144
172
144
158
74
59
120
145
177
194
150
130
83
115
78
54
93
118
149
49
101
156
101
49
108
102
169
129
116
98
135
167
141
91
148
158
124
108
133
120
122
107
147
89
76
144
68
123
74
147
116
129
112
157
69
115
96
124
99
54
102
112
108
84
95
109
153
91
127
105
102
115
108
98
122
78
114
148
77
128
116
85
123
118
140
141
102
144
54
110
101
81
98
125
90
157
135
112
116
108
108
90
54
155
145
92
102
161
90
103
115
76
107
139
49
126
122
120
74
77
95
133
103
122
99
107
144
124
132
139
157
141
98
98
150
94
67
115
54
145
162
145
114
110
144
95
78
118
102
90
145
189
154
89
82
61
167
114
105
111
147
131
104
110
81
98
133
102
125
146
119
131
90
150
138
122
139
142
125
113
119
127
88
98
134
142
146
54
110
141
138
117
100
177
179
87
76
122
96
113
124
49
112
127
126
109
138
94
116
88
143
72
98
107
93
85
106
78
144
133
159
133
126
151
87
133
165
181
91
126
98
96
81
142
147
122
97
133
185
83
78
137
59
149
125
49
139
107
107
61
67
160
129
160
96
81
148
114
135
143
120
96
108
175
59
148
54
83
120
148
102
178
134
74
108
179
126
105
140
87
149
90
116
167
87
85
107
68
145
159
116
133
128
123
92
83
118
102
163
118
107
128
78
131
59
149
110
95
106
135
108
120
177
103
93
121
120
116
102
158
90
138
144
69
138
120
129
80
118
108
94
108
177
98
140
98
153
116
109
106
127
139
171
86
129
117
145
113
87
102
78
54
148
131
135
130
148
162
104
108
144
128
105
70
84
141
107
59
101
141
132
74
99
108
153
128
129
97
103
140
77
124
91
67
84
98
82
108
133
82
108
54
112
101
61
90
104
110
100
173
159
135
142
90
141
147
107
143
82
167
154
117
157
153
167
131
113
84
108
127
161
78
87
133
70
102
141
101
119
103
79
168
115
81
108
143
54
199
117
179
113
127
132
101
108
108
83
101
159
113
139
133
100
92
98
112
110
98
83
110
77
129
167
118
141
115
93
95
69
107
143
147
177
108
114
81
108
157
125
120
148
123
74
96
143
125
151
194
54
167
160
78
113
136
120
49
108
139
59
104
140
105
153
133
131
154
145
139
132
122
82
156
133
59
104
102
76
159
106
82
103
152
127
108
95
88
116
155
134
54
135
103
101
131
112
125
108
100
91
49
111
95
98
114
108
121
126
113
89
93
147
168
98
91
101
92
113
179
67
138
89
139
119
148
104
90
121
175
91
83
93
146
125
135
77
54
119
191
74
190
109
98
87
49
121
98
108
104
151
135
131
87
78
112
104
103
124
122
105
152
89
54
190
107
117
115
104
115
112
131
65
69
90
102
119
68
125
90
59
95
119
104
122
105
165
103
157
127
120
128
155
127
98
119
131
98
95
105
90
109
138
83
103
107
171
54
101
143
115
87
146
105
144
82
124
171
124
103
102
125
94
108
135
93
160
153
147
150
138
140
123
190
148
78
119
137
81
179
130
177
112
98
177
95
98
106
78
115
82
112
74
164
105
133
112
91
114
125
125
79
126
105
171
128
77
144
102
124
124
177
123
112
112
191
150
122
138
120
157
113
139
84
135
102
122
78
94
118
104
180
113
140
130
54
120
98
129
81
88
154
113
100
128
134
135
132
81
108
78
116
108
97
86
172
105
133
155
137
95
144
125
184
138
91
167
174
90
165
158
134
112
102
116
54
98
130
107
103
76
93
151
128
104
61
139
108
82
161
107
74
133
150
123
124
100
140
49
120
124
54
83
117
144
144
72
49
142
68
167
174
106
100
170
98
82
141
125
85
90
93
103
116
155
151
76
125
103
108
91
160
82
66
197
133
78
107
117
114
90
80
128
105
95
169
54
116
59
122
128
132
131
139
93
120
114
86
110
110
68
80
95
142
105
174
54
116
83
181
130
156
136
142
120
178
163
49
108
109
133
112
148
110
96
108
117
168
132
98
141
148
148
112
138
102
99
116
85
93
106
62
87
95
146
116
115
121
118
119
120
134
118
194
88
108
85
95
119
135
148
89
140
85
61
130
107
98
85
113
161
87
145
93
107
145
115
115
87
108
111
114
122
98
98
79
77
108
81
113
98
49
71
82
150
61
94
100
144
109
98
79
118
140
145
156
91
111
105
130
78
95
181
54
138
108
97
124
131
96
69
123
101
121
144
54
133
133
69
134
108
125
113
144
147
84
98
90
67
114
83
119
121
113
116
141
144
148
115
80
102
131
140
102
117
105
90
117
199
126
107
96
108
129
116
82
108
157
59
138
95
163
125
59
118
107
133
114
82
82
105
69
146
157
127
82
113
151
112
120
108
87
92
158
59
102
95
175
118
108
89
87
111
146
101
151
134
169
177
113
151
112
88
95
158
90
102
104
98
89
127
143
131
101
77
165
138
159
118
123
54
106
102
98
106
82
86
113
112
141
128
141
156
94
108
100
129
102
89
146
87
103
184
110
134
151
112
118
112
107
104
77
54
115
91
186
87
126
125
93
104
141
49
93
49
59
102
168
106
102
82
147
121
88
103
54
54
122
125
100
179
96
143
116
99
115
116
74
78
118
126
135
85
109
98
102
135
95
102
93
135
98
131
99
106
105
125
173
99
103
129
74
140
185
83
148
99
157
132
85
54
162
54
139
96
164
123
93
132
159
129
141
54
154
122
140
113
54
134
177
125
107
113
61
194
102
109
92
128
108
108
125
136
96
95
117
73
54
117
93
99
101
144
120
153
147
119
158
157
108
106
170
73
128
123
87
180
98
81
97
54
145
105
107
65
67
152
125
116
131
54
80
107
118
109
111
108
147
122
113
99
111
54
102
158
81
105
125
104
141
54
180
158
122
120
148
81
166
68
95
140
174
103
105
146
110
144
87
158
71
112
129
86
122
145
122
108
140
147
131
134
116
103
191
130
54
106
106
76
85
89
108
136
83
95
136
136
110
152
101
124
181
126
102
136
73
128
123
54
54
138
69
102
107
103
190
122
151
99
125
132
102
49
139
119
77
110
135
121
93
136
96
128
126
123
107
127
100
99
144
125
102
54
83
90
115
59
89
81
95
139
93
106
150
114
143
73
123
106
107
61
78
123
116
148
121
115
112
104
106
122
116
93
87
72
131
101
158
97
102
76
108
102
80
113
102
121
81
138
78
154
100
96
107
98
116
112
119
138
127
105
81
113
142
114
104
107
125
133
89
148
49
95
150
90
180
80
128
105
119
89
140
120
123
93
108
133
74
98
54
111
135
68
135
111
54
133
118
148
126
186
192
152
91
74
129
93
95
109
127
133
135
135
133
81
112
97
140
148
101
54
113
73
143
102
87
82
157
125
75
54
106
115
54
138
108
81
102
129
88
139
109
125
113
107
102
105
92
147
81
114
138
102
114
97
123
102
78
135
123
104
103
130
156
98
95
122
103
104
83
98
122
147
129
184
157
158
69
94
132
117
97
163
150
102
133
118
102
131
85
136
133
103
74
134
174
102
112
94
148
128
106
158
166
93
124
82
59
129
59
165
98
90
152
54
105
135
101
145
107
98
136
169
105
76
82
131
76
102
177
144
135
119
130
78
157
81
107
120
123
93
103
169
128
69
96
96
98
119
59
77
141
105
54
126
105
78
112
105
97
161
113
106
68
67
110
139
164
110
136
98
146
76
160
95
139
138
141
95
82
128
90
149
140
126
141
124
123
97
158
102
100
117
151
93
139
108
95
108
68
167
132
137
151
98
115
110
110
130
116
135
137
97
156
149
156
137
105
150
88
102
121
130
140
115
116
125
54
146
80
93
111
67
157
117
78
123
138
49
158
90
54
143
89
160
87
87
123
97
96
128
118
54
108
145
106
81
54
125
120
80
159
147
130
150
114
61
119
113
103
89
78
128
97
124
120
101
95
107
129
107
91
142
125
145
160
156
94
143
119
109
136
137
108
79
90
124
146
93
121
103
95
85
116
83
144
163
82
132
102
125
125
69
153
90
81
160
157
106
95
148
85
142
238
156
89
125
100
190
96
106
175
84
68
102
120
95
130
122
118
125
54
114
103
59
146
54
107
122
146
78
106
108
161
88
103
144
102
148
134
122
162
106
92
108
82
104
82
154
87
129
100
144
86
150
125
141
154
141
54
135
105
140
136
160
59
133
82
95
107
130
134
117
115
92
111
129
140
108
150
123
92
78
161
77
140
113
111
160
110
129
54
49
118
143
74
108
87
78
77
80
144
138
90
123
137
98
127
159
113
146
131
101
116
162
54
125
104
95
106
146
76
162
148
69
154
106
174
94
108
118
83
105
83
103
101
141
128
144
140
108
93
123
140
84
59
136
113
95
77
69
145
54
177
87
104
102
54
101
106
147
54
88
145
103
153
49
98
153
167
104
125
133
90
97
91
90
144
114
151
126
96
106
54
113
95
109
141
127
122
103
135
90
100
109
139
128
113
125
143
78
74
108
79
123
138
80
103
101
142
95
148
129
94
126
167
86
54
132
135
81
110
81
181
54
90
105
139
183
118
108
102
136
127
92
135
169
73
127
59
49
122
134
113
128
97
119
155
84
81
54
148
92
92
126
148
129
131
146
148
135
108
98
72
81
137
104
98
103
122
124
121
144
125
81
98
127
155
152
146
119
200
81
108
90
146
124
89
130
115
161
135
145
95
105
102
65
101
125
97
98
93
93
121
122
133
99
82
145
139
95
143
145
54
105
102
167
98
82
119
111
147
114
146
141
131
128
130
149
115
94
156
137
135
79
76
90
103
99
108
121
73
81
81
125
49
134
135
130
143
54
125
85
116
87
98
124
67
129
148
102
153
133
158
93
133
128
107
150
138
93
94
102
147
125
93
75
139
162
95
148
118
125
140
186
87
54
78
104
77
135
104
138
82
143
100
103
181
109
96
147
148
98
113
107
112
103
106
123
152
197
169
111
198
102
129
103
102
132
148
54
65
155
94
71
77
83
112
107
105
142
125
98
128
140
78
113
102
89
107
102
123
218
74
101
108
98
124
146
54
94
103
163
128
125
145
99
104
54
95
150
130
129
54
115
78
125
97
114
132
74
109
124
88
122
102
124
99
112
103
118
103
77
151
59
108
81
180
102
132
138
124
102
157
93
54
85
98
90
90
135
68
125
133
121
86
102
102
96
82
145
144
147
126
108
77
109
127
131
146
106
147
107
137
107
106
78
139
98
167
143
182
162
93
104
97
131
138
142
90
138
115
106
158
158
102
80
144
119
103
160
103
74
93
156
82
98
116
98
123
54
95
106
102
116
145
103
76
133
95
141
82
119
127
126
106
125
79
126
67
147
108
109
145
130
98
103
67
59
120
174
159
128
125
106
138
149
112
111
116
99
122
54
61
122
98
146
98
143
95
112
101
120
131
95
98
115
165
59
135
68
72
130
67
59
98
116
102
95
176
77
140
102
118
166
109
108
54
111
116
107
131
94
73
110
82
107
160
132
152
117
122
122
116
99
144
111
108
76
118
135
90
104
142
123
134
148
93
169
149
137
101
156
101
95
135
102
81
131
130
138
129
141
128
77
169
129
149
145
99
74
113
116
145
147
129
136
131
101
140
108
157
101
124
133
81
107
92
81
131
105
54
106
139
128
98
148
77
98
124
59
132
156
96
82
151
69
105
89
144
85
123
127
134
137
109
109
61
88
54
61
148
114
88
125
93
103
115
104
69
59
70
54
54
95
128
128
150
113
103
54
108
109
69
135
79
125
74
108
105
122
114
125
130
54
142
148
84
177
114
135
95
157
95
104
98
130
122
109
144
115
96
124
143
89
130
116
103
98
122
69
129
128
145
122
117
101
163
136
128
127
154
77
161
78
80
114
131
68
133
141
70
49
86
49
80
59
108
54
92
85
113
79
146
113
98
179
108
115
102
124
179
128
151
115
116
124
102
128
59
59
108
82
107
116
146
132
76
179
61
143
90
108
138
131
123
96
81
124
85
166
115
140
85
129
49
122
111
129
97
76
125
180
54
74
100
143
141
119
148
80
128
157
129
83
140
161
186
125
87
97
108
100
108
113
148
112
102
120
108
81
91
125
54
186
116
72
120
115
124
149
108
104
59
54
104
113
148
115
61
54
95
67
129
144
78
136
88
148
116
98
83
121
103
129
148
91
103
170
68
81
95
117
135
118
147
97
145
102
164
101
164
153
74
128
59
123
103
150
143
96
131
76
54
143
90
154
94
167
85
95
112
119
164
87
144
95
76
113
158
107
89
122
81
128
126
68
125
54
136
90
130
93
85
93
123
114
79
123
96
177
154
145
142
101
132
140
133
78
107
88
140
107
165
134
81
93
121
76
109
98
111
137
81
139
81
107
113
120
127
145
74
107
102
153
126
139
91
95
96
115
156
129
138
100
140
107
118
106
68
190
132
139
108
107
120
134
148
166
128
125
123
102
106
88
76
110
54
147
108
127
146
155
130
90
102
141
127
138
116
108
107
131
95
92
124
130
119
129
143
103
62
149
177
66
78
141
92
81
110
128
130
105
101
108
150
116
103
174
106
128
138
59
111
186
90
87
117
129
113
77
148
106
98
133
114
110
115
162
125
179
98
107
140
107
133
74
172
126
158
89
104
106
105
123
105
128
124
91
130
95
125
157
110
76
78
109
141
103
117
144
54
112
126
128
113
68
97
148
98
87
118
97
110
107
95
123
95
111
131
150
59
85
186
61
174
120
108
105
182
113
104
131
120
180
74
157
144
103
140
104
104
113
77
117
120
108
140
139
105
87
139
113
108
177
119
108
124
86
104
82
77
49
108
98
113
157
91
108
103
102
108
120
59
84
110
95
108
167
91
139
151
90
103
103
104
125
125
105
77
123
82
128
164
128
81
120
61
122
135
102
119
128
196
109
167
91
103
133
169
98
76
158
77
69
149
112
163
143
116
99
112
147
115
54
158
114
90
94
102
95
85
95
95
146
155
96
116
125
115
141
93
113
103
146
77
107
120
95
99
143
134
155
141
113
120
107
108
159
90
102
133
135
90
115
77
167
54
87
69
95
124
122
149
149
94
140
103
96
90
99
133
106
76
142
85
89
105
93
54
125
132
95
148
173
108
113
129
93
91
143
123
82
119
111
180
98
127
76
104
101
83
139
122
104
99
144
123
86
143
118
134
120
98
123
126
130
104
140
80
115
128
151
153
49
76
107
98
134
129
98
97
147
81
95
160
87
113
118
128
127
113
107
49
120
140
116
96
148
97
93
92
98
102
143
140
157
104
127
59
157
81
151
132
81
193
174
120
101
159
116
165
123
132
136
76
149
124
144
127
114
144
102
84
82
121
118
163
173
93
82
119
139
133
99
91
126
146
155
91
103
124
130
100
129
77
129
82
148
98
131
150
151
95
114
106
114
102
124
177
92
120
90
135
93
125
98
169
131
61
108
95
54
86
112
124
87
108
154
135
95
120
87
160
98
54
131
145
107
105
160
113
100
99
86
128
115
122
88
80
110
90
90
54
67
141
82
122
141
144
81
123
148
81
108
74
140
81
139
144
102
138
118
90
95
80
81
110
81
112
116
77
118
101
121
133
54
135
78
138
160
96
132
149
151
81
98
80
132
100
90
106
124
169
158
114
98
129
177
102
134
127
107
138
120
128
143
148
148
112
103
193
101
164
146
135
101
119
123
113
115
153
141
106
141
108
97
87
113
90
114
112
153
145
105
81
145
116
59
96
125
102
127
81
115
122
91
108
124
84
49
77
116
67
85
114
133
124
134
116
99
118
129
90
85
102
107
104
91
81
87
93
131
139
94
128
123
95
99
110
67
139
139
85
117
143
101
67
127
124
92
75
176
89
142
49
95
112
115
128
141
132
65
94
102
103
103
97
109
105
90
158
128
168
85
98
77
135
96
115
148
142
113
95
147
120
54
98
149
107
97
102
61
96
49
161
154
54
108
95
132
111
102
106
127
186
107
98
74
125
54
87
133
105
102
225
96
125
49
100
152
148
129
128
148
158
74
81
105
78
107
112
84
54
86
91
144
134
98
93
104
95
98
124
115
145
107
105
113
88
85
146
95
87
98
116
165
102
130
90
98
115
161
109
119
76
81
105
54
135
103
166
105
133
126
82
98
133
161
106
111
108
95
81
83
113
103
97
154
95
130
131
88
95
85
128
95
69
102
104
83
109
149
102
89
95
96
54
110
103
110
128
177
103
77
125
145
74
114
98
49
92
118
97
49
118
54
169
163
125
112
111
121
108
143
156
95
86
107
106
95
95
180
107
83
116
79
67
79
133
143
123
74
76
76
85
67
97
76
108
131
67
102
156
127
169
159
107
169
114
82
131
103
81
166
103
78
115
49
77
134
154
108
95
87
98
82
86
148
49
112
110
118
101
109
147
143
135
133
147
126
133
103
114
143
86
114
115
182
125
131
91
133
121
77
90
170
177
108
119
123
54
108
125
128
128
153
89
141
141
106
148
140
129
59
131
147
54
74
83
77
199
145
91
123
165
122
107
142
179
54
125
61
144
90
82
119
87
68
122
139
54
97
149
140
163
106
96
146
133
79
151
116
69
147
85
77
127
103
173
109
105
54
121
140
117
137
98
135
131
100
99
81
113
127
67
76
93
81
138
202
131
91
177
102
98
133
120
145
106
143
82
118
148
125
54
151
139
103
143
98
134
54
121
54
123
148
133
82
108
128
123
127
107
112
102
122
177
69
144
96
107
119
89
103
79
119
162
92
135
54
102
95
98
113
167
119
135
76
147
102
95
110
102
188
127
54
99
108
179
102
101
143
179
122
112
226
144
79
108
140
80
105
135
104
91
115
98
130
135
133
104
130
172
143
95
84
103
128
136
95
153
107
117
130
95
127
123
67
117
98
163
89
150
151
102
130
121
96
96
177
81
69
95
129
141
61
108
74
105
83
98
124
95
96
95
161
106
164
95
93
110
100
121
115
91
77
87
129
164
99
106
95
135
117
125
114
117
87
101
161
102
127
186
95
124
116
200
87
126
111
138
117
120
85
77
136
143
161
154
124
77
162
102
102
98
74
133
74
112
124
101
76
143
130
145
99
161
102
102
153
74
140
123
122
132
129
95
81
100
94
85
163
132
80
88
127
121
83
172
107
149
108
148
136
108
96
129
174
147
119
134
103
87
128
156
104
125
151
111
102
108
90
138
135
152
139
133
116
124
122
88
133
102
113
109
141
102
97
93
127
135
85
118
83
74
140
103
133
185
150
129
102
197
94
49
178
124
114
113
112
83
54
116
83
67
105
168
115
102
116
116
87
103
98
99
108
98
131
147
171
116
126
81
122
180
135
129
54
96
82
101
120
112
121
118
73
98
109
94
186
131
77
177
149
125
125
139
111
107
135
147
141
86
142
145
103
94
76
118
102
143
110
102
69
139
115
97
128
113
54
123
124
113
105
108
103
117
147
61
149
61
116
113
109
90
134
81
152
125
95
70
172
138
150
83
59
103
139
95
172
153
115
105
122
138
194
54
137
109
161
113
96
101
145
115
100
87
135
129
98
95
134
49
93
115
135
108
49
81
149
102
49
133
83
77
142
68
115
139
127
199
225
134
101
106
101
100
87
78
139
159
128
128
121
108
95
81
114
101
115
153
97
95
207
95
49
86
83
210
119
100
168
77
88
161
161
77
132
143
113
88
129
82
101
84
95
110
59
110
49
127
144
131
123
94
125
59
115
135
93
102
128
76
133
71
120
102
179
101
95
128
96
141
146
141
158
105
95
138
102
135
108
67
59
185
127
127
130
127
143
95
158
54
116
93
74
112
134
87
125
105
82
108
143
95
114
100
162
133
87
115
100
54
103
108
134
103
108
177
132
74
87
77
109
127
154
135
127
124
128
97
174
108
125
85
75
104
74
120
104
152
105
120
95
117
131
113
98
125
108
83
61
159
139
98
49
151
150
74
98
111
59
120
118
136
121
101
134
125
98
139
83
108
112
125
139
115
85
124
166
87
98
68
133
96
107
110
100
103
120
168
133
126
98
105
82
61
140
92
103
93
76
81
120
83
128
125
157
108
87
107
82
106
143
121
113
90
113
124
128
109
149
102
104
103
114
147
113
104
118
153
95
98
90
74
152
138
117
132
125
128
98
118
132
107
54
137
78
98
122
111
145
108
85
100
105
95
160
134
135
83
127
54
108
152
132
91
124
160
95
144
102
161
74
106
150
113
88
133
140
49
102
98
89
188
117
140
172
49
101
167
120
159
73
164
69
121
87
121
92
135
99
100
149
110
76
129
131
135
131
122
102
89
98
122
95
143
100
159
54
108
144
112
89
90
102
148
142
145
80
127
133
98
213
103
108
110
117
102
170
125
103
144
116
123
95
161
110
119
125
158
87
108
78
100
131
125
96
74
103
131
135
132
68
123
113
95
130
161
173
123
156
98
108
164
67
148
165
127
148
113
105
95
101
85
90
107
54
119
102
90
113
157
108
113
103
122
89
110
113
102
68
54
103
65
135
88
105
108
174
102
106
108
121
105
131
95
113
98
125
153
118
128
105
80
90
102
100
95
119
87
108
113
91
119
140
133
107
114
116
95
61
120
83
110
79
115
125
101
112
80
102
94
105
168
110
161
105
88
174
116
165
100
172
57
156
78
124
89
98
120
146
127
108
109
151
144
138
99
216
127
120
141
126
141
100
95
106
105
118
108
94
102
137
96
155
81
137
98
125
107
78
108
125
54
133
85
80
89
109
115
108
110
105
177
106
133
115
115
148
59
154
102
145
121
131
127
110
139
98
147
125
132
143
87
67
84
130
95
114
92
90
129
161
81
107
153
113
113
99
106
155
125
110
93
155
113
98
147
108
101
87
101
150
130
112
143
184
145
137
113
122
128
110
109
97
90
107
132
177
103
157
115
90
116
144
107
78
139
108
98
114
74
123
132
111
54
161
91
179
111
82
54
54
78
101
126
59
98
67
150
127
88
145
116
90
79
169
159
96
133
76
123
102
121
157
156
153
112
110
98
130
108
112
188
84
139
67
146
147
81
134
108
98
108
123
103
125
110
106
80
132
103
109
115
118
105
103
131
111
83
92
113
78
108
135
162
121
117
131
102
125
80
106
67
136
98
94
106
190
148
98
77
111
122
113
81
91
133
140
108
184
59
125
110
146
100
134
132
49
54
49
133
169
79
108
98
49
100
119
104
54
111
105
104
165
115
147
148
173
132
134
125
108
140
61
113
95
122
128
171
126
140
59
59
127
73
189
106
113
100
158
117
108
76
134
227
128
120
109
54
99
133
115
144
155
158
98
133
155
54
94
95
74
96
131
163
127
77
69
118
160
67
150
135
125
141
127
113
100
96
143
61
102
129
98
125
93
91
96
128
133
76
135
124
74
71
93
146
98
119
54
103
160
102
102
144
106
113
108
149
120
125
101
121
168
98
92
84
98
163
105
85
149
158
118
125
102
99
113
133
103
142
127
106
73
152
95
133
96
125
91
108
168
114
104
103
103
131
91
49
127
122
189
136
89
171
54
135
125
101
141
130
173
149
93
78
154
133
122
81
135
110
127
99
87
125
173
143
81
138
121
74
125
96
131
122
155
144
112
98
125
125
109
169
54
122
158
143
98
97
102
94
87
92
59
135
54
108
164
156
108
125
190
120
101
112
108
127
74
133
69
197
69
125
98
128
108
142
133
106
128
102
95
98
119
113
143
115
171
93
113
59
118
107
170
142
138
151
102
105
148
81
125
106
89
98
93
142
99
170
124
113
111
77
140
156
89
108
85
144
80
139
129
154
95
95
147
117
112
134
119
147
125
54
114
105
95
98
122
156
148
115
104
54
97
54
79
54
115
148
159
155
81
102
128
95
59
108
138
120
140
97
114
121
121
134
153
115
141
115
102
104
101
93
78
102
113
102
158
84
74
124
72
108
113
141
87
148
96
81
98
54
121
133
54
111
87
125
114
126
122
104
54
144
141
127
100
147
164
135
129
84
129
137
148
134
102
195
102
95
81
117
123
49
95
93
102
106
161
127
114
112
121
138
102
141
146
132
99
111
145
156
124
100
102
107
54
88
125
98
98
84
98
92
137
118
167
158
107
140
96
54
97
98
103
74
78
59
81
120
108
116
120
119
104
98
132
59
101
108
128
137
96
122
82
77
123
185
69
138
87
98
101
100
95
79
125
154
127
104
78
113
129
91
106
91
162
132
160
161
77
104
91
98
91
147
137
99
135
173
68
82
100
149
90
87
133
121
102
131
128
155
122
108
93
108
119
119
148
157
79
76
106
95
155
177
76
101
113
140
69
112
148
95
129
125
96
114
84
84
116
92
117
106
113
92
162
108
97
118
105
127
67
106
81
108
141
140
140
90
84
104
140
81
114
102
93
139
74
86
108
109
108
120
87
101
124
90
102
117
145
142
140
126
95
141
124
54
99
95
102
103
104
93
118
118
102
143
113
76
90
99
117
102
142
171
103
89
49
105
148
129
146
117
76
102
117
181
85
54
166
82
69
118
77
97
61
94
87
146
103
117
107
133
95
69
101
103
95
145
123
85
169
160
82
95
99
155
162
131
110
126
115
145
118
105
150
177
128
155
142
105
102
122
161
124
148
123
108
191
59
80
130
146
119
134
101
81
54
79
104
112
113
98
54
106
132
122
96
95
153
62
81
137
160
117
151
149
82
108
128
131
90
100
93
121
122
81
126
138
219
104
87
138
128
162
80
133
129
110
107
98
110
103
103
90
103
133
98
68
101
65
140
100
139
167
98
145
95
76
95
151
49
102
121
109
133
95
83
134
88
95
146
110
93
91
95
95
95
122
145
107
182
98
93
115
68
86
82
82
102
148
98
95
112
143
67
141
119
145
93
118
81
116
88
83
99
96
69
121
130
183
107
102
141
123
103
87
128
158
113
117
90
101
106
147
61
91
119
99
168
128
85
54
108
54
102
99
98
165
106
159
108
54
69
148
137
130
86
103
108
85
108
103
148
49
177
97
129
146
140
120
101
59
108
168
82
95
107
193
159
108
83
163
110
76
133
106
59
54
83
103
74
135
129
67
147
135
178
49
107
129
49
104
81
89
95
122
77
115
107
139
103
127
141
102
119
54
49
149
95
147
92
163
105
122
92
99
120
124
95
93
92
104
140
122
138
118
141
104
127
134
72
137
165
122
92
111
98
85
105
143
89
140
81
89
117
102
103
49
124
144
93
88
83
54
125
148
187
105
159
67
163
89
139
49
109
94
101
77
115
105
129
140
118
103
139
100
144
102
119
143
91
108
89
168
121
81
76
155
89
125
108
141
96
90
83
132
96
164
144
59
105
148
153
83
169
128
116
127
100
118
160
128
104
81
110
78
199
78
126
69
49
103
122
77
111
95
122
127
83
145
84
111
103
54
112
137
65
95
125
127
145
116
138
108
125
99
137
127
87
54
119
190
133
126
98
103
141
136
108
78
101
103
101
120
131
103
107
90
129
131
108
103
135
137
102
115
128
123
101
140
140
82
112
153
102
98
125
77
103
116
54
82
61
118
134
131
120
120
142
169
96
116
130
136
139
138
99
115
144
78
107
159
98
179
100
96
146
100
108
165
143
141
127
101
67
139
160
131
117
120
147
158
82
199
83
147
61
54
133
116
132
136
90
103
113
99
122
108
120
112
107
147
143
132
118
78
132
157
87
111
102
107
143
103
144
98
114
133
161
149
137
111
104
101
74
54
167
59
127
147
200
126
106
123
148
131
59
108
151
127
144
83
110
85
90
98
96
106
102
139
119
102
106
101
76
90
116
63
78
106
106
115
95
108
101
91
147
120
128
91
147
91
103
168
82
127
114
114
127
125
152
140
110
194
95
117
117
76
79
49
107
102
125
78
135
96
186
113
129
98
54
135
107
90
148
113
134
142
87
144
133
118
103
49
149
77
59
54
103
90
109
135
96
85
148
106
98
118
102
155
117
108
179
96
90
112
81
122
102
103
82
132
96
102
88
80
113
92
76
95
113
143
88
90
145
90
139
158
135
80
107
99
97
106
132
98
102
102
128
82
116
159
119
80
127
122
98
81
98
122
118
113
77
145
98
112
114
150
174
126
106
112
103
89
61
101
149
80
95
162
101
152
103
93
158
106
83
152
91
87
115
83
152
106
92
97
54
97
106
70
166
92
117
102
101
107
104
102
103
81
91
150
127
110
102
122
78
70
141
90
84
59
99
54
125
49
103
180
87
175
98
179
113
96
103
136
112
139
67
130
70
150
98
101
109
154
90
130
118
102
49
140
104
128
89
79
126
49
125
138
79
135
93
77
138
54
155
107
82
76
121
135
179
123
81
108
96
139
78
102
160
142
144
120
74
94
103
110
135
74
95
77
103
74
94
89
129
140
96
153
112
100
108
128
77
85
95
85
165
156
128
97
133
125
143
78
93
158
118
129
154
115
117
160
90
81
118
85
148
128
95
142
102
105
97
108
116
132
185
136
102
133
91
178
97
113
152
76
125
75
95
162
160
134
152
152
106
102
176
94
104
116
142
101
134
128
102
93
115
69
89
133
95
112
133
54
185
74
86
186
96
148
136
109
151
102
134
54
139
54
158
75
148
139
146
124
133
84
97
148
113
80
139
136
76
84
49
74
42
136
128
134
115
54
145
154
113
78
173
129
151
95
98
90
111
116
198
179
179
161
156
98
54
49
81
102
153
125
123
118
88
147
111
128
108
129
98
144
131
98
214
108
81
105
140
133
81
96
143
131
89
131
133
65
119
113
149
122
82
135
117
125
128
95
143
107
110
123
110
102
145
95
88
54
141
102
103
185
113
106
107
98
123
77
129
131
102
133
87
153
140
98
61
87
133
109
97
123
145
59
78
95
97
99
95
129
133
116
164
78
149
149
106
143
146
54
164
78
105
169
119
128
100
42
96
75
114
165
145
87
122
139
131
78
101
138
98
135
125
114
108
82
95
106
174
82
113
182
131
133
102
171
126
116
131
81
107
103
106
138
99
127
117
108
109
129
125
49
54
158
104
87
134
119
102
138
158
101
110
105
148
91
124
90
135
151
113
178
118
145
75
129
148
126
128
104
95
151
164
49
102
76
147
112
98
138
144
74
131
125
110
79
125
59
143
54
162
102
147
91
107
93
125
67
74
146
147
106
85
179
105
85
84
125
113
137
114
110
108
129
80
86
119
76
106
111
97
130
74
127
167
113
150
106
128
106
143
82
108
125
127
82
118
177
149
78
138
95
104
123
109
79
102
150
107
125
98
125
137
99
76
135
143
136
117
103
129
125
77
122
124
122
138
90
89
87
54
106
54
145
54
95
90
105
74
116
121
103
59
141
91
127
114
94
137
113
132
103
116
131
99
80
95
147
49
103
105
150
127
166
166
128
108
138
118
99
131
178
82
110
124
103
98
134
85
97
153
98
127
135
158
90
115
142
93
127
172
103
157
95
98
158
110
125
130
82
49
128
137
149
138
100
81
116
106
122
76
89
138
128
95
120
104
110
146
98
80
145
91
150
112
141
49
149
103
161
97
131
85
108
102
118
94
146
108
94
131
89
123
132
134
158
119
118
106
95
169
97
116
99
191
132
145
140
95
54
49
95
82
151
102
101
111
115
159
102
184
103
93
102
120
144
134
178
95
143
163
148
75
110
115
154
95
152
179
86
85
153
146
126
54
114
98
121
122
125
133
81
126
129
95
99
156
95
102
105
54
98
95
76
125
122
140
138
106
130
109
149
145
95
121
125
130
95
83
136
143
163
125
131
127
103
108
54
90
103
96
105
127
156
103
103
108
77
159
106
74
142
79
103
144
82
122
127
133
74
160
125
110
98
110
77
86
159
81
104
120
151
80
162
166
85
104
120
158
135
98
127
109
146
105
126
126
112
145
151
71
149
98
167
129
115
103
102
143
143
90
83
69
126
76
133
99
179
90
143
96
110
81
124
143
103
67
124
90
148
153
122
116
134
117
112
93
81
120
91
134
137
113
145
109
138
104
85
186
138
153
91
111
94
106
69
163
129
54
175
77
165
81
142
173
100
154
133
97
166
67
123
130
92
149
162
49
95
115
177
98
82
127
106
78
59
133
177
133
79
118
125
123
186
71
119
90
144
113
105
148
79
133
157
108
117
54
105
122
128
139
94
76
127
148
54
54
105
152
124
100
165
119
91
59
96
107
67
129
85
96
78
117
169
87
122
132
148
145
155
94
83
114
194
140
131
138
95
128
74
108
161
105
137
158
116
100
145
97
119
107
76
190
113
113
143
161
124
112
161
166
177
59
102
101
175
97
99
89
123
107
123
91
115
102
89
76
130
171
90
110
104
133
115
112
95
134
139
145
68
105
145
112
145
136
105
138
118
81
57
92
113
82
146
135
148
145
122
91
105
138
138
135
170
131
161
170
98
135
113
94
121
138
132
117
133
54
120
152
74
173
98
127
190
80
128
97
147
145
143
74
109
154
142
128
117
92
77
97
108
135
106
91
108
90
122
157
127
92
59
136
104
103
124
124
154
109
112
88
98
83
145
105
129
139
128
92
83
95
180
121
112
73
110
98
133
110
125
131
127
124
160
168
113
150
82
119
105
116
182
115
180
77
161
149
90
109
75
138
59
98
93
106
167
54
68
102
145
54
87
54
106
105
95
119
98
85
102
105
78
82
138
107
130
101
77
59
96
119
54
81
91
80
107
124
123
87
102
120
105
135
155
125
120
113
191
120
117
87
102
177
103
148
177
54
85
83
170
121
86
90
151
128
98
129
91
98
91
138
135
148
82
85
143
143
180
61
103
168
178
180
168
95
110
121
158
143
105
129
78
77
154
103
116
129
109
119
95
99
105
111
130
120
123
95
141
138
167
120
145
112
96
61
96
87
108
129
150
147
82
109
119
117
138
105
121
132
127
117
103
140
106
77
142
49
110
158
117
99
102
121
129
143
113
108
104
153
102
131
84
71
85
167
123
135
180
186
128
133
82
223
125
91
151
76
92
105
114
59
90
103
105
142
90
174
103
157
108
138
90
104
113
76
108
99
105
139
104
54
143
77
87
138
196
98
143
105
105
133
87
76
119
54
92
74
122
127
93
160
124
135
145
125
158
108
77
159
75
92
113
141
138
98
131
120
144
149
126
81
106
120
147
96
126
102
118
113
129
102
85
91
120
102
112
98
95
108
101
113
103
110
98
96
98
74
134
59
102
106
105
192
101
103
127
164
74
128
115
77
107
93
124
130
85
113
87
133
115
68
158
77
86
128
124
180
149
126
91
119
135
156
87
76
74
93
119
102
102
117
125
107
68
117
133
135
123
100
143
109
149
161
144
128
85
81
81
118
107
92
105
131
88
90
133
106
87
107
161
105
127
110
131
68
96
103
185
124
200
120
97
115
103
106
139
102
116
160
59
59
172
102
42
140
78
128
102
59
86
131
95
150
153
134
133
122
78
77
148
45
108
124
118
152
113
108
73
76
108
138
160
104
144
101
105
81
129
59
116
98
145
127
119
145
122
138
116
133
153
110
93
143
102
102
160
131
101
90
97
102
91
151
78
103
68
93
169
131
129
98
155
139
133
139
120
102
234
127
77
120
162
98
117
97
109
135
101
168
107
119
116
87
133
140
75
101
59
78
81
156
49
108
96
137
125
85
110
120
94
69
133
96
97
141
140
119
130
119
137
87
90
145
101
90
134
110
139
119
96
102
92
144
125
115
109
49
96
54
141
78
93
162
90
130
128
103
122
138
156
81
146
54
113
98
98
157
159
127
95
116
140
163
109
126
89
113
91
138
107
103
124
83
163
127
112
87
132
145
104
102
181
133
81
101
120
200
95
140
67
101
54
190
170
105
113
160
90
139
61
99
147
177
104
54
89
137
126
83
110
105
93
90
96
110
98
108
155
93
105
102
123
143
164
135
105
59
100
122
117
98
109
128
119
111
54
136
100
128
102
81
80
133
101
138
95
109
81
85
133
54
113
78
78
84
182
180
111
94
74
124
152
132
96
137
82
81
103
114
120
110
67
101
87
54
133
130
54
116
54
99
155
77
122
77
98
113
87
103
74
161
109
98
110
153
99
87
102
142
139
148
100
95
95
96
108
111
163
91
119
111
114
127
117
127
127
148
132
113
98
158
98
119
120
100
109
104
128
105
117
54
98
116
87
154
105
134
96
110
103
103
133
139
130
115
87
128
98
65
94
168
113
140
150
128
113
96
136
74
102
71
95
108
133
123
102
122
108
80
131
137
61
98
133
122
82
74
108
61
114
99
54
87
140
95
95
157
129
82
108
113
167
117
95
142
118
135
107
118
141
109
166
132
81
107
146
178
96
131
133
85
100
93
90
59
128
158
131
87
102
138
194
152
104
124
160
126
147
59
121
150
104
108
108
125
144
111
108
117
86
95
133
102
181
97
91
114
133
111
106
133
151
125
96
137
143
119
120
192
152
184
83
108
122
68
141
137
95
107
88
102
108
108
77
98
110
49
95
120
54
104
158
119
149
118
90
125
133
158
59
113
137
67
120
103
149
127
100
123
140
95
127
74
156
95
153
92
144
108
54
98
111
121
127
135
133
77
125
95
147
54
96
104
129
115
111
131
98
109
131
95
49
148
54
54
95
121
94
125
124
113
152
83
101
113
103
90
121
69
129
146
171
72
125
161
91
54
83
95
165
81
74
97
143
115
125
118
108
104
110
118
123
98
101
154
81
81
107
91
160
171
102
121
117
90
169
113
144
85
106
162
118
106
82
234
116
113
108
87
119
167
149
102
108
171
133
91
103
182
122
103
143
118
82
81
177
91
113
147
81
109
122
148
113
121
139
73
131
107
143
128
102
73
151
128
169
138
135
116
110
117
54
123
113
141
161
96
131
93
132
102
101
95
96
136
94
158
155
102
118
160
155
173
144
77
71
108
127
153
83
107
123
83
101
54
135
173
80
127
54
129
54
82
81
108
128
126
78
77
54
146
124
150
166
81
59
109
54
127
54
130
94
111
125
97
101
81
150
67
95
106
148
108
112
96
105
206
115
84
133
95
125
100
67
96
121
122
124
102
117
118
147
115
90
164
123
93
117
122
198
113
99
120
118
122
153
82
170
129
95
145
132
101
154
91
154
145
86
95
106
147
93
148
127
137
127
83
96
112
134
137
117
54
110
159
115
98
126
108
90
153
77
101
76
113
98
95
163
177
119
116
105
80
131
129
111
163
139
123
82
124
159
119
98
77
82
115
127
133
114
54
85
130
129
132
96
141
127
86
78
113
116
102
151
115
143
127
97
102
160
131
136
59
115
54
104
99
101
137
69
163
102
95
54
113
90
140
120
106
143
93
133
121
138
105
82
148
117
145
61
116
93
115
179
146
83
160
102
162
54
124
135
190
74
96
151
89
106
120
141
98
113
90
128
81
183
78
139
125
49
99
148
138
108
111
67
54
98
112
98
136
136
103
132
127
81
97
54
177
54
156
158
54
103
127
98
104
81
125
109
63
130
97
81
186
111
143
95
81
130
128
129
138
98
103
128
102
134
102
79
81
89
120
84
182
79
68
148
90
151
163
115
129
200
120
123
142
95
83
167
105
117
85
90
108
106
96
148
158
86
74
59
111
132
135
154
108
146
150
59
87
115
87
106
133
119
140
138
59
161
155
172
81
101
137
141
133
133
93
74
113
106
129
111
112
91
143
139
173
108
99
149
143
94
112
157
74
125
108
123
74
125
49
108
92
173
158
102
138
184
82
78
59
102
139
130
154
105
130
122
120
139
95
124
182
125
90
72
105
148
131
59
134
103
54
102
144
126
120
95
78
165
127
133
102
79
94
133
168
96
95
86
54
122
113
132
113
122
74
101
113
102
140
122
123
82
85
112
85
68
70
118
121
101
107
141
126
172
125
83
136
137
96
136
139
77
143
78
129
180
103
147
117
98
118
128
138
127
81
133
120
101
95
193
158
120
111
86
95
114
156
157
137
102
115
110
105
106
196
87
90
100
123
98
123
126
141
128
68
67
177
83
163
103
109
148
98
82
103
69
188
165
117
122
119
119
159
146
150
123
108
146
124
103
67
95
103
61
81
135
125
138
102
131
143
133
106
108
90
123
100
74
108
79
81
104
158
116
137
59
142
110
71
153
133
144
104
186
142
98
100
142
136
90
87
140
122
128
134
131
85
117
106
108
90
90
135
95
174
144
87
82
173
196
92
95
119
107
54
106
180
83
129
113
85
108
138
107
105
177
108
106
204
164
73
144
117
103
134
157
126
82
133
145
87
102
98
103
104
143
126
87
102
127
69
98
106
108
142
102
73
59
141
107
93
119
113
124
102
74
135
110
125
122
100
110
102
95
83
172
42
110
151
102
90
84
128
184
93
81
91
123
143
131
134
194
115
110
93
93
74
110
141
110
81
74
96
67
145
124
94
167
80
155
69
95
92
125
199
117
161
54
99
114
123
113
83
111
78
129
84
135
54
102
125
161
148
127
137
54
104
102
116
105
106
179
95
95
121
103
126
97
111
127
104
91
95
116
151
111
110
146
98
158
99
54
118
141
148
133
96
107
81
87
81
119
125
54
94
81
142
110
95
147
125
108
141
90
168
101
54
140
159
136
81
104
132
161
103
124
90
74
118
137
165
105
121
119
166
186
100
146
140
102
122
127
49
87
94
140
109
134
153
80
160
97
95
77
94
78
105
54
114
54
122
102
171
149
68
81
108
129
117
105
131
148
134
95
105
150
149
98
82
134
96
92
98
90
107
114
144
127
146
148
100
167
150
113
82
113
95
123
84
128
121
135
128
120
102
81
122
113
133
149
133
148
112
54
135
61
102
105
125
82
79
127
115
93
74
67
106
128
142
125
98
97
76
140
95
78
131
164
114
127
141
126
108
98
105
118
109
115
140
127
127
82
82
101
78
94
86
83
92
143
128
111
95
80
131
137
124
77
91
116
145
148
106
82
133
121
125
98
127
81
106
115
81
93
95
69
123
164
124
106
108
179
116
146
158
151
119
103
124
93
87
124
153
106
91
140
112
81
108
140
93
111
125
76
132
119
86
113
103
67
126
108
113
95
76
108
108
164
95
103
122
106
87
127
156
84
127
93
142
116
101
102
107
179
93
91
103
113
101
161
132
93
68
154
109
123
148
105
97
92
90
102
125
111
131
165
98
108
127
114
123
135
115
100
106
74
102
132
59
82
110
54
101
131
54
167
94
94
129
113
136
92
95
133
95
85
122
102
119
90
122
152
170
81
105
162
114
130
81
142
182
54
107
108
97
119
81
122
159
149
97
108
140
143
116
123
102
83
67
111
135
103
180
158
102
92
115
116
113
102
121
108
124
75
131
89
143
126
90
123
144
108
141
103
147
95
140
98
123
83
54
117
138
92
129
96
171
126
126
113
176
107
131
126
103
87
113
213
104
150
101
91
108
143
110
168
131
108
143
89
144
81
122
82
153
143
108
107
131
133
139
92
77
100
74
105
86
130
145
85
103
95
87
78
129
150
140
116
73
165
72
134
102
158
122
98
115
119
106
82
49
97
112
95
90
152
81
54
137
111
95
159
116
54
129
115
76
85
143
107
119
54
109
134
95
93
87
83
135
77
102
108
132
113
132
124
124
93
112
97
95
65
149
135
76
120
49
131
147
69
104
87
108
131
77
87
77
131
150
86
115
103
81
116
139
124
118
77
148
120
118
105
191
132
107
77
108
97
134
96
141
77
45
102
114
80
79
116
191
132
83
113
113
123
115
108
75
129
115
144
172
82
113
140
118
125
133
147
102
165
170
80
90
49
99
54
80
203
122
67
146
54
76
135
168
101
94
111
81
192
147
91
187
116
92
98
128
106
149
95
96
65
87
87
122
95
81
85
128
82
177
139
121
107
153
82
90
127
107
106
146
82
95
146
99
131
179
127
113
177
102
119
81
77
178
100
120
103
142
160
98
145
159
152
123
118
95
131
144
87
150
141
141
132
113
129
132
156
105
93
148
113
67
151
107
93
81
82
184
131
96
126
97
110
107
165
95
143
95
143
83
106
49
108
121
88
141
80
98
149
130
87
190
141
104
136
74
139
174
120
102
77
138
123
149
102
105
95
148
108
143
123
107
93
125
130
90
105
133
91
143
113
117
113
140
157
78
91
146
76
135
127
54
54
95
80
133
160
132
141
100
59
120
74
87
143
163
107
102
113
114
118
108
136
186
72
117
124
118
161
93
107
111
106
131
74
177
83
97
92
184
139
103
105
74
78
90
54
137
128
103
108
96
101
115
122
74
155
98
93
102
103
122
104
102
151
61
89
121
136
133
135
87
98
81
107
83
116
103
133
89
135
161
120
85
139
160
137
82
142
154
138
119
113
81
127
117
167
180
123
54
131
112
125
93
118
132
144
102
88
146
143
120
130
131
103
95
105
95
125
113
138
101
124
54
124
92
67
76
118
100
139
108
113
122
117
82
115
54
54
152
117
89
108
155
85
115
147
148
132
73
129
124
154
98
82
110
91
107
147
104
132
125
104
85
128
126
128
126
159
202
115
119
75
106
126
102
81
165
95
123
59
130
85
98
126
123
144
180
134
160
45
119
149
89
101
99
145
128
149
90
140
102
107
117
159
133
98
75
93
138
103
139
113
125
108
138
113
120
69
135
54
68
150
102
131
114
105
95
126
143
112
107
132
125
97
124
106
133
54
117
120
105
95
122
113
123
118
140
119
147
178
129
117
93
219
103
76
175
133
116
95
95
156
59
165
193
174
144
98
98
165
156
86
74
128
140
104
113
102
132
91
102
95
123
125
157
128
131
190
57
86
107
133
124
133
140
107
153
164
81
120
134
98
135
138
158
85
129
169
74
120
98
127
59
145
116
89
107
123
137
122
190
142
103
86
109
84
100
115
155
134
138
54
90
177
107
146
147
150
112
160
180
157
98
83
82
103
118
117
115
101
95
97
98
82
54
95
54
91
132
95
84
81
120
85
95
129
93
96
121
106
113
161
163
148
122
78
106
96
148
102
102
81
126
116
78
121
74
112
111
161
139
105
125
146
194
113
154
98
146
108
148
103
59
169
114
81
76
74
122
143
73
92
54
105
169
138
102
103
123
93
134
125
200
171
188
125
108
140
107
113
100
76
143
77
149
125
101
83
105
118
95
87
107
123
138
54
54
87
158
126
103
81
127
104
88
91
132
77
106
105
175
82
135
54
73
105
87
78
112
98
143
83
54
115
153
81
82
96
140
91
91
95
135
145
73
77
144
145
82
95
133
107
98
131
141
59
103
104
149
134
131
100
144
95
117
125
120
54
118
76
145
54
126
77
87
129
74
59
110
89
89
110
104
112
156
125
104
124
153
105
125
105
117
100
178
91
113
102
126
130
157
98
120
123
147
156
74
95
148
127
102
128
112
93
74
165
126
141
156
156
81
101
95
148
90
148
143
99
91
98
140
135
117
120
77
113
127
146
137
106
141
74
54
110
98
118
143
79
130
115
156
105
119
54
135
146
81
107
148
91
91
102
97
184
161
61
87
98
119
81
91
82
101
90
102
170
151
163
79
108
115
91
102
117
65
97
75
134
112
127
151
108
109
125
102
120
113
83
118
154
120
125
127
119
87
143
128
91
93
54
93
173
127
69
116
97
180
117
74
102
87
120
77
119
169
127
83
81
186
143
143
108
90
82
93
98
61
54
81
101
98
122
166
108
109
115
90
74
73
103
127
110
95
74
82
113
126
137
134
141
92
118
164
129
102
140
69
136
127
76
98
124
112
139
85
177
128
98
158
150
128
106
49
87
113
133
104
99
75
78
67
93
148
93
108
155
98
109
75
87
102
108
167
146
91
131
99
131
92
142
106
93
133
150
59
157
103
90
111
90
138
81
126
139
117
146
110
98
54
85
81
132
68
164
100
118
116
109
87
157
49
141
108
192
67
77
128
49
109
102
92
90
155
136
78
99
81
184
158
108
141
128
81
104
69
133
154
116
110
114
76
132
125
108
96
122
134
148
120
89
112
152
69
163
126
108
101
140
123
129
134
161
144
180
142
108
95
131
73
122
68
118
104
93
122
107
112
116
102
106
125
178
172
183
100
98
113
83
148
106
113
139
122
98
119
102
131
95
102
132
170
113
61
144
113
97
143
146
116
115
102
90
191
123
96
145
132
84
88
98
119
54
148
87
128
102
69
89
105
88
112
149
75
113
90
99
102
105
95
54
141
111
100
146
95
142
97
92
148
94
54
111
123
147
108
169
132
101
127
147
150
121
114
107
148
81
174
146
128
95
90
99
93
121
115
98
137
143
129
172
131
113
129
107
75
122
104
115
112
81
148
129
54
87
97
96
118
89
118
142
89
180
165
103
146
105
125
157
81
74
140
68
139
95
154
54
164
95
83
101
144
94
127
128
110
87
80
128
98
176
141
135
112
95
122
87
144
94
134
98
130
95
116
127
122
90
98
78
119
115
78
151
144
158
98
110
131
107
151
121
139
74
161
120
141
158
81
112
115
161
103
110
74
141
79
49
138
117
99
116
98
144
139
121
125
108
108
138
54
93
81
108
117
132
161
105
87
143
98
74
151
93
97
161
147
87
69
122
94
147
54
102
141
157
143
54
92
54
61
73
87
158
54
135
108
127
146
80
77
136
76
54
113
110
98
134
108
117
143
115
135
68
107
108
59
142
129
54
90
102
83
164
128
117
147
143
123
125
129
141
90
112
134
104
117
118
79
122
143
144
128
149
170
152
49
133
54
49
83
128
145
129
101
76
97
102
130
88
153
164
129
98
102
98
133
113
143
127
103
113
169
102
76
85
168
100
157
126
123
101
125
96
144
164
141
134
144
101
119
103
138
98
108
70
78
113
80
137
129
140
128
147
162
81
54
140
125
133
109
154
129
173
120
114
128
134
83
95
85
163
91
106
147
113
100
124
159
131
143
115
144
158
117
92
133
135
164
97
114
108
85
107
100
134
103
198
129
115
91
130
118
100
134
81
138
120
158
125
76
108
92
149
161
85
100
108
90
151
117
126
125
92
137
155
126
108
103
108
141
90
123
65
148
136
119
118
152
108
108
110
146
85
118
135
148
82
141
145
110
104
120
144
116
120
102
178
93
98
101
132
77
96
133
106
163
186
108
103
123
142
102
101
139
126
145
158
115
103
100
114
150
143
110
145
137
147
69
68
62
172
106
91
89
114
131
108
90
138
127
139
113
117
99
68
122
127
112
165
76
59
67
148
68
120
122
140
90
160
124
106
148
95
80
113
122
108
97
54
83
98
168
125
88
59
149
166
117
120
45
148
96
129
160
157
121
134
175
77
93
113
128
104
107
98
109
103
138
99
95
177
128
176
103
49
95
67
153
108
88
138
81
115
95
108
159
122
118
106
120
114
144
85
108
122
124
234
59
85
128
121
62
92
99
67
125
87
162
68
59
139
143
90
120
136
59
129
112
84
148
61
108
74
162
117
54
54
157
89
138
95
98
54
61
102
122
133
143
102
206
113
89
153
126
141
112
104
134
98
127
146
75
128
103
111
108
106
96
116
120
115
105
135
115
112
115
107
102
110
80
107
105
123
54
54
137
156
155
92
120
107
67
107
125
83
105
142
63
103
72
191
104
134
125
125
145
108
141
102
126
148
115
54
83
129
54
130
149
98
80
128
135
188
150
148
158
139
143
116
133
129
149
103
54
112
117
148
158
113
105
113
119
137
87
144
54
168
114
103
102
132
98
54
117
116
105
49
132
78
95
117
160
92
132
128
115
78
98
96
131
122
192
124
92
156
98
122
156
126
123
158
149
160
54
61
121
84
74
145
91
135
107
78
111
78
67
150
146
144
182
93
138
115
134
156
98
146
88
165
59
78
126
110
98
177
139
95
135
145
107
89
117
96
114
124
153
81
130
143
125
116
54
125
103
144
81
194
94
134
113
114
132
134
119
88
122
180
87
98
108
146
95
94
105
89
95
124
133
74
145
107
88
125
83
148
112
85
86
84
86
112
162
126
132
129
59
144
188
170
133
114
158
127
102
130
77
82
148
97
123
146
140
87
106
82
106
108
74
125
115
133
134
69
105
106
110
108
108
92
133
107
97
116
118
129
103
112
96
104
80
131
100
90
81
77
139
98
86
102
76
119
120
141
114
80
108
122
139
117
101
155
165
108
104
85
115
158
122
152
139
98
105
61
108
93
117
116
147
113
80
106
157
116
74
93
103
69
93
140
90
135
167
129
111
59
59
119
139
107
54
97
81
143
130
138
144
73
84
134
144
101
102
99
119
127
108
93
114
144
171
110
99
107
170
103
102
158
83
87
191
133
96
159
67
112
139
98
81
137
94
114
106
165
182
102
82
88
81
160
116
144
200
121
49
116
110
69
112
103
103
148
111
149
110
108
103
142
59
140
54
110
108
101
154
81
54
83
97
148
127
177
135
91
156
118
148
152
150
117
130
113
83
108
124
124
87
68
131
154
113
149
107
101
131
129
104
96
93
108
95
129
81
123
130
131
125
54
78
97
115
127
103
69
141
125
141
149
130
145
100
105
85
61
108
118
54
81
87
99
155
95
150
95
111
158
97
141
69
73
100
89
103
84
112
133
120
129
108
179
124
151
54
102
155
81
54
114
93
109
154
104
143
133
128
78
99
121
133
121
142
91
135
78
165
148
147
85
85
126
128
116
78
120
95
130
77
118
83
110
169
139
140
107
110
118
135
108
152
82
143
98
99
148
82
54
117
164
156
164
122
178
143
129
83
106
98
138
81
102
144
80
49
103
165
113
169
121
127
93
86
114
78
79
77
114
59
54
115
135
103
148
106
68
81
94
110
140
124
54
155
81
97
113
118
134
101
167
100
118
127
130
150
193
140
129
91
110
102
171
150
134
99
97
125
134
95
49
94
148
158
143
88
140
49
94
91
108
87
155
61
142
163
170
59
145
106
155
153
101
142
138
133
100
131
105
206
111
90
107
122
103
111
140
79
163
152
81
133
90
136
113
105
59
105
108
106
105
120
154
146
181
150
93
96
148
99
110
115
131
96
180
100
49
99
54
132
90
158
76
150
119
122
74
90
54
102
104
152
68
106
145
100
76
90
149
154
168
83
127
124
123
137
132
107
131
177
76
93
108
98
167
90
122
132
98
145
122
84
103
90
158
140
90
123
156
76
151
116
148
122
174
54
134
102
146
92
81
146
122
93
134
132
103
162
95
54
142
113
97
172
122
99
131
162
172
88
125
105
189
112
125
145
133
108
114
200
118
106
101
131
69
135
150
78
159
54
108
139
106
103
102
136
141
140
92
86
130
83
90
87
91
139
94
86
113
92
98
164
145
194
110
54
133
54
141
107
54
108
90
140
95
116
108
107
94
78
115
113
162
106
111
76
125
144
114
95
116
102
79
140
201
54
85
140
128
125
106
87
126
104
118
108
98
140
54
108
149
82
122
54
49
120
85
69
130
54
135
84
103
133
108
146
81
68
101
139
115
158
133
98
112
143
85
146
87
133
108
172
106
95
102
144
104
155
166
140
93
113
97
139
54
134
180
120
104
137
143
96
49
113
116
109
103
54
153
140
126
100
91
49
154
89
113
133
136
103
126
126
117
109
84
95
123
82
119
98
102
161
85
131
87
149
131
127
108
140
112
77
144
139
54
108
98
104
120
98
95
133
105
104
153
144
161
107
107
112
114
77
96
110
108
97
92
103
81
143
114
208
135
69
154
80
104
172
118
155
122
78
97
159
147
82
109
128
120
143
100
108
59
100
105
108
92
79
134
111
82
89
116
117
179
165
106
98
131
96
92
135
62
115
141
68
95
91
98
98
86
100
142
149
92
76
54
120
125
143
102
135
105
96
136
125
98
113
98
96
77
164
185
73
104
95
122
139
78
102
74
79
126
67
104
93
113
179
135
116
117
93
155
126
124
114
127
112
155
54
98
80
95
104
102
107
165
115
108
140
94
104
104
116
167
80
108
109
139
104
95
140
95
138
135
74
148
99
127
139
147
105
107
119
125
71
120
131
128
117
68
131
105
105
165
102
90
113
112
120
112
95
170
87
96
117
87
121
117
166
128
153
187
133
90
200
87
164
191
192
90
125
95
148
129
150
77
104
113
101
117
123
123
125
83
114
95
102
146
128
204
115
141
108
98
101
153
78
123
117
150
92
104
117
94
84
146
127
163
127
127
76
95
131
118
112
158
76
112
108
132
54
97
139
107
93
124
76
84
105
102
130
110
113
82
54
133
97
148
112
141
145
96
98
163
133
110
148
136
128
103
218
131
117
90
105
113
124
105
90
108
114
54
136
97
87
98
83
69
76
110
98
106
83
140
79
134
113
108
125
161
74
54
115
81
101
193
54
153
128
102
115
96
138
135
138
194
103
102
83
107
130
129
122
127
126
91
139
130
117
113
91
98
128
136
99
102
95
61
145
158
146
108
154
165
129
167
119
80
137
105
81
143
151
112
130
134
129
106
145
162
124
98
83
152
110
109
115
116
129
103
140
180
164
90
105
54
177
159
102
95
140
76
83
120
103
131
130
167
81
140
111
96
149
123
129
68
101
97
113
128
107
120
141
151
145
95
143
135
145
136
108
92
164
69
105
135
140
135
72
108
89
98
160
131
115
94
49
78
127
87
102
106
173
95
133
154
133
144
89
105
143
79
95
97
78
152
96
92
81
100
187
82
88
90
108
91
118
142
124
119
138
135
133
128
89
81
111
105
105
130
76
98
49
128
99
107
107
76
121
155
103
157
54
74
110
108
103
164
95
112
98
123
96
100
128
125
103
113
113
131
89
103
61
141
155
59
98
115
108
98
133
78
138
161
136
100
127
158
69
61
95
108
129
90
80
128
107
119
124
103
54
85
95
190
132
107
199
127
151
94
59
128
94
95
81
115
77
83
90
107
96
103
134
61
141
120
81
167
109
54
101
145
105
84
127
93
108
167
140
168
81
97
158
89
125
172
99
74
127
113
131
87
137
59
103
95
114
134
135
190
45
90
98
128
95
119
120
101
95
83
137
108
172
148
101
105
74
118
99
110
113
108
119
159
154
143
108
117
83
154
120
117
144
76
127
154
102
54
76
98
95
110
140
135
75
179
95
113
54
136
102
76
78
80
120
80
49
177
49
125
104
114
97
76
77
93
93
108
104
67
169
137
133
92
102
68
49
126
133
125
82
178
91
108
90
115
123
93
149
126
128
101
98
177
127
131
148
129
148
133
106
70
81
148
138
136
141
133
138
135
149
111
156
111
106
145
150
102
116
119
83
102
131
181
70
95
146
102
102
120
100
126
161
80
113
177
98
76
125
81
122
148
102
79
87
94
149
125
140
54
144
133
110
59
147
98
127
138
54
101
140
135
108
115
108
121
49
68
98
117
113
120
49
127
120
156
108
102
119
142
87
108
122
129
100
123
121
93
116
140
106
162
82
156
82
162
140
106
156
131
125
158
87
91
87
82
90
105
118
125
124
180
122
90
182
113
125
135
98
141
97
106
128
150
81
83
54
95
81
128
95
76
134
141
98
128
150
156
102
160
73
91
147
139
110
129
49
81
96
107
100
176
73
125
98
122
181
119
113
108
158
154
78
89
135
146
59
124
177
139
87
133
102
87
90
128
95
183
96
132
87
148
96
77
147
95
54
73
81
124
108
109
142
107
101
78
167
119
114
54
131
102
128
162
143
92
89
139
102
84
119
74
102
85
99
90
144
109
107
115
49
135
112
108
54
132
156
88
78
177
67
158
112
87
81
174
142
141
123
102
87
148
65
87
54
150
98
104
115
106
67
171
127
106
141
95
98
181
82
144
103
108
144
108
87
138
148
90
114
125
76
93
97
108
138
146
74
95
132
108
127
119
90
54
97
147
72
124
96
126
98
105
82
107
113
109
95
131
150
155
160
102
135
117
112
188
91
142
103
103
95
139
142
117
108
67
177
134
181
128
132
107
121
102
59
149
181
119
104
108
104
144
87
93
82
102
167
103
54
59
129
124
95
137
180
138
98
136
74
95
127
85
95
98
129
140
132
156
106
122
74
102
140
142
115
108
77
81
89
62
87
105
98
108
81
67
146
74
108
132
102
125
150
115
127
120
78
128
157
111
90
105
147
109
105
103
109
134
133
144
116
118
128
54
133
103
97
92
119
103
135
130
101
112
122
111
103
146
133
127
177
167
91
149
124
92
54
97
102
103
102
162
131
54
80
134
104
109
111
128
138
128
54
90
128
118
90
92
99
86
129
121
101
105
120
87
152
115
117
102
125
112
104
152
137
131
174
54
149
115
124
67
83
81
45
139
94
105
109
105
143
116
126
167
107
87
97
144
105
81
83
131
87
80
141
126
102
125
77
102
108
138
143
154
78
98
59
156
146
115
135
135
148
119
145
125
122
196
93
96
127
156
158
129
167
111
146
100
96
140
138
105
100
109
118
157
169
88
91
80
85
117
97
77
61
116
74
92
106
82
109
106
59
103
101
160
117
139
105
100
150
99
54
111
109
81
115
108
163
109
90
131
131
59
114
179
95
132
122
118
83
144
90
102
103
103
141
125
109
135
100
122
120
127
98
177
102
88
141
82
115
136
160
108
137
119
125
132
77
105
108
124
116
160
110
98
72
83
143
144
95
100
98
77
173
96
102
126
145
87
115
182
87
128
110
128
138
93
130
118
150
103
120
83
90
159
99
148
99
95
110
169
158
119
128
90
92
54
106
62
131
133
177
186
81
100
125
97
129
168
143
74
144
129
130
108
128
105
93
74
138
102
74
151
108
82
85
127
76
128
104
103
82
108
98
130
126
98
142
155
95
69
91
173
102
93
126
168
107
118
177
82
89
150
125
105
143
54
95
108
54
105
80
140
107
143
116
114
108
93
140
81
133
146
148
113
139
139
144
54
117
120
122
98
105
131
87
121
99
78
128
61
102
97
135
133
76
140
61
135
100
116
102
114
98
103
96
106
139
84
128
81
76
162
74
142
177
136
142
125
102
69
139
108
137
176
147
160
131
102
125
190
99
180
107
171
81
116
122
128
161
139
74
117
115
76
98
99
108
108
135
121
93
98
54
157
81
103
69
85
126
96
138
102
112
188
158
148
165
115
148
96
107
122
120
154
112
146
106
143
192
133
93
95
80
129
97
172
126
81
118
126
54
81
78
116
129
93
79
108
54
78
80
135
110
111
106
90
145
80
110
144
115
143
95
140
89
92
141
122
158
108
104
59
49
123
87
123
119
150
102
123
109
116
100
90
111
160
143
108
143
59
98
131
94
146
91
144
81
129
127
54
126
103
102
133
87
99
140
106
103
87
104
102
102
90
108
99
153
169
94
95
93
129
160
115
72
134
120
136
109
144
105
152
199
137
135
162
133
153
102
102
127
91
106
59
103
117
88
76
125
108
130
161
84
179
115
92
104
120
74
101
180
111
67
86
81
117
132
54
108
139
87
42
76
163
95
149
54
103
68
95
133
150
85
127
176
116
92
105
125
111
125
174
87
65
108
145
89
138
123
133
80
172
77
169
90
141
126
67
81
113
104
135
136
54
91
128
89
102
95
132
118
144
140
102
159
158
108
107
131
79
117
90
162
101
97
143
199
141
87
138
69
109
67
140
102
102
167
167
125
100
132
115
59
98
113
133
130
126
101
49
118
130
69
128
74
54
95
111
102
95
81
102
120
97
147
111
146
140
102
134
108
100
148
110
157
139
78
149
81
117
54
80
129
102
134
82
113
95
96
180
148
95
105
130
98
145
148
158
116
120
183
144
107
136
85
149
105
96
127
82
77
150
168
132
82
143
155
98
139
114
108
147
163
80
144
177
118
133
91
98
135
54
126
132
84
81
108
110
98
116
74
125
111
148
95
102
90
124
115
113
105
164
134
105
109
104
102
177
118
105
67
113
78
93
156
99
125
77
103
85
54
102
85
101
128
172
113
105
108
108
82
79
108
85
162
81
127
111
90
198
150
107
117
102
149
99
93
101
82
54
150
118
139
123
102
131
123
136
108
101
95
103
109
122
133
62
105
156
98
102
108
81
112
83
148
194
113
135
127
82
90
102
116
137
115
169
148
128
125
128
124
118
81
109
74
102
54
125
148
69
149
132
54
82
127
133
103
124
152
102
61
117
98
133
102
98
123
54
171
103
96
137
89
92
67
140
86
153
186
85
132
157
98
176
110
146
137
108
98
78
108
54
49
103
139
154
182
54
118
74
73
125
140
91
81
54
135
98
120
77
109
125
112
82
125
117
143
81
132
129
133
113
54
59
102
108
96
130
182
103
86
92
124
123
146
168
91
93
101
141
99
95
59
108
111
98
98
99
138
95
139
126
96
81
113
167
105
124
144
190
132
119
93
49
152
117
95
87
119
183
141
138
127
77
59
91
77
131
130
49
131
142
102
147
120
95
146
125
78
134
130
102
157
118
112
98
102
59
129
105
133
98
106
74
147
49
142
133
127
102
89
54
115
101
116
177
166
108
59
98
166
125
144
82
105
149
106
88
146
135
95
151
133
139
138
139
77
140
126
139
165
89
102
109
108
93
156
102
103
95
108
136
144
82
160
98
148
142
87
159
144
81
120
96
98
81
97
82
59
155
105
145
82
144
104
105
108
141
107
98
59
95
114
153
59
142
128
135
131
151
87
158
140
54
82
127
121
142
173
177
105
150
160
130
101
173
126
128
100
134
110
135
133
103
83
163
103
98
108
102
93
112
77
81
108
149
103
105
125
76
80
157
169
97
106
117
82
81
168
116
99
134
120
119
116
150
67
125
103
101
105
97
54
49
137
132
92
88
119
133
113
136
157
179
97
82
87
130
132
139
130
49
93
97
49
108
130
128
80
143
87
74
101
74
141
59
78
137
133
107
148
124
123
68
82
122
134
119
54
77
117
49
152
125
131
143
85
113
105
134
119
102
127
82
111
79
125
81
110
138
125
161
109
145
78
81
67
93
117
127
76
111
124
122
118
182
54
110
118
166
95
157
135
76
107
91
105
113
108
112
81
115
117
74
116
127
160
116
113
115
175
125
170
108
122
114
76
100
99
184
54
67
120
143
123
85
74
54
104
108
139
69
96
92
90
108
95
94
128
98
87
125
179
118
150
173
110
82
98
108
186
127
98
128
172
106
120
185
78
143
102
131
114
106
119
125
102
91
108
139
115
93
161
137
103
54
77
108
127
91
209
100
129
87
121
108
149
135
79
115
125
128
172
139
101
61
115
138
114
115
128
133
87
108
103
177
95
130
99
144
127
131
128
170
101
154
89
117
122
139
131
112
90
98
103
177
103
114
139
123
116
95
113
101
144
104
122
122
105
67
102
92
161
101
74
102
84
83
105
97
94
70
135
69
118
95
120
177
103
115
111
96
177
124
132
106
108
108
99
157
129
169
124
125
54
122
90
93
146
98
112
143
149
95
133
109
74
156
177
120
74
180
107
111
103
113
161
100
103
151
102
173
54
102
167
92
54
54
87
135
54
128
82
148
107
143
143
149
87
90
95
90
109
139
146
140
80
163
161
83
105
108
155
188
102
74
120
104
122
113
169
121
165
101
118
102
54
104
149
78
103
54
114
109
103
102
111
120
96
54
142
120
72
177
98
193
81
146
102
95
74
102
125
158
140
49
95
95
115
128
135
74
141
54
87
106
110
158
118
79
108
107
95
102
113
123
133
135
154
131
143
111
147
77
68
182
148
99
116
112
229
81
113
54
102
102
147
95
110
108
144
131
59
118
95
152
171
137
87
121
113
138
158
93
138
179
93
82
103
54
54
115
49
133
165
106
134
49
98
113
87
157
168
76
102
61
49
161
82
132
82
134
116
156
123
165
113
170
146
161
148
110
148
76
86
118
113
152
102
145
104
90
125
118
85
139
95
172
81
107
146
149
144
135
67
156
191
190
85
111
83
111
179
101
115
110
128
78
76
135
81
113
87
95
101
105
57
170
113
80
95
59
120
147
155
107
54
97
111
149
146
142
140
110
110
108
88
96
101
108
100
121
127
54
152
153
219
135
88
119
142
59
104
182
90
132
87
130
131
164
118
122
115
102
76
139
80
126
145
163
129
108
118
49
122
118
154
99
119
90
149
86
131
130
134
107
81
103
61
105
107
49
181
143
141
49
131
146
144
108
83
96
90
156
148
144
111
105
139
137
110
78
76
112
122
138
61
118
132
127
98
102
122
204
140
120
128
98
95
114
103
127
138
137
139
130
132
129
106
124
68
133
122
144
81
143
54
111
126
106
116
175
136
154
125
130
78
182
185
127
143
147
122
157
132
167
125
54
165
106
95
126
186
96
108
113
115
112
98
95
120
108
177
93
108
173
111
117
135
101
99
108
128
138
133
145
123
127
109
120
95
103
89
97
102
104
147
98
118
74
115
135
128
133
152
87
80
158
127
108
113
146
76
105
77
133
127
153
119
111
138
103
95
95
99
89
134
77
49
77
120
117
80
83
123
119
123
152
54
83
83
133
115
98
156
98
82
133
74
77
79
139
105
103
93
117
120
107
138
106
137
125
54
77
150
112
145
109
108
83
128
147
123
144
94
49
76
129
89
97
108
117
122
109
77
83
95
113
142
136
108
87
102
101
94
103
125
128
103
117
103
103
133
98
143
80
103
126
88
139
92
96
110
90
101
141
87
155
87
92
61
114
135
138
76
96
100
94
54
139
148
90
123
82
117
93
141
150
136
79
141
122
74
165
108
177
117
105
143
97
101
97
100
128
134
103
78
98
54
105
135
120
106
140
54
67
143
102
68
92
116
114
140
112
103
103
127
90
129
127
130
92
140
110
101
87
108
109
49
129
133
69
108
67
160
86
54
140
95
180
148
98
141
146
124
113
83
130
112
133
110
136
77
85
123
148
54
72
54
149
115
106
98
115
54
123
101
54
135
149
104
115
145
106
114
94
143
142
102
118
177
103
149
119
87
141
54
115
97
103
74
76
112
112
111
122
108
146
76
82
127
142
96
102
131
77
91
111
137
151
92
103
106
88
69
115
105
152
98
117
142
177
146
134
126
91
87
83
74
54
81
146
143
118
125
134
145
102
123
118
82
133
129
189
65
139
103
108
133
158
67
109
104
115
82
119
87
97
113
49
102
181
102
116
128
129
108
123
133
162
76
68
103
126
107
180
102
98
82
113
147
103
111
160
54
89
131
149
108
139
127
124
128
146
121
144
157
131
157
129
116
82
122
110
146
108
110
143
67
141
148
124
102
88
105
108
101
105
169
113
113
128
96
122
99
155
151
115
87
103
149
117
103
166
132
101
140
76
135
100
124
143
125
139
116
104
95
97
106
131
102
154
108
103
133
108
140
87
120
125
129
162
108
118
141
150
157
177
73
126
108
108
136
82
113
91
133
108
49
118
106
103
90
132
104
88
93
84
128
87
106
156
141
118
81
151
59
122
134
54
103
98
129
148
97
134
165
69
118
54
180
49
112
84
165
126
189
98
143
106
85
69
82
112
109
135
127
96
140
61
140
93
165
102
76
115
176
178
85
102
54
139
140
103
102
152
122
83
94
149
165
124
136
133
102
95
151
144
101
103
140
133
188
98
131
134
77
87
132
108
86
65
90
200
86
141
141
81
77
49
124
103
80
83
121
98
102
61
105
89
125
131
103
95
133
54
107
107
118
105
137
164
113
68
140
95
136
99
143
138
145
54
148
88
114
106
144
59
153
102
127
104
103
157
118
116
144
161
98
104
94
98
161
67
93
93
73
138
125
155
106
143
142
98
104
106
132
128
54
101
122
84
136
127
76
110
142
125
115
113
87
87
108
124
85
81
132
166
98
180
108
177
153
96
120
108
115
142
102
107
120
79
81
109
141
105
142
108
127
103
141
95
155
88
155
102
67
54
151
135
95
121
199
108
102
97
113
158
113
127
93
148
100
93
125
172
81
141
102
104
79
137
132
143
98
98
177
113
136
69
92
112
96
125
102
95
115
131
54
81
133
174
112
138
115
93
103
112
77
108
106
142
54
105
54
213
91
59
162
112
100
96
149
95
103
108
108
112
76
141
74
142
131
103
98
103
160
138
102
143
78
107
133
98
172
122
80
102
168
95
220
143
114
74
127
102
128
152
125
151
102
143
102
54
102
177
114
173
112
157
153
127
113
141
103
128
108
115
127
141
93
76
150
102
97
121
125
146
108
90
49
109
103
113
108
157
162
124
133
113
105
127
156
94
108
81
125
106
82
95
145
115
148
135
158
157
167
124
96
94
102
118
154
95
82
121
82
115
131
143
108
110
103
133
144
95
102
127
93
177
109
79
163
120
77
61
102
158
117
124
95
100
92
65
150
101
108
132
82
133
139
54
154
111
107
126
102
133
122
126
108
113
84
78
165
102
206
108
143
112
142
122
69
93
108
158
139
134
129
146
85
106
61
97
118
102
139
122
194
106
73
103
121
142
109
93
156
109
102
147
122
133
100
108
147
77
137
81
162
105
144
156
77
111
161
114
87
90
177
131
114
130
103
113
76
108
49
151
99
108
150
165
103
81
150
126
96
96
159
133
108
151
142
93
95
135
114
92
101
74
111
132
120
148
90
93
111
124
77
100
144
140
98
102
81
143
96
133
93
170
110
107
110
126
112
90
102
90
116
117
59
182
143
109
69
101
134
103
120
137
103
121
130
81
104
179
121
124
49
107
146
92
111
121
85
93
78
115
104
156
144
126
130
134
165
95
81
130
74
180
108
54
110
132
78
122
115
59
108
115
170
95
131
95
94
148
104
125
143
103
146
124
54
95
81
114
101
122
150
99
126
118
124
87
177
74
147
49
139
93
89
100
81
141
81
185
95
126
110
76
86
83
143
159
54
131
101
106
102
74
86
108
153
109
87
102
87
126
54
103
102
134
130
135
100
81
67
131
131
131
95
157
153
54
121
108
100
128
140
116
125
133
68
166
90
54
105
93
110
71
159
83
124
98
59
54
107
93
89
161
94
145
108
106
92
139
90
135
143
78
100
82
103
122
93
145
87
106
124
108
109
127
101
126
86
103
120
104
125
192
134
129
139
100
54
98
131
131
143
137
73
147
100
207
82
155
85
83
150
101
99
109
102
85
107
95
138
99
137
124
130
148
120
144
111
141
81
90
90
81
150
82
102
163
103
148
134
133
74
118
97
134
108
108
144
152
112
103
98
118
124
88
76
124
180
90
139
78
107
125
125
120
177
154
54
54
102
79
154
83
90
77
170
134
97
142
85
81
152
113
134
125
95
82
108
130
113
98
145
96
153
125
141
112
94
95
140
123
106
59
142
103
127
93
99
93
116
133
77
81
92
108
79
138
81
74
78
100
148
91
105
112
139
65
81
61
84
122
97
162
156
93
143
165
94
117
125
137
118
101
119
81
116
130
151
148
98
104
112
82
100
115
156
103
104
150
148
93
107
69
96
118
149
140
49
105
94
143
129
108
122
87
139
127
76
133
167
74
102
76
111
105
142
119
104
108
98
98
108
120
111
132
81
80
102
139
112
144
128
105
169
104
95
107
106
82
76
141
114
140
129
120
77
93
108
129
116
160
121
156
87
87
131
86
108
98
135
93
132
132
103
125
81
107
112
128
78
102
148
92
74
103
119
133
157
161
139
103
142
125
157
67
77
83
98
94
108
111
138
105
59
78
158
54
90
128
141
112
67
101
123
99
137
156
93
146
149
140
125
128
127
93
88
120
150
119
126
144
94
103
119
91
113
76
127
144
81
102
102
93
108
85
81
146
149
133
123
124
160
142
113
100
108
106
158
154
124
113
157
84
105
112
124
128
123
135
98
131
102
102
110
93
113
149
89
155
103
155
49
148
144
142
127
91
128
67
144
49
145
129
138
91
90
139
120
93
118
113
95
133
102
94
111
116
110
108
114
129
89
154
123
145
97
104
128
93
49
99
96
125
91
95
117
74
139
108
106
105
95
107
113
177
112
98
121
108
126
137
95
77
119
121
81
98
93
154
102
122
141
117
102
140
168
93
103
54
120
138
126
90
199
112
78
74
105
67
100
74
115
136
98
54
115
95
154
91
117
120
54
68
106
98
87
98
127
148
115
74
166
154
115
110
95
111
82
68
128
98
129
91
87
109
112
111
131
108
104
147
126
95
155
107
98
147
59
121
104
140
140
140
80
74
133
93
108
105
165
155
102
128
123
89
170
115
160
115
128
61
141
109
129
114
101
144
112
155
144
161
95
77
151
126
144
118
160
104
105
136
204
108
132
125
110
149
153
138
134
109
74
95
163
49
140
129
174
85
99
61
98
127
91
125
80
132
165
108
126
132
151
100
157
131
157
104
113
89
144
126
134
135
68
110
102
132
76
113
87
124
76
128
81
143
105
139
127
59
125
115
122
163
68
105
159
96
131
67
49
109
85
132
152
54
142
135
54
98
82
54
108
59
87
123
125
125
95
91
102
116
118
77
97
91
49
111
98
109
123
109
108
93
107
110
122
98
105
154
122
93
159
92
134
77
120
134
144
61
128
128
153
125
93
138
105
110
61
115
125
87
135
95
125
127
116
125
76
78
140
93
125
133
120
98
124
124
142
142
137
137
204
112
123
77
144
186
54
156
108
101
90
148
160
133
108
206
156
69
103
102
81
117
105
125
141
117
94
98
82
85
200
143
61
90
158
182
129
54
112
125
122
77
105
150
140
112
125
126
143
109
96
95
78
119
100
97
135
67
180
210
113
171
133
115
172
103
117
100
108
199
110
108
108
54
81
82
111
102
128
172
92
102
139
82
159
102
112
146
97
120
120
130
133
90
83
149
93
93
119
73
95
103
112
110
150
143
78
108
83
161
103
133
139
73
76
110
141
97
135
159
98
102
103
127
183
125
180
186
103
164
93
112
98
129
65
117
162
100
155
102
136
160
99
143
74
133
112
116
113
95
136
104
137
126
133
95
97
138
102
89
97
134
132
102
147
114
86
143
117
54
113
117
151
119
59
120
95
193
188
123
112
81
91
111
144
112
108
134
122
74
121
110
124
96
125
80
148
76
171
95
95
168
128
120
98
94
108
140
108
139
95
108
108
103
129
120
110
98
89
99
61
81
102
123
112
69
140
123
107
82
211
92
164
123
54
95
113
95
78
49
148
177
85
82
98
146
54
134
153
113
134
190
130
177
106
69
77
54
86
103
117
123
127
81
103
132
137
103
112
113
83
136
54
135
128
81
154
153
104
98
103
148
140
104
120
150
115
112
93
67
128
144
95
161
68
127
115
119
106
133
122
113
54
122
98
153
125
111
113
91
120
172
108
145
137
143
122
113
135
100
139
143
79
108
90
103
99
152
102
113
139
156
49
127
176
120
67
74
145
88
45
98
111
143
150
109
146
87
122
79
87
103
87
121
133
135
98
110
82
107
54
145
87
101
106
101
144
147
81
83
134
115
154
127
115
67
125
54
97
147
125
123
129
87
108
78
77
102
123
128
144
108
148
134
100
98
173
74
148
144
172
112
141
121
98
81
83
125
164
144
90
155
120
163
95
104
122
105
158
70
102
165
93
74
102
102
86
102
112
91
129
135
150
141
126
131
152
91
132
116
146
102
122
151
158
128
127
106
107
98
102
144
77
73
139
111
97
104
96
92
74
115
54
138
163
115
87
121
139
158
74
132
108
110
90
167
125
141
113
59
106
134
143
98
61
133
144
107
119
120
83
81
74
151
122
112
74
142
133
133
153
126
54
159
124
95
120
98
98
125
131
137
138
54
118
150
90
168
153
125
81
136
165
140
91
108
49
163
102
126
147
139
107
82
114
113
95
122
113
216
90
108
121
106
87
101
149
138
100
82
59
59
122
96
128
125
103
94
118
106
93
134
114
108
81
83
54
120
149
93
117
82
103
108
96
109
108
185
134
105
96
110
67
115
98
83
124
122
81
95
155
105
157
141
117
178
125
95
106
129
54
93
139
123
140
135
114
166
145
107
151
132
81
107
93
149
49
112
105
101
165
108
122
124
142
138
93
131
135
125
105
83
105
106
140
110
133
143
158
148
154
133
112
102
108
87
97
114
148
115
123
118
144
94
103
108
109
157
82
82
113
89
81
125
157
102
116
102
59
114
146
128
104
161
153
96
120
105
82
82
102
115
77
146
175
109
106
181
149
108
122
128
117
78
125
108
115
171
90
104
127
140
165
111
157
134
125
108
61
103
92
83
89
82
137
140
105
167
92
120
133
95
118
194
165
104
126
110
139
139
146
112
102
98
143
119
104
93
139
121
54
67
108
149
132
154
98
144
76
78
86
143
131
128
145
108
149
49
111
128
102
120
122
149
73
116
108
137
110
121
131
140
101
106
83
108
131
111
81
90
124
128
184
108
120
118
145
81
156
127
190
158
94
108
102
177
98
82
123
108
61
124
125
98
110
81
180
83
79
78
112
157
82
129
114
143
103
133
108
49
54
172
79
78
98
106
103
107
168
153
135
104
100
96
100
54
133
54
83
74
133
131
81
121
92
108
108
118
79
143
80
121
177
140
54
122
137
90
82
163
121
103
79
108
137
105
129
162
147
76
171
74
99
135
73
54
67
118
76
143
134
100
61
99
123
85
102
109
130
102
133
117
108
95
128
129
49
90
110
74
92
117
82
102
133
139
123
141
112
105
117
95
83
86
131
118
112
81
85
172
103
108
147
129
98
114
93
90
158
179
128
140
85
132
145
94
98
140
82
82
78
130
125
59
102
133
117
101
127
123
74
76
120
106
91
146
95
106
169
118
141
126
113
110
149
113
108
107
76
102
103
89
131
129
114
54
108
125
89
95
122
163
151
124
108
95
67
143
98
143
108
82
101
137
158
103
145
106
147
140
115
107
72
102
118
83
131
103
96
108
49
93
148
79
152
94
132
180
98
145
143
156
96
103
78
150
114
83
95
111
54
172
123
123
115
87
159
54
85
149
74
108
87
92
102
123
152
115
54
161
199
153
95
143
102
74
92
95
113
133
96
108
93
74
91
164
156
125
140
108
140
98
177
118
96
153
74
76
124
129
129
112
124
108
156
112
115
173
128
103
119
117
104
107
83
157
68
54
158
90
82
136
141
54
197
54
95
103
128
125
103
84
81
108
139
97
175
119
161
143
162
102
84
143
102
106
125
106
94
54
124
54
79
95
161
163
133
108
145
95
117
157
54
158
108
101
118
142
127
140
95
105
122
98
138
103
141
113
122
149
106
108
177
111
133
102
106
122
134
169
100
80
125
131
90
105
117
82
148
93
84
125
148
93
92
115
124
133
142
126
95
77
116
131
69
115
129
74
98
149
111
110
119
104
95
118
125
146
124
103
101
108
118
125
108
111
103
161
98
84
108
122
163
97
116
144
83
145
135
140
92
133
156
127
139
87
153
106
147
84
61
113
139
93
139
95
89
107
74
145
114
142
78
87
125
81
119
106
140
143
159
142
54
54
113
101
115
79
67
131
68
108
116
59
134
129
178
111
115
144
95
138
176
131
94
110
111
106
146
97
102
139
110
99
130
127
117
98
143
125
140
126
123
122
179
143
103
69
98
139
114
125
59
144
119
68
106
113
74
85
109
124
201
137
76
77
106
138
164
122
151
89
97
81
146
141
152
102
54
200
132
144
81
103
120
115
136
133
131
78
74
134
74
115
138
108
104
143
114
128
135
146
95
132
165
115
159
113
112
169
113
143
95
105
141
139
143
78
115
202
105
107
87
113
125
131
92
133
106
146
108
102
143
109
87
140
72
54
193
94
117
157
158
115
96
110
125
154
119
76
78
107
102
54
81
131
98
76
119
186
95
138
101
74
158
153
122
102
115
94
137
101
214
59
83
160
177
129
129
116
135
94
108
102
146
116
98
135
148
105
145
101
158
168
171
86
92
73
144
95
135
82
146
78
102
83
95
97
137
112
121
158
98
135
133
57
106
103
148
81
74
54
68
116
134
139
103
102
73
93
78
125
101
119
102
85
77
123
127
133
69
143
89
148
102
98
94
135
118
135
68
116
79
150
112
101
143
100
78
135
148
98
152
86
134
85
149
113
132
89
122
136
131
79
49
126
160
154
120
92
160
144
87
49
158
128
126
149
111
100
93
101
105
112
124
85
133
177
144
154
112
103
103
112
108
54
110
184
158
147
113
65
95
128
100
140
125
168
107
84
173
83
141
81
107
131
128
81
115
90
100
146
108
120
139
109
125
104
108
49
54
83
88
127
112
113
59
180
125
180
200
103
76
131
81
108
74
119
119
145
138
102
125
74
106
131
204
133
143
119
120
83
79
107
103
149
54
95
118
137
131
97
117
125
114
127
122
113
67
117
118
74
102
116
107
67
138
152
79
143
95
100
145
154
108
77
118
54
152
175
91
106
74
85
155
166
147
82
175
126
141
112
120
108
112
113
140
128
105
107
125
130
142
76
124
180
102
103
98
119
94
133
165
175
125
169
224
119
106
95
144
138
85
108
160
78
170
129
152
113
160
93
54
152
59
147
103
125
108
84
180
108
137
77
124
116
125
143
100
143
95
131
129
161
108
113
124
106
105
122
138
153
86
84
103
113
121
103
114
136
98
78
82
98
127
96
100
92
109
54
151
108
108
107
113
116
74
147
95
97
109
155
120
103
177
116
98
90
148
128
145
161
140
112
90
87
132
102
118
99
103
90
98
113
107
127
122
118
138
121
106
95
98
146
113
136
111
102
102
144
112
156
114
144
112
95
127
118
81
132
111
136
114
121
69
65
102
111
97
78
141
120
134
104
145
154
98
131
96
93
105
90
143
118
129
146
54
177
148
102
120
106
107
117
84
115
102
81
133
95
91
125
143
151
225
97
151
98
95
164
118
133
147
148
144
124
91
97
114
127
102
95
151
123
99
139
139
108
68
147
120
114
144
102
137
85
131
67
54
118
96
74
88
84
134
140
61
127
135
111
109
122
91
120
109
103
109
161
133
101
156
54
113
109
178
137
79
116
127
119
145
135
86
154
54
82
153
93
137
97
108
141
137
136
96
110
135
96
149
115
126
121
110
97
118
162
115
133
81
90
130
61
96
108
126
135
110
111
135
54
158
150
92
135
49
115
142
120
154
109
104
98
102
157
67
115
155
115
163
188
93
113
103
98
101
131
116
105
113
120
149
150
131
160
112
133
111
131
82
115
103
129
105
127
141
125
74
108
129
131
93
130
132
93
140
147
133
128
74
146
121
106
82
132
98
82
102
113
143
113
97
120
106
136
90
83
81
91
141
59
108
94
150
127
99
118
135
74
109
95
90
95
120
81
54
124
83
138
144
130
160
126
76
116
80
163
67
74
141
150
126
49
105
128
132
105
92
129
134
125
108
135
142
129
95
138
91
76
117
119
98
113
54
93
149
98
100
103
108
142
136
95
138
122
74
149
63
103
138
121
155
132
109
86
133
98
97
132
125
108
74
115
114
148
59
153
129
177
168
127
88
145
74
69
107
49
88
144
157
95
108
90
141
106
118
98
80
95
103
103
126
54
95
108
72
120
108
125
104
118
119
139
95
141
165
81
95
74
159
63
118
180
108
107
91
108
113
180
119
94
126
91
129
123
146
115
98
101
120
95
78
80
98
110
59
144
88
112
83
124
132
113
145
134
74
156
102
144
112
54
129
76
128
98
98
102
96
95
99
80
180
143
95
125
68
182
105
115
173
81
129
117
94
67
102
135
177
78
149
102
81
105
145
108
141
112
104
116
157
176
133
96
108
148
146
135
104
111
95
144
135
103
144
133
144
130
108
88
124
128
74
138
81
95
162
124
100
148
128
94
108
95
127
139
73
49
106
123
113
138
104
77
108
106
118
97
166
95
94
139
93
170
128
108
153
87
77
158
61
104
133
114
147
149
112
105
102
95
131
59
128
141
153
89
92
177
108
90
138
151
128
140
96
117
143
108
130
103
123
91
87
127
145
153
120
144
159
131
148
79
185
132
177
146
143
54
117
49
103
156
112
105
106
76
122
108
104
113
93
83
54
116
98
163
130
115
132
89
124
102
148
137
59
157
82
109
140
114
102
127
93
145
140
116
129
109
121
97
134
119
148
92
91
156
103
77
127
115
124
138
90
148
137
179
81
95
114
145
76
91
152
124
169
120
91
141
95
155
113
131
112
76
102
143
77
115
95
100
173
105
82
81
75
128
165
141
120
140
148
126
125
151
119
127
121
79
138
69
117
108
107
107
119
144
136
75
108
85
123
135
105
127
137
165
146
173
102
87
157
95
141
130
165
69
120
132
151
107
129
107
186
74
154
82
93
87
182
81
108
70
145
54
148
127
131
95
133
94
148
114
81
129
80
143
110
120
125
115
133
59
107
149
124
145
70
97
108
74
143
105
102
115
99
141
133
95
157
92
89
103
98
93
87
103
118
139
104
130
131
84
95
149
95
139
83
61
81
110
81
131
129
76
121
128
105
102
54
113
115
165
140
90
126
128
141
125
117
113
77
151
133
131
94
113
99
59
142
95
133
129
140
114
130
108
180
98
98
146
133
148
125
180
142
75
102
200
132
180
85
158
99
108
112
130
148
133
140
103
136
130
95
133
85
167
87
134
110
163
87
105
116
93
97
49
118
162
139
104
102
141
119
82
125
127
54
121
134
125
138
115
95
135
151
103
128
82
95
97
108
134
91
165
128
132
98
148
172
115
149
148
108
173
83
49
125
167
85
159
116
102
117
105
54
82
129
115
113
171
134
130
128
154
90
188
115
74
110
93
127
102
108
137
130
119
113
120
115
95
129
105
120
143
87
49
144
156
108
106
134
100
133
104
137
59
117
139
102
93
124
110
133
136
105
109
129
131
92
114
116
81
145
127
116
92
108
126
133
85
115
193
84
117
113
101
156
98
113
102
111
139
135
129
87
131
102
225
148
102
126
131
154
152
69
84
171
116
96
143
117
165
155
131
143
167
119
112
67
113
116
144
59
110
191
72
102
153
108
106
83
59
95
77
98
77
104
130
104
142
129
74
129
133
79
98
79
49
142
138
123
82
120
143
153
149
130
153
81
145
153
126
115
49
93
148
87
81
106
154
100
118
54
133
133
108
54
99
102
153
98
108
128
136
157
152
104
94
149
121
133
81
144
134
160
108
117
89
164
82
49
102
135
117
165
82
201
131
149
96
127
101
150
160
106
145
152
129
116
138
91
103
150
134
90
120
132
108
107
145
67
68
138
124
103
161
90
131
74
127
116
82
67
89
136
116
108
137
90
107
155
102
102
88
140
115
107
113
95
125
149
133
110
141
98
115
112
235
168
95
98
72
138
49
108
135
108
138
113
139
122
77
127
120
131
121
105
145
147
112
137
140
81
65
67
107
113
170
139
93
173
129
151
108
125
118
123
91
153
158
136
130
102
140
100
144
173
81
104
111
172
154
128
165
134
149
119
146
117
135
106
133
93
95
136
77
108
81
95
158
148
121
87
124
128
125
179
107
101
95
95
203
90
134
139
104
65
115
103
108
97
77
92
133
142
97
108
112
90
138
67
135
170
54
110
81
146
108
163
124
54
144
98
165
135
105
98
145
76
82
100
102
114
96
105
87
83
133
102
134
105
68
85
137
95
123
90
91
141
194
69
126
148
150
54
90
108
115
167
111
124
111
108
218
153
97
165
104
85
81
129
61
110
49
59
147
104
135
135
69
98
81
112
102
93
94
113
113
115
77
160
145
84
131
84
85
90
149
128
54
84
83
105
156
105
103
161
139
139
180
135
100
126
108
163
180
77
106
142
147
98
105
54
78
102
113
114
83
145
128
127
123
112
120
157
115
127
134
140
143
137
143
114
85
101
138
113
113
135
78
128
98
112
95
87
119
90
129
125
158
148
212
158
97
97
161
150
98
140
133
142
108
49
144
105
153
177
200
103
103
179
98
148
91
98
116
112
102
115
135
170
158
125
131
98
177
108
116
177
76
116
83
113
153
54
116
110
108
80
76
124
90
169
125
146
144
54
130
153
119
157
90
96
200
143
144
179
93
138
148
112
121
49
139
103
103
102
133
118
194
121
143
141
128
108
124
145
49
153
125
138
163
92
162
140
143
122
128
97
131
111
102
101
120
95
102
119
169
139
158
134
121
177
119
133
167
87
102
108
107
113
132
127
114
150
144
143
135
76
118
96
103
129
73
142
119
168
90
145
80
97
69
113
97
116
169
68
73
113
128
78
78
124
108
81
81
142
123
90
149
165
141
99
84
115
81
106
74
54
135
145
116
194
54
119
99
59
143
168
128
108
97
116
127
160
103
108
151
140
139
120
93
128
101
80
123
105
112
98
96
124
128
49
113
124
158
105
54
129
89
100
104
104
96
91
116
109
82
134
49
95
95
69
128
95
162
49
133
143
117
116
86
110
110
129
96
124
108
127
67
135
76
106
98
49
146
133
67
97
92
87
90
143
139
116
123
108
100
91
91
69
120
120
77
124
114
89
119
77
129
54
101
113
135
131
140
134
103
141
106
54
102
83
67
127
97
111
89
54
87
95
94
140
137
117
128
129
144
98
124
125
137
98
199
104
133
113
87
97
78
114
138
98
99
139
108
113
54
108
107
103
156
119
144
145
122
162
120
80
140
97
73
94
76
154
113
131
106
96
147
116
106
144
67
113
95
95
54
105
83
132
191
125
107
102
111
187
87
81
113
127
101
98
89
59
128
54
115
132
128
146
111
101
103
118
99
77
80
90
138
98
124
100
92
98
98
92
153
76
54
89
160
125
122
125
119
115
82
54
95
127
144
116
54
61
63
148
141
112
118
133
131
115
101
118
122
99
182
129
106
95
102
121
138
89
111
152
49
133
69
122
109
97
139
132
108
99
102
143
92
177
117
138
134
108
118
122
118
109
104
124
106
108
111
49
165
62
139
182
98
102
144
120
97
106
108
79
100
113
90
108
155
143
95
137
149
127
65
110
140
141
72
123
93
129
129
98
136
150
102
121
131
87
80
110
136
133
139
116
147
127
107
129
143
82
105
103
141
102
90
144
54
54
98
76
158
114
140
100
127
156
49
148
157
108
126
92
141
95
99
141
84
59
135
54
124
127
157
132
76
109
118
120
122
132
68
161
77
96
171
145
131
87
49
102
155
72
161
142
68
125
118
77
131
80
179
98
93
108
133
54
108
196
123
144
140
129
107
165
161
128
140
85
134
128
125
101
97
158
129
104
81
111
140
138
59
73
125
117
145
105
162
139
101
103
153
141
148
102
128
112
114
59
85
124
45
144
78
171
123
125
163
65
73
106
95
74
95
103
49
160
68
115
97
157
127
127
95
93
91
131
105
100
82
134
135
115
107
90
190
105
154
96
95
49
49
70
130
105
143
59
125
78
103
152
138
132
116
171
131
102
133
87
103
101
108
119
101
126
134
94
158
154
83
108
98
74
59
95
118
105
118
149
54
78
54
155
161
95
125
142
131
131
131
131
91
74
78
118
127
191
118
129
102
100
137
106
99
143
81
81
91
153
116
99
155
123
78
96
113
92
96
156
97
135
113
112
109
145
148
145
102
135
102
147
100
141
90
103
98
107
82
128
87
128
90
78
119
108
129
108
156
127
122
167
97
130
102
96
130
87
90
117
112
122
96
138
105
118
123
74
96
96
171
167
102
91
92
54
106
140
110
115
170
67
102
133
85
124
111
108
118
199
135
92
91
54
147
160
104
141
125
145
194
137
123
74
87
122
98
102
158
108
125
99
108
124
95
135
116
125
145
141
134
81
127
108
107
101
123
125
104
98
119
148
98
115
134
129
95
128
90
143
96
104
147
83
153
81
97
84
141
130
110
96
82
98
81
103
102
159
114
98
159
129
103
206
157
91
127
147
110
105
49
100
85
145
102
125
96
137
118
145
95
106
118
54
152
152
98
107
101
86
121
184
103
122
111
111
131
108
148
111
169
113
77
97
77
159
89
123
102
108
143
108
159
142
137
112
85
98
108
96
118
103
126
133
96
125
141
117
153
67
158
183
129
115
159
156
54
95
202
120
54
119
94
113
125
161
78
102
120
113
100
125
107
118
101
125
128
153
105
120
110
163
107
102
54
125
76
126
127
149
81
117
179
81
95
154
81
113
119
120
102
177
167
105
97
145
143
98
90
67
147
80
98
139
122
124
113
165
142
137
104
85
101
92
129
100
113
142
120
120
141
121
94
156
78
139
125
150
102
140
98
133
143
128
93
81
96
172
125
118
95
146
107
102
92
103
156
127
172
143
100
97
128
142
98
133
97
49
113
113
121
103
133
148
148
49
131
91
114
59
92
146
150
125
143
133
115
103
146
67
149
149
76
88
93
128
101
83
161
96
143
150
89
80
127
96
135
146
79
106
158
67
132
98
147
67
146
93
139
97
108
130
117
134
98
114
179
152
144
166
77
59
133
177
104
108
81
100
96
105
139
128
95
97
54
180
106
183
61
114
140
118
91
115
54
94
119
99
54
108
80
112
126
102
125
102
149
143
130
92
112
84
123
124
128
94
116
99
77
102
140
155
74
115
113
148
96
106
154
108
123
108
150
119
159
87
102
115
128
59
153
141
165
128
160
101
103
98
95
102
92
98
87
102
87
154
124
119
61
94
108
98
101
107
136
103
122
154
122
87
133
122
114
59
96
127
144
112
118
198
120
65
161
76
106
94
112
141
125
108
125
131
54
133
125
103
100
108
113
87
148
54
87
90
83
99
131
113
90
139
54
122
144
146
123
112
154
130
147
90
128
81
101
179
111
110
87
177
131
131
151
130
94
98
128
143
132
109
98
75
129
158
92
148
137
78
141
148
175
120
115
190
145
54
108
105
108
130
109
165
102
99
132
118
114
125
102
68
151
121
149
108
120
120
107
150
95
90
127
133
132
54
127
107
150
149
102
133
61
87
117
67
83
159
128
88
144
153
90
147
113
102
123
82
113
126
111
116
121
101
125
93
105
87
93
111
118
88
101
105
162
130
144
123
146
81
98
99
121
113
98
153
89
120
148
153
118
112
117
129
160
167
144
97
102
128
83
140
152
107
165
95
128
116
81
129
110
107
85
205
102
113
140
169
111
103
98
159
81
98
103
141
121
95
170
146
115
117
146
115
122
126
100
120
74
102
102
76
128
177
127
74
90
94
113
105
149
96
144
135
110
102
81
67
132
131
82
49
147
54
138
108
90
180
140
134
149
154
95
94
141
95
123
104
82
100
70
132
110
152
163
136
117
108
96
112
86
103
54
129
77
133
139
146
120
81
135
120
133
144
83
102
138
111
100
124
115
138
161
125
101
125
127
167
98
127
117
180
110
103
154
103
105
98
81
115
117
93
102
108
131
94
113
98
87
94
136
69
83
102
144
158
138
103
109
155
129
82
100
129
153
108
108
106
101
120
120
142
110
155
111
148
131
113
102
105
102
105
106
105
134
148
93
106
127
105
95
144
86
103
125
141
109
126
158
116
155
82
49
93
186
76
108
109
96
102
145
117
127
168
108
90
115
90
120
49
135
113
54
150
49
155
121
74
144
128
116
150
102
119
98
93
128
96
108
127
104
87
149
120
103
105
85
92
112
81
143
169
123
146
115
92
61
145
96
162
61
107
123
115
139
49
110
77
144
78
98
129
101
129
98
110
59
54
119
141
120
138
120
74
121
109
158
140
85
91
89
113
93
103
107
96
100
90
148
110
145
95
81
108
81
117
127
120
115
98
87
117
137
112
141
137
139
69
128
95
99
77
74
123
148
140
96
177
115
130
83
154
132
131
92
129
132
110
98
140
142
118
135
112
108
134
49
106
147
115
115
126
196
130
168
69
158
123
151
143
49
147
93
84
74
73
54
148
96
116
103
150
90
114
105
121
130
152
59
54
81
114
84
81
103
106
111
149
49
139
160
118
54
120
78
124
102
96
114
121
90
96
188
129
126
149
106
106
103
87
121
133
163
126
108
133
98
83
120
142
141
143
135
101
113
114
111
108
125
82
120
105
113
105
122
138
117
103
108
107
177
82
67
76
148
78
129
104
154
81
138
148
101
90
130
131
98
76
92
73
81
101
106
81
76
105
144
138
145
77
101
113
144
118
101
113
92
128
126
193
197
142
97
135
83
74
128
107
113
101
124
204
141
156
138
96
103
148
67
112
59
133
154
54
186
148
142
123
136
135
100
98
125
82
125
126
112
74
129
114
132
141
108
144
118
90
98
133
129
133
115
159
177
119
108
98
118
67
180
179
105
59
172
125
110
133
108
104
139
149
146
158
54
77
126
144
83
102
139
142
194
166
78
87
59
108
95
134
127
98
103
114
125
111
137
125
127
68
76
218
101
42
95
68
119
107
148
108
125
85
120
72
81
83
129
103
103
138
69
106
54
73
163
128
117
100
139
103
106
120
82
110
133
123
100
151
102
108
156
49
165
94
103
121
119
139
95
133
121
144
133
83
49
139
143
90
81
127
101
131
100
120
91
142
61
101
107
114
114
133
93
145
174
98
82
81
122
141
116
102
158
61
145
54
110
155
144
147
154
97
174
107
148
104
141
102
150
115
158
77
106
95
125
86
93
108
77
100
79
81
112
145
122
105
93
170
109
65
135
95
160
145
105
109
98
116
177
87
131
184
135
189
108
120
108
87
153
137
156
96
132
128
118
112
141
162
69
132
103
94
109
108
113
172
150
54
103
145
132
137
113
156
54
77
141
109
123
115
122
102
154
179
143
100
76
141
161
98
136
103
98
128
135
93
97
92
95
135
108
143
80
100
74
101
67
112
116
165
101
54
93
101
108
128
154
177
138
160
145
106
87
82
131
138
59
115
138
123
76
105
61
98
117
126
106
102
112
102
102
87
118
105
91
177
104
108
109
135
115
148
121
113
157
156
151
95
120
77
101
102
161
96
157
105
54
95
173
113
103
136
119
90
95
107
116
178
147
108
112
80
54
108
128
121
113
88
150
131
177
49
127
92
117
142
129
108
129
119
86
123
165
139
112
108
130
111
149
172
45
186
120
158
99
146
132
116
107
103
82
132
108
168
110
191
109
124
102
124
130
130
135
177
75
108
137
133
136
110
77
94
157
59
81
127
120
105
93
145
111
70
119
98
140
103
77
126
103
102
134
148
138
102
118
72
96
142
85
120
137
194
54
66
170
108
54
98
82
117
98
148
88
59
106
108
114
107
76
146
95
93
126
102
93
111
87
143
97
114
97
120
49
107
157
154
82
135
54
143
54
90
87
128
128
179
95
127
119
97
81
59
102
59
105
98
120
125
135
110
143
108
133
87
116
122
98
117
143
93
115
137
135
49
173
113
194
90
82
111
128
109
120
148
110
68
97
129
123
98
102
106
128
113
103
165
137
133
86
150
89
124
95
49
103
110
122
83
112
90
145
134
164
158
155
87
95
103
95
102
102
89
109
170
85
161
126
66
108
113
113
149
118
108
67
137
125
112
128
80
173
54
106
104
104
141
81
115
125
134
122
161
147
119
78
98
93
118
98
141
134
116
115
76
54
167
132
69
134
79
156
99
134
145
101
158
125
113
129
142
87
49
132
121
102
141
127
90
87
102
81
74
70
131
103
146
159
54
54
115
158
93
118
109
119
139
113
141
135
156
90
145
160
114
105
115
144
99
100
179
108
102
86
177
94
168
141
168
148
130
141
118
120
95
145
115
54
98
74
105
112
118
101
95
155
128
136
128
102
93
102
98
148
93
93
123
120
128
83
122
113
125
95
104
108
141
106
158
59
144
157
87
122
90
120
125
74
106
117
127
54
82
124
181
112
108
142
164
108
99
83
95
122
118
151
113
122
160
102
138
101
108
164
126
118
102
76
108
109
127
102
81
120
137
129
83
132
69
157
125
130
107
132
151
170
127
108
139
81
151
108
157
129
152
54
112
140
108
76
74
128
143
96
85
143
91
81
144
129
79
102
77
113
158
102
111
142
113
95
79
109
146
156
133
82
80
113
113
93
127
54
127
138
159
108
104
74
145
175
87
120
98
138
154
135
120
113
90
133
112
81
135
93
118
145
122
107
143
54
149
144
108
119
54
82
78
90
131
108
127
95
156
139
129
106
231
123
109
92
77
76
126
127
107
113
102
92
131
80
145
123
87
129
54
79
54
89
69
54
162
108
109
104
98
93
96
119
129
97
139
98
122
132
123
89
101
74
126
106
107
141
85
49
103
132
87
172
69
149
112
122
108
128
54
105
171
54
102
145
106
91
105
158
107
128
81
143
103
143
86
163
103
155
140
138
139
170
133
131
158
96
129
144
70
74
145
59
122
138
123
172
90
106
113
49
85
134
103
121
132
85
144
105
95
127
113
67
95
167
106
69
122
115
108
113
49
124
114
69
140
156
108
91
145
119
111
128
114
161
143
123
80
49
165
171
98
81
116
92
93
125
100
147
154
78
138
95
108
102
162
78
125
108
93
109
131
133
77
83
119
137
102
165
108
131
164
108
202
74
129
49
81
146
118
168
102
140
103
81
139
143
102
103
135
157
128
158
135
81
140
146
119
132
95
148
153
98
158
148
129
129
128
93
111
129
95
146
54
134
143
98
158
122
177
168
105
134
100
163
146
98
129
123
138
102
87
126
133
80
105
117
150
150
70
93
81
133
49
102
135
109
120
54
90
150
92
90
142
156
94
126
98
87
102
125
87
143
113
121
139
136
182
117
90
59
103
119
115
96
151
67
90
117
87
108
125
139
113
157
81
123
102
102
138
81
109
125
103
124
123
153
106
54
109
113
93
132
128
148
127
128
144
133
105
116
114
129
108
154
163
104
145
74
124
140
147
122
82
99
177
95
114
135
85
92
88
102
54
148
74
93
89
133
145
155
114
114
163
99
77
123
117
81
103
76
98
138
76
101
105
122
105
125
54
199
97
127
113
148
93
108
179
90
129
76
109
177
83
115
128
96
96
95
126
155
133
93
110
98
110
166
84
140
106
125
120
121
145
112
69
156
78
126
110
77
102
82
143
131
112
97
81
113
105
89
168
153
131
124
98
143
69
122
134
54
125
49
136
180
132
127
105
74
105
90
65
113
103
108
170
107
108
166
142
101
104
81
82
94
117
101
158
123
144
148
105
75
77
170
123
118
81
98
128
140
90
113
89
95
145
100
91
107
112
128
124
97
144
87
106
123
136
113
148
85
160
139
90
105
97
123
95
143
133
118
169
121
102
125
163
114
87
148
114
90
103
144
101
113
77
83
74
133
49
129
118
131
70
148
59
104
113
95
109
161
101
82
135
110
103
100
128
98
124
140
190
102
95
95
116
61
87
112
129
147
103
98
144
135
158
88
103
150
122
84
104
143
104
95
107
68
95
154
97
95
158
108
163
103
110
122
149
129
147
106
115
207
102
113
151
122
91
111
155
67
105
98
98
108
87
104
98
49
132
115
135
61
93
119
86
125
54
117
113
102
95
162
88
108
103
161
102
204
107
85
96
74
140
149
128
102
99
80
95
120
133
158
154
125
122
127
182
95
127
133
79
102
105
182
128
70
143
108
108
89
105
109
69
77
107
115
103
83
144
180
126
118
110
140
93
67
98
73
168
157
131
80
170
78
81
95
144
103
185
96
107
107
113
87
92
106
54
109
54
156
87
86
102
126
83
114
124
98
149
135
80
102
100
86
147
108
114
103
115
98
132
154
137
102
76
105
94
111
107
180
87
140
87
74
108
78
145
97
127
128
109
147
114
97
115
150
130
95
82
128
102
93
112
208
118
76
116
132
122
93
167
103
100
95
68
129
137
131
132
104
98
97
158
139
103
130
129
95
100
104
126
125
73
115
108
135
109
98
172
134
169
113
72
110
125
122
87
95
54
150
87
81
109
87
147
148
122
119
140
149
107
109
98
83
133
151
99
158
98
127
141
134
145
125
116
96
139
136
121
169
82
84
113
74
120
195
169
131
106
106
69
82
121
147
95
155
98
108
157
82
103
87
108
81
143
131
116
139
99
104
130
77
74
134
94
82
146
113
100
85
106
194
125
122
153
129
140
112
144
83
128
101
129
160
103
135
95
164
122
103
95
149
142
113
125
89
102
105
114
98
90
139
159
143
131
150
78
96
100
142
49
138
126
49
94
133
107
124
144
104
146
74
80
146
106
112
132
95
131
77
100
81
138
113
127
87
192
141
148
125
137
106
79
93
77
116
143
127
144
122
131
108
128
167
123
101
133
105
139
85
120
67
93
133
81
120
102
110
148
133
149
126
103
140
129
164
99
132
74
131
80
131
172
127
115
140
67
110
132
139
168
94
116
142
119
122
158
82
153
83
124
157
81
144
149
148
93
114
87
110
103
135
107
132
54
77
128
54
81
100
96
116
115
135
148
73
115
148
109
115
103
98
142
148
110
59
146
102
148
102
85
91
112
73
90
135
128
82
100
153
108
83
133
115
124
158
148
54
126
91
125
104
91
102
129
103
93
118
84
93
177
87
86
74
87
177
103
165
145
144
106
90
113
96
76
115
120
74
113
54
124
54
158
54
91
115
102
125
99
54
87
126
149
125
113
83
78
54
112
95
189
87
59
103
134
133
167
54
142
120
113
93
127
132
67
87
54
107
162
98
95
54
103
95
125
142
123
123
61
104
54
76
169
102
102
68
133
105
126
104
107
127
151
114
87
74
154
94
106
145
129
102
149
93
121
128
153
126
195
163
121
113
155
87
156
82
102
239
54
87
87
109
133
135
105
107
102
137
148
82
162
158
102
182
90
108
83
102
54
98
91
86
136
100
148
119
125
118
88
87
104
102
111
94
93
68
119
125
125
181
91
84
85
150
108
54
135
148
101
117
87
216
143
126
74
102
94
120
114
85
133
106
125
68
98
106
103
95
54
54
173
122
145
98
90
90
165
129
140
96
152
144
149
118
122
78
127
105
108
115
81
98
120
108
102
99
135
182
59
129
68
117
88
165
107
112
121
120
131
131
107
92
144
93
140
127
102
85
89
81
107
121
128
125
77
103
108
90
74
54
161
141
54
115
131
142
130
119
118
99
49
127
130
80
154
124
140
103
81
93
95
128
49
135
100
76
124
91
90
117
115
121
102
108
108
96
129
118
95
100
122
54
107
161
154
108
49
112
87
91
114
140
73
103
102
69
152
138
98
126
118
139
128
105
76
125
158
79
110
49
119
112
160
140
141
112
159
102
86
67
139
117
109
107
106
127
147
107
126
137
176
120
143
103
167
81
83
67
126
144
147
78
127
80
108
130
109
168
109
54
97
164
123
96
101
71
77
54
107
77
98
128
147
131
88
115
102
125
119
128
128
108
98
124
54
96
138
124
148
100
98
123
68
54
98
98
98
92
138
177
114
128
108
92
132
135
112
175
76
87
97
101
122
148
81
131
182
116
156
113
111
150
114
128
95
78
131
107
108
67
119
126
90
123
54
160
129
102
153
90
54
88
116
116
93
128
159
106
116
82
98
95
85
81
100
137
106
77
144
127
124
91
154
139
105
200
95
120
95
87
120
108
154
129
97
105
87
111
143
126
118
180
103
83
144
116
54
93
134
99
106
158
143
68
114
78
125
157
113
104
138
117
76
112
95
90
134
88
103
49
140
106
79
145
125
105
108
173
145
109
87
122
98
114
153
96
125
111
133
149
168
106
122
87
99
108
116
105
125
83
133
95
168
104
118
152
171
117
144
54
90
107
54
95
167
109
108
126
82
174
131
151
134
109
106
76
110
103
115
129
110
76
127
132
107
74
146
108
163
93
143
104
107
115
101
143
59
85
93
108
167
81
67
98
96
89
149
122
90
121
99
158
80
132
54
157
67
107
134
54
119
135
145
76
81
145
92
65
141
85
119
133
82
193
73
102
98
107
114
127
161
108
104
67
157
105
113
54
90
125
106
84
54
113
103
97
145
131
180
115
161
105
95
108
118
129
120
102
113
90
154
108
133
178
90
139
102
95
81
76
157
139
54
84
106
105
146
117
83
129
111
107
80
95
102
109
98
158
107
176
105
97
116
145
99
77
95
147
115
54
125
95
132
149
154
102
108
82
114
152
113
128
135
119
159
157
110
87
85
129
102
127
90
162
141
92
108
109
90
76
98
96
92
148
102
106
95
189
121
159
92
54
54
98
54
98
119
98
124
90
91
134
108
139
153
67
117
96
139
98
81
73
90
136
54
124
128
118
122
127
116
119
110
153
158
137
147
125
114
150
138
78
172
90
133
49
98
147
145
139
107
122
54
98
134
96
109
101
148
133
85
116
104
132
102
102
130
161
54
95
108
85
108
67
104
123
98
77
135
139
76
154
76
110
94
96
139
120
100
148
100
157
54
95
128
151
118
125
93
126
112
102
81
171
154
124
153
85
83
144
130
59
127
88
59
105
138
161
129
93
97
90
144
95
59
114
104
106
103
110
103
146
106
98
95
114
70
94
102
115
129
88
98
81
122
179
105
102
90
118
172
103
109
54
99
134
95
121
109
180
101
54
123
133
127
49
142
128
54
93
95
96
102
100
145
94
105
98
122
74
106
116
82
113
82
151
97
114
101
177
123
110
175
130
123
148
98
106
61
108
87
153
105
173
108
134
128
132
97
91
59
191
156
108
123
119
87
108
145
82
133
108
138
87
125
112
89
75
114
54
106
54
113
145
106
74
96
146
137
144
80
54
134
59
97
129
134
108
89
118
179
90
150
112
120
103
180
156
94
108
116
103
99
76
95
84
143
128
78
125
170
168
98
108
100
123
135
49
134
129
115
124
142
81
119
116
145
45
102
150
124
163
67
108
131
98
108
148
113
158
106
103
103
149
122
112
139
120
103
163
101
153
115
67
54
133
74
178
151
160
49
135
95
163
81
91
127
138
155
146
177
95
148
54
234
139
86
95
154
74
159
135
144
67
109
129
127
110
98
106
106
95
102
99
109
69
107
105
138
128
133
149
155
109
127
144
98
61
139
128
95
113
106
140
125
77
107
98
127
110
128
135
67
148
104
90
114
108
158
54
122
95
89
119
165
98
143
108
106
96
119
96
87
194
54
59
90
156
107
93
98
106
95
108
74
73
102
164
123
116
90
143
155
140
136
59
112
127
133
117
121
111
84
127
114
191
140
144
113
148
139
98
160
123
83
105
112
175
141
137
99
158
106
98
108
143
123
114
108
82
125
143
107
140
78
182
115
118
103
120
125
125
93
143
118
110
139
98
67
93
113
144
68
190
140
95
99
105
107
102
97
102
122
131
165
59
111
95
104
139
113
143
119
108
133
95
159
166
100
103
107
157
93
137
98
61
133
87
158
144
73
120
118
148
101
93
103
152
106
95
91
161
156
123
106
80
148
111
106
54
212
162
90
49
119
131
128
105
143
93
77
148
98
101
128
123
110
127
81
116
127
128
116
112
84
127
118
110
117
133
128
54
153
143
105
113
109
102
130
131
109
137
108
135
115
108
112
114
118
79
143
103
95
95
125
54
102
95
103
113
93
112
160
74
143
99
139
108
123
54
95
125
127
142
134
98
87
49
114
85
100
98
155
116
140
117
140
81
81
175
115
129
139
49
92
119
102
118
138
152
116
98
129
54
126
98
133
76
117
89
118
84
127
68
131
98
78
110
102
115
129
140
93
149
143
80
133
95
100
93
173
110
112
86
101
97
156
128
149
77
95
148
131
106
95
127
133
117
98
81
148
74
91
143
218
95
95
217
128
96
98
95
136
98
167
149
108
134
54
80
101
177
83
145
81
105
96
148
151
108
54
143
112
97
130
109
170
165
59
103
118
101
81
86
102
102
100
160
183
121
80
54
170
107
135
117
106
134
114
130
94
49
104
124
77
112
96
76
108
154
103
113
125
106
95
157
120
68
107
132
162
87
119
104
118
105
82
98
83
96
148
54
114
133
108
148
108
157
113
106
83
157
100
123
137
112
104
95
80
92
74
74
145
93
122
132
108
123
104
167
112
133
129
160
148
186
67
82
95
90
94
155
101
95
148
162
121
160
107
54
103
188
107
61
205
124
97
108
142
159
156
131
149
117
137
133
135
164
149
138
99
121
49
102
67
98
115
186
129
161
125
120
102
155
59
82
81
128
90
197
102
112
78
95
108
134
117
172
85
78
106
90
159
119
113
158
108
103
104
131
54
156
125
123
105
144
108
59
113
61
140
148
118
105
140
89
104
132
159
88
105
144
98
98
96
127
186
135
69
74
77
134
132
90
123
168
87
162
115
149
86
107
90
145
125
97
98
54
133
110
114
91
128
93
99
106
111
157
113
80
134
80
85
74
160
159
149
161
108
54
126
144
138
54
125
74
99
132
101
101
98
95
95
156
144
119
76
80
123
111
132
132
135
128
54
119
77
75
102
103
97
140
108
106
107
74
133
93
143
76
135
153
80
178
49
115
150
102
164
123
90
112
103
67
177
150
81
122
148
67
103
140
90
113
116
139
138
144
87
188
95
98
82
97
121
96
141
107
137
112
118
109
96
103
84
67
103
103
187
59
77
113
98
156
102
98
134
115
171
108
139
92
108
134
119
111
102
133
133
98
54
145
98
98
108
49
116
137
132
114
107
129
108
146
138
92
94
126
67
108
108
85
95
164
99
157
136
149
76
139
115
102
78
114
123
78
160
143
54
112
144
114
83
79
124
88
125
88
78
118
120
101
159
98
123
83
74
108
121
151
130
110
144
113
129
206
107
102
115
106
165
107
127
109
125
84
92
125
163
127
161
128
85
142
103
98
147
118
145
172
74
142
93
105
96
93
105
115
133
103
74
74
151
148
91
165
78
121
150
131
138
94
143
89
98
138
81
49
150
130
122
119
104
102
130
97
83
131
115
142
153
98
161
105
112
148
153
169
107
98
156
123
108
111
107
104
49
100
165
130
137
104
142
79
54
135
119
120
88
102
133
93
95
208
158
127
125
108
54
77
76
109
121
113
95
106
123
105
117
125
100
80
104
116
168
112
61
81
97
49
84
116
113
105
125
113
98
92
101
120
77
113
105
113
76
93
76
54
87
144
99
102
151
110
102
96
131
106
116
134
141
102
107
147
112
180
125
108
104
163
136
139
97
119
121
124
140
116
106
81
54
95
107
78
120
49
80
117
68
150
68
61
164
59
86
168
94
98
98
54
106
128
87
151
101
139
133
100
126
111
143
134
118
122
113
95
54
120
131
148
125
133
123
139
128
80
122
136
107
158
135
105
168
85
77
120
87
102
82
145
136
145
113
98
74
96
88
104
74
103
154
81
98
158
96
98
188
78
114
92
98
54
114
125
144
143
133
140
116
108
120
104
103
92
145
129
77
122
127
98
74
101
125
147
121
106
114
105
148
121
113
104
106
78
107
145
95
125
212
95
114
146
135
108
177
115
49
141
59
155
147
78
85
154
148
148
110
121
183
98
107
146
148
98
142
104
103
124
76
80
149
166
84
97
65
96
145
89
99
74
108
108
116
124
121
108
98
121
107
144
97
148
125
83
59
173
104
80
117
128
93
124
177
94
90
54
146
67
96
93
128
111
78
154
135
95
122
97
122
140
105
85
188
116
102
54
97
132
133
102
96
176
78
104
54
98
115
93
108
126
96
112
98
145
72
122
93
149
122
54
125
168
127
112
108
125
100
131
102
103
156
121
135
129
129
90
49
167
124
119
154
166
128
169
83
106
132
86
123
128
161
145
141
126
54
105
123
117
192
103
158
194
68
141
108
90
134
149
139
69
134
137
120
97
98
143
160
154
113
125
139
120
158
85
160
98
110
148
54
148
140
96
94
111
107
81
89
105
153
108
164
129
68
81
129
128
105
118
109
156
94
161
114
118
61
88
190
116
167
90
98
98
88
97
81
77
54
134
135
113
69
69
91
130
120
114
168
94
164
59
97
81
112
92
112
103
177
108
122
97
130
111
162
108
102
144
102
124
74
112
94
125
83
80
121
87
83
87
98
102
159
115
82
112
96
81
143
94
108
108
101
140
147
81
165
107
80
142
158
102
54
122
102
108
103
145
135
138
59
119
87
123
102
98
148
116
132
132
116
118
49
111
143
123
120
131
54
110
91
93
123
108
91
145
135
114
77
54
90
125
49
98
91
182
97
148
95
102
86
95
132
102
133
133
96
117
93
93
172
92
160
131
97
109
86
54
115
95
134
154
98
97
49
120
124
89
108
169
107
113
119
155
116
98
156
98
154
134
143
144
64
134
81
128
144
107
127
98
86
92
111
61
143
157
144
179
93
131
212
93
102
130
140
139
108
54
147
69
133
96
125
93
108
54
128
123
97
108
112
59
96
95
128
164
91
123
127
128
108
111
124
124
124
81
129
143
116
106
135
149
103
141
68
99
133
101
125
102
238
67
74
114
90
150
98
127
81
98
148
143
54
105
101
124
49
156
183
140
96
59
98
118
137
165
144
142
127
141
105
107
126
102
138
69
120
113
96
146
89
107
155
129
90
128
108
82
87
133
155
90
87
169
148
76
135
102
87
128
109
125
169
147
98
85
137
77
142
98
122
168
177
102
191
149
76
111
154
113
105
175
137
97
95
129
125
151
122
127
118
68
105
135
130
96
135
129
98
102
127
54
128
147
128
74
127
137
98
61
100
130
80
108
118
96
90
122
101
131
101
172
125
113
131
132
120
103
129
90
119
95
104
176
94
158
92
74
190
83
143
133
138
93
155
108
127
139
105
112
91
152
59
96
106
121
138
126
91
169
135
94
130
90
106
147
145
110
133
94
59
125
84
90
148
163
45
110
95
108
91
104
101
103
102
112
81
148
144
78
84
113
162
124
111
157
92
147
120
176
98
95
106
117
121
137
131
88
117
111
99
119
49
137
54
103
76
152
147
135
114
142
107
105
93
107
107
54
158
160
81
85
180
105
95
81
103
159
91
91
146
99
80
128
185
132
112
89
87
83
126
127
184
87
134
122
61
148
113
85
138
117
97
82
137
141
68
74
68
83
160
87
95
150
99
151
149
82
150
128
150
108
122
131
149
87
128
135
129
96
126
87
79
98
95
138
127
106
158
113
97
125
155
186
104
104
59
54
91
83
146
54
199
164
191
100
77
119
106
95
108
130
87
129
102
69
54
118
75
83
134
104
112
145
49
115
82
136
117
125
98
143
106
90
123
98
128
113
98
80
159
134
109
112
124
92
156
97
177
139
185
145
118
95
102
82
110
159
130
109
101
59
135
118
49
94
102
136
54
129
110
147
115
49
87
81
98
122
125
103
152
76
107
117
105
129
114
113
102
177
127
118
148
161
68
54
153
81
103
128
54
100
90
149
154
155
83
134
94
138
94
136
145
54
116
101
126
114
128
155
149
98
120
177
92
54
106
199
95
148
132
108
98
158
118
114
73
80
118
108
108
54
140
158
95
108
108
88
54
148
147
148
107
141
87
76
90
107
127
128
122
92
98
185
135
150
122
90
95
90
93
114
168
95
132
181
113
160
94
82
109
106
125
123
127
143
132
114
131
146
80
82
76
76
54
103
95
84
144
92
95
54
112
96
95
111
146
153
82
101
113
76
91
108
90
87
100
83
120
133
176
147
106
152
63
138
168
105
96
90
90
145
94
137
155
149
120
92
98
54
90
110
183
133
101
128
148
113
146
90
132
78
118
111
109
148
122
79
110
155
49
98
125
108
177
143
143
105
133
115
125
119
143
105
109
116
93
102
68
179
157
128
163
143
93
91
122
67
125
112
134
90
63
156
54
149
95
118
101
108
139
111
135
129
135
108
100
93
152
122
126
113
125
143
87
87
120
81
125
95
99
77
164
82
96
107
160
108
152
83
125
131
126
84
115
177
106
154
99
141
113
114
103
97
113
106
110
54
103
90
109
116
148
139
123
130
102
111
126
119
102
134
118
76
128
49
95
155
133
114
105
149
98
97
119
131
200
101
141
102
108
54
105
102
157
98
155
139
102
115
121
120
85
106
113
151
83
145
102
162
104
108
152
142
61
92
118
130
177
74
107
87
148
79
90
128
117
119
120
115
83
67
148
108
124
151
131
93
116
123
148
81
87
113
59
130
107
163
95
125
133
118
113
113
54
59
104
154
144
93
148
110
103
103
92
107
108
148
168
103
106
145
109
108
120
114
98
108
158
114
158
127
87
82
98
144
108
98
59
141
99
115
105
122
81
123
95
108
110
128
81
142
74
107
109
83
49
82
145
84
93
115
188
149
88
186
106
123
93
120
83
104
147
136
141
100
115
54
148
125
137
61
146
54
110
95
90
96
144
111
125
93
87
131
94
105
163
79
147
117
92
117
102
97
140
105
95
102
97
123
111
103
116
157
95
133
127
112
80
101
75
68
98
127
68
113
80
93
158
155
108
68
91
126
134
113
87
136
144
153
78
108
110
90
102
175
135
94
150
134
125
83
112
98
131
81
77
95
117
146
95
95
78
68
83
93
90
106
122
158
106
92
125
82
113
148
145
120
117
149
159
125
77
157
103
143
74
159
102
124
158
113
145
137
127
164
135
77
141
194
81
127
120
120
107
112
101
128
145
106
98
158
102
95
61
146
61
117
132
143
125
93
101
113
105
95
158
108
108
140
120
102
121
114
122
108
105
128
49
127
137
95
93
149
76
54
95
75
49
164
79
109
112
93
54
125
156
106
143
143
54
147
107
134
149
149
141
133
125
112
90
69
124
81
163
119
101
106
151
85
91
158
98
176
122
95
190
160
87
151
130
181
143
109
152
95
141
139
98
105
87
177
115
83
122
83
88
87
97
121
80
77
118
128
91
190
124
105
103
161
87
141
121
102
128
127
134
133
140
150
120
123
150
81
129
108
120
148
137
157
118
102
144
131
129
85
54
87
131
106
107
87
74
127
143
143
103
102
118
164
54
145
93
108
54
140
104
120
132
163
123
120
90
76
123
110
98
148
77
133
108
95
123
102
129
128
87
116
125
103
113
77
98
98
131
102
148
98
108
130
98
84
102
145
97
81
79
179
172
157
69
103
102
142
148
136
126
102
90
42
133
146
140
149
200
120
108
129
54
107
102
96
108
103
97
82
117
149
54
109
127
143
134
125
125
87
184
84
135
144
146
77
103
156
74
122
81
81
113
111
99
76
139
98
94
109
81
102
120
125
131
100
139
102
140
120
149
103
101
74
125
125
119
102
121
118
91
96
113
72
98
67
103
124
115
112
131
167
59
146
108
112
158
125
133
116
103
161
145
124
91
133
164
117
148
125
125
83
159
84
135
68
141
54
87
93
84
158
77
133
102
115
87
118
141
133
112
90
125
93
118
165
95
147
106
115
125
108
117
95
157
95
95
142
147
96
110
146
77
135
106
98
105
83
164
54
98
54
132
112
122
126
130
54
102
142
98
133
118
90
149
143
146
128
49
116
86
130
106
117
108
103
106
54
127
49
122
177
61
132
173
130
103
102
125
117
120
143
122
119
82
93
95
93
103
161
152
105
136
111
98
143
79
59
74
144
155
98
129
110
100
134
141
101
151
80
65
109
131
119
85
118
158
83
54
115
156
130
90
133
71
108
108
106
95
125
155
54
92
143
143
103
142
102
89
105
108
128
121
95
152
87
146
101
98
113
146
177
78
102
144
103
103
102
100
97
131
149
81
100
102
93
80
59
108
88
124
169
119
123
107
148
88
100
88
100
151
105
91
129
108
102
88
102
158
108
98
111
92
103
121
98
153
75
82
105
115
100
125
114
117
133
96
61
147
143
152
98
118
76
91
115
143
54
93
111
90
112
183
177
102
78
117
167
102
95
127
177
83
102
96
138
119
119
141
148
139
74
178
68
107
119
54
141
113
108
139
127
93
87
90
145
100
104
83
54
115
117
153
125
69
67
108
83
107
108
87
102
108
130
70
146
89
118
116
109
114
134
107
122
104
81
83
106
130
94
188
123
74
84
125
140
92
106
140
103
77
90
129
157
172
126
143
110
93
129
123
74
102
109
188
49
122
115
67
102
97
96
90
59
139
112
105
133
123
122
111
133
148
108
164
104
135
144
92
102
108
126
152
163
160
130
130
93
82
139
84
118
128
103
98
167
149
122
81
99
80
108
83
115
76
98
161
90
114
167
98
148
84
145
145
101
95
124
147
83
121
115
117
116
104
96
95
102
102
132
148
71
133
74
165
90
126
158
102
83
133
139
145
77
135
73
143
132
130
105
123
131
146
104
110
74
113
112
105
146
180
128
125
96
80
112
54
110
119
108
95
106
129
112
87
158
132
169
89
98
119
139
107
90
103
98
135
77
136
151
177
129
108
84
100
115
108
102
112
54
138
156
101
95
177
119
153
148
89
115
151
95
119
123
111
128
144
142
78
125
182
158
140
89
54
103
193
120
124
105
67
95
106
112
157
168
140
61
106
135
127
111
124
133
100
85
119
129
148
104
77
160
123
133
108
59
97
119
101
167
113
106
95
113
165
143
93
139
118
127
143
89
113
125
134
115
143
101
158
121
95
67
54
106
129
155
101
183
104
115
95
128
77
98
91
100
103
115
104
119
107
159
83
107
144
107
158
165
140
125
140
96
169
111
105
90
81
140
148
113
192
103
136
103
188
100
104
107
198
108
113
161
133
177
127
54
129
87
133
85
117
103
118
100
87
119
94
54
106
116
110
143
92
123
88
106
78
135
116
114
116
135
81
91
175
113
54
151
131
121
147
124
143
103
158
102
135
131
80
102
90
120
122
135
108
89
71
69
54
144
125
185
100
113
117
87
145
132
95
142
133
173
49
105
102
117
114
125
95
130
124
107
116
93
76
110
149
104
97
106
163
158
131
148
170
132
125
79
59
144
87
71
109
77
98
113
98
81
117
103
101
100
102
95
113
105
111
93
127
87
119
132
123
95
115
95
90
98
76
96
90
128
103
81
113
125
54
112
152
132
78
120
54
90
138
92
143
133
133
141
54
144
77
149
139
102
82
131
115
102
115
101
81
101
93
131
145
106
179
98
54
103
108
90
156
115
93
99
148
131
78
149
77
95
74
115
130
121
108
98
128
91
156
108
113
122
198
161
129
147
153
110
156
96
113
113
139
98
157
151
122
103
90
161
67
163
88
54
178
146
105
67
77
112
54
108
115
129
96
115
85
95
87
141
98
78
116
92
98
148
61
114
164
139
146
83
103
91
113
108
152
54
124
61
90
122
116
90
187
157
171
107
207
141
113
99
133
179
82
106
135
81
186
114
143
85
144
148
108
120
107
105
109
90
131
160
126
81
158
153
103
104
145
101
94
54
145
117
95
103
124
126
49
139
102
173
129
72
97
110
129
143
105
111
165
105
116
54
95
118
102
118
106
234
89
98
139
146
148
103
163
129
117
113
101
90
127
129
113
140
146
82
150
101
81
139
98
160
137
111
119
123
73
102
98
105
102
146
122
196
129
119
122
112
142
127
90
153
54
108
99
93
105
166
102
111
118
129
142
105
129
102
105
110
134
89
116
131
143
81
120
120
121
85
124
69
111
98
130
81
74
72
128
173
115
141
167
117
96
147
119
98
107
67
81
132
85
148
76
131
99
177
123
108
130
145
148
116
134
161
144
126
93
125
122
108
123
142
116
101
129
78
85
153
73
85
110
144
74
102
133
49
108
94
148
135
125
173
115
82
156
90
102
121
144
103
143
108
54
122
87
126
120
73
96
117
126
121
95
69
108
148
110
83
158
132
106
108
91
149
154
129
111
81
88
118
162
112
84
143
76
54
54
127
107
108
82
114
120
143
170
49
85
154
108
94
128
97
145
87
102
143
127
108
139
108
125
107
78
95
154
133
120
109
83
124
160
102
97
147
76
61
95
156
145
89
152
145
81
102
115
147
142
125
119
108
155
123
93
108
76
135
113
49
141
67
104
103
95
108
108
149
114
78
114
139
135
90
85
126
105
84
102
133
90
149
99
89
95
81
157
113
105
118
102
143
163
146
108
76
67
112
54
102
98
153
104
95
113
119
95
116
81
61
92
87
102
99
106
147
103
99
81
67
77
74
117
148
120
137
122
104
155
69
147
59
156
176
79
128
145
117
92
102
98
93
125
85
95
151
163
165
168
126
97
125
67
81
54
90
93
143
74
140
138
108
81
104
98
102
123
82
102
118
156
156
115
87
54
148
121
103
103
98
93
113
116
93
124
144
141
130
104
69
133
188
91
83
118
125
95
108
160
145
105
173
76
106
91
160
177
96
54
97
168
127
118
77
54
95
115
106
76
125
54
98
177
77
103
99
131
130
125
151
107
49
102
59
139
80
113
133
134
90
134
88
54
119
117
116
135
83
160
125
74
98
200
49
110
90
102
118
74
135
125
143
123
99
128
159
90
83
132
108
144
81
108
67
133
143
149
88
120
147
82
85
123
144
131
80
102
118
85
143
95
163
172
131
76
148
102
113
118
107
121
92
85
111
122
89
103
112
122
98
103
87
101
119
127
147
134
112
59
131
98
91
117
101
98
142
128
91
98
123
96
114
108
159
49
116
107
154
54
109
54
146
113
175
115
82
95
121
91
82
124
110
54
89
105
123
95
118
129
54
76
114
109
118
110
54
140
49
130
113
146
87
115
88
114
119
133
108
98
125
117
131
142
91
94
68
105
123
135
54
124
95
72
141
143
154
161
108
139
87
118
135
154
102
116
141
90
129
129
123
97
90
113
153
112
138
89
119
97
106
93
133
95
139
102
129
98
159
122
59
93
133
125
104
158
151
133
173
97
78
106
89
114
172
109
136
49
137
81
113
132
68
105
150
122
103
143
190
115
54
118
132
82
114
127
93
54
171
95
80
119
161
94
74
86
106
112
135
108
105
74
59
67
158
68
109
54
113
127
122
105
77
113
74
143
200
100
135
153
122
117
139
127
165
81
59
103
117
151
75
114
94
128
130
131
147
145
102
54
155
74
128
54
129
130
137
125
83
121
93
94
102
143
103
153
111
67
131
101
131
103
140
137
95
145
158
119
113
93
157
145
177
146
146
111
76
102
74
121
156
102
107
77
112
118
145
205
120
150
81
112
146
122
97
177
99
126
109
80
103
54
102
95
83
54
112
128
121
127
133
149
49
132
100
103
135
98
122
145
147
119
135
78
135
145
81
83
107
114
142
82
49
95
112
100
122
98
87
115
112
82
54
96
161
98
135
119
115
95
130
184
157
108
98
94
118
150
108
136
102
106
133
141
153
107
154
108
97
119
120
133
108
96
83
102
102
115
98
116
120
82
96
83
114
137
160
128
127
97
120
155
110
95
116
107
180
152
139
67
130
108
116
92
139
85
120
105
84
76
157
95
84
129
81
139
171
135
179
91
121
86
157
194
97
149
133
54
136
133
54
133
153
107
127
133
113
92
227
143
95
118
132
124
87
93
93
91
76
132
106
77
90
144
126
153
114
95
126
131
49
126
125
54
117
123
116
59
175
139
125
100
95
133
49
168
139
73
147
105
127
108
177
132
177
146
125
105
130
49
90
74
125
102
98
63
109
59
133
126
96
145
123
103
108
133
109
102
135
101
182
67
90
110
102
69
147
125
133
117
123
148
154
90
74
103
145
141
101
128
189
120
77
115
87
54
122
125
129
128
59
129
81
77
153
115
73
167
130
162
96
90
118
105
117
140
99
107
102
97
102
90
82
114
173
113
108
126
115
155
76
98
84
85
68
59
108
105
180
122
118
112
129
117
127
118
113
80
98
93
106
90
140
147
94
106
112
131
75
129
76
108
85
156
77
119
102
193
72
110
72
122
108
169
122
128
96
100
98
110
91
118
108
166
124
108
76
90
124
152
101
106
83
69
81
102
62
80
110
103
112
150
117
119
200
95
134
112
153
122
117
129
155
54
120
137
74
97
81
102
137
115
98
91
155
125
116
144
85
101
171
163
95
145
147
136
139
103
109
147
148
128
162
98
112
113
91
163
94
125
122
90
152
153
106
123
98
157
54
122
54
54
123
121
94
100
123
134
86
127
90
171
135
171
102
151
90
61
160
116
108
116
112
127
100
104
110
83
61
89
88
154
103
127
110
65
123
93
104
102
143
177
108
54
118
110
108
114
108
97
152
122
111
128
129
131
49
122
158
106
120
59
140
98
102
54
133
91
115
138
167
93
124
83
83
78
144
95
159
98
140
102
102
102
127
117
154
125
102
167
98
145
156
177
88
96
95
140
148
132
95
91
108
131
78
128
216
194
61
67
141
92
104
111
112
108
121
103
119
93
124
77
49
149
128
111
97
112
87
123
144
148
105
131
87
125
83
141
148
111
78
116
145
121
106
98
110
80
167
142
109
143
138
89
106
109
105
140
76
127
83
133
87
106
71
87
85
131
117
106
79
87
120
107
107
122
121
124
107
104
145
124
93
131
128
149
146
102
120
125
154
113
129
88
112
166
123
111
107
104
102
114
140
132
133
93
76
103
102
102
104
133
84
179
96
99
132
85
131
78
112
109
108
81
137
113
125
144
91
49
133
160
102
136
119
143
120
112
121
144
74
139
92
122
54
99
94
118
188
148
133
115
100
116
49
145
108
92
188
115
125
143
95
163
108
118
94
108
103
86
54
120
129
81
163
144
133
85
95
77
128
107
138
49
133
78
140
93
90
108
141
93
105
82
92
118
180
92
78
78
76
99
107
102
148
108
67
49
130
101
114
158
108
120
95
113
158
110
154
128
131
108
108
94
54
147
106
146
111
153
95
90
87
146
109
162
104
115
74
122
59
97
151
116
154
78
135
130
141
80
104
139
93
126
108
125
77
155
134
81
87
102
126
112
175
132
131
110
148
54
100
82
125
114
108
59
163
122
128
95
85
133
80
177
154
106
168
95
105
131
125
54
89
172
112
124
118
82
96
127
49
75
93
119
153
86
114
95
77
128
86
98
76
89
129
83
143
98
119
113
124
81
112
115
90
96
98
159
151
106
141
112
99
83
130
107
106
49
102
132
156
89
138
165
129
130
108
96
74
177
125
140
103
94
125
145
96
135
115
153
103
124
87
135
108
85
120
112
49
127
135
59
97
118
54
106
79
95
116
135
73
54
82
126
121
84
95
149
134
96
106
95
93
159
76
191
123
65
159
102
83
76
103
125
123
61
91
100
77
113
131
115
133
90
102
118
116
84
143
115
54
128
79
173
116
107
148
96
137
140
67
49
110
85
135
76
200
135
177
138
125
108
133
146
85
82
148
85
129
140
129
111
108
161
125
135
145
96
83
90
131
59
90
82
128
104
98
103
107
122
132
84
177
73
95
113
117
135
109
87
91
103
108
140
59
108
121
112
90
177
172
111
118
106
123
140
97
139
105
74
151
90
87
144
92
97
87
103
127
163
150
117
98
109
139
142
69
128
67
153
125
118
102
151
122
137
127
114
133
123
78
105
125
135
116
101
168
128
120
109
141
54
103
128
128
150
81
129
54
94
77
94
124
191
115
127
105
68
119
111
98
82
95
124
82
102
77
128
95
138
133
45
83
163
113
107
215
145
186
128
97
118
126
102
102
150
97
100
179
77
124
128
119
76
118
102
90
102
102
61
134
151
111
98
115
98
104
143
129
181
97
141
54
93
76
126
108
89
148
134
119
115
144
160
95
167
127
81
93
107
102
117
115
107
98
106
103
125
97
85
154
102
109
102
80
113
93
131
126
76
142
112
125
163
94
163
124
98
108
118
102
140
113
103
85
97
106
73
167
131
146
119
140
165
153
125
116
150
125
145
59
132
165
82
54
97
159
112
169
87
100
110
112
112
111
116
105
135
106
96
73
103
135
157
86
106
95
69
130
102
91
101
120
129
92
102
129
102
125
134
166
81
101
114
145
120
97
138
97
108
124
125
80
54
95
120
137
94
146
108
143
91
98
107
49
113
141
90
82
95
93
139
80
115
98
126
108
111
92
151
75
175
115
138
122
102
118
112
76
108
123
92
120
90
113
108
103
99
131
77
79
84
94
95
113
102
114
125
59
98
105
80
90
154
81
119
142
125
104
84
59
148
126
109
91
131
113
125
59
95
141
97
108
122
103
108
98
95
186
123
104
125
82
102
108
54
85
82
81
179
89
98
117
129
191
123
89
140
142
137
125
91
162
162
133
132
108
116
95
89
96
100
138
111
112
161
108
109
77
108
141
127
77
88
97
148
120
169
131
138
95
119
101
110
102
105
112
200
107
87
108
121
172
151
54
82
137
54
91
150
145
105
158
125
174
149
80
115
73
165
147
129
161
102
104
76
154
132
54
83
111
82
54
134
138
81
69
137
49
103
102
141
107
107
103
116
125
139
83
118
90
123
143
161
177
146
193
140
133
137
129
91
150
103
99
142
108
108
105
124
114
95
103
155
99
116
146
80
131
141
113
138
146
123
135
176
49
69
77
85
141
113
133
95
156
132
102
135
130
117
177
105
125
146
126
104
105
127
130
81
59
169
165
144
104
97
124
96
113
59
61
106
98
153
95
82
100
82
120
169
122
191
131
87
131
67
96
103
120
69
131
67
90
133
158
143
115
93
158
134
67
134
131
154
93
127
124
128
136
78
118
115
103
108
129
94
95
77
108
74
121
130
87
125
67
141
116
163
128
124
156
95
125
54
92
144
108
102
93
111
128
115
174
113
128
137
122
181
106
120
148
156
112
102
147
79
121
200
139
112
67
133
170
129
177
116
98
112
175
103
108
113
85
116
135
111
67
117
145
108
110
112
103
167
133
140
115
140
95
109
88
120
103
92
136
84
111
54
157
146
98
98
130
74
129
156
102
76
87
49
116
101
49
73
90
54
84
108
102
116
107
90
182
49
125
111
125
98
163
133
124
120
186
104
98
157
112
94
65
120
54
137
103
113
101
143
71
149
61
102
128
102
74
107
97
100
113
123
163
124
74
107
115
161
132
93
151
107
110
102
95
125
82
112
129
119
49
109
84
165
167
120
115
180
54
103
125
144
106
164
149
80
143
67
102
101
118
142
95
126
81
134
139
129
163
138
115
167
113
168
113
85
82
108
98
149
87
107
125
127
146
107
180
116
147
87
120
93
59
74
145
94
158
125
127
128
127
143
87
114
102
49
135
139
115
118
141
101
95
148
139
54
140
133
122
114
87
103
110
146
119
148
145
102
129
108
98
145
103
135
85
98
106
123
108
102
124
194
143
150
98
100
105
98
116
124
144
171
123
143
151
129
116
113
87
123
95
49
120
131
82
118
133
131
138
87
123
100
103
128
179
161
102
78
102
139
131
101
139
173
116
162
123
103
82
120
96
95
107
74
54
104
130
74
67
112
76
116
74
112
135
147
117
79
157
79
63
158
112
105
54
120
143
103
103
132
93
146
180
134
82
142
136
112
95
102
54
127
91
61
93
142
100
133
129
87
148
81
132
73
108
100
146
94
113
120
95
130
131
135
76
120
102
91
163
111
110
82
148
96
103
80
105
49
100
131
131
128
133
85
139
138
187
90
108
127
124
95
157
54
144
76
142
107
49
102
110
90
139
112
191
98
108
54
112
126
49
105
54
99
85
98
97
151
148
125
76
108
165
160
147
95
82
116
146
59
82
101
93
76
87
161
105
54
125
118
144
108
127
98
156
131
87
143
136
123
133
98
98
97
93
111
127
95
159
102
116
143
123
139
108
97
132
76
87
131
74
135
112
97
128
96
156
149
101
81
159
83
117
107
108
132
103
81
143
148
133
108
110
163
108
143
109
78
136
106
196
108
136
74
49
61
125
97
166
129
144
118
125
143
101
116
61
125
136
96
74
98
140
148
142
108
115
135
132
175
87
146
108
102
107
154
135
145
163
129
141
128
133
117
158
107
175
108
116
83
77
163
102
161
143
121
102
115
104
123
145
61
102
74
78
147
124
59
98
118
74
124
144
148
90
174
100
119
147
135
83
125
81
124
68
69
95
166
78
128
109
120
148
79
103
150
98
124
76
125
118
74
74
145
111
102
77
105
108
143
138
98
108
101
158
79
167
130
120
59
144
103
65
95
156
101
106
108
81
174
99
104
108
102
120
101
87
91
111
158
124
76
95
162
100
106
112
98
141
133
49
119
114
54
156
95
95
120
142
99
80
74
74
126
115
54
113
122
139
141
128
83
94
154
110
94
137
97
93
96
144
96
116
118
102
148
85
80
130
80
54
102
103
114
118
90
125
137
172
158
113
77
77
108
77
90
59
59
140
77
147
134
92
70
140
127
135
97
158
149
139
111
145
162
79
140
74
54
81
108
96
132
153
96
90
98
141
129
129
147
59
67
99
190
110
161
59
95
85
54
98
54
81
78
95
135
54
98
82
128
124
165
114
113
59
87
143
49
142
127
86
150
105
54
81
106
80
171
95
79
124
153
95
102
111
54
54
95
116
90
87
73
134
98
143
86
108
108
133
124
131
82
110
131
133
155
74
148
106
162
107
149
99
104
102
118
113
81
96
106
124
132
81
131
102
102
161
54
110
134
103
110
106
189
98
126
81
54
61
121
132
133
139
103
90
102
124
101
102
102
49
128
98
161
84
126
93
102
118
135
110
95
123
129
141
94
126
131
103
108
102
142
95
126
103
135
104
148
76
93
118
126
137
98
90
102
134
156
78
74
142
49
145
149
170
102
146
121
121
54
85
169
113
54
139
106
147
91
113
123
85
102
87
106
74
83
120
96
121
140
142
128
69
108
81
146
108
141
92
103
133
148
137
69
169
95
74
117
158
182
93
136
122
108
146
98
154
125
54
91
138
97
49
149
95
110
108
76
140
174
147
125
106
130
143
77
54
112
156
69
121
85
161
102
131
123
49
108
74
97
85
147
131
143
130
109
129
54
115
137
111
81
102
105
127
135
112
122
98
115
139
211
101
144
115
135
138
102
128
156
87
102
78
90
131
105
138
108
80
93
45
99
194
133
113
54
107
120
96
164
131
110
186
98
124
103
125
121
54
174
107
119
126
109
108
158
69
91
101
120
106
103
145
82
135
148
72
54
81
148
95
117
115
131
133
150
76
122
95
103
54
126
180
162
76
148
105
97
135
106
103
102
148
112
161
131
119
81
130
135
69
103
90
123
133
141
102
85
146
131
106
157
113
84
106
131
121
110
123
108
108
190
97
82
128
85
154
98
108
114
112
153
122
112
153
127
118
109
95
150
111
107
115
107
95
93
81
146
92
163
133
79
67
100
115
122
146
77
177
108
104
83
161
114
95
143
208
98
101
86
131
108
149
54
120
119
118
92
107
168
76
115
119
81
82
130
108
143
126
154
138
81
119
96
194
162
108
98
108
108
100
124
82
143
97
118
106
98
61
142
148
162
116
110
94
116
100
110
98
121
116
81
81
117
82
83
127
97
74
132
49
112
134
74
156
90
99
143
133
67
141
73
160
159
111
148
99
83
153
108
110
102
103
114
98
129
116
113
200
111
96
95
136
101
69
101
110
76
98
84
93
112
101
89
108
113
144
145
127
157
100
133
89
108
148
140
126
98
81
162
132
135
59
107
110
125
124
94
170
128
54
92
85
110
98
141
127
83
107
158
128
88
140
95
108
148
108
118
91
95
159
141
116
116
183
159
126
142
129
80
102
108
147
110
190
114
95
128
103
122
107
97
108
134
113
181
112
93
145
147
138
113
148
125
121
93
87
95
79
159
151
165
172
199
97
127
104
108
102
91
154
125
139
133
127
106
81
97
107
88
113
112
138
74
104
113
117
82
146
145
84
59
94
128
108
111
115
93
135
129
67
177
135
129
110
131
105
95
80
125
86
127
128
95
108
96
128
141
95
103
103
98
108
76
120
82
138
91
126
129
99
152
102
85
150
85
130
103
65
98
141
76
100
97
122
75
161
102
98
189
113
97
128
95
69
98
138
131
164
103
87
118
155
129
83
54
81
152
98
133
127
119
83
142
168
105
125
95
125
100
115
117
99
115
78
81
108
76
96
138
87
102
157
114
80
98
90
54
143
113
105
110
117
67
122
113
100
130
157
132
151
167
140
90
106
133
112
120
87
108
90
179
123
78
131
118
194
54
148
170
111
83
127
145
145
59
104
155
68
85
108
124
151
97
122
76
145
95
111
118
158
90
124
145
115
97
145
135
54
175
81
120
145
144
120
76
143
125
126
152
86
146
76
107
110
110
115
136
118
115
165
121
144
94
125
137
118
112
78
98
128
147
165
125
96
54
45
116
128
135
108
93
146
143
130
144
100
108
89
88
148
84
150
102
108
179
101
129
96
77
127
147
120
127
81
117
135
109
108
122
143
74
141
49
129
95
74
150
113
69
102
125
125
143
95
135
144
138
124
95
87
143
119
96
104
80
156
89
103
129
82
49
121
145
74
93
77
155
86
157
120
73
113
123
164
137
93
174
135
105
108
124
107
167
49
131
59
73
158
54
123
106
133
125
126
148
96
102
161
190
112
73
114
154
146
124
108
143
102
139
123
160
110
147
103
111
102
120
95
104
100
132
103
160
154
104
74
143
74
54
133
135
117
77
151
133
68
97
159
54
120
89
103
77
94
132
54
106
103
113
59
143
133
81
127
179
164
107
80
100
98
135
114
90
95
121
154
116
110
166
151
95
119
86
98
167
92
137
181
158
77
102
120
116
98
100
169
107
113
113
139
49
102
149
144
82
95
98
84
145
148
117
147
96
99
121
102
182
130
134
76
108
136
57
193
115
133
131
68
74
155
92
82
105
103
54
107
83
92
82
99
122
102
95
118
106
85
101
88
141
78
95
129
144
134
164
104
116
129
80
108
138
72
103
125
118
150
54
131
108
108
76
94
54
102
126
96
140
97
158
107
154
129
133
121
108
124
149
156
108
123
105
87
118
143
130
148
100
105
93
143
83
114
104
131
138
127
95
103
102
161
127
96
137
59
118
110
132
120
85
92
146
112
103
138
120
77
129
82
93
95
105
98
96
77
107
101
67
148
122
90
129
100
144
98
82
108
95
106
144
105
124
54
95
94
146
148
98
125
119
90
114
102
127
102
125
122
151
127
137
177
114
101
102
148
112
102
97
110
93
125
121
59
68
87
140
96
140
125
103
124
103
135
135
61
97
103
81
147
151
114
105
81
87
133
95
159
138
174
102
101
162
81
54
54
107
115
80
117
112
105
155
115
102
148
54
135
78
61
128
95
98
136
115
74
148
103
98
73
99
145
54
54
124
177
104
133
103
173
152
115
113
115
175
141
95
144
144
111
89
111
67
165
103
92
101
155
105
124
54
90
177
108
106
129
77
94
117
213
103
123
80
98
134
93
113
145
102
82
116
102
59
110
143
102
117
93
82
59
132
88
200
90
139
120
90
148
73
67
81
98
125
67
108
84
87
104
54
119
141
102
85
157
133
128
114
153
98
123
104
102
113
90
141
125
59
171
146
78
147
74
128
154
98
146
113
123
145
114
194
117
173
138
117
97
77
146
95
124
97
142
97
69
132
108
186
95
108
142
152
106
84
108
105
122
95
143
170
153
110
130
97
97
108
81
116
230
107
121
134
81
85
158
159
98
81
49
135
135
94
159
94
101
120
144
98
180
137
157
127
97
157
98
102
169
111
111
110
140
91
134
103
146
135
107
146
98
91
91
114
105
89
136
136
68
131
148
107
133
136
148
75
111
102
103
105
91
162
144
77
101
107
114
107
93
122
154
104
196
111
119
138
122
136
123
140
90
91
81
87
100
96
104
134
105
154
123
143
120
114
69
160
124
111
108
87
117
101
133
76
121
155
85
98
157
123
90
95
104
96
125
125
106
167
126
139
123
94
95
124
128
125
78
120
91
102
134
119
98
67
177
67
97
134
134
128
83
116
165
103
134
112
108
102
120
119
96
98
133
91
159
149
99
54
164
148
112
163
149
136
94
101
153
89
91
100
87
95
98
139
98
77
101
77
74
144
105
112
103
117
98
104
103
59
114
90
135
143
100
106
150
106
126
141
119
142
119
151
125
105
134
107
103
105
171
133
93
90
165
132
142
93
103
83
117
83
92
92
145
117
174
83
129
96
135
113
137
122
59
92
144
95
74
146
104
98
81
112
131
143
137
103
170
126
149
78
69
93
118
118
148
81
108
161
90
137
54
140
132
148
85
129
110
167
118
108
108
118
90
103
119
76
135
118
98
92
59
77
144
136
106
116
97
97
59
73
85
108
104
134
141
105
139
105
108
125
95
124
113
116
67
87
89
128
113
90
125
150
90
88
134
103
68
149
74
164
106
114
98
129
95
108
95
77
102
99
123
89
114
125
118
144
156
88
121
123
109
195
102
154
112
85
167
155
95
85
122
131
100
96
107
141
81
133
147
95
151
156
54
98
101
155
86
77
115
103
105
100
119
110
139
77
67
103
76
109
99
119
133
67
81
129
124
98
120
108
49
62
160
98
80
111
109
122
125
142
97
112
144
54
159
165
86
109
98
79
67
124
127
120
138
95
90
124
106
54
94
97
96
159
103
83
99
102
108
101
139
85
134
129
156
119
111
59
107
103
83
54
83
162
54
149
101
110
151
98
105
118
172
87
139
149
109
139
96
119
86
111
83
123
82
171
110
129
120
97
102
144
107
125
137
116
122
144
133
155
127
59
125
149
54
102
102
106
107
107
67
90
115
106
84
150
157
183
109
87
152
102
111
105
131
184
98
42
78
99
54
104
74
108
147
95
91
160
105
120
102
158
129
120
54
158
115
95
90
128
123
132
98
103
197
99
108
102
96
102
83
119
106
99
133
124
122
78
103
125
140
128
124
160
119
115
85
141
135
163
124
146
127
135
98
133
95
88
135
91
158
69
106
142
113
135
95
113
125
88
135
144
102
54
125
77
128
112
200
117
85
79
87
103
177
177
143
103
120
54
59
133
117
114
95
92
98
148
101
108
122
107
109
54
133
82
114
153
143
95
131
84
158
98
81
107
149
114
124
121
80
114
131
78
103
131
119
92
161
103
98
95
102
144
96
132
100
129
139
54
54
102
158
142
113
139
98
161
99
122
113
116
93
78
105
97
104
95
120
178
119
180
97
137
140
67
101
131
144
81
133
86
118
114
102
100
95
153
77
116
89
113
113
76
77
143
80
123
134
98
184
121
83
54
74
76
166
91
109
180
118
122
140
129
122
122
81
125
125
74
101
142
89
115
103
54
114
152
129
148
100
108
105
125
117
140
150
124
74
104
146
122
112
112
113
99
147
122
141
148
54
54
84
145
120
105
148
133
49
154
118
183
93
59
177
148
83
95
104
98
115
128
113
131
105
111
105
128
84
133
132
81
92
171
125
97
122
112
159
108
109
102
109
49
139
85
134
98
76
102
133
178
100
103
146
147
49
165
128
146
148
102
102
103
90
124
177
95
153
74
168
129
119
135
177
135
102
103
111
133
98
142
128
123
158
69
107
69
96
95
125
119
138
95
152
115
134
127
128
95
105
91
132
95
128
89
74
69
129
161
120
112
140
108
126
67
108
107
137
134
133
107
161
124
143
116
108
81
112
123
59
98
125
128
125
90
108
101
78
120
157
95
102
131
68
127
98
97
128
110
97
95
105
102
117
132
144
122
108
87
125
130
92
142
117
112
120
122
133
135
147
54
92
141
73
170
146
86
159
95
89
130
77
106
144
108
109
190
77
124
49
120
81
135
107
129
113
67
144
96
80
68
130
81
117
59
101
116
133
126
106
106
96
131
135
146
118
111
126
102
135
129
156
95
122
167
112
105
103
135
90
95
121
123
103
160
103
110
158
115
83
127
59
96
102
115
158
133
54
103
68
129
169
118
103
90
74
129
147
111
161
176
115
111
149
120
144
140
148
153
138
84
67
137
172
119
114
113
134
122
97
114
160
85
96
54
140
83
113
112
119
136
116
81
152
139
125
113
110
125
77
124
128
186
153
59
115
117
117
96
93
112
93
103
118
147
125
112
148
103
54
148
80
135
140
104
74
123
108
171
158
81
116
108
67
103
54
91
122
132
109
136
98
133
95
123
96
114
93
110
107
81
115
113
129
106
102
114
146
130
112
77
97
150
133
129
101
166
83
97
108
131
115
103
153
154
131
125
119
127
155
136
135
115
102
115
137
74
96
119
135
82
146
102
102
101
139
118
94
86
120
105
145
148
108
96
88
83
108
108
98
129
131
132
165
113
95
170
121
108
54
124
145
85
141
112
123
103
105
99
92
172
101
82
69
118
128
67
135
54
87
83
120
113
78
107
87
179
90
87
93
118
108
147
90
120
120
121
123
113
90
96
54
125
155
131
133
142
124
108
105
161
144
98
96
117
103
54
96
96
82
99
156
81
99
95
148
128
116
93
115
116
101
85
148
160
102
69
94
90
109
145
98
137
83
89
81
98
147
116
102
180
103
196
88
74
130
87
142
122
110
85
81
124
152
102
83
159
93
108
119
92
129
59
67
135
104
120
177
127
113
68
104
109
104
148
99
108
108
172
158
177
126
106
137
113
49
127
93
108
122
113
69
143
76
81
102
157
102
61
49
83
82
115
73
132
65
145
133
118
87
90
92
97
109
102
91
110
54
157
108
54
102
104
107
107
121
129
125
122
132
96
116
130
143
108
144
54
76
59
122
133
93
94
116
54
74
113
93
138
125
115
163
102
151
186
160
108
101
61
134
113
102
83
108
88
103
169
98
102
127
120
97
61
77
132
132
147
120
92
82
93
139
148
127
125
93
98
59
152
129
77
102
99
172
101
100
102
123
129
130
167
61
121
144
120
113
104
97
101
140
119
108
114
94
113
138
96
177
102
98
135
133
116
107
67
99
101
76
154
145
163
108
68
124
90
110
115
95
134
145
95
107
135
108
165
77
83
131
111
102
69
112
156
119
92
117
145
146
96
94
125
77
87
115
78
94
103
140
135
77
185
130
155
109
89
101
103
115
128
115
103
114
130
87
96
74
119
165
113
90
110
141
93
102
137
167
135
108
128
154
113
162
102
144
49
172
106
133
96
93
106
127
114
128
95
126
120
54
98
113
180
81
96
90
113
143
146
140
116
74
104
143
146
157
116
101
100
59
127
114
143
113
112
129
102
144
159
148
145
136
136
81
95
108
108
59
70
108
81
142
90
130
87
128
111
141
109
105
81
129
113
106
104
110
105
93
131
106
122
117
102
87
93
156
128
67
96
143
134
176
123
122
113
143
123
102
120
105
118
117
95
49
140
141
98
113
168
125
90
82
206
81
119
151
111
127
131
118
107
158
101
133
145
95
114
93
114
98
107
116
82
102
146
128
108
158
133
89
87
115
95
108
120
95
125
118
125
135
125
93
83
88
182
141
70
108
113
100
109
85
134
147
168
108
149
90
135
113
89
140
142
145
116
135
109
142
118
180
116
129
93
147
108
140
158
138
122
96
193
131
116
68
78
102
81
121
206
116
151
102
144
105
116
150
103
136
123
121
128
93
103
109
128
150
54
108
125
54
74
82
121
163
133
116
130
113
129
108
150
131
77
145
84
97
138
123
113
125
115
108
104
79
163
129
72
97
206
99
123
70
107
98
134
81
91
109
103
124
187
133
108
95
106
107
76
61
131
100
149
67
113
104
74
98
81
108
177
54
98
198
125
122
138
145
98
134
160
134
158
116
99
87
128
94
120
102
135
147
100
54
67
112
97
163
78
144
93
101
178
98
144
81
93
82
148
110
127
96
132
131
119
100
170
54
114
133
199
107
97
98
89
95
112
99
105
144
96
95
120
118
133
122
151
153
91
140
121
116
112
107
120
160
102
128
108
76
98
87
81
162
54
117
141
143
101
92
147
84
134
120
120
88
134
87
136
131
146
96
54
135
115
85
153
116
106
153
122
108
95
177
107
113
118
144
138
146
102
107
130
123
77
160
81
90
134
121
102
105
171
110
159
139
54
133
115
120
95
113
120
49
148
102
103
120
81
130
85
130
97
134
154
156
108
67
124
77
109
128
98
49
177
122
148
90
127
123
92
105
100
133
105
156
118
93
102
78
136
99
199
155
102
113
113
97
98
49
104
77
111
100
101
150
70
155
156
54
77
224
117
102
104
96
99
92
139
135
120
124
161
100
102
143
145
68
124
107
101
109
176
123
110
91
93
106
137
133
187
108
161
157
99
145
82
91
93
89
73
123
132
81
83
118
131
114
123
128
137
96
102
108
137
141
128
83
99
185
97
128
167
162
95
49
79
149
142
116
108
140
102
105
103
114
121
103
104
81
107
146
87
87
110
157
71
54
182
125
139
140
54
124
108
59
159
113
106
87
74
111
77
133
87
103
132
54
103
113
96
102
191
200
152
125
129
103
98
84
107
105
145
107
148
83
134
177
79
132
105
96
113
148
145
128
147
108
124
128
91
106
103
86
177
113
105
102
95
126
84
138
116
91
102
135
119
105
98
137
143
76
98
119
115
78
101
132
134
160
122
99
85
178
132
148
118
162
154
156
165
77
90
85
106
95
87
94
74
138
116
108
54
101
121
102
115
79
81
112
102
134
127
125
90
96
108
98
96
144
182
91
101
102
114
128
106
100
133
133
61
131
77
119
87
82
128
127
87
156
145
98
78
118
125
150
165
143
74
119
102
90
108
147
143
95
149
125
95
88
125
74
110
139
76
54
127
54
102
118
111
103
161
92
95
126
150
129
92
61
128
108
138
129
129
124
121
87
129
99
74
177
102
103
49
87
98
127
54
91
120
160
126
137
108
129
115
107
117
148
154
153
125
97
116
194
166
102
92
54
104
132
145
91
129
102
76
102
125
108
125
109
146
83
81
145
94
84
182
135
122
103
98
83
148
130
113
95
151
133
144
124
98
144
139
115
133
49
125
142
128
157
126
54
143
81
54
160
139
200
81
107
135
95
140
90
102
149
110
82
141
112
143
89
158
54
131
107
120
87
140
108
140
108
148
94
115
103
135
54
162
108
160
131
117
81
137
139
148
112
151
142
131
171
162
141
92
73
59
98
111
167
95
144
127
81
105
81
214
158
108
124
102
49
131
115
104
143
91
137
177
130
170
108
127
153
67
147
118
80
162
97
49
80
107
170
112
67
123
131
158
172
123
78
152
144
160
107
160
98
103
133
189
135
131
110
167
95
182
89
133
106
148
101
76
70
104
112
121
130
119
106
105
90
110
113
185
98
54
106
90
105
107
67
109
153
133
97
54
80
104
110
123
76
120
95
91
102
129
134
138
150
92
164
144
118
128
124
220
74
54
103
74
102
168
102
131
102
54
96
114
108
111
98
54
107
111
120
163
133
54
124
79
77
143
122
104
122
163
112
124
103
107
105
94
67
227
90
54
118
134
67
137
148
104
90
159
76
105
123
116
69
105
93
100
77
131
158
197
68
108
152
108
103
126
154
84
100
132
81
124
54
54
96
107
86
143
133
158
92
134
142
146
105
138
102
93
127
110
129
108
151
111
115
144
118
124
91
49
54
107
167
113
139
114
82
85
180
147
89
131
98
107
98
158
108
81
106
104
119
76
107
76
137
108
96
140
154
125
122
68
98
72
113
144
148
123
75
91
166
109
131
154
49
108
95
113
147
128
122
126
74
125
90
152
92
137
111
124
98
90
167
102
83
108
142
143
94
125
103
111
90
108
103
118
154
102
76
98
139
106
168
90
87
125
115
147
81
109
79
102
120
113
108
170
81
81
103
145
107
74
80
78
166
127
81
139
95
82
80
146
94
122
118
131
82
142
164
133
106
95
127
140
127
69
77
108
152
124
87
126
153
113
76
156
147
160
141
133
117
137
111
144
68
137
127
113
102
128
117
125
108
107
107
129
133
98
95
134
67
98
98
77
103
146
106
113
181
133
69
137
54
76
132
49
96
49
122
87
127
133
145
111
99
102
106
74
95
103
98
142
93
120
142
118
123
126
81
117
106
119
100
140
143
95
114
61
112
133
123
133
98
93
157
94
103
120
93
156
61
144
146
92
127
136
80
105
94
124
116
134
135
128
128
74
67
129
102
115
161
81
130
77
137
49
117
108
115
85
104
121
74
131
131
78
102
128
135
81
144
139
131
100
98
153
107
83
148
123
82
113
124
59
131
81
158
163
100
128
124
139
123
54
94
120
104
159
127
129
156
137
90
102
105
126
110
133
97
115
91
115
107
79
98
114
108
136
134
108
67
158
133
112
81
102
125
153
124
165
128
102
114
150
138
108
123
113
90
145
164
76
144
157
76
108
90
112
152
140
164
117
108
142
113
136
111
146
102
116
129
129
112
135
109
140
121
96
129
155
61
61
178
96
135
103
113
168
69
129
123
102
116
157
155
54
95
119
139
68
109
138
100
132
112
103
127
91
131
102
90
95
143
128
134
103
106
133
149
42
54
59
129
129
106
92
128
152
87
54
94
98
163
125
140
130
77
125
98
129
151
140
114
110
118
111
61
81
146
128
99
137
99
138
124
107
108
104
145
129
85
131
102
102
150
154
111
90
77
180
161
148
81
134
108
127
121
137
54
94
139
176
105
94
82
136
135
108
95
98
149
156
77
110
114
90
162
98
138
125
105
171
102
156
104
102
180
68
95
157
81
151
97
132
98
98
106
147
65
185
153
118
113
113
108
134
94
83
90
94
148
107
134
74
111
149
98
113
101
154
95
157
117
137
127
150
123
105
135
105
125
126
117
135
138
79
128
140
98
91
82
120
83
131
49
113
127
117
107
134
103
83
138
162
134
90
108
133
143
132
93
77
91
143
117
91
108
134
77
85
145
90
153
95
80
110
135
49
87
113
96
134
117
160
45
167
106
76
123
151
107
134
171
101
81
102
105
113
111
119
113
95
102
138
89
95
110
114
108
154
85
131
90
87
69
94
149
80
82
128
95
124
102
98
107
54
159
100
162
103
108
112
110
115
120
102
158
130
109
135
129
128
100
79
118
145
117
142
45
144
96
128
116
54
156
76
130
65
78
95
54
97
109
132
138
163
130
126
89
83
146
104
98
131
112
102
81
158
78
100
78
177
145
125
131
95
143
85
49
96
125
83
139
127
134
54
125
90
162
103
90
119
175
156
135
92
112
161
157
177
167
95
72
89
145
98
119
103
153
106
162
101
112
105
90
139
98
54
115
186
143
142
138
131
159
114
105
89
112
149
135
108
180
54
115
95
87
148
180
128
114
112
121
122
88
108
103
90
49
138
130
100
127
84
120
49
113
158
93
128
91
140
81
160
155
102
131
112
141
123
96
129
81
82
100
77
102
133
54
104
95
82
54
148
140
95
86
106
120
144
103
111
81
99
76
96
156
140
197
135
151
98
137
111
179
125
138
107
167
103
81
67
124
106
86
95
54
115
59
103
130
124
131
122
98
139
85
115
83
54
177
125
95
133
95
90
149
116
163
128
83
170
174
74
95
93
176
87
178
100
119
92
78
122
87
160
148
106
90
135
147
108
90
95
74
101
82
74
81
158
124
115
76
133
84
122
98
150
119
165
106
139
103
129
180
107
100
97
84
122
113
123
122
98
118
168
138
103
160
105
59
95
105
98
148
118
104
150
146
110
105
113
129
79
168
148
116
75
93
102
54
108
157
141
110
113
81
140
59
54
133
98
111
103
90
105
125
106
81
54
116
102
126
119
166
77
74
76
77
134
148
76
133
105
98
130
123
134
163
114
112
96
125
86
136
96
102
143
150
102
199
111
82
81
97
113
102
113
116
140
155
72
166
76
78
108
98
95
93
71
117
115
81
102
115
121
133
49
129
149
123
102
103
98
96
109
170
107
139
54
113
86
121
100
130
130
98
112
112
84
78
143
95
169
148
104
134
85
95
143
103
102
104
195
89
112
112
140
144
49
82
124
74
49
126
155
103
116
106
73
91
88
67
161
131
137
68
85
133
105
141
177
188
142
134
111
108
98
96
107
98
106
143
117
101
116
102
81
117
145
54
106
158
98
105
130
150
81
90
106
103
98
115
114
121
81
54
76
160
168
114
108
122
123
162
126
59
111
119
67
98
115
114
125
102
212
104
59
179
124
158
102
54
123
94
93
112
54
124
126
92
122
152
134
232
54
180
225
168
177
111
96
151
159
123
80
111
120
139
110
118
148
85
142
102
79
112
92
138
78
114
112
160
99
125
148
167
98
155
105
125
143
100
148
122
131
75
49
85
54
74
74
129
74
109
128
113
145
93
69
54
102
144
122
143
81
105
142
93
112
131
148
116
144
140
100
147
123
97
150
128
161
108
135
102
95
83
118
77
173
67
135
131
135
78
67
84
108
125
113
119
108
109
96
108
164
89
139
77
149
90
154
78
102
115
136
153
156
137
124
134
127
134
78
125
148
91
136
138
100
135
173
133
97
164
69
93
101
106
123
144
69
86
147
82
107
117
98
95
143
143
83
109
152
74
149
151
123
142
85
109
79
175
138
149
74
57
119
148
186
154
91
87
102
128
192
151
110
95
82
102
113
109
100
101
116
111
114
129
74
107
131
131
125
82
117
76
130
102
78
128
137
119
113
78
95
78
75
106
148
146
78
191
102
95
129
102
115
123
121
117
95
85
84
112
158
119
120
144
119
88
144
102
112
127
74
100
54
108
100
90
100
85
143
86
118
118
82
54
95
161
104
199
145
108
103
148
65
102
116
90
87
135
120
120
108
111
147
90
112
108
67
74
89
132
108
49
132
125
133
125
108
186
153
115
181
142
103
138
105
87
113
137
102
140
145
135
97
114
195
150
97
103
141
156
62
127
76
98
179
202
161
144
81
106
192
79
101
113
160
82
101
105
145
103
102
74
140
81
101
148
100
105
164
149
108
109
112
54
83
54
146
112
111
173
149
108
102
61
176
120
77
111
79
119
148
144
109
145
54
98
54
77
91
115
83
83
90
144
113
169
90
105
54
145
131
89
128
95
109
120
108
54
110
103
54
59
148
124
100
122
59
74
131
83
104
166
54
112
106
87
150
93
128
131
101
133
145
88
114
151
122
130
110
121
114
151
87
179
69
142
132
135
69
54
98
158
165
131
78
113
79
125
127
159
105
95
147
177
108
112
162
133
99
123
95
114
59
77
110
103
107
167
79
90
77
100
108
95
85
111
108
155
102
59
95
101
150
49
154
136
99
168
81
129
152
54
108
108
82
108
131
90
153
149
88
136
81
169
142
103
108
59
119
102
87
107
105
153
111
122
74
87
132
142
102
146
76
112
168
116
123
81
101
147
143
85
103
109
157
109
118
82
103
94
98
134
61
102
67
90
173
96
115
138
113
145
90
127
101
101
102
138
131
148
90
145
108
90
148
116
112
94
103
93
129
128
193
164
113
54
139
81
126
130
85
98
104
130
90
103
116
93
81
139
124
106
110
103
131
116
160
116
151
131
76
102
132
102
159
147
102
87
92
165
131
154
123
107
54
99
158
191
94
117
149
87
126
87
54
180
140
149
125
99
108
112
101
183
116
104
95
54
49
110
125
101
100
80
124
200
80
80
154
85
139
102
108
156
54
93
109
61
96
105
111
112
134
77
159
85
125
104
205
133
129
124
106
142
134
115
95
54
106
128
145
118
141
125
138
186
80
148
131
101
145
84
142
49
98
162
126
90
106
74
104
128
102
112
144
133
119
85
132
127
87
138
102
83
115
152
161
101
122
140
54
77
93
113
127
169
113
153
135
95
129
74
98
103
116
131
124
81
130
108
108
141
113
160
121
143
98
109
84
93
117
163
164
96
158
103
154
135
95
70
118
128
67
99
150
65
137
105
144
102
120
133
151
107
128
106
112
106
108
92
54
139
49
177
49
135
102
175
105
69
134
137
127
175
172
131
133
116
54
224
54
103
102
115
112
112
123
140
95
128
81
173
127
140
102
162
78
98
116
164
112
96
117
101
82
86
89
74
95
108
79
102
128
112
168
121
138
148
97
123
198
158
91
125
113
94
119
89
59
137
87
102
54
74
129
77
128
84
109
133
122
102
128
143
126
125
143
165
108
126
87
74
117
150
83
98
59
113
102
125
129
84
108
102
93
141
114
105
127
144
180
118
123
181
108
93
148
120
145
135
137
81
133
68
118
134
139
54
115
153
124
77
98
143
178
74
140
113
193
152
137
97
103
88
81
91
114
67
131
136
140
90
125
156
113
54
161
147
165
135
98
170
146
120
92
89
133
108
119
155
106
147
122
155
97
126
83
135
112
95
105
127
116
149
117
96
98
117
103
155
90
90
81
103
119
103
158
78
134
118
128
187
72
81
133
127
133
112
102
80
97
100
139
103
162
103
116
122
80
117
68
131
73
128
101
230
144
108
54
165
54
120
113
108
143
99
150
154
115
89
96
132
113
150
165
105
117
129
108
88
156
131
148
138
122
77
87
125
120
115
93
98
95
49
142
102
94
81
77
125
164
103
119
115
49
144
125
89
112
110
168
129
168
156
147
95
150
153
106
108
135
147
120
93
116
96
67
150
107
102
118
108
148
148
108
157
79
125
150
68
138
49
144
113
144
167
129
110
177
77
188
148
137
83
159
111
121
111
174
147
103
77
95
133
135
78
121
106
139
157
105
108
179
94
65
103
140
95
143
125
112
139
95
129
129
147
129
125
76
108
145
107
90
166
117
148
191
54
90
89
77
132
200
163
146
105
128
97
164
128
175
109
124
77
118
102
105
170
113
49
137
114
93
54
127
117
128
83
61
105
102
159
96
89
104
127
109
105
101
125
125
148
123
148
112
124
111
59
126
77
102
154
144
95
83
113
54
102
130
133
140
125
153
155
122
96
54
95
116
149
125
125
126
132
156
108
95
98
104
179
118
125
157
130
158
96
81
116
61
104
94
161
87
99
89
106
172
147
135
128
144
103
98
77
95
79
98
194
94
87
172
157
142
112
139
123
59
106
59
103
81
129
108
95
177
148
152
135
111
103
111
54
161
110
82
102
109
99
134
128
123
105
92
87
65
153
140
73
168
145
125
149
123
122
124
110
102
105
98
113
102
136
80
93
128
106
132
138
83
114
99
132
87
140
118
49
107
116
108
125
131
99
76
81
140
68
90
177
123
119
95
158
103
112
108
180
88
153
119
125
74
144
151
142
115
125
123
54
54
124
97
101
80
107
158
67
128
87
105
143
157
150
96
54
76
78
164
77
106
69
98
101
145
123
95
116
113
77
125
123
119
103
131
140
130
102
128
110
106
149
118
148
124
95
112
65
168
143
68
100
102
99
106
91
79
98
106
135
153
124
108
97
54
59
192
83
115
85
86
103
159
77
163
114
147
139
116
112
98
54
108
149
155
112
108
116
95
133
97
125
153
123
54
77
141
108
96
49
67
155
57
85
135
135
103
126
54
74
87
61
107
111
132
112
111
86
113
112
102
127
114
111
107
111
87
95
143
106
113
104
96
127
82
117
171
122
83
145
145
131
162
110
111
95
133
101
91
102
199
135
129
127
144
114
54
98
78
102
54
129
127
146
94
103
111
157
117
59
94
101
141
96
135
123
181
78
95
145
138
54
82
106
142
147
69
110
127
125
110
163
95
105
186
95
145
54
119
116
125
129
107
168
125
105
134
178
138
100
95
172
102
113
144
131
115
76
59
69
130
111
135
105
146
83
137
102
75
54
95
105
150
146
109
82
114
49
54
135
108
123
148
114
91
125
113
131
102
89
103
81
121
113
149
88
77
119
142
122
95
98
116
116
128
117
101
80
128
129
57
96
81
125
109
92
118
98
161
182
115
130
137
115
106
54
102
138
143
121
139
120
54
101
83
171
129
54
54
118
96
87
54
96
102
111
144
135
98
116
144
164
98
182
86
107
100
74
54
95
132
128
135
111
93
144
140
93
122
124
95
108
54
116
92
135
49
97
112
98
138
143
128
49
81
82
129
98
81
90
191
113
125
128
128
117
150
126
158
54
137
138
96
90
123
78
141
135
127
90
54
80
147
73
131
90
107
87
109
132
76
124
127
105
95
94
96
131
95
108
108
90
106
117
110
92
78
137
135
127
142
138
85
81
117
102
81
146
87
90
102
90
102
118
146
93
139
172
108
95
103
121
77
115
135
130
124
138
92
91
147
115
95
143
68
133
108
137
126
82
110
111
93
94
111
110
126
114
75
72
116
49
118
130
82
157
108
76
90
135
120
49
131
49
161
158
91
166
102
169
156
109
97
165
128
119
154
102
100
181
116
108
130
131
99
98
81
131
126
152
137
109
139
111
125
104
154
117
118
126
122
114
103
114
89
131
74
79
169
145
118
110
98
107
98
178
190
114
161
137
145
120
150
107
173
93
82
74
143
145
110
125
125
102
113
133
118
143
105
116
148
103
145
54
126
122
139
147
100
74
83
148
81
119
73
117
133
63
96
112
93
113
125
156
77
102
101
148
146
102
106
132
110
113
100
87
137
119
93
140
164
82
129
83
78
95
147
115
88
144
139
114
92
94
187
98
103
134
96
123
145
76
117
81
146
49
54
85
141
105
83
93
107
116
93
119
76
91
102
137
73
91
141
138
77
94
147
97
140
113
98
146
148
103
138
144
108
125
120
153
89
74
97
118
54
179
151
108
226
81
54
179
125
90
95
130
108
109
140
157
54
149
106
130
99
147
143
103
156
107
135
100
95
108
156
59
98
102
141
153
103
98
131
102
74
102
87
103
101
111
177
84
135
113
108
87
112
114
125
132
133
110
125
125
87
131
131
128
185
116
125
83
77
102
126
102
98
93
127
120
125
80
81
84
106
144
140
49
131
127
49
140
104
106
161
177
94
115
135
97
133
115
81
127
143
156
149
124
157
154
125
89
134
180
125
118
110
122
92
76
127
116
89
108
95
131
82
106
63
158
160
102
135
125
49
139
89
106
149
150
101
92
157
160
79
137
76
97
87
130
91
102
97
54
148
102
82
130
95
118
120
49
95
150
117
91
114
122
137
130
128
156
54
123
117
174
59
54
133
112
108
110
141
82
176
95
109
97
141
97
125
81
90
180
94
158
95
92
145
106
107
109
83
83
113
118
125
118
148
94
149
168
129
102
107
61
160
98
111
129
112
156
89
103
90
90
86
131
54
119
111
79
143
85
152
143
113
125
141
94
157
133
164
118
116
81
200
108
108
135
125
124
113
129
121
54
145
59
67
54
98
148
156
153
155
113
160
118
97
138
97
171
143
93
131
128
133
95
127
122
95
95
108
93
82
89
87
68
87
106
141
62
122
157
113
49
148
95
78
121
128
115
127
87
112
167
98
123
178
100
123
126
139
62
102
125
108
101
103
110
132
129
97
95
125
96
131
102
73
150
117
153
110
144
146
59
102
78
180
123
103
102
101
54
126
108
87
101
54
93
116
87
102
145
67
144
145
131
92
49
67
95
133
93
104
131
155
153
157
119
108
156
54
81
127
83
140
93
161
98
127
140
99
107
136
125
90
113
54
185
95
104
105
148
177
104
148
77
98
59
139
78
129
125
105
138
143
135
83
85
119
145
143
115
158
146
111
90
95
127
81
158
110
127
157
82
116
54
90
94
107
125
131
116
125
132
99
98
161
145
91
57
134
61
153
137
148
111
120
134
125
115
95
132
126
177
140
114
149
104
142
54
147
87
49
91
121
108
93
54
107
160
103
93
160
81
95
210
116
99
73
78
100
130
67
74
134
142
155
123
103
147
94
144
88
138
96
85
146
122
180
162
69
139
73
122
158
170
110
163
187
161
165
98
112
125
155
133
106
131
120
120
109
128
178
104
110
54
54
133
113
113
111
100
59
108
90
141
91
110
88
140
119
132
183
133
59
141
108
139
126
134
83
111
131
108
144
98
131
74
116
168
84
129
103
69
135
49
187
108
120
95
87
95
109
140
93
87
148
116
85
128
76
157
164
74
153
118
97
57
108
106
155
80
122
160
105
113
131
94
151
54
115
97
117
81
95
143
93
81
167
54
137
85
67
135
117
105
133
77
125
185
90
171
140
102
83
100
219
103
108
174
102
83
103
117
194
139
102
111
175
96
112
148
98
102
119
133
78
91
118
54
85
130
113
129
74
163
120
123
108
196
125
87
176
67
54
116
148
104
95
157
83
123
54
83
85
122
108
113
145
116
139
103
161
116
107
144
96
101
133
104
97
170
87
110
131
164
81
131
113
128
97
54
113
107
102
83
115
106
54
83
111
54
120
95
194
147
114
112
153
138
177
103
77
80
139
146
87
78
142
149
153
158
111
154
54
113
116
132
105
111
159
94
150
115
95
122
126
96
103
140
93
150
122
118
95
135
124
117
112
125
169
93
98
107
144
102
49
139
93
162
127
82
102
168
122
128
126
93
96
81
71
102
160
76
127
127
121
124
157
87
145
107
106
120
117
94
67
74
106
167
138
93
175
127
125
159
163
84
96
74
129
171
147
153
57
131
124
132
133
129
129
82
102
107
155
87
110
96
152
96
102
103
118
87
54
118
146
108
103
117
68
123
92
154
118
94
102
104
105
116
83
123
100
77
93
128
129
117
105
185
113
102
119
80
128
85
92
145
77
148
115
124
144
200
74
45
83
102
135
200
85
99
141
117
87
54
54
119
105
166
121
182
125
113
77
134
54
112
121
102
103
108
122
83
95
141
160
90
113
120
170
111
74
186
184
124
103
123
132
123
81
119
85
122
143
73
140
126
107
127
122
109
54
108
100
95
97
96
116
136
54
74
98
92
111
128
108
91
147
177
78
98
107
115
98
54
102
111
108
54
159
106
82
150
148
118
144
92
97
103
93
95
111
113
110
96
94
124
59
163
145
59
107
129
131
135
122
54
54
116
184
102
166
108
54
116
54
108
116
113
83
117
119
99
98
101
107
85
82
105
49
108
90
122
123
100
103
129
102
59
116
122
110
133
102
100
89
107
103
79
129
133
113
65
141
89
94
78
152
81
156
132
67
156
90
121
141
145
165
93
121
75
134
131
167
159
148
65
121
59
116
104
124
80
108
87
85
130
135
141
141
148
105
69
135
146
140
210
177
117
98
135
148
112
114
83
101
123
54
152
102
98
102
82
95
124
101
103
54
125
59
122
108
148
116
144
101
139
93
125
63
135
129
142
130
133
113
132
108
135
98
153
124
176
138
129
96
124
102
132
54
123
123
77
105
102
146
76
125
90
87
126
153
125
135
100
83
148
125
74
115
111
105
144
139
96
99
151
108
127
116
147
96
97
95
74
93
158
102
161
105
95
134
91
108
158
112
78
126
102
80
142
155
94
125
70
74
137
109
103
125
100
161
87
49
114
117
126
104
76
79
102
116
136
118
93
146
106
156
126
87
98
107
59
98
162
108
112
54
112
102
98
81
135
97
102
159
99
134
103
110
140
139
123
165
116
78
54
93
108
199
95
105
104
135
112
90
140
83
96
153
81
132
149
78
102
114
133
102
102
107
129
87
131
67
74
85
105
105
125
134
108
117
108
108
132
144
61
129
128
78
54
175
102
108
113
112
122
131
102
113
93
103
145
117
103
90
66
157
122
143
130
88
144
81
107
49
148
97
92
114
83
120
101
106
119
67
98
173
54
78
111
89
143
158
156
111
146
126
160
102
87
105
97
84
140
138
90
90
81
120
132
93
125
119
101
103
85
70
125
158
89
140
125
88
59
76
81
165
100
149
74
102
78
90
90
94
163
77
134
140
198
102
93
138
142
77
98
111
87
123
108
59
151
182
144
104
102
123
167
90
54
123
103
153
54
87
108
98
76
109
154
134
99
112
87
155
149
158
129
151
122
160
105
91
79
124
101
206
84
144
99
148
141
103
153
54
115
112
61
108
142
115
77
131
120
131
103
54
87
146
102
107
74
74
61
108
54
108
116
104
54
79
80
134
108
128
131
129
103
54
127
112
102
133
140
118
103
134
98
80
93
69
114
77
120
129
128
108
116
54
77
120
92
118
165
112
102
131
115
116
115
142
114
73
165
119
83
95
108
132
186
93
126
169
134
128
165
104
82
74
124
131
122
133
129
106
90
115
105
107
95
112
97
81
177
68
59
116
102
106
106
103
133
114
128
120
132
93
103
146
138
97
133
129
102
134
108
86
169
102
95
54
126
123
102
87
85
131
131
61
200
83
133
110
123
155
128
106
83
54
122
125
49
95
156
147
83
120
117
117
165
107
108
98
123
123
132
74
95
81
106
156
132
114
143
141
108
54
99
145
77
125
129
165
121
146
102
107
139
125
106
145
101
109
150
118
82
114
149
176
118
87
78
97
77
139
95
135
120
83
164
120
141
90
98
110
105
94
61
103
98
141
74
112
107
107
134
165
49
105
68
141
110
91
100
191
130
111
118
118
67
74
93
129
149
74
146
102
100
82
113
123
135
105
121
98
99
95
80
110
125
54
131
138
129
108
95
142
108
138
133
102
96
138
49
98
130
131
95
81
134
132
80
120
165
162
69
83
89
95
123
93
158
127
119
119
133
108
125
108
151
90
118
94
104
119
156
180
104
74
160
102
182
77
67
102
154
143
106
107
143
100
149
67
140
115
79
98
49
128
78
108
87
100
154
111
135
131
127
125
133
125
90
94
88
132
93
115
164
78
131
163
140
89
106
78
144
106
108
126
90
110
108
102
180
95
138
142
49
93
76
132
156
69
105
134
84
113
119
113
116
87
153
111
67
139
49
82
153
143
147
93
113
73
96
103
112
115
97
135
93
114
103
119
126
125
85
107
78
118
167
133
78
132
108
69
116
150
118
54
168
92
125
127
148
95
141
103
144
180
94
82
170
127
110
131
138
117
54
49
54
102
112
127
54
67
162
146
160
116
125
149
162
90
95
87
94
100
105
109
74
158
111
102
95
148
133
153
159
135
103
95
187
124
101
93
135
112
81
100
86
94
103
89
133
108
54
136
135
95
109
139
54
128
108
54
128
234
157
77
77
156
145
118
148
103
85
168
143
158
116
132
140
107
90
87
78
74
54
118
54
110
49
103
98
61
182
135
97
73
119
92
80
130
126
49
156
54
137
115
141
146
121
121
120
140
138
104
96
161
103
140
153
113
157
87
82
101
150
150
102
169
101
181
67
111
108
102
128
150
126
105
144
101
91
97
97
128
129
104
113
160
92
159
90
49
73
92
177
117
137
177
87
89
110
129
100
77
107
135
74
119
177
179
108
122
93
109
117
115
54
76
95
131
106
81
129
100
142
76
128
148
124
140
124
114
86
145
108
125
166
42
99
131
148
122
108
116
144
102
67
84
102
136
124
87
108
109
146
74
65
137
121
113
120
101
142
90
71
98
165
104
135
76
68
81
102
155
91
102
87
163
108
173
74
147
87
128
93
122
152
98
49
49
131
101
113
117
113
123
126
108
145
105
145
131
141
96
102
147
91
75
149
179
130
146
132
144
133
130
126
132
140
95
176
105
145
137
108
89
128
116
103
136
152
177
128
128
162
127
125
96
59
102
93
101
125
166
168
92
81
87
109
155
137
127
54
146
134
113
129
99
49
81
105
105
49
135
74
112
59
160
111
94
109
96
84
129
97
80
81
109
152
90
100
59
123
103
143
124
103
121
67
150
107
154
128
139
102
122
93
101
141
102
90
85
107
156
98
108
138
115
144
142
91
81
117
111
54
74
103
114
127
54
133
153
96
128
143
129
131
88
95
140
123
108
87
154
146
106
124
105
123
108
77
113
102
79
132
78
131
81
88
102
127
147
78
82
168
132
105
87
107
103
96
96
77
49
131
134
143
97
148
154
157
142
87
107
95
102
156
59
125
146
108
126
107
102
123
74
105
95
108
122
81
133
104
111
129
125
147
106
80
78
153
135
121
124
98
108
102
168
96
158
153
163
106
78
95
102
153
157
87
54
95
157
78
137
108
119
109
147
139
129
140
117
84
74
102
125
107
87
78
137
49
114
54
144
140
109
76
107
172
137
54
102
149
125
143
122
89
102
74
108
100
106
135
130
114
139
81
115
77
141
95
111
76
111
133
95
135
67
91
73
133
100
78
105
82
164
86
147
135
90
124
156
77
106
78
82
95
103
90
61
106
145
67
143
105
142
124
96
95
109
103
143
155
145
158
166
140
128
105
49
123
121
117
135
98
111
145
100
95
84
148
76
140
148
124
114
122
127
106
95
99
87
172
113
89
102
143
126
138
148
107
177
100
54
98
145
139
96
128
90
196
102
120
83
98
108
181
130
148
128
80
148
69
129
61
98
106
135
148
54
165
129
133
110
65
102
87
103
147
151
144
129
98
54
112
115
131
123
118
107
95
162
98
101
118
67
79
85
151
119
115
95
88
83
120
147
138
123
90
71
125
125
109
117
141
92
90
140
134
118
140
108
163
104
122
124
95
148
96
111
115
83
87
74
103
131
100
156
111
103
96
95
99
98
76
165
128
76
82
128
97
81
100
95
54
122
127
124
113
115
96
143
87
107
133
59
86
140
153
54
98
85
130
144
81
158
98
119
127
112
115
83
170
171
94
153
132
135
83
54
91
113
135
119
106
177
133
114
150
157
135
139
150
102
226
90
156
132
105
100
125
128
95
81
143
105
54
49
112
101
103
125
135
132
118
89
97
126
113
77
130
98
108
104
132
115
97
59
83
128
116
179
135
125
83
81
100
113
141
160
177
104
124
95
110
102
87
96
109
42
116
111
54
104
147
125
99
98
118
151
95
98
155
98
90
107
133
139
102
78
67
139
144
127
80
99
167
95
112
141
99
148
123
77
122
102
102
97
95
85
135
59
139
127
172
104
97
118
156
116
182
54
108
147
153
81
154
59
92
122
95
99
132
82
78
165
81
84
98
113
83
116
99
129
161
93
107
133
147
112
175
121
123
67
94
102
107
103
170
122
124
115
151
116
122
155
153
135
176
150
54
87
127
54
76
78
103
95
68
87
91
108
81
160
49
147
126
140
111
111
127
153
135
158
108
100
108
85
115
83
119
102
96
139
158
123
85
140
116
89
104
143
145
70
84
143
90
103
123
112
127
112
92
99
99
74
106
121
133
105
112
95
124
153
108
111
98
54
132
98
155
104
69
98
118
152
101
110
90
92
148
135
147
81
54
94
77
121
54
54
85
124
118
102
131
84
131
105
138
124
134
106
79
105
134
67
83
106
90
98
84
119
83
119
120
65
120
127
123
77
164
93
139
105
106
126
116
77
113
115
77
145
103
82
107
165
49
129
124
94
112
133
117
49
77
90
135
61
108
98
155
139
82
113
78
162
103
121
114
108
143
105
54
93
69
172
135
78
118
124
108
154
76
138
132
147
74
144
188
100
130
111
80
78
103
98
115
152
111
162
122
65
170
104
59
155
94
106
137
109
101
74
108
80
85
103
91
125
74
98
139
133
114
133
54
95
123
108
112
133
127
95
127
147
71
112
80
78
77
124
132
135
59
167
118
103
148
108
119
81
77
135
59
68
132
137
143
144
115
59
100
218
49
98
133
98
162
108
102
122
135
81
168
165
61
115
82
134
188
83
74
105
76
78
80
118
114
125
90
86
140
194
124
102
143
95
129
102
83
199
113
95
91
133
163
85
133
95
76
160
112
84
54
139
147
113
104
143
118
135
104
75
80
92
140
105
144
87
163
49
118
155
103
84
82
97
131
145
128
74
128
95
103
191
116
102
116
175
95
139
85
127
103
113
101
168
83
102
54
103
113
89
96
97
104
111
99
110
120
97
111
125
97
54
98
157
140
113
104
101
110
133
138
125
98
178
93
179
88
117
92
134
122
121
139
112
126
147
95
132
144
109
126
54
108
54
77
108
112
127
100
133
87
82
120
95
102
135
112
54
121
108
148
110
131
100
125
108
97
131
131
127
81
133
115
57
54
133
127
135
146
144
131
141
135
54
68
124
154
87
132
120
113
110
93
87
81
159
95
99
105
102
81
161
113
144
108
85
125
90
145
73
127
77
98
80
96
135
153
146
115
70
141
74
74
113
93
100
99
142
103
128
108
130
172
92
114
91
148
95
124
78
177
108
120
76
102
115
166
143
162
127
135
95
73
153
177
145
115
61
120
100
113
116
99
102
125
123
49
137
103
160
116
148
112
134
78
67
83
127
103
49
98
151
87
95
128
171
111
140
99
144
142
143
125
143
131
81
172
103
160
138
196
177
133
77
116
74
77
93
111
82
93
93
135
95
126
95
95
78
81
61
115
103
96
108
72
119
123
162
134
147
54
102
147
210
59
136
142
81
108
146
129
130
54
122
138
91
95
106
95
120
98
59
142
78
122
95
130
156
173
134
80
138
81
98
145
144
98
95
144
141
163
132
90
129
114
54
102
133
76
110
139
80
129
69
116
131
110
120
77
164
124
90
134
146
133
81
143
122
135
119
151
159
98
104
120
79
111
95
155
135
120
97
119
85
80
148
140
42
123
141
140
126
142
116
49
135
141
106
106
108
138
140
99
124
112
119
90
120
142
119
140
54
81
150
132
127
76
54
69
100
139
89
108
143
108
133
101
105
95
125
90
98
141
107
140
78
54
145
103
118
84
113
127
95
87
98
137
148
102
82
90
171
120
107
54
124
156
49
54
103
163
118
84
127
74
141
82
106
90
144
82
130
90
100
113
125
117
133
179
114
124
84
148
128
157
105
177
108
127
156
67
103
128
151
159
138
105
120
96
113
143
102
123
127
135
137
172
146
164
98
139
108
133
102
144
95
180
116
144
59
130
54
117
83
191
117
107
71
157
105
130
87
114
147
149
118
197
81
134
116
102
95
194
85
129
93
137
107
91
144
110
138
102
125
102
83
119
95
127
145
89
129
95
173
54
108
128
74
106
103
103
135
126
115
104
98
131
130
106
125
128
112
83
80
113
144
113
85
102
54
125
98
42
110
83
140
101
90
148
107
49
94
125
131
134
102
83
108
93
177
115
73
67
98
126
107
131
165
117
163
115
149
121
153
138
125
96
133
116
148
99
145
128
216
144
105
113
177
131
98
106
114
135
90
123
98
96
105
131
68
83
113
103
85
54
133
138
89
82
111
54
125
172
113
172
123
54
93
54
95
106
127
119
119
98
143
91
144
95
74
131
107
121
128
170
131
108
97
102
140
119
87
74
125
110
169
81
110
146
82
72
110
135
104
90
100
87
145
139
93
126
108
102
133
107
92
113
103
110
126
102
102
125
79
103
124
81
135
123
146
127
98
112
128
54
117
123
128
130
93
146
113
108
105
54
119
117
117
95
68
92
54
135
112
145
107
119
120
82
102
94
54
95
111
98
120
146
120
90
132
158
54
113
142
123
148
145
182
167
54
77
167
123
150
113
85
98
97
106
76
107
91
68
61
85
148
118
59
121
128
102
104
172
102
95
179
104
117
146
148
100
127
129
117
95
166
134
114
120
118
119
67
99
121
102
108
96
111
115
162
103
134
135
78
106
103
104
149
110
105
106
148
96
90
117
113
121
160
96
59
135
137
135
81
165
142
139
116
117
95
109
74
129
157
108
73
139
111
105
81
127
85
159
81
87
96
83
150
113
49
146
96
67
123
148
106
152
120
54
74
54
125
121
103
135
112
107
82
162
95
98
74
160
123
91
127
100
54
147
148
118
115
111
95
127
89
132
104
127
80
163
49
132
118
144
113
147
95
115
76
102
111
103
128
122
96
95
128
131
95
133
125
163
54
139
103
101
125
109
151
98
54
94
122
124
149
96
54
112
143
103
54
95
78
167
105
76
90
114
131
146
132
100
86
112
59
81
146
81
80
93
69
91
122
54
115
134
146
99
138
102
177
98
74
98
87
102
105
98
105
112
113
146
95
82
105
133
141
158
76
118
81
95
168
110
157
78
111
110
95
97
131
135
146
98
112
78
81
108
96
93
69
144
131
77
98
146
147
81
138
131
126
113
102
149
140
114
96
90
143
95
125
154
97
111
158
82
128
106
99
82
49
167
117
108
131
179
103
166
91
115
125
59
106
127
165
113
79
98
113
117
113
122
113
124
137
130
108
131
109
98
157
108
156
126
108
135
95
54
139
142
49
95
102
132
168
108
81
125
90
118
102
108
95
135
45
49
119
106
98
135
100
89
140
98
135
87
108
108
122
76
118
172
100
98
111
120
90
131
82
54
87
163
131
201
125
126
127
135
125
103
103
108
166
164
108
102
114
103
122
131
87
119
170
129
144
113
97
178
140
123
122
122
59
102
84
80
132
125
148
106
157
81
149
128
131
118
120
125
98
127
102
129
164
108
128
125
90
68
129
150
158
127
104
131
139
100
118
117
134
113
87
77
97
93
102
136
59
93
104
95
123
145
133
124
113
61
115
132
140
82
126
108
147
126
95
97
77
162
111
111
76
111
90
135
87
114
155
97
122
145
107
74
74
86
179
74
116
140
87
148
106
96
126
134
131
98
140
111
149
144
107
115
107
144
99
108
59
85
82
84
122
125
89
141
122
106
119
79
91
85
155
98
160
148
116
154
105
68
115
155
186
108
102
74
61
150
93
98
110
171
140
108
156
105
183
77
95
108
87
110
113
116
135
67
111
87
184
79
87
119
103
88
150
100
87
144
103
90
149
76
90
138
105
115
152
111
131
149
126
118
85
140
112
185
132
144
137
116
92
54
151
129
97
126
132
154
83
92
100
81
113
178
81
95
102
68
144
88
169
138
119
59
169
132
126
83
161
93
143
129
130
81
105
131
124
98
108
79
100
98
116
130
106
80
127
123
45
102
103
95
138
83
123
49
81
82
83
102
72
102
108
166
102
101
156
134
121
96
76
151
110
90
116
67
114
148
93
117
141
143
90
115
145
104
109
89
111
101
105
111
128
125
140
45
103
123
145
87
99
145
163
95
140
105
100
138
81
98
121
109
91
59
87
123
125
122
146
123
108
112
108
124
95
128
98
118
136
112
121
130
97
102
61
122
83
145
133
95
136
135
114
171
127
148
173
77
103
143
90
173
145
107
122
133
148
100
89
119
157
169
118
93
142
103
144
119
129
112
57
139
144
115
103
105
119
90
77
133
153
82
144
82
133
115
126
138
95
67
124
195
98
54
122
80
67
155
78
77
105
133
69
128
168
141
165
90
140
133
76
147
74
135
109
115
112
125
111
129
102
67
128
168
101
74
124
134
128
130
135
94
54
170
101
141
131
139
176
95
125
108
122
74
116
155
164
87
144
148
148
115
80
126
102
54
76
95
104
117
127
80
69
81
159
59
123
102
143
102
120
128
95
85
146
113
93
145
103
54
144
162
110
103
85
158
102
131
119
152
126
137
100
76
135
106
122
81
73
162
139
110
106
86
93
83
122
95
133
133
95
160
76
99
105
113
129
108
113
110
54
136
95
93
152
93
105
155
133
113
169
169
120
85
171
145
95
155
61
102
181
122
105
80
77
143
133
117
135
119
102
114
69
124
143
177
87
107
118
54
81
148
104
116
102
130
150
120
131
113
123
134
140
116
102
170
74
103
143
177
149
138
96
115
139
95
141
135
107
121
122
76
188
144
123
103
68
90
161
68
116
119
127
94
105
133
149
102
144
76
148
165
54
154
110
98
102
100
74
127
109
120
81
101
134
135
127
67
122
109
105
156
123
95
110
112
127
153
108
144
143
112
97
182
124
54
145
134
95
99
116
137
128
116
123
172
108
94
99
74
104
123
108
87
95
108
119
148
139
144
101
122
103
54
122
125
154
102
107
118
123
100
103
86
103
115
120
82
139
105
54
135
143
78
110
118
138
148
122
103
90
216
129
54
54
135
96
96
104
76
144
84
102
106
148
83
155
113
138
95
136
150
100
143
108
126
95
95
148
130
102
141
90
185
97
103
121
115
95
122
135
137
110
98
107
124
126
81
149
115
95
125
70
74
129
87
133
168
113
129
143
78
132
155
150
90
68
125
131
54
109
127
76
82
151
81
70
103
145
130
123
118
155
178
68
116
87
138
148
59
83
172
122
109
90
104
106
69
146
116
163
108
150
78
109
87
71
98
110
139
102
169
106
102
105
81
95
128
100
144
141
133
120
108
95
133
72
98
113
104
151
108
102
133
97
78
106
101
179
105
114
194
144
95
81
54
93
112
125
176
144
150
131
118
137
144
95
113
140
165
111
148
113
84
144
140
115
59
68
86
108
144
98
67
141
152
156
138
102
98
92
107
93
139
143
107
135
80
54
134
108
76
103
101
129
95
106
67
97
103
54
143
74
102
94
94
106
59
188
116
145
134
82
180
118
80
140
95
146
103
147
140
81
122
127
83
94
160
101
111
101
150
120
123
135
119
138
140
116
110
103
77
123
117
144
81
108
54
135
105
54
120
113
106
117
158
95
143
115
137
146
191
145
108
97
147
109
103
148
152
107
132
152
90
68
133
109
85
101
188
93
54
96
54
135
103
158
116
122
95
119
133
108
135
98
90
134
103
88
127
110
98
79
120
54
67
159
77
123
49
143
145
151
150
111
116
96
103
143
122
91
157
96
119
92
104
102
103
54
129
96
96
113
160
94
95
98
54
158
112
105
128
146
165
204
112
54
133
143
156
127
147
146
83
54
95
106
117
110
129
115
69
109
77
102
142
120
94
99
77
140
129
125
148
98
124
116
105
69
56
84
103
158
106
86
127
138
101
108
54
102
106
109
120
135
97
114
105
95
91
112
133
182
125
158
116
125
148
120
98
128
74
125
103
129
135
113
139
119
150
102
122
54
93
162
125
94
95
179
138
105
116
81
90
86
102
54
119
154
172
171
69
154
120
186
114
148
146
76
82
140
108
120
81
106
116
107
102
127
84
54
81
105
161
119
143
118
129
125
111
101
123
141
141
130
87
117
163
98
125
116
121
145
110
89
79
59
144
112
140
158
108
111
49
76
118
108
111
138
100
152
102
134
68
116
122
137
130
117
106
146
101
84
134
122
74
90
184
77
92
157
76
77
123
158
95
123
106
49
106
108
96
113
72
107
93
113
97
85
152
80
191
115
105
101
113
148
120
92
110
139
133
49
115
90
143
179
83
131
135
90
78
167
98
54
108
54
86
145
104
101
125
95
174
81
156
111
129
157
108
129
98
95
146
81
120
120
101
90
108
122
106
132
135
159
81
166
96
143
54
185
96
111
167
125
122
113
117
125
121
81
90
102
125
132
162
115
54
153
95
104
119
138
140
140
74
98
147
118
98
91
78
151
95
110
95
135
119
136
138
86
158
151
102
117
67
95
163
76
149
110
129
145
110
154
144
172
90
146
162
95
120
161
153
125
168
93
141
122
94
149
152
105
177
145
78
67
76
74
113
143
124
160
102
123
99
134
122
112
95
94
129
123
104
98
88
154
148
95
67
135
87
134
117
95
49
103
119
97
118
153
147
123
144
167
117
78
155
140
90
83
119
107
123
143
129
54
125
97
87
106
96
86
54
96
112
87
130
183
61
102
153
113
129
128
115
121
123
95
99
146
98
93
95
116
102
94
157
202
108
103
148
160
110
76
137
109
95
120
118
101
116
129
95
151
144
137
95
54
95
108
105
54
89
178
108
84
109
122
119
87
95
113
159
122
54
103
139
97
97
127
153
54
98
95
87
116
144
124
59
131
146
67
87
191
92
124
140
101
96
81
113
87
102
126
137
144
101
220
96
110
139
95
108
96
126
123
134
87
92
97
93
87
78
166
133
197
112
97
119
149
162
95
90
152
106
161
49
99
145
102
156
82
169
109
105
132
130
155
100
147
108
95
116
113
158
173
59
102
115
198
150
103
82
80
112
102
127
108
99
108
95
133
112
78
120
54
166
106
85
145
86
49
123
164
153
98
93
148
62
49
132
54
128
92
122
108
104
151
115
120
59
128
106
148
177
101
125
121
123
80
90
98
54
144
158
97
96
49
125
98
108
79
77
145
111
98
124
54
131
110
81
102
111
105
102
98
113
99
134
148
114
114
129
123
98
54
104
92
145
106
100
108
54
123
96
171
102
105
81
113
95
121
112
70
107
177
61
94
143
96
78
107
144
167
76
128
156
98
135
151
106
138
96
112
124
121
154
136
138
69
76
179
119
148
118
125
61
131
158
169
141
93
110
59
124
106
108
130
143
119
97
149
105
110
106
61
88
144
57
81
135
131
54
131
98
133
91
69
132
132
102
91
167
123
115
102
126
113
83
133
109
102
108
153
110
117
54
74
54
158
148
101
147
123
93
158
59
103
81
124
154
95
151
54
86
143
117
115
78
94
97
83
122
138
49
148
92
147
87
89
198
123
49
143
118
102
113
100
151
102
165
122
127
100
108
100
107
120
108
70
87
105
116
103
194
49
125
156
127
76
77
81
92
127
112
126
158
120
168
109
151
168
59
113
105
93
135
76
96
90
76
87
97
98
90
87
102
115
134
119
92
126
147
128
124
143
102
151
108
103
128
112
130
87
107
159
117
104
98
114
78
147
127
122
143
106
68
95
147
94
95
122
166
124
76
94
145
69
141
177
101
145
96
99
108
125
154
113
133
87
89
133
110
83
125
149
74
90
74
102
73
128
123
98
127
54
114
87
82
49
113
95
80
104
54
122
108
146
126
82
135
131
146
104
54
68
81
49
102
90
90
131
109
74
83
95
113
98
165
127
123
124
83
97
90
74
98
108
169
101
101
86
113
123
111
108
115
140
74
128
140
152
98
156
122
108
99
95
145
122
95
111
85
131
74
128
84
135
93
59
146
89
146
95
122
68
59
141
146
106
114
86
158
100
170
108
113
100
113
132
102
121
81
109
125
114
150
124
156
170
161
108
105
118
103
185
200
126
54
59
113
122
144
154
54
108
122
132
95
135
132
96
132
153
158
95
54
99
107
113
155
103
128
153
122
128
111
97
125
80
186
49
97
177
98
121
113
121
138
155
121
107
131
126
173
121
123
81
120
89
163
106
98
152
97
110
125
115
103
144
81
115
111
104
160
180
105
126
124
116
95
133
139
108
67
120
108
158
153
106
129
137
49
137
122
120
100
108
116
113
108
154
172
103
103
107
54
107
54
74
128
122
105
94
154
113
74
99
151
97
111
108
92
87
108
127
173
95
156
76
85
136
136
130
95
158
91
54
144
108
97
127
157
137
133
110
131
134
105
135
81
157
127
108
148
171
81
98
74
105
69
120
90
126
95
103
106
113
108
142
126
138
96
91
87
177
91
133
125
199
153
114
87
113
129
148
129
95
54
157
97
93
164
105
123
191
117
129
130
144
142
102
117
149
123
90
85
169
116
87
110
94
93
143
132
168
108
129
122
125
115
116
143
54
94
152
98
98
113
94
101
92
77
108
54
74
145
150
146
177
93
95
145
125
135
98
107
84
153
131
140
131
169
125
128
79
87
87
76
130
179
108
122
107
138
80
127
99
98
148
54
120
111
97
118
162
86
169
150
148
148
111
93
74
49
108
142
131
76
112
95
68
126
108
93
102
112
183
186
108
118
129
148
74
108
87
106
104
143
88
62
98
114
136
78
130
127
134
92
115
140
134
129
131
120
143
103
132
112
135
168
162
119
54
125
144
54
87
104
87
99
117
103
132
140
131
100
127
98
104
101
125
82
147
108
116
95
153
180
116
89
95
106
144
116
103
112
136
129
96
98
146
54
108
82
114
149
59
90
128
151
120
102
171
112
87
124
150
90
67
98
145
130
116
103
105
147
88
130
101
96
140
95
171
107
151
140
126
115
127
76
99
97
120
113
85
54
133
102
117
90
127
102
106
98
124
98
54
103
117
120
108
78
92
95
108
54
139
120
102
80
100
100
97
95
81
145
142
140
79
150
128
153
120
93
143
54
95
139
151
157
120
131
87
118
116
100
160
123
128
104
172
77
147
112
102
104
98
143
121
116
74
145
118
54
118
138
139
140
74
172
108
165
133
103
92
102
176
120
107
136
89
167
95
98
81
83
85
128
74
144
111
100
132
139
141
121
117
129
151
162
86
81
110
132
77
150
80
185
80
138
128
123
109
101
102
143
119
94
85
77
134
126
133
107
128
131
102
112
59
59
113
74
142
125
108
124
151
112
93
137
54
93
127
130
133
111
91
125
113
149
133
120
67
103
85
102
154
105
106
125
104
54
118
59
142
102
80
105
101
181
133
128
107
106
133
97
120
176
54
180
113
61
134
76
54
122
125
104
111
123
121
149
101
161
99
131
161
124
154
85
125
82
134
95
95
108
100
134
95
95
140
122
108
143
116
93
146
59
145
113
128
100
117
93
111
102
111
112
138
112
133
122
156
61
114
129
87
133
131
131
85
113
125
116
96
140
54
135
112
138
115
237
122
121
121
167
106
130
170
127
122
81
103
118
133
88
168
82
122
165
86
106
111
180
82
138
155
125
185
91
137
81
177
116
144
90
149
83
78
133
116
133
125
70
168
117
194
94
145
129
87
102
54
101
59
125
61
109
67
112
160
134
106
98
108
127
111
101
78
87
78
76
152
78
102
135
102
148
125
80
81
98
54
107
86
141
54
82
113
130
127
141
144
96
77
137
149
122
129
138
92
113
118
144
130
94
108
95
87
115
90
128
138
104
127
108
59
102
109
113
79
108
146
173
144
139
174
125
178
87
95
106
74
155
159
122
117
139
107
121
96
83
177
163
131
125
100
93
102
144
106
102
125
131
95
107
86
150
69
54
135
199
95
103
116
69
132
137
140
82
154
95
169
96
147
49
114
129
98
112
143
113
95
133
158
81
98
74
120
147
106
138
125
119
158
87
109
111
140
95
112
95
110
143
81
112
147
135
95
179
114
119
127
125
121
128
111
79
163
166
162
148
85
132
96
129
147
74
143
54
153
131
135
128
137
152
123
95
140
82
150
76
163
87
117
131
54
117
117
117
141
133
119
147
108
95
103
86
112
148
103
96
95
94
69
185
130
123
146
81
77
122
102
145
137
128
147
89
164
104
82
133
87
120
100
138
133
59
106
148
111
168
161
139
128
132
54
113
141
118
95
98
124
95
102
113
110
101
85
142
95
103
107
104
148
110
89
104
113
137
115
113
159
103
97
168
91
150
105
122
113
98
96
108
175
165
159
140
95
93
129
145
107
115
113
116
111
68
129
129
107
54
92
113
59
113
133
112
115
131
123
130
160
170
125
103
122
83
117
95
78
152
143
77
110
102
77
96
76
167
80
146
108
106
97
54
67
98
107
106
90
102
105
119
95
83
108
191
138
108
93
92
101
93
109
140
95
141
96
123
104
127
134
109
135
139
121
100
90
74
98
129
128
81
105
59
169
122
127
113
98
151
117
169
174
180
139
108
68
102
155
163
128
49
77
108
96
98
120
114
98
138
84
67
123
101
118
113
102
104
98
74
103
110
54
90
152
140
116
135
85
148
134
102
105
121
107
207
133
119
115
54
140
128
106
83
90
115
84
103
135
147
90
107
128
61
117
107
78
87
95
126
108
156
97
120
92
90
131
54
83
150
74
132
112
118
96
126
98
130
93
54
129
102
77
125
77
111
105
124
67
116
70
127
112
81
133
139
80
186
105
146
138
54
104
102
115
59
124
143
160
59
93
155
157
128
123
80
142
138
102
103
91
113
146
125
152
101
148
134
121
107
98
108
77
116
126
143
131
114
111
102
122
107
54
121
119
108
101
99
95
54
85
137
177
127
104
148
152
145
119
149
99
116
85
98
91
148
107
91
193
177
145
127
74
163
130
103
109
142
135
136
103
112
125
68
131
105
74
54
112
54
89
152
108
132
89
97
129
81
156
121
98
79
178
154
149
157
124
133
54
109
115
136
163
127
118
103
111
96
90
75
139
161
102
149
141
139
118
157
133
140
141
126
54
103
67
126
91
149
83
121
114
105
127
54
154
67
96
85
158
150
103
122
123
122
108
121
108
105
102
108
59
83
132
103
116
158
96
133
111
49
141
81
167
74
150
137
125
96
118
113
85
102
102
85
133
135
90
126
131
90
140
108
104
122
91
109
119
114
95
77
139
120
140
102
110
95
98
107
78
103
147
134
150
81
146
79
116
148
131
146
141
129
143
142
98
84
153
142
112
150
108
131
97
92
108
108
113
118
108
93
83
108
95
103
156
95
132
87
125
129
150
98
99
127
113
74
111
141
79
145
124
119
85
102
108
102
77
108
133
74
88
105
49
54
119
148
133
112
132
153
133
123
117
132
107
102
112
132
98
78
148
101
92
132
98
114
84
139
108
127
129
93
143
80
138
108
114
81
146
133
108
177
146
118
87
158
83
106
145
122
166
158
106
108
49
73
122
113
95
102
135
95
111
101
105
145
131
118
49
98
98
108
120
125
83
115
98
152
159
103
76
106
95
120
93
54
136
99
153
137
81
102
83
133
124
99
130
54
121
158
129
116
49
81
116
115
131
90
80
86
54
95
100
61
155
180
112
127
102
160
125
82
109
131
108
94
121
165
151
76
133
95
167
95
65
170
113
180
143
69
93
106
92
120
95
99
93
145
79
190
108
131
138
119
128
99
158
97
101
143
132
109
78
85
125
49
49
87
167
113
74
54
100
81
116
139
163
138
84
145
117
95
119
101
107
127
102
129
94
90
92
141
105
135
133
87
128
102
158
76
120
97
93
124
154
122
129
145
95
105
108
115
137
102
140
54
128
135
67
112
148
69
150
119
118
94
125
126
137
157
113
108
54
176
129
82
90
131
177
108
83
107
101
102
98
138
90
108
113
102
125
149
146
77
116
96
122
95
149
112
95
82
95
126
128
125
134
84
164
106
147
104
105
102
160
138
102
135
145
124
145
119
148
109
131
115
178
101
122
163
160
101
49
149
124
145
100
87
127
76
124
107
151
152
129
147
85
134
103
135
95
143
119
146
87
101
98
129
127
86
126
102
119
49
95
102
128
134
124
115
157
170
113
145
102
90
98
163
114
79
141
91
147
177
106
131
91
105
104
139
148
116
98
108
124
125
140
106
112
81
102
103
103
97
112
100
74
131
118
135
157
125
90
131
161
144
95
133
158
121
152
155
84
102
163
119
135
81
133
95
120
102
98
95
108
137
130
81
131
117
74
114
54
107
135
167
97
102
131
61
105
141
120
76
78
59
129
120
59
158
98
87
73
148
110
82
93
129
98
124
166
68
80
125
148
145
115
172
98
149
127
92
160
128
153
103
94
110
128
81
133
91
104
128
125
69
139
85
128
116
148
94
98
54
194
80
87
113
98
107
158
83
103
107
102
120
145
133
151
54
131
110
83
77
82
119
90
161
74
104
81
127
132
107
54
146
113
87
107
106
127
120
113
112
102
103
125
118
90
135
167
155
98
123
61
74
108
107
135
116
95
96
87
112
140
91
107
184
108
145
54
67
128
118
127
54
81
87
116
124
127
133
153
150
80
125
149
133
85
90
117
136
81
110
115
175
121
103
92
75
202
87
54
100
130
81
96
103
120
98
95
125
102
123
98
156
144
114
54
71
126
164
89
59
97
135
104
133
68
116
123
93
78
148
132
110
180
144
99
137
168
160
80
67
74
161
96
54
134
148
145
168
145
135
147
130
91
158
80
137
128
112
95
144
83
144
147
167
110
168
124
131
54
115
151
148
103
124
153
77
144
200
115
93
133
72
141
54
161
129
100
133
143
106
63
100
172
82
120
156
124
106
141
111
148
116
54
115
92
135
147
113
167
163
152
90
139
107
97
54
114
139
77
140
54
113
134
78
133
128
148
87
124
77
158
106
173
59
49
120
144
144
54
85
91
126
107
80
101
121
54
90
135
83
137
148
128
90
108
54
87
87
128
122
83
78
135
74
122
74
107
155
128
95
130
103
92
119
134
169
125
128
113
140
139
173
129
54
110
117
54
133
98
73
95
61
123
158
140
132
122
95
125
79
49
90
108
115
199
219
79
59
86
90
141
135
117
133
108
82
128
102
95
162
107
69
103
102
116
135
126
75
159
145
113
137
131
103
108
177
77
143
149
118
165
54
148
113
125
146
145
69
107
107
94
130
74
125
103
117
89
106
123
125
100
142
143
95
49
148
106
101
109
96
87
131
141
102
158
87
90
143
146
173
144
113
61
102
158
150
130
154
131
140
135
98
93
194
97
80
140
127
134
59
128
91
136
108
103
100
104
200
136
173
79
127
144
113
110
76
101
95
153
95
153
93
63
81
135
135
133
113
139
171
90
168
138
117
61
131
128
75
76
125
122
121
106
104
141
125
96
153
101
54
129
54
125
93
163
49
102
107
122
109
54
149
165
122
122
122
121
57
104
95
98
133
77
78
136
116
54
122
130
77
113
119
102
177
90
90
131
97
125
119
103
130
111
154
98
120
125
106
119
124
108
69
95
103
102
148
79
108
115
126
49
149
54
106
116
134
133
101
107
98
93
83
87
153
160
134
101
141
138
188
113
99
95
78
85
103
127
122
173
143
144
76
93
140
123
131
127
146
125
145
172
120
122
136
92
148
100
158
166
49
110
98
112
117
91
102
127
96
116
108
69
87
99
92
156
173
89
121
152
102
114
130
83
129
69
68
95
92
115
117
102
141
188
108
101
95
157
156
76
78
136
156
172
120
109
59
69
99
69
77
182
109
96
178
102
98
81
108
107
105
100
130
123
54
54
119
98
161
81
95
119
134
54
61
131
93
139
115
116
129
144
171
120
172
86
130
171
119
123
54
125
109
87
145
141
82
120
100
87
87
111
119
128
164
148
128
121
128
112
168
123
108
134
113
143
84
103
90
107
90
82
126
111
145
102
93
81
54
87
88
108
67
108
133
145
103
144
54
131
100
115
110
116
114
102
134
146
131
98
113
192
149
115
103
112
114
155
115
172
103
59
105
108
136
81
199
121
115
130
108
122
146
161
177
84
122
63
73
118
142
105
134
127
121
131
76
105
81
102
85
141
132
158
72
186
116
128
67
159
134
108
81
141
84
118
103
110
102
78
95
49
131
81
108
74
79
111
77
105
125
118
111
98
148
127
107
95
121
74
69
74
168
113
111
77
120
122
76
140
77
93
146
156
120
143
139
134
97
125
89
108
145
118
105
98
207
146
125
104
117
130
81
133
171
120
78
99
112
93
83
91
95
112
185
106
132
77
102
90
118
78
124
54
160
98
76
136
81
160
110
87
80
113
154
128
123
150
103
165
116
128
154
140
115
123
145
98
133
122
102
130
112
133
90
179
54
139
85
126
120
112
91
98
100
87
111
140
159
103
148
116
103
135
107
103
125
81
116
87
102
68
103
163
79
59
87
113
167
98
120
102
91
160
90
103
93
98
123
200
95
133
143
102
105
122
171
191
126
77
148
140
119
98
59
85
98
155
120
126
131
111
152
109
126
106
72
49
167
98
101
129
123
128
108
67
93
138
167
95
146
103
65
140
125
108
88
98
150
179
73
116
90
112
128
149
76
111
106
159
81
108
105
110
98
86
143
116
102
158
137
100
81
147
154
54
116
104
113
102
126
113
103
135
127
91
139
87
141
102
67
86
93
98
70
139
152
54
162
134
146
131
98
116
113
148
91
161
124
98
125
220
111
116
115
110
133
74
133
149
105
104
93
133
103
86
59
92
107
134
95
145
161
102
82
76
147
81
132
145
117
77
107
98
148
81
103
81
151
115
91
113
106
115
125
120
121
120
119
84
122
108
132
108
75
116
111
121
104
129
126
124
67
76
130
105
81
142
129
116
122
105
99
90
98
102
98
123
97
133
155
103
103
108
122
148
113
105
82
119
157
82
112
54
114
159
91
143
157
85
79
145
125
147
117
127
95
83
81
91
93
102
153
144
54
131
134
122
85
98
133
139
98
108
142
125
208
96
93
146
54
201
158
164
74
74
87
148
80
164
168
134
100
96
160
54
96
125
108
87
115
82
96
142
103
49
201
108
102
180
123
150
155
87
115
99
74
98
116
95
49
148
89
98
106
154
125
144
93
82
74
89
91
142
109
198
67
134
147
107
67
139
96
146
68
87
74
123
127
106
69
87
118
122
140
131
59
87
142
133
102
125
102
158
139
139
97
83
112
141
156
139
96
114
74
78
151
90
103
137
123
105
89
91
152
74
85
87
146
148
158
124
134
151
124
106
91
120
165
141
74
81
112
142
121
143
108
126
172
71
98
162
85
117
184
90
115
120
103
103
99
95
92
110
119
114
97
94
74
85
138
131
122
86
108
132
101
83
116
158
129
82
59
117
122
54
107
95
116
158
156
128
101
111
89
116
131
114
113
143
153
104
131
161
161
130
144
69
127
130
135
82
157
77
126
96
113
135
100
114
95
120
76
76
96
153
83
147
100
117
149
116
148
82
100
78
162
129
109
180
157
92
49
119
135
49
123
105
112
156
114
144
102
95
102
87
106
143
106
160
97
119
125
54
92
148
127
105
107
95
145
202
132
99
152
128
88
115
110
123
119
129
115
156
101
81
124
122
148
128
95
128
115
117
67
150
108
81
212
103
143
119
148
83
110
126
141
141
158
110
102
54
126
140
162
121
123
147
68
98
109
93
151
85
125
49
115
109
94
116
67
49
87
148
135
90
172
122
124
118
169
142
141
112
126
95
114
109
117
119
83
82
118
126
95
76
87
193
108
118
137
184
67
170
102
132
95
98
100
118
95
82
122
93
123
113
118
99
95
90
49
54
125
92
85
100
132
89
98
128
81
99
120
118
152
54
67
111
123
122
168
98
148
153
130
126
122
128
107
124
85
123
145
81
124
112
108
131
109
121
117
94
126
158
54
68
94
110
129
168
153
129
61
100
137
143
81
76
127
149
54
125
78
150
127
144
144
119
91
77
157
122
54
88
96
104
92
118
90
134
128
135
103
153
146
112
159
131
87
133
141
103
132
97
129
149
96
117
127
94
95
146
98
129
109
113
125
112
95
145
131
54
128
158
107
97
123
74
102
97
117
150
138
135
103
115
115
103
143
108
152
77
109
124
110
120
96
194
103
87
78
102
98
83
122
95
136
108
108
125
108
76
82
134
98
98
102
116
95
164
124
124
77
125
127
139
98
81
115
183
125
199
98
133
113
108
115
143
118
83
78
82
133
127
99
109
160
128
88
141
69
101
157
135
82
96
131
81
116
59
103
95
99
54
81
131
108
90
116
82
170
120
119
95
150
99
124
74
107
104
102
127
108
116
54
148
105
128
123
139
117
108
98
121
105
54
129
152
98
132
130
91
92
122
127
152
110
143
103
115
143
96
104
89
93
139
96
90
90
99
166
54
131
114
149
135
118
147
102
107
113
109
91
128
110
78
83
170
100
140
106
107
137
77
112
76
80
125
54
157
128
108
130
180
104
85
141
135
106
54
129
121
108
113
148
110
153
100
117
95
111
165
110
101
113
80
119
131
110
108
129
78
118
140
81
164
96
147
177
120
127
137
100
103
153
89
106
109
125
128
102
102
84
93
101
119
54
96
127
148
108
125
76
81
126
102
89
101
123
158
130
87
103
95
103
54
121
49
148
113
148
162
125
102
102
124
106
104
131
95
127
128
159
105
95
134
177
54
101
127
120
49
147
90
91
144
85
114
165
140
133
117
102
160
135
141
168
103
91
108
120
143
126
104
151
109
87
141
87
132
113
108
94
86
118
68
103
81
145
169
86
49
87
151
178
95
110
59
169
77
80
139
138
106
123
131
144
116
89
54
81
59
164
102
91
87
225
119
123
129
101
59
95
59
202
93
107
102
81
93
89
133
148
177
89
91
143
143
79
115
133
113
102
109
82
112
118
139
138
93
127
95
111
105
85
106
54
156
103
141
105
87
113
128
123
120
108
119
118
101
107
128
109
148
98
141
103
127
168
121
112
158
91
99
159
132
134
131
131
123
136
169
68
121
103
85
98
165
119
108
175
107
71
108
181
129
104
93
76
150
88
105
81
118
95
76
92
127
83
147
107
190
120
101
147
123
156
132
67
101
94
113
144
77
139
54
111
141
81
102
74
112
105
135
98
68
96
124
146
98
160
83
177
133
89
117
151
106
112
154
127
107
87
94
76
101
91
81
158
148
110
108
93
104
95
162
135
137
100
128
188
106
82
108
54
54
127
116
107
144
96
157
127
108
99
122
135
165
107
54
90
96
54
95
102
110
104
79
95
134
138
119
143
95
102
115
158
155
126
112
102
106
96
97
102
120
97
131
162
76
104
108
139
142
102
73
98
78
104
127
89
81
83
132
74
117
118
111
116
199
139
90
96
98
81
172
116
59
182
105
68
54
106
103
138
102
180
90
124
131
95
108
93
155
127
104
90
81
81
130
81
122
143
49
107
113
131
173
163
91
77
170
96
122
76
89
156
95
90
49
145
54
121
161
125
82
106
141
108
139
128
77
117
150
95
101
160
49
87
153
90
144
155
114
113
130
135
132
119
131
97
113
103
138
146
116
124
119
113
140
78
82
117
106
155
144
86
126
102
140
98
112
83
134
98
125
133
115
153
133
186
97
107
102
80
126
107
74
91
133
65
87
150
108
125
218
143
102
148
130
54
108
105
102
103
113
108
49
145
106
118
98
98
107
82
80
108
92
136
90
140
115
145
169
145
101
49
115
95
91
77
87
118
154
116
102
149
125
126
160
158
74
123
160
169
97
118
121
148
186
148
130
132
117
125
133
130
95
128
95
95
120
54
94
89
108
159
190
106
102
95
117
87
135
132
130
133
157
149
144
155
168
139
177
72
146
134
96
129
67
103
54
106
145
143
184
112
87
93
139
117
126
101
116
98
93
103
102
81
159
74
81
141
101
129
147
120
136
101
96
103
122
143
122
108
143
120
125
135
104
108
130
82
120
77
140
96
120
117
115
96
128
95
146
165
95
102
49
124
131
122
166
124
118
115
95
133
171
83
90
127
91
125
144
136
90
116
102
125
126
154
156
96
54
100
90
172
111
120
146
201
111
91
106
129
148
77
108
87
133
81
177
102
168
139
95
92
90
104
134
79
62
141
112
137
103
99
90
129
108
117
210
133
90
137
135
145
98
74
118
81
108
140
122
143
128
108
117
131
108
135
108
135
54
81
112
117
115
83
146
158
123
122
94
136
165
74
152
106
54
98
128
163
102
158
177
102
116
140
105
141
82
67
148
141
116
158
109
85
106
77
148
166
110
140
76
104
127
112
91
113
135
116
103
113
144
90
105
103
130
82
166
76
54
110
99
94
170
109
106
138
101
108
105
134
133
110
148
93
54
113
185
152
65
133
125
110
113
102
87
148
94
103
116
111
133
54
102
108
105
111
105
106
120
191
88
142
156
142
102
137
76
141
115
108
81
74
159
96
87
79
79
121
157
141
171
118
117
83
103
61
54
193
182
170
87
98
178
117
92
112
138
103
139
141
144
155
134
127
107
105
118
113
172
145
110
96
171
194
141
124
133
102
143
177
131
113
105
161
102
100
82
111
136
156
114
88
143
108
122
86
108
90
149
108
91
81
149
121
127
128
141
124
98
108
101
102
121
100
120
116
67
122
99
131
102
121
81
107
142
77
144
101
187
161
95
114
105
136
145
139
142
68
101
103
133
54
120
122
93
104
54
154
85
80
117
103
92
127
98
144
113
131
128
107
128
134
113
151
107
82
118
125
102
87
45
93
134
103
115
136
100
135
54
105
178
91
115
112
140
160
131
115
127
87
105
95
82
120
108
156
115
102
129
87
106
117
80
54
127
103
141
159
124
156
81
77
119
129
159
79
91
145
158
138
79
177
76
104
143
96
97
106
126
92
102
104
103
121
149
77
118
93
145
130
120
146
54
115
61
145
91
102
125
107
116
114
96
116
115
143
145
122
129
59
190
173
120
119
93
102
126
77
125
108
54
121
95
148
131
90
106
103
91
191
117
102
95
104
45
128
177
59
138
102
124
146
172
54
99
148
96
110
135
164
130
49
87
116
122
139
123
132
82
108
144
110
54
85
108
155
111
97
115
119
113
202
128
106
142
122
118
95
131
173
172
77
140
124
113
82
111
49
150
77
115
67
131
116
125
122
114
103
168
106
128
87
81
103
140
132
99
103
91
143
132
133
108
134
147
102
113
113
146
157
110
75
101
59
82
97
114
118
98
164
126
136
120
49
49
113
182
124
175
141
108
138
105
69
144
144
82
123
74
108
102
103
125
59
95
112
85
159
178
163
167
168
69
105
49
80
68
116
131
125
77
79
84
144
98
156
122
127
113
103
49
127
115
138
77
136
115
146
86
111
76
120
97
122
114
124
81
112
140
166
125
94
134
147
100
59
108
133
106
110
90
59
76
100
74
147
111
116
54
182
65
113
200
106
116
96
125
130
95
144
131
132
90
152
136
148
148
128
111
97
80
96
96
150
94
125
133
136
119
90
102
144
125
74
126
122
156
90
117
125
125
125
109
76
175
161
135
83
145
123
127
114
118
95
123
137
113
125
126
54
100
146
86
103
154
85
128
103
154
118
93
153
127
161
122
110
137
105
165
123
54
108
108
174
135
132
122
96
81
176
138
182
107
113
118
81
127
83
84
159
166
79
69
104
106
153
116
82
85
131
196
133
80
74
98
118
175
111
144
170
95
106
128
96
112
93
168
108
95
134
93
121
86
105
131
107
116
120
91
129
90
113
125
80
106
90
102
143
138
147
172
122
120
87
119
121
113
109
102
112
124
127
74
68
121
54
67
68
112
128
166
102
104
132
111
87
61
165
109
95
126
124
158
134
169
100
150
117
113
161
107
106
151
155
72
146
80
108
93
182
113
84
81
117
118
76
150
108
139
132
136
117
140
85
105
156
115
127
140
59
139
128
95
61
102
151
59
91
59
133
103
78
123
122
94
132
105
132
85
59
108
131
108
74
115
105
116
91
134
133
107
105
118
108
108
97
67
81
113
54
118
82
120
157
104
133
113
90
92
143
108
118
133
137
123
79
138
91
89
145
92
179
85
144
136
49
131
105
134
95
129
89
128
133
69
109
117
122
78
54
149
102
102
107
59
105
129
130
110
137
89
49
90
133
82
108
119
59
96
74
81
123
105
106
142
127
127
161
83
97
95
155
54
129
111
116
103
73
182
96
120
121
59
100
93
131
173
96
96
118
54
141
152
97
108
180
147
106
107
163
87
115
96
120
117
111
133
92
82
110
131
131
146
123
137
209
105
49
82
158
136
94
81
148
123
133
103
115
141
98
98
102
102
83
134
125
129
127
92
113
148
104
141
134
154
113
80
124
102
112
88
185
148
113
123
83
84
110
91
135
111
148
95
96
149
93
131
140
77
166
95
177
106
116
120
121
197
103
154
102
91
143
100
49
91
112
116
161
100
105
74
59
135
89
152
108
104
81
156
145
133
82
105
95
126
78
91
102
152
168
138
45
106
131
155
54
144
87
152
115
209
136
134
102
140
123
69
128
115
118
94
131
176
117
121
78
96
54
102
165
59
112
85
135
149
86
143
113
124
85
98
118
91
155
101
93
134
99
90
95
125
99
54
128
135
157
132
111
49
90
125
102
129
110
146
140
83
126
122
167
140
148
144
82
148
167
95
96
107
102
108
105
125
122
87
116
191
68
173
80
105
127
113
122
112
149
106
108
131
125
123
120
113
108
77
91
182
126
121
191
103
165
92
74
113
130
128
157
107
138
151
87
83
82
143
67
113
107
54
90
83
119
129
90
158
108
164
95
113
128
83
177
105
77
128
105
142
93
106
107
128
87
102
87
115
145
99
70
100
140
82
105
138
128
142
101
139
89
128
119
91
144
95
153
90
139
129
81
112
128
111
54
91
91
139
93
127
122
109
124
137
177
93
90
123
83
141
105
165
102
113
49
114
95
108
102
148
119
95
158
102
95
123
124
114
119
93
98
91
79
91
72
112
98
161
98
102
61
77
120
86
124
152
124
106
95
161
105
147
115
131
98
54
177
124
126
94
115
107
140
103
95
113
172
79
95
123
77
101
119
54
115
115
141
177
102
157
130
102
108
148
146
126
194
78
54
135
108
109
100
143
122
157
155
96
171
115
160
90
83
141
177
116
140
76
129
124
121
120
103
127
127
104
87
121
97
103
131
154
108
54
111
103
83
129
126
83
119
150
97
90
107
139
77
90
165
131
95
143
116
119
120
154
102
210
175
138
96
105
143
110
98
112
49
59
103
82
116
125
126
159
142
142
149
121
133
95
135
122
112
54
144
113
54
111
115
143
78
137
99
161
104
142
82
115
113
146
142
139
145
126
98
99
115
128
133
131
193
137
77
78
90
125
108
101
107
130
105
165
112
127
68
143
97
115
77
54
87
54
84
54
102
67
95
103
120
79
95
152
101
108
136
106
91
158
143
134
131
155
102
102
130
99
132
108
116
118
177
87
160
112
148
131
113
90
193
137
150
118
146
54
102
88
107
146
101
142
54
102
76
153
117
138
134
100
105
148
95
102
127
198
54
151
93
94
151
132
112
83
82
106
143
103
143
109
111
140
145
95
110
80
128
129
135
98
124
178
149
102
106
99
142
79
107
54
108
127
87
131
158
132
143
135
123
59
139
138
85
133
125
67
90
140
168
144
129
147
102
132
49
102
133
143
150
117
132
97
121
133
127
127
144
112
157
120
91
115
122
113
150
158
175
101
102
119
117
116
105
157
116
108
125
110
107
143
104
137
122
106
125
87
143
147
95
107
68
95
122
203
154
142
116
102
63
103
112
116
74
82
109
105
143
108
148
98
158
97
77
126
103
112
108
161
154
94
95
89
151
117
108
125
76
108
54
162
122
121
110
54
113
141
150
159
131
127
95
95
111
90
106
76
120
148
85
177
144
54
59
127
129
49
185
87
195
92
109
76
125
94
145
49
106
119
82
125
122
99
177
131
143
142
92
145
131
54
138
102
49
133
155
157
177
141
116
108
158
151
103
108
122
130
49
97
91
125
96
107
143
92
59
82
91
128
109
148
154
120
129
113
89
83
49
146
88
166
110
114
170
113
106
147
113
133
103
114
118
129
138
104
137
129
129
115
132
120
112
67
156
155
124
93
59
98
157
96
132
131
140
49
54
129
151
163
124
98
128
67
122
109
160
83
89
81
120
67
142
116
140
108
120
146
87
131
126
138
97
74
108
97
87
94
126
118
110
89
92
123
121
54
102
105
67
156
143
113
124
68
150
103
147
54
114
111
138
114
107
77
134
118
84
140
158
129
107
124
129
95
93
96
135
96
136
95
114
118
94
107
113
121
103
145
159
85
127
186
130
54
108
103
128
106
90
115
124
97
76
126
152
131
148
106
105
110
140
114
148
103
119
95
49
135
127
115
98
96
135
125
113
128
148
166
145
109
147
95
59
105
118
98
100
80
123
59
149
134
154
145
107
133
93
117
85
81
180
106
131
150
79
101
160
114
115
128
173
125
159
120
140
115
125
133
114
80
54
138
170
173
108
133
130
108
132
124
59
144
196
102
68
155
177
131
97
190
90
113
102
76
97
123
76
163
118
95
105
120
54
105
118
177
81
113
103
133
54
59
96
121
101
78
106
89
127
118
156
131
88
134
92
127
123
113
138
148
54
59
146
108
157
117
129
61
133
105
78
54
133
125
144
74
112
106
92
73
111
163
85
97
116
179
102
138
74
166
193
108
140
97
88
78
120
126
114
67
161
171
117
148
110
106
75
143
73
140
109
128
108
177
135
122
101
95
78
97
163
107
196
135
165
122
147
59
146
101
90
54
128
131
98
90
107
170
128
91
111
142
105
108
142
81
136
107
130
74
129
149
90
102
131
124
134
155
179
80
129
122
126
71
107
130
77
128
76
113
156
98
150
89
89
111
138
133
109
133
61
115
96
144
98
119
181
193
93
87
78
107
129
167
90
177
106
90
108
138
141
112
91
59
129
94
148
96
81
105
90
108
140
137
111
122
152
139
100
98
160
105
127
161
97
103
156
108
119
154
177
144
102
108
82
126
103
98
62
102
112
125
108
96
103
125
102
146
152
140
97
112
108
101
112
97
153
83
133
108
121
170
117
106
81
93
143
93
156
113
81
106
141
115
98
86
67
98
119
98
106
121
96
150
81
81
97
107
125
49
89
172
148
114
95
78
54
132
145
119
158
83
125
67
153
80
98
74
98
102
54
126
90
123
123
135
119
142
101
87
105
112
157
127
110
157
155
150
81
87
126
91
102
88
128
118
83
111
146
85
113
130
102
144
105
105
80
135
150
90
114
49
128
54
91
132
45
118
132
80
103
99
128
68
98
132
145
110
181
90
168
140
90
75
93
74
98
111
54
132
161
104
107
98
142
54
163
148
82
90
102
137
131
109
133
118
54
132
153
105
107
143
98
145
131
85
143
182
90
119
95
79
110
89
120
54
109
101
105
108
125
143
201
121
100
158
145
107
125
167
108
100
81
108
111
133
161
86
117
92
113
126
61
101
61
120
146
74
141
108
152
105
131
111
114
82
74
129
98
112
93
117
133
98
135
97
106
145
111
103
116
157
128
102
139
98
157
113
139
110
133
84
116
103
137
85
59
136
110
87
101
112
108
128
140
113
125
134
153
95
149
107
128
54
90
102
93
102
82
154
85
59
80
174
103
145
149
99
144
107
155
154
135
76
140
134
110
110
101
131
109
122
113
97
101
108
103
130
135
92
113
170
111
112
117
112
148
68
125
103
158
93
98
68
143
82
134
107
103
113
102
170
126
79
83
112
139
102
148
122
101
145
137
81
73
54
129
90
103
101
125
87
166
100
54
81
157
103
98
158
218
133
108
107
135
131
123
85
127
139
54
81
91
170
103
142
124
102
103
87
96
67
92
133
135
89
160
82
94
155
89
128
82
107
127
81
96
102
123
116
148
107
118
143
113
144
102
97
123
94
70
59
125
114
95
122
78
159
127
158
159
98
130
189
108
124
130
82
81
99
164
135
157
87
85
105
156
145
68
59
133
161
120
165
136
104
76
105
158
82
110
61
141
88
120
109
102
133
124
119
158
145
91
59
130
149
157
102
102
67
128
175
116
153
104
133
144
83
147
148
115
141
87
100
119
78
78
74
103
93
95
54
54
149
148
78
103
100
147
120
136
91
92
95
114
84
154
96
149
104
156
105
140
128
102
108
65
108
140
159
98
127
133
110
122
156
108
127
112
127
123
81
151
102
115
151
83
99
158
130
87
142
156
49
128
77
107
146
140
126
105
159
105
119
107
131
98
54
117
127
106
96
144
96
147
144
67
171
100
144
107
102
131
95
118
95
149
160
138
144
160
122
83
118
153
83
113
59
127
74
93
111
158
163
77
141
59
127
87
158
102
90
129
100
148
200
117
137
122
90
102
144
54
138
128
89
100
122
105
110
126
93
116
54
74
133
100
142
127
130
92
96
150
135
122
59
124
146
120
156
86
54
81
59
103
83
91
105
130
139
83
97
125
116
150
76
49
113
152
115
139
81
125
163
81
138
93
145
108
89
124
93
148
142
108
117
78
141
98
118
92
118
125
117
132
141
83
96
104
118
139
103
113
49
114
113
79
49
121
124
168
49
101
161
106
54
133
158
122
145
113
127
190
125
131
108
116
125
98
85
59
144
106
135
116
54
77
77
85
126
118
137
99
131
72
82
130
182
93
151
140
49
135
162
127
98
110
87
110
102
143
148
157
83
74
142
99
124
126
141
144
97
54
155
108
87
94
152
125
85
90
146
134
92
135
159
187
139
133
59
85
164
115
111
106
84
122
182
141
59
95
82
95
136
108
113
81
108
87
108
207
128
132
113
112
49
77
147
151
111
119
85
68
102
158
96
125
142
96
98
84
78
155
129
116
117
171
120
82
145
84
91
132
54
133
77
139
165
88
176
54
95
118
96
133
126
127
91
151
124
177
149
114
160
139
148
167
93
127
158
170
93
147
74
59
132
145
85
89
103
95
110
105
68
93
95
102
166
95
81
93
105
93
123
97
69
144
83
74
116
168
152
112
127
76
148
149
126
108
108
108
148
127
200
106
135
141
148
102
148
102
108
132
108
161
128
148
74
140
109
125
143
95
113
82
127
135
115
98
74
98
83
127
95
107
103
91
79
131
85
133
90
54
69
107
54
111
116
100
110
78
88
126
68
84
144
148
108
67
114
120
146
77
118
113
108
90
74
98
107
133
78
157
148
161
96
153
163
89
114
103
126
123
144
150
113
106
105
125
109
164
133
98
127
130
74
155
156
139
105
131
125
75
102
158
124
119
103
102
102
107
107
67
102
176
95
160
78
113
108
148
151
116
108
89
129
131
124
81
218
98
106
89
197
54
79
127
95
128
115
90
108
140
153
117
95
125
87
110
135
78
177
110
135
133
102
108
126
105
103
102
119
141
122
142
89
141
121
125
92
106
91
128
102
97
115
159
122
90
157
113
105
127
130
93
108
95
103
136
147
102
103
127
49
122
143
114
112
54
86
157
98
85
146
133
117
102
113
165
125
158
124
137
172
61
124
129
173
90
90
129
112
168
59
125
154
147
101
92
78
54
54
146
123
144
69
49
148
115
109
144
135
155
86
108
106
99
131
82
113
147
116
108
100
126
126
152
127
130
74
141
125
144
138
108
54
160
119
123
102
95
49
146
156
180
165
69
100
105
75
195
139
102
140
108
148
158
121
116
169
91
137
105
113
113
111
95
121
152
96
95
83
118
54
120
74
114
125
108
155
139
54
119
101
176
148
86
119
61
158
91
100
113
92
107
115
121
141
150
54
54
95
111
54
95
116
153
77
129
105
131
54
150
160
54
54
133
143
135
147
177
77
103
104
109
130
106
154
85
139
141
54
121
122
112
103
132
135
117
102
93
132
113
108
133
77
168
110
94
125
94
97
138
105
81
102
108
76
78
108
141
83
118
150
102
129
113
105
145
123
90
146
136
143
102
158
122
143
128
124
146
145
87
135
76
108
146
113
117
83
123
142
122
113
85
82
141
54
87
103
106
113
115
123
144
97
116
188
111
93
146
108
92
96
90
135
90
123
117
54
98
122
102
95
133
87
137
140
153
137
153
119
158
126
95
108
129
99
128
103
94
117
216
98
115
139
109
112
133
139
81
102
118
54
49
148
152
148
143
177
134
87
83
122
140
135
126
151
174
117
129
102
105
96
96
98
113
142
120
112
127
74
151
120
102
131
99
127
123
91
131
81
120
103
138
94
76
139
94
102
143
54
80
104
102
89
95
95
118
112
134
101
165
98
116
111
116
97
108
102
180
98
149
165
94
90
140
133
95
127
115
59
99
137
133
101
128
81
81
146
113
77
135
108
152
91
83
90
98
67
127
119
109
172
128
74
138
78
135
162
122
105
125
96
145
133
100
54
93
98
67
95
108
146
135
182
134
97
91
87
209
95
107
95
137
120
80
118
102
149
100
134
171
99
90
139
148
92
92
109
94
102
141
119
114
137
144
95
108
128
102
177
85
123
97
162
109
137
153
102
99
139
125
121
101
171
84
131
101
135
54
126
74
158
117
104
108
106
108
83
144
75
82
121
191
98
127
150
54
101
144
102
122
167
140
106
120
139
105
122
99
123
99
102
113
140
128
85
126
59
86
108
180
54
181
183
49
124
135
132
156
121
92
105
119
86
73
165
133
123
130
129
148
162
54
124
137
178
137
104
95
133
103
133
164
90
82
143
68
95
122
105
170
100
90
140
130
148
99
95
97
111
127
111
95
120
92
90
144
142
143
98
79
138
112
177
132
113
105
138
98
148
109
112
108
108
148
87
109
149
108
160
85
139
54
148
125
42
113
144
161
140
140
73
108
125
116
143
114
76
95
79
165
142
84
54
86
59
83
103
74
156
129
142
81
122
154
122
91
124
49
90
106
106
148
148
146
120
89
78
114
140
106
127
148
80
94
85
96
173
142
129
77
135
45
65
102
98
186
120
131
105
107
96
74
130
186
128
124
148
142
135
102
143
81
133
165
153
108
49
127
115
108
97
106
86
170
99
109
78
87
113
151
109
114
113
144
120
134
108
143
95
149
135
106
102
144
138
118
100
110
133
79
119
121
86
74
162
106
103
134
108
129
82
124
83
120
98
180
100
106
77
108
150
120
98
54
81
120
63
98
147
125
105
135
139
135
129
108
77
135
124
102
97
150
148
108
124
125
128
155
76
124
159
49
102
154
80
177
105
139
117
180
154
122
181
143
115
143
155
83
111
102
126
127
127
140
90
105
139
76
146
127
80
102
100
85
135
122
113
200
145
170
54
97
86
110
123
117
130
74
149
89
148
108
145
101
122
141
49
96
118
95
107
131
133
115
174
141
173
101
102
109
119
59
68
117
85
103
115
115
128
115
132
237
122
99
98
154
125
94
98
160
155
120
105
105
168
82
88
151
76
167
45
118
132
125
97
130
118
102
128
128
133
54
90
87
113
82
124
146
141
135
152
131
123
136
106
131
106
96
98
162
115
142
89
110
113
120
76
155
153
144
74
78
96
105
59
98
140
145
95
123
117
127
122
112
127
146
145
124
130
98
95
69
116
91
108
150
126
162
102
59
90
161
95
92
97
137
104
121
122
103
120
148
90
149
135
158
93
94
99
136
187
87
114
76
101
120
98
131
106
49
103
97
138
116
54
136
98
97
80
54
124
79
112
126
113
81
93
113
87
98
81
108
139
108
74
169
100
160
144
153
133
59
108
117
120
86
103
167
54
96
101
118
54
74
78
119
136
147
142
153
115
122
148
114
59
81
82
100
54
218
59
108
87
108
99
128
95
137
123
59
185
107
106
115
98
121
95
182
110
116
125
123
105
100
95
95
97
54
81
103
108
81
83
105
104
126
81
130
83
102
59
130
54
129
108
102
114
148
93
127
74
114
127
92
95
157
116
99
84
151
103
54
74
98
106
67
107
103
82
67
124
118
140
132
159
180
95
81
105
104
125
115
117
93
135
131
95
118
102
87
78
113
186
130
102
188
122
143
119
87
101
152
128
177
128
150
69
128
83
54
98
129
128
151
91
108
124
95
104
142
124
150
107
120
85
133
146
133
105
102
107
54
105
108
124
103
76
127
98
82
67
128
150
73
120
142
61
103
124
59
148
105
103
112
117
128
117
98
112
140
138
93
116
128
82
143
109
120
147
109
80
143
120
108
113
158
128
95
128
103
92
97
91
77
145
119
122
107
83
82
49
129
120
166
135
121
96
102
108
148
59
82
118
74
79
105
86
116
176
59
140
149
137
176
126
136
103
103
54
83
154
95
145
146
130
165
115
123
109
135
96
113
76
118
110
91
150
71
82
54
134
81
105
81
108
113
121
91
158
103
123
83
78
108
103
141
146
126
98
98
98
127
123
68
143
123
131
102
103
99
165
68
97
96
167
113
98
101
78
82
205
116
98
104
110
87
141
102
100
163
98
111
105
91
77
106
115
127
94
88
161
155
81
177
119
133
136
146
107
49
103
76
116
116
97
132
137
127
138
98
120
90
131
68
87
120
95
95
125
54
114
167
182
108
179
54
104
112
141
137
118
113
120
118
163
185
80
54
102
83
134
145
83
138
155
112
69
90
146
127
137
90
89
74
128
119
91
108
122
59
95
127
90
96
177
141
108
216
135
85
80
90
165
81
122
145
81
115
49
79
94
131
54
120
77
129
144
101
154
112
102
177
104
97
121
106
74
76
134
102
129
173
124
92
115
138
141
108
128
113
77
155
118
95
85
98
83
54
151
49
95
123
122
107
102
131
113
92
77
81
80
128
170
127
111
132
83
102
104
87
102
120
91
76
108
90
103
113
93
90
78
68
146
103
102
107
107
109
54
107
91
106
129
103
123
160
61
126
102
133
95
170
108
74
98
110
59
163
110
135
106
128
138
126
89
125
94
90
96
106
86
151
106
82
148
61
141
144
127
119
96
108
119
87
117
128
134
129
146
81
165
102
131
96
95
95
93
109
98
155
143
54
105
100
106
143
104
144
134
130
83
163
81
158
115
97
130
79
118
146
126
75
98
115
123
158
122
139
95
163
108
145
94
108
102
77
87
129
164
103
105
95
139
113
102
139
110
129
154
177
130
80
68
155
116
145
158
80
140
113
132
115
90
87
144
127
115
101
100
78
110
124
113
82
146
95
98
122
97
200
98
112
122
99
133
114
103
122
108
108
112
169
141
160
128
102
114
111
133
168
154
139
45
144
149
110
118
135
129
116
79
134
141
149
155
123
157
169
119
128
131
141
103
93
74
98
87
105
140
127
126
138
87
90
105
135
118
54
108
145
76
137
97
84
95
115
102
54
95
140
94
119
144
103
143
108
49
109
81
131
118
98
115
119
98
102
142
77
148
85
119
126
107
54
166
141
158
94
130
140
108
177
103
107
117
113
111
129
135
158
59
124
87
131
91
118
130
97
98
85
76
101
103
102
122
162
135
102
112
177
168
131
77
87
170
120
89
147
133
118
109
113
81
115
87
119
91
94
125
150
81
102
82
129
106
140
149
111
125
98
118
102
177
49
79
95
139
132
59
158
122
125
108
115
108
176
107
105
125
101
122
153
125
61
200
160
128
102
49
105
83
110
138
102
105
110
95
105
116
119
113
89
127
91
102
105
80
67
156
125
118
106
92
90
133
92
54
95
128
94
153
117
127
72
126
122
115
143
102
74
81
77
93
57
108
113
54
140
85
132
148
54
108
113
143
122
123
89
86
98
118
97
160
135
103
143
107
171
59
123
133
128
175
127
132
59
102
144
117
74
132
108
128
49
120
117
102
108
77
97
54
145
74
72
107
76
133
90
59
108
106
130
147
124
106
102
115
151
129
129
83
108
111
157
153
112
133
159
166
98
103
144
107
77
126
80
138
139
130
158
172
91
109
81
139
110
108
167
123
146
106
105
127
95
127
77
114
85
108
149
111
49
116
126
117
165
141
103
152
123
98
139
139
143
54
133
105
141
190
125
80
113
95
93
108
57
114
103
121
153
186
135
108
90
92
144
135
105
161
175
122
87
65
106
200
167
107
104
121
77
135
93
122
120
90
137
103
137
114
106
85
54
123
125
152
135
146
166
155
98
90
108
74
103
117
106
139
94
94
95
54
96
151
144
131
123
206
114
68
81
102
129
165
81
147
74
113
149
158
100
86
115
150
108
83
120
81
102
122
95
108
146
109
144
132
92
135
127
141
127
147
121
125
106
54
81
88
127
115
134
127
108
115
106
155
131
116
135
172
141
57
95
112
127
117
93
98
122
106
162
112
151
168
165
101
81
83
143
112
155
54
88
79
127
166
104
146
137
134
129
113
125
102
67
144
152
108
91
126
54
71
160
102
137
89
97
57
157
125
152
97
106
85
106
49
159
103
125
85
142
90
98
124
101
90
75
108
145
139
103
97
105
148
141
144
98
105
80
123
106
113
139
103
92
155
142
102
106
110
129
93
102
90
107
100
74
144
104
177
107
54
129
144
148
98
131
119
114
103
100
82
147
77
74
146
150
73
135
81
115
102
115
116
120
129
83
69
119
87
113
172
97
88
145
141
115
80
133
97
115
148
113
113
104
133
115
140
149
77
105
168
125
105
133
73
95
74
102
108
95
141
168
200
82
145
119
96
134
93
125
102
132
107
126
143
104
87
168
107
76
54
113
158
146
59
62
148
152
114
124
112
131
109
54
133
145
202
102
111
98
98
106
127
49
101
124
54
167
93
170
105
155
122
106
80
110
80
128
81
168
106
98
153
97
108
74
128
61
121
107
54
107
109
94
78
101
99
142
113
54
90
49
102
128
148
142
157
54
139
118
128
77
93
115
105
97
93
152
89
103
177
133
133
102
76
122
113
141
95
158
165
125
126
148
127
133
108
158
93
93
95
156
76
85
134
108
98
54
175
98
101
148
98
123
142
98
95
111
88
54
81
78
105
114
143
76
195
107
98
124
147
95
92
102
151
177
113
68
118
106
54
70
49
120
135
110
97
105
136
127
172
96
122
96
85
115
135
118
120
93
109
117
106
85
149
107
104
124
107
133
123
85
141
194
103
79
150
131
135
139
81
113
120
139
113
121
139
88
110
200
105
54
134
87
98
121
103
194
115
84
162
88
93
100
122
103
95
176
177
98
100
144
180
95
102
140
105
118
122
127
78
146
122
100
87
146
122
102
103
110
68
169
145
54
109
120
121
104
133
177
131
95
109
115
102
110
128
119
123
162
105
101
120
187
138
106
102
118
126
103
77
99
95
125
141
125
131
102
134
108
98
119
108
135
106
105
119
156
158
139
174
85
65
83
143
105
99
133
154
158
67
74
165
95
114
133
81
76
102
77
159
82
99
144
82
132
144
103
107
119
136
113
110
92
77
146
127
109
95
144
129
54
157
101
59
80
59
54
131
125
150
108
115
87
186
98
93
97
148
157
135
95
95
59
128
72
102
108
93
99
90
128
124
139
84
116
49
94
158
129
116
145
143
102
132
93
93
148
103
95
123
102
144
82
90
106
124
54
102
97
140
119
148
141
123
125
94
141
125
148
93
115
113
158
155
77
124
104
113
138
133
85
85
97
140
144
118
127
93
78
81
149
107
91
124
73
98
154
199
148
161
132
108
113
140
124
158
104
113
101
116
111
59
128
107
89
85
93
91
80
123
143
161
95
160
68
102
74
137
138
108
148
129
151
128
54
110
158
80
108
127
147
113
137
112
102
144
117
82
78
104
138
112
145
74
119
86
103
132
143
139
128
111
98
87
61
106
131
69
102
98
61
154
85
160
141
94
93
138
95
140
108
120
134
95
179
106
143
133
140
76
147
61
117
129
54
126
147
129
101
69
81
129
95
192
108
92
116
87
127
157
103
108
90
175
112
91
101
91
83
118
121
146
98
95
140
114
102
122
128
76
111
101
82
85
81
194
113
136
112
49
135
81
114
180
85
95
84
149
108
151
120
95
102
137
92
95
105
78
87
102
89
105
147
159
118
111
179
102
135
97
147
69
141
167
103
125
186
149
103
77
118
130
131
95
59
86
87
81
109
86
80
108
119
155
131
54
108
117
54
96
147
120
140
115
54
103
97
104
119
103
143
115
128
113
125
132
170
87
119
102
103
54
74
148
166
125
108
133
115
139
131
139
102
137
215
92
109
144
102
140
113
84
54
135
142
115
151
131
84
91
76
117
138
131
99
99
95
65
127
144
72
90
129
108
128
76
78
235
109
134
80
165
90
54
184
143
128
114
123
91
98
112
150
75
54
134
122
76
69
113
140
91
161
74
130
73
106
123
99
143
89
174
146
149
83
131
96
119
95
82
105
115
158
122
144
95
120
168
109
128
100
114
108
96
141
104
126
118
141
108
122
85
116
131
130
136
153
143
95
128
96
134
96
81
85
95
85
151
106
95
134
81
115
81
120
106
103
85
136
93
77
148
133
150
77
118
144
152
177
111
96
98
102
90
111
205
130
125
129
108
124
156
134
108
102
115
103
156
83
130
129
153
115
87
67
125
122
98
144
98
98
93
91
59
102
102
92
128
127
90
171
93
121
165
87
122
109
139
87
125
114
81
119
139
157
102
91
115
88
108
93
112
127
136
109
144
139
98
131
148
119
132
74
97
118
91
54
65
127
85
119
145
98
87
104
168
147
176
143
119
108
123
145
145
150
87
115
76
148
91
73
142
196
191
131
148
91
142
106
102
135
148
102
96
112
138
133
54
110
163
102
77
112
97
116
128
54
61
114
117
135
87
68
120
129
93
144
102
101
133
97
106
142
113
61
177
129
171
183
77
102
113
70
107
102
105
54
106
105
161
87
112
213
118
108
108
88
123
95
140
54
82
138
116
123
87
170
96
121
146
139
135
166
125
107
143
68
130
99
148
135
124
104
115
90
157
102
104
112
118
54
146
127
129
161
109
122
160
135
95
95
105
146
127
210
109
96
93
145
102
90
186
133
131
116
129
123
118
171
164
169
138
135
127
144
87
160
134
95
157
112
109
69
136
112
81
96
91
145
135
74
123
86
59
124
116
165
122
123
90
95
125
135
112
80
128
59
124
98
81
113
81
107
110
142
186
83
134
142
146
91
93
69
90
133
144
78
150
93
97
169
145
86
140
111
132
90
152
191
96
108
118
115
95
115
102
105
125
80
156
103
93
102
172
98
125
134
137
120
133
75
179
107
124
135
91
115
153
146
95
142
188
91
146
77
103
105
103
95
139
95
119
80
105
98
141
114
120
94
110
93
83
116
127
71
126
61
144
83
112
108
148
102
142
149
114
105
98
135
49
109
121
96
105
122
102
118
120
123
129
113
106
143
54
167
150
120
122
114
81
49
135
93
81
180
155
54
113
112
167
106
90
108
110
180
120
183
137
158
108
134
76
104
90
144
91
133
103
114
128
147
120
93
106
113
54
93
133
137
103
133
158
134
207
86
67
122
133
97
143
111
102
120
103
114
113
108
54
108
95
148
90
115
123
102
54
119
105
143
83
129
108
148
102
127
113
96
141
94
154
84
120
92
108
99
102
105
98
106
149
107
114
87
105
140
98
108
114
81
130
74
105
108
123
83
146
85
115
74
96
117
122
167
135
143
148
108
161
84
108
84
54
128
77
109
131
123
103
110
158
92
82
151
108
149
155
88
159
120
99
150
156
98
115
144
135
119
143
101
143
54
87
115
109
193
62
161
131
123
126
99
77
54
134
89
130
133
116
108
143
131
104
122
105
98
77
150
132
119
111
81
139
97
59
98
54
87
108
87
104
89
102
132
77
152
87
77
150
178
144
156
112
108
146
118
128
54
78
74
128
59
145
142
76
123
95
104
83
127
93
106
138
133
150
110
140
95
120
151
121
106
120
156
108
186
78
141
100
143
140
87
93
115
103
91
54
144
122
59
89
95
128
128
111
129
99
121
118
118
54
147
91
134
156
103
103
98
109
130
74
82
108
119
54
115
95
114
113
118
88
54
67
172
162
95
83
91
170
59
93
178
130
165
137
81
146
158
98
101
54
105
134
138
118
111
133
85
95
54
123
96
121
194
139
129
98
73
68
78
158
83
139
83
142
167
102
94
76
118
105
127
105
147
105
106
141
102
102
54
105
158
143
127
76
147
95
128
78
149
77
113
108
121
93
108
83
75
82
108
77
95
108
159
129
119
114
81
150
59
128
180
150
117
128
108
114
134
127
128
115
97
154
103
108
98
93
84
61
169
144
177
111
120
112
98
45
138
83
165
115
126
91
146
121
159
117
128
135
107
103
131
54
119
141
104
54
131
161
85
104
141
72
133
141
147
91
81
95
130
102
116
54
131
115
98
90
128
163
94
87
77
140
98
111
108
131
69
171
108
122
113
77
76
125
93
149
98
141
96
122
136
88
117
145
128
143
135
118
69
168
54
135
125
54
90
133
116
95
93
113
133
105
93
93
115
139
114
127
97
116
102
105
143
148
129
135
95
148
127
148
109
120
80
185
166
154
101
95
106
49
132
110
171
101
134
140
79
146
114
157
115
105
54
102
188
86
57
67
87
97
103
130
125
154
120
128
83
143
160
119
235
54
129
151
107
150
96
102
98
150
71
140
155
93
92
133
61
101
144
96
157
98
123
114
59
135
102
102
162
103
110
144
172
103
102
142
95
105
113
124
122
95
113
131
80
100
107
163
134
81
111
105
108
109
139
87
188
154
180
156
67
73
90
139
146
125
165
91
130
124
129
129
127
168
115
129
91
54
91
125
112
122
95
108
123
107
117
111
106
168
114
128
113
115
101
138
42
127
104
98
98
105
136
118
130
98
114
126
119
150
115
127
152
67
147
107
128
113
124
130
141
128
119
147
144
146
102
113
151
140
112
130
181
83
93
49
115
127
84
102
117
95
77
138
93
150
108
105
118
102
116
100
144
86
104
86
138
132
54
122
158
102
82
111
139
80
120
106
54
54
139
129
59
127
126
80
139
95
131
49
98
79
97
105
106
136
99
149
91
154
102
110
98
160
133
67
79
167
99
105
131
86
120
141
54
85
99
111
96
98
83
140
135
115
77
80
90
108
106
54
110
112
161
135
167
59
111
131
110
96
115
84
160
54
131
112
132
133
97
139
120
102
123
72
161
126
143
88
49
98
113
93
149
61
103
118
92
91
81
105
67
99
131
90
103
82
146
110
126
98
95
144
49
103
144
115
124
108
77
108
164
170
103
78
163
161
167
54
96
85
141
126
130
84
141
149
139
108
54
96
126
103
85
114
110
93
161
95
125
129
101
142
133
149
140
54
98
108
141
98
113
109
150
93
143
112
126
145
106
102
54
101
144
146
81
116
137
112
102
95
103
139
98
113
127
93
97
135
153
132
128
54
105
150
129
102
70
159
116
104
131
80
142
156
93
80
138
97
155
150
98
100
85
100
54
73
156
90
96
123
182
105
177
107
107
59
59
98
137
121
137
190
149
138
91
145
125
128
127
77
115
120
54
95
129
112
90
135
150
146
128
54
95
144
103
119
116
90
139
184
76
131
106
128
177
82
128
115
76
132
101
100
124
99
135
102
149
143
82
81
86
120
77
134
94
114
166
103
123
162
156
160
129
118
161
115
65
122
102
147
117
73
135
82
87
116
143
95
107
67
156
135
132
49
108
89
177
108
135
144
138
117
132
124
159
90
54
131
68
76
135
102
112
132
76
115
71
87
108
146
109
183
85
106
84
102
49
102
83
95
67
81
94
219
143
138
148
138
117
127
127
54
127
78
108
157
109
115
107
119
110
99
106
109
82
80
184
148
99
172
125
100
95
86
103
127
108
121
108
115
91
85
107
96
61
113
115
104
170
122
125
116
108
87
67
84
152
116
114
95
93
102
100
103
79
138
131
116
122
130
88
139
91
189
68
96
185
118
87
153
116
139
143
145
108
148
157
194
108
114
115
128
193
144
108
66
115
206
125
102
105
113
148
112
144
118
125
109
107
99
149
180
137
130
87
177
67
214
88
85
127
95
149
95
120
141
182
105
95
95
124
133
130
79
96
77
93
84
159
122
115
119
190
104
115
54
201
98
49
87
125
144
177
54
80
61
117
49
120
177
87
102
85
107
95
89
116
90
108
107
133
140
87
144
121
87
127
133
133
139
135
141
112
83
88
109
114
107
143
135
104
159
161
98
145
94
106
77
149
130
85
108
80
109
110
87
151
133
80
98
138
178
105
134
113
139
122
54
76
110
122
87
148
113
123
161
108
120
95
69
77
113
161
54
54
81
119
142
89
74
74
54
153
143
152
148
77
106
102
138
159
146
125
119
110
163
143
83
161
131
119
161
114
82
115
119
146
144
131
90
146
78
145
104
113
114
123
113
145
144
140
98
112
146
102
131
84
95
87
94
113
83
180
131
116
113
144
95
154
137
143
102
81
93
116
106
141
105
113
118
85
125
119
142
54
113
156
128
129
95
140
112
106
131
133
155
91
152
108
133
81
110
133
85
122
97
61
78
104
158
130
112
95
49
140
97
102
102
90
89
144
82
144
96
65
85
132
74
132
108
125
124
158
105
120
96
147
102
79
107
108
129
49
79
108
118
95
134
98
135
157
83
99
111
102
98
144
165
81
111
101
88
95
159
104
74
45
101
121
107
130
147
67
76
137
67
150
159
106
106
148
148
146
118
102
154
80
151
112
105
102
150
114
103
152
86
108
95
197
145
123
164
83
109
107
107
151
152
106
108
87
177
148
125
93
107
142
103
145
190
102
123
108
107
124
95
143
76
90
101
81
83
87
97
83
146
81
131
125
133
108
141
148
81
105
167
146
78
99
89
83
105
160
113
96
103
179
168
110
95
74
101
121
143
149
54
121
124
148
169
100
97
90
90
87
124
122
98
107
106
123
128
106
96
138
144
160
161
128
157
54
95
95
106
127
92
111
116
80
108
131
68
145
92
179
159
130
135
113
115
138
95
101
89
127
102
76
54
160
117
142
141
87
61
82
99
226
98
140
80
54
100
134
143
125
101
151
144
98
95
87
121
103
111
98
116
179
95
119
88
84
76
112
129
125
115
54
108
125
167
143
112
95
121
137
119
78
147
134
83
138
106
101
83
138
133
141
95
95
103
97
144
112
123
82
95
105
110
127
91
91
91
124
143
92
118
108
135
108
145
127
177
95
95
172
122
124
104
126
78
144
74
157
128
131
74
73
98
99
105
100
165
114
98
95
115
107
125
177
59
105
110
61
124
98
135
135
157
103
106
120
91
45
144
129
102
142
101
61
95
113
126
130
121
111
86
76
132
54
137
95
105
120
131
84
95
165
100
132
143
143
131
83
148
112
89
54
111
112
113
125
141
140
120
72
100
116
109
102
95
129
139
139
103
178
144
99
119
138
54
85
141
104
160
98
49
100
168
123
72
76
97
138
102
107
82
74
93
123
59
74
81
74
103
96
120
104
101
140
103
144
134
67
123
122
98
117
105
54
94
142
133
81
105
159
134
117
120
180
79
107
160
95
78
142
165
156
160
191
139
169
169
67
126
116
133
121
156
74
132
129
127
94
108
158
74
120
155
122
77
96
118
103
167
97
124
133
113
135
113
107
135
67
108
158
169
172
145
116
147
95
158
140
91
144
95
129
148
108
90
96
77
103
132
108
108
126
104
125
135
158
119
102
109
89
79
125
115
120
128
167
95
163
104
113
172
141
96
81
83
123
102
113
116
127
113
144
177
141
107
150
118
93
158
101
147
84
54
82
93
67
105
54
151
130
122
90
77
82
133
81
122
102
143
113
102
144
102
117
132
101
78
77
54
93
54
122
103
132
49
143
72
87
117
106
140
117
152
54
107
113
96
143
144
108
65
101
83
114
149
74
98
159
127
67
126
120
102
133
113
121
145
131
148
85
125
76
94
165
92
93
49
115
78
104
113
109
106
96
111
83
121
89
138
165
96
86
85
120
112
76
144
82
122
124
109
154
127
111
112
127
112
105
125
125
131
153
125
117
59
88
159
110
143
134
99
144
175
121
74
102
104
133
140
108
109
128
127
145
83
149
113
97
54
74
92
102
148
147
110
129
108
102
87
94
54
140
82
186
168
107
113
100
109
132
144
89
180
103
116
77
69
145
137
145
128
76
113
144
132
87
127
101
98
117
115
153
67
157
147
105
90
81
85
127
122
95
120
102
121
115
135
100
105
76
82
137
81
74
139
105
121
143
89
98
54
104
119
133
183
49
115
113
135
90
133
149
142
139
97
114
141
123
139
129
111
127
98
133
91
125
81
127
54
158
125
98
139
130
157
111
92
82
107
95
156
74
127
95
113
93
171
153
96
97
84
84
54
127
144
163
125
142
137
85
120
112
82
96
126
127
134
107
135
116
114
98
125
98
74
127
140
98
122
143
98
54
106
123
176
118
153
102
109
82
108
166
148
131
138
108
94
148
70
111
148
128
133
113
144
126
76
144
110
84
79
112
117
165
68
81
110
102
78
115
150
96
69
87
92
139
108
98
148
100
95
99
102
158
150
148
125
78
127
106
121
120
80
153
68
116
134
95
140
108
127
106
78
135
54
111
136
111
98
98
133
96
81
129
171
161
117
140
108
59
91
82
137
102
126
49
129
162
113
103
96
54
127
125
80
113
82
102
116
98
108
102
102
135
98
140
76
108
105
98
118
101
218
84
96
120
100
147
98
114
108
118
82
165
107
142
135
150
135
117
49
113
146
128
120
105
117
88
101
104
116
139
107
148
155
54
138
111
145
123
76
90
133
103
109
117
108
127
156
54
155
75
152
185
81
95
153
85
95
165
123
96
81
124
118
99
98
141
59
113
160
143
119
119
59
158
103
116
93
87
125
113
127
144
177
173
134
144
54
82
83
135
114
142
114
54
96
125
49
99
130
134
93
110
136
153
92
122
113
151
49
151
102
106
108
125
80
128
137
118
114
91
88
143
109
140
123
82
76
87
103
103
90
123
59
138
77
87
108
78
74
103
96
135
119
94
119
98
132
82
116
72
82
74
67
98
107
134
109
120
96
160
115
108
79
93
79
126
142
177
118
133
144
69
145
93
147
84
86
102
139
137
98
110
140
110
152
118
129
93
49
157
161
144
167
156
131
118
161
151
116
102
102
146
97
115
54
95
120
49
125
168
136
90
148
122
113
90
76
138
122
137
146
127
115
118
125
139
107
106
95
90
158
134
54
89
97
127
116
143
146
104
132
118
130
74
135
104
108
45
149
131
143
163
138
133
140
115
102
133
129
132
148
141
109
113
117
170
100
98
119
108
99
90
76
135
118
82
82
87
104
135
132
94
122
112
105
78
93
163
157
95
135
120
127
83
73
105
74
122
172
105
103
190
145
148
94
112
54
98
98
150
173
125
149
102
105
123
149
135
105
148
74
89
135
128
138
97
144
122
59
147
95
118
45
117
139
122
87
117
122
148
126
144
141
108
125
92
129
49
121
126
130
85
159
101
107
148
135
98
139
54
108
90
109
123
145
145
197
133
97
113
148
133
141
129
102
146
157
104
116
106
160
127
102
108
92
111
126
107
108
125
81
120
135
168
126
85
86
76
90
81
87
168
136
82
104
131
144
105
148
81
89
177
107
115
102
103
87
133
117
94
148
98
121
191
137
145
180
113
96
61
212
128
93
113
108
114
157
135
83
180
143
54
95
93
93
146
148
125
108
152
137
99
135
106
97
90
141
88
131
98
143
112
150
131
111
90
54
110
158
88
104
200
147
73
144
63
103
81
120
146
148
92
96
78
94
128
95
87
103
139
102
125
121
108
152
49
103
105
95
112
120
96
139
129
108
138
135
76
126
93
99
142
148
150
77
117
142
179
143
95
139
74
134
138
94
115
125
105
128
136
122
150
100
95
83
90
116
80
95
89
124
115
81
87
146
103
148
95
135
122
103
160
49
113
49
125
180
119
99
87
113
134
121
124
104
131
148
101
85
68
106
123
84
109
172
122
74
77
129
118
118
114
187
54
124
59
83
67
127
112
102
105
119
54
141
101
83
151
110
108
113
171
103
146
100
160
86
93
145
74
136
122
54
119
95
97
156
161
59
108
103
150
120
103
80
163
139
97
119
95
147
102
125
54
120
104
94
149
118
97
143
120
194
81
137
144
77
98
103
112
157
95
82
97
139
97
89
97
67
155
97
78
84
123
113
81
214
144
147
169
91
49
160
80
91
69
49
139
98
111
87
68
86
98
143
92
170
144
120
109
121
54
143
54
120
108
130
78
131
149
140
90
54
128
76
125
151
125
84
101
78
158
114
130
123
74
128
138
80
54
144
186
156
93
141
134
54
78
82
135
132
127
102
54
74
133
132
135
161
74
133
117
97
89
85
164
112
148
49
114
158
118
117
54
151
112
112
96
102
137
122
93
81
139
124
104
115
110
166
96
179
146
104
134
161
126
80
123
190
119
113
106
177
106
108
135
81
107
177
102
101
126
158
151
103
101
152
133
76
144
54
149
61
102
61
147
131
135
59
141
143
123
109
54
95
95
102
103
71
90
133
107
54
114
68
74
200
160
150
102
54
119
128
85
144
127
112
120
129
143
96
76
78
110
159
49
49
108
116
135
145
81
148
123
105
108
120
109
172
121
81
127
146
124
177
107
117
124
113
147
79
76
80
118
111
102
144
78
113
74
126
176
120
93
95
120
97
107
107
49
98
102
102
54
98
131
110
172
154
95
184
120
118
98
77
103
115
59
101
49
116
81
160
139
105
131
100
88
108
83
101
110
120
154
75
123
86
128
143
102
101
77
107
137
54
156
158
108
99
173
104
95
87
121
139
109
155
179
158
67
107
130
117
122
74
102
77
91
76
102
118
137
124
108
154
92
122
117
95
120
87
94
131
100
98
54
124
125
90
161
101
152
156
87
49
96
127
118
141
103
113
103
138
112
95
143
123
116
125
112
119
140
192
70
105
127
140
102
98
95
106
81
95
133
106
101
81
151
133
118
160
108
114
93
130
129
157
115
86
104
67
199
130
90
113
104
49
109
102
95
171
131
128
143
123
105
94
76
99
107
141
115
89
135
164
84
136
139
102
133
131
143
108
81
125
157
81
90
54
98
88
115
145
108
117
95
118
144
105
116
128
139
145
158
107
130
123
154
117
77
124
159
130
141
94
107
133
130
98
54
91
177
54
142
102
104
160
99
83
118
131
131
110
102
119
100
106
115
122
108
113
105
78
101
163
121
134
83
110
127
173
114
115
106
151
103
133
105
97
54
173
131
87
160
99
123
49
82
135
107
65
80
148
147
129
127
115
146
103
83
99
108
125
98
141
98
86
102
112
93
54
102
126
120
138
115
128
54
144
94
177
143
102
105
121
103
87
125
105
81
96
116
54
54
81
102
113
143
119
139
102
112
149
117
87
123
132
101
110
98
128
70
160
106
135
77
87
107
131
135
108
95
197
103
134
151
108
140
140
177
157
136
68
61
133
109
134
115
83
125
155
108
111
78
145
67
87
140
112
54
141
123
133
102
172
135
186
69
108
110
134
159
134
95
113
90
141
100
103
95
69
142
144
117
184
123
65
129
106
59
81
140
113
61
169
143
54
83
100
115
105
128
112
150
124
98
227
133
103
61
97
104
128
116
54
107
110
128
98
126
103
131
87
148
105
126
96
141
119
159
168
140
97
130
145
125
135
91
167
148
135
121
77
139
95
107
122
110
148
117
146
108
125
98
147
143
129
161
90
108
74
123
117
87
103
92
108
99
116
81
102
90
144
129
125
92
135
135
123
94
100
105
101
54
106
187
110
73
116
84
144
145
111
101
100
101
155
172
129
108
59
122
100
103
91
171
169
118
54
149
154
154
67
77
106
181
101
80
106
116
49
98
179
93
86
83
125
105
82
138
140
96
164
81
139
132
192
90
95
81
142
117
97
101
115
151
107
118
118
171
115
138
91
127
100
135
120
104
155
98
110
151
87
129
128
93
110
157
144
151
93
177
54
114
119
103
108
108
113
123
155
129
110
90
146
125
131
114
95
97
149
123
98
95
119
95
54
49
133
114
105
80
76
54
114
82
92
169
90
76
102
95
137
107
101
117
103
119
135
78
140
120
93
103
143
133
131
123
104
120
113
130
100
108
118
138
177
54
115
117
125
100
119
145
54
74
98
102
118
85
148
136
49
120
95
133
173
102
84
131
84
49
101
123
133
107
75
87
143
89
124
88
95
106
129
115
138
105
82
82
135
126
123
150
117
125
59
104
115
125
168
140
187
102
118
102
166
106
133
101
98
140
84
136
112
113
154
107
116
108
112
99
125
176
107
104
159
77
189
86
95
87
96
124
173
98
136
106
112
98
166
102
114
81
100
113
54
137
93
188
82
82
102
54
61
103
114
132
161
102
120
129
120
102
91
143
113
133
130
106
98
49
151
113
81
78
123
135
162
104
130
128
77
81
95
74
77
110
77
49
199
105
59
68
133
108
103
132
127
163
81
95
138
112
145
85
61
108
113
103
104
127
135
112
81
85
218
152
103
89
74
106
155
77
113
122
190
96
143
86
121
59
130
116
91
92
116
123
105
102
95
95
70
81
104
110
105
115
122
137
165
110
109
102
103
69
89
90
95
123
128
111
138
136
69
120
95
148
118
172
102
218
124
69
49
132
104
127
141
101
122
154
124
110
49
94
119
125
148
113
122
115
95
142
81
78
104
108
74
97
167
81
102
137
172
124
81
82
117
95
126
97
125
102
120
102
99
131
147
67
83
205
126
135
103
148
117
74
118
108
95
101
74
108
131
122
107
102
170
92
120
101
154
90
113
133
88
108
122
76
54
151
54
77
133
166
77
102
120
78
145
114
176
134
148
149
135
93
70
74
154
123
54
120
145
124
124
125
93
144
135
131
112
106
106
104
143
101
122
106
112
124
147
49
102
104
148
83
98
108
86
70
118
159
98
125
104
95
110
74
95
114
130
146
132
134
100
110
103
83
148
127
128
107
169
135
113
138
91
123
90
148
82
62
95
105
105
54
84
158
108
120
96
133
106
107
177
121
153
117
117
82
131
97
161
115
168
120
97
49
128
132
92
125
133
137
119
125
54
95
158
129
125
133
138
67
76
194
95
96
159
110
124
99
135
104
95
54
110
54
143
97
114
54
199
59
83
85
167
54
103
61
120
81
98
121
94
100
98
87
105
78
132
78
54
131
122
149
78
137
164
91
136
59
142
131
81
158
116
114
124
132
83
154
104
54
112
96
98
148
102
94
106
81
102
127
92
147
108
82
96
164
121
54
93
135
92
153
161
81
110
108
149
92
105
120
156
140
90
69
104
145
113
104
86
105
118
136
151
139
83
103
125
133
102
74
54
138
110
95
105
144
151
168
146
92
101
103
146
54
121
180
115
108
102
100
141
91
122
149
151
147
125
120
127
81
68
159
49
98
84
103
110
148
104
130
97
107
102
67
149
115
159
80
85
127
154
140
156
131
98
117
90
102
97
108
85
141
100
115
100
54
145
101
138
157
131
149
146
127
75
123
160
107
102
139
177
107
163
95
118
114
161
106
108
121
105
90
110
54
54
107
104
81
97
129
156
98
74
54
77
148
162
169
135
124
117
95
107
104
135
108
133
165
131
146
111
98
131
125
150
125
87
106
121
102
81
110
94
147
105
96
54
133
105
105
77
116
101
128
129
147
90
179
108
148
126
180
103
85
108
117
110
148
102
96
108
49
116
92
90
107
120
98
96
125
119
54
90
97
108
115
89
102
153
128
124
154
107
54
54
150
117
101
143
145
61
108
112
86
97
113
102
69
125
97
103
143
176
106
104
101
120
118
102
149
101
96
126
147
95
111
129
127
106
138
105
118
49
105
79
120
126
153
93
112
68
126
103
127
95
81
128
54
125
93
90
159
93
169
116
173
90
108
102
200
95
90
138
108
140
59
105
119
87
98
125
144
54
81
124
93
95
81
90
108
138
202
81
76
135
83
102
49
122
161
99
142
124
80
96
144
149
54
104
87
112
104
143
81
103
108
145
54
177
77
158
112
148
106
151
128
124
77
91
83
93
113
163
160
128
117
100
106
153
81
80
93
102
142
54
103
81
108
117
104
105
198
105
95
134
132
131
128
90
167
122
59
108
95
113
77
133
108
110
117
81
116
133
81
101
128
108
115
101
177
102
104
121
144
90
140
133
88
171
106
90
138
77
119
116
105
76
170
84
54
87
115
132
102
144
125
104
112
124
102
78
108
140
155
143
108
102
116
143
134
102
109
102
88
122
138
126
99
107
122
124
131
154
86
176
54
124
93
117
147
136
142
81
54
87
109
110
150
103
105
135
112
172
112
140
105
128
90
54
96
96
115
125
145
88
77
67
91
99
95
132
210
90
96
123
168
101
149
110
123
54
106
132
67
110
129
90
128
82
102
132
155
116
129
54
132
120
107
95
108
116
135
97
148
113
100
108
59
69
102
61
102
81
89
134
127
125
83
149
102
93
78
98
153
148
67
141
199
49
81
125
159
81
112
133
89
125
141
177
105
129
89
196
81
115
157
112
140
93
90
129
135
54
128
123
93
111
108
129
84
102
128
142
97
148
84
178
96
102
121
183
156
116
97
131
98
81
113
124
115
96
113
147
102
149
130
104
177
93
102
140
109
126
121
156
82
165
177
125
119
148
101
125
106
132
143
54
123
126
74
103
106
128
108
148
119
105
122
113
138
102
101
122
131
143
81
67
145
113
115
119
156
137
54
77
87
96
49
127
99
137
131
82
112
107
108
108
111
81
232
140
105
138
129
131
144
97
181
81
90
129
148
93
117
98
104
124
163
151
127
76
75
138
102
177
54
102
126
123
118
103
105
145
143
103
200
107
82
140
77
127
90
145
102
148
83
177
98
88
123
87
105
112
108
134
81
101
108
106
74
135
101
137
137
128
148
88
174
143
118
141
143
119
104
98
121
101
112
144
107
102
102
193
95
83
77
141
125
113
84
69
95
79
141
148
102
135
67
180
148
92
113
54
98
74
95
163
54
93
85
84
161
115
117
65
115
102
119
101
61
67
170
89
83
128
137
82
102
120
107
159
141
138
107
86
110
115
118
130
93
140
152
131
108
95
118
107
54
76
108
129
113
95
129
133
108
93
91
83
95
161
78
93
117
110
116
112
151
106
82
102
112
167
106
163
140
108
108
84
115
149
102
77
142
95
95
158
143
61
120
124
90
90
97
70
91
97
134
131
154
132
133
79
90
115
120
102
124
104
54
100
105
148
54
76
141
120
54
122
160
109
140
107
158
97
131
116
105
67
129
120
90
123
122
193
100
93
105
133
148
117
121
90
112
140
98
127
138
88
107
91
73
121
177
146
129
69
115
131
81
115
131
95
82
82
98
196
85
167
106
136
187
133
74
101
113
104
102
129
108
74
81
123
94
126
92
88
116
129
54
128
128
105
95
110
149
102
101
126
80
135
96
103
95
173
137
91
161
199
106
102
95
59
142
89
110
76
100
115
90
103
140
135
127
84
103
103
162
146
119
127
76
104
102
130
138
87
129
115
125
102
124
120
133
126
120
108
113
131
59
141
70
111
114
131
114
109
103
54
54
77
146
105
123
123
145
129
161
83
82
154
125
145
148
146
85
105
93
116
156
162
124
148
59
107
123
160
150
141
49
128
91
144
138
67
129
105
101
117
68
81
54
82
122
85
108
125
117
81
135
117
124
108
83
123
182
115
158
115
108
115
90
128
102
108
131
143
139
200
153
131
96
152
81
103
102
137
129
105
87
108
126
97
76
107
102
108
67
92
131
110
164
80
160
137
103
54
120
113
134
129
104
161
77
102
149
167
130
78
124
68
95
124
115
165
109
123
160
110
96
133
63
160
131
148
102
81
123
103
103
129
161
137
133
133
75
103
96
54
99
87
148
54
127
105
78
117
149
127
98
150
146
110
121
114
124
93
122
133
127
81
103
160
104
113
150
114
116
102
90
98
161
90
125
90
82
152
98
141
97
142
96
113
139
107
54
123
127
103
78
98
54
95
167
112
95
149
179
116
69
165
145
95
91
92
103
139
105
107
145
127
119
113
200
87
124
91
146
86
140
159
81
127
113
159
98
74
61
146
112
146
103
145
105
110
125
131
105
105
116
131
118
103
93
96
130
93
145
84
159
87
129
104
167
147
96
122
49
125
160
133
93
161
87
126
54
143
123
120
67
98
149
95
113
110
141
134
103
171
119
128
82
87
113
153
171
141
81
111
123
107
135
120
108
114
107
124
184
100
100
59
163
119
151
80
114
98
131
130
106
122
101
127
95
108
98
108
54
74
97
150
125
136
109
87
93
73
114
140
82
84
98
113
148
95
102
102
120
101
126
163
103
168
115
107
109
151
134
95
155
98
127
108
155
96
106
147
95
125
187
133
102
78
118
54
93
83
77
147
82
108
116
132
135
171
87
95
134
95
99
93
127
142
152
49
108
85
93
96
167
140
116
136
104
108
93
135
106
150
95
157
164
141
83
74
110
152
103
163
161
112
138
91
135
98
128
132
175
119
105
61
85
93
116
89
121
146
140
113
113
103
118
54
97
116
135
113
108
148
113
74
119
90
135
83
118
78
139
98
116
96
154
150
127
127
171
148
110
127
110
88
112
146
167
99
97
124
147
123
111
158
95
150
85
120
113
118
123
133
152
116
101
110
115
78
169
124
147
68
102
54
114
139
115
104
97
70
107
153
126
91
102
170
140
141
81
77
133
68
119
102
103
135
137
76
108
145
119
54
108
107
109
157
141
135
146
113
139
129
103
139
154
171
180
83
93
104
108
112
195
158
127
92
120
83
121
151
59
77
154
123
96
92
102
108
54
122
122
107
107
74
98
67
81
91
131
91
143
127
111
131
101
83
74
99
166
108
90
109
189
149
120
129
90
97
91
95
88
105
124
175
113
189
116
107
110
148
158
95
76
93
83
101
54
103
103
112
108
115
101
49
132
125
184
91
100
152
108
126
112
143
129
136
106
135
103
191
95
86
54
103
90
129
94
127
132
125
143
107
167
129
150
99
125
119
106
154
145
173
96
105
134
87
107
127
82
117
129
82
97
54
90
140
81
54
83
93
112
125
141
122
108
105
107
125
134
72
134
133
90
132
94
125
102
61
140
91
183
194
97
132
137
148
127
138
92
104
68
125
148
87
76
74
129
163
59
130
132
88
104
109
123
127
123
105
153
109
69
80
84
144
153
96
59
137
112
76
80
131
98
102
135
103
113
157
73
125
76
158
131
112
179
95
164
81
111
125
112
108
56
131
117
106
99
108
117
81
125
119
94
170
140
106
129
116
96
104
98
109
128
93
59
103
158
103
165
134
157
95
100
103
91
87
106
135
128
76
95
69
92
139
133
111
133
118
90
145
83
172
102
127
132
78
80
179
122
114
106
118
132
54
156
164
104
61
74
113
95
121
119
54
106
97
82
88
80
181
131
86
135
78
94
101
125
147
114
125
142
135
189
127
104
113
129
131
90
49
122
132
82
117
125
129
91
94
120
91
54
94
97
59
103
163
97
105
199
106
108
103
122
137
59
118
95
166
113
68
115
200
108
96
108
148
200
90
112
146
105
79
54
156
77
102
59
98
78
146
200
93
93
169
93
102
49
129
108
122
164
155
134
106
81
115
90
54
95
107
124
135
102
67
133
102
182
97
74
101
54
101
106
95
119
107
102
108
140
144
139
108
105
108
108
125
131
84
134
84
98
54
93
128
104
96
104
155
117
120
90
67
146
139
142
93
125
67
139
74
96
106
127
133
54
80
112
102
153
163
128
179
115
115
89
146
54
103
94
107
128
76
120
140
102
113
98
95
140
148
77
134
144
109
113
127
78
102
102
104
112
145
85
92
129
79
123
54
110
105
109
145
177
102
87
54
86
61
54
110
144
136
69
163
83
146
135
83
156
79
128
74
98
143
118
98
49
95
96
79
147
49
141
121
83
118
115
169
75
96
163
135
130
103
135
54
169
96
77
102
107
87
67
112
120
92
85
131
106
82
93
113
111
49
83
99
96
133
145
110
103
85
155
153
109
81
68
94
61
103
84
112
93
122
103
165
90
173
49
103
102
132
163
144
93
148
108
76
98
77
123
134
148
126
54
125
108
123
113
109
154
115
152
49
119
80
95
155
119
148
117
105
120
107
59
148
103
150
118
68
95
87
206
103
157
137
113
99
167
199
125
130
49
119
133
118
163
131
92
78
172
109
169
190
102
113
85
95
81
144
118
95
112
102
135
108
100
148
87
105
107
102
141
98
96
125
54
139
108
73
121
95
100
59
190
133
78
110
88
121
114
135
83
160
110
111
110
120
218
95
125
111
97
103
154
148
148
103
200
128
108
142
135
174
126
102
120
107
145
105
95
93
106
105
95
112
97
106
59
122
105
186
54
103
85
77
120
119
95
109
149
132
135
101
129
98
114
135
120
76
171
77
116
112
174
172
81
92
93
117
95
108
49
110
109
127
78
83
69
113
119
108
136
124
107
74
128
76
87
170
106
170
122
102
130
90
113
133
95
98
113
93
95
69
54
165
98
81
127
143
139
165
116
182
100
148
106
110
86
167
81
130
91
116
142
113
81
102
148
158
122
153
95
144
137
133
127
151
114
135
154
129
115
104
81
121
144
114
98
96
90
95
87
106
102
157
129
128
132
92
103
109
112
95
54
157
125
97
127
119
111
135
92
145
152
125
61
125
106
149
145
194
144
143
166
140
115
123
140
108
102
179
96
153
94
102
83
137
146
59
150
153
145
129
81
125
103
116
106
127
119
144
82
54
107
74
106
155
125
105
144
103
107
100
143
67
98
89
140
108
96
102
104
147
108
121
91
82
112
144
103
102
94
87
87
105
128
133
84
155
49
140
87
170
115
108
127
143
177
105
95
72
112
72
118
156
81
69
108
109
170
76
83
112
134
170
106
111
119
97
93
102
97
101
148
115
95
174
163
92
158
171
125
144
76
105
120
92
95
115
114
101
125
127
122
49
153
135
117
135
127
68
150
75
97
147
89
145
90
130
54
128
97
113
114
127
112
139
135
111
103
122
49
186
124
105
54
132
49
150
118
82
128
123
98
76
95
118
131
95
54
124
54
129
146
141
89
71
227
103
142
135
171
103
136
54
54
120
90
132
153
68
146
127
152
172
131
157
59
82
139
107
145
108
175
150
124
146
121
144
127
87
145
109
90
152
91
104
105
129
118
94
102
110
154
188
130
112
130
97
98
173
145
147
98
128
109
92
135
103
158
111
108
110
67
108
61
95
114
129
106
104
150
127
171
109
93
163
102
170
103
76
180
163
102
54
100
54
101
115
151
125
108
45
77
102
97
98
103
94
102
49
104
84
96
146
124
116
66
128
135
90
68
96
128
105
125
98
107
87
113
171
130
154
149
122
121
45
171
102
150
78
158
124
107
108
65
95
135
148
134
114
77
132
113
97
96
128
148
86
132
79
145
94
109
148
105
90
108
148
111
137
49
77
108
97
120
86
49
110
119
131
82
128
143
136
96
132
68
116
98
54
95
95
113
95
70
156
97
105
123
106
141
95
94
87
139
145
133
108
92
113
103
95
133
133
67
104
135
82
115
94
143
98
135
116
115
128
150
65
95
74
118
98
123
100
102
133
81
146
108
76
150
85
134
122
90
193
76
97
128
115
146
96
105
140
155
98
112
92
91
133
114
154
122
132
119
160
104
107
134
118
113
157
81
119
103
128
157
95
83
135
125
124
149
108
162
114
81
102
109
144
54
113
87
49
93
111
161
174
128
139
110
105
114
108
82
77
134
98
54
135
131
113
148
145
108
150
140
49
106
128
85
190
108
116
115
74
126
93
109
127
158
131
102
131
76
137
135
108
118
101
100
103
148
54
116
107
145
94
100
93
68
74
93
139
128
113
95
69
106
166
100
59
151
131
100
122
159
135
81
102
108
145
120
122
114
157
78
200
115
105
146
67
131
133
174
100
115
108
159
106
194
110
98
120
127
178
177
129
109
106
133
140
143
108
74
128
103
103
93
109
120
111
108
166
111
91
177
68
104
82
54
131
148
124
161
98
103
111
108
81
163
115
102
113
102
136
126
135
122
96
124
95
102
140
145
93
110
80
146
146
227
90
146
69
133
87
108
118
131
54
108
105
170
90
59
154
106
77
103
127
123
135
105
96
115
85
182
144
133
103
74
161
103
101
93
67
119
115
103
119
129
138
85
93
150
89
122
169
128
107
125
144
82
129
112
153
105
69
129
77
134
128
76
68
73
90
97
87
121
162
132
147
91
122
149
95
98
87
96
147
100
102
129
148
84
132
165
115
117
124
110
54
67
168
131
135
76
126
180
134
72
129
106
125
98
108
98
69
140
54
88
108
97
61
86
54
105
88
162
131
90
135
103
89
193
169
113
154
100
108
93
54
84
134
93
106
125
117
98
95
153
96
125
88
93
85
166
132
173
92
110
123
83
91
108
108
202
144
156
95
189
74
133
172
121
113
81
77
97
54
107
124
49
77
182
120
92
140
127
141
128
79
165
177
168
177
125
102
103
127
136
145
172
117
133
107
153
86
122
146
133
184
150
157
49
80
127
95
95
81
128
156
95
148
119
101
90
106
98
148
157
106
106
108
97
101
54
154
115
146
120
103
177
112
150
81
87
171
185
81
77
77
54
135
90
123
129
160
170
107
107
132
96
81
92
133
111
147
108
113
148
54
91
188
115
125
162
97
98
61
59
139
130
148
134
87
87
90
134
152
177
54
177
146
148
104
133
138
77
76
117
125
95
74
112
69
108
148
102
87
136
132
102
149
117
169
120
102
69
160
97
126
137
105
98
98
95
116
92
59
168
148
103
89
102
83
123
177
128
140
108
124
114
128
90
98
94
69
90
140
107
108
97
98
97
106
90
116
154
133
76
179
134
85
90
79
83
148
120
109
112
136
86
133
112
144
80
107
153
122
106
173
112
116
103
103
116
148
98
145
170
89
102
90
100
97
98
101
115
76
161
131
99
111
143
112
140
124
105
80
97
86
116
120
94
88
93
148
107
102
93
98
54
163
129
83
128
102
102
97
89
167
145
167
131
141
93
80
138
96
129
102
116
120
119
145
61
118
117
107
108
98
98
156
103
106
120
103
61
133
119
146
77
82
76
115
82
99
195
108
108
89
105
111
99
139
190
98
108
98
153
83
127
119
119
138
134
120
174
140
93
95
98
115
95
174
91
122
175
98
86
134
165
91
59
132
123
141
192
102
131
108
100
109
77
190
158
97
155
77
98
151
113
54
132
76
111
95
184
112
100
140
104
98
74
140
116
131
135
54
81
54
122
159
144
122
105
84
133
134
84
97
115
54
108
115
131
125
146
74
74
49
191
107
112
144
98
100
106
138
179
73
107
148
59
119
141
139
112
135
123
108
131
54
164
82
106
127
177
117
98
140
140
112
109
180
144
172
112
144
112
117
123
74
125
152
149
145
117
78
105
110
118
116
98
109
87
135
98
102
103
116
101
143
101
95
108
99
103
54
134
135
170
97
93
153
92
127
102
126
81
95
126
160
108
95
154
94
113
108
118
115
131
101
139
177
74
135
54
163
90
147
49
153
108
78
96
124
95
76
169
113
108
109
139
90
103
99
81
124
149
117
100
159
54
114
96
146
180
84
125
144
157
108
76
142
105
178
148
107
149
54
108
181
95
118
190
133
107
157
103
123
119
116
92
80
102
81
142
54
158
136
91
160
172
135
113
127
77
149
77
181
127
175
168
170
88
83
98
154
171
95
145
135
123
130
151
177
141
103
82
110
103
127
151
119
133
148
77
102
81
115
118
152
90
133
120
122
104
117
158
129
98
160
129
49
134
94
76
108
74
61
124
68
74
130
139
116
138
140
69
139
115
156
130
147
108
117
108
95
106
113
162
129
85
133
152
128
68
173
90
166
108
54
149
77
90
127
54
104
87
118
97
93
158
82
114
103
188
97
104
106
162
126
95
77
91
127
81
59
180
100
126
115
98
93
111
54
133
127
125
128
149
112
125
156
115
103
138
140
168
174
106
125
79
108
141
115
104
118
82
89
159
108
95
108
71
138
102
49
84
131
118
105
138
105
156
179
97
61
144
189
127
132
89
49
92
115
81
109
133
145
150
69
76
98
156
112
143
82
108
90
49
59
99
141
115
97
145
148
81
95
82
114
98
98
81
112
135
95
71
133
54
84
87
95
70
87
108
140
91
98
121
90
139
125
95
85
170
142
148
124
81
121
113
80
177
118
175
97
83
82
119
115
134
131
67
119
136
97
100
85
110
90
121
200
54
144
102
106
113
127
97
91
158
97
104
155
76
57
181
178
118
108
129
135
158
59
138
118
128
121
69
102
125
140
120
119
141
90
117
72
132
147
102
73
74
111
109
68
59
125
54
97
117
140
110
116
100
78
129
109
105
90
92
108
87
143
147
77
106
131
93
105
87
98
87
102
78
104
76
113
73
119
84
109
141
85
89
95
107
76
95
93
144
154
111
75
98
106
126
98
95
54
118
142
105
103
88
131
125
54
106
170
96
129
101
129
93
133
81
112
163
145
54
126
135
158
87
130
140
117
108
76
158
95
134
153
165
67
125
54
117
121
131
109
134
91
122
143
103
67
100
102
96
95
145
54
123
201
68
141
162
108
154
136
119
120
130
191
129
103
83
113
158
135
141
95
108
102
95
108
133
108
54
49
90
159
128
108
82
150
109
112
95
121
125
144
94
160
120
106
83
102
107
121
105
86
65
165
59
81
95
54
95
163
49
121
126
59
133
93
134
128
116
103
200
77
93
143
146
144
159
83
87
165
115
103
95
95
141
80
54
182
144
103
87
111
103
132
148
111
128
100
85
136
143
120
136
138
113
128
97
127
83
83
98
140
129
97
144
67
121
88
140
140
108
154
178
102
136
126
124
140
116
119
220
74
158
144
116
137
114
49
95
122
134
83
108
124
90
164
118
54
91
117
118
95
93
74
102
144
54
90
142
89
54
107
123
54
133
88
122
111
102
104
115
191
80
92
121
113
127
139
104
117
54
94
81
140
149
186
74
125
106
125
59
54
95
67
131
113
114
80
134
128
144
95
95
95
99
124
116
149
122
103
104
133
125
128
140
97
139
120
90
119
108
106
102
145
134
74
77
161
102
107
125
177
123
139
108
144
54
54
120
139
149
97
120
139
137
71
76
85
146
95
111
146
131
84
128
127
128
175
110
128
49
93
78
87
83
127
74
87
106
125
125
98
77
74
49
144
105
90
164
129
96
102
102
114
213
113
95
112
108
145
94
144
98
129
74
145
106
120
125
81
151
147
98
83
109
67
144
113
81
115
151
150
83
59
82
54
136
125
145
181
98
68
125
126
131
82
139
137
99
106
192
125
129
76
82
101
67
105
120
161
81
102
107
95
103
168
59
94
68
149
134
91
113
108
98
117
121
128
83
161
76
105
81
100
177
129
113
93
103
95
112
82
81
69
122
144
164
76
118
119
102
95
74
74
150
77
114
68
97
115
95
180
87
95
141
112
98
119
95
104
95
98
90
61
93
89
126
103
108
133
140
99
118
96
114
104
97
90
74
166
103
149
90
120
177
127
108
151
103
158
95
105
124
91
84
126
145
102
112
155
135
102
124
135
93
148
119
150
148
98
109
148
125
49
114
96
103
100
153
158
144
112
106
76
127
99
126
101
89
98
127
102
105
103
102
135
102
129
91
102
133
129
95
145
95
127
113
189
146
54
117
97
101
124
91
107
115
106
118
145
67
131
214
133
103
102
125
109
106
143
122
115
154
115
54
133
125
117
69
86
112
130
104
134
129
128
122
148
82
131
105
102
110
74
158
109
116
86
91
100
153
116
91
102
49
154
102
143
125
106
150
173
136
167
61
146
148
96
156
107
124
127
141
114
84
126
112
54
83
124
113
89
120
123
121
145
127
103
138
82
102
87
125
132
77
111
120
160
130
87
109
113
59
120
102
100
90
54
107
169
49
73
76
142
132
103
180
77
77
130
119
121
124
112
148
112
113
81
135
107
54
139
139
83
54
140
96
127
146
110
135
133
128
144
140
106
143
165
87
147
115
113
125
123
99
98
96
85
95
98
54
95
133
186
108
147
126
87
113
127
126
98
168
93
94
77
132
125
98
133
119
109
145
98
145
181
74
54
120
133
81
102
108
100
143
87
87
103
94
144
138
121
117
141
103
163
106
108
100
95
140
142
86
136
131
121
76
120
68
164
68
133
91
103
143
124
91
104
54
158
93
97
152
107
130
137
49
119
99
133
116
119
67
128
102
168
100
77
163
74
179
87
122
87
126
106
98
135
113
118
143
91
106
124
99
108
97
144
95
108
132
74
77
134
108
122
138
117
129
95
127
90
133
93
95
108
157
65
135
154
145
80
102
49
93
101
81
110
148
102
135
54
90
125
170
97
137
104
158
54
49
128
133
82
107
90
140
95
167
102
145
128
102
155
107
117
85
59
134
146
105
107
96
129
89
98
111
109
96
97
87
59
146
94
130
95
96
143
102
106
90
155
121
171
88
141
103
122
113
121
158
87
146
117
149
87
77
90
106
135
99
127
106
119
138
136
108
120
118
120
101
102
149
127
114
144
125
61
54
112
90
122
102
94
115
142
107
127
182
54
76
103
81
116
54
157
127
171
69
108
139
82
120
74
139
61
133
105
81
144
131
122
97
234
130
132
101
98
99
123
121
100
108
111
112
54
143
95
142
82
81
152
76
133
54
147
105
170
134
172
139
49
117
117
101
87
67
92
81
111
74
97
128
129
97
98
82
54
137
139
112
106
135
119
98
118
133
169
104
149
93
77
74
93
124
133
133
134
111
94
102
109
96
165
123
132
88
118
125
124
98
78
119
106
175
125
164
138
109
147
135
129
118
94
92
113
143
115
122
135
97
153
113
145
125
141
122
127
127
105
89
101
142
118
124
143
96
101
140
98
108
158
148
89
146
85
70
145
108
81
97
128
83
74
106
113
165
81
87
162
93
95
128
130
138
105
119
73
74
126
132
113
83
111
82
97
90
88
102
83
92
105
83
98
154
160
119
59
92
133
143
139
151
104
103
103
113
100
135
150
145
109
136
153
133
106
130
116
145
121
138
143
96
131
59
132
108
98
78
77
101
101
133
144
82
147
166
147
118
106
162
141
161
77
113
113
125
82
106
123
125
101
78
107
98
123
129
129
144
112
122
102
85
127
59
125
113
157
144
82
200
134
81
68
74
132
95
108
108
125
144
169
54
54
94
136
167
117
106
103
76
95
125
144
167
108
134
120
76
89
93
108
109
95
106
136
123
120
95
95
106
133
91
116
108
67
122
81
69
172
116
109
112
133
153
152
110
113
98
150
93
161
118
103
161
125
99
81
96
100
129
93
92
95
129
125
109
131
69
164
120
77
163
133
61
150
103
105
97
170
133
78
133
168
177
103
110
138
155
97
122
123
125
81
112
154
124
54
125
76
107
144
193
144
124
105
141
107
121
125
97
78
101
122
135
154
151
82
128
125
143
65
95
130
146
111
54
134
59
84
79
76
96
83
121
131
147
134
117
108
101
114
125
111
143
84
125
98
113
148
94
54
103
83
118
125
141
131
132
110
126
103
95
77
127
138
144
131
153
95
129
102
80
54
132
96
136
100
69
97
89
125
139
120
49
124
113
143
133
118
101
67
186
92
139
104
174
49
68
54
120
186
105
102
154
104
103
103
143
143
115
124
102
114
100
122
120
108
133
54
92
102
129
143
123
140
105
97
98
135
105
96
81
124
107
89
128
101
54
92
106
54
123
102
139
102
95
108
113
148
190
106
216
103
109
69
152
122
82
190
118
59
177
135
91
148
108
116
130
74
125
161
54
149
83
152
176
117
59
132
87
124
169
102
102
180
77
127
151
129
81
125
112
135
140
97
93
187
149
94
83
158
141
102
99
185
118
190
88
108
129
108
98
85
116
130
107
200
54
95
146
91
54
98
130
140
108
119
150
111
141
77
156
126
106
105
165
83
110
133
134
115
49
74
148
101
163
68
141
102
143
54
158
111
153
144
89
108
90
95
101
105
84
118
154
113
116
74
81
152
102
124
93
122
153
81
98
145
153
101
73
118
54
147
103
147
166
81
128
114
135
106
163
90
54
112
149
92
147
101
116
148
77
97
105
126
85
150
108
125
132
125
132
98
124
91
110
54
131
108
106
108
91
122
84
102
128
95
149
103
102
54
128
140
125
79
102
95
125
92
100
85
61
133
102
74
101
128
83
117
150
135
131
82
167
108
97
94
95
99
108
134
105
165
115
102
133
94
93
148
156
87
125
141
153
85
169
54
122
131
138
177
83
65
94
133
109
120
153
106
119
117
103
95
54
98
92
124
149
106
166
129
79
139
94
88
162
112
152
120
77
105
143
108
124
138
143
171
54
142
115
86
92
91
102
134
136
91
102
150
81
81
133
107
127
111
102
98
98
88
79
125
195
130
95
138
91
78
134
96
109
141
116
105
105
177
67
165
99
81
135
102
108
135
141
143
102
157
132
119
106
111
104
115
117
98
82
141
115
114
93
111
112
143
84
108
112
80
81
95
82
124
125
93
157
113
100
158
106
144
152
169
177
122
125
139
128
135
116
113
82
108
145
114
65
99
138
97
140
125
119
139
158
108
137
164
134
116
108
91
90
190
156
102
69
103
138
128
177
125
98
142
93
119
105
138
116
116
111
101
174
118
54
122
100
115
102
62
144
108
81
125
140
108
88
119
136
156
191
68
49
81
160
126
160
77
131
124
95
108
141
102
95
136
87
76
90
108
167
99
81
158
108
98
140
102
87
81
128
125
87
90
102
95
114
68
146
82
77
113
121
163
87
102
125
102
122
116
151
102
101
99
149
98
139
68
160
90
98
54
90
157
110
96
93
114
54
128
156
119
94
93
124
112
98
59
143
106
133
91
125
95
113
107
96
141
120
136
107
118
119
102
109
103
107
158
74
100
99
115
112
123
74
139
116
109
67
83
158
76
97
118
150
136
103
149
108
171
163
135
141
131
146
113
116
54
125
122
144
150
127
98
112
100
87
109
120
156
67
121
122
96
104
108
104
111
135
153
124
89
90
98
59
129
206
131
93
149
94
140
98
119
95
147
145
124
74
95
157
143
111
108
196
102
142
144
117
112
120
120
67
120
78
120
49
120
114
108
59
128
124
82
135
98
95
116
93
129
54
119
73
139
133
98
104
90
136
125
133
145
125
100
93
127
144
138
163
195
95
144
59
119
119
131
152
127
159
125
151
124
125
133
177
131
117
131
84
177
54
146
96
115
105
132
105
131
90
98
147
136
84
129
148
143
95
123
137
124
108
126
140
87
69
124
151
74
120
128
132
155
105
83
100
133
91
148
108
101
100
114
122
96
116
91
147
161
113
127
54
115
54
131
110
115
105
95
155
78
95
57
128
109
127
138
128
158
109
139
90
133
121
145
122
179
135
102
108
100
96
95
114
106
98
98
54
147
68
123
102
82
138
101
98
118
108
110
110
120
118
118
117
85
78
105
120
115
133
98
105
132
54
114
140
154
107
98
189
146
173
101
103
85
59
115
157
116
95
131
74
105
128
139
118
131
143
113
90
180
140
145
107
133
105
125
101
98
156
59
115
107
108
110
59
113
89
96
158
108
105
100
54
148
125
101
78
141
102
98
102
103
73
135
114
143
106
122
122
133
133
112
125
177
138
108
85
61
82
120
102
127
130
54
128
102
108
164
108
80
129
124
129
87
125
54
119
91
128
54
177
113
97
95
78
54
110
125
145
97
102
103
95
126
104
126
143
108
112
134
54
98
128
133
100
95
94
149
145
74
83
191
67
109
143
166
77
110
54
98
104
128
54
102
112
128
147
68
95
148
122
85
78
130
128
91
110
112
164
84
81
79
135
108
115
117
125
74
82
122
78
109
111
94
125
95
142
130
131
114
177
98
94
133
121
127
159
132
105
92
114
87
94
127
95
160
69
74
128
59
80
108
118
106
54
108
124
82
97
108
96
177
138
93
118
80
137
107
81
102
123
103
103
123
74
145
149
139
119
133
108
96
49
144
108
83
87
83
109
121
95
143
108
131
117
90
127
118
144
127
93
107
67
59
90
65
127
61
68
81
146
115
98
161
54
103
174
128
172
94
98
82
99
140
147
95
81
102
156
95
124
139
110
74
125
82
147
90
95
119
143
108
106
126
74
107
141
131
98
162
173
74
103
136
74
135
112
112
88
129
176
70
102
146
143
108
119
79
142
137
112
114
167
74
82
116
102
156
177
122
81
158
103
98
142
132
148
161
135
139
113
150
216
84
102
89
97
117
87
80
150
145
146
118
81
108
112
97
146
59
105
118
120
163
136
89
119
116
155
155
157
161
86
141
105
59
127
61
87
143
65
97
88
136
159
142
97
145
118
91
67
102
91
130
74
103
91
122
131
140
120
112
87
83
54
111
76
141
121
115
112
141
145
103
144
82
100
113
81
98
108
98
167
136
102
99
106
112
104
87
128
133
61
113
149
134
73
139
138
150
90
121
160
131
83
100
104
82
143
81
97
90
159
196
137
111
148
97
110
127
69
81
93
102
112
90
108
54
103
93
106
91
90
54
98
100
160
81
102
225
54
163
49
103
95
131
114
96
88
85
132
145
108
127
96
102
90
142
107
106
108
143
155
107
115
115
90
119
97
119
160
76
98
167
97
108
113
108
158
106
81
153
90
76
138
127
54
81
79
98
108
95
112
119
95
108
106
81
78
103
115
117
143
137
177
102
113
101
155
94
102
130
103
150
227
107
127
78
83
76
92
114
98
95
130
117
105
134
95
135
111
101
84
115
170
136
99
118
108
79
110
103
138
67
144
87
59
147
117
134
102
93
120
106
81
186
78
108
130
137
105
152
103
177
123
78
118
145
87
102
87
134
103
191
93
110
128
185
109
123
161
118
133
87
111
109
132
117
69
110
111
54
146
108
90
106
160
77
156
129
123
84
139
77
194
59
160
114
124
112
112
103
153
80
128
127
89
96
81
149
92
74
102
108
83
81
90
170
96
108
81
87
54
82
110
184
112
218
101
74
92
127
208
95
77
125
107
113
107
216
110
117
135
101
54
103
115
125
54
115
111
150
108
49
147
128
177
97
70
125
119
98
120
158
87
77
118
124
102
84
59
74
76
98
121
118
110
81
107
159
131
93
97
148
80
95
76
147
54
155
135
81
96
90
116
128
108
127
95
146
96
136
113
54
122
143
94
117
54
81
115
112
93
117
145
122
94
127
144
116
145
105
99
146
112
77
148
81
113
95
130
86
100
108
76
145
82
129
142
103
99
87
179
98
98
102
98
112
127
95
122
110
147
151
115
142
145
95
169
143
118
145
89
54
108
107
143
89
134
138
113
77
59
158
95
123
54
131
61
108
95
116
105
72
80
92
109
129
95
128
124
90
93
125
119
49
194
133
82
117
139
79
115
116
108
99
81
179
148
234
85
146
115
148
117
85
157
157
76
127
131
175
147
183
88
162
126
115
67
119
96
108
131
144
136
112
126
129
59
103
80
125
90
106
90
160
112
131
94
121
87
144
120
87
125
54
123
149
144
88
125
77
87
122
81
141
219
90
98
86
119
127
87
119
54
102
146
61
122
77
154
116
125
105
54
126
99
148
85
54
129
143
143
129
127
133
93
96
114
135
95
147
76
106
122
142
78
82
88
54
102
106
77
54
172
128
87
144
100
102
111
102
90
120
91
113
144
115
150
127
108
91
145
95
81
128
93
59
103
150
145
83
118
95
152
125
79
114
113
85
108
131
49
109
54
127
103
108
168
157
138
147
77
92
109
172
177
162
111
95
129
100
103
113
107
105
125
138
91
122
149
88
140
124
129
67
134
93
54
101
74
59
97
120
120
54
59
110
161
158
122
153
97
54
103
128
95
92
120
49
100
126
103
115
99
125
121
113
133
168
67
103
135
161
96
118
124
143
77
125
105
99
95
156
157
112
112
103
143
154
69
106
102
102
76
109
108
218
108
118
180
95
91
148
186
113
102
107
106
89
49
113
106
126
49
61
117
113
98
168
133
113
129
54
140
141
49
119
108
82
117
100
110
82
117
191
95
121
119
144
101
107
76
74
160
59
125
119
114
95
93
80
83
177
133
117
145
127
105
76
103
77
131
97
113
108
119
92
127
134
93
91
54
95
132
80
146
108
105
151
96
139
117
116
116
125
148
139
54
108
123
148
108
140
90
112
97
135
126
138
177
67
104
124
106
165
105
185
104
115
115
109
151
113
93
95
98
78
80
89
112
102
98
81
103
96
105
104
122
101
179
180
81
54
119
138
54
98
182
115
124
77
126
74
69
108
141
160
170
180
127
101
99
120
76
103
106
100
84
61
120
106
83
103
115
74
82
135
116
127
54
148
102
131
109
76
121
83
81
85
172
95
98
123
125
108
110
139
54
142
49
54
165
59
135
105
139
162
76
95
90
126
189
102
120
167
108
59
95
113
111
148
98
117
80
100
80
104
157
158
102
113
145
67
121
186
141
59
68
81
163
125
114
54
100
76
75
134
118
90
148
95
125
133
158
154
105
98
85
155
161
67
128
89
95
106
108
108
102
111
102
177
145
140
101
131
54
130
131
129
106
134
49
156
106
96
97
100
54
54
95
54
155
104
98
68
77
143
98
149
99
125
124
102
121
133
162
130
95
120
172
177
114
161
131
77
80
120
102
124
144
96
126
82
153
158
183
98
127
115
115
141
74
122
102
82
146
116
117
116
141
102
106
146
67
115
131
105
119
95
98
91
125
110
142
115
120
87
122
97
90
145
138
106
76
163
115
202
124
93
97
122
125
70
132
111
128
142
112
126
91
147
177
143
104
173
71
104
101
111
97
159
96
69
59
74
177
101
105
54
54
99
102
95
113
95
105
98
225
82
76
119
89
125
164
90
105
153
90
132
92
142
90
68
135
160
148
81
134
74
169
126
147
111
145
120
61
89
156
104
102
191
113
87
90
132
158
107
127
111
135
108
59
49
132
129
150
95
106
83
93
131
90
181
117
102
119
129
111
139
90
99
153
95
117
66
110
123
158
87
125
126
147
148
107
129
98
113
131
148
49
154
117
77
134
133
135
125
148
69
81
133
94
101
127
98
86
95
139
147
135
94
115
133
67
113
105
95
164
90
54
119
49
93
148
134
151
110
109
133
54
148
105
146
172
122
142
73
128
135
95
83
141
154
172
119
67
115
110
59
136
134
124
122
132
112
101
108
111
139
95
147
67
118
146
83
98
146
148
172
113
132
140
104
125
117
125
54
120
103
95
83
83
54
177
105
142
111
143
128
156
130
97
120
153
156
102
114
115
103
117
133
125
126
160
90
87
98
109
82
133
112
140
113
139
136
135
59
148
99
103
112
92
77
113
129
95
96
95
188
105
148
97
104
54
96
49
113
127
100
81
104
96
158
134
119
130
122
98
141
148
141
102
133
116
99
109
130
145
149
141
119
157
168
144
124
59
93
129
120
148
127
59
109
132
59
110
74
77
97
89
110
136
115
156
104
89
137
119
137
96
125
74
138
54
98
125
98
110
133
125
74
81
156
122
116
85
84
179
68
93
165
117
91
73
170
113
131
103
103
140
103
113
90
80
144
124
115
108
133
131
122
100
85
93
108
128
117
167
107
114
98
163
95
146
116
143
147
67
139
125
124
98
182
98
98
106
110
129
106
59
105
124
115
162
188
77
103
106
148
143
73
126
89
133
111
87
61
192
54
80
68
119
128
125
173
83
118
138
194
75
127
98
133
108
122
91
131
126
144
127
61
162
181
90
155
127
121
81
78
127
132
98
113
105
87
108
123
103
101
102
78
124
126
92
54
131
179
107
90
135
125
133
118
102
107
148
145
122
188
133
99
99
161
68
108
127
123
108
126
101
78
138
125
85
151
75
54
67
108
120
108
77
97
124
177
54
108
65
133
103
157
76
100
149
101
134
82
105
135
76
77
96
90
105
125
135
82
116
127
81
154
150
165
144
164
74
120
129
97
117
101
158
82
49
83
146
102
155
150
87
87
148
136
108
162
111
131
115
114
140
115
111
120
103
118
102
95
81
145
54
92
49
155
146
75
92
49
144
143
98
76
129
95
105
153
177
120
84
123
102
54
125
85
129
117
103
198
89
115
107
102
108
93
139
133
94
73
161
128
106
140
81
148
84
135
49
81
65
105
88
130
125
175
124
159
72
108
67
93
113
119
87
127
134
119
90
78
90
54
83
146
116
123
118
122
135
151
93
89
68
98
89
108
128
95
146
87
139
124
141
97
108
150
106
120
113
131
123
165
179
97
104
54
95
122
149
98
95
90
138
133
104
84
94
128
151
96
234
146
95
42
145
108
80
137
49
131
105
67
116
95
124
85
140
127
90
100
154
121
148
95
120
125
107
124
156
76
87
110
142
127
100
169
166
123
126
118
83
108
127
162
140
72
130
193
137
77
146
73
102
93
120
102
115
83
129
129
138
153
103
141
175
138
123
128
125
67
112
134
120
112
121
102
94
120
110
115
131
104
117
123
169
146
74
144
81
82
83
114
105
123
83
118
98
129
115
59
133
116
105
120
76
125
110
123
91
155
98
129
76
113
136
105
97
156
142
162
125
146
113
133
49
101
114
115
135
54
168
115
142
108
68
98
111
95
102
135
105
143
129
78
144
67
113
114
190
74
99
89
77
142
108
119
102
140
83
111
95
108
104
54
131
120
54
142
96
105
139
116
67
81
126
49
107
152
168
85
134
102
112
114
113
105
107
108
61
88
160
97
143
102
120
108
92
160
124
95
114
127
128
91
124
62
123
91
107
81
82
116
165
103
168
160
133
86
126
67
178
69
138
78
98
90
130
83
97
126
54
155
148
138
54
134
139
132
59
102
114
133
126
102
145
95
114
129
98
59
128
54
135
146
120
91
144
100
81
128
82
99
106
54
108
94
102
95
143
129
186
81
115
120
131
101
154
140
172
141
122
107
145
126
125
129
114
149
154
82
108
102
107
126
99
133
134
147
106
182
118
98
103
109
118
106
156
107
105
135
100
110
116
97
102
82
107
116
108
129
98
114
98
168
121
82
122
122
107
78
150
87
54
94
136
59
126
80
125
126
113
110
123
83
81
146
142
118
100
54
95
61
146
194
147
141
197
83
105
117
49
77
125
78
163
68
111
134
145
132
145
177
95
156
87
99
153
106
135
125
98
130
90
125
117
125
173
141
106
177
132
82
158
143
123
84
85
98
113
145
95
121
136
98
49
102
118
97
114
118
81
98
93
80
119
88
157
134
106
170
78
90
54
93
111
146
129
116
144
76
114
117
148
116
162
111
87
105
97
108
146
95
158
108
129
162
153
103
129
82
109
122
112
105
133
114
126
110
102
143
177
74
98
95
98
109
103
103
145
110
54
96
138
77
129
136
108
85
98
94
138
78
61
146
77
102
102
91
170
54
95
119
133
145
158
121
116
90
132
67
102
77
81
105
186
150
95
147
61
79
139
147
123
115
104
54
108
103
112
81
109
57
95
76
102
114
148
148
103
135
139
111
145
76
205
95
122
119
82
97
96
112
123
108
127
95
104
113
85
135
113
110
86
118
108
117
100
152
108
101
97
126
173
151
98
82
109
84
149
145
190
161
135
126
129
97
105
164
93
91
54
143
125
85
170
96
112
125
96
99
138
111
76
110
88
83
108
113
87
145
139
106
90
129
125
111
54
151
149
59
67
54
94
120
82
78
96
122
108
88
106
131
143
82
140
109
124
148
87
122
144
135
140
100
101
113
103
83
166
185
165
128
119
115
89
163
99
104
65
108
67
126
89
101
149
136
123
78
112
125
108
146
120
98
127
131
165
104
96
74
59
177
157
98
143
110
138
118
129
81
200
142
175
169
74
134
140
161
164
82
87
77
201
98
158
158
122
143
120
102
78
143
90
126
80
147
107
89
95
111
80
156
120
123
135
87
113
125
111
105
102
92
147
117
91
111
103
136
106
110
112
108
93
130
133
138
125
136
124
78
103
108
136
95
103
95
148
121
123
132
147
90
98
94
100
90
107
115
138
80
132
135
163
117
87
105
128
107
102
107
77
111
125
90
91
94
86
99
128
124
112
131
133
136
82
108
83
140
81
133
99
77
86
125
98
190
90
109
144
78
106
183
139
102
111
137
49
82
98
59
102
101
119
149
82
125
97
102
103
76
115
124
97
130
125
108
145
106
78
101
106
83
139
85
139
90
123
54
136
116
129
108
49
153
137
112
100
177
102
54
108
113
183
103
81
170
97
76
148
78
113
93
103
126
151
124
106
76
113
96
125
49
169
101
128
95
164
128
158
49
102
91
78
108
95
99
89
183
98
138
161
81
146
92
163
141
120
113
80
151
122
54
129
95
130
83
81
76
144
120
175
101
101
45
127
87
100
98
106
76
123
95
108
105
178
95
108
102
131
116
95
105
96
142
105
139
105
137
87
131
122
104
144
67
88
120
90
105
103
84
113
128
145
113
98
138
109
148
114
97
126
128
109
81
143
106
102
97
124
125
128
77
96
103
140
89
119
130
130
95
132
138
73
146
111
54
114
157
49
161
143
158
109
136
124
116
90
117
110
93
108
131
119
98
98
90
92
112
104
128
100
74
59
138
54
150
127
105
165
123
120
108
95
113
87
95
113
98
49
124
54
91
122
174
116
139
103
100
85
102
145
87
125
128
115
95
133
113
126
98
140
82
49
54
125
80
131
94
102
149
137
83
102
102
122
140
130
81
114
90
113
78
143
95
61
148
82
95
116
90
106
87
95
98
108
140
54
116
113
149
83
54
108
146
156
122
110
74
91
108
97
139
98
128
148
122
137
115
88
115
82
93
81
103
90
178
106
147
61
133
81
180
74
98
144
95
164
127
118
119
76
140
166
158
108
102
91
74
102
144
120
108
129
115
116
129
113
74
104
114
84
103
177
123
95
120
108
98
108
188
98
121
143
141
161
90
102
65
122
114
83
125
95
113
114
139
122
127
120
131
132
145
120
105
123
148
78
165
150
54
81
130
105
128
78
133
120
116
147
98
102
115
145
113
127
184
164
123
116
106
83
101
82
118
98
54
76
122
126
103
81
115
139
175
94
103
94
104
168
120
54
79
92
160
73
141
134
99
125
49
137
154
70
79
117
113
117
77
102
151
123
140
152
118
82
130
164
151
127
138
134
98
94
151
94
125
117
81
119
97
108
150
132
91
151
106
177
117
135
91
103
113
134
80
90
133
107
87
131
225
107
95
104
160
186
119
127
84
99
98
157
98
156
98
166
82
129
101
138
103
103
90
105
80
101
97
116
142
129
126
87
86
109
123
59
133
76
127
135
127
161
95
147
118
125
108
69
177
119
95
76
122
147
164
108
75
125
125
120
194
91
148
77
165
144
88
76
116
123
116
108
99
105
154
99
156
80
123
179
86
148
91
160
148
122
95
113
160
125
128
123
107
54
110
132
54
106
115
112
87
127
83
140
138
113
158
96
108
107
85
143
102
85
177
80
74
49
102
108
110
132
61
154
92
117
130
139
136
133
100
143
123
167
95
125
114
160
219
165
138
89
167
153
140
98
197
109
116
164
123
98
108
117
127
104
95
139
156
140
114
92
133
120
90
125
148
165
120
122
107
77
74
140
106
115
166
117
98
140
111
106
61
93
116
122
95
127
54
142
172
158
87
167
99
45
123
142
133
108
125
146
97
95
112
90
108
90
92
49
105
145
103
109
122
156
110
93
77
54
49
79
102
120
127
98
89
119
103
116
172
129
112
102
127
74
77
84
77
104
83
114
95
90
143
140
148
93
141
68
108
168
94
108
133
151
137
120
98
90
89
108
112
108
143
136
101
153
116
78
158
147
117
108
135
147
202
115
95
122
143
76
108
157
115
169
108
143
125
61
125
146
151
112
125
85
134
54
148
153
177
145
112
108
151
127
54
95
139
93
152
144
143
93
161
84
154
115
98
137
101
54
124
73
54
162
106
87
148
87
104
82
157
84
67
125
82
156
123
76
91
99
184
129
111
108
54
126
94
150
128
54
112
95
107
135
164
96
134
98
121
105
98
126
139
124
108
80
163
95
113
81
82
86
129
103
122
93
136
136
167
91
108
87
148
126
81
116
168
148
110
146
131
112
110
105
96
112
125
144
104
90
170
49
54
103
149
106
70
93
128
102
182
127
167
103
137
123
113
110
125
54
135
115
86
117
108
158
54
78
121
106
80
87
95
54
98
116
165
105
49
140
84
138
131
59
89
102
102
125
145
85
92
115
145
124
69
105
102
57
101
152
144
140
49
126
115
201
126
154
136
98
159
102
103
109
129
85
102
145
77
87
110
120
135
150
135
80
133
150
113
76
146
103
98
131
137
147
67
120
101
111
145
102
96
135
114
128
114
111
110
87
156
91
106
76
93
128
127
126
133
147
152
95
133
87
110
125
147
158
98
106
97
135
108
108
125
127
106
140
144
152
114
111
156
102
49
95
49
124
161
107
61
123
102
133
103
135
109
106
113
119
143
59
117
113
119
129
128
126
116
81
112
128
102
49
112
118
123
117
102
113
113
112
103
107
112
104
128
123
146
90
129
105
111
108
81
128
103
112
95
67
119
97
154
135
109
65
99
145
128
108
161
177
104
98
118
119
131
137
143
106
81
99
178
116
131
87
93
74
130
95
102
77
115
118
177
88
121
133
98
61
160
132
160
124
108
108
159
82
134
119
132
148
183
102
115
120
138
143
77
118
82
115
104
95
87
130
185
95
153
103
104
83
153
139
106
153
100
99
118
110
107
135
115
135
173
98
94
63
54
106
135
111
81
119
98
108
113
124
152
128
71
95
169
144
156
118
76
59
106
90
54
128
99
133
95
106
68
125
117
137
91
112
117
138
103
125
80
127
90
165
87
98
98
59
130
118
81
143
177
98
82
165
70
107
148
131
99
202
74
122
106
78
131
148
103
160
110
134
49
141
54
105
54
108
133
102
73
106
98
113
86
127
120
73
119
87
81
102
122
103
81
108
103
145
194
102
144
89
153
101
113
171
174
92
74
127
173
113
73
148
115
90
123
102
49
49
168
137
145
102
90
115
113
127
78
99
102
125
97
108
150
132
102
107
123
110
143
54
54
127
108
88
102
93
163
146
81
127
104
83
83
104
83
106
102
125
135
108
98
143
97
131
145
125
131
110
122
82
110
106
155
78
106
135
172
156
108
135
115
168
106
121
130
153
102
126
74
94
143
135
136
120
115
123
99
79
96
100
185
89
81
128
78
100
93
147
143
139
80
129
132
136
98
59
156
128
54
124
145
132
143
103
91
108
143
59
113
154
111
115
180
149
123
98
87
105
146
114
95
133
91
98
104
143
123
81
96
107
79
142
100
85
125
114
102
114
54
96
106
113
54
219
115
81
162
148
113
127
118
66
120
76
49
89
133
110
85
81
191
133
144
93
100
104
85
180
102
145
102
101
98
98
150
101
118
82
49
80
119
112
128
102
119
152
95
202
151
121
133
150
143
168
147
125
134
177
133
130
98
140
136
160
110
90
96
109
145
106
142
125
101
95
144
142
96
153
115
149
99
112
113
95
79
87
115
81
112
103
106
87
116
125
87
107
108
76
149
102
125
83
108
132
67
102
113
117
81
67
98
122
49
124
149
131
122
125
133
118
88
80
148
110
118
49
127
87
122
130
126
120
90
97
59
99
195
108
113
83
137
141
74
134
190
159
128
102
177
95
90
117
54
105
148
90
153
116
113
148
133
160
122
118
74
141
103
145
170
76
94
110
119
162
161
82
134
120
178
103
96
153
134
106
90
76
67
153
82
140
127
82
145
105
144
164
104
112
89
129
98
83
119
148
115
107
177
134
122
77
133
135
49
83
174
106
161
80
78
129
91
102
82
123
101
83
113
76
96
157
113
140
54
184
133
156
141
141
82
108
83
116
97
120
98
127
144
150
128
100
89
74
134
102
54
142
84
76
148
128
95
81
110
84
140
144
103
129
88
100
88
142
119
123
147
84
83
54
142
116
104
115
59
74
54
131
143
163
136
79
112
139
98
102
45
82
125
123
111
101
139
161
111
110
102
115
87
133
79
188
129
82
128
61
139
128
139
116
90
114
123
102
54
94
49
73
137
147
49
136
116
77
135
120
133
119
117
54
91
54
120
138
81
83
119
116
105
78
137
118
113
125
199
128
80
81
122
137
119
122
98
129
159
124
113
124
140
85
158
79
115
86
124
74
134
125
143
72
49
159
95
80
137
109
118
96
165
112
89
69
133
148
145
122
119
129
102
82
120
108
106
115
158
54
94
126
61
154
95
110
70
78
93
99
98
135
105
82
147
124
132
119
129
137
82
93
153
104
140
91
57
79
131
94
178
83
128
95
87
67
171
125
95
105
103
138
101
119
127
116
137
116
133
82
72
76
150
127
105
133
139
95
153
137
194
81
102
95
125
74
126
117
125
102
95
144
113
102
159
112
122
109
168
61
170
81
87
95
78
124
120
81
148
90
151
113
110
99
102
156
177
134
112
81
90
135
90
102
93
98
93
109
125
59
78
84
127
151
103
120
141
127
110
103
119
145
105
153
158
175
98
177
82
117
113
54
106
91
77
134
141
102
149
91
131
76
94
110
95
65
125
107
127
106
135
100
91
132
145
80
122
118
90
128
95
90
127
84
49
145
102
109
104
88
95
81
84
99
54
141
112
115
88
110
101
132
83
82
108
91
146
120
93
123
110
123
108
89
98
130
127
125
101
144
108
108
107
113
148
95
118
162
98
81
94
127
76
54
98
111
83
145
84
126
107
113
105
143
120
112
108
136
114
136
135
105
76
144
113
42
109
78
96
120
110
105
146
153
54
139
98
127
98
147
183
149
180
108
102
133
114
172
146
54
131
102
124
113
90
143
138
130
96
172
158
133
81
162
170
134
96
123
54
143
127
155
123
89
167
59
180
124
119
87
133
112
92
87
54
89
73
179
108
123
99
171
115
67
67
87
78
148
106
133
114
123
73
125
125
95
96
181
102
133
103
120
124
113
108
103
95
135
102
79
129
98
125
108
122
68
81
140
78
158
144
78
153
154
104
54
130
107
160
132
153
167
106
125
144
114
54
111
108
101
76
145
95
83
99
126
126
67
96
118
172
54
81
145
154
128
144
125
110
49
118
153
95
87
127
107
142
101
87
108
120
110
92
129
99
100
155
82
139
139
103
121
92
74
120
125
129
54
155
157
107
125
109
88
54
102
108
77
122
103
96
54
103
128
42
77
111
150
108
82
140
115
130
130
111
92
74
98
156
177
91
134
156
145
61
83
84
156
74
108
78
200
54
129
100
49
179
133
93
139
93
125
54
102
107
54
92
54
166
158
103
108
67
59
102
127
115
161
103
54
105
102
148
105
106
157
125
92
115
156
151
138
162
107
102
128
144
96
129
98
102
98
81
114
105
113
73
129
59
144
103
141
154
157
98
108
136
123
130
134
118
177
137
154
156
85
98
147
157
125
115
122
134
135
154
59
127
68
76
82
120
113
145
150
137
125
122
147
97
106
103
96
82
74
156
74
95
107
123
98
110
113
118
146
107
81
115
125
106
146
112
127
164
81
117
114
87
90
103
49
106
170
61
59
96
72
65
147
122
172
105
118
108
150
108
154
103
102
49
112
54
118
105
121
157
125
137
89
192
145
103
93
125
85
49
67
102
89
143
161
126
98
116
104
67
129
176
100
136
93
131
74
123
102
103
82
135
108
97
115
54
161
76
128
143
100
54
87
108
158
76
96
136
114
186
91
77
128
119
153
137
148
103
86
80
128
96
104
120
139
74
115
98
54
114
123
132
133
128
147
151
115
129
83
108
145
59
84
84
108
147
124
138
115
179
169
142
175
85
110
119
140
153
54
196
145
54
155
150
134
120
102
155
111
130
87
98
146
103
97
108
119
101
130
125
127
113
74
96
91
98
116
133
54
110
102
115
101
110
77
107
98
166
125
108
148
128
125
131
107
144
122
42
101
133
110
146
149
77
108
144
153
145
54
113
125
126
179
100
93
90
163
154
128
87
95
76
74
54
95
113
94
112
98
149
137
148
91
119
54
108
79
97
54
85
98
102
74
134
160
102
112
95
70
90
112
143
156
128
138
87
135
76
148
133
117
168
172
162
145
49
69
134
157
152
132
124
77
127
95
189
182
54
96
95
98
135
102
90
155
81
125
131
128
90
111
135
213
87
144
95
113
127
114
67
113
125
145
104
191
144
76
103
109
115
150
140
108
113
146
186
127
168
105
108
84
145
111
105
138
128
118
76
124
95
96
141
177
82
117
110
54
145
96
96
80
100
131
125
83
109
133
144
95
82
54
127
128
175
144
105
102
127
143
110
128
167
116
117
123
132
114
95
110
49
103
113
141
120
70
110
140
166
115
131
141
83
150
110
113
99
123
121
93
144
105
139
120
140
103
182
157
130
124
107
54
141
79
182
121
145
86
143
113
117
108
132
112
114
172
94
123
92
98
105
183
161
131
140
134
102
143
113
102
133
109
143
90
95
172
115
125
104
121
109
148
110
108
98
107
128
93
100
111
61
114
127
139
116
137
123
111
96
152
93
124
109
125
133
154
104
108
118
153
83
118
91
134
103
130
96
154
105
125
160
81
145
94
74
129
116
149
113
145
131
145
139
137
168
146
112
117
95
130
122
123
100
139
177
80
113
78
115
168
141
118
83
138
94
132
194
133
151
105
95
155
135
119
96
131
158
99
54
103
108
148
104
98
131
171
128
95
147
92
97
132
105
105
133
74
113
104
143
111
78
95
107
91
134
155
98
151
99
155
132
109
133
100
186
92
80
155
129
136
120
116
107
91
122
113
153
102
110
149
116
91
91
57
82
108
54
73
109
103
131
144
115
133
82
105
127
105
144
108
133
113
133
109
91
103
67
128
120
98
131
100
116
126
82
156
148
117
115
138
42
102
98
117
95
95
74
143
156
148
87
105
91
125
81
93
122
155
119
83
119
169
103
144
98
113
116
101
130
74
129
145
81
128
135
77
216
129
165
76
108
125
118
61
103
145
207
78
193
113
103
77
49
189
132
49
131
151
96
146
136
127
54
129
116
172
110
99
117
95
83
141
118
85
125
125
135
125
129
105
125
164
122
105
128
54
120
158
131
184
106
113
125
124
95
130
123
98
77
97
54
109
102
123
95
177
136
144
103
124
118
161
104
93
95
114
105
160
113
126
135
160
99
169
131
91
141
139
143
108
144
93
177
171
91
59
142
150
113
101
139
125
117
120
92
166
140
120
83
99
149
155
91
78
148
73
90
104
54
155
81
125
123
67
91
110
113
85
123
76
141
170
77
107
108
102
108
148
137
107
101
124
140
139
97
82
108
140
112
120
98
152
143
129
138
135
96
127
134
78
125
151
78
181
92
153
138
128
148
111
107
117
120
135
79
83
115
117
177
111
102
97
131
119
141
54
145
109
104
118
69
136
123
144
218
54
113
202
99
170
198
116
65
104
67
127
106
113
59
61
76
78
135
96
93
100
105
98
159
77
132
96
147
117
106
99
99
118
99
82
76
105
122
147
67
96
87
129
146
78
141
81
102
108
111
107
81
102
118
156
133
82
84
108
143
120
141
132
105
197
95
149
129
128
108
180
105
125
110
102
78
109
108
95
150
129
120
90
115
134
131
112
59
69
100
126
95
122
97
76
110
61
159
122
139
111
96
102
107
120
144
107
54
82
142
95
107
125
125
148
111
95
107
115
54
125
90
124
103
98
135
205
81
154
191
90
96
140
103
92
95
132
123
127
186
91
54
92
129
82
136
160
105
143
130
147
186
121
212
89
127
114
177
138
120
175
161
98
98
129
106
106
115
103
113
119
100
99
120
150
110
161
98
96
87
139
122
157
135
54
165
121
108
86
102
92
107
145
106
95
102
177
76
119
76
87
107
117
131
123
124
96
90
162
141
78
128
87
103
99
102
103
118
105
144
109
61
96
98
128
122
54
98
95
108
78
108
127
67
142
137
96
109
114
120
122
123
133
138
101
92
160
93
122
131
74
131
76
98
132
67
144
104
116
72
67
94
155
148
128
141
153
147
81
127
89
54
108
119
68
148
106
159
182
225
186
143
95
117
97
182
106
124
142
97
102
146
149
148
82
49
106
86
96
125
78
141
100
130
143
135
164
81
141
125
120
121
180
112
90
121
95
98
95
54
133
121
155
59
135
139
177
68
137
161
98
177
90
97
113
115
72
61
126
81
133
125
88
120
128
77
90
113
105
113
94
96
81
83
76
133
158
102
127
140
129
204
61
69
95
108
127
107
109
54
106
54
131
106
97
103
104
138
85
98
108
147
112
82
127
54
102
96
147
118
146
98
89
143
118
90
122
108
159
102
87
103
85
105
76
161
127
106
125
175
98
95
81
108
54
123
119
87
107
141
156
128
153
152
95
102
103
126
123
145
97
128
98
74
108
124
81
133
98
90
138
161
107
83
54
153
127
177
139
135
133
74
113
117
98
93
113
106
74
79
95
146
129
112
118
120
122
123
80
149
116
82
119
105
140
93
121
115
134
90
108
113
179
142
145
115
67
93
82
121
49
110
115
93
95
138
103
122
172
160
144
61
134
85
140
106
123
148
67
106
134
98
90
113
92
102
101
120
96
78
92
102
147
107
91
142
115
99
91
95
200
113
140
77
137
133
133
133
83
163
90
130
93
174
98
146
161
54
54
171
102
127
165
79
54
95
83
155
113
161
99
120
165
143
118
100
102
92
49
114
70
105
133
100
131
144
97
105
87
105
92
59
179
128
127
67
68
135
177
89
87
82
111
62
123
170
143
154
126
81
116
115
141
133
127
85
124
102
84
83
135
129
149
145
132
142
124
75
163
111
141
54
135
102
144
93
104
160
140
133
93
54
128
97
108
142
122
95
103
110
144
139
112
108
124
124
108
133
122
97
76
104
95
138
98
81
87
90
102
149
144
108
190
129
98
139
127
149
82
133
128
54
54
123
123
100
116
102
157
165
101
106
92
158
74
93
113
128
88
98
105
139
54
104
140
100
128
76
158
99
90
105
148
101
76
98
101
75
135
93
156
81
124
49
110
102
96
95
163
90
128
119
98
98
144
108
92
130
108
121
143
148
150
105
115
112
140
54
107
121
105
92
67
146
122
140
102
97
96
106
158
110
169
167
110
95
177
100
140
152
121
108
127
117
110
93
144
86
113
103
103
82
103
110
95
157
79
122
122
96
124
147
87
95
139
191
133
122
106
95
93
98
54
106
111
113
76
74
98
81
134
113
108
120
108
144
95
102
59
161
107
110
102
134
108
149
145
132
142
92
106
90
94
133
88
107
119
132
149
67
135
69
125
118
136
113
97
130
103
98
114
98
118
115
143
75
45
154
116
59
77
111
118
103
94
148
74
128
139
161
98
54
95
139
108
126
150
146
103
93
108
158
134
105
156
107
122
87
59
125
83
104
109
115
135
108
54
74
79
102
173
67
150
59
98
98
81
125
113
100
128
97
89
98
93
49
74
162
67
147
95
124
124
128
67
146
74
122
54
95
143
144
167
127
98
82
117
126
139
123
108
156
133
108
135
127
93
143
104
173
117
102
144
127
104
115
127
103
93
76
98
100
109
98
86
112
133
102
95
127
54
199
129
133
136
81
78
206
96
108
105
95
134
124
103
162
128
140
120
54
95
116
85
133
147
132
109
177
179
144
107
106
166
115
139
133
91
153
149
125
135
108
103
131
107
103
115
145
95
124
108
106
128
154
120
54
59
180
90
119
148
108
90
115
90
108
123
97
90
170
113
143
132
130
73
115
107
143
165
100
113
133
114
127
107
82
103
110
117
108
142
125
54
96
142
61
108
141
77
121
144
125
142
95
103
148
118
111
102
165
105
108
49
87
145
111
90
116
112
105
177
125
150
109
65
105
93
104
118
88
131
135
102
107
69
115
112
84
110
132
77
131
96
143
99
81
190
54
148
177
112
148
131
109
165
125
113
67
59
125
144
123
135
98
102
117
125
98
193
49
168
96
86
135
117
134
54
122
102
146
128
108
111
117
131
83
89
74
108
177
128
119
67
79
191
96
108
56
96
118
96
108
143
143
138
129
134
116
102
80
49
138
151
102
114
184
108
82
102
157
118
197
74
54
143
165
108
121
128
127
82
67
129
122
104
123
165
126
176
81
122
159
74
136
121
102
123
145
158
125
135
113
163
177
140
109
88
135
135
49
172
124
115
120
102
119
74
102
108
125
114
153
82
111
134
106
159
105
113
99
146
87
105
146
122
103
100
161
86
125
164
155
125
137
93
143
103
129
144
153
177
144
166
202
85
85
125
127
54
122
97
158
152
142
108
73
148
130
157
145
125
122
93
113
108
132
135
105
102
54
102
83
157
130
98
105
129
148
95
90
148
96
145
107
89
120
107
105
102
127
159
83
103
105
90
100
167
78
133
158
154
163
90
206
166
131
128
152
141
102
128
69
108
125
141
141
134
92
141
83
54
113
111
131
131
143
128
139
116
103
143
96
59
169
102
158
103
95
104
68
131
115
107
163
143
110
119
113
147
119
116
54
90
83
151
83
81
89
113
102
95
72
131
54
122
95
150
118
133
148
119
80
148
119
68
125
65
138
158
96
103
103
103
96
131
141
84
105
54
131
138
101
145
81
145
136
116
123
103
103
125
140
76
125
131
106
118
112
108
112
87
87
105
103
59
68
74
152
76
108
89
54
128
49
100
105
158
71
143
93
160
119
121
108
82
100
133
84
87
158
154
91
133
119
106
99
49
173
108
168
90
119
120
131
87
148
125
110
54
103
96
146
102
134
110
74
49
83
135
108
94
148
136
173
139
114
93
134
83
105
95
106
98
116
54
174
140
120
54
149
90
74
135
118
91
108
112
177
135
121
139
125
160
74
100
105
115
140
106
103
59
77
82
104
98
163
121
105
150
97
74
54
77
107
102
98
135
74
90
68
113
180
106
119
108
77
180
116
109
143
93
82
115
98
136
150
99
126
107
99
141
133
59
159
165
108
54
115
107
161
110
128
182
90
104
161
139
116
100
94
67
119
109
151
59
133
152
54
80
152
112
130
74
120
129
106
122
104
115
108
110
104
153
184
115
137
96
74
87
103
168
144
105
54
120
165
180
93
106
142
90
108
129
133
81
118
102
145
129
77
96
166
128
116
109
128
99
107
106
107
148
120
145
74
91
98
95
112
108
85
121
109
184
102
107
85
108
94
116
95
83
112
103
113
143
81
93
74
215
149
105
97
101
132
148
150
123
99
124
124
54
90
111
135
104
125
127
102
154
86
103
94
96
127
105
98
49
126
143
139
100
90
77
117
97
90
96
150
54
122
87
134
93
114
121
54
77
141
110
122
145
113
164
116
95
106
127
144
95
110
108
116
109
124
77
86
140
92
77
111
131
103
103
141
130
128
179
76
98
125
140
82
115
135
108
129
140
106
59
95
141
131
101
124
127
134
113
112
98
156
179
101
148
113
135
153
144
138
158
108
123
125
94
86
140
110
125
82
54
116
181
110
105
90
143
109
154
143
97
89
89
133
126
87
112
95
78
133
127
93
118
77
98
156
102
136
200
140
108
81
78
116
61
87
98
101
97
124
96
108
54
128
119
81
181
108
87
96
89
132
116
100
125
177
143
115
94
140
142
114
160
96
78
116
167
128
49
120
124
157
91
54
161
103
114
161
87
102
107
147
113
132
117
105
145
99
113
95
108
164
151
134
125
155
130
150
105
102
87
122
91
125
117
54
74
94
101
74
101
93
138
99
83
92
49
151
117
124
158
121
107
97
102
97
113
144
113
158
164
59
85
135
121
104
104
165
151
54
134
124
90
78
101
157
113
85
102
113
95
108
134
138
95
132
93
124
151
87
83
89
98
81
54
130
91
139
95
85
75
133
101
97
74
153
100
138
164
180
138
114
127
105
139
113
131
114
151
78
167
120
148
163
126
101
72
115
145
72
106
121
115
54
150
94
114
87
122
130
83
110
163
149
106
179
148
144
67
108
114
135
84
108
83
108
74
108
116
108
135
105
54
119
54
93
82
142
128
49
113
99
103
108
92
138
147
107
98
114
145
139
118
74
134
143
147
140
103
104
98
95
87
128
102
137
158
140
133
76
81
98
143
126
169
161
162
87
93
61
102
98
78
96
109
74
59
82
69
111
106
120
108
113
124
131
94
142
99
133
119
107
93
149
136
177
132
90
177
150
148
166
173
90
102
102
81
108
121
216
131
125
218
134
106
166
110
90
129
96
116
202
160
158
148
151
61
125
85
152
118
113
69
125
76
149
167
106
98
127
113
87
163
114
97
160
135
134
145
108
114
182
147
140
108
120
87
81
116
148
92
87
99
79
54
129
86
69
87
90
49
134
100
78
98
114
77
155
104
138
160
100
153
91
112
139
98
183
113
124
132
49
125
165
148
54
164
151
115
129
95
166
111
96
59
124
135
173
125
117
153
54
125
92
127
102
122
142
124
74
106
79
106
108
106
107
123
102
118
81
121
118
135
141
95
54
136
105
82
69
160
138
110
102
153
49
157
81
106
104
128
61
133
143
108
180
65
107
103
117
118
106
106
165
130
108
86
116
79
117
152
134
102
158
59
147
120
81
78
148
125
102
110
106
154
93
126
125
87
115
145
158
106
148
150
109
95
101
131
111
95
125
76
102
87
128
110
67
77
106
108
110
91
98
139
86
138
85
98
102
122
114
87
128
147
102
102
111
59
108
112
122
137
111
93
105
194
115
115
98
156
161
154
106
81
145
93
129
102
85
115
163
172
79
131
148
126
67
88
162
103
131
124
117
161
102
122
131
91
122
136
154
128
131
94
185
90
137
111
90
95
108
73
136
116
81
82
96
103
125
154
115
120
94
143
117
88
139
76
161
95
168
54
131
95
112
112
69
93
128
98
152
117
118
167
116
142
156
117
126
92
126
154
118
103
84
84
105
115
186
92
118
101
76
135
125
160
92
148
100
76
140
79
97
134
135
131
109
150
100
118
146
106
182
106
101
102
163
123
134
89
115
125
108
108
123
119
103
108
111
125
117
145
83
59
168
138
118
82
59
140
156
157
127
193
127
105
139
126
54
179
161
113
149
95
83
141
83
150
122
94
144
98
111
104
98
112
110
115
85
83
76
104
125
105
90
132
160
129
113
138
102
122
143
128
180
54
132
110
131
123
108
110
112
141
158
128
123
90
105
137
100
59
105
85
107
95
114
79
119
138
103
122
82
109
148
97
108
165
80
118
74
54
100
130
113
61
103
153
113
87
164
158
129
54
83
102
108
137
113
144
78
141
145
141
88
85
132
87
98
96
115
128
124
131
102
92
125
54
101
114
79
136
163
165
74
76
132
142
91
49
161
161
136
134
137
133
118
116
54
113
76
114
118
61
79
74
172
95
127
110
76
90
95
147
151
54
135
90
99
102
179
82
103
181
115
154
137
118
165
117
140
128
90
124
119
54
80
108
119
117
101
121
108
132
98
82
110
102
122
78
110
125
143
93
112
54
108
113
95
90
143
147
95
107
120
95
107
130
194
137
130
100
102
137
123
144
108
103
54
94
80
134
54
84
133
154
146
145
105
93
163
133
96
143
144
118
77
69
136
79
108
101
157
101
54
130
133
131
83
98
177
108
91
108
77
109
148
95
124
96
133
114
135
112
102
94
114
116
116
128
116
102
87
96
67
123
143
127
113
103
69
119
95
129
128
113
86
103
108
117
113
129
137
135
154
108
101
131
71
124
83
118
111
108
107
138
104
116
118
127
139
173
90
79
148
143
116
81
54
128
124
153
91
77
138
93
185
103
113
158
89
98
135
99
90
115
136
81
85
145
147
121
93
90
98
148
101
98
103
138
94
123
82
133
100
125
125
108
190
139
54
125
131
54
165
125
118
165
118
177
105
148
95
89
131
144
92
137
186
157
76
122
162
90
116
134
140
133
54
83
111
54
85
99
54
108
135
83
138
165
170
125
90
144
85
133
144
103
125
143
142
151
138
118
81
158
107
162
135
102
159
83
134
103
139
74
143
160
115
54
137
102
69
74
113
54
120
116
113
113
131
127
54
164
102
146
65
102
206
85
139
74
143
147
125
138
120
67
106
127
95
96
131
120
98
54
98
113
54
119
133
106
54
95
87
148
74
183
124
54
102
78
108
112
149
85
135
146
102
80
121
159
144
132
82
105
105
144
93
106
153
150
135
116
54
139
108
107
54
140
148
135
100
122
205
101
69
89
123
146
147
171
87
115
132
76
114
122
120
107
161
139
103
123
90
100
160
111
108
124
102
101
172
87
90
78
108
129
115
116
115
164
92
54
162
148
78
108
107
106
115
87
168
123
81
135
157
158
113
141
89
67
113
49
81
101
59
93
116
108
159
120
146
127
135
135
62
116
83
125
119
98
188
177
82
147
92
54
139
95
156
125
89
87
99
125
102
134
82
135
113
119
177
102
119
125
99
148
102
106
106
103
115
116
86
96
129
92
143
118
146
117
116
98
113
54
59
76
130
98
144
133
108
123
134
115
135
135
127
133
137
76
127
118
54
54
160
114
154
145
99
80
136
102
116
138
83
135
81
95
95
145
148
133
100
122
77
124
135
74
123
102
120
119
127
135
90
181
59
152
116
109
95
123
108
83
88
147
112
116
113
177
150
115
138
149
105
102
77
110
54
122
157
76
135
76
134
163
54
149
103
105
77
158
155
137
82
164
121
83
127
122
113
102
157
129
138
139
100
150
115
103
127
105
100
90
120
59
139
133
105
87
83
95
98
128
143
94
130
140
108
145
148
123
117
135
129
98
93
118
122
68
95
148
54
91
117
122
146
140
145
98
123
59
89
135
49
133
68
133
82
107
147
135
168
109
131
122
133
81
80
113
140
130
126
122
103
116
108
120
81
98
91
127
115
129
135
102
131
144
128
129
160
109
78
73
101
89
95
139
102
122
105
109
132
109
129
177
81
85
74
92
115
104
125
105
161
95
79
124
108
105
121
149
101
129
77
114
177
207
89
85
153
178
148
120
173
122
99
104
93
148
165
86
148
54
111
110
121
122
122
99
116
49
77
155
153
108
81
77
135
121
102
112
120
125
102
146
162
122
134
150
98
103
127
128
68
87
177
85
106
84
126
54
134
81
133
105
59
98
122
135
145
89
77
54
195
132
77
87
117
139
87
146
140
87
140
78
82
142
108
131
106
150
74
132
152
100
61
111
123
103
98
54
119
115
176
98
139
80
200
132
54
143
102
128
145
98
111
107
153
102
156
128
94
117
49
151
83
74
122
101
118
133
100
143
103
113
93
128
127
101
129
158
136
76
102
54
89
116
109
128
115
111
125
136
119
80
110
77
93
99
102
108
93
123
108
103
76
105
76
69
97
115
113
77
141
128
73
134
128
115
183
92
123
77
91
82
98
98
110
105
131
94
145
137
156
158
78
94
105
96
85
139
49
95
105
107
110
160
121
139
141
84
128
108
179
102
185
97
127
119
92
66
90
76
141
59
93
128
131
163
82
131
154
125
59
107
98
153
98
104
151
87
81
108
54
111
59
139
126
87
147
118
144
82
133
90
83
81
107
163
131
139
150
125
77
140
121
69
148
140
167
54
81
49
149
125
93
96
81
124
80
54
176
109
90
145
129
151
98
149
61
214
143
73
87
114
140
49
61
97
131
96
95
103
148
139
103
137
122
105
82
81
93
54
108
135
121
136
172
113
148
125
94
99
158
92
91
93
116
87
127
156
144
134
120
144
97
110
144
80
90
151
107
54
125
133
76
184
127
59
99
102
128
72
127
110
125
81
95
151
80
148
156
68
110
76
132
54
59
116
148
87
95
163
147
81
59
49
113
127
170
59
99
176
162
166
133
108
126
87
135
143
98
103
144
119
95
94
73
101
59
109
102
87
144
85
89
131
133
153
100
178
87
164
124
133
92
107
135
102
76
125
103
159
81
77
113
135
77
117
157
102
173
92
143
122
82
119
82
113
101
142
105
112
85
124
126
111
144
127
119
93
119
132
160
114
102
102
95
54
139
85
149
104
79
107
108
116
95
125
109
122
110
49
102
54
132
107
112
132
94
95
134
103
144
54
54
122
133
122
118
96
74
120
116
143
78
127
112
115
102
78
120
98
120
95
54
162
87
194
87
134
147
82
151
135
103
148
163
93
120
108
157
119
122
78
85
125
111
146
129
59
145
81
141
102
102
89
87
119
95
67
141
102
106
128
148
153
123
126
128
85
49
125
156
102
108
152
133
107
149
95
54
77
77
74
109
49
80
111
165
182
78
54
101
81
80
95
108
125
98
146
173
85
100
85
95
102
146
107
99
106
151
126
81
75
132
81
83
128
108
151
124
90
100
108
85
128
113
137
89
74
134
109
102
193
144
74
145
113
126
170
130
105
74
95
157
69
105
104
121
80
103
95
95
110
129
101
167
116
103
49
108
92
72
76
77
87
127
108
153
119
129
138
81
128
149
77
87
49
127
114
82
141
142
152
122
102
80
105
136
135
59
101
54
95
128
140
96
102
120
125
168
84
82
165
116
147
131
102
158
117
103
133
139
122
115
74
120
107
130
91
119
111
106
112
153
74
144
88
114
78
77
114
162
145
130
125
98
108
54
101
111
145
149
85
54
148
113
95
74
116
113
125
95
106
90
49
109
77
87
146
131
140
118
116
128
96
131
141
49
137
105
114
94
92
138
131
140
59
107
93
78
117
95
117
139
95
145
131
77
111
106
120
115
140
158
140
96
99
110
100
127
129
204
129
117
93
77
127
91
107
82
117
131
122
148
107
124
87
79
158
126
92
142
98
85
82
102
122
139
81
125
82
95
113
112
89
98
85
109
102
89
135
129
68
102
101
92
87
137
84
54
119
100
111
99
113
102
132
164
129
122
133
94
128
108
77
129
168
83
101
142
180
67
97
144
82
72
117
108
104
123
96
111
131
131
79
114
108
175
144
144
93
145
142
103
114
85
108
77
108
122
103
139
49
113
94
90
148
118
140
156
82
166
98
111
133
149
112
137
116
106
146
128
49
85
96
117
97
123
158
135
139
95
182
93
128
120
112
98
93
149
83
177
94
191
135
110
90
135
85
100
106
103
83
131
143
107
82
124
96
145
127
151
167
159
99
114
121
95
95
69
87
67
123
108
102
49
98
94
162
155
98
135
143
114
80
91
101
149
77
105
121
124
78
112
105
150
76
97
131
97
147
104
59
107
89
122
106
127
101
105
121
109
101
164
134
116
76
81
120
106
102
137
86
166
54
108
100
95
111
108
74
133
100
118
131
73
90
150
115
173
120
177
102
102
77
149
178
91
104
103
78
173
90
102
115
94
131
150
167
105
92
102
88
107
137
142
125
125
81
116
101
125
95
49
163
102
49
141
97
129
127
143
54
82
111
150
122
65
97
130
117
89
146
115
116
153
131
128
207
132
127
93
90
144
95
108
144
133
123
81
159
125
67
76
97
126
126
54
93
131
118
61
139
119
124
107
125
76
101
97
99
81
125
95
97
107
112
106
74
163
54
129
104
94
134
134
103
127
144
151
142
111
177
82
155
166
131
105
54
115
68
105
151
83
146
108
110
150
120
100
111
96
102
151
114
98
90
86
129
99
156
96
98
145
68
128
87
182
95
89
140
106
85
80
134
134
96
54
113
147
74
143
103
115
110
101
90
154
77
102
131
107
156
106
95
186
128
98
105
163
126
131
129
150
77
159
132
87
84
81
70
54
54
120
123
117
76
155
156
164
95
87
132
124
101
102
108
122
105
109
148
61
108
100
120
54
95
101
127
113
78
112
76
177
80
131
83
126
138
107
127
95
135
144
125
165
84
108
115
97
91
103
136
180
81
105
105
170
114
178
148
145
103
77
144
98
97
67
77
112
133
67
158
90
120
121
102
63
124
54
93
65
144
109
90
77
180
113
112
102
98
54
134
85
134
140
129
159
145
107
78
96
188
95
115
142
97
98
109
117
128
113
113
160
126
113
122
147
78
158
103
155
108
105
120
136
81
54
122
102
146
186
129
100
102
76
114
93
77
127
110
77
127
54
158
122
139
145
114
194
146
116
184
81
96
154
107
82
93
90
128
122
121
87
93
136
119
135
92
117
97
108
74
74
117
112
164
112
160
161
78
76
115
165
177
152
110
142
95
138
143
130
119
103
54
106
122
206
113
158
98
86
156
96
148
135
113
80
83
157
109
136
93
98
96
149
95
54
124
129
126
101
105
103
96
118
141
103
106
128
105
115
133
98
68
98
91
107
186
149
85
113
114
126
202
95
85
99
151
90
78
145
95
76
124
142
124
136
90
123
103
148
88
98
147
116
54
141
123
81
78
105
122
129
149
177
118
174
103
163
91
92
93
120
148
74
123
128
108
65
102
96
116
93
54
130
89
134
111
150
108
120
117
127
138
112
104
108
111
163
108
106
143
133
74
102
107
95
114
161
130
65
154
151
109
139
137
153
90
69
133
142
103
98
59
76
117
108
133
103
108
138
119
105
127
145
144
90
132
131
130
87
133
125
131
109
89
98
93
118
102
163
177
109
99
120
155
108
103
125
108
96
82
112
118
100
125
96
138
121
119
149
144
100
149
69
121
135
88
153
139
150
107
128
105
134
102
109
113
83
95
130
93
105
74
96
145
89
59
136
142
128
156
85
117
113
169
91
158
108
102
69
67
130
69
100
142
67
112
92
149
135
135
108
163
124
95
128
113
134
127
126
120
103
81
94
146
127
97
124
74
99
113
124
77
86
135
113
49
127
96
177
113
54
87
113
151
140
146
77
138
163
54
68
138
105
166
124
95
67
95
127
125
125
111
110
125
69
122
115
78
139
144
150
143
109
107
125
101
87
108
131
109
95
139
86
148
108
131
81
120
59
105
74
125
109
137
83
135
49
131
115
136
84
54
107
109
73
90
136
123
108
107
127
109
125
100
112
100
108
113
135
115
97
118
115
128
134
121
145
177
105
74
144
98
113
143
49
151
117
180
129
95
74
100
67
98
182
130
124
148
109
135
106
83
81
156
98
138
91
117
97
126
135
121
113
102
110
122
181
148
108
133
98
98
126
161
128
147
125
137
54
183
161
131
145
97
147
54
116
159
78
95
147
95
144
131
76
91
165
146
123
67
122
87
131
103
171
141
93
176
161
140
134
67
133
49
54
136
107
117
165
113
102
102
132
107
145
145
104
125
54
151
54
139
119
140
93
127
125
98
128
76
77
123
92
106
90
87
95
83
108
78
77
97
54
108
115
122
112
90
109
125
119
192
143
93
115
139
161
136
184
148
88
104
125
147
168
90
105
103
171
157
128
115
95
104
132
133
138
119
144
102
82
124
159
144
59
117
54
118
81
140
141
158
137
90
178
166
135
109
137
113
95
95
129
93
83
49
168
65
87
108
110
119
92
81
80
131
97
170
125
141
164
122
93
99
103
135
77
95
119
80
128
77
154
81
108
165
102
96
105
136
65
135
113
124
84
49
81
151
87
117
131
54
107
95
143
49
94
165
109
102
116
102
113
69
125
101
95
125
146
89
157
96
77
132
102
107
108
102
90
54
83
93
95
123
135
84
128
131
153
77
147
129
88
116
140
134
95
103
146
129
127
144
111
97
157
132
136
156
102
125
76
94
133
97
142
67
87
96
130
165
68
113
67
111
97
113
103
110
108
147
108
73
137
91
138
87
110
185
115
148
106
108
110
83
95
97
81
142
116
116
103
111
156
90
91
116
124
95
90
144
74
91
99
90
101
130
158
162
123
95
99
90
131
101
82
102
146
100
128
122
157
141
116
143
74
90
97
100
91
95
97
140
122
95
132
218
123
54
133
98
154
102
143
83
95
96
81
107
110
54
109
144
98
139
132
120
145
121
70
77
108
133
144
106
90
125
129
107
124
103
122
106
81
100
145
165
164
122
219
96
161
115
73
77
102
125
125
115
95
93
120
155
148
98
130
127
111
147
103
140
76
87
161
171
155
167
77
85
107
161
103
133
114
135
98
54
136
79
132
100
99
87
164
98
126
103
131
59
93
82
108
78
146
122
98
109
139
118
140
147
196
147
95
115
102
114
79
155
120
127
144
54
119
90
83
128
177
129
61
81
95
96
100
143
74
110
95
76
118
81
54
163
102
106
127
158
81
137
85
74
112
154
107
134
84
108
140
69
131
49
54
143
113
107
173
177
93
118
107
96
108
103
113
139
105
82
108
81
101
133
107
98
122
127
103
103
101
124
105
119
115
54
102
77
143
149
139
135
89
113
105
179
73
109
89
80
104
154
143
109
74
69
98
83
127
102
101
128
116
95
167
97
150
78
95
135
133
59
134
130
85
104
90
109
95
105
147
120
108
125
88
99
115
123
159
91
143
133
74
102
102
180
122
98
148
82
54
133
87
102
97
122
74
148
97
87
102
161
132
138
101
106
73
90
98
91
125
169
188
143
81
87
81
108
112
161
80
95
103
90
148
94
112
112
102
96
122
146
127
96
74
95
54
151
129
141
143
163
114
151
95
102
128
164
67
110
139
105
148
113
94
140
132
93
81
157
59
134
82
167
133
54
102
137
87
143
140
206
54
140
123
124
98
103
98
87
80
111
99
103
54
135
97
112
115
100
132
102
152
104
144
155
95
61
121
54
108
194
149
127
107
114
77
99
108
88
98
91
155
54
128
116
90
111
102
95
169
115
102
113
142
98
139
68
90
81
131
97
94
138
204
77
128
139
103
93
113
93
111
102
126
116
105
122
113
134
105
76
134
67
78
92
94
102
124
87
112
125
54
125
108
135
119
76
121
110
138
102
74
114
100
106
97
98
49
102
94
81
143
101
117
177
151
153
79
139
119
102
110
112
95
102
115
147
144
102
142
108
68
81
85
122
102
108
94
83
103
148
111
94
160
149
98
106
129
136
144
131
145
114
121
146
115
81
125
166
106
104
141
165
169
104
49
129
118
102
204
90
102
184
115
108
120
124
109
147
110
148
100
177
218
139
90
125
129
125
108
125
110
61
102
117
97
110
143
148
151
93
108
116
102
142
103
93
54
139
148
118
95
89
102
81
168
115
136
139
134
90
116
54
139
177
138
98
113
117
141
149
102
128
49
78
49
95
151
81
161
95
115
110
76
135
139
78
144
140
59
94
105
124
95
104
130
102
76
144
130
118
151
118
103
108
76
123
164
111
118
133
61
76
118
54
98
90
151
101
82
80
79
59
153
91
122
150
87
167
69
98
144
74
219
108
140
144
49
148
129
95
140
54
114
126
139
199
104
114
110
123
91
120
123
108
54
96
175
148
86
77
100
97
124
142
97
131
98
112
179
108
67
108
139
102
54
59
68
103
125
102
132
117
168
144
100
118
82
98
139
140
114
107
142
105
111
77
147
125
69
106
49
54
76
131
133
103
114
129
131
127
122
196
68
81
147
59
54
77
133
59
102
88
110
96
155
73
135
85
74
138
107
130
91
129
90
124
128
102
72
142
138
49
90
107
126
146
96
102
111
134
131
161
161
129
139
135
115
98
130
131
111
98
158
161
82
102
74
144
81
143
90
98
54
112
82
90
122
144
98
106
108
105
161
152
140
148
95
77
140
128
151
82
103
121
96
131
125
54
113
90
96
102
105
199
133
118
83
168
112
115
139
85
102
105
116
127
100
87
61
117
102
131
118
111
95
90
54
159
154
119
182
107
69
65
128
140
114
49
131
105
103
144
100
108
54
102
158
151
134
79
108
149
102
54
109
96
124
128
77
94
77
113
150
85
98
149
98
90
103
148
94
80
104
123
139
133
135
166
81
54
119
100
113
90
83
101
74
113
183
119
133
159
103
61
153
89
120
81
103
108
105
54
113
95
110
83
97
87
78
134
76
119
49
143
121
129
141
98
109
144
165
99
136
110
95
120
98
144
126
57
123
54
113
95
98
141
133
119
159
151
127
106
170
73
91
137
110
127
103
141
132
126
103
105
54
148
118
121
93
110
93
132
90
54
89
145
67
137
69
125
128
49
117
113
82
81
165
131
158
107
146
123
102
96
105
118
124
80
80
143
74
95
158
65
103
137
100
54
54
108
100
143
49
102
96
115
129
173
116
98
103
136
87
108
173
109
54
128
139
82
110
111
102
119
108
140
129
82
130
161
160
117
54
96
88
105
172
148
120
95
67
139
91
95
129
99
95
54
163
129
148
115
102
125
83
86
125
151
54
117
95
95
82
82
95
102
108
93
108
133
112
148
85
87
124
138
110
113
100
122
109
143
86
140
120
127
108
102
113
138
96
145
109
59
102
85
113
137
72
112
176
151
124
107
99
89
114
137
82
135
126
93
81
120
54
144
129
126
141
127
61
115
140
125
101
103
81
135
129
95
115
78
118
125
136
125
158
106
139
117
144
54
103
175
96
101
95
115
139
158
126
96
108
108
176
177
134
131
92
133
83
97
98
108
194
85
54
108
74
96
108
121
98
79
156
145
165
54
82
146
81
146
158
114
106
78
116
127
152
74
164
79
124
95
108
115
141
143
124
113
79
81
93
163
148
81
132
111
153
143
146
133
112
136
96
107
74
141
164
95
125
78
95
145
74
107
177
81
109
143
77
115
158
83
143
115
132
95
54
104
108
134
151
108
148
145
144
89
99
102
102
161
122
139
92
193
112
147
67
137
141
115
98
87
160
91
92
96
141
145
108
125
78
161
177
142
145
106
70
116
119
97
107
159
94
161
108
154
112
155
84
114
123
110
122
54
113
138
77
87
105
90
72
161
123
120
97
103
105
119
135
117
88
186
98
106
49
131
146
76
146
147
84
54
78
135
113
106
156
59
108
171
144
77
72
103
145
95
158
146
109
113
83
108
158
49
95
82
146
177
92
179
124
83
120
129
122
144
83
118
103
98
76
97
150
109
118
54
123
93
137
141
54
119
93
124
105
112
208
189
123
159
107
98
74
148
156
105
89
124
54
154
101
135
128
101
136
204
100
106
188
86
108
134
151
155
163
125
106
194
110
135
127
78
133
91
59
138
118
132
93
102
153
49
76
67
108
128
91
159
102
98
131
97
91
113
115
78
54
104
81
112
152
143
138
99
95
114
101
49
105
125
169
105
93
124
145
105
127
104
87
113
100
127
54
81
123
112
49
89
85
130
54
85
104
117
101
182
82
146
102
111
125
132
129
154
91
119
108
117
166
49
107
119
73
131
54
87
67
92
108
115
107
85
54
123
184
95
115
54
117
81
87
93
78
95
159
76
76
81
96
170
128
148
143
80
111
115
137
42
165
90
98
90
108
54
54
54
106
122
114
114
131
78
81
128
95
102
54
98
68
135
81
143
140
150
142
87
164
160
102
74
106
98
54
143
137
133
124
76
136
173
77
121
95
131
152
88
59
112
87
74
102
108
124
97
124
147
82
95
143
130
118
82
130
125
93
89
82
97
129
87
102
111
113
133
90
148
156
100
95
93
105
95
147
140
105
188
94
95
90
80
82
113
91
103
167
90
162
135
149
103
119
116
99
105
139
133
54
134
95
129
148
102
159
146
118
76
97
92
107
160
59
97
227
136
132
196
130
149
138
127
67
76
110
198
102
135
122
82
54
105
127
112
160
106
148
67
54
118
102
157
104
134
125
125
116
115
54
95
139
106
153
149
54
82
130
131
91
93
139
103
76
162
49
87
118
100
125
136
96
135
108
98
77
115
132
78
134
105
119
148
93
104
54
150
186
135
175
108
115
99
122
103
135
154
127
125
95
100
129
135
160
93
83
114
159
109
81
133
146
95
126
117
113
74
42
100
178
109
122
79
103
143
98
80
83
106
141
139
134
74
158
122
134
105
121
165
118
93
122
103
81
126
121
197
108
97
111
107
125
72
54
103
49
157
144
139
103
98
103
133
112
125
74
83
94
81
107
74
110
154
139
115
143
118
114
97
122
107
74
151
113
108
128
135
147
138
108
54
83
113
105
91
49
113
133
134
98
150
143
102
66
99
113
151
95
127
103
78
177
77
93
132
86
164
150
85
59
142
149
161
67
137
122
72
109
135
73
146
148
146
166
144
100
95
97
185
102
115
144
108
131
149
129
79
124
140
115
116
96
95
156
130
134
135
103
69
144
129
113
90
158
102
144
158
78
108
126
89
108
87
141
112
114
105
118
127
77
153
84
108
101
90
76
119
145
147
128
103
107
138
133
124
144
80
167
136
91
95
59
90
172
101
65
153
59
143
115
154
81
133
84
139
116
90
85
141
87
124
87
81
125
105
108
54
83
59
98
74
123
78
112
132
132
119
133
148
129
137
96
90
83
104
105
143
81
117
138
108
129
105
140
117
139
108
88
101
116
93
132
54
120
127
123
127
157
124
131
119
91
113
117
126
123
105
74
105
98
185
154
93
95
84
145
76
102
161
130
59
114
113
140
130
128
144
94
81
156
121
112
135
137
129
85
147
92
103
139
67
159
125
130
105
82
128
101
92
128
129
119
54
98
144
95
143
115
105
83
95
134
97
98
113
94
137
90
107
152
125
113
116
102
140
114
101
98
83
131
136
116
144
176
133
213
122
124
106
106
127
127
54
132
143
113
97
200
103
105
62
98
134
87
144
126
109
102
109
128
113
93
139
69
135
148
96
118
89
103
106
130
125
98
118
158
87
140
156
106
108
128
110
94
54
104
77
118
108
110
145
99
91
62
54
127
121
151
98
104
117
134
54
115
103
102
113
125
106
149
97
113
108
131
90
85
115
115
144
102
104
59
105
81
93
102
80
156
108
113
93
115
147
152
112
147
78
74
74
126
167
143
114
120
156
76
95
104
108
144
128
95
122
49
103
145
138
149
87
116
142
140
116
123
130
106
177
123
103
83
116
77
144
135
109
84
101
49
100
140
145
143
136
59
126
95
102
62
112
170
127
108
108
98
98
159
74
173
160
113
179
95
137
103
54
125
135
54
126
74
59
107
101
89
107
131
97
121
102
90
107
73
74
130
112
81
106
54
100
96
81
148
140
106
54
102
144
101
129
111
127
106
113
146
140
122
91
95
165
133
147
113
67
103
122
139
67
144
128
125
139
144
101
144
159
49
128
117
127
95
163
135
142
102
99
54
130
193
104
125
92
103
107
86
130
81
151
105
143
163
135
68
93
83
100
105
109
109
98
104
157
90
54
120
68
148
112
161
81
106
147
124
113
144
69
143
133
102
83
102
141
125
103
103
125
119
94
131
137
112
123
135
107
126
103
107
117
148
125
83
128
74
124
190
83
148
54
85
120
161
115
127
86
152
159
136
120
125
87
74
131
158
136
76
124
172
106
123
118
93
102
107
104
157
93
142
103
127
127
139
107
115
96
59
59
131
79
87
161
143
113
127
143
93
95
154
161
92
127
200
86
94
76
85
67
74
80
138
103
92
54
135
146
109
128
102
92
83
95
108
69
170
76
81
107
137
169
82
135
142
98
132
101
97
67
101
137
140
131
156
118
138
150
120
159
118
124
115
94
162
122
87
132
114
112
87
114
101
95
93
162
145
120
105
95
146
54
124
97
147
138
105
148
117
103
120
138
90
108
77
105
102
108
54
69
128
85
115
113
88
172
100
115
108
123
121
49
105
77
74
173
179
98
95
78
105
73
97
98
131
103
77
171
150
108
97
145
68
82
113
83
102
132
98
177
152
158
134
81
135
163
157
135
139
127
143
153
82
101
131
90
82
158
173
114
98
103
78
117
106
141
103
113
128
130
121
117
125
97
175
124
102
127
121
68
133
104
95
98
140
118
133
116
135
80
143
104
151
145
103
104
143
181
140
59
137
102
122
132
135
102
128
116
133
113
128
77
128
160
151
131
125
81
194
136
124
158
170
122
125
146
113
88
112
87
95
138
150
90
98
87
145
91
106
110
135
74
98
117
117
127
103
115
161
127
113
141
128
129
133
112
134
140
109
141
141
76
127
102
114
130
155
102
42
111
103
108
109
102
101
122
78
95
89
123
167
166
181
94
129
49
54
102
143
144
106
200
128
129
49
102
150
95
140
101
98
104
123
81
90
97
127
161
149
103
108
116
98
124
120
142
128
107
132
147
108
139
140
97
110
95
98
161
149
123
140
49
138
125
94
103
149
129
67
146
136
77
104
67
95
151
128
84
54
129
144
168
49
103
78
108
93
120
61
103
135
113
115
145
106
54
125
137
113
68
105
112
122
131
116
54
95
144
95
102
144
105
126
102
101
124
115
126
116
120
166
82
133
82
94
99
112
97
81
131
65
113
128
81
125
170
103
81
129
139
153
145
129
109
104
148
143
104
106
131
108
108
160
180
118
91
145
136
84
109
123
98
136
109
135
49
103
105
132
108
148
129
108
128
120
85
79
129
143
93
98
135
115
148
121
193
183
135
113
163
126
108
131
129
134
96
54
128
103
97
104
54
105
154
87
135
106
149
74
119
114
146
76
108
111
49
75
144
115
104
175
140
106
61
86
141
108
103
165
161
80
148
129
80
121
84
94
82
49
125
131
90
148
103
126
131
182
113
108
107
54
120
167
82
123
143
105
67
90
80
88
131
172
108
131
139
107
93
129
74
124
120
146
84
160
157
98
142
102
108
102
54
118
152
107
123
103
106
147
143
76
78
69
125
105
136
90
54
111
127
113
149
131
100
131
74
164
123
105
162
115
166
59
127
111
102
148
165
83
134
88
114
95
158
112
142
125
115
133
84
143
177
101
138
137
129
76
108
106
135
82
106
122
100
150
127
89
87
78
125
95
120
98
108
169
92
111
93
179
115
158
175
74
118
151
65
140
128
87
134
167
125
184
112
89
95
177
99
152
140
178
101
74
80
87
154
95
109
125
104
99
99
103
108
104
80
110
161
148
103
136
102
129
102
103
101
145
83
143
80
59
86
109
137
145
120
127
131
87
133
113
87
150
140
113
82
147
135
111
114
107
97
54
78
103
106
134
101
77
143
144
81
104
125
202
93
122
144
107
144
102
135
108
166
102
83
95
138
142
98
82
96
158
102
146
139
138
133
130
101
143
92
91
118
61
123
128
148
125
143
115
98
126
198
135
108
160
124
108
129
96
148
172
85
109
103
126
68
131
156
108
122
128
153
117
83
96
136
126
103
93
128
122
109
110
88
95
103
100
108
125
154
97
110
81
123
81
118
106
107
117
107
133
155
49
54
138
101
124
126
69
166
112
99
125
54
173
114
130
106
113
89
87
93
79
108
81
85
108
77
134
157
89
61
147
54
127
95
163
108
111
83
98
89
49
87
103
83
45
54
49
130
146
74
110
108
125
162
93
125
128
113
100
125
129
117
96
131
104
114
135
161
131
104
155
144
108
103
103
91
103
156
79
190
131
178
49
54
116
74
184
151
113
97
54
160
161
78
90
143
96
120
78
108
148
68
154
125
122
145
106
174
93
86
112
42
119
142
87
54
139
116
80
107
105
135
129
138
54
105
165
102
178
143
122
125
92
108
148
95
93
101
106
95
114
107
124
101
140
120
127
88
126
98
54
87
107
125
74
155
127
130
132
106
54
154
77
95
117
118
151
135
133
217
94
108
62
100
90
108
107
108
133
81
158
77
106
153
69
115
105
87
114
160
102
120
103
116
125
84
95
90
130
117
102
152
98
108
54
81
76
105
130
198
107
94
144
101
130
77
155
65
90
54
139
140
106
137
115
80
148
119
74
95
96
125
134
85
113
149
49
124
125
97
118
110
76
131
101
135
125
143
99
117
142
77
102
65
102
177
126
141
90
131
90
110
124
54
154
133
81
106
130
146
108
128
59
120
124
106
128
122
170
79
77
133
106
69
177
100
133
91
135
118
95
54
152
113
96
151
134
117
108
115
102
93
89
128
155
120
102
129
144
54
78
87
109
103
102
138
54
102
84
106
110
130
73
54
110
140
95
147
54
69
141
98
130
147
185
61
132
144
105
135
156
165
107
80
49
225
119
95
102
45
95
99
134
78
113
54
76
102
178
121
133
121
96
97
132
106
69
125
114
135
175
95
152
78
140
98
142
106
80
108
94
87
105
89
91
125
124
74
117
93
113
54
88
109
112
119
96
108
101
81
81
98
133
115
165
96
116
115
102
59
74
123
96
118
112
135
133
105
106
119
131
108
127
110
167
49
128
121
141
98
59
109
110
95
141
141
137
154
101
157
145
49
103
133
143
49
117
122
133
105
83
108
54
145
95
130
84
132
145
79
191
95
145
77
148
87
76
147
115
54
125
83
119
123
120
154
126
102
108
54
104
134
147
122
138
88
100
95
227
49
141
95
177
123
133
123
142
95
108
106
108
99
54
49
172
84
92
121
68
98
142
98
88
107
107
108
161
103
90
98
133
116
100
61
97
105
161
107
128
110
113
131
98
102
49
69
105
121
100
110
103
125
128
127
118
99
149
148
143
122
92
143
104
119
101
135
108
59
108
94
139
161
113
107
124
120
61
143
119
81
156
117
86
135
104
138
151
86
204
83
107
82
116
107
173
87
131
108
96
54
130
90
147
151
95
104
107
156
81
138
128
145
148
54
107
82
129
103
95
158
120
148
101
113
84
147
105
141
54
149
81
111
99
78
105
98
93
54
98
135
142
125
76
97
100
133
134
91
128
54
166
117
92
88
147
67
106
129
161
147
106
113
99
112
102
54
154
118
79
61
125
102
165
107
148
122
102
135
139
95
200
90
74
109
134
140
168
138
106
114
146
54
98
125
141
74
133
106
117
136
87
103
94
120
67
81
148
85
99
172
81
96
141
110
114
83
93
54
118
96
106
112
119
141
135
107
129
148
89
104
98
115
113
110
115
116
59
123
81
128
80
54
133
150
84
179
137
97
141
134
98
92
119
103
54
111
80
127
77
93
102
161
87
78
152
95
127
112
99
113
136
127
87
123
96
91
146
109
105
82
123
127
129
87
54
108
129
108
105
83
187
104
126
105
115
112
130
92
93
200
109
103
177
133
146
95
123
82
110
104
54
167
89
105
133
112
161
89
136
67
125
103
92
131
107
93
144
95
85
100
122
80
179
101
163
120
103
179
101
133
136
128
119
79
109
132
98
108
105
196
81
162
110
108
104
101
108
115
93
131
138
107
89
161
54
200
108
59
77
83
120
87
133
156
128
113
106
95
152
134
98
125
92
88
108
132
146
150
105
95
133
184
147
168
103
130
115
95
128
116
154
105
129
123
67
154
131
107
154
95
176
142
138
181
119
118
140
49
67
113
132
129
117
99
87
132
93
94
143
161
161
156
126
102
100
129
147
108
125
87
65
95
105
108
49
126
113
59
49
98
119
122
78
132
124
130
95
117
127
136
85
133
146
140
74
102
101
167
106
102
81
139
106
132
102
83
135
159
145
158
86
83
113
121
119
131
108
79
81
127
54
107
122
91
142
164
89
74
54
98
98
103
104
140
102
74
107
116
165
134
94
154
125
148
102
98
161
103
108
138
98
132
135
92
115
124
128
90
77
92
117
108
102
49
106
95
138
159
82
45
114
90
127
177
103
134
85
107
78
97
116
105
96
155
181
117
93
132
124
140
74
114
103
108
123
77
98
108
95
106
140
113
154
96
59
122
74
49
146
96
98
95
124
128
104
143
123
96
61
161
155
113
95
59
145
138
162
81
158
124
119
87
87
54
96
120
94
157
122
54
140
99
94
73
131
172
159
82
96
119
49
132
166
54
122
135
70
140
98
102
84
135
100
97
72
134
122
106
174
99
49
124
125
101
122
141
111
170
61
161
160
146
68
104
97
95
100
169
132
102
70
98
103
101
105
119
54
82
91
111
129
142
99
125
117
153
102
79
54
106
121
106
159
114
95
135
74
126
158
92
158
151
103
122
100
110
106
105
90
80
131
121
54
161
95
82
137
81
128
177
124
91
127
152
116
145
121
98
158
77
94
194
83
119
115
68
49
130
151
105
113
165
153
108
101
101
130
161
128
54
98
116
117
95
114
126
113
67
91
94
167
71
77
118
80
102
80
91
148
102
128
125
101
54
135
123
180
81
93
123
102
121
108
85
54
54
125
92
136
127
91
127
214
98
107
99
152
98
132
85
111
113
141
85
127
96
98
200
128
172
122
134
127
107
148
141
90
123
157
88
97
114
136
95
108
136
128
125
117
98
101
100
99
97
91
81
150
103
153
131
163
198
154
81
92
89
172
135
109
157
134
123
138
89
95
78
107
82
49
165
85
102
142
95
101
79
102
107
192
73
153
76
155
102
107
114
134
77
173
169
151
111
69
81
120
128
125
111
74
148
69
134
103
135
102
94
83
118
102
113
110
78
93
108
154
80
125
127
119
120
80
159
118
155
189
129
90
103
121
113
49
79
125
67
114
54
143
54
125
95
93
102
95
104
117
141
106
158
119
79
125
59
83
110
168
91
94
81
107
135
80
113
154
124
127
161
115
101
95
135
107
92
148
150
84
105
192
135
101
143
139
54
81
144
140
107
139
74
102
85
114
108
131
108
111
139
151
54
167
87
90
102
116
101
126
108
120
99
110
87
103
118
129
96
112
119
81
109
98
98
96
129
106
177
84
73
116
100
89
144
120
131
116
139
158
124
146
145
82
144
96
77
121
91
81
127
105
110
179
120
125
113
115
135
157
120
90
98
106
114
112
99
106
81
67
77
84
122
156
108
184
204
172
74
129
146
65
115
102
83
121
93
179
116
161
95
98
95
91
112
92
95
149
134
129
83
109
148
148
157
116
125
123
127
118
97
77
131
107
168
115
142
98
92
54
130
115
147
98
88
119
115
119
121
143
54
125
108
157
165
95
105
90
133
177
95
126
110
96
123
95
127
129
126
168
120
99
107
81
93
95
128
82
141
131
102
105
82
144
122
135
102
74
143
225
133
120
122
147
138
129
61
123
100
120
108
113
142
100
162
160
115
95
95
90
128
119
102
108
127
69
61
88
85
167
108
90
143
170
121
131
106
78
131
113
91
123
167
107
125
160
136
200
144
127
139
80
114
88
162
126
95
132
115
127
74
180
117
147
91
134
99
144
59
94
71
125
104
97
123
224
109
95
91
157
87
108
151
85
123
122
173
120
144
96
99
161
111
92
148
117
156
61
106
137
49
113
132
148
78
69
126
96
77
119
82
74
131
90
125
122
102
102
151
142
125
115
148
93
158
145
82
139
91
113
115
104
128
67
107
82
113
108
59
121
127
156
135
106
108
146
128
97
54
93
129
73
113
91
105
101
102
118
118
156
73
169
121
54
85
95
202
120
133
114
97
117
102
87
163
157
72
146
90
77
114
124
145
143
113
146
171
151
93
135
143
109
144
136
101
137
143
129
67
160
74
82
78
59
118
173
144
59
132
78
77
176
98
128
108
141
153
90
94
163
148
149
54
141
95
114
95
96
113
140
108
170
100
91
152
127
130
132
128
131
54
148
122
102
105
145
140
197
115
149
92
98
78
182
98
124
160
81
49
121
135
54
95
82
125
123
125
122
78
183
123
101
77
76
125
107
132
126
108
144
143
114
108
107
127
114
98
95
80
185
142
116
149
120
127
118
61
100
118
158
95
131
93
105
81
81
83
144
123
59
95
142
143
140
78
102
97
101
125
81
80
155
54
148
83
91
153
98
145
90
137
112
100
76
54
140
134
90
112
190
144
105
118
79
153
103
119
102
124
163
54
142
87
117
140
110
75
117
103
101
125
117
100
100
115
117
110
113
95
111
95
59
54
133
216
105
77
112
107
104
118
128
102
87
100
89
144
120
148
125
127
105
129
129
108
146
90
110
159
90
116
73
72
133
98
89
117
145
169
147
123
91
127
152
181
101
143
112
108
113
130
99
110
180
142
131
106
149
102
115
129
106
124
139
114
61
93
103
54
119
139
119
101
87
115
113
103
101
161
98
117
116
112
81
95
91
104
125
78
59
149
149
113
82
112
135
127
108
113
81
73
122
169
171
114
120
95
97
172
142
123
95
154
59
108
116
98
103
136
123
99
166
122
110
81
130
115
109
54
101
102
127
125
134
101
81
113
106
207
116
61
125
117
143
102
87
59
160
132
97
144
90
140
104
74
115
177
59
123
93
81
99
131
105
97
97
94
81
105
49
123
119
128
134
108
120
82
91
85
101
108
85
121
113
103
120
128
147
135
146
116
120
91
54
148
81
119
82
132
137
127
97
49
114
149
139
126
54
92
95
142
74
133
89
115
115
111
144
98
120
148
67
191
123
95
76
115
124
132
94
156
142
114
114
80
103
54
117
120
87
102
73
69
67
117
118
101
87
113
116
127
140
106
148
74
104
117
54
95
140
119
147
152
143
162
128
113
175
114
98
83
133
177
54
103
129
79
93
153
75
154
113
147
161
121
149
82
77
139
102
90
83
108
94
69
54
150
143
107
97
122
106
143
156
98
147
95
76
105
100
49
79
140
107
59
105
108
102
124
102
118
146
54
67
146
134
152
126
80
98
148
113
101
97
93
125
76
123
177
113
93
90
121
100
145
113
139
104
138
116
99
128
102
90
144
122
49
160
105
74
107
132
132
79
161
102
102
77
127
133
67
139
98
102
128
131
160
125
95
101
109
155
125
106
159
148
95
145
126
102
93
106
90
128
101
83
140
109
96
105
81
120
120
83
124
116
157
100
104
54
125
103
175
108
188
135
108
95
122
123
54
99
74
156
92
103
116
81
98
127
112
112
139
148
102
95
128
99
166
103
95
95
125
127
117
157
103
109
133
104
112
126
139
146
125
148
73
112
92
141
81
82
140
143
107
135
148
98
143
108
104
131
54
167
119
93
143
106
113
144
134
59
152
102
138
96
103
108
102
83
112
98
173
131
107
98
127
81
80
138
94
102
59
94
137
153
77
88
80
125
111
105
104
149
154
145
101
110
166
95
126
101
82
76
130
153
95
110
140
115
162
115
87
107
106
54
81
140
59
122
54
119
99
140
126
82
49
131
122
120
125
130
102
85
146
82
113
90
123
99
110
119
114
135
79
137
141
138
115
114
156
106
98
85
88
54
148
137
88
124
97
87
132
93
177
126
126
112
68
98
122
115
185
119
161
98
81
112
151
94
116
101
174
82
131
93
155
106
144
123
123
172
88
123
136
153
140
152
72
81
98
133
127
139
104
114
115
128
141
99
91
127
121
126
78
141
129
108
125
107
97
65
151
92
104
102
59
96
170
144
81
127
150
90
165
111
96
103
133
200
49
120
90
87
117
153
67
84
158
68
100
74
69
121
68
135
95
99
162
134
123
115
119
124
94
134
154
167
118
140
96
110
62
108
85
129
154
117
132
194
74
119
128
164
54
113
117
103
103
74
140
83
130
119
54
177
54
177
143
145
126
108
107
106
175
98
89
82
102
104
163
102
131
132
59
95
129
117
98
152
114
81
106
119
128
146
119
94
118
54
165
113
89
155
138
149
123
170
108
124
54
95
81
108
144
123
102
139
194
230
99
107
133
67
118
153
164
99
180
108
127
90
78
88
102
197
147
105
102
69
190
146
127
111
76
125
128
74
69
113
141
128
121
118
54
102
141
91
122
121
144
135
96
123
95
173
54
83
126
133
112
125
83
132
125
110
155
108
157
142
126
141
160
93
143
179
76
132
118
145
98
120
95
122
128
104
93
127
90
49
140
113
123
148
103
102
141
110
148
133
122
102
91
145
125
114
74
97
130
106
129
54
85
76
147
175
81
128
102
100
57
125
116
88
162
88
140
121
132
127
142
135
111
105
113
111
120
95
100
164
113
49
128
118
118
128
105
161
59
81
147
105
59
73
95
102
95
69
177
109
105
129
82
137
103
95
103
91
130
59
113
85
110
105
137
105
177
114
98
108
135
78
98
77
117
123
89
134
93
131
108
111
121
111
87
54
124
143
95
108
109
93
95
72
77
121
88
94
81
95
109
128
89
128
110
81
108
108
81
104
116
101
110
133
106
158
122
123
123
129
106
103
108
113
147
122
157
102
108
94
100
105
73
124
98
79
84
141
149
141
128
177
98
108
153
95
117
109
78
129
125
180
157
155
115
145
106
143
164
146
108
125
100
76
110
128
59
101
69
134
141
155
49
88
59
134
101
133
120
106
93
122
108
68
177
49
162
106
138
79
96
112
136
150
150
137
94
83
171
95
149
69
144
102
119
123
120
90
125
88
81
125
137
54
93
160
162
108
117
122
104
146
170
131
49
121
135
155
147
108
111
74
87
59
126
125
76
143
156
128
145
54
100
135
108
98
132
123
109
125
102
103
113
129
76
49
155
92
103
120
99
112
122
161
138
98
109
74
158
129
97
185
88
129
119
144
112
108
49
102
127
142
54
118
101
94
165
93
69
133
113
147
143
80
116
88
103
125
113
155
90
96
157
119
82
143
61
106
121
84
120
92
119
76
67
115
167
132
79
133
85
54
102
133
133
105
128
150
161
124
82
62
82
124
113
76
108
155
77
61
133
139
138
143
124
165
59
145
112
54
120
153
98
120
157
124
45
151
141
93
112
59
98
54
108
151
120
69
54
124
117
177
159
132
74
152
110
128
131
98
91
74
106
100
87
103
67
105
103
113
101
88
114
115
79
135
117
162
105
115
117
104
45
136
155
130
81
68
98
143
102
77
61
115
109
113
143
102
188
54
98
76
153
199
112
156
70
127
130
110
103
95
159
76
148
136
79
96
121
140
73
84
102
127
151
108
93
104
141
97
49
108
105
144
108
120
49
95
133
96
85
105
146
95
105
148
109
108
91
131
77
81
138
90
84
105
77
112
139
131
102
140
86
85
54
123
108
151
85
151
101
103
163
108
130
143
87
119
125
112
95
49
127
108
95
81
54
59
77
77
148
127
156
108
154
108
149
177
133
68
134
122
102
128
108
146
111
111
102
54
200
126
139
93
116
152
128
117
81
113
87
107
160
161
102
162
81
128
97
135
158
69
132
98
98
93
173
176
96
91
59
83
183
137
89
143
117
103
149
108
98
120
120
122
67
133
100
115
81
87
97
85
131
81
102
139
121
118
121
59
98
114
84
105
85
108
115
78
83
94
135
45
166
148
133
143
90
86
94
93
128
122
54
95
143
122
76
168
148
129
124
134
95
62
115
128
129
159
59
111
135
158
104
119
101
49
147
158
67
126
83
68
54
130
105
145
99
106
100
144
156
54
124
158
103
54
120
93
87
106
149
141
108
42
155
124
147
98
145
150
84
118
129
126
76
145
116
151
113
131
143
145
105
111
112
102
127
97
156
95
119
121
177
87
101
77
114
179
117
113
144
140
126
170
90
150
132
118
120
128
133
83
119
125
154
77
133
151
76
79
161
142
69
127
94
98
107
161
83
93
54
145
149
134
77
97
123
105
107
72
115
74
136
130
49
138
113
54
96
143
96
127
133
96
144
134
111
148
97
108
115
102
96
127
177
78
148
59
59
54
97
133
67
115
106
143
120
108
115
147
108
105
108
171
129
128
59
129
87
173
160
116
85
87
91
153
94
113
94
102
108
110
116
101
114
98
161
132
73
124
116
67
103
95
108
91
82
112
145
92
97
96
106
90
141
74
83
108
109
81
91
180
105
108
127
98
116
70
140
120
103
157
131
82
124
82
115
140
133
165
155
133
92
150
140
91
124
101
96
81
187
125
125
116
54
133
102
125
82
101
117
83
94
106
108
162
134
134
145
94
148
81
81
94
139
148
116
189
93
97
108
99
83
82
83
106
78
105
142
143
123
69
107
114
105
87
69
90
105
102
133
91
90
101
120
80
86
49
96
121
114
111
129
97
118
161
77
110
123
100
129
127
130
140
103
100
78
77
143
128
89
102
118
54
67
147
173
137
160
99
146
117
54
54
73
123
115
74
177
109
116
94
76
108
99
111
149
124
151
100
161
54
81
125
110
87
90
95
113
81
98
82
106
145
95
136
125
77
131
112
101
83
78
177
102
137
102
150
87
100
157
108
136
106
96
93
54
87
107
98
133
115
120
144
90
148
65
93
133
85
73
138
93
81
131
91
110
108
82
106
150
173
123
159
115
160
82
132
123
114
126
164
149
132
145
150
139
82
129
126
117
67
104
102
133
124
118
140
116
83
153
93
129
87
119
93
54
108
105
99
74
158
99
54
127
121
108
118
79
103
150
158
115
115
112
138
124
149
148
108
87
96
161
95
74
117
108
118
116
158
135
139
91
138
103
106
87
111
140
157
96
139
122
173
129
146
107
125
92
82
156
114
82
98
147
54
54
135
78
127
147
139
142
68
163
97
145
98
103
138
128
80
144
59
126
67
80
54
141
156
98
85
122
127
109
54
128
150
120
102
91
155
147
151
185
131
146
121
130
146
158
200
137
138
129
105
102
87
97
79
93
131
107
115
124
144
168
83
132
118
95
139
68
124
148
100
59
113
67
69
146
99
132
125
95
76
73
98
120
98
135
136
67
109
125
143
86
116
119
118
103
104
82
142
94
78
117
84
143
136
127
104
175
135
107
78
149
95
155
85
107
54
117
88
122
96
118
87
155
108
79
89
142
135
135
103
122
106
172
96
113
167
108
67
179
113
110
67
117
49
68
115
77
102
103
117
180
128
131
87
109
88
103
130
54
69
177
182
91
136
93
142
81
119
161
131
99
106
79
89
140
76
131
77
129
155
91
105
102
98
90
142
172
159
94
157
91
128
95
61
103
134
127
183
144
78
157
102
152
144
106
122
143
109
54
49
82
128
49
119
83
99
94
108
131
127
89
127
78
143
133
80
141
103
103
122
83
160
133
54
59
135
115
118
128
93
131
98
135
108
104
131
140
141
157
111
117
115
102
93
95
118
121
125
98
102
106
54
106
114
82
59
131
49
101
102
91
54
145
106
151
81
159
133
98
118
113
102
108
146
169
54
120
158
93
74
132
81
129
140
118
143
135
81
164
125
95
67
75
130
128
168
129
95
149
106
100
87
88
172
98
172
167
87
103
119
59
90
124
71
93
85
95
96
105
98
118
113
97
102
150
116
167
109
90
128
163
158
85
117
150
116
76
111
96
153
149
179
108
116
133
136
154
211
172
42
177
122
159
97
161
150
122
106
90
119
103
103
124
109
92
109
122
115
82
115
112
143
93
153
134
115
94
149
113
103
106
167
139
97
108
103
90
147
104
97
90
120
90
117
155
84
150
123
104
129
113
114
67
100
92
117
117
103
103
105
88
98
170
113
95
130
81
111
97
100
120
128
102
105
135
103
123
98
110
74
119
140
49
108
153
136
132
157
108
76
134
87
140
125
173
105
118
127
99
110
172
80
135
108
148
101
128
59
129
54
150
122
224
120
68
111
112
81
93
93
143
125
121
123
96
102
133
54
94
180
90
84
137
115
131
99
83
116
54
105
125
123
49
125
54
95
142
54
163
137
93
145
171
104
191
110
42
122
150
100
113
148
120
95
54
84
90
143
103
101
146
154
104
142
177
49
54
97
115
105
152
135
126
108
82
138
167
108
152
95
106
69
102
129
135
111
54
177
103
131
115
145
185
54
105
99
87
135
91
135
86
99
115
127
97
115
121
79
119
110
103
114
133
54
160
154
96
102
127
108
99
171
98
95
90
102
123
156
54
98
59
102
108
102
49
77
106
99
94
145
120
110
100
177
157
78
107
93
131
140
121
102
91
122
133
180
83
106
100
105
72
87
87
117
127
94
109
149
152
109
148
97
115
145
136
125
74
107
59
102
114
90
98
112
83
117
202
135
96
98
160
54
135
76
144
121
120
77
112
131
123
113
127
143
61
106
76
98
177
68
131
102
140
108
128
113
87
93
182
82
81
118
150
120
100
108
109
102
158
102
95
133
90
133
98
54
114
95
135
114
108
142
176
99
126
49
155
103
156
124
97
87
98
108
92
142
101
95
155
111
97
99
133
101
90
123
113
83
118
128
102
162
90
91
124
129
106
120
127
135
76
113
110
107
104
108
135
133
96
163
108
106
106
95
83
137
129
74
137
185
108
144
120
121
106
76
54
108
125
165
109
131
128
173
129
95
194
88
85
54
93
135
159
102
113
100
105
144
171
102
135
139
54
54
146
105
83
117
77
126
117
54
127
138
129
125
109
144
122
128
141
109
95
158
121
80
150
86
108
127
101
120
107
110
96
108
81
99
108
140
74
122
49
109
120
114
93
134
112
125
69
100
105
104
54
98
105
108
112
125
49
137
96
95
144
95
90
148
115
116
134
76
116
93
103
127
165
114
109
123
110
126
161
148
131
108
128
85
96
186
146
129
129
113
147
93
102
95
129
93
76
125
150
145
114
65
194
113
113
102
167
87
74
113
109
100
85
49
112
95
112
181
107
109
77
127
129
54
115
61
135
95
81
125
158
142
59
170
78
86
54
128
138
143
103
87
129
173
59
78
118
150
136
102
114
113
154
82
99
49
106
73
148
109
126
108
49
135
126
97
113
131
119
148
82
122
106
105
135
83
107
150
143
160
153
81
54
74
93
108
85
103
153
74
83
165
103
94
102
92
82
111
127
108
76
107
154
107
106
74
129
100
97
111
90
120
141
122
133
140
138
129
107
175
49
98
120
110
147
107
81
150
102
116
115
136
77
102
99
130
149
54
94
81
138
127
139
157
108
76
90
95
135
109
170
134
106
135
97
135
118
80
93
108
115
112
132
133
54
113
61
153
108
111
97
95
103
120
102
95
102
118
139
78
143
141
110
87
158
105
81
135
83
96
112
87
110
175
68
128
159
67
86
74
98
172
106
126
94
76
90
168
127
104
161
120
136
154
177
190
102
90
93
97
102
106
83
146
126
79
179
81
96
94
108
156
100
98
95
104
146
88
83
105
89
89
81
130
116
54
115
186
102
59
74
132
95
104
95
61
118
93
81
89
137
138
161
82
96
59
143
110
120
112
103
143
74
73
95
102
54
54
82
177
154
54
144
169
94
54
105
118
91
128
87
144
112
126
103
90
115
149
105
95
123
178
150
146
111
115
191
82
98
129
49
122
131
143
74
133
140
98
161
76
125
54
123
111
93
81
75
77
54
93
95
102
89
152
126
91
57
163
81
59
173
108
108
139
145
96
184
157
133
132
108
49
106
139
132
125
179
54
200
101
80
179
102
108
104
112
144
81
144
117
120
129
107
164
114
110
98
110
102
101
128
100
54
144
49
68
118
99
107
132
65
139
82
114
135
148
87
121
90
130
103
97
94
130
98
105
102
135
70
152
96
73
95
148
105
97
167
107
122
129
99
124
106
173
113
117
107
154
129
106
101
102
76
91
95
108
90
63
78
125
85
114
94
113
108
141
151
128
148
160
96
165
126
134
119
159
121
100
95
103
108
130
102
127
127
118
135
107
148
113
128
183
110
151
158
110
77
129
196
123
120
153
87
106
140
87
88
87
74
107
131
107
107
98
119
106
98
139
142
161
81
49
131
115
77
102
119
160
124
148
102
143
126
147
119
139
101
95
95
164
95
49
113
103
90
134
113
126
81
102
115
96
65
59
91
95
103
87
59
99
114
86
78
74
91
113
82
163
68
49
67
67
148
93
135
104
151
129
113
79
138
124
106
87
107
107
104
77
135
89
157
98
148
148
134
81
148
90
125
93
177
84
122
87
157
177
54
59
131
118
162
74
99
147
123
92
96
104
132
105
83
59
129
98
133
133
128
106
123
122
108
95
135
54
98
93
122
133
101
194
82
134
131
131
129
151
105
103
157
103
74
54
77
85
54
135
114
122
126
125
118
115
81
108
94
122
95
98
102
78
161
172
140
162
127
106
94
59
54
91
90
115
49
108
117
177
139
110
102
131
123
141
148
87
129
98
98
98
95
80
49
81
49
134
137
110
114
132
102
78
103
54
93
94
79
82
73
125
138
123
135
148
109
83
74
135
130
108
106
81
54
69
54
146
98
96
166
104
131
74
75
95
120
100
49
54
107
144
86
102
99
125
103
54
95
143
144
186
137
169
120
94
54
123
130
100
103
102
135
162
140
140
87
114
83
118
155
155
150
68
85
169
140
136
105
124
103
126
108
74
140
54
120
98
113
129
83
98
132
141
91
123
120
96
105
81
109
140
159
130
125
150
97
61
104
143
125
88
81
155
105
143
154
103
144
160
152
140
120
139
109
144
134
123
135
108
106
119
118
76
91
130
108
119
54
91
105
163
165
81
82
156
93
168
105
131
138
108
154
54
104
111
106
132
107
85
179
109
90
94
54
130
167
94
105
114
138
105
95
91
105
139
113
122
108
148
99
61
99
145
140
133
108
95
91
119
140
123
116
102
171
129
148
158
127
118
110
68
76
155
122
113
99
146
150
169
108
81
117
122
142
158
133
105
102
141
161
140
124
108
115
106
102
110
105
90
148
145
91
93
125
59
117
54
110
209
117
91
172
159
106
113
78
100
49
108
122
68
136
98
122
92
135
81
99
152
81
111
78
103
134
104
90
113
148
96
90
113
93
122
111
79
101
144
128
180
133
126
92
49
108
108
106
107
125
161
113
148
109
125
90
87
125
127
123
92
108
158
163
108
135
134
69
128
138
158
93
69
113
54
94
149
146
144
162
105
116
110
54
98
139
181
94
103
95
140
159
108
81
106
148
106
95
123
95
89
101
81
139
106
54
102
153
96
74
102
78
98
108
91
198
102
78
193
74
101
54
102
113
131
87
137
83
136
160
74
74
102
82
128
91
129
110
96
151
67
62
111
59
138
114
155
113
91
102
151
108
106
114
134
93
108
135
81
162
106
127
134
87
54
141
126
134
143
154
78
98
131
166
89
98
92
76
187
128
161
94
95
82
89
81
169
89
122
54
115
128
140
161
157
153
155
108
115
120
82
91
148
116
117
157
108
54
199
132
177
124
108
140
122
162
129
76
93
90
54
133
74
173
87
133
124
108
131
167
135
105
115
98
172
104
120
120
107
83
111
160
145
89
105
125
114
54
80
92
57
49
111
148
126
121
107
125
112
108
127
98
153
154
112
76
98
127
103
138
107
103
160
134
135
127
133
83
101
118
93
105
123
148
99
87
127
95
188
128
140
106
107
152
99
108
137
108
136
153
96
114
142
114
54
79
156
85
92
123
92
89
196
81
96
67
154
154
116
137
103
45
107
173
146
112
113
123
95
134
142
132
155
126
105
93
180
114
124
105
96
98
98
142
102
122
102
108
188
90
128
113
103
93
128
168
172
200
148
108
165
197
129
140
146
105
69
108
143
108
93
124
106
123
124
115
95
140
161
54
131
135
139
124
167
127
160
90
156
105
119
149
140
125
176
160
143
152
108
63
123
148
90
121
106
138
129
109
148
103
121
93
79
127
103
76
83
144
103
140
113
140
81
136
105
90
180
104
130
133
153
106
147
115
96
82
181
120
126
144
171
125
101
68
194
121
81
150
110
54
113
90
105
117
90
92
77
112
193
130
165
122
167
141
121
125
119
74
71
87
107
121
127
159
101
114
83
122
115
107
108
104
112
49
89
122
54
78
113
139
120
119
179
78
154
93
132
95
81
85
146
74
104
54
83
54
59
147
119
110
59
123
119
133
133
114
80
139
117
142
80
113
109
95
150
109
147
107
70
116
91
105
134
103
165
105
112
119
95
108
109
86
84
59
117
106
74
105
85
137
155
54
123
80
118
117
127
70
93
133
108
108
135
94
145
115
127
107
119
133
127
109
79
69
98
103
124
119
114
61
107
96
145
107
125
114
103
144
140
108
103
54
93
134
88
111
88
108
173
154
129
149
76
132
140
137
79
107
101
145
155
94
102
144
96
153
169
102
120
107
149
129
134
98
116
122
74
135
103
123
140
134
54
98
123
124
158
101
119
102
102
98
107
117
107
125
103
143
95
115
77
108
124
88
129
123
117
78
107
100
162
112
98
133
133
108
93
103
124
121
117
86
67
108
118
59
133
144
143
135
100
126
95
120
83
141
128
151
138
116
98
107
200
101
127
92
160
145
96
49
93
78
90
115
129
99
143
103
107
97
186
157
59
113
153
105
128
103
115
102
120
143
119
77
158
148
54
132
81
93
93
155
150
77
117
101
127
117
80
139
124
116
93
54
105
113
96
108
125
148
102
185
125
95
103
61
154
61
122
100
92
99
128
108
143
85
113
168
102
127
54
108
196
93
74
133
163
61
67
98
128
139
177
103
98
133
108
61
151
74
125
157
93
133
133
82
108
108
59
110
84
166
150
149
108
136
98
84
135
95
156
83
74
104
146
104
96
146
81
130
121
113
177
141
132
81
129
82
132
133
98
145
157
113
111
67
90
89
101
134
128
169
134
107
119
88
122
122
79
112
148
94
102
76
101
131
122
116
105
115
54
129
70
54
103
93
104
100
139
74
138
81
139
152
85
92
133
49
113
87
119
141
83
94
103
143
106
108
108
114
80
145
142
139
104
79
147
126
147
143
129
128
123
120
54
98
163
110
130
143
80
138
74
76
144
131
107
59
162
115
108
80
54
140
118
133
106
117
54
82
107
120
121
146
135
110
134
150
111
108
159
177
124
87
148
149
147
150
82
158
141
137
124
164
142
133
88
85
85
129
128
172
111
119
115
135
169
84
134
105
117
98
120
112
87
91
95
117
113
54
167
81
54
98
65
108
102
156
107
59
116
76
108
101
74
57
115
93
131
159
109
83
114
127
112
112
100
173
148
155
108
142
91
97
113
102
94
115
113
163
133
120
125
112
77
116
82
116
54
140
120
130
136
135
114
83
125
54
124
124
106
182
145
101
113
152
90
109
87
133
139
139
87
172
85
105
139
123
103
176
73
127
128
105
101
123
94
96
90
162
91
119
183
148
106
142
144
95
114
94
89
113
154
82
67
133
110
90
136
147
131
163
153
107
81
103
90
145
177
169
74
124
133
102
85
120
95
130
90
95
150
109
177
154
163
81
127
120
105
143
103
168
137
97
87
134
124
66
102
153
149
112
91
135
81
67
97
112
78
110
54
95
145
111
91
154
89
136
81
103
172
85
74
140
102
74
92
59
61
151
96
135
116
192
158
81
160
77
121
61
77
101
101
102
102
111
68
124
89
157
98
105
107
114
155
144
91
151
116
103
110
78
99
139
142
165
98
125
81
129
97
82
120
164
82
148
95
133
104
113
49
81
162
108
108
119
85
170
108
102
146
122
81
119
161
145
94
161
104
112
135
167
139
140
147
112
77
81
92
96
83
68
83
155
103
91
95
61
103
131
74
68
45
90
102
104
130
95
68
79
122
125
80
97
102
149
150
100
98
67
135
141
125
135
119
136
169
96
145
106
149
133
123
128
151
102
128
120
147
72
120
96
108
81
160
153
156
106
125
125
144
103
128
156
107
102
95
95
76
81
96
82
106
113
144
54
105
168
172
165
183
131
91
118
76
128
108
89
103
102
125
102
151
172
104
91
128
77
97
86
95
91
136
125
114
168
69
106
81
108
124
97
120
135
107
147
140
91
132
73
200
94
120
129
102
102
102
114
143
79
76
110
99
118
105
115
81
119
176
106
79
113
118
78
111
132
78
140
125
82
134
92
138
125
95
105
143
102
113
99
128
95
105
116
155
108
102
161
81
117
102
74
124
112
80
153
105
107
126
92
104
125
95
104
173
105
173
182
122
54
102
133
106
107
165
104
149
165
146
97
116
176
77
139
131
102
82
124
105
113
140
120
89
135
88
95
134
72
129
92
130
127
82
116
144
90
97
67
158
135
87
87
93
133
191
59
120
90
142
81
166
80
111
102
107
139
139
102
154
81
133
157
141
99
172
102
77
76
106
129
74
148
118
96
96
109
88
95
107
121
125
87
146
112
69
133
76
85
113
166
49
75
74
122
158
93
105
137
131
127
116
95
110
90
115
82
156
140
84
114
87
126
95
138
49
98
121
120
129
89
76
126
124
147
119
138
121
83
157
148
164
49
126
227
54
76
144
102
66
101
154
126
87
108
145
141
108
87
112
95
139
153
125
54
99
110
145
105
123
91
54
104
113
119
88
92
96
113
149
108
119
131
95
111
133
115
135
97
127
116
61
128
194
108
123
128
97
61
104
179
154
54
128
158
119
113
85
128
142
78
83
101
103
148
92
106
91
108
103
71
92
81
151
149
146
141
93
102
190
98
88
101
121
140
83
160
148
97
123
54
67
87
101
95
134
98
120
100
91
135
87
126
98
98
87
180
125
144
87
100
158
180
139
97
89
102
143
156
149
102
83
97
108
74
125
149
126
105
122
102
106
115
103
154
77
180
54
98
112
77
125
133
112
95
127
117
135
108
174
113
168
73
103
133
102
54
103
123
82
104
108
95
99
112
123
102
54
98
126
113
148
116
145
81
133
93
105
105
154
155
108
153
146
102
127
110
113
133
207
109
82
139
79
168
115
101
82
106
120
125
95
87
95
111
103
108
113
107
143
120
82
94
123
132
111
128
108
113
122
83
177
138
145
147
69
128
150
134
114
54
102
81
130
134
127
102
114
112
105
98
54
183
111
108
101
128
93
133
139
122
158
131
94
120
102
122
97
146
86
108
140
105
124
126
129
127
98
103
89
125
81
107
110
126
80
165
95
187
77
68
87
119
76
54
89
154
151
106
71
98
115
131
145
116
78
127
106
125
74
128
106
103
103
106
102
151
142
49
96
100
130
118
133
128
122
142
135
93
99
74
87
119
93
110
133
112
108
153
119
127
128
116
108
81
159
74
111
164
134
79
107
82
112
199
144
129
103
113
194
109
107
139
95
81
113
76
92
122
96
133
49
90
159
108
126
83
148
115
82
112
131
103
96
153
146
168
90
143
127
98
112
81
123
139
120
88
87
102
100
179
135
82
92
95
81
125
137
138
74
102
92
117
153
125
115
96
126
177
144
95
111
73
129
95
142
108
115
76
133
126
122
107
76
135
93
103
144
110
74
128
108
93
100
112
112
98
143
94
124
72
177
147
97
103
95
149
82
97
101
127
145
102
115
136
61
152
85
79
124
133
54
127
119
128
103
102
103
124
120
143
59
128
102
138
77
49
127
145
144
92
146
165
116
82
107
82
109
112
114
107
133
74
131
159
89
143
122
108
153
178
166
125
134
102
108
167
93
161
137
115
95
177
97
134
134
148
95
90
138
157
94
61
76
127
135
67
54
109
108
128
127
136
105
115
111
103
139
85
127
127
102
126
114
142
158
135
54
104
140
106
82
59
128
114
95
138
157
130
114
153
131
96
96
96
100
90
81
96
91
105
109
76
146
169
112
157
102
113
124
81
98
116
129
116
132
131
120
84
95
145
87
123
177
85
78
101
82
106
150
83
165
131
106
87
111
61
186
102
54
99
133
59
129
116
87
135
141
117
125
54
121
113
107
109
147
91
95
119
88
49
95
90
87
109
138
206
102
125
127
117
59
125
128
49
137
133
96
74
108
90
105
108
95
108
152
95
154
96
131
143
95
95
132
154
98
97
133
101
129
131
169
81
191
123
116
93
157
67
144
135
171
103
131
120
135
87
145
96
127
89
143
49
113
98
135
127
143
127
144
125
123
155
159
107
158
102
127
119
148
124
123
135
107
133
114
124
87
124
160
157
122
172
84
127
82
130
91
157
113
132
145
125
74
146
123
138
92
106
96
102
96
103
102
99
98
121
105
126
54
113
115
87
95
90
120
121
114
128
96
175
133
89
125
112
85
145
123
74
137
126
87
59
102
131
95
121
113
87
131
104
129
113
81
96
200
128
110
122
88
169
125
112
170
82
163
103
98
85
106
105
132
49
177
172
98
89
54
116
126
90
98
67
130
118
83
103
95
102
129
112
125
135
69
98
183
95
122
59
59
127
131
83
108
102
99
81
105
92
132
159
129
117
82
118
142
131
97
98
116
103
95
123
100
117
108
110
151
79
96
141
110
135
155
157
54
59
126
145
125
49
108
113
114
120
81
96
128
144
132
132
148
155
97
102
97
143
112
125
112
54
99
98
102
116
106
96
130
54
95
101
103
158
98
119
118
107
108
73
137
74
95
104
118
148
108
68
125
100
137
125
80
160
148
124
93
105
144
99
100
101
160
160
111
146
82
89
82
144
84
178
82
87
129
125
110
113
113
98
100
120
121
61
87
120
96
114
105
172
170
95
54
121
110
97
59
82
145
164
123
129
148
103
77
98
118
118
87
111
123
122
85
135
54
69
129
98
126
128
124
125
106
118
74
165
148
103
67
109
139
103
108
106
128
91
81
120
143
102
79
148
118
102
109
92
134
108
69
100
122
112
100
125
127
87
98
119
108
93
115
82
102
130
98
98
118
170
98
156
129
108
102
140
119
54
161
131
103
140
156
177
141
139
102
132
98
90
102
131
104
173
137
139
118
103
84
113
123
145
135
112
126
125
144
136
130
158
97
89
117
121
113
157
113
97
151
139
77
177
113
108
102
95
81
167
107
103
108
114
205
92
93
123
79
73
95
110
92
90
113
98
156
148
80
91
89
106
122
95
131
101
113
122
160
93
106
146
111
114
89
113
54
128
127
180
160
105
83
185
118
104
130
123
150
114
54
80
173
96
132
104
59
186
147
49
139
54
59
118
84
112
204
78
135
97
54
128
74
122
107
103
171
129
119
54
95
131
119
123
149
91
133
148
97
74
107
148
82
144
82
103
137
159
116
103
134
49
120
101
147
88
105
149
153
100
128
101
123
108
160
127
114
105
102
148
105
120
148
81
99
120
113
102
108
87
72
166
154
143
97
54
152
125
171
99
108
113
180
127
103
74
113
92
108
78
149
102
88
112
127
76
135
143
159
94
127
114
80
49
125
144
124
104
106
86
102
147
104
94
109
74
89
161
95
141
106
177
181
115
143
107
97
167
98
194
150
91
144
98
101
49
92
143
102
144
168
112
119
54
69
149
54
81
131
94
134
156
85
95
102
145
148
109
77
103
146
117
88
96
77
83
106
124
102
81
92
102
113
127
102
49
106
121
111
98
108
67
135
91
179
140
129
109
94
102
139
115
91
156
101
166
129
100
143
122
131
106
173
108
102
102
119
77
108
54
89
103
92
116
148
107
117
103
78
110
80
123
108
140
95
79
125
70
138
101
54
149
138
116
132
106
139
143
120
81
74
123
158
121
144
93
54
98
151
115
117
178
95
145
162
120
105
138
54
143
165
126
82
99
97
110
110
95
147
177
133
91
87
104
140
113
116
117
101
85
95
114
61
103
110
169
123
119
109
135
104
68
54
133
170
120
161
96
104
95
127
129
89
45
87
107
110
156
76
103
115
151
131
83
102
108
103
137
124
106
131
95
156
87
143
112
97
83
59
105
45
113
49
140
86
113
131
54
108
114
133
110
132
121
107
148
83
125
118
112
89
177
135
93
135
54
78
54
108
90
130
134
177
95
96
67
112
177
174
42
143
77
98
83
157
132
114
102
97
97
108
125
126
129
103
143
122
96
74
131
93
82
67
88
103
99
76
131
78
98
140
77
140
111
108
133
107
85
110
81
135
154
138
82
93
153
146
125
93
139
131
148
164
93
105
108
112
154
86
114
103
107
146
77
125
136
80
98
116
120
125
97
103
167
134
112
135
91
122
98
125
90
101
113
139
103
156
122
107
95
132
114
113
113
141
79
93
123
85
116
128
144
135
74
94
176
160
117
80
107
148
158
77
108
115
110
92
102
108
95
112
116
132
108
124
115
78
153
109
140
98
105
161
54
125
59
100
179
54
146
133
144
158
69
127
118
83
170
98
113
101
90
104
74
95
87
102
149
97
61
76
139
122
140
142
93
95
119
139
98
177
152
89
103
90
145
134
139
112
81
145
154
109
102
125
104
87
150
90
54
104
105
99
135
113
158
133
110
106
125
124
124
115
100
92
129
120
113
87
88
120
105
81
141
77
97
99
74
90
118
95
95
90
119
54
108
105
93
139
135
125
126
131
142
118
119
77
137
151
91
128
115
163
110
113
145
114
113
131
108
120
181
54
164
133
140
98
105
104
67
150
115
84
124
84
133
124
78
110
135
81
120
138
84
124
122
96
143
133
118
74
101
170
124
125
102
59
54
91
116
130
129
128
112
127
54
110
128
140
97
98
110
131
96
54
117
108
103
95
108
120
71
95
98
151
154
95
102
122
106
107
81
108
95
117
49
139
129
86
49
129
145
106
82
160
54
138
82
103
54
114
158
132
86
157
108
107
102
125
128
139
134
144
82
118
144
122
144
82
112
78
76
72
137
150
98
124
78
142
95
96
167
110
141
81
120
74
80
129
151
108
131
105
156
83
107
118
107
139
139
114
125
117
161
186
109
92
81
78
180
129
102
133
169
124
98
117
158
114
148
169
49
111
83
121
182
127
183
54
93
90
114
68
106
139
144
101
98
94
148
143
91
125
102
110
49
114
120
129
147
107
158
138
73
133
181
59
102
137
115
167
108
99
122
139
149
120
102
160
113
73
122
136
49
156
82
172
129
81
139
54
59
115
115
90
124
54
115
49
100
146
125
148
139
90
78
108
113
98
113
177
141
85
126
91
97
122
130
135
93
72
82
145
54
77
80
127
98
68
74
98
125
155
177
59
122
168
126
144
140
163
158
143
89
105
107
95
117
77
148
148
69
82
158
67
137
153
161
141
95
122
99
222
131
102
115
157
91
132
76
93
106
91
82
54
98
73
61
143
102
90
81
76
105
106
133
135
159
133
129
102
119
85
177
106
118
85
162
135
93
177
99
108
129
143
101
134
154
142
166
87
123
68
85
140
142
108
117
92
160
99
100
90
148
129
87
163
80
116
54
194
113
128
68
145
122
117
101
126
81
103
87
103
54
143
164
82
107
136
119
113
112
127
112
82
108
107
96
87
192
131
100
105
116
96
132
128
106
104
96
124
101
108
120
105
130
161
81
81
128
96
132
150
95
54
76
156
85
112
153
200
101
108
114
74
116
102
82
140
57
138
143
109
140
177
138
135
67
81
103
118
150
90
129
180
83
122
120
113
90
102
123
190
128
90
77
124
59
129
161
114
115
94
120
126
155
108
128
107
149
125
105
112
67
104
128
128
93
123
113
135
128
118
76
96
108
133
121
74
74
103
168
102
90
177
150
148
96
148
54
137
185
129
142
83
108
142
100
87
166
123
146
116
122
74
101
140
94
107
143
111
157
111
157
133
97
98
101
107
110
145
139
101
133
122
105
91
129
142
91
180
148
106
108
98
154
167
167
93
78
67
131
160
69
102
127
153
119
141
54
135
121
167
147
98
117
101
144
90
124
135
119
143
101
142
147
101
114
68
90
112
114
186
59
148
177
136
93
111
92
98
100
129
139
87
94
130
142
84
123
106
152
149
95
109
113
146
98
109
74
96
74
94
147
103
123
128
109
167
107
82
117
140
143
117
98
68
125
97
118
84
112
90
59
153
126
111
115
115
146
165
145
148
133
154
155
76
169
143
114
76
131
125
147
183
138
131
116
90
49
76
77
74
96
113
118
93
151
78
143
111
104
122
131
210
99
123
138
115
111
80
99
54
105
154
98
112
98
141
49
151
95
127
130
140
131
141
133
54
97
127
121
124
98
130
106
54
126
98
118
131
111
76
185
105
122
117
148
103
135
128
158
116
112
61
128
49
81
107
67
127
147
195
117
95
97
116
74
160
118
139
165
120
89
122
88
143
54
154
102
109
156
146
119
128
94
74
135
107
124
114
177
110
130
127
186
133
148
110
111
108
78
152
113
107
129
129
148
150
73
123
128
54
108
146
161
168
144
118
125
78
97
102
161
144
61
87
76
151
128
147
118
126
168
133
104
101
179
74
99
88
113
104
153
137
97
90
88
93
113
212
153
154
119
117
100
99
116
156
93
122
96
135
74
157
116
81
90
103
110
125
97
54
130
82
155
116
95
129
190
150
119
101
72
81
106
83
152
131
98
133
142
111
152
113
81
87
123
165
108
127
90
107
146
114
97
54
105
112
115
95
81
65
168
109
130
133
134
115
109
113
106
147
102
54
87
120
45
127
112
168
129
131
102
139
120
83
49
116
59
102
106
143
97
121
101
133
122
120
133
120
54
119
49
131
107
67
99
128
95
90
182
74
49
103
105
192
120
146
108
140
128
154
92
158
99
90
121
164
54
130
121
107
83
138
78
126
141
168
54
78
105
116
54
167
80
82
102
158
89
122
112
111
141
54
74
98
74
49
95
104
95
121
54
108
140
113
113
107
90
108
115
115
107
49
153
124
69
161
119
77
87
95
149
135
106
83
140
117
165
112
102
139
173
139
95
102
99
54
126
118
125
103
87
81
93
74
49
140
125
78
126
95
84
79
111
99
143
81
110
95
54
102
122
143
146
80
81
144
75
133
54
126
139
102
121
87
49
107
105
172
153
92
108
184
114
105
119
122
149
159
122
137
96
112
98
102
110
106
129
106
104
88
200
49
151
133
108
98
114
67
108
95
140
118
156
54
128
118
200
90
103
107
138
141
107
126
76
107
106
122
67
100
112
122
95
102
133
101
54
115
77
110
118
119
86
59
124
112
80
107
87
102
129
133
97
74
126
144
136
78
108
144
131
146
98
89
153
117
100
110
157
79
94
108
134
97
120
108
110
200
54
96
132
125
114
93
96
153
59
90
49
91
74
138
119
168
96
98
119
134
120
125
98
118
146
77
125
96
83
131
109
150
109
140
144
103
138
98
106
165
123
106
106
54
145
144
131
123
108
109
106
102
105
129
125
83
90
143
108
90
160
151
133
129
94
108
54
158
96
98
131
116
77
98
87
74
149
169
121
81
87
68
69
119
102
108
79
133
108
104
181
103
156
168
125
125
112
107
90
166
119
136
168
144
103
107
54
126
158
152
61
131
97
98
85
96
114
98
121
123
158
106
143
115
131
92
134
116
81
129
98
82
118
147
121
96
76
87
141
155
149
150
177
54
61
143
160
99
102
103
111
108
54
105
108
95
125
143
146
139
108
108
148
113
113
94
153
116
140
103
125
137
102
208
132
54
90
127
97
67
54
102
181
99
94
158
177
134
135
68
106
106
135
87
147
132
120
78
114
144
116
101
192
104
99
96
149
115
68
96
101
103
82
59
153
102
54
115
123
162
102
138
74
120
113
110
70
130
100
102
81
144
102
131
139
146
110
98
100
74
92
68
132
76
82
67
143
142
98
95
104
95
176
79
131
177
91
140
118
54
104
143
96
123
134
130
61
80
160
74
130
78
118
103
161
73
101
77
54
107
109
105
97
161
97
72
123
127
85
108
95
105
102
108
101
54
145
107
113
89
103
129
49
117
129
111
115
82
132
54
159
103
94
144
71
105
49
128
136
99
49
130
77
122
61
127
78
74
124
144
106
107
74
93
111
125
103
108
113
106
78
68
105
135
92
127
154
61
126
123
76
115
130
49
85
108
122
101
162
133
83
128
102
77
127
115
116
127
135
149
95
115
85
128
146
122
81
84
87
128
107
132
87
122
147
119
105
153
102
140
111
90
54
151
102
102
131
103
95
122
98
144
200
149
59
54
82
84
199
108
54
91
169
99
59
140
168
140
128
125
138
130
81
59
116
107
78
115
108
168
194
90
54
101
111
144
126
154
54
78
158
137
116
167
98
148
105
140
111
138
102
121
96
163
61
169
136
67
147
100
103
87
101
105
160
132
113
120
128
76
54
81
119
101
144
107
105
85
144
76
100
179
129
105
87
105
118
180
105
119
162
49
102
119
118
99
127
108
130
132
112
100
104
108
123
182
100
124
82
100
96
99
106
90
67
116
135
49
89
125
124
112
105
106
93
81
103
61
148
78
106
98
113
108
148
95
100
98
106
104
163
119
107
131
119
110
129
120
95
139
127
160
91
173
140
172
102
68
127
121
77
146
120
143
85
103
96
113
80
78
133
124
138
149
131
59
98
107
147
151
108
97
129
54
106
133
105
97
96
67
110
123
155
103
85
125
167
81
124
132
111
143
102
105
112
114
139
131
54
134
108
131
120
103
129
95
116
168
95
99
158
213
110
57
89
103
165
113
135
93
119
156
127
94
156
128
108
107
165
54
77
101
77
88
158
161
76
120
157
146
95
165
77
82
95
113
112
123
123
110
107
83
104
96
125
120
92
169
139
152
81
91
128
158
96
110
122
103
125
179
103
83
105
83
54
122
88
109
113
82
61
173
61
118
111
90
146
163
81
139
95
93
54
122
98
141
187
90
101
98
103
180
82
97
81
49
154
110
120
108
106
144
89
151
102
68
113
102
148
174
104
171
49
133
148
115
97
125
93
98
100
69
108
177
73
54
102
125
119
76
81
95
163
158
49
84
176
186
124
119
129
98
54
116
165
102
86
103
130
54
152
148
90
117
82
159
131
134
113
121
90
77
93
78
129
141
98
148
90
124
82
68
102
49
133
98
160
98
118
135
61
177
97
99
114
138
129
113
155
93
149
155
97
193
95
104
153
54
129
142
153
147
135
140
81
80
68
117
111
68
118
49
172
125
138
77
121
108
84
133
113
123
87
113
204
158
144
95
70
124
105
147
93
54
148
143
149
145
131
124
76
105
105
87
42
109
103
100
95
104
200
125
101
103
140
108
159
112
115
110
172
106
126
146
140
103
102
95
95
123
67
85
92
144
59
185
85
138
108
115
127
106
105
109
122
88
65
95
105
147
103
95
152
140
149
87
77
148
101
84
123
135
95
105
113
127
137
93
99
166
122
138
153
103
177
106
59
129
155
142
122
143
131
129
149
181
116
106
141
95
86
140
54
150
150
106
87
98
141
97
97
140
80
110
114
82
81
78
147
122
147
76
117
96
90
141
84
145
123
145
153
108
54
79
131
141
168
67
80
155
160
54
125
101
126
120
78
150
113
94
111
156
117
103
83
108
102
130
120
95
107
131
100
88
108
150
95
133
108
113
128
118
105
140
98
102
74
227
138
128
117
109
125
75
120
112
123
113
98
108
59
130
102
153
102
134
94
102
145
104
98
110
121
78
81
127
125
191
94
147
102
123
111
81
117
112
130
128
105
90
77
80
68
110
90
102
114
158
110
143
95
49
131
149
112
115
77
101
83
107
126
130
151
74
74
146
135
92
96
155
94
135
78
110
113
122
139
95
121
155
105
77
106
54
130
138
143
84
100
108
49
98
131
85
132
113
107
107
87
177
117
101
102
140
90
125
145
156
82
132
109
144
95
116
125
172
138
87
148
90
87
138
101
77
102
106
74
128
83
127
61
163
107
202
126
140
59
149
128
120
78
104
59
158
112
128
165
141
81
102
177
100
113
159
94
95
144
145
106
113
112
133
170
105
143
101
105
100
82
123
74
120
129
90
87
91
103
109
102
95
109
142
77
164
177
112
103
108
99
122
95
141
144
108
103
116
149
141
138
129
143
156
112
101
160
118
112
135
88
114
162
132
87
97
110
97
126
112
136
158
165
82
102
113
138
124
98
127
112
95
126
91
74
106
103
81
111
144
146
156
98
131
165
114
133
145
102
131
73
113
83
103
106
108
122
102
114
120
138
99
107
148
100
129
102
131
125
235
121
139
108
114
163
82
147
106
177
67
49
102
49
118
184
146
131
81
123
117
76
114
49
61
95
135
103
76
78
118
122
116
137
74
150
130
95
206
237
94
103
92
166
172
114
102
95
163
95
98
109
131
107
97
102
90
150
124
75
132
106
106
102
112
172
102
74
105
89
77
106
147
99
129
74
90
113
95
164
138
107
131
95
125
61
108
120
99
102
146
84
177
167
100
95
97
131
111
162
117
128
119
54
117
117
117
112
134
97
157
126
97
49
103
189
98
177
81
87
102
122
61
126
140
122
125
74
106
96
103
124
99
49
103
84
216
90
97
153
111
105
120
54
77
49
103
78
102
113
103
124
111
74
123
173
163
133
140
143
131
177
82
145
74
117
125
153
76
105
175
91
134
143
130
178
77
80
81
96
144
186
150
133
115
107
108
149
78
49
144
95
54
123
132
120
49
87
108
67
91
129
54
130
112
81
105
81
87
81
150
179
112
93
69
124
116
71
102
125
102
84
81
54
105
87
137
93
54
49
125
135
80
156
90
115
169
101
95
124
81
142
155
87
103
124
158
108
164
130
116
110
76
145
108
54
90
169
49
102
117
98
154
152
108
95
111
81
145
109
158
124
85
153
167
120
100
125
98
98
102
105
67
59
125
74
102
154
112
123
54
129
106
125
108
113
115
112
74
115
104
54
141
129
105
139
142
98
98
156
135
93
133
93
91
102
74
152
59
122
126
146
125
78
104
192
83
61
120
111
98
115
162
81
133
77
110
167
118
133
129
154
218
104
95
121
125
103
94
103
112
111
127
141
112
138
139
130
129
167
82
118
148
130
98
152
156
107
142
112
129
144
150
122
62
147
90
133
59
95
77
126
83
139
108
156
123
128
122
160
96
169
114
102
81
114
140
74
133
145
109
91
113
104
85
108
125
136
145
158
161
98
102
128
141
90
116
54
67
123
69
144
101
177
127
49
110
74
135
102
177
106
133
106
105
112
109
82
190
143
147
146
148
80
74
135
122
93
204
81
106
95
89
103
61
78
120
67
140
90
108
106
71
91
145
85
54
85
133
105
74
138
117
141
128
120
122
133
158
81
155
161
126
90
143
95
115
112
124
93
54
95
49
54
125
158
81
54
126
155
172
120
179
172
107
158
125
116
95
78
83
54
106
110
87
49
152
111
128
104
104
76
74
54
74
102
108
141
87
143
116
147
106
125
101
80
94
77
164
91
112
147
111
108
102
143
115
159
77
98
59
149
149
143
106
119
98
132
125
54
122
91
126
123
113
127
158
140
81
105
127
74
68
95
105
101
127
99
153
96
80
98
98
128
74
109
86
144
77
114
129
170
121
133
158
91
103
115
103
93
149
95
81
120
137
81
107
102
160
95
120
59
93
150
107
98
102
54
128
121
119
127
153
131
133
177
127
133
77
95
118
126
106
111
98
108
111
77
102
119
119
96
105
109
102
125
117
87
128
177
83
49
85
100
96
103
107
95
123
161
130
137
93
114
102
145
107
142
117
112
103
102
143
122
126
95
152
160
78
102
139
110
98
126
85
160
173
87
118
108
127
123
90
117
89
146
105
114
172
133
115
140
49
125
144
172
227
103
179
138
135
168
131
103
77
128
135
144
128
143
121
106
134
140
116
107
123
86
103
54
102
130
83
130
107
101
135
129
131
102
54
103
140
59
150
113
69
103
77
131
150
182
137
135
164
110
141
95
83
133
177
92
86
54
140
110
129
145
133
148
125
135
132
163
84
95
115
90
148
145
80
92
126
102
122
122
175
177
80
100
126
165
140
170
68
138
146
144
76
143
160
99
156
133
102
92
102
59
119
95
70
110
126
104
137
115
95
113
54
120
94
111
91
140
127
54
176
105
103
119
154
138
135
144
98
128
68
95
124
122
143
96
95
118
123
154
131
123
107
88
139
102
108
128
95
88
59
109
117
121
97
105
93
121
69
115
103
141
103
132
113
151
82
95
151
73
102
95
99
118
69
161
59
130
103
125
54
137
158
124
115
144
102
79
93
128
95
59
119
105
108
87
129
90
108
128
126
128
95
139
108
54
76
108
54
108
49
133
177
93
147
97
83
113
142
121
102
117
112
144
98
113
103
76
128
82
92
200
156
133
84
89
177
100
113
113
121
49
95
145
49
96
98
160
97
102
89
160
112
134
83
90
133
166
105
132
125
111
144
122
142
98
125
129
125
106
140
114
147
90
117
128
63
114
84
114
148
94
96
162
74
76
133
90
198
159
99
123
102
190
149
103
54
137
129
117
126
93
107
98
120
146
67
102
144
105
135
161
128
78
98
124
122
102
102
49
143
84
54
110
95
103
133
131
106
104
123
101
124
177
54
102
102
81
125
78
113
121
102
130
110
111
143
159
120
110
100
140
161
127
103
98
157
70
119
131
119
90
139
74
116
125
103
103
102
125
128
91
91
59
98
89
153
113
84
95
149
132
77
156
59
141
131
130
157
108
93
128
130
81
127
125
144
125
95
129
116
89
115
122
144
134
171
121
123
108
155
74
74
108
132
91
112
59
77
114
149
119
125
113
123
114
149
76
81
154
198
118
161
142
90
106
82
105
84
74
108
105
106
122
95
107
113
118
49
76
95
212
98
144
110
101
87
68
146
96
81
105
95
140
87
81
122
105
68
130
83
136
80
123
129
102
127
54
96
149
132
116
135
49
145
111
115
77
54
142
146
147
101
76
143
118
120
118
103
105
151
135
117
102
70
106
129
82
127
108
112
49
83
122
135
120
134
95
95
103
144
169
122
81
90
85
96
87
107
93
160
143
101
78
83
101
141
95
105
54
79
97
45
93
143
120
156
150
105
144
115
98
136
140
127
92
110
164
135
68
125
96
88
175
116
95
139
102
139
108
128
95
106
59
90
109
142
154
125
148
131
120
103
59
148
128
129
114
132
154
76
87
195
95
103
119
106
98
110
77
140
87
115
120
138
103
108
122
161
161
59
175
103
76
88
160
95
98
166
158
98
133
133
93
100
92
124
141
54
127
54
80
185
98
85
168
112
108
107
93
121
87
115
114
81
126
130
126
106
67
105
104
109
82
133
160
100
94
124
98
163
90
105
95
59
108
164
105
94
115
125
118
102
130
77
81
118
95
106
119
112
144
132
98
95
184
156
74
143
126
86
110
78
153
121
168
93
108
123
95
78
121
125
83
73
197
140
127
76
140
103
98
122
112
103
100
131
113
93
102
108
190
137
214
143
133
124
98
98
124
147
122
87
96
117
154
67
188
99
84
91
173
93
113
138
108
152
102
179
85
114
134
84
94
107
67
82
129
103
83
102
89
153
147
139
103
114
124
104
102
106
82
121
110
158
102
145
126
118
115
170
82
153
109
102
134
174
100
105
96
74
148
98
75
182
98
102
131
135
105
160
74
106
92
83
119
128
137
106
98
114
124
95
116
135
131
68
144
137
110
186
138
170
147
148
81
77
96
54
119
140
79
152
130
122
109
76
134
77
112
107
94
94
202
73
87
113
133
108
158
139
146
87
112
137
140
94
112
110
197
97
86
145
131
98
150
121
102
88
108
112
155
85
180
95
112
139
130
161
177
131
142
120
153
131
101
54
146
108
59
127
61
77
91
173
95
208
54
117
82
132
153
77
127
87
143
125
113
110
139
125
126
122
73
130
109
147
148
108
108
103
159
106
110
134
105
147
91
54
54
49
54
122
140
87
74
130
103
123
83
103
85
172
81
99
111
85
116
102
126
54
163
135
99
122
98
113
144
138
76
83
101
110
114
200
109
130
89
109
202
140
103
103
131
77
59
124
122
62
89
110
101
104
155
98
120
105
98
105
76
134
103
132
87
143
112
132
105
113
96
122
120
102
127
148
106
95
113
103
135
147
136
143
102
112
83
85
54
158
118
54
140
85
125
147
147
140
131
128
70
123
87
87
114
149
122
96
98
141
149
106
98
118
100
101
158
97
89
191
123
112
107
131
102
68
95
153
114
124
127
133
118
205
54
104
120
154
146
137
114
140
128
105
147
90
159
175
74
103
87
95
128
167
164
49
129
111
105
122
169
158
110
103
145
113
67
106
160
134
160
103
82
79
118
126
157
90
104
138
106
127
98
141
139
123
74
128
113
54
122
134
54
81
105
74
54
132
90
108
116
114
84
93
150
87
135
123
145
98
165
125
69
100
78
77
129
122
132
111
160
125
123
98
138
112
93
115
139
172
145
83
101
149
98
81
100
106
107
104
126
106
108
128
141
49
87
133
160
200
143
131
138
130
89
74
164
118
127
143
154
129
111
77
186
87
77
122
145
155
152
90
109
82
99
152
144
79
102
152
114
81
109
103
145
85
83
114
161
81
102
110
130
128
135
100
148
133
147
103
118
131
117
126
104
82
149
113
123
120
113
126
98
123
103
129
116
157
74
157
152
145
119
82
108
123
154
114
108
105
132
135
92
141
107
128
107
97
168
146
115
111
76
124
84
160
190
107
103
83
68
116
95
77
148
164
100
121
139
107
168
54
120
144
87
144
131
138
95
103
116
81
125
170
105
129
103
98
115
145
113
123
78
101
113
116
90
102
148
105
145
102
108
108
126
131
113
73
102
108
113
141
182
54
119
132
134
177
95
113
107
122
142
59
154
54
148
77
153
110
111
143
97
84
114
82
102
54
132
126
122
106
112
177
124
98
116
158
115
177
82
49
122
81
106
147
143
133
59
120
118
98
105
122
108
149
125
120
108
161
102
102
112
75
106
103
101
138
143
154
111
90
133
149
148
98
106
135
153
119
177
54
154
91
127
123
146
98
106
149
96
108
115
133
108
93
105
109
121
112
145
144
98
140
106
108
110
113
121
127
125
103
94
109
86
67
158
102
140
118
81
123
144
83
158
111
103
154
93
49
104
101
54
135
132
158
67
105
127
116
119
157
98
136
123
158
108
84
190
90
87
96
113
91
95
116
142
90
182
108
225
95
145
173
154
113
98
125
95
98
96
113
78
101
108
87
117
130
99
151
59
112
135
77
103
97
93
95
128
122
93
67
135
122
107
59
95
101
93
120
83
125
104
105
147
156
112
115
82
108
81
126
131
87
124
131
93
102
163
131
103
123
91
131
112
108
54
120
101
129
105
118
181
94
131
74
129
126
116
110
146
129
127
111
127
106
84
87
102
165
118
127
80
139
90
82
106
151
149
105
127
136
103
59
74
119
148
81
102
76
131
49
117
110
118
95
101
105
87
100
117
80
180
99
103
97
150
91
100
76
127
126
90
114
104
142
93
100
167
102
148
140
190
150
73
122
102
59
95
66
95
133
144
117
54
85
102
82
108
102
82
102
143
108
107
112
102
133
124
92
54
100
154
119
107
125
102
147
171
102
85
85
129
83
69
125
101
158
103
116
153
114
135
104
118
132
125
104
179
140
54
54
82
94
129
86
177
101
148
119
107
95
118
103
87
96
83
88
77
144
104
124
103
99
113
84
163
140
78
118
200
141
164
54
108
148
108
65
163
102
130
101
124
87
134
67
110
101
83
106
170
83
139
118
118
129
105
109
131
96
54
150
117
167
82
179
103
130
98
102
81
140
178
109
102
181
72
148
81
122
206
134
113
115
77
155
146
97
95
95
149
85
133
117
81
115
98
106
54
112
153
143
132
132
135
116
156
54
77
132
76
163
103
163
101
128
163
54
77
99
118
133
131
97
131
116
106
117
123
90
148
67
116
103
154
172
70
77
135
184
129
54
106
180
98
125
126
93
116
160
125
101
108
96
116
113
190
96
87
135
172
143
165
106
118
54
128
54
95
132
118
98
143
114
164
102
98
103
105
59
123
95
93
125
79
108
147
123
132
93
120
150
124
105
135
153
103
92
98
133
72
116
67
95
120
150
161
101
108
102
112
125
133
124
95
108
148
102
83
87
148
111
158
109
78
137
107
139
102
98
119
120
108
59
78
108
95
158
160
139
133
138
49
122
127
144
74
83
117
103
118
135
54
104
125
106
105
143
97
139
108
122
114
124
161
54
99
68
139
78
108
91
54
93
108
131
147
91
103
113
127
81
93
81
90
131
108
185
113
120
69
84
130
118
134
140
179
114
140
120
98
116
128
143
108
160
115
107
133
159
139
84
102
146
123
95
112
104
95
111
120
108
112
68
85
107
120
102
87
103
154
104
127
146
145
108
121
171
102
77
139
102
102
82
90
54
104
110
118
106
82
127
77
155
98
103
132
82
93
141
81
107
100
130
135
90
125
106
127
132
119
125
113
77
144
125
76
54
79
133
181
149
112
130
103
114
95
123
128
98
165
170
132
84
170
74
97
165
108
112
128
95
126
96
74
96
97
119
95
49
135
61
90
177
108
140
135
150
78
114
74
107
105
97
163
95
95
82
99
80
131
81
95
87
113
98
87
138
98
139
168
102
76
127
93
142
96
85
132
87
133
94
132
106
122
130
108
90
148
128
147
138
126
148
126
150
185
103
135
169
102
105
90
154
127
109
118
125
59
91
113
93
140
95
127
54
111
78
102
110
82
106
182
168
114
125
101
144
112
151
95
133
87
105
102
185
118
135
102
123
102
109
111
113
104
81
119
131
95
119
134
143
106
54
113
144
127
83
125
98
129
120
54
164
100
95
127
98
142
92
95
108
114
95
102
104
80
106
119
54
129
155
78
54
103
114
67
165
49
81
74
122
106
109
102
108
65
111
128
102
54
95
185
173
105
138
85
149
78
95
175
54
143
96
134
133
108
129
92
141
74
125
116
105
94
83
159
113
97
167
76
125
160
130
121
95
105
107
98
102
142
148
106
103
98
87
83
130
59
134
126
126
126
141
69
160
111
68
133
121
115
126
150
65
144
143
117
142
104
95
134
179
115
103
86
137
92
122
136
120
88
98
102
140
103
148
126
110
83
54
100
101
59
143
54
125
158
143
128
142
137
54
144
129
117
107
177
122
86
117
149
100
126
126
89
107
120
153
134
132
143
95
117
82
129
89
161
59
171
105
162
145
115
202
129
84
113
140
141
140
103
140
91
126
160
111
141
113
154
128
98
98
54
168
80
90
91
77
121
106
81
123
189
147
102
97
78
102
95
87
92
85
124
116
81
113
170
98
77
127
129
79
113
54
131
137
133
75
141
54
112
149
74
176
83
49
78
49
67
145
102
135
144
152
179
110
77
125
124
108
127
128
128
77
54
103
77
86
109
91
82
81
134
145
69
151
154
148
142
120
105
177
89
85
82
131
74
180
155
178
127
98
117
160
111
152
98
120
109
118
127
125
96
137
125
127
114
93
131
88
118
135
113
125
154
128
146
113
146
102
95
142
154
108
102
130
115
103
79
121
90
104
90
128
108
125
162
90
188
59
124
98
113
117
108
130
118
144
96
82
150
120
135
87
94
81
102
103
116
93
114
190
143
149
144
87
127
125
100
145
98
102
99
59
139
96
78
142
101
81
105
78
113
114
112
225
166
59
108
142
145
113
121
61
139
133
130
82
94
138
122
147
105
133
81
145
128
87
125
110
102
93
95
146
125
165
67
54
80
132
135
74
143
82
140
148
146
148
102
54
137
131
81
49
196
102
143
126
105
122
110
170
126
105
108
114
153
166
138
54
155
156
54
83
85
131
153
139
97
97
83
140
214
155
136
100
115
130
137
179
128
90
103
149
83
179
128
106
102
82
113
78
138
141
126
165
95
144
137
116
133
74
127
106
94
76
177
160
158
108
87
105
96
160
49
54
146
168
108
103
98
54
112
160
107
102
158
143
103
98
107
141
116
102
77
68
98
157
118
105
157
91
83
49
117
91
87
98
128
54
113
133
131
93
115
131
123
100
115
74
59
149
133
110
116
136
112
92
136
103
98
123
155
158
161
81
94
128
77
85
94
59
169
109
122
122
95
108
156
125
110
81
122
157
92
143
90
116
163
125
143
93
95
102
102
106
67
131
77
125
109
115
87
143
142
141
93
87
74
104
99
90
100
86
59
104
117
162
82
134
59
132
142
125
123
54
102
96
108
102
76
100
113
98
90
68
147
129
115
91
83
135
156
87
102
128
129
92
121
117
112
145
115
186
97
102
145
54
54
119
113
95
125
128
129
68
103
122
105
133
115
144
92
128
114
159
124
54
95
130
121
180
143
93
107
124
69
108
120
202
95
109
125
100
85
143
95
108
127
149
92
91
77
137
57
156
148
133
96
171
122
105
127
149
101
122
138
90
131
104
54
125
102
74
68
96
54
177
110
234
61
77
145
123
114
120
96
82
107
78
74
102
105
145
59
168
81
54
98
117
137
139
102
169
59
102
163
98
87
135
125
175
106
138
137
95
132
138
161
156
125
108
54
82
141
103
78
148
163
177
91
113
87
103
97
129
152
129
113
117
130
54
150
162
49
127
77
59
149
115
76
100
138
72
107
140
177
95
103
49
83
126
121
103
102
120
131
128
116
154
163
102
106
142
81
108
106
173
95
103
131
88
116
96
101
82
110
112
154
150
159
74
91
96
79
181
117
161
142
167
101
93
151
90
122
127
115
149
116
125
125
80
105
86
182
59
81
107
113
140
68
130
139
135
59
148
96
94
75
75
103
169
124
144
106
80
106
113
132
137
81
169
154
125
70
68
102
131
49
102
114
147
116
138
87
126
120
102
125
146
118
122
95
107
114
110
118
95
175
61
98
54
107
118
90
96
103
133
140
85
78
49
97
147
137
76
98
100
127
161
103
122
111
139
106
49
109
144
81
147
83
93
113
145
113
134
143
155
49
188
129
181
118
100
49
69
89
121
118
78
132
98
101
128
154
95
81
112
150
80
167
61
108
122
150
105
68
85
125
141
118
112
105
120
81
156
124
127
135
109
74
145
70
125
78
112
133
133
140
145
76
163
184
178
86
83
77
54
135
145
54
129
104
145
142
54
128
143
161
120
139
125
54
126
87
133
132
104
96
115
128
93
89
77
140
54
130
98
114
83
120
96
83
116
102
82
119
102
82
138
102
160
128
93
144
141
93
99
82
156
102
140
132
121
113
68
132
128
107
106
118
141
153
95
115
123
135
87
96
106
77
82
177
78
122
117
131
119
118
91
158
105
168
80
118
59
138
146
125
151
145
196
129
126
133
83
127
147
143
108
142
49
174
95
129
83
88
129
104
102
102
134
97
99
83
94
144
128
153
146
158
133
96
173
133
131
153
125
61
110
69
76
169
82
104
135
121
163
122
126
128
133
108
114
81
122
138
108
156
149
172
92
104
178
79
150
114
125
202
98
107
137
135
113
131
127
126
78
133
59
147
144
107
112
134
109
79
119
130
106
96
74
163
103
111
87
139
148
112
112
158
118
102
143
84
116
177
105
154
119
148
105
134
140
85
91
112
119
98
117
116
135
122
54
143
76
103
109
101
68
108
73
171
105
59
92
99
139
117
74
123
61
85
108
105
113
99
128
121
131
136
131
103
76
87
81
130
134
126
98
117
92
85
180
108
107
96
177
108
145
110
159
99
99
151
174
115
118
170
98
176
138
156
132
83
85
98
121
136
162
175
167
161
114
126
98
85
54
146
93
133
112
56
77
120
133
54
45
54
100
113
148
95
153
116
122
90
90
125
120
76
74
98
179
125
128
102
95
152
115
76
54
102
137
90
108
149
173
135
83
111
102
83
108
117
90
83
67
86
87
90
160
77
108
134
87
76
142
127
152
90
81
82
102
82
105
95
171
94
124
105
131
138
129
107
69
107
130
105
123
102
108
118
133
125
122
109
141
148
83
103
158
113
109
116
108
87
151
111
92
155
117
140
106
116
98
148
91
212
87
123
98
96
111
80
108
120
142
128
134
93
106
81
165
87
149
109
177
165
143
113
149
147
102
174
102
117
82
122
155
143
115
109
102
141
154
128
134
106
114
105
154
106
134
116
140
112
133
186
113
76
54
78
103
115
108
125
68
82
112
90
162
97
168
120
61
88
153
204
144
166
126
94
148
49
102
102
143
156
45
109
113
82
134
102
135
54
123
182
54
141
143
95
133
113
131
108
149
109
137
107
87
106
123
108
166
182
61
146
144
102
90
149
128
153
102
83
98
158
91
128
54
179
110
123
138
102
125
98
81
98
95
137
132
148
61
127
153
81
116
115
124
76
89
158
90
133
139
103
74
118
152
139
140
136
112
54
149
138
138
115
148
54
121
109
111
137
91
207
102
87
132
117
135
107
95
103
152
114
140
98
98
54
90
135
111
167
119
187
148
131
133
93
113
102
105
121
87
49
93
141
78
98
102
128
100
119
129
141
148
158
145
143
139
111
59
92
109
105
104
105
122
91
113
107
107
165
102
133
93
124
95
109
168
135
67
149
89
125
130
67
59
127
90
91
130
128
99
76
148
103
81
87
128
104
122
194
69
78
108
145
116
139
91
131
62
95
87
87
143
108
87
96
114
160
128
102
139
175
110
120
103
113
85
95
110
74
103
141
122
106
99
128
143
125
121
158
91
113
83
102
120
142
81
49
142
110
95
92
102
129
133
143
97
82
127
135
125
102
110
128
78
177
167
148
98
126
102
87
107
103
108
106
104
76
90
102
49
83
122
54
85
123
85
128
123
54
105
140
96
107
102
146
158
59
129
160
116
109
102
105
163
213
143
106
76
137
118
113
133
125
179
120
95
82
156
124
107
133
103
107
59
112
186
166
154
146
139
54
54
116
165
134
149
112
89
110
102
119
105
69
156
104
87
113
106
186
87
169
74
141
119
83
165
143
54
99
147
97
161
143
141
138
96
87
117
82
140
102
105
95
159
108
140
146
118
54
108
104
120
76
93
130
135
116
179
116
86
90
139
162
87
146
102
90
82
81
78
118
78
118
85
135
122
148
102
142
135
98
131
95
87
99
95
74
130
59
68
82
111
81
150
122
103
74
128
77
93
115
117
84
125
181
148
123
114
93
93
108
108
49
85
90
95
131
104
140
92
128
93
118
142
162
163
136
113
91
100
150
79
142
103
140
69
119
168
92
125
62
99
131
82
127
116
147
90
106
130
128
190
105
125
108
86
135
104
107
120
71
92
109
167
159
114
112
129
54
91
95
105
164
105
105
172
113
59
123
54
133
136
92
112
74
99
90
87
77
168
66
132
138
102
129
116
128
95
135
103
132
109
86
122
112
119
110
103
171
150
116
144
107
78
133
96
145
149
116
67
127
94
108
110
178
63
131
144
159
165
54
145
170
134
134
141
110
133
98
49
158
87
111
78
54
84
112
141
105
112
76
102
106
105
87
98
91
162
146
105
153
150
91
113
111
81
98
94
59
98
54
54
91
69
142
74
142
156
148
80
80
116
130
101
160
161
127
115
114
139
86
106
88
93
105
83
87
135
129
124
111
120
103
97
76
106
159
54
98
120
151
134
129
138
101
177
95
112
120
88
124
134
126
148
109
141
108
106
105
78
125
120
143
118
131
153
143
111
151
156
115
54
98
104
108
108
144
125
97
96
123
140
98
99
133
97
177
108
96
114
133
88
131
143
98
62
132
81
128
91
103
129
77
102
100
115
146
145
118
127
146
49
95
148
118
95
115
131
135
117
78
181
139
74
129
115
81
121
108
163
169
158
95
96
97
183
181
83
118
143
120
59
101
80
98
131
130
83
125
125
76
102
168
61
111
134
108
166
87
141
145
96
54
168
133
69
106
103
95
123
81
54
140
127
101
192
61
90
92
80
59
137
105
54
142
127
143
85
106
129
54
118
115
103
95
108
106
107
141
143
90
113
113
80
108
109
137
140
143
107
94
148
126
114
88
141
133
73
136
109
139
97
114
112
113
71
164
96
105
128
158
192
121
117
109
136
145
162
121
113
108
103
151
82
169
108
97
122
115
100
98
149
137
128
119
120
93
134
115
120
188
126
138
116
73
109
143
98
94
99
111
104
81
108
108
129
151
179
137
162
91
118
115
170
69
98
125
154
161
122
152
93
136
139
108
134
98
102
95
74
54
113
191
73
133
73
107
76
155
113
96
125
144
148
76
177
143
125
49
102
117
148
122
132
131
139
194
126
135
148
90
74
116
113
110
93
120
133
123
49
98
136
153
113
54
120
133
87
115
135
95
123
124
117
79
74
103
112
127
106
132
148
77
81
77
146
101
49
144
114
61
59
118
129
115
127
110
129
54
104
102
145
105
79
72
102
186
169
190
82
146
99
138
159
108
83
109
120
112
90
81
109
132
80
133
130
81
81
168
133
117
82
100
154
106
102
54
119
119
126
156
95
113
83
83
107
76
167
130
121
98
126
100
85
93
83
145
115
149
129
119
117
93
135
128
126
82
110
107
84
129
112
95
128
100
162
108
49
93
156
90
80
112
115
93
108
123
105
100
139
108
122
129
91
145
173
135
95
77
168
145
133
101
118
119
122
100
109
162
79
133
122
122
159
73
141
87
115
124
99
126
119
113
100
82
112
87
54
45
85
129
149
105
100
103
113
137
92
91
77
97
181
143
78
95
121
150
93
93
87
145
93
138
54
113
67
81
102
83
151
95
108
133
102
105
91
81
117
148
81
76
148
124
144
96
59
106
123
76
95
121
219
136
185
81
185
100
102
102
93
103
79
134
91
79
136
129
104
116
106
148
129
141
98
200
111
169
123
102
96
49
132
180
118
76
101
128
118
125
106
125
110
95
112
105
115
141
117
103
108
101
108
69
154
85
157
102
104
84
134
173
49
112
166
115
104
190
108
163
150
177
123
77
102
167
148
127
106
147
106
125
110
92
177
121
113
96
93
135
106
93
76
98
126
103
149
110
145
116
141
122
98
143
101
108
186
122
95
73
122
123
102
108
72
92
115
90
149
102
105
129
122
122
77
177
125
113
109
100
77
87
145
115
179
74
102
141
169
137
106
132
81
148
118
129
105
79
105
106
118
136
88
74
145
123
143
69
103
125
120
95
150
95
135
144
97
54
120
101
125
167
113
108
59
81
110
108
133
81
105
151
100
150
90
98
141
147
149
94
129
102
131
225
102
49
59
123
74
69
139
72
54
117
103
142
87
99
105
105
81
102
54
148
145
128
118
121
106
118
91
81
102
116
108
106
94
114
54
131
87
143
54
136
118
85
107
129
170
102
146
179
161
90
137
150
95
82
102
98
78
151
129
116
98
164
101
111
78
137
93
113
70
100
138
104
148
108
160
92
158
74
114
94
135
164
103
74
134
104
81
124
146
101
133
92
161
81
54
68
146
134
82
123
92
89
125
162
142
92
143
54
81
95
109
113
147
88
111
103
101
107
78
133
105
128
81
74
108
129
92
94
112
102
97
105
59
143
82
94
74
114
89
163
112
45
112
103
133
61
85
89
108
169
102
108
84
131
141
143
124
100
130
156
146
112
105
59
133
81
143
117
131
159
76
85
78
95
153
133
108
128
116
61
145
135
84
132
112
86
102
167
54
141
85
81
160
103
94
100
122
156
127
139
148
85
156
123
130
121
67
102
95
98
104
124
96
133
102
155
112
102
83
90
95
153
104
93
200
98
148
109
139
101
104
140
134
108
119
121
161
54
124
83
160
87
113
146
133
100
143
194
107
74
147
99
91
102
186
154
125
95
125
138
189
104
153
105
101
106
133
98
61
147
102
131
122
93
141
61
138
83
105
145
103
143
90
78
93
89
54
123
160
114
143
76
95
95
104
135
96
98
126
81
107
175
166
116
166
102
79
140
184
81
81
127
89
169
93
118
169
108
186
165
177
98
76
125
54
135
132
125
110
107
135
128
143
106
95
54
114
98
133
127
125
85
101
129
88
136
105
106
114
108
84
120
85
80
132
155
97
98
113
127
111
105
105
54
91
129
145
81
103
109
139
54
150
65
81
134
95
59
76
109
131
102
84
148
82
101
103
107
165
159
110
114
128
116
125
49
81
54
134
97
113
67
157
103
117
146
54
158
116
103
93
128
118
119
150
108
152
108
54
128
110
90
59
125
135
154
140
154
129
102
129
105
93
114
160
101
113
129
85
98
107
111
90
95
98
115
131
91
92
100
139
121
133
125
101
123
91
70
138
154
90
139
119
117
96
112
123
133
119
127
113
82
84
128
149
160
172
160
107
117
54
59
112
82
95
104
167
125
118
95
133
165
118
165
93
123
105
118
106
149
81
59
102
108
153
158
105
102
193
97
98
74
89
76
88
177
75
73
138
138
97
81
146
83
102
175
77
96
99
120
93
110
108
125
82
105
134
101
148
125
152
158
67
54
101
139
127
103
119
107
135
54
132
149
129
107
140
81
102
122
112
143
141
103
74
173
82
97
90
74
135
128
103
132
145
126
134
139
93
123
119
143
177
111
123
138
110
102
119
102
144
149
148
97
104
113
133
54
54
98
145
114
95
95
111
105
117
82
106
49
132
102
72
132
144
154
124
87
109
81
91
98
81
133
109
105
93
150
133
132
99
128
81
92
143
117
138
87
108
118
80
93
105
85
93
83
102
126
125
96
90
133
93
88
145
115
67
115
112
120
88
49
127
149
139
143
84
120
164
123
132
110
78
107
128
113
97
140
122
125
149
108
122
90
99
153
102
113
131
141
110
67
85
98
177
97
113
74
179
160
123
122
95
132
131
69
172
120
179
145
96
120
89
163
117
102
103
130
146
152
109
91
81
104
109
77
79
104
87
112
81
127
89
145
139
178
95
124
97
83
128
102
105
106
95
91
153
106
116
125
127
172
54
78
145
129
188
95
81
113
97
89
126
76
140
103
100
97
146
163
129
122
124
97
148
145
161
112
95
77
122
113
140
124
98
85
83
93
86
209
144
96
123
116
140
95
77
108
61
93
101
194
143
122
107
121
102
109
132
102
116
118
153
163
102
79
54
95
80
121
81
103
115
139
78
128
63
99
158
137
87
114
140
151
87
113
94
87
93
111
98
94
92
100
85
139
118
134
102
163
93
141
140
156
91
108
80
135
132
94
115
146
95
92
194
78
98
162
111
82
97
115
149
120
105
136
102
99
81
113
127
116
96
122
127
170
82
111
78
54
98
101
112
138
121
124
117
69
105
92
102
177
85
180
117
122
95
105
49
163
125
133
114
96
54
151
103
138
142
89
74
95
156
152
95
177
49
148
133
107
102
135
106
83
122
113
132
151
110
112
91
129
97
134
74
94
133
135
135
113
145
95
121
115
144
127
119
106
143
120
108
192
80
69
67
90
177
109
125
120
147
79
97
167
69
54
108
122
124
105
54
156
146
127
135
90
80
147
144
96
117
113
110
65
107
78
107
145
127
139
83
114
150
116
113
119
120
98
54
137
152
170
92
140
136
102
161
84
73
109
115
87
195
180
54
155
129
156
131
128
108
111
100
105
115
105
118
146
59
155
82
133
127
154
89
61
159
122
168
76
100
54
83
129
102
149
143
93
177
108
106
110
49
148
108
131
90
125
105
129
118
103
132
54
105
68
111
113
143
148
160
106
100
98
54
158
124
155
98
163
82
144
120
90
138
101
87
165
143
102
130
176
97
125
105
118
98
80
97
82
164
123
65
49
91
95
67
68
117
96
105
145
131
98
131
133
155
129
110
114
108
112
128
212
145
82
113
78
87
107
49
133
165
107
118
108
115
144
82
140
103
82
87
130
79
157
99
84
148
115
149
119
108
124
110
111
156
68
77
179
100
114
103
159
81
68
59
128
145
161
103
154
67
110
177
148
107
95
110
147
136
121
98
82
80
76
90
83
119
93
155
126
133
90
141
177
85
49
169
102
105
123
130
133
117
140
174
99
98
200
129
96
49
136
132
140
131
87
111
123
77
182
119
125
105
151
54
114
137
146
131
122
77
115
107
112
200
108
100
76
166
108
194
110
102
105
101
108
98
121
130
148
95
227
154
162
54
59
144
116
148
142
162
119
109
102
148
110
95
129
99
130
90
129
140
180
87
116
96
97
121
119
132
140
165
94
137
90
108
81
87
107
135
105
94
103
81
118
130
140
98
177
168
170
111
95
91
95
152
100
100
121
136
111
98
59
143
153
108
148
95
150
115
123
95
98
175
177
113
142
54
105
54
149
138
82
133
153
177
141
105
123
159
75
134
113
94
106
54
76
96
107
87
177
129
134
133
125
119
98
103
102
98
132
166
158
152
54
110
120
85
59
89
49
118
59
79
152
76
93
54
81
128
80
98
120
129
122
102
82
146
149
114
54
147
143
49
117
102
120
140
101
108
108
143
69
117
54
177
59
133
132
120
84
131
89
54
126
148
129
115
171
122
107
125
140
137
140
146
144
102
74
177
108
90
124
133
113
111
97
124
54
117
129
102
177
113
87
104
119
131
104
94
54
54
77
98
91
114
124
92
165
104
163
152
144
107
93
102
114
124
163
129
143
112
102
102
49
118
82
102
140
54
78
83
110
107
144
145
117
102
101
59
178
87
148
107
74
119
102
149
123
102
125
87
91
98
80
150
59
164
96
130
146
135
78
98
115
90
111
134
67
106
108
80
91
122
117
67
151
77
97
115
147
128
158
146
76
98
59
78
85
142
117
115
97
164
98
76
120
133
119
90
157
83
100
126
108
83
104
100
119
68
119
131
110
80
161
80
108
130
153
135
76
113
96
186
108
81
129
146
177
155
68
54
144
113
93
74
136
95
110
113
109
186
95
108
178
177
105
102
94
54
93
175
108
131
141
120
88
45
82
102
119
108
102
170
95
159
128
61
129
54
128
134
54
108
147
81
107
71
119
120
54
77
87
80
93
96
149
161
106
142
54
121
179
158
138
178
99
154
133
74
59
106
131
130
106
85
131
158
131
85
145
163
125
107
59
116
133
139
124
140
76
103
103
88
113
154
124
125
126
102
134
123
103
143
96
93
87
87
138
137
106
111
140
78
87
108
146
114
107
115
143
78
103
126
164
181
132
114
172
92
115
74
45
102
136
128
173
100
87
105
128
122
84
54
103
133
125
106
77
224
117
123
159
153
172
140
81
125
117
124
152
131
100
169
108
120
96
54
104
129
93
165
76
95
102
164
125
108
90
125
97
132
102
90
95
110
154
129
98
82
171
95
100
91
150
95
127
155
93
168
105
144
144
54
218
174
133
127
82
98
77
98
124
54
108
73
128
138
93
131
145
117
132
102
105
140
138
132
145
110
163
107
49
147
117
93
141
84
178
128
118
103
134
54
93
133
127
127
70
131
74
87
131
103
104
119
92
159
118
150
133
95
136
106
98
54
99
98
103
65
110
113
120
95
99
61
125
81
97
164
110
102
133
177
155
93
124
138
135
167
117
107
95
117
105
105
85
113
97
108
54
122
126
150
116
105
102
116
54
161
142
98
81
120
97
134
107
103
106
161
59
114
154
54
74
103
77
98
151
98
98
121
110
69
132
160
118
129
138
95
89
98
59
126
81
140
120
143
160
177
107
121
102
62
129
156
108
113
108
54
54
109
49
132
100
145
134
124
90
130
83
132
114
112
81
105
100
113
93
112
120
171
71
96
138
171
110
149
98
131
139
83
54
88
127
165
119
92
105
131
129
126
98
54
126
102
134
177
69
54
101
102
120
107
117
94
77
129
94
81
95
91
122
107
153
127
116
111
123
99
111
102
133
119
102
140
118
114
118
117
160
100
90
131
115
150
143
123
151
102
126
59
125
81
54
93
163
95
76
134
140
89
70
176
83
96
115
119
133
108
111
108
61
109
54
102
147
165
118
129
216
128
115
103
93
135
123
139
97
95
119
54
99
140
157
103
141
99
157
153
101
132
146
115
125
127
100
104
136
80
131
95
131
59
127
128
108
163
109
90
114
101
106
106
149
115
150
87
95
77
137
93
103
131
130
124
122
54
85
108
98
111
116
138
126
171
148
108
102
105
76
148
156
143
168
96
90
118
102
129
101
77
134
172
110
92
135
138
74
177
76
111
54
105
159
82
142
76
132
54
103
120
90
112
74
95
126
143
96
69
87
131
54
120
73
108
97
170
120
113
108
95
148
126
97
138
102
127
128
68
102
88
143
61
96
87
120
108
90
134
93
76
140
128
78
101
87
77
139
117
69
128
54
119
87
108
91
77
151
121
90
98
95
104
74
54
98
136
147
76
95
135
135
97
114
103
76
74
102
94
128
129
147
68
140
172
108
133
116
78
114
149
98
93
106
97
121
97
122
122
115
96
108
113
61
98
110
54
74
125
165
81
113
77
151
99
111
94
104
193
116
107
110
87
102
128
105
155
91
148
99
135
87
113
80
77
179
76
108
122
108
81
139
78
180
65
128
113
54
143
180
74
99
172
168
107
116
153
98
80
137
135
102
120
124
59
199
160
99
77
95
77
115
130
118
96
98
83
93
135
96
112
137
126
113
61
160
95
90
108
161
98
107
123
54
106
114
103
135
103
147
104
152
125
125
85
108
97
109
74
108
106
92
67
106
124
59
175
82
135
148
96
98
125
109
102
97
139
100
127
90
105
172
95
118
146
68
107
90
116
74
78
109
128
146
170
162
98
86
115
107
96
95
107
134
94
170
124
49
128
115
110
94
108
113
119
96
101
118
157
82
106
74
120
98
95
80
134
131
90
125
118
76
108
90
168
108
102
119
93
108
123
132
104
104
121
106
108
169
98
145
157
103
108
142
115
94
120
87
108
105
77
77
80
192
97
144
133
104
150
149
103
85
102
113
155
91
54
92
118
108
78
77
104
142
95
93
130
128
116
108
125
116
103
115
176
147
98
98
102
70
156
103
67
102
106
87
134
148
54
90
77
82
111
109
97
74
119
76
181
77
90
135
108
185
148
140
125
129
113
101
81
160
49
134
147
91
108
129
117
54
166
93
143
152
102
78
147
106
127
117
138
83
104
177
161
148
95
79
83
83
113
83
142
91
143
107
121
80
142
107
108
161
118
75
171
87
139
80
219
87
54
133
93
132
103
125
105
148
119
71
103
108
90
132
118
97
85
90
118
80
108
113
75
103
87
119
85
151
150
119
101
144
80
102
99
125
128
135
172
76
117
81
88
67
133
141
110
95
124
158
157
54
110
88
107
165
116
95
76
147
159
165
90
127
105
116
105
131
133
112
108
105
102
131
161
148
97
160
69
100
117
74
128
142
120
116
79
107
93
76
108
142
134
156
74
128
83
110
102
84
54
89
193
113
131
103
181
81
104
102
101
144
127
112
120
132
137
126
118
78
169
86
125
148
101
143
112
128
95
120
110
139
136
94
108
113
146
99
82
63
132
135
111
125
139
85
92
81
148
59
167
133
98
136
122
168
110
108
154
146
104
149
177
112
84
122
107
108
81
104
81
115
143
95
133
113
130
101
93
106
96
102
77
74
49
114
108
140
125
127
90
132
120
103
135
93
144
192
81
103
145
157
65
117
108
108
136
141
69
103
129
69
121
74
49
143
100
136
116
76
79
131
121
114
131
94
73
128
133
144
76
101
97
107
108
91
184
138
87
93
148
120
125
74
140
118
159
117
143
148
99
68
89
99
177
153
131
103
153
59
127
73
147
67
122
126
123
120
112
94
133
145
74
54
138
116
88
108
134
102
74
134
140
136
128
122
104
92
107
90
76
96
116
95
134
118
90
87
132
100
120
116
106
102
158
85
112
103
134
108
110
167
133
49
133
96
146
106
87
125
97
98
148
76
76
142
123
131
131
117
149
74
106
77
143
54
114
95
101
87
54
91
122
141
102
98
54
131
54
69
112
83
113
153
76
149
146
129
112
123
114
131
144
92
98
105
98
148
80
144
141
154
111
116
172
54
107
114
107
108
119
159
153
81
125
138
95
87
109
74
148
90
152
78
113
98
207
148
54
175
77
113
93
87
142
134
103
185
95
61
82
113
132
144
131
125
113
135
54
95
140
92
68
79
91
177
110
137
133
59
90
76
109
176
128
78
131
134
74
139
110
82
100
61
91
133
81
122
105
109
101
105
138
154
98
83
92
73
132
108
122
68
126
172
97
90
161
107
98
95
74
154
54
108
117
118
135
87
96
164
141
131
155
118
125
49
110
107
105
114
74
103
132
134
104
95
85
131
87
85
78
157
68
142
184
123
85
103
76
95
123
106
131
144
91
97
148
81
82
115
99
116
141
98
77
129
106
54
108
147
74
115
150
77
95
95
132
123
123
95
59
54
151
113
104
148
105
144
92
125
108
130
120
79
98
130
129
97
125
123
195
165
145
114
170
85
137
135
77
113
95
102
182
179
131
128
103
100
152
125
137
54
85
150
130
150
112
179
124
93
97
117
150
77
67
123
116
135
108
118
115
152
147
148
146
92
102
103
95
105
148
100
113
115
95
78
95
103
74
139
81
155
114
179
160
102
85
107
138
152
108
109
185
106
102
102
121
114
93
94
105
87
106
103
119
123
144
113
84
141
109
98
98
96
108
121
116
133
116
122
146
73
102
136
91
124
98
76
117
93
141
147
89
150
49
154
133
78
110
165
95
77
92
102
77
167
178
70
78
93
82
67
139
59
54
81
102
150
100
96
134
157
141
143
83
144
95
98
171
129
76
106
133
157
130
133
158
136
67
161
76
73
103
87
116
136
156
81
114
108
132
138
154
89
144
137
97
158
126
110
106
98
74
131
162
126
152
141
128
93
119
102
54
129
101
168
138
125
144
151
128
93
87
90
114
103
120
128
89
79
74
137
107
151
113
118
91
74
90
90
120
78
112
107
81
98
139
61
139
98
107
95
133
99
122
123
108
108
89
95
106
162
125
139
94
54
187
125
135
151
141
119
104
98
116
107
117
103
90
102
108
126
87
108
146
100
112
122
87
107
108
146
109
170
114
83
180
99
95
140
146
117
100
140
67
77
134
123
119
87
132
152
78
107
127
107
94
67
93
97
154
102
95
81
140
115
108
115
169
49
90
100
86
86
148
117
104
54
102
140
83
94
113
152
65
89
102
104
112
95
85
54
175
118
54
94
155
103
156
116
63
108
147
156
118
74
87
95
116
123
144
84
129
115
150
81
82
87
119
93
116
98
124
122
67
113
124
105
139
100
78
132
78
180
122
177
131
137
121
131
126
105
120
69
129
125
90
76
135
160
132
94
117
100
94
54
94
80
122
98
105
122
138
143
75
115
149
152
99
136
81
103
106
111
176
107
142
131
54
103
148
134
163
102
125
114
120
127
98
119
54
105
85
106
135
162
134
165
150
102
115
126
146
116
54
111
139
144
126
102
108
82
105
187
122
78
146
144
76
74
123
145
98
108
124
102
158
103
102
128
98
103
118
54
133
135
86
102
93
148
96
129
88
166
103
106
125
77
112
83
144
59
126
186
143
54
121
81
136
85
98
143
98
177
123
100
134
175
68
95
111
81
162
102
116
123
138
100
114
90
107
102
137
179
110
110
101
102
129
119
49
129
185
148
155
54
102
130
96
97
143
142
109
103
107
156
169
129
88
133
106
93
80
137
107
177
61
119
142
54
96
101
132
54
54
99
107
91
117
179
102
125
125
108
68
108
148
104
127
108
120
112
90
108
97
146
99
177
76
95
104
157
133
145
131
116
105
123
151
136
125
87
176
142
130
144
117
131
131
90
98
98
115
122
144
110
156
96
69
82
139
115
124
108
119
124
92
78
93
103
98
140
77
92
115
134
108
77
129
76
74
136
88
158
143
54
139
135
128
54
93
108
54
96
102
93
155
138
122
110
114
100
103
95
151
76
131
74
109
131
108
180
77
49
129
118
149
96
126
107
134
120
116
123
120
97
106
108
106
98
135
137
169
178
104
85
103
120
123
59
131
74
88
95
133
106
109
140
108
136
125
93
110
96
128
85
105
193
119
130
98
129
99
120
98
115
61
113
181
105
122
132
102
139
124
54
165
105
95
150
109
80
127
106
169
92
127
130
102
104
87
79
76
81
133
54
82
98
82
128
131
143
108
149
139
133
121
148
104
49
79
81
81
133
153
98
147
78
107
76
122
78
235
126
125
67
155
132
143
124
111
102
115
128
98
118
90
133
103
98
116
97
155
89
133
86
106
74
106
49
148
86
160
104
95
116
84
124
96
59
54
112
160
124
85
103
101
102
106
87
151
122
76
106
103
137
76
147
143
117
126
136
115
115
87
117
101
97
130
151
111
103
143
127
108
108
108
54
73
145
128
108
88
104
94
117
91
59
85
83
91
116
88
59
77
116
67
54
127
129
105
191
135
108
141
120
151
122
134
96
125
101
113
102
90
115
110
127
89
105
90
162
134
83
131
131
138
156
126
147
122
87
102
99
109
108
140
49
81
69
141
59
134
121
49
114
107
148
59
168
105
95
133
135
123
123
81
98
49
123
129
129
91
139
160
125
96
142
99
119
138
96
144
100
74
148
138
163
146
120
54
121
77
96
54
164
168
98
106
88
125
125
111
105
148
134
153
123
160
67
137
92
125
148
75
132
123
54
132
113
122
124
96
148
106
77
107
102
77
115
122
74
153
141
141
135
177
122
137
157
98
107
74
105
69
111
102
100
96
123
138
102
149
141
85
59
93
102
111
115
130
143
96
125
93
59
136
113
124
107
108
131
82
96
124
127
127
59
171
130
67
168
54
112
123
129
83
141
144
112
164
124
120
160
145
119
118
97
80
117
80
105
129
98
110
81
89
97
99
158
110
108
125
98
132
130
122
93
168
90
102
95
54
140
114
120
69
167
68
141
112
119
144
174
135
102
91
141
146
202
134
105
91
102
108
124
105
129
98
124
76
109
129
94
150
98
108
153
99
128
155
132
108
112
100
129
74
125
108
123
133
102
126
150
148
87
88
81
86
149
140
141
78
139
129
45
112
54
82
126
90
59
123
108
82
104
106
128
134
87
147
110
102
101
129
160
131
54
89
120
121
112
133
90
102
102
83
103
98
110
103
143
118
131
129
105
143
139
130
132
107
108
145
117
129
108
91
139
123
54
180
95
153
73
73
97
150
102
103
124
59
117
84
90
125
122
92
133
140
128
168
81
142
92
149
99
96
98
103
97
107
143
76
102
127
89
106
141
124
125
88
49
162
127
98
125
149
98
106
132
125
155
70
76
96
123
98
104
76
91
49
131
99
129
139
99
100
147
87
82
101
98
135
155
127
91
118
123
104
145
135
128
98
120
90
139
141
116
105
90
129
128
141
99
98
131
74
128
103
186
119
105
194
153
107
108
49
153
127
85
54
125
165
110
129
162
106
54
95
93
49
146
130
85
99
102
137
135
102
122
117
83
108
95
112
151
102
95
98
123
134
121
105
109
143
144
111
110
54
90
95
154
106
139
81
121
100
115
123
95
105
131
140
147
133
156
162
95
172
110
108
139
73
151
98
87
68
97
131
78
122
146
129
118
125
104
135
77
108
128
97
98
139
152
74
102
98
133
116
128
107
95
101
154
144
143
78
102
112
125
82
82
54
119
123
125
114
108
133
125
143
146
148
87
97
126
103
131
120
105
95
122
99
131
98
96
154
148
96
78
85
95
148
102
153
98
81
93
80
151
121
103
128
87
103
88
69
151
83
111
76
96
109
122
125
86
84
111
100
98
93
61
131
127
123
116
153
167
118
108
59
102
137
98
108
160
111
142
123
107
158
99
133
148
126
158
76
83
67
200
157
133
92
148
108
122
133
98
100
108
147
54
102
138
106
91
106
158
108
165
108
102
92
131
95
87
159
130
54
133
81
122
123
122
136
115
95
93
107
119
76
128
120
170
110
125
130
91
105
134
160
94
85
127
101
102
95
113
177
102
76
109
125
93
127
149
54
122
104
54
165
67
54
121
180
108
139
107
113
152
186
67
67
103
159
131
93
98
139
152
49
104
121
142
110
144
94
123
205
93
165
125
110
118
54
149
114
131
120
158
103
151
113
133
82
103
108
128
129
102
54
144
117
108
77
93
97
103
144
129
105
113
59
83
128
98
154
104
131
127
54
76
54
92
114
93
110
80
129
102
159
110
110
139
160
78
102
116
130
86
162
151
111
136
96
123
102
132
118
116
81
99
79
131
103
115
65
118
106
143
111
153
153
113
115
172
123
81
80
133
121
143
127
78
145
119
164
128
89
128
106
69
74
92
160
102
118
122
126
54
82
105
79
178
95
109
82
90
126
150
95
81
111
140
132
90
102
134
103
125
91
108
157
160
144
87
115
111
106
78
74
125
109
87
85
142
133
135
106
54
87
107
135
108
131
155
108
69
104
113
102
105
109
113
153
122
126
108
98
120
88
82
165
143
170
158
98
106
118
108
67
110
141
98
135
126
97
119
179
131
49
81
145
119
150
129
128
116
124
110
104
179
96
93
155
54
104
123
147
144
131
145
130
170
54
95
102
137
116
146
118
102
112
77
68
126
67
54
88
145
128
82
129
147
109
104
158
135
132
158
126
101
88
120
102
54
124
85
180
148
166
127
108
79
131
137
141
153
125
131
144
54
102
139
94
54
79
161
114
107
105
59
116
124
95
120
123
92
143
54
92
115
95
119
128
103
165
143
102
149
103
100
87
96
167
93
42
78
113
98
121
116
108
91
98
96
82
116
172
138
177
118
65
103
59
108
103
125
108
125
54
108
120
76
108
115
156
132
124
74
111
98
73
104
112
179
85
171
125
170
136
103
83
93
127
93
103
102
83
130
101
49
90
166
144
117
108
137
127
82
163
116
97
169
119
49
112
61
127
93
102
171
129
131
143
54
110
107
101
97
119
118
145
81
98
135
73
109
118
125
96
71
178
122
102
102
131
128
86
136
98
131
164
42
139
118
118
126
145
140
160
54
87
91
93
131
102
98
125
175
175
137
194
96
155
97
113
167
117
113
138
67
79
157
121
107
149
110
91
179
93
54
103
169
175
133
138
129
135
133
129
155
143
90
149
69
133
106
54
143
103
103
112
158
61
176
106
102
124
110
131
167
98
54
96
93
135
152
106
90
86
54
74
115
119
154
139
113
87
107
97
135
54
98
87
49
128
124
108
83
101
144
137
98
94
74
81
96
49
130
103
116
83
130
140
107
87
95
113
74
98
69
108
125
102
120
82
125
135
108
128
81
126
115
93
120
82
145
74
144
105
68
95
93
186
106
124
156
140
84
114
54
96
126
95
119
74
159
115
125
87
91
79
128
49
96
161
110
123
118
146
133
127
125
121
131
105
103
98
92
194
49
125
119
140
125
98
98
93
127
163
130
84
125
102
133
86
122
102
139
59
124
138
54
69
82
141
95
128
108
159
165
138
54
54
159
110
54
131
121
102
122
143
125
108
124
74
154
142
49
54
120
143
54
116
124
90
175
110
182
110
92
144
92
115
81
131
54
74
112
106
104
59
153
182
140
138
97
102
215
102
108
140
127
157
112
155
93
115
54
76
68
99
120
112
138
102
79
108
143
122
138
81
148
54
149
96
135
163
95
160
129
126
107
137
105
104
124
206
98
95
124
131
146
104
72
74
132
74
226
119
96
93
95
151
113
131
141
206
105
102
140
102
108
138
94
107
102
131
82
131
81
80
85
128
117
166
94
102
145
49
152
121
77
125
231
160
95
103
165
151
158
140
139
117
95
108
113
158
119
129
120
116
136
93
138
134
141
161
155
93
87
143
61
108
83
131
131
145
176
108
190
108
124
112
76
144
125
93
74
121
162
146
73
141
144
92
134
54
128
111
122
146
117
143
95
82
104
179
102
98
81
62
149
148
90
131
125
80
121
163
67
168
119
102
84
105
138
104
116
61
105
92
113
95
76
108
83
90
99
154
146
87
144
125
140
81
130
140
81
134
98
108
145
89
166
105
162
87
84
85
112
148
95
85
113
103
143
118
121
199
112
145
100
115
93
161
113
77
136
49
114
129
108
106
82
145
88
98
160
122
97
128
102
156
123
138
82
125
95
158
158
118
177
125
108
54
104
87
108
122
103
85
176
85
106
104
166
123
148
87
136
108
115
82
98
147
81
137
115
102
133
112
157
104
108
87
93
97
128
68
112
82
149
103
96
122
123
145
142
144
167
91
49
177
143
99
118
75
133
110
83
117
120
129
105
103
59
112
125
167
106
76
152
101
54
114
107
169
54
110
130
78
102
81
54
67
135
69
114
108
103
94
90
72
145
54
168
116
106
98
123
131
105
82
134
123
131
142
121
95
108
122
106
99
140
129
139
118
98
103
78
112
117
59
134
102
91
121
218
122
128
137
113
96
146
135
108
163
145
131
139
98
152
135
54
88
105
83
103
104
135
54
87
93
149
148
77
120
118
54
114
124
113
131
67
162
121
138
131
104
95
165
81
90
85
78
54
102
140
137
105
138
87
87
125
102
54
144
74
108
110
133
79
73
49
81
116
147
78
127
108
90
135
85
59
133
128
173
77
144
106
81
137
130
102
85
108
145
112
101
117
86
79
153
81
131
111
138
49
69
116
110
113
98
106
102
123
115
79
145
102
111
90
97
78
103
99
81
167
124
127
110
57
143
102
158
146
120
77
68
153
117
88
114
91
125
171
123
180
67
138
139
126
127
161
149
150
82
113
140
138
129
87
103
87
125
93
81
218
102
107
146
127
95
125
123
106
145
97
84
81
108
123
118
67
107
179
90
81
133
95
143
67
96
129
104
103
96
110
102
130
85
78
112
142
54
163
111
93
96
90
132
117
108
98
126
82
105
125
125
129
91
94
90
80
130
87
103
93
102
84
125
158
125
107
137
131
115
106
90
83
108
95
147
131
144
106
125
108
156
102
140
138
113
170
99
128
147
218
98
123
135
80
103
124
104
106
172
151
148
103
74
95
144
161
143
81
95
104
104
98
88
122
104
95
132
92
134
184
95
83
125
54
162
169
125
95
88
114
168
145
148
94
54
108
76
135
177
81
120
110
118
95
93
145
138
148
113
178
95
153
54
96
85
130
191
129
179
103
80
54
130
101
141
74
148
101
150
158
87
111
74
120
138
108
116
147
146
102
128
108
129
98
150
96
74
139
54
96
115
111
137
100
161
96
145
131
133
106
160
101
149
94
98
77
69
107
97
113
129
128
85
151
102
119
114
107
118
124
96
96
84
124
139
83
103
145
54
161
129
142
113
126
114
82
113
141
135
106
127
97
115
165
139
106
133
98
98
151
103
121
94
123
139
107
140
54
80
111
118
143
160
125
159
148
121
104
119
144
61
93
87
63
85
122
74
134
143
125
83
73
137
124
124
129
128
178
103
115
105
155
103
113
127
152
113
87
91
98
120
153
104
124
100
128
143
132
82
90
77
82
113
88
108
109
172
185
80
118
147
130
85
131
106
146
79
158
98
106
139
132
59
118
177
93
118
127
94
136
151
126
140
94
78
148
133
127
132
105
118
92
112
147
122
119
83
74
61
98
74
100
72
114
102
98
84
120
124
141
88
112
160
108
85
136
116
177
76
135
126
68
138
141
105
153
117
136
49
92
107
148
143
54
97
108
133
113
111
144
107
152
119
122
96
143
113
225
135
124
103
59
139
117
136
156
107
120
87
122
98
125
146
127
138
102
165
95
74
150
122
124
108
113
77
148
98
98
116
96
103
145
122
134
99
84
115
97
189
120
110
156
102
73
106
102
163
104
113
116
108
150
168
113
199
74
105
54
95
113
87
102
195
108
138
113
102
125
54
150
78
102
131
133
91
115
179
74
195
77
95
117
139
95
87
76
95
93
177
125
142
148
125
145
145
81
77
108
155
155
73
117
91
87
82
148
105
69
101
147
134
133
129
141
86
54
94
81
142
150
160
123
108
133
90
49
49
151
131
99
120
111
148
111
175
128
98
146
87
129
77
77
101
151
117
99
143
92
76
54
77
112
161
131
74
192
135
129
134
95
129
67
103
111
89
208
119
127
54
49
54
103
139
166
110
125
78
111
75
95
119
100
98
98
129
108
85
147
85
93
49
115
114
113
104
146
144
117
171
102
144
168
77
101
153
98
76
152
144
112
91
133
85
95
100
145
102
49
77
83
133
59
131
54
136
73
110
173
146
145
95
126
136
128
49
142
110
82
139
108
116
98
87
89
93
136
54
59
135
54
61
118
54
81
126
95
130
163
126
81
122
133
98
128
108
49
102
168
115
61
102
161
155
106
102
121
112
125
182
154
126
137
139
100
112
110
120
168
153
77
108
81
83
81
113
140
143
146
115
105
132
144
88
126
82
124
143
104
81
115
82
139
102
81
177
121
107
108
83
127
95
123
103
142
144
108
105
110
128
139
189
124
114
112
93
113
142
129
124
152
68
107
189
127
59
135
120
117
98
81
161
179
121
91
124
108
139
153
145
129
113
141
95
120
85
130
106
122
109
95
167
146
86
168
122
127
114
108
127
86
91
83
91
121
140
137
54
104
103
97
115
102
54
102
122
108
54
128
121
113
118
129
80
133
95
149
161
119
97
128
77
54
67
149
109
102
115
131
69
103
93
132
107
113
74
89
148
106
91
93
99
110
95
113
139
103
78
124
54
115
126
105
158
155
134
102
90
102
108
127
143
148
54
95
129
120
119
150
87
77
147
76
111
143
68
110
162
125
110
85
90
158
128
77
142
132
75
90
133
81
130
125
106
141
95
113
121
156
108
148
102
113
134
147
74
90
174
109
127
84
126
95
101
95
94
128
122
76
59
104
74
83
126
87
101
136
138
129
142
186
74
134
90
102
144
82
108
82
102
54
158
98
117
154
78
139
113
98
111
73
128
87
100
81
101
54
135
49
161
116
191
115
149
102
105
74
164
81
112
108
132
54
102
125
104
74
98
121
78
54
68
160
95
119
146
117
118
136
136
122
120
126
91
95
142
118
134
141
186
90
125
90
69
97
103
135
90
98
120
126
111
128
81
103
149
105
160
87
123
54
119
148
115
113
99
115
128
139
119
133
111
123
112
108
140
112
95
57
120
174
83
133
154
54
119
59
168
81
102
96
54
130
143
69
200
93
54
81
124
134
125
117
147
54
133
123
90
131
74
101
135
108
114
146
93
145
129
78
130
124
142
148
96
92
115
128
59
119
120
83
105
101
117
174
97
101
106
174
92
81
92
136
54
102
105
104
176
141
83
125
153
144
118
54
129
133
122
109
108
139
122
102
123
78
178
127
126
145
116
106
80
106
108
104
71
124
130
133
140
76
129
95
144
139
122
130
95
104
94
108
130
78
91
98
95
113
143
120
69
83
76
129
140
96
93
171
177
99
151
96
125
127
128
49
95
108
54
99
139
142
95
61
162
72
74
116
104
140
106
201
118
117
106
94
96
148
130
125
54
95
129
110
130
102
95
144
145
95
126
108
102
107
95
126
97
74
108
68
120
49
112
140
123
165
110
95
81
78
168
68
102
69
90
129
133
62
170
128
54
135
173
161
153
87
108
106
83
143
82
87
140
95
159
138
87
95
162
149
150
67
101
102
110
125
88
131
71
103
131
171
157
146
159
150
116
185
135
135
129
122
147
102
136
102
116
75
105
131
97
85
159
113
120
140
107
155
102
170
125
106
74
108
170
131
133
95
54
110
151
77
101
122
135
139
132
98
127
128
133
116
160
59
111
125
125
102
81
140
113
96
80
156
81
76
54
143
127
125
110
115
120
81
101
144
158
69
126
113
134
82
126
101
106
131
180
76
115
102
102
153
122
90
127
132
121
158
110
110
88
61
87
181
160
102
125
116
174
130
141
77
126
138
148
128
104
163
133
142
125
152
158
145
102
185
158
169
126
91
112
107
196
114
125
87
107
82
132
87
67
125
119
103
117
91
108
107
114
76
157
103
74
77
54
139
102
108
124
135
83
123
106
167
86
95
128
134
143
73
116
146
172
116
175
95
74
116
135
157
121
119
103
146
165
155
152
78
112
78
120
98
87
81
82
118
90
88
124
92
134
109
121
144
140
95
96
156
125
106
102
78
184
120
104
82
102
157
92
144
98
149
141
134
102
130
145
85
80
168
106
126
101
111
118
54
152
183
108
119
103
127
116
168
120
147
115
126
113
118
103
137
158
149
122
77
115
174
147
77
108
116
113
135
114
76
155
118
143
109
59
139
102
120
105
126
90
114
118
54
125
89
141
98
161
95
77
148
90
156
162
95
108
132
101
200
98
140
143
72
65
126
111
120
135
136
98
106
102
112
117
155
87
83
90
88
134
108
120
155
148
86
108
108
151
91
49
113
102
148
148
77
119
90
243
140
146
94
125
112
137
149
142
45
81
59
81
123
107
87
129
123
162
100
74
120
123
139
154
158
54
67
129
169
123
108
104
189
123
83
103
119
116
116
146
102
115
88
106
61
147
134
93
118
126
146
122
111
177
134
124
102
81
113
81
81
153
135
108
146
108
128
149
82
129
98
119
191
137
180
102
131
115
78
114
106
141
102
59
186
110
87
61
81
125
82
120
89
141
54
80
127
93
82
122
90
74
103
93
131
98
93
122
128
103
177
144
145
81
96
146
87
74
110
119
113
54
81
54
78
122
133
95
94
95
112
143
95
106
125
98
94
98
102
85
141
119
89
162
128
54
123
148
98
159
101
100
130
95
127
125
133
94
108
117
132
109
144
115
77
108
112
116
82
91
162
96
90
129
96
78
102
123
103
129
87
74
74
69
170
117
120
142
148
98
91
85
103
193
167
161
116
128
103
136
157
122
142
123
93
105
115
177
90
49
117
94
129
87
61
127
114
95
83
127
102
161
102
84
178
140
67
87
135
119
103
74
136
165
77
141
135
74
110
124
120
95
106
87
98
144
180
139
78
130
138
113
138
135
93
125
98
101
118
74
76
91
115
100
125
102
102
90
160
106
98
128
144
142
129
95
91
117
120
154
115
83
107
128
120
123
143
85
54
128
143
163
98
54
59
163
148
143
74
113
135
128
108
116
85
124
123
97
74
180
54
125
142
154
132
81
96
108
108
90
119
108
89
87
105
100
93
124
140
54
95
171
121
89
105
80
145
57
87
108
119
115
100
119
158
94
112
101
136
130
115
108
116
136
116
120
152
108
87
111
115
102
86
106
158
147
107
130
114
82
152
102
146
108
146
90
98
54
115
108
138
106
108
101
143
81
107
126
54
116
163
101
101
116
147
122
150
59
117
99
59
82
54
108
113
112
97
90
123
54
125
95
146
113
145
116
76
148
95
133
140
86
108
68
124
54
95
83
138
142
81
125
117
154
148
114
74
128
144
123
108
140
98
146
123
120
131
127
115
123
106
67
119
95
129
136
84
128
103
49
158
135
103
81
103
61
67
144
115
108
165
98
102
84
122
153
90
145
113
103
180
120
99
113
98
95
110
143
82
108
82
118
81
158
107
102
90
104
158
122
61
128
54
150
100
83
106
127
49
70
87
49
127
148
79
54
154
113
113
95
120
83
140
157
108
148
105
71
118
127
98
114
143
147
108
143
149
95
134
54
95
75
100
102
133
90
115
148
104
131
116
127
105
157
87
162
139
148
105
127
98
163
131
81
91
118
103
92
91
165
168
114
110
103
111
97
107
90
54
147
145
98
131
95
98
67
76
115
149
127
74
76
83
143
91
113
177
167
125
122
54
94
111
113
168
86
77
117
145
95
117
103
127
115
113
105
93
125
105
79
118
125
131
77
102
124
131
121
113
89
128
123
108
90
102
113
95
140
82
150
77
113
156
87
126
82
119
98
131
123
81
123
98
153
153
80
110
49
108
180
110
129
110
85
118
84
168
129
117
128
148
140
92
61
76
99
142
120
127
99
174
102
76
196
98
49
112
153
132
49
113
140
99
109
135
106
120
84
143
109
116
107
83
71
101
103
160
127
78
153
161
137
59
98
109
116
109
49
99
91
102
130
109
145
95
128
54
143
116
81
161
144
108
107
79
84
142
160
108
102
155
139
95
120
101
146
54
125
49
148
102
158
172
142
102
74
98
54
113
59
101
83
107
114
131
147
85
123
59
61
138
103
107
165
81
101
150
90
107
54
138
97
67
156
108
110
186
185
125
77
82
133
132
77
119
84
67
95
59
70
92
134
145
112
128
87
150
168
110
126
119
108
137
142
127
95
104
135
190
74
130
117
161
87
74
173
138
135
54
168
151
81
105
145
103
82
102
104
128
112
127
81
130
85
134
139
115
113
143
94
130
83
72
178
146
107
133
133
80
149
105
143
104
109
111
124
131
103
103
90
143
145
128
99
105
107
54
54
80
99
76
67
156
129
108
87
79
105
122
90
132
102
54
49
129
141
108
108
102
106
54
98
163
120
54
96
68
121
128
150
81
85
165
82
107
76
141
125
138
113
95
92
138
112
150
91
94
83
59
106
77
98
91
93
135
129
115
115
96
91
139
106
97
81
179
129
114
117
98
124
108
89
128
54
141
177
127
96
118
95
113
112
101
99
144
54
106
154
123
143
85
148
73
115
87
105
115
124
54
87
61
120
79
76
123
133
97
76
153
81
129
136
157
78
107
123
61
85
102
120
136
138
95
138
59
82
59
97
108
144
124
97
143
100
122
94
109
116
91
115
95
97
125
104
116
116
81
133
106
116
159
125
165
145
135
124
108
108
129
165
111
113
149
91
90
95
96
123
103
134
102
146
150
139
144
133
87
98
87
124
118
148
95
95
128
173
137
140
122
161
92
76
105
87
108
112
134
113
143
109
96
119
95
139
83
98
144
135
92
49
109
107
76
126
89
148
130
129
126
134
54
108
88
62
127
138
86
59
92
133
124
90
133
98
112
109
88
61
114
133
116
93
108
154
87
111
67
136
115
54
148
91
138
122
154
85
83
87
93
171
172
113
87
159
83
118
88
103
140
108
101
103
128
90
95
49
158
167
141
114
159
54
125
54
108
98
98
98
145
154
90
193
114
133
141
102
98
98
115
103
99
110
148
91
136
115
78
90
125
103
147
118
103
107
150
102
122
125
143
126
90
76
133
111
125
146
98
149
140
80
95
147
101
119
102
161
113
54
102
107
123
131
103
111
108
111
78
121
96
179
188
77
134
86
78
133
148
135
103
99
93
128
133
107
98
137
107
110
102
77
49
120
126
102
156
92
140
161
133
172
134
87
113
153
109
103
94
111
101
74
128
112
72
91
117
109
124
119
96
160
81
59
127
142
125
113
133
125
160
146
115
101
155
131
98
158
139
116
124
54
140
135
108
74
95
112
125
124
70
132
135
95
103
98
110
140
102
136
109
74
160
148
54
123
110
125
88
111
128
126
164
135
99
108
94
120
95
123
102
91
107
114
98
111
108
102
69
111
113
139
108
131
95
96
128
98
137
65
118
179
85
139
192
95
166
84
91
74
143
118
147
83
77
54
97
54
181
141
186
141
116
134
96
105
137
111
185
132
49
196
215
135
158
82
149
132
99
82
136
131
94
104
107
78
61
105
107
116
122
143
129
106
90
67
54
177
132
177
138
128
49
173
120
77
127
98
93
131
67
126
117
106
61
148
111
77
112
89
126
125
94
176
122
127
112
125
152
105
102
76
54
139
147
79
82
126
110
93
143
102
67
149
134
97
49
114
123
59
117
148
111
122
140
159
95
90
54
144
134
67
108
100
135
154
102
93
141
108
96
100
163
148
128
128
135
133
93
112
147
96
98
109
110
140
131
216
96
143
121
112
110
113
110
91
87
73
98
98
148
131
106
97
105
82
109
167
94
100
90
130
54
118
181
147
92
77
138
148
87
139
133
128
148
105
167
101
135
54
113
133
103
73
113
173
71
104
101
101
103
98
98
125
54
127
119
130
95
108
90
72
138
165
125
74
114
105
118
135
125
136
116
133
155
87
106
113
100
148
181
96
111
149
131
127
135
121
115
113
128
76
148
87
111
185
108
125
120
103
103
93
100
61
132
125
139
190
108
102
139
139
98
170
128
75
65
117
117
179
113
124
104
95
98
115
99
100
139
153
108
90
94
179
157
95
103
59
148
95
151
131
95
102
68
122
45
135
87
126
82
118
120
106
118
54
85
125
86
120
74
61
121
59
79
125
135
103
109
128
115
123
108
76
98
115
102
102
98
163
138
81
138
77
124
76
93
130
127
95
148
90
68
78
135
107
54
59
93
155
148
65
54
120
128
68
124
95
129
138
106
122
84
123
159
84
104
54
103
102
77
84
102
59
82
145
114
119
95
114
102
59
174
49
136
115
92
76
97
122
180
125
112
105
130
124
82
160
123
149
123
103
90
120
118
93
112
102
87
180
153
135
138
98
108
117
59
152
120
95
128
83
54
118
54
139
89
110
89
138
163
72
91
121
175
125
139
101
123
136
136
143
65
97
113
182
109
79
120
102
103
123
96
140
130
93
122
95
74
175
103
125
131
168
83
122
112
123
141
97
100
103
95
125
108
96
106
115
102
78
111
78
147
93
157
115
110
59
102
147
87
131
95
91
67
54
110
86
95
131
107
147
97
102
119
157
103
143
103
85
108
113
127
118
102
54
98
49
120
110
77
121
116
119
182
113
164
123
133
116
91
128
156
111
67
97
107
74
74
96
131
81
134
102
113
105
76
87
125
159
97
155
108
77
96
116
161
119
78
74
118
123
108
96
130
108
112
125
129
131
101
137
74
94
143
131
128
96
125
79
160
130
83
119
118
140
74
73
147
132
137
78
98
120
54
120
67
126
120
123
93
122
87
88
179
108
151
102
82
87
147
87
99
103
155
149
102
137
114
120
120
102
95
113
119
164
124
152
96
102
140
148
103
103
133
122
118
122
124
182
133
78
143
125
127
108
146
97
102
154
98
201
68
108
111
167
121
97
74
116
122
112
117
148
107
87
104
98
146
90
138
95
54
98
105
117
121
152
131
92
131
128
162
127
111
154
136
169
120
108
91
111
132
95
111
104
103
90
157
101
144
68
154
120
130
104
104
81
128
100
139
116
77
115
139
190
86
234
113
143
98
133
97
49
82
177
163
146
88
125
102
92
138
127
81
101
125
107
127
77
65
146
113
102
151
108
148
111
113
129
136
163
114
105
150
54
197
158
87
167
108
123
106
49
98
107
153
155
157
112
98
127
116
161
131
140
78
140
83
93
214
143
81
155
138
157
128
87
106
122
98
140
108
142
107
102
70
87
123
98
112
148
81
176
102
95
94
98
148
108
171
59
168
114
77
105
134
152
106
100
109
105
112
106
79
74
145
87
54
199
107
93
133
90
120
98
84
147
124
129
98
61
145
110
100
97
65
170
93
108
135
78
121
95
197
135
131
49
127
153
78
204
155
116
96
125
112
49
140
158
145
103
180
110
103
49
96
131
151
102
149
93
122
181
93
129
140
120
128
98
54
79
99
93
99
104
120
105
151
83
158
61
227
109
91
82
134
112
106
54
125
121
124
120
123
54
113
107
106
71
158
119
151
148
135
125
121
143
111
143
98
82
145
78
106
87
138
194
108
161
68
78
148
90
59
117
119
104
142
150
106
115
85
87
83
74
160
84
130
128
108
107
149
74
59
98
102
155
81
93
156
85
168
93
49
112
124
96
146
139
122
180
54
83
143
177
133
124
95
133
105
136
103
157
124
133
89
134
153
135
116
102
138
171
92
146
125
139
103
82
108
140
54
136
134
117
124
191
129
54
142
185
105
97
139
175
99
108
107
112
143
42
133
118
155
122
74
135
122
54
98
54
90
108
158
90
169
153
158
91
128
137
119
87
146
61
81
158
67
107
128
172
74
74
93
136
92
108
108
127
93
76
139
129
96
106
148
83
127
149
54
157
93
167
177
136
102
98
120
98
83
155
81
124
118
116
113
138
119
110
146
138
131
102
83
163
112
164
83
101
122
80
116
82
97
77
83
103
150
125
101
59
90
152
90
67
59
103
103
79
113
120
107
77
136
109
110
150
125
134
128
54
103
148
98
108
107
116
143
136
104
115
149
96
81
156
123
88
115
118
120
108
169
134
54
117
131
140
151
111
146
54
98
95
127
78
113
107
88
98
77
128
122
84
143
82
141
81
149
73
95
120
126
135
128
109
105
54
129
132
112
129
190
102
121
49
102
104
106
182
74
148
129
118
146
124
167
148
134
67
59
49
172
155
127
100
144
105
104
73
113
110
98
133
130
106
67
156
98
117
116
117
142
144
110
130
98
130
106
95
94
139
85
97
133
54
74
149
83
90
115
131
168
125
105
131
92
143
74
128
54
148
105
135
127
103
85
54
85
144
120
108
77
108
101
103
118
117
103
87
83
134
169
102
54
67
93
107
116
103
117
137
96
143
95
154
89
54
135
54
107
95
95
121
84
135
96
103
90
100
122
101
110
87
116
54
175
120
129
97
106
133
172
87
111
138
120
125
61
127
95
103
81
129
102
141
90
54
127
95
127
132
181
124
129
101
102
143
130
111
125
126
117
94
147
95
125
108
104
95
87
93
136
133
112
76
148
112
111
94
76
131
119
164
136
102
78
101
87
160
157
122
108
85
81
96
85
148
81
108
148
132
95
87
90
69
145
149
81
124
93
121
125
54
90
74
73
128
100
83
168
190
49
110
128
115
128
118
140
131
97
54
98
125
177
103
97
132
112
102
91
124
135
137
128
118
108
129
134
76
100
101
128
97
103
162
194
125
76
98
112
100
107
78
132
154
95
137
154
171
148
133
122
80
167
122
49
99
61
116
108
113
177
118
152
113
118
95
120
101
128
123
133
105
148
102
111
218
178
149
103
122
108
117
103
108
108
169
178
127
114
151
186
133
42
97
98
119
147
115
97
93
102
147
162
101
146
98
131
54
59
118
160
107
113
135
104
147
142
108
111
95
98
95
98
159
100
129
91
151
75
100
59
128
103
83
116
81
131
91
107
54
122
137
127
177
90
151
110
138
139
89
98
107
49
108
139
119
146
158
94
145
79
111
142
135
95
147
54
112
82
54
45
141
99
116
113
107
90
113
131
124
127
102
101
102
119
125
61
81
97
127
93
117
123
98
148
78
134
92
146
102
183
83
103
128
90
108
187
90
61
125
95
120
128
143
88
127
84
134
135
146
54
127
163
128
128
138
103
143
91
89
130
107
95
49
105
127
148
123
97
177
161
169
108
144
87
92
98
102
97
98
103
134
109
105
125
144
101
102
54
102
158
187
177
105
185
75
87
77
135
140
143
131
98
89
114
108
182
149
96
74
96
105
134
90
148
81
95
98
125
54
145
164
84
130
81
107
127
118
98
115
78
172
144
127
83
104
143
78
49
129
163
98
77
119
135
84
87
110
102
110
100
127
129
98
97
83
123
119
139
72
107
82
133
84
112
54
109
98
110
108
99
90
123
81
102
148
129
89
118
95
68
67
156
93
59
77
79
87
93
149
59
133
108
95
75
110
116
96
99
131
67
94
156
154
127
129
115
108
94
54
139
80
124
90
91
155
120
143
138
149
98
81
122
102
105
118
126
120
93
124
83
135
105
150
152
133
59
157
93
102
73
122
113
54
105
80
83
127
143
140
77
93
103
111
67
140
103
126
114
111
110
122
105
125
67
102
114
95
123
170
76
108
109
105
129
128
90
113
139
59
159
128
108
125
107
94
104
95
108
81
126
117
131
138
96
144
130
117
96
125
83
110
94
147
101
98
102
148
108
82
112
131
148
116
140
116
126
49
95
117
82
117
149
131
121
54
97
91
144
145
81
108
130
145
160
128
83
77
95
76
49
104
134
129
140
90
103
132
83
129
144
81
91
128
124
106
152
99
61
77
131
81
108
163
129
129
103
108
98
81
122
82
103
108
123
107
98
143
116
115
82
149
148
163
158
136
119
153
153
54
128
151
105
121
119
139
92
154
80
182
150
130
129
115
103
113
108
81
131
78
119
102
98
159
95
128
130
131
90
108
116
129
120
128
78
127
120
97
90
109
146
95
49
110
108
107
78
148
94
159
141
113
95
96
98
98
158
161
67
96
103
105
85
108
119
154
186
119
79
149
135
190
150
161
107
78
176
128
148
194
113
90
88
149
105
108
108
99
136
125
49
107
143
68
85
114
89
90
49
135
142
82
83
150
106
145
82
74
179
129
120
141
84
125
61
77
141
147
89
108
126
121
122
122
85
107
167
85
54
135
90
106
87
120
67
140
106
140
98
117
54
135
69
145
108
122
136
172
113
124
129
100
93
99
146
173
83
59
98
110
104
81
121
129
107
110
85
102
93
133
110
105
54
112
129
87
106
127
102
96
95
139
84
110
124
131
128
150
128
87
161
122
166
127
97
160
151
150
131
138
118
110
49
54
141
148
86
91
111
109
81
87
74
91
91
126
125
95
103
115
98
97
81
119
147
94
155
80
137
93
144
91
121
100
177
148
122
131
119
133
113
122
115
89
143
59
95
165
148
177
139
144
165
108
181
86
159
114
165
111
98
100
54
225
87
115
147
120
131
77
87
96
107
130
114
125
77
117
135
106
133
126
101
158
68
176
184
90
140
137
106
143
103
121
132
90
109
95
49
59
109
139
115
127
147
131
113
100
80
54
90
181
170
110
177
129
164
137
54
96
103
103
74
123
81
136
130
109
95
140
117
127
102
186
140
171
158
135
119
148
49
111
98
87
107
59
133
110
134
158
200
81
129
110
104
157
83
147
129
97
177
157
114
107
98
94
102
103
95
119
102
116
117
157
105
125
145
95
83
128
102
152
104
118
118
78
87
177
110
77
128
125
108
99
135
96
144
135
81
148
90
59
163
125
106
135
95
106
102
138
125
127
191
108
134
120
112
115
90
97
147
125
130
93
54
87
108
102
129
78
54
87
128
128
119
93
143
98
103
74
144
96
69
90
161
120
161
54
59
157
108
104
144
59
103
149
122
150
78
81
105
123
135
95
116
153
105
76
113
123
54
141
143
143
129
146
132
111
54
102
98
134
144
91
119
84
113
177
103
158
141
128
91
130
54
108
108
130
85
114
126
158
123
119
143
138
95
69
122
90
92
139
144
140
120
90
133
129
101
93
150
105
107
54
102
54
74
54
156
102
74
90
74
73
132
80
108
116
103
59
108
78
137
121
54
103
85
105
103
115
93
186
105
76
168
154
102
98
80
135
148
182
128
110
115
143
49
127
88
138
90
106
144
155
83
103
156
143
135
133
185
102
87
102
129
91
180
97
103
98
134
147
81
105
98
157
93
112
122
148
120
154
82
95
102
102
54
133
112
133
102
122
129
74
77
108
67
78
112
95
95
108
100
109
121
74
89
131
103
102
107
102
122
142
110
103
54
148
54
91
110
127
81
103
90
90
182
148
81
131
154
139
54
82
100
90
124
108
100
108
117
110
177
119
139
93
86
102
102
148
133
109
89
90
124
139
135
127
128
154
138
124
103
76
129
132
143
98
92
116
102
49
117
97
105
121
142
122
125
153
97
111
127
106
87
118
54
146
91
70
90
106
99
123
128
177
90
98
112
122
95
107
166
142
90
137
92
186
198
165
141
172
104
67
102
136
158
99
54
148
150
103
49
116
165
74
158
102
105
143
180
115
95
79
141
185
85
116
104
120
152
132
105
155
120
138
101
54
102
122
154
90
121
133
118
144
120
95
105
95
77
107
90
133
109
142
133
190
151
95
108
85
150
92
54
101
98
143
152
141
102
120
99
80
115
84
98
154
108
182
101
134
93
108
81
167
66
115
74
115
102
125
102
49
54
108
95
98
75
109
134
167
99
125
113
54
125
113
127
145
93
90
90
82
100
108
67
135
113
153
90
129
149
100
115
97
90
157
109
113
158
140
92
125
102
152
82
95
81
82
103
118
104
98
93
126
157
96
115
101
141
166
131
150
138
155
136
78
135
139
139
104
105
59
96
106
119
113
106
80
76
113
143
108
112
76
113
101
114
131
103
141
218
115
116
103
68
77
122
122
139
102
65
140
113
137
139
107
91
183
114
103
115
81
161
121
108
59
149
121
143
113
126
112
138
102
122
125
78
123
103
87
138
137
78
97
103
158
124
91
98
108
115
151
72
163
141
49
133
93
125
106
137
110
129
91
103
113
152
104
108
165
108
125
102
129
139
96
140
79
119
124
129
98
146
169
143
120
157
154
76
81
117
98
161
85
133
135
118
116
97
177
120
49
45
138
123
104
118
158
115
104
86
110
109
146
108
102
108
148
163
90
73
59
119
109
95
84
102
149
106
98
107
113
85
113
90
98
151
120
54
104
128
134
118
103
186
115
93
120
139
102
103
140
98
115
110
136
105
59
113
74
143
45
93
117
98
106
140
80
59
152
78
148
102
74
129
134
65
119
161
105
98
102
149
128
146
87
123
158
102
138
116
115
133
110
157
104
163
67
108
95
81
117
121
49
125
96
120
70
197
95
156
112
102
98
109
158
91
124
120
154
120
133
102
90
96
119
103
150
129
74
69
100
59
106
67
128
184
144
108
54
130
74
138
143
131
96
103
96
142
130
82
80
106
123
93
102
54
102
129
160
54
67
135
104
150
80
148
83
103
131
101
81
90
103
147
105
81
61
128
54
103
94
146
124
121
149
93
125
108
106
161
127
128
95
147
95
54
90
110
116
145
119
152
128
111
122
106
139
128
169
92
103
100
95
91
81
106
102
142
122
49
130
105
70
113
176
122
76
123
108
108
119
161
97
82
154
141
119
122
125
129
113
98
147
119
81
132
82
151
110
135
105
173
165
169
131
102
108
76
92
87
78
108
105
133
84
115
136
49
165
110
196
113
126
112
153
190
89
54
90
90
82
95
82
68
133
146
144
165
61
123
138
116
152
102
131
84
154
108
180
85
103
153
121
119
129
97
108
149
116
98
134
177
177
121
54
150
84
94
167
126
147
139
95
76
147
77
103
160
137
87
145
74
101
157
199
54
113
135
134
67
118
145
180
125
94
102
143
116
94
91
98
148
76
69
65
179
128
114
101
95
210
118
138
101
105
102
200
115
140
69
113
117
159
133
108
127
102
110
147
95
87
116
78
54
83
100
104
120
145
149
73
110
95
130
85
83
107
127
117
165
77
104
104
143
161
99
150
116
108
115
97
132
101
74
59
99
165
101
86
109
108
82
82
124
82
124
116
98
98
110
103
122
98
126
129
74
123
101
128
106
108
94
118
179
87
118
119
119
93
103
106
103
113
67
95
98
133
169
69
80
172
93
95
190
93
95
131
110
123
108
98
108
90
111
133
116
125
54
156
98
108
89
158
142
116
87
83
77
111
131
103
93
132
90
105
123
153
122
80
127
143
124
123
82
153
120
105
181
135
115
130
100
165
90
120
91
103
155
54
108
54
155
98
149
143
102
49
85
120
68
84
108
184
135
119
124
102
136
113
110
110
148
84
87
104
108
142
126
69
121
88
161
91
134
128
133
103
134
102
113
118
154
102
178
124
120
157
107
158
93
113
102
90
108
163
128
158
127
125
140
132
120
108
125
94
59
121
95
139
102
165
105
125
113
108
77
54
106
143
113
122
128
101
89
143
110
98
147
121
143
115
93
76
132
129
134
118
157
127
132
98
108
81
151
96
98
118
139
170
118
135
125
111
120
114
90
167
143
98
127
158
140
87
161
97
124
145
87
108
157
105
103
113
103
126
93
87
149
77
103
163
49
108
102
98
152
142
133
82
95
98
108
101
77
123
106
112
131
123
88
135
111
85
139
113
54
121
157
126
59
101
134
140
122
146
131
116
133
130
131
141
120
98
99
134
110
106
54
93
148
119
158
54
119
89
99
161
145
49
109
76
59
77
124
76
81
148
158
102
129
115
133
100
180
94
108
145
105
71
129
163
113
110
91
113
138
175
127
105
82
156
104
112
115
158
106
144
120
140
102
127
80
172
222
145
106
132
54
118
74
103
147
98
133
102
147
86
85
93
158
93
146
140
131
95
132
149
115
95
196
74
92
87
49
154
89
159
141
93
113
54
91
105
54
93
93
115
118
123
144
139
115
153
150
182
88
80
122
139
148
148
95
137
96
119
165
54
150
75
104
108
49
54
143
113
156
89
85
176
139
96
109
54
93
49
54
97
106
133
113
134
98
90
85
131
104
125
152
102
100
98
139
80
99
118
98
122
133
69
135
140
177
133
119
122
123
105
116
170
77
120
160
93
93
108
124
103
138
117
104
69
111
125
87
103
135
101
54
104
108
108
171
115
129
144
139
140
54
135
120
101
110
125
54
114
87
122
155
128
102
106
93
108
104
110
166
163
96
127
167
117
144
96
156
172
168
144
160
138
120
105
105
124
125
121
104
49
94
59
110
81
74
86
108
124
67
172
160
133
113
97
92
102
117
126
54
107
103
99
129
106
68
158
148
107
155
134
85
125
125
109
116
113
103
106
83
157
141
98
140
123
145
71
106
65
95
54
113
153
154
161
98
102
90
84
130
127
74
123
117
115
106
107
158
76
95
82
179
108
122
149
177
98
87
133
81
92
90
103
109
133
90
124
119
158
103
102
59
132
137
107
133
117
120
102
152
105
134
140
54
93
83
93
113
83
97
81
74
131
153
119
108
139
115
93
74
102
84
96
134
76
76
82
85
97
77
134
88
128
108
134
154
107
112
85
98
129
152
140
99
125
130
125
113
73
100
144
128
139
90
122
136
142
125
102
153
146
103
125
108
128
122
167
76
119
110
94
173
179
93
77
92
134
84
76
138
54
149
82
142
148
107
141
180
106
100
115
131
155
143
90
154
85
113
165
96
170
74
119
99
114
129
90
148
108
132
54
102
83
59
98
101
159
87
143
130
145
95
108
133
105
95
100
132
54
122
81
155
116
87
146
78
59
91
159
83
98
105
103
101
125
93
78
135
93
49
134
99
108
119
112
158
131
120
177
143
215
143
109
95
94
141
133
118
49
81
127
93
61
120
145
73
130
67
112
125
91
100
137
145
89
131
98
149
157
54
91
129
54
94
161
133
150
112
146
143
95
101
93
83
128
122
87
115
126
154
128
139
118
113
113
151
76
104
78
139
103
93
83
120
156
135
119
120
152
137
113
89
97
89
84
93
182
131
74
67
111
200
103
147
73
107
133
80
110
90
157
129
153
118
128
98
108
96
128
108
102
105
108
111
85
135
145
170
115
102
97
115
123
146
77
139
69
76
89
116
143
120
108
117
114
123
172
146
137
119
165
78
108
151
152
100
117
89
180
118
102
105
54
95
150
163
106
169
102
94
158
163
137
78
83
151
139
169
49
82
85
49
92
192
98
178
115
54
125
102
106
141
108
143
97
95
91
104
138
82
89
106
54
125
124
95
91
125
111
127
123
108
95
98
82
94
123
107
138
135
140
107
106
144
196
74
124
98
153
120
110
141
106
134
54
98
133
138
79
116
83
135
115
99
95
148
144
54
122
67
145
67
166
161
120
126
101
149
103
126
100
145
146
127
96
124
89
125
105
127
89
130
98
99
99
199
76
128
85
110
102
108
82
78
126
78
89
91
139
116
106
106
148
115
82
117
134
192
172
95
95
98
172
100
133
161
108
96
94
148
88
118
81
135
96
119
113
126
156
77
102
105
131
126
108
102
125
127
119
139
105
116
154
67
130
135
145
113
98
174
98
98
54
129
98
139
92
129
109
138
54
96
176
140
98
98
131
78
87
97
54
98
99
172
155
121
123
144
81
102
54
83
154
144
188
83
127
148
102
111
144
130
108
78
90
111
98
108
127
105
116
163
72
96
104
104
83
110
102
130
125
119
124
92
83
103
76
95
140
54
115
105
54
94
109
94
151
123
107
148
102
139
138
112
97
164
116
108
85
120
86
158
108
135
68
108
79
109
77
102
125
113
141
153
105
110
124
116
121
96
126
54
95
107
81
85
102
110
95
96
96
175
225
69
132
108
134
136
105
93
148
113
147
161
121
94
123
115
74
151
97
98
148
68
81
112
138
160
102
107
177
135
95
97
103
139
182
95
79
102
102
126
123
109
146
138
93
110
149
135
133
107
83
116
132
193
159
54
118
76
188
132
116
133
115
143
129
95
154
119
135
78
81
102
98
114
126
140
81
144
91
144
108
140
74
138
107
153
143
54
81
93
102
90
105
132
87
111
96
109
130
115
131
125
133
105
120
102
103
89
103
121
126
148
133
49
181
116
133
108
92
49
144
135
163
105
148
92
97
108
133
128
130
81
129
77
105
105
109
100
108
101
108
113
210
126
100
76
101
114
93
103
149
156
107
141
105
139
137
129
77
95
88
78
148
138
139
85
163
126
122
110
108
102
120
93
115
68
95
108
148
176
102
125
100
141
49
120
98
118
109
154
129
85
104
133
54
83
77
85
125
102
107
218
120
146
116
120
104
105
125
103
105
125
127
150
54
130
61
139
142
71
135
133
54
123
115
122
179
150
74
110
115
130
127
106
126
137
97
102
81
118
83
91
139
132
151
100
107
116
128
187
147
92
108
97
133
90
115
129
67
78
122
127
118
95
118
87
93
161
156
155
95
87
87
120
103
100
155
120
139
74
113
127
103
88
127
91
150
93
157
88
116
83
119
138
125
95
96
101
165
99
94
87
102
147
75
148
159
91
110
157
177
88
129
171
110
140
154
112
87
142
96
141
63
108
105
93
61
105
97
54
95
77
106
113
159
125
95
107
61
106
94
102
91
118
109
94
137
90
117
109
74
179
193
108
108
95
98
104
98
102
94
102
54
142
139
90
100
78
157
98
103
98
86
107
81
177
127
141
93
140
113
106
203
132
172
136
101
135
73
59
161
127
90
100
147
102
121
160
101
102
123
148
59
179
138
87
141
140
76
188
94
149
77
125
103
125
98
85
129
110
90
98
143
90
99
74
129
187
93
108
115
49
81
81
129
111
138
107
180
124
103
153
117
93
179
74
149
115
249
133
87
144
98
96
122
69
103
113
125
93
80
144
163
135
83
137
94
108
115
145
102
115
98
116
176
173
69
97
126
87
114
126
107
103
98
112
98
101
122
125
124
128
144
63
117
145
131
118
144
128
78
68
112
135
54
193
133
106
150
148
72
90
100
122
93
98
113
175
67
170
121
154
120
82
113
54
129
98
117
54
102
137
81
114
87
153
135
188
112
135
97
87
131
93
122
94
170
159
134
98
115
123
154
91
135
80
115
135
91
146
107
77
112
100
97
85
105
148
115
125
98
104
140
80
116
100
162
118
143
108
108
179
98
89
91
91
121
113
87
100
145
76
77
105
148
177
148
82
135
118
81
114
98
144
59
106
83
104
59
92
84
117
130
101
106
142
138
76
49
117
54
98
67
140
165
144
101
107
137
95
103
153
86
139
144
95
97
142
80
138
157
154
110
116
148
127
103
95
105
157
151
144
101
67
87
98
137
145
101
111
119
82
152
80
80
122
133
141
141
200
77
137
131
115
89
89
135
115
148
147
49
146
164
101
96
78
104
61
79
154
156
102
98
123
111
76
94
126
115
102
81
97
54
153
93
76
117
148
143
113
122
102
59
86
130
124
167
147
144
120
115
115
143
85
148
105
102
167
144
129
90
160
121
81
83
138
98
90
146
146
135
113
87
89
114
82
149
125
128
109
158
177
97
98
147
123
95
54
125
103
144
96
145
119
98
63
74
112
87
110
96
77
129
69
145
159
104
128
109
159
139
123
84
82
84
87
92
153
157
156
92
105
91
112
117
103
132
133
93
110
139
129
133
121
130
54
81
113
124
87
101
158
120
94
111
95
82
88
133
129
95
102
54
78
82
105
104
92
103
45
103
118
138
204
133
160
140
139
108
59
117
120
129
121
82
123
103
103
156
149
141
83
130
148
145
134
100
129
137
133
106
80
110
124
120
155
102
96
156
128
133
108
113
128
54
102
113
87
141
124
120
149
118
108
133
100
85
127
93
160
97
153
122
77
138
130
135
200
120
131
102
77
124
90
96
103
111
140
93
111
128
87
101
106
100
49
122
118
156
49
165
97
128
133
143
123
59
80
109
75
142
104
59
73
139
148
160
78
93
98
49
167
112
77
120
127
102
175
82
148
146
95
98
81
133
159
146
140
78
154
177
108
59
79
103
141
95
111
134
113
113
129
105
141
133
90
96
104
102
182
90
98
143
98
104
92
85
121
111
77
164
70
123
126
141
108
98
109
145
128
148
79
118
93
107
137
94
138
101
139
59
98
59
59
144
130
103
140
131
123
113
137
89
98
126
93
59
49
162
108
127
117
143
107
144
129
77
95
95
74
143
87
81
103
67
156
105
115
76
102
144
81
87
107
83
141
173
107
101
127
130
85
117
168
82
91
154
114
136
94
144
159
80
117
134
106
67
132
99
135
200
102
103
142
49
144
113
102
140
138
131
81
130
87
133
68
112
120
98
129
109
143
145
130
106
108
160
117
106
116
83
80
135
141
138
94
144
187
108
180
103
83
59
137
103
124
100
98
74
93
128
78
108
156
180
128
113
184
131
120
129
116
82
91
102
138
154
116
102
155
118
111
144
131
110
59
82
87
93
69
132
138
120
146
74
177
127
143
102
127
49
82
161
95
135
120
103
135
119
95
125
133
95
131
133
123
234
91
103
194
97
115
108
163
155
109
49
93
92
79
108
90
136
61
68
143
130
110
131
154
103
137
103
95
125
79
67
90
147
54
126
98
118
133
144
103
95
108
149
100
91
130
129
141
139
116
108
160
114
145
180
123
144
81
79
106
105
96
107
93
133
90
92
81
67
113
76
135
102
102
160
98
83
109
119
135
117
135
135
98
140
185
78
99
118
104
125
139
85
135
61
86
112
126
95
158
74
96
90
132
146
102
103
128
84
109
91
130
96
151
54
133
158
160
121
145
107
154
107
111
135
143
225
81
144
114
70
102
97
117
192
114
140
81
165
144
85
54
93
90
129
99
129
152
152
49
83
135
130
149
84
74
81
114
157
148
159
76
105
137
87
91
97
103
90
103
137
76
49
91
153
176
54
142
59
123
49
127
54
115
98
90
90
118
116
106
107
99
133
115
108
61
49
149
113
135
145
108
133
107
96
148
117
118
117
136
95
120
161
139
107
140
105
140
101
141
109
54
107
111
82
117
81
124
121
105
122
144
54
156
91
95
103
94
164
67
91
160
54
94
95
184
108
108
81
137
109
119
98
158
113
74
124
84
123
121
86
139
83
112
103
54
125
130
175
49
144
169
137
103
96
94
90
99
116
59
151
131
54
113
148
98
154
101
138
157
166
90
135
157
174
113
143
108
130
93
102
173
74
143
74
124
95
54
84
98
96
89
71
130
166
90
105
90
90
93
117
158
156
84
105
74
82
108
118
106
87
49
77
115
95
133
98
94
147
78
96
133
118
81
54
139
96
141
139
124
145
98
49
138
108
61
99
123
130
132
171
91
149
106
136
106
111
67
141
135
117
125
77
123
147
118
165
82
112
49
95
133
154
118
131
108
69
59
106
123
143
135
76
97
105
154
108
117
87
140
120
104
150
129
81
180
134
74
157
76
104
76
108
102
103
76
129
95
133
147
104
102
85
95
160
139
164
123
135
109
59
75
102
73
94
68
78
90
54
94
97
124
100
133
103
118
86
123
67
108
116
132
146
157
97
82
61
118
162
134
74
98
101
158
95
102
110
75
119
148
90
137
107
157
199
139
147
109
102
139
119
94
126
54
113
192
143
163
130
95
95
70
127
92
106
103
70
132
105
148
80
82
119
100
65
128
74
81
69
127
95
134
101
98
139
120
151
73
139
96
85
155
104
113
135
132
91
102
108
81
73
110
164
127
104
112
118
144
104
103
115
158
118
76
105
78
105
170
102
126
107
77
110
113
95
131
108
146
127
107
91
74
124
157
88
140
184
118
104
93
141
130
146
98
95
54
91
97
128
160
118
80
132
132
125
133
87
121
113
103
104
156
130
150
170
111
118
85
163
99
137
96
135
91
144
78
145
117
140
136
142
163
123
144
140
200
136
124
112
151
78
133
109
132
95
81
81
165
86
121
93
145
49
133
90
125
102
212
108
164
131
148
169
59
137
127
134
124
54
135
103
133
113
93
105
107
153
54
97
103
135
123
129
125
82
98
54
79
92
123
112
89
88
77
177
49
102
68
122
54
88
81
95
139
87
108
131
91
140
122
208
54
168
103
54
161
113
54
90
118
82
127
104
96
95
128
143
89
81
124
78
134
81
102
90
128
177
119
49
128
114
107
100
105
112
110
134
111
140
96
131
81
95
85
178
122
115
139
114
95
95
96
191
100
98
127
122
65
120
106
124
149
124
128
116
101
113
104
154
82
233
127
107
76
100
114
133
81
79
54
136
134
129
129
118
84
93
61
134
74
126
143
177
103
127
93
125
65
54
116
127
137
102
180
102
125
95
132
131
74
143
93
87
139
89
128
140
98
112
95
103
113
107
127
162
173
106
155
92
54
145
135
106
107
101
125
177
98
139
127
98
132
95
144
98
120
182
156
108
87
113
143
167
102
106
127
135
106
103
142
95
122
123
98
67
123
54
190
77
118
101
131
102
113
160
133
115
95
118
107
102
119
129
96
95
95
67
126
101
105
107
137
102
128
157
106
128
124
110
108
117
54
139
128
164
103
76
81
103
140
82
49
108
172
100
152
191
67
131
83
113
108
68
134
93
108
135
171
127
54
114
90
79
76
54
128
132
89
115
135
133
132
110
108
88
102
68
128
111
125
163
134
98
91
149
134
137
128
85
133
93
186
153
149
103
117
116
136
128
74
115
189
85
131
127
88
106
87
107
162
115
129
151
144
111
114
119
148
54
129
105
158
119
149
113
77
113
93
157
74
95
99
93
45
144
122
144
108
89
97
115
102
111
122
156
125
94
74
82
91
146
69
98
113
113
127
59
74
138
122
104
138
157
132
54
78
132
159
102
148
104
101
122
95
132
133
100
102
147
105
141
133
159
180
83
159
169
77
125
67
165
128
148
118
143
127
133
149
85
116
173
97
181
94
84
170
146
131
54
99
129
143
147
137
98
54
90
87
108
98
54
102
106
144
145
115
109
106
130
54
94
112
128
142
116
59
102
54
120
105
74
108
161
83
106
144
83
113
129
129
188
129
102
81
112
128
113
132
67
144
148
74
155
106
116
131
110
117
126
115
167
49
160
154
97
126
90
197
118
122
128
151
128
164
156
103
90
101
147
112
126
98
89
137
167
108
108
85
107
108
105
104
103
126
132
128
95
87
98
90
103
130
179
141
113
94
127
129
133
125
99
143
49
112
127
136
54
67
85
133
126
91
54
115
151
113
110
77
89
103
149
138
123
115
81
116
98
102
154
93
144
149
165
158
156
102
118
54
158
127
125
117
108
102
119
95
128
144
153
135
49
135
107
98
105
179
117
163
100
77
84
81
108
137
74
117
111
102
143
113
212
122
99
134
54
128
90
99
127
152
104
134
114
101
107
95
143
102
116
128
133
145
125
108
135
49
81
102
177
108
131
119
122
193
91
167
146
103
97
101
111
123
83
129
142
78
141
121
125
117
165
113
96
110
120
114
144
103
105
91
114
92
115
138
90
159
127
125
151
121
65
81
49
92
139
74
91
59
117
85
179
132
115
150
122
87
159
125
74
127
131
124
95
126
93
110
84
95
146
108
140
54
54
93
133
163
131
172
101
123
59
133
103
131
158
94
82
155
128
54
154
107
114
106
144
54
131
49
78
118
143
91
137
177
151
133
108
126
76
123
108
98
117
106
108
81
74
91
149
111
161
107
143
88
93
94
90
207
130
141
108
105
158
119
116
170
105
151
81
119
98
114
126
122
87
120
100
161
119
116
148
161
146
150
193
158
125
204
179
85
134
158
94
103
133
108
122
107
92
91
95
144
98
101
147
148
97
129
54
129
54
94
131
76
215
102
108
95
76
125
115
112
98
150
158
96
105
99
139
129
149
141
125
59
118
77
123
111
234
77
133
177
180
93
145
127
144
93
148
123
148
108
151
135
145
67
179
134
200
59
76
172
105
130
212
98
114
59
139
165
54
114
117
107
146
169
147
102
118
125
108
76
143
96
132
144
132
139
108
135
129
49
130
96
144
95
54
150
167
54
187
94
81
177
102
74
115
156
142
94
149
148
125
112
108
187
131
111
96
118
142
127
133
81
105
87
108
107
138
99
91
120
113
85
112
152
106
185
117
135
155
67
118
141
156
113
168
54
112
117
138
102
112
134
86
153
128
141
109
180
120
177
77
138
142
54
85
151
110
80
115
108
143
77
91
76
131
155
137
77
54
115
147
145
185
115
177
109
97
98
68
80
102
54
102
76
147
123
137
165
122
128
119
113
147
128
90
72
84
127
92
92
169
68
102
138
157
45
95
99
129
93
107
83
127
107
119
85
118
96
111
148
91
147
134
128
49
62
54
89
104
146
129
146
102
112
82
138
127
112
82
108
110
90
140
137
129
144
97
78
104
133
160
102
99
90
119
95
94
116
118
128
138
139
86
134
98
73
134
130
76
49
87
107
104
124
102
76
103
106
149
91
95
114
67
108
129
112
114
165
95
107
140
102
135
117
106
112
138
154
145
120
123
146
110
121
90
156
87
76
131
119
142
59
92
171
93
129
154
87
149
140
117
132
95
78
145
80
116
145
108
106
87
83
162
123
54
106
104
84
140
107
165
78
59
107
92
101
100
92
142
105
177
137
122
138
76
105
97
120
85
160
118
143
108
69
144
102
143
108
124
103
119
135
113
87
54
115
81
153
170
120
151
138
87
91
122
150
113
144
82
125
135
131
168
97
140
113
156
123
115
106
161
109
151
89
118
96
81
125
116
122
105
131
128
83
148
95
82
97
96
128
81
108
148
113
161
115
167
97
142
108
92
155
131
85
212
115
49
137
128
110
95
127
128
109
132
132
83
173
156
105
140
98
112
122
85
95
158
91
155
108
146
137
118
90
108
90
103
67
109
145
103
133
102
118
102
157
128
67
142
93
143
177
107
104
54
170
160
81
135
128
106
84
118
118
106
149
142
135
190
139
95
127
133
69
129
164
124
102
155
131
125
98
89
96
76
54
125
104
96
128
54
158
115
147
148
114
140
82
225
146
108
147
171
102
54
91
117
69
98
103
111
162
101
115
81
80
119
133
116
74
54
132
123
102
170
170
102
122
74
113
133
81
123
183
113
102
93
95
129
108
88
106
148
77
90
140
115
77
101
118
62
61
118
130
54
138
116
135
131
95
167
165
108
110
130
77
90
106
76
98
82
117
109
81
141
140
54
100
74
143
127
128
128
134
159
77
105
137
69
87
143
103
134
97
78
113
112
117
129
116
87
170
78
85
105
144
68
178
176
112
106
140
165
98
150
95
145
96
133
85
146
103
113
141
112
105
59
109
54
61
118
128
141
98
74
139
132
126
111
68
135
81
112
83
115
149
87
138
113
120
143
124
145
154
135
102
115
101
133
113
128
105
129
102
170
54
78
102
49
100
71
146
120
108
124
123
126
162
99
120
153
103
139
96
133
119
87
144
132
200
179
94
90
154
108
100
177
125
83
77
68
76
81
103
145
96
110
87
67
103
125
140
82
108
49
87
148
118
131
132
102
145
130
104
106
154
135
147
102
106
102
98
105
177
81
125
59
108
124
105
140
133
137
67
95
119
81
87
83
127
103
59
144
177
54
54
98
74
102
113
108
98
95
114
78
74
81
123
77
108
116
108
106
138
117
143
132
107
142
112
144
142
166
87
127
149
129
101
81
108
103
84
93
158
73
176
117
105
158
104
108
98
126
87
114
149
85
147
93
102
108
54
90
74
81
157
120
127
135
113
149
131
102
170
99
108
116
117
121
139
90
61
82
147
149
59
159
116
115
134
132
107
98
67
82
95
126
102
150
145
111
101
77
93
102
114
101
133
105
109
142
147
108
113
125
67
110
90
89
74
95
146
153
59
142
152
54
73
61
134
87
88
122
108
159
93
105
126
113
77
126
106
101
98
108
100
117
146
90
154
116
143
177
156
54
102
133
96
108
108
114
167
112
59
108
81
113
129
124
90
132
112
137
76
144
102
125
116
108
143
144
107
112
77
179
108
165
133
81
129
125
105
54
120
170
180
155
67
165
138
143
59
168
130
219
158
108
157
120
108
131
110
109
140
139
123
107
177
148
174
147
133
81
80
130
110
83
154
104
54
137
113
98
129
133
140
124
128
98
102
98
108
149
136
143
54
148
172
119
137
141
67
102
49
143
129
104
100
69
162
87
74
102
141
108
89
83
177
199
96
113
143
92
100
129
92
95
108
115
49
112
125
95
121
45
113
69
102
109
95
106
119
124
121
104
102
160
134
113
145
83
163
171
118
133
131
106
153
195
88
137
82
145
182
77
134
107
113
87
148
98
150
87
143
129
137
125
54
98
127
101
54
116
54
130
133
92
122
54
108
102
99
95
161
91
125
145
141
106
142
49
118
93
105
124
108
115
110
116
116
91
112
102
82
93
93
76
124
186
102
104
108
127
96
99
108
168
68
121
165
142
115
141
135
176
144
100
140
141
145
80
95
127
125
103
98
99
118
82
77
150
89
127
117
101
104
138
102
88
120
90
122
153
125
156
144
107
116
95
148
87
108
74
189
178
139
90
104
113
90
103
68
135
95
81
103
54
72
131
98
116
118
167
90
59
54
54
54
100
81
80
68
112
108
97
87
113
83
126
103
103
108
102
67
107
148
116
162
136
108
107
141
82
49
109
135
200
140
74
148
125
143
113
114
96
158
69
87
137
87
133
128
131
108
128
161
146
107
137
106
98
148
123
87
87
112
90
87
134
113
148
95
148
140
133
105
95
113
139
93
112
112
161
178
197
132
97
127
109
113
151
109
105
104
59
54
144
127
100
143
93
149
149
90
145
113
93
59
108
110
123
187
92
82
126
96
78
100
127
63
131
103
120
107
133
68
133
159
135
143
98
92
74
159
133
95
113
137
149
90
130
77
103
167
108
117
137
95
108
166
135
170
95
129
78
128
106
105
101
113
124
122
87
80
90
180
79
131
121
115
127
106
114
139
102
98
104
114
133
107
98
105
198
108
108
93
175
168
118
91
139
101
112
82
114
123
132
75
95
104
135
113
104
114
106
144
92
73
129
99
118
117
74
143
157
145
79
142
77
84
105
128
139
87
83
113
99
119
95
68
102
115
85
136
164
132
102
135
140
97
177
109
176
118
148
110
95
80
172
94
132
133
158
167
139
148
103
127
144
118
122
126
168
135
133
96
115
150
89
90
117
125
81
128
133
103
134
148
148
104
103
114
130
108
102
133
87
86
178
113
158
169
149
108
91
115
81
133
120
108
154
129
49
54
54
123
95
118
142
190
150
98
49
109
59
118
96
54
122
87
161
106
93
92
86
140
54
132
132
97
130
81
67
103
110
62
138
142
160
162
117
144
121
93
98
158
105
116
49
159
90
130
107
135
83
156
178
105
118
156
125
155
87
125
154
123
90
90
111
129
130
105
69
106
93
123
78
90
143
96
124
130
79
102
119
135
143
54
110
82
102
103
145
74
143
107
105
106
54
83
125
125
93
111
148
132
165
118
98
102
117
114
133
95
104
61
98
157
97
136
90
131
108
114
106
154
127
133
100
77
122
139
150
144
78
125
120
102
108
90
150
177
98
139
113
128
91
49
105
156
132
128
122
112
106
98
108
74
104
129
163
81
97
89
150
114
125
75
119
82
74
162
49
120
108
133
91
134
95
144
133
158
98
151
155
96
147
91
163
113
122
76
126
151
145
143
143
125
169
129
158
97
143
130
110
87
120
80
115
87
156
120
118
155
77
120
148
131
98
167
131
179
101
118
200
147
118
103
132
120
108
125
116
109
84
81
49
115
165
54
155
78
112
139
119
127
101
123
143
108
119
99
101
137
104
124
69
134
102
148
116
108
109
95
108
116
133
81
78
92
138
124
95
137
136
106
85
102
128
108
137
90
95
158
92
148
126
92
113
98
134
139
111
101
117
138
186
194
99
83
101
164
49
105
139
150
128
110
95
95
97
147
74
131
100
120
176
93
120
127
106
139
121
95
133
103
133
74
102
135
59
62
118
119
142
101
124
95
77
61
92
143
86
102
102
120
122
140
88
107
123
138
108
49
74
59
82
103
131
139
74
76
102
131
99
147
81
93
153
125
49
158
114
91
163
99
123
49
138
144
90
117
116
149
163
140
122
80
54
79
129
122
189
135
140
78
135
123
154
138
104
54
138
128
54
85
105
134
143
108
196
132
139
54
91
132
125
144
134
49
91
97
102
125
164
125
117
131
90
120
108
130
76
141
158
81
132
139
113
76
106
106
103
102
111
112
131
129
149
103
148
157
165
98
65
100
125
108
105
125
130
91
99
131
126
95
112
116
133
167
108
96
108
108
172
138
90
129
98
143
131
98
83
133
122
125
124
74
105
135
121
163
106
82
152
108
121
206
128
113
79
108
147
83
127
170
124
90
49
135
108
96
77
104
105
95
127
87
120
98
113
103
110
95
172
132
113
112
131
99
100
76
113
54
138
150
141
97
95
93
117
100
158
121
82
81
85
145
49
143
157
113
101
134
96
135
67
146
115
109
128
94
111
173
125
103
176
92
101
140
136
49
115
116
128
93
150
59
110
112
120
149
108
120
113
116
126
112
118
134
163
125
101
80
94
142
65
135
121
119
98
105
96
108
107
123
188
91
123
73
83
115
130
72
108
143
156
61
135
101
108
106
127
103
133
67
120
76
148
159
73
133
137
89
89
137
163
134
150
105
110
140
78
115
143
96
103
133
126
106
124
81
119
186
177
130
142
49
127
143
121
145
152
92
186
148
122
111
54
77
132
143
135
93
87
76
95
103
106
123
104
99
117
102
145
118
134
82
144
165
89
127
87
139
128
106
120
159
138
118
117
123
103
144
93
131
103
111
102
103
69
87
93
129
98
103
102
139
129
76
102
95
143
180
117
113
68
164
59
134
124
132
128
128
146
135
103
105
125
137
93
141
146
159
144
101
142
78
88
100
101
125
123
142
144
123
125
103
102
157
106
133
167
116
118
168
158
143
81
120
94
84
123
179
127
126
137
122
94
67
74
117
155
85
95
100
139
148
105
154
137
115
78
103
81
97
54
76
146
127
49
68
80
130
89
120
109
139
131
108
160
54
92
165
109
145
54
81
87
59
128
147
118
54
106
118
92
98
124
92
117
87
83
130
134
123
115
170
54
127
114
179
108
176
151
133
98
170
159
59
105
86
118
107
98
77
106
107
108
54
126
85
75
59
99
150
93
98
123
82
100
121
83
191
85
150
102
158
54
128
79
130
59
143
110
107
109
145
54
49
150
67
92
132
120
108
109
95
140
98
130
90
102
139
139
131
94
49
108
125
102
125
101
101
99
108
162
138
180
168
165
112
90
42
122
121
125
95
67
100
103
116
115
126
103
102
137
103
116
100
83
91
141
102
93
79
116
74
107
148
142
129
144
87
177
135
126
106
164
141
85
94
124
105
126
103
166
112
119
92
140
54
167
133
152
130
146
101
129
139
180
78
172
125
127
123
130
54
127
68
127
141
134
106
114
119
115
117
54
93
106
113
107
100
107
54
81
103
132
74
143
205
108
87
146
169
103
85
128
87
140
90
136
108
107
105
114
100
164
107
54
145
132
132
97
103
105
100
109
131
108
194
158
116
155
116
115
95
114
105
97
93
131
83
124
99
129
54
105
119
163
139
119
108
120
109
113
95
100
143
98
115
144
165
102
120
160
105
122
127
141
143
121
87
105
107
54
108
147
192
177
152
108
118
122
83
122
115
130
122
130
170
123
85
161
108
108
153
85
61
54
128
71
138
74
78
113
143
131
174
108
125
132
96
120
112
153
102
81
158
131
108
115
118
174
109
119
129
98
95
49
126
90
119
194
108
149
177
96
159
54
123
87
156
112
69
142
160
80
89
77
154
118
119
90
102
113
61
73
75
140
116
108
185
105
144
119
95
59
65
109
148
110
133
107
120
59
106
98
110
114
115
117
75
96
85
100
104
200
82
95
143
170
188
76
93
129
125
115
150
81
102
96
113
148
77
145
153
59
113
125
54
188
59
188
115
106
151
96
54
83
122
135
100
124
116
106
121
134
137
81
110
68
191
83
109
108
113
105
131
155
159
118
54
102
101
119
123
93
114
102
96
136
81
68
92
133
91
102
120
111
145
59
120
108
96
100
125
169
129
112
151
122
132
87
126
129
136
140
122
102
142
117
119
122
88
78
77
121
183
128
116
98
122
103
96
119
123
142
87
82
115
90
145
100
186
114
90
147
126
49
54
125
95
133
99
77
120
162
124
143
138
101
83
98
155
107
128
120
102
105
160
146
115
138
98
127
104
147
176
98
104
54
143
104
144
82
59
105
124
177
125
186
139
107
119
133
116
158
54
204
144
165
118
94
127
130
103
100
131
132
119
93
131
61
102
130
107
102
81
95
59
114
91
129
125
98
89
167
102
98
77
104
135
101
101
99
120
105
54
115
170
120
95
139
102
186
121
102
117
120
172
106
83
129
121
129
120
108
129
120
97
107
83
125
105
102
59
116
118
102
85
123
129
161
143
102
49
117
158
140
156
115
179
90
153
96
111
69
144
148
114
121
135
119
141
121
118
94
138
81
80
110
101
42
120
143
105
122
137
160
104
140
115
98
118
92
135
140
157
81
123
106
54
93
127
116
132
113
138
133
128
146
113
114
125
148
140
54
158
92
116
159
140
78
98
75
98
117
133
74
97
148
139
121
112
108
121
111
113
95
119
77
85
139
120
81
49
146
92
102
133
143
102
113
141
137
139
113
102
98
118
132
143
166
155
144
122
102
103
111
101
95
142
115
172
95
118
94
107
74
90
90
100
126
87
99
98
78
84
91
49
116
92
116
153
162
103
54
78
90
144
54
82
87
54
93
113
101
133
106
121
101
78
125
74
115
132
134
113
102
141
146
119
158
54
61
77
143
140
153
131
148
98
74
96
96
108
86
107
106
145
87
54
115
122
131
108
101
115
157
98
77
144
68
102
167
197
145
103
147
92
107
61
148
149
77
136
144
110
77
118
139
103
83
78
125
74
138
74
96
149
148
105
128
168
108
102
148
90
143
113
93
83
95
123
177
87
54
150
128
119
81
54
117
133
82
54
132
145
103
128
154
93
95
110
106
129
105
108
98
151
105
54
91
135
102
128
104
139
115
130
101
148
158
127
108
134
87
125
136
108
109
133
115
49
140
126
81
86
143
123
167
111
89
133
140
120
127
150
97
108
121
97
91
102
148
98
106
127
148
116
143
138
77
93
144
82
87
95
137
134
157
175
135
132
111
165
93
102
101
54
92
125
132
113
100
148
105
146
128
92
102
135
61
112
137
129
93
98
78
139
135
158
107
125
103
130
74
49
142
96
115
110
131
77
54
82
113
105
103
156
134
148
95
107
99
78
125
120
140
154
86
191
86
144
106
107
92
95
112
127
135
119
78
143
85
118
122
225
114
125
115
144
133
137
81
122
161
103
78
149
77
118
94
108
152
113
185
103
168
77
98
122
88
76
102
72
179
130
80
95
146
98
105
89
76
107
128
153
54
198
123
122
104
95
71
109
105
107
155
124
144
90
62
117
149
122
104
125
49
118
199
125
187
49
133
81
104
158
135
146
113
84
119
129
54
153
89
112
162
123
77
156
54
96
96
130
117
82
142
129
81
108
105
110
135
121
54
117
95
128
111
108
93
140
95
117
118
90
90
125
67
54
133
125
89
74
103
104
118
102
45
122
135
59
82
177
113
54
139
145
172
108
157
170
109
105
100
105
135
147
179
98
103
114
74
95
141
90
140
128
175
165
113
98
146
91
107
136
82
124
92
105
160
122
146
179
112
125
102
114
124
109
172
103
96
124
109
169
85
137
105
99
90
131
59
102
132
147
126
102
114
168
106
105
93
133
85
103
144
115
123
102
170
127
109
128
105
111
128
148
138
122
137
87
159
126
141
129
87
135
93
98
92
180
137
111
112
114
54
139
161
180
148
113
138
49
169
95
87
134
140
87
102
87
108
117
127
82
125
117
85
103
138
54
105
59
161
92
77
104
74
140
92
83
189
144
76
82
69
106
153
113
152
82
120
105
116
98
82
118
133
129
87
120
81
139
124
105
85
109
115
132
118
145
138
119
143
154
175
138
93
131
125
145
103
121
80
123
68
118
65
116
123
146
135
180
105
146
109
150
74
128
103
125
151
108
100
116
116
95
104
133
78
105
127
95
98
162
161
154
120
108
135
73
49
116
141
134
148
105
142
103
173
91
59
125
108
95
121
98
94
74
141
98
108
96
90
93
133
76
103
131
84
149
143
158
112
96
102
195
127
200
137
132
92
93
177
117
186
140
114
97
59
99
85
146
76
111
147
105
162
113
120
103
83
77
59
59
54
153
130
112
116
113
147
177
83
103
103
133
102
108
92
102
108
122
103
49
130
146
108
120
122
148
89
200
128
107
107
138
120
116
105
119
109
134
112
116
129
103
140
95
90
127
102
160
131
115
121
113
125
143
141
125
54
101
122
96
102
74
109
95
96
98
93
124
106
145
114
132
123
138
133
121
96
91
114
108
133
122
76
127
173
95
107
99
141
82
77
132
124
140
144
114
131
45
105
54
88
101
107
54
124
159
139
132
98
95
121
102
127
129
152
153
76
128
123
180
54
143
151
95
122
117
147
81
77
108
123
80
130
82
83
61
54
90
114
120
122
81
135
132
110
121
109
133
78
152
101
78
87
87
98
104
98
103
103
114
109
106
106
113
105
54
90
61
105
128
122
61
145
77
54
153
102
83
135
143
130
105
117
54
177
97
105
77
93
89
135
108
105
103
87
59
97
104
119
69
91
117
115
81
131
103
146
122
151
95
118
124
96
49
123
91
109
156
101
136
95
132
93
104
139
112
85
72
172
87
158
153
125
145
78
99
163
182
130
146
154
49
141
129
124
113
144
118
122
54
106
73
90
92
108
95
74
136
98
108
89
82
148
130
127
103
113
125
100
132
87
108
54
90
162
86
131
177
123
82
82
115
129
153
150
105
143
97
81
154
167
158
59
133
149
125
137
100
179
54
59
141
95
177
54
82
91
79
141
145
143
100
123
108
103
146
85
152
126
121
170
118
76
114
84
100
118
150
84
148
107
121
118
145
101
128
113
120
108
90
81
108
95
101
118
54
148
81
124
87
125
76
95
102
148
122
104
95
162
90
95
148
123
158
95
168
118
89
89
125
114
133
110
137
107
134
128
120
111
67
104
97
134
99
136
54
88
140
85
77
106
177
151
101
134
175
119
95
145
131
163
159
81
74
133
119
101
134
103
159
134
118
93
149
126
92
129
132
111
125
135
148
131
90
98
77
133
83
59
113
89
99
95
95
103
142
167
103
112
104
112
191
120
142
110
133
114
142
75
107
67
115
130
127
103
67
54
125
105
128
135
128
123
81
115
105
76
120
140
139
131
103
59
74
134
88
143
121
197
154
102
61
152
113
104
168
104
97
234
146
130
145
106
124
133
145
124
102
144
127
95
140
101
128
119
105
133
81
132
127
119
95
117
139
93
186
145
103
112
112
85
85
150
102
111
76
95
102
133
102
59
108
81
54
158
119
105
109
74
98
97
100
126
143
101
103
148
112
87
67
105
142
83
81
104
81
91
145
124
115
102
82
78
87
106
96
49
78
67
117
71
109
136
111
130
100
151
108
163
134
113
101
113
133
130
152
179
78
125
113
107
126
140
135
114
90
82
93
109
107
120
148
95
93
127
93
124
54
114
158
100
157
169
145
68
108
107
146
108
122
237
80
82
95
113
95
109
87
179
49
96
160
108
102
85
160
95
54
81
121
144
95
125
113
90
67
168
100
88
81
131
144
108
98
130
147
87
104
54
108
138
77
139
87
124
93
81
113
214
87
167
111
135
141
143
82
137
105
72
95
98
95
134
81
49
129
87
108
104
105
132
89
86
141
79
102
139
142
155
93
144
91
81
140
103
108
96
91
145
120
77
76
54
125
72
49
93
150
112
80
168
100
113
78
95
111
102
136
77
132
148
59
161
197
102
158
143
170
117
119
117
49
90
81
135
102
125
145
135
134
81
162
113
76
101
147
83
54
92
106
160
100
108
140
92
98
145
75
42
158
153
105
125
123
113
199
81
103
61
95
106
54
115
54
122
92
102
108
177
96
144
107
87
96
120
123
168
74
102
140
96
114
134
101
189
156
104
108
99
103
80
118
108
104
89
154
96
78
146
84
108
115
131
126
54
97
103
49
127
128
199
74
105
83
128
134
121
167
69
131
106
103
153
137
186
150
57
105
110
128
122
108
155
68
81
90
150
67
95
120
95
82
94
85
93
106
102
74
99
105
118
98
91
177
140
76
92
127
133
82
95
69
102
107
155
129
138
54
142
107
102
99
125
177
142
145
129
103
108
114
105
82
103
103
110
129
139
171
105
121
105
156
164
166
89
76
111
92
143
139
82
54
170
191
112
108
100
118
107
112
174
131
131
49
112
92
100
115
77
142
114
49
135
79
123
103
116
115
107
123
132
123
94
118
129
94
100
108
134
108
117
54
98
132
118
200
133
112
76
130
98
133
177
95
102
108
158
104
117
54
162
135
108
88
113
95
102
129
125
125
127
97
121
95
160
111
146
117
95
101
98
160
126
49
131
105
164
166
132
124
117
135
110
112
102
135
135
117
137
124
113
54
156
102
105
166
101
142
125
91
128
144
96
157
142
81
67
108
102
170
54
127
80
95
106
159
114
65
137
90
158
108
124
120
146
109
96
125
105
133
95
161
114
102
98
131
115
141
90
127
140
140
88
49
101
151
149
144
118
89
90
126
140
139
74
122
95
128
108
94
130
89
125
84
89
94
150
130
146
133
142
142
128
110
126
175
180
103
78
93
103
131
78
124
164
101
139
115
106
120
104
105
108
147
116
137
149
87
134
83
95
49
129
129
133
97
103
158
85
78
200
134
74
103
126
95
122
102
100
82
102
77
92
126
83
118
108
146
76
136
122
133
184
85
98
49
114
106
143
129
117
54
93
77
127
95
73
92
102
84
140
106
106
128
103
124
109
114
131
85
108
125
106
144
98
171
116
144
94
161
106
98
119
98
74
158
103
79
135
180
114
122
77
72
149
117
130
182
124
113
138
129
142
91
112
98
148
96
162
164
81
146
111
99
84
144
102
158
121
114
127
79
98
95
126
93
140
126
95
112
129
182
107
45
143
120
106
94
92
106
102
156
145
91
103
125
98
95
142
107
97
109
148
127
109
180
49
125
140
125
98
107
135
74
54
96
54
106
139
79
124
150
127
102
128
147
89
74
89
81
141
102
109
77
138
127
136
108
144
146
82
121
116
83
152
67
93
116
152
143
49
120
157
131
118
130
54
90
99
108
117
106
76
123
81
81
116
105
152
134
85
147
149
135
74
96
144
83
132
134
123
67
98
68
49
114
78
129
104
123
49
132
133
100
134
172
117
138
177
147
178
114
140
132
98
116
159
94
137
94
167
135
158
81
133
117
103
77
110
110
76
81
150
82
169
76
81
127
140
83
77
54
45
54
73
118
107
74
95
112
151
140
95
114
124
106
74
139
49
156
104
108
205
166
96
127
174
78
97
149
108
128
143
111
127
122
100
105
134
98
106
132
76
137
152
108
54
105
98
128
134
77
110
83
119
125
77
69
168
116
150
54
42
102
139
92
160
81
161
145
113
144
113
116
200
116
135
110
131
107
94
76
135
139
68
144
61
128
109
157
179
81
123
94
95
92
91
95
94
97
130
133
145
102
139
134
127
107
107
117
216
122
95
152
150
49
112
92
122
128
144
81
103
112
130
134
102
87
125
172
114
126
54
160
168
152
105
88
81
102
122
126
155
136
150
111
104
161
158
138
79
101
180
108
102
120
98
111
148
103
54
94
70
143
69
95
151
134
102
145
181
148
90
123
136
169
130
149
95
110
179
108
95
119
150
88
148
161
93
132
146
80
103
80
81
54
103
173
129
121
145
104
96
119
95
106
120
76
87
98
74
83
89
141
108
86
131
65
141
76
117
115
116
117
110
133
123
122
123
84
163
113
94
135
54
70
87
151
107
146
140
116
88
108
166
130
148
129
161
208
107
126
158
168
111
115
128
104
106
95
144
131
141
85
102
127
122
106
54
134
67
131
133
129
145
124
103
122
127
108
125
105
54
108
128
110
92
106
141
116
93
129
144
81
135
107
98
107
134
130
59
151
97
141
142
137
99
120
83
109
105
108
78
131
148
127
192
119
144
122
83
97
127
127
78
107
136
118
54
90
73
115
54
185
125
118
141
125
117
103
91
129
126
108
108
113
98
139
54
80
127
101
93
129
133
129
110
123
93
113
138
106
54
84
127
115
133
90
153
148
112
78
105
121
163
69
102
121
117
80
54
167
136
200
49
54
91
124
162
104
134
119
101
151
123
81
139
81
90
98
67
173
117
103
150
54
116
137
49
145
54
103
112
130
83
173
92
123
109
101
49
135
61
129
148
85
135
99
106
89
137
108
111
133
110
110
106
117
102
102
96
83
108
119
49
127
148
180
90
112
95
139
136
96
137
131
81
143
115
142
116
109
106
54
140
125
172
77
125
142
127
145
142
93
118
140
147
122
108
102
171
108
150
105
170
95
86
139
99
135
120
135
107
77
200
102
107
101
90
74
90
54
110
108
103
106
126
186
83
76
100
118
111
67
108
104
69
81
125
95
118
141
106
209
104
163
67
105
92
99
108
153
122
136
69
49
118
54
90
148
137
99
154
74
125
141
157
107
120
108
155
131
67
85
143
103
140
150
142
142
49
56
123
85
98
114
133
108
105
164
141
141
132
97
124
124
59
146
117
113
141
127
167
95
81
132
119
120
102
103
124
108
107
131
143
117
77
69
159
54
76
87
155
54
120
96
118
131
113
117
54
122
111
81
115
86
93
105
154
54
82
141
108
105
84
78
102
54
113
118
110
90
82
69
98
158
141
97
135
114
105
103
115
49
103
83
75
133
113
145
81
109
54
167
164
96
97
135
125
137
97
197
148
140
161
108
127
98
128
104
81
102
146
96
78
101
161
108
73
89
142
82
140
105
107
160
90
105
123
125
145
93
49
85
108
133
54
124
113
95
121
65
98
133
90
104
159
123
94
148
137
96
131
161
162
104
131
110
130
96
110
128
117
54
82
116
81
104
101
103
103
177
87
79
147
173
128
96
82
113
104
108
106
117
113
98
90
81
135
110
102
109
111
163
132
54
145
147
109
127
158
156
77
98
116
79
133
104
106
158
95
131
194
169
117
79
108
94
125
134
202
122
122
153
49
101
123
104
143
123
123
163
54
160
143
144
149
108
108
121
152
102
59
99
102
115
111
94
104
144
101
109
116
139
97
49
168
92
113
54
159
93
190
103
115
95
97
83
122
128
97
177
97
103
49
125
119
109
177
132
98
71
102
124
150
157
95
140
106
157
149
112
92
131
91
125
108
74
103
78
129
101
54
74
140
84
147
113
148
154
157
77
108
177
101
117
87
135
68
98
112
134
59
77
184
93
129
126
93
54
91
120
120
140
87
149
138
107
95
128
138
128
95
106
105
85
102
115
101
115
92
79
158
95
122
100
85
90
49
116
99
93
67
95
74
125
119
112
100
88
128
108
77
115
105
133
123
185
145
128
125
82
138
121
109
143
94
135
117
105
94
149
148
95
99
127
110
79
100
103
108
129
59
98
122
188
90
101
131
103
125
49
90
124
76
126
113
59
170
132
101
93
98
114
133
142
146
131
144
141
156
103
61
130
90
180
122
134
123
136
106
102
150
113
135
177
134
112
89
110
102
89
114
110
103
49
102
108
103
82
125
133
95
67
119
202
123
152
209
123
103
61
101
126
92
145
128
193
121
67
102
108
96
59
118
90
143
80
82
121
125
125
135
125
118
98
83
82
97
127
93
103
128
116
82
85
114
107
81
157
108
106
54
100
119
103
123
95
133
148
104
81
95
109
157
146
110
98
115
49
87
98
108
145
102
95
124
76
158
93
92
99
118
111
129
87
67
108
78
97
104
121
54
72
83
128
125
134
111
108
90
145
98
98
126
151
99
140
112
116
142
139
110
101
154
127
134
117
149
67
121
109
125
130
102
174
159
90
76
149
137
167
77
142
90
107
126
98
108
117
168
186
91
187
119
105
95
54
180
109
115
181
138
139
111
106
144
108
125
69
92
54
108
124
81
102
138
91
123
121
161
49
81
108
80
102
90
149
112
128
154
100
90
83
110
93
81
127
153
123
148
141
128
120
70
125
93
89
115
172
93
85
140
89
109
143
135
73
118
105
184
122
95
100
49
125
175
89
110
122
120
133
102
54
106
108
143
78
133
129
123
82
106
152
87
95
148
150
123
146
149
165
100
129
122
119
106
116
144
117
116
77
148
130
83
103
81
144
67
123
101
100
145
140
193
128
168
93
95
74
67
67
82
115
77
101
135
101
128
111
161
120
102
49
138
99
148
125
117
127
105
111
76
84
123
150
109
94
124
180
182
92
132
127
136
218
169
105
74
106
73
105
105
158
87
123
127
143
126
106
106
131
114
98
154
96
103
87
169
112
170
114
81
78
135
95
117
74
45
114
127
108
102
110
108
121
110
88
173
54
127
99
121
92
161
108
117
131
89
97
129
97
137
95
98
152
122
165
113
147
124
123
91
112
91
152
177
102
74
108
111
125
49
125
127
131
87
113
125
110
54
106
124
140
111
123
87
103
145
107
141
102
141
74
148
103
93
105
98
100
153
144
107
105
98
92
76
158
100
102
125
137
81
103
126
77
78
108
102
158
104
118
182
108
148
143
144
175
131
164
132
57
129
108
121
132
54
83
134
69
90
111
73
133
125
83
166
98
95
122
101
95
151
101
151
173
87
191
122
76
127
103
103
100
114
129
158
93
108
99
134
117
92
141
109
90
78
91
142
144
113
122
54
98
142
96
119
99
164
145
95
54
123
108
126
121
59
54
77
135
90
133
108
93
93
144
122
113
126
105
144
93
88
148
74
89
125
114
110
135
49
120
95
148
93
107
77
108
131
73
93
194
158
102
54
164
109
119
113
131
118
120
90
91
119
108
108
91
124
77
80
115
163
155
120
100
94
104
119
130
88
129
91
104
119
84
54
113
108
76
148
92
93
106
101
125
143
110
127
106
77
124
68
155
143
81
144
54
112
81
102
113
121
148
108
96
134
164
78
161
116
105
107
117
98
102
54
133
77
82
81
149
119
79
156
98
133
131
139
135
158
132
78
107
124
117
155
153
54
109
126
159
91
93
114
54
151
76
92
90
144
88
134
95
139
200
108
123
103
118
101
119
156
110
140
78
150
154
126
102
149
97
127
131
142
98
96
110
102
106
92
178
158
99
102
139
124
103
73
128
59
108
110
115
115
115
95
129
67
113
165
169
82
106
146
102
173
140
132
143
76
127
146
188
135
124
114
90
105
135
103
157
98
169
99
142
74
85
125
74
167
91
113
128
125
93
54
105
118
113
100
133
117
95
105
101
112
98
144
155
103
67
129
155
169
120
140
99
81
86
107
120
194
87
98
119
108
176
112
152
104
54
94
76
85
100
140
144
140
161
97
95
162
119
136
120
94
161
49
115
148
112
103
133
114
105
111
129
137
112
133
106
81
131
132
110
175
77
143
127
143
108
107
123
131
102
90
108
135
54
80
123
78
161
97
97
147
122
129
152
108
96
85
159
145
104
105
118
107
79
206
54
120
87
107
162
138
107
108
162
108
146
49
138
74
87
135
155
81
104
148
82
98
133
102
106
54
130
125
69
144
140
83
144
179
127
74
157
180
119
81
160
130
131
164
123
101
128
108
98
102
153
82
121
154
127
132
109
180
97
135
96
128
99
177
177
54
78
102
135
54
108
80
80
102
152
76
155
107
102
129
158
135
128
98
74
157
125
114
98
57
107
92
123
100
95
95
96
125
105
98
103
116
134
102
106
171
129
108
86
118
112
102
108
108
134
135
95
91
129
178
138
108
81
99
78
65
120
119
54
111
59
102
95
82
115
212
87
162
108
110
158
91
85
128
143
72
141
112
152
119
118
160
79
189
138
105
102
108
91
105
77
130
61
102
132
110
87
106
82
159
132
91
86
112
115
61
111
123
98
109
141
105
128
140
98
105
102
117
96
123
99
115
102
85
96
133
135
113
133
98
103
146
144
113
131
131
167
112
152
135
106
115
90
114
74
131
81
200
125
108
157
93
103
121
108
120
95
146
125
145
125
141
108
82
100
97
129
157
127
115
89
113
128
83
49
133
95
121
76
148
106
118
119
118
105
74
61
84
97
59
132
98
129
116
139
96
123
98
141
146
92
77
136
129
76
137
97
85
145
136
54
119
105
110
87
153
155
87
90
88
81
105
86
111
102
96
113
135
135
106
82
117
85
160
107
125
122
102
59
118
77
87
87
54
112
95
74
82
90
76
107
100
124
90
153
54
74
168
157
89
135
82
103
82
119
176
108
90
129
105
142
128
115
83
98
138
73
119
122
142
104
144
95
123
144
127
124
146
120
96
130
133
54
74
98
105
82
93
114
143
110
84
87
108
112
135
133
121
158
102
112
102
127
83
186
200
105
115
108
117
102
110
113
117
94
89
78
187
108
146
96
102
101
132
139
91
142
105
111
141
95
103
108
166
120
91
119
156
90
153
114
95
104
172
124
132
87
140
107
159
97
97
54
148
133
204
102
117
125
118
93
108
122
98
101
138
83
125
85
68
85
146
143
128
149
158
88
49
81
133
120
144
103
140
135
98
59
93
157
78
67
84
123
108
151
123
160
113
171
174
103
150
80
163
90
106
132
145
102
149
129
119
89
139
113
140
107
59
102
117
167
115
108
54
61
129
110
91
177
148
149
62
112
105
90
108
122
157
101
140
98
54
118
141
59
123
142
96
90
54
101
102
126
124
140
120
116
102
133
122
94
84
158
148
87
135
74
107
125
147
102
119
125
148
103
68
161
117
108
127
181
125
96
73
70
120
81
113
70
113
95
115
150
102
102
163
101
112
128
101
147
94
102
102
90
177
129
144
98
163
59
113
125
81
135
120
120
110
142
76
172
118
93
141
69
96
106
54
57
74
102
101
105
129
108
95
101
103
174
113
105
121
98
104
139
103
109
123
146
82
91
104
97
113
122
115
134
77
212
155
71
140
114
101
105
131
114
129
77
118
121
105
98
117
131
136
111
108
91
100
125
106
69
90
83
76
134
151
160
149
84
138
100
73
134
156
116
112
68
82
129
114
129
127
54
59
79
85
111
80
108
82
122
114
100
106
146
113
125
125
101
68
67
95
206
132
85
127
91
96
177
91
126
81
98
128
114
111
133
59
125
149
144
113
149
99
65
123
135
102
117
118
91
146
99
83
118
141
112
135
80
157
108
130
147
85
95
83
107
95
136
162
132
147
129
49
82
144
87
107
59
81
105
135
133
122
95
98
116
110
98
54
131
126
93
127
96
163
65
95
54
104
103
108
154
145
128
108
117
134
54
156
140
139
83
108
76
124
147
151
67
143
178
109
54
112
81
119
123
91
103
119
94
103
129
161
76
122
154
129
54
74
107
90
54
106
85
95
137
67
104
103
131
160
102
91
125
121
179
162
81
110
73
115
140
117
81
129
135
68
138
108
105
116
121
102
112
182
113
148
127
124
89
141
115
95
100
158
110
106
77
101
136
90
142
117
82
140
128
154
96
90
127
145
110
102
137
108
144
148
106
164
123
127
93
98
49
104
137
128
126
61
111
74
81
125
135
109
139
126
179
175
89
108
96
103
156
134
167
118
160
81
113
172
139
54
154
190
129
135
108
135
113
180
196
110
103
98
68
133
146
100
151
105
126
94
128
95
95
108
165
105
158
93
67
106
82
108
92
144
74
78
184
165
49
140
78
113
115
77
134
81
83
95
78
182
95
105
129
98
117
96
138
121
145
173
90
121
123
115
157
114
105
128
77
135
134
110
105
98
54
125
97
124
157
108
133
135
129
108
116
114
106
122
108
115
102
101
102
118
82
145
126
103
113
170
108
123
125
113
49
101
129
131
110
89
95
127
102
76
147
110
102
78
146
120
129
172
102
153
77
122
129
151
108
112
127
110
158
100
186
200
95
121
54
171
148
54
96
118
115
49
95
103
119
59
77
148
143
122
59
171
115
77
146
125
115
95
74
184
205
130
108
126
120
49
128
83
177
86
67
149
105
165
96
87
133
95
105
122
161
123
126
129
106
74
98
122
122
123
54
91
119
105
131
108
120
81
148
134
102
74
106
147
139
135
81
133
125
98
177
128
76
146
206
97
76
108
124
130
125
128
76
167
94
179
97
140
123
101
82
134
103
107
158
147
74
105
102
102
141
115
194
130
135
81
82
87
143
159
102
148
113
108
134
115
123
135
179
98
131
120
122
87
123
102
102
141
125
126
77
81
141
104
127
98
95
160
88
148
100
108
134
128
127
126
104
158
156
112
84
111
82
140
112
77
98
67
169
94
108
125
90
78
110
87
103
104
112
141
81
85
134
82
91
115
131
95
148
105
177
97
93
122
153
148
128
129
82
104
101
67
136
59
123
95
120
145
99
175
113
95
81
133
154
135
130
108
93
116
109
155
120
93
102
120
98
127
97
121
77
109
90
129
109
78
132
114
102
122
113
108
174
103
103
107
90
101
117
155
127
114
139
136
177
102
49
131
108
122
81
143
141
108
82
98
81
98
77
145
103
102
80
102
92
102
114
129
129
92
137
81
135
113
119
147
121
131
80
155
105
144
139
154
102
123
115
132
130
165
126
129
65
125
61
112
170
102
49
165
125
175
114
94
113
97
74
122
77
94
78
102
102
113
54
153
134
127
134
137
113
98
95
94
94
124
137
102
145
153
119
103
139
73
119
113
145
161
135
148
95
90
124
105
130
81
131
114
106
110
97
137
117
135
91
98
156
95
127
102
109
81
78
81
82
101
108
104
106
103
144
125
131
104
95
170
104
122
108
102
139
102
148
102
124
160
103
102
120
131
87
49
102
77
119
193
76
114
101
61
106
148
105
104
113
119
143
112
106
130
135
132
122
117
54
93
144
108
129
133
160
102
100
87
90
102
127
143
120
115
143
141
49
100
93
126
132
124
92
109
144
102
112
76
113
95
89
109
112
87
144
113
151
99
95
147
90
160
129
147
131
123
148
80
102
81
131
131
61
170
74
131
98
99
110
100
129
89
143
196
131
125
140
161
77
112
124
108
71
133
81
125
85
80
164
180
147
83
143
109
103
94
114
126
122
99
146
54
111
104
97
128
93
120
78
129
129
127
121
127
160
124
141
126
117
88
103
115
165
129
90
109
114
80
49
96
54
81
126
135
103
133
136
134
113
74
98
128
117
94
103
87
88
140
112
121
88
61
123
122
162
169
125
118
147
59
96
148
83
108
85
116
147
128
127
87
105
143
128
111
121
132
91
74
138
105
112
139
98
101
144
118
103
116
92
95
93
158
147
129
159
77
88
143
143
129
113
136
114
117
141
90
90
116
137
54
125
102
82
91
139
137
96
81
90
81
172
126
97
49
108
149
54
108
163
104
132
160
85
125
92
129
81
139
90
159
123
125
121
125
124
98
93
90
78
127
103
141
61
107
107
119
128
123
77
76
109
160
110
145
54
94
145
98
67
150
116
93
87
129
98
153
94
59
87
140
118
158
112
118
144
114
107
68
59
113
151
124
134
123
109
158
110
88
114
91
77
54
125
148
133
82
169
87
91
161
85
81
109
133
90
54
87
96
121
95
69
158
73
105
104
82
128
121
143
114
139
85
112
101
95
105
102
139
78
147
82
150
88
140
84
59
208
106
112
79
77
76
150
148
133
98
137
107
156
103
160
101
111
79
124
148
138
54
143
77
54
86
125
143
89
98
95
84
81
160
114
88
113
102
83
137
158
103
91
139
107
54
111
102
96
108
124
95
141
102
54
102
108
122
102
129
108
105
108
95
120
115
110
120
88
49
123
81
83
163
173
98
102
81
130
141
145
96
117
138
155
59
98
150
148
134
98
83
137
138
119
54
170
101
59
104
156
76
99
76
102
76
93
110
95
135
142
130
141
148
131
109
124
79
115
144
147
81
122
106
128
159
133
133
165
135
121
83
123
165
130
102
96
98
54
98
105
102
145
49
117
122
125
119
96
177
103
92
138
155
102
116
129
109
161
85
128
125
121
139
49
109
125
111
117
114
96
88
148
114
113
158
95
129
107
81
132
161
102
133
161
154
116
118
146
75
83
112
145
98
140
94
122
97
67
67
91
81
149
80
82
87
74
108
112
105
67
121
81
54
92
182
90
83
113
162
154
133
102
131
61
88
93
107
88
93
169
102
177
95
148
118
108
134
97
54
141
110
98
102
163
157
98
87
140
108
103
76
97
105
136
114
98
93
72
118
97
81
124
67
95
144
165
115
54
113
107
110
78
126
74
120
147
137
136
95
100
49
105
111
139
113
136
117
89
103
59
132
81
54
125
118
82
59
113
142
100
135
77
126
123
122
120
82
95
88
105
98
85
76
105
125
165
185
134
96
93
148
100
171
78
149
80
122
125
133
116
97
146
100
136
110
91
122
93
165
124
168
76
111
123
83
108
126
140
158
54
158
124
169
80
137
98
138
102
81
114
67
82
94
124
113
97
125
117
115
153
166
87
77
126
91
113
87
157
108
113
81
81
79
115
111
104
133
68
77
148
133
156
59
84
150
81
100
150
126
113
81
116
115
67
202
108
127
128
159
145
116
138
123
165
120
83
68
81
106
145
97
185
160
115
118
84
125
120
156
102
136
103
140
141
88
120
114
135
149
150
85
49
112
148
137
129
129
100
91
85
166
102
145
67
118
127
122
105
142
49
98
122
148
158
130
87
87
157
148
95
95
92
112
54
113
136
157
105
139
80
104
125
114
97
100
120
151
103
87
148
115
148
78
91
111
102
107
121
101
104
88
92
54
97
113
112
78
113
102
123
90
97
130
103
103
124
145
107
113
115
131
131
109
116
108
82
95
102
147
160
98
124
81
95
59
154
129
103
106
112
128
101
74
97
108
123
103
130
126
152
139
105
143
80
110
90
134
130
121
122
118
104
124
132
143
143
103
96
112
177
117
143
98
108
102
145
81
122
115
80
119
157
145
153
129
93
148
93
150
87
90
140
162
116
138
132
95
115
119
49
98
98
133
144
119
142
105
125
54
146
90
100
99
77
103
98
115
96
114
81
69
133
100
190
98
145
166
140
99
158
108
137
61
148
97
83
91
132
96
115
103
101
194
84
59
87
104
108
105
95
128
117
76
143
137
178
98
113
127
115
129
101
101
49
103
132
95
130
145
108
133
112
153
124
125
77
183
59
144
99
78
82
113
81
156
101
141
85
106
81
132
146
139
146
147
113
140
99
146
127
102
59
87
90
177
127
158
103
127
95
129
137
82
131
166
123
127
157
92
133
76
59
97
88
59
125
107
92
112
134
104
122
83
116
104
167
131
140
121
102
98
109
110
148
54
54
82
135
49
67
67
99
96
100
182
113
163
93
140
101
118
132
114
154
81
103
142
69
103
125
120
69
126
125
116
124
82
67
82
109
86
149
128
90
102
74
119
137
136
141
80
125
158
203
95
104
129
130
138
103
102
95
104
103
100
59
119
81
145
119
128
116
112
146
108
95
67
93
157
54
87
87
101
67
85
88
133
54
177
107
95
99
96
98
114
115
148
135
127
135
95
67
136
92
69
92
139
103
133
54
188
123
128
134
111
77
103
123
103
148
161
77
89
61
149
109
108
128
106
81
102
117
108
141
153
99
130
136
145
177
125
54
165
143
99
124
108
113
102
102
130
95
104
102
125
103
109
95
123
97
121
138
85
82
105
143
85
123
119
102
103
89
67
148
87
107
129
138
130
123
135
108
133
90
104
111
117
149
59
115
105
76
119
126
142
95
95
143
127
116
140
131
147
111
125
156
91
98
54
98
123
139
126
146
119
67
112
145
118
113
191
110
78
131
105
68
115
74
136
220
117
98
156
145
158
136
177
83
124
135
102
91
82
105
81
96
87
124
108
81
88
121
131
108
95
101
101
81
136
127
68
95
85
131
102
157
130
138
158
97
112
140
95
54
139
133
130
88
104
98
114
138
100
159
79
94
114
153
99
130
127
191
128
143
119
81
138
115
158
152
102
181
85
67
126
114
140
179
134
117
93
111
133
122
118
81
122
95
95
177
101
59
150
163
96
59
85
161
108
157
130
61
82
129
158
135
144
122
142
151
112
158
67
116
127
143
132
138
102
123
111
124
103
148
109
124
164
120
128
128
89
140
167
76
126
149
140
122
59
93
164
150
158
108
94
103
98
100
111
179
133
57
106
120
87
100
96
113
78
54
80
109
98
88
131
179
148
49
120
150
113
180
106
132
108
134
160
154
115
134
82
117
102
49
90
177
59
128
134
123
141
177
108
146
80
95
83
199
148
91
125
147
127
97
145
134
105
95
141
119
96
157
81
126
110
150
133
81
105
74
89
125
123
61
76
74
102
139
109
148
140
140
95
95
122
101
95
77
61
132
98
90
108
95
97
158
136
107
168
125
143
115
95
146
137
113
80
87
129
138
128
118
92
119
83
98
69
189
77
54
86
128
155
134
82
92
162
98
129
151
145
98
98
170
54
107
154
150
123
154
83
94
112
143
95
77
149
134
156
98
160
143
83
93
98
105
98
117
84
135
143
100
120
160
99
153
116
91
127
108
135
98
194
83
112
87
93
69
109
102
54
153
81
128
118
69
85
133
74
105
122
82
108
122
110
111
117
49
168
125
138
81
120
78
95
95
101
148
144
93
144
138
150
61
94
144
74
93
137
110
100
146
59
49
148
120
129
111
166
98
105
158
54
149
104
122
86
153
122
102
110
104
110
77
122
128
177
111
90
114
125
103
119
95
54
166
85
132
49
134
153
108
146
108
61
108
90
79
116
69
144
77
61
143
92
152
82
110
113
76
88
103
146
113
54
127
94
93
136
104
133
100
141
98
106
123
132
81
144
127
86
153
77
122
118
124
102
108
160
89
106
169
103
119
54
122
67
81
115
124
103
129
131
177
49
95
67
121
123
68
54
100
130
150
155
102
69
105
132
98
95
112
120
123
102
149
158
120
116
120
76
80
114
115
141
76
133
158
115
122
105
107
145
118
125
92
146
93
103
120
93
108
149
95
139
138
113
103
99
95
124
54
111
73
102
162
108
68
103
116
121
77
81
165
135
134
112
107
120
131
135
98
149
131
140
88
165
54
173
90
121
177
131
144
97
138
110
92
95
124
148
54
139
95
98
74
158
70
98
104
118
146
162
148
186
143
129
135
105
90
96
159
120
101
160
90
134
147
81
108
97
89
104
118
54
125
132
84
128
102
80
98
113
149
84
141
103
177
54
108
87
148
108
149
175
99
84
87
78
149
95
117
87
140
123
126
112
89
146
142
89
91
133
110
145
95
115
141
116
120
137
131
88
105
99
49
130
156
127
131
164
83
95
145
140
67
102
97
120
81
147
131
149
108
105
150
78
87
105
78
119
119
81
73
128
139
123
142
140
113
98
108
199
111
120
102
80
89
136
93
138
96
96
101
141
97
122
85
148
155
82
102
125
114
82
97
118
122
141
148
128
97
149
99
113
107
110
111
95
135
95
113
105
99
123
111
142
112
111
91
54
158
91
131
119
99
88
104
98
98
141
147
54
117
108
113
98
59
113
117
113
108
135
82
95
93
97
109
120
95
144
95
85
146
88
95
145
108
173
88
59
90
131
108
151
122
68
115
141
85
96
140
108
54
139
85
103
67
166
127
159
142
102
138
125
54
98
137
110
101
130
83
67
77
169
110
98
78
135
126
74
54
111
81
96
129
102
140
113
87
74
138
179
102
87
99
122
115
97
113
78
111
78
108
128
86
107
158
171
108
132
85
90
90
169
77
118
116
132
133
89
177
108
148
125
96
147
155
129
74
143
127
54
83
118
59
144
157
98
74
92
168
110
199
132
115
85
147
120
108
128
98
101
95
116
137
98
115
108
95
98
144
89
102
108
121
155
93
158
76
103
74
129
118
105
145
102
95
144
157
90
95
109
187
147
59
161
159
121
140
62
155
141
111
136
113
76
80
89
137
120
61
95
98
122
139
113
150
128
135
70
59
109
126
125
159
125
102
65
155
129
158
104
81
152
92
120
76
76
95
98
111
54
159
102
141
78
54
107
214
98
74
81
89
108
102
121
81
160
145
89
54
120
99
108
153
167
137
78
118
85
67
111
103
133
164
111
104
129
108
103
76
111
82
88
117
119
87
90
81
103
127
45
90
148
98
116
106
125
107
92
108
91
107
68
90
54
74
158
88
89
127
118
103
98
128
82
158
107
138
139
139
49
98
178
81
124
151
54
103
200
127
142
78
76
119
126
91
81
127
105
107
74
165
84
133
49
172
68
96
127
158
115
98
125
157
157
91
109
138
124
117
82
81
142
59
111
90
104
130
134
123
84
101
59
136
168
102
79
49
82
93
85
54
122
135
135
78
139
102
81
67
91
159
90
83
98
111
72
77
128
199
177
95
87
113
177
95
151
49
90
90
103
110
100
162
93
116
122
119
103
93
138
167
104
137
135
54
74
117
54
129
97
95
135
98
155
103
80
157
151
133
115
134
116
54
103
102
102
159
86
107
102
76
95
94
124
118
146
100
116
123
95
103
157
76
108
78
80
107
177
150
69
128
123
136
125
95
96
95
54
124
49
138
123
135
104
54
100
67
110
133
121
161
109
108
115
110
137
85
181
115
95
94
135
147
132
108
145
104
133
81
128
138
126
113
81
95
120
93
85
115
145
120
144
82
108
108
49
82
113
157
89
103
123
129
121
205
78
96
96
68
103
115
59
108
76
79
120
103
148
127
154
101
168
77
120
131
95
114
96
148
76
83
61
139
100
84
102
95
132
138
116
78
82
98
132
61
147
117
113
102
131
130
95
95
143
68
118
128
98
93
116
77
59
93
68
165
115
158
175
137
135
74
108
125
59
81
127
108
129
70
136
128
105
91
85
95
105
148
168
125
104
134
142
125
120
118
151
140
160
111
110
134
146
54
97
54
74
135
117
120
102
138
160
90
93
128
150
98
103
96
105
54
138
108
76
123
102
133
102
128
129
49
121
87
54
89
93
78
160
127
113
90
99
95
103
110
131
127
49
102
108
91
149
123
182
95
113
91
90
108
158
174
102
156
87
96
90
109
103
54
105
103
160
90
161
82
82
137
177
106
153
118
120
106
144
83
102
98
123
146
77
163
87
110
120
155
105
103
62
129
130
80
109
136
81
97
143
145
113
90
96
120
171
163
103
193
59
161
94
172
74
133
127
49
154
194
102
93
119
131
106
54
102
126
113
112
87
133
146
77
137
91
101
59
59
54
134
87
83
189
116
98
161
54
141
45
108
94
112
59
118
140
106
149
106
145
103
78
113
131
154
108
116
124
81
81
115
76
108
117
107
126
131
86
177
108
141
109
107
145
146
142
108
115
87
78
54
125
118
104
90
161
167
149
124
145
127
108
76
137
84
107
134
173
106
49
108
99
152
131
97
130
119
197
95
131
154
134
103
108
99
128
149
102
129
149
98
118
103
94
97
97
106
182
91
125
91
74
143
81
90
117
74
138
145
105
128
102
107
103
81
80
141
120
177
155
95
84
73
128
158
144
93
45
49
119
115
113
147
138
119
151
111
110
102
110
146
108
98
113
77
101
152
114
125
158
103
167
54
99
54
141
94
131
123
82
81
81
141
132
143
202
54
134
111
109
126
137
59
129
137
119
99
113
120
95
131
101
79
141
92
94
148
159
118
81
132
108
133
54
112
192
153
108
78
49
135
103
141
90
131
110
106
77
107
145
83
78
120
127
105
146
151
123
54
138
126
141
103
54
122
118
103
81
147
95
127
119
135
95
164
97
155
93
101
143
128
78
113
139
138
130
129
132
157
110
82
92
103
77
134
93
133
80
86
113
134
108
100
119
139
177
93
128
142
82
112
140
116
125
122
123
119
96
141
74
84
139
162
190
124
104
157
83
103
95
94
61
144
115
61
131
67
134
73
120
163
109
168
116
121
89
149
115
59
122
142
155
98
108
95
154
107
78
102
112
144
108
104
92
42
113
89
98
67
158
97
49
92
79
133
104
77
147
73
90
142
111
146
84
135
95
151
148
103
146
82
112
103
102
133
106
85
110
125
77
87
100
116
101
131
112
110
111
136
155
74
125
135
123
139
85
149
136
177
129
141
59
131
137
127
127
143
122
172
140
90
112
109
90
158
131
112
128
100
159
115
154
76
121
83
166
125
129
98
135
67
164
90
124
133
148
74
93
54
112
151
78
76
87
49
98
98
133
157
108
125
106
128
134
82
108
103
112
112
141
61
116
84
105
139
108
123
108
108
102
108
146
80
128
161
146
85
206
54
74
92
128
125
101
108
111
118
107
76
107
105
125
54
112
95
147
104
98
123
91
147
124
135
54
54
144
151
103
54
108
49
127
107
133
105
102
122
113
145
153
80
153
151
116
102
172
146
118
69
148
138
137
135
81
165
122
95
101
183
150
76
117
105
163
124
172
158
81
151
97
149
123
103
111
144
87
94
105
103
97
121
61
107
145
118
127
81
145
59
90
104
102
115
167
109
54
103
127
135
72
54
98
100
74
143
148
80
107
161
103
177
103
174
119
94
105
152
112
81
113
100
152
119
200
128
81
113
82
91
98
80
78
135
107
54
103
98
127
81
54
95
90
168
168
128
97
132
77
135
97
87
115
125
76
145
99
67
139
174
108
54
135
117
112
158
125
107
114
155
130
155
90
166
98
119
95
108
123
143
158
83
122
105
105
155
126
147
81
99
82
83
108
82
143
94
77
95
98
120
118
158
135
136
160
116
98
143
101
100
112
85
136
78
151
76
98
70
102
156
97
82
179
105
140
151
122
127
117
145
101
92
54
100
49
134
168
74
82
54
182
131
106
102
108
78
155
128
110
108
126
83
163
97
109
143
85
96
134
134
98
131
166
61
153
92
91
54
155
145
168
128
109
74
95
54
91
143
129
120
138
137
149
121
131
149
113
123
59
113
145
87
139
121
94
95
81
108
95
138
146
101
98
179
81
102
102
104
105
158
102
77
67
108
113
177
141
139
103
95
107
112
125
107
121
109
127
110
91
74
54
139
99
98
144
135
161
110
102
91
128
148
130
107
101
85
103
105
130
100
97
131
106
127
115
76
118
83
54
78
148
106
90
106
149
107
81
98
116
133
124
116
138
93
91
161
108
104
116
129
82
95
129
121
158
111
59
101
123
98
165
80
81
97
95
74
90
61
108
54
137
106
154
122
118
54
87
131
125
192
96
108
127
108
131
127
87
125
95
54
79
80
59
177
133
131
127
200
134
104
120
130
119
130
125
74
106
108
87
104
86
145
61
102
103
139
92
84
76
150
134
108
81
168
54
151
133
122
177
108
98
49
111
87
92
134
97
85
123
149
114
139
54
103
110
138
83
59
67
138
161
152
95
184
133
152
141
121
140
107
108
124
104
94
95
149
115
90
112
147
151
128
201
100
101
107
135
97
141
124
131
77
74
103
102
98
95
95
96
68
158
90
153
87
98
121
154
154
192
146
115
135
125
114
192
98
54
141
163
105
106
127
83
63
125
85
146
115
130
112
102
98
130
97
148
115
125
105
179
146
113
145
123
59
122
108
138
135
92
118
132
91
54
104
135
144
118
88
140
90
103
108
134
119
107
87
126
108
138
112
105
103
124
123
101
109
101
118
100
81
87
87
81
141
108
142
128
120
125
117
144
80
145
49
49
95
135
93
125
113
65
114
143
113
131
109
143
93
112
87
68
131
95
114
93
200
132
82
111
165
107
112
122
106
141
111
86
54
118
81
120
134
105
100
74
112
95
149
94
123
117
168
99
115
49
143
95
49
141
114
74
95
177
157
115
153
112
105
155
159
133
89
61
163
79
101
80
102
135
94
108
69
78
107
182
81
59
167
133
105
108
120
161
133
78
150
140
118
129
138
120
108
100
144
128
142
68
142
142
121
151
78
103
92
118
103
54
99
119
115
117
123
81
115
111
133
112
85
49
124
130
119
141
141
103
89
78
133
119
109
82
143
68
54
90
107
110
93
135
90
100
92
87
225
133
89
95
124
109
116
98
144
105
67
108
59
189
93
79
133
128
110
91
186
155
83
98
173
115
162
54
138
99
90
95
95
114
102
77
76
125
95
91
83
160
97
97
102
200
95
135
104
125
116
118
135
112
125
93
83
54
148
95
172
100
129
135
81
85
111
106
69
135
129
112
99
69
138
119
143
91
69
82
65
117
106
129
92
163
102
133
84
158
125
117
100
89
126
111
110
81
121
180
128
104
108
141
118
112
54
143
95
135
68
118
72
129
72
101
103
113
146
131
103
119
125
98
136
80
149
95
118
102
103
95
90
131
129
112
122
89
86
106
127
83
74
103
82
90
142
109
107
121
114
139
129
124
123
127
97
97
146
91
131
54
112
137
80
92
54
161
128
78
118
118
105
148
96
140
134
122
114
73
77
90
101
94
147
105
125
101
77
119
109
74
140
148
87
97
173
135
102
96
116
88
130
115
79
158
136
177
83
78
98
98
90
128
111
146
118
78
118
69
111
120
85
114
144
136
77
149
97
80
127
105
108
99
102
80
95
78
134
59
114
160
186
144
95
97
116
127
69
124
126
108
77
156
128
57
105
97
95
134
106
116
103
150
84
125
102
103
93
81
139
102
89
123
131
205
74
98
131
142
120
69
143
130
120
138
93
94
80
144
54
105
131
76
108
102
125
94
59
104
96
95
54
86
108
54
168
95
125
137
76
130
122
85
125
145
137
80
99
98
126
101
123
62
107
91
142
95
140
108
123
102
126
124
54
105
86
112
143
128
49
81
85
93
81
77
117
128
104
45
146
106
67
95
106
107
106
104
96
103
102
120
95
135
59
123
95
120
158
130
101
113
72
106
122
76
76
82
144
118
170
122
108
123
141
95
103
120
83
177
97
67
90
108
94
113
81
140
102
102
119
129
93
133
106
125
131
153
143
110
131
98
102
173
54
144
108
190
131
76
155
140
102
115
95
139
104
130
49
117
104
123
151
141
111
185
109
54
105
82
83
139
128
87
116
123
132
123
143
93
150
49
156
81
129
105
65
135
135
93
108
189
140
93
135
61
142
59
111
112
92
99
130
77
93
133
125
161
138
138
103
139
131
49
126
122
110
122
134
101
80
61
126
91
127
120
54
146
110
180
108
96
76
65
161
122
125
143
168
106
117
68
111
127
126
111
176
106
85
82
125
99
100
79
142
142
101
61
127
105
157
149
116
103
133
148
163
145
94
83
81
144
106
131
112
156
138
124
105
107
129
78
135
90
148
155
98
123
94
165
92
148
105
98
81
113
123
120
144
134
95
102
115
59
83
180
133
149
127
113
108
96
124
139
182
93
81
91
85
156
102
95
93
124
63
105
125
109
157
129
141
163
144
93
90
134
105
113
105
102
113
91
49
93
113
119
141
164
131
126
78
140
67
137
128
92
45
108
95
102
124
130
120
139
105
117
135
81
119
131
172
81
115
81
103
161
120
99
132
135
150
84
163
145
167
133
94
133
116
133
93
156
79
152
133
122
137
189
117
143
135
160
94
103
68
153
89
95
113
124
102
143
108
107
153
98
143
125
113
95
79
106
49
133
108
110
158
110
165
88
100
142
87
54
98
115
139
126
127
82
146
116
98
137
108
77
81
91
80
105
108
113
176
130
131
91
116
123
108
117
108
108
183
80
159
146
96
125
158
87
126
143
145
86
91
123
143
83
112
96
122
117
76
113
133
95
91
181
106
108
135
113
119
120
108
83
165
119
113
77
117
99
113
92
132
131
143
107
132
108
59
173
89
116
93
161
79
129
92
135
181
87
105
82
54
140
103
124
111
105
122
74
54
95
101
131
120
78
59
148
96
117
96
88
115
123
115
116
107
138
54
127
101
123
141
145
107
145
87
116
83
131
110
102
148
116
140
139
177
99
145
76
103
110
99
143
113
110
93
116
113
123
96
87
186
154
115
54
151
102
134
130
118
97
120
98
105
81
150
135
82
113
99
114
108
103
135
164
83
144
147
109
124
127
82
156
177
103
91
118
133
137
90
111
144
98
102
109
81
100
108
71
122
83
139
114
79
112
107
133
118
117
67
67
81
134
131
77
95
94
147
102
140
151
76
177
70
125
95
148
139
140
116
132
91
169
96
54
108
99
95
151
111
113
81
105
76
133
59
140
127
142
158
135
121
98
92
92
130
118
108
113
83
90
104
143
144
102
97
106
101
95
116
73
154
125
125
180
104
107
77
107
120
95
127
121
81
199
81
123
61
91
131
108
141
124
79
113
128
114
105
49
107
177
86
146
153
54
112
54
59
125
157
153
106
117
113
103
106
83
133
116
128
90
160
108
138
59
76
85
129
136
143
89
130
158
69
120
123
141
148
54
102
92
119
158
123
138
174
143
95
139
77
141
82
123
114
90
103
83
194
152
140
112
82
98
128
108
128
158
92
72
144
143
141
93
128
126
125
74
100
93
105
113
102
152
133
120
76
165
140
111
144
118
49
122
54
100
81
54
76
116
111
95
105
148
113
114
108
131
112
100
186
111
90
90
128
79
123
135
135
110
140
54
154
158
135
77
148
137
122
118
94
130
149
151
87
106
137
76
135
79
99
113
174
94
98
151
158
120
101
99
188
158
108
122
139
112
165
87
130
118
194
128
128
120
124
126
122
147
49
161
142
158
93
162
154
138
132
143
131
82
54
127
167
113
108
108
172
109
110
131
122
87
118
119
131
126
120
54
160
133
103
98
125
128
152
108
125
121
158
142
91
92
95
133
124
103
144
87
165
145
97
125
89
69
112
141
133
98
54
80
152
108
128
108
145
113
112
112
145
90
142
105
108
108
77
97
156
54
108
123
124
87
83
67
100
126
130
100
163
54
102
132
87
87
124
117
139
120
147
166
115
102
106
77
139
144
156
91
126
129
175
125
94
135
98
54
138
120
122
127
139
82
162
115
102
108
134
144
88
107
160
83
105
118
128
103
115
112
59
54
136
95
121
97
159
91
79
144
77
126
102
93
111
76
156
139
110
76
115
108
106
80
173
142
145
113
135
153
119
81
129
54
80
106
144
111
169
87
108
113
91
74
98
110
87
143
145
68
133
158
89
92
115
118
96
120
126
148
117
182
153
149
86
124
108
141
105
59
131
135
180
115
170
54
161
145
110
103
115
54
162
155
81
145
139
92
137
68
85
160
178
59
108
124
133
91
112
122
127
59
144
117
87
181
108
108
113
96
144
206
150
168
120
148
102
145
151
94
167
156
183
118
77
104
105
95
186
149
123
67
54
140
100
165
61
128
136
123
138
132
153
103
77
102
94
151
108
145
98
158
88
82
73
106
82
84
92
79
131
133
105
129
98
151
131
108
93
94
110
106
134
148
89
109
101
93
126
140
139
114
125
115
96
76
115
115
148
54
92
140
125
103
95
111
124
158
115
134
106
127
85
81
156
147
114
127
54
90
113
158
105
113
128
82
127
97
84
105
102
111
111
149
160
97
103
176
93
81
100
59
116
137
117
107
54
95
137
112
104
108
135
131
115
177
54
177
90
96
98
161
98
130
74
90
143
125
74
101
85
77
125
90
108
127
98
92
168
114
118
114
76
49
158
98
88
152
125
97
145
143
96
106
190
130
61
144
77
146
147
79
81
181
154
131
107
153
128
144
130
98
124
157
133
134
114
133
95
111
109
145
171
49
99
95
81
106
107
126
139
142
49
143
116
133
122
151
154
108
49
91
87
113
99
76
119
144
108
106
182
92
73
103
76
120
102
98
172
104
108
139
170
125
180
125
101
139
125
98
130
54
81
102
86
96
90
77
120
95
135
98
152
59
102
148
102
93
133
124
113
109
75
54
128
144
153
110
81
155
67
100
104
91
87
85
167
107
102
141
128
92
150
101
54
93
74
86
141
154
66
108
115
108
109
215
118
113
54
168
159
74
148
93
142
111
102
102
110
106
165
117
154
112
153
70
113
108
105
108
103
74
93
108
131
133
131
102
77
142
175
129
59
97
165
93
108
81
128
67
138
74
128
122
142
158
160
97
86
116
106
126
118
109
88
104
119
54
132
160
110
113
172
120
149
83
90
132
141
169
164
93
119
93
107
142
172
143
141
113
118
146
133
120
125
135
118
87
100
148
130
139
98
74
168
49
105
110
97
145
179
141
149
125
102
177
97
102
79
108
129
106
93
131
100
135
143
124
163
94
87
123
78
144
171
125
152
120
138
144
95
121
132
108
139
80
88
102
129
117
108
112
78
115
110
85
151
82
117
98
115
129
104
148
81
181
67
83
54
155
113
54
67
95
111
161
101
125
144
59
125
123
103
118
179
165
125
102
109
74
98
106
106
103
143
83
93
102
156
134
54
139
49
98
93
150
162
81
148
74
113
81
132
156
118
177
131
162
110
180
104
103
87
81
114
108
142
105
158
74
117
98
151
125
80
90
79
102
54
98
113
95
83
59
144
149
146
112
200
145
92
125
108
99
95
120
204
74
92
140
119
102
157
78
113
148
116
77
114
113
150
167
102
95
148
117
90
126
82
154
81
171
106
135
107
133
103
90
126
137
102
112
128
121
132
168
138
126
69
110
95
82
156
111
139
76
158
106
141
77
82
98
78
99
81
154
125
67
89
54
129
106
82
104
130
162
80
109
100
98
97
120
108
116
61
119
92
98
115
145
99
85
155
177
108
87
116
114
142
129
54
102
109
102
101
93
82
113
87
82
109
139
115
137
134
77
127
93
88
125
140
85
69
122
103
133
109
178
115
116
102
139
118
87
149
133
111
98
118
92
115
96
130
163
49
164
70
92
112
93
139
108
129
122
80
160
112
144
96
145
92
166
106
106
104
191
95
108
71
156
157
105
122
54
129
49
161
89
112
79
124
108
128
93
99
110
87
141
98
141
113
118
49
144
99
107
76
165
112
54
130
75
118
153
137
110
82
131
96
113
153
138
95
54
125
125
129
54
114
170
59
102
149
95
131
74
116
81
74
142
96
74
145
93
103
118
129
105
101
160
99
95
102
113
81
78
90
82
122
101
116
147
129
113
126
160
125
129
110
154
163
148
54
114
145
81
136
90
140
113
125
102
112
125
54
49
89
151
128
138
146
105
76
80
127
106
105
124
89
158
131
59
164
96
157
135
133
96
128
165
113
119
95
117
125
54
127
157
139
85
148
88
77
112
68
135
173
113
108
149
54
148
154
126
138
166
106
115
133
111
80
145
165
111
90
86
93
130
49
169
143
189
87
132
125
100
91
125
116
127
87
104
95
126
92
98
123
143
128
137
131
82
97
76
117
133
126
143
129
113
155
146
112
183
95
200
150
103
49
121
91
81
90
155
54
186
87
80
122
107
160
110
120
78
131
145
122
131
95
78
113
194
109
61
103
95
96
87
96
109
127
113
129
134
93
67
153
54
97
138
117
97
108
126
67
129
76
82
121
111
122
115
106
92
122
124
133
142
118
104
119
49
125
135
103
92
90
126
141
98
130
54
117
108
109
133
82
113
108
139
104
146
113
108
123
103
124
80
81
131
113
75
133
100
119
200
130
81
179
54
108
93
122
119
118
81
54
146
132
137
112
59
160
145
90
131
102
149
145
124
117
125
67
115
147
124
148
163
79
141
106
122
119
98
131
143
148
102
113
153
82
94
132
145
173
109
87
158
73
90
105
113
84
123
138
111
74
88
107
142
121
128
99
98
132
103
89
115
128
134
135
102
119
91
88
143
94
140
59
92
102
113
141
113
157
125
144
163
158
124
112
103
84
133
122
114
87
149
90
140
141
80
101
90
93
123
122
104
87
133
200
128
134
149
144
118
95
106
118
123
132
103
108
76
143
106
156
93
108
146
135
153
124
106
88
98
194
144
142
91
125
137
127
124
93
69
125
127
124
90
130
95
129
119
149
74
148
119
126
108
54
125
142
165
131
105
83
99
112
111
164
125
102
134
81
103
198
49
110
180
135
127
107
179
124
131
99
125
127
108
127
83
123
95
134
118
125
116
134
54
186
120
152
77
126
93
133
108
148
106
118
122
122
76
83
147
91
95
98
135
162
147
74
91
90
54
151
169
140
113
54
130
42
112
155
102
133
66
129
84
75
139
101
119
102
123
150
111
103
87
141
62
139
123
124
102
98
108
74
94
133
124
129
145
99
116
159
134
113
131
100
100
173
140
116
112
105
136
85
120
98
116
177
91
88
97
116
97
54
116
206
129
194
125
155
110
79
113
135
111
131
104
115
131
159
102
114
104
145
147
128
54
96
103
145
113
95
131
115
82
83
90
119
168
130
95
107
177
93
96
103
93
102
122
98
135
121
108
117
140
170
49
134
148
139
108
98
81
140
134
115
88
99
142
137
92
107
117
102
137
106
87
81
122
141
144
202
106
132
97
176
140
101
110
113
113
124
118
97
119
67
125
114
87
148
148
134
186
127
133
104
92
123
121
144
119
117
99
135
67
158
101
54
145
124
140
122
125
112
108
133
113
79
97
96
131
118
131
78
128
122
113
102
107
150
106
128
133
87
75
132
129
87
95
54
153
95
145
109
148
121
91
156
165
149
95
95
158
115
148
95
120
102
120
54
158
102
108
116
143
150
127
77
160
141
147
135
107
155
75
129
177
96
109
104
108
93
76
173
102
118
77
101
90
88
90
102
147
107
116
95
95
172
98
117
108
120
132
114
158
108
122
133
186
76
90
194
131
108
138
92
110
108
97
153
98
111
128
106
130
96
121
54
148
111
54
95
121
114
97
176
140
91
135
49
93
67
157
149
121
94
139
128
78
87
118
92
108
142
54
125
165
205
90
140
79
90
167
81
95
133
179
85
85
129
85
79
131
95
93
106
95
133
154
102
54
133
148
133
171
129
113
91
91
125
170
149
121
110
108
144
139
59
173
107
116
147
109
163
116
139
121
103
105
167
77
90
112
164
143
120
121
143
89
117
81
103
49
98
128
67
118
126
98
95
120
98
147
142
90
98
129
97
81
68
102
121
159
144
90
103
160
109
67
98
105
113
166
113
135
112
123
157
106
95
153
112
141
96
176
135
143
177
102
92
115
67
54
84
103
113
101
102
108
110
99
76
102
160
110
95
111
143
124
108
101
156
133
54
59
54
98
95
158
112
96
122
191
85
111
92
182
110
91
117
156
137
82
98
198
139
133
114
108
113
149
113
94
123
81
128
81
128
120
97
89
108
87
121
99
88
132
102
146
100
84
115
96
116
113
83
98
90
108
100
113
103
159
128
117
78
123
145
99
125
92
83
108
106
104
138
83
88
157
93
74
86
103
102
98
121
109
188
130
110
126
155
156
93
49
137
115
133
149
126
156
158
124
89
93
81
108
133
121
82
101
168
108
138
140
114
128
95
45
79
83
162
108
164
122
96
113
181
95
114
113
171
118
54
119
133
80
84
136
117
54
156
125
122
139
117
117
110
145
148
125
116
133
102
111
97
96
104
67
129
96
115
99
54
129
127
106
110
69
83
132
148
143
127
102
199
149
122
103
177
102
125
127
157
91
127
102
132
177
118
126
112
85
93
93
99
128
113
118
71
92
188
98
106
85
137
120
124
125
97
125
129
191
148
135
145
98
119
125
95
133
116
102
105
109
87
83
91
126
109
120
94
102
54
95
148
163
95
158
86
103
107
100
54
78
144
131
122
155
135
146
54
190
93
133
143
107
163
104
171
112
133
82
100
89
149
54
163
117
150
95
103
82
129
91
95
107
135
98
122
120
123
49
151
108
110
61
115
119
109
75
122
107
167
121
138
117
98
148
116
110
103
98
130
154
81
127
80
111
107
135
128
95
126
110
123
145
92
138
106
109
108
147
110
132
132
113
106
115
163
134
73
136
99
104
185
98
68
49
107
77
108
103
77
127
154
102
108
105
130
118
142
79
95
67
49
54
147
122
94
161
111
145
126
105
122
128
82
141
108
169
107
140
180
120
137
69
105
107
93
108
133
109
82
138
159
87
93
94
81
81
96
160
105
112
95
101
200
155
102
165
80
82
81
122
93
69
85
98
131
100
117
67
107
87
117
138
93
87
123
122
91
65
174
105
104
138
141
140
54
80
92
109
123
107
54
110
137
74
133
145
87
105
133
54
106
133
61
135
102
120
93
104
81
128
54
127
82
101
84
108
108
135
95
157
54
177
159
76
125
117
130
89
154
106
127
130
90
162
49
172
118
180
87
133
90
118
146
59
92
95
99
70
90
126
102
72
151
97
99
93
146
85
127
87
91
135
118
150
156
121
201
107
118
144
108
186
100
157
132
89
128
98
104
146
132
113
117
111
54
83
200
200
102
125
134
98
49
81
102
143
138
154
111
147
118
120
106
95
115
162
114
145
135
83
156
83
119
139
200
102
140
102
191
113
137
107
95
93
112
137
49
148
68
151
113
78
76
128
154
148
93
135
49
85
61
144
122
124
131
114
133
93
133
140
106
99
103
82
163
144
128
151
112
42
218
105
103
153
113
124
164
155
112
108
120
114
105
131
78
200
133
89
99
103
137
145
138
122
109
117
111
110
161
149
113
129
106
102
107
113
129
108
136
108
74
54
81
83
133
153
103
54
83
131
98
98
104
133
158
77
146
145
90
109
134
102
140
148
129
133
177
147
115
150
145
97
149
179
141
119
132
183
132
84
98
91
103
102
83
102
151
104
120
148
74
102
69
81
111
82
116
117
128
87
98
128
154
103
96
95
182
139
91
121
147
59
122
74
133
108
76
99
93
123
114
143
137
90
153
74
93
106
131
107
133
122
161
82
93
137
114
82
97
67
136
158
119
93
152
163
83
83
119
199
87
49
54
147
151
147
101
180
138
88
130
76
173
97
129
90
145
143
83
85
96
101
137
49
88
103
102
128
82
127
105
100
120
103
119
118
107
49
54
82
160
83
81
90
91
95
120
81
160
93
120
102
82
83
49
127
82
129
141
108
109
99
139
95
147
113
123
85
140
90
79
115
158
125
117
93
89
140
59
139
82
74
77
98
98
118
101
76
194
98
103
108
113
84
125
121
74
149
148
121
133
105
102
118
103
128
126
125
54
104
72
147
98
54
149
134
132
135
165
103
101
102
82
148
115
120
116
113
123
95
68
112
104
107
103
93
140
90
107
61
125
162
102
144
98
81
147
123
91
134
168
105
133
81
147
150
102
95
106
49
109
105
102
68
110
148
119
102
156
173
124
68
108
91
175
115
108
139
115
156
123
147
106
141
177
151
116
119
146
151
83
97
142
133
128
65
125
83
151
116
97
95
137
129
145
111
135
82
91
106
54
154
85
95
106
49
115
118
122
118
117
124
95
107
126
147
99
101
130
90
115
108
218
157
104
128
57
117
115
112
137
105
127
81
108
161
81
158
147
118
143
118
90
61
54
145
96
98
148
131
140
74
171
90
126
161
131
95
78
121
110
155
140
116
76
95
97
54
145
90
148
93
185
94
98
107
131
76
86
124
54
135
59
141
77
133
85
111
113
192
140
102
125
108
102
87
54
140
73
108
106
169
54
122
90
114
113
54
105
143
107
67
133
97
137
147
87
131
96
140
145
168
135
90
108
123
118
163
120
105
148
94
107
113
114
98
122
87
54
94
142
79
173
98
132
102
128
93
94
177
115
103
98
49
75
95
119
139
169
148
98
177
98
161
108
99
97
98
153
157
96
138
106
54
74
91
112
92
147
108
150
133
54
125
74
98
125
119
143
184
59
82
151
98
111
116
99
116
90
146
103
101
159
118
124
106
168
109
129
98
128
124
129
153
95
92
128
98
116
127
93
125
144
108
81
158
87
102
152
100
115
106
91
85
105
116
114
49
95
144
74
119
154
67
98
146
144
80
102
54
81
119
87
127
133
54
67
75
87
158
109
54
116
139
133
115
108
78
121
122
132
121
167
108
102
98
98
87
109
95
132
135
124
137
81
136
109
120
86
87
173
73
106
103
81
96
115
107
105
128
78
143
81
145
135
108
82
82
180
136
133
98
162
54
95
67
108
143
94
143
114
106
93
82
85
123
92
87
97
77
162
98
106
87
146
102
101
110
98
128
103
95
96
153
180
74
128
106
120
116
94
140
129
54
117
85
93
174
119
97
125
54
76
54
99
117
119
102
125
128
93
126
133
108
105
101
194
111
113
81
76
128
117
78
129
110
125
128
96
96
120
90
107
156
103
107
126
97
82
115
147
114
54
133
117
110
54
93
98
117
142
122
146
126
49
129
74
77
145
110
131
103
109
159
90
157
95
218
89
108
140
123
122
103
106
80
115
137
124
102
117
113
122
113
94
98
119
87
127
126
109
130
74
125
219
116
116
98
97
137
138
111
150
135
108
139
98
130
78
103
130
109
125
54
120
85
88
116
79
131
83
162
163
108
85
145
118
97
113
125
49
112
112
138
148
98
123
83
133
104
129
103
135
116
141
168
96
78
72
117
77
102
108
87
186
144
74
54
119
143
138
145
91
108
110
98
149
144
49
128
90
54
97
129
124
164
77
126
114
109
74
133
115
138
137
49
129
90
95
104
158
84
116
103
146
112
103
145
142
134
93
147
110
89
175
79
103
145
129
61
78
126
135
114
111
59
148
95
94
114
129
107
119
153
125
133
108
115
159
54
115
76
78
140
118
115
105
157
127
108
155
54
69
132
113
102
87
125
90
97
89
74
171
156
154
93
141
65
150
129
90
158
91
177
190
93
107
104
138
67
98
102
186
177
131
157
153
108
103
119
127
136
110
141
78
141
102
163
121
135
106
132
98
95
170
89
147
105
90
85
121
93
124
82
114
128
103
96
82
90
74
128
127
108
194
146
59
54
76
90
160
87
132
87
61
124
122
108
133
116
132
88
163
81
104
89
99
135
135
49
133
67
133
143
68
93
59
100
115
127
177
88
163
141
154
98
144
123
148
105
145
106
93
124
123
122
103
81
120
80
81
107
196
98
97
131
86
104
170
113
54
108
131
127
102
108
127
83
102
100
146
111
138
77
62
119
158
86
103
68
118
148
148
100
139
150
94
95
137
128
154
104
98
130
101
126
146
111
128
133
124
125
133
148
120
105
82
68
93
148
125
135
87
125
67
118
117
54
74
79
54
121
105
120
82
160
140
150
84
109
79
81
95
115
95
105
134
91
98
81
54
162
90
157
85
151
137
102
73
121
110
77
123
98
125
144
217
145
104
90
82
93
110
105
94
59
144
121
87
148
77
112
200
104
162
108
103
101
120
98
98
136
172
168
155
127
92
120
127
125
95
168
147
109
114
106
146
54
98
149
137
101
163
127
140
143
171
100
148
116
102
134
132
127
113
133
97
107
113
115
115
54
84
87
117
49
74
95
59
195
108
139
108
85
138
96
98
90
177
131
151
96
127
125
131
92
144
115
151
121
162
159
76
108
105
143
141
165
102
106
77
128
85
136
118
93
112
103
74
120
106
54
102
148
99
123
169
121
103
135
125
155
125
109
98
144
119
111
95
104
153
103
102
93
87
123
81
49
112
103
144
146
113
136
80
149
121
113
76
107
100
193
107
90
155
113
146
118
119
162
96
147
140
126
113
112
117
93
162
145
127
113
144
131
81
160
113
115
95
89
109
54
100
79
68
81
82
117
102
103
121
106
49
115
127
145
54
103
108
109
89
148
104
179
90
110
135
125
106
99
127
98
120
101
109
118
108
188
103
91
137
139
128
153
168
133
102
131
172
91
136
54
122
129
157
82
81
156
89
106
127
141
99
59
103
166
109
103
93
103
148
76
123
177
158
100
141
125
148
149
155
113
141
116
128
101
139
155
135
104
141
130
59
111
54
141
149
131
136
98
125
54
143
112
76
145
79
146
174
113
145
136
169
160
102
85
128
123
98
118
180
165
94
85
104
98
96
107
119
108
129
121
102
158
98
74
146
141
69
98
116
112
106
136
127
103
110
108
158
106
75
81
113
113
86
158
161
96
54
139
93
180
155
143
134
142
74
114
74
110
108
97
150
160
103
142
111
107
113
147
127
115
102
114
81
121
132
168
118
102
120
165
125
105
178
148
95
111
156
102
138
140
110
168
142
109
116
127
81
132
93
102
111
67
124
141
119
98
191
146
102
80
124
103
134
130
98
144
128
82
157
69
145
120
108
139
177
90
139
95
121
102
113
118
191
95
134
91
107
172
155
100
113
87
121
100
131
119
122
112
125
155
90
90
115
54
77
144
110
82
119
186
98
102
138
126
137
157
74
127
147
172
93
85
104
163
140
158
81
140
77
118
115
127
180
143
170
69
105
95
122
111
125
148
112
136
129
123
133
125
81
126
74
54
77
67
88
140
101
119
102
133
107
83
139
109
82
134
102
110
119
135
123
103
84
140
144
126
116
109
102
97
172
127
113
98
124
128
103
147
73
95
124
116
154
124
126
125
95
145
135
130
214
119
54
54
149
158
83
91
155
105
95
107
106
70
97
123
100
93
76
162
78
112
109
115
105
141
95
54
90
101
120
74
155
136
68
104
68
87
115
74
145
95
104
91
79
138
125
89
140
80
121
90
121
165
140
135
95
106
107
98
157
78
103
116
102
102
111
114
54
163
95
167
61
116
127
109
54
106
123
82
114
145
125
92
118
177
134
76
128
102
111
106
102
93
76
119
158
143
114
118
144
98
112
117
111
140
98
142
119
68
144
137
159
158
54
116
167
97
134
101
143
107
167
54
74
133
121
153
96
79
97
148
135
106
103
98
87
100
114
158
78
107
98
139
115
144
45
106
148
148
106
86
95
54
119
78
93
74
158
177
125
95
119
121
96
152
86
125
154
142
147
138
91
104
54
81
134
115
121
54
145
108
112
133
103
138
160
137
179
105
75
54
102
172
113
159
158
108
108
145
106
158
82
116
188
137
95
161
135
119
136
112
80
110
118
138
140
175
131
118
54
110
125
100
130
128
141
100
94
95
54
96
125
106
150
76
140
102
54
97
118
107
103
87
125
126
114
122
98
167
117
134
115
98
165
143
133
103
142
95
109
97
127
113
105
106
114
124
100
178
167
90
104
143
134
118
119
103
167
146
143
135
125
90
81
131
160
146
144
120
126
113
133
81
54
99
68
111
148
124
90
76
106
122
110
110
125
175
98
160
163
84
103
149
120
148
103
100
117
108
54
104
139
108
81
80
59
105
130
137
125
96
113
103
123
93
136
142
98
158
113
127
113
94
110
87
143
91
144
145
68
54
84
126
103
142
110
142
90
92
95
130
127
129
95
148
142
69
98
140
96
54
138
136
125
112
108
89
120
125
100
103
100
110
180
140
123
130
84
107
110
197
112
118
126
73
143
97
84
81
122
112
118
146
131
93
59
114
96
171
113
129
121
59
157
115
121
169
128
97
122
98
98
155
54
100
118
73
111
134
141
68
59
100
136
103
74
80
84
135
136
145
123
112
177
137
127
120
105
80
54
77
141
130
111
91
105
172
144
90
139
145
77
95
74
110
102
116
111
81
165
100
146
157
89
126
133
145
104
146
125
177
118
102
74
107
129
54
125
126
99
128
98
124
127
147
200
133
169
126
124
54
131
49
49
139
142
74
118
106
113
77
115
92
135
128
148
109
115
93
101
87
79
54
125
61
143
132
92
113
156
143
125
152
171
123
123
125
127
127
106
108
69
112
54
128
74
162
103
149
93
81
141
95
92
78
148
133
81
132
54
156
65
185
163
100
54
137
161
133
128
103
108
80
109
109
108
98
73
103
87
93
138
136
148
128
200
125
89
98
115
96
158
187
133
136
106
95
95
159
131
54
73
140
81
103
102
100
186
127
120
94
135
103
49
117
153
98
116
102
160
127
109
87
152
74
82
98
98
69
76
200
132
165
123
146
149
148
143
127
78
143
137
133
157
128
128
82
54
116
133
95
59
118
141
119
97
108
124
108
158
118
118
126
116
98
120
157
153
111
54
101
105
136
130
151
94
133
117
143
121
103
92
128
94
96
105
104
98
95
78
125
114
126
155
136
79
54
123
114
104
128
95
113
130
151
149
105
45
97
95
141
164
69
155
91
89
94
92
105
87
98
81
129
116
108
111
82
117
157
129
179
87
139
106
90
76
114
181
95
102
59
147
133
95
96
122
135
116
102
89
102
70
98
59
95
134
134
103
120
107
78
109
90
173
146
168
116
140
133
83
140
158
49
136
112
153
140
152
151
133
162
106
133
74
139
84
124
156
85
94
125
134
102
106
80
85
81
132
91
148
198
123
66
117
113
158
82
95
100
112
126
111
102
122
54
100
98
130
71
93
110
155
77
127
118
158
80
108
89
131
123
96
97
127
97
77
131
123
139
81
93
149
134
87
105
126
105
54
120
115
93
54
77
134
87
115
81
131
123
108
111
102
108
146
96
119
148
98
104
122
148
175
119
102
108
105
98
164
81
133
85
98
129
84
166
100
96
136
84
148
129
54
101
157
103
113
69
133
158
127
88
59
123
108
91
135
83
127
102
81
128
77
98
108
127
108
98
93
144
110
49
140
103
169
78
59
129
134
96
80
103
158
115
141
77
108
78
89
103
108
54
78
83
54
120
100
79
115
106
143
89
135
141
129
105
160
150
97
97
45
167
59
122
163
118
119
135
148
68
104
125
119
132
147
100
103
54
92
98
139
100
124
131
59
128
147
137
102
193
161
133
87
113
120
108
54
112
122
119
107
121
160
98
122
103
231
67
112
100
131
133
113
54
83
159
117
119
79
129
116
153
118
74
82
102
148
115
140
133
95
68
123
115
110
77
102
118
132
122
123
172
132
98
125
131
106
123
118
123
81
116
119
178
135
108
153
155
120
181
131
109
128
90
112
123
159
159
98
93
137
82
99
120
54
155
77
103
82
143
135
110
81
54
80
114
81
111
120
86
85
106
190
73
147
145
54
92
121
98
135
130
124
94
160
146
95
83
73
107
115
120
103
112
82
49
104
145
120
102
129
68
103
54
101
84
124
85
125
89
109
96
129
148
125
147
146
61
108
173
95
134
137
147
117
108
133
87
127
100
120
94
103
84
122
122
136
81
106
133
136
57
81
87
108
95
113
134
130
100
123
143
141
110
110
104
90
108
104
102
118
95
94
77
104
113
90
123
82
131
78
94
149
54
105
135
130
112
96
139
82
77
136
102
141
146
140
119
81
154
138
144
106
102
95
177
140
187
155
101
54
108
148
101
108
130
103
122
159
102
93
93
135
119
86
86
108
95
113
101
133
148
122
91
153
141
115
133
135
109
69
90
93
129
161
54
94
95
98
129
102
164
113
59
125
54
102
147
68
127
154
108
104
186
104
105
112
80
117
108
102
131
110
113
76
102
137
104
136
113
122
103
125
94
103
127
108
90
103
147
105
112
130
82
85
127
103
98
68
134
122
140
95
103
125
122
117
110
177
98
194
96
149
93
128
69
105
108
154
114
132
137
129
151
98
61
114
120
165
113
54
113
85
91
67
146
87
131
102
141
129
132
168
59
97
125
171
102
77
134
80
76
115
119
123
94
127
91
118
93
49
131
119
114
85
153
103
74
97
130
102
157
91
135
102
87
128
95
145
139
143
128
147
120
145
112
140
116
67
74
157
69
85
112
123
107
74
132
54
74
95
81
76
87
128
150
148
108
92
128
74
76
133
81
108
148
106
129
108
125
77
59
99
95
161
86
157
152
121
146
123
82
148
97
98
74
145
106
146
98
81
76
124
146
59
107
148
84
144
113
119
90
144
107
140
95
78
119
183
166
103
120
104
77
109
120
113
162
54
93
100
125
100
142
78
124
90
107
86
92
107
133
97
128
165
96
108
135
160
102
116
118
115
87
139
106
116
122
145
148
143
124
108
76
98
168
108
158
81
144
118
112
94
102
144
96
104
98
148
143
132
105
161
54
59
66
177
144
194
144
81
143
92
57
107
96
137
121
119
151
49
121
127
158
132
115
95
76
207
72
112
120
147
104
129
105
108
102
76
161
150
189
144
145
116
200
85
97
100
174
54
141
141
78
115
104
81
149
119
91
99
108
91
116
111
54
125
103
120
49
130
113
102
94
131
116
78
91
152
113
49
82
54
119
122
136
75
90
168
153
95
81
139
136
61
146
125
131
107
113
113
141
91
93
142
76
81
126
125
68
54
177
98
102
112
104
81
81
117
166
131
108
76
116
54
143
102
119
121
149
112
142
91
133
200
145
158
93
87
93
59
112
87
69
98
122
118
54
59
104
88
150
77
98
129
77
129
90
179
105
147
130
84
103
54
105
94
115
102
135
81
113
98
105
143
76
61
77
148
91
107
93
135
69
102
83
138
132
95
133
148
97
108
107
127
147
106
86
124
95
129
118
81
143
111
122
81
100
145
146
110
59
108
102
105
131
106
119
125
157
81
90
81
142
112
159
147
83
125
95
98
77
126
90
104
117
111
113
68
101
127
105
134
102
124
168
124
119
122
94
98
94
98
93
115
102
167
131
102
81
65
97
155
108
93
83
149
110
116
82
98
54
141
110
169
120
71
144
104
106
144
122
144
129
145
98
93
115
155
120
122
93
107
95
122
49
128
182
108
141
140
99
54
126
54
96
145
109
83
87
103
135
133
95
126
138
179
151
133
163
108
148
146
114
126
90
140
123
103
105
74
125
77
96
148
98
81
119
120
82
151
120
112
124
91
54
74
91
101
77
153
120
122
120
87
98
114
123
105
142
140
145
85
103
162
78
136
73
108
112
103
103
150
104
112
138
49
144
59
83
81
49
135
98
106
150
77
102
177
87
108
107
155
114
102
133
54
103
144
108
139
118
142
140
165
142
147
89
143
95
81
96
107
81
153
135
149
132
81
109
131
101
98
120
102
93
137
69
125
108
122
91
134
135
108
93
128
165
59
144
154
54
125
107
87
147
157
116
97
126
113
145
94
127
134
106
173
109
115
138
130
95
68
111
153
54
114
125
113
96
174
125
177
104
114
91
61
54
143
98
111
126
149
59
143
109
116
102
54
117
49
109
111
96
99
85
81
98
89
115
151
77
93
106
108
54
93
76
149
130
155
59
59
164
78
93
115
77
186
106
108
93
82
74
115
123
108
122
110
127
118
103
106
100
146
98
54
184
111
102
106
92
129
151
126
121
177
118
82
129
102
101
123
107
94
112
89
146
119
158
102
68
167
134
122
143
124
166
81
92
148
105
81
143
91
83
49
85
85
112
130
150
129
110
106
124
71
95
131
79
123
144
77
107
98
99
59
172
133
117
127
106
146
144
96
167
117
122
81
114
130
147
59
95
144
83
130
112
133
137
116
137
54
143
150
81
102
54
80
133
165
103
123
169
110
77
177
90
95
116
135
106
95
122
105
126
109
92
120
96
137
94
114
120
135
134
122
99
91
139
132
97
54
125
89
93
49
95
145
133
108
99
182
148
118
78
159
57
143
166
106
68
134
164
107
154
85
108
128
150
115
141
122
125
169
139
87
84
125
61
96
100
123
75
69
118
102
107
113
54
107
79
148
102
147
109
91
107
102
54
139
89
93
160
74
76
98
139
131
139
97
49
100
74
54
158
97
103
74
91
95
134
113
146
74
152
120
107
138
103
161
109
129
107
85
122
96
114
160
81
113
129
102
99
77
181
90
148
127
76
162
116
142
117
107
67
170
133
108
98
134
114
114
193
105
122
87
100
111
223
219
125
91
127
120
69
139
112
122
108
103
102
89
108
120
54
81
154
83
120
114
149
158
95
81
129
107
80
144
184
122
110
190
81
148
102
127
107
102
103
182
106
114
92
112
82
139
134
131
140
126
73
125
130
98
147
131
206
110
130
129
143
123
111
103
54
100
103
103
133
93
177
117
86
98
125
148
102
91
88
106
125
101
96
83
180
114
101
111
98
108
137
95
102
98
147
120
95
103
87
156
141
186
157
72
101
112
118
139
93
162
130
149
115
95
133
140
108
81
105
102
116
87
84
57
147
122
87
107
128
90
128
116
77
54
144
133
136
93
49
144
115
129
126
86
98
98
106
133
167
168
98
129
102
126
108
119
123
135
116
142
49
110
128
73
115
143
135
123
108
108
145
136
127
136
98
105
142
94
163
148
133
96
160
95
204
98
95
160
143
179
54
134
59
127
199
86
85
159
102
131
102
135
131
122
118
113
136
146
130
83
149
120
106
102
166
144
98
128
98
195
105
81
105
141
139
77
153
157
95
95
105
102
123
165
102
127
138
175
135
102
95
102
127
92
133
129
103
147
78
77
140
99
124
103
125
135
122
96
123
91
98
84
90
122
124
102
127
119
74
110
157
116
88
88
99
82
131
190
108
61
169
98
171
59
54
113
128
140
102
107
175
130
160
49
54
125
119
105
76
128
141
54
92
147
107
158
106
76
68
90
106
115
156
157
124
108
95
117
131
69
54
82
145
147
108
87
130
68
97
135
142
54
108
61
132
97
115
108
94
105
123
115
140
156
102
194
161
143
178
86
122
69
49
122
123
138
101
132
91
98
107
81
76
119
180
76
143
97
91
159
110
130
153
165
79
108
97
165
54
114
127
185
131
95
145
133
111
91
139
122
148
169
59
174
76
78
112
103
113
143
91
108
54
85
124
128
145
103
158
139
112
161
91
103
139
193
139
69
163
98
153
91
54
125
103
148
78
81
135
131
94
122
96
116
111
169
149
59
125
105
128
120
95
118
65
105
113
95
113
148
69
103
54
118
76
128
80
97
98
54
169
107
128
144
93
127
129
135
109
93
100
98
177
94
81
172
135
108
54
144
105
122
98
131
49
118
129
87
102
114
107
128
123
87
108
139
113
67
87
143
121
134
87
158
124
113
105
104
91
95
101
94
101
102
138
81
125
125
120
108
155
116
154
102
132
95
94
103
158
95
67
148
169
110
110
87
133
118
113
102
84
149
91
89
116
84
149
94
97
125
105
103
112
148
101
81
113
138
95
108
61
119
79
115
140
102
148
98
109
113
93
149
129
108
150
94
123
84
148
49
151
96
103
112
69
127
143
161
123
95
109
123
116
113
107
114
143
57
88
106
107
129
119
104
115
108
119
115
170
95
142
133
97
106
118
102
127
127
95
148
108
92
85
106
107
197
126
187
146
49
89
61
99
127
108
144
100
77
149
96
131
103
54
54
129
120
180
113
149
125
113
49
187
132
108
127
108
165
123
110
102
181
109
159
143
70
138
88
95
142
159
74
127
143
133
80
127
93
78
162
94
84
54
113
80
102
116
118
98
103
115
82
113
93
81
117
54
49
145
128
127
148
130
49
113
149
81
106
143
144
135
119
96
140
140
98
124
54
125
128
138
91
100
106
113
128
93
103
81
148
143
136
81
102
112
105
95
142
120
132
141
141
108
167
113
103
90
125
132
125
98
131
99
79
113
96
54
146
113
102
121
186
100
98
172
112
107
67
175
120
102
103
102
128
121
49
148
101
123
128
92
144
147
135
98
74
83
132
125
113
164
87
205
109
145
147
78
125
101
75
49
118
172
120
94
136
148
157
133
121
127
113
112
168
122
114
86
122
90
135
81
59
95
59
137
146
113
147
130
124
115
93
83
96
83
86
98
118
166
59
128
124
87
124
123
128
134
115
54
54
49
104
81
144
140
146
98
92
116
118
156
116
151
140
157
120
72
154
118
91
156
104
150
107
96
106
191
100
108
78
108
87
162
124
173
119
95
98
93
106
118
142
119
123
151
132
165
99
144
102
108
142
106
111
76
85
122
95
123
140
87
128
117
95
180
113
178
152
145
87
123
112
123
102
84
95
186
108
107
82
144
59
179
92
86
89
116
114
69
103
157
107
87
77
100
83
126
54
106
81
102
194
134
122
84
82
110
131
139
54
92
178
110
158
110
125
149
134
54
138
131
113
54
74
81
54
144
89
142
104
82
127
178
148
102
132
168
116
96
81
93
108
179
91
173
85
103
152
110
106
183
103
173
94
167
130
165
162
155
83
135
113
113
131
127
169
142
99
130
105
94
120
164
177
90
54
117
111
112
89
122
156
178
103
141
147
54
159
121
113
54
111
107
130
145
108
122
131
68
82
124
54
106
117
116
115
138
125
103
107
145
103
103
110
125
83
96
140
147
157
77
125
49
125
145
141
80
107
112
108
54
78
126
140
148
157
69
76
174
133
126
162
134
92
113
113
131
141
129
68
95
119
123
103
125
94
105
125
134
91
102
153
151
97
157
90
129
155
128
106
82
68
127
109
77
59
160
95
103
113
140
102
87
135
74
128
61
131
108
136
90
81
117
108
105
148
120
163
148
107
105
132
69
95
98
102
120
91
61
115
102
127
54
92
144
148
119
82
118
138
106
74
108
152
94
98
127
102
82
140
87
70
131
154
54
98
79
132
129
148
121
74
147
118
102
91
132
141
156
131
131
49
125
161
95
97
82
81
122
99
117
112
146
91
118
234
82
103
54
160
98
120
125
177
96
97
121
135
110
132
105
113
108
132
143
146
129
167
155
54
130
131
92
98
98
156
113
112
108
95
101
122
125
78
139
125
158
142
127
98
154
118
81
135
110
80
114
120
146
171
168
120
90
132
133
54
138
93
120
110
134
132
167
99
72
118
99
174
144
106
98
107
152
85
83
111
121
122
147
80
159
102
114
69
146
90
93
148
129
101
102
168
127
145
168
107
126
136
112
100
92
92
113
128
137
83
165
135
83
153
151
141
95
101
105
74
143
150
120
120
148
102
148
137
111
85
117
106
129
124
192
144
89
197
145
125
131
107
102
185
101
88
125
146
108
117
81
114
108
117
96
111
111
49
49
95
119
127
98
120
158
84
102
181
111
158
123
123
98
103
133
113
121
149
75
107
108
174
117
103
76
133
89
103
96
145
126
129
195
83
149
130
119
139
78
67
82
119
118
113
91
113
169
144
105
143
122
121
107
159
122
125
128
127
134
99
109
103
148
77
88
114
118
102
161
158
148
102
133
73
69
59
131
102
96
116
93
101
143
49
93
118
111
171
102
123
96
95
109
108
156
67
76
74
106
148
156
166
103
131
100
147
108
90
100
112
127
128
95
78
166
145
163
143
74
103
102
95
91
135
115
153
90
95
104
120
137
123
127
49
134
115
104
45
152
90
174
101
121
112
108
107
107
133
113
113
116
127
102
108
119
165
92
95
157
112
118
128
142
104
76
129
88
74
98
121
88
122
145
133
122
98
95
95
144
115
135
102
150
140
152
137
70
113
137
140
102
133
156
128
82
82
125
131
114
104
114
103
118
114
129
80
87
107
149
133
102
100
147
69
81
169
78
93
128
88
128
178
124
124
102
139
114
91
86
87
109
103
97
103
117
158
77
96
108
104
116
145
76
104
104
82
87
93
119
146
124
127
98
121
140
100
104
108
91
134
100
76
83
143
142
89
82
139
89
97
140
99
150
67
76
98
81
148
139
131
87
118
138
75
153
158
98
151
115
139
146
90
95
105
90
95
108
125
54
116
151
121
109
102
92
95
102
68
103
140
109
96
128
114
143
105
54
174
108
94
54
90
120
120
133
101
102
91
119
98
103
124
138
112
103
150
107
122
133
143
125
59
101
96
104
134
126
78
125
119
78
80
125
124
147
92
152
107
122
98
113
127
177
100
115
84
103
131
101
161
106
108
113
153
153
74
146
49
106
178
144
127
108
108
95
81
155
115
93
154
111
81
140
122
90
59
128
121
116
180
83
129
111
117
108
128
145
144
115
78
102
102
146
91
86
76
104
108
163
180
125
94
91
118
144
184
123
148
98
54
98
143
85
103
84
128
112
106
54
142
109
118
102
115
108
179
162
141
105
95
76
98
122
151
171
107
105
107
98
157
118
107
108
83
120
127
143
132
181
105
49
98
108
93
140
108
135
102
111
91
138
107
122
91
128
103
148
148
115
110
54
85
149
142
133
110
102
143
87
91
107
118
124
102
74
148
93
154
146
111
129
103
88
151
103
128
142
123
143
179
108
139
163
107
141
78
139
102
161
106
78
155
140
175
118
98
99
128
95
101
90
99
70
98
125
124
91
125
54
77
54
146
122
115
107
128
133
100
162
125
91
81
133
128
82
96
131
144
134
177
107
140
102
93
102
108
102
159
54
115
129
125
95
128
54
114
98
100
186
126
116
106
113
177
111
147
111
94
84
122
95
75
85
108
139
109
138
138
107
111
102
117
95
105
149
135
103
148
161
177
153
118
70
132
103
103
67
132
103
145
124
143
84
148
116
76
148
135
49
114
164
98
144
76
124
73
101
115
105
145
90
84
108
158
68
62
98
96
91
76
112
82
98
87
98
109
120
131
133
144
104
108
98
95
119
90
95
90
146
115
158
102
144
180
67
73
104
49
142
91
131
105
135
97
108
135
126
95
135
116
91
109
105
102
74
153
141
130
102
133
98
97
125
89
96
128
143
158
106
98
132
68
110
148
102
100
94
131
121
163
109
86
100
148
59
95
159
146
102
145
85
110
144
133
118
145
161
83
91
108
147
102
103
42
146
88
135
135
160
102
119
98
54
116
54
70
149
114
148
161
96
91
137
131
112
115
165
156
115
102
99
110
120
158
98
138
93
84
59
172
148
165
127
111
110
104
140
98
76
81
125
109
134
93
112
106
59
98
156
76
54
68
112
131
147
49
127
133
132
134
140
88
81
139
165
164
151
148
165
93
87
140
161
122
135
108
113
135
78
109
168
119
122
95
122
54
94
127
120
151
95
67
126
159
131
188
140
114
144
119
108
108
150
160
96
128
143
109
113
108
132
69
122
113
105
141
123
122
67
115
125
124
138
154
81
100
143
95
59
158
124
102
108
134
145
107
145
121
108
82
95
74
124
142
138
129
54
95
127
111
133
95
119
87
116
164
121
125
97
76
165
129
106
133
131
101
117
98
99
117
91
200
74
137
98
49
61
95
106
122
108
184
148
81
95
49
142
83
71
117
112
91
191
114
164
146
74
143
145
127
57
142
143
165
128
112
132
112
153
81
110
102
145
116
131
117
108
92
180
82
120
106
54
88
106
98
91
103
83
130
153
148
155
120
128
160
163
78
144
98
74
146
98
98
110
153
103
124
131
104
133
144
149
113
128
179
108
140
144
135
108
135
158
143
54
120
127
84
106
161
87
103
125
121
149
67
98
97
92
100
120
129
117
118
115
102
96
124
90
155
133
130
59
138
143
131
174
54
153
150
211
133
131
87
120
127
140
98
113
108
149
94
144
117
81
116
137
131
97
134
118
109
159
118
158
122
87
97
136
133
153
128
119
136
54
98
73
194
158
115
143
127
122
141
54
105
104
122
119
140
149
111
134
115
110
87
143
113
89
108
155
161
116
117
105
123
59
108
143
95
115
132
125
83
149
130
103
102
100
106
102
142
95
111
131
100
87
128
120
127
110
110
54
100
145
82
96
96
74
92
131
103
118
102
142
169
114
194
68
126
54
108
95
130
136
158
90
114
88
148
138
54
119
107
105
95
118
92
117
115
81
111
125
122
96
103
102
98
121
112
102
79
108
160
107
98
125
108
148
54
153
118
143
59
90
158
122
138
120
108
149
122
126
146
117
136
143
131
86
115
135
102
135
103
105
146
54
102
99
165
83
96
54
102
128
73
103
112
116
131
118
105
89
78
140
140
101
144
74
95
161
177
143
98
135
116
87
129
94
129
80
94
98
124
182
96
158
109
162
102
115
101
106
102
101
102
135
54
102
103
102
99
98
86
117
136
160
120
162
61
67
114
95
164
136
82
74
140
145
95
185
129
96
97
61
143
97
148
144
120
156
128
127
97
102
105
97
77
124
138
118
124
98
116
122
76
158
101
135
129
121
145
59
125
137
95
112
82
191
124
102
102
108
144
150
105
177
103
131
84
131
130
140
112
87
192
97
128
148
151
162
128
95
133
138
81
116
98
97
129
89
85
108
54
98
105
108
89
74
129
91
98
105
67
113
123
106
93
100
136
112
138
95
125
95
91
74
148
68
81
113
98
148
119
106
116
59
131
113
107
160
173
131
105
160
102
128
125
119
197
77
131
177
117
125
76
104
110
81
117
134
146
128
151
143
117
69
91
95
129
129
151
103
95
122
161
138
93
93
93
108
82
138
81
118
148
149
97
154
152
118
96
129
139
147
54
160
105
74
87
164
90
125
111
103
145
128
90
97
90
157
88
102
114
145
92
158
133
135
108
80
84
109
81
120
59
93
103
124
91
94
83
156
93
145
171
92
116
114
143
117
98
93
103
146
54
107
135
103
131
161
171
123
144
117
140
114
185
91
149
74
97
127
113
100
105
165
61
108
123
129
115
127
54
114
82
158
130
173
129
124
98
140
104
158
107
54
82
82
59
108
115
125
138
94
96
80
128
54
165
68
149
156
177
123
177
167
98
119
113
93
105
146
156
104
95
118
103
81
106
111
157
115
154
82
141
133
95
101
128
160
148
108
84
95
93
91
105
123
107
91
112
186
113
98
113
102
128
147
102
126
134
158
69
138
138
85
160
98
102
81
118
136
125
98
140
76
76
77
152
90
95
108
74
179
81
112
150
102
81
141
74
74
111
95
82
108
79
102
124
147
108
167
111
128
94
96
103
144
154
96
94
54
90
127
152
59
135
91
103
105
156
168
101
126
62
188
126
144
93
126
121
93
128
101
107
158
103
98
69
97
59
139
95
124
117
81
108
142
106
127
130
148
107
120
109
78
54
82
105
59
54
110
54
97
120
78
122
145
69
120
77
100
140
83
90
164
113
112
151
54
121
95
98
145
140
125
79
113
143
106
150
179
96
115
49
135
124
87
135
131
124
98
93
91
83
59
74
76
141
102
194
128
121
126
109
129
97
108
87
123
109
145
113
91
54
95
54
54
119
136
115
85
116
122
128
104
95
124
135
105
129
134
95
112
144
94
121
129
148
96
76
95
154
91
98
105
107
132
110
76
95
116
83
111
111
54
65
119
144
108
106
106
95
78
105
91
83
208
98
81
54
108
139
137
151
81
111
112
177
117
125
124
103
110
166
85
148
145
138
124
141
140
103
125
77
169
91
103
155
92
117
122
87
154
105
136
144
83
134
109
103
87
109
107
124
152
97
139
81
100
149
136
102
178
114
113
108
49
200
54
115
158
200
81
107
124
156
102
113
116
49
112
78
110
120
49
54
137
131
97
119
81
77
113
141
170
125
149
103
104
97
130
148
83
145
109
128
179
143
103
49
108
81
95
128
95
95
107
105
76
127
103
103
142
89
105
148
49
135
77
139
117
122
157
80
108
92
158
148
109
131
90
138
87
54
106
184
138
122
98
149
105
81
102
93
83
81
110
125
133
119
70
160
127
110
108
135
83
143
176
135
108
149
74
77
98
92
98
76
108
127
191
125
87
149
118
128
104
113
103
157
89
59
104
101
102
108
133
111
110
139
77
54
99
104
139
112
114
96
85
81
225
90
134
112
136
147
180
184
127
102
89
93
103
141
100
141
122
103
119
106
106
158
54
133
125
102
89
96
148
111
49
124
152
59
150
138
123
98
54
74
143
94
150
142
141
98
130
91
116
99
125
157
121
90
165
90
91
123
117
125
119
130
97
95
119
167
54
108
117
101
140
74
96
149
54
143
113
123
136
127
120
59
72
132
125
108
154
131
131
98
135
93
54
108
92
140
54
112
158
95
141
169
145
102
127
149
148
143
133
114
117
172
131
91
99
153
95
87
156
135
67
132
78
97
93
147
142
61
122
116
157
67
122
81
86
108
101
123
103
85
102
87
98
149
149
111
123
101
113
103
113
146
59
121
112
129
145
93
107
158
103
140
108
103
90
103
118
73
109
92
128
115
134
129
98
140
85
127
144
156
115
119
103
89
157
75
133
108
102
104
78
124
82
85
112
54
126
94
107
90
67
125
148
100
127
54
108
109
90
102
91
91
95
54
190
98
136
144
104
135
170
135
154
146
116
85
150
143
74
152
135
103
114
162
82
67
102
141
95
123
108
143
118
135
118
95
138
105
113
97
78
83
200
115
102
142
125
96
141
91
54
98
95
54
126
117
54
45
177
93
81
96
87
54
102
138
199
124
127
131
149
95
109
132
82
114
103
106
144
110
104
93
105
85
128
108
74
114
81
148
54
119
61
143
157
95
93
54
124
146
122
135
81
107
74
162
130
69
179
95
129
117
144
76
121
136
98
141
109
115
115
146
78
157
108
81
105
107
100
175
105
128
92
180
119
152
97
108
126
156
94
128
111
118
102
103
90
67
131
96
101
80
125
70
91
129
98
136
102
139
112
138
104
138
172
85
101
103
123
84
141
155
135
105
140
168
175
54
112
124
129
54
149
160
103
125
160
146
122
81
153
102
137
134
115
146
95
107
76
124
91
108
116
125
121
101
106
118
102
83
59
170
54
121
117
73
95
124
151
122
138
103
120
107
87
114
61
129
95
81
105
85
132
108
109
123
107
139
106
149
131
118
82
67
149
119
123
133
156
112
115
112
126
103
59
124
67
139
86
122
155
113
94
103
85
125
125
121
133
125
102
99
118
93
100
131
54
102
126
98
90
82
93
93
87
95
109
124
184
90
116
76
100
89
146
142
140
104
54
115
123
129
135
103
135
128
116
109
142
119
93
140
100
151
126
97
125
79
188
81
132
140
102
117
125
95
83
98
82
122
84
128
102
96
111
98
85
151
144
146
161
95
115
54
107
132
102
54
144
169
98
103
98
111
146
128
123
121
79
95
146
102
115
54
101
54
93
169
81
121
67
101
164
86
59
112
93
103
137
95
145
113
113
87
90
126
155
93
59
131
165
49
82
107
87
71
82
90
108
98
108
99
98
115
81
110
141
157
108
102
134
106
98
191
54
135
87
127
74
143
133
85
74
140
90
106
106
104
119
143
73
113
77
176
90
142
138
119
81
95
94
83
76
82
83
95
134
123
90
129
92
95
54
163
103
119
122
140
110
93
87
157
86
135
162
123
128
115
185
129
93
49
54
87
99
158
106
147
106
124
116
149
136
158
101
133
106
177
81
192
49
128
87
137
160
96
94
145
122
97
115
138
83
166
110
59
161
95
93
77
131
93
95
112
78
123
139
118
129
59
108
158
170
133
150
96
108
113
144
102
59
151
114
88
76
123
127
96
150
140
160
158
108
88
112
120
126
155
87
83
122
97
95
179
81
54
150
97
165
108
155
108
67
167
126
125
79
85
95
81
122
154
134
93
159
147
81
102
77
83
114
106
149
69
148
177
107
83
156
115
164
124
100
149
96
133
127
97
49
88
89
148
102
149
149
127
146
91
100
54
102
54
100
131
149
135
96
187
92
95
169
99
108
113
144
94
104
54
95
108
121
145
159
90
135
98
147
105
84
93
180
83
96
127
101
92
67
90
120
94
108
116
112
102
95
74
108
68
104
115
96
101
98
143
98
77
81
137
169
86
115
125
120
54
140
150
118
127
97
93
114
138
98
89
151
140
102
127
110
105
163
109
161
146
133
119
105
129
105
94
108
80
131
117
127
173
138
74
133
125
143
54
141
166
98
138
106
111
124
112
113
107
111
104
76
107
144
126
128
87
95
130
174
98
108
120
107
123
99
104
127
191
96
103
164
91
110
110
121
124
147
117
107
87
91
95
146
98
156
149
147
129
98
96
74
95
98
59
92
96
123
102
120
186
97
148
93
83
108
159
161
105
79
84
98
171
132
90
105
106
70
82
119
163
124
108
142
103
142
113
123
106
54
135
138
87
68
96
146
128
121
123
146
132
98
108
54
59
133
119
129
95
182
102
151
91
108
159
106
172
99
81
67
76
120
137
49
129
67
94
133
118
105
125
128
129
151
112
118
78
90
104
124
135
95
113
144
129
108
124
81
102
74
123
115
115
182
100
97
109
140
118
98
108
113
120
118
106
204
146
91
85
110
82
165
102
113
92
133
77
67
117
126
99
113
115
147
135
105
91
98
115
108
78
108
113
102
102
90
134
86
77
103
90
100
54
131
111
146
140
103
76
120
122
112
108
100
121
86
116
129
113
95
127
74
115
103
108
147
74
67
114
102
119
118
78
142
95
74
133
144
80
123
74
145
85
109
129
160
78
113
73
137
121
172
147
106
49
88
114
108
74
61
128
102
114
138
139
49
167
146
102
123
103
87
136
138
147
87
54
105
99
127
148
117
76
200
104
135
135
159
132
61
102
118
136
116
119
129
95
103
153
107
143
49
93
151
91
136
115
69
134
54
59
115
131
134
97
138
77
78
108
108
133
102
105
95
121
126
116
59
110
82
98
87
156
106
146
186
138
118
155
95
124
117
106
145
115
111
122
179
104
121
218
109
98
103
93
89
74
119
104
173
86
122
95
145
59
113
74
103
131
117
144
54
158
103
95
138
106
120
169
61
164
117
132
95
98
74
111
133
115
115
120
67
146
85
146
103
143
157
98
118
83
125
173
143
69
98
90
120
134
146
110
79
119
143
137
129
143
100
110
115
107
87
105
94
176
132
136
117
76
99
110
97
148
118
129
125
90
83
122
143
74
78
129
103
146
107
178
131
133
113
144
87
135
142
95
88
116
143
126
141
96
68
141
150
128
94
86
148
157
128
120
67
139
108
110
153
110
61
91
161
108
74
115
97
96
161
54
102
88
84
171
106
115
121
154
108
127
148
102
159
121
93
142
134
59
95
99
54
54
93
131
113
106
143
125
160
110
97
122
160
77
67
125
89
140
190
100
104
157
154
73
120
90
90
198
168
141
54
67
108
140
108
144
93
93
170
100
78
138
138
114
159
137
186
148
128
118
78
111
177
184
95
145
106
105
141
108
76
140
89
133
95
104
99
124
110
176
120
116
108
126
115
77
156
115
159
112
144
140
115
85
102
115
105
73
98
126
83
145
107
107
112
107
111
121
107
74
102
127
97
152
140
160
135
103
95
80
177
154
139
54
111
147
131
133
150
119
103
131
98
129
77
129
124
134
106
103
82
74
157
94
151
148
100
132
73
140
98
195
130
146
102
84
165
92
132
131
127
54
128
151
98
49
80
147
110
90
78
146
180
121
146
108
78
95
132
54
126
171
134
96
135
101
59
145
150
113
98
49
148
109
100
78
191
49
131
163
143
137
128
134
126
54
142
108
112
154
156
77
111
124
83
182
103
54
108
61
116
154
49
129
131
103
125
107
134
123
146
107
180
126
140
54
98
155
194
82
102
102
76
81
153
87
103
91
103
113
144
126
128
125
123
93
59
143
139
111
127
107
198
107
136
83
111
138
133
135
77
129
89
149
129
139
134
133
144
125
101
143
145
125
144
110
54
135
145
95
150
177
103
106
106
125
194
125
139
76
134
131
71
121
144
186
102
129
141
160
117
96
101
113
159
100
142
164
130
134
107
98
124
145
109
153
93
103
113
77
78
108
78
108
85
125
196
132
84
114
160
54
142
133
105
154
98
102
116
94
98
110
129
98
137
100
95
144
115
113
108
180
78
86
61
145
145
128
108
111
76
67
157
128
49
106
136
133
103
103
119
137
87
110
158
122
140
108
81
72
131
90
129
145
98
98
99
118
90
95
109
125
115
92
145
94
54
84
179
92
123
102
102
143
119
77
96
109
114
152
131
150
125
134
179
140
57
95
131
97
127
92
96
150
135
132
123
103
93
109
143
159
188
102
72
141
109
127
111
130
124
89
99
113
82
148
113
163
81
103
87
101
135
118
93
102
137
156
118
133
88
152
151
135
113
101
76
118
111
137
122
135
115
118
96
130
72
93
142
78
120
151
140
129
110
158
98
144
67
135
135
79
125
81
105
123
128
81
99
175
128
114
113
111
122
165
152
105
102
114
93
136
127
54
54
135
129
148
171
118
132
103
123
122
158
91
113
163
104
83
120
80
151
49
110
78
118
82
140
106
133
102
147
98
95
128
125
54
130
128
125
102
123
167
108
112
81
130
101
108
110
134
81
101
136
93
146
81
108
102
108
121
54
68
49
120
83
113
125
110
108
158
141
98
91
133
103
77
136
105
68
121
49
54
112
94
133
139
74
90
115
149
132
70
144
95
49
78
127
131
75
98
128
65
127
121
77
154
128
134
171
83
118
123
59
143
81
86
110
68
165
135
125
159
133
145
150
134
74
148
110
120
127
68
137
124
108
86
124
86
101
145
106
151
144
69
113
149
85
225
162
104
122
128
93
154
148
129
135
102
113
81
103
115
103
119
168
70
167
186
150
59
117
136
152
115
87
107
148
67
118
103
211
115
98
67
125
90
103
125
147
138
104
143
148
190
117
143
69
129
191
98
110
118
49
87
106
139
115
104
114
111
138
102
91
119
88
165
107
68
149
133
93
125
165
148
119
122
80
108
125
110
115
69
194
146
141
85
127
115
82
131
105
157
54
128
108
114
173
87
59
54
98
108
145
134
111
90
164
129
148
108
117
134
104
137
177
123
102
146
149
170
88
106
111
127
139
91
121
193
163
101
108
151
161
95
101
116
124
105
133
105
108
93
95
109
102
91
159
102
136
141
128
95
101
100
140
71
59
164
98
85
172
133
130
110
110
112
111
59
92
103
110
95
81
93
112
74
134
59
107
101
104
150
135
100
101
102
108
190
98
95
161
96
85
49
59
95
122
54
98
127
95
79
140
94
106
157
140
92
92
108
76
159
113
91
140
129
234
148
149
155
110
110
101
105
108
127
133
80
126
125
113
98
99
127
91
136
103
123
95
136
183
108
107
95
125
101
73
78
128
170
116
67
54
150
128
137
83
140
98
91
96
156
85
85
98
127
137
113
108
185
113
108
72
89
107
93
83
139
79
117
116
108
73
49
173
120
151
102
90
54
118
78
114
142
103
103
122
132
90
101
89
95
95
109
96
161
95
125
117
141
179
140
94
98
152
97
109
165
96
102
141
117
131
160
130
93
133
99
126
107
147
97
110
122
129
125
123
128
120
75
95
122
123
114
113
49
130
108
95
140
117
108
94
114
175
95
125
161
164
128
135
83
114
170
220
141
120
84
139
63
106
120
107
82
119
85
123
81
54
111
76
81
86
73
114
148
92
129
117
102
128
54
116
107
131
137
129
98
91
102
120
49
140
78
178
118
126
135
78
158
74
68
102
97
102
104
104
54
111
103
94
96
96
93
49
113
148
115
128
116
49
99
90
99
95
127
87
139
95
54
120
120
113
125
97
107
104
81
145
128
136
74
129
107
98
119
144
98
93
93
82
105
95
127
75
49
129
127
157
165
139
154
74
135
125
120
76
175
98
144
143
100
54
95
119
125
87
169
160
93
143
95
158
76
106
141
131
118
92
140
133
74
143
155
81
92
143
114
105
49
98
90
80
125
145
113
111
110
68
82
127
107
135
108
109
107
142
124
102
140
114
155
125
119
93
104
121
148
131
54
95
144
93
108
95
144
161
119
116
103
110
130
129
118
124
151
104
90
126
130
109
102
113
107
116
108
61
133
133
83
118
87
49
140
54
82
123
71
88
77
135
128
142
126
138
152
125
59
130
162
74
113
127
90
107
81
74
144
105
107
140
133
81
95
109
143
131
76
129
114
78
82
98
169
116
111
148
78
98
140
133
89
119
109
128
145
94
95
140
54
144
125
135
107
131
85
82
128
102
106
117
108
106
125
103
102
117
155
71
138
108
108
139
109
148
73
120
111
90
129
130
142
82
95
177
74
105
157
118
85
133
130
128
109
139
115
148
95
125
74
85
168
103
119
168
81
84
95
106
98
148
151
148
113
118
113
98
109
79
136
119
148
78
107
110
109
98
149
149
96
102
94
145
167
109
81
98
178
109
133
124
108
141
54
87
54
129
115
106
165
130
119
125
105
138
126
122
145
67
116
208
130
158
151
136
111
163
111
164
152
139
106
125
111
113
125
128
126
156
108
143
95
138
87
94
120
117
59
154
103
186
87
89
114
90
143
103
98
116
105
95
177
120
98
129
77
110
209
126
73
123
141
98
74
140
82
162
158
126
164
80
107
163
69
54
98
77
126
121
157
129
90
81
142
148
102
104
143
87
54
98
115
139
102
54
95
126
129
144
90
146
129
99
105
129
68
131
135
170
143
127
139
108
144
118
67
150
103
98
87
110
106
91
125
101
49
138
88
82
116
90
76
83
105
119
95
83
118
67
96
102
111
81
125
136
103
113
61
107
167
83
91
98
85
148
156
144
103
109
98
133
105
67
126
133
98
54
142
156
112
149
147
115
95
147
127
115
128
125
125
144
148
125
125
114
119
54
101
103
107
125
119
108
133
99
68
132
89
54
94
93
90
108
87
118
117
146
127
111
113
97
87
95
100
148
95
95
136
107
175
76
54
89
108
110
95
150
113
168
105
90
81
143
87
172
126
125
110
95
138
54
138
135
83
121
120
74
92
93
81
54
168
125
98
173
92
124
54
108
157
150
93
99
139
96
103
97
133
95
102
93
109
123
89
135
139
126
120
102
125
116
96
125
125
112
117
54
54
150
160
49
137
130
144
96
98
80
83
182
169
100
100
135
108
150
104
105
101
155
146
128
147
98
54
49
109
81
149
129
106
78
140
155
119
54
54
113
80
100
162
143
114
116
100
105
115
149
103
54
153
95
162
115
87
136
87
96
100
96
128
61
108
131
121
80
109
54
147
90
130
137
98
118
83
168
116
113
95
97
89
183
122
177
122
127
139
135
120
181
126
115
95
141
104
127
128
99
94
108
143
119
133
125
169
68
113
108
61
90
49
95
97
144
98
112
114
128
144
142
105
163
136
77
85
74
120
127
120
103
113
105
148
130
140
133
108
167
81
108
74
113
109
61
95
148
100
149
120
169
54
148
165
107
107
148
135
115
112
98
108
102
153
98
177
99
133
108
95
107
129
143
74
96
95
108
98
118
120
106
90
173
109
125
123
121
81
91
76
124
77
136
115
134
85
105
125
138
117
110
76
147
84
152
92
150
117
54
135
121
102
128
105
69
140
180
159
108
130
54
54
102
120
82
102
158
81
107
124
117
86
131
67
81
87
118
113
125
102
135
114
108
87
111
91
123
100
120
128
108
126
59
104
113
197
128
96
110
134
124
49
106
146
102
103
103
81
172
92
128
122
145
110
95
152
103
136
145
119
144
54
165
98
54
146
149
114
108
106
158
163
104
119
130
140
119
115
149
99
196
81
148
158
108
85
87
121
74
105
105
104
138
190
134
106
91
80
90
49
124
156
107
90
90
126
103
167
97
137
132
98
127
98
104
54
137
86
129
166
116
121
116
107
92
81
108
104
175
108
140
109
79
139
139
158
140
123
77
61
118
135
98
144
115
49
154
54
178
54
126
130
103
129
168
88
148
54
54
85
84
133
145
131
163
132
80
65
102
54
147
133
93
211
134
114
120
96
111
91
59
125
109
83
138
101
104
78
104
86
155
154
141
98
59
154
86
160
102
125
155
91
126
126
113
141
138
200
105
133
117
82
106
105
108
107
54
94
147
123
125
139
127
160
166
162
131
134
130
108
59
113
149
102
148
137
172
110
96
137
91
145
146
180
98
76
105
95
123
117
97
67
118
102
131
54
135
144
121
109
70
144
54
74
59
77
54
168
130
177
67
101
132
54
78
101
102
107
139
132
96
105
115
99
136
144
138
97
123
95
76
95
108
133
115
144
108
128
54
176
177
59
155
122
54
105
128
149
127
100
77
93
125
126
123
49
137
92
121
101
73
163
130
143
102
106
110
124
76
108
107
115
54
100
74
149
78
193
127
130
125
112
124
86
102
96
134
98
134
110
123
95
127
74
143
103
111
115
127
95
107
120
86
85
97
156
130
111
200
166
111
103
134
98
131
90
78
102
96
114
125
103
61
138
132
134
143
54
94
118
106
67
164
141
153
95
87
101
117
164
154
129
80
101
82
74
119
112
54
76
77
95
122
180
178
107
103
123
98
145
135
112
141
90
125
151
76
132
127
102
165
135
100
110
49
96
76
156
113
68
144
128
103
144
54
90
96
105
148
112
165
165
141
89
152
92
110
95
115
129
49
140
138
102
99
128
117
145
76
128
78
125
116
54
134
102
81
118
103
112
120
105
133
102
153
147
98
116
128
137
152
85
107
113
128
149
81
71
90
74
113
143
135
151
103
89
145
126
67
101
114
108
91
112
106
136
93
100
118
143
157
96
123
107
142
90
145
144
99
54
76
121
81
90
138
95
145
158
131
164
89
148
133
69
69
93
105
112
165
135
148
90
101
113
143
101
165
98
127
72
151
111
103
98
94
96
102
164
105
76
146
165
108
91
69
141
139
91
156
95
162
147
102
127
127
86
135
101
118
54
141
200
81
68
108
122
110
102
158
77
108
87
98
74
65
90
115
105
125
153
96
105
93
105
133
101
139
115
127
54
126
116
131
54
76
123
49
137
106
198
128
114
107
100
92
158
133
142
145
78
124
98
143
81
92
100
124
105
106
171
95
141
142
144
145
177
156
113
144
145
113
138
102
127
96
128
133
126
155
84
114
163
125
125
114
134
102
131
98
101
88
107
134
161
54
54
164
106
84
123
54
120
79
153
138
108
62
133
115
131
74
97
132
104
142
54
92
96
90
120
108
191
115
102
131
42
167
154
136
114
88
117
135
49
108
130
133
87
108
104
110
87
131
113
114
90
127
59
96
90
143
148
114
166
98
94
187
165
77
87
77
87
124
74
127
131
112
49
149
54
144
102
77
92
61
129
123
96
116
102
175
54
114
93
121
117
54
95
143
119
132
126
88
116
154
175
104
125
133
83
172
102
127
133
109
127
135
95
96
200
137
93
126
105
112
143
134
74
143
108
97
94
76
82
120
128
94
138
77
92
106
93
113
86
82
77
122
168
160
103
87
94
107
87
116
108
90
128
96
146
97
113
102
108
61
106
146
171
113
96
145
113
180
146
131
49
113
86
105
129
105
98
152
93
95
139
122
67
59
124
113
139
103
95
153
74
54
137
139
115
94
90
54
62
128
110
103
120
77
77
128
147
112
98
187
61
95
93
129
131
109
108
108
104
148
65
126
170
153
111
54
93
177
99
111
87
129
115
107
118
108
125
214
129
124
98
119
110
102
116
110
111
144
49
144
133
119
102
114
121
94
150
129
181
141
180
105
83
143
146
122
112
102
114
128
121
120
85
104
147
91
139
117
182
90
98
140
76
130
98
120
54
125
74
102
105
123
96
158
173
134
108
98
103
142
163
164
135
82
137
76
123
85
119
101
150
144
138
177
95
95
98
133
139
125
101
83
54
116
121
129
143
143
124
128
140
54
145
115
116
105
115
135
98
140
177
49
139
103
135
99
98
115
125
155
95
194
127
123
132
140
160
65
91
139
137
100
98
68
153
108
129
103
98
148
96
131
103
113
74
143
114
144
115
96
81
115
124
79
99
82
158
118
165
93
108
139
120
172
149
125
105
145
86
112
121
122
102
78
77
100
140
125
110
122
94
193
128
137
162
121
110
128
92
163
87
165
95
91
129
96
106
130
82
145
76
108
82
108
145
97
113
147
122
83
129
126
100
69
92
131
143
102
116
144
153
181
127
91
89
59
91
125
86
87
93
123
159
125
139
132
116
125
125
105
138
110
109
65
115
115
147
109
87
148
157
115
128
54
108
92
128
123
129
157
149
108
91
148
100
111
123
98
140
146
74
103
93
121
155
140
94
143
74
106
49
125
115
105
104
95
116
115
96
149
117
100
159
118
108
54
121
54
109
105
96
177
141
108
138
135
95
54
99
120
123
133
122
82
125
49
113
112
81
145
95
119
92
105
129
49
94
93
141
115
77
108
86
59
90
127
139
93
172
87
119
116
103
135
168
180
113
96
90
106
76
140
93
139
117
104
108
148
123
107
87
85
128
93
110
107
96
161
112
125
89
131
110
93
128
180
94
120
98
81
115
127
114
97
148
145
145
106
121
187
144
143
150
178
127
120
105
106
151
140
54
54
115
77
95
170
126
142
112
104
103
75
142
170
59
90
135
88
179
107
102
54
155
125
102
108
103
120
115
108
107
109
128
102
119
142
132
107
95
91
78
108
119
93
54
91
160
95
81
168
158
146
126
97
59
76
122
123
99
132
103
143
91
116
68
145
126
98
98
61
113
101
134
128
127
149
133
102
99
114
87
120
98
83
103
78
54
138
130
95
117
154
103
153
127
59
122
156
94
161
102
143
122
98
94
135
115
96
130
59
95
135
143
97
140
91
101
98
103
110
67
104
106
135
127
140
94
152
127
74
123
163
139
123
99
124
128
145
115
133
134
134
79
93
131
133
132
135
153
101
79
103
49
131
102
142
99
103
88
103
127
96
86
112
155
87
190
110
158
77
97
98
54
137
129
102
144
134
140
90
102
94
144
142
145
135
139
87
145
108
155
101
98
137
113
95
100
108
95
146
175
162
112
129
102
100
79
91
158
49
103
98
59
173
144
149
101
87
204
138
100
129
87
110
77
92
124
136
81
114
131
131
74
79
102
115
90
97
106
89
102
108
122
105
106
174
108
161
145
129
139
108
156
76
108
127
95
129
125
109
161
115
122
90
133
80
90
100
132
124
98
90
158
102
81
102
129
74
131
95
61
106
121
123
125
54
103
98
106
122
134
111
85
104
139
103
108
153
91
107
148
148
54
116
121
102
95
137
112
104
157
148
107
115
102
139
137
108
172
91
89
120
123
88
106
108
68
102
109
141
149
92
92
165
81
142
49
108
121
110
59
123
154
116
177
141
83
117
151
102
94
107
113
113
151
126
87
112
108
146
150
99
49
171
103
68
49
98
105
95
135
142
113
98
134
135
143
98
135
92
76
100
133
147
54
158
107
128
151
123
152
138
93
121
143
138
131
105
112
105
81
124
107
93
121
167
102
89
124
112
103
99
119
49
97
96
102
118
109
102
122
135
131
144
104
108
98
115
102
81
76
49
59
168
113
104
93
115
90
150
113
93
151
110
108
123
98
124
143
102
74
149
54
102
188
74
98
102
113
112
127
120
125
79
118
113
120
101
125
125
172
112
132
95
81
106
128
96
54
110
127
90
156
117
109
147
182
74
132
142
95
77
101
147
74
87
113
127
54
102
79
133
144
138
101
195
102
131
99
82
184
69
120
159
142
143
93
95
177
161
96
88
115
98
92
59
98
113
105
87
98
91
145
117
154
104
124
147
85
144
158
105
118
128
104
116
83
102
204
118
77
133
134
109
89
94
95
88
107
128
102
118
125
113
108
147
157
130
132
146
77
93
80
128
108
125
88
138
74
91
85
49
93
112
136
76
191
159
117
118
134
110
96
133
109
98
133
135
127
144
128
165
108
129
103
80
54
137
101
82
103
122
77
136
113
49
146
124
85
129
78
104
133
153
131
133
118
114
167
94
127
77
105
89
118
113
94
145
93
128
148
54
114
147
96
157
105
120
144
68
54
172
57
155
149
215
74
84
95
94
127
127
82
155
90
177
157
113
141
139
157
111
105
96
122
164
74
177
135
96
137
102
135
135
132
109
101
124
107
97
126
133
149
153
138
120
94
106
121
49
77
95
153
54
54
157
121
128
54
68
108
108
77
125
145
54
106
114
104
123
135
105
105
103
162
118
131
54
178
94
116
122
157
100
54
81
105
116
140
116
103
113
148
171
182
110
102
126
115
112
102
93
142
108
86
124
98
116
171
136
132
110
127
95
106
106
179
103
99
176
142
116
106
98
106
124
156
105
110
127
54
123
85
95
140
129
131
138
128
154
126
124
104
115
134
147
101
49
144
139
98
120
90
110
127
133
112
119
119
85
54
115
102
147
83
98
98
132
117
95
68
76
120
77
75
104
95
71
107
136
152
157
95
134
121
175
133
127
147
77
117
127
120
90
99
108
156
142
100
54
90
135
149
98
120
95
110
127
49
118
127
182
69
156
171
81
161
95
103
109
134
100
137
142
133
106
95
116
117
149
104
54
118
95
105
85
103
115
211
141
182
98
120
90
121
114
155
61
93
59
174
97
120
105
95
59
110
121
109
169
95
103
112
69
54
102
107
105
129
102
137
102
123
120
144
126
83
112
113
174
98
54
108
148
93
108
77
87
127
89
111
153
91
125
125
135
144
110
113
95
86
95
96
119
99
108
184
129
177
90
102
127
160
122
150
117
119
151
67
104
95
133
147
108
100
128
128
150
150
100
92
61
113
129
90
115
116
87
148
177
131
76
102
158
148
123
103
143
104
167
54
82
128
150
97
113
77
112
147
74
128
104
119
127
98
113
96
121
85
91
106
217
81
108
139
107
153
127
95
139
102
121
98
127
99
111
105
102
115
141
98
106
110
125
105
69
81
128
107
122
135
70
124
97
88
112
49
195
85
92
110
142
54
129
87
115
173
54
152
128
83
70
138
149
87
97
125
102
113
95
150
140
95
87
67
105
78
92
159
76
140
124
85
74
92
125
98
206
125
171
140
102
115
95
102
92
93
108
90
137
133
209
121
137
135
124
148
153
137
106
98
200
119
81
133
54
59
137
84
102
93
224
94
118
107
115
160
199
54
108
115
147
124
167
155
112
130
102
102
133
59
96
151
120
113
82
96
152
87
131
162
114
113
110
97
115
120
115
108
84
96
136
132
101
177
144
145
106
133
150
142
120
67
160
121
113
81
142
116
113
134
82
82
96
74
146
49
90
81
112
101
137
125
89
144
153
103
97
74
147
95
114
152
85
72
93
98
143
116
97
118
119
107
105
125
74
101
143
115
59
182
129
76
120
111
175
110
108
147
96
126
119
135
106
99
133
156
148
127
175
172
113
128
100
146
140
144
110
83
115
95
140
127
76
80
131
98
124
120
116
120
115
102
103
107
77
153
82
141
140
97
101
135
102
127
91
151
113
152
114
100
126
111
103
59
108
166
98
54
168
73
67
169
135
122
161
61
118
168
154
62
95
85
127
125
127
49
121
103
177
102
145
103
108
161
155
130
102
139
115
49
118
113
54
74
90
132
132
101
139
134
132
125
80
107
76
150
185
96
138
93
145
125
117
76
108
81
148
81
78
80
101
113
93
130
160
114
98
129
115
102
87
102
79
96
113
122
102
171
87
144
98
102
111
49
61
104
88
112
113
148
127
116
83
49
120
54
78
112
186
108
83
124
128
139
82
94
49
132
93
115
127
152
95
54
112
164
105
106
105
103
138
165
118
144
59
180
154
149
131
81
86
101
120
101
119
118
177
85
95
127
81
86
108
136
76
154
163
109
102
54
100
96
138
114
103
77
98
136
59
90
152
163
128
119
119
107
139
102
140
152
100
94
173
85
122
102
164
82
89
129
135
133
98
177
90
95
108
111
87
78
120
75
112
115
68
106
102
105
112
109
106
100
151
102
69
167
82
144
112
81
98
115
103
146
98
97
127
118
122
67
96
137
105
119
150
59
78
103
108
135
161
103
108
148
129
157
96
81
106
119
121
84
135
69
71
107
54
127
149
89
110
137
155
108
95
90
108
109
118
54
120
125
131
120
125
110
115
144
173
120
128
96
114
143
149
96
77
144
98
123
90
133
104
122
218
155
116
146
96
77
95
93
143
98
144
78
142
145
110
129
140
77
112
102
119
126
140
119
83
103
100
119
105
124
143
90
98
84
119
125
145
106
136
126
154
59
104
123
156
125
97
98
112
181
180
143
104
93
102
133
129
103
162
81
107
149
54
123
160
111
94
91
82
95
54
139
54
90
100
124
92
100
54
128
68
122
103
142
152
108
102
100
128
102
78
115
143
124
129
118
113
141
133
95
91
80
100
144
98
59
104
166
155
93
104
135
137
123
181
129
105
106
119
84
59
102
124
164
89
135
126
138
82
112
140
125
156
67
114
158
132
81
149
121
123
153
121
126
112
108
113
130
125
145
103
115
162
125
200
116
108
101
154
76
117
106
61
54
149
106
108
143
123
95
103
149
140
150
135
77
146
106
148
156
142
90
103
168
135
135
87
123
125
132
159
167
102
78
121
218
131
131
74
97
54
125
96
106
123
89
108
103
108
99
182
117
87
132
134
102
139
54
206
197
133
149
72
125
111
134
139
118
157
72
190
120
98
93
79
78
107
146
98
77
141
103
144
119
134
157
130
85
96
167
101
97
162
191
110
82
158
134
161
163
136
108
54
143
93
110
115
140
99
156
143
57
103
101
145
140
54
150
67
114
77
102
96
146
100
140
107
106
89
112
103
93
150
69
81
122
123
90
127
125
81
92
135
148
165
78
147
158
69
92
105
125
108
165
102
77
107
172
54
123
115
83
120
145
87
139
74
105
95
81
139
101
125
133
135
82
200
49
108
111
103
141
109
92
139
172
139
103
178
140
102
122
143
82
145
90
54
98
143
95
123
105
118
90
109
90
126
104
88
149
116
121
127
106
108
77
144
197
95
96
54
114
116
103
122
139
79
186
113
112
59
112
124
102
156
90
97
123
133
144
160
118
148
113
78
140
67
90
102
148
105
165
148
81
54
121
81
172
110
128
95
110
124
113
153
82
141
118
130
96
133
121
81
90
180
148
87
136
103
108
95
74
102
74
135
54
81
111
99
117
144
122
95
148
69
155
128
140
142
149
117
148
54
144
95
140
99
123
83
124
99
190
128
61
140
135
89
95
133
100
87
130
146
145
132
107
145
106
54
97
97
110
49
148
128
110
76
135
90
132
128
129
101
119
54
110
124
54
88
76
73
76
61
151
99
99
113
125
122
116
148
101
184
112
118
104
77
133
118
114
95
104
124
124
54
144
54
107
98
98
101
116
134
105
85
103
125
105
143
74
118
83
162
117
135
175
174
128
59
108
88
136
125
87
99
127
153
93
74
108
108
106
144
73
131
144
128
91
122
120
130
172
59
118
128
143
86
112
98
123
91
105
95
90
99
89
125
98
144
148
102
81
125
90
49
89
120
102
54
111
103
206
118
113
110
182
144
107
180
119
100
180
151
108
69
131
174
59
105
118
118
106
54
124
95
157
148
91
89
116
113
91
105
174
177
135
81
88
169
115
103
162
76
106
87
54
178
148
117
83
165
77
110
125
78
115
98
133
88
113
116
105
150
85
166
81
94
144
54
92
91
116
96
116
78
135
98
132
97
91
95
54
139
154
106
102
67
61
111
133
68
78
125
108
117
125
105
95
226
83
113
102
157
152
119
180
139
81
102
79
139
102
106
105
149
123
92
77
85
145
132
76
113
82
76
106
120
103
155
77
54
103
95
87
168
127
102
69
171
106
114
54
105
89
102
93
93
115
108
104
157
49
77
79
139
83
114
80
150
102
115
82
103
78
101
152
121
93
148
77
81
144
108
103
109
108
91
125
122
103
119
108
137
98
113
119
102
130
160
76
123
133
87
91
99
128
95
118
131
67
54
112
109
128
82
124
131
111
120
59
127
168
141
96
98
119
167
93
123
123
128
125
105
77
159
88
54
115
143
141
123
102
54
179
117
132
103
129
103
133
95
178
67
135
87
110
90
113
86
127
98
131
135
107
106
116
119
95
97
129
119
158
90
96
95
153
133
144
136
91
120
126
116
149
99
143
89
108
114
110
108
111
93
125
78
80
90
102
127
120
97
118
49
80
102
93
129
111
125
103
113
108
124
97
136
93
103
88
101
128
102
144
82
104
108
128
49
146
155
120
128
162
161
87
137
93
117
54
143
152
164
173
99
131
125
104
115
108
76
116
117
98
136
143
59
93
83
102
151
97
143
194
82
102
127
113
154
106
54
128
168
111
190
127
100
151
98
136
93
143
177
118
122
134
86
140
128
54
125
97
123
125
120
98
102
177
134
108
103
145
178
106
148
54
134
140
102
105
121
159
167
119
89
135
145
87
59
128
108
141
122
140
151
146
170
149
125
131
145
90
102
112
129
106
139
130
149
90
74
77
140
138
76
102
127
98
98
164
177
114
133
106
54
111
143
124
120
177
117
90
101
102
141
74
108
154
169
85
59
87
125
145
135
120
127
95
102
102
159
98
151
108
142
151
117
144
106
97
100
162
123
98
191
132
129
98
96
59
129
179
103
100
103
54
90
80
147
113
95
94
124
108
96
110
104
87
87
59
135
87
204
101
81
129
148
80
76
102
74
81
127
110
93
107
110
152
68
125
106
93
121
127
111
164
67
131
128
122
127
150
90
90
54
101
154
178
95
82
81
49
116
177
126
112
134
112
62
133
77
143
73
76
122
135
93
103
119
222
102
134
121
96
154
102
150
103
117
161
76
144
139
93
95
106
122
95
92
98
103
155
85
112
134
81
137
112
118
125
138
105
125
68
103
141
118
172
135
108
129
59
156
93
115
77
111
118
102
122
95
104
76
132
95
122
77
117
77
179
136
144
115
87
108
106
49
81
142
85
105
108
59
95
85
98
120
126
98
121
144
85
84
160
135
141
108
116
148
147
104
131
115
96
87
83
103
128
81
108
165
95
106
119
141
78
115
101
101
119
128
98
161
114
112
180
95
127
105
123
114
103
105
141
132
118
104
83
102
113
100
117
86
121
144
97
122
123
123
68
76
113
102
99
150
132
182
93
143
125
103
114
102
175
110
145
138
122
78
130
124
145
127
92
86
102
76
93
137
71
92
93
98
59
81
170
143
190
141
82
70
98
168
107
125
113
120
100
127
177
80
114
54
147
120
95
135
128
153
101
80
107
116
87
133
95
84
54
102
126
69
102
90
153
86
131
119
138
119
90
167
129
133
106
132
115
85
54
159
113
95
137
107
158
129
137
87
59
129
126
132
143
115
129
102
177
54
87
104
200
111
185
119
102
167
49
113
94
93
172
49
162
128
127
102
117
101
59
133
140
115
102
153
165
102
129
147
125
106
123
80
87
99
116
133
112
80
122
49
105
160
142
114
110
156
80
90
112
105
125
81
95
81
86
108
88
80
77
94
115
106
148
133
169
136
49
54
125
65
129
101
84
110
132
108
134
99
110
125
102
180
141
88
119
108
157
77
165
111
145
78
146
110
125
88
148
83
95
76
81
140
54
132
138
95
81
95
91
87
121
118
114
102
130
127
120
159
103
76
108
100
76
127
113
87
141
164
140
129
91
136
157
105
84
123
123
112
111
139
169
173
109
127
103
127
99
81
124
125
72
177
102
135
108
103
113
97
91
73
54
120
121
98
112
151
125
74
68
136
125
109
92
108
131
117
135
77
112
125
102
144
112
81
98
121
113
102
105
123
120
102
93
122
99
125
127
115
49
172
151
163
155
108
74
102
149
143
85
117
74
54
97
54
125
105
129
138
115
129
123
102
87
98
128
135
78
163
149
139
119
127
54
110
110
102
103
176
100
78
132
148
82
165
95
114
83
77
144
115
95
148
111
140
177
59
102
120
91
142
109
93
93
74
106
160
129
100
117
131
160
100
119
87
49
108
108
123
90
77
54
59
95
121
129
103
110
139
126
182
102
59
97
74
104
98
49
168
163
61
163
95
87
106
102
132
122
95
49
102
114
77
123
110
148
138
85
76
139
76
49
112
93
84
92
132
110
98
168
108
124
123
147
90
76
109
98
171
129
67
125
78
125
54
146
148
161
61
102
54
134
95
105
103
106
102
126
120
98
95
172
92
182
108
148
82
90
74
126
125
93
95
104
177
115
139
78
150
106
85
77
112
118
128
127
134
158
176
95
105
143
108
140
108
90
116
73
87
102
138
100
105
110
87
120
160
120
145
122
92
119
93
88
95
49
108
54
148
104
83
74
54
97
98
49
140
49
88
132
95
103
129
83
74
103
102
162
102
172
49
106
143
90
98
135
148
137
145
177
87
67
102
108
118
93
159
113
96
105
77
131
129
126
108
108
139
91
127
54
80
85
71
171
77
95
133
88
96
105
149
67
138
59
96
133
87
107
108
99
85
113
131
80
114
124
133
87
134
108
172
84
150
87
145
146
92
98
127
121
122
133
107
168
73
126
157
178
114
140
126
124
129
115
102
98
105
59
59
140
129
104
124
93
98
127
83
95
106
109
117
107
141
175
59
96
99
191
102
132
180
111
133
126
102
115
83
100
83
76
128
81
106
144
149
146
149
98
120
128
177
148
103
132
84
90
82
124
140
152
179
148
123
59
93
95
135
178
135
90
157
85
100
96
85
146
119
157
113
54
84
105
65
108
108
108
112
143
116
98
109
156
136
125
177
160
167
132
156
148
143
54
102
107
135
199
114
59
197
179
85
83
153
94
141
171
95
118
90
93
144
108
77
185
91
150
161
120
105
120
128
87
87
117
81
74
88
78
102
141
151
115
102
98
123
94
114
156
175
109
147
129
135
191
176
104
54
49
87
124
173
67
141
68
81
123
159
59
135
151
93
120
140
122
139
110
129
80
76
90
103
112
90
146
116
139
73
78
54
76
128
165
108
150
152
137
109
138
87
77
134
124
128
157
121
155
108
129
90
129
120
91
84
117
134
89
101
94
103
98
153
125
74
127
145
147
103
108
107
140
92
134
196
95
74
103
140
79
54
124
111
99
107
156
192
139
103
74
123
81
177
124
123
93
54
92
145
139
121
92
125
108
75
129
77
145
87
134
131
84
95
147
70
113
98
105
97
97
193
104
144
84
184
158
137
178
120
110
110
143
111
106
87
129
114
74
72
106
108
123
158
129
144
73
169
134
125
112
110
120
141
172
137
131
90
125
125
127
93
115
158
69
151
180
148
111
102
93
110
135
100
100
113
107
121
142
95
102
145
76
100
67
124
129
88
119
59
119
134
79
135
108
129
122
163
134
108
75
110
135
154
87
114
149
127
125
104
125
105
108
157
68
98
87
100
148
87
83
127
96
139
102
143
67
45
156
90
115
115
149
156
125
134
125
156
54
117
108
76
86
128
141
103
139
143
102
95
112
117
116
92
117
102
138
170
106
107
113
98
125
151
134
83
115
138
76
105
135
71
107
133
165
108
142
79
145
113
177
89
92
93
131
113
108
144
107
94
158
87
109
138
104
129
102
128
156
92
100
146
98
123
144
157
149
59
94
137
148
140
54
184
110
136
54
106
113
120
49
102
135
98
129
131
102
120
91
116
134
93
137
128
101
123
164
118
128
132
102
105
130
93
129
126
49
161
78
144
77
105
97
104
144
193
132
139
99
151
65
121
93
99
115
93
115
145
155
95
153
133
122
83
133
127
115
84
117
124
121
96
104
117
108
95
160
112
125
132
137
111
126
149
54
97
97
144
108
49
101
135
157
137
100
99
180
119
106
90
143
98
92
120
122
120
95
131
149
137
100
59
94
88
152
96
78
94
126
118
117
109
81
141
67
108
80
179
127
98
61
165
160
153
176
106
94
106
116
123
151
121
134
108
68
117
138
83
102
85
122
108
174
131
137
87
142
177
148
154
49
145
96
136
113
124
132
123
122
119
127
98
81
128
153
84
115
93
78
103
132
67
157
132
140
186
148
95
138
112
143
143
95
107
118
102
144
112
112
169
87
80
102
129
74
161
70
107
158
142
82
108
121
115
134
97
133
138
98
95
121
105
74
138
123
155
126
122
102
98
111
122
129
118
117
142
90
96
121
145
147
106
145
87
122
78
95
81
126
137
156
95
54
102
101
143
83
116
77
96
128
85
140
99
106
90
77
138
54
150
129
85
119
117
95
105
102
144
104
169
96
150
45
90
133
91
134
105
102
143
93
116
54
127
97
104
162
133
113
145
81
112
148
97
119
155
68
123
82
76
86
115
118
169
105
127
54
108
179
119
76
88
110
134
105
143
49
116
115
103
110
162
125
120
135
78
175
83
126
118
80
116
97
102
83
205
101
103
42
42
95
102
122
74
110
125
87
168
108
119
145
95
169
54
108
97
122
54
68
141
78
103
140
95
145
134
158
109
105
150
147
74
131
54
114
105
101
103
77
128
116
74
118
61
136
104
134
131
81
101
129
107
76
113
123
80
131
54
138
76
138
102
81
100
74
110
103
118
99
148
158
133
115
108
140
128
92
120
120
119
130
110
87
141
100
49
142
146
116
83
124
113
109
135
79
102
67
94
164
76
177
90
150
106
125
76
114
111
102
59
120
104
134
138
128
107
97
45
95
125
113
98
125
129
114
109
102
93
117
116
107
166
106
113
103
123
84
101
73
49
121
49
83
97
123
98
169
144
102
123
135
54
96
97
94
155
78
59
93
106
111
112
154
102
103
175
110
135
133
105
103
130
54
94
116
88
143
93
132
69
93
124
95
184
151
103
95
150
113
112
115
125
120
148
127
76
109
87
98
78
107
54
87
144
88
120
54
129
62
165
125
123
157
103
123
148
102
113
81
141
139
69
122
101
105
121
106
94
108
170
67
172
103
174
167
101
97
54
108
108
144
122
103
148
112
147
103
111
111
131
113
115
163
103
119
49
54
149
98
99
108
136
103
87
84
144
133
144
128
114
133
151
78
104
98
84
122
106
108
80
158
124
143
85
106
85
103
142
125
140
87
101
204
122
82
127
124
116
82
54
121
164
145
148
146
94
120
77
115
137
124
130
89
93
128
124
140
108
86
127
157
74
127
150
133
110
200
145
127
144
111
115
54
179
151
131
54
162
61
78
133
49
105
110
122
90
65
68
127
98
125
117
144
81
131
149
93
94
76
106
137
95
102
143
111
135
142
134
109
81
132
54
131
128
84
142
135
122
69
54
91
117
142
84
114
113
139
92
115
113
116
125
129
105
54
141
147
114
124
102
156
105
140
124
114
129
96
95
106
77
102
79
161
145
105
95
162
122
75
139
159
161
208
108
121
129
119
102
129
98
106
108
121
90
95
92
102
81
54
142
105
108
110
98
120
145
125
90
108
145
123
95
54
95
115
95
126
105
109
140
73
54
162
115
118
107
124
189
102
108
111
119
110
123
152
141
107
90
124
90
109
95
54
128
119
102
98
122
73
96
92
100
145
144
131
42
114
138
148
119
126
105
133
138
107
114
162
101
114
116
54
94
101
76
141
143
95
116
74
150
102
87
95
107
156
98
108
96
120
97
133
119
96
134
167
115
78
103
155
103
96
160
107
144
67
110
54
107
163
122
146
166
116
142
82
100
166
105
140
161
74
54
95
127
160
141
119
103
73
135
84
78
139
81
156
177
112
150
105
126
82
137
81
104
157
101
93
67
59
110
106
106
110
113
93
117
183
125
121
111
122
107
102
114
102
139
124
129
109
103
206
101
126
127
139
140
134
113
113
120
175
93
140
132
102
126
161
128
103
177
125
165
165
125
54
157
151
140
85
113
110
132
96
96
149
104
120
111
119
148
128
108
109
100
95
124
121
180
74
81
59
95
146
108
140
133
49
102
128
127
150
59
87
139
90
89
143
122
105
130
87
122
105
162
98
141
115
54
113
101
132
65
133
98
90
133
138
116
131
138
113
54
110
133
148
153
122
106
145
121
143
65
144
141
115
80
135
140
49
117
128
139
127
90
105
121
108
134
113
161
115
95
54
54
117
164
139
112
114
81
49
91
122
159
100
107
139
102
135
49
128
140
168
123
120
81
220
103
167
97
73
148
131
148
95
129
59
129
93
121
113
150
142
120
144
146
59
99
129
87
79
95
123
154
119
137
83
81
125
165
112
133
131
162
102
128
102
90
113
87
134
67
112
177
107
83
146
107
87
107
153
92
88
81
156
98
95
94
163
135
131
98
119
133
109
103
131
68
119
143
125
145
120
119
61
95
105
158
109
94
150
98
87
49
140
108
134
62
81
154
42
135
111
149
83
116
112
79
144
127
97
140
125
147
79
100
61
120
54
127
160
81
142
149
98
95
99
157
165
159
85
113
125
95
67
114
74
141
112
160
133
69
95
147
125
118
95
93
90
76
69
107
161
95
142
98
131
81
115
102
54
100
87
126
118
54
116
125
101
69
104
67
105
152
85
129
185
148
131
82
93
146
103
148
144
87
107
108
54
128
90
80
121
127
54
122
54
114
87
119
180
147
68
115
91
118
120
125
78
148
118
102
91
108
82
140
113
137
129
113
59
194
118
120
115
54
151
142
177
144
146
134
93
95
121
83
145
123
133
98
134
147
145
115
105
115
101
83
124
49
104
54
109
102
184
108
96
120
134
112
145
74
150
54
118
140
87
145
116
87
76
95
152
161
99
97
152
102
104
68
104
120
120
115
119
148
128
124
127
98
61
145
117
141
81
161
78
109
79
123
81
103
61
161
85
113
168
130
147
91
161
102
108
163
157
141
102
125
54
165
113
148
152
128
124
137
144
121
81
108
146
98
92
98
124
92
95
104
125
102
125
82
105
156
107
115
120
141
122
118
124
123
145
54
95
122
78
54
125
80
115
78
49
116
111
102
156
109
102
95
122
102
100
130
136
97
148
89
111
83
93
105
153
122
105
120
102
106
81
127
100
90
118
102
79
125
154
118
115
103
159
85
83
158
140
87
92
108
123
76
54
104
117
145
111
54
97
131
74
168
164
103
85
199
158
131
101
90
145
98
80
87
49
158
144
105
59
105
102
132
86
108
105
54
103
108
149
96
83
122
95
112
134
120
131
110
125
132
102
163
61
131
107
76
133
124
133
103
76
153
84
131
113
102
106
78
132
83
97
45
95
84
106
119
87
103
82
179
128
102
115
108
125
137
77
61
119
137
149
74
81
108
129
98
105
131
114
54
90
54
123
83
123
119
135
135
98
106
95
133
111
140
139
106
135
171
93
121
90
106
142
93
108
129
116
98
95
82
153
87
97
103
102
141
112
165
90
98
116
147
74
49
97
148
103
108
117
97
108
146
158
151
98
91
118
116
104
91
81
131
103
130
167
102
81
135
92
139
83
102
95
144
116
105
122
152
92
54
96
157
79
130
69
103
138
106
143
110
90
144
91
82
149
127
148
95
129
121
85
102
135
131
77
160
115
138
128
143
112
135
148
179
74
131
108
137
87
107
131
79
106
116
102
142
108
112
110
149
121
105
107
149
106
129
77
107
97
131
125
99
145
78
83
105
156
54
141
87
129
97
152
135
135
115
148
144
113
135
110
102
154
71
129
107
104
157
144
161
116
78
89
87
155
74
107
69
54
123
57
123
81
113
116
131
88
125
165
54
168
181
158
77
148
144
146
124
89
61
98
54
93
78
174
97
147
122
123
68
98
105
142
135
54
105
143
89
127
94
135
206
132
97
98
113
102
95
114
54
90
98
97
82
129
162
101
108
130
81
135
119
78
84
141
156
111
177
89
87
97
113
91
134
115
125
93
122
59
81
88
144
102
128
81
188
125
101
169
115
195
77
128
135
93
118
59
100
98
117
131
144
119
135
131
83
93
103
119
59
112
148
81
124
98
59
144
116
129
127
151
128
135
97
135
98
163
112
158
102
160
131
114
78
93
113
93
108
107
149
81
102
143
95
167
83
156
135
141
111
95
133
79
128
102
76
121
120
161
139
119
98
124
96
81
95
131
49
54
115
73
117
120
54
89
82
140
161
133
95
126
154
133
49
108
96
123
116
146
101
133
102
213
153
147
102
144
164
125
170
118
113
89
125
81
126
77
180
54
124
135
77
75
108
133
122
184
128
49
82
106
159
129
112
76
59
116
171
144
74
77
90
148
42
151
74
143
148
158
83
119
108
166
158
114
133
113
123
154
88
115
87
102
125
113
105
85
108
54
92
101
153
98
154
117
148
97
139
61
109
136
111
124
121
105
125
147
102
113
90
116
111
161
146
156
77
145
109
135
151
69
102
103
121
130
106
157
114
151
117
107
116
87
93
120
166
145
95
59
96
130
138
128
144
98
148
115
87
93
96
87
114
170
120
137
113
80
95
102
74
135
96
137
49
139
81
100
82
87
129
146
177
150
106
118
77
129
102
156
108
145
61
115
117
141
149
104
91
145
167
109
98
104
142
127
104
95
97
154
140
128
135
173
136
120
81
117
77
127
120
151
110
95
108
74
69
102
114
182
106
93
143
98
104
81
122
107
81
83
131
108
105
135
113
141
170
114
131
143
85
101
157
103
115
125
152
145
117
54
117
59
90
108
89
90
107
115
115
113
148
119
159
117
98
107
123
148
143
113
127
156
104
102
85
148
168
136
103
101
179
137
83
113
126
119
88
127
119
148
135
130
129
77
93
168
113
143
129
99
117
100
95
59
114
146
103
93
90
135
127
121
163
95
149
102
66
98
135
108
97
54
81
81
108
73
82
54
140
98
61
189
85
135
148
125
128
134
125
145
144
147
134
85
93
131
98
94
135
128
83
128
102
149
136
83
121
129
97
154
101
137
94
133
54
176
103
54
129
133
146
59
120
144
77
104
132
153
82
98
100
117
76
81
128
89
179
106
59
76
119
118
105
141
85
191
95
105
148
76
76
148
153
127
105
87
98
123
147
161
120
92
95
54
161
125
116
139
54
108
150
146
54
125
117
131
108
102
89
54
81
133
80
131
193
124
94
69
161
87
108
74
91
105
160
139
125
54
84
111
100
77
49
108
172
95
103
144
117
117
59
105
113
65
103
104
108
164
163
121
93
116
148
93
153
157
148
139
124
129
135
102
96
170
152
132
83
147
147
97
85
145
115
91
151
115
158
98
80
129
117
96
103
73
54
144
75
115
93
61
109
125
123
158
93
86
110
87
141
134
114
131
101
87
108
104
90
120
102
146
131
126
100
160
103
122
119
148
125
67
177
126
112
96
215
102
123
109
132
102
116
54
165
143
123
49
156
153
115
155
162
123
133
82
139
74
116
100
125
119
147
91
54
54
170
74
140
97
139
125
128
69
76
160
187
145
54
105
77
73
113
102
125
49
54
105
96
54
140
134
135
140
124
125
54
96
92
140
93
81
74
136
149
102
111
139
83
136
136
162
167
114
74
91
103
133
125
90
164
95
89
186
113
132
67
145
74
102
125
125
161
98
142
118
102
135
129
95
77
115
125
115
139
99
98
102
77
45
116
154
107
49
69
129
77
80
116
162
149
155
113
81
93
131
54
135
133
54
127
118
168
167
106
113
89
93
76
161
96
210
125
113
95
145
172
146
144
145
108
147
97
131
98
95
128
102
166
98
79
156
54
108
125
115
103
108
93
95
119
91
126
115
95
153
82
90
129
121
130
149
83
128
97
103
155
95
80
126
95
156
91
96
133
79
98
92
140
96
135
145
95
116
98
76
102
81
102
142
95
112
96
185
102
126
149
120
76
163
182
91
97
148
87
136
83
79
126
74
162
119
180
150
173
154
106
95
120
119
93
77
118
129
99
113
114
54
101
96
128
87
95
106
90
49
126
128
127
95
145
74
102
81
164
134
102
68
102
134
152
134
147
108
117
87
139
147
111
147
108
133
81
130
138
108
133
146
127
200
95
89
98
100
90
147
111
125
120
118
184
137
155
136
111
140
89
98
113
93
134
104
125
54
130
125
166
149
123
136
97
120
139
108
102
102
122
121
95
131
107
108
96
105
143
90
61
116
87
109
164
136
119
95
150
115
105
127
124
224
172
95
158
108
104
113
132
122
102
134
113
146
127
162
65
85
139
105
161
104
144
178
134
115
159
54
133
102
103
162
145
104
92
132
154
91
158
135
119
132
105
148
101
165
49
127
124
135
108
120
54
81
82
117
135
141
103
148
61
135
107
134
149
81
144
127
108
104
158
81
120
125
125
167
59
78
108
139
114
105
170
95
115
108
133
146
108
98
98
97
94
54
126
139
106
143
134
143
97
54
127
140
78
92
103
103
112
137
108
124
87
101
105
169
87
100
92
83
67
125
80
146
108
114
108
136
161
90
105
82
141
173
127
121
87
125
107
110
78
151
95
102
95
68
88
102
96
103
117
49
157
103
120
122
158
138
153
75
74
89
186
49
144
78
120
146
160
92
82
54
140
112
59
54
115
133
159
170
128
119
87
103
85
165
147
106
109
123
82
124
76
116
142
108
131
133
158
129
96
141
101
152
135
108
77
98
108
123
136
165
105
132
95
89
137
121
141
99
119
83
160
103
72
135
101
61
74
123
113
104
76
139
80
102
103
102
171
84
141
107
144
124
86
116
145
139
144
156
119
83
107
54
139
69
129
81
108
93
105
104
67
108
102
82
54
153
128
97
101
122
115
126
54
108
128
102
113
49
95
117
95
147
145
110
119
88
149
102
98
49
96
155
97
128
100
106
129
124
100
54
99
133
82
155
127
115
54
107
105
96
97
120
145
137
127
62
49
73
102
162
97
128
108
103
118
156
99
172
191
54
135
122
132
95
119
77
54
122
166
142
82
162
76
98
108
185
126
98
91
108
137
184
85
150
102
79
95
136
80
132
95
137
87
59
127
100
125
147
163
93
113
105
138
81
93
114
91
118
102
89
106
103
133
106
96
126
90
197
95
111
139
91
97
135
126
103
92
113
95
77
138
108
54
81
108
135
95
158
128
54
135
103
98
143
143
107
146
191
98
108
97
84
157
157
115
143
149
99
152
138
126
106
81
134
144
143
96
91
113
161
105
91
155
54
102
98
106
62
151
99
141
148
89
78
95
92
103
144
129
118
158
105
93
76
191
165
96
135
111
101
161
146
117
79
135
135
145
143
106
98
234
147
103
127
115
114
153
143
117
133
82
126
129
106
126
122
95
130
123
164
184
111
95
152
102
151
54
84
78
139
132
130
114
153
106
59
131
128
180
110
146
110
125
78
98
102
116
142
98
135
81
183
61
87
120
127
78
126
172
69
115
128
74
98
151
123
107
103
85
119
82
73
133
135
130
54
175
131
95
83
90
121
150
111
164
144
100
74
90
90
81
98
97
119
82
115
162
109
119
156
156
123
142
118
92
84
114
128
125
124
143
162
125
96
161
119
127
182
102
76
139
82
131
99
94
130
109
117
113
108
143
98
111
105
125
127
96
144
140
68
151
131
87
133
83
81
159
151
144
182
154
90
129
139
83
108
98
155
142
95
111
153
112
119
115
160
95
144
67
113
101
68
118
177
68
82
98
122
54
137
99
90
107
59
90
102
108
110
125
125
90
114
102
99
109
161
90
78
133
90
131
105
98
106
138
91
100
143
70
108
107
115
61
122
147
132
100
106
142
159
102
125
126
166
154
158
89
135
90
215
95
92
105
146
127
59
143
140
92
103
106
108
182
105
103
102
132
54
139
120
114
125
111
126
85
87
100
78
112
138
106
104
109
77
124
117
143
119
78
113
99
115
54
88
74
84
146
182
85
62
120
114
142
158
87
98
67
132
59
110
95
177
111
120
110
54
102
158
108
76
102
120
145
134
130
123
116
83
148
118
144
143
133
82
98
104
96
100
132
123
137
187
54
123
146
103
96
104
151
100
129
108
135
105
128
128
133
144
115
109
109
112
128
87
102
82
172
131
119
99
151
123
130
174
81
145
136
92
76
114
125
98
113
98
126
112
138
108
155
108
155
81
123
125
130
112
111
110
106
113
157
128
145
61
158
115
154
74
116
54
59
81
81
78
131
109
94
82
93
104
59
112
156
68
102
108
81
74
141
144
133
96
94
103
127
111
103
92
115
82
108
119
154
54
102
113
102
103
85
87
183
113
112
139
139
133
133
120
77
103
102
116
95
145
177
119
103
59
89
119
115
146
144
108
59
118
129
144
95
106
127
112
49
171
122
118
154
147
172
168
118
113
100
95
103
147
99
63
115
132
125
113
54
97
115
131
67
82
78
172
125
185
120
76
98
74
99
150
148
157
143
73
134
80
73
119
77
120
157
148
82
110
118
59
99
109
103
102
104
85
144
131
107
98
116
182
144
138
107
119
127
122
149
80
85
150
139
127
89
100
86
112
146
177
172
136
87
77
105
103
121
117
121
131
74
148
158
54
155
152
56
113
115
123
115
143
154
139
133
105
69
117
97
113
137
92
135
98
54
108
149
76
98
127
115
126
135
108
125
83
111
128
143
76
115
153
119
161
125
132
105
141
90
82
138
81
139
96
114
54
129
113
148
87
102
97
131
221
122
103
82
181
144
125
95
93
160
133
158
139
115
158
124
147
123
121
79
124
87
113
96
98
95
106
150
93
159
150
100
82
138
107
84
98
117
127
114
118
108
99
199
74
138
155
54
103
108
120
145
136
118
132
102
149
131
111
133
131
95
146
133
170
67
80
98
101
113
148
113
125
142
101
125
148
112
150
106
106
80
93
125
131
172
125
148
98
126
115
116
125
93
85
131
149
144
118
81
141
130
125
128
86
103
92
114
92
218
136
137
153
76
113
133
146
134
76
102
111
140
125
177
54
127
101
103
123
161
128
145
165
114
134
111
107
125
117
128
92
116
134
146
130
115
140
111
106
102
133
69
103
132
87
122
105
117
125
105
121
117
129
130
82
113
90
76
98
117
90
96
102
78
105
158
158
135
135
162
98
106
98
96
108
139
92
112
153
119
169
112
97
180
149
78
115
115
161
108
139
92
155
102
127
103
113
118
115
82
113
124
133
161
91
135
180
124
133
123
95
153
68
100
83
164
81
135
142
135
107
122
145
178
148
158
116
105
123
106
129
130
139
157
148
133
102
122
118
130
124
113
150
98
49
98
97
115
146
127
95
104
101
93
169
160
108
138
90
148
72
98
91
76
123
132
95
67
123
122
95
122
126
93
148
113
107
130
98
110
102
95
161
101
156
97
119
71
101
108
133
150
102
115
125
87
124
102
106
79
110
131
98
96
137
87
140
142
124
119
67
93
107
119
61
96
144
120
81
131
102
82
90
104
141
108
164
153
95
61
83
144
82
126
79
138
108
108
129
59
123
90
113
131
112
84
165
133
59
149
146
191
139
117
83
133
98
106
124
81
97
120
93
158
166
112
108
108
145
104
106
117
110
78
67
90
119
76
119
154
95
99
54
113
97
135
110
108
128
146
59
94
59
120
125
153
102
107
107
83
87
81
49
141
150
57
86
101
123
54
99
92
123
160
103
147
138
115
121
82
102
107
115
98
123
102
133
77
108
95
106
104
159
115
128
113
113
148
135
95
127
110
144
131
129
108
89
145
107
54
81
163
116
149
128
143
128
100
86
92
85
152
54
100
96
120
144
133
54
95
128
128
129
129
109
106
93
87
99
106
90
122
171
124
78
122
121
104
66
91
83
83
133
146
54
123
98
116
81
99
120
133
107
158
116
123
133
133
142
108
96
103
107
151
119
145
77
95
127
144
111
126
140
131
77
89
153
109
133
112
133
102
115
120
108
121
138
131
54
76
129
103
77
131
134
113
133
126
87
137
123
131
116
108
91
108
59
112
163
108
127
105
102
129
95
77
59
90
138
82
54
108
149
100
145
105
113
158
99
135
124
113
116
125
95
145
76
59
93
163
160
179
161
59
110
67
83
81
77
155
96
118
118
184
98
100
79
82
125
54
130
132
133
119
119
143
119
81
141
54
148
171
102
79
125
113
121
80
95
137
145
103
94
184
121
108
125
87
141
98
103
105
120
138
154
120
160
108
99
123
54
132
124
107
128
136
161
140
141
140
112
122
108
95
69
146
105
143
78
108
147
61
115
171
127
102
85
99
101
132
119
141
74
160
139
105
128
93
68
145
103
138
97
135
114
117
95
98
102
85
85
103
131
179
117
108
120
91
131
128
146
194
98
111
118
81
102
218
83
100
97
182
125
160
102
148
105
120
135
130
95
105
68
98
137
138
127
74
139
145
91
105
111
67
96
195
85
78
124
107
45
49
91
89
98
98
95
141
124
108
70
139
80
93
129
131
54
78
104
169
83
144
115
102
101
129
109
105
153
126
165
54
83
142
128
104
147
79
105
98
123
98
159
136
158
108
89
119
103
74
130
68
126
111
99
133
148
59
77
114
93
146
121
90
97
59
85
85
85
106
89
91
151
73
136
107
113
83
110
93
129
93
54
110
133
108
116
94
77
54
129
117
115
108
133
133
124
148
96
115
157
124
140
78
54
116
107
87
80
89
140
116
139
103
99
109
93
106
88
98
140
126
120
130
90
108
118
93
173
122
116
119
135
138
102
59
87
124
127
162
116
116
125
148
84
81
155
145
117
134
115
69
94
160
133
106
106
107
101
102
138
96
81
113
127
82
102
81
90
133
148
143
143
69
67
113
108
77
121
126
135
142
140
85
127
137
103
54
105
54
87
106
172
89
90
105
146
144
95
135
105
127
114
127
109
121
164
111
131
117
107
81
151
92
134
137
102
97
127
105
95
54
145
154
76
68
95
78
158
90
74
69
116
129
132
110
119
119
59
87
77
102
127
93
108
87
105
144
79
127
95
140
88
131
96
49
61
112
150
93
108
158
186
141
123
134
136
162
127
103
86
116
133
102
147
83
144
113
122
68
106
110
209
123
149
123
95
154
100
154
105
137
102
98
174
119
131
127
83
54
135
113
193
91
103
105
97
143
95
82
126
70
90
158
133
105
103
125
149
119
170
109
158
128
83
88
69
99
118
138
113
113
93
132
94
166
116
108
115
94
105
103
78
108
74
97
104
133
83
108
108
133
125
129
122
128
165
108
135
142
116
90
102
127
124
127
108
82
120
110
98
125
147
94
103
87
115
67
144
49
103
108
128
153
49
137
145
105
116
95
54
104
108
112
80
87
183
102
135
149
198
97
140
149
139
164
127
113
115
127
168
90
123
186
82
92
98
126
140
125
157
145
137
157
115
102
133
82
61
125
133
94
102
59
105
119
115
112
95
91
129
77
129
120
54
133
98
92
96
93
114
146
135
155
105
135
126
108
54
143
81
129
160
108
133
106
142
167
59
87
133
107
74
105
113
175
87
118
85
114
142
126
83
167
130
115
85
131
125
138
103
128
121
146
108
144
94
108
92
137
124
100
113
117
96
146
122
93
78
103
137
150
88
101
100
107
149
97
125
108
49
49
133
98
129
112
110
179
161
143
170
180
134
104
78
59
135
107
107
150
152
74
137
111
113
125
148
68
128
104
98
80
94
116
131
102
139
124
149
129
140
99
93
59
135
78
135
139
90
112
132
82
147
123
77
125
110
112
145
110
158
87
140
151
105
153
76
180
63
124
102
97
90
117
129
178
73
128
95
81
133
177
126
102
116
146
98
133
103
77
112
96
138
122
102
102
109
155
126
94
164
133
126
140
125
95
95
59
120
75
121
137
135
96
121
146
137
180
105
100
95
83
132
128
148
154
142
122
153
101
130
61
123
76
113
174
149
111
108
106
105
139
99
54
90
139
129
133
129
115
154
128
95
135
97
112
108
86
133
107
103
65
102
110
137
133
124
134
151
159
86
103
106
87
158
135
135
167
130
95
113
134
77
87
123
130
119
98
118
156
143
138
54
153
148
146
143
114
115
122
97
129
99
104
130
129
73
81
130
106
160
148
129
156
97
118
95
132
167
109
105
81
181
139
96
54
102
158
81
160
108
112
122
164
108
89
126
170
97
140
49
67
145
74
110
158
103
122
106
123
102
54
108
54
108
107
126
98
143
100
95
93
96
108
83
90
137
130
169
116
92
132
129
139
143
67
169
197
81
142
114
97
129
117
101
144
103
109
98
120
101
103
180
93
160
100
88
162
143
129
76
102
120
101
90
132
85
103
128
156
128
59
92
155
122
89
54
135
126
81
105
76
90
116
129
95
67
95
100
74
108
124
104
111
161
140
135
161
99
122
127
132
129
78
129
45
80
113
76
113
76
81
140
82
162
107
95
87
138
78
162
69
90
119
82
137
54
77
160
168
108
133
90
100
116
108
148
131
116
91
133
54
99
144
172
141
149
145
122
102
59
96
99
93
135
108
108
110
148
125
148
49
168
136
111
133
97
140
87
108
59
115
104
112
144
80
98
157
98
98
135
86
122
104
101
106
195
102
124
102
106
160
129
105
140
141
152
116
134
115
134
95
74
81
114
61
159
68
95
122
123
95
125
89
155
103
129
148
85
152
178
160
115
95
67
103
49
149
83
144
82
142
107
96
127
134
165
120
205
120
101
94
215
95
102
135
129
138
54
153
102
120
116
112
167
76
81
154
142
137
110
90
139
157
108
54
69
104
135
113
129
120
98
115
146
100
82
91
122
103
100
134
112
101
153
141
87
93
95
135
116
80
112
133
104
136
49
95
130
98
180
111
182
162
141
101
124
109
74
117
87
206
87
139
115
98
98
133
76
137
61
122
154
96
109
103
82
95
56
142
103
168
116
115
99
95
151
168
95
158
104
77
102
114
69
94
119
164
137
150
153
111
97
87
135
54
98
119
103
112
108
67
79
130
155
81
145
86
54
77
125
108
100
106
137
111
101
105
133
131
127
148
101
107
100
108
141
83
102
74
105
49
100
104
161
54
100
130
92
133
90
91
103
114
82
74
189
108
90
107
133
103
108
105
137
177
49
146
116
127
135
49
83
201
123
146
90
54
148
122
125
87
91
95
107
83
105
141
79
103
144
137
114
108
84
128
95
81
116
124
194
76
130
129
146
87
118
86
103
133
142
141
113
76
74
108
89
126
153
113
128
173
91
78
110
146
125
113
104
54
102
76
93
145
141
114
135
107
117
128
74
131
94
145
127
110
132
135
158
59
98
98
158
105
89
95
161
151
80
105
121
123
160
95
79
93
140
105
90
54
81
115
87
141
177
99
68
146
142
128
82
124
98
108
95
108
140
84
103
98
149
149
112
108
133
102
127
87
96
95
151
81
86
108
135
122
138
154
76
81
108
49
157
99
98
123
49
153
121
145
81
166
115
103
131
113
126
122
93
98
69
98
95
102
81
102
103
144
78
140
160
120
155
191
126
126
149
107
103
180
90
110
152
148
85
103
126
54
121
124
102
179
87
115
154
184
118
127
92
105
128
167
101
129
125
91
102
118
113
119
93
154
128
126
102
176
103
170
113
127
83
108
108
122
172
133
147
127
95
107
103
113
77
143
126
135
167
162
173
133
95
81
76
108
80
108
54
95
119
112
85
142
123
86
112
98
49
94
139
143
139
133
110
74
105
95
148
160
79
120
78
144
136
135
74
133
98
106
124
148
97
139
114
101
90
91
54
102
98
133
132
139
145
128
97
122
123
132
140
88
95
185
75
146
87
145
101
91
108
93
49
126
92
113
128
122
102
107
133
74
154
98
108
139
102
104
111
94
119
135
132
130
49
131
149
139
94
106
108
108
103
135
102
125
143
147
127
179
111
106
49
120
118
122
90
89
127
148
142
123
87
171
108
102
98
83
76
77
108
99
110
128
142
95
124
118
97
59
188
133
106
96
126
125
129
92
67
101
103
117
83
108
119
164
99
69
69
138
67
91
77
95
94
78
177
129
127
109
77
127
145
116
126
54
161
122
79
137
87
140
108
115
85
109
106
124
104
134
92
122
128
74
82
69
123
116
134
148
125
101
165
103
130
172
114
142
61
91
149
106
98
90
98
129
124
61
74
115
134
144
133
118
118
67
140
179
69
131
147
143
108
169
177
146
161
148
178
65
85
135
148
90
68
110
74
116
90
108
174
113
128
81
143
85
134
113
105
98
164
106
120
135
125
54
93
49
139
100
98
54
79
119
130
106
118
93
69
103
157
75
96
169
95
147
87
90
152
86
67
108
144
146
87
92
101
156
124
101
49
121
139
95
83
158
126
98
167
83
125
93
120
140
123
102
114
81
127
98
102
115
122
139
159
104
139
131
126
95
82
122
124
59
103
114
116
131
108
54
145
78
133
128
108
172
151
113
127
164
85
85
101
117
145
190
108
86
110
133
111
106
128
90
101
115
138
127
87
119
94
54
98
81
112
146
148
105
194
105
112
97
102
120
195
106
149
128
116
119
71
158
122
54
134
158
95
108
140
109
93
147
61
144
74
102
116
151
125
146
74
92
120
161
118
89
129
95
103
112
128
108
105
139
118
108
82
111
147
146
140
108
54
158
87
102
102
106
94
95
122
95
90
186
108
87
160
78
105
133
141
125
83
124
113
122
90
103
119
189
146
70
133
137
154
90
100
113
132
54
133
102
74
54
103
104
89
105
120
104
101
129
129
186
178
122
133
120
78
103
101
143
128
148
146
77
85
94
106
107
98
76
131
107
95
92
142
83
54
146
143
168
143
83
136
77
74
111
144
141
122
126
98
133
130
108
104
177
75
95
113
95
77
110
135
116
54
139
98
98
131
59
49
154
168
144
95
131
100
180
146
128
138
93
158
105
99
167
150
93
103
135
158
83
168
145
139
151
59
181
157
107
139
102
141
108
49
113
155
131
129
77
154
61
82
82
120
146
120
83
102
134
155
109
102
120
145
103
144
113
92
99
170
123
151
145
89
148
86
143
127
116
148
140
139
106
175
98
92
144
160
103
113
132
109
129
49
135
138
133
54
91
105
161
157
103
94
96
92
96
90
155
108
54
89
113
123
91
93
100
172
133
144
127
102
127
144
158
123
73
133
128
54
89
136
148
127
108
122
112
111
131
126
49
119
160
79
112
74
108
54
125
99
129
137
82
94
117
82
54
147
107
160
138
170
140
127
122
101
144
61
107
137
127
131
118
92
101
93
148
172
133
96
93
144
96
218
133
146
54
100
135
59
131
109
126
108
86
127
163
123
87
94
54
126
103
111
113
150
106
54
54
93
139
161
49
83
74
93
108
95
76
116
91
140
119
76
206
133
148
119
139
133
96
105
163
113
108
138
103
105
135
124
113
82
117
160
131
127
94
111
108
113
91
132
83
125
114
152
97
139
134
140
164
118
59
168
125
126
102
129
122
105
131
115
117
107
95
126
199
90
54
148
107
172
77
67
108
125
90
135
137
127
119
59
175
185
127
104
115
115
96
87
104
157
104
218
130
108
133
107
141
124
105
131
126
95
135
134
113
54
153
105
81
238
102
76
95
100
87
147
108
54
128
143
135
114
108
108
149
81
67
132
141
81
54
124
140
95
118
109
93
54
112
143
111
81
95
155
141
129
54
133
128
109
98
163
111
106
78
113
98
151
136
98
145
112
70
141
54
133
191
95
120
87
95
95
67
137
135
153
103
127
122
100
59
94
121
147
111
133
165
108
114
86
192
96
103
87
125
108
54
95
143
115
139
111
114
106
90
145
142
69
119
177
54
141
106
137
152
83
93
54
147
125
91
120
95
98
97
143
49
54
108
59
102
124
109
54
165
148
156
95
102
135
119
129
139
49
113
98
153
91
100
150
138
69
137
103
68
95
104
106
79
115
65
154
116
152
148
118
120
107
74
85
91
91
74
125
80
105
105
89
145
54
111
67
127
119
129
105
135
115
80
103
127
112
125
115
190
152
102
140
89
144
153
103
132
124
139
144
82
82
85
54
101
101
139
71
103
61
143
120
110
179
108
89
95
174
152
90
131
81
125
129
93
151
113
88
98
173
141
104
76
125
72
152
67
96
81
102
109
81
95
110
107
109
108
104
106
119
104
153
54
59
162
129
186
95
115
119
77
68
75
141
177
117
128
101
110
154
125
110
108
68
144
100
98
154
103
114
74
111
111
80
102
114
145
49
146
146
61
140
101
102
93
54
148
130
76
112
134
159
139
108
81
68
82
115
104
87
103
180
135
158
81
101
144
49
158
164
78
112
118
116
54
111
120
98
93
133
90
107
161
148
124
120
98
108
169
63
139
49
95
116
54
133
158
108
127
106
148
78
102
101
111
105
128
74
100
61
119
120
74
129
142
74
131
125
149
131
141
148
178
133
133
179
199
177
121
131
127
144
163
168
109
103
68
139
103
108
136
95
125
105
133
74
131
123
151
147
93
131
126
102
119
93
119
97
143
70
69
112
101
106
81
101
137
150
135
59
129
93
108
120
69
80
119
106
113
94
127
148
152
131
129
133
125
153
146
69
95
123
128
131
138
76
76
153
125
108
59
111
131
161
125
87
116
120
123
151
177
81
125
179
161
116
108
98
148
125
123
155
98
95
169
104
93
183
95
131
113
85
152
76
105
123
54
140
115
145
120
109
152
156
143
90
131
124
54
144
144
150
133
103
98
135
135
102
122
171
150
95
129
110
95
202
121
119
147
129
86
139
61
117
101
123
139
112
81
142
103
74
125
106
93
123
100
99
102
140
104
135
183
108
105
87
116
94
110
142
106
94
105
125
49
108
150
116
133
94
99
84
140
141
78
102
76
138
87
113
114
80
105
95
97
67
148
77
153
98
135
144
140
54
123
156
167
91
125
73
133
138
143
118
125
86
143
165
166
77
132
101
78
110
117
85
108
86
137
89
162
119
139
107
128
135
95
77
78
126
119
115
132
104
104
86
160
174
83
54
98
98
146
123
140
151
113
108
132
78
154
158
139
78
141
105
149
128
84
99
54
137
135
81
198
95
90
67
96
135
105
129
105
127
129
119
112
119
96
133
127
127
139
133
104
77
129
129
133
148
134
105
161
99
105
142
74
113
94
87
95
54
97
122
171
94
158
77
108
106
109
146
98
173
98
156
151
80
162
87
160
108
97
117
115
105
122
119
113
90
169
110
138
106
130
136
128
138
68
154
100
78
100
98
87
112
127
112
122
148
131
139
79
122
76
97
77
156
106
54
97
54
149
179
102
142
54
106
125
110
108
180
103
83
136
122
49
102
125
125
95
128
61
103
143
74
74
146
182
126
83
97
118
161
110
148
107
186
95
89
114
122
95
170
132
155
116
177
159
122
108
162
89
87
105
95
128
97
170
127
125
78
163
90
153
129
116
112
151
103
115
74
129
69
160
135
160
101
94
122
108
110
74
143
95
113
105
87
77
80
116
87
109
96
134
83
144
118
110
147
110
150
128
142
49
119
99
132
145
74
95
117
144
177
129
94
132
103
127
54
180
143
105
98
74
146
102
126
145
117
103
106
109
172
133
128
140
59
118
127
135
144
97
120
132
105
110
122
115
81
87
143
82
109
131
118
95
141
100
115
105
123
120
167
82
54
106
76
95
125
74
89
132
106
108
99
116
95
139
82
129
81
77
91
95
110
131
128
127
57
104
95
102
148
105
95
81
149
124
156
116
131
107
108
108
88
110
117
84
82
118
91
127
111
153
161
104
194
98
114
98
115
81
123
161
100
84
90
107
127
102
127
98
104
115
119
143
139
76
67
54
108
137
59
127
103
144
145
129
102
77
94
108
88
88
54
138
92
139
81
90
142
95
93
93
83
95
95
120
68
85
160
102
128
111
145
90
135
54
96
120
115
96
74
168
133
133
154
90
108
98
81
67
73
49
176
105
133
124
76
88
105
110
83
126
102
125
128
126
136
103
87
151
80
159
158
141
126
113
77
111
125
163
184
95
75
145
173
49
85
145
129
98
91
145
120
76
95
102
82
103
146
129
138
96
83
69
144
98
129
78
121
91
102
137
128
94
99
93
83
134
133
125
111
156
115
133
49
127
82
78
130
72
96
85
113
59
128
93
62
69
124
104
104
138
145
140
124
74
195
107
116
111
162
116
110
113
93
134
106
125
133
148
141
61
89
119
106
186
110
84
128
102
113
119
82
83
124
74
177
74
149
107
105
115
119
125
90
85
95
149
129
113
59
139
123
119
127
106
138
130
102
164
153
93
118
117
82
79
103
101
77
134
113
125
88
127
69
99
87
135
125
86
94
132
133
115
59
150
106
120
145
54
149
114
54
112
110
139
173
107
104
130
160
125
103
108
147
104
108
177
103
90
133
115
171
162
94
151
128
142
158
117
95
106
74
107
146
82
148
83
61
143
67
158
85
125
83
91
120
131
135
83
123
119
145
76
155
79
125
161
121
107
118
113
67
185
148
128
112
106
198
101
107
139
129
177
148
92
162
106
135
109
185
121
79
144
134
165
77
148
87
102
126
100
125
108
120
103
110
133
106
140
142
115
92
108
122
144
143
143
143
91
120
109
102
135
74
90
153
125
113
93
147
165
144
102
100
102
145
102
115
138
85
108
126
108
98
90
103
96
128
141
123
126
139
54
98
124
119
112
117
150
108
128
113
117
54
83
81
127
120
90
93
107
145
148
102
98
133
121
138
147
136
59
157
76
153
122
108
113
59
146
124
140
76
102
76
108
104
105
165
167
130
112
177
136
144
90
134
192
121
102
177
108
108
106
171
105
91
78
127
77
99
88
144
147
104
109
192
128
107
115
116
109
161
141
122
127
83
107
90
117
140
54
85
148
121
100
108
118
146
80
95
98
127
140
177
97
105
113
125
116
93
141
103
161
90
124
128
108
108
132
162
105
163
90
140
158
96
106
101
153
142
134
177
81
120
95
112
97
106
91
132
156
95
81
145
98
119
92
128
121
97
67
128
61
103
49
54
132
85
130
112
91
147
96
128
157
146
103
54
146
102
96
78
128
88
105
123
110
54
145
85
170
155
95
124
135
106
119
135
177
98
124
148
128
143
122
95
83
148
156
107
113
127
132
89
151
132
108
54
81
54
140
121
173
83
78
156
129
98
80
118
114
111
120
95
107
54
135
74
130
125
153
77
103
102
161
102
82
131
108
95
146
147
98
143
146
139
119
137
112
145
177
125
113
137
102
113
123
67
158
141
106
113
99
156
81
87
99
131
134
95
107
132
77
131
99
54
93
141
98
93
140
98
102
117
142
160
112
68
117
179
194
173
82
139
162
140
171
113
93
115
144
108
99
93
87
67
149
144
106
119
77
100
61
120
137
173
157
115
142
98
74
123
132
81
154
108
81
131
61
115
86
72
194
86
123
177
90
146
59
155
94
73
102
109
82
54
118
98
150
82
103
101
146
94
138
72
144
77
129
170
146
101
54
108
97
100
104
147
95
54
107
78
178
108
81
129
82
128
109
105
123
81
121
104
98
139
105
156
125
86
122
91
100
134
91
96
154
131
125
145
68
91
49
131
125
144
120
134
108
127
98
102
122
125
104
118
145
125
147
130
83
138
49
54
125
112
120
110
144
87
78
125
78
117
131
111
120
115
103
102
89
108
126
135
108
110
135
95
156
110
139
108
113
116
106
103
124
130
88
85
105
74
134
103
99
109
101
134
120
132
108
119
117
113
131
76
81
78
54
95
160
108
147
83
127
88
193
124
82
140
102
81
141
165
54
103
108
78
111
137
67
108
104
131
128
80
98
143
99
147
117
112
59
99
148
87
81
207
133
95
82
109
94
179
145
200
77
108
123
115
87
137
148
101
108
110
131
133
59
94
90
135
146
108
98
86
149
127
125
132
113
73
197
98
105
192
142
97
102
113
83
143
93
156
145
109
108
147
108
103
129
106
148
106
69
117
45
170
216
125
126
135
120
54
76
150
119
123
98
147
135
129
113
95
123
129
98
128
132
104
135
54
148
81
54
45
102
103
120
110
59
69
122
105
99
120
135
98
81
114
81
171
109
130
113
91
135
138
162
138
54
131
143
49
132
45
67
156
122
168
103
140
154
95
96
133
112
87
124
133
157
77
140
122
98
140
118
102
108
118
176
176
153
108
157
140
124
87
114
135
135
49
106
108
95
134
100
162
94
105
132
80
169
133
131
101
101
127
98
118
108
190
145
81
49
98
117
125
126
80
99
99
145
139
164
136
128
189
54
123
109
85
91
113
102
109
119
159
90
119
98
130
111
111
87
108
91
149
129
145
169
75
153
108
106
144
98
98
83
107
103
107
76
154
116
83
103
95
102
54
165
102
93
140
137
108
90
90
161
102
177
122
95
238
139
118
108
146
102
95
106
119
115
100
160
83
115
54
98
120
118
96
54
126
104
82
137
147
132
87
108
137
147
136
148
131
54
148
119
143
134
103
144
108
169
82
143
103
100
127
101
93
102
129
143
179
70
114
158
81
142
81
133
121
122
140
98
93
105
97
87
93
54
128
144
120
135
103
182
112
123
109
144
76
162
118
134
89
100
116
84
161
102
140
117
62
113
59
173
133
128
133
145
147
133
80
95
133
67
88
124
118
106
82
54
171
101
141
134
147
98
140
95
61
59
86
71
134
125
147
125
102
177
126
164
102
145
130
108
54
83
93
125
149
119
135
133
105
110
114
110
80
124
85
86
99
107
102
147
98
116
105
86
131
107
160
102
160
140
136
105
113
69
113
87
93
113
96
69
49
112
138
54
140
102
95
83
77
154
140
131
113
127
153
54
127
131
93
109
157
148
49
118
124
123
84
120
108
104
128
158
146
103
86
117
133
107
119
132
105
133
99
113
86
120
78
135
118
127
162
95
165
68
115
128
107
163
125
107
149
108
93
143
169
119
155
102
93
119
49
94
108
103
103
96
102
81
142
96
152
120
108
164
98
122
113
177
128
142
138
151
128
99
131
114
49
74
129
133
54
95
158
125
89
88
95
102
140
106
107
184
111
141
175
113
70
127
115
74
95
234
141
81
164
143
100
92
114
114
96
150
78
148
113
102
154
81
191
142
143
135
130
85
125
102
133
69
94
139
172
129
107
103
88
125
127
74
146
110
81
124
152
116
93
93
116
81
115
67
76
158
113
154
106
74
127
123
54
101
54
107
128
124
134
124
133
138
124
87
137
163
108
105
77
123
216
128
95
135
95
93
113
126
100
81
81
104
49
105
119
125
105
129
103
103
103
136
87
151
77
112
84
110
105
158
95
128
89
144
119
106
144
137
87
105
173
159
83
133
120
118
165
120
116
94
139
95
77
139
49
138
155
85
81
131
81
94
160
87
109
81
171
112
143
105
106
124
102
109
159
107
177
78
99
127
102
102
154
178
113
122
61
98
107
145
111
112
82
115
88
95
164
108
83
129
171
54
143
86
100
130
90
101
81
95
77
118
161
102
75
135
82
150
94
79
91
95
103
150
89
78
156
177
115
177
123
106
150
83
108
94
59
87
119
140
99
164
112
112
95
128
185
111
120
133
177
103
169
113
118
83
124
165
98
108
103
89
136
139
98
128
102
95
61
106
112
54
117
110
153
88
96
166
98
101
98
99
119
59
121
90
108
95
190
89
68
90
113
112
108
97
103
125
115
140
132
95
155
113
126
105
54
54
147
78
177
101
82
147
85
115
119
190
81
177
92
147
131
125
100
89
131
115
96
95
121
102
135
122
106
143
87
113
88
135
111
76
173
140
171
116
76
160
165
98
81
133
94
67
61
133
155
118
85
115
104
97
110
108
181
158
87
42
143
91
168
160
150
49
129
83
118
114
94
125
54
129
133
144
107
54
112
85
90
103
125
140
129
105
112
122
125
144
107
79
95
158
140
109
99
83
156
105
96
123
77
95
153
49
111
156
163
118
102
115
54
69
116
116
126
141
127
77
91
125
85
114
78
129
116
103
98
159
49
59
122
98
81
161
80
103
160
105
93
118
144
181
136
132
145
102
69
54
97
121
147
77
130
67
160
113
171
140
115
141
141
135
101
134
134
49
81
131
77
122
142
148
95
59
104
158
96
143
98
128
104
114
124
54
165
107
81
77
96
90
133
140
129
106
82
87
114
113
139
94
110
146
106
108
128
119
124
164
156
136
166
114
148
98
81
101
132
82
134
118
126
191
118
128
78
133
98
207
99
102
69
54
87
163
78
157
123
133
151
124
127
143
79
118
133
88
148
49
110
104
154
154
113
103
135
150
118
113
139
131
123
107
74
118
102
74
74
109
144
108
139
89
111
126
108
78
131
87
144
129
206
81
81
139
180
84
151
131
106
90
133
154
122
130
87
90
81
124
79
103
54
99
153
144
155
108
98
134
116
127
144
167
101
104
137
49
69
111
128
113
174
175
152
125
121
100
49
95
74
97
128
148
173
98
126
133
113
183
161
145
54
82
108
103
109
170
123
122
108
113
102
95
116
118
172
106
134
81
81
85
126
127
157
95
86
73
139
143
194
113
93
103
132
141
89
113
93
149
108
111
100
148
92
85
121
151
112
93
144
167
108
109
120
86
145
88
143
148
98
95
173
115
135
102
116
180
157
148
98
113
127
80
144
95
131
144
155
133
98
127
102
171
108
95
87
95
112
101
103
59
160
124
49
68
112
101
139
102
131
54
87
95
124
128
135
125
137
107
109
120
102
123
123
102
108
83
62
102
140
131
100
124
109
145
146
103
177
104
54
125
104
96
120
133
96
93
89
171
95
108
141
138
94
87
59
129
97
68
108
92
160
106
116
131
54
106
54
133
90
87
87
94
98
134
54
146
155
106
123
98
128
102
167
72
159
93
135
54
135
83
98
83
62
49
118
103
116
54
94
116
91
83
80
107
108
115
102
113
123
132
129
68
145
113
137
124
110
89
172
100
125
191
108
115
134
87
73
97
49
143
54
117
77
117
155
163
129
146
108
119
107
74
130
86
115
96
131
149
102
76
83
135
82
54
119
112
108
82
102
98
135
123
103
102
49
129
159
108
106
74
106
128
129
122
49
81
123
77
76
153
105
126
77
133
81
103
122
90
59
120
108
77
110
128
87
113
146
95
115
124
54
104
135
87
117
106
108
137
113
159
122
132
54
108
95
146
115
96
54
112
232
76
102
90
93
102
74
98
96
107
77
79
49
145
114
49
120
86
132
117
98
106
59
121
106
54
111
119
104
145
108
173
83
91
130
49
98
128
54
104
74
103
83
143
115
140
88
188
155
110
122
54
123
139
125
78
82
78
133
49
160
74
135
131
156
105
152
54
61
95
148
132
117
137
78
172
96
102
91
108
147
59
141
59
108
161
110
146
120
90
95
59
90
104
139
68
156
133
103
140
127
171
90
163
125
131
85
153
123
67
108
85
108
106
95
133
78
98
127
143
157
158
160
155
158
154
171
118
108
94
83
91
151
61
49
154
133
59
107
74
148
87
141
124
118
77
74
122
134
119
107
80
83
49
139
133
84
54
113
154
128
90
116
127
107
134
119
140
154
69
102
112
188
148
165
155
108
137
92
136
179
103
117
87
124
103
163
137
93
125
95
158
135
74
130
98
104
95
107
122
166
90
102
104
160
82
112
120
121
74
129
123
132
99
125
116
80
59
148
133
116
77
194
111
105
108
139
97
107
116
54
117
108
168
97
128
103
113
91
83
89
54
92
112
99
90
87
98
113
67
123
116
102
116
98
144
106
131
97
149
107
110
108
115
122
93
85
82
105
102
100
125
103
146
131
105
118
146
49
90
95
81
132
190
97
146
128
126
76
102
128
49
121
128
114
157
135
98
98
90
140
131
113
132
115
125
108
102
121
74
99
86
113
90
129
84
84
111
139
113
91
84
81
137
182
125
112
134
143
95
81
76
109
118
54
113
146
74
105
93
102
181
98
101
137
84
120
142
105
96
98
103
83
98
97
179
104
154
137
83
102
95
125
114
106
106
127
54
131
99
135
49
70
49
78
148
93
167
150
115
151
54
112
111
152
134
87
121
54
106
95
110
159
87
74
101
141
175
96
138
117
76
108
125
148
113
160
143
62
81
146
129
185
132
186
92
197
116
54
143
112
123
119
100
93
104
87
76
133
110
166
149
102
132
102
102
128
93
125
167
138
78
81
103
125
110
127
148
74
103
113
73
59
135
141
91
123
90
141
105
165
164
54
77
135
67
105
95
95
106
102
97
123
91
110
91
74
99
111
168
145
141
65
109
120
133
81
135
131
74
80
109
108
125
125
95
88
126
105
122
105
91
108
103
154
144
162
119
140
139
162
74
100
129
156
87
148
122
131
69
115
148
172
125
116
112
110
77
98
152
114
102
147
130
76
107
100
105
115
61
177
133
102
172
108
83
122
81
94
95
106
135
135
122
54
77
126
122
68
93
96
141
103
179
95
119
74
62
54
87
83
137
120
149
156
54
136
95
98
135
117
180
90
103
145
120
165
109
106
157
111
77
98
111
123
105
113
135
102
108
61
123
126
86
127
146
130
95
73
108
144
110
133
87
61
133
96
139
143
118
82
143
102
144
143
95
119
116
78
105
82
146
170
149
134
110
98
103
84
127
95
102
121
147
88
111
128
142
113
182
103
122
78
122
136
102
87
193
132
129
98
98
105
123
54
98
108
146
129
126
152
123
130
153
80
97
129
133
87
116
111
102
78
115
85
145
79
129
100
133
117
107
138
93
124
59
106
118
195
138
102
125
68
143
139
96
173
92
135
101
83
98
150
81
106
54
74
140
150
49
109
177
74
85
98
179
122
126
98
193
76
67
106
163
104
96
116
104
108
120
99
151
96
78
116
89
98
115
81
109
135
148
105
83
82
159
80
104
87
143
140
145
159
156
74
139
96
164
146
135
138
113
109
199
158
97
89
92
82
102
81
49
123
104
105
54
136
102
127
127
81
152
45
114
88
160
139
74
123
119
87
126
163
144
140
122
85
114
113
87
102
108
91
122
122
117
105
133
85
100
143
116
90
125
114
108
90
128
116
123
138
119
143
123
137
112
115
137
54
106
54
87
77
102
82
110
114
112
131
154
102
133
54
110
144
98
143
216
49
98
108
93
142
177
154
117
83
104
154
142
120
82
100
119
133
103
126
93
116
110
54
153
108
54
113
179
83
169
124
81
154
82
159
106
77
83
61
97
143
172
149
140
117
113
96
54
122
178
128
120
152
103
105
194
137
102
88
163
167
98
101
157
137
96
135
109
157
54
92
112
168
141
133
95
119
154
193
89
84
144
84
148
97
113
108
76
108
105
105
127
131
108
112
108
49
138
124
110
113
123
87
105
86
86
111
103
143
158
146
108
141
149
108
114
103
151
131
119
124
134
135
117
107
107
140
135
136
140
78
151
54
113
70
117
146
86
123
144
123
138
82
95
118
95
132
134
95
130
54
168
87
87
54
136
101
109
132
87
111
149
99
156
113
59
76
170
122
113
140
143
154
126
148
177
91
90
54
117
130
141
172
130
112
125
148
102
108
90
133
120
92
117
59
135
113
91
126
112
119
128
67
114
82
102
91
106
125
102
150
143
98
132
107
170
115
95
105
125
135
142
97
91
129
122
119
99
129
138
95
97
144
74
101
82
67
122
82
163
114
100
173
124
133
87
163
107
116
112
158
95
112
82
76
127
153
77
80
104
176
54
119
122
162
74
123
177
54
59
140
113
151
137
54
109
95
127
105
143
86
121
119
77
94
98
99
122
129
110
81
145
105
154
107
104
102
153
166
83
79
168
108
115
97
87
92
88
98
83
172
104
102
54
118
107
77
116
120
161
153
105
127
93
106
122
94
121
135
87
80
190
87
100
93
54
125
54
89
131
154
149
114
122
95
117
157
129
87
155
98
129
120
77
129
92
143
54
122
133
122
165
135
112
61
102
138
148
125
49
100
54
140
73
120
161
91
96
132
149
125
114
102
109
84
106
126
77
163
152
49
77
90
99
77
59
49
156
148
130
77
128
139
87
128
100
108
161
132
135
152
108
87
107
127
99
121
110
143
82
76
102
164
54
81
54
171
113
138
198
154
69
56
142
81
125
92
151
102
93
102
108
143
128
132
121
130
167
54
122
92
97
98
124
165
127
143
95
85
110
123
137
126
79
159
118
95
122
78
89
109
89
102
132
99
100
138
114
153
140
87
80
74
93
102
122
118
54
126
128
90
141
105
124
91
129
80
118
82
141
89
98
81
116
113
140
82
103
123
61
133
142
97
85
150
177
59
78
123
170
125
142
128
106
133
111
98
158
148
142
102
132
163
87
108
146
106
106
69
108
118
107
59
185
76
77
151
115
105
135
83
143
67
147
109
104
49
153
117
87
77
133
126
178
59
95
116
157
81
181
68
99
133
133
148
129
112
145
90
103
131
81
86
98
100
78
111
93
126
108
104
108
141
74
204
190
95
120
133
151
108
116
114
108
59
148
54
161
148
87
59
142
123
96
98
115
100
129
95
132
101
95
108
102
103
147
89
93
81
124
54
177
102
139
171
117
131
123
105
126
137
129
115
102
156
104
135
102
111
95
129
93
98
134
102
81
113
129
113
103
100
95
100
71
129
150
96
138
173
152
95
133
152
135
117
106
138
103
161
181
133
132
117
111
132
98
139
136
102
95
59
159
147
146
74
115
104
116
115
103
153
108
133
81
49
113
151
97
112
111
98
119
96
138
146
127
200
54
95
147
125
87
108
117
120
125
126
142
147
115
95
106
107
146
110
87
125
120
146
132
86
127
120
154
108
146
135
157
102
95
177
179
133
108
102
161
163
134
145
102
160
121
168
172
191
91
59
156
93
151
87
95
54
161
104
147
145
128
193
49
112
92
120
180
87
142
139
102
54
101
86
95
89
108
112
54
103
125
104
74
81
172
156
148
118
151
95
134
102
117
137
118
122
111
83
93
168
145
90
82
93
84
98
98
78
118
69
110
133
104
131
158
113
87
138
81
99
150
81
103
95
54
106
108
124
120
108
91
109
148
102
130
107
95
155
93
96
100
176
158
129
125
126
49
94
127
135
98
95
117
87
123
139
82
146
135
109
90
125
95
133
103
101
87
101
108
151
85
118
123
103
93
165
91
129
91
124
106
138
93
124
97
99
78
133
95
98
65
93
113
103
74
105
124
83
133
113
116
100
116
195
108
177
98
112
137
109
103
162
54
128
124
113
94
123
130
113
194
126
170
100
109
77
107
148
154
118
54
191
127
131
54
138
112
102
96
95
87
129
103
131
161
104
122
81
174
76
78
92
107
65
94
103
114
125
136
97
124
152
81
119
136
125
114
106
85
92
108
81
102
138
175
150
49
95
109
109
105
118
144
164
111
80
61
194
120
144
124
137
104
127
119
100
108
106
90
90
148
135
134
107
156
105
76
119
115
96
106
164
128
117
106
102
119
54
82
87
89
126
107
137
125
122
101
102
102
153
122
54
156
143
74
76
141
108
131
87
140
98
113
118
104
98
134
113
113
95
125
49
54
102
95
103
78
103
81
108
111
121
81
108
103
124
133
107
59
79
143
87
49
54
129
122
152
74
73
125
85
95
112
147
76
59
76
95
42
106
133
145
91
82
110
181
98
54
81
125
118
49
61
194
148
103
148
156
95
118
148
128
136
93
74
125
77
98
130
153
109
151
108
204
98
144
98
102
98
80
77
61
103
128
136
127
107
131
191
77
96
110
124
137
82
98
113
81
84
87
132
146
87
91
110
140
76
82
98
110
147
154
216
92
98
88
82
127
76
111
112
95
129
107
104
90
132
102
137
143
118
184
169
98
106
133
115
78
102
145
114
70
106
79
144
95
106
95
111
109
102
139
124
128
135
144
131
147
102
89
120
49
135
54
161
73
161
102
142
106
177
133
87
94
121
165
112
147
115
152
168
108
54
99
138
102
120
145
78
154
125
149
104
108
115
90
95
157
114
119
109
168
134
78
74
186
115
88
93
131
96
68
108
59
98
121
141
133
54
79
103
79
108
154
124
96
90
129
105
54
127
133
169
131
135
147
124
118
168
167
158
134
85
144
108
172
81
87
123
98
132
95
106
107
130
74
122
126
102
112
124
108
114
158
128
131
138
93
54
144
99
133
119
116
117
113
108
156
110
90
109
111
74
72
134
122
161
125
111
90
117
141
49
148
49
107
124
81
102
122
103
54
115
83
118
75
188
81
78
95
116
78
131
132
119
121
102
136
144
87
124
49
67
103
123
113
152
138
54
119
85
129
105
103
87
108
213
42
104
59
144
120
69
115
132
81
67
100
148
124
134
136
105
63
80
102
137
100
119
127
123
132
95
135
123
159
109
76
115
139
67
147
100
112
93
108
84
107
99
139
102
148
101
113
160
139
120
94
102
159
142
103
98
148
72
87
83
54
133
161
96
93
128
127
92
125
76
93
132
125
65
191
83
96
123
137
70
122
177
121
96
69
102
156
140
81
158
105
103
94
91
128
109
131
59
98
120
167
127
103
73
120
128
99
118
129
172
103
105
81
98
144
140
128
128
135
119
200
126
118
70
86
125
130
124
101
127
157
124
61
162
59
138
150
96
147
98
116
129
96
116
127
111
102
59
144
135
110
125
161
147
80
114
150
126
137
49
82
127
104
142
103
49
133
109
127
143
94
103
131
54
105
78
131
92
130
108
186
54
152
54
102
137
90
87
134
82
76
112
122
91
103
74
120
70
108
95
177
54
127
149
130
116
143
127
103
110
157
149
135
179
78
127
170
171
102
160
95
104
77
130
100
135
113
105
125
134
168
105
98
103
102
193
96
158
80
122
167
143
59
59
112
118
134
144
137
90
112
101
159
54
184
125
102
93
113
128
83
131
98
135
133
111
149
102
169
133
132
54
98
135
138
118
49
85
98
111
102
155
139
122
109
110
141
87
126
129
111
119
54
109
105
98
85
172
59
95
141
96
103
54
113
144
159
143
95
96
107
123
111
125
123
68
140
131
128
114
93
74
108
97
157
84
94
123
123
126
164
59
149
158
108
132
142
187
98
80
97
95
146
93
54
95
125
90
102
128
98
104
82
95
80
104
100
125
101
112
116
87
110
68
134
102
148
74
112
54
110
125
95
49
103
139
90
96
115
98
119
161
68
83
91
95
54
104
107
138
143
101
109
103
141
76
95
118
94
102
113
108
103
94
87
54
85
125
108
69
103
49
86
149
90
121
76
113
96
115
108
90
113
118
124
105
107
113
120
90
90
148
166
102
155
115
136
135
132
101
112
129
137
127
102
123
122
83
150
83
95
102
54
103
84
54
96
146
124
113
112
168
162
175
179
143
103
108
123
68
130
95
98
135
116
54
113
130
128
95
92
120
54
103
109
95
106
128
127
161
114
100
122
102
116
81
61
167
79
101
120
116
149
125
148
106
115
117
97
122
125
139
102
148
124
148
97
162
54
127
122
92
95
159
100
104
76
102
54
131
143
98
131
86
143
156
95
132
90
123
98
123
140
149
108
159
118
121
99
140
87
108
109
54
87
123
99
114
131
158
74
149
216
92
167
187
131
92
128
90
108
120
108
91
101
121
54
93
136
120
107
122
130
77
123
163
140
128
121
133
73
112
61
148
137
112
115
94
165
122
159
124
110
105
107
102
141
106
177
145
91
131
105
90
115
108
116
154
136
106
125
142
155
102
167
152
112
91
90
94
130
148
132
76
126
73
96
118
122
173
49
82
112
148
108
114
128
119
98
140
186
77
71
152
133
106
54
79
153
164
125
149
204
90
108
135
68
148
145
82
111
90
100
115
101
126
89
120
141
125
117
102
157
120
116
103
87
59
121
145
135
114
94
96
137
77
69
213
149
119
107
114
68
94
128
150
144
133
91
97
145
162
124
145
149
167
143
85
54
146
139
49
98
122
139
103
99
54
104
84
107
159
126
100
77
59
103
138
131
83
116
117
93
148
158
49
138
98
120
98
119
81
109
143
116
89
122
114
133
130
125
110
78
98
91
135
95
125
193
54
106
127
88
95
107
104
95
124
138
126
104
112
87
68
87
130
104
74
85
132
95
85
132
54
95
102
128
123
107
159
159
101
102
131
128
77
118
128
49
144
123
81
129
118
98
150
59
106
85
127
129
125
77
77
125
118
54
93
107
108
169
90
99
102
108
79
166
120
146
107
143
61
151
156
93
114
133
161
155
129
125
159
128
140
112
148
143
132
98
135
87
85
133
155
95
89
139
123
129
98
99
128
159
69
130
134
119
54
105
128
104
125
170
110
105
100
74
125
197
127
108
105
67
98
102
92
59
95
92
105
104
133
95
140
117
98
54
148
108
153
148
113
135
122
116
234
102
88
103
87
127
119
106
95
54
108
134
155
95
54
156
127
128
118
77
81
81
133
99
95
137
131
124
107
143
95
113
69
104
49
77
110
108
79
92
116
87
106
108
87
104
122
95
206
110
74
78
93
110
103
93
107
82
92
100
93
133
143
159
135
129
135
126
105
105
81
155
140
131
125
140
101
135
103
147
145
113
144
161
125
103
147
98
107
85
54
98
89
90
194
153
104
101
177
98
154
162
87
120
146
80
67
54
134
126
135
96
133
82
102
150
98
144
129
102
102
96
120
119
158
138
93
200
154
175
87
115
100
81
125
127
134
131
97
103
104
91
98
108
128
68
124
136
81
113
113
120
124
81
148
131
118
118
82
166
104
104
117
112
54
162
87
74
123
157
115
90
109
98
93
110
114
120
120
102
149
61
101
98
150
105
110
120
103
117
102
106
131
106
121
98
98
160
104
119
81
93
138
104
81
113
113
146
144
99
109
108
82
105
67
87
95
98
131
165
82
157
137
184
82
144
111
87
150
134
156
49
98
148
100
141
126
96
76
90
150
162
133
86
102
113
77
99
102
113
173
61
144
139
108
140
93
158
88
105
131
105
95
131
93
122
118
120
112
103
69
113
54
122
83
87
119
139
78
111
114
95
157
94
140
142
113
172
146
133
103
87
72
98
85
102
191
163
161
82
115
140
86
112
83
161
147
126
154
99
131
98
108
126
112
119
59
87
123
139
93
117
145
146
141
143
106
131
91
127
110
130
206
144
129
179
83
135
95
185
122
125
177
98
124
104
108
79
158
97
101
103
95
118
119
108
139
127
150
102
85
108
117
82
94
84
77
112
82
118
54
113
138
102
74
96
93
104
59
128
110
96
105
150
157
54
82
49
90
59
113
107
115
177
98
137
133
102
85
100
79
139
102
117
103
67
90
124
128
154
111
155
144
147
59
76
108
129
175
153
61
81
125
139
127
85
95
124
154
76
81
120
128
110
85
127
154
155
49
140
108
81
145
118
130
54
81
92
180
121
154
149
73
108
194
106
92
80
95
74
131
128
108
128
102
131
102
49
107
112
109
80
143
127
132
95
131
135
96
76
143
97
126
49
101
115
105
105
153
119
96
81
170
125
113
145
107
98
168
128
115
111
88
100
98
108
141
124
80
142
94
98
103
106
177
90
141
96
98
158
87
108
93
104
107
125
136
125
76
154
124
98
125
92
110
161
97
103
97
92
121
91
59
98
130
103
171
123
76
122
113
110
197
113
142
133
69
77
125
150
95
115
116
102
132
117
119
85
145
131
141
133
49
125
54
145
98
108
85
108
132
128
108
125
69
104
148
106
54
122
115
148
108
138
143
111
76
54
128
155
109
149
74
104
177
136
77
117
97
139
151
125
87
100
88
102
113
54
177
172
160
85
109
127
148
96
163
110
134
138
137
123
88
90
98
79
128
160
102
112
96
132
131
113
100
143
100
85
155
99
105
112
113
177
80
70
182
106
150
123
78
104
124
106
160
78
134
54
131
98
112
85
102
173
102
113
120
85
118
154
103
145
98
138
87
141
102
109
76
165
132
131
129
165
95
118
143
128
54
107
108
87
168
122
131
70
133
83
139
139
107
98
115
103
111
101
138
54
113
91
148
138
109
103
82
93
142
133
122
97
67
105
59
114
140
188
111
135
126
78
112
103
133
98
139
95
117
124
76
122
113
115
78
78
149
135
54
128
67
86
81
154
111
103
158
124
135
139
107
142
149
120
113
110
128
129
117
101
115
91
175
102
108
80
42
104
82
95
169
103
170
94
96
128
117
135
122
67
114
126
102
54
81
108
96
140
128
76
103
54
99
148
88
102
102
95
110
83
108
54
120
146
105
151
156
130
54
106
199
138
138
103
108
133
59
130
99
87
81
127
121
156
106
85
124
148
74
97
137
119
102
95
162
124
77
108
78
103
147
133
114
105
81
92
92
120
114
120
140
85
109
110
112
149
101
141
130
140
141
97
102
143
104
123
98
59
108
125
194
116
108
105
152
71
128
96
108
140
166
114
121
186
128
76
54
101
61
129
116
148
118
149
83
112
160
104
89
81
121
87
133
158
145
135
49
59
149
108
138
96
100
114
127
118
110
103
107
106
73
116
135
94
81
145
80
100
144
103
67
87
96
129
54
113
115
116
115
143
116
104
128
152
116
112
87
77
49
83
132
152
146
74
127
115
148
108
135
107
92
120
85
105
146
49
127
130
108
155
107
157
149
102
54
120
120
143
103
122
83
148
143
95
99
125
108
107
149
140
117
87
191
194
101
104
115
100
122
76
121
145
103
77
97
128
76
94
115
143
153
158
125
99
68
81
90
148
103
54
127
129
124
136
125
80
106
129
135
111
61
101
113
87
117
81
54
104
126
84
111
138
127
140
96
93
128
148
162
87
146
96
143
144
137
54
128
90
141
81
131
81
80
120
74
157
102
135
59
105
109
130
148
115
129
148
117
156
101
117
144
128
108
94
102
168
143
129
83
128
81
105
142
122
76
103
103
118
115
135
124
113
108
113
99
140
107
177
113
76
100
125
129
121
131
74
147
93
127
76
78
109
120
106
120
113
130
113
134
109
149
54
98
132
96
95
178
88
118
49
153
107
112
103
141
152
87
106
134
95
98
102
98
78
127
165
74
90
111
113
145
151
162
77
128
95
115
83
159
54
132
106
113
104
54
54
81
145
49
120
87
125
158
98
49
158
76
81
100
115
125
106
49
147
124
107
169
133
133
74
144
120
146
107
114
115
81
131
125
111
112
141
118
122
161
73
136
92
130
76
146
138
158
138
101
54
82
76
127
84
80
106
138
74
82
96
116
128
118
98
105
127
80
102
94
81
120
122
108
142
146
135
104
81
113
108
132
137
102
95
106
138
96
98
119
113
95
97
122
68
103
83
106
177
139
94
105
131
83
79
120
134
93
116
122
85
146
117
92
95
76
140
95
142
88
103
160
95
96
127
82
148
189
127
54
125
139
122
134
133
108
106
123
109
95
200
108
70
81
118
96
95
103
135
106
164
121
118
77
128
163
140
117
102
139
113
102
49
95
108
123
135
134
132
132
113
103
135
85
104
103
103
145
87
113
145
69
99
99
143
113
108
118
124
93
74
49
99
65
151
155
90
61
129
180
123
120
113
180
90
77
146
154
130
127
116
155
148
54
54
133
49
87
96
146
108
130
70
109
124
101
109
116
69
151
143
95
95
85
114
92
123
128
149
79
128
76
105
151
108
104
125
104
54
133
76
105
119
54
93
83
91
123
96
143
146
109
108
162
54
93
98
92
108
68
85
112
95
109
112
102
133
93
199
87
134
163
95
116
142
115
127
135
104
135
54
156
145
135
108
59
127
129
114
115
54
135
95
129
125
82
85
78
103
165
85
90
116
150
54
145
102
106
100
108
116
128
132
102
59
98
54
130
151
175
84
143
139
150
107
81
132
161
74
166
132
145
105
125
117
123
82
107
108
99
83
112
98
161
108
101
142
105
119
129
120
108
143
98
77
87
80
76
113
81
49
63
148
96
162
108
161
159
69
111
152
153
135
129
92
144
143
87
105
128
74
177
128
105
150
130
151
76
128
103
126
109
159
235
129
113
118
116
96
105
104
93
135
98
115
182
146
96
143
145
54
80
100
90
49
136
100
80
97
94
121
76
102
74
95
156
120
81
116
97
101
74
67
128
102
116
49
98
113
112
139
121
157
126
81
147
134
118
125
142
81
141
114
108
74
99
109
99
108
145
105
124
54
113
107
76
174
89
95
98
91
107
123
135
75
102
117
90
104
95
74
116
98
90
76
79
112
102
67
124
129
92
122
59
109
133
106
154
102
160
82
151
147
91
120
95
102
102
54
126
180
82
81
91
82
123
76
103
113
141
114
139
111
138
90
128
105
108
98
104
129
122
200
87
200
80
81
165
84
129
127
152
133
105
118
128
120
166
153
123
95
122
162
144
111
149
82
98
130
115
131
95
155
81
121
135
124
95
148
91
126
182
138
54
130
102
156
126
136
163
143
107
125
81
97
75
106
103
166
91
49
113
127
108
118
102
111
119
122
113
90
108
143
122
143
119
104
49
90
111
54
81
137
59
108
122
76
130
177
90
67
108
100
103
103
61
129
81
136
93
109
118
89
49
73
142
105
98
106
113
162
89
98
160
102
122
83
144
148
83
91
76
163
118
125
99
119
90
125
74
118
74
98
98
94
165
123
147
126
148
135
113
104
124
125
164
108
124
125
93
148
92
85
113
100
90
124
144
89
96
133
145
140
98
115
59
163
80
153
115
54
102
81
76
91
130
166
49
108
90
119
144
141
95
129
133
126
89
121
86
54
95
135
93
144
150
54
96
103
123
59
102
147
145
103
160
71
146
136
99
127
126
122
81
116
133
133
99
148
121
111
87
128
145
161
127
83
108
87
113
87
158
86
171
93
78
113
99
127
131
54
81
133
119
98
128
131
153
82
109
158
155
115
139
93
54
103
92
68
90
104
120
87
125
94
143
49
97
132
110
54
146
152
168
119
102
94
116
102
169
101
76
124
95
76
117
90
175
117
135
131
82
102
102
91
133
158
113
76
134
124
108
49
83
124
125
180
127
120
103
136
95
85
113
124
103
125
54
120
132
94
162
121
98
117
128
121
100
127
82
103
102
119
132
129
151
120
140
54
115
113
101
115
118
96
137
54
151
100
161
108
151
128
109
54
131
167
118
94
102
131
95
122
49
99
77
140
135
148
137
117
118
133
73
151
148
135
68
144
106
54
127
54
113
88
126
148
133
143
129
138
93
128
102
115
117
54
113
99
117
49
173
124
148
61
125
106
108
108
125
133
178
90
106
84
120
150
129
123
88
141
105
85
77
102
102
103
97
103
148
117
85
128
100
151
100
102
120
136
144
108
79
84
124
108
127
120
84
137
79
132
158
137
54
98
144
102
105
91
76
85
133
119
108
108
87
61
148
131
54
177
107
105
131
108
108
146
49
117
125
108
96
139
94
148
127
109
133
156
98
122
54
114
145
90
91
122
106
110
62
145
77
97
101
94
112
148
150
115
145
151
116
85
90
86
102
82
108
118
144
105
159
151
139
102
102
103
124
194
95
54
82
105
124
68
111
54
135
54
140
102
138
139
128
124
142
91
87
163
131
98
177
169
125
163
160
99
81
114
143
123
83
101
137
107
100
133
123
98
108
125
129
45
59
59
134
83
129
91
108
123
59
93
98
154
135
98
90
82
102
130
198
136
109
145
109
165
116
136
77
111
49
112
181
108
49
91
103
133
122
122
155
145
109
54
141
103
144
73
192
112
81
154
109
108
144
125
133
165
155
95
93
113
102
118
95
98
103
135
107
81
82
77
87
112
97
140
115
85
166
115
77
85
90
149
54
90
108
98
95
115
110
117
107
59
105
73
109
95
108
151
100
95
114
115
108
82
137
141
126
161
179
108
120
140
123
118
113
145
84
83
108
108
85
186
102
129
82
95
98
163
80
98
110
81
144
92
102
113
112
80
113
200
74
129
97
102
93
69
112
103
154
170
120
167
159
103
77
117
103
142
97
81
106
110
119
133
103
79
102
107
137
92
131
148
115
163
150
150
131
132
103
134
95
146
97
95
104
129
119
90
108
114
125
112
120
95
138
110
105
81
102
105
150
119
133
101
70
148
77
102
159
96
115
110
124
119
98
141
124
129
79
91
146
155
77
120
137
61
68
82
134
126
49
127
54
123
107
105
139
116
100
165
143
119
127
81
92
49
105
98
79
101
180
99
91
120
88
146
106
131
149
126
138
113
133
93
147
74
132
148
95
158
97
125
109
99
54
149
98
59
146
127
116
79
118
141
95
115
110
150
139
116
109
149
78
169
107
81
91
144
120
91
129
164
125
116
143
93
127
78
108
90
95
90
139
115
54
120
127
132
93
108
119
121
112
76
130
144
160
134
107
139
180
158
82
75
181
165
110
127
75
158
81
98
123
128
108
186
85
121
127
105
125
81
144
123
146
69
135
124
122
124
103
158
90
108
114
161
131
95
97
140
107
109
90
108
186
85
103
99
128
100
102
133
123
74
54
78
125
54
128
177
89
102
59
98
115
100
108
110
115
102
101
148
103
85
128
98
124
87
135
165
125
165
109
131
98
105
120
108
99
95
93
135
169
140
113
115
124
95
106
141
90
90
125
148
155
87
145
131
81
70
104
54
106
111
106
135
156
90
113
99
127
148
176
99
105
112
138
98
145
110
103
74
125
99
143
94
116
132
120
123
74
131
54
117
125
136
119
111
221
90
81
125
78
131
68
99
93
112
131
59
134
147
144
139
120
151
93
93
81
54
87
95
111
127
103
167
221
128
129
74
122
119
184
105
90
101
95
153
102
123
107
122
95
107
96
113
92
108
131
128
121
125
124
139
110
108
87
125
127
121
103
115
81
98
174
67
54
110
134
127
95
123
96
110
122
49
99
125
74
113
135
131
143
91
106
96
76
177
93
132
152
116
78
98
93
54
54
115
190
74
96
109
163
95
118
102
97
110
105
127
79
106
107
139
109
108
131
158
116
93
135
146
147
140
102
99
100
81
120
108
81
49
149
125
108
106
147
77
80
87
154
111
103
135
107
125
141
101
105
98
123
106
113
140
54
128
98
67
134
155
146
127
122
95
105
105
109
167
97
133
130
154
120
140
61
127
74
204
110
149
95
80
83
54
108
87
82
139
81
96
95
128
158
177
98
134
74
112
132
143
125
54
89
116
82
145
54
87
91
103
115
81
133
148
104
143
122
83
109
145
108
167
110
90
145
82
114
98
162
81
162
109
153
123
54
148
91
108
102
131
95
95
114
104
90
90
122
134
149
160
142
131
54
164
66
103
90
135
140
108
74
89
125
161
108
133
80
139
122
83
160
129
89
168
128
80
49
102
140
112
103
153
138
112
146
114
83
173
108
166
148
134
142
120
127
140
122
111
128
114
115
45
143
108
113
90
98
142
98
102
114
108
140
104
132
109
174
126
140
120
117
93
108
124
102
120
54
191
139
92
87
132
161
129
113
213
95
131
86
133
188
92
103
110
117
158
140
104
122
49
108
204
131
121
123
103
133
89
102
177
116
122
146
123
143
98
139
103
133
133
133
108
145
141
123
165
103
125
54
120
102
148
133
91
95
106
80
108
137
102
100
118
102
123
117
159
102
113
93
124
192
49
147
106
140
160
144
87
95
59
118
141
95
54
102
77
115
78
83
105
113
131
122
117
108
136
126
100
166
85
155
105
108
123
90
107
81
54
98
113
105
109
125
175
54
141
100
119
77
77
104
87
93
119
82
129
116
144
89
90
99
134
83
130
76
81
101
123
128
103
112
125
67
144
90
100
142
96
76
90
85
132
102
93
93
79
98
121
99
148
76
107
112
99
173
180
88
82
140
106
83
74
97
144
181
103
144
97
95
106
54
127
141
147
111
127
103
80
104
108
125
148
100
87
54
67
135
102
74
109
49
111
148
108
98
149
108
74
91
82
144
54
112
108
129
140
95
149
113
83
147
81
131
110
135
155
77
148
148
169
107
108
177
103
105
127
107
141
67
109
152
133
102
113
111
127
118
107
150
140
95
132
103
114
129
108
144
98
108
49
92
154
116
127
124
129
82
178
141
90
131
93
74
105
106
87
77
81
93
95
132
108
54
167
177
131
161
122
110
108
107
137
101
125
208
153
105
108
149
81
112
124
87
105
45
103
54
110
90
82
87
160
108
148
99
150
140
125
125
87
93
115
136
97
168
145
107
148
177
81
134
59
123
119
117
124
145
106
147
149
120
108
145
116
82
114
59
177
102
167
138
147
145
156
81
93
162
115
186
103
94
78
130
154
105
104
78
111
81
121
103
128
134
105
54
80
131
109
128
179
95
128
122
67
110
102
124
104
88
135
141
112
95
179
177
165
165
113
131
131
93
116
87
132
77
115
95
95
90
122
59
168
98
125
163
123
106
108
82
103
84
102
102
176
110
123
100
132
120
133
143
97
84
98
120
180
81
177
102
146
139
174
131
110
77
88
81
120
102
110
125
132
92
90
110
151
144
125
103
146
104
126
90
74
121
105
169
78
158
120
103
128
100
102
109
84
112
143
157
89
93
83
143
121
120
110
143
120
130
120
119
148
87
120
111
103
95
131
95
98
178
74
168
125
92
92
110
156
83
59
100
107
97
127
101
136
168
79
121
112
85
146
93
102
102
102
105
54
54
59
114
118
133
76
107
102
110
120
161
103
61
80
117
104
108
99
157
102
117
148
97
82
148
126
108
111
95
110
108
116
119
118
103
86
138
101
114
96
125
129
83
105
105
54
127
95
133
95
102
112
118
155
137
87
116
81
77
74
78
54
162
98
145
148
95
101
140
102
126
152
127
94
105
87
151
127
108
130
93
125
130
129
128
79
49
147
95
99
87
115
54
103
100
102
98
100
95
137
88
107
110
103
122
135
49
133
109
96
102
130
94
182
82
143
145
75
145
116
103
118
169
117
105
126
90
133
107
108
192
125
67
127
95
68
142
108
128
161
126
144
148
131
114
127
151
177
105
113
87
157
82
95
204
102
172
133
113
92
133
172
104
125
122
163
102
76
111
94
115
78
133
131
101
98
134
144
153
54
111
114
108
93
106
143
78
102
85
177
131
85
112
132
101
164
76
96
97
112
98
126
103
90
90
95
104
100
123
151
103
133
118
95
120
98
92
98
120
155
89
175
131
133
105
102
151
137
71
125
128
82
98
115
102
73
76
103
95
93
74
120
95
77
65
49
54
106
153
162
57
100
78
81
98
126
139
105
124
49
122
143
87
68
74
146
54
103
95
131
135
153
67
77
142
81
121
128
87
102
135
129
54
120
101
96
108
105
127
101
77
121
120
114
81
54
138
157
157
103
95
148
186
188
103
88
103
103
138
116
116
77
108
114
198
160
76
117
137
106
115
166
132
149
94
117
115
59
188
128
102
186
117
135
95
111
144
117
145
148
98
114
107
132
100
54
149
49
102
110
169
90
126
98
148
141
67
132
153
161
176
54
144
95
78
149
111
104
118
109
103
95
145
127
137
135
59
143
128
129
128
120
98
148
86
134
107
163
133
134
95
126
182
133
49
117
118
95
110
125
54
143
68
128
114
91
132
139
96
146
54
89
54
76
111
127
148
125
128
129
155
128
134
90
143
93
74
146
125
95
108
133
113
59
120
108
140
148
118
93
124
144
133
150
67
158
191
106
65
173
54
162
103
103
143
101
112
98
108
97
89
143
106
135
54
125
54
77
193
128
77
90
132
193
100
165
100
125
122
98
173
173
103
97
99
143
83
70
131
175
151
108
125
112
131
103
87
105
61
140
128
103
124
128
129
95
78
108
124
102
153
103
102
150
77
98
162
108
135
101
144
125
59
54
68
49
122
102
102
130
118
155
110
102
149
105
131
153
98
118
98
147
141
103
68
145
125
99
143
108
108
61
107
155
106
96
115
131
102
108
76
105
146
85
81
93
145
162
100
108
79
106
112
103
92
125
130
91
158
124
76
173
194
105
167
128
87
147
96
81
73
154
91
132
82
74
54
140
115
69
128
124
95
85
152
186
102
92
113
105
54
115
149
95
95
104
54
85
154
116
105
122
143
54
128
97
98
89
97
97
102
72
87
117
151
125
149
148
114
152
117
124
164
108
141
89
115
81
61
177
95
59
119
157
122
107
82
135
139
147
104
98
114
109
125
115
109
105
103
146
146
76
139
98
139
81
96
42
120
160
96
196
103
54
121
133
138
160
100
119
157
124
100
87
104
150
73
82
139
96
95
83
49
96
136
117
108
137
102
156
180
130
118
150
146
98
146
161
122
108
98
83
125
102
124
143
82
135
129
129
151
127
105
139
118
102
107
89
81
128
49
85
128
127
108
115
117
105
131
89
117
98
131
116
144
147
122
61
140
122
101
107
98
139
79
148
125
95
92
147
132
123
167
74
83
102
184
74
99
144
117
87
83
101
90
125
125
87
128
97
161
107
109
95
108
74
108
108
104
113
180
137
148
107
162
143
102
136
119
122
113
186
118
108
54
138
54
100
107
127
78
97
142
119
135
76
126
118
116
158
78
121
88
139
106
124
92
150
131
98
117
123
125
125
171
189
158
108
108
95
106
98
104
95
135
113
54
161
49
128
136
149
67
54
124
155
165
124
74
127
78
108
94
98
54
92
80
109
124
144
116
134
78
106
149
102
169
125
118
98
133
77
121
116
54
61
152
90
112
78
155
137
134
127
104
170
127
125
54
108
118
143
152
81
183
95
136
103
98
131
106
131
74
139
106
157
98
148
123
74
69
87
107
133
103
116
180
148
128
49
95
99
138
174
141
134
108
124
115
102
98
118
108
95
87
93
131
99
54
82
114
111
108
115
94
131
90
139
148
87
105
133
139
107
98
167
104
144
148
109
120
110
146
135
102
84
99
116
192
82
133
92
111
119
105
89
54
59
120
149
111
87
134
122
84
45
120
125
143
122
81
134
113
105
82
131
160
123
108
54
104
54
125
79
118
49
77
113
117
83
85
108
97
120
135
190
85
177
107
98
124
76
116
164
118
145
133
101
116
128
133
153
86
93
111
90
87
116
147
68
122
161
125
108
80
122
42
90
105
122
89
146
130
59
57
148
143
125
95
103
146
101
121
83
155
100
83
113
156
113
89
124
120
115
126
168
69
139
127
42
112
141
172
140
108
124
163
143
108
108
54
148
145
81
115
90
95
90
81
108
66
106
102
151
54
135
140
86
97
87
147
106
106
74
125
117
133
143
122
78
104
111
102
154
122
98
104
54
129
121
102
109
102
126
143
160
111
186
108
75
106
123
145
98
141
98
126
125
125
151
133
130
108
148
101
135
105
122
117
95
142
90
139
130
165
87
102
104
102
109
96
128
98
135
139
169
145
102
69
93
79
67
108
120
142
109
82
105
74
121
120
113
141
158
183
115
120
103
102
78
95
103
67
82
141
59
139
100
90
144
49
138
185
86
110
82
101
131
147
120
164
110
102
108
133
95
54
77
120
124
98
54
146
86
102
115
74
99
92
124
81
107
76
74
113
105
97
107
98
135
99
111
54
149
120
99
103
103
86
88
91
54
136
128
54
102
140
81
97
200
88
87
85
81
93
163
108
95
135
49
115
175
170
125
116
177
125
92
121
139
106
109
95
109
54
129
150
105
125
131
133
76
102
146
183
150
164
111
150
105
140
146
134
132
137
154
107
188
135
137
133
89
97
128
103
98
74
98
125
76
114
107
108
164
93
140
67
93
143
97
153
85
115
102
116
92
81
74
148
105
62
85
125
54
105
125
74
134
102
85
94
125
162
80
163
97
49
107
83
147
127
142
78
128
69
155
115
127
81
87
129
54
109
122
91
111
126
103
91
79
135
147
164
119
133
67
103
122
131
79
148
93
133
141
61
69
137
97
110
161
98
128
171
90
90
108
148
54
129
59
110
144
166
49
143
144
108
142
96
103
139
99
108
96
54
108
81
179
98
83
112
114
153
116
78
133
128
133
111
124
90
83
149
108
127
82
88
169
147
179
129
93
112
103
133
98
97
120
83
54
129
95
87
159
105
155
177
93
125
154
98
142
108
97
117
54
54
93
87
77
123
125
89
124
105
163
130
49
144
122
61
114
123
96
109
95
79
95
91
184
59
107
134
108
102
114
94
54
108
146
98
103
105
153
90
59
142
118
127
164
116
107
168
128
135
125
143
148
152
109
164
118
110
117
82
141
128
120
74
54
128
106
110
177
119
131
141
115
107
161
114
82
109
100
111
112
87
128
97
111
96
54
83
165
182
95
80
67
113
154
87
108
132
106
144
116
54
129
157
143
112
87
94
93
157
149
128
105
85
110
128
123
116
137
49
161
180
151
147
119
54
103
49
68
150
112
123
77
160
129
126
127
113
135
96
125
98
100
133
152
54
87
120
112
88
128
163
74
128
108
95
107
121
74
113
142
98
54
112
126
161
95
148
91
143
133
112
193
127
133
146
142
81
167
61
171
127
140
87
148
82
149
76
132
105
134
97
70
105
76
80
110
81
49
122
91
168
134
79
137
154
96
130
145
118
108
140
103
91
154
107
112
80
54
95
54
67
112
108
130
87
177
125
136
98
121
108
78
98
98
121
129
168
54
96
125
92
149
125
118
69
105
158
168
145
80
155
155
112
190
116
100
128
134
160
124
108
134
120
74
85
113
116
103
123
110
129
117
90
81
103
187
98
82
140
133
108
115
125
179
97
101
77
54
104
59
120
147
131
103
162
83
139
113
133
78
98
131
133
103
110
77
76
91
139
78
122
74
113
96
106
119
76
95
143
147
108
150
113
141
128
95
134
98
89
70
77
95
143
82
127
72
141
81
130
107
103
133
97
115
83
172
97
91
104
142
102
130
77
108
161
123
87
141
156
102
111
83
54
78
76
103
54
152
78
129
73
112
91
95
108
116
59
118
120
102
104
111
67
119
90
124
162
113
127
161
132
111
142
148
117
122
93
108
81
107
121
127
102
103
121
69
138
54
160
106
117
107
106
82
125
103
97
54
128
100
79
171
103
107
102
54
98
83
54
152
120
97
147
155
129
122
147
134
181
105
127
108
54
137
49
94
139
83
135
105
109
120
82
162
78
90
145
126
150
186
151
125
120
118
126
113
114
135
123
105
74
107
87
125
180
74
102
119
54
102
76
147
98
143
140
113
73
87
82
126
113
148
98
168
74
118
113
156
125
164
76
81
81
107
112
147
118
137
54
126
70
136
125
117
148
134
125
145
108
139
95
125
142
149
147
123
128
118
131
116
144
95
68
103
120
90
79
139
114
122
123
83
125
117
74
54
103
76
73
133
123
85
115
95
59
102
81
122
95
148
106
147
95
49
118
102
95
125
67
118
128
131
96
102
91
141
95
127
86
153
113
81
87
125
95
141
111
103
59
104
102
130
67
76
90
124
152
93
92
133
105
135
136
108
95
116
97
168
155
49
108
78
139
125
163
113
123
88
54
124
93
54
102
82
127
61
74
112
137
149
87
112
165
143
177
116
116
126
120
113
127
160
137
97
138
54
139
112
102
113
102
157
153
90
81
125
102
128
54
59
99
96
123
95
156
106
116
140
139
61
117
77
54
138
113
120
105
145
67
110
74
82
59
103
66
107
76
81
108
150
143
113
124
54
126
143
123
186
110
90
113
87
81
49
117
122
78
146
148
89
54
54
69
98
104
139
139
67
105
105
135
138
135
132
92
116
74
148
123
61
154
119
112
122
115
125
103
158
121
135
105
115
135
124
127
116
143
110
104
163
137
134
77
80
113
115
54
101
114
125
103
96
120
128
87
135
102
96
143
81
105
89
107
81
195
107
93
49
131
103
200
82
128
103
54
99
82
156
127
112
49
116
95
42
136
102
99
143
82
113
159
129
131
96
74
105
106
98
54
86
93
110
110
123
93
134
159
77
112
135
177
139
110
78
108
126
132
105
104
96
128
98
154
95
135
158
76
184
129
98
98
106
65
113
81
141
127
69
109
112
127
96
162
99
54
129
140
118
105
108
116
156
95
59
93
128
118
152
103
108
116
127
108
108
123
101
137
165
98
120
117
122
78
139
113
143
155
131
156
90
163
127
144
108
154
90
135
87
102
107
121
90
122
108
115
92
126
94
87
98
81
95
177
54
135
113
90
108
84
115
81
122
112
68
61
132
122
112
88
103
95
91
135
92
148
74
140
122
98
54
126
140
88
167
75
164
127
169
83
161
107
106
103
128
151
87
96
117
148
142
120
140
110
120
49
121
131
156
165
86
99
124
127
140
61
145
111
95
117
74
107
162
49
67
135
112
112
98
117
82
59
125
127
132
117
121
97
115
96
96
120
117
141
102
112
144
115
110
54
59
127
103
140
107
128
127
102
136
107
81
121
102
160
54
49
79
91
103
165
128
98
131
101
147
131
106
133
199
125
108
95
133
115
150
108
59
150
77
76
97
177
126
128
135
79
128
116
102
125
127
49
68
127
99
76
118
131
111
103
82
107
49
98
94
81
95
97
144
116
100
108
140
145
160
88
135
143
76
109
174
87
125
103
95
95
146
126
118
125
59
140
143
114
158
93
97
54
82
111
93
85
143
103
59
112
100
138
140
87
115
139
54
143
141
90
82
108
124
108
168
108
113
135
95
122
131
126
122
109
105
118
116
122
103
115
74
79
122
136
158
168
102
49
115
134
109
135
131
98
91
123
89
106
164
125
106
135
85
118
97
136
82
146
77
103
81
113
77
74
144
99
128
135
91
133
152
101
134
119
81
80
89
113
114
54
98
160
107
89
102
115
103
104
130
96
95
90
106
133
128
95
131
114
124
123
135
182
142
123
176
74
199
91
95
126
99
95
49
118
127
119
159
84
139
95
105
49
99
124
95
128
148
142
103
77
108
158
114
103
98
143
159
118
122
59
143
77
131
75
95
149
107
59
137
99
74
120
103
49
138
104
103
125
87
129
103
103
90
165
123
177
83
104
139
104
126
149
83
98
143
120
127
131
182
105
165
49
107
102
90
112
101
77
129
49
139
54
103
140
131
151
111
86
91
83
108
113
110
123
104
76
108
109
120
122
99
97
80
140
148
116
78
142
97
80
102
131
129
110
155
129
128
128
121
92
70
116
116
95
95
98
108
114
98
106
80
82
109
98
86
158
78
100
82
87
54
123
103
125
119
120
131
134
112
108
134
115
98
144
180
116
105
76
93
153
89
135
98
122
161
104
123
145
95
92
169
93
103
145
85
148
107
82
108
99
108
113
108
127
90
113
145
110
61
54
106
98
168
86
182
129
179
106
123
54
99
87
116
144
98
147
209
141
95
98
123
129
125
115
135
145
76
80
116
112
105
73
144
98
102
120
102
117
49
141
59
124
97
127
111
76
75
132
125
93
165
156
136
69
133
83
114
105
108
137
74
140
173
87
124
102
119
68
120
102
158
82
97
94
116
99
130
93
61
54
144
97
96
102
130
153
117
138
113
151
88
85
133
54
135
153
117
108
81
144
73
143
147
120
113
154
138
108
122
108
149
105
107
107
125
154
101
83
119
103
154
143
92
74
156
162
97
98
159
101
92
143
156
108
151
54
132
54
118
97
108
116
97
130
76
103
135
113
54
81
128
74
102
49
140
133
113
90
73
125
77
72
87
105
160
81
141
115
98
59
158
67
165
119
127
106
45
107
90
95
156
102
120
102
118
102
74
100
92
91
91
94
49
111
139
107
139
96
105
156
159
108
107
102
133
109
144
82
138
93
115
88
94
118
107
76
113
144
88
111
125
96
80
157
108
151
134
82
136
90
109
125
96
149
142
142
77
100
127
149
145
116
106
163
120
109
103
92
113
103
102
145
100
158
142
100
91
119
154
81
103
82
88
115
106
116
144
121
150
130
95
126
95
102
59
153
84
59
125
149
136
68
122
113
91
81
98
77
96
110
144
157
113
116
159
177
107
164
110
94
101
121
139
190
85
106
120
88
108
129
93
107
131
119
150
124
112
132
113
138
101
125
97
169
54
76
100
120
78
99
105
144
132
125
98
97
110
108
148
113
212
96
61
141
95
93
120
160
108
172
83
100
119
96
123
96
127
113
94
121
59
98
135
129
139
148
104
131
91
136
80
132
106
119
123
112
77
97
126
113
101
177
96
125
118
107
105
119
108
97
143
93
110
120
105
95
135
167
129
81
126
100
114
54
102
133
102
101
111
97
59
54
179
96
107
108
114
118
106
49
112
167
151
141
143
179
95
134
82
83
125
74
90
83
176
125
83
122
54
108
103
135
82
111
110
122
156
95
95
144
129
139
94
70
170
113
111
91
105
104
145
158
113
116
100
142
160
54
179
125
78
110
106
103
142
135
122
102
176
83
148
95
106
69
121
67
135
87
116
124
119
83
49
54
54
82
100
82
106
107
128
105
103
144
95
80
113
87
149
108
105
102
108
93
129
92
125
63
153
143
153
161
99
201
133
67
102
142
124
169
158
68
77
90
125
148
109
78
81
95
177
90
108
83
117
61
148
120
85
108
102
90
49
131
101
126
111
164
135
163
122
112
122
103
148
136
81
136
173
137
115
105
126
124
105
141
105
177
126
120
148
139
120
103
88
190
149
74
102
108
107
117
169
154
128
147
106
145
100
128
77
90
108
120
138
65
160
142
79
54
113
94
95
120
116
103
103
123
116
131
68
109
81
76
107
195
151
107
148
81
78
93
122
76
115
89
100
107
135
97
76
98
127
133
99
74
120
99
142
112
160
115
105
143
130
150
108
156
101
140
87
113
162
125
89
143
136
100
157
127
88
106
80
74
96
79
118
105
118
124
125
144
54
82
147
165
204
109
119
131
100
158
118
76
102
92
94
148
104
125
78
148
81
142
111
122
146
145
108
81
144
125
65
73
59
54
148
125
115
89
131
102
128
84
138
181
153
145
121
172
108
127
108
98
134
152
133
102
76
123
148
143
128
95
154
82
98
67
165
95
69
107
92
74
120
138
54
94
96
123
164
132
74
112
103
118
59
95
109
151
132
93
120
149
81
118
80
163
128
104
108
108
123
133
161
89
131
128
95
98
68
141
102
102
59
169
162
78
109
105
108
112
89
108
133
115
54
93
76
79
116
153
87
157
103
184
145
148
112
74
159
132
131
85
128
112
95
121
113
145
143
131
128
101
147
117
130
106
83
93
113
105
142
148
98
109
155
136
113
83
142
140
101
119
109
104
154
118
137
122
102
152
114
115
110
95
108
102
121
138
125
127
88
98
115
45
99
133
87
127
114
104
85
145
90
158
113
105
95
113
81
141
115
96
112
157
83
54
103
155
86
113
113
103
92
103
96
128
148
74
78
156
54
87
102
106
87
118
124
120
113
173
151
108
131
95
132
134
149
95
121
93
115
69
102
149
105
102
108
77
122
77
125
141
163
81
103
104
114
103
138
151
108
122
149
175
124
119
152
157
147
80
124
123
177
128
119
95
180
105
158
133
184
151
190
107
100
102
104
90
115
132
131
61
83
132
105
118
70
115
115
103
113
150
49
89
145
106
119
89
117
81
128
113
136
132
82
139
76
84
104
100
90
98
186
177
140
116
77
135
102
145
103
141
131
95
121
54
89
80
125
98
174
87
114
152
54
124
133
98
107
113
183
95
125
88
133
102
61
179
96
125
119
89
78
74
106
113
130
110
127
132
124
74
104
111
80
149
113
103
54
93
127
119
183
132
177
93
106
67
87
147
138
127
124
102
93
148
138
146
79
107
131
73
61
80
124
123
154
104
102
129
127
67
117
79
115
112
90
108
132
120
98
92
114
155
122
176
151
135
133
118
93
131
128
125
54
175
157
87
164
125
59
57
175
90
140
159
131
147
103
54
111
59
108
125
70
91
59
74
131
137
87
151
157
126
101
129
141
113
156
135
101
143
113
108
119
125
146
103
103
180
74
145
145
101
59
104
98
129
101
110
69
98
138
103
103
133
54
54
74
152
120
102
68
103
128
127
126
122
102
102
114
108
101
126
54
106
139
104
139
137
115
87
95
96
110
145
125
87
119
91
87
164
102
143
98
91
82
109
102
120
131
104
115
146
180
110
113
124
161
112
107
113
49
144
97
103
119
116
74
158
61
98
90
81
104
76
108
119
91
133
93
49
120
107
100
141
108
129
98
155
69
74
134
137
145
125
136
172
133
107
74
77
148
133
102
123
87
181
116
85
123
98
117
121
130
87
152
114
132
150
141
179
102
118
129
97
133
119
120
102
160
95
119
119
156
103
127
103
78
135
126
109
137
90
122
161
160
144
136
160
102
144
128
138
90
127
129
133
125
80
161
78
95
131
120
157
95
120
54
190
125
102
86
88
165
65
81
128
62
74
87
124
119
95
83
98
103
129
177
131
92
113
91
49
152
140
128
177
81
135
100
116
132
115
93
103
133
113
97
176
82
133
126
157
99
90
108
112
111
92
125
133
138
95
157
127
154
188
142
128
114
49
100
139
146
148
54
151
49
148
103
54
78
137
180
101
190
133
134
45
152
94
155
87
154
152
119
120
105
143
94
68
107
102
160
120
152
107
98
104
83
92
90
103
95
194
94
101
59
86
87
106
129
114
160
81
102
54
141
115
84
101
93
98
145
135
124
156
90
103
49
125
49
105
108
137
54
87
102
54
159
103
177
81
77
138
77
98
90
133
115
112
133
127
140
101
100
108
95
107
98
100
120
91
106
87
141
139
81
128
110
105
165
54
83
122
54
126
90
125
119
59
102
115
138
108
120
133
111
101
127
107
133
175
62
142
74
94
54
98
120
54
122
82
98
98
123
112
133
119
129
149
111
127
109
149
170
143
54
87
118
102
130
131
92
54
67
156
87
95
69
151
136
103
117
113
54
90
97
161
110
132
135
95
134
49
120
102
124
136
96
123
104
82
74
137
120
152
108
114
131
102
87
102
92
93
161
118
140
100
54
98
119
83
81
74
122
101
106
102
113
68
133
105
90
79
54
98
102
115
111
120
99
113
142
76
54
54
113
108
93
111
110
108
114
90
144
144
107
149
91
77
96
59
95
81
88
106
96
150
135
100
114
98
73
136
65
129
102
146
144
136
129
99
69
84
49
77
109
107
93
125
88
98
97
115
102
128
59
103
104
103
110
105
61
158
123
132
140
165
119
94
130
54
95
114
193
143
54
123
171
157
149
89
150
134
49
165
124
109
127
177
144
93
103
96
109
78
108
137
92
115
148
105
68
91
149
102
186
120
158
110
123
74
199
125
207
114
87
133
95
144
99
107
127
160
116
147
138
112
54
125
95
96
102
98
102
114
102
132
148
93
108
133
177
108
102
135
133
67
59
74
147
185
130
59
135
166
89
81
140
167
81
190
67
88
127
113
69
93
108
138
182
80
73
106
91
122
172
125
102
128
122
95
95
102
94
113
102
95
105
126
138
116
141
202
125
112
140
131
95
143
127
161
124
153
108
101
150
114
99
148
148
49
121
81
172
147
112
80
165
107
102
133
90
106
57
141
126
86
164
65
69
108
102
103
108
132
229
144
131
133
54
78
144
54
107
137
78
205
107
83
154
179
105
122
117
125
91
49
102
163
96
97
88
149
224
81
122
75
116
67
102
129
102
54
138
119
115
134
125
129
54
99
80
106
131
148
107
92
130
92
112
153
102
148
81
105
45
126
184
98
108
102
121
42
121
59
109
77
132
204
81
124
77
115
111
118
174
89
152
143
95
54
152
136
142
113
121
93
140
121
83
100
172
149
102
111
81
116
95
76
98
110
108
89
98
87
153
146
93
143
134
89
152
148
49
103
107
128
125
114
177
130
108
82
103
90
135
125
87
74
54
121
92
133
110
128
146
164
134
130
59
133
85
92
102
123
156
84
98
139
115
49
152
128
134
149
105
136
173
125
61
141
102
101
102
140
108
130
98
127
120
143
111
133
154
143
84
119
113
132
171
119
135
98
135
54
127
87
108
102
128
102
169
126
124
113
153
59
120
135
112
154
98
108
108
69
108
140
106
83
151
130
94
115
113
112
54
54
119
131
177
161
120
188
108
113
130
128
83
101
133
147
95
149
191
93
78
119
122
171
165
147
155
97
131
177
141
105
201
74
144
120
92
111
93
54
119
103
190
124
102
96
128
122
188
207
129
179
79
74
141
109
129
148
140
125
77
125
68
77
98
90
133
102
77
134
110
102
130
124
143
77
129
120
194
78
69
102
89
120
113
139
123
131
126
102
136
153
77
86
110
143
133
105
93
112
90
165
93
175
168
90
118
151
93
93
120
101
118
142
78
54
134
65
113
118
104
117
54
87
131
177
133
122
132
139
54
129
133
101
87
110
116
91
110
90
177
98
98
54
126
114
148
54
49
96
128
88
77
134
119
133
155
108
113
76
119
117
144
124
102
78
102
83
129
106
120
105
93
155
156
116
78
138
128
140
183
158
102
95
128
77
102
148
77
78
165
108
125
179
111
148
111
61
100
126
154
92
108
129
144
125
83
129
133
113
127
172
106
177
120
104
95
123
110
115
90
83
149
140
127
132
94
160
164
129
77
120
180
108
133
93
102
114
119
97
175
110
103
109
141
102
149
68
102
103
151
94
117
107
138
107
116
109
136
104
163
155
102
131
103
109
54
125
140
83
120
102
163
69
128
112
119
119
95
68
87
93
86
81
129
103
90
100
135
77
126
141
93
147
157
108
85
76
93
119
90
81
104
90
129
156
111
135
128
83
106
90
141
134
144
105
49
131
171
115
106
123
139
100
96
144
54
95
125
94
130
121
98
150
137
98
91
87
95
123
77
133
102
119
167
141
140
122
127
150
132
80
96
113
114
59
115
104
54
110
108
112
49
146
121
115
49
93
74
82
125
101
75
103
190
100
119
169
90
83
129
122
102
110
92
102
108
134
81
83
143
140
107
129
102
59
105
120
102
68
138
88
113
148
134
81
138
54
120
92
112
100
114
108
90
108
90
115
92
108
82
94
183
167
120
128
114
108
112
134
90
104
121
110
103
100
96
143
122
105
131
169
162
103
105
139
150
129
91
119
98
74
80
103
108
126
74
104
169
157
81
106
99
140
131
118
107
132
159
97
140
151
120
90
115
74
90
159
85
122
92
116
104
95
87
77
148
82
123
129
94
77
86
131
132
54
67
97
151
129
146
143
105
108
99
107
107
95
79
154
135
95
54
153
158
113
163
158
133
90
113
141
90
81
79
108
108
159
131
131
133
143
144
146
108
108
165
135
125
81
139
140
107
77
151
117
103
125
160
82
98
117
126
85
146
114
54
92
107
102
127
105
131
128
111
117
84
105
135
108
92
149
118
96
114
155
135
122
81
104
115
139
83
145
92
125
113
98
106
149
93
134
73
87
102
120
129
146
128
146
115
74
90
103
131
136
135
112
59
81
177
118
96
128
105
108
81
102
115
128
93
107
134
146
158
129
131
132
135
177
112
119
161
54
105
74
91
110
150
49
105
170
139
88
130
141
104
120
90
107
169
92
122
127
117
106
73
124
84
79
137
137
111
102
69
106
120
141
143
156
144
102
116
99
134
124
167
119
96
113
135
99
151
163
102
99
81
98
102
105
141
141
49
100
131
141
83
82
148
130
168
123
112
100
54
164
103
101
110
129
90
149
105
154
76
82
133
85
54
102
96
125
76
130
133
124
131
126
177
85
127
148
148
93
134
90
133
159
122
93
130
129
124
128
83
179
135
107
147
94
97
81
116
121
119
134
133
132
165
135
105
180
93
96
155
87
102
98
84
114
136
69
146
127
94
131
120
98
129
108
140
78
102
160
113
118
95
76
91
108
128
54
67
160
93
135
97
95
108
90
88
69
108
149
143
59
104
147
149
95
106
139
177
158
118
93
107
54
103
79
98
141
143
128
76
81
138
148
107
76
120
158
154
143
98
157
165
139
90
175
139
144
114
179
87
164
142
180
98
108
118
95
140
122
93
107
49
120
131
134
133
119
95
96
91
81
128
131
108
98
118
92
95
190
74
90
73
121
76
150
112
116
91
113
81
92
106
67
77
155
136
108
153
89
144
124
147
125
119
101
95
73
79
143
112
68
83
87
132
100
102
79
156
131
206
88
97
131
128
102
92
136
135
108
88
95
153
106
135
127
137
108
115
138
77
136
114
182
87
156
120
110
159
128
140
150
140
85
156
127
80
93
149
124
93
134
87
125
87
180
122
216
106
95
77
54
96
138
140
98
108
125
139
113
87
142
115
91
141
97
93
143
105
49
85
110
113
108
140
99
93
110
139
107
155
130
88
131
95
129
59
123
130
109
125
112
80
125
138
122
69
76
148
127
108
157
170
99
95
102
94
83
115
129
111
102
54
67
104
162
127
121
128
105
141
54
118
209
93
120
103
169
89
108
108
109
133
125
123
113
54
113
161
54
111
116
94
117
121
105
148
133
216
95
83
132
145
84
104
124
74
129
81
77
148
177
108
100
83
119
138
133
76
81
127
169
69
156
197
147
73
121
120
123
132
103
113
113
108
59
93
108
68
90
54
59
111
147
81
168
139
93
131
84
207
148
109
118
109
154
125
124
90
116
157
117
90
80
131
83
139
122
160
148
99
85
98
93
117
142
85
93
168
131
140
87
90
121
170
108
90
143
108
81
59
122
54
186
79
166
132
113
177
126
104
94
140
120
140
108
127
102
114
106
114
147
77
107
160
127
87
97
172
100
116
109
129
108
96
136
135
98
104
119
113
49
129
141
146
139
124
131
115
158
98
95
103
139
132
146
110
98
163
152
117
118
178
129
73
98
89
125
92
95
119
103
92
106
88
81
184
89
150
123
130
96
87
98
139
126
177
76
145
113
106
114
128
112
95
115
143
118
95
108
54
127
119
81
161
151
108
110
126
116
103
108
176
153
109
135
54
119
112
127
145
74
135
115
167
98
76
54
80
134
107
125
125
102
83
118
115
135
103
54
89
90
98
102
100
108
115
114
102
105
119
67
133
80
96
102
110
108
120
148
109
154
95
76
145
162
104
161
86
154
123
134
114
200
97
148
87
136
133
97
148
96
158
49
104
195
95
129
90
93
133
147
92
125
129
98
88
117
106
159
131
145
154
54
78
101
142
105
92
98
155
102
82
71
95
73
94
102
76
160
86
117
126
73
73
133
122
133
104
143
123
137
167
95
76
103
103
86
138
131
108
140
141
145
54
49
126
125
107
68
134
112
140
131
112
167
111
173
140
93
164
147
95
95
108
93
125
95
54
123
132
67
81
165
54
103
93
94
156
69
95
115
96
96
163
96
99
54
132
141
128
81
145
122
124
125
164
145
133
130
161
87
181
168
128
127
139
118
91
140
142
84
144
148
90
106
135
104
54
94
112
141
133
77
93
124
105
105
101
124
103
101
108
112
125
110
117
190
59
84
155
76
117
98
61
123
128
108
105
131
108
155
119
76
103
136
95
61
108
102
105
139
172
156
145
108
49
87
105
129
162
169
177
111
126
104
112
142
84
96
117
115
103
96
140
192
93
105
125
160
145
109
112
103
139
131
139
160
115
98
85
126
98
122
99
105
54
101
131
102
135
130
148
107
59
81
112
113
103
110
104
104
116
87
106
98
106
95
128
105
115
102
93
92
177
119
54
95
131
124
95
126
191
99
106
154
95
145
170
176
81
133
135
100
150
108
117
78
74
108
83
129
76
151
122
108
82
123
137
90
107
153
77
161
108
159
74
191
95
153
74
122
65
98
118
129
120
92
116
95
80
148
165
92
121
108
116
59
148
120
156
90
83
123
108
129
108
124
168
105
54
138
91
143
87
95
130
88
95
139
102
88
109
118
128
119
54
144
91
90
54
97
76
122
100
137
104
111
127
104
125
148
108
79
131
87
102
135
90
137
94
110
145
112
111
142
110
108
93
138
146
59
158
94
146
98
125
87
134
78
129
129
102
93
123
117
106
105
125
135
133
158
106
45
103
120
120
131
152
143
127
113
92
148
124
54
54
158
93
101
103
76
162
155
102
125
150
113
103
106
112
162
132
81
112
147
91
109
143
158
120
134
114
122
82
129
145
120
115
97
126
113
120
94
99
97
125
95
99
95
92
177
87
162
104
174
94
167
148
124
117
116
139
108
127
105
134
93
105
125
160
106
89
84
54
134
153
114
125
131
78
119
106
125
100
102
163
95
76
115
140
115
165
111
116
121
149
107
117
125
131
103
111
96
134
92
147
133
95
146
95
115
145
89
145
90
135
45
124
102
98
97
127
54
115
145
98
59
124
99
96
107
135
129
135
84
148
183
99
122
147
110
139
128
165
134
143
111
77
102
180
59
67
99
72
139
103
108
105
177
139
108
83
98
101
145
131
125
54
141
106
78
109
107
113
119
123
98
86
117
120
135
103
116
124
104
108
111
110
112
99
123
98
108
122
142
144
141
129
65
123
164
121
77
61
121
105
184
130
49
133
113
102
128
125
106
113
133
122
143
157
199
95
146
127
116
93
157
120
138
117
138
72
149
119
142
125
104
49
161
130
87
148
122
98
132
115
49
185
113
147
133
124
54
95
112
99
92
141
89
106
79
113
54
141
85
113
102
114
123
54
138
54
125
99
104
76
94
132
110
126
67
110
91
61
147
113
88
131
148
67
115
117
118
102
147
68
127
89
54
81
125
90
102
127
107
124
149
126
140
131
140
98
200
191
115
77
100
133
103
128
132
169
140
132
114
114
54
157
87
132
185
89
146
97
180
105
102
125
135
108
74
65
107
54
131
158
97
128
76
129
103
49
102
143
99
112
116
54
138
105
145
113
54
128
170
98
114
54
107
107
153
123
116
139
54
111
103
206
145
90
104
67
124
114
104
127
163
88
107
145
149
93
98
85
87
145
122
227
82
108
116
110
118
129
93
125
78
75
152
101
102
109
125
128
108
82
112
59
59
136
109
94
54
96
76
140
115
180
77
94
103
125
111
92
167
140
150
188
118
54
155
127
98
102
113
139
108
125
112
74
116
125
138
124
93
174
78
120
129
124
54
135
81
95
120
100
136
95
104
118
136
116
114
114
128
128
104
79
78
176
86
137
143
110
132
149
80
54
98
81
100
142
103
158
121
84
125
123
73
150
161
103
125
168
141
135
137
158
133
194
95
127
109
100
123
101
146
167
178
177
81
97
127
102
123
131
97
74
116
145
78
81
157
111
127
175
90
101
153
76
124
115
103
98
76
76
118
67
124
113
199
95
80
98
102
117
109
129
90
96
148
133
62
67
126
95
129
184
177
108
76
142
108
101
117
140
76
133
121
172
90
123
54
103
102
123
129
125
95
92
121
202
135
131
95
118
128
142
119
121
125
135
113
148
119
82
54
166
54
103
94
145
125
98
112
98
152
103
127
109
138
119
76
104
142
82
85
161
120
90
87
96
144
101
146
139
96
88
127
129
103
121
129
127
112
150
94
151
106
96
124
153
122
104
186
102
82
174
82
95
145
120
116
74
139
155
113
140
95
95
156
90
73
116
163
141
135
110
119
103
128
131
67
54
141
49
96
98
116
127
116
139
168
135
138
81
110
120
105
84
114
145
132
114
78
156
86
117
133
59
146
144
150
194
97
146
75
131
95
82
161
130
67
120
155
106
98
145
95
80
61
78
181
95
112
78
177
102
149
139
143
123
49
108
147
103
99
49
126
126
102
135
81
147
151
125
114
177
74
87
133
108
118
122
168
95
128
82
167
91
143
87
98
165
140
133
182
94
93
108
165
197
107
143
145
77
139
108
105
104
112
107
68
97
128
82
102
103
135
149
107
83
117
146
106
106
67
157
131
113
143
100
113
69
109
125
74
113
122
107
153
164
105
139
154
134
125
54
81
114
103
135
119
115
121
114
163
147
126
108
59
144
87
108
148
102
160
150
107
187
90
107
177
191
129
196
125
102
107
93
87
124
96
114
154
109
153
151
147
117
90
77
104
111
90
108
130
105
109
94
102
87
114
90
187
96
122
81
102
148
141
54
102
108
119
137
104
102
96
174
147
98
102
54
178
98
135
119
125
54
114
122
76
108
121
76
128
95
156
108
95
95
90
127
148
125
65
92
132
105
91
126
74
101
121
59
148
96
141
77
93
113
90
167
74
130
59
113
126
99
133
113
135
163
90
130
81
122
127
166
145
54
90
98
146
85
109
111
135
114
143
163
85
127
98
194
123
93
124
42
101
93
68
121
103
107
89
121
91
154
135
133
126
128
119
116
81
80
94
95
93
49
126
102
90
59
122
134
102
118
103
74
103
49
101
116
141
155
105
111
135
90
128
135
133
135
95
98
134
126
97
102
167
124
108
110
79
131
69
102
99
113
135
120
76
120
95
112
102
98
131
102
103
143
92
59
54
113
102
165
143
89
98
112
156
144
146
95
167
111
124
108
148
169
102
74
101
49
141
165
90
105
98
123
140
115
81
146
123
126
106
102
110
108
132
133
133
93
73
117
155
135
103
87
167
142
54
124
122
133
100
102
42
93
123
126
141
105
104
107
141
96
129
188
139
114
78
133
98
133
134
95
127
54
85
112
103
139
103
131
146
159
162
102
108
69
140
115
138
95
131
133
68
105
108
100
90
103
139
54
85
95
114
113
86
131
89
139
95
116
123
105
82
103
145
127
85
95
77
96
95
144
123
108
108
118
49
96
81
131
135
95
154
147
157
140
95
94
119
54
155
119
95
103
113
103
67
78
134
61
123
106
143
83
108
114
95
117
59
59
95
81
141
91
110
49
123
98
121
102
113
113
134
192
151
74
123
75
91
120
108
102
118
100
90
113
115
95
101
92
76
147
145
102
102
96
72
107
129
134
106
119
77
135
54
67
90
113
121
135
100
133
132
134
122
82
96
146
92
96
113
87
97
90
153
89
161
74
107
77
149
83
137
127
82
94
70
103
113
103
172
121
127
156
126
81
125
98
200
112
158
98
95
101
96
100
84
200
153
49
137
93
103
115
85
114
93
76
143
77
141
153
98
104
81
90
145
90
131
121
86
116
141
122
81
98
81
156
93
62
157
103
102
122
141
108
113
182
155
121
133
89
89
94
89
54
133
84
148
54
95
108
105
76
159
144
144
87
157
107
82
145
144
95
110
92
106
101
145
95
86
102
102
148
107
141
108
81
113
102
133
146
77
194
95
109
76
104
124
122
142
112
90
141
140
70
108
101
158
155
135
108
113
127
161
124
54
98
59
150
166
113
69
200
113
125
78
67
89
86
89
132
118
99
131
83
76
128
153
49
120
108
175
90
146
138
110
101
152
135
133
123
140
106
104
98
130
128
91
87
54
78
88
135
149
59
119
119
148
81
96
116
98
87
108
128
161
158
95
138
132
124
98
109
102
109
149
103
118
165
131
133
135
101
88
116
103
105
158
76
86
83
89
169
120
103
131
131
82
173
94
139
135
121
128
94
100
83
78
122
106
95
81
90
158
102
54
144
105
105
107
118
81
144
111
144
61
95
77
74
95
140
138
200
95
165
153
102
165
114
92
113
139
85
102
129
133
116
84
140
106
121
94
105
133
101
112
81
135
126
107
177
54
138
54
154
133
139
102
81
104
81
105
142
126
107
106
140
165
141
97
131
141
61
76
98
103
82
128
136
87
143
104
98
109
112
144
111
145
79
81
158
100
178
154
113
107
139
137
49
180
59
110
93
86
91
157
93
116
54
108
125
126
98
106
61
110
77
139
161
103
106
54
144
74
116
84
144
139
86
79
81
112
83
108
156
169
107
177
97
145
84
131
91
148
154
93
104
112
97
78
49
135
120
122
161
81
139
114
177
113
145
139
136
146
126
152
98
107
87
93
86
115
67
116
98
113
139
95
133
113
122
112
76
140
83
106
147
109
107
81
158
49
141
94
80
134
108
105
77
148
103
78
59
94
59
113
141
117
101
54
108
105
131
122
125
81
95
78
146
120
97
118
96
96
102
129
121
108
79
96
161
90
117
111
83
102
127
205
177
141
164
110
99
159
54
74
81
109
101
139
104
54
70
83
112
94
152
164
49
121
102
148
49
139
95
61
147
138
100
109
117
81
101
136
137
149
102
106
161
105
119
139
135
123
103
110
143
105
76
145
146
103
76
108
123
108
108
105
54
143
100
42
116
74
104
145
124
109
110
74
54
135
154
108
99
95
106
49
108
161
179
123
138
134
54
115
128
116
100
118
125
84
157
133
95
95
98
127
122
118
160
93
116
85
54
104
120
129
98
98
70
152
104
115
107
102
76
90
108
76
149
108
115
108
100
113
61
120
140
81
108
118
85
157
102
106
81
143
161
87
168
108
132
49
115
177
90
118
74
149
131
73
127
107
128
140
102
108
59
128
133
77
153
89
108
139
102
117
54
155
178
122
112
83
102
108
54
134
95
98
101
165
102
115
126
113
102
120
97
88
156
103
93
103
120
128
158
140
125
113
81
90
99
154
161
106
116
97
67
102
123
91
161
98
125
115
136
102
138
141
148
188
89
54
144
133
136
156
69
91
152
131
166
137
123
118
95
110
82
100
45
117
93
95
78
136
93
83
141
115
132
135
96
111
130
118
98
112
119
148
143
54
97
93
114
74
117
131
102
124
127
96
49
83
125
77
141
125
138
100
158
103
113
159
102
135
93
102
90
103
140
165
97
42
95
123
54
94
68
122
99
147
144
95
157
85
106
129
110
110
80
162
113
49
110
98
190
158
112
113
115
108
135
145
54
103
155
114
108
91
93
123
105
103
102
124
82
97
79
85
180
109
86
102
129
154
123
97
127
134
138
98
93
172
143
87
95
124
129
120
84
138
130
116
82
150
108
118
107
154
103
148
133
191
133
143
45
108
108
74
118
149
122
107
90
137
105
54
140
158
124
140
131
81
95
192
110
130
78
93
131
175
102
93
49
59
166
103
100
177
125
69
120
129
92
95
126
90
108
148
124
165
68
125
135
112
140
96
108
54
109
104
97
177
96
171
166
115
104
121
118
103
153
82
92
123
128
163
95
124
99
54
145
73
106
125
118
125
148
102
125
113
108
59
141
168
164
49
83
98
114
127
133
135
118
116
98
136
108
104
149
105
103
126
91
113
82
136
168
100
106
108
161
132
54
165
153
84
135
99
147
144
89
141
113
110
127
83
125
96
138
97
165
115
140
83
126
156
165
106
156
96
164
154
54
151
54
111
76
81
154
108
91
90
87
110
104
83
123
146
118
143
141
128
89
112
105
145
168
96
149
133
100
123
128
101
99
99
81
88
81
93
112
112
133
98
109
81
107
81
74
108
92
74
102
74
125
98
103
108
113
135
108
150
77
148
121
125
81
109
161
88
102
76
54
141
61
141
91
78
49
119
123
143
148
111
94
108
127
98
166
98
107
79
107
116
78
106
78
102
81
82
139
114
108
174
67
85
125
102
69
137
114
98
143
139
103
101
131
108
148
149
125
128
98
106
113
107
113
103
124
87
102
127
138
180
127
54
94
84
121
141
121
116
143
121
90
119
82
143
103
76
111
154
156
109
87
165
135
90
111
163
115
136
158
90
146
113
146
115
117
93
91
77
129
76
83
164
118
142
98
138
101
112
90
108
129
102
128
54
108
81
124
85
146
87
125
128
133
109
127
122
113
143
113
148
93
95
135
67
120
108
123
95
110
148
97
117
91
105
116
120
111
95
69
131
91
98
129
118
114
148
161
157
112
128
79
83
115
118
42
139
125
87
108
125
149
73
89
158
112
186
97
117
102
165
59
101
81
122
158
133
128
131
106
149
81
87
76
89
82
119
178
102
202
163
103
108
144
128
135
116
81
139
120
125
85
114
102
120
110
102
167
100
139
95
97
90
67
81
83
204
140
107
108
107
133
135
133
109
89
97
59
78
54
103
108
94
152
77
114
132
68
108
98
140
90
184
87
59
78
98
78
150
147
128
91
134
130
150
136
114
132
103
134
108
139
152
157
82
163
130
68
112
116
111
97
87
88
137
107
126
109
124
113
141
102
102
143
180
142
176
135
144
154
133
190
103
143
114
102
147
191
76
113
105
181
108
134
124
69
102
177
131
88
104
80
139
133
101
99
49
115
100
179
91
146
74
105
146
74
141
54
106
90
98
108
127
154
104
160
104
148
117
129
112
107
108
106
91
105
105
111
54
90
84
59
135
200
127
54
102
134
104
126
121
127
102
147
54
123
143
144
128
114
132
114
115
59
141
79
107
131
83
136
166
148
110
132
144
105
150
122
82
76
98
215
160
116
105
119
146
104
105
115
95
83
54
77
93
108
115
120
148
139
127
149
102
91
73
78
107
68
153
132
166
86
140
127
90
167
127
94
149
93
131
91
93
94
144
97
144
68
94
113
127
69
82
146
92
111
177
86
78
49
81
108
98
83
130
100
95
163
89
54
83
98
122
73
59
148
106
179
148
155
144
119
54
54
115
127
54
156
119
148
117
117
134
112
94
74
149
133
82
116
114
110
114
98
112
148
100
170
111
108
148
59
125
87
186
49
110
194
148
98
123
54
102
110
54
82
54
107
130
133
115
118
103
87
101
135
95
91
102
96
151
108
125
198
104
98
105
130
117
93
113
114
103
87
90
103
166
126
131
168
94
140
115
105
122
180
103
107
96
158
148
78
54
86
115
59
135
149
127
161
54
150
129
112
99
138
90
112
54
59
149
177
87
135
135
118
154
100
158
54
148
102
129
106
83
98
142
99
96
113
49
101
118
114
153
87
119
87
76
103
68
137
148
160
138
108
101
155
106
114
102
61
126
74
54
140
150
54
158
154
106
154
148
105
118
59
135
113
197
117
92
144
98
62
104
106
141
78
102
106
81
107
147
113
193
79
117
112
132
88
139
112
113
79
101
95
133
154
105
97
107
139
73
83
54
131
103
127
103
197
59
59
103
112
149
104
186
91
147
161
135
110
116
123
114
118
104
216
110
144
108
105
80
148
131
144
96
74
108
98
77
143
100
105
138
137
85
70
158
94
135
73
84
157
133
139
136
151
96
93
79
117
118
145
110
90
133
104
68
121
54
123
145
112
54
82
89
152
125
130
113
131
54
59
106
54
156
127
140
163
165
116
111
126
110
105
105
49
108
84
122
151
143
91
108
103
133
82
179
144
120
179
80
156
95
117
81
123
113
93
59
83
114
120
140
98
120
107
179
137
90
100
95
49
98
108
163
106
97
93
130
112
94
113
143
113
114
163
138
114
176
124
89
82
133
95
148
137
152
76
114
78
192
155
123
156
74
114
112
140
102
82
122
83
117
124
143
124
108
67
128
111
74
54
127
148
113
98
158
111
103
135
115
68
138
54
149
146
139
82
147
96
72
107
118
150
149
102
95
93
126
90
87
147
108
95
92
76
133
107
95
113
113
125
139
110
67
71
144
95
89
158
54
111
103
128
140
156
125
87
103
102
106
130
117
120
148
80
77
101
92
123
115
102
124
147
131
94
69
143
83
93
54
128
118
118
112
111
100
74
110
90
74
103
81
123
95
131
108
101
108
152
67
95
102
104
120
145
120
77
135
89
159
200
124
142
103
120
133
129
54
140
123
115
83
108
107
128
124
129
151
90
88
54
158
120
96
154
98
143
91
148
128
153
95
89
131
107
157
132
141
107
75
165
69
177
110
108
133
100
101
98
107
130
115
99
140
101
136
97
82
99
54
90
118
126
125
79
146
91
97
131
59
109
95
121
104
120
123
114
149
105
134
61
59
78
97
168
77
83
97
198
107
93
125
102
112
69
143
115
96
149
59
102
147
128
168
124
137
90
102
102
98
149
102
133
95
76
107
163
114
81
181
140
193
54
96
96
114
100
132
113
123
110
115
124
116
107
115
144
82
67
94
127
161
130
81
119
91
144
115
111
95
100
87
163
87
177
113
98
98
90
141
87
145
172
154
105
76
162
127
93
95
106
143
166
97
120
54
93
91
139
107
93
102
76
157
144
103
113
91
127
104
138
124
144
121
123
87
103
156
125
142
80
137
76
81
110
77
131
90
82
93
95
149
72
82
122
98
176
77
109
54
125
54
88
81
129
65
168
118
103
108
123
156
99
151
94
110
115
49
135
69
91
98
123
173
106
116
130
113
121
87
164
95
59
95
128
133
97
81
138
92
54
100
80
167
109
104
149
59
200
131
98
86
77
117
100
102
135
143
128
151
113
115
114
137
187
121
77
154
69
130
127
129
74
123
81
107
110
158
144
108
110
82
54
107
61
190
104
76
145
54
79
105
102
143
133
80
83
90
81
131
102
83
93
113
87
78
130
133
96
94
138
67
98
80
49
90
54
102
129
135
160
81
102
105
98
74
103
127
113
104
154
74
148
134
103
135
147
129
144
134
117
143
109
132
127
74
129
49
114
115
156
98
101
114
122
135
114
108
145
101
162
77
130
127
133
87
159
125
126
77
147
54
131
172
131
82
98
110
131
150
132
144
54
158
131
54
144
135
122
112
110
114
112
102
130
110
106
108
105
115
110
125
108
119
76
134
95
131
102
148
68
82
131
76
119
103
143
79
168
138
164
85
105
105
131
103
134
95
134
171
127
169
59
98
83
135
125
61
105
145
155
127
135
59
86
97
134
115
173
125
59
101
126
93
149
77
61
111
54
131
108
147
133
118
151
108
108
96
74
134
79
99
177
170
137
168
105
107
162
138
129
127
96
104
123
49
138
186
101
114
114
96
98
90
120
130
125
128
128
133
119
93
108
104
113
100
143
103
118
117
128
54
54
102
169
102
54
101
186
148
98
69
185
135
112
108
82
152
103
74
73
143
115
100
128
70
115
99
104
97
123
110
137
76
87
143
192
130
92
116
120
171
137
83
49
111
118
113
134
101
81
83
132
85
117
192
145
122
95
59
167
92
104
101
145
128
119
105
54
75
103
93
59
102
54
103
126
125
128
129
99
189
156
116
143
59
108
89
116
133
131
100
118
106
103
115
93
157
95
138
146
93
157
121
133
131
130
141
110
155
143
113
135
74
176
105
102
144
79
112
149
113
116
147
133
118
125
81
82
77
118
128
158
98
162
219
119
111
116
102
129
113
141
145
107
103
185
139
105
131
76
81
95
108
54
105
100
113
118
129
68
59
109
88
93
89
100
125
158
169
148
154
54
81
130
115
61
54
87
125
106
106
49
80
69
130
78
103
115
179
121
120
142
49
100
108
82
134
105
87
131
111
105
103
204
101
59
137
124
87
104
108
161
95
87
102
76
142
81
98
144
102
123
114
103
113
126
135
143
133
186
147
116
73
85
132
97
150
117
156
83
83
148
80
125
101
112
161
95
111
141
152
113
93
85
119
127
71
147
135
54
123
81
78
135
99
95
103
149
83
100
84
109
102
98
129
92
82
54
128
98
97
167
123
103
140
125
131
151
156
90
74
74
119
108
134
161
135
102
103
129
98
108
128
90
139
110
97
162
54
102
155
137
127
104
70
140
108
67
76
115
110
94
81
159
139
122
125
173
102
112
103
98
116
96
76
123
67
103
125
104
133
67
85
177
54
115
123
122
139
90
78
130
105
105
122
151
145
74
138
54
131
73
113
118
141
54
95
105
143
102
163
123
108
81
106
102
95
154
94
99
108
135
139
115
105
108
104
106
150
90
67
97
133
76
112
125
140
112
122
54
108
168
135
169
81
148
171
97
156
160
133
148
82
127
89
96
102
132
110
100
124
74
93
109
113
93
93
120
115
108
131
122
182
148
125
84
138
123
85
136
114
116
101
140
214
148
127
133
123
89
89
92
165
49
98
137
112
127
83
104
148
132
49
100
108
81
133
146
78
141
125
97
103
128
118
77
130
148
105
148
95
77
162
54
102
99
120
114
68
88
107
125
68
158
85
90
54
167
124
120
146
102
158
54
115
87
49
67
141
77
127
99
78
114
80
108
145
103
120
125
92
168
105
157
113
57
145
180
78
117
127
81
78
227
89
114
129
122
124
76
97
118
133
114
93
119
54
95
128
103
159
103
124
113
121
145
82
74
127
99
131
114
119
61
154
128
130
134
154
148
134
54
172
98
118
122
122
91
119
93
122
113
101
119
94
94
173
119
127
87
87
121
123
123
119
148
81
115
107
103
172
124
139
128
128
134
148
144
129
99
74
98
114
92
183
110
146
77
54
123
78
87
105
130
143
95
103
93
114
148
87
74
105
76
76
217
127
125
108
149
127
102
118
103
54
124
169
107
149
150
125
108
123
163
108
143
108
103
127
106
87
101
107
118
172
98
95
121
110
108
95
112
101
126
135
148
129
98
67
170
133
67
87
103
125
83
102
142
108
144
139
123
83
190
115
163
98
162
144
54
103
96
124
138
59
164
87
110
138
182
100
182
126
129
49
136
106
112
119
137
127
109
74
130
95
149
132
84
143
140
110
95
96
115
99
122
101
113
108
103
113
190
100
113
108
123
151
143
74
95
72
129
77
96
139
129
133
68
143
125
107
134
98
113
120
87
106
138
87
131
98
114
97
141
103
78
200
170
115
59
95
128
69
90
54
81
115
132
100
142
82
87
108
117
131
72
131
76
89
143
118
49
101
91
81
101
125
101
116
95
112
77
102
123
87
93
164
105
144
118
83
78
143
139
122
98
99
113
131
93
94
93
113
96
113
108
105
90
102
102
127
91
102
142
105
77
183
126
140
102
69
144
162
135
132
110
135
81
105
115
148
116
135
113
150
140
142
103
129
67
71
128
150
81
143
148
59
126
135
95
105
98
54
103
131
134
140
130
147
120
93
156
147
91
126
105
115
84
89
49
85
138
174
70
90
129
158
83
98
82
128
122
79
103
158
144
97
158
141
128
123
49
67
170
130
158
158
120
81
192
80
125
130
176
103
164
113
109
162
107
154
145
119
74
49
144
140
144
125
125
95
54
152
106
177
106
117
100
81
84
86
123
118
102
85
109
104
128
54
69
102
141
103
131
112
139
107
132
133
126
109
132
83
172
83
54
116
113
123
87
139
61
110
124
67
108
105
137
90
61
108
98
93
153
148
132
49
87
144
138
108
76
177
127
90
80
131
54
144
125
114
108
143
87
59
177
119
108
69
120
180
101
144
132
89
89
107
145
99
155
49
105
54
107
163
119
83
112
127
184
83
101
151
127
74
98
100
145
109
113
121
98
123
133
123
101
160
149
116
120
98
150
151
126
54
106
105
118
75
110
103
93
147
45
119
134
67
136
105
74
152
77
139
136
146
67
95
102
95
122
182
102
180
103
115
149
108
218
141
132
158
165
103
112
167
168
133
110
77
135
90
142
134
61
88
135
156
123
101
112
101
49
120
139
100
106
45
94
127
59
169
86
105
106
95
125
125
158
144
123
92
49
94
115
122
139
125
128
104
99
61
95
147
119
108
59
98
173
59
127
148
78
155
102
108
128
155
54
83
153
149
103
172
119
86
95
108
107
143
148
82
111
61
98
77
123
96
84
95
114
143
54
45
54
90
82
106
174
120
74
87
110
85
113
86
102
132
54
94
103
102
49
120
129
124
148
54
121
108
86
111
108
95
104
49
140
117
95
128
105
49
90
120
154
97
115
83
146
67
106
138
100
81
54
94
116
61
59
93
49
141
115
72
98
167
129
81
68
76
110
166
95
125
154
82
116
110
103
118
59
93
160
129
78
80
119
127
81
107
105
98
107
122
177
119
74
137
145
132
114
155
125
181
172
105
109
95
151
86
83
147
135
148
102
81
136
158
131
161
143
107
128
68
104
112
137
149
116
80
105
105
123
73
99
112
102
159
127
129
113
74
134
131
54
105
108
122
153
154
110
142
83
93
184
154
147
127
144
95
134
148
113
95
96
138
156
107
87
112
98
54
146
79
108
139
110
123
74
115
160
87
115
117
98
84
93
116
112
93
144
80
98
136
155
102
148
99
127
148
161
147
103
108
154
174
148
88
107
100
94
93
96
140
106
103
126
102
126
103
142
133
143
127
124
80
106
81
131
97
120
93
76
107
106
128
97
107
112
83
90
139
77
118
138
124
140
120
95
138
59
81
103
100
77
105
83
94
143
108
146
161
162
116
87
132
107
125
105
128
78
139
81
132
68
95
94
95
83
145
165
90
97
105
103
102
128
59
127
82
104
136
90
114
128
105
108
127
132
118
95
125
135
54
142
54
98
116
128
95
138
126
91
150
59
92
107
89
113
110
170
145
74
128
125
144
131
138
98
145
102
131
148
119
105
129
156
105
76
125
113
103
141
108
77
198
148
98
140
113
150
99
131
98
83
117
124
193
113
125
81
99
127
115
87
178
118
125
93
131
118
108
115
132
108
105
120
212
142
165
125
108
113
105
98
78
54
108
116
102
92
165
95
102
134
148
105
179
166
107
113
133
81
133
95
96
178
98
133
205
96
111
132
94
170
95
113
74
154
105
113
133
98
83
82
102
110
91
81
115
129
147
143
148
54
129
130
147
59
129
121
109
111
105
98
136
107
95
115
117
145
148
90
80
77
85
77
97
94
133
113
102
108
77
85
87
87
148
186
127
146
104
110
102
108
160
151
54
123
165
106
118
113
105
148
145
95
76
95
96
87
120
128
139
154
105
122
90
186
81
54
96
103
59
234
161
92
115
152
54
165
158
117
113
150
81
113
176
129
121
106
67
162
98
81
148
100
108
110
105
180
155
145
97
99
77
54
82
131
181
115
143
114
132
54
126
124
105
49
125
107
95
128
102
90
96
54
102
59
112
91
114
143
99
59
107
160
115
133
164
141
102
177
122
138
112
81
87
127
54
156
172
156
140
107
102
104
131
139
148
115
49
107
144
145
87
100
103
95
82
133
59
190
85
105
124
145
122
95
156
127
117
125
158
102
90
100
131
93
103
129
146
85
117
81
114
130
103
133
59
91
133
54
180
87
115
108
139
85
54
124
123
149
85
74
101
54
119
172
151
99
186
98
113
118
77
134
103
146
113
95
54
147
54
178
102
119
92
134
96
103
138
59
113
145
156
151
87
76
131
177
168
183
101
102
113
139
123
96
74
54
130
108
101
137
74
117
121
165
113
112
90
128
87
105
126
111
108
148
102
144
97
144
54
73
54
136
158
107
82
165
164
149
135
106
149
91
98
98
129
106
90
104
103
145
129
99
188
148
150
74
102
153
107
154
105
165
96
108
129
124
104
108
54
94
138
90
94
178
91
108
67
76
113
89
88
152
163
108
140
148
96
158
165
125
135
135
121
161
120
54
127
81
81
179
99
148
144
110
103
150
127
120
141
82
98
104
68
114
122
114
147
144
96
96
83
135
145
102
125
102
156
91
83
145
110
127
49
81
122
96
91
102
161
74
102
108
116
147
119
129
125
110
98
125
79
123
164
146
150
114
94
133
146
80
96
49
145
214
102
213
77
118
125
98
77
77
123
128
132
102
68
102
82
123
67
115
120
82
105
115
95
154
89
95
105
161
113
103
177
104
108
127
83
85
87
144
74
95
167
128
101
129
102
135
61
164
95
115
199
84
89
72
69
156
49
102
121
105
112
86
179
81
92
105
106
143
54
81
102
122
165
155
155
141
178
87
117
106
124
97
125
95
102
88
177
105
111
113
106
82
123
96
135
97
112
82
141
83
104
144
54
164
125
81
108
80
99
112
99
153
127
148
132
161
95
54
107
54
92
138
167
90
175
104
112
93
118
95
95
145
163
129
84
115
96
101
147
110
96
129
132
98
102
102
89
49
137
143
98
77
114
147
133
54
139
131
170
127
136
106
118
105
108
120
74
123
138
82
111
54
102
116
82
95
121
74
148
74
128
95
106
126
108
112
106
120
135
136
108
82
108
49
177
100
125
108
87
54
173
119
177
164
182
102
118
122
133
112
143
99
79
114
79
129
134
163
54
124
106
141
104
129
95
163
115
121
74
118
158
131
113
135
148
89
101
113
90
143
54
80
108
106
153
115
87
120
104
103
145
110
113
139
77
111
154
92
132
178
118
91
182
91
93
102
169
102
127
136
107
137
77
125
81
148
119
76
130
59
77
108
95
90
124
105
152
165
102
106
105
85
72
93
115
124
54
96
141
112
77
93
145
90
102
54
74
107
138
125
117
128
95
131
98
147
83
156
97
152
155
54
157
71
113
98
108
82
109
126
133
100
141
102
172
87
74
123
72
98
93
54
115
165
106
146
157
85
98
98
133
49
103
132
93
102
145
54
126
117
49
87
90
102
116
120
131
92
101
130
123
124
83
90
54
93
121
113
122
133
103
109
131
145
170
89
76
131
114
80
81
76
158
113
112
98
102
54
107
95
105
125
91
107
119
87
134
108
116
149
59
103
83
90
141
77
89
140
84
150
80
96
54
103
100
113
102
77
190
123
78
76
114
110
54
143
106
134
81
124
81
123
127
107
95
85
107
142
148
213
120
81
95
140
95
54
133
99
114
54
144
133
79
95
194
131
102
80
103
135
144
164
87
54
133
102
142
100
146
152
152
117
147
110
167
125
129
81
117
83
86
153
75
103
129
54
127
93
123
110
115
68
129
105
117
102
108
110
132
59
157
103
177
180
148
123
130
95
87
153
72
112
119
123
122
76
124
74
109
87
138
74
101
124
106
139
176
109
130
87
54
76
85
112
125
121
144
125
108
146
78
111
126
140
163
75
74
49
77
113
130
113
90
89
59
143
120
102
96
137
120
126
134
101
115
129
132
103
115
89
98
110
125
158
118
83
93
98
107
93
135
98
129
147
139
149
102
90
143
102
113
132
143
90
122
163
133
154
117
49
96
100
99
139
125
98
176
131
145
59
145
122
159
141
82
115
160
93
80
155
74
126
143
54
131
81
104
108
143
54
139
149
133
103
76
114
114
131
49
87
126
131
82
91
110
96
161
141
126
65
61
108
125
54
102
123
114
108
54
54
158
143
67
109
128
164
83
98
128
147
105
133
127
49
103
96
161
116
125
130
65
123
124
54
97
145
118
100
150
148
107
125
131
87
113
106
175
112
117
90
105
95
117
149
83
143
83
137
125
82
135
144
99
179
85
125
122
105
133
67
54
137
144
139
54
103
128
113
138
107
106
102
128
106
129
98
150
91
103
106
90
135
118
95
91
133
94
90
106
120
82
98
92
105
144
54
54
95
96
144
80
126
106
133
95
132
116
119
112
98
133
102
117
113
110
120
173
54
145
74
100
111
92
49
79
95
116
129
184
134
97
105
149
152
68
135
98
99
90
74
121
100
143
108
118
74
106
137
180
158
142
106
125
90
54
138
144
106
112
127
95
141
153
95
131
95
158
119
77
83
133
102
54
141
155
98
170
104
143
108
163
120
115
59
49
96
164
134
102
129
95
108
153
108
94
108
144
54
98
155
96
137
96
108
127
162
137
118
49
140
171
102
96
140
160
77
167
116
82
113
123
148
148
146
125
88
103
127
76
94
123
68
74
113
54
78
121
100
96
87
167
142
144
140
102
94
68
103
109
125
143
119
182
135
141
94
139
85
127
54
89
128
126
119
102
108
95
130
133
112
61
119
116
65
120
121
140
103
121
85
102
144
98
98
147
93
113
68
143
81
81
103
140
123
123
122
125
54
140
146
101
122
90
112
156
119
54
108
126
137
141
107
95
92
81
119
79
128
103
131
108
101
102
93
139
133
115
67
167
143
69
157
112
54
153
83
106
114
109
129
127
93
122
113
67
164
54
126
156
76
156
82
132
133
128
133
103
106
98
108
146
77
95
128
143
135
98
131
102
102
49
81
125
121
114
145
131
131
54
156
120
120
103
82
125
162
79
127
54
140
106
95
102
103
105
90
153
177
114
104
144
128
110
104
135
123
132
120
59
104
135
103
160
95
95
160
135
140
96
107
102
151
132
121
68
81
94
109
124
93
136
89
170
128
157
144
106
123
151
150
121
139
152
155
85
96
83
126
74
200
107
92
113
119
157
125
143
105
91
152
111
128
149
96
106
103
135
150
131
93
105
113
83
140
158
91
95
177
202
143
69
142
98
137
115
103
127
119
111
113
164
108
100
103
128
139
54
110
95
122
151
139
78
130
127
103
103
45
138
92
90
111
147
114
119
59
99
101
108
135
153
90
102
120
85
96
76
146
137
102
138
130
150
95
169
148
95
128
101
142
108
112
141
79
103
138
110
98
98
136
159
98
82
97
112
95
102
96
186
127
49
131
87
120
144
125
153
103
124
81
127
96
91
135
133
120
102
140
126
103
125
61
86
140
155
105
106
122
139
93
108
130
113
108
102
108
76
87
85
90
105
105
143
81
135
105
128
134
107
92
151
117
107
103
89
132
54
81
108
151
95
110
103
81
102
126
105
89
127
179
105
54
67
77
143
155
125
113
114
182
186
95
54
85
102
92
81
129
105
81
93
106
129
133
158
95
126
115
115
98
49
122
108
93
96
142
54
158
140
132
100
110
147
73
149
86
128
99
110
77
122
106
103
131
107
148
95
113
145
148
129
179
135
129
133
150
107
142
78
95
124
100
102
153
129
80
149
85
90
54
101
68
149
157
76
77
105
123
142
109
154
163
144
104
82
91
143
155
132
118
108
128
114
123
93
87
159
130
108
125
91
149
157
78
98
117
132
68
76
114
74
61
140
54
149
144
157
103
100
108
103
145
95
77
87
81
94
128
121
97
135
78
129
99
119
124
81
125
163
160
95
147
87
164
98
136
113
87
162
116
87
155
119
116
151
156
100
128
97
135
155
179
126
113
122
98
119
132
114
81
106
99
103
143
105
122
98
95
102
145
54
116
166
87
108
129
200
96
86
138
127
133
200
128
139
129
127
103
106
110
128
116
127
145
137
112
131
129
82
123
102
113
93
83
133
54
134
103
99
117
128
138
127
167
133
173
87
54
104
119
105
116
54
145
118
78
80
101
110
108
68
103
105
133
76
81
138
81
144
123
95
129
102
134
102
172
127
119
135
49
141
103
106
172
118
102
162
128
59
104
84
93
94
159
154
99
96
102
98
168
158
129
139
127
77
90
109
103
143
98
198
102
113
179
127
125
91
102
74
95
124
82
113
119
87
128
106
103
126
103
147
113
99
143
135
165
100
149
139
165
92
153
115
103
100
123
108
74
93
179
115
87
128
151
113
116
183
139
95
134
74
87
129
146
101
82
177
118
127
128
154
74
92
144
54
140
143
134
116
127
144
107
54
78
111
107
67
143
109
112
123
103
145
100
98
158
133
87
107
112
49
141
77
158
117
140
97
135
74
148
90
84
103
99
98
87
49
104
144
137
165
135
73
101
108
148
135
97
126
102
111
143
188
94
151
82
141
128
106
87
171
131
110
147
122
68
123
149
120
97
116
108
96
74
114
153
141
96
102
113
107
113
145
81
74
103
142
77
128
113
161
99
150
122
49
81
94
94
109
141
61
154
138
67
129
151
106
110
135
141
140
124
67
67
119
120
122
126
54
135
172
161
108
125
93
104
108
150
99
116
191
177
106
108
84
96
118
128
144
81
109
130
139
108
86
128
133
111
102
127
129
128
107
135
96
186
88
113
118
54
137
127
111
98
120
141
76
115
119
163
119
172
93
91
108
124
129
123
68
119
122
81
101
140
157
77
117
120
105
90
54
101
122
105
152
145
144
87
120
121
78
147
153
105
168
95
49
98
111
54
49
122
145
99
160
77
134
179
81
87
113
74
95
88
90
92
96
128
95
120
96
87
90
118
127
135
154
97
101
74
102
102
120
96
69
148
94
59
78
61
117
112
79
98
145
124
61
86
94
99
95
112
108
129
122
100
115
93
87
177
105
54
153
110
54
114
49
127
112
126
172
129
129
145
115
98
141
132
108
140
96
117
123
148
124
87
110
80
95
101
98
173
142
128
120
112
116
133
102
133
119
133
206
115
101
120
172
120
148
145
134
132
142
117
135
108
137
96
54
54
80
160
59
82
171
94
54
78
93
95
103
126
131
74
120
74
128
119
103
123
96
129
105
160
135
154
100
199
123
95
92
49
103
132
150
134
143
98
54
74
87
143
115
54
199
123
112
108
133
83
171
108
83
98
133
109
59
102
81
104
116
144
102
98
82
140
76
116
125
111
102
116
176
54
95
131
103
59
92
116
81
100
119
110
131
125
151
125
110
67
90
141
136
153
137
129
97
127
108
200
153
74
157
103
119
105
59
77
122
186
85
105
144
133
49
61
121
100
108
148
162
114
122
118
54
72
108
123
165
95
133
139
80
115
134
59
159
133
113
138
103
123
148
122
145
146
113
109
130
110
103
110
157
101
83
140
111
129
93
167
99
138
131
140
155
116
131
108
125
91
94
135
113
77
102
110
107
112
103
74
131
111
140
130
147
84
122
107
77
141
108
132
163
133
127
128
110
112
108
157
77
95
95
78
94
156
126
117
162
93
82
126
148
182
77
59
95
98
148
111
97
132
149
112
87
150
124
103
113
124
115
54
122
125
67
209
116
76
97
93
94
116
79
89
143
220
107
132
106
111
155
89
81
101
121
119
158
117
98
144
98
131
134
155
151
141
93
122
77
116
95
103
74
124
108
163
131
78
81
74
129
98
89
125
135
113
177
54
102
159
54
131
139
100
131
116
125
108
74
99
88
148
67
120
175
134
133
157
75
86
99
96
127
103
68
108
95
127
96
120
111
124
49
165
97
99
83
120
119
87
94
148
173
118
123
136
131
115
92
95
97
78
138
81
125
93
103
95
134
59
137
127
102
124
120
133
77
109
123
54
97
131
116
101
101
93
116
177
130
103
84
108
126
113
130
109
83
59
102
191
95
129
95
93
85
185
54
108
156
54
120
108
54
77
98
148
149
102
85
125
156
170
115
100
77
130
98
135
146
102
80
125
98
149
158
83
135
86
133
74
147
154
117
111
83
88
108
54
134
160
74
121
154
97
162
98
140
146
128
125
177
114
75
99
103
95
59
49
82
122
91
142
69
96
104
105
158
97
165
180
95
49
82
112
118
126
92
126
93
142
112
85
133
170
101
159
106
95
106
161
142
134
102
95
119
97
153
109
95
131
69
144
118
110
131
140
104
125
113
69
96
145
162
61
143
126
54
81
96
90
139
87
115
123
93
121
103
115
165
98
78
94
108
114
93
126
95
86
108
119
74
131
138
120
98
144
87
167
77
83
96
183
128
140
131
130
93
111
98
193
125
148
151
126
83
152
143
95
95
110
146
115
107
93
97
135
77
112
67
98
102
68
125
160
42
96
82
145
117
117
81
191
161
78
95
106
145
129
54
119
127
119
120
74
81
115
126
150
156
87
98
122
136
108
114
76
134
146
81
107
109
135
54
119
130
115
118
103
81
142
76
115
150
166
135
107
77
106
100
127
103
104
54
77
139
82
54
143
144
116
81
92
127
86
118
109
161
106
133
143
67
126
171
87
54
121
102
107
54
125
108
116
109
114
87
109
67
45
81
123
113
134
103
121
177
125
140
100
116
59
88
102
91
67
93
123
137
131
105
188
130
95
121
144
73
114
114
95
83
132
148
108
116
129
105
102
149
117
95
195
107
122
120
107
191
98
111
114
127
98
128
122
110
132
112
95
49
112
133
99
80
81
113
118
165
82
129
96
120
123
104
111
108
96
77
96
137
107
131
135
143
111
69
108
184
45
120
54
54
97
70
112
129
92
113
151
103
118
102
78
112
107
82
100
155
125
93
130
103
131
104
77
120
100
122
98
115
179
91
108
111
143
97
102
108
85
115
141
113
130
143
96
74
81
92
81
135
142
195
121
153
54
120
145
103
124
105
128
144
125
79
103
159
82
68
102
124
89
91
108
83
172
81
145
133
108
96
95
139
144
97
149
120
97
125
167
100
90
95
114
78
107
167
93
112
128
133
141
93
98
134
184
106
172
117
126
54
146
131
128
115
90
74
108
128
77
131
150
80
108
105
74
130
168
81
122
116
84
146
144
150
138
115
90
108
149
127
111
54
135
148
122
98
114
79
145
102
102
93
100
54
98
96
54
76
131
73
49
140
134
105
59
115
105
87
54
154
143
90
78
129
77
95
140
122
99
145
105
113
146
103
118
92
158
110
155
85
167
126
90
128
190
105
89
127
128
122
76
144
108
95
87
128
129
91
118
76
95
83
102
122
49
130
119
124
103
81
145
118
104
102
111
122
98
115
124
121
131
97
124
127
109
76
147
115
101
131
135
186
116
159
122
103
165
120
61
103
90
81
96
128
98
81
122
125
121
131
127
92
119
98
142
136
136
126
120
158
109
96
132
145
76
102
98
89
178
109
125
180
95
74
129
136
61
184
108
101
54
74
140
139
104
83
115
134
150
93
91
87
102
146
108
135
129
165
107
98
102
82
167
108
88
85
154
110
111
102
68
89
145
129
154
92
141
114
54
185
106
59
82
113
74
107
67
139
87
152
108
129
121
112
129
99
139
127
92
180
138
106
117
214
105
114
102
114
79
128
42
146
87
82
65
112
74
143
118
114
164
140
135
54
130
103
79
97
158
159
54
113
173
108
98
113
116
147
54
138
108
106
109
114
146
54
135
73
131
76
121
84
94
119
133
108
143
95
81
95
123
128
115
144
146
178
102
112
67
125
126
98
177
90
102
102
98
87
81
105
132
118
82
96
161
89
144
155
104
122
106
107
109
98
127
124
139
98
49
137
131
147
148
112
157
74
123
81
93
126
108
172
137
135
131
111
161
99
103
112
127
129
179
81
144
115
104
105
54
115
107
110
99
93
81
90
119
117
113
106
146
182
115
113
168
145
122
177
78
142
122
121
109
125
77
93
54
90
146
121
82
161
160
128
131
102
167
159
140
90
130
108
133
102
121
131
97
118
100
102
118
114
81
102
119
140
131
108
74
167
132
104
159
134
81
101
133
155
194
98
161
108
127
108
112
68
102
139
122
128
76
135
74
125
140
118
169
133
122
139
91
144
105
105
83
115
122
200
73
98
93
101
82
141
67
95
118
128
102
49
118
146
54
145
108
108
80
125
136
110
150
100
115
76
90
130
127
90
99
110
108
213
162
119
158
151
146
106
76
82
164
87
151
147
125
49
140
116
77
123
111
98
59
86
131
54
54
136
98
121
119
177
54
76
115
119
147
124
133
94
111
99
97
108
76
115
125
95
128
81
100
126
162
106
102
115
139
185
178
122
136
102
81
87
104
103
130
127
126
132
135
117
112
133
98
54
118
78
121
129
94
108
160
125
100
101
174
91
103
87
103
141
96
95
59
123
125
126
143
85
133
148
96
97
128
124
96
175
110
102
145
101
78
91
130
104
158
149
83
148
90
98
124
103
125
93
82
92
156
142
108
113
105
161
97
78
168
98
99
110
102
109
136
159
81
107
105
158
96
100
174
135
157
100
108
95
158
180
119
90
144
91
158
111
74
106
110
105
83
154
108
98
74
142
129
172
95
98
103
103
102
154
144
95
172
119
134
120
59
102
118
93
108
95
120
130
133
139
105
91
132
135
77
95
115
118
100
158
81
161
103
116
82
93
99
96
86
82
112
75
139
105
132
114
145
66
86
94
78
125
148
108
76
125
103
117
81
172
81
112
79
77
113
168
98
140
135
80
118
72
83
140
103
95
145
113
112
143
88
103
153
102
114
87
135
98
108
123
156
49
102
109
121
108
180
76
157
145
97
90
97
158
114
109
139
125
155
105
94
106
165
157
107
125
95
95
99
99
90
108
116
146
111
82
154
105
101
112
104
136
128
95
125
186
135
101
137
207
93
150
116
103
189
149
123
125
125
114
149
94
161
149
101
123
97
115
93
91
125
112
118
101
119
95
118
166
92
97
105
105
102
129
140
89
95
95
111
138
101
54
113
94
147
80
127
87
102
132
121
112
150
115
74
173
95
162
157
123
152
112
110
117
98
102
130
119
150
54
74
139
77
54
112
90
108
81
102
107
137
125
114
54
131
78
112
108
142
74
115
102
90
110
168
124
128
87
155
49
127
102
142
103
171
102
126
84
104
156
101
133
82
124
106
181
81
85
87
91
135
102
113
106
109
128
59
108
163
112
87
129
105
115
87
113
179
90
68
128
109
98
90
135
138
49
136
135
87
145
98
89
130
49
128
143
139
128
159
138
145
102
62
177
81
100
82
95
105
128
95
140
147
83
102
102
98
116
121
133
73
49
54
141
108
76
98
113
139
94
107
139
67
177
124
101
133
54
108
94
115
63
154
81
126
83
131
116
150
77
114
166
101
130
114
124
114
87
105
115
100
159
54
101
141
126
102
68
122
130
85
143
174
143
90
115
160
115
126
93
127
74
141
98
81
143
103
108
136
128
143
125
78
87
119
103
102
54
108
87
117
169
95
107
98
95
77
95
49
122
93
152
136
120
133
90
129
88
126
101
67
137
78
123
105
96
153
68
90
108
57
149
91
125
100
151
118
145
145
132
77
49
132
95
143
131
92
57
76
103
112
118
87
116
129
87
135
122
77
126
127
108
102
137
54
123
142
117
145
126
114
162
73
111
76
170
90
115
77
112
78
110
149
93
148
91
112
96
130
93
89
129
135
131
126
61
85
115
186
98
87
146
123
111
176
49
95
94
98
100
114
145
81
118
159
92
101
54
135
114
165
110
151
69
115
78
87
115
93
156
140
110
113
100
49
73
115
103
87
144
124
117
67
124
99
110
166
108
86
105
91
67
95
80
86
102
141
121
162
95
124
54
108
154
49
110
98
49
97
106
134
102
138
126
108
59
67
83
93
108
148
105
83
133
110
77
120
54
131
105
133
117
108
67
74
106
82
129
120
146
133
96
138
126
67
82
85
124
137
180
104
98
204
98
87
95
113
131
148
132
87
124
162
169
207
133
83
91
135
135
152
78
112
103
143
129
83
124
103
125
101
110
120
112
109
148
115
158
103
105
94
54
146
81
142
105
158
81
102
92
122
102
158
123
110
177
112
79
127
75
116
84
88
133
108
49
115
86
102
149
106
111
116
126
87
129
130
127
158
124
153
140
90
160
120
163
127
151
135
122
163
142
102
143
101
79
135
161
113
113
70
111
96
98
102
113
125
95
121
133
87
87
108
134
106
95
82
136
102
142
136
102
140
126
93
142
121
120
101
98
111
147
81
114
63
99
133
49
143
98
128
159
122
98
67
99
78
108
129
207
81
122
155
67
127
106
157
108
114
117
173
115
146
144
154
130
112
105
109
77
126
104
87
129
94
76
95
73
123
146
87
152
160
148
130
84
96
109
139
84
94
150
95
94
115
111
93
102
137
107
70
79
120
143
168
88
98
109
180
134
49
97
98
115
109
99
102
103
123
81
103
104
97
96
108
93
131
143
59
67
96
106
144
95
95
111
82
126
108
61
87
118
123
126
128
138
68
105
127
112
146
83
137
92
125
127
102
140
149
95
87
79
152
86
131
78
110
161
76
54
137
128
83
113
115
188
100
113
100
107
85
101
191
112
76
167
128
102
54
49
112
108
145
148
98
116
83
96
54
109
81
68
135
130
137
103
98
83
168
108
99
98
134
108
144
102
96
127
162
131
145
136
100
102
126
153
108
132
156
54
100
59
120
112
132
113
105
102
160
76
136
97
116
103
76
135
107
128
122
69
191
147
120
176
102
149
61
49
98
96
98
133
100
65
84
49
61
141
81
137
96
91
121
81
82
120
101
92
106
115
127
107
132
143
85
108
141
116
148
73
54
131
112
95
81
136
125
98
91
81
98
68
98
93
135
87
175
152
106
98
107
103
138
112
194
135
83
102
143
76
114
108
134
99
105
90
96
83
145
81
121
54
107
128
69
108
139
81
133
125
105
109
103
74
98
130
81
141
119
130
108
144
118
54
123
136
128
115
108
87
102
144
127
82
153
129
99
166
143
160
113
77
87
103
80
128
102
131
120
54
105
105
54
103
105
145
130
136
79
102
103
145
123
72
110
153
123
125
117
59
145
147
145
153
123
108
129
76
98
54
101
102
119
101
144
76
120
125
144
80
84
155
125
127
112
122
98
113
108
161
113
138
150
145
127
120
127
108
153
126
144
162
93
108
54
93
128
102
92
106
157
102
145
156
74
144
131
103
105
74
110
118
129
122
83
102
83
102
90
93
54
116
138
107
87
122
102
119
102
117
107
67
141
137
90
163
156
139
113
102
124
133
131
116
73
62
131
108
155
76
87
110
89
136
143
95
98
87
102
128
89
83
158
114
86
155
108
106
118
164
131
102
95
114
122
102
105
122
131
99
122
125
93
112
147
156
171
115
83
103
144
112
129
144
102
131
95
133
107
78
151
110
129
81
69
119
98
142
128
114
98
102
152
129
131
141
90
97
131
108
93
80
110
49
138
87
129
106
112
125
104
133
153
123
90
150
133
162
130
85
152
97
78
143
95
167
89
81
96
151
61
117
188
116
129
133
106
89
94
178
139
119
147
113
134
158
149
109
148
97
133
97
116
82
109
103
180
106
83
86
105
80
54
91
109
120
130
102
145
107
105
102
131
158
143
129
54
127
167
93
110
141
100
76
115
142
150
59
115
81
136
54
85
130
123
117
77
107
97
68
103
148
54
131
98
101
105
110
153
85
54
78
115
105
147
108
90
103
99
116
54
115
152
103
61
109
108
74
139
115
234
80
102
100
115
97
118
120
143
112
123
135
130
148
123
81
145
82
96
126
155
155
95
95
132
166
127
97
124
76
167
98
133
142
96
140
159
158
158
113
125
100
103
111
102
59
108
59
191
163
113
120
105
125
93
145
93
93
116
84
61
135
164
111
162
107
76
125
178
95
115
49
120
111
113
133
112
102
122
96
98
108
151
116
132
190
95
108
83
130
141
127
128
126
102
108
114
77
88
83
102
129
99
118
102
142
123
143
135
76
72
98
133
132
59
95
126
54
108
126
123
74
108
168
124
118
96
116
127
114
98
107
128
144
137
116
97
76
81
183
105
117
138
107
97
92
95
59
111
153
59
115
95
54
177
98
125
148
107
78
113
99
148
59
98
141
160
112
90
101
144
79
108
94
135
156
54
130
127
106
128
45
92
166
145
108
113
95
103
124
156
160
147
182
143
138
153
143
98
133
103
131
172
90
93
148
49
114
69
88
113
95
145
97
120
131
125
158
119
149
144
131
135
154
102
103
49
74
112
113
72
103
122
98
67
93
77
133
108
161
124
128
165
65
108
109
115
93
143
154
54
82
97
104
124
128
71
94
146
107
140
153
104
132
122
85
98
119
86
95
113
108
129
54
144
90
129
125
86
123
105
142
49
87
73
191
107
49
118
146
131
108
150
165
102
110
73
121
169
88
103
97
120
122
157
96
144
128
148
110
129
169
125
132
96
106
133
117
78
118
54
118
134
79
54
82
133
70
74
105
114
113
95
71
93
95
97
148
125
54
125
108
113
135
102
168
76
61
121
105
155
109
121
116
114
133
135
128
129
63
113
85
125
145
95
81
99
110
128
74
141
122
111
122
149
54
121
128
127
74
119
135
110
138
88
49
131
54
105
107
145
93
186
103
78
120
104
164
131
155
115
135
113
162
115
146
95
115
83
114
85
162
97
113
104
144
54
147
133
144
49
113
125
85
167
150
158
153
138
67
110
128
78
106
108
153
95
84
137
114
137
54
118
160
120
90
148
140
119
107
96
108
67
127
81
109
109
106
161
85
91
113
116
107
134
74
104
169
131
133
189
107
93
126
132
108
112
87
77
158
131
87
108
95
89
109
145
111
112
112
107
135
110
101
54
95
95
146
102
115
139
144
154
132
143
141
87
111
116
158
144
98
81
107
95
146
110
113
145
74
59
148
105
98
113
125
154
161
148
105
118
150
170
93
148
152
108
143
49
123
127
133
77
141
89
49
83
135
164
125
95
49
88
108
118
122
114
89
103
119
124
158
83
109
88
54
108
98
141
123
133
128
102
108
149
111
180
174
98
123
98
127
110
144
113
123
121
54
143
94
144
102
54
123
117
110
107
128
141
99
122
103
177
101
97
108
97
69
167
97
158
54
118
140
129
119
54
125
156
119
126
118
87
54
102
131
141
127
99
57
138
124
158
172
92
141
110
99
188
145
105
227
128
98
133
82
168
125
111
104
114
126
105
93
127
54
108
199
176
109
176
107
105
111
49
49
130
108
127
135
94
107
160
49
118
143
120
110
119
121
101
82
96
144
99
108
68
126
76
120
88
149
74
134
118
157
120
106
132
87
77
118
153
89
122
113
124
118
160
101
168
108
125
123
108
77
125
166
114
133
89
134
127
145
127
120
95
112
102
61
113
95
147
144
81
113
77
137
109
139
91
66
147
100
130
86
133
135
96
110
122
74
140
101
122
126
142
102
115
110
76
124
111
145
82
133
119
114
79
120
133
90
138
113
113
92
111
154
91
126
135
116
103
143
139
131
103
161
148
106
124
135
109
79
121
76
105
97
85
119
87
132
82
143
120
136
113
87
105
133
104
151
161
108
87
142
59
150
157
77
93
108
98
75
113
130
121
67
163
113
84
98
98
110
67
103
96
112
88
112
149
89
143
125
136
77
78
106
164
122
102
121
54
107
146
125
103
108
172
59
94
151
84
140
120
94
158
95
135
129
49
95
102
112
149
138
76
89
161
93
157
95
74
146
132
149
104
177
147
78
76
84
133
177
140
149
156
98
145
95
108
149
147
104
113
102
140
49
145
151
98
81
54
125
59
101
102
128
102
192
140
157
83
128
82
121
140
90
113
112
103
68
123
172
99
69
84
98
110
186
54
110
149
132
57
126
108
134
106
137
54
101
156
134
121
81
140
54
149
83
81
108
93
113
72
103
148
101
143
85
132
100
103
144
90
77
54
67
85
130
126
120
117
59
177
81
188
94
95
119
154
143
151
158
87
196
137
69
163
54
78
131
177
90
179
108
148
124
108
143
93
107
130
94
177
102
84
144
123
127
100
164
94
115
145
86
100
144
131
81
131
146
90
106
98
61
131
94
105
130
156
119
146
111
82
94
161
77
90
95
54
148
109
102
77
116
87
81
94
102
107
102
81
54
95
125
171
87
124
130
108
157
107
69
81
73
103
124
95
113
113
59
115
93
106
167
89
130
148
102
107
90
155
146
102
73
97
112
109
54
116
80
83
128
134
73
199
54
54
122
169
107
135
93
147
88
54
106
155
120
103
128
110
49
113
127
121
138
157
128
111
98
103
108
172
87
141
117
134
54
133
119
144
103
54
84
78
98
59
153
129
135
103
105
131
94
125
125
225
135
78
54
131
135
94
95
125
127
133
102
117
98
111
96
135
181
126
145
142
163
105
109
92
97
133
159
103
108
108
166
105
107
85
126
102
123
118
90
69
133
107
109
110
154
139
118
108
104
122
54
140
69
97
140
105
95
115
80
134
120
96
155
86
49
103
105
120
98
102
96
113
78
59
123
95
95
145
180
113
106
108
165
134
151
54
114
87
100
102
108
164
148
142
172
118
98
83
164
109
109
89
108
137
133
95
106
109
165
54
49
127
103
159
98
81
106
113
89
98
83
106
95
94
135
152
158
92
122
112
131
200
148
95
158
97
54
69
103
80
120
103
85
111
146
93
107
101
95
112
122
109
141
139
103
146
94
87
95
148
110
102
122
150
163
86
97
78
113
154
82
122
67
133
106
120
128
118
157
113
161
114
77
86
159
95
128
122
92
122
133
134
106
122
191
125
118
106
97
128
144
103
104
123
81
49
105
91
113
76
145
166
132
116
104
128
101
97
87
88
106
104
145
87
132
117
161
102
112
137
128
54
97
76
77
133
125
108
135
85
86
120
78
137
101
143
128
125
107
122
148
130
101
160
113
172
116
139
113
98
148
179
109
109
153
125
99
129
138
113
121
158
179
109
108
108
108
131
146
144
103
95
77
127
93
103
113
77
101
95
81
108
123
101
114
138
115
90
129
127
146
132
95
148
130
147
49
78
104
78
108
148
124
110
172
97
112
118
88
140
143
93
138
118
65
105
114
120
141
82
89
146
117
99
78
116
61
81
110
118
130
137
104
110
115
133
83
125
102
158
116
95
54
107
172
146
159
146
89
84
123
90
49
54
105
103
107
103
120
101
76
81
141
99
81
144
107
90
54
70
125
54
140
125
130
84
80
68
96
111
128
90
54
79
67
108
169
127
124
133
108
79
132
116
54
135
103
103
68
102
107
169
131
111
107
120
99
81
86
143
111
116
81
173
112
102
88
120
49
95
143
96
116
74
143
96
107
116
143
225
81
128
103
54
108
100
91
126
147
87
148
143
112
145
142
115
74
118
122
155
143
135
59
104
103
54
54
68
113
67
93
153
104
193
102
138
82
135
131
121
113
128
114
114
90
117
106
107
177
161
141
133
95
112
137
83
123
106
132
106
152
94
122
102
104
143
122
113
200
107
54
156
113
130
95
102
74
107
73
92
111
128
90
76
103
111
102
93
109
103
114
103
111
107
103
95
103
151
140
99
120
132
137
77
152
86
180
140
105
97
167
116
148
108
108
104
49
125
128
122
95
87
118
106
133
106
72
177
109
95
139
115
96
92
95
127
116
77
98
83
108
133
97
149
116
99
95
105
123
105
121
116
98
106
125
91
82
89
133
177
173
105
146
98
81
81
110
95
102
76
108
121
100
87
159
112
95
138
168
93
125
148
74
104
85
172
126
177
54
102
54
82
117
103
99
91
80
122
79
111
113
117
117
112
145
113
121
123
177
104
101
98
101
133
108
130
154
90
154
160
93
74
108
135
87
84
134
173
126
154
113
110
109
96
145
117
102
81
144
108
141
98
94
117
95
133
54
104
98
155
122
107
120
54
128
101
123
141
139
113
86
119
54
77
105
160
146
102
172
154
108
118
98
159
57
126
125
115
90
144
110
132
179
89
85
128
140
143
49
96
82
150
101
72
108
102
139
133
132
120
81
172
114
148
45
94
140
98
235
76
114
178
108
90
109
114
148
168
128
59
105
126
123
104
149
105
101
77
171
148
124
87
144
105
81
108
76
69
99
103
91
116
91
159
103
139
128
103
120
76
87
62
130
74
97
67
128
161
95
81
54
135
102
123
180
158
184
76
96
115
103
136
82
143
188
118
100
112
177
125
168
147
107
117
93
61
134
123
106
78
113
129
139
175
95
132
77
123
82
92
106
98
129
135
135
129
104
98
120
150
112
127
81
146
128
59
113
118
140
78
110
115
97
108
118
106
120
114
90
76
145
59
103
126
187
119
110
173
139
102
105
143
144
161
76
105
98
122
122
128
123
103
85
91
49
139
111
98
123
186
108
116
54
108
122
107
126
118
98
140
102
108
158
103
110
59
103
148
83
129
82
79
92
78
103
108
105
90
114
102
129
185
54
98
161
121
154
74
102
119
96
105
127
145
74
102
92
126
134
98
130
127
90
153
94
151
119
172
91
171
81
119
98
69
120
98
150
113
120
128
105
106
117
101
123
97
148
101
77
137
103
127
126
119
140
140
119
145
127
123
116
82
129
78
197
119
128
122
95
92
150
129
125
149
116
101
95
158
103
138
118
158
74
107
95
109
109
115
149
155
109
133
107
122
78
101
125
177
113
108
111
172
59
108
155
92
93
133
173
80
90
115
130
121
93
164
132
148
173
157
143
129
114
108
122
139
120
102
116
158
169
140
135
77
123
160
102
108
96
88
123
135
100
165
61
177
54
123
54
91
142
76
76
54
123
145
85
162
143
78
155
127
158
118
140
92
115
54
179
102
116
139
102
81
144
116
131
54
176
67
84
114
102
145
98
125
133
97
132
181
119
104
145
125
128
101
122
113
54
161
132
94
167
117
118
108
93
102
98
88
122
172
121
160
121
119
123
158
79
54
103
148
103
169
116
140
116
129
183
95
149
128
74
107
148
114
101
54
148
130
82
95
115
90
117
147
128
164
102
94
108
108
85
110
128
78
105
103
137
110
125
135
121
90
83
130
129
93
148
100
125
90
96
110
54
125
99
165
115
90
113
164
158
81
122
128
49
139
98
98
67
132
152
144
116
127
115
90
106
131
54
141
93
106
161
108
112
108
139
154
128
67
160
114
131
161
106
90
95
149
129
82
151
158
79
81
142
84
84
90
118
54
142
145
90
111
87
78
154
113
143
123
54
181
205
163
112
119
77
123
109
49
68
113
111
116
98
81
132
69
65
118
162
172
100
148
45
73
96
170
131
166
95
129
114
108
102
93
98
105
148
115
120
137
121
116
115
79
135
140
110
91
179
136
96
105
80
119
123
74
95
94
85
91
111
161
150
218
127
93
93
144
87
61
54
83
144
154
127
140
85
76
54
89
95
161
103
49
72
149
90
104
128
123
112
77
116
85
149
67
98
188
116
125
131
144
117
83
84
109
112
121
116
111
131
165
133
150
131
115
121
155
148
104
200
82
135
77
117
130
105
125
105
132
95
96
179
96
93
107
87
49
98
107
118
165
77
140
113
177
76
106
134
95
97
77
104
95
87
102
143
85
155
135
142
78
97
113
105
151
135
74
154
139
77
99
148
96
112
146
119
94
87
125
108
98
108
143
174
102
125
129
79
139
130
119
148
118
110
109
112
76
111
114
108
101
70
116
87
124
200
72
81
89
59
102
103
110
126
148
141
142
95
105
128
124
75
78
85
102
102
96
112
160
143
125
79
81
54
87
91
113
116
107
108
108
144
95
74
157
108
84
77
148
177
82
156
147
108
74
100
127
147
101
130
133
162
104
137
139
94
115
140
122
81
118
141
102
142
122
98
177
200
115
115
103
179
77
67
114
169
140
100
107
99
99
83
79
94
100
108
108
81
131
128
163
95
108
108
87
90
87
135
99
118
54
95
87
103
125
150
112
108
78
180
54
116
134
122
81
97
99
148
168
145
117
135
107
102
154
117
137
154
78
112
102
113
95
127
154
81
167
95
136
146
115
80
146
91
102
109
124
119
98
83
87
70
109
68
158
144
129
144
146
152
128
110
120
98
74
117
127
153
76
155
96
110
127
117
116
138
137
137
144
169
74
93
190
106
82
129
130
102
146
132
98
141
119
73
78
108
127
92
145
102
76
88
187
97
102
92
125
92
95
176
90
93
163
110
136
105
117
124
125
98
111
108
122
113
104
105
121
106
91
127
49
115
148
92
147
120
77
127
76
77
97
140
79
98
98
148
54
110
106
59
123
121
82
111
114
74
131
108
105
117
125
113
87
82
54
95
98
106
98
104
103
159
74
90
89
142
95
83
145
102
148
103
128
92
84
179
140
54
113
108
143
93
95
95
124
125
112
108
98
144
122
94
68
116
85
162
117
132
115
96
122
89
143
125
115
86
127
95
98
194
125
78
113
125
67
115
90
98
135
151
102
126
85
95
82
92
54
138
95
83
193
115
144
116
102
119
95
115
54
125
95
137
132
143
90
115
123
77
108
124
95
144
126
135
143
151
155
73
49
80
160
177
110
127
185
191
76
133
87
84
83
125
140
81
59
95
94
113
127
101
95
169
121
116
145
144
120
125
102
122
87
98
95
95
119
99
164
88
128
96
89
167
103
54
83
142
98
61
140
158
111
94
107
132
124
138
166
115
97
134
131
154
87
157
154
101
119
81
135
93
108
95
128
193
125
98
103
118
134
104
139
98
133
134
115
95
118
95
89
87
120
144
97
144
90
93
146
147
95
141
123
67
105
108
82
90
166
127
131
120
80
95
149
94
93
152
65
144
97
102
90
107
96
122
112
95
158
87
102
118
81
145
108
93
87
113
88
155
103
98
145
133
77
125
133
82
107
92
121
153
129
98
153
88
101
131
165
84
108
123
81
149
95
157
78
125
67
167
59
125
141
161
114
111
153
131
96
134
131
122
149
79
82
139
135
103
125
102
92
98
102
126
165
133
54
102
95
67
89
121
141
95
121
69
95
167
132
89
119
103
54
109
149
144
107
96
95
109
135
121
128
130
148
138
106
107
118
49
72
103
121
93
137
155
111
131
144
137
143
135
113
147
95
98
114
151
180
81
67
69
108
54
136
187
87
95
125
115
107
81
133
77
67
162
128
49
113
141
136
98
115
97
91
113
116
116
98
108
105
127
77
121
103
138
76
135
68
117
131
74
78
102
98
131
102
91
117
127
103
136
142
107
88
108
142
98
89
109
95
61
81
101
108
127
111
119
98
93
127
142
123
80
111
100
122
151
146
168
120
110
116
69
93
108
76
141
102
147
137
143
193
177
54
144
158
132
93
131
54
74
129
108
111
133
148
124
122
134
181
142
88
95
108
112
188
108
98
158
79
87
161
78
98
125
124
98
135
96
102
77
117
121
123
93
81
82
175
125
177
119
119
125
135
74
132
133
124
129
139
100
78
99
115
98
105
146
54
80
69
67
96
121
128
112
108
96
96
54
69
67
176
95
98
85
132
87
143
191
95
148
101
61
94
146
78
96
133
92
76
105
82
133
118
76
96
190
105
112
97
108
115
158
110
83
112
122
140
117
76
105
87
216
139
105
148
110
94
59
49
102
122
112
110
112
80
140
81
145
156
108
109
97
167
128
92
100
148
144
114
99
67
117
108
167
102
87
139
49
116
77
108
124
137
74
127
102
204
90
98
68
125
107
108
110
139
122
68
128
91
93
112
103
89
97
112
119
107
129
216
99
124
108
105
121
118
108
82
125
119
134
108
142
138
96
137
133
105
102
108
133
101
108
133
132
102
115
152
155
80
101
156
54
91
97
92
167
54
110
94
89
101
84
92
159
121
125
112
54
96
102
115
108
119
73
125
177
131
105
135
132
104
133
117
109
125
162
135
112
140
104
117
74
95
98
98
96
120
125
152
102
112
77
148
131
101
151
91
125
98
100
145
94
129
83
54
116
86
150
91
59
91
117
112
54
124
146
108
145
89
105
98
112
140
129
81
129
62
163
137
115
99
49
82
106
140
87
81
147
95
154
104
89
111
117
81
111
107
83
111
149
107
125
90
123
162
110
90
94
139
104
93
125
158
108
54
149
102
79
100
161
115
131
54
119
131
96
126
140
112
88
121
89
105
180
145
138
54
154
78
137
108
140
92
102
102
140
139
93
113
87
163
82
89
133
106
84
113
120
142
125
59
103
93
137
141
108
84
104
107
162
82
67
120
94
113
151
107
102
138
97
59
134
83
74
104
103
54
83
139
190
146
97
68
120
73
97
104
96
54
78
49
82
102
54
93
100
98
113
89
108
109
102
123
124
87
94
142
111
147
89
74
98
91
87
108
156
106
144
102
134
112
99
106
77
150
109
106
102
108
146
54
70
92
102
106
82
127
135
87
134
113
84
105
118
116
61
54
115
135
143
95
107
87
106
147
113
154
106
154
89
104
108
87
148
168
155
75
91
149
159
133
116
133
110
85
125
125
123
102
112
122
124
129
108
145
143
158
109
129
111
111
130
121
159
139
89
59
97
125
108
158
54
110
108
82
137
108
80
98
177
149
110
182
200
96
153
160
124
95
132
54
120
125
129
146
98
94
97
108
116
82
149
197
111
116
101
163
115
135
90
143
86
140
120
188
87
59
116
62
102
87
109
97
102
85
103
113
143
117
142
101
145
176
148
140
155
137
102
108
98
117
91
130
127
143
106
154
132
154
106
102
49
162
122
106
144
113
104
133
161
108
125
95
74
127
140
115
95
165
108
120
155
102
108
116
147
132
109
128
54
102
119
99
169
61
155
102
77
134
79
107
95
119
59
124
153
139
106
92
108
98
128
133
135
135
84
103
141
121
145
108
84
81
84
125
104
198
95
92
160
93
80
147
95
113
113
93
136
125
98
143
77
128
94
135
54
134
106
127
49
118
104
145
95
137
106
98
144
112
110
167
133
118
139
54
107
165
200
157
139
102
98
98
112
128
129
152
111
165
135
97
124
67
167
101
78
86
82
171
95
196
129
141
131
103
107
114
101
79
126
102
129
159
93
102
135
160
84
96
95
94
128
124
158
141
143
95
129
100
118
108
143
65
108
94
95
144
149
95
118
68
105
78
112
77
142
115
54
129
143
54
153
111
144
172
109
120
84
164
148
102
131
138
137
122
147
123
54
59
94
109
117
182
81
139
95
146
106
149
183
105
124
81
135
156
135
123
97
178
167
74
158
102
86
93
76
117
82
67
96
99
90
54
125
113
77
59
113
125
124
96
80
49
57
93
108
92
138
106
113
119
54
146
180
101
107
90
83
148
104
102
98
49
160
117
107
74
98
49
146
131
143
108
117
106
128
129
115
59
151
98
119
101
160
111
147
112
108
93
115
104
54
74
105
108
129
101
120
139
93
139
49
90
145
155
156
74
125
169
200
116
110
148
108
102
163
74
95
101
102
59
95
107
93
212
59
106
107
101
105
102
74
83
127
147
104
150
137
103
81
156
111
54
154
90
93
102
96
113
141
74
87
128
73
186
136
45
162
114
67
135
118
109
143
94
118
150
82
123
139
111
97
144
54
120
140
104
153
150
145
78
120
77
144
125
82
115
96
81
119
120
102
127
123
101
143
98
117
87
112
172
107
95
59
70
146
68
125
136
107
57
145
102
131
94
98
163
96
126
89
80
106
102
119
128
108
140
103
63
98
141
85
131
107
81
157
128
101
77
98
115
49
107
164
162
78
81
88
125
54
84
54
107
117
140
68
123
118
129
96
81
91
99
115
181
103
159
102
105
98
179
140
54
105
101
113
131
108
95
185
95
139
85
157
138
95
107
134
93
163
101
159
131
104
115
140
54
140
91
106
160
102
104
101
141
94
87
87
123
119
90
85
83
83
99
177
86
140
102
126
116
152
90
180
108
150
88
116
121
134
119
133
95
139
130
49
103
168
109
135
113
98
91
126
102
123
96
78
98
102
110
177
119
90
78
150
128
78
118
108
133
113
110
101
144
144
113
102
113
80
74
97
100
160
125
97
102
123
122
125
93
74
54
152
82
123
122
177
84
157
104
68
74
117
93
90
85
122
145
97
97
124
166
116
144
49
130
145
108
170
163
69
101
133
104
125
180
98
83
102
88
74
67
90
157
144
120
104
114
137
112
83
97
67
149
91
90
117
91
148
79
133
95
99
78
102
108
69
119
81
128
86
125
102
113
131
77
135
130
105
76
127
158
76
76
105
102
97
140
144
179
144
133
108
98
115
94
144
131
77
146
158
143
151
116
89
144
91
80
146
49
155
145
133
118
165
144
81
103
161
88
102
118
130
111
108
131
159
107
122
93
134
87
103
78
128
59
129
138
59
75
108
102
80
129
112
95
135
113
54
94
113
59
91
98
165
103
110
95
111
108
127
121
138
108
83
118
54
59
74
160
112
128
54
147
109
156
95
85
98
86
145
104
83
137
172
105
107
141
82
135
126
127
147
76
98
86
120
144
106
105
99
147
114
78
116
90
113
108
54
115
105
123
54
161
93
76
115
97
126
102
104
54
82
126
131
114
160
67
143
96
165
87
77
106
102
59
91
128
95
107
85
164
96
108
123
132
123
105
82
167
54
137
145
154
124
173
165
148
95
95
100
105
178
126
138
49
108
127
109
102
119
145
216
156
149
123
108
59
142
95
108
115
132
135
133
54
141
81
133
141
128
100
153
104
82
119
172
103
98
139
116
141
116
114
103
141
107
83
156
99
120
106
110
177
110
113
172
143
93
141
103
140
76
77
108
162
161
105
125
78
108
81
108
98
144
105
147
127
128
143
134
120
122
153
127
118
120
54
103
109
118
61
98
117
77
115
100
59
140
90
158
115
107
186
162
103
83
103
95
85
74
120
87
124
182
74
104
163
97
103
85
90
111
122
94
83
107
90
182
104
54
100
104
139
76
96
95
141
102
140
132
107
133
105
106
140
145
59
80
135
154
128
108
119
82
118
124
98
105
109
101
114
127
90
102
185
159
97
96
145
121
130
87
141
169
122
113
128
105
135
90
102
133
127
133
155
108
168
54
104
140
102
148
96
121
134
137
128
80
137
98
49
113
105
106
54
105
109
96
118
91
126
149
105
126
134
49
148
97
131
92
159
67
93
67
101
96
104
146
131
119
125
102
150
106
123
108
70
138
128
76
98
126
113
125
79
111
125
91
49
109
110
155
95
65
81
98
127
81
67
192
126
125
95
108
109
107
108
98
74
95
80
74
158
97
139
149
135
85
128
122
85
98
81
78
164
109
120
108
112
161
115
142
69
95
107
82
136
119
140
113
133
94
134
68
159
95
110
108
116
116
84
125
115
153
83
99
119
152
102
180
107
128
159
82
128
115
68
128
86
76
87
119
133
177
88
129
77
154
131
80
139
94
117
94
54
146
86
144
152
93
86
68
127
112
87
128
61
102
120
95
61
105
87
207
180
113
149
148
138
108
136
49
109
108
143
105
119
133
133
140
97
94
122
120
165
118
156
185
100
135
115
113
102
54
118
165
54
102
102
95
145
117
149
156
107
87
141
69
159
154
102
109
82
114
122
119
102
105
115
76
128
133
136
134
106
102
121
78
107
59
108
83
129
143
149
97
118
117
139
148
106
99
90
82
117
148
82
54
170
131
106
196
114
102
108
140
147
174
120
90
163
130
137
105
104
123
120
145
95
145
120
168
128
97
157
76
136
87
115
54
78
165
92
136
143
115
118
102
79
68
114
156
119
112
123
122
135
89
133
93
67
87
169
54
61
165
157
54
133
143
125
118
128
163
95
91
143
95
91
108
102
120
140
107
95
118
130
109
148
102
99
138
154
90
105
140
128
95
78
103
87
54
116
126
125
90
76
114
156
131
77
146
98
82
81
163
95
133
157
125
110
119
123
76
119
119
108
97
125
125
102
103
90
103
135
88
115
133
149
142
54
115
137
49
200
117
118
86
158
144
118
74
74
114
98
103
105
151
171
80
132
155
59
145
106
112
108
81
155
167
89
125
95
95
108
105
107
128
81
123
103
109
68
92
113
76
133
154
91
123
104
131
105
105
121
118
95
147
144
136
130
103
133
98
101
68
76
129
112
108
95
105
112
107
54
108
106
102
141
104
84
85
68
113
117
142
122
121
69
135
141
133
101
84
135
101
128
125
112
94
148
129
148
105
117
125
95
66
49
120
68
69
127
140
82
158
131
151
105
87
106
179
108
140
125
113
143
134
77
95
87
49
124
95
88
105
49
186
76
150
83
90
177
106
82
94
54
113
151
67
85
127
78
109
139
134
121
108
129
104
173
162
122
81
126
157
92
132
102
78
74
223
59
163
148
87
151
69
127
114
143
105
102
114
153
118
158
108
79
90
126
114
81
114
98
126
99
93
157
95
93
108
131
82
96
108
88
90
113
158
96
168
151
81
79
91
99
54
193
76
125
102
142
206
135
102
100
108
101
106
108
83
78
159
148
91
101
112
133
104
102
141
102
111
171
168
96
91
146
54
135
89
139
86
54
95
148
148
90
108
121
95
59
114
54
102
135
122
118
139
129
87
144
125
130
95
110
96
111
104
139
143
102
92
97
147
68
151
113
122
135
103
89
125
110
80
123
154
107
148
121
108
167
107
107
77
101
76
114
68
137
129
82
118
156
151
49
137
117
140
122
138
109
127
139
93
124
108
144
87
138
140
122
107
140
83
150
123
118
186
139
98
127
159
110
100
128
81
117
188
145
94
134
49
163
98
95
67
137
81
109
109
98
97
150
155
91
108
122
172
115
96
81
108
143
142
76
95
128
77
148
81
130
177
115
120
103
98
123
145
97
73
129
95
87
121
96
130
49
111
157
127
102
145
67
83
78
103
95
118
137
54
81
150
125
128
152
105
123
104
90
119
125
116
120
102
121
81
107
159
101
113
109
127
76
161
175
94
95
59
92
85
119
112
81
116
95
86
90
82
104
96
95
54
49
59
153
90
116
65
116
126
96
102
150
108
122
102
133
73
103
90
87
81
93
114
112
54
175
141
149
93
132
59
68
101
77
121
90
159
154
140
99
118
103
67
146
98
103
102
124
80
129
103
87
119
125
73
105
59
84
140
133
168
102
151
96
113
117
149
113
67
97
148
110
97
129
120
106
146
104
132
157
86
54
102
113
91
234
122
108
102
129
81
144
108
80
82
129
149
102
141
225
82
87
139
143
141
101
81
94
106
82
104
128
82
100
111
113
129
142
139
106
111
151
114
126
77
155
127
81
120
148
109
95
112
146
145
54
115
93
118
97
97
130
81
102
128
83
114
105
96
89
128
79
133
54
111
98
82
169
125
108
113
93
98
61
69
184
117
67
54
76
137
85
129
92
99
108
108
127
120
108
54
118
118
132
132
87
102
150
108
147
81
130
78
102
94
131
54
104
132
127
113
78
113
130
130
59
95
91
110
76
146
99
103
129
139
123
129
104
98
164
155
120
133
91
85
86
149
98
108
130
140
131
128
156
102
104
127
108
158
81
90
145
182
162
90
104
54
108
110
109
127
127
142
150
111
104
81
101
105
146
113
95
125
112
126
126
117
98
99
124
159
139
85
118
94
112
204
77
137
100
155
86
158
129
125
144
101
112
141
148
100
95
99
117
97
142
68
90
102
133
89
107
77
90
105
119
95
110
162
143
74
109
112
125
148
108
119
156
77
167
83
106
93
116
120
106
94
120
114
144
126
154
124
115
121
94
105
95
148
80
126
74
100
85
95
90
160
94
83
109
90
136
151
131
80
122
161
49
135
148
142
159
143
54
148
95
109
61
93
132
108
126
61
98
78
106
116
135
123
101
95
105
113
113
97
110
76
154
117
127
110
80
103
77
173
155
80
108
85
102
155
91
163
180
108
108
83
103
101
49
54
78
93
122
125
89
115
101
108
144
89
127
135
54
104
102
59
107
123
148
119
83
119
113
94
127
93
101
127
133
132
132
106
150
177
124
138
76
88
54
131
124
148
150
106
155
158
144
135
147
107
95
127
179
95
135
54
77
86
107
102
111
116
93
85
77
103
143
73
159
87
93
102
123
49
113
132
103
115
121
98
93
156
76
104
133
94
126
99
141
139
98
104
127
54
160
111
136
105
93
98
158
144
92
218
133
119
93
101
102
106
54
91
54
131
113
95
138
59
129
179
118
127
98
97
144
102
125
111
143
132
84
108
147
78
101
112
54
91
154
144
100
81
74
122
117
92
125
108
111
82
117
81
77
123
147
135
130
125
117
97
103
156
103
102
145
82
194
156
54
128
110
97
70
107
140
99
95
142
108
106
116
104
141
101
121
130
143
93
114
118
147
132
95
136
106
105
79
109
125
142
125
144
108
96
166
113
177
135
150
62
134
148
189
122
144
94
146
150
115
116
141
101
70
91
59
116
92
138
121
102
133
81
81
107
123
133
92
145
54
106
126
102
156
80
146
87
167
148
54
130
81
119
109
78
135
133
170
125
146
122
165
122
131
96
117
125
109
135
124
86
76
134
127
146
143
188
127
80
131
90
96
81
102
133
95
77
78
127
185
142
173
105
87
129
102
218
120
107
121
119
119
78
141
95
143
143
94
151
80
87
88
161
169
84
148
88
107
97
118
102
97
102
103
144
112
81
100
81
129
116
119
88
78
125
59
153
179
123
188
107
136
133
74
129
94
78
115
103
93
89
102
106
113
124
120
117
112
123
121
49
102
92
112
86
109
93
108
106
124
128
68
77
127
87
101
156
73
100
96
136
120
110
86
82
92
81
125
102
124
115
103
81
49
127
87
54
97
124
100
106
124
74
146
98
101
149
54
100
188
96
154
97
146
95
102
108
111
135
81
81
110
105
91
107
89
163
110
123
54
98
81
182
156
130
144
154
129
144
104
95
155
116
79
77
123
118
109
125
54
143
85
128
126
129
82
54
121
130
117
108
54
105
167
119
61
81
98
152
120
98
134
81
133
124
190
115
74
93
98
98
126
78
180
108
159
119
150
98
147
111
120
134
92
122
95
146
105
159
139
172
82
102
113
167
102
104
83
120
150
95
83
107
156
99
134
105
91
167
83
117
98
173
126
120
99
93
127
59
100
76
106
148
148
125
59
77
108
168
119
108
134
140
106
54
107
59
179
108
159
139
112
112
144
154
122
111
95
123
130
177
160
148
91
144
54
155
132
102
146
113
115
112
105
151
153
135
138
95
131
154
143
67
104
102
107
149
106
77
113
87
68
127
54
135
99
136
107
110
81
103
54
195
166
49
119
54
93
85
93
122
168
133
108
129
95
99
108
168
152
65
154
104
140
76
130
171
71
61
105
187
99
123
169
98
81
104
126
77
133
167
77
145
96
74
77
127
153
143
115
83
154
125
105
134
79
98
104
115
102
141
157
101
119
103
136
108
101
131
59
94
106
82
99
115
54
153
138
105
78
134
108
144
120
148
133
95
104
95
161
158
93
121
104
154
116
82
118
101
148
133
96
156
159
83
98
89
115
129
112
172
108
200
98
112
99
117
119
130
82
76
103
98
117
118
149
143
87
114
139
144
146
225
89
82
80
105
76
133
123
133
105
93
106
107
131
76
108
95
102
63
117
107
143
101
131
108
103
106
219
127
103
73
108
131
88
122
103
103
84
102
140
125
102
149
108
165
142
158
96
148
130
54
54
98
121
157
115
135
136
90
54
70
99
156
74
74
114
180
138
189
108
98
95
91
54
54
77
108
143
108
76
126
207
103
158
102
112
76
86
144
95
114
79
54
92
121
117
146
122
122
138
102
153
122
76
81
101
161
94
160
126
103
117
81
135
126
95
118
113
131
173
145
80
90
74
115
87
105
145
49
143
107
136
83
136
138
177
98
129
69
78
94
108
110
116
111
111
62
84
122
54
140
105
165
83
148
110
102
139
134
123
121
59
140
106
125
125
133
94
101
107
110
116
89
78
108
150
91
156
101
131
133
93
95
132
95
54
135
67
133
125
103
131
108
129
104
97
163
76
113
116
122
167
125
135
111
149
92
138
98
108
200
92
69
149
113
138
93
176
103
126
54
103
79
54
147
102
106
161
126
163
133
130
164
91
135
117
105
113
125
113
125
96
127
107
114
134
148
108
103
113
155
93
83
124
108
69
77
156
187
103
113
65
87
74
84
93
81
140
95
104
129
95
94
141
106
133
97
103
122
133
99
54
90
87
137
129
126
81
128
106
142
90
112
95
163
90
116
59
74
108
98
139
77
119
125
151
160
49
108
104
96
127
68
123
102
120
111
102
114
156
80
82
125
142
138
132
122
79
127
130
137
165
123
157
163
116
68
80
93
93
139
102
100
107
80
45
113
133
116
124
118
112
104
98
102
81
131
116
113
89
151
89
135
74
97
119
103
98
89
95
77
90
92
113
157
116
84
49
138
131
81
59
113
117
130
120
94
49
125
97
138
121
97
54
80
138
98
122
135
186
134
108
166
122
125
154
157
122
106
101
148
129
144
172
90
122
127
54
95
108
110
119
123
149
127
186
83
192
143
98
109
131
67
54
131
93
148
91
111
113
99
164
68
90
164
102
123
91
105
98
74
77
101
108
79
87
102
106
105
109
122
146
173
87
102
94
170
107
113
95
144
105
159
109
125
140
59
161
108
109
131
105
105
105
120
129
99
144
156
89
76
114
54
102
105
123
130
74
142
150
133
61
157
97
98
102
74
97
109
159
108
128
198
131
89
115
127
139
154
83
154
151
119
106
131
175
128
128
125
98
90
91
149
134
97
85
108
96
95
88
157
132
103
100
82
116
102
102
112
139
108
108
121
54
76
180
104
99
144
151
90
137
81
82
54
138
109
139
102
137
131
142
120
140
49
102
92
127
111
61
76
98
164
109
132
172
81
111
110
115
133
91
139
134
103
162
146
133
113
171
96
95
102
132
131
152
119
78
106
113
105
74
89
139
144
65
133
74
117
82
81
139
180
81
103
95
54
124
146
160
101
103
106
177
131
158
166
69
134
102
105
102
129
87
158
108
127
92
103
153
153
155
98
126
147
133
93
149
114
118
114
103
113
74
76
111
108
80
135
113
74
90
112
141
115
82
91
69
137
80
109
121
103
134
132
106
145
110
139
125
142
59
138
101
130
123
115
132
115
133
98
86
129
158
108
96
97
119
174
170
125
104
161
139
126
97
106
95
94
108
121
102
102
124
127
103
93
100
103
150
96
105
82
61
165
114
124
54
128
114
127
54
118
125
114
140
89
98
108
54
97
105
140
140
105
94
108
83
107
74
102
67
115
54
128
125
114
179
70
149
68
96
143
59
124
139
88
155
83
102
158
105
74
97
83
108
142
162
95
141
97
124
137
107
95
116
105
100
118
143
97
165
108
91
117
140
95
66
93
156
186
123
166
146
86
105
54
146
108
107
89
59
104
96
62
87
182
81
82
54
152
98
139
102
87
69
121
67
126
148
149
115
92
157
91
105
92
128
142
108
129
160
128
106
156
120
76
148
137
121
158
91
199
83
106
107
108
153
132
110
157
140
100
95
49
135
255
152
98
131
151
87
84
117
99
102
113
143
113
153
95
119
127
81
92
98
105
67
69
90
112
92
99
107
129
73
120
111
191
85
102
151
120
133
172
81
178
126
160
62
125
95
135
130
172
106
133
95
149
100
148
110
107
61
155
86
108
129
176
121
120
105
74
112
130
104
143
148
123
105
94
77
146
176
128
147
144
128
90
87
109
140
108
121
54
59
49
113
109
128
127
87
145
90
147
102
140
127
99
120
119
125
142
126
74
95
159
54
159
148
103
139
152
118
81
146
172
116
135
133
95
70
54
95
177
130
93
112
178
113
81
123
91
151
116
149
93
119
81
104
69
97
116
122
113
167
97
74
149
128
154
108
83
127
83
147
140
128
173
87
115
133
170
121
117
70
149
95
98
158
153
158
162
54
122
87
81
92
81
96
120
135
100
105
54
151
126
140
122
127
146
103
116
190
166
130
153
112
127
104
143
122
68
154
113
102
102
131
108
168
143
96
150
123
149
146
157
82
105
133
143
131
115
81
111
74
98
54
81
127
54
153
77
131
87
131
161
169
98
95
107
80
67
133
106
150
74
117
143
95
120
67
143
93
81
122
65
108
141
177
160
127
91
77
95
142
68
124
81
49
107
111
88
127
136
78
76
138
194
54
169
90
67
122
65
147
114
158
59
122
146
117
131
106
177
77
148
108
96
127
95
132
124
90
110
89
61
135
81
125
87
103
128
130
135
102
95
173
113
114
87
91
98
129
143
108
61
106
165
123
105
131
77
83
124
85
49
183
95
170
92
105
108
114
143
134
118
108
98
117
150
172
138
54
116
131
81
82
103
74
105
103
92
179
121
111
83
59
89
130
121
121
88
95
108
59
141
130
148
123
158
124
85
87
108
67
132
105
126
68
119
102
85
116
80
103
130
122
145
84
133
137
98
139
81
156
107
137
116
119
128
126
125
90
123
112
160
95
95
119
81
83
82
113
158
105
101
59
95
102
153
81
76
125
150
59
118
49
113
141
79
104
103
101
96
94
162
158
100
85
110
113
128
123
158
118
123
90
100
88
54
188
122
138
94
73
157
122
108
95
125
174
98
117
144
54
101
108
143
90
128
82
76
119
127
125
49
107
84
131
61
96
113
102
131
59
99
113
177
135
126
106
106
103
153
102
145
114
153
81
95
144
134
173
107
74
112
141
110
145
148
107
102
106
126
131
103
87
141
114
148
182
105
76
127
93
87
74
158
108
102
102
91
136
154
132
156
81
108
137
155
132
67
148
61
98
133
139
81
155
112
108
174
138
143
94
123
99
98
159
94
102
120
138
137
109
92
79
96
152
95
82
112
74
131
128
96
112
119
139
54
97
129
148
54
144
113
136
87
108
137
65
78
139
95
137
125
102
54
87
113
127
97
102
93
80
158
125
131
102
104
152
138
108
103
96
118
170
139
59
136
151
120
136
102
144
134
103
126
125
93
94
113
98
141
145
152
103
80
85
122
115
118
132
131
139
109
49
127
104
125
81
81
81
134
96
154
147
132
119
83
140
122
137
112
73
42
122
125
130
122
73
123
150
68
115
122
146
95
90
54
145
98
132
96
98
132
144
78
122
128
95
156
119
111
135
78
196
115
135
182
114
122
97
59
107
98
108
154
176
106
98
120
156
166
77
157
59
94
96
115
77
74
135
148
114
91
181
108
87
119
141
177
90
108
107
127
100
91
134
112
94
101
144
106
153
119
122
125
100
98
153
100
102
186
102
119
113
99
87
54
124
139
144
105
112
175
129
148
73
84
193
81
82
114
95
141
136
173
146
122
145
151
120
98
110
153
116
147
95
97
124
143
93
106
115
102
119
88
61
153
116
125
78
131
139
115
126
158
115
108
82
108
167
200
102
59
94
127
78
98
157
179
121
69
134
108
82
137
97
125
106
108
104
91
49
106
153
77
119
124
96
93
74
49
133
67
95
162
124
110
134
106
149
148
82
85
98
120
133
95
93
111
103
93
54
113
96
98
106
115
115
125
101
92
105
113
98
107
54
135
59
128
95
141
77
147
147
54
165
118
135
74
82
105
133
115
88
102
49
143
113
100
189
116
67
90
94
145
119
127
128
133
54
77
120
54
121
148
155
89
67
103
79
122
83
95
148
113
108
106
119
83
125
81
68
118
125
122
115
90
128
106
153
136
109
108
100
90
128
146
111
160
123
77
128
73
129
138
65
113
162
147
117
126
135
106
95
148
146
179
136
131
128
59
74
94
82
95
120
127
97
54
87
108
148
151
123
81
87
168
140
102
108
125
177
86
54
153
148
117
75
136
178
153
61
81
76
81
150
54
77
81
122
139
114
54
146
96
108
148
100
61
93
128
165
83
105
98
154
119
125
180
189
132
135
99
100
133
102
107
74
136
140
107
190
105
173
123
131
107
133
147
105
54
150
172
120
106
125
105
106
135
113
74
155
94
111
142
148
85
140
156
123
67
81
74
131
136
97
107
133
81
65
133
117
137
131
111
95
108
131
121
151
123
76
146
108
49
95
54
114
103
105
98
131
102
105
157
152
81
106
98
123
96
92
118
54
81
134
104
140
121
108
81
147
98
100
98
143
85
108
109
85
89
108
112
77
102
133
146
91
97
128
134
133
95
131
107
108
45
98
145
127
68
123
74
54
128
90
119
126
90
150
133
92
117
85
161
115
121
54
103
133
81
147
102
137
148
165
112
139
49
138
126
104
119
74
98
98
123
131
146
91
106
127
54
135
127
98
108
143
84
137
110
108
54
101
113
111
99
115
188
129
100
54
155
54
101
61
98
81
140
76
98
54
93
144
166
144
113
121
120
89
148
125
80
106
83
94
54
118
105
125
205
80
96
114
112
91
111
131
166
129
90
98
127
165
91
122
89
88
144
149
155
129
102
113
65
101
131
185
103
145
76
108
146
89
102
112
133
102
126
133
96
190
144
76
101
129
98
165
67
160
140
83
121
124
145
108
78
131
107
143
106
135
102
108
101
137
119
103
54
124
102
108
113
116
81
148
98
113
234
129
54
54
87
81
124
104
144
179
143
177
135
108
138
120
168
122
122
132
86
142
61
61
117
54
142
93
68
95
96
139
132
146
122
104
144
54
81
136
138
113
112
135
198
96
94
137
130
125
119
93
135
80
66
190
119
54
150
126
118
114
108
157
68
148
134
105
107
96
94
177
123
49
120
95
129
87
138
54
110
123
126
105
131
108
110
166
135
125
125
140
61
144
110
98
104
106
149
91
166
146
74
118
98
135
135
76
99
110
130
108
120
120
189
97
108
128
124
129
106
145
102
108
148
88
160
95
137
85
163
81
123
141
102
76
102
127
129
116
96
161
125
112
91
93
90
139
144
112
59
114
126
95
107
91
120
102
73
120
109
154
107
133
129
134
98
117
92
158
122
103
113
120
96
76
59
95
113
129
100
110
102
125
96
102
103
113
158
78
159
82
90
118
95
88
49
116
117
98
113
102
67
94
95
108
150
106
81
75
102
136
78
49
107
76
141
116
99
135
125
105
127
97
94
128
103
141
54
98
85
96
133
119
146
91
111
123
54
180
107
85
133
95
138
126
125
139
135
129
125
82
145
94
102
132
113
142
106
85
49
78
82
149
133
102
106
140
153
114
91
94
93
125
169
149
111
95
119
108
128
81
139
81
101
137
113
148
153
102
91
163
113
150
114
125
105
54
177
144
78
95
127
128
145
108
138
152
177
111
128
104
125
144
110
93
67
182
87
109
128
128
94
87
107
148
144
102
126
99
103
128
76
107
95
159
111
109
118
116
118
110
61
98
54
89
95
112
148
157
114
101
118
54
141
122
108
91
131
180
103
86
107
92
102
106
158
147
136
123
143
95
121
125
113
124
119
100
99
93
121
95
131
97
123
96
120
116
144
175
93
160
128
103
87
122
67
125
160
98
139
59
91
98
154
123
127
98
126
74
90
108
148
111
131
134
117
122
95
184
98
78
97
108
133
85
143
131
154
158
135
108
133
114
91
135
118
148
49
68
100
102
118
139
135
108
120
149
111
80
107
177
49
108
116
148
74
122
54
164
157
118
59
99
124
103
127
59
116
83
128
93
102
96
105
208
80
82
142
120
107
151
108
175
81
151
105
103
124
133
92
76
103
105
77
81
117
54
141
103
131
145
146
143
95
103
137
114
141
77
120
125
118
123
103
156
126
100
108
104
136
91
140
119
156
111
124
125
123
102
123
109
116
158
99
80
54
97
54
136
108
85
54
98
105
125
93
149
83
139
93
54
105
119
127
143
106
139
73
145
91
101
104
104
125
88
87
102
125
113
107
79
77
110
111
198
121
124
102
135
98
130
142
102
178
74
160
138
83
81
112
84
102
78
83
175
131
98
120
87
124
128
98
125
151
105
115
126
54
77
98
136
113
93
113
112
156
158
117
95
88
96
110
110
95
173
160
116
108
93
163
117
102
152
97
93
112
125
128
127
157
140
131
113
166
110
168
122
129
105
93
133
125
130
132
54
133
105
76
97
139
185
76
110
82
95
79
113
177
108
100
130
125
117
88
110
96
109
68
103
110
170
134
97
126
123
163
89
78
101
134
137
113
117
127
123
120
181
112
146
162
106
134
59
147
99
76
92
85
105
107
95
107
97
54
113
92
122
108
105
126
59
82
54
130
67
194
142
102
96
115
113
131
93
92
142
143
113
85
143
135
95
74
156
127
84
137
103
125
147
147
152
116
76
113
173
120
127
108
145
129
120
105
107
77
78
95
142
90
54
107
111
218
74
125
100
133
93
112
200
90
127
108
87
107
108
112
135
99
129
93
54
130
129
87
105
88
125
109
123
77
99
98
139
188
119
72
98
130
77
146
131
158
90
134
93
96
124
102
95
132
102
124
113
147
105
138
133
95
153
137
96
74
135
109
98
83
94
127
139
100
123
108
111
120
108
98
172
95
119
149
59
91
103
144
144
165
115
132
118
98
143
90
163
145
166
130
84
131
82
95
59
144
54
98
108
106
125
102
101
108
151
81
112
107
101
120
135
108
118
69
154
128
144
128
105
85
104
120
101
158
126
193
139
148
139
76
116
135
165
131
178
96
74
134
120
85
115
125
118
112
139
78
68
140
54
156
139
97
107
151
82
105
154
54
68
118
77
153
140
145
95
131
81
93
83
139
120
156
129
115
82
93
108
176
151
99
82
146
132
95
134
96
80
113
129
81
193
88
98
115
174
168
103
98
145
54
118
96
95
87
133
118
54
105
113
161
103
131
113
182
116
108
125
113
121
65
154
112
104
131
90
85
157
170
77
95
98
95
108
125
156
118
143
188
155
143
129
76
142
123
90
108
112
135
177
108
149
160
93
139
54
122
120
75
133
81
131
98
121
133
146
126
77
87
102
117
119
98
122
101
148
93
110
95
132
89
116
127
78
134
99
93
117
105
158
113
116
81
137
145
141
168
108
79
152
104
59
131
108
124
97
95
54
106
145
119
98
134
76
138
107
156
78
102
78
143
98
143
135
114
106
105
98
105
54
116
95
87
103
135
145
107
102
106
87
49
104
89
98
145
108
127
103
129
102
124
67
108
108
113
115
102
108
175
95
158
155
117
144
116
125
108
110
107
176
91
120
98
136
95
141
144
95
110
91
155
125
177
54
120
131
106
107
108
107
82
131
126
114
127
102
77
103
92
93
70
107
61
123
103
84
112
180
147
104
77
102
135
95
103
105
146
148
102
54
115
125
154
108
150
160
142
83
96
100
135
77
121
131
133
85
120
102
95
174
95
74
102
108
135
103
160
54
147
110
153
141
128
161
109
81
54
186
99
114
110
98
117
103
114
130
105
142
118
82
98
108
96
117
81
95
148
93
109
156
125
180
102
49
145
89
114
93
156
122
94
100
107
109
108
158
123
92
103
99
99
182
90
96
67
95
165
100
106
144
98
116
168
74
125
98
138
73
100
107
129
87
125
148
144
128
98
130
90
102
119
49
146
114
83
76
186
82
117
99
59
78
179
106
128
97
133
153
120
173
109
122
81
161
138
127
128
143
122
59
102
116
98
117
125
95
81
101
97
91
108
145
112
114
124
137
105
98
134
104
127
121
145
85
122
122
119
90
107
91
122
128
192
103
98
97
163
112
90
49
77
120
120
59
135
59
54
81
177
103
101
91
103
98
139
137
109
111
137
156
124
131
150
148
87
76
148
91
158
93
98
122
49
188
98
181
177
102
129
69
126
146
122
96
99
74
144
165
78
97
140
108
100
96
155
135
95
94
146
107
161
139
143
135
100
112
129
144
70
136
106
138
108
117
128
112
104
91
154
102
91
105
107
107
133
103
126
54
54
132
76
125
202
117
140
96
106
150
138
103
109
107
77
102
155
110
105
108
177
99
106
167
119
138
110
90
70
122
84
140
167
108
121
128
102
109
111
115
165
87
145
145
120
144
147
128
145
163
166
59
146
88
139
127
93
132
126
120
94
104
120
81
139
102
101
158
160
98
145
54
103
128
133
113
122
74
133
200
144
110
124
117
79
78
77
119
105
124
147
93
120
125
165
90
69
54
87
122
93
161
178
61
95
98
106
112
103
106
180
178
61
119
161
92
133
67
80
97
81
163
107
127
167
128
74
67
108
123
72
97
116
102
85
85
54
91
140
103
152
121
129
148
143
95
105
129
144
107
120
81
167
95
102
158
125
93
54
151
93
140
131
148
92
96
105
120
123
118
77
92
178
102
49
90
87
119
76
123
120
99
93
121
108
130
117
116
152
133
77
149
120
139
134
157
155
82
54
78
190
149
74
165
128
102
112
92
165
132
100
145
119
133
54
74
102
133
101
113
141
108
91
102
117
134
108
80
136
154
158
97
113
78
73
98
143
145
74
132
74
153
154
134
157
218
83
149
95
95
143
127
150
139
139
81
109
122
159
93
160
108
70
98
105
81
76
121
155
74
116
147
102
49
49
65
105
54
119
59
142
148
101
74
123
96
112
104
144
155
59
123
135
133
147
76
104
127
107
135
124
114
182
99
139
133
200
99
124
111
89
148
121
69
106
139
108
132
49
188
105
165
113
134
120
126
110
170
146
49
129
61
74
115
95
74
169
120
73
97
147
113
109
113
89
106
105
156
69
143
106
135
54
105
95
74
85
130
127
149
170
122
54
74
134
94
122
132
118
59
147
61
162
87
136
98
113
95
129
143
148
59
138
125
98
115
94
140
148
135
105
105
102
152
114
91
116
98
90
116
137
67
118
105
112
133
120
54
87
87
127
140
90
69
139
99
146
111
136
128
108
127
95
139
149
161
102
108
127
98
80
86
99
134
74
118
208
108
133
128
115
77
129
155
120
113
128
102
107
97
91
102
150
119
109
83
200
156
54
111
87
158
59
110
45
128
128
85
106
100
102
98
102
81
99
107
135
147
59
111
124
163
150
98
127
90
143
131
103
123
158
59
111
89
100
140
125
146
118
167
95
134
90
95
168
107
141
93
108
122
89
138
117
103
68
90
142
134
131
81
76
130
116
102
82
98
54
153
90
107
131
125
200
94
130
125
95
120
105
115
98
156
105
117
101
143
105
144
54
145
141
127
106
98
163
97
87
106
113
108
106
126
147
109
102
86
140
124
81
109
148
129
143
144
113
136
131
88
78
131
103
144
150
104
92
120
142
95
198
81
123
141
125
145
110
136
76
126
158
128
82
177
130
102
82
120
49
118
93
49
111
54
127
87
123
95
93
74
131
131
98
130
129
54
87
82
113
94
103
49
140
143
143
115
76
49
138
98
115
85
137
96
96
101
119
135
150
135
200
120
98
141
79
145
132
148
91
108
76
108
156
165
49
131
85
109
122
92
102
96
117
112
83
122
67
102
109
127
116
93
139
76
163
102
95
83
156
95
137
97
74
122
129
97
133
86
141
98
98
125
138
156
158
120
108
144
162
102
143
122
103
102
126
91
151
74
74
113
129
121
111
133
125
108
54
108
108
108
114
115
115
81
73
166
82
102
123
110
54
74
101
71
78
139
113
139
142
136
117
120
153
113
110
91
162
111
76
162
83
87
207
108
88
96
83
155
157
121
99
230
234
187
98
123
114
112
108
105
135
139
133
126
173
140
80
166
142
78
102
97
164
110
108
140
179
96
116
124
72
112
125
156
146
100
102
154
112
151
90
89
102
98
81
140
158
49
122
74
179
118
106
126
78
152
90
49
49
76
94
168
87
119
139
131
130
102
188
49
134
129
87
119
125
130
91
98
105
122
103
95
95
94
195
140
110
98
110
77
127
146
96
84
117
102
110
133
128
110
124
160
145
128
145
149
145
85
103
200
139
105
105
111
147
87
134
127
163
67
102
74
138
173
156
100
164
145
125
161
119
87
54
132
218
59
87
141
107
107
111
146
167
96
54
88
54
101
163
108
54
122
85
129
109
119
94
54
129
107
81
82
109
54
61
124
132
59
188
139
95
134
120
49
103
125
119
125
193
108
82
111
126
110
54
158
118
103
137
128
97
77
81
98
182
122
124
180
135
123
101
102
78
49
113
134
74
61
54
82
121
98
82
94
85
139
110
131
68
101
80
59
120
123
61
90
117
93
131
123
128
102
128
65
95
132
95
134
94
66
151
175
135
107
91
119
129
59
124
79
184
102
98
68
143
54
77
141
54
123
148
141
96
69
146
125
107
125
137
117
68
158
94
73
150
147
141
93
102
93
104
59
85
109
113
151
97
98
161
74
128
74
85
105
98
158
49
128
122
110
150
103
125
78
131
54
90
102
185
157
114
124
142
197
114
168
133
119
138
92
127
114
68
133
102
83
65
102
110
172
54
95
54
98
98
132
111
171
111
100
102
95
131
97
94
141
129
147
113
78
143
84
98
82
82
81
80
116
130
160
108
85
128
108
98
110
83
125
173
98
115
98
94
137
111
135
145
124
118
111
85
162
110
179
72
109
148
146
81
90
112
177
94
102
91
156
177
103
97
108
146
59
85
119
112
106
99
133
139
97
54
134
139
135
113
133
97
160
62
54
143
81
117
78
68
134
130
94
116
77
111
99
157
142
139
123
150
124
172
110
123
142
104
74
128
125
114
108
106
105
95
81
129
49
70
135
89
102
105
120
74
106
78
117
101
77
120
106
116
74
78
115
135
89
103
135
95
74
176
59
141
134
105
133
161
85
99
153
94
97
86
111
127
127
108
103
144
80
90
95
165
148
154
122
130
122
100
107
125
113
135
141
117
98
54
98
117
153
125
116
98
81
146
122
54
148
100
134
98
108
114
132
165
149
105
170
113
103
107
95
100
148
117
120
121
54
127
120
78
108
123
117
145
98
49
90
49
102
129
110
98
59
108
91
54
89
216
157
133
54
109
90
82
54
80
87
96
95
143
159
135
54
75
147
114
81
83
163
156
83
90
78
177
61
68
54
115
98
83
115
88
182
127
59
154
148
149
122
146
141
87
94
122
115
86
97
104
97
103
155
108
78
116
120
68
101
54
117
109
117
82
132
127
171
115
93
84
106
165
61
78
129
148
76
54
138
81
69
153
120
133
82
102
107
102
118
144
141
110
127
200
95
125
106
111
87
123
186
78
106
146
124
159
95
146
108
125
61
102
129
105
126
146
90
140
128
81
125
144
142
77
99
129
82
54
125
125
107
54
98
79
95
102
151
143
88
93
110
102
74
95
122
76
102
93
179
172
85
155
133
65
95
82
90
161
59
163
113
135
96
110
100
101
141
107
118
136
54
90
103
49
105
107
77
59
83
140
126
123
128
120
113
116
127
162
158
115
122
144
146
143
77
134
145
151
118
83
90
137
74
140
59
99
191
191
217
102
124
79
118
124
90
154
94
76
131
101
54
127
105
144
78
123
102
95
87
66
87
116
123
80
106
131
113
76
79
148
140
148
152
94
120
78
144
151
120
96
149
95
99
112
89
120
79
131
143
102
54
116
153
108
116
102
98
114
128
108
101
166
129
124
158
91
124
87
149
139
98
106
102
130
124
149
111
139
120
108
49
168
77
126
54
118
84
88
119
108
108
127
134
99
130
108
161
83
54
140
95
148
90
135
125
102
131
113
98
127
142
144
100
113
126
153
96
118
108
54
103
124
144
89
54
112
141
129
131
84
160
80
110
61
76
112
96
105
125
148
186
90
59
105
148
95
113
152
99
90
110
74
91
128
113
127
78
122
148
108
146
143
127
106
111
76
85
108
148
54
113
157
113
67
144
153
149
145
135
128
76
108
133
107
99
81
123
133
114
102
126
102
103
81
129
154
123
96
75
113
105
148
131
177
133
59
95
54
94
95
76
147
81
93
84
98
113
90
99
108
95
113
111
79
117
49
110
137
165
108
89
120
95
121
137
98
158
99
108
147
103
135
96
140
102
103
147
102
148
87
98
138
89
108
113
160
81
110
130
108
124
122
99
191
125
95
88
125
49
61
115
105
106
102
107
107
77
115
125
113
106
54
97
103
112
97
148
135
96
97
144
186
153
95
90
152
107
76
54
69
179
121
128
133
106
102
139
107
74
54
77
90
135
102
135
95
113
128
108
91
124
136
134
107
135
108
104
97
148
104
49
126
156
132
91
164
74
93
89
113
149
93
104
108
138
108
133
114
132
112
93
68
49
89
125
149
70
129
162
156
145
102
125
141
128
142
85
102
98
61
54
118
139
143
120
118
59
140
126
154
145
98
103
125
116
68
148
125
79
135
141
109
110
131
118
112
49
106
97
102
82
89
151
95
120
110
109
145
89
81
153
54
98
124
122
151
175
54
169
143
95
87
67
76
122
83
156
138
82
117
135
124
116
83
131
120
167
98
102
90
146
148
134
102
104
77
104
77
136
54
113
127
139
188
171
135
127
138
82
95
100
113
146
165
122
180
146
156
97
157
81
87
148
139
54
108
115
102
78
111
127
161
121
122
137
133
107
101
62
59
105
89
101
148
125
133
87
95
54
108
139
116
81
110
168
117
102
180
59
134
147
107
128
122
140
123
102
167
112
134
102
151
127
125
107
142
105
102
143
82
121
76
150
116
108
141
152
116
120
113
102
137
144
114
143
72
98
145
137
98
108
125
123
148
116
78
85
113
137
119
148
98
105
125
69
124
96
114
174
116
95
111
148
95
92
116
155
130
68
73
94
126
59
78
99
141
83
160
108
108
124
49
95
93
118
131
111
134
120
102
144
89
147
97
79
93
145
102
49
113
131
106
123
133
95
108
99
82
94
97
105
70
131
92
129
119
87
103
102
125
105
89
108
191
131
145
129
132
125
128
110
125
142
83
114
133
113
114
155
67
133
104
145
95
98
115
101
80
140
126
116
111
134
93
76
101
81
141
101
87
83
115
135
167
59
140
118
108
87
97
154
153
113
54
125
133
72
142
127
144
99
109
115
139
146
141
118
92
114
139
89
78
119
83
97
96
68
133
111
160
109
131
133
120
145
90
103
136
106
125
140
76
87
102
162
111
234
168
179
62
78
126
120
96
128
106
59
176
134
82
109
148
77
122
103
120
122
96
102
114
76
103
91
108
76
90
128
135
139
134
99
158
77
90
105
156
130
119
82
54
135
104
133
173
67
148
155
147
125
125
59
124
168
132
150
49
137
112
81
130
61
54
150
118
143
132
135
69
92
101
101
150
98
134
128
125
128
99
92
76
186
140
142
76
159
159
106
139
159
190
118
107
132
142
145
145
144
100
127
131
105
172
149
90
126
120
151
95
83
139
113
73
106
115
99
100
108
131
128
84
149
138
138
77
105
103
118
131
81
106
158
122
79
122
165
125
116
99
108
140
77
101
127
115
131
105
177
135
108
122
185
144
162
99
133
102
111
90
110
190
147
100
161
113
125
102
102
121
96
126
108
142
110
144
69
170
133
107
112
126
99
118
65
77
128
132
74
139
119
61
89
115
123
85
59
102
115
103
95
135
89
94
105
90
95
141
98
103
90
117
112
113
122
98
59
90
119
49
93
109
150
135
140
129
123
91
118
148
131
149
126
172
81
103
123
133
123
143
139
102
144
102
146
115
155
100
97
59
124
150
85
152
81
124
122
82
157
96
108
108
131
153
108
103
112
108
154
103
76
108
74
54
141
117
99
77
131
143
104
117
82
98
94
49
108
74
128
108
99
59
125
103
90
198
158
165
129
98
98
123
95
103
124
150
108
158
89
95
119
93
135
75
172
108
70
68
90
107
95
99
167
150
115
141
117
106
78
119
103
116
103
147
154
98
158
111
101
113
81
122
148
177
113
110
83
91
170
108
118
115
144
101
81
113
144
45
111
103
106
112
54
149
89
76
119
125
112
82
108
120
112
167
93
145
163
88
137
128
140
109
106
110
49
94
161
108
99
105
107
83
87
129
111
54
87
122
108
95
106
140
131
76
99
122
54
103
108
78
98
115
103
152
133
127
89
103
104
89
107
180
86
92
109
120
67
96
124
107
90
152
142
104
116
178
54
156
104
91
146
102
90
136
113
108
93
101
94
131
102
105
129
95
95
130
99
115
132
120
148
83
124
80
128
158
129
74
118
74
83
102
154
93
101
167
93
108
117
100
131
106
117
100
98
98
157
128
96
113
148
125
140
140
138
54
59
87
165
49
120
113
124
148
98
83
125
116
96
102
109
115
161
108
98
113
135
54
74
125
134
107
119
131
118
113
108
123
116
133
125
87
158
95
108
74
128
77
102
121
91
163
101
103
117
112
136
133
54
104
143
179
112
134
128
89
85
78
140
105
112
106
109
148
117
160
133
122
128
62
160
181
77
145
151
93
157
135
164
96
97
111
113
122
68
134
93
186
111
94
122
123
166
79
148
98
95
106
128
108
67
81
84
158
95
116
59
135
117
131
133
116
113
125
108
119
86
118
116
74
93
108
160
115
108
81
54
115
100
112
54
100
117
132
83
128
81
98
96
131
106
127
131
106
141
144
49
140
74
119
168
98
108
116
135
131
79
125
106
82
132
67
143
166
93
89
102
148
117
129
124
54
127
120
95
110
128
108
85
145
159
154
131
98
155
103
132
101
81
134
147
124
95
112
68
54
84
102
113
54
123
89
54
146
92
143
99
74
106
190
93
99
113
131
159
126
54
93
106
139
130
87
151
126
107
113
160
128
113
110
77
95
111
146
165
83
98
119
179
114
78
90
119
78
159
68
101
135
74
148
108
108
166
81
128
147
100
80
88
103
108
87
113
173
143
102
95
107
134
121
54
130
78
54
111
103
141
125
111
142
106
95
129
106
207
140
94
167
97
82
102
74
108
92
110
168
163
163
108
104
124
165
88
96
73
54
98
151
95
90
95
114
108
106
115
150
128
59
102
120
171
100
102
104
108
124
82
199
161
114
81
135
98
113
145
110
81
102
103
126
95
98
102
76
142
95
165
144
100
78
132
87
112
89
154
109
80
93
91
98
139
125
117
200
101
147
180
67
148
54
76
151
76
93
77
88
128
108
113
120
115
75
107
115
85
151
116
150
103
152
103
125
116
103
68
104
95
83
81
108
152
82
78
123
103
107
227
54
144
132
81
106
164
68
76
122
160
124
95
97
101
133
98
125
97
108
100
126
98
95
123
110
102
124
101
128
153
158
103
122
135
165
108
149
103
161
115
118
96
127
122
82
115
98
123
73
151
95
194
151
119
92
100
153
135
98
152
123
108
97
112
126
140
103
76
159
95
90
119
128
127
82
140
159
108
128
120
89
119
90
112
54
108
108
134
102
128
77
129
142
151
105
77
106
102
154
140
102
91
171
137
131
125
95
94
94
91
179
49
110
147
82
94
131
148
72
93
140
84
85
116
101
118
80
124
113
132
103
210
151
81
134
135
98
82
127
136
98
102
77
135
196
82
106
149
78
120
180
151
120
148
90
151
146
155
104
146
85
79
95
138
144
96
133
145
103
119
172
102
110
74
97
124
128
126
98
113
176
106
140
132
152
101
82
106
128
102
105
161
132
150
147
135
129
188
98
54
104
102
131
119
99
104
111
102
95
94
117
68
90
133
74
54
95
82
116
113
74
99
123
123
67
93
97
135
127
107
144
81
185
114
94
147
102
99
105
157
119
54
193
100
161
112
131
153
79
125
100
137
157
139
85
123
129
135
97
156
103
95
139
158
103
110
106
122
76
98
88
54
128
103
105
103
130
131
125
163
90
95
90
86
77
149
108
93
87
125
119
102
95
93
87
69
54
146
105
152
87
145
112
103
98
89
151
98
220
79
93
107
109
125
177
125
82
94
177
122
103
171
74
139
78
112
87
111
121
101
102
135
131
110
123
122
87
122
103
119
103
108
93
102
95
142
97
138
93
132
159
148
130
111
135
81
127
133
115
100
91
59
54
137
91
127
168
131
98
106
151
150
65
97
120
83
81
114
74
131
103
147
98
99
131
165
163
112
97
98
128
96
127
115
102
92
120
126
140
133
99
127
166
93
95
157
116
154
89
74
76
91
114
167
113
158
109
108
106
54
82
142
102
144
138
98
141
84
114
140
102
115
102
129
113
108
177
110
102
116
132
115
89
124
77
125
106
117
148
80
98
150
148
98
174
148
125
49
94
96
87
59
200
145
96
118
105
97
116
120
124
125
109
116
105
121
106
68
143
168
105
106
118
81
98
54
125
163
98
170
114
130
95
102
131
87
80
143
76
128
162
107
96
129
118
78
110
78
107
100
91
125
94
115
102
105
134
141
54
54
200
107
141
114
133
129
68
108
71
127
158
129
108
129
94
129
125
113
119
120
120
172
81
100
87
197
102
151
119
49
88
119
54
144
94
113
111
128
93
148
84
134
94
115
131
132
142
111
99
140
143
146
113
61
152
97
109
126
109
112
114
143
99
133
112
90
145
101
177
128
146
143
110
148
125
140
142
148
116
126
82
148
81
49
101
122
166
87
139
116
105
138
90
157
145
105
82
149
128
77
150
99
91
168
181
143
144
108
143
118
76
138
129
78
122
141
105
59
131
54
133
98
120
109
79
145
156
125
83
111
91
127
177
67
144
141
104
128
120
77
78
99
164
149
95
96
81
100
114
133
118
105
69
91
108
147
126
122
100
194
81
134
108
165
108
107
114
113
105
59
102
112
104
126
127
144
138
153
99
133
105
49
154
112
97
92
105
123
54
103
110
100
106
109
113
139
95
59
54
100
90
95
112
118
104
114
120
110
95
119
105
178
132
83
148
114
108
83
109
144
116
130
111
108
111
77
54
116
126
139
114
54
154
116
95
103
126
95
96
99
85
106
80
112
146
129
132
136
93
127
94
67
131
107
137
107
127
72
74
93
103
125
134
54
108
134
112
91
80
67
137
79
90
61
133
69
89
172
151
89
106
164
135
125
116
95
77
146
118
124
130
78
142
125
155
171
120
151
115
103
116
103
182
138
112
207
156
161
168
59
76
141
128
49
131
135
115
166
143
102
90
112
96
111
149
123
85
129
105
154
138
102
126
74
67
105
153
105
100
99
138
102
105
69
78
103
119
98
74
115
144
125
120
135
106
106
133
117
103
96
91
115
78
126
103
98
74
160
155
114
128
103
95
93
95
107
81
115
126
131
102
68
103
139
139
127
168
59
90
151
172
137
136
155
128
103
99
103
142
146
115
78
140
102
90
73
91
146
125
152
175
105
136
160
133
112
93
90
76
119
164
78
126
130
117
142
119
74
154
115
151
128
128
127
95
123
113
112
107
135
146
73
121
107
97
94
96
145
121
54
150
108
132
111
113
158
98
141
79
105
119
45
154
146
107
156
161
122
135
117
145
105
137
123
59
85
100
82
93
108
124
183
78
138
123
150
139
125
127
82
90
180
77
134
97
102
112
54
99
137
119
70
153
89
89
105
108
152
148
79
71
152
114
102
147
54
106
113
142
139
109
110
89
105
191
54
148
133
61
122
186
174
135
146
128
126
79
127
134
153
126
108
97
119
127
82
135
115
128
195
90
135
116
101
97
100
152
122
78
150
163
100
118
170
105
93
128
159
126
158
85
49
106
140
138
106
87
102
119
68
119
120
87
150
102
125
87
112
146
73
115
103
110
101
106
148
49
85
98
140
78
95
149
98
104
82
133
80
81
113
91
95
143
81
95
176
76
103
109
140
107
116
97
94
200
137
108
127
119
155
98
107
93
85
148
87
110
128
138
125
155
153
106
118
116
81
149
135
73
135
95
95
77
168
125
98
54
124
54
110
122
122
114
106
190
141
128
122
105
98
125
127
90
161
151
144
94
114
124
84
160
113
158
81
125
121
120
83
142
143
91
121
135
128
97
49
78
112
135
104
123
127
115
95
168
194
132
90
103
165
133
124
145
98
131
127
95
87
112
140
128
132
108
110
98
138
111
90
158
79
127
146
131
144
141
126
98
117
106
137
83
74
95
156
191
133
146
118
81
126
171
166
169
91
156
140
112
112
127
98
91
129
149
108
91
159
93
110
102
128
149
95
115
156
131
108
144
102
80
136
90
166
96
143
118
133
120
74
103
49
161
129
104
114
54
153
153
95
107
125
139
131
103
77
139
95
102
113
111
110
49
186
95
107
156
101
83
115
115
151
59
150
122
80
151
113
170
108
106
202
144
74
77
81
87
61
148
118
76
125
131
103
115
125
102
111
61
148
61
108
158
132
74
90
118
137
119
98
108
148
153
93
102
144
116
132
194
156
93
90
163
93
128
127
193
76
106
108
140
84
54
106
100
108
77
107
105
102
126
81
98
93
100
134
92
108
59
104
145
161
141
103
98
98
91
132
131
123
108
125
155
106
83
54
144
151
131
87
141
88
96
102
108
81
81
87
115
125
90
125
87
140
123
125
113
153
74
106
74
96
97
84
82
143
127
98
122
113
165
125
94
79
103
104
104
86
148
87
116
143
85
106
77
106
152
121
131
157
120
90
161
110
112
114
92
123
117
119
148
122
129
129
160
95
87
136
129
102
116
144
119
111
135
159
101
158
97
148
90
144
143
102
99
130
137
67
49
98
129
133
110
143
106
161
97
106
54
99
101
93
96
145
134
148
164
95
54
134
141
105
116
92
127
148
95
130
132
127
54
108
147
144
112
121
158
81
110
165
128
135
59
111
105
178
108
188
131
104
102
140
133
98
101
127
69
92
67
177
132
95
108
87
102
174
134
98
74
123
128
84
129
76
112
125
107
83
126
119
103
108
119
145
68
143
133
168
65
129
90
93
106
74
82
113
161
54
109
125
98
110
139
114
115
149
87
121
149
126
149
142
107
123
82
108
82
168
102
59
172
149
94
130
177
120
77
82
161
74
125
120
157
113
49
194
137
106
162
59
112
67
143
172
108
81
113
88
125
70
114
137
91
125
122
108
135
90
74
128
113
148
155
148
95
49
114
105
210
91
199
108
150
119
92
74
173
103
97
133
119
103
149
107
82
147
117
234
102
87
125
100
123
177
135
122
94
54
117
89
95
93
82
96
101
68
98
106
97
74
90
115
128
92
102
113
129
180
113
127
107
73
113
128
137
98
119
95
154
102
148
121
77
126
93
87
102
131
131
121
98
86
74
118
137
99
165
123
108
98
141
127
87
117
90
77
151
141
123
113
84
102
73
83
96
138
101
104
108
128
103
116
98
204
128
118
98
105
111
158
103
146
103
110
112
97
80
97
42
114
99
84
113
59
91
128
124
105
94
77
98
49
138
127
74
103
108
115
141
74
54
74
123
90
89
120
152
118
74
125
130
139
82
91
96
87
61
54
78
188
115
147
130
115
141
128
93
167
190
59
91
131
157
131
127
49
102
133
104
177
129
112
98
95
97
143
124
102
142
99
118
152
103
108
127
121
105
140
133
125
96
80
117
95
140
98
100
145
97
151
110
136
135
104
138
144
54
74
183
193
82
87
103
81
124
142
118
171
107
145
103
144
137
148
54
77
105
109
95
108
134
131
99
147
68
106
116
93
127
148
145
133
148
131
96
101
129
95
93
142
54
81
152
133
179
140
65
82
134
134
115
54
115
108
54
97
96
129
98
162
93
90
77
117
100
125
133
118
95
108
129
105
134
122
130
111
79
68
93
106
84
96
95
59
67
74
129
141
145
83
103
111
207
79
121
146
49
125
82
126
148
54
143
154
123
119
82
98
155
81
153
103
79
161
105
154
98
100
114
119
122
102
128
104
123
105
115
84
101
125
112
128
116
85
115
127
132
95
104
108
106
96
67
113
146
143
132
59
59
88
98
146
160
156
162
130
77
70
113
113
106
158
91
97
93
117
184
133
164
112
104
119
90
133
120
143
111
109
113
49
49
87
102
110
123
151
139
115
156
129
118
106
134
165
83
167
129
145
125
144
130
91
103
86
133
125
140
102
90
87
102
112
108
161
132
102
137
98
125
142
76
164
122
113
117
95
148
102
114
125
132
125
93
112
123
125
92
132
94
112
102
156
125
42
123
107
87
99
165
115
102
94
137
80
110
161
91
105
154
113
129
96
140
128
139
161
147
133
151
121
106
126
76
188
83
121
73
135
160
54
133
140
108
108
54
182
111
110
67
91
115
206
142
54
82
158
92
130
135
125
102
161
112
176
102
115
142
120
146
114
99
144
139
125
125
98
108
135
91
102
96
54
103
123
113
148
133
59
174
86
84
107
110
138
120
77
109
126
95
114
167
116
177
108
119
145
168
134
54
134
168
95
108
110
115
104
114
83
85
112
81
49
93
165
59
143
113
164
125
76
76
126
144
112
160
135
103
142
127
141
143
137
88
141
128
83
145
102
142
149
135
106
125
102
127
132
143
77
68
147
154
106
131
96
54
119
103
76
110
119
109
120
157
118
135
122
127
119
129
97
94
146
54
109
111
143
119
127
96
113
140
129
147
74
105
128
102
144
112
143
162
78
147
118
145
54
102
135
109
61
115
141
131
96
139
123
83
94
106
135
91
180
81
95
129
156
149
90
94
125
59
185
96
150
90
152
74
136
124
91
89
67
127
123
161
102
147
146
89
156
103
106
150
72
108
118
105
125
90
150
92
103
87
142
127
117
149
115
100
77
122
120
148
108
141
119
54
49
170
145
144
135
139
67
96
87
148
49
147
122
140
84
125
90
133
111
149
119
76
83
106
154
149
100
117
77
134
107
103
108
114
128
69
84
108
153
95
134
188
124
113
95
108
106
112
149
102
149
125
183
123
157
93
106
111
151
117
85
106
118
102
54
128
129
159
123
75
137
132
161
76
102
78
100
131
123
146
91
96
54
149
155
127
138
118
92
136
113
59
137
128
98
45
83
81
102
126
113
168
107
95
65
82
120
120
119
95
157
109
145
113
100
95
139
102
129
107
140
132
96
126
127
115
65
123
98
103
105
91
108
127
131
89
128
105
130
147
115
105
107
103
120
49
99
82
137
171
174
73
81
108
113
108
49
95
153
106
108
115
139
150
113
85
65
134
96
91
76
105
92
124
130
155
144
145
125
102
113
139
112
177
83
103
117
98
95
184
99
118
76
192
115
128
158
49
124
137
54
108
102
116
102
110
89
139
103
148
77
54
99
110
145
85
140
118
98
117
54
92
145
129
163
134
126
154
150
87
119
104
125
107
54
150
128
113
157
92
132
86
95
139
104
141
105
120
190
96
123
78
67
74
126
112
106
125
193
102
112
149
167
137
108
110
151
96
169
116
149
110
131
177
164
148
103
103
115
103
121
145
103
133
84
135
140
103
115
128
117
102
54
132
81
102
121
125
124
83
122
122
73
119
73
69
87
107
85
114
83
125
118
54
132
108
143
78
143
81
88
94
78
116
90
151
161
92
104
122
77
82
99
164
81
92
172
93
98
119
59
137
97
76
97
126
102
95
77
91
106
82
103
91
89
126
106
142
92
127
120
120
134
150
101
163
144
125
173
130
127
183
155
146
92
123
95
184
89
108
89
104
72
102
96
102
120
118
124
128
130
121
132
139
124
105
108
110
106
155
80
145
98
108
112
115
131
87
144
108
81
112
150
131
134
49
108
104
90
81
90
69
103
69
98
59
90
125
170
96
87
110
110
74
103
161
166
67
106
122
145
143
129
200
96
168
99
77
98
96
104
82
115
78
80
101
123
54
154
127
117
95
140
98
103
179
128
101
144
81
67
95
82
155
113
74
119
154
120
146
180
158
115
95
133
146
111
113
138
93
99
177
49
74
193
101
94
76
144
85
80
138
153
145
103
114
103
88
87
101
102
82
91
106
112
54
54
157
116
132
135
59
147
61
103
106
98
76
95
102
54
85
119
98
102
91
167
135
98
88
138
102
105
99
140
54
187
90
113
144
49
54
161
91
129
102
108
68
107
194
133
54
143
86
124
107
155
113
132
108
110
49
81
134
102
158
97
133
144
110
88
99
103
140
152
49
125
54
76
91
90
76
77
83
104
158
98
95
107
59
103
109
90
116
113
113
138
110
119
127
59
98
126
97
125
103
128
177
118
106
119
67
104
130
129
131
144
106
118
135
136
95
143
100
112
110
129
99
105
133
129
59
121
98
108
121
82
87
69
88
72
122
179
127
83
98
86
93
49
112
102
123
82
127
104
169
81
63
118
77
111
169
87
102
93
121
78
116
130
115
107
131
108
130
81
119
131
125
127
154
120
100
128
78
112
105
108
95
61
67
105
100
120
108
136
77
98
133
84
133
120
137
149
54
129
93
110
114
96
131
162
73
158
133
163
102
98
118
145
163
108
61
166
116
127
102
141
112
67
106
103
98
54
137
81
117
101
126
96
134
133
160
160
98
118
122
98
161
124
142
156
81
99
128
135
106
159
95
141
104
118
158
125
178
116
80
54
123
117
108
87
97
149
108
113
108
131
108
74
116
116
98
78
93
148
106
97
154
82
95
161
108
104
129
144
149
115
129
158
103
133
93
108
158
102
110
97
128
105
77
78
134
84
127
104
97
113
199
131
96
67
98
130
143
90
122
135
133
102
149
129
119
193
93
87
101
170
87
96
125
127
148
78
76
145
108
80
109
151
136
177
92
128
73
77
148
128
49
100
191
114
113
95
99
148
78
87
128
90
98
99
138
83
132
158
78
81
95
93
122
54
54
103
128
124
157
65
104
130
122
108
155
128
107
132
132
121
118
152
98
81
95
167
148
108
131
123
100
54
148
90
125
106
104
125
147
131
167
123
119
94
120
98
147
108
105
112
81
127
108
122
79
168
131
98
81
126
77
74
125
96
130
76
125
134
116
115
122
126
113
120
57
139
131
133
107
130
138
102
83
124
152
177
145
123
126
108
110
106
132
125
90
143
77
117
102
82
125
145
186
92
112
157
74
134
93
113
77
120
83
77
138
135
83
135
140
124
76
70
107
142
134
96
67
151
150
95
128
99
179
74
98
78
130
112
148
140
74
249
118
169
95
90
91
152
49
96
54
54
75
70
96
100
103
95
141
116
151
140
98
96
141
139
133
74
138
102
148
131
132
148
98
79
78
113
106
161
76
74
81
137
113
67
49
68
126
116
116
91
130
89
127
93
139
147
81
84
135
114
89
96
143
81
99
83
106
165
77
133
185
68
106
140
152
102
102
148
98
146
108
78
87
158
127
87
83
139
86
119
93
69
65
126
72
80
161
139
107
115
116
162
118
105
146
131
87
123
95
148
92
131
98
97
109
49
150
108
133
144
73
143
87
124
156
131
82
168
95
98
68
153
161
85
175
125
122
59
146
108
117
200
155
134
74
133
144
124
103
108
138
76
147
112
160
87
123
98
95
93
143
173
95
103
59
124
87
83
127
129
113
54
131
141
61
127
102
93
101
118
74
152
106
113
125
103
127
110
123
115
147
67
92
102
119
145
119
132
98
187
80
102
120
95
154
159
83
133
94
112
139
148
137
133
145
119
130
138
126
113
83
148
102
165
81
122
99
118
128
112
100
133
133
137
93
76
115
200
102
123
149
87
108
124
145
165
87
131
142
90
106
89
172
81
102
49
119
165
161
77
79
119
74
137
120
120
109
103
112
153
131
90
67
124
79
102
98
162
154
121
83
155
113
127
106
76
102
136
105
118
85
78
87
145
122
106
111
102
128
177
95
135
110
81
135
116
110
171
106
151
81
126
124
125
93
119
144
126
153
89
113
98
152
108
161
124
125
67
135
143
160
101
122
93
170
117
102
148
104
98
160
125
158
100
102
127
129
112
62
94
104
108
84
98
142
141
54
120
102
124
169
141
108
148
102
109
123
102
101
131
135
104
84
119
101
123
119
130
94
143
85
112
69
95
144
119
96
135
80
144
98
168
108
133
159
113
80
88
128
169
105
79
109
59
144
160
81
129
54
113
123
101
122
102
82
111
99
100
128
116
103
98
152
127
118
108
148
118
133
128
130
133
127
98
135
124
108
125
103
96
116
129
103
124
116
98
98
78
126
131
108
128
54
105
100
116
154
141
111
148
206
111
105
102
167
109
139
114
54
166
118
135
91
82
147
139
95
102
69
86
91
137
153
74
97
169
116
76
122
118
167
90
102
96
128
155
127
81
106
82
151
131
90
114
96
107
101
104
100
98
103
141
94
96
104
119
49
89
85
127
108
107
118
107
148
122
144
105
127
95
106
127
120
122
95
103
133
112
122
59
131
76
144
148
127
161
104
146
100
124
141
158
131
98
103
139
143
129
130
81
140
133
102
113
97
90
148
101
135
152
148
119
96
200
54
150
93
87
150
128
133
67
105
125
103
98
107
107
139
127
96
128
131
141
102
97
115
198
105
123
98
87
131
95
125
93
108
194
122
120
125
160
107
111
96
87
112
134
168
148
150
139
140
145
125
112
135
87
144
140
169
105
139
147
74
76
118
141
146
103
147
136
159
95
138
145
200
97
143
129
135
227
109
96
98
115
152
103
81
116
98
126
49
113
81
85
100
152
98
100
131
140
116
144
118
117
147
124
176
90
59
77
103
125
76
101
105
165
49
93
95
106
98
134
98
169
129
69
148
119
133
108
89
156
135
156
126
148
111
90
112
95
90
108
105
97
125
105
54
95
147
127
93
104
140
186
115
109
146
90
91
146
87
140
119
143
112
102
83
147
107
54
86
79
143
126
90
162
78
103
115
95
99
143
87
111
116
162
143
78
99
76
117
113
103
145
145
113
107
108
104
131
117
59
125
83
88
129
113
129
93
114
144
172
151
132
115
148
95
177
135
177
135
78
86
127
143
168
139
158
168
119
104
61
120
110
93
54
113
91
99
124
135
83
113
103
142
49
92
83
163
131
93
98
106
113
163
93
116
175
147
135
100
123
82
106
108
108
191
127
125
119
129
108
81
118
147
109
138
82
110
106
112
145
122
150
129
150
97
88
76
49
156
186
175
139
90
102
131
139
154
94
145
125
103
135
160
103
102
102
99
113
108
54
133
124
76
168
116
102
189
120
150
129
85
142
148
95
110
119
141
86
99
120
96
94
146
102
167
54
167
87
113
127
127
87
79
81
91
110
131
65
84
131
90
114
101
129
102
120
101
125
133
106
95
206
96
114
157
105
93
130
135
125
119
111
91
125
115
116
88
98
96
132
135
107
49
123
155
98
125
96
87
95
118
102
84
161
83
98
124
154
49
62
133
105
117
154
108
98
83
132
82
137
105
122
133
127
108
121
78
54
100
96
191
141
143
135
129
101
49
102
90
80
101
107
121
54
122
133
130
100
157
168
102
116
152
174
118
144
54
145
54
76
139
132
108
147
106
136
91
108
121
96
143
133
111
116
78
103
82
106
149
127
191
59
105
143
84
87
95
107
131
102
100
144
75
162
95
95
165
113
133
102
112
102
133
54
122
142
125
143
131
102
138
102
125
119
82
140
128
156
130
147
138
117
116
111
122
130
120
120
78
162
128
159
144
145
119
102
114
54
196
108
98
90
154
114
142
107
110
54
149
135
81
94
124
113
126
54
95
120
109
138
98
73
117
113
107
100
194
92
131
108
87
96
108
128
120
152
59
172
95
148
103
97
82
125
110
143
129
200
103
103
113
159
115
156
150
126
119
88
87
105
74
123
122
129
97
200
59
143
106
90
90
107
95
146
111
131
108
54
135
78
108
98
103
147
74
78
96
161
125
126
109
106
119
94
82
99
100
173
82
54
127
122
113
72
81
102
102
90
134
145
54
135
103
164
54
132
133
108
142
122
192
133
108
128
134
140
120
110
97
138
143
132
101
165
113
134
92
151
125
97
76
153
101
139
83
132
147
129
120
109
148
92
112
139
105
163
106
126
95
123
118
123
103
128
144
177
112
148
130
127
126
124
54
106
76
74
178
146
91
93
128
159
93
103
54
148
54
153
113
131
81
103
103
161
98
118
148
54
135
102
103
112
108
138
76
109
91
77
150
100
74
95
95
104
128
101
87
107
93
146
61
144
111
108
190
111
129
132
107
135
45
136
78
122
90
161
105
87
125
179
98
133
61
78
96
112
104
117
82
155
130
139
151
54
140
161
114
114
96
108
153
98
125
105
175
168
83
95
177
118
127
136
111
151
108
153
124
112
84
140
127
108
102
118
107
112
118
124
115
93
154
143
126
105
109
54
159
95
161
130
130
127
131
129
86
119
125
146
76
54
87
112
104
128
54
124
99
88
198
87
116
116
126
130
113
54
131
125
90
98
125
100
145
126
100
102
82
77
140
127
103
115
131
98
109
90
80
151
120
101
103
101
93
83
128
123
105
152
92
95
93
103
77
117
152
139
122
125
148
106
102
105
158
148
90
76
83
130
98
108
112
107
74
107
126
157
125
161
129
102
95
142
129
87
74
95
118
87
91
54
133
134
119
133
108
128
95
156
113
158
108
120
114
133
131
105
102
90
83
100
61
101
98
177
95
158
102
128
131
135
147
143
49
69
105
108
127
131
98
112
108
98
160
93
95
104
97
85
105
95
105
95
128
151
99
100
144
77
124
125
86
136
158
161
100
122
131
125
81
76
136
105
113
114
103
67
81
54
122
87
131
129
61
67
95
151
136
139
87
98
105
131
95
144
120
81
90
110
128
117
100
96
123
112
163
98
97
108
108
87
105
88
116
127
172
108
98
83
122
118
106
78
116
118
113
126
87
140
108
150
108
113
89
99
97
68
88
92
90
175
132
98
151
148
125
160
144
144
118
160
87
115
125
108
119
118
135
78
81
106
94
167
157
85
126
177
111
104
120
95
140
95
141
200
97
49
108
90
79
124
101
147
141
116
113
81
96
120
114
119
101
84
148
54
74
165
102
118
93
109
107
76
132
49
108
98
108
102
177
124
150
146
156
72
128
95
132
93
127
81
95
76
103
145
122
113
116
122
124
148
62
124
112
98
105
93
148
87
156
128
82
77
96
91
94
159
98
133
61
146
98
100
125
95
127
116
59
93
148
155
93
131
148
144
82
220
109
140
100
151
121
139
83
138
135
122
133
135
77
95
119
158
90
85
142
54
129
137
102
108
106
84
98
101
79
105
142
129
71
77
153
102
98
128
157
113
92
95
105
80
125
79
97
112
133
129
113
102
83
128
150
105
181
138
144
74
91
96
127
107
96
140
105
114
95
200
131
106
133
87
108
84
142
113
177
102
159
120
76
93
160
74
163
131
120
172
87
119
121
111
177
65
163
131
140
109
100
125
91
151
97
113
124
143
119
103
134
165
118
144
134
135
88
128
108
104
110
69
172
130
116
81
80
91
154
120
77
102
108
86
45
139
118
148
121
83
90
89
81
104
83
125
69
49
115
82
119
90
144
80
134
54
119
96
125
161
128
167
128
84
100
61
142
114
109
103
104
95
106
59
74
177
139
144
158
123
92
131
128
87
111
125
54
80
110
145
130
134
69
85
132
54
103
148
139
82
158
98
135
106
54
49
105
67
109
54
111
130
180
90
108
148
135
61
164
133
108
81
76
123
98
108
102
129
159
100
92
90
138
131
165
81
100
100
73
54
125
112
158
111
144
128
158
129
137
128
144
119
168
104
137
101
158
76
127
126
103
108
110
82
117
145
108
178
102
90
194
99
105
150
133
92
102
102
129
108
113
121
119
100
93
91
106
95
102
159
81
131
84
133
137
150
103
136
107
104
126
107
82
98
148
54
82
108
113
97
138
83
164
119
90
172
152
109
67
137
129
119
108
113
113
65
153
142
129
149
135
121
74
112
106
72
99
98
177
189
127
108
106
89
108
94
132
161
169
89
127
139
140
110
69
139
124
54
153
82
95
128
82
122
150
87
102
132
101
94
101
139
143
94
82
153
111
131
158
174
152
102
87
155
129
88
102
146
96
125
108
81
138
129
118
149
124
128
87
142
106
110
61
83
148
95
59
131
94
118
122
165
125
144
125
134
127
130
147
98
59
108
176
134
90
128
117
105
108
97
113
168
54
99
54
124
125
112
59
141
98
167
143
98
74
117
135
108
131
129
101
186
161
114
116
115
142
153
135
97
102
148
95
133
94
106
95
138
110
105
105
107
116
152
187
135
147
98
96
148
49
103
147
98
108
139
61
87
154
127
95
110
95
137
163
86
142
103
122
112
88
88
87
77
93
102
93
54
143
54
129
111
150
98
106
122
107
124
76
104
140
95
54
103
103
124
133
125
122
123
130
158
111
102
122
125
77
124
109
122
91
128
129
106
130
67
115
90
135
138
95
95
82
108
113
144
128
69
136
135
83
140
54
102
102
95
81
95
97
77
119
164
134
65
163
111
104
88
117
93
91
200
144
54
104
74
105
86
138
99
102
67
96
113
87
98
101
146
118
132
90
129
114
78
101
109
148
77
108
105
173
151
103
81
105
135
124
83
140
131
131
103
106
166
103
111
104
119
132
118
98
106
147
145
109
144
90
133
67
101
153
108
147
101
147
54
54
104
144
105
144
113
131
123
100
117
137
137
150
81
115
93
148
131
135
113
91
78
142
122
135
54
127
115
159
105
77
107
87
113
144
152
96
101
139
103
140
118
97
74
111
112
91
101
81
118
97
95
67
111
143
127
111
158
103
129
95
126
54
59
110
151
140
103
118
158
59
150
107
132
85
118
90
54
141
136
102
137
93
169
102
177
143
49
106
91
127
115
67
115
125
135
143
93
76
81
149
102
165
90
168
117
148
96
108
90
151
132
135
103
104
177
165
115
139
57
83
123
77
139
161
82
87
95
172
113
87
105
111
76
73
94
87
116
140
115
143
77
98
133
168
135
101
194
101
149
120
98
132
112
89
99
102
127
147
118
95
108
90
87
158
148
156
148
106
81
147
118
102
165
112
90
54
92
131
102
140
188
180
120
95
116
120
102
102
102
108
132
108
108
54
116
133
137
73
77
83
133
81
128
138
104
105
148
144
133
138
123
81
138
95
165
112
135
103
159
160
182
127
115
142
124
96
121
106
113
111
95
133
93
109
169
146
141
124
120
107
110
126
121
157
102
133
61
102
116
125
76
81
113
54
115
94
108
80
120
86
122
124
116
142
114
132
83
113
145
106
54
121
127
108
134
81
94
98
85
115
96
136
102
81
87
143
120
139
103
115
143
88
126
74
115
148
122
49
143
98
123
90
59
90
142
102
54
147
144
127
95
76
139
54
83
107
128
108
108
98
142
79
102
102
74
141
148
74
99
127
143
110
108
146
59
95
177
115
126
148
151
127
120
89
108
155
94
125
82
49
100
81
121
108
128
148
127
122
146
161
134
91
102
74
99
61
124
120
121
141
191
112
100
118
124
95
119
95
125
150
133
73
121
122
135
108
54
139
149
108
105
150
126
98
83
124
98
108
114
139
95
95
113
91
96
135
104
82
148
121
102
107
148
148
126
95
102
128
49
170
133
129
82
131
148
92
98
117
130
119
108
131
143
92
150
116
95
103
108
110
106
170
113
141
130
105
77
103
164
119
154
54
96
121
158
110
164
98
54
140
98
113
97
125
126
82
83
98
103
59
114
54
120
98
103
167
83
147
123
108
98
59
155
105
148
77
129
54
80
132
161
54
85
117
82
89
173
153
97
120
124
81
105
59
118
113
130
164
119
102
131
156
133
103
105
102
125
146
119
108
102
73
144
81
127
167
105
120
140
95
181
118
95
76
123
102
193
124
133
160
132
98
135
134
98
132
145
113
101
142
126
102
96
126
130
149
81
107
117
82
54
132
81
158
142
94
105
100
161
129
140
148
135
105
206
108
191
109
130
91
93
108
119
87
83
134
124
54
153
67
102
138
105
125
85
108
133
93
99
77
179
123
137
123
100
165
158
125
107
160
95
125
97
144
108
148
102
67
49
137
97
155
95
99
105
126
129
149
96
109
113
94
131
117
85
102
123
126
104
95
147
150
115
150
108
133
49
118
126
103
108
120
93
92
88
107
59
103
137
93
118
105
91
118
96
85
119
105
83
92
105
80
79
200
127
98
149
157
74
147
133
98
77
77
87
148
76
120
87
125
126
132
97
115
49
150
128
117
93
83
147
149
132
151
129
122
115
83
155
107
129
112
153
103
137
126
133
105
127
96
139
94
107
118
87
108
137
125
88
115
67
78
93
143
54
128
113
148
158
96
110
123
91
102
110
162
174
108
87
119
97
137
126
185
98
99
190
105
91
136
105
84
125
161
128
131
150
135
103
155
135
108
134
120
80
49
108
61
74
105
109
95
107
109
160
105
85
124
126
83
126
101
81
125
133
67
99
152
91
107
121
80
124
150
74
122
160
128
96
112
110
85
138
120
99
104
118
165
163
113
127
105
100
98
81
49
94
77
90
98
134
146
82
83
111
171
105
92
107
116
123
135
81
97
124
143
129
96
90
98
156
97
144
95
125
103
147
131
153
119
129
87
77
142
107
167
108
122
102
125
80
54
95
172
102
81
185
128
134
143
126
81
91
119
130
82
54
135
90
78
77
106
49
95
90
100
115
114
141
112
77
141
145
155
110
83
87
155
225
93
94
99
139
97
133
116
54
154
84
59
103
101
189
95
119
164
98
179
84
78
71
123
98
76
86
128
81
54
143
161
90
143
144
91
54
113
95
102
95
113
116
131
114
118
108
138
117
134
108
86
93
95
103
108
125
78
67
61
112
74
114
95
132
113
115
91
143
145
130
82
153
90
111
172
65
123
162
125
81
130
103
103
132
54
118
152
99
61
101
59
98
86
111
140
89
104
103
54
76
99
134
100
139
103
157
158
106
139
144
122
113
169
68
129
171
94
103
103
108
98
129
145
95
122
160
113
111
49
107
98
132
129
90
103
110
96
148
128
77
87
141
123
139
107
157
87
74
111
83
96
158
161
120
145
143
164
98
101
93
160
97
111
133
105
127
158
153
169
91
174
81
95
61
123
93
143
112
138
154
158
113
97
124
117
103
152
156
83
146
103
127
61
139
80
129
105
77
82
138
153
72
105
128
91
135
143
98
80
172
131
133
106
129
79
137
153
68
123
98
131
108
94
145
114
95
106
108
87
175
108
127
93
67
54
128
175
183
143
76
90
122
150
98
142
107
112
123
122
103
102
74
87
96
117
154
126
162
113
139
95
159
172
125
94
120
81
114
118
135
111
119
154
111
170
102
67
103
96
127
104
116
59
79
81
149
132
78
106
49
114
145
95
168
135
100
110
122
105
148
54
101
82
125
94
121
69
118
126
106
78
118
112
183
67
125
109
114
101
104
148
110
54
132
105
117
133
78
102
118
180
142
100
100
146
144
100
78
90
71
92
77
127
149
87
54
175
116
95
136
119
135
128
105
106
81
109
115
166
139
121
127
98
144
67
113
88
133
140
102
80
131
107
82
128
94
118
87
98
108
142
130
86
153
102
135
83
108
146
106
121
109
137
167
115
108
54
82
158
109
109
119
138
77
102
140
85
97
105
107
101
99
82
108
104
102
95
67
95
175
128
104
49
103
59
94
146
133
160
90
49
102
133
124
95
191
75
101
165
92
106
110
91
77
128
177
128
154
129
190
108
96
49
131
97
73
93
107
121
109
96
126
54
154
54
139
145
84
114
97
125
148
134
54
77
106
83
176
122
96
123
108
93
76
138
172
139
163
149
88
54
128
111
76
120
54
177
96
125
93
116
139
123
141
93
132
93
95
102
148
114
150
163
122
145
115
134
82
113
132
102
119
54
144
102
120
103
122
45
113
67
54
156
110
152
117
159
116
157
120
122
59
123
68
143
69
131
110
130
109
81
61
157
112
144
98
144
123
127
54
103
114
78
118
98
135
89
87
98
95
103
129
125
54
90
86
141
152
121
190
100
100
61
76
72
122
162
93
69
124
114
82
81
101
123
70
117
86
170
114
74
144
98
132
74
143
94
108
98
127
105
154
100
96
97
97
104
103
181
167
74
81
104
96
143
129
131
113
133
111
107
67
110
144
95
125
108
145
137
54
135
136
74
140
90
131
90
148
132
107
131
101
148
148
126
83
129
98
77
81
87
144
95
95
135
139
67
144
106
100
108
103
54
122
54
170
128
107
87
81
105
159
128
120
93
74
141
144
108
118
119
128
93
59
103
128
108
113
115
97
87
135
74
155
112
113
102
54
83
104
84
108
140
128
100
96
93
177
129
138
102
77
95
74
168
110
103
123
83
74
142
82
107
87
105
143
49
102
107
145
103
148
97
131
96
126
142
108
101
123
122
108
131
108
95
81
137
159
133
104
49
102
68
136
103
127
88
106
100
95
113
49
92
145
146
130
125
131
135
86
106
117
186
126
114
105
131
102
129
102
97
138
124
96
202
129
113
111
148
81
98
195
87
126
110
102
82
111
101
132
83
160
146
134
134
107
113
125
103
59
120
82
140
104
115
90
96
129
108
83
49
125
128
110
108
126
97
79
124
54
97
82
102
114
115
78
109
160
171
102
127
90
171
97
146
118
99
49
83
130
160
126
172
82
127
158
122
129
101
105
142
81
122
111
114
156
83
54
125
143
131
169
140
143
146
162
94
106
122
94
103
86
159
103
81
145
61
120
106
90
54
129
107
83
98
127
114
102
128
102
125
135
95
153
108
120
95
128
128
78
123
97
110
54
74
122
150
93
76
76
97
59
124
149
106
112
59
123
86
129
102
95
85
118
76
69
107
137
78
133
86
128
156
145
111
82
95
98
109
133
141
134
130
114
54
110
69
153
171
81
169
135
154
167
98
136
81
117
148
102
157
82
107
131
129
105
112
83
87
82
123
102
145
94
105
94
91
119
98
95
103
191
105
98
107
152
136
98
95
128
111
143
90
95
125
105
101
108
102
111
122
104
136
135
158
87
131
95
113
82
128
86
116
83
194
74
115
90
148
110
142
108
123
94
138
193
144
197
148
94
77
83
152
132
98
87
112
95
92
178
76
95
98
107
131
107
159
113
137
121
93
115
159
112
99
132
139
141
129
119
112
113
90
106
87
101
133
80
118
165
125
134
133
126
92
158
129
133
127
165
104
159
177
83
153
121
105
179
114
138
139
128
113
125
98
128
135
61
124
158
95
136
95
159
108
129
102
143
126
99
148
98
101
129
122
98
106
131
145
142
74
185
160
122
108
132
138
126
95
118
102
166
123
86
106
125
109
121
167
69
98
152
137
96
77
141
113
194
115
148
163
133
111
135
87
98
118
113
95
54
156
106
103
106
95
123
123
163
120
125
136
138
108
101
113
76
103
102
132
130
59
77
83
109
108
74
133
102
106
134
95
143
103
103
97
110
141
190
132
131
170
67
109
69
59
100
102
105
122
148
81
112
123
96
158
128
116
177
116
122
143
146
128
102
153
110
108
121
113
92
135
115
105
102
142
98
108
105
111
152
113
82
119
115
139
112
128
91
120
96
147
144
108
129
108
145
109
103
70
109
105
127
117
122
135
163
131
154
138
94
144
164
177
83
54
99
88
123
121
136
129
131
70
150
141
69
67
102
120
59
114
122
153
108
85
68
68
125
100
108
105
101
82
113
122
143
108
93
127
90
117
96
81
49
95
95
84
135
119
122
129
138
177
99
93
154
77
102
123
124
119
95
188
111
49
133
103
101
160
156
131
118
92
82
118
98
144
102
125
88
104
77
98
150
118
113
126
77
133
95
103
141
110
158
69
139
134
74
176
93
118
113
95
125
116
98
129
108
82
74
88
106
93
117
122
54
54
95
113
105
102
82
131
133
76
89
125
132
67
159
144
77
98
76
104
119
61
49
97
108
132
54
130
174
120
129
124
93
102
95
123
101
160
113
67
114
94
95
145
93
158
146
129
102
118
82
92
85
97
136
177
143
90
122
103
98
115
106
118
113
75
153
134
98
98
140
95
154
131
81
194
107
143
85
113
161
49
124
143
141
131
155
119
87
148
96
148
133
89
165
99
115
150
90
124
112
113
108
134
106
106
81
54
108
115
98
91
103
112
145
95
81
70
109
129
67
109
113
118
74
184
99
109
114
121
161
129
105
99
125
115
106
83
83
115
137
54
148
123
151
141
116
90
119
131
107
95
113
129
125
103
113
129
118
136
102
155
158
98
103
137
102
128
81
59
101
99
135
142
103
141
177
87
95
162
133
131
148
109
139
155
102
95
132
128
134
125
113
179
131
163
136
155
67
158
89
151
109
95
173
82
74
82
145
165
112
81
98
102
54
138
103
102
83
111
87
148
74
54
162
97
97
87
73
120
112
96
95
54
67
154
49
111
112
93
137
98
112
67
91
148
77
94
131
113
108
143
142
120
95
89
136
145
143
125
131
99
49
179
91
135
108
126
81
101
149
130
54
116
107
103
131
157
85
105
165
141
81
59
108
54
122
134
118
81
102
94
114
116
111
124
82
126
76
81
190
118
127
142
106
127
182
81
127
149
116
151
159
102
81
87
87
80
95
103
54
115
127
133
109
113
67
139
108
94
130
54
86
54
84
105
117
78
141
139
76
115
177
63
113
67
100
108
86
128
67
178
146
156
78
139
131
148
135
127
112
178
109
125
61
117
127
119
92
212
129
106
102
139
143
54
104
76
177
113
123
125
154
86
106
113
108
111
99
134
91
49
123
127
131
106
155
90
86
119
126
90
158
95
54
127
131
100
147
87
133
101
102
99
99
135
145
112
117
96
83
82
127
140
86
62
103
61
77
131
87
115
152
104
59
49
95
84
140
130
145
156
90
80
112
82
154
59
49
82
112
129
95
111
85
93
110
141
102
95
139
124
123
159
102
133
124
54
67
129
166
98
91
122
101
160
147
74
125
115
108
95
113
134
130
85
100
85
95
158
84
133
95
97
126
115
54
99
99
156
99
97
102
146
100
102
84
69
61
113
59
59
54
87
88
118
101
113
136
98
144
161
90
95
167
98
138
160
133
116
129
128
80
184
122
83
114
95
126
120
77
137
155
95
154
143
114
128
154
154
115
131
69
132
102
81
102
104
78
98
145
102
95
49
103
135
86
49
103
74
138
132
54
122
126
85
54
102
94
76
110
165
127
88
135
141
133
138
74
93
163
93
106
106
107
108
125
116
76
165
69
137
102
140
111
83
106
134
103
105
96
97
101
161
115
102
105
74
158
193
108
99
146
96
100
123
77
122
144
117
114
152
102
117
105
109
92
127
74
133
125
119
112
81
147
140
143
180
127
103
95
98
123
107
74
106
78
139
111
108
156
108
141
67
96
74
84
104
111
103
133
131
49
124
54
123
91
54
127
150
61
127
77
158
153
110
107
116
150
113
123
54
123
80
135
105
124
81
115
111
131
98
95
79
133
135
137
140
76
180
119
115
148
134
145
86
112
109
97
107
130
97
108
85
153
131
110
112
106
157
63
104
144
128
109
81
93
54
116
134
146
129
97
148
131
77
109
112
95
175
106
90
108
141
133
86
96
144
80
98
97
72
133
186
134
95
133
181
84
109
107
81
96
111
115
111
124
207
148
95
128
163
102
117
54
149
154
97
156
109
168
109
90
103
113
116
148
107
139
153
108
154
81
117
98
158
97
127
145
107
150
128
125
128
138
99
107
131
49
80
105
112
141
112
128
77
119
54
108
95
69
130
102
122
81
54
126
88
93
108
92
116
71
157
102
118
156
98
157
139
96
144
178
107
125
144
149
54
74
81
54
134
134
133
104
109
54
112
145
76
102
92
127
158
49
105
100
108
83
102
69
145
98
88
131
90
85
102
81
89
89
88
108
95
129
168
102
112
128
99
95
97
102
54
108
149
101
67
132
109
109
129
151
110
116
96
108
168
92
91
90
145
118
97
105
133
95
128
69
126
145
87
133
122
83
171
91
54
123
54
158
59
125
76
137
187
158
147
139
149
123
95
98
83
136
59
87
120
85
104
49
111
101
78
125
78
140
89
77
129
112
163
119
102
74
98
95
121
95
132
118
116
107
136
161
95
97
102
90
65
101
101
107
61
95
96
146
157
113
108
133
78
163
95
139
102
140
129
140
154
133
124
102
99
105
117
107
106
120
90
123
135
74
92
157
113
49
123
148
133
91
99
173
144
77
110
127
103
95
140
54
108
87
157
118
96
54
94
74
119
126
115
135
81
132
144
95
74
153
102
96
98
117
95
117
118
155
107
123
85
126
98
126
91
133
139
82
117
159
110
113
96
131
77
95
108
114
128
124
165
95
174
133
67
107
128
85
145
105
127
94
121
165
110
114
148
106
134
184
151
94
99
148
133
127
123
73
101
79
74
124
102
93
131
106
106
111
100
92
100
98
160
127
138
102
140
115
123
140
110
140
151
120
172
105
122
135
114
89
107
140
98
113
161
109
74
122
87
143
84
91
125
131
108
115
155
147
133
173
102
101
146
87
139
87
59
141
158
107
96
106
149
112
102
101
125
148
92
128
170
100
137
137
125
113
103
98
140
73
103
67
103
153
192
125
85
102
83
79
120
152
207
129
123
138
104
124
99
135
119
134
128
150
96
98
93
75
100
49
157
128
125
82
97
128
107
138
134
177
98
108
116
54
106
92
152
91
130
106
103
124
116
126
123
70
80
107
106
119
99
159
102
144
139
99
104
119
113
117
84
135
118
112
61
97
158
200
103
119
135
96
122
128
73
105
54
151
147
122
149
108
84
59
133
120
152
93
86
107
139
131
141
102
120
101
135
101
76
112
139
126
115
127
81
120
112
104
115
83
96
135
162
154
104
168
116
128
158
87
121
90
87
176
161
123
148
107
144
103
136
142
103
102
122
139
135
160
123
105
129
76
119
114
61
208
119
90
127
77
102
72
161
115
172
95
85
123
155
106
141
100
108
104
142
135
166
154
128
90
123
134
111
92
162
100
143
93
74
144
82
140
179
194
74
103
76
128
88
163
114
59
147
115
87
98
125
96
54
113
186
108
74
98
130
112
106
160
84
54
101
110
102
133
132
109
127
113
112
92
133
115
133
112
82
140
100
135
59
120
54
108
98
126
94
83
54
139
91
102
97
125
107
149
59
128
94
102
120
128
79
150
127
87
139
116
95
98
132
133
144
138
103
107
122
111
144
131
116
129
140
54
177
169
112
148
157
68
69
129
138
104
158
161
133
160
95
108
98
102
182
143
173
99
139
99
127
79
130
89
112
133
89
111
54
112
123
162
93
157
96
180
106
108
123
106
116
135
138
130
95
89
161
135
102
98
169
132
90
135
138
127
154
96
106
85
147
102
121
200
108
119
149
85
92
116
128
115
98
90
106
78
129
95
127
103
128
134
125
96
82
106
87
147
139
162
102
97
109
132
105
105
131
103
81
119
83
107
124
69
139
172
79
119
67
77
95
49
113
140
125
106
138
87
139
98
75
122
59
179
125
106
108
91
95
108
139
85
134
84
117
128
102
98
106
99
107
164
100
98
140
103
61
170
138
121
185
73
104
108
49
137
106
93
95
54
139
54
82
129
129
110
128
100
165
102
147
99
110
116
164
175
104
95
146
91
82
54
144
129
132
129
76
149
136
145
95
99
123
117
102
123
113
84
118
97
49
115
95
145
98
104
129
109
143
78
148
92
115
116
102
140
138
102
124
119
151
119
107
176
138
112
124
76
143
74
196
123
92
142
157
108
176
112
165
148
125
95
133
144
125
104
95
107
144
114
134
93
136
109
97
90
103
54
125
108
105
100
119
54
112
90
172
49
94
119
111
158
137
104
59
133
119
155
144
138
125
125
102
118
108
147
106
154
105
90
82
132
133
108
108
101
140
123
81
117
124
102
135
120
106
93
132
108
95
131
97
102
159
87
158
97
116
113
112
97
132
125
113
99
141
153
54
144
90
143
42
103
138
85
166
93
125
130
120
124
126
113
101
108
104
75
156
54
88
117
74
81
112
96
140
128
103
103
129
169
133
147
84
140
137
122
125
145
81
170
98
146
87
150
54
59
118
54
95
153
92
133
95
112
120
109
90
108
139
107
135
134
147
118
86
108
102
181
102
132
129
173
110
115
87
106
111
76
88
103
70
101
132
118
176
114
105
124
85
87
116
116
155
125
125
145
135
54
162
155
82
99
122
98
98
105
76
54
54
163
138
102
133
108
162
74
108
103
113
87
185
145
79
117
149
127
129
103
165
170
141
167
132
91
147
135
159
113
108
148
135
67
112
158
160
184
133
76
180
133
87
113
131
94
77
54
95
108
124
106
103
135
128
98
116
100
148
129
127
68
105
123
163
135
133
97
82
129
170
116
106
147
158
54
122
106
140
185
129
115
113
94
176
177
118
68
177
98
180
135
105
103
139
84
49
156
59
65
122
110
145
143
102
123
148
110
76
127
95
128
81
110
73
74
85
97
54
123
146
124
150
146
147
81
124
80
90
101
110
111
77
81
95
98
116
143
127
177
74
141
96
108
81
135
165
122
67
54
133
145
143
131
95
141
110
99
95
108
135
125
101
108
143
54
68
123
100
87
104
102
125
170
142
104
158
147
117
143
49
79
98
123
166
81
113
112
125
93
157
71
121
134
95
156
142
79
54
181
116
105
90
127
98
124
54
151
105
141
94
101
129
151
132
115
86
103
123
105
77
125
131
128
115
126
149
83
161
122
152
82
111
111
125
121
139
101
90
98
137
101
109
108
102
87
49
111
106
98
119
135
123
131
117
110
108
165
103
95
49
100
113
174
125
90
105
98
86
155
73
100
105
112
145
125
131
88
131
90
100
127
155
98
106
102
103
59
133
101
132
151
149
177
100
99
142
172
61
132
94
180
128
135
146
54
110
151
112
122
108
95
179
148
110
124
146
136
108
81
103
94
117
76
91
97
92
131
137
125
49
65
69
126
114
134
130
107
89
110
143
148
125
73
148
83
190
107
105
103
108
115
128
135
115
151
125
106
103
131
95
54
76
150
102
157
121
93
149
54
89
108
164
107
98
131
131
102
54
81
125
112
137
153
82
128
106
131
80
141
145
95
136
149
177
54
159
87
157
103
106
147
107
115
113
182
122
78
54
131
77
93
99
134
140
128
152
124
133
170
143
115
79
120
111
125
108
95
114
81
93
49
93
125
98
106
111
154
111
103
113
121
86
102
49
85
147
87
90
144
110
143
108
78
144
102
102
115
116
87
177
125
100
106
102
204
177
136
169
133
115
122
117
73
147
116
108
103
91
77
81
186
93
177
112
90
159
103
178
141
82
77
143
80
108
92
93
97
118
83
120
91
132
176
127
169
89
141
171
139
138
77
107
140
102
131
127
103
90
144
91
131
143
74
92
117
122
80
131
74
92
93
82
129
54
95
97
147
143
161
96
61
85
194
81
157
120
130
103
118
143
135
126
135
125
153
95
130
168
108
107
77
54
100
101
88
49
158
114
88
138
125
161
105
93
180
131
136
80
101
135
99
137
144
148
142
84
77
133
127
78
120
135
123
134
131
149
77
128
49
69
110
159
100
96
146
54
54
98
105
140
131
177
123
136
98
110
120
143
91
107
102
162
82
108
142
107
89
89
103
128
100
77
140
82
77
81
153
107
116
96
121
77
137
102
45
132
161
140
145
139
119
102
177
102
73
132
95
105
102
138
87
76
126
148
127
59
126
98
135
144
78
85
100
146
79
133
138
116
118
207
95
147
148
81
141
129
54
102
59
147
54
110
89
61
105
143
102
134
54
78
200
82
142
135
118
120
67
99
131
130
91
102
147
90
85
123
125
108
83
54
79
119
129
111
145
162
115
144
116
127
74
143
130
135
174
139
98
154
81
128
111
125
67
123
107
166
142
143
103
96
107
84
128
112
117
137
103
113
108
152
160
104
87
138
112
81
103
97
121
130
177
131
143
123
49
102
138
92
54
161
142
105
144
98
112
128
145
109
166
128
54
111
98
102
54
168
87
75
109
74
92
74
133
160
143
152
78
143
73
128
155
97
81
154
95
153
108
111
87
156
49
125
107
161
160
106
125
91
54
136
106
122
93
117
125
162
102
143
118
152
107
87
128
54
78
143
129
93
156
142
82
87
124
54
83
102
115
85
154
107
147
133
102
116
168
98
95
161
103
54
69
124
190
54
103
81
119
139
107
85
95
78
123
140
170
110
142
120
118
113
139
98
114
87
158
104
151
77
139
76
102
127
99
128
119
122
127
98
120
87
69
104
96
81
138
92
87
173
176
102
86
107
108
143
139
124
131
59
115
118
120
109
150
112
102
89
102
78
137
86
169
96
79
163
54
123
109
85
80
129
115
138
76
105
105
121
158
118
106
121
49
143
69
154
99
114
99
149
130
133
135
158
116
90
94
95
99
69
93
145
76
148
87
91
127
104
108
91
108
118
98
125
105
74
150
106
124
101
167
87
95
183
140
148
110
153
125
195
77
122
84
128
95
102
105
102
98
135
108
130
118
120
145
131
135
95
80
77
149
111
107
116
141
118
113
59
117
54
156
129
182
130
118
162
109
118
148
88
108
49
123
129
117
81
115
76
156
138
54
182
163
79
112
102
99
95
155
144
95
94
157
123
122
98
125
96
132
115
100
148
87
119
90
126
110
95
69
82
139
148
85
96
81
119
134
87
67
81
91
109
124
90
74
170
112
105
108
193
88
83
148
120
115
87
135
102
129
131
85
133
106
106
120
121
69
133
91
131
162
95
142
88
79
148
102
54
54
104
125
103
116
134
128
98
103
105
169
108
112
95
83
175
138
90
59
96
90
76
141
140
111
94
121
109
54
97
151
107
108
122
143
104
148
109
122
77
93
95
104
91
99
145
91
104
154
141
113
77
140
82
102
136
86
119
59
120
168
104
141
83
151
90
143
103
113
101
148
110
129
180
74
88
95
130
65
116
128
178
113
102
130
130
116
106
111
155
93
54
78
196
102
114
81
115
108
117
102
94
67
97
146
128
117
49
148
165
123
108
102
108
133
123
81
81
162
116
82
95
102
116
116
81
87
87
91
143
92
91
95
123
137
130
158
132
128
131
108
105
78
87
92
78
49
76
126
120
87
131
108
144
140
133
112
90
69
157
102
139
130
104
134
141
177
87
125
82
135
115
181
137
74
160
113
105
77
128
115
61
134
121
125
135
113
106
59
123
172
145
152
149
116
77
113
95
148
124
145
74
136
87
134
81
161
74
93
136
116
89
148
110
78
96
83
126
128
68
107
106
125
110
138
108
104
69
77
82
115
54
110
111
138
115
88
121
67
103
96
95
99
108
59
131
140
145
120
144
138
102
106
106
95
127
117
115
115
95
98
116
151
123
102
138
161
135
133
142
154
120
166
138
72
115
108
94
84
119
139
67
161
59
86
115
82
94
59
113
102
87
99
125
144
76
174
114
91
166
78
103
148
120
108
105
54
168
102
108
102
92
119
113
116
90
98
166
74
186
81
120
104
54
133
93
113
116
145
151
102
96
127
235
168
108
105
115
67
80
65
76
158
108
115
124
108
142
93
117
148
105
96
135
112
131
113
103
101
97
110
117
152
95
68
133
95
90
131
152
99
73
125
127
126
153
81
81
102
128
108
76
148
102
156
174
104
91
141
108
157
140
128
92
122
82
153
172
149
113
107
54
117
69
106
127
91
127
130
202
107
83
100
96
114
115
115
127
168
114
114
118
143
149
108
158
81
85
111
136
216
68
148
134
82
125
145
106
102
99
100
127
148
136
102
142
83
110
95
108
49
125
112
126
86
85
158
157
113
85
102
120
97
200
146
109
84
139
108
125
160
97
190
168
132
157
182
123
97
110
67
118
152
67
108
96
95
98
144
166
149
138
115
110
131
59
108
84
146
77
101
107
102
90
117
74
78
170
81
102
168
106
164
144
97
102
96
155
95
147
93
194
105
102
108
159
116
118
87
148
148
96
131
113
150
87
71
95
121
98
147
74
65
103
90
49
61
105
130
109
80
96
125
96
63
108
103
133
107
99
122
126
95
49
150
102
93
95
59
165
74
133
75
102
94
87
103
113
146
95
123
113
116
54
139
150
121
77
103
134
83
116
181
74
117
170
125
121
148
101
90
117
143
108
217
113
76
150
107
146
98
83
59
138
165
149
117
130
105
140
144
134
151
78
79
101
123
81
163
148
116
90
77
131
54
136
138
110
107
143
86
101
132
96
76
122
116
131
83
117
193
98
118
177
87
151
81
151
111
83
113
118
193
102
87
135
176
128
131
80
131
122
93
116
118
95
95
155
118
83
143
113
98
93
105
78
128
67
158
116
107
77
95
76
98
144
111
102
102
139
153
132
103
77
128
76
146
114
88
90
106
87
140
141
96
94
103
101
118
148
125
113
129
95
69
78
154
81
131
134
95
69
76
114
110
118
183
93
119
67
54
124
102
131
120
128
114
92
67
109
118
59
107
90
159
99
148
116
164
122
114
94
142
142
76
106
69
122
77
98
77
87
202
127
76
74
82
148
103
124
76
96
132
155
117
104
133
120
113
115
98
109
106
112
119
113
96
104
113
155
110
106
78
108
147
82
131
78
81
92
108
113
177
113
59
98
164
115
124
118
104
75
118
128
110
155
102
131
108
87
167
127
117
108
93
102
138
128
105
134
110
103
135
108
113
74
159
118
153
113
108
121
109
74
101
118
118
85
76
131
54
54
116
136
127
103
105
140
134
143
158
122
65
130
145
108
95
140
107
59
125
178
116
95
59
54
145
106
135
182
159
128
125
113
97
175
101
165
94
82
49
167
106
119
123
78
76
141
84
143
81
102
120
113
81
142
114
81
110
95
82
115
122
165
90
74
129
133
111
145
119
142
128
163
78
118
120
123
141
127
123
138
125
98
103
81
124
91
148
89
84
105
98
88
151
101
54
120
90
127
49
89
128
95
106
123
134
177
134
108
93
102
133
106
127
100
98
154
89
96
127
125
89
108
138
108
131
187
107
116
96
101
108
97
95
81
49
130
49
106
101
108
146
167
181
116
102
135
122
95
123
59
125
74
142
88
143
136
128
77
74
120
92
165
176
132
105
171
134
54
162
77
108
107
118
128
98
102
141
54
94
130
148
113
80
95
87
89
124
95
54
54
106
115
126
158
72
93
91
107
96
136
98
96
98
143
91
74
147
118
147
132
81
131
149
125
103
125
148
146
81
139
139
115
103
81
103
67
116
127
59
87
115
108
122
59
159
113
148
128
179
101
137
126
98
114
199
118
110
118
76
103
134
54
97
79
110
95
103
120
148
144
105
81
54
173
54
158
112
98
127
108
146
103
120
107
59
98
153
119
91
103
131
157
54
124
188
90
54
139
54
93
138
135
108
103
114
124
59
169
144
107
164
57
144
141
165
96
100
144
133
176
147
107
188
141
179
70
122
106
87
107
103
139
98
112
121
82
127
137
104
92
136
170
103
105
81
98
101
125
139
108
110
108
158
108
156
182
161
89
87
95
119
125
54
105
101
92
148
102
138
100
156
144
90
95
139
170
94
103
163
155
108
164
67
93
149
131
54
141
67
190
184
127
84
124
80
182
156
129
134
127
134
114
155
131
87
128
101
61
150
123
113
122
81
54
180
177
164
83
95
113
143
115
93
108
169
125
119
138
95
109
103
110
81
197
167
131
121
81
174
69
158
114
135
108
77
177
157
106
87
104
113
133
59
104
92
138
122
154
81
54
95
108
116
127
96
234
98
112
155
92
119
98
92
102
115
92
75
141
120
143
98
59
98
144
136
54
124
81
61
139
122
113
67
76
49
172
137
93
81
102
147
84
131
149
108
95
148
105
120
98
131
120
128
85
139
129
77
121
90
95
75
128
127
110
125
131
119
129
108
93
98
102
68
127
86
111
116
86
103
134
128
81
84
125
155
87
120
140
143
130
119
145
101
104
114
122
54
82
117
87
105
128
130
143
68
74
95
114
103
113
110
97
127
117
98
116
97
92
159
95
134
92
89
98
105
135
141
157
137
121
77
107
59
59
100
76
134
218
152
153
108
80
98
80
113
124
123
138
138
115
102
98
98
124
146
107
102
159
127
108
95
119
54
132
124
122
91
141
188
82
102
63
54
132
129
87
105
133
123
141
125
170
177
81
54
141
146
92
142
190
120
90
151
161
100
159
138
107
77
76
161
108
143
111
99
81
83
121
102
89
49
121
97
102
105
79
59
122
81
148
76
121
112
141
128
141
49
103
167
131
153
147
74
115
54
109
87
126
116
144
166
158
133
143
157
137
131
194
113
155
100
54
80
123
127
135
87
102
110
107
131
110
123
107
132
83
179
123
118
141
140
54
126
125
80
84
54
172
87
98
115
129
54
147
177
107
102
111
109
161
139
98
129
128
83
77
171
105
201
168
172
133
125
125
132
125
138
131
95
54
87
94
142
108
158
117
87
148
111
103
143
144
148
144
123
143
81
84
161
118
93
67
128
139
102
144
129
85
102
138
113
75
108
149
83
128
102
121
84
117
107
95
67
118
111
178
80
161
123
81
103
177
133
89
79
92
117
129
118
148
102
132
81
79
130
132
148
119
75
148
108
157
154
142
113
131
140
135
158
54
135
76
138
95
128
121
127
92
92
158
95
82
115
128
115
112
93
100
145
146
110
99
139
114
158
135
108
109
111
114
98
90
98
85
141
111
98
106
152
85
108
90
74
133
116
143
93
98
144
115
143
123
128
146
79
101
144
108
93
54
88
129
54
111
59
68
105
141
140
124
150
68
85
102
84
116
103
103
153
115
74
121
160
141
98
74
45
108
108
82
95
121
82
96
117
97
115
98
108
113
101
118
78
92
110
89
103
104
107
104
126
108
151
116
131
142
131
98
108
97
83
98
105
89
109
129
147
94
146
77
74
121
81
137
108
89
99
123
87
106
119
126
136
98
125
87
54
115
49
142
138
93
95
139
112
152
93
99
115
183
128
110
90
143
101
135
105
115
108
49
105
113
54
126
106
138
128
116
123
81
133
148
87
95
108
104
80
98
126
126
146
130
118
108
108
133
68
140
49
90
151
112
105
165
136
129
129
99
125
108
116
67
134
111
120
82
138
151
101
129
103
80
127
177
132
115
147
138
105
125
129
108
87
121
127
83
92
102
113
138
148
125
96
80
107
49
155
77
103
133
79
90
96
147
108
59
127
123
154
110
98
114
127
141
149
49
110
151
119
145
158
96
102
89
102
134
104
105
97
81
77
140
130
83
131
76
95
143
172
161
103
76
151
130
103
168
118
102
95
148
119
139
108
152
119
107
79
133
138
190
136
85
114
89
102
124
132
95
77
216
168
90
54
104
79
85
111
165
130
113
180
93
128
102
86
75
54
59
128
88
59
94
118
131
127
103
85
118
74
90
141
98
98
108
125
128
173
108
156
108
74
166
97
150
90
108
163
101
113
165
76
118
76
147
115
67
140
54
134
148
93
111
108
125
124
81
112
102
178
143
138
88
148
188
148
111
90
70
104
127
78
128
101
61
74
128
177
107
108
144
143
142
102
142
102
149
117
176
93
76
135
121
128
147
125
108
159
133
72
102
133
59
161
98
105
139
145
148
54
165
108
112
128
162
59
165
131
54
191
94
165
148
110
107
102
113
123
125
168
129
59
153
74
78
133
81
102
102
94
108
107
68
87
96
125
49
78
116
93
138
163
90
129
109
106
112
194
162
188
98
133
78
135
90
76
123
153
88
114
107
91
49
95
96
127
114
112
95
69
113
110
94
98
138
79
108
133
102
54
98
94
157
129
68
108
125
129
133
163
127
75
117
54
105
98
134
177
133
110
155
137
84
83
101
110
127
108
95
145
156
110
67
91
127
137
125
106
101
161
144
149
170
128
143
129
125
79
76
145
87
98
148
160
132
160
54
105
98
124
61
148
87
109
85
125
98
140
146
98
114
186
104
127
128
119
54
138
88
142
99
123
114
113
91
98
216
137
102
82
76
125
90
136
113
92
138
54
93
126
141
135
110
149
104
102
194
156
88
118
122
97
125
93
76
97
107
116
102
69
105
54
111
49
105
137
148
167
165
128
136
54
161
96
102
165
122
116
207
90
146
106
116
110
95
116
94
120
95
105
108
138
117
139
153
98
170
102
124
101
69
150
113
123
102
89
120
67
129
113
105
91
54
94
127
82
54
116
108
146
82
127
119
90
169
160
108
105
97
123
145
122
115
132
108
102
103
105
74
117
104
113
125
167
121
149
117
92
92
140
165
91
101
70
113
135
54
112
96
83
175
123
141
117
94
124
92
148
95
118
112
120
104
130
115
139
161
151
131
141
183
132
186
125
179
106
112
113
114
142
65
178
54
129
135
102
96
158
115
93
115
82
120
143
74
136
114
107
96
145
100
105
105
90
95
98
91
143
155
95
173
77
98
185
98
158
109
136
98
59
135
99
103
146
81
106
54
78
80
147
67
134
128
105
118
59
123
98
97
121
164
95
143
90
119
141
108
85
182
80
131
148
107
118
93
79
101
54
109
99
142
54
99
122
84
157
106
108
117
49
95
101
108
141
123
145
140
147
148
110
159
133
129
87
106
98
59
93
81
91
152
180
108
106
85
115
84
130
140
95
119
102
95
152
135
69
67
105
118
59
128
83
139
138
54
202
91
152
98
122
117
150
83
109
131
140
89
150
105
116
103
155
127
113
83
83
138
134
128
99
94
156
102
164
108
114
77
93
91
85
74
140
130
54
74
115
82
172
110
100
124
109
161
120
81
62
122
158
94
108
124
127
112
125
49
120
74
118
81
115
133
147
141
176
103
186
131
83
102
106
129
124
105
106
145
113
145
101
54
92
145
117
54
108
59
105
89
122
113
94
120
105
98
148
92
120
105
126
110
195
134
170
144
73
77
104
76
106
168
128
76
59
81
106
98
109
129
132
102
105
177
81
102
118
81
102
149
135
106
131
116
140
62
94
82
120
94
148
103
77
108
98
148
106
77
127
148
132
49
161
78
126
103
70
102
128
173
74
152
117
74
77
138
98
108
136
140
126
89
108
73
93
148
148
108
119
138
103
87
156
90
128
185
121
135
118
169
87
134
115
108
108
90
81
178
121
128
104
139
131
109
135
122
61
87
113
106
148
121
115
138
96
142
99
111
87
158
106
102
97
148
143
108
95
98
104
146
81
124
131
98
109
54
102
160
59
102
54
102
123
140
99
106
153
90
121
103
98
124
108
138
86
54
65
102
140
161
133
113
125
131
132
96
162
110
81
49
172
78
123
113
95
107
59
67
128
93
107
103
82
86
108
137
103
108
106
144
129
54
87
146
122
120
100
59
81
110
81
169
142
120
83
113
75
93
68
82
147
146
102
145
76
96
83
106
108
95
111
155
179
98
162
54
118
98
90
135
167
160
124
113
98
148
116
114
129
105
87
127
94
129
107
127
135
138
158
145
107
149
141
136
126
151
106
54
85
103
78
158
59
116
138
87
144
158
135
121
54
90
120
68
74
137
190
98
89
128
106
148
144
54
115
140
77
190
116
133
59
74
111
62
85
106
95
138
102
145
139
113
114
125
117
81
133
84
62
77
108
129
143
81
119
135
87
87
125
110
54
105
153
148
108
145
110
115
148
104
76
83
90
67
116
112
102
139
67
147
135
108
102
108
148
179
127
54
143
131
147
109
129
68
113
119
121
118
54
127
121
123
102
120
133
95
167
81
98
140
139
123
134
131
130
123
143
190
134
110
149
125
103
127
128
135
129
113
85
130
145
139
117
165
134
188
69
98
117
100
96
107
127
83
110
54
126
108
81
130
108
54
105
123
115
140
105
100
82
95
120
68
100
120
77
95
111
82
94
108
116
159
139
127
117
49
143
111
126
105
136
148
135
96
108
144
113
87
76
136
74
94
119
110
99
104
155
137
85
151
125
135
105
125
102
135
142
95
158
74
54
92
98
120
76
99
116
108
90
134
157
74
54
131
163
104
143
146
93
108
95
98
76
131
87
81
98
54
119
142
82
94
137
115
108
54
100
179
141
122
81
110
115
142
82
86
146
54
122
102
127
126
92
165
190
122
194
117
108
113
200
128
161
133
122
172
97
128
140
87
151
128
104
168
106
169
119
177
130
95
128
54
167
84
59
97
81
102
54
124
101
133
114
72
80
101
125
119
49
54
129
124
185
104
147
188
104
62
120
95
170
163
127
54
59
88
89
99
191
89
118
77
128
145
106
144
137
67
118
74
107
157
163
87
123
204
124
121
99
121
87
94
122
92
101
125
54
118
77
115
180
177
159
74
180
148
92
182
150
148
124
131
108
102
85
113
119
45
54
123
95
136
90
173
82
82
137
122
118
98
114
77
82
108
103
87
134
98
121
109
148
151
100
108
110
95
146
96
95
108
76
132
132
172
83
87
140
152
108
188
140
49
102
105
127
135
108
132
118
111
120
83
130
115
98
107
136
76
135
121
59
104
96
112
123
99
54
98
93
129
158
142
123
119
105
150
124
82
130
177
124
177
74
128
128
119
105
128
90
148
115
155
101
74
93
109
156
120
125
116
116
113
81
122
171
74
119
108
100
111
105
91
121
114
78
151
96
148
117
112
95
145
103
158
167
110
101
107
135
93
121
125
161
148
159
69
116
92
96
92
111
112
88
112
140
87
103
139
109
113
116
106
143
86
105
84
49
134
176
108
140
135
108
69
125
102
156
105
74
81
84
76
118
122
150
153
103
93
115
163
128
54
146
128
59
172
121
118
74
54
110
112
170
151
135
135
150
115
120
91
81
130
78
135
153
98
114
154
124
49
91
65
146
90
104
158
103
121
132
162
105
127
98
96
76
104
90
150
144
138
125
61
158
111
143
123
76
90
126
125
106
98
88
108
80
104
81
120
108
179
129
102
200
126
123
81
147
158
131
189
78
140
93
188
153
102
77
200
102
49
104
102
143
54
132
54
135
99
126
133
142
147
116
143
105
106
106
95
162
125
105
115
105
175
103
121
91
107
82
49
49
117
77
135
113
144
120
74
149
182
113
142
104
82
156
61
119
129
59
89
88
104
125
133
133
113
98
80
161
133
104
79
115
127
78
115
109
87
95
141
103
101
93
106
113
108
54
109
96
122
118
136
105
95
59
144
115
152
84
125
95
142
54
89
113
120
137
95
127
122
129
141
111
157
127
122
77
113
110
143
54
94
111
117
82
107
148
155
54
170
104
139
91
96
132
114
49
132
120
137
112
145
93
105
69
102
83
111
159
72
138
96
54
126
91
100
97
76
112
81
135
109
139
139
113
177
137
132
120
119
150
78
95
76
112
90
74
103
80
125
179
119
152
162
108
155
98
110
103
105
134
124
101
142
98
124
135
118
61
158
104
98
114
128
93
151
101
95
77
160
112
119
124
128
81
125
108
128
188
102
132
67
105
102
145
102
145
95
105
90
113
93
105
81
114
144
111
122
99
141
54
116
113
81
148
157
98
186
54
134
125
92
97
132
135
85
194
95
93
102
104
157
107
98
104
154
127
54
125
148
91
103
103
118
59
123
94
98
116
134
163
98
124
102
93
113
67
118
98
133
212
104
117
135
117
118
140
157
102
99
116
108
133
139
123
108
112
111
123
149
122
144
142
172
110
68
135
148
120
129
76
49
110
61
109
137
85
150
81
117
110
126
103
115
110
89
103
98
123
171
102
143
143
161
102
49
124
122
111
104
140
93
95
142
98
105
139
98
177
158
80
167
104
148
102
102
151
112
123
116
124
130
98
102
169
118
120
87
102
152
121
49
123
62
54
96
49
122
101
67
135
102
115
106
54
73
115
128
140
110
109
105
117
110
108
153
112
120
135
69
129
94
103
117
101
113
87
91
108
133
125
103
92
137
110
143
85
134
67
95
121
133
109
128
106
107
98
131
106
95
133
133
184
158
161
139
126
111
143
102
123
96
122
93
111
77
54
139
98
89
91
131
112
140
85
110
74
90
54
108
165
105
49
94
90
147
103
126
112
107
131
76
105
90
77
90
123
108
96
83
144
127
163
113
129
153
120
105
147
108
136
89
134
216
78
156
160
109
146
143
125
163
115
97
153
103
148
96
126
134
125
139
67
150
104
153
106
149
86
67
123
150
114
59
109
112
132
98
115
119
105
131
107
165
128
77
54
95
54
158
158
104
77
74
74
67
137
54
89
93
147
131
145
120
183
135
137
93
84
143
155
180
119
121
123
87
102
129
127
125
107
83
179
148
88
224
94
137
107
107
54
81
135
102
84
154
108
147
95
84
143
180
81
109
145
167
61
102
102
78
76
49
144
54
100
100
98
177
107
82
168
78
114
165
71
153
175
177
82
119
123
96
117
160
88
94
126
91
122
87
147
129
81
135
93
87
103
133
138
86
54
109
146
87
95
54
93
147
113
120
123
140
105
97
120
90
152
133
109
104
128
93
129
129
137
95
126
131
135
100
118
149
130
135
146
123
74
103
103
89
177
124
89
129
200
147
89
161
122
69
103
95
125
74
122
186
81
119
61
124
112
118
190
90
91
98
145
82
167
133
131
95
156
116
96
108
87
127
106
89
125
115
143
153
85
144
107
105
147
72
108
109
106
118
121
88
117
141
94
102
120
121
128
87
111
172
96
96
69
111
54
82
144
148
104
97
136
90
144
83
94
131
101
112
158
118
96
180
128
93
87
128
126
133
148
145
93
110
101
185
54
116
146
116
99
80
106
140
105
123
129
87
128
102
131
135
121
102
81
142
177
107
87
135
122
81
146
70
92
111
74
94
108
110
103
99
116
118
120
120
135
124
138
138
74
107
83
83
99
91
111
123
147
122
114
95
102
140
140
138
140
129
89
124
142
107
131
134
110
145
148
146
128
85
168
157
81
115
109
124
130
135
115
108
125
89
155
141
49
114
94
91
148
143
95
95
127
78
167
211
122
178
147
98
180
119
107
131
142
67
98
108
141
117
103
106
153
109
69
82
138
127
148
122
124
115
213
81
96
113
95
144
81
100
109
117
115
99
177
145
148
160
103
116
127
123
145
105
124
98
59
114
189
144
169
131
95
105
108
106
176
120
177
111
148
86
120
109
174
127
81
102
118
118
161
173
105
141
158
110
144
82
120
69
103
151
133
135
49
128
147
104
88
54
90
136
103
81
104
121
67
159
93
77
107
103
142
119
59
109
96
123
101
118
108
135
133
113
106
107
174
112
68
163
129
105
102
87
109
54
103
134
159
144
153
115
122
134
95
124
133
139
72
49
103
59
144
131
132
135
168
164
102
90
103
99
93
82
102
93
108
143
98
113
151
99
59
108
125
122
153
83
161
133
156
148
73
98
133
139
156
128
110
76
130
101
132
128
108
177
128
131
146
108
122
90
106
107
133
81
180
115
102
132
128
101
139
54
95
108
116
119
94
108
143
116
159
170
135
76
78
148
86
113
128
102
91
114
148
148
107
102
88
59
108
81
117
124
91
93
106
100
161
88
108
182
134
129
54
179
162
139
90
120
106
107
74
84
108
158
95
143
144
187
114
90
76
160
131
79
79
103
81
105
133
110
117
91
156
130
120
76
149
105
91
49
141
117
67
124
105
107
119
132
90
69
74
102
74
98
164
133
76
115
54
85
105
124
137
67
84
81
117
59
165
49
76
108
92
79
102
127
85
106
142
114
170
156
104
122
124
84
94
54
81
125
112
91
100
115
110
134
90
154
156
166
119
113
155
104
148
116
126
49
114
90
115
59
140
87
167
144
129
128
126
128
61
169
102
126
130
97
155
140
158
92
133
155
122
105
177
145
83
156
129
102
120
74
107
131
101
96
76
82
102
194
107
127
161
100
49
140
105
177
84
156
147
128
99
82
93
72
143
113
139
113
177
94
102
126
145
54
108
153
113
99
177
93
97
90
140
101
148
101
90
90
80
103
102
87
156
117
59
143
105
154
117
96
126
128
98
131
54
124
132
54
132
115
114
98
148
83
104
85
116
107
153
98
100
158
122
95
126
70
113
74
98
90
146
110
175
136
94
120
110
146
113
91
109
104
78
102
158
108
107
91
131
125
113
108
128
129
95
59
83
130
135
95
90
115
121
129
80
131
133
87
105
97
171
150
70
88
101
107
131
125
133
109
87
109
106
120
110
112
121
157
146
131
176
165
103
157
59
105
89
122
86
120
155
123
127
143
136
151
106
98
102
111
135
95
116
92
59
118
133
135
87
132
105
54
125
67
128
147
118
122
152
99
105
161
81
74
179
107
145
78
136
105
87
59
81
197
177
122
85
130
98
132
98
106
78
128
59
155
118
133
103
102
137
125
97
91
126
69
96
128
143
134
146
119
123
147
128
145
102
101
84
95
125
106
112
109
126
113
102
129
107
134
138
112
149
151
131
78
112
103
128
102
108
49
97
179
107
90
122
144
121
133
125
107
54
128
77
121
111
76
107
93
123
81
108
81
90
113
101
139
120
103
78
113
99
126
93
95
139
93
186
131
74
113
98
82
69
107
106
59
129
120
111
140
114
122
108
102
98
129
150
97
76
191
54
172
177
185
162
67
81
104
107
133
152
101
154
102
155
190
125
133
177
82
123
141
143
113
106
149
102
165
145
154
135
146
103
89
142
168
114
54
120
122
84
79
73
102
54
125
108
131
119
87
138
128
196
144
94
172
108
128
87
108
95
128
95
80
95
120
135
145
135
165
87
104
118
87
95
98
188
125
102
105
120
59
54
99
127
122
101
49
134
121
124
103
98
95
125
108
177
104
76
162
158
180
130
131
148
125
131
104
101
102
110
59
131
118
138
128
134
127
144
105
74
100
123
94
103
138
118
102
113
71
115
127
185
125
96
136
158
131
125
124
54
127
136
179
102
129
167
139
134
102
90
141
59
146
128
128
147
100
129
106
118
120
95
81
87
80
144
182
153
98
110
134
96
87
101
131
85
131
128
190
128
133
160
87
77
148
54
104
140
200
94
103
78
133
94
107
153
89
128
103
100
95
92
176
85
147
98
74
87
85
90
113
54
123
87
54
102
81
132
95
100
42
134
68
98
110
101
97
142
54
91
98
148
112
59
102
123
97
110
95
59
113
67
130
121
115
138
102
165
93
120
108
140
125
82
133
95
163
82
117
69
134
65
108
103
54
137
163
125
164
133
98
92
135
133
119
95
135
127
126
124
94
98
122
54
133
144
125
139
90
59
140
67
87
118
155
134
45
54
102
45
98
110
94
152
101
98
90
158
139
98
103
54
106
140
108
200
143
67
81
103
103
80
95
132
124
147
105
93
102
79
84
108
149
109
151
100
161
151
161
90
130
132
148
104
112
108
117
108
134
148
95
164
90
129
149
148
115
54
144
90
126
99
95
142
100
123
148
98
124
141
125
120
103
114
121
92
137
177
113
86
106
82
87
81
177
132
95
156
97
109
108
102
169
54
134
115
177
59
100
111
136
54
87
141
177
93
148
111
95
105
113
108
126
128
119
101
90
117
153
194
103
129
131
160
77
129
81
106
95
77
113
126
93
102
139
148
130
83
87
123
54
107
97
119
125
148
122
103
103
108
129
93
95
98
95
54
186
147
84
98
128
125
115
93
145
70
112
81
106
143
108
78
190
116
87
78
135
123
128
81
82
140
119
80
123
108
81
125
82
82
73
110
138
97
98
74
106
95
87
131
147
98
162
95
140
108
128
108
131
144
144
54
80
106
125
85
121
139
148
123
112
86
54
104
147
130
54
153
156
105
126
100
108
167
108
94
91
81
105
99
130
126
146
109
161
102
118
102
80
165
103
102
122
91
91
49
119
102
143
122
129
103
124
129
165
49
120
173
54
99
90
122
90
103
106
136
113
135
131
127
140
74
102
158
61
148
156
143
77
98
140
54
94
138
74
139
102
133
141
112
220
98
94
114
74
155
151
87
70
76
111
108
117
87
161
124
175
82
82
133
188
126
96
83
140
115
95
128
120
119
107
125
110
107
116
122
146
136
150
103
102
113
61
131
125
61
160
105
99
143
81
108
150
49
91
112
124
161
84
118
111
148
218
112
120
108
163
45
98
103
81
100
106
83
101
139
125
83
123
91
54
86
108
112
105
95
124
182
98
108
91
137
132
120
77
153
77
159
95
157
105
154
165
132
140
147
165
87
103
128
107
149
118
107
82
108
106
142
103
76
102
118
114
120
128
95
89
142
125
100
131
125
74
95
98
105
107
120
139
103
133
131
151
135
134
91
113
149
103
86
54
186
129
154
123
81
128
91
138
127
85
54
95
119
138
81
59
126
111
133
111
77
127
95
150
126
83
109
54
119
91
98
82
157
102
127
106
123
126
86
177
147
130
93
128
74
126
173
128
104
158
108
102
141
104
114
127
114
95
87
93
115
113
54
129
110
87
93
136
164
140
87
113
86
111
115
127
90
117
108
54
135
88
74
95
109
161
95
94
85
97
137
112
97
54
109
133
137
167
145
132
95
93
112
89
153
150
142
182
89
91
105
158
140
130
158
117
139
49
84
129
105
107
82
154
131
88
142
107
118
131
93
105
82
122
104
152
81
95
163
107
81
120
111
107
90
54
101
135
98
61
108
123
127
153
170
73
100
109
78
115
132
108
98
98
133
125
73
68
85
162
145
118
102
76
122
164
95
117
138
120
81
133
96
97
100
118
90
119
135
147
110
54
119
98
123
125
117
140
119
113
137
112
154
128
95
135
134
115
105
154
81
77
178
67
138
95
83
82
95
109
143
153
131
91
90
133
120
90
108
136
110
102
84
107
94
161
94
116
133
136
130
145
54
125
121
49
111
65
168
49
143
110
145
119
106
140
105
119
93
145
77
127
127
79
76
87
89
144
111
133
158
54
117
114
112
125
96
137
129
99
105
179
133
102
124
102
151
102
101
98
98
140
117
124
122
80
83
108
107
128
98
104
118
150
142
139
144
108
234
95
69
97
169
113
54
108
135
147
141
93
103
110
83
49
109
87
115
122
54
145
95
108
113
97
117
134
76
151
92
144
98
133
160
107
133
115
67
78
74
143
93
98
95
106
144
81
121
113
141
91
81
129
102
104
59
124
166
78
59
83
117
67
86
117
105
80
76
118
120
109
140
137
151
106
107
109
108
95
166
155
95
76
140
128
124
140
125
95
76
142
142
120
102
134
54
102
108
103
101
77
132
82
145
73
93
148
81
75
146
149
95
95
49
128
54
174
101
119
152
169
114
85
91
115
125
82
112
111
184
149
156
98
108
113
108
102
125
54
108
95
77
129
179
107
144
102
112
140
123
123
82
133
69
104
113
129
74
63
102
113
167
98
95
128
93
81
102
191
68
101
108
103
128
113
141
148
81
85
122
149
103
127
150
135
125
143
105
96
102
186
54
111
161
163
123
98
85
106
136
132
149
116
66
144
103
124
127
106
95
122
140
102
108
149
98
102
108
129
154
110
108
139
140
108
114
120
122
138
76
86
92
113
122
61
95
108
129
98
131
151
83
118
83
99
114
97
133
108
117
133
144
83
91
108
135
171
171
101
136
87
54
87
159
76
96
135
78
135
128
59
196
139
107
108
125
95
91
148
74
147
49
59
131
124
76
116
81
133
74
134
103
161
113
91
90
131
54
127
148
110
108
117
93
139
148
138
87
113
100
93
123
116
106
97
93
95
81
157
95
95
125
90
147
87
85
145
90
154
118
101
101
112
102
99
78
74
133
98
97
152
114
142
130
102
151
118
54
140
118
123
95
132
125
102
113
135
102
146
102
95
106
111
170
143
105
81
76
74
103
93
140
146
114
87
102
125
126
114
175
154
102
89
93
162
49
96
87
130
94
161
134
117
127
147
67
182
80
87
107
158
162
85
145
102
110
107
54
155
102
68
112
112
142
121
74
124
111
82
74
123
95
98
120
93
143
78
141
102
128
82
74
116
95
129
49
124
111
169
99
109
54
96
81
142
83
111
147
74
108
109
105
73
113
94
156
158
91
106
87
94
114
131
93
91
95
151
49
140
102
90
105
109
98
142
130
127
94
149
150
65
144
177
61
116
177
102
152
137
81
102
101
118
97
123
128
125
126
76
131
112
123
141
118
121
83
87
119
101
146
119
103
112
133
139
117
118
91
133
129
96
128
117
147
83
76
143
126
109
138
121
101
104
147
167
54
124
69
119
109
124
74
119
135
115
140
127
120
108
125
123
148
173
125
121
139
168
100
120
143
133
95
140
129
85
106
143
104
86
128
103
83
125
102
132
54
83
127
102
115
128
105
108
172
172
107
90
76
123
117
93
155
107
54
101
102
92
109
142
115
130
85
138
126
136
98
123
98
99
120
177
143
90
108
74
135
135
108
95
120
93
49
87
120
95
105
189
135
54
54
125
97
138
112
103
104
100
74
90
129
91
81
156
122
84
78
93
84
85
160
115
108
113
79
106
131
74
143
127
124
115
132
115
90
112
122
105
107
54
54
87
95
159
93
110
77
154
82
98
106
94
153
137
143
155
151
103
95
54
90
131
85
147
136
113
132
106
121
152
54
168
116
158
111
114
61
103
74
115
124
103
96
85
98
69
169
165
141
124
81
153
119
59
84
144
156
130
67
126
140
103
146
140
59
140
86
95
113
137
102
102
110
85
81
123
105
169
109
54
200
95
191
84
100
75
139
91
102
120
122
126
79
49
80
194
160
93
122
105
102
107
130
90
198
86
177
125
135
131
102
49
126
87
148
164
177
93
105
87
103
107
90
112
94
133
149
54
81
144
81
169
90
129
131
61
105
138
108
77
118
59
135
100
116
153
81
108
96
95
101
144
124
143
118
146
137
120
89
82
124
129
157
136
161
169
81
125
148
148
116
121
99
54
82
133
84
147
113
94
142
105
93
98
49
107
76
105
108
102
103
116
175
127
129
108
119
133
81
141
87
67
140
81
93
85
137
95
131
74
108
129
103
82
108
116
98
108
121
61
134
123
103
128
119
140
118
61
84
130
125
93
133
125
138
67
101
110
72
115
113
78
77
95
98
141
125
148
139
96
133
102
117
148
89
123
100
54
115
93
109
54
141
147
83
98
112
145
59
83
93
98
200
102
100
145
108
126
156
148
130
108
87
82
102
148
90
95
143
123
95
88
95
90
173
110
108
101
95
82
81
147
118
81
144
146
82
101
102
99
91
134
95
81
115
99
76
113
127
54
121
98
115
125
146
190
148
106
96
125
110
113
103
88
129
88
67
95
102
101
103
200
81
109
102
95
127
49
137
146
152
90
95
156
102
90
165
98
74
95
142
103
97
114
74
105
77
118
142
82
98
149
134
95
98
137
175
127
131
95
61
89
133
59
77
122
139
98
115
177
102
65
120
106
143
85
87
184
122
126
106
145
87
109
142
81
74
136
111
137
98
126
136
97
74
120
142
127
144
49
146
100
119
127
81
95
109
98
98
82
123
78
49
129
94
94
155
193
49
54
140
95
134
54
90
141
116
98
108
155
144
54
67
117
120
148
121
120
106
83
111
156
108
142
116
101
168
129
157
127
145
117
99
113
131
125
91
81
123
129
59
170
159
86
141
125
106
109
96
115
177
98
101
95
148
73
90
93
133
96
128
76
110
95
119
95
101
54
114
110
115
128
102
107
102
95
100
134
133
118
131
131
167
120
106
103
108
107
113
77
172
99
103
88
83
54
125
108
108
88
123
129
133
109
163
146
139
178
131
163
112
102
78
61
127
129
144
145
84
116
98
120
113
90
163
108
104
121
141
49
98
125
90
145
105
100
131
95
130
76
102
83
114
129
132
106
83
125
54
146
123
107
125
95
102
109
82
122
163
127
81
67
136
131
96
93
160
106
127
76
100
125
93
108
126
97
118
131
168
93
200
115
132
117
135
172
108
104
169
114
115
150
72
162
105
153
123
152
54
141
107
170
119
98
117
96
108
191
137
135
127
120
129
54
148
126
125
102
108
127
54
115
102
84
128
76
87
76
130
134
103
93
163
116
162
76
132
81
167
90
149
126
93
125
179
115
149
123
92
165
67
81
125
148
117
163
146
97
146
114
127
133
165
117
117
103
137
108
107
107
107
90
133
148
161
105
106
134
57
54
49
147
115
126
142
118
167
77
141
42
100
147
133
80
136
125
122
144
140
191
111
101
148
107
122
105
83
94
95
78
136
80
102
153
136
177
111
128
146
123
101
76
101
158
90
138
102
90
98
111
106
95
82
194
125
92
133
127
154
145
154
174
106
77
92
108
159
102
133
91
136
130
113
81
81
120
115
54
89
190
122
102
101
113
96
85
128
105
142
147
87
151
103
169
139
95
186
135
59
68
151
143
86
99
127
135
102
117
54
128
93
149
131
72
76
104
112
84
57
127
54
111
140
119
133
69
95
132
125
110
127
126
95
115
121
106
101
147
95
54
123
71
135
87
154
167
108
105
105
98
91
139
92
95
115
88
194
159
160
148
90
128
123
103
121
186
145
148
193
104
112
115
132
96
93
102
103
54
96
89
140
133
139
91
101
103
98
125
132
118
74
94
149
95
76
90
59
136
103
164
130
128
114
54
67
106
141
102
108
149
109
116
106
121
154
139
161
139
170
90
143
80
140
85
101
91
148
108
107
110
98
105
177
165
122
124
85
140
136
130
54
101
126
68
118
109
145
59
142
131
135
146
97
132
98
123
54
82
87
134
105
129
108
159
134
122
77
108
150
113
105
91
54
78
92
97
100
82
131
68
54
107
116
59
89
156
78
182
128
104
115
81
88
93
77
124
170
107
151
117
82
101
102
96
145
121
77
139
85
67
147
87
98
123
77
81
136
145
108
97
88
119
96
54
49
59
100
125
49
87
113
150
90
78
181
104
77
146
125
115
77
116
98
98
126
106
59
108
144
78
138
93
146
85
123
154
90
115
119
59
98
135
94
120
102
120
148
105
128
102
111
135
144
59
103
133
115
129
78
95
148
120
149
110
125
109
128
87
88
136
92
190
99
54
125
120
97
101
68
54
114
130
89
96
199
113
132
120
104
130
123
67
81
169
87
54
135
122
130
134
78
83
122
172
77
126
138
132
102
154
142
78
143
105
129
129
99
139
103
87
136
100
148
128
133
81
120
156
127
106
117
127
76
90
104
121
102
77
115
151
99
105
144
144
80
172
61
61
73
169
116
77
164
120
103
130
59
102
83
80
95
103
102
94
158
150
129
69
90
133
108
132
140
85
113
120
120
140
133
133
95
101
137
54
139
74
171
123
114
106
145
158
117
98
111
143
150
82
146
103
118
143
106
69
98
182
105
168
117
54
177
93
54
105
111
105
54
113
93
150
105
107
114
59
86
111
95
128
83
177
157
120
79
105
138
129
49
105
167
99
146
110
98
80
113
149
91
82
129
136
75
115
125
125
158
131
150
92
150
128
141
76
96
110
99
163
95
146
123
117
79
135
120
139
165
133
96
90
119
106
143
76
90
139
88
119
148
95
135
90
105
95
165
114
141
139
134
200
117
93
97
155
145
155
125
181
87
108
131
138
103
115
115
162
122
112
107
110
102
81
129
102
54
139
54
108
110
121
135
111
148
120
133
74
116
139
73
85
102
112
59
135
125
182
118
184
74
140
113
122
148
144
101
141
145
145
59
137
157
119
82
54
119
99
108
119
100
106
125
67
91
135
135
49
88
132
131
101
125
151
89
54
83
185
74
127
131
81
90
112
49
128
120
99
180
177
151
141
109
80
105
102
108
83
129
98
106
95
145
74
136
98
102
134
102
87
105
123
113
108
116
106
114
161
109
54
54
81
108
102
128
119
102
108
72
77
76
155
142
99
54
190
121
77
133
85
75
102
107
160
129
95
109
120
107
74
89
110
106
134
98
126
92
54
85
141
140
123
95
134
102
141
177
99
114
72
172
137
86
160
59
123
93
78
113
131
54
148
101
142
117
95
205
90
163
127
143
95
119
218
130
120
77
156
109
95
90
182
93
107
145
108
178
117
90
134
86
130
177
100
123
115
156
149
109
116
81
129
130
92
91
98
154
95
91
107
54
95
103
168
95
101
91
108
119
135
123
162
135
73
146
120
169
100
102
112
81
54
95
119
129
81
93
126
114
131
49
127
126
106
140
119
111
90
136
107
137
97
97
191
83
114
186
81
87
95
124
98
81
93
140
125
97
98
119
93
79
125
86
169
105
127
145
140
145
81
54
146
184
156
126
124
125
151
108
69
65
91
112
93
90
104
98
78
106
117
98
148
126
125
112
133
114
89
82
130
96
108
131
130
76
147
146
103
108
125
76
141
118
101
90
72
83
126
116
103
107
137
49
124
102
95
83
131
54
186
110
102
129
103
95
123
87
115
89
122
133
158
111
115
54
67
131
93
96
61
77
128
127
115
120
186
91
127
98
119
76
67
145
182
115
106
144
105
82
106
54
54
133
111
83
98
165
73
105
157
76
169
140
143
49
114
78
190
108
89
139
90
124
156
113
95
76
106
142
127
90
59
110
134
139
142
128
148
146
77
98
107
82
87
84
87
54
115
95
128
95
59
126
105
111
94
149
120
141
136
124
114
96
109
106
77
132
91
98
125
113
131
140
138
83
98
111
158
119
91
106
89
101
120
81
166
85
128
124
80
125
149
95
85
106
154
116
136
102
95
138
120
98
131
99
133
108
127
150
158
54
78
118
120
129
144
121
124
126
144
113
133
102
108
93
95
154
81
67
112
98
145
116
178
122
82
139
126
74
87
129
142
93
90
54
108
98
135
153
103
94
87
68
132
146
90
101
122
97
108
81
94
116
113
87
88
94
162
82
171
213
104
137
68
128
128
131
59
155
129
96
145
90
141
115
80
91
149
81
90
136
123
95
124
81
81
96
123
142
83
108
148
140
127
81
112
114
106
139
76
131
92
102
117
102
91
54
120
54
105
144
95
122
139
125
114
159
108
138
79
98
109
105
75
94
120
200
128
116
102
165
89
129
102
49
145
105
153
107
95
108
108
162
86
161
112
113
103
133
67
114
155
98
95
90
154
125
114
107
179
143
74
76
132
115
105
125
158
160
115
122
113
102
61
123
127
101
114
108
139
54
108
129
95
59
59
87
118
125
78
143
115
140
141
200
89
90
108
133
77
54
135
110
74
133
122
145
125
164
95
182
127
105
118
93
82
110
133
128
95
134
98
130
113
130
82
113
102
54
124
158
104
54
102
122
119
54
144
103
173
94
146
78
125
128
82
140
59
150
97
111
96
98
140
154
145
179
84
102
108
95
108
103
137
54
148
113
115
54
94
120
159
54
141
109
102
142
138
105
192
145
133
143
133
82
85
180
139
139
120
113
96
125
119
146
128
132
94
54
105
61
102
140
122
132
130
145
104
105
91
112
154
163
163
120
68
87
67
122
137
98
139
107
143
168
137
108
118
149
96
115
98
161
147
80
125
83
106
150
103
90
93
102
127
100
123
98
65
130
102
82
115
102
111
122
170
117
144
138
131
86
90
117
109
97
121
127
190
107
157
113
81
134
98
110
146
177
167
114
148
95
87
90
134
78
219
177
136
103
95
141
95
124
99
147
116
128
116
54
108
98
107
133
109
89
122
102
113
102
155
84
120
130
120
150
145
123
101
54
108
125
106
54
54
131
87
54
97
98
127
125
69
68
135
123
113
74
139
78
54
159
167
121
77
128
103
84
102
74
138
86
141
110
87
59
116
138
133
105
145
100
158
88
125
157
105
95
82
122
120
113
83
143
90
146
152
49
84
148
141
123
112
143
96
127
92
54
140
103
134
99
143
80
105
135
116
113
54
94
166
98
103
173
91
179
119
116
177
102
103
118
127
168
128
120
100
133
114
136
108
122
151
72
93
81
102
103
81
54
132
78
101
118
161
81
98
127
108
91
129
84
161
154
76
105
177
168
84
107
59
95
149
95
133
170
113
121
102
98
162
79
97
112
135
54
98
74
128
148
90
129
129
102
94
104
102
148
108
129
100
133
108
98
112
87
176
98
140
96
122
54
138
119
128
99
102
163
74
138
112
139
146
74
113
134
102
95
95
114
99
102
140
59
123
114
76
130
132
116
54
100
125
78
84
150
117
102
148
123
113
122
125
122
96
175
98
95
144
87
74
135
70
54
112
61
147
98
76
177
125
103
59
120
129
98
159
108
59
84
113
113
80
83
125
151
81
125
54
121
120
119
116
146
82
87
159
92
49
108
95
112
90
103
186
49
95
111
125
144
130
116
54
93
125
104
103
129
108
105
108
121
99
180
152
112
157
95
150
108
127
157
125
134
105
132
95
90
136
141
123
123
104
125
149
102
165
98
138
91
102
105
90
137
177
153
180
139
91
127
49
144
120
97
127
113
132
96
97
81
130
87
84
95
185
118
143
95
135
83
142
131
133
108
119
127
89
113
98
126
149
104
133
123
106
85
167
125
96
133
109
122
110
115
98
132
95
119
116
106
127
132
91
107
153
108
105
108
77
95
115
104
123
104
157
88
116
68
133
82
107
126
127
87
103
74
130
128
89
119
109
108
114
89
144
49
74
76
102
91
98
142
106
141
137
131
98
102
128
129
71
113
78
143
102
116
132
133
103
82
186
131
108
112
143
115
113
95
97
147
103
90
77
111
94
108
108
177
125
108
98
137
127
93
154
132
139
136
128
85
95
98
158
176
105
95
126
76
218
102
74
107
128
130
170
74
102
182
81
102
57
147
124
103
123
105
123
128
151
115
136
96
105
61
128
101
108
82
116
177
129
95
121
143
162
119
84
125
90
161
128
144
168
131
128
133
81
114
108
105
138
87
117
103
94
95
90
49
122
148
93
81
85
106
125
108
152
123
116
146
77
67
97
133
54
102
130
112
128
116
125
81
139
85
167
143
146
54
192
67
92
74
149
70
85
121
165
123
61
92
85
85
123
171
119
84
105
54
90
148
105
105
77
111
125
107
93
79
132
136
77
129
67
143
144
137
177
135
102
113
127
81
123
68
112
95
130
149
113
97
95
124
96
68
127
156
148
107
54
83
194
118
87
74
116
125
102
86
125
120
115
127
54
105
78
81
177
87
113
69
105
114
98
73
115
146
161
100
150
147
127
100
105
67
96
117
82
107
135
113
161
110
131
126
103
90
128
114
77
138
113
67
105
129
102
93
49
49
81
115
49
95
109
95
98
76
90
87
140
174
125
158
98
141
90
144
171
126
156
139
105
95
175
90
98
90
125
135
83
207
136
134
186
107
158
140
139
120
68
108
102
109
74
130
135
81
133
81
150
78
116
49
156
140
84
139
115
49
125
177
59
59
98
113
84
122
80
177
114
108
141
98
145
144
129
119
129
160
98
145
149
97
96
216
140
128
148
149
115
111
132
147
108
141
131
103
160
54
112
108
133
131
105
95
128
180
54
129
81
159
72
128
167
126
93
81
143
94
107
151
96
108
107
122
125
95
90
96
137
104
139
132
131
104
87
149
117
110
94
133
99
113
142
120
123
137
112
89
92
87
156
104
81
133
113
156
102
112
127
107
123
124
77
115
182
144
98
97
144
113
112
162
85
169
108
178
92
95
133
85
123
98
110
141
109
108
61
145
76
78
96
98
98
98
101
115
112
126
76
141
49
77
116
67
145
134
124
133
123
93
140
124
160
140
153
59
138
127
95
54
179
78
77
144
179
98
68
54
109
95
90
87
87
87
123
94
108
177
129
141
102
81
112
113
61
101
98
124
151
143
149
160
69
129
123
94
115
146
176
182
125
166
95
108
147
118
54
108
108
84
92
104
117
118
105
126
128
129
107
110
116
151
108
131
114
128
104
69
124
114
102
153
142
102
231
144
161
96
97
101
98
114
95
59
106
74
126
119
59
127
140
113
141
105
120
190
120
102
108
86
146
108
128
98
118
97
80
102
126
54
54
102
109
139
67
95
143
87
142
99
186
147
87
114
120
69
81
161
108
91
103
67
155
82
159
120
112
140
59
107
165
139
141
95
103
143
137
83
125
81
93
144
125
139
159
98
104
98
81
93
108
110
106
103
89
103
150
79
158
128
93
87
144
131
109
167
54
109
103
142
102
131
97
114
131
145
104
114
92
115
107
108
116
116
54
73
81
54
95
167
126
147
98
134
82
104
112
106
119
131
54
128
88
81
54
127
97
103
128
138
118
153
128
107
127
54
100
96
146
95
122
116
106
124
87
168
91
87
98
120
125
133
145
117
159
100
102
49
93
139
147
102
59
120
107
115
80
134
121
93
109
106
108
134
59
115
130
105
90
81
65
83
125
67
127
153
128
112
118
127
102
77
113
91
54
140
82
180
149
108
139
126
120
96
107
69
110
180
155
91
103
81
136
54
103
119
116
118
105
49
128
81
103
132
110
151
104
103
113
103
128
123
156
54
54
128
102
54
102
148
127
81
154
90
82
103
124
77
113
116
92
108
101
120
179
97
97
102
99
126
117
139
119
115
78
122
144
143
115
122
101
122
178
142
114
177
63
126
145
101
103
128
72
117
105
86
87
103
69
91
110
135
149
135
124
85
135
141
115
101
65
172
120
157
83
114
128
118
98
97
108
125
127
87
87
115
137
141
54
81
94
185
87
144
108
100
125
93
106
114
125
95
116
61
83
143
112
122
91
110
108
148
111
150
106
98
74
110
96
105
141
119
177
123
129
123
82
134
121
144
68
134
108
116
103
136
129
112
79
133
93
101
118
76
106
161
76
126
151
102
125
49
129
127
89
122
67
165
143
102
78
138
100
187
102
131
149
49
61
83
146
45
112
125
134
132
158
95
82
107
150
118
159
152
79
149
108
134
152
107
136
120
102
88
97
131
102
103
114
96
78
156
103
91
142
103
123
142
102
127
83
114
165
54
103
123
131
59
87
105
185
108
87
173
143
97
133
95
108
151
81
74
54
78
102
153
147
133
79
129
113
141
117
160
108
102
95
68
95
125
54
94
95
96
129
115
158
98
49
147
61
59
145
155
154
113
129
99
112
131
158
100
105
131
144
101
103
168
129
81
67
112
160
99
99
112
186
54
128
110
116
104
166
49
105
155
122
108
97
119
129
90
150
59
102
86
136
148
138
145
148
108
119
98
199
119
54
144
92
68
101
89
75
128
104
83
135
150
129
164
100
92
54
108
125
54
140
148
147
106
142
124
109
83
105
114
146
121
129
98
90
113
122
130
127
105
98
99
105
90
156
134
87
116
80
100
138
121
83
145
87
95
127
127
134
98
135
121
67
78
102
102
107
144
108
74
90
160
105
98
83
125
119
117
135
161
180
95
95
143
127
54
76
128
99
166
103
112
151
83
132
114
155
147
116
85
134
95
105
68
160
102
137
76
173
127
103
112
117
112
101
136
106
94
118
54
130
148
128
127
72
101
131
131
133
80
108
142
113
205
131
131
144
131
153
128
146
200
112
102
87
49
155
146
96
85
105
136
78
90
150
140
161
125
148
112
77
117
95
141
120
77
54
149
119
118
110
84
125
122
155
139
144
160
82
109
103
100
95
162
78
100
131
161
118
107
114
135
120
122
97
95
96
107
126
108
127
148
135
83
87
95
90
112
81
125
131
153
172
194
102
128
157
138
146
111
102
157
116
128
143
73
95
143
119
104
139
114
90
111
148
149
88
103
119
112
87
137
95
95
101
87
127
160
81
49
120
122
131
85
123
112
93
97
82
74
136
78
67
123
54
127
73
140
102
145
155
127
108
108
85
85
143
122
144
108
98
130
102
140
135
78
114
119
108
91
79
128
168
143
103
102
115
68
148
154
113
97
100
142
95
83
126
152
128
90
127
106
99
117
125
92
95
147
115
110
138
129
115
74
110
106
120
165
110
107
123
89
54
95
108
114
134
148
112
96
99
108
128
61
95
111
112
98
146
89
90
111
172
105
146
49
104
144
69
116
111
94
150
68
70
89
182
108
118
103
166
133
110
106
111
101
133
143
146
102
82
120
130
85
68
129
76
113
121
97
132
105
59
108
106
103
161
150
146
108
95
95
77
139
155
108
96
103
96
59
147
103
132
120
100
81
54
116
177
143
120
108
133
140
170
112
103
74
98
136
61
74
95
69
90
106
133
140
129
109
76
157
113
123
128
76
134
90
120
86
77
140
152
113
118
120
89
128
143
135
155
139
110
67
112
100
110
125
94
140
108
143
68
67
131
122
78
148
183
113
54
118
59
159
125
125
125
117
95
92
118
152
96
102
140
110
102
163
84
102
180
120
99
134
145
105
114
83
111
127
113
133
109
82
121
148
103
104
144
75
135
132
133
158
133
131
82
167
114
81
87
157
125
54
108
158
69
125
59
155
115
111
96
115
102
108
95
148
103
113
49
166
123
119
129
122
115
82
102
120
102
120
138
102
124
141
109
124
124
131
122
147
170
131
111
77
133
97
62
102
158
106
118
204
153
108
61
117
129
114
85
154
102
150
87
135
143
54
77
155
115
98
103
110
138
100
192
116
133
124
139
122
102
108
109
154
96
155
131
54
156
135
103
102
161
118
105
86
114
127
69
143
156
119
102
130
170
108
106
108
112
61
141
153
61
129
145
124
106
140
148
81
54
98
108
170
121
113
113
109
85
103
148
102
93
155
128
61
129
72
122
145
133
93
73
102
133
162
121
146
110
153
123
118
123
109
115
103
105
163
103
145
140
149
146
103
130
87
122
87
163
54
92
112
102
80
153
128
108
83
54
111
93
128
107
102
147
98
96
106
103
169
108
116
83
49
90
90
131
81
123
111
116
134
98
101
97
101
130
61
122
125
98
134
156
119
102
144
113
146
76
155
137
117
69
126
123
110
146
101
190
90
100
102
95
168
54
68
69
78
102
97
102
116
92
99
98
134
128
87
113
68
100
207
164
103
131
104
155
100
113
61
117
108
107
158
156
109
133
123
157
108
135
96
122
94
114
136
104
119
90
95
99
118
102
129
85
111
105
117
180
93
96
115
104
191
113
104
134
106
122
118
144
93
110
75
145
99
125
141
54
107
120
133
120
85
119
122
120
139
107
155
93
81
105
108
123
134
102
123
82
120
122
109
98
109
144
161
77
124
131
127
123
54
147
83
76
213
150
132
95
143
54
125
140
108
125
77
80
78
126
123
125
132
110
155
123
49
81
54
78
81
179
108
156
108
74
90
128
126
81
103
79
157
74
96
99
124
104
193
104
77
181
143
98
165
157
141
104
49
122
101
122
125
138
69
134
127
120
134
161
128
93
102
132
111
107
128
119
143
82
120
126
77
113
49
95
69
99
137
87
79
87
90
157
145
102
125
160
128
118
54
192
155
153
54
140
128
155
145
104
151
82
138
59
87
49
87
54
105
108
133
98
106
118
125
115
132
59
98
150
129
74
54
150
122
133
119
124
49
110
73
127
128
95
160
69
107
79
101
129
148
76
108
77
103
179
175
148
83
102
94
95
110
101
126
109
125
111
107
110
78
148
172
98
145
115
177
142
90
97
149
103
110
97
120
125
114
129
112
127
109
132
180
144
140
102
80
90
105
167
90
74
148
177
125
129
97
78
49
97
78
103
141
148
126
162
132
81
99
108
98
185
106
106
96
103
113
59
131
74
129
78
67
133
74
111
108
106
142
108
93
123
121
108
122
80
115
77
108
76
130
111
108
127
158
92
108
123
139
165
122
95
118
96
103
147
77
108
94
178
113
122
76
117
98
135
54
98
134
150
142
148
113
123
102
139
90
94
146
103
163
84
123
54
122
120
126
141
92
132
108
138
169
90
186
124
111
107
167
106
87
77
76
137
145
132
105
59
83
125
94
102
124
98
82
102
149
77
126
108
129
111
123
157
158
125
76
135
150
96
54
113
69
76
111
101
120
108
124
166
147
81
98
98
80
106
100
124
97
123
72
106
79
125
102
177
93
158
160
81
102
87
153
83
100
115
135
54
62
111
128
183
138
94
84
98
82
99
134
78
104
72
146
132
130
110
111
169
85
138
147
142
134
145
161
132
87
93
54
116
148
180
122
127
133
143
162
163
109
116
156
102
92
145
112
96
125
122
103
105
127
153
105
144
110
161
69
98
141
108
76
114
136
152
99
135
102
107
160
124
72
82
74
147
122
135
72
78
115
133
125
143
81
103
82
59
103
141
181
108
117
123
139
98
123
136
69
94
151
102
91
172
102
102
54
93
89
113
113
133
156
113
112
160
96
125
129
111
54
108
99
175
126
143
93
95
100
115
114
87
102
103
160
143
138
108
151
74
102
82
146
102
77
100
101
100
127
87
116
102
141
90
95
172
168
124
95
106
115
106
119
145
155
193
159
102
127
161
154
156
68
87
91
98
85
160
103
78
78
125
77
116
165
121
96
108
106
192
104
86
112
105
81
113
124
82
139
104
135
116
134
107
100
113
92
144
121
111
125
54
83
133
49
95
81
118
95
114
153
100
115
148
123
99
102
74
115
93
101
169
112
78
150
54
148
154
153
148
113
61
129
114
156
144
118
96
174
139
120
172
126
93
98
77
105
121
127
133
108
98
98
94
177
122
141
157
112
143
149
116
81
113
133
146
101
80
83
108
139
119
49
93
142
150
135
149
101
94
144
119
85
105
151
94
54
120
150
74
114
157
54
98
125
136
158
110
151
144
59
104
110
102
81
115
137
95
82
87
104
49
111
128
137
87
106
100
143
54
101
90
116
160
127
125
120
134
122
144
105
129
193
87
54
81
92
103
127
112
133
54
103
121
93
101
105
115
120
120
65
203
54
93
122
109
108
112
138
129
102
136
193
153
114
108
161
169
86
74
123
124
123
154
99
90
112
108
108
68
76
169
122
148
140
126
148
133
81
129
103
150
118
114
102
45
54
110
102
74
54
108
141
78
104
117
65
134
138
115
121
102
138
133
116
166
88
67
140
151
122
133
131
150
124
152
99
59
115
113
106
105
143
127
54
112
102
91
145
162
90
98
102
118
78
102
102
95
102
122
95
98
59
70
130
99
113
190
110
138
109
119
90
162
144
49
125
126
118
159
54
98
103
98
133
194
95
95
77
128
121
126
81
144
79
108
129
133
90
144
128
128
127
103
151
108
95
121
76
129
102
97
95
116
108
149
123
144
83
95
69
79
144
98
162
100
121
136
125
59
114
97
159
114
77
153
81
125
115
150
123
125
115
75
148
112
108
131
145
103
138
59
169
94
125
127
84
96
111
79
87
88
133
159
96
76
127
83
150
54
87
158
93
114
54
91
131
129
148
168
160
93
122
131
123
120
133
49
145
105
131
129
102
115
103
105
74
127
109
105
143
113
167
148
118
172
68
113
108
137
84
121
113
102
186
109
108
148
148
111
127
92
100
108
112
83
81
73
54
98
81
138
132
108
80
90
126
124
81
112
102
102
115
115
99
88
182
59
125
140
76
129
164
86
145
67
111
147
54
129
95
121
132
76
83
131
125
102
200
115
108
96
118
118
147
90
120
91
59
81
59
95
204
124
81
67
118
80
91
113
161
80
102
54
130
82
116
144
96
102
118
131
172
76
74
95
143
54
135
177
133
148
122
115
97
76
128
148
49
135
139
135
141
116
87
83
113
108
125
87
144
115
125
157
129
98
122
123
129
135
106
98
131
78
104
80
140
120
146
143
156
139
113
108
54
103
104
177
54
90
108
85
112
131
90
103
159
107
112
95
92
100
136
118
96
107
145
108
113
148
139
177
114
128
113
102
111
96
61
102
130
125
67
125
109
90
142
67
79
131
102
152
88
108
129
110
113
108
90
49
98
59
54
124
168
103
98
98
148
89
107
49
141
54
118
54
125
131
133
97
119
124
59
95
153
59
45
98
144
158
103
148
105
156
147
111
85
49
140
95
101
93
171
149
61
135
130
96
107
126
94
92
42
108
49
67
105
156
89
76
118
108
80
96
130
49
81
112
121
106
141
61
103
173
139
144
102
84
103
140
125
98
118
141
127
69
113
85
98
101
81
228
77
85
138
147
131
86
114
141
146
125
133
61
105
119
142
102
77
105
54
54
104
151
105
82
169
102
122
164
101
118
118
95
161
102
112
145
133
149
118
92
128
93
128
81
54
102
113
158
148
120
105
162
93
89
98
145
134
148
83
107
112
143
102
132
92
145
54
81
74
90
101
140
109
127
126
102
119
102
153
54
113
116
113
130
128
130
101
98
116
109
142
108
118
139
85
84
81
95
122
88
165
116
151
102
120
83
103
126
82
96
110
69
129
150
59
80
117
87
133
87
119
109
98
96
129
102
143
94
158
98
108
153
103
125
103
110
98
143
106
67
150
87
188
123
108
106
95
98
159
114
114
76
163
54
78
127
186
83
103
145
107
82
81
97
59
92
150
158
119
103
157
100
143
95
86
140
170
105
129
87
147
133
97
80
142
118
219
98
102
118
118
95
69
93
133
81
95
134
83
95
107
115
99
127
119
95
90
87
135
130
78
147
76
133
133
133
150
59
123
101
73
123
95
54
121
110
108
84
68
136
54
153
137
106
103
140
174
133
115
149
135
86
153
105
112
118
106
88
145
61
177
117
81
105
100
96
131
172
145
89
133
119
90
76
125
49
114
102
112
95
102
137
139
83
150
124
49
195
91
49
81
98
146
135
81
113
95
97
97
153
89
102
73
67
138
67
95
68
122
77
88
147
111
77
143
115
133
87
133
111
126
111
145
134
98
103
93
119
113
182
87
102
61
102
99
124
108
130
177
106
102
109
180
83
111
108
98
129
107
153
122
69
93
151
96
87
146
110
114
104
133
82
132
141
137
126
77
114
95
129
95
154
98
122
143
144
144
54
113
77
167
118
86
77
77
90
144
102
144
159
131
133
133
85
151
141
169
123
107
90
133
177
180
113
140
112
95
67
106
87
140
115
69
151
163
108
148
114
80
143
160
144
108
93
108
87
109
76
115
115
92
112
111
129
81
140
96
106
49
54
72
96
102
109
132
139
125
78
122
194
74
132
102
129
92
102
93
139
117
194
128
80
72
130
160
101
103
165
127
95
131
95
102
120
116
136
97
149
107
106
145
125
140
68
76
76
100
132
122
101
137
49
102
54
144
120
61
109
95
84
114
131
128
71
99
89
125
125
128
130
116
59
80
135
112
80
68
113
148
118
154
117
131
131
114
108
125
54
111
104
96
98
146
142
102
116
74
125
120
93
136
108
119
54
110
120
93
84
126
124
119
113
117
113
133
99
73
141
161
161
102
99
137
153
107
123
144
94
167
87
132
98
87
95
157
80
68
97
167
146
143
83
162
116
116
81
113
126
103
127
119
89
124
74
111
78
125
106
88
78
102
139
165
113
138
125
123
87
139
149
74
125
118
135
116
54
98
107
134
128
125
102
145
150
106
97
132
115
77
104
97
106
90
145
116
178
93
148
146
108
133
67
105
109
87
119
148
144
79
116
100
145
105
54
145
94
127
82
103
61
146
126
160
154
82
137
96
146
87
98
131
87
180
128
112
112
177
115
119
119
119
95
112
105
112
141
126
143
90
111
108
59
82
99
143
135
54
49
78
146
82
106
81
108
90
150
97
100
143
133
95
122
114
54
108
133
120
104
92
105
145
142
122
108
116
54
160
114
57
119
103
103
135
80
122
49
102
151
128
83
103
125
102
140
116
103
106
123
191
106
153
154
140
105
105
132
128
127
107
100
145
137
88
101
100
99
144
102
158
125
54
59
117
131
176
87
73
148
96
111
49
143
123
73
129
103
123
122
67
142
59
67
140
98
145
97
54
113
162
113
89
69
177
133
123
90
100
120
78
95
156
125
113
137
133
113
102
93
108
126
95
101
102
132
148
114
109
95
158
165
132
112
141
95
107
87
103
54
81
115
90
144
96
108
54
151
150
156
74
124
144
118
118
67
49
108
188
132
108
136
114
120
197
119
132
81
94
49
135
141
86
108
99
92
74
145
188
116
181
114
106
126
105
102
129
54
103
129
87
123
92
85
75
103
146
159
82
156
147
109
164
123
54
119
103
186
147
92
130
162
54
95
148
54
117
98
165
108
114
158
144
105
96
54
79
103
54
95
198
133
115
123
93
127
95
106
93
134
126
166
116
108
105
91
94
54
179
128
67
138
109
93
113
102
106
161
125
118
123
108
102
54
140
77
97
128
119
142
114
127
85
88
90
106
112
158
151
141
141
107
145
108
124
137
90
94
113
59
110
134
101
123
124
96
103
98
153
54
87
113
128
106
81
59
124
140
106
125
114
129
89
85
81
148
98
73
161
81
168
148
177
112
79
143
49
54
132
127
130
180
127
108
106
49
94
102
81
86
54
166
99
99
87
76
140
161
95
108
123
102
123
54
138
108
83
177
121
98
128
61
97
179
111
102
178
108
148
108
77
108
164
150
95
103
147
139
120
101
85
101
80
49
133
103
45
131
135
113
133
163
131
155
77
113
81
102
128
119
141
90
123
106
87
100
175
101
102
106
49
146
61
163
115
97
122
123
125
136
103
151
85
108
95
151
106
101
121
131
101
127
153
97
102
106
155
156
149
79
125
49
144
118
93
81
102
139
135
148
123
114
130
115
135
151
103
81
127
137
107
146
83
94
114
90
94
114
116
157
109
110
108
121
103
68
102
111
106
95
74
117
144
106
113
108
153
54
126
103
111
95
105
74
144
76
134
54
131
127
163
122
143
183
109
125
83
128
135
78
174
115
150
133
113
74
158
116
177
98
103
81
133
152
101
154
93
108
132
102
108
83
74
87
108
78
101
120
81
135
106
102
90
62
115
173
95
167
140
121
133
143
74
106
137
69
134
137
81
103
119
127
95
130
54
65
95
124
135
169
118
82
103
101
87
136
120
74
115
124
108
105
159
106
65
102
65
186
132
101
136
69
133
95
123
143
99
126
194
102
113
148
169
129
112
123
219
54
121
122
176
54
74
155
179
98
122
143
138
148
106
158
116
102
170
104
86
119
161
92
108
115
97
49
97
77
140
131
82
113
143
49
173
157
140
112
54
101
102
144
119
123
97
74
99
127
119
149
142
127
121
163
105
89
102
134
81
115
118
122
89
98
135
92
105
138
95
88
129
76
65
139
133
95
102
97
204
81
76
185
82
120
125
113
92
104
138
76
115
110
131
77
85
124
54
113
81
166
107
144
105
98
108
61
182
104
166
78
142
177
99
49
146
133
108
116
132
149
144
93
106
116
98
97
118
67
121
199
103
170
162
177
49
130
148
111
123
162
80
93
108
49
108
130
98
105
147
120
143
143
126
89
146
119
134
126
131
103
110
124
83
108
164
118
151
180
111
97
121
54
98
104
79
79
130
90
168
70
116
108
99
135
87
91
68
87
172
54
136
156
159
149
81
93
122
129
150
97
103
130
74
90
131
98
93
123
54
96
123
112
130
113
108
98
173
132
98
149
76
108
101
93
93
147
155
130
176
97
82
107
117
148
108
95
117
131
160
153
95
67
133
112
98
91
121
49
103
145
144
95
141
125
118
93
98
118
97
95
93
108
95
114
177
131
149
148
82
91
75
73
81
102
128
145
74
129
103
150
96
111
98
103
93
123
131
97
95
104
124
148
120
85
103
152
156
82
75
120
148
113
104
160
175
116
105
125
180
138
79
131
103
54
150
102
115
110
96
76
105
165
101
84
153
104
108
78
126
126
154
77
166
137
77
108
156
97
90
154
127
100
121
93
124
188
150
141
135
74
78
113
107
177
74
137
139
131
116
122
99
103
148
144
153
124
113
143
107
106
106
181
116
82
105
145
118
127
103
110
90
83
104
85
120
153
103
128
147
125
141
103
92
103
115
163
189
54
135
84
131
67
102
88
102
80
125
127
113
137
95
102
108
146
104
95
107
98
131
119
95
165
54
116
120
93
108
102
78
85
172
76
105
68
79
49
89
54
121
98
131
123
54
177
149
123
68
70
93
104
109
138
130
128
137
103
126
102
194
147
105
122
96
142
90
144
87
74
90
165
102
108
114
107
122
80
95
120
59
143
80
126
129
139
125
67
132
149
90
92
54
102
144
59
126
128
83
110
124
111
122
131
125
104
54
130
104
143
54
139
124
111
134
186
102
102
145
122
59
125
130
125
103
95
96
117
59
143
129
134
147
134
95
165
78
96
63
100
127
181
148
93
87
90
93
101
49
109
76
59
78
127
106
92
119
93
76
112
122
85
111
88
115
108
144
122
74
96
110
126
131
113
106
104
59
126
153
88
85
118
118
161
117
110
133
212
131
144
168
102
103
79
144
87
106
106
72
54
61
135
127
138
172
150
129
122
105
153
68
135
94
92
90
113
78
194
95
57
130
98
87
130
142
93
105
105
124
143
98
104
129
95
140
93
97
67
49
145
87
54
127
108
91
125
78
92
138
145
143
130
80
98
77
129
130
168
138
100
164
91
128
59
157
106
163
113
49
123
128
135
102
123
81
177
116
78
143
132
49
100
138
107
129
125
141
80
113
113
112
99
113
115
103
91
89
102
96
135
140
82
147
98
141
119
108
90
150
94
91
170
127
111
74
138
174
133
149
98
122
125
142
118
136
201
119
81
119
67
154
171
95
100
107
98
90
122
102
125
148
101
100
97
128
90
124
61
105
148
108
135
121
149
54
134
118
103
137
132
87
74
78
107
111
120
99
114
107
82
127
83
143
98
78
108
135
113
104
110
170
83
103
145
156
173
95
148
84
104
105
131
169
69
119
59
102
170
125
85
131
102
117
120
123
93
129
93
54
104
138
95
123
123
142
188
98
96
74
135
123
59
94
125
106
78
77
97
113
125
130
145
158
205
157
59
145
143
141
101
112
169
142
90
69
111
96
118
84
148
97
54
126
113
93
113
115
88
116
103
124
54
140
98
102
80
108
102
101
108
117
139
79
129
92
77
95
110
49
146
106
139
148
95
145
100
144
91
206
131
140
161
49
103
177
105
132
49
76
129
131
111
123
87
93
157
115
177
99
87
122
132
135
108
106
125
118
54
49
77
139
106
156
153
54
97
123
98
108
133
115
97
135
123
86
81
120
180
122
171
152
129
100
113
112
123
102
83
78
107
114
128
93
131
128
77
54
108
112
121
123
108
54
125
136
95
84
90
148
143
86
131
101
147
112
131
129
85
122
107
89
76
165
121
97
159
49
102
91
135
74
166
98
131
100
125
109
104
98
77
165
137
145
118
101
140
102
74
105
108
102
132
113
49
113
102
123
186
153
118
141
125
107
98
145
143
110
118
103
136
148
131
108
112
105
143
129
102
126
120
49
49
74
83
119
117
177
91
170
90
101
110
146
99
156
95
76
126
81
117
87
120
149
143
118
145
111
97
111
122
152
98
81
108
145
124
77
151
79
78
54
80
143
120
54
49
103
76
106
54
133
83
125
161
105
147
86
105
107
129
109
142
107
59
120
69
78
78
54
104
124
59
120
114
157
168
125
137
82
98
108
87
219
96
141
106
95
135
110
80
91
54
95
157
154
184
156
133
100
90
128
95
163
118
49
115
108
115
103
111
118
148
127
138
93
90
49
101
115
112
140
145
73
104
146
61
103
93
103
85
88
122
132
94
99
83
132
93
186
95
129
102
97
81
74
176
59
93
147
108
126
143
121
74
114
148
172
74
135
83
106
127
185
162
98
110
90
108
119
124
137
49
74
67
80
122
118
147
126
126
100
144
160
96
124
124
102
119
74
133
77
102
113
148
137
83
101
146
140
139
132
90
124
85
59
124
146
123
101
74
97
101
138
114
66
103
113
119
93
116
49
124
68
98
105
121
83
112
159
130
149
144
106
180
138
135
125
113
153
144
95
118
127
150
201
135
152
144
107
100
94
112
108
81
149
78
107
127
142
113
98
101
103
96
148
89
103
115
108
143
140
141
111
105
129
82
160
97
150
103
182
156
164
88
127
144
134
95
128
145
141
144
83
95
142
132
117
113
115
148
54
112
98
102
148
102
172
150
125
94
77
118
140
54
49
62
85
81
184
101
95
78
146
96
112
200
117
105
121
54
112
99
115
102
107
128
155
127
77
79
140
94
94
102
81
113
97
78
98
54
97
111
103
169
129
146
82
190
89
74
92
104
103
158
158
86
92
80
94
81
127
81
125
99
141
128
110
133
89
101
117
126
95
138
141
145
112
118
145
84
93
89
81
97
54
113
107
159
92
76
116
102
77
83
180
102
107
126
91
133
92
108
120
118
146
133
77
131
85
84
118
123
115
184
78
84
148
102
67
93
128
103
86
123
113
95
83
94
95
139
189
97
122
103
85
128
74
117
78
90
143
87
131
135
98
131
149
143
68
143
81
173
98
140
123
116
83
96
103
94
139
144
54
107
151
74
101
150
122
131
129
115
112
133
124
117
100
106
120
103
116
115
91
107
89
98
104
153
122
93
129
103
127
126
157
133
120
95
54
126
99
65
133
148
127
127
83
118
102
54
139
160
93
68
125
87
139
121
110
148
144
113
84
82
61
145
102
141
161
87
145
77
76
99
73
170
102
111
132
92
117
121
123
118
129
131
133
106
105
163
116
81
59
77
54
104
146
90
134
132
129
118
115
104
49
122
121
106
158
136
78
135
131
113
82
95
106
108
128
129
108
128
152
54
102
119
95
106
87
98
143
54
117
108
116
114
102
120
77
138
155
140
74
124
126
87
149
85
103
115
101
146
79
145
49
49
123
152
136
54
150
112
93
92
121
54
113
113
102
82
87
109
150
127
157
95
122
128
90
76
139
158
123
72
61
134
95
115
90
128
81
141
102
80
93
74
129
98
109
106
94
126
128
105
164
144
161
127
108
95
129
117
90
133
102
172
98
129
127
105
139
122
73
127
65
144
117
148
94
114
126
59
149
95
142
125
109
135
94
146
141
80
102
127
108
153
133
145
93
115
82
123
146
87
113
67
133
114
91
96
91
128
143
165
118
122
105
96
107
95
110
152
54
92
100
137
103
101
135
114
112
126
111
140
122
138
54
125
160
158
113
194
176
104
144
99
122
150
115
83
92
83
136
125
162
102
101
149
116
115
129
147
123
130
82
107
124
101
124
98
131
89
164
120
142
131
90
104
74
87
118
118
116
85
131
67
54
110
128
74
94
106
110
87
125
103
103
85
109
59
146
67
113
86
127
166
119
95
54
104
114
92
110
79
152
162
108
139
83
100
103
128
127
135
128
144
103
111
136
141
108
113
141
54
153
118
54
198
95
77
95
191
146
128
84
54
138
127
81
154
174
135
93
54
120
94
131
113
125
139
128
89
151
77
127
113
49
77
113
45
120
89
142
104
78
83
87
133
100
59
128
153
113
103
128
141
76
54
102
161
112
108
144
78
126
113
121
95
77
108
193
103
85
98
127
128
133
129
108
96
105
89
119
177
62
87
82
100
89
74
54
103
131
91
123
100
112
110
95
92
113
169
132
138
132
144
94
129
158
148
95
101
89
90
98
154
100
114
131
113
95
115
106
131
128
132
128
161
76
117
72
134
107
74
130
148
82
145
150
68
108
54
111
103
81
97
49
114
103
111
108
123
80
115
115
134
117
85
54
156
104
117
173
133
177
96
191
127
118
54
136
106
141
105
96
80
54
124
176
118
119
146
101
101
95
107
115
191
85
144
83
142
162
144
141
90
94
74
185
177
120
108
74
112
154
185
111
97
102
49
115
115
54
201
106
166
112
111
149
54
125
158
117
126
108
202
109
90
128
139
165
133
78
102
103
59
148
125
109
139
103
84
95
97
96
131
113
108
151
165
80
67
133
90
76
155
116
80
102
121
121
205
114
101
157
90
119
109
127
144
154
76
74
95
83
78
96
106
141
135
95
115
54
125
101
153
105
120
95
102
107
161
126
151
74
114
155
137
155
146
98
77
149
110
91
100
133
114
86
135
103
54
158
125
103
131
146
106
95
127
90
112
102
132
54
99
102
59
137
65
171
148
90
111
130
112
133
77
139
98
115
141
93
123
54
97
165
130
85
95
107
147
105
132
106
103
90
92
124
120
90
112
54
83
130
116
105
93
143
106
96
133
119
125
118
122
139
95
104
102
54
133
106
105
74
74
102
94
100
90
107
108
94
131
90
115
137
102
131
127
92
137
68
140
104
107
82
108
126
112
133
118
141
97
69
114
49
100
81
147
135
104
127
108
158
119
167
112
127
59
93
98
172
158
116
83
83
127
73
128
78
127
148
103
90
155
90
102
147
91
134
133
186
86
117
155
147
82
95
131
134
74
98
129
111
149
87
95
49
108
125
122
94
141
81
108
89
94
114
127
77
113
135
69
78
141
109
81
141
59
103
91
140
90
115
136
177
108
81
140
167
61
139
127
146
78
96
92
96
97
87
103
122
148
146
92
93
114
102
91
54
140
154
45
98
116
114
130
150
126
158
153
150
158
144
128
107
104
105
103
127
78
124
179
114
131
127
141
107
118
83
77
85
91
136
118
106
123
139
110
54
102
77
87
167
169
101
97
105
54
54
103
113
93
127
110
127
100
84
92
133
108
95
113
67
122
108
95
94
95
118
81
102
97
133
103
112
126
98
102
107
123
121
176
128
138
108
115
143
121
125
173
109
108
112
54
54
119
119
54
90
123
128
113
81
135
106
95
61
111
110
83
131
117
145
93
123
102
146
101
140
54
54
77
151
95
104
108
135
59
99
131
108
108
138
81
102
68
125
97
125
106
113
115
54
100
101
96
123
96
101
76
109
118
131
142
151
138
89
124
83
102
129
126
120
90
63
149
93
93
108
131
128
148
131
107
105
54
73
105
61
104
148
54
90
91
68
72
141
80
100
95
77
93
131
138
54
146
87
108
81
143
86
127
104
123
125
54
98
68
186
156
133
177
81
106
104
93
131
105
90
61
67
103
172
128
120
84
98
103
100
102
71
82
99
100
131
67
95
138
134
95
54
104
112
83
108
102
107
171
98
157
81
135
106
76
144
109
96
140
86
149
95
85
155
162
125
143
176
130
87
95
125
81
131
110
142
127
95
98
112
105
132
90
128
154
119
118
81
54
113
49
78
153
172
127
106
154
97
100
155
112
153
54
87
105
79
93
161
143
93
81
154
161
100
105
111
114
132
102
115
101
137
144
95
49
81
129
119
123
140
114
76
121
54
124
124
102
74
141
95
98
113
177
102
98
126
121
61
93
144
160
100
122
126
88
108
103
116
82
98
120
74
132
127
158
128
104
119
95
90
103
135
141
153
133
88
158
106
77
146
107
141
49
87
113
88
117
177
94
59
127
108
106
143
78
128
151
154
54
118
98
102
116
108
125
105
90
91
131
99
110
125
115
68
137
90
98
147
61
119
141
154
83
134
77
137
135
106
138
90
91
141
98
103
84
106
139
140
108
123
113
117
180
69
98
154
109
95
106
92
124
78
106
132
142
110
152
143
104
92
153
87
129
115
125
139
102
98
111
78
100
219
120
115
182
117
87
83
92
120
108
180
134
97
108
131
96
92
129
131
67
115
111
133
146
169
168
147
90
128
78
113
134
90
104
96
100
142
130
101
108
105
92
81
139
147
87
95
121
98
105
138
123
114
100
124
162
126
61
146
80
115
69
62
90
133
148
93
49
113
137
148
117
81
132
82
108
106
119
95
131
140
123
136
95
115
96
128
150
103
131
113
147
135
108
120
79
131
87
77
124
107
105
54
156
113
87
121
131
149
155
99
153
101
96
116
95
102
120
113
98
147
113
137
108
54
128
180
124
167
103
78
113
85
135
98
138
49
86
144
196
93
99
54
116
147
100
145
112
133
127
102
126
141
131
97
103
199
118
100
82
80
141
165
125
98
105
94
81
144
128
86
54
116
54
173
99
110
114
102
54
111
54
61
118
77
133
90
74
90
114
117
93
110
169
105
200
134
105
106
141
122
117
187
77
107
129
127
149
138
122
82
99
77
95
157
100
136
141
108
117
137
123
134
49
108
86
131
102
97
112
117
90
112
131
112
146
95
140
101
110
131
138
117
108
83
106
82
93
131
127
103
149
150
126
199
54
99
94
148
111
49
115
112
155
110
86
101
91
108
135
139
98
69
108
118
95
127
149
54
122
124
87
91
54
154
57
114
105
95
87
126
113
132
54
54
92
122
123
138
109
200
96
118
127
118
96
154
144
82
153
127
49
62
49
105
87
161
94
94
101
98
85
181
169
136
144
124
112
128
146
138
156
115
132
128
88
84
117
128
103
145
97
116
113
125
57
158
101
94
115
82
98
159
83
90
148
87
143
98
146
113
128
116
119
125
120
104
98
126
113
104
84
96
68
92
102
54
140
124
129
122
144
81
116
95
147
126
122
131
120
87
108
83
90
126
124
126
89
125
87
134
87
144
135
82
93
111
117
122
141
135
105
134
138
96
121
105
157
100
98
109
158
103
146
98
103
113
93
102
61
127
106
113
99
49
87
83
139
149
114
139
130
115
54
99
120
120
103
96
67
148
109
108
93
92
130
182
118
116
71
67
105
149
124
119
133
99
169
120
158
119
153
214
157
103
122
117
87
76
112
120
121
107
102
125
129
112
85
95
133
129
54
108
108
94
180
145
81
102
150
158
49
103
95
98
81
133
163
81
98
105
126
141
117
99
127
136
105
96
123
151
118
121
135
95
74
158
125
152
111
122
107
101
105
142
119
120
102
49
54
108
49
105
129
140
138
74
102
125
117
115
97
120
158
104
167
106
90
87
124
115
120
93
115
88
93
103
84
115
162
112
135
155
115
122
112
127
102
88
85
108
142
156
109
100
127
145
169
98
54
128
144
105
101
67
129
97
95
149
98
93
77
113
144
69
129
154
162
116
132
105
144
114
127
100
98
139
132
144
118
148
126
121
112
103
139
149
134
140
118
117
77
127
146
106
131
103
127
115
120
142
70
123
69
76
83
138
118
102
90
117
142
87
133
85
93
108
154
84
93
109
102
94
81
76
91
86
99
119
144
122
105
149
91
157
125
122
113
139
123
113
110
139
49
83
124
108
131
95
105
172
92
86
128
103
167
122
115
74
73
98
140
54
110
140
87
107
118
165
106
148
135
61
54
102
90
125
138
86
113
105
131
148
115
109
147
102
122
129
94
87
98
62
108
148
151
96
113
90
149
178
113
128
139
169
93
113
76
107
90
113
120
104
112
95
133
102
178
132
149
91
102
74
103
54
101
115
116
108
130
49
88
79
117
84
92
118
95
135
103
163
122
93
104
102
161
122
98
140
98
114
173
126
107
199
153
54
135
89
108
93
122
61
146
130
109
127
135
95
86
123
92
101
131
135
108
102
103
129
102
88
126
93
74
96
90
78
54
54
61
107
67
102
143
112
125
109
108
119
158
87
125
102
150
54
113
142
108
49
87
110
125
78
131
124
131
105
105
103
160
100
98
106
87
79
121
105
54
126
123
103
122
91
125
151
113
151
194
143
149
143
104
90
78
107
104
115
133
126
81
126
102
123
90
113
84
124
148
140
102
115
99
134
160
141
93
103
127
96
95
138
109
114
87
139
99
81
116
140
130
135
127
88
86
59
120
102
135
95
163
123
135
108
133
112
90
233
203
103
99
102
190
104
99
146
89
145
123
68
106
114
102
173
105
85
96
140
101
102
108
85
110
145
96
54
177
113
103
127
84
90
49
110
98
168
120
115
145
49
91
144
140
141
112
112
133
97
103
117
81
133
135
120
119
125
183
160
127
116
107
132
148
143
112
121
102
147
136
176
98
151
59
150
133
106
87
128
102
148
145
131
59
103
90
132
114
102
83
98
121
132
144
54
131
83
90
177
102
131
156
95
86
144
90
54
87
114
81
59
110
74
78
146
54
102
117
143
117
117
74
122
137
100
112
130
101
97
113
89
81
124
125
125
120
82
146
112
87
105
100
102
87
87
94
106
103
147
123
95
128
102
102
122
129
155
112
148
156
95
125
98
127
108
93
166
111
130
125
145
158
130
110
123
178
134
120
77
131
120
76
82
107
125
97
105
138
115
96
102
87
127
135
160
128
147
148
143
128
143
106
144
140
125
54
76
151
77
145
85
139
59
59
85
110
107
108
127
109
59
153
89
98
82
82
148
124
177
132
137
107
122
116
93
147
49
123
91
59
128
79
98
113
106
45
74
112
123
165
144
181
116
82
112
75
118
147
81
95
108
112
90
102
107
84
167
159
146
133
108
126
122
54
89
135
106
145
96
105
134
96
86
85
108
79
89
49
87
54
104
82
81
98
139
101
177
76
93
74
92
144
113
90
95
194
115
89
91
142
49
98
104
102
128
116
153
106
118
100
107
134
102
113
101
68
100
117
108
134
139
104
120
190
111
93
107
93
117
131
67
54
103
84
148
156
108
121
148
127
128
141
158
85
102
135
152
122
92
138
163
91
106
144
96
102
137
148
87
143
137
141
90
125
106
143
140
115
54
99
185
191
110
179
135
131
102
158
95
54
120
116
100
76
104
118
113
131
85
119
125
87
116
131
148
112
108
175
133
100
144
126
146
125
193
148
143
87
98
147
148
87
151
107
109
103
59
165
67
54
95
81
130
142
81
127
97
131
102
83
117
105
133
106
89
116
102
119
175
97
117
126
78
173
131
125
87
87
128
144
123
125
127
108
74
82
116
118
144
138
59
179
93
123
168
124
89
80
133
77
187
76
81
125
103
141
118
186
106
183
144
137
144
49
129
108
116
105
108
101
144
155
93
102
108
122
180
105
114
127
99
102
91
97
141
77
95
61
160
144
114
103
128
129
127
49
118
139
98
67
162
148
161
115
157
96
133
76
102
137
139
77
94
81
82
149
87
157
131
102
96
105
127
150
78
161
141
139
76
103
94
113
103
77
102
85
123
144
103
102
118
108
106
120
103
135
102
127
133
93
163
129
142
98
133
158
128
103
177
170
149
128
149
118
119
113
125
70
127
142
120
98
49
102
129
74
141
102
112
131
191
98
98
49
145
145
95
102
129
133
114
98
95
140
90
87
61
54
104
81
123
128
74
87
78
143
142
103
108
81
148
132
91
150
91
117
67
120
120
105
128
115
123
167
119
120
98
119
140
112
96
90
97
54
84
103
54
90
54
121
117
95
159
95
114
82
102
120
143
138
127
83
108
122
85
86
119
95
139
135
166
98
102
158
96
96
129
107
125
109
67
122
82
139
144
98
164
117
124
125
163
127
98
103
94
120
74
54
145
123
145
95
103
98
101
99
141
140
110
94
134
188
74
82
103
126
138
93
83
128
131
101
122
100
121
113
126
122
120
114
167
100
103
102
158
131
143
104
102
120
49
54
148
112
144
109
159
99
150
78
98
82
113
119
101
95
74
118
101
67
114
88
77
126
128
137
92
74
49
120
49
78
110
142
122
54
144
108
87
54
88
81
123
83
147
68
93
109
157
187
162
98
131
177
99
87
125
143
93
148
140
94
181
143
102
142
85
98
108
123
131
133
88
78
67
120
49
102
144
87
144
68
132
100
102
69
118
90
126
174
107
59
159
144
78
150
148
61
54
140
121
115
49
127
113
109
149
123
76
137
127
182
175
148
134
91
133
98
100
120
93
113
153
139
120
113
139
125
202
135
106
109
130
147
81
97
122
134
125
76
81
122
115
154
97
137
115
98
127
106
107
141
107
146
91
102
109
83
67
111
128
147
173
114
152
160
98
82
77
95
93
105
74
134
94
108
111
117
129
54
112
99
95
108
80
59
59
142
122
102
175
154
168
170
126
148
140
63
102
67
117
159
100
124
108
102
121
90
54
81
129
120
122
91
90
98
87
74
139
153
155
81
85
123
93
54
95
118
78
113
84
101
89
113
126
135
103
131
138
145
101
148
61
103
125
160
92
111
125
49
117
98
108
103
54
101
104
125
105
95
125
102
140
172
117
84
111
101
54
127
110
126
84
163
120
54
113
160
85
57
113
159
114
131
133
98
147
102
119
125
131
171
127
167
109
102
103
125
93
108
148
104
67
161
113
91
134
123
102
122
157
90
133
153
120
67
61
124
141
112
95
118
155
103
135
158
143
125
81
81
144
115
90
98
125
118
82
91
161
115
120
95
54
117
91
131
147
136
59
97
87
77
157
158
95
78
85
163
144
97
105
120
103
124
109
148
149
102
115
125
108
118
74
170
143
128
118
108
162
140
128
49
92
131
118
94
81
114
112
61
54
90
102
69
159
143
143
42
129
125
104
91
153
95
137
135
138
118
104
166
96
98
154
128
125
125
102
105
123
143
104
117
118
135
108
140
128
97
87
166
61
126
113
146
105
98
168
143
131
119
111
115
98
123
93
82
76
95
145
74
109
76
107
114
108
100
98
148
88
120
106
98
107
83
139
171
127
83
155
103
110
102
113
77
140
95
93
118
107
92
127
102
107
147
139
87
132
105
103
88
77
54
169
150
158
141
157
146
127
90
59
96
132
98
54
131
74
131
93
100
108
73
113
124
81
102
61
89
67
108
90
77
103
117
205
102
117
139
120
122
154
172
141
127
95
145
177
74
59
106
170
105
107
105
113
107
131
115
126
127
107
112
105
125
167
98
112
76
100
75
171
156
95
118
80
112
98
114
98
153
102
148
122
129
97
164
108
84
146
140
98
146
109
123
174
67
147
86
113
54
150
81
100
67
164
149
151
160
110
150
108
92
122
98
87
98
165
129
106
110
74
143
133
194
95
73
95
139
179
116
148
144
116
105
179
113
96
109
97
122
172
122
67
125
102
135
133
119
122
87
127
133
168
146
99
182
104
109
128
126
135
110
76
120
174
108
175
125
147
96
96
120
114
92
152
107
146
59
107
180
186
111
140
150
94
108
93
85
122
118
130
102
129
190
98
113
54
85
128
123
98
148
148
162
95
125
91
129
126
81
128
93
98
102
137
81
125
160
95
77
122
83
180
128
76
200
114
97
147
120
98
100
135
115
119
112
140
202
130
146
135
153
98
123
102
116
112
67
100
154
102
151
104
108
104
142
108
102
148
113
112
103
119
102
106
165
149
96
112
202
87
135
168
130
104
139
119
95
135
94
116
82
87
105
123
141
82
80
136
76
137
76
113
120
107
93
105
121
148
168
81
115
117
129
127
154
126
113
143
117
123
123
54
76
102
95
81
118
129
105
105
140
95
110
105
113
105
177
104
87
57
102
109
115
118
159
139
96
124
89
118
96
106
96
161
108
128
122
102
102
139
104
101
169
102
103
93
114
80
119
93
81
107
126
121
93
144
149
134
107
82
139
122
106
83
146
92
95
190
122
95
144
102
61
95
146
92
139
138
105
158
99
90
91
86
109
103
160
113
128
141
129
135
59
84
81
188
102
126
98
142
100
121
108
150
107
115
95
102
125
147
128
158
109
102
105
128
145
125
97
80
82
86
104
106
109
120
108
80
98
117
152
95
125
140
102
74
120
108
73
95
119
102
98
132
113
81
131
156
133
97
116
54
106
157
120
105
105
74
103
98
165
118
107
145
144
78
180
96
95
138
129
59
84
108
118
114
99
108
97
95
107
95
165
128
139
111
101
139
110
100
105
110
116
103
144
81
107
95
79
89
130
112
142
49
77
127
108
119
120
128
131
167
154
87
188
137
81
110
131
95
147
134
143
96
143
133
124
140
139
139
92
108
81
151
163
180
93
102
104
121
132
54
124
128
49
157
123
145
68
112
49
133
49
131
83
96
138
83
153
135
133
234
111
129
118
125
98
113
168
143
119
82
135
200
76
140
121
54
153
185
135
127
84
139
108
137
54
106
131
85
90
113
125
96
61
121
98
125
93
158
98
108
133
163
101
82
113
54
81
87
85
81
100
95
91
131
108
106
133
95
103
140
82
95
185
149
124
125
149
95
120
134
157
163
124
168
109
126
95
111
102
132
149
148
124
124
92
59
49
153
158
142
95
89
87
130
112
97
116
82
165
178
54
130
106
153
91
113
123
74
72
135
134
133
143
106
143
139
143
120
59
98
133
165
91
77
117
156
81
146
106
121
169
102
95
106
147
108
102
147
144
142
95
108
106
101
123
106
69
59
54
98
117
165
138
163
99
106
99
105
111
102
133
118
126
105
145
81
107
98
100
94
69
113
88
109
84
113
117
81
140
146
108
163
74
123
143
149
102
101
107
54
106
132
113
54
110
82
104
119
142
118
107
107
130
87
106
131
108
105
141
112
102
49
103
102
114
81
100
105
102
123
59
135
140
104
143
137
54
138
130
104
108
81
87
141
54
155
119
94
105
54
162
140
125
154
152
165
143
126
120
158
157
119
109
102
111
98
112
110
95
146
111
95
83
49
170
138
123
160
78
109
104
108
81
108
108
131
128
109
96
91
108
150
77
103
77
76
106
112
148
133
93
81
108
113
108
108
100
120
106
110
141
125
111
159
89
134
157
95
102
105
154
94
163
113
82
159
102
147
115
77
124
101
108
113
150
112
78
151
95
74
148
84
115
114
112
186
103
102
96
54
123
106
96
91
132
105
69
87
86
78
131
137
110
87
134
124
99
102
119
128
112
69
49
81
110
114
107
122
109
106
148
85
77
105
103
118
198
161
185
103
95
86
129
130
133
112
117
78
54
142
141
59
137
112
101
99
49
154
122
164
119
81
117
67
148
135
105
119
121
125
118
114
95
164
81
118
70
163
133
108
114
79
144
76
125
54
59
200
134
109
106
187
163
89
117
98
95
98
89
127
148
99
130
67
143
175
110
54
115
103
54
49
54
86
85
69
104
103
155
179
103
111
70
90
162
78
140
114
122
126
96
133
49
98
161
195
107
103
155
74
141
108
125
80
163
172
96
78
131
125
144
170
177
102
155
135
154
140
121
133
116
91
110
147
137
133
108
124
137
145
124
188
87
135
147
120
99
149
102
95
179
141
125
54
129
123
180
98
156
54
104
134
128
76
125
96
123
108
140
87
136
133
95
113
113
146
118
123
219
149
127
96
95
67
127
99
137
99
129
135
101
144
153
104
118
112
79
143
82
102
108
105
165
173
123
154
101
101
98
109
108
95
110
102
110
115
81
75
153
102
120
98
95
134
140
85
100
121
74
59
122
95
90
109
163
161
83
126
82
147
161
92
67
80
93
98
74
99
122
83
95
149
147
105
143
63
152
122
116
121
95
90
121
139
87
120
82
120
127
106
93
59
109
114
108
124
118
115
127
83
118
100
133
169
147
54
129
147
167
92
108
158
79
106
115
140
105
113
94
127
143
125
143
153
148
84
76
102
193
150
113
155
65
96
125
106
168
158
116
97
147
136
90
140
95
65
126
148
106
99
128
137
177
67
146
147
95
105
130
99
127
158
157
103
126
104
54
81
74
110
109
130
151
88
155
124
145
190
159
68
119
120
108
112
135
152
103
102
132
143
151
120
54
95
108
101
146
117
77
69
100
102
151
179
108
110
76
118
202
87
164
91
131
77
102
147
82
129
126
96
83
112
117
93
97
103
98
109
92
131
74
149
59
116
152
129
105
95
155
85
125
102
102
85
100
156
108
101
102
129
154
69
125
95
81
188
83
180
181
185
88
104
102
76
103
131
162
96
112
67
121
151
87
115
95
105
126
72
125
103
115
133
150
121
122
108
54
98
127
137
113
107
103
87
129
124
94
78
112
115
150
91
94
143
91
135
148
102
117
81
144
112
93
127
162
118
165
54
181
105
158
54
146
132
137
98
170
145
59
103
118
125
105
123
90
127
61
148
125
119
155
117
125
90
113
108
120
123
151
124
114
169
117
125
140
117
91
125
129
162
142
119
113
180
101
88
113
135
123
91
156
139
84
177
133
81
54
102
123
107
113
95
59
114
96
85
200
137
150
101
102
106
134
154
206
106
139
87
138
93
151
105
54
123
108
136
96
128
93
95
101
142
59
96
111
91
125
174
184
161
90
121
97
105
140
151
115
83
132
143
212
80
104
95
129
132
96
122
157
191
113
135
100
81
124
76
158
96
147
83
138
154
94
81
81
99
118
117
146
135
133
102
113
146
128
90
98
190
120
108
125
149
119
131
102
125
125
112
110
147
128
128
100
102
116
182
125
154
197
143
150
121
113
138
118
122
137
54
93
115
152
92
95
168
147
129
93
159
144
123
140
102
83
121
109
61
123
100
168
98
134
131
104
113
116
81
133
95
129
115
106
54
98
125
49
87
141
143
146
150
98
105
129
128
115
116
142
103
81
101
144
182
141
86
83
128
84
103
131
105
108
131
130
137
98
100
106
103
78
95
132
167
127
106
114
100
154
148
102
153
74
117
102
127
122
127
120
120
104
102
148
67
137
54
95
106
103
165
139
137
67
145
172
140
94
155
122
116
100
107
98
168
100
149
135
141
137
94
120
101
54
177
129
158
125
108
132
111
54
98
103
126
98
54
125
59
133
177
124
98
120
160
105
121
160
106
157
108
142
92
102
76
59
79
85
168
81
98
109
125
83
119
146
134
113
126
76
125
147
123
130
146
115
127
111
105
76
110
101
114
159
59
76
67
136
73
133
77
116
92
80
128
107
177
103
118
131
123
123
121
93
49
162
131
98
139
116
106
126
102
102
146
98
140
115
96
59
131
108
125
116
123
144
82
120
97
122
168
122
89
98
73
90
86
104
101
102
121
122
137
84
107
111
143
54
167
92
146
141
79
107
154
131
108
90
162
98
98
161
148
125
129
140
67
88
115
141
54
143
118
132
103
125
108
156
108
88
83
146
61
142
95
81
108
104
77
54
96
87
98
116
144
99
125
106
107
93
128
102
168
125
113
69
107
102
118
104
103
113
126
118
93
168
134
135
113
89
54
140
106
124
155
124
128
54
124
113
66
116
115
54
135
102
128
49
126
148
108
131
146
143
85
144
146
106
97
99
98
108
107
73
54
81
125
145
103
54
139
143
68
125
133
124
95
130
125
91
124
92
100
87
128
124
61
102
130
115
145
127
73
143
127
99
134
108
99
79
110
123
146
98
127
112
115
147
107
113
81
95
103
140
142
98
138
151
81
121
87
108
98
114
77
158
108
82
110
140
121
120
116
87
67
110
168
109
95
116
96
103
216
98
140
88
102
123
140
123
100
81
114
98
105
117
102
54
131
112
108
162
152
107
109
139
81
102
77
54
128
77
49
98
95
91
115
87
78
149
147
104
82
168
103
110
122
122
225
122
84
120
103
82
153
163
102
105
87
161
180
95
69
74
119
122
121
128
67
128
125
73
144
113
123
152
113
93
125
93
141
80
108
134
136
136
54
112
82
173
54
175
103
184
95
117
115
77
119
128
102
96
119
105
81
102
121
193
125
117
49
160
95
125
155
94
140
179
137
119
127
105
128
118
147
125
117
59
120
114
123
113
113
126
143
126
122
91
150
102
59
136
95
99
139
54
99
120
132
124
140
112
81
100
59
70
132
54
125
101
118
98
151
143
103
90
139
91
54
128
90
148
136
113
69
117
96
128
67
125
130
82
91
106
148
54
83
108
93
82
151
80
112
172
119
84
145
151
95
105
155
84
112
155
106
137
128
125
156
122
191
122
128
98
54
90
105
152
125
107
120
49
141
54
111
134
147
103
152
112
108
103
103
104
107
144
113
125
179
54
102
109
85
102
132
139
82
131
125
144
109
122
106
61
49
137
132
49
125
77
98
129
99
106
97
146
171
82
122
117
127
111
154
103
120
135
177
125
165
143
132
107
54
129
81
87
135
104
49
144
67
115
227
54
99
108
116
112
80
98
111
131
95
109
95
122
125
104
129
163
76
59
163
149
54
103
74
102
90
103
140
54
102
90
62
81
95
145
59
129
148
110
132
59
83
128
87
111
165
54
68
139
76
88
128
87
148
79
89
61
85
128
148
116
118
81
130
133
168
91
98
54
59
120
103
67
112
118
140
103
145
95
99
126
152
133
100
118
93
131
110
149
95
140
133
73
49
113
108
135
139
74
88
112
87
90
142
120
148
147
159
134
92
130
143
54
89
91
96
54
169
102
54
81
108
98
157
68
75
54
134
83
88
110
120
81
127
95
149
125
126
128
113
97
125
123
105
106
97
110
113
224
125
77
74
168
105
112
90
76
96
112
161
133
128
157
177
61
117
125
120
61
81
124
121
90
81
54
165
125
101
94
54
54
135
131
124
123
65
133
167
148
106
166
87
128
129
143
124
65
147
67
149
159
147
81
140
85
149
122
131
103
109
151
103
102
95
98
158
132
134
121
107
115
140
106
132
125
143
138
106
146
155
108
123
119
98
120
167
113
128
87
59
78
115
49
90
59
129
81
87
82
95
126
148
118
129
95
61
111
141
93
119
88
133
91
109
162
125
81
141
95
125
82
67
114
59
113
143
69
185
78
95
112
84
95
95
49
154
80
103
115
101
124
129
122
140
110
113
150
113
125
125
80
154
100
87
113
108
148
90
192
135
133
146
130
149
133
101
95
113
129
54
89
112
158
119
114
158
154
92
122
95
104
113
87
54
117
165
170
131
54
76
125
125
139
116
118
100
135
81
81
98
101
109
114
84
109
96
104
139
109
123
137
113
113
135
90
110
125
105
123
123
118
112
54
147
112
124
102
115
102
59
158
93
59
79
112
129
98
110
77
146
87
102
111
81
116
130
83
54
69
97
156
142
88
108
135
144
135
110
81
143
121
106
146
145
109
95
116
128
122
84
142
112
95
133
126
142
105
100
127
138
103
114
93
125
82
49
142
119
83
125
108
148
133
96
89
101
167
122
156
84
142
121
105
99
143
98
115
113
103
67
130
67
94
102
143
76
159
134
163
145
122
111
76
74
103
74
115
125
153
81
54
90
124
93
170
95
108
133
138
131
98
157
89
91
42
95
156
131
139
74
81
74
92
155
82
95
121
117
106
128
87
88
106
131
95
103
110
112
98
95
100
123
158
82
135
119
96
125
99
148
127
105
100
91
102
157
146
177
87
135
102
49
89
142
114
77
99
92
150
158
101
102
81
145
61
98
171
149
117
184
158
130
81
164
129
96
121
87
122
148
81
108
131
80
102
155
113
98
145
49
138
103
54
93
141
105
66
111
102
125
102
96
108
168
121
107
87
147
145
90
74
49
118
54
85
89
177
87
165
165
133
108
68
131
102
134
54
141
95
150
102
59
151
88
108
135
162
126
74
94
54
106
101
102
79
74
74
103
144
106
144
88
131
102
87
106
123
128
108
54
76
135
61
114
161
97
67
105
120
106
120
142
126
149
152
76
54
108
151
125
116
128
111
119
54
76
126
131
108
122
111
95
102
77
95
100
133
131
54
131
106
89
81
49
116
106
124
54
103
90
49
143
150
128
106
102
83
170
133
121
100
150
116
141
96
154
95
138
199
118
177
81
49
127
93
59
133
158
139
158
110
124
144
158
135
108
145
118
105
104
149
108
158
105
140
112
95
124
151
76
144
137
54
132
111
54
141
121
107
165
102
157
87
122
59
95
67
137
98
158
148
67
54
146
140
135
99
155
98
121
77
171
69
134
144
155
69
54
76
116
91
77
101
91
54
108
131
125
65
66
127
54
74
70
148
98
135
121
128
74
115
91
85
93
139
133
108
110
137
179
121
74
103
89
109
167
148
145
54
102
126
100
81
102
131
68
111
93
115
124
95
193
158
110
49
111
148
67
124
142
98
127
102
112
106
80
130
107
133
125
87
119
82
67
95
134
102
128
103
174
49
106
94
92
160
77
146
104
108
114
148
67
143
123
95
127
99
113
106
115
95
135
105
54
113
92
112
105
93
138
127
108
120
87
128
99
129
130
112
102
96
113
95
107
59
105
78
83
121
112
105
95
164
86
157
140
138
166
141
120
103
218
177
162
154
140
97
69
94
130
185
134
84
74
165
83
49
137
127
76
73
133
105
144
155
153
74
145
108
194
54
125
157
68
126
76
159
136
119
101
94
135
54
112
73
177
122
160
91
54
142
143
135
104
156
49
105
69
108
91
79
96
93
113
159
134
102
103
176
131
102
106
151
113
108
141
120
54
123
103
125
74
148
130
131
124
123
82
90
77
113
164
87
80
130
77
89
140
104
147
72
88
109
61
157
213
143
102
143
109
102
105
182
145
125
131
122
110
82
118
124
109
160
98
141
95
103
123
121
125
105
108
103
87
95
77
134
109
95
142
134
155
90
90
114
146
77
101
96
98
77
92
118
110
132
172
110
77
85
165
81
78
116
93
134
105
164
134
123
128
169
119
100
54
90
105
117
128
145
96
150
133
125
76
151
151
92
59
141
139
101
129
151
112
81
118
103
61
133
160
114
138
122
125
81
128
98
154
116
54
120
194
108
111
90
97
144
123
163
93
148
77
103
93
177
90
81
103
65
78
81
174
158
95
65
113
106
113
165
76
102
102
110
98
151
133
128
103
54
97
161
163
162
54
164
118
136
78
96
130
137
101
106
160
117
54
189
91
49
115
126
125
125
202
110
158
125
68
105
93
103
116
81
119
109
98
102
116
195
102
129
182
103
124
125
107
135
174
96
59
95
129
109
103
140
54
127
129
78
112
148
122
95
114
106
93
154
118
117
78
108
102
163
87
102
115
145
134
120
143
74
93
67
95
128
123
62
109
122
102
82
123
54
77
59
129
96
128
97
81
74
137
112
98
163
128
122
151
108
144
145
153
111
158
148
97
54
148
94
96
158
138
142
49
159
54
97
89
107
98
148
121
133
114
109
108
83
121
127
103
110
90
76
124
74
102
112
131
121
178
91
108
125
82
135
125
82
111
95
128
148
95
90
83
127
105
101
153
124
105
104
96
86
91
102
87
105
124
81
101
155
161
146
101
149
119
107
145
124
105
108
105
118
91
103
72
98
141
110
83
90
102
109
156
54
68
120
161
140
93
135
85
142
135
150
104
113
117
112
96
67
109
85
67
98
74
101
133
90
98
125
122
133
123
115
86
143
97
110
76
76
104
54
123
106
128
118
108
102
113
124
78
128
143
147
172
124
81
94
127
54
105
113
135
108
136
106
148
149
126
108
119
97
103
54
175
87
90
128
177
109
125
103
143
160
138
102
96
147
135
142
98
96
138
128
68
119
54
153
77
114
104
143
108
128
102
116
108
105
98
147
152
81
154
105
118
101
102
136
123
122
87
111
120
91
127
78
151
89
125
114
68
113
130
180
98
122
107
65
158
126
108
108
59
102
102
136
74
147
119
156
144
59
151
122
124
102
54
179
147
78
93
85
77
54
102
95
113
137
87
119
140
118
129
145
94
124
114
95
139
126
118
146
131
158
133
91
108
107
101
91
148
129
145
143
104
148
141
170
139
125
143
158
129
54
120
54
115
80
108
49
94
94
164
143
112
74
124
96
92
90
105
145
131
105
117
163
107
102
153
91
176
144
108
120
140
186
113
88
59
93
140
145
146
129
124
49
103
146
59
116
103
116
89
156
140
166
123
96
186
148
120
91
74
132
82
130
98
169
97
54
79
49
96
103
113
137
169
115
113
142
104
98
106
112
129
92
131
119
148
93
93
143
54
103
118
113
99
90
94
115
142
90
83
161
87
113
128
93
106
87
108
90
102
116
129
81
143
168
54
146
91
87
54
130
145
69
105
122
74
126
70
84
161
123
115
85
81
77
89
137
106
177
96
125
121
102
118
96
122
94
164
90
78
49
135
98
167
96
96
82
102
136
76
103
133
76
117
134
111
103
100
111
84
76
96
118
129
152
130
104
90
108
119
90
49
93
59
148
83
83
94
125
115
104
103
78
124
108
70
95
178
122
83
140
128
98
96
90
78
120
54
91
140
98
104
87
103
146
128
90
92
95
151
123
131
135
109
108
120
106
132
168
102
123
125
165
126
81
135
54
95
103
158
113
157
147
96
166
105
108
62
122
150
107
81
98
105
112
183
105
154
95
54
108
94
138
133
91
144
106
130
174
145
140
94
49
121
91
123
103
166
95
171
151
163
106
115
96
165
150
93
108
105
108
111
103
85
100
95
141
102
114
59
59
138
108
113
93
113
79
97
87
149
97
144
81
87
129
87
117
168
81
137
131
54
155
118
104
140
100
59
163
149
101
125
144
98
144
177
116
88
140
135
124
152
102
111
92
143
88
127
108
108
122
185
149
49
78
148
108
116
108
139
117
59
98
150
106
97
141
156
111
74
105
143
89
179
143
95
106
116
194
76
83
90
149
102
125
158
155
194
118
81
81
98
150
140
121
132
96
96
95
108
128
180
125
105
126
119
99
131
140
169
146
125
42
105
134
121
67
128
187
54
128
115
140
106
108
74
119
114
148
124
182
131
94
105
130
89
49
139
112
105
59
76
98
93
61
93
95
113
69
83
102
170
168
132
164
133
100
98
150
102
159
109
95
105
133
148
114
87
147
129
67
111
103
96
101
108
110
139
127
101
111
109
127
115
151
102
108
144
101
128
90
76
181
128
129
101
97
95
129
108
116
124
113
101
101
132
108
147
61
127
78
54
115
99
122
98
77
159
113
94
107
144
187
119
91
97
146
108
108
119
127
141
147
167
106
119
112
163
134
167
100
155
95
54
122
120
147
85
79
146
81
83
80
132
108
108
131
93
83
180
136
90
54
95
139
98
146
117
128
177
85
142
119
123
100
158
67
116
159
69
74
168
59
102
142
123
155
131
108
81
96
134
156
143
117
135
133
118
124
163
103
115
93
84
125
90
65
165
104
88
85
67
54
185
95
123
131
108
87
178
106
102
69
118
74
93
128
153
111
169
127
94
100
115
141
103
96
90
159
133
83
99
97
98
136
116
123
96
115
98
67
116
108
113
80
124
109
108
107
112
124
123
84
54
136
107
122
155
98
59
95
141
112
101
95
99
116
132
112
83
54
54
177
98
91
76
121
94
113
112
134
119
99
103
73
120
140
108
98
81
97
120
99
95
81
180
148
49
94
143
125
94
95
81
140
88
97
76
100
76
127
122
124
118
116
104
119
49
54
96
172
131
49
81
108
110
165
135
126
54
101
111
124
85
100
102
118
125
110
137
79
102
156
122
151
77
110
93
137
101
102
122
95
78
54
96
130
96
152
154
153
108
148
81
87
80
76
112
81
116
74
145
98
152
106
103
110
133
177
127
127
179
54
168
119
88
142
54
90
165
95
123
81
140
85
136
145
164
114
108
49
95
120
117
153
168
120
87
79
153
83
93
160
124
116
61
78
87
128
103
68
137
110
87
86
129
74
59
93
113
141
115
54
84
157
101
140
54
107
147
90
114
96
110
123
124
140
171
122
137
158
132
99
147
87
129
84
154
69
145
74
106
96
95
138
73
135
88
131
148
133
124
81
133
122
145
129
73
138
76
107
98
74
54
45
95
105
103
108
130
133
116
130
93
131
77
76
98
133
154
91
147
105
82
112
108
127
101
143
102
102
49
113
135
125
121
49
102
133
128
158
87
95
76
125
140
132
80
143
137
115
146
139
142
91
135
126
108
76
121
107
116
131
147
137
125
107
144
122
81
144
102
132
148
128
122
93
139
74
135
128
115
115
130
76
144
54
150
108
97
93
137
97
93
140
112
49
135
119
107
119
157
168
95
125
104
106
140
143
54
80
129
121
132
148
95
108
82
141
158
120
108
99
108
76
54
91
143
54
91
171
100
99
103
158
97
148
145
87
100
118
153
143
90
113
85
117
78
138
105
101
80
179
80
110
81
74
140
142
144
153
170
105
115
102
144
101
78
155
59
115
108
122
105
107
131
106
87
103
140
49
82
113
152
95
83
68
113
108
106
113
67
132
117
121
113
83
54
108
131
148
87
121
159
113
125
109
81
133
98
113
95
156
114
102
135
118
149
49
83
98
95
118
109
148
78
114
142
115
167
121
106
158
112
101
93
153
133
74
113
80
108
170
138
107
112
108
108
108
154
143
54
98
98
68
139
123
96
153
110
123
54
54
105
118
119
169
135
54
140
122
122
74
54
103
134
91
170
130
96
87
158
114
144
84
106
54
87
108
106
115
177
106
49
179
105
132
118
109
106
169
77
156
123
149
89
120
90
98
214
106
121
131
108
108
129
170
134
93
152
141
135
76
91
106
99
122
98
120
98
100
108
110
188
70
118
100
135
59
116
98
90
143
74
147
139
128
103
120
131
133
131
103
95
134
162
74
96
140
98
177
95
146
77
143
138
105
97
98
159
103
117
111
144
125
87
120
90
74
106
119
102
113
113
129
141
108
96
137
132
102
95
81
84
168
96
81
119
74
144
139
61
144
134
97
113
158
54
130
129
94
82
123
74
77
117
106
112
49
81
153
105
123
136
114
109
109
99
144
173
110
103
158
126
74
113
95
127
147
95
124
142
144
110
131
117
103
122
95
54
95
95
102
54
98
103
113
106
128
109
123
99
49
132
118
49
146
168
138
112
117
177
194
95
109
95
127
89
144
123
120
109
111
127
177
68
149
65
110
93
59
162
156
91
80
102
126
131
125
95
128
115
144
143
94
124
122
114
142
111
110
160
74
118
123
106
90
149
81
137
87
49
104
176
151
103
167
127
117
116
92
105
88
128
140
133
108
113
54
95
145
143
99
168
129
100
127
151
115
102
148
142
130
103
150
148
123
69
45
115
116
161
136
134
156
108
81
102
129
94
96
113
150
65
100
138
132
100
125
173
91
184
96
96
105
104
83
108
69
105
84
126
93
103
98
126
95
148
111
224
135
117
90
125
86
54
168
125
82
94
82
54
105
92
97
155
85
74
140
59
143
108
93
124
113
91
105
82
109
165
147
158
123
113
196
54
125
160
107
150
115
90
125
148
162
143
105
98
112
141
121
132
156
118
49
110
131
118
119
94
123
105
167
95
110
156
158
108
106
82
111
190
106
113
111
112
123
93
123
114
148
112
113
167
90
148
110
74
148
81
103
119
128
148
118
98
126
115
85
54
59
102
102
87
96
115
138
134
120
86
107
105
106
113
78
133
109
102
106
95
95
68
139
78
143
108
94
171
98
130
149
234
87
76
145
49
97
95
115
124
76
92
107
93
149
113
149
54
90
128
141
122
157
144
118
94
114
68
89
127
77
95
118
59
179
93
90
129
76
157
54
119
103
87
155
115
127
108
123
133
139
54
84
105
132
89
120
130
75
108
111
134
98
54
165
54
119
134
123
80
135
103
125
166
131
118
127
109
152
155
95
102
97
159
149
135
95
134
67
104
103
79
157
117
99
148
105
106
108
81
99
163
85
182
160
108
133
128
161
113
87
78
77
146
135
143
144
108
132
117
122
107
125
54
89
128
108
91
154
107
149
83
77
54
120
126
74
177
106
74
122
108
99
127
76
144
49
107
136
133
74
130
152
81
141
125
148
104
108
133
161
97
131
164
160
155
166
134
102
76
128
125
138
96
130
100
145
95
130
54
98
106
76
131
176
95
83
114
111
100
96
176
142
124
118
119
114
85
124
74
102
143
108
124
149
132
141
103
119
112
115
108
108
127
125
106
79
84
123
165
161
67
54
54
117
128
105
159
118
96
118
135
103
102
99
119
140
102
97
108
140
74
100
127
139
68
142
100
142
67
120
122
143
114
113
147
54
95
157
128
132
110
141
113
82
119
139
108
93
83
155
97
89
98
120
127
76
156
105
161
120
106
85
136
128
145
94
106
128
96
103
111
121
54
121
90
174
112
158
49
106
49
142
169
146
54
69
152
90
147
108
54
128
87
101
78
108
144
97
119
130
119
111
87
110
96
89
182
114
49
113
77
120
110
111
96
92
87
133
103
81
116
114
93
148
49
106
141
93
132
143
151
115
107
77
132
76
94
59
103
124
136
140
117
73
117
132
144
133
148
93
90
135
109
78
112
149
87
106
135
137
144
99
141
54
76
83
83
111
70
108
102
148
91
96
84
102
105
136
134
54
146
112
116
139
158
132
89
81
96
49
167
80
87
118
87
160
83
112
128
108
67
166
61
82
149
94
155
78
175
139
145
144
108
128
99
150
114
123
101
95
80
100
133
111
177
156
149
108
134
125
116
92
108
84
108
93
102
105
92
54
100
98
54
83
176
144
95
80
224
106
120
49
177
131
111
106
94
140
116
141
103
87
139
146
82
148
157
141
95
93
74
162
105
76
129
98
127
147
112
118
113
119
98
85
114
69
105
122
77
136
109
137
122
186
124
90
108
102
54
54
90
97
110
162
93
102
65
102
199
146
91
98
166
158
128
134
128
177
100
156
137
83
111
113
121
99
108
130
89
54
102
160
89
74
105
106
89
127
102
137
130
129
158
158
120
99
165
86
155
167
98
117
107
104
122
120
113
117
165
108
115
127
144
98
146
126
127
83
87
108
124
100
118
137
142
115
54
105
111
172
119
116
105
95
98
102
120
146
106
74
140
95
81
135
85
133
128
95
67
103
83
131
116
107
95
119
154
90
80
135
118
136
172
132
111
138
96
101
150
111
108
101
61
95
125
133
116
159
110
154
118
115
106
74
95
114
98
131
95
137
123
144
131
76
95
120
90
127
103
162
177
59
106
74
132
115
140
124
134
49
131
103
177
128
132
104
159
94
80
143
100
105
95
164
150
67
145
111
82
92
54
123
148
133
145
116
108
98
78
158
100
107
108
133
93
115
146
104
139
102
113
135
127
133
110
83
81
102
110
143
123
144
118
182
77
81
114
67
122
91
81
161
138
83
103
197
130
83
99
80
115
74
143
129
105
120
160
108
122
115
91
90
93
95
118
78
93
121
73
54
74
137
84
108
114
146
176
54
110
161
81
139
78
91
109
123
90
81
88
199
163
145
126
98
109
133
91
108
151
100
139
77
130
110
127
112
79
108
61
115
105
94
148
157
82
110
112
177
82
106
158
98
164
126
108
103
76
67
103
42
152
140
54
129
134
140
129
103
91
111
145
101
147
98
76
144
133
129
95
54
83
74
97
102
74
104
135
113
108
107
108
54
76
90
131
77
148
103
112
106
102
93
106
115
67
99
105
158
113
97
98
102
107
59
103
108
123
128
98
116
144
122
67
99
99
95
91
157
146
92
108
141
113
112
145
137
103
139
114
126
122
143
49
92
98
95
169
109
98
102
179
67
49
143
104
186
150
106
163
91
104
102
140
148
120
173
158
81
143
113
195
136
82
151
116
85
91
144
118
81
59
135
134
144
120
74
96
108
81
83
150
147
130
87
108
74
71
74
93
155
91
127
81
145
124
98
135
59
102
142
110
140
122
74
129
117
87
101
98
112
153
93
94
108
129
135
116
122
177
124
115
76
82
99
153
107
104
163
97
95
135
129
152
120
82
141
109
143
105
110
103
106
119
119
120
129
107
140
106
122
131
120
119
90
134
99
95
131
180
100
110
126
78
77
127
150
93
134
105
124
98
148
186
191
102
84
95
113
143
124
83
107
118
128
106
155
122
161
54
103
113
141
139
49
108
112
98
139
49
93
108
132
112
77
59
99
123
131
59
113
59
125
67
123
68
113
125
84
74
139
102
54
99
82
103
102
83
138
128
168
158
162
142
161
54
139
114
131
102
104
106
133
134
139
120
90
161
78
82
118
123
73
141
92
102
81
120
127
105
90
119
127
87
54
120
141
141
112
106
124
131
153
139
93
151
106
112
117
115
154
145
102
148
127
74
129
130
124
87
151
73
81
126
129
92
105
160
66
95
110
147
102
108
126
65
132
128
90
137
98
82
104
120
84
95
151
138
109
136
45
125
112
104
93
108
108
106
131
141
112
109
102
127
139
119
98
153
129
123
105
125
150
129
107
107
99
119
108
172
117
125
113
122
103
83
108
98
68
67
100
126
49
140
84
116
74
102
87
70
74
121
136
103
118
108
98
184
216
125
113
95
135
93
101
150
142
69
150
176
107
135
114
90
118
141
98
109
106
108
124
119
145
107
96
74
103
134
92
106
94
83
128
125
132
135
133
128
93
103
113
119
70
59
160
177
150
81
119
97
140
89
143
143
117
101
83
160
111
116
78
138
108
108
158
102
146
118
126
57
91
113
61
54
122
115
105
117
59
134
146
91
112
95
119
122
161
80
145
142
148
112
135
105
135
81
177
117
105
76
94
112
161
135
156
150
82
133
103
119
167
106
158
123
107
108
134
54
75
133
109
111
109
111
128
97
90
143
49
106
108
96
87
132
116
142
95
144
96
97
101
80
133
113
96
94
170
128
105
121
120
93
135
134
84
61
133
90
177
134
90
115
107
154
119
112
157
131
54
207
93
180
100
100
116
83
78
101
113
108
116
139
111
125
102
156
125
120
98
136
98
81
94
126
106
100
182
103
165
78
109
95
107
105
103
118
139
137
138
130
116
117
137
158
166
111
127
96
69
125
49
127
96
87
133
135
95
77
120
89
95
82
131
77
135
106
54
81
139
90
141
73
132
94
148
108
91
127
129
122
124
77
148
78
99
140
127
77
115
98
103
134
130
113
201
118
133
148
106
140
108
129
156
157
146
81
121
162
124
77
109
148
108
94
158
129
59
132
108
161
136
81
81
138
74
76
148
148
92
141
182
109
158
91
102
122
89
59
125
103
125
105
136
108
77
76
95
113
89
146
105
151
119
102
140
81
130
105
67
120
89
88
121
124
116
83
92
76
129
111
125
94
162
97
158
112
103
138
90
115
103
117
146
77
99
122
74
81
131
105
68
155
123
127
137
140
176
144
125
133
120
117
80
82
116
104
105
129
106
112
149
110
84
81
140
181
111
67
67
135
144
112
59
93
98
94
107
136
123
158
127
153
54
116
127
102
150
109
116
173
81
100
121
95
141
97
81
136
112
142
102
108
137
96
133
150
125
54
77
98
111
61
133
105
101
76
175
150
130
115
90
102
93
125
125
147
59
92
169
132
102
67
135
180
97
140
54
114
54
146
77
121
140
215
144
77
106
113
105
114
59
100
125
98
151
125
140
147
103
122
115
174
133
151
93
146
159
122
102
123
89
117
118
141
118
133
128
141
88
148
101
106
125
169
112
111
74
90
147
78
180
139
165
98
133
108
103
106
130
191
112
73
130
97
105
90
127
78
115
148
132
118
90
102
93
91
98
162
146
92
127
95
110
126
68
104
140
107
155
135
74
150
113
137
134
103
109
140
97
167
108
113
152
99
104
59
96
112
95
127
144
130
108
123
128
74
108
115
74
109
109
133
129
106
120
105
78
131
148
166
124
95
148
83
101
123
142
122
100
118
153
90
76
102
137
98
102
121
81
95
126
114
99
123
74
93
95
105
94
95
107
160
70
120
95
80
54
145
135
100
130
147
146
108
82
77
133
133
95
149
108
84
122
107
118
80
81
149
93
95
87
74
190
93
154
108
159
59
144
83
150
196
138
59
127
102
81
165
137
139
95
119
123
97
121
135
94
157
93
127
116
118
125
108
108
128
67
168
136
169
170
93
81
68
124
127
101
176
74
137
133
54
105
118
145
124
117
138
105
177
69
133
95
74
168
79
141
129
131
178
90
95
96
125
131
120
59
115
91
92
125
102
65
116
59
95
105
93
133
127
79
149
86
117
107
128
139
110
114
95
108
116
93
105
128
148
98
105
179
54
141
79
74
141
49
98
103
140
98
133
122
113
129
49
108
106
69
118
144
103
81
108
54
145
177
147
117
81
69
104
120
117
123
80
90
110
120
84
100
138
122
87
125
177
97
138
138
102
102
130
89
143
95
167
105
54
175
165
127
139
81
85
120
142
149
97
134
181
158
135
93
54
152
115
77
131
123
175
86
96
90
146
54
54
128
122
90
144
145
104
125
109
81
124
116
83
87
100
113
49
148
107
135
81
113
49
76
194
176
118
111
104
130
90
80
124
79
86
140
126
142
161
158
107
103
157
161
85
127
70
76
108
140
115
178
133
164
49
124
84
149
97
193
106
96
94
98
127
83
97
74
136
108
76
151
133
118
177
144
139
141
49
118
80
109
90
169
120
123
81
102
117
139
98
145
54
151
185
159
109
89
143
105
100
132
108
190
89
122
102
116
90
148
81
132
81
129
102
123
89
143
85
158
107
119
80
158
93
131
140
98
95
143
161
148
76
91
119
90
129
129
69
78
74
77
117
140
107
119
144
135
76
118
81
67
114
149
131
164
105
103
136
112
137
109
108
178
102
185
116
87
128
93
172
87
78
109
167
151
93
169
115
134
119
153
82
148
90
98
122
110
142
135
133
102
149
54
102
145
115
109
148
107
98
74
127
82
149
138
104
156
108
146
98
123
148
102
102
108
139
144
113
131
161
125
158
125
108
95
87
122
82
84
105
108
106
108
118
194
125
77
82
134
93
81
81
97
108
111
95
136
95
115
61
108
87
95
113
108
110
139
110
133
97
90
76
130
76
113
113
119
156
193
104
54
103
112
93
87
180
98
74
105
192
102
143
67
120
108
140
134
101
132
122
151
148
125
185
81
101
94
141
105
129
164
127
78
146
114
76
108
158
54
92
98
155
119
134
175
90
81
113
143
105
155
128
78
102
78
81
120
93
131
139
129
117
127
131
100
89
87
136
123
140
102
138
142
84
179
59
98
116
92
90
102
54
113
140
116
98
148
82
138
113
124
123
104
117
95
200
83
160
88
104
177
153
83
120
96
104
96
102
90
81
108
150
120
92
118
167
61
124
148
88
81
109
134
107
125
108
154
117
129
95
110
114
158
149
74
96
71
136
98
148
158
126
117
49
118
125
117
93
161
96
97
136
127
104
134
167
107
113
108
148
74
54
102
98
177
113
146
138
150
113
103
81
98
111
77
155
105
106
143
130
158
133
81
120
74
113
115
108
117
77
117
113
108
87
123
122
121
85
82
108
152
132
131
109
75
122
155
175
143
135
155
139
103
77
127
160
107
127
151
131
81
101
106
110
120
105
121
80
138
159
157
150
120
74
104
122
112
113
115
143
77
54
125
136
54
142
82
84
99
97
107
165
98
54
105
77
116
81
94
85
94
49
78
145
95
87
110
102
95
65
152
113
121
105
146
114
131
75
99
86
106
59
118
115
112
121
97
127
130
170
150
109
129
108
121
134
99
67
177
135
133
145
123
125
88
102
102
145
91
154
97
148
176
126
155
76
74
210
141
135
108
123
120
131
106
117
54
156
151
85
146
59
127
95
108
128
191
90
98
116
130
102
129
186
135
135
114
81
129
92
123
148
95
106
134
125
96
61
101
81
136
128
120
130
154
120
101
91
140
93
74
127
74
156
81
105
97
102
119
108
97
132
101
120
88
95
198
147
133
87
120
138
86
125
168
107
49
91
126
103
81
133
110
143
123
129
121
87
147
95
185
129
158
145
121
149
127
108
142
115
106
72
95
145
122
177
131
118
77
144
104
180
95
140
93
116
54
153
158
98
135
127
169
124
146
125
117
110
45
144
49
127
165
74
147
132
171
93
97
154
85
92
118
148
121
88
83
108
127
103
94
103
104
89
90
145
108
149
54
78
100
153
98
87
102
81
76
121
135
115
95
116
114
140
140
123
96
74
107
124
82
106
135
126
113
123
141
177
180
199
115
102
133
54
125
157
146
84
147
77
140
54
146
129
144
108
128
61
169
140
123
124
87
54
104
102
93
78
82
110
102
70
125
158
79
114
119
107
140
194
87
135
93
98
117
157
98
115
86
126
95
177
126
98
102
54
87
96
97
154
148
105
123
162
130
127
116
115
108
127
120
120
81
85
113
139
105
96
156
103
127
98
123
108
122
163
90
124
101
128
70
132
98
145
83
90
108
59
81
141
113
107
115
150
54
162
133
151
157
102
123
95
140
125
54
85
108
108
124
131
70
111
144
98
97
95
131
91
144
124
112
54
138
107
159
158
130
113
168
163
161
159
176
118
94
76
128
177
120
103
127
108
98
110
119
85
86
141
128
128
95
84
104
121
76
134
110
90
123
87
121
103
139
125
105
158
111
88
96
128
153
90
123
151
134
82
49
114
124
143
180
157
111
89
121
89
117
76
91
93
140
120
119
115
54
107
91
157
82
109
146
93
159
125
92
213
122
133
105
65
90
103
118
118
87
119
137
100
122
143
103
125
81
121
79
76
95
118
105
138
116
129
195
100
151
90
106
87
135
92
140
98
81
91
190
106
109
157
116
118
81
114
105
85
98
106
148
125
134
122
105
105
212
178
76
106
96
81
155
100
136
96
125
121
85
124
93
145
102
132
102
74
110
160
122
107
77
98
95
140
115
137
123
147
102
82
147
141
76
154
127
125
123
106
175
128
194
148
95
90
97
135
132
103
123
135
105
91
94
82
158
103
94
103
92
125
123
153
81
150
134
154
132
105
144
54
114
83
120
108
123
135
67
135
79
117
119
106
128
97
161
107
112
106
99
161
159
120
95
113
143
144
163
149
166
159
133
186
149
131
131
90
109
120
117
119
135
80
103
95
94
130
108
128
147
122
105
133
70
95
167
127
190
59
167
81
144
127
142
100
69
135
93
96
133
91
54
218
110
102
200
126
117
131
110
138
142
115
143
113
96
177
77
100
103
69
111
147
87
83
112
117
136
127
140
59
69
78
99
125
185
114
133
127
95
163
126
103
108
110
113
150
104
54
77
148
148
212
116
98
93
79
141
128
165
99
103
111
54
90
54
102
119
166
172
102
109
101
143
145
85
150
108
167
161
137
74
102
112
107
148
168
107
86
188
113
87
127
129
103
117
89
118
87
108
54
92
161
87
131
122
108
96
120
116
107
77
113
149
84
67
49
134
135
103
99
159
135
111
112
154
88
108
100
106
139
112
95
90
71
129
115
82
115
95
102
74
139
78
181
100
95
104
85
105
83
146
103
112
95
124
104
133
49
126
54
86
102
93
177
133
181
54
151
95
93
118
112
148
129
97
108
145
108
73
117
134
105
76
145
96
67
119
120
95
144
83
118
145
110
84
158
121
54
178
131
127
135
83
65
105
157
153
99
144
158
159
116
157
81
105
125
144
103
125
106
95
98
92
102
156
88
95
92
76
122
103
107
186
95
143
83
163
189
104
169
186
128
110
96
97
84
116
49
74
135
142
141
123
116
146
124
114
122
101
95
93
141
118
121
120
90
91
77
94
98
84
106
125
106
110
135
69
149
108
125
102
92
127
124
145
135
125
121
148
54
116
122
148
128
96
140
102
130
146
155
140
133
74
91
137
150
123
95
186
113
126
158
103
91
108
82
150
87
125
178
167
95
128
133
103
99
127
98
125
108
113
78
148
102
103
102
151
122
98
49
154
110
133
150
134
102
115
119
131
98
116
95
134
120
157
92
165
115
125
147
146
129
87
108
104
86
89
95
85
146
193
129
130
74
88
108
102
108
217
102
86
114
120
135
61
133
86
122
164
78
143
92
96
131
142
103
108
151
127
135
93
109
122
78
124
120
100
124
133
112
91
87
110
98
125
54
115
119
111
49
142
113
117
95
73
141
121
77
92
124
118
108
108
108
108
122
54
141
144
142
133
139
132
118
59
59
178
140
71
129
108
80
74
75
112
125
165
99
117
124
100
95
86
83
118
87
126
127
114
144
121
148
54
81
104
216
96
79
71
106
81
54
127
145
127
99
82
120
54
78
102
140
115
102
109
115
80
110
124
158
115
131
130
109
110
118
129
117
165
129
69
88
88
68
92
82
129
137
125
131
54
95
93
139
169
182
97
102
131
123
98
92
109
125
109
106
74
108
100
111
100
148
101
82
98
127
95
127
90
90
110
93
92
87
125
145
49
151
125
106
129
85
103
132
119
158
105
49
119
95
81
82
161
147
92
108
156
61
93
161
137
144
143
150
158
171
133
74
114
155
54
108
78
101
83
136
98
91
108
102
77
96
105
133
109
95
145
49
87
143
98
109
159
147
140
159
141
54
131
123
139
100
130
112
90
146
149
122
141
98
122
49
49
131
146
108
77
95
128
111
102
144
129
84
143
135
94
106
108
79
108
99
118
102
144
103
115
76
95
83
127
102
139
130
127
98
98
154
95
138
113
119
139
68
95
81
89
101
114
171
108
89
113
144
119
85
112
155
160
141
135
93
158
49
157
137
153
171
102
138
54
68
49
142
121
87
122
147
112
95
129
146
134
99
96
54
145
123
79
180
102
133
93
67
136
131
105
138
136
83
77
54
98
49
145
94
92
124
131
103
145
128
108
131
110
107
100
154
108
115
108
161
115
137
73
76
119
59
85
108
133
112
100
144
110
90
87
93
104
98
127
172
95
85
116
112
148
162
114
103
120
108
95
125
96
123
54
151
95
87
139
74
103
104
147
94
79
125
113
143
125
130
144
94
107
122
173
102
135
81
95
107
82
133
113
95
125
112
54
122
93
147
103
121
93
126
105
125
156
128
106
148
94
134
81
107
131
97
83
129
103
54
81
136
153
95
154
156
81
113
54
93
102
77
108
74
77
96
118
118
135
141
105
98
97
135
128
129
116
93
113
69
110
91
125
149
54
138
142
116
126
84
103
81
128
143
102
81
74
127
143
122
137
133
108
127
122
83
110
59
109
49
155
152
146
120
95
151
144
108
121
125
112
139
81
98
179
159
105
137
106
110
81
169
138
108
119
128
78
77
95
102
89
109
141
88
125
59
169
102
102
102
165
116
87
135
105
77
95
120
108
161
98
107
130
49
158
73
110
95
82
127
80
140
95
127
54
188
68
96
54
124
54
67
143
137
102
102
87
116
91
76
152
108
125
139
134
128
113
117
132
134
108
117
116
143
110
129
102
158
121
101
97
125
108
120
121
118
74
87
174
136
126
108
95
108
98
106
122
100
148
67
129
145
54
162
194
158
116
96
54
104
121
143
113
143
84
76
133
128
95
95
111
67
168
129
126
107
109
93
106
96
118
102
110
54
79
108
135
145
142
102
83
54
92
120
61
97
82
91
87
65
100
105
183
102
116
106
104
104
153
93
116
149
138
111
127
110
182
150
122
85
124
138
114
108
162
135
54
105
131
101
129
104
144
142
107
140
128
144
102
103
176
110
127
129
128
93
54
93
95
114
102
149
89
83
98
84
54
148
121
100
108
93
59
81
103
108
87
76
158
108
54
138
140
108
132
152
83
138
107
113
98
163
61
76
96
131
144
97
133
157
101
114
177
113
124
125
93
67
54
103
107
112
87
107
102
78
131
54
136
61
104
132
140
90
119
96
134
107
103
122
127
137
156
80
54
168
105
145
102
120
88
72
74
102
87
156
84
88
112
85
74
156
100
112
131
98
108
135
113
90
132
119
140
95
144
148
54
100
59
131
54
156
179
101
80
116
127
115
54
69
134
180
79
143
168
120
112
102
81
113
194
145
121
91
133
101
143
98
141
117
76
131
91
103
94
110
105
85
137
54
81
54
123
94
131
68
114
84
83
140
153
135
103
172
120
115
104
127
130
134
115
167
121
129
90
98
123
118
132
49
109
148
177
123
91
120
125
158
116
67
83
137
90
154
103
133
106
145
148
76
141
144
121
98
103
101
102
126
193
112
125
189
81
59
131
153
74
102
195
94
83
121
59
96
102
95
98
161
110
119
136
149
110
108
85
140
130
153
169
59
108
130
137
145
123
104
125
103
202
139
121
148
150
96
123
115
93
122
111
149
139
148
116
126
113
82
170
108
143
148
171
156
135
117
76
87
134
103
105
122
78
95
109
117
102
74
111
97
116
117
82
108
74
109
146
109
102
122
129
87
128
108
97
144
90
168
122
103
107
59
141
155
49
125
113
54
145
134
102
107
120
147
118
140
93
119
85
118
104
87
123
118
125
108
117
79
146
142
154
105
131
118
101
49
123
138
140
108
95
88
76
140
160
104
98
107
113
102
95
181
82
54
143
136
174
74
95
138
77
49
120
87
160
120
98
105
131
145
110
74
126
85
110
59
129
122
95
95
139
147
120
129
159
94
129
87
79
135
78
106
93
128
116
76
95
98
153
102
158
151
149
96
77
121
118
116
108
87
133
108
117
116
77
108
108
144
175
159
130
93
139
127
131
133
153
92
135
74
92
59
133
141
107
115
74
49
113
98
127
77
102
104
80
108
145
98
77
129
99
169
95
108
95
74
114
125
106
102
113
148
107
129
142
68
102
81
116
108
143
143
146
145
109
77
166
114
108
107
103
112
131
110
148
108
69
67
87
98
142
165
116
78
156
79
131
135
144
134
114
81
91
59
157
118
107
94
110
143
49
74
143
143
148
116
95
110
125
77
89
103
102
96
99
149
172
139
128
81
103
54
159
135
134
98
54
102
131
105
85
120
49
120
102
167
87
135
173
149
103
88
54
73
59
108
102
129
54
148
123
127
77
106
106
102
113
103
94
135
134
127
125
81
98
101
103
49
123
54
144
105
117
92
54
135
136
127
102
161
140
136
102
123
137
120
169
157
152
120
149
124
124
76
125
90
116
94
89
139
137
95
90
91
78
154
110
102
122
111
112
106
150
122
147
87
107
144
59
80
137
114
54
135
116
178
112
132
170
138
125
94
114
119
125
142
106
129
140
103
105
202
172
134
98
146
173
74
106
132
99
133
54
115
149
95
82
153
181
79
76
117
108
102
90
169
147
125
76
133
121
107
124
102
120
132
99
97
106
90
89
128
54
134
125
100
139
91
141
100
102
129
108
87
49
151
88
119
97
105
119
114
114
115
118
157
158
153
132
67
113
122
101
90
103
171
93
74
98
94
123
138
76
81
112
86
95
135
122
96
93
132
102
110
108
107
143
102
96
103
81
123
129
142
103
102
146
54
76
102
81
69
120
134
82
61
159
125
129
116
183
89
59
105
105
90
94
178
115
59
156
121
94
49
123
98
119
108
153
81
95
162
125
76
193
134
116
108
150
125
133
142
174
86
129
220
158
102
59
122
102
115
127
54
95
143
109
95
95
102
102
122
128
121
136
131
98
103
99
129
74
147
49
132
102
117
128
156
102
157
69
114
110
129
109
148
87
98
108
120
107
102
147
59
156
114
105
83
95
118
54
127
98
185
98
102
54
177
132
168
74
49
61
107
108
109
49
177
139
114
123
185
87
99
134
129
125
130
120
98
132
54
105
171
138
139
123
126
135
65
129
81
113
177
67
145
120
194
148
113
144
54
94
98
98
126
80
102
135
93
125
125
54
133
138
127
121
96
117
76
108
107
77
54
112
96
81
180
137
54
123
111
87
168
79
118
134
126
102
127
129
102
116
96
100
146
95
62
133
124
118
133
118
128
129
54
102
107
67
150
110
72
124
70
95
100
144
54
114
120
103
161
134
140
49
89
119
191
151
145
54
112
85
127
102
193
125
126
96
98
131
132
98
127
129
107
54
96
132
76
133
103
119
113
143
171
128
129
74
172
108
79
49
137
148
93
74
125
128
109
96
227
110
164
90
116
85
123
54
54
145
115
160
126
128
160
144
98
76
119
103
125
112
128
74
106
125
127
159
81
113
165
83
161
59
154
122
103
116
150
113
158
54
158
106
82
80
140
145
107
90
74
141
83
83
109
98
113
99
124
54
96
82
132
67
81
54
147
90
89
122
77
96
135
98
156
74
112
77
108
124
103
67
171
54
78
120
144
102
142
150
155
96
76
105
114
125
49
49
131
116
49
102
93
137
182
156
97
131
81
90
54
113
108
177
77
107
114
112
192
197
85
177
148
67
108
86
160
190
102
143
125
114
87
129
147
68
68
54
59
49
122
98
153
82
128
157
193
144
137
45
150
107
76
83
98
127
143
113
103
140
59
100
122
91
119
107
112
90
182
175
76
150
139
113
133
77
112
108
91
158
106
115
134
87
85
139
108
125
116
78
54
145
169
103
142
98
101
108
123
81
152
116
84
90
76
83
67
92
172
76
78
103
190
107
138
91
115
103
79
174
87
145
95
74
146
130
81
163
113
97
114
96
102
119
123
100
104
133
153
105
144
81
110
185
179
128
76
102
105
115
136
128
99
118
114
54
59
120
108
98
116
133
119
99
102
145
87
98
103
144
98
135
148
74
155
108
71
125
129
88
136
137
104
102
88
80
148
138
116
147
120
106
124
106
142
95
91
102
126
132
110
54
148
151
98
108
145
102
102
87
69
113
90
89
100
138
81
95
145
85
128
120
113
200
91
121
54
178
121
81
108
98
98
125
114
108
137
103
87
129
85
154
144
109
106
77
141
103
139
137
95
85
107
113
89
120
116
54
108
145
98
108
82
129
95
122
105
95
102
113
103
133
74
140
108
82
74
87
115
133
135
98
102
148
149
128
102
83
112
157
101
106
74
129
145
97
95
172
118
165
98
112
105
116
138
102
81
106
125
128
131
112
100
135
128
131
67
140
113
95
110
138
85
97
116
131
147
83
99
76
120
158
80
113
92
158
139
198
67
128
115
102
86
102
76
105
125
124
115
146
102
67
108
82
146
125
119
113
94
85
152
131
108
143
153
101
105
102
105
98
123
144
140
129
107
125
98
118
93
143
140
103
103
141
76
106
81
136
83
142
105
130
110
96
128
135
124
129
179
129
117
77
112
111
94
54
102
97
54
106
160
95
145
119
146
96
144
143
102
143
125
93
136
127
98
76
89
162
160
118
110
138
143
88
114
97
131
88
129
120
104
110
146
112
102
125
103
129
80
87
95
116
54
143
137
124
149
74
142
95
119
76
124
180
154
76
152
134
189
120
156
123
105
118
156
95
97
144
109
101
125
101
127
156
166
138
97
130
102
67
126
145
98
103
90
82
131
121
59
125
49
94
155
113
120
107
59
111
182
95
170
158
188
98
103
124
94
133
87
87
131
112
86
78
184
126
147
94
125
120
115
87
136
162
115
101
116
118
77
107
109
105
95
118
150
130
142
96
160
110
77
125
85
141
95
150
94
85
122
113
84
128
123
108
102
144
115
86
95
104
95
102
87
176
84
126
121
141
93
135
175
102
99
151
104
108
180
94
67
54
151
113
106
93
132
129
105
99
102
102
81
107
95
82
140
113
92
76
105
84
100
180
142
128
93
108
81
95
129
102
106
108
59
159
118
115
114
76
106
154
130
171
105
140
133
74
133
105
148
106
99
142
123
158
59
114
96
155
68
142
142
135
167
205
102
135
127
143
109
123
100
93
157
97
160
128
103
129
119
112
98
95
87
102
81
163
90
122
140
67
108
95
130
96
102
128
96
118
54
147
114
146
153
89
73
120
128
110
132
135
95
136
134
154
135
141
135
125
136
94
107
105
131
114
152
93
97
125
96
122
170
74
103
121
149
135
146
161
105
94
143
106
128
128
91
74
91
81
132
122
125
165
179
143
106
109
87
80
134
49
159
81
105
131
145
142
82
108
67
116
193
124
109
158
105
109
123
103
78
90
224
145
200
126
98
106
76
132
110
59
128
133
102
81
144
113
116
78
105
106
142
128
139
97
141
159
147
101
156
107
139
115
107
67
114
59
129
93
75
117
123
148
131
148
138
95
128
82
78
101
92
89
138
114
148
126
103
167
124
90
113
89
82
102
97
126
144
142
95
124
116
115
95
177
128
127
54
81
148
81
191
114
161
127
90
74
92
92
95
98
99
77
127
71
87
200
125
145
101
136
123
105
142
110
157
78
157
112
116
89
113
76
103
119
67
125
170
133
151
112
107
120
135
77
88
122
92
150
98
91
101
70
59
89
106
117
144
81
81
81
116
151
124
125
105
153
106
80
95
131
95
169
112
170
105
98
170
67
69
49
102
138
146
111
93
165
67
79
141
173
145
92
95
103
81
122
142
128
144
136
132
113
144
109
126
133
135
161
119
61
134
146
54
108
54
119
95
124
131
125
150
135
137
127
132
54
108
97
104
181
77
100
87
118
119
107
132
117
54
102
112
123
108
133
91
85
130
109
95
108
145
108
87
90
87
147
108
95
76
154
117
110
138
115
112
100
112
97
84
96
121
98
141
77
106
151
75
112
158
96
165
129
146
156
177
101
113
144
95
96
124
54
98
116
100
93
59
125
163
123
75
127
95
117
109
76
113
108
82
83
149
107
103
156
61
142
78
143
144
141
90
123
108
119
109
100
95
107
109
113
92
110
96
98
139
54
144
76
106
170
180
151
67
93
149
106
77
113
105
98
120
156
90
68
108
99
110
104
113
115
73
84
113
180
100
116
131
170
122
142
108
122
45
149
133
54
104
122
82
119
108
151
105
144
102
81
115
153
81
49
119
81
155
110
115
105
87
109
109
99
159
92
129
107
91
101
74
153
119
92
81
54
123
110
118
141
86
115
125
146
90
54
144
148
165
153
133
89
129
116
69
95
103
93
159
81
87
95
127
77
110
107
94
125
137
102
135
122
178
93
54
130
126
105
163
90
120
214
118
124
168
125
89
95
90
98
113
103
118
144
129
85
110
76
104
105
185
141
87
98
119
59
96
100
133
74
155
74
101
149
95
93
140
142
110
76
147
158
158
145
151
137
129
115
143
77
115
81
87
101
158
128
100
148
164
117
73
108
155
106
143
112
103
95
143
128
126
158
117
105
129
148
145
95
152
78
138
103
120
150
82
54
94
127
96
103
178
74
115
98
174
179
128
127
149
59
147
76
89
106
106
155
122
131
109
136
93
140
96
98
102
142
124
175
110
143
122
67
108
158
121
120
124
107
132
76
82
97
143
67
121
87
105
144
90
123
124
94
93
110
78
108
110
81
77
136
186
138
108
93
81
122
143
107
110
132
196
93
74
95
87
141
136
98
102
103
98
107
113
102
103
156
148
139
177
49
121
59
94
178
49
113
107
125
148
59
130
103
133
151
173
102
128
119
132
137
140
59
98
93
125
79
109
132
127
140
99
109
106
54
134
104
143
116
120
68
127
145
131
135
159
67
154
144
94
121
83
84
125
167
202
93
148
148
108
90
95
92
146
74
96
148
148
151
153
111
115
93
90
116
139
77
165
147
135
54
82
108
108
122
105
122
99
161
126
143
125
54
95
80
75
118
103
111
164
98
104
130
94
87
125
108
125
132
129
129
155
168
109
110
97
78
95
74
83
114
136
93
138
134
142
78
139
170
89
123
92
143
74
141
90
105
165
90
162
178
95
115
113
161
102
131
118
87
97
102
54
128
177
76
102
93
138
158
118
94
125
173
117
149
115
74
88
114
125
122
133
103
77
94
141
144
67
143
98
95
98
146
129
98
135
128
104
115
101
139
170
107
131
131
108
181
154
109
142
125
91
98
152
131
103
109
137
89
113
102
129
100
168
106
75
121
145
81
77
105
96
153
131
144
106
110
75
136
171
123
129
93
153
134
103
129
49
76
98
76
108
106
90
123
119
83
102
77
68
82
105
135
106
102
90
112
74
148
133
165
158
125
54
125
113
54
110
125
140
114
82
140
100
113
107
144
129
73
127
103
140
113
125
106
135
103
82
98
141
144
99
145
177
105
105
113
149
139
109
107
54
96
104
76
111
108
59
95
95
144
99
82
97
139
97
106
107
105
123
123
125
89
61
134
119
113
108
140
95
119
89
95
118
95
99
98
115
103
116
78
109
123
128
54
131
139
67
117
136
111
142
123
120
102
102
95
85
105
110
113
95
98
125
85
145
83
54
118
98
126
135
97
118
109
158
102
102
151
81
151
70
131
102
90
97
108
123
118
113
105
115
108
106
59
119
125
100
76
125
93
122
103
123
148
98
96
108
131
91
119
118
113
122
102
54
95
103
105
133
132
106
144
125
49
194
123
98
110
114
54
123
81
115
78
140
108
179
86
108
96
108
108
131
87
98
167
113
104
131
105
129
94
81
140
107
155
76
113
130
143
90
54
98
119
149
133
115
133
132
130
110
96
127
138
155
124
93
67
59
138
49
149
54
98
125
144
74
117
131
96
105
102
105
145
101
134
86
109
90
176
153
177
108
85
105
95
54
87
116
97
152
119
107
97
105
132
104
148
54
74
108
126
137
120
54
81
166
87
86
112
129
80
113
108
139
148
102
82
69
49
133
182
118
116
108
105
103
124
54
150
81
49
165
113
128
140
113
81
109
136
102
104
140
104
93
144
114
143
118
81
98
77
87
88
108
102
125
125
124
127
127
103
105
76
120
131
123
81
98
79
107
145
118
102
125
144
156
89
100
102
90
123
143
91
95
145
97
158
137
54
131
107
129
98
133
59
77
125
97
157
123
108
79
141
104
125
77
95
102
103
143
123
145
103
121
94
70
93
138
153
119
103
135
102
102
59
131
153
140
119
120
121
99
122
123
108
105
101
115
102
104
95
102
87
91
120
117
113
147
102
121
85
54
149
182
49
72
125
105
103
109
143
181
107
142
93
161
106
142
77
216
74
141
130
142
160
149
140
113
132
121
139
83
98
158
107
139
135
89
126
97
115
90
59
157
106
105
104
153
102
160
118
144
144
120
159
59
94
78
108
54
130
102
145
106
128
95
95
90
87
94
134
146
131
115
99
74
105
80
127
133
94
126
45
122
135
84
124
95
82
108
126
98
102
131
137
109
70
199
174
104
168
105
69
119
111
99
118
89
113
108
186
120
142
108
82
149
151
101
79
101
82
124
113
148
116
80
102
197
110
120
98
155
147
49
49
129
148
90
197
98
102
155
114
133
76
83
108
125
147
134
96
124
103
103
116
95
93
74
59
141
131
129
122
108
106
141
109
123
54
149
190
103
115
132
173
87
133
89
144
96
84
134
127
128
103
145
160
121
76
107
92
125
157
102
177
106
139
123
104
127
144
130
54
170
105
77
125
158
98
134
131
131
182
127
95
151
77
119
116
118
77
98
77
113
106
138
134
122
113
143
74
106
134
115
103
134
82
95
149
116
182
96
133
148
116
116
128
86
126
170
94
123
100
138
112
117
154
93
59
125
79
128
92
87
112
147
164
67
114
111
157
119
113
125
190
114
104
100
91
121
115
95
97
119
123
61
108
148
122
101
73
139
102
127
85
96
94
87
133
54
131
108
118
102
143
129
125
135
59
96
130
158
131
88
160
81
147
98
83
59
143
95
127
99
108
89
86
118
114
131
104
133
125
96
106
102
131
77
154
114
128
158
135
91
102
119
177
135
116
54
67
85
144
54
113
142
89
190
89
128
125
145
118
124
104
87
115
133
131
133
116
101
158
95
125
125
129
132
148
106
138
74
115
78
126
101
101
98
108
91
135
137
91
96
105
125
103
78
113
90
111
123
81
158
162
116
154
82
151
131
131
95
145
102
109
121
100
98
135
88
74
122
81
135
84
108
127
102
68
78
81
125
94
127
129
91
54
102
79
144
144
117
97
79
61
120
114
139
78
114
128
76
87
194
117
97
144
74
78
79
82
78
152
172
108
49
175
83
98
94
98
118
162
141
90
82
96
113
165
148
151
98
132
49
86
97
151
139
122
128
95
127
110
98
61
108
135
103
157
140
54
104
54
119
49
96
133
104
128
167
49
91
116
123
95
95
102
78
102
145
161
129
101
88
163
81
92
128
95
74
137
116
108
135
156
131
121
84
96
87
99
107
154
150
95
101
102
98
149
76
123
91
122
156
146
153
134
128
106
49
161
106
68
111
139
131
177
129
124
161
131
54
115
97
127
77
81
142
113
125
196
129
90
102
94
113
105
127
90
136
104
117
54
76
61
95
102
95
122
98
95
185
90
102
74
56
89
102
106
105
129
67
92
73
158
144
105
82
143
117
101
93
73
59
152
108
113
82
124
148
122
132
111
143
49
126
143
107
115
104
138
128
140
115
107
125
130
120
146
117
112
103
118
150
115
126
107
151
102
93
224
113
133
134
97
120
125
107
102
68
148
117
150
145
133
90
167
102
144
129
167
122
143
147
108
142
108
123
89
54
108
104
119
95
120
159
108
125
95
108
119
147
88
109
112
102
91
104
87
100
165
83
130
81
133
138
138
105
183
145
68
49
117
86
110
111
113
113
81
139
102
119
154
124
106
104
121
115
105
165
54
129
132
162
154
97
99
93
106
105
96
115
90
159
68
49
91
133
100
102
148
133
90
115
156
125
123
102
128
173
123
116
145
85
147
114
54
79
177
121
102
93
104
147
85
97
106
49
96
143
117
99
139
107
179
78
112
96
120
132
131
104
98
76
109
110
94
116
114
127
54
103
95
111
105
119
151
103
104
102
123
129
141
113
140
108
118
102
61
101
95
89
49
139
68
154
97
108
136
148
78
150
103
102
180
98
159
83
76
150
146
108
97
118
135
108
117
162
135
59
140
152
65
122
165
145
113
108
79
159
74
151
108
137
120
125
123
90
62
142
107
81
134
84
147
140
114
125
85
152
90
100
87
105
88
102
83
131
95
103
96
118
102
144
136
135
103
108
93
80
161
97
95
81
105
159
133
88
133
124
169
67
49
59
120
99
114
98
148
83
138
115
124
107
106
110
71
104
149
168
54
82
133
165
135
77
103
141
137
161
149
99
128
110
102
115
125
78
102
93
107
82
122
112
128
125
145
127
82
160
97
116
146
120
95
144
119
101
95
95
157
145
105
112
96
141
146
126
140
96
135
118
148
115
146
87
125
139
148
131
123
124
138
113
103
141
74
85
131
123
146
85
109
139
143
134
138
113
151
107
123
49
69
98
112
83
116
102
132
99
141
103
95
111
69
83
102
74
126
93
151
102
117
111
131
109
130
107
93
87
133
126
152
145
77
120
108
108
151
105
102
104
117
76
160
113
114
110
113
109
105
125
54
141
98
135
140
148
139
106
90
128
108
54
74
103
131
122
157
96
90
81
54
138
108
102
67
151
97
149
139
119
54
83
95
110
54
78
79
54
87
140
125
108
85
106
59
54
95
101
140
54
159
123
91
97
163
146
49
125
127
131
100
104
81
111
131
129
106
149
140
116
123
102
130
125
122
148
145
145
122
108
119
90
150
139
96
82
69
80
129
102
141
102
134
49
81
144
123
106
116
63
144
113
85
108
107
165
146
67
67
234
135
172
132
54
103
83
145
78
103
133
102
75
129
124
112
67
105
167
127
87
128
100
129
114
100
85
124
106
123
152
137
140
141
140
118
54
128
133
95
102
130
144
77
115
109
124
133
155
77
103
81
68
172
146
74
96
98
105
59
170
122
141
95
113
113
97
125
109
128
92
95
129
54
160
149
102
144
54
125
80
110
124
109
152
149
104
96
93
49
105
98
149
108
83
108
82
104
107
95
125
148
177
143
90
95
90
134
108
115
88
137
113
121
158
113
140
134
156
140
90
144
116
105
93
49
102
135
87
84
93
125
137
185
71
116
117
137
118
103
146
116
78
186
78
150
80
91
116
128
127
131
121
109
109
170
112
135
129
110
164
140
100
127
122
136
162
146
98
160
131
90
123
155
123
152
134
81
108
110
173
117
147
90
121
103
104
103
127
147
98
171
54
118
105
143
121
80
138
160
181
133
131
154
101
54
108
95
131
68
103
102
103
103
135
94
135
113
122
133
105
82
104
146
127
98
148
92
144
54
164
54
131
129
96
108
140
90
113
128
90
128
84
88
121
49
103
162
61
149
156
82
78
54
87
128
146
99
98
153
153
108
117
143
156
82
95
153
113
148
129
97
95
143
99
149
125
133
155
118
128
97
110
101
54
82
116
100
151
118
145
140
130
59
102
150
145
125
97
128
54
103
131
147
81
131
93
163
133
122
144
105
174
81
103
80
169
112
96
148
131
115
123
142
98
132
95
131
78
54
129
107
102
141
111
140
61
106
127
128
96
96
143
119
76
139
141
89
67
130
138
136
118
76
89
102
136
102
141
102
164
81
98
81
103
108
132
146
150
125
113
77
99
149
68
108
111
98
105
95
155
111
161
54
105
118
140
90
135
111
103
105
102
74
156
109
144
126
169
154
102
121
98
138
123
146
108
113
113
122
94
91
166
117
106
59
101
117
107
59
97
139
128
104
197
61
115
108
105
127
156
90
135
113
99
74
129
144
120
133
180
148
124
100
96
75
92
85
91
97
139
91
96
113
98
164
49
149
107
143
129
109
113
154
108
150
139
177
96
106
124
86
98
125
95
125
122
133
108
181
205
119
98
76
141
113
54
75
144
160
160
105
148
107
138
127
54
108
90
90
153
102
163
139
176
135
98
124
199
124
126
140
98
91
98
54
103
154
85
138
95
131
199
97
158
144
77
133
54
123
132
164
54
147
110
103
110
102
92
49
108
182
121
103
92
88
81
120
102
179
77
137
93
95
141
107
135
49
81
98
104
172
59
140
101
125
108
100
101
141
108
108
143
93
115
143
77
115
129
124
147
136
122
103
101
131
78
101
121
93
133
97
101
131
107
132
106
129
137
68
98
132
61
93
96
86
118
118
138
120
97
160
113
109
110
83
74
108
81
116
139
104
138
113
142
115
91
139
90
176
129
108
90
108
59
74
78
102
105
99
87
149
132
140
77
102
81
87
102
163
95
146
104
108
125
85
118
125
87
73
116
127
81
135
54
113
108
108
155
102
104
126
200
129
106
59
138
113
99
123
140
154
109
138
102
131
112
135
125
154
141
113
110
98
107
54
69
110
54
148
116
133
140
103
80
54
101
121
129
97
74
93
125
200
92
115
97
139
143
101
83
115
144
102
119
91
74
134
95
135
105
149
74
120
163
98
123
90
128
169
128
85
116
134
83
100
119
163
130
103
76
74
95
93
150
135
127
122
128
108
140
104
115
135
124
129
125
100
102
139
95
84
78
122
141
95
100
128
91
125
138
162
94
102
172
54
117
108
123
83
170
133
81
144
54
83
108
93
110
177
190
152
117
123
107
83
108
163
104
87
129
83
116
142
112
120
67
82
67
108
77
131
172
106
124
135
96
139
127
137
80
142
104
128
128
114
122
83
113
83
121
103
98
68
135
104
120
105
127
92
113
164
102
100
141
102
102
184
113
125
108
129
124
107
125
87
148
95
90
154
141
140
170
110
105
131
87
138
98
105
145
98
54
135
124
133
102
168
88
164
128
117
104
165
95
177
109
108
162
105
102
85
135
120
67
79
92
127
54
147
81
142
141
200
139
185
125
173
74
106
87
120
168
152
140
98
104
134
54
95
93
63
122
89
98
93
108
126
106
96
139
115
113
112
148
118
148
164
100
54
87
115
108
121
93
135
90
182
125
98
149
80
92
105
122
159
140
86
59
77
54
90
45
144
104
87
145
105
100
67
95
115
95
92
82
112
113
102
109
138
153
87
73
81
129
97
158
86
102
104
99
107
96
142
149
156
121
54
71
106
153
140
110
116
121
138
82
92
107
159
100
117
118
173
135
101
124
145
101
117
159
103
61
144
118
96
94
148
180
101
122
104
139
88
135
54
109
117
112
131
104
128
112
104
102
140
128
101
102
142
140
94
134
105
83
127
65
102
146
121
92
131
125
131
98
80
95
171
137
92
125
126
93
132
74
148
150
54
148
115
128
125
144
68
80
67
76
124
147
141
147
93
177
82
77
165
94
116
116
163
165
121
113
162
91
140
125
98
118
182
152
59
122
126
125
125
68
113
116
115
118
92
129
103
112
157
143
93
54
136
121
159
158
123
49
209
162
118
76
85
133
106
144
113
85
102
95
105
118
178
94
112
132
104
94
160
124
138
87
67
114
105
92
125
150
108
149
82
83
137
148
98
93
131
54
162
132
133
132
122
81
102
74
119
77
103
103
128
98
153
63
99
97
114
151
102
103
104
123
85
91
126
93
82
150
136
132
54
97
95
140
103
168
128
129
99
77
129
125
173
89
98
123
102
95
93
143
172
106
89
102
137
130
49
159
117
125
199
112
54
61
98
126
95
81
99
113
150
127
144
132
148
108
105
114
140
123
109
136
143
54
126
143
102
49
132
143
98
122
113
170
122
133
95
54
107
101
159
54
105
136
142
131
139
101
157
159
98
106
168
49
95
105
156
104
125
85
144
115
95
111
96
110
104
87
107
111
139
111
110
127
98
76
144
49
131
54
126
117
83
89
106
152
196
72
135
103
71
135
108
151
98
137
49
143
103
90
105
177
84
93
117
164
200
61
102
140
98
135
126
98
163
142
108
106
140
139
147
127
107
120
127
78
164
54
77
108
83
121
98
116
108
129
78
98
88
177
156
185
131
149
126
123
156
167
169
49
148
102
95
133
127
81
121
95
103
81
49
100
85
134
135
74
179
82
77
117
124
125
103
144
185
127
82
108
164
115
150
131
135
110
107
124
145
148
101
144
107
149
91
90
151
107
121
184
139
167
109
125
122
152
139
81
106
140
96
112
123
110
113
186
120
125
127
158
133
85
137
132
122
93
89
137
128
108
74
205
120
76
122
143
91
102
102
100
115
95
124
102
91
108
122
95
96
59
98
101
128
140
125
54
67
96
98
59
113
106
143
118
67
81
105
154
106
98
99
92
125
93
148
108
82
67
154
158
94
94
116
133
121
132
103
105
125
113
103
119
105
142
106
155
141
102
152
49
113
81
116
147
148
92
49
127
98
118
126
140
92
130
145
150
102
77
95
49
113
143
110
54
115
103
121
69
159
90
95
133
74
95
143
102
99
122
90
76
54
119
140
99
97
111
191
138
131
120
103
147
59
143
68
119
131
131
131
135
143
59
153
100
108
106
106
135
61
155
119
78
115
137
54
95
105
142
177
146
113
132
91
68
81
116
159
143
59
108
149
132
148
102
81
145
102
113
97
49
124
98
89
82
126
83
106
102
125
115
141
113
143
123
132
102
54
133
113
93
113
120
103
121
179
128
125
141
118
95
120
89
105
136
81
134
131
61
98
148
49
90
95
170
102
98
82
101
78
118
128
173
102
85
78
67
128
54
128
128
54
128
109
96
138
108
173
105
125
108
54
142
131
77
167
76
115
54
113
104
107
122
145
116
98
107
98
191
143
54
154
111
102
104
101
102
108
108
116
139
69
101
98
77
96
68
164
139
149
100
139
124
146
102
161
54
76
182
144
133
59
107
157
126
111
54
122
131
158
138
127
159
98
78
68
123
83
124
131
139
102
131
70
117
102
102
166
138
102
113
67
90
122
77
98
82
125
127
113
96
69
153
126
103
107
57
127
185
148
148
74
74
113
93
129
126
135
98
131
112
115
123
121
90
167
125
144
136
54
122
120
54
59
69
116
98
131
94
105
90
167
112
180
104
107
90
85
142
111
110
127
103
158
127
129
162
102
80
127
115
81
132
125
118
110
124
77
49
83
54
120
127
74
117
133
107
142
95
87
103
114
156
119
118
124
168
156
135
145
118
115
123
82
83
118
82
100
54
89
109
119
139
93
109
68
126
114
154
140
141
105
81
127
128
120
49
137
96
93
78
144
74
54
76
128
210
76
131
95
54
103
113
108
150
79
98
143
122
124
131
127
103
146
102
152
116
177
205
76
91
140
122
124
98
133
95
87
122
152
107
108
117
118
102
137
135
115
77
128
85
69
144
134
138
74
93
103
139
125
95
106
120
74
93
131
110
72
103
120
95
98
85
176
101
102
105
97
108
112
113
149
135
81
147
104
112
133
166
57
147
143
108
113
185
110
116
115
164
107
170
107
54
104
114
147
61
111
138
113
76
95
103
121
125
155
145
151
126
125
102
113
93
102
116
96
95
179
100
95
104
111
54
139
132
114
127
132
94
137
98
177
136
166
145
98
129
138
116
81
124
146
117
67
109
81
102
147
108
67
165
93
135
137
98
59
101
124
149
171
130
54
135
97
98
101
150
108
83
171
168
117
111
149
117
99
105
95
92
100
140
99
108
153
96
118
110
82
115
128
125
157
90
125
172
90
139
158
144
180
84
145
83
138
68
81
121
126
126
106
82
87
113
80
89
150
98
108
98
101
83
110
83
102
108
74
161
140
102
98
109
144
82
141
101
101
144
164
82
110
138
92
88
98
76
98
138
160
82
137
77
127
148
82
90
102
133
135
93
124
146
137
127
179
103
104
110
153
137
145
172
74
144
128
136
179
100
109
83
111
81
110
153
49
108
96
103
98
123
114
81
163
106
127
128
89
139
111
80
138
168
172
142
146
135
96
54
149
129
107
76
105
94
182
113
148
87
107
180
102
128
67
137
65
69
91
121
95
107
84
141
54
123
146
153
148
122
82
140
118
97
152
121
146
135
135
130
81
59
114
81
110
179
147
110
149
79
134
94
150
105
148
192
153
114
145
115
95
98
110
87
135
108
113
91
122
140
147
108
104
108
103
95
119
135
94
153
98
80
59
140
81
110
112
135
102
83
125
102
74
140
131
128
74
165
91
90
137
90
126
111
90
77
167
93
102
119
102
128
97
145
88
151
80
148
121
83
116
143
120
113
126
157
81
132
90
82
131
93
108
81
54
148
128
93
76
118
144
146
112
98
68
98
146
129
200
133
115
97
160
93
122
108
86
117
98
157
139
114
115
76
106
133
93
74
134
99
140
177
87
90
95
82
139
82
103
54
49
129
169
121
142
103
54
124
155
134
54
77
134
115
67
139
145
102
113
97
81
97
96
133
131
115
87
75
82
144
100
111
54
98
104
141
103
159
105
128
135
173
144
112
103
158
123
166
116
123
169
116
76
73
131
98
80
92
61
128
105
180
54
122
124
174
115
141
102
138
89
130
76
148
115
114
90
126
137
136
102
61
105
118
104
148
131
127
109
123
78
79
157
73
138
119
110
102
116
108
121
130
139
147
138
137
117
59
79
108
54
143
102
177
102
87
148
152
146
77
95
100
103
102
49
119
108
131
106
135
93
110
135
148
108
49
105
108
59
128
113
85
131
106
102
59
125
85
161
77
160
109
135
67
68
98
131
179
182
107
108
106
158
108
96
143
118
149
143
173
111
98
118
137
118
158
128
97
129
77
90
87
98
97
121
105
102
100
98
146
96
102
68
125
103
97
113
122
98
54
127
111
102
95
90
140
122
134
102
102
85
144
139
127
108
106
148
95
95
82
109
121
117
138
127
102
85
149
108
158
120
69
77
100
105
112
103
76
133
67
147
59
128
59
49
160
119
148
74
170
54
124
94
77
103
93
102
139
111
79
90
112
88
120
74
104
78
175
98
127
122
87
96
119
106
74
127
103
200
95
103
158
108
115
103
99
116
113
49
83
59
110
125
82
61
106
54
125
125
200
99
161
80
102
147
82
128
142
127
107
116
110
127
78
110
84
173
83
104
122
147
126
87
82
81
151
147
113
76
105
141
89
143
95
135
130
138
131
102
150
79
106
82
108
93
100
128
120
73
94
118
114
125
95
143
54
144
108
59
155
159
93
74
124
106
118
162
143
125
102
129
104
132
125
146
113
98
95
121
54
76
122
128
108
153
83
102
163
110
85
143
91
113
107
74
104
120
67
92
93
129
61
129
162
71
107
123
54
98
98
81
141
54
95
153
121
131
127
107
102
148
133
119
129
82
107
132
106
147
137
87
195
103
127
131
99
87
102
42
135
90
122
90
108
80
137
138
120
155
102
115
100
131
151
49
109
127
76
123
138
220
140
87
94
125
114
150
54
49
113
106
103
95
49
108
113
148
100
161
131
105
204
107
107
102
74
127
106
139
135
99
121
149
174
76
102
120
128
98
164
177
77
161
100
95
150
90
49
135
192
115
83
115
180
145
85
110
123
113
87
90
146
49
171
101
167
115
140
74
75
138
179
158
131
107
112
134
115
116
54
118
146
151
147
103
113
120
130
78
96
137
97
108
131
103
77
88
110
85
99
98
86
140
105
101
90
123
128
125
95
111
81
163
103
131
133
125
106
138
137
150
103
85
159
101
123
59
106
102
127
146
95
157
142
119
144
89
49
128
110
135
118
109
102
131
104
89
147
118
202
95
84
119
107
127
112
116
128
57
135
103
142
119
105
102
186
99
96
145
175
152
103
177
177
108
115
118
103
108
127
122
129
133
139
125
141
211
123
107
67
95
160
82
124
101
94
122
116
116
177
97
149
106
76
93
102
144
131
99
102
194
121
125
130
99
122
103
117
87
79
89
49
147
123
123
108
161
157
108
124
133
130
77
170
108
98
82
112
149
121
111
129
133
96
73
134
166
81
103
109
108
90
123
133
162
103
108
103
161
123
131
95
116
115
103
165
98
95
103
151
54
142
87
139
110
101
155
108
117
81
103
107
98
95
93
102
125
132
59
59
102
68
125
67
140
144
102
54
95
108
163
125
119
76
101
91
113
108
102
115
128
143
83
93
96
101
98
111
120
106
122
54
102
135
190
108
111
133
129
133
162
128
123
98
179
76
131
93
95
88
108
87
123
147
103
113
110
124
103
113
180
110
70
106
88
104
130
118
111
146
54
103
106
102
81
74
67
119
98
68
102
138
124
125
131
128
108
143
133
130
123
96
93
103
101
81
139
109
129
90
104
148
105
74
152
98
102
101
119
154
45
132
90
156
118
135
134
133
109
169
120
112
90
111
107
126
113
131
157
157
78
177
59
115
90
54
146
95
54
96
144
120
90
120
68
49
87
156
93
140
103
149
179
77
95
81
177
90
117
81
87
82
130
92
76
129
126
147
151
161
121
116
103
102
129
102
120
127
112
127
120
54
114
108
80
178
138
108
102
108
126
49
145
54
130
177
194
147
132
54
144
112
147
146
143
105
131
115
132
158
132
99
76
106
121
80
103
95
138
112
129
141
182
98
99
134
151
127
105
108
89
78
108
115
126
108
143
108
101
102
76
123
155
146
85
135
103
112
103
92
95
70
98
148
112
113
147
128
82
135
54
79
102
164
95
93
121
74
105
113
114
118
121
81
110
123
113
81
132
98
108
74
144
102
102
95
168
143
91
122
98
107
95
81
137
108
133
110
112
84
81
54
124
94
133
127
109
181
123
122
98
141
83
69
96
156
150
84
63
98
59
98
165
81
98
116
130
149
118
180
147
150
102
117
113
154
90
93
82
104
105
103
103
147
151
137
98
180
124
61
114
103
177
126
80
81
94
91
93
133
65
170
112
111
103
128
113
49
88
115
144
120
175
95
148
112
93
73
98
87
93
93
102
101
114
125
150
182
82
107
118
129
116
85
114
109
97
142
115
165
90
110
123
116
106
78
107
78
102
78
154
132
90
94
93
85
91
74
107
117
95
123
111
159
103
132
98
160
120
113
80
74
119
138
99
74
76
54
110
94
130
137
95
128
77
95
114
79
103
101
151
103
96
81
145
91
146
116
82
99
117
68
146
128
54
135
128
68
79
148
127
155
76
93
162
157
83
98
123
91
74
128
185
87
153
121
85
138
101
148
97
110
158
81
151
122
92
81
157
132
95
113
115
81
107
99
69
99
122
80
108
99
97
93
102
125
115
87
152
148
101
158
198
163
68
105
99
118
133
98
135
120
81
151
67
90
102
149
125
109
81
85
102
116
120
107
129
98
83
121
131
108
100
98
87
120
115
54
83
148
98
128
90
177
143
87
127
86
103
96
133
92
204
125
54
165
105
167
123
143
96
90
152
128
148
108
54
153
124
85
148
115
119
89
164
54
148
106
181
133
104
150
109
118
82
113
128
124
94
201
123
99
95
89
123
54
108
90
103
115
98
61
82
96
84
139
87
100
95
54
76
78
105
102
85
161
146
131
102
120
148
95
98
90
177
80
158
148
132
95
101
101
114
186
90
120
127
126
128
95
96
106
156
159
69
139
90
109
87
59
141
69
94
156
152
98
81
125
80
68
90
132
119
146
116
102
95
103
138
129
125
95
128
110
128
130
92
108
120
59
122
160
103
119
141
80
119
148
93
102
167
90
122
138
135
54
83
82
59
94
102
94
71
119
111
92
118
76
115
108
108
95
87
103
168
125
92
115
116
54
115
78
137
96
93
133
118
101
149
138
67
166
139
107
106
95
122
99
94
120
128
93
77
119
114
138
135
96
108
131
129
159
158
116
116
110
108
74
140
183
98
119
105
139
103
120
102
110
123
144
106
188
124
69
81
136
97
161
78
77
127
159
82
180
96
98
123
105
85
97
107
119
212
95
114
102
128
77
122
152
158
164
159
97
159
91
73
147
101
179
108
182
102
131
49
125
97
81
105
78
133
59
98
155
126
119
78
90
153
95
82
146
150
179
184
82
141
130
84
133
108
59
138
177
127
162
143
118
111
129
165
134
156
98
103
129
118
170
59
103
152
135
135
107
96
171
59
134
102
76
79
49
128
105
81
54
118
129
134
139
108
49
49
97
153
127
113
98
148
120
145
87
154
77
79
87
98
59
120
88
128
131
116
82
103
149
127
177
145
83
157
108
145
121
115
98
133
89
108
103
123
116
76
68
90
81
87
135
124
78
125
108
125
95
129
131
177
145
102
122
104
100
146
163
123
130
114
191
98
133
110
108
162
105
111
114
106
54
106
96
138
102
132
119
87
94
151
126
108
98
145
82
118
151
121
110
101
143
116
123
190
54
102
90
119
143
142
148
153
115
109
143
135
100
90
72
179
84
120
54
80
145
137
133
49
110
185
112
137
111
102
104
108
123
115
98
175
95
143
145
131
106
143
78
119
103
96
113
112
157
90
109
134
133
61
122
105
128
102
120
82
127
115
133
165
54
87
114
84
175
129
156
59
138
123
157
138
110
78
54
100
116
147
116
127
90
125
152
148
122
132
102
101
200
98
139
117
162
157
179
81
133
139
135
81
95
146
104
98
95
90
127
133
129
146
139
102
95
135
104
102
90
156
129
86
112
110
112
82
167
88
102
54
156
100
136
102
137
87
146
89
107
102
173
106
77
146
109
127
113
136
144
105
93
94
94
150
184
128
119
93
90
135
98
74
153
131
69
144
143
123
136
102
102
68
129
121
105
101
144
91
127
157
78
143
119
123
167
82
105
149
113
54
132
149
85
90
106
120
124
99
54
103
127
141
74
117
95
76
119
76
165
97
105
138
140
118
125
86
129
54
87
73
93
54
124
138
94
86
131
194
136
127
109
133
106
141
139
93
110
115
77
147
182
83
78
74
143
108
121
128
94
98
102
135
153
116
109
85
125
127
108
113
116
121
105
142
126
161
122
82
128
155
129
102
108
113
136
116
123
81
102
106
146
130
54
82
77
116
105
97
54
108
147
128
108
115
125
191
160
125
54
92
126
103
100
108
85
75
143
83
148
127
87
106
158
116
88
125
83
97
96
125
114
93
129
67
183
138
70
98
148
82
186
165
113
76
90
54
112
152
143
103
144
106
147
131
90
42
119
155
171
156
69
127
124
99
78
110
54
87
147
120
134
123
119
96
106
106
137
107
182
108
141
98
106
131
129
122
148
107
146
82
93
102
144
123
140
78
95
127
164
146
54
100
95
133
122
124
99
102
102
140
82
67
103
101
93
125
105
129
103
110
59
106
78
133
62
119
117
144
65
180
128
113
112
105
140
163
157
115
78
59
105
135
107
84
85
94
102
134
170
139
186
138
74
123
94
98
101
80
68
140
116
94
103
144
129
77
129
133
104
108
137
93
125
115
95
178
98
93
110
111
122
101
143
132
151
115
106
133
116
126
137
126
104
81
136
108
218
108
93
90
49
103
122
105
138
103
133
167
123
77
49
123
100
172
69
99
108
102
101
49
111
98
105
107
151
95
86
101
133
134
112
109
104
128
127
132
115
135
81
89
92
160
149
137
100
74
77
131
61
141
90
104
106
127
87
91
126
170
81
128
115
102
81
108
114
135
95
160
126
94
83
96
151
179
133
124
108
110
49
155
112
90
129
115
144
126
140
171
121
76
133
131
137
116
101
180
157
107
139
112
49
87
135
122
220
89
185
104
121
84
135
88
174
74
83
130
79
134
116
95
124
98
96
141
126
90
54
92
126
113
102
119
131
101
155
91
143
80
100
102
81
139
160
111
97
95
102
54
146
112
102
106
113
86
81
78
81
54
74
98
90
128
96
59
120
145
54
45
95
152
110
114
82
90
128
54
78
91
98
163
158
103
107
147
99
115
105
133
114
101
118
82
76
141
135
112
59
133
49
163
107
135
126
76
175
111
185
130
158
101
105
163
115
139
123
109
154
166
113
161
105
144
68
108
128
59
49
144
100
103
147
115
59
116
78
160
81
54
102
158
131
84
103
107
143
108
93
168
111
142
107
138
101
91
138
156
107
115
101
67
135
164
81
123
162
106
100
172
97
106
56
61
120
117
101
138
106
131
116
84
113
159
49
122
125
118
159
111
49
108
54
132
128
74
131
102
182
99
135
129
107
102
95
120
111
135
102
112
87
135
81
104
128
193
160
136
136
127
82
113
112
140
100
78
132
125
154
101
118
142
78
98
85
141
87
119
97
145
179
128
59
101
119
117
90
127
129
151
49
102
218
87
91
138
132
102
116
133
107
54
100
160
95
80
102
178
101
162
49
121
93
102
101
103
103
74
79
99
152
118
95
94
94
104
89
161
98
177
106
108
102
110
119
138
125
101
168
122
125
69
86
108
116
87
116
95
76
118
145
74
142
125
126
159
49
96
83
103
102
93
124
90
191
122
91
102
85
116
54
139
131
128
107
117
69
126
143
83
179
133
54
109
116
114
115
85
95
85
167
95
164
168
141
116
100
131
119
121
105
125
144
137
115
54
104
119
155
74
120
62
135
109
149
130
103
115
144
128
123
106
170
120
103
82
102
126
143
140
117
92
141
100
67
124
150
92
118
99
122
158
122
104
95
168
148
147
153
88
82
96
140
107
101
80
59
143
108
110
134
98
95
200
148
114
129
96
91
93
128
188
145
91
187
68
113
103
157
108
118
204
133
149
93
81
93
134
87
102
140
107
108
77
185
103
152
135
98
113
117
77
114
108
93
77
117
79
81
108
84
103
76
136
122
148
140
106
113
100
54
68
109
144
103
148
128
112
127
158
109
191
120
108
108
90
125
102
83
113
118
121
104
138
114
132
112
103
147
135
112
128
49
113
81
87
151
140
93
108
122
154
89
128
114
87
95
146
117
132
124
94
123
111
142
81
121
49
140
54
110
96
119
105
144
150
116
95
105
109
105
87
83
146
139
127
112
98
145
125
108
105
101
129
59
96
95
113
159
101
98
149
159
143
135
77
93
123
116
110
132
131
129
123
143
172
133
126
184
102
54
102
98
148
138
102
133
103
107
131
146
116
115
100
125
123
108
106
77
98
144
79
116
79
98
59
122
103
103
98
49
120
127
115
130
133
150
97
114
128
115
89
122
146
133
102
149
74
137
129
124
87
145
49
122
125
84
74
49
191
179
119
104
112
49
98
96
102
108
225
106
95
115
107
54
83
112
115
49
158
74
93
122
162
97
146
126
172
135
59
130
103
98
144
90
101
149
100
109
112
135
54
107
95
98
144
54
121
109
96
101
135
111
145
156
84
128
92
137
135
98
120
93
151
54
76
134
158
148
102
135
175
113
144
90
116
134
102
143
123
119
131
128
103
78
122
120
81
134
78
61
102
70
104
140
90
102
85
137
86
90
74
133
65
152
109
102
117
125
153
113
143
149
210
117
148
90
112
123
100
141
132
59
103
132
69
146
102
96
54
54
126
139
103
91
99
122
96
98
151
108
77
138
115
177
126
108
108
94
98
115
107
81
119
102
150
148
78
103
141
54
49
81
104
82
95
122
95
96
141
98
61
103
139
151
128
98
144
208
98
90
107
113
160
129
105
113
131
95
121
111
131
67
102
113
114
106
89
81
107
129
127
113
120
81
145
143
181
89
115
126
130
133
111
147
135
128
166
148
141
131
135
118
93
110
107
138
82
105
110
148
76
151
186
200
120
108
95
188
142
159
106
124
98
190
113
94
157
135
102
114
93
136
128
149
89
112
108
110
123
148
49
108
141
145
145
54
113
125
131
146
143
98
76
160
102
125
83
91
87
103
133
127
123
108
103
131
129
199
133
54
107
119
108
90
95
107
105
146
103
94
115
98
105
101
102
62
123
68
128
87
108
98
122
93
54
135
54
121
118
151
81
120
49
96
105
74
83
108
117
106
156
133
150
97
139
200
108
109
103
102
190
111
132
98
148
159
170
78
102
102
141
120
149
116
143
131
127
59
148
98
110
111
97
141
139
144
144
79
102
104
94
65
108
125
121
162
111
191
155
82
74
93
104
103
100
104
152
87
120
77
98
163
105
136
87
134
140
95
127
108
120
91
149
159
92
115
101
109
114
81
141
93
135
156
95
78
187
119
108
73
134
93
72
150
152
59
98
83
137
121
74
135
150
133
93
106
125
90
74
132
144
67
126
119
104
194
119
144
144
90
90
119
76
125
75
74
90
115
130
54
49
101
114
208
134
152
74
151
153
101
82
95
99
103
102
54
95
127
108
108
118
151
98
95
117
111
115
104
145
176
188
121
132
147
186
131
129
104
91
81
139
124
82
134
102
108
90
98
92
54
123
132
73
144
165
137
98
131
88
90
108
132
98
122
136
102
135
54
173
87
87
67
124
124
94
91
45
87
115
86
98
101
108
120
54
117
116
135
106
135
143
125
129
118
76
156
142
165
95
114
78
98
140
135
54
104
74
128
122
121
81
128
159
99
116
128
114
121
89
158
148
143
90
74
83
148
105
80
98
95
105
191
87
70
144
78
100
181
103
125
87
87
93
91
117
125
115
113
83
120
67
93
133
114
141
95
122
94
95
135
84
100
108
103
115
59
143
102
118
114
90
124
123
108
98
126
127
54
95
114
54
112
148
129
141
140
61
90
81
109
93
134
83
142
151
163
104
49
158
138
119
95
161
76
95
114
95
102
103
160
135
117
81
104
82
200
59
119
112
112
108
85
157
117
120
156
163
83
84
125
91
96
67
117
93
90
161
138
118
149
129
116
97
115
92
102
105
119
134
113
103
117
94
180
69
111
54
93
100
91
125
135
54
131
118
94
121
113
74
95
96
90
90
78
80
97
129
54
126
101
155
83
122
140
146
138
74
111
45
152
95
82
143
122
93
98
143
200
76
123
68
133
105
113
141
100
96
124
103
140
54
161
133
86
97
74
91
113
95
133
108
108
144
133
102
120
114
73
114
152
133
202
148
144
103
102
122
99
130
110
90
117
141
103
125
54
114
54
103
133
153
173
54
146
90
107
73
122
49
132
113
108
200
97
102
145
98
93
134
96
139
93
154
182
143
127
138
78
127
108
125
115
81
59
124
49
96
89
131
172
121
138
98
68
113
102
107
84
104
108
118
61
102
104
113
59
123
173
94
128
95
81
74
106
172
141
105
110
139
98
132
146
108
136
161
127
145
143
99
102
114
108
214
137
125
102
131
102
154
115
124
102
84
137
133
150
90
129
199
131
80
102
145
164
91
67
82
139
147
151
190
145
127
83
82
106
67
133
74
87
125
95
54
148
119
148
95
54
125
54
106
134
143
108
143
106
129
108
120
146
82
112
115
182
149
178
143
105
87
151
98
137
125
111
95
113
78
125
49
113
112
133
104
160
131
100
165
108
95
147
84
112
82
143
118
133
125
129
49
132
108
99
99
122
153
143
117
129
115
123
93
137
158
81
162
148
96
142
127
114
128
119
54
91
107
131
112
74
101
133
146
115
148
95
134
134
92
100
173
131
109
196
104
117
104
133
125
98
134
145
102
106
54
154
80
133
129
112
59
97
79
106
124
78
103
95
131
126
116
98
94
106
77
85
140
99
74
87
76
107
115
54
147
102
154
128
95
106
108
173
108
111
90
128
87
144
119
137
142
114
127
111
107
129
87
119
115
83
88
101
140
126
102
159
149
151
101
105
97
81
118
54
117
68
108
142
95
126
139
54
144
87
108
95
105
83
159
158
146
96
97
103
90
85
99
133
76
131
102
156
120
172
133
147
189
119
125
98
133
99
101
103
140
102
116
165
127
54
148
172
126
103
73
181
105
112
206
159
122
77
59
116
167
89
139
160
106
139
120
102
83
147
103
180
59
125
49
108
124
67
127
87
77
125
102
102
115
108
107
204
112
76
150
103
88
98
82
90
106
160
67
110
137
125
59
105
107
118
95
107
102
95
105
139
120
123
82
89
90
146
161
117
149
148
102
160
107
146
114
145
127
95
98
91
169
131
117
161
54
124
128
85
145
190
91
110
119
98
75
122
140
54
119
125
112
106
103
113
161
90
82
126
108
133
116
117
83
157
126
98
124
144
94
181
125
105
147
132
115
104
105
77
115
111
99
173
158
94
121
125
130
87
138
103
74
108
128
102
148
132
131
100
79
180
184
113
134
145
108
119
74
102
183
125
155
120
115
146
119
76
102
152
83
111
94
145
71
156
102
65
112
125
120
103
141
97
94
161
131
89
82
104
144
110
90
101
152
131
59
102
121
83
49
126
96
82
95
147
109
116
108
123
152
100
94
136
110
141
138
147
130
74
147
102
189
102
110
93
49
77
131
161
113
91
164
133
134
94
173
126
74
108
74
131
158
87
68
112
125
49
107
69
98
108
179
95
109
54
133
152
173
87
106
142
106
54
139
135
108
98
61
87
45
90
146
107
95
133
156
151
130
114
110
146
76
78
80
173
100
69
90
115
143
134
100
98
105
181
49
152
121
130
123
133
96
102
168
110
135
129
120
105
125
98
155
132
142
165
142
107
149
90
93
83
98
194
77
124
116
95
171
158
93
118
54
103
95
118
81
97
107
126
108
89
108
87
107
114
141
100
91
109
83
140
127
200
98
54
81
118
129
105
109
140
172
140
113
118
153
97
83
157
113
144
107
109
156
81
145
115
87
115
130
91
122
126
168
59
108
173
78
84
120
143
99
199
82
90
114
87
68
61
103
134
122
157
155
148
87
153
77
110
71
118
61
129
103
102
101
124
93
140
83
183
95
152
139
61
134
83
135
128
135
148
133
149
102
108
115
92
123
185
152
139
172
83
137
87
112
100
83
105
108
108
59
129
130
139
113
140
162
170
135
133
54
104
128
105
65
76
145
130
142
135
54
106
121
147
116
167
170
85
100
74
102
122
101
74
143
97
78
86
142
127
94
113
102
135
102
54
113
106
93
115
81
68
106
103
144
145
104
87
145
142
96
123
54
117
69
103
54
93
131
153
104
143
114
130
74
113
149
102
124
135
111
80
102
78
130
93
115
76
90
121
62
133
144
140
159
83
95
104
54
125
54
54
171
147
141
74
115
161
98
115
78
99
148
154
121
83
106
133
101
119
161
113
154
104
96
159
123
117
93
81
105
104
149
96
135
149
70
74
102
95
128
127
136
104
122
103
143
112
113
159
120
90
139
129
93
158
68
85
123
102
54
59
107
120
124
96
74
82
98
54
122
127
106
91
124
107
105
118
77
108
142
101
95
117
76
68
141
102
146
98
95
142
103
143
104
74
155
109
127
96
134
54
153
113
102
125
133
95
147
200
81
100
95
144
124
84
120
77
91
101
128
180
76
141
118
81
142
54
49
129
74
76
123
124
81
120
90
98
100
69
110
156
97
104
160
115
118
97
102
90
82
143
82
61
102
49
132
105
108
129
142
125
96
109
104
91
125
54
145
99
103
59
78
74
114
83
103
102
113
78
144
117
75
97
160
61
108
97
139
166
118
126
142
145
146
128
95
117
135
117
186
93
115
141
76
95
75
161
82
117
83
148
153
173
184
102
82
89
84
145
126
148
112
95
119
102
125
89
121
112
96
96
146
101
143
81
145
112
144
135
82
78
133
116
110
88
82
133
181
95
61
123
113
128
129
95
133
162
91
177
76
124
147
65
78
130
92
81
113
131
92
144
122
127
149
111
108
123
155
118
132
120
133
150
117
81
99
148
127
95
108
118
122
121
98
74
102
132
156
141
144
125
101
129
59
109
114
130
123
148
120
149
102
90
59
91
132
67
143
129
180
94
161
125
81
54
77
118
145
103
108
107
101
138
61
190
79
95
93
121
155
140
128
107
146
81
68
144
117
105
108
133
54
93
102
118
118
128
161
81
135
110
93
144
113
74
94
79
117
83
102
105
101
115
74
92
128
99
137
96
121
69
79
77
129
150
152
97
132
112
139
117
163
133
99
124
143
145
84
112
102
177
112
143
191
106
87
98
133
54
119
105
147
116
129
93
137
103
83
108
100
101
87
110
114
116
98
161
120
122
96
135
112
121
102
103
83
105
133
69
154
144
98
142
135
67
132
104
74
65
97
135
84
125
100
148
180
144
103
84
108
194
96
153
77
133
100
87
147
142
112
127
137
104
105
151
151
113
128
134
122
88
94
101
101
87
160
127
128
140
106
104
94
136
158
102
105
111
101
119
119
101
102
119
104
108
108
118
117
61
71
140
130
115
152
90
129
85
98
114
141
144
94
102
59
162
85
124
152
81
132
99
67
168
101
82
113
86
87
131
179
132
98
123
111
49
106
143
54
108
105
130
78
77
91
76
116
125
122
168
121
109
145
81
179
95
105
167
95
127
123
93
143
54
111
128
98
153
103
67
102
107
130
142
108
121
97
95
82
137
139
102
108
85
45
95
74
216
94
145
149
151
141
91
104
109
141
108
88
148
94
118
98
119
102
82
93
76
139
82
59
138
109
113
153
67
109
127
54
105
74
117
97
61
129
100
113
90
95
102
186
85
105
142
102
108
75
183
95
69
74
197
133
130
99
74
133
87
93
122
95
110
149
74
109
54
103
151
125
119
102
127
102
115
123
113
138
148
74
111
83
139
132
120
144
127
78
109
123
127
110
93
100
107
74
102
49
108
102
141
77
54
131
131
102
124
169
119
127
105
107
54
83
67
54
82
102
54
101
131
123
54
102
98
90
103
98
131
104
105
128
135
114
102
129
157
150
129
102
108
113
74
132
116
90
128
116
113
124
98
54
114
134
117
82
101
95
108
135
161
61
93
105
98
79
125
151
141
94
77
78
98
95
105
120
95
115
128
116
102
138
122
163
98
103
80
141
93
145
120
124
87
180
140
93
125
61
105
96
167
164
102
109
190
120
127
152
117
54
103
67
137
111
108
113
128
152
186
100
110
115
135
127
110
137
74
108
103
103
150
117
102
98
77
153
123
174
102
101
126
113
109
77
167
127
227
158
111
106
114
102
101
100
106
102
154
149
97
119
94
128
85
122
126
155
101
119
108
115
93
128
104
57
140
133
131
131
117
113
74
154
95
104
115
112
123
49
76
87
140
133
93
113
156
116
74
80
90
100
101
103
177
90
140
110
147
113
126
186
107
176
129
218
190
127
108
108
99
74
102
103
143
159
143
93
59
120
110
108
70
142
84
136
133
131
113
101
112
126
111
103
159
102
164
199
128
91
135
108
83
173
100
90
105
181
81
118
122
49
68
108
112
144
79
102
186
139
90
111
83
128
122
99
132
97
104
96
170
132
133
73
148
116
87
125
139
123
107
120
154
135
132
104
172
136
129
133
116
138
130
107
112
59
147
59
87
122
115
95
78
185
138
54
123
104
128
59
102
78
130
102
127
108
90
93
119
85
123
130
113
111
114
54
104
128
140
123
95
125
148
121
91
106
101
104
141
118
129
153
133
49
131
110
89
101
131
137
137
102
177
109
118
91
90
101
134
135
105
108
106
83
143
92
141
148
109
128
133
85
105
110
107
111
98
129
87
148
114
103
107
95
111
108
102
112
108
135
128
98
177
139
139
152
134
125
107
45
98
146
158
76
136
141
147
78
54
96
106
144
144
161
108
105
140
69
120
91
91
140
92
163
103
132
133
133
145
128
79
109
68
129
77
98
84
84
132
81
163
124
90
135
154
113
121
106
135
150
54
83
85
81
69
102
102
74
148
134
101
154
158
177
141
115
154
107
138
82
122
101
102
165
105
144
132
146
124
77
144
130
134
127
81
104
153
102
80
129
110
171
69
126
89
128
49
191
120
151
101
91
151
87
112
103
130
98
141
101
59
74
177
91
97
164
169
87
49
148
163
143
109
106
54
106
97
112
110
132
134
102
117
98
135
61
134
97
76
102
107
119
104
125
95
166
134
108
87
111
108
107
61
122
156
101
177
109
105
94
112
186
97
180
115
106
183
144
128
111
104
129
97
98
102
173
91
127
128
108
59
102
119
146
96
127
83
98
104
120
98
164
120
54
108
104
130
130
94
144
107
79
101
169
177
119
110
134
95
118
102
129
125
114
54
103
97
126
102
118
113
115
93
49
123
78
116
117
91
108
59
162
127
128
78
97
142
115
118
96
106
143
85
99
54
157
151
167
112
140
158
139
129
130
109
128
128
129
74
87
105
127
95
102
112
92
162
155
129
135
139
87
102
83
94
110
131
78
114
128
133
165
130
125
124
74
138
95
109
243
117
81
147
99
138
110
91
132
125
54
141
102
132
77
100
132
129
81
189
135
143
113
111
146
98
104
113
163
131
115
125
108
105
82
128
89
159
89
129
130
82
118
99
181
133
113
163
149
59
119
103
90
115
135
152
103
83
130
123
128
74
77
74
42
125
122
90
122
87
102
148
87
102
93
147
111
148
106
116
112
81
73
112
120
61
54
155
98
95
87
155
115
143
110
101
49
108
54
85
107
127
149
124
123
102
162
115
73
120
133
175
90
112
87
112
131
98
123
148
54
87
98
90
161
59
99
149
85
90
138
122
129
105
144
81
135
105
121
108
126
142
101
107
135
119
100
108
145
148
108
108
116
105
121
118
98
116
68
108
126
49
105
110
140
177
107
162
103
172
140
103
128
81
106
127
123
98
81
87
49
78
116
147
129
103
115
54
76
143
113
127
49
98
167
143
134
125
101
103
142
102
98
99
103
133
120
85
123
93
95
116
153
106
95
103
54
54
169
125
93
124
133
102
113
98
173
97
118
74
109
141
148
116
105
135
113
102
135
125
127
94
109
94
103
206
59
105
96
83
144
152
138
71
85
95
61
103
95
97
146
95
131
112
102
102
83
102
102
129
181
89
108
146
144
127
124
155
117
133
93
153
104
148
99
145
82
124
142
102
137
146
107
106
179
161
59
74
95
128
115
103
90
105
98
101
49
76
115
105
134
85
128
106
113
102
118
98
127
127
101
98
108
125
112
115
127
133
138
122
92
153
128
54
130
131
59
120
100
133
95
200
108
102
127
146
164
78
102
101
131
160
116
104
148
156
143
108
91
157
159
98
131
81
103
132
173
146
98
150
154
166
102
108
133
133
59
114
141
102
95
117
109
77
133
80
65
87
144
54
96
123
180
154
126
106
122
145
61
149
98
133
74
184
142
117
108
119
76
112
68
146
134
76
134
143
54
107
95
88
127
102
115
132
137
74
102
108
158
74
124
127
77
83
103
110
90
147
59
154
142
102
137
97
123
90
135
109
161
110
142
125
100
95
54
125
107
81
90
131
89
145
125
125
101
103
155
131
90
114
81
112
109
101
146
98
131
127
118
148
144
132
100
125
124
108
83
120
95
103
100
145
131
163
54
131
102
117
98
128
75
86
93
146
123
128
162
133
143
180
143
93
140
88
143
59
128
141
90
98
99
134
125
110
153
147
45
49
89
105
94
158
114
153
102
128
107
100
143
100
59
95
107
190
146
124
77
123
194
135
54
100
113
145
146
102
108
84
54
106
87
200
141
68
74
91
106
134
102
102
181
71
114
82
102
164
133
99
89
133
148
82
118
125
89
103
143
94
74
77
91
142
183
87
135
100
133
102
82
90
150
107
155
116
76
173
69
121
97
87
120
184
107
133
129
80
103
140
100
158
105
90
144
153
68
127
103
162
130
102
132
160
74
126
84
139
76
77
94
148
90
143
117
159
98
103
77
101
135
93
94
153
98
168
95
77
161
95
103
110
132
54
111
227
143
131
116
66
150
163
122
54
108
54
151
49
198
150
106
145
98
94
180
127
54
95
110
115
144
158
126
150
98
168
108
165
121
130
83
98
175
125
95
110
115
131
116
107
98
85
108
123
125
172
84
120
80
142
88
134
108
97
114
125
126
107
177
115
77
179
180
54
143
107
68
188
85
121
161
87
132
139
132
111
102
128
154
142
140
170
108
102
121
98
106
107
129
115
134
134
92
83
115
87
160
90
114
119
103
124
170
148
125
67
102
153
77
98
129
134
159
115
133
102
103
81
62
105
182
77
100
108
103
135
68
139
122
154
143
95
131
102
81
79
138
54
98
144
129
88
108
108
192
108
107
77
134
96
76
108
115
108
93
72
99
140
116
140
87
120
134
108
130
146
117
91
190
76
102
87
153
107
74
130
130
80
97
82
139
143
104
78
102
98
122
147
102
101
98
163
146
113
120
90
74
79
130
76
140
159
120
93
141
90
97
103
95
103
137
175
105
105
153
113
108
65
141
100
103
139
99
54
149
146
144
121
104
105
172
111
100
59
142
122
79
126
112
148
108
113
93
128
113
107
128
116
115
82
102
97
97
107
157
144
97
139
108
108
97
131
102
102
131
135
92
121
103
54
54
116
78
148
118
78
108
128
163
99
95
83
89
131
155
138
148
95
123
95
117
108
137
105
54
113
162
108
95
68
113
105
138
156
91
102
82
153
74
54
74
116
84
129
61
123
45
77
136
68
106
104
93
98
131
90
76
146
100
190
90
126
99
139
194
102
108
80
138
209
92
197
157
171
93
54
122
119
113
150
160
95
74
102
133
160
102
105
156
99
108
147
103
78
113
83
167
140
125
120
115
114
95
112
200
102
97
135
100
95
102
155
125
131
68
109
101
102
93
131
132
90
78
74
59
65
97
123
144
59
95
102
83
120
98
67
116
125
140
106
144
152
106
117
122
127
122
115
115
103
121
99
125
78
102
90
74
150
108
103
112
153
93
148
105
67
73
77
130
102
144
163
97
77
143
54
139
122
139
92
170
93
57
148
90
120
143
80
49
135
148
101
110
92
104
77
128
78
108
173
81
110
161
118
113
95
148
111
108
78
120
127
144
173
120
93
81
54
54
101
153
124
98
128
103
136
105
108
100
158
124
112
148
100
148
95
209
108
150
134
67
132
103
107
146
103
143
87
123
81
119
119
140
161
128
124
136
146
100
128
105
147
116
133
124
82
108
118
131
76
135
139
117
95
169
117
138
128
95
93
103
143
81
80
129
102
102
154
158
97
132
89
130
113
150
95
131
108
92
130
148
77
54
103
49
87
110
59
87
131
128
102
143
128
105
95
81
195
130
54
112
54
139
83
122
68
160
132
145
73
131
76
147
192
98
91
111
73
108
59
96
179
123
97
146
101
80
94
70
97
98
49
102
141
125
95
148
82
150
125
156
101
105
161
143
78
105
54
134
143
108
112
108
135
74
74
76
54
82
117
97
162
98
128
128
122
148
76
93
96
95
131
54
105
95
95
87
101
132
130
98
154
78
108
128
138
130
113
129
158
95
133
139
95
104
176
108
118
144
116
161
102
106
131
108
105
145
155
102
196
100
156
116
132
129
158
113
82
117
138
78
120
148
135
93
119
104
164
104
93
126
174
150
99
49
157
80
98
112
105
105
119
76
85
135
102
118
130
102
133
101
87
94
129
134
98
160
87
91
128
136
126
125
135
54
129
124
87
79
149
122
106
136
67
149
74
131
80
122
123
172
133
140
119
161
140
67
101
54
104
95
139
124
124
147
105
110
143
103
115
144
205
104
108
128
132
103
83
144
134
101
94
89
146
102
125
87
99
90
157
76
142
107
93
138
128
145
120
134
90
141
118
138
116
90
108
78
79
102
106
103
90
104
90
124
102
81
77
92
129
123
87
80
80
139
120
49
202
76
132
158
103
81
148
143
102
114
151
113
98
67
99
77
137
116
100
112
112
98
73
87
98
158
100
108
97
108
102
101
89
125
81
140
173
134
108
98
71
117
148
142
102
98
77
153
157
130
104
123
108
188
93
90
90
194
124
142
90
128
54
125
200
168
109
81
87
135
123
103
98
54
107
108
107
54
93
95
119
115
78
113
108
87
126
98
161
147
157
105
90
80
149
112
49
98
108
120
119
67
162
106
54
128
49
139
118
132
115
83
145
161
95
87
128
61
180
69
109
89
118
90
102
103
83
135
155
125
87
80
135
94
129
156
109
110
191
136
143
140
147
148
199
76
135
105
49
106
77
120
121
145
111
141
102
114
89
93
71
129
160
83
119
105
132
87
81
150
87
135
120
106
143
111
169
137
102
80
130
100
110
146
102
146
103
124
159
113
112
132
132
107
117
145
98
115
132
132
98
112
129
87
105
103
102
120
76
130
99
69
83
149
104
87
120
83
102
108
119
118
105
90
113
129
128
133
120
107
105
91
102
159
135
91
129
115
111
145
157
57
102
85
116
120
106
108
94
76
105
137
198
115
112
125
158
113
108
118
102
59
113
143
123
99
106
93
155
76
160
180
54
104
54
74
69
166
123
110
123
114
100
126
129
81
74
108
122
74
108
79
110
77
76
102
113
87
92
119
103
145
54
89
104
119
160
166
101
170
99
118
147
134
108
127
93
141
128
164
128
54
106
122
78
108
147
127
84
134
132
108
172
89
108
186
49
67
137
134
90
127
74
83
118
108
145
103
89
73
95
102
141
143
102
123
117
85
83
107
142
144
98
49
138
92
83
177
112
126
86
124
165
107
98
102
90
154
49
110
120
116
131
125
133
134
93
124
98
108
162
102
96
49
76
82
151
107
165
125
128
129
93
108
102
124
86
108
118
122
125
102
153
112
90
124
119
145
130
162
98
90
123
115
106
81
129
113
109
108
100
98
109
100
155
149
81
93
143
108
99
80
54
54
159
95
154
113
144
140
147
122
92
104
91
142
98
130
187
129
67
95
127
128
126
135
77
81
91
76
67
138
109
150
173
110
116
115
125
111
54
84
121
87
126
112
125
112
125
125
111
90
105
102
113
127
106
61
54
84
102
123
61
138
76
102
164
113
111
125
108
97
131
103
49
102
235
96
81
54
113
91
102
130
113
76
141
120
93
108
161
145
102
125
98
144
98
125
149
158
104
91
54
108
151
104
140
108
104
83
95
125
136
162
144
81
149
88
97
107
113
160
158
152
201
96
108
131
147
163
101
143
124
123
104
158
127
128
109
122
98
107
137
138
95
54
141
148
87
126
177
74
108
97
147
139
117
102
111
187
102
148
135
114
142
127
99
104
123
144
128
89
158
95
144
98
155
85
93
87
134
112
101
54
141
157
95
142
153
113
108
162
59
59
127
135
95
76
90
160
93
147
122
115
128
123
108
98
173
133
131
112
59
81
155
87
145
97
158
104
153
162
108
110
111
144
131
86
95
119
128
86
136
90
105
111
87
132
151
49
161
59
113
129
115
83
125
139
179
140
127
146
120
102
143
146
134
97
103
106
119
76
153
78
154
144
121
133
133
125
102
120
128
149
105
163
120
62
170
108
118
146
128
134
131
83
59
54
175
116
148
85
147
107
49
122
174
177
114
109
123
113
84
103
89
123
157
73
142
132
129
126
115
102
82
128
122
107
114
113
107
102
156
141
120
87
108
93
135
92
83
141
135
102
68
120
138
87
145
82
106
116
119
54
128
159
117
153
144
138
118
126
77
93
127
121
185
138
117
111
93
107
93
177
123
81
95
98
158
145
161
67
92
81
87
108
102
59
132
125
93
61
127
65
80
150
144
133
77
95
85
104
76
114
59
133
139
109
59
78
98
98
87
155
104
110
118
133
78
112
156
74
98
145
81
80
59
118
54
96
148
98
95
114
87
113
103
137
85
118
102
102
126
95
59
155
126
100
128
124
97
152
138
91
128
90
77
92
150
135
54
85
159
146
49
78
110
138
138
82
121
181
121
102
138
108
142
130
135
109
135
103
102
139
133
172
105
185
114
82
93
102
98
165
128
76
124
161
95
98
130
98
98
93
145
188
93
168
101
89
108
150
144
110
114
82
98
116
69
100
142
54
109
105
90
77
177
93
98
112
98
49
107
147
116
99
77
118
98
113
88
96
88
108
105
132
112
167
122
108
135
119
49
104
87
76
126
124
116
141
141
104
54
101
164
90
97
70
122
102
110
116
117
91
118
115
132
103
143
54
143
120
163
65
49
118
108
158
130
67
81
81
82
69
128
59
113
117
125
49
54
135
102
98
120
74
98
80
78
144
99
121
119
90
168
148
113
162
146
81
95
102
138
108
137
127
112
98
108
121
79
122
77
129
129
150
143
81
171
127
114
98
102
138
140
92
111
83
149
87
109
49
81
84
102
49
130
77
81
138
65
118
168
103
102
90
92
132
63
142
133
54
128
120
134
76
105
168
143
118
114
114
96
123
118
129
142
95
106
98
103
54
101
147
116
94
132
110
129
127
54
115
108
54
103
139
95
113
132
111
160
100
61
109
100
140
107
81
80
103
84
135
153
86
135
129
107
140
98
120
159
116
97
85
72
80
200
153
120
82
98
146
96
124
105
83
116
143
114
148
128
121
105
96
169
82
105
123
90
129
85
75
83
127
112
102
127
137
136
81
142
112
113
137
130
194
80
109
49
113
95
83
82
141
108
54
91
136
109
144
106
78
59
138
135
98
59
102
87
105
117
102
96
132
82
114
113
115
165
137
76
131
154
118
163
109
87
108
92
143
135
120
139
140
158
108
99
94
118
131
125
104
81
110
107
90
127
98
131
98
106
102
118
111
98
85
148
90
123
139
68
118
49
134
112
130
102
146
87
95
103
126
98
103
94
153
137
134
139
127
107
118
148
88
146
154
103
111
159
96
95
98
170
101
67
135
105
148
122
103
125
137
135
135
118
137
119
141
121
98
105
91
105
95
112
69
107
97
129
54
54
132
136
150
146
113
54
90
109
98
92
185
131
128
155
157
111
139
196
102
106
120
133
61
87
95
101
177
156
83
135
101
124
164
108
116
147
98
54
109
83
106
59
115
104
149
123
144
93
54
154
54
90
150
126
54
104
124
115
101
135
120
54
173
119
147
102
84
81
80
86
81
107
106
114
121
135
112
110
134
117
59
108
137
118
89
87
124
139
54
115
127
139
139
122
107
129
85
104
133
145
106
105
59
124
164
101
49
177
138
149
132
49
95
74
81
150
127
118
133
126
113
65
77
109
125
114
113
100
114
160
114
49
115
182
49
147
95
84
95
108
133
100
102
68
129
168
102
108
114
95
91
105
112
111
95
95
165
113
113
99
129
93
163
107
141
130
100
103
87
132
87
98
165
123
110
84
101
119
108
143
105
147
125
105
103
133
98
126
113
77
135
112
140
129
95
125
148
59
111
105
154
81
94
108
139
158
119
132
102
145
84
110
83
180
103
132
90
123
115
148
102
83
124
156
85
103
115
148
120
101
108
84
107
101
200
49
61
111
98
116
121
135
128
148
82
114
101
87
173
98
114
116
103
107
156
139
81
109
90
107
92
103
111
92
59
83
151
133
49
156
77
97
161
188
74
140
116
156
137
49
131
125
96
128
95
101
113
108
93
114
105
156
110
80
91
137
157
108
131
129
74
137
144
92
161
57
112
143
107
95
89
135
106
130
81
85
127
80
87
117
105
136
128
54
155
124
119
85
119
76
107
113
135
140
171
120
118
108
131
125
74
95
161
151
113
77
143
132
115
100
114
98
97
147
115
98
108
115
129
143
118
68
101
49
163
121
98
76
142
148
108
127
120
95
135
102
105
59
94
88
147
102
131
59
108
89
74
139
91
101
129
98
108
107
54
104
81
130
160
115
113
130
139
88
73
130
95
98
135
119
87
102
85
103
142
128
106
98
82
117
103
95
159
54
81
171
122
128
158
205
69
115
74
118
131
74
105
135
109
122
178
124
160
124
140
154
125
112
118
133
108
156
128
147
133
89
90
94
135
124
95
139
79
98
126
124
125
98
120
131
112
86
78
143
99
139
152
87
104
128
144
102
90
123
108
74
103
114
152
128
175
101
135
96
97
105
95
110
106
124
127
123
123
131
124
108
120
123
167
108
143
96
74
128
109
90
108
84
108
175
108
128
144
110
83
100
150
99
54
85
125
117
99
160
139
54
125
200
149
135
96
85
84
104
135
170
123
146
125
155
97
102
145
133
54
113
121
105
97
80
95
49
74
108
170
113
117
103
158
102
107
49
135
110
141
91
102
111
174
111
124
127
76
94
103
102
167
98
106
210
107
112
78
150
107
125
130
144
131
147
124
148
77
127
144
93
98
135
97
125
139
74
118
65
131
101
127
91
68
54
54
115
81
128
126
147
107
87
103
101
125
127
157
144
98
102
128
105
106
84
69
137
155
93
101
92
115
124
123
121
144
157
146
134
105
90
105
174
134
128
148
81
142
128
108
131
102
91
121
154
165
125
110
83
144
122
140
74
123
84
179
77
121
104
118
73
116
179
115
85
103
127
127
179
141
92
131
133
116
99
180
146
102
119
59
132
90
167
115
127
107
123
136
142
144
69
74
111
127
184
122
108
85
118
112
101
68
147
93
97
115
83
154
131
139
130
124
125
103
148
150
135
125
119
108
49
120
95
115
95
111
138
125
105
140
100
133
125
113
114
103
91
123
136
93
177
115
83
150
97
128
88
105
102
126
134
129
112
161
155
83
135
93
101
145
103
158
61
117
145
127
122
139
92
141
184
125
95
194
74
148
120
141
149
158
171
194
150
135
126
127
115
157
113
102
144
122
106
104
133
105
87
116
138
63
100
128
131
125
117
68
134
67
150
54
119
125
49
112
49
95
108
181
95
103
127
85
107
76
152
141
108
111
86
81
139
115
108
110
149
159
103
96
95
115
146
132
139
115
146
95
184
183
126
98
78
133
160
154
83
144
158
154
112
137
139
99
108
158
100
133
136
115
74
68
152
158
85
103
126
133
128
108
89
135
108
149
126
103
138
139
177
97
118
109
77
144
120
106
184
148
87
108
144
81
116
148
148
119
151
134
116
131
54
91
109
119
113
117
108
180
95
146
85
144
137
107
134
101
115
125
59
150
131
81
140
128
202
74
129
99
82
152
112
98
122
78
158
117
93
112
90
143
98
160
101
87
96
54
138
81
127
141
125
127
105
150
108
92
87
133
93
143
98
144
132
153
101
129
163
156
129
68
194
155
74
160
98
89
98
160
82
143
152
72
95
149
107
98
103
104
126
96
108
105
102
148
125
95
103
131
145
144
139
172
95
129
110
110
119
91
161
145
96
101
145
159
91
85
161
108
125
78
106
98
103
125
107
102
128
112
108
83
102
152
125
95
98
92
152
147
158
147
117
100
127
104
108
141
102
133
132
115
154
123
131
106
148
109
119
90
107
108
191
68
126
184
105
138
119
129
135
129
76
167
82
123
129
160
114
112
123
153
118
78
151
95
161
155
112
100
93
131
97
54
102
140
49
110
125
77
115
146
115
77
120
112
155
134
105
98
133
99
115
125
131
115
95
67
152
145
114
54
114
103
108
54
82
104
100
90
113
133
167
149
124
96
87
111
82
128
77
107
87
54
133
121
125
111
92
139
158
104
140
150
128
134
102
169
145
98
167
94
54
134
113
59
125
165
78
122
79
141
86
104
132
165
102
93
119
123
83
145
125
142
112
177
100
110
67
88
116
128
94
122
133
95
106
97
109
81
104
156
80
96
120
124
133
160
155
130
97
99
86
98
105
170
140
87
54
108
120
124
99
90
117
124
149
83
59
99
67
200
129
103
96
139
77
89
120
91
122
93
93
81
141
103
96
111
112
74
49
106
95
98
101
133
118
101
141
118
93
91
148
124
95
129
136
162
103
145
107
105
146
150
106
125
108
135
143
125
135
128
81
117
205
106
98
146
77
100
140
129
102
109
145
110
54
110
95
115
117
122
144
108
95
138
148
61
54
128
135
173
144
161
124
85
76
112
130
105
138
81
148
65
108
87
115
132
97
126
76
95
137
137
135
85
114
115
83
121
98
149
49
112
95
106
87
123
129
96
133
74
124
103
172
115
128
102
124
54
102
109
112
102
103
112
76
78
99
76
91
159
123
81
117
77
105
109
103
153
120
137
111
147
108
105
102
96
54
81
69
109
132
113
143
131
49
97
110
120
104
145
155
105
103
98
117
106
95
111
124
135
108
95
145
91
118
146
110
108
152
145
91
95
133
54
155
93
61
145
97
118
104
113
118
104
125
81
84
108
125
98
93
76
127
169
133
163
116
158
59
67
141
103
173
98
103
120
132
115
61
120
131
149
106
92
91
113
128
95
104
127
133
107
101
114
95
118
172
179
155
105
116
118
139
109
123
102
90
150
82
119
161
112
200
54
137
141
107
102
144
116
108
104
144
113
76
117
88
153
136
92
128
117
108
103
100
156
90
137
140
161
130
109
135
112
148
115
59
91
83
111
112
131
95
91
100
98
54
101
90
143
112
98
116
54
62
144
128
120
132
81
102
100
134
179
103
120
77
80
146
95
98
149
182
107
117
54
103
105
144
122
110
106
93
117
82
144
137
107
98
160
59
120
133
87
108
118
103
91
114
90
103
81
102
117
100
120
80
132
163
111
54
98
159
101
88
120
154
54
131
88
113
106
59
145
127
123
162
194
103
114
145
105
114
102
98
101
84
54
76
103
145
132
116
98
127
126
103
146
115
215
118
95
135
84
96
113
106
59
137
193
145
125
123
117
81
153
81
125
139
104
81
98
104
124
127
148
143
145
81
157
125
108
102
93
120
81
78
74
103
93
154
87
130
105
87
139
123
98
156
81
136
123
173
129
118
99
118
95
156
103
121
105
97
115
127
80
125
154
106
133
185
85
140
96
149
108
101
115
137
105
141
133
89
61
129
134
125
95
98
186
150
102
95
107
122
139
149
97
112
132
109
123
77
102
77
184
105
120
87
137
106
100
101
113
49
127
54
118
139
125
109
116
192
114
158
135
118
87
97
100
87
108
102
127
87
82
106
108
144
103
103
67
117
81
109
178
54
78
54
128
123
102
118
74
68
117
76
125
141
109
119
123
182
104
125
90
77
128
95
169
110
149
168
134
156
95
127
99
84
67
101
145
95
91
103
132
99
145
54
180
110
111
102
76
54
148
133
86
117
141
119
98
127
59
108
133
116
122
129
109
172
127
94
121
146
118
104
93
100
107
144
111
85
63
143
93
140
119
151
102
141
131
154
116
150
110
130
108
145
102
111
108
98
97
112
112
101
127
146
127
80
108
157
102
84
133
154
110
145
110
185
172
123
129
122
177
108
119
147
160
95
178
82
107
135
143
111
117
118
54
145
108
102
157
108
148
96
148
95
106
103
169
75
199
120
107
67
133
98
155
131
132
177
124
102
93
76
95
97
98
108
79
146
131
132
143
93
140
146
78
92
133
143
108
105
116
120
135
143
153
132
156
166
95
148
110
163
54
164
102
148
118
144
158
123
98
101
131
90
93
144
83
103
160
180
93
93
90
125
175
165
134
149
78
107
149
120
116
108
128
98
104
106
137
87
140
110
125
138
134
115
105
82
112
114
143
98
96
151
104
167
140
49
97
102
61
138
54
156
101
128
78
78
143
165
49
144
213
93
177
150
54
197
146
122
74
74
117
144
130
59
112
158
67
128
158
105
115
158
142
78
126
99
125
182
49
114
113
174
122
146
139
113
180
127
49
104
79
90
146
97
121
140
135
141
61
78
120
150
155
79
147
93
122
118
127
107
133
123
112
119
103
116
108
92
98
143
103
128
94
106
88
76
81
139
88
134
114
156
200
91
127
135
105
103
141
98
119
113
115
157
121
77
121
183
112
120
104
101
110
73
105
133
124
95
141
149
99
123
128
90
95
130
95
100
160
137
103
128
102
175
118
172
94
104
76
113
156
116
149
131
125
110
131
146
157
54
74
110
135
61
130
120
102
133
173
120
143
122
98
111
147
116
81
164
99
108
127
120
144
121
107
101
59
103
95
82
103
125
146
85
117
117
107
90
59
61
98
154
116
90
118
54
146
80
165
145
76
140
123
113
97
103
149
136
144
76
127
90
139
155
128
76
129
132
74
157
76
97
59
105
110
59
49
123
81
128
84
133
91
145
128
144
143
195
67
96
199
90
132
122
160
102
110
112
81
108
59
127
169
102
117
67
126
83
144
107
117
135
102
116
95
100
99
101
95
145
194
144
149
117
127
135
96
98
132
121
108
101
129
160
137
165
49
54
119
166
97
59
134
127
107
139
85
78
105
159
76
160
152
95
113
95
138
107
109
121
106
142
82
120
127
148
74
141
151
128
177
78
115
61
102
168
126
98
88
54
107
138
105
111
107
95
155
146
97
101
92
128
144
127
127
141
97
141
110
115
65
157
138
78
95
123
94
176
148
91
140
85
114
155
111
139
105
147
159
54
125
127
122
108
83
120
49
143
141
159
124
124
124
165
175
84
108
157
125
67
182
103
95
81
164
185
148
106
113
177
167
69
154
142
123
95
134
220
59
167
140
105
117
140
102
155
102
121
179
125
115
158
143
131
104
99
114
151
146
49
162
74
92
117
77
103
164
91
118
152
150
54
122
110
59
78
102
124
150
128
145
128
98
145
68
120
128
146
124
91
107
140
106
102
96
130
103
95
145
148
140
117
120
54
108
123
117
74
95
59
90
119
81
148
103
77
117
127
49
198
54
106
93
91
169
85
74
143
137
98
119
120
92
59
132
78
54
128
148
124
98
141
69
81
104
94
81
103
103
89
57
98
122
147
115
101
98
141
106
87
101
125
95
143
126
54
76
68
120
98
95
89
102
189
156
109
163
91
104
84
155
119
108
97
139
111
125
103
105
113
102
150
129
98
49
105
110
104
61
81
117
96
103
137
95
108
167
82
105
91
140
128
93
123
77
139
147
96
119
139
160
106
82
145
105
108
90
103
102
118
146
74
145
94
101
108
78
141
95
87
144
133
76
80
113
81
113
121
141
115
105
177
103
168
104
122
118
127
98
108
123
108
185
114
128
59
159
128
98
123
173
68
113
80
112
128
147
96
137
126
89
139
106
114
161
105
120
105
125
144
93
69
103
80
148
81
160
143
81
108
146
146
113
98
121
131
152
97
134
119
74
102
124
108
107
129
113
81
67
98
96
143
92
147
144
74
94
136
112
126
95
135
103
130
57
127
77
96
81
120
91
108
128
81
102
156
105
108
112
102
139
108
95
81
81
102
93
148
77
129
54
81
108
133
134
77
127
117
126
106
112
113
107
91
81
101
74
137
77
139
107
128
102
82
185
120
149
54
194
83
113
103
108
106
77
93
59
180
143
143
128
97
81
95
136
54
147
102
108
124
59
134
101
98
97
103
140
159
75
108
124
140
131
54
148
74
67
116
144
98
135
131
102
143
78
59
103
116
95
117
106
127
108
93
107
121
107
136
156
194
83
143
108
118
120
177
87
145
81
109
108
95
83
74
98
97
78
150
112
97
93
93
92
85
92
108
186
162
133
140
135
117
100
215
49
122
102
102
74
145
126
81
121
91
153
78
130
114
156
145
54
116
153
146
84
98
152
106
179
108
93
89
81
94
158
120
153
96
82
81
103
135
148
143
110
80
157
100
177
90
108
102
115
105
131
95
131
104
131
59
137
113
111
112
138
106
101
113
84
99
117
128
127
86
133
129
105
93
100
191
133
115
75
126
147
131
83
182
105
134
91
96
126
123
147
113
131
49
116
110
90
178
78
133
144
115
122
127
183
111
105
104
125
54
101
84
54
78
160
104
91
107
103
127
133
117
170
120
54
90
76
82
112
130
95
90
158
148
160
170
99
151
135
106
114
96
108
142
87
90
177
125
90
113
98
98
65
92
113
95
96
126
88
100
137
133
94
79
90
176
127
90
54
122
77
90
178
98
161
96
146
107
125
98
155
155
141
164
96
94
152
102
49
109
102
96
78
108
112
74
161
115
145
131
105
120
177
138
135
133
54
142
133
93
166
172
104
98
102
138
139
74
135
159
137
171
146
177
122
54
123
69
119
148
77
121
97
81
148
121
93
128
137
101
156
166
98
59
82
87
85
140
83
127
108
86
163
54
106
95
84
123
115
122
105
77
155
116
116
104
137
117
78
102
54
54
152
154
54
165
113
149
98
146
96
107
138
74
120
122
144
109
105
173
115
76
54
116
127
108
135
108
145
96
149
83
82
146
77
144
120
150
102
133
103
160
162
61
82
116
124
153
163
101
118
125
93
98
102
110
161
115
118
82
164
125
66
158
124
156
98
117
96
168
54
200
138
124
120
96
112
105
100
123
127
76
49
126
81
115
126
132
174
132
131
148
95
112
146
112
101
161
108
97
113
128
152
132
135
95
150
134
113
116
168
144
82
162
133
157
96
168
150
108
140
112
76
99
104
116
154
154
85
95
125
54
135
135
102
54
123
115
102
78
155
98
124
96
135
90
109
109
102
156
135
98
95
154
124
121
67
131
87
96
69
83
135
103
146
125
81
76
123
160
89
120
148
102
132
90
133
95
54
92
135
167
104
108
113
77
76
90
67
100
107
54
78
145
86
158
109
95
132
119
129
103
116
147
112
152
155
137
49
89
164
132
81
129
135
116
54
96
106
95
87
81
141
154
146
158
101
129
125
120
79
77
125
70
125
114
124
77
125
147
119
106
119
110
148
114
128
98
131
110
110
177
148
172
94
72
107
126
68
54
110
176
112
136
95
115
135
214
138
194
108
84
147
186
59
144
131
116
127
110
92
159
142
98
54
217
144
91
177
114
157
85
77
99
95
130
135
95
142
143
95
95
81
81
131
122
114
126
149
142
162
121
115
89
134
59
98
113
140
102
54
103
99
95
85
138
111
164
135
101
93
97
95
102
99
113
108
85
137
98
151
189
106
103
139
122
109
145
116
82
121
140
175
116
177
93
89
129
105
133
122
59
107
98
197
85
148
115
106
124
65
122
135
103
54
132
54
136
142
105
83
108
135
88
138
131
54
164
83
154
160
124
124
80
93
107
141
81
148
146
74
95
129
146
123
117
212
130
117
100
98
144
166
134
158
141
88
112
146
123
95
54
158
87
92
133
103
119
112
113
116
149
119
125
172
149
135
127
102
54
150
156
124
83
79
93
113
208
108
112
99
138
102
130
169
77
101
135
150
126
123
131
93
133
82
87
118
107
93
90
111
120
118
78
119
113
163
75
100
121
110
139
138
178
79
108
83
95
116
87
177
123
49
82
108
76
101
174
108
102
77
106
96
67
148
109
82
102
110
96
106
107
141
103
110
97
172
54
127
103
139
107
115
113
133
152
78
105
108
82
140
87
140
145
113
82
164
95
161
103
108
49
99
81
106
157
98
180
113
116
160
122
76
118
115
91
135
157
54
102
79
141
59
95
156
123
165
112
103
104
113
106
166
144
130
105
100
119
49
152
91
108
114
194
80
97
119
108
156
88
124
161
113
135
82
147
102
110
131
90
59
141
144
106
105
106
113
122
116
158
90
80
102
138
186
114
155
59
103
194
119
99
137
102
151
87
95
112
159
54
118
139
103
149
79
54
115
59
86
179
136
96
114
135
54
112
54
82
173
155
139
137
91
136
130
103
110
106
144
158
118
107
54
130
163
146
102
155
120
74
136
112
54
108
118
95
164
118
177
98
122
59
91
102
167
93
133
95
99
87
96
149
127
102
95
104
78
119
160
67
107
130
148
76
177
126
54
67
113
103
104
109
118
92
155
108
147
153
103
77
95
138
78
106
77
119
103
117
158
165
108
163
117
118
105
102
95
90
136
112
130
74
127
79
98
54
116
136
152
131
106
126
133
59
142
76
102
191
143
89
163
104
135
106
225
172
49
166
148
108
146
143
164
121
95
146
54
117
114
54
117
54
84
68
76
122
106
123
98
113
110
143
81
169
85
104
107
83
79
127
141
179
78
168
98
158
96
89
129
94
95
101
150
128
71
130
91
133
142
154
102
92
102
155
87
70
141
95
101
145
156
49
174
140
116
102
135
133
59
158
95
142
157
118
69
102
59
49
59
93
123
68
107
94
74
138
99
98
153
131
74
112
128
114
131
125
121
96
93
133
82
96
57
81
69
97
147
113
115
123
125
168
135
102
115
101
146
138
144
98
110
91
93
142
90
129
127
76
133
87
98
108
67
153
125
87
49
140
90
133
117
129
59
99
49
92
165
126
102
111
136
140
107
141
59
116
78
173
81
144
127
70
126
154
131
157
129
144
102
106
113
59
122
102
93
145
124
77
146
128
123
114
84
102
169
128
123
102
113
77
96
159
54
140
113
79
75
95
84
111
161
102
140
93
123
115
116
124
148
146
123
104
95
54
127
105
115
128
54
131
193
95
154
81
74
114
150
117
115
84
104
79
119
54
81
174
161
144
108
159
127
141
111
83
121
121
103
77
104
126
148
141
122
133
145
163
111
141
118
132
112
125
120
154
130
111
79
91
117
125
49
102
114
130
102
154
116
68
49
121
147
76
83
138
98
138
109
140
140
94
138
121
129
172
73
98
192
159
94
224
110
127
135
120
134
108
125
92
147
107
74
54
127
66
54
102
79
130
138
152
83
119
92
96
74
108
49
113
124
145
158
102
108
79
98
104
139
148
106
83
98
133
61
186
100
95
144
143
135
130
155
54
49
103
125
146
95
106
120
120
85
99
110
102
108
96
177
86
122
108
103
133
122
151
90
141
112
132
76
186
54
120
111
96
142
105
130
98
90
108
81
87
136
78
148
134
98
135
102
76
123
134
148
85
96
163
134
108
105
102
133
95
98
186
113
76
103
107
86
122
111
102
148
115
93
140
113
74
87
104
108
112
98
120
108
102
95
108
139
132
115
141
177
143
97
101
121
173
108
114
131
157
142
118
100
69
166
140
125
91
119
100
124
104
125
108
156
93
104
109
131
89
81
78
129
150
168
103
139
178
118
188
99
77
69
169
129
131
127
141
83
128
102
103
125
96
118
91
59
83
108
123
108
67
93
103
101
112
125
81
83
138
117
87
114
76
54
175
145
138
135
103
140
94
154
122
107
122
99
114
131
113
99
96
135
158
109
144
167
49
91
161
131
177
108
160
74
107
74
143
155
118
54
142
65
95
137
114
76
54
113
148
128
113
112
194
81
134
154
91
119
138
105
120
98
74
85
102
113
127
102
141
110
95
49
54
138
108
127
95
87
124
95
144
125
127
99
67
112
146
133
128
123
77
102
111
138
200
113
107
86
126
82
98
67
106
168
95
87
61
134
118
98
153
110
87
148
98
73
81
88
119
111
95
91
100
134
136
135
80
113
135
126
150
104
102
153
164
100
69
139
148
168
123
98
147
59
143
131
171
145
134
54
113
114
146
128
144
110
110
110
103
101
116
173
77
106
80
140
89
115
115
105
143
49
109
95
54
114
140
127
103
110
95
106
98
163
149
54
120
129
101
118
199
167
177
105
128
127
154
103
125
142
116
113
81
125
113
119
110
120
154
190
128
112
102
74
98
158
113
108
78
110
114
91
94
122
104
103
103
97
169
77
107
127
54
113
123
121
138
68
111
102
125
113
102
131
110
113
74
89
123
96
126
189
102
145
68
74
103
139
127
124
75
93
112
108
83
123
54
103
54
95
119
132
127
113
126
116
89
95
127
150
132
104
112
131
165
164
158
122
107
77
124
82
149
144
108
190
168
120
107
95
134
106
125
106
132
54
112
96
138
99
102
107
107
206
112
160
132
150
117
125
102
96
129
160
93
93
102
116
160
54
111
54
148
125
129
108
77
118
97
86
119
133
112
87
81
90
54
59
105
111
110
82
131
95
171
81
143
59
122
146
98
126
123
155
141
128
128
108
49
118
155
158
138
154
154
101
122
107
98
128
116
77
126
94
134
103
95
112
109
106
146
95
95
137
108
135
143
102
107
110
113
102
54
80
108
177
77
108
183
110
129
102
54
139
87
145
126
149
144
131
87
112
181
135
98
97
180
111
152
54
141
88
179
49
143
128
90
109
120
78
131
132
131
87
106
114
95
122
114
122
136
59
153
129
118
124
78
78
106
110
148
114
105
102
144
108
132
164
146
139
116
162
106
95
102
101
156
112
137
132
129
54
82
91
103
138
116
49
125
90
156
67
90
95
120
87
117
108
155
143
69
156
148
145
116
143
122
103
140
122
103
81
115
124
90
114
108
97
100
139
93
144
163
98
137
79
49
88
116
61
54
148
143
111
133
133
147
129
125
108
98
118
95
109
92
112
177
133
143
133
191
76
144
179
132
77
153
118
76
107
133
86
139
98
120
127
95
132
145
131
171
136
114
131
105
115
102
129
98
94
98
136
180
97
135
122
133
174
90
135
49
145
122
98
142
139
141
139
105
74
150
114
115
54
135
129
115
118
100
158
193
145
125
69
122
49
136
133
154
125
113
112
119
102
133
143
92
125
134
173
83
120
118
97
155
85
92
73
49
116
189
177
143
145
129
158
128
134
76
142
105
72
93
102
144
100
147
134
113
89
125
80
221
99
135
98
104
113
54
54
107
105
120
128
179
68
104
105
81
173
119
102
156
157
186
119
99
102
141
82
119
103
113
109
199
102
135
67
108
123
82
76
158
142
108
104
54
135
135
113
108
82
123
78
109
101
95
100
130
113
170
140
90
130
107
177
90
139
113
108
114
114
102
103
103
124
92
177
137
116
54
54
88
125
90
138
87
172
103
54
59
158
96
127
83
68
98
129
95
67
123
115
124
151
131
126
142
90
49
139
121
159
117
95
128
140
74
102
81
133
168
96
140
93
98
115
114
139
54
118
172
93
76
121
100
113
78
132
114
108
113
178
131
102
125
59
54
118
108
82
105
144
108
92
68
93
166
106
108
146
115
125
127
106
123
152
82
108
172
118
108
148
90
151
125
87
125
104
84
154
127
127
157
103
124
99
131
118
104
95
133
128
107
84
161
103
134
106
119
139
102
110
152
103
127
143
89
95
129
85
123
78
154
125
117
116
98
150
110
121
95
200
69
104
149
116
100
98
122
102
125
81
148
102
139
54
79
140
148
137
133
135
112
122
125
118
158
119
92
87
77
125
142
149
129
150
113
94
148
135
180
59
91
146
83
67
132
158
127
103
108
98
45
153
139
84
77
146
113
85
116
117
54
102
49
146
65
127
135
154
165
133
139
68
126
92
85
97
97
95
76
49
93
177
102
117
105
81
127
93
102
94
116
119
67
126
113
147
146
103
101
81
128
168
132
91
111
93
144
59
115
124
128
92
148
98
122
170
102
107
164
181
111
146
90
108
162
109
81
134
127
81
136
164
112
98
113
102
110
95
49
107
128
78
128
136
141
126
98
93
80
122
49
137
122
74
77
140
130
120
122
172
81
107
113
145
120
100
96
42
82
115
76
95
155
146
119
125
95
93
100
103
147
107
69
110
141
111
78
98
49
101
116
49
200
49
148
204
109
126
93
124
173
103
125
97
143
106
95
79
76
179
123
102
112
97
131
132
109
117
140
92
115
105
98
101
194
78
148
177
90
87
133
132
139
139
136
139
155
49
90
147
125
166
125
49
143
110
123
133
122
94
134
81
156
102
156
87
146
108
159
127
142
74
95
116
105
90
74
129
117
139
77
54
206
164
144
113
95
98
105
97
164
105
118
78
130
108
104
102
79
96
86
134
109
115
125
102
67
102
95
81
74
119
112
206
98
132
113
122
165
113
128
133
81
120
80
74
130
103
156
140
118
158
109
134
165
175
96
146
148
141
91
81
124
104
128
105
147
78
127
107
137
123
73
102
129
98
155
95
108
125
125
180
191
54
113
54
126
101
135
124
96
109
95
177
144
161
123
87
133
131
150
118
54
119
112
123
113
105
135
119
176
137
87
131
118
140
102
163
54
103
172
114
102
139
95
125
67
114
59
154
133
172
133
73
119
108
115
117
123
108
54
115
104
125
150
87
67
138
128
124
129
132
74
145
125
128
106
117
161
122
108
128
90
190
163
104
87
129
88
164
162
95
150
88
113
111
120
135
110
85
119
129
105
130
108
90
109
150
95
82
151
83
136
154
76
83
111
126
102
94
155
143
114
106
149
158
110
167
123
160
156
129
110
120
49
110
179
131
98
93
154
117
133
82
59
156
95
163
149
113
74
143
115
133
97
146
125
147
85
125
120
87
70
138
125
103
96
120
100
176
153
149
108
133
103
163
121
142
94
158
110
102
81
116
92
81
125
69
116
78
107
124
103
115
115
102
124
98
125
139
132
144
88
141
102
135
131
120
168
81
124
108
95
54
61
126
105
125
74
54
90
125
93
98
147
123
105
82
59
91
185
139
98
82
63
99
77
132
113
98
49
120
136
144
49
103
95
140
198
131
93
94
102
99
134
118
129
133
136
135
105
93
143
54
125
102
124
131
103
139
76
107
125
76
106
125
82
95
153
131
143
164
78
121
92
154
102
181
108
140
99
95
128
131
126
168
143
90
133
49
73
126
81
108
103
95
138
107
165
155
92
115
128
185
164
81
108
85
101
59
143
112
90
104
107
172
110
88
154
91
133
129
83
114
133
104
94
131
102
90
135
109
121
100
141
112
202
94
154
108
49
93
104
78
118
83
105
152
169
125
65
123
144
147
83
118
92
102
105
74
122
105
95
65
77
108
116
99
97
152
133
54
77
128
162
177
96
140
106
100
108
121
169
118
97
149
77
98
49
96
115
124
122
85
108
98
115
125
90
113
81
104
122
125
95
146
85
103
80
82
150
175
69
89
102
166
72
138
148
87
87
125
141
126
135
118
102
102
95
86
110
98
179
102
136
107
96
83
167
145
115
101
148
168
89
146
93
59
142
91
103
91
129
93
104
115
141
119
54
83
126
59
103
114
145
120
128
130
170
150
95
90
151
90
156
69
126
106
99
143
154
116
98
83
159
170
98
127
107
140
147
146
71
113
110
101
102
122
102
143
80
81
106
67
117
113
172
106
104
112
125
132
124
186
128
102
148
88
145
93
109
161
144
123
95
125
132
75
91
137
112
135
122
87
145
81
141
80
61
87
54
98
54
128
148
144
113
97
119
120
108
114
128
151
132
93
115
80
79
100
152
144
98
108
81
135
87
107
180
91
148
132
102
108
105
150
111
129
129
143
100
125
137
90
61
87
139
127
102
87
54
73
112
87
102
87
172
128
87
125
181
74
115
140
118
68
95
97
143
131
98
153
111
106
87
135
102
212
124
149
108
96
117
160
67
82
141
122
72
90
139
114
100
86
102
111
108
164
113
127
76
165
83
127
128
54
87
77
98
122
115
133
138
114
102
128
82
102
78
141
118
77
140
145
181
93
139
140
170
146
115
132
105
102
116
126
104
91
142
102
100
112
102
102
149
115
107
123
154
103
98
96
173
146
108
123
158
156
90
102
125
102
113
163
120
112
61
98
82
127
77
129
128
101
81
112
98
131
142
159
95
108
106
130
97
74
124
105
108
95
91
99
127
93
117
93
152
49
112
69
103
142
130
104
107
106
133
141
133
135
49
77
90
108
95
98
159
172
127
100
132
144
148
74
107
110
118
133
67
76
78
115
145
78
119
100
74
121
95
108
113
113
127
196
106
95
123
96
182
148
98
85
107
108
177
109
100
148
147
107
45
108
84
108
131
84
104
108
105
129
102
103
110
149
78
104
101
104
128
49
115
68
145
100
133
130
116
103
95
109
117
148
104
128
98
109
139
146
147
83
76
114
177
72
132
136
120
88
119
102
153
122
74
148
74
94
62
140
119
140
128
108
164
76
95
119
195
78
127
81
93
125
98
99
116
125
76
74
107
49
115
120
115
178
161
123
107
107
105
125
101
164
54
161
113
88
149
78
78
74
113
118
90
96
134
129
168
128
104
135
89
98
153
49
101
112
49
161
102
95
145
170
153
106
95
100
133
148
103
131
108
129
145
108
146
177
101
126
115
141
134
111
92
101
161
87
119
102
186
156
127
77
147
137
127
112
131
117
120
131
125
120
91
119
59
146
124
122
102
102
128
124
54
127
105
100
77
93
106
74
49
115
118
114
148
166
139
178
113
105
69
145
110
144
92
133
120
139
102
101
158
127
117
133
132
121
98
119
148
99
68
150
147
131
194
110
96
143
102
134
101
130
119
131
160
114
140
134
101
161
49
122
96
125
132
80
106
119
136
135
98
87
100
116
115
102
180
74
95
122
126
126
67
153
133
114
67
161
116
127
117
104
107
102
110
138
200
123
108
81
96
149
103
77
90
87
96
98
103
186
93
100
186
91
131
147
104
158
74
131
115
167
133
142
112
82
105
162
157
130
96
90
135
95
146
123
90
87
133
81
169
160
140
160
73
93
54
162
171
107
103
133
119
84
132
132
112
102
137
54
110
95
144
122
54
108
110
74
113
90
153
105
127
100
128
99
94
113
113
103
74
93
116
146
91
94
122
127
84
109
93
135
95
119
85
146
115
87
102
101
77
125
133
161
125
106
164
117
95
104
119
98
108
110
97
73
124
95
87
155
120
92
101
74
108
71
54
148
106
120
134
125
150
124
68
59
54
80
110
107
62
104
101
61
54
121
90
84
54
114
134
54
135
171
95
85
90
104
108
148
163
135
169
87
90
54
102
59
94
157
123
95
105
127
148
139
97
162
148
131
147
49
102
54
134
118
90
74
127
144
81
102
113
133
116
108
138
147
123
116
99
103
109
123
54
59
120
153
97
102
148
103
141
54
116
150
95
96
154
131
61
117
173
127
89
98
80
102
142
131
59
144
123
98
114
123
125
112
145
142
127
95
86
133
167
134
103
117
125
125
102
111
95
102
145
89
113
91
98
177
85
92
118
183
125
146
81
120
102
102
122
110
139
79
54
74
110
96
77
147
49
92
119
119
102
104
146
132
88
115
125
96
103
147
116
112
95
96
140
168
127
54
103
94
98
149
80
179
108
101
137
161
90
125
133
127
116
87
76
120
131
113
121
180
74
102
120
107
112
90
100
81
123
102
137
97
95
156
108
113
121
158
59
122
150
49
163
98
96
101
129
128
131
129
145
123
115
73
173
113
103
93
108
112
139
107
115
148
94
105
149
102
91
119
103
54
113
140
143
112
120
160
93
98
81
148
116
148
106
45
131
90
141
142
93
138
156
144
125
188
82
54
54
92
103
77
69
177
145
115
119
95
148
150
105
97
109
119
71
80
110
140
123
54
81
125
143
101
150
112
68
138
54
114
95
102
88
105
121
107
157
76
179
138
155
120
80
120
127
129
129
67
54
158
146
153
104
131
119
111
94
67
138
148
158
143
93
126
101
118
87
117
62
93
98
135
126
168
105
163
150
92
86
96
121
110
184
112
67
102
77
114
142
54
104
143
164
131
154
157
139
158
133
123
82
125
83
122
158
106
134
94
76
110
132
123
115
161
156
143
102
152
86
139
149
92
148
140
112
124
99
126
104
119
169
113
89
151
127
121
116
115
128
113
95
96
98
76
104
106
59
135
156
161
133
49
148
109
120
125
68
113
103
54
168
102
82
98
85
118
105
125
146
118
121
123
54
104
108
74
129
122
99
133
82
117
122
161
111
113
140
133
119
106
98
67
97
158
94
108
170
81
120
108
120
95
138
155
96
80
115
119
133
94
125
67
91
103
121
102
108
148
160
77
82
98
143
63
105
130
119
105
120
135
122
99
90
154
111
126
95
119
105
142
103
108
112
139
110
106
107
138
104
116
122
121
143
100
129
123
120
96
93
98
113
110
113
117
98
107
200
108
144
107
102
89
87
104
156
120
91
54
169
154
135
49
90
84
110
61
76
127
54
114
102
107
125
61
152
122
94
77
108
98
93
179
155
145
59
125
116
77
139
134
153
111
153
157
134
106
106
131
117
102
125
107
96
118
144
149
118
132
115
101
159
158
115
140
121
96
108
144
101
111
54
87
82
137
49
81
139
135
119
153
102
187
139
136
67
116
49
113
82
129
118
81
103
163
158
102
83
150
89
170
109
113
105
106
142
77
144
141
96
131
54
97
90
121
112
102
134
98
125
54
157
54
150
158
150
128
105
133
177
148
148
109
79
86
86
156
98
127
158
109
108
156
67
86
45
108
97
54
131
135
146
128
177
78
82
83
80
131
102
76
87
122
101
54
165
94
153
76
74
106
96
102
90
96
143
177
76
146
139
96
102
120
152
109
98
96
130
77
102
95
82
90
125
54
120
100
101
102
126
81
89
170
105
156
135
87
101
84
107
77
133
143
179
140
118
158
131
151
102
114
133
93
80
91
93
144
157
152
180
95
78
68
133
114
124
86
116
59
102
81
114
68
143
135
89
100
132
140
95
153
143
86
61
98
125
103
85
172
89
163
103
120
121
111
90
119
107
110
99
102
143
104
150
85
131
96
93
54
120
146
95
121
107
100
134
101
90
101
133
114
83
135
102
194
95
103
139
123
92
134
102
137
145
89
135
104
157
108
102
197
144
158
117
108
95
135
84
101
54
74
165
107
174
85
82
77
94
59
136
96
81
117
97
98
126
149
177
54
102
102
131
148
206
89
200
54
81
121
123
89
149
95
68
121
72
123
170
117
138
87
92
165
132
125
119
105
135
119
135
119
128
130
157
82
103
102
113
133
153
108
81
128
144
149
116
142
104
95
96
105
96
95
102
102
157
101
95
89
144
108
81
98
144
120
98
129
81
96
89
164
87
99
106
102
101
120
171
177
106
135
104
133
81
93
126
137
98
115
102
170
54
131
149
149
122
85
149
144
90
93
95
113
132
98
177
76
97
185
136
110
115
148
141
85
74
101
74
98
87
68
148
105
102
67
101
98
54
141
82
137
111
148
145
105
49
121
143
158
101
123
119
126
132
108
104
128
108
136
149
131
147
140
208
126
97
160
112
98
142
107
113
169
49
126
128
219
118
81
155
119
177
112
98
74
179
100
120
78
73
146
87
81
116
104
147
78
142
78
115
59
112
118
125
182
146
109
129
149
92
127
91
133
108
83
59
125
115
113
98
167
108
104
102
119
148
95
87
110
87
125
105
127
134
148
139
123
120
117
177
81
92
92
123
109
103
177
99
90
45
81
126
108
101
126
149
173
114
81
139
139
85
102
147
140
106
133
108
54
134
131
67
144
75
143
122
96
59
165
156
156
98
111
108
140
107
54
100
73
119
119
54
100
82
104
123
108
102
98
132
113
113
158
117
110
130
93
146
121
124
119
113
71
113
133
128
127
111
185
130
102
104
155
136
54
101
98
81
107
146
108
115
169
146
140
111
82
126
133
175
146
95
103
95
96
85
103
78
169
148
67
133
129
177
98
113
125
143
135
145
139
119
138
98
103
90
102
125
143
131
93
134
96
102
127
103
124
81
109
131
156
123
108
108
114
109
166
74
124
125
113
102
54
187
68
158
123
91
133
69
103
96
98
131
90
85
115
106
105
92
98
94
103
61
103
108
103
82
78
130
109
128
124
105
131
145
82
108
122
177
145
130
105
74
83
124
81
102
81
103
161
92
113
97
127
147
129
100
113
100
97
121
90
59
96
102
133
90
153
108
135
109
135
152
98
102
112
101
77
144
138
129
108
154
138
148
70
180
151
156
102
125
163
102
98
113
81
49
81
143
134
106
129
92
102
54
116
131
147
108
108
102
87
144
135
83
139
103
177
144
139
108
102
182
118
125
143
114
78
67
145
138
54
144
116
102
107
54
139
130
112
103
140
139
54
116
119
131
139
131
150
139
108
120
99
93
74
88
177
115
147
104
78
69
95
117
76
158
190
124
131
141
133
153
103
113
102
125
96
105
84
135
118
148
125
90
160
128
124
171
116
168
125
124
108
151
159
74
162
101
100
143
121
103
125
82
112
143
59
103
97
102
110
99
131
108
93
115
162
118
82
127
54
106
125
102
113
178
144
158
125
135
102
76
126
130
176
83
98
160
49
143
129
105
127
100
177
101
94
98
142
103
105
142
143
105
134
54
103
103
82
113
45
118
125
132
61
109
71
103
202
118
98
159
132
137
131
178
108
96
104
177
133
95
49
162
122
141
84
96
176
87
95
79
134
133
122
115
106
59
81
74
102
96
114
200
84
54
129
148
148
98
54
90
150
102
108
120
95
54
81
120
125
108
111
95
127
143
144
94
152
93
143
148
103
117
117
141
218
76
151
59
115
146
74
130
75
112
61
96
108
158
76
140
130
135
160
96
113
70
169
141
93
102
74
145
138
107
128
144
148
85
158
122
139
116
158
144
125
122
85
125
106
95
126
86
119
133
113
180
219
119
61
54
96
87
54
82
79
118
78
117
143
91
108
93
82
140
155
153
170
146
93
76
164
147
137
165
163
106
59
118
95
125
102
105
139
83
105
87
126
108
110
82
109
165
80
106
67
98
107
77
139
144
144
82
120
116
152
83
149
95
93
81
90
111
125
69
69
174
138
135
81
146
126
95
113
129
94
108
108
54
98
135
103
83
95
139
134
107
108
91
76
124
81
173
101
163
81
105
124
167
124
107
59
155
144
123
115
81
59
119
172
74
115
119
84
113
120
88
137
105
142
59
101
121
54
101
159
107
115
143
125
92
98
61
117
208
120
148
108
120
171
108
84
109
95
150
100
182
166
162
143
94
95
129
169
120
129
113
138
54
98
78
150
156
129
142
76
105
82
150
153
95
98
82
111
121
161
115
79
175
183
98
103
105
102
95
152
76
86
172
54
93
120
145
146
74
200
109
82
135
169
103
133
123
133
107
87
111
59
105
108
54
148
74
84
129
107
119
117
150
59
144
164
96
173
118
127
123
113
95
119
118
108
127
129
118
81
108
94
105
49
180
127
133
80
95
98
81
131
133
114
109
131
155
72
54
93
127
100
130
166
111
87
98
108
139
167
67
133
113
141
87
90
125
88
111
61
88
103
133
158
234
132
103
69
128
98
90
92
165
104
89
83
102
170
91
104
98
154
139
147
135
98
122
131
124
173
101
108
140
77
129
108
128
162
155
95
180
132
124
102
110
65
74
54
95
98
129
97
95
106
116
111
90
121
82
118
105
144
129
151
102
98
116
70
97
124
91
164
143
54
158
103
84
158
137
118
133
138
151
54
61
108
49
128
147
98
93
145
113
68
83
59
74
122
96
86
81
67
140
69
115
140
83
73
119
134
128
114
92
116
69
95
127
121
102
88
156
85
76
134
90
153
113
167
109
102
107
159
106
77
83
116
149
98
155
112
140
81
87
98
148
106
90
87
162
133
112
104
93
72
69
101
147
119
141
112
165
93
138
74
79
178
95
110
81
98
90
83
90
97
177
111
188
126
103
110
146
98
95
163
122
85
153
108
81
117
173
119
103
127
108
130
148
73
148
125
95
148
140
147
108
141
81
115
139
130
82
114
119
121
112
95
161
118
120
158
149
93
108
108
95
161
119
98
194
143
95
113
114
156
125
131
180
124
108
156
109
76
177
90
139
177
105
122
119
85
122
77
145
107
181
190
104
49
87
147
122
107
127
154
73
111
67
126
146
118
77
99
85
83
113
54
134
117
139
97
106
98
100
154
69
96
74
96
105
115
157
96
117
54
140
128
120
69
98
84
107
127
170
116
93
153
157
91
145
77
83
98
102
85
124
101
83
54
93
68
151
106
131
103
101
139
85
92
161
82
113
141
117
96
54
144
164
102
108
108
108
106
108
110
142
54
88
148
119
130
61
54
81
149
77
139
160
87
119
150
79
91
101
106
108
87
127
76
95
103
97
135
126
112
132
123
123
96
143
110
116
91
146
87
128
85
97
102
115
74
134
137
108
100
93
85
119
85
115
95
76
103
136
134
77
113
95
87
114
160
96
129
143
127
137
170
176
117
88
83
148
125
119
123
116
87
105
144
130
100
128
112
113
156
98
103
161
113
135
97
85
95
108
129
137
177
94
93
82
74
54
94
108
130
144
134
108
142
54
98
112
160
165
131
148
120
123
131
175
102
121
119
133
96
149
80
128
86
138
115
102
118
131
139
108
81
128
113
147
123
126
69
135
165
118
108
83
128
91
142
120
107
140
120
95
102
67
108
108
132
126
107
125
102
95
202
165
121
108
135
115
105
105
117
69
104
81
59
123
109
97
123
117
108
126
81
103
138
102
146
110
168
54
91
82
93
219
99
102
69
109
87
155
96
95
97
109
168
97
172
102
95
120
129
120
127
74
102
98
144
86
123
160
109
146
135
119
104
116
122
54
105
96
98
147
123
197
95
111
105
152
96
158
110
148
133
113
95
109
103
134
141
135
118
169
75
107
156
131
98
92
172
74
123
105
116
133
96
124
146
103
93
49
115
111
121
163
141
156
105
155
115
96
159
115
107
67
94
141
74
66
154
114
116
140
139
102
116
110
138
150
121
153
135
113
89
105
99
107
102
152
139
149
54
106
151
93
180
126
77
113
130
76
54
120
101
78
101
100
124
125
119
90
116
135
95
133
101
141
103
82
145
173
105
54
98
127
128
49
123
59
113
118
123
93
76
115
97
92
78
98
49
148
177
118
99
162
103
123
91
161
122
105
76
134
74
85
130
169
103
77
166
137
145
141
122
131
154
142
98
90
103
164
131
102
108
90
104
147
136
148
116
135
130
163
125
101
59
129
186
121
104
128
92
77
148
151
124
134
99
145
97
122
129
121
155
78
122
147
102
135
59
136
113
177
139
81
112
154
78
132
117
145
102
145
91
93
120
116
107
113
134
77
129
102
108
121
83
105
153
161
157
129
69
102
95
49
175
101
107
126
129
102
73
110
106
125
100
92
105
93
132
142
145
147
54
99
106
113
127
140
102
106
82
73
119
49
104
95
93
108
126
124
93
116
74
104
107
133
135
107
142
93
108
116
74
102
110
108
129
110
74
65
109
91
78
86
102
105
117
88
59
78
81
95
119
85
108
127
100
112
54
113
110
150
123
119
140
191
100
111
105
107
66
129
97
116
156
122
49
107
138
110
133
70
80
67
76
124
147
82
98
102
168
150
115
76
106
97
105
54
99
149
49
98
127
120
54
100
123
77
54
133
124
116
146
127
59
81
102
81
71
119
54
49
133
140
127
100
134
102
98
156
118
161
120
120
92
98
131
111
120
146
54
87
108
123
118
127
89
131
148
153
143
119
96
138
134
93
135
102
100
125
147
112
108
91
158
103
90
131
140
152
88
79
121
74
150
166
102
177
74
122
80
115
106
112
129
118
105
109
132
108
54
93
89
127
130
132
108
85
143
106
117
77
146
105
148
133
95
80
122
97
161
134
91
92
77
106
137
87
148
108
134
131
114
59
108
157
162
157
168
129
118
67
61
144
139
76
67
108
67
105
134
177
100
137
148
147
161
87
122
115
113
146
101
83
110
102
107
95
87
108
107
95
103
110
160
107
81
129
77
81
104
70
108
122
92
115
111
138
105
102
117
102
90
110
83
108
145
61
128
147
116
107
54
156
142
155
95
115
84
54
110
152
103
199
108
129
103
81
114
112
109
102
113
106
88
106
107
88
76
81
95
83
105
76
98
144
139
151
98
108
54
117
108
147
79
78
105
142
127
54
95
115
155
97
85
104
168
128
99
158
112
154
184
102
158
160
191
76
105
131
102
86
118
125
125
119
101
82
74
127
95
102
107
81
109
168
101
129
97
169
143
147
108
123
122
199
114
74
155
73
115
140
129
87
100
105
87
82
89
83
210
91
120
54
125
143
109
105
151
83
85
140
133
108
177
78
84
167
155
96
115
124
101
93
94
97
143
131
165
104
54
128
130
135
86
179
102
113
133
167
142
172
149
148
106
106
106
95
134
62
74
154
139
94
121
101
167
122
92
119
126
139
177
74
81
148
81
160
107
54
125
113
117
54
148
91
152
117
90
125
135
93
95
86
93
102
114
132
92
85
129
95
92
107
143
162
106
96
143
128
100
120
118
102
131
161
115
149
103
98
83
123
82
157
98
112
97
129
59
135
119
123
154
119
59
122
106
134
155
90
120
179
133
115
148
128
129
92
149
82
126
175
102
98
65
104
99
103
65
108
132
108
130
191
106
54
95
118
112
83
49
112
95
131
177
141
77
114
67
128
84
120
181
160
59
95
98
103
91
122
54
104
136
161
113
113
128
124
133
146
115
74
117
143
126
103
95
59
81
107
81
133
105
127
126
127
158
90
82
148
103
134
148
95
169
135
127
132
69
102
96
54
101
128
89
108
54
143
127
153
82
114
128
132
77
150
105
105
83
81
163
102
79
111
49
108
147
97
106
54
144
81
102
148
116
108
114
156
136
105
142
135
105
87
98
82
108
100
160
125
96
148
100
102
135
106
81
96
125
102
153
88
114
150
113
95
112
54
139
133
67
82
98
81
148
163
108
148
96
68
121
101
111
142
103
100
107
74
122
54
82
67
131
105
135
123
134
129
54
165
68
96
139
124
156
124
172
120
91
163
117
106
86
91
144
132
158
163
95
95
167
131
139
92
125
104
142
135
54
191
103
101
76
108
115
95
129
131
54
144
132
87
147
59
168
160
106
118
105
116
152
105
109
112
158
105
126
105
95
133
130
151
99
92
90
104
101
54
85
130
59
145
123
86
148
81
154
157
107
129
85
166
129
98
81
133
107
111
96
90
99
115
177
74
107
110
126
70
76
125
124
113
108
147
168
121
108
132
127
125
77
125
136
128
143
132
158
95
133
61
54
148
112
173
114
97
90
125
113
90
103
110
102
122
144
97
140
77
103
108
87
69
178
127
111
168
151
113
123
120
67
54
123
81
96
74
139
141
54
119
122
82
81
155
143
122
85
127
121
102
170
140
95
108
115
80
74
95
87
111
111
100
130
81
95
164
84
83
160
83
98
164
143
45
132
106
107
118
104
157
84
54
128
105
108
150
121
115
95
117
91
119
59
85
84
95
108
107
127
135
102
114
89
85
114
102
124
219
131
118
157
144
81
172
99
134
82
105
113
54
114
139
158
115
98
126
122
49
151
108
114
83
120
77
134
118
103
106
76
49
102
105
152
97
87
112
150
165
65
92
151
108
128
127
132
87
85
117
133
184
114
119
108
145
165
82
82
98
122
107
129
65
120
148
110
67
140
153
172
167
96
133
129
103
91
61
123
108
126
119
59
143
96
140
74
85
126
121
91
142
167
122
78
153
126
78
122
103
100
121
152
110
91
54
90
59
79
146
84
136
137
110
122
102
77
49
113
143
152
148
59
102
134
109
108
76
115
101
102
127
125
157
127
146
123
96
118
116
77
99
110
184
88
128
104
127
115
93
82
113
89
103
76
111
152
144
110
115
131
78
98
80
108
91
106
74
118
95
54
123
89
135
150
108
152
160
129
59
181
121
120
90
145
167
95
57
99
98
191
98
106
114
101
129
146
67
122
107
158
59
116
108
97
84
126
155
71
78
61
98
126
92
127
143
83
132
54
85
95
147
132
98
144
171
129
49
78
103
104
109
73
146
137
112
87
85
161
112
76
71
147
119
106
145
159
143
137
103
99
103
151
161
123
125
112
141
89
137
102
98
90
174
111
91
100
83
93
89
133
125
181
128
111
139
108
127
126
149
133
144
114
90
54
72
73
106
95
172
135
118
100
146
69
123
110
134
67
111
90
120
108
80
137
59
125
91
95
112
85
106
54
120
158
108
115
167
59
140
153
128
145
62
141
120
134
125
145
100
128
101
88
153
98
180
125
127
137
102
110
105
106
103
129
102
79
148
106
102
105
76
166
135
158
109
170
143
92
113
67
128
132
145
224
159
145
155
123
101
101
81
127
143
95
150
200
95
133
83
122
158
124
147
140
54
83
123
107
67
83
108
107
151
144
87
93
102
141
107
82
145
114
95
131
130
122
131
139
59
67
136
131
119
108
90
95
127
106
110
49
98
85
179
103
54
94
101
121
86
54
103
144
91
117
128
49
92
54
95
163
113
113
68
113
130
108
122
160
137
97
175
108
116
139
110
115
106
104
93
122
122
156
45
42
125
94
85
100
93
154
128
129
140
125
135
143
145
128
91
73
145
91
163
128
113
85
73
102
87
147
119
96
108
93
94
78
102
103
90
54
102
104
127
85
77
59
118
155
144
125
97
125
150
109
74
157
54
123
91
134
87
59
88
88
137
140
192
106
96
91
54
140
148
113
133
126
108
182
126
74
102
101
168
133
121
121
54
143
82
78
75
93
98
125
117
118
91
81
170
102
91
113
90
102
113
93
148
92
122
100
54
54
112
109
84
85
116
142
139
112
143
76
99
82
122
171
144
98
104
140
67
98
97
59
54
133
98
120
95
112
49
102
141
177
148
96
88
124
78
131
113
128
156
139
108
133
89
124
124
119
157
97
120
95
142
167
141
141
128
155
103
195
131
76
144
96
128
113
114
90
86
138
105
135
85
116
112
165
49
160
131
95
54
164
94
78
97
100
74
170
149
54
87
99
123
49
107
129
120
94
130
59
157
109
125
112
111
123
97
168
105
106
119
116
199
113
178
144
91
102
80
155
134
155
118
101
89
78
107
90
125
89
171
124
102
101
111
74
101
108
100
87
74
150
93
149
67
145
97
97
118
116
131
96
54
95
169
95
81
79
81
116
98
142
113
120
95
141
97
161
101
54
98
76
144
144
143
85
98
76
140
87
98
153
104
121
131
115
113
61
108
99
116
103
114
104
105
157
133
89
72
127
81
74
161
101
98
103
102
54
121
133
141
54
110
102
102
67
77
143
127
90
139
165
144
129
103
148
106
77
149
128
54
177
141
90
124
104
126
93
123
59
168
111
164
114
68
49
177
122
102
159
49
86
127
59
83
131
98
142
148
83
123
94
122
141
134
116
99
87
109
102
108
108
167
170
111
92
96
111
118
78
117
98
90
87
115
162
124
125
87
134
87
126
110
91
149
106
123
45
180
127
130
59
85
140
90
153
165
96
81
89
148
153
90
121
117
103
157
154
124
102
140
99
156
95
172
115
127
119
127
107
95
110
158
128
96
118
131
77
130
120
146
129
101
150
124
135
115
107
101
148
110
103
62
127
67
91
177
80
140
137
116
102
172
69
120
128
137
96
134
126
67
139
101
95
107
135
130
114
108
76
170
133
128
107
106
120
108
146
97
123
105
110
179
139
137
54
54
132
107
92
83
147
151
129
184
122
127
113
200
78
133
112
121
76
99
125
127
155
112
81
111
77
77
87
112
126
136
147
105
95
138
108
118
103
118
145
96
107
72
173
154
97
108
133
94
132
72
107
108
82
87
131
143
113
128
153
158
93
152
114
94
132
85
54
143
103
144
101
133
97
85
49
110
112
99
101
133
131
54
158
93
90
78
67
123
97
123
108
145
98
99
106
136
160
128
67
100
143
156
112
93
114
74
131
133
145
135
113
75
135
74
113
151
54
68
146
124
156
164
200
96
122
77
140
87
78
112
107
149
108
49
138
136
54
92
127
108
177
108
136
49
171
123
137
158
81
128
126
92
122
117
96
106
114
92
107
119
81
83
101
61
83
96
142
145
131
67
142
87
77
154
138
108
118
145
110
110
155
54
153
103
147
91
120
98
109
190
124
89
98
74
102
117
77
131
165
69
54
111
104
107
171
49
81
95
81
116
42
103
149
54
118
74
117
97
125
108
74
103
111
91
116
130
87
135
154
128
108
103
86
87
98
133
177
123
116
92
106
125
130
110
90
108
149
98
164
113
165
108
76
149
99
132
118
102
103
131
159
134
76
146
148
127
103
167
141
115
87
106
140
91
155
156
131
171
65
90
110
112
154
140
99
130
122
102
128
91
133
93
85
142
106
85
127
108
134
77
190
77
164
123
68
86
54
118
144
131
147
115
95
146
120
101
142
120
82
133
113
124
117
152
123
108
109
118
77
140
90
98
167
106
188
106
105
144
142
124
160
125
113
186
102
108
49
160
161
81
54
96
114
73
95
135
96
108
108
134
102
172
74
93
98
153
147
103
122
87
165
54
124
49
124
177
105
117
129
173
96
142
110
115
136
131
117
98
85
120
134
138
80
85
76
94
129
122
93
121
102
93
125
138
133
143
82
135
184
148
74
129
99
140
76
148
54
108
143
127
123
190
134
98
54
113
134
161
95
96
144
83
130
133
107
95
81
127
97
128
105
81
144
106
114
108
103
80
98
119
73
107
127
132
105
123
103
90
85
105
115
81
125
149
131
108
91
140
103
102
127
59
105
136
77
90
112
86
81
54
108
153
65
76
121
120
148
117
120
112
109
131
54
155
107
186
93
119
59
76
158
122
107
87
78
133
81
140
81
113
108
54
113
90
76
144
96
140
118
94
89
153
98
141
74
93
135
140
139
108
108
117
78
129
49
98
137
95
54
132
67
158
101
102
102
150
61
139
118
117
136
104
54
106
98
104
139
156
115
98
108
126
101
95
120
127
205
136
54
167
97
118
54
106
154
135
74
89
98
125
124
49
107
100
54
180
81
125
59
102
124
81
143
100
80
94
102
126
160
138
131
103
98
101
121
158
81
129
108
126
160
102
78
147
158
116
61
158
70
163
111
54
174
85
91
105
147
79
99
131
59
105
102
95
143
69
159
74
127
82
113
54
108
74
97
160
173
148
151
164
124
163
115
101
113
122
105
69
102
167
119
54
54
152
158
109
90
120
90
129
134
165
165
108
142
125
119
148
146
113
144
125
139
166
129
148
147
143
83
108
79
131
105
145
105
107
139
149
128
85
88
122
176
122
129
74
121
112
125
69
95
102
59
108
145
90
95
93
108
117
112
92
104
94
138
67
102
106
146
145
169
83
122
54
120
102
106
59
96
123
105
90
108
135
97
119
68
98
87
145
143
104
138
127
98
49
93
108
99
98
112
95
49
125
141
125
110
95
115
99
153
108
144
126
198
80
141
120
113
145
128
105
83
93
109
102
172
127
70
133
126
142
97
157
143
93
132
94
125
88
137
92
82
87
149
150
159
98
84
163
134
92
73
95
102
98
119
118
54
85
120
82
113
94
146
49
150
54
105
125
85
123
143
102
102
126
118
102
118
170
138
81
158
81
142
127
112
98
230
147
110
125
54
132
135
115
118
103
91
78
76
127
190
95
95
150
108
78
87
103
128
148
107
117
117
191
95
170
103
175
147
92
106
133
107
127
95
97
103
110
107
134
93
99
70
153
125
139
117
102
77
122
112
113
136
179
114
49
108
102
123
108
59
80
117
98
54
133
95
113
104
148
109
137
158
90
119
83
108
141
77
93
114
93
121
98
59
161
121
102
82
124
114
155
108
113
104
77
67
105
152
155
123
114
159
158
87
77
95
113
153
104
120
93
105
77
129
138
112
110
129
99
158
144
54
170
134
76
76
128
95
123
108
147
112
156
96
108
74
117
95
114
134
113
133
98
69
122
96
77
82
77
87
102
90
125
104
61
96
76
90
81
78
124
130
120
97
95
144
134
162
95
73
131
124
101
81
54
105
92
144
88
82
103
98
95
54
102
109
54
118
84
118
95
94
85
125
176
101
116
103
54
49
88
89
116
112
128
129
139
112
74
96
102
98
99
79
158
80
121
93
150
108
103
96
110
108
141
78
59
105
103
96
116
76
87
113
116
102
74
89
89
193
82
102
114
152
107
103
133
138
134
131
112
102
131
110
142
77
113
118
137
104
99
123
194
93
121
126
88
131
95
102
128
121
128
128
168
141
96
103
105
140
153
152
98
106
128
131
156
133
54
125
105
113
100
135
83
95
141
164
61
134
102
175
97
125
122
124
83
127
102
138
158
49
77
78
118
108
118
105
122
136
138
113
98
140
177
77
139
95
102
145
123
160
153
135
158
150
146
68
79
140
102
129
61
118
94
87
117
120
101
123
129
86
118
113
114
115
143
145
81
133
87
90
83
85
116
85
95
125
131
104
54
143
124
104
113
102
81
138
110
90
168
77
131
112
113
54
105
128
110
160
143
114
103
93
61
114
147
123
145
110
125
135
136
152
100
125
177
135
124
102
157
143
68
144
121
54
167
142
88
115
113
159
95
95
124
125
105
135
156
74
190
81
105
95
131
78
78
105
59
102
85
96
108
146
96
135
148
102
66
108
113
150
92
125
98
54
118
175
181
59
81
90
146
108
98
87
54
93
138
73
104
54
84
158
98
169
175
54
133
92
169
145
87
128
218
95
106
100
127
154
177
77
136
97
138
102
116
134
165
174
102
97
112
77
122
176
155
92
103
146
83
191
77
165
101
92
146
77
106
151
147
128
77
83
114
88
133
103
83
74
81
81
102
129
97
125
145
124
177
87
156
155
95
62
129
173
63
102
88
59
112
163
135
77
125
123
128
82
128
65
67
98
162
121
110
54
108
102
59
150
105
106
160
135
98
106
87
157
59
131
116
144
101
77
102
81
134
85
113
98
126
98
128
138
133
133
133
125
91
108
74
86
89
102
105
87
177
146
94
87
109
131
158
78
136
138
95
129
110
116
140
96
131
159
69
137
81
168
80
142
112
160
133
93
180
96
177
122
108
59
89
99
116
103
93
142
93
105
177
113
140
106
144
74
137
147
125
111
100
89
107
89
120
190
99
98
160
135
104
98
54
112
171
148
89
79
49
107
133
138
146
81
103
131
95
118
152
77
61
74
82
150
87
100
128
103
118
77
147
112
107
175
96
103
113
129
83
54
150
143
139
115
98
110
123
129
98
119
160
140
106
155
108
127
103
89
131
70
107
81
108
110
149
122
94
115
91
96
148
101
101
104
95
118
163
110
54
93
140
54
113
150
134
117
98
108
132
127
54
105
138
82
153
54
148
108
133
148
150
132
147
148
111
127
102
168
141
109
117
92
112
91
120
74
142
90
105
165
124
87
143
108
143
157
107
89
142
153
61
70
113
99
76
139
61
102
105
116
153
79
129
100
108
115
89
127
103
102
90
88
125
115
88
148
74
102
54
153
106
54
113
151
133
159
112
91
80
105
103
158
144
199
78
191
97
125
86
170
177
135
160
127
182
54
98
103
90
144
135
117
139
133
132
106
151
113
146
95
150
76
191
49
81
54
150
95
106
59
141
135
79
97
134
121
122
104
146
105
45
79
117
98
102
86
115
108
147
54
168
81
154
54
123
108
108
74
105
165
154
107
124
172
74
102
136
81
157
94
102
122
135
91
128
105
90
59
98
80
107
125
113
86
155
128
59
59
73
106
95
216
100
100
133
156
120
119
54
118
108
143
102
98
160
117
92
129
94
142
97
69
96
126
68
91
100
97
119
133
129
117
138
141
87
71
98
163
102
113
87
98
179
158
82
76
115
90
143
113
117
59
123
135
95
125
125
169
130
76
113
87
119
69
90
73
128
134
71
172
81
110
92
74
97
93
103
97
137
91
154
117
98
109
116
90
74
149
101
144
81
159
85
138
59
107
146
124
119
96
54
131
114
122
91
159
102
124
118
132
102
105
128
128
131
128
102
109
164
141
96
106
108
145
131
111
129
54
148
113
121
113
108
154
127
105
90
82
151
68
74
128
144
139
139
61
144
74
102
138
151
90
54
108
135
54
106
156
96
126
118
96
145
154
141
162
118
98
74
149
180
98
82
156
95
98
149
137
146
115
135
102
97
96
131
110
49
149
161
105
132
102
135
147
108
87
81
133
106
138
139
158
157
107
105
95
118
69
120
95
148
143
54
118
94
122
174
140
95
128
148
135
98
150
142
100
107
103
122
143
126
93
181
113
112
93
125
95
143
102
142
49
147
97
148
76
95
93
102
117
93
83
54
112
154
134
146
109
74
158
90
153
113
54
109
95
93
89
161
184
108
108
93
81
88
68
126
150
135
122
123
160
142
104
121
133
133
105
101
123
111
128
162
115
125
115
69
67
98
129
124
114
54
180
201
129
146
94
90
54
94
104
114
165
105
83
156
85
116
116
90
115
111
87
133
107
105
116
153
113
69
119
151
132
87
132
135
61
108
98
54
105
87
87
160
135
91
93
108
83
54
83
128
116
143
140
96
92
172
139
128
102
82
82
103
93
194
157
129
125
103
130
124
140
120
144
127
113
100
115
153
133
84
118
108
103
145
152
124
54
199
95
92
110
98
103
59
117
118
93
102
136
104
133
128
108
145
102
82
90
92
110
108
144
177
107
134
59
103
144
106
172
133
92
106
83
102
128
107
141
102
115
131
98
92
91
151
158
140
124
108
120
120
97
122
117
59
173
108
160
152
133
67
154
86
135
154
177
96
128
94
95
141
98
125
91
92
113
147
61
98
74
122
169
128
125
96
137
108
105
103
81
85
160
129
84
131
102
138
59
126
148
200
42
116
76
104
95
135
133
131
98
75
97
54
128
126
108
98
49
59
96
87
132
74
125
112
120
102
145
125
142
106
102
137
82
142
154
87
100
81
117
101
122
177
95
105
115
127
125
108
145
117
77
128
143
126
146
89
134
100
188
162
224
93
97
145
84
126
180
138
80
139
126
140
82
78
134
115
119
136
152
126
98
122
106
103
120
72
102
137
105
123
133
161
49
118
59
122
142
141
102
167
103
107
124
144
109
139
131
108
177
145
74
92
137
84
136
133
102
111
120
85
84
131
145
79
67
72
118
180
136
156
94
82
123
105
131
157
81
120
155
114
112
106
95
113
102
72
98
92
95
115
165
97
95
103
138
78
98
80
139
200
132
81
101
80
110
90
61
165
92
81
145
135
148
74
135
144
110
99
138
93
108
170
108
118
110
145
143
122
81
153
119
98
140
177
143
68
95
125
98
125
131
149
69
131
133
109
97
109
145
102
67
157
183
98
116
112
124
174
127
113
139
131
117
122
101
74
70
85
132
125
98
108
146
102
125
86
136
109
180
123
145
134
69
137
116
102
121
84
147
79
131
87
141
86
117
95
146
84
117
113
91
113
98
114
95
139
133
81
98
89
134
102
131
172
130
127
113
101
112
137
98
176
79
118
146
154
54
78
99
119
102
164
104
57
125
108
97
110
83
112
78
129
82
93
141
180
98
112
95
99
93
147
103
54
127
116
126
123
112
86
157
103
173
159
144
144
78
101
179
124
81
125
123
186
120
85
98
116
49
108
128
70
120
82
87
136
100
120
112
135
133
113
114
92
69
105
177
82
188
138
179
103
59
104
139
123
113
115
138
77
82
120
87
84
125
135
165
98
118
61
78
120
105
78
89
108
122
109
88
123
54
125
70
133
141
186
141
92
49
143
131
103
93
139
122
131
95
77
116
114
117
157
95
140
116
54
133
118
77
124
131
78
113
129
97
119
91
81
90
103
122
112
136
98
137
100
107
76
153
195
186
127
118
102
99
49
120
115
144
167
133
172
113
49
54
159
128
127
123
107
80
78
123
82
156
109
117
121
98
139
176
127
140
125
139
74
112
122
131
146
83
115
80
123
91
95
123
161
103
131
148
144
83
106
103
144
104
59
152
95
54
125
79
101
165
102
123
90
90
108
105
89
54
110
115
148
96
107
90
135
101
108
117
79
168
84
108
67
140
154
139
116
83
76
145
98
123
95
133
189
96
54
93
84
131
155
100
129
160
118
158
61
116
108
103
123
140
117
106
137
80
168
129
84
105
102
125
171
113
91
154
76
200
112
114
125
147
150
93
87
82
104
54
156
105
54
101
93
104
113
110
85
143
86
177
129
137
54
107
95
105
108
143
128
69
127
88
147
132
134
145
59
130
59
129
96
102
103
91
116
54
93
154
127
131
114
90
54
128
128
160
106
82
118
166
128
85
180
116
100
95
127
113
135
90
108
113
145
139
127
99
113
94
133
148
158
123
112
173
109
148
113
145
86
125
141
111
127
117
124
117
103
98
98
134
95
188
108
82
148
123
121
135
130
120
77
118
78
116
81
123
106
110
109
112
102
160
115
59
126
145
100
68
90
112
103
103
130
54
105
108
125
177
119
142
124
105
120
101
89
140
113
153
108
103
108
146
77
54
107
118
67
105
76
139
90
156
49
146
54
138
108
95
145
110
130
105
161
98
129
125
184
177
98
124
120
164
108
110
94
154
99
85
108
115
163
85
137
98
97
98
54
122
82
139
170
151
110
151
93
93
96
102
91
130
103
121
108
104
122
95
92
130
139
198
134
149
150
68
105
129
129
120
81
121
135
141
89
99
131
171
180
59
105
128
103
54
54
159
81
102
153
111
103
49
159
123
95
83
98
102
131
120
128
99
115
95
85
78
92
49
81
101
124
159
98
110
106
101
85
54
105
102
88
168
91
145
119
54
128
95
101
148
101
95
81
89
152
95
107
68
108
126
161
118
75
122
49
91
148
147
102
133
103
88
120
101
155
153
123
133
135
54
94
124
82
108
99
110
113
125
93
131
102
108
156
113
145
123
77
112
87
108
87
92
148
101
128
140
138
95
109
144
109
139
151
85
127
106
104
156
82
103
79
115
113
105
59
127
148
89
81
129
113
128
124
129
59
114
130
105
145
149
147
167
113
122
105
81
83
108
96
87
102
126
143
165
69
134
199
163
105
114
161
110
78
145
103
93
106
172
59
76
91
113
90
125
59
145
107
85
139
212
104
110
124
92
125
97
129
131
90
105
93
76
143
82
142
133
133
116
105
123
67
191
124
202
98
116
129
68
102
150
142
135
142
146
137
80
120
82
128
125
173
106
162
106
97
144
161
102
119
97
148
109
125
134
146
96
137
108
118
170
106
131
87
91
153
153
85
151
121
95
106
120
108
95
59
115
78
141
181
102
73
68
108
131
102
133
171
80
108
137
103
91
193
104
148
194
133
85
108
129
98
77
111
125
135
67
136
151
141
57
143
97
115
109
159
100
160
95
93
149
95
67
139
135
108
129
101
124
182
72
145
54
173
140
111
115
94
168
108
119
104
81
87
122
136
97
74
129
82
88
111
115
67
90
105
115
156
144
168
95
108
125
82
113
113
102
109
117
102
76
102
134
111
70
165
139
143
115
81
125
129
116
115
155
130
132
98
160
83
138
120
146
125
118
54
82
83
148
71
98
62
135
91
138
114
77
102
96
102
80
140
141
143
178
103
151
161
81
113
156
118
93
112
148
112
163
74
156
81
143
128
90
78
100
103
149
115
126
158
77
113
114
82
69
130
145
133
132
119
95
81
149
162
113
142
109
119
87
81
128
118
128
158
77
153
87
155
81
134
87
151
116
76
136
102
138
102
95
97
80
137
118
98
112
167
134
107
120
108
161
127
74
165
82
131
129
133
132
156
167
97
93
151
113
148
115
137
54
139
61
74
49
86
108
85
168
132
108
157
97
118
76
137
102
145
131
122
134
110
105
149
161
54
101
113
109
129
130
118
90
102
126
109
143
108
96
54
107
143
148
98
85
118
137
95
54
87
98
131
143
119
49
128
106
158
127
95
90
69
113
96
131
102
94
89
106
139
145
54
124
107
141
103
126
116
54
80
150
82
109
129
84
155
109
113
97
104
134
76
126
103
114
150
117
112
104
156
113
98
112
144
177
96
82
144
67
120
145
107
105
86
106
107
78
110
81
102
135
107
110
146
133
135
61
146
124
104
90
103
152
95
85
114
87
135
115
91
144
157
102
118
102
148
132
143
104
93
108
146
176
148
101
103
131
122
130
119
118
77
90
92
94
136
110
131
67
119
81
145
160
126
148
177
109
150
136
135
135
182
120
68
93
96
140
159
115
106
133
133
149
103
95
93
119
144
54
104
112
100
112
112
104
165
136
139
129
110
135
103
109
118
85
103
95
101
78
125
102
103
102
80
148
147
95
177
97
97
99
120
96
108
132
106
69
109
110
124
81
122
95
83
135
125
165
105
120
150
145
157
85
90
95
143
143
140
113
138
144
167
91
81
54
81
132
59
76
54
87
95
168
160
117
74
183
102
76
117
138
83
172
186
92
128
72
154
77
111
170
138
103
108
115
108
142
109
108
54
103
119
131
123
126
96
67
78
116
127
151
125
129
128
98
107
133
138
155
101
200
131
135
140
151
105
134
74
173
141
81
86
128
93
81
133
125
117
122
74
115
76
49
59
161
110
102
146
124
115
133
108
107
125
54
90
99
149
109
122
135
49
150
82
67
147
107
171
124
148
110
143
83
100
138
102
95
105
109
110
90
75
94
126
49
102
93
82
116
61
155
145
90
98
103
131
144
100
122
152
126
130
124
81
117
102
105
152
49
108
140
103
131
108
100
133
112
134
68
134
95
84
115
129
54
132
148
149
141
113
130
125
144
150
106
156
54
151
135
131
113
80
129
119
98
152
125
142
107
87
54
96
59
134
125
85
107
135
141
109
59
190
90
156
122
143
107
93
125
142
139
120
108
68
161
97
200
143
140
129
113
101
139
91
119
49
135
186
112
98
103
127
125
179
103
108
93
49
54
97
136
141
145
109
81
93
120
147
97
76
127
97
100
139
54
135
124
77
95
68
140
108
98
102
110
116
148
81
102
103
158
128
105
129
120
95
81
113
146
126
100
84
119
54
127
112
54
118
91
101
75
131
108
74
148
115
111
137
91
54
68
114
151
105
97
144
95
193
172
118
101
77
82
99
74
87
150
134
80
102
83
95
156
122
81
94
129
93
150
115
61
61
140
82
118
131
129
98
111
134
125
109
139
140
114
132
125
62
162
107
93
73
123
85
102
81
49
141
146
139
141
69
122
54
74
135
77
131
118
120
140
207
83
125
191
116
108
111
101
103
121
72
100
143
163
77
131
147
107
139
74
125
100
174
81
54
124
123
84
103
102
102
165
122
77
105
99
87
110
122
95
157
93
68
103
133
164
119
139
134
122
141
160
131
155
154
125
126
105
115
76
162
155
104
139
134
93
113
74
136
131
95
111
88
148
140
102
177
108
150
105
87
96
119
131
54
124
107
170
80
90
86
107
165
85
93
144
95
140
95
200
125
91
134
105
99
111
108
126
92
93
105
119
148
103
171
166
161
95
136
90
123
126
160
102
95
166
104
133
108
84
106
144
93
148
119
169
120
115
158
106
91
110
105
171
131
54
101
138
113
94
103
106
136
172
160
142
128
81
128
131
125
95
79
117
128
179
172
96
178
166
224
85
140
180
156
134
95
84
151
126
106
72
139
90
101
54
102
74
102
100
96
112
94
113
115
93
101
114
182
105
132
125
116
182
169
164
69
92
96
49
129
154
125
72
126
109
108
100
87
137
83
119
113
98
164
94
45
130
139
120
108
109
118
99
119
122
49
108
125
120
102
69
95
103
116
126
153
83
92
103
153
109
95
54
143
103
107
162
156
143
115
87
156
127
129
150
153
148
116
104
88
113
87
120
74
158
110
111
169
118
146
144
78
54
115
188
105
110
81
143
132
113
183
106
90
155
139
59
100
162
76
131
123
217
123
91
152
122
108
129
82
83
143
89
54
142
144
93
54
95
54
85
74
54
102
101
49
77
81
86
98
54
54
88
49
125
69
154
119
61
90
106
83
117
127
82
114
83
119
78
107
120
135
170
90
108
59
124
141
143
198
122
132
148
135
159
86
96
90
92
140
93
104
108
49
102
129
83
74
95
95
137
100
172
110
102
72
91
59
101
120
87
126
126
100
124
105
76
134
100
116
141
193
87
128
117
153
126
103
135
77
100
96
95
98
80
143
155
81
140
82
78
138
79
131
175
131
93
159
73
102
118
87
74
103
156
90
93
123
154
131
95
101
61
69
93
191
54
162
87
81
101
97
144
95
90
143
115
92
141
160
135
73
162
142
108
102
106
96
95
140
78
95
128
128
93
116
153
145
98
113
87
130
116
136
148
127
108
118
112
54
125
149
158
83
118
54
108
104
116
142
108
96
102
142
76
45
118
106
86
122
93
103
93
161
105
121
150
103
159
102
122
131
143
156
100
108
119
126
154
108
144
143
105
77
106
146
85
105
117
76
140
127
188
134
147
138
140
95
95
80
143
112
91
95
121
108
144
81
76
102
81
166
159
120
95
119
157
159
132
108
151
156
130
80
121
112
146
149
59
134
113
138
125
123
128
124
59
141
96
108
156
81
76
138
138
132
127
132
75
141
160
112
106
105
105
144
129
147
137
135
138
95
131
111
98
113
142
111
108
69
92
132
101
103
111
112
108
116
123
173
74
144
151
112
151
116
93
135
61
128
100
81
105
124
49
117
111
116
111
100
117
150
109
112
99
107
120
102
148
83
113
103
95
130
98
124
151
89
118
133
109
74
119
119
97
133
61
152
107
142
91
125
74
122
90
129
81
78
131
148
125
124
102
87
143
177
54
181
168
87
146
87
126
127
114
61
126
134
135
105
91
111
68
116
131
118
102
132
140
49
101
102
158
140
98
57
106
90
115
106
152
148
112
143
125
132
102
61
54
120
136
97
177
125
127
54
98
111
143
90
127
103
146
96
88
77
49
54
61
116
89
150
128
149
54
122
54
135
117
146
74
143
94
111
109
143
127
140
128
169
90
114
117
82
151
135
78
49
113
49
49
109
102
140
129
95
118
109
133
124
131
103
81
54
106
151
140
157
105
106
154
99
127
137
107
110
136
82
122
122
93
158
142
177
85
86
141
143
127
121
102
120
139
133
118
80
98
98
87
95
108
105
170
152
70
76
129
92
151
77
136
145
61
78
76
81
130
148
135
143
113
69
69
105
139
119
90
106
68
93
100
83
171
107
116
142
103
126
54
81
102
108
107
86
100
54
85
54
83
98
109
120
154
115
59
104
180
136
95
130
167
124
161
133
68
69
82
90
115
92
90
90
68
102
97
104
85
54
84
96
143
93
97
172
108
67
108
102
170
135
159
187
116
149
96
95
114
113
121
128
134
160
197
165
54
87
114
199
121
100
122
132
113
120
61
156
106
95
122
119
140
131
127
113
131
74
102
81
107
145
49
87
122
103
108
86
49
162
112
92
130
61
158
123
150
174
149
100
127
142
76
125
61
131
116
103
123
116
127
94
148
93
99
122
87
193
115
91
133
100
114
178
74
155
219
82
113
54
93
127
140
157
99
122
49
97
103
111
106
54
134
97
98
131
120
147
131
102
101
79
131
118
147
84
141
98
129
93
74
117
151
98
69
79
168
98
133
81
102
81
98
144
97
129
103
105
54
107
148
112
148
118
120
176
109
54
108
161
119
81
139
98
96
95
116
119
103
54
76
113
67
145
85
102
112
112
150
133
121
132
104
68
120
126
170
120
158
132
129
97
102
96
157
98
151
110
98
114
166
102
102
94
54
119
110
134
160
61
125
125
98
91
82
145
122
118
102
114
116
108
97
158
163
154
190
158
128
159
104
149
87
103
141
77
99
131
100
96
133
99
119
122
105
77
111
149
76
108
119
168
147
95
141
151
120
121
92
108
94
146
141
94
49
194
125
76
87
134
54
108
163
148
139
128
95
77
67
101
116
78
86
126
128
133
49
93
142
125
106
69
129
149
107
148
49
175
160
155
76
54
125
126
80
54
67
82
49
113
67
155
83
115
101
49
150
116
128
112
145
141
95
103
173
126
174
134
118
153
173
87
115
84
144
145
174
91
87
125
138
131
111
146
135
90
99
137
105
145
54
77
107
119
49
95
99
76
109
87
145
110
95
87
143
128
104
95
117
151
96
144
109
157
117
151
87
89
130
132
78
97
90
127
98
127
81
131
61
132
54
110
143
86
49
98
167
144
157
102
116
157
115
95
140
138
117
113
127
83
137
98
128
94
90
142
102
121
131
124
122
98
161
91
135
87
161
120
167
78
127
119
120
124
112
102
123
85
117
150
108
120
118
120
141
132
143
107
108
146
119
148
84
113
124
105
108
95
135
59
153
143
102
102
107
128
110
118
119
98
135
126
108
103
132
177
73
155
125
113
103
104
116
83
54
205
59
98
108
108
98
125
102
54
121
90
124
102
108
95
135
95
95
102
102
120
106
83
111
85
120
103
127
122
130
128
131
95
74
123
148
74
86
87
101
103
131
120
108
85
116
61
143
110
93
104
108
85
150
135
120
97
87
122
116
116
90
149
106
89
129
148
76
141
109
130
128
130
133
113
145
82
115
100
123
49
177
108
98
90
125
156
122
116
120
120
95
73
154
74
125
125
105
92
155
81
135
59
92
143
113
107
149
157
83
113
86
139
150
119
143
107
49
104
54
138
70
159
118
98
141
193
121
114
111
137
90
117
54
128
85
101
114
103
172
152
175
69
132
98
113
119
139
127
108
136
54
105
191
112
81
80
127
133
54
67
102
152
130
108
94
132
140
95
122
143
140
120
129
77
83
110
130
126
68
59
120
135
108
76
108
132
80
97
125
102
114
102
102
129
81
97
143
78
128
113
181
182
150
54
93
99
190
141
120
123
74
132
149
140
99
107
105
98
133
102
129
67
152
107
103
118
133
132
106
112
139
157
83
120
69
113
120
103
90
131
61
158
54
179
128
81
117
90
167
49
117
180
106
102
78
128
112
132
96
74
112
96
165
93
168
128
140
103
124
135
97
130
125
140
124
133
126
109
102
125
129
127
65
142
101
98
102
128
156
140
114
99
82
54
128
113
99
54
49
121
88
85
98
92
87
76
123
84
111
145
103
83
90
124
100
82
132
49
98
121
146
120
107
139
95
91
178
122
134
95
134
82
107
157
77
54
101
134
74
74
165
49
146
81
79
140
162
100
54
135
75
122
89
110
176
127
77
145
104
112
149
129
119
183
149
119
97
81
98
144
76
107
122
84
76
67
156
102
140
142
128
119
118
102
147
166
98
49
148
106
102
118
59
95
177
97
103
108
108
81
92
99
89
121
103
109
81
110
111
139
127
131
90
111
112
117
162
103
76
98
124
113
96
95
92
173
137
109
102
140
144
128
59
110
133
113
150
149
92
135
89
74
84
110
87
101
59
146
91
84
125
150
120
132
113
76
140
161
126
131
98
139
69
139
118
117
105
59
144
118
107
139
122
158
124
109
134
95
104
137
95
118
138
116
151
129
94
102
98
91
109
98
133
93
148
190
108
158
116
83
127
135
83
163
93
125
118
82
91
91
96
81
114
108
152
160
116
54
139
86
139
141
96
110
59
101
115
107
181
136
140
113
138
111
54
99
98
102
181
134
143
108
77
139
160
179
119
77
119
110
139
117
59
95
108
173
113
93
79
122
145
80
95
81
135
113
156
110
96
157
129
146
98
98
107
125
95
76
180
97
164
110
132
80
125
138
137
110
61
49
98
145
133
102
132
136
123
94
83
145
92
90
74
112
167
87
156
170
107
153
139
128
103
135
140
115
139
106
84
155
112
85
123
95
102
87
88
93
115
76
105
108
125
69
108
124
147
86
102
122
109
132
67
95
115
129
156
125
91
130
108
117
144
131
122
120
69
102
170
80
164
144
143
114
122
89
109
90
142
117
155
124
95
109
111
95
134
105
112
135
98
113
129
125
109
126
100
140
111
67
172
120
88
99
84
83
157
131
117
169
120
99
124
139
164
134
134
84
113
126
134
100
122
138
81
131
114
65
135
90
137
95
90
61
170
113
143
149
164
145
81
143
135
129
91
122
119
112
106
102
102
125
83
94
148
129
103
104
124
116
145
114
188
178
68
115
113
141
119
149
106
78
116
140
88
107
101
146
154
93
54
77
127
90
113
79
54
131
163
84
74
78
126
139
105
145
112
106
67
110
123
89
105
125
93
86
180
49
59
105
125
136
68
95
102
107
145
76
122
128
156
49
127
133
105
132
144
148
67
77
153
95
103
105
108
108
88
61
111
100
76
125
124
144
49
54
128
155
103
77
158
127
117
95
128
149
176
121
160
136
74
92
123
159
110
49
136
132
161
77
143
95
125
115
97
108
108
102
113
143
133
134
95
143
54
177
114
91
131
95
49
133
90
107
89
102
118
87
103
118
124
119
126
127
144
87
98
89
161
154
92
135
108
105
135
93
105
143
177
102
127
134
54
95
129
98
136
152
156
100
161
100
108
89
160
73
182
83
101
110
87
99
157
54
124
100
92
144
169
143
81
68
211
76
123
125
107
128
104
87
108
100
130
94
125
131
102
103
154
98
123
81
103
130
115
170
79
85
168
54
129
152
98
162
82
114
85
123
87
153
96
129
116
102
77
154
156
89
107
105
139
109
95
108
102
59
156
110
127
90
148
54
109
96
144
149
145
102
102
95
121
108
123
133
145
82
97
77
85
54
119
157
93
76
144
108
82
200
97
147
122
106
126
146
90
85
92
152
153
83
93
160
147
156
80
132
135
130
116
103
117
102
91
78
132
130
144
125
129
107
125
82
81
142
111
103
177
135
145
95
131
111
98
103
143
102
129
90
120
129
77
87
159
95
76
166
73
83
100
168
76
103
111
95
54
175
102
95
108
95
89
139
154
103
98
123
154
130
144
101
54
125
96
131
111
91
120
151
118
100
54
95
186
194
133
87
123
135
169
77
77
67
119
118
98
96
127
147
184
54
82
90
125
113
163
108
162
143
54
95
105
160
98
82
73
138
112
126
164
159
98
88
54
119
123
129
86
93
143
96
159
124
161
108
101
143
141
110
90
122
119
93
131
105
123
102
100
135
106
87
126
81
158
102
95
133
97
120
126
125
93
95
87
93
81
134
97
107
123
124
121
81
118
105
137
91
116
158
143
138
112
112
100
119
130
91
105
59
108
100
103
129
132
120
105
152
54
111
54
74
89
101
113
103
135
157
80
124
119
112
49
128
107
152
110
103
147
144
80
135
111
199
173
68
120
98
103
82
133
145
118
80
120
54
112
90
116
112
102
143
144
91
59
95
93
108
108
120
95
86
74
59
128
163
109
95
54
115
144
123
108
119
103
128
90
118
181
95
168
124
131
102
127
105
115
122
77
87
113
198
105
77
127
76
131
112
119
102
130
82
147
174
98
81
160
74
97
153
108
151
115
129
144
90
95
89
108
105
77
104
165
197
172
78
146
59
105
49
115
143
135
79
117
125
172
116
129
93
81
130
54
125
128
54
112
105
82
90
98
124
54
95
104
102
116
134
108
125
102
93
95
127
117
95
148
165
89
125
98
138
111
148
191
93
87
103
120
76
143
218
116
165
164
99
108
96
97
150
102
80
143
54
156
106
105
99
120
143
90
119
142
128
82
141
67
76
95
102
94
160
82
129
147
101
133
93
139
110
61
118
131
76
54
134
148
131
125
81
113
138
95
122
108
93
112
161
118
97
143
91
110
77
134
108
74
54
101
106
54
115
54
146
127
103
87
138
112
177
122
49
76
136
147
95
108
141
133
113
131
110
133
110
144
114
138
72
101
101
130
96
150
165
91
103
148
135
126
98
144
146
73
149
115
125
90
141
82
166
149
108
168
108
134
147
116
183
97
101
129
81
100
106
59
96
81
177
69
129
84
98
148
112
117
135
161
114
113
74
116
90
83
139
131
128
49
123
103
102
54
126
146
161
87
147
106
143
94
94
81
95
128
129
82
106
90
180
87
122
123
143
124
91
113
147
90
143
109
134
116
54
154
131
95
159
78
54
127
96
99
121
129
140
113
103
93
83
82
149
98
120
115
105
78
125
125
135
105
67
84
108
113
54
118
81
150
93
169
157
123
98
141
120
113
134
151
144
84
140
140
102
134
111
81
102
128
101
100
81
158
103
108
122
143
102
162
74
61
104
77
114
95
108
95
54
168
148
95
103
138
103
92
133
151
93
170
95
177
139
98
164
54
113
96
90
124
128
139
103
105
116
133
87
96
118
85
71
105
145
153
142
111
150
123
137
112
92
118
125
87
110
91
59
74
95
158
106
91
102
123
113
112
127
164
108
83
129
133
105
100
113
102
91
93
117
114
131
112
122
88
146
160
95
90
76
112
79
160
191
110
168
87
99
98
139
148
79
162
87
108
87
54
125
127
117
106
78
144
129
125
109
98
114
164
159
74
54
97
120
59
85
89
83
103
136
143
54
92
105
103
109
127
93
117
103
97
140
133
131
108
98
54
105
144
127
78
54
102
173
138
93
95
113
133
118
122
122
168
105
92
141
108
49
106
119
138
158
76
54
87
116
161
154
169
131
149
135
115
95
97
102
80
182
124
101
135
123
160
113
90
99
127
125
87
150
81
159
72
101
162
76
96
89
98
149
119
188
95
218
144
81
161
95
172
155
121
130
120
110
87
95
96
122
84
116
73
89
78
85
54
96
67
124
139
118
131
141
122
133
109
148
143
143
119
49
103
159
90
120
93
102
107
82
106
126
162
127
234
128
123
115
116
87
82
105
104
107
142
54
149
155
154
93
103
142
182
113
134
95
125
107
54
90
143
108
169
90
138
120
115
120
137
103
160
132
161
160
108
161
73
59
154
127
158
128
74
146
87
134
90
133
113
115
129
201
118
143
78
165
85
105
124
78
192
148
154
104
116
126
74
175
90
138
77
81
78
114
103
98
61
102
93
107
114
125
130
74
98
139
93
119
95
109
107
90
140
83
134
90
103
150
135
108
148
138
121
107
82
110
109
120
116
116
161
78
107
149
102
83
127
173
104
131
127
98
90
85
82
95
120
77
102
131
108
131
104
68
82
68
187
121
172
190
143
156
111
85
95
144
126
134
120
120
105
106
125
81
74
134
102
133
104
98
125
140
97
154
123
54
139
144
147
97
129
95
113
102
168
54
162
112
108
128
117
95
117
91
146
116
98
135
116
83
90
95
94
147
192
114
128
81
116
113
143
95
120
141
93
115
129
94
125
108
94
159
149
87
160
85
54
157
138
74
98
145
111
101
128
115
81
81
59
90
87
148
92
87
80
151
95
74
172
139
103
106
102
125
105
85
103
129
98
104
117
131
113
162
127
104
104
156
133
78
129
127
103
131
73
122
108
158
103
107
81
54
113
96
140
149
96
122
98
101
107
127
119
131
95
108
98
145
76
126
95
108
74
93
117
96
129
120
49
171
95
169
131
59
139
131
79
125
137
107
139
101
106
103
102
143
54
119
154
160
82
102
128
90
110
116
95
95
103
142
112
129
101
103
85
84
160
115
107
106
101
123
95
167
98
145
102
94
94
135
133
101
148
146
108
117
104
120
109
75
113
145
164
54
98
139
115
82
84
74
143
95
84
173
115
100
115
155
123
86
135
105
108
108
99
78
78
54
74
54
161
162
93
98
99
111
95
103
142
129
87
126
93
128
128
162
133
119
77
103
143
105
149
54
116
74
108
135
124
136
149
80
95
77
113
225
162
95
168
90
97
183
77
116
98
140
94
106
79
104
184
97
138
146
124
93
143
130
112
102
98
112
129
81
98
85
188
136
128
98
142
128
100
124
176
161
99
124
130
83
103
113
88
130
54
106
88
94
84
83
49
54
158
59
158
83
95
117
81
145
98
168
102
113
166
114
127
103
49
128
116
138
95
155
120
91
88
89
177
137
92
101
148
81
82
132
83
136
85
107
131
140
98
90
196
74
155
95
81
102
177
127
119
131
95
103
142
109
100
54
82
121
128
81
128
106
97
111
154
54
125
77
172
102
145
108
136
90
108
102
96
117
138
89
200
190
88
98
105
144
132
176
119
104
54
85
109
154
103
97
85
117
107
141
149
115
125
103
162
83
103
89
148
112
190
169
67
148
79
107
76
135
153
126
80
103
102
125
149
116
141
149
74
102
140
103
120
133
124
115
54
54
98
134
200
103
161
74
113
126
54
166
67
97
95
102
129
81
132
140
141
101
119
113
138
112
117
113
118
113
118
198
82
81
113
155
74
145
108
147
165
115
135
107
156
121
107
63
110
169
107
87
103
129
149
117
104
84
129
92
147
90
150
141
130
95
95
132
54
78
80
93
122
100
96
102
127
82
95
77
59
148
84
84
100
69
89
98
113
131
93
103
134
102
102
127
108
99
108
117
129
101
151
70
54
98
107
154
95
77
133
123
107
158
88
85
125
129
134
92
131
98
133
77
81
95
86
163
110
158
138
61
97
140
120
119
97
113
108
73
132
76
94
123
89
87
161
112
87
91
108
112
148
101
61
81
127
119
102
140
132
165
154
108
113
54
91
117
148
218
98
117
149
129
118
99
163
131
120
125
109
103
54
79
149
87
152
118
54
127
148
154
197
54
61
158
127
101
133
110
135
100
90
140
116
102
218
130
197
89
112
130
120
135
123
69
126
74
125
133
131
67
165
126
113
118
119
81
113
103
74
124
125
143
118
125
83
107
122
54
74
113
103
121
81
105
81
148
165
98
108
150
134
120
105
170
172
202
108
84
103
123
129
85
119
85
191
150
119
93
161
101
128
172
158
141
88
158
213
117
143
59
125
189
98
74
124
96
153
152
102
170
82
143
102
141
95
218
102
148
108
149
174
54
153
95
118
189
145
156
130
119
148
98
126
108
106
49
104
95
173
138
153
121
161
110
133
49
90
98
111
143
97
129
76
116
120
156
87
128
144
121
122
106
124
106
98
150
119
129
102
157
83
177
116
189
95
113
77
83
77
146
74
133
129
168
115
165
107
137
176
108
92
111
81
81
59
94
59
101
107
177
87
115
113
98
125
98
157
107
137
139
139
138
108
137
113
151
157
100
95
74
168
123
133
105
113
152
87
81
74
125
157
54
87
132
100
100
121
98
163
103
111
112
93
110
148
126
113
177
93
95
103
162
113
112
142
105
108
54
155
124
128
134
103
123
159
98
104
127
179
77
78
138
91
74
91
112
82
45
113
101
90
173
154
101
123
102
111
102
100
125
74
127
68
102
108
96
145
161
123
158
132
87
77
91
132
133
126
107
103
129
91
182
148
87
119
134
111
125
143
143
135
128
119
116
78
180
108
132
81
159
119
96
133
131
158
139
77
127
94
90
108
146
81
165
106
68
121
101
82
143
70
88
115
103
74
135
77
160
126
74
95
76
120
81
87
82
95
135
108
143
110
106
155
112
96
140
101
98
102
185
117
160
145
132
110
102
122
90
98
148
131
104
124
131
143
87
76
131
171
116
134
146
149
101
106
97
78
49
157
142
88
98
82
144
112
90
128
158
109
121
135
118
101
168
139
97
92
147
74
165
109
164
94
122
127
207
81
113
108
148
163
96
110
180
119
157
144
128
73
101
180
118
127
87
122
54
59
67
180
91
136
104
49
96
114
96
109
91
97
140
108
137
139
121
124
108
76
112
98
133
84
147
105
93
77
92
110
143
100
155
97
146
97
133
82
144
76
61
77
122
89
112
143
180
82
54
127
181
150
149
115
145
110
122
111
155
100
107
103
96
163
134
146
90
105
106
148
109
98
95
113
184
125
115
152
140
129
138
90
102
128
150
54
99
77
140
147
91
61
49
102
54
125
125
153
98
94
108
116
101
95
70
150
129
117
166
125
98
59
133
101
166
132
91
68
74
144
97
129
97
112
93
145
105
49
107
81
140
147
96
89
146
100
125
109
82
101
108
142
109
105
180
90
67
124
49
108
74
137
148
80
95
95
125
54
81
138
102
87
79
108
121
123
132
87
148
90
102
144
102
128
74
138
141
98
108
102
144
99
111
93
98
107
125
120
120
127
135
140
112
147
77
98
102
114
85
96
118
101
113
94
95
114
139
90
155
83
105
110
103
108
118
107
135
96
190
76
84
82
145
148
125
116
162
138
115
137
123
139
54
136
49
103
112
54
106
76
130
146
91
110
107
160
83
87
152
98
135
146
77
92
103
123
95
153
111
114
65
119
172
127
116
117
118
67
115
97
84
137
123
138
136
83
118
133
87
130
107
78
83
89
122
141
102
122
94
87
128
102
131
74
138
102
109
161
107
77
102
54
115
138
158
177
143
49
143
86
149
120
81
75
113
98
149
59
131
91
61
77
78
123
78
106
132
54
105
95
157
108
129
93
129
89
97
67
131
83
101
120
125
106
148
95
98
102
95
114
105
143
139
146
157
100
144
160
98
74
105
123
191
114
111
127
127
101
103
109
177
113
135
154
167
86
106
171
111
61
117
107
141
86
134
100
49
122
82
117
108
194
138
144
135
133
89
54
113
96
77
85
67
104
147
122
123
170
98
98
217
113
107
150
125
82
150
176
108
129
98
109
65
76
109
135
59
115
83
169
83
124
49
131
112
102
139
74
97
148
97
98
90
145
87
116
100
143
129
108
134
155
83
195
148
124
138
98
165
143
90
114
119
127
97
98
113
81
188
59
85
127
148
124
54
143
103
102
81
113
121
54
172
94
99
108
116
144
80
169
106
130
95
80
59
92
93
94
54
87
78
147
108
54
96
144
54
118
95
106
111
167
124
108
102
54
120
97
119
113
107
146
101
95
54
115
144
111
119
110
115
113
95
142
96
90
127
103
122
134
90
135
122
126
87
113
132
132
95
120
102
116
117
76
147
141
133
102
121
67
68
123
123
144
102
113
130
87
108
150
156
67
133
45
82
128
145
171
104
105
108
124
81
203
104
126
74
125
141
112
113
144
110
127
69
184
97
133
54
95
81
107
131
178
54
119
141
100
128
87
137
152
133
89
122
138
129
156
112
110
133
133
105
141
81
98
110
108
145
87
133
108
54
61
139
160
54
54
109
124
54
129
112
128
115
113
95
73
100
108
124
147
115
104
107
158
155
145
153
74
140
102
151
81
107
92
130
141
194
106
123
139
138
143
107
143
190
76
177
138
49
131
90
119
77
145
101
77
148
121
107
119
54
140
168
154
136
144
110
87
81
77
116
105
108
133
115
102
91
106
77
85
148
93
87
110
107
59
111
117
129
101
108
97
81
127
158
126
124
116
113
145
142
129
137
90
142
122
104
131
125
198
154
54
100
127
146
126
121
140
128
49
135
123
117
81
140
123
141
115
115
101
96
113
123
77
101
138
139
195
107
171
78
77
92
117
152
125
153
81
105
90
121
133
137
132
96
91
54
107
123
125
151
150
77
157
86
105
90
54
108
95
61
54
125
150
124
140
103
132
122
96
162
115
61
98
105
156
108
83
107
90
107
146
108
128
191
49
131
87
148
127
135
61
106
119
160
87
95
87
108
100
102
78
165
78
118
67
105
148
158
110
102
164
135
102
151
130
113
131
102
142
74
82
90
81
134
119
96
150
127
82
54
120
96
132
165
81
114
165
158
98
90
89
97
158
128
212
79
104
78
67
95
81
127
79
165
113
80
89
146
125
95
158
102
168
148
76
135
124
96
122
105
152
129
127
116
54
116
125
95
98
102
124
92
142
54
97
146
117
124
116
136
126
115
127
128
154
91
107
103
115
124
160
119
148
117
102
127
109
107
92
103
135
136
104
92
110
108
131
104
83
188
113
109
81
95
133
97
200
103
103
104
59
136
141
94
91
54
194
140
148
150
128
76
188
158
91
90
95
118
123
97
144
103
49
95
67
106
102
103
110
68
140
103
134
106
124
177
155
149
74
115
160
74
102
145
99
95
133
68
110
104
148
96
190
136
186
102
144
102
78
102
87
82
103
78
68
97
110
101
102
100
99
118
127
120
106
83
129
140
125
89
138
123
106
132
145
59
200
74
81
95
129
93
59
111
118
130
160
99
137
95
59
122
83
125
156
139
102
91
128
121
108
147
80
130
101
143
143
76
97
96
167
49
114
110
125
148
103
103
121
119
132
95
155
81
113
143
88
102
127
119
120
118
98
148
120
123
143
54
134
142
54
140
114
133
100
134
162
113
148
78
54
97
54
69
173
88
49
96
127
72
135
98
98
130
120
142
95
61
74
154
125
112
91
102
70
69
80
115
156
82
101
145
95
135
141
125
102
107
116
84
90
108
108
95
76
78
138
105
120
111
122
116
133
104
135
95
102
95
113
148
103
113
98
95
118
133
102
108
143
93
104
177
93
85
153
103
124
102
198
73
121
95
115
91
143
180
135
117
167
120
105
147
144
93
131
137
128
149
92
111
105
76
119
144
101
120
110
89
158
95
118
83
103
131
105
130
100
125
127
160
96
148
191
147
49
117
106
86
78
137
104
121
188
110
107
113
158
105
109
147
93
113
76
98
138
113
54
127
45
102
54
150
145
79
122
80
116
136
146
108
102
224
83
123
93
127
102
78
70
108
127
113
116
76
81
113
54
116
125
127
120
90
122
131
110
125
117
106
129
108
148
102
128
122
147
121
68
119
96
117
104
125
54
77
177
127
124
119
74
93
99
125
147
101
131
125
119
184
164
123
49
117
181
122
108
96
96
122
49
96
107
153
113
78
123
114
146
135
148
119
87
93
54
149
127
87
121
133
98
90
95
141
49
116
102
133
124
108
96
133
73
87
97
85
61
148
112
90
113
105
115
139
102
108
125
61
90
143
86
134
123
91
83
98
113
107
54
108
124
110
140
101
116
133
100
137
142
150
156
100
54
134
102
94
61
133
98
109
87
90
102
150
134
81
99
94
150
112
130
85
102
97
74
111
125
125
59
119
139
142
125
132
102
101
123
114
130
95
106
108
163
133
106
88
82
121
116
94
145
113
130
125
82
112
148
92
148
98
135
108
177
102
67
129
178
115
122
142
102
141
103
102
108
130
94
95
115
98
54
126
161
158
102
155
102
128
139
110
129
96
147
98
90
59
144
129
114
114
102
107
161
180
132
121
95
118
99
133
97
134
134
105
156
98
151
133
156
133
128
85
122
112
135
112
81
102
103
90
132
188
141
102
109
95
139
84
119
161
145
124
143
98
146
113
131
129
81
132
144
128
145
87
137
97
114
215
90
105
178
100
182
90
151
121
109
135
130
142
49
89
102
137
93
135
95
148
112
97
117
54
102
74
165
114
95
127
149
105
54
160
98
76
181
131
104
127
91
108
165
49
54
147
127
113
124
96
131
90
143
152
144
91
140
105
111
49
112
105
159
81
87
133
140
146
148
134
78
200
95
146
95
133
107
54
87
128
125
132
145
76
108
145
124
108
156
146
126
97
68
100
81
81
153
81
145
84
108
83
98
123
90
125
123
99
127
134
91
139
177
121
122
82
180
93
158
91
133
113
145
160
94
74
123
137
78
107
159
68
49
93
142
198
125
108
73
114
102
72
143
124
100
143
131
87
83
95
108
110
126
100
83
123
106
108
149
163
140
141
155
112
157
177
97
116
54
129
98
140
130
116
163
138
94
195
95
126
102
182
143
98
79
108
147
116
123
168
148
77
78
148
106
76
74
85
130
151
105
92
143
95
142
105
76
97
116
169
70
140
105
144
104
190
154
168
116
76
92
115
153
83
94
95
177
68
103
125
81
175
97
79
122
140
125
49
133
106
76
128
82
94
127
97
97
82
59
96
133
108
139
137
119
81
81
87
109
186
119
106
74
118
137
82
108
101
116
108
159
140
103
98
125
54
116
95
167
90
118
110
174
123
129
144
144
105
145
117
139
81
61
109
158
82
98
128
128
161
103
116
102
98
54
122
110
96
115
113
149
152
125
148
95
103
124
158
112
123
98
156
180
103
118
129
128
85
131
150
121
83
84
113
129
141
49
174
111
118
163
108
157
74
96
105
77
139
98
102
148
182
87
65
110
140
86
97
78
54
150
87
128
82
149
126
133
95
135
77
81
125
161
104
81
106
67
124
133
95
107
123
144
147
72
81
140
76
61
77
59
132
102
85
119
92
120
128
80
135
143
140
145
105
135
157
54
116
97
105
139
104
76
83
139
95
150
94
180
83
113
49
85
108
105
234
105
115
131
140
126
168
135
141
133
105
152
108
146
54
138
124
75
177
85
205
127
102
83
159
92
67
108
84
129
54
102
103
95
125
150
105
125
76
98
108
165
134
125
122
54
120
98
54
128
103
99
113
93
144
185
108
136
110
80
133
141
114
125
225
128
113
81
147
97
105
127
85
162
125
99
102
106
113
76
107
54
123
124
126
156
165
164
132
145
98
118
125
138
103
106
120
162
54
107
103
135
150
104
98
163
92
54
74
133
127
98
159
54
118
105
113
163
134
104
95
115
158
158
112
117
143
80
87
148
104
82
76
99
98
135
148
107
133
96
98
190
122
98
96
118
81
103
95
99
94
143
141
113
115
96
145
96
114
92
154
123
130
81
95
81
156
161
92
121
132
100
158
127
116
85
126
113
135
108
89
86
92
137
81
134
105
95
92
76
102
111
108
87
121
107
135
118
74
113
117
107
143
128
132
116
107
140
139
146
98
90
133
150
113
159
189
152
115
101
85
158
102
62
125
145
98
160
143
126
92
119
87
111
73
100
182
82
147
119
122
134
125
69
117
118
132
123
128
142
103
158
129
100
116
102
103
129
99
127
90
115
87
74
123
149
78
91
95
156
113
200
113
112
74
61
89
115
108
100
151
95
111
149
87
148
148
162
98
98
92
162
116
54
54
123
107
141
121
122
147
113
104
145
102
102
54
110
157
137
87
148
146
125
89
93
95
95
90
102
76
103
135
131
189
136
71
77
119
74
106
127
54
97
115
129
78
169
153
103
108
90
115
91
115
95
129
86
91
114
76
98
96
156
108
111
152
163
81
134
98
100
102
99
111
91
133
106
128
101
127
108
61
144
123
135
98
96
102
110
129
103
131
59
95
101
98
76
158
107
126
112
101
54
76
132
121
103
70
106
119
151
95
106
116
90
122
107
108
98
87
131
74
135
177
99
155
145
163
67
168
152
124
68
80
158
93
154
110
129
103
78
122
106
113
54
108
105
155
109
103
133
91
130
108
103
108
106
115
135
155
133
69
119
125
107
119
108
108
144
125
103
87
127
81
108
140
147
149
134
108
80
146
112
59
108
171
127
140
131
122
159
101
81
102
59
102
122
145
129
95
175
121
117
96
130
129
105
155
99
113
177
95
117
130
115
130
118
163
85
118
177
117
123
110
127
144
126
85
89
132
98
108
78
100
67
149
89
234
93
135
127
108
95
94
91
142
111
152
128
148
95
135
141
143
150
109
110
143
170
139
151
100
115
103
144
171
119
118
85
120
184
119
107
99
104
49
169
102
131
114
144
145
81
102
122
108
144
132
127
95
152
113
82
130
115
135
120
131
131
90
105
153
158
115
131
132
127
61
135
98
95
105
103
108
178
125
95
78
109
111
132
101
83
95
102
109
129
108
76
116
177
108
168
129
54
128
95
113
133
102
100
136
113
93
114
49
123
99
142
121
102
59
130
113
128
81
122
69
123
105
103
87
98
136
141
189
146
173
105
54
141
80
102
90
177
167
130
163
159
131
105
105
103
107
173
126
136
135
162
104
150
110
157
133
128
129
96
114
95
102
141
135
104
134
145
136
59
161
114
125
95
119
104
163
93
106
131
115
133
74
67
107
103
108
154
98
137
125
59
88
139
103
157
115
121
128
130
107
111
108
140
87
128
133
106
103
129
169
81
185
113
97
85
110
167
105
107
117
54
103
103
105
134
131
114
54
78
100
120
96
93
143
77
67
108
113
107
95
105
179
96
83
207
123
125
113
124
115
125
65
100
103
110
95
118
97
190
98
168
131
125
200
103
156
127
177
127
133
111
138
149
149
126
146
134
116
116
93
133
143
181
135
131
173
102
105
108
156
141
182
102
97
106
94
120
87
128
129
167
99
142
145
140
112
148
133
54
179
107
161
88
113
97
71
135
149
118
118
112
95
106
102
87
111
102
113
98
96
79
150
87
82
65
121
76
121
120
134
109
49
125
81
128
95
159
115
91
141
116
68
112
98
140
132
99
74
68
92
121
91
153
116
121
160
98
101
49
131
115
120
76
116
110
163
148
125
125
90
127
54
106
92
82
108
121
113
102
138
61
148
215
88
114
137
139
81
137
127
115
82
98
80
190
180
161
148
106
131
163
95
83
76
124
98
81
54
95
120
121
105
101
184
131
93
105
122
130
59
180
179
155
115
81
127
141
93
105
144
108
202
118
107
118
115
102
108
108
67
147
93
124
74
76
98
108
81
67
155
153
102
49
49
160
128
90
102
105
131
92
128
105
123
125
125
139
102
123
126
129
104
140
141
104
115
87
95
140
93
182
119
108
101
109
71
67
111
128
105
133
126
95
106
125
161
113
76
101
106
140
141
140
139
102
65
49
59
140
120
125
110
129
77
119
134
68
108
106
178
153
121
129
135
156
108
166
129
135
103
82
121
68
153
122
83
96
156
54
158
138
86
131
129
79
177
105
108
111
146
127
74
59
131
103
128
151
138
161
114
76
116
134
113
190
143
133
140
120
120
101
140
123
126
93
78
76
104
110
125
115
101
93
104
161
149
112
227
108
139
54
170
93
54
149
160
75
125
149
132
107
97
110
108
143
74
156
149
153
81
121
54
115
146
135
115
102
140
95
74
125
144
101
141
148
95
90
117
129
54
128
144
129
148
104
106
91
92
106
108
85
116
185
170
113
148
148
79
133
80
133
135
133
81
105
122
111
109
108
139
122
126
165
95
54
92
102
114
155
103
98
161
129
114
87
110
114
104
132
89
103
95
65
144
94
126
177
91
95
74
95
84
90
95
115
113
115
159
141
108
83
116
78
142
61
114
120
136
69
95
120
224
49
134
178
115
169
98
118
102
128
115
103
150
140
68
95
119
126
86
99
91
132
98
133
102
128
131
151
117
109
79
119
107
85
140
99
180
115
110
132
147
108
111
80
102
140
106
111
128
90
114
94
142
89
98
96
123
87
119
87
54
105
164
119
54
54
145
54
105
120
78
138
107
137
156
97
126
108
168
151
164
141
78
204
108
146
96
115
171
144
54
54
49
146
106
114
127
122
125
114
139
54
133
82
125
82
126
147
128
68
69
97
119
91
77
104
114
76
73
107
106
98
118
120
87
98
106
120
108
49
116
111
118
130
100
118
130
113
158
97
90
148
90
139
160
108
138
95
54
94
183
106
118
135
102
108
82
96
95
95
100
90
83
134
54
144
175
140
95
107
102
118
74
102
177
96
107
160
142
162
90
90
98
78
103
116
81
76
200
105
80
115
141
118
156
135
107
110
91
126
127
100
54
101
117
151
139
102
118
128
95
85
117
158
151
138
95
144
133
112
94
54
103
81
186
54
125
105
102
54
102
74
91
177
139
101
147
115
128
103
103
133
123
108
143
101
103
54
124
77
68
68
115
95
54
160
107
149
111
102
135
122
118
88
113
104
133
81
104
136
54
123
140
115
148
54
114
84
86
108
108
112
108
103
54
133
87
150
90
49
103
139
122
153
119
115
129
124
117
108
108
49
77
88
151
105
146
124
81
95
74
102
140
123
102
76
150
113
160
102
98
106
157
95
79
109
118
135
78
147
140
103
114
96
107
110
111
138
102
96
59
83
172
68
119
149
96
103
102
49
91
90
69
102
128
100
128
127
91
91
97
102
65
84
175
105
160
49
81
54
125
107
133
106
111
146
95
112
104
68
149
107
151
147
102
133
110
158
101
125
95
131
81
188
108
54
54
97
147
102
82
68
107
144
107
89
110
82
161
106
143
114
82
108
114
54
125
152
115
144
81
101
108
76
98
54
95
145
90
86
113
78
98
107
103
131
91
80
103
111
105
63
100
108
83
150
147
130
81
98
67
115
151
127
76
108
142
109
135
125
126
110
139
108
102
99
80
124
157
130
106
81
54
158
119
110
125
98
95
129
108
49
146
105
78
105
142
77
123
104
133
134
131
127
139
115
148
112
113
134
111
59
108
116
87
67
49
54
84
103
69
140
98
148
111
103
133
150
74
121
103
108
104
140
99
82
139
162
104
88
90
115
133
142
135
54
81
115
107
115
95
127
105
139
123
92
103
101
49
49
149
120
117
107
95
140
74
82
128
119
119
107
95
154
132
108
79
135
109
54
76
81
149
101
182
90
125
131
109
98
115
172
131
71
96
120
113
109
100
178
61
95
133
108
145
78
125
106
191
100
61
154
133
167
141
129
116
133
147
144
164
102
135
82
101
101
109
140
128
128
126
108
93
97
118
80
108
77
91
98
129
133
117
112
79
114
160
107
187
125
136
87
105
111
90
108
107
81
89
94
148
144
127
79
45
119
59
68
59
113
93
98
129
100
137
115
108
73
159
191
124
54
89
128
171
108
90
108
99
98
73
102
99
128
124
168
54
104
110
88
143
139
99
109
61
133
94
140
76
186
108
138
105
78
142
122
148
128
131
108
140
120
148
125
147
138
69
94
146
150
125
124
90
129
88
87
112
102
81
82
120
91
110
103
148
131
98
93
156
160
122
106
115
157
125
101
129
148
120
125
67
118
128
122
49
108
74
161
119
69
129
163
84
88
114
118
108
148
67
80
112
149
175
106
93
108
99
148
126
98
129
95
129
78
86
102
99
135
105
127
90
147
168
96
49
178
145
157
78
176
83
54
154
104
87
104
152
137
90
129
54
127
80
123
98
158
69
74
85
81
103
100
131
135
127
102
95
133
112
128
123
140
133
139
134
135
113
127
163
108
54
80
117
128
107
157
115
124
69
135
115
144
103
87
106
99
120
133
59
95
126
115
104
98
90
101
111
99
116
91
119
106
172
149
163
129
145
85
106
81
120
49
111
90
82
127
98
177
125
165
115
104
78
81
110
116
101
145
113
108
93
54
49
54
107
101
87
113
123
138
93
124
127
114
99
156
101
138
128
84
128
147
103
124
135
132
150
134
108
104
113
129
133
125
149
77
107
118
135
132
95
95
127
108
102
101
76
156
165
144
102
130
118
138
80
95
81
146
144
116
136
117
93
110
149
117
113
128
145
126
112
81
163
77
49
154
76
122
121
186
80
83
99
123
156
94
146
154
92
94
95
115
129
117
59
93
87
95
90
168
119
207
162
54
108
65
105
140
102
90
68
112
95
158
125
113
109
131
146
77
145
72
124
76
147
113
105
156
114
94
77
143
106
168
99
74
127
98
130
85
95
80
135
127
98
135
110
94
96
165
54
152
162
117
54
131
200
108
79
133
71
101
135
59
124
135
177
172
104
112
103
99
133
96
54
95
120
125
49
154
97
61
155
54
106
154
105
102
116
114
148
141
103
138
59
138
54
87
108
83
97
186
59
99
103
88
102
102
77
118
92
125
54
192
111
146
139
54
102
98
112
77
104
77
138
159
127
139
106
165
102
98
122
201
75
114
110
54
98
101
129
67
105
110
109
95
163
54
96
137
97
131
98
100
122
148
129
120
98
98
147
95
105
135
93
89
90
59
97
131
102
148
83
122
127
120
151
136
120
95
136
152
150
177
45
102
87
124
128
113
97
120
104
131
130
83
113
132
79
115
110
54
148
117
74
191
143
59
106
80
129
112
125
78
106
138
116
125
104
54
96
150
126
102
91
195
105
127
82
129
145
137
124
138
115
108
112
138
125
144
76
49
92
146
97
108
77
93
145
92
155
103
74
105
93
128
158
177
98
97
129
152
81
103
144
84
78
134
83
82
133
113
74
161
123
149
167
91
115
124
115
111
101
139
77
49
91
107
129
59
195
120
127
137
88
103
77
143
102
127
108
119
134
61
76
111
87
131
106
92
148
102
90
87
82
90
98
144
129
94
150
102
77
87
96
95
162
156
92
106
129
128
61
161
120
97
122
144
54
85
124
116
102
96
106
132
139
140
98
145
110
80
134
147
129
127
123
107
125
81
110
49
128
100
113
102
151
77
95
107
116
165
90
125
100
128
177
118
100
118
108
148
113
94
119
54
54
108
108
98
89
155
135
157
102
90
109
125
125
113
136
118
148
101
111
143
164
121
149
169
95
79
141
105
167
135
54
101
155
96
132
69
82
161
145
82
170
78
159
99
69
59
167
118
194
144
54
103
153
171
128
79
139
135
54
138
148
106
135
130
116
164
109
133
54
132
79
95
101
113
135
115
67
94
112
99
143
74
128
94
81
98
128
116
160
141
156
122
76
97
105
113
54
109
153
90
87
125
95
139
128
130
125
121
139
113
106
117
135
97
98
108
114
103
82
199
172
120
80
98
131
167
127
130
76
114
76
165
107
133
130
141
112
133
110
118
102
138
125
126
134
96
110
128
106
137
128
113
149
54
100
90
153
95
99
123
89
159
159
81
87
125
93
156
61
97
104
78
192
91
160
68
117
74
85
113
156
122
102
164
125
81
80
77
102
160
150
93
166
148
102
142
179
69
138
105
97
81
125
54
59
76
90
143
154
102
105
172
146
178
54
90
81
144
133
133
102
81
111
67
82
115
113
124
169
128
98
85
102
83
131
54
108
160
54
134
107
161
95
108
101
103
99
133
132
151
124
143
181
59
98
82
127
162
107
111
139
108
144
113
200
130
98
108
123
135
97
159
117
150
110
116
120
175
129
103
115
133
96
132
79
129
90
115
124
128
110
98
95
83
105
144
93
108
96
79
141
115
127
156
119
115
151
124
172
54
91
111
122
103
126
122
113
144
117
108
109
148
115
120
105
122
130
144
225
85
85
175
54
98
186
102
106
74
90
136
95
54
108
144
75
148
117
148
169
54
111
98
113
95
146
138
95
159
126
102
105
54
121
102
131
81
101
67
162
108
159
144
93
180
77
76
54
123
90
118
80
127
105
123
153
78
89
137
108
109
128
108
149
54
98
140
74
112
104
136
104
142
72
116
87
83
96
81
130
122
61
105
129
144
117
81
117
127
118
108
104
87
175
134
127
68
93
69
138
102
112
143
125
116
128
99
59
95
150
117
154
140
128
133
114
95
91
54
95
84
78
69
54
144
104
113
181
141
76
90
125
150
119
131
101
95
103
54
68
129
100
133
124
133
135
160
151
128
91
124
118
102
109
97
125
80
103
97
87
105
49
169
144
131
105
145
121
144
81
93
90
106
219
176
130
77
61
81
108
172
104
81
54
125
81
101
105
150
127
119
98
150
109
98
148
156
97
124
113
124
114
100
140
109
100
129
161
103
127
126
133
129
108
112
117
127
110
103
101
108
87
113
143
93
129
134
197
154
133
98
155
95
77
129
98
96
97
95
158
114
81
102
174
158
117
89
109
54
112
74
85
106
115
131
54
113
67
106
106
120
110
93
121
87
140
88
95
89
153
128
128
130
149
127
108
113
127
189
102
91
116
139
127
101
133
102
108
80
131
91
160
87
67
106
114
187
93
108
114
145
156
122
157
92
77
121
106
94
145
102
137
102
103
144
94
163
102
98
144
113
100
123
123
135
104
132
141
124
174
157
107
109
103
102
154
138
139
107
115
117
130
101
98
144
105
82
105
61
98
116
147
122
133
90
81
73
74
89
137
149
104
93
81
134
128
78
95
110
129
54
87
115
101
125
186
125
168
113
144
76
137
90
101
93
98
91
140
119
129
95
139
145
158
62
122
128
102
83
114
131
116
117
111
144
132
78
102
102
77
107
137
108
108
138
113
91
105
103
81
109
108
133
108
165
123
135
126
153
125
105
114
82
99
98
113
120
169
77
61
147
95
132
76
95
103
148
156
127
78
131
63
102
122
165
59
83
95
108
125
98
96
54
101
194
131
149
131
97
106
118
166
113
112
122
87
74
138
125
94
142
123
87
76
87
103
103
155
120
148
93
91
125
148
74
104
107
121
147
131
131
129
102
139
113
170
83
150
95
134
99
112
59
125
67
97
110
137
114
81
147
147
178
131
132
106
91
112
155
127
131
158
123
102
117
65
124
95
85
108
121
95
127
118
140
130
128
102
87
118
182
95
91
110
162
131
143
100
150
113
192
113
133
144
118
78
118
90
80
114
102
103
112
135
105
112
86
112
82
103
102
125
107
116
128
157
126
79
59
175
112
108
108
116
103
150
105
113
133
102
99
108
118
126
101
100
103
130
97
95
57
121
143
138
133
141
91
54
92
83
80
103
109
97
121
108
82
139
106
100
110
119
76
87
90
80
74
102
133
117
113
54
96
159
129
68
171
54
131
118
135
100
94
80
79
83
169
113
67
99
77
113
61
87
153
130
78
131
141
125
143
143
180
87
91
104
120
93
135
98
96
116
103
54
77
87
122
111
96
112
108
130
169
99
128
76
85
133
150
54
88
110
67
123
102
108
75
49
49
101
157
113
103
144
81
144
144
106
131
98
145
106
125
100
122
86
137
98
119
118
138
94
143
145
107
96
90
77
147
74
109
157
122
103
172
117
95
174
54
131
139
106
76
94
145
95
126
141
80
103
101
195
95
67
114
102
78
132
96
120
165
116
87
134
117
114
187
54
54
144
112
49
155
163
94
150
153
125
90
108
90
131
95
67
96
103
95
109
148
155
65
138
108
137
102
127
93
95
86
158
127
95
119
88
117
133
118
142
111
71
144
121
76
146
108
88
131
143
81
87
92
97
118
90
128
96
98
122
166
76
108
132
132
96
155
80
129
108
135
102
107
134
54
123
117
157
131
106
99
122
152
155
130
105
77
93
87
139
157
108
90
128
125
123
91
140
143
108
125
114
81
98
96
105
131
90
82
106
129
145
157
138
129
162
123
224
139
116
67
111
143
89
90
213
144
120
108
77
108
136
93
125
82
157
142
148
97
106
77
69
123
119
54
81
93
131
103
128
132
140
107
87
147
126
99
129
181
142
124
112
118
90
113
107
148
102
117
78
126
77
101
136
104
110
124
91
108
109
136
94
147
110
157
134
135
104
92
177
82
125
95
104
118
108
136
120
108
164
133
92
129
94
144
90
128
141
151
105
110
59
68
133
128
134
132
83
143
191
137
103
154
131
88
81
74
144
119
125
101
139
105
195
54
68
144
148
105
88
93
91
129
135
83
77
112
101
87
127
105
98
124
144
76
125
125
117
166
131
115
92
136
137
125
80
93
69
147
135
113
133
178
118
89
108
106
105
103
115
93
129
93
143
105
122
95
92
80
102
153
153
93
67
130
102
97
100
134
135
78
124
91
123
150
119
123
118
108
147
131
82
152
107
130
177
184
105
171
54
138
87
166
95
154
107
98
85
128
135
135
144
132
133
108
158
76
108
145
92
82
98
81
108
199
107
113
108
59
102
98
115
83
145
138
127
144
103
166
69
129
116
98
111
83
125
82
85
54
105
109
151
107
90
130
133
127
101
144
133
54
74
62
104
167
96
135
155
105
102
83
54
125
82
183
90
77
112
124
113
102
114
126
143
157
156
81
113
133
120
150
93
159
127
194
106
83
133
120
111
123
114
127
102
94
111
83
61
107
87
74
108
135
119
172
140
81
76
120
108
82
98
133
90
137
81
76
85
140
124
113
105
117
106
128
84
54
106
143
139
138
97
144
99
118
99
80
87
103
113
128
74
79
123
178
139
111
144
126
125
108
128
146
95
134
102
134
128
133
105
67
99
184
129
104
122
103
59
135
108
95
190
81
129
129
87
138
116
113
96
99
118
94
112
172
76
49
98
82
122
90
93
116
74
95
104
49
103
54
85
123
144
116
146
177
115
108
143
95
95
126
125
117
65
129
129
107
125
77
122
178
99
126
87
100
78
96
128
59
123
129
172
155
95
129
143
170
124
168
74
180
114
103
95
165
124
200
95
102
81
134
88
116
190
154
85
131
69
108
131
119
106
102
105
153
90
103
134
95
61
122
77
149
133
128
90
148
143
108
113
108
105
49
132
95
133
134
113
108
81
194
54
106
108
149
134
151
87
144
125
78
131
122
117
132
74
119
107
165
77
177
153
113
113
140
122
85
136
137
131
127
98
100
142
117
123
94
95
133
131
133
138
119
182
135
101
74
120
168
105
131
132
172
70
108
115
96
128
114
126
73
115
102
117
107
144
98
95
102
105
94
81
166
108
123
74
153
102
106
117
131
95
129
111
102
77
120
113
156
113
116
113
113
118
179
94
144
128
99
148
144
93
49
118
59
136
114
153
136
59
131
68
105
67
173
132
142
143
71
106
145
85
107
198
117
118
116
118
113
145
110
128
89
114
144
118
103
91
138
131
139
107
147
122
136
131
169
81
139
129
102
95
102
133
127
59
104
105
146
105
167
166
146
156
102
94
95
95
96
67
87
54
100
134
76
83
95
77
111
54
59
59
138
161
125
101
117
101
85
114
98
134
110
102
144
144
99
113
81
139
61
116
81
102
167
76
149
155
128
136
174
108
107
105
112
61
107
91
74
143
115
128
68
200
126
90
126
113
112
175
136
146
116
164
96
71
146
101
83
140
97
59
74
105
85
145
110
136
138
165
101
99
99
127
123
54
172
77
115
149
77
143
106
131
111
97
125
91
45
95
143
94
81
154
201
161
130
128
115
152
150
94
140
95
90
123
119
110
128
74
102
133
49
76
102
164
102
153
144
138
111
136
119
67
67
102
116
110
103
123
133
106
121
90
78
152
115
144
120
144
91
106
85
149
143
112
98
110
79
97
94
138
87
108
54
118
103
106
80
95
95
108
102
102
127
129
87
183
152
98
95
151
179
87
108
113
144
109
119
150
83
123
133
113
102
102
122
95
106
78
117
107
54
115
120
128
108
96
148
137
129
130
88
126
146
124
123
153
149
80
148
82
108
86
103
184
107
97
126
168
157
54
125
81
103
122
138
100
140
154
110
54
128
109
54
89
108
124
113
74
98
132
106
95
102
59
150
103
109
122
109
113
125
120
89
149
142
116
59
151
136
83
81
149
54
108
106
155
78
125
83
197
76
106
108
135
175
151
97
117
91
98
141
80
104
120
132
108
137
108
76
146
156
167
78
172
120
120
135
173
59
116
172
108
99
96
83
129
110
160
112
54
150
95
160
95
91
92
102
84
81
134
115
113
113
74
115
54
113
124
108
115
128
119
143
110
115
132
54
95
128
130
100
54
140
77
117
145
126
137
116
95
120
93
96
144
143
92
144
103
95
131
67
134
54
141
49
177
98
125
143
128
190
150
165
109
108
54
139
76
168
76
120
105
108
49
141
131
59
103
98
119
98
74
80
114
145
167
122
131
109
78
145
82
67
108
127
101
82
150
132
118
103
108
109
119
116
102
144
162
74
145
101
110
179
110
99
145
116
101
134
98
118
67
99
119
88
149
108
93
124
144
139
95
91
135
87
135
83
101
54
120
98
133
54
112
129
120
49
98
95
133
145
135
94
95
81
119
145
138
135
102
111
185
139
76
108
78
125
165
156
139
132
90
128
82
94
135
160
108
98
148
125
116
158
107
110
101
133
147
102
59
67
140
113
127
139
124
83
137
124
95
201
123
74
133
105
82
115
128
110
142
76
93
87
102
108
155
166
168
116
87
103
129
141
103
120
49
130
129
69
108
105
103
73
107
54
49
98
129
103
129
220
127
102
119
115
62
135
164
148
109
158
84
89
179
116
93
112
112
145
81
108
98
142
108
74
81
74
134
81
82
111
59
113
91
116
124
70
150
88
49
125
115
98
179
54
168
87
154
118
75
96
105
142
115
142
125
116
81
105
153
67
120
152
127
131
54
165
108
129
85
132
107
96
95
137
112
125
145
98
76
127
106
108
113
111
119
117
91
105
160
69
54
91
59
138
135
82
107
128
108
125
144
148
96
127
158
115
155
135
67
49
54
110
110
122
92
78
74
135
153
95
102
146
114
108
108
107
76
124
83
129
143
102
118
128
80
101
106
82
118
137
127
148
103
108
115
69
97
154
129
140
76
130
81
134
112
54
109
59
103
97
78
67
153
69
173
148
113
90
108
54
102
102
120
129
129
74
135
126
116
42
87
127
125
103
125
98
147
142
81
54
124
82
96
125
122
102
115
140
146
61
141
131
149
98
151
102
95
83
102
54
103
94
127
90
172
117
197
123
92
118
113
163
120
97
141
119
59
88
155
125
100
87
139
129
97
121
117
108
90
95
126
108
54
95
108
116
82
116
131
114
110
108
101
140
120
71
129
82
169
122
109
155
91
145
140
122
97
69
113
102
110
105
114
118
96
87
144
68
95
131
59
129
146
108
101
61
135
133
86
107
143
71
97
92
108
129
124
75
54
128
105
148
82
103
54
116
102
114
148
155
155
150
95
133
118
116
70
54
159
95
90
153
151
121
149
76
146
95
119
108
131
200
115
139
102
101
79
113
207
81
82
83
149
131
131
137
125
76
138
92
81
125
151
97
137
149
59
108
95
135
135
98
95
143
133
119
98
97
146
101
106
135
103
118
148
98
104
113
114
82
141
91
141
106
132
119
126
133
129
133
95
113
96
116
108
103
114
59
101
54
117
129
111
97
102
122
49
73
87
91
118
67
146
61
125
125
74
61
94
74
49
129
177
126
93
138
137
93
102
105
81
156
134
81
110
106
89
190
106
102
97
95
119
106
82
149
143
123
134
140
145
102
143
194
103
106
72
94
149
105
129
93
127
91
103
98
177
131
123
151
107
105
61
107
49
133
123
128
78
102
156
83
68
150
125
153
128
106
107
81
100
139
98
133
92
117
128
97
81
67
109
105
97
121
116
103
137
82
133
81
83
106
81
83
90
93
86
118
98
135
135
137
92
179
102
137
132
143
101
199
81
111
161
81
101
129
103
80
165
158
54
124
184
166
102
123
141
90
103
67
131
145
124
49
108
146
143
112
98
99
135
76
131
149
125
105
104
158
129
110
127
97
156
144
143
98
134
129
108
131
94
135
110
54
146
98
119
76
148
172
115
135
163
120
115
111
84
111
125
112
142
127
152
108
108
59
131
107
148
117
108
85
112
123
91
91
102
120
173
99
111
141
82
151
76
128
103
87
88
113
120
49
103
59
118
132
134
67
103
161
132
102
81
101
95
144
105
154
136
118
92
94
127
59
114
108
194
149
107
83
194
107
143
125
143
124
76
148
167
85
67
123
102
148
59
106
117
113
102
96
81
70
107
74
142
95
128
128
108
95
130
148
96
111
137
153
123
157
122
108
101
143
143
151
90
74
61
134
73
140
122
135
160
131
149
93
112
95
143
122
180
108
138
96
120
127
85
85
105
98
103
111
144
120
82
103
135
165
81
83
95
153
127
106
113
143
133
91
110
123
125
104
54
156
95
81
125
144
138
80
77
69
54
146
54
168
135
112
105
103
90
139
119
106
104
132
123
54
82
122
67
107
78
137
146
148
127
73
126
76
92
122
111
179
154
105
91
65
158
109
99
122
124
96
131
108
108
103
139
97
122
87
200
146
150
76
95
109
82
150
105
144
113
69
151
142
115
130
108
67
197
49
69
108
81
103
90
82
77
111
146
118
95
154
77
104
103
77
148
146
145
112
177
59
95
70
98
90
91
98
49
91
54
101
135
108
159
88
54
139
100
110
85
125
154
150
181
190
141
150
86
77
128
76
102
73
153
95
54
146
142
136
103
125
95
74
119
123
118
77
110
95
103
152
91
96
109
71
156
160
131
100
145
182
97
97
105
54
91
127
158
114
108
141
80
59
113
127
54
87
130
155
145
134
101
109
140
83
156
116
105
102
124
125
98
110
127
161
133
67
111
49
146
146
105
82
113
105
186
148
98
125
117
108
128
150
83
124
102
109
68
134
136
87
126
148
123
90
108
140
102
77
95
78
121
100
132
82
137
164
128
139
127
90
110
86
119
102
108
158
88
144
90
115
54
102
150
74
98
103
117
129
188
154
49
125
95
118
102
148
106
124
140
119
92
129
107
95
87
144
74
92
54
135
128
81
137
156
75
161
145
91
162
117
116
77
111
67
108
93
97
107
123
103
54
102
118
118
74
128
139
129
127
111
73
54
114
95
123
98
200
88
106
93
140
104
144
98
144
155
131
103
82
106
90
108
117
105
128
123
92
106
98
74
154
113
81
61
153
125
142
122
108
98
164
106
133
107
135
102
105
113
128
93
115
102
145
95
49
98
83
93
122
102
155
112
138
90
54
170
140
89
118
122
100
81
161
158
101
61
104
148
95
127
150
137
126
135
103
134
87
121
112
90
117
162
115
54
126
139
161
97
129
101
155
113
149
139
150
116
149
77
113
122
170
54
125
106
103
156
65
144
131
172
109
161
115
125
157
101
108
81
127
110
95
235
113
107
108
120
135
122
108
102
124
93
100
134
91
104
163
74
153
138
80
103
153
95
170
155
59
132
103
85
74
129
133
143
87
98
130
149
85
135
100
85
81
108
133
141
180
92
179
145
97
138
108
129
75
123
116
143
122
99
123
90
155
102
121
108
144
116
128
132
96
182
92
148
141
136
114
102
54
67
81
81
123
90
134
54
87
82
106
77
118
126
132
98
103
113
148
133
101
89
102
165
161
112
105
134
54
82
130
217
100
93
129
128
166
54
87
79
54
135
120
145
142
169
133
128
133
110
61
177
125
118
154
54
89
108
123
134
141
148
95
87
155
128
131
81
135
119
54
125
83
125
98
118
93
108
111
49
92
106
154
124
115
104
122
95
81
84
164
118
145
128
125
81
103
105
85
100
54
145
145
81
54
91
87
105
54
72
133
119
148
88
91
102
103
145
140
86
105
54
110
110
106
108
108
122
158
156
97
133
111
82
165
104
127
194
128
148
123
165
98
102
81
108
108
147
116
99
92
135
54
101
103
108
81
54
148
119
54
124
102
132
72
148
67
150
143
121
124
146
132
124
157
156
148
117
125
113
127
154
54
108
118
95
143
200
101
94
122
122
77
128
108
128
125
81
123
74
59
102
110
164
103
140
98
108
94
186
93
129
84
115
54
54
127
128
115
125
156
136
81
109
104
113
120
161
154
83
135
108
113
163
95
159
115
98
101
148
92
76
158
130
99
98
95
134
81
125
80
147
120
101
97
93
111
143
98
137
177
102
111
147
129
104
104
139
168
160
103
105
112
117
153
164
142
74
143
150
102
135
87
147
163
98
108
90
134
106
123
73
143
188
140
128
87
109
127
86
156
54
95
180
154
122
158
136
106
135
114
83
103
95
81
103
91
157
131
102
156
93
113
86
133
96
108
120
138
117
116
104
112
77
77
154
109
54
95
98
113
185
126
137
108
119
114
131
59
152
92
120
141
124
103
103
134
84
68
148
103
108
151
99
133
161
148
101
124
125
133
91
119
118
111
93
93
77
83
157
125
110
161
54
104
113
127
126
86
177
117
100
131
90
87
137
108
81
115
147
54
181
173
120
138
100
105
135
97
131
118
61
108
54
96
117
108
116
154
125
108
101
102
144
134
90
81
95
95
151
122
54
119
161
99
83
104
102
123
80
135
138
95
54
119
98
141
185
144
104
112
67
123
78
127
166
133
112
105
115
106
143
118
108
95
110
104
150
81
142
102
134
144
135
118
87
106
118
99
104
119
127
68
133
97
102
152
81
122
90
169
125
96
162
95
83
95
105
132
102
119
100
126
114
102
81
143
96
110
59
78
125
89
93
109
114
120
54
113
91
132
110
135
148
49
154
158
89
102
156
89
164
134
94
102
120
132
142
131
96
147
137
129
148
74
89
68
90
102
78
54
104
49
67
118
104
112
102
128
127
109
67
54
133
135
120
103
147
124
97
139
83
101
138
139
117
80
108
83
102
74
95
96
113
143
180
113
148
125
73
147
82
99
148
110
107
143
147
139
136
96
135
87
161
106
160
102
110
168
147
115
167
124
94
83
121
185
84
100
104
81
83
122
120
108
111
144
131
97
121
116
103
139
49
95
70
102
133
116
54
164
59
105
105
108
95
128
112
167
99
115
187
125
98
97
86
108
127
105
137
133
54
95
162
141
119
74
152
88
89
54
87
108
122
163
150
124
112
117
120
59
135
152
140
102
156
141
129
131
123
137
107
98
88
83
114
119
117
91
102
69
59
108
97
135
126
117
54
137
112
85
126
127
81
127
125
121
153
82
81
93
103
131
85
105
121
105
109
140
105
102
127
124
151
54
105
127
81
125
144
124
98
96
77
86
114
132
102
140
105
146
93
87
82
138
156
168
107
145
87
140
127
113
139
111
81
125
95
153
91
77
106
95
115
110
131
74
67
104
140
80
134
165
142
112
95
115
125
103
87
143
118
119
87
101
140
127
120
126
131
144
102
148
81
97
128
188
129
101
107
132
116
102
83
81
87
128
90
97
118
207
88
149
122
163
120
133
127
86
96
74
108
103
140
147
106
123
127
82
138
129
144
138
113
57
91
104
119
88
96
49
77
109
116
130
111
105
98
162
106
101
115
108
59
161
84
161
135
93
120
131
90
95
105
186
128
103
138
108
98
90
169
117
129
92
54
135
134
96
82
152
98
158
133
108
78
163
101
141
77
130
167
117
137
98
122
83
94
137
108
104
98
103
108
127
130
49
109
96
113
141
131
110
77
118
92
82
97
76
85
102
108
134
157
118
135
102
109
146
103
95
87
99
105
103
105
81
143
119
124
145
149
125
138
172
128
94
120
129
180
131
127
155
189
90
126
160
114
98
76
182
152
112
101
69
99
81
133
80
135
79
145
122
144
87
158
103
134
149
123
97
130
123
94
134
170
98
49
54
146
157
122
108
127
136
82
170
102
98
70
104
157
119
105
63
131
158
131
110
145
122
120
124
146
124
49
54
143
87
132
142
140
59
87
108
114
131
101
102
103
83
98
148
79
157
137
127
87
108
114
122
93
76
100
81
132
105
98
68
82
113
54
103
85
113
112
96
112
112
61
133
126
74
74
133
182
120
102
87
123
102
83
128
106
54
121
89
116
126
97
103
95
107
131
101
111
108
92
128
94
138
74
95
134
69
87
128
114
74
119
98
129
104
100
125
76
68
93
155
153
147
79
128
129
126
121
148
67
92
134
156
131
102
77
138
132
149
129
105
121
133
110
95
49
102
129
108
102
81
131
112
113
61
98
120
147
135
93
128
81
89
130
94
102
111
188
125
81
200
156
108
128
103
95
116
120
74
108
107
166
177
89
170
123
148
144
169
95
105
54
125
105
74
130
113
141
121
110
76
81
146
134
108
168
115
150
133
153
54
87
140
108
115
141
103
124
120
118
101
141
165
120
70
156
142
49
118
99
155
154
97
108
138
108
106
115
112
75
122
101
87
117
78
107
86
93
59
106
112
82
141
80
81
200
130
137
103
142
227
92
83
83
101
67
54
131
54
102
143
102
71
90
98
103
106
151
127
95
164
144
106
120
145
82
145
158
93
125
54
54
128
95
141
105
93
105
113
110
91
108
136
102
103
90
120
189
132
95
100
42
148
120
133
131
124
131
114
107
133
80
125
95
95
90
101
94
133
105
95
109
131
87
128
140
98
119
164
125
87
102
116
83
78
90
100
54
101
115
108
148
125
85
69
122
141
74
178
87
109
123
85
86
115
113
88
121
200
84
87
61
126
124
105
155
106
180
103
136
85
89
69
59
118
164
154
101
130
54
123
141
116
99
104
157
128
130
170
148
70
146
108
177
115
95
57
111
98
145
185
115
95
115
164
54
103
76
91
135
167
78
112
107
108
108
101
98
115
137
77
135
113
153
128
105
96
109
137
112
97
78
77
106
95
95
110
149
117
102
112
101
105
107
81
69
128
54
113
133
108
67
121
96
146
129
121
98
99
85
135
93
144
131
54
107
98
130
108
98
108
103
102
110
98
126
81
120
76
98
155
81
80
108
175
135
80
115
103
109
120
81
164
116
125
154
121
146
121
81
95
87
69
84
123
116
143
98
49
107
112
141
69
95
131
95
185
93
103
106
93
144
125
122
124
108
133
141
90
155
165
112
119
100
80
144
97
113
155
129
134
106
119
128
161
106
90
74
108
124
77
80
147
139
76
102
49
125
97
110
138
133
78
200
100
102
139
77
146
125
104
165
114
122
97
135
123
113
122
54
109
85
148
98
102
125
106
93
169
108
139
193
177
94
165
102
131
120
138
112
97
95
99
156
97
129
107
142
116
95
112
135
103
105
110
102
108
153
105
177
149
134
184
59
105
95
136
74
107
123
124
139
103
109
125
108
141
102
105
72
141
121
143
90
133
130
145
155
141
113
107
102
110
96
111
133
99
54
98
150
184
102
137
81
104
130
158
111
93
171
118
129
127
78
103
136
95
49
122
95
54
104
95
161
114
94
135
98
136
99
113
76
100
95
100
102
120
103
133
102
91
180
115
83
138
122
106
139
78
170
145
136
54
105
103
102
145
200
190
77
143
115
127
135
128
113
116
54
95
95
149
102
103
108
82
113
123
105
150
111
139
87
129
113
114
125
121
123
150
125
83
157
102
90
169
77
136
150
118
134
59
108
93
104
129
81
118
140
138
54
123
205
135
133
132
102
95
120
129
108
129
161
126
108
95
122
125
134
113
76
107
130
101
65
87
127
85
139
110
54
153
151
127
125
122
142
144
134
82
54
139
133
98
119
93
111
106
78
125
96
161
118
102
134
78
120
114
59
122
83
120
98
98
92
77
94
95
132
115
127
54
168
155
117
89
159
109
139
114
67
87
132
146
136
165
141
102
150
122
101
85
107
93
102
120
102
125
136
95
111
102
136
54
96
140
109
95
125
147
135
123
133
112
111
123
117
148
106
93
77
137
112
78
119
144
81
90
127
118
116
74
153
99
77
123
141
134
111
141
120
106
143
101
127
150
158
112
68
113
99
110
128
133
172
110
143
95
138
90
95
138
93
96
102
83
102
54
49
84
127
81
106
96
139
135
139
194
146
150
54
94
107
108
54
116
105
127
105
115
101
97
82
76
97
126
122
93
167
80
132
74
156
108
161
54
111
129
95
143
115
116
113
175
83
109
107
137
126
122
159
145
54
81
129
108
118
102
119
144
133
164
81
125
80
122
107
100
95
142
135
81
132
106
147
103
182
119
49
113
107
107
81
164
78
122
143
160
129
81
125
91
89
131
108
151
113
103
73
49
190
110
120
107
145
122
165
111
161
49
155
133
118
143
101
144
54
132
125
133
130
73
100
59
87
89
87
77
140
147
192
73
120
54
113
82
84
100
141
123
123
54
114
74
98
129
93
170
142
122
133
112
129
98
103
105
98
103
81
135
132
91
105
117
87
159
95
105
85
102
87
67
128
68
144
168
93
146
77
148
126
67
78
112
118
128
106
135
96
139
107
99
118
95
152
130
126
54
133
89
101
93
103
118
132
113
177
107
84
148
164
102
154
106
120
59
125
119
180
98
59
123
106
116
130
144
107
78
160
145
83
75
101
131
153
81
125
87
77
82
128
78
152
117
131
116
180
177
165
138
122
158
163
115
90
163
115
123
129
147
98
108
124
103
118
96
125
168
133
95
91
54
106
103
102
119
97
81
143
91
103
119
104
75
122
81
138
105
151
102
127
109
148
107
106
124
83
77
54
98
118
120
106
101
90
74
105
81
108
155
149
82
104
165
135
148
116
120
143
85
143
67
148
117
89
80
105
144
125
127
89
70
68
125
144
105
98
124
121
146
116
82
133
161
148
158
142
118
120
134
140
74
81
184
109
115
142
128
97
123
49
155
107
85
172
163
146
112
54
90
95
145
144
146
158
131
116
123
142
93
140
153
84
139
102
120
140
54
91
125
137
95
158
90
107
117
105
102
81
124
144
82
133
98
96
102
90
105
137
77
110
193
102
143
80
102
151
128
137
54
126
79
131
128
177
190
81
120
95
103
149
119
161
179
127
123
95
81
67
212
49
122
116
95
102
167
54
81
125
117
171
93
127
150
101
74
54
158
165
76
107
102
102
128
90
130
108
164
147
82
119
152
93
151
116
138
98
153
113
110
54
102
54
152
80
147
147
116
108
91
128
103
151
102
85
115
111
97
163
119
103
127
113
160
131
116
141
59
116
123
85
85
77
134
120
49
93
78
165
95
121
149
121
98
94
169
108
113
127
139
97
130
154
128
78
133
100
97
54
143
54
111
111
123
111
152
114
143
95
86
74
124
124
115
148
81
77
177
132
97
133
105
119
87
105
113
95
73
103
95
136
148
87
108
125
113
128
85
150
177
81
54
136
94
135
123
104
97
143
141
79
105
67
83
102
128
100
138
119
123
91
70
139
49
179
157
54
87
108
93
134
135
96
133
181
103
170
93
93
150
143
102
77
122
152
160
92
83
139
90
107
104
73
76
151
80
80
139
153
159
124
146
141
189
111
100
102
103
99
156
156
133
164
114
165
102
165
82
83
59
157
139
135
143
104
116
102
86
125
117
133
59
125
158
161
90
145
128
103
93
126
137
110
113
126
129
77
135
150
83
148
128
98
171
165
95
119
54
135
108
205
74
105
97
162
109
120
54
113
87
81
163
155
97
142
120
122
98
118
133
128
81
115
54
179
95
138
77
148
148
93
121
107
87
134
67
133
145
95
146
154
103
138
115
106
131
90
87
49
113
92
154
185
168
54
105
122
115
158
164
114
140
148
150
135
104
125
68
82
104
106
167
119
108
54
61
152
116
67
155
90
93
118
113
190
117
134
138
135
77
102
172
80
182
131
95
98
109
158
116
114
68
108
93
129
79
95
133
78
154
125
136
87
59
95
94
98
98
113
121
59
144
112
139
118
128
87
98
103
106
141
99
45
128
178
110
117
192
115
81
98
102
83
155
135
133
148
74
108
93
83
123
122
93
121
154
138
135
154
105
96
83
123
95
143
137
80
154
129
98
117
169
108
126
126
113
144
133
156
154
138
54
111
117
77
114
128
89
82
140
122
78
147
96
140
128
150
85
54
96
139
49
49
125
127
95
122
78
78
127
179
92
108
101
118
102
140
125
107
120
145
144
100
141
81
177
102
54
146
106
158
101
105
142
161
135
133
120
129
160
157
106
106
127
154
89
133
87
148
123
101
205
129
106
157
158
106
98
186
148
103
101
91
143
54
120
106
125
148
148
77
144
96
101
102
105
125
135
143
133
54
78
106
168
119
124
160
73
94
135
119
125
155
113
129
137
119
112
74
115
85
140
108
150
115
142
155
174
104
113
103
83
141
139
116
78
96
109
150
96
113
98
101
101
159
149
127
122
61
150
103
130
116
123
149
116
81
83
106
141
103
127
145
143
98
150
102
150
116
127
103
130
113
123
81
128
90
105
105
102
116
100
135
103
93
129
131
157
131
93
107
122
83
120
120
155
101
148
102
132
123
93
108
178
126
120
117
147
112
113
81
68
102
95
157
113
152
158
62
99
54
112
158
141
107
83
124
106
120
102
117
167
68
163
85
81
128
94
54
135
106
128
98
77
101
83
121
110
121
141
95
54
105
117
105
90
153
148
102
91
59
115
84
117
103
150
54
117
163
94
151
113
158
97
100
123
143
112
100
81
91
130
136
143
95
121
134
128
93
138
74
89
108
135
180
134
54
133
143
135
107
49
130
136
114
94
99
83
101
54
124
95
113
113
110
109
116
96
109
150
110
121
97
143
166
94
133
185
92
98
129
173
113
140
155
158
49
101
104
113
154
105
112
147
162
107
95
149
108
129
75
129
160
87
152
116
129
54
108
163
98
160
90
122
101
120
177
118
96
128
133
128
104
102
99
144
108
76
150
96
105
108
168
103
68
123
134
130
125
132
78
103
107
127
149
123
131
128
90
82
99
115
105
126
95
140
130
117
108
82
115
127
95
136
108
91
103
61
168
108
68
76
69
111
126
145
138
120
92
103
97
127
122
131
140
174
120
125
94
74
67
109
156
103
104
108
103
125
76
127
139
97
153
128
78
148
98
131
117
102
160
122
136
131
129
82
164
89
90
113
96
106
189
121
114
106
177
84
49
113
76
93
123
102
120
159
163
159
87
124
128
115
106
133
219
135
144
81
98
143
107
134
107
139
151
134
92
95
150
177
118
111
93
133
74
81
146
127
148
141
54
97
54
93
128
158
108
109
172
124
141
54
168
128
114
106
128
94
78
97
95
163
146
148
95
59
121
143
97
164
101
114
129
126
132
122
108
191
114
190
129
93
143
177
149
93
95
172
158
131
54
157
123
123
75
93
125
54
142
160
136
117
140
115
54
96
140
76
153
180
100
97
54
112
133
89
106
91
68
74
128
96
108
146
95
122
119
199
117
82
96
111
95
149
115
113
151
118
95
128
154
102
129
125
112
102
153
112
87
87
97
105
138
83
117
113
144
108
96
95
144
118
112
131
76
134
108
128
180
130
114
140
148
84
106
137
110
108
91
150
107
146
108
108
122
90
125
137
144
113
163
164
80
154
93
115
119
76
91
108
180
61
103
108
107
81
59
98
99
143
153
74
61
145
129
234
132
91
129
97
112
129
77
141
106
132
96
45
95
113
155
79
161
117
78
121
124
103
87
103
158
133
95
54
100
166
116
107
83
113
138
140
186
152
98
158
185
82
138
95
139
105
147
158
100
108
138
96
92
108
87
54
105
129
124
86
127
87
160
161
156
132
145
110
107
94
135
93
81
105
151
112
120
155
145
102
99
109
151
97
142
159
129
118
138
148
135
150
106
112
49
132
105
103
105
127
140
89
131
135
114
131
163
102
95
98
97
76
118
54
133
54
108
112
140
159
148
90
106
172
99
116
126
59
145
151
147
98
125
77
160
161
125
99
139
148
158
133
106
128
106
148
108
141
108
92
98
150
98
116
142
107
126
81
82
136
93
101
140
54
116
123
136
102
177
99
113
131
122
107
160
76
91
112
130
95
155
148
76
111
124
145
76
77
67
92
125
96
131
76
191
142
87
115
127
100
162
127
120
84
73
136
73
74
111
86
89
102
98
117
108
102
81
95
102
105
81
81
124
87
54
90
118
95
103
118
92
134
158
153
132
92
161
131
133
95
81
74
110
113
130
144
145
90
97
151
137
192
77
74
105
119
81
127
79
102
115
78
137
110
59
122
67
126
155
108
116
101
133
126
108
138
130
85
133
77
109
130
181
140
87
77
76
116
149
107
79
134
115
98
116
59
141
93
94
159
102
85
63
105
83
97
125
142
110
83
161
122
207
143
108
127
102
126
141
79
83
114
99
100
131
133
141
106
99
100
116
95
112
120
81
106
143
110
103
113
104
117
190
131
125
137
108
128
109
114
105
179
140
129
123
155
95
119
150
203
94
121
92
70
165
59
76
81
105
152
94
88
129
79
176
128
80
160
49
135
164
68
96
129
49
110
108
92
177
126
147
79
98
121
108
83
90
105
166
111
133
167
100
87
144
54
54
132
121
112
128
83
126
95
95
95
110
125
123
143
81
127
102
122
115
145
95
77
148
115
124
95
117
90
90
167
134
160
139
108
115
142
139
136
90
108
61
74
59
76
147
148
152
54
139
104
139
68
157
79
102
116
95
79
186
149
109
90
95
172
140
54
138
114
96
59
102
167
97
123
67
124
125
138
141
116
118
176
83
122
123
45
96
141
104
123
106
198
82
125
127
140
72
85
127
112
91
108
147
127
131
118
144
104
158
141
102
101
125
85
130
120
54
115
77
112
49
177
77
136
93
83
103
95
93
103
133
149
109
120
92
135
138
161
148
101
75
129
98
127
108
140
135
95
125
141
93
98
151
90
95
109
116
192
49
78
54
106
76
101
82
127
85
87
59
108
128
135
102
87
108
130
93
118
141
80
102
114
98
101
98
144
61
90
177
127
77
117
132
74
182
177
109
81
95
131
81
123
81
173
67
112
173
90
101
119
85
108
90
83
180
122
127
97
113
115
95
109
103
135
105
102
145
93
113
104
74
148
99
89
95
139
67
54
123
112
94
109
74
107
155
108
218
113
142
49
139
113
54
87
133
82
147
191
69
124
151
143
134
95
163
131
147
59
125
124
102
105
91
129
127
118
98
103
98
122
133
106
119
94
129
132
150
102
69
108
104
218
175
121
49
126
108
93
87
106
74
144
161
125
103
125
81
153
86
99
76
102
131
90
88
68
81
77
102
108
168
93
129
100
200
181
54
138
123
140
139
112
111
105
131
122
87
103
110
49
106
116
116
165
161
148
132
167
97
94
149
98
149
108
90
115
95
161
119
104
80
96
95
88
108
96
122
94
133
186
117
127
123
157
101
98
122
119
140
90
126
137
103
98
115
127
120
160
131
104
107
92
115
90
118
146
172
117
151
150
81
59
175
145
144
105
83
49
117
134
74
128
105
146
136
124
87
133
133
133
54
83
123
96
80
137
49
69
190
108
78
132
85
148
93
122
139
83
93
139
81
85
74
113
86
75
134
127
105
171
156
91
113
98
99
134
112
59
108
174
115
98
105
97
113
107
137
74
127
75
139
87
95
118
125
102
91
102
125
156
74
142
131
95
125
59
132
113
84
95
128
158
145
99
107
66
67
115
142
115
115
73
124
113
105
105
125
127
80
95
117
137
100
84
151
98
148
97
145
80
132
144
78
124
124
96
138
121
119
142
135
87
105
115
143
128
131
54
82
143
149
120
92
82
134
87
140
107
149
131
108
121
83
229
88
143
155
142
112
139
108
75
80
54
105
107
101
85
128
125
81
174
81
108
125
177
87
68
145
92
76
87
170
103
102
192
147
142
78
101
130
134
112
76
136
140
105
108
119
105
172
129
105
122
170
101
103
102
54
141
109
127
129
135
81
98
102
131
93
90
85
78
81
112
128
106
110
87
145
59
116
106
129
144
49
106
109
74
128
168
104
125
125
54
90
120
134
98
114
95
108
127
149
113
126
145
117
98
102
103
129
135
128
129
108
89
133
114
123
148
130
101
93
97
102
103
82
147
49
126
139
67
120
115
95
151
186
54
179
171
79
80
116
108
94
81
140
130
114
156
116
108
150
180
98
161
103
119
123
112
105
113
103
54
149
136
106
139
137
148
54
89
84
118
96
140
108
167
153
157
124
145
145
102
54
143
78
113
100
151
129
82
121
72
96
135
90
170
105
77
110
137
159
140
125
113
95
120
100
108
54
95
91
127
123
137
128
158
95
76
158
98
142
109
120
122
164
119
59
77
92
49
131
119
133
119
125
101
143
104
108
135
134
90
179
130
127
91
49
97
114
102
91
69
87
123
107
140
108
96
81
102
113
100
114
108
163
103
143
106
108
98
59
102
61
93
82
95
105
81
83
74
111
107
98
117
143
162
126
125
119
120
116
130
77
158
141
119
109
158
76
121
103
100
105
127
83
82
119
94
102
116
97
124
83
110
125
54
90
136
108
148
95
177
94
129
104
118
81
113
167
152
103
124
93
186
129
164
87
95
49
120
103
81
69
178
114
85
54
120
103
150
161
122
135
153
107
89
163
125
59
54
163
145
98
105
160
110
103
91
92
129
117
91
95
96
138
134
178
111
111
123
54
80
82
95
49
85
161
102
105
96
97
102
74
148
103
135
136
109
71
107
94
120
133
133
90
98
108
127
129
96
102
135
81
159
101
131
132
128
101
111
122
118
98
133
133
126
108
98
142
119
117
93
139
122
120
111
157
129
95
113
87
97
87
122
83
123
197
102
117
90
118
124
130
76
161
49
161
102
117
148
140
49
131
128
97
120
194
162
118
154
146
78
102
98
102
74
114
131
127
94
137
132
103
148
125
199
54
120
103
67
131
54
81
133
148
81
110
108
134
112
77
101
153
129
128
79
177
105
127
49
142
143
158
118
138
150
79
110
81
112
122
161
121
104
98
95
135
68
122
128
49
98
168
93
146
160
126
99
118
114
153
142
127
92
83
102
117
157
116
45
165
102
90
154
92
133
54
111
49
88
61
118
59
113
95
95
90
69
113
103
135
114
105
125
95
126
129
161
95
82
108
106
122
134
113
127
168
131
161
151
113
144
69
153
54
93
65
114
149
102
134
74
154
140
110
147
106
127
101
42
116
103
111
81
112
113
93
108
144
106
97
144
106
87
69
67
102
105
129
121
95
128
118
114
126
156
123
102
49
61
103
101
143
95
111
112
102
77
120
121
116
87
118
102
100
103
128
125
153
131
129
54
166
91
102
138
102
142
141
54
110
125
164
128
105
82
112
101
87
140
114
103
49
126
124
107
145
98
140
111
116
123
106
159
153
77
98
73
96
139
121
54
116
112
95
91
125
102
163
131
140
132
122
113
127
117
105
160
113
141
117
135
121
112
103
117
80
133
143
104
98
119
74
140
112
186
115
77
76
161
182
116
139
95
138
54
149
85
54
152
108
125
145
107
105
81
100
70
129
138
93
127
161
148
108
129
76
86
148
87
154
165
154
54
93
102
97
147
118
81
127
88
49
80
59
70
82
95
131
91
102
79
118
145
118
93
149
97
104
170
151
130
144
49
78
89
128
108
130
110
87
106
124
111
105
115
125
157
113
130
125
120
156
103
155
101
144
91
54
95
127
107
98
109
133
59
185
107
94
99
117
85
131
130
123
98
114
107
98
118
107
101
117
59
116
96
76
99
121
106
114
126
106
98
96
54
140
155
199
93
130
103
164
105
105
134
105
91
113
54
87
99
101
113
140
161
134
74
83
149
82
98
180
88
114
93
95
76
116
104
133
91
90
98
76
98
129
86
83
91
103
74
128
80
126
128
104
160
161
125
135
113
122
124
108
148
92
154
141
85
161
85
105
119
106
153
135
68
125
132
97
106
109
114
98
85
98
152
108
134
54
151
108
107
83
105
87
93
131
78
91
130
87
106
139
105
95
118
97
102
146
112
95
91
94
115
135
92
131
133
148
146
97
100
134
95
131
133
102
123
106
79
149
49
83
136
116
105
95
98
128
97
128
83
116
119
117
108
148
108
92
59
102
151
108
76
118
163
78
120
106
116
129
173
110
85
101
128
95
91
132
78
84
146
150
99
133
151
98
135
138
117
54
95
98
106
89
95
131
113
138
61
54
112
150
92
126
131
100
142
102
159
102
129
103
115
98
87
168
171
153
100
83
118
115
122
108
85
140
106
121
123
120
68
81
103
158
105
76
137
110
118
131
87
76
150
129
133
82
108
115
59
84
86
156
103
107
134
137
172
105
124
144
145
133
90
85
132
75
113
101
87
108
82
77
115
113
99
118
104
54
113
103
103
108
130
83
97
92
112
115
138
113
150
124
129
156
114
99
113
148
110
119
161
90
85
138
102
98
133
124
131
74
89
109
182
127
138
125
194
122
54
132
59
112
103
131
107
98
98
90
158
115
180
123
136
113
100
119
108
111
81
107
130
94
96
102
82
93
94
142
151
119
54
106
113
49
85
86
68
109
69
91
68
90
143
158
143
75
95
128
160
106
110
114
91
160
91
168
154
74
123
107
93
108
104
160
108
115
145
85
123
59
149
78
181
107
89
124
147
87
115
125
74
106
85
110
143
108
151
147
108
77
102
54
102
132
93
117
127
114
118
131
95
93
116
103
54
156
142
104
114
155
95
125
99
149
107
105
163
129
114
134
118
137
95
141
149
143
54
81
106
125
101
101
168
125
102
100
49
108
99
139
141
106
109
107
122
136
105
113
132
96
131
131
87
74
159
54
54
147
92
96
92
125
82
102
74
144
191
118
115
146
108
165
148
102
101
87
112
148
129
137
143
98
112
116
108
102
119
140
144
112
189
85
117
113
139
112
98
140
93
111
193
155
83
110
164
80
115
108
118
79
191
143
114
107
118
106
81
158
127
95
89
138
54
139
95
151
128
81
128
127
90
116
89
45
102
143
141
84
77
76
106
87
77
145
188
168
109
98
104
106
110
137
98
140
76
97
126
90
81
169
145
90
104
91
103
108
179
125
95
54
104
110
117
135
115
90
54
137
81
141
78
112
125
87
169
138
140
111
175
179
118
49
137
123
114
54
128
148
80
150
159
95
106
123
137
119
133
142
113
192
95
132
120
113
151
121
132
131
139
135
122
140
98
148
107
108
182
112
109
159
116
122
90
112
67
121
107
131
174
135
133
105
57
138
148
93
123
107
87
95
108
103
145
89
161
109
82
102
139
143
172
158
115
108
138
112
95
123
179
163
90
102
103
95
137
133
74
195
135
150
147
148
54
81
87
181
129
110
139
98
104
54
74
94
165
103
83
100
151
102
127
100
110
144
102
122
125
106
116
92
131
165
158
147
140
74
120
148
78
49
196
110
132
125
54
123
114
165
125
167
77
138
122
104
83
118
97
108
117
160
137
123
127
95
54
87
123
124
82
134
104
137
140
113
102
145
130
136
115
148
54
98
120
95
131
110
128
59
134
109
118
148
108
95
103
105
140
99
73
54
124
125
148
109
137
122
80
91
80
166
149
125
120
105
78
92
115
59
152
87
122
82
136
77
123
243
102
102
153
120
127
74
91
90
103
151
113
54
147
109
115
92
111
83
90
140
114
99
101
69
112
114
134
123
136
148
104
116
104
90
101
87
106
109
110
139
98
134
138
98
113
88
122
129
161
100
74
132
164
149
128
108
137
115
54
108
102
123
124
140
103
145
172
104
154
88
102
165
109
143
132
133
128
126
171
143
95
113
95
124
82
116
84
102
177
111
125
85
103
81
95
98
148
118
158
158
122
110
133
160
108
111
103
104
76
119
131
92
97
81
180
105
158
98
85
49
90
82
127
124
122
76
81
143
119
135
98
146
108
97
165
95
154
158
177
138
143
82
143
139
78
132
54
122
85
109
82
108
105
97
154
156
128
143
156
119
84
54
126
167
103
102
54
117
96
122
137
87
135
76
113
118
105
90
177
77
98
93
132
143
99
124
68
154
159
102
96
104
104
126
139
115
91
92
127
85
54
154
144
77
95
54
107
96
175
54
54
74
81
105
65
126
127
113
54
101
122
107
78
161
92
123
121
138
131
88
133
113
132
106
111
170
108
96
115
97
128
132
142
149
125
77
110
122
143
49
120
158
81
128
102
67
95
160
133
144
124
100
140
110
105
136
144
135
76
179
140
81
115
129
98
102
85
163
131
90
125
124
112
94
113
143
119
171
80
97
130
78
140
104
116
185
150
108
114
188
68
116
93
49
84
103
111
141
89
160
155
151
76
103
112
104
87
77
103
121
131
170
95
152
54
124
103
120
124
129
137
127
99
109
79
116
146
87
120
144
112
140
107
147
144
94
159
105
93
93
135
104
144
103
102
155
99
127
116
101
127
108
83
54
74
128
147
104
95
102
162
99
102
95
141
144
101
118
54
91
156
90
97
114
200
106
54
76
105
128
186
103
106
149
172
76
161
95
111
131
81
134
123
59
102
144
143
116
54
128
103
76
124
120
100
81
81
104
89
90
122
95
144
54
128
181
119
108
135
132
85
119
148
103
117
144
147
105
107
179
95
120
90
98
143
77
159
99
120
87
120
108
119
133
102
171
108
100
89
98
172
145
180
98
111
128
88
162
99
83
74
54
135
61
74
94
112
96
97
140
138
125
96
82
121
54
113
115
123
76
151
117
99
67
115
74
95
74
69
140
80
114
106
134
105
179
108
96
127
129
113
59
67
128
99
108
137
98
105
77
113
139
71
104
103
148
121
128
98
143
54
87
81
97
164
106
142
92
126
120
194
49
95
133
122
81
73
109
100
98
92
118
108
83
108
124
108
142
97
99
134
102
145
102
76
95
54
87
101
148
59
59
177
108
144
122
227
100
96
73
93
110
180
83
129
54
128
90
126
96
77
49
126
133
49
145
96
54
122
104
121
74
131
144
147
96
118
97
90
200
108
105
133
132
108
90
99
109
96
138
78
135
82
145
98
141
140
113
102
123
98
181
117
96
54
147
98
87
127
145
133
121
108
107
113
98
74
147
81
95
78
193
173
108
86
93
87
182
95
148
102
182
98
113
118
95
101
123
105
166
145
112
161
67
91
99
104
87
74
76
95
97
97
174
120
54
148
137
122
148
95
115
98
107
125
181
133
112
112
91
87
113
104
95
80
96
135
95
113
108
156
111
139
97
129
99
87
93
123
125
129
83
128
78
74
101
93
93
106
163
108
165
151
90
106
142
82
90
49
139
95
119
141
102
78
97
128
147
92
103
90
81
179
102
121
90
95
102
91
103
108
120
76
110
132
151
104
128
177
103
123
59
155
138
87
127
102
144
108
120
112
104
117
145
135
106
145
108
165
166
143
102
154
123
76
154
42
118
93
54
95
124
127
54
113
125
125
122
123
74
83
112
95
118
150
103
154
137
129
92
83
68
103
200
132
130
103
170
93
137
86
165
115
105
115
158
146
108
144
151
168
95
49
59
81
89
122
142
115
80
102
105
191
191
118
111
138
95
102
54
158
92
114
107
117
112
122
149
145
105
67
98
140
102
67
105
103
146
200
102
95
59
138
107
143
100
116
105
181
126
141
125
95
124
103
87
148
132
104
127
74
49
105
116
112
144
90
114
161
112
100
128
54
108
151
191
101
169
110
108
104
108
96
67
164
81
140
118
150
91
87
108
104
99
54
49
93
125
89
61
104
135
82
135
122
138
79
92
114
145
103
112
76
168
149
121
135
94
95
127
109
139
186
77
107
134
78
141
133
142
59
110
81
94
116
102
103
130
95
113
140
185
91
151
128
78
102
137
79
54
151
108
139
77
137
125
144
76
86
115
139
117
54
96
121
91
133
139
135
61
54
153
133
98
54
133
116
118
135
135
157
99
113
92
96
81
129
119
158
129
144
148
183
97
81
82
85
126
157
112
110
145
100
158
186
110
180
142
107
95
93
138
173
153
108
125
144
152
108
157
102
77
153
54
95
98
132
136
54
121
112
59
130
128
112
181
76
83
124
118
177
86
234
120
145
117
147
54
109
135
105
77
108
125
103
122
108
74
113
95
160
61
90
108
82
114
104
158
167
102
137
80
128
132
89
129
182
73
172
76
115
180
120
158
106
142
102
113
164
93
76
133
115
121
78
74
149
128
109
117
108
102
110
90
110
95
139
165
81
148
133
137
97
125
82
158
127
180
95
126
132
123
133
212
95
85
73
90
54
135
98
93
79
171
63
105
98
160
81
115
100
90
165
85
159
149
128
73
157
103
115
108
105
95
101
115
188
91
107
90
108
103
116
77
85
101
135
106
130
113
198
120
115
148
110
112
117
156
133
98
155
108
98
106
165
95
133
54
126
141
94
112
168
77
170
78
49
128
133
149
82
79
177
76
76
102
98
94
96
111
127
78
59
132
124
108
124
102
97
81
74
112
76
112
105
134
63
74
87
108
92
114
78
113
72
186
81
139
192
54
162
160
115
114
113
81
77
94
107
105
101
87
186
108
149
104
124
97
81
125
120
121
81
105
112
77
105
141
74
83
90
103
120
106
74
129
110
133
88
131
124
139
119
112
108
59
81
141
97
93
142
108
129
102
69
95
76
108
81
120
83
104
59
179
103
98
154
98
177
146
180
135
90
125
148
77
126
110
127
140
108
135
102
95
143
135
115
170
59
102
115
108
145
113
69
100
54
81
97
95
122
163
114
165
112
154
75
180
106
118
96
103
124
54
107
163
117
98
160
146
140
156
102
125
108
138
49
112
68
86
158
74
130
92
98
161
108
91
118
128
143
95
126
125
92
122
194
94
127
82
141
96
83
65
100
165
78
119
77
129
157
113
80
82
103
142
113
132
95
103
97
166
96
123
114
120
160
128
62
99
91
54
138
157
144
159
175
147
148
141
120
129
126
140
129
67
67
178
123
117
137
137
86
118
127
94
118
88
148
131
118
81
106
118
78
150
152
104
104
123
133
77
194
106
78
103
167
117
49
54
131
105
110
149
155
212
139
156
144
102
143
89
81
129
122
142
139
125
178
144
61
54
54
98
104
105
54
180
91
71
121
78
107
187
123
163
54
146
126
125
150
145
109
115
129
76
96
97
156
125
106
104
128
116
160
120
120
125
144
59
54
145
133
160
93
98
129
97
110
118
54
108
180
134
101
78
42
74
124
95
135
96
118
95
157
113
146
123
99
165
144
94
102
153
116
81
108
146
100
81
108
104
112
122
129
148
78
81
130
127
110
135
121
54
125
124
133
127
149
109
119
129
121
107
126
144
110
135
95
87
98
108
68
102
98
144
83
97
137
127
88
116
103
93
131
120
107
101
134
103
112
129
103
91
126
54
142
113
77
88
85
76
116
97
116
116
70
98
85
146
137
54
88
98
159
102
114
158
68
128
120
77
128
103
141
170
154
95
120
89
146
112
54
61
111
102
107
113
113
78
129
89
82
167
102
103
74
108
122
105
117
116
98
172
103
128
91
136
157
126
49
131
142
119
89
96
81
139
105
89
102
146
123
78
118
133
121
124
154
117
145
142
103
81
169
75
90
152
137
133
115
70
54
148
102
102
144
54
54
82
161
85
95
122
133
128
119
42
112
74
88
151
116
172
172
110
105
164
107
103
115
98
59
116
80
81
74
149
102
162
114
79
91
169
54
110
141
111
138
98
90
111
54
100
145
76
90
123
126
99
114
147
196
95
77
54
101
118
112
134
111
54
83
92
139
83
169
128
144
95
140
116
124
128
91
159
81
163
54
163
122
100
175
102
108
100
106
128
115
107
81
54
108
123
108
148
98
93
144
74
129
100
131
98
105
120
144
141
101
87
116
98
148
113
135
200
73
121
102
113
105
125
177
112
130
101
96
114
131
165
105
105
103
116
119
160
54
65
123
128
90
86
95
102
76
49
102
119
132
103
129
120
135
90
117
108
91
100
128
133
118
151
124
124
118
120
129
129
148
59
85
135
103
87
146
138
127
112
118
54
103
132
97
120
135
76
98
100
130
126
54
113
124
105
97
128
167
89
141
93
93
71
126
99
160
97
97
124
206
83
80
80
102
110
84
128
115
139
110
141
88
54
139
158
54
125
161
132
98
90
157
108
160
84
108
123
54
104
156
74
139
59
83
103
90
114
54
117
114
98
59
128
108
129
158
54
131
95
109
102
94
145
113
160
103
108
95
133
93
158
153
93
144
93
96
102
119
146
103
155
103
169
121
107
113
147
106
125
95
103
104
69
193
124
165
125
113
101
93
119
82
98
169
120
135
153
113
88
91
83
115
112
127
159
83
166
95
69
129
103
82
124
149
125
117
125
135
143
113
92
95
154
98
90
76
171
154
168
98
90
78
88
82
156
133
120
115
136
86
102
67
133
95
124
81
94
93
107
120
100
102
98
128
121
156
141
101
103
125
135
148
116
122
137
95
102
81
140
133
120
153
125
124
54
122
106
147
108
121
62
136
124
132
90
123
83
85
106
172
54
87
93
146
105
87
59
104
67
113
74
74
78
54
128
134
106
81
109
194
106
123
111
81
74
119
96
95
161
98
139
137
119
78
120
101
154
103
111
54
95
177
128
90
91
97
129
120
85
118
104
145
138
108
128
130
127
84
82
128
199
125
133
147
138
98
119
129
104
161
106
105
125
138
83
93
113
123
96
82
54
128
67
102
155
155
126
124
142
130
84
81
124
97
114
96
76
115
106
143
97
99
122
114
114
130
81
126
95
125
100
152
134
103
128
149
154
140
123
82
144
81
148
147
158
147
113
134
77
67
117
95
101
111
74
54
125
148
68
85
113
153
153
133
137
175
118
135
135
128
128
104
114
82
140
140
106
49
95
144
132
87
94
74
152
105
168
144
154
150
131
138
76
164
123
113
143
158
126
140
120
125
115
108
163
143
191
101
97
156
112
114
122
108
133
193
131
76
98
102
113
76
163
123
82
104
133
129
114
110
87
146
129
157
108
200
104
107
84
96
131
114
121
104
179
128
81
125
186
101
96
225
98
130
102
126
96
135
207
169
131
135
100
131
110
131
149
49
158
132
80
93
89
111
77
49
104
148
87
90
112
125
159
82
149
125
105
95
129
156
139
157
110
114
156
119
72
112
108
127
109
54
146
108
139
131
107
160
95
79
123
93
179
81
117
102
141
145
150
105
148
119
105
74
153
68
99
115
129
68
131
54
110
49
149
84
114
122
131
127
118
124
108
135
67
96
118
54
169
149
93
161
120
116
90
109
106
128
90
126
79
158
54
151
77
70
110
125
61
158
141
157
59
89
135
142
116
156
124
146
113
85
80
133
134
81
91
77
125
153
135
128
129
103
116
125
150
115
102
82
176
134
200
82
95
128
167
102
153
165
85
113
83
104
104
154
91
54
122
123
133
127
149
123
136
120
84
150
98
105
141
107
74
115
97
144
108
112
133
107
98
100
100
155
93
145
115
160
105
97
105
61
76
131
136
105
129
90
116
120
156
157
114
158
49
198
107
157
123
120
110
151
108
143
142
135
116
77
92
88
91
84
106
49
77
136
67
149
92
132
76
74
100
133
161
102
123
139
128
54
119
65
113
129
107
113
54
95
127
74
103
85
49
142
148
105
108
98
163
90
96
113
96
81
93
126
137
54
152
126
131
107
137
110
101
86
54
125
111
156
139
146
161
164
163
117
91
128
108
124
103
67
103
143
65
143
114
83
59
119
97
90
95
129
133
93
87
86
108
126
102
115
116
145
178
124
113
113
102
137
138
148
121
74
143
120
139
118
112
108
138
102
77
100
67
126
141
61
115
90
140
138
82
100
115
54
100
73
118
160
144
102
135
95
135
172
108
105
49
76
168
81
102
97
49
143
125
125
146
87
154
81
125
104
149
87
101
69
95
74
139
118
129
133
92
150
115
149
83
106
128
83
130
88
109
80
114
103
82
131
115
97
73
177
135
141
107
59
107
108
140
85
80
77
136
78
142
113
150
108
124
84
115
128
85
157
80
138
113
173
136
129
135
124
125
174
149
121
110
116
93
142
135
102
96
119
151
87
125
96
74
131
69
111
140
109
102
98
152
141
81
105
93
165
135
104
99
104
133
144
107
78
144
128
110
95
108
54
154
107
87
160
102
123
87
135
110
81
102
157
103
153
168
104
157
144
108
149
112
155
142
97
98
109
125
133
143
148
131
112
120
110
127
145
93
84
137
95
97
146
49
123
180
172
54
59
95
149
106
143
131
126
98
140
140
116
81
128
147
108
54
83
141
110
94
105
148
148
93
70
112
111
88
105
100
87
105
97
108
123
83
159
115
128
102
54
116
116
56
54
129
103
132
135
108
94
117
100
93
125
72
110
98
108
75
101
153
131
93
90
129
167
107
147
84
143
129
91
95
79
86
144
102
54
92
117
135
102
87
107
88
133
100
107
128
178
105
111
161
128
127
85
100
85
170
154
87
102
76
103
54
124
93
92
155
67
116
144
61
112
132
54
112
97
76
95
87
102
98
54
54
135
59
110
135
81
133
54
105
124
122
95
127
103
150
120
95
54
138
79
124
108
108
102
119
137
76
144
171
110
138
87
108
134
166
123
141
108
97
102
78
96
136
135
111
95
129
138
121
153
112
135
113
148
94
95
54
116
138
156
108
122
79
94
124
49
108
74
115
81
110
78
98
109
133
117
108
81
158
115
80
102
130
98
149
102
144
102
107
93
166
111
144
57
92
61
84
138
130
109
108
108
114
102
148
152
137
92
103
79
122
118
97
93
77
148
126
177
139
127
79
102
88
177
128
108
147
78
105
108
101
108
164
142
54
102
108
134
76
156
102
49
108
122
133
127
121
147
54
122
81
131
133
179
89
100
90
54
157
83
93
112
121
182
59
191
107
131
133
105
143
113
104
165
106
128
89
149
99
108
103
77
148
107
133
113
112
137
146
191
133
153
77
86
98
114
128
103
115
62
113
87
135
106
122
95
116
125
86
78
107
118
113
115
76
68
78
54
103
112
165
90
112
95
76
84
142
133
146
101
90
155
122
138
118
109
95
117
125
129
133
149
67
141
130
108
87
108
100
112
154
117
154
123
177
138
125
112
136
106
148
98
133
81
74
158
109
138
119
139
108
150
126
54
97
84
95
107
95
123
111
59
153
117
54
102
158
113
125
140
165
145
95
102
150
70
92
148
115
125
167
119
104
95
54
184
81
82
111
133
148
59
125
89
110
125
120
102
115
107
139
105
97
123
103
166
102
162
146
59
155
127
147
112
178
93
96
137
106
111
102
137
98
143
161
117
125
123
113
130
194
117
135
185
106
108
138
96
49
108
101
108
69
81
158
82
144
125
85
99
103
83
141
165
98
102
134
100
131
54
137
136
123
119
144
94
101
177
125
61
54
102
94
105
111
133
123
103
68
96
115
105
87
144
112
98
69
84
113
127
59
120
113
110
127
107
144
54
129
111
82
108
100
167
119
59
118
135
103
54
95
101
146
161
115
81
86
81
134
113
87
98
141
126
78
101
200
133
145
127
123
132
234
149
125
143
128
151
108
107
82
152
142
180
95
97
122
101
54
121
106
112
101
96
97
117
95
97
190
141
94
113
127
130
54
105
135
89
54
106
90
82
95
140
88
82
146
101
107
110
155
87
136
131
141
76
125
78
169
77
61
122
111
110
98
217
120
128
114
116
132
87
128
120
61
120
110
119
54
128
162
83
61
59
119
91
54
105
97
122
157
168
140
140
54
96
167
145
145
124
111
77
159
105
95
123
125
125
93
80
135
154
102
104
103
106
82
92
108
101
103
102
98
141
144
77
135
95
76
93
61
102
128
121
102
87
106
108
101
103
90
102
138
96
94
130
124
131
90
98
134
99
117
149
114
95
104
54
74
95
74
131
123
98
129
128
128
54
122
158
95
54
93
133
54
81
123
114
97
102
102
123
95
146
92
142
136
110
90
109
107
113
133
98
149
134
127
117
84
76
76
133
127
135
127
128
105
95
134
134
54
148
200
126
153
102
154
84
49
98
185
108
81
112
87
129
74
138
54
125
165
81
103
75
100
129
96
120
54
125
106
113
114
95
93
125
105
125
113
140
100
119
88
120
95
139
81
128
132
100
98
102
110
98
129
125
100
79
113
103
98
129
138
129
95
139
98
49
115
147
149
118
94
125
167
113
140
150
49
76
76
99
177
169
82
148
95
108
142
131
78
138
93
74
54
115
143
81
122
128
100
163
123
104
151
130
130
93
103
102
125
114
132
74
96
98
131
144
106
154
146
109
162
173
147
127
104
103
207
85
99
140
63
144
125
98
120
123
149
78
112
82
87
107
151
81
122
127
125
77
123
113
92
93
160
108
140
141
116
154
156
194
112
141
81
133
95
142
106
144
108
54
106
102
117
69
145
121
115
95
98
132
102
110
102
111
107
54
98
81
132
146
59
95
143
85
98
91
122
54
123
89
54
144
115
121
94
122
89
131
81
125
129
167
124
144
128
76
109
102
129
125
61
102
133
111
136
83
129
107
133
108
112
88
71
101
156
110
80
99
81
94
54
119
125
113
96
162
113
146
144
81
148
125
133
117
133
144
99
126
96
82
96
113
145
107
108
129
127
109
155
104
113
169
76
83
103
161
95
89
113
120
49
91
82
135
54
98
98
108
170
74
81
118
84
148
133
95
112
132
149
161
76
129
135
138
144
103
182
123
132
169
110
124
125
49
115
120
161
123
89
102
125
144
96
102
103
94
98
104
114
160
102
98
59
138
104
179
102
76
76
89
145
105
118
86
167
96
108
124
95
105
97
172
190
158
90
147
141
140
120
104
159
122
93
143
123
112
81
143
68
179
126
140
97
127
78
165
96
103
148
163
106
103
81
137
75
129
106
104
97
113
145
94
79
59
106
95
138
161
113
93
191
101
126
82
85
85
108
87
187
91
149
149
116
98
139
77
111
112
123
94
140
128
114
149
96
115
108
78
67
131
106
129
88
102
145
135
102
49
115
118
54
110
87
161
78
124
115
137
121
131
168
198
187
105
125
143
98
130
175
95
104
95
160
68
151
89
103
137
92
96
68
106
95
166
115
113
142
155
103
133
82
74
115
131
93
83
149
99
81
92
98
115
145
151
135
103
101
99
106
136
87
108
85
96
77
96
120
79
115
96
82
125
130
59
136
102
190
127
95
81
108
132
102
81
94
161
94
127
135
102
155
98
49
122
170
147
131
131
105
103
105
81
129
81
165
89
67
49
133
146
131
148
161
77
98
49
107
157
80
126
98
114
85
68
147
146
98
102
80
123
140
140
111
125
158
135
91
151
103
104
145
128
80
143
102
129
104
141
143
108
113
128
107
137
105
54
112
130
102
146
158
135
102
120
110
91
81
85
127
54
116
182
147
108
149
83
144
49
87
81
133
147
118
77
76
115
105
105
104
168
95
143
134
134
149
98
156
54
149
132
129
125
73
186
166
105
147
121
97
139
95
180
116
103
124
106
95
95
137
84
54
107
168
159
151
141
156
98
59
65
123
105
162
108
177
135
145
131
129
54
82
95
133
91
135
125
127
99
102
191
129
120
108
130
113
121
122
145
140
195
93
116
143
49
120
83
96
122
135
81
78
98
123
145
141
137
74
148
79
108
110
177
104
129
107
121
108
88
113
128
124
134
105
124
104
74
95
123
213
110
104
139
54
185
122
114
95
157
113
125
132
119
68
108
145
78
168
128
120
54
42
103
54
164
99
94
78
143
78
199
97
138
83
128
54
148
155
99
125
91
131
102
108
112
68
105
87
145
143
102
87
96
121
140
191
148
104
78
175
136
148
124
98
112
78
122
110
204
119
95
110
172
78
103
82
127
158
132
129
168
83
102
125
83
96
105
134
103
87
128
157
91
96
112
93
54
159
103
113
158
110
113
147
82
70
133
84
108
103
102
126
139
109
83
150
87
107
112
130
103
148
177
119
54
154
120
95
148
103
91
95
154
145
102
161
102
131
143
98
108
80
156
107
108
99
104
94
138
138
143
93
84
77
80
91
134
110
85
140
121
54
125
127
146
90
159
95
83
118
158
109
142
111
119
76
177
108
105
108
186
132
141
111
67
134
114
154
146
138
97
105
76
139
99
125
68
131
67
105
190
90
129
108
92
148
92
112
99
128
59
114
180
82
110
131
87
98
193
49
95
180
123
108
119
102
217
125
101
104
109
120
143
125
54
161
108
115
86
80
100
146
107
116
132
106
127
94
102
139
113
148
156
141
132
78
133
83
99
127
142
138
181
99
186
59
107
144
108
161
130
102
98
108
125
101
101
139
108
106
115
88
95
81
106
146
54
164
143
108
68
92
172
93
94
88
105
113
177
140
125
112
112
170
49
103
148
65
163
128
180
95
125
133
105
115
54
141
139
102
54
115
104
159
96
130
93
144
104
102
156
90
77
73
102
130
128
156
130
172
165
90
133
143
105
155
129
98
96
103
119
119
127
81
82
131
111
87
150
220
127
147
85
125
95
77
165
83
120
61
89
129
194
93
95
100
109
93
94
92
127
107
108
135
102
151
90
167
98
103
148
90
76
156
95
91
130
87
86
97
156
124
102
133
119
86
97
145
84
102
165
140
98
82
165
102
127
115
103
177
87
146
131
91
95
169
134
102
74
146
61
143
130
163
107
113
108
118
130
106
54
93
49
95
81
120
113
135
79
142
111
74
160
146
101
108
112
150
150
87
102
138
134
95
148
133
74
133
155
105
161
138
142
137
104
92
200
134
147
120
102
98
102
106
112
163
83
106
68
149
138
98
139
78
147
158
128
104
139
85
159
98
103
125
96
83
180
83
113
156
155
119
142
108
102
90
177
126
143
106
88
125
98
67
147
102
147
129
129
113
54
123
101
87
95
81
112
149
122
140
155
119
95
98
128
147
101
81
88
49
95
135
95
96
131
144
76
85
83
120
75
122
98
101
96
59
76
94
103
135
98
107
125
87
78
100
76
133
80
147
138
105
91
107
108
106
113
95
98
54
135
133
112
127
194
77
96
104
120
90
123
135
129
121
138
95
103
83
119
113
98
127
135
109
79
116
100
158
77
98
140
148
103
90
150
111
107
95
105
120
67
119
103
102
108
155
181
148
165
111
89
77
109
101
156
122
172
49
90
123
128
116
165
93
49
67
93
140
138
54
49
159
143
142
117
95
161
85
102
108
138
69
104
99
108
125
97
111
106
139
149
173
124
127
179
158
49
105
158
107
133
95
87
131
140
104
102
132
173
150
123
94
134
108
167
103
144
106
140
124
122
136
119
156
123
112
54
112
95
82
133
49
171
102
82
67
135
74
98
54
138
139
143
133
120
49
125
106
169
110
112
61
179
124
121
54
133
165
77
140
133
148
177
132
79
102
127
108
114
149
146
98
54
117
113
121
154
117
107
102
83
127
128
106
124
81
115
81
113
107
125
89
182
127
111
130
163
105
77
117
96
126
113
109
54
128
147
114
134
127
119
165
150
77
134
144
141
128
104
79
146
127
140
136
95
123
123
139
152
112
79
148
88
148
59
156
115
133
100
91
147
103
132
129
172
137
106
170
95
102
144
89
120
108
90
122
122
108
163
54
89
121
112
200
95
131
145
167
104
122
122
116
97
113
102
118
125
101
99
95
110
117
136
134
100
111
102
106
117
196
106
95
105
93
120
160
116
115
98
123
78
154
118
180
157
102
130
114
89
49
153
129
135
91
167
116
98
68
98
212
131
108
93
134
120
94
140
110
125
147
146
87
59
61
148
54
116
69
108
145
148
124
128
148
118
145
92
57
82
99
95
160
78
148
150
54
68
137
108
95
74
54
152
85
91
45
153
82
125
129
102
96
90
108
142
123
95
103
102
93
151
127
118
49
157
122
95
180
154
82
112
127
137
147
123
83
143
109
94
114
76
54
127
149
130
130
111
172
90
108
93
83
49
102
152
169
141
54
54
97
113
108
113
114
113
95
59
112
107
106
69
95
142
54
102
105
142
137
124
54
108
144
112
192
114
96
74
96
135
173
125
110
85
109
54
117
160
158
125
122
73
145
112
130
165
94
54
76
115
105
108
153
118
109
113
49
54
93
132
67
76
130
97
78
163
114
100
59
135
177
107
145
128
151
129
114
79
164
172
113
129
125
143
166
129
165
68
133
123
113
87
119
108
113
137
165
114
195
90
131
81
93
142
125
99
89
105
83
82
134
110
125
106
109
103
67
125
155
102
54
130
131
90
143
132
148
104
142
79
59
97
68
81
160
143
178
109
124
122
59
91
61
107
146
81
80
123
103
148
126
117
83
136
49
125
161
123
93
93
177
125
77
147
122
102
135
104
131
167
91
105
122
97
102
98
62
122
96
206
116
98
68
54
146
140
83
121
59
145
125
59
152
146
189
131
75
156
81
100
121
167
108
102
154
169
127
121
142
97
135
119
99
131
74
108
77
74
143
83
77
68
132
153
152
103
105
117
110
102
131
102
111
98
128
108
125
108
108
49
123
93
95
90
97
153
84
127
113
123
133
135
76
97
82
144
74
158
91
49
54
102
59
57
77
134
77
97
135
150
95
149
128
118
95
131
157
150
140
54
74
129
116
95
155
92
93
95
129
90
82
135
128
98
125
122
92
83
119
77
93
127
108
72
146
102
152
137
118
83
177
54
103
98
104
149
54
149
93
102
155
95
113
150
124
165
102
112
120
93
126
106
98
80
155
83
85
98
128
111
193
115
102
122
131
74
151
67
102
86
105
130
135
80
115
133
120
96
82
115
94
117
81
103
98
90
59
112
98
101
49
101
128
95
181
116
119
103
156
111
100
124
102
128
99
144
87
101
105
174
103
87
128
89
122
112
135
177
124
82
120
105
127
101
146
108
74
105
119
108
202
95
108
67
103
110
76
161
137
79
95
152
76
102
121
116
128
158
127
108
140
128
129
164
81
119
128
83
118
103
105
76
54
87
113
143
120
132
115
87
164
76
111
130
125
90
106
87
84
100
135
98
100
132
121
98
85
117
67
107
104
133
159
132
122
54
86
115
101
120
129
103
45
133
144
110
113
158
111
101
121
112
108
145
108
87
144
110
102
163
101
76
148
95
68
49
124
98
110
145
108
132
107
145
113
103
160
124
168
95
98
129
102
93
157
136
111
119
82
95
146
126
146
107
134
203
154
110
119
138
112
128
97
110
122
135
120
120
49
116
133
113
130
107
167
127
106
92
87
123
109
59
108
49
59
128
93
85
102
118
132
137
98
42
163
157
104
81
145
114
111
124
101
163
108
116
131
147
125
61
92
98
130
128
114
98
96
136
76
104
96
78
108
160
96
141
111
122
173
125
87
133
177
135
74
98
129
59
117
126
118
169
135
81
109
108
145
108
108
125
106
106
186
148
83
98
126
98
108
146
124
159
119
78
116
160
92
59
76
171
135
113
147
98
78
102
87
133
128
96
103
128
105
149
93
87
177
90
135
89
91
95
171
83
147
130
94
74
98
93
83
128
54
102
125
118
93
141
57
108
135
132
191
149
234
148
49
149
127
123
49
150
74
130
98
93
148
134
125
78
143
101
95
104
98
122
54
115
137
98
115
92
133
94
125
108
129
80
118
140
84
49
107
101
108
97
54
81
119
74
158
79
118
125
54
81
103
146
100
86
124
135
77
199
133
78
102
103
108
93
95
103
177
85
95
84
105
115
77
67
125
104
135
131
113
111
139
102
78
108
99
162
111
97
113
87
121
112
142
146
59
126
115
83
121
95
125
135
143
135
129
146
69
117
161
111
139
148
54
105
107
104
146
138
103
95
89
147
108
169
130
103
131
131
153
76
116
82
90
95
113
139
129
115
140
138
135
167
96
128
107
108
116
100
119
124
121
120
108
150
96
163
146
118
77
129
102
94
108
114
118
124
109
83
137
82
198
168
49
148
85
173
120
130
115
102
128
105
129
130
139
102
133
95
101
151
59
102
81
106
95
225
72
120
122
119
125
152
125
49
108
112
89
133
95
96
85
135
77
140
129
77
145
120
118
123
90
81
105
137
115
169
117
86
108
135
147
68
150
104
85
94
103
108
102
95
76
90
149
169
113
98
167
132
170
77
124
149
176
128
147
128
134
67
133
87
149
131
124
118
69
96
119
65
102
133
103
102
137
98
123
67
104
143
101
98
96
94
98
140
124
112
139
95
136
112
107
151
166
128
121
135
133
107
117
69
125
143
119
154
49
76
110
82
130
97
109
135
113
144
125
128
100
128
103
141
105
150
108
113
129
119
78
131
101
91
148
122
146
110
157
112
199
107
109
120
139
134
76
113
77
165
69
158
108
160
162
113
45
130
129
95
133
102
136
83
98
125
110
105
165
131
118
81
106
54
121
118
115
126
152
49
54
127
101
92
77
124
98
127
87
78
103
102
130
151
135
123
131
112
103
97
108
122
127
105
90
140
103
103
116
102
168
88
108
145
125
159
100
103
108
73
126
87
49
140
90
134
117
119
151
160
116
93
139
81
177
90
127
149
149
118
101
116
102
145
118
133
102
69
81
93
125
115
91
102
156
95
148
111
91
144
77
143
145
139
165
117
76
132
95
59
95
103
54
74
126
97
85
106
115
102
49
115
121
101
162
107
140
54
115
108
168
100
107
133
100
145
98
133
105
132
130
102
126
117
87
135
128
138
128
113
73
81
130
95
87
95
108
49
147
108
113
98
105
54
59
113
87
166
191
77
100
123
146
145
140
95
103
157
99
81
91
117
98
108
69
141
54
174
122
126
130
113
98
127
145
144
98
164
143
59
129
98
137
123
113
149
112
129
129
131
129
54
74
111
59
98
59
112
104
98
102
119
140
179
151
108
108
131
105
125
93
113
195
106
97
123
68
102
163
118
131
75
99
115
144
95
131
148
129
163
126
129
128
173
117
81
74
59
132
127
81
80
100
49
128
89
133
148
126
198
134
105
104
87
131
102
150
122
83
67
106
108
130
146
141
127
125
87
141
131
98
139
116
138
200
98
135
161
146
91
153
132
67
148
76
154
104
126
103
133
54
110
122
49
148
129
180
85
155
102
144
130
97
149
103
159
75
150
146
54
125
129
54
127
145
101
49
133
102
98
99
124
102
99
63
101
107
157
54
96
142
87
198
155
92
148
102
173
133
95
104
137
155
117
93
105
95
127
107
122
147
118
102
131
81
81
133
105
108
105
90
111
163
138
87
130
104
93
103
96
145
148
131
124
160
147
146
111
105
112
102
104
105
59
125
130
104
117
110
130
96
98
102
78
95
125
97
102
139
59
95
119
130
74
123
156
164
59
77
104
161
78
100
108
93
94
102
108
140
82
71
102
139
102
69
95
94
128
110
119
131
121
49
139
157
133
90
112
179
108
88
90
142
79
110
93
111
125
150
132
86
97
54
76
148
146
87
112
160
109
147
105
120
112
183
106
96
114
118
123
150
107
110
115
125
90
116
125
90
120
125
74
134
98
98
108
117
137
140
128
61
119
102
76
115
100
100
134
131
103
91
96
125
127
89
115
173
111
100
147
54
101
125
115
135
113
107
205
102
193
138
157
129
112
148
124
78
103
144
108
138
152
169
152
139
111
111
148
97
96
118
118
59
97
147
158
135
112
149
117
114
163
106
103
105
90
95
87
119
140
98
145
61
59
172
120
95
77
141
76
87
61
98
112
116
107
80
92
116
98
102
74
135
147
125
89
145
165
108
107
148
117
119
118
111
131
119
108
137
144
129
177
86
108
137
101
84
139
103
122
84
133
194
108
108
135
125
81
124
123
69
172
130
148
140
113
59
77
54
67
98
102
87
133
102
170
83
124
90
54
155
143
94
146
115
190
174
155
129
147
157
98
171
133
142
120
108
130
106
143
106
112
95
109
146
129
129
85
125
131
112
114
98
107
87
93
129
73
155
149
84
99
125
83
102
98
97
140
161
102
125
102
111
118
139
77
69
151
49
90
111
109
120
194
102
94
99
78
115
128
87
96
133
82
94
129
175
122
83
99
59
108
136
157
160
112
90
85
103
118
161
144
119
172
84
132
108
102
77
102
76
61
121
100
87
138
113
105
110
120
145
93
54
141
150
108
143
115
126
98
102
133
131
123
107
90
118
82
127
98
132
98
114
113
54
116
143
105
129
157
161
118
95
123
87
153
110
102
122
108
108
177
151
139
113
126
130
133
83
146
118
111
123
95
49
143
109
83
95
117
104
106
85
90
95
118
134
148
149
59
49
96
126
74
147
125
108
123
111
111
167
128
135
147
108
54
139
103
140
86
116
145
59
72
98
108
86
149
132
70
99
120
96
134
179
124
140
80
132
54
98
115
107
102
180
93
81
80
128
92
68
59
97
107
101
134
61
116
138
122
101
154
165
95
98
77
139
167
109
131
105
126
145
118
133
113
103
89
95
127
80
132
83
139
154
134
165
113
49
162
133
108
119
81
125
113
101
85
116
134
112
80
108
81
169
102
82
79
111
153
126
141
93
108
196
67
78
118
105
111
93
128
167
163
66
75
54
102
129
139
83
125
165
145
116
108
68
68
102
146
114
202
96
122
73
103
128
158
143
82
165
80
133
73
147
95
163
157
122
69
141
118
137
114
109
127
113
98
95
102
82
80
74
126
146
86
100
81
179
106
204
98
90
145
169
105
54
97
102
170
132
98
82
90
126
186
67
114
85
121
165
54
153
79
98
127
143
78
156
146
135
59
77
163
144
98
92
103
122
177
130
112
103
116
115
91
147
131
101
127
61
93
114
59
177
172
134
116
116
134
125
122
102
96
120
140
130
125
91
140
146
134
82
148
137
121
116
90
95
125
110
125
102
97
107
54
111
95
99
102
109
172
141
116
103
87
69
98
85
81
129
86
159
159
77
113
99
120
113
120
148
54
90
76
130
95
109
105
102
102
108
189
102
110
134
49
139
126
83
139
98
125
95
164
154
95
104
158
156
83
69
54
110
147
96
118
105
101
105
49
113
97
89
142
121
140
145
94
82
161
129
103
138
105
113
127
188
123
181
125
113
54
126
108
138
177
144
118
112
97
135
113
110
99
119
140
82
85
118
152
110
106
114
108
54
101
94
112
101
61
88
94
167
165
131
179
140
114
128
111
87
95
87
122
135
134
153
135
125
135
141
49
77
131
109
127
128
107
132
127
106
113
85
84
104
61
91
150
89
94
49
54
123
123
128
76
155
54
107
105
127
147
118
85
117
138
158
115
82
139
54
82
110
104
91
129
100
74
77
158
133
122
54
130
118
146
158
116
139
111
162
77
107
77
102
130
108
101
131
113
127
81
117
105
174
97
54
77
103
54
113
131
94
91
127
108
112
103
182
74
102
124
74
127
146
98
111
67
111
171
130
69
81
108
128
113
146
87
120
82
139
115
128
54
136
113
177
149
95
49
77
131
95
161
54
103
101
165
59
175
152
103
108
98
98
59
160
103
82
128
106
108
99
89
54
91
104
65
129
146
168
74
122
54
99
139
179
91
54
81
81
115
133
83
148
91
68
147
124
115
101
134
117
149
147
154
114
109
82
112
124
107
101
95
107
128
54
96
54
94
111
120
114
96
116
101
108
101
78
116
134
101
87
124
123
102
120
107
54
68
103
144
170
118
189
67
102
103
85
145
96
116
98
77
160
148
117
102
76
107
140
152
108
113
98
127
165
79
140
150
142
106
116
108
103
77
74
133
147
93
98
163
108
90
99
54
112
118
95
96
108
122
77
110
143
160
106
95
108
110
94
87
129
107
81
135
139
113
91
98
109
133
187
103
154
108
138
123
155
112
54
154
76
158
146
103
76
111
118
59
107
108
149
127
127
136
143
93
124
130
144
112
83
144
125
151
153
108
110
95
104
102
120
149
76
114
114
140
135
165
149
104
112
113
118
123
99
102
178
83
54
105
234
85
96
111
117
95
108
108
148
93
172
108
118
98
105
114
120
139
176
108
127
105
94
116
74
135
135
74
108
127
93
54
68
129
89
54
100
124
79
103
135
125
126
100
115
93
102
126
130
54
164
142
71
90
125
114
65
123
59
124
140
139
133
104
49
125
102
95
169
99
78
110
96
135
62
97
154
125
125
108
152
63
134
113
155
54
108
106
145
54
132
187
135
218
101
152
91
117
84
131
135
77
105
145
129
142
117
110
123
87
115
124
157
59
120
138
95
134
144
115
49
121
128
110
96
158
97
125
145
145
100
81
115
107
133
127
149
87
121
141
128
76
182
140
105
129
117
211
101
81
128
144
92
106
159
117
118
94
121
94
76
102
93
138
81
119
92
112
120
103
116
135
114
135
157
107
127
115
144
144
123
110
126
102
169
163
105
119
120
172
105
105
123
110
146
133
125
98
129
102
128
54
78
152
95
87
54
172
105
115
130
100
148
54
140
96
138
97
142
99
89
108
98
120
119
160
116
115
124
49
67
108
131
109
95
114
115
111
127
101
129
120
128
94
113
77
97
83
109
118
109
123
151
151
129
91
118
54
91
105
105
225
97
83
148
107
106
103
133
99
101
151
54
162
49
85
108
105
120
98
105
134
128
93
100
98
77
82
150
148
98
101
120
92
85
113
61
98
123
91
146
102
113
54
112
86
107
127
136
105
106
54
183
132
128
107
127
128
129
140
155
137
114
113
165
90
105
54
117
131
194
92
131
125
119
147
144
148
115
97
172
81
128
49
102
100
132
59
97
61
86
157
80
81
141
111
49
121
94
119
117
177
129
98
94
90
92
126
116
86
49
116
92
142
108
116
125
98
135
95
128
122
180
125
148
102
177
80
115
107
148
96
86
128
115
165
134
142
76
54
112
229
78
100
49
107
115
102
110
91
116
127
130
125
131
150
84
119
105
130
126
97
128
152
116
128
175
79
133
126
114
59
107
103
96
105
147
78
83
120
156
72
83
76
106
132
123
136
106
83
127
61
67
68
124
139
142
54
107
49
118
123
129
84
112
91
165
115
145
150
90
129
125
77
188
119
157
107
92
139
141
102
123
102
146
98
112
122
101
144
122
143
137
113
99
126
111
93
108
77
141
131
98
95
126
134
69
124
111
105
143
77
59
122
135
161
77
59
104
131
149
103
74
182
135
106
61
114
54
161
108
113
144
130
98
147
96
116
101
145
116
90
138
102
85
124
77
147
84
148
105
135
138
131
102
96
146
141
152
107
113
76
121
127
143
202
132
112
113
122
110
97
138
103
98
96
95
131
112
105
138
111
94
110
129
54
112
125
89
146
69
110
152
161
80
107
74
102
143
103
106
104
103
54
85
82
130
103
74
98
193
154
84
119
80
92
65
101
98
113
95
160
98
68
54
124
97
149
102
95
110
90
97
134
139
116
54
95
163
186
151
128
144
67
144
152
93
102
93
95
118
92
95
127
100
61
108
116
123
125
152
151
54
54
143
83
54
82
79
68
88
110
140
98
65
67
68
112
113
141
125
148
179
128
97
102
102
103
76
79
104
54
105
172
117
125
105
160
109
102
95
103
128
131
54
88
128
111
54
123
100
73
54
118
102
95
154
160
125
167
61
54
113
97
111
90
112
113
163
103
126
54
97
151
113
103
69
129
78
138
90
96
105
81
92
69
49
104
165
74
128
54
131
145
100
54
182
96
129
141
74
122
108
119
147
103
145
133
148
101
109
148
69
108
180
88
78
105
131
149
121
133
128
113
126
81
98
135
114
113
102
124
132
180
93
125
83
67
128
112
136
145
95
81
76
157
129
77
54
109
149
131
79
178
129
128
76
116
130
170
94
74
54
87
89
49
126
117
148
134
126
108
121
108
168
102
105
145
155
129
105
54
139
79
128
105
136
143
148
77
80
125
117
138
91
129
124
105
95
74
128
120
166
110
133
106
124
194
157
156
169
102
206
122
93
85
54
102
158
95
49
119
90
177
140
54
115
107
76
54
139
81
149
87
124
93
127
128
101
76
114
112
126
184
112
112
102
79
140
141
144
93
54
49
54
128
69
150
91
148
127
73
54
125
146
90
143
103
59
123
118
127
125
124
108
95
110
158
99
54
76
74
108
116
129
68
135
125
110
111
97
105
101
105
155
95
145
102
164
78
143
81
112
87
54
96
142
96
193
141
80
153
124
131
108
105
76
145
127
105
90
202
93
145
123
123
102
106
148
165
93
104
74
103
152
159
149
81
118
186
102
87
134
59
96
129
138
133
106
160
136
108
87
108
130
103
111
173
82
133
87
146
104
133
128
118
95
134
98
131
114
83
113
103
140
122
146
143
85
81
133
97
125
167
120
97
109
74
77
118
147
89
103
164
133
83
172
159
120
77
68
134
83
82
156
99
122
145
143
132
97
152
129
135
80
110
95
93
126
103
71
54
113
98
80
54
128
49
137
104
100
69
115
149
95
101
54
97
108
77
114
115
109
140
89
135
113
171
139
102
102
54
158
132
95
95
102
131
90
94
121
82
106
119
99
85
133
132
130
95
105
107
156
177
96
96
109
141
129
114
74
135
67
54
102
132
83
116
122
144
118
107
99
147
113
134
82
95
113
91
122
196
102
146
115
116
108
81
80
146
161
125
180
74
100
49
133
67
165
98
139
122
120
129
101
140
113
49
123
96
102
108
127
83
130
76
80
198
156
184
161
159
114
90
108
200
102
148
118
118
131
106
83
193
105
93
173
68
122
111
156
98
103
145
103
128
130
86
101
162
74
59
94
82
98
109
127
120
165
124
67
85
122
138
148
107
95
101
77
42
212
109
129
161
105
87
114
108
120
98
127
54
69
121
83
155
104
88
148
150
125
175
93
116
85
132
106
130
151
85
49
74
122
167
95
133
97
84
90
100
138
127
107
87
120
177
123
125
146
133
146
54
144
102
105
54
113
131
129
141
102
85
158
96
59
62
104
117
92
125
154
102
125
76
54
114
71
103
112
67
73
54
137
102
104
107
138
54
109
135
135
81
93
59
125
117
113
130
98
138
151
77
54
103
149
108
121
87
157
109
89
102
113
81
150
172
154
106
181
114
78
105
112
84
129
61
97
125
153
126
73
124
142
164
67
113
133
67
105
74
106
102
115
146
87
112
105
95
143
97
89
139
54
140
84
153
132
102
82
125
54
96
175
116
93
110
54
144
102
129
83
107
107
123
91
139
95
54
102
112
96
141
131
95
108
93
112
93
124
100
91
87
116
114
146
145
113
78
54
59
161
121
108
90
94
116
145
127
93
179
106
143
129
76
135
94
105
103
125
124
82
77
131
133
94
198
103
103
90
97
135
131
121
123
154
116
54
107
127
103
91
102
116
67
59
149
147
93
161
115
141
108
116
96
49
108
85
133
111
143
112
91
98
117
54
131
54
148
113
103
104
105
137
100
79
141
124
154
115
130
138
103
102
101
122
158
104
77
87
125
115
83
95
154
112
69
108
127
153
127
111
106
54
123
101
95
184
96
126
102
162
133
125
123
81
166
146
119
95
108
144
172
126
147
59
59
61
152
145
166
93
140
101
159
86
108
103
113
98
67
92
136
98
105
77
113
120
125
140
54
95
108
154
180
119
97
82
79
84
80
102
99
83
135
102
115
115
113
138
125
97
154
76
82
115
102
105
73
59
135
126
61
108
49
78
106
139
125
124
93
98
128
128
118
128
110
108
81
83
124
91
127
162
134
49
116
133
102
135
116
54
87
96
123
77
81
115
144
141
151
109
147
76
163
118
108
121
83
54
80
108
135
86
113
143
49
97
128
103
94
76
77
144
99
90
129
92
119
135
81
91
124
164
128
76
122
154
114
110
130
135
97
138
115
98
97
128
116
74
103
162
128
69
74
81
123
85
110
95
81
147
113
124
105
161
143
102
128
126
142
90
120
102
110
139
129
80
103
92
101
85
101
95
96
143
113
168
197
141
129
87
112
107
105
107
103
124
148
108
106
54
82
89
167
130
131
113
140
101
111
123
90
177
138
124
103
88
145
98
76
54
123
120
144
108
116
102
132
111
191
134
127
68
116
111
133
135
112
125
172
91
194
54
126
102
113
91
128
135
157
136
106
59
108
90
107
103
135
126
54
170
122
89
117
98
108
179
88
133
102
89
140
90
108
113
126
141
125
177
132
102
74
107
108
146
88
59
94
117
96
146
141
116
54
148
135
87
81
98
70
91
158
104
103
104
121
142
124
122
81
106
114
61
148
91
131
142
54
141
157
77
125
122
95
140
98
115
120
78
112
139
103
124
141
131
112
88
103
74
77
102
61
158
112
125
74
91
103
115
95
161
144
129
87
142
108
130
125
113
140
114
121
117
125
76
123
102
151
102
104
69
125
95
78
108
85
102
126
115
102
59
88
121
107
158
120
116
127
98
130
144
67
155
116
90
54
126
110
137
117
85
78
143
49
117
141
186
147
95
147
125
59
178
120
125
90
162
95
113
110
127
124
126
49
141
140
76
133
123
140
158
172
158
96
97
49
104
101
162
191
102
74
54
101
128
129
106
157
169
88
107
127
86
124
54
179
74
122
114
141
89
89
90
120
144
144
107
102
110
161
138
117
147
180
102
95
100
94
115
112
108
99
128
107
165
116
119
90
67
144
150
151
89
134
111
54
76
98
108
129
139
108
97
96
133
98
106
129
161
119
78
135
74
129
161
132
73
98
128
121
79
171
143
131
116
125
136
67
131
102
113
151
89
102
95
123
111
97
143
151
130
187
122
97
100
143
139
97
149
77
140
125
144
108
95
115
122
134
83
119
54
171
103
121
151
155
98
113
102
83
151
82
99
128
83
200
133
49
106
136
164
140
100
76
83
122
175
130
95
124
123
87
82
191
115
105
106
142
138
144
197
59
111
69
130
108
106
95
81
103
83
187
97
118
130
104
91
98
148
84
54
119
97
132
85
93
105
67
146
131
150
144
93
119
133
110
87
131
162
113
99
54
88
143
84
119
141
118
69
102
125
127
98
129
91
81
54
104
84
93
106
74
135
121
109
121
115
143
110
89
98
101
128
107
78
107
114
135
141
119
142
103
125
129
83
116
98
91
77
74
145
129
124
102
84
82
82
90
74
59
157
149
111
74
102
147
87
113
112
61
105
87
172
137
133
163
161
114
139
178
102
124
154
79
144
125
153
119
61
81
102
99
129
126
105
59
148
111
110
125
126
93
103
98
106
108
99
140
125
94
65
104
143
84
117
195
113
136
102
106
123
118
102
94
69
135
158
74
81
155
84
135
98
112
105
113
61
131
128
149
110
127
155
122
112
159
93
141
148
163
102
150
103
148
103
100
177
113
116
93
161
127
173
158
106
141
132
121
123
115
106
127
108
104
179
127
54
67
132
90
86
115
137
78
144
93
54
127
100
123
102
127
177
96
86
126
108
108
76
98
128
126
147
102
98
85
59
143
116
119
87
100
139
139
138
108
163
113
121
102
154
123
120
80
173
147
102
155
170
115
77
127
106
103
135
146
95
88
186
98
121
133
98
143
81
119
49
136
83
147
54
69
140
109
135
224
129
121
133
54
106
125
113
102
74
105
49
109
104
102
97
115
149
54
113
110
114
153
95
85
171
158
114
111
97
82
102
110
123
128
168
108
122
87
98
68
141
90
81
129
61
141
126
102
66
140
102
114
83
132
133
161
115
68
95
118
119
125
121
107
129
106
105
115
149
149
149
81
98
100
100
146
166
127
114
80
102
158
133
146
102
59
106
131
102
95
49
138
112
92
125
128
127
117
112
158
94
95
59
98
113
148
132
102
94
113
98
129
134
97
91
143
179
116
95
98
151
167
141
69
132
82
148
124
106
134
78
83
82
155
188
95
131
143
173
93
104
124
108
133
109
95
152
108
139
138
133
123
111
123
118
120
106
131
54
106
105
120
128
107
102
90
158
120
161
157
124
81
67
123
102
93
137
89
54
125
133
54
128
133
108
128
142
107
59
135
59
82
108
165
163
157
78
138
128
133
88
101
78
168
101
89
130
75
76
85
101
145
95
120
77
126
158
102
135
101
115
155
107
162
137
85
83
85
125
102
96
95
92
180
149
108
137
156
77
120
126
151
128
81
117
67
98
142
112
85
116
147
105
108
148
113
143
114
129
100
49
102
100
135
148
80
83
161
123
112
135
158
162
104
68
59
54
101
143
99
111
153
118
82
114
93
134
159
138
97
90
93
127
103
133
126
107
93
110
82
149
84
153
98
54
54
92
93
91
107
80
97
96
134
127
168
67
102
108
125
102
91
81
115
147
61
120
131
129
88
113
127
149
103
61
134
101
102
107
119
105
108
68
143
112
54
131
110
157
111
140
112
158
148
138
87
194
74
111
124
113
125
120
93
165
112
140
93
167
119
74
134
177
139
139
54
103
123
105
83
111
140
114
134
93
140
171
131
137
83
160
103
87
142
73
115
111
77
69
103
125
82
112
107
143
135
196
116
133
54
121
127
158
140
106
128
94
158
86
133
105
163
128
153
116
111
83
92
136
154
132
113
104
97
119
114
144
106
54
74
105
108
177
142
81
78
82
140
97
101
125
95
118
141
54
86
91
85
122
69
128
150
115
110
148
131
84
104
99
107
102
54
107
114
96
172
77
133
90
158
57
78
119
144
132
107
153
90
134
148
123
130
102
54
172
90
102
85
134
105
131
151
208
165
124
148
126
161
124
107
82
72
130
135
115
144
119
107
98
129
74
54
147
109
81
120
150
131
135
145
101
49
67
144
131
134
125
137
108
125
129
103
90
130
49
104
154
108
93
93
108
102
132
72
137
118
105
93
108
135
104
96
130
73
113
108
104
97
126
81
57
100
120
96
125
85
151
122
115
102
151
98
87
54
74
87
98
97
82
103
129
73
90
130
92
158
54
95
175
147
123
130
59
86
95
101
82
148
91
150
109
141
117
158
133
81
133
81
101
153
143
90
127
158
135
123
91
112
54
125
148
129
77
99
121
112
158
162
126
121
187
112
159
126
101
188
148
134
74
159
117
106
112
54
115
135
135
67
78
129
82
102
83
96
119
147
113
116
113
108
125
109
109
88
139
130
146
104
158
95
81
106
69
118
103
136
54
87
95
68
95
82
103
104
54
146
98
160
122
104
168
92
110
114
110
77
137
135
127
106
150
138
94
127
119
97
138
93
113
110
116
82
73
112
108
102
132
116
125
146
129
103
122
98
59
144
134
145
61
102
54
149
122
97
95
108
103
85
129
103
103
135
105
143
108
109
109
155
149
93
122
76
127
135
148
128
145
54
114
161
115
112
49
105
120
105
54
94
113
68
148
85
98
95
151
125
94
82
98
82
90
100
115
103
111
170
96
133
134
125
76
133
153
121
132
61
153
107
97
114
147
120
129
132
54
90
106
102
114
102
68
54
107
49
123
117
86
131
119
137
139
96
106
102
81
127
105
106
115
111
76
116
107
108
166
77
100
54
116
141
96
137
156
117
94
115
137
143
134
102
104
138
160
81
103
108
87
77
98
90
183
137
118
122
98
112
144
68
83
144
105
95
163
76
106
116
118
83
59
164
82
137
149
139
141
160
103
115
77
105
95
90
98
120
89
119
54
115
102
76
103
102
112
123
125
114
95
54
153
128
69
143
105
106
108
191
137
59
102
140
77
97
121
146
122
126
108
59
134
108
118
156
147
78
161
192
122
206
137
49
148
97
117
106
108
104
108
148
136
151
54
113
113
108
139
185
101
139
100
81
133
54
118
69
124
91
98
54
140
84
62
87
80
95
117
113
160
163
161
127
113
83
82
73
107
134
101
102
105
114
81
133
102
95
156
108
123
155
125
142
54
118
67
177
84
102
149
96
143
98
143
74
87
177
77
98
159
102
74
153
54
126
110
142
135
85
115
96
98
103
118
127
78
181
116
132
101
91
103
146
105
144
110
107
134
143
113
120
118
54
89
133
119
148
105
95
128
143
112
134
115
120
103
81
121
129
145
74
148
81
118
92
149
122
95
117
155
101
115
95
103
164
151
102
113
106
116
173
136
102
81
143
106
106
141
102
102
183
143
144
100
176
77
94
119
133
112
106
122
113
105
132
132
133
88
90
128
105
117
97
103
108
130
123
129
54
141
148
126
158
88
159
138
143
117
95
121
109
124
126
82
82
67
99
127
121
103
125
140
131
110
111
49
160
133
165
81
172
122
108
101
110
98
54
139
132
148
142
108
129
147
117
116
122
72
170
147
177
112
93
92
67
151
137
77
116
152
92
99
142
125
88
59
147
125
54
204
123
125
133
119
93
108
148
81
164
99
102
109
88
149
168
110
164
158
74
124
104
106
81
148
116
116
110
102
95
152
111
146
77
133
191
92
115
102
102
119
111
149
91
94
101
118
116
165
130
193
54
81
76
127
91
117
114
54
132
93
79
113
119
189
78
120
87
96
145
120
186
88
96
124
135
94
140
95
89
108
126
113
98
96
129
98
83
124
107
91
138
137
118
143
68
89
98
121
138
116
139
152
128
81
163
74
139
131
144
81
104
114
150
128
80
110
170
113
125
133
129
98
132
148
123
54
188
124
105
123
109
99
104
98
102
90
142
104
106
159
118
127
155
152
139
139
126
137
54
129
118
49
85
112
85
90
103
104
155
108
95
178
122
121
133
126
145
98
74
54
69
113
118
61
117
142
85
85
108
98
87
102
107
81
139
65
74
126
160
81
140
147
137
115
91
121
109
134
90
95
123
128
108
125
142
61
122
83
153
102
90
93
101
104
76
113
125
106
81
54
126
59
107
121
147
99
175
113
152
108
90
122
204
108
143
79
77
130
54
156
103
80
49
95
95
158
113
115
147
98
95
114
156
93
123
113
94
122
102
108
111
122
134
115
90
75
82
120
152
96
98
83
148
148
139
121
98
108
128
113
113
128
125
77
134
119
132
125
171
59
74
119
114
112
195
93
76
127
156
156
160
106
108
157
172
131
69
125
132
83
49
160
79
98
157
135
152
133
59
136
111
175
136
80
102
84
154
106
90
146
95
79
94
160
54
103
165
159
135
118
120
98
158
125
163
112
108
82
74
54
127
149
138
54
167
126
195
133
180
113
76
101
113
113
114
54
149
121
112
167
158
98
98
118
122
177
94
95
78
144
134
144
108
108
119
99
144
108
98
147
54
113
120
168
127
126
165
108
98
137
133
97
133
123
128
163
109
106
150
112
117
125
77
125
81
126
123
167
95
122
99
103
111
83
113
74
126
98
100
129
81
157
78
144
186
160
54
115
110
121
95
125
115
89
117
160
144
123
122
104
107
83
129
101
180
142
108
97
133
125
104
103
81
129
98
129
153
172
99
129
76
140
77
152
67
59
111
124
45
93
121
122
133
128
115
108
114
133
87
124
99
138
88
95
89
147
147
140
140
99
54
120
114
68
81
135
125
124
117
133
87
106
96
115
178
114
94
135
102
98
148
114
101
107
128
180
81
139
104
81
155
85
93
143
150
120
101
127
130
149
135
107
98
108
116
144
106
54
103
108
143
153
122
128
93
163
114
89
121
123
108
73
133
54
108
81
82
143
146
102
113
141
121
98
114
139
108
109
90
130
108
95
139
126
111
91
125
113
110
147
100
130
114
109
95
149
74
134
158
125
144
98
116
218
98
129
117
69
133
115
77
108
112
107
98
158
105
105
152
69
104
141
151
95
80
145
101
122
67
174
127
124
120
54
95
81
114
120
122
128
129
116
108
175
112
107
106
144
132
135
99
107
108
136
93
131
128
116
112
141
158
59
149
115
128
80
90
129
150
54
98
172
87
143
161
155
95
98
117
59
114
148
138
90
91
73
148
98
112
113
98
110
132
106
108
107
68
138
138
113
134
140
135
133
121
142
102
104
124
114
54
140
98
115
176
160
113
87
108
132
103
137
104
67
83
112
148
146
70
110
136
102
157
125
166
74
150
102
115
103
115
79
146
101
110
91
131
49
102
105
108
117
141
119
76
155
102
83
127
81
103
102
97
95
54
49
149
103
189
70
177
105
113
54
85
85
67
140
134
96
116
95
135
158
170
135
106
91
122
111
144
82
123
49
109
125
81
102
111
98
133
134
103
91
91
128
87
141
124
133
140
161
119
153
76
142
62
93
145
136
164
95
110
76
138
121
106
111
101
107
157
157
105
142
157
115
126
85
101
135
108
117
97
143
160
104
69
90
143
86
89
109
82
54
87
124
129
105
95
74
108
123
95
124
133
101
112
104
85
100
177
138
128
103
85
114
135
143
90
112
120
126
112
111
49
81
144
108
192
149
81
113
128
114
129
110
124
140
151
84
87
125
129
98
164
150
115
128
120
93
139
101
115
117
145
156
84
108
104
120
87
150
103
158
123
112
144
123
90
118
67
115
105
103
114
86
108
76
116
128
120
134
89
94
54
174
135
131
96
93
144
100
88
111
74
85
104
102
121
131
76
158
141
102
108
130
159
147
161
134
121
104
176
129
67
74
75
129
87
91
94
95
78
135
101
95
103
111
103
132
113
101
143
122
145
130
93
134
49
133
122
113
111
80
114
88
103
103
150
151
115
114
105
167
54
149
93
83
160
115
106
123
107
79
106
90
80
110
169
119
147
133
100
95
161
108
94
127
98
97
145
102
154
141
158
133
103
131
54
109
99
108
133
105
147
183
90
128
140
93
105
138
169
125
102
158
123
118
102
76
104
102
108
77
98
125
148
95
151
145
145
131
144
105
95
130
99
177
159
119
54
136
144
115
144
131
93
134
76
119
143
100
107
76
95
112
103
132
136
81
89
113
156
107
108
141
90
142
95
87
140
138
143
130
128
82
163
134
108
106
108
114
83
142
177
143
122
137
89
77
122
129
168
115
149
49
114
54
145
54
119
100
91
102
102
59
148
101
112
82
135
59
106
100
155
180
149
116
152
135
146
105
95
74
140
61
82
169
122
177
125
128
114
156
112
138
118
130
127
132
133
68
57
125
156
117
145
160
127
137
54
131
118
99
122
117
122
108
74
59
105
108
125
113
125
145
76
98
130
112
101
95
99
117
98
105
95
54
92
130
81
114
82
106
80
78
144
146
97
147
124
83
89
103
116
161
98
119
125
125
103
102
114
74
116
144
151
118
83
91
54
139
120
216
147
125
105
128
133
103
113
109
121
49
110
98
102
176
129
67
148
90
129
106
112
85
153
141
94
98
148
128
143
125
112
91
98
59
59
172
122
189
81
183
105
54
104
165
153
68
98
118
92
102
125
133
130
99
158
107
95
135
141
133
108
74
115
54
108
115
59
120
74
88
133
83
98
100
125
85
102
54
127
81
92
122
61
145
74
174
108
103
144
164
95
102
143
176
111
123
108
54
117
101
105
158
90
54
172
112
133
113
143
81
150
125
87
96
119
145
99
150
132
126
118
102
54
109
136
104
90
138
95
54
97
134
108
77
84
107
74
74
108
93
92
140
87
79
112
166
118
108
123
125
79
81
125
143
136
117
95
95
94
105
139
163
59
114
103
95
91
102
75
118
134
154
115
143
99
119
148
177
177
54
133
100
69
78
105
168
102
117
129
152
164
61
95
54
107
128
91
108
146
123
105
95
119
131
87
91
137
119
150
119
96
110
121
84
145
118
148
137
135
172
94
127
82
143
91
137
95
136
106
127
139
148
150
77
91
103
138
140
114
165
84
137
91
216
95
91
78
146
108
49
98
156
54
143
98
144
105
102
74
128
128
102
125
112
78
159
108
90
130
134
133
153
108
108
103
102
123
131
95
160
147
91
95
152
127
158
128
151
148
144
127
106
49
113
138
97
102
83
78
107
121
161
106
150
130
127
103
73
92
105
81
76
103
148
102
136
157
133
117
106
82
96
110
107
162
86
78
96
100
113
104
54
54
144
133
163
116
56
117
100
103
83
168
74
100
124
126
103
98
108
108
113
67
118
75
147
106
149
95
74
139
118
131
67
138
124
103
98
105
95
132
94
123
113
141
120
102
108
179
111
95
94
120
116
148
59
84
144
132
95
80
120
120
131
98
155
112
138
134
110
108
69
122
144
116
74
127
110
143
80
105
103
119
59
133
85
135
87
144
76
148
131
164
114
102
54
135
109
105
113
165
108
107
108
130
158
108
161
92
113
143
112
155
145
128
146
143
147
164
131
155
70
82
158
154
125
109
108
146
116
148
103
144
83
103
123
135
128
120
129
191
106
114
150
106
169
165
110
76
98
105
93
118
128
90
96
105
82
67
94
99
98
124
125
130
124
89
144
96
102
139
83
123
96
146
124
114
86
113
127
162
61
68
113
98
142
104
111
102
188
74
108
151
106
111
59
139
107
103
83
81
105
132
142
99
110
103
122
103
109
96
82
123
95
134
73
157
103
105
99
91
133
145
54
149
61
87
98
119
100
117
101
105
110
124
106
104
113
178
113
88
124
113
148
120
124
179
108
96
101
93
95
125
147
80
112
63
90
131
54
102
78
140
140
104
106
128
106
101
159
77
87
140
107
124
138
122
124
139
116
87
59
109
130
59
123
76
172
100
106
104
99
128
105
115
99
107
147
100
97
154
82
113
78
59
132
157
118
122
113
137
178
117
98
111
119
122
107
82
148
155
115
98
120
107
127
93
154
182
128
77
158
112
99
106
147
49
87
81
104
98
180
54
200
144
161
86
87
117
116
110
163
91
110
103
59
98
140
106
145
170
122
174
98
69
141
146
177
96
102
96
95
107
133
59
117
123
82
74
119
122
79
102
127
139
102
110
145
142
148
105
86
148
134
136
84
98
74
157
132
109
115
111
135
103
54
113
149
161
61
131
107
91
155
148
111
101
146
81
102
111
118
105
98
119
107
142
154
102
112
128
102
110
59
82
128
143
158
124
111
140
97
106
122
95
155
151
95
82
124
77
146
115
123
120
107
127
113
97
136
121
49
104
118
123
133
108
105
161
100
80
74
131
144
101
106
158
121
98
169
81
132
128
116
82
118
137
125
120
133
156
147
147
103
102
138
154
98
161
135
130
130
143
49
98
112
76
123
87
136
105
100
68
98
118
95
148
125
104
54
49
90
161
142
107
133
153
89
113
117
129
54
158
133
127
85
54
74
78
135
154
54
125
95
99
119
127
135
105
54
90
83
98
81
113
141
108
133
108
121
80
126
110
172
133
108
149
82
109
82
95
107
95
125
137
177
67
103
133
141
49
151
140
122
182
82
135
147
82
135
118
135
134
167
175
107
104
94
123
132
109
179
128
122
115
116
126
106
155
163
54
115
149
154
148
143
108
158
108
144
94
115
103
81
103
125
111
138
113
135
106
157
149
85
176
128
102
103
117
108
108
137
112
107
179
108
54
114
156
107
124
104
112
131
115
136
152
141
97
144
108
141
74
90
86
80
108
77
108
81
123
81
124
133
95
111
177
152
124
83
155
114
105
129
131
134
132
177
91
137
124
83
122
95
128
78
118
69
127
125
80
85
84
78
54
112
90
95
77
133
129
89
155
144
131
59
120
179
72
96
174
139
115
93
98
87
124
135
49
110
144
108
99
74
95
83
93
144
67
148
139
117
121
121
96
146
113
109
185
112
124
143
87
133
54
142
136
83
113
125
131
172
49
127
81
144
134
74
144
49
76
85
94
117
110
74
93
114
133
83
119
102
108
98
113
133
163
120
129
127
108
97
167
113
101
93
91
172
108
122
125
147
156
59
170
124
98
123
138
100
150
113
128
125
131
158
129
133
82
61
74
87
133
200
153
108
116
54
133
126
76
158
91
98
99
117
123
76
94
99
167
102
95
172
108
59
95
140
131
102
132
95
160
167
77
113
134
101
152
107
127
146
104
81
118
138
200
124
125
105
150
129
133
138
90
93
158
49
117
136
77
114
106
128
83
116
147
123
96
130
157
120
133
158
129
155
89
125
113
133
106
95
95
166
67
120
90
110
86
89
68
122
76
121
159
114
133
91
158
102
139
116
101
104
91
158
122
95
49
112
131
165
54
163
102
141
120
161
149
54
143
82
155
156
126
85
100
121
92
139
65
54
108
124
111
116
104
74
120
123
163
158
116
148
142
103
110
88
109
149
97
127
108
102
104
115
144
93
87
142
121
158
125
138
106
113
138
133
135
117
117
194
110
115
49
94
115
102
82
98
115
59
106
85
110
146
86
90
81
161
107
131
196
98
81
118
69
153
98
122
108
99
87
127
119
112
145
109
102
132
103
157
103
108
102
98
95
98
154
95
115
106
113
80
100
149
103
98
128
84
74
103
86
81
128
165
160
131
129
108
94
85
69
124
158
131
54
91
99
54
54
154
143
140
102
105
148
107
106
88
109
75
180
139
96
139
59
124
93
117
128
86
98
116
121
161
138
100
54
96
90
106
111
194
131
88
89
180
111
140
105
146
49
112
107
103
143
83
157
108
165
167
106
126
160
146
95
114
180
132
148
131
90
128
113
122
134
140
75
121
107
79
149
95
115
151
133
105
103
93
75
108
131
115
151
75
139
148
145
103
200
90
146
113
96
112
74
144
155
76
139
168
184
132
129
127
104
133
68
159
125
128
145
54
107
160
143
93
113
125
133
177
139
112
138
153
137
148
106
116
124
80
97
108
119
108
165
146
108
129
97
121
83
122
200
129
109
83
108
61
104
59
160
54
139
140
154
113
108
111
91
89
139
152
85
129
116
102
90
74
78
95
90
108
54
158
161
150
128
120
114
152
138
90
83
91
83
95
77
118
98
161
154
183
149
115
95
161
116
121
54
140
112
72
100
54
76
142
133
59
104
81
125
133
99
169
117
93
96
89
77
159
103
49
113
83
112
122
87
204
81
85
95
116
79
87
103
116
95
143
54
133
80
108
152
95
131
147
102
115
91
165
144
100
138
102
77
90
128
114
177
158
148
112
95
135
127
173
99
131
108
123
126
158
83
137
136
116
94
111
165
109
120
95
143
128
151
140
114
149
103
115
114
151
80
155
95
143
110
132
96
90
116
87
128
54
125
95
126
128
122
102
124
81
78
104
95
165
98
108
54
194
90
135
143
133
164
144
93
146
145
131
148
141
116
103
87
106
105
92
98
197
131
67
159
81
170
102
118
77
135
125
112
150
102
114
82
140
117
120
86
149
163
102
139
139
163
106
152
95
150
67
143
72
108
139
98
179
109
81
127
132
148
59
120
100
105
145
77
103
135
95
132
85
54
177
106
84
80
67
81
183
148
106
194
130
105
121
92
102
98
113
162
81
136
147
129
103
153
109
106
106
146
67
54
149
140
112
123
97
113
134
95
79
126
176
98
133
135
126
73
107
54
54
87
141
160
54
90
159
114
89
78
103
114
138
102
81
114
131
135
113
54
169
129
120
134
115
120
103
112
194
165
133
74
77
167
119
116
133
102
171
143
145
131
45
109
54
139
143
102
147
135
147
87
137
59
141
183
168
87
161
147
140
126
144
108
128
102
87
118
88
131
121
134
125
100
133
78
105
132
148
98
156
98
172
102
128
153
112
138
54
82
83
152
85
113
124
69
140
89
83
120
54
112
150
118
133
191
192
104
87
118
134
103
98
113
82
153
161
119
54
106
59
133
133
106
96
138
108
120
134
95
125
143
141
138
123
74
169
138
100
78
79
118
118
80
105
105
94
112
81
117
158
148
131
148
134
144
111
84
82
95
84
54
156
114
87
152
96
94
132
123
61
167
49
117
113
113
138
99
118
74
101
115
79
81
67
111
76
165
114
107
113
129
95
101
102
128
135
125
70
133
125
107
101
119
102
157
108
126
54
120
144
125
147
81
106
86
49
98
130
169
59
114
96
122
90
81
103
111
101
112
113
136
77
95
146
147
105
117
163
165
81
89
118
100
59
115
162
136
91
95
107
141
142
103
116
127
138
95
130
127
49
131
120
103
80
84
113
110
89
123
121
131
102
54
113
123
132
82
140
108
87
100
98
110
127
91
87
158
126
74
148
101
78
106
163
59
104
81
82
151
120
124
104
102
98
111
153
143
78
103
119
97
125
200
87
103
158
95
76
125
96
154
103
190
125
133
137
123
103
113
54
73
149
129
145
108
126
140
90
49
95
95
119
127
108
107
164
153
94
103
68
142
83
165
130
83
240
116
73
109
104
106
93
115
73
89
76
98
122
77
82
54
89
102
54
91
110
142
54
118
144
172
87
54
112
145
125
95
104
90
108
147
76
88
129
128
98
100
172
98
98
94
108
131
160
112
132
96
82
104
108
180
115
130
81
81
144
91
69
91
108
99
80
142
131
107
93
108
86
141
197
82
138
101
118
127
123
123
84
143
167
119
113
149
125
195
90
135
117
81
142
90
109
59
127
69
105
97
105
98
113
103
108
81
143
131
143
95
87
106
198
124
137
114
74
100
124
127
118
175
137
99
148
61
104
134
77
108
102
164
146
148
131
122
67
174
129
139
125
180
160
102
54
98
129
128
144
102
90
97
152
104
97
105
141
165
133
152
158
109
91
106
129
106
114
112
149
124
49
153
179
175
119
73
107
133
88
156
133
117
164
102
90
94
84
110
117
129
137
73
77
80
108
193
127
106
199
113
141
133
54
128
100
123
125
108
97
54
116
148
95
128
133
107
121
144
182
163
112
142
133
177
148
98
128
98
107
134
81
87
96
76
87
144
122
98
101
83
101
138
133
191
178
158
133
54
135
87
54
90
102
108
93
103
78
101
124
137
170
89
120
105
125
76
133
108
54
105
123
129
171
113
150
133
117
144
61
102
99
67
81
90
112
85
89
89
134
89
154
113
102
113
129
105
131
80
131
99
59
121
96
127
119
134
95
114
148
74
119
115
173
134
146
139
125
177
54
117
116
125
74
147
126
198
100
141
140
126
108
132
122
135
74
54
159
103
140
155
216
133
74
128
67
154
132
102
95
94
86
85
131
80
82
112
81
133
130
99
74
81
149
93
135
108
161
78
74
118
76
115
95
91
151
113
144
49
130
186
103
140
120
84
133
135
78
102
77
118
123
108
108
99
104
143
81
102
108
132
112
98
82
143
95
76
95
105
108
113
107
90
164
67
81
94
101
143
153
119
148
98
166
128
49
111
83
93
106
113
102
144
81
78
133
95
76
180
96
85
125
113
95
134
113
112
49
138
128
111
108
165
125
113
131
54
123
94
91
54
122
86
90
101
87
61
106
123
125
163
118
126
114
121
77
100
142
126
87
93
101
94
95
91
137
103
143
102
147
104
112
152
122
123
179
109
218
143
106
119
152
68
103
54
112
82
133
67
67
109
150
167
147
81
146
93
59
88
107
148
107
88
149
101
101
98
135
108
133
136
95
107
105
108
115
106
99
138
118
135
80
116
148
54
91
136
139
122
102
177
102
97
49
115
186
102
114
85
142
157
143
77
75
102
131
93
125
76
94
165
149
116
108
100
156
158
135
181
112
92
149
148
123
128
131
137
121
92
111
139
102
98
92
113
88
95
128
148
94
91
127
98
141
140
165
97
123
172
99
90
156
133
82
165
106
102
119
145
83
108
103
49
122
125
128
123
54
81
122
91
82
134
131
120
87
108
156
132
103
129
92
100
126
117
108
135
77
145
59
114
83
90
77
126
113
146
129
143
127
146
165
81
103
145
145
137
163
141
140
132
54
54
76
49
99
139
115
153
91
103
91
83
98
109
95
83
108
112
103
143
139
102
121
95
54
75
101
107
54
139
138
136
109
145
150
134
116
95
149
93
152
125
76
126
54
108
96
136
114
146
76
90
142
133
129
126
159
98
139
113
128
177
147
59
159
103
72
96
151
103
129
54
98
143
49
65
125
93
94
83
113
81
104
105
67
89
96
120
153
115
78
101
54
82
74
54
120
168
166
146
74
97
119
170
114
110
108
133
139
125
96
111
131
131
98
140
54
108
131
135
98
54
91
153
119
80
81
153
96
77
82
74
101
137
82
123
69
96
108
54
103
161
107
79
54
143
133
148
106
93
116
131
124
128
133
97
49
147
134
104
128
115
113
125
87
118
124
101
118
90
135
113
100
158
85
54
54
107
74
134
123
127
108
54
59
99
120
139
111
123
105
67
126
102
114
181
138
113
146
122
129
98
88
91
133
108
72
103
113
161
108
116
162
153
98
148
77
82
49
122
141
127
87
145
131
86
100
96
118
102
153
119
126
132
105
87
130
54
125
98
128
119
101
95
82
110
107
119
125
148
151
54
117
102
106
98
127
172
74
137
77
77
95
131
102
85
54
54
135
134
138
113
54
74
158
177
112
153
153
120
180
129
146
132
102
65
102
120
92
98
69
133
96
114
49
119
81
94
49
124
120
81
81
168
104
80
125
54
133
87
138
105
135
54
96
87
105
127
139
95
130
96
159
135
156
138
77
127
124
137
148
139
102
161
139
165
117
104
98
104
110
122
163
99
125
81
145
118
133
114
167
91
110
108
97
74
82
65
74
54
103
87
97
93
113
102
125
93
133
126
102
124
134
138
123
61
95
116
133
143
128
108
132
128
78
108
94
130
89
107
82
90
131
128
125
105
54
83
114
99
133
125
97
160
95
92
81
77
113
159
101
125
81
125
132
109
116
97
54
120
70
140
102
63
95
113
95
102
128
158
95
106
144
121
102
61
83
166
111
166
169
102
134
160
114
105
139
90
114
152
158
143
125
142
103
89
126
113
100
156
95
155
101
81
153
98
121
109
99
107
121
59
90
102
80
91
105
49
126
131
160
86
103
132
139
123
110
100
148
141
113
49
122
169
131
128
157
122
107
91
49
67
109
49
161
143
138
166
106
142
123
170
113
102
104
117
139
170
124
150
153
103
113
122
140
79
102
87
81
103
131
76
90
85
95
120
107
102
108
102
104
105
98
103
121
101
115
114
139
83
142
140
124
178
122
111
128
124
112
121
103
82
91
83
140
113
74
101
111
98
151
49
88
90
121
115
98
129
121
133
86
208
133
80
148
161
90
106
79
113
112
54
130
113
101
109
144
102
98
142
87
109
123
133
119
115
125
92
98
131
79
160
78
136
126
143
49
141
120
132
115
100
115
88
99
125
102
140
78
124
59
83
92
66
94
163
132
125
106
116
127
81
106
92
76
148
153
124
158
121
93
118
59
116
125
126
177
156
115
106
152
124
75
78
141
136
59
109
79
120
54
144
137
125
83
129
142
115
73
129
110
129
113
95
102
95
126
95
74
139
119
140
86
125
105
67
113
85
102
141
134
71
87
106
87
98
107
117
134
54
98
160
88
144
142
97
95
137
92
132
122
133
54
145
173
108
77
121
104
88
95
135
74
122
110
105
59
158
78
92
122
142
148
91
88
147
105
171
59
131
49
77
76
59
117
110
121
148
140
54
105
126
143
148
153
107
130
105
85
137
96
98
127
91
96
101
59
118
163
120
111
129
106
92
108
114
68
106
105
115
108
116
109
108
133
68
138
49
87
110
172
171
104
105
91
90
107
150
127
134
131
181
140
149
54
97
107
59
109
73
54
96
134
87
132
81
105
127
166
89
89
145
113
161
149
180
132
115
101
93
115
154
139
123
115
54
49
69
104
59
132
105
95
119
125
77
119
102
128
90
98
59
79
76
144
128
156
128
148
125
121
111
81
79
54
127
150
107
81
102
110
124
133
125
108
68
102
112
49
125
95
98
148
100
54
117
105
132
99
54
102
177
54
135
82
103
148
122
54
77
143
115
98
135
49
126
135
115
130
138
143
200
146
108
102
102
208
120
91
92
160
156
118
98
108
144
74
98
165
142
139
158
98
135
120
177
168
102
93
129
76
123
105
146
105
141
87
101
123
111
128
68
110
106
165
128
108
123
120
167
54
138
127
104
124
115
108
125
128
123
102
49
59
188
141
144
54
108
54
133
78
117
85
138
125
92
145
127
123
104
131
129
96
124
157
99
96
109
92
157
112
54
177
91
105
95
89
102
153
145
77
168
98
113
112
147
93
92
140
119
142
144
171
130
54
112
123
144
172
94
94
103
83
136
54
87
118
101
93
121
121
102
109
117
102
113
115
122
150
110
103
145
98
138
90
69
77
54
116
81
110
54
152
95
145
134
54
184
145
108
74
59
98
181
59
125
87
95
109
114
135
140
164
102
149
132
135
132
110
130
116
77
132
68
146
152
110
141
100
49
104
153
84
147
77
172
114
91
157
105
49
98
135
141
74
147
49
127
59
103
98
116
143
69
107
54
147
153
140
122
146
59
77
141
85
67
163
112
131
110
108
54
81
144
116
68
84
87
115
108
180
160
85
143
104
95
130
102
96
54
129
112
128
141
95
98
145
158
121
119
101
124
124
106
80
54
138
97
61
123
77
124
158
160
54
108
133
126
133
77
69
138
114
106
113
147
154
90
102
136
142
54
125
87
115
54
84
127
116
107
95
119
118
148
149
112
120
108
140
154
75
86
72
149
123
149
144
95
112
80
171
117
97
113
136
98
87
107
144
133
82
98
80
144
95
206
124
101
95
125
128
151
113
129
129
121
83
146
90
112
59
118
129
160
86
149
118
152
49
108
122
127
125
131
54
173
54
98
62
138
74
154
90
138
147
94
109
129
102
79
111
152
110
133
150
95
109
93
106
112
167
148
121
112
54
108
97
149
127
141
122
95
102
54
166
78
109
124
134
130
119
139
80
108
95
137
90
120
136
125
117
49
119
98
121
101
150
102
108
146
125
98
135
99
157
105
156
95
147
91
120
82
112
143
126
132
101
96
144
144
100
141
93
107
114
124
120
115
137
136
133
138
113
103
77
126
132
164
106
148
108
97
106
124
98
107
130
93
95
96
95
94
77
109
75
132
101
49
109
110
128
89
169
152
85
87
76
80
92
106
129
96
107
96
105
122
148
109
122
94
180
112
110
85
117
132
128
142
54
125
121
137
77
125
111
135
145
100
80
59
117
129
123
81
61
78
130
96
124
94
129
75
92
139
81
98
80
54
54
115
106
54
125
90
101
54
49
103
80
97
161
119
102
98
84
129
113
84
139
105
139
112
124
120
96
42
95
138
97
169
98
110
102
54
130
92
112
128
165
133
152
82
108
126
118
112
102
94
125
123
177
118
100
94
193
133
140
98
143
91
107
162
97
102
74
134
106
87
102
106
87
61
92
135
84
124
108
59
100
158
74
81
132
78
102
123
134
81
119
83
102
54
155
106
113
102
103
122
125
116
78
189
74
82
173
126
61
98
122
54
136
137
115
161
129
81
108
133
113
74
67
182
146
54
54
197
156
117
161
135
107
93
143
131
142
120
68
117
128
98
145
76
144
69
113
76
92
118
133
140
92
97
59
121
81
144
146
116
77
141
49
194
96
161
122
95
99
106
160
104
117
54
81
102
147
146
126
96
82
161
74
135
131
100
95
148
102
54
155
95
106
82
87
114
74
150
93
126
135
95
121
175
106
150
148
115
85
100
145
105
125
91
97
83
118
54
80
110
102
101
122
99
69
147
152
83
143
135
133
182
93
132
98
61
131
116
49
54
93
140
130
95
81
188
179
93
101
117
98
114
146
82
121
109
85
125
116
108
54
99
99
140
133
123
108
125
165
198
68
97
146
134
123
94
128
140
107
124
104
130
133
125
127
91
103
103
91
119
69
91
68
90
175
102
74
109
107
179
113
83
54
109
120
145
113
134
81
134
97
138
101
118
128
128
54
74
115
134
172
179
135
102
146
144
137
114
125
172
204
121
95
82
67
113
107
87
74
49
124
83
49
77
78
129
135
108
132
144
106
89
74
108
137
140
144
113
138
115
102
113
118
167
83
107
127
108
59
194
123
49
135
108
78
108
133
161
106
106
141
69
100
147
101
180
117
54
147
165
155
87
49
103
79
54
133
187
121
85
108
96
130
134
65
120
61
139
49
127
164
121
126
118
115
126
97
142
97
78
149
124
59
153
102
150
88
131
82
130
86
99
135
87
77
155
80
93
54
153
124
98
93
154
97
101
126
98
173
117
81
98
112
135
135
97
91
139
97
108
76
109
136
119
103
83
93
84
87
110
54
143
103
87
124
135
116
112
95
121
95
93
157
101
102
128
75
78
94
98
98
156
200
134
103
110
102
122
89
122
130
93
108
117
147
78
83
102
166
150
178
190
95
123
172
142
95
98
175
86
159
124
106
103
145
154
133
125
85
125
102
91
83
204
112
79
93
160
86
97
146
81
79
95
120
108
151
142
171
76
136
143
113
119
83
81
94
49
104
101
118
124
117
99
98
83
110
120
104
158
83
117
81
143
127
139
129
76
139
125
59
111
95
105
127
106
191
96
74
85
171
135
155
98
72
138
116
135
102
98
117
156
90
98
103
87
84
158
138
110
148
129
115
109
103
106
157
191
106
105
177
115
117
121
120
146
97
74
129
103
105
92
86
114
81
102
96
54
110
126
101
127
105
100
99
216
121
114
54
106
104
124
162
127
131
99
133
54
80
93
102
98
147
185
93
82
143
132
139
108
74
120
179
97
104
144
109
112
135
123
103
127
118
85
74
98
139
90
129
123
134
83
122
93
141
108
80
146
130
142
54
139
97
108
112
96
140
144
114
108
90
93
102
142
104
49
117
106
93
111
107
158
133
49
177
81
74
127
108
126
80
49
128
103
74
139
117
161
108
99
68
139
54
98
91
102
139
103
116
114
149
125
96
143
77
117
118
99
151
120
200
106
125
129
100
110
144
135
54
97
110
111
146
125
104
95
152
96
87
106
151
91
131
119
154
150
101
76
120
115
93
117
108
106
118
130
80
81
166
148
95
128
54
103
102
105
129
139
152
96
126
105
135
139
107
102
73
111
110
141
101
81
98
100
90
130
172
97
108
120
96
97
114
103
99
108
161
84
129
155
90
129
118
130
82
118
157
114
89
140
92
132
105
112
98
172
127
121
136
98
123
90
123
114
135
147
118
96
106
123
117
108
158
61
95
114
96
140
147
159
150
96
103
102
157
112
157
102
93
145
96
131
108
154
69
144
140
100
77
102
87
122
106
141
98
98
137
92
135
144
180
107
116
142
156
75
69
143
190
83
127
101
108
142
95
178
108
128
185
83
147
105
125
99
85
157
107
90
110
99
115
163
98
138
120
144
121
77
143
129
107
84
95
54
144
139
91
161
93
129
154
124
114
106
91
98
131
100
123
97
95
138
158
104
145
112
127
81
54
84
103
106
111
98
140
103
89
98
160
99
121
99
133
74
122
115
125
87
107
161
161
103
95
59
127
102
95
95
118
125
119
83
78
121
133
119
125
136
98
90
103
69
111
82
125
155
108
111
67
148
78
127
91
90
127
110
94
136
87
122
144
101
98
135
102
135
113
93
97
100
69
81
125
108
76
140
152
139
103
74
143
114
88
98
67
140
118
117
143
102
102
109
128
76
94
90
86
129
137
83
83
105
108
74
90
161
89
114
134
119
130
158
148
133
85
116
59
108
126
140
59
81
110
112
54
95
102
107
120
54
115
96
141
137
115
150
104
129
133
83
95
100
101
145
186
98
110
109
102
67
54
130
89
112
159
107
90
125
98
59
117
81
101
154
167
102
87
137
165
129
63
102
132
94
126
102
81
109
108
76
95
54
132
61
70
129
113
120
123
79
108
96
96
136
117
127
54
131
54
108
118
118
101
115
154
100
134
100
121
93
122
78
114
126
81
85
117
132
84
78
73
120
107
108
135
54
119
93
79
108
135
130
104
109
95
162
117
145
129
102
102
140
97
112
84
125
134
148
197
122
139
115
104
175
131
113
93
59
106
143
80
100
84
131
136
148
54
125
67
109
146
165
151
100
89
103
118
124
156
125
67
81
95
163
49
81
54
129
81
102
131
98
95
139
98
90
108
139
74
120
103
129
116
119
129
138
127
99
93
67
79
148
96
81
122
49
81
133
89
74
113
140
77
102
54
103
98
79
119
78
81
103
106
119
123
113
76
127
99
125
95
70
122
120
121
100
167
106
139
102
94
102
141
132
103
108
157
140
106
145
54
109
119
118
54
131
109
159
93
147
99
80
145
143
103
146
141
78
134
144
144
135
123
113
59
163
111
143
73
89
97
59
82
128
102
155
92
129
83
99
115
87
92
93
84
106
99
54
95
95
96
116
135
157
90
95
74
106
102
90
119
149
93
148
49
79
143
119
124
140
168
157
113
119
124
95
116
117
188
77
97
121
125
108
95
133
239
107
126
127
140
151
109
93
90
162
126
96
96
115
160
161
103
125
96
145
116
140
74
106
90
159
133
98
96
54
89
89
98
149
135
82
150
95
114
105
142
87
59
54
121
79
98
149
49
127
105
74
79
82
139
106
146
95
126
128
154
86
81
105
131
133
120
69
104
87
177
107
105
74
141
49
187
82
111
130
76
105
74
87
108
106
111
105
73
185
106
127
132
144
120
61
54
158
124
122
121
135
103
49
88
68
103
87
90
95
139
98
108
143
146
105
140
133
105
139
94
87
122
151
99
134
144
165
146
234
125
54
126
98
89
158
124
133
165
106
95
113
145
121
146
135
100
82
98
115
95
108
119
160
120
132
85
85
95
97
144
106
105
129
157
98
59
93
113
108
113
135
106
133
101
95
90
108
100
99
136
141
103
139
162
146
131
108
111
119
108
156
116
102
90
95
112
103
113
101
79
123
177
54
120
143
95
125
128
146
107
82
116
155
118
78
59
125
128
105
126
135
128
146
167
54
108
116
164
61
139
145
59
106
106
95
102
83
120
148
150
132
86
93
129
86
157
116
141
145
80
74
112
141
98
80
90
94
73
107
123
128
90
54
105
95
129
105
113
91
114
101
121
144
78
113
102
134
96
169
146
128
142
144
125
76
68
138
152
102
81
143
130
87
97
122
95
95
138
78
119
140
102
135
112
135
112
134
127
146
127
141
170
109
140
127
81
134
122
186
82
81
87
83
161
149
115
65
111
108
121
117
158
81
101
90
127
82
122
116
89
133
124
155
98
124
102
95
100
129
76
106
148
132
102
129
112
133
95
130
89
134
108
78
98
77
104
76
102
146
113
138
131
184
122
92
94
113
130
138
118
167
186
106
110
61
88
200
107
59
120
118
133
90
102
128
81
95
74
80
129
117
80
92
171
78
106
130
148
101
177
111
131
137
147
120
131
54
135
102
110
84
84
89
83
120
116
106
121
169
49
108
95
139
85
54
108
98
102
199
73
145
117
125
149
163
95
108
146
109
76
49
104
138
101
123
150
145
125
133
159
108
169
107
108
139
113
132
149
54
76
106
144
96
54
54
101
92
90
130
105
143
84
151
120
133
89
153
128
113
106
96
140
116
148
99
131
124
126
106
152
92
147
102
113
102
49
54
166
77
124
104
114
144
125
102
95
95
133
81
167
188
127
160
103
89
129
97
120
69
139
76
127
67
92
111
59
127
123
167
102
127
123
119
158
180
95
98
138
78
120
102
116
103
92
134
74
101
95
123
177
102
93
99
102
137
77
108
98
76
108
148
128
81
108
130
88
91
83
148
109
123
101
112
98
137
109
125
115
112
118
104
87
127
136
99
102
81
182
98
130
139
175
106
59
107
126
90
177
82
154
155
106
109
69
87
99
122
69
59
126
119
115
106
124
108
128
137
170
180
67
103
117
123
105
109
102
139
112
155
88
103
130
102
95
143
124
74
74
142
151
165
103
131
116
104
139
183
142
124
81
106
69
189
102
106
102
49
104
107
124
95
98
103
81
117
102
102
80
158
146
76
102
146
122
129
115
99
107
140
141
160
128
95
103
156
81
102
147
104
105
78
99
134
127
107
82
158
115
69
111
153
156
138
113
164
102
205
90
54
143
127
162
154
69
103
145
98
169
59
128
124
94
150
127
177
134
146
92
101
74
124
106
135
102
105
146
101
131
142
77
74
113
118
95
153
118
122
146
141
133
122
115
114
96
125
105
81
156
154
98
100
135
125
120
134
102
95
104
131
96
108
115
157
112
108
111
81
54
150
116
128
127
92
95
90
127
89
95
101
96
133
142
115
118
79
131
151
121
112
90
80
120
67
102
97
125
135
97
98
126
125
121
102
59
157
54
127
88
131
98
118
127
102
118
102
77
101
83
74
102
110
120
94
93
110
100
111
147
54
106
127
123
108
150
90
122
106
144
161
121
171
98
82
125
69
118
144
142
126
163
157
112
163
93
54
81
206
102
121
114
110
98
119
133
49
154
54
139
98
94
122
88
91
127
108
107
129
112
172
144
137
108
67
85
81
97
108
118
126
117
185
92
59
135
87
102
102
54
105
108
131
162
140
76
83
131
96
101
106
59
160
93
102
59
180
92
122
124
90
123
102
111
111
158
117
59
98
131
127
112
59
123
82
103
177
122
144
143
176
162
119
105
95
92
125
129
125
108
117
127
114
112
131
113
129
119
121
164
177
49
148
145
149
102
154
127
49
93
54
110
111
146
129
140
109
112
134
101
117
83
169
126
113
120
106
206
114
95
182
138
137
80
116
121
95
125
111
77
102
187
91
140
131
118
116
124
108
118
121
103
59
125
117
103
98
61
86
115
135
88
130
102
83
54
125
106
151
122
74
103
125
144
99
161
97
118
125
54
77
67
160
123
132
88
122
126
99
74
123
159
85
140
97
98
101
98
105
132
117
126
116
110
146
165
132
95
122
96
120
105
165
119
105
146
98
54
85
93
140
103
107
118
87
102
54
76
124
95
117
121
74
59
104
145
117
165
90
129
159
110
133
94
96
171
95
77
131
105
106
122
125
59
120
157
145
97
128
97
127
161
93
147
116
120
117
100
160
147
108
54
156
82
110
155
108
161
120
180
118
150
111
138
126
121
98
131
54
133
54
95
160
120
95
49
54
165
129
106
103
191
81
93
69
124
117
104
93
95
83
120
93
85
125
150
71
73
157
131
111
119
108
113
152
90
96
115
98
83
103
113
128
102
68
106
59
171
128
94
165
81
149
128
102
199
102
108
77
123
114
148
54
148
82
108
86
95
180
54
140
159
86
78
125
121
90
108
112
125
158
81
119
119
148
131
141
147
130
115
120
125
106
117
145
106
68
90
134
158
118
115
177
92
96
85
93
90
165
103
107
98
81
80
129
108
140
107
110
103
81
169
83
59
152
124
125
143
154
113
98
157
84
105
139
87
131
135
128
138
98
118
114
146
115
101
163
123
147
54
134
118
98
126
107
113
114
118
150
108
101
141
121
111
77
131
108
113
133
95
97
156
95
158
108
125
150
115
133
138
103
120
65
131
95
107
95
102
110
150
59
172
130
103
95
90
146
149
151
118
108
76
128
76
99
84
88
105
97
123
122
98
98
78
163
89
92
128
54
161
125
100
101
82
93
128
113
116
114
45
89
154
106
59
68
125
134
133
150
134
54
104
81
122
54
138
138
131
123
181
146
133
132
57
96
136
131
115
59
137
82
86
159
130
124
108
118
101
105
125
42
128
171
98
82
169
152
148
153
131
165
156
125
87
196
153
102
124
109
112
113
138
119
141
116
83
185
143
144
85
101
105
95
102
108
122
115
96
196
106
117
95
129
131
141
79
109
101
148
92
103
81
162
102
103
170
84
87
131
156
139
122
158
116
144
139
135
54
100
81
120
163
118
93
116
69
143
104
96
103
134
118
128
81
132
150
90
103
132
107
98
99
141
138
97
90
121
120
69
132
115
173
112
98
137
186
124
67
148
106
54
54
97
132
83
161
113
104
96
102
74
80
102
187
105
121
113
140
142
87
150
153
169
112
146
104
172
49
110
182
94
123
108
113
107
87
88
127
123
131
128
78
98
123
177
148
108
81
90
67
158
102
118
132
109
191
149
150
90
144
95
113
108
83
112
83
142
83
161
147
93
83
113
103
154
158
162
144
180
124
78
123
108
96
135
73
125
161
162
115
153
61
54
81
123
122
111
107
142
93
118
87
98
97
120
130
90
109
78
150
61
113
135
54
149
128
134
131
98
91
146
148
162
108
123
168
158
103
124
90
113
81
132
133
104
110
98
92
135
147
125
89
132
129
155
137
199
109
124
129
125
181
74
151
168
56
151
95
167
139
118
125
89
95
186
155
98
116
112
120
76
98
81
74
156
158
143
128
128
135
112
77
93
134
111
135
96
133
192
94
110
154
95
110
140
103
138
103
106
77
125
129
54
165
54
122
122
97
127
133
54
102
124
95
138
161
138
118
118
73
118
134
83
129
108
147
87
157
105
93
54
129
102
107
129
90
142
124
165
106
77
147
140
128
126
108
107
100
135
49
91
81
124
137
135
78
193
68
180
161
129
87
131
139
128
67
102
105
161
113
167
111
105
67
76
67
76
110
54
135
139
129
102
121
110
102
98
85
143
120
148
118
130
121
146
133
95
82
140
131
98
97
133
149
54
102
84
84
137
148
76
144
93
126
123
141
105
102
131
82
135
104
126
143
115
101
95
126
135
83
136
90
108
103
94
258
135
103
113
97
139
76
113
96
95
102
161
122
170
78
99
158
82
100
87
97
98
81
135
59
93
118
87
116
140
96
116
108
137
159
54
108
139
124
80
81
148
134
141
99
95
104
108
114
102
102
131
102
90
101
102
152
100
122
74
76
131
114
98
87
167
158
125
95
153
125
135
95
98
102
113
143
111
91
103
54
171
103
120
125
153
122
115
90
105
102
135
111
152
165
133
87
102
158
111
123
141
76
155
95
118
78
133
105
112
86
118
105
82
81
134
105
146
108
116
95
116
147
105
110
117
100
129
91
133
93
132
111
90
98
113
179
68
169
100
95
113
67
102
123
114
140
83
106
133
107
111
107
106
115
86
102
105
172
126
102
108
104
68
49
143
148
90
121
78
135
126
150
102
118
113
168
119
98
108
61
108
102
157
152
95
137
127
128
110
85
108
145
147
98
79
97
124
77
133
54
72
118
161
129
54
123
141
141
119
131
100
140
124
144
77
67
87
151
131
154
87
92
83
150
111
128
109
102
122
91
89
120
179
87
90
154
98
122
49
126
100
101
135
121
134
108
69
94
138
59
170
54
142
137
180
134
113
147
95
109
93
135
108
54
128
82
163
61
97
54
95
86
95
132
107
108
107
102
133
84
143
84
126
119
108
95
106
98
92
180
108
128
85
146
101
113
54
124
95
61
100
104
98
49
108
95
103
128
116
148
54
127
134
137
128
112
115
74
127
65
103
54
103
134
139
81
109
49
79
102
106
166
123
168
152
81
121
160
127
122
97
91
118
95
155
142
93
131
102
95
87
140
97
95
90
148
137
67
102
107
94
98
81
103
111
127
72
114
156
139
112
140
102
54
161
108
122
108
102
149
144
110
145
142
129
107
125
144
131
113
148
97
125
177
131
131
146
119
103
149
144
171
102
133
87
100
194
118
101
153
83
82
105
102
97
115
130
54
108
106
122
108
158
75
119
95
69
143
101
95
180
114
155
131
161
98
111
76
108
69
87
108
129
80
147
103
105
129
128
97
148
115
54
70
102
147
180
120
145
92
168
116
135
99
92
129
112
97
76
96
146
138
93
102
104
125
89
108
83
108
106
110
104
95
133
83
54
103
144
153
104
124
82
151
169
117
102
105
103
49
173
165
136
98
107
83
135
150
127
101
174
78
116
103
102
131
152
141
104
85
130
177
126
82
83
109
54
118
129
114
82
124
124
140
149
104
125
99
128
101
145
76
100
182
99
96
88
128
110
76
95
102
140
108
76
144
108
98
177
106
130
100
54
84
122
101
100
127
147
154
94
122
114
109
133
93
134
110
124
134
153
137
98
142
146
135
125
94
49
153
133
113
80
118
125
125
152
93
118
177
120
148
54
103
148
110
137
93
101
96
68
122
131
145
107
108
112
144
87
98
98
115
133
158
98
74
120
69
100
102
145
81
93
106
118
113
126
128
97
74
79
76
90
125
169
78
113
104
95
59
139
131
148
87
120
78
127
132
125
94
94
112
140
147
102
159
111
122
119
126
120
67
83
115
127
97
112
111
108
78
108
125
148
115
125
54
99
76
140
146
127
102
105
98
120
161
108
75
102
106
165
145
102
140
112
81
144
127
157
49
110
118
125
100
123
152
95
100
171
142
143
81
163
147
155
108
87
108
95
144
111
112
138
115
135
104
118
78
103
88
96
133
177
122
93
98
87
116
157
165
118
136
102
49
122
104
153
59
77
157
95
105
127
106
95
123
116
123
122
163
121
112
133
142
110
117
90
128
120
134
76
54
128
116
92
93
164
141
141
81
76
147
105
115
145
132
122
102
148
107
96
91
74
49
87
128
161
76
167
124
123
96
119
115
102
59
108
135
79
81
97
128
105
103
61
129
111
113
152
69
143
129
112
95
83
73
98
109
78
112
146
85
158
94
146
129
158
98
93
76
144
143
126
80
112
133
117
115
133
125
152
135
91
165
146
81
90
59
121
93
176
117
186
182
102
141
125
61
186
100
139
103
86
148
92
140
127
91
102
76
97
145
103
113
86
105
90
177
132
128
107
148
97
115
103
128
87
123
154
93
98
153
113
78
116
185
74
90
117
158
125
95
101
127
91
72
121
109
125
124
49
103
122
98
133
125
90
118
130
91
106
129
159
151
149
67
108
136
102
115
129
164
177
81
120
117
67
87
79
139
83
81
125
127
115
100
49
57
92
61
103
120
132
148
114
146
102
151
184
176
134
120
95
136
90
116
83
143
92
134
49
135
140
108
116
96
108
172
143
65
155
118
133
127
131
122
139
91
103
146
69
123
93
69
93
101
103
105
105
146
142
109
78
143
123
94
144
82
93
143
138
134
110
76
103
105
138
117
177
121
138
164
137
143
94
127
138
105
81
91
115
95
98
89
92
81
89
132
105
83
102
104
111
115
103
200
128
77
101
102
123
109
161
156
54
98
124
67
92
104
139
77
125
122
149
141
109
124
148
113
54
106
177
146
163
175
78
168
54
131
70
140
103
135
74
96
122
115
107
77
158
128
191
96
133
105
126
147
133
212
74
125
94
74
166
167
104
143
106
95
85
103
67
115
82
98
144
123
144
109
103
102
61
124
77
70
103
134
73
102
54
108
103
108
118
79
118
121
140
89
145
141
91
95
119
124
160
103
103
122
96
119
134
148
137
49
158
124
143
119
118
143
122
54
92
102
54
61
103
165
116
178
85
79
105
99
95
83
93
105
80
100
120
88
120
116
133
115
74
117
145
168
119
96
103
96
138
119
167
112
135
81
76
102
54
119
146
112
132
108
163
86
92
116
118
125
148
77
102
122
57
74
130
71
111
54
116
166
82
54
54
88
109
82
112
97
77
106
96
144
125
102
158
75
140
150
127
54
162
102
129
97
163
103
141
93
54
105
104
103
102
96
102
124
91
86
142
140
54
169
112
101
127
89
54
76
139
194
101
102
96
106
86
80
143
137
124
115
61
129
158
99
123
128
149
115
143
119
77
125
165
153
110
105
54
54
128
109
120
177
158
119
54
125
143
120
49
54
118
102
108
118
108
150
128
54
160
147
119
103
138
131
130
149
139
49
160
95
93
96
73
123
180
102
155
108
116
124
62
89
149
126
133
186
110
68
143
95
133
129
108
144
113
113
121
173
98
148
177
197
156
157
122
140
95
99
160
125
133
116
125
128
169
120
89
126
147
54
120
87
103
59
110
107
137
74
113
95
113
114
162
107
54
123
119
54
101
103
136
102
76
124
134
148
100
95
150
86
94
138
90
95
122
126
132
125
119
113
136
200
102
78
104
97
194
76
81
149
91
107
138
148
74
74
123
102
113
54
79
98
54
61
162
112
101
108
108
128
84
54
130
98
82
67
76
120
118
133
96
129
143
145
116
134
132
77
200
143
191
69
159
54
158
127
75
115
134
102
184
158
96
125
125
54
65
160
157
106
123
82
102
105
152
153
147
163
100
168
93
92
87
120
108
110
154
106
108
104
84
144
107
110
128
146
102
54
130
121
88
127
69
108
115
154
103
95
161
125
123
173
119
122
89
124
67
124
140
148
127
139
129
111
122
98
128
96
95
119
61
168
163
161
127
135
78
86
129
92
109
159
108
116
120
98
54
137
104
133
129
144
200
125
127
98
108
167
54
163
79
98
188
93
92
97
74
120
108
95
165
77
156
117
226
154
92
106
102
107
122
96
135
49
145
161
99
49
80
143
170
83
102
142
119
95
98
139
189
145
158
107
81
105
108
114
108
145
160
95
108
90
129
133
85
125
87
126
152
84
61
103
129
137
137
108
92
147
81
100
95
122
168
144
54
136
139
106
98
108
112
142
139
144
77
99
144
122
93
139
49
76
54
143
148
95
105
107
133
117
135
178
128
91
106
108
129
98
202
127
120
129
105
82
144
79
95
67
155
82
96
95
140
143
108
93
148
76
131
125
97
110
105
151
186
177
143
146
97
115
159
102
77
127
146
118
83
126
108
90
107
98
125
105
90
126
141
82
144
61
85
125
148
149
135
108
152
79
116
108
114
90
158
184
106
145
158
137
61
94
54
120
77
149
124
123
112
161
106
145
151
102
113
95
95
107
128
92
81
143
107
103
161
106
132
108
98
124
160
102
122
54
115
123
191
77
93
108
115
102
95
174
95
136
133
144
99
74
135
95
139
103
79
81
102
148
100
161
95
145
54
125
85
168
128
101
54
94
128
156
180
97
199
76
54
131
137
147
45
115
109
102
49
151
109
81
114
103
160
59
59
102
86
174
94
130
95
91
98
59
123
98
82
119
101
175
122
155
130
108
77
155
86
140
154
85
87
77
77
91
54
115
114
112
88
122
88
88
127
92
167
81
148
77
110
168
128
92
157
120
144
96
149
147
111
192
138
87
112
125
131
108
151
123
149
96
99
83
93
130
102
119
76
91
124
79
148
108
142
119
113
76
73
104
54
104
155
172
99
122
134
102
110
106
95
113
98
49
113
154
127
74
95
102
114
107
163
131
112
105
82
121
140
116
196
134
124
142
92
81
69
139
174
185
146
153
148
98
106
90
85
99
128
139
81
138
112
120
102
59
148
102
99
81
147
141
98
144
82
140
120
128
91
143
109
106
77
113
123
205
212
117
131
125
156
117
75
137
108
82
128
124
150
96
112
161
184
105
144
146
130
67
98
95
134
78
77
132
97
123
142
108
128
74
54
120
96
95
108
137
124
54
100
75
145
82
115
122
164
91
129
120
108
89
68
138
148
81
54
74
102
129
61
112
106
110
132
107
95
111
94
82
101
113
105
83
99
103
133
49
91
137
91
74
78
45
103
138
95
54
86
106
140
49
145
95
54
97
102
98
147
148
131
138
84
138
138
135
82
59
106
77
158
134
98
49
117
93
159
122
105
102
115
117
143
115
102
140
118
104
95
141
102
91
139
148
148
134
143
112
114
54
107
154
165
161
126
82
49
168
133
146
149
54
54
134
103
141
159
128
118
91
85
115
128
122
59
87
124
125
155
102
108
120
93
136
165
97
135
73
107
90
73
172
139
118
148
74
141
125
127
101
103
123
95
91
54
87
96
87
93
90
54
155
110
93
106
99
148
87
54
82
116
117
108
77
161
104
95
148
54
96
128
103
108
129
94
127
59
93
108
131
127
110
142
87
105
113
115
154
116
110
106
78
122
128
80
114
102
168
124
78
97
54
95
169
129
144
122
112
118
147
81
88
148
133
143
125
160
102
109
102
80
97
99
125
82
79
97
100
77
103
104
86
113
132
99
87
172
135
153
167
153
42
151
110
133
160
162
165
133
118
177
131
200
130
49
156
140
83
135
108
111
180
119
113
74
114
115
142
113
155
122
76
135
54
54
78
117
120
120
99
139
142
126
118
102
90
68
98
112
77
106
177
121
132
103
89
124
108
157
167
73
90
78
85
131
100
120
56
144
127
151
81
102
199
128
115
107
102
119
106
115
83
113
112
131
49
162
118
132
134
90
98
98
173
133
49
100
88
149
91
121
116
102
124
128
83
49
93
99
91
114
125
54
76
105
134
61
79
197
100
128
126
127
194
128
130
145
112
124
96
102
120
104
90
90
102
133
159
59
88
178
76
70
81
135
98
135
133
113
135
125
200
108
155
128
108
120
97
154
95
54
94
141
187
102
155
143
140
109
100
94
156
173
90
129
54
103
103
78
140
140
131
101
141
152
80
144
120
134
108
45
112
122
141
121
98
123
136
96
115
119
138
106
116
161
170
128
127
100
92
129
78
138
130
108
116
80
173
131
59
91
107
123
128
100
87
142
106
134
126
103
145
138
76
74
95
123
126
147
99
108
49
162
88
61
132
95
90
81
148
108
98
81
168
140
113
102
131
131
95
110
142
164
138
157
111
154
98
113
102
100
123
131
118
134
105
135
133
132
72
94
131
131
153
127
143
127
83
137
147
144
67
127
148
100
120
158
177
54
135
110
103
81
73
135
107
71
145
108
57
106
112
72
129
120
155
105
107
102
82
130
86
74
125
133
143
142
120
102
126
108
99
65
149
148
124
49
113
123
101
147
102
95
148
95
103
98
96
181
97
120
132
116
107
152
105
108
77
146
98
115
84
110
98
112
89
99
136
108
116
119
172
166
114
91
103
119
77
135
54
138
125
108
100
141
143
110
143
117
105
114
86
150
94
101
194
87
102
77
129
143
126
91
49
194
80
141
127
77
175
96
93
93
126
103
54
54
93
109
98
129
118
82
170
98
128
91
54
127
94
91
113
105
124
118
77
129
92
148
54
132
142
146
98
105
67
111
97
129
102
74
107
156
144
54
165
49
77
113
80
133
156
61
103
81
110
126
115
135
160
137
92
148
96
155
100
96
132
125
140
105
74
136
161
81
99
117
200
156
114
146
153
127
165
87
135
128
138
54
184
54
112
98
105
115
93
82
117
115
98
102
86
103
180
99
165
106
96
128
130
128
139
82
77
81
78
90
137
180
82
112
144
125
129
125
148
120
99
145
144
87
128
91
152
122
128
91
49
178
126
172
105
143
119
120
117
128
68
73
142
76
82
110
54
76
129
74
103
105
125
119
128
113
128
124
95
106
130
82
96
102
91
108
190
132
148
131
98
102
131
90
125
77
103
87
87
105
129
139
212
95
162
136
104
128
102
119
97
124
80
95
112
160
80
137
119
61
93
103
114
127
196
59
147
149
158
144
109
54
116
76
140
135
87
92
127
132
80
143
116
85
144
102
116
96
99
102
115
137
128
103
172
123
100
85
131
54
110
68
153
150
140
125
108
134
129
160
115
160
131
83
85
184
125
237
81
74
156
81
107
103
128
90
108
102
103
134
54
92
95
145
157
133
162
132
103
127
110
112
158
125
103
120
114
115
161
139
112
67
141
105
135
151
89
148
105
130
107
111
110
87
144
97
186
133
103
107
112
102
77
99
130
144
131
139
102
80
85
152
99
108
102
95
107
96
111
135
69
160
103
95
161
123
98
91
140
98
122
139
67
74
112
59
162
85
87
81
113
76
124
143
97
113
132
141
199
107
96
122
102
106
105
105
128
146
134
76
124
108
93
134
95
130
141
155
131
126
110
74
112
95
102
140
121
125
54
139
95
131
91
61
54
155
92
150
131
170
118
125
108
106
148
136
141
96
54
112
54
110
103
95
61
80
89
143
128
130
54
100
77
135
119
133
155
112
125
54
75
180
144
88
96
139
132
122
100
74
88
157
103
137
105
108
149
152
120
76
131
91
127
118
124
120
139
115
86
125
104
83
90
143
158
103
95
157
146
120
81
128
106
86
191
116
54
106
200
101
164
94
163
76
74
107
84
131
121
144
90
89
141
120
90
87
131
150
142
106
165
143
141
160
117
157
136
87
156
124
76
59
95
61
116
160
160
96
98
93
100
105
94
115
189
138
103
90
133
141
74
111
82
75
80
173
105
102
123
108
73
103
54
69
150
102
90
148
154
95
95
177
182
120
138
150
106
112
114
104
108
123
91
139
140
90
113
145
102
200
140
102
133
102
103
103
172
134
142
104
143
146
54
54
125
108
151
148
95
145
61
134
100
97
113
146
98
146
130
103
145
127
134
98
154
105
102
101
54
177
74
165
136
128
98
146
146
108
80
96
120
90
85
124
118
54
113
135
104
141
128
177
150
151
106
112
137
54
133
120
78
54
114
128
142
80
101
67
146
132
76
115
98
152
109
87
93
54
82
75
115
77
120
135
147
101
101
95
74
78
108
95
49
130
127
181
145
95
128
152
49
172
123
74
151
125
145
82
137
78
101
134
115
125
119
124
147
96
78
73
125
94
131
128
108
125
95
111
177
137
61
137
115
105
126
123
175
146
128
93
95
125
113
143
102
127
125
90
159
102
103
115
116
81
99
82
146
123
156
87
95
151
87
177
106
100
87
134
98
158
119
85
177
102
81
145
140
133
125
97
116
118
138
93
131
89
120
76
115
87
100
120
104
92
93
148
103
152
124
194
119
100
150
103
77
54
125
105
154
102
177
98
131
98
118
138
144
90
186
169
95
188
78
117
77
120
125
95
137
200
115
127
138
140
133
125
115
86
85
177
107
102
49
74
127
54
107
97
98
87
127
108
49
122
92
81
133
106
131
180
103
54
110
109
133
123
90
135
134
114
119
169
76
74
107
127
114
106
93
95
126
118
144
105
49
68
85
102
143
54
154
116
125
87
133
139
140
98
98
128
116
108
116
119
134
137
86
105
94
121
153
148
129
129
93
104
139
102
127
108
142
147
126
112
148
126
76
144
102
112
76
92
90
152
59
57
183
106
168
105
87
155
127
160
124
149
95
119
158
87
107
159
49
127
126
103
95
120
128
140
82
49
116
144
74
112
97
94
91
101
153
77
143
104
167
96
111
160
148
125
145
155
121
102
100
94
133
81
119
122
114
112
98
134
148
115
95
148
85
81
82
136
74
54
139
99
162
98
203
127
155
102
118
133
147
101
54
84
140
142
114
148
112
126
118
74
100
93
132
81
103
85
144
123
154
142
77
103
137
125
118
124
106
146
102
100
54
109
103
144
110
148
141
140
95
108
122
101
101
78
89
97
82
104
106
54
125
185
87
143
59
145
179
135
92
127
105
145
87
123
140
77
143
81
126
103
76
54
134
65
158
94
140
129
96
104
115
122
131
148
91
117
88
89
120
124
119
157
115
167
143
83
100
103
59
108
149
84
49
133
105
78
49
127
129
123
67
131
103
76
155
67
142
142
124
113
95
93
107
106
106
93
113
161
143
155
91
123
90
54
72
120
108
147
180
126
95
129
92
151
142
176
98
98
133
102
59
151
152
118
103
145
148
97
131
97
87
83
111
125
168
98
127
90
76
141
191
82
132
106
76
76
113
69
93
102
90
67
111
82
49
155
183
152
121
131
111
111
128
76
67
154
112
113
139
129
152
87
121
103
161
95
97
125
81
110
81
77
94
115
142
93
149
157
118
87
116
83
195
108
106
94
108
54
124
119
131
129
122
104
137
129
138
148
103
103
103
106
90
95
110
103
129
131
177
130
112
128
165
134
124
119
98
108
122
125
82
98
118
151
108
97
78
73
135
148
135
101
150
114
96
115
165
85
164
123
61
113
92
184
61
74
147
124
141
123
68
95
102
76
98
151
112
112
87
138
148
114
123
149
68
105
108
126
90
155
80
114
94
54
103
165
133
116
92
87
81
93
120
114
54
100
108
98
127
158
120
124
107
77
144
54
134
131
54
148
77
80
135
102
54
143
168
156
108
122
98
113
73
147
128
143
96
113
74
139
83
200
154
111
83
132
95
139
113
107
143
114
115
107
74
67
100
115
84
61
134
122
98
98
163
141
83
162
134
156
74
91
145
91
154
108
54
90
153
107
133
120
116
93
108
90
127
90
177
142
77
103
49
161
146
136
152
141
93
108
225
85
104
108
133
99
82
102
83
140
102
122
106
108
168
123
92
144
100
108
173
115
145
147
116
140
129
129
155
119
139
54
83
109
121
140
102
87
161
101
121
148
131
104
123
177
161
67
143
113
120
87
87
95
89
117
159
132
134
82
113
92
112
148
133
90
69
124
121
54
130
169
174
102
165
102
165
149
94
172
92
95
74
131
102
85
150
78
117
147
109
209
54
165
165
119
123
133
110
117
59
135
120
131
125
193
106
103
92
79
87
127
108
126
78
81
74
111
124
118
125
113
81
98
108
94
115
105
146
141
108
188
152
81
87
81
54
120
59
103
109
110
117
62
87
99
149
85
162
81
133
128
108
98
177
172
106
116
126
85
98
49
105
124
90
135
81
110
155
132
111
117
98
107
122
143
103
109
133
106
98
125
125
202
90
129
108
105
93
143
149
107
125
142
87
139
151
78
154
133
97
146
113
115
125
125
194
127
145
122
129
88
119
117
113
105
151
49
79
97
108
100
95
171
108
135
105
123
49
88
172
67
158
153
127
98
122
122
93
134
61
157
108
141
90
87
96
102
131
138
117
113
77
74
97
165
68
148
57
87
128
104
122
98
151
135
111
98
127
152
98
139
76
124
115
105
154
108
128
77
74
133
120
127
102
98
115
87
143
104
141
137
164
130
120
188
145
125
96
129
74
144
76
90
133
133
93
161
95
154
143
97
99
94
90
76
121
115
74
148
144
128
81
108
84
135
153
135
133
104
145
85
112
142
115
126
109
68
115
69
108
107
81
111
101
135
154
97
179
108
101
137
73
49
140
132
90
98
115
115
128
110
145
121
169
108
99
143
91
108
108
106
134
159
95
118
94
78
148
109
76
76
54
177
122
105
180
132
107
106
129
119
108
111
116
103
61
142
95
124
81
76
137
103
95
102
101
97
130
102
109
156
95
140
165
54
119
135
67
106
103
149
90
102
105
177
107
90
118
102
103
82
68
112
111
100
100
49
140
67
133
105
131
81
158
132
139
49
92
133
149
82
194
119
125
122
105
77
123
119
81
88
102
81
98
114
115
96
110
133
152
103
145
144
113
113
82
102
95
90
91
138
105
95
90
118
150
82
87
54
141
92
102
166
59
90
99
102
115
129
133
165
157
175
102
78
67
105
76
148
95
77
131
139
110
100
100
115
90
96
127
189
49
61
140
82
137
137
97
81
105
90
114
108
148
101
77
102
89
91
95
141
137
124
95
106
167
94
113
167
78
74
103
167
121
132
153
118
124
94
113
106
90
111
170
134
180
130
110
146
115
177
87
146
128
144
148
127
120
127
118
95
98
106
122
82
76
49
68
106
107
109
102
106
159
141
102
73
94
114
92
102
61
109
87
116
102
135
92
167
90
116
140
139
61
98
122
113
106
112
82
153
161
126
114
90
114
143
148
128
138
138
81
77
93
113
91
179
124
95
103
126
93
77
108
105
118
138
92
97
136
164
117
103
119
108
54
77
125
148
126
125
128
61
80
102
98
103
77
90
103
148
119
107
138
134
103
104
140
134
105
172
81
76
81
143
96
194
116
148
125
113
81
126
154
146
103
78
164
102
83
61
107
80
102
54
167
148
148
109
94
106
49
119
98
109
93
141
78
54
93
139
120
81
82
102
116
92
118
49
81
119
138
133
108
181
146
96
151
123
102
108
95
157
117
91
113
81
111
67
126
77
102
106
113
87
163
104
119
128
90
155
93
138
115
74
148
103
102
177
126
134
129
54
102
77
149
83
148
74
150
170
74
118
151
98
102
165
156
111
91
77
157
120
181
87
74
94
112
141
84
104
106
140
116
139
75
103
95
49
59
112
114
102
95
130
103
74
108
87
119
104
131
98
91
95
113
96
143
137
113
180
77
128
135
78
200
129
125
115
127
87
176
143
67
103
107
199
103
59
149
92
72
101
153
133
96
92
103
90
139
95
110
140
80
85
94
82
143
119
54
140
101
159
93
148
102
141
177
103
122
120
112
152
148
127
68
117
133
117
78
100
109
147
85
95
167
77
148
72
151
129
158
127
125
127
122
49
163
125
128
77
149
74
100
140
145
116
106
120
121
120
84
158
124
76
128
112
135
122
54
111
95
81
113
128
114
108
143
141
102
45
105
139
142
119
125
92
102
108
129
111
148
158
158
102
112
91
150
125
112
133
134
135
90
86
86
127
148
108
85
125
74
49
168
131
85
108
116
129
97
91
76
123
61
106
90
112
92
97
107
161
54
85
120
185
110
129
113
156
144
97
95
131
139
131
96
127
134
147
124
133
102
147
144
128
105
85
90
98
77
167
168
98
125
95
108
194
97
67
125
105
167
103
143
102
118
140
139
122
95
131
121
146
92
98
145
123
95
81
137
105
49
103
97
130
113
56
185
96
124
117
124
161
98
122
102
194
75
129
143
119
82
145
136
96
148
118
166
87
89
126
96
110
145
103
194
95
74
234
136
102
158
128
95
116
138
112
97
113
100
127
138
108
138
99
120
113
49
190
156
151
102
122
91
143
90
168
108
138
106
122
133
78
149
106
98
77
165
171
97
102
95
151
67
101
95
125
107
132
84
139
91
74
106
158
72
102
173
117
148
82
122
93
90
136
137
148
84
90
133
82
87
168
128
129
104
161
98
96
85
123
68
111
102
83
94
104
115
107
96
120
138
127
119
49
113
148
59
185
99
117
105
96
151
161
151
163
54
102
108
67
119
145
93
138
114
119
111
108
54
89
141
123
95
102
168
102
98
102
108
111
126
153
129
98
149
133
136
148
131
178
89
54
106
153
91
115
98
87
141
105
115
105
170
125
167
152
140
143
102
107
182
116
78
91
144
146
107
107
156
111
157
188
133
59
91
121
118
54
105
128
76
129
83
74
114
112
67
49
65
95
117
119
98
54
142
108
108
114
131
93
93
147
99
77
68
136
123
144
54
119
95
120
125
159
95
108
181
131
82
90
110
102
54
135
105
82
125
126
130
132
67
133
106
67
122
135
105
103
144
146
59
93
133
105
96
96
120
136
76
76
102
54
165
74
108
86
54
95
147
54
99
90
139
140
186
122
116
108
115
122
146
72
102
127
69
128
79
98
119
158
105
133
122
62
90
102
82
96
109
77
105
127
150
85
108
133
108
115
146
68
112
136
133
108
95
113
164
179
141
45
93
113
89
54
78
108
94
108
107
133
82
122
54
54
122
145
111
135
132
135
96
83
148
107
135
148
179
158
110
151
105
78
45
73
99
110
132
108
104
133
95
103
142
131
121
140
128
131
89
103
128
76
135
94
120
112
81
144
96
134
102
81
125
146
180
131
133
115
170
168
150
91
121
143
130
54
94
118
131
109
95
75
124
119
140
144
87
98
87
151
149
97
145
111
143
93
85
111
133
103
87
54
129
126
181
80
108
104
161
113
188
178
103
150
69
83
113
124
81
108
153
143
139
95
61
81
129
90
148
140
106
120
80
107
127
131
141
125
131
98
88
82
127
54
118
168
147
139
133
125
152
105
127
119
113
95
104
168
139
61
74
120
124
124
151
185
145
177
99
160
118
128
109
115
143
54
139
103
110
149
95
148
59
106
114
167
87
117
134
98
87
112
119
116
107
89
102
135
131
146
95
148
108
95
81
113
81
108
102
90
105
144
90
122
95
84
122
107
150
49
128
179
99
108
96
54
142
142
155
87
92
76
128
95
102
101
76
121
104
94
97
81
131
133
93
73
158
102
49
102
114
102
145
151
168
140
97
74
142
152
114
150
127
76
147
89
134
98
83
133
131
141
111
102
108
89
143
109
106
49
111
151
139
122
97
146
111
155
112
158
49
175
145
118
65
131
144
108
95
59
108
133
99
133
140
186
106
105
92
86
98
54
123
62
74
125
157
131
130
99
165
102
177
145
67
89
119
81
155
177
94
77
113
88
141
115
111
112
113
76
106
165
130
145
124
67
128
112
133
45
126
127
134
133
180
115
170
97
103
155
148
90
76
134
159
54
118
59
108
95
92
75
144
95
102
108
59
118
133
148
125
59
111
97
88
116
117
98
147
113
141
145
179
82
115
138
146
107
98
95
76
102
102
77
128
98
165
111
95
125
158
54
96
103
105
75
93
137
115
97
111
145
54
135
75
127
114
95
103
134
116
145
172
163
87
186
108
102
107
135
107
121
90
67
54
83
162
95
144
124
125
132
113
153
127
90
120
141
107
146
104
92
146
126
79
118
95
102
107
81
118
126
138
79
120
115
77
88
108
129
115
120
102
80
113
177
114
122
111
110
141
127
113
49
131
99
96
74
100
149
108
113
125
104
76
89
133
100
105
102
98
105
125
103
139
163
59
126
107
102
118
134
168
108
101
177
179
98
95
76
154
120
139
107
67
84
140
124
143
152
111
87
170
138
113
114
95
161
115
128
93
90
104
118
100
97
94
165
90
152
170
74
110
84
143
166
98
110
74
91
114
145
76
91
149
141
158
97
108
103
113
78
130
102
122
65
77
85
111
102
102
116
148
128
135
108
74
102
141
76
117
93
161
61
74
143
90
130
139
140
118
81
101
42
111
96
172
113
156
134
145
107
143
92
129
82
118
96
96
133
136
131
80
81
165
135
121
106
96
71
108
102
137
179
186
102
106
146
54
118
126
112
89
101
108
137
98
199
95
91
82
108
108
111
104
73
135
133
100
80
136
95
110
106
141
54
99
77
121
83
143
95
89
103
117
97
200
123
118
176
101
124
169
135
202
110
110
95
112
131
143
54
95
105
159
106
101
103
100
112
152
120
90
195
73
134
123
133
179
132
109
122
111
107
131
102
143
61
132
98
163
85
102
84
106
143
134
99
142
95
126
114
191
141
142
133
108
98
155
161
81
59
188
155
85
128
123
143
114
132
133
98
112
76
114
183
101
131
139
122
108
113
93
93
133
61
75
81
61
100
94
54
96
104
102
134
154
136
127
102
128
98
127
105
115
98
90
92
149
110
132
82
78
139
123
112
130
93
76
123
148
96
74
78
108
165
167
168
118
200
95
116
93
137
127
83
125
128
135
105
76
96
124
54
100
82
112
103
98
194
110
113
113
118
133
138
194
103
102
127
139
119
114
150
124
137
100
118
104
145
165
144
108
82
93
129
177
131
140
104
118
93
119
135
74
61
98
149
118
119
90
120
148
119
54
150
144
54
117
92
128
117
106
119
177
90
139
106
122
200
115
101
78
115
186
76
54
114
107
128
104
119
95
115
120
139
77
155
98
140
84
108
145
109
82
95
169
82
113
100
152
76
100
92
146
124
54
124
119
100
118
131
107
141
150
135
120
105
122
103
154
86
108
102
164
59
119
81
118
141
49
139
105
98
158
121
92
119
115
102
113
139
98
146
116
139
129
135
172
78
54
94
103
102
122
54
129
105
100
59
70
49
99
145
96
168
112
126
108
146
101
105
128
150
90
147
110
69
123
93
81
92
89
125
74
146
94
120
98
184
156
168
103
74
68
151
177
123
97
169
132
93
110
83
115
108
136
104
131
149
125
74
113
80
145
106
127
128
184
122
145
68
156
91
93
141
95
105
113
107
132
98
120
98
67
80
92
153
105
59
76
125
59
132
109
88
136
95
170
76
99
113
104
104
79
76
117
136
96
93
98
102
138
83
125
122
74
113
70
87
119
116
148
61
87
119
106
102
86
104
98
150
54
114
131
179
155
162
134
132
145
87
116
133
126
80
125
90
150
133
113
179
102
112
98
84
135
132
81
161
144
108
80
112
54
87
90
150
109
117
93
78
134
96
67
122
99
126
148
140
133
148
144
100
177
144
113
115
135
146
122
185
49
106
104
177
131
125
80
139
94
103
118
100
95
87
110
177
123
135
159
158
98
127
91
105
147
95
129
76
80
125
102
145
112
144
128
114
108
54
152
152
152
130
148
136
122
59
158
77
125
103
102
100
133
105
144
76
85
161
71
135
182
95
112
105
106
100
149
96
108
109
80
74
105
130
59
139
125
95
98
98
108
74
54
155
120
84
95
158
79
126
135
136
179
135
96
114
138
104
67
123
140
94
127
87
133
80
120
67
93
98
99
116
120
102
165
173
104
49
89
113
80
98
102
95
179
103
85
169
131
119
59
91
135
107
153
54
54
109
148
77
98
87
125
94
102
108
131
99
54
128
128
59
128
99
67
103
105
141
49
120
136
102
117
81
139
142
68
139
107
143
162
103
81
117
142
90
106
83
105
77
156
92
102
90
113
130
94
103
145
153
106
141
98
157
83
59
161
133
98
102
115
136
125
87
102
159
110
95
126
110
143
61
68
94
120
125
90
140
82
74
93
54
103
88
107
93
87
98
173
136
125
138
73
102
120
124
122
73
85
155
131
134
123
107
77
100
67
98
91
94
142
138
154
140
98
138
112
121
94
116
144
125
142
100
108
81
151
54
93
115
49
102
142
134
152
125
143
123
178
95
95
122
110
125
177
108
115
95
121
113
144
106
100
118
93
102
139
93
126
110
120
164
90
132
124
144
162
83
125
128
81
137
103
98
154
121
96
109
126
93
115
122
104
156
132
162
102
153
139
91
139
76
101
142
179
81
117
156
117
106
138
110
148
140
54
104
98
116
142
74
56
148
88
97
151
102
100
74
131
90
169
49
107
125
96
102
102
143
59
93
89
152
125
95
125
95
108
80
151
116
75
128
112
127
154
115
108
98
127
54
74
120
120
68
144
161
140
116
111
82
133
89
133
165
133
169
133
81
158
92
77
108
49
92
148
97
114
135
139
155
105
79
81
138
112
122
49
102
129
180
127
128
162
49
150
143
116
131
161
98
98
113
134
108
93
111
90
73
76
102
110
99
110
149
110
144
84
93
167
158
143
95
89
128
125
163
140
82
156
91
141
128
108
153
135
143
77
65
54
104
139
108
101
110
90
179
122
170
81
162
125
165
141
120
102
110
102
107
157
170
102
152
108
90
120
108
79
95
54
94
76
111
120
180
101
122
109
104
127
83
98
69
157
100
142
87
103
98
105
74
87
74
108
122
90
54
107
118
59
110
85
115
126
91
155
158
54
120
93
127
89
143
151
105
117
73
108
68
120
108
82
54
123
102
126
139
118
114
177
143
134
130
108
59
128
114
77
123
108
98
104
130
128
49
98
93
169
78
88
144
105
90
119
78
170
99
135
49
101
177
78
132
97
109
91
87
114
54
120
131
185
94
54
136
108
119
135
61
95
124
124
153
141
118
170
146
134
179
128
93
166
149
59
121
140
131
59
128
59
172
161
128
158
126
125
54
104
122
98
88
125
102
108
132
141
139
118
125
122
137
100
98
98
158
90
67
101
98
87
136
112
104
146
144
89
54
74
77
92
145
145
77
161
105
98
143
115
74
128
149
147
87
118
144
164
127
108
100
104
80
103
161
128
161
125
76
132
113
103
124
110
160
134
78
122
103
177
114
102
138
108
74
126
146
182
98
81
101
116
148
95
143
98
89
127
116
101
131
82
153
81
108
129
104
93
107
114
143
129
125
97
111
133
150
95
54
153
139
107
105
86
112
128
172
85
142
147
158
130
49
113
161
87
168
112
134
135
105
151
82
99
113
177
90
80
95
106
83
49
121
103
117
123
105
98
137
143
119
101
108
100
140
95
83
124
88
76
106
182
127
92
188
82
144
139
98
83
69
123
122
95
173
139
95
142
79
125
131
110
115
135
104
117
67
133
49
179
74
105
98
90
125
96
76
91
150
171
121
127
98
96
98
104
133
112
96
150
88
117
93
135
112
119
147
83
134
54
108
110
105
93
81
128
119
146
105
158
132
94
110
83
129
90
103
133
130
126
160
165
98
139
128
96
111
103
148
54
174
177
113
80
115
115
90
153
45
128
102
155
113
144
122
95
138
106
132
159
172
101
119
122
129
116
133
129
112
143
142
125
129
59
145
59
99
127
163
108
113
77
152
105
95
125
136
139
69
104
82
74
114
144
110
113
111
130
54
98
81
79
159
81
131
98
155
133
97
81
156
125
148
144
143
112
96
153
143
54
123
68
150
138
93
123
161
113
112
145
104
186
59
112
118
125
117
101
104
54
148
95
124
76
105
125
108
82
110
85
77
111
54
116
116
100
131
97
100
100
113
54
119
107
88
111
151
135
137
54
107
196
115
101
110
94
148
163
134
97
54
180
148
98
129
128
91
108
143
98
97
94
159
108
74
143
148
103
133
129
102
77
87
143
108
81
99
89
137
175
128
156
113
84
84
115
109
135
93
135
76
54
121
180
159
100
98
129
125
142
113
136
97
95
147
132
102
84
77
71
49
125
117
127
109
108
114
133
87
137
90
106
177
81
107
107
93
141
92
148
95
76
92
98
132
95
135
108
102
54
123
92
135
81
171
111
74
95
125
67
108
146
54
128
121
83
127
125
108
101
102
93
102
92
54
90
124
130
168
127
89
157
74
156
120
148
98
99
135
105
91
54
102
139
127
74
105
168
133
162
102
95
77
104
116
95
144
115
161
144
98
133
111
102
145
94
74
65
85
128
93
54
108
126
97
126
145
124
113
100
166
113
104
45
116
99
106
122
90
54
121
59
148
102
106
95
152
54
54
102
81
98
105
74
135
68
49
188
122
149
95
127
95
118
117
173
146
109
131
126
145
54
124
78
168
149
122
77
149
129
110
54
81
68
136
90
94
135
54
108
78
78
153
83
96
179
97
142
114
87
165
80
168
80
106
111
181
165
129
103
112
109
103
124
124
111
78
99
122
135
85
139
96
148
103
84
116
148
158
173
131
109
81
158
150
125
134
54
115
113
103
112
144
99
95
141
128
172
87
112
122
149
148
119
108
96
90
158
148
158
122
77
85
138
141
125
101
82
130
54
130
127
109
158
162
118
141
143
83
54
148
54
87
107
81
98
100
76
94
67
88
128
93
107
72
125
144
113
133
156
87
101
130
93
135
142
95
154
149
102
113
123
117
91
115
114
153
126
139
96
118
95
112
151
97
83
95
104
103
72
168
76
165
102
131
131
54
194
143
126
101
136
108
59
98
140
137
88
118
113
127
95
146
129
54
81
78
102
49
105
126
172
102
128
137
107
131
93
117
87
93
129
81
84
92
54
113
133
112
109
86
96
135
110
86
145
124
139
200
148
49
157
98
103
155
99
155
106
98
114
82
97
124
95
131
98
54
118
113
142
95
117
170
85
54
154
94
127
103
133
105
85
123
104
147
108
124
105
108
99
108
82
119
148
116
145
131
158
151
127
111
146
156
68
105
106
128
170
117
90
90
158
84
195
67
122
122
81
119
160
87
127
95
161
128
146
116
135
136
114
122
155
148
112
177
108
87
112
134
101
133
131
106
130
102
178
93
112
144
158
101
125
108
137
176
147
124
107
90
113
170
139
108
111
103
54
113
133
124
102
111
84
108
108
125
78
147
93
96
150
92
107
199
90
128
94
119
85
144
142
95
87
140
112
108
80
67
102
92
113
121
128
81
122
123
182
118
125
89
87
84
163
125
77
151
128
131
54
77
112
102
166
101
105
109
111
120
182
140
180
69
93
108
146
103
119
116
92
97
94
133
114
101
137
144
118
90
113
95
59
74
115
97
114
76
103
115
59
54
126
113
90
101
81
125
111
109
168
85
133
123
139
107
149
108
103
99
102
131
120
145
102
96
141
67
87
119
102
90
54
128
49
125
99
106
120
82
112
101
120
124
59
124
163
148
131
143
129
130
123
129
128
157
139
90
163
123
165
145
125
144
86
144
69
92
97
105
112
148
149
133
151
116
137
139
92
67
70
163
87
137
76
49
132
103
125
59
135
167
88
89
175
141
145
131
115
130
86
111
78
82
100
120
91
105
98
123
61
116
92
98
138
112
109
54
102
133
95
76
166
103
102
100
83
157
183
126
101
143
124
133
73
108
125
95
95
129
121
164
129
85
112
65
54
77
88
98
152
154
138
138
146
131
107
128
145
95
143
100
122
54
98
170
153
102
133
54
83
84
89
125
141
100
68
177
95
181
131
103
146
113
104
117
108
125
105
157
87
108
186
163
105
90
100
87
103
104
147
95
128
118
87
131
133
175
160
94
90
95
128
114
159
131
102
96
98
105
135
128
89
118
131
158
95
98
102
144
95
102
118
184
157
54
114
130
164
78
125
112
96
102
89
179
95
87
149
152
89
106
54
87
128
157
73
80
103
131
127
167
59
68
81
98
81
116
107
169
94
154
135
76
70
95
74
180
93
108
101
131
104
91
59
148
137
115
81
126
125
141
140
104
120
59
54
95
102
102
144
116
98
108
69
159
141
100
126
160
103
126
99
112
97
103
123
94
131
121
127
92
89
102
112
144
150
95
91
59
120
77
137
148
131
150
54
149
161
95
95
157
133
141
126
95
131
142
83
107
143
107
134
98
108
112
157
104
97
126
92
81
116
144
118
54
106
169
114
90
67
103
130
142
82
140
54
139
128
59
144
180
99
135
54
92
118
54
154
147
134
120
85
87
70
105
162
149
153
98
95
101
132
107
136
108
108
137
102
97
143
89
105
137
61
87
54
85
150
62
112
146
112
105
74
81
87
153
126
123
98
109
98
95
94
96
137
125
114
98
108
89
134
108
133
49
95
148
86
168
143
82
99
119
117
124
105
104
140
96
158
65
83
54
142
75
103
141
102
86
118
54
98
129
106
177
108
135
97
114
133
127
59
88
77
125
131
105
141
161
131
118
120
101
109
148
113
133
158
169
126
81
106
98
125
125
150
59
82
129
103
122
143
90
121
114
81
102
131
89
92
131
144
103
134
150
112
125
133
140
128
113
106
156
77
102
164
122
125
166
127
128
157
146
122
108
117
119
112
127
113
100
87
158
134
93
110
96
139
148
135
113
102
111
193
95
110
107
132
199
165
197
120
49
54
96
108
102
83
102
113
54
160
111
103
120
122
76
81
156
127
154
141
109
108
105
90
119
112
141
163
135
103
129
93
113
118
74
105
135
102
108
118
80
54
94
156
96
130
150
117
80
118
139
103
159
129
106
123
74
144
130
105
124
99
59
158
154
134
115
135
116
101
93
119
125
179
161
155
125
135
102
99
137
116
79
106
115
129
91
114
95
127
147
110
100
78
112
119
112
119
120
135
85
115
89
130
123
135
138
109
123
98
161
91
88
145
90
118
162
86
121
98
133
81
126
95
65
106
155
127
78
94
76
95
110
68
116
112
125
81
102
137
90
143
108
95
82
95
146
54
122
132
120
198
165
95
90
160
54
111
124
126
112
125
87
115
123
54
80
135
158
133
146
128
148
76
131
103
70
96
152
95
81
76
97
90
89
88
98
131
106
100
125
131
78
110
74
156
111
97
139
106
103
81
156
151
117
99
93
49
151
167
133
182
138
107
101
152
144
95
113
59
87
131
115
136
95
149
108
83
77
102
115
80
122
138
108
158
109
110
54
146
135
113
77
128
108
74
95
78
98
148
113
82
146
94
80
126
95
101
126
90
106
61
124
111
130
76
128
98
102
102
61
75
107
102
143
155
125
99
143
88
131
158
158
105
110
100
87
75
83
90
102
81
122
194
89
120
89
89
139
139
103
105
141
125
168
85
138
49
96
139
147
135
108
74
95
54
108
119
115
74
165
171
91
121
160
82
128
110
84
108
112
148
115
101
172
115
133
125
80
106
92
67
186
162
157
148
131
120
123
162
54
103
84
108
59
136
149
114
98
126
97
105
116
93
78
85
135
82
165
132
138
146
82
68
149
79
54
83
107
102
144
54
102
116
153
98
69
106
150
124
114
67
95
131
123
68
105
143
61
96
143
132
138
125
106
49
81
98
127
105
200
104
104
84
145
81
118
74
130
78
141
103
196
118
87
87
101
104
106
81
68
133
118
83
69
116
98
93
102
81
125
100
95
87
107
90
121
157
82
102
98
151
90
61
129
89
81
133
132
139
184
132
120
100
107
117
110
122
136
113
167
102
95
125
129
82
102
154
133
76
144
133
96
126
123
119
95
108
115
85
92
164
161
126
104
160
121
180
124
125
93
131
178
98
54
126
163
127
148
135
138
147
120
148
125
81
117
54
146
129
85
127
114
78
104
110
97
103
98
125
125
59
103
130
96
78
105
71
68
147
137
111
126
97
110
93
141
88
170
98
119
145
140
108
125
74
106
90
90
113
145
137
98
123
177
57
139
167
98
135
93
92
89
107
129
113
81
105
81
98
127
112
113
148
146
170
127
116
119
113
109
113
54
155
93
129
148
98
159
78
81
109
170
127
125
182
124
122
137
91
74
138
132
80
105
102
78
125
59
123
117
89
137
148
107
141
100
95
54
163
102
118
191
161
77
54
93
143
87
148
124
175
148
116
101
158
86
148
108
118
99
49
113
108
81
96
98
104
81
81
69
175
108
194
119
109
68
102
115
128
133
81
140
87
82
140
93
105
54
107
164
54
67
102
101
99
131
87
117
112
111
93
129
103
135
97
144
76
91
138
148
67
163
96
125
107
175
125
131
103
87
128
49
85
118
162
124
108
118
95
134
131
127
137
83
144
91
185
120
143
138
144
49
95
129
145
81
109
105
77
54
49
120
104
98
74
128
54
180
84
117
120
124
112
107
115
119
188
119
94
105
54
49
87
105
108
108
177
123
160
146
77
174
145
120
119
114
92
172
122
184
182
112
128
147
120
135
138
113
131
129
108
160
140
147
161
142
98
89
129
95
140
163
115
129
140
113
71
124
70
139
131
83
129
127
129
127
138
142
140
97
161
166
54
112
132
85
131
175
90
102
106
123
106
113
127
125
131
90
145
98
163
90
49
146
135
124
113
125
112
117
117
103
106
151
81
153
97
90
97
142
106
127
91
97
74
67
126
94
99
136
95
130
115
82
82
72
105
105
125
108
177
119
115
74
97
110
59
95
169
149
131
96
122
137
106
102
127
103
99
93
68
87
135
103
154
121
144
98
54
158
113
118
108
125
101
102
123
135
131
116
157
61
121
149
146
131
139
98
149
103
118
145
146
108
169
87
90
82
95
116
128
108
85
115
114
132
80
163
114
61
74
126
87
125
83
108
108
96
108
67
113
115
82
132
107
81
102
157
109
190
140
83
153
96
92
59
108
120
158
127
135
127
87
113
117
87
112
121
102
114
102
145
134
134
153
108
129
128
104
120
79
134
141
111
129
102
101
97
93
82
166
87
99
136
145
67
113
115
93
98
132
166
129
146
77
54
109
99
106
87
95
110
74
95
81
125
95
132
143
103
111
148
100
138
96
69
159
141
131
110
139
49
108
111
95
147
147
152
127
137
100
138
120
125
102
146
98
100
124
113
119
105
91
85
161
90
124
87
119
102
108
125
68
120
98
177
102
144
85
102
67
77
150
107
76
113
114
95
80
117
106
127
108
105
81
110
82
54
133
193
81
121
150
138
142
103
118
159
103
67
182
90
121
172
123
85
102
79
108
143
127
103
151
77
95
69
59
174
104
140
151
87
116
195
108
140
120
157
109
133
134
97
156
109
178
114
93
143
124
138
99
107
127
119
102
90
49
69
128
151
148
125
109
126
102
85
116
81
108
117
90
150
96
108
87
117
126
109
112
54
113
127
108
68
108
122
131
155
93
102
97
102
136
76
114
128
107
80
54
137
106
74
139
95
93
95
177
54
95
93
225
131
105
67
140
122
98
149
140
120
140
122
103
77
76
141
69
85
108
100
116
122
152
123
118
85
160
74
82
100
125
135
108
154
97
145
95
169
144
160
111
101
141
54
82
81
101
158
153
150
59
117
142
143
96
77
112
54
134
95
139
142
120
147
95
110
82
135
179
121
128
54
137
102
95
125
108
97
107
97
98
189
145
110
140
130
106
90
129
93
168
122
125
135
135
85
133
67
118
106
103
160
120
113
148
139
96
101
106
158
109
110
118
89
127
99
100
128
139
81
49
115
108
114
110
97
82
110
54
143
114
97
131
82
85
80
133
121
118
128
79
57
89
131
147
101
196
124
74
98
167
108
135
90
105
148
127
107
93
122
101
169
128
95
108
145
165
77
113
105
77
123
92
108
92
101
120
106
120
106
87
113
139
108
105
87
115
128
177
121
103
82
152
141
108
101
105
54
86
126
106
97
90
74
122
113
85
165
129
91
137
112
124
117
162
145
100
106
117
125
76
107
98
77
119
143
49
104
109
131
144
103
200
137
114
149
135
127
102
95
180
129
163
120
108
139
143
120
108
74
118
99
148
54
146
167
131
135
81
102
117
135
133
85
102
119
133
113
79
87
101
82
120
68
163
81
74
130
117
140
119
106
119
150
121
93
170
96
108
124
93
127
112
115
125
135
113
77
124
111
107
95
143
115
99
109
132
127
59
106
114
91
67
146
144
118
165
129
158
108
108
171
160
128
61
194
89
106
106
68
177
54
127
129
132
110
123
108
115
164
106
136
110
112
132
108
155
140
78
71
93
119
102
122
125
129
102
152
98
99
102
77
139
115
129
100
107
93
177
54
129
132
181
99
102
163
54
136
124
91
115
135
118
131
112
98
109
140
191
147
126
81
54
95
90
105
81
108
61
160
132
103
140
137
164
124
127
105
141
80
124
118
144
152
86
115
112
117
112
186
61
157
132
76
137
167
95
118
54
125
122
129
133
150
147
103
148
180
80
98
101
76
113
98
124
132
107
87
106
97
87
172
125
148
82
74
158
153
154
150
109
100
49
93
114
103
68
83
61
105
95
103
198
102
54
113
95
106
74
91
117
96
145
120
100
128
125
149
147
54
77
135
87
81
78
81
99
118
54
135
76
139
145
90
102
98
102
118
131
139
95
114
84
139
74
49
93
59
128
100
116
100
74
85
149
145
102
92
127
106
114
118
105
92
156
94
177
160
93
117
135
133
151
54
109
54
95
105
127
90
105
95
169
120
102
108
92
123
108
81
102
153
145
146
68
131
98
93
124
90
102
148
119
140
98
144
125
151
108
82
125
177
77
68
116
49
84
158
172
54
102
59
110
99
146
117
108
49
68
116
118
128
98
102
168
126
168
81
117
114
113
108
120
141
99
124
134
133
87
100
120
123
108
109
90
125
121
125
131
158
110
158
77
169
137
142
102
116
129
54
74
128
49
57
136
74
82
113
148
132
140
87
129
108
138
147
101
59
101
152
108
108
141
104
141
122
105
127
135
103
91
102
127
132
149
157
85
109
124
151
67
108
141
99
87
177
113
119
143
85
156
140
117
111
126
144
95
92
115
140
103
102
115
128
108
141
134
102
94
59
107
125
160
102
110
99
132
118
116
126
133
98
141
89
118
129
83
104
69
90
133
123
124
102
148
95
122
143
146
71
88
91
144
153
162
122
122
49
151
105
148
81
104
77
105
128
102
73
118
94
141
82
192
148
158
105
103
49
148
120
120
190
108
152
98
119
102
88
123
131
147
59
149
110
81
101
159
118
135
148
102
138
118
113
122
108
98
155
76
102
95
142
148
142
127
163
120
125
97
95
140
157
146
143
98
103
156
110
109
81
68
130
102
74
149
73
54
108
66
103
54
96
120
121
89
102
77
122
120
108
164
133
125
154
108
140
129
103
123
92
95
125
85
98
101
108
107
95
105
155
119
134
147
108
150
108
139
105
162
143
193
182
89
150
192
100
97
158
116
142
144
103
108
133
138
133
107
138
164
151
186
150
105
93
125
144
139
113
127
124
155
92
117
76
112
87
169
177
143
82
108
162
71
160
102
135
110
111
99
122
88
108
122
115
147
133
138
91
88
99
106
85
130
165
102
146
147
105
118
129
54
145
67
98
92
135
131
85
120
108
89
133
106
93
75
164
151
102
141
76
103
149
134
106
104
157
125
171
104
135
102
112
87
103
111
125
81
205
104
177
99
93
96
167
85
142
160
113
186
127
121
95
107
169
54
80
54
84
97
131
113
168
108
143
127
81
112
170
54
89
140
123
154
148
145
208
125
113
83
160
104
76
177
134
95
210
89
65
77
167
89
131
112
125
95
148
108
95
102
125
70
125
99
125
133
73
90
93
128
148
95
112
106
131
99
137
77
122
129
105
69
104
84
132
102
67
123
105
54
116
119
115
110
108
78
67
161
95
130
112
132
161
133
148
123
115
124
77
135
120
139
74
174
103
59
81
98
120
136
150
116
180
49
95
101
138
205
89
77
83
146
160
59
81
49
54
115
200
154
134
127
127
128
193
143
152
73
108
83
116
134
81
147
69
98
135
108
98
90
131
114
131
98
126
98
105
109
124
135
131
98
148
97
114
82
134
86
54
158
127
110
144
106
120
74
69
176
90
137
120
148
119
107
54
89
96
74
82
159
129
168
143
109
158
98
102
107
97
145
144
147
108
123
144
148
76
177
167
153
93
110
93
49
143
200
131
93
122
148
105
84
154
143
105
77
118
130
102
49
108
132
98
98
74
111
106
105
131
127
110
89
140
121
69
91
61
90
102
87
110
110
87
129
114
83
172
151
74
139
91
95
98
82
143
49
114
105
161
161
90
105
107
93
54
163
123
146
118
165
123
83
82
126
108
96
111
161
124
103
119
106
131
108
49
138
106
150
126
101
111
78
191
113
177
148
148
157
125
80
83
188
82
150
128
109
125
127
155
148
101
161
115
77
77
54
165
105
103
132
157
121
140
128
176
74
162
77
95
126
106
99
159
108
105
96
140
129
122
88
123
103
118
85
149
144
128
125
125
124
162
98
103
54
111
128
90
143
128
104
106
142
106
103
127
82
105
140
124
69
144
124
78
96
97
150
120
97
105
82
54
120
107
160
124
125
105
120
76
116
125
165
95
87
130
102
61
91
114
129
108
90
99
75
179
149
125
74
117
98
97
122
95
108
87
108
127
98
87
54
138
133
129
110
118
149
148
104
111
124
98
130
128
105
152
176
177
141
108
166
116
108
98
143
143
140
99
148
114
137
126
69
105
91
90
150
95
106
67
102
118
165
76
98
169
95
138
117
108
135
97
96
102
143
125
133
54
120
103
127
130
104
127
161
105
94
92
125
167
96
73
102
169
131
144
112
132
114
161
105
74
119
108
119
145
54
108
102
103
176
102
149
113
107
93
76
85
120
95
104
74
148
122
122
77
90
160
90
49
78
180
102
108
121
161
127
122
180
77
90
120
168
144
123
125
139
118
75
120
120
59
84
124
147
168
111
116
119
67
135
125
101
77
87
95
130
118
110
83
164
78
120
70
49
121
49
128
130
98
105
102
141
96
125
148
79
96
68
92
122
97
102
105
132
116
129
98
150
159
118
153
153
150
131
106
154
101
139
93
108
83
80
93
88
76
54
177
87
67
103
133
143
216
109
144
173
131
149
147
108
141
148
105
74
139
103
87
95
94
121
118
138
142
103
89
132
131
103
81
115
133
101
125
80
89
120
80
126
90
95
135
108
166
192
80
102
118
113
91
145
90
97
127
159
91
54
103
107
113
123
74
105
120
133
91
142
125
111
87
104
95
95
153
129
103
107
115
112
146
123
81
148
90
93
140
59
121
122
78
144
119
95
104
149
111
59
98
126
106
106
81
140
105
95
188
116
158
125
136
142
97
91
98
54
149
148
143
54
105
95
54
172
155
95
96
135
107
90
103
109
101
127
153
163
136
102
147
84
106
113
61
154
146
99
96
179
185
133
161
93
139
67
113
150
108
169
140
87
54
105
99
103
200
78
147
63
78
118
129
81
128
117
117
79
150
108
108
95
115
148
156
148
115
90
86
61
110
108
125
110
141
115
123
125
108
158
96
153
83
103
122
91
114
138
132
167
81
104
81
54
108
98
87
127
59
78
125
177
82
168
148
141
146
138
147
76
112
99
133
95
54
95
111
144
133
131
127
144
107
156
120
234
149
102
125
126
98
127
139
129
144
105
123
116
91
162
137
80
191
125
98
134
144
113
142
147
92
112
81
122
93
102
89
108
106
131
124
83
82
108
130
54
99
142
96
90
83
49
81
118
125
98
133
87
91
104
93
139
92
128
80
108
111
140
101
130
107
128
86
90
125
82
108
80
113
91
91
148
54
59
80
103
134
114
104
108
145
77
144
144
137
106
103
90
151
102
105
127
98
132
61
106
147
98
188
108
124
121
103
87
107
96
94
118
102
154
121
92
107
79
120
113
99
94
139
193
170
141
139
67
158
128
101
132
128
133
128
125
91
77
118
92
143
99
95
85
167
81
140
85
74
77
125
154
77
93
111
137
108
122
135
133
128
84
108
49
155
59
139
104
74
121
108
113
81
125
83
95
184
153
123
96
102
102
112
121
54
103
120
102
143
49
97
148
145
153
109
103
127
133
120
180
81
114
129
182
77
96
95
145
80
144
122
126
104
127
116
87
107
127
102
54
81
120
49
93
76
135
123
144
121
49
119
200
112
138
96
96
74
42
90
54
91
127
87
102
108
97
49
108
96
137
128
153
120
112
103
108
103
133
86
85
104
106
109
81
110
163
121
102
118
110
131
83
123
135
151
103
127
96
112
112
96
107
120
98
110
95
79
124
144
128
115
102
140
99
103
98
164
122
77
116
142
103
90
54
146
127
92
103
103
94
118
138
193
102
95
128
105
97
157
168
82
103
142
111
132
138
95
159
161
114
54
61
144
144
105
107
141
117
104
90
114
125
59
111
160
96
124
147
82
102
113
98
111
170
125
134
158
85
82
116
112
129
132
155
156
107
155
156
77
73
102
170
129
94
130
125
102
103
121
102
80
109
81
101
144
140
133
125
131
76
125
102
115
98
49
79
86
78
111
154
118
67
87
143
129
119
82
135
112
120
98
101
135
161
117
89
76
132
67
129
98
106
102
156
108
94
163
122
117
140
103
108
116
127
152
186
108
110
125
81
101
157
83
150
109
93
49
113
176
135
92
143
151
88
108
130
144
131
172
116
122
54
134
140
120
113
136
105
93
103
135
127
116
94
87
92
80
143
105
135
133
90
204
126
115
121
113
87
105
69
113
108
130
93
80
103
114
103
123
113
93
125
169
138
122
113
76
82
132
124
145
49
82
139
189
76
78
103
72
161
131
95
118
113
133
101
68
97
69
142
82
107
54
74
102
95
132
145
129
105
117
115
137
216
151
104
84
69
88
148
115
93
49
85
114
138
108
113
81
129
81
162
117
93
140
100
106
117
140
129
113
81
194
96
68
123
103
91
76
98
108
124
96
108
175
98
84
108
146
106
96
54
154
123
81
125
146
144
95
101
49
150
149
116
103
98
102
115
114
86
54
102
84
101
101
99
94
123
177
120
108
113
136
165
113
139
148
155
142
79
110
133
128
112
68
49
103
139
97
109
107
138
107
156
74
110
103
113
136
54
153
104
98
110
80
77
145
54
118
89
145
127
182
74
143
100
80
135
166
123
139
163
128
109
149
59
104
148
106
194
154
116
61
85
117
111
139
120
93
145
59
141
169
166
87
127
90
144
117
181
125
98
83
128
142
83
54
143
148
90
125
76
116
149
95
96
150
98
91
84
109
140
134
103
169
127
135
110
118
77
148
111
103
158
116
127
112
77
76
103
79
76
108
113
160
128
86
108
87
79
106
132
117
125
112
113
78
117
100
143
133
101
164
99
54
78
97
163
110
125
97
122
109
143
106
121
90
125
127
115
91
115
179
169
49
128
91
128
150
148
140
165
61
105
156
153
90
85
142
93
131
144
91
120
133
155
139
121
168
144
147
129
143
126
149
86
191
151
127
65
107
76
90
110
144
128
98
98
112
98
121
93
91
95
144
114
188
94
61
122
145
122
67
141
69
98
156
49
108
92
96
158
87
126
57
95
113
119
173
87
106
84
143
129
61
147
135
146
126
177
148
114
144
102
93
105
118
106
147
175
131
108
146
182
173
119
85
102
65
113
154
126
129
97
83
49
54
108
74
102
200
80
103
160
118
108
162
106
107
102
59
105
140
124
127
105
158
106
154
74
118
96
91
102
102
105
90
112
117
106
169
133
142
155
142
136
123
133
103
77
95
125
102
105
117
145
117
103
95
59
106
143
120
132
94
103
134
116
115
146
126
54
139
113
135
102
127
84
74
94
108
86
138
138
183
120
123
146
139
80
109
108
133
138
111
115
124
132
96
108
49
108
98
95
137
121
81
158
95
98
54
117
163
151
95
151
126
140
94
102
108
57
95
102
129
118
102
102
96
169
122
76
78
54
134
101
139
61
74
123
112
88
131
85
96
95
148
102
155
98
74
132
120
100
119
137
95
59
98
81
98
177
144
112
141
131
108
135
106
106
128
113
123
150
148
98
150
116
109
67
125
131
105
129
112
76
111
142
200
68
104
74
95
102
54
152
153
107
98
167
123
54
138
120
113
134
136
141
146
98
90
81
98
109
139
54
105
152
106
140
131
130
150
159
104
137
134
104
139
140
129
105
86
93
122
81
107
97
93
101
107
93
74
146
175
81
83
148
118
107
74
139
147
179
179
137
128
120
169
118
150
102
94
101
104
126
120
107
148
137
109
117
126
134
138
180
151
142
148
134
59
101
153
59
81
157
82
101
67
135
149
135
86
169
104
95
108
77
125
149
103
180
156
98
103
49
87
146
102
90
54
106
59
139
113
108
123
123
54
131
133
122
136
79
167
108
138
111
49
107
95
146
122
144
69
103
200
161
107
194
96
117
59
143
97
113
132
163
125
129
127
133
77
95
81
81
151
171
103
128
109
85
89
115
131
107
125
110
125
118
124
142
87
90
85
130
77
93
102
77
136
82
108
111
77
133
108
160
125
116
133
83
123
102
153
131
54
128
109
190
92
98
125
125
113
95
59
165
160
123
109
115
119
95
69
105
54
142
90
74
115
119
104
158
113
175
110
100
95
135
125
108
125
81
74
77
98
98
148
82
119
115
133
117
152
86
184
143
108
133
150
108
109
76
145
105
95
119
103
116
148
104
81
90
110
148
102
146
133
131
139
109
128
141
167
59
159
98
129
82
103
175
128
165
83
160
165
99
184
99
72
108
114
140
113
101
127
93
125
95
93
170
108
54
102
137
128
114
113
98
110
130
114
128
83
90
128
104
108
49
103
129
125
108
105
160
105
148
122
122
90
49
77
146
107
101
133
80
95
100
159
139
82
101
146
123
106
82
100
108
82
167
61
148
140
76
87
89
94
83
140
113
61
139
125
179
82
102
139
129
106
156
92
107
135
112
145
114
145
118
119
125
133
113
87
95
85
138
126
135
126
112
155
102
54
144
121
94
180
77
90
77
77
109
98
108
120
111
100
128
93
102
111
132
134
105
129
93
129
63
133
107
90
119
95
49
104
106
179
159
115
119
133
106
81
140
129
117
115
82
140
98
75
109
150
93
146
113
54
147
142
142
147
122
105
160
123
120
85
80
128
158
122
135
59
120
81
69
160
144
134
166
124
94
54
84
108
140
117
120
95
108
102
89
101
59
98
87
102
106
97
82
98
83
54
113
118
142
108
73
67
102
159
102
144
90
85
97
100
143
128
163
146
151
145
96
118
91
71
141
127
133
59
144
135
59
138
127
144
129
95
127
67
133
102
97
113
118
129
197
154
105
133
119
135
135
132
147
129
137
108
179
130
145
135
133
148
129
129
89
144
133
106
119
59
134
122
74
85
135
180
106
114
49
74
82
133
172
129
105
124
108
113
125
166
103
168
95
139
123
135
148
144
83
76
145
136
129
54
101
113
81
102
151
167
133
108
148
110
111
143
61
164
113
116
94
119
131
112
98
153
54
161
163
102
93
125
101
108
113
122
85
128
122
159
147
98
148
110
148
125
74
116
116
144
105
73
59
124
88
111
143
102
85
147
120
120
125
102
148
67
136
113
129
84
105
127
137
104
191
102
81
59
104
120
112
98
113
94
103
126
63
118
90
95
113
49
101
145
102
59
99
118
158
160
170
153
123
81
120
128
169
125
78
113
156
76
128
108
114
131
115
59
119
54
100
153
93
173
133
94
123
105
107
107
173
90
102
61
104
103
148
149
74
95
136
95
152
121
143
78
54
128
109
83
81
165
155
63
101
111
133
126
125
103
117
157
87
116
95
94
106
82
145
154
139
122
95
98
181
54
134
106
118
95
179
95
133
113
114
97
102
89
108
122
150
108
144
83
105
100
54
167
137
104
90
108
140
109
49
135
107
162
97
83
68
83
110
165
104
142
95
59
139
102
193
132
81
127
127
90
79
143
74
139
102
74
86
76
143
93
126
85
99
80
146
113
190
110
112
108
85
111
105
155
168
100
145
153
102
84
49
125
59
136
125
93
143
127
138
91
108
49
95
140
100
77
116
99
115
144
96
108
118
159
117
98
103
125
108
109
114
98
140
54
129
93
74
99
103
122
135
98
110
120
108
84
148
191
104
122
115
83
95
91
49
134
87
144
101
118
133
144
113
61
151
161
145
102
135
59
103
108
97
109
98
124
165
133
144
97
104
138
105
130
151
90
99
89
103
126
96
130
95
74
85
148
124
61
152
146
90
102
108
106
106
109
106
54
147
131
95
155
128
150
95
96
95
113
118
116
127
120
108
98
77
95
54
128
177
95
110
145
77
101
61
102
103
103
128
102
131
102
120
90
90
106
179
108
59
93
108
54
108
61
124
100
105
95
103
104
133
98
108
69
100
118
125
76
82
126
190
98
108
109
152
69
133
134
121
161
76
177
90
98
108
103
93
124
127
124
96
108
163
96
122
158
105
124
54
172
106
54
148
81
131
137
81
95
101
135
95
144
54
120
100
167
133
97
59
125
95
83
161
94
79
108
125
93
140
180
102
85
100
101
117
74
143
124
105
134
146
109
135
163
98
141
90
113
129
153
80
130
98
105
108
74
95
108
85
115
65
135
127
74
133
126
94
105
103
74
132
176
95
96
107
110
83
83
102
67
138
98
102
138
120
113
147
125
117
130
125
102
166
59
177
102
91
143
73
84
152
74
134
123
138
112
130
81
144
106
116
120
49
93
153
120
135
153
128
95
194
98
94
145
106
158
125
135
138
98
161
98
102
165
103
117
116
119
125
59
94
149
93
89
170
102
91
101
102
115
130
131
135
160
132
54
105
107
119
135
140
101
65
78
151
140
81
146
77
45
121
180
88
98
142
98
68
131
125
94
99
109
69
130
131
130
115
73
108
122
98
108
102
167
95
102
115
125
81
95
141
54
83
95
102
133
106
117
151
159
148
125
128
49
102
95
111
82
101
117
100
143
81
97
61
86
81
124
82
120
74
140
73
116
175
113
165
108
105
106
118
102
139
96
102
144
95
157
124
93
132
124
83
107
57
54
117
90
128
129
125
117
143
103
162
93
95
93
99
155
123
93
115
135
61
100
86
99
189
85
224
149
54
102
126
107
93
115
54
95
115
59
132
136
97
141
226
91
120
113
118
103
115
97
120
138
116
107
104
126
125
96
158
98
102
133
107
103
91
82
49
124
139
120
59
147
116
101
200
157
145
161
132
108
105
86
131
74
148
77
120
102
100
188
91
96
108
89
94
108
123
104
129
107
113
134
133
177
107
135
132
74
74
167
104
159
158
134
137
106
105
121
82
81
168
106
128
102
162
109
108
118
95
93
115
134
150
141
129
97
123
109
83
128
158
103
110
123
125
98
135
61
148
115
112
95
107
91
49
112
98
156
148
90
108
96
87
78
86
71
174
158
131
81
112
94
135
131
97
123
88
146
103
148
107
124
82
172
139
95
103
116
145
109
81
126
96
97
54
148
128
158
132
120
54
112
95
138
100
142
59
124
54
101
94
146
121
95
123
98
141
109
122
191
83
85
143
49
131
92
74
169
95
102
131
89
94
125
125
154
98
76
135
108
158
113
149
134
158
138
97
120
128
142
112
144
127
100
95
134
124
120
110
105
102
85
135
93
109
139
182
129
145
102
148
113
133
127
132
125
170
177
138
183
83
95
135
149
74
123
132
144
98
54
54
71
143
176
59
133
102
123
93
94
54
90
108
146
108
115
54
67
127
136
156
74
121
101
128
108
122
54
94
145
164
172
112
90
92
116
192
191
106
195
131
80
125
74
103
140
141
123
145
177
125
116
110
104
179
141
170
95
157
115
122
78
135
128
137
94
113
154
134
144
150
105
75
95
144
89
120
77
110
100
135
104
140
77
143
95
113
129
110
149
148
105
102
135
102
135
59
131
106
142
94
81
102
118
170
112
107
87
54
145
150
59
94
158
110
134
137
135
103
133
103
54
90
113
147
108
122
125
108
134
125
140
129
145
110
105
99
169
120
110
155
127
109
108
113
102
138
144
119
69
90
122
97
125
198
86
54
122
124
148
89
148
139
152
117
153
134
98
180
105
131
205
121
140
95
130
180
120
90
95
148
131
119
133
108
156
114
113
112
145
96
99
49
113
95
102
91
103
131
104
102
161
143
98
103
112
131
98
122
133
74
93
164
115
120
141
157
95
102
123
164
81
158
204
96
133
120
78
148
78
119
135
197
73
124
143
106
115
49
68
165
54
88
111
115
113
105
180
162
104
150
159
112
108
144
108
109
103
114
141
59
116
76
131
98
140
152
130
146
102
82
177
91
116
91
77
143
151
96
115
142
103
69
159
78
95
95
77
154
94
103
133
135
122
80
200
140
134
95
117
77
110
85
136
106
134
78
110
130
106
119
145
93
108
101
134
124
108
145
137
118
110
103
93
129
126
146
124
142
139
150
97
90
72
108
106
104
107
145
54
130
93
159
113
122
148
87
179
144
81
93
108
54
144
81
102
80
54
148
139
101
115
177
118
104
126
127
54
128
90
81
100
149
113
95
103
102
156
102
133
125
101
85
137
87
109
54
79
95
135
147
161
150
147
106
161
68
123
106
200
108
125
128
101
101
158
114
122
108
139
59
76
171
145
100
177
115
98
54
98
115
150
106
103
90
70
92
126
124
78
132
156
123
82
133
146
133
129
141
133
88
81
91
172
97
125
153
159
102
118
118
99
124
131
137
54
135
133
83
76
131
205
95
87
54
129
157
139
68
93
95
159
108
114
85
107
102
92
76
98
98
95
88
164
153
136
113
122
115
155
145
112
134
111
106
98
126
167
86
126
103
129
150
96
73
101
117
84
131
123
104
127
105
121
98
180
131
115
96
83
100
121
103
108
59
92
131
135
128
105
83
105
95
105
113
177
106
129
145
149
126
177
149
152
148
143
67
114
80
102
54
135
100
102
96
68
81
153
90
150
80
74
125
95
82
68
117
79
78
93
81
125
179
125
87
74
105
105
83
95
145
151
111
130
75
103
102
124
147
90
88
101
108
146
137
77
115
116
129
112
108
170
167
121
54
153
122
94
126
102
102
132
115
132
75
139
69
134
87
120
67
125
148
105
137
103
117
150
146
148
127
113
112
120
112
123
136
141
202
128
124
108
128
103
54
59
130
107
54
103
158
95
101
104
132
122
94
108
180
54
91
146
128
92
97
115
130
78
95
129
74
61
93
128
103
106
100
107
108
142
80
159
138
116
90
135
93
98
119
100
211
70
100
85
49
115
131
162
110
96
126
150
143
125
132
129
143
153
78
140
119
74
67
125
131
117
59
147
91
99
187
91
98
130
138
137
88
144
102
150
88
103
110
161
144
95
157
141
125
97
90
116
54
118
133
97
115
101
134
126
93
97
120
129
100
124
118
101
79
107
102
141
159
49
106
120
122
61
121
91
98
145
108
95
154
95
148
133
95
151
97
119
105
87
119
87
99
77
95
122
135
202
92
150
131
107
102
54
89
78
137
95
127
132
102
78
109
95
146
133
125
167
98
106
102
96
108
166
139
140
89
96
54
109
122
102
124
107
98
96
118
54
147
86
131
102
76
103
127
96
105
90
115
115
138
107
96
131
130
111
123
78
135
122
121
113
99
112
96
76
151
82
87
117
135
95
122
91
116
173
105
62
54
118
78
97
143
110
161
102
95
95
198
91
102
139
148
95
108
162
107
54
129
131
103
111
148
152
114
103
200
102
123
125
95
132
145
114
87
148
111
143
120
68
128
108
179
117
81
79
74
95
148
97
102
135
74
49
138
154
149
109
108
117
95
106
152
116
127
146
114
104
109
54
180
111
130
154
102
168
143
100
109
166
152
54
129
109
59
137
155
144
106
93
139
108
49
146
106
54
131
122
138
95
128
49
67
143
98
164
109
98
113
100
90
125
90
83
142
146
54
164
120
76
124
131
149
97
125
94
130
98
120
137
87
92
124
81
139
116
49
138
131
131
141
147
212
135
96
134
102
100
114
115
108
94
87
81
95
121
102
99
102
61
182
142
183
107
127
74
118
144
114
148
98
124
157
120
134
96
77
116
68
93
151
144
59
120
95
67
139
141
107
102
95
123
125
54
90
122
115
68
136
133
132
133
128
92
158
120
143
114
127
101
112
130
105
109
150
74
78
144
54
112
54
92
118
97
96
95
143
132
97
149
108
140
104
135
132
141
59
104
129
95
54
98
156
94
127
115
131
82
113
104
106
147
105
148
95
144
158
101
168
107
91
127
122
140
122
123
145
81
95
123
102
82
94
109
109
115
145
94
142
102
135
123
95
143
96
98
93
99
177
115
94
99
98
102
168
153
54
113
177
93
142
54
185
121
106
74
132
117
118
101
74
87
113
107
95
168
97
150
77
118
115
137
127
71
102
161
120
102
118
106
114
70
111
95
77
114
108
180
54
159
153
111
120
106
119
106
78
164
145
82
109
95
118
106
194
95
103
158
128
137
97
81
123
142
77
139
126
149
104
93
143
176
147
117
49
133
113
119
141
130
155
103
135
122
131
98
116
117
114
121
105
102
180
126
98
159
97
144
67
120
83
115
74
78
98
78
153
148
93
144
105
160
169
97
99
105
128
93
93
129
104
133
102
191
133
126
127
147
106
103
133
147
54
107
119
111
106
49
149
127
120
148
116
107
131
126
80
111
97
76
115
148
136
109
125
81
148
108
93
49
79
98
79
97
152
102
124
125
110
200
86
67
113
84
152
116
156
168
194
134
103
105
141
154
113
95
121
113
139
108
90
171
141
107
99
87
128
54
67
73
104
54
99
125
105
112
146
95
78
142
131
138
119
103
133
157
95
160
126
73
140
110
123
77
49
128
110
113
134
113
116
54
140
105
113
113
140
143
54
119
96
79
99
105
135
100
128
112
81
148
74
107
81
184
87
121
149
141
109
99
123
112
103
115
121
157
126
85
160
122
78
108
163
140
134
74
109
116
148
81
129
133
101
108
153
113
90
94
130
98
103
73
67
105
150
107
115
108
124
135
106
108
102
54
98
117
135
79
102
87
108
123
131
54
140
77
109
125
62
122
90
133
93
107
107
151
103
98
113
148
145
134
56
115
123
89
118
112
131
80
107
147
124
117
142
115
107
148
128
102
104
93
133
183
78
96
125
54
106
82
87
109
77
82
84
143
96
155
95
70
110
90
74
128
134
106
158
109
81
112
109
108
100
136
126
112
54
153
83
94
111
120
108
104
101
81
69
111
81
79
140
93
107
118
128
150
97
107
116
117
197
110
144
91
137
128
84
125
129
146
87
98
140
102
69
143
122
151
105
158
183
151
153
145
108
54
172
125
87
69
139
81
87
123
77
67
88
117
74
81
170
103
54
80
119
149
133
125
91
141
108
148
101
78
98
126
102
125
103
122
114
136
156
125
141
102
122
99
155
68
108
157
100
123
86
95
156
96
103
103
159
112
94
123
115
135
111
133
111
81
143
105
123
112
54
59
89
96
87
115
103
130
95
85
128
122
108
170
54
110
102
85
168
68
113
136
138
67
105
143
204
84
54
124
108
165
135
96
106
88
161
128
102
148
95
54
147
135
54
107
103
133
136
133
124
146
153
115
150
148
135
99
118
124
59
165
82
90
88
105
133
122
113
108
148
105
126
121
117
80
88
97
128
150
128
104
115
130
102
121
108
83
81
176
98
93
102
87
105
132
80
61
95
139
111
150
81
140
158
81
118
108
193
126
133
101
98
108
141
107
124
96
102
103
132
123
68
77
49
140
108
75
101
169
81
108
140
144
143
110
80
87
108
126
59
54
108
54
90
107
59
98
105
103
155
181
123
125
108
129
154
95
105
73
111
87
77
83
54
82
109
114
128
134
163
102
126
105
103
74
69
206
149
110
77
171
144
131
105
107
108
54
159
148
117
141
146
111
76
139
98
113
117
182
54
85
91
105
144
123
128
108
143
76
133
140
106
146
145
113
134
125
176
133
123
76
123
131
112
93
91
90
125
56
128
113
168
90
129
134
138
196
81
158
95
77
135
102
106
154
149
125
123
77
77
108
68
108
128
107
151
129
113
160
116
122
116
109
87
123
96
113
87
177
141
94
87
87
111
128
114
127
54
114
167
149
74
153
108
54
120
85
103
54
127
110
153
90
54
104
101
182
148
139
95
235
118
87
99
69
88
78
95
65
146
114
95
116
127
102
113
112
93
127
132
102
103
45
129
110
102
92
100
153
127
85
78
83
108
102
125
156
148
161
106
59
154
103
115
140
91
141
113
142
54
101
84
108
98
95
110
158
93
150
115
101
111
141
157
105
100
103
158
156
131
132
122
128
83
132
157
101
68
87
81
87
165
59
144
85
131
118
139
76
92
191
140
54
54
141
116
128
148
61
139
119
81
116
174
160
149
142
146
87
80
133
107
116
107
134
163
96
76
139
139
89
104
127
75
111
83
76
134
110
102
54
131
160
173
95
106
95
111
76
85
54
107
95
101
81
65
102
163
81
142
62
133
54
54
103
154
90
184
194
98
115
121
91
93
102
132
103
133
81
91
191
59
116
161
54
112
81
113
141
87
102
169
103
150
90
150
144
76
110
54
109
148
146
114
84
151
108
136
165
131
128
108
101
113
121
68
153
49
79
108
132
131
102
156
140
85
59
172
129
80
119
97
98
121
140
138
117
148
99
87
133
92
77
102
158
133
125
114
146
148
122
122
107
103
82
104
108
140
126
88
90
126
155
144
103
104
105
133
125
150
151
146
102
113
141
165
129
59
134
142
102
110
149
118
179
114
119
89
103
147
111
141
102
99
200
84
115
98
54
81
122
95
146
129
140
129
67
107
161
144
112
104
118
122
122
133
134
103
112
107
82
88
111
83
74
152
109
138
76
54
128
82
95
133
158
147
167
111
102
85
124
80
118
105
125
118
144
134
160
136
118
81
82
104
93
102
94
93
94
135
130
87
49
96
140
61
98
145
61
177
128
127
98
118
83
91
113
80
147
181
149
77
126
108
108
78
105
128
100
82
148
120
135
176
81
173
174
107
148
90
124
125
112
172
112
96
136
131
93
120
69
78
127
59
95
69
70
121
184
133
89
162
137
116
135
105
122
130
87
148
99
95
103
82
113
151
117
82
72
133
103
119
144
103
96
87
92
149
114
102
101
97
90
113
59
125
95
123
117
90
93
107
122
68
131
156
119
74
85
102
198
141
139
139
166
80
108
77
172
54
84
133
104
54
95
112
59
158
98
107
77
152
98
103
108
87
108
132
139
120
177
54
145
158
119
98
124
118
102
61
135
78
106
118
108
132
139
137
148
101
54
145
112
108
130
98
102
78
49
117
142
141
146
173
108
106
161
76
166
126
141
100
117
98
76
149
116
118
107
102
124
138
100
80
103
93
113
128
113
194
153
102
78
84
54
99
102
123
177
140
80
102
95
104
102
108
54
122
151
170
49
115
138
142
111
103
151
117
156
67
68
106
74
83
111
120
135
77
77
112
103
100
118
156
131
110
147
150
96
116
139
106
67
73
96
59
113
59
138
96
54
59
200
119
112
113
133
116
106
67
77
152
173
90
123
107
159
166
119
54
154
103
86
61
91
120
95
143
144
165
108
143
149
114
108
106
98
113
98
96
89
118
126
82
93
95
148
100
148
144
54
110
176
102
123
177
140
78
136
81
94
129
73
126
163
134
148
147
123
95
77
173
117
187
130
113
107
88
155
154
178
118
54
96
90
104
78
148
113
95
96
83
128
136
111
77
126
54
102
108
97
74
113
74
140
128
151
122
101
159
97
80
139
95
82
141
121
140
102
98
145
102
108
98
154
81
74
141
119
139
83
177
91
113
169
158
152
146
129
108
98
95
106
118
90
115
87
134
102
76
110
149
148
114
102
145
95
161
119
101
102
137
118
127
136
77
127
173
112
128
157
131
128
96
121
159
143
161
98
108
167
120
155
104
78
163
113
131
89
107
124
95
129
110
148
137
159
108
89
68
82
95
141
112
115
112
121
95
136
102
81
102
107
74
132
81
106
200
127
226
127
115
157
158
108
107
128
95
130
69
144
143
105
102
95
121
141
119
152
146
143
141
170
106
101
128
155
106
105
102
144
141
83
127
125
49
143
122
110
108
138
124
131
97
97
103
126
112
191
151
110
116
93
83
81
102
138
133
128
186
82
67
77
49
130
139
162
93
131
114
103
130
83
83
95
110
119
105
54
74
74
163
87
122
103
98
136
95
148
148
91
132
131
111
95
103
120
92
101
177
107
128
86
119
54
166
97
112
112
158
116
94
73
132
97
94
131
69
133
131
159
102
113
54
160
97
119
49
108
77
113
154
103
114
78
78
83
124
161
120
151
78
157
150
118
59
146
86
133
54
69
102
115
156
102
98
116
144
113
107
163
107
107
148
93
98
108
120
119
49
128
106
98
76
100
139
129
165
110
54
102
88
118
112
101
120
103
98
129
130
125
128
155
141
125
105
87
129
143
81
188
135
135
98
127
49
142
107
128
77
84
106
165
106
92
97
133
131
90
119
74
154
131
151
127
147
115
67
102
155
153
59
156
127
61
100
124
168
112
95
109
151
89
119
104
131
110
118
111
208
125
81
95
108
90
106
103
112
81
54
117
136
54
161
145
123
79
146
125
156
54
117
134
117
54
175
121
108
70
76
67
54
83
109
77
109
95
59
129
98
106
166
128
129
93
77
141
100
90
147
95
102
85
151
108
133
77
135
120
144
133
151
111
106
96
110
102
105
91
104
122
129
143
139
105
100
131
73
107
69
86
95
98
131
90
177
167
113
103
144
103
140
140
102
81
119
140
78
108
134
110
169
146
131
98
120
129
145
111
134
80
128
77
118
111
137
118
135
80
112
79
147
156
81
49
128
107
128
123
135
169
54
118
133
49
108
125
82
85
101
73
132
88
128
158
108
98
182
103
68
81
132
81
108
102
168
186
147
105
87
102
90
138
109
61
126
93
54
120
103
93
147
95
87
83
113
49
76
139
98
54
92
148
154
142
133
97
127
87
169
119
87
81
84
94
96
102
159
105
145
124
112
146
120
118
82
135
132
67
75
156
129
127
98
135
140
61
120
104
88
54
138
157
122
148
116
127
124
93
146
80
123
137
81
101
91
117
90
81
59
91
168
138
113
83
95
98
129
95
141
106
144
95
145
98
145
54
96
184
161
99
91
127
108
77
77
68
144
85
77
142
102
90
114
54
100
87
120
108
100
117
97
95
78
154
74
137
87
129
100
125
140
135
74
147
98
117
151
132
145
96
81
151
93
108
134
54
111
133
134
143
69
121
90
143
108
108
134
159
144
133
179
132
143
134
180
136
106
74
115
109
116
106
123
120
114
87
124
96
151
96
136
98
114
114
200
87
138
119
54
87
132
114
109
110
49
103
134
103
87
192
107
114
125
176
128
148
125
134
87
77
110
102
148
115
130
125
93
59
108
69
87
102
179
139
133
81
91
105
101
97
166
76
102
105
73
76
101
95
151
121
82
138
69
123
67
123
98
97
77
76
113
144
140
135
140
148
110
116
96
100
80
120
174
148
99
85
100
129
59
102
100
74
82
95
125
108
69
161
143
87
127
116
78
97
98
115
126
102
101
59
115
102
135
102
98
78
123
134
131
122
188
105
108
120
150
98
83
158
126
146
54
82
108
170
122
96
156
104
133
121
110
54
102
109
138
113
93
54
83
54
127
122
143
105
83
165
144
154
104
98
87
116
96
163
112
161
139
74
103
77
146
98
129
82
170
74
61
87
127
172
163
133
132
119
134
131
160
108
138
81
119
177
105
132
172
133
125
147
118
104
94
49
225
142
119
167
106
120
144
87
177
121
76
152
86
93
105
139
144
199
74
136
95
170
61
68
151
161
98
113
141
186
122
122
101
134
144
198
138
119
54
158
69
140
100
75
93
85
78
123
139
141
95
191
87
120
89
122
137
108
102
61
92
128
115
96
78
108
158
105
89
45
124
89
190
59
87
99
128
81
108
107
54
140
112
92
83
127
102
158
150
81
120
77
117
122
112
148
116
109
112
148
95
108
54
91
103
108
169
92
139
59
107
194
111
144
102
108
132
77
102
78
143
67
113
128
133
165
148
143
123
87
130
123
97
73
120
102
129
59
82
118
76
101
74
96
130
143
108
122
131
74
157
93
138
115
95
115
106
110
115
98
152
181
149
76
158
169
105
127
114
109
175
146
128
103
112
134
74
148
127
81
154
54
126
109
98
148
161
118
78
127
134
108
98
82
200
135
100
143
54
127
120
142
133
156
125
177
96
142
134
83
152
158
103
155
139
119
133
125
154
120
123
161
54
59
89
123
129
93
85
115
129
158
84
177
81
87
98
163
159
123
125
87
113
124
87
130
94
191
99
154
102
133
148
108
54
101
54
126
166
138
132
110
145
97
54
104
90
77
190
49
68
110
59
190
54
135
125
185
144
158
104
90
134
49
112
150
131
96
142
124
134
98
118
94
102
105
130
147
139
54
133
142
81
128
148
127
103
117
93
102
96
45
127
54
140
145
114
127
105
100
122
117
77
144
45
86
107
163
107
106
54
123
102
152
79
78
85
96
178
131
59
74
138
89
83
142
109
125
115
115
148
125
106
54
95
94
113
94
113
97
113
106
138
102
135
131
112
125
119
117
96
77
136
133
126
103
129
133
90
49
108
192
103
127
92
128
74
115
108
106
102
115
113
86
122
102
119
96
91
157
167
128
128
97
136
124
80
137
107
145
98
122
97
105
106
165
67
137
91
102
111
128
93
129
119
169
105
118
113
154
103
133
138
186
169
170
81
141
124
124
115
144
128
121
155
113
186
99
141
93
104
144
97
135
106
118
128
131
93
102
128
80
146
67
139
114
147
95
65
84
138
123
145
95
117
89
133
59
98
130
106
74
87
140
54
141
98
74
112
129
147
97
140
161
143
117
126
54
102
154
113
61
54
118
87
67
81
87
101
80
98
110
152
177
114
68
131
54
97
54
193
96
142
88
127
127
82
148
113
102
119
96
155
143
148
116
95
129
76
129
135
127
76
114
155
103
147
140
148
116
61
108
179
95
117
87
139
141
131
110
177
120
129
112
98
135
107
153
149
103
112
121
74
116
113
135
122
106
135
81
125
107
92
54
113
101
93
92
61
54
54
77
100
191
144
69
61
168
131
139
102
129
118
95
144
115
148
180
149
127
81
133
98
163
68
113
68
105
124
123
139
113
93
74
106
134
133
131
92
77
125
49
117
99
67
143
97
135
110
105
121
119
155
123
135
162
133
135
106
188
95
69
106
82
166
101
113
102
108
149
69
93
105
102
108
93
108
100
127
131
110
96
98
79
135
125
92
165
61
119
101
77
143
181
90
74
140
120
177
177
111
97
127
122
98
121
164
102
130
85
144
140
158
96
155
95
98
115
116
133
131
139
114
102
137
104
125
88
84
146
95
148
108
112
121
133
85
121
108
81
117
148
114
108
131
106
95
100
131
100
115
85
128
104
91
160
140
90
77
148
102
142
80
108
100
127
59
169
98
149
148
165
129
136
93
61
116
116
140
131
112
100
119
117
140
54
54
153
117
132
171
154
85
108
128
155
151
133
82
49
102
104
95
162
85
81
102
98
98
131
109
110
109
194
157
54
138
133
153
114
110
145
157
139
93
141
101
144
115
131
99
101
87
105
120
93
102
102
75
49
127
146
119
137
113
162
142
102
141
119
155
120
117
135
118
63
105
137
145
200
129
120
94
95
96
93
145
129
91
77
104
148
108
83
116
114
116
144
133
160
95
103
120
120
121
129
117
78
111
171
107
141
112
93
49
67
109
130
81
102
108
153
136
142
87
94
67
148
125
137
59
132
104
154
103
116
105
100
54
185
130
103
127
87
103
127
112
189
157
106
150
117
131
93
116
121
95
98
98
83
98
74
98
82
113
109
120
135
157
126
114
92
59
119
125
133
106
102
143
98
69
150
82
109
132
133
132
231
90
158
87
131
98
144
145
153
106
128
65
131
95
118
115
137
120
107
119
123
74
190
76
157
142
108
116
132
80
102
98
78
112
49
82
139
123
96
140
149
113
70
98
109
109
95
93
54
74
148
137
54
112
124
122
124
179
81
54
150
100
115
119
61
128
99
113
134
120
177
98
117
101
110
128
156
81
77
129
108
59
210
118
185
143
115
95
141
131
155
108
114
90
152
105
163
140
170
92
119
104
137
98
137
102
117
180
82
96
137
54
133
74
133
102
150
87
128
114
106
159
112
95
97
151
134
59
159
109
145
155
120
84
96
170
163
107
85
98
147
135
108
155
142
114
67
102
160
123
140
145
100
148
130
95
87
200
103
114
115
154
80
85
115
128
98
135
76
93
103
115
130
118
124
132
103
163
117
82
181
54
118
76
145
140
93
143
140
91
127
148
113
135
111
111
118
139
124
118
102
128
110
95
133
135
59
103
83
107
104
102
107
145
91
121
114
117
123
88
151
96
82
123
171
107
150
87
125
89
115
103
186
127
102
98
143
105
106
118
82
62
111
116
111
98
176
87
109
49
49
176
106
102
102
128
118
133
108
54
96
103
149
103
140
135
194
87
93
122
54
83
54
143
74
94
110
131
103
146
151
108
105
153
135
132
152
132
138
147
109
101
84
144
133
105
120
125
90
137
100
106
107
95
95
76
120
131
113
125
74
112
83
158
101
108
54
128
118
141
95
153
73
148
105
103
74
54
102
125
108
129
129
130
106
148
157
126
103
96
85
101
136
160
82
86
133
107
92
95
82
105
59
130
90
93
54
112
144
74
90
99
157
125
119
128
108
108
101
125
157
59
102
168
127
142
93
133
138
77
97
123
131
152
104
74
54
92
140
146
128
82
54
127
90
87
54
97
59
103
54
54
143
93
90
76
138
73
89
90
146
102
173
82
159
95
141
141
100
103
119
148
108
102
142
103
120
135
103
82
87
133
90
54
154
123
61
76
144
146
142
135
69
98
100
90
78
95
139
112
101
118
126
123
100
113
92
77
172
59
119
116
119
146
77
115
139
108
130
82
136
118
138
113
77
83
125
124
144
79
116
175
100
61
118
91
83
96
91
146
126
100
146
147
186
108
81
81
77
102
74
141
133
107
108
133
138
122
96
107
102
110
77
54
102
54
137
103
143
90
98
134
154
123
120
87
189
146
135
121
95
152
135
116
87
148
107
154
161
135
106
81
155
145
105
126
127
131
178
139
100
109
91
125
90
96
145
81
110
86
49
113
116
137
155
129
128
156
144
123
135
120
138
80
118
103
74
148
123
108
76
123
116
80
132
97
154
143
129
98
54
118
153
121
80
104
133
120
106
105
59
98
122
109
169
93
96
111
84
159
143
161
98
102
122
98
122
133
156
54
126
126
128
141
98
136
138
124
115
163
113
107
100
109
107
149
102
132
112
78
119
117
122
135
87
120
135
98
122
103
78
113
91
81
78
154
129
105
54
111
102
112
77
140
137
108
113
102
123
74
157
102
108
134
98
140
190
94
139
138
114
103
98
102
77
54
141
127
135
177
77
49
120
125
180
54
194
126
123
167
128
97
133
167
120
111
154
108
59
106
119
127
180
105
125
148
102
57
120
134
104
61
139
95
150
116
117
140
106
101
110
168
95
105
107
113
161
146
103
133
119
156
122
54
99
96
90
92
54
82
54
125
141
114
76
131
105
87
147
107
121
122
157
81
54
122
132
117
111
208
103
107
110
133
49
75
179
54
139
120
102
111
107
98
74
106
148
121
103
85
185
79
102
169
129
128
95
116
125
153
133
111
183
74
122
54
102
131
99
137
130
98
107
95
144
87
81
89
126
152
82
177
127
135
90
95
103
169
95
107
101
97
145
107
177
98
80
116
81
144
59
76
125
81
194
120
128
135
77
125
85
54
103
83
101
144
98
129
171
135
110
106
73
107
148
90
92
169
103
98
123
59
112
112
76
131
96
144
134
132
135
77
120
98
100
133
118
112
129
129
106
172
130
121
59
131
134
78
164
95
103
98
177
108
108
102
92
128
111
105
98
98
148
102
108
82
169
139
82
234
140
180
76
93
108
54
157
157
91
138
82
163
152
74
87
61
91
155
131
148
102
131
96
103
100
113
116
108
172
97
81
93
113
147
99
103
103
102
128
97
142
119
79
79
115
127
82
169
114
84
83
74
140
96
106
63
81
54
135
81
87
115
113
99
148
130
141
79
88
175
119
144
94
113
103
128
158
144
116
151
103
164
92
54
115
132
148
113
100
147
138
131
160
110
149
59
108
147
148
96
120
85
110
123
122
54
120
146
102
133
140
95
104
148
113
113
59
124
108
49
91
85
102
144
107
160
82
119
102
103
125
103
145
148
108
104
82
115
54
117
90
128
127
146
85
142
68
91
101
117
73
123
194
113
95
125
128
149
139
131
93
172
95
97
161
89
138
132
61
96
78
118
108
54
80
139
145
98
59
152
67
54
96
98
123
152
108
138
102
69
96
144
59
124
77
108
103
93
129
167
105
128
117
119
121
115
96
103
129
131
97
140
115
121
108
106
132
108
148
102
153
49
102
104
112
120
107
113
130
165
105
79
133
104
54
93
105
122
138
102
116
94
116
148
77
104
54
146
69
81
61
125
77
133
140
139
140
113
88
113
125
98
93
107
98
157
81
171
165
103
138
127
129
155
95
136
148
161
107
98
54
111
103
142
98
78
96
81
90
102
93
98
49
113
90
148
125
96
122
108
113
113
127
91
102
83
177
74
76
85
140
103
96
145
106
138
90
149
76
61
103
111
105
131
97
102
102
151
93
148
113
82
81
99
95
81
95
158
110
130
54
105
133
139
108
59
133
99
54
104
81
97
129
128
122
84
102
95
103
124
147
105
163
68
105
154
65
80
106
81
90
87
109
125
74
105
179
76
144
95
133
148
106
110
130
100
113
98
54
129
86
95
93
97
120
108
112
144
109
179
122
129
101
144
111
98
177
81
129
97
95
78
134
89
129
218
59
102
122
105
116
83
142
95
129
104
153
121
123
115
118
93
83
133
138
168
179
127
102
95
96
84
173
133
87
59
143
129
93
54
106
105
108
177
120
102
144
117
135
127
67
87
95
68
150
115
128
107
102
101
132
54
93
118
90
101
158
78
114
139
77
59
135
110
112
98
113
158
115
106
136
144
123
74
84
102
144
148
137
109
133
122
118
178
97
59
128
54
81
136
82
96
106
169
54
74
105
165
87
109
115
82
54
167
148
128
164
73
81
122
123
104
99
94
81
106
117
137
107
90
156
130
93
149
49
83
179
65
93
95
95
102
143
102
89
126
59
132
131
88
190
92
98
108
167
151
124
83
129
81
159
114
106
68
102
108
121
161
148
160
54
106
93
165
98
87
110
93
153
98
127
77
144
85
115
131
133
81
146
49
160
144
177
103
113
133
153
116
172
144
108
150
102
81
118
72
125
103
137
77
116
97
92
186
131
148
159
148
113
122
102
82
98
113
65
144
96
188
160
76
154
143
101
98
124
102
100
131
137
95
100
135
164
138
148
59
147
128
127
133
129
117
83
124
116
138
126
83
122
98
82
85
85
170
140
95
112
79
148
119
92
100
117
108
131
54
95
132
87
54
98
83
95
117
163
109
107
156
82
102
138
119
116
103
85
108
108
149
121
95
74
127
141
59
124
80
156
116
132
93
153
127
49
121
132
84
74
113
125
121
140
110
200
110
111
121
87
98
122
105
188
102
83
135
145
117
133
135
108
59
102
42
139
90
73
98
83
128
138
110
87
124
124
142
128
142
116
104
78
101
164
133
63
135
82
135
174
88
88
79
122
135
91
61
109
125
91
125
125
87
113
116
85
110
162
67
105
118
81
107
109
127
98
74
105
54
162
107
120
190
122
80
123
118
114
117
67
143
111
123
98
138
117
128
133
80
81
100
137
93
107
190
105
108
108
164
93
118
102
87
115
174
155
140
93
81
91
76
141
85
101
92
127
123
153
133
85
93
87
82
100
160
125
84
89
95
142
135
130
156
98
116
61
108
81
59
108
123
135
123
115
132
131
113
100
177
103
54
113
128
115
111
78
104
104
135
130
166
125
139
115
186
171
49
105
87
144
114
146
133
85
77
90
98
115
132
126
116
161
91
126
59
112
124
108
98
131
90
115
84
81
98
148
120
108
84
68
151
102
146
65
134
135
102
99
93
157
103
94
131
49
54
103
98
120
135
67
123
87
109
54
103
54
65
103
76
142
94
128
59
156
103
97
127
98
142
116
142
145
126
184
106
123
113
105
79
102
81
150
82
148
49
131
128
134
110
143
45
131
122
95
114
95
96
111
74
146
135
125
54
116
97
119
148
135
81
82
138
78
136
54
119
141
94
127
127
99
127
142
163
54
97
131
163
61
134
87
180
120
68
99
102
123
95
131
102
129
145
54
119
128
128
113
143
141
95
106
133
128
111
76
124
147
95
125
137
119
69
74
69
85
135
89
159
99
128
135
168
154
112
105
54
140
108
45
101
158
134
54
131
95
150
111
118
106
113
105
100
107
144
135
120
137
95
130
100
71
135
94
91
87
49
122
115
96
147
113
143
102
81
90
95
140
141
97
87
101
137
93
203
92
102
148
200
113
95
87
62
177
108
125
113
125
127
84
158
148
102
74
125
156
86
98
98
90
122
96
85
133
123
153
130
150
172
97
127
101
114
164
94
81
151
112
105
158
54
76
80
120
124
133
167
54
151
102
121
157
111
123
134
107
108
101
110
145
124
155
138
148
93
61
82
110
128
188
150
184
95
135
97
107
108
147
140
123
122
78
113
124
148
140
76
105
154
61
120
125
102
133
95
80
123
95
139
114
54
82
54
95
156
103
102
105
76
114
98
115
54
127
100
95
102
106
61
123
87
95
81
114
113
78
134
116
144
125
113
97
102
128
74
90
97
77
118
106
83
106
97
80
127
122
135
138
142
150
123
145
105
94
125
59
125
107
61
104
139
145
79
107
97
95
72
128
109
117
171
131
102
130
105
143
101
98
133
109
120
126
120
109
173
108
103
54
102
144
148
93
177
133
160
151
160
95
153
74
81
141
127
94
82
144
140
91
97
91
100
81
109
129
156
107
101
54
148
150
91
135
171
95
117
113
127
113
95
81
108
102
61
54
127
146
103
117
69
172
112
95
122
78
116
74
59
125
76
123
93
125
118
134
112
108
127
133
79
106
151
113
118
151
127
108
115
125
159
72
131
103
149
163
162
120
89
105
90
129
49
173
102
135
95
200
95
106
104
89
93
105
106
155
139
67
169
115
132
81
117
134
170
105
124
90
96
93
113
151
148
175
130
123
95
116
95
98
96
84
127
150
87
115
54
178
169
98
83
135
142
118
127
114
103
162
127
67
200
78
80
145
145
158
148
125
95
111
133
111
148
119
107
81
127
139
153
54
115
127
85
124
98
80
102
54
61
114
110
122
54
102
110
78
85
131
103
101
91
87
148
81
111
153
144
108
81
57
98
150
107
160
127
149
125
134
102
148
115
125
100
153
105
103
114
128
82
131
146
71
85
101
110
102
72
157
54
107
108
91
49
131
77
95
81
178
83
85
100
140
98
135
97
132
137
164
129
103
107
93
115
129
125
142
131
110
153
61
82
100
94
163
54
63
161
98
68
138
65
54
148
115
190
90
103
149
140
131
144
155
115
177
107
102
87
95
150
104
143
96
93
109
155
134
106
97
136
140
151
105
138
113
54
139
57
124
127
108
108
106
74
120
96
95
100
86
131
105
158
95
99
143
148
97
143
61
100
75
166
87
103
135
125
107
81
84
110
129
120
103
113
114
89
105
139
81
69
93
95
49
100
87
95
107
103
54
54
113
54
127
148
115
101
87
113
139
174
81
130
54
94
108
127
131
132
150
77
102
133
105
69
169
108
157
117
167
125
87
117
67
108
54
105
54
126
116
90
139
119
133
102
79
144
108
69
140
146
92
120
126
74
121
85
133
88
93
180
159
89
144
124
98
128
79
115
80
138
95
114
128
95
121
114
54
177
111
150
126
121
115
153
69
115
115
79
118
95
108
102
59
173
114
133
144
149
74
156
117
112
163
137
118
103
106
97
85
152
115
87
82
125
65
142
114
126
120
139
153
134
129
150
102
54
83
134
127
102
95
150
54
120
111
154
111
85
77
95
102
119
158
158
149
114
124
103
116
188
150
136
131
135
106
119
109
144
134
147
186
106
115
103
135
102
109
113
102
114
95
121
123
114
147
90
79
97
128
117
119
84
118
91
109
199
87
132
169
102
102
120
135
132
98
74
154
126
128
122
54
100
140
102
93
124
149
128
107
161
137
135
82
93
106
98
200
112
129
135
103
121
54
112
131
112
54
125
176
102
106
80
122
86
102
128
145
78
105
111
93
111
95
90
117
108
102
110
180
98
114
127
112
95
54
107
89
107
146
129
150
59
134
103
127
140
93
138
122
99
67
107
104
112
103
102
54
90
168
158
81
81
59
67
130
145
105
108
72
77
110
165
102
95
154
156
104
108
122
167
144
91
164
120
97
124
134
133
103
108
108
87
59
99
129
106
101
71
54
115
106
96
94
140
108
98
105
138
74
151
166
101
114
67
139
83
86
122
199
90
133
111
125
143
133
59
105
116
49
87
129
111
137
117
153
54
82
102
98
107
172
138
54
183
67
67
127
96
87
106
134
99
74
61
177
139
93
159
127
94
132
99
95
107
129
120
54
106
148
154
61
106
87
134
102
120
83
151
134
189
119
127
102
69
98
96
97
106
98
158
108
91
100
138
127
101
152
108
105
104
93
129
98
128
100
115
105
128
130
113
123
95
216
89
74
161
100
112
104
102
77
106
134
113
83
180
133
152
126
103
110
139
139
100
145
130
119
108
129
77
113
93
109
103
125
138
111
93
107
95
76
77
91
91
133
90
59
148
97
125
81
95
139
92
92
81
114
186
139
106
85
138
107
168
102
80
152
96
135
92
103
122
171
103
140
109
84
108
102
165
131
107
96
145
141
200
59
97
98
154
74
111
98
160
77
133
105
139
138
80
131
61
128
102
141
163
107
125
91
159
124
135
78
126
95
105
131
95
93
139
102
93
120
120
54
102
133
102
148
125
101
113
96
120
98
109
118
77
177
54
90
106
169
110
76
99
119
116
82
127
133
141
61
117
73
100
76
171
109
147
74
135
67
106
126
114
162
102
102
130
109
108
131
90
109
120
57
117
81
77
49
95
100
109
97
76
185
81
138
115
123
76
99
104
93
156
98
124
107
49
140
138
79
121
103
123
99
116
59
83
112
74
120
133
120
122
98
127
120
149
95
95
155
125
130
111
130
117
74
103
102
147
105
103
95
120
134
59
107
133
191
98
59
54
149
125
141
125
54
49
117
116
83
204
98
76
126
182
115
111
116
105
125
128
84
59
102
104
130
130
105
160
84
80
107
148
138
164
78
110
142
146
132
97
97
123
118
108
177
169
103
107
123
87
102
151
122
153
146
82
119
54
103
91
102
113
190
98
91
112
112
74
54
82
108
120
141
165
139
127
133
130
85
93
105
128
100
54
81
87
54
123
112
148
116
160
102
94
119
126
83
124
90
111
104
141
156
96
120
132
141
139
168
120
142
190
130
143
151
59
108
107
94
143
102
160
125
78
106
131
49
54
140
156
145
78
110
177
133
87
102
118
165
73
112
108
141
144
122
142
158
135
122
114
106
157
115
102
87
107
108
103
113
108
61
87
156
96
108
90
54
128
139
136
82
183
106
93
139
74
110
103
54
95
104
129
148
109
146
93
106
107
146
158
167
113
119
135
106
154
125
92
126
113
125
105
132
125
108
92
98
123
156
141
103
154
132
125
102
173
113
98
96
135
152
131
142
127
61
211
153
106
122
158
106
133
77
95
80
98
167
92
149
108
108
96
154
104
95
105
128
82
118
87
122
172
98
90
102
128
128
131
177
63
113
188
98
147
108
81
122
132
113
93
194
82
62
59
115
124
98
151
129
152
157
54
90
87
137
123
81
99
100
122
67
177
116
167
90
103
126
138
133
92
105
132
90
102
107
96
132
125
96
137
101
155
87
158
123
129
82
108
110
146
112
97
123
154
87
49
157
102
81
172
159
112
54
74
95
116
79
113
80
99
120
82
123
108
98
114
112
125
106
49
89
49
113
104
113
158
110
117
96
79
128
97
115
168
162
129
90
83
81
104
93
121
131
100
117
95
133
85
103
78
136
144
91
100
129
129
108
127
97
151
131
125
138
125
133
104
84
157
138
78
91
103
83
131
98
72
141
54
111
140
93
87
69
102
162
80
158
110
99
96
146
147
110
83
104
138
113
90
127
115
103
70
83
170
124
148
105
124
69
59
68
133
83
168
131
102
111
135
194
128
151
144
145
105
106
69
144
74
101
85
81
89
96
149
104
79
142
102
125
147
146
120
67
123
128
129
163
159
113
125
140
133
158
54
93
124
90
90
117
105
145
165
49
113
171
117
93
93
172
117
126
118
141
121
102
102
135
127
74
122
157
76
100
167
143
145
101
138
54
102
95
98
177
77
54
71
120
118
114
161
173
105
67
95
117
102
229
113
120
143
133
186
68
188
90
114
49
160
68
108
127
134
125
78
158
79
110
146
141
103
76
133
108
54
142
135
54
96
108
110
83
95
115
95
67
95
95
117
153
102
178
130
93
133
116
101
128
141
74
106
194
90
88
135
114
139
108
102
122
106
122
113
130
110
148
137
105
164
86
157
158
108
82
148
96
163
122
122
134
138
137
101
147
108
122
68
80
139
114
107
134
112
136
135
153
110
117
142
68
98
125
49
116
140
154
104
81
155
180
95
77
110
174
155
105
128
107
128
126
133
81
54
107
177
133
108
102
144
113
129
136
154
54
120
106
97
123
108
93
109
114
158
54
83
111
117
143
98
146
109
127
95
114
107
116
105
113
129
105
129
179
90
178
104
143
81
110
99
148
135
102
78
119
186
96
129
116
97
128
125
126
49
148
104
118
83
93
146
137
83
86
113
164
98
103
115
97
113
99
92
87
107
137
67
85
122
165
158
135
61
68
133
85
76
79
133
158
170
119
115
96
98
118
167
100
143
152
103
101
110
81
164
86
108
100
127
97
95
125
200
177
89
118
105
107
117
102
106
95
156
125
149
138
105
108
91
83
148
107
91
111
81
104
143
59
59
95
133
179
107
146
107
158
132
152
120
98
137
139
107
108
186
83
95
59
107
67
108
145
109
102
142
76
165
144
93
91
138
84
93
110
98
89
120
116
81
67
137
80
122
54
74
67
169
100
131
123
105
94
162
117
125
145
154
161
81
94
159
142
112
120
74
100
122
115
135
105
114
103
135
137
138
120
109
132
138
161
130
143
85
117
90
125
81
89
125
162
98
120
112
143
151
67
98
123
93
54
112
147
76
125
106
133
103
161
137
68
98
102
98
126
102
113
54
79
95
95
141
82
125
115
67
158
114
100
141
89
145
110
100
112
61
94
141
113
154
93
111
149
130
125
90
134
118
114
97
134
119
105
120
91
108
90
127
54
103
59
98
165
87
153
108
108
134
113
143
102
91
90
91
74
77
135
119
118
128
76
84
96
98
133
111
130
74
88
101
134
148
125
124
132
153
126
140
112
87
132
110
147
97
141
108
74
59
110
99
103
123
112
118
135
90
45
138
142
95
76
113
148
110
103
125
108
102
108
116
102
120
93
54
120
143
108
109
54
142
161
83
126
129
155
106
93
144
54
133
132
90
125
101
117
115
169
80
107
112
157
149
148
99
105
158
129
115
107
140
133
144
143
59
119
113
93
97
139
90
120
131
155
98
147
59
87
143
117
94
97
116
74
118
84
105
120
98
148
119
117
138
68
129
139
98
49
177
139
106
86
86
129
67
129
109
102
118
54
81
82
115
90
155
96
108
67
125
93
98
93
188
104
109
105
129
144
144
107
59
112
87
135
110
133
111
98
82
144
74
74
119
148
148
133
140
118
133
105
74
150
91
108
80
115
79
128
105
128
180
90
95
103
142
78
54
126
154
103
108
108
61
112
172
107
108
156
105
163
108
95
74
109
91
135
116
113
103
171
102
83
113
143
125
101
107
103
101
67
76
98
108
135
140
131
112
150
139
103
148
54
105
115
177
151
82
67
96
89
83
107
117
107
93
141
106
143
143
133
116
127
135
107
105
120
138
118
132
118
150
77
153
88
174
135
137
81
135
137
59
110
89
110
98
81
129
133
120
130
125
97
135
102
91
70
59
79
90
169
133
91
91
121
133
161
59
100
106
99
103
108
155
153
161
94
113
131
112
135
119
154
111
163
115
146
163
160
100
186
98
111
94
132
167
95
129
138
151
119
77
132
126
73
162
145
122
81
167
115
122
138
103
161
120
123
101
102
147
172
130
77
102
157
102
107
118
103
99
61
76
118
146
125
84
119
92
172
129
139
149
127
59
77
120
95
140
177
120
103
149
98
133
89
97
175
124
59
155
140
94
86
90
132
121
122
85
49
95
87
93
128
145
85
98
93
149
59
87
150
59
139
127
122
94
160
59
148
77
165
81
124
81
93
119
145
76
139
78
95
95
153
136
123
54
98
98
153
81
81
105
93
49
145
129
54
106
131
118
179
102
178
109
118
106
97
74
103
125
116
152
135
120
125
151
125
81
95
78
59
108
54
97
59
120
113
108
127
179
112
49
77
193
95
168
141
102
120
140
145
168
142
85
138
120
107
142
148
95
133
124
131
130
105
121
74
103
95
120
108
186
154
103
100
115
120
87
78
87
98
131
157
102
82
116
161
92
145
74
93
92
130
124
79
131
177
106
112
132
93
137
106
90
87
105
89
146
87
141
155
109
140
49
95
74
116
77
150
119
174
133
126
105
82
85
88
107
112
83
153
123
89
135
158
151
128
112
108
54
128
108
98
95
84
104
81
103
86
54
120
54
149
108
180
119
124
109
172
74
108
142
93
168
113
93
102
49
130
141
111
80
102
178
86
120
171
113
135
118
85
151
134
77
54
102
119
176
171
128
163
98
141
87
127
103
107
101
125
141
102
124
149
102
113
99
83
125
90
89
93
127
125
107
145
93
112
106
120
67
105
132
123
159
123
132
155
106
147
112
127
91
145
75
135
99
151
126
95
75
173
107
98
146
83
101
112
103
54
101
76
146
93
120
95
74
108
133
114
104
116
90
133
110
121
122
164
90
82
115
117
165
115
85
114
163
54
165
108
103
102
103
101
115
97
144
80
164
163
108
156
132
139
123
152
84
105
120
81
49
89
111
139
116
108
139
85
132
155
129
97
156
97
133
143
93
111
103
89
93
114
129
120
123
128
105
69
113
91
106
116
67
135
123
108
119
118
103
93
76
95
177
128
140
77
146
85
140
110
114
108
180
78
115
95
98
116
131
87
122
80
120
132
178
142
110
111
93
135
157
81
153
59
101
71
158
102
135
90
156
105
109
98
95
112
128
87
150
87
67
141
85
105
155
135
54
104
110
119
143
90
175
105
131
112
83
91
179
171
78
87
112
54
95
107
49
108
127
102
98
128
97
172
131
49
117
147
139
98
146
126
134
74
54
120
145
139
132
95
119
59
118
114
84
87
133
148
166
188
125
112
98
127
87
145
102
150
54
112
84
106
152
87
163
133
112
129
139
125
103
102
122
123
156
121
148
143
74
76
105
82
119
92
102
159
87
110
116
120
157
120
81
113
117
98
126
78
65
144
144
80
125
158
118
116
114
81
117
59
79
116
108
108
134
188
128
100
103
149
160
110
112
96
68
107
109
76
74
127
102
105
77
144
105
120
79
98
102
123
140
97
135
135
102
145
78
149
149
128
54
98
157
118
115
85
97
110
96
70
107
106
114
88
120
111
74
96
129
139
172
78
122
125
131
91
159
115
104
106
140
69
104
125
111
158
91
178
93
175
111
130
190
102
145
172
82
129
79
99
114
109
89
141
177
118
120
117
98
89
138
108
139
150
163
69
123
137
103
104
140
82
94
200
92
124
108
157
156
120
89
108
106
146
108
108
143
113
106
115
93
98
59
121
115
146
85
90
61
113
76
158
165
92
129
136
97
182
106
82
107
134
117
140
135
161
110
81
111
132
49
75
95
98
129
180
156
165
128
77
122
80
177
74
122
115
102
96
141
140
54
82
105
110
120
98
98
134
142
83
135
108
142
98
76
95
92
227
171
153
98
120
130
111
91
92
127
103
135
108
107
113
149
108
115
139
154
49
166
133
137
165
154
98
106
130
94
127
121
140
130
80
125
84
102
74
108
165
97
177
110
150
173
108
108
105
81
158
112
54
97
167
144
140
136
95
65
156
103
106
115
180
107
131
101
78
77
160
103
115
143
170
54
54
126
94
139
96
112
111
161
127
93
76
112
49
114
185
111
91
131
68
142
76
95
112
95
134
113
133
131
116
98
162
81
83
136
120
102
98
54
111
128
94
108
118
90
103
98
80
108
72
59
109
98
134
109
122
95
106
108
194
143
79
93
133
147
102
190
184
98
118
93
86
83
68
93
142
85
104
96
128
103
68
89
88
81
70
54
102
105
105
119
102
108
125
99
110
125
95
101
89
138
94
103
130
76
152
138
96
119
122
85
102
163
117
91
113
122
108
167
186
141
121
117
102
78
158
103
106
109
130
126
150
95
173
110
91
139
98
93
76
109
81
132
121
125
87
134
80
158
158
121
145
105
99
103
144
104
185
132
95
154
127
105
77
158
117
81
95
99
125
49
92
118
80
117
163
180
156
169
79
97
118
96
147
169
95
126
115
102
112
139
149
89
128
149
126
97
95
122
152
61
126
83
92
81
148
107
129
132
85
92
112
108
108
69
65
147
128
105
74
128
148
74
115
146
90
150
199
109
153
86
148
114
102
177
90
95
145
144
107
127
147
131
113
113
109
128
144
106
113
113
87
74
125
161
121
81
107
133
105
83
93
147
103
85
102
118
105
128
118
105
148
78
174
116
140
81
140
86
105
81
102
138
131
125
133
171
153
138
149
98
147
154
68
77
101
84
104
93
82
102
128
148
99
129
132
54
121
103
120
169
111
95
54
78
161
135
97
136
82
90
135
54
177
143
69
99
139
152
129
122
115
120
149
108
129
74
74
82
120
169
59
102
125
90
114
130
108
108
148
150
115
133
128
177
83
87
151
123
109
123
87
146
129
130
81
98
59
103
121
108
81
108
150
122
112
150
218
143
145
152
113
102
119
108
166
69
98
98
103
128
54
165
101
94
101
141
140
83
105
68
111
95
93
128
162
133
148
113
128
103
118
84
161
95
168
168
98
158
105
133
106
119
102
89
129
145
155
171
134
134
59
102
105
108
119
90
114
72
149
59
107
99
138
103
147
148
77
131
148
143
85
107
103
148
102
138
90
127
112
135
123
103
95
154
96
140
108
136
167
129
145
115
147
108
181
127
102
116
104
116
113
151
140
105
105
59
82
95
87
145
95
88
87
103
104
178
100
108
141
140
102
54
102
54
98
160
106
150
83
95
108
187
143
67
69
83
124
69
94
116
139
139
131
104
79
121
100
148
90
129
122
116
148
109
121
125
77
108
120
81
128
134
169
69
116
131
98
168
94
151
49
118
93
176
93
98
150
149
131
95
133
109
100
106
145
120
90
172
90
166
106
107
113
108
120
94
93
118
140
139
138
90
156
67
86
128
117
86
100
139
128
82
107
153
161
113
94
158
125
132
159
131
54
94
86
126
107
123
72
144
134
59
128
161
139
92
97
164
143
128
195
74
126
81
74
83
83
145
112
91
95
49
102
141
113
80
186
121
110
89
67
96
134
135
93
102
87
159
114
156
150
67
82
108
95
180
167
106
83
125
98
113
158
106
91
128
163
83
146
107
160
100
95
149
81
78
82
128
76
135
127
85
95
110
136
130
83
125
59
177
87
120
115
114
98
95
124
167
91
90
115
95
143
105
148
115
111
178
125
129
77
87
133
142
59
95
69
87
82
59
131
142
103
153
172
125
98
139
131
81
88
82
105
74
136
54
112
129
115
82
123
87
95
104
87
108
116
94
100
114
92
107
81
124
113
125
128
113
138
129
82
118
117
153
160
131
54
86
78
98
93
145
136
123
133
104
98
125
93
140
119
133
79
125
113
96
129
86
153
140
157
130
92
80
137
124
119
145
169
212
72
102
104
106
71
95
146
137
127
106
54
96
82
113
135
59
147
142
128
137
135
157
133
90
138
89
90
108
120
98
83
138
155
98
145
141
142
124
167
126
82
122
54
124
89
67
95
49
90
97
120
74
178
108
133
139
92
98
147
102
90
114
88
97
109
141
177
116
90
133
97
147
115
139
123
128
115
49
132
173
67
81
143
147
54
102
180
109
85
114
109
76
93
118
130
130
169
103
95
132
104
128
146
78
87
119
108
105
68
67
88
137
93
172
134
113
153
145
125
105
129
161
91
133
148
147
156
96
154
87
128
140
87
87
116
98
138
96
119
135
146
124
127
107
110
54
177
140
81
146
76
107
108
77
133
145
148
116
91
171
108
112
160
108
138
77
79
127
118
95
81
135
157
117
157
173
144
77
127
134
144
155
143
139
135
114
110
152
122
103
140
76
145
96
81
95
87
93
150
108
103
129
135
127
116
87
105
181
101
105
113
95
140
159
147
74
121
162
61
122
81
128
96
113
74
99
128
113
95
143
145
128
98
77
95
102
129
87
107
68
118
85
98
134
146
167
105
124
136
104
102
148
165
144
87
110
134
136
86
91
49
74
134
141
104
106
105
85
133
82
103
108
59
106
120
93
81
91
158
126
113
102
107
156
139
85
81
226
135
102
125
144
128
129
121
69
113
99
141
81
74
110
96
128
110
154
84
98
140
96
145
103
67
98
54
81
76
120
143
108
102
157
103
110
177
105
165
78
124
109
54
135
152
94
119
100
82
74
102
115
144
111
95
97
135
145
98
122
107
98
103
93
87
79
110
165
119
95
72
108
95
90
105
92
54
77
98
111
133
113
102
82
128
133
95
91
111
100
102
67
119
171
76
108
91
90
108
80
89
102
114
90
82
95
123
174
102
95
95
129
138
103
110
95
128
176
90
138
54
99
78
111
63
124
125
103
150
138
93
150
72
54
116
110
114
74
133
114
154
104
95
120
54
151
150
131
72
118
162
76
108
121
143
69
134
109
177
102
142
145
106
135
109
154
150
123
92
140
90
186
95
90
151
120
129
103
102
129
145
105
98
96
126
84
108
136
105
74
140
95
116
99
81
79
145
151
105
92
109
80
158
148
177
115
103
130
150
122
190
160
78
111
147
85
146
117
108
103
68
104
133
142
160
152
129
123
170
118
95
74
124
121
49
120
162
134
82
122
98
95
103
54
125
75
108
171
134
81
118
125
123
54
104
77
124
135
108
67
131
108
108
105
154
76
152
96
112
107
82
139
202
67
102
132
145
61
162
137
121
90
54
152
148
115
135
86
115
100
85
112
99
137
77
172
90
83
112
77
138
167
102
54
122
81
101
77
95
104
128
125
108
122
177
92
98
129
95
84
157
113
123
170
98
106
119
87
121
107
97
172
90
118
115
71
112
99
73
138
143
98
70
140
81
78
108
105
108
93
119
99
133
114
104
112
105
78
102
77
139
107
129
117
113
121
144
140
103
100
128
85
119
100
136
74
112
148
90
142
125
149
180
114
83
122
112
96
74
54
141
92
102
102
104
127
136
170
106
135
102
96
153
76
105
67
100
82
82
98
102
129
91
227
120
76
139
177
103
140
104
156
140
133
103
86
73
81
83
181
111
147
172
134
102
165
138
108
163
146
105
74
144
105
111
106
113
155
150
81
160
181
74
146
124
105
148
157
160
87
133
115
170
98
49
139
142
160
54
77
116
111
112
91
142
141
54
101
126
102
118
84
95
169
106
96
103
163
86
153
153
103
107
98
140
104
154
105
103
108
126
80
111
70
123
102
82
85
95
135
99
74
89
161
81
85
90
98
95
95
123
85
61
74
111
116
74
106
100
122
148
54
106
140
104
100
107
95
105
109
87
107
146
128
147
102
198
108
63
165
108
146
88
95
109
126
119
97
93
54
92
84
102
108
146
78
143
126
98
140
186
125
54
133
126
134
102
141
98
142
81
107
119
127
90
110
113
156
125
92
122
92
128
95
61
87
49
148
78
168
127
105
122
143
95
83
108
139
78
49
95
54
78
138
127
110
120
111
97
90
102
139
49
148
167
112
172
165
120
54
95
122
134
143
102
74
103
144
88
110
135
102
97
95
116
139
106
77
142
100
180
100
143
138
87
123
113
90
176
103
106
122
93
110
99
100
102
105
104
54
118
81
139
109
131
133
94
81
108
108
113
144
183
143
131
108
112
70
110
140
98
93
95
152
110
137
86
54
105
141
90
133
183
98
103
106
91
155
54
89
95
102
106
122
140
77
67
106
140
123
54
125
121
151
119
126
123
92
114
65
159
125
89
128
135
144
82
83
162
106
160
102
98
123
116
120
156
88
146
146
61
156
123
145
126
127
102
123
115
102
94
146
103
77
94
128
117
111
120
81
138
98
112
118
113
149
113
126
152
131
99
108
106
90
93
134
125
107
118
95
67
102
76
110
95
90
54
145
140
98
98
74
113
121
139
102
146
89
85
117
95
108
154
87
110
157
83
102
171
192
90
108
97
87
54
108
83
126
121
95
103
105
96
132
95
102
97
95
134
82
92
140
160
180
114
74
165
145
114
125
78
153
127
158
143
111
110
126
146
142
107
54
98
82
103
102
128
101
95
95
118
97
61
113
99
82
103
80
95
132
133
125
88
90
88
182
177
95
108
159
68
133
157
101
130
128
111
156
161
169
97
125
67
74
107
131
146
97
108
109
81
54
74
122
146
108
133
156
95
144
145
142
115
129
86
76
120
200
103
143
103
74
101
152
105
54
181
125
112
90
80
140
108
82
148
136
61
118
129
123
109
162
122
98
82
99
102
120
123
98
90
102
125
90
76
78
128
104
74
116
105
95
130
112
59
82
107
87
130
110
116
76
138
99
130
155
132
106
104
143
93
102
148
140
108
124
87
113
95
113
125
95
67
95
68
102
104
99
78
96
117
124
168
87
108
67
59
144
128
124
130
79
140
145
131
133
157
107
120
110
128
143
82
119
108
174
78
104
144
91
110
121
108
127
149
87
137
111
198
102
138
122
98
117
106
87
84
109
54
149
101
74
113
89
135
49
119
158
124
96
96
114
123
115
118
109
128
120
173
81
76
115
158
114
54
96
98
117
92
122
127
144
116
101
127
90
112
107
208
140
83
119
98
98
191
124
93
131
108
146
135
158
124
82
147
107
149
98
145
82
109
132
81
77
101
168
168
98
102
134
81
101
136
143
108
90
113
96
128
108
119
85
114
108
134
152
95
98
115
110
90
95
131
167
150
98
82
170
76
88
152
82
101
149
102
113
112
95
116
134
136
96
101
135
121
141
113
130
80
155
102
156
114
89
117
145
117
127
76
129
76
92
87
129
108
108
78
67
102
182
72
103
95
115
116
113
131
59
63
89
116
144
130
106
82
139
156
95
125
97
81
157
93
86
95
90
83
115
93
81
105
95
90
113
77
90
103
152
106
118
67
121
79
120
98
128
163
102
125
152
135
95
76
113
74
127
77
136
93
129
156
84
106
133
122
76
74
93
116
112
67
94
189
133
105
49
138
67
122
86
125
113
100
114
96
153
171
176
157
159
94
131
134
68
168
135
67
131
129
148
134
61
131
132
110
69
95
61
111
54
130
148
122
92
128
94
100
98
96
163
117
100
135
158
125
151
115
99
67
95
129
200
102
115
91
134
76
81
102
128
102
88
110
61
163
112
114
109
82
98
102
129
160
143
98
124
115
102
98
115
127
143
120
94
100
135
110
113
119
139
108
119
97
113
69
115
84
165
99
121
95
98
83
193
125
69
74
103
135
143
54
166
147
173
104
108
193
100
85
76
113
122
49
109
141
93
101
106
131
74
119
139
113
124
146
105
95
128
127
133
65
94
93
139
151
111
125
134
98
149
163
103
123
139
95
145
118
67
103
141
81
113
111
126
97
108
95
106
93
82
120
106
94
138
166
81
83
168
70
145
59
118
91
108
116
88
90
95
95
54
121
108
105
73
103
168
165
140
119
95
82
77
103
137
59
88
118
158
99
133
89
128
107
116
115
156
54
123
164
135
184
123
183
111
113
80
119
133
100
124
124
131
128
121
90
177
101
103
54
80
180
114
108
123
128
134
81
108
153
134
111
144
93
67
110
130
69
74
128
107
158
95
135
94
54
108
114
103
98
81
54
74
141
114
76
108
128
163
114
103
140
158
102
123
131
82
141
109
98
135
101
140
108
139
129
140
131
93
133
102
93
132
108
115
128
97
73
59
140
120
158
98
145
168
142
96
54
106
180
89
145
108
144
116
131
144
133
114
87
117
109
82
98
128
94
150
94
78
125
112
113
128
110
116
144
95
133
108
142
140
142
102
169
148
54
109
143
82
109
108
96
111
77
97
102
102
115
107
59
116
106
122
130
68
124
165
91
112
123
140
102
54
148
150
54
111
160
100
82
136
152
147
103
97
76
164
140
77
102
114
142
109
90
112
155
108
117
102
146
103
96
151
77
112
145
139
96
68
184
98
77
108
96
122
76
99
90
77
118
120
81
114
143
95
138
142
91
118
143
103
168
74
103
123
147
150
125
81
102
84
133
175
98
90
54
54
112
102
124
145
125
131
120
125
158
93
95
103
147
141
129
87
98
118
54
120
200
148
109
126
117
54
129
132
151
88
135
103
95
127
75
131
85
81
158
139
105
102
110
49
97
114
99
131
95
93
108
98
133
135
134
155
108
118
87
76
106
72
128
153
154
106
136
54
112
113
127
134
89
161
129
107
102
132
103
95
90
89
115
110
89
96
140
135
67
140
107
114
101
101
128
123
84
54
121
97
107
110
170
114
127
82
121
141
116
130
176
131
106
125
109
125
90
93
121
95
142
131
104
103
69
81
95
95
128
113
98
95
95
69
113
131
123
159
139
113
167
133
161
54
120
86
102
101
121
54
108
128
128
82
54
96
106
87
102
138
127
101
117
100
97
76
123
83
145
135
95
91
61
161
117
105
102
112
173
118
161
54
103
87
93
131
74
77
108
99
138
67
145
74
124
158
135
98
102
113
140
118
95
129
178
137
112
129
76
80
143
70
117
96
103
102
180
107
67
130
102
154
89
124
149
148
93
157
110
125
102
95
147
101
115
151
107
116
108
155
77
124
140
82
95
101
169
110
124
134
65
115
49
113
105
123
122
54
88
54
105
54
95
83
88
119
143
149
156
95
110
117
103
93
107
92
54
147
113
77
121
77
105
54
188
165
121
165
102
98
76
143
160
131
93
107
135
131
108
148
74
95
174
148
84
54
121
178
93
121
94
108
108
110
103
102
152
87
59
105
92
98
98
119
118
182
74
156
98
137
102
59
105
113
90
88
114
110
89
102
127
124
105
125
116
130
114
93
88
108
149
147
106
106
103
105
113
86
108
85
87
110
87
100
67
101
109
133
132
89
108
102
82
142
177
158
89
91
137
145
136
57
78
119
105
59
112
144
91
109
85
85
145
108
118
138
112
177
143
85
91
106
113
65
103
125
110
149
135
109
161
127
79
49
125
120
136
146
158
120
133
115
165
103
82
124
119
111
103
140
156
178
98
129
93
93
54
108
152
103
103
130
93
120
105
115
138
54
102
59
148
121
126
133
100
121
54
82
98
202
85
90
78
59
107
163
148
145
99
163
105
116
120
91
98
129
81
95
104
142
139
158
102
102
78
128
195
134
113
95
146
77
139
108
125
128
192
118
127
92
86
191
166
110
107
54
131
127
143
135
91
127
105
104
74
94
106
163
185
108
125
110
168
147
114
145
107
61
74
88
99
87
102
82
119
65
83
113
76
163
108
81
126
80
102
113
109
108
103
123
87
102
144
83
105
149
74
114
163
80
54
81
80
131
85
112
126
127
95
177
134
138
81
127
127
190
159
146
147
94
129
119
78
185
141
100
69
79
124
82
142
122
143
148
98
132
143
123
54
151
146
146
126
80
61
121
126
123
100
155
139
103
128
148
54
102
113
113
154
144
145
96
154
97
111
135
93
102
82
123
148
120
127
95
116
94
104
133
152
144
137
104
115
87
119
107
125
121
93
135
155
115
90
106
168
170
113
87
136
105
170
113
89
145
140
113
161
107
95
81
108
131
106
169
94
105
106
96
119
102
149
108
134
113
95
119
161
120
54
133
100
107
120
120
127
83
118
123
107
98
81
106
67
105
125
98
135
54
89
83
147
54
91
105
126
105
104
81
184
83
145
128
131
76
108
160
133
133
125
151
77
103
49
118
82
96
87
54
139
108
84
73
93
120
108
107
130
132
83
76
138
102
122
139
92
147
138
97
131
97
49
54
108
161
156
125
106
161
120
85
90
54
129
158
107
104
80
138
95
54
111
103
110
71
123
109
123
103
133
90
120
115
113
115
126
147
133
120
124
138
120
139
91
62
80
107
153
178
110
119
125
92
149
98
100
142
150
67
120
112
145
91
135
170
111
81
108
114
92
107
138
54
93
117
164
90
134
105
116
74
119
123
140
115
91
157
126
131
90
114
117
95
117
105
139
114
119
104
102
100
155
148
103
106
118
107
93
138
67
95
78
78
74
85
76
175
153
103
77
98
103
108
117
149
69
115
108
134
102
86
99
82
106
90
106
77
95
78
125
187
129
143
96
124
54
161
100
133
119
59
95
81
78
146
154
59
82
97
105
139
134
115
108
108
131
111
168
108
95
144
84
45
85
114
108
121
119
81
108
143
94
81
150
123
110
81
149
106
54
145
102
112
89
128
180
128
75
106
82
95
98
118
130
179
144
98
162
103
115
129
136
170
83
107
49
117
152
168
151
99
176
127
80
117
102
157
95
134
93
123
131
108
90
102
81
106
88
113
144
145
74
78
74
100
87
124
137
82
125
105
143
135
125
134
74
54
102
84
87
86
105
153
103
160
114
168
134
133
163
178
78
78
107
89
54
176
71
102
107
110
67
74
117
54
113
74
82
108
87
79
131
65
128
125
116
139
105
182
168
85
98
89
129
151
54
114
82
138
112
93
115
160
107
72
106
156
144
85
96
145
168
150
161
131
151
150
76
87
133
68
142
131
130
132
162
49
84
100
177
102
134
120
168
117
136
125
190
157
67
54
137
96
119
153
129
102
54
74
164
108
124
108
92
102
152
145
191
93
77
97
179
103
155
77
123
145
101
83
90
102
93
165
126
54
125
164
121
82
92
161
114
158
115
153
95
108
105
95
49
95
98
158
146
141
146
105
73
95
179
85
121
141
157
129
104
124
54
125
113
102
124
120
138
139
90
72
114
91
103
143
90
82
76
87
156
125
112
84
94
117
108
148
102
108
110
86
83
111
135
105
54
161
128
109
123
161
101
74
139
176
116
76
114
118
110
87
115
67
113
122
99
105
103
129
59
80
103
102
100
103
65
125
78
88
107
149
103
109
145
95
165
170
77
54
74
142
91
103
112
133
150
135
149
108
130
102
91
85
139
97
89
82
83
113
134
111
91
109
158
160
126
163
115
131
93
81
100
97
122
131
82
125
102
116
154
161
54
152
95
116
113
98
129
112
112
82
142
54
132
117
115
98
164
141
74
140
125
131
130
145
54
103
141
144
102
157
90
96
113
100
77
108
103
146
96
124
129
117
120
127
78
94
131
54
105
106
138
78
111
54
190
133
103
130
138
146
116
169
118
153
104
133
83
103
114
107
68
122
119
155
133
115
145
94
145
139
100
125
114
93
101
120
112
148
93
157
81
188
90
141
83
130
141
111
121
82
109
102
98
102
113
68
104
177
143
139
116
146
174
123
87
142
124
98
102
95
126
98
110
108
87
93
49
103
170
94
96
115
112
108
143
102
96
49
83
85
128
74
135
78
126
98
156
126
108
125
49
107
106
101
115
157
109
118
171
67
147
139
129
113
91
85
90
108
105
162
96
148
127
164
89
163
79
77
81
78
97
103
155
99
133
85
76
102
108
72
124
117
112
78
95
159
120
129
90
54
90
133
95
114
109
177
127
62
42
59
157
78
117
125
67
108
150
72
140
82
108
115
106
87
96
91
124
109
135
177
164
95
127
127
119
95
94
125
154
145
145
128
125
105
109
138
112
134
143
131
98
81
74
103
119
92
124
150
177
130
153
113
90
143
143
99
102
105
97
160
157
96
98
125
109
113
69
170
96
113
159
106
140
96
123
106
168
54
145
147
133
160
95
193
82
121
172
181
96
110
101
90
141
121
145
119
119
153
108
98
123
89
115
129
82
147
167
108
143
54
87
140
97
99
152
105
96
135
89
90
101
176
116
79
105
125
124
103
135
83
98
54
119
93
87
89
105
143
148
77
130
177
98
81
99
145
100
59
54
115
128
116
95
125
134
132
112
109
98
157
77
106
126
102
77
102
107
68
42
131
93
81
74
114
123
161
108
130
90
128
138
126
104
82
78
128
181
117
114
107
141
74
90
172
175
145
128
98
106
113
144
67
137
143
106
116
102
144
135
106
95
157
179
158
137
49
120
87
133
103
105
133
141
108
103
133
142
59
140
69
182
131
96
115
101
110
117
83
116
105
102
80
119
123
93
101
93
108
116
157
127
79
160
97
131
160
215
124
128
145
54
101
150
123
172
42
128
180
98
138
119
117
120
180
122
96
102
90
144
78
82
160
106
133
129
54
74
129
173
143
96
113
138
97
119
54
154
122
111
59
124
141
141
54
81
104
54
114
98
98
148
134
107
90
72
98
125
160
135
100
118
98
144
122
139
146
109
176
104
102
127
131
150
83
125
119
45
159
102
102
124
54
135
82
163
112
107
105
131
78
111
140
54
135
167
90
107
129
140
116
77
156
140
124
145
121
109
120
153
160
101
157
54
132
127
124
146
95
199
127
118
74
128
96
109
102
132
92
124
108
54
75
71
149
78
160
124
103
107
82
82
128
119
61
117
121
95
101
74
128
96
153
105
122
126
117
159
126
147
100
133
100
129
87
95
110
105
93
106
125
163
133
132
87
108
128
118
97
133
136
75
131
132
129
135
95
103
125
87
169
113
133
54
96
103
96
90
95
96
84
108
135
91
98
83
165
103
74
76
74
59
240
115
153
90
98
100
101
68
145
102
83
133
136
78
168
105
108
54
183
83
177
138
108
86
177
92
102
170
154
90
59
149
125
191
129
120
126
152
54
143
109
82
107
139
104
135
113
173
132
175
113
92
120
131
125
89
87
103
120
127
131
119
172
137
106
93
92
82
54
105
92
127
84
85
157
140
169
107
112
146
108
95
106
131
140
139
102
106
102
105
93
67
98
61
82
108
54
176
140
77
90
95
125
82
74
133
141
70
146
127
135
76
144
124
128
59
102
138
196
74
102
133
121
121
96
131
78
184
81
163
157
105
151
129
54
74
172
83
112
95
136
73
126
88
116
213
122
108
107
98
136
177
78
100
145
89
110
89
104
83
160
135
143
134
113
101
120
143
99
68
143
85
83
85
49
145
133
68
119
54
124
83
95
79
165
168
133
129
154
83
95
129
146
158
133
86
113
191
54
102
109
83
148
133
106
87
107
128
167
177
105
126
105
128
180
98
139
143
127
95
94
106
126
93
76
95
106
130
158
86
139
81
151
192
112
110
121
49
157
170
148
49
59
77
146
140
91
118
73
105
133
109
130
119
87
100
138
103
123
79
110
111
110
102
77
101
107
82
145
142
135
88
90
135
93
121
114
116
98
135
101
130
122
90
108
103
117
145
95
109
108
91
143
82
104
100
116
93
125
97
86
154
128
107
135
90
117
149
123
76
82
177
123
126
98
69
76
117
82
102
98
81
108
84
109
134
127
97
158
132
107
170
120
100
91
123
90
95
87
120
108
149
113
141
119
95
108
122
98
125
102
98
136
114
87
165
145
126
107
145
133
102
124
83
200
140
130
104
113
106
54
138
74
102
147
143
107
132
54
169
87
131
107
128
138
108
87
127
172
91
190
132
113
137
98
87
68
102
90
133
158
143
149
83
54
77
161
124
162
139
157
74
121
112
83
102
136
139
177
98
160
111
177
88
102
129
93
134
112
118
130
76
139
93
108
164
126
109
159
112
156
146
98
118
154
54
161
93
108
89
112
123
106
151
158
129
106
145
90
108
105
99
173
102
131
186
102
148
160
122
191
69
170
155
124
102
122
85
106
91
132
125
68
146
134
127
128
110
125
61
125
91
137
90
140
131
102
120
116
136
90
54
108
104
149
122
147
145
106
146
90
160
54
127
54
81
87
82
107
194
92
107
134
87
130
78
91
140
125
138
78
78
105
119
87
158
113
113
82
136
87
113
103
81
174
156
122
138
135
74
110
122
96
108
148
116
140
112
74
89
133
137
131
152
148
96
120
125
108
96
81
87
118
122
98
147
167
177
144
148
76
161
110
99
120
106
74
92
110
137
54
109
156
136
133
128
142
126
107
119
127
118
90
148
54
111
54
74
132
153
108
128
96
125
61
89
122
123
99
125
148
107
113
165
74
98
151
49
134
114
151
146
54
133
112
166
49
123
111
83
133
103
111
161
99
114
96
110
97
91
133
109
148
128
126
131
110
105
91
74
112
108
130
162
112
151
68
128
103
125
49
103
139
148
54
177
148
116
131
82
143
84
69
118
164
54
182
137
157
91
95
165
91
107
84
150
49
123
89
134
128
164
93
108
125
158
103
159
111
123
123
107
177
108
161
151
102
89
139
154
128
123
105
93
127
189
93
116
124
98
125
180
145
74
128
108
74
83
95
133
86
155
45
177
101
139
129
119
121
116
87
80
49
91
78
131
73
115
151
124
104
162
128
123
172
105
98
102
94
114
102
113
98
93
133
110
132
131
105
125
128
102
91
125
49
182
112
115
82
81
120
76
69
129
173
78
103
188
102
93
155
191
134
95
112
160
118
108
143
145
135
125
95
142
121
99
122
61
81
99
104
98
80
87
131
138
158
154
124
108
129
146
88
147
81
161
106
99
54
122
113
87
148
125
81
148
163
120
123
112
112
108
103
77
42
54
54
95
123
168
138
106
98
106
103
102
98
122
138
69
97
54
116
144
49
129
135
156
193
142
108
131
129
116
49
97
111
93
127
59
149
99
93
116
54
158
98
114
88
108
110
112
100
104
85
123
125
102
118
106
96
135
114
59
99
120
99
154
117
101
113
69
154
163
147
103
127
131
146
102
106
125
125
165
165
113
190
100
145
99
128
98
127
128
145
77
150
102
130
128
158
148
125
72
123
128
106
84
129
103
144
160
133
113
89
113
127
123
103
121
69
95
78
108
95
102
110
130
114
149
98
105
137
54
84
117
114
151
107
81
107
125
122
97
111
115
95
95
90
82
103
113
89
144
92
93
165
150
165
141
54
120
123
126
77
120
125
116
132
163
129
67
125
128
115
135
133
96
74
111
108
99
145
180
106
49
143
88
125
165
141
127
144
128
99
76
139
123
93
54
144
82
98
137
87
114
133
113
119
91
149
102
138
148
54
170
154
95
150
142
125
102
108
122
78
157
143
99
129
82
102
144
139
116
90
144
100
126
177
137
128
148
100
68
100
136
126
54
82
125
115
87
99
118
150
67
54
77
108
152
101
97
109
92
133
131
130
87
49
54
193
148
95
163
122
105
142
130
127
81
98
108
152
80
97
105
113
79
61
54
156
74
91
128
83
95
120
98
143
135
54
96
122
124
128
124
120
102
116
97
163
161
157
170
85
111
160
113
125
83
164
200
81
113
189
179
96
67
148
141
193
173
155
122
78
125
99
74
108
139
130
132
136
125
134
105
69
74
68
149
110
160
138
142
74
139
110
102
95
129
115
117
76
128
102
155
116
122
127
151
91
129
116
108
110
122
100
109
115
107
107
110
164
114
98
122
147
127
108
115
112
104
77
149
93
129
81
135
54
153
87
107
74
137
109
108
107
140
95
128
129
129
133
49
161
88
122
122
122
145
155
82
152
102
99
81
116
76
144
49
104
113
74
54
125
127
148
128
149
114
87
133
81
137
102
118
99
139
74
110
120
163
113
125
166
86
100
113
128
114
81
110
104
148
158
136
96
129
161
54
59
112
95
102
95
128
89
111
128
141
140
106
111
95
154
124
109
145
158
108
117
94
177
74
113
120
93
76
87
83
94
95
91
45
151
112
111
90
136
98
126
102
162
59
116
102
145
113
128
93
103
120
72
107
143
118
141
103
143
116
74
100
122
97
104
77
138
98
82
95
108
87
106
129
108
108
87
83
97
122
108
136
118
59
128
91
101
146
108
134
80
131
85
113
121
130
117
113
85
97
117
133
82
133
94
184
67
91
115
132
173
59
138
144
91
87
111
106
160
102
102
133
171
112
108
149
132
49
141
125
139
59
54
116
78
82
148
86
148
104
117
95
117
135
98
114
106
138
127
126
54
151
122
103
85
97
114
96
54
139
108
95
49
87
117
94
156
54
152
118
96
113
108
90
139
95
88
128
156
117
126
140
91
104
113
112
95
115
135
108
112
103
140
156
72
106
95
123
129
105
86
103
54
124
76
107
150
82
116
117
54
103
139
143
118
81
98
165
123
130
156
123
90
171
139
98
92
87
154
49
96
162
131
93
143
107
131
73
115
110
80
90
128
110
102
98
133
96
108
105
125
49
120
135
121
118
105
45
84
141
68
49
103
111
148
139
101
125
182
129
94
77
148
126
127
74
125
149
191
148
150
105
130
145
74
125
49
116
146
49
108
84
144
143
105
128
141
119
151
135
106
128
97
97
100
85
81
156
102
110
76
74
67
54
148
149
103
140
125
68
102
135
100
72
82
79
93
194
89
85
103
89
88
115
54
125
95
135
98
140
108
148
125
156
107
95
146
177
135
79
122
174
113
141
127
95
59
125
116
112
150
81
149
127
141
91
99
90
97
49
156
128
78
116
70
74
123
156
103
117
156
113
69
77
101
118
154
152
106
116
95
76
125
117
87
156
49
94
76
106
96
81
162
126
99
170
109
111
61
95
97
101
98
82
85
112
54
82
124
94
100
158
146
105
108
85
102
119
161
93
165
131
85
69
96
142
157
108
171
163
95
125
101
175
103
90
141
107
98
108
136
136
95
149
117
144
115
147
129
127
116
127
133
139
128
139
164
147
59
68
108
125
133
175
137
131
84
94
95
177
93
114
59
141
67
63
134
103
170
165
124
108
127
92
143
114
129
188
87
152
116
87
81
74
93
76
142
102
138
74
88
116
120
93
142
200
108
68
133
134
108
114
151
169
81
76
143
120
161
135
195
143
117
129
76
127
128
134
97
85
121
121
146
100
59
94
125
106
72
115
157
128
135
102
105
54
135
112
61
132
78
101
108
131
131
122
114
54
81
146
108
66
81
142
118
59
135
135
143
102
112
115
186
131
83
134
107
119
95
134
81
54
90
49
98
103
158
81
94
167
135
78
119
137
134
130
103
129
140
54
103
127
108
105
86
54
161
106
161
101
162
143
95
101
89
123
141
78
109
103
105
131
150
146
108
152
98
155
127
77
105
94
89
87
59
130
95
106
76
102
74
128
49
140
135
123
113
108
81
95
124
186
112
107
110
143
102
131
102
136
81
121
108
108
98
98
135
125
117
125
119
127
129
166
136
123
127
106
121
54
103
152
131
125
170
102
169
104
134
140
89
112
114
81
129
200
179
129
87
87
82
102
136
86
103
108
102
85
181
98
131
106
107
146
111
105
146
179
91
103
105
110
160
125
54
54
96
94
141
109
133
165
146
122
122
82
159
122
129
131
144
173
153
118
138
116
114
112
112
112
97
122
153
140
132
103
54
76
81
112
102
105
110
131
128
87
96
169
129
117
111
124
54
54
59
130
135
84
115
107
122
127
54
111
142
85
90
108
134
98
148
143
128
148
112
82
75
86
89
103
102
123
102
82
139
144
157
137
86
123
54
131
115
150
111
173
101
129
133
135
118
85
144
120
76
97
123
81
119
118
87
98
95
127
94
196
130
114
107
181
96
116
118
118
104
88
94
54
74
59
141
132
149
83
91
87
115
165
81
139
114
88
54
95
151
122
61
80
115
103
126
102
126
108
200
54
105
163
78
149
144
119
84
54
110
110
118
91
98
93
125
125
113
140
160
138
155
49
110
172
102
167
145
135
96
139
140
106
94
124
126
156
142
109
133
141
148
101
59
128
127
117
54
148
153
113
93
93
68
82
113
92
54
165
127
88
93
120
95
123
120
143
119
100
81
82
159
160
76
82
134
135
150
95
95
104
85
134
108
97
59
105
116
103
59
99
204
94
116
123
113
122
112
103
157
105
90
68
138
135
105
148
138
161
113
153
140
102
73
90
143
141
106
174
141
117
95
108
76
114
96
133
135
161
129
95
88
105
118
118
123
177
57
81
110
131
161
102
83
122
115
148
108
108
145
177
81
106
140
149
127
136
106
110
126
113
161
90
100
128
102
86
59
76
117
148
105
119
90
87
151
86
116
59
145
123
74
149
54
108
132
163
122
134
95
90
153
120
120
98
101
101
54
120
54
123
171
149
54
136
124
102
91
140
148
102
143
104
67
109
115
77
93
108
128
116
99
133
143
87
54
99
119
108
90
138
59
97
140
135
136
122
107
116
140
95
128
98
144
123
100
117
118
125
98
93
108
123
107
147
137
108
129
98
110
128
99
88
132
108
111
68
95
110
97
54
101
141
108
112
93
124
137
126
114
133
144
93
163
123
123
126
107
112
59
141
151
177
125
124
103
112
145
85
94
105
81
186
133
143
190
148
134
103
88
125
98
120
151
139
127
90
121
134
76
112
128
74
105
106
122
146
135
91
135
127
106
59
131
77
81
150
91
129
102
123
54
91
127
155
95
140
122
103
143
129
135
131
97
97
132
87
93
81
82
98
123
110
95
160
87
54
142
124
118
158
102
102
141
59
167
123
113
109
113
89
99
108
121
93
95
121
148
182
125
144
77
102
114
129
115
111
77
111
131
141
128
155
128
130
79
95
114
107
127
108
59
123
110
88
118
120
98
87
112
147
109
104
129
174
102
102
114
125
102
140
54
87
113
94
131
67
140
141
135
92
101
96
91
98
106
101
80
116
103
177
169
93
54
93
135
175
121
162
105
150
133
92
81
140
140
127
180
104
105
95
114
100
122
133
81
49
129
108
155
102
107
106
106
69
110
125
108
133
120
96
93
97
118
139
67
74
87
103
82
54
130
82
123
120
151
129
126
67
107
78
133
108
199
87
103
127
129
106
99
151
49
112
173
95
113
113
85
106
103
129
82
102
141
118
54
98
159
135
188
146
102
114
83
122
115
142
103
142
102
95
114
108
103
117
112
99
102
109
54
141
161
106
138
145
156
106
92
110
114
159
114
177
103
106
54
131
191
138
145
168
118
143
104
142
81
96
95
125
124
76
122
189
82
160
162
105
113
106
144
108
133
145
102
93
122
54
54
113
127
104
125
150
112
102
95
108
92
121
54
54
82
143
128
74
103
108
108
120
161
141
95
54
54
102
101
98
82
102
126
108
98
111
100
102
110
101
130
85
141
111
120
74
79
79
102
144
101
97
54
110
148
161
81
186
98
182
102
102
80
152
102
136
142
132
94
131
126
127
113
111
90
98
105
129
92
153
102
138
108
140
130
100
105
131
54
116
116
97
105
49
139
135
122
122
109
129
113
113
81
114
128
107
81
68
93
108
105
140
117
168
116
116
145
106
91
99
108
160
95
54
61
74
131
146
102
77
145
144
105
74
108
87
145
154
118
154
161
131
122
103
135
74
98
93
125
87
105
102
107
99
150
93
128
140
125
162
93
134
108
67
125
103
132
140
97
49
87
94
112
122
147
142
133
145
98
134
62
135
149
145
168
131
96
108
96
158
129
89
134
80
144
120
97
147
114
153
163
98
105
73
144
124
105
82
98
133
54
98
146
102
109
97
103
122
184
112
108
54
106
123
54
87
72
54
108
74
106
54
177
69
161
133
94
59
102
177
149
95
137
54
81
109
139
125
133
103
150
155
54
137
112
113
103
155
153
99
74
76
135
113
119
148
74
92
101
125
119
110
98
76
139
90
148
125
101
118
115
100
68
124
147
100
90
153
108
155
99
87
230
107
145
95
112
108
108
59
110
95
110
91
128
135
87
73
70
54
133
45
89
112
77
169
125
186
95
125
160
108
62
136
137
131
95
137
142
167
144
98
128
76
95
96
76
160
74
82
95
117
95
87
167
76
118
145
106
128
184
87
99
131
102
82
114
108
75
132
120
128
81
129
91
93
117
110
131
200
49
143
137
108
145
116
76
81
183
125
106
108
133
93
143
139
89
114
98
129
77
161
179
125
138
128
76
113
92
71
95
106
148
90
126
135
124
119
137
87
146
81
168
98
121
91
90
146
95
125
113
94
142
125
169
135
74
144
159
93
79
54
78
110
140
87
96
126
143
101
120
68
108
96
168
116
167
134
129
144
94
118
137
97
96
117
103
122
108
154
96
87
98
108
92
169
92
105
123
85
114
130
130
78
157
90
122
113
68
92
106
102
59
105
112
123
127
99
155
117
107
106
109
120
133
95
143
128
113
180
144
142
67
144
97
114
49
105
100
54
141
76
100
140
115
121
88
73
84
98
108
128
149
142
144
146
93
49
121
113
123
146
144
54
96
111
79
93
86
123
93
121
102
128
147
71
114
68
185
127
101
113
122
113
122
115
87
125
102
116
111
113
97
95
103
108
98
125
129
101
112
102
150
119
106
147
78
130
142
103
133
93
103
98
69
151
93
117
106
54
83
156
110
169
49
114
130
137
74
103
102
124
111
145
103
67
147
164
113
69
129
153
133
114
131
97
139
114
98
148
122
111
78
122
134
80
98
115
148
49
95
125
103
143
87
101
144
113
96
148
49
125
106
143
49
113
96
109
112
81
123
144
100
158
103
89
110
97
96
109
130
154
116
127
158
127
177
102
98
108
81
131
94
142
144
131
120
83
135
116
99
124
77
179
122
123
59
80
120
128
102
227
74
101
93
145
106
184
135
102
54
122
98
140
153
89
77
102
137
119
172
157
136
142
132
125
124
87
100
144
156
126
117
104
191
106
108
128
82
101
93
113
131
96
54
74
79
129
105
103
93
100
102
130
148
147
200
125
126
126
119
125
107
99
106
157
79
105
93
80
93
81
105
109
138
102
126
154
112
81
133
89
69
157
54
111
110
126
106
131
92
140
144
120
199
161
108
54
97
76
117
93
165
130
124
90
163
83
96
80
143
140
107
93
92
118
97
117
107
105
131
107
163
67
138
137
141
98
102
113
142
82
78
80
127
137
115
112
129
171
93
90
87
105
99
135
130
96
78
103
102
97
96
126
148
78
73
90
82
175
98
83
104
101
102
54
54
142
49
143
102
87
138
129
61
89
67
88
108
144
142
124
54
94
49
49
82
140
102
118
77
95
81
105
133
77
123
146
129
129
54
177
136
91
166
120
153
124
128
173
104
123
115
77
168
138
107
163
102
79
110
85
133
146
93
96
113
145
147
133
156
173
114
106
68
188
152
129
127
115
108
119
90
125
126
107
95
115
93
118
102
103
145
95
98
114
116
97
78
106
93
74
102
93
87
67
134
113
81
95
54
143
141
104
140
108
74
80
91
84
124
108
54
82
138
131
96
87
143
113
99
158
115
59
124
107
96
102
132
131
123
81
101
145
108
77
98
87
95
133
94
161
91
169
135
144
177
111
120
100
121
131
145
100
105
161
148
123
150
123
103
101
128
106
103
120
78
179
139
141
76
151
173
54
139
74
108
137
143
116
84
134
81
113
119
114
103
170
107
87
139
143
176
49
140
133
175
102
115
168
128
59
54
149
131
68
146
126
98
101
140
86
134
59
125
87
125
117
100
97
104
116
137
100
125
127
119
85
121
113
104
133
154
98
109
104
95
108
161
78
138
135
137
111
115
93
123
126
90
115
104
61
108
119
95
133
109
128
107
169
68
83
113
126
97
142
90
153
156
124
90
74
119
70
126
137
128
87
90
105
72
95
100
144
128
109
95
132
172
147
128
105
140
176
101
135
132
127
91
54
117
49
103
140
96
87
62
147
140
110
86
128
114
95
136
143
135
125
113
96
111
98
99
96
103
102
76
116
98
59
134
76
102
141
108
135
101
115
98
91
103
143
147
112
128
102
170
141
168
82
78
102
145
80
163
98
122
133
98
108
116
156
122
112
49
54
125
143
132
141
90
102
171
85
133
106
135
81
116
86
103
89
77
135
103
95
113
201
126
59
159
143
91
75
96
128
117
145
159
100
111
118
105
125
101
172
54
105
100
112
127
125
71
91
115
184
87
105
76
106
74
62
114
119
108
95
83
114
119
153
125
83
149
79
113
96
98
114
78
95
101
134
123
107
170
148
111
98
74
123
143
111
125
78
98
120
105
61
127
91
124
104
148
143
87
99
96
87
215
127
67
159
54
81
107
67
128
82
106
105
105
54
141
115
88
99
132
83
59
99
87
180
88
148
109
98
54
49
138
74
128
78
98
124
134
82
135
113
100
130
98
100
94
122
45
81
118
120
98
151
84
177
108
108
88
122
145
109
110
105
105
100
95
108
141
122
67
113
117
78
126
144
108
164
113
59
113
157
105
59
98
84
130
108
86
98
121
141
106
147
105
106
116
112
155
140
93
83
124
61
123
144
82
87
149
103
127
96
108
109
104
90
138
147
54
92
90
145
122
127
129
77
129
133
133
103
102
184
112
95
129
141
107
54
93
131
124
165
125
105
90
132
123
92
149
74
59
148
61
144
150
119
113
117
185
125
113
99
130
59
140
121
148
79
91
144
138
93
120
125
81
131
54
137
84
104
78
150
107
103
96
125
106
81
108
103
106
106
81
130
68
103
110
54
54
158
81
105
112
95
54
54
120
76
111
54
136
132
105
88
148
108
59
127
87
78
81
150
118
115
124
115
140
105
125
91
132
113
98
177
141
93
122
146
118
120
73
125
74
126
135
123
108
77
103
135
123
119
97
181
116
85
98
153
139
128
76
125
110
117
115
97
141
114
118
132
192
135
99
119
133
143
122
87
107
125
139
138
212
81
103
82
93
96
155
151
124
49
179
97
81
140
61
137
156
103
111
144
209
131
103
146
172
102
133
149
147
83
103
131
74
127
120
99
105
148
111
121
102
144
128
123
128
80
219
102
87
116
132
116
85
98
155
140
135
131
104
140
125
163
95
149
105
107
107
115
127
49
54
78
120
142
98
144
122
134
102
144
108
95
158
80
135
157
108
54
102
154
103
146
146
129
135
71
161
96
77
97
108
136
115
123
112
121
73
162
81
76
131
154
84
125
108
118
54
105
140
81
138
103
118
148
98
147
98
152
135
154
163
104
96
91
156
114
106
95
125
168
102
135
49
89
106
98
133
106
132
178
97
143
115
115
99
85
112
143
114
167
127
105
95
93
97
116
144
128
134
125
142
119
96
76
54
115
106
87
123
88
137
134
81
124
136
76
156
123
101
139
81
167
67
103
127
124
127
99
99
74
126
103
96
190
95
101
102
169
120
124
135
123
78
121
102
114
157
106
90
105
49
108
102
138
122
141
103
154
116
85
172
105
128
88
118
161
106
148
108
133
108
118
118
84
49
139
151
106
122
124
127
115
84
157
143
148
102
102
163
95
135
168
108
150
113
125
128
126
91
139
125
128
67
165
105
154
124
93
125
166
131
102
95
126
117
132
59
163
167
98
137
97
128
94
146
133
113
104
188
102
119
122
78
165
54
103
108
144
90
49
102
133
172
123
120
103
96
102
87
135
132
107
107
92
94
103
148
69
131
96
81
101
140
111
87
127
121
195
63
159
113
105
98
173
127
122
160
92
139
108
76
112
91
110
103
108
54
95
102
135
144
79
126
80
85
161
148
145
158
139
112
96
102
105
109
140
177
95
61
96
102
172
108
128
112
91
81
108
90
90
115
82
127
116
106
167
139
124
119
93
136
148
123
111
167
129
92
166
130
140
95
98
122
81
90
103
109
134
124
143
134
104
63
137
102
122
143
135
81
113
105
163
104
116
77
133
151
77
144
116
127
106
110
76
128
117
105
108
49
120
124
107
94
125
158
134
112
82
140
77
135
96
116
154
70
114
147
76
128
135
104
118
87
116
95
103
113
104
108
81
132
116
158
103
146
131
166
105
108
89
133
102
59
139
61
166
74
89
102
137
108
91
121
153
77
122
98
79
127
49
108
81
138
133
81
139
103
139
98
74
87
113
141
122
105
133
138
180
95
101
116
127
128
144
112
104
165
83
178
98
120
103
105
141
121
133
83
80
126
96
95
113
97
161
131
76
107
133
59
98
95
114
76
49
150
69
115
74
135
179
105
113
79
135
77
125
168
141
122
95
108
54
186
136
115
151
108
114
108
125
157
74
54
119
133
152
180
93
125
150
81
69
130
104
109
96
138
102
49
81
140
129
108
124
113
114
49
105
165
77
96
148
95
105
117
127
106
103
170
113
96
109
96
126
95
143
87
109
139
127
107
96
82
85
129
111
81
65
114
190
133
116
180
59
83
122
118
111
77
130
112
59
105
125
127
109
107
133
91
113
119
74
104
144
78
98
121
104
148
149
97
83
143
103
109
95
102
95
123
95
104
92
108
73
129
81
110
122
125
144
125
80
77
106
96
133
108
146
124
133
145
138
54
137
117
93
79
108
80
128
93
122
138
125
143
87
105
176
121
113
67
125
104
81
94
115
87
126
87
108
108
118
118
108
108
206
162
147
140
115
109
120
177
107
144
138
101
61
132
97
98
49
100
106
102
123
148
117
102
49
111
121
76
74
49
128
107
127
74
95
128
148
104
83
77
113
106
140
148
98
122
108
82
103
133
128
114
102
94
93
126
90
158
141
131
107
100
95
129
90
165
117
103
87
111
107
128
54
143
122
122
101
140
107
93
142
161
161
161
118
97
135
128
97
120
106
106
90
77
131
79
191
99
98
120
129
112
113
169
98
102
104
86
127
162
110
80
145
134
82
104
95
140
93
157
125
83
98
98
105
137
123
139
76
177
124
102
96
162
147
84
148
112
93
143
133
105
119
114
96
100
97
118
145
89
123
148
117
108
121
116
154
103
87
165
81
138
59
116
177
102
143
76
100
95
123
104
110
74
95
115
78
123
130
139
166
103
172
144
132
94
98
100
148
59
108
89
77
54
102
87
148
132
68
113
136
102
86
108
104
96
98
81
89
122
109
102
85
79
144
105
77
79
135
59
67
117
148
102
74
147
125
99
147
106
117
163
105
133
54
123
138
96
74
200
105
98
118
77
96
98
95
80
103
95
140
154
91
102
151
152
108
108
141
131
96
126
102
109
59
102
107
119
148
154
90
146
73
119
139
116
108
108
160
59
81
121
108
110
100
144
103
105
101
98
148
185
159
138
93
148
67
145
139
114
86
95
157
112
118
141
77
144
67
168
125
121
98
143
104
123
159
103
135
105
141
133
83
119
112
80
163
98
124
108
117
148
122
95
69
77
117
120
113
112
165
100
120
68
96
126
88
122
113
81
98
143
112
98
74
118
149
102
160
54
87
94
59
125
92
92
68
101
123
106
101
98
137
139
150
149
92
97
109
145
89
134
139
125
146
193
103
149
84
130
76
170
102
129
124
156
165
78
133
145
102
54
100
113
104
95
114
143
168
103
49
79
124
98
113
131
147
135
96
133
114
49
77
72
189
138
114
141
117
133
85
108
87
107
140
121
81
125
126
107
119
102
120
154
81
98
145
135
128
69
145
102
141
102
113
104
69
77
191
117
87
110
159
151
97
138
129
81
106
154
98
106
140
95
119
116
143
87
97
143
125
144
82
104
111
87
131
125
54
80
111
123
67
102
77
145
90
122
104
113
117
108
117
136
103
86
68
125
152
120
81
94
146
115
42
49
148
159
126
102
113
154
94
158
127
125
77
97
87
76
128
141
95
125
140
139
116
91
100
123
125
98
135
81
128
120
152
106
102
113
133
94
115
108
81
125
153
85
95
163
98
157
106
95
124
59
135
156
103
103
97
95
95
80
132
69
145
76
143
76
151
107
140
107
108
169
177
61
95
128
93
128
128
145
81
126
158
120
102
117
144
129
141
103
150
140
105
162
78
137
54
104
160
127
122
180
135
151
148
127
107
177
75
117
152
148
119
76
102
81
142
129
104
81
117
97
105
77
139
95
133
151
137
128
124
126
91
95
80
95
191
128
115
165
74
111
94
91
124
79
89
120
163
123
133
93
100
143
113
95
108
154
103
120
112
94
81
102
106
108
104
160
123
135
117
102
119
117
67
102
108
133
144
128
138
95
54
137
150
106
119
131
130
124
104
117
161
152
82
138
103
124
135
128
127
161
98
98
105
76
140
109
103
131
134
125
113
141
156
171
93
108
103
101
191
110
107
103
146
54
92
104
100
124
129
129
124
115
106
91
109
87
136
137
87
128
113
102
164
105
102
102
124
144
138
102
108
128
103
98
98
156
105
98
104
69
78
96
126
91
98
182
118
150
154
108
81
122
98
154
89
118
145
91
118
108
125
82
115
160
129
102
88
130
119
149
91
133
151
98
148
123
119
85
54
126
148
95
102
118
97
116
133
147
117
115
119
78
135
76
140
132
160
123
125
122
116
125
143
125
94
152
104
124
126
165
120
117
100
139
114
106
99
87
185
95
76
123
82
94
123
165
109
93
68
77
109
87
179
138
127
98
147
102
104
133
131
157
129
90
54
102
108
103
67
119
81
95
108
101
90
106
133
110
135
85
135
143
151
117
117
112
141
118
102
154
108
65
141
87
98
128
93
106
133
96
158
107
148
155
139
131
173
113
90
106
87
130
113
139
138
101
76
87
129
129
168
96
108
83
113
123
167
148
146
87
59
49
106
139
171
108
129
145
126
157
105
113
92
106
103
128
168
139
123
118
95
172
125
83
59
135
143
115
74
102
153
133
115
112
59
140
146
122
135
108
122
118
54
131
138
118
108
103
97
144
155
144
89
127
150
135
95
115
112
97
147
148
96
118
133
126
95
149
90
124
153
120
78
97
122
103
97
54
120
163
92
121
102
179
81
128
93
104
102
94
67
95
119
160
59
80
105
106
87
128
94
118
101
117
118
101
158
87
92
87
140
76
114
102
45
123
89
142
105
143
108
122
102
111
96
133
93
97
104
107
93
93
180
106
87
54
135
148
87
122
107
121
112
108
136
102
115
89
67
160
154
151
81
179
106
130
92
102
87
113
87
119
125
157
95
209
116
118
93
85
116
109
111
77
107
118
115
54
104
123
140
103
108
97
143
120
142
115
81
162
102
54
84
108
92
120
113
98
113
81
95
103
146
54
140
155
74
106
108
93
105
91
76
95
113
131
99
87
108
54
100
144
102
149
95
91
91
67
148
95
78
76
103
140
146
101
97
87
107
141
153
137
82
103
99
117
106
143
93
87
87
144
195
129
148
78
144
113
175
98
184
85
201
102
95
76
103
135
108
140
116
87
54
137
76
165
59
108
100
99
106
90
113
123
113
98
161
102
141
102
144
114
131
54
153
134
103
122
136
120
123
118
131
102
113
103
180
147
133
98
135
140
111
74
83
106
141
134
98
95
133
129
108
177
98
140
108
147
149
97
145
147
124
81
119
74
59
128
54
68
120
138
65
125
137
98
110
101
122
144
106
108
164
113
112
125
147
49
92
106
113
145
135
160
103
160
116
117
115
133
121
86
160
140
100
125
165
102
168
54
119
120
118
87
168
108
108
125
122
83
89
100
81
95
124
104
117
129
87
96
145
142
134
97
95
95
59
140
98
165
96
142
54
94
141
118
138
120
98
97
97
106
81
111
179
167
164
54
163
124
77
67
130
127
111
102
93
98
120
129
102
107
139
125
93
90
102
142
123
155
59
119
102
144
102
129
102
54
87
119
117
127
118
130
108
120
134
177
130
105
78
129
128
129
147
102
134
127
146
142
104
134
95
131
112
74
110
90
96
91
143
93
73
167
117
157
108
82
111
95
104
104
172
102
123
172
148
74
114
133
129
83
146
102
117
121
120
145
75
105
125
105
144
95
108
80
59
116
118
95
107
147
104
149
100
154
92
169
54
121
133
133
91
191
112
98
122
102
129
114
133
155
49
102
114
100
54
90
108
122
113
107
103
81
104
59
90
125
109
129
136
137
102
102
113
95
74
115
168
109
98
161
82
141
116
131
123
125
197
200
54
104
106
149
106
148
119
105
148
118
149
102
134
103
104
103
125
147
74
158
74
132
193
79
133
84
83
136
91
54
99
90
103
103
149
197
170
113
102
148
108
175
161
138
178
69
98
148
81
83
54
160
105
124
104
87
157
125
54
135
120
135
85
135
109
108
102
172
106
130
95
131
138
131
94
153
155
146
128
79
110
153
151
93
194
92
127
168
157
130
137
81
131
128
131
95
139
95
67
102
103
125
122
114
54
54
117
74
103
113
80
54
120
107
120
116
165
82
88
119
120
170
95
83
125
152
102
79
98
95
122
108
91
130
110
126
120
113
102
102
59
119
111
103
119
133
129
74
105
98
114
90
78
131
133
95
135
152
77
134
116
76
146
132
85
127
86
139
135
100
99
102
85
85
74
54
158
95
98
106
108
118
152
158
95
103
134
128
95
129
83
125
102
74
125
131
115
95
125
153
127
101
80
131
117
118
177
77
148
105
145
118
54
168
113
61
127
82
49
133
97
54
97
77
140
135
132
59
102
113
102
102
112
89
127
95
120
97
97
125
127
90
143
144
108
160
95
141
127
183
143
90
74
121
102
107
83
98
156
131
121
135
114
115
130
107
109
161
77
107
124
102
126
95
100
106
107
124
119
150
80
109
79
54
113
54
113
98
106
224
99
123
124
143
98
129
118
93
113
101
78
127
118
54
104
157
97
117
63
96
84
54
170
95
111
49
142
102
88
112
101
125
82
153
107
120
98
89
83
139
102
91
108
99
95
152
96
93
167
144
95
113
54
148
113
105
103
87
54
124
135
121
111
88
107
136
154
100
128
78
109
184
133
150
102
121
122
129
105
111
69
129
129
111
122
118
102
92
145
132
81
103
102
139
115
76
165
54
159
131
119
118
139
77
172
124
124
161
103
103
115
105
114
145
87
148
141
172
105
111
115
113
163
104
68
108
67
108
147
49
142
162
143
99
145
126
142
140
128
140
122
59
95
132
115
158
139
143
191
123
172
112
79
98
150
54
69
84
158
77
54
112
103
89
84
91
54
82
129
68
90
117
115
167
98
100
103
101
141
74
145
137
132
103
138
90
91
105
129
93
146
102
147
130
101
115
98
90
117
156
129
137
96
115
115
106
119
148
157
128
127
95
61
95
146
122
139
135
81
101
77
87
100
107
54
68
116
129
98
121
130
122
167
82
112
107
81
148
154
139
118
158
134
137
101
49
162
96
99
102
84
76
141
145
148
120
105
54
143
137
149
81
145
116
139
141
147
125
107
74
127
162
119
54
93
155
105
165
115
87
115
90
131
136
125
98
129
133
102
141
91
74
118
120
127
114
98
85
108
105
185
74
126
117
82
154
125
140
128
154
121
121
168
142
190
108
117
158
125
108
105
131
93
166
59
85
128
176
49
95
131
101
162
200
149
102
147
137
141
95
149
116
131
76
116
120
131
162
95
106
108
110
103
122
100
67
117
117
84
68
95
112
147
145
180
89
113
97
81
98
129
103
61
116
138
72
67
95
131
108
102
80
136
165
74
125
110
85
74
98
140
117
100
113
83
127
135
95
107
125
164
128
158
122
133
129
106
131
143
79
105
87
81
152
102
103
144
120
148
95
54
134
115
143
137
130
145
93
143
104
82
116
70
97
135
74
160
163
89
76
102
112
143
99
102
81
153
54
93
119
122
143
136
160
89
144
127
76
61
102
145
110
95
138
105
116
126
128
97
123
73
120
128
129
82
74
113
83
161
131
62
145
131
103
177
95
135
151
93
124
85
108
155
118
125
125
141
122
106
176
122
144
167
127
81
82
161
115
131
177
147
124
57
105
140
85
113
54
148
120
125
108
90
81
83
93
117
178
45
103
81
87
133
149
94
140
144
95
81
108
106
128
130
132
135
87
153
54
108
67
108
73
89
87
87
90
102
103
67
96
59
124
113
120
74
99
95
126
132
59
134
134
97
148
54
136
187
139
85
148
113
108
128
54
83
140
108
129
102
97
155
105
157
123
98
54
129
77
59
134
133
97
76
95
133
147
139
96
193
148
110
119
122
140
95
115
153
112
140
108
68
136
157
78
98
111
77
133
107
137
131
103
103
77
139
134
94
117
150
129
149
82
99
83
165
93
87
74
143
89
81
81
143
74
117
106
180
98
124
85
90
105
129
103
133
102
99
93
110
165
165
177
98
113
61
102
181
96
104
97
95
125
123
105
146
59
177
105
82
54
49
118
125
96
92
173
77
81
83
92
190
132
125
81
137
116
91
135
111
119
99
119
61
138
74
125
114
74
89
116
62
74
109
141
54
165
83
120
129
112
81
116
96
65
118
148
105
109
141
168
114
106
191
144
131
142
143
95
128
113
126
152
101
130
119
86
107
139
133
113
105
117
77
148
118
199
146
97
146
118
139
98
102
132
132
69
74
75
49
83
108
113
88
91
69
54
141
113
128
133
120
106
82
143
95
129
125
123
102
59
176
83
128
122
108
96
108
154
136
164
154
144
73
104
146
103
93
135
94
83
129
156
104
91
79
61
122
92
119
83
108
151
156
113
105
107
92
107
98
79
170
131
129
118
124
102
114
133
59
128
117
104
121
102
148
90
148
124
125
109
121
173
76
49
135
77
103
123
158
128
99
81
108
95
98
102
143
134
139
172
114
117
130
93
102
98
82
54
77
146
125
164
122
144
81
144
158
76
116
147
95
110
59
108
59
91
113
108
82
188
112
160
81
146
127
139
69
120
108
69
133
94
128
165
131
116
113
149
103
168
54
106
103
54
49
115
111
95
95
164
54
96
132
98
162
143
120
135
98
78
165
84
114
121
98
127
129
96
95
87
120
106
61
84
106
130
103
81
148
81
102
89
113
160
133
78
77
108
115
157
103
86
129
114
120
96
114
139
195
155
125
91
134
111
129
105
81
80
128
134
151
95
95
124
108
87
117
160
49
148
113
77
54
99
93
131
132
68
102
49
177
127
59
127
129
95
135
92
95
81
115
102
134
174
129
140
95
82
107
127
54
113
83
117
96
97
116
118
133
130
95
94
94
146
90
130
106
93
122
112
96
93
105
155
102
97
171
177
136
102
77
90
146
54
134
148
126
156
138
129
90
140
115
108
115
148
225
98
127
76
83
104
176
128
59
177
135
107
116
75
173
95
85
98
95
92
74
127
108
160
96
146
108
138
98
83
105
145
102
128
176
156
167
125
95
143
158
116
78
126
131
129
146
141
185
82
95
98
111
87
93
127
54
98
130
196
111
133
105
146
89
118
85
192
90
87
54
117
128
112
114
89
54
102
90
93
93
107
117
113
112
145
102
54
137
138
170
122
102
160
90
129
95
129
97
118
102
156
91
74
110
112
96
177
145
93
112
125
81
45
110
93
153
105
144
133
133
103
129
169
87
94
100
105
120
148
106
112
82
92
65
132
177
70
132
115
137
98
83
131
115
130
81
76
160
86
67
146
122
129
117
136
76
122
118
106
128
133
132
91
132
114
102
127
122
128
134
76
129
123
122
54
67
135
192
149
130
182
68
124
157
108
134
109
140
101
87
133
139
105
132
79
76
147
128
90
158
143
77
98
106
161
177
54
85
118
49
89
140
151
112
129
125
149
100
106
139
161
87
117
127
78
170
87
118
145
148
154
113
153
103
145
108
114
118
124
104
140
54
74
85
145
94
116
180
133
90
123
126
110
140
90
143
148
94
87
74
61
126
80
131
80
125
145
98
133
137
115
49
108
107
181
105
76
116
96
103
61
81
138
107
102
108
96
143
114
76
135
93
126
129
131
136
113
124
103
114
146
119
128
112
135
217
91
112
158
121
114
137
102
177
131
110
85
54
182
172
100
124
173
76
82
106
145
154
127
127
165
132
108
139
118
98
49
97
128
111
113
165
87
81
164
136
141
76
108
114
115
164
86
102
103
112
140
156
98
128
97
82
110
115
67
141
106
117
87
182
167
123
110
133
125
130
116
127
114
90
148
147
93
123
68
98
98
143
74
128
127
139
84
54
153
137
90
140
149
143
119
158
124
148
99
95
146
137
128
143
81
110
199
127
128
135
118
125
98
89
54
106
98
102
127
155
95
91
121
97
136
133
111
165
74
151
139
151
42
128
123
127
124
102
119
83
158
151
149
154
82
148
149
153
109
74
101
122
122
85
79
143
147
131
134
125
98
135
98
83
146
54
96
95
105
121
105
113
101
124
85
138
91
125
61
78
95
82
98
128
133
105
117
95
107
108
123
161
105
133
90
177
115
98
74
136
133
76
140
114
118
105
94
177
95
97
105
90
98
105
128
129
151
105
92
102
99
67
54
102
102
131
139
158
144
155
131
154
125
120
67
107
108
156
74
95
155
107
59
157
127
134
125
128
49
103
103
81
118
54
59
166
74
142
94
148
117
139
87
93
151
119
141
157
150
87
113
122
155
134
119
113
104
155
113
134
121
119
163
103
126
118
81
81
130
74
146
110
96
168
136
103
49
90
151
100
175
103
54
102
120
143
129
139
156
79
95
147
113
134
90
119
104
68
90
85
147
101
160
83
129
154
115
95
95
119
93
110
138
61
140
81
149
59
110
89
152
67
105
131
142
122
118
108
139
152
200
102
135
173
139
151
148
117
133
145
108
145
149
134
102
110
120
115
118
151
130
152
93
102
95
104
100
95
54
94
133
105
140
132
82
95
139
59
54
110
94
87
97
91
106
148
93
112
126
109
102
141
49
79
160
156
135
106
150
107
123
76
87
103
156
118
143
113
102
121
167
120
119
102
122
103
107
113
190
146
140
134
133
135
132
100
101
102
78
78
95
101
143
119
80
95
128
118
115
143
82
133
94
74
123
132
74
77
69
128
107
87
99
79
135
132
194
135
84
123
98
123
149
59
151
61
102
111
161
102
209
69
108
107
100
95
144
108
83
149
77
67
109
162
85
148
96
90
106
117
82
123
49
100
153
155
105
81
140
153
104
102
135
130
104
108
147
108
113
95
150
76
65
154
76
117
99
54
99
68
123
112
100
90
133
140
87
157
132
125
127
100
106
122
147
78
115
155
125
127
54
138
137
129
97
138
144
98
134
133
101
132
147
146
54
118
133
128
102
119
90
118
140
150
134
103
98
54
97
104
70
180
87
54
139
129
154
133
83
107
105
134
149
117
95
105
139
125
103
104
49
108
87
119
167
134
102
122
95
117
109
54
145
54
167
143
133
96
95
129
108
81
122
54
161
101
177
54
101
100
91
89
152
108
103
156
97
183
134
84
98
131
127
107
114
92
144
108
107
100
140
107
93
141
129
134
98
123
104
108
134
87
135
118
95
102
105
139
131
95
103
150
131
108
157
144
49
112
95
102
85
130
123
106
90
122
148
162
108
110
94
77
144
116
108
124
128
108
126
103
99
74
59
90
86
87
82
89
122
113
105
105
108
87
98
83
88
127
175
132
101
155
74
91
69
92
124
67
81
54
150
133
90
116
100
115
117
150
102
83
113
85
108
132
107
98
116
98
97
124
153
123
102
119
102
148
125
139
54
143
112
130
91
129
49
165
133
133
78
143
126
131
112
141
144
109
149
133
90
95
132
81
127
152
117
112
88
145
136
119
102
144
117
147
123
82
138
159
103
125
143
118
153
110
103
103
97
135
92
144
54
87
125
89
164
120
111
83
105
173
49
135
122
115
96
105
108
101
153
108
87
131
158
96
77
148
110
80
108
88
122
108
145
111
82
102
133
68
92
160
152
102
81
124
115
146
140
98
125
80
124
67
148
159
96
116
54
103
143
144
88
77
143
123
156
54
112
135
112
144
139
138
133
105
110
108
123
190
67
90
105
109
78
98
140
143
102
96
200
113
102
183
126
145
140
160
141
105
125
144
158
76
114
98
185
113
119
138
100
85
115
128
127
107
160
122
107
101
127
137
125
135
180
80
122
91
158
133
86
153
98
92
124
101
124
103
54
138
117
95
127
83
118
76
116
98
84
131
148
116
127
131
161
142
135
95
112
101
95
174
160
76
116
163
106
93
133
139
106
120
92
180
77
130
126
100
142
97
102
125
190
104
119
152
177
145
105
77
125
103
165
161
93
116
131
110
150
68
128
105
90
79
82
131
127
120
129
111
150
128
87
93
141
106
93
76
102
112
158
180
115
142
113
132
140
110
91
143
102
148
151
163
113
168
111
141
115
122
112
122
143
109
108
146
95
128
131
59
133
111
148
74
133
114
98
138
81
79
148
92
140
113
137
102
59
67
183
170
168
109
119
155
140
120
118
122
81
141
114
116
125
84
81
94
106
179
146
104
87
83
165
116
93
99
118
94
141
54
102
54
108
117
127
147
105
112
147
101
102
129
65
96
91
115
180
158
95
54
108
178
143
111
74
96
156
108
76
129
155
164
81
113
125
98
95
105
140
105
145
96
133
99
99
109
134
82
81
124
93
97
142
126
114
54
110
150
116
68
154
99
87
125
145
54
177
67
134
109
115
147
80
85
161
77
54
145
95
74
126
118
96
68
112
94
116
132
123
90
117
133
175
158
131
124
54
131
100
113
108
96
76
170
67
121
153
127
127
49
124
98
180
118
144
170
125
95
106
129
108
106
119
59
59
111
90
97
145
49
162
49
148
107
128
152
135
115
149
131
74
103
82
54
54
84
176
117
76
115
115
103
102
134
133
138
142
135
128
91
89
88
89
125
90
126
146
108
146
79
93
87
159
92
93
131
87
122
103
161
98
98
102
117
116
125
121
94
94
77
194
125
108
128
141
54
83
140
116
150
125
111
165
54
83
121
112
110
135
138
135
100
91
177
101
113
114
158
69
140
131
108
109
126
111
103
144
81
125
49
170
119
149
175
129
121
138
148
110
127
115
124
104
159
106
103
95
144
98
122
119
123
93
118
102
140
108
95
74
136
132
54
107
139
128
100
113
154
83
124
103
90
105
103
49
107
108
157
136
110
148
125
112
148
150
105
125
135
109
138
107
128
141
138
108
74
108
121
74
108
148
82
110
154
98
155
168
68
158
177
132
98
107
158
95
138
54
125
82
165
103
110
112
120
123
147
67
172
81
49
144
131
87
83
117
76
103
146
131
98
151
133
146
91
192
122
102
113
113
95
99
128
145
120
100
90
103
159
98
96
144
105
75
166
59
177
98
139
100
65
69
49
102
103
105
131
54
81
80
126
124
54
141
141
101
133
149
94
130
85
95
127
95
81
105
76
54
49
107
154
117
130
97
170
175
110
177
122
78
103
103
98
93
90
180
87
160
117
121
119
111
105
116
98
98
148
158
54
128
118
98
88
114
95
121
128
82
217
126
106
116
98
133
132
211
130
54
67
131
108
119
129
148
54
83
146
112
119
106
100
112
103
95
98
88
173
173
88
115
106
82
152
167
113
122
101
141
132
117
108
116
109
116
110
113
145
135
117
78
102
131
103
105
119
141
126
160
81
138
110
92
124
117
96
138
80
139
105
135
145
112
95
76
103
163
108
132
90
54
96
107
130
108
105
133
146
151
125
108
81
74
140
97
123
113
59
144
146
158
96
54
139
93
101
148
121
49
134
107
153
95
119
155
73
142
126
135
117
160
98
98
123
85
125
141
136
115
122
84
148
82
61
106
107
81
105
126
134
149
165
146
146
119
133
124
177
87
136
161
146
139
135
130
97
92
87
155
107
98
125
115
143
144
112
149
97
110
125
108
108
152
142
120
118
130
80
148
152
115
132
137
105
108
119
158
119
149
132
87
177
54
102
87
106
165
105
141
102
116
127
98
122
153
54
124
141
104
108
148
169
69
116
98
95
77
92
137
140
102
153
96
119
125
134
112
171
54
124
165
93
102
132
126
83
111
156
96
154
145
156
120
90
133
81
149
106
95
117
121
144
79
77
104
156
177
80
131
140
108
147
144
184
157
68
76
151
49
109
108
162
108
129
76
153
54
141
165
146
112
87
108
90
180
67
74
122
134
140
178
103
121
103
110
82
194
91
82
98
158
82
137
163
59
100
197
129
76
108
139
165
80
76
103
99
106
54
104
98
96
115
105
110
82
95
145
85
111
120
122
139
156
59
76
111
150
77
108
131
125
109
70
135
125
98
150
120
104
54
61
106
149
127
95
87
108
77
81
144
148
93
137
116
140
76
151
169
145
127
155
109
103
95
120
108
110
133
89
145
163
116
105
91
103
98
113
95
114
96
103
67
127
107
120
83
95
92
124
176
120
121
129
49
109
116
131
98
113
106
102
98
74
77
145
120
135
159
234
105
109
131
172
140
125
121
67
125
102
129
129
85
139
123
113
103
132
103
137
123
102
148
129
152
133
125
113
118
153
119
67
125
108
144
110
102
158
88
95
133
125
49
177
108
158
161
142
146
154
87
120
77
49
102
129
148
157
83
129
145
87
173
130
181
115
148
96
108
54
81
94
132
168
104
81
87
123
101
160
102
123
109
170
132
107
93
90
152
81
127
54
108
97
98
97
95
102
94
92
148
95
126
134
107
130
145
122
49
91
125
106
88
84
103
54
125
125
77
87
135
93
107
118
131
122
105
114
107
54
122
89
89
115
83
103
87
114
119
54
49
100
129
119
90
116
144
165
141
199
61
95
194
134
123
115
92
118
102
116
74
161
97
130
122
153
54
115
107
107
108
205
112
83
105
180
108
76
121
143
82
107
101
80
195
93
125
49
125
86
125
103
67
139
95
103
155
100
105
133
155
92
102
102
69
160
96
111
99
145
177
59
93
148
120
129
114
136
98
104
132
135
129
103
116
138
83
101
131
106
140
143
139
174
102
155
49
131
149
84
143
105
162
134
87
142
102
112
130
131
54
98
152
131
135
90
76
98
54
120
49
131
133
146
113
110
59
106
112
141
133
137
110
97
95
110
102
81
80
126
113
98
138
138
95
102
106
106
54
172
132
54
125
114
131
134
133
107
118
105
132
113
77
108
94
141
119
76
107
83
68
113
147
78
139
102
118
109
67
115
127
147
81
73
103
131
134
221
159
89
139
140
98
113
94
93
130
102
78
108
81
99
84
125
171
54
116
155
103
105
161
179
111
108
99
127
137
155
75
85
104
102
154
158
127
102
177
146
135
76
114
162
100
125
155
133
106
98
115
197
108
134
122
90
98
118
106
124
167
146
107
68
131
74
177
102
118
111
89
159
115
96
136
133
98
54
54
111
134
96
119
49
161
118
93
153
139
68
148
103
98
62
102
153
67
49
92
95
138
108
162
96
49
49
116
158
158
86
101
95
141
100
143
169
102
105
105
96
125
95
172
158
98
159
118
148
145
54
111
102
141
161
119
164
116
45
145
96
77
92
133
113
112
140
102
67
154
91
123
158
95
85
141
100
171
136
128
127
172
187
145
139
111
92
115
82
107
98
112
158
139
142
133
88
131
107
125
151
131
100
106
84
124
161
128
91
122
164
129
54
193
112
120
143
125
95
108
132
59
102
144
108
113
126
155
54
119
135
115
159
98
107
148
96
133
128
148
160
139
89
132
128
129
138
102
103
106
143
105
164
105
113
100
96
113
102
116
102
95
74
84
122
124
95
141
120
156
112
123
107
158
84
76
132
140
96
93
102
95
128
59
158
83
113
107
144
115
111
153
54
127
131
138
102
107
78
98
196
91
54
74
190
54
104
100
161
82
141
90
111
74
108
54
81
147
101
54
143
143
121
115
103
147
92
102
134
119
107
100
82
107
102
161
76
96
93
152
59
65
108
65
81
128
120
59
97
111
54
87
54
128
82
118
87
96
170
92
81
125
98
104
165
102
102
102
162
106
100
147
49
106
97
112
153
130
127
93
132
120
156
93
102
114
85
145
114
86
93
148
141
84
100
98
108
137
106
128
128
90
107
82
142
100
122
122
148
196
87
167
116
82
154
139
136
114
140
129
61
194
118
114
109
85
87
138
135
154
109
54
142
150
138
162
106
74
117
103
105
115
106
111
95
96
145
163
118
67
79
127
158
87
112
95
102
140
126
135
158
96
149
105
146
254
143
108
83
54
122
108
113
177
177
77
132
114
89
85
74
96
110
74
121
114
83
99
94
88
123
81
71
95
103
125
104
95
131
97
125
118
81
96
122
154
132
112
91
160
105
93
84
95
124
103
95
96
69
76
126
73
144
90
80
121
116
101
74
59
94
115
127
70
96
74
108
103
54
125
147
54
117
162
161
106
103
102
182
82
140
75
125
125
115
133
77
103
102
123
101
147
108
119
118
120
130
142
113
143
105
97
127
126
86
103
108
127
127
98
145
102
108
112
128
155
76
120
97
107
116
133
101
68
94
118
74
126
129
105
122
140
82
145
105
125
59
139
80
128
49
154
102
79
137
131
146
133
67
123
54
146
110
108
85
116
112
49
131
146
92
133
111
97
49
148
167
76
77
78
106
134
161
141
146
102
116
93
101
128
113
171
108
120
102
100
67
110
98
106
101
163
81
92
77
126
54
118
95
131
114
54
126
132
135
146
141
113
105
128
144
117
146
129
134
109
169
109
136
95
106
140
124
161
98
105
112
87
84
141
144
166
95
74
135
105
141
159
76
171
95
133
103
117
113
114
155
101
127
59
156
95
141
87
93
74
102
177
127
179
129
140
49
103
90
102
59
105
187
147
112
124
132
95
118
102
98
127
144
118
54
125
108
85
121
113
135
124
108
54
113
123
133
124
107
78
95
161
98
106
89
76
98
171
151
156
129
121
77
95
135
125
123
98
49
113
193
134
114
160
120
111
145
158
148
74
87
123
81
88
125
139
96
97
118
101
59
122
134
102
120
112
199
141
90
49
165
91
106
175
147
118
187
95
125
54
98
87
124
125
152
54
134
137
85
76
76
116
78
102
126
103
82
90
74
105
70
54
180
102
116
146
115
102
138
103
143
106
161
210
112
111
94
133
163
127
100
149
116
126
106
121
108
128
54
119
140
133
87
65
108
111
103
95
110
101
135
59
148
130
96
125
54
59
140
117
72
144
151
49
120
116
124
98
89
99
96
101
95
108
76
118
119
129
106
160
74
80
107
95
145
158
150
105
100
82
54
157
162
78
143
177
138
165
138
90
133
160
123
103
132
95
54
106
114
93
78
143
127
158
104
82
77
110
124
138
126
130
115
87
161
144
110
83
113
95
149
125
155
113
97
107
135
95
148
69
185
102
165
77
126
145
69
111
129
112
121
116
120
120
143
107
105
74
129
122
142
92
106
109
103
97
177
113
139
116
117
146
108
140
78
134
105
104
157
133
97
84
120
81
54
95
113
128
83
99
103
129
108
131
100
144
109
145
167
120
131
155
95
160
123
103
160
110
105
77
137
115
111
133
82
80
125
234
96
95
100
121
115
160
91
153
125
131
82
87
120
98
108
138
102
82
127
120
54
128
138
105
128
85
180
150
114
85
152
108
141
90
87
117
125
144
121
54
114
59
77
95
113
108
104
54
123
145
59
59
129
97
123
121
104
225
113
158
128
54
108
165
54
151
78
97
59
110
163
77
81
85
108
94
83
169
105
83
184
98
127
102
109
87
101
138
95
97
169
108
112
142
90
78
93
149
106
118
100
77
137
74
102
157
109
106
129
113
131
116
100
76
113
109
96
129
90
115
138
112
198
102
155
161
120
87
69
95
127
89
168
106
124
143
132
137
102
110
110
82
125
103
54
157
120
105
128
136
113
127
120
113
128
111
81
81
98
99
119
171
102
113
172
120
145
145
59
116
110
74
94
129
125
175
133
120
76
78
147
127
129
108
95
159
103
67
155
95
79
105
112
76
117
146
101
128
127
142
54
116
147
156
131
123
168
127
137
101
102
140
136
171
148
140
108
127
134
135
164
102
128
96
160
136
172
110
150
160
115
141
131
148
103
120
102
98
143
94
54
136
79
49
76
109
124
117
100
128
89
112
113
80
95
117
105
81
54
142
127
102
67
126
99
104
173
97
98
96
98
87
77
158
144
133
149
118
161
90
148
149
122
180
136
92
119
108
107
124
150
189
108
123
98
49
98
113
97
156
132
93
54
138
95
54
118
151
162
103
95
84
117
160
145
138
115
153
102
108
124
125
107
133
54
80
134
77
122
95
105
87
102
81
113
103
99
98
98
95
122
143
134
85
153
140
108
68
124
151
165
89
98
140
147
77
90
98
77
106
110
101
89
157
102
130
108
116
59
112
108
104
131
142
143
142
168
122
132
142
162
108
93
124
98
109
130
115
93
90
102
73
73
112
49
81
147
85
98
85
156
96
135
74
89
139
90
128
97
111
128
102
98
103
124
96
49
135
121
107
49
108
158
147
117
82
147
67
86
123
139
133
103
153
106
118
54
94
106
125
165
94
133
165
133
114
112
120
98
49
127
113
87
108
129
94
98
97
115
77
108
112
142
110
139
95
87
127
132
94
127
123
68
107
115
54
95
169
115
78
147
144
92
103
143
54
103
78
123
162
59
73
151
98
120
126
81
115
157
108
123
75
84
75
135
131
125
91
100
59
123
103
117
81
73
155
139
156
93
110
98
59
87
125
110
113
87
107
67
103
84
125
77
74
98
98
102
112
138
145
81
143
137
107
108
81
78
156
103
129
74
54
90
126
105
145
77
159
123
128
82
123
186
161
147
102
95
176
122
139
98
107
108
130
77
45
117
87
124
103
106
95
131
90
86
119
147
158
102
125
150
77
101
97
121
124
148
54
109
143
172
111
103
108
157
103
106
127
127
79
106
81
156
160
108
92
96
103
160
125
142
104
133
94
84
125
140
112
108
141
145
90
98
90
135
134
103
106
128
94
103
117
132
120
92
98
165
110
80
161
110
120
93
134
72
89
96
108
82
130
59
119
148
161
99
137
179
187
119
106
79
95
103
195
149
59
143
135
94
142
108
98
79
107
102
128
113
106
125
112
100
136
70
140
130
194
113
132
165
59
90
128
160
118
110
130
171
134
140
124
54
145
135
144
77
88
118
54
177
116
82
107
109
98
98
118
74
90
81
164
122
139
136
128
110
127
133
49
103
128
103
107
114
147
136
173
78
123
59
120
120
118
105
73
96
160
125
84
98
137
102
76
142
107
102
117
143
108
103
88
181
125
49
118
123
83
67
95
107
81
101
149
83
89
54
74
123
119
95
176
132
106
128
97
108
128
136
95
141
149
61
148
103
123
146
159
87
107
54
81
61
101
114
115
131
102
49
119
138
138
49
89
143
189
149
125
54
143
98
143
131
124
98
146
107
114
123
125
49
145
110
133
81
149
90
169
99
132
133
125
77
119
135
75
81
143
120
161
117
113
101
138
105
106
135
142
172
77
102
98
95
102
105
107
161
103
107
108
100
158
92
142
54
129
191
136
101
103
119
131
116
98
97
123
149
143
85
137
134
95
117
146
112
126
109
75
82
81
134
151
49
129
130
123
166
141
84
138
136
107
100
87
98
124
106
150
128
103
149
132
81
54
143
97
114
128
131
143
108
121
91
134
135
126
116
149
141
165
115
170
158
92
113
111
112
105
113
73
182
108
122
82
107
94
76
107
138
132
95
133
135
103
149
165
89
135
81
110
78
145
151
163
83
160
106
89
107
152
96
106
108
120
95
103
90
112
83
87
127
126
107
108
99
90
87
94
114
102
124
106
95
106
95
87
106
68
54
81
109
49
82
112
105
191
134
131
122
169
131
88
83
168
140
54
80
106
97
105
137
68
66
54
96
103
87
127
135
117
95
127
90
113
54
134
143
146
59
115
133
69
131
78
100
91
82
155
145
167
124
81
98
115
113
166
126
177
148
81
95
165
106
129
108
120
158
110
113
119
108
121
130
77
150
132
95
99
117
94
82
69
143
102
101
101
133
77
106
81
146
97
188
121
125
116
122
133
91
75
126
95
74
103
134
141
119
103
87
101
124
108
138
120
128
133
112
170
61
96
140
87
83
101
129
90
140
102
105
136
103
189
167
54
140
123
84
145
94
129
90
92
76
153
144
102
92
67
78
84
133
117
78
81
132
103
171
102
152
83
140
77
67
116
102
132
145
165
149
93
117
112
122
163
119
118
89
84
125
98
207
110
115
76
54
137
185
87
105
135
98
120
102
102
106
119
141
88
120
79
125
114
61
77
76
161
95
124
157
75
103
81
101
154
175
143
93
76
143
155
105
79
97
90
67
165
188
83
106
54
67
140
100
93
61
111
137
122
129
127
135
98
93
83
167
106
74
158
103
140
154
153
106
45
102
102
153
146
78
114
139
67
102
105
152
153
93
119
127
106
150
90
102
152
68
143
114
108
142
105
49
106
165
102
169
87
95
141
180
96
89
59
157
133
145
69
123
90
85
54
127
90
163
126
103
106
87
105
153
149
88
116
97
159
87
100
95
59
108
83
137
81
139
98
130
103
117
144
142
137
152
135
56
148
145
67
81
128
106
167
102
138
161
128
130
139
106
140
163
160
97
164
194
69
81
127
96
129
95
125
98
125
85
139
103
98
128
85
158
87
49
96
103
134
105
116
194
136
108
135
81
128
116
93
97
85
143
180
95
131
165
108
54
89
95
97
109
154
140
131
102
78
102
119
73
79
134
98
106
83
98
124
80
83
67
90
111
190
92
97
105
146
112
49
104
90
97
108
84
54
107
119
175
98
125
91
111
139
117
105
157
136
105
103
129
148
114
118
149
102
113
140
120
140
129
168
142
120
124
77
85
151
86
128
70
110
135
120
77
88
103
96
93
76
74
135
98
153
113
93
113
98
106
145
120
117
141
160
81
97
145
74
69
125
98
122
88
170
111
140
77
104
119
100
129
153
154
85
172
107
81
138
111
120
78
49
77
45
74
147
172
88
129
108
119
54
89
108
103
98
132
108
111
180
57
165
99
80
117
142
107
95
158
141
82
76
117
125
135
148
107
132
103
141
96
119
114
91
115
118
174
111
107
148
103
117
121
95
167
119
144
134
113
139
80
145
107
96
103
49
94
156
107
128
143
125
108
106
103
153
98
148
138
123
102
103
117
111
80
105
133
102
113
91
95
125
129
78
112
143
116
129
113
126
102
102
144
105
98
109
74
125
158
114
151
113
95
119
90
135
104
118
129
132
156
136
95
76
113
67
95
102
131
144
131
114
54
78
90
93
114
134
106
177
84
115
110
97
113
73
90
82
116
103
72
112
103
119
105
139
82
119
135
128
112
117
165
59
140
83
98
108
91
82
108
111
91
143
126
137
164
143
107
139
132
68
148
125
129
85
59
160
115
54
89
115
126
93
105
104
107
98
129
143
108
116
102
134
144
148
88
74
156
105
142
123
87
97
105
108
108
74
158
117
103
178
127
120
82
107
144
116
112
95
128
108
128
118
104
142
54
74
61
107
106
105
82
173
54
143
118
74
76
163
92
123
61
149
119
97
129
102
98
127
131
98
117
161
81
113
106
86
128
141
184
116
146
103
87
90
86
130
120
108
128
115
59
95
102
78
54
155
49
90
123
177
133
131
68
119
83
102
147
76
115
114
141
132
93
124
54
100
102
54
102
92
102
67
143
122
109
103
192
82
148
98
174
98
123
98
180
108
135
166
99
119
115
129
98
79
84
114
78
90
80
125
95
127
161
120
90
99
113
113
98
123
126
142
92
108
59
132
84
86
141
81
113
54
94
54
87
148
102
127
124
76
148
54
81
103
87
87
127
59
107
105
123
170
169
96
120
120
93
81
119
118
154
78
114
148
167
113
95
95
149
134
131
94
152
216
155
139
132
95
77
123
133
114
108
54
84
65
74
148
130
102
95
127
77
88
122
131
73
113
120
121
87
89
102
103
133
113
135
113
94
128
190
54
102
119
81
129
141
81
83
91
97
123
95
133
119
91
49
179
129
49
153
91
80
137
127
83
98
106
92
111
127
133
137
59
118
149
97
103
159
150
110
127
140
54
65
125
90
124
146
154
113
107
105
114
142
141
162
124
154
155
90
90
90
82
54
90
133
78
104
90
118
101
93
145
143
107
117
143
122
90
81
138
109
90
154
102
95
129
90
116
113
67
59
118
107
96
166
49
105
130
105
118
74
156
128
150
141
54
103
93
143
100
127
150
108
94
156
90
119
155
111
81
120
126
57
59
124
157
107
119
76
132
123
118
117
97
85
87
115
59
162
95
102
129
135
108
61
128
148
132
92
77
113
108
143
125
108
88
144
112
145
140
164
82
102
120
118
95
71
102
76
108
93
119
144
100
164
84
145
96
82
109
113
126
77
95
113
112
140
103
145
62
131
104
108
104
144
144
149
172
111
103
95
81
153
82
103
113
95
127
150
158
155
213
97
99
105
105
114
148
113
96
98
74
177
115
93
98
113
89
113
188
82
125
81
105
158
110
75
87
87
149
54
81
142
148
105
95
83
94
121
93
112
147
54
170
121
135
54
109
139
113
151
149
85
138
104
108
74
157
117
116
152
117
198
115
101
97
104
154
116
91
98
107
108
117
113
149
95
59
54
111
54
121
175
108
167
72
108
147
151
182
116
113
89
118
108
96
113
80
101
127
149
149
134
134
125
125
144
97
113
115
143
146
105
132
213
146
130
109
131
88
113
99
123
97
148
119
96
102
76
59
128
92
143
121
169
54
98
140
90
122
108
69
108
95
170
105
154
134
119
94
198
124
159
81
135
147
125
130
172
96
54
94
78
145
118
147
94
59
121
146
104
135
100
124
128
81
105
114
120
148
95
119
130
101
86
117
120
94
115
85
154
96
84
59
158
108
139
93
95
95
139
152
124
165
216
102
122
125
137
85
100
99
104
108
117
162
145
116
87
180
104
122
158
104
99
93
113
83
105
117
146
119
87
112
151
112
45
124
135
137
175
121
129
152
95
162
169
96
98
100
142
62
165
77
92
74
86
185
102
118
122
117
196
124
132
103
72
148
139
79
49
112
148
132
61
74
67
132
108
98
117
54
123
173
81
95
74
140
118
95
161
155
125
108
161
115
143
90
82
95
119
120
94
148
81
139
113
116
108
151
54
123
164
140
107
54
69
122
127
93
113
119
131
135
91
139
140
81
91
146
151
103
106
98
164
116
91
149
90
147
80
77
105
95
72
126
129
49
80
54
172
131
165
103
182
117
142
175
93
133
119
54
87
102
108
91
82
112
96
89
88
115
126
102
103
102
85
125
102
81
77
59
172
112
77
83
93
119
76
102
102
164
114
132
98
120
87
143
108
103
205
54
108
156
119
144
105
117
75
93
97
164
159
95
100
98
97
148
84
93
127
155
95
99
127
134
113
134
115
113
98
103
87
125
129
104
101
134
177
96
126
167
101
90
102
108
131
116
91
103
54
160
103
112
136
108
102
98
125
172
59
141
140
99
129
67
139
129
93
131
76
120
107
199
54
114
54
139
92
124
117
117
79
54
133
145
162
92
119
125
101
108
93
119
176
112
114
134
122
107
110
97
115
121
101
101
74
177
113
98
108
112
102
102
112
82
116
106
108
49
102
98
136
97
107
127
143
110
165
150
158
91
54
163
145
161
116
148
133
172
54
140
78
95
68
106
150
128
144
97
194
117
49
119
139
146
138
110
107
132
102
104
138
92
76
95
125
59
91
112
102
147
123
83
71
102
74
82
122
98
119
108
54
169
133
103
76
105
154
157
115
111
145
101
178
147
49
76
94
97
101
172
156
133
126
116
107
121
119
109
155
177
145
184
108
74
102
81
113
125
96
125
111
114
102
147
107
102
54
144
116
85
170
171
104
145
150
87
138
141
106
156
105
184
177
81
112
145
110
108
73
127
133
98
138
119
81
102
82
129
130
130
85
100
111
106
117
72
148
152
117
106
81
54
127
59
54
109
119
191
133
131
83
181
123
115
116
120
125
101
106
127
77
136
187
111
129
106
129
115
145
123
102
93
85
104
81
101
103
127
108
126
78
76
102
140
132
116
83
107
123
98
88
134
129
111
103
91
148
157
118
104
120
49
118
142
117
54
69
122
113
118
97
87
135
91
125
94
140
112
105
150
128
103
142
130
181
94
102
150
117
157
54
127
81
99
78
103
119
59
88
91
141
129
112
114
155
106
81
91
158
122
116
59
138
108
86
185
143
103
112
70
100
98
111
135
109
78
100
135
95
131
119
99
143
95
112
123
49
147
143
85
131
148
90
77
93
90
107
108
160
121
107
122
130
74
95
103
99
105
177
133
140
98
117
193
108
108
80
98
102
95
59
82
168
148
122
81
59
94
108
113
84
102
95
131
136
136
76
161
122
78
117
119
145
131
128
109
102
130
142
110
82
145
140
94
113
107
102
76
66
134
142
125
118
112
128
96
84
134
104
87
119
135
165
171
173
74
170
117
162
159
126
147
148
100
116
115
136
118
150
104
101
89
76
87
116
129
103
97
103
112
54
90
127
90
82
155
95
177
124
102
151
129
153
130
143
144
98
150
111
110
121
74
133
125
122
150
155
144
54
133
59
135
111
87
54
116
124
120
73
186
96
103
139
96
117
142
193
141
148
95
117
160
111
76
145
148
108
133
90
144
127
87
104
149
59
120
102
103
67
97
134
179
91
156
129
99
80
103
96
103
54
125
117
200
99
144
120
107
108
141
49
100
93
102
143
87
111
133
83
93
112
67
95
114
102
91
98
83
140
127
108
180
121
108
131
202
141
152
135
90
100
81
176
129
125
107
97
82
99
101
154
104
103
138
107
149
81
133
128
92
141
127
119
67
106
101
125
74
123
106
108
49
98
114
112
121
179
68
123
105
173
103
92
97
160
108
134
102
105
126
54
87
130
148
87
135
108
135
54
95
87
107
85
129
95
112
82
85
98
113
157
206
103
150
125
103
54
98
124
107
67
145
112
121
98
96
49
67
114
67
136
105
91
67
90
137
108
93
138
87
110
190
145
113
130
89
90
82
82
118
99
132
125
123
105
95
153
116
94
114
76
103
110
131
153
104
144
123
85
81
96
133
69
98
142
141
129
139
125
109
115
74
80
102
96
85
104
119
96
95
121
97
95
113
108
100
122
144
104
95
108
101
94
114
134
128
81
125
76
139
143
61
86
147
106
107
74
89
79
104
130
114
148
119
91
93
102
103
83
114
93
49
144
96
105
113
140
156
128
130
133
102
104
126
186
74
120
127
105
95
112
77
135
144
144
115
167
89
108
127
160
108
123
148
108
177
102
103
113
91
82
128
120
127
108
82
136
114
49
102
108
153
133
110
120
87
137
84
69
107
107
145
83
67
86
148
71
150
122
150
113
123
96
119
103
168
115
82
145
144
103
116
142
67
99
113
159
125
102
96
145
120
119
126
129
105
135
98
127
135
133
98
93
81
108
132
74
149
196
90
109
124
134
120
78
125
131
131
122
133
150
133
101
103
82
102
164
150
114
129
109
139
90
126
104
96
96
128
73
112
77
76
135
140
91
150
156
108
138
97
54
123
80
59
98
105
81
122
84
143
117
159
102
95
104
131
109
130
104
131
98
107
144
130
120
54
131
141
89
112
103
95
113
95
131
123
74
103
117
103
123
127
96
97
148
91
113
68
78
84
78
127
102
142
135
96
93
81
118
93
135
140
54
105
80
120
102
121
154
98
54
122
129
143
107
150
142
129
115
115
103
103
135
117
90
134
165
54
181
99
176
122
161
97
139
125
145
114
138
140
54
135
81
115
162
175
123
133
100
200
113
81
158
95
87
101
130
163
125
133
100
69
148
132
110
155
113
166
97
122
113
100
138
95
82
69
193
156
82
96
105
142
136
54
82
98
140
102
102
105
138
131
136
145
129
155
54
89
100
148
73
89
107
104
106
101
144
98
153
81
83
81
127
149
49
103
103
185
108
87
94
139
116
105
102
164
114
117
91
113
108
133
101
156
103
150
108
151
102
141
144
104
133
121
145
150
120
134
148
145
131
106
69
82
96
139
140
119
131
54
104
132
133
97
74
102
107
118
111
95
108
106
113
90
97
116
134
49
81
143
108
111
173
49
133
118
159
170
125
137
121
82
97
115
103
141
91
186
110
112
108
102
111
165
99
115
194
133
102
74
54
95
93
187
105
133
81
105
130
102
95
121
145
122
143
130
103
142
135
160
100
100
135
108
146
114
156
124
86
98
59
94
94
144
143
123
106
140
95
155
73
122
147
133
142
83
116
67
135
106
88
89
108
115
131
136
105
180
103
128
125
90
95
112
118
87
87
172
118
73
152
153
146
96
128
104
82
127
105
83
119
69
139
101
98
129
110
78
125
137
120
77
100
111
140
98
97
113
105
107
146
105
111
95
125
128
147
125
135
108
129
140
124
168
107
113
142
135
119
112
112
101
168
61
154
90
165
164
143
119
87
133
98
169
147
112
128
95
83
109
149
104
148
119
90
149
87
96
97
172
106
103
119
119
109
99
113
121
54
141
54
164
108
94
107
93
125
49
106
82
102
136
121
121
59
49
149
101
109
104
108
117
161
84
150
123
87
123
93
72
141
117
134
156
89
104
177
110
119
123
88
82
101
98
219
70
113
128
103
110
110
98
172
142
97
117
107
119
102
128
139
91
69
69
148
168
98
128
113
93
110
111
143
133
143
93
116
98
113
100
177
123
108
77
143
93
133
101
121
105
101
115
112
118
83
105
101
98
119
154
174
100
95
97
141
59
74
119
85
138
149
113
179
90
133
111
105
146
95
174
96
96
69
49
95
121
144
133
95
159
100
100
103
157
106
86
77
122
98
102
59
81
129
133
122
139
159
98
87
95
134
81
90
97
103
136
68
106
108
119
128
118
97
125
124
113
129
54
102
138
147
88
85
106
101
93
82
59
102
74
186
120
105
83
140
146
126
111
108
131
103
130
104
133
125
150
54
102
113
80
81
102
98
101
86
102
117
95
149
192
87
191
54
124
96
125
96
103
95
61
133
108
114
125
160
95
86
161
103
79
87
119
95
98
147
54
218
119
170
69
93
160
100
126
140
61
151
137
87
163
77
54
125
101
106
109
144
103
111
133
102
143
134
95
106
148
138
159
102
103
107
126
168
113
124
142
88
115
114
117
177
54
92
143
161
146
104
114
128
98
175
113
151
153
131
87
123
80
101
102
158
120
105
145
111
112
105
164
152
138
92
106
125
132
98
102
54
78
118
54
76
106
182
135
122
112
109
156
140
119
123
105
54
158
143
119
100
115
115
91
113
169
114
81
113
133
136
140
167
113
127
115
147
93
106
110
95
102
122
143
129
108
136
87
133
108
172
105
95
67
137
104
101
147
127
54
59
103
129
126
111
149
82
133
99
109
145
59
112
54
90
98
125
81
128
103
117
143
140
67
82
118
119
95
95
129
54
101
90
108
108
118
116
125
101
126
105
123
98
170
126
141
98
137
150
163
134
120
103
155
54
98
107
113
95
108
116
191
82
138
120
92
92
74
74
135
147
89
111
144
101
54
102
128
103
184
144
163
83
127
148
92
103
95
163
116
155
108
126
54
143
82
91
105
117
91
155
125
123
135
150
128
96
117
126
119
98
158
81
104
110
146
97
89
154
102
59
54
148
117
108
138
54
72
76
127
87
119
149
178
54
139
147
115
65
144
98
122
118
164
177
101
123
124
87
95
102
152
95
111
133
146
106
109
74
77
139
123
102
131
177
78
82
199
101
133
142
102
116
122
131
76
122
69
103
145
200
144
142
96
82
143
107
128
108
95
82
111
122
114
88
81
146
132
126
148
89
121
94
140
139
116
99
124
76
150
105
114
124
106
121
127
127
128
148
113
107
99
98
100
49
145
54
209
114
120
59
139
122
125
127
81
169
113
117
106
102
91
112
133
103
101
54
95
87
99
125
129
90
115
101
126
68
116
98
130
140
96
116
97
93
113
151
144
93
98
146
122
94
172
68
82
146
87
112
98
77
95
129
122
159
103
140
128
165
107
128
118
122
98
107
113
143
81
148
54
126
154
113
90
129
122
87
111
131
156
141
118
137
92
71
85
95
124
167
98
150
82
149
155
113
125
129
112
95
103
128
120
158
137
103
106
131
105
93
184
95
149
118
135
102
70
84
59
67
108
166
132
122
101
122
153
146
87
117
218
74
149
144
110
102
87
200
131
107
95
118
98
80
101
95
97
114
124
112
158
142
112
121
113
149
118
59
143
129
159
119
110
102
133
107
105
176
118
120
84
95
106
86
121
138
110
95
101
144
162
133
121
155
78
123
85
73
153
94
104
103
74
111
95
106
115
107
159
168
110
125
133
100
159
69
108
124
121
89
54
152
85
76
99
138
81
103
103
125
163
139
81
103
133
54
67
108
166
95
169
54
90
87
102
146
124
127
151
123
102
96
93
112
108
100
154
131
105
132
104
95
99
102
106
107
148
147
108
54
158
131
93
112
100
101
179
106
133
94
123
95
126
97
123
54
107
103
107
105
85
105
110
54
110
133
137
121
135
113
115
124
142
99
91
59
108
102
129
117
95
49
92
100
94
168
114
81
90
127
97
67
87
106
122
102
102
95
98
173
94
118
151
54
54
107
115
90
119
163
69
109
132
128
120
138
69
133
138
138
128
80
96
144
129
86
153
132
113
67
126
199
119
99
126
54
118
139
115
107
116
54
81
82
107
102
142
122
108
105
128
108
133
120
104
95
120
49
134
120
90
147
95
115
107
49
131
85
114
150
77
143
93
84
49
118
134
85
103
146
129
160
83
121
139
106
144
157
103
103
61
54
146
108
59
126
132
122
105
69
124
114
118
125
107
54
108
131
105
83
143
151
74
107
54
108
119
116
103
110
164
100
101
121
61
124
128
91
108
105
98
108
107
110
98
117
59
133
140
118
172
102
76
78
107
147
125
114
77
111
140
105
104
113
90
138
106
138
144
130
140
87
98
135
117
146
143
54
163
147
97
137
95
112
103
82
119
146
78
125
120
77
112
95
160
193
81
144
177
111
116
148
83
144
112
115
166
54
151
83
95
186
141
105
148
83
97
149
105
92
132
110
138
85
121
104
160
114
107
96
148
148
93
107
121
78
54
132
81
84
167
92
110
117
138
155
125
123
107
49
112
89
105
200
102
103
118
133
68
113
82
98
59
74
123
108
106
151
131
102
180
134
160
65
108
148
49
158
127
118
144
106
115
119
97
90
86
119
153
146
54
95
54
91
90
139
144
111
90
83
130
87
89
109
98
118
108
84
124
224
81
132
95
158
98
87
87
114
98
129
151
113
110
123
103
97
130
131
84
118
140
156
101
113
95
145
59
154
122
98
131
118
118
100
114
113
126
110
143
146
139
92
189
95
49
177
149
164
160
133
90
120
121
78
80
138
103
80
133
102
143
125
118
117
54
97
116
103
137
125
81
128
120
76
85
127
117
143
49
147
91
102
160
93
120
125
127
96
138
49
100
131
124
127
152
90
113
115
83
164
89
96
74
132
84
103
105
95
73
54
96
108
136
70
180
115
101
206
78
146
125
152
118
144
98
113
157
54
95
98
79
142
120
114
87
105
94
112
194
128
75
89
102
49
74
98
145
112
95
119
77
106
145
95
59
110
132
108
95
101
128
97
169
105
112
134
102
113
123
122
158
132
111
168
131
87
104
83
125
125
149
92
77
135
75
144
92
90
95
122
108
49
95
105
150
159
102
217
168
137
59
143
180
158
98
123
148
113
82
129
113
83
161
144
180
74
95
102
93
109
74
54
90
128
130
100
131
111
97
54
108
102
81
190
49
131
98
93
135
137
146
118
175
112
195
107
96
156
87
91
117
108
166
102
74
127
74
139
49
113
102
135
102
150
108
67
85
108
126
129
141
81
54
127
107
85
69
113
87
105
102
98
115
115
54
131
81
134
54
138
121
81
49
87
158
107
90
102
78
124
129
108
89
101
131
97
85
141
54
107
76
98
165
128
130
135
97
113
112
74
139
121
81
83
105
135
115
117
76
84
148
107
127
122
59
132
103
104
98
81
90
137
175
131
85
95
95
146
106
118
148
146
98
109
104
106
115
102
105
100
117
68
151
129
147
95
104
105
124
122
85
139
54
129
103
96
96
76
54
133
123
137
93
108
172
146
140
191
89
108
99
98
98
118
133
98
108
49
123
83
132
92
108
81
138
97
128
119
118
141
82
117
98
104
54
144
143
115
98
105
145
167
177
126
99
95
124
127
128
93
102
99
144
115
67
54
181
89
88
95
87
78
88
139
117
122
59
138
167
146
162
100
54
103
151
113
111
97
88
59
137
142
93
127
115
127
78
146
147
125
72
121
125
122
93
54
95
98
143
122
149
86
156
101
95
102
49
88
95
122
150
113
76
105
140
129
126
90
110
132
111
77
158
110
135
113
141
95
153
145
140
150
61
98
144
160
103
83
67
123
104
130
122
93
90
95
101
164
54
82
192
91
54
103
140
74
90
104
106
149
83
76
120
131
81
135
82
122
74
61
165
54
125
160
121
110
121
127
180
94
105
149
104
130
135
103
113
102
54
104
119
145
142
106
123
115
134
113
78
104
76
144
164
96
133
106
121
213
145
121
93
164
103
150
195
127
127
91
117
125
89
99
191
120
108
119
95
161
141
100
131
143
95
126
129
54
109
120
98
54
124
133
54
157
94
98
120
114
74
125
148
135
81
106
98
108
104
106
78
118
164
128
107
82
144
83
115
160
113
102
125
75
103
156
135
161
133
109
116
177
132
82
108
115
104
141
88
114
100
112
54
131
103
107
113
133
116
49
83
80
125
118
123
179
95
107
95
87
118
139
130
97
137
128
97
95
78
128
102
125
119
115
122
104
139
129
67
120
96
112
136
103
186
135
49
172
161
134
144
69
110
108
158
102
104
98
177
101
88
95
124
132
160
127
102
102
65
151
98
158
91
116
148
135
140
135
145
142
145
89
204
67
156
105
106
113
118
134
131
102
79
69
81
160
125
91
128
108
59
93
105
172
106
115
119
78
197
117
128
80
177
131
95
69
196
132
59
127
102
93
102
102
59
104
108
172
90
103
98
81
112
105
121
78
87
136
194
114
102
130
61
114
76
150
125
119
119
139
98
97
125
101
129
78
149
132
54
161
85
108
133
83
114
127
117
122
113
166
112
90
81
87
108
85
78
124
68
111
119
129
116
133
93
138
95
90
123
103
103
94
90
131
104
131
153
54
149
118
157
102
117
122
121
95
133
133
116
134
116
129
119
98
102
163
128
177
114
171
141
54
121
120
90
120
104
145
74
148
59
103
128
137
125
94
102
110
67
94
107
163
135
76
113
164
139
118
167
59
118
125
142
108
186
106
108
122
130
54
80
145
156
150
110
117
103
84
113
135
113
96
149
139
132
125
76
76
124
54
128
54
49
160
59
91
69
113
114
139
158
148
121
91
139
83
108
91
125
91
111
163
84
137
99
103
108
54
157
90
103
114
118
110
92
108
137
145
107
80
91
93
98
104
140
128
192
45
98
116
92
91
54
102
132
102
129
83
107
111
112
49
95
87
54
76
158
105
133
133
116
120
121
145
139
81
158
131
128
117
102
137
118
135
133
144
128
54
145
111
125
119
81
157
131
106
83
122
107
133
141
88
94
126
139
116
127
78
103
115
128
108
147
98
108
78
111
105
127
85
126
49
54
115
122
87
131
153
102
173
126
151
124
141
123
76
123
90
81
97
68
158
81
113
128
150
103
116
172
122
95
113
156
105
142
131
164
225
144
81
229
129
61
90
127
90
68
108
144
147
83
113
157
87
121
139
174
88
146
148
113
131
135
129
92
90
72
127
147
103
139
67
98
176
108
116
68
109
112
131
125
142
146
124
126
181
65
143
162
138
128
148
74
122
125
54
95
98
89
129
59
104
154
92
101
171
144
176
125
119
99
129
69
177
140
88
113
113
68
108
118
79
93
107
108
67
49
96
108
153
141
132
59
108
90
124
98
118
54
84
87
144
87
83
95
135
77
98
105
137
102
98
124
102
81
95
102
98
54
68
156
119
119
123
118
107
129
132
121
158
61
54
207
202
128
103
96
157
120
81
161
102
112
144
114
119
113
76
124
77
91
106
113
82
164
107
141
189
69
97
160
96
98
98
143
98
188
125
153
134
102
89
105
177
110
143
74
112
107
98
133
105
144
165
94
54
112
131
180
86
90
122
114
136
141
95
81
142
200
106
97
69
133
123
79
74
76
124
147
164
99
124
65
109
137
113
194
126
77
82
166
145
103
94
81
91
130
102
85
205
138
112
115
90
123
98
168
87
92
143
89
123
144
78
138
87
111
119
117
144
116
116
116
118
91
111
158
103
144
74
59
146
115
99
143
130
139
104
117
106
148
74
132
100
124
122
76
90
104
149
102
135
99
120
144
77
116
132
54
122
93
141
127
143
177
118
127
95
134
92
72
91
137
124
116
61
99
125
113
148
134
91
77
181
154
103
106
142
147
90
87
153
96
114
111
59
149
68
131
156
94
113
129
141
76
85
76
54
139
110
123
59
91
124
122
105
69
122
135
148
87
128
80
93
122
108
59
65
133
143
114
104
85
190
85
102
49
113
149
140
101
110
168
133
117
136
93
67
140
164
99
83
140
105
152
135
81
108
120
156
117
145
94
144
140
118
96
82
179
94
120
87
107
103
111
140
139
103
87
119
121
89
101
135
95
74
76
61
81
96
110
99
95
108
77
121
114
81
148
66
179
110
98
216
111
98
95
155
132
106
76
73
108
110
90
133
148
59
157
91
133
114
112
112
98
82
103
122
140
105
98
83
65
149
102
95
54
110
112
121
111
54
95
87
114
152
133
95
190
139
131
80
108
92
108
140
112
80
107
110
54
143
90
102
93
90
108
157
131
96
118
97
54
128
89
102
103
120
98
77
104
132
128
142
121
123
83
125
105
133
159
129
95
98
110
136
120
49
93
125
69
54
107
177
111
102
107
110
128
145
84
145
54
54
102
145
102
105
127
54
124
123
131
85
102
101
108
113
117
135
125
86
127
153
160
143
106
117
99
143
119
149
67
105
54
171
81
134
102
127
95
161
143
92
122
126
131
87
170
57
105
57
108
107
102
194
101
98
83
74
85
116
106
92
153
123
143
146
85
92
148
131
153
102
101
89
133
128
70
108
105
108
109
95
115
137
142
173
105
152
98
114
125
87
99
76
124
125
96
151
102
186
148
135
112
113
132
95
144
110
116
143
138
150
139
186
83
79
170
170
138
199
119
100
108
99
128
132
137
98
90
153
91
111
186
92
120
102
144
102
125
115
108
125
93
180
131
129
141
162
121
124
92
49
59
155
194
132
95
95
164
108
106
141
120
122
132
111
94
128
145
119
101
59
128
134
102
54
106
102
80
111
108
180
115
133
133
107
117
96
81
120
102
95
90
57
157
67
149
122
84
154
123
107
148
141
61
125
67
147
172
100
54
148
180
129
102
74
149
109
101
49
78
76
128
143
167
180
121
150
108
133
108
152
127
134
119
92
158
108
92
127
86
120
112
108
165
139
119
76
104
110
110
78
77
105
109
93
102
133
127
144
129
108
93
80
69
96
73
93
128
77
118
128
113
144
96
111
54
119
99
124
136
54
102
125
79
157
105
95
129
180
95
117
161
149
49
133
102
123
138
73
127
45
148
78
125
125
105
75
102
159
93
125
54
133
98
120
74
110
82
81
136
127
129
126
97
130
103
54
135
143
59
111
74
121
90
107
99
120
165
174
109
179
122
61
76
131
104
73
91
132
131
95
87
138
133
77
54
105
132
85
108
113
144
96
90
95
94
59
139
96
84
145
122
114
128
128
90
114
165
74
146
102
108
114
143
113
117
76
169
159
106
119
97
147
96
54
109
116
97
78
91
126
85
102
97
119
103
127
117
82
95
97
124
96
150
102
120
122
153
112
103
89
87
158
161
103
77
87
138
84
103
91
206
127
102
144
202
147
123
151
142
84
98
54
116
125
108
146
123
127
143
54
123
121
157
118
144
97
143
156
169
161
140
130
120
49
108
143
102
108
85
118
122
142
76
91
78
159
94
135
108
106
151
98
103
139
123
95
89
106
126
153
68
102
74
93
162
128
113
127
81
114
112
105
136
78
54
150
134
162
120
81
139
103
135
120
81
140
77
120
122
83
109
116
102
129
74
127
126
115
138
102
125
135
158
119
124
99
102
81
93
95
93
85
139
115
81
111
131
54
89
128
147
137
59
85
138
102
109
129
77
69
98
194
135
49
130
124
130
73
166
86
78
100
108
134
157
73
142
87
148
107
116
194
89
128
113
138
103
119
135
106
102
114
102
102
111
129
91
109
102
172
95
87
121
78
157
147
97
119
147
112
139
124
131
127
127
135
94
121
103
106
105
98
127
119
102
166
134
102
84
101
113
111
117
112
110
82
149
85
125
161
122
141
113
121
170
156
59
131
113
111
120
90
95
159
183
128
108
54
161
45
120
159
108
148
114
106
142
118
105
59
69
74
136
120
173
132
129
116
148
81
113
115
128
67
97
106
92
138
122
129
125
70
96
112
133
150
153
135
59
102
49
114
113
61
93
102
138
116
145
158
95
134
81
97
97
112
162
91
118
101
74
112
108
90
153
109
164
115
69
177
149
78
74
134
92
145
85
54
94
59
132
177
147
148
101
120
119
81
86
142
142
112
124
163
130
110
112
158
115
99
49
132
110
54
102
144
78
149
106
98
194
129
105
75
147
86
147
123
93
150
105
180
132
106
76
83
79
95
154
117
98
175
109
102
129
128
128
97
134
74
112
125
116
139
135
94
140
111
138
131
116
97
105
120
74
126
127
148
85
89
49
108
107
179
115
54
106
125
77
109
131
89
161
74
158
125
183
143
81
98
101
103
148
90
89
107
120
133
138
121
127
54
77
102
74
166
125
122
133
200
125
123
139
95
129
118
76
82
125
102
105
87
145
78
110
160
74
102
124
157
129
158
95
122
123
182
83
119
108
82
116
111
158
54
172
102
128
59
144
95
140
108
115
97
59
54
139
165
154
49
124
103
133
109
59
126
128
103
110
140
89
83
124
144
91
94
87
92
76
74
148
49
113
130
141
157
103
97
128
108
132
61
130
154
78
91
129
110
168
187
133
145
118
127
133
89
87
142
125
107
95
118
102
67
125
138
109
85
77
131
167
92
118
160
139
141
134
139
128
133
116
105
130
96
54
119
106
87
96
98
101
120
179
118
54
100
54
94
76
131
132
61
81
96
122
129
105
139
99
90
85
108
111
102
177
146
102
110
103
140
122
132
54
95
105
83
96
126
124
67
148
54
82
144
165
95
99
90
135
142
130
108
132
128
99
135
146
118
135
82
112
120
113
96
101
178
139
77
234
112
100
49
118
131
54
158
74
118
93
102
82
167
120
54
131
119
138
132
115
182
99
126
89
77
134
128
146
146
87
149
135
129
87
186
125
90
98
122
121
162
142
135
127
95
74
76
122
101
108
200
120
125
102
107
88
95
188
54
175
102
102
116
77
101
129
98
128
98
54
114
98
129
124
128
49
142
122
115
76
139
103
90
117
116
110
144
159
78
143
165
59
105
98
114
126
91
116
152
80
200
140
108
148
151
103
102
77
115
90
125
109
103
135
61
108
119
120
150
81
99
167
145
157
173
61
81
177
49
119
81
149
113
132
85
128
169
74
122
54
83
131
79
101
82
59
84
124
97
112
143
93
114
149
112
59
74
105
91
107
135
121
167
92
95
138
110
113
146
154
153
130
54
117
121
78
116
117
125
119
156
54
113
97
109
163
165
135
108
143
104
106
100
96
145
143
126
67
93
145
143
124
96
127
102
118
126
102
104
115
163
96
78
115
93
92
104
139
116
118
100
102
126
87
95
81
157
125
128
98
95
135
115
101
87
125
102
112
54
123
113
115
133
158
122
155
147
115
84
81
132
102
144
139
91
108
149
108
95
59
118
189
133
100
84
95
98
165
144
49
93
137
59
108
150
54
113
85
113
95
97
111
108
76
95
117
59
126
139
123
106
114
93
108
177
145
128
115
154
104
54
93
103
94
106
107
103
95
110
148
94
138
195
109
99
74
167
111
113
122
113
143
121
94
77
79
87
81
95
162
87
95
73
192
147
108
159
127
75
87
124
146
109
128
136
129
100
159
98
133
131
98
123
92
87
149
98
89
123
103
123
110
132
121
148
181
137
146
139
148
151
78
82
135
98
122
194
158
80
148
112
111
59
113
128
148
112
147
119
90
118
125
142
138
108
87
141
122
139
113
117
119
118
128
118
163
165
126
128
141
132
128
95
123
74
106
128
114
74
87
132
116
106
112
131
179
102
78
125
183
131
108
144
131
87
106
128
108
184
78
54
59
155
103
141
113
49
127
109
143
121
49
96
103
122
177
102
112
97
146
103
108
153
54
131
125
130
112
98
135
98
123
135
157
119
133
54
77
91
96
109
138
90
49
103
191
100
95
102
98
104
122
146
87
126
110
100
125
78
96
106
131
93
114
158
102
104
144
121
95
116
103
59
139
131
135
54
125
123
152
102
128
120
129
126
102
54
125
145
125
102
83
79
107
127
107
83
127
98
147
111
131
104
150
148
139
113
140
134
131
133
82
84
127
95
89
73
139
155
170
120
96
175
108
161
125
138
143
133
120
117
116
139
150
156
177
199
221
107
78
100
109
129
125
119
122
158
133
108
105
128
138
108
106
190
161
91
126
104
125
105
147
162
103
134
105
98
146
91
102
104
191
81
127
180
98
95
115
80
130
70
87
105
98
144
78
93
144
95
122
101
113
153
125
101
152
160
206
153
106
92
100
102
157
90
153
113
109
180
106
131
99
89
137
103
191
128
129
98
86
143
196
68
98
108
144
101
100
90
81
108
82
49
138
67
144
106
129
110
129
140
124
162
57
128
177
133
109
98
91
130
94
98
119
119
118
107
153
98
114
133
132
108
115
108
49
122
140
113
89
81
93
66
115
138
144
153
108
102
109
113
76
111
121
108
83
102
169
140
92
110
102
108
97
87
138
106
178
113
59
108
102
123
145
130
145
76
82
169
140
194
106
141
81
74
54
54
95
108
104
122
142
102
122
110
113
128
109
118
125
147
78
156
99
133
196
76
138
103
131
123
174
86
93
123
118
127
162
129
116
54
94
126
81
142
98
93
130
115
145
97
106
128
131
109
84
105
150
96
61
108
105
102
91
129
120
95
167
108
68
103
49
90
68
122
105
114
105
144
125
95
102
158
112
131
148
82
128
76
83
107
100
104
116
153
159
98
89
103
117
74
125
153
125
98
181
80
108
142
131
91
165
95
132
84
92
154
100
137
109
120
83
158
87
148
130
118
113
156
142
111
75
133
91
137
142
139
142
186
84
93
125
143
63
104
111
139
61
103
85
94
139
161
128
104
108
59
140
108
124
161
133
95
111
153
99
140
120
99
148
45
126
111
103
95
91
92
80
140
134
135
102
93
77
128
102
156
144
105
130
103
119
108
122
118
144
98
156
179
139
118
105
108
129
142
100
146
121
150
126
138
131
89
129
147
77
139
81
108
108
117
131
113
131
112
144
76
108
119
96
108
143
79
87
93
155
125
96
133
159
150
108
132
117
98
95
143
72
169
118
113
133
120
105
125
69
103
142
100
121
104
80
89
128
108
111
126
144
77
124
74
132
124
142
81
59
164
65
126
90
117
54
140
151
74
149
106
143
179
96
108
81
153
88
170
147
91
161
91
152
80
142
104
127
83
126
91
106
100
103
87
135
111
59
141
141
145
103
84
54
79
127
80
104
76
119
151
116
113
104
224
109
107
153
131
129
102
134
77
140
103
177
100
134
82
90
119
138
142
106
96
103
90
109
113
102
128
146
98
89
49
104
93
144
81
77
177
108
97
120
123
139
130
108
102
135
117
161
54
85
91
108
118
103
148
108
87
77
136
120
61
148
78
97
122
129
99
135
162
95
134
96
98
101
92
95
79
68
85
169
111
98
98
151
137
113
101
138
168
143
95
199
152
111
127
81
155
137
129
144
123
95
59
102
87
135
124
170
135
169
101
74
97
97
93
128
146
95
148
111
132
86
103
140
134
105
98
90
185
117
151
121
98
117
102
144
103
113
94
140
87
126
119
123
100
121
105
100
147
122
80
103
137
122
114
148
110
192
143
128
144
108
137
121
110
133
93
151
54
110
176
98
73
121
94
140
121
89
162
94
133
142
134
102
141
149
108
141
99
125
107
136
129
144
49
158
108
87
158
97
140
145
110
132
125
106
125
95
104
61
158
154
131
103
103
141
123
105
83
102
128
87
93
147
159
54
118
82
125
90
102
148
134
155
80
106
82
130
84
170
113
99
148
94
141
128
95
99
54
96
188
105
98
152
98
106
143
103
80
130
146
115
139
120
155
103
146
74
103
82
54
117
103
99
133
76
113
116
117
59
143
94
61
101
115
142
110
139
101
128
91
115
145
106
49
117
148
105
95
128
112
54
108
128
108
54
162
186
110
109
108
110
102
102
103
93
132
74
109
128
95
96
113
108
93
139
104
133
178
95
154
141
186
89
115
105
161
98
112
61
49
146
103
87
135
83
98
122
123
86
132
102
101
115
137
117
54
113
170
115
95
90
82
118
111
98
90
128
94
78
106
49
167
148
77
127
96
127
134
146
123
79
116
96
123
155
83
129
109
105
106
168
138
126
87
170
68
54
138
95
137
132
106
94
102
139
147
157
93
116
132
116
94
144
93
81
121
83
108
147
108
121
211
82
78
131
154
98
95
108
140
95
162
173
61
59
149
123
139
113
65
101
147
49
108
143
87
81
125
127
54
54
129
108
101
134
96
99
108
117
133
130
113
119
108
145
159
99
146
99
74
77
83
107
106
87
127
109
98
128
98
74
85
102
54
108
71
116
122
97
137
81
109
103
108
82
103
81
123
144
177
134
98
76
135
151
108
133
69
95
141
115
129
101
77
82
105
97
109
116
125
141
111
80
131
138
86
78
96
143
90
115
122
98
136
143
161
113
96
62
124
96
115
76
92
83
106
102
160
181
101
95
108
164
156
82
123
123
108
177
95
126
140
125
91
106
152
106
125
99
149
98
98
72
142
94
110
93
103
137
98
81
150
158
83
103
105
129
108
74
119
167
83
61
100
105
118
125
77
103
75
102
123
114
159
120
143
74
59
130
108
120
119
151
100
107
158
109
132
148
118
102
135
148
93
67
179
86
143
106
95
129
59
54
150
82
74
102
119
90
176
86
123
95
128
80
154
114
103
120
61
195
59
137
143
132
200
168
102
108
103
86
97
77
54
92
59
136
143
84
61
123
102
107
90
59
71
159
117
59
145
139
100
103
95
148
98
103
126
105
131
191
103
150
102
85
105
148
123
49
107
103
91
108
148
159
134
166
135
81
141
78
93
69
125
100
83
147
108
132
105
168
129
180
94
61
117
97
123
107
119
105
129
98
107
101
114
105
93
91
111
143
170
135
141
124
135
103
121
120
85
145
96
168
112
133
98
120
161
173
92
108
182
149
182
137
153
108
206
86
145
105
95
119
172
148
119
141
167
154
110
107
108
97
78
200
112
128
113
102
103
133
118
101
133
103
74
95
145
113
161
93
123
107
102
107
107
81
49
122
54
77
116
85
140
136
105
69
107
118
111
130
121
132
129
172
49
150
130
69
76
135
78
99
102
112
85
108
145
128
96
118
86
133
152
125
94
102
87
107
98
78
98
112
145
106
76
67
169
96
116
177
108
108
86
82
167
142
121
67
105
81
137
102
54
150
59
94
134
94
116
69
96
158
78
120
122
116
98
94
76
122
72
74
119
131
54
81
90
125
168
91
135
68
123
97
136
146
103
163
157
126
87
80
95
125
95
73
121
132
123
117
98
127
144
200
112
95
152
138
155
107
61
138
98
137
93
135
59
172
76
177
68
78
86
118
81
130
108
78
103
102
87
132
133
135
135
163
88
94
146
144
112
115
90
166
104
127
49
107
99
125
75
117
178
129
143
99
100
131
129
96
109
95
188
73
147
131
96
103
54
78
146
81
97
97
81
117
73
111
96
98
103
227
125
90
96
125
130
143
98
125
141
129
101
98
120
116
102
110
59
146
105
73
82
129
95
115
102
126
113
156
155
176
186
99
54
115
76
136
90
135
61
148
112
83
126
134
102
103
148
93
122
167
131
121
106
97
126
102
133
148
89
112
113
131
151
102
112
102
89
141
125
151
107
160
128
170
108
88
117
139
116
113
75
115
136
91
163
135
122
105
113
181
140
145
68
108
90
98
137
106
145
128
85
103
146
175
105
119
76
102
91
67
150
130
132
110
199
123
108
159
147
105
96
151
78
61
54
94
126
83
114
160
128
124
100
104
136
98
81
155
93
45
145
99
127
123
81
115
136
90
113
104
54
112
164
157
59
103
194
156
108
162
90
149
104
122
119
83
54
122
110
85
108
80
108
104
108
99
93
126
131
108
108
124
108
54
167
148
87
137
102
106
149
61
76
166
74
144
99
116
125
125
132
139
122
143
104
118
124
133
141
119
108
110
49
132
106
93
133
99
54
156
150
138
111
108
74
143
78
112
132
89
81
108
139
90
99
167
127
155
134
102
87
113
142
123
153
95
61
125
77
125
129
83
78
127
91
102
104
74
122
100
101
150
126
142
142
96
49
102
108
81
133
100
120
102
104
144
81
118
108
120
127
113
133
140
102
81
87
108
177
118
118
162
105
122
90
139
119
121
93
119
115
125
117
105
118
131
98
83
122
119
145
136
49
59
81
194
144
122
86
79
136
113
126
107
107
99
117
106
105
131
62
106
112
130
103
138
108
54
82
121
54
186
127
106
116
143
151
165
117
172
102
140
102
150
59
102
93
84
158
182
90
156
120
165
109
83
118
167
125
116
131
144
108
121
114
61
105
137
133
103
144
108
116
122
108
90
109
103
148
97
147
83
171
234
115
114
105
109
156
49
96
81
105
113
54
96
139
96
82
87
116
143
108
113
97
115
81
165
112
158
133
121
163
54
59
93
113
122
80
118
122
103
67
105
108
100
113
144
108
54
88
98
130
113
105
126
104
131
117
156
98
103
144
112
165
97
107
95
220
113
126
105
147
87
144
200
198
102
98
151
115
102
122
122
113
74
169
103
97
115
195
130
89
127
117
73
121
158
96
95
141
87
102
124
105
98
120
54
119
126
104
74
95
92
54
95
95
125
144
152
82
112
99
139
81
95
115
108
85
134
149
151
164
130
112
85
95
126
84
81
139
105
49
87
106
84
90
123
144
59
113
120
88
74
132
102
73
54
100
112
54
130
91
156
135
145
81
102
125
77
119
117
49
133
95
98
150
108
132
54
159
98
94
112
149
115
101
123
90
49
59
133
113
81
118
67
153
73
102
159
109
183
162
147
138
135
130
78
156
98
125
78
115
154
54
124
116
125
158
81
108
122
96
108
110
137
116
168
127
135
95
102
76
159
127
127
140
81
97
112
107
107
105
92
145
81
92
85
81
121
112
120
98
122
102
108
113
133
167
112
76
153
84
103
116
87
85
142
126
85
118
97
70
54
111
108
116
124
102
54
81
108
120
126
98
107
160
98
104
54
97
95
107
103
147
130
84
104
173
96
108
101
144
125
108
186
105
110
177
148
85
133
119
157
94
125
96
94
59
54
109
83
95
143
99
135
113
134
170
173
131
110
108
137
92
132
113
85
122
131
95
157
105
95
90
54
145
131
140
139
171
116
108
90
89
105
85
79
127
93
129
182
107
144
160
91
191
87
71
156
117
148
98
116
90
107
132
132
128
95
127
95
106
90
98
131
138
103
106
133
138
167
110
141
103
154
45
77
127
77
107
97
145
160
147
133
107
135
81
54
113
138
83
122
116
102
130
113
98
120
106
150
68
223
117
158
93
86
125
118
206
103
135
110
145
82
59
91
128
125
139
65
130
54
140
137
168
98
111
103
59
83
115
144
113
133
144
105
83
82
110
146
119
161
120
98
122
152
171
77
102
141
76
107
129
111
93
74
148
83
111
105
186
131
127
93
132
129
124
140
109
141
146
82
138
134
78
93
90
124
137
120
98
84
106
126
148
102
140
155
143
135
139
143
125
129
93
128
89
173
139
108
49
126
90
83
102
125
100
119
126
95
107
82
113
145
54
133
95
143
164
107
104
167
139
69
80
103
98
130
119
54
119
116
133
156
70
116
127
147
118
152
121
139
87
135
87
144
105
115
98
79
93
112
108
95
141
141
92
108
125
113
78
127
98
133
97
118
102
73
126
165
155
180
129
81
49
126
172
102
131
138
100
87
116
112
105
102
119
135
139
119
108
141
132
170
133
124
157
162
119
113
135
133
87
131
131
76
113
115
85
109
98
93
105
144
129
59
96
110
158
148
99
98
84
125
163
101
177
103
108
131
159
148
190
65
133
49
181
149
158
177
113
95
125
65
132
87
133
127
118
113
118
143
132
191
67
131
132
61
129
111
49
154
76
81
123
143
102
184
117
159
123
77
106
74
109
115
74
151
93
156
135
134
137
123
77
109
97
133
181
167
82
115
125
113
83
94
133
69
117
54
114
103
165
114
104
135
140
76
78
104
144
103
155
116
98
109
80
67
78
85
123
119
161
67
67
120
133
115
74
83
95
98
79
95
133
165
108
168
94
107
127
93
115
101
81
134
148
122
74
123
61
110
90
120
81
101
108
137
108
108
109
105
120
124
139
141
146
105
125
81
96
115
125
125
74
204
142
177
128
100
97
133
154
108
93
144
81
182
180
101
97
147
49
85
108
88
76
124
54
119
101
194
136
59
111
102
122
91
178
117
54
139
81
61
141
97
129
161
133
143
118
107
172
141
132
128
103
102
161
131
113
167
94
49
110
188
131
131
141
141
114
131
137
122
87
108
129
161
130
118
74
111
149
99
161
180
92
123
54
145
144
133
54
108
127
99
120
105
105
93
103
112
96
162
140
170
127
104
83
91
142
106
173
106
103
175
161
80
118
152
117
83
114
144
127
112
114
102
144
81
118
113
134
143
90
118
111
123
145
112
118
106
54
119
126
98
138
116
77
80
95
112
105
180
116
54
170
125
127
121
103
96
97
172
104
132
128
106
74
207
102
165
92
120
93
141
49
90
127
159
74
108
68
131
94
151
133
148
141
96
101
102
121
149
143
140
96
95
159
163
85
127
115
102
126
81
108
148
82
132
74
157
159
109
119
78
122
111
115
65
157
158
103
143
91
177
161
111
118
120
95
156
128
122
120
102
102
102
68
172
148
108
106
125
54
108
137
116
139
148
125
120
183
160
133
108
144
118
95
144
120
54
129
128
99
131
108
147
139
106
129
110
45
119
132
98
81
118
129
78
89
144
108
98
107
127
102
150
103
152
104
124
103
91
135
106
158
134
140
122
61
74
98
109
81
138
101
139
120
123
92
110
87
118
107
128
102
54
103
160
159
90
117
81
177
54
148
82
135
108
93
88
85
120
112
85
98
81
116
101
76
140
95
103
134
54
78
117
142
49
95
132
61
93
121
125
149
110
91
54
95
125
165
100
141
101
74
95
141
102
82
120
118
49
104
140
100
102
67
106
122
87
104
148
140
77
108
120
98
129
133
130
118
107
133
144
129
177
105
107
108
96
59
106
152
81
105
110
106
82
153
54
97
95
118
135
69
127
93
112
61
121
113
107
172
119
177
81
169
114
109
145
146
142
107
154
93
90
59
107
137
145
54
73
102
154
81
102
49
120
105
111
93
115
95
179
135
95
120
107
111
128
130
125
143
130
150
54
116
91
120
131
158
149
154
177
68
90
108
118
94
77
177
112
127
110
107
157
126
137
112
136
148
104
143
191
98
63
92
139
82
128
97
127
122
69
94
125
74
113
102
101
133
76
112
78
98
188
108
149
137
93
74
95
115
94
140
172
106
92
144
113
82
81
117
87
77
108
135
114
114
106
118
74
141
144
87
91
114
154
108
93
102
138
135
90
144
124
155
113
126
107
90
113
76
114
130
127
140
97
107
105
161
110
148
78
109
96
102
160
154
93
177
78
103
98
116
122
106
164
81
153
93
120
135
98
107
140
138
108
121
97
135
95
67
161
120
83
81
119
79
154
120
54
144
54
142
122
148
107
135
135
136
108
113
126
133
152
116
59
95
97
104
115
108
127
130
128
108
125
76
118
90
98
105
124
131
105
98
129
145
95
78
91
98
153
106
207
104
85
61
103
144
148
95
128
141
128
119
87
111
84
129
120
134
92
117
153
90
108
95
93
146
117
90
87
157
98
135
108
184
128
115
122
125
108
150
128
94
93
88
104
141
104
145
139
167
80
126
108
68
92
85
96
143
49
123
103
168
136
82
72
109
98
119
98
94
107
79
111
129
107
146
105
104
49
125
154
102
95
95
102
109
111
102
112
141
97
151
95
127
140
126
96
80
166
126
97
95
124
86
115
133
158
97
97
93
110
73
139
101
54
118
140
106
83
153
165
143
123
190
59
130
98
148
99
133
123
108
124
134
156
107
178
125
115
127
95
76
147
133
91
87
145
102
147
101
167
142
120
85
143
129
133
118
161
103
161
144
86
125
135
103
128
110
126
125
59
90
95
141
116
200
144
193
106
146
126
124
154
109
143
103
179
124
113
133
164
128
182
139
149
138
141
103
165
76
161
130
148
87
109
87
121
151
95
74
54
143
81
160
104
98
138
122
107
49
54
134
122
141
81
110
54
105
82
118
148
102
169
135
84
54
106
101
67
84
77
54
136
177
92
125
105
133
125
105
165
120
116
129
154
153
75
95
117
49
108
120
133
111
206
142
100
137
106
110
141
87
120
146
135
139
102
141
147
115
144
98
92
114
107
126
150
158
158
129
147
103
152
108
99
103
114
118
97
150
112
139
143
102
140
84
154
104
141
146
103
128
99
94
125
127
144
147
131
87
140
138
86
147
98
122
136
87
125
101
68
98
151
129
106
108
118
54
122
124
107
81
54
100
149
131
139
99
146
151
54
120
131
130
54
146
93
128
95
102
107
143
168
59
127
102
118
142
96
157
122
94
135
99
80
129
142
169
83
96
137
177
77
103
90
150
146
113
138
74
91
91
125
125
159
131
194
95
79
121
113
112
91
199
97
108
87
94
146
126
97
45
148
149
93
121
131
134
104
166
126
140
103
100
113
151
156
113
110
107
131
80
95
144
132
159
125
159
145
135
110
96
87
138
106
92
95
108
131
169
187
168
144
113
118
112
140
108
84
119
143
178
135
94
84
140
118
54
109
54
123
61
108
131
78
112
106
131
54
165
120
133
103
135
149
117
119
148
83
102
120
150
100
130
108
87
90
76
113
107
108
127
113
90
59
158
126
103
144
109
97
140
123
113
84
133
93
161
54
77
114
90
103
133
87
79
125
59
95
125
149
143
184
192
131
146
116
111
119
106
99
120
120
54
135
93
179
81
162
108
97
101
89
77
97
112
93
112
149
158
103
139
112
54
132
137
141
106
163
196
108
81
143
93
57
161
54
111
105
67
88
151
108
115
148
143
115
93
156
136
82
54
85
49
77
126
117
49
49
101
69
132
100
131
123
102
91
61
145
190
120
115
140
128
113
128
81
98
135
103
107
133
95
97
164
118
104
158
112
91
162
118
163
138
177
95
133
145
97
95
106
115
89
108
115
101
85
99
101
74
129
116
126
79
98
99
82
135
103
108
81
54
104
158
156
104
128
150
76
61
127
87
78
120
93
96
161
130
159
141
124
140
98
108
122
106
74
113
49
79
102
103
88
141
79
121
81
108
128
125
80
115
106
94
95
156
113
99
158
147
110
108
169
98
126
87
95
94
114
132
124
54
113
103
103
103
124
84
57
144
87
119
125
115
131
131
126
113
119
96
153
81
135
164
102
54
146
108
109
160
113
125
98
108
125
99
59
140
165
146
140
59
180
123
87
144
93
98
174
201
54
81
74
77
102
93
110
133
123
125
98
139
107
81
122
136
89
100
104
98
149
177
204
113
108
153
123
124
148
90
165
147
120
106
91
94
144
105
157
131
129
123
83
103
125
117
135
125
113
90
134
135
138
111
125
92
177
95
120
103
84
159
158
125
110
90
117
104
93
106
113
114
141
85
125
114
87
107
129
98
81
105
162
107
204
149
143
105
161
106
172
54
119
137
106
153
96
141
78
135
91
160
98
103
89
103
103
83
125
107
95
108
110
59
131
140
135
78
83
145
128
99
131
143
115
128
88
127
62
146
76
122
109
140
158
112
95
129
110
80
108
49
147
106
78
96
84
146
131
130
97
97
127
54
122
113
141
98
106
136
108
226
106
114
103
120
148
124
106
90
119
116
143
141
96
115
91
106
103
153
86
172
175
164
150
86
95
93
81
113
121
89
163
94
93
148
89
146
81
177
139
109
94
100
125
102
103
103
67
105
114
67
80
101
144
172
97
143
133
98
117
129
111
104
97
98
85
133
137
113
112
129
73
125
113
92
144
135
125
102
87
114
118
98
109
131
191
130
141
89
131
54
105
131
102
109
108
140
49
194
127
124
103
113
126
144
59
129
111
110
156
131
102
128
102
110
147
111
86
157
128
104
82
106
126
93
130
119
132
123
93
113
69
112
107
129
91
107
141
126
155
107
104
144
129
125
162
129
117
107
149
119
88
118
132
108
87
99
95
98
133
146
126
103
135
61
131
131
139
95
128
137
128
135
180
67
158
128
98
83
118
61
96
74
152
180
90
96
116
142
98
187
115
105
140
141
161
79
120
105
95
114
108
126
94
98
101
112
125
134
128
144
108
120
102
90
127
103
122
121
129
111
130
153
125
108
115
91
106
135
136
123
98
143
113
76
59
116
54
141
128
154
119
175
153
87
164
146
169
117
93
105
102
82
131
102
83
86
190
81
104
88
105
145
82
111
112
120
127
109
99
195
132
147
130
97
116
93
86
113
108
108
135
112
105
90
90
139
134
82
135
138
119
49
120
107
121
129
76
116
135
77
85
87
123
128
98
87
107
135
102
97
105
85
108
135
54
124
141
100
81
81
91
96
79
68
86
76
108
141
115
91
83
107
108
116
54
109
129
150
95
172
114
76
76
144
119
102
59
137
149
120
158
158
180
154
59
108
54
108
161
92
122
54
59
81
54
149
98
144
119
115
74
125
151
97
85
146
148
54
161
141
147
107
231
155
108
92
110
143
155
113
89
74
119
141
117
99
103
128
97
113
117
129
88
95
111
131
83
85
102
119
148
54
90
97
145
80
113
150
95
128
91
116
95
94
112
104
96
108
101
158
84
144
45
96
77
95
171
81
206
112
118
79
125
192
114
146
108
135
115
133
54
73
108
102
185
93
118
87
103
122
80
139
82
128
95
83
152
88
171
95
118
97
107
95
108
116
140
54
65
130
110
102
118
108
92
102
130
146
94
98
67
151
125
101
97
143
87
137
101
135
106
174
115
128
106
76
93
78
112
224
129
102
122
88
102
73
128
131
103
110
95
112
129
123
159
125
127
110
186
76
77
112
102
133
49
125
59
79
153
95
128
92
130
121
95
146
86
176
157
85
96
156
146
94
138
117
87
151
104
107
116
77
155
54
161
101
79
98
68
112
171
54
85
153
116
113
180
86
168
129
93
139
54
112
177
91
98
87
133
54
204
94
186
54
59
91
69
105
117
90
74
145
82
103
102
107
109
93
90
125
189
77
113
144
112
89
95
85
54
54
116
72
81
144
95
106
111
119
138
54
127
87
95
128
95
148
102
127
128
90
161
102
140
124
86
135
102
103
93
95
112
102
143
133
129
97
67
138
133
124
151
85
49
135
65
112
148
124
54
119
119
68
107
54
134
127
101
129
87
76
141
54
108
177
134
127
61
152
146
67
78
95
82
98
49
108
100
122
127
102
136
59
169
117
143
110
162
81
78
144
79
87
153
78
132
54
76
135
102
107
125
76
131
117
132
158
87
153
109
102
82
59
101
126
77
124
74
99
59
102
98
145
109
49
54
75
107
87
135
59
167
83
169
107
83
147
93
82
108
74
136
137
127
121
169
120
125
108
152
132
172
97
90
137
147
88
195
110
100
199
93
114
102
145
91
84
131
103
129
54
165
105
123
145
135
105
143
186
108
149
155
164
65
100
90
133
105
114
83
133
177
96
106
87
102
108
114
118
106
115
117
141
117
127
77
113
108
54
145
94
81
98
114
131
91
93
106
180
54
54
74
125
105
80
116
73
219
148
148
127
95
78
177
95
108
166
132
77
105
90
105
82
87
75
107
95
113
127
151
96
108
175
129
133
112
113
100
106
156
137
158
105
129
131
167
102
102
98
151
96
145
49
156
87
103
136
127
61
49
77
141
75
96
127
93
160
90
93
77
105
54
112
101
100
119
94
142
81
99
154
78
90
109
110
54
61
95
93
104
103
131
120
143
148
61
54
164
134
102
125
148
104
106
119
102
83
95
144
106
134
227
135
108
108
113
91
130
172
113
133
116
108
106
136
148
113
81
83
127
116
85
81
105
149
81
190
160
171
147
67
120
144
97
122
142
74
100
76
171
90
95
129
96
141
91
99
137
143
139
148
147
115
110
119
112
151
90
123
139
167
84
126
106
104
96
107
81
96
156
162
54
138
107
139
103
145
102
139
112
108
148
95
126
122
191
127
113
180
132
69
98
153
165
73
129
103
95
139
132
96
122
67
157
134
122
87
108
108
54
135
128
133
76
118
90
69
131
131
95
130
133
108
126
136
95
176
70
98
133
133
127
125
101
127
123
101
81
134
127
92
132
103
143
91
150
108
113
77
108
96
137
146
115
137
161
129
74
120
98
123
153
54
141
135
100
122
74
123
139
108
168
116
87
131
124
125
98
111
146
85
156
131
93
139
139
120
135
106
119
129
135
123
117
130
82
87
94
101
93
193
177
129
161
86
131
127
133
127
95
127
54
161
145
93
74
134
87
134
115
131
82
125
82
144
125
150
122
112
95
107
132
113
129
163
49
98
87
135
123
98
163
67
109
111
79
148
155
172
212
161
133
145
129
103
108
107
118
103
180
108
125
108
95
166
54
77
101
131
123
148
108
150
101
102
79
107
135
128
111
125
106
114
92
97
122
112
92
42
108
125
103
148
148
135
131
116
157
54
144
148
97
95
128
127
118
78
98
107
112
117
90
129
118
111
127
118
153
118
82
148
126
148
128
54
180
116
135
139
122
49
142
95
113
54
112
105
115
128
114
131
113
115
125
89
124
108
75
111
108
122
49
105
116
142
119
83
107
84
140
151
106
144
81
78
135
130
167
81
125
82
102
134
113
120
91
108
116
127
111
54
121
114
87
121
119
106
95
83
159
128
157
148
158
91
128
133
99
71
145
133
98
54
131
112
54
108
141
148
129
131
118
85
98
122
65
146
108
70
111
165
117
128
102
98
78
102
145
177
96
155
74
127
116
141
102
170
118
101
123
87
157
98
104
102
103
98
122
107
124
77
165
128
151
117
154
93
87
126
122
138
54
140
129
54
101
80
123
103
156
162
186
67
117
73
135
59
92
98
134
97
147
86
154
106
126
125
102
141
156
109
193
102
103
95
124
125
141
110
144
132
141
141
120
128
108
161
102
106
224
109
49
91
143
71
194
191
123
90
149
106
67
105
54
143
120
132
133
79
104
103
113
127
79
108
83
81
90
133
170
141
107
104
112
113
100
110
161
109
126
95
67
108
81
125
74
49
130
61
77
154
54
87
128
133
99
77
122
85
59
113
108
106
99
146
103
114
100
133
78
74
133
131
136
140
136
68
109
62
106
121
127
127
77
133
181
101
126
87
108
103
54
54
143
124
94
159
67
124
124
150
106
234
135
144
119
103
190
156
157
143
95
118
129
180
54
103
112
141
163
108
143
140
145
123
94
109
95
123
125
141
96
137
59
110
156
80
87
54
80
149
84
123
102
148
126
54
104
102
117
54
93
125
123
54
101
98
87
188
108
99
102
108
119
92
96
85
152
49
158
149
77
101
77
112
114
49
95
163
117
96
73
110
77
78
137
95
76
101
108
99
103
98
105
95
73
76
95
123
91
164
99
105
141
93
202
132
120
116
83
148
113
125
82
85
91
118
138
106
97
130
125
92
121
76
78
140
172
102
135
105
123
117
102
139
92
118
84
87
108
113
103
74
123
131
130
106
83
78
103
94
98
98
137
162
96
122
117
54
87
133
59
127
95
97
140
105
168
91
102
158
104
156
111
83
125
151
112
108
138
98
92
92
151
145
80
140
138
143
117
160
141
118
119
131
81
125
145
86
133
133
82
98
137
124
129
140
140
171
146
171
102
106
115
158
133
94
95
124
156
128
158
162
70
131
158
106
119
54
171
89
101
128
128
118
100
128
145
96
139
82
108
147
149
137
145
110
54
127
97
158
139
54
128
67
145
133
124
94
102
129
144
102
135
92
179
96
147
133
82
102
177
179
139
102
114
87
67
145
126
82
100
108
107
132
122
139
90
150
95
97
106
122
135
115
112
176
125
127
190
143
115
118
93
98
100
98
190
102
78
107
135
105
68
112
118
126
124
94
54
131
94
82
163
87
69
148
175
148
54
118
144
102
54
140
71
129
125
104
82
97
121
103
134
108
135
93
85
85
207
143
144
94
99
145
117
126
83
114
109
68
101
104
105
82
140
122
119
151
139
139
101
127
154
149
185
190
102
144
136
106
115
106
54
122
54
113
195
116
134
108
149
62
74
159
90
54
112
93
54
81
87
146
54
106
105
135
101
103
120
95
146
163
136
96
171
117
89
93
115
117
143
135
49
89
67
111
108
121
74
119
84
133
67
81
131
141
102
218
105
111
139
103
95
182
132
109
82
150
87
127
74
113
138
157
119
54
127
144
54
114
112
146
84
94
117
120
118
122
59
79
92
74
108
148
114
110
98
117
116
157
49
103
155
102
144
81
123
114
49
168
143
155
177
122
125
96
125
113
143
154
95
148
123
141
122
104
65
54
139
148
112
107
163
123
107
142
117
133
100
91
98
184
114
97
130
89
95
104
177
59
128
90
150
130
107
110
161
114
164
102
130
77
95
148
81
136
125
120
78
203
170
169
116
108
140
127
94
54
95
105
161
122
54
119
87
183
103
108
113
97
88
98
100
123
82
105
113
49
142
120
106
98
113
81
115
133
90
93
80
110
105
135
102
95
103
141
67
108
90
118
117
82
95
108
117
94
98
109
102
171
113
126
119
67
134
106
118
128
110
135
108
120
76
110
49
85
155
87
88
125
136
134
158
125
92
83
49
144
120
119
130
124
152
85
122
125
130
106
127
110
140
108
54
135
106
93
131
76
117
143
110
136
115
118
95
92
113
110
112
122
103
45
105
161
89
146
118
124
94
114
127
122
102
108
108
108
54
181
77
83
101
119
139
127
69
87
133
103
131
115
102
108
87
122
144
144
104
169
108
88
138
110
95
125
108
147
114
104
171
139
146
100
138
129
102
95
126
54
78
119
142
90
109
92
172
54
49
99
160
172
103
135
103
70
138
182
114
112
121
81
129
156
147
102
105
93
162
96
95
124
125
107
95
155
126
121
130
134
111
112
95
63
157
54
89
81
96
147
153
119
81
115
144
130
66
76
94
100
172
54
142
146
129
177
122
93
120
54
116
101
77
159
147
54
67
133
131
67
81
104
168
77
124
146
92
100
112
142
144
144
147
95
115
108
110
119
108
113
133
98
90
148
99
128
100
123
163
179
135
114
102
172
110
200
82
77
116
125
104
72
128
119
83
90
90
113
107
87
162
180
132
81
127
144
105
133
145
95
127
102
76
107
130
110
103
97
108
119
167
142
127
86
93
110
125
182
117
167
76
193
103
100
81
91
96
114
110
96
129
91
89
163
110
121
84
90
135
132
188
165
142
92
191
152
81
82
141
90
54
145
133
59
108
87
148
104
123
145
113
149
110
95
90
54
91
82
120
146
94
90
80
134
148
160
123
130
112
179
130
105
98
177
95
124
105
106
91
104
105
130
76
142
155
158
89
127
83
173
105
108
126
101
100
75
74
118
54
100
138
136
133
124
187
206
133
145
113
76
126
108
165
139
141
69
116
128
78
98
81
74
128
133
125
147
145
118
103
98
108
90
122
90
127
96
106
90
95
106
133
140
116
105
77
114
102
181
93
116
123
116
152
156
91
143
115
132
122
49
114
67
95
83
199
103
143
116
154
91
158
81
130
115
81
181
134
115
139
54
145
147
140
128
143
102
115
95
80
54
106
112
117
181
129
133
102
107
130
75
87
97
95
120
86
90
91
133
120
81
117
149
76
94
179
106
103
82
110
154
150
87
139
69
128
136
122
54
127
141
94
101
148
77
103
108
68
74
102
89
117
140
120
108
90
106
133
122
120
116
54
130
93
114
131
95
106
123
123
152
103
122
99
109
95
173
134
119
108
108
113
108
141
105
129
146
140
77
152
101
105
108
125
95
54
92
105
108
134
54
143
95
145
139
76
123
165
103
100
98
94
95
90
169
168
122
93
126
114
96
54
98
168
207
54
102
179
111
75
101
75
147
93
103
105
74
167
142
115
101
67
102
110
115
65
111
154
134
153
102
95
102
131
98
86
77
110
118
116
49
87
144
157
68
81
119
102
98
153
136
82
76
172
98
109
54
129
144
129
180
97
148
93
81
97
94
177
145
124
101
108
111
77
178
106
85
185
138
132
128
82
94
112
94
162
126
90
141
54
160
229
113
115
98
114
112
111
151
148
103
141
156
135
103
79
106
168
101
143
131
108
111
118
54
108
76
129
118
148
110
103
128
74
129
99
125
126
128
108
93
112
61
103
125
130
131
193
92
159
85
111
110
95
128
98
135
115
105
126
81
97
119
125
170
143
120
127
82
107
77
95
162
147
84
131
105
138
179
87
93
129
123
103
165
141
177
174
146
149
81
104
106
102
125
142
130
207
124
124
131
90
150
173
149
49
115
132
177
70
82
123
123
100
117
199
91
124
129
113
74
122
108
163
54
100
90
99
139
108
92
124
88
91
158
90
97
80
86
59
138
134
54
116
101
136
106
77
160
148
101
88
104
110
105
131
186
179
107
143
85
104
85
102
103
110
97
42
126
54
108
107
108
112
139
108
125
121
149
143
112
145
98
123
131
115
77
108
94
54
103
148
186
87
81
105
93
87
116
174
145
74
81
144
111
135
102
76
128
93
120
87
118
68
77
227
81
88
80
95
158
139
202
85
133
59
144
134
76
100
144
77
145
102
77
117
98
127
138
116
136
124
119
180
102
104
168
103
45
81
128
145
150
113
90
90
82
115
100
113
105
158
108
165
119
82
115
169
155
90
102
117
112
129
130
138
178
98
81
82
67
97
91
105
160
109
99
131
49
108
120
95
145
102
146
125
124
104
155
98
129
98
68
99
133
147
118
54
106
131
128
74
109
110
54
140
118
103
123
177
97
146
115
102
153
190
118
98
74
128
83
140
113
113
103
143
120
119
195
87
102
147
156
165
98
129
118
144
135
113
95
145
94
89
88
67
54
104
165
119
123
83
59
158
158
120
109
77
82
103
77
95
81
138
115
161
135
135
49
99
98
95
157
74
168
116
136
132
163
107
123
116
142
133
99
127
111
98
112
90
140
150
111
135
91
91
97
113
120
120
124
158
98
142
114
54
134
144
147
99
136
139
95
157
97
100
80
128
128
92
54
76
118
123
126
173
101
74
85
113
108
131
108
72
131
92
93
68
54
87
119
69
129
112
98
142
118
118
68
140
156
97
102
59
117
98
108
111
102
83
125
135
123
102
91
140
118
117
131
135
83
96
144
102
137
77
108
87
54
105
114
81
177
177
111
68
123
137
90
94
125
128
126
49
102
140
119
102
113
131
180
177
143
108
83
175
144
121
101
125
54
145
74
113
155
95
131
107
186
54
143
54
125
78
90
133
54
74
73
97
105
108
134
78
127
102
131
137
87
146
45
147
108
49
84
125
121
54
131
103
54
154
98
95
98
120
90
105
162
90
155
119
54
119
108
103
126
90
107
93
127
148
54
110
61
116
84
95
103
132
158
135
113
78
98
130
96
167
146
103
130
102
133
119
107
49
107
49
78
117
77
67
85
81
146
112
113
189
112
159
128
116
49
128
61
138
74
118
136
124
98
89
133
90
148
105
97
144
135
102
149
91
115
138
168
143
97
76
129
113
100
108
122
109
126
128
102
80
69
124
59
130
67
82
112
135
111
102
161
177
103
150
101
100
136
90
147
120
63
97
104
95
126
59
103
95
98
128
160
107
87
118
103
160
74
120
105
67
165
108
171
172
134
106
115
109
184
118
133
143
79
115
85
85
85
117
91
148
93
102
143
109
99
150
102
83
102
158
98
145
90
125
102
129
104
109
93
146
103
154
102
111
87
150
115
140
102
89
101
93
59
97
130
85
132
102
138
131
140
81
108
103
77
54
148
108
121
165
131
61
139
176
147
127
120
98
176
131
161
98
147
103
103
145
176
108
106
107
142
190
81
133
177
77
162
119
101
54
108
104
155
122
77
139
106
125
148
109
139
74
145
134
91
98
95
107
99
120
116
174
177
49
49
70
107
132
103
124
76
98
95
145
117
108
132
99
143
150
65
110
145
114
157
104
103
105
143
82
139
91
122
88
177
112
120
129
119
126
94
159
122
148
98
108
150
99
132
122
91
81
109
54
102
141
84
94
122
166
148
102
132
69
108
80
92
134
134
54
124
136
125
158
178
98
127
91
105
54
92
110
97
185
124
132
85
108
119
135
131
144
93
93
145
177
94
83
83
123
158
95
173
117
149
108
95
116
135
100
122
122
95
120
93
118
123
67
107
83
123
172
76
74
103
92
101
115
99
69
150
103
134
99
87
54
85
130
147
59
95
147
122
113
77
59
74
137
150
125
99
112
144
187
59
128
185
147
106
103
133
141
131
108
80
146
106
108
108
96
91
54
104
103
87
148
139
86
142
176
114
125
96
119
125
54
139
117
120
128
102
114
108
115
113
133
146
141
151
115
144
133
81
98
107
76
98
89
81
74
134
147
118
158
93
95
125
81
157
54
95
133
96
154
106
149
81
122
114
158
123
77
102
173
98
176
124
102
142
90
136
98
93
127
132
82
123
121
77
120
140
100
146
102
103
86
160
85
96
94
152
120
94
102
118
180
87
90
106
133
108
200
113
61
120
91
131
143
112
145
147
118
148
115
108
148
107
104
54
87
104
148
131
73
113
177
156
134
147
101
103
90
151
124
140
135
177
109
102
134
118
97
115
148
180
144
132
86
108
105
107
96
105
125
132
81
108
144
154
138
97
65
180
76
102
107
119
118
107
126
93
137
151
129
112
98
121
144
54
137
78
132
102
94
82
119
95
119
124
157
54
102
127
168
94
106
133
82
146
127
94
117
148
132
118
143
96
153
59
92
145
105
81
108
153
95
172
116
118
92
145
128
84
153
142
110
54
123
155
124
108
169
170
126
106
124
153
102
114
135
49
160
146
95
112
95
115
68
78
169
117
170
108
104
172
131
113
145
104
108
152
127
122
144
98
133
105
96
95
184
83
90
145
168
194
170
95
93
115
124
159
78
143
91
119
140
101
67
146
113
89
102
144
143
74
108
103
102
177
97
145
165
151
127
95
158
76
141
98
126
106
105
161
142
110
121
100
137
148
74
115
153
116
108
111
147
119
117
103
106
95
103
103
160
147
125
131
54
140
115
84
54
82
227
133
119
102
110
103
83
110
108
125
129
165
76
144
131
97
113
116
81
93
97
108
130
83
93
146
54
90
112
130
138
101
142
49
148
114
139
83
112
125
54
94
123
120
144
54
140
133
126
148
127
117
124
97
96
83
115
68
147
94
148
96
102
90
119
169
172
102
90
145
108
151
93
172
74
125
136
115
134
158
112
102
81
156
100
112
82
102
143
54
134
104
72
199
98
125
54
129
111
162
95
54
112
135
95
128
172
77
78
81
95
88
134
59
82
121
118
123
145
59
98
146
76
162
98
148
125
90
54
114
93
105
115
176
90
98
130
76
74
100
108
126
140
108
142
161
108
122
113
117
151
101
68
141
74
141
68
82
96
127
103
77
182
129
78
117
54
106
102
134
86
186
119
79
125
93
97
147
149
111
98
124
122
144
93
74
54
95
161
96
59
72
73
67
76
98
67
129
103
129
103
98
111
102
127
191
61
108
146
173
154
115
59
54
168
134
109
49
153
158
148
124
149
91
96
120
132
133
106
95
90
124
138
177
112
129
121
95
106
123
145
107
59
108
126
102
123
144
109
81
124
140
137
138
116
59
54
106
104
102
120
102
114
137
100
96
95
54
112
100
105
133
126
87
86
106
104
117
91
100
54
132
108
186
135
95
102
102
161
95
144
151
98
97
85
173
119
59
102
154
101
96
98
107
145
94
108
70
171
100
81
134
82
77
111
87
100
113
128
86
108
102
125
102
143
79
82
123
103
108
90
116
133
105
113
141
141
81
94
164
95
84
177
140
131
128
145
91
172
123
70
154
166
106
149
107
94
119
138
92
135
93
126
127
129
82
95
186
81
116
103
89
113
133
59
135
85
90
111
106
103
98
96
98
116
102
160
110
90
104
127
85
114
54
142
103
110
148
113
165
144
132
125
54
54
148
108
158
147
121
156
125
126
98
111
127
149
162
118
84
129
177
81
117
115
108
108
103
120
110
147
105
134
98
125
130
106
100
138
95
59
106
89
113
116
139
122
81
148
121
117
67
137
81
124
69
133
108
152
135
110
93
123
105
138
105
125
131
98
137
98
108
85
112
115
98
113
133
90
114
108
95
123
119
49
106
104
117
100
138
101
82
113
144
95
170
90
138
156
163
186
108
77
134
130
150
146
96
101
82
100
49
103
118
97
87
98
170
138
105
128
163
193
87
123
125
107
120
145
105
114
107
90
145
116
108
167
82
88
125
108
92
90
124
99
113
107
87
139
135
120
117
96
113
126
84
191
74
133
175
134
90
157
54
73
101
143
72
125
171
105
95
119
59
108
87
139
103
163
54
135
123
123
135
98
54
135
105
108
113
151
120
99
128
161
140
93
105
122
86
131
61
108
130
116
111
125
177
133
99
106
49
135
108
89
123
108
146
128
123
93
97
81
135
118
136
81
123
119
172
118
106
90
116
126
98
98
86
98
95
95
105
105
98
82
107
112
121
141
105
78
119
103
54
120
91
146
123
102
74
98
59
120
154
129
118
98
134
129
85
101
125
126
100
168
81
114
81
227
59
149
122
132
82
109
77
142
49
106
92
131
110
97
106
90
158
116
77
95
96
81
118
135
54
120
163
147
131
115
128
133
165
112
126
111
80
88
144
113
87
148
107
98
169
133
112
102
112
120
69
125
138
132
128
80
108
113
104
112
148
59
129
113
143
125
128
102
115
100
138
105
99
118
149
148
163
69
127
127
101
82
76
135
144
120
89
116
82
124
125
129
119
141
123
68
85
54
88
145
77
134
120
133
54
83
129
54
131
101
147
114
95
140
98
54
88
105
144
98
108
94
80
76
105
98
77
105
132
102
95
142
135
94
81
103
120
103
79
127
108
97
115
108
87
120
90
161
135
179
143
118
105
54
130
106
135
133
101
114
125
135
93
93
118
103
102
59
102
138
97
143
99
138
76
108
83
103
140
117
95
128
115
147
141
93
73
62
100
189
103
104
112
93
154
130
95
106
91
94
75
121
104
155
90
54
110
74
180
127
114
103
137
86
87
78
101
116
168
84
105
167
113
59
121
85
103
106
103
140
136
105
91
54
116
80
54
54
97
68
83
67
106
49
59
74
109
112
115
87
108
85
135
142
98
151
147
96
95
99
150
129
179
68
133
65
186
91
93
83
148
85
112
124
125
79
98
80
149
115
82
110
102
118
82
161
91
153
130
128
107
131
118
148
83
113
77
92
85
91
128
78
118
96
141
131
161
121
125
129
145
177
93
94
145
71
168
139
100
98
158
135
102
97
134
89
125
159
116
96
108
111
97
122
122
192
134
113
105
158
80
108
112
69
59
86
93
102
125
133
135
106
123
146
115
150
110
129
83
49
106
143
119
115
103
110
123
115
102
105
129
131
107
132
104
123
107
126
134
133
136
86
146
84
126
96
115
113
95
103
126
125
140
95
102
126
54
100
85
175
134
143
127
103
140
87
54
146
112
133
95
49
102
74
108
61
107
99
130
54
112
95
122
54
113
132
98
98
108
144
103
139
95
120
191
101
143
158
100
125
74
126
123
90
85
98
90
80
105
147
61
130
87
130
151
54
103
151
148
145
98
113
123
102
143
104
113
103
100
100
95
121
104
133
108
54
123
190
59
146
146
133
57
132
98
138
98
124
109
129
54
120
146
167
158
100
113
129
140
74
76
130
85
132
97
81
102
110
125
102
57
128
116
161
136
95
83
122
128
177
100
129
100
156
103
124
83
88
121
160
152
148
68
173
144
149
85
118
134
146
96
98
78
102
149
81
138
161
95
130
101
98
136
85
99
54
102
131
112
98
145
122
102
193
170
99
148
59
148
94
87
112
152
120
93
118
112
54
125
109
54
121
108
77
98
91
91
114
119
143
144
76
129
124
104
112
107
54
84
59
108
120
93
125
150
111
111
120
148
149
179
98
129
126
103
120
74
155
156
129
102
137
97
159
137
148
106
85
132
54
131
135
102
158
122
93
95
152
107
102
102
113
134
90
108
108
70
105
103
94
155
105
113
95
108
106
137
74
119
97
108
116
107
98
161
125
131
95
117
131
114
95
155
100
98
180
54
98
108
114
114
104
114
98
123
148
117
133
113
145
109
127
126
113
136
147
145
139
95
145
80
128
134
108
138
107
177
114
68
129
146
122
190
120
82
145
118
150
74
145
131
145
98
102
104
97
119
92
81
108
93
95
146
113
49
158
83
145
108
138
93
162
93
128
108
114
129
54
161
102
161
110
160
81
146
106
119
112
157
169
82
107
122
108
138
146
125
133
96
93
138
177
86
131
158
145
128
140
116
67
170
158
133
67
117
95
129
77
113
119
96
83
122
106
84
115
123
76
106
88
89
144
54
97
98
162
125
77
95
135
134
173
84
110
118
54
125
67
95
54
108
59
118
77
158
59
193
108
83
143
122
90
127
161
120
153
143
131
117
87
127
97
109
144
123
136
77
152
139
49
113
76
111
119
107
109
54
108
122
133
95
135
85
139
111
198
54
110
120
114
105
172
93
113
133
76
125
105
151
138
95
118
85
129
93
87
115
93
91
100
179
122
131
133
127
150
54
118
67
108
82
158
103
98
110
120
103
140
123
102
103
122
119
137
132
119
157
90
124
105
91
67
67
148
61
125
105
126
117
132
129
113
142
150
108
96
54
148
131
54
103
77
128
101
115
115
124
148
99
109
102
122
113
138
124
125
105
125
103
74
119
49
81
85
151
138
119
157
95
87
120
72
135
102
148
153
125
76
104
147
144
108
103
122
113
141
101
111
103
127
95
81
108
49
156
123
122
90
76
115
82
158
149
97
93
155
146
126
126
59
124
103
125
141
165
115
112
134
120
152
92
105
107
120
82
120
91
141
118
102
131
125
76
128
143
115
160
88
120
74
125
178
91
140
81
99
112
178
90
106
92
148
123
81
149
139
137
110
123
95
108
101
96
118
152
122
110
142
133
139
140
128
114
73
138
132
147
116
102
128
132
138
49
148
83
156
120
134
106
115
103
49
95
178
121
81
67
135
139
133
116
112
147
108
107
132
81
90
129
81
139
96
109
102
137
149
133
128
59
106
157
120
122
62
109
119
124
148
91
106
98
87
115
190
109
96
107
158
140
97
154
125
92
127
114
105
82
109
54
49
156
108
133
80
115
155
144
88
156
103
177
114
154
49
104
104
110
134
113
122
162
93
141
87
90
87
129
93
102
140
144
113
87
122
101
123
95
138
148
152
109
93
150
108
146
67
98
99
92
103
124
117
98
128
128
82
105
161
103
180
148
118
139
135
114
134
137
72
54
93
152
79
127
92
81
133
122
114
83
159
81
119
100
98
114
128
102
81
125
68
98
108
123
169
110
144
112
54
131
96
108
154
135
103
112
78
128
105
103
81
68
105
133
113
112
148
139
138
144
144
130
133
92
98
159
109
135
138
81
85
120
81
96
112
114
74
102
122
87
117
89
112
91
120
102
94
115
125
79
118
113
74
103
82
147
127
138
98
144
95
81
112
85
108
131
105
131
144
133
125
100
158
141
118
144
158
102
160
132
115
116
138
95
103
123
127
110
142
113
167
141
151
133
105
138
117
98
127
126
94
132
160
121
84
178
103
91
135
108
102
113
84
158
145
90
100
110
146
111
128
129
134
128
129
93
144
115
105
85
98
54
102
81
128
67
120
187
87
134
180
110
103
100
120
114
98
123
108
107
148
147
110
88
173
59
158
127
142
93
89
103
108
124
91
138
158
131
103
124
141
169
54
81
107
134
129
133
101
112
118
108
54
67
98
152
146
114
140
125
87
124
127
103
138
137
135
85
94
89
49
139
108
81
54
84
126
135
120
128
105
109
85
104
153
93
147
168
93
101
49
130
94
121
110
156
95
108
69
128
127
148
151
129
129
122
95
105
163
96
80
54
67
106
87
112
143
158
76
120
160
117
125
140
105
143
103
97
131
102
115
95
144
97
127
79
82
129
123
110
94
148
147
138
138
148
143
105
111
134
108
147
114
145
143
121
134
98
77
128
97
109
117
111
165
108
121
97
125
71
141
98
98
151
112
90
117
140
81
80
133
156
107
106
128
150
138
107
96
111
90
106
109
103
98
125
180
158
197
160
69
102
102
148
110
149
147
59
135
172
118
122
107
124
102
113
106
158
128
102
109
54
99
96
138
102
74
67
103
81
102
105
108
148
107
148
129
77
143
95
120
91
103
83
143
93
93
108
161
75
82
121
130
103
160
54
135
128
168
167
108
96
102
109
90
114
121
105
54
102
123
126
103
149
150
153
126
108
82
110
117
127
87
76
90
137
113
149
100
129
141
100
90
102
147
113
139
130
82
93
136
175
133
136
137
90
108
106
115
112
137
67
164
115
110
74
133
126
102
138
119
120
92
90
175
97
135
140
124
77
81
92
139
59
82
119
106
104
93
145
118
99
148
79
140
125
133
49
94
159
177
95
96
105
112
72
108
139
120
98
121
134
158
110
67
54
124
125
95
109
129
85
95
81
82
78
112
62
153
113
137
98
67
99
144
104
125
120
98
157
102
113
59
117
119
125
120
109
168
157
127
127
131
156
104
81
96
144
133
78
172
93
98
78
147
131
83
98
96
106
127
54
59
146
168
90
126
139
108
133
95
124
136
95
111
102
173
102
121
128
127
133
125
54
132
87
93
54
131
88
54
126
122
78
120
101
87
178
94
120
136
107
158
129
104
142
114
119
85
131
123
141
68
112
54
103
133
129
159
81
59
105
159
159
102
108
110
80
115
54
145
128
90
134
102
141
125
117
85
145
67
142
112
104
108
93
127
148
101
112
105
145
141
98
142
91
127
135
118
78
155
132
117
133
84
114
118
108
148
127
108
95
78
49
76
74
140
95
140
125
102
135
54
155
148
67
105
170
140
129
76
116
81
162
108
98
144
106
98
100
141
127
86
146
111
93
68
154
136
158
125
102
108
137
106
101
124
134
134
85
91
77
67
82
102
133
133
150
102
109
113
112
119
83
124
166
177
108
171
84
123
112
106
99
125
110
157
183
135
120
123
98
125
131
111
95
92
118
81
98
125
117
54
112
95
102
103
54
123
108
106
49
126
122
98
83
54
73
87
125
127
78
95
145
154
95
102
148
118
172
59
90
124
101
166
145
81
91
151
106
143
125
95
102
147
234
130
93
126
111
120
74
107
77
74
139
90
81
114
104
54
158
87
68
95
147
111
113
116
135
132
125
83
135
90
148
113
135
135
131
59
83
135
132
102
112
81
108
95
95
54
179
78
151
169
49
136
67
114
128
150
115
119
131
122
73
76
149
90
118
68
130
91
91
179
82
119
54
144
157
104
116
124
129
153
83
121
81
92
125
122
74
131
112
99
90
202
108
120
120
142
135
107
163
98
107
83
138
108
74
177
137
81
143
114
142
83
113
118
93
156
165
116
129
91
91
119
81
134
199
133
141
200
141
158
158
89
102
142
85
140
107
95
128
138
93
170
173
148
163
59
132
103
98
106
122
78
112
149
140
135
106
127
79
98
93
158
59
87
96
89
92
54
61
106
143
125
108
99
59
147
135
109
54
93
78
125
108
180
54
149
103
131
145
125
122
148
106
104
110
100
168
155
102
128
99
82
133
98
180
102
163
157
134
61
81
140
81
118
118
122
145
83
108
49
143
49
81
105
137
81
106
129
104
103
74
77
84
147
139
73
81
127
110
67
81
113
120
81
97
140
108
59
122
117
90
94
151
102
123
133
113
103
108
159
152
91
133
139
112
102
104
120
102
117
108
161
122
136
115
98
113
74
103
134
80
131
118
83
79
180
133
139
128
87
91
102
101
141
158
144
112
131
186
54
74
116
96
80
115
108
154
115
153
85
125
54
109
86
102
129
119
112
180
151
108
140
113
108
150
133
156
126
54
116
131
111
109
102
176
139
81
82
74
112
184
122
143
76
146
103
93
135
86
118
125
110
93
149
102
57
111
129
120
84
147
81
145
74
161
112
115
102
104
93
133
49
102
143
149
82
59
49
148
142
118
81
110
117
91
81
95
171
94
131
96
112
169
112
137
106
102
98
102
87
87
118
113
144
124
119
122
101
128
170
105
170
76
129
81
101
200
99
111
161
121
142
140
97
103
128
125
124
171
158
87
104
175
114
96
133
105
102
95
49
139
128
149
97
162
95
91
193
131
110
96
95
198
67
125
129
125
85
83
114
91
96
108
109
118
150
49
158
148
94
98
150
104
200
54
177
139
151
108
161
132
134
117
128
103
90
65
129
122
133
157
125
82
122
108
110
98
135
70
114
99
112
122
154
209
91
96
129
103
146
162
102
132
134
59
82
161
74
105
106
73
49
128
110
76
106
54
96
87
108
90
120
148
122
154
107
108
98
125
54
84
146
132
125
186
133
162
118
97
125
106
116
81
193
110
99
82
83
143
116
128
125
139
102
141
116
103
154
108
83
83
133
111
102
165
118
150
103
121
132
98
138
84
125
106
102
170
116
160
94
88
108
120
74
112
107
134
111
81
73
126
93
78
95
128
128
82
115
101
103
124
110
88
135
160
92
121
133
146
138
91
123
125
98
105
127
128
108
119
81
78
116
102
78
163
140
114
76
87
118
67
97
83
128
112
119
59
134
180
141
78
109
74
85
134
68
102
143
81
98
81
81
131
128
134
100
61
98
98
74
108
140
81
105
126
54
105
49
125
82
108
49
124
125
142
103
109
84
107
105
98
77
96
133
49
108
140
154
131
135
76
82
103
77
96
95
82
108
108
167
110
81
92
119
114
91
108
81
105
171
125
75
116
103
84
129
147
107
111
125
103
143
84
89
131
107
113
77
137
152
111
147
95
106
132
110
151
54
81
61
143
150
107
102
135
100
77
78
96
156
105
102
140
106
93
131
93
177
54
109
67
81
98
109
115
104
102
81
118
88
91
88
122
139
106
103
99
81
123
89
97
95
131
130
96
104
123
110
115
54
78
99
98
87
117
122
134
90
100
114
77
108
109
152
118
116
128
54
115
93
80
115
143
138
153
90
94
158
76
177
130
168
154
108
89
185
121
123
159
102
106
141
145
95
59
77
108
120
102
67
127
154
117
153
113
158
125
157
73
61
129
59
148
161
115
74
182
109
157
126
107
175
101
85
85
105
104
136
131
90
74
98
126
127
133
143
90
140
95
59
123
107
139
102
100
59
78
148
69
90
148
69
134
76
106
126
129
89
146
124
90
95
116
99
129
95
158
143
137
102
102
126
138
95
105
147
108
122
111
98
96
126
115
125
120
108
127
146
134
159
113
78
105
190
108
140
149
143
70
163
112
97
106
96
65
98
102
59
54
54
94
124
82
164
118
108
102
126
176
112
125
135
80
122
117
86
77
74
125
93
141
129
123
133
112
135
154
98
140
107
131
134
106
95
90
108
113
129
111
110
135
59
166
96
122
102
141
122
111
217
118
102
59
140
119
102
118
57
91
69
87
151
102
140
77
125
143
131
143
146
95
108
125
153
110
160
108
151
167
59
57
151
49
137
99
95
74
155
91
163
95
68
100
160
144
128
139
125
133
85
145
107
159
141
104
134
115
122
90
122
112
109
121
82
98
100
95
144
154
95
79
110
119
150
125
95
90
168
108
103
112
112
96
92
121
96
128
204
95
49
85
102
143
148
143
121
143
87
172
111
120
183
130
83
98
123
109
103
123
117
118
121
71
111
102
66
132
61
67
98
119
77
103
135
104
168
125
118
54
117
173
107
82
162
78
122
133
70
146
157
107
109
78
99
193
102
105
59
220
148
59
67
150
54
108
59
117
95
111
173
81
117
81
107
82
153
125
108
114
119
87
127
129
105
156
97
141
123
112
133
159
128
86
93
145
128
106
87
128
76
111
74
124
95
102
102
129
98
102
117
149
177
118
119
125
147
106
118
103
139
79
132
116
99
54
166
105
109
141
118
123
153
127
106
69
77
112
76
86
59
96
113
167
149
49
101
150
74
81
108
109
113
106
77
90
49
109
96
98
147
91
54
149
113
132
95
76
134
145
59
153
133
102
49
102
146
95
54
111
122
87
109
101
79
111
146
98
116
91
91
137
140
95
84
107
150
96
156
106
102
168
102
111
107
148
145
165
125
130
81
114
108
107
106
68
102
102
102
59
125
93
111
92
103
115
110
62
123
148
81
90
117
153
112
113
117
133
147
128
171
103
105
134
116
126
54
98
126
158
133
131
142
63
161
113
156
150
93
131
101
110
147
116
108
141
140
54
98
145
59
101
93
114
105
178
103
138
159
54
54
106
76
148
150
144
54
148
106
123
161
133
49
120
100
119
146
124
96
122
139
91
158
54
54
116
167
67
112
54
101
99
81
100
122
157
131
143
114
95
108
113
102
115
116
54
100
76
159
49
114
102
144
139
59
98
95
83
54
96
139
111
191
74
149
126
102
77
99
103
95
144
77
125
113
138
157
132
153
105
140
150
128
82
94
134
132
131
81
163
147
96
115
97
87
105
127
67
96
114
54
68
108
173
227
116
87
98
140
125
125
108
77
140
90
84
107
125
82
95
106
174
99
74
88
77
108
120
78
124
126
74
91
123
146
81
132
156
98
131
122
131
74
124
177
110
148
125
109
147
130
128
141
141
127
163
77
57
127
112
97
100
135
123
121
103
112
163
143
140
135
54
121
106
148
100
87
102
87
134
102
87
105
137
142
131
103
133
113
167
133
94
84
93
129
148
107
105
110
103
74
150
105
95
101
92
112
120
112
95
122
116
110
138
74
91
74
54
133
111
112
96
80
133
95
128
87
131
98
83
76
109
102
81
186
49
119
111
103
148
102
149
140
115
118
191
113
135
161
146
107
124
119
61
93
74
69
112
108
95
163
92
97
118
125
102
132
121
141
96
123
160
126
108
145
143
152
96
162
90
127
61
104
178
100
128
97
120
176
90
77
77
115
168
83
130
93
135
54
123
95
108
177
133
87
125
143
118
134
124
102
54
102
154
134
143
102
82
102
122
145
149
113
113
108
126
101
172
81
92
84
98
143
67
103
146
96
91
59
99
134
106
150
113
106
129
116
92
125
168
107
126
133
132
173
98
91
120
114
146
135
137
171
154
104
187
168
139
144
92
96
133
103
144
54
147
125
128
145
67
90
153
108
139
108
77
135
179
111
128
115
111
90
122
59
156
77
131
77
130
122
61
105
140
141
103
112
95
98
149
84
162
146
131
111
140
103
164
109
76
140
108
102
97
142
138
122
129
160
80
91
159
93
158
54
189
54
131
155
125
144
105
86
54
49
120
112
91
142
102
133
137
131
108
133
105
123
128
81
132
118
144
158
133
113
134
88
81
127
103
90
127
81
128
139
85
100
103
114
113
105
96
135
113
128
123
100
95
137
114
49
104
131
119
81
114
81
122
179
153
148
93
102
72
146
54
102
100
130
156
144
69
95
160
94
79
127
54
120
108
140
108
71
117
139
115
95
59
49
101
133
155
145
110
121
105
91
153
124
182
131
124
125
115
107
110
89
87
128
112
90
145
109
87
132
121
177
106
135
97
98
144
170
108
148
95
128
95
133
133
100
102
143
177
105
151
87
139
68
141
90
135
81
114
78
124
87
172
113
135
157
98
129
113
74
139
149
190
143
122
95
144
109
165
103
106
106
89
147
112
89
114
85
165
94
154
104
88
156
148
100
123
146
54
97
78
107
144
160
132
165
140
145
155
123
103
115
96
148
105
91
93
111
59
132
128
129
148
132
144
165
132
67
97
194
174
134
138
121
124
74
122
114
102
142
140
88
144
174
117
81
131
54
128
95
102
73
76
139
102
131
106
54
89
129
85
83
93
141
138
123
147
141
104
146
125
71
158
165
130
143
141
126
131
67
115
141
113
49
148
104
82
135
134
154
128
128
133
199
94
49
113
108
80
147
131
169
115
83
103
116
143
108
136
158
89
152
104
61
165
99
124
72
74
98
74
177
87
147
105
137
113
132
137
166
83
138
120
98
81
105
94
109
162
68
133
103
124
170
87
101
146
118
124
67
118
145
123
87
102
117
127
151
102
120
54
118
160
82
102
78
135
116
140
164
71
133
103
135
180
149
106
175
83
130
123
114
112
102
113
118
168
87
82
168
121
82
147
146
155
107
155
112
108
59
129
119
109
88
81
108
143
123
103
108
151
112
95
142
206
113
141
94
130
122
157
98
148
45
122
107
110
87
122
120
76
133
54
74
54
122
104
155
124
128
125
98
131
118
130
121
89
115
144
113
121
130
105
124
125
144
128
124
95
112
102
105
123
78
78
165
92
191
106
83
143
116
108
81
95
79
75
127
126
93
139
98
114
144
143
120
102
160
130
97
116
54
112
162
139
164
129
87
77
149
146
151
110
95
54
135
86
98
200
75
106
107
93
74
114
108
134
139
80
123
155
76
108
127
157
77
134
155
115
191
125
141
82
144
130
54
113
105
90
91
59
103
176
105
144
120
122
107
108
107
180
59
83
105
168
162
117
74
127
49
96
90
164
159
141
111
108
87
125
122
123
93
125
146
98
110
108
128
168
96
160
116
120
117
54
108
177
144
143
108
139
77
125
76
105
131
114
118
59
128
110
114
135
172
86
76
105
107
154
79
113
142
121
177
127
113
125
164
165
74
173
96
117
123
189
194
82
54
49
123
135
59
144
81
89
122
49
81
142
99
104
83
143
126
117
133
140
97
68
81
104
95
87
54
116
113
122
129
69
93
98
68
115
113
130
150
130
54
133
78
97
133
137
98
102
156
83
108
95
129
111
74
95
113
151
85
147
54
134
99
103
119
77
49
98
163
98
143
91
155
82
130
103
105
108
113
78
108
125
146
118
108
125
129
141
88
128
129
135
140
100
83
218
128
139
142
125
98
157
93
100
123
97
132
154
87
139
133
130
67
54
49
98
98
129
54
135
74
119
159
132
74
120
93
109
81
131
69
187
182
62
104
112
102
107
140
145
135
103
87
111
108
95
105
83
144
134
148
155
74
132
125
93
100
100
116
105
95
97
147
54
118
125
106
108
138
170
102
103
81
92
112
74
146
89
146
140
140
96
97
54
93
118
102
140
93
95
136
138
102
82
102
102
137
96
116
107
146
135
106
74
115
78
95
112
121
107
118
91
136
107
96
106
133
113
74
106
158
76
141
106
114
99
54
127
133
74
96
108
142
81
112
109
54
157
76
113
227
177
90
148
90
113
54
111
111
108
138
108
164
115
113
145
95
83
108
124
140
81
146
104
85
125
155
78
169
150
54
90
108
148
103
102
140
162
122
170
194
128
110
68
131
117
102
148
107
107
105
149
54
97
136
123
127
93
77
86
97
149
106
121
95
178
96
95
85
98
104
101
126
87
102
135
99
91
98
144
95
164
120
117
108
114
54
76
76
155
105
116
100
93
108
122
136
78
96
133
76
166
54
127
90
112
108
189
134
103
145
128
87
82
137
74
132
98
105
130
96
125
118
99
118
102
123
130
158
168
191
95
129
112
121
122
100
125
123
82
115
93
138
108
104
83
96
86
87
213
108
107
105
76
98
93
99
106
109
118
148
148
143
93
108
128
102
158
97
83
54
120
165
70
87
120
95
120
98
83
87
113
113
143
118
61
105
98
137
103
107
96
61
80
140
144
127
49
98
148
149
99
119
134
112
139
185
143
120
122
186
131
132
113
121
130
138
128
124
130
100
108
161
106
108
116
92
101
143
59
109
74
126
54
102
98
108
93
82
108
119
108
108
93
112
87
121
170
160
146
132
54
77
93
115
61
177
45
76
87
87
124
95
163
160
77
107
127
103
125
67
78
106
102
135
125
134
123
134
78
150
167
133
139
115
108
177
123
158
135
88
102
123
84
104
145
158
95
144
133
122
161
127
81
162
103
54
128
128
82
107
183
108
120
131
89
106
185
128
106
99
163
149
138
121
113
125
77
179
59
137
128
116
106
87
90
99
199
69
104
108
78
132
86
93
91
76
96
130
81
87
172
78
121
120
75
74
168
105
113
95
94
77
122
149
101
113
100
161
113
137
110
116
103
102
137
98
137
105
108
111
116
125
140
114
108
104
143
186
110
120
77
154
81
95
163
98
108
121
97
102
79
105
105
120
123
113
97
131
104
155
120
130
148
123
87
138
76
148
94
156
143
95
114
162
90
105
106
127
148
67
156
114
148
158
117
115
133
165
87
142
111
159
111
121
130
103
115
103
138
124
99
115
132
97
112
149
138
132
125
92
180
105
92
194
112
144
143
67
62
108
133
122
98
132
108
95
149
78
102
148
127
140
138
126
97
112
179
121
123
102
82
123
54
96
95
161
100
143
107
82
80
87
128
111
118
77
97
49
96
108
65
121
98
90
80
85
109
162
95
177
92
133
102
106
128
103
121
103
117
97
129
140
119
142
128
132
54
101
90
95
122
68
196
74
98
119
177
96
102
157
129
103
107
118
168
108
103
97
95
88
93
92
104
122
83
127
95
141
182
114
105
108
105
148
124
95
95
95
101
169
104
100
54
67
82
119
153
83
140
127
95
85
98
92
90
99
117
147
87
119
134
120
155
113
95
84
96
193
128
105
118
128
134
155
54
164
49
133
144
133
132
81
90
151
103
81
141
148
139
89
141
132
141
81
98
107
115
99
160
93
109
74
95
100
112
114
109
95
108
105
95
112
100
83
96
95
92
113
133
98
91
160
87
81
83
165
110
90
125
162
121
128
125
129
97
100
116
104
92
121
126
113
128
123
90
98
123
84
96
130
101
132
150
177
109
78
105
110
103
125
93
87
140
135
106
160
83
96
80
143
108
106
123
176
90
85
79
131
126
148
97
104
83
95
113
151
113
86
108
139
88
95
67
79
77
54
124
54
149
138
81
123
129
125
145
98
100
108
107
86
138
88
146
113
96
158
135
96
117
95
98
90
165
73
99
90
123
139
78
106
97
150
82
140
193
113
143
118
88
89
129
109
90
148
108
142
96
125
150
110
133
102
166
83
144
87
122
81
96
98
108
118
116
54
79
126
117
141
102
104
120
126
173
108
49
80
109
73
145
112
82
61
54
113
127
98
108
78
73
90
129
84
111
108
124
125
192
90
111
122
127
128
102
127
148
118
161
49
97
144
49
108
133
89
157
98
106
102
146
156
159
132
184
121
49
61
105
125
99
139
157
154
74
109
90
98
158
93
113
87
105
124
54
144
145
103
135
123
128
135
95
105
163
164
136
140
59
94
135
81
108
169
98
130
135
105
99
140
95
108
92
103
61
186
100
150
131
96
95
113
135
131
107
49
108
116
123
116
98
69
130
173
82
83
138
54
91
148
101
91
157
54
146
124
107
106
102
121
135
122
213
87
95
125
127
134
92
102
108
81
173
144
113
98
95
104
134
87
135
95
149
106
94
77
95
118
104
168
127
117
135
158
115
128
173
107
107
125
151
151
97
100
133
101
175
74
162
106
81
112
98
150
59
115
133
110
100
127
150
125
95
102
145
73
95
98
131
95
127
136
94
121
95
54
125
121
96
103
76
124
151
84
104
95
54
112
100
88
54
59
139
54
166
161
106
93
49
95
98
118
123
91
120
82
102
133
181
130
100
105
146
61
140
73
85
125
125
113
136
83
49
77
103
112
49
95
130
112
94
102
115
134
74
101
61
93
153
91
126
187
130
88
91
105
163
157
115
168
96
148
89
108
144
131
123
98
81
83
95
149
121
114
90
129
96
135
118
119
108
102
158
85
104
144
129
54
108
67
93
143
125
115
116
102
130
91
77
175
93
54
118
132
131
67
108
92
113
78
142
176
131
143
98
127
163
117
107
75
122
54
120
84
91
99
145
86
109
133
116
125
123
107
74
78
79
92
112
85
140
144
96
173
90
137
111
173
102
114
150
81
90
146
100
135
102
147
81
101
127
119
125
115
81
95
116
92
100
54
106
92
76
140
151
110
69
103
54
161
125
107
130
113
125
113
122
68
100
113
120
129
120
108
135
78
78
109
82
124
125
156
81
108
98
101
67
93
83
107
98
102
129
130
147
124
115
105
135
54
132
96
153
135
135
69
115
93
106
150
108
105
102
144
111
138
98
67
108
82
82
154
79
105
180
148
119
101
59
107
160
54
118
82
91
104
163
59
120
132
131
107
118
143
120
99
109
85
69
74
102
106
122
149
123
76
114
127
54
133
82
96
118
140
140
144
99
177
109
95
151
133
138
112
107
82
120
106
98
94
158
106
123
111
54
175
103
105
158
116
86
141
102
128
140
76
113
59
129
96
149
98
59
91
128
80
124
138
172
180
134
140
95
138
59
102
139
145
110
81
103
106
67
93
141
76
54
59
126
77
168
118
148
81
102
112
99
98
105
148
54
103
96
125
54
134
54
141
96
96
140
102
180
123
113
82
78
102
98
90
126
77
162
81
149
107
135
102
98
117
180
177
113
135
122
98
154
100
54
91
136
67
81
108
181
138
179
114
86
83
102
80
109
104
149
94
61
54
90
147
116
74
107
123
138
116
95
115
96
102
108
116
73
121
135
110
108
84
183
143
123
125
135
87
145
97
150
153
115
54
143
128
132
115
106
129
113
120
135
95
160
103
128
57
83
102
155
115
110
95
148
125
87
96
110
180
59
91
95
102
105
82
153
124
49
76
137
112
107
125
95
144
98
114
127
128
103
140
76
118
114
114
67
105
133
104
106
152
77
145
150
100
101
124
74
77
135
100
143
112
78
126
102
190
97
194
140
87
97
157
108
78
120
177
87
78
161
152
98
148
151
132
128
137
142
59
141
129
113
139
96
123
152
148
148
125
97
146
100
105
106
87
59
96
108
54
145
95
95
160
96
127
145
123
78
112
78
132
131
123
145
105
142
136
112
153
178
146
94
161
102
117
67
104
113
124
142
113
165
94
141
89
143
118
127
54
90
107
98
93
180
129
95
101
100
133
102
95
111
106
82
128
93
49
80
131
93
118
143
113
110
128
144
84
98
100
135
107
125
102
54
177
138
129
125
95
59
49
106
74
81
102
61
75
153
92
89
108
150
97
76
59
98
145
122
102
89
96
157
79
83
103
74
98
132
83
139
138
123
155
98
170
130
81
74
138
140
81
177
146
200
77
160
150
116
149
128
139
74
81
130
143
95
101
97
124
115
101
134
96
59
102
113
123
74
118
198
121
120
76
87
133
106
98
95
143
72
134
104
102
130
80
90
125
117
165
98
74
134
133
157
110
139
131
99
109
113
119
144
148
81
90
104
78
96
114
90
54
135
103
85
54
118
102
91
131
133
120
97
76
127
118
98
59
129
140
108
137
107
125
137
104
98
111
54
77
80
98
95
139
118
141
80
144
113
110
125
160
147
118
124
120
99
106
107
118
128
67
128
78
114
143
131
108
104
104
115
116
83
140
130
127
143
105
95
112
87
155
153
102
122
87
115
102
146
110
86
131
132
130
132
102
87
142
134
132
104
54
141
96
121
90
105
100
117
169
97
83
87
159
108
124
108
104
165
74
120
125
85
156
82
81
114
140
109
177
114
90
118
76
128
90
118
108
125
139
81
82
73
142
98
173
117
80
146
121
159
102
61
125
148
141
112
113
116
129
74
81
98
139
115
104
76
73
98
118
85
98
97
148
96
59
120
140
139
80
88
101
49
116
108
111
49
115
112
131
95
131
77
164
76
74
98
95
113
121
80
127
154
149
119
122
152
144
93
144
102
121
133
173
119
126
49
139
96
117
85
124
138
78
84
159
119
133
145
157
82
161
159
118
167
108
132
152
147
83
117
138
106
112
100
157
82
146
54
120
98
139
90
140
133
84
77
125
74
161
186
115
127
101
116
116
133
91
85
129
164
119
115
136
141
101
82
130
148
125
85
132
155
95
159
154
76
112
76
101
105
149
110
103
123
86
102
103
87
82
160
116
95
110
119
120
67
129
153
135
129
147
163
78
147
151
129
90
152
93
90
96
148
114
106
103
145
133
59
128
101
90
95
185
105
105
119
49
128
79
131
81
113
115
117
103
133
133
128
98
102
160
137
90
150
142
108
78
115
115
108
104
125
177
134
67
121
129
114
98
143
137
148
133
133
107
127
121
144
77
87
127
129
109
135
81
127
119
124
80
150
120
54
160
132
59
120
78
54
121
70
121
119
90
113
187
138
180
125
146
125
113
127
128
54
133
107
74
177
135
111
95
98
129
115
156
95
134
102
107
61
61
121
125
108
110
159
135
95
80
89
104
108
142
112
98
191
96
95
121
107
130
150
144
152
108
134
131
129
123
121
95
74
118
111
118
80
98
87
143
93
123
94
106
96
129
142
125
135
108
177
61
167
85
172
98
146
82
87
135
80
102
95
109
89
95
95
138
131
142
149
156
107
108
102
82
80
177
94
108
90
128
114
138
161
200
94
83
105
143
124
79
128
110
124
87
184
91
89
157
103
156
77
103
129
102
98
105
76
145
108
127
83
103
81
70
107
135
148
112
147
187
87
90
79
125
138
102
159
122
97
143
74
77
128
128
151
102
113
54
127
87
109
54
106
91
139
148
152
101
114
94
141
102
111
91
113
169
54
114
85
107
96
54
142
120
115
143
97
133
118
163
109
137
112
144
71
92
159
107
123
102
122
204
117
159
59
133
146
124
136
124
95
85
108
54
128
123
178
143
105
105
103
146
93
110
175
96
80
124
107
177
95
80
90
124
102
140
106
89
164
129
133
49
67
54
87
96
113
152
108
92
143
88
154
85
146
108
127
122
88
108
97
124
146
143
138
97
129
54
165
78
82
133
111
65
83
108
113
100
91
110
96
171
74
113
125
98
108
108
102
101
142
113
119
111
110
77
59
98
74
99
102
144
103
131
145
153
125
49
139
104
100
59
96
116
87
102
91
131
91
85
153
141
77
124
129
54
125
127
77
76
143
54
93
98
49
87
114
69
96
115
69
116
150
105
107
96
137
98
161
119
113
177
82
134
146
81
126
93
118
114
128
86
125
119
145
140
102
81
129
93
159
127
97
54
68
101
111
153
120
177
112
129
174
103
74
133
108
96
98
116
62
108
103
91
117
100
144
87
81
66
123
128
146
67
133
102
151
127
136
96
90
96
96
102
135
90
140
126
102
163
118
54
117
125
87
166
133
108
108
102
129
96
95
113
129
158
162
147
96
99
145
108
99
77
67
129
98
98
92
146
78
109
54
144
109
93
109
120
131
137
137
121
74
49
78
59
82
128
104
108
158
129
49
54
109
128
104
146
81
131
74
122
87
57
171
158
59
160
102
108
168
112
112
90
137
105
121
118
150
103
104
120
105
131
122
73
95
102
136
177
114
108
164
156
127
178
108
128
124
116
145
154
90
148
124
108
81
151
125
125
106
130
76
108
95
83
136
111
141
115
108
54
59
148
158
133
91
105
129
110
144
90
113
142
143
99
118
139
173
102
124
184
184
95
81
112
93
103
146
77
123
114
115
167
155
77
143
108
108
119
112
97
136
105
136
77
134
114
94
191
151
76
141
131
81
113
132
91
131
122
129
54
104
128
127
146
88
118
116
112
110
94
159
121
91
121
131
124
143
54
91
165
108
108
146
90
188
75
109
157
85
145
87
122
113
164
82
113
98
131
90
166
59
119
54
159
121
97
128
54
125
98
154
133
119
103
161
139
69
188
128
122
190
106
133
97
188
94
54
134
132
118
90
76
87
74
129
113
90
133
93
90
129
93
54
74
82
177
88
135
148
128
128
100
112
110
178
107
101
161
112
83
124
162
113
108
99
111
124
87
102
151
106
96
107
108
54
115
118
106
131
153
118
103
113
103
101
135
49
129
79
107
165
65
115
119
108
96
108
120
88
108
150
49
95
113
131
133
151
166
86
137
161
90
156
87
113
165
107
167
113
142
112
155
131
141
143
108
108
163
129
49
91
97
161
119
121
177
151
134
123
161
158
125
96
125
91
87
127
92
83
113
125
93
147
122
123
101
125
83
103
95
99
114
100
106
141
91
90
118
139
114
49
160
61
95
98
142
126
145
146
102
103
96
122
133
87
93
122
102
123
106
178
134
135
124
108
112
107
125
96
125
146
137
148
144
95
96
97
131
123
102
163
81
136
161
133
132
135
139
85
108
125
111
54
119
148
148
95
102
131
89
74
184
136
113
130
54
95
102
54
133
107
104
125
121
74
83
115
89
127
101
100
90
147
133
122
133
118
127
54
118
134
103
103
81
121
150
73
124
113
54
54
129
91
166
133
106
84
115
146
96
160
132
155
80
147
141
129
107
98
135
98
113
130
133
110
123
93
103
151
146
103
115
126
103
84
129
91
144
54
195
156
59
98
68
110
149
120
113
103
135
124
127
96
97
108
114
95
135
91
95
156
106
128
113
94
145
126
148
127
130
143
96
102
142
120
143
54
102
113
102
127
119
128
59
87
134
148
160
54
103
167
126
127
160
95
93
102
126
92
105
82
94
102
115
187
141
126
90
107
120
144
96
93
54
115
170
114
74
102
123
98
123
135
95
112
61
126
146
111
102
163
136
67
113
98
106
87
151
150
135
119
129
109
147
143
93
105
138
173
114
97
183
54
181
123
82
127
72
104
103
96
105
99
111
124
74
139
82
115
118
99
105
101
79
98
126
87
114
128
126
158
165
157
96
95
106
183
82
115
49
133
83
111
78
80
111
142
142
95
144
124
144
120
138
133
54
79
127
102
113
109
126
102
104
98
112
121
133
132
172
122
111
77
133
224
155
113
81
81
143
114
95
134
104
98
111
135
67
113
144
81
97
149
49
78
116
133
112
96
82
113
115
98
87
145
134
77
67
72
99
95
110
102
72
90
142
106
119
133
103
195
123
143
94
117
165
100
95
108
92
105
93
135
124
166
122
100
102
148
153
172
104
137
110
197
126
91
125
99
142
100
114
84
132
111
106
158
126
87
122
148
131
132
116
54
151
54
176
92
131
131
128
90
67
54
142
141
157
127
116
154
127
54
124
120
168
103
54
106
98
139
161
141
120
132
123
135
113
116
94
158
89
111
69
144
121
157
107
148
75
82
140
113
122
151
93
124
123
135
108
172
153
74
103
90
95
113
127
99
120
128
81
107
54
102
125
133
78
63
131
110
117
103
138
102
86
98
115
131
83
146
119
77
102
144
105
79
119
128
95
146
151
103
93
78
126
138
54
154
103
156
128
96
113
129
87
107
163
90
59
137
105
77
123
135
122
128
111
98
105
118
88
125
110
83
105
98
91
74
80
113
101
78
179
95
165
62
126
95
139
160
152
133
87
114
145
97
83
105
67
100
98
68
111
83
80
177
78
133
91
157
112
129
104
79
65
105
89
77
74
110
133
130
83
121
98
124
92
74
128
105
167
119
59
95
82
118
191
92
119
90
113
127
163
101
107
121
96
95
128
93
133
114
107
82
118
74
70
122
106
144
125
77
140
157
105
120
134
140
67
122
105
133
129
113
147
96
90
78
88
112
98
116
54
139
149
154
105
102
140
81
111
105
116
123
91
134
99
76
110
96
90
91
150
109
90
136
78
134
97
114
93
83
78
127
76
132
49
163
117
68
110
107
90
134
83
146
133
61
139
93
128
141
100
54
148
57
145
138
126
157
73
102
124
135
122
113
125
127
98
128
108
107
122
125
162
92
133
137
113
106
96
118
119
107
128
108
148
54
110
137
95
107
100
115
125
84
117
49
102
177
140
143
230
180
138
105
95
88
122
93
54
115
96
108
121
148
123
103
124
94
142
105
102
99
74
158
177
68
109
83
161
101
132
134
147
110
101
204
80
116
177
133
90
125
127
141
123
134
163
98
54
113
156
110
127
165
122
122
108
145
162
143
82
90
116
157
96
171
119
117
122
172
107
165
61
169
131
145
78
85
187
104
98
115
85
102
137
77
103
54
49
119
90
145
122
143
113
77
98
103
132
158
98
107
130
122
125
157
104
148
149
130
103
99
126
101
112
80
123
127
102
81
102
139
159
117
106
147
79
149
90
140
93
148
137
140
106
95
126
119
130
118
54
110
112
133
90
130
139
149
148
163
98
54
83
90
135
143
112
112
140
102
129
54
103
110
135
87
149
98
121
146
98
96
104
122
148
127
147
117
99
115
54
96
54
122
144
172
147
74
107
96
125
128
143
54
95
150
135
91
129
106
106
103
135
138
191
141
145
195
129
59
105
151
126
93
98
156
151
102
131
102
116
69
139
125
103
113
133
121
134
125
131
62
107
161
148
76
159
96
146
125
73
114
132
61
82
130
116
139
83
99
103
87
148
145
95
76
141
105
95
100
54
96
78
96
123
76
82
140
100
145
100
135
128
97
124
95
128
95
133
102
139
95
168
127
168
89
168
134
94
123
137
111
95
105
107
127
142
102
90
96
90
74
54
108
137
120
99
116
98
82
104
158
138
106
109
88
108
111
105
129
143
123
109
96
101
128
90
146
74
87
98
74
54
139
113
116
54
95
82
144
87
115
123
131
152
77
165
95
170
92
77
144
87
82
172
136
98
104
112
135
128
98
113
135
77
54
127
54
133
88
88
112
54
127
99
102
163
101
108
120
128
132
99
135
80
108
122
154
126
133
87
133
108
102
108
54
168
105
98
141
82
120
96
133
141
194
180
54
125
104
81
144
97
133
168
118
95
71
74
102
91
129
61
98
110
129
123
93
87
166
176
97
54
161
115
119
130
136
102
135
138
138
125
95
115
104
108
125
134
159
98
104
133
95
102
104
178
157
110
95
138
150
103
113
98
116
103
77
142
132
144
167
74
102
77
158
135
165
95
101
102
144
106
136
78
135
59
141
140
56
165
118
108
108
103
103
90
98
81
89
89
139
103
54
133
140
195
102
102
128
111
112
81
76
91
124
83
147
110
93
92
129
95
98
139
162
98
113
129
99
93
120
102
129
81
116
102
127
119
110
107
126
142
121
54
133
121
93
147
102
92
107
97
103
137
81
175
139
113
105
106
137
115
127
166
139
122
113
65
85
142
121
79
107
105
152
104
108
148
167
95
113
113
81
93
212
110
128
98
76
79
89
111
126
103
167
85
101
114
123
136
127
111
113
148
102
101
115
161
114
117
127
105
138
103
87
104
158
69
59
61
113
119
132
139
129
111
135
119
92
137
140
122
101
93
89
116
124
183
124
108
83
99
165
108
165
95
95
117
156
158
135
125
102
125
113
89
149
122
116
102
102
117
94
54
87
110
157
107
120
125
182
133
105
105
103
95
54
101
106
98
110
82
101
147
117
159
108
76
54
107
165
131
67
98
128
85
116
120
90
54
192
78
106
90
149
122
165
105
118
88
125
108
95
104
129
147
94
101
81
82
81
111
115
94
112
131
104
150
163
114
136
171
146
125
89
122
94
96
127
150
92
98
122
99
125
104
98
56
155
114
133
49
82
123
59
151
123
127
140
103
104
92
113
96
107
102
224
49
153
145
112
59
239
104
67
80
133
140
125
113
61
134
90
81
118
94
82
102
140
123
90
54
113
94
168
181
131
80
105
89
151
106
67
49
54
150
141
81
81
102
54
101
108
101
94
95
76
87
102
139
125
112
91
131
83
113
123
90
138
128
90
113
140
146
160
158
204
56
77
107
137
115
54
92
74
130
95
133
96
130
90
81
87
107
123
138
153
149
144
87
132
108
120
101
100
74
81
115
75
130
143
113
90
86
138
93
171
163
54
103
126
83
99
139
102
84
98
122
144
125
135
97
103
98
108
95
95
108
98
95
49
120
128
124
95
141
129
104
115
83
105
147
76
61
96
122
120
84
170
77
67
110
190
123
151
124
139
91
110
85
119
116
158
84
111
126
108
95
87
113
112
79
181
140
108
80
105
133
101
89
76
112
140
124
155
129
93
97
139
81
120
127
95
180
160
56
95
128
135
144
103
84
59
77
93
151
206
107
139
133
130
114
107
102
147
141
87
127
77
95
132
136
146
81
81
108
120
156
83
139
112
125
119
118
131
106
108
92
98
108
127
177
191
165
129
118
105
128
106
92
131
105
80
89
132
68
98
117
114
108
161
148
132
127
123
111
163
154
103
105
70
125
93
59
101
169
105
91
54
144
125
95
139
108
116
121
77
95
101
104
104
145
139
105
54
107
137
119
127
138
156
90
124
135
102
132
100
136
93
108
122
116
113
123
103
98
65
145
67
149
148
99
117
149
117
85
126
118
95
131
126
123
137
87
153
149
81
161
120
112
102
147
186
107
59
132
67
126
162
54
107
188
111
116
49
76
117
83
97
102
108
79
165
101
83
131
97
141
145
104
116
151
98
112
146
143
78
54
176
131
80
128
129
127
147
112
113
123
74
153
126
114
107
124
122
119
125
95
120
49
74
113
148
112
123
143
76
122
113
78
125
123
123
189
93
143
148
120
87
142
108
120
79
105
96
142
133
104
98
128
129
128
102
151
148
143
59
84
102
133
45
54
114
128
127
107
104
112
122
137
125
69
103
165
90
146
113
156
112
129
110
194
102
103
122
83
97
130
132
93
104
177
145
100
73
123
145
54
49
105
103
95
157
111
59
108
65
131
105
161
150
120
152
105
126
129
131
122
89
98
129
87
117
85
95
148
173
98
127
74
81
120
131
158
103
167
85
123
54
98
131
156
123
107
107
108
165
106
104
103
118
182
113
113
134
76
131
126
95
85
77
110
68
133
119
118
78
77
117
80
101
54
148
54
178
54
78
78
91
129
90
105
110
131
133
113
101
83
144
137
158
83
78
104
90
123
172
129
129
154
175
97
106
126
144
179
101
112
115
148
149
149
72
54
101
144
112
107
98
95
87
128
95
116
95
115
93
95
91
124
103
115
107
122
93
49
123
69
116
127
144
118
95
120
116
116
91
91
108
165
108
148
135
120
116
96
121
127
54
74
194
90
106
102
162
125
68
134
90
98
120
79
59
89
83
112
87
138
128
81
177
54
90
108
120
81
54
120
133
143
123
93
54
127
133
61
77
115
112
105
186
165
81
136
54
148
143
120
106
117
104
166
108
119
82
136
76
87
113
83
68
109
96
119
54
134
111
163
118
156
68
125
105
87
89
157
125
87
95
99
93
177
193
113
54
107
54
136
76
113
111
141
146
81
59
132
146
147
93
128
94
102
150
123
103
110
98
189
65
136
166
113
81
149
77
81
59
145
155
54
129
119
81
135
91
81
113
109
73
119
90
161
117
118
108
86
81
81
113
61
130
146
108
77
49
54
109
165
120
87
83
129
97
54
102
90
103
102
194
98
105
119
112
142
87
212
142
136
110
126
140
128
76
136
113
126
156
49
140
87
111
94
157
135
59
148
113
54
132
82
122
95
139
87
105
113
146
145
105
91
96
95
127
159
133
108
184
115
159
117
108
81
177
138
161
81
129
185
49
54
171
112
157
136
110
108
148
146
98
117
132
164
161
102
117
78
100
95
113
171
116
104
100
122
108
131
125
159
107
102
95
98
115
139
150
120
123
166
102
185
109
123
182
143
128
80
148
110
92
177
95
95
87
161
87
96
133
119
177
107
91
86
86
123
144
138
162
117
123
128
138
122
81
126
106
108
96
143
191
103
81
87
123
59
102
83
106
82
121
98
134
117
105
74
144
138
141
165
67
149
157
145
114
102
97
86
124
118
95
106
99
139
81
87
134
59
86
144
172
95
133
146
121
81
118
141
97
82
113
144
125
152
130
126
54
115
54
155
118
124
61
107
82
73
152
139
108
122
120
133
96
108
101
144
131
104
54
120
118
102
119
83
154
170
172
149
134
99
97
151
110
104
145
123
90
131
155
104
152
103
100
131
163
78
168
96
95
108
108
95
146
126
136
143
117
104
89
49
106
128
106
78
113
157
127
107
69
138
79
112
127
68
95
163
135
156
138
112
103
139
131
160
133
95
92
135
135
137
49
54
154
85
103
95
124
120
143
132
113
131
146
158
81
113
154
81
130
77
148
54
65
122
95
137
135
125
143
145
81
116
129
158
87
98
123
98
127
135
96
135
129
118
83
129
148
112
140
102
123
80
138
77
113
102
88
113
153
151
120
54
110
106
95
120
134
54
97
121
130
90
74
139
148
137
110
74
109
85
129
59
103
107
54
130
176
149
108
93
160
120
87
87
108
93
167
76
133
76
98
90
54
146
116
125
154
82
97
105
59
85
154
107
185
136
116
108
106
67
138
104
118
49
119
153
140
145
103
108
87
143
134
83
98
85
120
102
76
54
168
203
153
155
177
117
54
49
125
121
153
86
125
54
144
93
113
113
101
139
54
49
69
144
115
68
49
93
102
89
119
143
98
113
103
102
115
89
76
77
93
168
99
120
168
107
116
108
96
103
103
133
110
115
83
113
127
126
78
117
102
134
122
117
153
98
122
98
130
113
96
94
102
162
148
97
123
104
74
103
82
100
130
145
108
87
93
74
68
123
102
124
84
131
95
125
87
119
148
111
95
108
90
87
126
110
102
85
87
111
142
106
77
139
149
121
59
73
74
159
95
124
131
97
103
140
128
128
138
115
105
59
69
102
90
86
98
115
125
120
130
111
93
95
95
171
77
131
109
95
90
102
74
90
146
117
95
115
140
121
103
118
124
132
139
106
82
118
76
99
148
70
113
120
109
108
129
98
177
148
87
113
54
113
98
81
117
78
166
131
54
100
139
126
123
172
91
117
102
169
152
91
142
54
97
104
108
110
108
103
95
128
95
131
105
157
144
104
143
49
102
113
110
130
111
158
59
101
116
133
113
113
78
74
135
116
132
97
104
123
95
144
127
116
61
108
132
105
110
54
101
110
49
100
106
129
148
98
136
94
108
98
143
141
133
124
91
95
59
98
107
54
81
138
148
142
113
77
133
138
110
133
94
77
88
159
96
107
116
77
151
65
61
141
108
152
142
112
139
78
102
133
113
98
117
94
112
127
149
142
113
82
113
90
125
95
100
98
85
54
134
99
125
49
125
129
155
125
124
90
95
126
140
113
143
95
115
57
84
49
99
183
94
126
95
95
112
160
93
127
95
152
105
125
81
98
157
99
70
111
105
165
96
114
97
116
82
103
188
93
54
83
81
112
115
103
125
133
108
148
141
54
49
125
61
76
158
145
89
161
125
49
144
122
147
108
156
149
116
77
76
185
102
84
128
155
72
144
127
103
95
140
108
112
127
54
141
109
158
87
82
96
125
128
125
91
141
137
106
141
106
127
108
112
148
78
96
105
105
118
116
82
92
95
108
105
122
166
142
146
107
206
101
114
54
140
103
138
95
113
98
106
102
123
146
97
111
125
137
132
76
132
82
123
122
162
133
146
101
133
140
125
149
82
145
98
124
102
126
146
61
45
110
142
164
111
108
147
112
95
204
92
99
158
139
137
158
69
103
117
125
123
157
138
119
76
132
115
124
132
117
108
89
54
81
102
102
147
87
115
167
165
87
54
200
172
108
115
133
105
158
113
139
110
114
110
102
124
100
98
146
107
129
131
133
88
122
81
158
103
142
133
125
54
138
101
112
147
117
101
85
132
125
87
95
77
125
88
54
100
49
95
155
108
148
122
133
129
143
123
54
182
110
177
95
76
156
75
110
105
147
109
111
147
131
132
116
127
134
93
98
54
112
103
108
141
95
74
186
102
85
129
126
105
102
76
149
87
116
147
105
99
94
141
114
59
116
177
113
136
127
100
54
141
109
125
113
114
157
106
124
110
103
138
143
97
148
103
127
103
141
131
128
119
103
79
137
127
129
148
165
90
102
105
90
143
90
125
121
115
95
97
86
106
95
92
70
90
54
81
108
103
94
95
118
97
133
97
82
115
89
148
137
107
125
145
137
136
142
81
109
138
59
54
139
112
170
87
142
95
76
79
150
54
165
128
87
74
96
135
74
115
85
108
108
119
167
101
116
111
77
83
113
156
123
67
91
108
102
145
191
102
108
54
118
123
111
167
103
129
108
108
89
122
91
117
99
149
115
133
179
135
177
95
151
117
102
198
82
108
131
107
94
139
98
113
134
138
109
68
160
76
108
95
121
87
164
61
178
104
103
81
158
106
124
144
103
120
107
114
106
129
131
101
128
148
90
54
105
82
149
127
125
128
120
115
157
149
49
120
104
82
107
79
129
108
117
149
108
81
135
122
108
125
104
110
145
143
54
79
54
85
84
108
100
106
122
112
126
70
100
92
101
85
69
162
102
132
182
146
149
108
137
108
103
143
81
68
140
54
140
105
108
97
103
117
108
146
103
111
131
95
102
90
120
123
67
132
131
102
131
123
81
97
106
96
82
78
115
80
124
96
108
87
57
105
113
114
117
98
103
147
160
138
160
125
149
70
135
149
102
99
106
151
172
179
135
146
139
151
159
79
74
84
87
128
116
95
121
117
109
81
156
80
115
132
199
128
93
135
131
74
96
126
77
82
69
77
142
116
97
87
94
102
89
59
98
184
111
108
81
74
127
138
105
104
80
163
90
115
150
81
167
137
101
94
97
93
122
49
148
128
98
105
136
148
132
97
54
119
124
126
123
81
139
125
122
167
101
103
68
163
150
93
128
78
116
121
87
118
78
107
129
95
59
83
165
159
107
143
82
127
82
124
84
118
78
102
92
142
102
77
158
54
127
96
95
144
102
90
108
95
102
59
76
108
143
108
148
139
155
101
118
117
73
95
125
116
100
96
49
112
117
102
113
146
103
129
115
184
87
148
109
131
148
143
95
108
126
102
128
105
137
106
146
132
152
98
131
127
149
115
98
95
144
108
117
129
143
102
49
97
138
93
98
95
135
105
96
133
103
98
143
102
164
146
163
104
80
158
136
104
190
158
135
125
170
145
81
69
134
128
145
128
130
103
94
96
113
136
117
140
133
97
78
49
77
157
138
63
144
102
103
121
144
97
102
109
125
80
131
165
166
83
129
156
168
103
98
177
80
113
124
125
91
102
121
142
96
150
74
104
135
156
95
104
81
61
86
105
125
108
103
119
103
150
130
118
128
162
96
102
80
155
112
98
129
101
101
101
90
141
117
102
129
118
68
186
128
90
106
123
59
143
74
103
144
81
90
108
99
82
118
87
154
140
100
148
74
144
95
116
79
68
103
110
122
108
96
77
117
112
117
184
109
135
157
54
102
118
106
93
123
127
139
109
98
154
146
81
95
71
177
154
122
102
99
54
133
45
112
118
103
76
142
95
135
110
119
127
104
183
103
80
144
101
136
98
133
74
139
85
74
96
135
82
121
126
114
90
95
101
99
131
131
125
110
108
102
107
85
146
83
115
133
54
110
54
141
102
122
215
134
109
145
113
130
131
81
59
87
100
107
79
90
81
141
143
127
99
101
105
118
114
143
128
101
115
90
95
87
148
107
140
91
104
67
87
127
127
76
151
49
95
105
178
122
61
98
97
185
86
157
102
99
83
130
148
197
182
102
92
147
162
87
135
126
108
140
121
122
139
146
90
144
118
85
102
125
108
105
122
143
108
102
125
87
67
135
131
68
77
115
108
112
110
137
120
144
108
98
99
54
141
194
95
147
111
131
59
183
139
116
95
127
104
114
133
59
113
74
145
144
57
149
81
85
125
107
108
135
127
105
150
98
59
103
82
81
157
162
144
199
96
128
90
199
125
148
106
94
67
164
115
140
121
123
67
79
95
96
49
133
85
120
119
149
119
140
125
131
120
113
77
135
87
76
85
143
145
117
95
128
80
102
107
142
158
83
159
107
108
131
108
108
149
87
139
146
84
110
156
126
85
116
86
108
102
175
119
125
54
76
171
102
76
82
54
141
146
157
122
62
98
148
102
108
120
112
110
120
105
141
98
150
107
128
119
125
102
123
128
105
57
120
125
102
77
108
74
125
105
156
123
127
122
141
61
82
87
149
119
121
83
102
110
76
141
102
97
95
130
83
98
121
81
129
83
108
106
108
103
81
189
105
186
103
96
82
128
102
102
108
90
147
128
54
68
121
97
101
74
118
141
104
96
138
90
68
161
118
165
125
107
98
177
82
113
102
115
129
103
126
133
125
74
170
182
82
130
140
83
143
123
109
159
144
109
145
101
108
122
78
110
102
69
135
108
81
144
102
128
67
152
108
127
151
74
89
97
144
172
105
94
128
177
156
133
102
122
103
113
91
96
59
76
161
147
139
129
118
69
150
143
129
106
117
102
131
105
133
114
124
129
88
102
125
104
86
149
74
147
81
145
85
76
159
117
108
84
169
129
130
108
93
135
107
100
102
166
135
98
137
81
106
112
100
101
153
145
112
90
119
118
108
136
127
162
128
114
105
108
118
67
108
96
115
133
108
104
176
107
148
97
145
94
80
112
123
105
135
107
113
103
87
99
74
146
95
102
131
102
98
165
116
125
156
49
180
145
98
140
136
98
106
113
95
82
131
132
68
114
109
122
149
82
129
102
125
109
95
93
83
102
95
112
93
125
158
108
216
161
88
101
108
102
121
119
108
130
110
101
77
99
137
98
132
140
136
156
125
112
96
126
120
133
173
49
141
120
115
116
127
150
75
49
59
120
123
113
112
102
98
54
90
121
67
88
102
109
90
133
116
104
147
54
89
145
141
77
103
99
157
154
54
127
101
80
54
137
104
110
116
131
45
129
161
135
77
87
155
125
97
108
93
106
131
174
124
113
96
182
186
110
153
165
93
98
152
83
101
112
149
106
112
139
156
98
54
180
97
81
98
134
111
148
95
139
143
125
85
159
73
158
148
108
104
148
99
74
129
86
134
81
73
98
85
102
100
107
137
101
135
131
95
128
113
135
79
83
162
107
95
122
155
93
77
114
143
119
146
83
127
123
148
102
104
152
118
148
120
116
113
81
121
127
124
136
93
132
87
79
119
127
74
110
204
67
117
54
108
194
91
54
131
102
113
111
119
148
113
122
93
116
98
108
103
108
128
153
102
111
81
108
103
74
147
130
97
106
137
153
93
108
83
110
138
154
143
146
115
158
142
61
131
128
76
144
171
134
121
54
147
124
99
147
74
214
74
172
135
119
102
122
128
74
54
83
127
145
108
131
78
85
106
97
49
99
113
118
118
114
97
120
144
81
144
106
143
77
120
116
122
49
108
127
139
103
145
61
143
171
68
113
121
144
110
104
112
76
101
116
143
125
102
123
116
104
125
54
69
117
114
79
102
157
94
154
95
161
128
103
154
69
120
76
148
100
107
112
135
121
96
106
164
116
145
139
123
129
68
140
90
83
103
145
126
116
107
128
97
101
158
134
96
91
108
148
85
135
109
95
81
108
100
59
148
74
137
110
139
122
113
146
75
69
131
139
67
118
54
96
90
76
159
157
160
144
68
102
100
126
88
54
158
123
90
61
96
78
133
156
148
108
119
49
113
68
184
107
131
119
134
192
93
124
95
153
119
108
54
81
85
108
105
74
97
134
93
80
59
115
119
95
42
202
98
119
95
101
54
103
92
111
157
137
108
81
108
114
108
94
81
97
128
108
125
54
123
103
87
131
102
77
108
150
113
124
81
106
103
132
133
100
110
158
125
113
120
115
108
59
125
141
95
92
129
125
87
137
145
140
54
151
103
92
82
104
147
137
104
143
109
132
90
114
148
191
169
54
140
208
95
88
113
94
97
108
80
101
190
93
118
81
104
108
144
146
83
132
145
123
159
144
101
158
116
71
114
143
139
107
101
107
166
112
96
49
133
135
174
143
101
106
125
89
125
129
103
102
154
117
165
69
81
59
146
95
171
76
133
125
69
93
105
103
186
112
98
133
111
158
115
144
105
117
115
98
121
49
125
118
122
95
108
98
100
102
122
158
126
102
114
129
112
122
81
89
123
139
54
151
105
133
95
165
163
149
106
91
126
139
87
160
67
104
74
59
121
143
83
129
79
93
191
179
149
114
114
98
81
120
118
149
131
101
81
120
81
145
82
163
54
90
127
113
158
88
139
74
83
98
89
101
126
137
97
98
82
128
124
119
98
145
76
115
137
91
82
87
72
118
77
82
109
188
180
124
148
150
158
81
78
139
97
157
123
54
90
90
115
95
107
121
136
162
89
145
88
126
95
142
110
101
137
127
97
83
94
146
114
115
107
108
161
54
151
131
102
133
164
82
133
97
103
200
82
136
104
119
89
68
141
117
177
98
139
95
112
117
148
177
102
77
106
98
100
135
161
49
182
135
128
140
149
133
145
147
213
113
157
102
135
144
174
101
124
93
125
133
136
126
97
102
169
75
54
160
92
54
69
102
115
101
93
160
104
133
98
146
112
134
145
95
102
127
153
121
113
133
108
102
83
114
90
133
116
145
107
114
80
116
115
155
102
122
158
102
54
105
117
148
103
108
116
102
171
125
194
160
127
112
135
153
131
74
91
83
84
143
107
108
116
129
81
114
132
69
112
163
105
92
87
93
59
192
85
81
129
146
98
81
101
54
102
128
113
127
107
145
95
101
109
103
49
107
61
122
131
183
82
154
105
113
149
122
116
95
108
108
93
129
96
102
151
167
163
98
146
115
102
108
144
97
154
107
119
140
141
54
98
49
148
83
145
136
98
56
113
107
160
96
123
125
118
116
161
123
124
115
165
77
95
102
108
139
103
128
129
128
91
128
54
132
133
105
140
97
127
127
139
173
132
140
98
140
107
127
90
98
105
125
59
162
158
92
87
110
182
162
169
54
118
121
104
149
112
103
67
131
133
139
108
102
92
165
118
110
139
116
99
143
85
94
81
186
156
80
113
105
59
125
119
111
84
104
116
146
112
79
135
77
105
117
138
54
94
128
123
105
134
95
80
106
129
107
102
95
170
82
85
157
194
98
138
98
127
113
54
95
81
77
131
95
100
108
155
127
87
128
114
121
73
106
121
74
122
102
116
91
146
108
148
81
169
118
77
130
97
142
114
96
190
108
108
90
120
143
61
103
95
177
108
98
153
135
168
149
112
98
105
102
134
92
99
135
152
98
161
95
101
158
108
94
113
129
98
80
108
110
117
123
113
110
102
68
79
125
103
83
146
95
108
128
104
76
114
139
93
134
132
92
95
98
54
98
139
151
101
140
149
113
108
113
122
117
72
135
146
113
96
95
113
116
90
104
160
160
93
141
139
132
106
109
132
112
121
115
77
83
149
54
113
133
153
95
119
123
119
67
105
54
132
87
135
135
99
99
114
88
165
87
81
116
165
138
155
150
176
91
49
93
113
124
98
98
95
105
102
80
102
59
134
110
131
133
125
127
112
97
96
126
81
133
118
117
139
110
128
79
179
124
98
96
144
108
114
113
115
93
108
108
123
153
112
87
74
147
88
128
98
165
105
148
90
165
103
103
139
116
156
81
110
113
84
155
120
147
95
82
54
145
125
121
87
134
49
90
114
115
170
95
101
128
167
127
54
115
92
96
106
108
123
106
102
118
131
102
54
177
54
106
148
105
45
72
128
152
131
116
125
89
134
115
129
105
108
104
108
104
103
105
107
79
144
90
69
74
135
163
128
81
114
107
133
93
81
118
95
145
54
109
77
81
112
108
81
125
103
76
126
111
124
120
98
120
98
80
117
124
95
135
123
103
85
81
131
106
104
90
131
113
125
101
112
147
113
82
188
104
118
108
93
163
138
182
117
120
155
133
148
54
125
90
95
115
95
106
54
115
102
107
148
125
137
80
160
89
143
109
100
135
136
145
123
115
89
107
108
161
103
173
135
108
119
105
134
68
126
95
146
113
134
87
85
76
125
74
94
130
127
102
182
132
125
131
102
91
108
110
118
144
118
106
125
107
95
125
59
74
122
101
149
165
114
117
77
87
88
133
76
135
54
167
140
153
127
93
104
105
70
128
108
125
121
133
160
102
108
150
59
83
54
94
123
76
106
123
83
103
166
85
125
115
156
120
134
131
157
102
133
110
131
102
160
142
78
141
96
105
107
150
161
122
54
109
102
115
110
108
96
95
76
166
147
99
54
128
61
163
154
98
118
105
146
154
113
102
92
126
100
105
163
127
113
96
171
125
152
98
85
154
120
114
108
122
100
139
125
93
135
93
78
114
49
121
115
102
94
101
80
155
103
95
138
145
101
121
177
125
118
107
76
63
108
102
175
154
81
128
89
122
69
103
96
136
90
127
115
144
138
78
144
123
140
119
108
90
131
98
97
128
202
144
145
101
158
102
98
103
101
107
98
107
82
112
119
127
150
153
137
101
152
128
115
159
92
144
143
95
125
115
131
98
98
105
91
95
78
102
96
123
119
186
138
128
98
98
105
92
147
169
115
107
112
159
109
149
54
95
95
144
59
132
179
93
106
95
144
108
171
157
113
124
115
74
163
101
70
112
88
159
94
99
141
104
179
146
173
103
81
127
114
114
115
93
54
102
102
180
123
138
73
150
94
59
128
108
160
100
103
100
102
97
135
132
172
95
122
120
138
127
140
162
105
87
100
105
95
125
108
148
54
101
182
142
141
135
97
77
135
103
146
81
108
95
124
83
125
164
157
177
54
104
97
106
125
137
157
137
150
112
108
133
122
118
146
131
59
113
103
143
97
97
144
87
49
134
120
132
90
102
81
157
136
123
107
121
59
106
89
98
125
79
102
120
166
103
49
151
105
114
128
59
124
162
95
79
135
138
95
140
190
80
103
91
147
125
123
162
157
112
102
108
54
120
76
117
95
127
99
87
97
134
127
157
98
90
108
67
145
143
54
140
117
81
135
67
84
113
98
118
93
112
87
77
61
224
54
107
80
112
122
117
186
109
146
153
135
81
137
132
123
129
105
127
127
127
133
125
109
108
115
108
76
104
138
49
132
150
157
95
116
143
114
168
138
143
115
82
128
111
134
54
108
102
117
113
93
180
110
95
131
141
85
158
140
129
96
155
145
106
110
84
74
102
131
111
93
112
116
116
54
109
148
59
107
54
113
107
118
101
120
163
98
69
161
149
119
95
127
129
156
94
100
120
142
120
94
125
118
107
86
54
151
125
108
137
81
125
108
69
106
131
103
128
118
117
98
49
54
177
100
88
89
145
154
161
101
130
95
177
140
126
125
93
108
106
92
165
149
129
109
76
61
96
123
123
89
76
111
99
111
81
129
102
82
98
129
133
110
135
105
95
76
104
155
116
150
102
142
112
85
108
140
156
126
118
112
139
110
120
191
116
131
94
156
114
101
177
98
133
132
112
91
54
130
163
82
119
164
99
125
59
67
96
94
83
114
122
127
90
87
68
107
153
98
179
132
98
113
82
92
115
85
91
78
161
156
109
112
146
90
93
87
92
94
45
77
83
140
133
156
140
113
168
108
76
138
97
112
160
128
135
77
132
143
54
135
99
107
169
120
97
98
180
117
164
95
101
99
113
124
133
112
130
148
74
76
103
145
54
77
49
150
112
157
141
83
145
155
103
91
144
159
141
96
145
121
125
120
101
77
102
107
107
131
113
148
123
74
77
103
106
102
127
135
118
85
133
81
116
97
155
95
93
87
151
140
106
101
186
99
108
147
115
65
166
151
128
104
117
118
144
148
134
124
125
115
112
131
134
160
96
105
133
112
145
68
144
118
120
172
71
83
99
138
225
180
108
93
152
103
126
85
79
184
89
158
95
88
108
128
135
91
104
207
115
134
127
66
109
54
78
128
102
98
177
80
122
160
90
109
135
97
151
125
120
177
134
148
161
125
54
98
102
101
99
107
90
165
145
105
135
165
103
107
115
124
172
144
112
156
103
117
134
116
133
77
95
127
114
82
125
118
80
84
107
131
113
101
91
103
81
199
107
100
152
120
76
177
81
124
59
102
168
132
129
141
59
165
162
133
91
90
59
148
91
139
104
123
95
118
110
133
125
167
158
59
91
153
179
95
119
87
171
98
123
116
110
148
80
95
49
54
157
119
175
87
105
129
89
124
86
150
124
80
148
139
131
130
89
85
140
120
81
120
59
133
93
105
155
125
95
54
127
54
133
97
59
133
169
49
105
85
54
146
103
147
98
106
54
96
101
135
103
105
148
119
136
125
79
120
130
81
104
111
61
133
107
122
94
146
77
85
131
122
77
145
125
112
78
122
88
100
119
164
138
81
100
112
108
157
143
101
172
113
108
98
66
112
110
100
190
142
119
128
129
113
106
145
103
90
98
179
145
150
93
151
92
124
95
79
78
112
154
124
148
174
116
129
83
102
59
125
108
122
175
124
108
54
97
135
144
103
90
148
90
90
90
103
139
188
104
138
65
165
94
113
120
147
115
125
81
118
98
67
54
125
96
106
116
49
92
138
54
113
78
140
110
115
94
76
193
77
69
154
99
140
120
158
95
124
101
137
129
163
150
144
123
59
133
96
93
98
118
176
78
90
95
102
97
102
54
118
54
122
127
109
128
140
115
143
94
135
110
91
59
115
133
101
128
54
104
90
77
143
107
115
116
149
135
155
98
117
111
87
97
81
85
54
130
90
80
109
144
190
110
106
110
81
157
153
141
110
114
98
128
109
149
107
105
120
81
131
106
117
116
104
121
128
54
120
99
105
113
110
141
121
111
113
106
49
94
84
78
79
108
105
180
157
84
131
130
89
85
147
68
134
99
114
102
81
74
140
113
156
133
94
132
49
59
54
137
82
112
150
81
117
135
115
54
131
68
134
164
113
123
129
125
98
81
117
128
139
147
95
113
125
74
129
102
140
104
143
87
160
99
111
115
129
159
145
120
114
189
74
159
147
74
104
191
103
105
116
76
102
165
137
131
103
87
139
95
135
102
117
143
141
137
127
61
104
157
138
111
73
85
136
85
125
87
108
127
139
141
131
81
99
120
104
138
114
137
95
110
104
96
145
83
130
128
54
49
148
77
117
120
96
116
102
123
142
81
85
112
128
91
181
95
109
116
128
131
73
116
132
123
167
154
125
108
131
94
129
139
119
94
182
120
123
101
151
87
143
54
144
143
102
59
140
111
61
131
97
148
102
129
148
134
112
91
108
141
68
127
118
111
104
117
134
137
95
154
82
98
147
118
128
144
49
128
143
103
149
158
135
149
83
85
108
77
91
124
71
81
82
82
93
90
81
111
126
127
94
143
109
81
113
125
113
105
88
106
146
119
54
120
107
89
124
122
96
143
111
63
90
107
128
100
80
154
89
102
131
87
118
115
146
94
95
77
164
127
65
82
131
100
160
54
141
131
150
132
92
93
174
81
98
102
121
133
136
82
69
137
146
129
108
160
106
49
49
54
140
110
135
113
170
124
74
180
164
97
107
82
95
107
105
107
54
54
103
112
95
143
137
145
97
145
115
74
140
106
117
95
144
116
168
95
85
116
101
103
87
155
150
121
140
115
105
133
67
107
157
49
102
59
122
93
156
139
87
81
123
84
90
112
133
117
153
73
140
113
154
107
123
154
139
93
159
118
127
135
135
108
74
97
110
131
147
122
109
73
134
49
117
113
99
149
95
133
67
98
89
90
152
108
148
102
110
148
164
96
204
89
54
87
105
141
125
134
143
119
135
103
108
130
90
98
132
59
102
131
74
141
101
121
76
125
154
98
87
130
125
161
98
123
54
84
116
83
90
54
54
104
97
157
54
81
140
95
206
114
95
108
105
131
83
137
78
54
49
118
116
98
95
103
138
68
139
125
116
146
154
107
155
54
100
95
120
122
132
129
102
213
144
137
108
113
176
81
95
108
111
141
106
105
111
124
148
174
137
134
154
77
83
170
82
95
141
54
59
106
136
154
162
131
152
119
94
95
76
122
106
138
78
80
111
133
102
131
129
84
92
145
98
61
148
131
68
69
120
123
136
129
84
140
115
134
95
146
173
126
147
102
154
102
118
133
154
92
121
102
54
98
96
96
128
149
110
84
113
98
105
155
156
101
98
81
108
138
90
126
54
104
112
165
104
77
68
97
177
146
59
109
177
125
95
108
68
133
127
98
105
127
89
120
108
108
108
99
89
212
74
103
150
93
154
135
59
133
102
104
183
115
165
134
129
104
135
134
92
118
95
105
129
62
74
101
147
109
95
98
54
170
99
116
80
132
117
106
146
101
101
93
106
67
148
214
114
91
117
133
105
149
103
81
159
116
98
114
128
120
180
102
173
109
126
87
148
77
133
96
49
128
131
112
103
73
132
127
103
139
120
114
103
106
108
90
149
122
78
141
82
95
87
137
107
143
115
120
92
101
173
76
54
96
49
109
104
112
78
129
153
95
151
135
109
132
148
95
127
121
95
102
104
106
200
102
113
143
185
191
54
131
118
113
116
125
90
92
81
104
98
118
139
76
94
54
112
106
112
155
179
107
83
85
102
137
105
77
106
143
144
144
145
122
118
59
128
131
116
129
152
78
125
130
136
76
95
132
74
127
156
95
79
133
140
134
98
142
97
103
133
132
94
96
114
76
136
155
157
128
86
95
143
103
127
77
107
139
108
138
97
165
74
87
108
146
108
90
73
107
79
115
49
138
120
82
148
144
125
105
59
106
148
80
114
125
84
156
95
69
129
146
90
148
118
90
93
147
152
102
54
127
89
115
54
110
103
102
100
92
128
140
93
93
49
81
100
139
132
158
107
87
133
140
127
75
85
115
113
135
131
101
54
93
59
182
133
49
101
102
122
77
152
172
147
117
102
137
80
117
125
160
96
154
122
142
67
97
148
138
102
97
110
151
83
195
118
77
111
108
95
116
74
103
84
101
139
103
136
110
108
95
49
123
170
146
149
143
116
115
134
123
176
142
132
99
103
99
160
179
93
135
114
95
102
135
108
96
111
100
101
93
135
141
140
110
98
116
113
102
128
138
119
130
113
102
109
108
134
98
74
54
177
84
146
97
115
108
99
115
104
107
95
100
103
119
135
192
156
78
78
115
133
108
98
54
88
96
123
97
54
107
49
54
103
81
121
135
118
143
121
134
110
164
146
162
130
125
112
108
115
94
84
133
133
112
69
173
98
166
113
97
146
113
117
70
133
123
120
76
115
76
98
115
97
120
77
121
111
169
83
96
130
103
114
54
113
182
81
87
103
77
116
98
110
122
85
113
129
106
61
90
106
108
61
135
109
96
175
81
181
59
82
95
93
140
67
135
182
69
73
103
133
136
108
120
82
67
147
154
131
135
172
110
137
85
103
87
127
74
144
54
144
74
105
120
107
185
54
125
157
126
105
111
54
116
96
101
160
106
124
133
79
105
85
80
125
101
127
158
161
102
103
181
164
102
93
90
129
105
132
87
92
151
116
143
112
100
108
145
155
124
77
140
154
95
132
59
200
122
131
102
95
148
79
70
144
129
118
77
73
54
93
137
59
113
125
137
155
131
117
107
126
170
102
123
155
177
139
105
54
112
125
110
160
126
149
140
92
90
127
81
90
126
81
136
139
77
108
154
92
113
96
103
87
88
113
122
113
98
169
83
87
112
57
134
103
98
143
90
131
121
146
126
96
98
133
145
97
164
68
97
95
102
77
116
137
101
143
142
165
120
111
119
165
97
158
90
68
125
135
54
98
146
145
81
100
104
108
120
78
95
116
107
96
114
143
98
158
119
164
160
95
104
134
102
110
164
95
95
113
113
132
65
108
59
156
123
102
96
105
108
105
83
92
140
190
121
98
108
95
136
91
144
154
109
118
124
177
81
177
133
74
93
107
109
126
59
102
168
106
135
101
97
67
161
97
141
104
89
49
98
178
84
104
144
144
113
120
102
129
123
54
143
117
54
81
128
121
112
127
143
87
74
133
85
128
90
105
117
104
108
117
152
154
106
122
121
105
155
128
69
77
104
122
85
54
133
127
112
91
119
161
137
102
134
61
114
112
102
145
129
133
96
105
122
77
139
54
140
137
112
105
106
49
99
113
77
76
49
87
132
108
125
103
139
130
174
114
119
83
78
92
82
154
123
135
149
104
122
90
108
142
133
83
99
90
160
140
172
82
103
180
144
102
162
150
172
150
76
177
180
152
103
93
74
144
113
150
102
148
101
105
118
119
111
120
118
118
157
141
108
49
143
119
138
103
127
54
76
82
108
145
61
99
103
146
98
95
67
120
81
89
173
128
81
156
91
133
124
128
76
104
94
87
102
160
154
138
102
85
85
107
116
172
139
90
68
139
148
151
78
138
108
176
108
103
99
95
97
128
131
68
148
149
108
127
156
54
117
54
179
74
103
115
74
135
145
126
122
148
85
139
97
75
129
81
103
146
159
155
127
115
130
83
91
131
102
102
142
131
112
96
137
150
96
130
130
161
125
103
102
140
146
149
107
129
127
103
118
157
126
86
99
176
86
137
130
86
105
178
118
102
113
123
133
109
131
117
54
148
115
145
145
147
150
101
95
107
93
87
156
100
54
102
148
144
105
116
93
150
130
102
82
108
125
147
129
129
122
85
119
149
131
113
125
77
101
98
133
179
120
54
98
101
104
139
82
67
103
45
87
93
54
99
49
69
110
68
165
156
54
121
103
104
114
108
121
54
90
147
151
138
140
87
115
140
77
108
122
101
77
105
118
89
127
93
143
115
130
127
122
61
68
108
125
180
100
124
85
132
95
139
112
95
104
95
99
98
113
73
120
107
127
127
112
127
97
95
104
100
134
109
148
97
108
156
98
146
140
148
78
102
103
108
83
129
163
77
170
132
113
102
124
98
90
102
89
128
144
135
102
122
128
155
141
59
82
108
75
103
125
193
104
96
54
129
102
188
93
88
108
102
125
127
103
83
130
89
119
99
54
59
158
98
100
104
102
148
129
144
91
49
120
87
142
128
79
104
108
144
141
130
115
148
96
99
96
154
113
103
105
110
54
74
95
125
93
81
148
95
87
95
179
173
153
102
115
164
129
81
168
102
159
67
108
98
120
93
167
105
177
128
103
95
126
105
158
145
115
81
90
148
167
137
112
129
122
83
83
95
105
78
148
166
86
125
142
166
159
127
107
148
54
105
103
109
95
109
108
132
106
72
61
137
112
148
106
79
147
147
54
126
85
120
106
117
99
102
146
83
93
161
117
151
117
131
98
108
109
94
107
91
98
98
80
107
135
145
102
103
90
114
77
150
143
71
134
170
97
146
144
102
69
116
96
108
102
167
131
206
105
133
110
144
158
151
151
103
136
90
78
125
98
132
123
125
116
122
82
67
120
95
144
106
126
67
103
79
102
135
108
127
105
90
123
168
84
133
103
78
152
146
169
102
131
119
149
129
137
117
154
124
91
61
73
74
95
110
121
128
130
98
95
123
179
104
119
108
87
116
74
76
102
138
82
106
106
143
85
54
124
109
59
81
113
95
93
138
89
116
102
114
68
98
108
131
98
84
90
118
103
150
141
151
113
80
116
105
108
98
112
146
103
126
119
135
102
158
133
106
95
140
67
119
225
81
131
92
143
85
49
90
100
95
90
161
112
114
87
179
145
54
93
119
138
74
140
137
101
158
126
54
81
134
108
158
81
74
120
113
94
92
157
140
133
135
127
139
109
119
73
149
155
104
75
115
131
74
164
124
176
135
106
122
82
54
102
68
113
108
90
121
96
54
116
103
103
98
178
54
128
111
124
103
129
115
102
162
130
115
133
102
98
102
161
95
83
129
106
110
108
90
96
80
125
120
128
105
168
127
77
103
74
158
49
133
112
177
106
74
149
103
99
107
108
97
109
83
129
166
155
180
139
81
158
155
141
91
96
135
124
128
115
131
123
81
102
161
200
109
90
127
97
122
84
148
96
136
121
102
95
133
105
128
82
108
54
125
100
162
124
108
121
145
108
126
132
98
118
98
81
116
103
102
100
133
126
98
130
108
148
99
77
113
87
95
177
86
82
96
81
107
147
122
132
132
121
144
142
105
149
161
103
104
127
120
104
101
113
112
83
120
114
98
134
118
190
141
86
93
138
78
177
108
102
102
103
101
103
95
82
140
102
104
110
114
127
81
84
186
102
93
132
161
113
119
108
76
153
105
104
83
74
90
49
114
99
151
127
147
107
130
133
59
65
111
93
82
102
54
89
130
93
83
154
150
172
126
116
79
90
119
158
115
125
89
54
133
141
87
129
98
98
107
124
140
176
172
134
125
98
135
110
54
83
70
115
115
106
106
125
110
123
115
139
147
144
127
135
107
164
85
122
95
98
96
61
126
160
107
125
112
160
139
110
103
163
150
153
94
105
143
180
95
83
103
54
125
81
118
95
122
107
136
196
133
147
103
61
158
169
89
138
74
74
99
107
173
132
83
160
97
108
117
85
194
95
105
108
164
101
90
77
90
135
144
152
102
158
188
54
49
118
89
122
108
115
115
129
110
122
49
92
108
76
74
146
132
106
116
134
123
93
94
139
54
129
118
125
165
92
151
170
143
126
154
135
143
102
80
45
114
101
120
121
127
124
98
101
80
133
129
156
98
95
158
129
102
123
123
90
88
106
82
98
122
154
102
106
151
81
163
155
107
96
143
54
96
110
54
114
86
74
106
131
87
105
129
145
84
102
88
83
175
106
54
79
113
94
95
190
111
105
105
141
98
54
80
113
139
161
156
125
49
129
89
128
91
115
128
127
108
95
109
98
116
165
127
128
138
127
112
93
49
154
80
95
129
54
167
102
103
108
115
129
145
103
120
172
89
124
107
108
119
95
125
211
161
111
106
127
165
128
174
98
153
94
117
126
118
105
129
108
90
86
125
140
129
177
167
139
114
120
91
121
155
98
110
148
117
105
92
154
129
67
143
133
90
102
54
94
122
95
135
105
54
102
160
139
134
128
133
132
106
148
127
95
148
76
113
123
102
120
149
81
108
106
116
153
105
49
93
139
148
103
182
82
127
154
103
133
128
112
155
141
78
133
123
127
144
104
76
146
146
135
106
107
116
102
95
81
142
126
89
113
93
154
116
103
116
154
133
130
91
189
133
132
87
182
54
114
125
107
98
110
159
130
94
134
94
112
87
178
192
104
113
69
128
129
112
126
82
129
128
179
100
151
114
128
88
79
151
164
73
113
76
95
98
126
102
127
113
127
76
121
107
123
69
92
130
80
95
177
109
119
131
98
113
143
124
129
104
197
59
172
169
67
83
82
139
174
102
98
73
99
138
95
175
103
166
94
97
102
59
81
80
150
59
59
143
107
115
78
95
190
54
93
111
103
146
113
110
161
140
103
100
118
95
103
96
154
142
138
87
122
120
98
96
54
110
76
95
129
178
116
105
108
120
119
87
108
149
125
103
119
135
95
100
112
54
129
106
146
133
105
96
139
102
105
101
69
192
113
98
79
110
91
99
139
104
148
102
110
102
107
148
134
98
138
112
113
113
125
162
141
146
123
118
157
142
161
143
102
175
102
139
131
81
104
131
112
98
119
128
181
143
101
142
119
59
90
140
79
129
49
103
131
151
76
102
77
111
103
146
113
158
119
123
123
189
91
169
118
87
81
107
103
111
122
121
109
76
54
157
95
106
95
54
79
143
82
97
112
98
81
104
85
122
115
120
148
151
137
143
89
136
140
140
118
54
105
76
135
103
170
115
108
127
125
108
140
98
130
130
127
92
125
83
93
122
76
101
105
158
179
153
139
104
106
82
89
129
123
112
132
113
137
61
97
127
129
108
119
124
100
114
108
98
128
115
116
94
150
199
80
138
102
149
98
103
144
137
87
82
108
113
90
161
161
98
110
123
76
86
143
104
80
104
112
108
105
96
124
132
120
95
133
159
92
153
113
164
188
123
177
134
127
73
141
113
73
145
103
74
81
136
108
121
98
119
119
95
113
78
74
146
115
140
163
104
76
81
123
93
165
122
49
98
134
95
103
140
129
182
111
78
177
86
145
144
173
67
140
164
118
114
49
79
110
135
116
210
89
107
156
87
102
128
128
161
172
103
116
69
61
134
90
92
59
118
148
94
75
125
135
115
143
135
113
108
149
121
65
149
108
143
158
103
83
92
141
90
115
100
96
80
102
108
84
81
133
90
190
95
73
59
86
129
126
142
101
125
150
94
102
179
105
148
204
147
148
135
126
124
125
160
102
131
81
67
128
113
154
147
171
114
125
120
120
121
144
128
108
130
122
96
98
83
49
95
148
175
94
128
168
81
146
136
120
158
152
87
144
98
99
54
54
158
109
106
102
128
96
101
145
87
81
95
114
54
96
102
140
81
82
87
81
125
128
109
144
180
106
113
113
74
165
98
97
100
98
144
96
160
95
177
116
118
160
119
108
141
90
113
165
131
98
77
125
87
130
102
103
102
110
115
144
121
124
114
148
78
81
141
128
106
95
113
134
128
85
190
96
123
144
108
95
91
164
102
117
97
108
137
137
108
128
91
121
169
141
108
87
113
139
90
81
193
102
110
143
129
158
134
104
93
90
115
104
177
102
102
115
148
98
135
87
108
138
71
107
111
120
108
82
101
154
149
92
127
175
102
122
121
108
102
96
115
132
117
172
144
127
77
95
123
131
148
54
74
116
95
172
136
143
117
108
131
100
145
87
160
177
76
124
125
155
106
114
83
69
144
121
95
74
122
83
95
131
131
146
96
74
67
125
146
113
180
113
122
108
149
116
113
111
173
141
186
103
77
121
104
106
93
125
106
86
78
65
131
97
106
131
177
54
105
186
105
131
116
54
107
54
140
124
90
124
106
152
131
128
160
81
111
119
90
54
91
111
108
116
125
150
45
135
99
145
145
110
106
98
148
102
96
98
80
161
137
91
54
105
77
145
93
153
150
133
113
119
179
151
140
125
112
172
148
120
114
88
108
131
158
63
177
128
54
95
139
200
96
155
98
177
140
127
101
123
188
148
108
75
54
136
144
103
114
108
156
72
76
160
113
73
159
61
144
123
131
113
96
77
98
49
142
103
144
91
138
98
61
83
141
170
112
90
95
49
82
180
102
96
100
146
125
79
107
148
54
106
81
108
117
145
125
140
93
124
117
148
107
138
80
102
145
125
108
87
74
78
105
98
84
118
134
96
83
132
87
108
69
125
72
158
108
112
90
145
95
81
122
79
147
97
139
118
133
148
137
134
139
131
169
125
177
130
144
77
96
108
127
113
128
49
115
146
98
135
108
93
49
88
121
128
95
108
77
157
83
73
107
146
95
98
78
100
93
119
141
138
117
100
127
76
145
107
186
151
113
175
102
99
170
122
113
102
118
165
130
86
128
128
89
127
84
147
155
88
107
96
111
95
84
104
163
45
180
131
143
67
68
139
149
119
83
111
115
84
104
144
49
89
67
146
103
103
128
145
111
133
116
131
88
199
149
105
49
128
148
148
98
196
112
122
124
74
95
128
121
100
107
61
127
126
131
104
145
144
96
91
132
83
133
99
54
136
94
158
160
180
94
102
139
49
112
105
157
87
148
144
93
107
125
96
143
143
114
124
95
105
54
127
94
98
101
119
95
99
132
145
117
149
135
119
124
81
108
126
158
107
61
89
87
133
142
131
125
122
150
105
145
125
144
146
151
146
54
143
122
106
128
145
137
81
110
131
102
102
117
109
111
118
49
130
98
105
86
110
115
113
97
149
128
111
156
112
152
111
85
140
95
135
80
113
113
102
82
74
122
103
95
101
108
54
132
120
109
169
82
115
78
128
115
158
115
149
180
146
93
85
142
142
200
156
139
74
135
166
54
132
103
125
148
117
113
123
78
92
90
102
105
137
89
181
102
200
103
186
192
96
135
101
54
95
67
128
130
104
155
100
120
129
85
110
54
107
82
121
108
129
118
130
167
114
81
152
172
54
112
130
194
131
120
100
153
139
118
111
125
117
99
93
142
154
99
86
180
101
94
179
115
83
118
99
99
132
83
54
128
143
116
131
76
196
135
118
113
95
144
93
131
120
109
147
59
68
135
131
145
102
104
112
199
108
111
115
172
74
118
139
87
119
139
107
132
131
169
145
83
93
81
103
177
135
143
163
105
82
100
133
90
112
135
114
54
144
131
127
105
153
114
85
97
142
93
96
86
150
91
111
121
95
68
105
137
102
113
163
108
130
134
61
100
87
131
116
85
98
81
133
158
103
143
125
98
133
126
103
111
156
117
81
169
140
93
117
105
93
123
102
128
113
109
92
82
103
101
114
85
136
138
107
148
129
108
49
140
102
117
103
83
146
102
112
141
116
74
83
177
124
146
49
100
167
65
126
127
128
98
186
125
124
169
100
111
102
158
177
126
87
146
119
59
103
102
125
234
122
152
146
144
107
124
132
65
115
77
116
135
112
148
143
135
125
163
109
123
155
100
95
123
160
84
54
140
92
125
89
130
145
116
158
95
128
91
95
137
95
108
128
105
118
87
113
98
125
137
119
109
102
113
97
107
149
142
90
111
95
120
69
153
180
108
108
94
117
80
93
67
113
94
124
187
119
115
109
129
150
119
137
135
177
127
171
120
110
95
104
92
133
104
160
108
96
104
157
87
124
135
143
158
95
77
146
117
82
157
102
79
92
165
90
145
139
114
107
107
127
82
148
144
161
158
125
108
102
82
120
128
156
162
87
125
83
67
147
100
93
93
124
144
142
120
124
93
103
84
54
157
108
133
140
120
81
84
103
72
147
165
125
123
130
111
83
93
132
139
172
134
106
106
124
81
134
108
59
132
133
93
131
148
115
104
108
135
92
114
116
115
131
96
91
121
95
90
90
96
96
106
127
227
131
186
49
151
120
147
124
163
116
59
146
157
143
125
144
108
123
142
129
164
95
96
122
120
113
95
101
127
147
140
112
87
168
139
138
102
144
161
89
54
85
156
158
81
103
107
148
99
142
122
110
149
76
151
158
101
122
122
163
113
125
103
151
113
98
54
148
106
77
147
126
107
110
133
107
103
109
123
154
157
125
118
115
137
85
104
102
108
113
165
124
54
103
100
94
140
97
138
128
98
95
120
67
194
90
106
69
99
108
177
106
108
73
85
82
73
158
109
151
103
115
84
102
129
76
112
176
111
125
126
150
80
119
98
140
54
108
54
143
107
121
81
125
128
95
115
68
120
146
83
96
102
117
59
100
163
123
109
88
101
99
90
100
98
107
95
144
127
54
150
136
127
121
125
104
133
106
83
103
118
95
102
98
61
169
81
149
59
129
61
116
101
163
138
109
141
95
90
173
180
106
107
106
49
103
113
173
89
128
100
128
95
148
109
108
114
99
136
82
77
102
96
116
118
153
91
75
106
108
102
81
104
105
119
74
88
106
99
86
87
150
113
135
54
112
120
104
102
123
90
126
114
80
85
83
119
180
119
108
115
76
131
167
102
74
141
80
54
115
54
124
105
112
115
102
82
84
141
146
113
102
122
77
125
140
81
103
69
92
93
109
87
131
74
159
113
146
131
146
102
80
137
98
107
135
89
168
179
102
95
95
138
65
103
113
99
196
92
181
150
146
101
112
158
178
162
103
111
154
105
160
157
118
109
123
137
101
143
118
77
81
139
117
138
156
61
96
103
121
102
112
90
135
144
99
81
145
103
131
177
102
77
124
157
148
77
141
193
157
108
121
54
93
101
144
155
130
124
87
101
87
104
136
103
149
125
102
156
180
120
89
110
103
149
108
150
100
129
148
86
89
124
115
125
98
113
156
92
145
99
87
84
78
78
95
131
93
103
114
170
146
152
84
100
108
193
86
138
109
112
148
146
61
93
133
143
81
131
112
110
105
81
119
97
160
128
133
129
69
113
139
122
119
112
90
141
160
123
118
172
80
97
142
91
95
81
93
87
99
144
177
108
73
128
95
132
78
143
94
135
139
138
94
91
86
59
118
128
104
123
74
144
150
111
61
138
54
74
97
54
113
81
132
106
127
77
200
68
158
97
133
90
141
80
148
107
108
112
148
114
119
81
146
116
140
128
114
108
112
106
93
106
95
123
90
88
113
107
98
148
102
71
169
148
115
107
120
107
126
172
81
124
137
54
87
94
112
138
127
144
91
95
78
113
158
160
129
147
109
54
90
166
95
138
116
101
187
133
54
99
133
135
54
152
67
91
95
117
81
162
98
108
105
146
190
146
136
91
127
79
116
106
113
119
110
83
77
143
112
130
105
158
49
125
133
82
114
125
144
108
119
115
82
121
155
114
102
137
85
147
90
101
102
116
111
99
106
103
141
113
158
121
101
128
98
115
160
142
78
73
113
116
143
69
148
154
73
98
177
117
117
102
105
96
125
114
118
108
93
152
94
183
109
153
136
78
132
54
98
109
102
131
151
155
54
145
82
111
120
83
106
144
117
114
192
59
77
54
81
81
202
102
54
131
124
108
143
120
145
133
114
139
106
124
110
160
141
120
87
129
116
104
145
95
85
103
87
136
124
95
149
144
69
140
125
102
102
114
121
119
74
133
61
49
175
102
94
122
90
145
119
98
54
102
84
173
54
161
93
143
116
105
105
115
124
131
82
93
102
110
89
109
122
90
54
118
146
103
54
114
105
74
116
131
158
125
95
142
152
116
104
111
146
54
127
97
108
118
110
125
95
136
114
121
122
147
98
156
137
102
113
118
128
129
103
93
77
83
132
140
148
85
113
108
103
142
127
158
125
218
122
173
80
133
122
127
137
59
125
68
125
119
170
108
102
148
107
155
162
125
76
138
108
115
102
104
148
154
132
112
115
98
155
128
151
105
104
74
122
163
193
137
81
95
118
98
106
131
94
110
117
149
67
98
128
180
122
102
134
148
54
104
138
192
118
92
115
153
131
105
119
133
129
105
96
102
54
116
143
134
152
160
77
81
102
98
54
107
113
101
87
113
49
144
87
140
135
112
109
93
143
106
128
90
139
116
127
142
124
77
100
133
76
106
144
102
135
108
120
146
80
137
127
158
122
105
49
102
102
126
149
116
54
92
165
145
103
154
137
103
108
135
146
98
146
96
124
108
147
102
148
141
49
111
97
92
54
192
115
116
146
118
91
127
106
76
93
81
82
102
139
107
133
131
92
93
89
119
83
59
149
140
108
90
83
85
191
80
138
105
87
98
81
120
82
102
124
184
81
91
54
133
118
82
120
135
54
70
130
91
145
108
148
141
125
107
115
113
143
108
102
128
82
86
94
120
49
100
144
102
107
67
98
62
117
100
161
76
135
98
117
118
95
54
117
177
129
119
93
119
133
161
105
133
102
115
138
123
130
81
139
116
182
138
101
128
102
125
95
112
104
90
99
128
171
154
106
90
119
158
173
141
127
113
108
54
106
157
149
126
145
119
95
133
149
144
96
114
119
112
156
108
141
81
144
134
103
67
74
107
93
108
96
164
106
107
139
90
108
153
168
115
124
148
111
172
155
86
112
119
180
155
156
133
122
118
88
124
103
95
95
120
170
121
54
123
128
103
68
116
103
147
154
155
129
109
148
102
169
116
98
54
70
133
134
98
75
111
98
128
98
114
139
115
126
128
118
95
102
151
91
125
110
120
114
139
102
137
126
160
131
131
103
199
140
146
148
113
112
118
135
75
117
144
80
116
95
106
102
95
147
68
78
113
206
128
98
97
69
126
96
99
127
142
102
54
176
127
168
99
54
139
148
102
157
144
106
59
97
127
116
135
113
102
113
96
128
113
130
68
85
113
87
105
125
112
49
108
128
95
173
147
57
120
145
128
97
90
178
144
108
200
164
78
98
133
153
134
163
69
90
125
90
138
161
112
180
82
86
120
96
95
150
54
90
96
139
133
139
156
127
85
87
135
98
82
148
154
157
106
84
76
105
102
102
133
119
118
114
149
151
101
104
87
108
163
137
122
113
102
107
98
127
104
112
98
100
106
132
190
131
110
54
165
117
88
154
133
72
148
143
139
139
49
131
141
136
105
91
142
122
116
54
110
77
131
121
182
180
92
122
144
135
130
177
150
111
103
100
135
69
134
95
131
54
128
89
122
127
59
159
114
133
115
108
138
141
120
179
143
157
141
84
54
88
108
59
118
97
157
124
104
112
164
116
98
102
119
128
140
76
87
140
147
83
129
59
135
87
49
74
168
127
136
96
137
123
97
54
129
155
138
155
135
111
152
138
141
149
158
130
124
82
83
123
160
156
135
61
95
125
102
163
122
119
137
82
134
74
142
145
90
153
87
120
90
95
111
111
141
110
81
118
108
128
74
81
151
200
128
123
83
131
112
102
132
76
108
153
54
113
108
157
54
106
119
125
142
126
104
108
100
131
113
119
121
95
125
74
54
110
129
68
146
103
92
98
144
97
147
74
93
96
114
158
95
90
129
115
42
150
112
106
120
117
95
83
117
135
100
135
146
128
103
137
155
107
117
102
116
130
84
108
129
179
59
98
102
101
102
92
144
77
84
148
102
102
123
85
115
145
54
49
158
102
110
141
131
95
90
109
101
116
138
112
131
99
144
133
77
163
76
144
119
141
139
142
177
121
104
165
141
99
141
123
101
140
100
83
186
127
82
93
97
95
165
157
45
126
93
77
123
155
109
90
98
144
95
123
114
54
150
140
112
104
76
105
103
76
117
120
120
81
54
188
49
145
98
94
85
81
127
75
119
127
113
144
101
77
141
74
93
113
93
59
54
116
78
93
105
128
107
90
74
134
112
113
83
147
149
149
74
54
78
68
140
85
136
90
109
156
125
45
125
105
154
171
161
151
85
172
113
87
87
103
102
103
102
81
116
102
98
83
91
130
96
54
104
138
125
139
105
95
102
95
54
127
105
88
102
148
129
91
137
54
186
127
67
138
123
108
111
106
95
98
123
132
63
138
140
98
128
158
140
105
106
156
113
85
49
151
136
112
145
113
126
177
158
109
124
120
150
123
103
102
93
142
110
74
92
97
81
120
130
54
125
105
141
102
133
177
153
108
106
186
130
113
118
107
86
200
125
95
95
147
133
78
75
138
132
114
104
105
140
96
98
108
108
143
125
92
133
105
145
93
82
94
105
54
119
93
107
74
75
177
119
143
166
161
165
167
99
54
101
82
95
108
125
54
127
143
108
134
95
126
126
127
96
108
97
98
95
123
148
108
138
67
102
155
149
112
82
125
89
146
156
118
83
126
74
99
173
110
115
105
95
121
114
76
105
96
131
108
54
133
118
155
101
160
119
142
161
113
145
128
83
167
143
73
148
82
54
108
98
102
127
108
103
108
135
90
108
127
118
74
128
127
81
95
144
124
114
101
74
100
132
107
118
102
123
85
128
144
139
67
104
156
101
91
167
139
154
91
121
145
107
98
77
79
106
140
108
118
130
117
146
110
69
142
111
113
101
163
94
98
80
93
113
90
133
96
144
113
108
124
118
90
127
107
132
158
68
173
114
134
96
100
160
117
158
73
127
129
102
115
95
93
103
104
98
95
82
70
132
132
94
108
77
144
128
77
104
148
98
130
98
128
102
117
133
144
109
54
125
107
158
103
134
129
115
87
158
159
116
139
175
89
150
125
86
150
115
121
91
97
94
136
111
206
92
103
98
98
98
145
133
122
67
93
109
116
122
102
115
77
54
108
122
135
110
103
90
194
143
49
99
119
93
74
108
113
135
83
155
96
101
91
109
98
78
116
111
130
125
110
108
102
87
76
106
89
120
115
92
87
167
125
91
81
82
80
148
119
95
98
106
101
108
75
151
102
82
101
133
74
93
106
118
81
135
128
120
116
90
156
97
81
133
100
105
173
123
113
117
138
111
146
179
113
98
119
95
156
148
105
173
134
142
148
54
136
92
90
135
113
86
89
90
67
90
90
83
146
177
133
122
194
159
140
98
109
147
103
77
112
103
98
104
116
108
90
166
168
98
74
77
145
131
124
143
137
108
82
103
138
70
97
150
142
133
115
107
133
108
111
90
104
54
125
54
119
125
135
96
103
150
102
108
54
94
100
106
96
108
122
107
204
82
158
102
144
145
156
78
67
100
100
108
102
137
111
115
93
115
145
115
147
126
155
69
74
103
102
153
159
131
134
148
54
108
74
81
74
113
178
138
54
135
133
114
148
108
104
69
123
158
169
128
170
81
105
89
143
95
149
135
141
146
89
87
82
111
135
146
140
59
54
68
116
204
143
119
104
127
105
151
145
96
105
103
82
90
132
88
139
99
154
144
108
148
77
109
129
108
116
139
108
135
115
122
148
129
121
93
113
139
148
133
102
81
108
54
94
95
128
106
105
133
67
107
54
117
105
98
122
87
140
90
143
148
90
113
103
98
49
103
148
85
225
122
84
149
100
80
74
151
124
124
121
120
100
91
87
93
128
117
107
54
135
111
140
125
129
93
127
91
54
87
113
89
94
138
131
111
200
105
49
140
59
81
168
103
158
124
106
85
95
65
91
89
138
124
136
117
122
82
141
98
96
106
97
94
119
137
103
92
147
54
148
114
102
88
104
179
155
67
125
161
154
169
157
98
98
97
116
114
118
169
86
145
143
127
97
131
165
85
141
61
103
162
169
110
89
131
132
147
140
114
106
110
148
121
108
79
81
126
49
139
59
95
87
108
88
141
94
117
146
77
54
120
101
160
133
97
81
54
99
83
132
112
102
83
125
123
94
124
108
140
108
129
119
132
97
107
96
54
129
138
98
117
92
144
103
103
76
155
164
90
144
161
118
129
104
79
140
92
102
108
114
102
101
113
139
108
140
85
124
113
49
125
91
148
68
128
89
114
184
119
129
87
87
105
128
104
113
132
130
148
137
82
138
97
54
122
108
76
118
88
107
102
173
145
144
85
163
145
96
116
102
144
117
106
171
74
130
127
103
177
79
106
124
95
92
90
108
83
95
49
109
143
125
155
78
129
129
98
153
188
87
111
68
176
133
128
149
140
122
157
122
167
148
95
82
165
103
105
83
108
170
135
131
85
144
117
126
188
125
132
128
127
59
84
68
68
74
88
96
122
133
107
121
106
116
124
131
82
95
162
82
152
137
96
54
130
144
120
133
139
90
106
134
122
70
163
127
116
134
81
149
85
87
138
78
171
125
106
136
87
100
105
148
102
192
143
147
105
157
175
105
195
104
104
107
108
133
119
83
49
120
121
139
145
150
114
80
170
126
168
135
165
111
125
82
61
111
155
86
109
83
141
78
126
130
108
114
54
128
54
114
81
113
117
177
78
82
115
138
124
108
138
118
85
108
95
108
103
148
90
129
108
128
165
95
113
113
133
101
145
117
93
69
82
158
74
159
129
97
127
82
81
135
168
103
54
126
116
100
113
107
133
91
128
95
108
148
159
162
112
54
92
168
162
107
95
146
83
138
111
128
86
179
136
99
132
67
148
104
113
158
80
94
125
108
133
121
90
146
100
98
177
95
98
87
87
163
74
95
99
138
84
130
97
169
108
116
105
114
161
82
129
93
141
114
185
122
102
143
106
145
146
158
102
127
133
142
84
83
103
140
131
148
104
93
82
113
123
119
128
105
123
125
154
153
139
89
90
149
148
101
115
135
140
103
77
124
119
76
54
96
148
111
54
69
115
177
120
119
85
74
128
79
96
67
113
152
70
132
147
147
104
54
83
164
110
115
86
140
101
98
92
90
95
163
74
180
123
126
111
105
77
95
96
148
133
54
118
103
111
107
100
111
111
124
113
107
143
131
146
144
95
128
108
151
100
54
95
95
106
107
151
94
66
160
87
172
126
102
148
148
117
138
189
98
112
83
87
135
160
119
131
112
108
108
199
191
120
134
88
82
128
112
159
102
101
54
179
141
54
77
151
171
78
92
124
144
116
111
123
103
102
90
130
93
112
56
96
112
102
117
76
72
121
96
144
54
133
102
95
160
110
135
119
129
87
99
153
80
84
159
113
113
95
101
111
148
137
90
83
141
113
104
114
129
102
145
137
114
102
105
118
81
87
94
87
163
172
98
83
125
118
93
131
128
108
118
114
113
143
54
126
98
54
54
124
153
77
177
137
100
141
159
85
113
106
110
115
87
120
171
122
198
131
202
139
68
54
107
105
81
80
132
137
95
131
161
59
127
118
74
95
112
147
133
72
107
104
109
159
128
149
146
98
139
116
61
77
125
161
103
120
108
177
113
115
84
83
108
97
129
115
108
93
98
144
117
87
69
78
122
88
108
104
162
74
133
149
114
81
106
81
116
81
126
106
116
106
90
98
118
102
165
113
94
160
95
145
103
138
135
108
105
111
122
107
140
132
115
108
95
108
156
127
107
111
134
74
97
103
74
84
116
138
110
108
143
93
98
78
98
157
129
107
95
128
54
110
78
129
131
54
164
49
61
115
117
131
78
131
106
93
81
102
144
95
131
125
150
122
96
54
170
135
128
107
112
127
143
96
49
109
165
76
76
151
110
126
128
135
134
79
131
127
153
128
138
167
105
124
119
87
143
141
54
97
106
82
111
98
139
116
95
140
145
59
105
134
108
97
105
90
110
128
54
160
196
109
102
166
102
144
138
111
133
140
115
125
104
95
78
127
108
143
99
102
123
131
82
54
96
153
103
105
129
108
120
95
108
77
85
136
54
110
101
80
127
91
136
169
113
137
105
49
102
80
135
119
130
177
158
163
99
110
101
128
130
90
131
134
174
101
84
144
90
90
102
113
145
138
91
97
102
144
158
125
95
74
187
125
102
149
54
130
122
86
133
152
94
162
118
106
123
155
133
95
80
137
133
74
105
108
95
115
98
148
131
94
122
67
134
102
127
114
95
146
130
82
83
130
102
98
140
149
115
200
171
113
112
90
137
157
127
129
67
136
174
133
128
118
101
136
100
174
81
79
107
145
127
115
104
193
85
147
96
118
91
54
99
103
82
49
154
109
98
91
108
128
177
133
82
136
105
100
111
98
114
140
134
126
158
93
165
121
120
81
191
78
87
161
124
80
151
82
170
122
95
142
87
102
153
95
134
146
163
124
147
77
54
108
98
148
129
59
119
113
103
130
158
54
76
122
150
125
120
168
103
108
67
90
144
117
111
103
192
112
106
108
114
143
122
95
135
155
120
161
127
98
119
86
123
120
81
98
76
123
128
125
54
54
125
97
113
76
86
125
135
80
108
127
83
102
133
108
108
108
93
104
226
77
143
138
49
111
79
99
149
147
95
98
151
134
76
117
90
133
98
118
127
54
76
161
95
144
81
116
143
109
120
114
81
101
120
112
126
110
125
114
145
131
145
102
95
76
125
163
108
81
116
128
108
109
148
59
130
87
130
54
124
49
102
91
130
109
54
163
93
67
103
154
150
69
132
106
138
59
74
140
91
103
103
99
146
148
107
126
138
116
134
117
127
171
102
120
114
98
186
81
54
133
172
112
102
126
106
108
95
135
97
54
54
102
140
148
130
148
140
98
152
54
129
144
59
152
121
160
135
136
123
133
108
120
49
102
114
125
114
93
95
133
112
127
156
150
144
77
54
85
96
148
91
54
129
92
118
141
95
102
90
93
87
84
108
90
54
92
150
219
148
102
113
59
92
104
147
96
133
108
95
134
158
87
207
109
106
132
125
98
161
109
121
155
127
81
179
49
113
130
161
117
166
98
120
148
148
154
146
102
112
170
148
49
138
135
125
135
129
93
140
135
81
61
95
111
87
116
101
133
81
74
112
69
115
113
125
116
110
127
132
135
84
139
97
108
104
128
139
132
117
84
95
81
122
95
129
148
133
122
126
126
134
199
67
115
95
113
127
103
77
86
105
103
59
112
117
97
147
138
91
99
139
99
113
105
140
101
74
128
125
135
97
182
96
95
99
78
89
128
119
110
90
105
134
114
91
102
107
81
153
91
179
133
113
144
108
98
108
119
129
122
97
89
83
122
110
91
118
112
80
121
112
155
117
126
100
124
132
125
150
149
165
140
186
135
151
131
147
102
143
90
90
114
110
103
98
74
117
138
113
81
155
131
79
101
135
118
113
137
122
136
67
95
156
102
189
76
85
121
85
95
102
99
61
120
135
100
179
120
169
83
173
102
106
103
130
103
97
141
124
176
143
150
61
110
133
125
125
131
140
128
78
105
95
102
119
119
76
146
114
173
108
163
123
147
91
128
101
123
102
103
105
199
98
168
109
90
120
163
124
129
146
54
115
174
161
114
98
140
122
108
121
124
143
144
103
98
59
89
88
98
101
95
88
54
163
117
59
132
96
129
74
152
88
82
117
131
122
156
61
115
127
113
111
139
132
160
130
125
116
136
179
113
80
161
123
98
148
74
144
144
150
104
116
104
67
129
99
125
154
133
145
148
172
122
108
141
83
54
109
103
125
144
97
162
91
95
139
133
54
132
133
133
87
156
128
110
98
128
127
117
102
120
95
95
142
147
122
103
104
132
117
147
69
85
69
112
145
97
92
87
76
105
120
49
59
137
104
95
116
140
107
54
86
74
136
124
159
98
95
108
96
119
133
113
97
180
154
87
54
131
90
181
149
104
161
99
121
129
95
89
108
153
98
90
67
125
105
145
148
98
108
104
124
126
124
98
68
106
118
81
151
54
125
144
119
102
139
103
83
151
125
54
108
108
77
110
141
173
123
49
138
146
145
54
140
150
132
95
125
130
142
172
158
121
99
144
54
127
102
117
111
142
54
107
103
125
108
98
126
54
128
82
162
87
115
106
122
77
54
131
93
99
61
95
80
110
108
81
179
149
108
93
99
102
96
103
81
186
126
135
59
129
118
91
103
90
124
82
74
82
173
99
54
54
108
76
78
95
110
101
65
108
144
117
132
135
128
119
131
118
129
177
59
92
89
105
103
172
95
143
98
102
133
96
85
113
68
183
123
172
178
121
108
105
117
108
128
116
84
137
114
116
165
87
135
95
85
129
82
120
81
126
143
108
89
161
171
107
105
104
118
122
92
132
112
173
102
131
110
127
169
140
124
107
103
115
142
99
90
123
128
134
100
155
105
95
122
103
101
115
102
118
168
109
177
108
177
109
132
132
90
95
93
103
116
90
127
127
128
121
105
82
122
65
128
115
120
87
97
98
96
97
128
110
106
149
155
161
81
83
152
172
92
68
94
94
144
159
125
128
136
54
117
101
154
109
140
129
140
102
131
97
130
129
107
138
95
85
176
123
127
96
103
112
129
169
165
121
147
131
102
102
114
113
97
103
122
70
111
116
107
82
162
84
127
114
108
98
84
92
98
134
81
87
107
54
165
148
177
102
54
161
54
124
101
105
159
113
104
74
161
144
147
76
83
198
82
200
108
97
84
151
98
49
142
113
122
139
98
94
76
80
165
199
114
87
125
67
123
115
127
153
125
158
177
54
104
128
127
121
145
137
83
140
78
120
59
105
100
54
54
168
163
112
98
120
81
106
180
70
92
78
49
105
84
108
124
156
138
112
65
93
112
74
95
182
73
118
143
127
155
158
128
108
142
126
81
101
54
49
119
113
74
180
91
130
132
127
106
152
59
104
131
109
135
102
88
77
128
122
90
81
149
172
59
62
120
163
146
113
181
83
92
76
108
76
74
113
79
156
140
147
118
67
98
114
126
103
128
78
116
181
125
159
95
86
138
144
108
137
122
107
108
104
127
163
105
115
54
142
95
101
118
220
97
135
188
147
97
143
179
125
146
59
103
100
92
144
98
139
80
116
142
99
109
127
120
49
91
155
137
59
111
191
54
49
59
132
160
59
144
83
133
123
78
119
119
141
104
99
119
103
92
112
118
148
87
108
103
59
113
117
144
129
74
126
81
118
113
122
133
105
120
143
135
105
93
122
131
107
123
105
126
116
90
123
110
175
105
80
107
114
180
108
59
129
149
151
139
80
131
76
76
54
179
80
127
77
144
117
106
127
99
158
54
108
104
98
139
150
133
128
148
54
113
120
139
110
110
92
145
121
159
162
101
85
108
120
54
144
97
146
148
109
200
129
116
120
113
107
133
113
124
106
158
126
178
144
149
54
74
113
141
113
82
105
122
130
81
69
179
106
76
102
154
87
120
144
143
94
111
80
161
102
121
121
107
95
165
68
113
116
119
102
145
108
136
54
106
76
108
163
188
80
49
158
90
80
130
127
54
151
108
82
61
103
135
96
100
88
113
177
161
130
126
83
112
103
102
68
96
131
92
49
129
143
85
131
108
116
206
96
150
190
133
102
115
102
87
107
134
108
102
54
103
126
108
117
138
125
135
131
108
102
98
161
95
115
140
92
104
89
102
123
84
138
145
152
120
122
141
102
107
82
158
124
119
108
125
158
121
108
83
125
54
117
103
154
143
113
140
156
159
155
95
115
73
121
49
99
120
109
138
77
98
59
110
111
82
67
129
106
54
128
103
54
112
123
78
134
114
108
149
99
116
105
133
77
131
116
81
75
127
99
175
94
134
110
93
131
124
141
93
138
146
107
98
115
153
119
160
90
108
98
134
184
112
143
101
125
98
125
113
133
86
87
76
54
114
54
80
132
108
103
133
123
74
100
111
104
104
144
153
128
93
132
109
104
95
90
162
119
125
181
119
106
108
157
68
177
108
113
129
132
161
95
110
109
120
120
177
139
95
104
110
141
171
112
177
81
146
80
54
138
136
104
108
90
161
82
81
59
111
103
169
110
108
144
141
79
161
116
131
107
125
131
131
145
100
63
87
59
140
121
140
54
108
78
98
95
110
90
124
108
93
95
95
138
134
177
81
122
153
101
130
106
123
143
59
219
105
113
125
98
54
103
185
115
83
122
181
96
90
134
131
59
100
125
118
140
114
118
83
107
139
154
104
148
112
57
138
91
135
154
81
114
102
106
49
158
162
127
120
205
108
118
98
122
137
127
153
109
147
121
87
128
131
141
96
103
133
186
95
116
80
108
98
176
83
95
168
124
54
131
54
109
69
89
78
77
125
127
108
142
121
133
107
95
105
82
202
83
95
147
108
177
92
95
107
116
98
151
146
131
167
133
107
108
134
103
93
140
125
54
134
161
68
143
106
135
177
93
103
108
138
54
148
106
106
104
115
105
104
96
103
54
109
112
82
89
105
118
54
97
93
108
133
105
129
158
108
90
145
127
104
141
110
81
111
111
120
89
99
105
133
54
98
121
113
133
122
102
95
103
81
115
133
85
127
120
112
141
97
140
119
95
114
105
185
93
112
156
93
95
129
158
108
108
67
135
127
145
92
124
150
192
126
107
118
146
120
59
107
109
94
159
121
141
97
74
110
116
102
161
115
107
90
144
140
148
124
74
123
70
92
113
77
127
117
96
97
125
141
149
54
92
148
106
137
78
95
98
140
98
90
150
87
113
96
140
96
83
120
96
103
102
144
150
129
90
74
102
133
102
131
125
178
154
108
179
85
99
83
54
145
95
129
160
198
125
125
98
129
157
95
130
128
162
90
77
116
42
143
111
125
113
157
81
109
106
133
96
149
90
137
120
102
87
67
122
118
98
116
188
102
67
84
126
135
140
135
215
95
168
108
128
123
110
135
106
97
149
136
147
113
54
91
110
59
141
90
87
148
96
69
117
164
109
191
112
161
103
142
108
80
103
143
139
96
152
140
135
82
42
123
95
108
68
77
94
112
123
125
74
150
112
124
109
104
125
149
125
54
94
102
127
81
116
82
102
87
78
134
127
149
159
158
128
155
109
110
148
119
118
135
115
82
122
123
115
134
132
133
91
54
160
155
114
153
124
139
131
75
135
54
141
158
87
184
157
93
133
104
112
67
101
105
80
116
83
144
106
98
124
145
133
123
107
140
76
134
92
95
144
144
161
81
135
104
83
146
98
122
111
150
141
125
73
141
87
135
86
131
143
101
93
127
109
139
120
149
141
129
127
81
125
99
148
127
126
76
133
147
94
81
127
107
99
140
137
150
135
82
133
93
150
162
127
136
151
98
93
82
95
155
137
148
82
138
107
118
102
102
127
135
144
97
107
147
117
125
152
108
146
105
142
70
98
82
116
105
81
91
160
102
139
111
110
131
194
87
115
117
108
142
78
129
117
139
129
140
103
164
103
115
137
96
95
105
123
128
131
84
54
105
123
127
118
133
146
137
75
145
96
89
113
85
130
98
102
136
133
100
121
144
119
59
156
175
190
87
98
63
165
101
109
102
97
68
118
128
98
81
67
132
126
81
133
106
120
153
93
94
120
120
88
102
109
74
125
95
115
68
144
103
97
78
145
107
135
78
133
82
169
106
144
91
143
114
87
127
98
112
113
98
89
97
116
54
76
114
139
126
126
117
172
105
90
101
76
133
128
98
127
132
129
129
168
54
80
113
54
99
121
118
91
108
147
107
98
121
145
106
107
181
76
180
138
54
89
98
109
124
103
98
106
103
120
110
105
108
118
59
54
113
133
93
105
130
141
109
113
133
161
106
158
120
77
127
91
140
143
138
90
112
156
160
106
148
93
165
108
110
133
130
80
96
84
76
107
113
108
115
95
98
93
104
102
158
114
133
149
122
98
67
81
97
109
122
123
86
111
145
104
139
59
154
123
106
115
160
133
106
139
98
78
146
117
131
83
119
93
128
54
133
147
119
102
103
102
103
98
105
95
135
170
105
76
98
98
108
128
102
167
172
67
110
131
163
138
90
149
130
146
76
67
117
153
113
107
159
100
77
94
73
143
103
81
54
84
132
82
76
144
89
137
194
49
117
155
106
92
127
103
103
109
106
122
54
81
142
94
81
146
146
124
132
129
90
123
136
180
149
105
107
96
135
77
104
132
95
118
169
129
98
125
114
79
107
122
108
84
157
110
118
125
90
89
102
118
123
114
90
153
126
105
144
143
120
59
103
153
102
121
119
98
115
107
123
110
127
99
94
125
116
113
160
102
125
121
81
83
130
120
98
99
76
76
103
121
102
82
100
107
142
128
134
147
92
124
102
98
106
168
89
164
115
104
111
143
113
54
133
124
147
162
115
118
125
180
54
85
127
100
59
95
141
79
54
168
147
101
151
98
77
139
130
162
54
94
127
76
114
108
81
100
86
100
189
81
82
166
121
131
158
54
81
102
76
110
98
108
93
99
138
164
98
126
94
102
107
141
93
100
132
131
59
122
158
61
127
133
112
117
125
121
102
196
125
142
107
139
93
124
81
76
143
108
165
116
162
109
87
108
93
132
68
82
94
87
125
87
166
85
84
177
148
109
87
103
189
149
155
116
155
124
125
152
128
112
175
105
76
76
99
139
165
113
108
144
49
61
135
80
90
96
133
105
103
112
137
96
93
120
188
114
90
133
95
82
98
94
91
179
144
76
59
74
99
109
140
103
126
116
107
122
148
103
137
140
112
98
144
45
81
95
108
59
130
131
131
145
184
106
106
54
137
79
82
103
148
145
128
82
93
136
172
140
99
81
76
114
102
108
78
97
165
108
170
115
158
127
140
127
102
161
144
146
134
106
87
103
105
97
103
120
93
166
78
59
132
87
95
103
172
110
170
107
131
115
127
111
98
131
129
96
147
108
122
118
161
125
108
128
136
80
105
138
87
132
175
100
129
186
110
74
110
111
103
143
127
125
107
95
146
124
129
103
49
90
128
133
98
67
98
135
108
128
141
102
141
118
126
182
143
114
99
112
184
122
54
95
144
150
174
105
165
54
132
98
117
191
121
155
108
116
101
135
108
106
158
144
152
112
143
125
156
162
96
133
110
148
77
61
146
102
85
61
121
163
97
139
140
132
99
119
161
97
90
93
131
122
147
59
107
144
118
124
68
114
101
105
189
153
112
111
115
117
127
152
59
76
131
123
98
119
155
160
54
125
128
140
123
113
144
164
110
105
96
96
98
127
96
102
147
137
114
93
138
95
118
124
49
126
120
89
142
165
76
104
125
102
106
54
74
103
110
144
123
80
148
116
157
61
117
87
142
116
128
85
154
87
143
128
106
197
128
112
122
134
54
152
116
93
103
133
125
179
137
168
141
129
90
129
146
99
103
98
80
90
103
78
77
96
140
108
93
125
54
135
77
95
61
84
90
91
133
137
148
164
49
76
98
161
136
87
81
82
79
171
109
194
133
114
169
87
140
72
141
137
77
77
82
128
81
132
175
92
138
87
108
138
112
127
86
87
125
148
140
103
81
99
90
145
127
93
108
102
144
134
82
74
84
95
120
113
150
128
191
125
168
49
139
65
95
54
116
54
171
90
90
125
129
117
126
93
127
81
143
112
119
88
106
98
140
155
102
162
91
163
54
68
120
59
91
95
136
159
91
84
133
103
130
81
128
98
124
87
122
116
82
113
108
146
65
98
54
112
54
116
216
98
93
83
127
142
81
102
108
106
117
150
123
146
54
120
123
113
111
122
105
125
83
140
76
128
87
76
54
103
80
106
149
59
115
100
108
129
105
116
177
111
91
61
97
139
152
87
127
105
113
59
121
91
114
121
108
114
102
140
82
107
148
79
152
132
173
74
96
145
109
143
111
115
158
151
107
83
117
191
54
69
102
151
111
69
93
88
114
148
95
131
111
69
117
102
136
116
148
121
59
82
145
148
67
118
54
110
99
179
142
134
97
135
90
92
112
75
158
145
91
81
121
137
110
112
138
148
69
113
85
117
110
158
145
168
133
69
78
119
105
105
136
110
122
190
149
113
81
108
105
144
100
95
99
102
108
110
126
133
81
105
149
112
93
193
82
144
155
144
165
54
92
102
54
147
114
96
95
126
98
99
121
101
130
102
144
132
188
140
121
191
158
148
159
118
106
135
119
119
133
98
92
151
108
124
128
54
99
102
116
104
102
98
113
127
76
81
140
146
119
97
59
145
86
98
161
54
85
149
133
114
78
119
109
115
105
143
108
82
176
99
128
133
138
133
119
115
125
150
94
76
142
89
149
130
68
81
111
102
129
80
133
120
109
134
108
125
106
133
99
76
120
107
95
95
178
144
121
104
153
98
108
62
129
131
106
129
147
139
133
96
157
74
133
115
135
68
111
130
139
118
163
76
107
83
127
90
135
132
143
105
119
112
113
93
162
59
96
195
131
108
110
78
148
117
164
97
54
95
105
159
106
113
135
59
72
78
132
91
96
81
120
125
130
106
127
82
97
81
118
90
93
74
85
87
102
88
135
101
81
154
87
141
101
123
149
139
123
153
127
123
133
152
59
83
101
57
105
119
137
54
125
99
83
97
135
124
81
94
54
103
161
67
87
103
155
59
158
145
112
103
134
143
101
74
151
128
115
110
139
77
116
180
99
102
121
92
105
140
76
108
93
119
128
82
118
113
162
133
108
165
138
115
79
161
193
105
127
96
78
151
140
105
136
101
81
150
83
87
93
125
116
132
120
129
128
149
74
105
131
160
109
146
120
111
168
119
122
133
160
92
104
121
115
97
163
85
98
123
90
142
149
131
122
95
99
87
113
74
151
92
98
112
67
107
160
82
142
74
104
59
126
86
78
119
132
95
108
123
115
145
158
102
95
113
108
87
165
108
80
122
102
108
102
93
132
125
92
145
54
88
141
153
113
76
153
96
156
129
148
74
119
115
85
98
140
108
102
70
109
140
113
96
114
121
165
105
93
74
67
119
153
103
146
96
141
118
131
123
102
95
100
95
103
150
104
98
82
126
121
123
124
99
80
104
83
144
88
103
144
85
101
137
128
127
102
102
148
191
144
54
59
153
90
81
109
118
74
108
127
110
79
108
94
98
111
129
139
128
149
122
74
143
54
69
118
96
137
80
86
82
95
127
84
97
125
127
76
59
49
119
92
81
106
133
115
160
101
83
113
83
81
118
116
92
152
96
96
147
158
155
81
145
121
54
118
61
54
139
129
74
131
127
154
90
90
95
103
110
93
102
161
54
132
54
92
143
134
111
125
107
155
138
135
123
79
135
83
119
102
98
167
91
92
145
140
148
106
118
149
133
113
92
59
118
125
155
163
95
186
125
125
111
145
77
155
148
122
140
90
127
59
89
106
131
49
84
120
143
54
59
100
138
91
83
89
138
122
102
126
116
99
104
106
114
115
129
141
120
86
78
125
103
77
81
111
138
98
76
111
120
143
145
151
125
106
82
116
85
139
181
85
137
148
121
168
106
80
100
102
125
83
77
91
61
131
116
110
153
106
117
67
120
180
77
95
164
115
97
186
83
148
142
141
118
149
117
131
215
126
108
93
144
91
110
180
156
164
95
121
133
69
122
161
129
168
126
127
78
157
61
118
117
92
143
104
90
106
59
126
113
112
103
72
111
168
143
161
157
140
152
81
114
117
175
133
162
120
144
162
114
172
54
69
149
59
80
113
114
177
109
90
81
113
125
101
133
98
194
136
74
129
104
54
120
149
177
108
158
85
151
113
113
99
163
138
98
84
145
122
217
177
132
160
102
179
140
74
117
98
93
83
87
131
79
91
117
115
119
113
143
115
119
81
77
168
116
127
110
87
102
128
198
118
113
97
138
144
113
193
180
81
177
102
90
116
91
108
140
125
101
147
132
115
144
90
137
139
140
49
137
117
145
54
79
74
74
130
118
95
148
146
140
128
123
54
119
98
196
126
92
100
116
144
99
114
112
94
116
143
122
108
137
103
127
125
74
149
173
114
94
102
59
93
146
95
150
123
155
96
118
79
66
171
98
135
54
93
98
115
105
177
107
133
54
101
131
112
117
109
162
126
123
81
81
87
83
102
87
150
83
130
59
143
92
116
158
78
105
69
93
118
103
98
117
76
131
109
156
108
74
67
72
102
111
67
54
59
143
125
140
125
132
128
144
108
99
67
102
142
135
82
111
130
159
81
100
141
123
147
98
82
102
124
67
49
93
127
177
94
119
103
117
54
102
108
104
115
140
109
84
139
105
132
143
126
54
123
103
169
112
102
105
143
54
125
111
54
84
82
54
101
67
154
85
146
112
144
106
85
152
117
143
110
154
148
83
113
116
124
108
160
134
82
102
89
74
101
54
113
103
96
129
135
104
98
123
83
146
177
141
109
195
90
49
86
54
141
99
91
165
105
120
120
113
161
166
115
158
98
80
128
89
128
113
146
119
74
160
115
98
90
156
143
191
113
117
110
129
164
120
158
146
111
111
112
141
97
148
144
87
123
113
91
194
90
74
132
106
59
141
106
137
158
81
110
103
105
103
129
54
125
82
96
67
81
101
129
95
59
59
78
170
112
124
104
121
123
105
49
74
97
147
84
114
81
94
102
127
108
54
118
59
118
140
133
108
169
98
151
105
118
120
163
99
95
119
143
115
129
170
79
112
102
90
102
87
95
81
103
129
59
146
45
100
197
98
100
89
54
96
120
103
49
69
80
77
101
189
96
128
96
54
118
93
87
81
128
77
102
122
57
116
144
54
98
103
141
124
96
146
109
98
102
74
118
103
157
103
113
106
105
117
79
110
139
108
133
107
108
124
103
91
113
121
59
104
99
108
120
90
122
97
122
96
144
109
97
119
100
105
138
125
77
108
115
124
136
112
129
90
83
117
127
134
102
110
102
144
69
54
103
171
128
128
120
103
124
155
95
129
125
141
154
103
106
81
79
93
98
166
69
101
146
126
98
124
107
131
119
144
102
133
147
134
68
76
125
78
54
102
103
102
133
107
93
122
86
102
120
123
98
195
104
67
108
108
131
126
49
102
148
113
106
95
115
78
200
125
127
113
87
87
127
89
186
106
105
128
148
110
100
109
59
102
98
131
101
115
76
135
147
76
123
108
78
98
61
154
167
131
96
148
96
183
165
125
132
174
108
95
67
136
99
76
88
156
120
104
134
93
94
144
216
164
77
81
143
140
130
81
168
113
99
94
161
73
121
170
85
54
151
173
82
74
144
158
113
157
132
106
54
125
135
105
126
68
143
108
155
104
154
131
115
116
117
118
157
111
161
76
109
97
138
157
86
54
83
122
111
148
105
82
103
81
93
127
115
110
76
154
69
95
131
98
77
81
148
83
104
145
77
102
90
81
118
128
91
120
81
136
82
159
83
108
108
113
82
112
101
102
173
98
164
136
115
54
113
95
108
119
116
123
124
109
134
116
108
106
164
149
108
98
108
116
124
161
95
81
132
109
106
144
119
80
144
116
99
124
122
77
109
108
102
134
76
54
125
118
132
168
120
116
91
102
202
86
106
142
113
76
138
148
115
113
148
95
117
108
75
90
102
103
153
81
98
137
89
91
95
67
126
135
169
119
121
112
177
108
133
123
130
105
95
152
131
139
74
132
143
117
100
140
127
121
156
110
110
163
126
167
181
135
108
126
138
104
125
128
108
86
102
144
121
59
54
83
131
153
169
54
108
98
148
134
155
135
90
100
95
150
161
82
120
72
84
140
103
105
168
105
82
87
76
146
167
131
139
95
98
138
105
117
74
179
113
102
122
122
49
135
131
108
134
148
119
86
93
103
95
129
146
120
145
123
98
112
94
82
99
123
108
54
131
95
119
166
120
163
160
139
87
91
138
120
133
115
137
61
95
131
92
129
116
113
127
117
144
59
141
95
91
108
123
125
82
123
96
54
106
54
102
145
110
105
90
128
153
105
145
76
82
126
149
173
180
125
131
95
95
110
130
96
77
80
124
142
131
59
146
77
87
95
89
103
121
68
108
113
135
111
77
90
138
80
123
119
113
95
98
110
112
155
105
114
177
69
113
129
59
140
76
115
87
144
118
119
80
97
54
76
102
146
109
147
90
120
54
140
117
93
129
91
127
98
123
88
121
99
96
169
98
108
131
83
175
76
107
105
110
93
126
94
131
163
109
68
148
103
106
145
147
103
94
74
106
113
108
87
149
147
106
125
114
144
101
128
95
189
103
124
106
150
61
123
78
129
88
146
124
157
92
144
107
54
103
183
111
125
102
124
147
163
95
158
141
83
136
144
112
150
128
107
105
143
103
76
113
135
108
146
118
87
131
102
59
174
127
139
82
150
133
74
91
74
97
165
149
149
108
160
184
127
130
83
83
92
105
141
133
116
125
91
177
108
103
105
144
104
95
125
133
77
171
139
152
120
70
81
127
54
59
90
210
135
124
126
69
74
69
115
108
121
129
141
80
76
110
141
154
168
122
156
103
102
117
92
96
54
87
95
95
179
119
110
100
105
198
91
106
102
59
95
156
88
125
144
155
67
164
143
138
153
133
115
98
148
117
144
94
85
96
121
121
145
106
102
122
74
103
98
110
65
169
146
145
112
96
149
122
87
98
149
123
143
138
143
76
96
112
128
81
151
86
156
158
127
129
135
95
106
105
111
87
151
82
105
184
176
74
175
83
68
111
114
156
130
144
108
110
92
106
89
173
132
83
156
109
196
109
123
96
102
131
144
114
135
148
90
146
61
123
113
61
135
159
94
125
49
158
109
146
114
177
76
81
108
113
112
152
138
149
99
112
77
218
163
95
134
123
108
131
83
90
103
103
99
118
143
134
99
95
121
94
128
139
87
111
142
102
184
104
157
120
134
103
83
213
142
135
139
127
107
135
103
133
110
95
49
115
129
111
87
94
107
124
87
104
153
102
83
157
105
138
80
98
138
136
125
112
123
124
158
78
97
105
158
110
154
54
95
176
158
108
127
77
96
100
145
119
61
150
161
118
94
103
120
146
102
80
54
139
184
106
155
109
85
139
107
78
155
74
98
85
165
103
144
127
101
106
101
139
115
59
108
105
142
108
103
144
103
59
74
150
95
74
123
102
103
105
129
87
163
125
119
115
167
173
103
103
149
165
142
108
133
126
82
99
74
148
82
98
119
183
101
74
142
93
123
49
107
112
108
118
193
141
125
92
91
99
133
172
74
95
104
152
142
136
85
73
128
82
133
145
125
131
82
154
116
122
74
115
90
158
122
80
54
125
74
54
165
140
106
169
158
95
119
90
59
95
123
162
61
132
144
132
54
100
124
107
131
148
201
54
125
54
133
106
113
147
111
108
54
74
139
126
76
165
132
98
117
158
103
77
87
145
93
100
82
117
81
149
93
94
54
59
80
67
148
177
148
107
78
147
49
114
100
105
142
114
113
127
105
151
108
131
130
78
106
87
140
76
133
147
94
126
78
137
54
81
108
95
125
98
119
102
102
168
112
91
155
118
76
108
93
110
125
74
112
89
87
102
177
110
54
148
177
49
124
59
110
102
54
90
159
125
126
54
108
110
125
158
81
149
148
142
98
54
84
144
124
148
110
108
122
107
132
93
81
81
146
131
139
111
90
90
101
167
95
112
180
121
69
94
106
146
141
103
89
153
125
126
178
121
139
83
151
85
108
103
146
141
129
96
108
95
114
140
149
151
103
133
118
84
108
139
112
172
112
127
144
148
106
95
123
93
128
92
97
96
76
130
108
128
158
90
108
106
83
95
97
103
149
68
110
125
96
102
115
108
137
103
102
112
129
162
49
137
138
142
108
125
216
95
129
88
123
72
61
141
125
110
141
54
83
119
114
93
83
108
149
95
147
123
131
116
97
147
101
125
121
118
95
118
74
103
139
103
100
128
137
194
91
116
200
131
113
91
79
106
102
103
123
90
106
90
115
82
116
82
116
102
83
62
95
148
124
109
133
49
115
102
133
144
108
120
144
81
127
169
113
133
143
131
167
102
102
135
131
200
130
140
96
122
89
90
145
120
190
134
111
134
125
84
107
106
90
101
59
107
92
128
88
70
82
112
54
98
194
107
125
49
54
92
118
124
145
158
83
116
79
103
133
103
156
95
68
98
94
54
90
94
103
118
54
147
98
98
91
127
112
74
156
90
54
104
96
139
94
143
100
83
73
74
166
156
105
59
81
54
108
45
147
128
103
98
90
135
123
105
90
120
101
107
102
86
114
111
175
165
85
185
118
128
141
173
105
118
100
126
59
149
121
109
78
133
61
110
124
69
97
123
161
150
118
135
139
80
80
122
127
100
100
140
103
127
157
113
85
109
95
151
102
119
151
113
98
148
119
77
83
167
90
86
83
103
105
54
158
107
115
103
121
81
82
159
100
120
49
157
101
154
164
142
98
104
159
196
95
166
113
89
113
84
128
110
143
125
149
146
54
54
101
128
108
108
116
130
165
117
140
139
98
91
54
118
101
98
106
68
113
95
151
143
127
128
149
129
120
142
49
111
135
96
112
132
120
59
98
76
54
172
107
98
118
92
49
141
128
87
207
127
137
99
102
118
88
81
104
85
105
88
103
111
147
146
77
133
49
148
138
98
130
77
104
84
126
164
125
102
130
160
128
132
148
87
106
103
121
136
87
147
114
112
151
121
107
59
102
125
176
101
100
134
49
99
145
90
98
54
103
80
125
139
133
119
101
81
135
115
59
138
139
78
108
139
179
87
83
115
70
87
100
102
110
123
161
91
54
143
163
131
125
103
125
122
74
69
148
80
76
128
127
49
143
90
102
83
69
119
67
108
108
132
102
49
101
54
49
96
108
108
103
126
68
172
119
150
54
81
104
127
122
140
102
125
103
143
131
98
114
95
103
118
122
119
121
158
191
127
148
91
98
134
108
134
133
82
105
193
108
146
103
117
97
128
87
123
92
140
140
133
94
95
96
108
91
94
136
114
127
97
125
95
137
161
107
125
119
160
59
125
109
111
108
119
106
106
139
108
154
102
49
175
115
148
128
155
95
124
54
97
181
134
74
169
141
97
101
95
102
96
127
84
147
108
145
131
108
74
95
100
135
126
87
86
125
83
118
145
170
103
106
81
59
68
99
65
133
153
95
105
160
148
129
108
125
104
165
79
80
187
123
148
76
97
89
74
160
134
158
104
95
77
107
169
96
105
99
87
54
105
90
145
146
98
137
102
54
87
121
117
140
126
81
98
109
90
152
69
95
95
74
116
102
123
99
91
110
99
90
100
103
82
69
112
105
89
92
122
54
133
103
74
159
108
127
151
92
160
169
119
99
149
95
132
78
128
94
146
193
169
81
103
101
141
108
130
117
106
76
150
133
54
115
59
133
103
168
141
115
145
107
74
103
87
127
142
54
108
108
94
161
102
105
134
138
130
99
108
133
54
121
101
95
98
108
54
114
77
107
111
72
149
171
155
93
148
138
172
83
87
102
79
109
67
96
180
82
74
118
165
100
120
123
108
162
74
146
173
127
90
138
129
102
136
87
91
129
110
93
77
91
85
95
49
161
127
112
135
93
74
89
127
147
178
45
112
159
93
124
90
108
161
125
145
119
153
107
67
140
123
62
85
155
120
123
135
125
130
148
146
84
115
99
138
76
95
155
144
148
119
89
90
90
124
97
116
115
161
101
120
102
95
113
148
128
152
106
103
82
117
190
80
119
79
106
110
113
103
144
123
125
119
166
165
106
81
78
160
120
59
127
141
81
141
85
110
120
115
108
179
136
87
153
108
132
111
130
140
129
107
133
185
54
119
105
83
85
102
102
105
145
113
87
86
129
117
61
86
98
155
105
141
157
110
137
127
127
158
145
54
113
54
80
77
119
137
96
98
150
114
108
93
108
87
131
74
82
91
125
151
157
93
85
129
133
103
108
87
136
79
106
165
103
137
145
117
93
113
108
59
182
125
135
127
156
78
90
112
118
67
109
143
83
87
146
106
106
54
155
74
160
69
54
100
155
140
118
142
110
124
113
98
102
107
129
143
148
118
54
87
161
152
113
160
93
68
97
54
49
135
165
145
148
77
108
68
152
153
122
81
76
89
69
96
116
109
54
144
110
93
138
90
113
134
111
135
125
161
112
54
177
108
104
78
118
83
123
148
115
134
54
157
106
113
103
113
116
98
97
101
120
106
108
141
87
160
113
108
177
145
125
54
163
147
124
90
112
229
49
114
75
103
85
73
96
117
82
109
127
125
112
87
150
134
114
138
119
80
104
140
151
123
96
117
107
54
108
177
135
151
140
153
143
144
159
134
138
82
67
163
124
107
118
148
107
129
164
98
81
81
137
96
93
88
109
92
129
130
97
168
127
143
113
124
74
153
54
94
73
194
131
139
138
90
103
115
119
92
93
81
108
105
78
103
118
140
54
87
148
94
102
150
216
108
79
140
76
92
154
117
89
120
132
123
108
99
141
139
54
98
54
109
77
83
129
181
157
146
112
173
148
136
118
79
85
137
145
102
96
81
116
108
78
98
111
177
142
104
144
103
124
115
137
127
146
83
97
110
93
49
165
163
148
115
114
163
128
54
104
118
81
95
105
136
79
109
97
133
152
123
161
95
103
157
113
185
98
120
122
96
139
78
174
100
133
150
131
111
61
116
78
120
123
130
149
158
177
95
119
148
83
132
102
103
121
117
101
68
107
104
89
150
133
81
127
158
54
148
97
54
122
113
98
143
98
121
134
102
181
74
82
96
177
97
192
83
167
74
131
120
110
76
128
90
148
101
75
96
142
102
102
141
145
117
108
93
106
108
74
117
126
162
164
95
111
85
162
140
113
87
82
146
93
148
81
167
142
151
139
126
98
103
135
98
102
74
87
125
105
155
144
128
120
173
98
101
65
82
54
106
92
131
122
114
131
122
137
190
128
127
101
131
102
116
82
111
132
133
187
102
143
108
127
106
90
91
102
118
96
141
154
138
142
110
128
128
128
76
78
143
91
54
81
92
93
79
105
143
95
141
74
146
103
161
102
105
95
98
110
109
82
88
98
106
99
83
104
127
69
112
104
103
144
154
100
100
99
54
123
120
144
108
113
95
82
180
143
105
149
163
145
148
114
144
106
89
117
83
95
151
93
67
98
54
105
168
101
113
104
123
149
136
49
107
115
59
131
173
142
139
122
74
179
114
78
84
128
135
136
113
94
88
156
116
143
129
96
126
67
147
82
133
148
90
59
54
81
82
93
68
82
98
98
87
79
95
113
117
49
82
102
54
76
160
108
65
144
93
132
148
79
129
102
126
106
89
147
154
81
151
146
83
143
146
79
98
59
59
113
80
140
112
98
91
78
113
99
110
159
135
96
161
103
113
148
123
178
118
113
125
109
169
142
95
146
97
114
98
144
54
141
178
89
106
115
139
59
104
95
128
128
133
106
54
118
103
102
145
95
103
135
97
54
181
141
115
77
102
67
123
103
108
128
104
134
102
100
104
148
105
142
160
150
54
141
128
144
77
146
116
89
185
115
119
82
139
111
138
122
146
112
112
128
127
101
119
54
107
97
93
154
97
96
81
67
127
110
120
93
83
191
100
127
54
172
103
111
127
83
127
112
121
95
187
125
98
54
98
49
118
99
133
114
87
118
133
124
118
69
119
161
114
121
95
103
177
96
143
137
119
140
92
68
128
95
72
81
110
132
154
98
104
92
102
105
130
105
139
103
100
95
108
127
95
104
106
96
168
128
93
80
54
96
96
67
112
146
96
175
108
181
103
54
146
109
91
148
108
120
95
120
147
129
94
165
96
139
118
141
146
131
121
79
161
76
65
131
113
128
179
101
106
128
98
86
107
128
110
115
134
87
146
164
93
82
96
102
174
91
110
124
117
111
59
144
155
143
118
89
69
76
119
133
143
119
65
75
129
93
131
95
95
106
109
131
118
111
110
125
98
120
134
103
140
98
102
103
106
137
136
54
95
107
112
97
92
108
168
164
108
138
49
124
140
146
134
127
125
119
131
93
137
124
161
49
129
122
112
102
113
110
113
143
151
148
102
81
87
147
149
140
200
139
105
54
78
107
171
114
87
82
106
97
75
126
77
168
134
106
131
141
106
164
136
139
116
102
87
148
127
125
140
142
161
128
103
100
148
98
116
122
98
77
107
78
124
105
117
124
164
97
82
144
133
139
125
96
54
95
121
148
127
145
88
110
83
120
102
194
181
76
103
76
135
108
73
109
107
119
113
158
94
151
128
93
95
77
106
110
150
129
81
133
99
161
107
120
129
87
116
121
67
154
154
140
102
131
119
131
104
156
163
98
118
54
107
108
77
129
115
95
161
81
160
140
134
108
93
141
134
128
122
125
143
78
98
103
150
102
117
99
137
73
104
96
93
95
107
116
76
145
108
100
90
70
141
87
91
150
147
132
108
92
131
102
148
157
121
113
49
54
130
139
151
106
151
115
82
97
99
132
90
54
180
103
147
110
124
82
147
93
143
116
125
105
118
123
177
135
102
143
113
130
102
102
148
106
127
95
96
117
108
128
80
81
102
98
96
105
83
145
143
125
186
98
70
106
126
139
139
85
144
108
139
120
167
122
102
129
118
119
98
120
98
224
121
98
105
137
110
125
113
114
49
113
95
157
103
114
131
68
143
117
125
102
107
111
180
96
105
115
157
119
81
115
98
152
134
148
89
98
93
150
77
59
116
129
143
149
126
108
87
165
115
127
98
95
132
107
100
59
136
169
105
174
104
141
74
173
111
218
157
111
133
76
120
59
131
87
104
172
54
98
54
121
132
139
161
184
109
104
96
61
102
135
127
115
135
102
113
194
119
76
110
96
124
54
59
49
158
120
150
107
54
124
123
132
76
93
76
80
105
108
107
157
114
93
97
127
146
83
93
145
77
139
106
93
141
102
54
152
131
124
96
100
77
87
113
138
106
93
90
165
117
108
98
102
54
109
54
157
148
106
140
83
102
119
171
121
54
112
200
86
158
119
124
126
82
49
96
105
123
147
131
95
87
121
143
135
113
96
49
122
103
114
157
90
88
83
81
109
122
191
125
54
119
59
54
119
102
69
77
158
130
85
106
76
163
90
133
150
83
127
104
87
89
74
129
112
125
135
165
115
123
175
113
157
92
118
127
140
101
141
54
149
102
102
74
134
102
170
124
54
114
123
141
83
59
128
137
128
131
76
139
102
109
99
153
136
98
49
101
108
144
123
126
120
140
125
59
146
135
69
165
121
81
113
105
125
135
99
119
140
67
135
108
108
102
145
107
118
74
91
101
144
94
101
114
109
105
108
149
151
120
158
97
102
105
100
129
119
112
76
54
90
118
81
131
59
128
133
100
125
160
61
81
102
87
131
54
98
89
164
85
100
128
162
99
119
68
123
121
82
150
108
82
139
132
91
126
165
91
80
96
171
113
98
142
130
83
137
126
148
54
97
59
95
104
125
78
82
102
107
141
126
120
102
90
103
177
123
146
80
114
115
114
157
107
103
117
125
77
142
124
144
127
158
151
129
125
76
102
190
91
132
76
98
79
134
164
130
125
95
92
112
128
81
140
130
91
54
73
49
103
134
93
123
102
95
148
137
73
131
149
113
109
135
130
177
79
90
139
76
129
92
177
116
123
83
54
81
134
98
130
124
175
95
163
95
95
96
98
78
151
78
114
102
99
144
90
85
145
114
152
129
138
107
108
112
180
74
108
137
77
63
95
110
120
106
133
102
123
100
113
122
145
125
134
122
85
90
127
93
128
108
126
126
69
143
89
105
136
131
160
147
74
61
133
160
145
91
118
130
96
154
146
98
141
120
131
160
174
93
108
99
160
114
97
59
54
129
133
127
120
129
97
118
115
131
114
90
123
107
102
87
83
134
98
154
123
95
98
133
126
67
113
96
86
95
137
150
103
77
102
49
86
129
86
139
132
137
100
112
67
97
94
54
102
54
74
59
93
102
97
104
98
73
95
117
82
147
103
54
143
109
103
102
137
95
90
98
102
67
161
59
108
92
133
131
123
98
144
201
148
145
106
73
177
108
105
95
125
93
158
119
125
139
110
117
77
87
102
95
160
103
113
133
133
95
104
128
59
87
118
120
139
54
177
107
54
104
102
109
79
108
128
84
59
149
138
83
127
92
107
98
132
83
100
139
108
92
103
133
134
125
155
155
105
90
143
135
105
121
141
95
115
133
148
74
82
84
79
99
119
74
93
112
102
118
99
119
108
165
112
81
150
99
103
54
115
136
54
131
92
123
104
174
134
133
159
141
112
124
129
106
94
148
87
132
133
87
161
126
103
106
98
69
68
85
145
74
111
125
83
102
95
122
100
91
172
142
106
104
125
49
135
185
106
81
98
159
145
154
112
102
141
67
135
113
54
160
122
150
164
131
131
57
132
100
125
157
129
116
68
76
143
90
132
59
101
172
134
141
93
73
153
143
81
129
148
93
137
113
99
77
100
78
122
82
176
140
129
169
102
105
117
98
110
74
108
54
98
133
142
133
145
105
97
93
135
77
133
168
191
131
139
54
107
118
96
102
49
180
122
152
151
140
81
153
114
111
119
98
82
111
145
143
129
191
102
151
136
105
111
49
76
74
74
138
95
194
79
101
120
82
105
149
149
157
157
144
108
49
104
110
98
82
90
128
103
125
158
139
133
145
59
161
112
67
103
105
102
96
176
131
98
133
85
119
156
178
105
91
120
114
134
105
95
147
142
113
73
154
133
120
108
216
95
133
127
138
89
139
156
143
166
165
139
133
96
179
147
54
115
105
49
102
159
108
88
135
125
218
152
88
54
126
140
126
154
115
95
102
122
135
54
181
133
127
91
102
157
125
141
65
54
74
74
131
148
148
108
125
128
162
95
125
133
81
150
87
186
117
87
135
102
172
131
105
90
93
100
141
54
140
98
116
125
85
144
101
164
90
111
81
106
184
134
102
69
95
144
103
70
105
107
125
105
136
102
141
141
99
80
132
133
98
128
102
96
77
110
149
137
77
76
125
112
116
100
117
200
200
98
106
173
95
130
141
87
100
54
97
101
83
81
96
156
68
121
102
150
135
140
146
147
147
49
135
119
123
145
77
85
122
140
108
97
108
95
80
125
135
120
148
102
102
122
162
79
78
123
97
113
91
128
103
73
125
112
128
192
59
133
120
87
98
103
119
114
93
108
112
113
54
131
100
78
135
102
49
130
103
109
123
128
49
59
127
118
119
74
133
109
132
124
91
124
78
129
132
127
110
131
125
113
123
70
145
107
114
76
98
124
85
98
104
144
61
72
199
129
69
160
99
54
125
147
54
145
110
128
144
125
79
105
122
76
131
104
107
125
113
116
102
108
131
102
138
96
115
78
98
100
103
116
87
118
148
115
118
108
109
77
121
133
103
94
104
138
135
122
135
160
110
89
59
106
80
141
145
132
180
112
97
113
54
54
139
102
95
148
193
108
97
123
138
131
115
103
139
155
86
107
129
119
133
112
159
54
80
87
95
125
94
122
133
77
125
110
140
103
87
127
93
101
108
177
81
102
143
115
105
112
123
164
85
121
118
108
186
139
102
144
131
95
97
77
81
109
107
135
129
172
98
95
116
122
138
104
154
96
135
108
114
93
157
156
126
102
103
116
137
97
132
155
124
134
127
108
125
90
102
108
85
54
163
154
49
115
87
131
110
118
125
109
100
102
126
105
92
96
49
177
70
68
97
94
102
90
116
83
135
54
95
99
211
167
132
118
121
110
95
138
113
120
54
102
94
74
123
125
146
183
160
159
133
131
119
135
135
124
124
85
112
107
101
54
115
137
174
90
95
128
117
83
95
123
108
85
130
137
95
88
179
125
156
74
134
155
103
101
103
113
90
111
107
113
112
102
133
109
49
128
96
135
128
129
115
92
115
118
98
85
148
85
125
180
115
96
85
91
102
120
78
54
74
123
125
143
108
108
180
59
118
93
122
144
107
163
123
99
213
130
214
138
156
104
78
109
148
123
49
98
98
67
183
68
112
142
82
98
139
85
191
135
54
172
145
100
76
127
159
106
127
107
75
95
123
141
134
125
105
150
96
95
119
74
160
124
136
131
176
92
89
96
143
80
104
67
180
159
140
114
93
86
131
186
92
94
132
139
129
76
153
69
112
161
178
143
91
82
65
108
92
119
95
132
54
108
102
102
177
124
74
121
103
79
114
115
127
76
132
137
109
116
113
131
166
131
54
49
128
82
78
102
98
49
95
91
128
144
144
74
54
135
116
105
103
102
122
192
90
158
132
95
147
173
136
82
145
97
104
85
121
137
74
147
122
84
136
105
74
161
161
147
123
108
103
122
67
103
102
112
85
74
90
166
157
54
150
154
148
81
143
99
81
123
54
113
87
107
141
126
140
80
179
108
95
108
160
120
93
81
127
83
133
69
84
86
54
78
146
87
128
125
135
132
180
59
110
139
156
194
90
138
137
128
140
153
96
102
160
104
102
76
125
108
151
139
108
131
130
117
111
100
68
87
90
137
119
111
95
78
175
103
148
139
132
162
61
95
124
144
136
112
111
113
134
97
115
117
143
95
137
206
127
95
79
157
170
137
105
137
101
129
109
49
114
77
101
95
54
54
107
91
172
133
105
131
74
124
135
149
114
103
173
117
113
172
112
113
78
49
157
140
105
115
170
97
97
113
102
85
105
87
82
101
109
204
115
90
200
104
131
54
67
110
188
146
117
145
133
107
127
59
103
79
135
90
93
154
104
153
135
97
88
131
74
134
158
123
125
142
99
131
100
68
108
105
79
134
143
95
122
192
131
121
165
139
134
128
127
119
133
102
89
81
127
102
120
54
144
112
150
177
119
155
97
137
42
135
141
159
152
168
132
83
156
146
82
100
98
85
82
133
139
121
129
170
84
122
107
131
49
45
93
130
123
120
141
103
110
82
104
113
107
122
98
193
114
190
133
124
117
128
110
108
153
127
90
127
54
107
135
87
122
172
180
149
83
107
153
129
105
83
97
144
150
94
81
107
115
116
74
113
54
67
80
135
117
146
122
59
98
85
96
82
123
108
167
71
165
141
143
125
129
74
158
107
160
96
170
102
122
95
119
137
143
144
98
151
129
113
93
59
148
113
114
67
107
54
81
135
146
130
54
152
108
124
106
137
54
110
129
73
102
93
102
102
126
127
141
148
81
78
54
88
145
145
102
107
93
128
148
103
131
107
97
129
92
122
78
77
81
76
126
78
98
150
126
54
140
85
135
90
104
104
113
177
104
116
120
177
96
168
78
98
147
117
118
100
162
140
123
145
97
109
104
59
103
106
108
165
144
102
120
143
134
125
161
214
98
54
108
93
102
59
102
118
127
224
95
102
185
109
143
138
77
159
83
131
129
163
141
110
152
82
161
115
128
156
138
145
108
102
89
126
134
99
81
96
121
69
74
119
148
61
134
140
146
143
83
134
107
128
145
107
108
76
128
102
49
125
148
80
93
83
91
131
96
123
49
116
123
98
83
173
158
113
94
99
89
116
96
113
124
179
125
74
118
105
87
143
103
61
117
130
84
113
112
147
88
105
101
106
154
151
101
77
139
143
106
133
143
106
104
173
168
87
133
128
133
103
130
49
144
135
102
160
100
125
80
90
135
74
86
122
95
127
95
90
139
148
61
146
125
158
158
137
135
170
91
91
89
98
127
109
136
133
125
141
101
118
98
151
190
108
128
170
105
102
110
146
125
191
90
125
139
110
102
54
82
80
140
81
113
59
88
135
125
103
133
101
80
111
158
82
110
151
172
134
96
151
143
95
113
108
101
91
147
98
110
61
96
87
114
162
127
107
160
139
109
81
120
103
88
113
163
59
135
103
120
54
107
96
133
94
82
112
49
101
95
125
118
102
122
102
103
133
127
161
167
89
104
140
108
63
163
160
132
116
111
116
102
74
82
146
95
110
130
68
118
160
80
163
82
82
54
107
100
125
116
98
127
106
148
137
143
136
81
157
49
133
140
93
112
98
140
106
166
112
104
81
136
148
161
54
54
80
98
108
82
131
103
125
102
75
97
97
139
125
102
97
95
126
92
139
133
49
108
106
142
152
198
87
100
84
137
61
191
101
103
93
110
104
89
69
151
143
77
130
98
157
116
128
77
131
134
83
113
123
87
154
138
113
87
140
173
115
163
100
104
154
98
73
143
104
94
125
103
156
153
134
190
125
79
115
83
118
103
109
128
105
110
140
54
141
91
145
118
134
82
98
80
108
87
129
82
101
180
131
77
81
77
103
82
94
137
95
96
105
102
83
139
90
152
146
93
114
120
127
134
54
113
107
108
134
161
123
200
87
173
113
61
148
85
98
116
116
125
105
97
104
92
133
102
141
95
49
125
91
147
74
133
112
130
103
87
121
143
74
169
68
80
70
120
108
102
80
133
127
184
145
123
107
94
113
196
90
78
101
103
142
119
152
119
95
107
173
153
121
135
129
146
91
111
148
98
130
82
108
127
77
87
107
139
77
67
82
108
114
124
117
103
98
170
78
89
102
98
49
81
128
133
126
135
97
127
120
143
148
96
98
172
105
78
144
104
117
83
96
117
138
98
90
102
125
135
94
102
146
85
104
85
119
108
130
54
119
200
96
142
150
87
123
118
69
108
142
80
108
126
93
88
153
177
69
123
95
94
111
129
125
67
95
155
104
111
54
82
125
115
61
116
125
137
107
128
118
122
92
54
76
150
97
120
104
130
81
82
163
143
133
128
78
105
158
76
117
113
54
82
104
159
107
134
116
135
123
125
87
101
132
143
106
104
167
109
82
70
97
179
107
91
102
105
139
126
54
122
165
148
128
144
138
87
152
106
113
79
102
137
91
101
77
90
146
91
73
67
120
84
190
107
81
143
76
158
82
76
118
102
120
103
120
163
158
143
105
179
117
106
119
143
90
135
116
96
108
103
115
98
107
101
161
61
119
95
121
120
102
127
204
119
158
152
91
91
115
96
95
54
143
152
145
77
151
112
113
111
146
149
127
146
74
158
108
115
108
113
98
102
146
146
106
103
98
82
82
54
96
100
156
98
165
106
61
133
133
125
96
54
95
150
117
91
67
104
155
147
95
103
148
120
103
185
115
91
166
87
85
136
86
125
115
112
117
133
122
100
128
108
89
103
104
112
92
59
95
49
120
133
102
138
108
86
109
145
103
120
135
151
177
59
85
146
147
77
80
95
135
143
132
97
137
145
164
146
136
73
124
140
130
96
150
88
81
113
142
103
100
120
81
82
188
100
125
142
159
102
140
107
98
103
118
54
135
126
137
118
115
104
120
93
125
113
124
164
123
103
112
148
143
143
93
133
96
122
128
118
140
106
146
133
95
95
87
156
106
145
68
104
165
125
114
103
111
177
144
115
102
142
98
149
103
103
54
112
128
115
104
67
138
113
119
138
111
132
117
95
54
143
98
68
111
102
143
119
147
125
95
96
123
161
119
83
184
108
158
91
76
82
139
117
108
113
131
154
125
95
61
81
54
126
115
84
107
98
114
97
87
123
103
143
148
49
87
156
126
182
131
129
148
79
131
149
106
93
111
114
96
107
168
54
107
82
95
171
119
113
105
112
113
113
80
132
139
112
78
151
74
142
49
151
139
139
125
142
119
81
129
169
93
161
91
111
153
131
119
95
115
69
82
125
139
121
122
100
90
145
85
96
90
107
117
78
156
87
138
112
94
153
128
61
146
95
141
148
146
105
119
131
117
123
49
114
90
111
76
177
54
77
93
82
129
145
121
119
112
155
154
105
135
101
61
130
110
81
95
90
140
146
103
104
126
98
125
154
128
135
138
74
112
117
82
115
127
125
117
54
95
135
89
97
145
108
122
76
95
72
102
110
124
141
87
177
82
131
103
49
132
54
100
103
135
112
121
169
70
82
146
104
148
113
87
102
186
108
107
135
165
123
125
102
136
87
98
110
116
178
117
98
133
122
116
134
93
76
110
119
115
87
125
54
115
83
144
147
131
95
104
104
125
77
97
112
143
172
152
130
105
103
172
67
81
108
138
139
90
125
138
90
133
69
160
119
151
155
82
54
76
108
179
115
177
97
112
83
116
54
135
109
159
140
78
148
178
131
102
81
168
123
146
54
113
100
122
130
109
112
118
98
134
96
120
134
125
116
147
80
95
141
104
154
89
98
67
88
191
124
185
108
76
87
112
93
77
123
98
74
117
94
102
106
104
84
102
106
127
143
146
125
87
126
143
106
136
108
68
120
98
105
93
115
77
147
99
138
153
74
144
139
116
107
160
171
99
83
152
81
98
166
103
82
106
135
108
128
117
156
95
54
146
118
165
102
118
120
49
78
49
137
171
119
138
155
112
102
106
158
103
85
85
182
135
74
102
148
82
183
98
113
76
96
107
122
133
124
118
137
111
175
96
108
133
105
113
108
127
131
112
87
191
124
131
73
126
74
98
116
114
109
118
122
131
151
204
105
61
80
49
170
105
77
93
112
98
114
135
182
81
133
54
136
105
102
135
120
156
158
178
67
102
85
87
110
129
101
107
110
74
90
118
134
97
107
117
127
118
161
147
177
54
148
169
109
131
106
91
123
126
131
138
166
122
98
112
95
103
123
140
109
162
101
98
78
123
129
127
81
117
99
102
49
108
107
95
68
126
101
102
172
135
177
107
59
161
102
76
156
134
143
153
114
139
78
120
138
91
147
149
99
135
112
138
106
103
140
123
54
125
160
89
97
78
99
101
95
155
102
81
83
102
96
189
113
127
69
135
91
85
82
114
106
104
85
91
122
141
119
102
105
134
125
138
131
173
54
143
96
128
108
107
92
109
93
115
83
59
118
106
108
104
86
140
102
123
139
102
115
93
128
130
112
140
117
160
123
100
143
129
87
151
102
104
154
103
193
103
98
95
87
149
177
116
61
75
117
76
146
153
85
121
97
86
145
118
93
98
137
100
106
108
155
68
112
131
94
170
108
83
138
81
124
103
135
114
105
128
117
148
128
77
140
118
125
104
136
141
158
110
81
121
108
94
119
133
121
54
116
85
143
95
194
115
77
123
127
147
102
117
135
106
97
133
107
61
74
120
121
123
158
135
82
68
118
102
90
126
170
115
102
121
82
140
141
124
135
150
113
163
146
81
200
87
59
100
153
157
186
94
82
123
185
130
107
90
101
112
111
129
142
96
105
95
90
82
105
105
101
136
106
146
161
103
95
95
129
86
112
96
125
92
110
98
99
124
54
89
98
97
102
129
113
112
125
76
77
121
146
108
77
68
93
135
96
129
93
120
80
108
134
125
139
138
127
186
108
131
151
162
91
124
85
157
123
96
96
97
113
111
125
98
191
101
49
84
136
128
95
108
139
87
69
198
173
138
100
80
77
145
149
54
133
113
125
172
143
123
139
151
140
93
45
135
54
137
235
123
93
106
112
109
113
102
119
167
96
187
54
87
175
98
78
98
54
74
93
125
67
115
102
117
113
121
110
130
114
145
127
155
131
97
117
145
82
85
144
77
122
74
96
146
77
102
108
148
123
91
122
159
89
90
78
92
72
103
145
109
94
54
97
77
131
87
178
98
100
188
121
106
122
112
49
91
133
98
105
114
126
95
136
105
92
107
95
125
125
120
97
139
81
95
94
95
95
120
127
87
104
111
65
113
139
95
105
118
99
113
107
110
127
122
124
77
100
76
102
128
106
141
125
95
96
135
49
127
116
118
127
81
141
103
142
165
105
143
80
90
106
83
122
124
121
54
118
115
161
121
93
105
97
133
102
124
59
97
101
154
86
94
68
106
113
93
123
103
143
82
145
168
76
141
124
106
93
93
122
103
128
124
54
95
160
126
115
108
90
151
108
89
188
93
102
134
54
83
113
92
135
104
161
61
144
134
74
106
94
161
122
141
79
105
108
124
42
115
102
115
142
78
150
69
127
84
133
141
118
145
158
103
132
92
85
100
61
77
169
82
142
81
73
139
77
81
132
143
103
99
95
120
106
179
134
93
98
132
115
105
139
115
103
143
92
98
119
99
155
142
147
105
76
77
105
145
99
100
128
82
138
54
49
173
54
98
90
113
122
166
80
76
145
108
87
150
125
54
135
140
113
100
82
161
113
143
134
108
164
118
132
95
93
115
128
102
140
102
103
54
143
107
183
148
45
98
155
150
114
159
135
127
138
149
139
68
92
149
148
59
54
102
118
108
135
103
105
98
98
122
127
95
125
107
123
113
156
123
149
127
131
148
143
98
45
76
136
110
135
145
49
106
115
175
150
90
98
54
103
102
151
178
157
103
115
95
91
97
106
70
90
127
139
136
49
96
49
143
102
207
122
103
74
90
125
102
95
133
98
113
67
96
133
121
95
103
95
114
54
54
163
120
101
118
141
106
74
78
100
135
86
158
124
103
171
134
157
126
96
131
75
95
102
158
59
142
126
54
140
165
125
80
153
95
74
92
87
116
125
141
85
90
108
109
87
154
177
82
125
98
132
148
80
67
123
136
95
103
132
103
81
125
79
158
146
164
177
102
111
166
76
102
101
54
95
49
122
118
154
102
177
147
61
78
96
67
111
82
143
165
120
163
119
111
108
113
112
78
82
137
113
153
174
76
82
108
118
122
103
120
67
99
124
183
142
135
108
148
98
106
54
158
67
90
54
139
163
128
141
141
117
108
98
59
130
149
122
128
111
125
133
76
134
105
105
98
113
127
78
146
120
139
158
138
141
87
95
102
139
80
148
154
81
103
103
155
92
158
108
124
100
135
49
95
113
90
125
172
49
141
83
138
119
145
107
79
54
92
89
102
78
116
98
128
116
49
117
179
82
90
54
54
83
144
144
108
104
177
61
160
110
95
130
177
92
81
54
109
83
96
81
80
116
95
116
89
160
134
54
144
110
143
81
155
91
140
158
84
82
125
95
138
84
139
143
116
95
78
105
115
157
148
119
54
144
159
119
147
102
130
134
128
107
131
118
98
153
144
78
156
103
124
90
103
59
122
106
112
142
132
49
106
98
118
107
115
77
119
95
156
106
194
193
91
138
132
97
161
104
123
157
119
67
160
145
98
54
177
125
81
129
88
125
137
115
143
144
76
118
141
76
93
120
155
118
125
133
89
99
130
76
85
134
165
154
113
147
145
123
138
150
110
147
126
96
150
141
161
123
169
153
139
113
108
116
54
102
85
87
116
128
95
147
82
123
146
160
80
125
95
136
102
99
164
127
120
95
77
138
104
120
102
90
136
111
146
108
94
103
151
147
91
79
113
113
81
128
49
113
102
129
74
126
150
103
108
149
74
134
114
127
114
143
127
126
59
186
76
105
95
78
161
95
156
68
149
81
95
104
85
123
90
138
81
161
80
119
115
102
113
96
168
105
102
59
49
218
161
107
123
127
172
74
177
114
109
126
118
105
98
79
153
91
128
83
125
100
154
138
133
133
140
88
93
126
155
103
49
87
136
90
124
76
125
77
61
112
105
110
94
148
191
122
98
94
133
104
117
128
164
139
49
121
99
118
143
113
183
119
74
156
139
144
98
127
149
78
127
120
132
165
102
143
148
109
128
81
113
132
206
93
102
90
67
97
227
106
139
143
90
77
108
103
123
78
125
54
129
109
125
119
128
141
95
136
102
135
98
93
98
133
135
146
81
131
113
117
197
61
113
97
131
108
125
106
67
129
157
128
151
103
127
171
108
113
114
98
122
108
103
153
161
108
116
95
125
138
98
100
98
151
108
74
90
91
139
143
103
102
150
81
107
95
114
102
95
111
83
135
121
102
80
132
114
59
106
160
127
194
133
89
111
126
112
102
65
155
143
76
69
80
154
140
115
91
152
154
131
103
101
87
116
54
123
189
102
140
110
102
170
119
127
98
122
96
98
232
76
95
103
118
122
177
123
177
141
101
112
145
180
161
97
148
54
177
81
134
123
122
59
168
54
75
78
95
85
160
119
102
54
136
131
87
91
81
59
87
49
143
49
160
90
103
114
125
85
120
93
128
54
168
128
177
165
95
81
116
124
162
128
133
137
114
87
177
133
54
152
103
101
136
95
132
132
133
129
184
73
82
118
137
121
101
135
99
85
112
140
121
83
173
115
96
128
89
101
116
143
125
96
74
103
107
77
81
103
98
112
112
157
127
135
79
102
153
125
131
158
132
125
141
81
124
127
104
87
111
161
182
99
156
128
161
162
115
144
106
133
148
117
140
86
158
135
90
155
157
134
88
102
156
148
143
90
124
83
179
142
90
123
95
112
98
122
98
67
164
126
70
54
133
108
103
150
156
153
101
122
101
78
74
113
99
59
95
143
113
171
143
151
125
142
150
150
150
122
87
157
82
200
102
180
125
113
108
124
115
54
105
54
122
103
93
149
93
105
88
97
106
155
127
133
101
102
167
120
177
150
113
129
84
113
102
125
98
139
159
85
96
68
134
141
123
148
113
132
143
81
144
108
129
81
125
93
59
82
54
113
199
128
152
116
108
141
129
103
146
119
133
102
90
112
115
151
77
100
59
91
100
114
83
105
158
120
83
128
95
165
115
109
148
134
78
143
116
84
153
95
116
103
85
108
86
49
124
135
81
54
115
146
81
148
149
120
83
106
117
77
87
94
123
74
143
145
102
67
136
122
80
103
108
112
94
70
95
177
130
105
127
114
128
125
163
72
118
124
109
98
147
102
85
158
103
141
132
99
123
77
116
77
133
109
99
155
140
54
139
144
118
93
140
169
96
125
101
102
96
97
127
108
108
78
132
106
132
148
76
130
116
88
106
135
113
107
88
104
122
97
98
127
118
157
185
144
113
113
92
169
49
111
158
76
118
120
127
74
96
118
161
148
96
102
133
74
83
98
127
133
102
117
106
82
95
54
106
177
137
90
74
102
182
122
171
128
113
99
127
123
102
94
59
119
143
102
78
120
111
95
92
69
113
62
142
200
165
170
111
116
102
99
147
150
82
105
120
144
87
117
107
131
89
134
113
100
90
103
157
158
115
97
72
188
142
128
152
135
123
117
143
133
110
100
74
104
126
147
82
163
123
141
144
122
108
121
105
133
98
101
88
127
54
90
118
145
54
115
143
81
101
132
200
87
95
90
67
61
54
115
99
136
107
59
128
122
123
114
90
158
132
106
110
80
118
54
102
118
198
118
127
95
123
79
90
101
103
150
161
113
155
54
113
128
132
99
84
49
149
158
134
133
113
128
118
131
139
123
81
110
113
68
106
131
125
118
123
142
105
103
120
92
49
122
127
95
82
87
108
158
125
114
85
147
62
120
117
76
125
108
135
159
100
83
54
131
126
108
115
123
139
147
133
107
126
80
150
141
127
54
146
161
126
94
96
54
103
147
93
54
114
87
61
133
138
149
117
102
104
108
103
141
133
152
59
94
96
108
108
112
161
95
131
146
110
54
105
102
80
87
93
143
126
118
91
134
112
108
120
134
108
122
141
105
155
154
82
105
98
111
144
87
120
96
107
90
127
127
82
141
105
118
74
175
149
103
151
105
98
83
173
111
141
67
85
97
131
101
68
98
136
102
115
159
77
85
133
117
158
116
116
112
129
148
168
81
117
133
92
108
138
113
158
69
163
109
140
148
100
101
148
105
86
162
69
81
97
109
105
178
140
110
82
125
135
78
49
54
194
135
89
139
76
167
85
171
152
129
141
124
90
133
106
98
162
196
143
102
102
108
127
141
171
85
102
77
98
119
122
144
94
116
87
65
136
125
54
89
115
117
176
96
116
45
120
125
122
74
102
128
62
154
119
95
54
166
102
99
177
67
129
131
193
101
125
102
127
61
145
67
83
123
141
76
114
92
67
112
121
115
102
115
87
108
135
110
141
74
74
110
154
146
123
164
54
167
182
128
92
162
73
102
95
126
74
94
129
107
117
134
140
112
108
131
135
144
102
105
119
131
61
125
96
162
84
124
90
153
100
103
107
110
93
54
143
138
118
188
151
113
128
148
106
96
198
111
91
75
122
149
102
61
95
84
54
126
124
140
123
150
139
54
136
61
138
121
171
128
134
87
90
54
179
147
132
98
150
96
166
130
108
134
112
146
77
101
129
200
95
95
97
61
74
135
128
151
124
125
95
100
98
110
129
137
155
135
128
103
100
148
103
135
147
108
98
98
158
140
98
116
77
139
114
122
90
87
90
105
140
146
95
92
133
95
136
124
104
150
115
95
124
114
121
140
135
141
121
106
125
161
169
77
145
119
102
143
145
131
144
93
102
109
54
108
108
100
108
133
135
127
108
100
104
122
139
127
91
49
112
97
96
112
132
127
140
153
86
137
191
93
108
155
54
109
160
190
103
80
69
67
121
127
106
140
96
129
59
102
128
92
103
87
93
102
120
85
108
120
177
136
216
94
132
148
93
54
93
128
70
91
108
127
128
165
85
113
106
118
98
97
93
110
101
106
156
125
90
81
146
108
141
153
127
112
128
95
177
95
127
135
102
161
154
79
102
49
142
98
123
114
148
90
131
92
135
103
121
124
111
67
118
98
49
148
99
95
135
104
120
134
108
113
116
160
135
98
157
67
102
116
137
78
153
103
124
91
112
148
119
115
139
159
114
108
142
144
104
103
49
179
105
95
95
103
89
110
91
148
87
108
141
101
114
87
59
103
145
156
156
135
95
110
98
163
123
156
127
68
101
108
108
131
127
121
127
124
111
97
97
61
164
95
102
119
149
95
109
133
145
172
127
90
82
101
90
84
103
130
122
96
82
149
107
141
85
103
123
104
108
95
106
143
92
121
115
62
94
103
135
118
75
95
103
113
74
77
82
54
139
76
54
135
132
147
95
97
155
134
143
137
108
145
77
128
86
148
145
91
128
200
160
102
97
177
179
74
126
158
106
116
103
88
125
149
123
108
115
140
95
158
59
90
145
144
121
116
117
91
73
154
143
83
143
148
94
103
82
68
106
89
54
174
153
93
123
54
157
116
125
103
147
54
108
98
169
98
180
81
131
102
101
108
79
110
114
119
102
87
110
108
123
157
67
137
108
102
102
75
114
107
169
116
81
91
165
128
93
103
148
135
134
54
119
143
145
90
115
119
115
126
112
141
111
171
168
96
108
144
148
135
54
110
118
155
132
113
145
106
74
131
101
81
131
111
161
118
124
190
125
119
131
102
89
121
87
132
102
76
103
115
95
95
141
177
103
133
114
82
191
128
122
85
109
152
76
107
97
59
134
140
101
107
86
128
191
143
129
102
114
127
130
108
108
103
143
87
90
105
99
127
87
102
116
122
108
156
157
102
67
133
109
180
87
54
82
78
108
148
113
81
106
128
102
168
137
104
110
89
97
108
140
164
116
108
98
165
94
103
177
103
120
109
135
112
106
95
128
87
67
95
76
146
85
122
118
157
165
128
102
102
143
61
103
78
135
116
108
118
102
120
118
143
163
123
149
119
54
156
144
151
162
103
91
100
129
113
134
165
92
157
49
145
98
117
146
90
99
146
67
173
94
139
89
129
67
95
98
127
179
131
54
148
141
163
123
68
95
73
113
158
100
143
148
61
108
87
167
102
118
83
90
163
87
90
120
127
97
87
156
147
72
140
134
112
90
59
76
104
81
140
103
67
96
104
109
153
147
119
107
78
122
118
128
87
127
186
45
99
113
82
134
81
54
73
127
98
207
129
91
83
96
136
101
147
113
61
54
142
144
83
101
96
100
103
108
120
151
168
113
87
99
126
125
94
115
107
168
158
98
116
148
126
105
93
105
98
134
121
95
87
135
132
125
54
146
85
103
129
147
133
103
123
119
112
106
109
91
74
145
184
125
81
145
162
145
121
89
120
133
108
84
135
127
77
74
125
81
121
169
78
90
101
136
133
133
85
87
95
94
112
131
97
125
96
168
96
59
177
176
141
140
118
140
67
163
108
128
134
73
131
89
182
106
131
124
125
103
93
122
93
149
132
113
175
127
118
149
89
144
128
132
83
93
107
103
133
157
120
113
99
97
131
108
76
129
146
131
116
95
95
102
132
108
113
112
150
96
139
114
87
97
128
103
99
137
82
130
83
145
79
114
146
128
117
116
145
61
161
158
101
80
128
102
138
153
102
90
104
102
120
125
74
98
109
49
95
155
145
81
136
180
118
95
116
107
104
74
93
105
102
104
92
102
94
138
103
106
125
158
96
90
133
133
135
127
139
123
127
124
167
77
87
83
177
156
54
104
81
104
128
161
99
165
83
167
151
108
159
125
54
126
120
77
104
124
234
123
85
120
74
132
74
114
80
68
106
133
112
110
86
106
160
95
103
78
109
131
94
149
107
136
131
140
117
205
131
122
123
108
80
123
169
88
131
106
54
97
112
107
54
165
75
110
85
108
110
87
105
106
125
139
119
140
107
140
54
122
167
135
84
74
97
130
153
108
136
144
59
70
54
179
108
74
115
81
132
77
114
129
152
115
144
135
176
181
54
108
140
116
123
153
93
131
125
115
131
102
54
108
49
106
108
170
122
134
76
138
144
125
112
96
102
101
126
97
102
102
106
131
108
91
143
95
146
90
81
49
108
119
122
139
103
138
92
98
101
115
94
117
98
168
81
125
128
61
82
96
161
98
216
98
79
89
54
157
103
59
123
159
119
102
172
137
144
152
116
110
118
86
119
139
144
71
97
96
132
90
92
135
117
160
112
92
131
127
76
123
69
127
69
125
70
84
142
130
87
148
108
92
125
112
126
49
129
54
108
59
54
128
131
78
144
145
155
77
138
118
70
111
103
129
129
84
122
162
113
95
190
133
113
83
147
123
106
120
54
77
136
98
112
139
54
79
119
161
87
90
110
82
115
102
82
120
59
156
134
102
68
143
151
78
130
115
54
148
54
155
81
118
125
158
116
121
92
99
92
54
110
81
101
113
121
104
139
118
54
120
116
91
131
105
54
102
49
93
149
77
109
100
119
96
148
96
82
172
107
110
129
101
49
90
128
138
170
149
80
182
126
148
76
148
135
98
102
167
94
67
126
108
73
59
110
82
114
99
129
96
147
108
54
96
138
120
107
108
123
133
54
54
68
115
81
101
112
59
82
95
87
128
112
87
111
49
54
54
98
118
102
113
93
118
54
122
128
103
99
125
123
49
102
59
54
61
135
120
145
148
119
107
119
138
90
173
95
98
122
100
98
94
103
87
112
121
108
93
179
118
83
222
74
127
153
144
91
124
154
85
120
151
105
106
59
93
128
123
103
86
54
83
54
105
97
106
95
138
61
124
112
54
124
143
153
54
211
54
119
110
102
130
184
142
122
102
90
125
87
54
96
69
132
110
102
54
113
106
89
98
149
134
113
137
132
94
108
54
124
49
137
59
99
99
161
115
119
95
108
113
168
117
91
109
76
103
139
96
164
133
107
136
109
122
78
179
107
128
137
129
105
139
138
90
102
94
133
137
150
120
130
109
133
115
152
109
87
87
136
122
135
154
104
112
105
158
125
124
125
135
87
160
97
119
112
133
135
143
144
87
98
110
90
138
94
135
131
140
139
110
125
54
89
145
103
70
90
148
115
98
123
123
93
74
90
116
94
125
118
110
76
111
88
134
105
152
87
87
98
107
122
158
140
135
123
87
150
123
113
129
129
74
102
78
180
93
103
85
103
125
104
148
182
125
157
93
95
133
76
119
97
128
112
104
107
123
133
141
144
141
115
110
89
120
180
123
163
90
139
95
125
93
108
83
95
125
97
123
96
95
130
141
105
125
96
101
166
115
98
143
93
104
91
136
95
116
94
120
97
76
120
112
186
146
125
146
122
110
108
83
124
165
149
128
90
110
198
167
142
98
158
153
138
148
102
125
179
178
98
165
81
95
134
128
135
136
83
90
87
151
108
95
125
83
137
103
138
116
114
134
116
81
131
113
131
156
105
103
98
146
139
122
81
117
103
86
95
54
102
157
93
90
133
94
162
105
98
158
95
110
157
108
102
54
123
54
101
90
138
54
127
124
89
59
96
180
117
125
74
118
113
82
54
108
76
134
206
143
97
138
95
134
167
54
113
145
131
69
106
158
125
86
54
102
81
131
120
119
136
127
108
148
54
90
171
169
131
142
135
133
123
83
131
102
84
95
102
129
194
200
108
137
159
144
121
96
154
90
161
95
163
105
104
138
102
110
129
93
102
126
149
77
81
140
107
117
159
108
54
116
59
102
115
100
101
140
144
107
102
144
122
107
149
145
146
54
115
132
87
156
100
115
95
165
98
49
135
161
98
94
98
100
121
94
87
74
96
112
116
148
102
77
93
87
112
177
179
139
105
123
145
81
88
103
49
125
108
113
108
115
134
98
101
121
77
112
54
125
128
80
122
49
74
139
61
156
118
125
118
87
98
103
149
101
81
123
87
178
112
171
172
144
144
144
110
144
86
139
95
85
92
85
59
119
171
138
123
120
115
168
168
136
98
81
106
119
125
103
54
122
118
122
133
105
120
120
105
81
98
108
102
146
142
161
148
163
147
176
179
112
108
152
91
77
134
111
113
113
108
145
122
131
112
102
90
190
167
104
84
202
103
92
74
105
81
59
109
98
145
93
101
144
115
103
113
132
107
54
106
81
153
102
67
147
102
96
161
129
90
125
108
105
117
115
139
151
129
97
124
139
96
85
98
122
134
130
118
110
126
108
112
123
102
121
98
76
118
116
179
110
116
135
77
150
145
128
103
148
95
104
102
150
83
123
98
125
109
54
127
139
113
108
163
135
106
93
156
110
90
81
117
117
147
88
143
109
108
141
127
90
61
99
128
129
112
97
97
106
147
96
81
113
57
132
151
87
143
54
101
158
115
123
84
93
80
82
105
108
67
67
105
83
54
99
98
107
49
102
76
140
81
144
161
138
100
93
102
141
59
74
138
84
148
98
165
87
151
91
76
140
132
107
127
127
74
169
105
108
100
98
163
114
111
108
110
113
139
54
69
133
143
95
175
67
86
101
107
108
109
108
106
54
96
122
82
162
155
139
96
153
100
178
155
141
108
96
87
83
89
148
153
105
107
109
122
144
102
98
138
67
105
136
155
96
89
135
103
117
85
145
108
106
105
168
167
146
114
125
144
160
102
160
105
98
81
113
118
98
147
102
100
103
158
129
122
129
100
125
150
108
150
106
107
94
196
112
119
109
165
121
129
113
118
95
102
81
109
102
131
95
138
93
128
113
67
67
89
106
95
112
111
80
145
116
129
125
109
81
61
148
75
91
102
114
97
114
123
83
95
122
67
109
140
115
137
96
133
95
129
150
105
92
108
69
85
145
93
123
121
102
111
102
74
127
83
108
150
161
132
110
102
119
103
109
130
156
147
106
74
153
137
69
76
54
120
102
90
82
152
135
164
109
153
54
174
85
63
100
106
149
124
134
131
85
146
102
104
125
121
113
134
102
67
54
77
98
67
115
106
82
89
111
110
113
80
78
119
94
195
78
145
102
104
135
54
109
149
54
94
87
88
123
85
81
112
81
116
95
125
103
179
113
161
87
117
112
156
126
139
102
147
133
87
109
87
92
152
138
109
90
110
82
76
133
129
120
119
140
112
156
83
108
76
116
95
158
114
135
144
74
97
135
126
117
126
119
131
93
116
67
98
95
105
127
151
165
110
195
129
126
100
82
154
49
158
95
77
120
138
95
124
91
123
102
171
125
139
115
108
61
101
103
127
143
49
54
149
106
143
192
78
106
102
104
105
143
131
99
179
112
54
135
90
132
135
172
133
101
129
111
107
118
93
104
138
134
108
103
81
153
177
133
81
87
118
77
158
99
91
149
110
146
54
101
95
76
127
116
81
90
104
117
83
118
108
106
117
122
118
87
121
134
128
76
110
107
99
136
159
54
85
131
123
84
95
133
77
133
74
146
101
124
130
76
108
59
106
128
72
94
108
166
91
54
114
129
72
54
109
123
95
125
91
130
119
115
157
151
131
176
108
95
134
98
132
104
106
54
119
105
115
142
100
68
83
75
103
115
115
133
114
120
102
107
87
130
148
74
109
155
131
148
82
54
140
93
157
150
102
131
84
103
120
140
142
107
74
113
131
77
89
76
83
106
95
127
148
148
80
95
113
77
54
182
143
97
110
121
74
105
125
82
107
122
114
112
89
107
113
131
88
98
94
54
98
124
140
112
96
96
95
99
118
120
177
59
135
74
115
170
72
131
85
155
111
112
116
132
115
138
140
95
90
139
189
109
103
164
141
133
54
124
93
196
111
110
153
105
116
83
140
110
114
54
144
103
113
161
177
81
125
106
108
97
96
105
127
139
69
77
109
87
175
140
135
81
93
108
123
74
88
144
101
93
105
99
95
125
133
103
135
98
68
90
102
137
118
106
49
139
133
135
108
121
127
102
120
189
129
144
106
145
73
138
112
125
95
102
54
105
118
103
54
94
98
113
102
128
67
108
78
161
108
70
143
171
95
135
113
99
103
67
138
118
74
106
98
147
68
160
115
140
141
54
130
128
104
108
130
122
98
146
180
146
76
142
124
184
114
89
112
113
146
112
130
113
70
125
143
145
138
172
104
101
106
158
168
145
130
98
120
143
105
117
103
90
103
112
115
151
127
131
127
59
113
113
85
109
113
140
157
135
108
148
140
116
90
96
108
77
90
138
136
97
118
132
101
170
73
111
116
77
110
110
108
94
113
130
98
78
122
137
167
97
177
94
105
173
105
143
137
144
95
81
102
139
123
96
98
98
186
161
162
87
98
129
146
102
107
161
108
167
131
106
102
135
112
129
157
95
74
155
99
109
102
112
118
137
102
121
82
105
105
177
99
111
95
115
127
128
98
116
124
100
45
108
95
128
100
118
92
143
161
106
59
78
88
100
97
102
95
107
131
152
186
153
54
161
135
112
135
112
137
82
124
133
102
135
81
97
78
119
59
125
153
81
125
124
113
108
108
103
91
83
78
127
149
113
146
95
108
124
67
102
125
135
95
154
172
177
116
61
121
100
107
133
95
104
149
142
103
126
89
115
95
74
172
137
105
102
96
148
90
112
146
135
143
87
166
49
92
100
105
74
59
100
49
85
96
123
74
120
103
161
148
84
59
77
100
128
115
160
168
89
129
128
108
161
163
115
146
161
122
108
102
102
59
153
95
133
155
78
125
148
131
133
162
120
125
96
54
182
144
149
167
131
139
125
111
127
90
54
57
83
85
79
92
101
119
158
148
108
133
122
93
123
95
95
117
125
133
108
119
120
103
115
146
134
148
148
141
115
81
106
180
87
113
54
77
140
156
158
103
124
123
113
84
101
98
124
162
96
153
111
163
103
169
87
87
81
82
103
112
93
101
108
146
143
107
75
177
161
108
98
143
149
54
108
115
133
85
134
113
114
117
86
163
108
95
134
148
132
104
106
172
106
84
130
106
132
139
112
117
128
114
93
83
115
88
72
87
170
91
129
137
126
67
177
113
174
106
91
102
107
61
125
68
90
89
192
123
145
76
103
95
87
106
124
101
92
160
131
135
155
93
90
127
153
54
104
130
49
90
88
102
121
90
100
131
98
104
147
135
106
161
98
161
96
98
85
90
103
74
140
91
106
94
136
149
115
128
118
118
135
49
105
97
103
99
142
105
92
95
81
106
74
103
105
139
98
119
94
112
87
54
120
160
110
138
49
107
178
118
138
95
118
93
108
129
130
105
102
157
54
131
150
99
93
172
81
85
116
141
83
145
69
150
104
87
124
78
179
91
97
184
113
128
133
117
122
81
87
158
49
128
82
144
114
106
156
81
108
159
54
156
148
67
59
133
143
108
112
103
87
127
98
123
78
157
155
98
125
140
125
95
117
161
75
107
146
78
113
115
134
59
109
108
54
111
109
135
108
154
144
98
153
99
104
118
153
137
133
156
186
125
145
159
108
112
98
126
128
124
115
153
137
81
131
91
115
49
81
68
126
91
98
148
54
125
119
116
135
115
95
129
161
81
108
75
116
105
93
117
96
161
87
147
127
120
138
97
139
118
112
125
139
98
133
77
81
76
98
172
78
147
107
103
71
164
142
45
128
93
98
143
95
81
130
100
116
98
88
140
153
102
131
144
133
78
96
109
176
100
108
126
89
74
126
188
125
126
54
103
110
95
155
110
145
154
85
125
98
107
133
90
154
189
82
126
109
112
102
136
57
176
82
77
89
54
87
153
122
158
129
92
142
105
177
108
102
108
109
96
111
59
101
54
54
173
135
103
137
96
114
144
98
105
49
78
162
113
129
121
121
97
152
54
92
143
143
133
104
108
97
98
100
102
148
141
124
102
110
120
143
102
150
143
107
125
97
128
143
76
83
105
99
134
128
156
116
92
106
87
106
136
160
109
161
82
149
54
180
96
94
106
148
108
115
54
133
95
103
115
112
114
99
125
83
154
90
81
143
205
167
219
111
157
105
102
74
117
76
144
136
97
119
172
132
93
132
102
105
111
103
113
108
78
81
54
117
78
70
160
120
116
119
95
130
153
140
149
100
118
148
114
100
102
117
130
87
105
125
140
114
102
109
120
123
173
137
156
78
81
92
132
124
102
127
77
94
108
129
133
49
103
105
156
108
107
156
110
141
107
161
139
87
107
148
190
102
115
112
116
165
122
101
144
115
103
111
143
96
101
106
102
108
82
89
108
113
135
128
144
106
157
93
110
149
106
108
84
141
122
125
98
161
141
89
91
49
160
112
129
133
81
87
95
78
117
112
87
108
54
76
87
107
128
148
80
132
106
138
144
123
125
148
82
83
110
123
78
131
180
170
146
137
122
116
117
148
139
138
107
99
157
74
108
104
113
96
107
148
139
108
129
76
133
118
81
106
181
95
93
77
125
102
99
91
126
172
117
158
102
97
105
153
95
145
130
77
141
73
164
93
114
109
158
146
83
131
106
108
108
115
90
87
102
93
82
143
108
95
135
125
132
124
74
120
102
88
87
61
122
102
116
127
112
54
136
99
117
113
105
102
96
103
132
113
99
159
99
108
87
121
128
90
127
94
128
96
108
81
95
143
143
195
156
117
153
106
106
110
76
116
81
161
95
67
76
127
98
108
69
108
54
113
184
137
113
97
104
136
123
78
103
68
113
80
95
111
92
74
130
119
91
121
147
157
144
128
112
95
110
113
131
114
127
85
103
153
113
157
74
134
108
107
113
134
111
165
122
115
198
144
177
90
115
90
125
108
113
104
104
95
121
140
102
154
95
146
128
89
95
102
54
123
61
96
140
169
103
78
140
112
135
97
154
127
140
74
110
149
67
105
126
99
129
152
113
109
95
74
156
148
54
94
140
102
109
86
131
90
104
153
146
98
69
134
131
130
133
151
110
123
118
128
82
99
126
54
81
138
128
116
81
103
103
117
141
81
152
157
119
132
151
120
130
125
125
94
148
95
72
120
111
170
108
102
93
89
160
132
114
76
98
140
104
109
93
172
67
109
114
87
166
108
102
161
108
86
130
149
92
108
148
68
95
79
59
133
118
98
67
75
108
156
69
79
127
81
127
95
147
98
139
147
116
118
99
148
127
108
144
113
123
108
98
83
147
147
121
148
126
90
84
135
125
109
86
122
54
130
118
132
91
115
163
77
143
125
134
131
110
113
114
101
127
100
126
134
125
157
103
83
96
107
138
145
106
128
88
102
104
98
76
142
101
81
120
127
182
95
92
93
98
77
168
107
124
136
106
103
107
157
137
85
128
113
84
95
59
102
101
59
113
92
59
123
145
103
54
54
138
119
68
115
118
141
81
80
82
100
125
138
100
74
93
194
145
113
141
92
147
126
145
109
149
108
131
133
123
106
126
81
161
142
81
141
122
145
95
151
127
155
128
175
99
104
186
148
148
98
101
99
145
95
127
111
134
78
49
74
83
82
101
117
127
109
116
96
115
67
143
90
125
174
149
165
102
112
108
90
113
95
103
121
105
135
110
98
90
112
103
95
112
98
54
154
108
102
73
162
114
115
131
86
91
82
109
54
162
108
104
179
173
170
78
102
95
132
144
79
73
49
127
128
143
69
188
153
95
115
101
101
107
82
96
126
151
137
125
154
115
141
120
103
103
76
90
89
78
128
103
123
49
130
115
155
114
101
129
106
108
113
100
108
171
119
79
129
122
85
45
98
148
141
148
127
190
113
108
104
147
104
101
131
54
177
126
117
112
108
83
182
103
162
172
113
148
125
125
98
130
107
187
95
100
91
97
103
81
102
120
98
149
165
82
102
141
97
133
172
148
92
145
101
95
92
136
74
140
49
59
120
107
131
116
79
85
101
148
110
164
100
143
144
138
128
148
74
54
145
148
113
131
145
177
161
117
108
142
96
113
98
93
132
134
133
104
134
98
144
81
156
108
144
147
128
95
109
86
98
130
129
165
115
96
102
131
125
162
90
95
54
67
91
170
104
95
117
123
77
129
130
78
112
130
149
83
107
76
93
146
133
127
129
113
146
88
118
116
103
125
124
147
107
93
76
95
126
54
145
90
90
138
89
149
117
153
92
117
95
90
133
153
77
49
123
102
54
102
139
122
125
169
125
158
97
133
115
81
98
98
99
88
102
80
111
57
143
85
123
107
108
132
141
95
129
129
131
119
100
106
103
102
175
113
148
120
102
77
128
126
107
133
129
117
74
106
128
109
97
152
137
81
93
131
79
54
99
116
113
108
86
132
102
138
129
151
54
108
115
102
105
126
130
86
161
83
106
164
148
108
95
118
140
59
90
137
126
135
106
104
119
108
119
106
95
218
143
100
114
87
162
54
95
154
100
68
161
95
108
128
54
95
152
108
113
96
144
95
81
82
88
81
78
138
124
101
73
140
119
83
116
145
104
137
90
129
139
54
97
182
54
102
116
96
171
146
177
146
122
102
112
78
105
135
125
81
108
117
94
148
108
86
135
123
128
140
108
54
59
148
138
158
143
112
202
100
144
102
131
110
134
108
109
111
49
81
95
151
102
124
90
142
76
125
89
109
87
101
92
87
90
125
124
54
101
113
149
67
102
126
81
115
149
98
104
139
138
114
102
158
122
107
186
128
121
131
129
158
125
151
140
87
85
91
130
121
142
155
114
160
142
128
76
110
95
113
90
61
108
142
59
49
102
98
102
104
145
125
132
174
108
106
92
81
96
114
95
90
102
134
122
141
135
102
94
128
99
144
116
54
173
167
129
102
128
104
108
78
91
92
111
140
103
82
95
109
159
151
125
128
95
108
128
92
113
105
185
88
120
133
103
136
95
148
117
90
106
154
125
99
156
150
112
114
146
96
90
129
132
165
144
97
108
160
128
88
80
108
108
54
111
116
112
125
120
158
82
125
104
98
158
117
87
142
191
95
154
109
103
189
54
115
105
108
90
146
176
122
176
100
77
81
67
131
136
148
142
84
172
122
98
81
123
140
120
107
120
107
102
150
95
80
105
152
140
99
151
135
165
128
125
129
76
85
94
111
153
149
83
134
49
114
105
128
54
102
98
149
139
77
54
137
89
129
101
91
131
120
87
113
99
108
97
175
54
54
95
110
120
114
84
68
116
128
129
118
108
119
138
90
128
49
89
113
125
180
164
134
113
122
112
81
108
97
92
93
143
116
125
194
102
87
102
194
122
106
122
129
129
114
120
133
160
143
100
160
130
152
139
113
117
102
97
149
161
129
122
122
98
139
78
130
93
101
131
95
122
105
131
106
98
86
103
134
67
78
113
131
128
112
131
108
86
158
69
97
110
127
105
110
119
135
94
102
152
115
153
144
112
54
102
59
95
108
105
54
90
108
134
144
119
131
95
96
70
59
156
49
87
137
106
148
112
104
54
106
147
77
117
149
90
170
77
79
209
91
100
125
161
142
132
127
87
135
150
92
133
138
83
117
134
177
116
109
143
98
108
98
125
107
112
103
89
102
54
59
86
87
116
114
95
74
81
109
113
93
102
115
145
186
69
83
102
122
114
137
134
127
99
154
108
77
91
101
103
119
91
116
127
113
135
163
161
144
104
93
112
119
116
101
107
186
98
141
118
110
160
143
107
88
80
102
109
105
77
76
126
90
84
69
87
122
153
81
90
102
143
102
74
169
113
59
175
128
103
148
119
54
147
117
122
96
87
113
124
139
147
149
177
150
49
159
139
142
142
152
139
95
85
122
95
54
99
102
116
114
112
96
125
135
69
158
157
141
129
114
57
100
128
108
90
102
128
92
115
59
77
127
106
147
119
98
82
137
110
125
74
131
76
118
101
146
103
141
67
95
145
138
114
135
108
85
124
126
117
59
143
94
182
87
82
67
119
129
133
67
120
112
98
128
115
119
96
144
112
116
116
79
110
131
113
87
115
106
134
141
91
115
102
140
59
103
106
105
131
116
120
114
82
102
73
151
119
119
82
108
96
112
127
107
115
148
112
156
96
102
102
127
93
90
96
115
111
156
108
82
77
113
148
107
107
126
81
103
98
103
109
116
151
86
145
110
61
125
96
67
103
119
54
108
81
113
108
119
140
132
84
129
168
153
139
54
128
104
155
116
132
186
109
120
129
83
115
80
144
125
88
151
114
145
78
118
118
147
83
54
54
96
161
107
149
146
107
108
177
131
67
86
133
114
102
137
147
194
113
95
119
98
124
128
86
140
143
128
110
123
98
91
139
114
120
144
115
101
82
157
156
125
165
115
127
107
148
111
69
95
95
125
141
124
135
123
120
129
137
54
159
157
181
78
118
206
135
107
90
54
148
103
114
115
122
90
124
132
141
105
78
102
113
125
54
161
145
126
123
137
49
146
118
106
129
106
98
127
116
143
144
125
54
89
81
96
95
134
95
169
156
127
83
110
78
135
91
179
118
105
158
177
68
133
129
102
86
98
173
134
94
122
130
87
95
155
81
126
129
93
129
101
98
102
147
89
126
59
102
112
140
88
134
189
127
128
113
109
93
112
152
125
130
97
94
135
114
54
165
114
76
103
69
143
118
81
113
123
103
101
129
49
103
91
140
54
165
99
158
101
108
132
132
142
122
119
137
121
153
83
87
128
105
156
161
92
119
141
123
133
132
106
102
123
95
133
163
113
160
135
154
135
49
88
117
107
111
140
87
87
144
80
70
117
189
132
105
158
54
136
54
140
118
95
108
125
95
138
82
107
87
118
87
132
100
129
164
81
75
110
122
152
69
108
103
85
165
145
128
76
168
126
80
160
110
54
113
87
154
161
71
165
91
107
137
175
95
129
105
129
98
102
143
80
145
110
139
77
124
175
155
156
82
125
141
173
142
132
154
143
92
132
81
147
120
108
106
112
54
128
107
103
87
81
153
101
87
103
126
144
106
123
120
59
68
105
67
168
99
116
189
135
104
81
54
138
116
100
83
107
168
67
141
137
108
117
120
87
144
93
106
126
135
108
94
90
119
81
133
140
104
108
81
111
132
113
133
88
87
102
160
158
118
81
75
112
113
157
102
91
97
102
95
90
102
160
153
137
87
88
144
110
115
78
161
159
126
99
139
81
80
138
96
125
191
135
143
134
110
76
108
133
97
108
124
67
67
110
95
108
102
111
128
103
138
74
133
138
103
81
139
93
89
125
82
114
103
93
148
98
103
90
74
107
106
92
84
133
117
93
108
83
168
77
141
140
142
160
87
106
103
108
94
157
128
102
98
81
108
126
164
116
113
145
172
105
73
106
82
105
121
159
110
75
135
123
104
125
157
87
69
158
108
103
87
102
119
118
113
180
103
133
129
122
137
135
151
81
135
135
104
167
167
106
73
147
97
84
116
163
141
163
94
98
102
128
95
69
54
85
115
100
67
77
95
167
120
157
108
113
148
95
84
163
107
140
96
144
149
121
77
146
104
106
121
98
171
95
107
123
148
104
148
106
153
54
122
123
184
54
108
138
74
140
186
143
70
69
68
100
134
79
98
102
141
94
104
118
97
78
133
81
102
149
102
125
110
59
129
103
119
120
95
68
85
74
120
122
147
102
113
74
109
103
119
125
61
149
74
120
100
103
87
102
95
81
123
127
123
143
98
137
130
101
93
138
109
106
116
135
112
101
118
133
150
159
109
106
102
82
123
114
152
117
108
119
102
113
99
148
84
108
81
212
104
102
102
87
108
113
128
112
126
180
102
133
49
98
77
54
122
156
91
99
123
125
98
140
115
82
158
114
88
125
111
114
54
97
101
86
156
141
159
114
93
109
54
54
155
99
152
98
146
98
67
128
142
121
95
143
81
81
138
77
163
101
134
151
54
91
182
172
98
54
144
90
192
151
115
81
112
54
125
74
82
132
119
74
98
113
126
147
188
103
96
76
91
129
81
108
103
130
125
102
133
135
81
87
92
92
139
59
98
80
107
75
42
142
112
115
138
95
146
129
83
123
103
131
113
82
108
127
101
87
179
125
91
95
54
118
142
105
102
84
135
59
96
108
85
117
146
125
89
102
91
112
131
54
131
130
143
104
101
125
95
85
81
91
142
151
108
113
54
107
140
125
136
102
125
95
139
93
118
135
80
54
94
153
96
92
138
87
101
54
106
140
54
94
104
102
82
98
93
107
113
117
105
103
68
158
108
104
100
161
149
97
161
119
129
108
89
95
110
135
151
80
98
112
108
125
158
116
87
82
98
131
49
85
237
92
79
97
114
114
108
78
98
74
96
80
85
105
125
95
148
98
105
89
183
49
189
146
54
95
143
101
110
87
127
143
164
97
104
162
108
81
77
119
125
124
120
73
146
175
114
69
74
101
104
59
131
95
106
157
104
74
103
92
96
109
102
145
108
146
125
119
134
120
104
54
72
78
110
106
128
154
129
87
108
87
105
98
131
129
135
116
112
146
113
82
125
45
61
141
108
118
164
173
103
107
124
101
136
154
99
143
111
74
112
106
105
104
157
118
98
74
104
143
132
153
148
202
133
127
113
76
104
131
80
108
110
76
67
116
106
189
122
139
81
103
115
113
113
131
87
156
172
141
80
145
120
143
125
118
96
74
101
119
128
125
68
135
126
138
160
118
118
133
120
100
140
95
107
79
135
145
106
132
92
83
122
158
94
96
81
144
105
119
126
144
95
137
135
115
123
87
107
108
67
78
49
61
122
85
108
132
96
126
100
104
85
146
93
116
76
140
112
134
126
108
85
123
111
104
90
161
110
158
140
54
111
102
93
122
162
109
78
110
154
125
103
149
145
150
132
143
108
168
98
129
111
177
144
162
112
117
134
97
136
49
94
136
108
98
164
124
145
76
116
129
98
158
139
140
142
67
128
122
78
106
110
103
143
54
118
125
188
129
112
112
142
54
59
98
114
108
96
182
95
169
161
180
83
148
59
125
97
161
135
106
82
83
120
97
67
187
189
117
159
94
151
108
109
83
145
112
155
92
81
120
164
76
59
128
137
138
112
132
96
112
143
90
144
97
91
128
102
97
125
90
129
121
124
158
132
132
112
109
106
128
98
125
135
102
81
95
148
135
95
124
159
129
110
112
108
129
120
107
143
49
126
96
103
105
84
122
118
115
154
76
67
155
116
122
146
115
117
143
129
93
99
140
92
108
137
154
172
107
145
112
129
101
125
117
82
76
127
82
54
96
107
110
154
95
127
140
131
123
164
158
136
95
135
145
95
120
165
103
115
134
97
98
148
115
105
92
132
107
81
147
135
97
76
104
143
93
158
112
106
180
163
54
133
98
81
133
175
173
78
198
169
227
87
117
157
108
76
128
147
121
111
54
185
123
102
106
54
131
73
117
49
81
157
95
77
148
92
127
80
103
81
130
124
98
74
105
112
140
158
82
168
98
129
114
135
198
165
144
54
112
102
146
123
124
108
154
105
102
106
98
76
104
81
110
139
114
128
175
85
117
125
97
117
49
69
122
123
95
59
110
94
87
131
123
108
186
143
126
135
145
99
108
103
74
135
183
65
88
147
96
198
87
137
108
127
87
141
118
127
161
171
81
92
98
82
87
113
122
93
83
123
118
131
138
98
119
85
129
119
139
105
90
129
151
153
109
81
145
163
102
96
143
165
54
113
85
131
102
194
102
107
90
98
61
138
141
121
134
89
146
115
105
97
95
144
136
188
127
164
177
90
95
74
135
117
147
127
144
137
108
131
49
121
139
108
103
95
134
111
141
160
125
102
107
98
190
63
93
162
92
54
91
143
108
148
118
152
99
128
93
78
96
82
146
133
157
106
156
134
186
83
110
98
125
49
128
102
102
120
87
94
123
54
91
127
133
92
74
115
184
132
102
123
104
59
99
164
90
89
141
103
101
83
126
126
144
104
128
54
113
141
94
149
149
134
59
171
133
54
95
133
129
81
94
107
91
98
102
172
126
103
102
107
87
54
83
144
193
127
98
95
161
95
112
119
99
101
102
175
119
180
87
72
93
107
129
106
103
107
144
149
143
74
103
135
127
120
134
119
101
142
102
120
54
111
81
54
74
67
98
54
164
105
112
113
54
143
87
120
159
108
90
132
100
117
130
117
118
120
99
149
119
113
83
111
96
109
54
95
99
121
100
125
95
140
126
123
81
91
104
146
134
109
136
129
115
95
155
166
112
133
161
148
106
141
138
155
120
115
93
169
137
139
160
110
102
82
170
103
148
74
102
114
92
181
106
148
138
131
54
151
103
161
156
113
59
111
127
91
125
92
140
151
100
120
108
49
143
100
134
128
147
108
126
82
120
132
135
119
91
59
138
95
124
125
161
180
94
124
122
150
122
166
117
67
144
82
132
128
89
96
102
163
81
74
85
133
102
108
131
121
139
108
85
68
128
114
125
133
120
96
123
49
137
94
153
151
108
157
54
92
131
96
148
167
186
102
72
119
77
144
143
119
156
128
147
92
54
162
103
129
163
97
175
72
145
119
87
120
144
102
108
108
100
90
147
59
95
149
90
49
135
111
96
87
144
91
102
133
112
107
122
133
74
192
144
113
106
144
99
133
118
81
61
155
110
129
128
149
150
120
140
115
113
95
91
116
113
137
120
95
103
93
125
49
144
134
83
158
122
143
125
80
106
107
128
112
137
106
108
94
87
103
115
160
149
143
158
160
102
112
106
102
147
104
122
125
115
81
102
132
194
114
105
158
149
81
102
105
169
151
140
138
54
131
130
93
99
108
99
90
73
109
82
95
123
81
150
54
154
110
67
181
120
93
81
95
96
114
125
87
121
97
158
103
124
93
95
97
102
143
130
96
104
111
95
167
92
87
68
106
77
54
95
148
185
104
115
59
77
123
74
82
143
119
121
91
112
130
110
121
115
91
126
119
120
116
99
54
148
167
114
130
103
76
125
111
81
148
126
141
102
117
125
108
132
98
102
127
45
57
108
112
166
135
120
115
153
141
90
122
74
113
108
83
97
118
107
101
91
100
103
118
54
157
84
125
103
107
93
131
148
85
77
89
127
116
118
98
133
54
74
143
168
157
130
141
103
84
130
125
98
113
126
91
151
173
101
103
163
76
133
150
145
102
113
92
95
78
54
146
103
87
148
154
109
128
95
127
59
76
102
87
128
123
67
92
135
102
149
83
186
135
133
106
133
151
154
165
132
94
123
166
134
74
105
85
124
114
45
161
108
95
188
81
112
80
104
96
161
106
78
124
83
84
137
92
103
177
122
104
59
139
103
80
95
150
122
54
147
87
87
90
114
98
61
127
122
110
102
113
100
97
98
128
81
128
133
108
146
159
80
138
54
139
107
144
54
117
102
105
129
114
83
133
145
49
108
89
83
122
141
135
96
101
102
145
117
113
153
102
140
92
74
105
171
98
136
102
102
161
117
82
113
142
180
133
98
76
144
49
117
112
128
105
194
140
81
158
89
117
105
87
118
103
129
92
114
81
140
87
127
139
111
81
114
102
108
134
95
54
90
81
81
82
135
93
139
105
49
100
89
85
59
185
96
144
141
127
102
148
113
49
131
115
149
54
126
102
85
101
113
103
141
119
100
78
113
103
74
102
112
81
78
106
100
150
105
111
141
129
173
135
102
81
97
114
69
140
103
125
159
97
143
67
110
129
103
164
108
112
95
84
129
90
115
177
131
108
143
128
118
128
113
116
95
149
118
59
128
95
166
122
148
82
107
120
122
77
59
122
137
93
146
125
80
98
82
155
105
76
122
68
104
123
113
113
185
106
112
125
84
133
121
103
104
108
135
101
107
128
74
49
142
101
116
116
108
107
124
100
54
113
54
167
133
146
77
118
125
80
81
127
98
85
125
120
102
78
102
100
143
116
96
54
110
122
137
80
140
126
111
112
122
143
115
119
141
177
113
149
117
148
108
113
54
125
97
163
97
141
127
123
110
118
67
73
95
95
127
113
104
78
118
61
126
160
61
76
125
93
54
113
186
141
97
139
158
160
135
98
115
112
127
173
108
54
120
155
123
136
96
136
108
54
108
146
99
108
54
115
119
131
122
143
172
115
77
136
169
119
87
85
146
105
87
144
96
90
130
109
77
68
177
149
124
95
98
158
124
87
116
120
74
77
74
156
144
54
169
158
143
167
139
127
125
98
87
77
131
67
54
167
112
54
103
59
76
110
133
54
85
93
102
76
76
136
96
133
123
116
112
105
136
156
129
59
130
124
113
117
147
102
54
173
193
89
68
131
147
122
138
78
106
135
119
101
119
107
126
90
78
98
183
90
122
102
107
81
91
93
140
103
90
103
122
83
129
114
167
106
76
103
167
129
134
74
45
100
131
119
153
143
168
126
104
59
99
124
172
82
94
138
104
131
74
96
142
144
92
81
152
87
111
150
123
49
87
120
165
87
108
111
139
102
133
100
123
148
119
148
89
148
102
134
115
151
153
108
149
125
129
106
81
94
124
87
147
67
80
125
109
54
95
148
140
49
100
98
105
82
106
103
49
97
112
108
149
177
97
67
96
88
136
105
148
125
177
102
178
156
73
117
121
138
149
152
124
125
98
102
132
111
175
105
156
120
125
87
105
177
117
125
95
131
102
73
74
124
73
109
113
125
105
132
100
100
145
108
92
78
81
102
123
133
160
100
84
102
147
95
69
131
91
113
131
99
54
129
126
145
77
54
108
149
106
144
108
121
116
91
196
94
140
112
73
158
54
98
127
74
103
112
102
101
81
74
82
109
129
111
59
169
105
129
116
108
87
158
154
91
112
93
77
149
59
125
124
128
118
104
123
90
59
131
95
136
159
95
127
54
127
132
134
133
89
113
122
87
114
130
145
130
92
128
132
129
112
85
101
78
113
122
125
167
134
105
149
96
87
67
148
93
125
102
95
114
140
98
111
105
108
103
119
83
88
120
107
151
108
106
87
165
86
83
141
106
180
101
102
99
150
112
124
59
98
54
147
90
113
115
117
139
132
105
143
134
76
164
96
100
87
131
74
102
94
77
69
103
149
102
146
113
161
111
80
123
74
119
127
107
108
76
113
106
102
90
120
81
120
150
89
90
133
85
98
113
97
91
97
49
170
97
141
61
105
166
102
96
108
131
110
78
102
185
81
142
137
84
108
140
161
138
74
113
91
82
95
124
109
98
97
147
108
128
101
95
106
59
110
102
128
67
54
135
111
107
141
95
103
126
74
129
113
105
97
86
83
100
97
82
111
76
100
83
125
108
81
89
141
124
105
45
121
77
98
162
96
49
152
106
149
81
158
135
82
102
120
114
98
54
74
198
202
133
95
67
186
105
154
165
187
83
96
133
74
124
95
109
49
127
144
134
54
135
159
98
99
108
118
147
147
120
194
159
118
95
126
93
132
106
105
83
97
78
128
163
124
107
108
98
103
177
186
92
108
97
102
126
136
103
109
118
96
95
150
67
138
126
116
131
87
106
61
113
106
49
88
87
104
128
96
120
154
141
98
164
176
98
95
146
54
100
133
74
78
101
54
163
54
82
74
122
128
106
90
133
188
132
111
109
127
106
69
153
82
61
148
118
128
74
130
98
136
138
103
102
149
127
102
105
138
82
92
73
122
110
104
140
105
104
113
87
101
126
161
116
115
104
125
163
176
136
113
85
124
97
118
120
146
100
128
134
81
168
146
136
170
127
143
54
107
134
103
108
132
90
59
127
127
118
54
87
128
110
59
54
110
122
143
129
125
78
99
112
111
131
94
81
97
178
82
135
91
135
109
161
108
54
127
125
122
123
82
87
114
54
135
59
115
154
146
135
133
124
147
81
104
98
117
90
177
98
87
121
110
128
82
102
87
154
95
114
110
124
100
157
143
129
102
133
74
96
108
69
150
110
133
120
95
166
103
122
83
81
119
90
139
90
68
114
108
82
133
97
111
161
54
127
98
150
119
69
90
113
103
98
160
132
129
104
83
148
106
151
101
98
110
112
177
98
175
149
135
138
94
149
103
151
76
169
113
128
148
97
90
123
103
144
77
155
80
125
54
128
195
107
95
123
111
120
93
104
124
130
102
145
95
105
54
59
134
91
105
153
54
167
115
161
180
172
76
88
130
90
109
120
102
101
90
143
122
104
127
124
135
172
126
90
99
114
76
122
181
112
97
167
102
128
129
130
137
137
118
78
112
121
144
94
130
103
127
114
119
98
135
49
105
82
86
113
87
95
87
147
93
135
91
91
111
145
163
77
150
93
98
98
137
95
151
131
103
169
103
128
110
90
102
95
54
127
133
112
83
113
74
137
187
125
107
121
150
164
103
103
93
98
74
76
128
107
49
103
132
148
128
115
103
101
160
194
125
81
139
116
102
107
111
99
80
161
85
186
148
95
124
81
61
152
112
69
152
144
92
124
102
150
98
116
121
158
128
97
96
59
122
80
129
103
159
125
90
120
142
106
49
67
82
99
115
129
147
90
132
87
103
115
110
123
119
120
126
82
81
139
110
135
186
67
87
73
142
74
120
103
143
123
98
121
91
82
126
129
95
144
54
92
103
120
114
103
102
133
112
69
130
115
98
102
109
142
166
133
134
83
108
153
143
125
143
139
82
142
129
158
143
144
123
61
153
54
61
74
127
132
108
98
78
179
143
54
102
132
97
128
82
122
83
94
91
102
90
103
163
160
148
94
101
122
111
105
98
82
158
95
161
122
113
128
89
135
95
81
83
120
160
121
103
116
94
54
111
115
98
139
146
124
141
99
124
161
98
90
154
135
87
108
95
102
176
92
93
74
135
162
148
122
113
77
180
54
162
123
129
128
102
102
83
112
146
83
101
143
157
93
112
128
209
161
125
104
54
99
153
54
115
200
121
54
109
117
86
138
74
135
106
125
136
89
158
103
96
146
119
82
77
90
158
205
115
59
151
113
107
54
109
146
143
108
95
105
67
128
81
148
194
74
109
99
125
93
132
77
80
81
59
93
109
105
84
90
82
127
82
120
132
129
130
101
94
97
108
113
148
160
136
166
67
67
140
103
98
128
92
103
108
133
112
183
177
90
143
108
127
88
99
101
134
93
108
132
95
96
122
81
160
140
108
162
124
102
113
135
129
148
77
98
98
117
137
74
139
97
70
97
102
143
162
185
112
80
169
143
77
128
106
98
81
131
61
54
143
102
148
106
120
102
96
125
93
119
81
99
165
107
108
129
79
133
105
167
54
126
76
95
151
102
102
49
67
95
96
159
127
102
130
104
89
138
54
153
140
124
123
129
113
90
107
184
59
131
113
97
96
85
144
90
111
131
95
95
81
133
122
161
131
101
167
82
88
108
104
118
130
54
131
76
90
96
102
101
113
131
139
88
106
108
81
74
160
83
100
98
74
149
188
108
150
99
95
128
148
77
98
131
126
76
195
107
103
99
97
131
98
160
49
120
108
105
76
108
102
96
92
114
89
131
120
54
180
102
99
67
129
100
107
102
54
122
212
159
143
148
98
131
127
124
82
95
81
61
117
142
82
105
165
110
131
111
130
108
85
134
105
80
120
158
120
148
106
131
128
125
160
128
83
134
95
89
113
59
81
132
111
105
144
155
113
59
87
121
111
96
105
97
101
160
79
149
131
109
108
96
103
161
108
127
123
156
54
148
54
111
93
145
94
172
49
54
85
113
97
148
140
94
134
90
90
114
127
102
95
191
93
100
59
119
105
144
108
140
70
83
143
122
108
131
97
99
147
102
92
137
54
96
130
102
103
104
54
108
106
156
115
82
141
139
95
138
150
145
177
54
159
93
76
95
167
146
99
98
128
133
97
172
54
125
125
49
108
120
59
68
172
108
109
102
81
116
54
176
109
137
139
125
99
158
98
121
96
100
125
106
125
54
111
54
172
77
102
136
129
98
133
147
124
108
84
82
102
140
103
111
151
85
95
151
139
116
107
160
88
120
182
49
113
131
82
68
102
73
140
117
128
81
67
140
133
69
138
149
102
162
128
141
143
138
115
119
157
77
106
160
179
108
136
95
115
105
85
98
103
123
102
114
129
142
110
74
113
127
54
108
189
143
105
125
108
111
87
135
101
54
86
105
98
98
125
105
115
116
149
81
170
102
163
113
54
140
154
173
104
107
125
100
93
163
144
95
165
147
177
119
82
105
76
92
91
135
106
134
106
113
159
129
96
109
116
74
121
140
138
76
116
154
76
91
165
54
54
107
123
141
135
143
109
77
119
102
146
98
158
108
106
95
119
97
152
95
121
125
134
93
146
121
78
110
134
107
124
107
161
158
117
154
110
54
113
95
127
147
120
127
136
127
134
147
103
108
105
177
108
122
106
140
103
133
137
105
103
131
96
69
108
109
104
82
108
103
94
144
77
126
74
104
177
165
155
120
123
54
98
109
54
98
108
105
141
139
137
201
128
119
166
124
130
87
129
147
74
89
156
59
74
125
62
125
90
69
100
122
68
95
134
129
131
146
131
108
133
102
125
125
97
126
95
102
126
76
87
108
133
108
148
98
112
84
108
122
106
85
146
143
98
87
54
161
167
87
115
126
95
168
61
141
129
125
96
147
124
129
129
108
104
103
220
114
102
93
138
149
127
109
130
117
140
143
129
138
158
61
105
98
114
95
102
159
54
136
139
145
82
115
105
118
193
125
95
116
135
86
49
78
131
95
151
111
124
145
177
98
87
112
130
109
76
108
89
93
160
144
148
109
109
141
54
146
88
107
161
87
54
116
102
148
124
93
59
115
77
143
144
148
105
99
111
102
105
131
126
129
114
116
91
111
108
135
125
116
176
98
147
117
102
148
171
54
139
87
102
107
98
163
100
135
155
113
54
67
118
106
61
128
143
120
135
147
54
120
104
180
103
150
130
144
112
152
111
135
129
97
90
117
108
143
54
131
102
99
148
156
91
98
164
95
89
84
103
54
133
101
82
95
107
74
95
87
126
104
95
135
105
131
139
124
127
102
128
116
151
113
113
127
156
113
144
146
54
107
109
61
103
97
131
77
95
137
110
89
148
101
108
136
149
122
105
90
119
136
121
129
141
125
158
147
108
93
127
54
133
125
74
81
110
105
123
103
106
100
154
76
97
106
112
125
111
113
84
125
143
96
108
102
82
49
123
113
54
61
49
159
102
144
146
102
54
101
102
54
119
111
54
138
137
95
103
156
108
112
126
152
108
76
108
74
109
129
101
173
145
119
160
148
137
113
125
124
149
142
113
110
87
142
54
108
121
154
163
93
95
126
129
123
101
82
98
127
116
152
113
86
103
96
105
131
107
125
95
115
146
132
110
105
113
148
123
137
115
115
136
106
145
102
93
67
143
146
108
115
101
93
79
120
100
146
93
113
98
151
78
49
101
118
137
118
88
161
128
97
85
127
54
145
131
195
76
145
108
81
112
76
129
108
123
98
109
105
90
121
148
148
93
146
123
122
74
115
54
115
68
110
108
123
144
98
49
103
134
96
167
85
91
90
92
125
90
96
107
95
90
144
83
108
83
116
134
126
117
143
123
120
142
147
116
118
97
83
115
115
94
83
133
108
163
123
54
127
134
116
164
108
100
101
151
146
137
127
97
116
102
124
125
97
131
88
54
86
108
76
148
134
167
160
95
119
125
110
129
116
108
54
141
131
131
87
171
78
98
172
100
168
74
133
86
141
118
178
129
100
135
95
97
108
119
112
108
177
54
127
103
125
102
89
127
120
133
119
165
132
133
117
100
98
148
90
104
104
107
85
127
81
84
129
83
113
107
138
158
102
103
87
95
148
109
113
103
67
153
113
155
82
163
183
114
108
122
131
96
54
124
95
120
136
119
119
138
80
81
49
92
91
96
119
54
90
177
98
156
169
124
119
146
86
121
96
102
100
135
131
117
70
110
141
95
189
127
146
98
108
86
156
78
108
62
81
103
128
85
147
115
54
125
122
137
177
179
164
148
108
59
140
94
113
79
74
237
96
92
180
108
49
83
153
134
90
81
109
49
105
78
102
110
148
148
129
118
108
103
103
126
122
59
168
118
119
110
125
95
149
107
160
148
103
87
140
97
49
54
127
113
99
115
105
111
102
132
118
145
131
103
145
133
116
81
165
63
108
86
54
135
141
105
104
104
139
77
158
83
105
49
76
103
147
98
78
104
112
133
133
115
147
92
89
144
112
110
111
148
121
169
91
120
98
132
116
68
125
87
168
107
115
133
116
192
81
102
78
112
115
154
116
95
138
114
131
125
80
102
128
102
98
102
59
76
135
77
108
206
85
98
129
128
95
134
126
87
110
134
107
91
103
122
106
167
113
92
98
115
117
120
93
101
103
104
81
87
127
186
82
119
124
124
105
148
100
127
59
102
162
90
146
112
169
108
76
114
156
121
148
114
100
102
122
106
154
143
134
72
116
139
78
126
102
67
79
54
84
91
82
117
81
98
113
133
134
194
98
101
142
83
120
98
123
105
106
145
97
98
82
102
115
113
131
131
133
102
106
59
169
88
109
109
177
94
76
121
148
95
121
110
67
128
106
85
102
81
111
105
74
122
158
93
105
165
143
61
127
172
159
135
96
77
77
54
133
95
103
104
78
169
107
137
106
152
144
102
76
93
117
125
154
106
67
102
82
142
142
115
131
125
78
107
91
165
123
108
133
108
77
121
104
108
102
99
127
122
157
63
102
83
156
91
131
74
140
75
131
129
95
176
115
153
114
87
93
127
78
83
54
108
120
142
155
78
95
108
125
144
158
205
100
74
54
140
113
123
95
74
93
120
131
135
109
122
154
165
95
112
103
133
85
135
131
140
91
87
137
125
126
143
102
104
111
128
121
102
107
116
54
122
94
54
134
90
143
115
108
173
108
161
188
101
103
131
90
150
115
88
154
110
205
191
109
85
108
125
120
121
97
104
104
105
54
131
135
124
109
121
150
123
96
102
126
114
115
143
112
113
159
124
120
128
109
118
130
132
74
161
158
154
137
87
174
54
114
124
115
65
95
149
121
131
140
143
91
108
115
103
109
133
144
98
81
133
107
134
102
103
118
144
136
106
128
134
102
108
54
122
108
96
108
112
130
112
165
113
67
54
120
125
94
59
135
158
119
140
145
74
84
85
78
106
108
102
105
129
133
105
112
103
90
76
90
102
150
93
157
112
113
95
90
74
89
151
54
105
164
118
82
91
136
83
160
68
131
178
49
93
116
93
81
98
135
107
91
119
122
97
126
160
157
185
188
190
101
103
120
132
145
158
125
122
126
150
104
105
90
145
123
145
87
140
155
142
54
131
145
132
96
120
119
127
158
105
98
81
118
153
69
139
111
113
114
138
107
149
81
110
116
143
135
102
148
121
91
127
61
128
98
106
122
59
90
120
101
105
61
148
161
54
77
98
115
108
95
59
152
54
134
93
113
95
118
101
106
107
171
100
98
102
103
120
140
119
140
59
118
128
78
116
93
84
103
127
111
146
148
145
129
108
49
135
118
107
103
54
107
95
77
92
133
148
78
159
87
119
154
103
149
109
155
140
142
81
156
77
107
78
114
147
155
133
124
116
98
102
101
108
165
102
100
102
119
146
76
136
117
77
97
95
128
93
102
133
99
168
74
98
103
90
140
82
125
83
109
124
133
115
119
76
54
127
135
54
84
123
131
133
104
128
136
130
143
54
98
123
147
84
127
133
61
63
106
109
133
184
115
128
145
149
110
135
112
128
122
148
105
85
186
123
98
179
67
108
49
143
103
124
103
98
129
95
120
186
143
115
120
134
112
108
114
103
140
84
107
112
129
98
124
129
81
127
100
158
115
116
89
138
149
139
181
78
111
81
165
81
101
171
76
131
117
155
106
86
124
67
103
108
165
102
91
87
146
86
114
112
124
104
125
118
125
132
81
142
54
95
150
109
103
87
127
170
88
129
144
108
108
117
163
190
102
87
77
68
127
82
167
133
105
122
91
162
74
96
156
59
78
103
102
139
141
106
141
124
121
110
102
125
122
187
125
101
123
98
135
147
105
102
139
108
163
59
76
127
91
113
108
49
127
103
101
107
129
112
138
119
61
68
163
130
59
133
100
123
143
143
54
98
133
113
120
101
124
117
74
132
105
158
154
136
116
93
117
110
81
76
54
134
116
115
119
146
84
108
201
98
71
138
140
120
115
74
61
120
125
127
159
102
120
139
110
59
150
87
145
103
108
67
97
123
132
116
101
102
98
108
125
123
158
90
87
102
105
98
131
156
190
93
128
120
90
105
122
132
98
126
145
147
96
135
96
128
108
139
87
148
98
54
124
136
138
98
93
127
119
113
125
170
126
143
117
149
110
90
144
135
82
144
108
117
142
141
118
124
140
133
118
143
164
157
116
106
98
118
141
102
87
95
103
93
119
119
158
137
121
164
135
133
121
124
88
91
93
108
125
131
98
139
134
168
162
150
121
143
80
155
104
77
113
150
82
93
95
67
116
165
115
104
54
115
108
125
59
145
61
87
133
135
102
129
83
121
122
98
126
117
130
138
102
110
106
105
120
139
96
95
151
83
82
124
138
80
148
138
54
138
83
167
49
113
113
136
95
81
72
157
108
135
93
115
77
186
92
95
108
148
207
102
178
98
135
49
132
106
147
49
111
143
78
77
87
133
131
134
176
129
95
93
102
108
131
139
95
111
119
90
137
109
141
142
113
79
151
143
95
125
169
92
98
146
91
143
144
113
141
54
125
98
128
158
208
102
82
147
78
61
81
110
138
111
127
147
115
143
80
186
106
106
102
110
164
158
59
88
173
94
124
139
85
134
177
122
133
162
141
146
98
131
142
54
146
76
143
131
84
122
83
148
180
104
135
120
133
147
163
157
111
89
129
112
87
49
119
77
117
124
133
96
118
130
103
144
134
111
135
120
191
90
135
149
133
157
143
145
143
99
135
139
132
105
102
59
126
77
78
93
141
154
133
83
123
110
105
112
103
103
91
113
142
95
182
81
140
105
108
59
144
194
103
168
94
94
152
131
103
110
95
133
106
143
158
127
54
131
98
131
90
95
131
86
81
102
126
103
96
140
94
126
87
129
67
132
95
136
87
115
93
108
133
148
153
59
96
132
138
120
145
81
129
133
98
76
82
133
126
123
127
135
184
91
85
149
131
148
125
191
94
98
120
93
146
49
137
157
97
54
113
94
131
125
131
139
67
91
137
98
144
144
74
49
83
100
131
97
153
106
96
141
108
85
102
98
139
69
145
113
148
90
186
135
128
81
69
104
98
115
144
145
102
142
181
111
128
191
81
119
67
110
150
85
54
77
137
114
77
136
151
90
120
125
106
116
96
133
158
95
133
134
95
105
146
122
100
90
120
114
77
83
87
111
131
152
153
102
143
158
67
108
109
138
68
155
87
68
169
54
69
127
94
120
105
147
125
109
85
54
65
117
105
95
108
147
105
137
138
116
118
127
110
133
85
108
125
119
154
110
93
100
98
134
81
128
96
93
140
148
118
127
103
147
157
113
108
117
89
94
90
59
138
116
120
67
138
157
117
154
148
185
113
77
103
49
135
109
89
140
158
54
108
81
80
54
100
116
115
143
149
92
117
94
77
87
135
125
178
138
108
54
130
162
95
154
144
124
149
124
95
114
171
106
95
102
132
102
143
68
152
145
169
113
107
102
116
97
159
74
87
147
54
49
132
76
98
121
143
94
138
129
94
110
144
122
108
146
106
123
82
109
54
49
80
231
161
85
159
77
145
146
127
80
158
166
118
136
129
83
87
61
126
128
108
129
81
114
141
101
140
126
137
140
156
120
98
135
76
100
172
130
127
103
155
163
45
115
135
103
119
70
116
94
177
107
105
148
99
91
122
154
54
54
147
191
167
132
121
112
81
146
96
127
138
110
82
169
133
102
161
139
92
132
120
137
140
89
129
133
83
161
91
141
115
93
169
90
87
129
148
127
76
89
134
142
102
117
194
114
108
87
88
112
191
119
168
136
156
135
112
54
76
103
54
105
108
74
195
118
78
177
85
182
102
118
103
103
126
93
147
179
54
116
85
80
108
153
124
191
144
104
139
81
125
109
97
108
145
76
158
125
135
160
156
125
120
124
98
177
111
116
95
95
135
97
92
139
147
128
104
139
107
128
89
116
49
110
135
83
138
101
108
118
80
59
137
98
113
149
123
85
144
152
161
86
86
165
122
59
140
106
85
87
161
118
96
131
99
102
123
112
168
122
89
119
144
92
87
157
117
101
135
139
151
96
146
96
49
129
105
95
172
129
125
158
108
85
120
93
96
93
102
104
131
88
196
145
158
88
100
115
115
145
123
78
82
77
129
95
102
108
148
116
157
140
152
102
123
83
142
147
98
118
171
91
93
82
138
133
83
135
136
137
129
101
116
81
143
151
59
158
67
102
102
140
69
127
82
87
112
104
131
109
98
109
121
108
190
129
148
104
95
116
139
139
146
76
129
128
146
90
96
126
104
109
128
117
226
143
124
104
106
90
121
133
195
124
144
177
93
118
125
106
77
98
123
117
49
177
113
103
54
93
67
83
54
59
126
103
116
102
143
131
147
118
95
160
127
114
73
80
96
102
126
135
87
113
108
95
91
128
54
87
104
108
158
125
144
133
107
99
127
165
95
89
117
122
54
139
106
115
147
125
134
67
103
135
101
123
88
54
118
77
78
141
95
161
93
162
134
129
54
49
131
113
116
111
147
107
134
102
177
80
90
74
146
170
98
146
113
99
101
116
129
119
76
97
170
104
125
77
177
167
165
149
145
129
115
105
110
161
98
144
99
94
166
108
120
148
116
115
94
194
103
130
108
151
104
87
139
155
156
113
147
141
127
135
148
107
124
128
110
112
106
140
132
54
96
54
140
98
113
95
113
140
83
87
95
90
85
122
54
114
120
120
118
106
122
144
144
120
106
81
54
90
122
139
74
148
108
81
179
137
144
81
114
113
102
96
84
139
127
130
167
100
109
74
126
77
118
125
170
133
145
133
149
153
190
129
125
133
85
138
121
78
61
131
109
167
133
92
98
125
147
97
149
133
45
82
149
132
116
122
142
153
92
134
109
73
102
93
76
177
114
177
111
169
106
130
45
104
85
129
90
59
113
145
61
118
121
79
115
158
125
97
130
147
144
76
151
106
107
127
148
116
146
97
100
68
97
67
80
190
161
49
98
101
115
101
77
99
187
93
54
199
113
153
102
91
130
91
170
104
131
101
200
170
103
100
127
118
87
133
115
142
91
102
101
145
115
125
166
103
125
150
93
132
115
65
132
158
90
116
110
146
98
151
108
83
49
84
111
92
144
101
87
93
103
95
156
135
102
92
182
115
129
125
104
107
138
98
96
177
106
104
107
129
102
108
177
129
119
188
123
160
148
107
102
98
85
121
105
59
167
115
168
106
121
139
136
106
134
121
54
127
87
77
68
115
54
85
149
133
136
139
143
77
143
143
170
129
150
54
144
81
102
107
54
122
74
148
124
113
104
113
137
142
82
89
98
137
154
103
119
110
153
136
129
91
77
118
126
90
128
81
142
129
168
137
166
110
113
109
97
125
98
102
131
147
180
95
98
128
144
122
154
90
133
118
98
102
98
106
123
128
106
169
122
140
123
149
175
158
133
134
91
117
125
54
128
97
151
74
108
95
115
155
141
90
116
105
112
98
116
135
90
126
49
95
85
93
87
49
127
68
108
89
113
138
108
70
131
200
127
119
140
153
128
98
100
147
54
92
132
84
77
94
102
150
151
113
105
105
153
106
176
100
93
102
114
102
95
119
153
94
105
141
152
83
82
123
156
89
106
98
149
124
159
116
59
81
108
88
146
59
151
92
161
76
107
59
105
140
104
141
125
59
103
122
134
108
113
87
130
112
84
54
106
120
110
120
117
139
141
101
131
131
54
127
92
126
74
83
97
157
107
157
98
54
54
169
145
151
95
81
105
135
85
91
170
59
120
82
164
149
98
102
187
98
108
145
122
154
104
89
136
130
107
127
111
133
124
117
152
134
124
91
54
129
105
158
123
115
84
77
134
107
128
90
143
133
128
140
133
90
91
95
143
105
54
105
140
153
81
122
77
160
150
90
131
80
81
129
111
128
158
80
102
78
68
122
128
185
89
108
85
97
83
98
80
95
108
87
102
104
82
136
144
161
85
147
102
165
103
117
98
154
107
105
122
113
98
110
74
103
109
101
125
97
181
78
128
92
54
74
158
143
144
117
99
82
127
132
141
200
131
123
113
142
159
77
107
142
69
132
141
88
125
117
124
100
143
144
80
102
135
54
90
79
136
133
158
157
98
125
113
67
90
91
127
136
99
127
115
139
78
108
95
90
122
106
69
108
131
98
102
117
132
138
125
130
103
81
86
108
117
95
102
92
116
128
85
74
107
127
101
132
123
86
112
163
105
135
140
163
122
69
74
81
95
96
151
130
122
114
123
54
101
144
93
148
94
90
93
131
107
102
135
81
88
128
148
159
112
144
123
125
102
110
112
128
54
102
140
116
74
125
148
127
109
117
141
100
105
119
101
89
125
145
77
112
49
54
105
113
146
143
125
101
124
49
122
95
110
157
113
111
98
78
94
87
59
143
98
68
127
135
191
101
164
121
68
83
100
102
115
96
112
90
119
76
69
127
84
181
93
100
74
130
102
107
127
112
54
133
110
101
126
59
80
117
83
83
109
107
107
97
182
88
109
74
122
130
161
113
123
107
126
74
99
81
108
168
61
94
125
123
117
92
134
94
140
115
118
110
139
120
152
103
94
108
117
121
109
91
135
54
93
76
76
105
144
54
118
77
125
185
110
101
138
98
103
114
74
131
146
136
109
204
54
142
95
135
87
139
82
149
127
99
159
90
118
138
150
42
89
165
160
86
104
148
144
125
107
79
165
102
134
139
118
95
76
54
147
234
106
129
182
95
131
85
137
113
109
54
54
91
76
59
131
107
102
83
111
118
95
158
81
99
129
175
98
91
74
117
147
99
153
84
85
95
133
102
115
134
193
117
148
160
82
141
80
109
90
139
112
81
122
108
131
111
124
108
81
114
123
80
81
107
97
102
105
154
100
54
135
74
115
102
143
139
113
54
99
126
107
129
140
123
110
123
122
140
153
87
93
98
89
129
148
108
49
108
131
168
103
103
96
111
81
109
130
119
99
137
78
103
98
90
113
150
69
143
146
98
156
98
126
134
76
154
73
140
98
170
143
87
193
92
109
97
104
120
99
110
133
120
104
82
77
131
140
133
105
104
167
135
159
146
74
133
132
156
180
142
94
118
106
120
176
93
115
156
74
166
149
143
90
87
122
145
91
224
95
148
114
49
108
93
112
139
81
145
104
126
113
108
101
119
54
144
128
115
105
69
132
99
161
145
90
95
121
49
82
54
114
113
67
87
59
115
81
96
76
194
153
102
134
103
49
117
102
80
87
98
85
118
128
180
234
96
116
137
77
119
101
130
108
105
83
142
114
126
135
103
153
109
148
147
120
77
148
88
144
137
90
105
150
76
124
130
147
124
136
149
78
94
140
112
73
87
54
160
129
101
138
90
93
97
127
97
140
131
109
122
98
97
54
89
98
132
129
97
117
108
178
125
117
98
127
102
147
115
74
112
117
119
114
54
93
74
100
139
98
102
106
103
179
132
99
54
108
118
130
59
96
120
136
114
135
54
135
122
105
118
128
159
115
167
148
85
177
54
144
102
98
106
205
140
156
158
105
127
77
54
102
93
82
124
145
94
80
99
99
135
110
54
74
118
113
183
144
141
128
107
105
163
134
105
93
103
113
143
100
83
85
128
125
136
192
133
151
139
128
182
142
61
123
94
109
148
80
95
86
116
82
115
120
81
102
125
148
129
156
134
119
136
113
76
142
103
98
99
91
77
119
169
122
87
119
83
113
105
108
126
110
124
108
81
95
125
111
123
101
135
152
191
105
166
103
120
106
125
125
143
89
102
130
122
103
83
111
108
131
130
125
154
80
67
108
59
128
152
81
180
148
152
132
153
104
95
90
143
81
179
75
74
89
118
113
141
102
184
85
130
104
97
138
158
122
105
84
103
124
85
105
90
168
105
110
168
99
77
77
154
78
111
98
69
105
171
95
126
115
87
201
125
123
102
98
78
112
90
119
129
157
67
95
77
125
161
74
103
140
132
100
111
122
105
101
79
108
49
193
120
81
129
82
115
166
151
149
54
76
135
108
137
179
129
98
158
122
105
140
105
137
146
113
155
72
49
185
138
135
139
151
159
125
91
111
139
151
125
185
148
98
84
143
164
107
107
89
178
152
105
112
146
74
126
146
167
91
118
102
119
67
141
95
141
80
113
101
162
144
77
62
76
117
130
106
82
102
98
78
87
125
180
95
119
87
195
101
137
132
97
96
101
128
126
133
117
138
95
90
54
112
152
108
119
144
88
189
81
154
114
133
115
54
116
54
104
135
117
122
95
83
98
105
133
125
96
113
90
102
109
131
117
83
130
59
95
130
108
113
103
158
156
87
83
99
97
98
111
77
54
81
121
120
130
152
156
126
77
107
159
79
90
151
131
119
54
90
108
76
128
108
190
123
96
108
113
149
122
107
103
103
127
115
68
93
105
82
148
108
102
100
108
103
117
156
96
54
114
128
112
103
132
141
77
91
102
158
95
68
82
128
150
81
101
98
85
87
102
151
148
119
102
93
91
54
93
225
100
102
113
179
129
85
95
114
71
98
133
153
131
145
107
113
150
120
125
176
164
111
114
93
153
77
143
128
77
134
76
110
95
129
91
139
83
144
87
127
127
135
104
102
96
91
115
156
91
123
158
82
87
117
133
138
151
121
90
132
108
96
182
140
119
120
138
125
78
122
85
119
125
95
108
89
109
105
89
122
49
81
105
102
129
107
125
103
99
76
133
105
146
137
74
115
119
137
137
133
109
83
67
114
103
73
127
146
175
104
128
109
160
93
84
85
61
118
120
54
132
95
148
163
91
85
105
107
138
119
134
186
145
112
112
74
103
98
127
128
148
156
107
104
144
98
136
113
97
141
144
110
125
145
125
155
177
102
154
120
145
81
128
68
82
102
131
98
148
143
125
103
87
112
142
131
129
116
183
105
113
54
90
132
68
118
108
98
80
147
136
88
145
114
143
104
154
94
124
117
127
81
113
134
54
114
149
102
77
115
149
168
74
190
85
121
100
146
115
108
94
113
192
154
113
127
116
77
123
121
183
87
108
216
89
124
153
107
145
125
125
109
102
148
165
98
87
157
54
113
78
122
163
102
148
194
127
136
113
134
98
81
54
76
153
147
128
129
194
116
139
116
105
143
106
151
77
116
176
146
107
94
80
122
143
89
103
115
54
81
141
54
98
102
106
138
163
116
146
98
117
147
131
176
127
133
125
132
139
145
128
118
121
125
71
133
113
129
125
111
138
162
54
196
78
108
102
135
141
74
84
77
116
190
95
191
140
123
139
107
147
87
128
177
124
107
122
91
117
163
95
89
113
130
54
90
108
102
90
97
92
104
148
98
92
160
123
129
120
158
80
98
125
81
79
103
106
133
144
144
141
149
54
130
107
146
74
131
165
117
144
128
124
105
108
107
117
115
123
101
127
122
112
123
135
82
108
90
54
115
181
82
91
79
143
98
124
95
151
117
94
106
107
143
120
86
138
129
154
82
92
74
112
87
132
109
140
107
104
109
87
83
100
156
145
138
163
145
87
92
150
90
131
117
136
131
96
113
97
154
81
128
95
54
85
74
145
136
119
144
118
102
137
74
198
149
124
101
59
120
73
49
166
99
124
148
129
115
172
127
115
54
116
113
126
110
176
89
121
96
156
103
81
87
133
95
106
106
89
111
151
106
113
83
129
98
112
143
120
149
125
98
99
93
167
95
114
112
92
140
95
139
166
115
59
105
102
115
76
134
105
108
148
83
95
93
143
116
61
154
128
148
108
103
104
135
227
102
92
168
163
129
191
98
139
49
137
137
106
106
121
107
118
81
97
146
150
105
116
90
112
111
84
98
100
124
129
108
54
139
126
95
131
75
108
129
101
78
163
192
54
78
91
134
159
139
61
119
128
165
54
96
102
77
154
105
128
54
138
99
182
82
90
106
193
105
105
124
142
102
144
137
54
49
133
106
81
100
160
98
93
94
103
108
140
108
150
152
103
177
160
130
104
119
139
120
106
144
143
160
95
133
166
128
99
158
97
103
76
98
103
154
131
114
102
163
145
108
54
118
84
133
59
74
113
54
95
146
92
179
92
102
128
102
114
108
122
94
104
92
59
128
143
87
95
144
131
78
143
104
163
113
116
78
90
191
121
160
118
143
127
119
54
74
166
132
108
129
138
162
96
135
79
129
78
74
87
98
116
143
124
146
112
115
156
119
49
113
127
172
133
124
77
126
86
144
87
124
95
98
146
99
172
108
108
156
143
118
73
110
97
81
88
120
134
180
175
161
117
145
98
124
77
153
82
54
125
151
77
145
74
155
89
142
132
106
148
137
125
95
135
130
107
127
96
87
96
163
145
174
193
102
123
93
101
102
118
145
177
102
162
98
135
101
128
77
65
59
125
74
136
146
146
75
142
78
139
135
87
115
85
99
126
91
120
151
124
108
54
136
142
67
128
83
151
143
143
118
61
125
140
140
135
103
160
133
143
124
107
122
92
97
54
136
82
113
104
123
93
54
114
120
49
103
134
116
162
127
115
99
92
115
54
87
155
121
98
77
118
122
90
104
161
74
137
77
95
87
109
126
114
125
188
100
54
145
123
148
107
104
54
139
125
199
125
59
107
87
169
102
87
101
141
180
106
116
108
173
160
125
84
141
160
98
87
144
81
161
95
133
99
143
82
179
188
114
74
132
103
162
101
92
72
135
98
167
59
100
131
199
72
78
122
108
90
109
205
151
135
125
67
152
129
177
101
125
54
71
146
148
100
126
147
125
133
104
148
157
149
126
152
147
130
102
135
113
160
59
120
111
113
169
92
103
136
87
54
194
127
106
122
117
138
138
127
49
160
188
111
105
133
109
123
139
113
142
54
69
118
108
154
96
91
108
102
125
128
143
109
135
155
74
113
83
82
188
59
120
91
127
98
133
156
95
61
78
125
125
165
107
125
135
107
138
93
140
143
74
150
121
81
144
139
167
146
151
79
105
154
129
134
141
62
146
59
101
125
151
95
150
129
108
114
98
128
224
82
94
146
92
65
84
54
93
93
122
95
83
173
90
98
78
101
125
124
98
100
83
120
127
102
129
154
96
118
141
106
100
154
54
102
129
103
153
73
121
135
146
114
54
117
138
77
112
135
200
108
119
129
120
108
76
96
111
101
76
148
127
61
90
49
161
97
138
114
99
106
134
106
95
84
54
129
106
139
54
143
132
140
74
132
100
167
151
147
105
140
116
148
146
82
180
87
108
61
168
99
120
157
103
125
95
128
113
135
54
67
108
143
143
125
59
129
149
135
110
156
150
95
131
129
82
94
122
115
65
116
102
177
117
108
122
102
98
124
135
102
113
95
83
130
129
88
91
108
104
167
129
144
74
83
101
113
108
87
98
134
177
83
128
127
88
125
147
83
122
113
92
54
121
87
168
120
127
108
170
93
177
105
134
112
97
105
98
130
108
83
95
135
113
113
102
169
54
109
121
49
81
188
159
95
116
120
122
115
116
129
116
113
108
118
177
128
123
77
113
86
156
120
146
77
74
111
140
82
139
112
90
144
90
146
164
137
124
74
124
83
130
63
152
130
95
105
113
101
108
101
77
120
96
102
102
145
98
118
105
133
90
102
95
108
131
98
95
102
91
161
95
93
91
127
141
142
74
86
120
86
167
112
80
123
130
171
54
98
89
103
103
71
113
95
144
113
108
134
118
108
125
168
137
54
92
159
127
117
98
90
100
108
96
106
124
106
104
153
100
95
109
135
96
100
102
105
113
59
200
131
96
119
78
49
115
94
129
123
130
108
140
125
94
158
198
158
82
141
74
96
131
180
146
113
108
92
98
132
120
120
159
105
105
118
107
120
109
95
169
107
131
119
139
120
115
124
130
142
106
95
129
96
97
84
108
143
115
150
85
148
113
67
150
54
91
108
90
106
110
218
161
88
78
98
95
123
153
87
54
103
92
126
91
49
107
94
125
118
159
90
117
77
147
120
96
76
102
115
153
125
120
83
103
89
159
136
135
89
61
159
141
105
129
92
87
139
103
141
133
161
122
125
110
155
117
154
144
66
130
140
146
87
101
95
106
59
81
97
139
106
142
95
132
88
105
74
101
97
97
138
128
85
87
80
61
153
96
67
77
54
110
117
145
95
158
106
92
130
81
111
120
118
93
131
84
78
122
148
148
103
67
128
140
49
87
105
144
139
93
95
95
80
93
113
93
99
98
176
113
104
165
77
49
83
124
105
159
82
123
49
67
98
83
101
102
111
59
83
102
153
146
127
137
143
102
145
120
146
92
95
133
102
96
80
130
154
161
119
110
140
125
119
95
69
119
81
54
95
117
77
87
102
81
108
82
92
113
111
180
133
112
148
149
148
54
148
162
149
116
77
118
159
76
120
137
107
123
131
95
120
194
108
144
95
80
120
49
82
111
96
135
123
126
108
105
114
179
122
98
133
54
67
164
62
114
158
124
128
149
147
98
103
141
122
143
139
158
78
135
76
135
126
54
102
108
90
95
109
76
133
101
54
115
96
114
141
150
177
108
110
102
83
122
105
153
149
179
90
82
102
85
135
108
77
103
183
100
80
103
54
168
164
137
112
101
81
115
74
54
102
113
76
145
102
98
140
92
84
54
108
118
97
54
114
96
112
98
81
136
123
103
95
105
95
102
147
95
113
172
163
67
95
95
86
54
78
83
69
138
121
121
121
135
115
113
156
134
88
128
128
125
98
131
119
124
120
161
90
119
123
104
124
204
49
139
162
99
114
180
72
110
112
129
91
108
98
68
122
125
120
143
164
94
125
188
158
82
156
180
95
87
83
49
81
95
110
96
82
104
133
54
83
123
160
84
121
108
105
204
129
154
125
139
129
133
86
96
98
127
95
94
102
129
110
111
102
101
158
49
118
49
101
102
112
108
148
67
129
148
137
147
200
122
100
120
147
133
88
134
123
95
78
133
166
107
82
106
82
118
82
95
94
108
93
156
78
143
125
135
129
119
134
218
146
145
127
126
135
132
138
102
135
59
76
124
84
122
137
81
113
102
104
121
111
98
91
132
54
114
138
137
116
130
102
54
131
93
106
74
139
90
179
122
92
103
62
103
70
132
74
119
108
102
104
95
129
148
156
95
132
136
152
102
149
93
59
133
119
152
125
137
126
110
125
132
110
200
125
200
59
73
82
92
111
159
143
138
91
177
80
96
104
80
137
136
128
122
182
129
180
106
127
122
115
54
139
118
148
148
96
105
136
133
134
120
81
86
113
103
117
113
142
102
145
116
148
98
129
54
90
111
95
118
151
105
100
129
54
96
54
59
144
113
115
95
83
87
200
92
125
95
128
104
108
107
125
49
103
104
80
136
154
157
84
102
54
146
91
119
147
158
103
74
113
95
102
59
79
96
116
119
121
145
110
95
108
54
146
165
77
114
110
141
92
153
135
117
81
108
102
95
115
54
127
129
100
102
69
128
113
146
103
97
144
124
98
127
102
97
82
149
49
109
147
118
110
131
145
127
81
119
149
95
139
126
103
119
117
165
145
105
92
107
101
168
117
165
81
98
95
146
131
128
107
125
100
95
54
129
83
87
143
131
91
148
146
69
125
94
97
97
98
87
49
82
128
145
191
156
122
105
82
115
106
151
128
131
108
98
95
59
165
145
102
76
130
112
61
135
160
234
118
106
89
62
143
98
168
159
82
54
135
104
110
124
131
118
85
94
49
117
112
134
102
87
108
133
153
141
162
103
108
54
82
108
124
153
139
86
104
138
128
130
97
122
124
143
113
97
154
102
118
101
125
149
96
80
93
109
80
148
111
111
182
143
138
78
122
102
110
129
111
179
180
101
100
82
49
237
110
163
122
87
74
79
90
105
112
143
73
147
152
93
146
76
145
108
106
143
141
54
128
182
133
164
140
146
131
107
126
100
93
54
131
87
105
54
116
118
111
67
138
81
87
49
152
120
107
139
124
163
130
81
102
117
144
74
129
141
145
107
124
81
106
113
169
141
93
105
138
128
102
164
110
61
54
108
129
96
106
69
179
131
141
145
135
59
101
99
121
169
105
103
105
122
115
112
94
112
102
97
140
98
145
107
122
82
93
103
124
101
199
144
125
134
162
134
120
104
148
95
99
119
122
151
81
95
125
126
107
87
174
90
157
128
148
129
81
131
116
133
117
194
124
112
134
90
99
123
132
150
128
78
54
107
171
120
90
143
128
129
189
109
115
98
108
148
103
134
118
103
113
124
95
147
120
115
141
83
168
95
91
96
76
97
177
114
67
81
123
144
122
142
135
123
113
127
98
108
102
127
120
114
147
145
92
123
170
98
124
96
78
104
85
103
147
90
100
45
144
61
129
74
92
148
122
100
77
139
113
114
109
161
125
126
99
153
82
105
185
109
96
105
145
121
107
110
93
93
130
137
128
95
107
131
126
146
89
122
169
160
65
145
76
124
94
111
170
103
103
54
78
137
112
141
94
95
116
76
162
119
54
54
101
124
149
105
104
115
137
102
54
108
138
54
78
128
67
123
104
106
91
165
117
102
82
106
118
179
123
81
109
108
54
98
74
77
170
128
87
150
153
54
111
59
157
103
129
109
163
90
124
121
192
90
102
90
200
126
117
95
126
54
99
99
68
120
131
108
77
109
102
126
97
108
54
87
112
108
102
82
85
132
59
104
61
96
95
98
82
45
95
96
156
83
112
108
162
74
120
142
120
113
61
92
135
138
154
135
96
91
143
142
123
101
116
141
141
120
98
110
88
151
159
83
93
145
118
83
116
126
131
59
115
98
118
108
78
143
85
59
81
131
101
110
76
54
128
85
105
103
96
76
84
119
138
81
108
104
137
85
106
182
155
90
87
80
102
180
135
85
111
90
83
133
74
95
128
120
54
125
161
143
148
148
101
190
115
115
117
140
114
98
117
99
139
105
122
117
125
102
134
139
112
158
133
98
151
124
95
81
200
145
131
98
76
109
131
108
54
95
120
95
54
124
103
98
79
168
91
102
147
49
129
129
100
105
133
98
110
187
153
113
108
67
133
118
76
124
95
116
159
117
147
107
99
135
137
176
95
116
108
133
106
125
45
54
140
109
137
186
150
71
108
104
119
128
82
146
149
124
116
146
103
103
177
61
102
139
114
134
133
107
157
129
102
98
145
180
125
129
95
95
54
82
130
67
177
166
129
130
117
61
116
74
98
144
49
76
123
165
138
108
96
169
143
151
167
179
83
137
106
108
173
180
59
107
82
121
103
106
130
85
98
49
142
163
95
103
104
113
102
128
126
122
118
168
194
130
113
140
122
83
158
125
145
143
86
113
164
105
54
123
59
92
92
94
149
110
131
119
107
151
124
102
82
87
111
81
93
103
136
77
147
81
90
108
80
76
108
98
155
111
89
141
177
102
87
97
103
83
114
131
149
149
123
147
130
137
96
159
172
116
67
54
54
119
134
83
93
164
120
122
81
108
128
107
97
140
54
108
132
98
108
66
124
98
98
106
124
113
153
54
54
122
100
107
123
123
98
128
122
112
149
129
124
81
150
120
93
127
132
113
169
69
151
76
128
157
54
124
95
69
143
112
113
148
106
143
104
145
59
138
166
143
128
84
76
120
90
108
90
123
74
102
144
93
84
93
78
131
122
107
129
107
122
92
101
107
49
156
59
106
99
122
92
97
54
123
91
115
54
95
158
148
216
127
102
98
67
125
118
77
169
98
117
107
144
93
100
113
102
105
146
108
110
95
178
85
108
130
90
168
137
59
140
76
113
111
132
105
111
67
125
143
54
113
129
105
109
139
157
108
102
101
125
148
146
115
80
107
80
59
102
128
122
90
108
113
95
105
196
68
110
110
97
94
89
144
120
140
168
120
119
125
144
85
131
84
81
117
76
97
108
116
198
191
108
128
130
110
54
93
106
124
143
137
131
95
165
122
99
76
54
148
102
159
173
75
103
132
95
149
126
115
155
112
81
107
125
102
139
134
192
132
76
143
97
84
115
87
124
130
138
59
106
49
82
117
106
95
159
194
95
59
105
126
161
134
133
170
108
134
122
162
129
132
70
171
113
78
101
114
86
85
66
83
109
78
141
67
90
119
96
93
54
112
140
99
99
154
115
138
108
131
120
128
82
180
115
121
54
154
81
87
193
175
107
95
121
113
144
154
149
113
144
105
76
82
59
139
140
118
108
103
117
150
90
147
124
108
117
104
169
95
153
105
138
113
76
177
149
115
138
110
116
128
131
145
102
118
91
54
91
74
106
114
102
123
94
177
102
142
179
154
142
103
108
135
95
145
108
145
110
103
77
89
177
76
114
159
59
95
97
128
131
97
143
140
90
79
145
129
102
156
54
171
49
172
108
82
111
98
61
70
143
81
77
112
82
113
142
131
125
142
106
103
95
118
108
93
67
110
97
187
125
118
180
124
115
170
54
142
54
102
108
149
102
97
95
90
116
81
74
115
97
102
81
68
116
104
118
92
101
125
141
125
128
104
125
148
129
127
130
109
141
114
127
147
110
61
117
92
129
117
107
89
96
87
152
54
144
101
74
119
189
103
156
99
95
83
129
176
124
126
167
144
118
117
106
123
146
104
83
104
194
128
67
54
82
54
153
104
163
82
127
173
167
54
123
133
100
105
122
108
136
114
115
151
100
81
187
104
95
93
143
90
118
177
122
151
108
143
118
104
119
115
102
125
112
78
49
139
97
111
79
123
104
116
153
148
105
100
126
125
77
151
135
105
112
83
109
158
178
105
133
146
96
106
111
119
124
119
144
162
199
54
121
158
117
143
140
98
139
92
128
135
144
145
141
116
123
148
114
135
151
123
119
149
54
86
103
133
102
103
116
190
76
113
93
84
148
128
81
140
126
134
177
73
106
118
137
180
93
155
158
147
95
49
133
141
122
130
144
102
122
136
159
165
122
116
105
121
101
77
80
108
185
159
115
121
164
97
139
121
153
153
74
149
155
69
101
59
146
93
125
145
101
160
127
96
144
145
155
107
102
103
98
123
103
125
87
124
144
140
106
140
105
122
126
85
89
145
101
80
84
81
182
90
118
115
125
145
186
117
104
163
95
118
191
102
116
85
139
49
102
96
113
122
59
189
125
104
83
225
138
176
94
116
98
144
144
102
118
118
123
125
129
128
82
134
171
218
99
54
80
85
112
161
103
125
119
110
159
134
102
99
122
98
146
74
148
137
108
98
74
203
135
102
54
127
107
87
129
161
98
54
95
163
125
103
82
92
157
121
112
98
96
98
110
90
120
102
49
54
144
116
137
139
135
157
163
54
124
90
109
114
106
117
90
54
177
76
102
120
146
109
95
119
139
95
108
157
115
120
141
113
135
87
96
106
77
67
104
54
95
120
87
135
127
80
118
83
192
125
95
107
97
87
123
125
125
113
86
171
194
123
110
99
96
123
74
146
92
133
131
158
124
97
106
165
104
138
74
74
98
106
87
81
54
95
146
74
128
93
108
116
110
136
127
141
113
128
124
95
170
147
120
89
112
54
89
129
103
106
137
108
74
147
158
112
122
95
54
114
105
130
103
108
106
150
129
111
54
92
130
95
169
101
172
135
74
140
67
112
89
107
102
139
137
120
95
114
113
54
100
164
122
118
108
81
93
113
103
123
160
98
120
122
98
100
72
112
121
124
121
96
149
61
93
78
104
134
147
127
109
81
59
101
132
125
149
127
83
97
102
96
108
115
102
99
90
133
109
113
95
99
144
98
74
49
101
80
81
98
69
113
80
122
136
103
79
102
149
94
152
102
97
147
85
90
125
93
133
143
80
118
94
95
65
102
102
175
54
118
151
144
93
87
96
96
142
125
79
125
142
81
156
59
80
158
93
54
112
101
98
116
87
201
110
108
95
124
68
54
108
98
125
93
74
86
150
115
81
131
98
99
114
54
105
134
105
135
174
153
119
108
97
103
74
106
108
148
165
95
118
106
68
120
131
124
124
145
123
74
117
103
127
131
78
102
104
87
112
120
144
107
92
131
96
96
87
81
152
103
85
131
107
129
81
126
150
109
101
115
149
78
110
107
85
93
113
102
59
106
83
108
101
128
89
129
81
143
125
107
189
73
139
108
54
164
81
112
115
105
87
152
74
140
157
114
68
126
133
102
87
65
131
141
111
145
95
93
103
80
98
143
92
144
113
116
144
92
137
67
102
112
126
87
93
101
94
138
123
117
99
147
141
106
102
69
108
98
137
119
66
92
189
143
101
132
118
184
119
102
166
100
91
186
124
134
90
122
124
103
119
79
83
54
146
90
161
102
134
54
127
112
80
148
105
76
134
110
173
93
114
87
96
115
92
172
170
67
91
122
93
102
88
96
116
108
126
133
107
153
145
136
105
123
81
127
82
103
54
147
99
59
125
106
102
116
134
133
95
124
90
119
123
117
98
125
129
89
133
140
135
110
116
146
101
125
76
77
175
95
80
95
103
133
92
124
125
148
125
73
82
118
136
120
190
83
105
103
98
54
171
117
138
87
113
93
133
135
136
102
102
80
95
140
54
134
148
87
54
125
180
172
121
78
81
98
107
59
82
91
105
129
90
148
142
144
118
95
124
165
143
86
105
49
131
176
78
107
119
81
106
82
49
110
142
143
59
98
84
100
113
73
163
81
54
127
95
106
108
109
127
127
146
126
115
81
49
105
93
131
101
109
102
177
148
105
92
130
78
135
77
147
124
96
92
117
103
93
139
97
131
128
76
61
124
103
103
120
144
105
106
158
81
114
112
107
121
144
130
83
132
54
135
131
135
106
125
81
107
82
116
59
132
135
61
179
150
106
125
77
72
98
144
102
101
116
150
78
106
81
121
98
127
132
95
77
191
113
119
138
110
157
108
119
96
83
87
144
146
139
112
146
115
127
87
111
104
149
117
121
126
130
122
128
87
124
87
125
126
68
82
161
204
148
190
91
115
128
152
125
124
96
87
114
125
153
114
113
144
125
79
59
106
122
81
85
93
100
110
120
133
45
96
114
147
127
124
54
103
123
54
111
95
107
135
109
128
54
85
80
91
69
93
146
80
140
125
137
131
84
110
100
139
119
93
123
138
116
122
85
95
112
100
151
107
95
122
94
83
120
125
113
98
125
123
122
54
93
86
112
113
146
97
95
112
127
134
124
102
90
103
113
114
54
96
156
153
78
141
128
101
102
109
99
126
113
76
111
143
155
54
155
119
142
83
146
109
131
103
87
111
141
85
139
117
98
102
120
122
140
138
131
90
131
109
77
93
124
112
95
131
175
131
82
128
100
76
167
118
54
157
67
118
102
104
145
54
89
102
136
143
132
117
101
127
161
113
179
124
102
102
111
67
91
54
59
148
102
113
120
106
153
119
133
136
105
130
107
103
125
87
109
105
81
91
104
189
57
115
139
106
148
77
109
116
106
115
119
91
68
76
113
145
73
181
54
87
137
120
118
139
87
134
186
194
115
125
127
151
140
59
76
175
107
106
144
144
61
95
165
129
54
192
146
122
148
143
120
122
93
80
115
105
159
125
137
54
151
88
102
102
125
148
87
138
102
97
105
54
79
166
115
110
123
108
156
111
153
122
155
138
108
148
124
95
114
97
150
81
54
135
107
149
105
103
85
174
87
106
96
111
109
75
74
82
149
111
148
82
78
123
54
90
91
115
114
113
166
95
114
81
114
93
91
139
110
157
159
158
76
54
127
81
54
194
135
103
111
144
93
92
100
131
106
117
78
134
78
197
126
161
54
77
128
90
135
128
127
123
89
54
103
102
99
139
105
74
113
128
133
95
117
114
112
95
96
95
110
149
78
165
54
96
132
109
103
127
80
98
109
116
150
74
140
177
126
76
54
98
98
102
100
107
93
107
90
67
54
135
140
54
142
94
194
109
95
54
74
113
108
122
149
122
98
131
147
121
118
68
98
105
49
54
80
126
99
134
143
121
106
165
127
150
79
95
151
108
125
76
133
107
116
116
54
95
97
68
98
138
103
132
79
143
92
108
105
103
108
54
140
116
145
102
93
122
95
194
164
126
118
84
156
97
90
143
134
107
54
91
98
111
109
96
128
165
69
77
127
95
67
135
129
105
97
100
94
123
131
114
122
83
102
127
82
130
123
137
76
167
130
93
145
108
113
87
101
145
92
87
143
139
113
54
147
116
116
84
132
93
108
201
143
113
54
177
95
95
105
145
113
115
145
108
122
89
147
116
151
109
108
118
86
160
98
94
113
102
129
59
102
196
119
128
122
93
131
112
137
119
95
105
133
177
194
108
110
117
105
133
143
98
95
122
148
177
135
132
178
118
72
130
102
155
125
106
131
138
146
190
128
97
148
138
133
83
101
174
111
59
54
93
139
99
115
78
94
124
153
77
141
139
93
145
134
132
118
49
113
137
80
106
137
108
108
93
144
69
144
132
116
108
135
118
143
137
102
172
111
148
120
179
116
129
93
131
81
103
98
159
124
151
86
122
108
96
104
82
117
98
198
161
148
54
90
83
106
76
80
194
54
98
169
83
122
106
117
97
87
118
82
106
182
124
102
59
74
99
105
113
81
120
166
137
54
148
166
123
128
94
145
81
98
88
120
156
126
191
112
149
121
87
142
115
113
138
87
120
112
78
95
106
125
158
178
118
149
101
140
136
146
81
102
125
128
98
127
108
95
116
101
67
109
105
133
127
131
108
87
76
114
102
117
101
138
106
106
100
54
67
149
140
54
123
121
116
81
74
119
154
137
81
150
149
87
77
108
132
97
160
137
95
152
158
122
106
95
118
113
127
120
145
111
97
125
141
132
124
168
98
95
138
110
180
144
124
109
95
93
123
119
140
54
97
122
110
107
76
105
81
115
128
136
160
100
148
86
105
124
118
131
98
126
98
61
128
155
113
90
80
107
134
127
139
117
123
148
82
99
146
145
112
93
111
143
139
134
104
54
154
111
54
96
106
134
98
131
115
54
176
111
151
115
98
95
91
160
124
120
102
115
132
138
81
103
87
120
93
77
54
108
122
164
106
114
130
111
81
108
119
101
77
102
124
105
92
168
172
155
113
104
108
76
107
173
145
89
123
107
172
121
124
95
54
106
107
93
157
149
140
111
90
59
118
157
127
113
76
135
131
102
78
147
80
97
117
116
106
110
77
144
130
105
107
200
144
80
122
100
138
128
107
90
67
93
67
104
95
179
69
118
140
162
136
95
54
145
97
91
122
167
131
59
115
98
156
123
101
172
153
94
162
127
118
78
156
121
114
115
105
91
59
70
129
118
119
78
96
124
163
108
137
95
123
102
74
127
148
141
113
101
127
177
102
148
102
103
110
101
95
129
96
174
83
147
77
132
186
85
166
102
116
113
126
124
113
98
109
95
138
121
108
113
102
84
95
86
95
177
141
145
116
95
92
110
128
139
78
67
128
177
153
129
144
134
124
157
98
178
77
95
78
101
83
101
89
93
61
68
79
127
127
87
145
111
105
98
102
93
80
108
100
125
146
93
129
114
100
135
149
168
102
91
96
108
93
125
133
54
115
114
161
118
45
100
148
104
54
148
125
93
119
102
96
69
147
123
177
127
157
135
67
103
59
148
54
77
77
93
124
91
103
120
103
128
143
80
95
184
106
133
108
136
96
119
167
105
120
105
164
49
83
134
117
95
118
78
59
79
102
146
95
117
119
98
116
118
130
103
105
105
115
129
154
153
87
112
171
81
148
135
160
116
96
123
90
69
162
98
94
90
145
90
76
54
158
103
74
108
119
81
144
67
148
138
134
83
126
146
93
123
128
150
95
130
120
109
102
148
122
110
115
98
95
78
117
102
97
149
110
49
82
158
109
93
93
123
157
151
176
123
59
138
97
137
87
115
125
84
135
118
76
126
153
125
117
171
101
115
95
137
140
146
93
135
133
97
105
95
144
110
102
98
79
108
133
150
147
103
103
148
143
95
94
194
102
54
108
122
91
95
197
81
124
136
108
158
96
148
128
124
91
180
84
113
81
125
102
119
99
113
102
95
108
76
49
191
54
99
107
120
96
54
130
106
93
76
119
113
108
113
112
140
149
96
90
106
95
145
143
125
84
117
87
70
108
142
90
115
110
102
98
149
137
138
54
168
258
117
84
88
116
81
102
89
135
125
159
101
98
118
87
90
84
133
161
120
148
108
132
125
119
165
127
102
145
107
83
122
123
149
74
149
77
96
130
115
69
165
87
108
108
54
132
74
95
119
126
133
137
113
134
82
131
129
104
145
133
91
105
86
90
113
111
137
196
111
123
75
110
129
54
109
82
107
135
61
138
96
173
172
100
139
148
115
172
97
105
121
134
98
102
91
97
82
143
133
73
117
108
121
124
103
157
99
157
114
98
129
129
156
142
140
54
84
78
120
68
129
111
169
100
108
140
114
107
153
128
129
135
67
103
142
168
140
134
93
138
186
121
106
90
95
76
108
163
153
173
59
154
95
128
114
147
89
158
154
135
184
136
133
166
113
85
123
77
121
158
151
95
89
78
98
100
129
144
133
111
102
123
105
74
159
172
88
98
161
79
147
182
108
101
112
132
129
100
103
61
104
65
90
74
141
106
102
81
122
98
92
165
98
152
167
156
121
126
177
98
123
145
112
105
104
145
169
99
121
115
111
108
124
121
127
77
132
102
102
67
149
105
152
125
135
102
54
124
54
108
97
113
120
106
76
124
91
94
95
98
81
108
147
149
109
49
111
156
131
125
91
151
122
148
108
103
177
131
123
93
87
103
103
131
119
122
139
102
141
172
156
216
80
124
132
150
83
135
153
133
109
90
69
115
108
108
97
105
113
108
95
100
99
109
61
102
131
72
96
71
106
129
67
101
59
105
90
107
118
110
139
102
49
117
54
122
108
93
133
102
110
102
98
54
144
54
102
132
90
132
141
151
118
98
69
107
108
81
130
86
151
131
100
117
83
71
107
122
138
105
128
94
95
77
113
98
125
125
95
87
166
59
49
120
111
98
110
128
114
197
108
154
180
157
67
128
133
113
113
74
97
142
143
74
116
161
114
109
120
113
123
100
141
61
100
96
54
112
139
120
145
107
125
140
120
49
172
168
92
121
113
133
54
141
141
102
171
107
82
149
108
114
129
90
109
154
54
100
90
145
115
77
87
109
81
80
118
102
59
104
119
81
98
156
91
101
54
105
99
128
109
144
108
146
103
132
98
90
93
123
94
93
178
95
105
102
125
95
108
95
133
171
115
118
98
124
54
74
149
136
116
96
68
118
95
144
177
138
127
154
62
90
123
184
123
128
139
133
131
119
104
124
49
98
188
135
76
123
108
125
108
83
113
72
145
111
83
108
95
129
143
54
95
128
141
190
103
130
184
49
131
54
145
127
102
120
105
106
74
157
150
126
132
152
125
170
131
126
156
59
82
108
98
133
150
139
118
135
159
115
124
82
110
177
95
128
125
108
77
92
125
92
115
139
116
98
134
81
145
132
111
81
128
117
69
110
149
105
114
108
122
113
152
76
98
78
123
134
132
116
108
108
82
116
125
108
82
148
139
92
54
145
125
92
108
90
114
138
133
112
106
132
128
117
109
150
67
125
61
122
86
143
151
127
76
107
102
119
106
77
122
101
140
125
49
154
148
111
164
151
125
93
112
100
97
132
125
138
95
92
87
120
146
145
148
109
74
144
97
183
131
111
95
121
129
129
101
124
49
90
57
97
108
82
200
113
144
127
160
54
111
101
94
107
145
171
106
115
105
108
54
102
81
135
128
54
141
121
148
129
143
131
129
97
123
117
105
115
133
107
109
98
148
161
122
160
163
125
108
54
180
131
141
139
77
159
54
98
102
141
119
90
146
148
112
142
179
81
108
141
112
105
125
103
124
125
128
135
179
115
136
198
177
122
90
90
154
112
144
128
194
98
83
135
165
152
105
76
82
139
165
93
59
138
102
86
179
112
106
102
113
121
139
132
128
146
154
144
87
102
93
116
49
90
81
122
59
109
107
128
107
95
122
110
103
101
93
138
72
124
129
76
122
76
113
107
141
54
177
93
161
97
102
143
125
81
91
126
95
124
137
116
126
106
97
54
155
100
125
128
129
123
106
146
141
68
49
177
133
131
91
143
61
139
90
129
125
133
102
173
143
160
145
54
121
85
130
77
106
109
127
103
108
76
122
95
122
103
86
128
116
54
102
161
144
102
59
59
70
103
184
54
111
144
100
95
95
72
120
83
124
89
135
54
79
123
95
135
113
133
135
103
79
133
59
49
102
101
83
108
148
93
92
109
108
200
127
117
83
106
103
114
140
128
128
93
218
125
133
99
92
100
80
134
72
83
117
148
137
135
98
99
74
129
184
121
156
138
114
83
119
127
127
129
108
110
138
139
54
108
160
132
97
139
133
105
84
127
107
123
54
148
81
141
92
88
139
106
125
158
125
95
126
112
155
162
95
132
102
133
191
114
76
102
160
231
148
98
83
100
106
113
78
118
125
95
177
148
93
146
108
108
98
150
76
119
108
108
128
128
83
126
61
97
68
103
120
77
199
118
150
95
81
49
93
162
128
85
106
83
107
113
65
145
117
101
186
95
135
106
90
122
150
80
108
91
117
97
98
148
80
190
90
127
82
54
143
112
69
107
127
129
67
137
162
102
92
91
92
126
109
93
153
195
132
145
103
95
102
104
108
124
74
102
129
107
85
123
90
49
131
133
147
122
159
96
67
135
130
145
168
110
114
95
150
147
137
207
112
105
145
54
119
125
103
129
124
104
162
95
163
98
144
54
140
77
122
133
113
125
94
144
87
103
99
91
100
121
100
120
85
115
54
95
103
152
131
158
122
78
148
131
90
76
181
49
67
67
102
148
121
77
165
54
81
140
131
135
151
76
81
107
139
78
133
118
102
113
103
149
54
115
116
112
114
95
108
103
143
74
150
113
116
144
117
74
138
112
103
125
161
96
90
103
54
109
95
117
97
114
135
125
95
133
108
165
133
96
102
83
127
110
74
98
54
98
119
144
144
107
133
133
85
160
141
131
74
106
98
59
128
122
188
148
157
102
111
133
106
116
129
119
54
100
123
99
125
85
107
144
131
146
83
125
125
98
145
90
98
132
81
91
105
123
98
79
59
125
133
101
81
102
143
119
128
125
80
127
93
169
126
129
177
85
98
139
98
140
88
127
95
94
160
76
139
118
159
113
127
133
202
153
191
156
144
67
59
176
101
83
201
95
96
54
102
49
154
127
125
130
160
107
124
54
124
98
164
144
131
125
163
113
90
135
111
114
177
102
94
115
142
78
125
126
153
98
123
106
108
102
100
81
54
95
143
86
82
107
76
104
105
103
130
67
147
146
113
87
102
54
91
161
103
154
101
117
100
110
128
116
75
74
153
119
96
113
92
102
89
113
152
114
131
160
139
160
102
49
127
124
87
83
97
101
137
164
123
81
78
132
113
138
146
135
197
90
127
99
54
113
132
152
91
132
74
144
151
171
168
121
145
107
143
54
131
116
67
123
150
102
107
98
120
102
177
178
120
105
145
100
128
135
140
77
112
76
96
137
105
144
145
116
178
125
112
91
77
161
95
102
108
195
69
109
177
121
115
54
122
93
67
134
133
149
74
114
143
186
87
115
119
84
160
59
118
143
102
49
177
134
106
113
146
87
100
156
141
119
68
95
133
108
78
116
135
135
170
133
138
155
100
79
120
82
95
125
67
121
130
123
143
120
90
121
133
69
95
103
87
169
185
141
112
104
103
140
87
142
83
110
54
101
115
142
102
163
54
154
107
78
133
144
119
54
82
126
117
103
127
87
104
151
126
115
134
109
105
74
101
146
135
124
139
121
91
128
89
98
145
89
148
188
156
144
116
177
116
113
130
85
161
95
142
108
63
104
99
143
143
100
78
109
122
83
135
151
111
87
91
68
177
106
82
161
179
112
54
79
128
102
67
146
126
161
127
61
111
155
116
82
128
125
153
103
102
127
159
83
113
98
148
97
94
82
150
113
139
92
178
153
132
144
122
120
81
98
115
76
126
118
160
104
138
76
103
112
102
126
113
95
127
137
107
130
143
130
76
147
74
139
113
98
143
81
97
127
157
101
76
121
135
99
112
107
87
126
102
97
54
138
108
158
141
105
127
107
98
87
87
177
118
127
131
78
127
54
84
156
110
80
107
137
152
129
138
126
104
97
139
107
104
172
118
131
81
165
110
49
160
113
54
93
104
131
108
95
81
113
130
142
129
103
113
148
107
98
148
111
49
133
102
92
92
113
117
116
106
104
131
119
85
125
104
120
113
96
121
177
54
142
130
131
105
132
54
117
77
49
98
108
168
124
135
127
174
103
104
102
77
91
102
108
107
130
96
81
74
139
162
111
98
116
118
155
125
102
102
96
139
102
107
109
177
155
124
93
82
145
95
108
165
150
82
109
91
168
131
81
120
122
89
152
155
106
165
77
163
94
69
99
150
95
103
127
68
96
139
116
142
79
107
125
157
49
82
101
218
151
140
54
77
122
124
103
108
112
81
74
59
83
125
54
98
135
125
75
133
114
167
146
106
143
142
122
139
105
123
106
85
103
118
132
140
132
125
177
110
91
146
123
77
101
49
128
156
124
103
105
103
143
102
59
86
95
127
113
147
112
103
136
108
110
131
82
128
115
140
80
99
137
54
149
140
161
90
122
144
149
98
103
91
143
143
91
99
116
131
115
120
153
108
149
110
146
140
177
49
115
120
76
110
147
158
114
77
130
147
142
110
122
105
143
129
154
108
81
141
127
151
139
98
96
106
97
135
101
88
116
101
102
143
81
133
108
102
141
108
119
127
182
157
98
90
54
180
173
123
81
105
102
124
98
133
172
131
96
123
59
102
90
146
113
107
138
104
93
157
103
117
111
120
128
120
102
94
147
78
87
121
79
126
147
68
74
146
98
130
120
76
78
105
54
54
90
147
134
69
108
177
90
142
99
139
54
130
54
148
102
182
155
133
102
90
168
158
201
168
110
107
180
105
116
90
141
135
130
116
102
172
98
98
97
54
123
113
148
68
99
106
137
103
161
164
69
164
120
115
131
131
142
98
113
127
85
139
119
133
148
135
126
84
93
119
93
130
134
96
111
147
90
125
179
134
131
102
111
108
138
117
91
113
74
101
119
95
113
115
163
77
160
133
111
95
49
54
138
98
98
137
95
154
106
101
85
111
108
81
144
142
167
182
49
104
148
122
98
111
144
140
102
145
93
114
113
144
101
81
129
101
149
171
137
84
108
59
59
95
106
102
107
102
122
95
127
145
98
116
127
140
161
123
138
129
96
108
107
180
121
134
152
117
79
109
80
86
115
108
122
160
54
125
95
115
54
122
110
126
138
140
84
107
74
54
172
97
118
93
142
103
120
113
123
129
109
148
144
142
122
102
104
127
121
130
143
101
49
151
139
141
134
144
118
115
147
81
122
132
95
95
86
140
84
138
104
95
93
81
144
91
106
125
160
113
106
160
149
82
132
54
141
128
146
129
106
163
125
153
161
157
154
67
117
98
90
131
124
106
163
140
54
125
92
121
59
149
100
108
98
121
122
112
54
81
77
74
165
124
130
97
78
113
143
54
49
108
119
154
103
119
107
158
112
135
54
95
105
69
118
137
91
108
98
112
91
143
102
142
157
82
128
108
106
138
103
128
103
106
113
97
109
54
67
118
125
108
95
124
103
98
146
98
121
92
122
104
124
49
102
90
125
116
148
119
80
83
118
49
107
68
95
128
81
102
82
108
117
95
114
92
136
81
123
98
190
87
158
155
108
108
95
146
135
87
83
128
151
139
116
116
90
90
100
142
74
144
91
216
137
95
125
140
116
91
115
113
59
114
54
126
126
83
128
108
95
97
154
94
100
69
108
68
164
83
99
135
59
98
140
109
118
119
95
83
125
81
138
131
98
130
85
100
90
129
128
84
131
138
116
62
111
131
145
133
158
118
100
79
150
132
107
127
49
91
148
109
108
119
148
149
146
67
146
89
138
151
90
172
87
122
162
99
132
54
133
132
114
144
163
126
120
128
94
68
220
146
102
99
103
127
102
159
110
114
92
93
120
102
106
102
54
119
125
143
87
120
143
77
103
156
90
149
81
102
59
49
135
129
54
136
133
107
112
92
113
102
133
102
78
127
95
165
108
98
100
84
91
122
140
114
124
139
177
93
120
136
95
77
83
142
92
131
77
141
135
89
107
94
95
106
132
130
102
106
105
78
74
54
87
111
95
178
98
96
90
85
108
125
124
90
114
95
100
172
93
98
123
139
139
133
95
161
100
81
140
103
95
83
136
129
98
54
61
142
130
104
77
121
59
173
128
96
93
158
91
99
98
96
82
135
129
63
102
167
78
120
122
91
98
125
135
125
141
116
130
61
81
138
80
77
120
85
104
106
139
97
127
88
157
118
95
77
158
80
87
160
124
87
49
115
126
165
81
106
135
91
118
49
118
126
97
95
167
118
69
103
109
102
95
135
145
164
156
141
93
100
144
93
98
90
54
125
54
123
90
81
125
87
140
121
107
133
110
105
180
113
94
117
49
99
82
77
156
83
108
102
97
81
102
104
108
97
59
80
178
67
115
146
132
114
97
104
142
98
102
90
95
140
98
134
141
105
80
105
133
145
93
132
87
154
165
116
113
78
99
118
95
120
143
74
77
133
106
95
54
92
113
95
137
139
114
125
81
123
54
131
72
115
134
130
133
108
109
106
126
128
102
109
118
101
108
104
90
111
95
94
101
125
121
103
106
82
90
109
167
72
96
109
62
49
82
87
77
98
128
194
142
157
61
143
163
113
101
138
102
59
92
85
83
143
118
86
74
117
77
105
103
129
112
80
98
188
194
92
135
159
169
131
116
101
129
76
108
98
142
116
143
84
114
129
122
146
94
65
90
49
74
144
174
129
98
121
125
104
112
103
59
76
54
78
95
114
49
142
93
133
123
82
74
131
61
158
116
54
96
87
86
103
141
133
108
98
125
144
129
101
128
120
88
92
98
105
172
109
115
97
148
125
133
121
126
54
133
77
90
96
81
75
80
101
139
135
162
79
160
94
104
150
54
91
102
148
117
95
182
111
87
103
98
92
54
54
154
143
108
89
49
108
108
65
154
102
182
105
98
98
61
69
115
96
147
104
104
133
90
180
125
59
91
103
95
133
115
137
113
125
144
100
102
91
78
132
131
98
93
112
180
123
90
96
148
95
144
121
119
76
156
97
143
95
185
103
122
175
117
122
54
110
127
82
139
155
84
101
108
100
135
90
87
128
59
125
103
141
128
146
102
81
102
165
49
122
114
158
95
101
142
78
121
102
105
101
149
98
93
97
213
104
119
124
80
172
103
115
149
115
108
94
122
105
133
162
91
96
111
143
138
71
128
135
129
139
74
101
101
126
156
128
104
142
144
145
151
54
130
131
134
164
90
111
145
106
89
98
82
143
151
129
128
130
82
108
54
126
112
54
115
93
136
112
130
95
102
81
158
96
61
102
120
100
102
127
105
143
133
145
157
134
91
133
170
82
49
118
91
54
96
132
126
156
102
148
78
95
81
154
113
97
96
54
61
148
91
179
54
105
113
158
116
85
146
116
77
119
128
87
138
124
108
164
179
140
124
140
91
100
118
49
96
117
70
136
85
74
137
139
125
129
98
142
148
145
96
110
133
90
162
139
182
105
101
81
91
80
162
131
139
134
171
106
138
108
134
103
158
169
125
141
54
54
154
113
91
137
91
91
120
74
123
136
143
158
114
87
126
137
105
59
93
117
125
81
124
93
127
143
175
129
132
141
142
102
105
49
151
137
135
95
143
117
108
193
98
135
54
81
95
90
89
121
84
77
136
109
104
105
54
141
97
98
101
118
133
151
129
93
172
161
181
106
138
131
157
108
143
164
156
98
136
141
92
134
119
119
107
96
103
67
110
125
111
102
85
120
128
133
113
91
117
121
172
132
157
91
123
132
165
76
87
144
114
83
116
112
164
127
102
118
159
134
138
67
127
69
100
49
108
87
78
75
124
82
61
140
140
98
113
116
123
177
115
108
130
108
49
69
61
133
204
114
68
124
131
93
127
133
79
106
120
103
157
105
143
111
108
124
81
145
83
108
131
132
171
116
111
122
161
106
157
145
167
74
122
54
54
177
129
179
82
108
127
91
117
120
102
127
73
105
108
122
122
143
93
86
164
90
108
81
122
163
120
125
108
67
158
205
144
110
54
152
128
156
133
118
88
69
110
199
135
115
147
76
111
61
186
115
91
81
95
115
129
90
120
167
125
81
128
92
49
98
103
145
161
76
135
127
157
90
121
168
97
153
59
148
69
79
180
132
117
100
147
106
161
131
175
110
141
119
124
152
114
82
102
127
111
54
143
100
98
100
116
125
101
87
144
98
81
134
104
88
103
110
133
149
49
129
102
122
59
135
124
135
83
147
205
125
118
59
87
94
89
127
68
103
104
102
102
90
133
120
221
108
93
129
90
90
104
141
122
97
74
119
184
101
94
98
81
98
81
77
82
132
102
99
106
102
133
111
178
96
164
95
113
125
161
95
133
97
90
125
49
65
139
128
99
131
106
85
93
147
135
102
117
97
87
83
148
76
140
68
128
92
109
88
117
54
78
54
127
92
98
128
92
123
98
91
101
159
124
95
124
95
127
95
59
125
121
85
134
81
92
97
102
145
95
146
110
171
77
132
111
49
148
143
132
102
129
59
166
131
99
54
126
54
125
67
93
117
90
90
90
125
95
118
172
106
101
168
134
98
116
139
67
130
147
116
54
167
81
119
83
123
82
180
123
117
182
147
116
115
49
83
106
164
120
54
144
128
92
101
145
81
93
153
101
151
158
163
158
151
108
82
93
94
108
104
95
102
129
108
106
103
117
150
133
84
128
111
119
127
176
81
61
134
123
107
141
124
132
144
100
69
139
106
133
82
128
108
85
148
159
49
79
107
102
61
135
97
127
168
133
144
177
83
102
130
87
102
149
161
163
92
83
145
108
135
74
83
102
103
98
138
125
92
112
134
68
133
124
105
119
111
159
137
144
123
101
98
82
59
94
125
124
105
69
100
140
165
102
113
113
108
104
115
128
76
108
177
145
171
121
78
78
123
190
73
148
153
103
95
108
99
182
170
133
76
131
145
124
115
128
49
90
102
177
110
123
115
54
127
125
73
112
151
74
54
159
81
109
114
82
92
82
134
118
54
61
107
127
102
160
103
135
127
138
161
137
137
108
80
77
166
124
130
146
91
126
93
120
104
103
115
115
130
83
101
137
101
103
108
98
87
95
131
166
49
129
123
104
94
129
123
129
113
102
151
74
94
111
113
97
97
98
91
153
102
157
82
108
153
117
93
81
140
124
123
59
95
143
141
144
108
95
102
102
114
54
115
120
129
116
143
136
120
149
84
154
150
132
103
80
150
128
116
144
87
163
124
137
108
120
102
124
100
156
128
85
147
119
178
150
191
105
103
91
105
128
108
143
85
73
134
158
146
112
177
106
93
179
125
127
100
45
120
105
97
113
145
105
145
136
128
142
84
129
136
97
74
199
177
84
77
148
118
68
126
54
97
158
157
131
81
67
81
147
105
148
98
180
137
121
101
98
115
113
96
133
156
102
105
105
112
81
120
130
153
155
61
54
67
72
85
134
141
172
133
107
157
102
101
100
210
147
82
186
140
128
93
135
113
89
157
185
139
95
107
121
199
79
135
84
167
157
103
54
92
122
127
104
161
127
54
93
114
100
160
74
118
110
117
131
110
190
93
67
107
110
126
145
122
156
106
77
122
165
106
139
89
101
127
119
73
83
111
80
140
91
76
174
127
90
95
112
105
113
93
83
107
127
98
84
102
94
99
105
155
123
125
102
112
49
167
120
140
80
139
153
91
132
184
163
116
101
97
135
125
140
54
106
81
78
138
176
147
98
95
82
67
95
135
125
178
104
102
113
195
148
91
106
99
108
104
103
122
123
49
90
126
118
102
231
148
118
103
68
114
79
95
45
143
111
113
124
85
148
126
62
102
82
139
149
95
118
76
90
95
68
133
101
108
102
106
104
167
143
107
125
148
142
109
136
108
100
169
125
120
102
115
77
93
125
77
102
122
144
150
144
140
90
54
95
133
185
145
118
100
117
54
120
108
76
134
99
118
82
103
154
87
92
54
69
128
169
139
93
119
54
98
98
166
175
105
103
116
49
175
109
91
105
139
113
82
152
181
90
146
102
120
112
141
111
73
94
108
95
148
82
153
123
224
113
108
164
144
146
92
107
104
103
116
89
54
104
108
145
118
149
125
125
125
54
88
102
84
144
81
106
120
101
167
111
113
133
165
124
76
100
151
96
128
100
116
107
95
133
131
135
81
146
128
123
102
94
128
87
102
158
165
112
109
125
121
112
97
105
117
143
112
80
185
105
141
149
99
98
98
78
144
125
77
101
119
102
145
121
172
149
59
127
130
83
115
135
127
99
82
117
157
118
115
59
74
119
82
93
54
102
144
146
159
61
74
94
110
183
109
178
98
145
91
98
61
99
102
116
199
128
106
149
95
76
162
139
87
127
143
119
136
54
68
76
138
165
116
109
101
177
87
101
92
95
169
193
184
126
116
114
119
153
105
93
99
110
110
122
61
143
131
87
123
118
158
131
74
84
102
107
84
124
94
134
148
95
124
143
170
160
109
151
54
131
103
128
103
107
93
115
127
93
54
87
123
102
171
90
124
97
93
79
87
144
110
102
49
109
89
102
89
114
135
143
103
105
129
131
152
118
82
171
108
127
129
133
84
90
103
153
183
87
97
105
103
91
133
126
131
131
101
141
82
87
146
118
106
146
98
175
177
69
105
108
108
119
115
148
102
133
133
162
82
85
142
90
54
143
116
107
133
124
131
168
167
87
87
122
177
112
98
138
76
105
109
145
84
83
103
117
98
82
98
125
136
111
108
105
138
113
126
163
146
103
122
49
127
143
112
78
130
59
54
85
149
144
139
109
88
119
71
82
49
187
102
151
106
49
104
126
126
120
102
88
106
54
94
105
126
124
158
116
108
135
67
140
108
93
108
81
75
145
162
138
173
139
93
184
89
102
131
140
92
146
67
86
108
97
130
54
158
76
108
120
107
108
116
102
89
61
139
109
129
113
104
104
138
147
67
79
125
83
129
120
122
126
81
122
188
135
103
96
129
157
82
101
92
128
87
106
118
119
102
149
130
105
98
112
96
102
153
91
134
82
116
102
74
116
83
145
124
144
74
140
102
119
169
225
123
97
99
127
102
100
135
142
74
98
130
150
127
113
93
155
102
62
92
176
100
110
120
54
127
105
108
131
118
98
125
97
102
109
111
79
107
119
148
135
108
108
67
96
114
107
102
132
101
122
87
148
136
123
49
133
93
54
135
108
96
96
107
167
68
126
96
83
118
103
135
89
108
120
74
158
164
107
102
77
129
81
102
145
128
126
132
93
156
158
87
109
125
157
129
128
120
134
149
79
54
135
173
127
102
123
103
155
54
134
108
122
180
54
144
123
59
54
123
153
151
91
61
67
96
142
102
98
144
109
105
100
108
135
163
87
100
122
149
200
97
110
112
125
67
103
135
104
106
135
129
107
125
151
89
175
149
96
93
104
119
59
72
72
151
123
83
161
100
99
61
158
113
87
101
131
69
77
114
69
146
108
96
160
99
175
108
103
147
140
162
89
138
102
113
161
89
148
145
102
106
118
192
113
145
97
108
117
104
59
113
125
116
96
128
168
136
128
113
172
144
80
134
102
102
125
109
118
122
65
81
165
102
115
80
117
130
80
165
149
106
111
97
89
102
95
103
90
125
129
131
74
105
54
113
150
158
129
93
113
119
108
143
76
108
86
112
117
139
107
115
124
82
68
127
90
80
67
112
106
79
141
57
144
95
148
107
92
167
162
157
68
131
113
163
127
68
90
165
127
129
81
67
92
196
113
138
135
95
124
104
177
79
119
120
133
144
93
142
132
172
126
102
135
106
98
108
135
54
102
134
138
104
156
89
151
87
118
105
138
83
79
111
151
98
164
94
109
98
102
74
96
105
98
107
108
67
87
106
102
150
105
80
99
89
54
59
54
113
49
127
67
142
105
82
135
101
129
103
122
148
105
137
139
125
153
49
80
115
102
108
83
114
66
73
96
95
119
140
138
124
164
98
134
90
113
104
182
153
131
67
93
161
161
77
149
117
136
106
135
54
132
153
74
189
125
149
154
112
131
104
102
161
74
77
151
157
49
148
146
110
86
115
103
98
82
140
128
101
176
153
96
145
67
178
103
102
113
101
61
140
98
103
107
119
135
198
82
183
116
105
128
120
132
95
78
154
93
95
126
118
119
165
170
123
116
113
79
98
130
103
108
78
97
110
133
168
116
113
105
97
102
106
157
108
116
74
97
164
128
119
124
82
129
145
118
123
148
103
96
67
76
61
140
103
124
132
98
100
83
129
108
123
81
54
177
108
105
108
118
168
78
92
101
54
112
97
150
135
95
158
164
118
128
54
127
82
114
113
128
144
108
96
93
153
133
108
103
105
111
154
141
118
98
143
182
173
93
153
143
87
93
154
108
110
135
131
114
116
108
76
89
108
95
103
85
96
67
120
54
101
145
113
78
79
128
95
136
147
108
161
147
109
82
113
131
102
120
77
76
148
131
142
116
99
148
149
116
87
77
175
160
118
96
81
106
106
143
125
177
134
74
158
137
81
117
110
108
95
113
148
135
154
103
105
81
135
92
89
161
148
115
74
49
116
167
134
103
125
59
90
106
89
85
140
138
138
168
87
122
114
103
127
114
183
106
95
146
96
124
98
132
97
74
102
133
109
108
125
158
128
54
158
155
68
116
116
149
154
116
59
115
153
131
87
104
69
141
161
118
143
89
142
129
77
95
118
95
82
177
170
94
161
162
96
98
108
139
199
142
124
54
162
84
88
104
129
80
104
105
133
104
140
137
103
76
128
105
95
103
144
49
129
104
108
95
140
100
151
134
87
102
97
172
173
140
85
100
102
102
103
154
112
123
125
110
80
158
138
122
105
113
113
111
74
180
87
102
121
67
100
103
116
91
98
140
87
189
122
112
140
115
167
154
135
81
98
142
145
166
110
95
114
148
134
101
126
117
90
155
71
117
100
106
110
68
90
157
130
98
200
117
103
103
117
101
141
98
135
114
125
105
145
147
95
152
177
96
164
158
107
108
108
137
90
106
102
125
108
143
74
73
98
81
144
113
140
59
106
101
113
146
81
102
98
54
74
88
121
142
144
135
111
158
180
101
96
83
158
134
95
107
175
104
49
54
74
144
98
139
128
115
130
157
143
129
84
54
177
150
76
118
95
103
141
105
161
95
77
95
120
175
95
125
84
98
117
159
74
106
135
49
72
123
83
146
130
117
87
54
129
113
59
128
114
134
127
72
164
94
157
134
128
54
95
135
135
128
127
94
138
107
90
162
117
96
131
54
113
103
59
133
104
90
102
126
108
134
144
136
177
139
67
116
120
120
156
153
131
54
49
122
105
143
102
138
102
140
116
87
126
112
113
131
98
113
77
124
158
59
145
152
118
113
145
124
140
59
125
143
119
168
106
59
147
102
67
108
111
120
57
93
101
141
74
77
82
150
169
106
148
90
84
104
133
82
83
144
177
118
116
119
135
107
74
144
54
192
167
113
115
96
82
135
108
98
161
74
116
87
160
149
175
155
124
69
129
148
98
89
54
143
155
129
131
115
124
101
107
94
76
123
124
54
122
77
95
143
161
102
76
140
137
165
133
113
83
118
113
91
114
107
83
135
110
77
95
134
76
145
138
81
143
173
146
139
84
177
147
114
179
113
74
69
103
131
101
123
114
105
156
125
106
112
145
98
95
54
127
111
124
97
164
171
122
106
105
158
113
105
164
113
93
121
172
93
143
101
118
188
147
133
95
77
104
82
167
150
67
49
102
130
98
150
83
91
162
83
85
151
128
99
113
102
54
199
143
67
151
75
139
117
116
124
107
184
162
80
133
96
49
103
95
91
141
104
95
131
82
158
90
118
186
100
112
143
54
174
103
132
106
95
54
49
115
117
128
103
123
96
148
112
76
102
124
110
90
92
85
95
108
143
120
100
95
97
54
121
113
128
124
162
95
139
76
159
122
145
157
54
80
127
54
114
131
54
127
127
129
158
122
129
83
136
135
130
129
101
76
74
89
110
83
147
77
91
111
141
108
98
141
126
83
100
126
119
146
133
145
158
131
158
90
149
134
54
122
108
122
105
110
54
91
119
90
159
123
81
76
118
78
80
162
83
116
98
59
103
112
100
128
128
107
128
135
104
106
147
107
125
182
125
155
102
93
170
130
103
70
163
128
100
171
101
80
137
172
113
163
170
77
130
90
112
98
119
137
76
135
79
87
92
105
120
148
108
83
59
111
87
127
59
165
101
101
156
99
85
74
98
118
69
96
102
144
103
127
131
121
165
142
108
158
109
123
73
90
194
132
106
124
76
98
105
42
179
113
157
120
108
85
116
173
126
107
102
150
87
171
148
165
110
116
105
94
120
122
147
104
144
102
77
85
133
108
103
162
108
137
69
154
98
85
171
126
108
127
83
98
70
120
81
106
160
104
101
107
151
128
49
124
97
125
111
129
109
114
133
116
96
102
119
177
107
158
125
98
157
161
70
101
109
138
107
134
156
82
49
95
135
154
67
91
59
93
102
74
89
125
170
122
98
133
107
120
137
153
74
128
104
102
121
92
191
95
160
153
54
160
120
86
123
103
135
145
115
115
149
108
140
129
77
95
100
116
143
93
143
94
87
161
108
85
114
172
138
103
54
124
94
160
95
169
144
127
151
114
157
77
133
125
96
119
90
128
104
105
103
132
129
111
122
96
104
140
67
113
102
80
146
125
111
99
148
89
184
108
105
83
136
115
67
54
194
80
95
139
123
67
129
97
67
121
135
77
140
128
54
102
102
94
191
103
87
109
98
59
119
102
108
76
139
178
95
131
101
99
121
105
127
131
135
137
71
103
146
81
119
112
119
137
97
111
165
93
103
49
90
74
84
171
81
116
106
118
81
139
160
168
105
120
90
108
165
93
99
102
170
103
70
101
96
134
90
147
141
129
95
140
83
127
98
102
180
149
125
95
54
135
123
151
76
130
101
97
107
61
100
102
106
81
117
221
127
103
81
105
151
144
113
49
131
133
127
59
93
67
130
91
114
120
129
107
167
86
165
87
125
116
127
85
114
100
122
54
138
133
118
71
108
97
96
173
163
111
94
123
113
151
77
128
138
93
99
77
112
123
115
143
81
123
148
141
87
145
95
108
123
161
54
88
160
95
115
148
87
143
85
163
99
142
98
128
126
117
82
86
124
167
177
105
127
81
113
121
149
143
54
87
85
192
102
93
68
115
185
113
80
77
54
108
110
97
132
160
54
118
59
111
157
76
76
118
128
105
121
149
100
120
160
88
111
98
194
105
108
102
83
106
102
81
121
102
143
49
138
74
105
98
133
120
61
117
132
69
144
87
127
79
118
114
157
82
134
108
114
82
87
152
93
104
182
106
87
96
125
141
85
111
49
116
127
101
76
148
103
95
120
86
105
106
103
133
117
109
153
98
110
90
150
112
138
90
92
161
149
95
91
106
133
92
97
93
117
125
126
130
176
102
134
147
153
117
124
83
107
94
152
105
77
98
78
74
126
157
102
120
99
180
95
158
141
102
113
82
95
152
103
131
120
123
131
146
121
77
128
137
132
101
95
154
74
74
167
93
118
74
144
89
61
131
107
96
118
107
54
145
102
61
148
82
148
167
81
143
127
102
145
76
135
114
136
87
138
83
116
126
143
89
121
133
151
131
81
163
143
102
102
124
114
59
98
118
159
112
94
180
112
135
160
130
120
130
118
135
143
114
123
108
82
95
122
157
95
88
144
162
167
77
145
157
124
113
122
120
134
157
108
102
177
126
103
98
127
148
54
114
109
49
106
190
81
130
103
129
108
108
100
92
123
146
110
148
207
107
135
105
141
95
139
119
107
131
99
133
102
91
156
109
77
144
142
115
182
115
87
127
87
98
153
89
81
115
151
108
129
80
173
90
97
124
125
86
80
177
115
114
136
110
157
113
79
92
128
98
142
108
121
108
127
131
83
111
118
104
115
113
146
116
148
93
197
124
128
166
54
59
102
127
83
54
104
125
120
125
125
125
112
131
128
129
88
98
153
54
135
191
109
130
113
137
100
101
132
158
112
148
176
141
131
141
129
67
82
152
199
131
101
202
102
145
96
109
129
95
93
136
154
131
95
98
81
84
113
97
153
76
155
102
104
150
119
115
137
77
142
139
86
104
143
92
133
136
72
103
83
128
113
113
101
96
111
132
106
54
95
108
157
102
85
59
78
149
67
98
107
104
111
137
96
114
113
95
200
112
87
146
95
144
142
185
87
49
138
94
80
118
125
100
95
49
98
109
150
54
95
78
90
119
108
87
98
118
76
90
123
186
70
79
144
126
83
103
98
54
131
143
102
153
49
74
134
159
95
107
126
83
57
120
93
181
54
102
145
126
112
172
127
122
172
141
144
123
107
110
119
122
98
97
140
98
129
93
130
109
150
135
81
83
49
143
89
78
115
108
98
118
76
161
95
172
108
131
102
107
105
54
112
67
85
117
103
116
141
118
74
102
145
180
164
90
82
105
119
105
63
118
127
133
91
119
109
67
143
87
88
143
122
87
77
114
110
101
155
147
78
49
111
94
49
155
105
125
155
106
113
136
82
131
119
166
120
104
97
149
126
93
108
87
125
54
103
154
83
78
114
148
94
106
107
104
87
131
102
108
151
159
125
124
108
95
116
76
168
102
119
137
90
131
68
78
106
68
98
122
102
135
118
148
126
109
97
133
129
116
95
109
120
108
141
140
128
98
125
76
86
84
126
120
74
96
128
95
74
54
104
101
100
108
127
150
126
163
102
100
135
117
146
102
103
76
143
95
156
134
76
110
93
100
167
108
131
177
89
97
106
108
111
176
98
96
110
123
134
113
93
98
54
96
69
96
155
67
126
99
124
150
139
160
102
111
108
95
114
144
151
112
116
119
174
129
191
177
103
113
89
158
90
165
164
142
49
105
112
93
86
109
87
133
158
92
106
82
155
91
90
136
174
115
114
148
98
97
182
150
97
90
145
120
139
54
81
65
124
131
54
141
98
166
149
149
142
108
140
131
141
123
107
125
128
115
184
128
121
78
54
102
131
108
125
132
110
54
59
124
90
122
115
124
146
97
102
76
188
87
123
163
54
102
54
97
138
93
102
128
133
148
138
118
149
74
111
144
108
96
82
137
54
105
76
87
130
54
83
54
126
108
122
93
95
135
145
87
113
108
168
54
103
114
158
96
108
54
125
87
195
125
42
89
122
133
78
105
142
191
54
108
130
74
102
149
82
94
110
89
123
105
130
147
119
108
101
98
114
108
83
135
97
145
98
114
138
95
103
144
93
107
158
185
101
93
85
147
133
95
113
69
96
125
110
102
167
108
115
87
173
112
134
95
92
167
106
127
95
145
158
128
113
95
87
177
165
148
148
81
147
98
59
124
69
119
133
126
169
76
67
82
111
108
155
81
99
161
129
148
104
135
109
110
87
103
91
120
117
78
112
148
95
128
69
107
145
111
86
115
105
88
98
104
133
129
112
146
116
179
102
129
76
115
74
117
196
98
96
113
155
49
103
126
108
177
148
115
102
105
126
110
120
148
98
135
150
108
93
136
84
93
106
123
77
102
95
94
76
74
122
123
148
137
139
119
94
139
110
102
102
177
148
152
95
49
113
127
133
122
93
103
101
54
115
115
149
136
106
133
102
59
104
130
104
143
144
68
49
112
83
112
117
122
104
111
141
61
180
109
145
108
102
173
92
54
87
92
98
61
165
113
138
89
109
153
122
102
126
158
83
141
95
114
108
126
179
135
103
113
91
81
157
168
79
147
140
102
107
116
133
207
156
140
77
135
146
111
186
77
166
97
129
170
95
96
110
131
91
177
117
163
132
124
90
102
106
115
106
140
108
213
102
137
81
122
107
95
145
158
77
98
77
137
125
125
54
83
102
80
177
165
90
108
93
96
138
137
166
98
49
164
107
105
90
142
140
161
59
120
101
115
99
54
127
120
180
54
143
110
103
124
113
148
153
89
106
54
104
105
89
80
54
107
104
103
93
96
90
102
124
119
100
107
140
103
108
98
163
95
161
113
141
153
140
136
105
86
116
117
73
158
54
133
128
116
102
179
125
196
120
87
85
69
147
139
110
107
133
140
118
152
90
93
67
122
54
83
157
151
143
113
68
107
101
104
76
97
133
186
130
155
110
101
159
91
121
126
140
123
94
108
113
148
77
68
135
77
102
104
128
95
112
144
87
148
175
72
115
123
140
76
82
113
161
113
95
113
143
95
103
107
74
133
54
182
49
157
143
127
107
137
77
97
54
164
94
170
81
191
106
81
98
82
106
54
158
183
137
140
103
205
132
82
122
73
81
145
77
82
95
144
130
123
94
122
93
122
81
126
138
122
90
102
103
139
104
139
78
155
116
113
116
122
49
61
77
177
105
82
103
126
84
93
170
98
101
173
150
77
144
112
141
190
141
120
112
109
109
121
115
87
101
95
98
106
163
130
119
87
144
49
186
94
159
103
163
82
106
107
104
54
100
114
159
74
105
182
113
102
122
160
144
112
158
137
162
145
100
131
130
97
114
98
141
100
145
105
118
140
143
68
108
118
103
108
118
151
80
110
103
143
61
179
103
165
125
102
121
131
102
127
102
171
87
95
94
138
95
119
149
102
125
147
85
142
149
150
102
69
74
122
116
81
61
122
54
103
127
119
120
140
120
80
121
117
54
113
128
115
120
83
102
103
125
168
107
119
112
108
84
87
121
112
113
98
108
116
145
133
106
94
129
98
134
98
76
69
126
127
95
107
42
77
135
119
159
134
140
108
132
81
133
127
141
144
78
125
153
129
150
116
89
144
76
115
97
123
87
94
130
97
59
169
108
146
54
122
97
93
107
76
150
115
138
156
119
129
119
80
149
93
49
115
74
113
88
129
82
113
181
106
153
49
129
82
93
152
77
181
131
102
149
131
107
144
87
95
133
70
113
149
112
113
134
110
82
97
90
108
80
116
156
65
128
103
108
82
139
114
54
146
68
111
135
113
135
158
93
112
95
153
109
87
90
96
54
157
97
168
103
137
102
105
134
108
105
90
81
95
149
109
167
168
78
128
209
117
112
128
105
92
104
145
133
131
98
158
117
94
108
110
165
143
105
117
96
131
200
128
87
102
49
91
160
167
135
113
148
126
128
135
148
94
109
151
168
105
103
54
127
120
81
120
123
159
115
54
107
108
49
148
57
76
113
171
78
91
106
126
125
103
115
144
155
133
108
168
99
191
112
145
146
93
97
160
135
89
80
154
156
119
98
116
110
102
77
130
86
108
87
74
151
113
94
102
122
127
108
105
141
158
127
112
156
98
92
102
85
153
98
85
135
93
167
113
144
122
49
95
218
119
116
149
136
179
90
108
87
45
118
129
107
102
147
76
137
128
100
77
145
117
74
123
180
82
54
114
129
98
147
158
49
102
115
54
69
101
77
125
101
103
150
117
114
134
102
87
67
109
96
78
121
95
133
131
96
98
120
142
108
84
118
59
88
110
137
125
117
85
149
115
116
144
148
54
133
131
113
153
185
135
153
119
76
146
78
102
54
155
98
98
54
159
100
150
103
113
98
81
104
121
146
120
106
158
108
95
137
115
131
120
101
145
148
181
158
136
122
117
82
115
102
98
165
102
156
74
109
84
105
133
78
163
160
76
143
54
92
146
172
119
78
100
97
95
134
115
105
113
129
143
99
123
134
95
105
108
110
102
112
128
128
127
95
181
59
145
69
119
118
120
117
121
93
83
115
136
114
105
83
146
148
145
128
125
127
82
119
115
105
104
94
92
87
103
87
102
102
104
80
129
110
114
102
117
107
101
84
117
91
59
93
121
54
127
82
112
123
128
87
74
129
92
116
69
158
128
128
133
112
49
87
80
101
108
149
59
107
108
87
133
102
130
77
107
132
115
135
108
81
127
54
87
132
110
81
148
137
125
108
81
90
97
124
59
108
135
99
68
109
122
98
115
138
186
82
178
87
147
162
144
176
143
116
200
63
96
174
145
87
67
125
94
101
110
98
54
119
135
76
122
82
143
155
116
124
80
49
87
108
145
135
118
81
83
98
138
179
203
54
125
137
141
59
161
103
139
109
91
88
135
92
129
127
108
88
129
97
163
76
125
127
113
95
164
101
128
114
225
134
49
111
151
87
87
90
95
180
77
54
69
90
113
96
123
113
123
108
142
86
103
108
79
137
106
128
128
49
112
119
125
135
92
118
74
117
118
70
141
74
81
92
139
151
138
121
178
185
107
131
112
106
98
132
92
94
87
122
113
123
77
110
113
92
77
103
90
115
119
87
82
98
127
157
130
108
99
110
135
81
160
104
127
54
90
101
105
117
136
100
115
98
81
88
91
115
135
78
83
153
134
140
102
152
94
166
105
174
54
91
150
96
156
109
111
127
96
135
137
95
114
76
131
117
94
154
61
129
133
190
91
98
108
76
139
122
108
120
87
118
82
154
104
83
122
70
54
109
54
122
151
158
121
70
87
121
54
113
161
78
49
117
76
83
108
67
98
78
170
108
144
73
102
138
113
97
148
78
148
54
86
98
74
98
76
139
96
143
108
78
140
161
113
93
84
139
49
49
131
79
110
98
108
131
123
83
105
68
120
110
119
108
74
98
101
143
104
83
97
158
105
124
124
102
123
190
103
190
146
135
162
94
150
129
167
173
81
122
129
144
153
122
59
96
141
115
120
81
129
170
76
149
84
123
161
149
98
90
172
124
85
49
87
122
141
180
146
177
112
87
148
129
77
134
172
125
147
107
102
78
126
103
91
83
78
102
123
113
75
101
139
106
77
116
54
73
109
96
106
108
155
118
114
108
115
143
121
103
120
183
128
90
81
177
102
127
135
105
127
83
118
108
104
94
118
117
74
77
67
49
181
81
98
126
113
167
140
120
111
97
179
82
109
54
49
59
102
98
152
89
54
141
115
49
115
87
79
78
161
141
140
93
103
177
143
119
79
129
108
147
149
54
125
128
143
148
81
81
81
105
107
89
131
145
87
127
54
95
125
122
109
107
108
183
122
102
192
91
151
81
78
95
129
113
82
139
141
93
81
143
79
134
161
112
104
129
73
110
143
162
95
148
91
54
95
96
90
224
45
135
163
85
94
162
151
81
95
98
137
106
93
129
105
128
103
141
144
115
49
122
141
132
105
106
146
102
144
120
106
120
85
113
129
152
87
148
154
54
123
74
154
110
101
108
138
119
168
99
111
134
96
49
105
128
111
54
95
98
130
145
119
130
161
97
150
111
106
112
117
123
103
126
106
120
77
54
186
103
117
94
69
112
120
111
94
105
122
77
87
54
104
95
131
103
102
133
148
168
139
157
99
108
152
146
78
98
148
95
127
67
96
133
67
134
147
121
96
200
54
54
124
101
114
81
114
128
123
115
112
125
180
81
129
126
97
122
113
135
138
88
163
102
115
114
134
107
90
115
172
181
128
93
93
113
151
74
67
132
115
129
101
148
102
143
148
81
113
106
101
107
69
143
135
114
132
76
125
155
107
104
90
139
152
103
160
87
92
95
94
144
108
76
98
131
86
113
207
128
163
115
104
54
128
130
108
122
54
124
142
148
117
82
125
77
96
147
93
108
84
83
74
125
68
73
133
107
158
126
111
138
74
127
101
87
105
97
118
49
107
54
143
206
113
106
54
115
95
54
143
115
98
108
141
111
59
157
125
102
76
80
133
143
138
135
142
151
148
54
149
138
148
160
154
122
144
98
54
149
153
129
112
95
93
102
129
77
131
125
151
124
45
141
137
77
125
122
115
130
181
161
125
115
115
153
114
101
81
74
108
167
115
136
158
120
86
98
102
142
151
131
76
135
107
96
141
95
83
130
112
54
143
158
98
54
102
95
137
143
128
113
125
81
101
130
137
124
87
126
115
98
128
145
133
54
127
95
81
112
108
66
145
59
133
140
172
131
123
118
59
137
87
78
132
82
81
146
133
169
120
144
140
54
99
113
110
125
82
95
109
74
76
108
45
96
54
131
119
144
76
141
102
81
81
158
146
116
170
75
77
104
99
54
108
104
110
122
149
113
145
151
108
95
98
142
149
87
112
141
156
118
148
75
76
105
83
100
137
177
81
166
104
139
168
169
161
106
108
125
96
81
170
93
98
85
107
102
154
111
131
116
107
168
156
141
102
146
129
108
112
74
125
112
110
95
94
111
135
153
49
83
113
59
108
95
104
113
106
54
127
54
146
161
140
108
148
106
100
151
152
105
82
128
105
108
72
76
122
110
130
120
115
133
135
102
113
89
125
138
95
107
108
110
83
102
128
144
108
99
100
89
135
97
92
122
74
83
70
112
116
54
80
146
109
147
102
109
130
128
54
114
76
94
108
147
122
143
91
109
74
90
107
122
131
104
73
100
110
123
144
119
167
122
90
110
113
142
75
165
107
122
95
111
54
102
85
173
105
95
128
105
105
118
159
112
104
142
54
128
76
49
123
49
98
131
83
116
112
107
103
135
112
133
101
100
98
143
117
110
104
132
95
149
98
158
103
145
124
129
148
144
96
110
102
97
109
126
144
172
125
54
135
76
113
106
110
116
137
200
105
108
124
59
59
129
139
126
124
128
138
116
101
177
140
148
119
109
93
124
75
146
54
82
147
108
120
108
126
161
134
92
128
97
151
82
144
111
117
107
176
95
171
103
94
106
95
121
131
151
145
108
146
167
103
101
59
148
94
102
59
102
70
95
142
80
67
129
149
95
105
93
130
59
113
110
105
131
108
132
160
109
83
131
108
76
131
106
119
69
146
103
101
76
92
100
106
68
201
125
102
118
124
139
96
147
93
113
125
162
105
116
151
145
133
94
54
141
150
115
101
95
105
122
86
129
97
87
102
149
61
80
132
168
128
108
73
144
97
120
163
107
170
140
69
158
98
136
115
148
129
155
148
136
139
149
90
95
168
172
148
125
137
74
108
135
105
98
115
168
139
91
128
115
142
143
112
138
126
85
74
105
90
54
105
149
173
112
67
122
88
113
90
105
160
74
105
82
122
114
132
156
102
77
122
159
108
143
105
149
83
93
95
90
126
127
115
133
125
76
144
102
154
137
144
103
87
163
164
95
227
156
74
171
140
108
79
122
123
107
160
101
71
134
90
90
83
101
222
120
142
135
77
116
175
71
144
96
115
99
103
148
113
113
132
90
116
123
61
163
78
100
172
103
100
97
95
131
179
132
196
61
87
94
132
107
141
156
140
129
148
42
105
151
95
125
158
186
104
82
144
121
87
129
80
98
135
105
139
85
124
74
144
54
93
102
102
123
200
77
81
146
103
73
160
92
172
134
81
121
81
162
129
90
74
124
146
111
107
98
129
104
151
155
93
77
146
102
102
139
131
122
123
123
95
135
67
128
138
106
105
129
128
54
100
98
147
117
131
134
141
102
158
193
104
126
59
119
128
148
164
111
130
77
112
103
135
102
115
90
111
98
118
102
118
81
122
129
122
85
83
129
76
81
93
114
120
77
106
159
61
148
86
104
105
156
146
76
156
115
67
95
119
102
108
98
161
107
165
145
110
118
124
87
101
125
97
125
107
104
134
177
74
135
126
54
98
137
133
140
144
119
102
100
139
74
87
112
54
113
114
133
190
155
93
142
180
54
59
99
117
74
129
161
94
102
111
118
97
105
54
133
103
137
116
118
59
141
153
145
108
126
82
92
133
135
142
107
145
79
135
107
108
117
54
139
118
90
49
125
125
113
134
108
97
144
102
83
95
105
105
121
129
88
175
104
143
94
149
92
84
84
139
68
161
113
94
112
102
102
115
104
77
123
95
166
143
106
105
74
74
119
128
59
156
133
174
118
103
151
54
165
151
92
103
98
96
95
103
110
93
97
101
93
116
81
117
102
95
84
152
97
113
163
81
99
107
100
130
54
165
115
102
143
97
89
82
59
96
141
114
148
114
103
163
109
124
129
116
136
111
82
146
119
117
123
81
107
120
128
115
122
130
156
103
77
92
49
138
104
121
159
79
97
105
177
103
92
149
161
132
106
96
83
138
103
54
77
66
149
156
133
128
193
91
108
117
94
145
186
160
98
128
131
124
138
81
156
81
61
110
111
134
109
102
98
118
95
146
107
135
123
132
128
85
54
121
82
114
167
157
54
94
144
112
175
115
120
110
108
83
134
102
140
139
95
121
103
78
94
54
112
122
83
135
121
115
131
143
95
165
98
127
180
78
98
61
97
129
77
108
49
162
141
93
113
128
134
127
67
54
113
112
140
123
94
124
95
125
93
96
165
135
72
116
135
115
108
167
183
121
76
125
97
125
119
97
82
129
95
127
138
89
154
114
98
176
87
124
123
130
78
163
151
115
125
74
129
83
142
59
126
124
127
143
74
98
148
119
134
182
125
107
101
158
105
77
146
91
80
105
105
108
115
89
147
145
120
54
113
139
77
95
103
143
95
140
157
124
168
131
124
109
147
102
106
88
78
134
112
108
97
74
120
119
87
67
88
148
94
95
81
143
121
95
175
177
163
92
168
131
114
101
130
113
151
120
117
74
95
69
105
107
105
98
68
115
105
67
95
168
183
101
123
98
96
144
102
126
98
140
80
122
59
106
115
144
177
106
126
96
88
128
54
96
144
98
78
103
158
111
54
73
126
102
74
78
113
112
77
96
120
91
124
125
123
135
143
129
141
93
148
111
153
98
131
101
81
107
156
146
160
96
70
129
138
81
138
168
87
105
133
148
49
151
99
94
178
115
144
127
144
148
98
106
54
115
98
89
59
83
145
105
110
177
124
131
137
118
96
93
67
86
121
81
143
130
134
102
127
96
167
90
143
134
125
84
107
94
49
84
114
77
117
156
119
77
108
115
125
99
177
108
134
105
95
81
158
109
129
105
105
141
131
94
117
98
98
180
82
106
146
160
139
95
131
88
93
81
95
146
153
113
87
146
98
135
95
166
95
102
123
132
133
112
54
122
107
177
116
162
104
137
123
106
77
117
67
95
133
146
108
109
146
144
139
131
105
169
78
132
59
107
95
88
137
156
108
159
119
105
117
96
121
54
135
82
93
108
125
85
145
54
78
149
128
133
105
154
78
91
114
114
49
99
107
150
102
138
80
132
81
90
93
163
131
194
141
136
145
126
105
67
108
150
103
87
81
102
113
137
85
127
157
133
108
109
147
122
128
118
125
125
124
102
120
139
95
125
167
54
67
137
102
102
102
153
124
67
98
93
140
126
85
123
177
95
143
110
140
163
92
91
83
76
105
160
131
143
117
227
95
100
103
82
90
102
119
92
103
133
150
107
78
90
95
108
143
79
102
97
147
108
133
160
78
122
108
54
116
141
139
118
97
109
67
173
85
127
115
96
119
105
147
81
98
104
156
118
105
123
135
117
193
144
125
59
184
159
108
139
143
117
110
77
147
84
97
82
80
114
102
120
132
105
95
135
129
172
144
78
146
113
139
106
49
148
116
123
177
83
134
128
107
122
75
81
49
54
96
154
112
108
107
79
134
134
138
151
91
81
66
80
90
138
123
108
102
123
118
126
200
95
96
146
148
119
98
183
141
138
115
49
69
155
139
74
137
103
140
69
92
95
160
130
78
145
123
106
93
112
104
138
113
127
130
119
91
131
107
103
122
132
77
134
112
104
150
127
89
122
128
82
145
116
157
160
113
156
147
139
129
122
97
141
145
105
133
123
143
116
118
130
79
106
119
118
125
145
155
131
77
103
143
102
154
116
166
128
130
108
103
95
114
148
93
113
129
95
126
182
85
95
93
102
130
145
128
97
128
131
105
108
74
121
117
146
126
89
103
92
153
131
98
98
108
134
122
126
109
108
157
120
118
121
151
95
76
54
107
165
81
108
139
147
127
131
103
54
98
54
81
110
142
111
90
112
125
95
160
112
73
120
114
102
108
133
49
67
102
139
102
120
116
116
114
129
110
115
90
144
109
110
95
159
96
164
148
158
82
98
81
138
81
87
126
81
128
97
102
170
93
115
148
179
49
154
81
160
108
110
105
101
54
81
113
158
165
97
102
103
128
54
103
82
139
135
112
143
67
54
90
137
103
116
162
137
102
115
118
111
107
95
151
103
113
49
113
127
139
103
167
90
126
86
78
74
103
125
107
118
98
103
91
83
129
121
116
104
86
106
143
104
77
142
54
112
88
102
76
49
93
87
110
96
78
153
145
108
127
122
130
95
196
96
123
97
54
71
103
125
104
110
95
180
69
144
116
87
83
144
144
105
166
95
105
125
98
67
105
113
90
145
76
131
95
95
107
85
111
78
146
126
109
172
118
68
90
93
112
95
125
130
115
117
113
156
98
140
129
138
159
124
145
54
103
97
140
127
140
96
72
98
145
84
137
143
199
79
49
59
102
87
77
107
126
94
125
105
100
157
98
98
102
113
115
95
103
132
104
110
81
82
116
119
45
156
128
115
133
97
84
102
161
67
136
181
100
134
49
146
84
130
101
103
148
85
158
102
144
135
140
117
144
95
110
119
81
81
105
139
103
93
100
130
54
127
119
111
140
86
112
113
79
119
146
83
54
91
105
116
144
125
108
102
49
115
109
112
143
108
81
133
101
80
148
82
105
120
155
94
95
127
94
111
92
77
158
125
141
160
133
160
167
148
81
98
113
125
141
69
65
93
118
87
108
89
139
98
98
74
165
98
119
91
96
112
107
88
108
95
113
107
86
132
65
102
155
112
54
95
116
59
54
122
95
78
128
102
76
81
168
67
90
135
142
143
157
120
170
100
77
102
151
101
107
93
95
76
122
107
108
171
85
74
137
83
134
114
133
124
94
155
100
54
92
83
91
103
93
91
122
142
108
117
164
103
112
142
120
113
83
100
112
100
101
147
153
115
80
133
108
95
102
130
151
49
119
80
102
158
96
117
59
140
145
114
109
69
99
101
88
116
160
138
83
81
79
115
145
101
128
87
90
120
146
69
82
106
137
98
157
80
54
98
106
49
123
159
102
137
131
192
160
90
109
98
85
90
128
54
125
123
133
102
145
76
90
89
59
103
102
172
94
114
95
169
140
158
138
97
114
98
93
80
63
138
90
151
119
182
146
135
85
148
169
68
106
103
102
85
110
118
67
158
85
81
172
131
123
149
140
49
139
125
121
116
61
122
166
133
128
132
103
146
107
165
54
191
118
86
108
123
54
109
132
93
148
59
98
118
88
153
125
143
49
120
98
145
102
124
118
108
54
85
151
93
122
82
74
54
168
80
116
113
127
113
104
115
186
95
74
115
85
147
141
92
74
69
81
109
140
112
98
113
103
71
129
107
139
164
147
108
109
108
139
101
120
144
118
102
140
96
107
85
122
108
170
109
105
143
141
122
194
105
89
76
87
173
103
98
68
81
54
93
140
95
80
134
106
133
74
107
150
122
108
125
87
119
102
83
135
54
143
133
122
143
173
128
112
92
101
128
118
74
101
112
71
109
127
138
102
142
87
99
108
144
82
110
108
163
101
180
132
135
101
82
54
111
49
87
124
150
100
95
54
103
140
145
141
95
116
166
111
97
161
110
116
77
74
98
103
96
69
145
126
125
146
142
122
116
194
125
144
81
76
77
133
100
73
94
112
79
109
108
144
96
106
133
89
138
87
122
87
156
96
104
143
98
148
137
75
99
138
172
132
110
98
156
91
186
140
78
95
129
123
102
119
120
154
121
97
81
90
145
96
117
103
124
143
83
160
115
85
188
141
180
95
115
101
103
99
100
135
142
172
125
157
98
108
87
104
95
130
95
119
145
117
107
160
80
109
149
99
59
94
88
128
98
99
148
118
95
98
84
142
136
125
91
145
128
78
102
104
155
145
95
129
113
112
143
92
102
112
121
54
105
85
141
108
145
143
76
127
118
109
86
95
148
54
102
122
143
116
102
131
74
141
98
112
91
121
67
129
127
68
101
135
124
116
119
96
85
143
82
104
88
107
74
144
125
88
98
93
92
98
133
110
90
104
122
95
108
145
125
117
117
147
59
180
124
104
104
88
69
134
124
83
119
157
82
49
54
111
97
155
124
82
153
144
110
144
84
78
90
77
133
107
146
152
106
120
79
91
103
113
116
108
135
150
110
87
95
121
116
108
123
97
170
98
95
106
114
170
102
54
83
81
127
92
95
105
103
133
153
98
110
114
101
67
102
118
134
131
83
139
90
195
114
162
111
147
141
118
143
143
93
100
54
93
90
156
113
144
116
98
83
100
122
116
91
105
103
116
104
74
147
77
108
142
143
111
107
108
115
155
108
119
107
122
147
113
124
54
166
92
54
77
148
61
143
45
54
102
200
107
108
152
67
110
128
103
106
120
154
91
103
179
54
68
127
125
115
146
127
146
136
163
143
149
153
158
110
98
81
98
93
103
166
108
113
160
54
118
155
99
67
96
184
81
120
108
104
125
140
159
185
81
54
104
102
141
124
116
93
90
81
104
148
87
78
176
93
83
96
124
146
107
108
65
128
108
141
108
96
127
133
49
78
108
156
116
138
98
78
123
68
106
152
102
139
108
117
69
90
131
146
85
131
93
113
109
69
128
90
128
68
83
174
100
127
90
93
147
108
74
125
170
108
95
122
99
177
156
82
74
131
94
82
95
106
84
91
140
85
98
107
143
131
117
133
96
144
49
111
153
111
145
117
149
141
84
90
161
177
109
117
82
116
130
138
150
90
120
87
133
98
125
119
141
135
200
108
107
95
131
54
124
113
105
144
59
128
54
105
148
123
81
97
105
81
95
110
95
93
100
84
101
107
106
82
67
132
112
108
98
77
87
93
192
110
121
108
125
94
83
138
105
72
113
109
101
143
129
54
199
103
123
177
103
110
146
126
113
114
124
120
116
144
113
162
147
105
101
127
160
82
85
90
87
113
101
98
108
74
115
119
111
90
145
131
141
76
121
81
119
129
118
102
117
76
59
103
188
191
108
87
91
159
136
105
158
159
91
114
125
87
158
54
172
95
147
108
179
120
108
90
73
103
130
144
143
80
54
144
141
106
83
145
161
145
97
107
125
125
93
148
81
142
106
108
102
133
104
154
168
95
154
98
94
121
81
131
98
115
137
80
127
98
67
95
134
132
133
105
93
100
200
92
127
122
92
144
137
135
131
111
89
145
140
87
92
81
89
112
146
113
108
108
117
106
102
138
77
148
113
114
54
128
78
78
148
121
172
158
129
86
145
131
93
103
54
102
98
89
109
147
124
91
127
149
124
95
93
147
103
116
113
74
135
165
114
94
102
134
91
143
81
98
128
98
144
118
54
74
154
77
135
128
141
104
59
76
139
135
103
147
120
80
117
81
49
111
125
107
141
103
112
77
129
116
128
112
61
102
148
104
161
75
95
104
123
138
94
100
120
103
129
122
54
133
126
116
115
98
85
99
103
168
128
148
115
140
98
73
128
99
59
112
155
102
156
111
107
105
124
151
163
102
150
137
133
118
95
111
90
130
102
78
116
103
87
102
78
102
91
102
165
77
54
133
95
198
94
91
110
94
99
54
130
83
68
85
125
108
61
171
125
143
103
143
93
102
98
100
95
116
155
96
112
151
98
148
164
89
85
184
113
54
126
180
123
132
100
110
108
54
95
142
141
166
120
93
125
83
108
95
102
102
91
116
85
89
137
90
99
123
90
54
92
116
127
131
98
83
80
110
54
98
187
95
76
122
131
179
97
134
104
173
93
89
127
100
150
145
120
81
116
126
91
155
80
194
127
115
145
153
151
99
132
54
90
119
102
99
79
162
99
94
114
125
120
143
93
102
49
153
113
114
65
85
54
146
140
95
116
101
130
68
142
150
139
190
145
95
161
137
86
101
119
120
95
87
49
98
141
113
106
54
107
89
116
81
120
83
95
67
121
137
54
143
140
81
128
133
59
97
96
128
98
69
138
59
122
124
123
141
116
177
105
182
147
158
90
168
87
153
138
113
195
81
142
161
118
124
74
127
112
139
108
99
123
128
49
157
134
164
68
49
177
78
96
106
89
102
110
119
54
85
158
118
151
101
114
135
54
82
91
160
115
159
140
103
187
152
153
134
107
54
98
49
127
76
103
119
95
103
129
87
98
113
76
59
113
127
127
156
145
97
149
105
144
119
182
100
122
150
122
177
91
144
120
54
94
143
69
76
90
130
77
141
114
109
139
68
161
82
123
119
131
110
85
106
95
194
133
131
135
141
127
95
101
95
113
103
111
98
129
166
116
145
67
54
61
86
131
54
105
81
156
100
108
100
162
125
102
108
102
135
119
151
122
102
104
139
86
139
83
134
116
141
112
121
106
97
96
135
115
195
108
108
147
128
103
141
83
124
81
110
54
93
77
108
153
117
87
108
177
100
101
78
133
112
82
95
108
117
102
85
131
148
129
177
121
110
67
82
138
106
96
124
149
90
128
135
137
175
109
146
166
123
115
117
134
65
127
103
150
179
140
54
163
100
89
78
147
76
144
108
54
172
136
127
54
112
105
122
115
107
87
137
123
161
110
88
110
167
76
101
131
92
77
122
117
103
86
129
103
101
98
105
192
135
150
141
49
67
102
97
115
170
127
153
140
93
137
98
83
179
148
118
167
104
98
113
92
113
54
114
118
132
124
82
107
134
74
115
87
161
115
116
140
109
54
125
115
119
160
141
77
90
103
116
98
126
89
105
85
88
78
129
113
54
109
124
120
83
131
110
112
132
140
127
95
105
130
125
113
104
140
121
67
108
148
91
94
86
129
77
95
127
106
91
128
69
98
77
146
115
148
92
96
143
128
133
129
91
102
123
94
133
125
142
122
135
76
83
149
119
67
93
116
126
154
72
162
87
121
76
131
86
104
54
59
117
120
90
77
106
112
107
95
120
76
120
81
74
128
119
118
110
133
128
116
197
145
138
120
91
150
99
146
117
120
127
74
115
175
141
107
81
125
125
126
169
191
90
77
87
81
98
148
122
129
141
120
132
122
102
81
177
175
153
216
153
103
144
151
82
115
87
106
134
125
91
81
122
147
128
121
85
91
125
80
81
89
87
128
185
161
67
97
122
124
133
82
105
118
137
100
69
91
82
125
156
104
76
49
79
123
95
109
96
93
54
114
81
105
133
54
138
121
100
105
134
91
90
108
146
90
124
102
145
96
126
141
108
112
95
97
112
114
84
104
130
90
155
90
125
122
121
96
118
102
127
68
123
141
131
109
150
128
68
119
125
108
158
107
140
77
54
112
108
124
98
161
90
107
119
117
128
163
91
69
59
90
132
139
90
128
113
92
102
153
76
59
134
67
80
133
118
77
98
105
148
113
95
131
133
99
126
125
111
87
156
102
108
115
138
158
105
167
54
128
82
132
102
143
102
152
83
143
114
123
107
108
74
135
145
92
119
108
109
117
133
145
102
89
124
89
122
133
174
76
102
100
102
159
90
90
125
136
144
98
165
174
90
138
135
95
81
76
117
93
113
89
90
77
96
167
148
169
103
114
158
150
111
110
128
124
91
87
160
120
84
80
103
68
115
148
118
153
125
148
160
108
117
84
128
83
49
108
130
73
126
132
108
128
59
177
89
133
84
169
129
102
149
155
120
129
93
190
132
124
139
112
81
83
98
89
123
112
112
123
130
155
115
110
138
136
96
106
133
81
144
96
119
122
90
127
108
108
120
109
120
116
154
137
144
93
61
141
82
77
120
123
111
123
81
159
98
103
59
149
125
128
95
129
99
68
49
106
102
97
95
176
174
139
87
117
94
98
61
102
125
94
107
71
115
108
81
121
102
108
105
113
107
107
146
96
112
82
103
124
110
124
145
111
135
118
147
74
125
165
61
87
71
120
105
98
107
133
90
103
139
89
86
106
126
148
49
137
88
105
113
110
128
105
82
137
135
117
95
49
115
54
94
113
132
152
118
103
111
105
122
106
98
108
169
109
131
114
151
140
108
108
141
149
54
109
87
141
119
116
87
87
197
102
96
98
129
158
92
131
54
151
140
122
91
128
115
170
185
90
137
93
137
160
113
144
99
128
87
154
95
96
78
49
76
54
100
54
150
147
54
108
111
131
108
92
121
96
143
119
148
177
111
154
175
102
108
87
104
97
160
118
115
105
105
87
153
98
139
98
110
128
106
124
95
74
137
77
133
90
95
142
84
106
164
139
176
96
74
183
80
96
133
110
125
108
145
84
106
98
128
197
91
106
116
86
133
103
160
68
155
80
152
94
49
45
99
89
114
109
54
102
74
131
109
151
116
107
92
106
118
85
161
108
136
139
153
74
145
175
105
69
134
126
205
179
110
105
202
104
123
109
131
133
124
102
115
134
119
121
92
127
126
107
94
158
136
119
98
130
105
149
180
133
115
118
54
94
49
147
54
116
92
134
93
116
61
136
129
129
162
113
116
160
83
112
49
142
67
54
162
96
93
87
83
84
132
92
98
115
123
80
108
97
95
82
157
155
77
132
114
124
136
165
158
113
125
153
74
133
113
93
123
106
144
119
109
91
112
103
67
180
98
133
163
102
82
133
105
152
106
59
133
119
148
124
141
77
86
137
93
148
161
234
107
92
159
141
124
143
133
135
135
59
124
144
128
82
93
104
144
123
158
83
186
101
68
106
93
157
108
131
142
131
161
149
133
67
125
90
76
142
140
102
145
110
176
150
106
49
142
177
117
109
148
129
127
90
116
147
151
87
102
108
127
90
93
105
110
118
137
123
84
100
105
135
98
117
107
97
90
116
154
140
102
108
135
110
95
125
109
102
144
127
103
181
102
98
101
119
152
134
123
97
133
95
113
133
103
81
151
142
68
102
67
163
150
136
125
91
108
98
161
127
90
113
142
135
97
142
59
141
163
116
91
163
113
235
131
196
155
67
177
169
72
129
125
106
127
102
108
118
90
205
130
164
194
109
76
90
81
84
93
123
172
78
120
74
191
123
137
95
207
118
85
138
108
132
121
177
112
138
121
102
85
107
112
108
133
49
107
180
139
80
90
165
110
151
118
129
199
108
108
89
118
120
98
108
97
124
95
125
130
88
100
131
116
161
107
107
164
106
107
110
136
83
96
164
130
157
120
113
109
133
77
180
54
141
100
107
102
106
125
113
103
135
54
97
84
160
109
132
102
92
80
104
125
102
110
136
127
103
135
132
141
95
128
95
143
108
109
112
102
155
104
113
109
78
170
130
121
115
74
113
54
117
114
173
102
106
101
140
103
154
59
78
145
116
107
78
98
98
61
109
97
135
91
87
98
102
96
93
106
87
125
150
138
102
89
92
105
90
108
108
147
81
143
138
98
98
113
130
115
120
108
168
126
140
82
112
79
133
147
145
103
125
137
67
141
102
78
138
117
74
79
163
115
119
78
113
95
103
117
120
116
74
138
138
49
105
108
130
128
156
49
110
139
98
149
103
102
91
93
125
116
82
125
110
97
145
123
148
117
145
150
134
159
138
77
140
124
54
149
125
114
78
153
96
77
84
74
116
107
98
102
128
84
105
77
135
128
116
90
119
149
136
119
77
123
161
90
90
84
93
133
59
74
158
114
115
90
137
82
81
106
134
76
145
143
81
67
103
124
78
150
105
123
93
113
103
102
49
163
141
124
145
111
158
78
93
134
87
139
116
89
127
144
134
113
102
94
144
154
126
96
127
153
139
91
138
90
54
172
105
80
99
49
77
133
83
87
120
141
124
93
95
105
177
153
131
132
100
83
92
114
128
101
83
157
134
108
92
93
122
139
146
148
128
96
158
106
130
158
82
93
90
160
102
129
147
108
61
97
77
54
85
87
136
107
165
86
124
116
76
145
143
116
54
122
118
147
95
83
87
133
135
104
101
98
149
54
115
69
113
115
118
107
158
125
95
104
81
99
118
128
183
102
54
147
61
83
98
88
119
96
95
87
93
113
143
122
106
148
59
124
154
107
102
115
148
102
127
139
154
147
143
113
93
102
133
153
96
92
117
129
130
128
91
49
116
112
77
49
54
95
83
77
113
95
95
134
134
127
107
81
61
113
127
128
108
134
155
125
69
169
153
103
129
120
83
138
108
118
54
70
74
118
99
113
103
124
101
192
142
83
97
141
184
134
99
100
139
148
90
132
155
78
119
102
95
67
83
119
125
81
146
147
157
102
119
161
113
59
113
158
148
86
69
115
95
157
95
74
153
108
134
124
125
111
95
85
110
115
49
108
54
172
85
124
102
82
65
91
90
120
128
143
147
83
110
113
173
84
54
107
107
102
108
102
59
98
97
146
123
163
134
59
102
169
102
103
59
145
148
190
102
98
141
191
102
131
108
108
131
151
105
122
149
113
134
82
142
160
96
128
106
107
113
134
116
143
104
114
149
122
116
80
132
111
108
77
135
87
74
105
102
93
82
74
118
120
81
180
68
111
112
147
74
144
54
120
112
124
82
100
134
69
95
156
103
163
128
65
86
113
102
111
93
120
120
83
139
95
171
116
127
93
93
106
95
95
160
114
126
74
125
98
129
148
105
110
70
150
150
102
134
142
138
97
123
91
128
174
67
125
92
113
180
113
120
54
97
113
133
110
129
125
147
122
130
116
100
81
59
86
49
177
91
125
97
107
102
123
98
85
81
132
154
176
119
96
141
103
77
110
90
135
106
117
59
92
106
113
113
125
122
59
117
135
135
115
54
95
85
107
125
123
178
125
108
105
114
95
115
153
142
83
116
139
115
103
169
79
118
118
132
120
141
90
147
125
124
95
138
125
158
138
157
137
93
83
97
110
95
131
112
118
115
102
98
124
165
144
85
115
86
147
122
104
139
122
65
67
65
153
128
107
77
110
107
106
129
126
123
129
54
141
77
97
108
143
161
188
140
111
137
76
119
103
102
176
91
77
120
102
121
85
118
143
92
95
101
107
102
115
54
67
103
171
94
88
95
74
132
109
81
110
145
90
118
122
91
130
135
170
138
113
125
120
103
103
190
111
42
162
95
97
132
130
140
54
144
113
49
136
105
175
157
91
107
165
213
134
108
132
133
54
98
167
112
125
81
79
106
98
98
131
108
120
177
77
88
82
118
78
107
118
129
127
95
87
95
139
117
98
101
92
172
87
105
90
87
91
85
54
193
119
123
98
147
93
97
95
93
134
132
54
141
122
59
113
116
186
110
78
72
77
148
73
129
146
83
157
133
90
128
146
132
135
149
81
78
130
135
76
67
102
148
117
125
67
113
214
95
81
138
151
125
112
59
95
120
95
118
142
129
127
117
151
76
93
129
59
90
102
54
109
117
54
125
133
105
149
113
76
81
114
148
116
113
124
139
102
125
131
105
80
108
117
121
114
67
130
54
113
135
100
118
146
147
127
90
100
148
80
77
94
90
100
97
81
112
139
125
137
68
142
148
141
154
98
123
117
114
98
108
101
123
129
111
77
133
54
74
137
116
98
54
108
54
113
91
145
84
126
98
112
86
144
105
59
59
128
54
170
109
102
137
112
100
94
153
92
142
122
129
124
103
125
167
123
109
76
125
54
110
54
93
143
117
119
103
95
108
102
108
77
87
79
95
111
102
71
153
103
81
96
57
89
108
105
67
102
68
93
103
101
78
76
102
83
148
140
113
140
105
102
102
136
95
81
168
127
87
102
123
114
103
79
112
103
122
68
103
125
122
150
98
96
92
54
148
98
124
61
81
68
132
151
107
74
96
104
99
163
105
115
98
96
119
102
109
104
123
182
173
128
61
198
175
101
149
108
135
95
182
103
103
54
85
78
81
157
152
101
176
125
78
105
145
91
54
169
122
98
146
130
131
98
82
99
99
65
107
117
142
143
111
105
135
99
140
120
91
169
140
120
74
182
113
133
49
140
125
94
199
189
93
97
109
121
103
108
94
103
91
100
122
80
146
49
111
102
102
125
106
122
104
165
81
122
155
95
116
116
118
156
125
128
116
95
108
77
103
147
84
95
146
127
133
97
54
103
59
95
124
76
128
152
102
114
144
133
118
59
94
158
144
100
85
77
128
83
92
90
82
102
154
93
82
112
84
118
114
95
147
101
104
120
101
93
131
103
126
145
116
124
84
61
118
95
101
61
95
134
95
49
141
83
94
103
54
87
105
49
117
98
117
139
102
125
146
105
95
124
90
190
107
88
166
123
95
95
121
160
119
157
128
135
147
125
100
167
97
107
156
112
77
54
148
110
102
107
115
142
147
93
132
123
76
103
54
84
88
87
89
85
143
149
123
126
81
139
87
67
74
108
83
74
83
108
59
131
194
171
161
103
121
133
151
128
45
146
87
145
113
150
102
165
100
111
169
133
117
143
93
94
178
103
119
121
103
113
146
98
140
102
87
155
157
54
93
133
146
147
159
97
154
122
54
120
113
102
120
127
159
222
146
68
161
133
84
113
155
122
124
133
117
134
116
127
97
141
97
106
108
80
109
98
102
144
133
105
181
100
108
146
78
141
137
132
98
148
118
128
95
126
108
135
90
117
98
108
95
148
74
89
109
179
160
146
134
154
133
98
91
104
153
113
67
102
119
112
169
93
144
82
122
141
149
123
135
126
116
133
102
154
172
117
148
116
100
154
170
49
137
186
132
76
74
98
86
109
170
108
102
132
110
145
143
141
162
161
125
120
80
115
115
110
144
133
126
59
120
119
123
109
95
120
120
108
118
102
111
98
95
112
120
152
80
73
98
137
114
98
113
49
132
127
98
98
97
107
160
78
73
146
100
76
146
136
137
99
95
161
120
131
115
100
81
116
134
143
91
96
91
112
96
131
74
54
78
83
130
96
142
81
81
113
155
108
68
90
100
106
144
100
151
115
84
101
113
119
139
94
87
123
135
137
108
117
96
134
103
85
110
102
81
78
131
83
115
54
102
92
148
134
120
114
153
108
130
125
120
81
133
170
89
129
113
120
77
123
120
156
108
83
95
160
133
121
112
106
120
100
131
118
108
104
86
72
89
94
157
165
115
98
106
135
79
125
127
131
90
142
123
156
105
109
160
138
142
135
87
108
126
115
91
125
122
122
114
139
136
117
154
101
79
105
97
129
113
186
130
102
99
108
144
93
87
116
103
54
98
116
130
45
91
99
106
128
93
113
119
144
146
119
102
102
78
83
177
156
107
83
81
115
118
134
116
115
95
78
117
95
127
112
108
105
163
71
119
114
177
104
101
170
105
132
110
139
102
128
148
95
133
135
150
166
148
85
102
91
77
115
146
105
133
108
54
111
130
87
101
96
118
170
133
148
188
170
108
143
100
110
102
143
140
122
111
123
109
101
112
109
130
145
100
102
148
111
87
143
115
126
98
166
98
126
118
130
74
179
117
152
82
79
109
144
93
74
107
108
117
102
112
156
54
108
100
127
107
114
180
106
108
133
133
107
54
176
120
79
116
125
115
112
123
146
95
102
114
122
108
152
81
143
125
102
141
49
89
136
129
126
81
135
54
122
128
139
149
139
103
93
110
81
122
87
117
123
109
108
65
159
82
139
54
147
133
87
128
134
100
81
128
129
106
69
142
85
133
98
67
115
111
118
107
96
169
125
93
74
95
146
130
95
96
69
95
108
139
127
54
128
127
98
149
136
169
133
117
149
133
133
100
74
147
112
76
105
107
130
113
94
116
148
54
114
111
84
113
124
89
92
123
147
123
140
152
87
153
95
90
142
119
93
77
126
107
108
103
151
96
124
82
125
113
206
136
90
125
141
75
122
125
79
54
134
114
132
152
141
105
128
133
191
88
122
76
95
156
125
78
115
165
85
136
103
76
161
94
109
156
124
145
112
98
143
99
129
148
129
153
87
139
130
83
176
97
129
115
122
78
118
108
116
130
81
114
93
144
92
155
83
127
61
104
102
83
99
98
139
143
116
161
118
87
81
165
87
54
108
133
169
61
138
112
80
142
92
102
130
164
95
49
61
85
91
141
153
125
54
105
105
126
78
109
105
102
100
69
119
115
127
156
133
149
101
81
144
127
105
95
104
80
144
115
126
98
92
84
106
85
102
137
139
173
109
54
87
134
90
124
102
54
81
155
115
214
167
177
82
93
87
105
124
76
123
102
76
99
127
105
113
95
126
158
54
117
139
131
103
134
87
158
101
137
140
93
108
150
200
86
115
144
54
153
116
112
96
141
139
119
106
151
95
98
130
147
128
164
156
134
133
80
54
95
119
106
87
105
120
103
102
96
133
80
91
107
131
124
93
91
110
129
128
109
91
95
143
105
103
143
94
103
89
102
162
123
144
105
101
78
78
133
185
145
74
149
129
117
85
118
109
118
102
97
177
161
103
95
142
147
155
105
100
122
126
102
83
95
77
155
135
116
98
78
101
109
103
149
119
159
81
113
118
110
75
76
106
131
77
78
106
76
194
97
140
165
127
102
127
146
98
107
85
67
119
107
198
136
127
112
90
98
49
142
115
133
120
74
148
126
115
138
83
130
113
100
123
150
180
132
107
95
112
106
84
148
133
131
143
108
87
104
138
135
59
95
130
132
68
95
159
84
102
109
188
164
128
105
101
127
153
93
165
108
138
144
123
133
96
118
133
134
76
74
117
76
81
93
102
172
172
112
130
146
81
74
102
103
105
108
101
162
93
104
127
121
120
93
91
134
97
95
94
145
90
85
144
118
120
82
157
123
175
156
186
98
108
76
92
123
148
115
116
177
125
127
165
148
102
95
123
155
87
157
165
171
103
128
82
103
169
59
98
132
98
49
108
97
111
97
131
118
101
149
109
105
115
74
121
54
129
109
142
170
181
98
123
110
95
134
54
112
54
111
145
108
74
111
130
138
144
135
98
108
148
111
131
99
118
77
146
106
166
199
125
140
127
131
89
105
101
114
149
82
123
54
140
95
99
124
104
117
76
118
104
118
116
123
125
134
161
156
140
49
119
96
97
76
90
114
68
148
54
113
97
104
54
126
146
146
161
115
108
132
96
126
134
108
129
102
69
135
74
54
140
95
163
54
125
77
49
110
103
163
54
117
159
95
92
102
191
141
109
134
126
126
127
81
156
133
121
101
131
87
76
158
87
132
90
100
125
108
148
146
135
59
98
80
144
126
105
99
102
173
89
158
102
119
123
118
172
112
83
141
69
144
86
107
106
112
119
150
146
125
168
127
54
115
125
104
125
107
95
142
95
148
125
108
113
110
160
102
108
76
113
84
74
131
136
125
115
54
90
135
123
93
163
131
89
79
109
147
165
130
140
54
144
143
102
104
91
91
110
133
123
153
124
88
96
105
99
134
142
130
154
128
126
127
123
97
108
73
193
148
117
136
165
49
160
87
95
131
165
96
150
158
125
102
85
119
134
141
120
117
122
135
112
67
140
54
119
87
57
103
81
173
147
59
141
49
158
144
67
100
144
81
145
148
98
87
77
59
49
79
93
113
108
138
99
149
144
132
131
99
115
110
91
74
131
115
96
96
116
69
135
155
90
142
91
95
144
78
98
143
101
104
103
102
108
134
87
95
84
96
137
130
54
118
165
180
76
148
110
93
127
141
140
67
113
87
141
105
102
143
85
124
73
112
124
87
170
102
107
164
128
138
83
120
145
90
136
111
98
132
109
54
110
102
145
116
102
107
100
165
83
145
129
179
97
103
113
84
140
196
95
102
103
125
76
114
102
120
124
122
89
164
102
95
121
128
100
45
113
54
83
108
150
128
97
125
148
49
113
164
160
100
151
128
93
148
148
93
122
98
87
102
144
119
149
201
76
140
128
108
74
61
85
103
162
102
76
103
103
118
96
110
145
127
122
112
107
96
144
111
125
137
162
125
105
115
148
113
61
83
100
130
114
76
98
122
142
102
130
79
163
182
68
125
112
107
54
54
62
81
77
137
84
73
142
108
116
119
141
116
54
113
103
161
108
101
94
91
148
77
99
96
116
96
105
116
139
127
134
101
90
61
54
111
132
105
158
54
87
135
130
130
87
156
82
91
122
108
156
108
59
151
154
102
54
97
82
125
54
146
115
143
144
98
117
135
155
117
90
102
87
175
93
132
91
141
108
113
113
92
115
116
116
129
62
69
80
77
117
49
134
54
77
102
108
143
96
129
105
101
76
93
129
102
119
126
108
81
54
107
131
93
98
93
93
95
93
132
120
138
119
110
97
128
127
122
129
88
153
154
114
106
118
143
98
102
128
105
99
132
163
87
83
110
123
136
74
127
138
125
101
103
68
87
148
104
154
157
90
139
146
77
104
122
112
150
104
127
107
105
147
155
54
108
154
165
120
135
153
116
105
125
78
136
127
158
144
138
127
127
127
121
120
91
102
82
93
92
100
111
150
93
146
81
131
117
79
177
156
97
98
129
95
190
59
74
93
143
74
133
98
128
130
133
61
96
54
123
183
102
123
106
146
84
118
182
143
123
116
69
114
92
76
107
77
107
144
115
74
117
128
139
111
155
69
140
85
113
104
159
74
103
149
115
129
148
107
118
149
130
98
130
120
119
95
194
151
97
96
134
120
59
54
131
108
110
85
77
93
102
129
111
117
92
102
131
156
113
121
49
135
103
161
94
198
119
70
115
74
137
102
95
137
173
128
125
84
59
144
102
177
141
171
77
90
99
92
146
102
152
138
104
140
109
145
81
89
128
143
103
115
117
98
139
91
49
112
101
98
69
88
215
83
76
111
90
134
107
129
106
131
120
135
113
49
129
112
129
84
152
103
112
118
59
186
61
144
121
125
119
106
87
107
153
54
145
54
144
109
82
103
115
85
49
126
117
100
108
91
113
135
79
142
116
128
194
79
108
123
85
103
134
130
54
133
61
91
81
127
151
107
177
112
87
59
104
146
143
128
93
88
89
83
102
166
153
114
67
115
151
107
182
114
167
61
76
89
133
99
76
153
110
104
102
135
150
138
145
144
109
110
149
133
69
169
140
91
102
84
87
87
76
146
119
81
136
108
101
153
101
90
96
125
85
98
125
118
107
131
54
111
98
49
113
109
139
146
111
106
128
108
114
103
182
49
141
129
136
91
141
85
124
96
165
124
117
124
59
96
122
104
116
141
157
129
129
105
135
108
54
67
78
137
135
94
108
131
133
124
89
108
81
83
171
93
108
102
134
116
81
90
59
133
87
128
68
123
127
79
108
117
97
78
100
143
160
136
85
102
125
87
99
118
105
104
101
106
98
125
128
106
102
93
69
162
90
158
124
126
131
120
152
92
68
155
101
145
185
82
100
118
122
128
118
102
112
115
124
93
119
54
123
97
105
162
125
88
107
93
185
126
143
54
139
77
133
95
131
158
94
125
169
164
133
91
158
49
148
161
198
140
97
88
134
129
179
77
88
103
125
127
119
148
137
93
136
83
139
98
113
143
61
82
116
93
150
98
49
137
88
106
125
54
117
148
159
147
107
108
117
98
105
155
85
155
100
105
116
125
173
134
96
89
95
124
127
97
83
129
160
104
128
109
76
102
181
111
102
103
132
124
114
102
109
132
54
81
127
130
80
92
155
97
137
118
150
145
91
115
118
162
74
81
128
154
112
117
101
129
115
161
141
115
87
98
49
125
94
200
116
103
119
105
123
98
95
108
113
190
91
125
137
102
127
83
140
81
102
94
102
118
143
142
96
85
143
128
97
136
113
101
138
103
76
155
134
118
81
105
138
200
141
95
102
98
125
87
126
120
95
113
114
101
76
102
161
132
117
122
130
124
87
126
92
212
87
74
98
142
103
179
98
143
123
82
68
98
93
128
87
113
152
98
106
93
86
107
96
125
107
105
135
102
155
108
113
144
102
125
153
125
117
54
76
133
131
108
74
113
156
116
106
104
97
112
102
67
95
126
154
106
81
59
123
67
106
135
158
68
123
117
83
135
108
136
61
82
88
145
97
126
165
120
141
111
139
128
119
114
98
116
106
69
114
156
144
169
69
126
98
80
116
49
71
122
129
95
67
103
102
114
86
151
128
80
90
100
49
125
98
80
185
102
131
160
180
80
177
121
143
83
172
126
133
136
102
130
49
102
95
136
151
106
94
49
112
135
104
120
118
89
102
119
97
93
90
145
121
81
105
54
113
49
61
114
132
125
139
98
161
139
200
99
74
113
170
165
102
93
127
133
105
113
74
116
49
115
74
128
105
125
123
95
137
132
54
128
143
54
77
119
105
87
102
69
141
169
101
130
158
123
105
49
113
93
135
89
100
135
136
105
74
173
139
98
85
54
80
81
132
116
95
103
122
95
94
128
101
91
78
175
80
108
90
150
145
132
85
74
113
76
97
108
49
169
140
105
108
102
139
142
131
102
135
98
144
160
141
99
98
128
111
131
134
115
130
102
81
90
144
76
95
104
172
129
59
122
122
142
144
109
113
103
74
178
112
125
103
148
96
153
98
82
130
73
186
98
153
111
125
67
105
81
76
91
86
112
124
148
155
81
120
171
116
111
145
115
129
119
146
95
98
90
125
80
101
103
140
131
128
165
119
68
113
49
98
76
128
135
104
112
102
127
109
158
81
130
45
54
96
194
101
77
133
126
106
157
103
99
149
77
164
127
135
97
110
129
77
108
98
103
153
156
96
128
116
115
119
90
129
203
118
76
109
131
148
102
90
125
102
142
67
155
113
107
61
141
103
88
135
123
102
102
120
132
133
110
59
140
131
191
146
103
143
123
148
108
122
134
145
90
157
95
128
93
167
125
54
143
81
68
81
118
108
77
127
152
98
140
98
126
114
112
127
133
123
133
122
148
118
96
147
134
135
74
76
93
124
97
216
120
131
81
76
77
148
132
154
102
130
143
69
172
165
125
147
122
130
163
160
147
67
114
84
124
118
125
165
103
98
103
174
144
96
97
131
122
112
78
81
122
123
117
78
156
159
135
98
128
151
128
104
163
88
108
90
148
113
81
95
118
100
68
118
101
105
107
103
165
91
100
83
116
176
144
133
106
75
77
127
108
112
119
90
103
85
74
115
96
116
90
81
59
96
119
139
77
120
131
67
101
93
122
126
109
89
118
153
144
132
159
108
113
113
138
74
54
134
116
99
135
98
125
97
124
146
158
164
120
86
158
93
106
113
148
124
125
77
95
139
173
169
165
114
95
128
59
132
138
54
102
106
110
154
138
99
96
138
119
100
125
54
143
115
90
98
120
110
119
177
104
145
136
165
88
131
131
98
72
152
103
135
106
118
128
105
143
163
95
101
103
143
139
97
91
126
175
90
120
112
179
148
127
129
120
115
95
102
93
54
109
94
70
74
65
98
121
177
177
142
130
177
87
119
128
96
124
169
146
104
113
54
108
103
98
105
148
76
100
180
132
85
120
155
89
147
97
115
98
112
111
95
138
123
81
168
143
119
174
76
98
102
125
128
95
145
161
120
123
98
154
135
153
120
165
112
89
98
141
74
54
97
54
116
120
54
146
98
98
105
101
158
133
178
81
127
95
90
83
106
127
113
102
57
111
97
76
98
108
93
161
146
108
85
95
147
90
108
125
93
144
166
161
160
115
147
167
92
113
54
138
95
115
127
88
167
82
147
107
106
144
130
158
172
103
131
106
129
95
49
111
105
93
110
162
128
54
134
103
133
83
103
147
54
95
119
133
77
117
109
145
161
104
81
81
135
137
113
88
102
132
113
131
128
100
155
112
102
131
108
61
112
127
77
140
116
122
149
148
91
91
106
98
153
152
125
110
130
105
169
54
147
113
129
129
102
110
154
120
59
78
104
105
106
134
120
81
74
131
102
87
108
67
151
152
103
102
77
120
138
115
117
113
97
91
103
97
107
123
76
112
160
138
120
131
89
122
103
54
122
103
200
138
133
143
67
121
80
113
113
98
54
154
143
173
81
131
146
78
96
100
67
130
126
119
157
87
104
105
113
146
98
145
138
128
94
144
158
122
108
74
90
83
160
100
138
142
147
101
65
129
93
91
102
83
114
139
160
173
67
151
106
113
105
128
85
92
131
101
93
79
80
103
101
124
93
134
120
133
78
147
140
83
104
81
117
81
108
54
182
143
131
87
98
145
123
79
124
124
74
101
130
105
106
74
112
148
166
135
145
127
121
152
128
112
115
134
148
79
112
83
110
105
125
144
70
122
138
109
142
120
103
93
105
136
54
126
83
71
93
87
59
148
108
97
102
122
177
87
102
67
126
77
90
134
80
76
113
117
95
91
114
123
148
144
135
118
82
140
104
115
97
118
98
104
88
132
122
103
107
116
113
114
133
155
116
115
137
93
74
109
159
49
81
104
98
127
87
134
123
86
113
137
95
114
192
115
140
125
111
98
171
117
144
118
102
68
121
94
132
96
128
82
134
110
54
120
62
103
102
108
205
108
83
106
49
151
81
98
101
160
90
135
142
102
162
112
94
98
188
104
122
143
113
89
139
135
105
81
116
117
91
100
116
108
72
141
119
93
131
74
141
130
115
81
148
92
145
108
129
160
128
116
104
147
54
161
114
59
103
149
74
117
84
150
139
101
54
95
113
168
190
102
157
123
116
93
113
102
94
102
108
134
104
141
115
105
102
93
94
98
113
177
148
127
116
152
108
54
69
140
126
102
67
114
82
82
61
150
82
99
127
111
124
126
59
89
122
101
108
110
76
80
108
148
81
95
90
95
98
135
140
111
81
129
140
104
59
138
142
95
120
143
126
86
95
196
102
108
113
54
82
139
145
61
61
133
105
99
123
141
156
138
136
162
82
112
135
139
108
154
102
83
89
134
103
109
133
113
95
94
130
113
77
136
98
182
142
146
102
179
120
131
118
129
145
120
154
111
112
133
102
108
127
115
105
102
102
159
128
122
102
130
126
96
54
117
131
98
139
93
116
101
97
87
113
101
106
113
90
164
115
84
59
103
83
54
105
98
141
106
143
105
112
145
133
106
87
143
109
158
114
108
54
102
147
146
140
87
140
105
107
175
77
180
110
133
124
129
95
106
165
106
91
98
145
132
113
122
89
98
162
110
149
77
145
109
122
154
131
74
107
113
108
81
125
111
162
123
127
42
123
91
119
133
73
84
108
102
182
113
116
103
130
106
177
102
108
188
83
155
167
132
144
146
91
144
138
119
131
143
102
95
137
127
69
140
102
133
125
145
89
94
103
113
135
103
123
107
107
145
100
115
188
92
144
158
125
106
83
83
116
105
96
139
108
54
104
147
144
106
54
108
87
86
99
108
112
61
92
95
124
92
144
123
128
103
120
106
98
136
137
80
138
143
105
83
142
163
94
87
122
107
74
107
76
106
59
94
125
69
85
108
163
191
141
102
102
102
133
98
77
90
148
121
93
54
148
95
80
162
164
139
69
138
134
130
101
141
131
95
146
54
102
125
118
100
95
104
133
102
100
149
78
115
157
74
129
149
175
98
168
103
112
113
91
129
103
54
115
95
159
143
153
61
115
113
134
124
115
93
175
133
76
124
135
138
168
137
135
159
77
95
111
73
116
129
77
120
89
82
161
138
132
123
78
179
76
74
108
138
90
90
98
68
81
133
85
169
122
161
111
145
79
74
129
89
107
83
126
145
136
129
145
81
125
146
125
98
125
116
128
199
123
132
95
118
103
69
145
54
102
80
126
121
98
102
112
120
125
161
103
107
156
141
59
112
132
54
54
76
114
128
88
118
95
181
161
115
131
99
116
153
128
143
165
118
63
102
74
102
103
137
106
88
158
115
127
87
122
103
113
108
59
98
74
77
92
116
76
104
153
150
116
139
152
143
86
165
125
153
85
116
49
143
112
115
139
120
187
163
89
105
120
102
82
107
167
123
113
108
179
79
146
127
82
99
137
131
74
69
163
109
113
182
102
113
90
95
117
98
102
108
96
135
108
126
118
109
121
139
122
113
117
102
108
95
104
89
145
74
143
92
61
227
59
142
144
143
88
82
88
113
103
87
54
103
82
142
102
119
98
148
102
110
75
117
141
91
108
117
82
81
132
85
70
134
108
133
93
133
156
148
126
133
98
59
133
49
82
130
110
105
151
143
49
54
59
114
116
129
161
82
95
118
142
123
113
107
133
87
77
84
94
111
102
129
182
167
115
128
108
105
147
112
148
111
77
93
141
127
145
122
96
108
166
167
98
49
113
144
163
81
100
146
118
74
138
197
124
155
112
113
114
158
108
85
100
123
127
108
98
156
93
140
143
121
140
125
115
102
146
101
101
103
143
112
151
97
124
123
59
144
104
115
178
128
102
132
88
96
117
128
59
135
115
110
177
128
136
145
135
81
87
199
74
113
144
117
103
114
135
131
106
132
137
126
82
117
80
135
103
69
129
161
148
84
119
98
91
125
127
116
95
108
133
101
103
151
158
98
102
105
144
108
85
151
133
108
104
142
103
125
118
112
95
90
54
148
145
148
133
188
163
111
74
103
121
141
130
80
124
139
107
147
179
136
126
186
105
103
96
154
98
141
135
139
131
128
95
131
99
194
102
76
54
185
102
95
110
102
87
133
189
89
89
127
54
106
54
145
131
150
133
91
162
115
133
67
119
92
125
119
106
141
54
49
88
81
171
142
96
150
135
95
119
113
102
108
161
104
127
135
119
91
112
163
102
112
74
84
93
108
104
129
199
112
54
151
128
108
76
86
103
113
89
157
59
88
100
124
161
160
102
120
98
96
101
92
127
76
131
130
92
103
83
166
103
49
54
165
94
90
97
113
149
106
121
113
167
118
104
95
106
108
106
93
100
100
129
154
87
185
123
154
107
151
76
90
81
93
95
134
148
135
131
148
49
125
111
104
101
171
153
139
118
113
54
152
49
76
113
151
63
65
133
107
116
54
118
147
134
132
154
165
54
125
134
95
106
98
67
140
49
85
118
123
114
123
139
155
130
117
148
131
148
151
127
90
127
121
92
74
140
107
108
134
144
119
105
92
154
122
87
148
103
131
59
169
108
141
116
132
133
111
91
76
159
95
106
125
163
122
114
143
116
94
138
95
93
92
119
179
97
129
122
136
77
117
119
87
133
97
135
129
54
106
140
122
83
87
111
110
116
113
125
93
82
95
120
123
117
131
133
147
116
108
149
107
105
130
92
128
115
61
104
135
113
141
103
106
77
124
125
97
161
110
100
98
106
113
141
98
108
91
98
130
140
91
125
127
95
113
102
92
133
153
113
118
137
76
107
136
119
121
101
85
106
113
127
95
119
118
125
73
129
68
91
106
126
102
95
148
122
102
102
116
77
118
123
80
199
120
49
138
80
92
105
74
156
98
119
148
114
104
170
132
170
168
108
128
112
99
123
133
159
95
120
120
113
87
104
148
120
86
75
130
101
109
78
146
133
90
143
156
74
98
76
118
184
70
144
145
97
92
89
142
101
74
115
85
84
169
102
129
114
93
80
122
109
122
125
125
123
89
108
165
106
155
59
108
92
103
118
107
155
81
144
141
93
161
115
106
122
93
125
107
98
98
68
139
132
128
130
132
131
96
132
135
148
106
99
184
107
54
128
146
120
119
132
102
144
144
49
90
106
139
106
157
154
137
81
80
160
78
100
81
74
98
122
118
81
102
178
102
101
67
108
172
108
115
112
146
110
145
173
159
93
83
211
102
98
132
98
98
109
91
149
124
108
74
95
173
128
134
129
143
139
98
121
135
76
137
93
144
111
49
94
131
92
131
112
54
119
108
111
113
94
148
97
140
95
154
74
104
144
96
110
172
101
158
102
93
92
81
67
165
103
92
104
101
128
154
123
86
74
141
67
93
102
91
125
108
113
162
54
113
106
106
120
129
113
132
93
89
132
164
98
125
74
166
121
78
49
130
98
149
168
49
117
143
108
83
117
108
103
123
103
102
107
99
77
109
133
78
49
99
135
59
125
81
108
67
106
87
129
91
128
91
102
54
149
169
128
82
122
87
152
153
160
111
142
122
102
84
126
100
96
102
113
126
129
111
110
105
102
122
155
86
91
123
131
102
102
96
150
126
150
73
98
108
49
59
97
74
134
49
190
176
91
100
104
74
151
77
139
87
163
107
113
42
136
148
107
118
90
171
150
142
54
113
59
127
129
120
177
106
125
74
163
145
108
108
166
49
130
144
87
144
104
124
59
173
135
106
77
114
155
79
73
83
96
108
118
163
163
105
90
105
147
148
108
95
102
105
185
165
106
99
177
179
106
102
97
96
54
76
158
184
108
59
107
82
128
113
124
110
131
138
108
74
92
96
98
125
168
95
181
85
117
162
101
126
102
103
99
138
98
122
94
98
96
98
85
90
87
113
137
61
101
96
139
110
177
106
126
93
99
165
121
104
85
105
100
105
94
135
113
217
124
54
159
59
49
125
182
113
96
146
141
152
115
123
90
159
119
129
108
84
83
144
115
151
123
97
114
102
90
82
125
90
108
160
108
185
125
86
178
150
112
108
118
93
144
115
150
133
99
129
151
168
61
100
131
74
149
156
87
102
108
101
158
108
104
87
65
81
148
135
98
156
153
93
134
94
90
85
100
81
94
156
110
65
69
158
93
218
129
94
173
103
132
127
115
111
121
49
108
102
102
144
49
126
84
91
76
103
99
112
94
120
137
156
119
102
104
99
96
95
125
158
160
77
120
94
113
102
177
116
150
144
161
114
139
54
103
119
129
59
127
76
144
157
140
141
103
127
172
143
49
82
89
134
115
96
163
135
144
127
127
128
140
158
134
122
158
125
165
105
100
116
146
132
87
139
106
65
131
118
54
114
143
127
112
134
54
137
131
94
126
98
118
129
128
138
121
59
93
96
146
49
98
141
95
109
108
97
143
74
128
101
108
135
108
103
54
124
111
129
82
113
151
91
90
132
108
150
95
112
154
135
148
148
135
135
49
118
123
54
180
148
143
125
119
98
144
115
84
118
116
162
118
95
177
88
167
98
92
152
128
120
115
102
96
59
117
140
118
95
147
154
172
90
141
135
77
135
108
128
158
118
74
133
148
65
123
117
90
81
88
93
161
105
120
96
124
108
115
68
123
136
174
105
89
108
91
85
108
133
101
155
133
155
81
97
145
54
134
190
82
118
145
97
102
101
93
108
113
139
176
118
136
110
85
87
136
170
154
84
102
120
177
172
89
54
103
102
98
100
107
131
138
95
95
91
124
161
156
113
128
131
90
113
153
119
92
95
119
124
119
111
115
54
158
83
76
108
132
113
111
104
130
54
133
104
122
61
140
111
105
100
54
132
122
157
108
117
116
112
102
115
116
99
102
134
54
98
132
132
97
124
144
143
95
78
70
106
128
114
114
132
81
77
106
67
59
82
108
127
120
128
98
108
104
93
144
102
144
108
144
83
123
103
101
59
111
106
67
91
59
109
110
83
98
127
141
102
198
126
161
54
93
156
106
95
97
78
122
108
84
90
108
81
98
95
96
120
104
54
150
54
136
85
99
107
152
121
129
128
90
81
69
112
177
128
139
54
54
137
125
111
77
158
148
133
128
108
106
86
84
102
109
54
129
164
77
177
99
99
89
137
144
122
108
104
94
105
59
146
77
128
94
109
128
67
91
143
163
54
143
143
95
123
110
127
49
133
105
148
69
71
179
95
98
137
85
152
87
130
131
105
127
135
100
87
102
174
148
135
139
102
121
77
121
113
49
54
103
87
137
140
108
156
125
117
108
119
85
147
92
54
139
146
142
163
115
77
145
103
133
148
83
123
95
110
95
123
108
78
134
102
86
107
72
138
102
76
49
125
90
95
81
114
106
89
153
148
144
144
93
154
158
127
111
104
152
115
141
170
92
69
174
76
121
106
102
121
81
93
83
54
77
76
152
82
149
148
153
54
148
98
67
89
101
82
104
130
125
134
97
106
98
120
164
109
102
120
101
136
151
130
93
136
80
95
115
94
102
85
108
73
95
116
115
117
85
125
106
108
118
76
122
107
129
99
113
101
93
77
87
122
130
160
122
168
95
90
103
131
141
127
90
115
105
80
128
158
128
59
93
81
85
107
135
90
113
124
137
128
87
148
133
125
116
54
102
138
94
95
49
105
172
100
83
139
102
138
77
222
67
93
125
74
160
153
118
120
135
131
154
103
140
142
120
172
102
158
54
157
90
152
185
117
105
105
127
54
130
95
110
109
123
102
123
95
113
137
99
163
103
79
120
137
96
148
95
105
109
108
122
121
122
69
54
149
67
129
131
99
111
116
102
105
179
132
138
139
88
126
94
125
108
105
134
74
128
73
85
77
90
108
87
101
95
108
114
149
127
76
94
194
127
141
49
109
157
82
81
140
117
106
144
159
127
125
103
90
129
108
116
86
92
94
167
153
69
144
125
108
119
158
120
138
90
139
54
119
164
106
113
49
147
108
119
113
102
82
116
151
120
90
133
85
118
123
160
95
124
95
76
104
113
141
91
98
126
113
184
144
94
138
140
114
114
132
126
112
135
122
164
81
139
148
96
76
101
83
96
149
119
127
116
97
102
108
123
105
158
141
111
113
128
129
93
94
119
110
118
132
139
127
78
54
115
54
67
143
112
103
124
125
103
83
118
177
164
88
97
146
113
146
112
148
191
155
102
124
63
122
108
116
128
54
82
113
130
108
89
113
135
142
156
113
67
131
143
143
93
120
132
98
140
90
54
91
122
103
119
59
125
91
93
82
128
59
54
93
73
73
103
108
108
98
61
95
115
98
129
105
135
104
54
91
95
96
186
122
102
87
118
94
128
54
133
106
108
139
123
110
129
137
102
160
98
123
104
77
123
113
67
145
130
122
108
135
128
54
82
163
117
138
54
121
168
91
67
90
143
135
113
146
133
108
105
108
140
139
134
77
93
161
133
102
108
139
175
124
98
124
59
74
181
96
191
164
135
135
135
143
100
116
108
54
148
112
117
132
108
125
114
214
121
112
123
129
110
159
113
116
103
59
143
102
135
101
120
135
148
103
99
95
164
105
108
102
163
113
105
82
135
110
102
188
49
140
83
81
136
120
96
111
98
107
102
158
105
135
94
49
96
109
141
162
95
133
105
132
165
120
81
126
49
102
122
112
95
159
124
150
68
81
127
99
77
156
67
80
160
124
139
103
113
149
119
89
135
155
123
147
108
98
156
103
122
219
82
59
115
124
168
128
119
128
95
169
141
90
103
85
100
122
109
144
97
138
121
98
119
139
147
133
149
108
105
67
93
127
125
108
133
182
102
177
133
147
103
77
68
82
112
101
129
80
131
131
147
139
142
149
127
61
149
89
141
110
131
150
125
103
164
147
106
76
148
172
213
113
69
85
77
148
73
81
143
142
128
134
127
142
162
135
54
127
95
100
104
76
110
90
165
140
96
54
115
152
137
76
135
153
123
170
153
59
54
61
95
77
89
179
126
142
98
95
132
106
127
85
93
116
95
98
103
86
96
119
69
103
93
142
111
141
129
108
79
137
119
90
83
149
73
95
143
149
100
95
101
124
145
74
108
103
54
167
131
128
87
77
108
107
92
116
122
102
92
199
142
127
93
128
87
130
107
126
150
87
77
145
59
159
102
148
118
120
54
100
74
154
87
140
100
90
135
61
84
149
102
95
115
54
74
139
177
114
112
148
160
134
125
98
95
122
77
134
107
106
105
69
87
68
125
115
110
83
120
103
135
153
104
74
119
92
206
95
129
134
117
104
122
119
95
127
127
79
106
108
94
162
81
120
95
138
61
139
75
93
76
101
115
188
119
180
95
180
148
234
116
128
59
123
150
54
200
81
59
93
106
87
114
95
105
90
69
85
108
96
108
151
143
153
113
98
140
113
102
135
73
117
104
104
161
108
158
128
54
150
192
144
169
95
54
81
109
70
87
133
65
86
104
128
150
128
103
136
143
96
131
96
83
117
108
129
113
151
118
130
93
95
78
143
106
77
92
156
78
128
158
120
128
106
131
144
49
93
156
112
127
118
122
74
87
103
95
116
102
78
149
133
156
118
103
92
186
75
96
162
114
108
146
69
165
114
112
178
150
93
84
89
114
88
122
129
118
76
118
143
106
65
107
89
70
177
81
112
87
116
144
74
116
114
95
74
98
80
121
89
192
131
127
113
156
119
161
132
88
128
136
129
95
74
105
140
112
136
100
68
177
71
129
100
54
129
105
138
69
132
81
121
100
118
102
105
108
99
101
98
105
105
143
109
114
77
161
77
90
158
164
129
102
135
133
162
120
131
95
95
87
89
99
97
148
146
150
95
149
97
143
81
121
161
96
94
135
141
93
59
165
54
106
82
152
162
151
179
95
139
120
143
91
119
134
121
159
154
112
105
146
61
115
150
109
138
77
96
76
83
69
116
158
133
100
148
54
118
132
109
97
130
131
100
192
127
118
121
139
98
135
130
102
162
54
103
115
177
161
107
54
113
142
159
151
74
105
102
143
87
87
82
144
127
172
59
84
99
83
93
97
89
126
88
93
110
155
127
205
121
78
77
116
95
177
125
111
102
102
133
133
69
92
98
98
91
123
119
118
179
133
95
149
83
83
133
98
102
108
116
126
133
49
149
59
90
54
152
81
125
121
133
190
146
188
87
125
105
163
108
100
133
182
140
95
61
155
54
85
120
81
116
148
95
98
92
133
167
141
202
83
107
133
148
118
102
143
177
119
108
204
115
91
153
105
131
67
97
183
183
110
91
103
102
127
90
154
199
112
122
97
102
99
95
117
113
76
100
112
103
141
126
99
95
142
74
116
115
90
59
106
108
146
125
179
97
148
97
104
137
138
110
91
54
102
85
144
61
167
81
95
143
154
146
144
108
115
105
106
88
195
128
135
116
88
105
145
82
142
139
96
135
160
97
116
190
122
83
140
93
74
131
97
97
97
98
148
87
135
135
102
54
108
74
125
130
98
191
165
129
75
137
148
99
49
94
133
141
98
138
104
79
106
137
74
54
88
93
122
122
95
99
102
109
109
49
105
117
102
49
108
49
89
54
104
146
69
49
90
148
105
54
90
199
146
84
61
137
118
105
54
74
125
98
103
116
125
95
133
111
93
158
95
119
92
143
90
83
59
130
159
117
161
116
145
141
77
105
89
157
87
78
59
180
101
108
132
133
106
106
140
54
107
131
100
137
87
133
124
132
141
123
108
87
98
146
116
115
109
93
102
49
112
79
108
123
113
105
129
87
182
113
137
116
101
126
103
87
99
202
133
74
144
118
100
126
105
89
132
122
122
172
101
85
134
67
144
145
95
151
161
147
54
154
95
106
128
92
126
123
103
139
77
111
102
108
129
130
104
103
54
144
194
134
99
185
144
139
54
145
74
99
179
49
202
139
161
145
159
111
90
104
133
128
172
151
173
96
63
95
148
148
137
115
109
49
98
102
93
153
113
153
165
108
101
160
154
68
131
90
154
149
122
107
126
104
93
103
87
82
128
130
102
122
127
102
92
148
97
90
117
126
73
130
171
79
198
115
54
79
144
108
140
114
105
90
150
134
96
103
90
92
103
172
49
121
120
125
82
128
128
143
102
149
90
110
108
104
146
149
61
59
68
112
110
98
111
85
93
97
180
174
118
104
85
54
86
95
97
107
101
54
106
160
113
108
98
90
111
80
107
131
103
84
110
128
133
145
138
143
134
129
76
144
126
159
107
117
115
109
54
180
138
108
122
77
76
91
147
141
85
158
105
115
148
124
113
108
78
54
118
95
81
117
108
129
122
177
95
143
117
142
108
92
125
84
121
102
135
151
115
128
104
102
128
88
170
105
158
81
80
100
85
127
167
146
154
85
92
81
128
145
163
108
191
123
79
114
80
95
120
106
80
132
95
120
78
148
137
121
103
159
81
98
87
111
122
76
122
113
95
126
87
49
97
158
138
178
74
109
78
104
148
108
102
77
163
152
143
143
99
175
99
170
128
122
99
103
142
116
118
161
101
110
119
87
61
131
95
76
134
139
82
54
112
161
91
103
104
95
158
100
143
131
75
141
93
132
105
119
105
113
87
108
143
160
74
102
124
114
132
101
159
54
108
105
189
89
164
98
118
145
115
114
112
107
90
125
80
103
139
133
122
129
113
156
121
86
54
107
125
158
103
83
91
103
101
139
114
95
137
97
119
132
143
108
90
81
132
98
131
91
162
136
118
186
155
132
133
122
124
107
98
143
132
119
93
95
74
107
106
126
74
108
94
100
122
119
159
117
128
100
116
130
127
159
146
161
98
91
68
143
87
143
115
134
167
102
85
103
140
125
113
161
153
85
110
138
72
121
139
74
94
76
135
82
123
108
157
155
108
148
74
113
86
98
108
102
165
86
140
83
90
85
143
108
145
129
95
153
105
69
144
120
141
108
112
93
68
116
92
96
85
132
82
95
148
124
146
119
140
102
111
90
90
155
122
140
108
87
99
85
131
106
76
81
78
107
141
125
139
54
107
114
89
95
49
59
108
100
117
110
116
122
149
149
100
146
118
85
172
102
108
96
54
145
149
129
145
117
182
96
141
91
127
119
138
82
112
98
147
118
169
179
100
131
127
110
134
98
149
165
138
135
114
97
162
144
107
135
88
155
149
125
102
119
89
49
108
120
108
129
224
95
143
116
90
104
108
127
141
127
134
94
98
124
105
95
115
170
124
162
160
77
123
83
95
96
103
113
113
69
54
49
127
145
168
103
71
146
100
102
106
95
125
54
83
99
137
132
95
108
145
67
145
98
105
149
111
144
92
97
91
133
124
98
118
114
125
121
120
108
117
110
177
173
108
85
122
161
102
135
142
126
89
102
108
128
129
113
155
115
114
54
87
77
193
154
76
171
131
193
115
81
75
103
143
103
123
134
160
81
110
109
114
80
168
67
98
54
130
133
96
152
81
111
114
113
146
130
54
110
131
102
125
98
110
98
97
49
163
116
161
90
107
84
49
106
107
54
49
88
95
144
148
107
135
112
120
157
95
107
135
101
82
96
170
158
140
146
128
95
141
69
54
133
115
78
108
59
114
128
74
83
158
89
78
135
74
102
153
130
111
81
113
108
105
104
54
125
121
140
96
123
105
80
113
98
92
106
73
74
102
148
145
105
113
150
128
96
190
135
131
158
93
133
121
95
129
95
164
157
135
115
104
170
133
120
61
87
107
165
133
68
117
125
151
132
115
87
86
168
129
133
76
142
69
102
117
145
79
161
146
141
119
85
65
93
76
128
162
102
92
102
121
103
114
95
126
87
125
98
106
150
74
133
97
76
101
133
49
76
59
136
132
126
169
133
158
93
106
103
81
135
158
111
103
81
83
118
76
108
108
124
120
111
103
157
69
92
84
102
82
49
174
114
114
49
82
123
115
107
148
110
135
151
121
153
95
128
118
67
142
96
139
121
54
93
126
118
157
95
146
143
72
130
74
103
59
113
131
102
148
119
118
135
108
67
78
84
107
143
139
181
95
80
77
108
94
109
100
200
154
136
100
144
76
143
149
93
140
98
113
102
155
151
126
93
151
79
87
100
135
122
136
87
54
108
119
74
122
87
83
124
74
118
76
112
143
148
112
177
112
54
98
54
76
128
133
138
140
165
108
117
82
128
84
99
123
153
54
82
129
122
101
167
127
89
95
136
110
125
104
179
97
163
124
108
102
129
98
89
113
67
68
77
122
127
54
90
102
139
75
96
158
81
90
95
115
113
81
113
129
156
115
102
140
112
107
110
122
130
125
99
59
99
108
105
98
140
168
128
120
145
140
90
128
151
120
193
172
153
102
150
199
90
129
105
141
143
104
109
119
69
125
145
78
81
77
139
111
148
133
154
92
200
125
106
113
131
77
110
127
98
140
87
77
99
114
54
91
63
130
131
74
128
103
139
90
123
131
120
96
112
143
169
113
74
108
173
77
148
94
84
140
137
96
130
82
128
129
54
115
119
100
77
96
78
129
177
99
118
195
124
114
102
102
132
140
116
96
133
98
143
81
76
144
127
176
106
112
95
146
100
54
85
163
102
111
177
125
78
122
170
153
65
158
110
129
170
85
147
98
143
144
140
108
106
100
148
54
113
110
87
81
117
110
96
108
142
54
192
102
97
154
135
109
173
113
140
103
189
159
127
128
157
143
102
125
120
93
109
122
76
106
114
115
106
81
83
172
67
132
91
75
141
106
102
135
103
95
92
87
118
105
108
121
130
139
148
145
128
128
133
74
96
67
82
107
140
150
85
107
102
104
121
122
135
138
148
135
105
102
143
78
121
161
106
126
131
133
139
143
120
127
98
111
104
124
193
123
140
108
105
104
136
134
72
151
93
103
102
129
137
59
95
133
54
121
117
99
154
103
143
77
108
102
110
78
87
145
149
82
108
87
95
49
181
67
103
127
128
163
186
168
93
93
139
59
122
98
135
108
146
124
105
125
82
140
85
158
54
148
77
98
113
95
67
161
146
95
117
103
100
171
102
161
113
146
133
93
118
119
103
125
131
139
87
85
174
105
54
110
94
105
153
107
78
188
129
81
82
98
104
90
71
140
111
142
116
108
134
49
92
103
218
86
57
124
125
131
129
142
87
169
167
93
59
100
165
84
162
124
103
108
90
88
219
87
131
135
115
80
96
126
107
160
186
83
90
163
113
84
140
91
99
132
123
97
118
135
143
106
81
126
190
95
90
74
96
81
108
148
143
128
95
130
105
140
116
136
61
149
134
112
124
98
137
96
160
148
83
89
127
158
143
107
84
67
93
177
138
108
148
114
108
140
95
169
195
145
130
87
49
87
107
80
141
141
135
54
176
115
49
197
102
217
81
54
122
98
136
142
89
59
170
59
109
107
81
158
150
157
110
116
135
108
150
126
76
186
96
101
104
121
147
141
96
132
125
113
122
98
90
159
68
125
155
160
104
54
102
118
114
105
115
177
149
151
190
89
118
82
134
112
135
95
102
109
123
122
108
105
126
128
87
143
140
117
143
77
98
117
144
93
149
131
93
131
125
91
78
98
102
112
84
78
102
118
108
109
59
117
87
117
119
161
76
148
95
120
122
107
128
132
102
158
81
162
136
90
131
128
104
175
141
113
107
77
134
170
130
131
61
149
136
96
54
126
100
113
90
128
105
99
131
107
139
108
54
112
126
104
124
116
126
101
99
148
109
88
90
164
134
81
111
89
160
78
130
108
124
119
108
135
59
100
95
81
99
102
97
114
120
54
98
111
141
165
167
120
103
107
148
167
135
97
77
98
108
121
135
138
123
140
164
100
123
144
67
113
131
154
113
61
121
120
117
144
118
128
70
85
103
78
129
117
102
107
118
106
167
116
106
140
161
93
130
88
99
77
149
142
95
79
122
108
131
104
62
133
76
130
114
134
139
143
124
95
102
104
119
156
107
98
115
95
123
94
144
144
123
153
94
54
94
136
104
133
116
147
140
197
118
102
133
59
128
45
129
85
97
121
115
155
119
90
100
87
128
76
98
122
80
132
115
108
137
105
157
116
115
97
95
127
170
72
133
110
177
81
103
98
108
120
54
127
131
102
102
123
118
98
84
80
101
139
102
91
164
107
139
108
113
141
78
98
145
103
145
87
129
107
163
95
118
136
127
73
145
91
124
54
81
128
103
97
110
126
130
127
127
125
110
132
161
126
119
148
125
161
117
165
102
120
165
102
74
95
125
95
82
86
138
82
131
110
99
179
153
183
195
95
105
54
59
108
94
77
67
140
160
125
163
90
90
143
143
91
177
90
102
112
98
81
82
123
95
148
95
86
144
138
125
165
94
105
90
98
134
116
54
130
122
159
89
120
98
89
106
141
103
59
77
99
89
76
123
85
106
156
54
122
146
54
95
128
103
102
102
61
103
108
181
93
73
95
125
140
133
106
99
131
142
138
54
115
105
129
155
107
110
111
82
200
143
98
54
148
170
49
155
102
146
130
217
98
102
104
125
95
144
97
108
130
76
100
151
114
165
156
90
54
98
119
143
115
106
113
116
54
130
152
126
127
128
54
112
125
102
154
125
114
131
127
61
155
81
92
54
185
109
125
130
110
102
94
133
106
111
96
165
115
117
128
114
111
67
76
148
131
181
68
108
119
117
129
112
80
54
113
87
102
63
78
125
114
74
117
100
67
91
180
99
107
128
90
142
124
145
147
81
116
95
95
171
177
139
128
108
117
54
99
67
82
146
148
54
95
164
92
155
113
123
129
117
111
54
139
108
90
96
152
178
102
89
184
144
119
102
139
135
108
97
159
107
103
108
126
76
126
116
85
98
177
133
78
169
90
105
106
126
113
167
138
126
199
158
193
206
105
92
81
126
98
118
89
86
126
112
200
128
89
130
143
76
135
194
115
94
96
131
54
110
106
99
179
81
159
83
104
112
152
74
85
139
156
114
149
110
90
140
140
103
105
148
111
117
54
81
133
107
54
78
133
126
98
99
108
87
115
133
54
116
142
54
90
76
102
143
105
153
49
134
139
148
105
84
173
87
77
118
117
140
81
129
104
77
95
105
102
131
125
74
138
125
100
145
98
123
114
113
122
138
144
127
124
108
120
113
54
98
167
95
116
78
129
147
77
54
108
127
128
78
89
98
54
107
54
122
113
125
119
104
68
104
54
112
105
90
115
121
142
121
106
94
129
96
110
95
95
115
179
104
98
152
123
125
131
152
119
179
120
125
131
107
85
115
95
102
157
137
117
140
142
149
144
109
158
109
145
81
158
146
110
155
148
120
85
148
135
108
134
151
160
107
126
87
144
123
95
101
127
151
109
106
90
93
101
149
99
100
161
91
93
127
104
59
144
167
165
140
87
129
102
102
157
122
190
145
124
108
71
49
139
135
96
162
140
87
54
117
129
103
129
102
90
67
131
80
80
94
177
92
98
138
198
142
135
191
95
78
123
105
146
111
121
98
102
118
73
84
90
91
69
149
81
127
166
186
77
178
59
109
96
59
125
74
54
127
126
144
98
81
93
113
137
111
59
86
105
118
107
135
124
120
95
54
82
156
123
95
169
114
103
91
79
102
93
112
128
127
140
81
108
85
153
102
103
125
108
106
85
122
180
132
54
99
95
54
108
112
118
108
130
113
129
160
87
184
59
120
81
127
116
165
125
113
135
144
82
97
144
128
133
95
95
113
137
129
102
59
108
61
128
79
156
147
152
98
101
120
124
97
108
67
77
77
112
95
135
121
73
114
67
119
122
101
128
106
106
144
98
131
156
42
145
92
108
111
78
119
122
108
103
101
68
145
54
148
129
54
118
142
83
121
74
107
147
95
78
131
81
113
144
148
103
127
146
103
84
157
100
122
90
76
162
122
54
67
159
95
125
115
127
177
110
73
108
125
137
108
180
91
124
118
153
90
80
93
87
110
154
102
91
143
121
102
145
108
59
154
117
143
80
129
93
54
144
134
49
97
82
49
160
131
102
76
130
116
98
59
126
173
98
73
140
151
168
154
133
139
101
142
133
118
68
100
98
151
137
146
84
76
95
94
105
108
115
134
98
108
77
119
95
108
99
120
62
105
98
93
153
89
114
132
87
99
131
103
77
88
105
101
54
78
81
104
124
139
194
81
103
124
71
82
113
61
54
91
127
101
165
81
95
86
126
126
126
112
117
152
77
104
91
108
140
113
122
95
93
118
122
165
133
88
104
115
54
110
79
123
130
130
171
93
128
141
135
113
82
145
127
54
103
145
67
98
186
108
67
102
54
100
98
154
125
128
102
108
69
54
114
126
92
102
107
95
163
112
82
77
146
80
119
157
95
151
128
101
95
146
80
129
49
156
126
103
102
106
178
76
67
180
112
166
164
93
86
102
108
67
111
103
179
99
97
124
87
119
68
155
91
157
95
118
113
173
105
54
139
93
137
103
108
54
144
95
131
122
132
102
93
127
127
88
110
94
91
127
106
77
157
155
57
89
148
49
126
54
107
143
133
91
95
135
91
163
89
131
139
112
141
126
97
102
101
73
105
87
116
131
132
136
193
103
74
146
102
102
135
113
172
102
98
69
168
87
141
225
89
127
113
73
161
105
129
102
114
143
148
148
149
72
106
100
162
140
95
128
95
122
77
121
49
91
93
98
116
134
190
158
105
103
123
155
152
96
159
92
156
148
131
200
140
168
88
171
119
106
98
69
87
122
150
103
140
94
145
105
138
102
103
85
102
186
148
125
110
122
104
113
170
74
81
108
114
149
102
128
106
89
102
122
95
89
142
115
123
148
85
74
122
131
82
102
74
147
116
84
103
133
112
54
161
137
141
104
104
111
144
89
110
105
103
114
101
102
96
108
152
127
102
165
81
98
96
82
127
120
87
116
144
95
113
102
131
77
148
139
144
177
100
93
61
90
125
107
147
151
108
91
111
103
110
107
102
111
107
165
74
119
124
91
136
140
162
95
103
96
150
140
132
124
148
103
131
127
107
125
84
119
82
158
126
124
98
96
179
61
85
98
158
131
116
82
96
149
169
125
107
177
107
83
142
161
102
134
148
105
113
92
107
103
49
122
122
102
80
95
49
114
92
82
148
130
143
125
123
98
125
105
102
107
54
187
102
103
117
132
127
158
138
113
138
91
148
97
73
110
158
131
117
153
83
127
131
94
113
83
61
116
139
77
103
129
131
122
119
102
77
128
54
105
157
127
96
161
54
101
102
145
190
149
102
133
98
135
117
110
166
105
142
156
135
167
144
200
144
102
129
122
125
95
141
90
81
102
139
91
98
126
96
149
130
109
103
125
118
117
153
132
133
124
105
81
122
158
81
77
99
88
102
107
103
89
74
54
67
148
130
127
124
139
108
154
106
129
146
95
102
86
122
159
125
97
103
124
130
117
121
102
152
119
127
175
108
102
115
113
54
135
121
98
115
85
101
141
127
108
121
107
87
144
118
113
107
131
76
149
111
109
106
121
123
116
145
112
95
132
95
119
98
146
113
133
73
91
112
164
159
81
103
184
133
158
128
129
161
145
124
178
92
102
141
95
111
54
140
125
117
102
95
135
191
127
81
84
107
109
164
143
93
80
96
152
95
132
87
121
129
134
155
127
74
109
119
176
54
68
124
99
132
158
127
118
116
81
138
101
134
139
105
143
125
57
108
103
157
92
98
154
146
101
108
90
143
81
103
54
100
49
112
102
136
87
111
94
93
125
139
111
103
159
138
128
117
139
83
118
83
163
79
94
123
121
94
77
116
83
158
109
123
156
89
80
108
169
120
95
111
137
133
160
146
65
127
105
87
102
125
83
113
119
96
84
116
144
86
117
107
141
70
68
161
83
102
134
104
139
96
81
161
171
116
77
54
133
158
87
78
137
93
95
122
115
147
125
78
135
78
162
133
108
76
149
155
120
108
98
155
91
161
59
45
125
156
68
87
105
72
95
69
96
116
128
129
87
130
154
103
91
96
103
107
85
102
70
131
137
125
93
132
54
136
97
133
123
77
155
113
77
79
135
104
149
101
132
140
95
105
102
134
116
61
113
72
144
135
59
98
102
95
149
119
102
120
95
106
74
124
107
97
118
104
67
91
167
92
76
114
108
105
129
172
128
91
95
128
135
138
98
144
108
146
59
138
112
107
134
143
97
61
81
152
153
101
139
158
114
45
111
117
144
95
108
149
67
81
93
120
79
67
115
90
137
98
158
128
104
112
98
91
124
128
128
54
49
147
108
87
172
154
81
143
49
68
91
184
125
77
54
85
142
119
117
59
85
125
76
54
148
127
81
87
115
112
137
102
115
93
155
129
122
108
90
146
145
128
91
104
134
100
162
105
89
137
87
129
184
150
102
122
99
125
169
111
109
146
98
96
116
91
91
169
59
180
108
110
206
130
107
80
128
102
192
80
108
167
77
152
68
96
79
101
124
167
123
105
142
95
113
108
134
170
123
127
143
102
127
128
148
146
128
113
140
69
61
89
96
78
76
139
134
102
95
77
151
83
104
67
81
54
209
70
94
124
129
155
148
78
103
102
79
94
67
45
137
138
110
126
122
54
117
121
134
98
115
109
137
110
94
112
162
123
128
106
137
113
129
111
119
142
103
158
81
139
133
162
94
138
150
102
92
159
135
108
126
107
96
146
130
141
98
74
130
104
197
54
102
83
108
101
54
172
81
93
81
108
154
81
126
54
59
168
122
144
150
185
128
59
102
79
82
160
98
141
114
120
96
109
148
113
122
144
100
130
95
59
95
112
95
167
131
131
54
75
88
54
82
74
154
148
127
133
170
90
59
77
108
54
98
104
102
102
108
134
74
98
102
105
105
122
103
74
108
86
136
122
117
108
103
153
93
124
115
143
54
147
54
75
120
115
101
128
107
61
49
138
102
149
83
98
142
101
105
121
147
125
164
90
142
158
113
135
162
155
121
147
82
101
143
89
125
108
153
120
154
99
147
146
134
102
155
131
109
143
126
123
93
95
94
113
119
87
104
103
131
102
104
131
108
89
85
131
108
99
87
158
54
150
177
70
77
102
105
138
146
168
77
87
95
132
96
129
112
119
95
156
132
110
177
119
141
54
139
150
153
143
108
116
139
102
140
140
145
108
167
142
108
102
135
137
87
160
141
90
126
106
128
49
121
54
152
124
123
139
109
105
131
88
135
105
67
89
118
157
78
120
103
125
91
91
96
88
113
82
123
148
214
116
133
98
123
59
61
127
106
117
149
138
125
139
112
81
123
124
146
107
133
95
139
98
125
74
74
102
128
102
90
136
108
68
179
96
127
136
136
140
129
128
115
124
129
54
108
102
157
119
143
162
113
113
82
188
102
98
87
108
105
102
158
102
49
135
143
144
74
112
54
159
128
134
102
140
103
157
90
111
91
117
111
90
85
95
125
125
115
131
143
143
124
170
129
54
90
95
113
128
54
161
78
140
165
76
81
147
133
106
74
122
147
148
111
145
123
116
147
105
147
104
168
124
115
115
101
102
140
139
145
87
118
110
120
98
111
170
141
93
149
113
82
59
77
74
95
130
87
149
168
128
188
103
107
122
76
118
84
115
105
104
98
96
54
133
125
90
105
183
140
136
113
145
97
108
118
126
135
98
109
54
87
157
87
160
193
108
145
130
128
87
105
159
113
144
54
143
89
82
120
81
113
90
96
84
140
95
105
128
59
74
137
85
158
67
125
103
125
146
127
54
61
124
110
91
107
120
110
161
126
112
78
147
102
90
148
97
77
105
111
95
78
108
87
105
119
140
113
144
54
85
128
98
76
131
102
109
123
112
144
90
139
118
82
125
92
137
102
144
153
97
144
141
98
102
116
163
140
127
93
135
115
110
54
93
115
129
133
98
74
90
177
233
146
164
107
139
81
90
164
115
54
82
163
112
87
99
176
113
81
59
137
106
95
122
92
76
116
81
123
124
102
99
154
80
144
79
115
72
59
117
163
130
54
121
94
108
54
54
125
121
93
120
135
134
106
148
102
135
158
177
116
113
91
105
177
127
102
146
69
152
131
138
177
113
68
133
113
124
143
166
98
115
163
77
104
61
98
128
102
76
180
97
101
161
95
76
120
110
93
119
54
153
125
155
136
131
91
108
145
103
113
127
139
123
95
59
117
149
139
108
93
67
229
81
111
90
93
108
144
139
129
145
132
103
102
112
54
108
123
104
96
153
116
96
158
108
100
98
119
127
107
98
108
116
170
204
105
145
144
135
130
126
93
127
83
133
91
69
137
102
111
106
103
87
148
93
49
122
89
95
49
95
125
116
105
113
135
104
127
106
81
90
105
161
148
54
90
118
151
121
104
104
116
99
144
79
96
108
114
134
127
119
54
95
114
108
74
106
82
119
179
49
77
123
99
102
117
153
81
96
118
134
155
135
69
103
102
145
95
114
128
91
107
59
59
129
78
129
87
162
54
99
108
85
99
49
123
119
148
93
95
111
123
129
95
97
135
76
159
110
79
81
103
69
149
150
95
95
161
83
117
125
54
79
79
126
132
105
147
77
123
114
115
110
67
96
128
124
95
129
112
104
126
54
115
154
59
105
104
54
106
133
108
123
61
121
118
103
110
90
92
102
54
161
95
135
102
113
78
145
77
130
122
79
105
116
108
81
90
163
137
49
163
218
118
76
158
80
102
179
79
128
101
116
74
131
81
101
103
136
129
93
132
158
93
141
119
161
142
93
97
54
154
67
54
177
158
98
85
54
95
74
134
80
78
49
163
90
103
133
108
124
105
93
89
115
106
90
81
145
95
54
117
122
131
136
183
128
87
78
142
155
96
142
114
76
194
96
104
61
90
54
129
142
151
49
106
67
117
67
132
107
162
149
102
167
120
108
127
79
118
131
79
157
104
96
161
138
181
124
114
133
146
82
157
93
115
163
129
134
102
103
100
98
111
166
102
110
85
115
81
80
82
144
63
68
120
97
133
124
98
137
112
125
93
120
150
103
122
146
59
144
128
140
154
81
123
106
153
103
87
96
54
77
54
108
96
141
113
98
79
127
84
120
91
119
94
94
137
87
129
125
103
128
103
132
113
54
153
194
93
97
110
151
158
150
95
137
104
88
113
78
134
176
105
132
95
124
49
98
111
85
141
98
165
131
80
78
117
176
108
110
122
108
82
96
147
158
126
125
87
123
72
78
110
95
74
107
133
93
148
144
76
80
54
137
81
98
67
144
123
139
97
54
105
95
109
132
121
123
133
54
98
95
90
144
90
157
127
94
146
108
104
149
123
194
108
54
74
143
95
68
114
161
115
95
119
102
102
110
116
124
122
105
135
128
49
109
102
73
90
122
95
148
77
82
102
129
116
102
112
114
97
125
200
193
54
106
118
81
142
151
78
76
49
103
141
74
135
140
95
128
118
87
108
105
117
83
92
98
148
70
80
106
126
127
97
107
121
101
161
106
112
129
122
108
95
91
115
106
120
76
62
120
74
186
97
114
177
108
74
95
98
110
108
87
105
96
120
126
107
153
159
112
138
170
128
233
95
128
116
137
69
146
93
108
154
59
150
67
131
133
134
139
67
114
108
84
98
68
160
148
142
74
54
95
133
93
96
90
140
154
118
74
77
54
143
99
75
128
129
110
109
105
123
90
162
96
95
153
135
83
85
92
96
122
116
151
115
108
59
113
112
145
104
83
95
165
141
81
91
59
176
116
158
94
91
119
156
224
175
102
157
83
79
141
91
129
156
147
100
108
121
91
168
141
113
129
121
77
123
139
134
106
72
133
112
103
155
108
107
115
116
119
133
98
99
146
143
104
179
93
77
134
81
116
141
74
59
139
105
193
82
135
108
96
111
119
91
125
115
173
103
156
104
81
107
112
98
148
115
138
151
122
117
104
118
119
138
163
98
81
61
90
122
49
74
54
105
123
82
95
108
102
123
115
138
118
98
81
182
96
85
125
102
83
90
71
114
177
113
108
105
134
98
137
158
124
120
138
117
128
108
81
158
94
151
142
45
102
121
139
128
170
82
85
96
114
127
82
111
54
125
152
98
77
92
131
155
118
138
109
139
127
78
74
180
107
95
129
118
158
54
102
95
117
146
94
116
157
135
133
105
112
168
82
54
74
76
89
188
107
98
102
108
121
54
166
74
93
74
128
54
115
116
131
104
106
108
122
118
105
137
152
121
112
77
87
159
54
109
128
94
142
115
112
140
94
125
98
118
155
124
120
129
107
97
104
105
138
68
123
115
128
102
141
128
96
105
145
98
98
108
140
76
108
107
123
73
103
130
87
142
82
67
142
107
99
67
179
54
113
157
87
120
157
108
118
132
76
183
59
161
178
163
128
83
118
125
140
87
154
173
98
107
111
105
90
103
125
119
124
175
101
158
147
98
100
120
160
164
80
81
132
77
125
122
141
156
90
68
92
110
119
118
87
105
76
54
165
87
168
90
98
108
123
119
49
96
148
105
54
142
103
112
87
125
96
90
85
113
126
104
49
108
83
160
141
104
49
95
114
119
98
93
119
102
132
160
81
97
102
76
165
178
49
77
68
127
96
61
162
107
131
74
83
108
105
117
59
131
97
165
87
133
83
67
128
89
103
108
76
125
197
102
69
107
149
49
108
61
117
131
143
139
103
122
190
133
108
144
159
105
113
119
128
135
106
93
165
165
153
113
149
101
113
103
49
132
115
103
110
131
92
145
163
133
167
158
112
83
158
142
105
161
90
54
111
74
81
95
54
54
192
82
80
104
87
67
99
87
142
108
97
145
90
143
105
133
140
141
106
105
116
76
100
109
113
182
103
123
127
147
143
99
161
136
93
104
131
146
98
92
128
49
90
108
116
127
97
137
175
134
180
127
91
91
171
89
125
131
118
118
73
138
101
87
141
59
127
100
127
112
138
62
110
120
78
100
84
110
118
145
105
103
91
93
105
108
174
102
82
115
78
119
131
156
54
143
110
94
102
113
80
194
103
95
102
106
110
102
120
147
141
107
85
102
140
205
95
112
121
90
54
49
78
154
135
103
133
92
69
87
146
134
97
81
177
49
148
150
113
123
61
81
74
109
103
127
117
97
120
143
102
138
85
166
135
157
137
146
128
116
127
98
147
95
108
105
82
77
149
101
121
129
147
102
125
202
109
94
147
141
102
127
84
102
93
148
128
106
85
59
96
122
146
194
118
129
118
124
113
145
87
97
81
96
83
144
82
93
131
108
163
102
141
131
87
145
153
94
49
170
145
128
109
93
206
109
148
100
108
114
105
153
106
102
81
119
177
123
129
115
102
108
144
118
138
69
133
54
149
107
96
108
108
139
54
77
91
83
107
101
150
90
82
102
122
146
117
128
90
105
84
98
127
127
148
111
49
134
144
148
108
110
113
112
61
118
170
84
113
182
146
135
125
144
94
54
102
109
116
97
113
81
156
133
149
115
88
111
101
133
114
102
149
110
67
137
101
127
181
110
148
98
135
122
49
77
67
180
131
139
93
120
131
102
90
74
111
128
145
98
108
83
91
144
146
95
165
128
105
116
168
125
90
93
135
146
122
152
79
166
133
106
127
86
136
80
77
156
95
110
92
128
97
106
74
158
164
128
113
108
61
149
100
151
74
122
106
78
108
96
112
84
107
145
118
200
116
155
126
140
118
113
120
118
133
108
124
102
49
96
101
85
114
87
69
173
96
114
133
97
85
96
132
134
129
145
95
151
93
102
150
99
94
120
81
167
105
111
108
147
149
129
115
142
110
158
116
167
116
101
139
107
108
203
95
148
135
105
108
131
132
79
116
77
87
95
171
135
82
113
123
102
144
115
97
103
74
134
140
111
96
88
113
78
130
117
91
176
165
147
130
135
126
131
119
92
108
148
145
80
123
140
98
59
69
166
59
118
137
104
107
80
76
120
109
105
98
108
88
69
54
144
75
192
111
98
102
107
120
139
98
80
54
129
133
85
108
93
135
119
128
98
108
95
127
108
110
113
89
162
141
119
146
77
106
135
119
135
90
98
100
78
49
108
77
102
95
95
179
161
124
87
177
191
119
143
149
122
111
133
54
108
200
135
109
149
108
115
191
112
148
69
133
130
81
100
81
107
133
101
127
94
83
141
165
93
85
99
116
121
70
65
101
103
96
161
124
61
105
144
116
125
144
74
117
134
177
85
131
148
165
81
140
139
93
129
98
110
180
59
127
98
54
110
96
125
121
144
79
148
147
91
105
54
118
131
125
107
135
147
107
146
119
144
115
169
118
144
98
54
111
146
80
83
103
134
77
119
157
97
95
123
93
87
81
77
137
112
137
103
119
108
74
82
164
78
128
135
118
103
199
108
166
104
105
78
59
115
54
85
109
102
149
54
54
122
161
108
147
108
134
189
139
107
116
128
106
109
93
109
129
133
109
155
102
141
128
136
170
104
115
49
94
134
106
117
83
81
147
92
104
87
176
118
148
118
119
159
91
89
109
98
102
139
87
82
157
125
95
59
102
157
98
99
82
98
97
68
82
129
159
141
121
104
103
123
161
81
158
131
112
156
163
112
95
108
105
128
78
115
105
99
108
101
91
113
158
101
98
113
95
125
95
127
169
141
111
98
124
123
170
69
108
163
127
108
125
77
112
135
158
92
124
131
108
54
105
121
91
135
153
54
54
116
133
123
148
88
67
145
153
100
116
114
100
97
108
91
97
116
130
167
142
93
102
54
119
97
104
117
124
67
138
107
115
106
117
158
113
141
103
49
85
151
165
80
191
124
101
95
108
96
100
81
148
108
110
81
108
81
91
143
128
105
135
95
105
95
102
98
113
148
54
69
109
101
121
128
117
130
130
127
102
101
160
134
171
168
100
106
128
117
87
104
154
81
117
149
95
186
110
98
98
54
127
110
109
97
147
72
98
98
83
63
117
96
108
168
95
96
81
87
74
127
170
131
54
162
132
108
126
133
148
107
78
162
54
103
95
189
150
134
101
146
123
74
93
139
119
127
87
107
133
95
82
77
85
108
119
123
59
117
177
113
136
82
125
134
104
135
128
156
108
115
108
189
125
158
133
133
103
154
142
98
98
82
114
90
95
94
206
171
80
102
95
54
59
118
54
95
96
124
197
70
123
67
118
116
126
118
93
160
158
119
59
132
74
184
85
131
166
106
96
114
126
101
74
70
129
109
172
200
131
128
90
122
112
103
156
126
133
101
155
118
131
140
148
127
83
94
83
85
140
111
96
116
106
145
158
97
59
68
140
121
154
109
116
93
135
107
152
122
78
133
144
109
104
49
54
78
117
49
90
96
122
61
93
67
121
135
74
150
168
118
178
127
144
95
106
111
102
105
137
119
99
130
112
54
160
128
170
98
143
143
129
128
133
104
167
138
113
118
54
95
177
107
128
91
133
151
131
150
127
133
132
109
74
128
108
83
81
78
101
90
95
76
200
107
120
106
147
102
124
108
135
81
206
94
172
95
123
107
114
100
147
125
128
54
99
109
59
76
134
112
144
123
113
117
147
125
154
98
122
137
118
122
49
147
122
110
124
133
105
126
118
126
125
146
93
120
77
96
131
117
127
141
168
139
101
108
81
87
157
115
99
74
78
112
144
91
102
101
148
73
148
148
108
54
145
122
125
87
110
163
108
92
54
146
102
129
90
70
131
73
128
121
146
78
139
87
115
159
107
114
81
110
118
82
141
134
54
106
108
164
102
108
154
143
131
123
108
179
101
125
163
91
157
103
133
102
85
98
105
98
54
106
119
125
139
102
95
103
119
175
97
92
116
112
102
108
113
188
153
132
128
103
116
150
103
96
111
143
59
113
148
138
122
92
160
133
94
110
57
157
79
80
148
49
107
152
108
140
159
133
102
97
126
77
112
148
82
49
128
146
102
120
96
107
79
93
237
127
93
171
96
113
129
153
156
91
153
121
145
116
114
116
133
173
76
105
108
101
101
143
120
67
107
135
82
96
125
81
173
108
152
98
61
153
99
151
113
95
97
163
134
117
97
114
177
49
128
95
91
111
103
131
108
98
126
145
74
95
94
105
135
109
142
115
79
128
102
133
130
131
115
95
173
54
137
85
126
122
118
117
160
100
111
49
178
118
93
139
85
96
54
91
133
127
109
95
154
133
98
124
79
118
54
147
144
112
132
98
114
125
89
65
113
155
117
128
102
112
171
137
67
132
96
102
153
103
120
127
145
93
112
92
106
90
118
118
131
137
105
95
96
156
103
98
101
81
126
122
130
161
122
112
96
152
102
112
90
83
104
68
110
113
54
148
97
115
207
110
108
61
115
134
118
93
85
98
95
116
105
128
112
117
124
129
54
126
72
107
99
103
98
162
98
134
99
105
98
118
102
101
59
110
49
119
140
49
61
133
81
154
113
77
116
87
108
139
95
127
125
91
85
142
115
98
95
117
101
162
120
135
77
85
106
105
135
54
132
54
97
131
54
74
152
93
106
93
114
130
98
125
98
108
146
135
125
95
152
90
125
118
140
127
80
144
97
89
80
85
142
49
152
81
105
153
97
87
107
102
115
103
101
123
117
108
94
131
151
125
143
59
118
159
97
95
78
101
120
118
118
102
111
104
115
144
112
107
125
148
145
61
147
122
117
108
98
105
121
140
137
103
140
54
127
106
81
112
107
118
155
152
108
54
186
128
89
105
95
69
54
102
101
74
54
81
101
59
160
102
137
132
127
90
59
132
118
134
137
92
111
90
59
108
75
78
148
100
49
108
129
112
95
81
54
99
125
82
102
54
87
68
99
82
141
157
138
191
102
128
132
77
83
61
81
65
193
159
144
114
107
133
54
114
107
59
90
108
101
149
79
105
54
95
98
124
114
174
54
120
77
102
113
108
99
87
81
164
170
168
126
140
97
84
102
115
110
109
54
124
150
117
145
147
78
95
96
158
81
113
120
153
175
129
111
138
142
83
133
54
170
135
105
93
99
125
97
99
129
128
112
67
141
101
92
49
114
132
102
95
190
106
98
99
120
112
133
96
65
115
113
127
187
129
128
142
107
105
129
121
135
82
134
49
101
143
123
132
110
98
117
133
74
123
118
90
123
128
133
98
130
49
76
160
156
155
144
118
144
90
137
101
102
132
141
106
67
109
102
148
127
133
105
147
133
137
143
131
49
78
77
113
54
98
96
115
137
148
108
125
67
123
95
77
65
78
91
84
81
122
105
145
119
126
90
76
122
80
49
143
118
103
151
128
144
102
81
124
173
128
143
90
83
159
110
113
109
112
112
111
93
144
123
76
143
74
94
108
147
148
92
143
129
70
87
127
94
120
81
86
111
69
119
102
93
130
104
98
83
129
112
122
128
105
128
152
133
104
102
148
54
128
99
85
152
108
105
106
127
97
176
96
160
80
143
59
92
69
112
83
103
113
98
95
116
54
67
78
148
79
69
126
73
139
183
162
135
68
102
77
129
128
150
108
76
102
121
103
65
106
96
107
136
95
133
141
175
125
81
143
122
112
105
177
81
110
189
54
112
186
101
131
141
54
106
100
152
132
156
105
54
54
83
74
100
69
111
81
108
137
98
122
54
125
111
106
163
122
73
125
77
135
74
177
103
83
78
137
134
128
114
85
127
95
107
99
141
120
97
95
122
108
164
86
133
93
68
125
101
116
82
118
103
74
154
98
148
74
117
153
105
132
155
121
140
92
110
108
160
103
118
106
128
124
84
90
149
143
133
112
121
95
54
157
108
128
110
113
92
150
83
124
128
98
134
97
135
143
115
107
116
87
95
73
103
95
112
95
165
125
148
113
142
123
80
156
95
157
106
105
150
125
106
111
200
95
118
49
129
82
98
116
141
124
91
91
141
90
140
128
68
54
128
78
150
83
125
84
160
81
73
98
125
54
59
118
91
131
54
101
119
67
141
163
102
79
54
83
133
138
111
87
93
155
135
99
106
164
146
122
141
98
74
124
131
106
68
81
171
143
137
85
96
128
133
129
116
96
45
87
144
144
108
128
57
95
112
147
140
156
190
125
123
93
160
124
148
90
147
74
155
150
118
166
166
95
87
125
86
116
95
127
79
118
135
200
135
98
79
54
113
96
134
168
117
124
179
163
108
98
130
143
88
102
78
132
108
120
120
90
160
128
105
155
98
178
93
128
76
129
107
117
120
146
91
134
118
112
127
102
147
156
70
49
95
97
194
124
107
98
100
80
146
119
131
125
154
54
94
54
121
148
116
54
112
115
98
106
82
108
135
133
124
185
146
128
125
146
129
70
131
140
129
131
74
80
132
101
118
105
112
129
127
142
181
136
105
103
107
83
146
179
143
128
91
155
133
54
151
161
108
74
121
144
106
101
177
98
145
215
163
128
105
101
49
179
156
131
102
122
106
126
90
87
175
130
98
135
110
98
113
98
98
84
125
144
95
98
102
95
96
59
98
155
141
152
97
114
89
87
173
148
95
108
145
96
140
102
109
94
86
93
102
135
145
106
133
131
123
103
151
86
54
74
124
155
124
157
131
156
143
90
91
95
179
97
132
178
144
69
123
80
105
108
102
65
93
59
122
104
156
132
77
82
65
117
114
135
98
87
85
140
59
61
74
110
68
95
98
83
80
144
141
111
139
95
81
115
86
156
119
102
54
108
95
161
108
81
95
119
125
121
133
54
126
141
125
89
154
163
49
80
158
125
130
128
93
149
108
125
143
129
177
137
115
102
99
177
158
196
105
141
98
117
128
166
170
108
151
142
109
103
144
116
127
162
93
126
145
97
98
131
153
96
121
132
82
83
133
92
120
149
106
80
169
157
107
111
108
123
87
113
77
122
101
124
103
54
103
67
127
76
144
105
115
85
110
82
133
177
102
90
102
112
137
98
103
135
139
102
107
138
81
82
103
128
131
99
105
140
108
144
123
139
164
167
118
76
186
142
91
106
145
54
169
134
95
128
78
114
62
98
103
127
103
92
99
74
109
49
123
186
125
102
83
166
103
144
82
102
111
54
119
71
131
128
110
116
54
95
136
134
99
144
129
124
148
112
127
123
95
76
108
101
100
101
96
108
154
129
158
138
85
116
98
114
165
114
113
124
135
148
115
108
110
106
110
128
69
104
149
123
54
61
49
104
146
91
88
95
128
90
105
113
147
114
82
125
139
74
102
129
87
83
89
93
144
54
142
103
111
54
133
96
49
119
169
131
98
146
119
93
87
45
104
76
49
105
131
89
113
157
113
139
144
123
127
126
97
104
151
111
134
87
149
102
114
152
79
145
113
103
89
98
115
160
185
125
128
93
160
137
116
54
143
132
54
76
78
120
77
112
95
156
156
138
82
82
106
101
164
92
95
165
83
127
194
175
100
126
102
111
103
165
125
95
77
134
94
102
115
102
59
97
130
54
150
76
151
84
95
76
82
130
101
103
109
98
141
140
122
88
123
141
122
180
59
54
81
106
95
134
131
128
124
95
95
82
99
135
129
138
133
190
139
95
144
140
144
176
89
82
98
138
133
95
122
54
127
110
121
87
175
121
97
80
148
95
113
116
143
93
161
153
162
74
92
113
204
147
99
90
173
154
98
87
54
82
61
116
88
54
78
72
148
85
101
115
49
102
67
128
122
49
82
118
118
139
146
80
146
144
96
124
151
152
152
77
126
162
107
97
158
81
102
74
127
139
93
101
135
112
101
114
118
172
77
101
133
138
102
124
113
78
93
126
123
89
96
109
190
131
118
118
125
121
108
175
113
145
105
103
172
115
107
190
95
102
176
131
134
140
96
114
95
95
124
129
131
59
105
135
128
153
108
83
140
114
133
74
147
108
87
103
133
113
158
109
54
91
225
54
120
106
103
54
139
125
141
137
74
61
93
92
99
91
108
154
117
141
81
134
79
140
81
115
102
107
164
148
107
116
119
118
120
78
151
129
148
95
112
140
131
144
133
83
103
133
78
98
59
100
138
101
74
133
118
102
143
120
127
132
113
133
146
157
151
103
94
143
105
137
200
148
103
133
95
113
78
118
152
117
163
123
105
95
153
143
105
115
54
109
132
129
74
101
148
147
129
134
70
151
110
143
122
87
89
99
148
105
146
144
119
135
129
49
108
148
54
105
198
169
95
105
67
103
98
110
80
87
118
143
100
160
54
77
96
91
179
129
115
147
103
167
95
133
145
165
105
104
118
49
158
105
133
90
182
149
76
163
144
67
76
135
170
90
97
108
78
148
54
100
141
195
82
108
95
107
54
125
108
108
158
119
101
145
49
113
111
164
98
106
87
125
74
111
118
141
204
143
113
121
108
98
144
99
122
89
81
103
146
179
158
133
90
81
125
45
88
122
54
59
73
128
116
83
105
77
140
102
146
115
124
86
87
130
90
165
128
145
148
69
124
158
109
148
165
122
104
98
81
131
81
54
85
107
148
102
110
83
122
127
147
117
49
95
164
96
112
93
54
82
87
131
138
172
129
127
122
175
85
136
137
153
95
81
97
107
145
106
180
128
90
138
124
102
107
154
126
96
119
102
82
133
102
141
123
95
133
102
108
59
122
119
81
145
102
112
49
54
125
79
121
107
123
158
98
105
109
80
146
126
125
103
151
108
77
108
140
80
82
183
144
104
144
108
105
190
158
126
113
130
170
87
117
126
167
126
90
162
148
163
108
129
118
165
133
101
134
128
145
111
102
126
120
108
102
65
139
142
122
76
110
90
108
128
99
68
172
49
167
119
106
132
90
108
107
105
103
93
150
128
143
118
194
54
126
102
128
81
91
138
102
90
138
102
118
85
168
93
68
149
109
59
169
105
109
67
120
77
125
127
130
78
54
105
141
68
120
146
49
95
81
115
103
90
81
98
102
74
127
168
124
49
109
113
69
95
113
126
120
76
61
85
159
193
140
59
107
129
102
73
103
146
101
147
157
97
144
115
117
101
125
80
108
54
123
144
82
59
76
180
127
87
135
127
104
151
127
143
113
130
119
98
111
127
90
174
115
100
96
107
95
129
95
145
81
108
131
161
106
101
129
65
135
163
105
133
171
102
78
125
142
132
84
122
105
81
75
134
49
95
78
57
160
102
124
117
112
107
54
156
69
87
75
189
110
110
160
120
113
173
126
95
65
108
133
54
129
96
109
155
115
110
105
122
133
124
153
54
121
85
82
164
131
96
104
92
84
108
117
144
59
91
74
125
125
112
174
115
135
148
54
133
120
120
116
147
133
167
128
100
98
123
104
112
140
144
142
98
129
155
100
139
159
147
160
95
59
89
99
151
125
140
133
125
89
107
112
152
98
156
102
116
76
73
124
133
49
148
149
98
113
103
67
123
82
128
87
127
102
116
175
82
104
149
87
202
93
76
90
106
114
79
160
87
180
125
107
128
84
93
151
108
123
123
90
98
200
102
111
85
116
148
105
106
179
130
107
191
141
111
105
133
103
107
95
102
118
81
107
128
78
121
114
123
155
157
137
93
78
141
107
113
102
119
145
109
77
85
76
105
103
121
132
166
112
131
98
98
90
94
87
54
105
132
118
114
99
131
78
112
130
143
114
113
148
65
108
97
95
125
107
127
192
115
98
93
117
185
98
107
78
93
125
168
125
69
59
148
81
133
115
128
114
143
102
128
113
69
119
98
95
54
105
125
108
102
119
96
140
96
100
77
115
146
133
103
207
175
142
109
152
157
101
121
133
95
112
100
108
105
123
86
143
86
125
98
106
218
160
97
102
90
127
106
131
145
154
105
199
97
125
100
104
96
148
156
150
139
106
144
108
185
108
113
113
123
120
106
132
133
146
108
123
136
103
149
102
168
161
103
81
137
76
156
119
135
144
133
114
155
131
177
143
122
139
125
93
130
96
142
127
76
113
74
101
167
112
92
77
78
122
87
125
166
103
77
136
103
61
124
116
104
119
138
106
54
148
113
144
97
103
131
113
132
145
144
180
108
104
160
106
135
122
140
99
104
114
179
93
78
154
133
110
182
76
115
104
106
132
118
101
62
134
120
127
61
168
123
74
130
103
123
85
90
196
132
114
125
165
98
95
87
54
129
151
93
141
149
104
108
108
92
98
49
95
124
117
123
54
101
127
158
125
135
97
144
97
161
161
105
106
193
150
108
107
95
122
138
151
138
85
110
107
68
200
116
81
129
103
114
119
97
97
139
78
140
106
152
113
110
160
98
97
160
129
91
133
194
72
133
77
101
54
92
103
120
155
87
82
127
136
91
83
54
200
79
49
78
87
108
146
128
102
122
138
172
124
135
103
118
134
112
102
122
126
112
124
131
92
135
76
119
130
140
130
134
102
108
105
86
95
98
86
121
54
119
76
95
102
81
136
83
135
142
98
111
173
136
81
100
136
116
123
143
112
78
139
143
78
102
94
91
97
140
117
138
186
122
87
160
98
125
175
102
49
109
74
145
143
188
95
169
193
81
83
104
123
190
149
95
139
152
108
225
131
103
132
112
96
167
102
93
87
88
116
93
45
115
137
102
127
81
100
165
115
122
128
116
103
96
127
54
131
128
144
108
101
96
131
190
155
122
102
113
163
122
170
141
87
77
54
127
128
185
116
171
89
151
158
128
98
61
129
101
101
175
128
147
95
110
170
158
94
114
98
150
120
150
84
106
113
102
122
129
148
85
82
69
130
148
93
95
94
147
127
90
175
108
107
137
81
108
146
121
82
96
106
151
128
130
112
94
129
119
175
113
143
129
111
130
140
136
93
139
120
74
89
111
54
127
125
87
95
119
161
140
118
124
109
128
98
101
101
150
98
131
68
147
134
102
123
145
143
117
76
129
113
108
145
131
157
131
54
61
121
130
108
124
136
109
92
150
102
177
112
168
114
45
81
123
125
125
118
95
96
92
105
92
117
105
123
146
117
153
54
182
94
102
104
125
115
123
114
77
131
156
107
96
102
108
144
74
147
88
104
113
67
99
148
132
129
129
59
154
91
148
141
100
81
83
108
135
103
148
104
160
94
72
105
114
149
113
125
104
148
68
120
125
135
108
98
124
68
142
108
54
123
77
129
107
119
113
160
114
148
102
109
77
83
107
106
116
144
102
107
163
129
87
127
129
54
87
133
133
140
108
138
164
108
86
108
105
126
120
79
110
59
144
137
98
87
49
138
102
94
150
118
137
143
115
78
132
107
155
113
95
121
150
82
90
87
108
156
154
166
111
159
72
155
119
115
103
108
117
59
121
148
101
130
147
153
124
103
85
171
134
67
118
117
96
112
94
156
108
131
131
109
107
54
139
87
90
96
125
137
54
102
100
109
186
147
95
117
80
140
95
87
78
81
96
103
133
105
140
119
143
204
163
87
148
54
74
96
85
132
102
121
54
132
100
123
131
74
169
124
108
143
81
121
123
104
135
136
73
157
134
105
140
123
108
88
54
125
158
94
100
111
104
81
78
83
140
100
177
101
153
92
150
71
115
109
127
59
135
94
103
130
76
98
148
54
108
127
103
90
122
105
92
116
149
158
115
112
98
95
131
125
98
81
107
61
143
108
108
144
123
147
95
148
87
93
131
146
114
77
107
96
140
54
95
59
109
133
98
90
129
89
104
118
134
129
135
49
78
144
165
49
110
157
127
151
117
116
145
98
91
76
144
108
146
160
108
160
103
108
128
125
191
79
146
148
190
86
177
148
108
114
86
111
146
112
133
113
173
95
127
107
49
196
85
135
108
108
114
111
93
90
89
169
133
61
113
141
135
131
117
120
137
141
96
140
173
144
129
113
119
131
158
148
62
185
102
105
98
103
143
95
172
122
133
165
163
78
95
99
130
151
96
138
76
129
128
106
152
108
139
93
111
102
116
102
132
54
150
95
182
161
69
135
119
130
133
124
145
95
110
153
92
127
98
127
95
74
131
127
115
54
148
144
54
128
156
103
116
135
105
143
122
107
103
159
54
114
121
129
146
92
99
149
122
132
127
128
118
151
107
67
103
126
98
87
135
76
118
45
109
103
109
81
177
92
159
140
146
116
80
54
148
135
141
104
113
125
74
68
111
117
152
131
135
98
144
122
153
125
118
128
153
114
144
122
98
93
108
87
103
138
113
130
87
161
85
65
148
103
108
94
127
156
140
111
140
81
108
125
101
116
110
97
123
49
122
125
78
118
153
49
142
114
118
153
108
109
128
77
126
134
133
87
74
109
123
123
95
126
118
159
140
104
124
185
111
128
98
144
114
145
113
69
102
141
95
114
100
74
120
134
95
97
131
85
61
77
105
105
77
81
142
87
152
127
161
95
105
134
125
125
76
81
76
93
81
90
54
81
98
119
91
145
164
76
108
59
148
102
82
149
172
104
169
90
113
123
157
123
100
108
54
92
107
82
162
78
134
125
80
61
108
175
119
114
148
59
111
95
134
91
116
144
97
132
128
104
144
99
96
156
147
124
98
128
154
67
74
103
103
54
165
128
134
49
141
148
131
81
124
114
146
109
118
141
173
148
139
98
153
107
78
100
102
137
175
85
92
119
147
133
151
117
157
153
174
84
108
54
116
108
115
107
54
224
89
80
103
57
107
128
90
142
95
111
113
99
91
102
71
135
145
141
77
143
126
98
112
122
122
96
143
135
82
114
100
106
150
49
81
111
98
115
104
115
81
54
114
85
82
98
81
54
125
97
49
153
136
125
107
94
98
94
95
173
88
166
98
168
95
59
179
87
102
84
59
107
130
140
135
156
131
122
128
113
98
116
95
95
93
132
95
70
114
115
119
108
93
139
134
127
134
153
157
57
90
95
128
108
138
80
128
107
67
131
76
126
95
134
42
113
90
110
145
168
82
148
91
78
76
150
123
97
95
117
95
110
140
105
80
107
110
102
131
68
108
54
145
138
123
74
76
77
54
107
92
107
148
165
167
108
110
68
62
125
96
145
54
127
115
91
139
98
128
113
85
107
67
102
179
153
54
113
106
127
114
113
115
172
155
103
102
69
146
69
133
96
73
82
106
99
98
96
135
135
129
90
125
87
180
150
102
113
129
93
82
118
96
97
117
83
159
127
49
96
75
148
118
97
132
146
105
131
121
79
98
129
54
81
133
122
131
105
95
84
77
133
118
125
126
84
140
93
74
185
98
113
118
102
144
80
77
110
143
105
158
74
165
124
122
113
157
114
137
90
123
113
121
131
108
128
95
108
119
124
132
106
96
106
104
54
83
144
95
102
135
144
76
109
98
127
106
77
124
108
156
49
54
122
137
140
82
143
54
177
42
93
87
99
80
111
54
96
111
163
108
96
98
97
132
130
182
145
103
103
105
87
118
88
76
106
79
138
108
131
115
85
113
108
94
144
116
103
68
82
126
179
214
144
87
141
157
68
107
124
128
113
102
108
139
146
135
100
81
108
155
95
117
168
96
154
168
118
87
86
144
110
49
146
130
96
125
136
163
139
147
177
94
96
140
102
152
144
147
177
98
97
117
59
107
185
108
133
54
139
109
122
107
130
108
89
103
95
91
106
122
90
161
54
143
138
137
143
117
87
124
113
97
149
98
135
112
148
143
125
102
142
129
165
113
161
128
165
105
82
54
99
98
97
93
108
111
125
151
85
98
149
98
87
106
148
115
102
119
67
129
69
125
95
95
133
141
141
148
111
123
106
85
95
102
95
158
132
103
125
148
107
111
114
82
128
106
89
77
129
112
102
182
108
119
105
98
131
195
89
115
78
102
98
94
113
146
115
143
80
67
186
87
170
110
74
179
127
121
108
177
126
81
149
135
95
118
98
148
111
134
135
98
81
96
90
95
91
143
98
112
165
54
103
125
127
120
98
103
105
131
141
128
76
77
54
117
143
148
116
118
143
144
120
184
103
155
102
103
125
119
103
97
123
87
111
180
126
131
131
108
129
79
89
140
140
94
109
90
114
108
124
108
120
144
54
98
96
74
143
95
92
146
90
54
144
59
142
101
148
93
81
144
103
118
91
130
145
108
129
120
99
131
105
129
120
95
113
74
139
94
143
128
169
77
104
61
112
146
67
108
141
95
127
139
54
133
105
81
49
141
153
83
49
49
121
123
120
121
217
144
101
127
94
82
77
103
92
140
102
138
54
143
162
107
59
141
100
151
140
122
73
102
129
158
153
108
186
158
96
82
156
103
82
107
136
160
177
129
143
95
132
124
92
81
131
81
89
138
136
124
117
120
137
131
104
98
115
104
93
111
130
84
59
107
120
103
54
105
70
177
185
87
99
127
148
97
137
95
89
125
124
148
108
138
131
144
54
144
144
161
87
77
103
99
122
130
128
114
139
139
113
59
96
105
129
135
87
81
102
122
108
135
101
120
117
49
59
132
82
101
87
121
84
114
141
128
114
98
112
158
90
147
113
106
109
142
160
106
133
127
105
139
102
135
94
119
95
104
82
95
155
143
188
67
113
132
206
59
125
118
103
81
125
137
129
156
191
138
177
138
78
93
54
77
74
103
124
127
91
145
131
106
83
81
103
174
112
172
98
127
120
61
87
145
128
98
96
94
144
49
153
148
114
112
177
163
158
133
79
124
159
154
103
87
79
98
143
143
92
84
97
143
163
133
143
160
125
177
118
68
177
163
113
110
156
115
92
91
124
128
106
68
130
54
92
149
93
131
130
113
103
106
162
119
135
141
90
130
100
126
106
131
128
54
148
82
107
171
95
87
114
120
103
100
76
125
129
143
91
168
95
153
91
96
144
97
103
69
67
104
100
107
117
133
140
107
106
68
70
84
144
110
162
115
81
146
98
113
102
148
54
141
134
157
54
117
140
79
124
122
98
73
161
139
54
183
115
99
113
99
100
94
54
120
49
108
107
159
115
95
108
78
129
78
123
108
115
135
120
95
127
95
84
128
131
99
90
45
98
123
54
103
98
80
113
122
77
93
103
112
110
126
179
125
100
146
177
125
85
49
144
160
156
131
107
99
110
82
124
90
61
125
166
145
117
129
81
127
102
155
98
137
131
77
67
97
149
54
80
115
133
59
152
102
119
98
126
102
97
119
139
139
122
83
123
97
114
89
129
107
86
116
150
156
80
139
101
108
131
131
133
95
49
118
200
113
102
126
134
107
166
82
70
103
83
131
118
126
74
81
84
79
103
131
148
158
77
84
124
118
81
113
104
151
177
132
103
69
142
72
121
146
117
113
106
134
108
113
143
127
143
49
133
74
76
146
99
87
90
98
106
113
98
54
105
107
166
97
133
83
108
134
54
85
61
81
87
86
169
74
107
98
125
145
102
120
123
133
92
78
153
76
179
95
145
115
116
168
172
95
145
154
106
114
68
87
101
121
141
102
91
67
117
139
80
87
90
95
108
135
76
90
83
124
87
95
69
54
126
54
103
128
139
138
103
69
168
163
103
107
95
59
142
127
121
127
82
182
109
165
145
81
85
128
77
149
133
116
108
81
108
79
140
125
101
165
180
135
138
125
73
121
157
149
54
127
139
104
98
112
145
112
111
110
97
156
100
148
148
95
111
125
141
180
160
139
103
108
49
156
91
90
95
194
83
84
157
98
141
132
73
138
133
102
129
140
128
123
94
108
122
113
97
104
100
115
120
74
108
133
54
138
108
122
126
126
65
81
145
151
100
89
110
100
54
54
102
95
126
128
99
86
166
98
144
146
139
117
83
87
157
108
147
119
98
119
140
108
153
109
98
129
106
107
163
115
94
125
144
113
110
152
107
123
54
123
123
100
116
141
134
54
128
108
84
112
108
144
81
125
177
74
112
97
85
98
108
113
108
132
68
99
108
108
110
81
109
139
93
125
91
102
106
103
103
119
102
76
101
115
125
103
143
133
68
145
79
105
107
129
82
140
121
124
146
127
105
90
89
81
120
81
95
144
128
154
78
104
128
154
125
158
96
67
116
121
135
114
108
118
171
96
160
132
103
118
102
98
59
87
121
131
115
138
105
88
132
105
49
96
96
95
135
99
116
81
163
154
125
127
103
219
113
124
66
61
121
87
90
82
93
112
97
127
103
147
86
120
69
180
141
131
68
91
118
150
98
102
128
61
105
90
158
162
78
68
130
136
152
86
145
129
131
81
93
157
131
103
132
125
81
149
118
108
168
116
127
136
96
103
78
93
141
79
131
54
105
161
127
127
103
131
95
88
126
108
104
117
121
130
118
123
124
155
110
144
133
97
69
62
131
96
81
88
100
118
103
125
54
111
98
102
108
77
97
90
86
75
101
93
90
93
54
103
121
95
148
155
107
127
92
125
163
124
116
162
108
84
139
129
105
151
157
104
81
113
81
94
54
112
131
120
124
160
91
67
113
165
97
90
105
117
165
102
135
114
145
119
177
158
127
54
190
115
108
113
145
104
140
133
102
108
146
119
194
168
113
117
67
113
148
76
92
119
54
112
134
127
130
155
129
102
95
124
126
80
116
123
125
133
119
102
133
149
131
49
97
74
129
54
89
137
105
95
104
89
161
108
131
147
90
105
120
96
90
102
100
83
115
165
108
149
164
128
123
103
91
134
166
54
90
117
148
102
122
84
109
96
139
84
100
116
54
146
123
103
144
49
128
144
78
54
104
119
149
120
158
150
101
87
158
101
81
78
70
148
54
67
121
95
121
152
98
104
101
105
110
145
118
80
54
152
186
42
115
151
54
109
141
108
135
91
139
130
97
97
128
98
152
99
126
89
87
110
103
127
137
103
74
120
111
105
90
128
78
101
98
61
172
116
125
76
112
135
144
77
129
101
49
115
144
93
125
113
59
119
77
102
108
99
49
143
121
99
102
68
138
102
94
139
151
110
90
76
120
133
127
143
111
131
105
78
119
131
108
167
92
110
108
88
113
74
174
151
173
98
102
98
114
74
133
95
101
106
103
102
125
220
92
146
131
127
111
123
59
144
153
80
87
95
104
86
132
114
118
84
103
124
152
69
54
139
140
135
82
177
59
145
160
133
125
164
101
77
84
149
99
102
85
103
158
81
116
158
109
118
130
82
149
180
102
146
158
157
110
103
97
136
99
127
148
119
100
102
80
158
102
88
90
95
126
117
112
122
101
152
116
154
96
54
95
92
96
65
94
139
125
166
114
151
141
119
75
81
110
143
133
125
106
143
144
133
178
68
95
87
137
133
87
103
143
76
86
119
61
96
106
96
81
127
155
121
125
103
111
128
128
164
117
95
102
106
89
94
108
154
101
95
98
180
89
118
87
90
106
84
113
102
158
119
160
177
95
68
103
78
98
160
74
113
108
103
149
80
112
125
146
94
143
113
115
109
103
102
82
177
96
141
143
95
89
111
93
87
98
127
69
103
96
96
89
106
74
134
151
133
123
94
120
116
90
109
111
77
150
147
95
109
83
134
106
123
54
120
137
59
146
123
127
81
96
135
119
113
139
131
54
96
133
67
54
94
112
112
133
125
113
159
102
128
90
128
54
131
93
165
138
145
119
76
98
98
131
97
49
144
112
110
110
139
74
74
107
153
102
143
101
69
139
140
103
123
128
166
143
140
127
101
121
97
172
134
167
102
101
98
131
150
107
149
87
176
68
110
98
118
131
103
173
87
177
142
111
181
100
114
146
117
124
131
131
134
125
59
99
125
135
135
49
107
163
73
116
151
116
98
131
114
115
137
74
100
148
74
87
105
122
125
65
131
118
80
91
178
96
105
106
143
158
127
103
129
102
93
121
149
117
93
145
151
114
115
97
105
108
74
135
125
102
157
79
99
104
110
102
107
59
177
149
132
81
117
125
98
147
105
99
148
104
119
93
118
49
104
109
146
98
163
82
144
100
117
119
156
110
73
125
102
98
103
59
161
112
118
105
134
86
125
83
67
97
100
76
165
134
91
129
59
135
159
123
87
102
117
114
82
103
78
106
151
118
134
73
76
104
125
102
135
105
59
139
54
144
143
125
102
131
101
133
122
80
155
102
80
109
158
134
103
124
160
129
87
86
77
120
54
148
112
140
98
123
98
135
105
171
158
134
77
109
133
74
128
100
105
113
139
137
128
102
140
146
83
72
102
117
83
169
135
90
80
128
121
160
107
67
126
123
137
121
125
150
155
80
116
130
103
145
124
139
143
105
107
111
105
77
149
185
49
116
95
67
82
95
111
149
102
148
79
91
141
76
125
95
133
104
175
74
108
133
95
97
73
165
79
122
146
105
135
54
180
116
81
87
102
106
106
140
94
97
87
77
143
98
102
54
118
142
80
127
87
114
127
93
69
120
105
164
140
139
98
102
72
152
81
108
128
137
173
92
136
102
116
131
135
95
148
102
102
159
125
112
129
121
123
123
153
95
133
95
153
152
105
93
113
132
162
112
101
95
103
113
125
120
128
120
147
105
145
156
93
90
177
147
148
117
106
117
85
131
148
121
146
100
177
100
81
88
117
77
126
115
134
61
100
149
113
110
102
219
108
54
106
79
68
118
161
80
136
142
114
108
127
107
105
158
148
139
138
99
95
108
98
152
115
103
128
105
54
124
93
135
131
159
128
152
83
90
158
99
127
117
98
83
140
126
146
132
103
118
127
101
143
98
92
136
156
126
98
125
78
102
89
125
108
95
99
134
96
133
146
98
116
147
102
119
95
105
59
67
94
93
74
67
102
182
181
106
94
173
164
104
108
81
108
127
107
82
89
85
106
156
177
137
144
109
125
91
98
96
147
92
73
102
156
67
120
45
125
150
111
186
106
169
136
102
81
74
118
132
98
119
123
93
73
103
135
109
107
102
109
81
129
104
76
117
96
94
80
96
160
115
123
49
101
123
118
88
149
123
112
101
67
79
87
136
104
126
93
108
83
119
114
141
163
108
92
95
87
184
49
83
118
59
108
117
137
108
74
84
78
151
108
122
120
130
125
95
142
105
115
113
116
131
118
76
147
148
120
87
105
103
95
148
129
96
118
121
102
98
78
124
151
78
67
106
143
98
123
92
127
98
96
106
142
177
95
82
99
83
86
115
54
59
133
82
123
153
102
95
96
49
154
119
124
100
129
81
131
105
95
59
83
167
93
147
136
139
124
98
54
158
67
140
54
179
105
78
148
83
106
133
103
126
147
169
124
125
113
139
137
61
143
85
143
83
128
90
81
147
106
92
122
131
82
99
54
150
96
113
127
131
92
98
153
81
98
89
128
79
102
95
49
76
157
120
99
125
124
102
81
158
99
118
200
157
156
124
140
133
80
150
59
103
97
54
102
128
120
85
141
81
98
145
83
143
125
106
134
188
142
114
125
163
107
110
157
59
164
132
67
49
106
128
133
42
144
77
120
123
73
49
73
143
101
102
130
89
142
119
129
141
102
118
82
59
99
78
131
96
69
127
114
109
127
144
128
100
164
80
97
184
140
147
107
95
135
102
132
97
153
102
108
121
116
102
99
95
83
114
124
129
102
95
134
146
173
115
104
165
141
128
102
102
157
54
76
95
139
158
97
97
122
121
143
68
103
170
108
141
98
114
131
145
83
105
110
103
95
115
108
115
140
175
129
105
79
141
54
103
137
101
143
102
144
128
140
103
137
148
143
54
93
49
127
95
77
114
95
98
137
137
123
138
95
108
95
143
111
125
130
104
116
173
97
122
148
98
98
117
139
120
151
134
81
177
156
127
108
135
149
161
116
129
140
108
96
89
100
107
99
102
112
119
107
105
127
120
150
80
122
101
99
124
115
91
74
146
84
102
198
94
113
87
132
74
123
83
125
122
130
128
100
120
128
125
133
109
121
122
125
95
155
101
161
121
67
121
147
98
98
99
113
126
109
87
101
118
151
156
119
146
182
98
54
54
147
121
118
98
105
158
104
155
137
110
177
116
165
133
121
125
105
97
158
151
183
110
67
140
93
103
116
90
108
74
104
74
100
125
97
95
191
138
102
98
74
95
83
85
110
149
74
127
76
95
61
146
125
163
54
143
122
125
121
138
105
132
54
137
106
144
149
106
139
101
95
166
147
177
107
90
179
67
122
134
115
92
107
202
105
125
129
108
141
122
201
82
83
128
102
89
105
96
146
133
126
103
105
143
110
106
132
54
59
128
54
54
117
128
106
129
93
81
141
109
187
125
87
103
152
102
158
131
87
54
118
133
54
130
95
57
89
86
95
113
145
73
143
134
132
102
117
100
104
118
120
144
122
143
168
135
125
133
107
137
96
112
125
74
100
177
140
105
120
101
147
114
101
49
93
124
122
65
78
152
105
76
102
119
144
103
67
151
115
80
153
148
98
138
147
112
154
159
123
137
106
81
114
98
78
140
165
144
134
178
125
95
112
102
122
94
120
90
138
120
74
54
114
110
108
87
95
182
59
151
124
102
177
98
96
94
122
129
96
115
133
128
54
97
59
95
87
123
115
101
186
105
107
95
74
107
54
98
130
126
145
109
98
154
122
87
75
102
141
100
127
98
152
95
155
115
82
102
42
127
114
123
103
112
144
81
59
130
108
126
78
107
156
81
122
177
153
54
101
119
154
165
144
108
54
82
111
126
147
113
186
158
115
145
82
73
122
166
116
156
122
139
65
132
123
147
115
54
109
143
158
131
134
129
140
131
95
95
94
133
95
102
82
61
146
94
137
113
106
89
82
91
90
99
143
135
91
143
117
90
108
137
152
139
106
102
113
125
104
96
94
54
54
105
186
157
87
186
124
144
133
112
106
158
147
87
98
150
123
78
158
92
102
119
106
103
95
81
98
54
116
131
94
66
95
148
123
92
169
117
54
116
111
128
133
150
129
127
156
59
81
134
98
148
134
108
67
118
90
128
81
54
106
108
134
150
96
108
142
77
119
111
93
140
161
107
105
116
105
147
86
188
96
160
136
114
108
145
135
151
90
98
137
104
155
81
135
85
73
133
164
109
141
172
149
105
116
139
111
94
126
157
102
76
108
166
95
131
141
98
144
166
74
136
123
101
114
120
102
149
127
107
131
133
110
140
61
59
124
107
108
102
95
127
91
59
129
74
125
89
81
95
112
102
54
100
87
146
152
150
104
92
147
82
116
108
124
161
157
113
148
81
128
95
102
147
165
165
106
149
138
115
155
83
112
54
96
120
131
144
125
152
128
129
131
118
108
135
110
124
138
113
49
107
155
101
98
139
139
73
90
148
84
112
140
147
139
130
107
139
104
137
160
107
138
68
135
81
105
67
83
77
91
125
87
69
120
135
83
49
151
114
143
142
139
121
127
95
98
74
80
61
151
119
92
155
95
160
77
54
125
90
102
78
126
134
68
108
104
139
118
139
132
113
133
98
105
102
119
158
95
65
104
125
96
77
98
128
122
140
83
128
105
100
121
164
135
87
98
136
126
77
91
130
102
105
116
148
134
116
143
110
103
115
125
184
115
133
93
148
79
172
139
148
127
90
113
80
177
95
115
147
105
76
132
113
177
172
144
113
49
93
54
93
106
116
118
98
110
90
95
105
130
126
91
117
131
59
146
91
158
82
143
98
95
165
146
117
54
121
148
88
109
150
97
137
103
93
126
128
144
95
139
81
138
85
54
200
147
190
105
110
134
105
119
151
105
94
108
148
122
49
90
108
121
145
79
98
121
153
124
135
113
90
148
127
59
150
122
93
140
130
90
118
141
167
129
136
134
160
81
74
109
114
83
123
155
104
79
123
131
193
135
139
128
164
116
101
125
98
87
163
135
101
149
98
138
103
65
124
101
103
123
132
109
157
74
85
123
126
112
157
119
103
97
95
118
96
112
145
143
130
91
125
135
135
133
121
167
149
129
93
122
102
119
104
110
119
76
155
54
61
69
110
113
77
103
110
146
115
120
115
143
145
98
104
115
154
78
96
78
54
124
81
76
102
108
149
219
127
95
140
141
128
123
158
126
88
115
54
107
106
126
152
74
59
194
59
105
108
54
98
132
165
91
159
116
85
118
87
169
143
103
49
141
98
162
110
90
162
172
90
140
154
140
78
148
122
102
119
90
133
151
84
87
95
116
125
83
139
99
82
145
87
91
130
113
95
82
127
113
77
82
124
98
102
82
148
105
129
158
102
95
84
119
160
98
143
153
117
147
120
135
110
117
116
54
95
135
148
120
98
148
112
95
179
124
88
116
200
109
124
112
103
49
120
90
111
112
150
160
101
105
143
82
96
125
125
96
104
100
104
101
100
104
123
113
147
158
59
91
54
149
117
76
54
108
85
169
157
171
202
144
141
120
108
87
137
81
188
100
118
89
172
81
110
148
81
102
141
95
105
78
131
98
128
160
150
96
162
97
115
78
182
115
134
129
98
98
98
167
180
139
129
106
74
139
99
170
108
168
125
142
116
128
106
54
74
130
133
78
109
140
110
135
149
118
135
104
106
146
119
122
115
141
85
54
108
132
78
165
147
130
148
121
76
129
149
81
116
103
165
54
100
119
142
93
93
102
149
81
165
141
104
161
89
99
113
151
116
106
91
143
147
115
85
138
90
87
110
106
59
106
144
168
114
135
161
91
116
158
97
117
130
137
123
117
95
133
74
128
140
217
194
77
126
134
144
177
99
158
177
148
124
76
91
80
109
145
200
80
113
93
93
109
118
74
137
85
77
126
131
121
121
96
108
168
74
144
109
76
87
102
103
104
135
109
140
125
150
95
107
180
87
137
131
85
93
109
109
107
154
91
100
110
143
172
127
103
110
59
74
135
96
102
120
147
125
82
98
102
134
95
146
87
100
82
131
145
120
204
106
187
155
133
127
123
180
151
105
95
75
154
108
120
76
136
129
118
103
121
81
95
59
151
104
86
143
130
162
106
152
155
118
96
135
82
121
121
121
103
139
153
121
144
90
108
69
132
129
112
123
103
132
103
101
98
149
61
126
119
131
151
165
128
125
98
154
54
93
133
111
90
143
74
113
103
160
108
49
54
98
98
155
145
82
88
82
102
123
142
92
119
90
139
102
118
142
89
144
143
125
139
172
96
111
165
117
138
98
86
54
107
128
99
123
126
59
101
113
54
108
102
98
76
144
98
78
129
95
102
117
111
111
182
177
141
97
106
96
149
113
95
104
112
89
83
98
128
103
120
120
142
98
106
59
105
115
108
140
83
131
108
113
100
122
143
149
150
113
93
95
125
70
165
92
69
112
92
93
101
59
74
154
102
80
81
90
83
116
130
138
104
114
135
144
98
87
111
168
98
100
97
118
102
115
107
108
110
154
97
115
130
104
143
170
135
130
99
149
110
144
126
101
122
138
145
108
117
131
129
105
119
82
131
107
218
112
128
102
177
108
133
99
62
118
97
158
149
124
125
132
104
82
180
118
138
119
61
139
78
115
114
77
49
159
85
172
112
147
169
86
102
118
171
143
102
128
94
133
115
87
145
171
123
125
72
120
121
149
116
74
125
110
54
108
190
143
165
131
126
119
171
142
93
97
107
88
61
219
105
96
148
128
77
90
132
97
133
129
125
166
131
98
98
117
141
121
102
85
141
107
88
123
133
99
139
54
102
122
117
82
113
151
172
49
65
124
155
61
78
126
148
116
126
95
131
54
144
59
157
118
96
128
95
166
124
59
103
81
85
188
85
102
59
134
54
78
128
119
102
132
148
127
115
144
138
95
124
76
92
82
95
110
104
98
114
98
106
177
131
90
139
167
101
108
77
93
97
142
87
98
147
112
97
112
135
54
59
155
89
145
80
108
122
102
96
114
134
121
54
77
182
182
85
170
93
54
113
113
113
77
68
97
120
69
113
150
132
129
100
140
125
102
78
102
54
89
124
127
126
146
127
146
54
107
108
131
120
95
121
93
62
115
98
112
105
143
144
93
152
98
131
111
88
122
103
105
54
91
94
160
125
125
67
132
95
98
125
134
93
54
191
100
87
165
98
100
107
135
81
113
151
74
91
81
83
108
120
125
134
120
83
118
107
132
83
106
108
117
135
146
73
146
126
124
97
131
102
118
132
78
96
147
125
132
81
125
145
143
79
107
141
158
105
54
89
99
114
135
128
116
132
125
95
88
96
125
141
59
81
147
152
131
54
108
130
94
151
122
91
113
89
105
121
107
153
90
76
108
123
81
108
80
167
108
85
123
177
54
130
133
45
107
94
81
144
99
186
115
107
119
98
124
197
110
103
149
98
67
54
113
93
134
120
115
87
106
115
75
165
110
126
126
103
119
138
104
193
109
93
143
133
95
133
129
54
92
76
90
91
83
88
102
82
78
122
113
95
135
124
131
122
70
102
81
106
95
74
117
154
87
127
125
145
125
104
95
135
54
144
142
170
92
147
148
151
77
102
172
54
69
87
153
163
81
148
123
103
142
175
106
160
144
135
115
110
93
54
98
147
128
90
139
120
135
92
114
118
54
113
156
104
125
110
49
54
122
148
134
122
142
85
70
93
115
95
159
108
114
140
106
79
85
116
101
136
144
124
150
114
101
114
131
81
151
177
79
134
117
159
117
93
109
54
97
54
77
166
163
139
116
125
108
150
77
119
97
142
98
125
169
139
81
103
138
159
124
74
161
176
108
110
129
98
128
147
105
93
118
127
144
82
125
83
107
120
148
82
83
105
113
137
82
95
95
136
109
102
49
74
130
74
87
156
118
103
139
92
112
159
131
96
127
91
163
146
118
81
180
147
128
148
102
62
148
84
107
114
131
82
139
160
132
119
135
127
112
115
127
54
79
124
112
54
123
177
127
77
110
134
154
107
162
143
153
49
135
173
136
121
136
105
157
84
138
108
148
125
102
153
146
54
101
119
67
127
94
149
108
104
193
87
107
126
98
98
117
182
197
100
126
91
87
108
105
54
145
170
164
142
93
115
104
125
128
95
140
108
125
74
106
101
102
113
133
177
109
69
97
125
143
181
54
135
77
95
104
102
119
135
61
81
110
81
67
115
128
102
82
111
81
116
116
107
105
115
179
108
97
106
86
96
144
131
125
107
142
139
123
108
123
94
163
89
108
150
113
97
129
83
129
91
120
161
83
128
120
126
99
155
114
115
83
83
102
171
54
103
154
81
135
108
140
108
83
54
95
100
107
134
112
108
163
134
125
80
149
105
102
172
105
91
137
113
145
122
128
85
117
129
139
95
143
67
168
96
88
91
160
107
100
115
119
91
144
81
68
144
142
103
153
161
110
68
133
132
144
67
110
135
108
128
86
54
54
140
99
98
103
130
103
49
74
151
59
168
117
119
61
112
156
133
76
130
108
117
105
59
102
108
49
97
49
125
102
74
95
91
135
54
138
143
65
130
103
114
107
130
49
115
95
144
132
108
139
94
94
86
102
107
103
93
67
162
111
104
120
191
165
94
96
94
106
98
124
113
118
90
101
54
76
124
151
105
100
103
140
177
125
141
95
100
94
94
157
74
71
113
143
85
162
128
167
101
190
59
126
128
155
115
127
144
131
154
113
101
54
111
119
76
95
114
132
59
108
128
104
144
99
94
93
128
103
78
108
91
76
132
78
95
116
91
59
93
113
110
81
157
91
89
165
112
101
95
95
71
130
108
108
98
108
97
124
106
107
125
129
102
49
96
102
127
126
160
101
174
134
93
133
110
107
129
136
141
128
91
125
177
95
179
125
111
91
59
81
93
122
159
111
135
191
117
108
94
141
126
142
89
96
99
125
98
134
128
107
135
54
131
85
118
110
150
126
105
173
117
145
112
54
128
128
114
101
100
95
83
131
95
148
125
116
149
148
102
164
160
108
85
132
59
79
74
94
115
120
200
123
125
104
123
104
106
90
144
74
71
91
115
75
160
131
92
115
118
111
202
78
94
145
128
54
77
54
143
146
82
105
139
130
92
127
145
121
141
121
155
91
97
106
122
93
129
149
177
89
96
155
59
112
111
98
177
128
131
74
122
128
91
54
125
139
126
131
108
105
153
108
108
137
140
110
107
95
93
68
95
102
102
87
76
140
151
98
95
101
105
95
198
123
102
111
109
114
134
134
91
169
140
116
116
147
139
89
87
100
128
152
74
143
129
123
118
106
94
130
80
129
108
108
123
104
85
127
91
85
87
77
143
106
122
98
96
133
133
132
84
107
118
113
97
74
112
157
145
113
90
124
141
137
128
136
104
140
90
115
73
113
119
49
125
98
100
59
98
101
97
143
113
102
150
122
140
148
122
153
139
82
129
117
115
92
142
99
119
106
98
90
120
138
149
97
127
100
98
122
135
122
160
144
127
90
114
87
87
65
92
113
119
114
114
103
118
177
161
161
98
179
73
108
102
124
76
115
137
150
81
103
77
118
91
82
113
102
96
74
89
157
105
107
76
127
139
129
136
116
105
129
91
133
90
104
134
113
54
91
121
120
102
136
124
108
139
96
121
153
105
123
135
108
134
108
116
164
133
177
80
129
135
136
103
115
104
54
127
114
139
125
77
135
104
101
107
111
76
98
124
156
147
117
126
81
49
113
67
98
179
68
139
186
98
144
177
87
114
123
137
107
151
108
123
131
106
74
145
54
101
103
94
113
108
113
106
82
162
70
152
85
119
170
97
125
126
93
110
180
133
83
85
103
143
80
160
149
131
95
119
142
116
129
128
105
98
90
117
131
95
148
54
102
142
136
100
90
81
88
143
131
129
125
104
109
92
179
116
115
158
93
149
76
110
95
112
89
81
139
87
132
142
98
112
124
54
116
131
117
128
147
59
119
108
148
107
102
149
92
108
77
132
188
115
107
90
130
93
173
154
87
160
131
120
134
142
102
85
168
118
104
111
122
105
135
116
54
164
110
101
150
110
106
54
166
112
146
125
119
148
118
97
112
106
117
78
143
131
102
102
87
142
93
113
148
125
139
112
113
144
179
134
81
96
77
121
108
108
106
132
135
91
158
97
59
106
131
105
103
98
105
118
105
112
125
117
80
95
90
98
86
128
111
54
74
123
61
139
103
107
49
78
113
87
113
130
126
98
120
140
148
159
125
128
85
101
149
102
98
177
164
69
125
125
136
148
61
124
54
93
87
67
122
101
100
140
54
77
135
111
82
102
57
89
169
102
139
156
96
132
85
194
89
84
144
118
108
108
77
77
80
54
100
131
98
105
127
108
117
105
95
143
153
68
115
113
109
124
186
87
85
150
77
70
98
122
112
133
143
90
133
129
87
139
131
82
143
95
131
87
151
119
128
66
131
129
90
123
151
98
102
146
113
177
109
54
134
82
54
140
140
118
146
128
133
165
122
126
108
152
54
108
122
92
144
148
129
148
198
158
102
128
120
95
148
69
106
150
120
54
81
218
104
121
112
99
133
54
107
118
102
119
125
150
98
143
83
113
140
80
131
84
102
147
179
94
81
96
122
132
115
81
102
81
98
82
59
91
119
118
105
87
105
186
113
125
103
90
177
135
93
98
156
145
115
113
128
100
103
161
103
148
98
85
116
127
106
118
100
122
61
89
135
82
118
107
77
106
103
93
69
176
82
113
125
131
117
132
104
77
123
88
89
129
117
81
105
61
143
173
80
95
117
42
85
113
168
132
145
113
177
87
127
103
145
106
218
109
144
54
80
157
141
98
115
148
124
137
111
101
117
107
140
126
124
122
143
142
128
77
87
92
124
131
138
85
100
91
164
131
78
131
93
127
77
115
130
101
121
110
127
148
134
161
177
54
90
76
180
151
98
95
115
54
172
100
141
121
163
142
78
102
113
80
81
116
110
67
163
105
172
124
96
102
87
57
185
144
106
107
112
78
177
156
93
98
100
174
105
162
49
100
93
125
82
140
153
54
123
67
96
103
103
160
108
177
106
127
144
108
113
118
108
175
117
68
156
91
141
173
173
87
133
134
147
128
99
142
49
139
102
158
148
103
79
139
133
106
101
153
177
133
119
139
135
118
81
143
130
150
113
133
133
103
146
101
85
106
158
147
146
95
74
91
92
90
109
171
130
200
133
124
133
113
124
113
54
120
105
67
94
103
113
82
104
77
118
109
131
104
130
99
98
105
103
111
120
135
115
54
155
105
87
130
129
151
89
128
146
114
102
81
133
77
152
112
54
131
140
147
59
118
87
134
82
138
138
87
122
147
129
153
134
95
148
150
121
134
106
123
112
124
148
110
144
122
102
104
127
106
122
128
90
108
100
117
90
106
80
162
95
157
89
91
108
116
119
98
76
128
122
103
128
111
125
120
120
154
169
160
128
94
92
180
72
119
110
125
127
119
130
97
102
129
101
128
120
73
96
126
107
113
61
95
96
124
131
158
119
101
129
83
67
103
114
99
123
158
83
108
97
119
112
158
98
131
125
167
125
117
91
87
96
174
135
102
45
119
108
98
141
102
105
54
110
77
78
147
118
106
148
135
123
125
119
108
109
131
106
115
67
143
88
118
94
109
135
121
83
54
132
102
167
49
98
114
121
119
54
133
95
144
98
127
59
131
54
148
102
237
77
87
116
110
105
103
105
147
148
113
82
189
108
135
116
106
124
95
113
108
70
139
98
157
93
120
78
113
139
107
137
83
114
137
54
114
119
115
98
145
118
67
122
97
105
157
170
92
127
118
91
83
108
112
102
103
102
103
59
173
100
149
160
106
106
131
165
103
115
112
125
149
139
98
156
89
106
81
158
75
110
121
85
123
128
110
108
90
131
158
131
77
105
127
108
154
135
79
111
119
120
150
81
120
95
97
105
101
104
59
101
115
103
119
74
90
206
150
87
108
102
133
126
130
107
78
133
74
163
87
158
59
98
115
105
147
109
49
91
150
101
85
102
90
120
114
115
131
169
167
139
141
153
97
149
118
112
93
91
131
83
128
123
54
104
54
129
103
125
85
100
68
80
93
96
131
133
134
102
104
98
148
125
146
125
105
146
127
168
100
101
106
162
82
156
109
131
155
97
133
98
152
125
93
98
70
157
116
76
167
74
115
143
149
132
177
67
87
69
101
69
71
97
54
126
89
149
148
108
133
98
102
106
117
49
97
158
112
81
165
165
148
110
161
65
155
126
76
77
96
68
108
177
127
144
107
115
162
125
110
96
133
132
93
118
54
125
139
127
117
138
126
82
113
108
135
102
115
103
83
123
193
110
102
126
141
176
96
127
103
122
109
54
102
123
130
142
116
68
113
54
140
119
184
106
107
76
54
129
119
136
109
132
156
129
131
98
117
105
133
121
102
113
90
102
158
76
107
54
144
152
95
76
81
108
102
145
107
119
49
120
74
130
101
83
157
93
113
101
85
133
113
134
81
128
121
54
147
119
175
59
109
76
139
134
49
129
102
165
165
96
159
116
104
207
151
133
128
96
101
114
118
105
131
109
113
102
144
177
80
94
98
54
49
54
91
109
139
82
143
103
74
99
103
126
93
98
107
150
149
100
76
77
120
109
171
148
123
143
128
111
96
102
133
104
133
95
127
108
106
98
83
97
116
137
98
115
125
113
98
54
130
133
121
135
149
142
102
146
106
49
106
83
107
143
124
108
124
113
142
120
145
85
122
135
158
106
125
100
155
84
146
119
68
90
110
110
119
162
107
140
113
76
104
87
155
76
147
138
129
138
98
106
102
140
102
90
144
98
143
167
54
77
79
104
120
90
124
108
74
76
125
54
109
130
110
54
144
90
80
83
102
102
177
77
83
126
139
180
77
54
83
115
99
170
96
141
49
108
79
125
84
130
54
165
74
116
141
115
87
78
59
143
68
98
113
74
150
107
132
90
121
141
93
118
107
108
133
160
98
59
116
125
54
170
101
76
85
148
111
185
125
125
106
125
125
54
61
144
156
122
123
108
118
81
81
103
206
83
148
145
167
116
124
159
105
102
107
93
83
100
103
82
139
120
107
108
54
182
85
161
54
145
103
95
133
83
131
81
144
129
102
102
67
154
81
171
108
110
129
169
116
49
88
129
98
157
65
149
108
133
125
164
90
99
158
123
90
54
103
54
102
59
96
156
158
81
99
93
128
118
104
95
118
120
130
102
84
108
102
135
139
120
104
126
85
54
145
79
190
103
156
98
115
110
54
123
169
128
54
139
158
112
102
131
139
91
133
95
115
141
99
130
113
74
74
138
108
102
128
133
49
135
111
104
141
86
74
138
178
99
67
148
82
149
103
139
138
114
108
96
160
110
154
141
85
137
92
81
160
127
134
167
90
61
149
103
142
102
158
108
166
125
124
127
93
119
62
105
92
94
106
108
111
76
125
102
149
113
149
125
110
115
111
103
81
87
144
103
136
93
104
115
123
97
124
167
114
126
90
139
149
94
88
118
142
109
158
138
120
179
100
83
130
112
98
167
125
126
147
135
108
83
116
98
95
129
144
123
54
133
159
103
153
160
103
215
180
193
108
87
131
98
49
103
146
135
82
118
140
125
130
141
179
125
80
122
133
99
111
158
84
54
128
170
102
145
59
81
95
128
115
83
84
102
113
95
121
98
102
87
82
95
123
114
105
108
54
153
54
104
128
133
82
76
135
136
119
125
128
139
145
101
78
126
124
90
134
84
182
121
165
102
120
77
80
133
91
87
93
84
125
131
121
135
166
144
119
135
59
160
96
82
95
122
100
160
150
83
76
172
104
135
112
137
88
144
54
122
82
90
123
102
152
169
120
54
140
156
83
109
157
102
135
115
130
80
125
103
141
107
104
158
54
159
93
133
102
92
81
123
120
95
102
54
132
79
49
49
82
126
186
106
75
135
146
76
141
124
132
107
49
108
129
166
95
129
122
103
147
94
145
127
163
161
81
54
125
92
102
74
164
94
117
82
143
125
98
101
103
89
101
128
99
133
98
54
115
126
128
140
133
171
102
129
127
128
112
147
200
179
98
124
127
82
108
104
85
162
128
80
148
123
95
85
102
104
126
98
102
146
73
120
124
125
125
150
93
102
95
129
108
54
147
134
90
74
155
101
99
66
90
87
143
177
134
122
148
120
127
186
116
113
108
134
133
116
121
108
122
129
85
155
99
138
146
105
49
93
107
83
194
148
83
96
162
158
147
59
54
108
108
157
120
59
158
94
59
101
122
112
59
130
54
160
104
72
85
108
81
186
113
122
118
88
104
93
138
106
95
131
141
104
54
112
110
113
116
90
93
127
117
112
128
137
98
113
113
183
113
153
87
78
98
91
173
49
98
156
134
93
95
85
102
114
91
139
115
140
123
147
132
68
90
148
186
96
87
133
87
105
200
105
143
163
132
148
127
105
87
105
94
96
54
74
97
134
80
145
150
93
113
143
106
101
133
87
95
109
143
137
102
59
83
126
81
154
85
81
124
131
100
108
133
139
154
127
160
74
98
156
54
121
96
116
105
128
54
123
76
186
125
84
148
112
110
77
54
157
167
81
108
98
188
140
100
164
163
129
105
139
108
96
144
120
90
83
85
97
100
59
139
121
79
121
157
85
148
123
115
122
131
97
98
49
161
182
121
118
101
116
74
85
161
68
110
168
144
177
112
164
149
149
116
87
49
77
135
101
128
157
96
98
82
54
107
70
130
79
128
148
135
162
87
105
78
80
79
54
96
108
180
61
165
174
92
119
141
91
103
85
105
84
150
91
182
111
126
177
98
123
86
104
91
140
125
76
133
82
149
117
122
102
132
128
114
135
108
54
103
94
143
120
87
78
130
148
98
194
105
147
88
81
77
112
156
91
113
131
82
101
175
122
54
81
59
127
125
118
141
140
151
178
77
104
108
102
109
102
59
68
149
138
175
127
117
153
159
97
78
135
54
126
130
85
138
158
149
119
96
102
67
145
110
118
98
80
158
116
117
103
168
158
108
93
87
135
145
129
125
102
79
108
98
95
59
120
145
108
194
139
67
112
108
130
149
116
108
77
102
102
82
114
129
124
141
105
97
99
148
110
104
120
100
126
146
133
117
108
99
144
177
126
145
126
87
114
54
124
74
103
113
136
83
91
81
129
177
127
121
151
120
156
103
145
78
130
157
100
106
126
137
98
105
114
76
89
135
139
95
127
108
80
124
162
96
103
172
98
130
91
59
54
79
131
90
83
87
108
135
127
108
74
59
81
141
125
116
123
103
177
98
98
110
102
144
98
159
89
94
54
175
165
54
116
95
59
90
150
112
162
119
124
88
131
95
81
115
93
146
107
108
109
140
81
125
75
115
91
93
118
98
100
83
103
144
95
148
191
109
178
124
77
132
131
74
149
68
104
111
106
59
91
54
95
191
125
95
114
90
147
102
104
78
139
116
118
145
104
112
140
96
148
137
113
102
74
107
161
81
113
93
76
54
127
127
138
76
97
82
54
69
116
99
101
81
140
160
59
139
160
103
81
95
198
107
115
159
114
89
93
105
159
115
54
117
102
83
54
162
164
123
95
107
87
125
102
168
105
95
153
125
98
145
119
70
59
163
54
54
125
137
158
49
77
68
116
98
110
117
130
77
103
107
167
106
108
118
120
117
165
159
102
125
108
96
119
141
104
169
110
107
108
74
116
129
102
125
116
124
144
95
122
75
137
119
112
119
123
105
73
143
131
125
98
81
82
140
78
125
90
119
144
87
98
93
145
110
93
139
123
130
108
100
108
49
124
164
158
136
113
104
112
170
130
102
113
121
54
111
113
81
125
139
135
102
113
102
142
209
107
54
133
105
89
101
107
145
98
146
102
98
107
150
119
140
156
133
108
126
110
54
54
99
54
150
98
95
115
109
107
133
69
118
67
167
101
111
95
81
115
116
104
97
97
117
110
124
94
116
93
137
118
74
135
108
103
109
206
118
128
123
102
177
140
68
90
101
121
110
139
129
155
135
110
97
69
96
109
102
108
143
117
102
104
139
160
140
77
59
77
83
96
135
89
121
129
125
89
136
87
81
108
125
143
101
157
76
155
152
67
95
97
104
157
77
106
144
59
107
155
59
117
93
148
140
153
103
110
107
54
115
105
103
122
144
103
115
159
100
96
135
129
74
78
105
49
74
129
127
107
125
206
149
81
139
83
96
97
153
67
111
125
178
54
149
108
54
103
102
88
135
158
94
153
117
109
84
112
110
102
78
93
133
95
123
129
103
98
104
92
95
107
135
149
112
95
106
74
97
102
93
118
81
77
104
162
113
78
96
121
108
109
111
74
115
162
162
168
114
132
123
135
78
85
120
77
171
146
134
112
54
174
95
180
80
148
93
78
127
121
135
149
67
114
161
91
95
103
126
54
118
82
131
140
127
122
95
81
54
102
104
98
131
113
129
54
149
139
152
114
81
186
129
98
129
70
103
170
69
74
172
127
151
129
147
125
140
105
116
90
115
137
59
98
102
54
139
136
144
54
111
82
99
92
146
107
126
144
113
145
115
108
103
141
139
130
74
100
141
96
102
137
81
74
143
130
80
149
128
156
125
115
123
144
61
118
54
115
130
82
90
91
145
122
107
119
123
113
98
94
115
87
133
110
137
113
49
161
96
142
172
107
122
74
132
87
165
124
120
78
178
113
116
125
49
59
133
128
115
148
87
142
177
145
98
98
132
125
128
77
107
67
98
95
113
104
151
108
77
102
123
95
59
87
54
103
158
143
108
113
127
142
95
108
132
109
152
163
105
114
54
90
117
97
117
106
142
81
145
76
149
173
142
98
95
122
133
105
129
102
139
54
156
131
112
118
87
95
104
86
110
105
111
151
140
107
104
177
113
164
94
107
150
91
95
130
115
150
152
112
130
85
115
76
168
102
102
137
172
105
184
90
120
131
148
81
54
110
164
82
120
98
147
115
145
90
95
54
143
67
148
155
122
113
94
118
171
99
98
131
164
133
49
90
122
126
81
110
92
137
92
149
113
161
54
135
101
103
80
95
109
125
157
129
110
77
164
125
90
74
108
97
143
95
162
123
125
144
76
133
82
103
74
45
182
87
78
111
90
99
120
118
141
131
123
82
103
120
98
135
124
97
82
134
120
96
131
120
78
127
150
122
100
108
108
76
74
88
122
160
137
81
76
87
111
125
82
108
98
134
145
131
125
86
115
103
95
105
129
116
137
102
54
120
107
95
96
98
91
94
135
105
59
103
129
80
121
98
125
160
155
158
74
159
90
87
113
165
119
139
147
168
95
160
95
143
54
102
128
161
74
116
127
144
74
102
133
106
110
92
121
95
99
98
59
126
146
102
94
82
102
102
95
154
124
110
137
87
105
104
143
125
81
81
98
142
95
89
120
131
59
117
129
85
113
172
106
129
118
101
98
88
95
145
149
49
82
102
172
109
99
115
127
144
111
133
113
124
134
128
77
92
125
141
102
138
83
49
54
97
186
141
74
109
113
149
134
102
143
84
78
126
103
149
133
74
118
140
101
103
76
103
103
137
136
78
119
112
78
125
122
128
214
125
123
96
74
92
109
138
68
129
74
119
124
87
130
82
128
123
98
97
102
54
111
148
136
119
168
92
84
121
191
82
93
140
95
54
67
106
99
148
59
116
135
102
129
84
67
148
54
188
136
100
135
76
117
126
108
131
97
106
105
96
133
108
95
105
133
155
93
61
76
85
115
150
116
98
127
119
116
82
102
129
54
100
120
108
93
118
136
89
154
130
107
54
84
108
98
170
76
145
101
142
108
91
156
79
151
95
113
98
81
100
193
115
78
105
154
122
56
54
128
123
155
97
124
107
81
160
150
135
163
74
95
163
127
82
73
110
105
178
113
140
93
96
102
116
128
132
153
94
80
100
143
120
101
156
102
88
83
136
163
146
108
101
54
78
149
135
94
101
131
113
126
99
108
78
97
145
144
128
127
146
95
103
95
152
105
54
112
54
131
95
91
102
132
95
128
70
109
135
104
129
88
115
102
160
131
128
67
128
134
77
97
107
85
72
128
83
95
113
140
110
132
83
97
98
91
81
129
114
133
120
80
131
83
116
90
90
131
97
102
54
96
100
137
103
122
147
149
115
128
102
128
95
151
135
78
142
102
122
115
118
105
114
117
154
118
158
112
147
98
85
143
157
143
190
150
103
54
77
54
140
158
105
76
54
111
135
130
124
122
102
81
148
90
102
97
96
102
102
105
102
127
122
79
111
90
120
139
102
124
54
135
130
103
93
113
115
122
148
99
118
119
162
122
135
49
158
107
140
98
98
103
103
135
102
187
117
107
133
81
142
49
118
126
80
91
150
54
104
54
149
160
85
172
119
70
140
90
67
92
125
99
78
76
115
98
120
150
54
102
124
137
111
137
108
144
90
91
111
128
135
97
124
80
109
98
76
156
141
77
136
121
90
138
105
103
147
127
112
136
98
134
116
82
146
95
118
114
49
103
59
171
145
102
148
83
79
102
116
112
145
117
89
108
104
92
158
108
74
114
125
146
112
95
114
81
54
115
147
76
112
169
143
166
76
68
120
125
117
133
81
106
108
125
101
102
98
132
110
92
126
105
98
128
92
122
89
90
125
103
74
156
127
94
106
104
147
137
93
158
74
124
164
145
122
120
76
92
49
103
94
103
142
131
154
87
102
151
103
131
155
145
87
98
160
98
116
131
168
110
132
131
156
96
104
130
116
54
133
128
144
105
112
49
72
139
109
156
128
107
165
160
148
182
198
73
98
92
102
54
121
83
150
132
152
81
74
143
54
132
89
133
165
149
138
77
154
83
168
135
54
117
163
184
54
88
140
93
122
134
140
80
114
133
132
120
98
49
180
73
119
137
59
125
67
94
123
200
134
96
108
156
96
104
132
111
92
147
81
78
115
95
95
49
100
168
95
91
103
143
59
68
101
196
78
127
130
70
131
115
173
102
144
54
59
202
119
61
115
148
145
87
85
115
141
54
108
135
70
74
165
67
137
106
120
74
125
54
78
131
87
145
82
91
113
110
105
115
121
117
113
143
106
130
104
124
154
125
115
49
113
129
148
120
102
68
146
155
128
95
91
106
125
150
82
120
130
143
204
128
102
158
137
97
76
103
94
128
123
99
101
129
87
111
180
103
143
201
102
113
155
119
94
118
59
148
128
161
118
110
90
113
104
134
112
134
158
106
54
104
54
153
54
139
148
105
105
118
69
95
160
101
113
142
54
125
103
156
54
54
128
49
123
54
107
125
118
131
88
61
104
108
142
81
108
128
140
102
111
104
102
139
76
146
94
145
143
115
179
84
102
79
139
101
149
112
113
107
200
112
127
112
166
125
141
109
84
78
117
156
112
104
151
112
151
110
54
87
145
121
170
109
96
54
85
107
120
113
127
54
87
106
149
156
144
120
124
99
127
84
102
104
134
138
65
90
87
141
118
141
156
102
100
76
128
163
175
147
83
186
212
124
78
106
98
118
103
124
129
157
125
99
111
100
102
128
74
54
78
135
82
129
83
127
101
117
111
136
98
189
125
103
90
74
127
114
144
148
84
133
137
139
167
113
129
98
81
145
127
54
162
163
122
87
141
121
134
128
127
97
146
159
142
146
148
87
138
160
92
112
113
146
108
76
149
73
167
153
184
87
111
104
77
95
102
96
54
78
163
149
98
136
100
115
54
96
98
95
113
142
155
177
102
105
146
106
104
157
91
147
97
95
117
108
138
125
81
135
121
108
86
97
96
87
93
148
122
74
119
105
140
95
123
72
131
133
141
131
154
105
113
81
148
124
145
120
108
96
102
141
102
91
212
156
142
145
79
180
176
146
145
84
147
95
76
146
81
131
93
107
151
59
90
125
108
107
113
128
131
119
89
90
128
165
169
49
139
151
141
91
102
123
69
102
86
68
126
150
105
108
135
135
116
137
76
124
120
116
156
101
105
161
151
159
114
101
103
150
124
98
87
133
132
138
158
150
115
94
67
145
85
81
86
81
98
148
135
95
148
59
117
113
92
134
148
106
120
112
77
136
74
72
67
127
116
104
118
137
95
125
93
83
110
111
100
201
127
96
125
85
81
98
76
84
109
104
59
110
117
128
92
112
102
158
76
95
116
81
153
161
103
77
96
87
87
129
111
147
104
54
155
108
132
87
49
122
98
113
96
108
149
93
117
131
112
136
115
91
112
134
194
131
130
133
76
115
87
85
121
76
95
154
130
118
166
110
125
116
85
144
139
120
160
130
158
108
108
87
54
140
120
158
113
127
71
78
62
74
105
113
108
95
112
118
87
115
104
110
83
113
205
148
139
107
131
125
147
73
111
93
131
131
88
59
102
75
92
106
109
78
93
144
87
112
112
169
134
147
137
54
149
54
106
135
62
173
126
108
81
212
103
54
129
176
167
165
129
54
121
97
104
106
106
157
107
89
152
74
132
104
160
142
78
138
148
106
119
54
99
123
74
115
92
89
54
133
120
123
157
84
148
145
90
132
113
72
182
94
54
138
123
76
102
103
83
97
143
101
103
143
91
103
67
96
95
154
148
157
131
129
154
131
67
115
135
67
90
70
163
76
142
74
81
150
110
128
82
224
172
165
117
76
176
87
108
101
116
123
91
153
76
103
112
85
120
127
49
91
98
54
110
135
111
81
115
105
82
108
139
132
155
206
76
171
141
177
149
142
54
157
108
110
215
97
115
159
146
137
177
118
113
231
125
112
139
86
116
121
129
94
106
141
87
117
134
143
111
91
114
78
45
147
108
178
57
119
98
148
93
118
84
104
54
113
138
148
87
132
54
78
133
124
54
194
108
106
103
111
136
213
83
125
122
105
80
69
106
139
113
93
128
102
131
163
98
118
79
146
146
93
168
54
98
141
114
105
111
125
143
80
103
97
102
127
119
148
112
152
120
61
119
180
149
102
135
92
54
108
103
132
78
128
92
123
135
131
161
173
143
49
123
144
130
78
98
143
146
188
98
102
74
130
178
152
106
111
138
102
135
165
141
135
148
119
151
77
116
129
114
85
169
127
93
133
110
144
85
93
98
95
145
74
79
145
87
141
77
74
108
89
140
95
101
127
140
99
113
126
168
150
194
49
104
93
102
83
131
105
87
114
123
113
105
133
89
119
146
139
120
109
119
91
59
163
93
134
78
95
136
103
161
102
161
89
76
130
130
54
116
90
77
125
100
95
81
98
93
132
100
85
97
74
142
97
98
97
98
87
54
49
106
54
105
85
73
148
145
120
148
135
112
95
77
133
112
141
98
95
59
106
113
109
147
108
108
109
68
85
59
109
114
93
54
102
126
112
131
128
172
74
108
124
54
110
97
106
106
153
122
162
95
114
123
54
131
98
102
76
108
92
126
83
92
171
170
113
147
129
164
163
124
108
54
135
135
127
128
144
115
111
89
86
142
124
98
140
110
110
122
113
133
83
131
95
108
148
95
93
148
105
133
108
95
54
113
168
163
124
105
151
143
77
121
122
115
119
125
96
152
148
103
165
160
129
136
118
95
130
108
111
170
163
124
108
107
130
103
85
140
136
132
82
61
125
102
89
120
121
127
86
98
71
114
106
130
77
172
106
76
92
45
101
146
93
148
61
79
111
69
156
155
102
156
90
108
143
108
77
169
103
108
113
121
123
133
102
96
106
134
49
78
108
100
85
145
102
104
144
93
121
140
98
127
95
140
113
133
108
133
129
140
93
82
136
124
116
95
77
87
168
126
110
111
131
132
135
54
116
154
102
76
143
76
73
96
140
54
136
126
106
81
108
80
59
161
116
109
125
151
147
150
54
101
124
149
102
80
144
110
93
118
87
168
108
127
153
142
147
101
145
95
74
105
90
87
49
100
121
54
109
77
115
117
194
103
102
125
91
113
108
121
90
129
130
124
61
98
96
81
87
83
101
49
120
94
188
149
155
121
105
90
67
120
77
151
158
54
133
141
103
113
121
128
109
130
159
77
121
135
133
102
105
145
125
160
99
86
118
149
124
165
93
67
74
109
78
146
102
127
98
103
102
135
144
74
108
120
125
172
145
49
87
104
80
101
76
125
107
97
158
117
59
155
152
106
93
122
102
118
106
74
138
86
129
103
103
93
106
54
116
127
116
143
154
146
76
102
101
91
157
139
132
108
98
159
104
152
101
119
91
148
54
156
145
125
114
108
140
163
162
74
108
113
139
128
191
130
74
138
78
164
113
143
82
83
95
123
95
123
120
143
131
82
102
86
102
110
151
105
49
131
100
135
105
85
81
108
115
59
133
167
103
83
112
90
165
127
108
121
113
97
119
113
74
131
122
108
103
86
115
123
83
102
124
77
108
124
54
133
96
88
139
182
177
93
49
104
154
138
135
98
104
146
135
98
127
83
105
93
139
135
155
101
95
159
109
167
90
105
59
160
105
134
113
54
127
129
109
136
108
94
149
87
73
113
98
103
130
108
77
77
128
199
61
110
177
111
79
84
96
111
135
130
85
154
135
103
128
74
61
98
107
129
107
153
87
95
102
101
151
144
95
85
82
89
122
185
102
82
74
133
145
188
87
99
119
103
141
79
114
82
95
82
133
91
198
101
108
182
138
74
123
81
82
172
130
103
99
84
184
74
112
103
172
106
98
116
110
144
157
124
59
151
119
104
108
173
124
81
95
87
95
131
162
166
108
105
105
82
54
105
138
125
102
91
108
121
116
133
109
93
95
118
77
98
59
81
83
84
184
157
105
137
114
144
59
98
74
139
140
78
69
108
82
115
94
84
148
123
144
139
107
115
88
87
108
119
101
54
114
103
150
158
74
146
180
107
151
82
158
99
137
98
117
103
123
207
127
141
102
49
98
196
95
148
87
87
77
246
151
113
90
130
106
95
148
85
158
122
89
92
70
101
74
132
78
153
97
97
94
98
139
110
87
126
99
113
72
118
81
123
97
152
125
90
72
133
125
132
98
74
125
115
129
130
98
54
102
116
125
112
54
81
102
107
59
115
108
49
95
82
113
153
124
169
118
113
200
143
132
98
109
123
132
144
148
115
59
95
112
120
128
83
54
107
98
134
74
113
102
92
132
105
166
105
114
167
82
160
132
191
105
101
146
133
98
59
101
145
130
77
100
107
113
124
93
114
108
143
131
124
125
93
90
125
59
87
92
155
81
183
138
93
92
68
149
141
143
130
95
120
137
98
98
85
94
80
89
116
108
127
87
74
93
90
106
133
156
54
113
81
135
98
49
103
105
93
131
101
129
104
136
144
156
130
98
80
100
157
113
128
165
91
152
107
144
116
117
54
106
82
131
102
54
92
98
61
87
108
96
85
142
102
110
128
93
62
83
100
87
86
124
132
117
133
69
115
89
133
144
170
124
145
148
119
97
101
150
118
160
78
141
81
123
91
121
93
141
100
93
118
120
113
118
98
54
45
100
98
125
91
148
108
142
114
105
144
67
128
118
192
154
112
130
139
154
102
130
97
95
132
139
105
131
144
125
94
81
122
78
146
95
168
124
120
97
117
87
49
91
162
116
103
111
163
124
113
89
68
95
78
78
54
112
113
94
136
108
90
124
175
113
125
118
93
139
134
132
54
158
93
140
99
134
98
131
138
133
54
112
77
166
166
119
85
124
105
206
147
120
82
117
133
80
115
128
144
157
143
161
59
131
139
133
180
144
161
54
132
122
102
115
103
104
102
151
108
95
144
90
98
81
128
125
118
118
76
93
196
85
102
97
144
49
113
108
98
125
105
123
148
108
148
102
68
108
84
129
90
109
98
93
95
95
168
133
173
90
95
81
148
116
153
129
89
54
125
97
54
188
179
131
95
145
108
132
148
91
124
149
128
143
119
132
144
118
54
77
95
104
76
118
76
150
109
100
67
102
134
129
104
139
102
78
143
133
118
113
135
76
106
96
49
125
109
54
89
109
166
161
82
135
105
139
165
125
150
78
96
102
115
127
121
145
77
104
139
109
102
102
74
110
135
142
105
113
111
85
96
122
95
140
110
155
123
113
138
87
94
137
90
74
84
107
87
93
102
121
81
106
96
149
151
90
116
109
103
112
109
80
109
95
92
123
117
106
127
108
124
49
96
98
116
106
133
124
81
103
122
83
59
154
116
49
108
132
54
113
98
158
146
82
90
81
162
122
148
178
129
135
96
165
82
133
149
119
108
82
72
119
125
61
69
108
139
110
102
157
74
144
90
95
147
147
96
117
110
158
125
67
80
85
77
150
90
81
133
102
172
97
135
104
113
49
74
129
73
120
78
111
131
148
147
68
126
127
153
131
148
120
145
110
137
90
129
190
95
107
113
113
75
54
81
99
118
54
120
123
145
106
147
90
95
109
113
114
119
78
143
77
128
93
143
68
94
123
54
103
150
111
98
103
106
107
149
128
102
108
94
122
146
132
178
155
158
124
98
98
105
49
126
81
97
213
147
118
54
100
129
116
114
133
126
131
95
122
161
107
103
98
76
112
143
140
110
87
147
101
120
107
78
141
106
145
92
148
124
67
112
120
131
92
128
123
95
77
99
139
93
148
117
106
122
142
102
143
151
135
154
180
125
187
93
131
98
101
78
54
122
128
84
108
86
90
98
133
122
102
82
54
108
135
102
167
81
54
90
122
165
92
177
106
105
144
95
189
69
129
137
161
103
98
107
84
54
119
123
149
96
115
117
107
143
107
160
59
98
98
88
81
127
54
99
129
114
143
135
81
101
92
144
146
123
97
161
123
128
164
87
93
108
95
113
95
100
82
109
87
106
120
98
87
148
169
94
163
105
89
106
79
98
120
150
82
158
177
100
142
98
121
90
87
148
105
98
158
107
130
118
161
126
109
108
82
98
102
96
97
108
87
131
102
112
120
108
90
122
124
81
140
152
152
95
139
102
92
93
76
110
108
110
90
108
106
102
109
125
102
158
133
116
120
146
193
82
97
85
149
111
131
143
98
201
129
120
144
160
122
116
135
135
81
76
82
140
153
170
65
115
125
85
121
110
103
106
76
113
95
115
166
148
98
153
128
125
128
83
108
130
137
139
135
111
132
124
190
90
78
86
148
109
101
185
131
95
95
87
78
105
163
100
115
59
113
139
162
103
136
68
74
98
77
54
102
154
76
92
152
124
126
108
132
87
54
114
124
133
103
89
99
138
133
113
108
119
77
89
115
108
112
98
148
54
81
92
143
119
122
111
98
115
98
93
59
106
85
108
102
49
104
87
155
102
143
92
95
175
90
111
68
78
61
147
123
95
141
147
159
179
98
130
108
142
140
90
104
74
127
112
140
130
132
79
167
131
161
125
103
115
117
164
103
81
192
168
148
114
128
154
129
119
113
82
91
99
141
160
118
95
94
113
125
125
133
83
74
116
127
107
59
108
101
85
95
137
120
183
92
110
90
129
133
154
93
95
108
54
156
102
108
91
54
132
95
107
146
142
94
140
74
82
95
156
125
126
123
54
108
91
125
124
83
141
138
156
111
114
142
115
145
137
147
92
87
54
132
100
133
109
131
133
124
54
99
54
108
148
143
119
118
146
130
74
125
171
130
78
95
158
129
161
127
103
49
113
103
78
147
80
54
147
132
143
115
61
127
156
141
115
117
131
150
77
120
105
148
83
119
91
154
102
125
96
99
142
158
115
156
143
81
131
102
108
172
93
100
116
147
136
154
94
105
104
115
130
155
108
160
108
125
158
76
78
182
95
87
103
138
131
87
120
77
116
108
129
104
129
102
127
130
102
105
125
105
148
49
54
144
156
92
119
148
118
137
120
149
127
123
117
81
131
151
161
121
77
110
112
102
83
122
154
147
103
116
132
69
54
54
150
142
93
143
109
82
120
106
125
156
179
146
96
171
103
76
90
129
119
157
216
155
92
113
100
74
115
152
67
138
98
116
125
95
131
105
129
122
77
106
96
111
144
111
143
108
127
113
108
149
98
144
141
146
110
101
133
97
54
157
116
115
198
125
176
91
163
119
123
129
119
95
88
108
165
91
177
105
109
59
113
54
88
132
100
140
113
125
161
107
108
81
102
106
141
103
144
122
144
125
108
139
119
117
91
67
133
85
158
102
116
91
74
135
125
151
169
117
101
145
102
78
95
107
93
92
130
139
90
96
90
118
123
93
112
102
113
72
113
95
108
100
114
99
172
108
87
129
105
128
119
59
128
92
176
174
106
148
131
90
86
138
162
94
168
124
144
129
131
99
82
75
96
81
93
127
135
158
139
151
102
104
95
108
88
108
81
103
95
101
90
54
54
128
133
109
54
163
140
126
113
121
103
123
95
106
85
133
95
142
166
95
98
152
103
98
96
125
90
166
146
125
171
54
109
86
141
98
83
108
93
95
144
148
105
145
88
123
138
80
150
177
137
120
54
120
128
95
131
85
143
133
123
135
179
120
104
119
81
121
82
120
74
129
161
149
95
157
127
118
103
114
143
141
95
234
82
121
54
132
141
135
75
61
59
107
125
137
93
100
59
116
116
106
76
82
88
100
98
87
90
128
76
188
105
141
145
82
135
102
83
208
82
54
160
153
145
49
113
89
131
102
87
54
129
120
102
165
119
95
96
133
108
153
136
130
86
107
104
82
101
135
81
127
103
105
135
54
137
77
109
96
105
115
167
115
129
96
127
86
115
177
105
121
97
85
82
164
102
128
108
98
102
92
108
116
74
129
69
103
117
74
118
135
125
102
125
148
110
82
108
96
149
116
135
89
123
125
92
95
169
87
94
108
158
102
128
102
106
77
177
125
169
106
97
144
90
81
85
158
194
133
98
77
135
122
180
98
128
176
144
123
102
129
137
107
104
85
78
117
95
133
139
138
84
158
90
123
90
110
177
76
114
115
143
131
91
190
82
102
142
132
108
80
139
109
98
139
100
122
127
133
127
147
89
148
161
107
125
80
120
106
95
113
76
121
115
115
74
110
128
107
150
106
119
169
112
115
81
172
140
118
125
125
158
125
106
87
76
49
119
128
81
113
82
82
154
104
54
162
123
139
81
81
80
126
85
140
120
143
83
98
118
143
124
114
77
83
98
108
54
102
143
68
80
108
93
94
103
74
150
120
146
114
101
161
70
105
115
49
100
149
95
155
149
42
136
125
54
141
113
108
120
118
127
148
139
158
147
97
103
100
102
124
120
133
130
156
54
95
92
117
103
87
152
54
148
117
79
125
131
129
131
54
95
94
131
137
180
90
148
82
114
129
105
82
142
95
112
100
115
87
115
157
129
120
98
144
113
97
180
82
141
101
110
143
134
136
88
90
54
129
74
135
127
102
168
98
122
103
97
144
119
139
154
82
124
192
102
144
84
151
96
102
106
49
161
103
54
81
135
49
97
147
128
54
133
108
76
80
110
133
134
126
101
125
145
100
77
147
124
95
114
144
128
83
151
95
109
144
89
105
120
148
145
148
172
102
121
157
134
117
109
102
80
113
125
110
113
120
108
120
140
82
115
107
77
147
103
59
133
93
108
74
98
98
81
103
112
125
170
138
149
140
127
109
62
154
138
123
152
94
96
125
106
150
127
135
78
95
109
119
151
109
71
106
133
73
97
54
125
82
85
103
106
102
120
154
147
103
87
132
125
106
119
123
168
100
106
144
103
81
112
105
109
98
108
102
120
106
128
127
135
103
110
108
106
95
124
114
136
128
103
118
94
128
200
106
54
184
124
110
127
92
146
143
138
124
115
146
106
118
103
127
114
59
78
82
143
54
133
67
54
132
131
166
143
126
146
139
147
95
122
107
142
116
83
194
129
114
183
122
103
184
113
74
100
119
117
102
108
130
179
108
133
103
147
98
107
119
152
121
102
145
165
113
59
152
135
74
142
78
111
107
91
137
106
74
54
113
93
145
123
59
74
181
146
95
120
173
147
103
81
126
131
54
110
158
149
160
65
122
158
120
101
132
143
200
111
149
125
82
100
166
139
113
112
124
115
129
102
107
104
142
78
142
135
151
127
129
106
74
98
124
109
119
102
81
114
76
128
105
129
96
152
151
82
54
129
128
54
125
147
82
54
113
90
105
102
145
153
76
98
102
143
199
113
117
124
98
54
118
106
124
139
87
154
95
106
87
134
96
49
134
145
123
125
119
95
111
119
183
152
184
90
143
118
100
165
140
78
76
54
102
102
115
67
59
144
81
116
98
98
77
155
78
65
111
103
94
78
85
134
102
142
114
120
159
151
149
160
102
49
149
138
103
49
103
122
182
145
117
127
92
145
108
160
117
120
98
103
82
121
119
110
128
120
144
118
98
102
128
95
198
120
139
133
102
93
90
123
125
140
54
147
152
166
81
134
162
95
172
84
74
136
125
121
110
129
87
59
150
99
91
133
49
109
121
103
135
158
125
125
124
102
84
115
102
205
87
118
158
120
122
74
78
177
104
98
89
154
113
108
182
95
121
80
54
107
113
115
140
89
111
112
127
87
108
141
135
103
148
114
73
116
102
96
54
119
81
98
54
124
116
139
69
128
102
108
121
82
98
101
102
88
121
85
95
116
164
97
111
143
119
101
82
74
81
98
93
76
127
103
113
158
97
129
54
82
149
77
54
125
67
102
141
128
120
143
99
167
120
116
91
90
102
115
119
107
89
114
132
163
119
112
108
108
160
136
49
86
78
110
90
140
199
77
140
95
78
102
105
127
105
54
78
78
90
141
95
79
101
127
129
126
128
97
133
128
143
54
103
135
98
109
104
91
128
131
158
111
80
95
67
125
106
138
148
116
99
143
123
54
127
91
137
80
68
67
156
102
144
170
102
158
129
108
133
54
49
105
138
90
129
90
179
179
133
97
135
125
144
91
49
156
108
133
133
172
151
205
83
121
134
121
128
127
54
134
122
113
129
59
95
88
145
166
118
88
61
105
148
169
95
110
133
148
89
167
80
145
103
49
81
112
143
159
188
150
109
113
133
91
97
180
98
118
115
92
113
95
95
54
80
100
95
103
153
135
108
98
133
83
84
102
49
105
140
115
95
107
132
102
163
95
59
78
116
144
81
102
106
176
107
80
159
157
105
84
147
142
99
123
90
98
160
125
150
145
173
54
123
84
131
130
127
95
89
133
144
129
154
124
67
102
195
139
175
102
76
128
155
125
67
71
54
148
114
108
106
101
196
119
110
184
130
126
100
128
80
97
139
112
138
49
128
127
91
143
137
88
151
107
102
118
133
137
140
176
123
98
54
98
87
144
138
168
89
98
143
54
126
91
74
124
138
119
95
108
108
93
77
59
148
234
118
107
82
161
104
93
127
159
100
122
160
93
85
54
161
110
136
105
90
104
92
83
125
138
102
122
59
135
109
136
61
128
161
67
151
90
98
145
136
108
123
133
95
135
136
125
103
177
143
119
90
129
129
117
109
87
102
185
177
95
140
49
90
74
138
186
125
129
133
81
143
113
158
115
143
124
131
81
96
147
144
82
98
122
123
176
78
97
179
119
82
124
174
102
113
140
110
133
89
125
118
105
95
145
145
122
78
95
80
92
158
136
134
54
113
123
76
155
113
118
114
131
115
54
174
124
107
113
127
119
54
81
133
157
76
95
81
98
77
197
158
74
54
113
119
133
76
96
91
95
102
97
90
110
54
108
120
120
120
186
81
135
103
77
100
183
108
140
80
130
99
110
115
108
83
148
133
113
86
108
93
127
49
121
107
92
125
152
49
148
128
137
54
114
152
107
177
133
92
103
105
116
97
108
111
111
90
99
127
54
108
77
151
82
82
150
104
154
112
91
73
115
136
92
174
114
137
85
144
179
104
102
110
146
134
129
119
132
95
78
141
143
77
125
174
102
143
90
157
146
154
98
133
54
145
144
113
68
177
151
155
156
94
122
69
98
82
95
169
83
59
130
116
54
127
165
126
91
128
77
94
144
121
113
78
76
102
146
54
122
122
87
69
69
88
59
93
74
121
85
124
107
121
74
119
156
182
61
149
146
143
113
83
108
150
146
93
117
148
97
136
54
106
105
108
87
148
125
118
107
96
122
131
67
98
54
113
125
108
69
139
115
144
121
120
109
54
150
59
122
87
81
92
107
162
97
115
83
78
115
81
116
177
124
134
97
68
96
148
102
108
148
102
76
113
120
105
90
114
117
96
90
110
94
118
104
83
104
143
112
156
145
125
125
144
102
125
87
108
148
113
141
108
119
139
139
161
112
150
131
132
146
104
79
146
132
115
76
83
142
133
80
141
166
162
103
54
108
87
199
140
127
158
112
54
61
100
89
82
74
107
117
106
151
86
98
160
143
160
154
103
90
124
96
153
102
129
81
113
145
124
148
108
148
86
102
97
92
93
102
92
93
124
115
54
108
137
125
104
107
76
109
98
111
94
118
126
113
90
173
123
113
127
131
108
131
124
135
143
169
107
129
91
150
54
186
104
90
95
144
100
128
54
131
113
91
142
82
117
102
77
102
139
49
54
127
178
54
120
105
136
95
107
67
78
143
69
101
91
140
161
155
104
102
102
116
82
137
117
98
98
129
132
99
112
128
91
61
164
87
113
149
107
77
108
123
146
183
143
135
135
102
105
136
102
153
136
145
226
141
72
116
153
93
141
128
135
140
109
127
49
81
186
49
108
82
90
165
113
98
98
168
148
117
97
124
133
59
74
54
161
102
59
95
67
94
139
108
97
144
136
89
108
124
95
177
109
90
131
89
97
108
128
116
97
125
105
49
133
186
96
130
103
76
120
98
117
122
134
102
155
103
89
94
104
94
95
92
113
98
163
87
114
105
62
114
80
126
93
102
107
95
115
106
110
103
92
156
49
74
127
54
125
124
81
54
107
180
144
128
131
108
119
112
86
98
139
136
98
85
118
92
215
124
125
76
129
152
131
155
136
103
92
113
117
102
158
125
100
123
101
159
116
129
68
120
127
104
90
158
84
162
133
128
124
107
120
176
150
153
102
95
100
89
104
49
142
96
93
93
151
90
84
152
49
85
95
113
132
134
82
82
178
133
78
140
144
177
89
113
76
147
76
91
117
104
100
79
98
135
54
127
186
95
140
116
117
108
122
151
135
140
59
143
135
74
124
61
81
98
110
107
95
121
104
109
113
127
74
145
89
97
159
125
109
113
131
102
116
117
140
78
54
103
112
137
113
112
102
120
98
101
95
98
132
148
109
119
148
93
103
103
110
137
108
102
123
85
90
81
87
115
120
115
112
132
54
119
124
104
96
103
145
124
81
128
180
112
138
77
132
119
106
120
73
87
190
118
126
137
182
140
129
131
89
172
142
120
112
95
157
112
125
146
133
108
120
125
96
106
133
74
105
95
179
177
103
125
182
120
109
112
161
137
85
85
59
102
102
100
129
122
160
134
124
138
100
155
137
87
117
105
126
200
74
110
83
174
140
83
125
113
76
101
123
114
177
75
80
99
123
185
204
103
108
54
153
73
102
121
138
165
105
98
132
160
93
130
213
108
78
101
49
108
194
54
122
132
138
111
79
61
170
155
67
87
78
106
152
100
95
161
116
95
157
158
114
112
133
150
102
102
135
155
130
131
149
111
81
100
97
103
70
101
87
102
95
112
113
120
95
93
113
120
160
54
172
95
149
81
112
82
97
177
144
155
188
98
129
109
128
107
148
143
99
67
139
118
113
74
132
130
150
102
112
136
49
102
86
59
140
148
124
95
115
104
136
123
131
120
98
77
153
180
81
141
54
156
105
90
138
129
156
54
102
113
103
147
109
164
130
108
116
172
135
157
157
54
105
95
128
177
115
118
118
141
135
95
143
118
59
138
82
54
94
144
125
166
108
85
74
133
105
85
101
127
199
125
165
164
104
135
91
87
113
144
127
108
121
152
54
107
163
154
49
74
119
93
175
116
108
148
124
162
148
112
74
98
118
102
108
76
113
108
107
131
76
177
102
125
156
146
95
152
110
121
107
200
87
113
105
86
144
131
91
162
116
129
135
161
54
172
113
131
115
95
194
179
120
108
108
87
140
164
146
133
91
74
78
125
95
89
164
92
108
98
98
77
76
112
101
98
128
148
132
157
144
105
145
113
112
114
90
180
81
92
100
121
98
124
87
156
93
153
182
130
76
146
92
147
95
103
145
94
108
96
94
72
90
159
152
113
59
103
115
154
144
129
144
95
103
88
116
144
124
54
76
97
181
133
158
105
130
108
98
97
59
65
104
109
128
130
93
145
125
78
141
90
126
95
78
145
120
123
132
141
153
145
160
153
129
77
115
103
100
128
116
102
125
177
99
131
129
82
74
102
78
82
125
128
98
158
109
92
119
99
95
93
101
130
81
119
84
148
89
91
111
129
138
103
54
125
155
77
101
155
115
68
186
134
89
90
105
78
112
54
122
143
117
102
165
93
146
97
114
78
118
139
146
124
49
108
129
91
102
133
94
91
103
134
145
152
142
84
81
85
156
78
121
76
111
99
80
95
165
96
87
82
54
146
173
84
157
141
109
119
172
105
108
115
111
54
144
117
153
102
108
150
77
155
118
145
150
127
159
158
144
129
191
90
59
102
113
129
100
104
49
54
103
122
146
108
109
149
113
180
54
119
129
99
67
177
136
92
150
79
120
135
134
113
115
155
101
109
112
135
83
138
118
110
99
102
142
115
109
105
133
129
99
115
100
102
100
100
190
133
120
100
140
95
125
118
113
148
177
77
147
113
82
95
114
107
82
77
77
92
87
140
108
177
94
113
152
90
142
146
139
112
108
90
120
128
146
143
82
127
78
69
98
112
101
102
158
139
167
123
76
113
141
147
117
95
69
163
123
146
90
98
54
116
113
105
148
115
144
110
106
83
119
97
117
123
97
132
141
118
98
101
126
165
152
112
123
110
87
101
128
49
105
113
74
95
126
130
120
142
103
78
173
59
118
120
124
129
88
102
124
78
72
114
88
115
144
125
118
146
95
165
108
129
69
120
87
120
54
129
141
80
144
59
125
110
77
104
138
80
86
104
101
151
120
133
118
104
117
134
102
127
141
107
141
98
120
98
105
110
131
143
108
128
86
139
159
134
118
150
166
130
100
97
129
118
133
141
94
136
83
101
165
105
88
132
112
98
106
132
90
143
161
102
118
169
49
87
103
115
97
155
147
97
88
163
148
93
125
110
102
95
104
129
82
178
103
98
122
138
101
130
110
54
101
156
115
150
98
80
112
98
102
101
96
99
128
141
152
81
108
130
129
114
100
112
122
110
77
132
100
123
164
90
124
133
108
81
136
140
109
108
129
115
124
133
76
90
96
212
102
91
150
131
105
135
120
234
49
167
54
54
158
93
160
97
129
127
143
93
131
111
163
106
125
95
98
97
76
164
90
110
123
112
103
76
85
165
49
54
173
102
141
93
69
134
133
124
82
102
127
49
87
162
126
155
88
95
67
94
123
136
165
101
157
104
177
93
142
80
139
160
146
81
134
54
59
134
113
143
136
115
115
54
68
112
75
117
145
138
104
155
107
125
143
78
118
74
129
54
127
78
157
103
107
129
119
188
91
124
94
140
104
81
127
170
144
54
131
87
128
173
107
132
103
128
74
169
108
132
140
109
141
98
126
118
103
117
104
122
124
148
180
84
106
108
118
67
85
108
123
125
193
128
102
133
91
125
93
116
54
117
100
154
115
111
102
88
92
105
138
98
82
117
153
74
158
74
123
77
200
160
138
54
119
104
155
96
69
125
122
138
140
93
54
101
97
112
107
200
74
140
200
49
149
109
98
144
180
110
114
61
121
136
112
49
133
133
77
119
125
98
130
103
177
132
118
87
103
134
120
74
102
98
161
128
103
126
54
78
54
116
170
107
76
130
49
116
126
83
76
139
115
102
78
93
102
90
144
126
106
121
98
115
108
177
125
98
96
108
85
104
138
111
81
109
178
148
98
125
91
69
49
126
129
106
162
97
83
114
113
82
115
116
116
74
122
103
97
54
123
157
112
128
101
152
106
112
114
95
116
97
113
133
102
90
126
154
135
108
94
77
84
147
117
96
145
102
54
125
120
100
77
189
125
102
117
76
142
95
175
133
102
130
125
166
97
106
121
80
77
91
103
86
95
85
76
120
104
83
98
78
149
76
82
148
105
134
108
122
113
177
94
121
177
49
147
160
91
95
74
94
89
135
213
134
80
130
85
102
59
95
140
172
145
90
69
108
120
122
126
114
134
120
154
147
114
136
87
104
122
49
139
155
78
141
110
145
69
196
106
74
108
119
117
131
144
82
113
110
95
102
93
112
161
54
54
145
141
102
105
135
95
98
128
81
74
202
115
150
144
170
132
114
179
97
165
128
103
97
160
108
108
103
154
139
104
89
95
150
69
61
135
94
98
104
54
172
98
88
141
111
102
134
102
117
78
148
140
126
96
49
113
86
163
69
81
118
115
90
118
113
118
90
98
142
125
96
127
186
118
133
59
127
164
103
155
95
151
114
102
102
81
127
134
168
90
98
103
115
125
156
129
108
108
95
113
67
173
148
103
153
61
126
118
165
84
49
90
127
128
87
81
128
128
95
124
84
117
113
142
152
94
94
144
98
134
106
125
156
126
132
148
112
105
145
116
127
142
148
154
93
107
103
68
98
54
67
97
54
115
122
108
112
139
83
95
121
124
95
118
98
54
98
96
147
122
76
97
104
54
78
105
129
93
148
107
98
61
118
98
129
110
102
61
76
129
98
130
49
123
106
135
81
97
77
185
61
81
67
117
94
108
118
73
98
137
98
81
106
99
108
144
119
77
78
153
125
134
161
134
101
91
79
49
113
128
128
90
98
134
142
148
163
134
171
122
93
105
112
105
169
93
189
147
95
131
119
143
143
97
102
122
106
134
105
61
103
106
145
129
170
135
124
158
85
119
54
123
116
108
145
132
54
135
54
159
54
130
108
105
167
122
119
105
104
78
49
159
194
146
98
69
145
80
94
158
120
128
172
83
81
126
110
61
54
153
98
167
74
215
150
98
85
96
111
145
87
100
96
123
99
159
112
127
68
112
131
96
162
96
87
131
121
118
103
118
96
96
162
133
136
68
152
103
93
93
181
54
79
84
148
102
149
172
165
93
116
143
98
74
122
91
98
105
98
127
165
127
94
81
114
100
94
142
157
133
98
145
148
126
108
135
157
128
148
125
170
78
121
194
135
98
120
107
54
154
78
95
86
127
96
118
125
103
136
91
98
143
143
159
125
78
141
124
156
139
165
127
67
106
95
135
110
135
94
115
124
143
162
74
101
106
105
127
127
128
123
109
132
172
158
130
106
102
95
147
107
123
103
98
149
49
131
128
143
108
180
151
108
99
79
104
83
119
126
113
139
160
111
82
98
117
67
139
141
95
108
98
114
95
49
116
139
159
121
146
126
94
108
129
106
98
49
97
81
80
138
116
78
118
103
97
103
164
180
133
103
119
88
146
67
145
131
92
149
49
123
78
159
59
103
99
102
129
158
102
93
131
123
87
98
108
118
68
132
157
107
118
104
145
98
105
85
153
117
127
157
113
90
191
122
120
122
110
145
126
78
78
105
90
149
78
49
67
140
54
102
95
127
141
96
145
159
96
157
113
85
111
127
119
95
150
95
112
81
54
98
67
114
125
119
98
135
79
95
128
94
97
93
149
94
98
92
97
108
95
108
122
82
114
97
147
129
104
113
75
170
98
138
121
83
95
93
49
76
107
165
80
105
114
108
125
70
82
82
147
98
59
188
125
164
78
110
176
113
98
194
99
111
82
131
113
131
187
125
114
130
106
186
138
125
112
95
117
170
108
82
158
105
143
49
127
73
125
103
120
127
108
126
118
115
164
115
125
167
105
160
103
148
105
108
127
106
59
97
54
54
68
67
63
120
147
95
103
145
113
167
61
162
119
135
98
135
114
128
127
97
95
132
105
95
164
149
77
76
119
133
110
105
148
158
149
117
100
158
104
138
171
90
108
133
139
95
89
102
113
116
117
95
114
126
148
92
120
81
143
140
166
157
78
127
129
108
82
127
90
138
163
108
82
168
170
76
105
110
123
90
136
113
80
87
93
121
125
81
148
120
108
149
88
123
113
139
133
153
110
102
98
97
54
88
80
106
131
133
116
83
148
87
124
169
81
149
79
54
105
146
95
135
49
54
106
153
93
108
108
157
163
116
156
171
103
87
49
94
148
113
99
129
105
107
95
118
143
118
91
126
83
87
116
100
127
191
81
132
109
125
84
140
76
112
87
117
133
93
111
116
85
103
105
140
85
125
142
61
119
106
81
95
54
83
127
97
106
149
77
69
81
102
102
102
189
125
153
93
89
160
98
78
94
93
108
116
135
120
157
120
158
74
87
103
133
113
103
91
67
99
138
131
128
125
163
80
110
92
129
98
77
123
101
151
101
113
77
125
49
108
113
115
81
76
81
95
73
107
99
95
100
95
101
131
162
129
104
153
59
100
110
123
135
105
105
107
129
100
111
140
175
112
85
54
107
129
78
113
187
141
102
153
157
103
83
108
142
88
142
134
120
105
148
103
107
101
95
132
123
106
124
152
109
102
197
87
102
102
121
139
143
120
95
108
120
132
119
127
95
134
126
93
54
98
97
92
107
186
142
138
156
69
128
115
54
177
102
104
163
113
151
101
87
139
93
95
133
105
116
127
96
97
118
112
108
113
107
81
103
148
49
143
173
131
102
95
107
49
128
113
104
137
108
108
81
81
118
135
95
148
154
172
91
159
77
141
148
143
128
138
133
111
109
93
74
111
105
158
141
83
86
105
166
155
115
160
165
94
105
93
155
147
133
150
108
169
118
145
122
61
110
69
97
110
63
138
131
77
100
148
93
109
54
128
77
54
108
126
128
129
92
182
148
110
108
77
138
54
201
134
125
148
157
118
148
154
103
102
133
146
113
117
113
114
129
108
96
49
125
143
135
106
111
74
144
93
105
95
98
95
95
92
108
76
49
175
127
80
124
130
125
139
98
165
125
74
96
93
91
102
81
100
113
103
123
125
127
97
151
107
177
98
140
108
96
117
97
131
85
84
83
104
105
116
96
105
149
119
131
96
128
149
82
84
165
131
195
78
107
104
54
131
95
97
96
101
102
93
93
118
54
120
128
113
127
108
101
82
103
54
74
83
157
59
101
126
127
108
95
117
144
89
128
146
149
133
49
114
143
123
144
127
98
85
146
77
102
91
101
54
158
100
150
95
114
161
80
103
144
119
103
135
76
90
102
85
104
102
107
163
115
147
126
77
108
154
135
54
76
107
153
119
141
113
129
106
158
114
105
182
127
145
93
128
78
139
103
161
124
133
121
99
161
54
102
108
54
140
104
49
59
116
106
89
129
87
155
110
126
98
168
160
102
139
97
122
84
128
81
90
113
127
54
74
59
138
215
100
144
42
87
83
101
95
127
85
102
146
102
94
106
54
133
74
83
81
164
78
104
113
134
207
130
154
133
116
104
177
118
107
108
115
144
87
112
180
133
91
131
102
134
88
118
103
140
125
108
107
141
121
122
138
158
77
177
128
123
110
169
54
93
108
85
87
54
80
95
119
118
120
103
109
137
49
100
94
83
141
131
118
137
76
102
147
73
139
95
139
102
159
97
133
112
117
128
120
75
78
74
84
148
169
134
119
163
90
127
117
149
103
113
148
76
118
54
92
121
126
148
99
118
118
146
105
76
109
136
123
125
98
102
90
98
82
111
114
98
88
89
90
83
102
113
139
139
105
131
108
186
131
127
76
108
106
54
86
128
112
101
105
90
140
82
74
136
54
54
76
98
125
128
130
49
122
133
101
118
74
113
146
158
112
122
54
109
119
83
90
121
103
161
108
136
102
90
128
110
54
119
131
102
115
105
164
104
136
141
81
110
113
134
108
128
108
136
135
80
122
71
113
150
49
102
90
143
84
106
114
105
105
85
93
85
112
129
148
139
133
112
77
120
138
127
91
76
93
151
112
140
96
119
123
54
121
133
106
122
95
85
176
137
152
146
130
115
104
113
96
92
68
138
94
108
83
115
103
80
107
103
157
149
148
161
108
93
148
93
138
125
123
87
125
117
97
90
102
106
54
100
98
108
120
79
143
91
107
104
143
101
141
141
127
133
115
130
128
162
143
111
102
74
146
54
81
73
134
131
110
108
98
125
68
152
109
123
115
108
140
94
161
54
54
125
131
74
105
102
134
119
166
102
130
78
139
119
100
76
164
95
91
111
83
99
159
107
140
49
109
107
87
54
103
87
116
84
101
111
96
90
238
148
105
106
147
54
103
102
97
113
109
96
129
85
123
134
144
79
109
104
95
98
144
123
129
92
90
108
54
54
84
127
146
131
102
81
113
85
157
102
103
81
127
172
153
95
68
87
150
144
97
143
123
119
141
153
80
78
108
114
133
95
131
147
97
123
157
89
74
119
54
131
128
102
117
124
87
103
113
146
139
144
116
95
179
105
115
118
78
133
134
149
108
83
119
122
94
148
108
135
122
135
132
142
130
168
140
90
95
96
82
153
49
54
140
104
161
108
87
101
111
89
143
139
102
115
108
139
104
113
148
45
119
82
93
179
165
113
54
57
105
121
118
69
113
119
141
82
158
108
123
59
102
54
62
49
141
149
128
54
96
118
175
103
138
110
145
95
127
131
74
49
67
69
127
115
140
54
120
77
134
162
147
126
124
124
87
89
108
117
147
108
78
120
161
83
178
89
123
129
101
106
67
127
131
132
91
134
139
140
54
115
93
122
174
144
98
136
118
177
165
131
161
125
202
116
76
87
59
95
98
126
127
81
151
113
77
145
81
143
96
90
90
170
91
101
104
108
145
196
119
115
78
99
108
113
87
115
168
142
178
135
139
122
79
128
183
122
74
54
128
126
131
126
112
109
98
100
151
109
70
87
102
96
59
127
96
179
93
105
86
124
123
182
118
102
180
98
98
139
80
130
114
183
90
116
102
133
132
137
131
102
113
68
142
145
54
121
112
141
111
122
117
117
107
96
113
140
115
126
182
148
132
133
91
122
59
107
139
114
100
144
148
178
152
100
121
76
108
140
106
92
54
117
98
102
87
106
123
110
163
94
119
77
96
112
97
81
81
145
137
169
126
128
106
94
134
95
98
103
105
108
138
74
91
102
82
131
109
95
99
122
54
103
148
114
106
95
167
127
108
98
65
144
119
92
89
148
108
105
181
112
143
96
95
74
98
124
112
110
139
95
133
147
135
147
108
82
80
54
137
147
54
59
83
91
160
86
165
106
106
90
127
124
81
131
108
98
113
54
194
76
108
119
76
133
109
80
96
108
73
81
135
67
105
103
93
86
170
54
90
82
110
103
164
132
110
82
139
125
154
127
98
158
104
54
120
100
117
93
123
142
148
85
78
164
100
54
90
105
108
114
98
125
65
107
124
136
120
171
122
101
54
161
49
81
74
49
131
92
104
97
108
144
124
102
142
130
120
129
176
87
81
118
121
76
134
137
120
130
125
145
123
157
93
171
93
69
146
118
107
67
194
120
102
93
81
103
120
108
115
88
119
139
194
139
114
120
157
167
138
158
112
200
100
73
156
144
45
87
49
121
103
87
127
161
116
104
110
98
126
111
108
128
122
121
196
140
133
126
150
79
117
131
102
126
103
133
98
115
108
98
98
81
106
76
80
95
148
95
101
118
136
95
115
141
140
114
54
87
180
125
84
135
125
128
216
137
135
148
98
169
103
128
59
93
74
102
103
160
103
103
108
125
110
122
158
54
106
95
125
135
151
127
122
81
103
120
144
132
114
116
126
85
133
133
155
117
123
138
101
133
80
68
133
128
42
140
61
106
112
73
123
74
102
59
94
132
105
146
145
127
62
113
108
68
78
147
95
59
125
80
49
112
96
90
148
54
118
85
107
104
115
108
121
108
108
106
125
137
123
129
108
54
113
147
96
105
133
108
158
118
67
101
123
125
106
102
108
144
83
141
81
128
118
91
93
154
128
49
95
98
132
82
78
102
178
99
83
125
158
129
97
116
93
127
177
140
132
151
123
54
67
104
101
173
135
172
103
74
78
102
102
95
142
102
151
128
167
146
144
168
147
69
160
127
169
142
146
105
59
140
90
105
113
104
125
87
140
116
143
115
95
130
148
104
108
148
80
74
112
112
82
129
105
98
141
113
90
116
77
129
149
123
83
88
90
74
102
94
147
129
87
78
106
95
113
103
132
119
120
98
120
49
93
109
102
152
78
101
148
82
123
85
98
107
74
152
99
106
82
54
96
113
96
144
82
96
130
116
177
118
108
150
129
141
162
106
122
145
54
132
102
109
131
162
106
144
112
95
96
98
54
90
119
86
96
153
100
127
95
133
131
95
105
164
74
158
78
115
54
100
96
85
95
91
101
123
120
90
139
102
112
116
115
98
141
98
95
102
144
115
108
119
105
100
103
121
74
156
135
141
132
133
111
95
140
135
189
77
151
103
77
141
83
92
125
140
54
113
82
182
91
113
120
149
138
141
163
136
77
105
109
135
161
101
102
103
144
115
127
120
106
87
133
77
155
125
102
158
142
87
89
134
86
61
134
112
139
104
113
143
54
125
173
107
45
155
158
104
54
131
116
124
179
124
136
83
159
97
131
95
54
122
116
81
65
87
118
144
139
127
49
119
173
107
65
127
95
119
161
98
119
140
113
118
153
135
103
108
151
101
110
129
148
94
120
106
81
102
76
111
121
149
107
100
127
140
165
110
129
113
92
54
132
98
74
76
116
159
108
95
107
157
122
128
138
54
77
116
132
82
74
127
110
144
158
106
113
115
123
98
149
151
105
143
107
120
120
113
103
95
125
103
139
161
93
119
112
127
110
102
96
97
105
104
182
122
113
129
100
76
123
49
165
142
154
130
80
107
115
121
138
159
139
100
143
139
90
143
103
110
101
108
160
54
113
133
155
108
200
98
175
143
143
90
102
156
106
175
124
136
70
123
77
177
118
118
90
117
102
112
133
139
49
100
121
93
145
104
100
143
111
130
54
171
142
144
135
113
95
125
148
143
107
147
122
127
105
110
149
145
129
129
144
129
141
142
119
112
81
153
107
90
103
130
112
106
61
110
120
134
127
132
132
92
154
107
125
120
91
118
105
118
123
105
87
74
77
83
179
177
144
115
108
81
156
118
117
139
105
123
111
100
115
121
102
131
137
74
85
108
122
107
144
157
96
127
108
117
109
114
69
106
139
77
129
84
125
121
182
124
94
117
174
134
105
54
74
163
139
81
109
125
113
148
129
132
115
79
180
150
111
141
149
116
89
190
115
125
98
123
97
109
133
156
110
125
91
83
119
165
144
97
102
109
129
125
83
54
54
90
140
157
95
158
116
151
111
140
81
111
87
145
131
102
99
134
144
102
108
148
103
54
106
133
96
150
148
108
128
142
112
114
103
116
117
161
182
95
161
105
156
93
54
137
147
178
129
128
81
128
195
81
81
95
129
88
78
124
105
81
127
124
89
100
112
101
138
54
105
225
95
147
133
135
96
107
93
122
127
95
120
49
87
128
69
133
148
104
108
49
117
102
146
118
91
132
180
123
95
102
115
141
118
103
68
115
61
115
147
90
59
173
122
118
54
162
148
113
102
95
137
140
107
93
140
76
103
89
49
128
164
151
120
103
97
107
122
123
160
118
99
95
82
103
119
87
151
149
121
67
89
149
93
90
135
100
158
137
95
105
94
133
113
90
73
90
97
125
108
98
84
121
81
139
59
102
74
133
118
106
83
124
94
148
131
149
54
179
133
89
149
151
122
127
126
87
87
145
125
142
129
151
96
77
130
127
132
139
122
91
82
98
102
161
123
90
131
128
147
113
144
133
105
131
113
83
120
95
134
110
118
68
110
98
131
113
145
93
75
103
138
87
125
154
59
146
54
152
134
126
108
151
106
150
118
91
157
121
117
207
132
145
129
91
96
166
130
85
106
168
99
122
93
108
93
54
147
102
175
109
133
68
113
90
111
133
166
92
157
81
96
49
127
136
85
179
87
148
114
167
107
146
93
158
87
157
98
111
89
95
135
54
132
144
143
166
97
159
108
133
161
112
127
89
61
54
96
169
145
140
148
116
95
99
144
145
137
150
137
113
82
120
128
95
113
105
132
139
163
61
119
95
114
126
103
108
74
125
74
148
170
102
98
150
78
89
119
148
136
167
165
82
126
145
108
110
104
108
108
87
97
110
145
108
59
113
120
81
160
105
124
67
136
98
102
127
54
150
114
77
116
120
111
92
78
131
74
161
151
77
98
110
159
104
87
110
107
124
135
120
125
111
147
143
141
101
160
180
99
67
135
126
135
200
98
96
127
126
165
114
101
143
102
140
95
91
82
54
91
86
94
90
146
98
113
76
104
144
54
112
54
143
183
133
122
111
87
128
122
116
98
49
134
87
133
97
133
125
153
87
144
156
54
138
107
89
118
116
168
81
142
111
145
91
137
77
125
90
109
83
146
102
95
167
118
98
74
107
102
122
102
128
138
49
108
132
125
162
102
87
90
79
100
191
108
102
137
134
69
91
95
126
153
102
129
146
122
95
122
98
115
98
158
108
103
84
106
108
109
117
164
130
115
102
118
167
120
76
95
135
142
129
126
146
111
143
117
127
113
108
98
157
194
139
149
90
49
78
54
108
83
49
107
113
165
70
129
116
108
131
94
149
141
116
112
95
109
130
61
81
114
103
113
98
107
67
134
149
100
134
85
130
107
128
144
182
59
128
148
106
137
131
108
80
125
148
103
121
113
125
118
120
74
133
167
128
98
91
101
108
109
130
133
103
116
114
98
96
133
132
126
88
140
130
158
89
54
100
49
118
97
122
139
131
74
79
95
108
77
92
138
148
108
137
155
111
135
95
135
97
128
90
162
163
113
133
114
106
102
94
95
125
54
133
102
122
139
97
93
112
140
96
129
124
151
114
90
98
148
158
96
104
96
127
103
133
135
114
180
171
69
111
109
146
110
91
103
95
200
131
98
121
164
151
76
91
81
113
138
148
133
84
133
95
151
102
142
125
102
108
119
97
124
135
99
113
76
106
114
105
108
112
95
109
147
95
77
147
105
54
112
170
153
95
85
138
96
82
128
140
106
103
116
98
102
103
129
110
166
118
143
133
110
114
130
108
119
93
117
128
90
103
102
98
87
108
126
154
95
108
127
119
106
120
89
162
96
127
103
119
147
114
109
151
119
108
152
109
117
108
76
137
143
93
165
95
98
77
113
105
113
80
95
82
118
96
141
130
143
123
68
124
135
110
61
105
103
96
103
116
140
112
95
140
111
149
106
101
108
97
114
137
77
108
128
73
174
147
76
74
151
137
181
99
118
69
186
145
98
95
146
157
102
148
61
59
49
148
73
126
115
142
89
125
54
115
137
90
80
128
96
81
104
54
85
158
96
95
54
164
54
128
88
92
54
99
182
114
106
92
116
113
149
107
124
140
102
131
104
139
119
113
97
81
95
122
99
115
96
130
115
108
99
125
147
146
134
163
102
98
191
127
107
129
128
114
109
140
54
81
146
169
96
177
77
132
120
89
103
112
162
153
106
102
67
118
73
129
177
121
136
101
96
109
113
98
171
135
177
78
54
72
100
116
130
74
108
83
93
59
157
54
120
97
144
122
105
95
114
157
99
121
165
133
95
98
103
134
96
126
92
127
136
125
76
108
163
148
129
103
81
168
108
92
126
84
134
147
113
114
67
163
105
169
97
83
127
153
114
90
143
149
128
98
134
181
116
92
135
49
130
93
150
81
131
67
158
115
112
95
143
115
141
196
148
116
110
104
92
86
101
85
128
81
95
106
111
116
129
137
92
112
73
119
78
107
108
187
78
102
113
59
102
112
115
116
83
179
112
139
110
54
90
96
164
59
146
149
54
83
94
81
125
168
140
102
135
105
135
128
143
129
102
115
115
149
125
81
145
115
140
104
132
111
93
163
78
102
118
81
96
184
150
152
99
143
146
131
114
97
108
157
112
115
94
49
59
93
102
138
85
129
87
143
85
101
115
135
109
139
122
108
140
110
81
145
141
116
81
129
110
125
156
141
79
127
108
151
82
95
131
107
110
82
93
102
98
108
118
93
74
95
86
113
98
114
155
76
107
102
100
105
98
133
87
118
102
59
126
156
102
107
102
89
125
123
150
121
131
117
74
132
125
91
125
80
54
181
95
95
152
67
83
103
120
159
100
160
111
154
59
128
127
77
144
105
198
108
110
123
67
78
108
97
148
96
187
121
122
77
98
142
148
155
98
102
113
144
140
102
107
92
59
95
103
81
147
93
119
134
61
49
83
104
107
97
54
106
112
107
103
79
97
115
95
96
133
177
87
113
132
182
144
122
59
115
96
147
113
138
78
93
153
138
127
125
103
87
130
77
77
96
94
97
81
54
111
107
138
59
141
96
108
59
98
126
102
170
150
125
165
143
137
123
118
110
131
101
129
176
93
107
74
85
94
142
141
87
108
95
133
77
112
141
84
81
149
101
145
128
85
141
114
190
144
76
81
172
169
133
143
118
115
129
146
116
120
104
137
119
108
154
178
131
115
102
130
82
54
98
110
116
123
104
121
144
180
81
101
103
148
85
114
107
86
166
109
122
130
98
111
154
112
111
114
98
196
95
96
128
135
105
97
169
133
118
161
111
116
103
160
144
82
54
149
95
100
102
138
114
163
135
123
102
85
96
177
102
167
138
87
98
82
156
103
101
80
99
108
120
127
59
90
118
95
84
78
145
156
118
122
69
107
78
103
130
143
165
177
121
126
115
102
81
173
144
147
148
96
114
97
113
67
104
74
89
133
120
100
121
149
124
69
74
54
155
134
119
98
108
135
183
108
84
94
125
148
123
112
124
96
194
160
95
90
96
108
154
148
80
78
133
143
96
81
103
87
125
149
107
97
71
87
90
159
143
73
62
125
109
157
74
169
150
97
144
111
112
85
93
144
81
174
104
96
113
122
65
54
86
114
132
165
113
157
49
93
136
156
90
100
125
116
68
118
81
108
106
146
131
108
95
103
161
130
97
107
76
112
95
96
102
133
54
202
114
93
156
92
98
130
107
89
149
74
161
102
92
113
116
54
74
107
106
126
157
125
49
89
155
102
83
99
177
178
82
145
99
90
139
146
95
133
122
120
77
106
161
77
127
105
120
131
179
95
115
146
91
102
92
114
158
175
83
85
155
137
108
151
135
69
164
158
84
67
159
54
96
77
91
176
74
68
113
95
142
77
95
139
96
137
155
81
92
100
59
135
98
68
54
106
90
134
106
166
131
54
116
125
145
165
90
139
157
98
67
125
77
140
49
141
67
102
144
83
98
122
165
139
147
150
111
174
68
113
117
108
125
107
107
148
127
146
102
123
92
116
104
101
102
131
161
54
83
128
112
78
93
107
129
87
135
115
92
110
120
115
85
128
77
106
95
86
118
132
132
102
96
140
136
125
115
74
112
125
124
82
107
93
90
101
88
49
139
159
157
111
109
114
164
153
134
99
54
186
87
87
102
100
139
113
96
141
103
105
105
108
83
129
95
109
94
98
123
148
143
102
122
141
68
132
104
125
150
109
128
123
80
101
91
85
140
180
135
131
94
139
91
131
113
89
109
81
169
150
109
121
148
69
112
96
75
117
54
98
102
115
54
99
128
146
86
119
171
102
54
90
109
102
67
76
139
54
123
137
144
131
107
131
129
96
84
100
116
107
49
113
124
135
92
120
102
57
148
131
188
104
86
140
100
144
100
102
98
108
107
98
90
141
120
144
147
177
125
165
127
76
129
99
82
108
102
82
54
87
67
91
158
145
107
139
112
125
102
165
123
54
128
108
49
200
98
100
125
75
100
163
54
98
102
82
133
105
158
120
103
139
122
108
82
107
187
129
158
93
157
114
156
133
141
78
108
79
49
100
188
128
109
111
102
145
105
133
125
83
138
143
83
135
169
84
124
98
85
84
113
136
97
105
128
76
125
160
101
119
110
126
129
116
111
93
124
125
162
76
78
87
113
143
148
82
68
141
87
125
77
113
133
101
118
93
131
81
140
137
103
98
91
103
103
83
136
114
113
80
89
147
124
81
140
187
135
74
149
82
143
112
94
72
74
59
103
125
81
133
143
49
124
115
154
125
109
127
87
137
96
104
135
76
146
91
125
135
113
117
135
54
49
98
128
140
106
54
108
103
101
153
158
113
76
131
186
140
95
95
170
125
106
156
141
105
54
164
112
95
115
112
105
108
133
91
142
121
138
132
69
149
135
84
152
112
104
137
116
102
157
157
131
109
54
144
96
95
128
83
106
90
96
84
115
95
104
125
112
108
143
121
123
146
95
119
106
125
101
100
160
155
116
100
147
95
73
131
98
108
108
49
95
102
93
67
120
122
164
150
91
147
108
74
113
77
109
116
165
137
110
90
54
126
78
166
113
95
91
59
140
101
91
54
153
96
101
131
98
49
54
78
125
148
132
95
116
130
142
101
88
108
104
182
87
82
81
114
68
102
155
61
69
93
144
74
127
131
116
108
122
90
54
145
90
124
125
113
108
157
91
141
54
120
105
121
125
126
188
98
118
151
142
156
152
129
94
135
117
99
118
115
112
110
80
102
118
144
96
191
54
118
107
115
122
125
150
133
137
93
109
107
91
205
98
107
129
148
105
109
96
91
122
91
108
125
103
139
119
148
104
128
105
98
90
121
49
120
113
54
126
105
168
82
109
92
83
129
162
113
112
167
95
96
142
144
98
107
152
135
133
82
126
110
68
147
85
126
122
122
160
78
95
126
95
83
156
111
115
101
103
125
112
119
131
118
120
54
152
126
108
54
100
98
73
140
135
54
153
107
165
65
86
81
49
87
88
98
100
103
87
144
95
103
179
102
162
129
127
139
130
120
85
108
141
120
102
82
112
103
154
91
95
83
124
118
81
133
85
148
151
90
107
74
77
97
110
95
95
140
162
85
185
117
125
122
108
98
172
112
158
77
158
85
148
93
121
118
92
120
148
91
81
108
102
131
122
115
135
118
108
112
138
104
128
88
117
113
115
75
95
88
82
107
135
54
125
125
76
124
163
148
81
77
102
100
98
115
98
113
102
114
90
128
128
95
154
160
83
109
152
106
101
143
131
126
128
113
54
157
128
128
81
141
116
161
125
164
125
139
95
93
105
116
145
93
162
61
124
95
49
146
116
133
116
189
128
113
161
93
148
76
147
93
108
94
115
140
95
116
153
120
181
73
106
108
67
100
114
96
125
112
107
118
102
114
120
98
148
93
85
113
169
104
119
131
80
111
120
49
108
102
124
129
70
59
148
102
116
92
108
117
108
102
112
74
135
127
124
135
103
59
59
139
146
93
124
54
125
85
81
122
111
123
143
131
49
196
115
77
107
147
108
134
77
115
136
123
122
152
85
100
54
107
133
144
125
115
102
104
76
125
99
113
91
108
115
80
136
147
128
98
120
194
103
54
110
136
126
107
103
121
168
99
114
99
150
107
156
106
148
81
71
127
128
76
88
133
54
133
49
138
81
177
183
124
101
115
95
141
107
143
139
128
112
114
115
95
177
118
73
160
68
89
113
162
135
113
117
103
95
112
90
108
82
95
82
108
61
101
83
127
54
108
158
107
124
103
87
87
90
137
158
146
113
156
67
102
173
101
96
112
90
129
118
174
86
129
105
131
101
118
127
94
98
125
148
139
67
97
128
130
154
156
101
125
121
81
76
119
49
106
54
124
77
100
78
112
154
152
124
146
153
133
155
54
128
138
148
81
110
54
74
134
106
54
86
54
145
87
81
95
144
78
126
96
145
123
98
98
134
129
54
67
105
76
54
102
137
96
102
159
94
122
102
138
154
113
90
160
168
105
104
128
128
111
103
97
108
83
107
76
101
190
148
49
148
106
100
172
108
128
126
102
93
148
78
97
72
101
180
104
129
102
136
151
104
110
130
150
110
149
143
93
105
123
127
102
111
117
143
113
97
127
108
96
95
169
133
130
135
122
107
101
165
82
131
77
106
146
110
134
122
54
119
111
127
165
101
121
95
165
117
59
102
140
133
157
125
148
119
137
165
120
125
108
160
108
134
89
115
177
72
111
119
102
120
59
49
104
140
95
115
113
49
91
109
197
90
96
125
100
98
172
119
74
108
99
103
96
148
152
132
141
109
158
130
132
125
104
91
87
133
108
109
129
59
121
90
129
91
98
123
104
113
124
124
130
67
140
132
142
152
122
103
129
122
87
116
93
164
101
132
145
102
172
95
114
89
165
131
103
115
74
104
123
138
97
143
93
131
103
177
158
115
104
123
129
152
146
177
126
118
173
107
129
143
113
132
108
100
92
97
108
172
160
135
104
159
119
127
49
138
91
150
169
142
134
130
74
83
97
113
171
77
95
121
112
102
95
112
94
101
104
116
54
96
136
119
144
83
123
107
95
92
76
150
155
93
93
68
131
108
98
149
76
54
117
93
102
98
159
161
138
91
81
95
67
83
103
149
156
105
119
157
77
104
91
59
126
157
144
118
54
107
125
134
143
94
178
100
140
125
85
113
111
81
103
102
54
98
129
187
88
133
129
135
149
127
135
85
110
146
140
108
191
98
102
159
139
92
139
98
107
117
142
131
105
127
108
125
118
103
108
108
102
203
148
88
122
54
123
82
154
92
85
54
113
90
144
151
54
105
104
143
113
151
87
90
106
123
54
101
124
148
79
140
102
108
107
132
113
147
102
137
128
94
161
177
122
120
128
146
93
79
54
105
141
114
161
114
99
171
93
145
68
139
146
54
131
95
125
81
117
148
127
123
133
120
89
96
83
128
118
130
49
147
114
85
119
108
133
147
78
143
108
133
115
145
179
81
49
115
81
102
132
140
129
160
102
143
90
105
141
175
123
54
102
109
133
93
76
103
114
93
131
155
113
106
126
102
95
99
97
74
159
81
128
139
130
110
129
106
93
83
105
139
54
118
128
81
124
108
107
61
147
69
146
124
54
148
87
140
152
95
134
168
152
171
97
113
122
83
106
114
150
146
77
98
112
110
115
154
102
116
59
129
156
81
42
158
132
117
125
57
118
101
137
144
116
110
155
135
88
78
136
116
106
96
113
99
106
146
147
145
156
94
80
87
112
113
117
149
112
83
125
107
143
153
117
127
110
124
54
145
115
120
186
108
74
128
76
124
95
125
128
146
159
126
87
97
104
54
121
67
145
76
100
113
107
156
105
139
133
74
132
81
142
145
65
130
90
98
114
135
132
116
117
98
106
104
207
145
110
99
135
127
83
131
49
143
182
77
74
177
77
103
137
161
142
87
84
145
103
85
103
144
108
95
115
168
125
160
130
102
126
123
106
102
91
144
146
148
81
127
138
108
109
159
135
142
139
151
129
54
114
161
108
91
102
104
155
96
115
137
96
90
76
127
153
118
141
103
95
183
104
113
161
113
105
98
126
134
179
49
133
95
145
108
103
95
126
127
59
130
49
111
107
135
131
131
54
141
77
103
107
54
105
109
133
134
81
94
115
144
90
108
157
86
98
158
102
125
98
149
144
147
54
103
87
133
103
54
95
90
133
122
121
159
142
169
77
120
103
72
149
118
155
108
113
147
133
112
93
67
147
96
74
102
122
80
102
84
59
148
94
59
90
90
85
125
127
129
67
78
159
96
101
132
147
100
144
179
105
74
147
127
129
76
118
165
110
113
49
95
140
135
191
84
92
98
88
123
172
115
142
120
117
72
103
126
111
70
139
103
118
167
95
61
102
83
98
76
134
124
54
167
77
91
177
54
106
139
118
120
148
105
106
87
97
98
128
116
124
81
102
139
67
54
90
85
98
54
126
86
119
110
102
112
85
98
108
117
61
83
104
123
126
125
119
54
137
81
69
123
102
95
129
153
81
111
161
132
129
93
98
144
105
113
97
49
123
54
104
90
103
130
99
84
130
108
104
118
142
108
145
49
128
146
165
93
124
148
95
153
102
95
116
144
42
122
122
135
122
145
49
159
120
125
151
97
102
111
112
95
105
108
120
192
177
67
161
126
102
131
78
96
97
135
139
122
123
148
145
74
97
99
128
145
123
153
99
135
101
154
100
115
105
177
110
107
162
106
92
145
81
80
90
138
122
146
108
54
101
77
120
180
188
101
132
125
61
148
133
113
120
103
82
167
108
128
97
77
160
98
76
177
140
157
142
108
135
93
140
170
99
158
135
107
85
102
112
115
106
49
102
76
103
117
121
144
102
148
135
123
89
94
154
144
107
135
157
102
154
134
130
81
106
49
96
87
54
81
59
147
67
163
143
145
141
108
101
135
93
109
84
131
102
140
74
137
146
127
84
103
143
95
136
90
102
92
78
93
78
115
111
128
132
145
126
95
107
102
177
85
97
95
95
139
125
54
147
114
117
89
121
163
118
144
92
109
148
103
105
115
90
147
102
143
73
177
86
169
74
108
147
177
115
152
125
140
49
83
143
114
158
123
111
54
143
113
95
155
90
144
78
143
95
125
117
59
141
101
89
116
102
114
101
127
115
93
134
129
179
106
122
161
107
108
102
110
129
237
137
87
128
147
166
81
141
141
87
124
139
67
54
112
91
49
69
108
101
125
89
54
127
87
103
98
154
94
103
115
59
115
82
100
121
132
114
95
182
111
49
90
54
132
138
134
87
95
153
124
90
129
79
146
117
77
143
80
101
124
54
121
112
98
92
131
100
141
98
151
103
115
107
101
91
99
54
123
71
103
103
87
54
140
100
122
144
139
115
130
83
125
54
59
59
127
115
54
98
49
107
87
105
87
86
157
116
123
163
83
108
100
136
122
105
95
158
133
85
69
131
158
125
73
87
120
133
84
83
81
125
133
105
122
135
127
54
61
77
144
49
95
87
125
125
81
102
125
81
210
67
108
113
86
107
73
114
167
143
92
49
87
87
194
109
154
106
54
49
133
111
148
105
101
168
95
102
54
77
49
146
112
100
160
101
54
54
98
135
144
141
97
139
105
54
133
89
83
125
177
173
108
110
54
119
81
120
128
167
59
117
94
128
131
142
76
122
113
99
186
123
167
102
106
130
114
97
90
113
103
130
159
127
114
107
99
113
180
94
95
54
135
125
108
87
61
121
93
137
133
108
54
67
116
81
169
125
54
107
97
155
74
146
135
90
128
135
108
127
102
124
59
106
90
76
160
104
149
140
133
171
121
98
67
93
102
86
134
119
81
147
142
127
194
177
107
117
110
109
129
77
91
164
150
125
105
122
103
102
125
119
98
99
116
107
77
124
159
146
95
69
94
95
141
92
54
114
74
85
135
87
90
103
81
121
113
84
82
154
111
120
54
80
82
145
67
98
101
145
188
82
138
145
138
98
127
142
67
147
143
146
127
106
68
179
85
86
144
81
98
161
113
108
107
126
74
97
61
95
135
182
98
115
114
157
71
111
54
77
110
177
98
122
107
98
103
84
68
135
81
82
108
128
95
102
119
89
95
86
162
87
106
169
119
94
81
116
170
107
157
110
72
115
167
99
113
88
59
90
88
119
110
158
128
105
87
103
116
109
142
143
107
95
108
114
102
132
106
135
108
84
126
81
134
113
120
145
49
128
113
128
54
104
166
176
81
115
104
89
125
135
82
157
158
106
103
127
49
104
119
139
177
81
146
115
110
95
103
101
156
135
115
126
81
109
108
158
112
116
99
137
105
120
74
130
140
101
94
91
106
152
74
165
91
125
106
125
132
102
141
133
140
110
134
143
95
128
143
108
143
105
127
121
113
79
137
164
106
108
69
65
147
102
144
98
96
165
106
124
118
85
65
108
143
106
172
152
54
49
92
179
90
156
89
138
69
109
107
119
117
148
118
142
100
148
108
107
122
103
123
128
124
183
111
181
145
54
144
114
128
126
92
113
131
171
124
90
125
100
71
108
172
118
155
108
77
148
54
83
116
59
158
131
105
124
190
102
108
124
98
54
134
121
128
133
134
115
106
133
126
102
97
123
42
100
95
185
77
133
160
102
84
145
113
132
108
96
81
118
90
104
115
105
76
192
81
117
54
76
95
103
103
98
81
114
103
133
95
105
116
161
123
132
102
106
91
144
106
143
83
81
83
98
134
155
113
148
154
99
142
128
103
110
100
134
81
142
77
155
161
138
93
132
54
104
128
125
146
161
101
59
142
103
93
126
125
82
133
117
114
87
72
102
148
146
130
117
145
87
110
93
68
160
128
89
115
98
118
144
54
129
77
111
101
118
67
86
138
127
175
141
87
125
159
134
167
54
68
198
95
105
126
108
85
197
145
133
108
96
91
107
124
103
95
54
178
95
103
133
76
140
120
102
92
86
102
151
95
181
125
141
91
90
115
100
106
145
130
105
112
188
110
131
108
143
102
111
148
145
90
91
124
101
91
133
82
59
125
97
80
102
93
94
138
93
116
148
155
156
101
137
135
148
124
81
119
135
95
140
99
120
104
143
96
115
141
102
129
98
80
150
153
133
113
149
54
148
87
92
121
98
151
121
74
70
93
98
133
149
98
108
77
118
113
95
92
79
160
103
54
106
95
141
100
106
142
112
123
137
161
151
95
131
147
131
150
128
61
93
144
102
81
89
131
61
91
69
122
150
102
161
67
108
113
87
133
111
143
94
102
129
97
111
116
92
142
54
124
158
93
150
92
133
161
103
96
100
108
167
92
158
108
108
142
143
54
163
119
148
110
135
67
109
102
76
114
135
122
177
146
98
149
160
54
138
132
133
59
154
153
74
73
95
138
95
147
138
78
110
143
158
125
74
116
90
144
122
97
165
61
134
88
150
115
105
200
165
76
95
101
83
83
133
158
82
140
146
116
130
157
129
68
126
141
128
151
113
94
103
91
135
135
143
170
98
140
95
130
101
100
123
102
128
54
131
54
111
112
54
104
126
103
146
94
108
146
76
54
108
120
168
160
143
145
144
93
137
123
158
131
152
110
143
115
100
89
132
84
133
182
135
78
149
81
96
139
102
102
135
74
146
84
125
69
161
79
95
146
140
122
99
92
115
132
105
122
131
95
155
102
118
109
132
125
100
92
95
133
102
141
115
54
108
111
156
144
131
155
127
128
103
76
90
130
141
93
83
115
123
102
113
67
130
109
125
149
101
108
174
153
122
85
133
116
142
97
135
82
104
79
125
108
102
80
177
165
143
115
108
102
148
103
79
126
115
54
120
90
101
158
81
118
108
81
107
132
113
155
76
139
108
110
54
167
76
100
108
92
67
131
105
116
87
103
116
96
87
87
61
106
80
74
123
108
134
113
131
98
131
77
95
128
93
142
98
127
160
95
135
49
112
126
120
141
91
108
96
77
83
102
156
117
131
146
102
157
106
102
127
95
49
95
97
112
96
67
116
110
106
102
136
100
100
120
111
122
83
125
109
170
76
85
98
153
93
133
54
132
103
142
118
84
112
139
135
74
100
82
83
54
116
137
120
131
135
92
141
146
118
82
152
110
104
136
103
80
119
91
161
143
87
86
172
117
114
61
118
87
126
113
147
93
88
97
122
127
139
104
135
177
158
131
108
103
152
108
87
106
104
148
113
186
102
156
97
126
125
98
124
121
105
103
98
104
148
148
67
77
141
131
84
112
96
97
97
61
128
121
110
103
122
111
138
199
125
93
97
178
97
54
112
156
61
113
61
108
104
76
134
135
54
75
69
133
112
199
87
82
154
91
146
103
98
107
144
87
78
150
138
108
113
88
118
156
82
89
49
95
108
120
167
102
114
134
156
76
118
145
127
120
105
91
133
106
111
155
144
102
106
102
76
144
107
123
98
95
140
119
95
106
100
136
99
84
188
102
177
93
98
146
147
116
135
89
149
133
113
108
85
144
72
128
151
156
108
157
125
154
134
170
118
145
81
120
150
128
156
120
74
84
131
101
101
54
95
100
162
134
81
102
90
97
95
104
140
126
129
111
155
54
116
126
88
95
140
103
143
112
111
93
161
131
154
123
177
87
108
118
106
119
141
106
177
161
133
54
100
103
118
107
113
67
97
98
179
85
89
125
133
123
103
118
122
98
137
184
81
123
206
141
153
109
87
93
54
115
204
153
120
106
129
147
125
177
87
82
141
148
109
139
104
164
106
120
169
138
127
125
142
82
127
109
167
151
95
125
103
148
117
54
90
127
193
146
135
166
98
59
97
117
112
105
117
99
133
125
104
103
134
125
114
98
87
118
142
108
194
76
125
126
125
120
157
159
98
78
102
126
49
116
105
140
76
145
135
104
114
115
127
105
75
49
146
98
124
139
128
95
144
176
154
91
150
151
156
59
108
156
85
97
74
158
146
148
145
106
74
132
105
59
125
132
87
107
147
110
119
177
139
123
141
123
107
98
80
113
133
138
96
118
106
102
143
165
77
113
78
138
74
94
106
90
76
93
93
59
118
134
106
106
101
169
102
128
122
82
49
90
166
81
94
148
136
143
200
109
130
124
102
96
146
135
151
95
136
116
102
154
95
49
92
74
156
97
148
132
134
94
95
113
54
59
131
100
97
136
81
116
144
116
83
116
126
124
153
109
143
126
87
121
103
112
95
142
101
163
122
93
93
98
112
145
85
177
104
117
89
149
54
104
140
177
97
137
129
169
98
113
54
158
147
111
95
117
96
97
133
54
144
99
113
122
148
131
155
105
108
123
81
110
162
80
142
101
81
87
100
88
182
98
127
74
144
113
106
90
70
127
77
95
169
108
111
121
144
123
132
49
67
177
131
124
113
67
150
116
105
121
116
103
118
134
127
93
108
177
79
118
102
99
103
164
152
146
85
100
59
110
113
99
83
111
82
78
107
126
59
105
132
133
102
97
70
105
148
104
154
135
112
128
140
97
178
173
108
172
129
147
77
106
141
81
129
82
143
136
125
93
109
54
98
95
127
119
116
133
123
119
99
135
104
83
115
105
134
120
108
140
54
95
81
156
78
163
145
125
54
84
91
77
114
113
70
169
123
89
108
117
129
124
96
123
148
143
91
102
119
132
145
95
114
100
54
110
199
74
133
103
108
108
102
114
120
103
113
102
106
72
131
180
76
145
146
67
54
125
102
103
126
138
128
141
83
136
148
161
87
82
163
93
108
197
142
108
115
118
147
128
76
129
105
120
96
105
106
170
111
138
130
54
141
81
119
140
94
133
158
80
85
94
145
135
151
61
98
135
105
76
54
101
136
95
158
108
59
131
61
104
95
129
105
146
103
146
126
150
117
118
91
95
87
94
102
104
79
103
108
95
144
95
102
81
74
108
102
108
122
82
74
124
97
99
123
111
163
202
111
77
125
154
95
108
120
113
54
159
80
140
81
141
106
164
140
83
116
116
98
99
103
108
139
119
159
87
102
133
105
93
162
127
128
105
98
110
138
108
147
107
103
103
95
104
139
120
126
135
91
100
128
144
127
142
122
126
119
95
96
79
108
150
103
141
99
90
100
139
101
160
114
168
113
147
95
124
120
84
87
108
140
105
116
133
155
112
108
116
118
107
74
107
139
113
123
79
125
125
169
158
164
141
92
119
144
85
115
87
98
125
101
95
101
119
183
135
168
54
93
107
103
77
156
142
114
105
123
165
116
124
117
105
112
93
100
54
126
174
118
54
96
131
97
143
74
115
110
95
156
123
95
100
83
160
155
128
146
122
87
144
107
147
77
117
106
107
104
105
90
144
102
150
106
134
123
105
112
134
138
113
168
122
135
76
108
129
78
122
113
78
77
110
113
91
112
101
117
135
81
122
124
158
76
80
134
126
105
178
95
105
114
81
120
127
127
78
158
121
135
123
105
78
148
148
130
119
77
135
93
111
148
112
140
54
126
102
95
125
85
102
102
129
116
102
153
128
101
74
102
163
140
138
107
150
157
110
144
81
85
153
108
115
90
96
87
146
49
97
131
67
152
88
103
178
119
113
77
85
102
95
146
147
70
77
122
158
54
91
133
98
59
91
117
105
126
101
95
61
169
120
142
141
146
118
147
124
129
95
59
115
120
129
113
159
128
109
113
127
84
105
128
125
113
88
152
105
124
104
102
115
82
94
126
153
122
95
67
101
117
103
70
143
102
102
133
91
103
120
177
102
107
160
90
167
129
110
91
109
146
54
131
120
74
90
108
123
138
147
54
108
61
87
133
116
95
145
110
146
59
106
102
118
122
102
153
108
125
112
139
103
42
120
49
138
153
138
148
143
133
101
143
106
139
160
116
74
101
178
98
127
107
132
54
105
148
148
68
119
123
95
124
108
116
139
90
164
110
105
74
130
92
163
136
125
98
106
117
95
108
113
81
78
147
169
103
134
165
140
159
121
131
134
108
108
105
101
95
142
116
111
81
103
139
107
103
111
102
204
93
105
112
128
108
106
93
109
104
73
173
132
94
98
97
113
153
81
172
157
54
121
112
130
111
183
93
96
124
90
104
147
154
160
108
135
113
135
134
129
127
105
81
118
75
95
102
179
108
95
119
106
87
105
113
141
116
109
145
95
45
150
121
117
111
131
159
116
117
111
86
65
108
96
138
59
147
81
90
115
90
148
87
121
91
110
131
108
118
160
65
113
54
135
88
83
102
96
125
95
179
153
85
101
90
120
125
54
125
116
61
136
103
108
107
143
80
100
116
54
90
117
177
76
54
102
108
169
99
102
125
77
77
98
81
148
117
125
98
141
110
103
132
123
106
148
126
61
83
78
92
144
119
90
115
119
97
94
102
101
156
158
122
109
59
135
103
102
134
105
117
125
97
109
177
167
177
90
115
128
131
106
79
103
122
110
59
121
149
116
114
149
108
138
76
112
148
81
98
155
129
160
54
113
54
96
54
120
77
101
110
125
172
76
93
116
148
73
101
155
67
95
90
126
140
68
103
95
122
139
120
108
96
77
131
133
84
105
95
105
105
119
86
130
105
78
93
165
110
167
128
106
74
93
61
102
49
158
115
102
111
59
95
108
125
94
118
109
161
126
133
113
54
74
105
108
72
139
74
88
131
143
61
81
125
116
104
67
45
153
122
102
93
124
85
127
103
73
153
120
151
143
93
86
69
54
152
108
96
81
119
68
167
101
54
130
191
91
85
107
115
98
119
74
195
100
90
97
138
111
119
102
135
127
132
109
133
92
155
120
149
127
115
113
140
95
193
123
102
139
135
131
107
54
49
98
128
177
78
106
79
158
105
54
93
98
150
108
160
95
101
99
119
108
154
93
78
90
54
108
131
97
96
73
189
108
74
139
61
152
139
131
77
73
127
137
110
132
96
160
116
100
93
93
115
165
54
128
105
91
107
98
76
92
128
123
59
103
112
54
106
137
106
99
159
113
142
125
131
85
188
173
108
87
127
109
95
81
104
115
105
174
125
82
83
153
102
152
118
108
85
159
122
59
71
129
141
119
108
109
54
125
125
101
156
90
128
54
78
148
67
123
104
96
95
108
67
108
118
84
164
103
112
132
116
76
61
103
109
165
114
141
110
114
107
160
149
90
101
128
105
118
93
126
160
102
186
54
96
191
96
86
157
137
128
139
128
108
92
135
132
165
81
140
135
108
82
81
87
107
54
141
190
157
125
111
147
78
85
110
96
116
54
146
97
104
137
123
105
109
116
59
122
105
142
102
148
111
123
177
163
81
87
140
93
68
150
123
95
158
123
156
108
112
147
82
126
115
117
157
78
128
125
102
127
163
87
113
101
107
110
125
90
68
95
113
149
133
77
114
135
133
105
108
119
108
160
144
108
143
78
103
119
137
144
54
131
124
54
77
108
125
146
130
74
157
116
154
155
105
151
102
124
119
163
96
162
132
147
83
168
106
169
69
69
121
127
150
125
153
103
119
96
144
110
69
87
102
145
97
68
76
59
101
129
91
102
95
91
114
68
145
113
122
82
112
128
59
142
95
152
82
117
102
59
80
128
75
113
76
102
182
97
102
135
110
87
139
136
146
106
98
119
128
135
144
101
133
77
87
132
98
179
98
128
143
54
94
109
74
91
143
82
124
106
138
68
125
93
98
107
112
54
54
78
54
100
113
110
114
118
131
93
120
70
100
133
156
97
139
77
102
149
115
128
101
119
83
54
81
139
137
127
146
108
180
148
74
95
138
160
104
188
128
126
80
116
119
115
141
104
188
172
114
147
172
120
93
157
147
93
88
95
54
146
164
97
96
140
108
143
101
81
133
81
131
113
112
78
95
155
128
49
119
160
158
82
76
105
147
124
96
108
157
115
180
112
54
98
104
54
88
98
90
87
113
117
119
107
124
96
128
77
125
112
114
146
171
99
174
130
103
129
117
110
98
130
191
67
134
92
121
128
68
99
123
71
140
163
164
159
143
78
107
113
104
72
82
124
96
61
98
97
101
143
120
54
74
131
91
115
100
61
142
119
124
87
96
145
164
108
113
133
84
138
134
120
103
124
125
74
133
146
110
93
80
93
105
98
124
102
173
98
112
98
141
119
109
93
125
74
140
112
74
135
158
179
98
132
158
147
140
167
91
61
100
102
101
84
144
130
82
96
49
113
135
102
54
81
116
131
119
133
116
84
110
140
54
158
140
87
54
120
105
104
133
130
82
151
133
101
85
124
128
59
125
88
122
98
120
54
148
122
74
119
127
108
113
98
205
93
87
174
102
130
131
95
165
69
160
98
135
165
108
120
85
143
54
103
157
110
127
170
93
112
106
154
108
112
89
125
188
142
96
108
116
100
67
127
98
81
104
76
108
115
81
153
74
160
116
130
133
113
97
117
113
101
149
133
78
82
143
123
91
138
167
123
133
84
121
113
108
80
54
98
124
143
67
90
90
109
127
81
143
85
123
133
126
123
76
144
146
123
76
143
107
98
100
90
91
82
168
81
115
81
151
93
108
101
135
87
132
84
116
103
113
81
114
69
87
95
138
108
135
175
87
85
177
134
116
132
81
105
148
91
90
116
168
125
127
136
113
123
82
120
146
107
137
108
157
172
144
120
130
168
122
106
142
73
125
96
114
146
54
142
80
54
90
99
103
126
120
114
81
82
129
67
87
95
172
104
98
109
112
137
122
97
172
80
148
82
92
95
166
123
100
149
167
113
115
131
105
103
80
97
59
151
118
95
154
124
80
112
118
127
106
54
89
123
86
108
68
108
116
145
148
98
139
110
133
120
135
91
117
150
82
116
117
78
108
110
102
148
144
168
102
168
128
129
126
104
143
147
174
109
161
139
107
105
81
100
112
104
102
112
102
133
126
102
175
120
68
102
102
116
109
131
112
107
54
137
89
116
96
87
87
104
145
93
102
128
127
91
140
101
140
168
134
127
132
82
49
115
108
124
120
102
159
169
129
144
102
179
102
76
149
49
133
101
154
88
124
103
107
149
105
145
134
111
125
115
90
131
118
74
59
158
139
165
98
97
134
199
127
94
104
108
156
87
144
146
88
161
128
83
123
90
109
144
87
147
98
108
124
110
144
123
90
154
111
54
133
54
146
110
141
100
113
107
153
109
102
124
158
107
110
105
103
142
105
109
112
103
81
108
112
96
107
122
102
82
95
158
165
114
68
145
108
97
79
111
76
74
121
110
49
95
129
102
73
132
93
180
119
134
142
125
160
148
89
78
149
49
167
115
78
89
119
100
105
109
136
131
116
103
67
97
108
108
73
125
100
133
109
87
78
207
106
115
142
101
106
118
120
83
103
95
98
77
147
141
205
108
134
138
177
83
114
103
138
95
117
81
125
108
109
77
127
96
95
59
89
77
100
156
96
111
145
120
127
167
116
125
130
102
92
117
162
122
126
93
94
143
157
92
87
91
124
110
59
83
161
160
127
143
148
96
112
108
157
98
109
124
76
102
180
143
122
74
95
95
122
108
138
141
98
123
103
115
108
134
192
82
177
113
128
80
100
81
125
108
145
123
122
67
119
128
49
142
133
76
110
143
49
126
73
77
100
119
87
90
95
127
141
129
109
111
181
145
95
54
81
68
100
113
106
141
116
76
54
115
95
103
135
129
127
131
108
74
91
95
93
185
109
125
133
108
130
92
111
54
111
107
133
160
80
172
124
113
129
91
59
108
171
105
156
174
141
132
148
103
125
129
130
113
116
91
127
127
113
101
168
102
135
67
118
81
173
112
129
122
114
107
108
84
133
128
117
54
150
87
54
83
102
95
98
97
107
119
100
106
78
106
128
96
122
123
108
180
119
103
108
114
117
120
110
148
78
104
124
144
109
170
123
82
89
131
76
138
113
102
102
97
81
111
91
108
111
61
49
67
89
108
129
115
111
120
49
103
130
110
87
131
119
140
125
136
108
115
147
130
97
108
77
95
102
123
89
128
121
87
125
102
119
102
122
106
135
98
128
77
136
144
76
145
99
137
135
155
79
106
103
159
194
123
83
128
160
105
114
132
77
76
215
101
68
121
169
85
78
121
102
108
126
117
74
87
81
82
110
129
160
137
93
153
142
151
98
54
109
113
125
121
108
101
97
102
122
108
142
103
179
109
103
108
109
129
131
92
98
124
140
95
151
113
102
147
128
146
137
54
133
105
102
141
127
235
156
127
95
112
138
101
77
90
81
93
108
138
103
104
146
138
156
145
141
54
151
167
136
140
141
54
129
108
112
71
95
74
185
147
102
125
153
147
116
109
98
127
129
97
54
133
79
76
81
198
87
142
147
106
142
118
54
100
144
113
142
67
74
114
77
147
91
68
90
116
91
161
120
108
101
125
91
122
108
108
127
87
76
78
107
103
108
139
179
90
106
98
93
113
140
95
78
167
131
130
122
102
54
139
59
112
59
106
49
112
74
135
144
105
102
147
96
108
143
81
150
71
77
98
81
122
143
91
83
146
164
90
117
171
133
110
68
86
117
111
87
81
120
112
104
116
77
128
87
77
90
112
124
96
108
108
102
78
125
102
97
108
104
87
116
99
155
113
145
95
139
148
120
89
200
103
105
113
93
83
98
129
92
140
131
101
83
122
95
91
109
107
127
54
145
135
105
102
104
78
115
116
83
86
133
162
116
152
113
180
125
125
154
131
107
134
113
74
145
111
143
54
83
73
122
102
103
105
108
93
140
158
102
200
141
117
131
54
105
108
76
105
110
150
94
72
135
163
102
67
98
116
120
155
54
138
164
122
95
97
98
97
54
101
146
87
115
107
122
161
120
130
108
131
95
87
129
133
108
139
110
193
65
149
184
87
108
133
94
144
144
139
124
115
138
98
108
97
125
127
103
137
125
104
125
129
142
59
102
99
102
121
105
95
74
109
144
105
114
103
90
99
110
98
115
112
54
93
117
98
114
106
174
74
107
96
120
108
97
138
117
76
155
141
100
105
81
87
100
93
96
154
103
120
113
167
125
137
69
87
114
168
102
76
95
119
133
135
133
54
160
152
146
98
68
132
140
82
133
90
82
162
120
106
125
136
90
114
112
113
133
81
111
91
142
126
135
127
81
82
122
77
170
75
142
108
104
83
98
105
139
107
162
132
99
86
59
97
80
96
74
95
95
163
127
138
153
150
82
102
150
73
74
95
166
81
127
112
118
80
91
156
78
95
119
83
110
121
83
76
118
76
123
144
125
118
109
186
108
139
149
73
91
150
159
144
100
129
80
104
107
143
120
107
108
108
168
99
140
157
81
131
70
100
158
108
90
113
116
113
95
169
117
146
113
91
142
170
111
132
114
127
102
119
113
102
114
78
70
118
120
131
114
129
91
95
87
103
102
122
75
146
119
155
89
90
186
143
100
90
106
98
108
119
115
153
102
93
85
107
124
147
135
120
148
103
129
87
156
133
119
102
85
91
54
102
123
143
104
95
114
120
93
151
108
102
113
161
81
83
76
106
82
102
109
79
54
126
73
192
95
136
97
136
146
128
176
143
81
145
144
98
81
74
122
117
160
95
99
165
102
57
110
97
163
105
49
95
49
49
130
108
129
140
62
159
107
105
104
160
103
98
68
140
124
95
81
163
115
54
153
69
54
119
135
115
87
118
130
90
54
81
69
61
140
99
67
135
138
65
144
103
139
54
148
90
168
108
139
122
121
128
77
87
149
145
84
135
104
96
54
113
108
87
177
156
115
101
114
106
90
102
195
108
144
116
145
147
123
97
87
118
80
113
149
144
156
152
143
102
78
105
120
161
200
112
108
97
97
103
54
117
99
74
148
109
121
108
108
99
118
124
153
111
139
117
128
104
100
54
104
143
119
67
127
191
128
87
140
102
140
124
124
111
85
127
131
85
140
128
139
163
94
104
101
113
112
120
87
142
153
168
111
49
129
135
107
107
127
94
135
114
135
118
140
93
161
113
103
102
135
167
93
112
153
54
93
102
98
112
99
81
123
107
151
92
126
160
96
98
124
105
116
102
147
95
177
143
90
146
94
150
155
132
54
101
78
123
104
106
146
108
95
120
54
161
118
115
169
92
83
113
129
128
97
107
139
186
141
125
102
126
95
94
93
98
74
115
67
127
91
106
95
109
116
172
141
182
162
97
108
134
120
115
137
124
157
80
103
135
54
73
110
151
116
77
76
104
103
67
81
96
142
101
101
67
124
92
93
95
122
126
92
114
128
110
154
142
127
131
119
98
140
121
97
121
133
140
122
144
113
105
116
224
82
105
54
145
93
126
120
118
101
81
153
105
88
129
89
169
133
112
137
95
118
107
106
148
77
54
68
98
98
131
109
88
139
76
135
116
101
161
133
54
128
164
170
54
116
169
100
54
132
96
87
82
161
150
102
120
93
105
139
128
120
165
177
111
120
106
141
139
130
140
215
77
49
154
97
154
131
95
96
115
146
54
124
163
140
95
155
92
148
109
122
110
131
127
121
131
166
103
98
120
133
102
172
104
105
102
159
140
97
100
124
133
74
87
107
153
119
68
118
49
143
95
115
106
121
122
116
133
77
115
144
90
107
84
160
98
177
106
129
93
98
147
127
77
97
120
104
142
99
68
74
158
97
115
67
135
148
82
102
161
95
135
170
139
96
149
54
128
120
131
104
158
121
88
74
114
129
109
82
174
112
140
147
152
133
116
59
90
93
140
122
118
74
119
96
139
74
103
135
116
95
142
119
81
89
151
146
133
93
103
103
181
152
118
155
152
124
149
54
120
95
87
115
117
146
81
116
77
82
117
128
127
128
114
85
139
49
113
96
169
183
180
96
125
105
98
85
98
149
124
104
103
113
125
169
103
172
49
80
109
162
148
76
149
116
97
144
140
116
134
150
74
145
146
144
102
146
94
151
111
107
102
153
112
110
115
82
167
120
74
115
124
140
170
155
85
134
84
87
128
128
65
102
140
76
98
143
77
97
98
105
54
49
148
82
76
112
49
87
199
104
169
171
103
98
113
93
117
106
88
139
77
158
133
54
120
152
114
129
105
111
138
95
161
157
93
153
110
114
144
135
108
77
49
123
191
108
141
67
111
154
113
160
102
116
95
91
108
116
68
116
120
70
202
69
129
96
146
54
117
90
161
142
120
91
98
141
169
143
131
110
115
134
49
128
108
103
140
118
153
62
122
118
49
134
54
178
81
95
102
135
80
96
165
126
109
165
120
177
106
54
112
141
115
130
101
129
77
98
87
123
113
83
171
124
131
77
168
139
130
54
143
90
130
134
90
143
108
106
182
145
138
42
116
77
83
106
125
136
120
90
159
148
144
129
108
88
157
59
96
95
119
134
144
134
87
128
170
116
90
144
112
124
120
68
123
155
81
87
130
108
76
103
85
145
147
122
108
134
95
102
68
108
104
98
103
150
98
54
140
142
91
168
132
138
198
148
97
92
127
95
67
124
54
156
108
81
102
161
98
123
101
86
77
119
143
111
89
133
142
138
92
83
129
161
133
120
105
70
74
118
127
140
104
95
161
105
99
86
98
90
135
87
96
102
120
161
97
102
131
128
176
125
82
123
113
90
96
176
144
108
137
95
116
80
54
141
78
153
108
143
94
148
169
96
113
115
123
129
93
171
121
139
129
124
165
116
138
128
76
121
96
79
161
137
122
102
116
120
103
92
112
115
69
81
153
95
116
141
83
82
157
143
130
128
82
96
193
93
100
157
146
124
108
90
98
96
103
78
76
118
122
177
133
100
140
120
95
167
158
82
54
78
133
95
100
91
126
125
115
141
115
126
134
122
235
95
87
125
116
140
124
121
98
107
119
103
98
132
150
93
107
130
49
122
114
102
135
119
132
110
143
54
118
113
61
98
90
49
108
118
109
128
128
100
133
139
61
129
103
74
140
103
103
78
137
95
148
114
108
194
99
112
102
130
106
130
142
105
110
83
97
92
76
129
49
150
125
79
116
54
111
120
78
76
74
85
93
105
83
119
83
105
90
131
102
54
98
115
83
93
82
135
128
81
59
167
143
127
105
105
158
87
70
127
154
134
77
90
165
49
81
87
54
149
165
54
73
129
82
115
103
108
76
161
138
54
74
140
82
83
82
54
80
120
131
61
102
114
95
98
106
84
95
109
152
79
143
94
59
129
130
96
125
154
140
123
158
122
114
144
135
85
124
115
135
123
128
158
142
99
102
133
129
144
107
91
98
95
129
101
106
86
119
141
94
138
126
128
54
138
146
153
77
67
74
122
127
129
142
42
76
54
81
200
161
87
111
95
113
96
112
98
127
98
95
83
49
103
104
129
54
148
166
144
124
163
139
128
87
87
96
103
82
98
119
113
129
115
113
87
140
156
73
87
146
129
106
113
139
133
90
112
201
81
74
99
78
119
96
108
97
160
122
141
135
78
135
95
103
113
106
149
126
113
186
135
98
160
172
128
139
194
108
126
103
90
120
166
112
118
194
95
124
146
91
102
135
103
98
107
169
107
69
141
147
148
111
145
112
89
95
128
138
107
126
124
147
126
138
99
145
118
115
162
98
140
54
104
96
155
107
103
125
98
116
132
134
91
102
83
80
130
123
162
103
155
107
142
125
110
158
154
74
124
125
177
143
83
141
144
97
79
120
139
109
112
87
54
160
133
151
127
185
83
45
144
59
122
113
106
102
134
119
125
107
147
103
137
113
134
75
77
113
98
139
113
110
94
132
97
94
95
158
93
104
107
74
148
116
146
108
98
90
159
125
83
97
103
101
73
122
103
108
128
113
117
91
84
144
158
77
67
59
81
78
144
141
101
68
122
117
59
149
124
143
69
108
68
140
54
118
110
118
122
133
93
104
190
127
150
49
49
150
96
77
102
90
147
147
115
120
102
134
151
133
134
106
132
126
83
102
156
124
152
153
109
54
125
133
49
199
77
103
94
108
74
76
144
149
83
107
102
76
113
84
116
143
101
122
93
123
95
103
98
54
90
93
114
218
121
122
105
103
152
153
95
131
140
148
139
85
156
127
102
165
54
119
87
146
127
54
124
123
118
72
105
141
128
158
108
113
103
165
101
93
98
113
82
127
154
176
168
78
117
147
112
86
170
100
101
107
112
102
99
116
106
83
106
54
59
112
113
111
73
85
172
123
116
103
157
139
87
111
97
102
107
102
125
200
97
145
144
77
191
109
83
149
76
127
135
138
107
49
158
129
142
49
129
162
126
76
87
132
108
108
85
120
147
127
83
113
82
153
90
93
100
111
112
129
108
91
119
114
93
154
106
83
157
54
137
126
86
191
123
110
54
112
118
54
78
124
81
143
160
88
102
190
135
128
115
105
104
108
130
149
76
93
83
112
125
126
54
97
87
87
125
82
125
131
136
119
145
146
173
145
107
102
113
151
103
98
84
168
103
110
93
122
59
128
131
97
79
115
127
130
100
161
98
110
81
96
91
130
80
141
116
128
102
155
54
115
183
91
154
83
137
117
115
105
115
139
73
196
68
108
101
130
81
112
116
143
150
118
54
83
117
151
125
54
107
98
103
138
140
113
163
77
168
120
138
117
119
102
125
151
150
111
163
49
121
87
99
145
104
75
123
95
115
168
93
76
49
107
94
148
135
87
108
128
150
96
81
146
135
146
76
118
179
125
129
104
99
120
82
172
108
165
103
67
87
160
85
130
146
102
94
107
93
125
129
127
137
122
173
95
142
97
118
138
171
87
113
113
81
103
99
124
91
142
103
154
149
90
105
49
73
128
156
163
132
61
85
89
148
90
98
49
131
144
131
77
131
112
158
98
105
106
144
148
59
102
145
83
98
119
106
141
122
83
95
108
141
168
120
103
110
137
113
143
81
54
118
125
150
81
112
158
138
77
92
78
81
133
93
159
133
104
83
152
114
54
90
100
128
95
125
78
87
141
74
129
143
137
89
103
124
132
92
68
140
113
90
83
125
143
150
114
131
90
154
49
133
106
107
133
113
103
84
151
96
127
54
95
54
128
129
124
102
80
171
98
95
153
112
108
147
100
116
118
95
96
128
115
160
91
49
106
125
115
69
106
118
93
195
93
163
98
98
113
122
147
104
193
127
86
94
137
126
126
147
128
173
120
181
135
115
49
138
136
49
109
113
95
68
49
83
118
194
49
104
149
109
106
94
154
146
123
127
139
148
110
110
94
87
120
98
96
108
129
126
124
132
84
54
117
145
122
131
129
99
170
100
151
91
138
67
97
158
54
158
178
73
127
134
128
166
102
105
117
137
76
151
188
191
111
91
97
99
78
122
142
59
72
54
134
123
112
136
118
151
146
130
142
140
84
177
176
114
89
87
95
108
54
59
100
107
103
113
87
91
140
108
108
93
54
118
133
146
105
91
86
103
138
118
127
127
113
87
76
133
108
78
108
89
131
111
133
146
149
116
113
125
139
137
168
122
121
149
79
54
54
108
81
98
154
143
61
177
105
128
125
67
59
107
95
135
77
133
149
92
149
116
68
74
54
69
145
59
125
138
127
87
177
93
74
95
78
122
123
99
54
96
112
190
90
161
97
87
123
122
128
160
138
114
94
118
130
102
95
116
89
95
141
78
54
148
68
179
108
76
153
84
115
105
121
139
105
91
94
90
110
98
102
165
135
132
117
106
170
97
145
115
98
123
91
102
102
172
87
155
125
170
113
190
77
102
83
140
102
93
120
131
98
142
118
108
141
110
133
93
102
170
105
125
108
67
102
107
105
105
93
54
133
54
122
180
108
151
94
81
76
110
54
128
74
120
123
106
128
102
54
54
90
81
111
97
144
71
128
139
133
108
157
177
124
78
95
108
202
154
172
90
186
132
144
121
89
134
103
130
121
138
143
74
108
104
168
108
110
95
144
90
108
148
74
133
106
87
103
90
91
182
162
106
96
148
91
122
87
130
82
121
120
90
102
108
120
95
59
95
155
90
111
162
113
125
122
119
190
111
108
103
115
126
126
189
133
103
109
67
164
100
102
77
102
92
54
99
49
102
125
92
161
133
81
165
166
54
138
81
59
92
92
143
106
125
98
156
90
90
128
74
105
86
141
89
145
98
115
158
172
89
102
69
105
54
129
88
161
93
141
144
142
112
103
116
111
140
76
82
125
95
149
131
115
105
100
95
105
87
148
125
91
54
102
127
54
131
135
148
158
165
87
117
145
148
88
102
122
122
108
96
117
98
112
198
128
109
103
91
91
102
125
129
158
135
49
96
159
140
104
129
102
54
54
102
143
76
95
158
147
49
78
122
109
54
98
139
86
145
100
94
59
108
79
59
103
91
133
95
81
140
59
95
153
105
119
128
137
49
106
104
108
169
172
105
97
116
125
133
59
97
108
85
114
158
158
68
153
119
128
109
120
165
87
150
149
130
145
123
95
82
98
170
97
170
68
139
93
119
113
124
67
124
188
117
102
127
145
140
106
107
156
78
68
125
95
108
95
74
91
104
125
172
105
105
122
103
128
169
82
145
113
54
74
96
100
94
93
85
68
158
149
99
99
194
84
109
83
177
97
124
90
114
154
132
142
125
105
96
200
103
113
124
77
128
147
158
83
98
125
80
123
77
120
136
83
172
151
81
128
93
118
129
128
108
137
59
68
54
125
49
128
118
59
102
99
124
117
148
77
61
96
96
91
145
125
142
102
121
103
68
68
98
99
136
87
83
163
148
108
83
158
91
127
83
137
130
144
150
100
54
131
173
126
77
94
100
177
155
133
128
98
131
89
87
69
89
65
155
91
54
146
125
108
138
123
92
123
116
76
125
108
96
98
102
128
115
144
155
104
113
87
177
129
74
148
93
151
127
158
92
83
127
99
98
98
113
118
67
124
165
145
59
144
152
108
93
170
131
105
104
95
102
54
131
111
82
128
98
135
108
147
141
105
73
98
140
93
95
127
54
125
110
78
129
95
125
54
174
82
154
105
143
121
67
81
54
161
119
143
88
168
49
111
67
116
95
134
168
153
117
133
86
105
128
81
117
181
109
156
98
114
102
122
125
121
113
90
87
108
85
98
126
142
49
112
49
133
74
141
131
125
143
111
80
106
98
103
96
112
146
142
95
83
156
98
123
116
54
120
67
159
133
113
96
113
76
130
110
102
54
153
103
105
128
90
127
54
126
83
108
191
193
96
178
99
94
74
112
110
131
94
146
98
105
110
115
174
138
116
92
108
89
107
59
160
102
140
128
177
123
95
96
54
139
145
143
112
79
122
106
63
92
145
128
112
128
95
186
49
162
96
128
161
111
185
147
126
77
149
108
85
89
77
170
146
99
108
102
183
108
153
102
118
49
102
143
54
76
102
146
155
117
98
77
93
142
170
102
82
73
135
102
171
139
89
82
82
128
112
105
132
92
80
140
151
204
77
128
112
54
133
93
77
105
138
129
93
77
125
103
97
54
120
102
105
116
180
129
131
145
124
118
148
104
54
102
81
112
157
106
135
105
107
128
125
120
139
142
101
93
95
95
122
171
97
133
93
129
129
155
132
113
146
117
126
105
115
164
133
156
74
106
74
78
160
106
89
104
61
94
91
80
84
125
147
126
87
142
106
124
91
116
105
109
117
130
54
87
141
132
154
111
98
167
120
155
125
70
160
107
103
61
111
98
96
89
122
93
133
117
97
122
133
153
135
96
98
100
87
89
120
165
121
137
115
98
136
115
74
146
102
98
98
172
76
116
88
128
49
101
129
123
158
54
130
148
146
131
76
150
181
49
104
87
135
131
98
98
78
114
149
112
140
116
122
86
148
95
138
194
140
100
117
148
102
82
94
128
120
132
54
87
125
139
115
61
121
90
177
164
54
145
79
123
84
113
110
93
134
83
77
49
84
108
136
67
110
104
147
136
126
108
67
106
98
122
108
49
120
82
83
123
88
122
101
83
121
135
94
134
61
93
115
77
142
145
59
143
91
95
86
160
76
142
111
135
131
87
82
138
200
191
78
123
102
105
135
95
113
106
102
132
103
104
91
107
81
131
161
87
105
154
123
120
129
134
132
124
87
102
141
110
154
144
108
106
169
109
69
83
83
166
109
144
54
153
123
125
184
129
131
116
108
80
120
87
139
142
120
69
87
163
135
157
127
114
133
119
96
202
116
74
74
122
93
142
148
54
98
83
148
98
135
119
172
130
103
116
98
122
142
86
111
95
146
81
117
141
141
156
106
165
133
143
155
113
87
100
96
140
148
130
77
123
166
140
97
113
138
95
127
124
110
54
140
102
87
90
96
69
150
101
113
102
180
114
190
97
95
92
95
133
152
108
113
112
109
115
128
125
159
144
117
98
134
108
120
112
102
127
117
90
154
137
131
132
108
124
131
122
95
129
95
182
98
90
83
107
114
107
77
103
133
106
93
127
138
93
144
109
95
178
82
131
113
49
113
112
127
108
134
99
110
110
143
132
98
127
49
74
137
78
115
122
131
128
59
87
138
85
95
105
84
82
118
80
123
106
74
107
81
128
82
95
112
83
105
127
135
54
122
122
103
114
103
144
103
120
125
89
103
105
133
121
115
139
115
107
149
87
126
102
54
163
104
62
124
127
107
183
135
93
114
128
96
96
117
103
168
87
103
90
80
110
108
93
182
129
113
156
54
179
116
70
139
74
107
100
125
67
139
122
86
132
97
129
134
102
108
162
156
128
133
95
146
92
129
108
123
90
102
115
128
67
125
91
117
79
54
81
159
76
147
110
154
131
106
105
115
141
112
108
132
133
94
131
145
124
86
105
134
112
105
179
93
156
89
144
100
108
159
82
133
180
131
133
145
157
149
141
77
136
115
107
98
96
76
98
103
139
118
77
125
67
140
152
89
54
165
90
135
154
76
94
100
109
152
84
126
126
104
129
123
164
143
91
108
49
77
133
114
158
114
149
65
175
102
151
108
131
133
54
81
76
118
104
148
149
150
100
139
140
101
146
112
137
161
100
169
74
121
108
131
140
119
129
93
119
113
101
125
113
121
78
107
104
128
151
139
122
54
90
124
122
122
144
159
166
130
103
97
145
148
134
145
96
109
145
77
110
103
107
91
88
74
139
90
123
141
150
95
91
155
155
109
179
99
99
86
89
175
120
99
117
79
59
122
152
171
131
112
104
146
115
154
138
127
124
101
124
97
115
102
117
115
149
110
105
95
107
145
102
113
122
102
134
103
114
106
106
118
160
96
149
103
82
157
77
147
142
129
106
112
102
118
124
76
95
94
139
93
120
54
158
135
61
154
91
102
93
54
68
114
139
102
140
153
94
81
117
130
98
133
132
74
122
85
138
109
168
100
95
168
81
97
113
133
107
83
111
125
78
67
117
121
90
100
97
164
110
118
125
82
96
74
69
69
135
92
87
112
49
92
169
137
93
128
102
102
139
74
141
128
76
54
96
68
101
95
76
170
131
143
154
127
177
93
149
106
90
108
90
49
103
101
120
133
93
94
213
120
77
151
143
105
78
110
95
83
113
157
150
143
124
99
110
164
131
103
101
83
149
108
102
102
113
101
131
114
130
135
134
123
67
102
188
138
102
165
144
54
135
115
59
89
125
147
129
135
76
75
110
173
140
180
140
59
109
103
133
113
102
112
167
100
69
132
132
96
98
150
107
142
96
129
118
128
144
93
81
169
54
125
106
96
158
167
113
103
129
103
90
113
131
110
156
160
105
112
113
155
140
128
151
128
125
134
95
140
108
110
167
109
96
165
91
107
167
95
125
96
101
158
74
120
59
126
105
147
113
77
77
113
82
148
129
83
112
166
135
131
97
103
93
139
96
93
159
149
125
74
146
95
100
87
113
98
98
103
140
157
210
121
111
83
133
98
111
67
101
54
125
126
78
151
124
90
128
114
82
98
120
83
139
145
74
107
83
138
61
100
115
106
81
113
65
144
103
103
77
81
144
108
111
54
143
81
111
103
100
81
126
113
95
122
59
102
95
134
180
82
115
157
106
118
129
123
85
95
109
99
162
108
89
110
169
154
100
128
151
161
100
107
59
118
144
95
68
105
120
118
86
102
174
150
95
98
127
89
125
134
89
118
103
149
139
54
138
103
115
100
137
78
148
145
148
111
128
141
76
92
135
77
106
124
96
122
150
133
90
118
154
87
126
178
177
101
112
89
127
108
143
105
78
81
140
125
69
77
149
110
81
112
146
131
138
111
154
120
68
131
107
96
108
49
70
107
157
102
81
165
120
120
82
98
101
112
141
105
110
175
98
91
96
151
156
95
128
162
89
171
95
166
161
147
116
119
153
137
110
133
134
107
150
168
49
135
121
149
148
135
119
103
91
106
130
119
162
104
123
102
149
147
103
115
184
120
95
82
113
109
104
49
106
200
98
132
97
153
96
128
108
95
115
145
91
85
88
148
139
135
155
119
112
123
97
123
162
90
102
105
121
125
160
132
102
128
102
122
108
141
154
108
54
183
153
104
113
128
102
152
54
143
108
98
95
95
141
81
87
113
131
119
120
125
87
103
144
120
54
88
90
129
54
148
108
76
116
110
160
141
134
106
113
67
175
135
96
107
147
49
110
190
125
82
177
54
49
74
152
140
98
66
95
153
115
100
161
150
161
149
125
94
118
125
133
113
108
143
113
127
98
59
121
95
54
108
146
131
98
106
135
147
112
123
128
73
123
162
133
93
132
87
186
165
100
122
81
96
131
103
98
132
61
87
93
114
120
90
115
157
141
138
132
90
125
132
93
138
84
114
132
116
112
97
54
97
120
98
135
143
144
77
109
78
118
54
54
103
133
94
152
113
67
54
128
117
187
98
152
128
133
76
125
81
158
78
114
135
93
84
117
77
154
131
126
127
112
116
138
135
118
101
68
134
139
61
103
131
49
81
96
120
131
102
92
67
147
106
54
161
103
103
97
199
82
111
165
140
83
61
113
135
90
106
126
135
95
128
70
122
105
123
115
117
125
116
112
141
127
59
61
118
135
159
97
161
143
121
101
129
190
113
59
165
77
158
73
110
108
81
136
59
113
81
102
117
102
157
133
87
121
96
112
67
97
102
144
102
59
128
153
122
119
153
87
152
108
95
94
165
131
161
163
131
81
109
148
113
126
154
81
96
151
59
202
82
116
89
147
118
131
151
59
158
125
116
131
88
133
82
109
109
92
101
124
121
156
102
87
120
156
122
125
120
95
91
54
100
126
90
126
112
91
107
144
128
127
115
98
91
123
108
121
131
107
139
124
108
141
137
74
96
131
93
88
132
97
119
128
163
165
95
107
61
95
125
72
81
108
106
98
54
77
159
68
139
96
115
96
140
108
124
102
110
101
172
125
114
89
77
93
159
65
133
102
59
144
93
179
81
102
98
102
138
148
93
87
83
74
107
157
132
104
116
138
77
54
159
89
118
49
112
108
110
115
86
97
130
117
121
76
189
93
125
144
140
113
102
141
69
152
101
102
128
90
121
105
132
109
123
117
77
102
113
98
73
98
127
77
129
124
171
54
146
80
136
144
116
149
85
131
105
102
132
106
74
163
102
157
54
81
135
105
125
96
120
122
49
106
95
150
74
131
135
68
118
132
107
118
104
127
54
165
113
123
104
76
69
126
100
90
107
120
134
82
77
85
144
160
106
82
96
105
131
90
143
108
75
113
59
145
146
107
87
120
158
122
54
120
102
98
82
99
156
171
83
108
120
116
130
67
146
155
143
143
117
102
99
97
112
131
80
61
148
74
113
150
108
99
102
95
54
125
137
122
177
156
118
68
113
103
89
49
87
118
159
107
141
107
95
163
121
69
82
124
121
149
116
111
120
103
234
95
117
120
150
101
83
85
120
150
106
144
146
106
111
95
121
128
54
96
146
119
125
177
148
160
54
74
108
112
107
128
132
96
114
144
108
118
97
112
145
103
54
79
105
186
59
176
54
82
87
216
108
127
115
162
163
108
138
146
125
110
193
108
132
135
127
90
90
149
126
134
142
115
98
105
102
97
81
105
150
119
135
108
134
131
140
111
95
102
156
166
148
102
87
108
100
83
125
99
69
117
96
129
138
100
127
49
108
104
96
96
95
121
194
95
49
106
127
105
59
89
138
121
108
74
146
102
124
148
140
143
118
95
127
138
101
120
167
95
107
103
87
112
106
110
124
147
115
135
103
102
81
158
77
104
129
79
135
107
96
105
99
54
103
81
78
108
131
191
54
101
106
144
126
125
103
133
121
79
106
143
123
118
126
73
139
163
146
138
116
117
96
100
81
85
123
102
54
76
104
87
110
131
129
202
83
99
59
148
82
96
108
154
170
139
123
92
76
105
165
78
80
113
175
139
191
106
108
93
54
134
67
102
120
161
119
138
146
125
81
54
107
115
129
128
96
118
147
93
151
68
118
144
109
109
95
162
128
102
77
132
144
145
123
92
157
103
102
136
131
149
113
135
152
144
85
82
155
59
54
54
132
120
133
134
70
72
114
117
81
91
95
101
165
110
102
81
93
98
105
135
95
107
154
95
108
145
160
145
171
49
99
92
133
131
158
111
70
115
103
116
122
61
165
160
125
144
154
141
131
108
77
54
123
141
112
67
107
128
142
194
77
125
97
167
95
133
91
75
129
163
158
85
98
89
149
79
105
164
141
100
97
143
95
105
131
129
82
67
85
63
101
108
145
157
149
217
101
180
103
105
130
105
108
140
83
134
95
117
95
96
131
106
140
112
127
96
149
177
118
49
49
59
61
120
90
92
68
112
157
116
112
117
59
82
147
158
105
144
73
103
103
99
105
114
151
103
98
133
59
121
94
144
185
81
74
139
132
80
68
108
119
54
92
57
140
95
95
129
148
141
135
81
164
132
77
108
141
93
162
115
144
112
94
122
89
105
108
106
123
102
87
83
116
148
105
99
128
119
108
81
49
108
67
118
88
126
165
156
74
98
81
95
123
117
98
110
117
129
95
109
118
112
108
143
116
116
122
100
137
149
91
99
123
80
145
129
93
106
123
144
91
168
117
91
107
54
117
125
122
102
113
77
141
105
74
145
146
104
103
178
123
177
121
128
112
158
216
167
83
105
106
119
128
95
148
112
82
104
160
111
103
91
155
77
106
104
111
115
92
120
152
98
105
122
101
115
107
59
59
148
106
113
87
140
96
122
102
106
135
98
135
77
173
187
109
72
124
129
110
54
138
81
125
79
154
81
72
125
108
98
150
112
147
98
85
170
147
147
107
132
102
131
135
135
122
114
108
151
133
133
145
85
92
128
144
124
114
146
148
138
108
165
92
96
94
143
129
103
123
97
68
108
125
107
137
83
143
158
98
86
153
82
121
200
104
138
161
124
125
117
87
74
73
102
69
107
95
104
117
144
112
148
151
123
135
102
142
76
138
88
98
111
129
79
95
135
132
156
113
125
49
92
137
114
133
59
99
95
119
112
159
129
128
87
147
84
95
138
108
133
70
127
90
81
131
141
101
143
95
102
147
102
108
108
151
142
128
122
49
103
170
170
129
129
98
98
100
107
159
82
90
54
59
98
125
128
99
123
122
145
49
108
103
136
147
73
81
115
124
73
126
76
139
129
103
103
125
116
129
156
121
118
88
180
165
151
108
94
54
81
131
119
103
54
119
145
141
133
132
86
108
144
105
140
108
133
127
135
149
137
146
115
199
119
90
122
148
129
89
161
68
103
100
121
131
81
95
54
108
107
82
129
127
87
129
171
125
95
106
154
187
103
133
108
129
154
117
112
153
167
102
61
119
150
101
92
90
76
142
77
130
103
114
140
67
91
83
112
54
91
124
103
101
124
131
129
158
129
118
108
120
96
77
90
105
119
125
108
87
109
59
78
115
128
144
94
108
160
117
138
124
129
127
110
110
77
130
168
152
59
132
108
93
157
128
102
85
54
107
161
113
102
108
126
87
144
81
136
141
129
102
120
61
94
166
61
80
177
114
118
103
103
144
147
113
144
96
65
103
95
126
105
87
116
87
103
115
128
77
186
84
117
101
145
133
87
102
172
124
180
117
113
49
106
102
108
115
122
96
94
129
141
151
109
114
85
59
145
104
134
149
125
154
61
127
92
61
89
125
133
102
77
171
90
116
115
134
102
124
91
138
117
127
74
100
82
123
148
54
148
93
99
124
124
135
81
105
149
138
78
113
96
102
148
67
95
129
145
110
112
92
112
117
170
107
105
54
154
54
139
108
131
128
145
113
83
106
54
127
80
69
77
54
145
153
105
54
144
129
124
151
108
145
141
81
74
104
114
83
124
163
150
82
89
103
97
123
130
114
100
112
103
125
54
143
113
122
94
95
83
93
119
90
54
97
102
144
82
87
107
125
69
158
113
77
169
95
128
90
140
79
133
125
147
142
107
155
122
121
105
116
100
123
106
79
124
129
145
125
68
119
106
110
103
157
104
118
81
103
128
158
76
109
109
212
114
156
135
101
127
128
188
140
139
54
118
166
154
95
150
111
82
106
138
143
72
119
113
94
103
108
99
149
61
168
87
54
93
69
104
120
77
54
146
106
158
106
121
102
137
122
59
124
105
88
98
101
110
101
144
118
140
123
122
103
143
160
83
102
82
127
92
120
98
98
123
100
195
131
97
95
98
54
101
89
87
122
113
111
141
134
129
128
139
113
138
136
107
73
116
97
152
126
87
132
128
128
97
113
82
179
107
108
68
132
66
123
102
129
135
102
107
102
142
159
76
82
85
112
125
108
87
82
154
102
132
186
100
146
173
129
108
129
206
116
164
87
49
90
161
54
185
91
124
80
135
122
124
93
137
69
149
164
81
143
115
113
104
95
94
107
157
103
167
81
191
83
102
85
108
77
131
130
130
159
88
95
139
83
144
164
129
123
145
109
121
91
89
110
103
97
54
109
95
112
127
133
111
101
54
113
158
219
150
173
80
112
94
115
160
83
115
108
124
87
92
105
95
143
164
108
106
135
113
131
182
115
83
142
108
67
90
96
84
67
107
125
140
122
120
137
61
100
139
95
127
106
138
143
112
113
135
114
90
99
107
177
118
190
74
125
177
119
99
59
144
102
106
125
116
107
106
129
124
124
115
54
99
77
140
61
104
102
127
155
128
113
107
91
107
84
117
63
113
81
106
102
120
135
122
96
142
104
96
98
148
78
113
108
92
90
81
125
86
89
122
123
163
87
87
125
115
163
109
141
98
144
116
92
90
103
98
158
141
138
135
138
107
101
143
135
92
107
143
134
122
102
108
164
99
88
151
54
76
119
123
96
140
121
143
113
146
125
123
95
131
112
145
81
131
112
121
124
89
158
107
97
98
131
125
102
153
139
143
49
100
83
119
129
140
190
97
83
104
129
115
139
95
54
85
95
110
90
129
98
57
129
155
148
136
54
115
102
102
153
124
49
148
85
200
159
112
133
79
102
144
125
154
124
102
54
150
49
102
127
77
102
96
124
97
95
108
141
74
80
113
85
119
99
108
128
95
77
194
180
80
131
77
143
144
96
193
128
138
131
116
87
99
118
119
100
117
122
104
163
135
119
54
100
130
167
98
130
92
90
123
133
91
148
119
89
121
82
147
107
142
54
108
105
109
96
98
92
124
87
145
76
95
159
132
125
104
172
117
94
123
127
82
165
143
114
125
179
74
68
93
157
91
137
111
161
156
105
182
82
89
121
95
116
102
99
54
142
107
97
115
139
124
97
105
165
140
102
116
98
79
153
126
98
124
93
164
148
94
158
122
111
158
59
144
142
125
116
140
117
140
123
118
129
119
95
99
76
94
131
99
54
54
98
135
95
113
90
102
184
77
146
97
89
108
108
105
95
82
103
127
95
74
88
131
149
80
131
146
127
85
131
114
85
147
94
145
74
153
98
139
125
54
78
54
148
94
128
114
150
110
147
113
163
54
75
103
108
112
90
102
69
136
108
134
81
107
119
107
95
130
134
54
125
153
156
140
126
93
135
112
125
80
103
163
142
84
54
106
123
118
142
89
115
149
104
82
137
99
109
97
103
127
95
76
61
126
165
115
76
69
106
131
133
98
151
163
95
112
119
59
133
140
74
165
110
137
101
156
113
151
111
123
107
83
59
108
161
79
106
93
120
153
127
90
128
141
151
91
147
95
87
103
87
102
139
95
89
118
91
118
77
183
148
130
131
126
99
93
126
90
150
115
100
146
161
161
87
126
67
124
115
131
108
148
124
54
69
105
134
90
105
107
100
98
177
135
96
101
158
102
112
146
127
112
86
172
148
141
107
112
129
128
158
132
59
95
141
74
117
132
201
96
113
89
118
109
105
126
97
109
98
108
168
125
102
102
149
117
94
49
116
49
87
87
74
112
102
106
151
79
49
116
128
97
136
85
97
114
104
74
149
81
80
149
89
108
81
131
177
101
77
103
123
116
89
113
106
95
121
102
126
117
85
102
118
125
146
168
136
87
137
137
108
108
59
88
98
93
152
83
144
100
115
135
98
107
131
184
143
74
112
150
100
155
140
105
127
86
79
74
117
171
54
119
148
96
93
136
87
49
77
128
97
98
143
103
108
113
87
131
93
117
68
110
95
54
100
157
82
103
114
166
127
79
105
118
133
104
127
77
158
95
132
77
111
125
148
149
99
95
102
113
114
142
143
128
95
123
86
123
149
146
120
101
133
88
93
115
128
92
165
91
57
76
85
129
133
104
109
49
49
122
54
54
172
131
114
91
91
112
130
111
108
79
115
89
110
133
83
145
135
81
109
102
135
106
110
108
93
93
59
122
127
140
94
148
124
89
77
123
158
149
103
113
107
80
127
134
105
147
95
134
103
112
116
108
106
143
78
54
106
130
98
54
157
106
125
102
145
180
158
149
105
115
175
137
127
160
87
123
166
169
134
151
76
95
120
109
97
105
177
91
54
167
118
163
132
85
201
98
129
148
111
61
110
129
54
121
82
104
140
112
95
118
102
106
108
49
98
150
113
54
113
129
133
95
54
110
141
132
177
105
103
100
54
94
140
106
103
124
128
105
112
135
68
132
174
107
108
105
142
118
107
102
133
191
156
77
116
162
157
146
72
127
129
169
85
117
106
177
117
98
79
106
90
74
119
85
134
129
162
59
77
137
160
82
102
101
101
126
68
86
102
74
93
150
141
134
125
106
132
158
108
137
144
119
128
125
99
81
54
102
132
106
146
152
118
99
74
80
98
93
103
190
54
136
123
105
122
105
90
99
109
107
106
113
142
93
142
113
91
132
126
101
133
133
135
128
105
148
169
99
125
154
102
128
115
130
95
103
149
146
91
132
133
153
82
120
159
149
81
93
102
86
161
161
77
139
128
128
161
133
69
148
177
118
93
119
119
120
54
100
141
69
96
106
173
88
117
109
128
179
148
163
118
201
144
122
177
62
108
81
115
112
116
138
81
77
83
136
93
77
144
155
93
143
153
49
131
126
122
125
102
118
134
123
148
101
114
151
103
114
150
164
71
59
54
90
107
140
108
156
129
112
114
144
148
133
67
108
122
126
120
74
135
135
87
102
111
80
115
114
119
124
111
120
87
115
110
83
90
112
76
172
87
97
61
119
133
79
104
132
82
81
115
103
123
117
97
90
163
79
144
158
170
90
124
148
81
115
123
118
91
76
95
123
101
139
103
110
129
61
91
74
116
105
108
135
54
103
102
131
160
115
210
159
78
142
114
54
59
82
74
131
73
95
139
117
129
78
112
164
125
81
138
152
110
87
69
129
137
78
54
108
173
54
131
165
138
129
54
49
148
108
111
76
74
107
67
90
125
127
103
54
103
127
117
102
61
133
96
59
103
144
105
144
114
128
82
120
93
85
54
129
73
154
95
218
119
115
119
59
76
155
107
140
68
59
76
129
128
102
112
100
90
131
108
163
149
139
143
107
125
113
80
102
86
130
108
113
114
96
95
124
114
101
85
124
116
135
134
98
114
105
148
93
96
54
54
59
76
84
123
85
139
171
163
116
134
108
90
54
106
177
67
110
106
104
145
87
97
92
115
151
95
103
102
143
102
113
105
108
118
138
110
127
61
83
140
130
109
157
122
90
84
133
157
78
105
129
144
82
88
105
163
54
103
122
119
153
59
163
138
77
95
118
165
135
87
125
110
146
88
54
141
144
143
133
147
113
97
106
131
128
102
147
146
126
148
81
49
102
110
125
81
113
133
108
142
119
140
137
96
126
112
95
133
125
97
160
128
102
95
180
98
148
142
102
115
97
76
79
198
131
115
86
103
89
98
138
134
122
180
125
179
68
141
59
160
158
151
91
115
156
140
128
102
78
161
119
146
137
148
86
137
76
138
128
90
85
185
114
173
113
80
115
117
102
156
108
92
116
142
100
118
110
125
54
96
86
116
151
49
88
163
85
100
90
137
54
177
54
142
153
104
85
70
74
68
133
128
81
90
131
108
130
133
76
157
103
102
104
95
141
86
112
85
131
148
144
127
141
54
42
128
124
117
124
54
129
112
107
179
109
172
98
122
97
92
106
107
125
118
163
157
136
144
92
79
147
105
113
102
134
94
93
173
102
169
85
102
138
184
102
113
148
139
84
49
111
112
137
117
98
90
95
107
143
109
148
131
125
156
104
133
82
140
137
67
135
91
78
90
108
92
116
80
108
133
147
97
171
140
108
158
135
147
133
140
126
111
138
134
77
81
85
102
112
81
71
109
113
85
157
98
125
127
89
95
112
171
108
157
190
104
82
160
90
111
97
147
49
101
76
59
54
49
151
98
118
112
140
106
118
87
95
87
167
59
146
49
68
123
166
115
147
115
115
105
168
115
129
98
154
107
150
173
95
118
100
112
111
87
67
122
76
164
123
146
132
144
119
177
97
83
144
54
74
61
141
102
122
98
95
133
120
130
81
123
159
59
96
81
81
97
81
81
122
125
107
147
190
78
61
131
174
126
132
165
111
85
82
113
132
99
74
87
67
125
153
131
174
108
89
123
101
109
140
85
105
99
85
140
161
83
143
108
54
67
119
124
130
122
116
101
151
102
144
155
115
136
96
99
172
83
82
96
103
113
143
83
69
133
81
78
87
101
54
91
81
128
90
76
114
102
141
113
79
94
123
75
133
109
133
105
73
90
68
111
132
76
113
95
146
98
127
87
115
132
54
93
132
114
113
78
156
125
109
113
123
97
120
207
143
108
113
156
164
77
128
177
90
106
99
113
87
54
125
91
143
81
91
82
120
200
119
110
96
190
156
97
126
74
132
112
106
124
113
124
101
108
107
120
89
107
83
118
127
91
138
102
107
103
143
101
106
87
120
108
131
141
108
70
108
125
131
131
135
108
75
78
102
98
81
77
99
143
92
109
116
134
106
100
129
139
79
127
77
108
95
98
125
125
127
124
102
137
122
101
103
122
88
88
147
81
113
110
138
129
78
93
130
168
77
92
49
108
121
120
117
81
131
123
101
77
126
61
163
123
125
168
125
126
89
120
76
119
158
125
137
97
101
104
117
102
54
131
112
91
154
117
171
126
175
155
103
156
138
93
95
117
54
89
101
111
153
54
118
54
123
125
81
67
102
103
89
61
140
78
108
113
102
96
145
112
163
135
80
131
137
135
89
108
135
147
116
111
125
69
54
109
146
110
158
102
166
93
117
135
141
115
54
129
163
90
133
102
138
102
183
54
67
148
133
129
90
129
153
117
195
131
95
113
132
68
158
101
95
144
136
118
108
129
98
85
169
95
128
128
144
129
92
83
67
148
125
98
97
67
144
94
116
118
54
133
113
141
100
74
104
109
83
102
94
102
77
123
112
153
111
125
100
112
117
141
92
93
94
125
87
145
102
110
115
120
108
54
139
89
135
147
152
121
102
108
127
129
123
133
109
125
161
102
126
67
117
125
95
126
87
115
102
94
100
101
182
96
107
105
162
54
137
108
118
54
54
122
115
129
105
159
133
142
99
122
102
59
135
77
100
59
85
61
95
102
91
67
95
137
111
90
87
104
54
90
125
54
108
95
156
98
105
103
102
158
67
91
124
128
113
90
145
95
143
151
131
118
113
143
160
145
120
177
104
112
90
147
71
165
96
95
81
148
109
149
90
158
119
95
125
98
125
79
159
143
119
88
93
103
100
120
83
102
63
149
106
131
149
148
77
105
67
155
110
105
90
114
121
143
149
93
145
165
136
100
89
165
98
82
135
96
120
124
93
145
74
126
95
101
165
147
144
80
133
128
75
124
118
141
88
117
93
96
74
138
122
90
96
148
95
163
61
103
143
102
133
158
95
118
74
110
139
102
90
123
61
96
141
119
132
132
84
128
140
149
146
70
91
102
113
138
87
150
91
142
196
108
59
113
148
106
117
102
177
86
135
120
139
114
98
54
165
121
131
110
122
122
143
128
102
151
123
95
81
81
76
98
135
165
117
143
94
122
135
117
89
87
95
54
143
123
65
163
180
78
141
131
151
83
81
104
54
81
93
129
147
68
95
95
54
89
132
113
191
158
132
98
118
68
74
54
72
151
116
104
82
84
98
97
77
128
104
74
127
156
167
114
142
138
101
54
157
160
93
139
80
103
141
144
92
116
157
59
125
82
133
85
118
123
123
106
61
49
110
149
130
165
93
76
114
165
150
127
113
74
101
133
110
113
49
108
95
125
129
119
68
87
145
90
131
90
76
133
117
102
119
54
90
139
170
113
111
129
54
104
144
82
95
108
88
116
119
105
157
93
118
108
158
93
133
125
108
125
102
171
95
123
126
128
115
164
70
119
125
108
143
126
61
146
94
112
89
106
78
108
106
141
158
110
141
78
67
171
87
136
81
114
97
96
87
103
114
119
49
135
113
139
128
157
101
98
115
126
117
103
122
127
91
116
144
73
102
92
106
80
110
103
74
139
89
177
135
81
81
108
200
127
143
94
74
112
112
82
102
142
95
177
115
128
143
78
141
136
115
59
131
103
91
106
130
147
98
95
134
115
54
129
124
149
101
74
128
54
168
59
127
70
126
140
90
145
54
137
134
67
139
139
132
69
102
77
109
127
95
86
95
142
105
85
132
83
127
84
100
113
158
140
147
123
105
127
98
148
98
123
104
49
74
74
148
67
74
153
128
94
115
105
121
90
54
115
123
92
62
103
95
109
149
141
77
123
119
156
115
122
77
83
125
101
131
154
172
126
126
103
76
117
91
142
90
153
81
158
54
125
117
130
118
148
122
78
76
139
149
103
112
102
160
77
100
154
127
128
115
103
131
160
76
147
132
82
95
78
153
67
153
116
134
87
156
177
114
99
120
107
135
125
129
108
81
165
127
105
132
106
54
158
105
112
102
157
103
90
158
122
104
117
83
143
83
161
90
103
125
120
155
107
90
123
104
143
67
155
54
54
119
105
95
94
54
111
103
67
103
83
140
103
105
98
95
80
127
45
118
119
154
167
132
141
125
96
132
99
95
128
145
151
59
127
97
125
102
49
103
82
116
139
120
144
87
151
103
108
74
137
177
128
95
98
131
108
129
54
125
119
82
120
123
106
129
122
59
98
103
99
98
130
85
152
100
118
157
118
138
77
102
103
102
141
102
49
178
136
54
105
106
98
158
117
113
163
126
103
77
148
118
100
87
158
59
59
112
95
74
108
83
68
78
165
109
84
118
123
78
78
103
129
76
124
107
81
122
132
106
81
127
98
122
102
161
93
116
145
123
138
95
138
90
110
142
90
133
112
126
165
74
74
141
152
108
125
108
136
103
160
95
135
157
91
129
91
137
136
157
78
102
127
148
102
69
100
126
102
104
113
119
84
81
159
138
156
150
157
127
142
131
139
90
87
98
97
106
168
149
106
113
113
131
127
120
105
139
77
100
106
77
164
54
108
123
125
146
104
80
91
165
110
108
140
158
102
107
143
152
114
119
103
126
67
164
84
143
89
180
74
102
163
158
179
170
177
107
87
102
153
141
144
133
45
120
116
102
143
133
106
155
99
120
102
95
59
148
113
80
110
148
95
54
103
83
59
77
145
133
105
108
126
177
155
130
125
128
124
107
73
67
49
93
103
140
116
169
132
105
113
106
101
102
158
100
98
131
82
119
172
85
159
122
129
49
140
102
107
178
76
123
95
152
89
117
105
131
91
117
149
98
100
93
92
151
109
65
125
114
149
143
129
131
167
95
154
81
86
120
144
177
74
61
120
131
113
143
95
105
164
49
54
88
157
69
120
177
83
127
92
110
189
155
87
97
120
147
80
127
123
153
95
133
133
122
80
87
145
111
104
131
172
103
81
119
78
132
114
83
113
161
97
116
95
140
130
128
87
141
104
98
102
99
144
94
102
133
133
165
125
98
119
139
86
138
129
120
95
95
59
111
130
102
163
122
94
122
85
100
125
54
144
148
155
143
84
85
110
98
99
141
125
121
191
113
94
93
131
99
102
144
113
154
110
139
107
87
76
143
80
103
138
139
143
97
92
168
126
130
107
112
171
74
117
106
148
106
83
160
149
132
133
121
54
74
125
120
111
148
108
71
88
118
90
74
98
125
139
137
99
140
165
104
104
95
144
98
123
54
101
107
109
191
102
144
144
133
103
149
100
106
190
105
128
74
133
87
104
105
57
102
74
110
74
54
118
141
80
67
108
49
111
146
134
125
102
131
121
146
125
97
126
95
122
117
133
119
113
164
68
54
107
136
102
83
148
105
133
98
161
102
95
95
86
54
122
68
117
82
139
116
117
103
109
132
97
209
65
82
108
81
157
109
110
101
115
95
105
132
49
107
96
110
127
186
93
140
83
128
129
138
115
83
115
73
108
87
78
90
96
108
102
95
95
103
91
103
143
105
157
89
139
155
112
148
54
125
114
103
77
115
98
103
108
103
91
153
108
167
188
49
81
111
123
101
49
101
193
54
107
118
134
108
128
131
225
122
78
124
87
108
81
149
177
49
95
125
131
120
98
118
54
140
112
93
124
54
86
127
122
87
102
138
125
124
93
141
119
92
106
59
119
104
90
132
172
78
113
117
119
104
106
125
93
95
139
89
97
108
160
133
113
154
147
82
82
102
116
100
95
140
98
136
128
81
130
102
81
106
113
185
118
137
144
93
144
67
77
138
93
129
54
116
122
131
110
144
124
81
79
130
177
165
114
106
95
118
77
127
117
97
113
109
142
114
126
120
128
129
125
54
86
102
120
123
105
116
130
65
108
102
111
108
144
106
145
159
87
93
59
124
115
117
159
107
78
92
97
131
118
109
77
87
143
108
98
140
94
102
127
115
98
169
93
128
108
115
113
87
219
113
143
144
90
103
99
106
113
92
74
92
109
99
102
108
108
177
107
81
103
120
140
113
153
114
137
45
82
133
125
81
170
119
158
119
87
135
146
132
125
77
76
141
94
82
142
123
139
132
82
120
119
147
91
74
102
88
131
93
142
90
140
154
114
108
108
99
144
136
121
158
148
155
133
113
115
93
145
54
113
80
116
180
92
150
156
133
87
170
160
125
155
179
74
81
128
119
106
145
87
69
105
115
177
158
142
130
141
113
139
155
119
141
87
115
85
101
54
116
105
114
161
115
126
59
194
54
93
98
65
95
108
116
110
119
184
145
120
140
169
131
132
54
103
122
93
102
132
59
145
85
93
120
128
82
155
106
133
54
135
123
145
125
112
108
106
78
81
125
54
102
122
165
98
61
107
92
83
115
98
54
133
121
110
110
81
148
74
127
129
84
161
76
130
95
89
108
81
101
138
161
98
62
112
54
77
104
91
105
85
111
141
138
137
93
135
120
145
90
130
106
54
96
158
81
81
125
134
143
59
78
116
143
95
168
141
97
81
91
59
91
95
103
97
54
125
95
141
87
87
102
113
98
49
78
112
103
128
125
91
102
143
92
87
155
135
125
93
113
117
133
145
117
97
149
120
108
177
104
82
119
139
110
82
54
109
74
76
136
90
83
123
120
82
132
106
143
54
93
102
81
144
80
105
110
96
148
143
100
102
103
129
81
114
90
112
101
129
115
105
139
165
110
103
169
143
98
99
90
117
145
108
104
117
105
81
163
104
84
123
113
82
102
114
105
89
176
96
74
121
199
130
95
90
59
134
98
130
124
54
96
123
163
120
87
147
81
133
105
122
138
114
103
98
144
141
179
102
141
98
96
129
112
139
102
148
149
102
134
59
120
121
92
124
115
90
132
95
141
81
54
54
102
106
143
172
108
90
138
108
179
126
168
86
54
115
150
87
108
133
113
129
165
151
171
113
165
90
108
125
98
120
82
103
108
172
134
97
78
105
145
83
146
161
91
102
148
144
146
135
54
103
93
122
117
106
141
78
108
107
123
102
95
129
101
116
144
124
126
54
113
89
131
149
148
144
121
74
54
153
110
127
119
116
148
122
54
76
108
120
129
132
103
74
77
154
97
102
148
102
113
104
96
143
117
102
119
118
133
115
125
54
200
118
103
133
126
123
125
143
139
120
130
135
219
101
148
116
127
85
162
141
122
87
99
128
87
133
98
108
54
135
135
103
103
70
153
147
171
129
105
82
141
117
122
106
99
95
108
139
95
144
117
106
103
125
93
129
91
173
125
128
128
98
86
112
137
138
114
108
148
76
135
143
155
130
86
68
142
134
87
82
54
125
150
145
93
140
168
133
127
101
118
101
91
119
108
141
126
106
95
125
80
119
120
101
119
112
91
115
135
99
177
76
54
121
124
98
87
49
105
105
95
102
155
105
87
81
151
133
96
112
116
106
108
95
120
98
127
115
108
110
178
83
81
104
104
101
87
123
175
148
111
158
78
161
133
84
108
138
54
68
143
77
148
117
141
78
116
92
164
104
94
85
103
103
98
103
161
73
96
128
54
54
139
107
144
95
102
109
74
87
108
74
107
127
134
120
129
81
93
133
49
153
74
104
98
128
54
120
129
161
96
82
87
103
81
105
102
145
102
128
153
95
104
152
101
97
160
118
95
154
149
104
169
103
133
105
90
139
91
111
99
91
68
95
130
108
80
54
74
85
117
110
142
83
117
96
95
74
62
126
54
172
99
77
134
103
54
68
135
73
93
95
110
133
102
129
135
54
78
116
112
119
80
124
123
49
153
108
126
151
87
131
111
83
125
108
115
145
123
98
128
108
49
85
113
134
130
128
168
98
132
124
94
118
127
87
81
102
103
104
141
108
119
147
109
163
135
90
122
91
123
108
89
150
102
111
88
123
133
134
113
145
104
107
119
100
84
118
90
127
102
148
108
120
128
116
54
100
147
97
118
119
129
68
134
116
159
113
133
151
143
145
108
79
125
95
107
134
76
118
96
108
106
149
114
113
67
165
162
80
155
142
100
103
148
142
122
54
79
148
103
133
106
87
71
127
116
82
114
74
205
139
166
150
109
76
108
97
125
98
118
105
72
177
49
123
118
95
106
125
54
132
149
74
54
104
158
109
95
49
186
74
103
111
77
99
79
131
108
177
108
129
95
116
72
130
102
125
145
123
98
200
78
180
49
106
125
131
49
102
106
67
74
88
134
87
106
87
149
54
69
89
93
78
113
156
120
98
115
136
154
140
119
82
146
118
121
115
140
126
93
147
96
80
125
90
92
158
144
172
120
152
105
113
95
91
108
148
129
130
117
178
126
146
138
83
102
97
122
103
95
102
115
133
103
107
161
123
143
122
89
138
157
135
113
143
80
95
95
115
119
102
144
132
146
103
112
120
99
102
131
103
144
141
54
155
120
87
135
151
148
74
165
111
127
54
128
102
118
162
112
85
116
108
90
70
160
163
59
113
148
158
121
77
107
102
83
142
134
156
97
54
83
150
134
145
155
177
147
59
105
143
111
89
184
82
153
119
125
107
122
105
49
112
124
145
77
128
128
169
96
67
144
176
102
129
116
118
153
113
110
144
145
105
105
106
81
167
103
115
129
54
132
95
89
96
116
91
135
79
104
122
107
79
114
94
132
128
138
74
76
127
113
170
110
81
177
81
113
121
178
106
49
99
119
119
119
99
102
105
171
108
193
127
120
120
108
95
146
81
101
101
105
98
108
98
128
97
140
92
161
61
147
104
139
114
144
135
146
147
135
141
121
131
121
76
54
77
113
174
111
59
164
110
54
111
144
121
142
108
81
74
147
243
65
98
155
95
76
103
104
93
99
90
147
98
95
96
107
77
144
93
102
54
98
122
74
80
84
146
101
81
73
95
133
139
90
116
118
118
88
122
126
49
144
98
166
94
59
83
81
129
98
103
134
140
95
87
111
116
85
139
124
218
122
106
148
59
108
82
134
128
107
98
136
115
90
102
95
102
132
96
158
138
108
151
118
165
115
98
82
135
100
153
81
85
148
131
74
128
143
69
99
87
102
104
77
118
117
95
97
98
149
106
123
147
91
95
99
125
136
79
102
129
113
115
135
119
113
105
186
96
101
153
142
96
49
128
90
147
106
156
127
79
125
144
109
143
126
157
74
119
92
94
158
77
154
126
124
102
116
85
153
128
91
106
74
137
126
126
89
77
102
108
151
103
77
107
98
148
54
97
128
67
218
145
93
102
143
102
102
115
125
78
67
131
108
49
81
128
110
173
122
102
157
98
98
104
76
173
150
130
145
177
96
138
169
124
134
132
73
101
113
155
123
49
152
146
90
148
54
87
131
147
107
140
146
104
129
105
160
130
107
108
110
170
78
93
91
90
94
91
128
80
80
98
102
103
108
106
119
121
146
104
91
81
128
127
158
49
141
85
155
114
136
82
115
105
148
54
100
117
128
100
139
123
83
112
131
49
148
67
128
145
91
131
120
113
139
172
165
54
79
95
131
77
186
148
74
103
176
108
138
112
110
139
69
130
194
125
120
107
87
172
95
144
98
190
158
158
81
95
133
107
49
95
90
101
90
49
112
142
179
149
94
93
147
125
119
102
99
106
128
108
86
151
135
109
106
108
87
140
95
155
120
92
116
161
180
106
49
81
126
113
144
95
87
160
91
108
115
54
128
161
94
135
94
171
123
154
89
145
143
96
119
112
102
76
129
169
108
98
140
116
134
117
111
127
78
49
97
92
131
54
120
139
90
112
149
102
140
149
122
49
102
160
124
91
102
102
112
153
92
100
150
98
120
116
127
108
125
122
49
125
140
81
109
108
122
153
186
93
130
131
142
49
90
87
108
128
115
65
100
100
81
77
132
123
125
99
95
90
113
115
81
146
95
123
59
87
87
99
105
124
81
84
122
95
107
138
100
108
147
122
125
177
158
87
88
120
143
143
162
143
125
95
102
155
167
113
101
113
97
154
93
105
106
98
113
144
131
109
85
161
177
132
154
71
129
101
177
124
116
133
123
180
133
87
95
121
87
87
98
123
116
115
149
125
160
54
122
59
106
125
87
96
116
96
90
54
112
89
107
85
140
119
74
132
93
84
95
129
120
119
106
103
125
131
102
108
97
157
96
80
87
108
133
116
115
93
109
73
113
148
143
54
133
77
125
124
127
129
122
95
132
74
102
101
147
107
116
138
131
122
135
162
156
133
151
131
59
131
115
89
133
113
156
77
98
87
150
90
117
116
120
123
150
140
104
68
129
102
93
111
121
106
93
80
94
90
141
119
107
159
185
96
68
98
119
131
156
144
102
80
104
118
144
112
122
92
122
148
143
119
90
147
190
102
126
91
111
83
135
113
96
67
133
121
159
108
137
102
100
102
85
148
90
118
140
106
108
87
120
82
103
94
119
156
82
125
123
108
74
139
139
105
106
95
139
108
163
126
125
133
111
98
80
143
70
133
114
86
80
107
144
159
97
143
131
172
90
97
90
81
139
105
164
125
103
75
115
67
141
106
108
169
172
108
181
106
116
206
159
77
120
108
81
154
106
118
128
110
133
103
129
116
100
110
137
118
73
136
87
95
148
200
121
163
120
78
96
61
122
112
102
102
137
107
106
118
115
139
133
149
54
106
122
121
107
217
122
143
89
77
112
74
82
61
157
199
102
106
168
139
112
87
135
205
97
79
141
113
120
140
118
120
100
82
143
149
94
144
93
74
102
102
94
110
85
108
107
122
96
116
81
96
59
151
123
153
146
104
98
147
81
144
104
148
87
98
116
109
106
104
119
131
147
59
94
148
82
88
160
54
103
133
106
145
86
123
91
91
113
81
108
118
121
146
122
107
78
96
100
112
113
109
130
54
69
143
102
138
67
136
120
89
49
137
146
108
131
119
128
116
157
83
131
134
68
124
61
112
102
109
115
154
105
54
97
95
90
108
54
141
67
103
129
192
93
124
129
98
120
110
88
89
161
87
98
102
110
72
93
74
102
68
114
137
131
91
106
103
82
151
128
108
105
85
69
108
119
145
98
111
152
146
149
89
136
84
108
98
77
122
116
105
180
78
102
146
101
78
150
134
224
113
98
95
132
81
100
144
92
83
92
125
69
134
100
140
118
78
83
116
105
194
152
105
144
151
59
75
104
140
143
151
95
105
145
128
113
144
144
115
80
150
137
113
113
142
100
49
109
78
87
107
116
135
74
76
117
125
109
119
108
113
94
163
68
91
128
155
129
94
76
95
107
161
93
150
102
139
107
139
95
179
131
122
144
97
142
115
87
106
101
91
102
118
144
96
128
109
103
105
120
129
128
98
49
110
129
93
120
127
141
129
83
118
139
103
99
80
95
163
157
139
133
104
109
107
113
137
149
117
105
96
127
102
140
109
107
117
109
128
154
125
108
144
76
114
49
143
129
67
125
147
118
91
126
59
198
104
108
100
129
74
145
168
99
164
87
186
116
123
163
84
102
99
154
95
96
133
154
99
115
54
80
176
76
129
102
149
170
70
77
73
140
127
196
104
54
118
74
95
128
117
124
135
71
70
158
124
118
129
120
86
139
81
108
161
118
119
54
54
149
118
135
119
106
134
102
98
127
125
110
59
107
54
155
148
200
101
174
94
90
102
118
124
100
93
122
123
118
155
140
131
61
148
108
115
79
162
155
108
122
79
128
108
130
96
156
112
173
185
149
122
116
87
107
95
119
132
98
161
54
111
54
140
94
137
128
82
110
86
88
106
81
96
102
127
87
124
233
129
107
96
89
104
103
173
123
102
97
97
89
79
108
104
146
102
108
188
81
182
73
85
157
77
138
102
102
123
102
93
79
81
104
127
106
146
105
111
102
85
144
116
103
54
59
54
159
49
103
88
128
113
95
86
131
83
112
108
54
107
148
127
103
94
124
133
113
160
149
133
77
108
120
123
103
54
106
164
107
117
107
132
102
77
127
116
108
133
90
90
150
119
54
189
90
117
157
89
49
140
148
157
98
118
113
113
146
102
83
146
133
133
122
152
118
90
132
108
95
113
54
109
125
73
155
106
54
146
74
90
95
178
81
141
147
127
90
105
112
127
102
122
154
90
133
113
108
54
123
81
138
118
115
120
107
141
155
115
98
105
85
107
96
131
124
180
105
54
122
91
184
125
134
67
103
95
92
125
127
125
121
112
90
106
93
136
144
98
154
189
123
108
91
177
102
149
83
59
123
155
95
160
162
59
135
135
81
102
125
81
82
150
131
54
113
98
99
49
115
59
54
125
127
108
123
143
164
132
91
119
121
129
131
123
157
105
102
98
105
92
102
155
108
54
81
127
91
102
98
143
139
87
165
95
145
96
141
158
105
154
122
105
129
97
161
87
98
74
177
71
139
54
179
102
97
147
99
133
131
144
118
155
68
54
106
107
59
77
143
141
85
124
108
110
99
107
125
140
82
87
83
67
103
146
152
79
106
93
105
86
54
54
99
150
99
105
134
95
146
59
136
109
102
134
93
122
82
115
148
140
164
102
125
76
126
132
81
108
95
109
89
107
134
69
99
78
168
123
78
107
142
136
145
143
78
115
133
102
125
107
155
125
49
145
131
120
91
84
54
135
54
146
125
93
119
204
138
117
143
109
220
139
145
163
54
108
145
140
109
94
151
128
259
54
90
127
141
93
102
125
123
130
103
140
177
54
123
160
101
102
115
170
114
108
113
65
107
103
139
124
115
109
145
188
116
85
74
175
54
152
102
74
125
159
143
80
180
158
59
78
80
101
102
126
132
118
108
98
103
131
82
148
159
105
115
145
69
127
77
131
49
121
105
104
125
112
95
108
161
106
195
104
161
100
108
139
59
134
113
156
112
45
153
124
113
102
132
69
107
128
98
120
49
146
168
103
135
93
80
89
59
108
110
132
90
144
157
96
140
142
202
95
122
140
89
74
127
108
87
92
178
87
54
81
108
126
91
95
133
106
87
102
117
93
77
95
186
128
119
106
77
138
125
96
128
119
132
115
106
147
102
159
173
138
116
54
143
167
103
74
108
81
154
96
112
54
102
123
179
113
92
89
124
88
105
103
108
111
123
118
83
150
89
98
136
108
133
153
103
146
61
95
134
85
132
119
92
144
95
81
82
114
81
108
125
110
161
98
102
148
159
133
107
102
97
118
119
95
59
103
112
158
111
138
151
179
97
147
108
91
102
105
121
102
133
141
115
120
105
121
113
82
125
80
54
135
148
123
126
118
126
78
90
76
140
144
118
128
90
81
124
100
165
135
128
148
199
81
108
93
98
112
98
82
124
93
54
97
184
67
95
129
128
110
61
148
100
118
148
105
135
180
118
93
171
137
127
87
112
154
148
128
141
98
94
95
74
171
133
80
49
95
102
116
96
161
88
189
76
96
82
124
90
121
118
170
78
77
113
143
98
106
175
140
160
90
131
166
151
103
150
113
98
135
109
102
95
98
133
94
103
116
138
188
113
83
70
143
85
128
127
132
143
121
49
54
78
104
97
129
100
168
138
98
141
59
112
108
54
135
118
103
125
102
77
130
111
102
119
153
76
123
69
102
148
107
69
115
91
96
88
153
125
98
151
153
128
135
103
108
102
102
116
76
131
103
54
146
165
143
115
115
142
131
137
120
83
130
108
139
144
102
102
124
92
108
141
89
80
130
123
124
75
118
122
138
107
98
125
59
129
68
124
134
83
98
145
133
74
85
88
81
125
85
91
81
95
105
139
115
78
114
78
102
125
81
128
132
97
100
120
125
98
74
153
120
77
74
134
138
103
125
113
150
124
148
101
148
149
127
149
167
108
54
74
111
129
120
143
131
137
120
107
93
133
153
113
168
59
167
91
95
145
98
184
123
81
103
133
61
109
82
119
67
82
106
133
109
109
100
180
103
151
98
83
98
113
168
118
90
103
147
169
100
98
125
133
148
96
95
158
146
98
103
138
91
87
134
140
88
118
168
129
145
198
135
109
120
92
95
93
134
129
95
118
103
127
149
67
145
54
89
114
87
115
98
59
123
113
125
102
141
158
83
108
87
106
135
144
154
106
129
131
54
102
104
120
160
106
95
67
81
132
112
128
127
145
128
87
123
54
148
153
102
59
108
108
145
158
132
138
157
102
91
98
153
159
105
107
103
106
135
117
98
95
134
104
138
97
140
119
131
98
120
150
124
142
107
128
109
74
102
103
98
126
186
78
74
146
110
82
131
166
145
134
80
166
95
149
77
100
148
98
130
142
165
112
105
89
54
102
133
95
144
102
165
54
131
105
49
114
94
59
72
108
182
91
101
115
115
98
145
122
77
125
96
54
82
82
143
84
145
100
93
100
102
59
128
109
113
121
90
77
125
119
128
138
127
49
145
80
143
126
56
132
106
95
67
54
133
82
135
115
155
142
119
122
123
116
158
123
108
148
93
119
107
158
133
105
148
142
105
93
54
180
140
96
59
54
151
120
99
177
97
102
98
138
102
81
85
102
101
94
83
74
108
144
139
165
116
82
158
113
145
59
131
147
110
127
74
133
99
101
140
144
121
61
54
102
97
178
113
98
128
83
146
49
112
204
54
159
108
77
121
118
166
137
135
111
116
112
92
72
87
77
91
108
108
125
110
76
118
130
165
142
91
85
118
155
105
105
130
98
113
125
159
84
83
116
116
134
182
95
59
98
125
162
98
105
144
103
139
178
78
120
72
151
99
151
105
95
122
141
78
74
108
125
104
67
101
118
139
163
170
133
124
156
116
108
160
125
145
99
113
54
119
126
137
145
146
74
158
101
95
105
67
97
81
99
117
106
122
120
112
121
133
144
82
108
125
61
107
95
134
123
124
98
98
110
110
125
149
78
78
131
177
98
67
61
92
134
102
97
178
146
81
96
122
142
103
107
154
137
120
103
131
59
122
144
128
80
59
153
59
109
87
155
108
88
102
75
111
54
91
137
133
148
74
157
106
102
174
125
113
107
54
121
98
96
162
109
104
115
125
91
145
129
139
102
77
119
126
54
90
93
82
131
131
99
108
100
88
80
131
143
89
148
108
110
98
94
125
114
131
97
125
169
78
95
99
95
132
81
123
112
122
113
95
139
180
146
150
98
77
95
54
130
92
82
54
124
148
150
177
93
102
134
107
132
121
98
106
135
111
134
111
128
136
74
105
95
54
129
117
133
127
95
104
87
90
148
174
113
105
90
88
140
156
95
140
134
97
95
148
131
105
139
110
92
142
147
102
118
99
131
128
124
108
168
104
102
109
102
88
199
120
127
123
148
105
54
102
84
78
77
138
86
144
102
139
89
95
102
88
160
54
159
141
133
93
115
77
100
127
74
100
112
123
150
49
102
156
124
146
126
93
101
86
129
91
104
116
139
118
98
140
96
103
106
103
125
130
95
54
87
126
79
100
95
96
138
136
129
125
124
103
138
151
113
118
84
125
95
177
108
103
129
100
97
107
163
107
90
146
113
79
100
54
105
126
119
140
133
93
133
157
110
102
126
143
85
115
74
144
102
145
108
136
93
112
147
169
148
146
87
98
54
54
143
114
102
90
125
79
132
143
143
112
102
140
131
108
105
102
102
125
109
124
54
96
70
107
127
148
109
84
118
133
79
148
104
112
177
102
113
87
138
65
108
140
149
135
126
125
80
105
118
49
96
134
118
102
102
90
126
110
95
98
102
114
104
90
147
76
98
226
163
83
108
98
114
139
157
77
114
108
94
54
150
125
109
106
94
148
109
95
139
169
231
103
112
81
144
103
106
108
95
49
112
67
163
161
108
135
54
103
106
143
113
145
97
127
180
108
117
155
90
120
106
78
94
126
158
153
142
133
147
108
160
54
108
79
124
151
119
105
128
148
116
87
124
105
123
110
113
124
127
134
140
146
190
125
138
54
113
76
102
117
173
139
87
177
95
131
95
115
95
120
125
154
128
115
179
143
99
97
119
85
102
122
117
101
100
110
76
161
105
99
113
177
89
102
169
97
93
123
95
108
90
112
127
103
87
153
107
134
139
123
148
116
106
90
137
95
122
165
87
59
123
161
168
124
105
73
151
161
108
93
122
103
129
119
147
93
124
105
94
95
103
167
108
68
115
78
95
134
125
98
194
97
126
114
108
93
120
74
78
202
142
125
77
120
152
173
145
115
173
116
74
54
95
115
59
104
54
116
83
101
167
134
129
109
108
96
150
54
49
119
193
78
93
149
87
78
125
105
117
132
78
144
167
104
96
102
139
105
144
83
117
89
145
104
118
97
87
90
138
168
67
111
129
54
83
110
117
172
118
127
94
120
128
109
166
144
108
168
111
110
129
89
89
78
100
131
118
118
135
108
108
130
138
156
163
123
151
91
102
100
113
146
140
54
133
130
93
139
74
136
120
95
139
85
113
121
182
94
144
105
120
96
90
59
106
74
102
112
110
148
95
59
81
83
143
134
146
120
107
117
160
95
140
116
83
83
219
98
67
95
160
107
87
127
106
137
130
136
102
93
115
54
54
115
147
119
190
54
115
145
145
128
96
105
128
121
159
104
103
126
146
108
98
123
54
103
135
113
147
105
149
74
89
113
123
166
125
177
131
59
125
80
95
95
97
69
107
76
114
123
87
145
94
77
170
115
105
96
101
130
81
113
154
49
105
113
81
131
103
128
99
118
132
95
81
147
104
106
130
123
85
123
160
136
54
124
115
92
123
151
109
102
177
116
136
113
175
131
115
103
95
136
154
95
49
145
91
117
127
105
92
98
105
54
119
147
109
140
93
144
130
73
120
78
125
81
139
69
95
83
120
123
130
81
81
82
82
95
133
106
86
61
95
131
135
154
68
124
143
77
105
102
90
127
127
108
49
149
142
116
152
115
98
172
135
67
125
68
87
136
67
54
113
54
99
49
160
143
81
103
121
167
93
114
54
102
111
106
139
103
179
101
80
110
114
83
90
124
149
146
137
49
54
91
114
108
124
84
90
65
155
179
129
129
54
137
160
155
81
113
101
158
121
133
54
138
105
104
138
142
45
103
117
165
150
59
82
67
94
108
127
140
138
108
158
114
88
108
67
133
140
97
120
111
123
77
131
165
89
97
129
112
103
158
81
145
77
112
103
119
103
146
93
69
114
120
158
131
133
54
95
173
154
159
108
177
161
59
139
65
77
97
102
144
135
131
119
148
131
133
105
126
98
128
154
168
117
104
144
126
98
115
116
97
104
143
156
117
119
79
69
94
93
117
108
94
93
96
127
57
54
134
191
143
142
98
103
138
96
81
105
155
136
138
80
128
148
98
69
108
127
93
93
106
103
122
95
77
117
120
145
136
115
49
74
174
141
133
100
156
147
132
81
84
108
163
152
49
163
124
120
54
108
138
111
130
159
169
108
158
97
101
77
136
144
89
91
89
108
161
119
135
77
131
120
82
67
69
97
139
95
190
102
149
49
95
134
91
102
81
147
98
140
171
142
142
113
150
194
77
107
95
99
146
120
116
128
148
102
137
102
81
150
54
122
79
159
113
106
113
59
115
100
182
98
125
98
67
132
88
49
155
135
120
112
108
128
106
124
148
105
132
125
103
59
158
114
139
119
102
128
81
122
145
76
129
122
114
180
74
103
107
113
102
120
123
97
95
108
93
149
99
107
104
134
143
99
80
98
133
125
74
127
98
98
122
109
59
138
122
124
127
143
145
124
158
119
150
85
112
102
116
106
98
121
93
107
131
133
180
108
74
154
95
144
111
123
108
90
121
123
69
98
148
107
90
125
136
90
77
102
98
91
141
129
82
105
112
125
146
149
74
125
102
108
108
108
117
122
81
177
117
68
108
124
113
88
108
82
97
139
151
146
81
98
89
100
89
122
95
59
99
84
143
122
156
67
76
105
113
127
111
103
114
145
85
110
119
49
117
138
59
98
133
90
93
136
177
121
138
93
95
155
111
102
113
129
83
106
82
81
122
107
110
97
120
87
131
92
131
123
132
95
158
102
70
119
93
80
145
137
121
103
126
77
87
126
96
141
126
123
128
131
128
98
129
146
177
138
105
136
216
102
135
74
81
124
99
54
69
111
92
104
152
119
93
157
103
145
108
137
87
135
167
105
148
99
84
135
112
131
93
80
111
78
125
194
103
77
133
128
124
98
109
119
69
105
127
169
49
98
135
109
81
147
129
114
137
106
142
87
148
159
177
82
85
134
74
117
101
144
91
98
103
163
98
105
120
103
99
133
98
133
108
158
118
144
128
76
90
95
103
160
108
118
186
156
139
147
83
160
127
127
112
91
136
108
112
78
130
118
155
128
82
95
139
86
111
189
173
98
98
135
120
102
126
125
100
141
81
87
123
102
145
177
118
165
106
82
135
106
126
90
107
126
98
105
54
54
115
123
108
97
74
124
54
129
98
156
150
115
129
120
114
148
92
77
110
121
172
102
123
110
132
85
103
129
98
123
150
137
77
54
54
135
101
113
131
103
124
87
112
111
100
91
59
108
112
95
165
131
98
82
93
106
134
135
154
115
138
149
119
54
77
98
146
100
138
80
106
127
102
114
122
104
92
116
96
103
90
119
107
59
89
115
147
108
114
132
99
108
119
143
116
115
113
112
114
158
74
119
87
133
120
96
104
69
124
91
87
98
94
120
108
137
115
97
156
100
87
82
106
87
59
89
128
59
95
141
45
128
140
146
115
144
92
120
143
98
82
101
148
76
144
131
108
116
109
94
135
168
90
108
145
113
129
106
93
108
84
131
105
104
120
87
108
95
96
104
129
100
102
102
108
93
97
142
125
125
165
123
158
116
121
117
91
49
141
83
127
81
132
130
156
105
118
103
118
102
148
105
97
123
74
125
99
113
135
108
98
116
123
133
101
93
97
145
95
104
78
112
130
121
118
161
123
54
135
93
70
103
151
161
54
116
102
166
93
107
131
92
104
103
177
80
101
130
67
167
128
97
87
116
91
108
124
102
106
115
90
54
177
139
95
96
108
117
158
54
136
110
102
120
148
196
101
131
136
102
98
54
101
59
170
107
54
49
113
144
99
161
162
119
59
143
49
153
106
69
103
126
102
108
109
136
143
157
98
190
112
100
87
129
96
182
140
102
113
68
165
117
108
156
127
54
145
93
107
111
72
96
54
83
151
168
97
121
59
59
106
129
154
109
81
132
165
102
108
130
81
95
83
114
92
124
107
151
110
87
146
81
114
99
92
101
78
124
85
129
103
95
136
98
90
218
98
138
54
110
166
133
86
128
130
112
146
102
134
142
74
108
102
73
54
113
78
85
144
82
123
108
97
162
106
98
150
89
125
104
105
145
102
132
98
90
96
152
170
105
102
130
81
95
108
102
127
87
154
94
98
100
125
143
140
113
125
54
69
113
112
83
114
93
123
95
87
124
97
85
116
94
95
184
85
107
108
109
137
98
97
98
101
115
158
86
104
59
124
113
102
110
117
98
108
114
193
131
103
144
61
111
142
98
127
118
74
108
102
98
77
139
118
110
74
95
107
109
68
200
105
139
123
115
117
124
133
113
103
110
80
85
93
49
102
97
61
138
126
81
156
116
190
89
102
81
87
131
122
95
102
166
59
91
78
133
76
138
90
140
80
108
82
148
91
103
192
69
160
155
138
95
142
90
103
184
131
95
118
90
152
139
71
127
98
94
126
144
61
76
118
108
152
61
68
116
54
148
113
90
165
116
54
162
118
85
77
119
98
83
116
91
138
111
103
112
96
86
81
135
89
161
119
102
118
123
141
94
126
105
92
122
90
147
135
119
105
90
87
100
131
127
175
134
127
143
143
136
61
54
165
104
95
102
115
127
177
118
78
170
95
148
138
140
76
102
120
168
103
128
156
102
89
128
114
107
90
106
102
81
102
130
150
146
118
98
93
95
126
118
54
147
122
92
142
113
85
99
77
54
126
145
78
91
97
76
154
143
85
110
59
152
110
78
49
125
106
116
119
127
102
131
78
157
185
120
87
124
109
127
95
111
100
148
155
107
107
107
104
147
124
107
94
143
121
129
91
115
49
88
115
54
129
132
118
87
155
95
114
124
92
81
96
79
74
54
120
103
103
67
77
154
138
147
107
78
147
103
121
108
106
172
80
113
78
154
148
143
102
106
80
119
114
108
102
84
146
128
143
116
139
77
163
145
81
83
76
49
103
108
143
93
67
106
148
83
131
157
81
164
81
115
59
54
131
80
132
95
122
101
161
81
76
156
100
119
107
54
148
97
122
82
105
85
93
124
98
113
87
105
54
78
94
177
147
135
148
141
67
87
91
128
91
149
108
97
122
124
104
112
112
140
124
89
65
133
90
188
82
103
101
54
77
69
143
98
111
186
140
125
88
158
83
105
107
103
143
127
94
140
128
98
145
108
61
149
129
123
81
49
54
102
150
108
112
117
127
95
131
90
158
113
126
73
121
116
127
93
106
112
135
122
68
92
107
140
148
125
145
181
100
54
149
95
155
97
78
101
165
97
113
136
87
141
110
117
74
59
115
141
81
145
97
139
49
137
96
85
113
216
158
141
126
119
129
74
54
103
148
105
119
77
125
123
129
149
125
127
67
81
106
117
105
121
124
136
91
93
129
122
127
137
87
106
110
143
105
147
170
87
136
193
81
123
65
124
81
108
84
165
76
141
194
97
129
115
80
99
102
120
87
105
105
200
105
87
101
117
122
173
132
119
105
102
95
82
90
92
125
148
130
133
123
88
131
96
111
85
109
92
180
132
128
95
82
78
102
79
138
81
119
86
99
138
149
108
158
95
131
115
117
99
108
97
108
157
54
92
106
119
97
129
118
129
133
213
135
106
102
80
98
106
218
145
95
95
83
103
119
74
135
227
128
54
78
139
91
158
59
156
137
93
128
125
138
87
109
54
234
116
90
119
118
96
49
92
138
147
95
120
129
91
152
131
114
144
105
154
139
74
70
130
101
164
141
98
129
49
145
107
183
134
77
121
54
120
154
95
128
118
122
74
90
103
74
132
132
185
106
94
100
128
94
110
106
145
153
99
115
122
116
120
105
147
100
182
49
136
139
92
117
98
134
110
105
89
76
90
74
105
87
111
83
103
102
111
91
151
88
102
102
99
81
137
113
120
139
89
67
103
140
130
128
148
103
98
84
49
145
131
81
54
125
133
93
138
130
97
102
121
96
152
118
139
119
157
156
88
95
79
93
124
76
98
95
135
102
123
94
134
163
115
140
119
127
98
54
108
105
117
129
140
194
127
97
108
135
160
117
101
87
103
108
134
91
49
110
82
164
113
165
97
155
129
98
54
138
87
113
102
77
89
83
67
194
105
84
91
107
77
118
152
102
137
102
163
151
117
145
126
169
101
131
136
102
112
81
128
84
105
134
141
117
161
152
115
98
78
147
108
103
131
102
110
107
142
105
92
83
98
105
133
98
125
150
87
125
108
77
95
49
119
87
123
145
166
143
104
59
87
147
108
133
91
144
78
163
145
127
146
96
110
115
123
108
129
137
54
133
107
102
49
84
42
97
102
146
95
121
120
74
54
98
164
142
148
138
105
95
133
97
121
96
67
146
59
112
119
119
94
104
93
103
82
163
112
98
150
143
80
163
104
105
125
107
96
91
102
81
148
165
148
77
86
74
118
110
108
128
114
149
90
148
61
95
110
131
54
150
124
102
96
97
122
97
100
95
113
81
139
118
103
85
189
143
145
78
140
109
134
97
109
89
73
104
74
143
105
182
182
134
102
143
103
130
148
113
139
133
84
155
111
125
54
128
139
126
158
147
114
97
76
81
59
131
107
103
102
96
167
134
96
115
82
75
93
131
142
164
101
220
168
113
160
125
77
165
120
106
128
95
106
114
109
111
83
117
89
91
112
80
90
123
59
143
98
49
96
152
156
118
105
102
119
125
108
95
105
110
93
99
121
148
105
95
67
113
133
119
106
95
81
136
103
144
185
135
135
132
108
61
68
100
94
116
195
108
104
105
87
108
172
148
165
180
98
70
143
101
150
83
125
104
116
101
125
98
148
161
168
126
95
122
119
100
146
113
147
105
83
112
136
133
122
106
112
127
103
133
130
198
72
150
146
96
54
100
97
104
141
173
98
78
118
150
102
113
113
102
117
115
108
118
101
143
87
108
104
121
135
106
190
103
88
66
102
103
129
124
146
129
92
54
125
54
69
139
96
126
204
120
77
120
108
103
114
167
105
87
112
98
145
102
137
154
108
93
146
140
92
106
106
67
118
81
74
86
103
163
130
77
54
82
99
113
127
115
133
98
112
110
197
103
147
138
127
165
82
177
146
126
140
122
98
135
111
125
145
177
108
59
134
99
171
114
148
81
92
148
133
95
100
107
89
141
130
103
67
97
109
161
98
59
115
98
126
144
148
93
104
127
139
92
112
95
136
128
73
104
109
107
150
112
110
95
150
142
54
133
81
109
96
67
95
133
126
45
74
76
127
135
108
119
79
148
120
54
93
132
118
130
128
107
124
108
98
123
83
166
141
98
113
101
172
142
67
153
95
123
132
105
179
130
113
133
127
85
112
156
129
117
120
59
130
109
61
139
78
125
149
98
74
140
81
142
102
59
104
109
128
111
75
175
108
117
137
77
127
127
92
157
114
189
96
92
116
139
150
100
99
103
68
95
127
188
85
106
91
85
128
112
104
135
122
103
129
98
94
108
148
115
87
178
90
93
95
121
78
123
90
68
122
141
150
132
176
170
138
54
161
93
121
103
69
54
67
103
135
146
107
103
120
139
74
149
140
54
110
54
110
132
82
126
118
98
131
108
103
109
103
133
140
133
99
59
110
81
133
87
130
94
54
147
81
163
102
161
106
127
77
74
144
139
109
98
182
98
61
152
45
97
49
123
110
125
81
103
140
102
156
139
109
59
54
69
150
83
90
67
123
88
81
94
114
95
82
124
158
114
107
124
89
180
205
146
74
115
119
100
129
83
116
95
129
131
103
130
88
137
76
75
74
184
54
123
109
160
132
182
73
104
153
140
95
97
158
120
128
90
148
107
143
109
165
145
83
134
131
145
108
140
49
146
108
123
200
128
92
150
97
93
125
135
126
143
216
148
81
124
111
134
104
154
110
134
108
126
130
112
95
108
124
101
149
148
105
95
102
145
121
83
140
103
84
103
54
145
54
114
114
54
99
177
76
127
142
113
133
114
100
91
105
116
117
106
133
80
125
148
102
103
127
108
138
135
112
96
115
108
54
121
103
54
45
118
102
113
144
107
95
133
100
54
81
95
92
119
81
105
153
110
103
114
123
98
114
95
144
102
93
119
139
136
69
87
90
93
83
108
90
102
146
116
90
105
103
89
181
120
150
76
118
160
82
136
93
73
102
81
89
115
95
135
127
105
111
89
107
108
54
96
147
105
100
105
153
145
83
93
104
107
135
127
98
113
93
49
128
102
172
98
123
90
148
102
87
108
54
131
161
67
129
93
131
164
123
89
107
77
95
96
127
119
125
81
54
85
114
78
108
73
79
115
122
108
107
102
87
92
126
97
82
110
132
102
93
94
95
110
158
95
114
111
95
105
132
150
129
49
91
110
139
118
95
54
77
92
108
49
136
102
177
103
102
85
102
135
91
148
83
110
135
152
147
155
148
129
155
195
93
132
160
96
138
107
89
74
125
70
98
148
67
100
131
59
128
85
54
133
119
98
99
113
165
152
148
125
140
148
157
86
85
132
87
132
146
140
134
95
120
87
162
151
105
115
130
139
120
157
137
106
106
73
115
158
182
138
90
95
59
169
126
125
116
130
93
145
136
77
106
90
110
111
152
154
146
94
127
135
113
105
128
183
114
117
102
124
113
54
127
107
140
124
115
49
147
115
137
77
102
95
95
101
105
170
92
74
131
115
87
140
95
87
146
93
118
115
108
102
82
112
151
176
109
159
108
143
102
159
160
54
112
172
108
116
59
146
86
129
124
113
102
82
127
132
158
54
125
82
49
104
108
117
108
54
76
171
163
132
160
121
133
106
87
131
147
127
88
74
116
95
147
135
130
154
54
85
126
128
76
116
133
141
139
122
49
127
90
125
108
188
100
192
100
77
93
108
74
92
145
54
131
112
170
81
102
137
54
151
90
158
143
88
111
125
81
99
54
116
98
135
125
173
155
139
110
83
95
119
98
105
131
115
110
105
92
133
131
54
113
101
95
93
67
90
87
120
140
119
102
108
185
130
170
125
102
152
108
128
59
105
115
108
114
81
59
115
128
113
49
145
108
144
91
114
106
126
124
135
124
69
90
144
113
79
98
54
102
78
129
98
154
120
135
159
110
163
107
112
106
97
49
107
95
77
157
54
140
132
59
99
101
124
133
141
108
110
107
132
120
83
85
84
127
125
49
148
96
123
108
76
131
99
115
177
153
122
116
96
103
84
82
113
54
107
121
82
95
105
105
97
140
112
122
73
117
87
94
95
126
109
94
110
148
123
76
131
143
99
146
68
125
102
129
123
95
81
125
127
83
141
130
138
81
83
81
126
112
108
122
125
125
49
142
121
127
118
161
159
54
106
135
123
124
98
77
83
143
93
98
169
54
85
130
95
194
146
54
89
150
114
95
69
137
99
101
165
108
131
113
108
155
59
102
131
73
135
122
102
185
109
116
90
133
82
94
45
154
98
93
118
102
96
150
125
54
108
59
151
96
128
82
158
117
142
128
133
96
131
143
119
98
145
81
131
127
125
82
145
108
97
149
67
54
103
74
49
101
161
120
123
113
98
130
188
157
80
110
113
173
73
148
122
163
122
97
122
89
106
133
107
125
107
124
90
68
148
98
118
98
112
69
103
93
101
133
120
102
143
144
117
122
54
95
118
82
131
77
104
105
85
112
115
81
98
163
91
108
86
100
135
139
84
106
160
97
107
143
123
98
104
117
98
148
97
168
103
115
155
110
105
82
103
106
133
112
156
102
99
131
93
61
94
131
97
110
73
101
81
95
92
117
54
139
112
137
78
165
92
104
124
102
81
62
49
67
132
145
125
153
105
158
98
164
113
122
82
135
113
144
133
120
122
109
103
59
102
105
138
90
106
144
93
87
120
107
92
78
161
139
93
92
156
115
99
54
113
113
145
83
152
129
99
76
82
135
109
127
104
95
129
133
149
113
128
98
145
179
127
140
103
110
95
108
145
200
105
101
171
96
93
144
134
133
103
144
69
113
143
111
93
118
132
106
110
112
76
54
126
45
91
125
59
105
143
118
109
144
99
130
89
91
106
103
141
111
115
106
162
130
112
105
147
77
74
86
142
79
160
78
101
137
99
145
154
116
107
130
140
107
95
85
104
84
96
78
128
97
75
95
127
139
110
157
105
84
93
137
78
102
165
125
106
148
132
105
82
153
73
103
49
77
73
109
90
104
99
102
166
128
98
108
107
148
131
81
103
96
103
143
82
128
146
131
113
78
96
78
92
123
102
134
80
93
104
89
82
131
169
102
132
90
159
98
158
136
131
139
168
129
123
109
148
120
127
127
99
112
108
127
100
125
108
59
113
124
95
98
114
49
162
152
139
85
125
143
118
97
108
141
132
112
102
80
138
114
103
143
148
118
92
138
106
119
126
167
140
165
85
129
54
86
113
98
166
194
114
130
136
132
113
132
151
111
108
127
151
144
97
155
96
178
91
160
123
102
111
106
130
100
125
121
111
112
141
123
158
96
107
114
122
82
91
148
113
123
143
54
126
128
106
98
134
98
131
54
146
145
123
59
112
92
81
109
54
111
125
96
125
94
133
67
98
118
143
133
108
158
90
89
136
109
101
118
103
127
114
154
81
88
82
54
97
109
127
104
74
158
114
116
146
183
111
112
137
105
151
129
59
96
115
134
117
98
87
141
133
90
82
148
85
138
120
105
84
95
128
87
148
125
78
72
59
127
96
81
130
165
179
138
102
93
93
93
103
139
128
85
127
108
96
163
80
87
91
85
133
108
131
93
103
111
162
125
84
76
85
83
136
98
158
124
102
118
136
98
195
67
91
96
102
112
132
141
89
144
111
108
91
161
148
135
124
152
81
116
133
85
96
131
102
61
106
131
87
133
108
87
139
186
183
68
161
159
140
101
93
93
123
102
85
108
115
103
142
129
69
128
124
131
104
143
97
108
155
106
104
104
158
137
136
111
136
161
116
85
93
91
118
107
101
121
141
161
127
113
108
54
127
115
126
54
113
144
129
120
138
92
134
169
149
144
128
91
139
117
116
122
110
102
139
168
122
91
145
74
73
96
133
94
87
147
98
116
127
76
164
115
59
89
128
88
108
88
158
78
128
95
107
61
128
147
116
124
130
86
127
165
92
100
133
120
128
74
118
114
117
76
147
113
80
161
105
59
74
119
177
54
102
97
157
67
99
150
141
132
161
80
119
110
90
98
139
119
95
107
117
118
101
112
87
113
137
153
128
108
115
144
149
98
112
135
134
146
125
54
140
132
80
218
87
106
93
107
128
159
112
141
128
129
76
96
101
62
114
120
146
78
85
122
96
69
117
136
118
104
89
128
112
128
180
80
98
61
113
145
143
99
78
110
106
76
169
127
109
128
49
101
110
110
105
141
78
121
103
150
49
49
54
152
177
133
126
115
131
185
115
128
94
91
116
116
115
109
113
173
129
110
108
108
81
106
173
77
156
119
98
100
82
117
139
106
117
158
102
124
154
118
84
96
139
95
114
208
98
194
130
138
106
134
110
179
93
98
161
121
144
144
190
95
91
54
150
126
144
111
132
126
128
130
83
124
143
126
73
80
109
100
78
149
85
127
155
96
133
109
161
148
105
101
97
95
100
165
110
141
95
69
109
144
140
98
163
112
103
131
152
131
96
129
87
88
121
144
108
106
153
83
121
111
144
95
149
111
102
161
125
109
125
124
123
114
141
131
97
77
130
130
119
127
80
126
177
133
100
125
118
97
124
54
126
164
138
134
114
154
105
115
123
166
112
102
97
156
142
122
124
54
139
146
123
106
95
141
113
80
59
95
154
135
103
136
137
160
141
80
102
128
101
74
133
123
107
49
130
126
87
103
118
74
150
143
139
81
148
120
132
183
98
95
112
146
102
103
128
151
108
143
139
108
109
144
128
105
115
120
81
133
79
128
95
95
128
119
105
72
93
123
139
155
123
120
90
86
120
90
132
106
168
49
130
113
109
131
106
90
139
100
163
98
160
95
129
127
179
81
132
172
81
113
127
149
105
117
134
103
144
171
152
113
113
119
85
145
89
74
127
125
130
80
90
102
152
121
105
61
138
123
102
54
164
125
102
110
120
49
112
90
93
100
148
109
158
79
120
129
104
76
133
102
102
102
123
108
78
59
54
119
164
140
59
180
106
95
128
124
125
122
87
117
123
103
98
110
110
74
89
146
146
141
88
128
129
108
103
133
115
169
135
140
102
142
119
108
133
54
95
127
125
102
97
135
148
78
108
97
158
168
150
82
103
133
87
118
103
115
115
123
129
172
135
114
93
143
125
144
127
116
103
90
59
114
99
124
101
101
135
101
116
125
117
109
139
81
137
101
177
98
108
121
141
54
145
107
114
77
158
100
102
127
138
79
77
86
103
98
94
165
59
106
96
82
98
98
133
171
146
101
80
133
137
137
177
133
177
96
147
165
83
63
122
132
95
107
97
101
96
69
120
89
81
99
90
111
180
143
135
107
59
90
96
99
146
85
181
127
100
107
177
102
131
177
136
173
137
99
144
95
130
95
106
96
128
105
74
90
103
102
130
105
98
109
149
81
108
138
159
74
103
83
98
186
114
134
101
98
54
59
86
95
91
49
115
117
113
54
131
185
87
98
124
120
133
120
117
102
134
95
123
156
54
144
124
132
99
134
121
80
139
95
134
107
120
100
92
160
113
110
180
54
102
85
143
146
114
122
54
106
136
113
81
106
100
126
127
162
111
77
111
152
116
163
86
99
107
77
125
149
132
130
112
120
77
80
174
90
120
149
112
101
80
169
114
129
98
191
112
120
105
115
115
152
157
144
133
95
124
126
125
161
108
175
127
189
123
110
115
88
116
54
135
95
102
87
149
153
102
54
125
123
82
113
90
133
102
131
137
81
116
106
114
76
83
93
99
98
69
129
97
138
83
109
93
133
98
61
158
137
76
95
113
110
113
119
151
139
137
49
75
119
102
134
87
95
107
121
98
93
76
144
125
135
127
54
125
145
189
67
81
117
83
125
106
105
69
135
144
81
124
130
136
105
122
113
180
158
104
120
83
102
194
140
54
92
145
115
115
108
139
105
108
142
135
142
174
101
106
96
135
73
122
153
105
144
54
115
90
131
144
83
130
85
108
112
106
86
128
141
128
97
49
93
95
120
179
80
49
76
61
125
125
125
177
140
139
78
117
163
107
127
161
134
98
120
129
95
81
133
115
79
98
144
84
106
115
100
77
156
112
133
67
159
138
158
121
106
118
102
145
69
83
113
95
122
105
115
103
122
200
96
120
94
81
180
59
69
108
148
118
97
127
83
151
118
103
148
98
110
96
54
116
84
98
171
99
79
175
101
76
127
148
140
113
116
54
117
128
118
123
54
97
109
146
124
142
125
134
115
107
102
104
135
102
54
139
153
49
49
132
118
98
104
137
110
87
110
140
106
69
102
107
96
135
111
98
134
131
105
122
124
127
87
112
98
120
126
131
158
159
139
160
163
101
67
135
124
110
109
103
125
116
123
54
146
107
105
96
101
180
101
163
116
200
140
87
135
82
107
142
138
113
147
61
141
87
96
76
131
102
124
81
114
126
138
93
166
114
113
96
54
131
78
88
129
99
107
113
120
76
126
125
113
95
90
62
109
159
81
146
131
103
138
122
179
128
113
119
87
106
95
127
146
92
54
78
177
88
54
94
82
137
98
129
112
54
113
69
112
147
102
103
121
103
126
67
109
103
104
184
98
77
84
109
88
74
135
101
77
91
85
97
97
122
108
123
103
102
65
151
74
54
179
54
83
93
108
138
135
103
103
126
122
87
79
81
129
67
138
95
125
140
81
118
158
137
129
77
106
76
141
119
98
101
132
59
105
49
80
119
131
84
102
102
133
123
101
140
197
95
107
59
134
154
132
165
96
84
138
106
103
87
89
98
105
157
102
95
117
127
108
163
111
125
127
102
141
106
108
59
95
82
78
84
104
134
89
124
170
103
114
105
100
98
118
148
69
106
85
59
98
88
119
124
125
102
149
133
97
99
133
89
86
117
158
121
119
148
119
148
106
76
118
100
59
92
69
95
125
110
103
85
82
159
116
119
145
143
54
59
108
103
133
115
159
130
87
142
108
109
143
125
104
137
103
123
126
102
86
120
92
105
96
114
61
152
138
83
145
93
139
125
92
104
110
110
81
96
102
136
108
121
95
157
122
108
115
87
119
81
125
130
68
166
54
113
104
128
98
54
134
102
129
95
176
76
95
77
93
135
152
95
154
81
167
78
158
109
142
100
85
49
105
127
123
101
106
102
104
180
105
85
157
94
155
59
107
115
87
135
171
128
85
102
96
59
82
102
95
145
133
147
107
124
103
108
154
125
113
75
142
134
132
122
106
139
74
234
140
153
87
115
126
134
96
127
168
123
106
108
145
112
138
118
135
177
121
68
176
142
108
77
61
107
116
113
128
110
74
102
101
115
54
137
177
61
135
170
133
84
174
93
94
98
103
108
133
108
147
115
145
98
87
132
85
108
95
190
124
141
54
103
108
94
82
152
92
85
107
112
123
161
137
158
139
138
98
112
150
54
82
139
118
143
108
77
124
163
95
54
132
108
133
93
123
103
135
133
140
98
102
68
101
100
128
81
112
130
156
155
144
124
81
108
77
158
127
110
108
67
149
120
160
135
74
91
102
135
132
59
54
148
146
123
96
110
104
140
135
200
125
124
128
120
65
139
111
81
139
185
113
146
126
126
93
116
98
115
145
129
115
127
113
125
59
111
119
104
67
95
138
67
65
99
105
78
93
131
91
68
100
109
88
91
105
81
127
156
108
168
158
104
101
116
107
161
160
120
77
74
108
68
59
127
82
87
49
148
133
92
113
134
90
133
132
99
87
179
169
107
133
67
102
98
133
77
102
140
167
129
49
126
133
123
119
108
107
122
97
178
129
146
95
98
122
102
87
119
54
118
114
154
127
186
125
59
155
123
98
118
108
126
118
115
125
95
97
122
107
120
138
113
161
144
102
135
104
113
118
178
107
131
122
112
132
90
117
145
95
105
107
146
132
103
112
76
120
102
179
91
131
199
86
54
94
131
120
96
81
98
109
103
139
49
169
158
95
76
102
76
80
79
104
108
98
91
138
102
120
74
124
96
151
81
108
97
144
193
133
95
109
148
119
113
98
79
137
76
151
156
130
106
107
137
59
103
108
101
140
139
49
79
92
57
143
96
157
169
113
102
146
154
148
178
98
54
113
83
54
100
70
81
106
165
127
150
87
148
95
102
112
121
61
172
109
119
108
95
145
54
54
131
106
140
126
74
90
126
143
167
188
74
122
136
131
92
95
78
95
218
103
144
95
105
121
91
54
157
179
106
163
113
127
118
54
150
78
118
107
74
118
110
119
102
107
127
133
77
162
143
120
108
108
152
142
95
54
163
102
125
98
133
108
148
92
87
91
90
140
126
121
130
140
93
95
125
54
93
109
85
190
121
118
146
115
167
111
115
90
81
91
113
97
54
108
125
182
149
108
140
131
155
127
95
131
135
131
81
158
156
105
122
147
101
107
151
78
101
155
112
154
116
140
125
102
99
102
82
160
93
147
147
144
85
54
141
166
129
144
86
118
108
94
126
107
98
129
124
124
164
116
98
147
112
108
154
139
78
133
116
90
106
149
54
107
98
119
142
135
151
78
118
162
99
140
54
78
119
102
121
148
95
54
118
96
98
108
127
95
156
147
98
125
61
54
120
110
114
160
116
78
141
160
142
125
95
165
131
87
113
167
104
123
128
82
172
124
143
95
133
127
133
190
118
158
125
107
49
132
102
95
146
114
145
194
166
153
126
145
135
133
122
95
131
146
67
146
102
104
173
143
153
98
118
134
108
105
200
95
89
97
160
142
93
130
95
126
74
169
135
102
133
95
103
134
118
87
116
139
107
117
102
145
115
168
54
96
106
154
49
117
148
128
115
133
139
112
94
73
100
76
140
76
59
131
98
99
59
98
92
134
118
115
78
82
109
140
144
59
59
123
146
173
203
113
119
89
90
103
148
81
147
79
147
98
129
113
125
136
95
109
108
128
98
82
54
135
82
119
121
82
80
100
99
127
110
149
94
146
119
180
171
79
127
156
110
115
68
89
61
115
151
114
127
83
113
118
153
161
151
87
59
98
125
189
69
74
101
138
153
132
163
110
116
74
131
118
125
103
126
135
137
98
103
132
97
98
147
118
111
95
73
95
95
95
151
99
146
49
54
80
98
101
125
89
108
126
87
138
96
106
81
107
162
108
105
159
81
90
94
77
130
93
119
139
150
106
81
131
87
103
148
109
83
110
74
177
96
81
83
90
59
113
91
102
129
96
118
117
112
87
102
106
54
125
133
61
54
189
121
108
108
112
87
135
102
131
123
122
74
87
135
117
87
147
95
104
95
95
139
113
125
91
82
116
114
165
61
161
65
95
108
112
139
95
76
132
93
154
76
107
125
74
143
90
177
90
95
102
122
111
115
145
127
54
95
168
168
138
124
139
144
103
205
76
106
190
82
142
140
146
98
104
54
69
90
98
145
125
81
121
67
108
108
108
143
122
82
155
122
122
127
74
125
127
95
113
111
145
81
144
95
134
113
93
140
133
147
134
95
199
87
120
107
83
131
120
118
137
111
98
176
98
144
67
97
100
93
156
138
119
161
146
92
107
103
82
108
117
148
131
65
116
125
76
156
54
106
96
144
119
112
158
54
100
113
81
54
49
123
142
155
89
167
111
132
101
148
129
99
72
174
61
119
137
87
76
123
101
147
157
107
90
89
161
216
103
87
106
117
106
98
165
118
106
108
49
67
76
103
139
135
107
135
100
135
180
147
118
84
54
108
94
54
145
108
106
122
49
117
139
123
107
157
87
135
143
149
133
112
74
113
153
97
98
76
133
107
118
172
87
90
136
106
94
81
85
144
181
93
138
177
140
98
123
149
160
157
97
82
202
104
107
115
153
186
103
108
141
141
78
165
110
102
134
94
54
126
101
155
142
145
132
74
81
98
94
151
119
102
142
115
83
101
97
108
109
97
97
151
131
148
116
137
54
124
99
139
93
87
95
165
128
114
139
99
120
113
131
127
87
146
105
108
49
95
119
59
129
98
118
90
123
129
90
100
104
54
102
124
93
118
128
54
106
153
113
131
85
135
125
107
153
93
95
76
132
54
110
133
81
123
174
76
95
102
121
74
78
104
156
110
118
67
49
133
98
74
157
168
112
129
128
89
97
93
165
134
107
133
115
124
132
83
124
54
108
93
100
110
83
78
111
98
123
113
151
113
118
125
123
98
158
135
135
163
98
156
105
93
146
108
127
111
121
113
54
68
78
91
127
82
81
129
141
103
165
69
54
81
125
113
98
107
160
65
81
82
139
111
105
104
102
143
100
144
102
132
120
87
113
134
132
125
95
106
132
120
108
114
113
95
91
77
107
108
103
98
54
115
100
105
68
78
164
93
140
96
131
128
134
98
78
141
129
121
102
117
102
77
104
157
168
147
158
112
103
106
149
139
125
93
120
112
106
81
138
135
87
139
167
98
129
68
74
93
102
124
101
133
118
128
107
130
169
133
91
74
123
122
104
124
102
61
49
135
156
82
148
139
155
80
126
100
97
117
69
156
145
151
119
157
102
177
88
140
144
115
131
74
120
123
158
92
82
92
122
124
116
117
113
168
131
78
110
160
108
102
54
148
123
182
118
109
125
131
140
141
215
148
128
125
189
113
98
77
115
134
132
134
132
77
95
118
87
118
123
238
130
147
96
108
93
90
111
102
97
125
54
124
101
130
72
108
123
105
144
102
125
107
159
156
112
120
141
106
108
126
122
101
121
98
190
95
156
139
61
155
61
61
105
67
182
176
65
97
49
108
129
134
141
102
136
157
149
103
112
93
102
93
54
54
102
121
186
92
105
88
89
143
95
74
126
102
113
136
147
84
133
98
129
86
131
125
140
137
151
163
129
74
120
98
120
145
124
107
102
128
72
117
88
97
90
112
143
49
154
121
110
76
81
88
105
93
102
49
141
85
105
102
83
103
119
114
124
138
118
102
101
108
54
158
154
149
154
122
86
149
87
107
127
154
95
93
98
179
73
119
162
130
119
107
104
88
108
77
134
102
81
88
103
133
80
143
100
98
67
91
144
88
125
94
101
104
95
109
158
83
150
74
144
132
61
107
147
153
144
109
122
108
125
102
124
166
140
82
120
111
141
101
132
97
139
77
144
113
149
95
97
94
95
113
102
85
74
116
104
105
104
98
98
95
88
127
95
156
132
122
161
145
147
77
135
148
121
107
130
72
118
127
127
163
114
98
124
127
87
102
92
76
109
163
87
107
112
59
107
132
124
67
61
81
113
142
148
98
132
125
78
123
54
77
85
107
90
106
104
125
135
127
108
194
126
161
95
83
139
128
54
69
128
78
124
138
175
124
143
96
59
103
130
100
103
160
87
98
59
146
135
168
132
95
122
98
81
69
177
139
68
81
113
96
126
100
102
54
106
177
187
146
102
150
95
129
99
103
67
92
125
129
121
67
105
158
136
106
80
134
123
111
120
101
155
90
131
135
78
106
77
113
114
151
59
104
140
134
118
90
165
200
77
129
146
129
123
172
155
148
119
160
93
107
80
121
133
83
139
101
125
100
94
194
74
102
135
145
108
87
84
112
93
165
136
118
101
148
125
91
106
54
192
120
98
139
108
171
87
90
76
98
116
102
59
68
82
78
67
167
109
122
134
168
82
102
59
169
110
95
190
177
180
54
155
108
102
131
131
54
78
77
156
125
135
141
54
136
123
106
102
83
90
117
125
90
123
98
93
140
90
102
124
101
107
135
105
113
115
133
142
87
144
102
114
133
161
136
102
104
98
97
118
158
135
128
122
179
105
72
114
143
165
95
118
158
69
125
117
88
155
123
49
110
133
165
157
153
82
73
146
65
79
94
123
93
140
115
159
81
217
91
107
90
59
93
146
81
207
95
148
128
105
157
133
131
73
176
123
117
151
98
86
234
102
149
115
92
128
91
61
156
90
132
133
149
123
173
117
93
101
125
111
100
97
114
131
106
105
153
49
124
142
115
168
91
127
107
104
96
103
102
113
126
148
146
92
99
142
101
98
68
124
113
101
147
122
141
137
107
126
113
165
129
97
115
146
108
234
74
155
133
90
102
123
54
107
94
127
90
139
126
134
148
88
114
97
148
54
168
92
85
108
141
121
150
59
96
108
100
125
98
97
120
108
113
157
154
95
103
93
96
103
80
122
109
102
161
173
90
98
115
83
102
49
132
74
124
54
95
127
59
95
148
67
165
145
82
108
90
98
99
92
102
93
145
109
98
95
80
96
69
101
113
115
118
95
124
150
174
134
95
135
134
98
122
98
89
119
67
105
107
133
139
116
98
143
103
98
106
122
93
102
98
126
98
127
54
108
218
110
74
110
98
191
61
69
109
133
139
85
135
143
113
76
100
107
113
116
114
124
81
90
90
87
123
54
133
126
108
142
91
126
87
49
148
144
122
144
102
111
85
77
101
91
49
133
133
81
146
104
68
138
108
124
96
74
161
91
118
134
78
118
177
127
119
135
100
153
108
125
92
74
84
122
97
97
110
133
74
90
132
102
54
122
81
111
77
120
90
96
108
140
106
87
132
108
82
110
89
110
95
108
132
77
132
121
168
125
114
116
49
65
147
144
199
99
101
172
127
87
127
67
148
90
119
87
89
122
106
150
93
106
115
74
162
105
54
80
108
61
103
101
124
129
105
109
54
110
102
154
105
125
128
116
139
148
108
107
104
80
102
95
117
147
54
128
61
125
167
105
159
54
114
67
148
154
130
99
181
107
77
96
127
151
82
122
61
98
109
143
146
82
85
95
135
150
137
105
131
68
147
105
76
79
123
106
154
123
133
98
141
106
115
122
144
59
119
94
59
135
87
132
81
54
106
117
90
141
140
77
121
112
146
115
97
114
130
153
164
120
107
107
125
74
85
133
171
85
143
103
79
69
106
106
81
125
137
76
149
111
107
143
96
54
144
95
94
111
95
113
90
101
86
126
124
145
114
102
115
90
124
133
54
95
118
110
116
107
155
93
98
135
136
109
132
90
103
87
54
81
148
90
127
98
139
119
81
125
82
141
125
118
116
113
115
144
203
147
67
172
110
91
140
135
86
103
59
85
158
135
186
146
120
98
78
98
142
112
135
82
108
109
49
191
49
116
150
54
116
179
102
102
103
103
104
177
109
158
82
98
78
122
81
102
87
119
141
108
131
138
93
133
54
49
132
148
126
84
110
104
125
122
78
133
147
158
103
153
143
54
119
98
116
137
139
140
98
132
80
95
143
94
78
149
113
103
107
129
123
87
98
133
144
74
90
87
120
102
67
87
93
110
113
153
122
128
97
128
127
138
95
97
102
158
108
131
106
143
108
113
119
121
141
147
109
117
131
98
136
165
98
85
127
143
148
81
77
152
202
103
139
102
103
124
110
103
90
59
125
81
129
125
96
119
105
119
116
117
114
93
178
179
159
74
124
147
74
143
115
93
108
133
67
102
49
92
87
143
91
98
115
117
138
95
111
74
148
113
54
118
86
90
105
83
120
131
112
146
54
108
82
113
102
83
87
74
149
92
104
103
173
79
163
102
170
87
128
102
111
115
100
103
100
149
139
140
135
105
84
109
125
77
96
150
105
140
122
54
150
87
114
68
91
134
134
78
70
78
152
184
146
103
119
95
143
106
98
145
106
145
131
59
148
129
102
125
120
160
145
129
134
146
81
103
102
93
145
131
102
141
120
74
112
81
81
131
95
98
162
110
101
108
95
116
95
81
54
138
110
54
77
130
59
149
70
102
103
200
127
137
115
110
115
115
103
166
95
125
123
95
141
98
123
108
98
162
146
108
78
98
91
102
143
128
98
129
133
137
115
87
146
125
143
115
113
95
115
151
79
144
157
109
82
113
90
91
137
113
101
103
119
97
121
174
148
105
54
152
142
93
125
165
144
111
120
59
95
144
141
54
90
79
106
98
110
90
67
100
118
102
94
116
105
117
109
102
106
49
118
135
149
90
123
114
108
125
142
123
103
125
49
98
54
69
126
83
93
139
106
93
87
104
125
127
129
69
83
98
98
162
118
112
130
127
95
143
94
93
84
139
133
98
147
81
177
113
107
115
102
108
149
116
101
112
90
146
54
100
103
76
77
132
59
91
200
107
82
126
130
80
125
177
54
126
93
132
122
143
83
158
147
146
82
125
83
102
87
130
87
123
95
85
76
155
112
143
98
169
61
69
81
54
110
143
82
98
127
111
128
98
129
123
85
123
143
168
98
112
153
158
104
101
106
49
96
98
78
134
97
153
124
102
61
138
95
97
103
172
54
119
170
141
148
113
81
106
93
145
116
98
120
129
158
126
76
147
96
179
120
142
135
167
104
82
123
80
119
87
83
162
121
119
117
129
91
135
95
129
85
105
130
128
122
164
111
132
123
112
125
87
98
131
126
91
101
105
131
129
108
122
128
106
105
115
98
102
54
129
54
167
90
143
182
160
96
123
127
155
136
100
95
144
133
95
108
107
99
102
104
109
102
113
54
110
101
148
114
95
85
129
103
125
93
158
87
159
118
91
97
144
54
114
145
182
124
169
176
117
143
132
145
90
98
100
137
172
168
121
148
127
113
175
106
143
177
87
192
135
104
150
109
134
76
145
131
148
169
59
118
155
191
76
95
100
128
128
101
129
115
131
98
121
141
97
125
122
105
146
143
110
81
119
128
129
128
81
90
123
120
87
122
124
91
86
78
147
68
111
128
110
103
148
87
139
107
95
146
49
156
99
108
95
133
67
138
139
134
109
61
106
182
110
91
140
118
102
129
94
77
129
140
131
174
131
81
100
168
90
182
84
125
110
98
164
117
110
132
78
87
105
143
156
93
82
153
115
105
90
59
144
98
113
151
147
106
105
146
158
113
131
108
49
123
90
113
102
72
82
102
79
89
93
93
59
205
102
155
106
141
82
105
83
74
94
101
76
110
121
135
92
106
99
87
123
111
85
76
102
117
97
90
102
135
59
140
114
108
102
102
126
160
116
102
65
140
74
109
114
112
102
136
125
95
97
83
102
90
100
138
126
152
91
93
108
70
117
81
91
114
117
148
134
108
81
113
104
146
112
68
98
115
133
119
109
99
49
113
76
54
140
81
123
67
108
134
80
67
136
112
144
141
141
115
109
120
59
153
105
65
161
149
132
133
130
125
131
117
76
123
91
204
158
104
77
148
175
97
141
107
102
113
108
125
103
103
129
54
105
131
143
185
95
96
84
103
107
101
72
148
100
54
104
77
93
85
150
61
49
108
118
149
74
76
125
141
98
153
98
102
132
89
105
193
114
119
128
124
186
177
76
118
149
106
76
97
125
75
106
113
127
54
112
49
77
123
90
159
165
126
116
131
193
117
99
123
83
98
106
145
108
133
153
146
150
110
78
145
158
108
122
95
77
115
117
62
129
87
112
98
122
118
141
76
95
107
98
125
54
86
172
103
168
113
117
82
143
125
199
93
113
98
67
120
190
105
112
139
91
115
115
128
156
135
158
183
77
129
151
144
107
142
143
128
124
190
95
102
102
161
95
121
98
118
115
106
131
119
87
139
81
120
54
114
108
117
101
129
100
108
108
152
87
106
100
119
157
92
151
131
135
102
164
128
132
102
134
194
98
106
108
108
54
78
139
102
120
96
110
122
99
135
111
160
115
124
108
90
68
138
93
148
93
90
211
140
82
104
122
98
76
96
95
141
95
80
150
141
116
134
167
166
91
134
49
49
123
149
98
146
95
117
135
127
96
162
100
129
117
99
79
148
128
178
121
106
108
98
116
166
131
102
117
96
110
114
122
133
116
108
125
200
85
175
147
180
78
102
76
135
129
104
167
128
146
96
74
61
98
133
88
125
102
106
101
103
131
186
119
59
139
61
93
130
54
74
128
109
102
125
143
93
161
108
111
90
108
119
128
108
76
77
160
224
96
54
176
112
54
67
129
129
144
126
77
96
54
141
141
109
92
98
165
113
128
132
106
144
119
145
139
112
132
49
100
172
172
95
150
121
105
134
110
126
87
116
145
93
102
95
157
188
59
80
116
105
110
105
141
126
102
126
112
110
158
109
148
67
49
108
113
133
107
104
129
117
97
81
121
108
141
100
147
118
54
54
111
114
156
145
167
112
124
81
118
162
98
89
110
115
143
134
129
84
140
95
95
158
140
109
177
102
145
95
73
90
179
133
95
113
128
114
125
125
148
112
118
101
136
99
139
131
108
131
202
148
184
126
137
128
119
79
124
108
118
96
88
68
117
121
98
125
115
102
112
118
155
116
200
138
135
108
102
149
105
116
109
127
139
131
90
122
173
87
103
107
59
113
169
124
128
148
128
108
87
97
49
158
127
120
157
111
59
128
141
128
115
141
149
176
106
98
74
149
102
113
49
122
120
119
68
157
135
119
91
141
127
129
103
49
125
144
99
92
145
169
130
94
108
106
101
106
77
108
75
106
102
143
70
110
177
159
115
91
128
113
89
134
170
108
102
93
92
104
116
130
117
161
95
87
160
102
140
98
108
88
98
160
88
111
98
69
130
67
90
95
81
149
77
172
93
111
102
77
110
115
54
118
147
163
49
139
125
97
59
113
113
123
133
117
54
85
161
54
120
119
81
67
76
90
102
131
49
98
93
110
154
148
109
134
134
54
137
105
117
125
157
83
133
148
105
82
123
113
175
92
143
87
98
103
137
83
117
119
139
133
131
120
93
81
95
123
112
106
148
93
164
65
104
110
140
114
139
158
157
198
116
131
105
68
98
145
122
129
217
117
127
85
143
147
144
133
74
118
113
54
178
84
151
200
142
90
67
102
113
130
108
86
125
128
124
124
129
102
123
79
112
125
115
96
139
148
105
76
129
102
115
183
118
113
95
80
144
128
111
128
100
110
133
129
93
54
68
128
95
81
78
191
61
108
134
133
120
106
100
67
139
140
125
89
78
78
177
88
132
102
158
102
97
68
126
135
125
93
165
106
121
108
134
150
180
100
78
67
95
108
78
162
91
74
69
95
87
135
108
185
165
54
109
90
128
159
99
98
120
128
125
77
152
120
141
115
79
128
106
90
119
98
105
95
97
93
139
85
141
54
158
117
168
95
68
131
104
115
125
54
78
65
95
105
70
54
96
76
140
95
112
106
128
113
102
161
82
91
139
148
123
167
128
117
100
139
113
131
138
84
115
108
95
93
107
112
120
59
68
131
81
124
129
122
167
103
139
49
130
115
115
167
118
103
113
81
107
84
105
127
147
103
156
120
124
154
104
165
160
88
169
105
131
122
166
126
105
116
161
134
202
119
98
107
110
95
120
132
74
109
98
107
84
139
74
108
89
112
122
151
80
104
144
85
101
129
115
108
128
93
138
182
97
139
139
99
133
80
148
144
54
175
119
142
91
113
54
109
67
108
172
67
74
135
120
98
117
112
107
191
117
84
102
160
125
126
103
95
108
106
81
142
82
145
108
165
74
54
151
100
122
103
131
159
93
122
77
164
81
126
147
100
139
151
105
118
109
90
84
128
124
125
108
132
108
126
146
153
102
129
119
201
163
152
104
91
120
93
61
118
81
129
158
136
116
140
120
127
134
147
95
127
82
122
133
106
90
104
116
118
120
85
95
133
110
136
99
104
116
175
81
81
67
90
121
89
128
102
102
91
112
93
91
143
108
114
67
205
106
77
87
138
89
156
113
128
91
95
111
124
162
165
78
81
103
134
136
95
127
186
168
54
116
92
82
143
49
149
146
93
54
49
113
67
108
137
96
115
93
145
106
93
77
128
141
121
138
124
59
171
121
127
129
76
127
121
151
74
116
83
67
137
108
108
136
91
88
49
76
77
136
121
81
190
106
125
140
92
119
99
108
119
98
67
122
93
86
130
105
103
110
100
113
117
68
49
78
81
132
76
105
87
103
151
97
90
67
75
112
95
163
108
115
168
130
110
107
105
75
131
165
84
125
54
128
146
148
117
124
81
147
54
81
108
90
67
141
119
102
96
102
112
146
142
109
109
98
100
128
108
171
135
172
164
148
124
54
123
90
68
98
158
102
125
165
148
108
87
67
82
95
113
111
77
200
125
135
116
107
139
59
154
98
131
124
98
159
108
105
88
129
95
89
102
49
159
132
140
103
98
67
103
135
61
83
93
129
59
163
140
122
54
136
112
77
59
108
105
158
140
103
102
125
106
81
108
108
130
113
140
67
82
127
177
82
106
183
115
102
106
114
119
103
87
132
93
93
129
95
81
128
141
103
118
184
127
128
135
98
143
111
95
120
77
97
93
54
145
120
175
128
125
108
101
81
102
109
102
184
79
138
102
140
188
148
82
92
83
90
120
95
158
128
121
116
102
176
195
166
76
116
96
113
107
111
89
131
102
54
111
158
76
117
95
78
85
114
76
146
135
107
129
149
119
125
118
98
118
102
145
152
141
105
111
130
131
76
137
102
158
128
121
82
127
174
105
68
188
77
172
119
127
120
110
108
135
124
81
115
103
95
125
112
106
110
100
81
59
108
141
91
98
144
113
103
145
99
124
135
122
108
141
128
89
148
116
92
126
114
49
147
139
81
136
157
65
87
49
77
105
102
108
95
105
126
125
116
107
143
89
91
83
148
113
87
126
76
112
108
129
54
96
98
109
98
140
99
85
133
130
177
150
135
110
90
110
116
105
177
133
54
121
142
125
90
123
120
102
83
89
80
101
59
108
128
98
114
107
129
95
131
97
54
135
88
76
130
104
114
118
102
148
74
150
119
103
113
115
76
106
59
102
130
59
144
121
159
93
108
129
103
95
76
145
117
54
102
89
128
128
138
116
123
105
141
90
120
149
108
54
96
103
103
163
118
100
95
98
106
179
78
128
142
125
160
119
165
104
111
142
102
119
137
67
108
95
133
118
74
220
80
85
49
108
158
128
112
148
109
108
105
103
155
113
115
87
76
49
67
177
141
150
102
144
139
127
90
123
121
111
102
98
102
110
110
107
93
119
123
125
93
135
91
120
128
107
177
131
94
135
98
131
126
115
130
115
123
177
121
83
144
143
135
140
180
49
76
138
162
49
49
130
161
117
148
123
93
102
144
98
96
49
120
148
77
145
116
160
102
90
74
109
112
180
108
104
151
118
103
144
125
128
117
93
83
85
140
136
82
134
127
77
147
95
154
139
97
95
155
143
103
118
117
146
105
182
140
150
62
93
81
126
128
139
145
188
133
120
83
158
150
74
99
95
141
108
143
128
128
132
122
137
102
130
122
138
68
129
140
123
95
177
107
108
98
74
113
118
61
86
103
54
90
85
108
156
140
95
110
91
76
148
82
211
54
118
162
105
103
138
139
101
104
97
57
91
103
158
153
158
92
124
49
125
83
102
88
177
129
84
49
92
125
120
94
89
98
149
93
125
95
113
144
54
98
111
95
122
122
133
154
114
95
81
109
144
102
140
146
49
133
110
74
148
105
113
131
144
83
120
125
135
49
123
135
54
123
183
115
93
111
204
99
114
90
81
98
135
111
76
91
81
101
138
102
116
112
103
145
103
87
146
103
113
92
105
54
81
105
95
147
89
128
169
129
153
144
85
133
114
141
172
154
108
82
108
132
77
107
113
100
136
134
97
86
99
102
144
140
125
141
155
76
114
118
127
172
108
102
89
149
140
108
74
146
153
148
92
102
113
131
61
158
85
122
103
74
160
81
87
85
122
112
105
130
103
67
67
114
125
108
164
160
109
54
67
129
79
139
74
54
219
89
153
114
103
185
113
124
90
84
82
133
114
120
108
118
145
102
120
112
135
95
145
115
122
177
87
124
190
165
108
105
82
102
81
88
181
106
140
112
117
95
143
124
178
106
128
76
138
144
125
96
70
128
67
138
135
49
96
103
49
89
109
87
85
94
91
106
125
147
97
112
185
49
96
102
108
115
122
90
103
134
140
95
115
156
131
149
110
54
79
136
98
125
108
83
104
113
123
193
77
102
139
127
154
103
108
49
97
133
168
90
143
118
115
125
104
74
125
102
81
122
127
103
127
49
91
77
120
161
103
104
54
114
144
186
141
168
108
98
93
132
179
101
149
102
132
148
153
169
74
91
68
155
85
165
111
128
106
126
120
165
160
129
160
122
128
105
103
102
116
143
109
49
133
132
125
144
108
131
59
83
94
49
141
96
81
126
135
129
129
108
102
102
180
94
83
148
128
115
98
105
129
83
122
87
129
148
133
103
110
92
54
81
113
128
54
88
74
89
114
172
144
82
88
105
135
90
59
148
87
130
99
149
110
74
91
97
131
113
123
143
93
167
108
103
115
134
123
125
156
129
87
123
98
108
54
104
106
97
85
83
78
104
87
96
113
148
110
130
141
85
54
105
125
158
82
107
54
118
106
93
77
91
124
132
103
113
186
148
81
49
158
172
160
153
59
143
171
167
91
121
54
170
143
135
108
143
81
156
100
135
153
95
127
96
93
81
97
65
153
109
143
102
67
61
113
81
163
109
149
78
49
83
99
103
109
171
107
153
208
150
143
63
96
54
87
100
93
54
146
143
119
92
69
95
132
144
108
97
121
109
120
108
125
145
100
91
87
118
108
114
114
77
88
172
164
79
144
67
67
146
93
136
102
95
146
96
129
155
54
87
112
125
91
74
133
120
100
100
105
68
99
121
146
110
115
115
70
101
111
108
118
75
95
54
103
128
104
155
93
118
108
101
143
98
131
190
167
92
128
135
114
108
54
95
148
139
191
90
105
109
154
132
92
140
85
86
118
178
67
54
120
102
140
97
107
61
180
103
127
115
114
81
95
114
103
49
99
131
85
133
153
103
104
133
172
120
125
95
146
113
109
110
113
194
154
114
132
102
124
106
145
97
108
86
96
175
164
107
49
100
86
121
84
120
151
143
59
114
80
69
144
177
153
158
143
78
152
113
49
81
54
99
98
108
144
122
123
102
67
108
85
74
120
176
155
114
102
149
54
131
98
94
109
112
138
116
145
138
59
122
49
85
120
82
101
103
49
98
135
117
62
90
106
106
113
97
110
126
109
97
179
97
103
98
127
96
131
91
62
49
110
168
131
89
112
118
106
98
139
103
83
112
83
129
139
111
108
133
106
110
101
133
134
145
104
120
74
80
79
172
133
117
98
114
123
85
118
81
122
95
103
105
140
83
104
91
113
93
168
133
156
67
108
77
90
139
94
126
90
106
109
84
88
138
95
160
150
94
87
109
133
114
229
54
134
103
74
125
107
123
98
136
103
98
123
87
128
121
116
117
107
81
125
101
165
90
98
78
161
144
91
85
68
108
89
170
129
115
116
142
129
83
73
96
92
96
122
193
161
78
125
81
105
90
114
77
130
93
108
103
146
95
103
154
115
112
89
81
96
89
128
135
73
61
87
49
99
110
86
96
141
81
148
129
108
82
108
119
67
67
67
128
84
86
102
109
110
145
76
94
67
125
108
102
114
154
99
93
92
127
133
108
103
108
102
106
98
130
109
98
54
130
169
94
49
102
74
54
91
115
130
124
163
119
169
54
107
117
149
95
102
144
131
112
165
120
71
139
93
54
135
83
91
100
149
170
54
54
74
77
106
168
147
93
108
98
91
166
112
106
133
77
102
130
180
158
171
59
143
73
155
162
104
140
152
98
95
110
106
100
103
106
166
103
61
101
96
145
103
115
79
132
131
76
83
143
161
98
149
144
89
123
122
54
91
102
173
74
97
234
126
148
133
95
144
119
161
97
54
122
73
85
138
59
131
113
153
82
59
133
113
140
123
121
167
117
137
120
95
101
124
129
98
108
102
115
90
59
85
127
116
106
135
91
133
106
125
93
111
108
93
128
95
94
105
101
169
93
127
100
146
113
98
84
182
76
96
144
104
118
104
122
134
125
77
144
54
124
122
107
49
54
144
139
128
111
90
175
118
85
54
100
102
145
123
148
93
111
103
102
92
119
168
82
96
178
129
69
116
145
134
144
81
118
118
54
54
145
148
127
100
140
54
117
95
84
132
116
112
96
95
113
102
54
131
140
102
54
72
102
95
108
98
134
77
177
92
141
141
102
54
126
91
97
116
102
144
107
110
95
92
97
144
117
179
86
96
104
125
109
122
90
140
138
97
91
97
143
134
154
112
74
137
132
136
138
137
109
121
105
137
161
125
87
102
114
84
115
123
145
122
95
151
61
146
141
158
121
101
97
79
119
79
147
153
86
111
150
108
89
144
147
133
96
93
168
106
108
125
125
142
200
130
133
108
49
102
133
118
128
101
127
135
96
132
113
119
81
128
150
105
109
166
106
84
95
108
95
124
115
130
77
170
87
107
90
95
126
103
97
115
87
125
124
135
158
173
133
76
125
59
85
135
99
74
156
110
54
107
102
168
77
129
67
112
90
74
133
182
131
115
87
103
95
129
108
139
91
92
158
95
130
164
95
117
77
98
113
77
54
94
117
49
94
99
100
190
120
163
49
96
161
137
95
54
100
128
105
127
99
79
129
119
109
127
141
143
81
96
92
139
81
172
100
54
106
106
111
186
124
147
108
141
131
83
88
155
115
79
126
135
149
116
105
125
114
74
148
103
169
135
67
123
81
133
132
102
109
98
116
145
167
91
125
77
122
137
105
152
81
112
81
189
61
142
95
138
168
112
74
119
103
124
124
127
105
106
132
96
103
129
178
148
161
75
91
123
114
104
157
128
129
123
129
151
87
104
96
134
141
103
98
134
113
59
127
125
131
93
171
81
190
169
102
59
54
102
108
156
148
151
109
85
131
121
140
100
106
174
90
97
155
114
125
106
128
133
54
110
148
108
103
74
123
126
146
119
135
105
125
86
149
126
67
158
77
108
130
125
113
158
87
136
131
153
126
144
90
120
114
143
84
125
69
167
83
131
113
109
108
110
99
125
131
115
125
125
77
49
80
103
76
113
146
113
145
119
131
165
102
144
131
127
77
101
119
133
127
154
134
98
131
108
129
161
99
130
61
113
69
105
127
151
67
105
129
78
102
103
177
137
74
86
83
173
162
110
144
118
98
161
78
84
108
147
113
77
123
98
117
142
123
143
109
115
135
110
154
96
127
115
112
144
54
132
77
118
115
92
136
120
49
146
152
82
150
96
144
107
131
144
79
162
107
121
115
160
115
105
144
148
124
98
150
144
77
152
111
118
79
147
99
108
139
49
96
117
102
95
96
61
54
68
163
128
81
140
117
120
128
105
112
96
105
80
107
77
95
123
105
134
59
87
59
96
109
103
145
182
171
81
102
125
135
135
131
90
65
94
95
145
83
80
129
136
164
82
133
119
151
89
91
122
54
151
103
59
99
172
54
170
54
88
87
97
138
132
108
127
140
140
151
130
74
103
91
145
169
133
128
126
129
49
95
131
79
103
102
138
137
124
59
153
144
102
150
98
144
124
106
103
144
133
111
135
135
117
102
103
160
68
92
144
163
131
145
132
127
79
95
84
49
87
206
154
82
141
127
68
174
118
132
95
101
101
128
77
95
145
94
125
119
169
95
67
118
89
146
103
137
196
74
141
129
122
120
125
103
95
117
114
106
114
98
133
99
98
59
158
61
131
103
91
91
98
98
123
88
93
83
143
98
150
151
161
144
102
139
131
61
96
134
67
125
118
132
98
105
144
126
103
140
200
78
107
95
98
138
73
81
88
180
108
169
109
143
115
81
142
123
106
112
139
78
180
125
150
158
89
132
102
197
59
108
188
100
108
104
155
117
127
112
120
137
93
108
84
115
119
59
148
49
68
101
148
114
121
113
83
137
125
67
87
107
49
134
54
110
108
111
90
127
83
108
85
130
89
97
97
107
131
49
126
102
110
142
150
81
81
177
99
173
118
141
132
83
166
132
98
75
93
88
158
143
99
108
108
87
123
131
122
124
148
139
94
118
139
101
96
130
116
129
81
121
155
153
103
115
137
192
140
49
154
94
54
125
106
125
49
94
127
144
127
90
98
102
103
154
156
190
59
140
99
73
114
94
140
131
152
116
148
140
123
120
125
80
133
134
112
131
151
128
133
114
150
127
148
100
139
127
100
91
108
114
73
108
103
124
76
148
157
93
104
117
128
104
97
109
123
135
112
105
145
87
119
147
125
76
133
143
171
104
96
84
132
127
105
148
159
95
131
74
54
100
97
103
123
61
106
140
125
108
127
74
78
110
90
80
118
61
98
120
132
97
125
144
127
108
67
54
117
91
76
109
128
117
137
119
110
131
154
131
112
128
102
101
117
96
167
83
115
123
94
132
135
128
177
142
157
94
113
158
119
69
54
92
110
105
109
54
112
112
74
111
54
95
82
88
105
105
97
139
143
102
84
96
105
225
124
128
125
116
132
137
128
96
101
168
110
77
125
149
124
156
144
90
67
112
54
148
120
129
108
82
42
102
68
102
164
127
113
78
91
131
104
96
165
121
140
95
179
120
87
93
108
87
118
95
100
108
136
200
110
95
97
109
144
98
112
99
126
179
85
131
130
113
127
95
116
110
135
80
144
96
119
110
101
137
115
123
98
49
93
108
125
159
79
136
111
107
115
130
98
118
103
59
114
91
138
243
82
81
102
151
108
103
131
118
95
122
141
106
96
101
108
115
106
105
85
108
87
85
106
128
154
124
157
77
132
140
108
82
129
131
83
59
117
150
94
143
165
107
117
129
129
145
96
160
124
162
125
90
114
104
128
131
54
146
99
109
145
147
103
115
103
143
132
108
116
119
125
134
177
147
132
143
120
87
61
105
158
139
54
100
73
117
180
126
122
91
80
144
120
160
116
105
150
139
98
144
165
113
133
93
91
115
163
154
117
121
153
123
139
103
118
117
122
105
125
81
74
136
156
72
130
141
106
59
115
113
118
125
131
129
161
101
150
120
102
108
54
97
148
90
77
91
134
102
137
77
85
109
95
71
95
117
170
112
108
113
54
112
125
121
97
184
130
108
166
115
98
134
145
119
76
141
102
174
174
107
123
143
129
54
91
144
95
94
113
170
118
91
74
125
173
106
93
118
90
96
97
54
108
59
147
194
105
139
77
49
155
123
140
102
118
86
104
113
113
128
87
104
83
73
102
165
118
116
122
87
78
79
49
109
156
139
118
133
106
86
95
133
156
116
99
124
129
89
105
94
78
148
103
107
155
95
138
84
133
76
59
121
144
107
94
120
122
83
95
166
120
116
117
158
100
95
77
134
87
127
136
152
155
83
120
102
131
107
117
99
106
113
81
99
125
151
45
85
103
124
75
107
139
173
102
98
82
145
128
118
98
100
96
101
98
142
115
118
133
99
82
140
141
85
92
102
123
113
103
80
133
82
105
124
153
109
125
139
125
99
98
110
110
108
101
135
125
136
133
96
112
109
54
98
68
54
132
70
106
69
189
103
125
136
54
111
139
106
87
114
93
112
77
123
170
114
123
108
162
147
160
77
102
111
54
86
143
143
129
110
140
103
91
67
156
101
110
91
118
128
113
108
148
105
119
103
146
148
95
115
85
139
94
97
106
136
89
76
90
129
76
96
108
99
112
87
103
135
200
130
147
110
144
120
169
135
123
110
74
160
164
110
118
108
165
150
132
150
72
148
125
110
54
108
79
87
142
119
103
108
90
97
136
130
108
108
139
149
81
189
102
100
131
140
144
54
123
108
157
105
93
131
115
81
113
108
137
110
102
102
145
146
112
102
84
123
68
158
204
80
138
100
95
93
161
104
165
115
77
80
158
142
160
94
133
180
102
130
118
148
132
93
131
178
94
103
170
101
165
149
118
108
67
156
123
54
120
172
115
118
95
107
145
135
121
85
123
148
140
157
116
81
87
78
107
177
117
125
132
68
90
107
158
83
67
132
82
98
149
105
54
104
114
150
148
143
128
49
67
77
129
90
132
115
93
113
143
123
108
84
144
80
128
103
190
135
114
49
89
149
109
160
54
140
92
137
118
74
103
74
137
97
125
237
165
161
143
74
150
119
155
57
54
119
90
92
102
61
129
135
115
147
120
133
117
81
54
138
189
116
93
110
87
116
125
83
143
98
152
112
100
105
74
95
153
118
129
105
103
122
134
86
124
98
146
113
102
154
125
149
145
117
110
133
145
109
106
132
121
81
124
134
113
133
144
99
114
128
129
98
108
135
54
113
86
97
96
154
139
137
141
111
155
95
156
92
135
180
153
88
168
91
103
125
90
167
131
145
74
95
121
97
167
101
54
143
96
74
116
80
88
80
123
95
81
103
89
89
106
81
165
133
103
158
106
148
142
131
146
124
61
76
100
141
148
141
110
150
74
125
93
113
116
159
149
111
103
54
90
143
54
163
138
138
111
93
76
127
113
120
108
97
153
158
100
101
155
123
140
140
120
115
117
130
132
69
119
98
139
73
140
105
126
145
135
145
133
98
147
54
178
163
107
98
149
142
113
144
102
94
82
106
123
69
164
81
101
140
132
118
103
144
127
108
95
177
95
102
120
118
196
115
121
97
158
121
87
80
90
124
170
134
87
69
144
81
133
104
120
108
212
94
107
108
77
87
124
120
172
102
129
114
104
68
126
133
123
129
137
87
127
92
158
156
104
83
148
140
81
127
67
144
110
103
126
125
116
115
82
81
108
133
109
86
81
178
139
93
96
125
116
121
104
173
111
88
111
144
91
144
134
109
49
98
124
105
108
102
128
83
94
121
54
80
83
146
112
135
101
76
123
140
125
163
88
99
179
147
139
143
151
131
116
90
128
49
146
138
134
131
114
136
81
144
146
108
94
155
109
114
102
108
129
115
102
104
111
74
127
98
95
87
76
138
117
98
140
164
76
133
115
93
106
67
102
108
114
91
77
107
108
102
94
148
99
137
98
111
115
124
177
79
142
54
104
137
99
135
102
177
149
153
118
91
105
133
93
141
120
128
150
131
102
107
191
136
109
113
132
99
98
186
139
90
103
92
67
105
128
102
54
140
92
181
142
104
107
105
139
87
70
155
109
85
146
167
108
90
90
98
62
104
139
160
118
94
111
158
102
116
145
92
54
133
102
54
148
103
83
120
102
78
54
107
105
101
141
111
107
123
104
104
132
111
59
144
130
117
107
85
93
107
86
59
133
132
74
107
133
148
54
137
113
129
110
81
149
103
168
114
125
163
105
59
78
101
88
138
172
166
111
130
106
158
141
100
131
88
49
99
93
130
147
138
106
92
112
114
124
78
98
156
93
54
143
59
99
105
54
146
81
127
99
74
82
183
100
98
150
54
103
107
59
95
117
61
119
101
83
135
128
77
76
127
142
110
104
123
115
140
133
147
114
104
139
161
86
117
117
129
103
139
108
112
121
112
73
115
194
119
93
77
161
74
150
177
107
122
121
138
101
102
124
102
54
54
146
138
110
125
114
139
112
158
117
105
85
121
68
125
95
102
127
104
121
108
106
93
174
77
74
123
90
174
105
86
120
100
82
148
153
118
102
95
49
103
164
102
116
100
81
125
108
90
104
78
141
108
111
130
147
135
108
128
125
120
81
49
75
125
90
115
122
110
129
91
104
117
144
128
98
123
113
54
91
61
85
110
145
202
83
77
90
93
99
76
126
103
54
83
152
153
93
108
140
125
105
161
96
124
76
93
87
144
114
108
94
146
110
87
81
103
164
130
91
96
96
168
158
100
81
106
151
49
54
74
113
105
114
95
125
49
162
82
90
113
109
88
101
82
109
161
118
139
115
115
54
156
193
131
83
140
158
95
92
175
128
132
92
93
108
158
49
157
123
74
117
106
102
107
97
115
95
108
77
113
133
173
126
122
140
131
140
118
141
138
141
129
80
113
133
82
105
154
102
108
126
116
107
77
163
113
160
113
103
94
143
89
154
97
107
131
91
105
152
139
97
125
99
163
109
141
110
148
129
177
102
137
155
115
123
71
101
147
114
177
54
144
123
90
147
106
101
108
114
95
54
93
130
95
139
119
98
105
165
136
54
133
126
131
130
150
107
49
49
154
83
132
148
126
106
70
54
108
153
90
130
93
49
105
123
59
148
158
130
101
143
76
121
102
127
73
85
171
76
85
139
102
87
68
123
134
191
126
108
76
114
172
90
94
102
148
168
119
103
87
117
110
127
108
152
115
108
137
146
133
108
109
144
113
87
95
80
136
123
92
128
112
156
167
115
116
100
97
133
95
99
125
90
77
67
96
131
149
94
152
130
96
113
128
108
113
67
95
76
148
161
96
161
122
125
105
112
129
49
54
122
100
68
141
97
92
84
108
176
149
107
115
155
119
138
146
81
122
102
145
138
98
68
141
68
113
116
115
140
81
106
103
84
123
125
102
116
112
78
99
129
102
111
109
110
102
124
102
95
190
137
100
105
109
132
140
122
105
123
148
158
102
136
91
160
126
141
139
146
114
103
148
113
54
120
148
134
106
140
119
116
102
129
106
59
113
133
114
102
143
115
76
141
54
155
141
118
133
134
138
102
87
99
95
87
97
76
128
120
109
125
95
128
148
148
139
122
95
102
90
89
108
95
150
140
190
119
106
98
98
79
136
148
136
83
92
102
170
123
105
80
135
146
149
115
120
54
140
168
105
73
97
97
113
146
107
142
89
102
197
123
100
103
177
49
109
93
108
141
124
95
54
85
113
155
148
102
128
161
81
177
143
102
153
177
67
67
137
93
88
108
108
107
49
156
85
74
87
117
95
93
169
132
133
159
125
187
148
105
108
74
127
103
83
127
101
81
92
59
108
119
76
129
186
94
42
124
173
113
145
135
138
146
122
98
74
103
95
148
121
83
101
103
140
132
180
98
109
125
158
102
131
126
49
82
145
134
131
97
80
98
144
193
97
103
112
145
102
95
158
103
112
106
69
153
132
184
139
148
117
82
122
81
91
156
98
109
120
122
152
123
100
98
120
108
167
118
100
195
169
102
85
120
59
131
143
123
148
97
124
128
62
106
107
102
151
87
123
82
144
162
131
59
113
106
134
107
92
129
142
100
93
106
143
123
161
54
136
76
114
69
93
96
96
133
130
131
108
101
125
117
120
95
71
129
126
96
139
123
176
81
113
95
148
95
148
85
182
126
128
82
108
117
80
49
158
113
141
188
105
105
131
117
129
101
173
78
84
124
76
137
96
106
135
161
54
115
102
100
124
108
130
96
152
102
82
90
106
152
75
125
98
122
108
129
177
175
62
101
81
103
76
109
194
85
113
115
118
177
129
108
144
105
109
153
87
115
98
165
98
49
124
178
89
67
49
177
165
147
171
110
131
133
82
93
104
156
158
114
121
74
133
54
93
82
151
141
80
108
113
108
76
164
82
115
113
148
95
96
82
120
59
147
78
153
160
131
129
123
95
116
165
158
93
119
90
95
163
103
69
133
112
104
190
78
110
143
98
113
119
89
103
59
156
123
81
82
106
97
54
148
113
140
54
93
177
128
98
54
103
167
93
111
147
80
129
93
107
49
129
155
102
113
115
138
138
138
108
87
140
135
95
124
118
97
110
99
117
193
183
82
129
61
90
54
116
118
103
118
106
102
98
140
114
108
106
95
124
107
95
151
87
155
133
157
97
102
84
155
167
132
86
113
119
110
119
103
148
83
126
158
125
135
114
98
131
150
93
144
162
61
115
108
125
125
92
105
162
108
121
138
123
128
90
133
144
129
145
141
84
94
111
108
152
100
172
103
49
87
154
113
105
108
159
161
126
116
61
118
140
123
98
116
116
108
148
125
138
147
89
68
87
114
140
54
118
83
54
121
107
156
129
125
139
167
102
103
101
101
146
156
101
162
200
140
82
177
133
111
152
138
148
129
132
102
83
76
139
151
103
128
147
98
115
133
93
86
139
105
115
124
153
125
97
104
104
143
102
99
59
138
95
90
135
103
119
144
182
82
76
128
54
149
119
144
116
95
90
133
143
131
119
83
121
118
132
180
111
148
102
93
98
149
98
134
156
132
143
134
129
125
128
112
118
132
153
49
137
155
106
202
122
91
133
87
200
135
124
59
95
109
74
162
156
131
89
61
90
111
115
130
97
123
144
116
133
124
139
49
118
112
122
153
101
98
102
95
78
140
107
134
87
74
128
69
115
149
105
130
45
92
136
132
125
93
99
155
94
80
149
78
140
113
117
117
125
145
143
108
110
108
103
145
148
110
90
117
54
61
105
105
163
79
77
106
161
113
148
92
128
107
135
108
123
165
127
87
132
144
113
163
90
88
95
127
67
74
91
81
96
129
68
54
126
156
156
212
49
122
143
153
78
134
135
139
133
119
92
81
156
139
97
139
110
185
104
150
123
124
122
90
49
104
108
54
167
69
156
132
174
78
150
131
54
140
161
122
90
88
122
160
135
108
122
125
94
77
98
125
129
112
125
77
89
118
117
160
148
90
102
88
114
148
105
59
140
76
125
99
144
138
61
175
84
109
96
122
90
119
104
76
126
102
117
111
106
113
146
100
54
144
105
141
117
122
101
83
125
91
116
147
126
101
135
74
103
103
103
87
54
139
82
95
101
120
82
87
105
128
119
134
107
124
130
151
148
165
99
129
81
76
131
108
95
148
77
97
78
99
143
59
160
154
81
77
101
87
98
153
138
129
54
79
118
90
81
144
134
96
143
98
149
109
105
103
103
111
118
163
59
61
54
103
104
74
163
116
172
98
96
142
167
65
130
148
169
108
115
171
92
114
101
114
113
130
153
98
81
84
102
49
122
186
93
157
180
103
157
138
128
82
173
68
110
125
151
135
164
107
150
106
171
105
49
97
106
144
107
108
114
95
106
54
112
123
123
91
145
76
124
91
113
106
179
148
108
101
84
112
106
124
148
90
147
106
117
96
170
123
65
102
144
54
117
93
103
98
111
131
140
133
115
116
115
116
143
107
151
130
83
98
89
59
79
127
81
98
102
123
67
139
135
107
49
108
149
124
162
61
110
73
127
156
150
59
125
120
148
78
122
97
81
104
150
142
108
153
124
76
100
122
99
92
144
96
113
113
94
102
172
145
133
103
77
54
76
99
129
177
90
158
73
93
103
86
139
125
131
108
147
135
145
119
139
128
104
117
121
78
144
146
127
99
103
134
125
174
59
169
98
97
77
147
85
95
128
82
112
135
95
149
113
129
92
54
145
95
59
108
86
134
125
129
114
54
102
78
115
137
156
112
129
74
152
173
117
90
67
157
94
80
117
127
106
59
107
113
98
131
83
138
68
107
113
185
54
93
156
218
117
98
140
98
87
83
129
146
112
128
106
128
109
110
140
103
98
154
74
95
98
130
119
118
78
93
81
78
79
114
113
122
54
99
138
135
82
102
106
102
143
91
154
165
102
163
115
81
109
141
85
102
93
92
145
128
145
112
104
115
129
126
108
145
93
93
98
135
139
88
120
80
125
112
95
102
132
77
149
132
89
54
67
110
91
133
125
108
163
133
120
124
101
111
129
77
114
152
117
179
84
108
146
107
113
151
80
101
106
166
98
96
123
106
89
109
147
76
77
144
97
81
149
93
96
49
115
149
115
54
105
54
152
78
103
125
92
104
115
106
170
145
94
138
95
148
143
110
131
171
120
149
104
148
98
120
119
129
145
54
139
135
147
118
127
145
158
105
150
59
90
98
90
81
122
95
91
85
97
89
134
149
92
63
120
112
105
137
90
77
93
102
81
96
68
102
98
156
149
129
118
123
120
59
102
120
98
90
103
84
87
49
118
96
72
114
114
54
134
157
122
74
128
131
138
156
141
128
49
85
102
133
108
54
115
156
77
151
172
106
83
95
100
81
123
126
153
117
81
49
67
98
131
101
147
109
82
122
161
177
111
109
91
74
98
83
93
127
130
105
108
131
125
117
105
108
129
161
131
78
140
112
108
129
103
102
54
99
77
103
141
113
102
90
81
85
87
127
85
114
114
125
108
61
118
118
123
120
158
156
93
83
99
127
77
118
84
116
104
166
54
98
165
102
131
98
105
99
95
106
154
124
105
96
133
61
173
118
135
108
115
97
106
141
113
177
102
74
98
108
92
108
54
103
82
103
127
125
82
99
110
128
166
91
123
144
78
121
155
82
132
98
158
98
114
107
87
196
93
90
153
59
143
182
74
138
94
101
108
97
99
91
61
172
142
112
148
126
125
95
101
123
98
140
93
118
212
83
145
119
149
102
95
116
120
98
54
98
152
131
59
97
104
155
127
99
96
144
106
129
91
102
104
168
102
186
98
158
148
95
94
115
131
54
177
78
91
42
117
177
113
76
126
92
87
125
118
91
148
85
49
112
107
84
49
103
107
110
128
128
107
87
172
131
141
146
103
147
145
149
115
89
125
78
80
147
136
136
81
103
128
142
103
75
127
114
98
113
107
97
139
78
101
125
112
172
117
138
98
98
133
117
78
76
81
87
143
120
114
59
144
131
95
74
98
135
133
147
105
112
107
103
112
144
158
59
49
104
54
103
114
103
85
131
94
113
125
54
100
143
83
142
153
130
76
59
148
109
113
139
122
97
91
96
146
89
154
107
145
153
79
96
105
90
101
138
82
142
136
85
147
139
156
144
135
137
114
133
129
133
164
82
176
131
95
111
91
180
163
114
107
172
67
103
129
107
127
82
126
100
109
122
76
172
68
103
147
133
108
135
96
149
49
146
49
133
164
147
76
115
115
113
102
160
148
93
87
122
94
101
143
118
87
124
54
59
103
158
90
97
181
99
107
147
144
82
59
108
130
108
157
98
120
118
95
83
101
90
148
145
111
126
148
130
154
125
141
97
116
158
177
54
119
135
163
165
151
83
149
107
76
120
76
123
184
95
102
165
115
98
76
117
125
144
126
125
128
81
115
108
94
136
98
113
135
90
76
93
119
94
73
95
119
139
158
67
98
90
110
102
157
138
92
89
108
128
113
157
82
101
168
54
87
177
118
49
54
116
160
103
164
148
100
102
144
74
170
161
150
95
114
133
92
98
151
89
123
86
101
153
74
118
116
104
143
103
93
89
129
104
81
106
104
94
88
108
109
140
140
196
125
121
102
128
92
136
67
122
79
124
108
90
141
81
54
96
107
118
54
101
107
112
138
85
108
116
118
158
76
174
102
107
78
97
101
94
117
67
130
106
145
81
108
139
101
120
115
163
180
122
125
97
74
105
181
126
157
154
155
96
154
59
133
83
167
99
144
91
87
97
103
95
113
127
75
109
110
167
130
59
123
69
115
105
119
121
128
101
93
92
102
125
115
159
102
102
125
54
74
107
120
162
112
105
148
150
112
160
81
155
145
82
115
124
235
116
117
123
115
110
96
152
108
91
54
126
76
82
175
81
135
102
193
80
129
101
139
150
133
139
86
101
98
87
140
59
130
119
115
116
93
150
126
125
129
124
132
113
92
113
122
101
136
148
91
108
128
62
132
112
59
102
92
129
113
67
111
108
143
128
93
125
116
82
160
97
54
144
117
83
100
114
132
77
123
104
61
87
105
49
129
113
158
141
95
176
120
82
117
83
150
180
95
126
127
77
109
129
78
124
115
54
177
117
95
149
131
123
106
107
161
123
119
119
95
144
106
180
179
87
77
138
84
71
81
148
132
102
93
143
149
74
135
122
146
97
129
113
146
54
95
113
138
102
117
98
103
101
111
109
49
87
109
102
135
156
95
147
74
57
153
143
169
109
140
115
102
87
125
73
111
179
147
77
134
166
102
125
113
116
131
126
135
161
154
103
135
77
129
106
49
85
86
177
113
169
160
71
81
106
69
124
102
120
147
74
125
128
107
59
121
116
77
78
74
133
168
112
95
108
49
113
91
54
54
95
123
49
141
98
76
104
135
133
90
125
76
102
95
103
102
142
95
97
114
108
154
131
162
160
166
95
134
119
95
104
119
95
100
87
102
54
108
102
130
89
112
104
148
103
102
108
151
143
112
132
74
85
156
61
118
104
96
103
105
102
102
160
120
113
98
94
93
103
161
110
107
158
141
116
108
95
92
127
170
129
125
122
118
182
86
124
90
90
145
152
113
130
118
45
117
81
54
133
127
118
98
59
88
106
82
146
148
112
122
131
54
54
81
136
111
133
118
121
173
128
96
103
139
106
96
98
150
93
95
135
114
81
131
156
146
76
122
100
190
85
117
61
105
134
68
151
95
45
122
90
98
156
194
88
143
134
144
101
76
81
140
124
114
143
114
140
106
157
141
234
107
85
123
87
132
129
174
135
78
126
96
103
54
126
107
120
144
99
183
110
119
95
104
82
113
127
106
87
115
81
74
169
129
54
122
95
104
118
82
131
82
128
97
151
95
112
132
70
110
129
92
125
130
96
132
129
99
95
148
61
167
107
101
105
139
115
124
113
158
184
117
145
135
109
97
87
54
106
115
100
95
113
105
123
148
124
148
114
128
54
88
124
110
80
137
173
76
135
82
124
108
117
150
212
167
148
143
178
152
77
122
91
76
92
90
95
213
142
65
111
106
108
121
125
77
132
113
107
98
98
140
134
141
135
98
74
99
120
98
102
95
133
105
54
135
224
104
77
149
103
120
125
165
133
85
89
125
49
130
96
108
104
83
121
98
131
117
102
102
79
163
121
83
124
179
153
159
120
77
155
138
160
128
92
162
120
98
90
78
95
161
89
161
108
102
129
68
155
88
147
87
150
104
112
103
150
116
121
110
151
177
49
54
76
98
130
80
89
112
102
122
45
96
123
100
74
148
154
108
78
132
98
143
102
93
97
103
158
125
90
128
149
93
77
140
98
113
148
126
112
113
108
95
100
104
100
146
118
103
133
93
95
96
139
97
109
54
150
131
120
158
142
95
116
91
131
111
113
96
150
59
127
110
113
154
152
122
110
119
145
96
102
141
91
77
145
102
124
103
81
121
109
98
74
156
54
110
134
81
158
149
95
125
129
149
107
120
97
118
162
134
175
140
93
85
109
81
98
131
104
93
140
106
77
153
102
98
95
131
168
114
131
81
133
91
103
89
156
115
93
116
98
139
141
87
77
106
127
152
110
102
83
130
95
91
133
117
103
139
124
93
126
49
160
98
93
161
133
174
98
146
148
123
154
86
109
102
135
147
157
111
123
85
137
102
96
120
96
117
120
54
141
118
104
94
98
83
115
76
87
103
90
54
102
106
139
182
142
93
85
122
146
160
108
103
105
130
114
125
102
129
95
106
148
139
105
129
102
109
78
105
144
130
108
140
110
137
104
112
136
167
147
102
127
100
93
82
97
134
67
133
122
128
177
93
102
129
133
107
152
87
131
95
87
156
105
113
72
129
92
149
83
110
80
138
119
59
54
126
96
98
54
157
97
132
108
102
112
98
118
86
145
106
78
95
105
161
96
77
95
129
95
129
144
81
49
172
145
67
169
95
135
106
68
130
143
120
54
104
146
78
143
122
171
123
156
97
78
108
127
69
96
148
78
134
94
112
92
144
108
144
137
77
172
146
140
147
159
54
82
99
168
144
149
134
86
132
103
146
181
160
141
61
118
54
114
123
103
154
95
94
68
158
106
141
102
95
85
116
154
142
103
95
59
134
180
179
178
117
92
156
93
113
103
88
140
172
124
164
97
148
125
126
90
129
124
76
128
77
103
69
80
152
142
103
49
95
96
108
168
108
106
132
102
141
136
126
130
158
83
74
116
74
120
112
132
162
161
149
133
90
99
159
61
113
114
110
78
138
108
59
130
101
98
102
139
113
54
112
109
113
81
145
84
169
108
108
167
119
125
74
81
100
77
158
115
108
109
113
76
69
108
122
87
135
188
176
99
137
98
155
126
135
123
114
113
67
88
83
81
131
121
74
115
73
128
86
85
127
105
96
134
70
177
154
83
131
126
118
108
69
87
113
108
90
149
125
125
148
94
102
175
103
54
104
100
103
59
89
175
152
98
118
194
69
98
98
102
102
127
108
131
59
72
116
90
61
118
133
54
95
68
49
114
77
59
82
146
102
115
90
105
140
108
54
113
98
103
103
61
95
153
119
106
133
103
112
148
131
73
125
163
59
107
108
141
126
128
96
83
147
96
54
137
85
115
153
106
106
118
135
104
158
148
152
172
49
144
147
137
96
123
105
148
108
83
71
182
151
105
105
142
120
108
124
97
126
108
117
122
114
90
126
175
158
108
146
81
164
163
116
137
139
118
74
131
140
105
67
106
98
136
82
118
132
84
173
113
95
110
111
54
123
126
78
59
103
155
110
120
67
77
105
132
145
49
167
102
73
95
98
118
133
95
111
121
130
80
118
95
96
110
87
128
116
119
145
158
140
108
88
91
160
103
120
133
151
101
91
144
77
96
94
186
76
131
135
124
86
120
120
94
96
123
136
95
59
105
88
108
95
108
148
67
104
130
178
89
106
143
144
128
49
134
163
114
124
87
102
98
132
126
81
114
141
151
142
131
106
129
132
140
73
154
132
95
112
81
102
136
88
94
110
99
101
160
94
106
94
113
68
171
100
149
108
74
91
116
76
137
97
110
95
115
115
138
69
125
134
107
95
141
127
103
110
106
118
91
106
101
108
143
169
105
74
95
127
117
61
120
170
192
143
127
177
138
103
118
74
131
101
134
54
134
114
93
54
122
177
102
82
140
103
120
101
145
124
98
138
122
176
82
146
74
76
95
99
98
109
150
82
135
165
97
97
118
85
76
143
87
74
129
106
129
106
129
77
135
95
154
112
98
149
120
107
102
81
105
59
87
91
172
103
79
99
98
123
81
59
54
88
136
88
128
137
102
49
89
124
84
89
161
85
116
110
139
108
102
115
144
104
85
82
147
118
117
148
81
112
117
83
83
103
137
86
112
133
78
85
49
108
129
129
139
105
108
125
99
54
106
97
108
107
87
84
101
159
104
119
114
141
131
109
147
61
142
74
108
127
76
147
132
98
103
149
158
77
113
168
54
130
119
159
102
165
74
95
54
81
100
98
98
79
49
143
234
154
115
125
75
87
103
146
133
127
141
94
147
148
115
81
165
74
106
112
148
163
102
98
133
123
154
74
129
134
67
153
192
90
125
131
128
121
88
125
106
121
157
91
133
145
108
159
103
112
180
128
91
127
120
117
113
139
78
77
122
133
115
75
79
141
122
185
141
177
103
116
82
80
98
84
116
127
150
118
102
122
59
61
54
81
143
111
78
86
189
95
113
133
106
74
96
102
102
128
84
127
110
86
54
144
157
138
117
129
139
144
102
102
148
143
118
103
157
145
144
104
102
124
137
97
139
114
125
113
82
87
100
49
93
143
101
81
117
80
77
80
107
83
120
137
155
128
77
118
139
76
102
105
152
79
113
115
74
119
156
134
54
75
198
148
90
102
105
126
105
158
148
67
102
98
157
103
132
95
76
54
102
78
108
160
143
104
128
103
116
105
131
159
90
146
166
138
178
54
104
98
108
141
102
127
120
153
117
103
98
102
110
77
112
119
85
99
134
130
98
81
114
130
120
103
129
131
98
106
113
148
67
98
143
102
139
82
87
109
156
152
166
126
99
49
132
127
147
120
102
102
112
124
122
117
68
103
74
54
54
81
102
54
127
89
81
102
105
90
159
104
107
124
95
138
95
86
90
92
108
76
112
144
54
142
120
92
128
85
117
135
131
136
97
106
54
109
149
114
153
117
106
67
114
101
108
91
103
145
125
49
113
170
108
148
125
59
138
114
148
137
134
104
139
90
150
150
113
86
176
127
128
108
137
135
49
123
97
49
103
140
132
101
54
54
131
95
128
148
54
133
78
93
118
152
171
138
127
167
160
122
97
107
105
177
101
108
110
153
108
135
136
117
126
106
93
84
110
194
110
78
194
129
110
87
138
139
94
54
113
140
153
105
116
73
160
97
49
115
174
107
141
102
125
169
100
112
93
81
92
124
129
131
143
82
142
150
89
149
133
122
115
93
54
147
121
114
54
104
114
117
74
84
137
97
128
157
124
105
108
102
113
118
141
59
143
111
49
150
123
118
118
112
61
102
110
93
115
116
148
145
97
163
95
86
135
74
115
108
96
119
101
117
98
114
168
90
112
99
54
95
106
54
112
130
139
118
139
95
103
119
97
49
98
160
144
103
105
106
102
129
102
92
54
98
129
95
82
125
165
128
205
93
163
81
103
114
134
106
74
88
172
120
129
156
165
119
148
82
94
105
110
91
99
102
123
74
145
116
98
144
102
122
111
54
93
165
89
116
101
117
109
81
96
142
103
105
105
110
104
90
81
114
147
144
91
83
143
97
182
85
122
54
162
90
127
102
144
130
76
77
90
111
153
122
103
76
159
106
95
167
142
134
49
110
116
157
119
172
113
54
122
100
59
98
97
120
126
113
122
101
140
74
108
131
143
122
115
134
108
110
133
98
74
118
103
87
85
129
146
123
94
77
102
113
96
137
116
107
164
137
133
140
95
139
148
113
96
154
102
149
139
108
144
77
94
145
96
114
140
100
103
132
117
149
125
54
161
128
144
141
101
133
54
135
135
136
67
77
101
113
112
96
165
128
143
106
103
136
98
97
87
129
146
54
127
144
54
157
145
110
90
139
115
162
113
127
154
127
102
151
119
113
132
117
104
98
49
130
112
113
95
143
168
136
120
111
54
165
113
102
102
122
148
103
54
74
127
54
80
102
105
84
67
161
137
85
130
131
104
99
81
118
123
118
103
128
128
90
90
159
95
120
112
125
108
113
49
124
143
129
113
135
96
111
143
125
138
74
117
131
119
127
59
98
120
126
67
98
77
108
120
121
122
87
98
102
180
110
49
99
130
107
99
120
105
128
142
145
88
92
83
102
74
54
67
98
49
93
170
123
95
102
133
119
74
143
107
119
105
134
132
143
59
174
79
124
146
101
95
125
115
128
126
191
82
81
133
109
135
167
126
102
120
102
91
107
171
86
98
98
85
107
121
117
128
109
103
148
95
100
119
102
114
199
111
103
90
81
131
104
129
123
102
160
131
113
165
102
98
111
78
127
114
107
102
161
54
158
102
95
108
83
125
104
96
131
126
156
115
135
107
127
94
105
104
109
100
111
108
127
108
135
118
127
163
74
99
93
111
105
129
126
110
135
124
97
155
125
91
125
95
102
94
49
105
108
149
124
125
94
100
80
81
81
128
61
104
115
122
113
99
157
162
49
125
54
193
91
96
98
123
80
130
172
59
68
148
108
88
159
122
54
115
128
99
81
65
87
130
180
124
104
87
49
73
155
155
81
103
148
128
123
95
133
144
110
124
87
174
163
140
140
102
82
150
122
74
105
110
109
102
124
154
135
68
84
123
124
129
102
99
81
93
65
138
150
196
87
192
125
100
80
110
104
122
102
54
54
124
80
179
149
87
95
92
108
124
108
128
54
131
152
145
133
89
87
158
104
95
131
137
103
95
108
54
80
105
144
132
118
122
144
151
136
105
103
108
100
145
157
154
61
73
154
103
79
113
148
95
54
112
142
134
59
157
89
93
114
131
141
127
82
132
148
160
100
90
146
128
146
112
126
160
122
81
98
105
90
81
98
126
100
82
140
74
119
49
81
120
109
86
107
89
135
85
98
124
111
129
77
158
59
85
120
159
107
130
112
103
103
95
75
102
97
205
102
82
125
113
91
129
109
122
216
54
125
90
119
80
98
112
143
78
120
98
117
87
107
130
81
115
109
89
125
125
108
102
101
118
178
115
77
144
87
154
110
109
92
124
81
83
127
152
67
86
116
105
108
102
158
142
78
95
102
123
95
173
125
90
95
118
109
83
126
77
122
149
183
126
90
95
120
105
92
113
116
69
100
54
123
112
102
127
111
54
94
92
113
176
104
67
105
147
81
148
100
103
49
98
144
82
98
119
164
78
87
153
98
98
172
111
154
130
49
144
115
138
108
132
88
108
129
135
132
108
147
95
139
140
145
88
91
109
115
100
98
83
157
61
108
90
128
89
92
120
125
93
119
141
97
128
128
154
144
144
166
124
137
67
134
59
93
145
122
101
145
101
131
120
82
122
102
129
135
123
92
153
49
102
78
158
112
74
116
103
108
84
128
95
150
153
74
95
125
115
96
128
123
106
106
74
115
167
128
157
114
49
79
125
90
107
154
81
61
134
168
100
125
96
96
115
127
148
74
81
124
73
84
124
116
95
174
98
81
110
177
82
113
85
83
143
148
136
118
148
142
147
98
98
103
91
107
128
154
138
166
172
133
96
158
143
110
147
137
113
135
98
135
113
69
68
112
94
94
102
106
82
110
105
95
90
106
87
99
147
84
142
173
76
148
103
133
117
138
82
54
118
83
142
107
117
98
146
127
129
159
77
106
133
128
96
111
110
136
54
92
133
103
98
85
108
82
110
108
96
119
118
98
133
125
111
146
103
86
85
95
125
103
94
149
82
54
148
141
113
67
113
125
108
127
88
54
134
158
148
111
146
54
107
159
93
82
172
79
98
85
94
106
165
73
88
96
144
115
104
92
139
124
127
143
124
165
128
54
101
120
81
100
160
129
160
94
148
119
135
110
148
122
97
108
54
98
80
77
132
144
130
127
100
128
152
102
200
183
102
126
54
115
95
160
110
95
101
173
108
111
142
95
94
97
149
49
126
97
96
133
116
112
113
49
157
107
96
140
116
103
123
95
126
93
143
115
74
134
97
107
113
113
124
143
125
83
103
92
116
115
170
149
54
92
81
138
76
106
94
78
88
98
82
150
101
133
74
112
102
67
85
120
130
76
121
143
131
106
54
86
95
130
134
93
136
119
74
142
103
137
120
139
115
103
120
75
106
82
102
122
134
143
81
110
98
93
172
101
89
105
148
93
112
139
74
115
116
97
116
113
138
92
108
83
134
103
118
111
107
108
128
120
102
179
102
105
128
151
93
83
162
177
93
107
74
144
149
98
128
115
144
90
128
133
113
106
54
82
49
108
138
91
95
98
77
118
94
148
82
59
146
145
87
139
145
59
113
180
77
147
85
131
122
177
98
95
127
108
179
87
108
118
136
102
140
100
102
118
125
93
81
161
67
73
95
162
94
80
89
54
138
68
76
105
152
128
133
102
100
158
133
139
76
107
123
76
78
133
193
108
135
95
185
133
102
83
150
125
99
126
104
87
114
95
103
54
103
81
108
119
94
102
148
127
108
125
83
101
85
119
88
80
101
126
154
112
115
80
90
92
100
125
137
112
144
108
103
169
123
152
124
130
89
87
108
98
135
98
106
151
108
142
106
129
149
86
89
96
123
139
147
118
103
123
114
114
95
157
132
98
143
155
99
177
144
123
90
85
102
105
122
145
111
133
184
148
106
92
112
95
87
158
92
91
113
160
103
82
218
59
186
142
153
68
164
108
105
112
154
161
156
81
122
163
49
120
95
65
129
120
116
116
93
111
152
120
114
82
127
102
73
102
134
95
107
111
190
54
100
112
90
168
140
127
93
135
167
122
111
73
127
117
131
125
102
106
102
111
122
112
92
112
134
73
128
96
124
118
77
101
166
108
153
125
142
115
107
89
114
113
99
133
114
128
74
102
99
132
73
81
115
108
148
108
59
116
103
106
45
134
153
133
102
98
124
120
95
74
92
141
74
134
110
89
101
119
127
113
94
98
143
138
114
73
54
102
109
125
127
90
74
149
108
54
113
103
108
98
113
112
177
83
128
100
138
145
120
138
105
123
148
102
112
107
123
86
125
116
86
61
74
77
107
139
97
160
129
124
112
95
102
113
168
91
135
85
100
144
122
110
135
49
134
152
185
131
122
128
107
101
110
146
59
134
128
112
91
78
130
103
139
202
105
95
113
119
123
141
120
59
112
102
108
96
135
133
116
100
102
95
90
111
119
59
142
98
54
129
108
90
108
99
113
160
90
102
88
147
90
102
119
103
115
96
110
128
158
147
140
87
137
119
90
124
102
59
95
105
67
54
125
148
142
148
81
90
103
139
98
162
154
103
105
130
100
102
160
71
104
125
105
54
90
97
146
87
133
123
143
108
106
98
121
103
141
59
102
140
139
109
152
123
100
88
113
123
110
92
111
73
148
138
95
118
92
61
108
85
83
124
110
143
123
160
110
175
177
81
123
113
144
118
143
145
89
180
179
106
91
160
133
106
67
83
128
103
142
88
165
153
133
102
111
100
109
108
177
126
161
119
103
135
144
132
108
145
98
159
102
104
182
136
158
93
138
135
108
148
98
132
115
54
105
98
95
54
94
82
54
133
116
95
118
93
125
156
143
97
78
131
102
85
107
91
151
83
117
104
114
134
100
94
83
76
97
103
93
85
117
151
123
96
120
144
102
135
135
146
118
102
133
148
120
108
91
125
115
157
104
113
95
113
87
126
81
177
59
138
102
87
80
81
49
86
110
105
113
88
132
148
167
112
76
99
108
96
113
103
125
148
133
54
114
78
102
78
77
132
108
98
104
76
153
113
78
54
177
99
102
104
108
122
144
98
97
129
113
73
93
93
139
102
120
88
148
77
93
169
146
128
81
143
145
81
117
111
82
159
117
134
134
140
118
92
128
127
108
122
131
112
128
96
161
143
133
92
54
200
111
109
98
111
126
89
98
76
132
54
54
112
95
105
151
49
103
54
115
116
114
104
151
148
77
78
144
116
61
74
125
96
133
130
181
77
84
54
137
111
114
130
139
54
154
108
125
120
133
68
104
131
110
106
104
74
200
110
102
107
117
154
135
110
98
139
132
123
121
145
85
119
133
76
87
131
140
104
90
90
105
132
148
131
110
110
94
177
177
184
84
77
92
102
97
130
106
98
150
108
80
147
93
131
54
76
128
122
102
105
69
158
93
105
83
159
131
119
135
103
99
71
140
107
177
108
113
87
59
129
103
134
96
128
113
98
143
87
132
154
182
164
185
164
167
103
111
83
147
133
59
179
129
95
139
85
147
122
121
112
140
128
90
119
123
113
144
122
137
144
133
102
95
105
148
111
132
143
98
118
91
69
117
113
155
123
54
95
115
98
102
84
102
115
114
107
105
166
108
99
132
148
137
103
122
112
115
86
115
129
78
68
99
160
90
125
102
111
157
116
131
141
139
131
134
95
113
119
163
155
105
117
134
105
163
148
108
107
125
54
67
90
102
112
129
113
132
133
152
139
54
127
94
69
102
87
97
125
83
103
136
114
54
131
101
147
101
102
124
95
86
105
113
84
98
121
106
155
111
103
113
112
76
140
177
121
120
135
128
76
74
165
49
105
49
117
98
107
102
122
179
84
133
164
148
123
118
104
54
114
131
139
54
172
90
96
117
102
139
142
116
127
148
92
127
155
135
120
111
110
118
121
102
142
145
107
127
98
102
114
90
177
111
82
139
151
119
103
67
86
98
82
123
135
133
162
111
122
145
111
177
114
69
173
110
139
127
59
135
87
74
87
123
158
132
110
200
127
136
59
144
148
105
81
128
61
125
86
127
116
125
135
95
97
131
54
157
118
100
126
110
108
128
96
87
84
177
78
89
118
142
80
124
122
121
98
102
125
96
82
103
87
117
129
191
113
95
49
125
133
125
107
115
82
122
141
67
77
125
127
108
105
99
101
102
128
151
95
138
160
114
95
69
102
113
122
134
104
113
125
137
108
81
54
108
129
143
126
129
133
108
80
69
157
110
155
102
95
62
104
89
105
92
148
102
78
107
148
102
96
124
54
123
54
112
127
54
132
140
90
139
123
151
114
102
126
148
135
108
112
110
133
126
162
90
108
110
146
83
163
180
96
120
116
111
108
100
68
123
113
189
104
96
76
116
83
113
100
136
126
167
101
134
116
59
144
54
92
74
83
104
88
145
85
148
123
166
171
80
119
87
108
158
128
96
158
91
94
95
103
81
165
164
87
163
67
147
176
154
113
169
79
123
102
144
93
125
110
126
110
105
190
182
109
93
148
120
100
98
138
103
128
128
98
108
161
135
108
186
120
105
188
74
108
123
59
105
200
130
114
148
185
108
105
105
97
138
132
69
67
110
103
148
102
136
105
107
134
95
125
160
79
105
80
132
139
108
105
128
108
98
112
103
113
87
87
95
132
99
110
135
150
102
104
100
146
136
113
97
120
76
74
99
49
133
49
109
102
177
108
163
159
159
90
122
54
129
142
96
120
102
88
118
103
90
145
94
150
192
76
83
103
100
102
84
126
107
104
134
98
112
128
54
82
114
177
134
141
113
111
111
106
108
61
113
93
105
108
131
113
105
121
93
113
109
143
103
99
109
176
90
126
141
175
123
74
144
120
104
101
129
146
97
76
172
136
129
120
194
73
111
150
74
133
81
82
134
88
146
125
106
96
107
135
73
129
125
139
112
116
157
96
81
103
115
166
166
190
115
156
158
91
162
102
83
75
127
104
133
149
127
109
201
95
82
108
104
124
59
135
131
136
132
149
142
135
109
110
102
87
163
95
82
112
92
138
132
129
123
128
93
54
161
135
54
83
116
155
49
128
77
119
123
98
140
109
77
147
76
82
133
107
103
98
88
117
158
146
130
125
127
154
114
148
108
54
131
93
139
156
110
131
95
81
65
135
82
101
127
116
117
164
120
74
95
125
102
118
108
123
191
113
191
147
134
101
95
105
137
78
125
139
135
147
133
90
108
103
134
91
125
135
119
134
143
145
82
85
148
102
82
148
142
115
117
54
83
54
98
81
163
96
99
49
146
113
59
103
106
59
142
79
90
108
127
153
138
179
98
83
83
108
100
135
127
126
79
173
54
96
185
140
87
115
95
169
138
90
81
141
108
105
190
190
113
81
146
113
74
112
99
91
110
54
142
144
129
108
92
163
135
95
131
121
105
106
123
87
83
156
81
98
133
200
145
90
153
143
92
116
61
127
152
154
54
103
77
143
147
100
103
103
120
49
102
113
98
95
92
173
67
98
110
49
68
68
106
161
120
110
148
101
115
137
119
99
103
54
138
154
103
154
115
123
127
61
74
124
108
95
74
117
54
156
102
127
67
127
133
145
144
108
97
81
124
107
161
81
115
93
95
121
126
141
103
147
163
127
81
49
182
80
72
137
148
158
45
92
105
122
67
77
105
77
95
168
45
101
74
143
84
61
148
96
98
93
98
108
155
54
122
131
78
49
128
119
139
81
145
118
132
134
146
118
125
106
125
67
156
156
119
95
147
129
88
143
143
128
170
104
160
119
131
88
150
87
99
154
111
67
85
140
135
98
82
108
132
90
95
91
78
120
126
108
79
179
108
82
124
98
77
111
149
126
106
119
125
106
117
109
95
62
84
129
183
131
101
115
97
83
125
101
143
125
118
106
133
124
80
84
121
157
125
54
95
142
149
92
127
83
163
81
92
134
81
159
109
123
54
118
106
54
129
119
136
136
131
122
138
129
147
143
74
123
108
109
75
120
83
99
101
138
154
87
100
106
80
88
54
76
117
81
128
90
54
126
81
158
82
81
103
69
54
130
102
138
79
148
120
92
82
95
54
153
77
148
145
123
99
85
135
74
144
107
155
141
154
158
85
103
130
114
81
127
127
83
145
150
108
49
118
114
107
82
77
108
87
96
94
118
135
118
177
97
143
86
90
114
136
100
81
122
144
121
138
125
95
86
81
102
119
122
106
76
144
86
113
205
87
140
125
95
81
158
140
134
128
108
74
115
129
89
89
178
155
91
94
127
49
108
108
141
81
90
54
100
98
157
103
107
120
126
122
153
112
126
82
128
108
98
144
108
105
68
112
85
102
160
93
96
107
115
114
134
67
80
94
113
54
92
150
150
77
104
127
59
129
128
80
143
86
161
90
105
107
147
76
150
113
74
54
78
140
132
99
114
146
125
182
123
97
113
135
131
125
126
164
80
144
95
114
131
129
119
142
117
108
125
132
143
109
100
115
114
107
116
59
108
83
133
98
74
133
125
109
143
119
95
81
94
122
173
128
127
124
178
117
135
123
54
151
68
111
167
73
118
117
109
89
111
106
125
134
99
124
116
87
140
128
85
141
115
73
100
87
54
112
102
92
99
102
103
124
115
135
113
133
125
153
125
125
127
77
109
59
135
148
118
117
69
98
130
146
105
119
128
82
62
161
81
160
123
82
125
54
81
95
165
128
168
54
149
102
120
106
87
83
87
110
143
91
112
82
139
127
107
98
181
97
117
98
134
98
156
118
74
83
81
102
95
134
97
85
81
111
115
65
141
148
111
90
133
42
161
100
101
96
131
108
112
172
144
59
131
77
163
137
117
67
131
106
126
95
84
109
95
99
77
117
133
127
49
128
141
129
154
111
103
90
105
130
137
54
130
89
180
144
100
131
102
125
129
153
108
110
95
143
59
132
129
91
119
110
81
108
68
129
135
61
98
163
68
89
67
101
140
84
74
129
115
110
78
121
91
140
203
59
150
125
100
135
95
127
148
106
132
113
144
120
160
108
49
116
106
113
145
81
62
123
92
108
146
81
119
102
125
138
118
137
111
152
77
164
139
94
151
102
80
143
103
92
89
138
108
96
155
95
133
105
127
79
129
123
116
83
148
105
110
96
122
116
166
124
125
140
123
158
107
102
96
103
97
49
107
138
110
102
146
95
112
207
138
98
96
133
124
98
125
140
125
108
110
112
114
96
74
111
125
163
159
116
76
144
114
122
102
106
135
105
130
95
102
148
100
116
74
98
100
131
113
143
108
105
128
114
92
82
153
135
161
108
151
54
95
130
125
82
134
93
100
92
175
89
98
126
102
144
109
144
171
116
87
111
110
97
102
158
134
105
126
54
144
111
157
108
105
163
103
106
138
77
114
108
95
193
130
160
123
150
112
88
137
144
109
81
160
54
148
114
133
106
94
81
111
54
90
108
104
101
135
80
150
102
81
81
128
117
130
168
139
161
128
95
97
127
133
136
145
125
123
117
122
166
179
74
85
141
128
152
68
152
145
131
97
158
67
121
143
163
96
141
132
122
102
78
102
111
153
134
81
108
59
67
150
118
161
106
128
69
90
145
140
163
125
139
110
112
101
116
78
96
81
104
80
122
121
108
153
123
136
99
106
104
166
103
148
144
78
141
123
156
98
98
81
95
106
123
129
154
131
94
142
95
138
129
54
167
103
54
104
98
107
93
84
170
177
91
115
82
104
114
111
127
143
97
122
109
107
131
54
107
158
116
186
125
140
127
115
98
82
178
54
81
123
77
84
161
93
117
141
54
101
78
144
95
131
137
156
76
112
150
144
157
68
153
118
164
54
157
86
122
67
116
123
131
130
120
102
148
98
131
54
95
134
87
150
84
115
139
123
109
114
139
49
211
100
164
103
114
120
103
115
140
115
104
177
100
74
104
96
115
122
118
106
86
83
54
123
128
109
54
137
146
133
142
108
101
78
114
156
85
126
133
148
177
190
144
177
54
83
95
106
84
49
54
142
93
54
91
93
160
98
81
131
104
160
123
87
119
118
108
101
115
107
125
111
162
133
95
109
77
125
146
150
157
93
74
157
96
129
134
105
109
148
148
78
148
163
132
87
91
161
157
114
142
62
115
85
81
108
118
68
112
112
131
113
90
140
132
102
76
181
102
105
81
83
127
127
106
59
127
67
144
111
103
100
155
81
108
54
78
143
123
125
106
121
115
127
104
123
98
138
54
118
107
101
128
131
95
148
152
81
179
104
127
127
97
90
76
105
91
113
134
102
90
100
127
128
149
106
87
68
112
96
108
177
129
164
136
176
80
177
54
112
119
113
123
99
130
54
82
115
157
133
112
131
135
146
167
138
134
115
171
115
59
133
164
132
148
102
128
139
95
107
116
106
97
101
82
103
116
98
158
151
59
104
126
91
93
180
96
140
105
112
83
90
130
98
146
109
200
139
118
78
123
81
107
170
127
97
134
131
96
91
54
101
130
117
131
143
134
102
108
101
124
146
159
77
105
90
141
102
102
114
132
102
128
140
90
169
110
143
135
94
131
123
116
88
164
99
114
78
157
144
102
142
141
102
108
126
151
121
133
113
121
157
122
98
125
74
92
93
106
165
56
80
102
132
141
98
90
112
81
138
82
107
113
106
137
132
95
125
91
111
76
81
49
108
163
111
98
128
144
137
102
161
65
148
84
109
88
84
172
87
130
82
103
111
78
118
69
113
101
132
134
119
123
54
139
104
69
141
98
127
127
148
93
107
95
98
105
107
105
153
145
128
83
78
49
93
167
100
103
131
77
90
111
137
108
93
99
127
157
104
102
125
191
98
86
152
129
162
87
130
98
116
112
98
91
133
161
104
93
127
82
167
146
71
161
98
102
148
102
132
144
127
177
110
96
59
106
152
123
115
90
108
97
116
145
127
125
107
129
81
54
158
83
78
106
95
107
108
103
116
74
126
121
121
180
98
89
131
159
100
126
149
83
87
82
87
168
98
106
138
90
105
95
176
77
110
118
129
103
100
122
158
102
122
106
108
117
85
133
81
113
98
123
107
131
108
127
110
124
133
113
82
94
135
113
133
124
90
95
83
74
150
90
132
95
67
194
115
125
90
134
77
148
142
105
89
89
133
158
177
68
87
119
81
142
69
111
135
118
54
144
86
98
103
91
140
155
106
128
94
103
141
95
99
115
102
135
116
95
124
135
167
81
105
111
106
157
95
94
120
133
112
100
101
131
176
124
130
90
151
119
96
74
147
136
106
115
140
92
67
98
89
84
54
145
98
108
129
129
108
95
78
98
104
54
119
106
115
74
106
77
135
97
146
126
125
120
59
122
168
108
101
117
162
139
142
123
103
159
126
120
135
105
84
142
104
113
108
108
145
158
76
77
102
129
147
139
59
159
103
177
131
95
120
108
176
98
98
138
65
148
78
82
124
87
91
128
133
132
115
99
127
112
49
139
76
113
86
167
111
140
92
110
165
109
98
87
115
219
154
134
100
49
95
125
95
98
90
108
95
101
154
118
139
80
92
49
123
54
105
125
90
59
133
170
101
115
98
98
95
108
131
107
166
141
104
108
156
85
108
114
124
143
102
179
115
98
167
97
49
80
68
54
157
132
108
82
94
95
119
129
92
140
76
99
154
114
104
122
115
125
120
141
166
116
87
151
123
107
108
128
130
136
155
165
81
54
95
119
83
163
126
112
141
49
95
111
98
97
155
119
149
95
115
169
95
80
84
141
115
121
98
92
164
129
137
158
103
95
108
61
117
97
126
133
111
107
157
85
100
96
98
95
132
125
135
98
132
161
105
129
166
135
125
135
163
134
122
106
122
128
93
143
114
105
133
118
59
121
161
140
125
112
76
91
128
74
174
133
147
72
140
77
144
131
87
82
154
103
76
108
67
165
113
111
95
96
68
102
148
67
95
108
59
86
108
155
117
68
160
116
54
132
113
113
131
98
105
133
116
161
54
81
106
49
124
146
83
140
108
93
120
95
93
147
90
128
109
140
88
197
109
97
59
158
90
108
54
118
99
124
119
138
54
155
128
126
138
158
186
78
141
98
135
83
131
191
135
85
74
105
95
144
129
173
144
104
101
144
145
115
173
127
132
144
103
117
133
95
128
104
45
167
145
121
49
98
113
116
77
172
140
117
161
131
103
157
59
49
123
78
81
140
181
149
81
117
148
139
105
106
83
151
117
173
93
168
119
169
108
169
94
133
144
158
132
135
130
105
154
88
59
125
106
113
158
102
132
84
133
114
67
161
206
86
73
95
85
101
111
112
109
134
87
117
103
118
127
138
76
108
131
103
103
105
59
162
91
113
87
97
83
87
82
103
136
81
113
131
167
107
81
160
110
83
98
99
113
113
145
96
110
100
128
113
103
96
81
103
123
136
107
135
138
107
118
67
137
69
160
87
130
135
129
148
102
102
132
123
147
77
139
133
165
108
144
134
77
147
107
108
129
115
106
83
86
161
133
77
185
101
108
74
87
133
137
133
118
122
149
102
133
156
76
96
133
70
115
101
155
99
106
109
119
102
146
98
93
94
61
95
102
99
49
129
54
120
118
138
94
135
129
125
120
162
73
67
119
83
109
117
111
78
129
127
81
196
117
118
98
124
108
127
80
130
108
77
102
91
143
113
97
104
125
103
102
125
104
144
94
77
90
99
102
131
138
96
54
121
81
102
120
106
152
135
107
167
119
140
143
93
67
85
147
191
49
98
123
54
106
106
54
93
121
145
102
159
91
142
136
68
112
81
83
54
178
128
54
121
118
93
140
150
135
147
126
119
211
99
108
108
151
147
120
109
98
104
100
129
165
103
102
106
108
72
83
102
68
73
140
103
99
113
130
134
98
95
122
82
78
144
81
146
94
151
95
77
116
184
97
153
135
157
141
106
49
148
95
188
61
145
116
103
85
67
165
108
144
148
121
102
149
93
171
107
116
59
117
89
141
135
103
167
83
81
165
54
116
95
103
112
110
101
95
143
95
124
106
131
104
154
81
78
149
98
118
155
127
95
131
143
180
98
113
98
130
142
91
90
106
152
130
142
69
123
89
75
113
102
93
122
110
117
142
61
144
134
119
120
135
127
99
125
120
90
140
93
102
102
91
123
102
111
126
81
100
106
115
95
125
102
121
81
134
98
77
93
136
86
125
133
93
87
59
190
125
160
105
112
161
115
108
54
161
126
112
124
127
128
109
59
122
92
54
177
82
145
133
74
103
171
147
151
121
110
101
67
149
54
94
142
67
76
166
120
144
97
98
134
54
98
101
105
54
133
127
117
94
98
124
129
118
125
93
81
95
99
107
146
97
133
141
118
133
122
144
113
108
117
131
49
87
59
141
140
133
93
125
101
101
89
105
119
102
138
69
108
81
76
80
96
111
107
133
85
139
107
138
71
132
82
105
151
143
102
193
59
112
98
106
67
87
102
96
124
130
102
94
139
157
101
98
151
167
96
101
54
87
144
152
124
147
100
103
121
125
80
95
95
108
116
74
95
110
105
194
121
165
139
131
183
85
74
125
124
135
82
88
95
131
168
171
136
123
144
112
102
129
123
113
198
179
103
80
105
115
102
95
166
123
148
131
108
116
99
136
122
148
160
108
102
142
119
81
155
188
82
54
85
125
120
168
144
117
121
112
148
156
102
143
54
109
85
123
87
82
177
118
54
146
95
158
169
104
157
143
103
129
146
114
131
103
128
105
54
132
149
129
74
116
101
122
93
123
129
131
110
118
144
153
112
165
107
108
118
110
132
90
82
162
125
134
108
81
135
122
78
97
130
104
117
124
114
133
93
54
119
116
118
162
128
108
72
107
153
105
128
76
96
70
145
78
134
137
138
107
108
103
102
96
145
125
124
54
77
95
164
112
108
102
164
74
113
87
90
177
120
124
123
119
127
98
113
107
107
160
89
160
113
116
148
84
133
83
100
76
120
134
148
108
99
95
127
148
108
128
144
79
95
76
148
133
87
184
145
165
116
127
93
95
93
148
127
150
128
131
81
154
134
134
133
90
90
83
97
102
123
92
170
102
121
106
97
139
125
74
98
77
101
98
130
98
81
186
128
90
80
149
134
83
172
149
99
146
104
105
82
176
150
120
87
106
95
122
85
86
125
98
90
76
149
95
142
100
127
107
84
126
118
81
92
103
152
102
106
54
142
103
148
120
95
122
119
136
120
106
86
73
76
113
90
146
114
100
90
109
49
140
118
133
141
91
93
161
111
90
81
98
98
158
110
148
89
179
49
107
163
54
164
127
135
149
121
75
67
125
112
123
156
95
128
71
119
102
69
85
136
54
135
143
144
123
115
126
108
126
84
119
145
106
128
115
99
194
94
102
78
100
145
131
99
95
132
124
107
81
103
98
148
108
130
145
133
134
54
108
106
106
102
136
105
166
54
95
116
182
98
128
114
139
133
149
103
68
102
108
171
138
128
158
108
129
101
140
99
133
132
54
109
105
95
145
97
131
103
173
165
100
54
98
133
76
190
125
135
139
126
95
167
144
134
85
133
131
95
171
90
76
95
74
74
132
118
125
81
119
115
120
103
112
84
78
118
114
113
119
101
190
123
138
59
95
150
126
130
103
95
49
96
98
75
130
186
119
133
98
138
108
112
99
92
85
98
105
54
160
136
125
119
168
177
86
93
127
153
116
117
96
128
133
126
88
145
76
102
139
102
118
102
49
135
103
74
108
74
124
106
145
122
108
106
139
108
110
103
59
144
54
134
169
108
108
186
65
79
125
161
129
125
101
138
155
153
122
108
115
148
125
147
59
111
86
160
154
68
129
134
124
54
87
67
87
82
150
88
149
100
137
97
77
139
96
93
95
108
133
115
157
79
104
99
102
120
162
54
129
107
61
114
54
109
220
111
59
93
76
120
99
148
112
109
129
118
93
122
134
108
102
103
74
146
93
131
113
110
93
131
126
144
133
135
113
167
98
95
101
67
123
131
139
118
99
76
111
122
109
122
93
138
110
143
103
109
116
107
95
152
80
87
166
151
114
91
169
161
114
92
108
118
107
148
88
107
81
113
103
54
98
93
128
118
133
106
155
87
76
49
81
124
155
86
127
147
144
112
118
139
123
105
98
101
54
96
139
128
169
95
141
87
78
95
75
119
133
74
149
104
115
87
104
141
105
110
125
93
62
89
89
91
78
102
86
143
98
103
105
193
105
112
145
141
108
118
67
104
113
92
133
97
91
88
115
135
95
54
132
125
82
147
83
112
135
127
109
140
141
77
83
99
149
140
148
164
143
87
182
148
95
102
129
113
99
79
143
142
103
121
49
94
127
130
102
181
97
87
81
105
131
131
147
106
143
102
70
81
95
105
136
91
129
121
172
99
54
97
111
218
92
147
176
94
105
105
96
149
82
54
76
140
148
92
155
112
98
104
101
121
123
103
116
111
112
110
159
132
108
108
106
140
148
177
54
131
103
90
123
94
144
97
122
103
165
111
135
98
92
76
107
76
125
74
108
184
83
146
95
94
162
90
87
125
83
103
128
172
97
155
111
102
127
140
104
158
76
129
74
182
95
97
68
54
118
148
129
103
97
96
146
98
126
95
139
148
110
121
180
99
154
120
127
93
103
167
54
179
105
125
49
148
135
81
129
148
129
159
146
113
159
101
126
67
115
68
110
102
80
103
82
111
137
108
82
107
87
108
98
137
103
140
96
93
74
90
108
95
115
127
113
112
131
117
187
119
105
162
101
80
119
124
114
105
69
78
102
115
77
140
117
133
102
117
145
82
177
180
73
116
120
128
76
83
162
138
98
138
77
81
96
115
151
149
139
103
95
59
87
104
90
104
93
78
68
90
93
170
59
87
81
108
150
105
54
126
107
118
67
125
95
80
94
171
70
134
138
139
135
129
150
85
125
117
125
106
87
140
95
141
94
125
147
177
108
153
125
144
128
115
155
123
136
120
154
106
146
95
165
90
77
89
111
104
107
123
77
112
93
127
93
134
95
120
154
92
108
143
117
149
99
119
122
100
108
154
151
164
85
144
112
152
74
133
95
177
173
112
131
90
154
103
128
129
128
77
107
95
153
139
102
104
93
127
102
102
113
54
106
83
81
140
148
117
59
139
133
102
180
115
127
142
118
77
147
82
147
150
122
148
238
76
102
82
104
121
159
161
131
117
125
115
135
67
170
103
106
110
146
54
102
148
141
121
117
76
154
120
162
144
199
119
116
103
112
103
161
119
135
133
127
91
80
111
86
139
93
93
101
102
85
94
107
115
120
96
181
87
49
77
109
97
180
99
103
159
107
49
157
91
95
113
80
114
102
90
122
182
49
138
54
131
113
114
103
95
148
130
85
145
59
78
67
117
131
97
129
49
140
115
49
107
112
155
91
61
114
107
115
96
104
54
115
87
148
49
167
108
148
79
85
106
108
118
108
94
94
153
67
103
170
109
111
137
119
76
49
133
100
135
108
144
109
105
147
147
101
138
119
81
109
108
165
163
137
123
108
136
105
110
113
136
131
94
98
95
159
144
82
199
132
96
78
158
172
93
141
61
97
147
116
104
69
98
90
129
117
61
102
146
144
99
140
158
107
156
117
120
182
128
125
85
130
133
102
80
125
109
119
77
132
102
151
150
129
105
112
111
110
97
91
97
113
148
129
93
106
59
126
119
139
139
127
102
148
151
127
148
149
118
125
140
90
68
104
179
146
73
113
128
98
141
136
103
140
57
149
82
139
160
128
145
102
140
90
128
105
133
204
83
54
128
139
74
118
145
145
123
144
109
78
128
78
54
120
59
140
79
93
156
108
135
138
145
80
113
90
126
128
105
135
95
148
98
125
81
93
135
118
93
129
141
108
158
97
129
113
93
93
143
150
105
98
100
158
133
145
147
126
127
140
142
103
104
54
97
149
134
158
149
177
85
87
93
116
147
120
159
114
74
119
103
119
123
54
149
141
110
128
103
105
116
100
141
117
103
129
166
73
101
102
131
87
123
160
148
92
120
156
145
129
74
176
102
134
163
85
108
102
107
96
102
158
119
102
108
98
121
125
105
148
112
155
141
84
165
98
136
107
139
106
129
127
148
139
158
106
172
106
61
77
54
89
175
112
95
128
103
171
193
81
130
154
88
96
155
73
147
127
123
120
54
102
76
148
174
145
103
146
131
133
104
142
131
74
152
120
135
148
178
158
87
76
103
127
106
110
96
129
143
82
124
160
130
82
93
110
133
110
95
116
76
108
149
130
133
147
61
167
90
103
73
85
99
149
143
103
111
119
121
234
102
131
77
153
102
87
79
144
155
115
127
107
134
158
133
116
87
93
108
102
69
131
110
179
166
95
85
95
97
137
122
233
90
117
114
126
98
111
143
102
98
131
94
149
117
100
133
108
148
98
76
99
105
68
107
102
103
90
161
144
101
77
90
95
103
103
96
90
128
87
99
108
107
102
133
74
100
142
179
69
98
118
134
167
106
103
113
145
80
100
133
117
131
144
135
139
147
97
102
127
102
88
90
83
126
74
96
121
103
77
76
105
95
102
133
138
138
113
135
116
113
84
83
92
96
116
151
115
120
59
165
90
113
87
117
153
115
139
101
117
141
77
128
113
111
113
105
76
103
101
120
125
124
106
69
144
106
154
123
108
132
142
104
139
88
153
101
127
114
108
178
177
83
165
54
68
113
125
115
159
116
49
130
117
131
120
161
107
129
133
124
125
108
112
185
81
108
129
135
127
135
125
102
158
137
54
144
96
54
107
114
108
93
175
116
103
111
136
113
49
74
95
147
102
132
137
92
101
73
139
155
118
140
136
149
95
87
125
143
67
78
143
108
101
92
92
101
107
173
108
134
146
108
92
100
182
147
146
118
118
74
125
123
163
95
117
124
165
105
136
112
100
138
119
54
135
106
156
122
103
147
136
177
95
81
108
106
135
93
59
95
126
232
115
134
103
167
163
56
158
140
83
54
113
125
107
135
85
96
126
125
122
120
138
160
122
147
133
49
89
77
109
156
102
141
108
177
160
128
216
92
144
81
87
128
95
113
90
131
108
89
105
155
131
122
166
102
118
102
104
181
83
87
81
107
145
104
54
137
114
93
125
163
100
177
153
112
127
115
92
145
125
151
103
100
174
87
82
74
113
132
111
113
135
122
106
161
160
96
61
107
123
96
119
170
97
148
96
103
130
103
77
110
145
147
95
101
108
107
67
101
145
162
131
143
92
103
45
102
61
95
99
125
137
115
166
139
74
145
111
131
83
116
109
76
106
133
151
126
102
93
76
120
107
77
102
134
94
127
125
91
95
54
105
108
80
144
103
129
135
128
115
120
85
109
94
159
126
125
77
143
105
141
98
127
127
86
135
152
83
134
125
152
119
85
132
117
92
200
106
102
83
105
123
139
84
76
108
127
159
110
120
97
95
162
111
125
118
98
98
104
54
164
93
117
103
116
122
123
112
88
135
135
155
88
108
154
82
135
90
102
115
148
81
95
74
103
109
116
87
106
127
123
93
59
100
143
90
105
54
90
106
113
135
128
194
91
104
106
117
104
113
109
165
124
185
96
149
160
78
122
86
135
113
73
112
137
98
122
54
145
170
81
150
106
126
126
129
85
138
108
130
108
179
92
74
110
164
111
120
78
96
112
172
127
99
145
144
141
127
143
84
133
139
107
99
135
49
152
59
98
90
76
88
100
200
123
116
74
49
142
126
54
130
95
148
144
49
101
119
128
154
101
69
96
49
125
143
76
127
158
98
125
121
132
145
190
121
113
95
113
115
125
106
88
131
112
81
108
121
112
101
102
135
125
115
103
155
118
118
115
148
124
128
98
95
106
128
153
101
87
102
103
185
130
90
141
159
188
164
77
97
74
165
96
97
112
102
105
95
172
120
143
95
91
113
196
107
89
99
125
128
108
124
112
99
198
107
120
113
109
103
125
167
162
128
102
119
144
118
119
86
82
151
115
129
54
123
117
139
117
156
97
112
96
166
90
134
107
120
96
115
113
126
111
93
94
105
103
81
54
108
49
163
101
161
87
90
140
127
59
87
81
129
126
54
177
135
116
91
54
98
108
161
90
115
135
105
97
102
67
111
88
96
117
134
111
90
128
128
103
96
119
104
133
73
125
122
113
142
128
102
115
104
54
152
103
95
143
131
95
95
117
117
163
97
145
77
59
155
125
143
118
133
150
90
127
98
113
102
115
103
161
148
87
101
54
136
117
98
95
90
87
110
95
148
125
107
144
141
76
90
173
144
108
154
93
167
108
116
156
116
78
109
104
148
49
140
85
106
162
97
177
108
136
131
84
108
68
54
80
131
107
90
119
93
87
54
158
180
96
115
54
148
91
128
142
105
115
107
95
98
98
111
160
84
146
158
108
87
129
75
108
103
105
109
97
95
129
98
102
125
105
113
114
106
106
95
115
106
125
139
150
119
204
69
109
81
133
98
76
87
118
81
108
112
147
105
96
180
81
102
135
108
110
94
89
94
85
102
87
128
102
172
103
118
114
54
172
135
49
151
149
102
152
107
96
96
89
103
81
91
193
122
172
94
113
81
103
195
165
117
112
133
145
154
170
97
76
145
133
105
102
85
108
91
92
49
147
129
95
96
74
105
106
81
116
145
122
54
108
143
158
144
101
141
115
128
81
87
156
126
124
54
128
141
92
138
111
95
76
141
147
104
108
119
106
148
79
125
112
144
120
96
154
107
136
102
164
141
161
108
86
125
93
84
127
113
139
49
134
186
110
113
112
128
88
117
117
125
161
111
129
186
81
115
59
145
100
160
158
137
137
106
82
89
90
87
108
54
117
131
163
83
98
135
127
91
177
178
147
153
101
146
123
128
100
151
73
78
140
118
92
109
154
65
149
113
49
127
97
123
125
93
108
118
115
79
201
99
105
81
154
147
125
65
83
119
150
59
104
156
112
143
98
151
113
165
78
98
90
156
103
109
123
125
108
54
135
115
142
126
141
129
134
125
87
104
148
105
108
59
59
108
106
143
152
110
98
106
87
87
59
111
92
145
97
125
80
102
123
141
68
135
54
136
127
144
91
114
154
108
138
114
113
134
118
98
143
100
112
133
134
113
75
166
166
59
107
134
116
81
153
153
171
140
153
119
103
138
102
83
160
74
127
110
130
120
169
118
76
110
161
87
139
54
108
139
146
124
128
127
103
190
195
56
131
49
140
151
80
102
91
167
148
82
135
74
103
122
158
95
118
159
180
84
49
126
107
154
76
104
108
120
150
105
59
108
131
100
105
182
95
149
73
115
92
95
91
84
135
110
89
124
141
145
61
163
168
59
115
91
133
122
76
129
155
165
160
137
54
104
131
112
110
133
102
148
78
158
49
123
74
104
168
124
118
170
147
76
122
89
125
151
124
156
191
120
67
101
142
109
156
113
82
115
149
88
113
134
153
139
132
148
83
143
76
144
90
102
116
150
122
133
95
82
95
118
117
102
122
130
115
123
144
105
135
103
118
108
123
177
150
179
110
160
119
138
103
91
117
101
194
129
123
54
59
125
111
132
156
123
113
123
87
133
168
102
103
140
94
154
147
89
123
81
144
127
127
120
87
98
110
97
61
49
88
141
103
162
105
136
143
144
102
127
148
102
94
137
153
144
117
84
103
91
144
102
79
149
166
101
158
145
103
98
74
148
144
147
108
82
59
97
104
96
101
185
115
128
107
98
133
54
109
92
54
125
78
118
130
90
122
114
103
154
101
89
148
143
113
128
97
162
122
85
128
112
109
105
135
130
103
54
95
107
104
163
107
125
165
98
108
79
125
141
109
112
127
128
79
80
77
124
129
167
100
129
130
143
114
143
102
132
112
98
170
77
156
107
115
93
86
113
80
148
122
159
171
56
124
100
82
148
83
105
163
146
103
111
107
108
122
54
141
133
82
105
109
148
110
122
102
69
113
148
95
137
140
109
113
105
81
148
92
87
101
127
97
133
91
112
107
81
124
49
134
106
143
146
82
81
123
158
161
95
134
113
115
174
86
87
108
127
120
153
98
114
136
150
200
120
125
165
96
102
139
112
138
120
154
86
108
92
133
143
153
153
99
170
93
103
160
143
86
127
81
137
102
98
125
54
49
133
49
76
90
144
94
108
113
120
112
135
69
175
159
125
110
77
77
112
115
137
87
99
61
116
81
112
111
121
133
121
125
101
141
142
98
96
108
138
148
80
119
81
129
54
103
116
109
108
77
108
110
113
122
130
139
108
108
177
116
95
144
156
133
134
118
171
54
54
147
102
146
84
147
131
108
107
151
100
54
101
101
96
117
200
108
69
117
105
81
146
125
106
142
143
117
73
84
93
105
78
87
107
145
139
80
130
165
96
112
79
103
141
81
108
130
97
96
83
132
101
95
87
105
113
138
117
112
119
126
74
127
120
105
146
124
168
94
61
123
132
102
54
160
120
127
121
176
130
106
194
125
144
54
122
78
105
122
160
81
84
54
115
102
153
74
80
97
82
143
143
81
118
100
96
130
118
140
81
130
114
59
95
87
112
124
89
133
199
131
171
107
105
123
105
74
129
94
104
140
108
130
113
133
89
180
145
54
115
98
86
74
130
117
146
120
133
109
131
165
100
49
123
143
102
108
85
113
146
84
54
81
130
112
101
97
122
97
95
95
155
54
87
49
164
103
82
122
83
144
79
182
129
144
132
95
118
136
54
83
77
105
167
149
100
145
151
83
92
146
113
200
128
101
67
126
77
102
122
123
128
90
82
49
120
106
143
93
109
129
90
129
68
108
87
120
54
126
77
125
125
82
106
177
156
123
185
82
131
169
120
153
122
118
89
85
49
112
80
145
109
87
77
140
87
119
114
149
109
148
95
54
119
137
122
115
161
49
102
141
148
59
115
177
88
163
87
131
123
121
91
54
54
102
98
80
131
54
112
91
110
119
132
151
138
95
132
122
81
54
102
87
140
105
108
82
90
82
109
141
133
144
182
135
96
95
148
112
111
95
129
122
84
140
81
197
103
140
130
109
82
77
90
119
82
177
105
126
140
96
123
54
93
88
135
142
102
125
112
128
93
150
74
82
98
134
83
137
129
102
165
67
132
93
113
102
148
139
185
112
94
95
114
113
94
116
135
115
110
112
110
110
104
119
85
54
119
87
92
112
108
152
114
65
83
59
141
132
132
94
108
135
168
132
118
148
163
99
94
121
155
82
116
135
122
126
108
54
108
95
155
77
115
125
142
135
126
81
102
108
118
129
148
139
147
116
118
119
126
95
102
144
108
142
124
132
138
130
81
98
131
95
128
118
102
98
106
87
109
108
95
86
119
103
108
76
149
87
59
131
108
67
108
134
99
143
94
150
108
124
152
121
116
147
90
83
131
149
141
112
158
101
140
128
117
155
108
106
106
111
118
132
124
111
119
108
85
105
82
107
74
145
147
74
135
125
102
120
124
93
143
130
49
126
112
98
108
234
138
75
110
108
103
116
80
105
167
135
115
154
126
122
85
109
98
113
54
114
130
59
109
135
152
108
127
122
116
116
135
98
61
91
81
130
94
131
116
139
110
90
119
129
144
170
113
49
134
98
152
110
144
93
110
110
109
59
148
99
164
125
93
121
149
115
108
106
129
81
149
49
74
92
134
115
82
135
68
112
100
127
110
127
105
144
91
123
106
121
114
112
144
120
95
106
112
105
68
87
87
113
94
128
105
102
112
122
175
119
94
104
68
88
93
54
155
158
94
114
112
102
90
167
76
125
109
114
103
114
86
77
143
133
144
95
90
98
119
140
100
133
81
113
131
88
106
120
170
115
132
74
59
80
135
74
81
132
145
126
135
65
111
152
117
108
80
95
108
105
138
89
163
128
124
138
96
104
94
117
61
109
121
105
144
124
101
97
77
147
96
98
170
113
156
54
69
146
115
89
49
83
159
102
111
78
119
119
128
102
124
87
160
135
76
126
114
153
172
81
139
93
59
89
125
123
121
116
49
98
95
167
133
86
105
96
82
112
128
103
73
145
104
105
134
122
84
128
87
102
141
105
191
100
77
120
125
88
61
120
100
77
78
110
131
112
155
143
100
115
142
210
143
120
126
157
153
102
113
121
128
132
152
88
95
74
125
165
96
91
101
122
117
140
172
98
141
96
138
76
102
98
94
148
104
125
142
102
150
124
74
127
129
108
125
49
80
105
101
121
133
155
146
96
131
108
153
138
86
157
169
160
139
98
132
54
115
125
87
127
110
146
150
144
74
140
75
94
98
94
97
135
131
95
121
83
82
162
154
128
68
83
113
169
114
59
89
83
97
103
158
139
133
69
84
107
137
119
102
128
110
99
89
99
110
102
74
140
134
115
126
143
97
97
104
139
67
130
90
90
81
81
143
146
77
174
61
69
141
117
160
54
86
146
141
144
131
161
120
102
174
106
98
82
153
147
138
105
162
148
82
103
148
98
151
158
78
110
147
92
115
148
123
140
59
114
111
124
149
78
113
140
127
184
142
134
125
113
131
112
69
145
120
151
108
125
129
133
89
130
110
161
145
108
133
128
129
132
102
117
139
129
100
123
49
87
102
76
102
90
74
89
123
103
101
108
106
83
85
107
122
156
59
102
82
132
143
101
124
125
122
54
161
128
105
78
112
114
116
112
108
119
94
123
124
149
144
112
74
54
158
92
87
83
54
76
54
146
90
123
98
95
104
113
136
82
101
74
174
78
103
148
133
98
156
151
54
90
54
97
120
126
125
152
54
102
141
134
110
86
94
112
167
166
65
59
118
117
130
148
105
101
85
93
105
138
102
81
86
133
161
108
94
131
80
179
99
98
82
85
132
72
118
112
150
120
83
126
81
94
114
112
144
103
105
93
163
127
148
162
54
146
142
146
98
89
172
59
113
54
95
94
98
105
128
108
90
81
131
143
107
157
59
165
146
170
132
74
144
166
118
128
142
88
108
115
119
128
77
74
94
74
79
98
91
54
97
180
109
152
150
169
147
157
134
139
188
90
133
89
154
98
91
119
69
93
133
124
94
115
120
54
141
140
125
102
116
108
99
168
97
136
128
132
131
128
115
92
59
112
173
112
54
144
73
116
106
138
115
135
103
160
93
54
81
114
167
132
136
121
138
121
141
101
94
91
59
146
142
142
158
99
98
162
122
110
165
143
143
113
118
118
105
78
90
153
208
115
132
93
165
142
125
103
102
125
109
102
157
173
158
54
138
95
135
116
118
110
97
103
144
165
105
127
73
135
114
146
123
115
139
159
148
67
87
99
141
98
123
109
85
127
54
92
135
150
78
135
137
54
98
118
116
82
137
129
83
80
81
96
116
119
76
98
96
106
54
149
146
147
89
148
95
148
105
109
125
54
160
104
95
61
85
54
90
91
108
156
95
114
115
121
141
169
108
119
94
76
124
163
104
114
59
158
135
106
108
73
117
106
144
80
93
69
154
117
112
105
155
168
107
147
132
107
81
128
90
108
144
95
118
134
126
113
129
117
81
116
161
108
106
107
129
106
90
118
149
113
81
91
82
128
107
104
150
103
49
110
90
142
81
94
140
138
100
120
183
77
97
87
122
154
160
118
54
95
110
143
102
113
157
102
135
120
135
82
163
74
95
54
120
97
177
116
104
95
116
141
133
146
157
59
114
68
83
175
94
112
93
177
141
200
122
118
102
96
142
148
148
161
112
87
127
99
131
102
109
101
108
99
148
129
130
151
121
69
111
117
54
102
133
95
127
98
87
125
90
54
81
102
122
87
103
107
113
77
97
121
169
98
102
105
59
93
128
99
149
122
127
98
113
82
78
134
128
152
81
126
103
94
92
118
163
140
84
103
93
148
114
96
193
108
108
90
112
126
148
98
89
95
114
77
96
127
98
95
85
134
92
84
190
123
144
87
69
177
124
123
105
155
128
49
127
81
200
67
154
94
82
118
83
81
106
158
134
151
78
116
116
93
84
155
126
158
129
131
104
116
97
81
133
126
100
90
101
97
87
91
95
120
113
96
108
108
118
100
104
78
147
102
139
103
109
59
103
68
121
91
108
140
142
109
129
140
91
112
144
102
100
67
54
95
126
91
117
120
162
89
77
124
54
128
122
129
67
90
95
147
109
116
146
76
163
95
77
108
158
145
122
91
127
163
80
116
115
80
88
93
125
172
148
77
145
135
76
76
108
137
125
97
116
128
98
69
127
143
116
122
113
143
136
133
127
105
137
86
95
120
146
129
115
67
124
144
110
122
110
133
131
120
118
112
109
109
102
150
90
120
132
138
106
110
108
139
81
82
123
143
69
82
134
95
99
175
127
112
163
101
69
115
100
122
113
149
103
112
156
94
110
117
141
109
54
77
113
149
115
107
134
138
90
107
113
128
145
89
84
155
106
128
147
121
145
81
179
102
54
147
116
95
121
80
108
139
103
149
69
102
100
144
108
144
118
107
108
179
118
167
102
117
96
108
145
127
103
115
83
102
132
140
123
98
108
151
158
131
107
137
115
61
85
212
107
169
108
106
123
96
141
136
127
110
146
101
85
90
125
109
142
54
116
118
96
105
54
164
127
106
115
81
49
138
49
119
102
89
54
125
134
123
105
90
111
131
105
200
147
95
119
98
113
173
108
87
110
106
182
81
139
133
157
163
54
95
87
76
103
131
59
97
141
146
49
155
113
67
144
54
93
54
77
108
194
79
173
95
128
91
106
141
132
143
131
102
157
97
117
143
119
81
131
100
116
113
77
117
105
119
96
122
122
122
74
92
152
89
95
128
158
87
131
83
91
76
104
110
139
159
147
117
94
120
83
118
49
113
141
145
164
115
131
159
74
98
105
125
68
101
144
108
68
122
74
97
81
108
49
119
123
96
135
143
130
102
69
59
127
127
129
116
118
80
87
77
49
145
101
89
110
128
148
138
123
131
124
106
103
127
116
150
140
129
117
121
83
132
86
133
102
143
102
124
86
108
135
49
179
118
229
133
85
138
141
163
114
158
121
103
123
131
118
138
191
83
123
140
106
100
158
113
142
61
173
76
69
131
139
88
102
142
109
104
109
115
49
120
131
134
111
153
69
124
143
82
86
138
80
76
92
127
113
49
117
140
135
87
119
54
96
104
95
127
95
130
82
81
120
65
177
110
167
143
104
77
113
103
177
49
140
136
146
144
106
84
138
108
135
131
96
105
143
98
54
153
128
97
147
147
144
141
103
114
94
82
143
87
124
132
93
82
74
77
76
98
158
103
112
98
111
133
193
88
108
67
113
87
108
117
123
93
110
148
88
73
102
157
143
74
114
139
148
103
120
97
147
127
73
101
108
109
95
150
138
145
93
123
49
125
105
77
107
147
113
77
136
110
125
145
106
95
119
161
125
81
67
109
91
102
139
132
94
93
108
109
149
131
125
113
78
120
94
95
154
108
142
70
118
84
96
75
140
87
92
123
113
165
120
68
78
76
89
106
177
77
148
69
90
122
132
112
94
122
82
151
95
99
153
121
156
128
98
67
98
119
115
108
142
113
78
117
49
122
154
181
67
123
105
81
140
69
152
172
136
111
126
121
100
117
178
86
93
70
108
94
105
94
123
96
117
129
74
145
139
135
140
92
86
148
101
130
83
127
87
102
108
128
90
87
96
81
54
103
123
104
79
95
152
115
85
159
87
83
59
148
93
78
82
105
180
112
159
78
114
115
108
177
115
126
83
169
114
157
130
160
125
49
133
131
108
123
104
124
141
113
120
133
102
131
148
136
119
97
106
127
131
200
104
87
59
148
82
85
115
115
125
125
95
139
54
109
125
90
138
162
82
163
125
124
59
137
144
99
202
134
116
151
143
115
148
100
98
105
109
83
54
95
176
114
98
54
116
107
96
76
121
122
97
121
71
147
116
103
127
112
109
108
103
87
91
105
49
110
76
129
93
155
133
125
112
100
124
54
103
101
82
128
159
148
79
188
102
89
106
119
138
98
110
105
83
160
118
133
166
77
115
100
45
146
117
148
117
105
137
113
128
95
87
108
165
96
142
149
95
82
131
128
107
103
138
130
112
78
139
108
103
182
92
116
147
76
143
155
95
148
97
104
149
95
87
108
178
81
175
160
81
98
102
85
105
109
102
73
92
125
82
117
95
163
128
87
125
95
94
95
135
112
170
93
108
141
139
114
95
155
143
102
83
112
162
136
109
69
110
138
103
140
103
128
167
117
88
131
125
59
108
88
61
54
158
98
74
68
77
102
77
85
96
102
87
134
95
85
54
106
96
101
169
146
87
124
103
115
90
158
143
104
77
207
125
159
140
124
145
102
145
160
103
54
106
125
54
136
126
148
179
142
98
81
139
128
107
87
142
157
145
133
92
102
148
129
88
82
133
106
120
97
76
76
89
169
120
106
108
166
120
148
97
164
98
96
94
95
104
89
143
81
118
82
102
134
113
105
108
49
125
108
98
125
134
138
83
123
102
105
83
97
108
135
114
151
108
135
148
81
115
106
160
85
110
103
153
95
161
122
88
54
144
173
113
54
121
127
114
127
105
155
152
112
121
118
110
99
89
108
83
116
81
54
154
73
97
100
125
74
108
141
129
94
116
116
111
162
103
143
88
125
182
90
54
115
141
77
115
106
128
132
162
125
148
122
91
100
81
92
87
109
105
128
140
122
170
59
130
143
117
132
98
140
114
75
112
93
105
92
78
133
107
111
108
96
109
82
149
127
155
157
61
143
98
90
129
152
81
135
123
98
100
131
107
115
102
102
54
79
180
118
128
99
140
103
104
143
123
101
96
128
126
105
113
96
99
111
54
144
102
95
98
74
111
88
92
140
95
129
140
54
102
77
125
139
133
117
98
77
143
108
118
179
80
159
161
102
90
54
119
116
105
113
76
95
128
158
162
127
116
95
95
90
74
95
131
147
76
90
87
109
105
153
117
95
125
78
152
95
89
110
145
156
108
113
155
61
115
130
49
136
61
116
115
134
137
145
102
126
54
113
143
95
126
91
108
91
118
87
102
49
134
144
81
120
120
113
92
150
112
77
81
98
170
123
128
82
113
103
122
189
97
108
59
144
131
102
177
135
139
110
133
106
81
111
81
93
108
59
152
88
125
98
77
120
113
98
76
133
131
113
151
81
95
115
81
102
87
131
127
113
125
121
154
85
142
132
127
103
97
77
140
86
67
108
81
123
97
59
143
83
152
106
137
170
100
188
97
132
149
149
98
152
154
74
131
81
125
127
138
152
54
115
129
80
128
96
98
97
118
134
128
116
95
54
106
154
74
133
147
74
111
151
134
131
81
145
106
101
119
49
102
132
116
142
115
61
117
49
81
107
82
125
116
134
156
118
134
139
141
125
89
115
120
90
97
54
173
146
149
83
146
143
42
108
82
77
102
117
130
127
144
118
129
85
112
116
90
90
133
137
103
107
130
198
116
97
102
164
110
68
128
99
54
133
110
141
127
93
92
81
107
145
92
125
139
122
102
95
95
110
138
120
112
95
113
125
148
124
147
105
125
105
81
107
133
59
136
132
103
127
68
127
68
112
79
83
104
155
95
198
77
133
99
105
54
74
83
96
105
102
128
103
96
128
82
54
103
82
125
116
113
119
93
166
119
104
152
103
131
88
121
81
135
134
81
129
90
74
177
124
133
103
54
120
132
116
129
105
177
129
79
117
97
109
108
144
101
83
68
97
77
135
140
76
147
67
95
101
127
101
74
102
127
132
125
108
107
82
110
143
78
105
133
98
119
79
80
102
126
147
101
112
159
89
95
54
113
99
68
152
126
133
144
125
102
124
80
123
95
167
94
68
148
121
81
54
138
144
166
120
103
130
123
120
100
164
98
135
140
79
122
81
90
127
80
61
110
54
105
145
148
135
129
120
81
85
167
124
148
131
93
85
103
136
138
137
83
103
144
102
95
141
95
116
145
102
124
131
123
112
156
81
76
118
117
108
107
98
87
120
157
116
105
108
90
151
141
108
114
115
89
101
127
109
115
176
101
84
132
107
113
98
108
82
118
103
96
110
95
108
118
149
103
98
133
84
123
87
113
155
93
76
145
61
164
108
107
89
54
59
84
88
95
83
54
125
106
146
127
103
96
70
125
109
95
114
78
124
106
139
104
85
155
54
74
125
101
108
142
122
102
83
74
49
99
182
76
150
127
123
103
117
67
125
97
118
132
81
102
98
125
158
186
95
120
85
127
150
144
126
132
87
91
142
142
121
117
131
122
78
104
113
72
130
148
54
105
124
137
100
90
134
135
147
148
130
98
54
143
65
131
104
89
157
59
76
148
112
107
143
45
165
108
106
102
59
93
151
92
216
104
99
107
101
78
103
122
157
117
133
54
81
59
146
102
54
101
98
61
114
94
80
98
111
95
86
67
112
95
93
74
112
153
91
54
119
133
74
113
148
92
163
86
103
81
100
76
87
158
125
87
129
78
82
117
105
119
87
89
92
81
129
157
125
135
143
134
94
91
178
111
138
129
146
95
74
97
100
158
95
130
135
145
102
100
92
102
152
144
151
91
141
121
144
127
127
92
98
177
54
161
153
54
157
120
54
103
138
145
77
143
95
102
158
98
54
59
83
122
92
87
131
94
101
116
96
125
83
115
102
143
117
119
54
123
102
114
109
89
49
93
102
169
92
143
119
125
54
144
177
67
219
128
82
68
144
111
80
82
145
76
85
125
82
107
125
129
77
108
103
90
116
79
133
105
91
115
123
146
158
141
54
82
78
54
132
135
118
113
122
86
125
100
200
95
103
117
128
97
98
135
98
83
59
97
153
134
97
126
108
112
101
92
82
119
101
97
100
49
137
95
109
88
166
121
106
161
98
103
102
59
107
77
85
125
98
101
49
141
68
151
95
80
80
49
93
102
67
119
132
118
95
106
153
148
160
104
103
115
68
94
76
81
68
130
95
103
117
157
54
143
112
61
130
69
61
107
177
102
108
131
163
61
119
108
125
116
117
171
94
114
126
168
76
133
95
95
121
103
100
113
127
131
128
144
76
95
101
103
74
54
85
95
105
74
96
68
98
85
116
135
94
87
108
128
87
142
77
80
118
91
124
74
108
135
119
125
81
102
83
98
74
74
81
146
125
110
98
130
161
128
160
132
77
89
106
116
162
113
82
109
133
102
115
83
110
95
85
128
102
127
171
141
121
104
133
79
133
112
123
94
122
113
109
127
118
70
120
128
74
172
102
107
141
140
112
129
96
113
113
49
103
68
129
87
115
95
125
61
61
92
138
101
113
90
146
112
128
157
134
131
136
105
103
100
93
97
104
117
149
92
113
67
130
108
81
54
110
118
135
119
159
128
90
118
102
117
54
131
149
130
102
185
103
148
134
81
150
91
148
134
116
123
73
59
129
144
117
113
116
127
167
143
85
108
54
84
143
90
145
107
74
124
98
90
118
185
134
112
165
104
135
121
68
125
102
156
172
103
59
96
103
83
98
91
177
135
90
86
80
120
113
95
152
168
160
98
110
171
162
132
98
95
119
146
119
148
128
118
103
105
77
95
89
54
142
133
151
153
127
59
101
132
54
103
110
93
137
76
179
144
126
131
125
140
129
113
128
112
54
146
99
125
88
133
106
103
113
89
97
127
89
108
112
145
49
109
143
177
109
102
172
90
153
131
95
119
113
135
151
95
105
133
131
82
133
128
95
200
101
90
103
108
87
106
92
102
145
162
122
161
136
144
152
139
86
122
54
160
101
83
106
83
131
95
147
112
93
87
68
103
54
138
142
133
108
136
146
133
182
87
78
102
123
80
99
91
123
93
148
54
118
103
148
82
96
98
143
128
127
125
141
151
117
105
117
101
102
129
157
100
121
108
54
82
102
54
95
95
76
124
131
69
102
148
125
105
61
96
160
117
120
139
105
138
125
108
101
95
102
122
103
113
128
81
102
129
59
85
128
93
87
145
54
119
85
101
119
123
81
102
81
74
136
120
111
81
127
95
165
110
108
61
115
139
77
172
95
161
183
120
95
108
158
158
112
155
179
54
128
105
156
91
85
132
113
163
134
102
97
95
146
110
92
124
133
63
108
114
93
105
106
152
135
116
117
119
95
143
100
155
125
102
110
102
132
113
127
98
132
198
77
76
101
148
87
133
148
92
78
140
138
118
103
127
74
54
54
105
102
54
149
165
123
113
86
119
97
102
160
112
108
54
113
123
87
149
91
96
146
95
99
76
148
103
102
98
139
105
148
93
138
160
119
108
99
132
49
54
74
138
109
121
143
61
139
67
106
109
61
82
164
113
102
97
163
153
101
59
111
77
113
103
194
112
49
132
114
86
131
128
115
77
134
102
92
118
104
85
70
103
144
107
125
104
113
98
161
49
74
125
161
59
125
107
122
155
110
108
95
102
102
78
125
108
90
135
128
99
121
157
145
120
120
129
127
139
111
54
59
91
67
102
95
129
97
88
54
161
144
83
95
117
113
124
88
49
102
221
54
102
54
144
118
134
129
113
128
117
170
98
97
101
95
77
125
54
107
159
117
157
54
154
108
116
95
130
78
108
91
90
137
116
161
87
102
160
83
115
105
76
103
128
129
108
104
133
111
92
140
117
120
113
117
81
82
102
98
95
102
78
133
107
111
112
131
93
95
125
93
109
141
132
115
108
133
83
100
141
132
124
81
141
81
102
81
161
86
144
129
49
120
98
111
140
107
107
54
97
131
107
129
69
139
102
113
108
92
102
121
139
61
144
101
54
118
107
140
105
159
167
95
144
125
215
125
115
137
118
114
92
119
105
86
108
163
80
82
145
91
99
112
100
78
59
104
124
91
142
118
80
49
185
148
66
108
133
106
129
157
137
122
130
105
103
54
125
92
114
99
91
78
90
107
110
132
78
212
100
167
104
108
107
122
90
97
103
118
128
82
93
168
118
117
127
156
126
114
130
98
91
161
113
72
147
101
108
100
90
95
162
170
102
131
129
140
95
143
135
81
100
143
102
152
97
102
104
88
170
54
149
112
81
133
172
90
105
54
146
110
144
133
73
92
94
114
82
116
122
133
74
89
123
197
76
133
149
74
133
101
108
61
118
141
98
67
122
149
113
77
99
150
80
123
112
156
81
102
143
112
121
80
120
119
74
158
84
145
78
96
143
159
68
131
93
103
87
156
93
140
146
77
124
85
76
89
90
106
147
156
142
93
140
132
77
49
109
107
54
161
103
103
125
105
78
89
114
81
102
103
100
108
93
169
95
135
95
93
79
108
174
54
93
190
83
102
120
101
85
110
98
130
76
97
98
83
122
145
96
114
120
165
146
77
49
120
62
111
115
95
95
49
169
81
98
108
128
131
120
153
77
104
110
125
79
102
124
119
124
49
105
54
135
136
151
91
95
128
102
140
156
125
110
76
103
98
116
118
103
104
129
77
104
74
108
140
173
152
104
138
116
113
128
107
98
152
96
108
140
143
114
145
54
98
94
113
90
135
131
98
104
105
54
76
85
103
121
67
146
77
140
107
164
131
111
116
138
54
81
130
142
54
113
131
90
139
99
127
144
102
119
107
126
125
105
126
118
95
148
122
108
131
81
151
81
104
151
177
89
176
129
139
144
127
81
92
89
131
110
118
102
143
96
90
97
113
108
128
119
87
110
83
150
101
78
143
138
59
132
59
135
104
148
151
145
165
163
71
79
97
92
149
162
95
49
54
118
137
67
73
108
110
142
140
106
149
118
180
107
98
81
154
87
82
133
94
99
186
125
95
100
100
133
123
122
65
54
216
108
81
140
109
140
123
95
110
159
77
130
177
204
107
161
107
134
133
49
165
152
95
102
123
98
103
113
81
108
49
117
154
74
59
125
220
145
102
82
98
139
154
128
131
90
95
121
81
111
70
166
125
131
115
133
90
98
77
49
88
102
151
126
116
54
83
153
139
157
135
75
101
65
59
112
123
104
97
148
130
115
82
142
136
109
77
101
104
104
136
125
119
88
90
165
61
119
102
94
78
102
111
128
97
110
127
114
87
158
90
98
120
143
141
129
148
113
149
118
59
143
118
110
171
117
95
97
99
158
65
147
140
102
110
68
98
93
157
45
125
110
126
102
102
145
124
131
107
116
143
108
108
117
98
119
108
165
129
105
131
109
167
182
125
91
105
99
87
155
82
84
68
101
104
102
107
94
81
82
135
103
129
149
113
105
109
49
161
93
143
133
106
131
98
130
106
98
74
172
54
148
122
123
90
77
104
133
82
141
154
99
109
128
126
61
92
76
76
113
148
138
127
103
119
112
49
146
109
97
116
148
126
68
143
67
120
67
54
127
141
79
49
59
65
98
54
133
102
89
90
77
146
105
110
143
128
96
77
124
105
97
148
98
116
103
153
108
156
140
100
170
49
164
143
93
54
142
161
149
83
95
105
74
113
146
156
133
108
108
93
87
109
148
61
61
117
105
143
102
185
155
154
114
140
136
177
54
54
85
108
125
128
121
135
158
104
148
143
84
95
122
95
120
99
115
123
83
90
133
97
97
59
129
87
128
123
117
68
93
84
165
146
121
54
148
147
140
148
97
148
96
81
108
132
165
69
122
138
129
95
133
96
125
102
142
81
138
105
84
87
108
113
116
136
149
96
82
91
139
96
144
54
159
95
103
153
146
148
127
146
111
54
118
83
158
98
54
139
59
101
118
102
108
96
84
111
87
117
152
69
86
145
104
130
135
131
81
116
138
141
103
127
115
105
111
90
155
156
116
96
119
73
101
109
128
91
116
91
124
120
134
97
159
90
110
81
108
49
108
181
74
102
102
106
93
124
168
130
177
149
102
122
98
119
115
102
107
108
131
153
74
125
95
102
103
104
123
179
85
78
82
95
152
106
161
167
54
101
87
125
76
103
112
153
146
127
118
120
139
127
111
160
124
149
106
125
139
105
77
111
127
49
94
120
90
140
102
98
98
131
133
125
155
104
148
71
82
95
87
123
98
144
49
135
127
104
87
106
95
97
108
172
129
91
81
126
129
155
98
95
175
67
54
148
123
94
95
85
134
96
125
90
83
89
95
99
99
95
155
69
130
101
98
92
165
123
106
139
109
132
137
126
136
114
135
59
96
109
95
54
139
128
108
81
115
137
102
49
80
161
76
54
123
112
98
153
114
135
141
108
107
82
148
93
98
127
101
161
93
116
133
104
137
118
90
126
113
108
116
159
105
113
54
143
115
54
111
129
119
130
69
121
80
102
54
49
70
122
108
95
152
87
135
194
139
135
87
94
102
90
104
124
131
115
170
105
115
113
122
128
102
76
68
102
143
93
103
146
108
112
153
218
144
82
74
54
115
177
113
147
147
54
102
160
133
148
102
142
82
97
115
114
144
99
95
74
111
108
152
114
96
54
130
98
81
49
59
124
78
74
96
84
127
104
102
97
104
111
112
174
125
105
124
123
104
61
87
49
129
95
105
104
89
104
119
109
130
120
49
86
141
101
109
101
108
199
143
114
103
125
89
102
103
96
95
126
163
134
126
74
129
94
124
112
116
144
105
128
118
76
99
132
97
100
91
87
105
131
121
108
141
120
129
54
129
108
170
108
152
114
129
128
109
108
87
127
119
147
160
152
148
113
155
144
78
54
103
125
98
105
54
149
131
105
160
158
49
120
177
116
108
98
154
80
126
133
135
104
77
109
118
163
121
103
145
125
177
98
138
95
115
115
136
122
108
146
95
154
123
139
114
119
108
138
121
167
90
95
143
104
100
98
127
102
81
172
148
123
103
150
178
131
105
95
116
125
96
131
95
146
83
144
93
180
118
102
111
145
96
112
115
82
61
135
102
59
133
120
103
74
108
96
113
97
97
130
98
98
136
93
139
90
127
102
96
134
155
87
124
133
175
54
131
140
125
158
93
97
108
113
99
159
123
115
180
59
165
113
91
114
132
123
88
111
95
93
145
68
95
123
125
133
158
156
180
54
107
141
149
158
90
109
117
137
59
103
140
191
102
100
156
54
54
97
129
87
128
128
54
102
135
129
54
74
95
134
103
54
123
80
54
102
87
113
131
134
83
102
119
147
109
115
163
122
135
91
126
172
95
146
54
106
119
113
131
87
120
129
104
148
168
108
121
115
111
81
49
115
127
103
117
88
81
128
133
81
108
102
160
68
127
137
98
107
118
95
161
92
122
96
76
170
108
117
77
74
68
87
77
98
128
103
108
113
98
131
135
148
127
120
74
92
107
160
96
118
92
122
67
106
108
161
100
77
122
148
107
149
137
54
126
93
93
143
54
54
99
121
108
114
122
140
113
200
127
115
139
139
94
121
105
90
76
106
191
156
132
177
135
101
125
54
90
156
105
78
74
90
95
102
87
132
54
89
42
112
67
117
68
137
154
98
95
118
117
123
147
98
146
103
125
120
224
121
139
147
95
95
152
102
107
88
74
127
90
113
83
182
96
54
145
139
102
120
67
128
108
129
83
131
95
76
54
135
123
110
129
138
128
150
112
98
110
93
127
96
105
99
140
82
105
90
177
80
105
128
128
74
110
131
78
69
108
78
98
136
101
148
140
95
111
104
148
147
91
74
118
151
97
59
148
144
119
112
102
106
82
149
113
89
125
87
126
99
94
97
99
156
103
139
121
128
104
126
144
116
125
102
125
72
127
96
127
146
102
102
117
125
144
104
180
85
116
90
98
77
91
148
167
102
149
105
93
108
146
108
118
54
148
106
153
105
132
101
98
153
145
139
91
96
92
49
167
95
167
175
95
103
139
125
103
118
135
125
127
163
115
130
141
132
164
179
102
125
129
174
121
156
81
118
177
118
125
126
125
142
124
108
119
77
82
133
120
111
49
101
128
139
107
74
85
118
95
49
105
141
136
125
108
105
132
102
156
158
74
129
123
132
93
85
100
124
102
123
90
115
129
139
59
87
95
76
87
104
54
81
54
49
103
119
54
144
54
128
111
156
112
113
153
110
85
167
106
102
107
107
81
151
121
145
67
74
92
131
101
101
81
111
108
103
125
98
80
98
135
81
126
124
146
84
102
100
125
84
135
161
98
151
80
59
117
152
155
167
94
160
161
158
91
143
110
90
95
144
119
54
85
54
90
128
125
95
180
109
150
69
67
69
148
126
127
94
154
111
148
143
125
95
95
83
129
96
113
133
148
90
125
120
111
200
119
123
94
166
133
150
123
150
109
98
112
123
118
82
179
144
107
149
101
116
144
123
125
95
82
167
105
168
167
77
124
100
129
181
61
118
90
140
113
132
130
98
49
77
105
103
139
68
144
85
115
106
111
87
54
54
108
133
127
104
77
138
84
116
80
122
110
87
92
94
59
69
168
169
115
106
143
114
141
104
102
158
95
133
93
143
105
112
93
136
123
93
101
103
102
105
153
75
108
154
100
143
100
67
115
154
109
149
90
146
134
99
139
144
120
129
72
91
95
92
136
54
122
127
54
158
170
153
102
98
93
135
76
103
105
195
94
133
97
61
134
136
131
85
129
99
131
148
143
129
129
186
124
135
146
81
131
126
77
96
95
85
108
143
128
128
74
140
95
124
149
54
102
128
109
144
97
101
78
147
102
117
90
101
113
95
102
106
120
148
138
128
115
125
165
49
177
138
137
96
168
112
82
78
123
102
84
103
78
84
127
147
143
102
98
95
124
118
179
137
165
127
148
128
156
135
119
127
176
112
156
94
49
99
118
108
93
152
102
142
99
81
106
135
113
110
96
45
150
61
103
105
150
148
54
153
149
109
105
158
133
96
103
115
121
140
133
135
106
122
151
115
94
145
113
95
115
173
109
117
120
170
156
98
112
59
100
117
98
59
54
137
147
127
132
161
134
141
130
121
146
122
63
81
154
115
102
163
113
74
68
128
135
152
49
128
143
96
175
108
90
85
146
78
96
131
138
90
126
103
102
148
88
161
95
141
146
87
87
59
104
96
102
117
132
148
136
69
115
162
68
117
134
111
98
108
90
77
97
108
127
104
98
85
122
117
126
89
143
93
106
138
119
89
49
135
110
49
148
134
95
130
112
154
105
108
147
134
76
144
80
59
54
128
113
188
87
143
139
78
54
92
96
112
107
126
165
157
73
115
98
97
133
148
82
120
120
81
126
143
137
131
160
151
98
54
134
91
82
54
81
127
117
125
49
113
93
74
115
88
153
88
131
98
102
103
130
128
76
102
91
160
103
79
154
192
119
111
130
95
142
113
84
145
87
125
54
141
106
134
197
119
128
112
130
54
106
158
54
78
130
102
113
98
106
99
112
98
54
105
119
144
194
108
131
85
77
106
113
134
74
141
90
125
110
182
95
98
118
91
144
132
93
129
112
174
102
146
54
89
92
95
108
133
109
99
112
152
150
95
114
146
121
108
158
127
103
108
144
54
132
115
123
65
80
118
91
170
107
151
49
175
111
138
95
93
81
59
151
116
98
131
49
132
97
123
87
87
148
142
74
106
81
111
147
144
49
86
49
129
115
91
102
102
110
147
94
138
117
83
81
102
49
127
150
126
113
147
116
129
83
76
54
128
105
151
82
133
81
125
137
83
128
95
87
165
86
97
163
84
95
135
133
113
156
107
87
89
108
74
132
146
54
145
113
113
143
112
106
95
158
119
76
101
54
72
153
82
163
112
108
110
108
105
142
157
102
127
111
100
104
122
132
134
79
108
76
83
94
91
140
130
125
143
154
149
120
177
100
87
144
130
89
100
116
116
143
131
133
134
135
122
127
108
104
129
148
118
67
126
118
89
172
134
76
198
67
125
77
59
139
110
125
80
54
124
70
90
138
102
124
167
81
100
158
74
125
74
135
95
80
104
93
143
108
87
67
154
79
89
104
152
59
87
131
128
117
144
162
108
127
116
61
97
115
144
81
140
95
125
91
98
92
164
119
102
177
177
54
132
121
103
90
103
120
77
102
98
76
102
95
117
133
95
96
115
123
126
112
167
104
81
85
94
128
132
102
180
54
157
107
74
104
182
147
108
138
111
177
81
95
135
104
87
102
54
113
111
116
78
92
150
111
158
129
119
122
101
165
88
112
107
175
76
102
68
114
193
59
102
145
162
111
122
112
125
145
105
125
106
99
113
54
111
125
120
128
103
108
78
138
93
116
92
113
54
97
116
67
194
122
113
113
126
120
180
77
125
106
89
101
104
117
98
107
49
112
95
95
98
99
77
130
119
114
89
129
105
150
125
93
144
98
42
182
170
111
157
168
186
91
98
173
59
145
113
129
145
115
124
59
118
79
81
177
155
98
143
108
134
135
101
103
140
103
49
78
160
127
146
96
74
79
77
54
133
76
102
106
103
103
116
115
123
113
115
92
144
86
81
112
102
176
99
88
95
106
107
54
131
81
105
107
141
129
174
165
101
128
90
59
54
146
85
138
160
101
108
132
134
142
115
121
110
142
141
140
153
148
112
93
108
154
137
83
74
106
195
104
142
132
103
98
143
123
130
105
102
113
160
69
118
102
106
101
152
93
102
219
122
109
108
100
145
106
165
96
98
164
95
74
98
120
110
118
54
133
84
113
145
78
87
54
96
98
103
115
142
102
67
120
74
77
94
130
123
140
158
128
116
98
119
104
90
170
115
102
140
96
68
49
107
150
137
108
76
54
154
127
76
78
96
118
137
103
59
103
105
119
102
112
54
125
110
103
104
96
131
101
127
192
93
151
93
54
76
105
132
135
88
101
147
110
161
136
125
107
87
74
83
105
163
98
118
89
133
139
49
87
107
99
78
110
69
143
61
119
169
109
95
81
106
104
101
129
113
115
106
197
103
131
171
98
148
102
61
104
131
143
130
95
147
152
128
125
83
137
127
144
110
98
69
61
76
153
94
117
83
82
59
115
107
90
82
131
106
77
144
105
173
76
95
103
110
74
115
87
100
102
134
88
94
125
115
106
127
127
140
157
95
79
133
109
72
134
101
102
137
123
132
68
150
140
130
81
74
127
146
128
119
107
88
113
176
90
109
129
96
98
104
138
165
133
177
129
83
153
111
128
97
105
90
109
119
132
129
101
128
120
117
156
83
90
49
135
116
114
123
106
133
112
133
143
120
120
54
102
125
191
113
118
102
128
138
180
150
118
121
93
122
79
147
106
103
89
113
123
83
98
144
161
122
157
143
123
108
83
81
109
220
121
81
59
118
122
108
125
115
103
108
95
86
110
108
99
122
95
123
145
133
59
137
54
87
49
94
93
115
180
129
92
147
108
149
105
54
105
97
166
118
102
137
139
150
165
143
117
110
127
54
118
114
61
97
125
143
163
153
144
165
125
108
95
102
109
97
139
141
110
95
100
150
130
133
135
87
129
59
118
103
113
94
137
133
103
87
110
158
71
76
152
156
132
79
133
148
158
170
96
91
121
111
105
130
109
151
139
118
129
102
193
116
143
140
122
83
139
120
123
106
98
83
125
113
104
98
98
95
81
108
78
73
112
118
146
105
82
91
120
145
150
100
108
90
135
133
113
81
129
113
139
141
107
149
114
102
152
74
141
119
98
112
81
108
113
149
140
108
94
102
59
135
115
129
127
124
100
98
59
72
108
190
92
128
97
139
133
139
135
98
190
59
137
74
54
98
148
78
127
106
142
85
103
165
128
139
103
121
135
139
124
124
125
165
109
128
81
199
166
96
148
131
67
122
85
108
112
115
157
135
124
73
122
112
107
77
126
121
90
114
138
122
146
59
105
138
107
133
49
93
85
133
152
129
74
93
97
114
92
104
112
99
91
127
106
107
100
112
153
87
108
99
129
79
74
116
67
106
81
90
95
185
59
54
102
140
93
168
120
113
97
149
95
102
76
103
74
93
76
77
59
98
151
143
81
74
129
54
77
98
120
54
150
177
110
103
135
124
103
102
54
113
77
110
90
122
91
124
95
129
120
177
76
190
108
79
112
125
106
158
94
135
95
82
145
146
81
105
95
156
108
90
91
124
115
158
61
45
82
113
59
90
54
123
96
102
112
108
148
116
170
112
121
141
125
105
119
87
152
112
133
119
98
131
100
95
82
104
118
111
76
149
101
83
49
104
83
105
126
113
126
104
106
95
102
135
148
123
87
124
112
125
108
85
106
81
101
95
89
106
140
92
77
82
102
141
115
136
133
159
125
99
114
177
125
116
127
156
59
129
105
82
158
144
113
186
153
117
140
112
154
93
141
121
103
59
139
99
95
143
97
95
143
169
119
126
87
103
102
148
80
105
81
182
120
143
122
125
113
110
144
113
102
117
120
125
112
108
77
49
123
107
102
62
119
110
74
140
116
136
108
81
108
119
91
108
190
95
100
70
142
67
101
112
122
171
69
158
118
113
102
173
144
85
159
151
126
149
99
114
130
92
139
108
87
87
127
94
81
129
108
121
148
74
102
140
126
122
103
109
129
96
76
95
78
92
101
132
54
93
107
153
113
135
78
93
169
110
80
93
116
117
74
108
120
95
116
117
206
108
145
74
98
95
164
95
131
117
162
116
122
102
81
95
90
152
87
120
100
118
97
95
87
85
158
68
103
90
102
155
124
180
151
143
67
123
112
165
154
156
163
118
123
149
129
102
103
159
95
133
148
149
135
154
113
144
61
75
138
59
114
100
127
103
109
67
141
131
77
128
128
113
119
154
112
139
67
98
134
92
114
143
177
141
135
112
154
103
76
107
143
112
159
103
148
145
102
86
145
49
127
110
98
113
128
78
100
94
98
198
84
74
138
102
98
145
103
111
118
145
129
134
81
118
119
114
177
95
121
90
157
107
189
137
113
125
103
107
159
119
82
109
149
150
103
174
108
99
128
54
188
161
121
126
121
74
116
118
199
78
74
118
146
176
125
54
59
152
103
84
131
110
54
96
80
148
139
112
96
120
157
172
133
150
145
120
90
128
142
113
49
135
108
143
110
108
79
82
143
126
81
126
128
109
54
103
124
99
49
107
140
97
95
113
76
105
82
102
108
165
87
102
103
148
105
140
67
117
94
93
133
177
121
129
124
78
125
92
123
98
180
134
96
74
96
120
218
59
81
98
59
142
119
103
128
131
109
111
146
96
84
96
134
76
77
128
122
122
81
180
206
59
111
104
146
113
146
137
101
108
61
132
114
103
167
185
123
108
113
112
138
161
82
82
146
103
129
126
127
91
135
130
95
136
137
147
118
130
135
106
81
131
118
108
131
126
125
83
124
91
114
81
114
120
160
76
108
146
153
82
135
76
104
81
124
134
121
150
76
78
118
57
59
129
120
102
138
102
134
113
54
149
54
144
99
133
92
103
170
129
135
100
160
141
125
108
116
163
146
90
109
166
125
123
127
115
137
137
93
98
100
98
100
111
133
100
140
123
154
122
125
152
98
99
148
160
133
159
87
81
119
161
113
136
82
81
143
172
97
73
97
143
124
105
54
107
152
146
108
148
80
102
136
88
118
135
95
90
96
126
81
138
91
114
96
108
167
166
94
131
108
114
133
99
198
87
127
111
115
153
122
107
80
112
112
131
162
126
98
90
54
128
109
126
90
99
134
133
147
82
109
90
113
176
177
150
151
157
125
73
87
151
106
108
170
113
94
111
98
83
191
49
125
120
129
115
120
102
98
125
147
78
139
105
99
139
113
118
131
121
102
102
155
108
102
125
104
200
105
139
119
76
118
146
105
109
148
102
152
142
135
103
82
98
91
123
125
127
177
105
80
108
128
82
113
154
116
184
82
74
106
134
124
109
129
103
151
148
49
129
82
102
108
127
135
138
94
54
82
95
122
67
54
165
115
122
95
68
118
77
165
93
139
97
163
151
59
135
105
117
54
133
113
128
135
170
115
113
117
119
129
123
130
145
136
128
120
92
96
153
129
98
93
98
78
93
74
145
122
91
141
97
125
49
102
77
124
133
116
85
113
117
92
108
126
54
145
101
98
91
109
120
102
103
81
104
102
116
90
90
101
99
74
161
139
139
69
132
132
147
108
148
49
103
112
110
87
49
104
105
173
98
108
147
138
152
93
122
149
142
102
98
93
81
80
78
124
102
95
54
147
172
141
105
99
96
120
105
102
49
90
103
123
134
98
129
122
104
111
125
90
92
116
128
98
72
49
118
129
102
123
126
114
112
61
125
102
128
94
136
74
117
120
96
80
84
118
93
143
147
95
141
128
138
108
54
143
111
109
115
94
179
67
54
103
104
119
98
145
67
61
124
129
147
113
163
98
115
160
142
97
97
134
127
177
68
82
140
160
102
105
146
145
129
158
130
125
161
122
102
112
85
82
104
82
128
155
126
102
113
168
146
100
161
142
103
117
108
108
131
87
77
98
79
106
54
112
147
126
166
131
59
117
116
103
102
133
174
134
145
126
149
59
98
156
181
113
132
102
59
174
82
108
95
112
102
109
93
106
99
112
146
112
120
81
101
178
70
98
95
54
149
130
136
93
149
109
89
114
87
137
54
119
54
140
80
107
124
107
122
165
117
146
103
83
95
80
104
146
158
160
141
77
180
119
106
163
129
126
108
151
108
142
54
104
96
123
117
54
133
111
94
83
91
54
98
74
131
148
109
116
98
165
120
175
54
93
61
96
98
104
125
184
105
139
127
97
90
120
90
141
104
165
87
158
90
80
108
160
135
131
76
106
107
156
109
131
123
120
148
127
113
82
135
107
127
144
109
90
113
83
125
116
139
87
74
93
120
181
92
104
147
126
102
102
194
54
101
87
148
133
108
98
110
76
132
90
98
74
155
150
83
158
114
141
161
105
125
102
77
116
78
108
54
98
96
153
159
69
135
54
85
157
121
125
95
154
119
81
160
95
102
91
54
122
135
49
83
172
114
93
181
156
119
148
104
114
132
54
105
148
95
162
134
82
86
168
123
118
162
83
122
88
143
142
103
59
76
155
157
134
106
90
103
115
101
107
86
200
106
101
119
148
108
102
113
126
106
148
74
128
92
81
81
133
123
101
131
116
106
126
98
158
103
156
162
126
179
92
108
125
115
108
110
76
123
146
54
54
90
103
111
80
132
101
77
131
113
110
163
110
91
116
69
90
121
127
92
102
164
95
68
104
141
131
105
173
101
103
95
123
101
115
95
112
74
74
95
76
132
156
108
158
95
80
74
227
54
108
125
54
112
152
76
74
143
108
153
82
93
54
91
143
124
148
117
59
101
95
119
109
148
139
154
111
85
165
61
108
140
136
69
93
145
116
84
91
135
102
112
113
129
95
144
118
81
135
98
133
141
129
113
108
144
97
128
145
124
135
139
97
118
110
131
96
125
141
85
144
83
166
103
54
88
93
105
124
114
130
138
143
102
93
61
93
87
98
98
98
75
93
121
54
140
113
160
198
90
108
98
59
161
160
88
109
54
102
108
67
54
81
90
126
98
49
124
82
95
113
103
108
89
118
131
98
139
153
125
81
90
92
133
134
130
98
114
113
177
115
59
90
137
90
137
79
131
145
158
120
131
116
156
104
130
145
120
135
122
148
144
97
130
215
133
112
95
69
110
109
87
101
146
91
103
128
76
76
140
91
131
95
67
104
140
83
135
146
81
150
190
113
79
186
71
98
81
108
164
115
54
110
121
116
105
104
108
148
106
127
148
133
120
131
148
129
161
45
118
91
119
131
73
85
111
135
119
125
120
123
88
91
81
133
138
67
67
120
81
104
127
109
138
102
137
193
103
178
67
49
123
90
128
114
128
140
127
146
102
83
135
103
59
124
130
93
103
101
102
113
158
163
111
98
157
131
103
150
165
87
105
105
141
122
134
123
102
85
54
134
146
123
148
103
78
168
87
104
101
146
82
120
54
120
108
82
77
122
105
121
129
168
119
103
123
114
107
87
104
96
124
142
158
69
83
86
88
128
116
77
68
77
69
93
142
119
93
98
153
108
94
87
146
127
171
93
87
96
191
97
172
83
68
185
120
152
84
115
103
154
95
129
145
87
135
98
123
77
145
95
163
88
148
95
135
111
127
95
132
148
128
102
150
116
140
139
54
148
171
90
97
96
105
103
93
98
95
114
105
54
106
98
140
127
119
128
101
115
115
105
144
106
213
116
89
149
152
95
90
128
112
129
59
134
106
82
87
87
54
119
113
126
148
120
114
153
141
132
163
116
68
155
120
49
150
119
122
78
131
86
137
108
102
104
92
81
73
112
131
179
105
77
102
74
145
113
90
102
102
144
117
169
54
131
125
141
125
108
89
126
93
153
157
115
92
171
114
49
69
135
153
134
140
155
102
117
54
113
82
97
143
95
144
76
113
125
148
100
128
179
102
89
54
127
127
67
95
54
129
130
54
108
151
79
133
103
108
165
145
133
68
129
123
128
102
153
143
54
102
103
120
91
130
108
90
100
133
113
137
123
97
96
151
112
96
105
81
82
118
68
90
122
112
105
83
95
144
144
98
131
140
106
134
106
145
106
98
115
127
104
103
100
54
99
164
165
67
155
149
129
158
140
74
114
81
163
108
90
109
83
54
136
172
141
138
147
110
116
148
138
90
135
146
122
103
99
81
99
113
90
101
79
105
74
93
114
153
94
155
122
145
143
97
126
115
161
90
95
74
93
115
112
97
106
165
113
92
140
85
95
96
74
157
148
104
86
110
81
172
127
154
114
149
114
84
84
93
157
109
126
54
134
140
119
179
77
108
118
120
91
74
161
109
108
112
67
170
82
115
94
144
134
120
133
90
97
105
93
129
92
95
129
74
129
135
95
128
135
82
99
108
93
125
141
131
132
128
104
143
107
146
71
95
141
133
147
89
200
148
165
111
76
99
138
90
69
103
49
146
122
102
113
67
112
114
95
90
148
138
152
90
148
139
113
153
49
115
83
109
78
188
115
135
167
113
176
95
128
59
49
95
132
123
131
108
54
101
97
125
154
154
128
87
122
120
99
137
106
111
95
90
102
95
117
144
110
122
129
85
125
101
107
131
147
83
113
96
87
112
103
133
127
186
120
155
134
107
137
83
113
93
103
82
67
157
83
96
120
81
118
102
102
122
100
116
93
101
144
121
91
119
76
112
82
107
80
87
126
138
76
207
108
156
123
103
158
54
90
108
146
140
136
113
105
128
113
191
120
76
74
121
92
95
121
93
83
97
105
95
82
109
54
167
125
141
120
108
155
190
79
97
108
116
74
98
112
95
119
124
93
96
78
135
123
160
97
95
140
72
98
139
98
83
109
143
90
103
139
134
110
96
74
76
120
83
95
118
112
95
157
76
95
131
87
74
129
138
113
103
163
145
138
82
87
110
108
91
173
124
73
153
164
165
128
101
112
131
127
122
133
91
112
115
162
135
142
144
87
102
117
128
131
82
96
114
118
137
101
135
128
146
133
81
108
133
120
54
110
81
126
92
106
135
151
74
101
69
143
96
110
95
142
102
76
92
143
74
146
54
177
69
121
99
94
187
59
59
49
76
140
128
99
139
143
96
100
105
146
173
103
67
116
67
185
133
100
77
85
87
54
73
148
118
115
116
159
67
113
135
103
161
113
155
172
118
102
82
194
107
84
120
74
107
79
153
140
87
161
165
136
118
98
115
138
131
109
108
115
102
89
125
122
149
108
90
103
146
177
83
108
118
139
119
90
131
162
143
87
81
49
83
170
158
177
73
156
95
113
109
99
104
49
109
149
109
110
103
90
98
59
133
131
122
110
172
150
156
81
93
90
153
125
177
102
128
81
106
132
81
80
114
149
69
99
102
99
127
148
96
124
118
139
59
113
80
140
115
90
99
82
98
109
119
130
139
95
98
102
111
123
119
115
54
96
118
61
125
104
54
141
102
106
116
133
97
110
122
76
69
177
82
124
61
107
74
97
112
106
76
163
83
108
173
98
133
108
118
94
73
90
96
81
89
139
108
127
94
107
106
113
114
85
82
91
104
116
148
98
110
93
107
54
135
117
90
133
81
54
146
110
117
132
121
106
87
77
129
142
115
120
98
81
87
136
114
111
154
77
103
113
96
142
61
131
102
116
98
120
80
132
166
126
146
103
147
148
116
134
124
59
102
102
73
87
112
103
129
81
113
82
96
139
103
113
127
129
104
54
96
109
77
98
118
102
113
92
161
108
122
54
115
122
129
148
115
186
162
140
169
177
149
165
98
104
108
171
89
133
90
49
68
93
168
101
116
87
93
99
136
124
169
128
68
131
96
143
104
105
134
76
118
129
100
82
124
123
67
141
120
146
129
105
106
188
118
137
104
141
95
123
74
146
121
132
119
157
127
126
59
166
78
149
88
98
138
76
159
91
81
123
102
140
129
95
108
104
190
81
120
83
59
147
148
95
133
122
113
112
98
120
59
105
131
92
106
95
54
133
111
133
151
125
54
102
148
111
112
116
126
107
92
103
140
85
49
133
141
95
102
107
116
94
170
108
160
140
167
83
144
95
96
98
77
112
78
49
148
157
81
167
45
99
154
155
107
120
96
92
111
128
158
138
82
49
141
154
84
125
102
129
80
122
150
77
162
54
110
125
103
135
135
78
148
127
113
102
163
102
133
95
121
155
109
93
165
98
174
105
158
129
108
54
74
126
125
148
78
125
95
89
117
81
95
118
87
129
79
91
108
156
102
103
95
90
137
129
93
144
101
59
132
81
54
95
126
97
95
145
121
155
82
102
111
82
113
118
110
67
54
122
120
77
152
113
148
100
118
102
106
146
107
97
81
82
97
161
93
145
142
152
131
124
112
138
121
130
76
115
69
124
126
116
119
95
77
81
122
134
85
104
150
144
75
140
104
103
127
132
125
164
108
166
114
59
120
153
103
112
128
81
105
122
160
120
159
102
180
133
87
135
125
92
111
138
96
120
145
127
142
121
107
128
114
151
133
80
135
84
140
103
126
104
118
154
69
80
68
103
131
119
102
102
110
54
103
118
54
107
127
74
83
90
103
96
109
65
54
136
101
104
54
200
54
145
101
130
109
54
148
108
167
101
61
83
83
54
77
90
59
87
179
119
194
87
114
142
112
155
147
81
136
153
98
117
96
123
74
103
126
116
122
117
163
96
102
162
96
140
119
131
54
135
83
116
74
93
84
139
105
105
178
185
120
120
150
107
67
124
74
130
135
67
139
127
125
133
153
106
98
133
108
147
118
158
127
81
134
82
98
126
200
88
132
49
115
97
125
149
170
144
130
150
155
128
144
80
108
107
91
93
135
146
146
75
78
113
105
137
108
131
108
147
77
97
122
95
59
76
93
145
107
115
95
108
144
133
188
139
113
122
148
210
98
171
144
128
177
79
95
102
169
96
81
67
114
138
115
129
148
125
128
132
145
49
135
143
100
113
108
165
158
105
139
118
101
101
141
81
104
157
126
135
150
136
108
93
117
153
95
90
87
49
83
119
89
80
127
145
59
95
110
149
153
80
49
132
83
148
151
81
138
92
103
102
97
108
108
97
103
102
54
146
82
122
114
73
119
95
160
71
129
49
104
107
104
79
98
139
95
87
145
97
154
106
123
118
217
135
105
103
102
99
95
160
112
116
122
54
59
108
163
140
140
117
120
54
127
97
132
167
149
82
98
102
143
161
109
98
143
128
115
110
133
76
152
100
98
92
91
104
175
96
74
95
108
115
95
167
66
96
109
140
123
125
134
84
108
122
96
131
106
160
140
61
137
133
111
134
102
74
115
140
118
165
129
113
116
163
120
147
145
144
158
54
129
113
89
114
134
145
125
118
144
54
94
123
138
148
86
59
118
123
54
176
54
120
87
150
126
102
143
148
103
77
111
167
105
182
118
141
95
59
113
90
95
142
146
113
115
84
82
113
94
156
107
150
86
143
140
114
136
91
108
83
110
108
126
124
54
102
123
125
85
171
128
191
108
90
98
91
182
156
97
126
118
125
170
98
88
147
128
97
108
59
118
124
141
110
132
100
108
136
96
112
101
120
131
70
87
74
144
69
80
105
120
87
106
171
109
102
103
90
130
104
95
78
126
148
107
141
108
200
131
87
110
131
145
107
123
126
115
81
124
115
93
113
193
95
107
137
67
122
98
100
118
82
155
78
81
91
138
102
100
82
126
80
200
108
106
112
102
108
113
102
102
121
101
95
102
96
95
126
160
78
120
106
129
127
59
159
85
123
140
102
110
102
133
130
168
93
99
143
78
95
82
101
129
132
91
49
133
121
133
54
125
142
111
115
54
74
122
100
69
144
131
113
140
100
126
119
103
146
54
94
122
117
103
158
111
125
96
177
141
113
103
85
191
130
69
103
151
121
129
118
135
117
108
104
122
133
108
105
165
131
127
81
117
158
80
98
148
107
144
127
135
106
90
147
93
117
117
167
145
116
93
97
90
148
123
54
153
113
111
74
129
107
148
108
105
95
141
158
95
105
116
70
95
125
177
102
78
102
117
79
123
123
126
129
128
95
126
95
118
108
112
82
147
85
102
95
69
108
179
135
139
121
82
132
128
172
143
143
106
105
139
108
134
170
121
132
124
108
77
131
83
120
106
110
95
125
113
93
90
88
188
87
118
135
91
125
154
178
119
90
107
124
104
125
49
78
133
95
113
143
100
131
92
110
109
129
151
185
77
136
125
116
69
140
72
77
125
54
91
97
145
125
138
54
137
87
129
143
113
83
135
153
160
103
137
119
77
61
125
98
74
111
89
92
140
119
74
81
109
110
130
112
151
49
92
100
98
67
153
85
108
113
112
81
105
100
89
113
152
158
112
120
111
95
99
95
131
144
65
97
110
145
128
108
109
49
180
112
150
151
128
108
143
132
141
59
78
125
95
142
145
95
54
97
115
121
99
143
116
116
74
142
139
82
161
128
150
127
97
103
114
83
82
95
140
158
111
76
99
109
156
185
74
106
125
90
107
101
135
148
120
125
185
153
98
111
133
105
98
67
106
94
108
124
162
127
93
113
96
146
99
178
129
145
105
130
143
128
100
180
54
94
87
118
93
103
167
120
135
104
133
90
69
92
125
101
87
131
61
102
104
90
166
124
59
88
77
125
113
123
89
131
87
140
128
82
120
155
110
54
98
116
167
82
95
148
122
106
133
89
113
125
164
108
162
112
108
96
95
111
148
128
145
121
116
110
144
139
149
102
81
107
82
96
227
80
59
67
141
108
110
134
122
94
82
90
105
95
102
92
121
160
93
87
142
128
136
150
82
123
144
142
122
96
127
87
127
129
54
97
138
76
78
146
143
166
78
116
121
108
148
74
118
165
106
143
142
101
94
158
100
107
114
94
131
80
99
128
114
76
101
153
115
99
74
81
100
115
108
113
118
145
143
54
88
106
74
110
153
124
120
54
59
96
126
85
54
108
106
130
177
128
126
135
168
111
141
122
148
75
122
87
128
74
160
143
95
131
111
190
143
128
135
144
107
78
140
135
104
146
95
125
199
106
150
98
147
114
124
144
127
108
105
98
136
147
125
151
132
77
122
119
134
110
95
85
77
109
102
148
153
144
82
127
125
76
172
77
111
109
91
96
87
108
119
115
78
149
101
137
102
110
75
105
161
96
74
118
87
90
106
105
152
83
91
143
92
89
128
110
129
131
113
177
124
100
149
102
98
74
152
77
155
158
97
186
151
143
177
88
105
67
86
95
114
113
86
100
100
133
101
129
109
97
98
76
102
81
113
95
148
110
148
79
109
54
147
98
150
139
80
81
102
78
146
151
120
100
133
81
94
102
115
126
174
92
145
124
134
109
124
119
132
72
125
165
95
123
100
115
133
142
90
115
87
59
76
129
80
158
102
95
91
158
148
86
110
149
155
131
109
133
85
108
95
108
153
128
54
54
95
89
92
95
98
148
127
103
105
170
115
173
112
110
146
92
105
139
109
94
127
118
101
128
140
102
74
127
186
102
67
116
98
95
122
135
124
98
116
128
82
98
98
148
128
128
132
177
112
90
99
125
145
90
153
133
94
105
113
135
165
180
126
105
174
95
106
106
108
77
90
94
91
132
129
140
130
126
107
80
118
118
117
90
133
76
112
83
120
105
54
102
93
120
79
49
117
110
101
190
96
85
77
132
80
148
146
108
98
95
49
92
103
108
96
76
131
175
87
143
103
165
105
153
130
131
137
146
150
79
108
131
162
120
103
112
113
77
125
85
54
49
108
148
74
115
102
80
126
103
121
127
110
103
81
131
95
115
92
88
103
110
109
54
54
97
111
145
90
127
97
98
103
158
67
88
127
103
69
124
111
141
145
127
107
148
114
181
135
129
124
81
164
137
97
87
117
54
102
146
188
129
95
134
103
141
139
105
161
145
103
97
194
128
172
112
131
135
149
153
105
69
103
108
81
95
177
129
172
105
98
91
151
54
207
108
95
106
143
117
131
139
119
108
89
139
102
94
123
191
159
123
65
168
124
81
104
83
170
99
116
125
102
135
145
88
59
129
54
106
147
89
103
144
127
42
108
80
74
87
100
103
102
113
102
154
95
83
113
153
93
83
133
92
129
143
101
88
133
108
97
179
100
128
104
133
102
119
109
78
115
127
82
105
110
128
113
101
177
97
146
132
118
105
99
96
104
108
132
124
88
101
69
103
100
161
95
112
135
116
122
74
95
173
102
148
112
134
104
123
54
162
140
125
119
125
133
121
101
136
82
113
129
87
101
117
103
59
161
90
54
177
148
98
135
130
125
113
109
120
151
99
137
173
143
145
148
99
136
140
140
125
108
145
76
108
129
124
61
113
153
87
149
148
96
135
98
103
87
85
116
99
115
105
133
159
98
99
85
57
105
163
139
148
102
140
113
141
106
111
108
114
128
116
122
135
144
72
81
144
97
79
114
113
61
125
148
81
144
78
92
54
168
156
95
137
134
116
108
106
160
106
91
113
102
78
106
112
120
170
150
80
72
198
156
134
76
110
86
113
135
67
78
103
76
74
128
127
133
112
54
108
81
118
110
98
87
79
128
103
81
103
137
59
131
139
102
161
103
111
144
84
96
91
172
82
154
95
85
118
134
151
113
91
98
102
154
120
93
74
76
119
76
129
140
61
81
135
132
157
102
161
160
121
144
159
97
69
136
74
128
89
75
90
157
97
84
122
112
134
111
90
122
108
162
153
128
102
54
103
147
54
67
134
113
54
107
116
45
97
168
121
127
111
142
107
101
103
109
153
125
146
115
130
103
125
128
54
102
103
150
92
125
89
73
154
116
91
107
126
89
77
114
101
105
82
109
107
132
123
108
101
207
99
131
138
103
122
54
102
125
109
106
125
113
140
78
125
102
151
110
116
129
134
168
95
156
107
178
54
145
148
160
120
99
108
160
105
102
115
54
117
125
177
98
90
103
153
128
107
80
147
142
83
59
149
97
178
94
102
195
54
133
147
131
147
134
120
98
135
133
108
102
132
139
103
120
129
169
102
98
147
127
93
160
113
67
138
117
76
102
49
61
83
124
148
157
116
98
112
67
102
131
77
137
108
114
160
93
121
120
69
177
125
102
118
140
108
119
97
100
83
103
117
108
148
72
138
100
103
137
124
110
105
143
102
151
87
125
106
99
105
113
98
102
67
132
93
102
110
73
82
83
231
77
141
143
69
54
167
104
118
73
107
76
107
142
121
143
128
127
81
95
109
77
94
138
120
54
123
119
118
97
113
90
76
112
83
161
200
90
45
122
138
133
139
132
87
86
135
117
127
81
172
127
95
95
91
113
132
149
113
145
122
77
88
178
106
76
177
114
125
102
78
109
87
129
102
144
92
95
134
165
77
117
160
54
85
98
126
146
87
170
54
165
82
98
98
67
139
92
144
104
152
49
120
131
84
79
143
103
69
129
90
83
90
101
138
73
134
93
139
133
141
69
100
133
99
165
116
132
157
129
119
126
54
54
90
107
97
96
131
113
100
147
101
57
142
141
123
87
151
131
85
124
125
101
161
105
81
115
54
114
130
49
82
168
137
122
146
93
157
97
95
108
83
157
82
106
202
158
74
100
125
54
95
80
80
145
92
143
149
115
106
106
95
83
74
61
71
139
213
84
103
118
134
167
104
127
148
235
104
130
49
74
120
81
134
94
139
74
139
107
98
113
90
90
157
138
94
93
87
118
115
124
80
74
103
112
166
146
102
186
177
103
160
147
127
120
104
74
108
123
137
122
160
78
107
112
137
149
121
95
87
95
117
126
177
109
111
148
114
100
204
155
131
95
102
74
182
54
105
54
104
80
104
148
127
113
108
108
115
125
125
112
96
126
80
135
108
154
155
115
115
95
146
112
145
100
85
120
81
151
105
87
144
143
93
177
127
169
122
120
85
74
99
122
122
91
127
69
102
114
199
56
143
111
146
108
77
80
87
67
132
104
150
77
119
108
83
88
106
81
122
102
123
95
95
131
104
109
122
152
148
160
82
131
83
116
54
167
106
104
102
129
149
113
95
95
74
154
91
77
125
129
126
119
124
63
143
106
103
85
90
82
98
67
74
129
143
179
143
101
150
104
116
147
177
135
108
78
118
123
49
103
104
67
131
101
127
102
98
98
114
127
81
146
106
108
106
108
125
186
95
108
127
120
103
127
123
89
95
166
54
94
54
129
59
79
125
54
116
82
74
108
103
124
141
54
108
108
152
91
119
112
106
153
111
102
141
80
59
118
122
156
98
108
93
102
155
95
191
54
80
49
80
133
76
82
126
81
122
138
77
131
145
87
112
129
116
97
54
110
149
121
67
110
161
105
170
131
68
144
98
102
140
159
98
124
98
124
108
86
139
130
101
49
89
100
90
107
95
111
106
103
154
90
98
108
113
54
83
54
96
100
140
177
158
89
103
97
133
78
99
145
169
133
112
49
101
112
112
107
98
125
83
111
130
120
101
125
131
122
49
146
147
132
125
132
125
177
209
160
125
144
92
151
82
131
137
87
99
102
105
99
112
158
81
148
94
110
76
118
133
143
102
81
122
123
98
54
142
110
102
118
114
118
149
108
148
177
85
107
125
122
129
78
128
126
137
101
155
173
54
84
69
154
186
104
94
93
97
102
141
127
108
101
116
118
82
128
49
151
146
142
105
103
101
170
142
81
107
125
155
98
104
102
128
93
136
99
68
131
133
81
140
128
81
80
104
142
101
162
49
180
110
131
148
116
131
114
89
107
103
128
147
96
87
81
140
113
103
112
83
156
141
76
169
103
130
108
171
106
93
49
144
161
113
78
122
87
103
100
127
103
91
61
134
54
127
89
115
54
157
101
81
95
122
100
103
82
109
54
105
186
146
97
92
133
131
92
101
114
172
124
135
100
108
130
116
151
110
148
193
114
105
93
163
131
68
95
108
49
96
87
96
125
155
59
119
103
205
59
133
118
143
67
110
128
142
92
103
162
95
143
139
149
144
95
80
102
108
143
162
115
121
104
140
90
95
163
151
84
115
59
138
49
95
131
130
147
107
115
96
128
148
95
113
114
106
125
74
132
68
148
120
108
135
162
115
61
172
159
98
124
141
95
119
54
97
139
135
173
139
117
222
92
137
108
117
81
144
100
95
113
145
72
159
129
84
102
115
85
107
106
133
94
108
86
82
76
133
139
169
169
95
61
94
108
87
127
129
113
137
112
114
124
138
49
54
95
113
153
115
144
146
102
158
118
84
103
79
137
94
67
54
107
148
115
138
83
125
124
139
110
54
84
147
86
96
94
142
110
133
109
116
108
98
173
87
168
196
96
115
105
171
108
118
119
102
108
102
83
127
135
126
143
113
150
89
139
90
141
78
104
100
145
120
78
133
134
122
97
108
130
107
102
173
102
148
54
93
117
114
139
98
160
153
122
89
115
142
119
119
49
161
125
91
139
83
128
105
95
115
101
65
92
123
91
74
108
94
98
81
94
103
111
73
113
122
114
107
143
87
129
87
95
170
128
198
82
54
54
134
128
98
65
126
121
81
125
158
108
150
149
98
130
115
147
111
106
158
105
97
204
128
105
115
160
139
115
136
132
155
90
95
115
81
133
81
130
82
81
161
123
54
180
98
115
107
102
117
156
86
128
76
168
111
98
93
96
54
81
128
96
127
95
80
96
113
103
149
108
138
114
94
74
154
132
121
151
114
74
79
138
130
111
184
102
133
83
123
119
105
139
96
91
148
147
102
120
108
140
134
128
122
113
87
78
123
99
116
127
102
158
117
90
125
119
165
106
131
126
113
95
102
95
102
133
93
133
102
120
139
107
102
95
54
129
83
74
139
86
168
108
149
116
154
121
112
90
102
140
135
54
45
133
96
100
131
54
89
95
90
95
151
177
118
144
162
131
105
54
173
54
89
155
97
90
74
108
102
130
102
142
54
146
89
130
129
142
116
97
124
135
49
118
171
96
114
80
83
155
122
100
144
129
193
112
104
96
68
116
81
127
112
98
95
74
102
106
83
95
125
98
97
136
126
93
95
102
95
95
134
77
77
120
184
96
112
96
127
109
190
135
98
111
122
153
134
131
97
103
135
84
54
156
99
149
121
123
91
69
78
107
106
147
90
138
121
160
81
119
112
130
98
153
177
132
194
124
54
139
116
109
74
54
139
143
97
109
82
59
116
125
54
87
173
93
114
96
85
77
113
111
151
116
110
54
92
101
133
159
172
103
96
81
146
147
95
54
54
109
184
54
54
126
94
156
80
54
105
108
99
93
151
85
95
100
78
90
132
115
115
101
161
140
95
132
163
123
82
114
128
178
87
163
102
105
104
128
143
156
164
133
109
125
87
121
148
54
105
103
103
92
101
105
129
76
95
162
125
94
85
133
102
133
73
108
165
95
129
111
126
102
127
108
157
105
147
87
128
146
134
90
126
87
149
103
132
147
130
83
59
156
95
98
142
112
103
124
131
96
117
113
129
117
123
107
95
101
194
120
158
97
98
151
131
126
101
120
129
125
171
115
124
132
145
108
54
68
139
83
162
85
156
131
102
108
98
146
182
59
132
85
78
118
143
123
127
59
118
113
145
112
95
108
148
85
98
69
144
162
129
97
126
131
90
83
145
110
110
59
81
108
90
114
108
126
108
102
95
108
49
139
124
76
83
68
125
132
154
171
97
108
199
161
94
129
150
136
110
106
108
128
54
161
92
108
141
54
155
120
144
105
99
126
61
82
95
168
118
103
101
108
132
99
104
102
108
143
114
102
122
122
117
140
114
105
138
87
125
101
87
192
87
90
125
160
107
54
95
127
68
102
108
69
102
108
138
104
84
54
76
63
139
121
102
100
94
89
143
108
119
123
82
157
126
59
81
76
139
118
74
115
168
134
54
128
85
91
147
133
152
153
86
135
85
104
80
105
99
108
148
114
143
131
81
143
67
128
135
49
93
112
95
123
95
135
91
80
117
179
128
107
124
76
54
113
49
148
97
132
129
101
105
144
91
102
135
87
102
115
108
84
49
98
99
137
105
98
59
80
104
141
107
165
105
108
61
102
95
90
91
143
102
100
81
172
54
103
98
83
54
156
101
118
152
151
93
98
69
54
144
167
116
110
120
142
108
74
200
85
139
102
95
83
117
113
124
133
138
112
87
116
95
95
78
54
146
67
97
95
189
155
101
54
144
91
95
143
101
102
54
126
90
133
120
79
116
146
133
77
156
109
109
88
98
102
95
113
69
125
98
88
138
160
139
127
104
67
143
90
74
93
104
69
156
177
93
74
107
103
128
54
128
110
93
108
94
171
127
121
90
150
162
132
184
98
103
128
82
120
59
100
106
108
69
82
76
120
137
126
121
81
95
158
69
133
74
138
54
90
102
128
59
131
59
109
117
123
90
95
114
177
142
139
94
61
59
123
135
150
42
104
103
67
131
113
128
83
147
135
131
152
134
106
130
77
108
74
78
102
74
90
89
115
153
141
103
152
113
105
157
82
136
158
102
123
151
84
90
80
87
74
95
127
97
95
107
146
81
102
83
108
87
125
108
95
107
95
111
120
106
98
134
97
125
98
160
177
82
156
54
145
105
90
70
87
133
54
129
118
95
87
65
97
91
98
97
138
98
102
125
158
106
156
122
87
170
137
102
168
170
180
126
125
146
136
141
106
117
49
107
82
148
75
77
102
87
124
114
114
149
95
160
133
137
154
94
134
103
102
106
123
122
93
159
98
106
105
125
49
135
95
76
82
138
96
116
113
127
87
127
139
108
122
108
163
126
158
77
132
119
150
170
90
113
93
102
162
93
87
131
59
137
95
126
78
161
99
133
148
123
111
118
93
97
84
121
117
159
59
125
140
78
81
93
104
132
62
112
188
118
101
95
124
106
83
124
69
81
136
133
139
102
105
61
105
127
112
102
93
196
78
95
90
151
102
127
132
54
120
148
166
96
154
81
82
148
94
146
124
110
189
108
90
108
101
153
179
85
100
87
97
90
86
96
144
98
143
126
68
135
113
95
116
131
168
135
138
120
98
96
128
110
105
91
135
115
110
157
174
111
89
85
85
81
105
63
98
113
87
106
108
95
140
49
90
106
102
136
126
118
107
84
120
80
87
153
133
122
148
165
132
104
113
69
83
101
147
148
147
159
105
109
80
139
99
115
117
107
117
131
113
131
54
140
160
113
158
82
144
130
128
129
99
130
125
155
140
124
99
144
102
148
143
142
102
148
122
135
95
113
105
137
82
106
99
144
103
108
54
102
114
111
139
135
104
83
115
128
144
150
102
111
110
149
94
97
91
111
104
74
130
67
85
115
83
82
82
140
95
96
105
95
147
131
80
95
93
125
158
78
110
131
107
82
105
120
120
177
108
104
138
112
107
126
142
100
103
103
102
88
115
128
116
156
120
99
150
111
117
120
121
78
108
143
89
54
125
180
137
168
131
54
95
111
70
127
135
125
121
98
54
101
110
122
118
124
128
124
135
54
132
134
160
109
107
61
82
102
87
197
142
93
103
180
140
142
86
162
98
122
120
96
116
77
82
95
120
114
120
137
120
54
161
95
104
84
105
93
105
82
88
151
74
113
73
100
108
156
119
125
98
148
125
95
66
67
118
125
148
107
90
93
127
114
167
105
117
102
156
127
93
128
135
81
126
59
113
149
119
94
96
124
157
96
59
153
105
106
76
78
125
102
74
151
95
131
136
144
168
108
157
108
115
96
109
138
113
168
79
85
109
126
108
99
191
93
85
125
158
108
121
108
127
74
54
97
94
106
102
131
124
135
97
143
161
108
139
107
54
69
54
115
115
122
96
163
150
76
78
116
107
133
95
104
133
127
151
151
108
103
134
61
144
115
108
124
121
95
127
105
145
123
67
78
109
139
90
110
99
138
67
144
103
139
87
125
110
143
96
104
98
109
150
104
128
136
105
133
95
105
54
151
89
54
106
98
103
90
135
119
158
148
137
113
107
96
79
81
81
103
102
129
79
92
110
137
137
110
82
103
97
146
79
146
152
159
112
91
104
135
178
157
129
149
61
91
93
77
54
109
162
115
74
181
96
97
125
85
87
120
167
74
120
135
132
140
95
138
133
155
145
95
136
108
91
128
153
128
112
101
104
102
142
130
108
102
134
91
133
107
123
49
90
157
111
76
112
106
126
62
87
107
145
97
105
148
105
175
121
161
59
108
106
131
126
91
147
95
153
103
93
102
123
106
150
54
95
133
107
98
111
134
144
141
146
85
89
110
154
71
116
132
103
98
136
90
112
125
120
54
131
163
98
109
110
116
96
101
168
146
117
118
102
54
115
81
122
110
107
113
135
139
96
102
107
118
93
112
127
102
111
108
81
96
129
156
112
103
114
78
68
148
95
125
54
120
164
144
122
172
89
49
147
154
120
93
98
119
108
167
143
96
103
83
93
59
169
113
87
110
120
127
151
98
97
105
149
128
67
137
90
106
113
114
143
138
99
54
82
108
95
164
148
125
77
115
104
177
113
112
108
119
98
145
161
125
138
81
81
125
116
78
84
96
165
133
54
126
108
99
87
143
166
115
103
156
124
131
98
113
144
125
110
150
54
105
103
127
79
177
85
90
78
75
106
49
89
137
96
82
91
81
124
111
114
129
84
105
143
116
110
68
117
128
108
82
125
194
139
107
208
103
88
79
116
128
97
123
160
88
120
161
119
117
150
140
93
92
145
78
74
106
144
125
108
164
108
97
75
105
125
143
116
129
199
157
54
156
107
177
82
158
92
124
122
143
177
139
113
142
123
98
82
81
75
130
94
112
141
74
122
144
108
81
141
149
153
100
100
99
118
102
54
54
109
49
95
76
120
108
125
115
96
105
105
106
140
116
86
91
163
125
110
61
102
87
123
102
97
129
81
108
172
54
90
173
82
76
59
85
145
108
197
114
98
178
139
79
81
145
67
49
108
125
106
129
61
98
135
123
155
137
99
70
77
80
113
134
104
107
145
95
82
139
102
177
148
102
96
87
130
104
131
102
82
108
108
120
135
125
124
140
131
87
106
121
54
138
59
82
156
149
116
103
199
152
165
116
112
117
49
104
59
144
74
126
140
54
106
128
102
92
98
90
171
77
132
141
113
103
125
167
165
126
101
116
87
158
119
98
158
148
160
131
134
102
93
133
54
149
107
59
178
111
115
128
107
91
118
80
102
54
113
118
105
128
135
158
115
109
141
158
148
98
99
138
104
102
82
76
101
94
122
89
97
143
108
164
146
108
86
80
87
118
103
104
54
143
173
131
139
100
156
76
103
109
106
95
87
129
150
97
93
74
102
151
133
91
96
163
136
148
149
105
114
109
153
99
95
83
114
133
61
133
136
135
145
61
114
119
73
169
93
137
98
127
74
168
167
102
135
90
77
109
140
95
98
123
163
104
119
130
156
114
113
76
161
128
155
99
158
98
100
112
138
125
125
147
117
105
95
115
98
127
103
87
97
159
108
91
107
95
93
131
131
76
156
145
133
102
54
81
128
123
87
103
104
94
135
125
142
102
82
61
144
106
125
108
131
86
95
133
89
105
128
95
110
102
115
103
91
116
132
148
140
99
66
49
181
104
133
118
81
159
81
171
129
136
59
149
136
125
74
104
133
108
117
98
111
121
73
92
112
90
102
82
100
84
102
154
86
134
79
73
82
120
122
102
177
90
98
74
75
166
110
133
98
134
127
128
113
117
106
118
117
131
158
147
109
99
96
108
119
102
103
103
129
124
109
105
77
115
110
156
202
159
140
110
91
123
135
54
158
114
150
81
90
97
103
67
105
144
112
114
123
67
104
118
61
173
107
156
95
123
130
80
158
144
103
81
108
155
137
108
82
119
135
114
153
103
100
90
77
125
105
165
140
59
119
142
144
54
54
103
62
96
105
111
146
99
79
114
141
119
105
102
114
141
129
95
90
116
99
116
124
112
144
148
107
133
113
80
49
136
156
132
105
124
126
74
133
95
116
114
122
105
131
143
131
59
54
93
92
96
113
76
106
85
112
84
94
120
54
137
119
145
143
107
97
127
98
153
98
179
99
102
68
95
130
147
159
106
107
104
49
95
57
91
125
161
90
88
142
134
54
98
68
98
117
133
84
105
119
139
59
133
131
127
128
126
150
125
78
119
81
59
93
124
65
87
134
163
120
54
133
125
105
94
132
169
72
154
84
117
105
96
54
100
101
82
83
126
121
90
123
113
139
137
113
133
129
89
111
107
139
67
154
95
103
160
131
123
93
131
74
135
161
111
95
100
95
120
103
49
103
88
78
87
93
139
103
107
108
82
112
123
83
98
115
108
145
107
111
94
77
128
148
143
109
100
135
122
135
95
108
135
81
91
95
78
132
74
136
102
102
121
115
124
132
133
49
81
102
102
126
123
114
123
101
89
102
90
110
132
108
168
129
98
95
102
91
152
113
129
102
125
95
54
108
113
81
144
74
111
140
81
141
59
80
127
74
123
90
81
107
114
98
82
119
74
135
108
168
150
116
113
120
109
110
130
102
135
102
144
172
185
73
73
113
122
119
135
158
116
128
81
108
140
81
84
143
69
127
54
127
90
143
103
99
128
177
122
141
68
109
111
74
94
146
74
101
95
85
136
102
74
76
102
113
123
119
141
150
69
90
95
129
138
102
74
147
102
80
125
95
103
128
172
98
80
118
128
107
128
126
135
118
170
161
101
54
49
190
103
188
143
112
145
99
140
151
108
54
147
149
87
87
117
77
124
123
143
167
124
95
79
141
74
143
123
85
128
96
99
115
111
133
98
105
145
79
59
142
159
152
103
110
115
145
59
69
102
49
161
79
119
140
67
124
109
108
146
110
108
49
103
102
116
108
127
113
87
54
77
167
98
143
54
80
161
102
154
115
105
82
77
89
172
112
98
163
105
102
87
81
102
153
49
161
93
132
99
139
67
93
142
120
76
106
185
92
160
81
145
108
131
146
102
177
178
103
125
109
95
98
158
91
125
112
138
82
161
119
91
172
127
114
127
108
69
95
120
78
59
102
118
112
211
80
139
74
143
119
113
59
116
82
100
78
127
145
148
115
141
81
96
144
135
110
90
95
87
110
112
158
111
199
118
90
68
147
119
132
128
92
98
129
76
61
111
93
92
108
144
95
98
89
139
121
95
93
128
129
121
100
74
101
110
103
112
114
151
132
142
113
186
117
116
108
110
83
61
167
101
128
158
93
148
104
85
113
108
152
102
103
72
69
108
124
125
102
154
82
81
80
108
85
137
114
149
146
159
75
160
109
150
165
103
167
126
125
96
116
103
171
76
91
87
158
135
157
144
168
105
84
100
54
97
143
135
83
139
69
145
103
81
101
106
126
95
130
81
173
109
105
125
82
122
97
128
74
127
129
67
89
158
104
98
105
82
100
159
124
123
108
89
180
84
116
80
97
98
103
95
87
118
85
139
74
97
158
119
104
135
138
125
85
167
197
82
137
121
94
90
108
49
67
166
156
125
133
123
83
59
110
95
129
106
130
104
80
146
98
108
134
108
132
81
92
103
81
74
125
87
102
114
87
76
132
93
81
132
74
113
85
95
96
95
119
75
138
131
106
68
80
127
69
111
123
88
102
135
128
87
154
128
81
81
95
126
128
95
153
80
128
108
99
144
143
96
144
111
107
174
98
97
82
110
161
132
144
98
153
98
90
108
106
148
141
77
145
90
67
104
191
76
103
54
165
102
104
102
42
147
115
95
92
104
123
102
158
158
121
67
109
145
147
140
90
128
74
81
136
98
122
113
144
74
102
140
143
98
86
80
93
138
137
112
135
85
177
102
91
105
74
54
88
54
105
103
81
95
146
106
128
59
85
139
140
144
111
85
98
126
167
90
133
91
157
150
106
95
105
131
133
144
109
79
137
131
103
107
106
113
178
158
108
105
109
108
138
112
154
98
120
102
113
90
123
116
155
98
156
155
165
112
83
101
128
117
95
133
138
110
149
87
178
102
114
95
97
108
148
131
104
127
113
122
88
171
93
113
116
106
112
111
122
99
92
101
108
98
108
154
76
108
128
82
93
149
78
109
81
130
90
173
135
133
150
104
120
102
102
173
119
115
128
115
88
133
131
148
81
159
94
87
132
54
122
112
106
95
120
148
141
105
140
116
143
103
129
119
135
135
77
85
115
105
93
69
125
116
122
133
81
184
93
114
110
77
91
90
81
59
90
94
102
129
91
83
128
90
105
112
148
155
89
148
133
100
157
97
59
127
108
103
135
103
133
102
128
90
91
77
148
180
97
107
137
81
139
98
124
107
85
156
171
92
133
108
108
135
130
144
83
77
142
157
122
149
143
128
142
80
102
108
155
82
115
127
113
95
82
96
132
61
145
147
69
72
116
105
164
126
98
137
98
110
118
166
140
127
130
146
163
90
105
118
106
92
94
171
120
142
87
90
153
157
190
78
123
89
116
180
93
144
144
103
69
124
102
103
93
103
87
158
142
158
112
101
74
59
182
123
81
93
112
120
128
96
161
112
101
106
89
132
138
98
140
148
97
122
134
115
109
102
74
184
107
89
143
116
93
88
91
139
113
73
74
122
125
138
98
118
173
80
116
54
74
119
125
101
104
125
54
80
138
119
96
114
124
116
73
108
87
153
95
95
145
104
89
126
67
100
87
114
105
112
95
118
137
90
102
87
95
122
102
74
116
107
54
85
108
148
115
100
95
138
98
102
98
114
124
141
103
104
105
175
83
73
115
59
112
118
153
90
104
102
142
114
158
102
73
92
84
135
113
59
105
114
106
123
106
108
97
148
104
129
92
91
93
93
49
93
116
114
108
102
141
138
155
141
125
79
112
109
95
90
103
119
92
145
78
126
110
83
141
148
137
159
76
93
94
125
109
116
178
169
81
120
135
117
151
109
106
108
93
147
105
76
94
115
110
106
121
115
87
101
157
182
125
125
148
95
116
118
74
54
144
168
117
102
78
117
138
76
134
92
121
116
77
120
83
188
97
152
81
135
119
105
172
128
132
98
158
117
93
54
131
122
117
96
124
59
144
118
97
54
127
117
81
78
194
97
114
135
71
123
95
128
123
109
105
122
145
84
97
98
93
95
77
74
94
119
111
125
133
133
79
120
95
115
133
134
141
144
118
133
128
112
117
115
80
49
127
120
97
139
151
110
114
119
165
131
95
119
76
142
97
115
91
104
108
138
151
134
130
128
127
85
121
161
81
77
128
133
100
134
134
134
138
54
111
197
138
122
182
108
145
110
61
149
128
150
96
95
93
120
108
83
145
141
125
137
137
169
121
128
106
108
102
156
54
103
131
104
141
102
193
102
157
90
121
137
74
77
116
108
104
112
102
83
84
54
98
87
146
74
83
122
108
126
90
54
76
103
97
85
85
133
107
109
125
100
150
111
180
164
130
170
122
182
149
135
132
133
127
77
135
150
85
151
123
101
179
125
82
96
155
125
102
154
134
67
158
133
145
90
95
132
127
100
126
117
116
177
126
130
103
76
124
108
146
133
150
90
108
97
174
128
105
98
144
125
147
103
78
124
54
95
113
116
54
147
74
107
178
148
115
109
95
160
97
101
98
131
126
145
121
82
143
123
126
105
140
169
138
54
109
95
79
69
102
106
115
135
131
59
102
162
143
150
95
61
145
167
105
49
145
114
132
108
139
106
98
135
88
114
91
59
81
91
117
88
79
124
49
87
141
134
148
102
115
132
142
145
125
100
97
98
108
144
130
95
86
120
121
148
69
167
135
135
108
172
105
80
146
49
151
141
128
182
124
109
86
116
115
83
98
120
123
119
103
101
133
116
112
125
102
102
131
84
132
139
89
88
164
149
103
102
113
114
82
87
83
128
101
149
93
106
185
131
95
158
115
140
126
83
122
54
68
130
155
163
102
120
97
135
71
132
95
148
165
113
105
114
93
94
154
87
186
102
78
99
108
104
135
76
59
103
128
86
113
123
128
102
101
131
54
118
124
117
105
142
78
54
144
95
112
153
93
143
112
76
96
76
103
120
87
102
95
150
114
84
101
70
126
163
117
73
139
118
163
149
123
141
102
54
103
66
94
107
105
112
49
96
97
169
113
81
113
177
95
154
73
102
153
120
129
159
128
74
89
155
143
144
99
66
98
119
156
103
90
95
95
105
92
85
122
177
119
116
121
128
81
89
101
74
155
100
134
102
136
97
144
105
151
134
105
149
116
114
177
156
113
134
139
103
83
99
96
106
117
111
134
93
97
101
100
103
140
124
107
146
131
99
125
107
102
143
179
124
87
74
82
99
163
106
62
125
105
54
119
91
81
132
119
49
186
77
151
125
108
131
138
129
98
131
103
140
80
100
54
78
108
117
111
150
158
99
128
95
167
77
141
77
92
91
102
101
116
133
80
88
118
140
97
112
110
130
106
90
102
95
87
93
69
97
104
116
103
132
133
101
117
90
90
97
74
93
165
102
153
95
82
172
125
144
125
95
103
74
95
127
165
126
132
125
92
96
138
100
90
97
130
133
174
97
92
137
49
144
107
79
81
81
158
101
123
190
167
166
109
103
98
74
69
59
54
54
154
87
91
108
137
122
74
143
108
140
112
108
78
81
92
99
103
150
148
160
128
144
130
125
99
78
111
114
54
83
120
140
148
118
103
148
129
107
139
116
113
103
145
107
142
54
125
74
121
108
103
172
158
160
54
81
92
131
116
135
147
97
105
139
102
103
102
90
49
74
103
140
129
103
113
115
149
102
126
180
102
120
161
120
172
96
135
67
121
152
90
112
128
89
148
76
88
110
95
49
102
140
127
103
129
81
135
119
120
125
102
81
149
118
138
96
125
103
74
102
131
159
114
78
75
122
116
102
102
111
128
91
84
123
74
106
102
129
84
133
92
93
81
116
107
145
90
99
125
126
118
101
153
143
54
146
152
98
124
118
123
115
123
109
194
158
82
105
61
87
107
121
119
118
120
95
100
122
79
102
133
49
192
141
141
81
49
120
108
103
159
90
102
109
147
78
101
83
82
180
155
127
54
95
54
102
98
107
187
190
82
142
119
54
107
108
143
98
129
142
121
105
54
108
77
93
134
116
102
144
76
85
177
105
95
160
156
152
135
177
92
118
91
74
144
102
130
99
150
163
95
96
158
131
129
111
87
76
59
125
143
128
122
67
93
102
101
127
108
90
177
159
141
87
136
149
149
87
135
92
97
141
141
104
133
193
70
54
140
107
85
169
151
118
81
113
114
108
178
113
108
110
182
169
125
78
83
85
101
49
123
102
138
74
131
106
122
135
143
99
157
98
98
114
155
173
98
168
147
105
152
113
74
85
101
139
88
87
104
49
166
114
54
90
146
135
129
97
94
95
83
137
107
131
164
103
67
77
102
132
123
49
102
177
144
49
146
143
152
102
179
54
49
116
112
127
122
97
105
165
98
125
108
129
122
113
113
81
103
124
177
150
95
116
134
188
90
82
84
61
87
135
102
54
108
81
135
112
145
105
98
89
97
106
83
134
151
81
142
147
125
77
117
163
76
143
99
97
117
122
126
137
103
74
99
113
103
83
140
96
87
98
123
77
81
118
177
112
102
157
69
88
172
108
91
87
103
170
107
69
88
157
105
122
126
97
119
133
119
120
120
67
136
138
96
106
81
144
163
77
194
135
54
119
102
139
115
98
103
120
66
97
119
128
112
107
165
123
86
110
107
93
115
81
65
90
103
141
83
93
90
111
69
131
180
120
101
139
146
80
72
121
120
69
133
54
125
158
124
101
137
155
145
108
187
95
113
112
105
102
129
161
166
168
86
101
88
130
90
133
74
107
177
104
128
107
150
108
49
126
118
74
143
146
90
116
132
133
186
128
164
80
143
90
139
114
106
97
143
134
54
135
146
102
94
129
148
81
136
120
108
90
61
140
87
104
81
91
96
82
114
102
87
93
107
113
145
101
107
114
67
59
137
102
95
127
131
81
148
133
104
112
128
102
129
93
82
98
102
133
125
120
116
90
86
162
120
76
110
168
136
131
144
144
108
117
93
85
150
59
102
99
118
102
158
113
98
156
100
101
139
120
137
107
89
118
93
67
98
102
119
149
109
138
167
111
112
98
124
138
112
74
59
97
119
74
103
125
139
148
83
54
75
102
102
101
100
108
121
78
90
148
108
163
95
95
225
164
68
96
113
106
110
99
92
155
68
132
98
90
103
134
77
111
95
95
120
149
180
112
207
105
119
112
81
148
89
141
94
148
92
149
97
140
113
141
103
106
102
93
120
67
113
139
98
153
112
87
103
85
54
113
145
68
103
121
94
168
111
87
122
132
54
162
122
170
81
105
102
88
109
95
120
100
102
97
112
106
140
106
110
83
118
155
87
100
74
83
101
81
80
124
144
126
120
122
127
125
95
122
98
148
84
115
138
59
149
93
192
125
127
107
177
133
107
102
105
77
156
113
137
89
95
77
103
94
102
149
106
98
54
94
98
98
145
133
145
166
54
106
105
149
120
168
129
61
133
130
65
121
128
130
93
131
87
54
128
182
76
133
119
90
129
113
118
108
113
123
141
133
98
59
108
100
107
95
134
81
127
119
104
114
106
136
83
108
124
82
93
148
131
138
124
74
118
87
121
129
71
101
85
87
101
77
77
93
98
68
129
59
148
103
99
108
154
98
136
54
98
128
54
87
153
104
80
128
82
98
116
144
82
155
85
145
91
144
83
231
101
136
103
103
172
130
87
108
119
119
54
177
126
115
191
82
98
115
111
85
93
129
96
147
107
141
142
126
108
135
120
106
125
133
98
106
54
95
49
132
108
133
166
132
131
54
117
81
77
111
90
162
106
118
105
145
59
138
84
67
77
114
91
79
96
159
182
127
98
127
101
160
128
81
107
181
116
132
94
90
122
78
98
142
116
153
128
150
112
174
143
67
177
158
138
172
135
128
125
91
102
91
85
123
103
133
99
142
74
86
82
85
149
125
112
49
90
113
89
77
94
96
105
146
87
124
129
131
91
105
95
76
106
95
171
83
135
130
116
108
98
98
128
124
82
114
128
125
97
123
81
105
103
109
137
94
84
74
86
137
106
155
102
107
120
148
110
95
108
120
93
143
121
113
128
158
69
142
133
81
131
132
127
107
101
143
131
118
76
129
105
149
96
129
54
133
108
107
126
93
143
132
150
104
122
151
102
54
162
109
102
145
54
113
147
95
112
108
119
139
122
88
129
98
111
100
99
147
179
126
128
127
115
49
135
162
144
168
93
103
156
96
107
73
104
125
154
144
123
112
141
116
128
108
134
124
95
157
107
129
120
69
113
74
146
105
140
113
94
103
144
155
74
93
128
98
118
92
96
119
156
98
133
113
104
104
91
146
138
113
106
118
153
80
140
122
106
108
94
142
147
101
117
76
65
103
123
82
169
106
108
147
59
102
126
98
147
95
154
104
97
139
176
180
82
67
109
125
155
122
163
49
110
49
79
134
97
104
125
125
145
95
87
74
129
54
131
93
135
113
107
180
137
84
133
100
154
109
80
104
180
122
105
120
103
95
129
98
119
135
59
100
87
99
165
136
102
153
90
81
161
78
133
115
54
149
148
102
118
77
91
99
106
101
114
106
88
148
105
90
145
118
98
103
93
118
98
119
83
74
167
106
135
128
74
84
54
120
84
125
118
77
127
104
200
135
74
124
74
77
131
101
140
122
92
105
128
105
117
88
151
82
97
84
140
143
90
148
132
100
129
107
131
54
203
125
105
100
70
105
160
116
124
167
102
113
124
157
90
148
108
130
157
124
100
101
109
103
160
115
54
97
108
175
98
78
113
124
102
91
154
122
85
104
105
93
110
113
142
123
102
103
143
129
54
103
102
141
164
136
77
130
125
108
98
127
169
127
107
99
81
103
69
122
104
106
132
85
90
131
140
94
131
126
103
124
129
98
101
138
179
77
102
179
91
118
78
103
102
116
54
90
87
114
103
106
92
54
103
129
102
122
82
128
95
140
49
133
109
119
92
79
54
54
107
109
74
122
220
127
122
146
91
102
92
94
128
105
160
68
113
131
102
104
102
126
88
133
93
102
108
133
128
81
108
157
122
101
126
172
136
108
91
134
93
150
128
150
132
146
110
135
156
108
131
93
54
102
113
155
172
95
77
144
67
125
59
97
145
144
146
123
83
99
122
140
74
107
115
80
117
130
133
120
153
144
116
77
115
155
114
105
151
116
95
78
135
54
90
106
105
150
104
165
109
173
123
103
148
116
108
125
85
126
103
109
144
113
54
104
108
149
127
116
148
158
95
119
117
102
112
126
91
67
87
102
97
120
54
133
81
107
105
127
122
89
100
93
148
95
161
135
108
88
168
79
102
148
102
98
136
49
126
137
144
124
118
132
143
101
117
97
156
148
73
155
124
96
134
116
77
103
133
107
113
54
137
49
114
101
105
89
80
127
85
114
144
71
54
88
96
117
79
103
54
113
93
120
106
143
136
115
116
118
108
113
103
164
94
112
142
88
186
108
94
118
185
106
170
134
59
97
106
57
82
114
127
82
102
98
78
103
153
117
115
77
54
99
150
220
119
115
80
151
112
167
99
81
135
113
93
108
88
110
131
148
143
126
146
128
94
135
148
118
129
131
87
135
99
82
130
105
90
102
144
182
111
109
81
105
165
108
98
127
117
147
124
120
125
77
123
101
98
68
158
127
123
81
81
141
104
90
133
91
156
69
133
110
102
143
95
54
74
95
120
143
130
116
83
104
80
144
87
123
117
90
109
102
147
140
132
85
110
154
148
169
159
127
148
87
154
82
126
67
116
103
108
111
166
69
93
131
114
101
120
160
114
105
89
100
98
101
124
145
100
87
119
97
49
113
77
105
154
90
168
113
113
106
165
140
108
81
102
93
165
171
95
110
82
101
102
102
125
139
125
109
90
132
95
91
117
136
147
113
116
133
125
123
164
77
87
106
115
129
49
82
143
113
150
153
157
148
96
160
114
54
128
141
118
95
123
95
106
137
116
49
124
90
163
111
129
110
177
128
137
105
102
165
134
108
89
130
141
136
76
54
168
95
122
131
103
85
144
108
140
82
78
81
157
105
136
81
128
112
103
98
103
126
140
192
110
144
74
131
82
89
82
107
118
107
92
117
83
104
102
103
100
101
139
103
123
142
125
106
125
124
91
103
194
54
125
128
143
54
49
126
139
169
54
133
54
108
123
91
118
184
81
77
128
170
76
168
125
108
168
150
129
155
128
138
112
140
102
139
141
133
146
86
161
126
155
102
118
106
145
128
77
135
106
123
111
121
153
122
100
78
106
158
101
146
131
130
113
108
108
129
72
102
77
111
74
151
148
54
98
78
97
148
83
115
133
122
120
54
93
117
125
95
125
90
101
130
139
59
42
129
103
61
105
125
105
104
54
131
87
59
91
106
132
120
112
141
131
105
157
130
125
134
76
139
122
110
128
108
54
76
68
128
109
108
156
102
102
109
155
59
139
98
108
96
68
90
95
123
95
131
128
87
123
54
113
103
108
128
113
84
108
145
148
77
161
82
106
77
124
114
177
151
105
54
129
131
108
96
144
128
109
96
195
86
145
59
110
49
104
86
93
140
108
123
93
108
114
147
76
113
97
77
154
122
102
119
89
173
128
144
139
156
102
143
117
81
133
103
113
76
80
113
98
100
105
113
105
113
109
161
105
110
129
114
98
131
114
117
122
136
192
87
142
118
107
102
122
134
135
102
163
155
87
95
97
121
103
90
102
82
86
106
108
87
95
109
90
173
98
129
97
111
130
155
122
97
120
143
108
78
104
139
147
133
111
111
105
117
105
160
104
49
113
129
177
177
121
133
115
106
118
80
143
83
87
163
149
99
54
103
104
194
143
89
107
116
54
103
107
169
154
128
83
163
145
102
119
74
120
96
139
74
107
107
135
84
118
83
102
78
164
101
124
133
69
130
137
109
103
119
125
155
113
95
94
111
157
98
116
115
101
126
86
122
145
129
107
107
103
118
140
131
106
143
135
97
112
77
143
125
95
141
102
105
98
104
85
101
146
144
148
102
113
102
114
98
105
108
139
137
108
140
91
141
139
141
147
122
133
99
127
76
125
74
139
98
104
86
129
115
154
103
104
134
169
117
87
108
154
88
163
129
142
116
79
136
148
96
131
108
113
95
140
80
49
177
113
87
142
159
118
126
108
94
76
77
123
117
112
148
144
71
74
149
120
82
98
160
102
143
103
113
113
177
159
130
76
54
92
112
106
161
49
179
82
106
137
131
133
143
89
108
102
158
177
182
104
93
98
95
145
102
87
98
165
90
112
112
133
90
115
80
119
177
145
132
107
133
148
152
59
108
127
95
158
117
102
87
119
146
77
87
96
118
93
107
120
123
103
169
102
122
144
117
143
91
125
108
98
98
68
98
96
91
81
80
54
126
125
83
89
138
116
103
116
128
63
129
125
131
78
112
143
113
128
92
146
158
93
65
170
99
54
144
73
168
125
119
133
127
165
95
54
111
164
120
130
101
86
54
113
97
175
127
102
54
67
93
76
113
98
177
110
136
134
135
131
76
96
98
98
163
97
105
123
98
139
98
171
90
140
96
129
121
94
128
97
146
118
117
108
96
104
110
80
94
103
127
109
108
107
85
81
140
102
96
128
79
112
54
151
78
90
122
102
82
111
103
115
107
157
117
125
77
81
148
97
81
146
137
161
145
141
127
104
105
54
54
131
120
85
115
179
96
95
95
139
102
157
49
54
125
54
82
54
144
158
130
165
78
83
148
128
120
118
143
82
80
102
109
158
106
107
147
155
119
84
103
109
98
137
177
141
98
151
120
54
113
62
54
101
95
94
81
117
98
102
122
191
144
180
193
138
144
156
133
54
168
152
84
136
129
122
138
119
106
54
120
148
172
127
102
125
131
97
141
111
168
100
119
127
106
96
149
140
67
172
141
105
92
112
89
94
86
137
135
68
49
152
112
107
120
146
80
110
116
162
67
106
95
168
177
90
87
142
102
67
133
87
96
105
113
127
112
61
151
126
141
77
81
98
105
118
81
116
108
76
155
130
97
119
108
155
93
114
107
78
77
95
107
171
152
148
115
149
95
129
126
122
74
161
107
121
99
98
87
172
115
103
116
158
90
98
127
123
122
179
83
158
139
76
143
125
110
108
97
105
128
155
103
102
108
123
122
105
54
147
123
85
49
139
67
54
150
80
109
110
112
96
85
141
96
116
77
148
87
67
87
149
85
90
93
117
67
76
184
127
95
122
113
141
125
147
118
113
139
96
139
93
102
134
95
111
139
105
113
160
114
102
69
144
108
120
85
139
131
108
102
127
153
90
121
132
103
139
77
98
122
130
85
108
69
81
123
107
125
106
116
143
95
102
128
80
96
102
105
101
150
165
112
107
121
113
156
113
115
91
120
80
108
129
98
135
76
102
105
160
135
91
146
131
105
171
149
130
148
115
67
93
139
103
115
54
114
120
145
81
61
45
117
49
76
105
98
95
119
76
158
67
125
112
115
105
84
71
80
87
73
162
142
165
108
95
87
107
68
143
98
83
95
130
76
130
146
98
76
97
107
125
108
95
132
148
148
105
118
122
129
90
111
182
125
59
152
98
81
84
113
49
116
95
108
133
57
98
120
103
108
178
112
74
49
82
113
105
108
87
82
111
125
54
165
148
158
135
127
137
87
106
54
78
114
54
142
128
86
54
107
158
108
79
131
91
105
121
83
133
102
90
69
94
107
128
134
118
100
175
129
114
93
148
54
93
77
108
127
139
90
100
113
95
95
78
177
122
92
109
87
109
141
138
74
132
107
99
132
74
76
127
87
120
113
81
120
130
96
98
82
142
179
111
84
108
140
186
123
109
108
140
72
73
107
100
113
61
147
108
116
54
149
102
133
94
155
68
95
190
99
85
149
123
87
103
74
141
122
131
140
123
130
99
88
102
49
90
105
145
113
54
105
77
113
81
78
149
91
149
113
107
122
59
110
101
114
76
81
114
69
123
135
144
161
134
135
106
155
61
111
140
98
80
179
81
106
175
143
69
120
120
101
125
131
118
142
95
156
146
164
114
120
112
129
126
100
74
151
145
124
137
156
88
127
130
85
54
102
82
90
157
113
127
122
109
219
80
49
59
91
108
123
135
114
153
151
146
78
118
135
144
89
117
98
88
93
145
178
62
86
136
125
147
143
123
93
78
113
147
115
87
115
98
97
108
59
177
143
115
105
118
54
49
107
143
95
145
115
102
177
117
85
115
153
117
83
110
128
127
143
125
161
191
126
54
80
95
98
94
144
148
103
123
125
165
122
97
122
109
180
179
81
137
132
128
68
120
87
83
157
77
95
106
42
68
113
95
113
125
131
128
54
109
137
140
124
127
144
59
116
131
128
97
105
136
94
119
200
93
123
161
131
161
49
149
107
109
89
67
95
76
158
96
102
156
125
160
102
132
54
84
98
120
116
158
49
98
74
135
135
114
127
86
89
102
162
154
86
109
130
115
92
101
59
85
54
93
179
57
149
135
101
143
158
132
91
120
76
138
68
73
115
105
112
101
138
128
108
98
165
121
54
176
54
67
87
119
104
164
93
92
77
143
118
98
102
125
96
96
158
101
85
154
77
131
102
140
116
144
54
92
91
122
120
115
117
105
108
125
133
83
131
82
95
109
117
95
106
102
184
90
97
123
134
171
114
83
103
102
80
95
105
110
182
184
93
102
54
102
102
119
95
92
113
68
54
80
107
98
90
123
160
120
100
147
101
115
168
103
77
140
121
95
93
117
129
133
153
101
76
111
133
148
108
81
76
140
82
142
113
125
157
147
80
103
102
108
146
97
123
113
146
121
138
139
139
129
118
92
108
91
105
109
129
79
181
177
135
95
102
61
128
82
127
59
90
105
96
115
182
54
112
149
131
49
93
125
165
98
119
191
67
102
120
126
100
98
59
118
113
83
128
68
77
101
103
170
74
153
87
113
94
101
108
119
125
170
121
81
124
108
96
142
138
88
141
138
147
146
177
101
68
132
102
95
148
102
146
124
83
171
69
95
169
54
133
109
74
61
128
93
132
83
84
120
102
117
139
87
98
92
87
134
90
54
118
108
145
96
81
159
147
129
81
103
95
167
145
99
124
140
126
108
105
76
126
113
146
120
108
102
129
150
100
113
106
194
129
157
133
104
140
54
54
101
113
146
118
111
102
49
102
118
113
133
105
148
137
152
94
146
133
87
135
155
128
160
145
95
152
54
153
98
111
54
144
54
147
146
95
127
108
68
115
85
139
157
67
102
125
140
192
84
133
105
49
145
78
147
121
133
141
87
135
82
134
147
102
130
148
135
144
115
76
134
141
123
134
103
112
139
95
69
117
93
59
93
136
113
118
139
139
119
124
130
113
143
82
112
87
151
101
101
107
76
54
67
80
135
156
82
98
108
139
200
105
118
175
114
132
113
122
103
156
161
144
67
107
54
108
145
104
107
135
108
127
112
118
113
78
76
106
95
120
163
118
78
106
156
85
97
131
138
93
143
118
120
142
146
179
134
137
168
114
97
188
186
103
160
132
88
139
108
164
103
127
106
101
119
116
155
95
119
103
133
141
59
96
102
148
103
151
86
154
128
104
73
153
148
130
54
107
125
94
54
54
128
111
132
156
158
81
149
128
113
147
108
147
78
69
85
150
146
120
164
59
102
111
121
113
143
102
87
215
124
125
177
84
161
99
132
84
131
190
98
112
97
67
125
129
110
93
76
133
98
145
150
87
108
148
150
106
139
83
77
95
144
120
97
128
161
159
102
127
118
114
139
108
145
175
135
145
148
122
115
85
54
111
74
49
82
154
104
93
87
127
98
128
86
125
88
101
134
108
122
130
123
102
93
149
177
135
108
86
97
142
113
85
132
59
172
95
144
142
134
123
102
103
103
120
161
130
77
117
124
112
104
105
128
144
78
100
148
107
153
96
77
102
124
179
116
59
131
128
143
81
110
98
54
89
173
154
139
145
101
89
76
95
141
121
139
92
118
93
112
124
67
127
93
92
177
120
165
128
130
102
68
120
83
93
54
100
108
141
95
84
130
163
137
102
160
115
59
169
108
124
82
139
175
120
106
173
132
54
88
141
169
105
133
125
130
147
98
177
139
116
80
118
107
82
101
77
102
164
121
87
49
148
96
160
103
143
123
90
153
103
162
120
145
49
117
93
87
113
92
158
103
109
113
102
104
102
128
113
134
80
115
83
150
149
130
149
161
108
125
113
146
119
124
79
81
134
110
129
101
91
98
77
153
79
138
125
134
102
125
106
67
108
92
177
127
96
105
152
152
125
68
141
72
89
98
123
95
125
145
118
81
133
109
120
126
126
83
118
91
95
74
110
105
162
108
102
141
182
95
103
74
125
116
132
116
173
118
108
106
82
72
67
123
102
95
106
81
87
83
115
109
96
95
104
144
106
128
108
96
122
129
98
120
155
126
102
105
102
127
96
78
108
119
103
110
117
129
92
115
129
98
103
139
117
100
110
87
81
177
121
113
124
111
106
103
84
153
133
158
125
49
54
59
146
54
119
101
49
115
123
106
103
141
103
144
102
105
161
90
194
108
102
126
156
49
74
142
134
119
114
93
77
98
83
76
95
67
74
155
115
78
95
138
67
124
73
147
81
129
149
113
79
101
142
100
124
103
91
136
95
123
85
113
150
148
108
111
123
104
134
54
107
54
116
92
147
175
112
109
123
83
105
155
89
83
156
150
112
112
133
144
125
93
127
129
61
175
89
134
98
147
120
114
91
129
146
127
95
142
54
150
131
106
95
102
98
87
76
141
81
188
113
103
54
130
151
104
115
105
74
122
54
105
130
148
106
59
54
54
213
49
73
146
123
78
97
107
95
103
131
102
122
150
110
103
92
148
136
102
141
108
131
116
153
105
102
106
82
116
168
125
129
77
150
138
144
135
102
114
140
129
167
143
177
82
149
77
156
75
141
95
204
155
155
81
76
54
126
98
117
125
102
95
87
108
161
116
101
108
103
101
201
109
91
96
200
135
125
126
148
113
72
99
137
81
95
132
90
89
142
98
82
108
83
110
102
102
127
125
185
121
74
95
128
145
144
104
107
133
161
117
127
161
115
105
105
82
104
84
96
165
81
65
118
123
96
67
100
96
116
77
128
90
87
81
74
131
98
116
114
127
111
83
107
133
111
179
113
74
115
143
106
148
133
108
160
104
95
133
155
89
119
146
118
74
133
98
110
90
105
102
98
118
161
99
83
148
138
95
91
112
112
76
119
54
105
116
105
59
119
128
136
108
122
108
98
112
77
74
124
124
113
109
147
101
172
110
159
148
87
128
160
135
119
70
103
102
108
122
54
108
144
82
90
81
98
108
137
106
102
127
115
108
104
110
120
172
95
101
119
144
103
136
146
54
131
165
143
139
91
107
177
103
177
103
81
96
161
113
74
108
81
97
110
96
81
157
104
170
103
102
145
126
102
139
102
128
144
120
84
132
67
150
130
147
103
83
144
102
54
95
125
89
82
115
108
82
103
141
109
128
105
95
93
112
74
145
160
136
49
119
123
130
157
97
109
130
135
137
102
128
107
80
135
160
152
109
157
54
112
123
133
101
113
155
102
145
115
95
79
138
103
154
59
108
98
146
215
153
54
77
77
169
59
160
98
106
131
90
80
115
77
148
110
134
139
83
87
83
129
122
113
133
132
131
135
178
101
81
101
122
98
123
123
92
123
131
96
135
49
94
151
90
159
108
146
95
126
102
113
81
143
76
148
164
80
109
154
108
54
168
92
107
102
108
144
98
130
59
160
112
128
105
93
102
115
108
59
102
111
141
91
95
104
143
54
145
108
163
92
140
97
120
116
133
149
101
99
176
201
135
117
136
101
65
99
108
116
151
102
108
76
95
95
133
138
157
122
144
131
106
139
139
142
96
144
143
107
91
122
78
108
91
111
146
138
135
95
81
106
114
137
139
156
74
97
54
107
114
78
121
137
119
149
90
93
59
87
134
87
49
132
105
155
74
167
107
164
49
118
82
113
109
120
157
141
143
59
98
74
108
162
108
125
138
108
85
164
179
120
123
113
113
124
49
80
105
106
105
141
108
129
140
118
96
95
105
95
126
110
165
69
113
105
107
93
91
108
85
124
199
148
94
107
93
125
98
158
109
111
117
104
173
83
125
103
76
61
102
85
102
94
114
122
126
85
54
128
128
163
93
105
112
102
110
86
54
91
102
98
124
101
108
78
82
101
101
97
91
109
164
133
145
125
121
131
54
140
129
83
125
95
108
128
149
95
113
108
158
99
79
108
120
124
107
74
120
105
133
135
185
76
101
142
128
90
130
133
138
156
125
101
82
130
122
102
113
92
118
108
113
148
154
107
93
110
116
86
102
102
96
97
120
77
179
133
143
95
145
92
125
122
84
110
126
125
90
148
145
119
54
77
97
158
103
167
104
133
135
104
84
148
118
92
126
129
116
121
234
98
54
145
141
123
120
106
148
136
96
96
98
115
147
101
132
102
98
106
114
143
145
49
141
147
114
143
93
78
121
172
120
97
91
146
121
98
165
112
137
87
93
122
144
120
169
105
90
120
121
99
95
103
115
168
111
144
141
117
74
133
125
124
149
162
136
146
135
77
131
120
144
126
104
95
143
109
81
103
142
85
108
59
102
148
118
106
97
57
95
126
95
131
85
128
83
90
86
95
95
118
76
126
113
148
121
92
78
235
59
128
161
129
76
147
120
102
124
123
200
115
133
131
177
89
116
82
141
107
78
107
89
102
95
130
105
133
151
130
120
121
49
118
139
157
61
150
102
87
163
114
139
170
105
106
109
69
65
95
177
154
76
161
113
96
147
59
150
113
109
80
128
85
54
94
76
112
89
95
96
94
103
102
142
151
116
142
135
115
105
125
95
148
77
118
141
129
132
74
108
82
124
137
67
85
103
122
118
107
114
95
67
95
54
79
73
112
94
106
120
132
105
116
54
119
85
147
120
106
106
124
98
123
133
103
148
105
144
129
95
108
100
92
95
104
106
109
105
103
133
90
149
117
81
77
170
131
77
143
90
118
108
123
83
144
113
134
121
125
123
128
138
150
54
125
107
98
141
135
125
110
129
149
124
67
49
67
163
130
95
159
144
87
54
89
82
54
98
105
91
171
162
109
119
104
95
128
108
152
120
157
102
143
108
143
140
85
135
83
93
151
49
158
139
173
130
136
137
106
120
98
54
120
124
74
98
80
54
112
124
117
137
131
111
68
165
111
121
73
108
182
95
117
115
141
121
136
102
59
117
81
49
173
87
190
143
104
160
110
114
108
116
117
133
121
134
69
133
141
137
165
161
90
125
129
114
107
54
98
105
147
108
95
96
120
98
114
140
122
117
101
76
69
140
73
133
114
138
201
177
49
114
130
119
96
103
98
106
120
49
80
91
155
116
90
126
75
82
54
123
153
112
95
144
115
126
93
107
49
141
146
106
115
124
106
108
85
96
123
91
147
107
125
131
148
122
59
67
137
96
162
128
105
131
103
147
172
111
127
93
130
103
151
87
124
127
150
107
118
119
163
102
133
128
127
130
108
135
98
112
125
100
131
133
147
108
119
164
136
137
139
87
92
127
98
140
106
54
113
152
81
105
141
113
91
130
49
108
130
89
54
95
177
161
137
112
123
102
153
128
128
87
125
113
109
113
128
156
143
135
83
126
110
112
144
188
90
90
134
83
135
90
54
141
81
81
70
126
148
105
142
105
74
90
148
119
140
144
139
106
98
158
119
98
78
133
102
77
93
96
147
102
82
133
91
150
87
105
102
132
114
87
99
149
74
119
97
144
98
119
106
87
121
81
95
98
174
106
118
153
155
161
115
145
81
109
98
118
155
80
134
82
95
212
142
128
139
143
127
81
107
125
67
148
138
75
125
85
130
98
101
67
124
74
143
139
106
93
113
91
175
94
149
191
115
190
105
77
150
129
136
104
74
125
177
108
95
122
139
150
97
77
133
113
126
129
147
146
49
95
95
76
110
68
126
59
83
166
105
103
97
118
129
80
147
102
133
178
108
144
144
128
76
95
130
135
115
113
111
95
96
131
79
158
82
126
99
167
49
103
105
131
116
146
131
144
54
126
122
102
135
147
123
90
156
94
129
144
122
179
127
83
151
104
112
127
124
165
105
120
105
54
90
102
94
98
125
125
110
159
102
122
155
91
77
104
105
138
144
109
175
111
138
111
103
151
122
109
102
115
145
152
54
156
158
141
145
161
74
81
112
114
122
87
54
54
108
137
103
81
108
54
49
95
151
135
126
177
107
140
95
128
149
150
103
140
131
160
114
158
149
149
120
154
154
135
82
169
127
105
90
123
127
177
77
82
54
117
133
133
136
94
77
54
67
115
78
92
125
172
110
91
83
137
134
101
130
159
157
98
129
100
161
115
116
133
129
145
61
97
86
76
84
68
68
125
108
77
59
133
81
112
109
105
200
90
139
175
93
169
59
87
105
91
89
120
131
87
91
85
90
67
115
81
90
127
96
112
111
103
96
98
141
127
132
106
132
93
147
85
142
76
113
115
177
87
119
87
112
102
124
108
147
124
111
128
125
179
82
119
157
59
103
132
156
147
135
93
123
87
80
112
87
115
54
98
89
104
73
145
167
101
81
96
119
113
131
157
122
116
74
142
143
116
147
133
104
83
102
124
112
95
106
108
112
119
148
87
99
101
127
131
102
67
131
106
186
81
126
155
96
97
90
127
164
113
115
97
77
105
54
98
118
87
77
111
128
156
135
171
102
150
133
70
116
91
119
109
143
123
131
175
110
122
156
116
104
84
90
118
139
76
111
110
161
104
70
177
116
81
89
112
103
134
136
93
112
74
168
113
148
105
140
102
103
181
54
172
107
102
157
125
165
101
59
49
74
73
135
135
78
140
76
99
126
126
160
119
128
128
131
130
76
183
88
144
115
54
74
102
113
114
108
105
69
110
49
177
98
190
142
118
120
112
94
128
184
74
170
139
128
158
79
91
148
102
133
125
101
143
102
147
88
143
59
49
90
97
102
110
103
151
135
98
118
126
107
99
98
144
124
91
76
95
146
144
108
128
109
109
105
89
103
95
108
99
141
123
100
89
108
150
119
107
145
129
116
121
106
144
98
115
94
122
132
116
151
140
129
150
79
93
153
124
82
103
100
112
96
111
213
102
100
113
154
113
122
155
88
125
102
81
142
95
74
81
164
158
125
137
119
154
115
117
112
119
130
113
111
100
70
122
68
89
124
90
175
134
93
90
132
178
72
95
90
131
135
54
101
45
155
111
69
77
72
121
78
59
135
126
78
97
145
107
127
101
77
108
113
77
81
166
71
142
61
160
107
180
131
136
76
69
115
77
54
77
96
87
143
131
117
145
111
78
128
102
116
143
75
129
125
124
172
108
142
128
54
191
125
145
148
155
93
113
104
105
92
134
98
98
106
119
100
139
135
67
140
93
167
84
99
87
135
151
145
165
59
59
123
102
102
79
102
54
80
173
143
113
115
102
139
146
143
90
131
144
70
102
111
152
116
144
87
118
173
140
106
147
98
107
86
131
95
135
99
125
91
120
110
124
138
139
140
103
129
113
114
100
154
82
126
68
135
98
105
77
106
107
121
111
159
136
177
89
160
155
133
104
95
67
80
108
61
93
109
125
167
118
78
147
104
54
95
109
109
167
54
102
146
68
54
124
80
121
143
129
81
59
113
97
137
128
98
172
54
49
135
104
114
133
92
96
130
103
108
119
118
112
106
186
111
80
153
49
125
122
114
117
148
98
103
112
127
54
158
127
140
168
95
169
138
107
144
82
78
114
131
49
163
128
113
65
81
143
79
109
95
112
90
141
100
148
165
124
148
135
172
174
165
113
151
157
128
95
83
157
151
151
108
118
115
106
108
123
113
90
110
81
131
133
129
90
91
138
115
76
125
91
134
74
54
153
83
132
74
96
95
105
124
88
125
104
141
133
110
106
98
80
74
142
149
81
102
107
109
81
178
153
96
139
158
110
113
146
98
102
115
73
131
54
139
145
78
126
81
161
104
98
126
143
54
130
102
133
86
108
106
132
54
194
54
74
95
148
121
90
123
131
133
100
129
129
104
134
102
98
120
112
95
54
87
106
108
54
95
105
140
98
122
124
155
136
107
113
54
100
111
172
78
104
132
120
149
103
83
117
121
108
129
96
98
54
129
137
119
199
106
104
158
218
138
72
97
89
88
74
106
113
105
125
96
96
126
105
101
129
95
108
112
148
117
120
115
129
104
140
102
112
122
101
54
125
113
105
69
59
160
131
151
67
168
101
115
107
54
173
78
90
81
122
170
133
128
140
144
134
133
179
133
113
95
95
120
102
143
83
112
132
134
133
105
135
102
108
116
125
61
135
109
126
158
77
81
146
132
49
131
136
156
135
123
80
177
95
173
175
107
120
116
108
115
129
166
103
126
149
133
91
145
124
133
105
83
92
127
162
96
113
132
142
128
148
115
135
118
113
136
103
102
102
69
67
81
139
116
77
134
106
152
132
129
193
160
82
128
128
129
128
107
143
149
59
115
96
159
90
94
90
147
141
95
98
97
83
91
116
90
146
121
104
97
54
107
129
95
118
105
88
98
111
93
128
171
69
98
81
132
78
54
133
54
90
83
98
80
106
132
131
109
98
108
124
111
126
95
106
160
108
96
139
76
114
142
115
132
127
84
49
85
129
69
121
96
164
105
97
98
49
54
108
108
105
119
98
98
153
81
146
124
130
98
156
103
151
110
153
206
108
204
115
103
122
128
96
77
90
83
95
49
98
191
104
123
138
117
116
91
145
59
90
177
163
155
76
174
96
177
98
200
102
129
101
59
81
74
97
87
87
191
95
108
125
120
100
118
148
120
115
96
146
160
121
103
131
158
154
90
97
142
108
115
160
166
110
102
154
73
103
131
90
149
84
96
128
133
116
128
118
96
122
148
165
98
172
80
113
77
68
121
125
145
112
129
125
122
54
109
74
128
134
54
92
54
87
149
145
74
108
54
87
154
110
108
158
90
123
78
116
81
144
74
101
80
73
143
186
117
127
82
190
126
125
120
110
181
59
96
113
61
95
139
74
125
94
131
124
134
127
108
59
82
138
68
131
97
110
113
92
104
78
148
114
77
115
108
62
158
120
145
108
99
129
77
105
59
128
95
59
119
167
142
95
122
129
74
136
105
174
157
102
103
143
150
119
108
108
142
68
148
126
78
113
127
123
181
142
94
146
87
90
68
82
137
118
61
103
179
119
163
131
141
85
106
103
129
167
95
125
80
65
90
132
119
100
87
167
83
109
128
102
144
104
70
108
125
103
95
193
126
162
54
153
94
118
102
98
79
157
102
160
136
80
82
54
168
126
128
149
106
143
163
86
107
142
122
49
107
106
109
94
95
141
153
103
121
136
45
125
83
121
107
176
57
115
101
113
108
95
106
108
108
112
152
145
124
95
106
133
153
158
129
119
81
90
91
81
132
128
136
111
145
150
141
144
128
101
159
106
98
73
110
129
132
124
156
132
106
139
93
81
59
135
107
148
98
135
93
74
148
119
115
54
103
104
163
133
98
86
107
120
95
146
103
126
134
160
93
140
166
101
159
116
110
54
74
145
95
76
90
129
98
85
168
136
61
95
65
99
124
126
104
81
138
124
121
74
102
155
122
125
73
122
119
118
176
116
110
124
93
129
147
128
98
103
120
84
106
54
85
148
82
133
85
102
118
87
117
54
107
164
103
78
148
82
121
99
146
122
133
141
90
130
54
125
108
121
127
120
84
155
110
125
138
101
117
137
108
125
113
115
82
160
143
74
87
135
148
115
81
181
143
113
164
123
161
118
157
95
78
82
109
95
98
171
113
49
87
143
142
92
122
109
54
90
138
108
117
121
112
121
61
54
149
137
106
103
106
123
116
114
160
137
108
90
148
95
54
106
125
157
54
77
125
115
54
112
106
118
103
81
118
102
160
155
95
89
49
81
79
163
95
74
162
93
138
81
124
54
94
182
158
98
67
98
101
106
121
140
138
177
120
95
113
81
117
149
101
118
119
102
125
129
126
118
98
79
117
103
84
83
125
54
127
95
131
134
123
105
118
85
103
143
143
98
54
155
90
136
125
119
150
127
95
87
109
120
85
117
78
54
98
134
101
119
149
132
127
127
67
73
166
107
120
54
135
130
106
116
122
101
129
90
106
143
104
103
105
121
106
118
95
137
102
106
49
122
100
117
117
105
128
102
120
106
87
74
113
176
132
134
93
122
137
120
99
112
122
87
151
112
185
147
114
135
108
54
151
124
81
171
90
87
134
87
88
140
101
143
113
137
145
118
59
98
145
83
142
90
93
159
115
116
138
95
132
131
114
158
90
49
125
121
164
98
75
116
124
54
131
99
140
115
138
80
144
151
81
202
113
113
119
133
141
122
103
135
123
82
109
130
90
125
133
133
148
96
99
108
136
49
148
103
133
70
102
99
82
126
126
172
54
95
115
113
59
127
127
138
95
133
82
150
87
74
131
140
107
153
108
68
133
120
141
102
169
130
102
76
101
89
103
111
148
49
107
103
90
76
128
59
113
87
123
168
90
87
70
113
135
108
88
149
135
194
117
92
146
103
193
135
158
172
120
177
128
133
159
95
85
90
75
126
119
105
73
108
132
130
108
163
61
67
81
115
102
181
102
125
102
118
134
122
86
102
54
108
106
110
164
112
95
98
107
87
74
54
97
107
54
90
93
97
110
119
79
131
77
113
102
82
109
103
88
80
137
116
152
113
84
120
103
123
138
144
135
144
106
74
90
92
49
98
54
97
146
100
140
155
108
142
108
140
90
159
127
108
125
104
90
103
101
74
110
158
98
103
100
153
54
137
132
116
85
54
90
80
113
94
167
84
102
59
119
123
103
141
135
103
102
67
98
90
98
115
97
148
113
103
131
161
92
103
98
54
68
113
125
99
172
110
95
191
69
107
107
145
92
61
120
120
90
111
106
121
110
128
54
85
130
93
90
148
80
115
124
95
130
125
156
54
125
112
88
119
144
97
103
121
132
97
102
81
92
158
90
133
103
185
125
139
106
54
148
126
152
172
135
101
165
108
150
108
82
115
102
120
95
86
153
81
131
134
143
113
122
108
95
133
102
137
107
49
109
91
120
112
166
89
180
121
118
99
121
102
54
135
137
99
108
93
129
90
143
183
82
148
141
112
102
120
172
81
140
113
147
101
103
113
82
149
74
67
194
98
148
74
117
90
110
137
135
144
118
168
140
95
131
95
137
90
123
110
114
123
128
120
147
87
105
127
106
147
163
122
148
54
125
76
94
116
138
49
124
154
131
134
54
125
131
95
156
102
125
105
49
148
102
177
110
124
144
80
127
92
105
126
164
106
113
54
113
170
153
121
105
124
137
161
106
108
179
153
146
109
151
102
149
133
85
148
100
106
135
112
108
102
92
132
95
105
102
91
83
133
120
113
68
108
95
108
135
109
99
82
117
117
145
90
123
122
172
134
98
96
114
107
198
95
76
84
102
80
132
148
153
105
102
129
96
128
134
135
95
103
160
137
128
115
112
81
67
103
79
102
121
150
148
94
139
147
134
103
131
140
166
115
59
134
119
107
96
74
160
74
129
132
82
172
104
83
120
105
96
105
54
89
123
125
153
95
220
103
118
96
144
111
95
122
104
144
125
116
88
118
96
106
144
129
147
103
95
185
101
122
49
49
128
102
98
160
200
146
146
144
118
112
85
95
65
95
103
98
127
109
81
123
95
123
154
126
81
140
135
114
113
131
126
107
107
129
140
91
54
101
49
138
71
109
116
76
156
144
123
166
144
155
105
161
74
59
158
80
113
96
131
157
129
97
54
165
95
98
112
85
119
98
147
80
125
118
110
129
98
78
170
98
131
154
144
81
133
129
129
74
117
119
98
93
104
80
116
116
91
145
167
135
54
107
98
135
136
107
124
126
67
87
132
83
186
113
147
177
118
112
87
93
166
95
90
149
107
93
54
127
105
102
178
105
93
153
85
95
90
145
176
122
87
146
123
129
135
149
126
125
121
96
73
120
81
132
78
110
104
102
91
192
167
133
102
114
106
102
85
127
122
92
97
82
102
95
101
95
183
127
80
102
90
83
98
89
105
97
173
77
122
81
107
101
87
107
116
91
122
143
128
177
108
133
94
150
125
141
108
110
81
177
95
113
127
122
155
149
133
152
144
108
222
83
83
104
109
95
131
110
95
54
90
89
108
87
177
113
86
102
135
162
81
123
92
125
96
98
143
125
69
104
131
148
94
148
133
138
94
108
129
153
83
99
111
54
105
59
162
108
54
105
144
142
165
93
90
91
108
112
119
155
134
98
106
95
152
108
95
102
68
123
77
156
66
126
151
108
128
121
144
155
120
111
138
173
95
108
114
95
132
91
81
102
76
135
65
74
156
160
121
82
115
183
101
69
193
82
124
89
98
112
141
98
103
140
128
106
117
134
118
107
68
124
120
101
108
69
108
133
121
108
121
117
113
73
131
54
109
130
113
153
105
163
117
84
112
116
81
148
87
156
146
157
132
73
176
168
138
110
108
105
74
116
114
144
102
101
116
146
112
120
81
127
148
114
163
96
90
109
127
177
151
177
128
115
97
128
126
116
165
116
116
103
98
136
132
198
110
179
132
68
133
114
112
101
102
129
102
134
118
116
158
98
125
141
118
166
157
85
123
101
104
96
110
111
116
128
154
74
132
98
98
97
69
127
100
191
93
117
154
116
103
81
101
109
218
85
101
102
49
133
76
122
131
99
75
111
117
112
144
158
122
115
122
118
204
67
148
134
108
147
98
68
150
95
59
103
134
105
139
93
102
106
124
149
106
102
139
160
123
93
95
81
135
148
106
49
107
132
128
114
119
115
96
111
76
109
186
151
109
109
110
81
77
81
133
97
122
147
179
80
91
67
146
93
117
54
81
135
67
108
105
105
128
125
96
123
127
104
115
161
130
133
98
119
100
140
165
124
133
118
121
114
189
102
109
49
125
102
130
108
95
90
80
140
108
140
93
49
94
68
167
54
54
74
90
157
83
118
153
102
105
92
144
127
54
146
155
140
54
141
116
142
118
106
139
146
100
133
179
177
54
127
54
81
54
128
148
145
102
123
102
133
98
139
95
101
134
73
96
148
95
139
143
138
83
54
163
108
95
103
148
125
123
128
92
93
125
159
144
161
144
147
149
94
74
68
105
120
54
114
77
162
88
108
136
125
109
122
145
97
98
185
150
148
131
102
100
83
173
122
138
79
115
59
87
118
135
144
115
90
147
150
146
56
113
131
95
110
109
116
151
102
136
147
90
188
128
158
107
105
93
54
109
123
138
121
138
158
102
89
112
93
133
93
74
83
177
120
75
49
102
102
132
180
133
151
172
187
125
103
114
157
113
125
158
54
92
130
114
117
110
105
105
90
92
144
101
54
68
113
136
107
157
86
123
158
103
113
93
93
107
90
119
131
117
102
59
76
148
126
87
108
88
119
108
119
116
126
121
140
142
116
124
127
76
146
125
135
110
117
106
115
123
140
125
82
131
153
102
112
147
172
113
108
94
144
93
114
102
112
95
91
149
108
82
95
168
86
106
76
77
93
150
145
108
121
116
145
103
102
111
126
158
49
103
169
105
81
125
81
122
112
126
124
108
121
102
92
161
131
116
135
54
170
81
93
49
81
176
116
74
54
98
148
158
129
135
139
147
164
106
54
61
115
102
152
126
93
141
131
115
165
110
134
123
113
157
128
96
59
84
108
156
88
76
83
190
108
167
117
119
149
140
148
164
108
120
102
103
110
93
127
118
141
116
113
133
95
154
129
218
83
106
151
98
108
123
97
137
98
81
107
125
117
54
105
98
81
98
140
125
79
101
112
49
102
122
88
189
108
54
69
128
125
100
115
81
82
141
49
105
125
143
135
172
113
133
132
113
144
87
140
180
155
116
168
159
116
111
108
92
61
74
131
146
144
63
140
78
68
74
134
85
54
95
102
105
158
115
74
74
145
147
138
127
101
148
119
61
130
151
91
98
63
113
127
109
118
120
107
103
81
93
97
143
95
155
147
88
54
143
93
133
159
93
141
73
160
157
109
131
129
102
129
95
85
117
190
149
112
104
149
103
108
98
160
69
115
135
85
113
61
115
125
162
116
131
132
128
114
74
131
85
105
129
89
103
106
139
158
68
102
154
131
111
103
125
149
143
103
125
186
103
114
194
107
154
126
102
98
141
141
105
77
167
94
82
106
138
135
145
98
173
88
93
85
137
125
93
89
95
105
77
146
157
112
147
81
158
133
125
147
49
108
112
118
78
126
130
132
101
85
77
110
105
131
117
102
115
148
133
177
104
113
125
108
74
89
118
54
98
54
125
93
54
116
114
96
96
102
105
125
116
118
101
200
155
105
109
108
110
113
108
87
127
117
108
96
173
136
119
81
144
128
127
181
180
95
166
74
110
91
133
86
119
87
106
102
76
54
144
123
81
133
81
76
90
97
84
73
135
126
175
98
144
76
118
96
122
101
90
102
136
123
113
101
116
104
80
147
93
76
114
83
93
150
81
110
131
149
83
69
99
93
117
160
111
54
105
129
129
117
54
177
77
77
102
54
114
159
102
108
124
158
106
148
115
119
143
97
130
117
103
97
149
104
119
114
106
150
103
108
108
117
89
102
54
126
103
116
99
117
82
54
104
130
87
95
133
127
102
91
54
91
87
97
73
129
59
113
131
177
132
93
108
114
109
100
119
140
103
94
159
87
82
158
168
124
110
145
84
98
102
91
94
96
54
102
94
117
98
67
162
68
82
104
59
128
146
92
160
82
81
150
145
98
137
120
150
133
138
117
133
61
127
183
129
77
96
117
74
95
86
97
115
140
125
129
115
77
77
121
120
123
127
143
105
74
94
101
114
54
95
74
49
98
144
98
130
95
74
139
103
137
105
153
141
122
151
61
135
125
61
99
158
95
108
148
111
103
91
113
123
112
155
140
126
98
149
85
145
105
121
99
149
143
81
129
83
105
107
74
112
108
127
186
159
120
113
59
153
125
95
139
127
49
127
104
125
135
152
102
126
77
125
133
113
128
149
97
111
105
131
95
118
128
108
197
106
147
59
127
98
115
115
148
112
132
82
78
116
133
138
138
112
90
115
92
136
87
152
83
98
105
106
113
104
97
108
158
95
128
107
124
108
123
87
148
171
103
148
97
82
97
185
90
243
115
199
106
160
49
104
128
142
155
121
101
119
148
80
95
177
116
103
98
54
137
143
117
105
125
95
177
86
108
177
85
98
93
155
107
116
131
151
130
132
128
103
83
114
54
180
102
59
68
112
138
150
113
98
54
158
120
117
76
134
85
129
90
83
144
103
137
111
111
139
132
98
59
106
119
153
83
131
153
103
83
101
135
70
107
96
131
104
142
155
164
54
113
200
88
145
124
96
83
124
93
134
54
110
143
115
108
140
148
158
105
105
81
103
68
127
84
137
155
81
81
68
123
85
124
149
90
176
138
107
139
118
90
45
81
119
160
126
67
77
129
102
85
138
59
151
98
103
153
65
114
139
82
74
149
157
143
148
95
146
87
127
78
135
122
121
140
105
102
109
108
133
158
54
105
106
97
119
116
98
118
98
95
143
138
103
116
79
117
129
113
147
128
69
91
97
100
122
77
120
147
83
103
118
121
102
113
108
124
136
106
125
83
114
129
113
109
105
120
149
82
168
98
54
161
80
125
54
128
94
97
73
102
104
135
161
122
108
84
87
151
124
119
122
142
182
108
91
121
117
106
101
116
130
93
143
124
95
67
54
184
144
128
74
139
140
150
95
133
81
108
144
91
116
87
108
118
116
87
162
105
154
110
59
148
95
149
101
77
158
143
112
122
206
54
133
132
83
54
105
135
127
68
110
126
114
84
107
107
90
127
80
152
156
104
161
108
116
141
131
98
143
118
92
85
103
133
118
73
103
80
148
96
134
118
59
156
139
143
120
94
102
127
97
95
103
87
121
116
173
124
114
95
144
76
76
98
145
141
116
206
194
134
78
97
165
134
148
91
94
122
95
143
111
83
110
115
120
107
107
95
133
139
133
133
141
115
99
143
129
137
77
59
97
97
83
116
93
93
81
135
110
179
54
102
90
80
108
131
122
138
114
113
108
87
141
124
169
87
152
102
90
114
113
95
157
77
120
90
115
96
134
115
85
148
132
155
146
95
142
127
54
145
117
122
95
104
90
97
146
125
116
158
115
95
61
104
122
108
99
95
139
138
100
102
151
148
81
93
94
98
108
122
74
106
137
144
132
94
129
121
103
149
159
80
96
80
102
99
177
127
113
125
59
119
131
141
137
144
107
159
78
110
95
140
106
59
127
95
85
93
98
108
134
92
117
107
127
204
131
82
74
234
103
90
93
90
103
108
182
159
129
49
135
122
85
156
153
135
115
103
112
116
113
81
90
148
114
142
148
81
105
129
77
92
115
100
78
74
87
84
104
82
90
101
77
121
145
80
82
153
124
90
123
138
148
145
141
68
125
123
135
77
134
103
78
95
92
133
103
153
177
133
171
144
148
95
107
45
146
124
96
90
157
125
139
105
77
160
158
88
179
113
54
95
89
112
120
136
154
119
81
115
78
116
59
146
81
59
178
125
134
96
93
108
100
179
59
171
108
108
145
95
96
80
82
102
98
150
121
106
102
103
133
93
153
97
110
115
110
132
91
145
142
106
87
125
106
93
67
135
106
147
49
108
161
61
136
140
108
81
77
95
98
125
110
132
147
150
80
122
115
200
149
79
174
98
93
61
105
108
158
98
125
124
132
54
122
102
151
132
159
100
76
137
148
54
150
84
84
88
142
120
95
140
74
105
113
128
108
138
106
100
122
133
156
92
135
129
92
118
135
160
190
161
162
148
90
100
85
96
99
127
82
124
135
122
98
93
136
115
152
169
54
93
100
103
180
106
93
113
103
144
197
98
114
108
101
121
130
105
108
108
54
130
96
76
237
77
95
148
111
132
156
138
86
114
138
154
49
165
93
61
169
164
131
115
86
102
90
154
102
115
77
146
103
103
155
155
108
87
128
89
113
103
128
108
134
54
108
95
127
108
115
101
105
87
140
122
140
105
94
133
121
95
98
146
123
114
162
119
121
141
119
139
83
102
125
108
97
85
101
167
141
145
153
125
77
145
113
124
132
123
54
95
96
173
117
115
99
154
144
129
59
85
102
135
76
93
49
144
108
106
85
123
147
134
99
87
97
143
111
139
153
133
112
116
86
49
146
61
107
151
161
118
102
135
119
113
102
102
102
120
134
158
112
54
74
153
157
145
131
102
95
113
107
87
126
149
98
128
90
158
130
78
136
142
128
59
93
108
137
103
85
112
87
95
122
110
98
100
125
121
103
89
148
186
54
153
95
97
121
102
90
83
160
95
113
95
78
113
109
121
125
158
137
142
125
77
100
115
106
142
115
119
88
125
128
160
143
93
96
135
103
61
124
146
81
102
133
97
123
54
84
84
128
115
90
138
104
107
97
77
177
139
80
163
103
95
117
155
122
89
129
125
86
215
148
67
107
83
161
142
128
123
170
126
101
140
131
90
117
111
76
152
105
106
129
177
158
129
99
146
141
161
143
81
128
172
98
127
110
177
135
158
137
113
129
120
105
94
107
127
99
186
87
138
91
81
137
112
121
167
124
83
148
148
108
112
106
90
113
105
151
122
78
145
132
104
153
109
112
108
101
129
108
54
101
110
80
141
125
106
83
85
147
49
124
106
106
133
87
152
126
107
76
177
104
96
163
130
74
123
116
128
82
85
93
103
74
127
133
137
119
93
129
98
134
90
103
139
76
95
130
54
186
103
123
108
59
99
90
200
105
108
103
143
88
99
141
135
74
137
103
122
136
145
115
99
115
98
76
152
122
59
117
143
156
95
87
137
87
162
90
75
95
103
164
149
106
152
105
87
106
125
67
89
112
103
121
142
103
90
54
110
114
128
159
85
54
166
115
90
106
85
140
134
123
102
161
89
108
119
77
108
122
91
140
129
134
139
113
95
141
127
54
139
115
98
107
101
97
87
115
113
115
172
77
54
102
153
157
136
90
97
191
151
116
105
61
113
140
115
116
102
121
119
98
175
108
118
87
107
95
102
54
143
103
113
110
108
102
102
113
89
112
122
148
102
122
119
87
135
139
156
108
95
68
108
85
168
124
122
149
93
149
135
174
91
103
141
177
94
99
122
172
87
117
113
103
156
81
135
95
131
144
113
147
96
128
105
138
132
110
108
137
98
131
120
102
95
133
108
128
143
173
120
69
57
145
110
111
67
95
89
171
130
89
132
67
99
90
168
180
54
109
69
112
99
94
122
134
152
135
69
109
167
120
83
85
61
122
154
78
129
138
153
153
107
57
143
111
124
102
129
133
134
144
103
129
54
112
142
143
144
54
79
110
99
101
94
148
110
116
157
54
82
179
124
95
131
93
113
115
83
136
177
89
127
94
130
145
115
81
114
129
139
61
82
49
146
109
78
130
90
107
123
92
135
123
160
102
140
185
63
106
127
92
105
123
106
68
78
131
83
146
108
102
144
122
121
109
103
149
139
145
92
93
107
117
76
90
102
125
143
119
109
90
103
113
98
155
180
108
101
148
156
113
132
126
177
107
103
77
76
98
59
144
135
83
140
118
122
101
106
108
129
89
161
135
54
136
123
180
120
148
98
129
102
105
102
131
115
90
182
82
97
145
111
158
102
131
120
108
59
112
125
123
106
91
133
121
165
120
78
125
81
153
140
129
95
150
103
109
171
97
102
99
95
93
78
95
90
107
160
191
125
128
148
49
69
116
96
128
67
103
107
115
177
133
98
138
120
133
158
120
61
103
116
149
102
84
107
120
101
146
186
135
99
112
165
133
165
68
110
114
117
112
122
134
76
82
108
163
105
118
147
108
105
97
111
118
96
108
108
125
93
151
108
145
135
76
133
90
95
98
104
135
108
45
105
118
98
167
61
139
76
137
98
127
148
155
82
122
95
129
85
127
70
105
93
133
145
115
59
161
94
108
147
145
77
76
158
74
96
105
132
109
146
103
89
119
98
120
138
49
91
133
132
143
115
179
103
181
114
78
87
115
147
98
78
54
129
86
74
109
81
150
87
147
109
87
139
103
59
104
125
82
120
105
194
97
54
133
166
169
82
90
90
82
144
123
133
99
159
100
126
141
121
135
82
81
110
96
149
141
87
122
102
115
120
106
158
93
117
99
90
104
151
165
125
194
77
102
131
95
103
146
135
128
113
166
124
140
108
93
155
81
119
165
153
100
128
133
131
118
102
144
100
134
121
111
166
98
140
143
103
109
186
94
91
127
54
135
84
172
116
128
106
78
98
113
115
98
108
102
106
111
169
102
143
112
89
148
165
78
126
156
190
142
125
103
115
124
158
114
87
99
114
113
74
57
135
116
128
132
163
156
65
89
107
103
141
54
133
100
162
121
140
103
125
100
134
61
98
84
128
90
81
125
163
123
87
167
184
103
101
133
144
100
93
133
101
108
103
78
118
119
77
114
157
61
83
102
144
147
121
83
149
99
157
89
123
120
165
166
140
95
69
124
103
105
97
137
133
54
133
140
59
45
173
148
113
96
81
149
137
129
105
108
151
216
98
103
150
83
129
80
103
156
103
80
108
88
168
98
105
95
92
133
95
118
106
173
100
105
59
105
135
144
146
102
127
133
170
112
145
134
103
101
81
49
100
95
107
122
123
120
76
129
81
102
135
142
133
157
102
54
101
49
104
141
132
67
94
112
146
95
87
125
112
115
87
125
108
144
125
96
143
84
125
82
85
102
81
54
49
95
141
102
82
110
132
110
139
151
106
98
162
54
54
105
78
139
54
77
103
93
97
99
148
85
138
95
113
125
110
166
151
105
106
108
114
90
143
115
82
110
129
132
137
67
81
98
124
146
128
68
102
144
104
117
74
99
140
125
101
110
143
139
129
54
114
102
160
93
196
105
95
108
96
98
126
54
67
125
74
148
178
198
127
122
119
158
102
131
74
145
127
59
123
119
113
107
101
102
91
81
113
104
132
161
54
158
97
139
108
81
88
144
186
177
145
96
73
145
74
99
138
129
172
108
54
115
131
102
187
91
101
127
108
103
113
54
121
93
153
78
122
113
133
134
125
163
65
54
117
164
151
147
91
99
167
158
129
124
110
136
120
151
94
133
143
99
109
108
143
133
95
98
91
161
93
102
85
128
74
146
118
159
111
90
206
107
113
122
87
97
108
119
87
109
83
129
115
102
152
85
95
179
148
102
164
115
125
107
124
119
54
134
77
90
191
137
59
143
90
156
108
158
134
106
95
91
123
108
108
74
104
152
81
90
136
81
95
80
154
140
127
96
141
69
199
98
81
59
127
77
115
49
182
74
144
88
104
77
140
77
81
106
120
159
146
97
145
137
147
82
129
129
166
107
144
61
138
134
49
98
111
93
100
54
83
118
154
138
103
105
134
124
54
113
95
132
156
117
117
118
81
108
146
121
77
98
134
76
118
102
116
134
86
115
122
109
61
143
204
121
95
125
160
114
107
163
110
148
160
88
146
140
98
106
139
103
120
97
98
45
99
139
141
128
101
141
108
106
103
95
131
108
118
127
148
99
126
149
148
108
99
119
110
95
143
76
90
102
149
49
79
146
125
95
118
136
113
98
117
148
125
90
118
107
86
82
140
86
82
83
144
93
141
129
161
128
116
153
134
49
165
107
103
139
83
76
123
127
147
112
120
109
102
98
100
98
147
95
133
108
101
133
97
87
98
151
129
139
112
137
145
88
101
130
136
115
108
146
54
108
57
98
54
104
103
118
114
157
76
83
76
157
104
98
143
90
102
117
145
107
140
128
130
139
78
82
59
96
190
159
111
54
120
144
114
85
123
125
119
108
74
123
83
159
98
98
81
115
87
118
102
105
102
74
136
131
106
125
115
92
75
131
116
109
148
104
204
130
68
49
104
166
115
104
74
134
129
103
122
97
126
148
84
59
87
147
144
79
110
106
94
127
78
96
147
103
114
157
163
138
91
79
118
54
100
108
54
135
89
154
142
100
130
95
117
179
120
177
137
124
145
151
122
102
67
98
135
128
125
132
123
118
103
124
92
111
92
150
113
107
120
142
98
97
61
95
102
110
95
95
95
89
153
76
135
95
168
112
103
102
116
85
135
161
108
128
107
134
105
134
112
102
129
154
49
125
202
98
96
68
186
200
178
87
74
104
116
156
130
135
109
99
165
105
91
135
107
136
165
137
117
156
85
161
155
144
116
143
54
98
49
81
106
107
79
74
127
67
146
91
125
158
135
98
74
114
136
113
112
120
69
67
78
129
74
85
143
100
135
104
121
92
148
128
89
126
88
86
91
102
125
102
84
114
98
113
125
130
100
102
117
103
130
94
111
126
95
122
76
142
141
151
146
133
129
126
90
104
87
120
99
102
83
59
173
115
104
113
181
95
81
85
108
82
138
115
161
81
98
96
93
54
116
96
117
162
49
124
77
102
68
127
165
110
81
102
130
105
98
121
125
102
82
125
96
103
129
54
110
145
134
81
122
101
76
123
82
54
133
162
75
113
122
164
81
54
111
148
102
133
105
144
98
69
134
90
132
54
92
117
194
76
151
150
128
143
127
93
102
118
125
93
102
133
165
90
139
77
147
109
104
124
114
102
144
82
49
98
54
102
103
142
84
148
102
131
156
95
106
143
99
103
162
105
114
121
134
100
108
83
101
182
109
124
167
167
98
150
87
165
143
193
95
158
112
122
109
54
80
83
116
54
120
165
104
124
98
135
94
95
107
103
128
127
129
92
140
127
107
113
123
108
122
74
112
105
93
140
122
93
135
139
115
99
92
142
125
178
101
108
173
107
54
132
133
139
106
144
97
122
76
135
82
91
134
78
102
147
127
148
137
125
133
93
93
120
124
104
131
113
75
152
138
102
127
136
175
103
167
99
144
99
117
106
95
143
54
108
59
145
148
107
113
108
84
85
135
141
68
102
103
112
135
194
153
83
133
76
156
158
97
132
124
59
115
54
125
130
103
95
82
115
81
54
113
81
95
128
102
115
92
116
138
145
87
105
82
147
105
138
144
131
105
128
105
54
143
106
83
114
103
168
155
103
103
121
129
105
131
133
119
168
120
81
93
110
49
118
113
103
102
158
108
143
101
95
131
54
128
145
99
148
134
131
122
118
98
97
95
157
54
105
165
134
125
77
137
127
103
161
135
104
116
143
138
172
103
128
105
142
96
74
82
145
172
93
155
101
127
108
108
131
152
152
87
109
98
79
137
147
82
106
54
125
157
108
105
128
151
90
133
188
124
125
105
146
154
59
104
158
133
74
121
77
125
129
134
94
127
90
49
82
126
143
177
77
85
90
128
117
105
135
54
117
128
145
59
90
113
84
224
138
97
115
91
95
98
54
111
108
77
129
120
128
112
147
129
74
69
76
154
113
144
81
152
126
93
105
97
94
80
115
83
125
103
157
92
129
104
116
163
116
93
108
134
128
108
103
54
80
83
139
122
133
107
157
93
54
149
113
144
115
67
216
110
83
85
68
129
94
82
81
88
102
134
117
179
54
131
113
115
104
118
120
78
96
100
112
179
102
83
111
101
130
163
118
114
87
97
128
139
175
82
132
140
97
89
131
161
54
113
114
120
148
145
177
105
148
123
81
77
80
95
131
90
95
82
135
107
108
91
140
139
101
49
139
127
95
149
140
125
77
83
98
158
74
111
133
155
81
95
186
91
112
90
129
117
99
158
81
118
129
108
90
121
160
83
113
121
127
112
171
130
87
108
120
140
49
86
87
107
112
98
102
87
132
103
135
49
112
124
49
138
120
123
121
139
125
145
140
112
147
82
141
106
106
133
98
147
90
109
138
85
81
127
110
133
110
135
120
91
98
99
179
177
142
107
106
54
134
148
106
103
138
159
114
116
96
188
97
126
148
104
95
93
77
98
125
123
162
113
134
130
177
128
112
54
146
142
133
134
139
101
97
149
103
158
124
143
108
141
107
126
77
116
87
110
153
123
82
105
98
128
125
117
135
150
100
54
122
157
78
138
132
90
127
93
149
114
95
61
128
105
97
132
77
80
134
139
181
120
100
124
90
131
125
93
90
129
115
121
107
139
119
67
155
118
113
90
160
166
139
128
177
101
49
100
108
78
90
90
130
67
125
67
145
106
125
105
139
148
90
120
76
95
126
54
100
118
116
98
115
172
155
82
92
81
104
157
104
143
93
138
96
129
150
141
144
138
162
54
204
54
98
83
86
95
103
114
81
142
139
124
134
118
107
134
95
131
131
74
54
127
154
102
120
158
83
76
125
85
129
97
87
95
122
102
116
138
131
77
129
158
108
82
128
96
104
158
137
139
119
109
82
96
91
128
96
163
49
123
118
138
95
147
78
166
98
93
111
133
73
59
93
113
98
94
166
110
113
111
97
95
126
103
118
105
95
108
82
59
137
165
137
108
85
108
136
104
144
76
131
100
144
132
154
113
150
139
128
76
141
98
143
91
104
49
161
80
81
87
85
156
78
104
138
115
81
103
85
108
115
109
98
126
76
87
99
124
54
102
54
90
85
95
107
108
121
146
107
123
106
101
99
141
54
121
54
112
122
135
146
54
103
118
101
92
170
96
146
108
129
143
95
93
54
156
108
100
95
125
150
129
158
76
68
110
128
77
127
177
112
118
106
130
102
136
103
106
92
54
196
101
185
98
87
118
83
96
144
133
113
135
105
128
112
54
83
135
95
67
81
95
103
112
101
68
105
102
127
108
88
115
167
155
81
102
157
96
92
125
108
107
137
234
118
87
89
68
104
87
151
79
158
135
191
121
116
82
161
105
113
159
132
95
102
106
68
151
130
134
74
119
134
218
100
132
157
102
102
138
154
138
111
139
99
102
113
102
79
145
148
142
105
89
85
118
120
125
93
95
155
127
108
118
165
147
126
92
119
115
148
117
108
92
81
74
95
89
110
128
170
121
89
112
109
101
112
137
80
84
143
153
77
91
98
135
141
98
98
91
103
156
119
87
148
140
87
97
142
133
81
106
156
144
102
86
181
102
135
61
85
99
151
135
157
106
130
125
102
115
109
87
129
109
125
103
147
77
96
148
98
123
92
165
167
201
87
67
124
166
95
108
106
129
54
95
159
128
77
125
102
171
81
127
124
99
78
115
54
105
138
91
103
119
108
172
87
54
77
87
140
87
74
87
103
92
122
54
143
111
59
102
90
96
128
89
148
177
102
140
78
95
93
121
133
161
126
90
76
120
102
61
141
80
164
99
87
74
81
98
101
157
115
125
103
127
103
128
127
147
128
93
155
113
118
81
133
85
106
103
86
107
124
133
148
59
122
105
102
104
114
90
108
78
110
82
139
128
108
87
128
147
128
102
128
123
122
54
117
59
102
160
127
116
96
108
114
112
113
144
117
95
115
78
155
105
127
92
76
124
105
128
128
103
111
96
161
113
146
103
126
129
172
143
148
82
105
123
133
106
54
101
87
95
126
127
85
68
102
139
122
78
143
123
131
142
135
177
130
49
77
81
154
79
133
213
126
81
158
103
110
102
87
59
193
167
157
146
143
133
83
108
88
105
125
117
172
98
144
96
118
111
149
54
167
142
99
93
93
90
54
103
123
76
102
108
78
133
100
131
96
146
96
98
127
121
98
135
77
133
85
100
121
134
89
107
94
157
94
109
122
74
102
92
88
150
130
138
92
80
85
102
95
107
82
99
95
96
78
59
103
194
129
141
154
88
109
86
99
87
102
107
120
98
103
128
95
89
74
87
98
111
54
116
91
125
98
85
145
117
102
73
127
54
172
140
127
154
160
117
125
93
121
125
78
109
148
109
104
95
148
150
110
177
162
96
115
168
145
76
108
148
144
143
119
95
127
131
78
151
120
128
177
88
109
158
131
122
147
131
102
140
88
122
160
78
140
119
49
54
122
106
54
124
126
110
129
126
74
146
88
106
100
78
107
112
98
121
107
154
144
117
81
68
125
133
54
143
83
90
102
109
99
147
168
146
116
172
87
119
101
133
171
129
157
98
144
219
114
96
92
113
99
116
129
119
146
153
148
79
101
106
102
120
62
135
146
138
82
156
87
114
91
54
155
72
141
144
149
127
98
156
95
92
158
91
108
67
190
115
54
115
96
92
99
120
54
125
83
127
110
121
54
68
94
81
117
98
133
147
92
81
108
108
144
101
89
87
107
92
125
129
134
115
103
74
108
87
54
131
143
123
81
105
158
116
158
127
146
115
96
158
122
125
132
110
109
112
105
109
148
80
82
76
110
105
83
118
54
79
98
208
170
112
107
127
95
141
113
117
106
102
100
94
94
101
95
177
81
107
112
121
92
121
99
74
148
101
110
113
54
113
78
105
95
54
125
82
110
110
104
123
138
106
81
117
177
97
93
158
146
151
110
95
177
82
155
135
143
102
110
106
96
161
103
90
65
81
113
100
121
168
118
145
120
78
98
155
139
88
92
180
73
123
118
139
152
115
101
117
131
125
129
69
133
106
146
131
144
96
141
98
81
147
133
110
113
131
159
104
49
142
101
108
96
178
106
119
109
109
96
127
83
95
54
107
156
158
145
45
96
111
90
59
162
108
144
74
122
147
76
107
135
106
112
111
85
61
76
179
127
87
97
82
76
143
93
168
164
145
149
91
54
143
95
102
134
117
83
132
103
77
125
99
176
134
116
111
129
136
98
67
101
108
189
142
107
121
158
93
148
137
124
152
78
128
110
172
90
112
115
117
133
139
121
149
148
98
88
139
108
102
126
93
120
122
114
104
131
93
137
107
112
110
167
54
107
151
77
59
102
83
101
75
148
95
120
133
99
97
98
85
69
111
190
131
148
105
177
126
95
154
111
119
69
127
107
100
112
105
88
95
59
78
124
128
115
86
98
95
172
158
103
92
117
63
83
61
145
78
114
108
131
112
95
105
68
135
131
110
54
166
165
143
96
153
91
102
184
129
168
135
119
155
145
123
177
123
99
111
140
143
131
101
98
49
157
116
133
95
144
160
145
95
78
97
179
93
96
130
102
179
160
154
136
74
106
206
125
122
113
130
100
95
161
158
95
153
102
102
90
149
153
142
67
133
54
163
158
137
106
152
105
116
106
105
145
91
94
108
148
59
95
76
82
70
81
112
142
129
149
101
54
103
114
106
73
88
128
59
104
116
106
102
103
106
142
108
111
61
135
135
113
135
125
108
103
83
144
101
140
151
98
133
112
74
137
158
173
112
91
168
120
122
108
134
76
131
54
97
93
107
143
82
54
54
133
82
142
95
136
105
77
148
101
102
96
135
106
140
167
116
151
81
81
102
87
95
127
99
113
108
133
151
102
148
92
131
84
54
114
130
135
109
102
94
49
107
82
142
62
161
93
158
159
132
95
54
104
49
124
108
141
87
89
77
139
108
89
192
113
77
139
139
117
124
102
101
108
49
132
95
100
111
103
156
129
122
125
131
124
119
136
80
135
110
172
141
108
118
117
158
105
120
135
133
162
54
144
102
96
134
131
200
127
116
177
110
131
87
96
111
177
100
90
177
59
88
112
156
140
84
154
83
76
119
108
59
140
54
100
98
144
101
125
112
141
54
144
102
117
193
115
144
107
148
170
110
138
98
100
83
87
83
161
54
102
115
112
103
143
140
81
121
98
123
121
153
125
157
144
170
164
137
111
123
74
96
137
126
59
49
103
116
160
113
166
161
82
82
154
125
147
156
100
141
105
109
93
154
125
146
138
145
95
91
74
113
162
103
107
134
108
108
145
151
143
135
122
103
88
108
190
112
95
91
118
138
205
93
95
94
106
115
68
99
140
81
98
54
146
140
116
104
96
156
129
78
94
108
168
148
90
128
85
93
78
135
145
93
132
119
54
108
132
112
70
95
101
102
98
104
103
106
156
138
143
158
128
134
104
131
145
136
59
153
74
116
74
155
102
137
139
149
102
103
120
95
103
140
133
92
148
115
179
83
136
131
117
112
92
112
203
103
225
115
74
135
128
105
84
104
110
84
133
165
97
69
126
102
126
143
81
76
81
155
92
154
73
124
113
156
172
135
112
140
106
54
133
146
165
133
103
92
108
148
128
90
82
105
133
76
83
74
89
139
150
122
128
101
133
134
157
106
83
102
163
171
96
93
140
99
109
125
91
159
145
76
81
98
96
126
107
133
113
103
144
111
167
113
73
112
121
132
85
105
125
107
86
157
146
129
130
115
74
108
131
95
143
155
59
143
123
103
133
89
118
90
144
128
147
67
117
108
148
141
121
81
102
162
113
139
59
105
134
110
111
88
102
171
146
98
84
145
136
115
143
106
148
99
149
172
145
84
54
133
156
92
97
105
102
146
111
96
98
59
100
82
90
119
110
54
177
101
101
78
81
145
116
100
140
125
118
97
106
144
143
67
95
109
54
110
107
131
108
99
80
133
68
83
135
105
111
115
100
138
161
132
90
116
126
129
77
124
136
166
115
67
135
149
108
113
142
69
122
127
141
144
113
117
76
95
67
109
111
142
99
111
118
109
103
105
103
150
78
98
125
115
123
77
103
123
151
152
119
139
102
100
78
113
110
104
158
167
140
144
185
170
121
104
111
59
106
147
59
160
83
74
112
108
95
147
102
54
81
120
127
128
147
171
95
155
107
131
159
106
138
102
81
76
119
115
98
138
130
109
130
106
160
110
74
135
140
106
54
140
167
126
118
82
102
116
89
67
134
136
108
113
127
102
102
165
86
125
129
125
150
102
90
115
167
100
141
76
97
92
113
105
81
133
138
96
175
90
145
109
90
87
108
102
145
166
120
96
169
87
120
119
107
93
65
54
93
108
121
115
77
122
108
111
115
98
148
154
130
125
103
107
123
76
101
54
122
67
87
87
129
54
113
138
170
90
124
114
146
116
94
102
94
49
131
120
139
148
91
85
158
74
112
89
123
113
142
95
135
172
88
145
138
98
78
125
161
125
59
111
49
95
121
87
154
54
74
95
143
110
105
125
112
99
106
100
126
177
128
83
125
54
140
93
89
84
198
102
113
172
133
76
77
140
108
90
117
117
105
95
127
135
91
127
101
108
167
108
108
161
61
90
49
83
112
98
120
95
160
61
100
101
95
117
144
77
54
135
120
94
163
134
111
108
131
93
143
143
103
118
99
102
146
119
87
129
104
139
150
180
139
102
126
114
107
95
82
76
95
119
82
116
104
121
158
107
49
158
156
121
137
93
71
59
101
118
103
101
99
94
179
142
108
140
133
125
81
128
148
100
134
134
144
146
148
42
128
166
155
113
148
153
114
160
110
125
102
142
106
69
130
96
180
144
146
131
145
121
69
157
87
114
110
127
115
97
120
119
135
90
131
173
126
116
148
139
140
54
99
113
112
108
93
135
113
151
87
177
108
102
81
106
129
80
98
108
112
110
86
108
145
128
112
135
144
96
98
79
128
122
101
93
141
87
107
145
98
151
133
96
95
160
157
129
109
140
108
84
85
166
54
102
109
121
95
154
103
95
143
119
77
103
143
110
68
134
85
102
102
118
103
108
81
76
145
129
78
138
82
128
81
137
144
114
131
101
173
139
78
127
103
74
125
95
137
101
108
90
92
90
85
113
91
98
100
81
136
127
131
165
128
92
101
95
98
102
120
116
81
148
70
112
102
98
116
97
127
98
129
82
93
125
97
142
98
96
83
54
140
113
137
95
147
145
76
59
118
98
101
49
102
83
104
128
114
140
116
143
101
92
54
113
125
154
109
93
153
110
131
133
95
101
99
101
148
100
180
86
110
118
82
128
82
78
114
67
83
105
120
116
87
108
91
125
123
134
180
124
135
81
127
139
142
93
98
124
146
97
82
54
139
78
103
164
159
103
123
107
142
103
106
171
80
90
154
171
88
155
103
147
74
76
116
107
111
90
141
85
123
133
144
138
111
120
104
124
83
102
59
129
83
134
98
137
119
161
125
163
115
113
148
102
78
102
101
116
134
90
113
137
148
109
90
111
123
110
110
150
122
176
108
90
135
132
104
107
139
111
147
97
102
115
109
54
101
94
98
110
108
112
111
133
80
151
74
99
104
136
151
98
172
98
95
105
89
137
139
118
106
144
45
102
108
98
128
139
100
115
125
136
96
108
124
188
127
139
81
149
103
97
121
124
125
112
67
107
116
54
111
96
131
127
104
168
143
92
83
104
92
154
139
125
147
113
54
126
153
105
95
155
108
127
87
127
85
122
140
115
94
133
102
138
109
134
131
117
108
158
123
144
105
74
74
112
102
76
89
121
113
138
95
116
130
125
130
98
81
49
80
115
141
54
92
133
96
67
149
180
108
103
159
128
97
100
166
120
166
114
116
98
176
77
125
96
49
54
81
76
100
91
125
115
102
158
78
164
120
100
151
148
139
157
133
125
143
106
128
97
119
111
101
105
54
98
108
90
122
121
87
108
129
121
102
175
115
135
42
106
152
85
117
98
103
123
137
138
125
120
157
91
136
59
108
91
103
177
129
54
133
105
148
85
102
102
142
74
97
123
129
73
98
125
129
129
95
105
106
102
113
106
127
104
143
98
125
235
85
129
118
93
82
99
95
143
95
49
119
90
118
129
90
133
134
156
130
83
131
134
89
83
103
54
54
127
113
93
121
95
54
131
125
143
147
74
74
111
54
102
81
144
108
100
131
112
98
113
148
113
119
117
116
115
95
108
129
79
130
102
104
153
81
107
59
193
129
131
97
84
131
98
54
116
91
54
120
139
128
155
177
145
95
106
116
76
129
183
145
113
114
109
114
102
151
113
195
108
98
118
125
83
129
141
104
103
95
118
80
105
95
100
88
101
115
102
115
81
128
95
108
128
148
110
74
107
104
129
101
114
131
77
54
173
177
93
150
121
191
59
82
118
78
122
96
137
112
113
116
177
172
102
162
103
125
102
54
54
137
105
158
118
105
87
91
61
111
102
82
69
120
103
97
123
135
95
124
102
97
85
95
85
87
101
191
125
125
133
115
154
98
108
113
129
54
62
129
74
117
90
161
130
139
83
146
136
145
142
93
124
127
135
125
78
149
83
125
145
103
111
161
135
108
181
154
161
104
144
120
148
98
122
185
158
109
80
132
119
149
93
193
133
130
128
145
146
92
147
124
145
95
59
110
116
123
112
54
135
101
106
79
49
76
151
128
80
140
144
54
115
91
135
129
78
144
109
115
109
98
77
105
153
145
98
108
82
94
144
169
108
87
69
127
74
114
141
77
132
101
149
106
182
108
115
101
69
93
103
73
90
123
122
143
133
102
104
144
113
78
79
113
122
95
85
143
67
111
102
132
104
140
133
81
147
131
109
145
108
83
115
136
138
129
144
143
87
127
155
77
49
78
112
179
126
122
83
182
118
90
95
159
128
108
115
98
101
129
103
98
164
105
148
111
98
129
74
49
103
148
81
87
149
78
83
68
96
145
129
105
163
108
100
65
149
116
96
127
105
137
193
129
127
108
98
98
85
156
154
118
124
171
73
157
95
82
54
122
120
108
95
61
108
145
126
54
80
170
109
148
154
101
108
98
138
98
106
101
49
148
184
97
108
146
96
87
121
54
88
124
108
156
91
126
182
106
105
130
105
166
161
178
144
86
201
154
102
118
133
108
102
145
164
93
118
151
115
95
165
93
49
194
120
179
102
159
137
120
77
156
127
133
127
161
116
104
135
54
120
111
102
159
141
84
90
113
179
77
133
90
61
105
74
135
108
96
107
116
82
152
49
174
133
54
121
199
95
103
96
54
49
138
108
139
125
120
135
107
127
111
148
134
108
95
146
145
158
103
111
112
92
123
141
156
111
128
115
161
83
120
117
133
78
77
148
81
105
131
115
88
98
49
160
125
133
152
127
98
104
157
110
108
79
111
126
114
145
101
113
59
139
104
102
65
131
98
82
160
83
74
92
76
102
98
108
73
129
54
90
109
87
140
99
105
161
127
150
132
102
140
136
108
140
149
115
90
87
115
99
158
83
81
98
121
96
137
107
129
129
59
114
124
128
77
97
118
177
95
179
119
108
109
54
76
141
113
91
45
92
103
78
102
83
163
119
108
112
97
141
81
180
104
108
83
89
105
128
98
126
102
114
135
110
123
194
74
107
98
156
130
124
109
75
95
98
81
147
143
171
142
103
191
109
102
136
113
115
97
77
59
89
77
146
104
129
121
98
140
103
67
129
128
95
103
98
130
54
98
133
143
125
148
108
90
106
92
160
154
123
156
77
126
97
69
102
108
193
103
81
133
143
127
126
108
110
54
111
100
156
148
82
106
123
152
95
149
143
143
148
103
129
126
126
74
126
104
78
133
110
146
109
128
142
81
138
87
87
102
103
59
111
59
174
115
106
107
121
90
100
49
114
131
67
148
105
115
125
129
163
106
91
118
102
87
80
120
119
149
105
113
123
93
81
90
132
92
150
104
97
123
125
79
142
97
148
140
148
157
103
128
130
90
108
90
141
100
118
74
168
110
117
109
96
113
135
149
125
123
103
177
54
102
110
123
82
146
98
90
83
122
108
144
108
108
131
141
161
140
87
103
144
140
95
74
91
109
108
102
107
65
87
153
102
123
122
130
92
179
100
95
98
81
127
67
164
113
162
128
147
112
129
116
67
74
74
98
155
82
108
91
145
110
54
151
148
123
159
131
96
93
128
158
133
95
125
98
177
139
119
103
101
93
125
54
146
144
98
141
90
135
172
105
130
96
114
90
121
149
84
113
143
131
128
144
151
158
116
87
139
131
90
103
123
137
163
120
148
145
143
135
105
49
148
49
154
96
70
110
103
98
172
155
108
155
139
85
143
82
126
130
129
130
96
91
139
128
201
145
112
127
69
103
148
133
186
98
98
108
186
131
156
102
148
102
83
87
102
117
146
172
111
49
61
108
100
105
102
95
152
143
144
150
104
122
103
81
142
85
107
82
95
137
144
108
198
154
111
144
98
68
154
115
144
87
142
118
54
80
95
108
154
95
102
54
127
126
54
54
78
128
126
98
98
136
179
73
194
144
79
124
147
90
152
100
122
131
129
151
78
133
128
129
177
129
131
168
129
124
98
95
142
70
148
118
146
179
127
99
123
103
98
86
115
54
139
61
111
110
150
102
131
130
108
128
54
166
148
79
128
102
135
103
135
148
131
132
59
98
139
93
114
139
114
122
127
87
132
102
92
54
133
122
105
67
102
102
120
129
116
59
108
143
177
100
123
78
76
117
79
110
122
73
133
90
81
154
137
90
89
108
54
54
105
95
74
151
99
116
117
74
149
146
105
109
74
101
115
74
101
133
95
119
103
125
146
128
98
161
110
128
109
105
105
119
95
95
113
127
92
169
134
129
141
103
122
112
92
125
74
68
96
83
116
125
138
127
148
122
159
140
123
122
110
97
129
102
150
103
119
116
160
90
106
91
96
123
105
139
49
105
83
123
49
103
117
148
99
133
147
144
76
123
102
90
118
85
163
106
118
115
155
98
113
167
151
76
77
125
143
118
131
81
98
148
125
82
114
111
145
161
137
138
149
118
145
98
103
54
120
98
87
97
143
94
112
95
134
95
102
54
87
93
125
103
59
141
128
100
104
154
133
135
82
136
114
124
184
121
110
106
146
155
107
95
86
124
74
116
102
130
141
94
141
168
161
77
115
162
110
146
96
103
108
97
155
103
171
123
100
89
90
108
95
100
135
98
96
160
165
105
116
87
138
162
137
108
138
122
179
112
54
142
137
127
49
112
107
103
98
105
74
156
107
74
107
95
61
81
139
80
107
132
153
138
116
125
138
205
121
100
97
151
97
129
137
125
125
125
108
125
101
140
152
139
79
143
132
105
93
93
131
81
85
133
131
166
81
148
108
49
133
118
98
157
84
149
85
123
190
185
125
127
122
148
81
102
145
108
54
125
82
141
103
117
112
59
115
115
105
116
77
108
114
93
74
127
134
99
101
54
54
95
113
168
115
161
112
106
125
86
143
122
133
102
153
95
128
196
102
129
99
105
117
125
95
133
138
123
73
168
77
129
106
140
105
91
144
131
180
94
101
84
160
193
117
123
177
135
180
97
104
127
54
77
140
108
140
119
144
138
129
130
126
102
102
126
131
83
156
102
131
97
102
109
128
82
98
156
76
119
95
149
95
54
49
141
70
118
142
109
54
122
144
124
116
132
146
99
123
112
115
87
76
63
102
109
148
57
108
125
90
67
103
54
105
114
108
89
148
121
131
149
104
123
74
146
81
139
110
116
143
128
151
74
126
131
194
95
94
118
107
108
93
113
96
95
122
142
132
142
139
54
115
109
101
81
123
136
103
49
156
85
122
151
109
138
108
115
112
103
82
144
91
115
95
154
87
105
134
112
152
138
124
68
88
85
108
124
103
107
103
87
151
133
120
101
127
149
59
81
142
102
123
120
148
54
102
112
166
108
137
88
54
128
49
123
146
90
111
143
83
135
144
122
209
134
108
108
144
115
102
124
131
95
102
129
49
96
161
87
116
54
135
150
83
160
126
122
107
155
128
102
142
147
77
83
168
177
165
109
125
109
111
129
54
94
105
162
87
95
82
80
111
96
134
150
67
138
107
68
61
145
74
122
131
106
113
126
92
107
105
111
115
156
108
102
112
143
152
105
125
87
122
146
84
122
134
117
153
96
135
83
123
96
138
81
163
133
99
106
147
119
80
143
124
98
140
109
173
108
78
158
111
147
107
191
109
161
151
129
154
191
153
145
138
92
98
168
126
79
54
104
95
97
120
127
75
69
95
123
89
143
109
141
168
138
113
123
126
101
120
54
168
101
87
141
93
143
137
111
59
156
133
135
87
114
98
74
130
158
149
132
102
158
98
126
54
133
170
144
93
129
106
111
102
83
104
54
95
108
148
108
108
123
111
102
80
130
137
178
102
108
142
87
135
117
114
130
142
108
87
90
90
180
98
167
113
179
108
83
81
92
134
126
160
110
95
111
108
113
148
121
200
122
97
81
133
140
128
97
200
139
102
118
103
99
91
81
125
127
84
54
139
125
82
109
82
125
116
83
49
107
87
108
123
87
131
77
133
98
177
133
125
125
128
140
54
98
137
54
103
115
99
123
144
121
117
111
95
113
156
62
102
54
81
111
108
98
74
95
138
134
123
116
103
54
112
138
76
118
141
95
120
96
117
97
142
135
95
169
104
142
87
137
144
126
76
115
139
76
159
78
143
199
177
125
54
93
133
158
49
112
113
127
108
70
118
111
59
134
100
61
113
100
182
184
77
140
120
143
143
108
174
123
96
126
108
146
83
108
167
81
103
102
108
128
167
108
101
81
95
128
97
103
130
81
77
82
116
81
81
95
54
127
130
92
90
108
112
107
78
136
127
127
113
125
95
127
59
61
119
97
141
127
106
99
103
124
80
125
118
95
121
148
131
172
98
115
162
144
103
87
119
85
133
91
163
129
150
102
93
128
118
143
165
106
117
125
130
95
107
129
95
158
102
102
94
149
133
125
105
91
140
54
102
74
105
81
113
49
83
180
171
108
129
133
114
90
162
159
108
100
49
81
81
141
137
139
93
139
80
97
93
49
133
95
111
133
112
102
97
121
145
108
108
114
130
117
134
125
120
101
93
120
49
101
129
150
103
165
95
102
115
85
110
96
141
103
143
66
145
118
124
73
162
108
85
109
98
114
148
85
147
140
96
124
103
131
148
128
155
125
149
136
116
103
128
114
128
102
109
159
104
59
116
173
105
112
154
120
114
74
154
117
85
116
97
102
142
96
74
142
84
93
119
119
127
141
118
54
150
125
135
177
148
131
120
120
198
123
145
106
140
102
61
111
82
135
98
94
119
108
109
143
158
105
134
111
152
72
76
102
94
161
161
112
122
97
68
49
93
95
137
138
149
101
143
54
105
79
117
118
157
128
141
127
177
145
87
113
123
98
139
100
155
147
98
131
103
121
81
59
87
113
100
141
108
144
126
112
128
119
102
74
90
105
112
146
115
134
108
95
140
59
91
109
127
98
120
49
143
144
144
89
113
113
159
142
54
113
84
135
103
95
167
97
121
73
92
101
79
102
98
49
118
126
86
97
138
96
144
107
99
125
77
172
89
152
68
99
109
134
140
102
115
74
116
128
150
106
129
108
110
146
127
54
161
118
95
139
91
140
136
136
80
101
102
98
117
112
74
122
122
91
110
158
137
99
94
120
131
104
92
54
98
137
61
80
101
96
94
129
93
125
108
109
76
128
98
97
95
156
142
113
174
143
54
143
148
106
137
132
116
148
83
118
146
129
103
88
140
172
122
116
97
49
117
140
115
95
228
112
131
129
164
133
121
144
124
54
177
108
121
126
105
98
139
147
125
67
118
78
101
97
82
108
77
96
49
78
120
114
153
137
81
116
78
123
112
115
151
78
74
120
105
108
95
108
97
59
125
116
108
108
113
93
74
135
190
54
119
129
166
128
91
168
108
82
78
129
120
102
107
87
82
89
175
146
101
89
158
111
93
83
95
108
98
124
119
128
113
133
76
128
105
77
148
77
81
81
172
154
140
131
65
126
125
98
102
118
94
126
98
95
91
130
127
119
78
115
95
104
149
90
110
114
173
114
93
136
117
179
143
117
98
109
103
130
101
124
90
105
131
104
124
146
97
108
133
59
113
101
137
102
98
99
146
117
111
115
114
101
134
155
155
140
167
152
123
110
133
122
128
130
143
142
132
147
111
146
172
104
93
134
74
74
111
125
186
122
173
132
180
81
147
130
59
139
102
99
85
167
157
153
67
106
54
77
126
125
54
112
77
108
95
116
116
134
67
179
84
140
85
173
158
135
139
109
113
125
144
92
157
106
96
102
93
127
96
95
140
108
49
131
96
139
59
68
120
87
77
54
129
113
109
150
128
108
103
146
129
150
125
98
122
139
135
160
113
157
120
125
128
122
153
112
148
70
87
94
89
112
146
124
95
78
102
81
59
103
122
122
108
93
120
122
143
54
130
106
78
136
81
76
83
100
80
49
150
96
74
143
115
105
90
101
169
95
149
120
96
132
100
181
170
143
161
105
169
121
216
107
158
80
102
98
90
137
109
54
119
145
101
85
119
167
134
110
125
111
81
140
120
108
134
103
128
134
158
112
146
118
80
54
120
127
108
142
128
110
132
54
162
178
123
108
143
94
100
96
139
107
81
102
132
130
101
89
143
123
131
117
108
102
125
49
186
108
49
160
125
149
89
128
122
113
120
120
127
134
90
99
89
126
45
134
87
83
92
91
83
105
108
128
128
82
89
97
117
115
143
120
135
108
84
80
116
141
115
95
103
97
92
168
120
117
130
131
117
126
128
116
156
98
90
92
140
82
133
85
125
95
140
107
137
133
81
102
119
117
102
108
189
164
95
87
119
67
128
144
91
177
89
87
84
83
180
103
108
148
108
109
135
176
108
140
144
156
106
89
139
165
144
103
116
135
87
146
106
90
147
135
128
107
125
88
128
145
135
128
140
113
106
108
87
112
78
83
117
121
113
90
106
143
139
128
105
147
92
54
98
102
140
93
76
103
145
163
109
138
123
130
148
82
87
84
81
73
137
54
152
127
156
89
144
98
87
135
98
129
78
134
106
133
73
54
108
157
145
119
123
146
165
81
111
147
126
167
103
135
162
120
140
116
103
174
133
95
76
77
87
96
147
130
163
98
108
100
135
121
105
87
132
119
82
54
102
125
91
122
76
102
104
146
95
155
158
128
91
169
141
157
49
200
134
106
150
103
125
74
101
150
87
49
102
139
102
148
81
115
127
109
81
91
135
83
91
89
97
105
77
87
87
134
115
106
128
81
86
113
54
100
108
112
100
157
193
113
105
94
166
123
128
83
99
80
131
147
191
101
112
143
128
133
194
90
59
153
153
148
103
54
121
98
131
67
76
134
127
96
126
97
106
114
100
125
138
103
96
110
144
112
137
89
76
125
193
124
92
146
104
84
95
138
128
102
84
126
118
118
102
135
136
101
120
110
124
85
97
150
132
136
93
78
76
141
113
54
125
113
79
109
113
95
93
95
89
93
106
90
148
157
85
89
116
97
77
144
134
96
135
116
68
113
131
108
156
96
92
111
105
114
144
141
151
95
90
163
80
162
165
113
104
134
158
109
120
113
133
143
112
137
135
120
95
105
112
54
119
49
160
158
98
61
105
148
165
135
126
102
103
95
200
54
108
142
156
144
102
59
111
154
87
45
132
123
54
109
81
89
93
150
110
98
123
188
101
102
102
78
120
82
76
155
145
85
165
81
95
108
81
90
115
115
144
121
158
155
125
95
121
121
148
101
101
106
95
123
113
100
114
62
76
118
112
109
124
124
73
134
148
76
104
115
140
144
54
135
158
108
146
148
153
130
102
74
129
113
108
131
87
87
109
99
115
193
114
161
110
113
82
93
83
72
177
136
106
141
61
81
159
142
105
83
110
125
61
133
125
144
110
104
124
132
107
128
148
121
95
103
118
165
131
190
156
155
134
100
49
100
116
85
131
119
111
67
190
89
129
92
139
113
82
177
49
128
144
68
124
54
134
111
86
156
120
97
112
193
131
102
93
153
130
95
79
119
143
97
111
95
149
178
84
82
131
54
68
104
93
100
86
86
95
98
69
84
128
65
146
132
119
95
115
157
89
206
175
102
127
178
102
93
99
106
54
115
133
89
185
144
119
127
101
106
100
105
159
131
54
59
93
105
110
108
105
103
155
124
54
98
91
68
133
98
158
95
139
102
102
113
65
155
82
91
121
108
156
76
108
95
185
152
105
88
148
89
162
152
96
149
155
147
49
125
104
119
129
133
107
140
122
75
98
98
118
160
104
150
45
118
93
120
113
79
107
119
97
120
180
124
126
54
149
146
103
93
107
100
102
154
93
144
134
91
102
49
103
49
106
87
128
135
79
129
85
126
139
130
185
108
133
102
93
103
125
101
143
98
194
128
156
113
95
168
140
77
146
149
148
160
95
96
129
125
143
148
103
122
127
130
80
157
108
74
61
98
105
164
112
138
136
129
147
134
102
87
100
122
90
116
59
90
54
130
104
100
90
76
108
177
134
133
117
137
100
54
204
131
146
137
68
126
83
83
102
139
96
83
98
131
125
80
89
135
104
59
133
182
148
90
134
169
121
98
98
109
95
125
127
168
104
99
115
113
98
109
144
72
158
147
108
108
148
103
125
81
116
167
102
92
165
140
101
145
106
153
119
111
98
115
127
129
148
111
113
135
137
67
148
77
93
140
138
108
138
90
109
104
112
95
160
143
104
153
168
54
94
119
129
98
149
172
140
169
102
67
105
129
94
125
101
159
95
130
63
123
106
127
143
125
177
95
131
116
107
105
103
121
144
54
107
122
122
108
54
159
116
122
159
116
127
78
97
123
157
130
139
146
153
79
156
106
146
74
122
128
54
106
170
129
69
139
135
115
133
102
108
108
97
87
140
161
107
92
97
83
127
150
95
106
108
49
91
100
87
137
112
94
97
79
54
167
101
129
127
115
151
54
61
89
124
135
148
152
127
108
104
98
108
177
150
165
122
97
105
118
146
99
148
122
94
106
143
84
67
102
129
112
160
107
95
148
150
77
120
89
120
132
119
118
106
102
158
102
67
158
103
165
120
108
124
148
128
95
124
113
122
125
95
90
127
102
163
107
113
102
107
124
120
178
180
81
54
116
135
125
149
78
99
122
128
83
126
115
131
113
170
138
72
144
118
82
96
92
77
102
100
108
115
148
109
80
91
54
123
103
81
113
107
146
140
124
129
137
113
76
131
168
123
120
74
86
49
59
102
133
95
106
95
126
81
139
93
143
159
114
124
112
177
108
95
67
110
113
128
77
54
100
133
98
113
76
132
138
116
108
106
112
97
156
103
81
113
145
105
105
114
158
165
95
108
109
115
106
111
177
105
54
93
98
85
59
147
93
54
54
144
155
117
104
115
98
140
168
137
107
99
131
155
133
83
106
153
98
153
125
81
74
95
119
131
139
116
45
113
117
190
167
93
116
104
108
148
83
90
96
147
76
140
143
95
107
151
133
96
117
103
115
165
83
54
108
154
171
94
92
184
109
86
179
85
83
89
144
74
117
108
153
111
80
151
78
132
115
102
127
54
94
161
150
162
99
113
110
130
108
128
143
163
113
107
86
87
93
82
104
108
186
116
93
59
102
141
141
102
158
113
157
87
155
140
115
104
82
49
106
129
54
133
108
105
148
87
106
95
191
124
82
93
54
111
102
77
113
118
81
92
97
105
59
106
83
128
127
193
126
92
89
142
131
156
128
93
54
112
167
119
123
74
112
107
133
130
160
108
125
108
87
110
128
158
107
117
172
129
116
108
113
132
141
108
121
128
92
179
76
155
96
141
128
109
105
110
90
54
88
128
138
190
87
82
100
125
116
98
54
108
134
94
102
110
87
83
81
158
133
87
104
101
79
149
101
118
165
95
102
134
92
110
101
173
102
87
121
119
123
81
131
95
103
170
119
128
94
95
122
103
135
104
102
140
149
118
84
96
140
123
119
137
98
148
114
141
139
162
102
165
76
124
115
160
169
119
108
112
134
119
177
107
158
142
151
96
81
87
108
101
54
59
95
159
145
95
133
127
88
90
151
125
81
100
102
149
132
135
90
101
49
54
81
102
49
125
146
77
77
105
76
137
176
103
127
127
144
82
122
94
131
131
141
102
105
54
135
128
72
108
78
156
102
103
105
119
107
54
115
165
148
114
125
113
114
133
116
142
54
125
112
98
149
186
149
109
95
168
105
70
65
157
76
104
73
94
95
54
108
121
116
103
108
104
111
139
147
124
98
106
95
151
76
155
106
95
132
95
129
115
108
76
112
77
125
108
86
139
49
121
105
118
185
76
92
98
74
158
106
107
95
65
91
116
98
100
91
77
92
91
127
124
103
142
132
87
120
124
105
54
131
140
133
105
168
139
102
114
135
149
102
127
104
82
158
74
54
109
116
134
98
98
73
83
95
190
107
148
95
115
136
103
200
143
145
102
110
81
135
100
83
135
147
115
161
95
98
104
112
96
102
61
94
54
126
155
99
78
68
172
116
132
99
107
98
107
90
77
146
95
102
74
87
133
85
74
45
115
104
67
92
49
92
122
150
135
108
131
147
101
115
143
59
133
100
121
106
133
144
146
87
141
158
78
120
135
127
67
78
59
85
112
115
177
177
133
138
130
96
114
138
107
134
106
144
158
111
83
135
73
118
135
176
194
113
145
192
125
102
127
99
136
124
120
180
79
138
129
135
54
99
119
118
98
148
128
142
103
108
157
108
144
118
140
102
120
83
90
109
110
98
54
156
130
122
102
108
54
142
102
102
131
82
92
143
127
95
139
151
108
147
87
108
93
104
168
138
149
131
111
116
135
102
63
97
102
113
158
140
128
49
114
49
95
160
120
131
147
123
148
80
119
94
98
103
122
108
95
59
54
82
131
115
135
155
165
146
77
90
83
93
85
90
148
99
93
155
123
117
98
81
145
168
98
165
96
140
112
140
185
180
153
135
154
113
80
97
130
59
106
113
148
113
98
108
177
122
122
115
83
102
112
153
107
110
85
86
110
99
103
146
110
68
108
59
69
107
79
92
148
113
129
145
191
120
125
126
98
160
82
72
141
69
100
114
145
92
125
134
141
128
110
131
112
102
121
123
126
130
95
101
121
106
131
143
83
68
116
97
146
122
81
112
90
84
96
144
129
98
108
96
129
112
90
140
77
147
81
96
129
128
143
135
99
144
99
96
177
138
101
166
74
156
107
81
90
144
190
76
49
116
54
89
131
106
105
104
120
93
156
146
116
93
54
112
98
106
116
87
73
116
103
96
54
148
127
143
95
76
108
133
102
94
130
135
92
135
140
140
143
94
110
107
74
136
68
132
188
151
105
108
82
96
82
99
143
113
109
98
99
92
112
132
131
95
184
59
98
148
68
96
96
98
115
113
153
81
113
123
106
54
113
165
54
148
128
85
120
198
108
115
87
54
96
118
61
106
67
117
141
95
81
122
144
78
98
87
88
122
54
102
135
108
106
119
83
108
126
139
112
128
124
92
82
124
122
140
99
133
143
94
122
136
97
160
89
95
149
103
105
79
132
54
67
113
107
143
91
124
98
77
164
102
110
147
96
149
155
157
61
117
124
105
77
144
135
95
131
144
102
101
67
125
85
128
158
120
98
103
114
100
101
77
81
105
108
123
139
54
121
113
101
49
143
98
111
108
106
122
90
99
200
143
89
103
67
143
125
81
54
177
172
76
108
116
93
49
171
78
125
106
102
108
74
142
120
59
120
118
73
112
153
144
90
96
131
54
97
90
100
123
108
144
129
77
105
105
106
90
74
57
122
83
206
89
145
93
126
118
95
139
61
106
170
128
54
103
131
49
98
91
141
87
134
140
102
118
102
108
106
150
54
49
143
74
89
118
124
107
103
138
96
106
82
108
59
121
149
138
113
108
65
116
193
175
93
127
108
145
116
102
128
89
127
132
54
151
103
84
144
108
122
90
90
54
125
54
124
54
59
92
59
136
108
74
91
128
126
137
133
91
107
108
117
150
85
76
113
150
95
118
81
148
127
82
110
128
125
129
90
102
146
128
132
49
157
106
140
95
149
110
189
114
99
121
148
117
134
123
121
168
74
127
109
81
116
111
122
104
95
112
98
98
133
173
54
59
137
91
131
85
145
123
82
76
92
120
138
114
117
98
81
146
133
98
141
101
76
123
138
108
81
103
68
133
187
132
104
103
105
121
151
136
104
100
157
148
102
184
54
112
82
61
99
116
128
110
130
127
76
121
141
98
124
139
116
133
102
87
110
146
164
155
82
98
134
116
109
92
129
141
90
95
105
169
108
105
161
128
81
126
108
105
106
115
131
150
180
158
108
108
130
77
127
143
74
108
158
104
101
69
91
179
59
76
113
155
105
131
137
61
145
79
135
141
168
74
112
113
134
54
49
120
102
98
144
90
117
135
110
96
90
127
95
125
165
102
138
61
49
110
61
123
93
123
124
126
119
102
81
129
136
165
103
67
150
122
105
77
95
74
123
56
82
158
173
180
78
76
106
127
81
127
125
177
109
68
164
156
103
116
131
103
143
98
82
101
165
122
135
86
151
116
92
109
141
138
145
102
97
108
140
177
100
105
95
125
133
93
194
157
177
133
85
199
119
100
98
166
88
135
159
99
116
142
150
102
127
98
108
164
91
85
138
168
108
127
110
129
108
120
54
122
129
110
88
100
54
74
121
97
184
153
145
126
91
135
90
168
151
103
112
79
133
124
95
102
98
73
197
102
125
120
49
129
177
96
117
85
49
74
103
143
157
54
108
81
87
172
95
140
54
90
133
80
90
143
137
109
102
54
99
85
86
105
95
113
94
146
163
92
59
110
148
143
91
99
94
83
129
49
139
102
54
118
110
145
114
130
120
145
129
87
138
102
128
157
81
77
120
102
125
108
108
93
103
141
123
108
151
128
155
130
97
156
150
120
76
54
109
133
77
98
182
126
108
59
96
145
112
135
191
87
149
143
78
95
142
146
118
137
144
97
95
92
93
159
118
87
154
90
87
106
108
90
106
96
125
76
120
92
98
94
128
173
102
101
68
134
116
68
172
113
89
116
115
141
108
95
143
105
102
112
128
151
119
78
123
100
110
112
118
132
81
82
99
102
76
49
100
113
126
77
147
110
89
139
124
108
172
78
154
113
162
130
114
141
138
118
124
123
113
86
161
134
174
134
86
133
54
125
139
54
82
103
122
126
115
54
105
115
108
121
134
83
108
76
113
144
92
119
102
116
92
108
156
91
118
78
98
92
137
102
98
116
73
82
119
153
157
157
86
84
118
105
49
95
147
141
158
91
153
54
95
129
120
112
154
120
82
105
118
108
96
179
56
115
110
129
122
102
140
109
95
100
54
147
102
108
131
114
157
114
81
93
177
97
107
128
158
128
147
105
193
75
77
162
137
133
129
93
138
103
151
156
90
141
103
148
124
119
110
74
131
81
146
145
114
90
120
78
54
183
54
136
76
120
93
54
54
102
139
120
105
95
133
89
159
92
104
135
154
125
76
146
108
98
110
136
90
116
157
129
83
130
118
152
167
132
80
54
151
98
54
124
108
114
133
94
130
167
150
123
90
103
103
119
98
81
110
128
118
87
159
118
102
78
87
76
94
118
124
95
146
77
158
117
98
93
164
148
75
113
76
67
95
134
164
133
159
149
131
120
128
118
110
118
135
92
126
175
138
90
54
188
95
139
145
91
87
130
124
120
113
59
59
131
148
153
163
128
161
85
151
133
102
96
123
133
129
92
98
87
113
145
128
131
132
129
95
49
146
95
77
101
150
95
94
82
139
81
186
107
161
115
94
54
120
91
158
115
80
78
121
147
115
138
158
119
97
123
149
110
194
138
120
123
175
54
135
158
54
140
161
108
94
83
158
74
144
98
128
95
82
129
125
110
68
90
128
90
157
102
113
112
98
54
95
54
134
111
90
128
125
151
54
95
93
49
54
106
105
145
90
101
88
177
74
113
125
77
105
118
113
85
125
99
138
110
85
82
78
177
118
54
133
104
102
165
160
127
114
71
90
156
108
113
137
87
82
54
133
143
102
130
49
151
54
77
83
104
169
74
80
110
101
67
115
93
112
67
95
116
144
140
164
133
121
143
98
84
136
49
134
127
83
107
105
92
74
108
103
135
144
109
120
118
117
74
81
194
80
107
95
149
143
84
137
103
144
128
125
125
148
92
136
123
80
144
95
160
108
95
93
112
143
130
93
81
54
76
148
106
155
102
135
87
191
107
121
102
131
81
82
103
129
141
108
65
67
105
150
108
97
118
125
119
101
107
120
149
118
155
117
158
95
136
49
138
108
137
158
138
81
96
133
162
81
147
148
125
124
54
83
146
102
117
117
82
104
121
149
80
105
129
121
123
95
98
179
149
140
125
85
136
125
111
92
155
103
125
97
105
118
87
106
165
148
120
156
126
98
113
103
123
96
109
103
144
159
97
145
87
113
148
109
106
121
129
101
90
102
98
109
120
123
108
113
125
104
90
110
83
129
97
138
98
59
111
80
165
120
93
78
82
112
131
102
65
115
123
126
116
141
85
159
82
131
65
94
93
69
81
148
127
98
76
98
93
119
90
128
102
67
134
102
125
98
128
146
95
145
119
49
140
101
96
96
102
99
160
85
177
49
122
98
148
102
120
108
126
165
123
160
103
141
126
86
87
138
54
158
123
74
139
54
128
107
120
105
98
175
104
111
104
146
126
119
135
108
100
194
108
163
103
77
118
98
156
133
82
87
123
54
149
127
170
107
101
135
107
104
108
115
107
135
167
107
157
119
54
115
83
122
87
190
118
133
98
54
110
177
123
126
110
103
125
101
119
131
115
103
93
167
82
125
143
107
77
49
77
111
148
193
77
144
102
108
90
154
129
145
129
93
168
102
96
108
125
133
131
74
127
145
95
99
127
123
89
122
54
102
134
128
146
158
113
91
74
95
168
105
106
67
108
85
156
98
112
113
144
144
54
172
120
76
126
120
112
148
146
190
95
96
113
94
113
118
177
95
139
161
73
159
75
127
142
160
98
93
117
105
110
89
122
100
96
147
128
123
80
140
98
61
198
132
89
80
201
128
107
110
120
152
115
77
108
116
103
143
146
95
90
140
186
103
143
168
158
132
114
59
78
109
149
89
115
99
97
116
127
87
98
121
100
123
135
149
173
108
145
115
107
94
118
148
95
117
112
102
119
146
102
85
99
151
142
106
67
113
139
112
135
96
90
131
108
122
124
81
117
133
105
137
151
129
59
137
109
135
81
109
59
144
95
83
141
102
102
104
108
108
143
111
124
49
108
137
86
154
149
135
97
93
125
80
101
95
111
74
128
132
109
97
90
74
138
87
123
149
108
119
107
59
153
59
125
104
132
101
169
102
90
101
108
90
212
172
105
119
94
88
82
140
123
149
131
115
92
109
140
135
119
160
140
79
98
129
49
118
119
54
95
119
180
119
100
114
145
130
54
150
155
140
54
93
76
144
54
67
121
76
134
113
173
117
129
120
54
117
122
127
130
97
131
106
168
123
61
103
163
104
105
137
145
129
145
137
181
113
95
54
61
132
127
135
150
133
157
95
81
113
80
146
99
137
172
139
99
133
85
116
90
124
153
114
133
78
67
105
107
103
159
61
107
145
102
145
98
104
95
125
100
103
113
179
81
107
107
84
59
123
128
111
82
86
155
119
159
108
86
120
113
150
107
54
106
80
144
168
172
133
87
104
148
154
136
154
142
120
177
91
126
128
139
98
144
172
163
87
143
131
143
154
95
98
77
76
107
143
108
107
96
83
108
135
87
149
109
127
54
154
132
99
123
54
59
126
95
94
137
146
138
111
126
67
145
68
159
94
119
129
124
127
110
54
130
98
95
173
108
109
143
138
87
143
180
157
81
54
100
158
112
145
132
141
172
101
81
122
87
101
124
96
134
126
105
125
133
140
129
102
128
91
97
61
98
108
120
103
98
102
124
179
78
77
158
128
131
109
102
112
178
91
153
116
176
122
122
168
128
98
132
102
175
144
167
100
88
112
69
126
74
77
148
125
95
147
102
54
125
100
59
82
54
92
108
133
124
72
120
142
128
132
103
159
148
95
98
93
97
148
90
127
125
112
117
105
85
100
108
123
140
128
113
66
139
169
105
158
114
126
67
67
102
116
124
122
114
143
131
95
85
97
81
137
90
142
186
108
110
127
143
98
105
124
227
78
120
128
136
79
54
77
124
158
179
84
134
93
139
181
119
108
95
59
160
163
121
149
139
102
97
97
144
89
98
49
54
92
145
154
108
108
59
54
146
118
127
118
126
116
116
108
184
127
135
95
115
134
90
117
49
116
108
125
83
103
95
108
151
113
124
97
74
97
54
87
97
131
54
74
87
102
93
150
95
120
122
89
158
59
134
124
125
98
83
125
146
126
121
105
123
123
129
67
144
120
108
119
145
102
102
91
102
106
94
101
101
145
57
148
113
128
134
158
131
129
98
145
143
83
122
106
182
103
78
54
108
126
126
103
59
152
130
163
125
131
120
97
101
108
139
103
108
132
148
137
107
94
121
102
135
106
69
108
167
54
125
112
124
119
49
105
98
148
87
90
128
98
123
74
105
102
87
90
123
122
107
104
194
135
133
95
128
147
125
114
144
169
118
102
102
120
99
105
102
103
145
130
139
103
113
139
129
115
54
79
90
103
59
135
78
102
146
111
118
103
79
200
145
131
173
103
128
76
113
127
177
78
95
99
130
108
144
144
170
83
98
111
128
112
132
119
152
128
86
108
98
161
108
112
67
83
130
76
133
167
95
101
106
155
154
95
103
99
76
54
95
164
157
136
135
77
142
102
140
94
120
96
156
116
54
100
98
95
113
131
99
107
94
124
125
98
54
85
91
137
100
106
126
86
90
135
54
149
76
125
79
102
101
132
102
103
139
137
147
144
84
141
112
111
138
123
142
116
116
138
107
130
49
118
99
108
124
118
87
131
133
68
99
143
180
54
134
100
106
133
98
119
108
68
131
102
144
95
131
102
125
59
129
120
92
96
54
54
106
138
98
112
131
123
110
90
106
95
83
131
108
152
131
109
102
68
85
153
97
82
106
141
116
99
54
120
113
106
98
143
77
156
127
110
148
125
184
111
152
144
91
132
148
103
128
150
93
112
77
149
111
83
112
49
113
168
131
102
54
141
108
126
102
153
105
170
102
103
77
54
108
102
49
84
87
247
118
101
102
81
120
110
125
54
87
115
112
176
123
91
92
139
102
54
141
146
117
80
181
120
91
171
138
135
129
81
94
133
96
78
68
95
144
127
114
97
61
110
148
122
82
143
109
144
102
74
98
123
98
116
100
114
69
91
102
103
87
144
152
95
154
140
87
83
123
124
109
113
125
138
107
148
102
102
95
121
129
54
96
119
184
163
145
136
54
90
106
77
126
106
73
96
157
125
108
87
159
158
117
145
102
181
104
111
95
68
143
77
82
61
94
77
122
94
78
130
108
105
134
119
73
80
84
103
107
113
95
142
98
95
113
148
67
161
91
123
85
94
49
181
80
90
118
130
185
153
54
130
105
141
108
138
95
78
146
74
103
85
135
108
99
114
95
158
158
128
129
211
104
131
132
136
54
123
54
126
113
110
49
110
128
94
102
135
82
131
90
141
77
133
81
124
106
137
122
158
167
134
90
108
151
88
164
181
123
120
151
93
127
75
118
145
112
146
85
54
124
133
153
109
113
154
127
110
164
218
49
103
151
122
116
123
102
133
69
104
165
67
49
126
118
103
122
158
102
177
132
77
118
118
128
121
191
82
107
108
115
136
213
111
131
138
100
133
101
102
135
108
105
115
127
96
122
106
108
110
153
179
147
91
161
129
118
116
158
158
131
120
108
143
121
90
158
54
145
108
114
96
127
110
147
54
148
125
95
87
87
95
49
124
102
200
93
102
80
125
133
131
111
120
119
77
86
97
141
106
156
114
140
119
171
161
119
74
141
99
91
111
77
169
117
117
54
148
79
77
80
133
108
148
97
134
89
125
87
176
82
87
158
145
77
77
125
156
54
155
144
92
123
154
90
87
153
108
128
149
149
68
78
108
113
129
135
54
69
78
81
98
69
54
103
105
113
102
103
112
86
165
98
102
216
95
98
158
84
81
123
116
81
129
167
140
153
59
98
154
131
98
121
131
97
77
54
118
81
131
103
132
148
119
95
105
133
142
156
180
121
133
128
107
146
188
138
135
118
108
149
106
120
107
146
126
102
144
114
111
116
54
122
129
95
115
95
90
91
110
69
93
81
108
103
125
120
135
144
130
155
141
124
119
216
137
148
148
137
109
107
115
67
131
128
120
102
155
121
118
115
147
95
182
162
129
105
103
95
125
95
115
102
101
122
103
139
108
95
131
158
132
177
103
103
119
190
82
171
108
109
74
109
97
116
98
82
133
128
113
83
87
131
125
122
123
95
106
124
149
110
112
54
144
126
151
128
147
115
99
96
96
99
103
103
54
106
116
98
77
182
106
56
89
157
93
79
105
88
155
113
114
97
164
128
94
143
129
138
49
147
87
122
118
102
120
144
57
120
99
109
156
131
148
81
125
163
131
87
101
108
118
94
135
129
108
116
96
61
121
131
115
93
91
96
155
161
148
108
141
108
128
107
82
93
148
108
116
75
161
123
142
144
110
108
105
78
181
97
134
123
93
108
133
163
130
133
111
132
141
152
108
107
70
132
118
118
112
123
133
98
82
81
202
89
116
148
103
74
167
144
116
77
134
131
200
155
135
129
148
186
74
125
125
119
111
145
128
85
98
114
105
116
103
81
101
136
98
147
59
179
109
103
124
144
95
105
82
133
118
74
98
125
99
156
129
132
131
102
120
144
130
126
102
186
139
147
113
146
124
73
126
100
120
112
165
54
137
90
147
116
113
93
77
129
158
101
113
84
98
115
127
112
119
93
81
163
149
54
142
166
163
167
130
138
109
127
146
117
141
92
92
103
172
141
54
107
92
129
71
144
142
129
54
112
91
138
90
78
94
59
137
110
99
154
126
150
148
82
125
129
87
77
87
98
153
145
122
170
119
116
95
125
140
85
106
111
118
93
104
158
112
139
127
74
112
125
85
93
138
85
95
146
143
135
128
54
61
115
159
90
168
143
93
59
108
49
114
67
127
113
54
156
145
92
85
79
119
98
124
130
161
108
121
70
131
128
215
105
102
108
143
158
49
105
103
81
103
80
115
54
131
82
67
125
119
144
129
114
105
97
128
93
148
71
107
140
81
54
128
74
106
81
166
126
124
93
79
98
101
161
109
148
108
132
74
188
174
120
98
133
111
118
110
116
140
89
108
139
93
126
92
128
157
115
148
136
112
142
84
135
110
74
128
125
125
160
104
148
123
129
122
54
111
98
168
105
54
97
174
105
142
80
102
133
117
144
67
98
130
158
98
77
139
102
144
103
113
113
100
113
93
108
77
109
102
91
103
134
93
125
120
113
101
121
153
171
129
93
153
131
86
107
110
191
125
140
133
103
172
116
74
182
126
106
102
103
135
160
99
153
102
89
176
89
102
83
133
133
145
157
99
191
132
142
108
141
98
65
95
90
116
128
129
119
145
133
133
54
149
125
133
180
61
92
86
140
128
135
124
99
109
74
110
94
97
107
161
96
101
95
98
102
133
101
100
90
169
135
142
93
171
115
132
119
127
103
93
49
133
105
92
108
102
142
117
93
102
101
200
120
114
106
121
94
94
95
93
101
137
148
116
128
148
156
105
127
67
99
147
108
142
121
103
59
77
144
139
103
95
98
54
139
104
71
87
114
98
100
92
73
96
133
147
143
148
126
124
125
74
54
143
141
96
101
159
101
115
138
95
108
112
135
80
102
125
104
107
85
131
117
144
100
96
137
81
88
123
98
102
106
78
118
120
136
87
90
131
114
148
95
102
167
107
143
95
137
112
93
118
166
115
59
77
164
151
87
90
95
170
97
126
175
108
54
106
109
143
155
96
83
54
74
95
98
118
139
127
119
125
151
78
81
54
142
125
67
127
114
110
140
108
108
78
143
133
110
76
149
148
76
93
82
102
102
87
132
128
124
115
145
116
85
96
49
98
160
124
104
76
98
81
101
111
108
103
177
82
59
102
108
54
123
117
127
119
133
85
125
131
108
125
121
109
96
141
182
49
77
102
108
172
142
135
83
108
150
121
137
141
102
98
59
95
151
113
166
135
95
89
89
95
106
122
109
136
95
95
98
123
107
114
71
95
127
80
125
127
177
148
95
165
54
80
95
121
157
84
113
98
119
98
128
118
120
81
120
54
122
113
116
158
89
103
98
112
82
92
95
148
142
74
141
117
97
167
127
90
118
80
127
145
98
129
78
69
139
98
128
108
128
108
108
90
94
105
95
74
98
74
54
93
54
130
87
93
108
194
83
129
140
79
113
134
103
90
173
104
102
113
108
154
76
54
96
98
126
103
117
103
124
54
107
148
54
180
134
101
130
133
179
116
98
108
108
134
148
148
116
61
110
106
111
125
104
134
151
151
92
119
116
140
76
122
108
119
153
42
146
132
81
158
147
110
155
88
117
112
97
116
166
59
112
129
169
49
135
155
113
120
107
59
158
158
155
127
156
131
126
154
127
154
122
114
98
98
116
115
125
128
96
139
91
119
177
112
131
78
160
171
59
158
103
139
128
102
131
180
114
104
98
151
156
103
113
67
117
117
89
102
114
155
157
54
91
154
117
115
179
143
130
95
154
149
165
95
136
154
143
49
107
143
87
115
85
150
113
128
102
147
122
121
135
91
177
102
107
115
155
156
108
74
118
54
158
134
113
137
95
97
125
93
115
99
140
59
97
97
125
126
93
98
145
105
125
73
118
193
115
54
125
175
139
148
108
83
167
127
69
108
73
135
138
115
154
54
100
129
112
82
135
82
54
77
87
144
112
108
123
136
141
113
123
141
144
174
79
93
106
105
77
104
81
166
103
123
115
115
90
113
140
96
119
105
167
145
103
87
161
94
96
90
131
95
59
113
80
129
195
147
83
145
90
155
153
85
95
97
103
118
113
97
178
110
102
96
103
148
90
138
127
140
89
144
129
121
82
65
93
148
177
158
95
136
135
123
77
155
100
77
191
105
54
54
93
112
113
96
105
93
105
134
161
138
103
148
139
76
103
133
81
95
82
93
108
122
54
148
128
90
97
113
108
113
100
121
112
171
106
179
131
81
102
132
115
95
120
108
166
133
177
76
105
120
77
106
87
125
102
143
91
151
54
104
96
106
89
93
123
100
54
106
113
148
137
90
82
57
86
137
101
127
104
54
146
114
112
54
159
92
158
102
116
113
95
139
106
161
102
54
111
102
89
155
92
100
95
102
102
131
59
113
135
89
91
122
116
91
113
94
116
92
130
101
128
69
155
69
88
118
125
54
92
137
132
104
49
82
193
167
140
120
127
88
104
115
82
119
135
145
111
113
120
148
121
100
102
93
105
122
124
81
157
124
150
125
131
81
74
95
156
106
54
100
125
135
102
149
77
155
112
77
102
92
103
108
92
102
49
135
103
101
104
90
95
115
100
112
155
135
102
49
112
112
155
111
54
143
118
105
92
177
121
137
125
105
95
61
78
151
110
98
108
80
108
123
67
160
162
132
77
99
91
90
102
140
137
195
99
151
107
121
108
83
79
145
128
117
150
138
113
113
112
103
91
105
109
116
101
122
102
105
99
138
103
146
134
143
118
125
108
135
148
143
148
57
105
120
140
133
105
49
106
61
125
115
93
131
138
103
135
130
54
104
74
132
59
91
105
98
97
107
96
98
122
127
122
124
137
156
67
129
148
100
108
116
87
153
123
74
137
106
118
128
93
152
74
72
104
97
142
133
122
133
111
85
134
118
153
93
140
124
77
84
113
120
117
54
113
108
95
107
102
91
109
116
114
88
130
186
114
124
97
76
177
81
131
95
127
120
106
77
95
122
110
108
128
82
147
102
90
77
122
45
131
92
87
65
75
124
128
135
102
170
114
119
135
177
115
82
133
54
145
108
108
161
107
105
115
139
105
156
87
119
126
140
97
117
79
151
162
49
115
127
116
144
148
110
54
95
103
124
118
54
93
144
98
104
180
101
104
110
175
159
133
102
117
81
149
89
124
74
107
128
118
158
102
74
117
98
120
85
121
136
84
118
120
118
105
93
102
108
135
102
111
106
84
130
148
103
149
54
102
124
144
54
161
149
94
78
138
134
110
97
177
150
131
95
94
77
95
104
131
126
159
133
118
183
130
98
102
61
107
93
145
59
172
148
138
91
171
124
195
113
100
79
123
139
156
200
95
96
103
79
92
162
68
104
95
126
122
102
96
128
133
155
180
137
113
121
91
96
109
122
125
118
98
158
107
120
108
114
114
135
92
124
108
174
96
104
94
116
124
109
119
99
122
74
105
102
115
164
81
133
109
96
141
135
91
131
101
180
97
146
95
108
113
140
83
190
137
80
71
155
42
98
77
141
187
140
90
118
133
120
119
128
105
87
77
119
98
102
118
95
128
116
126
125
144
103
112
102
199
95
150
122
90
141
77
81
121
120
100
67
148
114
113
125
122
151
168
117
110
124
160
125
102
115
95
126
54
128
103
157
106
112
122
102
125
116
96
134
126
65
128
119
127
87
139
125
82
165
69
144
103
125
98
160
117
170
113
117
119
94
121
77
103
103
189
102
116
81
148
144
148
97
100
98
146
131
165
149
94
118
172
155
191
107
131
144
125
88
112
120
113
146
86
133
93
125
154
157
148
107
109
146
76
126
147
151
135
107
138
108
106
102
134
150
49
107
118
92
199
149
108
106
112
85
87
111
78
168
81
143
81
89
80
126
148
145
95
208
106
143
117
149
172
118
109
131
103
139
115
138
90
161
123
98
94
76
54
125
92
113
132
81
73
77
87
98
98
76
147
137
95
114
169
77
138
124
121
110
137
95
80
133
139
135
125
133
136
147
54
78
108
132
108
54
114
171
90
128
86
54
129
54
124
54
100
91
156
91
100
131
54
49
135
113
98
54
98
102
95
154
105
175
152
126
163
184
122
54
128
128
102
95
67
163
96
85
130
49
148
113
103
90
139
109
94
151
54
85
92
73
80
113
105
97
191
150
81
103
113
148
49
153
82
87
93
128
118
128
133
141
152
87
124
67
161
111
81
121
113
154
95
59
93
146
137
112
123
177
161
108
98
123
54
54
128
141
76
135
199
76
128
84
81
148
124
149
90
95
140
138
87
129
105
133
79
181
126
103
120
133
80
144
54
125
54
161
117
126
127
137
135
54
98
124
127
156
133
149
95
120
76
141
105
121
103
108
149
127
93
136
72
87
145
113
129
157
120
147
82
93
101
110
134
164
54
90
152
115
96
144
129
113
131
127
131
124
140
105
74
69
95
89
142
105
108
120
160
146
102
116
154
100
190
105
76
49
96
83
128
74
90
144
142
140
116
54
105
126
106
156
119
97
118
113
81
153
101
82
102
129
106
93
153
108
128
120
148
101
115
129
87
109
120
127
196
127
165
135
141
94
143
96
108
110
118
113
77
193
143
146
98
158
74
105
73
98
117
154
108
105
178
97
74
111
200
123
158
74
140
88
95
132
93
144
90
82
74
114
79
142
229
121
108
108
110
54
105
115
144
113
128
131
95
137
69
49
100
140
123
76
140
95
128
90
152
128
158
124
141
135
171
125
54
103
74
135
102
129
103
101
103
155
120
88
101
134
54
80
97
153
127
126
54
135
112
107
149
133
115
90
106
102
144
142
128
96
87
96
54
81
120
151
89
220
76
147
74
119
54
87
104
95
123
82
78
166
138
83
144
98
91
95
127
105
102
131
120
159
78
123
105
95
152
120
136
190
112
142
118
160
121
114
147
151
74
108
54
131
59
96
128
120
105
132
102
124
124
85
125
103
105
168
115
99
145
128
156
177
78
67
102
118
115
122
93
54
93
146
153
143
67
137
102
54
74
54
98
133
77
108
77
100
151
183
153
103
117
108
151
118
120
159
105
177
125
54
80
106
128
78
108
160
133
102
104
107
113
131
102
165
54
108
161
69
118
95
81
108
54
119
82
98
125
59
159
142
118
54
81
87
129
83
95
124
67
131
81
76
97
105
93
171
158
177
128
108
144
138
59
97
122
121
143
128
102
54
67
89
90
107
105
119
98
110
83
110
153
68
68
126
54
129
138
108
95
94
149
131
120
49
93
139
183
180
89
128
140
133
140
101
159
87
91
158
81
119
160
198
113
103
124
134
49
117
161
126
71
131
100
116
124
98
96
95
90
128
112
98
91
148
138
157
103
74
116
126
59
104
54
177
107
139
188
95
105
134
144
124
126
99
108
95
59
80
122
87
139
112
135
138
143
59
148
54
80
95
103
116
54
170
160
100
165
151
81
105
135
137
54
133
89
76
109
140
96
143
154
113
117
148
127
98
104
128
146
175
127
135
147
165
158
146
113
104
140
145
106
131
108
122
82
119
148
143
104
168
100
93
151
54
87
98
66
96
145
83
85
102
103
137
156
97
135
140
103
140
119
111
140
122
138
168
125
104
179
165
148
130
68
146
82
98
98
54
87
97
98
78
86
89
99
135
99
144
103
102
110
103
152
124
139
49
83
171
107
128
82
116
136
165
103
99
133
137
148
114
171
130
145
140
96
130
113
103
54
103
125
62
95
200
87
156
90
83
82
140
177
94
122
92
108
130
77
113
69
78
143
123
112
54
156
150
59
140
98
77
54
107
126
54
85
97
140
140
102
127
83
49
78
109
87
102
142
93
143
116
97
49
120
119
97
95
82
105
74
98
106
148
119
49
102
65
124
78
59
110
114
162
177
132
129
117
95
140
148
125
105
90
133
148
93
133
93
59
83
77
104
102
101
125
103
146
102
119
160
102
107
95
54
97
129
79
141
85
128
135
157
113
158
98
135
105
93
177
113
147
128
99
81
80
98
160
115
131
126
77
98
153
102
126
98
108
135
144
102
117
135
101
127
175
123
75
98
116
136
81
133
155
70
97
89
98
101
108
97
92
153
93
107
98
101
152
102
130
117
160
127
99
142
87
83
115
69
87
115
103
108
114
208
101
67
81
83
87
160
163
112
184
95
144
102
106
97
122
106
83
108
133
49
130
154
80
132
88
130
142
122
107
74
145
106
100
145
54
102
76
151
94
106
168
159
88
102
102
131
133
139
87
102
131
156
93
95
182
133
115
105
49
102
106
104
89
158
84
107
122
97
85
141
87
90
131
119
90
109
201
154
146
124
86
122
110
115
97
147
188
49
92
106
87
97
101
57
128
92
125
97
105
93
105
154
102
108
138
117
102
128
125
153
146
101
125
98
85
102
101
121
90
116
148
144
105
98
122
185
94
115
96
85
98
149
104
80
114
81
157
163
89
115
107
119
77
114
138
69
77
158
121
93
113
113
101
102
93
125
61
176
140
85
133
82
102
91
59
107
99
128
87
96
110
90
54
95
97
78
103
135
150
103
133
84
54
161
67
94
108
82
172
120
102
79
103
77
127
158
93
171
94
146
133
83
134
125
138
183
186
103
115
87
81
103
145
165
111
108
98
69
103
54
117
59
54
89
109
125
121
59
100
80
122
115
99
109
112
144
116
154
115
128
114
111
98
108
82
111
103
122
130
120
136
77
98
114
140
131
78
102
119
150
125
170
125
134
54
128
132
91
70
120
184
129
119
132
128
98
120
83
90
103
103
135
117
197
127
105
129
78
152
145
96
97
167
125
125
113
82
69
82
134
100
118
143
163
61
143
118
81
131
90
107
119
169
73
102
98
95
94
157
111
107
90
110
145
103
136
153
141
105
139
104
101
133
83
125
105
125
97
105
105
109
91
131
123
98
103
99
74
125
151
140
138
105
103
122
98
111
137
97
141
148
155
113
151
108
126
108
196
59
85
162
101
119
117
107
119
54
133
82
168
54
135
161
104
102
87
129
167
140
95
96
113
131
91
115
82
81
117
96
84
49
92
172
98
102
49
67
54
122
182
151
112
158
103
84
128
106
95
162
151
132
104
127
105
110
81
140
54
137
122
96
65
126
231
140
137
102
83
148
78
140
133
68
109
143
125
108
93
152
128
109
54
162
96
146
68
108
98
148
90
96
139
113
95
124
134
154
95
93
185
102
144
54
102
114
121
143
85
128
100
74
95
150
140
154
146
105
112
103
115
54
125
54
129
135
109
104
81
135
103
74
172
100
105
68
98
172
74
82
149
111
95
158
98
77
81
109
129
108
87
186
59
156
54
130
113
128
93
83
131
150
83
59
67
149
100
78
123
82
95
108
49
54
129
142
98
110
106
54
124
96
135
116
165
78
167
95
172
114
59
179
145
157
149
83
109
91
131
95
149
108
88
125
129
54
93
131
78
126
87
105
143
90
116
128
125
131
177
115
132
105
149
105
93
108
102
124
126
127
54
145
67
135
82
177
54
125
119
105
102
112
128
107
143
110
68
87
81
111
135
141
94
85
105
107
98
81
102
136
165
138
74
68
116
87
102
54
117
94
156
86
72
140
92
103
110
105
205
104
124
134
133
119
85
77
120
133
105
108
78
104
104
106
85
102
112
135
59
127
161
102
154
102
54
98
112
59
59
120
112
108
98
131
144
103
144
125
54
93
98
77
183
114
243
125
112
87
108
79
95
128
59
100
54
136
98
135
113
200
124
102
135
135
148
85
96
112
133
182
142
82
49
134
125
128
85
98
79
145
151
144
83
159
100
98
128
102
124
101
87
87
115
77
117
95
93
95
87
134
114
103
78
125
113
113
127
128
98
111
68
95
162
108
81
114
124
107
108
81
106
123
95
81
133
126
100
54
108
73
89
172
121
162
54
82
119
96
76
69
173
109
129
118
137
94
147
87
110
159
164
129
144
137
76
132
119
103
127
123
76
102
112
148
140
124
106
78
81
147
96
120
54
113
102
106
67
179
92
103
68
135
69
108
147
135
137
145
117
108
100
95
173
185
127
116
120
80
96
114
92
124
128
155
172
128
161
153
80
90
120
120
138
150
107
82
105
127
182
98
157
85
78
133
110
106
93
158
74
59
89
115
82
93
85
100
156
126
90
152
112
169
93
120
102
154
121
135
120
102
188
54
144
147
59
134
110
76
138
102
105
129
132
123
85
54
98
163
172
95
115
134
87
108
181
103
120
119
117
125
122
124
134
101
94
128
106
76
133
148
109
128
106
95
147
165
107
126
108
126
137
150
77
102
145
126
140
171
151
132
91
61
76
124
146
115
109
150
82
76
123
146
74
120
144
148
177
148
116
99
129
147
174
102
113
160
95
109
80
108
120
177
54
103
125
152
129
97
113
126
78
116
124
177
151
82
116
133
108
118
54
148
54
106
134
145
168
69
132
117
103
159
104
79
130
112
109
81
156
110
112
108
143
148
143
135
184
116
122
120
109
104
84
76
156
54
82
112
107
92
87
49
108
136
125
148
85
135
146
135
113
112
102
91
133
150
160
96
149
135
98
148
139
154
124
148
95
119
129
82
81
91
105
155
96
158
92
112
87
176
131
108
179
190
115
128
61
106
126
80
67
146
102
97
80
121
129
104
69
139
148
97
129
82
108
136
129
120
110
155
113
127
91
93
131
124
101
111
130
182
95
82
99
87
144
106
112
110
127
54
93
125
93
76
98
95
83
77
112
125
130
59
78
127
149
150
93
54
98
121
54
150
106
101
147
102
123
96
108
127
93
148
128
108
65
115
76
54
104
199
54
131
95
67
106
74
107
102
139
167
118
105
193
126
74
101
54
148
153
113
139
149
100
120
96
132
143
131
90
101
145
155
77
128
152
121
128
157
125
142
115
114
95
100
131
102
120
119
140
81
95
80
112
125
191
69
112
124
133
143
108
146
141
135
114
144
105
152
119
109
76
84
107
115
78
126
116
102
180
74
54
54
120
80
96
128
150
98
166
103
157
119
84
124
81
127
144
132
107
114
108
113
96
87
106
108
160
117
133
139
80
59
108
98
123
128
127
150
123
134
76
81
128
54
110
102
139
112
121
82
54
130
143
138
94
103
113
113
102
99
109
159
140
220
159
68
102
177
59
112
54
49
122
135
109
122
110
104
94
105
155
155
131
167
125
132
158
155
89
99
87
128
139
128
54
81
147
154
54
128
142
79
157
160
107
127
74
113
149
119
129
127
115
131
91
87
97
119
76
124
81
126
87
129
119
74
165
186
172
161
106
102
131
117
123
125
179
130
70
135
145
144
146
131
138
95
100
80
144
117
127
127
142
102
74
130
85
100
108
110
94
158
131
61
141
102
147
126
139
118
140
107
113
95
125
109
93
93
145
95
127
91
119
211
135
191
175
86
87
133
92
127
83
118
126
105
133
107
54
119
131
119
150
74
113
82
98
61
113
132
96
91
65
136
86
102
54
106
94
112
76
95
111
103
128
129
106
127
118
114
93
112
147
132
95
108
91
99
118
144
110
101
117
87
138
87
108
106
106
112
113
177
148
122
142
107
133
95
128
117
102
128
80
110
180
113
133
127
128
93
102
54
172
49
130
87
107
119
147
59
101
81
82
77
138
125
54
127
54
144
102
124
104
132
184
89
120
113
114
168
103
95
132
94
133
77
74
116
177
113
107
148
77
141
109
140
177
85
120
146
83
76
134
140
54
112
181
88
139
114
78
108
102
89
124
128
102
108
102
108
105
123
195
148
94
199
121
123
138
113
131
108
73
136
164
173
156
96
59
148
123
123
138
108
131
150
106
134
97
157
110
169
110
49
87
54
154
95
81
134
71
106
151
141
125
74
132
65
129
158
107
96
103
127
102
54
143
98
148
102
103
90
99
106
147
87
120
149
148
101
99
77
98
102
150
143
98
135
108
87
92
141
74
106
73
67
59
107
158
113
89
102
102
111
110
159
102
81
131
113
159
107
148
95
113
80
94
131
126
105
133
128
122
97
95
108
49
101
128
108
96
113
113
148
147
146
117
78
102
108
129
93
133
81
86
94
144
54
143
77
102
132
90
131
100
108
144
111
136
124
140
158
76
110
145
103
98
89
125
148
100
102
95
125
87
143
81
135
87
123
132
82
106
118
194
121
151
108
109
148
111
78
129
137
124
125
69
83
146
150
54
135
144
118
105
91
131
177
148
93
102
137
81
101
127
138
101
179
151
104
108
54
113
81
134
85
49
99
173
101
123
133
165
125
93
216
131
148
59
117
109
115
117
123
83
148
141
85
116
113
133
108
106
85
91
108
119
79
122
54
98
107
74
95
135
143
79
108
95
148
127
131
115
147
135
119
161
126
106
127
133
141
133
123
106
96
135
120
168
93
129
84
87
96
146
90
149
98
54
132
135
125
185
96
115
126
105
76
102
132
167
95
49
61
76
80
142
113
178
122
111
122
135
85
98
116
137
84
97
144
137
107
105
121
148
120
107
94
129
131
95
129
54
131
120
98
104
95
153
141
154
126
67
54
83
134
109
125
139
148
102
102
113
117
103
99
130
133
132
108
117
95
118
153
76
207
162
130
115
157
135
89
142
85
119
150
145
91
104
49
69
155
108
74
125
186
111
104
142
67
108
102
167
108
158
122
112
135
107
107
54
95
140
103
102
113
94
152
127
122
138
106
137
118
135
131
97
128
105
102
155
148
147
173
87
143
127
77
118
135
102
140
108
107
184
128
54
103
171
141
59
127
106
134
105
123
98
116
95
180
177
153
121
144
82
108
82
125
129
98
85
90
93
131
103
149
82
101
113
102
59
54
77
104
59
109
68
141
127
161
82
141
135
126
54
81
68
135
135
145
96
150
87
110
78
95
127
128
105
110
82
116
154
197
101
96
177
138
120
145
119
109
97
143
127
93
84
96
61
180
115
102
103
149
105
84
113
118
131
152
148
138
179
127
96
174
114
146
139
81
72
102
102
110
97
125
129
128
67
119
76
129
98
131
120
106
148
117
165
108
133
152
183
156
160
132
127
234
138
111
99
131
158
158
93
61
129
149
124
152
49
144
115
129
81
149
150
92
95
143
129
101
76
144
103
92
145
115
115
77
74
95
155
130
80
103
74
101
177
108
123
95
144
139
82
143
126
129
81
107
61
105
113
87
92
147
90
89
139
119
106
114
128
108
76
79
136
155
167
128
132
103
107
116
108
136
54
148
139
95
54
142
121
128
54
103
108
145
54
105
108
98
128
89
160
93
107
81
96
151
145
125
102
97
121
90
133
137
103
54
74
98
54
93
79
123
131
169
82
74
135
132
110
81
139
148
186
148
140
139
154
90
90
103
117
85
153
78
129
49
153
80
119
145
67
131
137
132
93
162
144
87
167
106
144
125
128
96
104
138
106
114
54
139
117
112
98
108
107
133
125
85
87
97
91
102
184
102
73
115
69
108
148
119
154
145
54
125
168
134
113
100
124
131
122
118
162
154
145
134
76
133
127
132
101
113
155
102
102
99
111
148
59
106
133
139
114
77
108
148
125
126
108
89
90
106
99
103
128
107
54
106
147
137
128
120
141
98
108
111
147
127
180
109
100
83
82
103
113
158
84
61
171
161
200
120
95
95
104
102
132
59
177
137
121
109
82
97
103
145
89
159
131
128
81
132
148
126
107
132
167
107
131
104
113
82
99
159
129
107
98
127
140
133
113
111
130
78
121
141
98
96
99
97
97
112
184
95
65
133
107
141
144
99
97
108
76
145
101
77
54
104
81
78
138
74
54
129
166
131
132
135
117
101
95
102
103
103
128
95
96
130
94
119
49
126
54
103
153
54
125
85
147
112
98
90
90
113
93
54
125
109
59
78
82
84
177
103
140
128
67
145
69
137
103
132
144
135
145
173
123
124
160
83
136
106
106
140
108
102
143
104
90
76
143
54
74
109
138
98
90
59
74
103
138
106
113
83
67
127
109
74
99
131
173
104
141
107
124
85
171
129
167
99
103
124
130
161
160
157
148
78
151
110
90
76
148
78
93
113
128
135
131
117
77
134
98
102
101
125
90
115
108
83
159
107
123
89
145
133
117
131
113
122
87
107
132
144
110
95
90
68
109
114
99
140
95
127
90
115
89
112
112
103
61
122
127
147
152
119
104
120
120
120
180
114
127
83
132
129
141
109
131
122
111
104
106
107
110
70
67
132
74
127
102
86
140
100
99
103
108
95
145
83
85
54
177
125
177
144
108
162
108
104
88
99
166
156
109
95
139
110
110
127
95
75
78
101
69
141
105
103
194
144
76
107
129
87
86
113
122
135
158
98
145
124
107
127
76
87
140
117
94
110
161
105
102
103
144
131
81
116
174
188
83
127
92
154
129
155
96
123
98
148
113
140
103
177
180
225
87
109
143
87
74
118
87
93
124
138
79
77
81
108
165
143
161
102
112
131
90
109
141
81
76
140
121
102
81
90
124
72
104
108
54
98
118
131
97
103
123
68
115
106
87
125
90
128
100
158
154
85
83
103
135
105
93
136
162
76
172
136
95
102
140
92
111
108
113
177
81
98
108
109
74
103
108
98
113
85
108
150
108
94
116
108
108
103
92
161
150
88
127
92
109
140
69
102
101
101
126
87
61
129
99
81
144
163
164
98
161
84
133
143
127
129
108
59
54
159
234
110
112
85
122
74
135
84
93
146
96
151
102
108
76
94
117
135
84
68
145
80
101
156
115
116
94
145
93
54
119
95
110
90
146
110
127
106
106
125
87
132
87
76
91
100
82
158
54
141
134
122
144
164
100
54
54
155
149
59
83
80
110
103
98
93
77
154
104
130
135
147
168
115
125
125
106
153
125
99
112
103
111
157
111
107
210
133
168
165
76
81
124
95
91
116
148
86
82
59
179
107
141
103
107
155
93
83
139
54
77
101
130
124
180
54
116
118
149
120
76
102
134
87
85
110
74
88
121
102
49
130
76
138
106
135
200
146
80
105
147
109
119
108
151
93
119
134
135
93
95
54
129
106
118
126
121
81
106
146
81
100
126
133
128
127
81
165
115
128
130
127
70
119
59
111
108
112
134
135
119
59
163
54
168
151
54
133
130
68
105
98
77
171
116
109
76
122
113
105
105
123
159
83
117
118
99
113
198
121
80
95
180
97
107
161
90
120
128
153
95
81
157
113
133
113
127
107
158
172
67
113
92
73
122
151
108
123
140
121
93
98
106
73
102
102
175
112
129
156
124
127
93
150
68
125
139
74
91
93
178
76
149
113
108
87
93
93
151
133
119
172
96
160
104
54
98
165
91
104
113
108
139
106
132
59
146
148
111
87
155
104
169
162
102
90
77
146
101
146
118
98
98
54
90
49
119
153
87
146
69
117
125
136
113
135
126
95
135
139
81
98
90
78
190
158
102
135
124
137
135
92
91
69
120
49
112
80
77
87
108
119
127
100
103
102
120
122
127
74
92
94
110
149
111
104
130
132
88
145
80
98
79
77
82
159
121
108
152
115
113
157
117
154
103
165
124
122
136
99
68
154
114
123
107
136
70
80
109
155
90
102
94
95
114
101
150
162
81
74
95
118
119
181
125
93
95
54
117
110
133
149
74
95
114
125
97
74
179
131
105
127
114
75
116
54
88
88
82
72
136
112
84
79
103
96
69
124
80
177
135
112
91
122
113
130
95
106
163
124
108
82
119
90
108
54
119
102
110
78
109
129
54
95
85
80
199
96
224
90
113
103
155
108
140
136
87
74
122
93
77
67
114
133
91
92
95
157
135
106
118
107
98
163
105
96
128
113
96
102
152
127
115
114
94
98
87
106
143
87
110
94
69
95
156
87
103
110
148
135
88
74
144
173
144
127
49
77
68
115
96
180
49
118
49
96
108
128
99
128
92
54
97
97
84
81
54
128
95
158
102
115
132
119
54
177
115
140
82
118
76
97
126
135
105
125
113
102
74
74
84
93
98
125
124
108
160
115
54
149
95
95
128
77
175
91
75
142
129
90
108
117
49
128
109
112
95
99
78
154
81
113
131
131
67
115
96
177
49
82
145
54
181
140
128
127
108
82
74
168
177
124
150
153
81
82
127
103
125
117
129
98
85
149
76
127
108
173
85
108
108
149
114
112
152
119
147
120
114
146
127
129
129
144
95
123
125
81
103
128
152
179
96
108
129
54
112
129
128
90
112
113
95
81
103
81
159
134
138
109
161
135
125
81
49
144
162
87
108
98
142
154
134
145
82
112
129
136
113
96
153
102
83
80
91
83
96
143
161
102
98
108
115
113
127
98
90
120
120
74
100
127
95
61
164
180
49
135
98
132
84
98
87
96
164
95
148
103
101
91
77
120
144
100
88
137
150
82
112
152
69
102
81
127
140
109
139
100
135
145
111
106
157
54
110
49
102
90
116
90
117
135
96
148
143
102
89
83
62
105
82
117
131
114
108
123
160
132
108
74
106
114
133
148
74
163
119
107
83
111
108
113
77
144
121
137
92
173
54
115
102
102
122
101
115
67
109
125
160
143
143
166
159
122
126
148
117
78
130
91
77
133
87
140
133
139
82
100
97
95
124
132
111
131
200
101
130
110
147
127
106
96
127
54
93
186
118
140
125
105
153
160
112
105
112
98
151
90
81
126
161
65
105
49
168
149
133
107
111
57
128
140
118
76
109
177
72
121
147
129
103
83
177
95
125
98
108
54
90
88
81
125
104
92
108
151
65
160
144
133
106
132
123
111
117
120
168
54
142
106
76
85
148
151
98
129
167
116
54
45
153
102
165
125
98
97
99
135
76
117
120
93
178
131
67
74
125
124
145
98
108
83
114
162
103
93
129
133
138
99
116
108
122
101
119
161
59
79
227
125
140
113
97
115
113
135
90
134
129
120
219
54
102
128
113
169
114
87
165
87
128
82
151
115
139
122
95
139
103
98
98
131
112
95
105
54
105
102
89
116
111
81
112
122
77
142
100
54
128
98
135
54
81
144
95
99
140
160
49
78
87
85
136
82
153
136
132
102
139
95
109
148
143
125
95
88
180
105
149
122
176
96
59
115
59
54
124
105
128
102
147
54
138
142
109
123
115
77
103
103
131
98
81
112
116
143
112
148
77
103
115
90
143
122
92
151
113
147
108
85
105
104
146
138
122
135
105
123
87
107
95
95
138
106
49
54
185
125
93
89
78
149
92
156
107
125
99
93
125
67
124
102
122
87
105
54
108
81
131
135
153
135
184
86
92
95
94
133
111
106
109
138
119
156
162
143
115
140
98
95
122
110
150
132
129
113
103
135
76
104
79
143
124
129
105
158
122
82
78
105
82
105
131
81
92
49
102
109
155
76
102
112
128
135
149
158
54
111
87
131
114
120
130
103
95
133
76
67
125
198
110
145
146
103
123
122
120
116
159
96
94
103
96
137
141
131
111
129
194
98
131
103
54
151
62
70
138
54
74
100
123
107
82
105
102
74
87
97
54
92
127
107
125
139
125
131
91
110
95
129
129
118
86
101
76
143
112
123
135
98
121
126
125
174
124
107
143
59
111
151
124
49
108
116
90
165
87
147
120
123
146
114
220
49
87
77
142
140
132
103
98
67
108
95
101
149
96
95
150
108
81
190
115
49
102
106
177
165
124
87
144
93
91
49
95
125
72
139
77
161
142
54
125
109
160
107
132
117
110
106
124
125
139
154
102
149
133
49
98
125
141
138
108
151
95
89
143
81
133
54
135
150
105
54
177
129
59
110
100
95
98
125
102
127
147
115
104
54
156
76
128
148
139
131
81
124
166
118
161
110
77
108
96
76
101
74
126
125
146
120
112
115
111
116
143
93
105
80
111
110
49
102
112
156
79
54
79
85
102
84
136
124
89
152
117
99
100
130
148
103
162
112
57
85
80
108
74
158
120
131
74
61
78
125
54
139
121
105
140
122
182
76
98
59
81
151
104
143
95
142
102
107
116
127
158
121
115
98
102
115
153
107
154
54
143
78
115
103
163
128
153
82
113
125
107
127
49
104
129
105
146
120
92
131
135
108
103
100
98
161
103
130
145
172
166
95
102
219
54
124
131
104
113
78
115
98
125
127
98
121
99
151
158
143
118
125
90
107
104
145
80
96
104
146
100
177
134
173
108
109
103
96
81
59
128
117
93
110
96
102
85
108
127
89
158
77
93
104
157
118
137
158
124
141
100
127
151
121
130
54
103
113
112
117
158
120
115
101
49
133
98
149
61
124
158
96
164
111
54
115
137
146
87
144
96
151
148
109
102
121
90
136
109
85
102
70
74
91
77
119
103
144
89
81
49
107
91
102
143
127
110
108
113
105
81
97
107
98
91
83
190
116
108
96
137
59
147
78
81
136
146
157
104
122
102
174
110
127
81
139
146
131
96
129
138
136
74
116
104
139
93
120
129
115
123
157
107
92
91
85
98
106
108
129
173
137
76
113
110
155
133
97
79
160
105
122
122
96
149
140
143
131
130
93
133
77
118
143
127
121
126
136
138
115
54
109
98
158
116
72
54
82
165
54
69
161
127
117
95
158
101
109
116
134
54
81
86
136
163
131
178
99
124
128
147
120
54
81
131
73
110
195
129
132
59
158
125
54
102
102
85
83
104
83
125
78
158
129
109
138
133
118
116
108
138
95
81
102
118
100
94
133
137
144
129
127
124
102
102
133
152
165
102
94
155
117
86
133
67
98
83
96
123
132
102
135
133
108
121
102
102
86
133
49
68
89
104
66
136
121
121
124
95
118
97
96
73
173
115
98
105
130
104
155
130
134
124
125
75
131
123
119
92
54
108
137
97
122
113
159
105
126
133
59
108
95
77
131
135
180
172
120
94
144
96
155
105
82
148
145
100
137
143
54
161
84
122
81
144
81
141
119
105
129
178
113
140
102
161
121
128
115
143
132
139
140
102
126
139
125
94
101
54
100
93
127
79
54
139
128
128
140
75
139
81
87
90
103
81
117
129
139
122
150
129
144
189
139
137
102
124
110
95
116
61
61
132
138
106
148
138
161
101
102
74
92
125
175
122
81
101
102
98
98
115
153
91
96
67
111
135
87
132
107
54
115
97
131
144
139
140
123
123
83
100
108
111
123
154
139
127
90
124
124
91
130
81
96
106
105
111
137
135
100
99
153
158
109
160
90
186
117
152
153
139
125
80
165
150
49
87
110
130
121
143
97
95
102
102
178
87
91
168
96
120
54
85
162
126
59
125
74
101
101
105
107
120
98
133
90
81
102
109
194
126
172
102
139
83
103
123
79
124
77
167
108
141
42
81
127
134
126
149
98
54
147
141
113
183
120
127
83
68
147
100
104
139
59
108
172
74
155
134
93
108
77
95
133
59
126
115
143
72
49
103
146
103
95
74
145
135
108
146
119
61
78
107
105
133
84
125
98
119
149
123
49
177
85
93
98
130
109
127
158
102
113
78
125
100
197
111
116
83
78
111
77
140
143
108
115
110
136
98
90
150
133
83
77
107
54
186
177
128
146
105
155
196
130
125
96
108
146
155
133
101
120
87
54
54
112
123
133
113
113
102
115
113
103
140
98
108
68
74
111
133
109
104
125
98
95
89
146
108
141
133
98
96
88
117
110
103
141
98
114
193
54
130
175
93
115
149
141
77
74
87
105
94
135
105
137
124
87
100
120
98
131
148
80
117
139
99
96
106
153
72
85
149
145
189
54
99
95
77
143
97
95
154
150
113
98
74
113
140
59
147
49
102
95
59
143
96
95
106
103
131
115
93
106
177
54
91
90
163
155
102
114
54
156
143
82
132
59
76
67
150
108
105
170
110
81
90
148
100
95
151
76
156
165
121
85
87
100
116
113
74
138
82
105
146
149
98
95
108
98
105
139
102
65
104
126
130
67
105
177
154
94
158
88
155
113
156
103
74
91
143
135
93
188
65
120
102
122
95
151
128
59
83
159
136
74
84
160
145
145
98
65
185
147
148
82
146
106
105
96
131
103
82
83
88
106
119
132
158
74
125
127
92
120
138
117
156
169
127
110
104
155
119
73
54
86
134
81
90
98
62
91
78
143
132
144
74
132
113
153
108
67
95
125
136
102
96
129
85
116
105
101
87
106
145
78
137
132
93
165
128
54
131
107
107
157
117
177
177
161
109
116
109
130
113
98
112
184
107
129
117
102
95
137
134
110
92
87
113
108
109
177
103
102
143
134
68
125
98
95
90
116
122
54
137
134
157
134
107
127
105
108
94
137
120
119
54
185
117
68
77
77
123
49
108
144
81
113
108
107
157
119
108
89
87
118
54
108
103
157
93
90
59
101
135
77
125
86
99
133
98
102
97
128
128
94
135
149
117
113
96
134
141
135
108
128
102
113
91
129
168
128
194
128
107
141
106
105
112
119
80
110
81
160
95
172
127
177
108
79
110
76
127
108
134
103
165
93
143
54
153
160
115
95
116
102
103
110
155
101
104
108
131
108
133
132
170
102
114
104
126
126
67
96
108
108
96
105
145
108
108
166
134
107
191
81
95
160
124
106
123
93
54
123
95
122
158
129
122
144
114
177
156
110
98
100
90
87
124
103
161
132
89
77
132
136
112
213
102
119
90
104
89
120
149
108
137
137
108
54
78
104
97
100
150
220
87
111
143
114
124
113
139
114
78
130
68
123
122
94
154
54
116
102
170
78
132
103
98
127
129
113
83
77
116
54
128
134
139
155
98
123
146
119
87
80
149
102
77
114
127
95
87
101
134
96
156
95
134
108
91
123
108
61
177
150
97
97
121
106
100
81
105
100
107
93
138
115
103
77
85
154
89
98
108
124
129
88
144
148
132
98
99
134
74
96
102
103
133
125
102
108
96
193
54
103
54
117
129
84
92
54
148
82
89
83
106
77
77
81
95
54
78
144
107
102
131
81
68
124
80
94
59
126
111
133
127
122
114
105
104
93
97
89
115
133
116
98
134
116
157
103
83
98
113
99
93
140
91
110
132
125
119
169
77
117
167
126
125
124
155
113
146
95
54
148
100
83
131
98
146
98
133
123
118
149
125
103
128
102
74
54
105
90
90
54
108
161
146
76
135
157
97
105
140
100
102
105
91
177
96
137
103
128
177
116
112
122
135
97
94
123
67
195
119
118
113
109
135
116
106
104
99
123
98
103
107
84
121
123
117
115
125
95
119
96
120
107
187
110
95
82
111
81
93
131
81
133
82
167
126
80
125
108
138
81
89
125
150
85
112
102
163
137
110
81
98
154
97
160
138
83
117
82
134
132
119
49
144
91
95
90
128
116
135
105
146
169
143
67
102
96
144
167
128
112
104
137
200
82
148
97
131
102
116
142
132
66
105
123
109
117
115
93
137
117
107
106
131
139
74
154
104
165
88
131
88
81
112
74
54
115
132
121
103
80
108
131
96
115
142
102
114
130
114
158
147
102
158
117
111
127
87
127
103
82
95
123
96
95
103
143
122
115
96
124
83
129
129
131
78
103
89
108
123
134
136
116
87
90
83
105
129
173
102
103
102
115
96
94
130
104
88
112
84
79
125
140
54
103
102
128
120
107
115
102
121
83
116
96
156
54
131
90
133
142
88
125
145
100
81
135
106
67
99
133
160
59
125
156
128
168
146
164
113
119
96
110
105
79
140
87
107
102
93
170
148
111
115
54
63
113
147
73
105
99
95
120
113
97
128
127
93
108
158
117
103
91
110
98
98
134
117
92
145
148
136
157
175
97
78
194
153
155
95
141
107
101
108
95
127
110
103
102
103
124
90
144
81
135
130
111
93
100
110
131
124
162
82
112
104
123
156
120
124
113
93
118
112
100
97
125
148
125
132
108
49
92
94
102
93
99
102
107
148
125
128
128
128
81
160
110
108
148
129
83
167
148
129
105
102
145
81
125
143
62
147
68
140
109
89
101
144
82
54
116
54
173
172
95
80
124
92
102
126
134
92
151
77
103
111
105
125
95
68
120
117
151
125
98
109
148
159
121
125
147
98
114
76
95
127
102
148
95
158
80
49
102
96
123
161
85
130
86
54
69
118
146
134
110
118
105
54
113
114
105
109
67
167
74
161
98
113
67
111
109
113
81
120
54
115
121
80
94
112
83
132
116
108
78
84
160
136
80
146
111
165
113
68
85
90
156
147
98
96
97
93
146
121
117
79
156
98
138
127
123
127
108
123
89
77
113
49
110
140
74
168
117
98
146
123
105
129
129
93
152
163
139
120
123
140
118
109
148
150
86
112
112
83
105
107
177
96
115
95
115
140
100
100
105
93
106
163
102
80
180
127
127
132
96
102
141
107
122
135
96
119
113
74
191
120
90
124
131
115
135
94
68
100
112
146
148
115
124
152
112
102
122
81
147
120
87
87
110
117
95
49
101
125
107
102
150
107
102
133
145
110
127
125
82
105
99
67
144
77
89
144
96
102
117
127
109
59
121
133
185
101
113
99
116
95
158
102
124
99
115
122
177
102
112
74
144
130
104
134
114
114
98
122
190
179
45
59
138
67
133
74
100
125
91
156
118
110
125
86
127
104
92
122
109
167
59
105
149
134
125
76
93
155
99
161
106
49
94
174
90
167
102
59
106
148
148
135
113
118
134
95
49
54
106
130
96
117
106
148
106
76
122
102
141
102
49
125
125
120
113
98
161
143
91
102
98
103
120
137
112
93
132
117
121
136
67
54
105
67
156
107
106
96
97
116
85
157
147
157
141
127
93
91
84
108
113
140
151
85
93
109
95
177
100
174
95
143
90
113
54
138
103
116
110
87
98
96
101
102
134
99
54
158
110
144
82
105
160
119
82
113
144
138
111
76
109
137
102
93
190
87
167
106
115
106
142
132
81
82
97
135
129
116
184
54
155
177
109
140
90
139
137
70
119
104
156
70
171
143
68
158
133
125
113
191
143
119
103
101
80
126
115
125
106
95
109
89
132
98
127
98
90
148
114
157
114
85
68
92
115
113
115
108
87
76
107
81
107
59
108
122
90
81
151
155
123
57
128
110
156
123
49
102
113
128
108
90
135
82
98
94
99
115
103
59
149
74
67
54
49
105
136
107
85
120
149
133
143
49
111
142
93
68
127
159
103
151
114
132
49
111
90
113
122
133
107
121
76
155
95
227
118
82
95
149
113
73
75
102
100
144
106
168
151
158
139
118
61
113
101
142
139
139
151
90
171
102
96
108
81
76
103
113
103
83
102
128
107
49
59
125
127
103
109
127
95
134
77
158
102
129
95
115
117
94
106
115
98
93
121
91
90
82
125
134
69
162
118
83
110
128
116
108
54
108
148
170
128
138
106
87
108
127
157
132
135
95
157
127
153
87
101
144
135
146
142
123
121
156
67
144
140
88
114
143
131
156
137
113
118
132
105
156
133
102
117
59
104
143
54
106
140
137
107
124
130
219
103
116
150
59
158
102
129
100
83
122
130
127
140
87
113
118
80
74
67
68
109
82
132
165
120
190
147
49
98
149
103
81
89
123
151
90
133
112
123
118
115
150
97
120
142
129
104
77
132
162
73
134
83
180
165
118
98
148
89
109
141
74
132
115
65
158
54
107
116
125
120
91
74
177
99
113
131
98
105
106
132
118
99
123
80
68
134
90
111
121
102
76
113
104
95
97
145
145
93
132
49
180
125
105
77
116
68
79
105
151
154
91
139
95
96
127
108
78
100
94
83
49
90
151
138
116
95
85
131
162
101
195
142
173
127
54
108
125
120
182
166
74
95
92
148
158
139
111
101
107
73
141
109
148
77
138
54
93
110
151
119
78
178
201
118
78
132
115
102
141
77
106
54
120
152
94
100
133
93
109
113
105
113
95
156
148
103
135
54
109
119
113
177
157
91
74
121
197
127
130
54
109
129
102
87
94
105
125
163
98
131
116
138
102
144
75
152
113
76
67
124
114
101
122
108
128
93
151
59
76
160
116
156
107
134
99
100
126
74
85
134
89
129
81
76
114
124
186
146
104
157
142
98
144
90
81
76
168
113
138
110
108
103
103
128
105
95
143
102
145
49
131
82
108
93
119
74
165
133
118
168
107
122
103
119
143
109
115
129
109
106
126
107
114
116
87
106
150
102
155
103
144
129
133
85
144
81
103
127
68
139
87
102
156
143
88
118
68
102
106
111
113
118
101
61
97
91
88
133
108
137
132
179
76
105
164
82
69
114
158
130
153
163
98
132
152
144
131
126
102
130
146
125
100
142
141
118
173
93
112
78
101
200
103
177
54
77
114
127
149
100
98
96
137
148
100
98
134
155
137
74
69
108
95
128
225
128
138
149
142
74
131
82
104
73
49
133
102
105
120
120
134
106
129
156
175
101
148
80
102
105
59
125
190
93
139
74
115
128
125
108
133
145
144
95
118
119
124
167
114
184
129
163
104
54
108
134
151
158
124
157
105
142
75
96
128
99
104
126
76
115
102
192
108
95
147
179
122
54
139
103
59
103
77
117
49
149
118
131
105
116
170
90
127
152
95
126
159
54
95
132
138
81
90
177
127
148
124
164
107
136
102
138
54
106
136
104
89
123
139
102
157
92
141
123
95
95
79
108
139
98
135
67
103
54
177
95
190
141
90
110
116
145
54
81
123
94
83
109
134
74
106
93
87
113
97
108
143
74
74
109
110
103
79
102
121
97
76
49
115
133
102
116
105
54
105
97
124
166
122
76
114
115
148
150
59
99
145
91
155
110
143
143
207
114
144
125
132
136
72
112
87
210
127
49
107
102
100
96
163
77
78
54
177
69
54
107
139
101
146
105
148
54
162
82
82
49
89
59
97
77
93
132
134
98
104
113
121
145
137
143
113
120
113
103
123
99
135
96
80
127
94
103
74
54
128
133
149
99
125
86
129
114
121
89
122
93
91
109
69
78
141
145
112
177
102
90
93
133
82
74
116
146
137
123
133
118
149
108
98
132
62
111
116
93
110
101
74
137
112
148
105
161
143
88
81
104
157
100
118
120
91
135
112
96
178
108
148
118
107
85
112
98
90
152
98
61
54
87
54
123
200
113
156
81
156
180
105
132
130
140
125
164
81
180
125
128
160
54
154
83
147
110
93
74
93
108
119
105
117
95
99
125
83
74
111
133
54
95
97
103
132
125
96
95
141
106
125
152
190
125
142
87
93
118
126
133
127
114
68
102
106
61
67
76
67
116
181
116
95
151
93
95
54
107
78
100
148
132
95
215
73
109
98
115
119
98
49
117
87
105
112
156
45
82
83
99
102
95
126
100
82
108
144
89
111
112
91
54
115
89
140
93
107
156
131
125
129
102
130
104
103
114
107
95
54
126
117
87
115
74
107
108
103
134
115
144
153
76
67
59
107
117
49
120
143
125
101
106
147
199
95
101
144
98
168
124
78
81
59
132
121
79
77
102
153
81
110
125
104
152
85
90
110
116
122
99
140
103
107
137
103
81
98
134
102
98
133
115
158
81
123
140
167
125
116
135
133
102
85
161
139
115
98
146
110
113
140
127
123
90
98
119
110
67
149
163
113
91
146
107
216
90
99
98
109
102
148
140
198
134
148
108
129
146
147
135
101
113
117
144
91
59
119
98
94
108
135
155
78
97
108
103
128
108
91
95
141
149
145
108
97
67
151
107
126
90
85
122
103
125
129
95
147
134
205
113
69
143
97
98
61
118
85
111
102
87
193
151
104
119
117
81
182
116
145
107
106
148
70
116
120
104
147
77
182
132
54
106
54
127
118
131
118
108
99
107
112
140
77
141
106
124
145
107
150
144
94
54
106
105
135
77
108
108
100
106
146
72
132
129
147
45
102
149
128
86
150
131
135
112
158
128
135
117
133
103
156
126
125
171
91
98
134
102
146
122
107
148
137
87
121
104
128
89
113
81
131
130
87
108
134
150
118
109
143
93
158
74
111
103
149
134
90
105
80
101
145
121
147
97
105
143
158
105
161
158
128
113
91
61
123
141
103
125
149
118
130
146
111
133
122
132
74
153
69
85
98
156
98
113
157
90
98
102
69
143
98
130
108
135
103
95
49
171
96
102
59
96
106
168
94
83
141
82
49
131
125
103
95
144
146
103
127
148
131
93
119
159
76
101
142
115
177
175
103
91
153
116
135
117
148
146
220
134
127
128
54
137
68
139
102
108
59
162
90
119
93
118
150
85
92
129
81
102
109
74
103
57
100
122
77
159
105
140
148
112
116
126
76
97
101
106
124
198
94
54
133
109
154
105
157
125
133
98
120
137
84
126
144
90
125
101
144
107
199
67
107
82
111
159
117
114
86
89
99
144
128
128
151
140
104
92
153
148
67
116
105
127
108
95
109
78
98
122
86
167
120
54
140
92
101
125
167
135
98
100
128
105
101
127
74
110
140
87
67
59
124
103
143
102
147
148
98
176
116
121
117
91
154
68
95
125
94
95
98
117
143
126
83
139
113
140
110
118
93
103
167
95
95
95
156
106
134
112
108
130
138
161
112
162
117
104
115
80
131
83
136
131
103
120
59
90
69
93
171
103
158
167
137
129
91
121
102
49
80
105
112
95
107
61
125
151
133
153
128
106
110
112
107
142
92
80
105
186
54
128
67
100
137
131
95
163
146
149
95
106
105
82
188
128
81
77
124
95
59
129
84
88
156
96
67
133
98
54
118
54
90
102
139
133
134
67
131
80
81
129
127
72
54
102
102
143
135
97
49
102
186
98
77
86
120
131
97
133
133
114
96
108
140
161
118
62
122
166
83
95
120
91
101
90
162
113
116
115
178
49
107
98
82
110
110
95
124
114
103
103
121
87
99
137
77
175
136
90
113
96
98
109
108
113
98
119
118
113
77
122
115
82
93
115
135
144
134
103
140
129
108
97
124
94
128
98
54
143
99
156
88
49
83
77
108
135
54
175
95
131
115
49
119
95
121
124
160
96
49
177
88
86
54
180
150
105
108
142
133
129
54
125
90
100
119
225
135
121
139
157
117
142
125
99
107
100
98
82
177
126
145
67
135
95
155
90
113
119
105
89
141
93
77
74
102
102
83
140
152
118
127
110
102
145
93
137
142
91
155
54
105
127
81
102
78
127
185
112
95
102
154
95
123
81
107
156
132
127
102
76
154
127
91
103
137
115
102
119
104
98
119
129
81
103
115
126
122
129
78
90
77
107
113
135
67
90
49
179
109
86
109
104
131
108
90
106
108
102
127
115
69
137
128
177
158
178
157
120
144
122
113
148
129
148
81
118
126
128
132
90
190
113
96
135
116
103
134
143
142
146
135
83
165
127
87
137
129
95
177
125
152
95
108
91
95
82
124
125
166
93
83
168
77
145
74
133
114
82
165
109
163
90
143
118
160
102
122
98
102
117
95
54
111
107
94
108
111
98
97
115
89
158
98
95
109
102
97
100
135
127
87
131
95
78
54
123
97
90
112
90
125
87
98
101
59
125
147
128
120
77
177
100
189
81
81
131
134
105
105
135
126
134
118
133
125
137
102
136
87
180
116
200
135
81
81
102
116
175
59
98
162
127
155
134
146
90
111
127
129
133
164
81
105
82
88
163
105
82
133
134
131
168
124
131
98
132
112
148
180
108
180
118
102
49
128
103
143
95
142
96
139
79
110
103
189
113
194
146
102
115
102
161
54
167
167
77
158
131
90
151
132
144
179
127
49
101
158
104
112
113
95
139
120
147
89
54
125
110
93
110
138
77
127
104
110
100
49
105
113
124
98
82
123
110
102
113
114
136
158
83
111
128
186
129
75
120
82
123
59
149
123
129
153
144
130
107
87
108
138
108
95
131
54
118
98
92
76
74
125
115
108
107
68
123
81
159
168
125
75
141
135
124
73
128
154
159
115
134
179
139
125
130
113
106
93
107
110
106
100
107
82
150
102
109
104
108
148
67
83
54
98
106
106
116
125
54
133
182
109
174
74
127
129
90
129
117
171
141
125
80
129
120
117
131
134
145
82
81
129
103
114
124
131
129
108
140
82
67
99
144
128
135
87
131
149
108
72
152
119
143
105
108
111
108
120
98
129
142
129
73
101
85
129
104
81
98
95
104
148
116
69
108
61
138
151
113
175
105
144
98
90
67
101
176
154
167
92
76
79
54
151
87
153
111
124
120
138
153
158
123
87
102
76
127
126
123
81
143
114
108
96
137
92
102
79
113
146
125
107
137
95
99
125
83
105
114
163
90
141
107
106
148
82
116
84
59
113
150
78
68
95
83
175
148
49
98
120
99
110
169
81
135
148
122
135
109
78
106
86
143
163
80
140
81
83
100
98
88
93
108
123
133
74
154
118
109
103
120
177
128
123
152
115
77
138
105
95
127
121
115
141
139
97
126
87
93
95
113
155
96
77
98
123
145
113
101
94
54
133
126
108
128
119
129
134
157
54
73
129
82
57
120
91
77
54
97
155
146
133
108
177
91
54
143
84
82
115
87
95
107
118
76
108
81
134
76
88
113
87
96
87
96
106
109
147
67
110
142
129
140
80
167
80
49
83
68
107
124
186
135
127
146
93
129
133
142
112
147
128
108
145
148
57
49
95
141
82
95
98
181
141
115
153
95
112
127
87
139
124
149
102
101
79
110
131
124
149
120
99
88
105
113
118
117
125
94
158
122
99
49
76
107
103
77
105
130
131
116
107
105
130
113
146
161
90
172
81
134
179
127
90
161
173
117
103
122
169
113
108
61
132
97
93
54
104
126
120
134
145
128
97
87
117
109
128
147
117
125
162
123
141
131
109
90
49
127
54
104
84
118
102
156
59
82
102
172
83
87
147
119
102
106
88
143
158
178
54
147
98
118
98
102
115
92
49
112
124
102
89
154
87
176
155
108
49
54
98
160
103
190
113
76
180
108
128
119
119
117
105
61
138
98
136
49
117
74
93
131
149
120
59
133
125
105
149
144
125
139
141
105
54
99
130
110
108
102
148
146
148
113
138
125
87
103
144
197
127
93
102
102
200
95
90
143
114
167
128
138
114
105
113
143
165
118
95
205
123
140
98
96
146
111
132
126
131
95
77
98
103
148
147
49
128
76
116
163
95
176
112
133
144
54
111
93
54
85
83
115
143
157
95
54
76
115
139
96
83
96
95
146
153
172
71
54
154
103
173
105
155
81
90
95
117
149
74
139
117
82
87
143
120
129
154
81
124
161
49
131
162
118
91
123
93
106
135
120
160
134
115
54
101
189
128
77
126
121
119
85
54
161
108
144
150
126
74
114
102
112
67
157
148
112
140
112
154
103
124
137
97
124
161
121
129
104
95
145
137
170
69
131
49
146
128
83
125
122
120
157
158
123
102
89
177
128
98
124
81
84
101
167
127
95
108
128
108
189
89
114
128
158
122
131
107
122
120
102
54
97
75
129
121
147
147
122
87
73
121
113
98
96
108
122
128
102
160
141
140
82
120
144
68
95
116
139
146
104
106
159
127
109
116
81
125
141
145
154
114
205
181
136
148
76
95
116
120
112
119
165
176
98
127
96
120
115
88
143
129
102
188
133
96
109
77
102
141
106
125
131
114
81
109
129
123
155
110
76
133
158
96
158
93
128
83
54
108
141
98
102
90
158
125
89
138
54
136
133
150
130
169
119
115
125
141
116
126
117
116
124
100
92
81
163
85
98
101
85
100
121
105
54
93
98
76
138
134
102
88
140
120
133
109
109
107
127
80
106
96
111
72
113
76
91
113
110
152
124
78
104
101
127
86
125
102
135
97
150
125
149
164
129
143
123
81
59
114
81
95
116
148
54
123
99
142
106
54
127
143
87
91
151
152
100
121
133
61
99
77
102
118
111
125
112
110
125
122
81
130
110
140
82
136
141
113
149
99
54
118
154
95
91
143
156
127
112
102
85
80
98
65
154
87
148
116
124
123
176
93
98
124
76
101
133
140
120
90
149
140
86
94
120
67
108
133
105
129
98
110
120
124
128
102
147
128
149
139
82
158
78
122
105
98
108
122
126
106
96
97
110
77
61
108
96
148
131
49
95
118
115
99
139
54
59
191
90
167
118
89
97
113
65
54
125
108
131
81
122
95
103
177
141
90
190
98
91
102
129
104
54
127
108
105
108
106
59
147
135
54
127
135
78
132
180
145
100
180
81
127
77
69
131
74
54
95
54
123
89
77
97
128
184
172
85
131
104
88
100
98
133
74
138
116
92
82
149
108
122
140
118
127
65
119
128
199
121
138
108
148
159
108
95
133
108
59
189
149
121
87
96
113
177
122
133
134
106
84
122
147
77
102
163
76
97
93
82
120
77
158
156
127
152
54
112
122
103
110
116
96
49
108
73
167
161
78
182
105
113
49
79
87
160
113
160
120
87
110
127
94
102
97
124
118
106
122
96
127
99
114
74
125
184
102
149
133
119
135
82
131
106
122
54
102
194
124
124
77
49
125
170
128
135
54
144
54
103
88
136
136
168
139
131
105
103
116
92
116
80
54
54
104
128
100
127
107
131
59
79
125
145
128
104
179
102
87
93
113
120
142
142
54
146
113
135
128
84
98
108
108
117
92
124
73
108
121
49
128
120
144
91
61
117
103
113
42
127
95
113
149
128
74
103
144
100
124
143
98
111
82
105
95
61
118
151
140
179
115
95
77
54
71
139
182
106
98
104
81
102
112
122
93
171
54
61
139
148
108
102
139
94
103
99
129
149
78
82
105
102
90
54
118
87
67
98
144
87
108
113
101
128
158
77
95
128
49
103
102
121
74
140
81
119
112
122
95
104
115
131
145
54
124
108
138
72
103
145
94
108
127
92
122
102
78
123
129
121
115
96
128
169
54
127
105
95
137
123
185
126
144
151
111
106
144
133
99
101
94
108
132
98
186
86
166
105
169
111
167
172
101
137
121
101
147
124
103
73
157
143
170
152
94
122
108
100
107
89
144
106
146
126
74
125
145
162
119
146
143
77
114
114
123
157
115
96
113
124
54
133
135
81
87
82
106
120
143
76
103
171
134
118
116
112
137
121
103
127
120
145
84
59
105
124
129
117
118
98
107
91
81
120
106
133
110
102
100
91
120
141
111
102
94
85
90
160
95
108
146
125
112
113
59
87
104
124
173
102
135
122
125
159
139
105
78
108
108
112
129
130
140
133
77
128
108
130
59
125
134
128
125
98
129
109
125
96
146
115
164
150
82
179
90
156
128
129
97
123
110
103
49
83
61
102
131
118
118
129
124
122
135
148
165
125
174
133
101
89
63
102
74
115
127
127
147
157
93
112
120
73
113
163
97
152
111
134
78
172
98
81
134
102
77
148
67
98
144
61
140
113
78
108
146
65
107
113
107
103
112
122
106
132
104
81
97
103
88
125
74
135
98
91
82
68
54
106
49
121
103
78
126
77
98
95
90
111
157
115
145
87
128
131
93
89
107
87
97
154
147
143
124
54
80
139
142
144
61
120
116
112
79
141
95
82
137
132
145
119
102
146
146
59
115
77
135
128
144
54
125
101
131
94
109
87
67
108
172
90
154
133
117
81
123
116
142
138
107
108
131
88
95
135
171
112
120
59
49
95
113
115
104
128
141
204
102
90
82
82
132
54
117
145
54
92
102
135
90
112
93
125
140
59
125
103
90
103
102
98
125
136
109
161
178
170
127
148
140
126
117
91
191
135
145
120
84
123
168
141
178
92
98
49
103
120
113
108
67
101
69
143
105
142
87
93
137
100
102
83
157
123
82
89
108
102
90
108
112
138
83
110
147
120
125
95
89
130
54
142
108
106
131
110
113
128
102
140
179
120
87
119
93
118
173
93
103
140
98
129
167
102
111
133
108
86
94
140
145
124
107
95
129
125
126
128
144
127
107
112
149
145
116
83
133
144
131
159
148
107
106
137
85
99
141
105
102
102
105
98
122
102
49
140
122
102
116
146
145
129
90
98
67
143
158
128
145
73
87
101
92
54
118
81
61
107
85
80
74
133
101
147
117
115
99
87
140
156
113
112
108
84
118
131
163
68
111
194
90
163
105
127
124
54
124
186
170
129
120
49
165
147
125
136
141
93
95
141
179
89
116
144
128
100
107
74
121
108
59
95
129
115
49
122
127
83
133
205
119
128
54
118
103
146
138
111
100
133
87
90
111
73
116
90
141
113
145
128
87
118
112
138
135
106
125
125
135
77
93
170
101
74
102
104
150
80
121
133
99
125
118
85
97
99
176
85
95
139
133
87
139
151
93
67
123
126
91
127
139
133
144
70
133
82
133
95
103
146
116
110
120
125
134
148
160
176
102
78
68
103
132
148
113
179
81
83
49
130
143
154
144
108
121
144
126
125
99
122
59
134
91
112
147
146
125
102
125
128
84
86
54
107
108
105
214
108
141
104
190
103
132
130
102
144
116
115
97
101
115
120
95
107
116
151
103
102
132
107
83
139
109
80
119
98
118
59
177
149
81
169
130
130
161
130
95
117
103
54
133
146
120
87
126
136
177
54
110
101
90
128
132
92
117
125
163
93
118
109
89
94
102
105
113
93
98
82
144
90
132
161
74
118
110
110
101
120
59
133
133
105
103
116
97
102
59
140
107
87
98
155
102
150
116
98
128
103
76
104
98
133
149
93
94
144
102
151
143
158
97
67
103
106
124
126
128
133
98
123
149
100
83
105
108
213
105
145
135
94
105
135
112
117
139
105
81
54
134
82
158
81
194
102
120
79
133
86
61
93
108
144
155
161
92
95
76
108
49
123
102
141
101
127
111
127
141
198
97
91
111
142
98
160
84
76
98
194
95
173
95
112
119
138
115
49
92
125
74
67
107
76
119
163
188
49
98
108
112
96
124
94
122
79
134
97
83
61
90
102
93
135
111
113
89
110
91
151
125
117
90
116
134
146
151
126
126
138
142
133
106
130
123
127
169
165
151
159
153
110
113
97
87
126
103
97
125
77
115
115
113
155
118
111
108
80
115
99
95
85
139
54
132
108
165
113
77
117
204
177
81
59
140
161
123
57
97
127
102
74
105
157
161
99
155
103
91
122
138
109
94
100
74
101
135
135
90
128
121
102
132
113
156
128
122
105
82
142
115
79
98
95
87
74
74
128
98
151
143
131
115
113
67
93
117
93
108
133
122
96
90
97
171
149
105
105
115
122
115
170
85
102
124
111
113
164
59
178
95
110
125
129
189
200
73
120
145
138
111
107
69
118
106
144
96
131
49
109
110
80
120
130
82
103
108
107
54
154
81
105
131
54
74
135
81
140
143
122
98
114
74
107
91
81
143
112
151
200
90
127
184
89
135
98
170
114
169
54
153
123
103
166
88
93
113
127
156
98
81
164
75
141
105
143
112
99
103
95
98
123
131
97
96
148
144
98
129
129
116
103
108
144
153
81
83
123
141
118
107
131
114
68
96
84
98
148
125
125
148
116
98
123
92
103
77
120
108
143
177
118
77
101
124
78
146
165
145
111
138
89
126
179
78
98
126
108
62
118
108
107
110
150
136
140
120
120
141
147
86
88
150
61
138
108
148
103
77
129
174
110
128
125
89
93
108
140
84
133
146
119
82
144
91
94
102
154
141
165
95
157
106
83
115
104
138
109
106
140
107
101
114
102
82
132
103
77
113
95
103
54
77
161
144
132
113
114
144
76
131
131
124
105
99
116
59
108
116
84
87
98
113
120
83
129
73
148
128
54
82
108
100
117
101
113
110
108
169
130
117
78
145
95
144
138
109
135
95
119
100
105
117
89
143
103
85
103
187
177
112
77
81
139
135
165
81
126
78
147
145
124
124
130
104
150
49
103
129
119
116
79
133
87
102
117
121
100
49
103
59
115
151
118
95
123
161
87
126
103
234
54
120
103
71
114
106
106
168
78
54
49
98
116
124
103
97
123
117
127
106
107
112
212
134
77
133
149
134
76
120
95
135
126
142
130
106
83
93
129
118
123
93
87
59
93
154
79
165
108
141
188
95
103
96
109
49
87
138
67
133
110
147
157
112
132
122
82
105
130
98
105
129
105
89
122
120
54
140
180
133
116
108
93
123
108
80
125
105
118
132
126
105
114
125
97
76
113
131
160
101
76
108
134
120
108
74
127
104
100
97
133
129
67
108
130
103
133
49
59
120
123
95
143
161
120
74
144
112
54
148
123
127
97
67
133
145
77
114
135
67
132
69
80
78
135
69
69
108
59
100
172
149
84
177
49
143
102
89
130
139
110
147
148
153
144
154
99
102
111
94
138
81
102
118
148
117
76
76
86
178
95
139
102
96
115
98
108
93
108
163
177
61
82
159
93
122
91
116
171
102
129
125
96
93
123
139
102
98
91
193
108
77
151
140
95
54
158
90
105
105
85
122
123
87
82
103
146
102
135
96
134
164
81
133
138
135
127
67
154
145
143
91
139
103
93
218
54
144
112
106
167
115
123
188
109
213
149
89
180
123
127
131
133
92
148
163
133
49
139
76
117
101
113
121
107
129
146
108
67
112
150
116
144
98
54
73
116
96
118
115
97
105
102
134
125
145
121
129
119
80
180
182
103
111
92
128
77
100
144
102
147
142
108
177
129
107
160
114
139
218
134
122
133
85
115
108
89
126
85
144
139
115
149
78
132
110
140
59
112
105
185
212
107
54
108
131
172
157
108
78
143
111
107
137
78
148
111
145
149
119
107
149
106
129
95
188
153
76
87
144
62
143
119
128
93
87
97
95
122
85
92
122
138
95
137
146
94
54
130
112
132
54
140
82
81
197
74
164
106
105
125
59
148
165
100
107
82
140
152
141
128
59
106
167
95
49
83
132
172
151
128
102
128
106
49
137
164
103
115
159
126
120
93
158
158
54
172
81
74
145
143
61
104
160
49
91
102
141
127
120
129
127
105
82
116
95
121
106
88
76
95
125
120
94
97
59
115
101
54
165
115
123
113
81
84
102
98
91
102
134
102
108
59
141
168
49
136
146
54
83
139
107
133
123
95
83
138
54
85
124
92
117
135
88
148
150
114
110
177
49
157
103
131
129
157
147
100
135
98
133
98
154
108
77
153
144
88
135
119
91
108
161
141
103
101
102
106
98
118
132
126
140
114
141
119
116
120
97
125
123
49
101
138
131
76
171
129
81
102
95
154
111
93
126
116
105
76
102
188
143
83
143
161
74
54
95
170
108
112
49
127
70
138
126
97
54
104
73
59
87
103
146
133
91
90
101
154
95
125
129
61
121
156
103
137
128
117
106
107
81
115
91
215
81
186
132
114
145
97
98
121
144
167
134
108
103
150
97
122
76
153
144
141
140
107
102
132
100
143
152
70
54
102
115
144
62
99
93
96
135
76
95
106
120
109
160
89
89
92
54
165
130
101
95
54
186
105
85
119
108
137
87
82
147
97
120
150
131
107
182
115
107
126
140
89
65
114
108
159
145
82
97
97
90
122
111
143
153
77
98
91
74
133
108
146
140
152
100
104
125
184
114
102
160
104
91
102
148
129
125
174
91
119
125
54
146
124
112
95
155
161
164
82
78
87
125
108
102
93
103
82
106
78
170
106
158
108
54
90
118
130
102
118
67
143
86
78
117
91
149
139
80
145
81
110
105
166
146
145
134
99
88
87
113
135
168
127
84
91
54
155
123
130
119
120
105
133
125
69
102
127
69
137
97
122
146
54
148
134
157
134
119
140
105
81
91
98
49
49
148
142
119
74
124
155
133
108
115
69
129
144
81
125
120
140
103
108
144
74
125
120
115
160
124
101
108
88
127
120
102
95
89
83
83
117
158
78
83
134
139
77
104
107
102
86
97
102
59
160
105
90
136
101
87
98
91
97
59
114
183
102
93
144
102
113
110
99
170
103
107
54
130
118
105
144
145
126
82
124
98
54
140
104
124
107
108
158
98
91
133
131
112
96
128
129
76
110
96
54
149
80
59
96
132
73
110
54
101
112
100
108
123
139
106
99
120
54
68
136
83
49
162
126
91
118
105
95
123
139
148
119
97
122
116
123
122
173
115
54
132
209
87
165
65
131
102
103
95
152
135
135
71
54
68
145
113
105
177
79
145
139
96
118
98
143
137
113
92
108
132
134
102
123
139
121
107
98
121
67
143
115
98
133
85
125
80
139
76
142
177
125
153
168
103
100
121
157
135
116
132
97
112
106
111
113
158
128
82
148
120
126
165
81
59
98
97
108
105
182
93
133
97
59
108
59
191
126
141
144
74
145
77
96
133
103
148
88
126
130
77
108
93
150
170
68
105
149
95
77
83
138
79
95
126
128
76
106
49
107
139
108
131
107
88
98
127
114
126
88
103
115
108
132
73
91
122
117
102
140
103
108
163
108
74
95
98
109
128
128
165
101
91
169
185
180
67
110
81
100
145
82
145
106
147
102
79
54
158
143
137
160
97
77
125
98
54
127
102
100
94
116
74
118
118
108
150
146
54
83
134
126
102
145
153
97
186
104
94
163
127
125
121
146
97
76
144
128
128
148
146
158
147
108
158
114
104
168
136
133
102
137
110
54
110
111
93
131
130
54
139
108
93
59
132
69
131
108
59
88
49
109
49
161
94
126
90
92
81
145
77
123
108
118
138
113
106
163
83
83
120
105
108
112
90
97
131
140
110
88
160
77
117
136
173
113
117
159
130
180
118
78
89
78
156
59
145
128
112
106
93
125
155
100
118
82
135
108
91
83
105
139
112
177
102
81
153
107
134
77
163
49
112
54
151
153
99
156
54
85
101
115
112
167
143
97
111
129
87
160
84
54
157
113
154
119
109
98
122
164
87
96
146
157
95
139
94
126
87
101
128
139
149
155
107
76
106
105
116
122
154
148
122
106
112
85
98
106
78
112
120
90
102
88
108
162
49
120
103
59
93
108
110
85
111
72
106
105
119
112
90
124
111
156
82
112
146
93
128
169
76
128
78
79
109
131
74
78
74
125
149
153
144
146
102
116
132
129
135
148
122
127
167
116
88
135
118
106
98
107
105
106
125
110
78
79
105
77
159
161
135
141
77
74
108
107
83
107
148
112
112
87
147
97
110
127
159
103
91
98
54
102
81
97
118
110
105
124
137
119
107
130
144
102
101
54
172
127
135
128
150
90
105
110
145
128
130
126
116
78
98
140
68
148
122
119
87
101
81
93
91
144
114
124
147
154
115
74
104
145
113
103
59
129
120
100
89
141
134
116
117
116
98
124
119
161
182
125
98
111
92
131
94
100
103
49
79
125
95
127
54
115
92
81
129
97
123
142
79
127
113
102
141
149
177
95
96
96
105
122
137
125
113
127
139
54
79
150
94
131
128
97
104
104
107
76
130
105
122
167
123
92
140
133
108
123
96
161
135
65
152
76
118
54
113
122
141
106
127
54
114
119
94
97
86
103
120
102
103
100
93
54
180
96
129
103
94
115
100
95
54
151
114
131
170
59
81
54
98
81
108
131
118
98
59
112
108
153
114
137
54
85
124
133
93
106
131
54
54
99
76
180
87
97
109
149
103
124
128
132
103
173
101
140
122
143
120
148
98
100
100
175
131
77
108
147
102
97
123
99
87
77
138
93
54
72
147
146
74
173
158
61
176
135
107
170
114
177
90
122
69
141
77
114
54
106
157
102
108
107
102
102
126
144
97
91
131
118
128
144
106
180
110
137
102
103
148
135
129
111
97
68
106
156
141
117
137
155
134
134
49
87
77
49
114
117
98
119
112
131
140
143
125
93
114
83
98
74
124
61
138
155
80
202
90
133
127
146
166
77
77
81
127
107
172
59
117
103
73
138
149
103
76
138
225
96
106
159
110
102
78
151
102
73
150
54
97
106
98
74
74
160
54
135
106
168
131
140
156
81
87
164
83
133
69
145
120
102
99
183
219
49
132
145
140
98
105
81
113
133
119
111
90
114
127
151
108
126
152
103
153
120
123
108
145
95
137
140
110
118
108
84
109
128
103
110
139
105
135
95
148
135
102
125
115
116
73
161
148
129
103
155
85
178
145
99
95
107
110
108
147
102
76
166
81
122
112
126
81
102
103
77
123
116
93
113
126
95
104
145
94
94
95
108
122
59
115
193
81
90
133
92
136
85
75
109
74
108
74
105
90
114
93
132
143
138
81
94
177
125
102
133
100
113
129
103
118
111
119
124
84
163
170
96
76
108
149
92
167
143
86
107
138
72
109
105
99
131
110
131
118
146
108
113
85
135
107
128
183
147
165
90
139
82
146
164
95
154
124
116
125
82
110
105
80
61
49
145
144
124
105
100
151
96
108
105
128
90
97
145
105
154
111
84
82
115
121
110
88
102
136
132
139
157
133
94
98
141
105
61
142
143
90
96
143
174
99
153
99
105
115
100
159
61
162
120
103
158
115
84
101
102
122
106
141
131
103
134
128
96
107
102
108
84
108
59
113
111
82
81
77
87
168
100
120
144
169
119
115
125
103
126
151
104
77
131
112
67
134
141
79
142
77
81
159
127
126
110
201
125
135
90
97
99
102
82
125
113
120
88
172
144
72
112
98
117
143
108
67
141
91
143
108
125
73
90
129
83
98
126
146
104
105
102
123
106
124
83
83
109
108
102
87
80
77
54
90
105
68
81
156
160
152
85
112
73
92
98
68
89
54
170
128
100
112
113
76
105
142
144
118
54
142
54
116
174
105
98
145
113
83
125
105
108
90
106
98
146
142
107
121
97
54
49
74
125
49
108
130
107
138
107
54
180
54
87
90
111
114
135
117
105
171
81
97
106
91
105
94
108
81
91
74
65
129
140
54
120
81
136
116
81
103
107
133
139
145
109
101
99
87
87
143
124
80
76
73
101
124
141
89
103
126
150
117
113
81
90
155
90
123
146
106
67
115
156
177
84
102
144
106
131
103
141
151
59
115
177
87
118
87
153
119
108
87
91
133
74
98
122
131
127
54
108
115
131
122
54
123
49
103
95
114
97
112
90
143
149
165
126
127
103
103
142
91
108
108
61
113
108
120
88
154
149
118
94
120
80
153
132
95
82
158
107
160
115
110
140
54
134
134
150
102
133
194
57
91
169
159
95
96
95
151
59
91
96
122
145
113
111
82
234
145
95
96
87
116
82
125
93
82
89
49
120
120
95
158
93
153
100
70
119
113
127
140
116
119
110
98
82
156
108
110
59
119
78
152
148
122
103
134
133
115
127
109
106
110
141
113
140
81
115
113
202
168
177
136
85
98
108
49
107
123
153
146
87
76
103
94
105
81
54
117
95
118
133
54
81
148
117
140
122
79
96
96
107
112
131
90
109
134
90
169
128
186
100
141
135
80
165
105
103
108
129
102
118
119
124
128
106
146
138
85
146
139
160
69
131
81
135
117
133
107
61
131
144
95
179
125
115
125
79
125
77
125
106
74
116
90
141
118
133
66
126
143
101
102
152
103
84
102
134
116
129
95
95
127
102
120
95
139
135
102
108
172
119
162
89
126
104
54
54
146
111
143
109
87
115
88
164
191
105
109
81
120
144
109
76
155
128
95
141
101
99
106
131
148
113
169
81
98
110
123
118
120
87
169
115
98
109
119
103
131
102
124
74
54
104
90
81
112
137
91
106
125
103
143
145
87
125
147
57
123
125
95
80
102
125
120
114
98
113
85
76
54
81
147
109
139
95
83
67
105
119
112
82
105
126
110
95
129
191
128
85
138
135
102
126
131
103
125
143
90
98
160
140
98
177
118
131
114
156
59
188
103
54
206
146
98
54
152
104
131
132
123
82
107
103
116
87
76
123
179
81
89
98
155
163
90
84
120
120
111
128
146
113
146
146
132
61
144
148
128
156
145
96
96
101
103
123
54
49
89
125
128
114
135
90
95
127
115
69
84
116
129
120
105
157
115
78
74
106
148
107
97
108
128
144
172
108
130
112
100
81
154
131
141
111
102
142
116
102
165
179
131
95
106
106
82
127
82
89
115
122
134
159
152
93
125
100
150
94
107
81
137
123
118
80
113
147
167
147
108
155
94
154
116
201
161
143
177
125
61
135
119
141
95
54
129
81
74
128
176
114
141
125
149
89
109
90
78
156
102
133
115
82
67
104
126
103
81
119
151
105
98
103
85
131
105
191
112
103
82
134
101
117
106
69
122
79
113
82
105
118
110
78
139
82
106
107
144
86
120
141
74
110
112
125
118
152
150
105
143
104
82
102
145
92
122
145
108
125
97
115
112
61
143
98
82
115
74
95
120
146
123
150
173
97
165
143
77
113
146
131
149
93
81
101
108
103
165
96
113
98
148
107
127
153
61
132
54
102
153
113
115
54
177
95
95
106
137
150
123
83
158
95
74
115
151
109
108
105
182
131
92
133
124
83
54
118
129
172
120
138
74
227
149
76
98
188
122
120
143
120
89
132
161
108
173
131
137
99
93
108
102
104
139
107
132
136
133
118
234
121
49
147
54
82
96
74
144
134
91
76
92
101
101
96
68
175
135
90
90
49
131
68
74
111
143
158
154
119
102
145
54
89
128
95
95
87
131
59
111
87
104
144
121
81
90
78
200
99
106
124
74
91
103
81
105
133
102
161
135
127
103
148
105
123
96
97
133
108
148
90
90
103
133
107
158
154
69
109
112
118
149
141
104
87
76
61
76
54
59
98
103
122
145
104
95
110
171
126
103
113
84
128
112
131
114
122
79
152
129
131
83
91
120
68
137
77
160
115
77
102
182
106
74
115
129
149
131
93
54
115
125
81
125
118
113
100
105
68
110
59
165
114
107
118
82
81
67
97
137
98
119
116
133
153
77
105
89
102
103
156
95
108
170
108
134
105
117
67
130
102
142
98
90
120
149
81
111
99
83
185
74
97
135
106
108
87
105
110
76
95
168
150
84
98
99
144
78
123
112
129
165
120
125
128
144
98
156
122
109
113
145
120
88
76
161
135
91
145
102
153
113
118
108
90
127
120
102
74
116
125
128
139
65
141
90
106
130
87
87
105
93
140
127
133
100
146
81
124
102
74
93
154
133
98
110
61
87
90
126
113
108
59
113
93
143
138
100
102
76
82
139
54
148
98
156
96
144
82
138
158
94
151
106
137
117
110
49
95
195
138
95
95
103
154
103
49
162
149
99
162
127
171
54
88
124
78
109
178
128
125
100
117
134
98
145
182
143
141
154
118
102
95
92
74
95
162
139
95
102
104
107
115
206
93
100
98
108
126
94
54
86
169
126
74
112
89
104
67
108
92
54
118
156
153
103
148
99
191
98
114
109
145
104
103
117
98
129
148
179
101
153
108
150
120
116
91
76
77
54
83
151
138
125
119
82
82
142
173
85
148
148
144
118
103
81
112
159
106
116
103
97
85
88
67
110
127
118
157
76
125
117
138
113
100
108
183
93
128
107
137
108
91
116
96
100
137
135
112
91
87
78
150
82
113
96
153
103
129
155
110
59
149
81
54
128
116
157
118
104
149
143
54
125
77
125
103
76
125
165
191
128
127
103
95
78
127
147
96
79
184
140
116
97
104
77
157
134
80
151
107
94
119
80
164
140
177
166
137
128
77
81
85
115
120
89
105
92
67
141
109
61
91
115
199
98
125
119
160
95
144
95
96
68
112
88
195
54
144
96
59
124
105
131
115
124
146
95
115
173
74
129
73
113
117
104
122
87
89
79
145
118
105
108
108
124
143
102
91
125
107
93
156
132
59
54
162
106
95
120
108
94
163
100
102
160
100
179
81
158
113
99
102
103
85
180
128
68
80
105
94
98
54
185
139
110
92
59
135
93
148
99
73
124
195
108
109
59
78
104
95
113
114
87
126
108
141
140
128
131
98
118
143
95
81
135
97
155
105
73
138
66
118
116
81
117
123
131
161
81
62
108
129
108
132
93
118
177
133
107
106
108
146
179
83
142
85
130
129
143
122
148
92
90
180
95
112
102
112
144
135
182
119
73
106
118
107
78
78
67
123
81
91
125
121
92
141
83
108
74
98
136
91
143
122
144
179
132
186
90
102
138
154
81
121
98
122
103
114
109
61
145
171
98
90
160
106
103
157
54
114
123
105
61
87
146
82
139
115
108
153
121
145
119
87
131
140
79
177
138
111
112
129
146
149
123
87
148
87
79
95
77
123
154
99
156
103
139
132
132
123
147
133
107
137
104
127
102
120
76
164
99
54
125
148
102
125
125
153
88
132
94
124
138
74
148
88
98
147
82
141
126
81
142
145
163
134
116
149
133
128
81
202
122
105
108
111
180
95
138
105
131
108
124
129
102
54
160
82
108
118
93
143
68
97
160
145
105
120
152
84
103
139
107
105
124
140
88
160
178
98
79
79
78
95
186
107
128
189
139
126
114
133
135
105
118
110
54
89
115
90
173
98
148
129
59
128
177
142
149
54
126
90
109
59
132
178
133
173
102
140
98
189
97
177
110
105
84
136
139
134
116
101
121
95
135
90
105
107
147
111
110
116
76
93
151
61
127
108
161
102
81
110
112
89
77
124
103
87
161
93
99
146
135
172
54
78
151
166
138
49
98
123
116
103
78
92
110
82
140
92
130
185
158
164
131
115
153
113
143
95
139
103
81
81
105
86
161
108
54
123
123
103
136
151
127
78
127
138
170
85
158
135
123
98
133
162
124
116
85
117
130
162
146
142
127
76
159
79
61
125
145
96
127
117
99
112
115
143
82
81
102
123
186
97
130
98
113
129
114
102
165
102
95
110
106
138
125
109
125
91
115
155
102
108
129
103
109
108
87
126
107
162
125
108
107
70
139
115
145
144
108
107
100
101
96
169
74
108
77
89
118
98
125
118
114
129
102
54
98
125
131
87
132
127
87
105
108
125
77
102
85
120
135
97
80
73
108
89
133
142
125
155
148
106
103
152
102
102
182
168
94
72
107
91
122
105
146
106
98
102
129
137
104
83
158
112
108
110
98
116
95
117
118
91
54
101
165
154
144
135
111
99
127
107
116
85
144
130
98
130
115
166
82
103
54
123
67
120
129
123
144
49
116
82
54
142
139
141
98
150
91
123
123
116
194
108
102
148
98
54
119
102
87
102
126
81
102
108
138
154
102
118
116
103
67
203
87
212
78
82
108
177
153
117
130
95
116
95
99
102
138
140
118
151
149
136
104
106
101
87
142
123
150
108
82
68
103
102
81
123
109
159
101
109
149
89
113
125
90
160
125
93
98
169
173
87
129
109
95
54
147
158
122
95
147
54
83
102
54
71
144
133
115
129
89
212
128
104
133
108
74
106
110
117
169
77
146
139
118
113
90
128
82
111
165
155
108
119
54
108
163
154
146
113
72
129
115
165
135
54
83
117
108
101
73
103
113
87
119
127
146
105
116
95
112
90
130
102
134
135
98
95
137
85
112
123
94
155
108
108
159
106
108
106
117
67
127
128
132
119
87
107
155
95
95
110
109
93
132
105
95
161
125
74
121
129
163
74
190
135
108
98
90
68
78
127
107
91
200
93
130
185
136
217
146
83
155
97
141
148
134
192
147
124
81
108
148
98
139
124
124
165
95
132
121
69
81
101
165
113
116
128
81
92
131
85
119
91
76
54
137
179
96
81
136
139
76
111
109
133
133
139
135
68
136
130
165
110
90
120
138
165
105
159
102
120
102
87
185
82
133
148
122
135
81
105
85
120
115
80
102
88
119
54
133
144
108
102
141
172
200
116
138
87
176
134
150
139
113
139
79
131
171
111
95
126
154
115
129
61
96
146
105
87
115
127
123
91
69
95
145
68
97
126
108
173
78
142
158
113
135
125
138
95
104
113
102
104
49
107
105
141
105
78
97
109
107
141
125
160
144
125
112
125
148
192
72
112
172
147
132
95
124
158
115
87
87
144
134
133
76
69
97
131
190
117
94
117
106
123
106
93
134
114
101
125
149
143
140
102
114
100
145
123
113
95
45
91
129
128
148
91
78
163
150
200
127
102
107
160
111
120
86
102
106
95
124
87
101
148
125
113
133
113
77
111
119
144
131
168
118
78
141
95
100
54
124
112
119
92
162
80
90
107
99
102
143
183
136
139
91
135
125
154
92
87
98
97
126
83
177
102
125
143
113
94
113
127
103
99
85
128
127
87
168
148
118
140
143
85
129
111
171
78
109
128
78
137
169
76
146
59
90
163
87
126
93
92
108
102
144
125
76
141
124
147
106
131
90
102
69
82
147
127
61
170
112
96
196
95
180
103
84
90
140
76
106
108
146
139
124
54
145
105
139
105
116
135
93
149
95
76
134
142
148
117
49
95
105
107
74
81
102
87
90
95
131
123
121
76
161
77
133
103
54
67
115
90
126
113
150
102
144
102
113
138
112
150
169
83
98
102
83
87
97
144
96
94
99
107
112
144
155
121
156
164
157
72
145
96
101
115
133
137
78
82
143
150
87
125
180
124
125
82
67
70
123
124
49
81
143
96
77
99
102
139
123
104
161
140
121
99
49
107
148
119
93
140
102
100
124
107
69
86
54
111
145
127
59
140
103
49
128
177
73
83
120
148
96
112
87
144
98
178
105
91
116
78
85
124
76
89
148
102
95
108
124
54
137
108
95
78
131
117
98
95
111
83
128
87
113
54
83
125
102
123
142
49
81
103
77
127
129
112
151
91
128
156
150
76
125
100
101
133
159
82
91
125
114
118
120
148
101
128
104
85
125
104
119
49
83
115
54
102
128
137
82
127
74
132
111
87
140
129
98
103
120
116
102
140
81
148
99
110
177
126
102
109
111
133
116
113
84
98
116
127
45
98
107
76
134
142
120
59
100
129
93
139
106
155
102
108
54
116
96
106
140
140
108
113
95
142
111
78
95
118
132
141
132
143
98
137
114
95
152
113
108
156
142
54
54
89
190
110
102
151
93
74
115
79
149
82
99
54
119
106
108
89
123
102
105
124
120
107
119
82
139
121
127
129
112
106
81
166
99
138
123
76
128
153
119
150
111
80
114
97
114
129
126
129
170
152
137
146
116
107
158
119
148
148
119
103
122
88
108
128
199
113
115
130
158
131
96
83
87
166
95
96
105
144
125
144
125
107
105
76
127
166
164
116
54
116
83
54
104
131
76
97
154
139
90
172
102
144
121
164
145
113
119
91
197
143
108
103
90
156
95
127
148
105
165
120
85
107
151
180
98
170
111
121
89
114
102
89
108
172
112
90
77
108
129
85
153
78
102
106
108
114
113
71
93
164
102
91
103
178
112
140
142
159
218
108
95
61
129
117
160
171
112
149
77
80
89
74
115
76
82
142
146
117
128
148
49
97
79
149
129
68
173
134
186
127
107
138
113
107
115
89
108
73
131
127
100
77
147
169
54
102
129
102
126
155
99
146
105
82
118
108
125
101
124
133
102
95
125
102
150
100
59
128
98
54
148
154
61
69
102
82
103
81
98
147
125
98
91
117
100
188
128
59
131
189
87
90
49
135
156
80
95
131
167
89
54
79
116
138
107
158
132
97
111
102
102
121
130
87
59
107
144
184
146
134
165
95
144
180
178
141
124
106
118
133
87
102
93
120
95
103
148
98
67
134
76
81
108
76
163
115
54
165
124
69
122
81
110
98
161
106
69
98
116
124
113
98
135
164
128
103
119
95
169
54
108
108
125
95
154
162
150
186
78
200
149
148
110
125
135
146
61
95
68
49
163
98
78
102
114
150
108
90
103
103
129
95
97
130
90
61
122
109
91
113
61
108
129
193
107
104
87
151
54
106
113
99
80
113
125
129
120
54
102
102
104
105
87
59
94
77
93
98
74
101
105
96
92
135
93
173
120
74
81
146
128
114
95
85
93
114
195
61
144
122
102
80
146
120
106
124
108
143
95
120
127
158
107
106
145
190
153
113
158
94
104
119
151
104
95
103
131
141
122
148
102
113
140
126
169
158
96
103
120
97
110
132
151
105
113
98
102
95
100
92
115
129
80
90
103
61
76
125
148
113
80
120
139
91
99
85
74
143
112
108
113
49
112
106
108
117
125
126
91
109
124
109
138
125
86
165
140
98
82
77
124
124
120
128
81
145
148
103
111
100
93
115
129
141
130
116
114
94
158
121
115
105
54
96
106
42
77
77
95
163
105
111
75
95
124
96
108
87
126
80
119
54
140
89
133
131
143
74
76
107
122
145
142
74
76
144
81
131
100
123
176
98
77
59
156
129
79
131
102
157
115
123
119
106
149
166
109
139
115
120
115
102
157
151
122
139
113
93
113
94
87
173
104
208
59
134
69
148
126
102
88
116
127
96
176
141
108
132
145
135
54
123
77
111
96
131
85
54
77
100
143
54
85
114
135
89
85
119
74
131
87
114
138
90
127
108
156
137
113
99
91
113
125
143
93
131
111
157
82
115
149
141
108
134
75
96
105
112
99
76
122
98
95
74
125
148
93
109
156
138
112
153
105
105
104
131
103
125
155
81
125
135
109
112
127
122
134
108
107
103
128
133
103
104
115
113
127
145
126
148
116
148
61
77
140
128
177
122
102
112
90
126
131
76
108
49
89
106
111
113
77
99
95
54
54
101
139
148
90
125
124
163
54
160
134
148
170
102
54
135
126
81
114
99
87
105
54
155
127
157
128
144
185
128
82
124
109
103
102
102
132
120
81
123
142
102
99
118
95
70
148
106
131
96
125
139
181
109
162
156
195
78
147
49
94
153
93
132
107
74
106
107
161
76
150
99
92
95
129
91
106
113
142
146
83
160
99
134
92
102
135
144
120
111
108
109
139
136
105
114
127
59
148
92
61
76
112
169
95
85
99
139
103
127
103
115
148
142
54
135
113
54
133
74
150
145
154
115
158
179
128
103
119
129
118
135
98
122
120
173
87
144
145
82
80
85
144
141
113
113
150
133
95
98
115
160
102
119
86
95
126
146
98
104
129
117
153
150
167
88
142
108
151
106
95
128
144
98
102
81
120
98
128
133
74
133
132
125
113
71
134
140
74
118
83
122
120
107
100
135
142
76
69
69
94
103
93
140
96
155
145
83
111
165
80
133
124
54
54
161
114
120
106
78
133
106
118
113
128
123
92
95
148
95
98
95
128
108
106
127
109
123
90
101
115
54
108
151
144
77
100
97
169
144
80
103
139
188
98
141
96
94
139
102
54
85
54
119
95
81
87
120
98
135
120
110
111
81
54
180
135
54
69
120
135
143
118
83
109
128
123
127
110
107
167
87
103
97
156
109
95
72
98
144
108
102
134
117
102
72
130
149
175
113
103
156
96
134
106
87
96
90
120
93
173
140
128
141
158
102
54
122
200
131
74
93
98
77
85
49
154
160
135
120
49
98
98
121
94
117
129
98
91
107
54
143
158
74
136
105
130
135
89
98
141
84
94
95
96
138
123
129
95
101
155
102
104
106
79
138
117
93
106
185
157
102
67
177
195
74
103
94
96
141
100
89
161
83
118
124
108
146
150
98
95
153
129
90
149
108
54
145
126
105
108
113
102
140
113
121
98
125
83
112
150
90
122
86
49
113
131
119
104
95
179
119
158
138
108
179
147
144
147
152
101
91
85
125
108
137
122
94
137
147
140
141
126
76
86
76
95
102
146
49
148
128
156
92
143
121
102
174
78
77
123
103
102
82
128
101
54
84
126
176
122
103
141
98
103
103
97
95
134
172
153
85
124
67
163
139
126
65
76
90
115
151
86
128
109
208
91
133
49
164
113
108
138
95
89
93
96
166
145
171
83
150
127
177
137
136
133
131
104
199
96
123
106
98
110
133
124
49
184
158
98
120
107
165
95
147
87
167
131
165
143
106
59
117
98
80
85
54
124
84
143
98
129
137
119
93
121
139
115
135
126
126
78
133
108
128
128
120
143
131
83
158
83
135
80
54
93
127
85
101
95
118
125
108
128
123
140
130
105
93
102
160
143
63
91
74
93
160
101
82
134
54
124
74
93
154
70
135
134
138
97
110
137
196
59
74
90
109
152
130
81
112
98
108
83
133
123
116
133
101
101
54
127
124
116
108
81
116
78
105
130
90
98
102
88
182
105
91
113
117
116
81
76
95
91
158
82
104
82
95
129
151
121
74
105
177
124
157
161
103
110
107
133
82
122
59
54
127
124
143
81
87
54
137
142
157
91
146
133
112
140
119
112
192
61
143
130
145
95
90
194
54
122
127
108
103
104
112
82
113
91
106
137
118
139
151
71
131
177
110
82
95
135
108
116
108
84
135
86
123
91
76
147
114
95
157
153
133
112
111
112
102
85
112
84
77
100
103
86
67
111
75
102
87
125
158
175
93
138
102
143
102
90
77
86
77
87
138
119
92
141
116
105
108
102
78
126
150
97
67
166
177
54
54
143
74
135
177
54
102
101
87
123
102
146
91
99
146
129
93
108
101
133
112
134
77
103
158
54
113
77
54
120
93
129
147
144
143
130
145
108
128
78
139
101
133
103
129
154
92
85
127
88
59
76
110
106
143
119
185
129
150
143
158
133
126
74
169
108
113
90
76
80
138
116
131
154
137
124
125
107
115
128
124
92
144
78
116
128
106
119
146
105
95
123
103
155
143
113
67
140
153
95
96
102
133
81
125
98
123
95
183
150
150
179
78
115
137
146
81
123
54
130
94
113
54
97
102
82
102
142
104
151
99
130
74
106
106
118
54
86
77
101
118
98
90
110
82
95
126
118
151
125
110
118
171
117
179
140
108
113
77
160
176
108
148
135
137
76
133
140
108
106
141
82
172
107
162
115
134
98
92
112
157
115
96
115
114
141
111
139
109
97
87
140
49
143
154
151
140
102
93
93
132
98
132
54
78
54
159
93
144
161
103
108
165
159
147
135
102
143
54
101
106
54
191
144
146
125
146
144
87
148
105
108
121
54
133
101
122
115
93
129
124
89
59
188
91
113
136
124
127
139
74
168
161
105
159
113
113
59
127
140
108
82
116
81
70
157
98
117
160
114
170
135
141
169
195
95
83
104
91
101
93
137
81
128
69
133
134
133
121
118
112
98
54
82
131
76
131
115
76
95
131
133
81
145
104
98
105
127
67
122
135
114
123
140
79
139
108
125
96
147
128
199
137
74
123
144
129
139
146
104
137
140
94
170
101
125
75
95
54
115
131
103
102
146
81
110
125
137
109
74
125
102
133
128
105
74
78
184
127
49
139
131
112
109
141
126
94
139
200
102
59
101
95
95
114
123
146
120
82
90
129
122
120
74
116
98
79
74
108
82
116
105
98
146
112
146
119
150
65
103
144
101
112
124
148
95
107
139
145
133
105
95
108
106
87
114
102
102
97
81
112
98
82
115
155
140
82
138
72
164
54
102
124
132
107
107
111
113
102
125
87
88
54
65
54
139
97
115
115
174
94
147
141
122
54
141
112
124
133
101
144
162
54
123
69
98
141
94
105
82
164
127
115
126
133
113
100
148
122
114
141
128
124
96
97
126
89
107
131
133
103
128
74
116
49
87
49
95
80
143
144
118
93
104
119
103
177
150
67
54
102
102
100
102
141
110
108
116
106
125
113
98
95
126
102
99
108
120
126
148
162
115
154
160
101
103
113
120
140
144
124
154
135
49
180
97
113
95
103
154
78
114
195
131
98
148
69
145
159
105
